summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-01-12 03:01:29 +0000
committerNorbert Preining <norbert@preining.info>2023-01-12 03:01:29 +0000
commit6a7900c93acc16d1bbd2f1e26286c7dd7387e6c0 (patch)
tree76196287351cba68a51934c49468bf1a7846aa76
parentc1c19023b4b1d43cb874f84df5102b485853e672 (diff)
CTAN sync 202301120301
-rw-r--r--FILES.byname1476
-rw-r--r--FILES.byname.gzbin2512093 -> 2512239 bytes
-rw-r--r--FILES.last07days583
-rw-r--r--biblio/ctan-bibdata/ctan.bib43
-rw-r--r--biblio/ctan-bibdata/ctan.pdfbin3642691 -> 3641898 bytes
-rw-r--r--dviware/dvisvgm/ChangeLog11166
-rw-r--r--dviware/dvisvgm/Makefile.am6
-rw-r--r--dviware/dvisvgm/Makefile.in160
-rw-r--r--dviware/dvisvgm/NEWS27
-rw-r--r--dviware/dvisvgm/README17
-rw-r--r--dviware/dvisvgm/aclocal.m410500
-rw-r--r--dviware/dvisvgm/aminclude_static.am126
-rw-r--r--dviware/dvisvgm/config.h.in9
-rwxr-xr-xdviware/dvisvgm/configure600
-rw-r--r--dviware/dvisvgm/configure.ac27
-rw-r--r--dviware/dvisvgm/doc/Makefile.am2
-rw-r--r--dviware/dvisvgm/doc/Makefile.in25
-rw-r--r--dviware/dvisvgm/doc/conf-dblatex-man.xsl2
-rw-r--r--dviware/dvisvgm/doc/conf-dblatex-pdf.xsl2
-rw-r--r--dviware/dvisvgm/doc/dvisvgm.177
-rw-r--r--dviware/dvisvgm/doc/dvisvgm.txt.in74
-rw-r--r--dviware/dvisvgm/doc/tweak-db-refentry.xsl2
-rw-r--r--dviware/dvisvgm/doc/tweak-dblatex-pdf.xsl2
-rw-r--r--dviware/dvisvgm/libs/Makefile.am6
-rw-r--r--dviware/dvisvgm/libs/Makefile.in31
-rw-r--r--dviware/dvisvgm/libs/boost/LICENSE.txt23
-rw-r--r--dviware/dvisvgm/libs/boost/Makefile.am5
-rw-r--r--dviware/dvisvgm/libs/boost/Makefile.in (renamed from dviware/dvisvgm/m4/Makefile.in)137
-rw-r--r--dviware/dvisvgm/libs/boost/boost-vectorstream.hpp607
-rw-r--r--dviware/dvisvgm/libs/boost/vectorstream.hpp17
-rw-r--r--dviware/dvisvgm/libs/brotli/Makefile.am1
-rw-r--r--dviware/dvisvgm/libs/brotli/Makefile.in27
-rw-r--r--dviware/dvisvgm/libs/clipper/Makefile.am2
-rw-r--r--dviware/dvisvgm/libs/clipper/Makefile.in27
-rw-r--r--dviware/dvisvgm/libs/ff-woff/LICENSE281
-rw-r--r--dviware/dvisvgm/libs/ff-woff/Makefile.am90
-rw-r--r--dviware/dvisvgm/libs/ff-woff/Makefile.in1082
-rw-r--r--dviware/dvisvgm/libs/ff-woff/README.md11
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/PfEd.h218
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/alphabet.c3348
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/asmfpst.c1007
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/autohint.c2708
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/char.c72
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/cjk.c15591
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/configure-fontforge.h109
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/cvundoes.c46
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/dumppfa.c131
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/edgelist.h144
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/edgelist2.h87
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/encoding.c791
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/encoding.h5
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/fflocale.c44
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/fflocale.h23
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/fontforge-config.h22
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/fontforge.h93
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/fontforgevw.h32
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/fvfonts.c253
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/gwwiconv.c797
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/libffstamp.h8
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/lookups.c679
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/macbinary.c227
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/macenc.c1805
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/mathconstants.c99
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/memory.c51
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/mm.c307
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/namehash.h61
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/namelist.c19965
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/nouiutil.c161
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/nowakowskittfinstr.c5258
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/parsepfa.c583
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/parsettf.c505
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/parsettfatt.c42
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/psfont.h188
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/psread.c73
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/pua.c1612
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/sd.h168
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/sfd.c4669
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/sfd1.c164
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/sfd1.h122
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/splinechar.c328
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/splinefont.c504
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/splinefont.h2554
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/splineorder2.c1523
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/splineoverlap.c442
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/splinerefigure.c107
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/splinesave.c2065
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/splinesaveafm.c322
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/splineutil.c3579
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/splineutil2.c1518
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/start.c53
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/stemdb.c6068
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/stemdb.h214
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/tables.h4
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/tmpfile2.cpp75
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/tottf.c6757
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/tottfaat.c2526
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/tottfgpos.c4613
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/tottfvar.c820
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/ttf.h871
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/ttfinstrs.c473
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/ttfinstrs.h57
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/ttfspecial.c2095
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/uiinterface.h159
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/unialt.c8937
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/ustring.c225
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/utype.c24592
-rw-r--r--dviware/dvisvgm/libs/ff-woff/fontforge/woff.c318
-rw-r--r--dviware/dvisvgm/libs/ff-woff/inc/basics.h125
-rw-r--r--dviware/dvisvgm/libs/ff-woff/inc/chardata.h78
-rw-r--r--dviware/dvisvgm/libs/ff-woff/inc/charset.h71
-rw-r--r--dviware/dvisvgm/libs/ff-woff/inc/dlist.h151
-rw-r--r--dviware/dvisvgm/libs/ff-woff/inc/ffintl.h37
-rw-r--r--dviware/dvisvgm/libs/ff-woff/inc/gimage.h204
-rw-r--r--dviware/dvisvgm/libs/ff-woff/inc/gnetwork.h87
-rw-r--r--dviware/dvisvgm/libs/ff-woff/inc/gwwiconv.h48
-rw-r--r--dviware/dvisvgm/libs/ff-woff/inc/ustring.h212
-rw-r--r--dviware/dvisvgm/libs/ff-woff/inc/utype.h155
-rw-r--r--dviware/dvisvgm/libs/md5/Makefile.am1
-rw-r--r--dviware/dvisvgm/libs/md5/Makefile.in27
-rw-r--r--dviware/dvisvgm/libs/potrace/Makefile.am1
-rw-r--r--dviware/dvisvgm/libs/potrace/Makefile.in27
-rw-r--r--dviware/dvisvgm/libs/variant/Makefile.in25
-rw-r--r--dviware/dvisvgm/libs/woff2/Makefile.am1
-rw-r--r--dviware/dvisvgm/libs/woff2/Makefile.in27
-rw-r--r--dviware/dvisvgm/libs/xxHash/Makefile.am1
-rw-r--r--dviware/dvisvgm/libs/xxHash/Makefile.in27
-rw-r--r--dviware/dvisvgm/m4/Makefile.am4
-rw-r--r--dviware/dvisvgm/m4/ax_ac_append_to_file.m432
-rw-r--r--dviware/dvisvgm/m4/ax_ac_print_to_file.m432
-rw-r--r--dviware/dvisvgm/m4/ax_add_am_macro_static.m428
-rw-r--r--dviware/dvisvgm/m4/ax_am_macros_static.m438
-rw-r--r--dviware/dvisvgm/m4/ax_check_compile_flag.m453
-rw-r--r--dviware/dvisvgm/m4/ax_code_coverage.m4272
-rw-r--r--dviware/dvisvgm/m4/ax_cxx_compile_stdcxx.m41009
-rw-r--r--dviware/dvisvgm/m4/ax_file_escapes.m430
-rw-r--r--dviware/dvisvgm/m4/ax_gcc_builtin.m4170
-rw-r--r--dviware/dvisvgm/m4/libtool.m48403
-rw-r--r--dviware/dvisvgm/m4/ltoptions.m4437
-rw-r--r--dviware/dvisvgm/m4/ltsugar.m4124
-rw-r--r--dviware/dvisvgm/m4/ltversion.m424
-rw-r--r--dviware/dvisvgm/m4/lt~obsolete.m499
-rw-r--r--dviware/dvisvgm/src/AGLTable.hpp2
-rw-r--r--dviware/dvisvgm/src/BasicDVIReader.cpp2
-rw-r--r--dviware/dvisvgm/src/BasicDVIReader.hpp2
-rw-r--r--dviware/dvisvgm/src/Bezier.cpp177
-rw-r--r--dviware/dvisvgm/src/Bezier.hpp38
-rw-r--r--dviware/dvisvgm/src/BgColorSpecialHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/BgColorSpecialHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/Bitmap.cpp2
-rw-r--r--dviware/dvisvgm/src/Bitmap.hpp2
-rw-r--r--dviware/dvisvgm/src/BoundingBox.cpp2
-rw-r--r--dviware/dvisvgm/src/BoundingBox.hpp2
-rw-r--r--dviware/dvisvgm/src/CLCommandLine.cpp2
-rw-r--r--dviware/dvisvgm/src/CLCommandLine.hpp2
-rw-r--r--dviware/dvisvgm/src/CLOption.hpp2
-rw-r--r--dviware/dvisvgm/src/CMap.cpp2
-rw-r--r--dviware/dvisvgm/src/CMap.hpp2
-rw-r--r--dviware/dvisvgm/src/CMapManager.cpp2
-rw-r--r--dviware/dvisvgm/src/CMapManager.hpp2
-rw-r--r--dviware/dvisvgm/src/CMapReader.cpp2
-rw-r--r--dviware/dvisvgm/src/CMapReader.hpp2
-rw-r--r--dviware/dvisvgm/src/Calculator.cpp2
-rw-r--r--dviware/dvisvgm/src/Calculator.hpp2
-rw-r--r--dviware/dvisvgm/src/CharMapID.cpp2
-rw-r--r--dviware/dvisvgm/src/CharMapID.hpp2
-rw-r--r--dviware/dvisvgm/src/Character.hpp2
-rw-r--r--dviware/dvisvgm/src/Color.cpp2
-rw-r--r--dviware/dvisvgm/src/Color.hpp2
-rw-r--r--dviware/dvisvgm/src/ColorSpecialHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/ColorSpecialHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/CommandLine.hpp10
-rw-r--r--dviware/dvisvgm/src/DLLoader.cpp2
-rw-r--r--dviware/dvisvgm/src/DLLoader.hpp2
-rw-r--r--dviware/dvisvgm/src/DVIActions.hpp2
-rw-r--r--dviware/dvisvgm/src/DVIReader.cpp49
-rw-r--r--dviware/dvisvgm/src/DVIReader.hpp2
-rw-r--r--dviware/dvisvgm/src/DVIToSVG.cpp9
-rw-r--r--dviware/dvisvgm/src/DVIToSVG.hpp2
-rw-r--r--dviware/dvisvgm/src/DVIToSVGActions.cpp12
-rw-r--r--dviware/dvisvgm/src/DVIToSVGActions.hpp8
-rw-r--r--dviware/dvisvgm/src/Directory.cpp2
-rw-r--r--dviware/dvisvgm/src/Directory.hpp2
-rw-r--r--dviware/dvisvgm/src/DvisvgmSpecialHandler.cpp80
-rw-r--r--dviware/dvisvgm/src/DvisvgmSpecialHandler.hpp31
-rw-r--r--dviware/dvisvgm/src/EPSFile.cpp2
-rw-r--r--dviware/dvisvgm/src/EPSFile.hpp2
-rw-r--r--dviware/dvisvgm/src/EPSToSVG.hpp2
-rw-r--r--dviware/dvisvgm/src/EllipticalArc.cpp10
-rw-r--r--dviware/dvisvgm/src/EllipticalArc.hpp4
-rw-r--r--dviware/dvisvgm/src/EmSpecialHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/EmSpecialHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/EncFile.cpp2
-rw-r--r--dviware/dvisvgm/src/EncFile.hpp2
-rw-r--r--dviware/dvisvgm/src/FileFinder.cpp2
-rw-r--r--dviware/dvisvgm/src/FileFinder.hpp2
-rw-r--r--dviware/dvisvgm/src/FilePath.cpp2
-rw-r--r--dviware/dvisvgm/src/FilePath.hpp2
-rw-r--r--dviware/dvisvgm/src/FileSystem.cpp73
-rw-r--r--dviware/dvisvgm/src/FileSystem.hpp7
-rw-r--r--dviware/dvisvgm/src/FixWord.hpp2
-rw-r--r--dviware/dvisvgm/src/Font.cpp69
-rw-r--r--dviware/dvisvgm/src/Font.hpp35
-rw-r--r--dviware/dvisvgm/src/FontCache.cpp2
-rw-r--r--dviware/dvisvgm/src/FontCache.hpp2
-rw-r--r--dviware/dvisvgm/src/FontEncoding.cpp2
-rw-r--r--dviware/dvisvgm/src/FontEncoding.hpp2
-rw-r--r--dviware/dvisvgm/src/FontEngine.cpp174
-rw-r--r--dviware/dvisvgm/src/FontEngine.hpp11
-rw-r--r--dviware/dvisvgm/src/FontManager.cpp79
-rw-r--r--dviware/dvisvgm/src/FontManager.hpp17
-rw-r--r--dviware/dvisvgm/src/FontMap.cpp2
-rw-r--r--dviware/dvisvgm/src/FontMap.hpp2
-rw-r--r--dviware/dvisvgm/src/FontMetrics.cpp2
-rw-r--r--dviware/dvisvgm/src/FontMetrics.hpp2
-rw-r--r--dviware/dvisvgm/src/FontStyle.hpp2
-rw-r--r--dviware/dvisvgm/src/FontWriter.cpp176
-rw-r--r--dviware/dvisvgm/src/FontWriter.hpp6
-rw-r--r--dviware/dvisvgm/src/GFGlyphTracer.cpp2
-rw-r--r--dviware/dvisvgm/src/GFGlyphTracer.hpp2
-rw-r--r--dviware/dvisvgm/src/GFReader.cpp2
-rw-r--r--dviware/dvisvgm/src/GFReader.hpp2
-rw-r--r--dviware/dvisvgm/src/GFTracer.cpp2
-rw-r--r--dviware/dvisvgm/src/GFTracer.hpp2
-rw-r--r--dviware/dvisvgm/src/Ghostscript.cpp59
-rw-r--r--dviware/dvisvgm/src/Ghostscript.hpp6
-rw-r--r--dviware/dvisvgm/src/Glyph.hpp2
-rw-r--r--dviware/dvisvgm/src/GlyphTracerMessages.hpp2
-rw-r--r--dviware/dvisvgm/src/GraphicsPath.hpp4
-rw-r--r--dviware/dvisvgm/src/GraphicsPathParser.hpp2
-rw-r--r--dviware/dvisvgm/src/HashFunction.cpp2
-rw-r--r--dviware/dvisvgm/src/HashFunction.hpp2
-rw-r--r--dviware/dvisvgm/src/HtmlSpecialHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/HtmlSpecialHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/HyperlinkManager.cpp2
-rw-r--r--dviware/dvisvgm/src/HyperlinkManager.hpp2
-rw-r--r--dviware/dvisvgm/src/ImageToSVG.cpp42
-rw-r--r--dviware/dvisvgm/src/ImageToSVG.hpp19
-rw-r--r--dviware/dvisvgm/src/InputBuffer.cpp2
-rw-r--r--dviware/dvisvgm/src/InputBuffer.hpp2
-rw-r--r--dviware/dvisvgm/src/InputReader.cpp2
-rw-r--r--dviware/dvisvgm/src/InputReader.hpp2
-rw-r--r--dviware/dvisvgm/src/JFM.cpp2
-rw-r--r--dviware/dvisvgm/src/JFM.hpp2
-rw-r--r--dviware/dvisvgm/src/Length.cpp2
-rw-r--r--dviware/dvisvgm/src/Length.hpp2
-rw-r--r--dviware/dvisvgm/src/MD5HashFunction.hpp2
-rw-r--r--dviware/dvisvgm/src/Makefile.am30
-rw-r--r--dviware/dvisvgm/src/Makefile.in451
-rw-r--r--dviware/dvisvgm/src/MapLine.cpp2
-rw-r--r--dviware/dvisvgm/src/MapLine.hpp2
-rw-r--r--dviware/dvisvgm/src/Matrix.cpp27
-rw-r--r--dviware/dvisvgm/src/Matrix.hpp6
-rw-r--r--dviware/dvisvgm/src/Message.cpp2
-rw-r--r--dviware/dvisvgm/src/Message.hpp2
-rw-r--r--dviware/dvisvgm/src/MessageException.hpp2
-rw-r--r--dviware/dvisvgm/src/MetafontWrapper.cpp2
-rw-r--r--dviware/dvisvgm/src/MetafontWrapper.hpp2
-rw-r--r--dviware/dvisvgm/src/MiKTeXCom.cpp2
-rw-r--r--dviware/dvisvgm/src/MiKTeXCom.hpp2
-rw-r--r--dviware/dvisvgm/src/NoPsSpecialHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/NoPsSpecialHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/NumericRanges.hpp2
-rw-r--r--dviware/dvisvgm/src/Opacity.cpp48
-rw-r--r--dviware/dvisvgm/src/Opacity.hpp5
-rw-r--r--dviware/dvisvgm/src/PDFHandler.cpp858
-rw-r--r--dviware/dvisvgm/src/PDFHandler.hpp109
-rw-r--r--dviware/dvisvgm/src/PDFParser.cpp2
-rw-r--r--dviware/dvisvgm/src/PDFParser.hpp2
-rw-r--r--dviware/dvisvgm/src/PDFToSVG.cpp92
-rw-r--r--dviware/dvisvgm/src/PDFToSVG.hpp33
-rw-r--r--dviware/dvisvgm/src/PSFilter.hpp2
-rw-r--r--dviware/dvisvgm/src/PSInterpreter.cpp12
-rw-r--r--dviware/dvisvgm/src/PSInterpreter.hpp5
-rw-r--r--dviware/dvisvgm/src/PSPattern.cpp2
-rw-r--r--dviware/dvisvgm/src/PSPattern.hpp2
-rw-r--r--dviware/dvisvgm/src/PSPreviewFilter.cpp2
-rw-r--r--dviware/dvisvgm/src/PSPreviewFilter.hpp2
-rw-r--r--dviware/dvisvgm/src/PageRanges.cpp48
-rw-r--r--dviware/dvisvgm/src/PageRanges.hpp3
-rw-r--r--dviware/dvisvgm/src/PageSize.cpp2
-rw-r--r--dviware/dvisvgm/src/PageSize.hpp2
-rw-r--r--dviware/dvisvgm/src/Pair.hpp8
-rw-r--r--dviware/dvisvgm/src/PapersizeSpecialHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/PapersizeSpecialHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/PathClipper.cpp16
-rw-r--r--dviware/dvisvgm/src/PathClipper.hpp4
-rw-r--r--dviware/dvisvgm/src/PdfSpecialHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/PdfSpecialHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/PreScanDVIReader.cpp2
-rw-r--r--dviware/dvisvgm/src/PreScanDVIReader.hpp2
-rw-r--r--dviware/dvisvgm/src/Process.cpp158
-rw-r--r--dviware/dvisvgm/src/Process.hpp23
-rw-r--r--dviware/dvisvgm/src/PsSpecialHandler.cpp165
-rw-r--r--dviware/dvisvgm/src/PsSpecialHandler.hpp19
-rw-r--r--dviware/dvisvgm/src/RangeMap.cpp2
-rw-r--r--dviware/dvisvgm/src/RangeMap.hpp4
-rw-r--r--dviware/dvisvgm/src/SVGCharHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/SVGCharHandler.hpp3
-rw-r--r--dviware/dvisvgm/src/SVGCharHandlerFactory.cpp2
-rw-r--r--dviware/dvisvgm/src/SVGCharHandlerFactory.hpp2
-rw-r--r--dviware/dvisvgm/src/SVGCharPathHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/SVGCharPathHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/SVGCharTspanTextHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/SVGCharTspanTextHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/SVGElement.cpp25
-rw-r--r--dviware/dvisvgm/src/SVGElement.hpp5
-rw-r--r--dviware/dvisvgm/src/SVGOutput.cpp2
-rw-r--r--dviware/dvisvgm/src/SVGOutput.hpp4
-rw-r--r--dviware/dvisvgm/src/SVGSingleCharTextHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/SVGSingleCharTextHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/SVGTree.cpp11
-rw-r--r--dviware/dvisvgm/src/SVGTree.hpp3
-rw-r--r--dviware/dvisvgm/src/ShadingPatch.cpp2
-rw-r--r--dviware/dvisvgm/src/ShadingPatch.hpp2
-rw-r--r--dviware/dvisvgm/src/SignalHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/SignalHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/SourceInput.cpp2
-rw-r--r--dviware/dvisvgm/src/SourceInput.hpp2
-rw-r--r--dviware/dvisvgm/src/SpecialActions.hpp4
-rw-r--r--dviware/dvisvgm/src/SpecialHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/SpecialManager.cpp2
-rw-r--r--dviware/dvisvgm/src/SpecialManager.hpp2
-rw-r--r--dviware/dvisvgm/src/StreamReader.cpp2
-rw-r--r--dviware/dvisvgm/src/StreamReader.hpp2
-rw-r--r--dviware/dvisvgm/src/StreamWriter.cpp2
-rw-r--r--dviware/dvisvgm/src/StreamWriter.hpp2
-rw-r--r--dviware/dvisvgm/src/Subfont.cpp2
-rw-r--r--dviware/dvisvgm/src/Subfont.hpp2
-rw-r--r--dviware/dvisvgm/src/System.cpp2
-rw-r--r--dviware/dvisvgm/src/System.hpp2
-rw-r--r--dviware/dvisvgm/src/TFM.cpp2
-rw-r--r--dviware/dvisvgm/src/TFM.hpp2
-rw-r--r--dviware/dvisvgm/src/TensorProductPatch.cpp58
-rw-r--r--dviware/dvisvgm/src/TensorProductPatch.hpp8
-rw-r--r--dviware/dvisvgm/src/Terminal.cpp2
-rw-r--r--dviware/dvisvgm/src/Terminal.hpp2
-rw-r--r--dviware/dvisvgm/src/ToUnicodeMap.cpp2
-rw-r--r--dviware/dvisvgm/src/ToUnicodeMap.hpp2
-rw-r--r--dviware/dvisvgm/src/TpicSpecialHandler.cpp2
-rw-r--r--dviware/dvisvgm/src/TpicSpecialHandler.hpp2
-rw-r--r--dviware/dvisvgm/src/TriangularPatch.cpp2
-rw-r--r--dviware/dvisvgm/src/TriangularPatch.hpp2
-rw-r--r--dviware/dvisvgm/src/TrueTypeFont.cpp175
-rw-r--r--dviware/dvisvgm/src/TrueTypeFont.hpp74
-rw-r--r--dviware/dvisvgm/src/Unicode.cpp83
-rw-r--r--dviware/dvisvgm/src/Unicode.hpp6
-rw-r--r--dviware/dvisvgm/src/VFActions.hpp2
-rw-r--r--dviware/dvisvgm/src/VFReader.cpp2
-rw-r--r--dviware/dvisvgm/src/VFReader.hpp2
-rw-r--r--dviware/dvisvgm/src/VectorIterator.hpp2
-rw-r--r--dviware/dvisvgm/src/VectorStream.hpp2
-rw-r--r--dviware/dvisvgm/src/XMLDocument.cpp2
-rw-r--r--dviware/dvisvgm/src/XMLDocument.hpp2
-rw-r--r--dviware/dvisvgm/src/XMLNode.cpp15
-rw-r--r--dviware/dvisvgm/src/XMLNode.hpp3
-rw-r--r--dviware/dvisvgm/src/XMLParser.cpp175
-rw-r--r--dviware/dvisvgm/src/XMLParser.hpp41
-rw-r--r--dviware/dvisvgm/src/XMLString.cpp2
-rw-r--r--dviware/dvisvgm/src/XMLString.hpp2
-rw-r--r--dviware/dvisvgm/src/XXHashFunction.hpp2
-rw-r--r--dviware/dvisvgm/src/ZLibOutputStream.hpp2
-rw-r--r--dviware/dvisvgm/src/dvisvgm.cpp23
-rw-r--r--dviware/dvisvgm/src/ffwrapper.c84
-rw-r--r--dviware/dvisvgm/src/fonts/Base14Fonts.cpp65
-rw-r--r--dviware/dvisvgm/src/fonts/Base14Fonts.hpp (renamed from dviware/dvisvgm/src/ffwrapper.h)25
-rw-r--r--dviware/dvisvgm/src/fonts/Dingbats.cff.cpp785
-rw-r--r--dviware/dvisvgm/src/fonts/Makefile.am19
-rw-r--r--dviware/dvisvgm/src/fonts/Makefile.in743
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusMonoPS-Bold.cff.cpp1636
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusMonoPS-BoldItalic.cff.cpp1855
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusMonoPS-Italic.cff.cpp1644
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusMonoPS-Regular.cff.cpp1441
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusRoman-Bold.cff.cpp1585
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusRoman-BoldItalic.cff.cpp1738
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusRoman-Italic.cff.cpp1757
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusRoman-Regular.cff.cpp1522
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusSans-Bold.cff.cpp1068
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusSans-BoldItalic.cff.cpp1236
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusSans-Italic.cff.cpp1252
-rw-r--r--dviware/dvisvgm/src/fonts/NimbusSans-Regular.cff.cpp1040
-rw-r--r--dviware/dvisvgm/src/fonts/StandardSymbolsPS.cff.cpp511
-rw-r--r--dviware/dvisvgm/src/macros.hpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/AttributeExtractor.cpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/AttributeExtractor.hpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/ClipPathReassigner.cpp8
-rw-r--r--dviware/dvisvgm/src/optimizer/ClipPathReassigner.hpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/DependencyGraph.hpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/GroupCollapser.cpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/GroupCollapser.hpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/Makefile.in25
-rw-r--r--dviware/dvisvgm/src/optimizer/OptimizerModule.hpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/RedundantElementRemover.cpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/RedundantElementRemover.hpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/SVGOptimizer.cpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/SVGOptimizer.hpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/TextSimplifier.cpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/TextSimplifier.hpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/TransformSimplifier.cpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/TransformSimplifier.hpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/WSNodeRemover.cpp2
-rw-r--r--dviware/dvisvgm/src/optimizer/WSNodeRemover.hpp2
-rw-r--r--dviware/dvisvgm/src/options.dtd2
-rw-r--r--dviware/dvisvgm/src/options.xml10
-rw-r--r--dviware/dvisvgm/src/psdefs.cpp2
-rw-r--r--dviware/dvisvgm/src/ttf/CmapTable.cpp131
-rw-r--r--dviware/dvisvgm/src/ttf/CmapTable.hpp43
-rw-r--r--dviware/dvisvgm/src/ttf/GlyfTable.cpp501
-rw-r--r--dviware/dvisvgm/src/ttf/GlyfTable.hpp96
-rw-r--r--dviware/dvisvgm/src/ttf/HeadTable.cpp78
-rw-r--r--dviware/dvisvgm/src/ttf/HeadTable.hpp49
-rw-r--r--dviware/dvisvgm/src/ttf/HheaTable.cpp67
-rw-r--r--dviware/dvisvgm/src/ttf/HheaTable.hpp47
-rw-r--r--dviware/dvisvgm/src/ttf/HmtxTable.cpp62
-rw-r--r--dviware/dvisvgm/src/ttf/HmtxTable.hpp52
-rw-r--r--dviware/dvisvgm/src/ttf/LocaTable.hpp56
-rw-r--r--dviware/dvisvgm/src/ttf/Makefile.am25
-rw-r--r--dviware/dvisvgm/src/ttf/Makefile.in743
-rw-r--r--dviware/dvisvgm/src/ttf/MaxpTable.cpp50
-rw-r--r--dviware/dvisvgm/src/ttf/MaxpTable.hpp42
-rw-r--r--dviware/dvisvgm/src/ttf/NameTable.cpp105
-rw-r--r--dviware/dvisvgm/src/ttf/NameTable.hpp37
-rw-r--r--dviware/dvisvgm/src/ttf/OS2Table.cpp246
-rw-r--r--dviware/dvisvgm/src/ttf/OS2Table.hpp46
-rw-r--r--dviware/dvisvgm/src/ttf/PostTable.cpp63
-rw-r--r--dviware/dvisvgm/src/ttf/PostTable.hpp37
-rw-r--r--dviware/dvisvgm/src/ttf/TTFAutohint.cpp (renamed from dviware/dvisvgm/src/TTFAutohint.cpp)46
-rw-r--r--dviware/dvisvgm/src/ttf/TTFAutohint.hpp (renamed from dviware/dvisvgm/src/TTFAutohint.hpp)13
-rw-r--r--dviware/dvisvgm/src/ttf/TTFTable.cpp94
-rw-r--r--dviware/dvisvgm/src/ttf/TTFTable.hpp108
-rw-r--r--dviware/dvisvgm/src/ttf/TTFWriter.cpp422
-rw-r--r--dviware/dvisvgm/src/ttf/TTFWriter.hpp113
-rw-r--r--dviware/dvisvgm/src/ttf/VheaTable.cpp66
-rw-r--r--dviware/dvisvgm/src/ttf/VheaTable.hpp47
-rw-r--r--dviware/dvisvgm/src/ttf/VmtxTable.cpp57
-rw-r--r--dviware/dvisvgm/src/ttf/VmtxTable.hpp49
-rw-r--r--dviware/dvisvgm/src/utility.cpp102
-rw-r--r--dviware/dvisvgm/src/utility.hpp89
-rw-r--r--dviware/dvisvgm/src/version.hpp.in2
-rw-r--r--dviware/dvisvgm/src/windows.hpp2
-rw-r--r--dviware/dvisvgm/tests/BezierTest.cpp48
-rw-r--r--dviware/dvisvgm/tests/BitmapTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/BoundingBoxTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/CMapManagerTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/CMapReaderTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/CMapTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/CalculatorTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/ColorSpecialTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/ColorTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/CommandLineTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/DVIReaderTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/DependencyGraphTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/DirectoryTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/DvisvgmSpecialTest.cpp14
-rw-r--r--dviware/dvisvgm/tests/EllipticalArcTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/EmSpecialTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/FileFinderTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/FilePathTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/FileSystemTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/FontCacheTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/FontManagerTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/FontMapTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/GFGlyphTracerTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/GFReaderTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/GhostscriptTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/GraphicsPathParserTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/GraphicsPathTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/HashFunctionTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/JFMReaderTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/LengthTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/Makefile.am7
-rw-r--r--dviware/dvisvgm/tests/Makefile.in32
-rw-r--r--dviware/dvisvgm/tests/MapLineTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/MatrixTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/MessageExceptionTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/PDFParserTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/PSInterpreterTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/PageRagesTest.cpp43
-rw-r--r--dviware/dvisvgm/tests/PageSizeTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/PairTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/PapersizeSpecialTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/RangeMapTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/SVGOutputTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/ShadingPatchTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/SpecialManagerTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/SplittedCharInputBufferTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/StreamInputBufferTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/StreamReaderTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/StreamWriterTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/StringMatcherTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/SubfontTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/TFMReaderTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/TensorProductPatchTest.cpp6
-rw-r--r--dviware/dvisvgm/tests/ToUnicodeMapTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/TpicSpecialTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/TriangularPatchTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/UnicodeTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/UtilityTest.cpp44
-rw-r--r--dviware/dvisvgm/tests/VectorIteratorTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/VectorStreamTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/XMLNodeTest.cpp2
-rw-r--r--dviware/dvisvgm/tests/XMLStringTest.cpp2
-rwxr-xr-xdviware/dvisvgm/tests/check-conv2
-rw-r--r--dviware/dvisvgm/tests/data/Makefile.am2
-rw-r--r--dviware/dvisvgm/tests/data/Makefile.in25
-rwxr-xr-xdviware/dvisvgm/tests/genhashcheck.py2
-rw-r--r--dviware/dvisvgm/tests/normalize.xsl2
-rw-r--r--dviware/dvisvgm/tests/testmain.cpp2
-rw-r--r--fonts/musixtex-fonts/README5
-rw-r--r--fonts/musixtex-fonts/map/musix.map1
-rw-r--r--fonts/musixtex-fonts/tfm/feta20.tfmbin0 -> 1200 bytes
-rw-r--r--fonts/musixtex-fonts/type1/feta20.pfbbin0 -> 59737 bytes
-rw-r--r--info/biblio/texbook2.bib87
-rw-r--r--info/biblio/texbook3.bib61
-rw-r--r--info/biblio/texbook3.ltx12
-rw-r--r--macros/latex/contrib/diffcoeff/README.txt29
-rw-r--r--macros/latex/contrib/diffcoeff/diffcoeff-doc.def6
-rw-r--r--macros/latex/contrib/diffcoeff/diffcoeff.pdf11905
-rw-r--r--macros/latex/contrib/diffcoeff/diffcoeff.sty1051
-rw-r--r--macros/latex/contrib/diffcoeff/diffcoeff.tex4687
-rw-r--r--macros/latex/contrib/diffcoeff/diffcoeff4.pdf8756
-rw-r--r--macros/latex/contrib/diffcoeff/diffcoeff4.sty744
-rw-r--r--macros/latex/contrib/diffcoeff/diffcoeff4.tex2272
-rw-r--r--macros/latex/contrib/diffcoeff/diffcoeff5.def136
-rw-r--r--macros/latex/contrib/pythonimmediate/README4
-rw-r--r--macros/latex/contrib/pythonimmediate/pythonimmediate.pdfbin402484 -> 432126 bytes
-rw-r--r--macros/latex/contrib/pythonimmediate/pythonimmediate.sty157
-rw-r--r--macros/latex/contrib/pythonimmediate/pythonimmediate.tex92
-rwxr-xr-xmacros/latex/contrib/pythonimmediate/pythonimmediate_script_pytotex.py57
-rwxr-xr-xmacros/latex/contrib/pythonimmediate/pythonimmediate_script_textopy.py2295
-rw-r--r--macros/latex/contrib/sagetex/PKG-INFO19
-rw-r--r--macros/latex/contrib/sagetex/README.md10
-rw-r--r--macros/latex/contrib/sagetex/example.pdfbin276082 -> 277744 bytes
-rw-r--r--macros/latex/contrib/sagetex/py-and-sty.dtx14
-rw-r--r--macros/latex/contrib/sagetex/sagetex.dtx28
-rw-r--r--macros/latex/contrib/sagetex/sagetex.ins9
-rw-r--r--macros/latex/contrib/sagetex/sagetex.pdfbin497692 -> 501661 bytes
-rw-r--r--macros/latex/contrib/sagetex/scripts.dtx410
-rw-r--r--macros/latex/contrib/sagetex/setup.py11
-rw-r--r--macros/musixtex/README2
-rw-r--r--macros/musixtex/doc/musixdoc.pdfbin1434694 -> 1437432 bytes
-rw-r--r--macros/musixtex/doc/musixdoc/accidentals.tex5
-rw-r--r--macros/musixtex/doc/musixdoc/barlines.tex6
-rw-r--r--macros/musixtex/doc/musixdoc/extensions.tex62
-rw-r--r--macros/musixtex/doc/musixdoc/frontmatter.tex4
-rw-r--r--macros/musixtex/doc/musixdoc/miscellaneous.tex6
-rw-r--r--macros/musixtex/doc/musixdoc/settingup.tex14
-rw-r--r--macros/musixtex/dvips/psslurs.pro6
-rw-r--r--macros/musixtex/tex/musixmkm.tex54
-rw-r--r--macros/musixtex/tex/musixps.tex1
-rw-r--r--macros/musixtex/tex/musixtex.tex47
-rw-r--r--macros/musixtex/tex/musixthacc.tex49
-rw-r--r--macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdfbin57374 -> 57390 bytes
-rw-r--r--macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex2
-rw-r--r--macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex8
-rw-r--r--support/TeX4ht/source/ChangeLog17
-rw-r--r--support/TeX4ht/source/Makefile26
-rw-r--r--support/TeX4ht/source/mktex4ht-cnf.tex4
-rw-r--r--support/TeX4ht/source/tex4ht-html4.tex8
-rw-r--r--support/TeX4ht/source/tex4ht-html5.tex45
-rw-r--r--systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl3
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb237
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.md52
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha5122
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc14
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.xzbin2444448 -> 2446648 bytes
-rw-r--r--timestamp2
566 files changed, 64020 insertions, 171433 deletions
diff --git a/FILES.byname b/FILES.byname
index ae57088a07..0d099e2a0e 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -2048,12 +2048,12 @@
2022/12/25 | 1673 | biblio/citation-style-language/README.md
2022/12/25 | 11958 | biblio/citation-style-language/vancouver.csl
2022/12/25 | 604004 | biblio/citation-style-language.zip
-2023/01/10 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2023/01/11 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx
-2023/01/10 | 2759904 | biblio/ctan-bibdata/ctan.bib
-2023/01/10 | 3642257 | biblio/ctan-bibdata/ctan.pdf
+2023/01/11 | 2759921 | biblio/ctan-bibdata/ctan.bib
+2023/01/11 | 3642691 | biblio/ctan-bibdata/ctan.pdf
2022/10/08 | 1415 | biblio/ctan-bibdata/README
-2023/01/10 | 4036465 | biblio/ctan-bibdata.zip
+2023/01/11 | 4036399 | biblio/ctan-bibdata.zip
2022/02/06 | 3110 | biblio/pbibtex/pbibtex-base/cpp.awk
2022/02/06 | 1009 | biblio/pbibtex/pbibtex-base/generate.sh
2022/02/06 | 22422 | biblio/pbibtex/pbibtex-base/jabbrv.bst
@@ -3875,641 +3875,621 @@
1990/10/02 | 159 | dviware/dvisun/makefile
1990/10/02 | 280 | dviware/dvisun/README
2019/06/09 | 55720 | dviware/dvisun.zip
-2022/08/12 | 423415 | dviware/dvisvgm/aclocal.m4
-2022/08/12 | 5875 | dviware/dvisvgm/ar-lib
-2018/09/08 | 576 | dviware/dvisvgm/AUTHORS
-2022/08/12 | 452753 | dviware/dvisvgm/ChangeLog
-2022/08/12 | 7400 | dviware/dvisvgm/compile
-2022/08/12 | 49797 | dviware/dvisvgm/config.guess
-2022/08/12 | 4514 | dviware/dvisvgm/config.h.in
-2022/08/12 | 35409 | dviware/dvisvgm/config.sub
-2022/08/12 | 715794 | dviware/dvisvgm/configure
-2022/08/12 | 8409 | dviware/dvisvgm/configure.ac
-2016/09/03 | 35147 | dviware/dvisvgm/COPYING
-2022/08/12 | 23568 | dviware/dvisvgm/depcomp
-2022/01/18 | 718 | dviware/dvisvgm/doc/conf-dblatex-man.xsl
-2022/01/18 | 2618 | dviware/dvisvgm/doc/conf-dblatex-pdf.xsl
-2022/08/12 | 69099 | dviware/dvisvgm/doc/dvisvgm.1
-2022/03/14 | 62519 | dviware/dvisvgm/doc/dvisvgm.txt.in
-2020/03/21 | 840 | dviware/dvisvgm/doc/generate-dvisvgm-sty.xsl
-2022/01/18 | 3692 | dviware/dvisvgm/doc/Makefile.am
-2022/08/12 | 21152 | dviware/dvisvgm/doc/Makefile.in
-2022/01/18 | 1041 | dviware/dvisvgm/doc/tweak-dblatex-pdf.xsl
-2021/03/05 | 717 | dviware/dvisvgm/doc/tweak-dblatex-tex.py
-2022/01/18 | 1698 | dviware/dvisvgm/doc/tweak-db-refentry.xsl
-2016/09/03 | 9236 | dviware/dvisvgm/INSTALL
-2022/08/12 | 15358 | dviware/dvisvgm/install-sh
-2020/08/27 | 623 | dviware/dvisvgm/libs/brotli/common/constants.c
-2020/08/27 | 8012 | dviware/dvisvgm/libs/brotli/common/constants.h
-2020/08/27 | 7967 | dviware/dvisvgm/libs/brotli/common/context.c
-2020/08/27 | 4666 | dviware/dvisvgm/libs/brotli/common/context.h
-2020/08/27 | 471957 | dviware/dvisvgm/libs/brotli/common/dictionary.c
-2018/05/03 | 1951 | dviware/dvisvgm/libs/brotli/common/dictionary.h
-2020/08/27 | 514 | dviware/dvisvgm/libs/brotli/common/platform.c
-2020/08/27 | 21522 | dviware/dvisvgm/libs/brotli/common/platform.h
-2020/08/27 | 10679 | dviware/dvisvgm/libs/brotli/common/transform.c
-2020/08/27 | 3209 | dviware/dvisvgm/libs/brotli/common/transform.h
-2020/09/12 | 871 | dviware/dvisvgm/libs/brotli/common/version.h
-2020/08/27 | 4001 | dviware/dvisvgm/libs/brotli/enc/backward_references.c
-2020/08/27 | 1306 | dviware/dvisvgm/libs/brotli/enc/backward_references.h
-2020/08/27 | 32486 | dviware/dvisvgm/libs/brotli/enc/backward_references_hq.c
-2020/08/27 | 3875 | dviware/dvisvgm/libs/brotli/enc/backward_references_hq.h
-2020/08/27 | 6914 | dviware/dvisvgm/libs/brotli/enc/backward_references_inc.h
-2018/05/03 | 824 | dviware/dvisvgm/libs/brotli/enc/bit_cost.c
-2018/05/03 | 1680 | dviware/dvisvgm/libs/brotli/enc/bit_cost.h
-2017/12/28 | 4109 | dviware/dvisvgm/libs/brotli/enc/bit_cost_inc.h
-2018/05/03 | 1137 | dviware/dvisvgm/libs/brotli/enc/block_encoder_inc.h
-2020/08/27 | 6260 | dviware/dvisvgm/libs/brotli/enc/block_splitter.c
-2018/05/03 | 1679 | dviware/dvisvgm/libs/brotli/enc/block_splitter.h
-2020/08/27 | 16811 | dviware/dvisvgm/libs/brotli/enc/block_splitter_inc.h
-2020/08/27 | 49657 | dviware/dvisvgm/libs/brotli/enc/brotli_bit_stream.c
-2018/07/31 | 3371 | dviware/dvisvgm/libs/brotli/enc/brotli_bit_stream.h
-2018/05/03 | 1500 | dviware/dvisvgm/libs/brotli/enc/cluster.c
-2018/05/03 | 1033 | dviware/dvisvgm/libs/brotli/enc/cluster.h
-2020/08/27 | 11560 | dviware/dvisvgm/libs/brotli/enc/cluster_inc.h
-2020/08/27 | 1021 | dviware/dvisvgm/libs/brotli/enc/command.c
-2020/08/27 | 6897 | dviware/dvisvgm/libs/brotli/enc/command.h
-2018/07/31 | 32374 | dviware/dvisvgm/libs/brotli/enc/compress_fragment.c
-2018/05/03 | 2825 | dviware/dvisvgm/libs/brotli/enc/compress_fragment.h
-2020/08/27 | 25772 | dviware/dvisvgm/libs/brotli/enc/compress_fragment_two_pass.c
-2018/05/03 | 2407 | dviware/dvisvgm/libs/brotli/enc/compress_fragment_two_pass.h
-2020/08/27 | 147104 | dviware/dvisvgm/libs/brotli/enc/dictionary_hash.c
-2020/08/27 | 646 | dviware/dvisvgm/libs/brotli/enc/dictionary_hash.h
-2021/12/06 | 73998 | dviware/dvisvgm/libs/brotli/enc/encode.c
-2020/08/27 | 949 | dviware/dvisvgm/libs/brotli/enc/encoder_dict.c
-2020/08/27 | 1155 | dviware/dvisvgm/libs/brotli/enc/encoder_dict.h
-2020/08/27 | 14585 | dviware/dvisvgm/libs/brotli/enc/entropy_encode.c
-2020/08/27 | 4056 | dviware/dvisvgm/libs/brotli/enc/entropy_encode.h
-2018/05/03 | 32900 | dviware/dvisvgm/libs/brotli/enc/entropy_encode_static.h
-2020/08/27 | 6026 | dviware/dvisvgm/libs/brotli/enc/fast_log.c
-2020/08/27 | 1649 | dviware/dvisvgm/libs/brotli/enc/fast_log.h
-2020/08/27 | 2533 | dviware/dvisvgm/libs/brotli/enc/find_match_length.h
-2020/08/27 | 4415 | dviware/dvisvgm/libs/brotli/enc/hash_composite_inc.h
-2020/08/27 | 10861 | dviware/dvisvgm/libs/brotli/enc/hash_forgetful_chain_inc.h
-2020/08/27 | 14944 | dviware/dvisvgm/libs/brotli/enc/hash.h
-2020/08/27 | 10481 | dviware/dvisvgm/libs/brotli/enc/hash_longest_match64_inc.h
-2020/08/27 | 10054 | dviware/dvisvgm/libs/brotli/enc/hash_longest_match_inc.h
-2020/08/27 | 9310 | dviware/dvisvgm/libs/brotli/enc/hash_longest_match_quickly_inc.h
-2020/08/27 | 7196 | dviware/dvisvgm/libs/brotli/enc/hash_rolling_inc.h
-2020/08/27 | 13035 | dviware/dvisvgm/libs/brotli/enc/hash_to_binary_tree_inc.h
-2018/05/03 | 3227 | dviware/dvisvgm/libs/brotli/enc/histogram.c
-2018/05/03 | 1884 | dviware/dvisvgm/libs/brotli/enc/histogram.h
-2018/05/03 | 1401 | dviware/dvisvgm/libs/brotli/enc/histogram_inc.h
-2018/05/03 | 5614 | dviware/dvisvgm/libs/brotli/enc/literal_cost.c
-2018/05/03 | 892 | dviware/dvisvgm/libs/brotli/enc/literal_cost.h
-2018/05/03 | 4887 | dviware/dvisvgm/libs/brotli/enc/memory.c
-2020/08/27 | 3595 | dviware/dvisvgm/libs/brotli/enc/memory.h
-2020/08/27 | 26199 | dviware/dvisvgm/libs/brotli/enc/metablock.c
-2018/05/03 | 3994 | dviware/dvisvgm/libs/brotli/enc/metablock.h
-2020/08/27 | 7557 | dviware/dvisvgm/libs/brotli/enc/metablock_inc.h
-2020/08/27 | 1138 | dviware/dvisvgm/libs/brotli/enc/params.h
-2018/05/03 | 1970 | dviware/dvisvgm/libs/brotli/enc/prefix.h
-2018/07/31 | 6165 | dviware/dvisvgm/libs/brotli/enc/quality.h
-2020/08/27 | 6012 | dviware/dvisvgm/libs/brotli/enc/ringbuffer.h
-2018/07/31 | 19012 | dviware/dvisvgm/libs/brotli/enc/static_dict.c
-2018/05/03 | 1276 | dviware/dvisvgm/libs/brotli/enc/static_dict.h
-2018/05/03 | 469658 | dviware/dvisvgm/libs/brotli/enc/static_dict_lut.h
-2020/08/27 | 2271 | dviware/dvisvgm/libs/brotli/enc/utf8_util.c
-2018/05/03 | 904 | dviware/dvisvgm/libs/brotli/enc/utf8_util.h
-2020/08/27 | 2861 | dviware/dvisvgm/libs/brotli/enc/write_bits.h
-2018/05/03 | 14323 | dviware/dvisvgm/libs/brotli/include/brotli/decode.h
-2020/08/27 | 17361 | dviware/dvisvgm/libs/brotli/include/brotli/encode.h
-2020/08/27 | 10712 | dviware/dvisvgm/libs/brotli/include/brotli/port.h
-2018/07/31 | 2615 | dviware/dvisvgm/libs/brotli/include/brotli/types.h
-2017/12/28 | 1084 | dviware/dvisvgm/libs/brotli/LICENSE
-2020/08/27 | 1997 | dviware/dvisvgm/libs/brotli/Makefile.am
-2022/08/12 | 33152 | dviware/dvisvgm/libs/brotli/Makefile.in
-2018/09/08 | 132235 | dviware/dvisvgm/libs/clipper/clipper.cpp
-2016/09/03 | 15879 | dviware/dvisvgm/libs/clipper/clipper.hpp
-2017/04/14 | 1374 | dviware/dvisvgm/libs/clipper/License.txt
-2017/04/14 | 202 | dviware/dvisvgm/libs/clipper/Makefile.am
-2022/08/12 | 20115 | dviware/dvisvgm/libs/clipper/Makefile.in
-2019/03/09 | 467 | dviware/dvisvgm/libs/defs.am
-2017/04/14 | 188824 | dviware/dvisvgm/libs/ff-woff/fontforge/alphabet.c
-2017/04/14 | 32761 | dviware/dvisvgm/libs/ff-woff/fontforge/asmfpst.c
-2017/04/14 | 81675 | dviware/dvisvgm/libs/ff-woff/fontforge/autohint.c
-2017/04/14 | 2340 | dviware/dvisvgm/libs/ff-woff/fontforge/char.c
-2017/04/14 | 1027567 | dviware/dvisvgm/libs/ff-woff/fontforge/cjk.c
-2017/04/14 | 4984 | dviware/dvisvgm/libs/ff-woff/fontforge/configure-fontforge.h
-2017/04/14 | 1827 | dviware/dvisvgm/libs/ff-woff/fontforge/cvundoes.c
-2017/04/14 | 4233 | dviware/dvisvgm/libs/ff-woff/fontforge/dumppfa.c
-2017/04/14 | 3150 | dviware/dvisvgm/libs/ff-woff/fontforge/edgelist2.h
-2017/04/14 | 5274 | dviware/dvisvgm/libs/ff-woff/fontforge/edgelist.h
-2017/04/14 | 29572 | dviware/dvisvgm/libs/ff-woff/fontforge/encoding.c
-2017/04/14 | 90 | dviware/dvisvgm/libs/ff-woff/fontforge/encoding.h
-2017/04/14 | 1200 | dviware/dvisvgm/libs/ff-woff/fontforge/fflocale.c
-2017/04/14 | 452 | dviware/dvisvgm/libs/ff-woff/fontforge/fflocale.h
-2017/04/14 | 486 | dviware/dvisvgm/libs/ff-woff/fontforge/fontforge-config.h
-2017/04/14 | 3001 | dviware/dvisvgm/libs/ff-woff/fontforge/fontforge.h
-2017/04/14 | 1512 | dviware/dvisvgm/libs/ff-woff/fontforge/fontforgevw.h
-2017/04/14 | 7522 | dviware/dvisvgm/libs/ff-woff/fontforge/fvfonts.c
-2017/04/14 | 23626 | dviware/dvisvgm/libs/ff-woff/fontforge/gwwiconv.c
-2017/04/14 | 428 | dviware/dvisvgm/libs/ff-woff/fontforge/libffstamp.h
-2017/04/14 | 21357 | dviware/dvisvgm/libs/ff-woff/fontforge/lookups.c
-2017/10/30 | 8506 | dviware/dvisvgm/libs/ff-woff/fontforge/macbinary.c
-2017/04/14 | 83604 | dviware/dvisvgm/libs/ff-woff/fontforge/macenc.c
-2017/04/14 | 5539 | dviware/dvisvgm/libs/ff-woff/fontforge/mathconstants.c
-2017/04/14 | 2052 | dviware/dvisvgm/libs/ff-woff/fontforge/memory.c
-2017/04/14 | 9924 | dviware/dvisvgm/libs/ff-woff/fontforge/mm.c
-2017/04/14 | 2029 | dviware/dvisvgm/libs/ff-woff/fontforge/namehash.h
-2017/04/14 | 296376 | dviware/dvisvgm/libs/ff-woff/fontforge/namelist.c
-2017/04/14 | 4520 | dviware/dvisvgm/libs/ff-woff/fontforge/nouiutil.c
-2017/04/14 | 178642 | dviware/dvisvgm/libs/ff-woff/fontforge/nowakowskittfinstr.c
-2017/04/14 | 13812 | dviware/dvisvgm/libs/ff-woff/fontforge/parsepfa.c
-2017/04/14 | 1819 | dviware/dvisvgm/libs/ff-woff/fontforge/parsettfatt.c
-2017/04/14 | 10402 | dviware/dvisvgm/libs/ff-woff/fontforge/parsettf.c
-2017/04/14 | 10001 | dviware/dvisvgm/libs/ff-woff/fontforge/PfEd.h
-2017/04/14 | 7808 | dviware/dvisvgm/libs/ff-woff/fontforge/psfont.h
-2017/04/14 | 2388 | dviware/dvisvgm/libs/ff-woff/fontforge/psread.c
-2017/04/14 | 133230 | dviware/dvisvgm/libs/ff-woff/fontforge/pua.c
-2017/04/14 | 4637 | dviware/dvisvgm/libs/ff-woff/fontforge/sd.h
-2017/04/14 | 5412 | dviware/dvisvgm/libs/ff-woff/fontforge/sfd1.c
-2017/04/14 | 3972 | dviware/dvisvgm/libs/ff-woff/fontforge/sfd1.h
-2017/04/14 | 141065 | dviware/dvisvgm/libs/ff-woff/fontforge/sfd.c
-2017/04/14 | 9675 | dviware/dvisvgm/libs/ff-woff/fontforge/splinechar.c
-2017/04/14 | 13672 | dviware/dvisvgm/libs/ff-woff/fontforge/splinefont.c
-2017/04/14 | 102583 | dviware/dvisvgm/libs/ff-woff/fontforge/splinefont.h
-2017/04/14 | 54147 | dviware/dvisvgm/libs/ff-woff/fontforge/splineorder2.c
-2017/04/14 | 15643 | dviware/dvisvgm/libs/ff-woff/fontforge/splineoverlap.c
-2017/04/14 | 4779 | dviware/dvisvgm/libs/ff-woff/fontforge/splinerefigure.c
-2017/04/14 | 9598 | dviware/dvisvgm/libs/ff-woff/fontforge/splinesaveafm.c
-2017/04/14 | 68453 | dviware/dvisvgm/libs/ff-woff/fontforge/splinesave.c
-2017/04/14 | 50805 | dviware/dvisvgm/libs/ff-woff/fontforge/splineutil2.c
-2017/04/14 | 113050 | dviware/dvisvgm/libs/ff-woff/fontforge/splineutil.c
-2017/04/14 | 1950 | dviware/dvisvgm/libs/ff-woff/fontforge/start.c
-2017/04/14 | 210538 | dviware/dvisvgm/libs/ff-woff/fontforge/stemdb.c
-2017/04/14 | 8655 | dviware/dvisvgm/libs/ff-woff/fontforge/stemdb.h
-2017/04/14 | 114 | dviware/dvisvgm/libs/ff-woff/fontforge/tables.h
-2022/01/18 | 2041 | dviware/dvisvgm/libs/ff-woff/fontforge/tmpfile2.cpp
-2017/04/14 | 83106 | dviware/dvisvgm/libs/ff-woff/fontforge/tottfaat.c
-2017/04/14 | 217496 | dviware/dvisvgm/libs/ff-woff/fontforge/tottf.c
-2017/04/14 | 149564 | dviware/dvisvgm/libs/ff-woff/fontforge/tottfgpos.c
-2017/04/14 | 24895 | dviware/dvisvgm/libs/ff-woff/fontforge/tottfvar.c
-2017/04/14 | 30896 | dviware/dvisvgm/libs/ff-woff/fontforge/ttf.h
-2017/04/14 | 11086 | dviware/dvisvgm/libs/ff-woff/fontforge/ttfinstrs.c
-2017/04/14 | 3416 | dviware/dvisvgm/libs/ff-woff/fontforge/ttfinstrs.h
-2017/04/14 | 62940 | dviware/dvisvgm/libs/ff-woff/fontforge/ttfspecial.c
-2017/04/14 | 7710 | dviware/dvisvgm/libs/ff-woff/fontforge/uiinterface.h
-2017/04/14 | 318474 | dviware/dvisvgm/libs/ff-woff/fontforge/unialt.c
-2017/04/14 | 6435 | dviware/dvisvgm/libs/ff-woff/fontforge/ustring.c
-2017/04/14 | 1924432 | dviware/dvisvgm/libs/ff-woff/fontforge/utype.c
-2017/04/14 | 9876 | dviware/dvisvgm/libs/ff-woff/fontforge/woff.c
-2017/04/14 | 3909 | dviware/dvisvgm/libs/ff-woff/inc/basics.h
-2017/04/14 | 3051 | dviware/dvisvgm/libs/ff-woff/inc/chardata.h
-2017/04/14 | 3336 | dviware/dvisvgm/libs/ff-woff/inc/charset.h
-2017/04/14 | 5956 | dviware/dvisvgm/libs/ff-woff/inc/dlist.h
-2017/04/14 | 1638 | dviware/dvisvgm/libs/ff-woff/inc/ffintl.h
-2017/04/14 | 8611 | dviware/dvisvgm/libs/ff-woff/inc/gimage.h
-2017/04/14 | 3413 | dviware/dvisvgm/libs/ff-woff/inc/gnetwork.h
-2017/04/14 | 2002 | dviware/dvisvgm/libs/ff-woff/inc/gwwiconv.h
-2017/04/14 | 9794 | dviware/dvisvgm/libs/ff-woff/inc/ustring.h
-2017/04/14 | 5185 | dviware/dvisvgm/libs/ff-woff/inc/utype.h
-2017/04/14 | 9905 | dviware/dvisvgm/libs/ff-woff/LICENSE
-2019/04/12 | 2027 | dviware/dvisvgm/libs/ff-woff/Makefile.am
-2022/08/12 | 40344 | dviware/dvisvgm/libs/ff-woff/Makefile.in
-2018/07/31 | 553 | dviware/dvisvgm/libs/ff-woff/README.md
-2022/01/18 | 241 | dviware/dvisvgm/libs/Makefile.am
-2022/08/12 | 19713 | dviware/dvisvgm/libs/Makefile.in
-2018/09/08 | 171 | dviware/dvisvgm/libs/md5/Makefile.am
-2022/08/12 | 19322 | dviware/dvisvgm/libs/md5/Makefile.in
-2018/09/08 | 8743 | dviware/dvisvgm/libs/md5/md5.c
-2018/09/08 | 1426 | dviware/dvisvgm/libs/md5/md5.h
-2019/10/25 | 2146 | dviware/dvisvgm/libs/potrace/auxiliary.h
-2019/10/25 | 6450 | dviware/dvisvgm/libs/potrace/bitmap.h
-2019/10/25 | 90 | dviware/dvisvgm/libs/potrace/config.h
-2019/10/25 | 2693 | dviware/dvisvgm/libs/potrace/curve.c
-2019/10/25 | 2782 | dviware/dvisvgm/libs/potrace/curve.h
-2019/10/25 | 14605 | dviware/dvisvgm/libs/potrace/decompose.c
-2019/10/25 | 442 | dviware/dvisvgm/libs/potrace/decompose.h
-2019/10/25 | 11118 | dviware/dvisvgm/libs/potrace/lists.h
-2019/03/09 | 330 | dviware/dvisvgm/libs/potrace/Makefile.am
-2022/08/12 | 20581 | dviware/dvisvgm/libs/potrace/Makefile.in
-2019/10/25 | 3122 | dviware/dvisvgm/libs/potrace/potracelib.c
-2019/10/25 | 4573 | dviware/dvisvgm/libs/potrace/potracelib.h
-2019/10/25 | 2654 | dviware/dvisvgm/libs/potrace/progress.h
-2019/10/25 | 32392 | dviware/dvisvgm/libs/potrace/trace.c
-2019/10/25 | 397 | dviware/dvisvgm/libs/potrace/trace.h
-2019/03/09 | 102582 | dviware/dvisvgm/libs/variant/include/mpark/variant.hpp
-2017/10/30 | 1338 | dviware/dvisvgm/libs/variant/LICENSE.md
-2019/03/09 | 71 | dviware/dvisvgm/libs/variant/Makefile.am
-2022/08/12 | 15370 | dviware/dvisvgm/libs/variant/Makefile.in
-2017/10/30 | 1171 | dviware/dvisvgm/libs/woff2/include/woff2/decode.h
-2022/07/18 | 1434 | dviware/dvisvgm/libs/woff2/include/woff2/encode.h
-2022/07/18 | 2304 | dviware/dvisvgm/libs/woff2/include/woff2/output.h
-2018/07/31 | 131 | dviware/dvisvgm/libs/woff2/include/woff2/version.h
-2016/09/03 | 11358 | dviware/dvisvgm/libs/woff2/LICENSE
-2019/03/09 | 701 | dviware/dvisvgm/libs/woff2/Makefile.am
-2022/08/12 | 24458 | dviware/dvisvgm/libs/woff2/Makefile.in
-2017/10/30 | 4185 | dviware/dvisvgm/libs/woff2/src/buffer.h
-2022/07/18 | 12155 | dviware/dvisvgm/libs/woff2/src/font.cc
-2017/10/30 | 3509 | dviware/dvisvgm/libs/woff2/src/font.h
-2022/07/18 | 11642 | dviware/dvisvgm/libs/woff2/src/glyph.cc
-2022/07/18 | 1875 | dviware/dvisvgm/libs/woff2/src/glyph.h
-2022/07/18 | 9004 | dviware/dvisvgm/libs/woff2/src/normalize.cc
-2017/10/30 | 1301 | dviware/dvisvgm/libs/woff2/src/normalize.h
-2017/10/30 | 1674 | dviware/dvisvgm/libs/woff2/src/port.h
-2017/10/30 | 587 | dviware/dvisvgm/libs/woff2/src/round.h
-2017/10/30 | 1864 | dviware/dvisvgm/libs/woff2/src/store_bytes.h
-2017/10/30 | 2558 | dviware/dvisvgm/libs/woff2/src/table_tags.cc
-2017/10/30 | 807 | dviware/dvisvgm/libs/woff2/src/table_tags.h
-2022/07/18 | 13696 | dviware/dvisvgm/libs/woff2/src/transform.cc
-2017/10/30 | 768 | dviware/dvisvgm/libs/woff2/src/transform.h
-2017/10/30 | 3176 | dviware/dvisvgm/libs/woff2/src/variable_length.cc
-2017/10/30 | 811 | dviware/dvisvgm/libs/woff2/src/variable_length.h
-2017/10/30 | 1547 | dviware/dvisvgm/libs/woff2/src/woff2_common.cc
-2017/10/30 | 1439 | dviware/dvisvgm/libs/woff2/src/woff2_common.h
-2022/07/18 | 15414 | dviware/dvisvgm/libs/woff2/src/woff2_enc.cc
-2022/07/18 | 1543 | dviware/dvisvgm/libs/woff2/src/woff2_out.cc
-2019/10/25 | 200 | dviware/dvisvgm/libs/xxHash/Makefile.am
-2022/08/12 | 19427 | dviware/dvisvgm/libs/xxHash/Makefile.in
-2021/12/02 | 2394 | dviware/dvisvgm/libs/xxHash/xxh3.h
-2020/07/04 | 1855 | dviware/dvisvgm/libs/xxHash/xxhash.c
-2022/01/25 | 209623 | dviware/dvisvgm/libs/xxHash/xxhash.h
-2022/08/12 | 332808 | dviware/dvisvgm/ltmain.sh
-2019/03/09 | 95 | dviware/dvisvgm/m4/Makefile.am
-2022/08/12 | 13279 | dviware/dvisvgm/m4/Makefile.in
-2022/01/18 | 744 | dviware/dvisvgm/Makefile.am
-2022/08/12 | 27761 | dviware/dvisvgm/Makefile.in
-2022/08/12 | 6878 | dviware/dvisvgm/missing
-2022/08/12 | 40040 | dviware/dvisvgm/NEWS
-2022/01/18 | 6173 | dviware/dvisvgm/README
-2022/01/18 | 158418 | dviware/dvisvgm/src/AGLTable.hpp
-2022/01/18 | 15777 | dviware/dvisvgm/src/BasicDVIReader.cpp
-2022/01/18 | 5248 | dviware/dvisvgm/src/BasicDVIReader.hpp
-2022/01/18 | 9132 | dviware/dvisvgm/src/Bezier.cpp
-2022/01/18 | 2502 | dviware/dvisvgm/src/Bezier.hpp
-2022/01/18 | 3164 | dviware/dvisvgm/src/BgColorSpecialHandler.cpp
-2022/01/18 | 2228 | dviware/dvisvgm/src/BgColorSpecialHandler.hpp
-2022/01/18 | 4889 | dviware/dvisvgm/src/Bitmap.cpp
-2022/01/18 | 4166 | dviware/dvisvgm/src/Bitmap.hpp
-2022/03/14 | 8299 | dviware/dvisvgm/src/BoundingBox.cpp
-2022/03/14 | 3970 | dviware/dvisvgm/src/BoundingBox.hpp
-2022/01/18 | 6779 | dviware/dvisvgm/src/Calculator.cpp
-2022/01/18 | 2365 | dviware/dvisvgm/src/Calculator.hpp
-2022/01/18 | 2000 | dviware/dvisvgm/src/Character.hpp
-2022/01/18 | 2040 | dviware/dvisvgm/src/CharMapID.cpp
-2022/01/18 | 2541 | dviware/dvisvgm/src/CharMapID.hpp
-2022/08/01 | 8309 | dviware/dvisvgm/src/CLCommandLine.cpp
-2022/01/18 | 2891 | dviware/dvisvgm/src/CLCommandLine.hpp
-2022/01/18 | 6531 | dviware/dvisvgm/src/CLOption.hpp
-2022/08/01 | 3537 | dviware/dvisvgm/src/CMap.cpp
-2022/01/18 | 4475 | dviware/dvisvgm/src/CMap.hpp
-2022/01/18 | 5299 | dviware/dvisvgm/src/CMapManager.cpp
-2022/01/18 | 2221 | dviware/dvisvgm/src/CMapManager.hpp
-2022/01/18 | 8332 | dviware/dvisvgm/src/CMapReader.cpp
-2022/01/18 | 3080 | dviware/dvisvgm/src/CMapReader.hpp
-2022/01/18 | 19513 | dviware/dvisvgm/src/Color.cpp
-2022/01/18 | 4778 | dviware/dvisvgm/src/Color.hpp
-2022/01/18 | 4118 | dviware/dvisvgm/src/ColorSpecialHandler.cpp
-2022/01/18 | 2118 | dviware/dvisvgm/src/ColorSpecialHandler.hpp
-2022/01/20 | 7644 | dviware/dvisvgm/src/CommandLine.hpp
-2022/01/18 | 3410 | dviware/dvisvgm/src/Directory.cpp
-2022/01/18 | 2053 | dviware/dvisvgm/src/Directory.hpp
-2022/01/18 | 2290 | dviware/dvisvgm/src/DLLoader.cpp
-2022/01/18 | 2539 | dviware/dvisvgm/src/DLLoader.hpp
-2022/01/18 | 2334 | dviware/dvisvgm/src/DVIActions.hpp
-2022/08/01 | 24846 | dviware/dvisvgm/src/DVIReader.cpp
-2022/01/18 | 8202 | dviware/dvisvgm/src/DVIReader.hpp
-2022/08/01 | 18241 | dviware/dvisvgm/src/dvisvgm.cpp
-2022/08/01 | 14382 | dviware/dvisvgm/src/DvisvgmSpecialHandler.cpp
-2022/07/14 | 3752 | dviware/dvisvgm/src/DvisvgmSpecialHandler.hpp
-2022/01/18 | 12271 | dviware/dvisvgm/src/DVIToSVGActions.cpp
-2022/01/18 | 5087 | dviware/dvisvgm/src/DVIToSVGActions.hpp
-2022/01/18 | 21247 | dviware/dvisvgm/src/DVIToSVG.cpp
-2022/01/18 | 5630 | dviware/dvisvgm/src/DVIToSVG.hpp
-2022/01/18 | 10946 | dviware/dvisvgm/src/EllipticalArc.cpp
-2022/01/18 | 3100 | dviware/dvisvgm/src/EllipticalArc.hpp
-2022/01/18 | 9740 | dviware/dvisvgm/src/EmSpecialHandler.cpp
-2022/01/18 | 2930 | dviware/dvisvgm/src/EmSpecialHandler.hpp
-2022/01/18 | 3935 | dviware/dvisvgm/src/EncFile.cpp
-2022/01/18 | 2116 | dviware/dvisvgm/src/EncFile.hpp
-2022/01/18 | 3776 | dviware/dvisvgm/src/EPSFile.cpp
-2022/01/18 | 2051 | dviware/dvisvgm/src/EPSFile.hpp
-2022/01/18 | 2098 | dviware/dvisvgm/src/EPSToSVG.hpp
-2022/01/18 | 3098 | dviware/dvisvgm/src/ffwrapper.c
-2022/01/18 | 1657 | dviware/dvisvgm/src/ffwrapper.h
-2022/08/01 | 10261 | dviware/dvisvgm/src/FileFinder.cpp
-2022/01/18 | 2586 | dviware/dvisvgm/src/FileFinder.hpp
-2022/08/01 | 10423 | dviware/dvisvgm/src/FilePath.cpp
-2022/01/18 | 3434 | dviware/dvisvgm/src/FilePath.hpp
-2022/01/18 | 11115 | dviware/dvisvgm/src/FileSystem.cpp
-2022/01/18 | 3168 | dviware/dvisvgm/src/FileSystem.hpp
-2022/01/18 | 1821 | dviware/dvisvgm/src/FixWord.hpp
-2022/01/18 | 12504 | dviware/dvisvgm/src/FontCache.cpp
-2022/01/18 | 2857 | dviware/dvisvgm/src/FontCache.hpp
-2022/08/01 | 21790 | dviware/dvisvgm/src/Font.cpp
-2022/01/18 | 3488 | dviware/dvisvgm/src/FontEncoding.cpp
-2022/01/18 | 2795 | dviware/dvisvgm/src/FontEncoding.hpp
-2022/01/18 | 14146 | dviware/dvisvgm/src/FontEngine.cpp
-2022/01/18 | 3393 | dviware/dvisvgm/src/FontEngine.hpp
-2022/01/18 | 18771 | dviware/dvisvgm/src/Font.hpp
-2022/06/26 | 12389 | dviware/dvisvgm/src/FontManager.cpp
-2022/01/18 | 3939 | dviware/dvisvgm/src/FontManager.hpp
-2022/08/01 | 9316 | dviware/dvisvgm/src/FontMap.cpp
-2022/01/18 | 2909 | dviware/dvisvgm/src/FontMap.hpp
-2022/01/18 | 1984 | dviware/dvisvgm/src/FontMetrics.cpp
-2022/01/18 | 3441 | dviware/dvisvgm/src/FontMetrics.hpp
-2022/01/18 | 1805 | dviware/dvisvgm/src/FontStyle.hpp
-2022/08/12 | 10168 | dviware/dvisvgm/src/FontWriter.cpp
-2022/01/18 | 2742 | dviware/dvisvgm/src/FontWriter.hpp
-2022/01/18 | 2757 | dviware/dvisvgm/src/GFGlyphTracer.cpp
-2022/01/18 | 2583 | dviware/dvisvgm/src/GFGlyphTracer.hpp
-2022/01/18 | 10879 | dviware/dvisvgm/src/GFReader.cpp
-2022/01/18 | 3967 | dviware/dvisvgm/src/GFReader.hpp
-2022/01/18 | 3610 | dviware/dvisvgm/src/GFTracer.cpp
-2022/01/18 | 2107 | dviware/dvisvgm/src/GFTracer.hpp
-2022/01/18 | 12128 | dviware/dvisvgm/src/Ghostscript.cpp
-2022/01/18 | 4044 | dviware/dvisvgm/src/Ghostscript.hpp
-2022/01/18 | 1537 | dviware/dvisvgm/src/Glyph.hpp
-2022/01/18 | 2941 | dviware/dvisvgm/src/GlyphTracerMessages.hpp
-2022/01/18 | 27848 | dviware/dvisvgm/src/GraphicsPath.hpp
-2022/07/23 | 9726 | dviware/dvisvgm/src/GraphicsPathParser.hpp
-2022/01/18 | 3609 | dviware/dvisvgm/src/HashFunction.cpp
-2022/08/12 | 2548 | dviware/dvisvgm/src/HashFunction.hpp
-2022/01/18 | 3623 | dviware/dvisvgm/src/HtmlSpecialHandler.cpp
-2022/01/18 | 2214 | dviware/dvisvgm/src/HtmlSpecialHandler.hpp
-2022/08/01 | 9663 | dviware/dvisvgm/src/HyperlinkManager.cpp
-2022/08/12 | 3982 | dviware/dvisvgm/src/HyperlinkManager.hpp
-2016/09/03 | 10028 | dviware/dvisvgm/src/iapi.h
-2016/09/03 | 4595 | dviware/dvisvgm/src/ierrors.h
-2022/03/14 | 6971 | dviware/dvisvgm/src/ImageToSVG.cpp
-2022/01/18 | 4602 | dviware/dvisvgm/src/ImageToSVG.hpp
-2022/01/18 | 3788 | dviware/dvisvgm/src/InputBuffer.cpp
-2022/01/18 | 5059 | dviware/dvisvgm/src/InputBuffer.hpp
-2022/01/18 | 12240 | dviware/dvisvgm/src/InputReader.cpp
-2022/01/18 | 4184 | dviware/dvisvgm/src/InputReader.hpp
-2022/01/18 | 4491 | dviware/dvisvgm/src/JFM.cpp
-2022/01/18 | 2166 | dviware/dvisvgm/src/JFM.hpp
-2022/01/18 | 4728 | dviware/dvisvgm/src/Length.cpp
-2022/01/18 | 4138 | dviware/dvisvgm/src/Length.hpp
-2022/01/18 | 2014 | dviware/dvisvgm/src/macros.hpp
-2022/07/14 | 7279 | dviware/dvisvgm/src/Makefile.am
-2022/08/12 | 60343 | dviware/dvisvgm/src/Makefile.in
-2022/08/01 | 8515 | dviware/dvisvgm/src/MapLine.cpp
-2022/01/18 | 3089 | dviware/dvisvgm/src/MapLine.hpp
-2022/01/18 | 16862 | dviware/dvisvgm/src/Matrix.cpp
-2022/01/18 | 4152 | dviware/dvisvgm/src/Matrix.hpp
-2022/01/18 | 2704 | dviware/dvisvgm/src/MD5HashFunction.hpp
-2022/01/18 | 7509 | dviware/dvisvgm/src/Message.cpp
-2022/01/18 | 1779 | dviware/dvisvgm/src/MessageException.hpp
-2022/01/18 | 3541 | dviware/dvisvgm/src/Message.hpp
-2022/08/01 | 5812 | dviware/dvisvgm/src/MetafontWrapper.cpp
-2022/01/18 | 1876 | dviware/dvisvgm/src/MetafontWrapper.hpp
-2022/08/01 | 3799 | dviware/dvisvgm/src/MiKTeXCom.cpp
-2022/01/18 | 1894 | dviware/dvisvgm/src/MiKTeXCom.hpp
-2022/01/18 | 2062 | dviware/dvisvgm/src/NoPsSpecialHandler.cpp
-2022/01/18 | 1999 | dviware/dvisvgm/src/NoPsSpecialHandler.hpp
-2022/01/18 | 3927 | dviware/dvisvgm/src/NumericRanges.hpp
-2022/01/18 | 2575 | dviware/dvisvgm/src/Opacity.cpp
-2022/08/12 | 3712 | dviware/dvisvgm/src/Opacity.hpp
-2022/07/14 | 6685 | dviware/dvisvgm/src/optimizer/AttributeExtractor.cpp
-2022/07/14 | 2656 | dviware/dvisvgm/src/optimizer/AttributeExtractor.hpp
-2022/03/14 | 3928 | dviware/dvisvgm/src/optimizer/ClipPathReassigner.cpp
-2022/03/14 | 1979 | dviware/dvisvgm/src/optimizer/ClipPathReassigner.hpp
-2022/01/18 | 4213 | dviware/dvisvgm/src/optimizer/DependencyGraph.hpp
-2022/07/14 | 6760 | dviware/dvisvgm/src/optimizer/GroupCollapser.cpp
-2022/01/18 | 2181 | dviware/dvisvgm/src/optimizer/GroupCollapser.hpp
-2022/08/12 | 632 | dviware/dvisvgm/src/optimizer/Makefile.am
-2022/08/12 | 22958 | dviware/dvisvgm/src/optimizer/Makefile.in
-2022/01/18 | 1642 | dviware/dvisvgm/src/optimizer/OptimizerModule.hpp
-2022/01/18 | 3192 | dviware/dvisvgm/src/optimizer/RedundantElementRemover.cpp
-2022/01/18 | 1644 | dviware/dvisvgm/src/optimizer/RedundantElementRemover.hpp
-2022/03/14 | 4738 | dviware/dvisvgm/src/optimizer/SVGOptimizer.cpp
-2022/01/18 | 2297 | dviware/dvisvgm/src/optimizer/SVGOptimizer.hpp
-2022/07/14 | 4160 | dviware/dvisvgm/src/optimizer/TextSimplifier.cpp
-2022/01/18 | 1699 | dviware/dvisvgm/src/optimizer/TextSimplifier.hpp
-2022/01/18 | 6846 | dviware/dvisvgm/src/optimizer/TransformSimplifier.cpp
-2022/01/18 | 1856 | dviware/dvisvgm/src/optimizer/TransformSimplifier.hpp
-2022/01/18 | 2013 | dviware/dvisvgm/src/optimizer/WSNodeRemover.cpp
-2022/01/18 | 1687 | dviware/dvisvgm/src/optimizer/WSNodeRemover.hpp
-2022/01/18 | 2067 | dviware/dvisvgm/src/options.dtd
-2022/01/18 | 8986 | dviware/dvisvgm/src/options.xml
-2022/01/18 | 2829 | dviware/dvisvgm/src/PageRanges.cpp
-2022/01/18 | 1676 | dviware/dvisvgm/src/PageRanges.hpp
-2022/08/01 | 5330 | dviware/dvisvgm/src/PageSize.cpp
-2022/01/18 | 2092 | dviware/dvisvgm/src/PageSize.hpp
-2022/01/18 | 4043 | dviware/dvisvgm/src/Pair.hpp
-2022/08/01 | 4040 | dviware/dvisvgm/src/PapersizeSpecialHandler.cpp
-2022/01/18 | 2514 | dviware/dvisvgm/src/PapersizeSpecialHandler.hpp
-2022/01/18 | 13145 | dviware/dvisvgm/src/PathClipper.cpp
-2022/01/18 | 2432 | dviware/dvisvgm/src/PathClipper.hpp
-2022/08/01 | 15437 | dviware/dvisvgm/src/PDFParser.cpp
-2022/01/18 | 5841 | dviware/dvisvgm/src/PDFParser.hpp
-2022/01/18 | 10418 | dviware/dvisvgm/src/PdfSpecialHandler.cpp
-2022/01/18 | 2836 | dviware/dvisvgm/src/PdfSpecialHandler.hpp
-2022/01/18 | 2548 | dviware/dvisvgm/src/PDFToSVG.hpp
-2022/01/18 | 1913 | dviware/dvisvgm/src/PreScanDVIReader.cpp
-2022/01/18 | 1886 | dviware/dvisvgm/src/PreScanDVIReader.hpp
-2022/01/18 | 10029 | dviware/dvisvgm/src/Process.cpp
-2022/01/18 | 1815 | dviware/dvisvgm/src/Process.hpp
-2022/01/18 | 12876 | dviware/dvisvgm/src/psdefs.cpp
-2022/01/18 | 1806 | dviware/dvisvgm/src/PSFilter.hpp
-2022/04/20 | 17638 | dviware/dvisvgm/src/PSInterpreter.cpp
-2022/01/18 | 7037 | dviware/dvisvgm/src/PSInterpreter.hpp
-2022/02/22 | 6500 | dviware/dvisvgm/src/PSPattern.cpp
-2022/01/18 | 4059 | dviware/dvisvgm/src/PSPattern.hpp
-2022/01/18 | 4494 | dviware/dvisvgm/src/PSPreviewFilter.cpp
-2022/01/18 | 2605 | dviware/dvisvgm/src/PSPreviewFilter.hpp
-2022/08/01 | 49999 | dviware/dvisvgm/src/PsSpecialHandler.cpp
-2022/03/14 | 10025 | dviware/dvisvgm/src/PsSpecialHandler.hpp
-2022/01/18 | 7053 | dviware/dvisvgm/src/RangeMap.cpp
-2022/01/18 | 5180 | dviware/dvisvgm/src/RangeMap.hpp
-2022/01/18 | 2871 | dviware/dvisvgm/src/ShadingPatch.cpp
-2022/01/18 | 3150 | dviware/dvisvgm/src/ShadingPatch.hpp
-2022/01/18 | 4203 | dviware/dvisvgm/src/SignalHandler.cpp
-2022/01/18 | 2180 | dviware/dvisvgm/src/SignalHandler.hpp
-2022/01/18 | 4623 | dviware/dvisvgm/src/SourceInput.cpp
-2022/01/18 | 2388 | dviware/dvisvgm/src/SourceInput.hpp
-2022/01/18 | 4494 | dviware/dvisvgm/src/SpecialActions.hpp
-2022/01/18 | 2512 | dviware/dvisvgm/src/SpecialHandler.hpp
-2022/01/18 | 6511 | dviware/dvisvgm/src/SpecialManager.cpp
-2022/01/18 | 2958 | dviware/dvisvgm/src/SpecialManager.hpp
-2022/01/18 | 5021 | dviware/dvisvgm/src/StreamReader.cpp
-2022/01/18 | 2975 | dviware/dvisvgm/src/StreamReader.hpp
-2022/01/18 | 3768 | dviware/dvisvgm/src/StreamWriter.cpp
-2022/01/18 | 2196 | dviware/dvisvgm/src/StreamWriter.hpp
-2022/01/18 | 9256 | dviware/dvisvgm/src/Subfont.cpp
-2022/01/18 | 3521 | dviware/dvisvgm/src/Subfont.hpp
-2022/01/18 | 3676 | dviware/dvisvgm/src/SVGCharHandler.cpp
-2022/01/18 | 2024 | dviware/dvisvgm/src/SVGCharHandlerFactory.cpp
-2022/01/18 | 1645 | dviware/dvisvgm/src/SVGCharHandlerFactory.hpp
-2022/01/18 | 4471 | dviware/dvisvgm/src/SVGCharHandler.hpp
-2022/01/18 | 5814 | dviware/dvisvgm/src/SVGCharPathHandler.cpp
-2022/01/18 | 2455 | dviware/dvisvgm/src/SVGCharPathHandler.hpp
-2022/01/18 | 3959 | dviware/dvisvgm/src/SVGCharTspanTextHandler.cpp
-2022/01/18 | 2041 | dviware/dvisvgm/src/SVGCharTspanTextHandler.hpp
-2022/01/18 | 4511 | dviware/dvisvgm/src/SVGElement.cpp
-2022/08/12 | 2801 | dviware/dvisvgm/src/SVGElement.hpp
-2022/08/01 | 6475 | dviware/dvisvgm/src/SVGOutput.cpp
-2022/01/18 | 3729 | dviware/dvisvgm/src/SVGOutput.hpp
-2022/01/18 | 2182 | dviware/dvisvgm/src/SVGSingleCharTextHandler.cpp
-2022/01/18 | 1784 | dviware/dvisvgm/src/SVGSingleCharTextHandler.hpp
-2022/08/01 | 12104 | dviware/dvisvgm/src/SVGTree.cpp
-2022/01/18 | 4721 | dviware/dvisvgm/src/SVGTree.hpp
-2022/01/18 | 2005 | dviware/dvisvgm/src/System.cpp
-2022/01/18 | 1511 | dviware/dvisvgm/src/System.hpp
-2022/01/18 | 21248 | dviware/dvisvgm/src/TensorProductPatch.cpp
-2022/01/18 | 5274 | dviware/dvisvgm/src/TensorProductPatch.hpp
-2022/01/18 | 6113 | dviware/dvisvgm/src/Terminal.cpp
-2022/01/18 | 2284 | dviware/dvisvgm/src/Terminal.hpp
-2022/08/12 | 7073 | dviware/dvisvgm/src/TFM.cpp
-2022/01/18 | 3519 | dviware/dvisvgm/src/TFM.hpp
-2022/01/18 | 4761 | dviware/dvisvgm/src/ToUnicodeMap.cpp
-2022/01/18 | 1844 | dviware/dvisvgm/src/ToUnicodeMap.hpp
-2022/01/18 | 12940 | dviware/dvisvgm/src/TpicSpecialHandler.cpp
-2022/01/18 | 2613 | dviware/dvisvgm/src/TpicSpecialHandler.hpp
-2022/01/18 | 8354 | dviware/dvisvgm/src/TriangularPatch.cpp
-2022/01/18 | 3049 | dviware/dvisvgm/src/TriangularPatch.hpp
-2022/01/18 | 7108 | dviware/dvisvgm/src/TrueTypeFont.cpp
-2022/01/18 | 3275 | dviware/dvisvgm/src/TrueTypeFont.hpp
-2022/01/18 | 4167 | dviware/dvisvgm/src/TTFAutohint.cpp
-2022/01/18 | 2090 | dviware/dvisvgm/src/TTFAutohint.hpp
-2022/08/01 | 8000 | dviware/dvisvgm/src/Unicode.cpp
-2022/01/18 | 1860 | dviware/dvisvgm/src/Unicode.hpp
-2022/08/01 | 7159 | dviware/dvisvgm/src/utility.cpp
-2022/08/12 | 5762 | dviware/dvisvgm/src/utility.hpp
-2022/01/18 | 3439 | dviware/dvisvgm/src/VectorIterator.hpp
-2022/01/18 | 2949 | dviware/dvisvgm/src/VectorStream.hpp
-2022/01/18 | 1577 | dviware/dvisvgm/src/version.hpp.in
-2022/01/18 | 1911 | dviware/dvisvgm/src/VFActions.hpp
-2022/01/18 | 6570 | dviware/dvisvgm/src/VFReader.cpp
-2022/01/18 | 2443 | dviware/dvisvgm/src/VFReader.hpp
-2022/01/18 | 1604 | dviware/dvisvgm/src/windows.hpp
-2022/01/18 | 2237 | dviware/dvisvgm/src/XMLDocument.cpp
-2022/01/18 | 2053 | dviware/dvisvgm/src/XMLDocument.hpp
-2022/08/01 | 17453 | dviware/dvisvgm/src/XMLNode.cpp
-2022/07/14 | 9998 | dviware/dvisvgm/src/XMLNode.hpp
-2022/08/01 | 7036 | dviware/dvisvgm/src/XMLParser.cpp
-2022/07/14 | 2512 | dviware/dvisvgm/src/XMLParser.hpp
-2022/08/01 | 3034 | dviware/dvisvgm/src/XMLString.cpp
-2022/01/18 | 1887 | dviware/dvisvgm/src/XMLString.hpp
-2022/01/18 | 4735 | dviware/dvisvgm/src/XXHashFunction.hpp
-2022/01/18 | 5940 | dviware/dvisvgm/src/ZLibOutputStream.hpp
-2022/08/12 | 4879 | dviware/dvisvgm/test-driver
-2022/01/18 | 6075 | dviware/dvisvgm/tests/BezierTest.cpp
-2022/01/18 | 2704 | dviware/dvisvgm/tests/BitmapTest.cpp
-2022/02/22 | 6078 | dviware/dvisvgm/tests/BoundingBoxTest.cpp
-2022/01/18 | 3688 | dviware/dvisvgm/tests/CalculatorTest.cpp
-2022/01/18 | 1216 | dviware/dvisvgm/tests/check-conv
-2022/01/18 | 2974 | dviware/dvisvgm/tests/CMapManagerTest.cpp
-2022/01/18 | 4223 | dviware/dvisvgm/tests/CMapReaderTest.cpp
-2022/01/18 | 4980 | dviware/dvisvgm/tests/CMapTest.cpp
-2022/01/18 | 4702 | dviware/dvisvgm/tests/ColorSpecialTest.cpp
-2022/01/18 | 6942 | dviware/dvisvgm/tests/ColorTest.cpp
-2022/01/18 | 8439 | dviware/dvisvgm/tests/CommandLineTest.cpp
-2016/09/03 | 2508 | dviware/dvisvgm/tests/data/cidjmgr0-h.tfm
-2016/09/03 | 24244 | dviware/dvisvgm/tests/data/cmr10.600gf
-2017/11/23 | 35752 | dviware/dvisvgm/tests/data/cmr10.pfb
-2016/09/03 | 1296 | dviware/dvisvgm/tests/data/cmr10.tfm
-2016/09/03 | 18351 | dviware/dvisvgm/tests/data/dvipdfm_test.map
-2016/09/03 | 15594 | dviware/dvisvgm/tests/data/dvips_test.map
-2016/09/03 | 2072 | dviware/dvisvgm/tests/data/frktest.dvi
-2016/09/03 | 337419 | dviware/dvisvgm/tests/data/frktest-nf-cmp.svg
-2016/09/03 | 163979 | dviware/dvisvgm/tests/data/frktest-wf-cmp.svg
-2021/05/26 | 63012 | dviware/dvisvgm/tests/data/lmmono12-regular.otf
-2022/01/18 | 452 | dviware/dvisvgm/tests/data/Makefile.am
-2022/08/12 | 13517 | dviware/dvisvgm/tests/data/Makefile.in
-2016/09/03 | 1207 | dviware/dvisvgm/tests/data/ot1.cmap
-2016/09/03 | 1320 | dviware/dvisvgm/tests/data/sample.dvi
-2016/09/03 | 60654 | dviware/dvisvgm/tests/data/sample-nf-cmp.svg
-2016/09/03 | 17637 | dviware/dvisvgm/tests/data/sample.sfd
-2017/11/23 | 1016 | dviware/dvisvgm/tests/data/sample_v2.dvi
-2017/11/23 | 256 | dviware/dvisvgm/tests/data/sample_v3.dvi
-2016/09/03 | 46985 | dviware/dvisvgm/tests/data/sample-wf-cmp.svg
-2022/01/18 | 2512 | dviware/dvisvgm/tests/DependencyGraphTest.cpp
-2022/01/18 | 2773 | dviware/dvisvgm/tests/DirectoryTest.cpp
-2022/01/18 | 33210 | dviware/dvisvgm/tests/DVIReaderTest.cpp
-2022/07/14 | 13303 | dviware/dvisvgm/tests/DvisvgmSpecialTest.cpp
-2022/01/18 | 5850 | dviware/dvisvgm/tests/EllipticalArcTest.cpp
-2022/02/22 | 7489 | dviware/dvisvgm/tests/EmSpecialTest.cpp
-2022/01/18 | 3124 | dviware/dvisvgm/tests/FileFinderTest.cpp
-2022/01/18 | 4004 | dviware/dvisvgm/tests/FilePathTest.cpp
-2022/01/18 | 3899 | dviware/dvisvgm/tests/FileSystemTest.cpp
-2022/01/18 | 5070 | dviware/dvisvgm/tests/FontCacheTest.cpp
-2022/01/18 | 3875 | dviware/dvisvgm/tests/FontManagerTest.cpp
-2022/01/18 | 2850 | dviware/dvisvgm/tests/FontMapTest.cpp
-2022/01/18 | 2026 | dviware/dvisvgm/tests/genhashcheck.py
-2022/01/18 | 4645 | dviware/dvisvgm/tests/GFGlyphTracerTest.cpp
-2022/01/18 | 12993 | dviware/dvisvgm/tests/GFReaderTest.cpp
-2022/01/18 | 2083 | dviware/dvisvgm/tests/GhostscriptTest.cpp
-2022/07/14 | 6180 | dviware/dvisvgm/tests/GraphicsPathParserTest.cpp
-2022/01/18 | 7230 | dviware/dvisvgm/tests/GraphicsPathTest.cpp
-2021/12/02 | 14647 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-death-test.h
-2021/12/02 | 94331 | dviware/dvisvgm/tests/gtest/include/gtest/gtest.h
-2021/12/02 | 33126 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-matchers.h
-2021/12/02 | 8045 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-message.h
-2021/12/02 | 22588 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-param-test.h
-2021/12/02 | 14865 | dviware/dvisvgm/tests/gtest/include/gtest/gtest_pred_impl.h
-2021/12/02 | 35935 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-printers.h
-2021/12/02 | 2534 | dviware/dvisvgm/tests/gtest/include/gtest/gtest_prod.h
-2021/12/02 | 10112 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-spi.h
-2021/12/02 | 6868 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-test-part.h
-2021/12/02 | 15881 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-typed-test.h
-2021/12/02 | 1858 | dviware/dvisvgm/tests/gtest/include/gtest/internal/custom/gtest.h
-2021/12/02 | 1873 | dviware/dvisvgm/tests/gtest/include/gtest/internal/custom/gtest-port.h
-2021/12/02 | 2094 | dviware/dvisvgm/tests/gtest/include/gtest/internal/custom/gtest-printers.h
-2021/12/02 | 13451 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-death-test-internal.h
-2021/12/02 | 9780 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-filepath.h
-2021/12/02 | 61622 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-internal.h
-2019/03/09 | 8401 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-linked_ptr.h
-2019/03/09 | 218498 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-param-util-generated.h
-2021/12/02 | 35140 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-param-util.h
-2021/12/02 | 4157 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-port-arch.h
-2021/12/02 | 85257 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-port.h
-2021/12/02 | 7228 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-string.h
-2019/03/09 | 28605 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-tuple.h
-2021/12/02 | 6174 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-type-util.h
-2017/04/14 | 1475 | dviware/dvisvgm/tests/gtest/LICENSE
-2019/10/25 | 2160 | dviware/dvisvgm/tests/gtest/src/gtest-all.cc
-2021/12/02 | 248773 | dviware/dvisvgm/tests/gtest/src/gtest.cc
-2021/12/02 | 62109 | dviware/dvisvgm/tests/gtest/src/gtest-death-test.cc
-2021/12/02 | 14081 | dviware/dvisvgm/tests/gtest/src/gtest-filepath.cc
-2021/12/02 | 47373 | dviware/dvisvgm/tests/gtest/src/gtest-internal-inl.h
-2021/12/02 | 1968 | dviware/dvisvgm/tests/gtest/src/gtest_main.cc
-2021/12/02 | 3723 | dviware/dvisvgm/tests/gtest/src/gtest-matchers.cc
-2021/12/02 | 48099 | dviware/dvisvgm/tests/gtest/src/gtest-port.cc
-2021/12/02 | 17269 | dviware/dvisvgm/tests/gtest/src/gtest-printers.cc
-2021/12/02 | 4126 | dviware/dvisvgm/tests/gtest/src/gtest-test-part.cc
-2021/12/02 | 3780 | dviware/dvisvgm/tests/gtest/src/gtest-typed-test.cc
-2022/01/18 | 5568 | dviware/dvisvgm/tests/HashFunctionTest.cpp
-2022/01/18 | 4034 | dviware/dvisvgm/tests/JFMReaderTest.cpp
-2022/01/18 | 7803 | dviware/dvisvgm/tests/LengthTest.cpp
-2022/07/14 | 15918 | dviware/dvisvgm/tests/Makefile.am
-2022/08/12 | 259976 | dviware/dvisvgm/tests/Makefile.in
-2022/01/18 | 5795 | dviware/dvisvgm/tests/MapLineTest.cpp
-2022/01/18 | 8332 | dviware/dvisvgm/tests/MatrixTest.cpp
-2022/01/18 | 2315 | dviware/dvisvgm/tests/MessageExceptionTest.cpp
-2022/01/18 | 4799 | dviware/dvisvgm/tests/normalize.xsl
-2022/01/18 | 4640 | dviware/dvisvgm/tests/PageRagesTest.cpp
-2022/01/18 | 2398 | dviware/dvisvgm/tests/PageSizeTest.cpp
-2022/01/18 | 4193 | dviware/dvisvgm/tests/PairTest.cpp
-2022/02/22 | 4926 | dviware/dvisvgm/tests/PapersizeSpecialTest.cpp
-2022/01/18 | 8452 | dviware/dvisvgm/tests/PDFParserTest.cpp
-2022/01/18 | 9574 | dviware/dvisvgm/tests/PSInterpreterTest.cpp
-2022/01/18 | 6392 | dviware/dvisvgm/tests/RangeMapTest.cpp
-2022/01/18 | 3629 | dviware/dvisvgm/tests/ShadingPatchTest.cpp
-2022/01/18 | 3801 | dviware/dvisvgm/tests/SpecialManagerTest.cpp
-2022/01/18 | 5392 | dviware/dvisvgm/tests/SplittedCharInputBufferTest.cpp
-2022/01/18 | 7499 | dviware/dvisvgm/tests/StreamInputBufferTest.cpp
-2022/01/18 | 4178 | dviware/dvisvgm/tests/StreamReaderTest.cpp
-2022/01/18 | 3420 | dviware/dvisvgm/tests/StreamWriterTest.cpp
-2022/01/18 | 4460 | dviware/dvisvgm/tests/StringMatcherTest.cpp
-2022/01/18 | 3363 | dviware/dvisvgm/tests/SubfontTest.cpp
-2022/01/18 | 6521 | dviware/dvisvgm/tests/SVGOutputTest.cpp
-2022/01/18 | 12810 | dviware/dvisvgm/tests/TensorProductPatchTest.cpp
-2022/01/18 | 1999 | dviware/dvisvgm/tests/testmain.cpp
-2021/12/02 | 198 | dviware/dvisvgm/tests/testutil.hpp
-2022/01/18 | 3348 | dviware/dvisvgm/tests/TFMReaderTest.cpp
-2022/01/18 | 2501 | dviware/dvisvgm/tests/ToUnicodeMapTest.cpp
-2022/01/18 | 13772 | dviware/dvisvgm/tests/TpicSpecialTest.cpp
-2022/01/18 | 7066 | dviware/dvisvgm/tests/TriangularPatchTest.cpp
-2022/01/18 | 6084 | dviware/dvisvgm/tests/UnicodeTest.cpp
-2022/01/18 | 5194 | dviware/dvisvgm/tests/UtilityTest.cpp
-2022/01/18 | 3785 | dviware/dvisvgm/tests/VectorIteratorTest.cpp
-2022/01/18 | 2276 | dviware/dvisvgm/tests/VectorStreamTest.cpp
-2022/01/18 | 15061 | dviware/dvisvgm/tests/XMLNodeTest.cpp
-2022/01/18 | 3034 | dviware/dvisvgm/tests/XMLStringTest.cpp
-2022/08/13 | 3585864 | dviware/dvisvgm.zip
+2023/01/10 | 61535 | dviware/dvisvgm/aclocal.m4
+2023/01/10 | 6748 | dviware/dvisvgm/aminclude_static.am
+2022/12/08 | 5875 | dviware/dvisvgm/ar-lib
+2022/10/13 | 576 | dviware/dvisvgm/AUTHORS
+2022/12/08 | 7400 | dviware/dvisvgm/compile
+2022/12/08 | 49797 | dviware/dvisvgm/config.guess
+2023/01/10 | 4611 | dviware/dvisvgm/config.h.in
+2022/12/08 | 35409 | dviware/dvisvgm/config.sub
+2023/01/10 | 707079 | dviware/dvisvgm/configure
+2023/01/10 | 8424 | dviware/dvisvgm/configure.ac
+2022/10/13 | 35147 | dviware/dvisvgm/COPYING
+2022/12/08 | 23568 | dviware/dvisvgm/depcomp
+2023/01/10 | 718 | dviware/dvisvgm/doc/conf-dblatex-man.xsl
+2023/01/10 | 2618 | dviware/dvisvgm/doc/conf-dblatex-pdf.xsl
+2023/01/10 | 72193 | dviware/dvisvgm/doc/dvisvgm.1
+2023/01/10 | 65338 | dviware/dvisvgm/doc/dvisvgm.txt.in
+2022/10/13 | 840 | dviware/dvisvgm/doc/generate-dvisvgm-sty.xsl
+2023/01/10 | 3692 | dviware/dvisvgm/doc/Makefile.am
+2023/01/10 | 21573 | dviware/dvisvgm/doc/Makefile.in
+2023/01/10 | 1041 | dviware/dvisvgm/doc/tweak-dblatex-pdf.xsl
+2022/10/13 | 717 | dviware/dvisvgm/doc/tweak-dblatex-tex.py
+2023/01/10 | 1698 | dviware/dvisvgm/doc/tweak-db-refentry.xsl
+2022/10/13 | 9236 | dviware/dvisvgm/INSTALL
+2022/12/08 | 15358 | dviware/dvisvgm/install-sh
+2023/01/10 | 25426 | dviware/dvisvgm/libs/boost/boost-vectorstream.hpp
+2023/01/10 | 1338 | dviware/dvisvgm/libs/boost/LICENSE.txt
+2023/01/10 | 89 | dviware/dvisvgm/libs/boost/Makefile.am
+2023/01/10 | 15803 | dviware/dvisvgm/libs/boost/Makefile.in
+2023/01/10 | 479 | dviware/dvisvgm/libs/boost/vectorstream.hpp
+2022/10/13 | 623 | dviware/dvisvgm/libs/brotli/common/constants.c
+2022/10/13 | 8012 | dviware/dvisvgm/libs/brotli/common/constants.h
+2022/10/13 | 7967 | dviware/dvisvgm/libs/brotli/common/context.c
+2022/10/13 | 4666 | dviware/dvisvgm/libs/brotli/common/context.h
+2022/10/13 | 471957 | dviware/dvisvgm/libs/brotli/common/dictionary.c
+2022/10/13 | 1951 | dviware/dvisvgm/libs/brotli/common/dictionary.h
+2022/10/13 | 514 | dviware/dvisvgm/libs/brotli/common/platform.c
+2022/10/13 | 21522 | dviware/dvisvgm/libs/brotli/common/platform.h
+2022/10/13 | 10679 | dviware/dvisvgm/libs/brotli/common/transform.c
+2022/10/13 | 3209 | dviware/dvisvgm/libs/brotli/common/transform.h
+2022/10/13 | 871 | dviware/dvisvgm/libs/brotli/common/version.h
+2022/10/13 | 4001 | dviware/dvisvgm/libs/brotli/enc/backward_references.c
+2022/10/13 | 1306 | dviware/dvisvgm/libs/brotli/enc/backward_references.h
+2022/10/13 | 32486 | dviware/dvisvgm/libs/brotli/enc/backward_references_hq.c
+2022/10/13 | 3875 | dviware/dvisvgm/libs/brotli/enc/backward_references_hq.h
+2022/10/13 | 6914 | dviware/dvisvgm/libs/brotli/enc/backward_references_inc.h
+2022/10/13 | 824 | dviware/dvisvgm/libs/brotli/enc/bit_cost.c
+2022/10/13 | 1680 | dviware/dvisvgm/libs/brotli/enc/bit_cost.h
+2022/10/13 | 4109 | dviware/dvisvgm/libs/brotli/enc/bit_cost_inc.h
+2022/10/13 | 1137 | dviware/dvisvgm/libs/brotli/enc/block_encoder_inc.h
+2022/10/13 | 6260 | dviware/dvisvgm/libs/brotli/enc/block_splitter.c
+2022/10/13 | 1679 | dviware/dvisvgm/libs/brotli/enc/block_splitter.h
+2022/10/13 | 16811 | dviware/dvisvgm/libs/brotli/enc/block_splitter_inc.h
+2022/10/13 | 49657 | dviware/dvisvgm/libs/brotli/enc/brotli_bit_stream.c
+2022/10/13 | 3371 | dviware/dvisvgm/libs/brotli/enc/brotli_bit_stream.h
+2022/10/13 | 1500 | dviware/dvisvgm/libs/brotli/enc/cluster.c
+2022/10/13 | 1033 | dviware/dvisvgm/libs/brotli/enc/cluster.h
+2022/10/13 | 11560 | dviware/dvisvgm/libs/brotli/enc/cluster_inc.h
+2022/10/13 | 1021 | dviware/dvisvgm/libs/brotli/enc/command.c
+2022/10/13 | 6897 | dviware/dvisvgm/libs/brotli/enc/command.h
+2022/10/13 | 32374 | dviware/dvisvgm/libs/brotli/enc/compress_fragment.c
+2022/10/13 | 2825 | dviware/dvisvgm/libs/brotli/enc/compress_fragment.h
+2022/10/13 | 25772 | dviware/dvisvgm/libs/brotli/enc/compress_fragment_two_pass.c
+2022/10/13 | 2407 | dviware/dvisvgm/libs/brotli/enc/compress_fragment_two_pass.h
+2022/10/13 | 147104 | dviware/dvisvgm/libs/brotli/enc/dictionary_hash.c
+2022/10/13 | 646 | dviware/dvisvgm/libs/brotli/enc/dictionary_hash.h
+2022/10/13 | 73998 | dviware/dvisvgm/libs/brotli/enc/encode.c
+2022/10/13 | 949 | dviware/dvisvgm/libs/brotli/enc/encoder_dict.c
+2022/10/13 | 1155 | dviware/dvisvgm/libs/brotli/enc/encoder_dict.h
+2022/10/13 | 14585 | dviware/dvisvgm/libs/brotli/enc/entropy_encode.c
+2022/10/13 | 4056 | dviware/dvisvgm/libs/brotli/enc/entropy_encode.h
+2022/10/13 | 32900 | dviware/dvisvgm/libs/brotli/enc/entropy_encode_static.h
+2022/10/13 | 6026 | dviware/dvisvgm/libs/brotli/enc/fast_log.c
+2022/10/13 | 1649 | dviware/dvisvgm/libs/brotli/enc/fast_log.h
+2022/10/13 | 2533 | dviware/dvisvgm/libs/brotli/enc/find_match_length.h
+2022/10/13 | 4415 | dviware/dvisvgm/libs/brotli/enc/hash_composite_inc.h
+2022/10/13 | 10861 | dviware/dvisvgm/libs/brotli/enc/hash_forgetful_chain_inc.h
+2022/10/13 | 14944 | dviware/dvisvgm/libs/brotli/enc/hash.h
+2022/10/13 | 10481 | dviware/dvisvgm/libs/brotli/enc/hash_longest_match64_inc.h
+2022/10/13 | 10054 | dviware/dvisvgm/libs/brotli/enc/hash_longest_match_inc.h
+2022/10/13 | 9310 | dviware/dvisvgm/libs/brotli/enc/hash_longest_match_quickly_inc.h
+2022/10/13 | 7196 | dviware/dvisvgm/libs/brotli/enc/hash_rolling_inc.h
+2022/10/13 | 13035 | dviware/dvisvgm/libs/brotli/enc/hash_to_binary_tree_inc.h
+2022/10/13 | 3227 | dviware/dvisvgm/libs/brotli/enc/histogram.c
+2022/10/13 | 1884 | dviware/dvisvgm/libs/brotli/enc/histogram.h
+2022/10/13 | 1401 | dviware/dvisvgm/libs/brotli/enc/histogram_inc.h
+2022/10/13 | 5614 | dviware/dvisvgm/libs/brotli/enc/literal_cost.c
+2022/10/13 | 892 | dviware/dvisvgm/libs/brotli/enc/literal_cost.h
+2022/10/13 | 4887 | dviware/dvisvgm/libs/brotli/enc/memory.c
+2022/10/13 | 3595 | dviware/dvisvgm/libs/brotli/enc/memory.h
+2022/10/13 | 26199 | dviware/dvisvgm/libs/brotli/enc/metablock.c
+2022/10/13 | 3994 | dviware/dvisvgm/libs/brotli/enc/metablock.h
+2022/10/13 | 7557 | dviware/dvisvgm/libs/brotli/enc/metablock_inc.h
+2022/10/13 | 1138 | dviware/dvisvgm/libs/brotli/enc/params.h
+2022/10/13 | 1970 | dviware/dvisvgm/libs/brotli/enc/prefix.h
+2022/10/13 | 6165 | dviware/dvisvgm/libs/brotli/enc/quality.h
+2022/10/13 | 6012 | dviware/dvisvgm/libs/brotli/enc/ringbuffer.h
+2022/10/13 | 19012 | dviware/dvisvgm/libs/brotli/enc/static_dict.c
+2022/10/13 | 1276 | dviware/dvisvgm/libs/brotli/enc/static_dict.h
+2022/10/13 | 469658 | dviware/dvisvgm/libs/brotli/enc/static_dict_lut.h
+2022/10/13 | 2271 | dviware/dvisvgm/libs/brotli/enc/utf8_util.c
+2022/10/13 | 904 | dviware/dvisvgm/libs/brotli/enc/utf8_util.h
+2022/10/13 | 2861 | dviware/dvisvgm/libs/brotli/enc/write_bits.h
+2022/10/13 | 14323 | dviware/dvisvgm/libs/brotli/include/brotli/decode.h
+2022/10/13 | 17361 | dviware/dvisvgm/libs/brotli/include/brotli/encode.h
+2022/10/13 | 10712 | dviware/dvisvgm/libs/brotli/include/brotli/port.h
+2022/10/13 | 2615 | dviware/dvisvgm/libs/brotli/include/brotli/types.h
+2022/10/13 | 1084 | dviware/dvisvgm/libs/brotli/LICENSE
+2022/12/14 | 1975 | dviware/dvisvgm/libs/brotli/Makefile.am
+2023/01/10 | 33531 | dviware/dvisvgm/libs/brotli/Makefile.in
+2022/10/13 | 132235 | dviware/dvisvgm/libs/clipper/clipper.cpp
+2022/10/13 | 15879 | dviware/dvisvgm/libs/clipper/clipper.hpp
+2022/10/13 | 1374 | dviware/dvisvgm/libs/clipper/License.txt
+2022/12/14 | 179 | dviware/dvisvgm/libs/clipper/Makefile.am
+2023/01/10 | 20513 | dviware/dvisvgm/libs/clipper/Makefile.in
+2022/12/06 | 467 | dviware/dvisvgm/libs/defs.am
+2023/01/10 | 239 | dviware/dvisvgm/libs/Makefile.am
+2023/01/10 | 20130 | dviware/dvisvgm/libs/Makefile.in
+2022/12/14 | 149 | dviware/dvisvgm/libs/md5/Makefile.am
+2023/01/10 | 19698 | dviware/dvisvgm/libs/md5/Makefile.in
+2022/10/13 | 8743 | dviware/dvisvgm/libs/md5/md5.c
+2022/10/13 | 1426 | dviware/dvisvgm/libs/md5/md5.h
+2022/10/13 | 2146 | dviware/dvisvgm/libs/potrace/auxiliary.h
+2022/10/13 | 6450 | dviware/dvisvgm/libs/potrace/bitmap.h
+2022/10/13 | 90 | dviware/dvisvgm/libs/potrace/config.h
+2022/10/13 | 2693 | dviware/dvisvgm/libs/potrace/curve.c
+2022/10/13 | 2782 | dviware/dvisvgm/libs/potrace/curve.h
+2022/10/13 | 14605 | dviware/dvisvgm/libs/potrace/decompose.c
+2022/10/13 | 442 | dviware/dvisvgm/libs/potrace/decompose.h
+2022/10/13 | 11118 | dviware/dvisvgm/libs/potrace/lists.h
+2022/12/14 | 308 | dviware/dvisvgm/libs/potrace/Makefile.am
+2023/01/10 | 20959 | dviware/dvisvgm/libs/potrace/Makefile.in
+2022/10/13 | 3122 | dviware/dvisvgm/libs/potrace/potracelib.c
+2022/10/13 | 4573 | dviware/dvisvgm/libs/potrace/potracelib.h
+2022/10/13 | 2654 | dviware/dvisvgm/libs/potrace/progress.h
+2022/10/13 | 32392 | dviware/dvisvgm/libs/potrace/trace.c
+2022/10/13 | 397 | dviware/dvisvgm/libs/potrace/trace.h
+2022/10/13 | 102582 | dviware/dvisvgm/libs/variant/include/mpark/variant.hpp
+2022/10/13 | 1338 | dviware/dvisvgm/libs/variant/LICENSE.md
+2022/10/13 | 71 | dviware/dvisvgm/libs/variant/Makefile.am
+2023/01/10 | 15791 | dviware/dvisvgm/libs/variant/Makefile.in
+2022/10/13 | 1171 | dviware/dvisvgm/libs/woff2/include/woff2/decode.h
+2022/10/13 | 1434 | dviware/dvisvgm/libs/woff2/include/woff2/encode.h
+2022/10/13 | 2304 | dviware/dvisvgm/libs/woff2/include/woff2/output.h
+2022/10/13 | 131 | dviware/dvisvgm/libs/woff2/include/woff2/version.h
+2022/10/13 | 11358 | dviware/dvisvgm/libs/woff2/LICENSE
+2022/12/14 | 679 | dviware/dvisvgm/libs/woff2/Makefile.am
+2023/01/10 | 24838 | dviware/dvisvgm/libs/woff2/Makefile.in
+2022/10/13 | 4185 | dviware/dvisvgm/libs/woff2/src/buffer.h
+2022/10/13 | 12155 | dviware/dvisvgm/libs/woff2/src/font.cc
+2022/10/13 | 3509 | dviware/dvisvgm/libs/woff2/src/font.h
+2022/10/13 | 11642 | dviware/dvisvgm/libs/woff2/src/glyph.cc
+2022/10/13 | 1875 | dviware/dvisvgm/libs/woff2/src/glyph.h
+2022/10/13 | 9004 | dviware/dvisvgm/libs/woff2/src/normalize.cc
+2022/10/13 | 1301 | dviware/dvisvgm/libs/woff2/src/normalize.h
+2022/10/13 | 1674 | dviware/dvisvgm/libs/woff2/src/port.h
+2022/10/13 | 587 | dviware/dvisvgm/libs/woff2/src/round.h
+2022/10/13 | 1864 | dviware/dvisvgm/libs/woff2/src/store_bytes.h
+2022/10/13 | 2558 | dviware/dvisvgm/libs/woff2/src/table_tags.cc
+2022/10/13 | 807 | dviware/dvisvgm/libs/woff2/src/table_tags.h
+2022/10/13 | 13696 | dviware/dvisvgm/libs/woff2/src/transform.cc
+2022/10/13 | 768 | dviware/dvisvgm/libs/woff2/src/transform.h
+2022/10/13 | 3176 | dviware/dvisvgm/libs/woff2/src/variable_length.cc
+2022/10/13 | 811 | dviware/dvisvgm/libs/woff2/src/variable_length.h
+2022/10/13 | 1547 | dviware/dvisvgm/libs/woff2/src/woff2_common.cc
+2022/10/13 | 1439 | dviware/dvisvgm/libs/woff2/src/woff2_common.h
+2022/10/13 | 15414 | dviware/dvisvgm/libs/woff2/src/woff2_enc.cc
+2022/10/13 | 1543 | dviware/dvisvgm/libs/woff2/src/woff2_out.cc
+2022/12/14 | 178 | dviware/dvisvgm/libs/xxHash/Makefile.am
+2023/01/10 | 19806 | dviware/dvisvgm/libs/xxHash/Makefile.in
+2022/10/13 | 2394 | dviware/dvisvgm/libs/xxHash/xxh3.h
+2022/10/13 | 1855 | dviware/dvisvgm/libs/xxHash/xxhash.c
+2022/10/13 | 209623 | dviware/dvisvgm/libs/xxHash/xxhash.h
+2022/12/08 | 332808 | dviware/dvisvgm/ltmain.sh
+2022/12/14 | 914 | dviware/dvisvgm/m4/ax_ac_append_to_file.m4
+2022/12/14 | 905 | dviware/dvisvgm/m4/ax_ac_print_to_file.m4
+2022/12/14 | 853 | dviware/dvisvgm/m4/ax_add_am_macro_static.m4
+2022/12/14 | 1109 | dviware/dvisvgm/m4/ax_am_macros_static.m4
+2022/12/14 | 2104 | dviware/dvisvgm/m4/ax_check_compile_flag.m4
+2022/12/14 | 12174 | dviware/dvisvgm/m4/ax_code_coverage.m4
+2022/12/14 | 21126 | dviware/dvisvgm/m4/ax_cxx_compile_stdcxx.m4
+2022/12/14 | 763 | dviware/dvisvgm/m4/ax_file_escapes.m4
+2023/01/10 | 5862 | dviware/dvisvgm/m4/ax_gcc_builtin.m4
+2022/12/08 | 307188 | dviware/dvisvgm/m4/libtool.m4
+2022/12/08 | 6151 | dviware/dvisvgm/m4/lt~obsolete.m4
+2022/12/08 | 14525 | dviware/dvisvgm/m4/ltoptions.m4
+2022/12/08 | 4395 | dviware/dvisvgm/m4/ltsugar.m4
+2022/12/08 | 714 | dviware/dvisvgm/m4/ltversion.m4
+2023/01/10 | 784 | dviware/dvisvgm/Makefile.am
+2023/01/10 | 36547 | dviware/dvisvgm/Makefile.in
+2022/12/08 | 6878 | dviware/dvisvgm/missing
+2023/01/10 | 41393 | dviware/dvisvgm/NEWS
+2023/01/10 | 5835 | dviware/dvisvgm/README
+2023/01/10 | 158418 | dviware/dvisvgm/src/AGLTable.hpp
+2023/01/10 | 15777 | dviware/dvisvgm/src/BasicDVIReader.cpp
+2023/01/10 | 5248 | dviware/dvisvgm/src/BasicDVIReader.hpp
+2023/01/10 | 14569 | dviware/dvisvgm/src/Bezier.cpp
+2023/01/10 | 3396 | dviware/dvisvgm/src/Bezier.hpp
+2023/01/10 | 3164 | dviware/dvisvgm/src/BgColorSpecialHandler.cpp
+2023/01/10 | 2228 | dviware/dvisvgm/src/BgColorSpecialHandler.hpp
+2023/01/10 | 4889 | dviware/dvisvgm/src/Bitmap.cpp
+2023/01/10 | 4166 | dviware/dvisvgm/src/Bitmap.hpp
+2023/01/10 | 8299 | dviware/dvisvgm/src/BoundingBox.cpp
+2023/01/10 | 3970 | dviware/dvisvgm/src/BoundingBox.hpp
+2023/01/10 | 6779 | dviware/dvisvgm/src/Calculator.cpp
+2023/01/10 | 2365 | dviware/dvisvgm/src/Calculator.hpp
+2023/01/10 | 2000 | dviware/dvisvgm/src/Character.hpp
+2023/01/10 | 2040 | dviware/dvisvgm/src/CharMapID.cpp
+2023/01/10 | 2541 | dviware/dvisvgm/src/CharMapID.hpp
+2023/01/10 | 8309 | dviware/dvisvgm/src/CLCommandLine.cpp
+2023/01/10 | 2891 | dviware/dvisvgm/src/CLCommandLine.hpp
+2023/01/10 | 6531 | dviware/dvisvgm/src/CLOption.hpp
+2023/01/10 | 3537 | dviware/dvisvgm/src/CMap.cpp
+2023/01/10 | 4475 | dviware/dvisvgm/src/CMap.hpp
+2023/01/10 | 5299 | dviware/dvisvgm/src/CMapManager.cpp
+2023/01/10 | 2221 | dviware/dvisvgm/src/CMapManager.hpp
+2023/01/10 | 8332 | dviware/dvisvgm/src/CMapReader.cpp
+2023/01/10 | 3080 | dviware/dvisvgm/src/CMapReader.hpp
+2023/01/10 | 19513 | dviware/dvisvgm/src/Color.cpp
+2023/01/10 | 4778 | dviware/dvisvgm/src/Color.hpp
+2023/01/10 | 4118 | dviware/dvisvgm/src/ColorSpecialHandler.cpp
+2023/01/10 | 2118 | dviware/dvisvgm/src/ColorSpecialHandler.hpp
+2023/01/10 | 7920 | dviware/dvisvgm/src/CommandLine.hpp
+2023/01/10 | 3410 | dviware/dvisvgm/src/Directory.cpp
+2023/01/10 | 2053 | dviware/dvisvgm/src/Directory.hpp
+2023/01/10 | 2290 | dviware/dvisvgm/src/DLLoader.cpp
+2023/01/10 | 2539 | dviware/dvisvgm/src/DLLoader.hpp
+2023/01/10 | 2334 | dviware/dvisvgm/src/DVIActions.hpp
+2023/01/10 | 25945 | dviware/dvisvgm/src/DVIReader.cpp
+2023/01/10 | 8202 | dviware/dvisvgm/src/DVIReader.hpp
+2023/01/10 | 18502 | dviware/dvisvgm/src/dvisvgm.cpp
+2023/01/10 | 15928 | dviware/dvisvgm/src/DvisvgmSpecialHandler.cpp
+2023/01/10 | 4629 | dviware/dvisvgm/src/DvisvgmSpecialHandler.hpp
+2023/01/10 | 12178 | dviware/dvisvgm/src/DVIToSVGActions.cpp
+2023/01/10 | 4798 | dviware/dvisvgm/src/DVIToSVGActions.hpp
+2023/01/10 | 21204 | dviware/dvisvgm/src/DVIToSVG.cpp
+2023/01/10 | 5630 | dviware/dvisvgm/src/DVIToSVG.hpp
+2023/01/10 | 10966 | dviware/dvisvgm/src/EllipticalArc.cpp
+2023/01/10 | 3105 | dviware/dvisvgm/src/EllipticalArc.hpp
+2023/01/10 | 9740 | dviware/dvisvgm/src/EmSpecialHandler.cpp
+2023/01/10 | 2930 | dviware/dvisvgm/src/EmSpecialHandler.hpp
+2023/01/10 | 3935 | dviware/dvisvgm/src/EncFile.cpp
+2023/01/10 | 2116 | dviware/dvisvgm/src/EncFile.hpp
+2023/01/10 | 3776 | dviware/dvisvgm/src/EPSFile.cpp
+2023/01/10 | 2051 | dviware/dvisvgm/src/EPSFile.hpp
+2023/01/10 | 2098 | dviware/dvisvgm/src/EPSToSVG.hpp
+2023/01/10 | 10261 | dviware/dvisvgm/src/FileFinder.cpp
+2023/01/10 | 2586 | dviware/dvisvgm/src/FileFinder.hpp
+2023/01/10 | 10423 | dviware/dvisvgm/src/FilePath.cpp
+2023/01/10 | 3434 | dviware/dvisvgm/src/FilePath.hpp
+2023/01/10 | 11840 | dviware/dvisvgm/src/FileSystem.cpp
+2023/01/10 | 3267 | dviware/dvisvgm/src/FileSystem.hpp
+2023/01/10 | 1821 | dviware/dvisvgm/src/FixWord.hpp
+2023/01/10 | 12504 | dviware/dvisvgm/src/FontCache.cpp
+2023/01/10 | 2857 | dviware/dvisvgm/src/FontCache.hpp
+2023/01/10 | 23462 | dviware/dvisvgm/src/Font.cpp
+2023/01/10 | 3488 | dviware/dvisvgm/src/FontEncoding.cpp
+2023/01/10 | 2795 | dviware/dvisvgm/src/FontEncoding.hpp
+2023/01/10 | 15229 | dviware/dvisvgm/src/FontEngine.cpp
+2023/01/10 | 3495 | dviware/dvisvgm/src/FontEngine.hpp
+2023/01/10 | 19615 | dviware/dvisvgm/src/Font.hpp
+2023/01/10 | 14419 | dviware/dvisvgm/src/FontManager.cpp
+2023/01/10 | 4590 | dviware/dvisvgm/src/FontManager.hpp
+2023/01/10 | 9316 | dviware/dvisvgm/src/FontMap.cpp
+2023/01/10 | 2909 | dviware/dvisvgm/src/FontMap.hpp
+2023/01/10 | 1984 | dviware/dvisvgm/src/FontMetrics.cpp
+2023/01/10 | 3441 | dviware/dvisvgm/src/FontMetrics.hpp
+2023/01/10 | 3187 | dviware/dvisvgm/src/fonts/Base14Fonts.cpp
+2023/01/10 | 1633 | dviware/dvisvgm/src/fonts/Base14Fonts.hpp
+2023/01/10 | 102294 | dviware/dvisvgm/src/fonts/Dingbats.cff.cpp
+2023/01/10 | 524 | dviware/dvisvgm/src/fonts/Makefile.am
+2023/01/10 | 24685 | dviware/dvisvgm/src/fonts/Makefile.in
+2023/01/10 | 213800 | dviware/dvisvgm/src/fonts/NimbusMonoPS-Bold.cff.cpp
+2023/01/10 | 242499 | dviware/dvisvgm/src/fonts/NimbusMonoPS-BoldItalic.cff.cpp
+2023/01/10 | 214886 | dviware/dvisvgm/src/fonts/NimbusMonoPS-Italic.cff.cpp
+2023/01/10 | 188302 | dviware/dvisvgm/src/fonts/NimbusMonoPS-Regular.cff.cpp
+2023/01/10 | 207150 | dviware/dvisvgm/src/fonts/NimbusRoman-Bold.cff.cpp
+2023/01/10 | 227243 | dviware/dvisvgm/src/fonts/NimbusRoman-BoldItalic.cff.cpp
+2023/01/10 | 229696 | dviware/dvisvgm/src/fonts/NimbusRoman-Italic.cff.cpp
+2023/01/10 | 198872 | dviware/dvisvgm/src/fonts/NimbusRoman-Regular.cff.cpp
+2023/01/10 | 139378 | dviware/dvisvgm/src/fonts/NimbusSans-Bold.cff.cpp
+2023/01/10 | 161488 | dviware/dvisvgm/src/fonts/NimbusSans-BoldItalic.cff.cpp
+2023/01/10 | 163464 | dviware/dvisvgm/src/fonts/NimbusSans-Italic.cff.cpp
+2023/01/10 | 135805 | dviware/dvisvgm/src/fonts/NimbusSans-Regular.cff.cpp
+2023/01/10 | 66397 | dviware/dvisvgm/src/fonts/StandardSymbolsPS.cff.cpp
+2023/01/10 | 1805 | dviware/dvisvgm/src/FontStyle.hpp
+2023/01/10 | 7138 | dviware/dvisvgm/src/FontWriter.cpp
+2023/01/10 | 2817 | dviware/dvisvgm/src/FontWriter.hpp
+2023/01/10 | 2757 | dviware/dvisvgm/src/GFGlyphTracer.cpp
+2023/01/10 | 2583 | dviware/dvisvgm/src/GFGlyphTracer.hpp
+2023/01/10 | 10879 | dviware/dvisvgm/src/GFReader.cpp
+2023/01/10 | 3967 | dviware/dvisvgm/src/GFReader.hpp
+2023/01/10 | 3610 | dviware/dvisvgm/src/GFTracer.cpp
+2023/01/10 | 2107 | dviware/dvisvgm/src/GFTracer.hpp
+2023/01/10 | 11978 | dviware/dvisvgm/src/Ghostscript.cpp
+2023/01/10 | 4056 | dviware/dvisvgm/src/Ghostscript.hpp
+2023/01/10 | 1537 | dviware/dvisvgm/src/Glyph.hpp
+2023/01/10 | 2941 | dviware/dvisvgm/src/GlyphTracerMessages.hpp
+2023/01/10 | 27853 | dviware/dvisvgm/src/GraphicsPath.hpp
+2023/01/10 | 9726 | dviware/dvisvgm/src/GraphicsPathParser.hpp
+2023/01/10 | 3609 | dviware/dvisvgm/src/HashFunction.cpp
+2023/01/10 | 2548 | dviware/dvisvgm/src/HashFunction.hpp
+2023/01/10 | 3623 | dviware/dvisvgm/src/HtmlSpecialHandler.cpp
+2023/01/10 | 2214 | dviware/dvisvgm/src/HtmlSpecialHandler.hpp
+2023/01/10 | 9663 | dviware/dvisvgm/src/HyperlinkManager.cpp
+2023/01/10 | 3982 | dviware/dvisvgm/src/HyperlinkManager.hpp
+2022/10/13 | 10028 | dviware/dvisvgm/src/iapi.h
+2023/01/10 | 4595 | dviware/dvisvgm/src/ierrors.h
+2023/01/10 | 7118 | dviware/dvisvgm/src/ImageToSVG.cpp
+2023/01/10 | 4659 | dviware/dvisvgm/src/ImageToSVG.hpp
+2023/01/10 | 3788 | dviware/dvisvgm/src/InputBuffer.cpp
+2023/01/10 | 5059 | dviware/dvisvgm/src/InputBuffer.hpp
+2023/01/10 | 12240 | dviware/dvisvgm/src/InputReader.cpp
+2023/01/10 | 4184 | dviware/dvisvgm/src/InputReader.hpp
+2023/01/10 | 4491 | dviware/dvisvgm/src/JFM.cpp
+2023/01/10 | 2166 | dviware/dvisvgm/src/JFM.hpp
+2023/01/10 | 4728 | dviware/dvisvgm/src/Length.cpp
+2023/01/10 | 4138 | dviware/dvisvgm/src/Length.hpp
+2023/01/10 | 2014 | dviware/dvisvgm/src/macros.hpp
+2023/01/10 | 7119 | dviware/dvisvgm/src/Makefile.am
+2023/01/10 | 56349 | dviware/dvisvgm/src/Makefile.in
+2023/01/10 | 8515 | dviware/dvisvgm/src/MapLine.cpp
+2023/01/10 | 3089 | dviware/dvisvgm/src/MapLine.hpp
+2023/01/10 | 17194 | dviware/dvisvgm/src/Matrix.cpp
+2023/01/10 | 4227 | dviware/dvisvgm/src/Matrix.hpp
+2023/01/10 | 2704 | dviware/dvisvgm/src/MD5HashFunction.hpp
+2023/01/10 | 7509 | dviware/dvisvgm/src/Message.cpp
+2023/01/10 | 1779 | dviware/dvisvgm/src/MessageException.hpp
+2023/01/10 | 3541 | dviware/dvisvgm/src/Message.hpp
+2023/01/10 | 5812 | dviware/dvisvgm/src/MetafontWrapper.cpp
+2023/01/10 | 1876 | dviware/dvisvgm/src/MetafontWrapper.hpp
+2023/01/10 | 3799 | dviware/dvisvgm/src/MiKTeXCom.cpp
+2023/01/10 | 1894 | dviware/dvisvgm/src/MiKTeXCom.hpp
+2023/01/10 | 2062 | dviware/dvisvgm/src/NoPsSpecialHandler.cpp
+2023/01/10 | 1999 | dviware/dvisvgm/src/NoPsSpecialHandler.hpp
+2023/01/10 | 3927 | dviware/dvisvgm/src/NumericRanges.hpp
+2023/01/10 | 3603 | dviware/dvisvgm/src/Opacity.cpp
+2023/01/10 | 3832 | dviware/dvisvgm/src/Opacity.hpp
+2023/01/10 | 6685 | dviware/dvisvgm/src/optimizer/AttributeExtractor.cpp
+2023/01/10 | 2656 | dviware/dvisvgm/src/optimizer/AttributeExtractor.hpp
+2023/01/10 | 3970 | dviware/dvisvgm/src/optimizer/ClipPathReassigner.cpp
+2023/01/10 | 1979 | dviware/dvisvgm/src/optimizer/ClipPathReassigner.hpp
+2023/01/10 | 4213 | dviware/dvisvgm/src/optimizer/DependencyGraph.hpp
+2023/01/10 | 6760 | dviware/dvisvgm/src/optimizer/GroupCollapser.cpp
+2023/01/10 | 2181 | dviware/dvisvgm/src/optimizer/GroupCollapser.hpp
+2022/10/13 | 632 | dviware/dvisvgm/src/optimizer/Makefile.am
+2023/01/10 | 23379 | dviware/dvisvgm/src/optimizer/Makefile.in
+2023/01/10 | 1642 | dviware/dvisvgm/src/optimizer/OptimizerModule.hpp
+2023/01/10 | 3192 | dviware/dvisvgm/src/optimizer/RedundantElementRemover.cpp
+2023/01/10 | 1644 | dviware/dvisvgm/src/optimizer/RedundantElementRemover.hpp
+2023/01/10 | 4738 | dviware/dvisvgm/src/optimizer/SVGOptimizer.cpp
+2023/01/10 | 2297 | dviware/dvisvgm/src/optimizer/SVGOptimizer.hpp
+2023/01/10 | 4160 | dviware/dvisvgm/src/optimizer/TextSimplifier.cpp
+2023/01/10 | 1699 | dviware/dvisvgm/src/optimizer/TextSimplifier.hpp
+2023/01/10 | 6846 | dviware/dvisvgm/src/optimizer/TransformSimplifier.cpp
+2023/01/10 | 1856 | dviware/dvisvgm/src/optimizer/TransformSimplifier.hpp
+2023/01/10 | 2013 | dviware/dvisvgm/src/optimizer/WSNodeRemover.cpp
+2023/01/10 | 1687 | dviware/dvisvgm/src/optimizer/WSNodeRemover.hpp
+2023/01/10 | 2067 | dviware/dvisvgm/src/options.dtd
+2023/01/10 | 9254 | dviware/dvisvgm/src/options.xml
+2023/01/10 | 3731 | dviware/dvisvgm/src/PageRanges.cpp
+2023/01/10 | 1729 | dviware/dvisvgm/src/PageRanges.hpp
+2023/01/10 | 5330 | dviware/dvisvgm/src/PageSize.cpp
+2023/01/10 | 2092 | dviware/dvisvgm/src/PageSize.hpp
+2023/01/10 | 4232 | dviware/dvisvgm/src/Pair.hpp
+2023/01/10 | 4040 | dviware/dvisvgm/src/PapersizeSpecialHandler.cpp
+2023/01/10 | 2514 | dviware/dvisvgm/src/PapersizeSpecialHandler.hpp
+2023/01/10 | 13189 | dviware/dvisvgm/src/PathClipper.cpp
+2023/01/10 | 2437 | dviware/dvisvgm/src/PathClipper.hpp
+2023/01/10 | 31276 | dviware/dvisvgm/src/PDFHandler.cpp
+2023/01/10 | 5168 | dviware/dvisvgm/src/PDFHandler.hpp
+2023/01/10 | 15437 | dviware/dvisvgm/src/PDFParser.cpp
+2023/01/10 | 5841 | dviware/dvisvgm/src/PDFParser.hpp
+2023/01/10 | 10418 | dviware/dvisvgm/src/PdfSpecialHandler.cpp
+2023/01/10 | 2836 | dviware/dvisvgm/src/PdfSpecialHandler.hpp
+2023/01/10 | 3242 | dviware/dvisvgm/src/PDFToSVG.cpp
+2023/01/10 | 2163 | dviware/dvisvgm/src/PDFToSVG.hpp
+2023/01/10 | 1913 | dviware/dvisvgm/src/PreScanDVIReader.cpp
+2023/01/10 | 1886 | dviware/dvisvgm/src/PreScanDVIReader.hpp
+2023/01/10 | 13009 | dviware/dvisvgm/src/Process.cpp
+2023/01/10 | 2324 | dviware/dvisvgm/src/Process.hpp
+2023/01/10 | 12876 | dviware/dvisvgm/src/psdefs.cpp
+2023/01/10 | 1806 | dviware/dvisvgm/src/PSFilter.hpp
+2023/01/10 | 17947 | dviware/dvisvgm/src/PSInterpreter.cpp
+2023/01/10 | 7111 | dviware/dvisvgm/src/PSInterpreter.hpp
+2023/01/10 | 6500 | dviware/dvisvgm/src/PSPattern.cpp
+2023/01/10 | 4059 | dviware/dvisvgm/src/PSPattern.hpp
+2023/01/10 | 4494 | dviware/dvisvgm/src/PSPreviewFilter.cpp
+2023/01/10 | 2605 | dviware/dvisvgm/src/PSPreviewFilter.hpp
+2023/01/10 | 52347 | dviware/dvisvgm/src/PsSpecialHandler.cpp
+2023/01/10 | 10843 | dviware/dvisvgm/src/PsSpecialHandler.hpp
+2023/01/10 | 7053 | dviware/dvisvgm/src/RangeMap.cpp
+2023/01/10 | 5180 | dviware/dvisvgm/src/RangeMap.hpp
+2023/01/10 | 2871 | dviware/dvisvgm/src/ShadingPatch.cpp
+2023/01/10 | 3150 | dviware/dvisvgm/src/ShadingPatch.hpp
+2023/01/10 | 4203 | dviware/dvisvgm/src/SignalHandler.cpp
+2023/01/10 | 2180 | dviware/dvisvgm/src/SignalHandler.hpp
+2023/01/10 | 4623 | dviware/dvisvgm/src/SourceInput.cpp
+2023/01/10 | 2388 | dviware/dvisvgm/src/SourceInput.hpp
+2023/01/10 | 4502 | dviware/dvisvgm/src/SpecialActions.hpp
+2023/01/10 | 2512 | dviware/dvisvgm/src/SpecialHandler.hpp
+2023/01/10 | 6511 | dviware/dvisvgm/src/SpecialManager.cpp
+2023/01/10 | 2958 | dviware/dvisvgm/src/SpecialManager.hpp
+2023/01/10 | 5021 | dviware/dvisvgm/src/StreamReader.cpp
+2023/01/10 | 2975 | dviware/dvisvgm/src/StreamReader.hpp
+2023/01/10 | 3768 | dviware/dvisvgm/src/StreamWriter.cpp
+2023/01/10 | 2196 | dviware/dvisvgm/src/StreamWriter.hpp
+2023/01/10 | 9256 | dviware/dvisvgm/src/Subfont.cpp
+2023/01/10 | 3521 | dviware/dvisvgm/src/Subfont.hpp
+2023/01/10 | 3676 | dviware/dvisvgm/src/SVGCharHandler.cpp
+2023/01/10 | 2024 | dviware/dvisvgm/src/SVGCharHandlerFactory.cpp
+2023/01/10 | 1645 | dviware/dvisvgm/src/SVGCharHandlerFactory.hpp
+2023/01/10 | 4533 | dviware/dvisvgm/src/SVGCharHandler.hpp
+2023/01/10 | 5814 | dviware/dvisvgm/src/SVGCharPathHandler.cpp
+2023/01/10 | 2455 | dviware/dvisvgm/src/SVGCharPathHandler.hpp
+2023/01/10 | 3959 | dviware/dvisvgm/src/SVGCharTspanTextHandler.cpp
+2023/01/10 | 2041 | dviware/dvisvgm/src/SVGCharTspanTextHandler.hpp
+2023/01/10 | 4889 | dviware/dvisvgm/src/SVGElement.cpp
+2023/01/10 | 2960 | dviware/dvisvgm/src/SVGElement.hpp
+2023/01/10 | 6475 | dviware/dvisvgm/src/SVGOutput.cpp
+2023/01/10 | 3801 | dviware/dvisvgm/src/SVGOutput.hpp
+2023/01/10 | 2182 | dviware/dvisvgm/src/SVGSingleCharTextHandler.cpp
+2023/01/10 | 1784 | dviware/dvisvgm/src/SVGSingleCharTextHandler.hpp
+2023/01/10 | 12273 | dviware/dvisvgm/src/SVGTree.cpp
+2023/01/10 | 4772 | dviware/dvisvgm/src/SVGTree.hpp
+2023/01/10 | 2005 | dviware/dvisvgm/src/System.cpp
+2023/01/10 | 1511 | dviware/dvisvgm/src/System.hpp
+2023/01/10 | 21388 | dviware/dvisvgm/src/TensorProductPatch.cpp
+2023/01/10 | 5289 | dviware/dvisvgm/src/TensorProductPatch.hpp
+2023/01/10 | 6113 | dviware/dvisvgm/src/Terminal.cpp
+2023/01/10 | 2284 | dviware/dvisvgm/src/Terminal.hpp
+2023/01/10 | 7073 | dviware/dvisvgm/src/TFM.cpp
+2023/01/10 | 3519 | dviware/dvisvgm/src/TFM.hpp
+2023/01/10 | 4761 | dviware/dvisvgm/src/ToUnicodeMap.cpp
+2023/01/10 | 1844 | dviware/dvisvgm/src/ToUnicodeMap.hpp
+2023/01/10 | 12940 | dviware/dvisvgm/src/TpicSpecialHandler.cpp
+2023/01/10 | 2613 | dviware/dvisvgm/src/TpicSpecialHandler.hpp
+2023/01/10 | 8354 | dviware/dvisvgm/src/TriangularPatch.cpp
+2023/01/10 | 3049 | dviware/dvisvgm/src/TriangularPatch.hpp
+2023/01/10 | 5522 | dviware/dvisvgm/src/ttf/CmapTable.cpp
+2023/01/10 | 2188 | dviware/dvisvgm/src/ttf/CmapTable.hpp
+2023/01/10 | 19238 | dviware/dvisvgm/src/ttf/GlyfTable.cpp
+2023/01/10 | 4012 | dviware/dvisvgm/src/ttf/GlyfTable.hpp
+2023/01/10 | 3688 | dviware/dvisvgm/src/ttf/HeadTable.cpp
+2023/01/10 | 2374 | dviware/dvisvgm/src/ttf/HeadTable.hpp
+2023/01/10 | 3055 | dviware/dvisvgm/src/ttf/HheaTable.cpp
+2023/01/10 | 2283 | dviware/dvisvgm/src/ttf/HheaTable.hpp
+2023/01/10 | 2756 | dviware/dvisvgm/src/ttf/HmtxTable.cpp
+2023/01/10 | 2367 | dviware/dvisvgm/src/ttf/HmtxTable.hpp
+2023/01/10 | 2200 | dviware/dvisvgm/src/ttf/LocaTable.hpp
+2023/01/10 | 688 | dviware/dvisvgm/src/ttf/Makefile.am
+2023/01/10 | 24267 | dviware/dvisvgm/src/ttf/Makefile.in
+2023/01/10 | 2502 | dviware/dvisvgm/src/ttf/MaxpTable.cpp
+2023/01/10 | 2086 | dviware/dvisvgm/src/ttf/MaxpTable.hpp
+2023/01/10 | 3674 | dviware/dvisvgm/src/ttf/NameTable.cpp
+2023/01/10 | 1844 | dviware/dvisvgm/src/ttf/NameTable.hpp
+2023/01/10 | 11284 | dviware/dvisvgm/src/ttf/OS2Table.cpp
+2023/01/10 | 2069 | dviware/dvisvgm/src/ttf/OS2Table.hpp
+2023/01/10 | 3004 | dviware/dvisvgm/src/ttf/PostTable.cpp
+2023/01/10 | 1848 | dviware/dvisvgm/src/ttf/PostTable.hpp
+2023/01/10 | 4953 | dviware/dvisvgm/src/ttf/TTFAutohint.cpp
+2023/01/10 | 2136 | dviware/dvisvgm/src/ttf/TTFAutohint.hpp
+2023/01/10 | 3939 | dviware/dvisvgm/src/ttf/TTFTable.cpp
+2023/01/10 | 4709 | dviware/dvisvgm/src/ttf/TTFTable.hpp
+2023/01/10 | 14587 | dviware/dvisvgm/src/ttf/TTFWriter.cpp
+2023/01/10 | 4895 | dviware/dvisvgm/src/ttf/TTFWriter.hpp
+2023/01/10 | 3040 | dviware/dvisvgm/src/ttf/VheaTable.cpp
+2023/01/10 | 2283 | dviware/dvisvgm/src/ttf/VheaTable.hpp
+2023/01/10 | 2649 | dviware/dvisvgm/src/ttf/VmtxTable.cpp
+2023/01/10 | 2278 | dviware/dvisvgm/src/ttf/VmtxTable.hpp
+2023/01/10 | 10002 | dviware/dvisvgm/src/Unicode.cpp
+2023/01/10 | 2001 | dviware/dvisvgm/src/Unicode.hpp
+2023/01/10 | 9964 | dviware/dvisvgm/src/utility.cpp
+2023/01/10 | 8335 | dviware/dvisvgm/src/utility.hpp
+2023/01/10 | 3439 | dviware/dvisvgm/src/VectorIterator.hpp
+2023/01/10 | 2949 | dviware/dvisvgm/src/VectorStream.hpp
+2023/01/10 | 1577 | dviware/dvisvgm/src/version.hpp.in
+2023/01/10 | 1911 | dviware/dvisvgm/src/VFActions.hpp
+2023/01/10 | 6570 | dviware/dvisvgm/src/VFReader.cpp
+2023/01/10 | 2443 | dviware/dvisvgm/src/VFReader.hpp
+2023/01/10 | 1604 | dviware/dvisvgm/src/windows.hpp
+2023/01/10 | 2237 | dviware/dvisvgm/src/XMLDocument.cpp
+2023/01/10 | 2053 | dviware/dvisvgm/src/XMLDocument.hpp
+2023/01/10 | 17715 | dviware/dvisvgm/src/XMLNode.cpp
+2023/01/10 | 10034 | dviware/dvisvgm/src/XMLNode.hpp
+2023/01/10 | 8749 | dviware/dvisvgm/src/XMLParser.cpp
+2023/01/10 | 2927 | dviware/dvisvgm/src/XMLParser.hpp
+2023/01/10 | 3034 | dviware/dvisvgm/src/XMLString.cpp
+2023/01/10 | 1887 | dviware/dvisvgm/src/XMLString.hpp
+2023/01/10 | 4735 | dviware/dvisvgm/src/XXHashFunction.hpp
+2023/01/10 | 5940 | dviware/dvisvgm/src/ZLibOutputStream.hpp
+2022/12/08 | 4879 | dviware/dvisvgm/test-driver
+2023/01/10 | 6354 | dviware/dvisvgm/tests/BezierTest.cpp
+2023/01/10 | 2704 | dviware/dvisvgm/tests/BitmapTest.cpp
+2023/01/10 | 6078 | dviware/dvisvgm/tests/BoundingBoxTest.cpp
+2023/01/10 | 3688 | dviware/dvisvgm/tests/CalculatorTest.cpp
+2023/01/10 | 1216 | dviware/dvisvgm/tests/check-conv
+2023/01/10 | 2974 | dviware/dvisvgm/tests/CMapManagerTest.cpp
+2023/01/10 | 4223 | dviware/dvisvgm/tests/CMapReaderTest.cpp
+2023/01/10 | 4980 | dviware/dvisvgm/tests/CMapTest.cpp
+2023/01/10 | 4702 | dviware/dvisvgm/tests/ColorSpecialTest.cpp
+2023/01/10 | 6942 | dviware/dvisvgm/tests/ColorTest.cpp
+2023/01/10 | 8439 | dviware/dvisvgm/tests/CommandLineTest.cpp
+2022/10/13 | 2508 | dviware/dvisvgm/tests/data/cidjmgr0-h.tfm
+2022/10/13 | 24244 | dviware/dvisvgm/tests/data/cmr10.600gf
+2022/10/13 | 35752 | dviware/dvisvgm/tests/data/cmr10.pfb
+2022/10/13 | 1296 | dviware/dvisvgm/tests/data/cmr10.tfm
+2022/10/13 | 18351 | dviware/dvisvgm/tests/data/dvipdfm_test.map
+2022/10/13 | 15594 | dviware/dvisvgm/tests/data/dvips_test.map
+2022/10/13 | 2072 | dviware/dvisvgm/tests/data/frktest.dvi
+2022/10/13 | 337419 | dviware/dvisvgm/tests/data/frktest-nf-cmp.svg
+2022/10/13 | 163979 | dviware/dvisvgm/tests/data/frktest-wf-cmp.svg
+2022/10/13 | 63012 | dviware/dvisvgm/tests/data/lmmono12-regular.otf
+2023/01/10 | 452 | dviware/dvisvgm/tests/data/Makefile.am
+2023/01/10 | 13938 | dviware/dvisvgm/tests/data/Makefile.in
+2022/10/13 | 1207 | dviware/dvisvgm/tests/data/ot1.cmap
+2022/10/13 | 1320 | dviware/dvisvgm/tests/data/sample.dvi
+2022/10/13 | 60654 | dviware/dvisvgm/tests/data/sample-nf-cmp.svg
+2022/10/13 | 17637 | dviware/dvisvgm/tests/data/sample.sfd
+2022/10/13 | 1016 | dviware/dvisvgm/tests/data/sample_v2.dvi
+2022/10/13 | 256 | dviware/dvisvgm/tests/data/sample_v3.dvi
+2022/10/13 | 46985 | dviware/dvisvgm/tests/data/sample-wf-cmp.svg
+2023/01/10 | 2512 | dviware/dvisvgm/tests/DependencyGraphTest.cpp
+2023/01/10 | 2773 | dviware/dvisvgm/tests/DirectoryTest.cpp
+2023/01/10 | 33210 | dviware/dvisvgm/tests/DVIReaderTest.cpp
+2023/01/10 | 13534 | dviware/dvisvgm/tests/DvisvgmSpecialTest.cpp
+2023/01/10 | 5850 | dviware/dvisvgm/tests/EllipticalArcTest.cpp
+2023/01/10 | 7489 | dviware/dvisvgm/tests/EmSpecialTest.cpp
+2023/01/10 | 3124 | dviware/dvisvgm/tests/FileFinderTest.cpp
+2023/01/10 | 4004 | dviware/dvisvgm/tests/FilePathTest.cpp
+2023/01/10 | 3899 | dviware/dvisvgm/tests/FileSystemTest.cpp
+2023/01/10 | 5070 | dviware/dvisvgm/tests/FontCacheTest.cpp
+2023/01/10 | 3875 | dviware/dvisvgm/tests/FontManagerTest.cpp
+2023/01/10 | 2850 | dviware/dvisvgm/tests/FontMapTest.cpp
+2023/01/10 | 2026 | dviware/dvisvgm/tests/genhashcheck.py
+2023/01/10 | 4645 | dviware/dvisvgm/tests/GFGlyphTracerTest.cpp
+2023/01/10 | 12993 | dviware/dvisvgm/tests/GFReaderTest.cpp
+2023/01/10 | 2083 | dviware/dvisvgm/tests/GhostscriptTest.cpp
+2023/01/10 | 6180 | dviware/dvisvgm/tests/GraphicsPathParserTest.cpp
+2023/01/10 | 7230 | dviware/dvisvgm/tests/GraphicsPathTest.cpp
+2022/10/13 | 14647 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-death-test.h
+2022/10/13 | 94331 | dviware/dvisvgm/tests/gtest/include/gtest/gtest.h
+2022/10/13 | 33126 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-matchers.h
+2022/10/13 | 8045 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-message.h
+2022/10/13 | 22588 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-param-test.h
+2022/10/13 | 14865 | dviware/dvisvgm/tests/gtest/include/gtest/gtest_pred_impl.h
+2022/10/13 | 35935 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-printers.h
+2022/10/13 | 2534 | dviware/dvisvgm/tests/gtest/include/gtest/gtest_prod.h
+2022/10/13 | 10112 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-spi.h
+2022/10/13 | 6868 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-test-part.h
+2022/10/13 | 15881 | dviware/dvisvgm/tests/gtest/include/gtest/gtest-typed-test.h
+2022/10/13 | 1858 | dviware/dvisvgm/tests/gtest/include/gtest/internal/custom/gtest.h
+2022/10/13 | 1873 | dviware/dvisvgm/tests/gtest/include/gtest/internal/custom/gtest-port.h
+2022/10/13 | 2094 | dviware/dvisvgm/tests/gtest/include/gtest/internal/custom/gtest-printers.h
+2022/10/13 | 13451 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-death-test-internal.h
+2022/10/13 | 9780 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-filepath.h
+2022/10/13 | 61622 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-internal.h
+2022/10/13 | 8401 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-linked_ptr.h
+2022/10/13 | 218498 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-param-util-generated.h
+2022/10/13 | 35140 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-param-util.h
+2022/10/13 | 4157 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-port-arch.h
+2022/10/13 | 85257 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-port.h
+2022/10/13 | 7228 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-string.h
+2022/10/13 | 28605 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-tuple.h
+2022/10/13 | 6174 | dviware/dvisvgm/tests/gtest/include/gtest/internal/gtest-type-util.h
+2022/10/13 | 1475 | dviware/dvisvgm/tests/gtest/LICENSE
+2022/10/13 | 2160 | dviware/dvisvgm/tests/gtest/src/gtest-all.cc
+2022/10/13 | 248773 | dviware/dvisvgm/tests/gtest/src/gtest.cc
+2022/10/13 | 62109 | dviware/dvisvgm/tests/gtest/src/gtest-death-test.cc
+2022/10/13 | 14081 | dviware/dvisvgm/tests/gtest/src/gtest-filepath.cc
+2022/10/13 | 47373 | dviware/dvisvgm/tests/gtest/src/gtest-internal-inl.h
+2022/10/13 | 1968 | dviware/dvisvgm/tests/gtest/src/gtest_main.cc
+2022/10/13 | 3723 | dviware/dvisvgm/tests/gtest/src/gtest-matchers.cc
+2022/10/13 | 48099 | dviware/dvisvgm/tests/gtest/src/gtest-port.cc
+2022/10/13 | 17269 | dviware/dvisvgm/tests/gtest/src/gtest-printers.cc
+2022/10/13 | 4126 | dviware/dvisvgm/tests/gtest/src/gtest-test-part.cc
+2022/10/13 | 3780 | dviware/dvisvgm/tests/gtest/src/gtest-typed-test.cc
+2023/01/10 | 5568 | dviware/dvisvgm/tests/HashFunctionTest.cpp
+2023/01/10 | 4034 | dviware/dvisvgm/tests/JFMReaderTest.cpp
+2023/01/10 | 7803 | dviware/dvisvgm/tests/LengthTest.cpp
+2023/01/10 | 15831 | dviware/dvisvgm/tests/Makefile.am
+2023/01/10 | 260253 | dviware/dvisvgm/tests/Makefile.in
+2023/01/10 | 5795 | dviware/dvisvgm/tests/MapLineTest.cpp
+2023/01/10 | 8332 | dviware/dvisvgm/tests/MatrixTest.cpp
+2023/01/10 | 2315 | dviware/dvisvgm/tests/MessageExceptionTest.cpp
+2023/01/10 | 4799 | dviware/dvisvgm/tests/normalize.xsl
+2023/01/10 | 5297 | dviware/dvisvgm/tests/PageRagesTest.cpp
+2023/01/10 | 2398 | dviware/dvisvgm/tests/PageSizeTest.cpp
+2023/01/10 | 4193 | dviware/dvisvgm/tests/PairTest.cpp
+2023/01/10 | 4926 | dviware/dvisvgm/tests/PapersizeSpecialTest.cpp
+2023/01/10 | 8452 | dviware/dvisvgm/tests/PDFParserTest.cpp
+2023/01/10 | 9574 | dviware/dvisvgm/tests/PSInterpreterTest.cpp
+2023/01/10 | 6392 | dviware/dvisvgm/tests/RangeMapTest.cpp
+2023/01/10 | 3629 | dviware/dvisvgm/tests/ShadingPatchTest.cpp
+2023/01/10 | 3801 | dviware/dvisvgm/tests/SpecialManagerTest.cpp
+2023/01/10 | 5392 | dviware/dvisvgm/tests/SplittedCharInputBufferTest.cpp
+2023/01/10 | 7499 | dviware/dvisvgm/tests/StreamInputBufferTest.cpp
+2023/01/10 | 4178 | dviware/dvisvgm/tests/StreamReaderTest.cpp
+2023/01/10 | 3420 | dviware/dvisvgm/tests/StreamWriterTest.cpp
+2023/01/10 | 4460 | dviware/dvisvgm/tests/StringMatcherTest.cpp
+2023/01/10 | 3363 | dviware/dvisvgm/tests/SubfontTest.cpp
+2023/01/10 | 6521 | dviware/dvisvgm/tests/SVGOutputTest.cpp
+2023/01/10 | 12820 | dviware/dvisvgm/tests/TensorProductPatchTest.cpp
+2023/01/10 | 1999 | dviware/dvisvgm/tests/testmain.cpp
+2022/10/13 | 198 | dviware/dvisvgm/tests/testutil.hpp
+2023/01/10 | 3348 | dviware/dvisvgm/tests/TFMReaderTest.cpp
+2023/01/10 | 2501 | dviware/dvisvgm/tests/ToUnicodeMapTest.cpp
+2023/01/10 | 13772 | dviware/dvisvgm/tests/TpicSpecialTest.cpp
+2023/01/10 | 7066 | dviware/dvisvgm/tests/TriangularPatchTest.cpp
+2023/01/10 | 6084 | dviware/dvisvgm/tests/UnicodeTest.cpp
+2023/01/10 | 6583 | dviware/dvisvgm/tests/UtilityTest.cpp
+2023/01/10 | 3785 | dviware/dvisvgm/tests/VectorIteratorTest.cpp
+2023/01/10 | 2276 | dviware/dvisvgm/tests/VectorStreamTest.cpp
+2023/01/10 | 15061 | dviware/dvisvgm/tests/XMLNodeTest.cpp
+2023/01/10 | 3034 | dviware/dvisvgm/tests/XMLStringTest.cpp
+2023/01/11 | 3309241 | dviware/dvisvgm.zip
1991/04/12 | 1728 | dviware/dvitops/aftopl.1
1991/04/12 | 12075 | dviware/dvitops/aftopl.c
1991/01/25 | 837 | dviware/dvitops/cms.h
@@ -5427,7 +5407,7 @@
1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp
1990/10/02 | 812 | dviware/vutex/vaxvms.ins
1990/10/02 | 127576 | dviware/vutex/vutex.web
-2023/01/10 | 283128 | FILES.last07days
+2023/01/11 | 60645 | FILES.last07days
2021/07/24 | 1139410 | fonts/aboensis/Aboensis.glyphs
2021/07/24 | 18907382 | fonts/aboensis/aboensis.pdf
2021/07/24 | 137860 | fonts/aboensis/Aboensis-Regular.otf
@@ -81492,9 +81472,9 @@
2021/06/03 | 97808 | fonts/musixtex-fonts/doc/musixtex-fonts-install.pdf
2021/08/30 | 3497 | fonts/musixtex-fonts/doc/musixtex-fonts-install.tex
2021/06/08 | 3563 | fonts/musixtex-fonts/doc/README.psfonts
-2021/08/30 | 2353 | fonts/musixtex-fonts/map/musix.map
+2023/01/11 | 2379 | fonts/musixtex-fonts/map/musix.map
2021/08/29 | 256028 | fonts/musixtex-fonts/opentype/MuseJazzText.otf
-2021/08/30 | 2380 | fonts/musixtex-fonts/README
+2023/01/11 | 2520 | fonts/musixtex-fonts/README
2017/06/10 | 4921 | fonts/musixtex-fonts/source/musexgen.mf
2017/06/10 | 493 | fonts/musixtex-fonts/source/musix11.mf
2017/06/10 | 489 | fonts/musixtex-fonts/source/musix13.mf
@@ -81591,6 +81571,7 @@
2017/06/10 | 69 | fonts/musixtex-fonts/source/xslz20.mf
2017/06/10 | 1834 | fonts/musixtex-fonts/source/xslz.mf
2017/06/10 | 510 | fonts/musixtex-fonts/source/xtie20.mf
+2022/12/30 | 1200 | fonts/musixtex-fonts/tfm/feta20.tfm
2021/07/24 | 1304 | fonts/musixtex-fonts/tfm/frenchtab.tfm
2021/08/28 | 3036 | fonts/musixtex-fonts/tfm/MuseJazzText.tfm
2017/06/10 | 1288 | fonts/musixtex-fonts/tfm/musix11.tfm
@@ -81674,6 +81655,7 @@
2017/06/10 | 568 | fonts/musixtex-fonts/tfm/xslz20d.tfm
2017/06/10 | 568 | fonts/musixtex-fonts/tfm/xslz20.tfm
2017/06/10 | 1028 | fonts/musixtex-fonts/tfm/xtie20.tfm
+2022/12/30 | 59737 | fonts/musixtex-fonts/type1/feta20.pfb
2021/08/30 | 14449 | fonts/musixtex-fonts/type1/frenchtab.pfb
2021/08/30 | 332125 | fonts/musixtex-fonts/type1/MuseJazzText.pfb
2021/06/01 | 46543 | fonts/musixtex-fonts/type1/musix11.pfb
@@ -81755,7 +81737,7 @@
2021/06/01 | 77930 | fonts/musixtex-fonts/type1/xslz20d.pfb
2021/06/01 | 24929 | fonts/musixtex-fonts/type1/xslz20.pfb
2021/06/01 | 54061 | fonts/musixtex-fonts/type1/xtie20.pfb
-2021/08/30 | 6014554 | fonts/musixtex-fonts.zip
+2023/01/11 | 6070330 | fonts/musixtex-fonts.zip
2021/10/08 | 19070229 | fonts/nahuatl/doc/nahuatl-en.pdf
2021/10/08 | 4920 | fonts/nahuatl/doc/nahuatl-en.tex
2021/10/08 | 19072007 | fonts/nahuatl/doc/nahuatl-es.pdf
@@ -166846,10 +166828,10 @@
2022/10/28 | 3485 | info/biblio/sgml.ltx
1997/10/07 | 204292 | info/biblio/texbook1.bib
1997/10/07 | 2953 | info/biblio/texbook1.ltx
-2022/02/09 | 460820 | info/biblio/texbook2.bib
+2023/01/10 | 465277 | info/biblio/texbook2.bib
2022/02/09 | 2883 | info/biblio/texbook2.ltx
-2022/11/19 | 1002752 | info/biblio/texbook3.bib
-2022/09/22 | 3918 | info/biblio/texbook3.ltx
+2023/01/10 | 1004505 | info/biblio/texbook3.bib
+2023/01/10 | 3914 | info/biblio/texbook3.ltx
2019/03/04 | 179842 | info/biblio/texgraph.bib
2019/03/04 | 4179 | info/biblio/texgraph.ltx
2018/02/07 | 61457 | info/biblio/texjourn.bib
@@ -193320,7 +193302,7 @@
2020/05/03 | 428983 | install/fonts/minion2newtx.tds.zip
2022/09/21 | 2698001 | install/fonts/mintspirit.tds.zip
2019/11/08 | 25067633 | install/fonts/montserrat.tds.zip
-2021/08/30 | 6038058 | install/fonts/musixtex-fonts.tds.zip
+2023/01/11 | 6093990 | install/fonts/musixtex-fonts.tds.zip
2020/02/15 | 441366 | install/fonts/newtxtt.tds.zip
2022/09/11 | 136106044 | install/fonts/notocondensed.tds.zip
2022/09/11 | 44631594 | install/fonts/noto.tds.zip
@@ -193783,7 +193765,7 @@
2022/01/01 | 214658 | install/macros/luatex/latex/lualatex-math.tds.zip
2010/12/14 | 322044 | install/macros/luatex/latex/luatextra.tds.zip
2018/04/25 | 5009580 | install/macros/luatex/latex/novel.tds.zip
-2021/08/30 | 2527933 | install/macros/musixtex.tds.zip
+2023/01/11 | 2535893 | install/macros/musixtex.tds.zip
2013/07/02 | 153964 | install/macros/plain/contrib/plstmary.tds.zip
2008/05/18 | 22279 | install/macros/plain/plnfss.tds.zip
2022/01/15 | 1403657 | install/macros/unicodetex/latex/fontspec.tds.zip
@@ -193798,7 +193780,6 @@
2021/08/19 | 464024 | install/macros/xetex/latex/mynsfc.tds.zip
2022/08/05 | 2009524 | install/macros/xetex/latex/xecjk.tds.zip
2022/10/30 | 1290311 | install/macros/xetex/latex/xepersian.tds.zip
-2023/01/05 | 88978 | install/macros/xetex/plain/unimath-plain-xetex.tds.zip
2008/06/20 | 3954 | install/macros/xetex/plain/xetexfontinfo.tds.zip
2013/01/04 | 36361 | install/support/adhocfilelist.tds.zip
2021/11/27 | 2294905 | install/support/albatross.tds.zip
@@ -217881,12 +217862,16 @@
2010/02/23 | 37530 | macros/latex/contrib/dichokey/rhodocyb.pdf
1999/12/19 | 2877 | macros/latex/contrib/dichokey/rhodocyb.tex
2010/02/23 | 212504 | macros/latex/contrib/dichokey.zip
-2021/12/23 | 2383 | macros/latex/contrib/diffcoeff/diffcoeff-doc.def
-2022/06/14 | 759595 | macros/latex/contrib/diffcoeff/diffcoeff.pdf
-2022/06/14 | 26377 | macros/latex/contrib/diffcoeff/diffcoeff.sty
-2022/06/14 | 99724 | macros/latex/contrib/diffcoeff/diffcoeff.tex
-2022/06/14 | 1077 | macros/latex/contrib/diffcoeff/README.txt
-2022/06/14 | 696938 | macros/latex/contrib/diffcoeff.zip
+2023/01/10 | 765490 | macros/latex/contrib/diffcoeff/diffcoeff4.pdf
+2022/12/31 | 26323 | macros/latex/contrib/diffcoeff/diffcoeff4.sty
+2023/01/10 | 104034 | macros/latex/contrib/diffcoeff/diffcoeff4.tex
+2023/01/03 | 2947 | macros/latex/contrib/diffcoeff/diffcoeff5.def
+2023/01/03 | 2468 | macros/latex/contrib/diffcoeff/diffcoeff-doc.def
+2023/01/10 | 815973 | macros/latex/contrib/diffcoeff/diffcoeff.pdf
+2023/01/03 | 34269 | macros/latex/contrib/diffcoeff/diffcoeff.sty
+2023/01/10 | 141947 | macros/latex/contrib/diffcoeff/diffcoeff.tex
+2023/01/11 | 1550 | macros/latex/contrib/diffcoeff/README.txt
+2023/01/11 | 1438052 | macros/latex/contrib/diffcoeff.zip
2018/05/23 | 34904 | macros/latex/contrib/digicap-pro/digicap-pro.dtx
2018/05/13 | 1922 | macros/latex/contrib/digicap-pro/digicap-pro.ins
2018/05/21 | 287595 | macros/latex/contrib/digicap-pro/doc/digicap_man.pdf
@@ -232746,14 +232731,12 @@
2017/02/09 | 4900 | macros/latex/contrib/pythonhighlight/pythonhighlight.sty
2017/02/09 | 662 | macros/latex/contrib/pythonhighlight/README.md
2017/02/09 | 3487 | macros/latex/contrib/pythonhighlight.zip
-2022/12/23 | 35 | macros/latex/contrib/pythonimmediate/DEPENDS.txt
-2022/12/23 | 402484 | macros/latex/contrib/pythonimmediate/pythonimmediate.pdf
-2022/12/23 | 1649 | macros/latex/contrib/pythonimmediate/pythonimmediate_script_pytotex.py
-2022/12/23 | 69227 | macros/latex/contrib/pythonimmediate/pythonimmediate_script_textopy.py
-2022/12/23 | 7340 | macros/latex/contrib/pythonimmediate/pythonimmediate.sty
-2022/12/23 | 17505 | macros/latex/contrib/pythonimmediate/pythonimmediate.tex
-2022/12/23 | 773 | macros/latex/contrib/pythonimmediate/README
-2022/12/23 | 429551 | macros/latex/contrib/pythonimmediate.zip
+2023/01/09 | 35 | macros/latex/contrib/pythonimmediate/DEPENDS.txt
+2023/01/09 | 432126 | macros/latex/contrib/pythonimmediate/pythonimmediate.pdf
+2023/01/09 | 6624 | macros/latex/contrib/pythonimmediate/pythonimmediate.sty
+2023/01/09 | 19805 | macros/latex/contrib/pythonimmediate/pythonimmediate.tex
+2023/01/09 | 708 | macros/latex/contrib/pythonimmediate/README
+2023/01/11 | 439967 | macros/latex/contrib/pythonimmediate.zip
2021/08/03 | 3375 | macros/latex/contrib/python/python.sty
2012/06/11 | 934 | macros/latex/contrib/python/README
2021/06/07 | 70760 | macros/latex/contrib/pythontex/depythontex2.py
@@ -233765,20 +233748,20 @@
2009/01/14 | 129189 | macros/latex/contrib/sageep/sample.pdf
2008/12/22 | 1372 | macros/latex/contrib/sageep/sample.tex
2009/01/15 | 357661 | macros/latex/contrib/sageep.zip
-2020/01/13 | 512 | macros/latex/contrib/sagetex/CONTRIBUTORS
-2020/10/15 | 276082 | macros/latex/contrib/sagetex/example.pdf
-2020/01/13 | 21237 | macros/latex/contrib/sagetex/example.tex
-2020/01/13 | 755 | macros/latex/contrib/sagetex/LICENSE
-2020/10/15 | 445 | macros/latex/contrib/sagetex/PKG-INFO
-2020/01/13 | 65945 | macros/latex/contrib/sagetex/py-and-sty.dtx
-2020/01/13 | 2458 | macros/latex/contrib/sagetex/README.md
-2020/01/13 | 17154 | macros/latex/contrib/sagetex/remote-sagetex.dtx
-2020/08/19 | 54711 | macros/latex/contrib/sagetex/sagetex.dtx
-2020/01/13 | 5192 | macros/latex/contrib/sagetex/sagetex.ins
-2020/10/15 | 497692 | macros/latex/contrib/sagetex/sagetex.pdf
-2020/08/19 | 17446 | macros/latex/contrib/sagetex/scripts.dtx
-2020/08/19 | 1121 | macros/latex/contrib/sagetex/setup.py
-2020/10/16 | 810403 | macros/latex/contrib/sagetex.zip
+2023/01/10 | 512 | macros/latex/contrib/sagetex/CONTRIBUTORS
+2023/01/11 | 277744 | macros/latex/contrib/sagetex/example.pdf
+2023/01/10 | 21237 | macros/latex/contrib/sagetex/example.tex
+2023/01/10 | 755 | macros/latex/contrib/sagetex/LICENSE
+2023/01/11 | 486 | macros/latex/contrib/sagetex/PKG-INFO
+2023/01/11 | 65922 | macros/latex/contrib/sagetex/py-and-sty.dtx
+2023/01/10 | 2457 | macros/latex/contrib/sagetex/README.md
+2023/01/10 | 17154 | macros/latex/contrib/sagetex/remote-sagetex.dtx
+2023/01/11 | 54632 | macros/latex/contrib/sagetex/sagetex.dtx
+2023/01/10 | 5186 | macros/latex/contrib/sagetex/sagetex.ins
+2023/01/11 | 501661 | macros/latex/contrib/sagetex/sagetex.pdf
+2023/01/10 | 18866 | macros/latex/contrib/sagetex/scripts.dtx
+2023/01/10 | 1112 | macros/latex/contrib/sagetex/setup.py
+2023/01/11 | 816187 | macros/latex/contrib/sagetex.zip
2022/06/29 | 1408 | macros/latex/contrib/sanitize-umlaut/CHANGES.md
2022/06/29 | 90 | macros/latex/contrib/sanitize-umlaut/german.ist
2022/06/29 | 1721 | macros/latex/contrib/sanitize-umlaut/README.md
@@ -244220,30 +244203,30 @@
2017/07/25 | 273 | macros/musixtex/doc/examples/widor_20.tex
2017/07/25 | 31284 | macros/musixtex/doc/examples/widor.tex
2017/07/25 | 178150 | macros/musixtex/doc/musixcrd/doc.pdf
-2017/07/25 | 3193 | macros/musixtex/doc/musixdoc/accidentals.tex
-2020/10/12 | 10421 | macros/musixtex/doc/musixdoc/barlines.tex
+2022/12/29 | 3362 | macros/musixtex/doc/musixdoc/accidentals.tex
+2022/12/29 | 10721 | macros/musixtex/doc/musixdoc/barlines.tex
2017/07/25 | 4562 | macros/musixtex/doc/musixdoc/barnumbering.tex
2021/05/16 | 22939 | macros/musixtex/doc/musixdoc/beams.tex
-2017/07/25 | 19225 | macros/musixtex/doc/musixdoc/changing.tex
+2022/05/21 | 19225 | macros/musixtex/doc/musixdoc/changing.tex
2017/07/25 | 9512 | macros/musixtex/doc/musixdoc/embedding.tex
2021/05/24 | 5797 | macros/musixtex/doc/musixdoc/examples.tex
-2021/08/29 | 72731 | macros/musixtex/doc/musixdoc/extensions.tex
+2022/12/29 | 74242 | macros/musixtex/doc/musixdoc/extensions.tex
2017/07/25 | 4087 | macros/musixtex/doc/musixdoc/extracting.tex
2017/07/25 | 11619 | macros/musixtex/doc/musixdoc/fonts.tex
-2021/08/28 | 5451 | macros/musixtex/doc/musixdoc/frontmatter.tex
+2022/12/26 | 5450 | macros/musixtex/doc/musixdoc/frontmatter.tex
2017/07/25 | 274 | macros/musixtex/doc/musixdoc/index.tex
2021/05/27 | 36899 | macros/musixtex/doc/musixdoc/introduction.tex
2020/10/13 | 9181 | macros/musixtex/doc/musixdoc/layout.tex
2017/07/25 | 17525 | macros/musixtex/doc/musixdoc/lyrics.tex
-2021/07/24 | 38136 | macros/musixtex/doc/musixdoc/miscellaneous.tex
-2021/08/28 | 1978 | macros/musixtex/doc/musixdoc/musixdoc.ltx
-2021/07/01 | 4828 | macros/musixtex/doc/musixdoc/musixdoc.sty
+2022/03/17 | 38200 | macros/musixtex/doc/musixdoc/miscellaneous.tex
+2022/12/26 | 1978 | macros/musixtex/doc/musixdoc/musixdoc.ltx
+2022/12/29 | 4828 | macros/musixtex/doc/musixdoc/musixdoc.sty
2019/05/01 | 10935 | macros/musixtex/doc/musixdoc/parameters.tex
-2021/08/29 | 1434694 | macros/musixtex/doc/musixdoc.pdf
+2022/12/30 | 1437432 | macros/musixtex/doc/musixdoc.pdf
2017/12/25 | 12902 | macros/musixtex/doc/musixdoc/preparing.tex
-2021/01/20 | 8283 | macros/musixtex/doc/musixdoc/repeats.tex
+2022/10/10 | 8283 | macros/musixtex/doc/musixdoc/repeats.tex
2020/04/17 | 7254 | macros/musixtex/doc/musixdoc/restsdoc.tex
-2018/05/21 | 15269 | macros/musixtex/doc/musixdoc/settingup.tex
+2022/03/17 | 15443 | macros/musixtex/doc/musixdoc/settingup.tex
2018/07/09 | 22657 | macros/musixtex/doc/musixdoc/slurstiesfont.tex
2019/06/17 | 16754 | macros/musixtex/doc/musixdoc/slurstiesTypeK.tex
2017/07/25 | 6180 | macros/musixtex/doc/musixdoc/smaller.tex
@@ -244274,13 +244257,13 @@
2021/04/25 | 9286 | macros/musixtex/doc/scripts/musixflx.pdf
2021/05/27 | 4590 | macros/musixtex/doc/scripts/musixtex.1
2021/05/27 | 23518 | macros/musixtex/doc/scripts/musixtex.pdf
-2017/07/25 | 7434 | macros/musixtex/dvips/psslurs.pro
+2022/12/29 | 7435 | macros/musixtex/dvips/psslurs.pro
2017/07/25 | 27 | macros/musixtex/latex/musixcpt.sty
2017/07/25 | 620 | macros/musixtex/latex/musixcrd.sty
2017/07/25 | 30 | macros/musixtex/latex/musixfll.sty
2017/07/25 | 1199 | macros/musixtex/latex/musixltx.tex
2017/07/25 | 42 | macros/musixtex/latex/musixtex.sty
-2021/08/30 | 3131 | macros/musixtex/README
+2023/01/11 | 3131 | macros/musixtex/README
2017/07/25 | 254 | macros/musixtex/scripts/musixflx.bat
2019/05/19 | 34855 | macros/musixtex/scripts/musixflx.lua
2020/03/20 | 265 | macros/musixtex/scripts/musixtex.bat
@@ -244318,11 +244301,12 @@
2017/07/25 | 3210 | macros/musixtex/tex/musixlit.tex
2017/07/25 | 35776 | macros/musixtex/tex/musixlyr.tex
2017/07/25 | 1033 | macros/musixtex/tex/musixmad.tex
+2022/12/30 | 2224 | macros/musixtex/tex/musixmkm.tex
2017/07/25 | 4604 | macros/musixtex/tex/musixper.tex
2017/07/25 | 5049 | macros/musixtex/tex/musixplt.tex
2017/07/25 | 2680 | macros/musixtex/tex/musixpoi.tex
2017/07/25 | 5832 | macros/musixtex/tex/musixppff.tex
-2020/09/07 | 39029 | macros/musixtex/tex/musixps.tex
+2022/12/29 | 39091 | macros/musixtex/tex/musixps.tex
2017/07/25 | 9750 | macros/musixtex/tex/musixref.tex
2017/07/25 | 140 | macros/musixtex/tex/musixslu.tex
2017/07/25 | 106 | macros/musixtex/tex/musixsqr.tex
@@ -244330,12 +244314,13 @@
2017/07/25 | 621 | macros/musixtex/tex/musixstf.tex
2017/07/25 | 1505 | macros/musixtex/tex/musixstr.tex
2019/01/15 | 13876 | macros/musixtex/tex/musixsty.tex
-2021/07/24 | 196127 | macros/musixtex/tex/musixtex.tex
+2023/01/11 | 197560 | macros/musixtex/tex/musixtex.tex
+2022/12/30 | 1793 | macros/musixtex/tex/musixthacc.tex
2017/07/25 | 5379 | macros/musixtex/tex/musixtmr.tex
2017/07/25 | 2071 | macros/musixtex/tex/musixtri.tex
2021/06/13 | 6204 | macros/musixtex/tex/musixvbm.tex
2017/07/25 | 946 | macros/musixtex/tex/tuplet.tex
-2021/08/30 | 2488591 | macros/musixtex.zip
+2023/01/11 | 2496415 | macros/musixtex.zip
2016/01/31 | 1043 | macros/musixtnt/doc/msxlint.1
2016/01/31 | 4148 | macros/musixtnt/doc/msxlint.pdf
2016/01/31 | 3604 | macros/musixtnt/doc/TransformNotes.3
@@ -253925,8 +253910,8 @@
2016/04/07 | 49842 | macros/xetex/plain/font-change-xetex/tex/macros/font-change-xetex.tex
2016/04/08 | 573199 | macros/xetex/plain/font-change-xetex.zip
2023/01/03 | 6922 | macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-genmap.lua
-2023/01/03 | 57374 | macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdf
-2023/01/03 | 12937 | macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex
+2023/01/11 | 57390 | macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdf
+2023/01/11 | 12938 | macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex
2023/01/03 | 150 | macros/xetex/plain/unimath-plain-xetex/fonts/unimath-bbit.map
2023/01/03 | 166 | macros/xetex/plain/unimath-plain-xetex/fonts/unimath-bbit.tec
2023/01/03 | 1050 | macros/xetex/plain/unimath-plain-xetex/fonts/unimath-bb.map
@@ -253956,8 +253941,8 @@
2023/01/03 | 1176 | macros/xetex/plain/unimath-plain-xetex/fonts/unimath-tt.map
2023/01/03 | 480 | macros/xetex/plain/unimath-plain-xetex/fonts/unimath-tt.tec
2022/11/06 | 471 | macros/xetex/plain/unimath-plain-xetex/README.md
-2023/01/03 | 29302 | macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex
-2023/01/03 | 87026 | macros/xetex/plain/unimath-plain-xetex.zip
+2023/01/11 | 29545 | macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex
+2023/01/11 | 87172 | macros/xetex/plain/unimath-plain-xetex.zip
2008/06/20 | 3630 | macros/xetex/plain/xetexfontinfo/aat-info.tex
2008/06/20 | 2631 | macros/xetex/plain/xetexfontinfo/opentype-info.tex
2008/06/20 | 505 | macros/xetex/plain/xetexfontinfo/README
@@ -283543,15 +283528,15 @@
2021/05/03 | 629 | support/TeX4ht/doc/README
2020/08/24 | 358454 | support/TeX4ht/doc/TeX4ht-doc.tex
2021/05/11 | 262 | support/TeX4ht/README
-2023/01/01 | 214477 | support/TeX4ht/source/ChangeLog
+2023/01/10 | 215120 | support/TeX4ht/source/ChangeLog
2021/05/03 | 1375 | support/TeX4ht/source/checklog.lua
2021/05/03 | 1189 | support/TeX4ht/source/common-code.tex
2021/05/03 | 2727 | support/TeX4ht/source/common-info.tex
2021/05/03 | 1569 | support/TeX4ht/source/common.tex
2021/05/06 | 15 | support/TeX4ht/source/extra-bin/vcss
2021/05/06 | 15 | support/TeX4ht/source/extra-bin/xmllint
-2022/11/17 | 27545 | support/TeX4ht/source/Makefile
-2022/12/09 | 8411 | support/TeX4ht/source/mktex4ht-cnf.tex
+2023/01/10 | 27443 | support/TeX4ht/source/Makefile
+2023/01/10 | 8405 | support/TeX4ht/source/mktex4ht-cnf.tex
2021/05/03 | 1121 | support/TeX4ht/source/README
2021/05/03 | 1744 | support/TeX4ht/source/t1fontmake.lua
2021/05/03 | 297 | support/TeX4ht/source/t1fontsample.tex
@@ -283582,8 +283567,8 @@
2021/05/03 | 14218 | support/TeX4ht/source/tex4ht-htcmd.tex
2021/05/03 | 70683 | support/TeX4ht/source/tex4ht-html0.tex
2021/05/03 | 164748 | support/TeX4ht/source/tex4ht-html32.tex
-2023/01/01 | 622428 | support/TeX4ht/source/tex4ht-html4.tex
-2022/08/11 | 11077 | support/TeX4ht/source/tex4ht-html5.tex
+2023/01/10 | 622422 | support/TeX4ht/source/tex4ht-html4.tex
+2023/01/10 | 12023 | support/TeX4ht/source/tex4ht-html5.tex
2021/06/17 | 648233 | support/TeX4ht/source/tex4ht-html-speech.tex
2021/05/03 | 59483 | support/TeX4ht/source/tex4ht-html-speech-xtpipes.tex
2021/05/03 | 8028 | support/TeX4ht/source/tex4ht-info-html4.tex
@@ -288656,14 +288641,14 @@
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.amd64-freebsd.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.amd64-netbsd.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.armhf-linux.r65257.tar.xz
-2023/01/09 | 354808 | systems/texlive/tlnet/archive/bibcop.doc.r65489.tar.xz
+2023/01/11 | 354964 | systems/texlive/tlnet/archive/bibcop.doc.r65505.tar.xz
2022/12/13 | 336 | systems/texlive/tlnet/archive/bibcop.i386-cygwin.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.i386-freebsd.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.i386-linux.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.i386-netbsd.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.i386-solaris.r65257.tar.xz
-2023/01/09 | 6164 | systems/texlive/tlnet/archive/bibcop.r65489.tar.xz
-2023/01/09 | 5584 | systems/texlive/tlnet/archive/bibcop.source.r65489.tar.xz
+2023/01/11 | 6352 | systems/texlive/tlnet/archive/bibcop.r65505.tar.xz
+2023/01/11 | 5620 | systems/texlive/tlnet/archive/bibcop.source.r65505.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.universal-darwin.r65257.tar.xz
2022/12/13 | 676 | systems/texlive/tlnet/archive/bibcop.win32.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.x86_64-cygwin.r65257.tar.xz
@@ -289861,7 +289846,7 @@
2020/03/07 | 380 | systems/texlive/tlnet/archive/collection-langspanish.r54141.tar.xz
2023/01/02 | 6804 | systems/texlive/tlnet/archive/collection-latexextra.r65429.tar.xz
2022/06/10 | 700 | systems/texlive/tlnet/archive/collection-latex.r63515.tar.xz
-2022/06/12 | 736 | systems/texlive/tlnet/archive/collection-latexrecommended.r63547.tar.xz
+2023/01/11 | 744 | systems/texlive/tlnet/archive/collection-latexrecommended.r65512.tar.xz
2023/01/03 | 964 | systems/texlive/tlnet/archive/collection-luatex.r65441.tar.xz
2022/12/20 | 1644 | systems/texlive/tlnet/archive/collection-mathscience.r65312.tar.xz
2022/11/01 | 556 | systems/texlive/tlnet/archive/collection-metapost.r64878.tar.xz
@@ -294845,9 +294830,9 @@
2019/02/28 | 1392 | systems/texlive/tlnet/archive/luarandom.r49419.tar.xz
2022/12/28 | 115012 | systems/texlive/tlnet/archive/luaset.doc.r65376.tar.xz
2022/12/28 | 1544 | systems/texlive/tlnet/archive/luaset.r65376.tar.xz
-2019/02/28 | 224504 | systems/texlive/tlnet/archive/luasseq.doc.r37877.tar.xz
-2019/02/28 | 10232 | systems/texlive/tlnet/archive/luasseq.r37877.tar.xz
-2019/02/28 | 10964 | systems/texlive/tlnet/archive/luasseq.source.r37877.tar.xz
+2023/01/11 | 146972 | systems/texlive/tlnet/archive/luasseq.doc.r65511.tar.xz
+2023/01/11 | 10276 | systems/texlive/tlnet/archive/luasseq.r65511.tar.xz
+2023/01/11 | 11388 | systems/texlive/tlnet/archive/luasseq.source.r65511.tar.xz
2019/02/28 | 171144 | systems/texlive/tlnet/archive/luatex85.doc.r41456.tar.xz
2019/02/28 | 1740 | systems/texlive/tlnet/archive/luatex85.r41456.tar.xz
2019/02/28 | 3788 | systems/texlive/tlnet/archive/luatex85.source.r41456.tar.xz
@@ -295190,8 +295175,8 @@
2022/03/02 | 12372 | systems/texlive/tlnet/archive/mattens.source.r62326.tar.xz
2019/02/28 | 60212 | systems/texlive/tlnet/archive/maybemath.doc.r15878.tar.xz
2019/02/28 | 1520 | systems/texlive/tlnet/archive/maybemath.r15878.tar.xz
-2022/12/28 | 79408 | systems/texlive/tlnet/archive/maze.doc.r65374.tar.xz
-2022/12/28 | 1284 | systems/texlive/tlnet/archive/maze.r65374.tar.xz
+2023/01/11 | 182560 | systems/texlive/tlnet/archive/maze.doc.r65508.tar.xz
+2023/01/11 | 1376 | systems/texlive/tlnet/archive/maze.r65508.tar.xz
2019/02/28 | 121432 | systems/texlive/tlnet/archive/mcaption.doc.r15878.tar.xz
2019/02/28 | 1744 | systems/texlive/tlnet/archive/mcaption.r15878.tar.xz
2019/02/28 | 6548 | systems/texlive/tlnet/archive/mcaption.source.r15878.tar.xz
@@ -296172,9 +296157,9 @@
2022/09/23 | 1608828 | systems/texlive/tlnet/archive/nwejm.doc.r64462.tar.xz
2022/09/23 | 4089760 | systems/texlive/tlnet/archive/nwejm.r64462.tar.xz
2022/09/23 | 49840 | systems/texlive/tlnet/archive/nwejm.source.r64462.tar.xz
-2022/09/23 | 8210524 | systems/texlive/tlnet/archive/oberdiek.doc.r64463.tar.xz
-2022/09/23 | 40704 | systems/texlive/tlnet/archive/oberdiek.r64463.tar.xz
-2022/09/23 | 108452 | systems/texlive/tlnet/archive/oberdiek.source.r64463.tar.xz
+2023/01/11 | 8045908 | systems/texlive/tlnet/archive/oberdiek.doc.r65514.tar.xz
+2023/01/11 | 40056 | systems/texlive/tlnet/archive/oberdiek.r65514.tar.xz
+2023/01/11 | 106532 | systems/texlive/tlnet/archive/oberdiek.source.r65514.tar.xz
2022/01/24 | 261448 | systems/texlive/tlnet/archive/objectz.doc.r61719.tar.xz
2022/01/24 | 9724 | systems/texlive/tlnet/archive/objectz.r61719.tar.xz
2022/01/24 | 15088 | systems/texlive/tlnet/archive/objectz.source.r61719.tar.xz
@@ -296526,6 +296511,9 @@
2019/02/28 | 336 | systems/texlive/tlnet/archive/pdfbook2.x86_64-linux.r37537.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/pdfbook2.x86_64-solaris.r37537.tar.xz
2022/09/23 | 317332 | systems/texlive/tlnet/archive/pdfcol.doc.r64469.tar.xz
+2023/01/11 | 310520 | systems/texlive/tlnet/archive/pdfcolfoot.doc.r65512.tar.xz
+2023/01/11 | 1968 | systems/texlive/tlnet/archive/pdfcolfoot.r65512.tar.xz
+2023/01/11 | 5488 | systems/texlive/tlnet/archive/pdfcolfoot.source.r65512.tar.xz
2019/11/25 | 468 | systems/texlive/tlnet/archive/pdfcolmk.doc.r52912.tar.xz
2019/11/25 | 1212 | systems/texlive/tlnet/archive/pdfcolmk.r52912.tar.xz
2022/09/23 | 2780 | systems/texlive/tlnet/archive/pdfcol.r64469.tar.xz
@@ -297204,8 +297192,8 @@
2023/01/03 | 1251096 | systems/texlive/tlnet/archive/profcollege.r65437.tar.xz
2022/04/27 | 134096 | systems/texlive/tlnet/archive/proflabo.doc.r63147.tar.xz
2022/04/27 | 2748 | systems/texlive/tlnet/archive/proflabo.r63147.tar.xz
-2023/01/04 | 1617292 | systems/texlive/tlnet/archive/proflycee.doc.r65449.tar.xz
-2023/01/04 | 27232 | systems/texlive/tlnet/archive/proflycee.r65449.tar.xz
+2023/01/11 | 1622868 | systems/texlive/tlnet/archive/proflycee.doc.r65509.tar.xz
+2023/01/11 | 27396 | systems/texlive/tlnet/archive/proflycee.r65509.tar.xz
2019/02/28 | 49880 | systems/texlive/tlnet/archive/program.doc.r44214.tar.xz
2019/02/28 | 11780 | systems/texlive/tlnet/archive/program.r44214.tar.xz
2019/02/28 | 86236 | systems/texlive/tlnet/archive/progressbar.doc.r33822.tar.xz
@@ -297918,8 +297906,8 @@
2019/02/28 | 4116 | systems/texlive/tlnet/archive/reotex.r34924.tar.xz
2019/02/28 | 1216 | systems/texlive/tlnet/archive/repeatindex.doc.r24305.tar.xz
2019/02/28 | 1904 | systems/texlive/tlnet/archive/repeatindex.r24305.tar.xz
-2022/07/09 | 1392744 | systems/texlive/tlnet/archive/repere.doc.r63836.tar.xz
-2022/07/09 | 24036 | systems/texlive/tlnet/archive/repere.r63836.tar.xz
+2023/01/11 | 638816 | systems/texlive/tlnet/archive/repere.doc.r65506.tar.xz
+2023/01/11 | 25704 | systems/texlive/tlnet/archive/repere.r65506.tar.xz
2020/09/26 | 426068 | systems/texlive/tlnet/archive/repltext.doc.r56433.tar.xz
2020/09/26 | 1412 | systems/texlive/tlnet/archive/repltext.r56433.tar.xz
2020/09/26 | 7104 | systems/texlive/tlnet/archive/repltext.source.r56433.tar.xz
@@ -298176,8 +298164,8 @@
2022/04/05 | 367028 | systems/texlive/tlnet/archive/scontents.doc.r62902.tar.xz
2022/04/05 | 8172 | systems/texlive/tlnet/archive/scontents.r62902.tar.xz
2022/04/05 | 29640 | systems/texlive/tlnet/archive/scontents.source.r62902.tar.xz
-2023/01/08 | 822660 | systems/texlive/tlnet/archive/scrabble.doc.r65485.tar.xz
-2023/01/08 | 2904 | systems/texlive/tlnet/archive/scrabble.r65485.tar.xz
+2023/01/11 | 883952 | systems/texlive/tlnet/archive/scrabble.doc.r65507.tar.xz
+2023/01/11 | 3072 | systems/texlive/tlnet/archive/scrabble.r65507.tar.xz
2021/09/27 | 193772 | systems/texlive/tlnet/archive/scrambledenvs.doc.r60615.tar.xz
2021/09/27 | 2408 | systems/texlive/tlnet/archive/scrambledenvs.r60615.tar.xz
2021/09/27 | 5752 | systems/texlive/tlnet/archive/scrambledenvs.source.r60615.tar.xz
@@ -298213,9 +298201,9 @@
2019/02/28 | 1565692 | systems/texlive/tlnet/archive/sduthesis.doc.r41401.tar.xz
2019/02/28 | 1230616 | systems/texlive/tlnet/archive/sduthesis.r41401.tar.xz
2019/02/28 | 24124 | systems/texlive/tlnet/archive/sduthesis.source.r41401.tar.xz
-2022/11/24 | 1459868 | systems/texlive/tlnet/archive/se2thesis.doc.r65093.tar.xz
-2022/11/24 | 8140 | systems/texlive/tlnet/archive/se2thesis.r65093.tar.xz
-2022/11/24 | 21964 | systems/texlive/tlnet/archive/se2thesis.source.r65093.tar.xz
+2023/01/11 | 1382428 | systems/texlive/tlnet/archive/se2thesis.doc.r65510.tar.xz
+2023/01/11 | 7956 | systems/texlive/tlnet/archive/se2thesis.r65510.tar.xz
+2023/01/11 | 20560 | systems/texlive/tlnet/archive/se2thesis.source.r65510.tar.xz
2019/02/28 | 256480 | systems/texlive/tlnet/archive/secdot.doc.r20208.tar.xz
2019/02/28 | 1572 | systems/texlive/tlnet/archive/secdot.r20208.tar.xz
2022/01/31 | 445424 | systems/texlive/tlnet/archive/secnum.doc.r61813.tar.xz
@@ -299093,14 +299081,14 @@
2022/02/27 | 108804 | systems/texlive/tlnet/archive/tex4ht.amd64-freebsd.r62206.tar.xz
2022/02/27 | 87364 | systems/texlive/tlnet/archive/tex4ht.amd64-netbsd.r62220.tar.xz
2022/04/21 | 69948 | systems/texlive/tlnet/archive/tex4ht.armhf-linux.r63092.tar.xz
-2023/01/02 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r65428.tar.xz
+2023/01/11 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r65513.tar.xz
2022/03/01 | 58328 | systems/texlive/tlnet/archive/tex4ht.i386-cygwin.r62282.tar.xz
2022/02/27 | 93760 | systems/texlive/tlnet/archive/tex4ht.i386-freebsd.r62206.tar.xz
2022/02/27 | 91280 | systems/texlive/tlnet/archive/tex4ht.i386-linux.r62210.tar.xz
2022/02/27 | 76200 | systems/texlive/tlnet/archive/tex4ht.i386-netbsd.r62220.tar.xz
2022/02/27 | 83964 | systems/texlive/tlnet/archive/tex4ht.i386-solaris.r62206.tar.xz
-2023/01/02 | 976680 | systems/texlive/tlnet/archive/tex4ht.r65428.tar.xz
-2023/01/02 | 1298128 | systems/texlive/tlnet/archive/tex4ht.source.r65428.tar.xz
+2023/01/11 | 976872 | systems/texlive/tlnet/archive/tex4ht.r65513.tar.xz
+2023/01/11 | 1298532 | systems/texlive/tlnet/archive/tex4ht.source.r65513.tar.xz
2022/02/28 | 184748 | systems/texlive/tlnet/archive/tex4ht.universal-darwin.r62258.tar.xz
2022/02/27 | 57768 | systems/texlive/tlnet/archive/tex4ht.win32.r62199.tar.xz
2022/03/01 | 58016 | systems/texlive/tlnet/archive/tex4ht.x86_64-cygwin.r62279.tar.xz
@@ -299354,7 +299342,7 @@
2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r64356.tar.xz
-2023/01/10 | 424188 | systems/texlive/tlnet/archive/texlive-scripts.doc.r65498.tar.xz
+2023/01/11 | 424068 | systems/texlive/tlnet/archive/texlive-scripts.doc.r65504.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r53577.tar.xz
2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r53577.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r53577.tar.xz
@@ -299378,7 +299366,7 @@
2022/09/13 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r64356.tar.xz
-2023/01/10 | 113712 | systems/texlive/tlnet/archive/texlive-scripts.r65498.tar.xz
+2023/01/11 | 113700 | systems/texlive/tlnet/archive/texlive-scripts.r65504.tar.xz
2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz
2022/11/29 | 36264 | systems/texlive/tlnet/archive/texlive-scripts.win32.r65128.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz
@@ -301251,16 +301239,16 @@
2020/07/18 | 47816 | systems/texlive/tlnet/archive/zztex.doc.r55862.tar.xz
2020/07/18 | 101724 | systems/texlive/tlnet/archive/zztex.r55862.tar.xz
2022/07/17 | 124404 | systems/texlive/tlnet/install-tl
-2023/01/10 | 5835007 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2023/01/10 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2023/01/10 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2023/01/11 | 5834678 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2023/01/11 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2023/01/11 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2021/04/11 | 4945 | systems/texlive/tlnet/install-tl-windows.bat
-2023/01/10 | 20434720 | systems/texlive/tlnet/install-tl-windows.exe
-2023/01/10 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2023/01/10 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2023/01/10 | 25518541 | systems/texlive/tlnet/install-tl.zip
-2023/01/10 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2023/01/10 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2023/01/11 | 20434148 | systems/texlive/tlnet/install-tl-windows.exe
+2023/01/11 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2023/01/11 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2023/01/11 | 25518539 | systems/texlive/tlnet/install-tl.zip
+2023/01/11 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2023/01/11 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2022/04/03 | 1229 | systems/texlive/tlnet/README.md
2022/04/03 | 0 | systems/texlive/tlnet/TEXLIVE_2022
2022/02/28 | 7791 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
@@ -301270,7 +301258,7 @@
2022/02/28 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg
2022/10/09 | 49938 | systems/texlive/tlnet/tlpkg/installer/config.guess
2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt
-2023/01/09 | 7360 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+2023/01/10 | 7315 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/10/13 | 225403 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt
2020/04/15 | 2606592 | systems/texlive/tlnet/tlpkg/installer/curl/curl.exe
2017/04/16 | 2629 | systems/texlive/tlnet/tlpkg/installer/installer-options.txt
@@ -301313,12 +301301,12 @@
2021/05/16 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2021/12/21 | 5429 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2021/12/21 | 27582 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2023/01/10 | 18024481 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2023/01/10 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2023/01/11 | 18026066 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2023/01/11 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2022/04/18 | 86658 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2023/01/10 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2023/01/10 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2023/01/10 | 2444448 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2023/01/11 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2023/01/11 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2023/01/11 | 2446648 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2022/09/14 | 58922 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2022/10/04 | 42404 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2021/12/21 | 16130 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -311533,7 +311521,7 @@
2014/07/05 | 611 | systems/win32/yandy/README
2014/07/05 | 1004628 | systems/win32/yandy/yandy-src.tar.xz
2014/07/05 | 1012416 | systems/win32/yandy.zip
-2023/01/11 | 186 | timestamp
+2023/01/12 | 186 | timestamp
2002/08/26 | 61898 | usergrps/dante/antrag.pdf
2002/08/26 | 118217 | usergrps/dante/antrag.ps
2021/11/11 | 917 | usergrps/dante/dtk/doc/beispiel.bib
diff --git a/FILES.byname.gz b/FILES.byname.gz
index 0aec94f016..0e34cba8d2 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index 60057bd7a2..3babcb3e9f 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,184 +1,650 @@
+2023/01/11 | 976872 | systems/texlive/tlnet/archive/tex4ht.r65513.tar.xz
+2023/01/11 | 883952 | systems/texlive/tlnet/archive/scrabble.doc.r65507.tar.xz
+2023/01/11 | 87172 | macros/xetex/plain/unimath-plain-xetex.zip
+2023/01/11 | 816187 | macros/latex/contrib/sagetex.zip
+2023/01/11 | 8045908 | systems/texlive/tlnet/archive/oberdiek.doc.r65514.tar.xz
+2023/01/11 | 7956 | systems/texlive/tlnet/archive/se2thesis.r65510.tar.xz
+2023/01/11 | 744 | systems/texlive/tlnet/archive/collection-latexrecommended.r65512.tar.xz
+2023/01/11 | 65922 | macros/latex/contrib/sagetex/py-and-sty.dtx
+2023/01/11 | 638816 | systems/texlive/tlnet/archive/repere.doc.r65506.tar.xz
+2023/01/11 | 6352 | systems/texlive/tlnet/archive/bibcop.r65505.tar.xz
+2023/01/11 | 6093990 | install/fonts/musixtex-fonts.tds.zip
+2023/01/11 | 6070330 | fonts/musixtex-fonts.zip
+2023/01/11 | 5834678 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2023/01/11 | 57390 | macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdf
+2023/01/11 | 5620 | systems/texlive/tlnet/archive/bibcop.source.r65505.tar.xz
+2023/01/11 | 5488 | systems/texlive/tlnet/archive/pdfcolfoot.source.r65512.tar.xz
+2023/01/11 | 54632 | macros/latex/contrib/sagetex/sagetex.dtx
+2023/01/11 | 501661 | macros/latex/contrib/sagetex/sagetex.pdf
+2023/01/11 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2023/01/11 | 486 | macros/latex/contrib/sagetex/PKG-INFO
+2023/01/11 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2023/01/11 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2023/01/11 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2023/01/11 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2023/01/11 | 439967 | macros/latex/contrib/pythonimmediate.zip
+2023/01/11 | 424068 | systems/texlive/tlnet/archive/texlive-scripts.doc.r65504.tar.xz
+2023/01/11 | 4036399 | biblio/ctan-bibdata.zip
+2023/01/11 | 40056 | systems/texlive/tlnet/archive/oberdiek.r65514.tar.xz
+2023/01/11 | 3642691 | biblio/ctan-bibdata/ctan.pdf
+2023/01/11 | 354964 | systems/texlive/tlnet/archive/bibcop.doc.r65505.tar.xz
+2023/01/11 | 3309241 | dviware/dvisvgm.zip
+2023/01/11 | 3131 | macros/musixtex/README
+2023/01/11 | 310520 | systems/texlive/tlnet/archive/pdfcolfoot.doc.r65512.tar.xz
+2023/01/11 | 3072 | systems/texlive/tlnet/archive/scrabble.r65507.tar.xz
+2023/01/11 | 29545 | macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex
+2023/01/11 | 277744 | macros/latex/contrib/sagetex/example.pdf
+2023/01/11 | 2759921 | biblio/ctan-bibdata/ctan.bib
+2023/01/11 | 27396 | systems/texlive/tlnet/archive/proflycee.r65509.tar.xz
+2023/01/11 | 25704 | systems/texlive/tlnet/archive/repere.r65506.tar.xz
+2023/01/11 | 25518539 | systems/texlive/tlnet/install-tl.zip
+2023/01/11 | 2535893 | install/macros/musixtex.tds.zip
+2023/01/11 | 2520 | fonts/musixtex-fonts/README
+2023/01/11 | 2496415 | macros/musixtex.zip
+2023/01/11 | 2446648 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2023/01/11 | 2379 | fonts/musixtex-fonts/map/musix.map
+2023/01/11 | 20560 | systems/texlive/tlnet/archive/se2thesis.source.r65510.tar.xz
+2023/01/11 | 20434148 | systems/texlive/tlnet/install-tl-windows.exe
+2023/01/11 | 197560 | macros/musixtex/tex/musixtex.tex
+2023/01/11 | 1968 | systems/texlive/tlnet/archive/pdfcolfoot.r65512.tar.xz
+2023/01/11 | 182560 | systems/texlive/tlnet/archive/maze.doc.r65508.tar.xz
+2023/01/11 | 18026066 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2023/01/11 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2023/01/11 | 1622868 | systems/texlive/tlnet/archive/proflycee.doc.r65509.tar.xz
+2023/01/11 | 1550 | macros/latex/contrib/diffcoeff/README.txt
+2023/01/11 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2023/01/11 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2023/01/11 | 146972 | systems/texlive/tlnet/archive/luasseq.doc.r65511.tar.xz
+2023/01/11 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2023/01/11 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2023/01/11 | 1438052 | macros/latex/contrib/diffcoeff.zip
+2023/01/11 | 1382428 | systems/texlive/tlnet/archive/se2thesis.doc.r65510.tar.xz
+2023/01/11 | 1376 | systems/texlive/tlnet/archive/maze.r65508.tar.xz
+2023/01/11 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r65513.tar.xz
+2023/01/11 | 1298532 | systems/texlive/tlnet/archive/tex4ht.source.r65513.tar.xz
+2023/01/11 | 12938 | macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex
+2023/01/11 | 11388 | systems/texlive/tlnet/archive/luasseq.source.r65511.tar.xz
+2023/01/11 | 113700 | systems/texlive/tlnet/archive/texlive-scripts.r65504.tar.xz
+2023/01/11 | 106532 | systems/texlive/tlnet/archive/oberdiek.source.r65514.tar.xz
+2023/01/11 | 10276 | systems/texlive/tlnet/archive/luasseq.r65511.tar.xz
+2023/01/10 | 9964 | dviware/dvisvgm/src/utility.cpp
2023/01/10 | 979819 | graphics/pgf/contrib/scrabble.zip
+2023/01/10 | 9740 | dviware/dvisvgm/src/EmSpecialHandler.cpp
+2023/01/10 | 9726 | dviware/dvisvgm/src/GraphicsPathParser.hpp
2023/01/10 | 969905 | graphics/metapost/contrib/macros/repere/repere-doc.pdf
2023/01/10 | 968 | macros/latex/contrib/proflycee/doc/cap.csv
+2023/01/10 | 9663 | dviware/dvisvgm/src/HyperlinkManager.cpp
2023/01/10 | 958 | biblio/bibtex/utils/bibcop/bibcop.1
+2023/01/10 | 9574 | dviware/dvisvgm/tests/PSInterpreterTest.cpp
2023/01/10 | 950 | macros/latex/contrib/ntgclass/README
2023/01/10 | 938 | macros/latex/contrib/oberdiek/oberdiek-source.bib
+2023/01/10 | 9316 | dviware/dvisvgm/src/FontMap.cpp
+2023/01/10 | 9256 | dviware/dvisvgm/src/Subfont.cpp
+2023/01/10 | 9254 | dviware/dvisvgm/src/options.xml
2023/01/10 | 9210 | graphics/pgf/contrib/scrabble/doc/Scrabble-doc-en.tex
+2023/01/10 | 89 | dviware/dvisvgm/libs/boost/Makefile.am
2023/01/10 | 885248 | systems/texlive/tlnet/archive/mcf2graph.doc.r65499.tar.xz
2023/01/10 | 88479 | macros/latex/contrib/ntgclass/brief.dtx
+2023/01/10 | 8749 | dviware/dvisvgm/src/XMLParser.cpp
2023/01/10 | 863 | macros/latex/contrib/se2thesis/README.md
2023/01/10 | 858132 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
+2023/01/10 | 8515 | dviware/dvisvgm/src/MapLine.cpp
+2023/01/10 | 8452 | dviware/dvisvgm/tests/PDFParserTest.cpp
+2023/01/10 | 8439 | dviware/dvisvgm/tests/CommandLineTest.cpp
+2023/01/10 | 8424 | dviware/dvisvgm/configure.ac
+2023/01/10 | 8405 | support/TeX4ht/source/mktex4ht-cnf.tex
+2023/01/10 | 8354 | dviware/dvisvgm/src/TriangularPatch.cpp
+2023/01/10 | 8335 | dviware/dvisvgm/src/utility.hpp
+2023/01/10 | 8332 | dviware/dvisvgm/tests/MatrixTest.cpp
+2023/01/10 | 8332 | dviware/dvisvgm/src/CMapReader.cpp
+2023/01/10 | 8309 | dviware/dvisvgm/src/CLCommandLine.cpp
+2023/01/10 | 8299 | dviware/dvisvgm/src/BoundingBox.cpp
+2023/01/10 | 8202 | dviware/dvisvgm/src/DVIReader.hpp
+2023/01/10 | 815973 | macros/latex/contrib/diffcoeff/diffcoeff.pdf
+2023/01/10 | 7920 | dviware/dvisvgm/src/CommandLine.hpp
+2023/01/10 | 784 | dviware/dvisvgm/Makefile.am
+2023/01/10 | 7803 | dviware/dvisvgm/tests/LengthTest.cpp
+2023/01/10 | 765490 | macros/latex/contrib/diffcoeff/diffcoeff4.pdf
+2023/01/10 | 755 | macros/latex/contrib/sagetex/LICENSE
+2023/01/10 | 7509 | dviware/dvisvgm/src/Message.cpp
+2023/01/10 | 7499 | dviware/dvisvgm/tests/StreamInputBufferTest.cpp
+2023/01/10 | 7489 | dviware/dvisvgm/tests/EmSpecialTest.cpp
2023/01/10 | 736 | macros/latex/contrib/proflycee/doc/perroquet.csv
+2023/01/10 | 7315 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+2023/01/10 | 7230 | dviware/dvisvgm/tests/GraphicsPathTest.cpp
+2023/01/10 | 72193 | dviware/dvisvgm/doc/dvisvgm.1
+2023/01/10 | 718 | dviware/dvisvgm/doc/conf-dblatex-man.xsl
2023/01/10 | 716013 | graphics/metapost/contrib/macros/repere.zip
+2023/01/10 | 7138 | dviware/dvisvgm/src/FontWriter.cpp
+2023/01/10 | 7119 | dviware/dvisvgm/src/Makefile.am
+2023/01/10 | 7118 | dviware/dvisvgm/src/ImageToSVG.cpp
+2023/01/10 | 7111 | dviware/dvisvgm/src/PSInterpreter.hpp
+2023/01/10 | 7073 | dviware/dvisvgm/src/TFM.cpp
+2023/01/10 | 707079 | dviware/dvisvgm/configure
+2023/01/10 | 7066 | dviware/dvisvgm/tests/TriangularPatchTest.cpp
+2023/01/10 | 7053 | dviware/dvisvgm/src/RangeMap.cpp
2023/01/10 | 7017 | macros/latex/contrib/maze/maze.tex
+2023/01/10 | 6942 | dviware/dvisvgm/tests/ColorTest.cpp
+2023/01/10 | 688 | dviware/dvisvgm/src/ttf/Makefile.am
+2023/01/10 | 6846 | dviware/dvisvgm/src/optimizer/TransformSimplifier.cpp
2023/01/10 | 683 | graphics/pgf/contrib/scrabble/README.md
+2023/01/10 | 6779 | dviware/dvisvgm/src/Calculator.cpp
+2023/01/10 | 6760 | dviware/dvisvgm/src/optimizer/GroupCollapser.cpp
+2023/01/10 | 6748 | dviware/dvisvgm/aminclude_static.am
2023/01/10 | 67243 | macros/latex/contrib/ntgclass/brief-sample.pdf
+2023/01/10 | 6685 | dviware/dvisvgm/src/optimizer/AttributeExtractor.cpp
+2023/01/10 | 66397 | dviware/dvisvgm/src/fonts/StandardSymbolsPS.cff.cpp
2023/01/10 | 658 | macros/latex/contrib/ntgclass/CATALOG
+2023/01/10 | 6583 | dviware/dvisvgm/tests/UtilityTest.cpp
+2023/01/10 | 6570 | dviware/dvisvgm/src/VFReader.cpp
+2023/01/10 | 65338 | dviware/dvisvgm/doc/dvisvgm.txt.in
+2023/01/10 | 6531 | dviware/dvisvgm/src/CLOption.hpp
2023/01/10 | 6527 | macros/latex/contrib/oberdiek/oberdiek-bundle.bib
+2023/01/10 | 6521 | dviware/dvisvgm/tests/SVGOutputTest.cpp
+2023/01/10 | 6511 | dviware/dvisvgm/src/SpecialManager.cpp
+2023/01/10 | 6500 | dviware/dvisvgm/src/PSPattern.cpp
2023/01/10 | 6476 | macros/latex/contrib/se2thesis/se2thesis.tex
+2023/01/10 | 6475 | dviware/dvisvgm/src/SVGOutput.cpp
2023/01/10 | 64228 | macros/latex/contrib/se2thesis/se2thesis.dtx
+2023/01/10 | 6392 | dviware/dvisvgm/tests/RangeMapTest.cpp
+2023/01/10 | 6354 | dviware/dvisvgm/tests/BezierTest.cpp
+2023/01/10 | 622422 | support/TeX4ht/source/tex4ht-html4.tex
+2023/01/10 | 6180 | dviware/dvisvgm/tests/GraphicsPathParserTest.cpp
+2023/01/10 | 61535 | dviware/dvisvgm/aclocal.m4
2023/01/10 | 6120 | systems/texlive/tlnet/archive/langnames.source.r65502.tar.xz
-2023/01/10 | 5835007 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2023/01/10 | 6113 | dviware/dvisvgm/src/Terminal.cpp
+2023/01/10 | 6084 | dviware/dvisvgm/tests/UnicodeTest.cpp
+2023/01/10 | 6078 | dviware/dvisvgm/tests/BoundingBoxTest.cpp
+2023/01/10 | 5940 | dviware/dvisvgm/src/ZLibOutputStream.hpp
+2023/01/10 | 5862 | dviware/dvisvgm/m4/ax_gcc_builtin.m4
+2023/01/10 | 5850 | dviware/dvisvgm/tests/EllipticalArcTest.cpp
+2023/01/10 | 5841 | dviware/dvisvgm/src/PDFParser.hpp
+2023/01/10 | 5835 | dviware/dvisvgm/README
+2023/01/10 | 5814 | dviware/dvisvgm/src/SVGCharPathHandler.cpp
+2023/01/10 | 5812 | dviware/dvisvgm/src/MetafontWrapper.cpp
+2023/01/10 | 5795 | dviware/dvisvgm/tests/MapLineTest.cpp
+2023/01/10 | 56349 | dviware/dvisvgm/src/Makefile.in
+2023/01/10 | 5630 | dviware/dvisvgm/src/DVIToSVG.hpp
2023/01/10 | 558 | graphics/metapost/contrib/macros/repere/README.md
+2023/01/10 | 5568 | dviware/dvisvgm/tests/HashFunctionTest.cpp
+2023/01/10 | 5522 | dviware/dvisvgm/src/ttf/CmapTable.cpp
2023/01/10 | 543573 | macros/latex/contrib/oberdiek/resizegather.pdf
+2023/01/10 | 5392 | dviware/dvisvgm/tests/SplittedCharInputBufferTest.cpp
+2023/01/10 | 5330 | dviware/dvisvgm/src/PageSize.cpp
2023/01/10 | 529 | macros/latex/contrib/proflycee/doc/testscript.py
+2023/01/10 | 5299 | dviware/dvisvgm/src/CMapManager.cpp
+2023/01/10 | 5297 | dviware/dvisvgm/tests/PageRagesTest.cpp
+2023/01/10 | 5289 | dviware/dvisvgm/src/TensorProductPatch.hpp
2023/01/10 | 525983 | macros/latex/contrib/oberdiek/bmpsize.pdf
+2023/01/10 | 524 | dviware/dvisvgm/src/fonts/Makefile.am
+2023/01/10 | 5248 | dviware/dvisvgm/src/BasicDVIReader.hpp
+2023/01/10 | 52347 | dviware/dvisvgm/src/PsSpecialHandler.cpp
2023/01/10 | 520790 | graphics/pgf/contrib/scrabble/doc/Scrabble-doc-fr.pdf
+2023/01/10 | 5186 | macros/latex/contrib/sagetex/sagetex.ins
+2023/01/10 | 5180 | dviware/dvisvgm/src/RangeMap.hpp
+2023/01/10 | 5168 | dviware/dvisvgm/src/PDFHandler.hpp
+2023/01/10 | 512 | macros/latex/contrib/sagetex/CONTRIBUTORS
2023/01/10 | 5100 | biblio/bibtex/utils/bibcop/bibcop-logo.pdf
-2023/01/10 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2023/01/10 | 5070 | dviware/dvisvgm/tests/FontCacheTest.cpp
+2023/01/10 | 5059 | dviware/dvisvgm/src/InputBuffer.hpp
+2023/01/10 | 5021 | dviware/dvisvgm/src/StreamReader.cpp
+2023/01/10 | 4980 | dviware/dvisvgm/tests/CMapTest.cpp
+2023/01/10 | 4953 | dviware/dvisvgm/src/ttf/TTFAutohint.cpp
+2023/01/10 | 4926 | dviware/dvisvgm/tests/PapersizeSpecialTest.cpp
+2023/01/10 | 4895 | dviware/dvisvgm/src/ttf/TTFWriter.hpp
+2023/01/10 | 4889 | dviware/dvisvgm/src/SVGElement.cpp
+2023/01/10 | 4889 | dviware/dvisvgm/src/Bitmap.cpp
2023/01/10 | 481429 | graphics/pgf/contrib/scrabble/doc/Scrabble-doc-en.pdf
+2023/01/10 | 479 | dviware/dvisvgm/libs/boost/vectorstream.hpp
+2023/01/10 | 4799 | dviware/dvisvgm/tests/normalize.xsl
+2023/01/10 | 4798 | dviware/dvisvgm/src/DVIToSVGActions.hpp
+2023/01/10 | 4778 | dviware/dvisvgm/src/Color.hpp
+2023/01/10 | 4772 | dviware/dvisvgm/src/SVGTree.hpp
+2023/01/10 | 4761 | dviware/dvisvgm/src/ToUnicodeMap.cpp
+2023/01/10 | 4738 | dviware/dvisvgm/src/optimizer/SVGOptimizer.cpp
+2023/01/10 | 4735 | dviware/dvisvgm/src/XXHashFunction.hpp
+2023/01/10 | 4728 | dviware/dvisvgm/src/Length.cpp
+2023/01/10 | 4709 | dviware/dvisvgm/src/ttf/TTFTable.hpp
2023/01/10 | 470701 | macros/latex/contrib/ntgclass/ntgclass.pdf
+2023/01/10 | 4702 | dviware/dvisvgm/tests/ColorSpecialTest.cpp
2023/01/10 | 46934 | macros/latex/contrib/oberdiek/pdfrender.dtx
+2023/01/10 | 4659 | dviware/dvisvgm/src/ImageToSVG.hpp
+2023/01/10 | 465277 | info/biblio/texbook2.bib
+2023/01/10 | 4645 | dviware/dvisvgm/tests/GFGlyphTracerTest.cpp
2023/01/10 | 463 | macros/luatex/latex/luasseq/README
+2023/01/10 | 4629 | dviware/dvisvgm/src/DvisvgmSpecialHandler.hpp
+2023/01/10 | 4623 | dviware/dvisvgm/src/SourceInput.cpp
+2023/01/10 | 4611 | dviware/dvisvgm/config.h.in
+2023/01/10 | 4595 | dviware/dvisvgm/src/ierrors.h
+2023/01/10 | 4590 | dviware/dvisvgm/src/FontManager.hpp
2023/01/10 | 458 | macros/latex/contrib/pdfcolfoot/README.md
-2023/01/10 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2023/01/10 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2023/01/10 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2023/01/10 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2023/01/10 | 4533 | dviware/dvisvgm/src/SVGCharHandler.hpp
+2023/01/10 | 452 | dviware/dvisvgm/tests/data/Makefile.am
+2023/01/10 | 4502 | dviware/dvisvgm/src/SpecialActions.hpp
+2023/01/10 | 4494 | dviware/dvisvgm/src/PSPreviewFilter.cpp
+2023/01/10 | 4491 | dviware/dvisvgm/src/JFM.cpp
2023/01/10 | 44908 | macros/latex/contrib/maze/mazes-picture.png
2023/01/10 | 448 | systems/texlive/tlnet/archive/mcf2graph.r65499.tar.xz
-2023/01/10 | 424188 | systems/texlive/tlnet/archive/texlive-scripts.doc.r65498.tar.xz
+2023/01/10 | 4475 | dviware/dvisvgm/src/CMap.hpp
+2023/01/10 | 4460 | dviware/dvisvgm/tests/StringMatcherTest.cpp
+2023/01/10 | 4232 | dviware/dvisvgm/src/Pair.hpp
+2023/01/10 | 4227 | dviware/dvisvgm/src/Matrix.hpp
+2023/01/10 | 4223 | dviware/dvisvgm/tests/CMapReaderTest.cpp
2023/01/10 | 4213 | macros/latex/contrib/ntgclass/ntgclass.ins
+2023/01/10 | 4213 | dviware/dvisvgm/src/optimizer/DependencyGraph.hpp
+2023/01/10 | 4203 | dviware/dvisvgm/src/SignalHandler.cpp
+2023/01/10 | 4193 | dviware/dvisvgm/tests/PairTest.cpp
+2023/01/10 | 4184 | dviware/dvisvgm/src/InputReader.hpp
+2023/01/10 | 4178 | dviware/dvisvgm/tests/StreamReaderTest.cpp
+2023/01/10 | 4166 | dviware/dvisvgm/src/Bitmap.hpp
+2023/01/10 | 4160 | dviware/dvisvgm/src/optimizer/TextSimplifier.cpp
+2023/01/10 | 41393 | dviware/dvisvgm/NEWS
+2023/01/10 | 4138 | dviware/dvisvgm/src/Length.hpp
2023/01/10 | 413784 | macros/latex/contrib/oberdiek/pdfrender.pdf
+2023/01/10 | 4118 | dviware/dvisvgm/src/ColorSpecialHandler.cpp
2023/01/10 | 41075 | macros/luatex/latex/luasseq/luasseq.dtx
-2023/01/10 | 4036465 | biblio/ctan-bibdata.zip
+2023/01/10 | 4059 | dviware/dvisvgm/src/PSPattern.hpp
+2023/01/10 | 4056 | dviware/dvisvgm/src/Ghostscript.hpp
+2023/01/10 | 4040 | dviware/dvisvgm/src/PapersizeSpecialHandler.cpp
+2023/01/10 | 4034 | dviware/dvisvgm/tests/JFMReaderTest.cpp
+2023/01/10 | 4012 | dviware/dvisvgm/src/ttf/GlyfTable.hpp
+2023/01/10 | 4004 | dviware/dvisvgm/tests/FilePathTest.cpp
+2023/01/10 | 3982 | dviware/dvisvgm/src/HyperlinkManager.hpp
+2023/01/10 | 3970 | dviware/dvisvgm/src/optimizer/ClipPathReassigner.cpp
+2023/01/10 | 3970 | dviware/dvisvgm/src/BoundingBox.hpp
+2023/01/10 | 3967 | dviware/dvisvgm/src/GFReader.hpp
+2023/01/10 | 3959 | dviware/dvisvgm/src/SVGCharTspanTextHandler.cpp
+2023/01/10 | 3939 | dviware/dvisvgm/src/ttf/TTFTable.cpp
+2023/01/10 | 3935 | dviware/dvisvgm/src/EncFile.cpp
+2023/01/10 | 3927 | dviware/dvisvgm/src/NumericRanges.hpp
+2023/01/10 | 3914 | info/biblio/texbook3.ltx
+2023/01/10 | 3899 | dviware/dvisvgm/tests/FileSystemTest.cpp
+2023/01/10 | 3875 | dviware/dvisvgm/tests/FontManagerTest.cpp
2023/01/10 | 387245 | macros/latex/contrib/oberdiek/fibnum.pdf
+2023/01/10 | 3832 | dviware/dvisvgm/src/Opacity.hpp
+2023/01/10 | 3801 | dviware/dvisvgm/tests/SpecialManagerTest.cpp
+2023/01/10 | 3801 | dviware/dvisvgm/src/SVGOutput.hpp
+2023/01/10 | 3799 | dviware/dvisvgm/src/MiKTeXCom.cpp
+2023/01/10 | 3788 | dviware/dvisvgm/src/InputBuffer.cpp
+2023/01/10 | 3785 | dviware/dvisvgm/tests/VectorIteratorTest.cpp
+2023/01/10 | 3776 | dviware/dvisvgm/src/EPSFile.cpp
2023/01/10 | 377482 | macros/latex/contrib/oberdiek/thepdfnumber.pdf
+2023/01/10 | 3768 | dviware/dvisvgm/src/StreamWriter.cpp
2023/01/10 | 3756 | macros/latex/contrib/maze/maze.sty
-2023/01/10 | 3642257 | biblio/ctan-bibdata/ctan.pdf
+2023/01/10 | 3731 | dviware/dvisvgm/src/PageRanges.cpp
+2023/01/10 | 3692 | dviware/dvisvgm/doc/Makefile.am
+2023/01/10 | 3688 | dviware/dvisvgm/tests/CalculatorTest.cpp
+2023/01/10 | 3688 | dviware/dvisvgm/src/ttf/HeadTable.cpp
+2023/01/10 | 3676 | dviware/dvisvgm/src/SVGCharHandler.cpp
+2023/01/10 | 3674 | dviware/dvisvgm/src/ttf/NameTable.cpp
+2023/01/10 | 36547 | dviware/dvisvgm/Makefile.in
+2023/01/10 | 3629 | dviware/dvisvgm/tests/ShadingPatchTest.cpp
+2023/01/10 | 3623 | dviware/dvisvgm/src/HtmlSpecialHandler.cpp
+2023/01/10 | 3610 | dviware/dvisvgm/src/GFTracer.cpp
+2023/01/10 | 3609 | dviware/dvisvgm/src/HashFunction.cpp
+2023/01/10 | 3603 | dviware/dvisvgm/src/Opacity.cpp
2023/01/10 | 360100 | biblio/bibtex/utils/bibcop.zip
2023/01/10 | 359279 | macros/latex/contrib/oberdiek/tabularht.pdf
2023/01/10 | 358510 | macros/latex/contrib/oberdiek/setouterhbox.pdf
+2023/01/10 | 3541 | dviware/dvisvgm/src/Message.hpp
+2023/01/10 | 3537 | dviware/dvisvgm/src/CMap.cpp
+2023/01/10 | 3521 | dviware/dvisvgm/src/Subfont.hpp
+2023/01/10 | 3519 | dviware/dvisvgm/src/TFM.hpp
+2023/01/10 | 3495 | dviware/dvisvgm/src/FontEngine.hpp
+2023/01/10 | 3488 | dviware/dvisvgm/src/FontEncoding.cpp
2023/01/10 | 348841 | macros/latex/contrib/oberdiek/pdfcolparallel.pdf
2023/01/10 | 347356 | macros/latex/contrib/oberdiek/engord.pdf
2023/01/10 | 346519 | macros/latex/contrib/oberdiek/eolgrab.pdf
2023/01/10 | 345318 | macros/latex/contrib/oberdiek/rotchiffre.pdf
2023/01/10 | 344769 | macros/latex/contrib/oberdiek/iflang.pdf
+2023/01/10 | 3441 | dviware/dvisvgm/src/FontMetrics.hpp
+2023/01/10 | 3439 | dviware/dvisvgm/src/VectorIterator.hpp
+2023/01/10 | 3434 | dviware/dvisvgm/src/FilePath.hpp
2023/01/10 | 343290 | biblio/bibtex/utils/bibcop/bibcop.pdf
2023/01/10 | 342207 | macros/latex/contrib/ntgclass/brief.pdf
+2023/01/10 | 3420 | dviware/dvisvgm/tests/StreamWriterTest.cpp
+2023/01/10 | 3410 | dviware/dvisvgm/src/Directory.cpp
2023/01/10 | 339853 | macros/latex/contrib/se2thesis/se2thesis.pdf
+2023/01/10 | 3396 | dviware/dvisvgm/src/Bezier.hpp
2023/01/10 | 337853 | macros/latex/contrib/oberdiek/pdfcrypt.pdf
2023/01/10 | 336518 | macros/latex/contrib/oberdiek/pdfcolparcolumns.pdf
2023/01/10 | 336473 | macros/latex/contrib/oberdiek/protecteddef.pdf
+2023/01/10 | 3363 | dviware/dvisvgm/tests/SubfontTest.cpp
+2023/01/10 | 33531 | dviware/dvisvgm/libs/brotli/Makefile.in
+2023/01/10 | 3348 | dviware/dvisvgm/tests/TFMReaderTest.cpp
2023/01/10 | 333750 | macros/latex/contrib/oberdiek/holtxdoc.pdf
2023/01/10 | 332198 | macros/latex/contrib/oberdiek/enparen.pdf
+2023/01/10 | 33210 | dviware/dvisvgm/tests/DVIReaderTest.cpp
2023/01/10 | 331175 | macros/latex/contrib/oberdiek/telprint.pdf
2023/01/10 | 32 | macros/latex/contrib/proflycee/doc/basique.csv
2023/01/10 | 32949 | macros/latex/contrib/oberdiek/thepdfnumber.dtx
2023/01/10 | 328767 | macros/latex/contrib/oberdiek/hyphsubst.pdf
+2023/01/10 | 3267 | dviware/dvisvgm/src/FileSystem.hpp
+2023/01/10 | 3242 | dviware/dvisvgm/src/PDFToSVG.cpp
2023/01/10 | 3224 | macros/latex/contrib/ntgclass/a4.ins
2023/01/10 | 321661 | macros/latex/contrib/oberdiek/aliascnt.pdf
2023/01/10 | 321372 | macros/latex/contrib/oberdiek/settobox.pdf
2023/01/10 | 319610 | macros/latex/contrib/pdfcolfoot/pdfcolfoot.pdf
+2023/01/10 | 3192 | dviware/dvisvgm/src/optimizer/RedundantElementRemover.cpp
+2023/01/10 | 3187 | dviware/dvisvgm/src/fonts/Base14Fonts.cpp
2023/01/10 | 318488 | macros/latex/contrib/oberdiek/chemarr.pdf
2023/01/10 | 317464 | macros/latex/contrib/oberdiek/hypbmsec.pdf
+2023/01/10 | 3164 | dviware/dvisvgm/src/BgColorSpecialHandler.cpp
+2023/01/10 | 3150 | dviware/dvisvgm/src/ShadingPatch.hpp
2023/01/10 | 314047 | macros/latex/contrib/pdfcolfoot.zip
2023/01/10 | 313696 | macros/latex/contrib/oberdiek/hypgotoe.pdf
+2023/01/10 | 31276 | dviware/dvisvgm/src/PDFHandler.cpp
+2023/01/10 | 3124 | dviware/dvisvgm/tests/FileFinderTest.cpp
2023/01/10 | 311531 | macros/latex/contrib/oberdiek/colonequals.pdf
2023/01/10 | 311387 | macros/latex/contrib/oberdiek/flags.pdf
2023/01/10 | 31131 | macros/latex/contrib/oberdiek/tabularht.dtx
2023/01/10 | 310816 | macros/latex/contrib/oberdiek/hypcap.pdf
+2023/01/10 | 3105 | dviware/dvisvgm/src/EllipticalArc.hpp
2023/01/10 | 310389 | macros/latex/contrib/oberdiek/stackrel.pdf
2023/01/10 | 309275 | macros/latex/contrib/oberdiek/scrindex.pdf
+2023/01/10 | 3089 | dviware/dvisvgm/src/MapLine.hpp
+2023/01/10 | 3080 | dviware/dvisvgm/src/CMapReader.hpp
+2023/01/10 | 3055 | dviware/dvisvgm/src/ttf/HheaTable.cpp
+2023/01/10 | 3049 | dviware/dvisvgm/src/TriangularPatch.hpp
2023/01/10 | 304752 | macros/latex/contrib/oberdiek/stampinclude.pdf
2023/01/10 | 304550 | macros/latex/contrib/oberdiek/centernot.pdf
+2023/01/10 | 3040 | dviware/dvisvgm/src/ttf/VheaTable.cpp
+2023/01/10 | 3034 | dviware/dvisvgm/tests/XMLStringTest.cpp
+2023/01/10 | 3034 | dviware/dvisvgm/src/XMLString.cpp
2023/01/10 | 301490 | macros/latex/contrib/oberdiek/twoopt.pdf
+2023/01/10 | 3004 | dviware/dvisvgm/src/ttf/PostTable.cpp
2023/01/10 | 298082 | macros/latex/contrib/oberdiek/classlist.pdf
+2023/01/10 | 2975 | dviware/dvisvgm/src/StreamReader.hpp
+2023/01/10 | 2974 | dviware/dvisvgm/tests/CMapManagerTest.cpp
2023/01/10 | 297238 | macros/latex/contrib/oberdiek/dvipscol.pdf
+2023/01/10 | 2960 | dviware/dvisvgm/src/SVGElement.hpp
+2023/01/10 | 2958 | dviware/dvisvgm/src/SpecialManager.hpp
+2023/01/10 | 2949 | dviware/dvisvgm/src/VectorStream.hpp
2023/01/10 | 29459 | macros/latex/contrib/oberdiek/setouterhbox.dtx
+2023/01/10 | 2941 | dviware/dvisvgm/src/GlyphTracerMessages.hpp
+2023/01/10 | 2930 | dviware/dvisvgm/src/EmSpecialHandler.hpp
+2023/01/10 | 2927 | dviware/dvisvgm/src/XMLParser.hpp
2023/01/10 | 292634 | macros/latex/contrib/oberdiek/ifdraft.pdf
+2023/01/10 | 2909 | dviware/dvisvgm/src/FontMap.hpp
+2023/01/10 | 2891 | dviware/dvisvgm/src/CLCommandLine.hpp
2023/01/10 | 2876 | systems/texlive/tlnet/archive/tikz-mirror-lens.r65500.tar.xz
+2023/01/10 | 2871 | dviware/dvisvgm/src/ShadingPatch.cpp
+2023/01/10 | 2857 | dviware/dvisvgm/src/FontCache.hpp
+2023/01/10 | 2850 | dviware/dvisvgm/tests/FontMapTest.cpp
+2023/01/10 | 2836 | dviware/dvisvgm/src/PdfSpecialHandler.hpp
+2023/01/10 | 2817 | dviware/dvisvgm/src/FontWriter.hpp
2023/01/10 | 280526 | macros/latex/contrib/oberdiek/oberdiek.pdf
2023/01/10 | 280510 | macros/latex/contrib/oberdiek/tabularkv.pdf
+2023/01/10 | 2795 | dviware/dvisvgm/src/FontEncoding.hpp
+2023/01/10 | 27853 | dviware/dvisvgm/src/GraphicsPath.hpp
2023/01/10 | 27847 | macros/latex/contrib/oberdiek/pdfcrypt.dtx
2023/01/10 | 2779 | macros/latex/contrib/se2thesis/se2thesis.ins
-2023/01/10 | 2759904 | biblio/ctan-bibdata/ctan.bib
+2023/01/10 | 2773 | dviware/dvisvgm/tests/DirectoryTest.cpp
+2023/01/10 | 2757 | dviware/dvisvgm/src/GFGlyphTracer.cpp
+2023/01/10 | 2756 | dviware/dvisvgm/src/ttf/HmtxTable.cpp
2023/01/10 | 274477 | macros/latex/contrib/ntgclass/a4.pdf
+2023/01/10 | 27443 | support/TeX4ht/source/Makefile
2023/01/10 | 2736 | macros/latex/contrib/oberdiek/README.md
+2023/01/10 | 2704 | dviware/dvisvgm/tests/BitmapTest.cpp
+2023/01/10 | 2704 | dviware/dvisvgm/src/MD5HashFunction.hpp
2023/01/10 | 26994 | macros/latex/contrib/oberdiek/pdfcolparallel.dtx
+2023/01/10 | 2656 | dviware/dvisvgm/src/optimizer/AttributeExtractor.hpp
+2023/01/10 | 2649 | dviware/dvisvgm/src/ttf/VmtxTable.cpp
2023/01/10 | 2641 | biblio/bibtex/utils/bibcop/README.md
2023/01/10 | 2628 | biblio/bibtex/utils/bibcop/bibcop.ins
+2023/01/10 | 2618 | dviware/dvisvgm/doc/conf-dblatex-pdf.xsl
+2023/01/10 | 2613 | dviware/dvisvgm/src/TpicSpecialHandler.hpp
2023/01/10 | 26109 | macros/latex/contrib/oberdiek/enparen.dtx
+2023/01/10 | 2605 | dviware/dvisvgm/src/PSPreviewFilter.hpp
+2023/01/10 | 260253 | dviware/dvisvgm/tests/Makefile.in
+2023/01/10 | 25945 | dviware/dvisvgm/src/DVIReader.cpp
2023/01/10 | 2591 | macros/latex/contrib/se2thesis/CHANGELOG.md
+2023/01/10 | 2586 | dviware/dvisvgm/src/FileFinder.hpp
+2023/01/10 | 2583 | dviware/dvisvgm/src/GFGlyphTracer.hpp
2023/01/10 | 25810 | macros/latex/contrib/oberdiek/fibnum.dtx
2023/01/10 | 25691 | macros/latex/contrib/oberdiek/rotchiffre.dtx
-2023/01/10 | 25518541 | systems/texlive/tlnet/install-tl.zip
+2023/01/10 | 2548 | dviware/dvisvgm/src/HashFunction.hpp
+2023/01/10 | 25426 | dviware/dvisvgm/libs/boost/boost-vectorstream.hpp
+2023/01/10 | 2541 | dviware/dvisvgm/src/CharMapID.hpp
+2023/01/10 | 2539 | dviware/dvisvgm/src/DLLoader.hpp
2023/01/10 | 25308 | macros/latex/contrib/oberdiek/iflang.dtx
+2023/01/10 | 2514 | dviware/dvisvgm/src/PapersizeSpecialHandler.hpp
2023/01/10 | 25146 | macros/latex/contrib/oberdiek/hypbmsec.dtx
+2023/01/10 | 2512 | dviware/dvisvgm/tests/DependencyGraphTest.cpp
+2023/01/10 | 2512 | dviware/dvisvgm/src/SpecialHandler.hpp
2023/01/10 | 25097 | macros/latex/contrib/oberdiek/eolgrab.dtx
+2023/01/10 | 2502 | dviware/dvisvgm/src/ttf/MaxpTable.cpp
+2023/01/10 | 2501 | dviware/dvisvgm/tests/ToUnicodeMapTest.cpp
2023/01/10 | 24 | biblio/bibtex/utils/bibcop/DEPENDS.txt
2023/01/10 | 24890 | macros/latex/contrib/oberdiek/telprint.dtx
+2023/01/10 | 24838 | dviware/dvisvgm/libs/woff2/Makefile.in
2023/01/10 | 24780 | macros/latex/contrib/oberdiek/resizegather.dtx
-2023/01/10 | 2444448 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2023/01/10 | 24685 | dviware/dvisvgm/src/fonts/Makefile.in
+2023/01/10 | 2457 | macros/latex/contrib/sagetex/README.md
+2023/01/10 | 2455 | dviware/dvisvgm/src/SVGCharPathHandler.hpp
+2023/01/10 | 2443 | dviware/dvisvgm/src/VFReader.hpp
+2023/01/10 | 2437 | dviware/dvisvgm/src/PathClipper.hpp
+2023/01/10 | 24267 | dviware/dvisvgm/src/ttf/Makefile.in
+2023/01/10 | 242499 | dviware/dvisvgm/src/fonts/NimbusMonoPS-BoldItalic.cff.cpp
2023/01/10 | 24106 | macros/latex/contrib/oberdiek/engord.dtx
+2023/01/10 | 239 | dviware/dvisvgm/libs/Makefile.am
+2023/01/10 | 2398 | dviware/dvisvgm/tests/PageSizeTest.cpp
+2023/01/10 | 2388 | dviware/dvisvgm/src/SourceInput.hpp
+2023/01/10 | 2374 | dviware/dvisvgm/src/ttf/HeadTable.hpp
+2023/01/10 | 2367 | dviware/dvisvgm/src/ttf/HmtxTable.hpp
+2023/01/10 | 2365 | dviware/dvisvgm/src/Calculator.hpp
2023/01/10 | 236128 | macros/latex/contrib/ntgclass/artdoc.pdf
+2023/01/10 | 23462 | dviware/dvisvgm/src/Font.cpp
2023/01/10 | 234609 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex
+2023/01/10 | 23379 | dviware/dvisvgm/src/optimizer/Makefile.in
+2023/01/10 | 2334 | dviware/dvisvgm/src/DVIActions.hpp
+2023/01/10 | 2324 | dviware/dvisvgm/src/Process.hpp
+2023/01/10 | 2315 | dviware/dvisvgm/tests/MessageExceptionTest.cpp
+2023/01/10 | 2297 | dviware/dvisvgm/src/optimizer/SVGOptimizer.hpp
+2023/01/10 | 229696 | dviware/dvisvgm/src/fonts/NimbusRoman-Italic.cff.cpp
+2023/01/10 | 2290 | dviware/dvisvgm/src/DLLoader.cpp
+2023/01/10 | 2284 | dviware/dvisvgm/src/Terminal.hpp
+2023/01/10 | 2283 | dviware/dvisvgm/src/ttf/VheaTable.hpp
+2023/01/10 | 2283 | dviware/dvisvgm/src/ttf/HheaTable.hpp
+2023/01/10 | 2278 | dviware/dvisvgm/src/ttf/VmtxTable.hpp
+2023/01/10 | 2276 | dviware/dvisvgm/tests/VectorStreamTest.cpp
+2023/01/10 | 227243 | dviware/dvisvgm/src/fonts/NimbusRoman-BoldItalic.cff.cpp
+2023/01/10 | 2237 | dviware/dvisvgm/src/XMLDocument.cpp
+2023/01/10 | 2228 | dviware/dvisvgm/src/BgColorSpecialHandler.hpp
+2023/01/10 | 2221 | dviware/dvisvgm/src/CMapManager.hpp
+2023/01/10 | 2214 | dviware/dvisvgm/src/HtmlSpecialHandler.hpp
+2023/01/10 | 2200 | dviware/dvisvgm/src/ttf/LocaTable.hpp
+2023/01/10 | 2196 | dviware/dvisvgm/src/StreamWriter.hpp
+2023/01/10 | 2188 | dviware/dvisvgm/src/ttf/CmapTable.hpp
+2023/01/10 | 2182 | dviware/dvisvgm/src/SVGSingleCharTextHandler.cpp
+2023/01/10 | 2181 | dviware/dvisvgm/src/optimizer/GroupCollapser.hpp
+2023/01/10 | 2180 | dviware/dvisvgm/src/SignalHandler.hpp
+2023/01/10 | 2166 | dviware/dvisvgm/src/JFM.hpp
2023/01/10 | 21668 | macros/latex/contrib/oberdiek/holtxdoc.dtx
+2023/01/10 | 2163 | dviware/dvisvgm/src/PDFToSVG.hpp
+2023/01/10 | 21573 | dviware/dvisvgm/doc/Makefile.in
+2023/01/10 | 215120 | support/TeX4ht/source/ChangeLog
+2023/01/10 | 214886 | dviware/dvisvgm/src/fonts/NimbusMonoPS-Italic.cff.cpp
2023/01/10 | 2147 | macros/latex/contrib/oberdiek/oberdiek.ins
2023/01/10 | 21476 | macros/latex/contrib/oberdiek/hypcap.dtx
+2023/01/10 | 21388 | dviware/dvisvgm/src/TensorProductPatch.cpp
+2023/01/10 | 213800 | dviware/dvisvgm/src/fonts/NimbusMonoPS-Bold.cff.cpp
2023/01/10 | 213741 | macros/latex/contrib/ntgclass/rapdoc.pdf
+2023/01/10 | 2136 | dviware/dvisvgm/src/ttf/TTFAutohint.hpp
2023/01/10 | 21343 | macros/latex/contrib/oberdiek/hyphsubst.dtx
+2023/01/10 | 21237 | macros/latex/contrib/sagetex/example.tex
+2023/01/10 | 21204 | dviware/dvisvgm/src/DVIToSVG.cpp
+2023/01/10 | 2118 | dviware/dvisvgm/src/ColorSpecialHandler.hpp
+2023/01/10 | 2116 | dviware/dvisvgm/src/EncFile.hpp
+2023/01/10 | 2107 | dviware/dvisvgm/src/GFTracer.hpp
2023/01/10 | 21023 | macros/latex/contrib/ntgclass/a4.dtx
+2023/01/10 | 2098 | dviware/dvisvgm/src/EPSToSVG.hpp
+2023/01/10 | 20959 | dviware/dvisvgm/libs/potrace/Makefile.in
+2023/01/10 | 2092 | dviware/dvisvgm/src/PageSize.hpp
+2023/01/10 | 2086 | dviware/dvisvgm/src/ttf/MaxpTable.hpp
+2023/01/10 | 2083 | dviware/dvisvgm/tests/GhostscriptTest.cpp
2023/01/10 | 20819 | macros/latex/contrib/oberdiek/pdfcolparcolumns.dtx
2023/01/10 | 20812 | macros/latex/contrib/oberdiek/protecteddef.dtx
-2023/01/10 | 20434720 | systems/texlive/tlnet/install-tl-windows.exe
+2023/01/10 | 207150 | dviware/dvisvgm/src/fonts/NimbusRoman-Bold.cff.cpp
+2023/01/10 | 2069 | dviware/dvisvgm/src/ttf/OS2Table.hpp
+2023/01/10 | 2067 | dviware/dvisvgm/src/options.dtd
+2023/01/10 | 2062 | dviware/dvisvgm/src/NoPsSpecialHandler.cpp
+2023/01/10 | 2053 | dviware/dvisvgm/src/XMLDocument.hpp
+2023/01/10 | 2053 | dviware/dvisvgm/src/Directory.hpp
+2023/01/10 | 2051 | dviware/dvisvgm/src/EPSFile.hpp
+2023/01/10 | 20513 | dviware/dvisvgm/libs/clipper/Makefile.in
+2023/01/10 | 2041 | dviware/dvisvgm/src/SVGCharTspanTextHandler.hpp
+2023/01/10 | 2040 | dviware/dvisvgm/src/CharMapID.cpp
+2023/01/10 | 2026 | dviware/dvisvgm/tests/genhashcheck.py
+2023/01/10 | 2024 | dviware/dvisvgm/src/SVGCharHandlerFactory.cpp
+2023/01/10 | 2014 | dviware/dvisvgm/src/macros.hpp
+2023/01/10 | 2013 | dviware/dvisvgm/src/optimizer/WSNodeRemover.cpp
+2023/01/10 | 20130 | dviware/dvisvgm/libs/Makefile.in
+2023/01/10 | 2005 | dviware/dvisvgm/src/System.cpp
2023/01/10 | 20045 | macros/latex/contrib/oberdiek/settobox.dtx
+2023/01/10 | 2001 | dviware/dvisvgm/src/Unicode.hpp
+2023/01/10 | 2000 | dviware/dvisvgm/src/Character.hpp
+2023/01/10 | 1999 | dviware/dvisvgm/tests/testmain.cpp
+2023/01/10 | 1999 | dviware/dvisvgm/src/NoPsSpecialHandler.hpp
+2023/01/10 | 198872 | dviware/dvisvgm/src/fonts/NimbusRoman-Regular.cff.cpp
+2023/01/10 | 1984 | dviware/dvisvgm/src/FontMetrics.cpp
+2023/01/10 | 19806 | dviware/dvisvgm/libs/xxHash/Makefile.in
+2023/01/10 | 1979 | dviware/dvisvgm/src/optimizer/ClipPathReassigner.hpp
+2023/01/10 | 19698 | dviware/dvisvgm/libs/md5/Makefile.in
+2023/01/10 | 19615 | dviware/dvisvgm/src/Font.hpp
+2023/01/10 | 19513 | dviware/dvisvgm/src/Color.cpp
2023/01/10 | 19508 | biblio/bibtex/utils/bibcop/bibcop.pl
2023/01/10 | 1933350 | macros/latex/contrib/ntgclass.zip
2023/01/10 | 19267 | macros/latex/contrib/oberdiek/scrindex.dtx
+2023/01/10 | 19238 | dviware/dvisvgm/src/ttf/GlyfTable.cpp
+2023/01/10 | 1913 | dviware/dvisvgm/src/PreScanDVIReader.cpp
+2023/01/10 | 1911 | dviware/dvisvgm/src/VFActions.hpp
+2023/01/10 | 1894 | dviware/dvisvgm/src/MiKTeXCom.hpp
+2023/01/10 | 1887 | dviware/dvisvgm/src/XMLString.hpp
+2023/01/10 | 1886 | dviware/dvisvgm/src/PreScanDVIReader.hpp
+2023/01/10 | 18866 | macros/latex/contrib/sagetex/scripts.dtx
+2023/01/10 | 188302 | dviware/dvisvgm/src/fonts/NimbusMonoPS-Regular.cff.cpp
2023/01/10 | 18775 | macros/latex/contrib/pdfcolfoot/pdfcolfoot.dtx
+2023/01/10 | 1876 | dviware/dvisvgm/src/MetafontWrapper.hpp
+2023/01/10 | 1856 | dviware/dvisvgm/src/optimizer/TransformSimplifier.hpp
+2023/01/10 | 18502 | dviware/dvisvgm/src/dvisvgm.cpp
2023/01/10 | 18499 | macros/latex/contrib/oberdiek/stampinclude.dtx
+2023/01/10 | 1848 | dviware/dvisvgm/src/ttf/PostTable.hpp
+2023/01/10 | 1844 | dviware/dvisvgm/src/ttf/NameTable.hpp
+2023/01/10 | 1844 | dviware/dvisvgm/src/ToUnicodeMap.hpp
2023/01/10 | 183619 | macros/latex/contrib/ntgclass/ntgclass.dtx
2023/01/10 | 1828 | macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.tex
2023/01/10 | 182415 | macros/latex/contrib/maze.zip
+2023/01/10 | 1821 | dviware/dvisvgm/src/FixWord.hpp
2023/01/10 | 1809419 | macros/latex/contrib/proflycee.zip
+2023/01/10 | 1806 | dviware/dvisvgm/src/PSFilter.hpp
+2023/01/10 | 1805 | dviware/dvisvgm/src/FontStyle.hpp
2023/01/10 | 18053 | macros/latex/contrib/oberdiek/hypgotoe.dtx
-2023/01/10 | 18024481 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2023/01/10 | 17947 | dviware/dvisvgm/src/PSInterpreter.cpp
+2023/01/10 | 1784 | dviware/dvisvgm/src/SVGSingleCharTextHandler.hpp
+2023/01/10 | 1779 | dviware/dvisvgm/src/MessageException.hpp
+2023/01/10 | 17715 | dviware/dvisvgm/src/XMLNode.cpp
+2023/01/10 | 1729 | dviware/dvisvgm/src/PageRanges.hpp
+2023/01/10 | 17194 | dviware/dvisvgm/src/Matrix.cpp
+2023/01/10 | 17154 | macros/latex/contrib/sagetex/remote-sagetex.dtx
+2023/01/10 | 1699 | dviware/dvisvgm/src/optimizer/TextSimplifier.hpp
+2023/01/10 | 1698 | dviware/dvisvgm/doc/tweak-db-refentry.xsl
2023/01/10 | 16956 | macros/latex/contrib/oberdiek/oberdiek.tex
+2023/01/10 | 1687 | dviware/dvisvgm/src/optimizer/WSNodeRemover.hpp
2023/01/10 | 16829 | macros/latex/contrib/oberdiek/twoopt.dtx
-2023/01/10 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2023/01/10 | 16789 | macros/latex/contrib/oberdiek/flags.dtx
2023/01/10 | 16633 | macros/latex/contrib/oberdiek/classlist.dtx
2023/01/10 | 16564 | macros/latex/contrib/oberdiek/colonequals.dtx
2023/01/10 | 165500 | macros/luatex/latex/luasseq.zip
2023/01/10 | 16535 | macros/latex/contrib/oberdiek/aliascnt.dtx
-2023/01/10 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2023/01/10 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2023/01/10 | 1645 | dviware/dvisvgm/src/SVGCharHandlerFactory.hpp
+2023/01/10 | 1644 | dviware/dvisvgm/src/optimizer/RedundantElementRemover.hpp
+2023/01/10 | 1642 | dviware/dvisvgm/src/optimizer/OptimizerModule.hpp
+2023/01/10 | 163464 | dviware/dvisvgm/src/fonts/NimbusSans-Italic.cff.cpp
+2023/01/10 | 1633 | dviware/dvisvgm/src/fonts/Base14Fonts.hpp
+2023/01/10 | 161488 | dviware/dvisvgm/src/fonts/NimbusSans-BoldItalic.cff.cpp
+2023/01/10 | 1604 | dviware/dvisvgm/src/windows.hpp
+2023/01/10 | 15928 | dviware/dvisvgm/src/DvisvgmSpecialHandler.cpp
+2023/01/10 | 158418 | dviware/dvisvgm/src/AGLTable.hpp
+2023/01/10 | 15831 | dviware/dvisvgm/tests/Makefile.am
+2023/01/10 | 15803 | dviware/dvisvgm/libs/boost/Makefile.in
+2023/01/10 | 15791 | dviware/dvisvgm/libs/variant/Makefile.in
+2023/01/10 | 1577 | dviware/dvisvgm/src/version.hpp.in
+2023/01/10 | 15777 | dviware/dvisvgm/src/BasicDVIReader.cpp
+2023/01/10 | 15437 | dviware/dvisvgm/src/PDFParser.cpp
+2023/01/10 | 1537 | dviware/dvisvgm/src/Glyph.hpp
+2023/01/10 | 15229 | dviware/dvisvgm/src/FontEngine.cpp
2023/01/10 | 15169 | macros/latex/contrib/oberdiek/ifdraft.dtx
+2023/01/10 | 1511 | dviware/dvisvgm/src/System.hpp
2023/01/10 | 15084 | macros/latex/contrib/oberdiek/centernot.dtx
+2023/01/10 | 15061 | dviware/dvisvgm/tests/XMLNodeTest.cpp
2023/01/10 | 149438 | macros/luatex/latex/luasseq/luasseq.pdf
-2023/01/10 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2023/01/10 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2023/01/10 | 14587 | dviware/dvisvgm/src/ttf/TTFWriter.cpp
+2023/01/10 | 14569 | dviware/dvisvgm/src/Bezier.cpp
+2023/01/10 | 14419 | dviware/dvisvgm/src/FontManager.cpp
2023/01/10 | 14239 | biblio/bibtex/utils/bibcop/bibcop.dtx
+2023/01/10 | 141947 | macros/latex/contrib/diffcoeff/diffcoeff.tex
2023/01/10 | 14185 | macros/latex/contrib/oberdiek/dvipscol.dtx
2023/01/10 | 141698 | macros/latex/contrib/ntgclass/classdoc.pdf
2023/01/10 | 1414625 | install/macros/latex/contrib/se2thesis.tds.zip
2023/01/10 | 1401720 | macros/latex/contrib/se2thesis.zip
+2023/01/10 | 13938 | dviware/dvisvgm/tests/data/Makefile.in
+2023/01/10 | 139378 | dviware/dvisvgm/src/fonts/NimbusSans-Bold.cff.cpp
2023/01/10 | 138099 | macros/latex/contrib/maze/maze.pdf
2023/01/10 | 137972 | systems/texlive/tlnet/archive/langnames.r65502.tar.xz
2023/01/10 | 13782 | macros/latex/contrib/oberdiek/stackrel.dtx
2023/01/10 | 13772 | macros/latex/contrib/oberdiek/chemarr.dtx
+2023/01/10 | 13772 | dviware/dvisvgm/tests/TpicSpecialTest.cpp
2023/01/10 | 137251 | macros/latex/contrib/ntgclass/briefdoc.pdf
+2023/01/10 | 135805 | dviware/dvisvgm/src/fonts/NimbusSans-Regular.cff.cpp
+2023/01/10 | 13534 | dviware/dvisvgm/tests/DvisvgmSpecialTest.cpp
+2023/01/10 | 1338 | dviware/dvisvgm/libs/boost/LICENSE.txt
2023/01/10 | 13344 | macros/latex/contrib/oberdiek/tabularkv.dtx
+2023/01/10 | 13189 | dviware/dvisvgm/src/PathClipper.cpp
2023/01/10 | 131730 | macros/latex/contrib/proflycee/tex/ProfLycee.sty
+2023/01/10 | 13009 | dviware/dvisvgm/src/Process.cpp
+2023/01/10 | 12993 | dviware/dvisvgm/tests/GFReaderTest.cpp
+2023/01/10 | 12940 | dviware/dvisvgm/src/TpicSpecialHandler.cpp
2023/01/10 | 129074 | graphics/metapost/contrib/macros/repere/repere.mp
+2023/01/10 | 12876 | dviware/dvisvgm/src/psdefs.cpp
+2023/01/10 | 12820 | dviware/dvisvgm/tests/TensorProductPatchTest.cpp
2023/01/10 | 12816 | macros/latex/contrib/se2thesis/se2colors.dtx
+2023/01/10 | 12504 | dviware/dvisvgm/src/FontCache.cpp
2023/01/10 | 12452810 | install/macros/latex/contrib/oberdiek.tds.zip
2023/01/10 | 1244 | macros/latex/contrib/maze/README.md
2023/01/10 | 1243392 | systems/texlive/tlnet/archive/pst-flags.r65501.tar.xz
2023/01/10 | 12344311 | macros/latex/contrib/oberdiek.zip
2023/01/10 | 1230264 | systems/texlive/tlnet/archive/pst-flags.doc.r65501.tar.xz
+2023/01/10 | 12273 | dviware/dvisvgm/src/SVGTree.cpp
+2023/01/10 | 12240 | dviware/dvisvgm/src/InputReader.cpp
+2023/01/10 | 12178 | dviware/dvisvgm/src/DVIToSVGActions.cpp
+2023/01/10 | 1216 | dviware/dvisvgm/tests/check-conv
2023/01/10 | 1213548 | systems/texlive/tlnet/archive/tikz-mirror-lens.doc.r65500.tar.xz
-2023/01/10 | 113712 | systems/texlive/tlnet/archive/texlive-scripts.r65498.tar.xz
+2023/01/10 | 12023 | support/TeX4ht/source/tex4ht-html5.tex
+2023/01/10 | 11978 | dviware/dvisvgm/src/Ghostscript.cpp
+2023/01/10 | 11840 | dviware/dvisvgm/src/FileSystem.cpp
2023/01/10 | 11293 | graphics/pgf/contrib/scrabble/tex/Scrabble.sty
+2023/01/10 | 11284 | dviware/dvisvgm/src/ttf/OS2Table.cpp
+2023/01/10 | 1112 | macros/latex/contrib/sagetex/setup.py
2023/01/10 | 11038 | graphics/pgf/contrib/scrabble/doc/Scrabble-doc-fr.tex
2023/01/10 | 1097568 | macros/latex/contrib/se2thesis/se2thesis-master-thesis-example.pdf
+2023/01/10 | 10966 | dviware/dvisvgm/src/EllipticalArc.cpp
+2023/01/10 | 10879 | dviware/dvisvgm/src/GFReader.cpp
+2023/01/10 | 10843 | dviware/dvisvgm/src/PsSpecialHandler.hpp
2023/01/10 | 1083 | biblio/bibtex/utils/bibcop/LICENSE.txt
2023/01/10 | 107712 | systems/texlive/tlnet/archive/langnames.doc.r65502.tar.xz
2023/01/10 | 106085 | macros/latex/contrib/oberdiek/bmpsize.dtx
+2023/01/10 | 10423 | dviware/dvisvgm/src/FilePath.cpp
+2023/01/10 | 1041 | dviware/dvisvgm/doc/tweak-dblatex-pdf.xsl
+2023/01/10 | 10418 | dviware/dvisvgm/src/PdfSpecialHandler.cpp
+2023/01/10 | 104034 | macros/latex/contrib/diffcoeff/diffcoeff4.tex
+2023/01/10 | 10261 | dviware/dvisvgm/src/FileFinder.cpp
+2023/01/10 | 102294 | dviware/dvisvgm/src/fonts/Dingbats.cff.cpp
2023/01/10 | 101424 | graphics/metapost/contrib/macros/repere/repere-doc.tex
2023/01/10 | 10130 | macros/latex/contrib/se2thesis/se2fonts.dtx
+2023/01/10 | 1004505 | info/biblio/texbook3.bib
+2023/01/10 | 10034 | dviware/dvisvgm/src/XMLNode.hpp
+2023/01/10 | 10002 | dviware/dvisvgm/src/Unicode.cpp
2023/01/09 | 910824 | systems/texlive/tlnet/archive/scripture.doc.r65493.tar.xz
2023/01/09 | 894599 | graphics/mcf2graph.zip
2023/01/09 | 864 | systems/texlive/tlnet/archive/collection-langenglish.r65496.tar.xz
@@ -186,19 +652,19 @@
2023/01/09 | 8344 | systems/texlive/tlnet/archive/nicefilelist.r65492.tar.xz
2023/01/09 | 7880 | systems/texlive/tlnet/archive/nicefilelist.source.r65492.tar.xz
2023/01/09 | 7448 | systems/texlive/tlnet/archive/colorist.doc.r65490.tar.xz
-2023/01/09 | 7360 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/01/09 | 72488 | systems/texlive/tlnet/archive/latexindent.r65494.tar.xz
+2023/01/09 | 708 | macros/latex/contrib/pythonimmediate/README
2023/01/09 | 672 | macros/latex/contrib/langnames/README.md
-2023/01/09 | 6164 | systems/texlive/tlnet/archive/bibcop.r65489.tar.xz
+2023/01/09 | 6624 | macros/latex/contrib/pythonimmediate/pythonimmediate.sty
2023/01/09 | 6076 | systems/texlive/tlnet/archive/hopatch.source.r65491.tar.xz
2023/01/09 | 605828 | systems/texlive/tlnet/archive/nicefilelist.doc.r65492.tar.xz
2023/01/09 | 588 | systems/texlive/tlnet/archive/tlc3-examples.r65496.tar.xz
-2023/01/09 | 5584 | systems/texlive/tlnet/archive/bibcop.source.r65489.tar.xz
2023/01/09 | 4751 | graphics/pstricks/contrib/pst-flags/doc/amm-pst-doc.cls
2023/01/09 | 449779 | graphics/mcf2graph/mcf_example.pdf
+2023/01/09 | 432126 | macros/latex/contrib/pythonimmediate/pythonimmediate.pdf
2023/01/09 | 3904 | graphics/pstricks/contrib/pst-flags/README.md
+2023/01/09 | 35 | macros/latex/contrib/pythonimmediate/DEPENDS.txt
2023/01/09 | 358257 | macros/latex/contrib/langnames/ln_fams_glot.tex
-2023/01/09 | 354808 | systems/texlive/tlnet/archive/bibcop.doc.r65489.tar.xz
2023/01/09 | 3545616 | systems/texlive/tlnet/archive/latexindent.win32.r65494.tar.xz
2023/01/09 | 345240 | macros/latex/contrib/langnames/ln_langs_glot.tex
2023/01/09 | 321662 | graphics/mcf2graph/mcf_manual.pdf
@@ -214,6 +680,7 @@
2023/01/09 | 2184 | systems/texlive/tlnet/archive/hopatch.r65491.tar.xz
2023/01/09 | 20877 | graphics/pstricks/contrib/pst-flags/doc/pst-flags-doc.tex
2023/01/09 | 2065898 | graphics/pgf/contrib/tikz-mirror-lens.zip
+2023/01/09 | 19805 | macros/latex/contrib/pythonimmediate/pythonimmediate.tex
2023/01/09 | 19187 | graphics/mcf2graph/CHANGELOG
2023/01/09 | 1878976 | systems/texlive/tlnet/archive/tlc3-examples.doc.r65496.tar.xz
2023/01/09 | 18573 | macros/latex/contrib/langnames/langnames.dtx
@@ -240,7 +707,6 @@
2023/01/08 | 88409 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
2023/01/08 | 8833 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
2023/01/08 | 826774 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2023/01/08 | 822660 | systems/texlive/tlnet/archive/scrabble.doc.r65485.tar.xz
2023/01/08 | 820128 | systems/win32/miktex/tm/packages/scrabble__doc.tar.lzma
2023/01/08 | 81398 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
2023/01/08 | 7992852 | systems/texlive/tlnet/archive/newcomputermodern.r65485.tar.xz
@@ -320,7 +786,6 @@
2023/01/08 | 3056 | systems/win32/miktex/tm/packages/scrabble.tar.lzma
2023/01/08 | 30490 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
2023/01/08 | 296256 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2023/01/08 | 2904 | systems/texlive/tlnet/archive/scrabble.r65485.tar.xz
2023/01/08 | 2877 | systems/win32/miktex/tm/packages/simplebnf.tar.lzma
2023/01/08 | 28766 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
2023/01/08 | 287069 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
@@ -642,7 +1107,6 @@
2023/01/06 | 10166 | systems/win32/miktex/tm/packages/curve2e.tar.lzma
2023/01/05 | 998428 | systems/texlive/tlnet/archive/kaytannollista-latexia.doc.r65461.tar.xz
2023/01/05 | 97300 | systems/texlive/tlnet/archive/texinfo.r65459.tar.xz
-2023/01/05 | 88978 | install/macros/xetex/plain/unimath-plain-xetex.tds.zip
2023/01/05 | 796 | macros/luatex/generic/luakeys/luakeys-debug.sty
2023/01/05 | 781 | macros/luatex/generic/luakeys/luakeys.tex
2023/01/05 | 65 | systems/mac/mactex/mactex-MacTeXtras-20230105.zip.md5
@@ -708,68 +1172,3 @@
2023/01/05 | 1181 | macros/luatex/generic/luakeys/luakeys-debug.tex
2023/01/05 | 115695555 | macros/context/latest/cont-tmf.zip
2023/01/05 | 1044 | macros/luatex/generic/luakeys/luakeys.sty
-2023/01/04 | 949356 | systems/texlive/tlnet/archive/tocdata.doc.r65451.tar.xz
-2023/01/04 | 884264 | info/kaytannollista-latexia/kaytannollista-latexia.pdf
-2023/01/04 | 88330 | info/kaytannollista-latexia/luku-merkintakieli.tex
-2023/01/04 | 875 | macros/luatex/generic/lua-visual-debug/doc/README.md
-2023/01/04 | 8644 | systems/texlive/tlnet/archive/metalogox.source.r65448.tar.xz
-2023/01/04 | 8212 | systems/texlive/tlnet/archive/zref-vario.source.r65453.tar.xz
-2023/01/04 | 796 | macros/luatex/generic/lua-visual-debug/doc/sample.tex
-2023/01/04 | 7860 | systems/texlive/tlnet/archive/dtxdescribe.r65445.tar.xz
-2023/01/04 | 7856 | macros/pdftex/mptopdf/tex/context/base/mkii/syst-tex.mkii
-2023/01/04 | 780236 | systems/texlive/tlnet/archive/zref-vario.doc.r65453.tar.xz
-2023/01/04 | 7701 | macros/luatex/generic/lua-visual-debug/lua-visual-debug.lua
-2023/01/04 | 73328 | macros/luatex/generic/lua-visual-debug/doc/lvdebugdetail1-num.png
-2023/01/04 | 732 | macros/pdftex/mptopdf/doc/context/scripts/mkii/mptopdf.man
-2023/01/04 | 71627 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-pdf.mkii
-2023/01/04 | 7112 | systems/texlive/tlnet/archive/keyfloat.r65446.tar.xz
-2023/01/04 | 66060 | systems/texlive/tlnet/archive/siunitx.r65450.tar.xz
-2023/01/04 | 6138 | info/kaytannollista-latexia/README.md
-2023/01/04 | 54928 | systems/texlive/tlnet/archive/zref-clever.source.r65452.tar.xz
-2023/01/04 | 5322 | macros/pdftex/mptopdf/tex/generic/context/mptopdf/mptopdf.tex
-2023/01/04 | 52844 | systems/texlive/tlnet/archive/dtk-bibliography.r65444.tar.xz
-2023/01/04 | 5080 | systems/texlive/tlnet/archive/pyluatex.r65454.tar.xz
-2023/01/04 | 503484 | macros/latex/contrib/msu-thesis.zip
-2023/01/04 | 492 | macros/luatex/generic/lua-visual-debug/doc/sample-plain.tex
-2023/01/04 | 49220 | macros/luatex/generic/lua-visual-debug/doc/sample-plain.pdf
-2023/01/04 | 4608 | macros/pdftex/mptopdf/scripts/context/stubs/mswin/mptopdf.exe
-2023/01/04 | 459848 | systems/texlive/tlnet/archive/lwarp.source.r65447.tar.xz
-2023/01/04 | 459068 | systems/texlive/tlnet/archive/dtxdescribe.doc.r65445.tar.xz
-2023/01/04 | 4557 | macros/pdftex/mptopdf/scripts/context/perl/mptopdf.pl
-2023/01/04 | 45515 | macros/luatex/generic/lua-visual-debug/doc/sample.pdf
-2023/01/04 | 4520 | systems/texlive/tlnet/archive/zref-vario.r65453.tar.xz
-2023/01/04 | 42831 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-mpe.mkii
-2023/01/04 | 4208 | systems/texlive/tlnet/archive/metalogox.r65448.tar.xz
-2023/01/04 | 383830 | macros/luatex/generic/lua-visual-debug.zip
-2023/01/04 | 380028 | systems/texlive/tlnet/archive/metalogox.doc.r65448.tar.xz
-2023/01/04 | 3356 | systems/texlive/tlnet/archive/tocdata.r65451.tar.xz
-2023/01/04 | 3255240 | systems/texlive/tlnet/archive/lwarp.doc.r65447.tar.xz
-2023/01/04 | 321322 | info/kaytannollista-latexia/luku-rakenne.tex
-2023/01/04 | 31332 | systems/texlive/tlnet/archive/keyfloat.source.r65446.tar.xz
-2023/01/04 | 2994 | info/kaytannollista-latexia/kirjallisuutta.bib
-2023/01/04 | 27 | info/kaytannollista-latexia/versio.tex
-2023/01/04 | 276036 | systems/texlive/tlnet/archive/dtk-bibliography.doc.r65444.tar.xz
-2023/01/04 | 27232 | systems/texlive/tlnet/archive/proflycee.r65449.tar.xz
-2023/01/04 | 2633 | info/kaytannollista-latexia/luku-esipuhe.tex
-2023/01/04 | 2532 | macros/luatex/generic/lua-visual-debug/doc/lvdebug-doc.tex
-2023/01/04 | 24048 | systems/texlive/tlnet/archive/dtxdescribe.source.r65445.tar.xz
-2023/01/04 | 23632 | systems/texlive/tlnet/archive/zref-clever.r65452.tar.xz
-2023/01/04 | 21474 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-mis.mkii
-2023/01/04 | 212736 | systems/texlive/tlnet/archive/lwarp.r65447.tar.xz
-2023/01/04 | 210880 | macros/luatex/generic/lua-visual-debug/doc/lvdebug-doc.pdf
-2023/01/04 | 20612 | info/kaytannollista-latexia/luku-erikoiset.tex
-2023/01/04 | 20559 | info/kaytannollista-latexia/luku-valmistautuminen.tex
-2023/01/04 | 1617292 | systems/texlive/tlnet/archive/proflycee.doc.r65449.tar.xz
-2023/01/04 | 1561628 | systems/texlive/tlnet/archive/zref-clever.doc.r65452.tar.xz
-2023/01/04 | 14345 | info/kaytannollista-latexia/kaytannollista-latexia.tex
-2023/01/04 | 1247992 | systems/texlive/tlnet/archive/siunitx.doc.r65450.tar.xz
-2023/01/04 | 12444852 | systems/texlive/tlnet/archive/tlgs.win32.r65457.tar.xz
-2023/01/04 | 122801 | info/kaytannollista-latexia/luku-asetukset.tex
-2023/01/04 | 12174 | info/kaytannollista-latexia/tavutusvihjeet.tex
-2023/01/04 | 12028 | systems/texlive/tlnet/archive/tocdata.source.r65451.tar.xz
-2023/01/04 | 117928 | systems/texlive/tlnet/archive/siunitx.source.r65450.tar.xz
-2023/01/04 | 11445 | macros/luatex/generic/lua-visual-debug/doc/strut.png
-2023/01/04 | 1052496 | systems/texlive/tlnet/archive/keyfloat.doc.r65446.tar.xz
-2023/01/04 | 1031899 | info/kaytannollista-latexia.zip
-2023/01/04 | 100388 | systems/texlive/tlnet/archive/pyluatex.doc.r65454.tar.xz
-2023/01/04 | 1000 | macros/luatex/generic/lua-visual-debug/lua-visual-debug.sty
diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib
index 77270b8311..52f3d71eb7 100644
--- a/biblio/ctan-bibdata/ctan.bib
+++ b/biblio/ctan-bibdata/ctan.bib
@@ -1,7 +1,7 @@
%% bib file of all CTAN packages
%% (C) Herbert Voß
%%
-%% created at 11-01-2023, 02:00:55
+%% created at 12-01-2023, 02:01:35
%%
%% This file is provided under the terms of the LPPL v1.3 or
@@ -13144,7 +13144,7 @@
title = {The \texttt{cmactex} package},
subtitle = {TeX for the Macintosh},
author = {Tom Kiffe},
- date = {2017-04-18},
+ date = {2023-01-11},
version = {4.5},
license = {shareware},
mirror = {https://mirror.ctan.org/systems/mac/cmactex},
@@ -18228,8 +18228,8 @@
title = {The \texttt{diffcoeff} package},
subtitle = {Write differential coefficients easily and consistently},
author = {Andrew Parsloe},
- date = {2022-06-14},
- version = {4.1},
+ date = {2023-01-11},
+ version = {5.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/diffcoeff},
url = {https://ctan.org/pkg/diffcoeff},
@@ -19962,8 +19962,8 @@
title = {The \texttt{dvisvgm} package},
subtitle = {Convert DVI, EPS, and PDF files to Scalable Vector Graphics format (SVG)},
author = {Martin Gieseking},
- date = {2022-08-13},
- version = {2.14},
+ date = {2023-01-11},
+ version = {3.0.1},
license = {gpl3+},
mirror = {https://mirror.ctan.org/dviware/dvisvgm},
url = {https://ctan.org/pkg/dvisvgm},
@@ -25093,8 +25093,8 @@
title = {The \texttt{firamath-otf} package},
subtitle = {Use OpenType math font Fira Math},
author = {Herbert Voß},
- date = {2019-06-09},
- version = {0.02a},
+ date = {2023-01-11},
+ version = {0.03},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/fonts/firamath-otf},
url = {https://ctan.org/pkg/firamath-otf},
@@ -46366,7 +46366,7 @@
title = {The \texttt{musixtex-fonts} package},
subtitle = {Fonts used by MusixTeX},
author = {Bob Tennent and Takanori Uchiyama and Daniel Taupin},
- date = {2021-08-30},
+ date = {2023-01-11},
version = {},
license = {gpl},
mirror = {https://mirror.ctan.org/fonts/musixtex-fonts},
@@ -46388,9 +46388,9 @@
title = {The \texttt{MusiXTeX} package},
subtitle = {Sophisticated music typesetting},
author = {Bob Tennent and Don Simons and Jean-Pierre Coulon and Hiroaki Morimoto and Olivier Vogel and Daniel Taupin and Andreas Egler and Ross Mitchell},
- date = {2021-08-30},
- version = {1.35},
- license = {gpl2+,ofl},
+ date = {2023-01-11},
+ version = {1.36},
+ license = {gpl2+},
mirror = {https://mirror.ctan.org/macros/musixtex},
url = {https://ctan.org/pkg/musixtex},
}
@@ -50067,7 +50067,7 @@
title = {The \texttt{pagesel} package},
subtitle = {Select pages of a document for output},
author = {Heiko Oberdiek},
- date = {2020-08-18},
+ date = {2023-01-11},
version = {1.10},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/pagesel},
@@ -50840,11 +50840,14 @@
title = {The \texttt{pdfcolfoot} package},
subtitle = {Separate color stack for footnotes with pdfTeX},
author = {Heiko Oberdiek},
- date = {2023-01-10},
+ date = {2023-01-11},
version = {1.4},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/pdfcolfoot},
url = {https://ctan.org/pkg/pdfcolfoot},
+ annotation = {Since version 1.40 supports
+ several colour stacks. This package uses a separate colour stack
+ for footnotes that can break across pages.},
}
@manual{ctan-pdfcolmk,
@@ -56565,8 +56568,8 @@
title = {The \texttt{pythonimmediate} package},
subtitle = {Library to run Python code},
author = {{user202729}},
- date = {2022-12-29},
- version = {0.0.0},
+ date = {2023-01-11},
+ version = {0.1.0},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/pythonimmediate},
url = {https://ctan.org/pkg/pythonimmediate},
@@ -59029,8 +59032,8 @@
title = {The \texttt{SageTeX} package},
subtitle = {Embed Sage code and plots into \LaTeX{}},
author = {Dima Pasechnik and Dan Drake},
- date = {2020-10-16},
- version = {3.5},
+ date = {2023-01-11},
+ version = {3.6.1},
license = {gpl2+},
mirror = {https://mirror.ctan.org/macros/latex/contrib/sagetex},
url = {https://ctan.org/pkg/sagetex},
@@ -72252,8 +72255,8 @@
title = {The \texttt{unimath-plain-xetex} package},
subtitle = {OpenType math support in (plain) XeTeX},
author = {Tingxuan Zhang},
- date = {2023-01-06},
- version = {0.2},
+ date = {2023-01-11},
+ version = {0.2a},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/xetex/plain/unimath-plain-xetex},
url = {https://ctan.org/pkg/unimath-plain-xetex},
diff --git a/biblio/ctan-bibdata/ctan.pdf b/biblio/ctan-bibdata/ctan.pdf
index dc0b22fb87..65a9a08a88 100644
--- a/biblio/ctan-bibdata/ctan.pdf
+++ b/biblio/ctan-bibdata/ctan.pdf
Binary files differ
diff --git a/dviware/dvisvgm/ChangeLog b/dviware/dvisvgm/ChangeLog
deleted file mode 100644
index 2533c9a1e0..0000000000
--- a/dviware/dvisvgm/ChangeLog
+++ /dev/null
@@ -1,11166 +0,0 @@
-2022-08-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontWriter.cpp, src/HashFunction.hpp, src/HyperlinkManager.hpp,
- src/Opacity.hpp, src/SVGElement.hpp, src/TFM.cpp,
- src/optimizer/Makefile.am, src/utility.hpp:
- fixed indentations
-
-2022-08-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.14
-
- * configure.ac:
- removed redundant macros from configure.ac
-
-2022-07-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CLCommandLine.cpp, src/CMap.cpp, src/DVIReader.cpp,
- src/DvisvgmSpecialHandler.cpp, src/FileFinder.cpp, src/FilePath.cpp,
- src/Font.cpp, src/FontMap.cpp, src/HyperlinkManager.cpp, src/MapLine.cpp,
- src/MetafontWrapper.cpp, src/PDFParser.cpp, src/PageSize.cpp,
- src/PapersizeSpecialHandler.cpp, src/PsSpecialHandler.cpp,
- src/SVGOutput.cpp, src/SVGTree.cpp, src/Unicode.cpp, src/XMLNode.cpp,
- src/XMLParser.cpp, src/XMLString.cpp, src/dvisvgm.cpp, src/utility.cpp:
- adapted types of variables used for string positions
-
- * src/DvisvgmSpecialHandler.cpp:
- reordered if/else statement
-
- * src/MiKTeXCom.cpp:
- replaced C-style cast
-
-2022-07-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPathParser.hpp:
- updated year in copyright statement
-
- * src/XMLParser.cpp:
- handle GraphicsPathParserExceptions in XMLParser
-
- * src/GraphicsPathParser.hpp:
- improved position information of GraphicsPathParserException
-
-2022-07-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/include/woff2/encode.h, libs/woff2/include/woff2/output.h,
- libs/woff2/src/font.cc, libs/woff2/src/glyph.cc, libs/woff2/src/glyph.h,
- libs/woff2/src/normalize.cc, libs/woff2/src/transform.cc,
- libs/woff2/src/woff2_enc.cc, libs/woff2/src/woff2_out.cc:
- applied latest upstream changes to woff2
- library
-https://github.com/google/woff2/commit/62ae7a4c1ec7fb38adbf1294924db5924489889a
-
- * libs/woff2/src/normalize.cc, libs/woff2/src/woff2_enc.cc:
- woff2: removed unused variables to prevent compiler warnings
-
- * libs/woff2/src/font.cc, libs/woff2/src/normalize.cc:
- woff2: adapted variable types to prevent warnings
-
- * src/dvisvgm.cpp:
- added prefix to XML error messages
-
-2022-07-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/MiKTeXCom.cpp:
- updated output of MiKTeX version number
-
- * src/PDFParser.cpp:
- prevent warning about [[nodiscard]] return value
-
-2022-07-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPathParser.hpp:
- minor code tweaks in GraphicsPathParser
-
- * src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/Makefile.am, src/XMLParser.cpp, src/XMLParser.hpp,
- tests/DvisvgmSpecialTest.cpp:
- moved XMLParser from DvisvgmSpecialHandler to separate class
-
- * src/XMLParser.cpp:
- parse and reformat definitions of raw graphics paths
-
-2022-06-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLNode.cpp, src/XMLNode.hpp, src/optimizer/GroupCollapser.cpp:
- optimizer: improved removal of redundant group elements
-
- * src/XMLNode.cpp, src/XMLNode.hpp, src/optimizer/AttributeExtractor.cpp,
- src/optimizer/AttributeExtractor.hpp, src/optimizer/GroupCollapser.cpp,
- src/optimizer/TextSimplifier.cpp:
- moved inheritability check of attributes to Attribute struct
-
-2022-06-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontWriter.cpp:
- ensure proper representation of empty glyphs in SFD files
-
-2022-06-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp, src/FontManager.cpp:
- ignore letter case when looking up file suffixes
-
- * src/FileFinder.cpp:
- MiKTeX: handle lookup of TrueType files similar to kpathsea
-Look for
- .ttf, .ttc, and .dfont suffixes
-
- * src/FontManager.cpp:
- XFontDef: lookup font formats rather than specific suffixes
-
-2022-06-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontManager.cpp:
- XFontDef: added support for font filenames without suffix
-
-2022-05-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * README.md:
- Removed paragraph about Ghostscript's new PDF interpreter
-
-because the
- old interpreter is still available in recent GS releases and can be
- reactivated by dvisvgm.
-
-2022-04-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.13.4
-
- * NEWS:
- updated NEWS
-
-2022-04-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSInterpreter.cpp:
- updated URL to GS documentation of -dNEWPDF
-
-2022-04-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * m4/ax_cxx_compile_stdcxx.m4:
- updated ax_cxx_compile_stdcxx.m4 to version 14
-
-2022-03-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- updated FreeType to version 2.12
-
-2022-03-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- updated zlib to version 1.2.12
-
- * src/PSInterpreter.cpp:
- disable new PDF interpreter when using GS >= 9.56.0
-
-2022-03-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/ImageToSVG.cpp:
- reset bounding box before converting next PDF page
-closes #182
-
-2022-02-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.13.3
-
- * NEWS:
- updated NEWS
-
-2022-02-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in, src/optimizer/ClipPathReassigner.cpp,
- src/optimizer/ClipPathReassigner.hpp, src/optimizer/Makefile.am,
- src/optimizer/SVGOptimizer.cpp:
- added optimizer module to remove identical clipPath elements
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in, src/optimizer/SVGOptimizer.cpp:
- renamed optimizer module 'remove-clippath' to 'remove-clippaths'
-
- * src/optimizer/Makefile.am:
- added missing include path
-
-2022-02-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BoundingBox.cpp, src/BoundingBox.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp:
- avoid adding clip-path attributes to all elements created from EPS/PDF
- files
-
-2022-02-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- moved 'transform' attribute of 'svg' element to wrapping group
-closes
- #178
-
- * src/PsSpecialHandler.cpp:
- properly wrap 'svg' element with group
-
-2022-02-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.13.2
-
- * NEWS:
- updated NEWS
-
-2022-02-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- removed redundant space is PS code
-
- * src/BoundingBox.cpp, src/BoundingBox.hpp, src/DvisvgmSpecialHandler.cpp,
- src/PSPattern.cpp, src/PsSpecialHandler.cpp, src/SVGTree.cpp,
- tests/BoundingBoxTest.cpp, tests/DvisvgmSpecialTest.cpp,
- tests/EmSpecialTest.cpp, tests/PapersizeSpecialTest.cpp:
- renamed BoundingBox::toSVGViewBox to BoundingBox::svgViewBoxString
-
-2022-02-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- use overflow='hidden' to clip included EPS/PDF graphics
-
-2022-01-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.13.1
-
- * NEWS:
- updated NEWS
-
- * README.md:
- added Copr status badge to README
-
-2022-01-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSPattern.cpp:
- added explicit std::move to fix build issues with older compilers
-closes
- #173
-
-2022-01-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * README.md:
- removed Travis badge from README
-
- * libs/xxHash/xxhash.h:
- do no longer depend on <assert.h> for
- XXH_STATIC_ASSERT
-https://github.com/Cyan4973/xxHash/commit/6189ecd3d44a693460f86280ccf49d33cb4b18e1
-
-2022-01-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- apply bounding box parameters given with pdffile special
-closes #174
-
- * src/DvisvgmSpecialHandler.cpp:
- added evaluation of {?(...)} to dvisvgm:rawdef special
-closes #175
-
-2022-01-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * .github/workflows/c-cpp.yml:
- CI: ensure latest package updates are installed
-
- * README.md:
- updated README
-
-2022-01-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in:
- reworded some sentences of the manual page
-closes #159
-
- * .appveyor.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.13
-
-2022-01-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS:
- updated NEWS
-
-2022-01-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, README, README.md, configure.ac, doc/Makefile.am,
- doc/conf-dblatex-man.xsl, doc/conf-dblatex-pdf.xsl, doc/db2html.xsl,
- doc/dvisvgm.txt.in, doc/tweak-db-article.xsl, doc/tweak-db-refentry.xsl,
- doc/tweak-dblatex-pdf.xsl, libs/Makefile.am,
- libs/ff-woff/fontforge/tmpfile2.cpp, src/AGLTable.hpp,
- src/BasicDVIReader.cpp, src/BasicDVIReader.hpp, src/Bezier.cpp,
- src/Bezier.hpp, src/BgColorSpecialHandler.cpp,
- src/BgColorSpecialHandler.hpp, src/Bitmap.cpp, src/Bitmap.hpp,
- src/BoundingBox.cpp, src/BoundingBox.hpp, src/CLCommandLine.cpp,
- src/CLCommandLine.hpp, src/CLOption.hpp, src/CMap.cpp, src/CMap.hpp,
- src/CMapManager.cpp, src/CMapManager.hpp, src/CMapReader.cpp,
- src/CMapReader.hpp, src/Calculator.cpp, src/Calculator.hpp,
- src/CharMapID.cpp, src/CharMapID.hpp, src/Character.hpp, src/Color.cpp,
- src/Color.hpp, src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.hpp,
- src/CommandLine.hpp, src/DLLoader.cpp, src/DLLoader.hpp,
- src/DVIActions.hpp, src/DVIReader.cpp, src/DVIReader.hpp,
- src/DVIToSVG.cpp, src/DVIToSVG.hpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.hpp, src/Directory.cpp, src/Directory.hpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/EPSFile.cpp, src/EPSFile.hpp, src/EPSToSVG.hpp,
- src/EllipticalArc.cpp, src/EllipticalArc.hpp, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.hpp, src/EncFile.cpp, src/EncFile.hpp,
- src/FileFinder.cpp, src/FileFinder.hpp, src/FilePath.cpp,
- src/FilePath.hpp, src/FileSystem.cpp, src/FileSystem.hpp,
- src/FixWord.hpp, src/Font.cpp, src/Font.hpp, src/FontCache.cpp,
- src/FontCache.hpp, src/FontEncoding.cpp, src/FontEncoding.hpp,
- src/FontEngine.cpp, src/FontEngine.hpp, src/FontManager.cpp,
- src/FontManager.hpp, src/FontMap.cpp, src/FontMap.hpp,
- src/FontMetrics.cpp, src/FontMetrics.hpp, src/FontStyle.hpp,
- src/FontWriter.cpp, src/FontWriter.hpp, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.hpp, src/GFReader.cpp, src/GFReader.hpp,
- src/GFTracer.cpp, src/GFTracer.hpp, src/Ghostscript.cpp,
- src/Ghostscript.hpp, src/Glyph.hpp, src/GlyphTracerMessages.hpp,
- src/GraphicsPath.hpp, src/HashFunction.cpp, src/HashFunction.hpp,
- src/HtmlSpecialHandler.cpp, src/HtmlSpecialHandler.hpp,
- src/HyperlinkManager.cpp, src/HyperlinkManager.hpp, src/ImageToSVG.cpp,
- src/ImageToSVG.hpp, src/InputBuffer.cpp, src/InputBuffer.hpp,
- src/InputReader.cpp, src/InputReader.hpp, src/JFM.cpp, src/JFM.hpp,
- src/Length.cpp, src/Length.hpp, src/MD5HashFunction.hpp, src/Makefile.am,
- src/MapLine.cpp, src/MapLine.hpp, src/Matrix.cpp, src/Matrix.hpp,
- src/Message.cpp, src/Message.hpp, src/MessageException.hpp,
- src/MetafontWrapper.cpp, src/MetafontWrapper.hpp, src/MiKTeXCom.cpp,
- src/MiKTeXCom.hpp, src/NoPsSpecialHandler.cpp,
- src/NoPsSpecialHandler.hpp, src/NumericRanges.hpp, src/Opacity.cpp,
- src/Opacity.hpp, src/PDFParser.cpp, src/PDFParser.hpp, src/PDFToSVG.hpp,
- src/PSFilter.hpp, src/PSInterpreter.cpp, src/PSInterpreter.hpp,
- src/PSPattern.cpp, src/PSPattern.hpp, src/PSPreviewFilter.cpp,
- src/PSPreviewFilter.hpp, src/PageRanges.cpp, src/PageRanges.hpp,
- src/PageSize.cpp, src/PageSize.hpp, src/Pair.hpp,
- src/PapersizeSpecialHandler.cpp, src/PapersizeSpecialHandler.hpp,
- src/PathClipper.cpp, src/PathClipper.hpp, src/PdfSpecialHandler.cpp,
- src/PdfSpecialHandler.hpp, src/PreScanDVIReader.cpp,
- src/PreScanDVIReader.hpp, src/Process.cpp, src/Process.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/RangeMap.cpp,
- src/RangeMap.hpp, src/SVGCharHandler.cpp, src/SVGCharHandler.hpp,
- src/SVGCharHandlerFactory.cpp, src/SVGCharHandlerFactory.hpp,
- src/SVGCharPathHandler.cpp, src/SVGCharPathHandler.hpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGCharTspanTextHandler.hpp,
- src/SVGElement.cpp, src/SVGElement.hpp, src/SVGOutput.cpp,
- src/SVGOutput.hpp, src/SVGSingleCharTextHandler.cpp,
- src/SVGSingleCharTextHandler.hpp, src/SVGTree.cpp, src/SVGTree.hpp,
- src/ShadingPatch.cpp, src/ShadingPatch.hpp, src/SignalHandler.cpp,
- src/SignalHandler.hpp, src/SourceInput.cpp, src/SourceInput.hpp,
- src/SpecialActions.hpp, src/SpecialHandler.hpp, src/SpecialManager.cpp,
- src/SpecialManager.hpp, src/StreamReader.cpp, src/StreamReader.hpp,
- src/StreamWriter.cpp, src/StreamWriter.hpp, src/Subfont.cpp,
- src/Subfont.hpp, src/System.cpp, src/System.hpp, src/TFM.cpp,
- src/TFM.hpp, src/TTFAutohint.cpp, src/TTFAutohint.hpp,
- src/TensorProductPatch.cpp, src/TensorProductPatch.hpp, src/Terminal.cpp,
- src/Terminal.hpp, src/ToUnicodeMap.cpp, src/ToUnicodeMap.hpp,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.hpp,
- src/TriangularPatch.cpp, src/TriangularPatch.hpp, src/TrueTypeFont.cpp,
- src/TrueTypeFont.hpp, src/Unicode.cpp, src/Unicode.hpp,
- src/VFActions.hpp, src/VFReader.cpp, src/VFReader.hpp,
- src/VectorIterator.hpp, src/VectorStream.hpp, src/XMLDocument.cpp,
- src/XMLDocument.hpp, src/XMLNode.cpp, src/XMLNode.hpp, src/XMLString.cpp,
- src/XMLString.hpp, src/XXHashFunction.hpp, src/ZLibOutputStream.hpp,
- src/dvisvgm.cpp, src/ffwrapper.c, src/ffwrapper.h, src/macros.hpp,
- src/optimizer/AttributeExtractor.cpp,
- src/optimizer/AttributeExtractor.hpp, src/optimizer/DependencyGraph.hpp,
- src/optimizer/GroupCollapser.cpp, src/optimizer/GroupCollapser.hpp,
- src/optimizer/OptimizerModule.hpp,
- src/optimizer/RedundantElementRemover.cpp,
- src/optimizer/RedundantElementRemover.hpp,
- src/optimizer/SVGOptimizer.cpp, src/optimizer/SVGOptimizer.hpp,
- src/optimizer/TextSimplifier.cpp, src/optimizer/TextSimplifier.hpp,
- src/optimizer/TransformSimplifier.cpp,
- src/optimizer/TransformSimplifier.hpp, src/optimizer/WSNodeRemover.cpp,
- src/optimizer/WSNodeRemover.hpp, src/options.dtd, src/options.xml,
- src/psdefs.cpp, src/utility.cpp, src/utility.hpp, src/version.hpp.in,
- src/windows.hpp, tests/BezierTest.cpp, tests/BitmapTest.cpp,
- tests/BoundingBoxTest.cpp, tests/CMapManagerTest.cpp,
- tests/CMapReaderTest.cpp, tests/CMapTest.cpp, tests/CalculatorTest.cpp,
- tests/ColorSpecialTest.cpp, tests/ColorTest.cpp,
- tests/CommandLineTest.cpp, tests/DVIReaderTest.cpp,
- tests/DependencyGraphTest.cpp, tests/DirectoryTest.cpp,
- tests/DvisvgmSpecialTest.cpp, tests/EllipticalArcTest.cpp,
- tests/EmSpecialTest.cpp, tests/FileFinderTest.cpp,
- tests/FilePathTest.cpp, tests/FileSystemTest.cpp,
- tests/FontCacheTest.cpp, tests/FontManagerTest.cpp,
- tests/FontMapTest.cpp, tests/GFGlyphTracerTest.cpp,
- tests/GFReaderTest.cpp, tests/GhostscriptTest.cpp,
- tests/GraphicsPathTest.cpp, tests/HashFunctionTest.cpp,
- tests/JFMReaderTest.cpp, tests/LengthTest.cpp, tests/Makefile.am,
- tests/MapLineTest.cpp, tests/MatrixTest.cpp,
- tests/MessageExceptionTest.cpp, tests/PDFParserTest.cpp,
- tests/PSInterpreterTest.cpp, tests/PageRagesTest.cpp,
- tests/PageSizeTest.cpp, tests/PairTest.cpp,
- tests/PapersizeSpecialTest.cpp, tests/RangeMapTest.cpp,
- tests/SVGOutputTest.cpp, tests/ShadingPatchTest.cpp,
- tests/SpecialManagerTest.cpp, tests/SplittedCharInputBufferTest.cpp,
- tests/StreamInputBufferTest.cpp, tests/StreamReaderTest.cpp,
- tests/StreamWriterTest.cpp, tests/StringMatcherTest.cpp,
- tests/SubfontTest.cpp, tests/TFMReaderTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/ToUnicodeMapTest.cpp,
- tests/TpicSpecialTest.cpp, tests/TriangularPatchTest.cpp,
- tests/UnicodeTest.cpp, tests/UtilityTest.cpp,
- tests/VectorIteratorTest.cpp, tests/VectorStreamTest.cpp,
- tests/XMLNodeTest.cpp, tests/XMLStringTest.cpp, tests/check-conv,
- tests/create-makefile, tests/data/Makefile.am, tests/genhashcheck.py,
- tests/normalize.xsl, tests/testmain.cpp:
- updated year in copyright statements to 2022
-
-2022-01-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am:
- don't build manpage in parallel
-closes #171
-
-2021-12-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/brotli/enc/encode.c:
- fixed parameter type warning in Brotli library
-
-2021-12-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- updated Windows platform toolset to version 143
-
-2021-12-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in, src/dvisvgm.cpp:
- allow for conversion of multiple given EPS files
-
- * src/DVIToSVG.cpp:
- fixed setting of hash algorithm given on command-line
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in, src/SVGOutput.cpp, src/SVGOutput.hpp,
- src/dvisvgm.cpp:
- added variables n and N to option --output
-
-2021-12-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/InputReader.cpp:
- replaced deprecated std::ptr_fun
-
-2021-11-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/xxHash/xxh3.h, libs/xxHash/xxhash.h:
- updated xxHash to version 0.8.1
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in:
- manpage: extended introduction of section 'supported specials'
-
-2021-11-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp, src/FontEngine.cpp, src/FontEngine.hpp:
- use glyph metrics from font file to compute height and depth
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in:
- manpage: slightly changed wording regarding the bgcolor handler
-
-2021-11-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml:
- removed Travis configuration
-
-2021-10-30 Naveen M K <naveen521kk@gmail.com>
-
- * src/FileSystem.cpp:
- mingw: fix for gcc 11
-
-2021-09-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/optimizer/GroupCollapser.cpp, src/optimizer/GroupCollapser.hpp,
- src/optimizer/SVGOptimizer.cpp:
- simplify transform attributes only if 'simplify-transform' is given
-
-2021-09-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/UtilityTest.cpp:
- prevent creating temporaries in test loop
-
-2021-09-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/gtest/include/gtest/gtest-death-test.h,
- tests/gtest/include/gtest/gtest-matchers.h,
- tests/gtest/include/gtest/gtest-message.h,
- tests/gtest/include/gtest/gtest-param-test.h,
- tests/gtest/include/gtest/gtest-printers.h,
- tests/gtest/include/gtest/gtest-spi.h,
- tests/gtest/include/gtest/gtest-test-part.h,
- tests/gtest/include/gtest/gtest-typed-test.h,
- tests/gtest/include/gtest/gtest.h,
- tests/gtest/include/gtest/gtest_pred_impl.h,
- tests/gtest/include/gtest/gtest_prod.h,
- tests/gtest/include/gtest/internal/custom/gtest-port.h,
- tests/gtest/include/gtest/internal/custom/gtest-printers.h,
- tests/gtest/include/gtest/internal/custom/gtest.h,
- tests/gtest/include/gtest/internal/gtest-death-test-internal.h,
- tests/gtest/include/gtest/internal/gtest-filepath.h,
- tests/gtest/include/gtest/internal/gtest-internal.h,
- tests/gtest/include/gtest/internal/gtest-param-util.h,
- tests/gtest/include/gtest/internal/gtest-port-arch.h,
- tests/gtest/include/gtest/internal/gtest-port.h,
- tests/gtest/include/gtest/internal/gtest-string.h,
- tests/gtest/include/gtest/internal/gtest-type-util.h,
- tests/gtest/src/gtest-death-test.cc, tests/gtest/src/gtest-filepath.cc,
- tests/gtest/src/gtest-internal-inl.h, tests/gtest/src/gtest-matchers.cc,
- tests/gtest/src/gtest-port.cc, tests/gtest/src/gtest-printers.cc,
- tests/gtest/src/gtest-test-part.cc, tests/gtest/src/gtest-typed-test.cc,
- tests/gtest/src/gtest.cc, tests/gtest/src/gtest_main.cc,
- tests/testutil.hpp:
- updated gtest to version 1.11
-
-2021-08-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/optimizer/GroupCollapser.cpp, src/optimizer/GroupCollapser.hpp:
- GroupCollapser: simplify transform attributes after combining them
-
-2021-08-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.12
-
- * NEWS:
- updated NEWS
-
-2021-08-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- skip fill actions if colorspace with unsupported pattern type is active
-
-2021-08-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp:
- ensure adding color attribute to tiling patterns
-(closes #158)
-
-2021-07-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- updated FreeType to version 2.11
-
-2021-07-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FilePath.cpp:
- prevent out-of-bounds access
-
- * src/InputBuffer.hpp:
- delete unused assignment operator
-
-2021-06-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * .gitattributes:
- Update .gitattributes
-
-marked all files in libs and its subfolders as
- vendored code
-
-2021-06-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FilePath.cpp:
- fixed handling of root directories in file paths
-
- * src/FilePath.cpp, src/FileSystem.cpp, tests/FilePathTest.cpp:
- improved handling of drive letters on Windows
-
-2021-06-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- fixed displaced graphics if PDF MediaBox isn't located at origin
-
- * tests/data/Makefile.am:
- added missing test data file to Makefile
-
-2021-06-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * m4/ax_cxx_compile_stdcxx.m4:
- ax_cxx_compile_stdcxx.m4 to version 12
-
-2021-05-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.hpp:
- simplified boolean expression
-
- * src/Font.hpp, src/SVGCharPathHandler.cpp:
- removed default parameter from virtual methods
-
-2021-05-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSPattern.hpp, src/PsSpecialHandler.cpp:
- removed dynamic casting in processing of PS patterns
-
- * src/PdfSpecialHandler.cpp:
- replaced dynamic_cast with static_cast as type is unambiguous
-
- * src/TensorProductPatch.cpp, src/TriangularPatch.cpp:
- replaced dynamic casts of shading patches with PS type comparisons
-
- * src/CMapManager.cpp:
- replaced dynamic cast of CMap type test with existing method
- mapsToUnicode()
-
-2021-05-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/DVIToSVG.cpp, src/DVIToSVGActions.cpp,
- src/Font.cpp, src/Font.hpp, src/FontEngine.cpp, src/FontManager.cpp,
- src/SVGCharHandler.cpp, src/SVGCharPathHandler.cpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGTree.cpp, src/utility.hpp,
- tests/FontManagerTest.cpp, tests/data/lmmono12-regular.otf:
- added font_cast to replace dynamic casts of Font pointers
-
-2021-05-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/FontMetrics.hpp, src/JFM.hpp:
- replaced dynamic cast to test for JFM with dedicated method
-
-2021-04-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- fixed PS error thrown when trying to set a shading pattern
-
- * src/PsSpecialHandler.cpp, src/SVGElement.cpp, src/SVGElement.hpp:
- always add fill attribute to pattern paths
-
-2021-04-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in:
- reworded few parts of the manual page
-
-2021-04-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- restore proper context node at end of pattern definition
-
-2021-03-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPath.hpp:
- use std::equal to check equality of GraphicsPaths
-
- * src/EllipticalArc.cpp, src/Matrix.cpp, src/Matrix.hpp,
- tests/MatrixTest.cpp:
- Matrix: added default constructor; explicit init list constructor
-
- * src/GFReader.cpp, src/Message.cpp, src/VectorIterator.hpp:
- removed redundant index checks
-
- * src/DVIToSVG.cpp, src/DVIToSVG.hpp:
- initialize basic members outside constructor body
-
- * src/DvisvgmSpecialHandler.cpp:
- two small code improvements
-
- * src/FontManager.cpp:
- removed redundant check
-
- * src/GFGlyphTracer.cpp, src/GFGlyphTracer.hpp, src/HyperlinkManager.hpp,
- src/PSInterpreter.cpp, src/PsSpecialHandler.cpp:
- added missing const to reference parameters
-
- * src/InputBuffer.hpp:
- prevent unwanted copying of input buffers
-
-2021-03-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.1:
- fixed typo in manual
-
- * src/PSInterpreter.cpp:
- fixed expression to check current GS running mode
-
- * src/SVGSingleCharTextHandler.cpp:
- reset change flag of color and opacity properties unconditionally
-
- * src/SVGCharTspanTextHandler.cpp:
- create initial tspan if opacity values differ from defaults
-
- * src/Ghostscript.cpp, src/Ghostscript.hpp, src/PSInterpreter.cpp,
- src/PSInterpreter.hpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- update opacity settings on grestore
-Requires GS >= 9.52 because earlier
- versions only provide operators to set the
-opacity/blendmode values and
- none to retrieve them.
-
- * src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PsSpecialHandler.hpp,
- src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- renamed PS operator setisshapealpha
-
- * src/dvisvgm.cpp:
- added missing parenthesis in info message
-
-2021-03-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/optimizer/GroupCollapser.cpp, src/optimizer/TextSimplifier.cpp:
- minor loop optimizations
-
- * src/XMLNode.cpp:
- don't create newlines inside text elements
-since they may lead to
- additional whitespace, e.g. between tspans that lack absolute coordinates
-
- * src/SVGCharPathHandler.cpp, src/SVGElement.cpp, src/SVGElement.hpp:
- don't add style attributes to groups because they're not inheritable
-
-2021-03-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Makefile.am, src/Opacity.cpp, src/Opacity.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp:
- combined alpha and blendmode values into dedicated class
-
- * src/SVGCharHandler.hpp:
- added default and move constructor to CharProperty
-
- * src/DVIToSVGActions.hpp, src/ImageToSVG.hpp, src/Opacity.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp,
- src/SVGCharHandler.hpp, src/SVGCharPathHandler.cpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGSingleCharTextHandler.cpp,
- src/SVGTree.hpp, src/SpecialActions.hpp:
- added opacity properties to text elements
-
- * src/SVGCharHandler.cpp, src/SVGCharHandler.hpp,
- src/SVGCharPathHandler.cpp, src/SVGCharTspanTextHandler.cpp,
- src/SVGSingleCharTextHandler.cpp:
- added shorthand operator for CharProperty::get()
-
- * src/Opacity.hpp, src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp:
- PS handler: replaced isolated opacity variables with Opacity class
-
- * src/Makefile.am, src/Opacity.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/SVGElement.cpp, src/SVGElement.hpp,
- src/XMLNode.hpp:
- added class to handle SVG attributes in a uniform manner
-
- * src/DVIToSVGActions.cpp, src/DVIToSVGActions.hpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/EmSpecialHandler.cpp, src/HyperlinkManager.cpp, src/ImageToSVG.hpp,
- src/PSPattern.cpp, src/PsSpecialHandler.cpp, src/SVGCharHandler.cpp,
- src/SVGCharHandler.hpp, src/SVGCharPathHandler.cpp,
- src/SVGCharPathHandler.hpp, src/SVGCharTspanTextHandler.cpp,
- src/SVGCharTspanTextHandler.hpp, src/SVGElement.cpp, src/SVGElement.hpp,
- src/SVGSingleCharTextHandler.cpp, src/SVGTree.cpp, src/SVGTree.hpp,
- src/SpecialActions.hpp, src/TpicSpecialHandler.cpp,
- tests/TpicSpecialTest.cpp:
- added opacity properties to graphics elements created outside the PS
- handler
-(closes #148)
-
- * src/EmSpecialHandler.cpp, src/SVGElement.cpp, src/SVGElement.hpp,
- src/TpicSpecialHandler.cpp, tests/EmSpecialTest.cpp,
- tests/TpicSpecialTest.cpp:
- unified handling of "point" attributes
-
- * src/EmSpecialHandler.cpp, src/SVGCharHandler.cpp,
- src/SVGCharPathHandler.cpp, src/SVGElement.cpp, src/SVGTree.cpp,
- src/TpicSpecialHandler.cpp:
- removed redundant casts to XMLString
-
-2021-03-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * .github/workflows/c-cpp.yml:
- added GitHub CI configuration
-
- * .github/workflows/c-cpp.yml:
- removed distcheck from CI
-
- * README.md:
- added GitHub CI badge; removed Copr badge
-
-2021-03-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.cpp, src/BoundingBox.cpp,
- src/DvisvgmSpecialHandler.cpp, src/EllipticalArc.cpp,
- src/EmSpecialHandler.cpp, src/FontCache.cpp, src/FontEngine.cpp,
- src/FontManager.cpp, src/FontWriter.cpp, src/PSInterpreter.cpp,
- src/PapersizeSpecialHandler.cpp, src/RangeMap.cpp, src/Subfont.cpp,
- src/TpicSpecialHandler.cpp, src/TrueTypeFont.cpp, src/XMLDocument.cpp,
- src/XMLNode.cpp, src/dvisvgm.cpp, src/utility.cpp:
- avoid copying objects in emplace methods
-
-2021-02-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * .gitignore:
- added .pyc to ignored file suffixes
-
-2021-02-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FilePath.cpp, src/FileSystem.cpp, src/FileSystem.hpp:
- improved handling of differing drive letters in Windows file paths
-
-2021-01-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- fixed typo in manual
-
-2021-01-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/tweak-dblatex-tex.py:
- updated tweak-dblatex-tex to Python 3
-
-2021-01-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.11.1
-
- * NEWS:
- updated NEWS
-
-2021-01-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, README, README.md, configure.ac, doc/Makefile.am,
- doc/conf-dblatex-man.xsl, doc/conf-dblatex-pdf.xsl, doc/db2html.xsl,
- doc/dvisvgm.1, doc/dvisvgm.txt.in, doc/tweak-db-article.xsl,
- doc/tweak-db-refentry.xsl, doc/tweak-dblatex-pdf.xsl, libs/Makefile.am,
- libs/ff-woff/fontforge/tmpfile2.cpp, src/AGLTable.hpp,
- src/BasicDVIReader.cpp, src/BasicDVIReader.hpp, src/Bezier.cpp,
- src/Bezier.hpp, src/BgColorSpecialHandler.cpp,
- src/BgColorSpecialHandler.hpp, src/Bitmap.cpp, src/Bitmap.hpp,
- src/BoundingBox.cpp, src/BoundingBox.hpp, src/CLCommandLine.cpp,
- src/CLCommandLine.hpp, src/CLOption.hpp, src/CMap.cpp, src/CMap.hpp,
- src/CMapManager.cpp, src/CMapManager.hpp, src/CMapReader.cpp,
- src/CMapReader.hpp, src/Calculator.cpp, src/Calculator.hpp,
- src/CharMapID.cpp, src/CharMapID.hpp, src/Character.hpp, src/Color.cpp,
- src/Color.hpp, src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.hpp,
- src/CommandLine.hpp, src/DLLoader.cpp, src/DLLoader.hpp,
- src/DVIActions.hpp, src/DVIReader.cpp, src/DVIReader.hpp,
- src/DVIToSVG.cpp, src/DVIToSVG.hpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.hpp, src/Directory.cpp, src/Directory.hpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/EPSFile.cpp, src/EPSFile.hpp, src/EPSToSVG.hpp,
- src/EllipticalArc.cpp, src/EllipticalArc.hpp, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.hpp, src/EncFile.cpp, src/EncFile.hpp,
- src/FileFinder.cpp, src/FileFinder.hpp, src/FilePath.cpp,
- src/FilePath.hpp, src/FileSystem.cpp, src/FileSystem.hpp,
- src/FixWord.hpp, src/Font.cpp, src/Font.hpp, src/FontCache.cpp,
- src/FontCache.hpp, src/FontEncoding.cpp, src/FontEncoding.hpp,
- src/FontEngine.cpp, src/FontEngine.hpp, src/FontManager.cpp,
- src/FontManager.hpp, src/FontMap.cpp, src/FontMap.hpp,
- src/FontMetrics.cpp, src/FontMetrics.hpp, src/FontStyle.hpp,
- src/FontWriter.cpp, src/FontWriter.hpp, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.hpp, src/GFReader.cpp, src/GFReader.hpp,
- src/GFTracer.cpp, src/GFTracer.hpp, src/Ghostscript.cpp,
- src/Ghostscript.hpp, src/Glyph.hpp, src/GlyphTracerMessages.hpp,
- src/GraphicsPath.hpp, src/HashFunction.cpp, src/HashFunction.hpp,
- src/HtmlSpecialHandler.cpp, src/HtmlSpecialHandler.hpp,
- src/HyperlinkManager.cpp, src/HyperlinkManager.hpp, src/ImageToSVG.cpp,
- src/ImageToSVG.hpp, src/InputBuffer.cpp, src/InputBuffer.hpp,
- src/InputReader.cpp, src/InputReader.hpp, src/JFM.cpp, src/JFM.hpp,
- src/Length.cpp, src/Length.hpp, src/MD5HashFunction.hpp, src/Makefile.am,
- src/MapLine.cpp, src/MapLine.hpp, src/Matrix.cpp, src/Matrix.hpp,
- src/Message.cpp, src/Message.hpp, src/MessageException.hpp,
- src/MetafontWrapper.cpp, src/MetafontWrapper.hpp, src/MiKTeXCom.cpp,
- src/MiKTeXCom.hpp, src/NoPsSpecialHandler.cpp,
- src/NoPsSpecialHandler.hpp, src/NumericRanges.hpp, src/PDFParser.cpp,
- src/PDFParser.hpp, src/PDFToSVG.hpp, src/PSFilter.hpp,
- src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PSPattern.cpp,
- src/PSPattern.hpp, src/PSPreviewFilter.cpp, src/PSPreviewFilter.hpp,
- src/PageRanges.cpp, src/PageRanges.hpp, src/PageSize.cpp,
- src/PageSize.hpp, src/Pair.hpp, src/PapersizeSpecialHandler.cpp,
- src/PapersizeSpecialHandler.hpp, src/PathClipper.cpp,
- src/PathClipper.hpp, src/PdfSpecialHandler.cpp,
- src/PdfSpecialHandler.hpp, src/PreScanDVIReader.cpp,
- src/PreScanDVIReader.hpp, src/Process.cpp, src/Process.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/RangeMap.cpp,
- src/RangeMap.hpp, src/SVGCharHandler.cpp, src/SVGCharHandler.hpp,
- src/SVGCharHandlerFactory.cpp, src/SVGCharHandlerFactory.hpp,
- src/SVGCharPathHandler.cpp, src/SVGCharPathHandler.hpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGCharTspanTextHandler.hpp,
- src/SVGOutput.cpp, src/SVGOutput.hpp, src/SVGSingleCharTextHandler.cpp,
- src/SVGSingleCharTextHandler.hpp, src/SVGTree.cpp, src/SVGTree.hpp,
- src/ShadingPatch.cpp, src/ShadingPatch.hpp, src/SignalHandler.cpp,
- src/SignalHandler.hpp, src/SourceInput.cpp, src/SourceInput.hpp,
- src/SpecialActions.hpp, src/SpecialHandler.hpp, src/SpecialManager.cpp,
- src/SpecialManager.hpp, src/StreamReader.cpp, src/StreamReader.hpp,
- src/StreamWriter.cpp, src/StreamWriter.hpp, src/Subfont.cpp,
- src/Subfont.hpp, src/System.cpp, src/System.hpp, src/TFM.cpp,
- src/TFM.hpp, src/TTFAutohint.cpp, src/TTFAutohint.hpp,
- src/TensorProductPatch.cpp, src/TensorProductPatch.hpp, src/Terminal.cpp,
- src/Terminal.hpp, src/ToUnicodeMap.cpp, src/ToUnicodeMap.hpp,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.hpp,
- src/TriangularPatch.cpp, src/TriangularPatch.hpp, src/TrueTypeFont.cpp,
- src/TrueTypeFont.hpp, src/Unicode.cpp, src/Unicode.hpp,
- src/VFActions.hpp, src/VFReader.cpp, src/VFReader.hpp,
- src/VectorIterator.hpp, src/VectorStream.hpp, src/XMLDocument.cpp,
- src/XMLDocument.hpp, src/XMLNode.cpp, src/XMLNode.hpp, src/XMLString.cpp,
- src/XMLString.hpp, src/XXHashFunction.hpp, src/ZLibOutputStream.hpp,
- src/dvisvgm.cpp, src/ffwrapper.c, src/ffwrapper.h, src/macros.hpp,
- src/optimizer/AttributeExtractor.cpp,
- src/optimizer/AttributeExtractor.hpp, src/optimizer/DependencyGraph.hpp,
- src/optimizer/GroupCollapser.cpp, src/optimizer/GroupCollapser.hpp,
- src/optimizer/OptimizerModule.hpp,
- src/optimizer/RedundantElementRemover.cpp,
- src/optimizer/RedundantElementRemover.hpp,
- src/optimizer/SVGOptimizer.cpp, src/optimizer/SVGOptimizer.hpp,
- src/optimizer/TextSimplifier.cpp, src/optimizer/TextSimplifier.hpp,
- src/optimizer/TransformSimplifier.cpp,
- src/optimizer/TransformSimplifier.hpp, src/optimizer/WSNodeRemover.cpp,
- src/optimizer/WSNodeRemover.hpp, src/options.dtd, src/options.xml,
- src/psdefs.cpp, src/utility.cpp, src/utility.hpp, src/version.hpp,
- src/version.hpp.in, src/windows.hpp, tests/BezierTest.cpp,
- tests/BitmapTest.cpp, tests/BoundingBoxTest.cpp,
- tests/CMapManagerTest.cpp, tests/CMapReaderTest.cpp, tests/CMapTest.cpp,
- tests/CalculatorTest.cpp, tests/ColorSpecialTest.cpp,
- tests/ColorTest.cpp, tests/CommandLineTest.cpp, tests/DVIReaderTest.cpp,
- tests/DependencyGraphTest.cpp, tests/DirectoryTest.cpp,
- tests/DvisvgmSpecialTest.cpp, tests/EllipticalArcTest.cpp,
- tests/EmSpecialTest.cpp, tests/FileFinderTest.cpp,
- tests/FilePathTest.cpp, tests/FileSystemTest.cpp,
- tests/FontCacheTest.cpp, tests/FontManagerTest.cpp,
- tests/FontMapTest.cpp, tests/GFGlyphTracerTest.cpp,
- tests/GFReaderTest.cpp, tests/GhostscriptTest.cpp,
- tests/GraphicsPathTest.cpp, tests/HashFunctionTest.cpp,
- tests/JFMReaderTest.cpp, tests/LengthTest.cpp, tests/Makefile.am,
- tests/MapLineTest.cpp, tests/MatrixTest.cpp,
- tests/MessageExceptionTest.cpp, tests/PDFParserTest.cpp,
- tests/PSInterpreterTest.cpp, tests/PageRagesTest.cpp,
- tests/PageSizeTest.cpp, tests/PairTest.cpp,
- tests/PapersizeSpecialTest.cpp, tests/RangeMapTest.cpp,
- tests/SVGOutputTest.cpp, tests/ShadingPatchTest.cpp,
- tests/SpecialManagerTest.cpp, tests/SplittedCharInputBufferTest.cpp,
- tests/StreamInputBufferTest.cpp, tests/StreamReaderTest.cpp,
- tests/StreamWriterTest.cpp, tests/StringMatcherTest.cpp,
- tests/SubfontTest.cpp, tests/TFMReaderTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/ToUnicodeMapTest.cpp,
- tests/TpicSpecialTest.cpp, tests/TriangularPatchTest.cpp,
- tests/UnicodeTest.cpp, tests/UtilityTest.cpp,
- tests/VectorIteratorTest.cpp, tests/VectorStreamTest.cpp,
- tests/XMLNodeTest.cpp, tests/XMLStringTest.cpp, tests/check-conv,
- tests/create-makefile, tests/data/Makefile.am, tests/genhashcheck.py,
- tests/normalize.xsl, tests/testmain.cpp:
- updated year in copyright statements to 2021
-
-2020-12-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Calculator.cpp, tests/CalculatorTest.cpp:
- fixed a comment and added minor calculator tests
-
- * src/Calculator.cpp, src/Calculator.hpp, tests/CalculatorTest.cpp:
- use variant type for token objects in class Calculator
-
-2020-12-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontEngine.cpp:
- renamed some local variables
-
-2020-12-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontEngine.cpp:
- ensure unambiguity of GID to charcode mappings
-(fixes #147)
-
- * src/Font.cpp, src/FontEngine.cpp, src/FontEngine.hpp:
- Renamed FontEngine::buildCharMap()
-
-2020-11-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.11
-
- * NEWS:
- updated NEWS
-
-2020-11-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BasicDVIReader.cpp, src/BasicDVIReader.hpp, src/DVIReader.cpp,
- src/DVIReader.hpp:
- moved low-level DVIReader functions to BasicDVIReader
-and some code
- cleanup
-
- * src/BasicDVIReader.cpp, src/BasicDVIReader.hpp, src/DVIReader.cpp,
- src/DVIToSVG.cpp, src/PdfSpecialHandler.cpp, src/PdfSpecialHandler.hpp:
- process mapline specials before fontdefs
-to ensure all mapline
- definitions are present when registering fonts
-
-2020-11-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontMap.cpp, src/Subfont.cpp, src/Subfont.hpp,
- tests/SubfontTest.cpp:
- SubfontDefinition: replaced reference parameter with return value
-
-2020-11-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMap.cpp, src/CMap.hpp, src/Font.cpp, src/FontEncoding.cpp,
- src/FontEncoding.hpp:
- keep selected Unicode fontmap if assigned CMap maps to Unicode
-
- * src/DVIReader.cpp, src/FontManager.cpp, src/FontManager.hpp:
- added fallback for missing characters in JFM-based virtual fonts
-(closes
- #144)
-
-2020-11-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Unicode.cpp, src/Unicode.hpp, tests/UnicodeTest.cpp:
- added functions to convert surrogate pairs
-
- * src/CMap.cpp, src/CMap.hpp, src/CMapReader.cpp:
- consider surrogates when reading CMap files
-
-2020-10-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- updated FreeType to version 2.10.4
-
-2020-10-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- updated FreeType to version 2.10.3
-
-2020-09-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.10.1
-
- * NEWS:
- updated NEWS
-
-2020-09-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- added support for new GS transparency operators
-.setfillconstantalpha
- and .setstrokeconstantalpha
-
-2020-09-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLNode.cpp:
- renamed local variable
-
-2020-08-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/brotli/common/version.h:
- updated brotli to version 1.0.9
-the encoder is not affected by this
- update so the bundled subset
-only bumps the version number.
-
-2020-08-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/brotli/Makefile.am, libs/brotli/common/constants.c,
- libs/brotli/common/constants.h, libs/brotli/common/context.c,
- libs/brotli/common/context.h, libs/brotli/common/dictionary.c,
- libs/brotli/common/platform.c, libs/brotli/common/platform.h,
- libs/brotli/common/transform.c, libs/brotli/common/transform.h,
- libs/brotli/common/version.h, libs/brotli/enc/backward_references.c,
- libs/brotli/enc/backward_references.h,
- libs/brotli/enc/backward_references_hq.c,
- libs/brotli/enc/backward_references_hq.h,
- libs/brotli/enc/backward_references_inc.h,
- libs/brotli/enc/block_splitter.c, libs/brotli/enc/block_splitter_inc.h,
- libs/brotli/enc/brotli_bit_stream.c, libs/brotli/enc/cluster_inc.h,
- libs/brotli/enc/command.c, libs/brotli/enc/command.h,
- libs/brotli/enc/compress_fragment_two_pass.c,
- libs/brotli/enc/dictionary_hash.c, libs/brotli/enc/dictionary_hash.h,
- libs/brotli/enc/encode.c, libs/brotli/enc/encoder_dict.c,
- libs/brotli/enc/encoder_dict.h, libs/brotli/enc/entropy_encode.c,
- libs/brotli/enc/entropy_encode.h, libs/brotli/enc/fast_log.c,
- libs/brotli/enc/fast_log.h, libs/brotli/enc/find_match_length.h,
- libs/brotli/enc/hash.h, libs/brotli/enc/hash_composite_inc.h,
- libs/brotli/enc/hash_forgetful_chain_inc.h,
- libs/brotli/enc/hash_longest_match64_inc.h,
- libs/brotli/enc/hash_longest_match_inc.h,
- libs/brotli/enc/hash_longest_match_quickly_inc.h,
- libs/brotli/enc/hash_rolling_inc.h,
- libs/brotli/enc/hash_to_binary_tree_inc.h, libs/brotli/enc/memory.h,
- libs/brotli/enc/metablock.c, libs/brotli/enc/metablock_inc.h,
- libs/brotli/enc/params.h, libs/brotli/enc/ringbuffer.h,
- libs/brotli/enc/utf8_util.c, libs/brotli/enc/write_bits.h,
- libs/brotli/include/brotli/encode.h, libs/brotli/include/brotli/port.h:
- updated brotli to version 1.0.8
-
-2020-08-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in:
- manpage: few additions to --bbox and --font-format
-
-2020-08-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * .mailmap:
- removed redundant file
-
-2020-08-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Ghostscript.cpp:
- updated GS versioning scheme introduced with GS
- 9.53.0
-http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=0e98e2a27ed19fcc138215afe17ab1a173aeed7b
-
-2020-08-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.10
-
- * NEWS:
- updated NEWS
-
-2020-07-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in, libs/xxHash/xxh3.h,
- libs/xxHash/xxhash.h:
- updated xxHash to version 0.8
-
-2020-07-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- redefine internal GS operators .fillstroke and .eofillstroke
-They are
- used to implement PDF operators B and B*.
-(closes #139)
-
-2020-07-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/optimizer/TransformSimplifier.cpp:
- don't unwind transform attributes of image elements
-
- * src/optimizer/GroupCollapser.cpp:
- collapse groups w/o attributes first
-in order to recurse into their
- descendants.
-
- * src/optimizer/TransformSimplifier.cpp:
- optimizer: unwind transform attributes of image elements
-if it consists
- only of scaling and translations. Merge the scaled translation
-into x and
- y, and simplify the remaining matrix(...) expression to scale(...)
-
-2020-07-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLNode.cpp, src/XMLNode.hpp, src/optimizer/GroupCollapser.cpp,
- src/optimizer/RedundantElementRemover.cpp,
- src/optimizer/WSNodeRemover.cpp:
- renamed XMLNode::remove to XMLNode::detach
-
-2020-07-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/optimizer/GroupCollapser.cpp:
- don't move inner transforms to outer clipping paths
-
- * src/XMLNode.cpp:
- fixed XMLElement::unwrap
-
- * src/optimizer/GroupCollapser.cpp:
- improved optimizer module GroupCollapser
-
-2020-07-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/optimizer/SVGOptimizer.cpp:
- simplify transforms before optimizing groups
-
- * src/DvisvgmSpecialHandler.cpp:
- fixed error message about invalid closing tags
-
- * src/DVIToSVGActions.cpp:
- handle XML parser errors thrown in EOP
-
- * src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp:
- reduced number of successive XML error messages
-
- * src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp:
- renamed XMLParser::flush to XMLParser::finish
-
-2020-07-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontCache.cpp, src/HashFunction.cpp, src/HashFunction.hpp,
- src/MD5HashFunction.hpp, src/XXHashFunction.hpp,
- tests/HashFunctionTest.cpp:
- renamed HashFunction::digestValue() to HashFunction::digestBytes()
-
- * src/XXHashFunction.hpp:
- added XXHashFunction::digestValue() to get the value as encoded by
- xxhash
-
- * src/FileSystem.cpp, src/FileSystem.hpp:
- create dedicated temp folders with each call of dvisvgm
-
-2020-06-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/xxHash/xxh3.h, libs/xxHash/xxhash.c, libs/xxHash/xxhash.h:
- updated xxHash to version 0.7.4
-
-2020-06-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DvisvgmSpecialHandler.cpp, tests/DvisvgmSpecialTest.cpp:
- fixed computation of string boundaries after expanding {?(...)}
-(closes
- #136)
-
-2020-05-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- updated FreeType to version 2.10.2
-
-2020-05-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/dvisvgm.cpp:
- fixed indentation
-
-2020-04-24 John Bowman <bowman@ualberta.ca>
-
- * src/dvisvgm.cpp:
- Fix indentation.
-
-2020-04-23 John Bowman <bowman@ualberta.ca>
-
- * src/dvisvgm.cpp:
- Return error codes to shell.
-
-2020-04-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PathClipper.cpp, src/PathClipper.hpp, src/PsSpecialHandler.cpp:
- changed signature of PathClipper::intersect()
-
- * src/PathClipper.cpp, src/PathClipper.hpp:
- added unite operation to PathClipper
-
- * src/GraphicsPath.hpp, src/PsSpecialHandler.cpp:
- fixed handling of clippath/eoclip combinations
-
-2020-04-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVGActions.cpp:
- fixed bbox debug rectangles
-
- * src/Font.cpp, src/Font.hpp:
- added italic correction for fake slant
-
- * src/DVIReader.cpp, src/DVIReader.hpp, src/FontManager.cpp:
- added evaluation of LuaTeX native font definitions
-
- * src/DVIReader.cpp:
- minor code improvements
-
-2020-04-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- fixed PS operator 'eoclip'
-
-2020-03-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/optimizer/TransformSimplifier.cpp:
- optimizer: fixed omission of second scale() parameter
-
-2020-03-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Matrix.cpp:
- fixed parsing of "scale(s)"
-fixes #131
-
- * .appveyor.yml, .travis.yml, configure.ac, doc/dvisvgm.1, src/Doxyfile,
- src/version.hpp:
- set version to 2.9.1
-
- * NEWS:
- updated NEWS
-
-2020-03-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Calculator.cpp, tests/CalculatorTest.cpp:
- calculator: allow to omit '*' before '('
-
-2020-03-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.1, doc/dvisvgm.txt.in, src/DvisvgmSpecialHandler.cpp,
- tests/DvisvgmSpecialTest.cpp:
- added macro {?(expr)} to enable math expressions in raw specials
-closes
- #130
-
-2020-03-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am, doc/conf-dblatex-pdf.xsl, doc/dvisvgm.txt.in,
- doc/generate-dvisvgm-sty.xsl, doc/tweak-dblatex-tex.py:
- optimize line breaks and code blocks in pdf manpage
-
-2020-03-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/conf-dblatex-pdf.xsl:
- small font changes in pdf version of manual page
-- changed body font to
- Source Serif Pro
-- scaled monospace font by 0.9
-
- * src/PageRanges.cpp, src/PageRanges.hpp:
- removed redundant #includes
-
- * src/NumericRanges.hpp:
- replaced explicit iterator type with auto
-
-2020-03-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS:
- updated NEWS and vc/README
-
-2020-03-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.1:
- added generated man page to repo
-
-2020-03-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- fixed xshow, yshow, and xyshow for multi-byte characters
-
-2020-03-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Matrix.cpp:
- replaced istream::ignore() with istream::get()
-to make gcc on NetBSD
- happy
-
- * .travis.yml:
- travis: added packages required to build man page
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.9
-
-2020-03-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- create image files in tmpdir instead of cwd
-
- * src/PsSpecialHandler.cpp:
- fixed mime type of JPEG images
-
- * src/utility.hpp:
- base64_copy: added parameter to set line length
-
- * src/XMLNode.cpp:
- wrap lines with base64 image data (200 chars/line)
-
- * doc/Makefile.am:
- make install: use existing dvisvgm.1 if it can't be rebuilt
-However,
- "make dist" and "make distcheck" should still fail if the man page
-can't
- be built in order to ensure the tarball always contains a recent version.
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp:
- some code cleanup
-
-2020-03-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/PSInterpreter.cpp:
- added bitmap format 'none' to disable image processing
-
-2020-03-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/psdefs.cpp:
- added image support for various JPEG and PNG variants
-
- * doc/dvisvgm.txt.in, src/CommandLine.hpp, src/dvisvgm.cpp,
- src/options.xml:
- added command-line option --bitmap-format
-
- * doc/generate-dvisvgm-sty.xsl:
- manual page: reduce distance of table rows
-
-2020-03-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/xxHash/xxh3.h, libs/xxHash/xxhash.c, libs/xxHash/xxhash.h,
- tests/HashFunctionTest.cpp:
- updated xxhash to version 0.7.3
-
-2020-03-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GlyphTracerMessages.hpp:
- suppress tracer messages if no font info available
-
- * src/MetafontWrapper.cpp, src/MetafontWrapper.hpp:
- added fallback method to get GF resolution applied by Metafont
-
-2020-02-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- fixed potential segfault
-
- * src/Bezier.cpp, src/BoundingBox.cpp, src/Font.cpp, src/FontWriter.cpp,
- src/Matrix.cpp, src/TensorProductPatch.cpp, src/TriangularPatch.cpp:
- replaced fabs() with std::abs()
-
-2020-02-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLNode.cpp:
- fixed copy constructor of XMLElement
-
- * src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- fixed broken handling of PS tiling patterns
-
- * src/PSPattern.cpp:
- simplified loop expression
-
- * src/XMLNode.cpp, src/optimizer/RedundantElementRemover.cpp:
- don't remove clipPath elements if referenced in patterns
-
- * src/PsSpecialHandler.cpp:
- don't add clip path to path elements in pattern definitions
-
-2020-02-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- store image counter in globaldict
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/XMLNode.cpp,
- src/XMLNode.hpp, src/dvisvgm.cpp:
- don't keep encoded image data in memory
-To prevent memory issues, add
- the base64-encoded image data when serializing
-the XML tree.
-
- * src/PsSpecialHandler.cpp:
- prevent access to invalid vector component
-
- * src/XMLNode.cpp, src/XMLNode.hpp:
- prevent deep destructor recursion of XML nodes
-
- * src/psdefs.cpp:
- PS handler: prevent write access to protected pattern dictionary
-
-2020-02-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- don't access DataSource for shading types < 4
-
-2020-02-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- apply clip path to image if present
-
- * src/optimizer/TransformSimplifier.cpp:
- TransformSimplifier: prevent width/height from getting negative
-
- * src/Font.cpp, src/GraphicsPath.hpp, src/PsSpecialHandler.cpp,
- tests/GraphicsPathTest.cpp:
- changed signature of GraphicsPath::computeBBox()
-
-2020-02-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- image operator: reset output device correctly
-
-2020-02-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp, src/psdefs.cpp:
- stop image processing if PNG devices are unavailable
-Handling of PS
- operator 'image' relies on the GS output devices 'png16m' and
-'pnggray'
- (depending on the current color space). If they are unavailable,
- the
-image processing is stopped now instead of leaving GS with an
- internal error.
-
- * src/PsSpecialHandler.cpp:
- adapt bounding box to enclose embedded bitmaps
-
-2020-02-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/EPSToSVG.hpp, src/ImageToSVG.cpp, src/ImageToSVG.hpp,
- src/PDFToSVG.hpp:
- fixed getCurrentPageNumber() for EPS and PDF files
-
- * src/FilePath.cpp, src/FilePath.hpp, tests/FilePathTest.cpp:
- FilePath::suffix("") now removes the suffix if present
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/psdefs.cpp:
- sync location and base name of temporary PNG files with SVG file
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/dvisvgm.cpp,
- src/psdefs.cpp:
- remove temporary PNG files if --keep is not given
-
-2020-02-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- added evaluation of PS Level 1 image operators
-
-2020-02-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Matrix.cpp, tests/MatrixTest.cpp:
- fixed row/column issue in Matrix::invert()
-
- * src/FontWriter.cpp, src/utility.hpp:
- added wrapper function for util::base64_copy()
-
- * src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- added processing of PS image operator
-
-2020-02-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- manpage: added info on default values listed by --help
-
-2020-01-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPathParser.hpp, src/Makefile.am,
- tests/GraphicsPathParserTest.cpp, tests/Makefile.am:
- added class to parse SVG path commands
-
-2020-01-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPath.hpp:
- arcto: use template type for rx and ry instead of double
-
-2020-01-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PageSize.cpp:
- replaced floor(x+0.5) with round(x)
-
-2020-01-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Ghostscript.cpp:
- added check for libgs.dylib.N (Mac only)
-
-2020-01-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, README, README.md, configure.ac, doc/Makefile.am,
- doc/conf-dblatex-man.xsl, doc/conf-dblatex-pdf.xsl, doc/db2html.xsl,
- doc/dvisvgm.txt.in, doc/tweak-db-article.xsl, doc/tweak-db-refentry.xsl,
- doc/tweak-dblatex-pdf.xsl, libs/Makefile.am,
- libs/ff-woff/fontforge/tmpfile2.cpp, src/AGLTable.hpp,
- src/BasicDVIReader.cpp, src/BasicDVIReader.hpp, src/Bezier.cpp,
- src/Bezier.hpp, src/BgColorSpecialHandler.cpp,
- src/BgColorSpecialHandler.hpp, src/Bitmap.cpp, src/Bitmap.hpp,
- src/BoundingBox.cpp, src/BoundingBox.hpp, src/CLCommandLine.cpp,
- src/CLCommandLine.hpp, src/CLOption.hpp, src/CMap.cpp, src/CMap.hpp,
- src/CMapManager.cpp, src/CMapManager.hpp, src/CMapReader.cpp,
- src/CMapReader.hpp, src/Calculator.cpp, src/Calculator.hpp,
- src/CharMapID.cpp, src/CharMapID.hpp, src/Character.hpp, src/Color.cpp,
- src/Color.hpp, src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.hpp,
- src/CommandLine.hpp, src/DLLoader.cpp, src/DLLoader.hpp,
- src/DVIActions.hpp, src/DVIReader.cpp, src/DVIReader.hpp,
- src/DVIToSVG.cpp, src/DVIToSVG.hpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.hpp, src/Directory.cpp, src/Directory.hpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/EPSFile.cpp, src/EPSFile.hpp, src/EPSToSVG.hpp,
- src/EllipticalArc.cpp, src/EllipticalArc.hpp, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.hpp, src/EncFile.cpp, src/EncFile.hpp,
- src/FileFinder.cpp, src/FileFinder.hpp, src/FilePath.cpp,
- src/FilePath.hpp, src/FileSystem.cpp, src/FileSystem.hpp,
- src/FixWord.hpp, src/Font.cpp, src/Font.hpp, src/FontCache.cpp,
- src/FontCache.hpp, src/FontEncoding.cpp, src/FontEncoding.hpp,
- src/FontEngine.cpp, src/FontEngine.hpp, src/FontManager.cpp,
- src/FontManager.hpp, src/FontMap.cpp, src/FontMap.hpp,
- src/FontMetrics.cpp, src/FontMetrics.hpp, src/FontStyle.hpp,
- src/FontWriter.cpp, src/FontWriter.hpp, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.hpp, src/GFReader.cpp, src/GFReader.hpp,
- src/GFTracer.cpp, src/GFTracer.hpp, src/Ghostscript.cpp,
- src/Ghostscript.hpp, src/Glyph.hpp, src/GlyphTracerMessages.hpp,
- src/GraphicsPath.hpp, src/HashFunction.cpp, src/HashFunction.hpp,
- src/HtmlSpecialHandler.cpp, src/HtmlSpecialHandler.hpp,
- src/HyperlinkManager.cpp, src/HyperlinkManager.hpp, src/ImageToSVG.cpp,
- src/ImageToSVG.hpp, src/InputBuffer.cpp, src/InputBuffer.hpp,
- src/InputReader.cpp, src/InputReader.hpp, src/JFM.cpp, src/JFM.hpp,
- src/Length.cpp, src/Length.hpp, src/MD5HashFunction.hpp, src/Makefile.am,
- src/MapLine.cpp, src/MapLine.hpp, src/Matrix.cpp, src/Matrix.hpp,
- src/Message.cpp, src/Message.hpp, src/MessageException.hpp,
- src/MetafontWrapper.cpp, src/MetafontWrapper.hpp, src/MiKTeXCom.cpp,
- src/MiKTeXCom.hpp, src/NoPsSpecialHandler.cpp,
- src/NoPsSpecialHandler.hpp, src/NumericRanges.hpp, src/PDFParser.cpp,
- src/PDFParser.hpp, src/PDFToSVG.hpp, src/PSFilter.hpp,
- src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PSPattern.cpp,
- src/PSPattern.hpp, src/PSPreviewFilter.cpp, src/PSPreviewFilter.hpp,
- src/PageRanges.cpp, src/PageRanges.hpp, src/PageSize.cpp,
- src/PageSize.hpp, src/Pair.hpp, src/PapersizeSpecialHandler.cpp,
- src/PapersizeSpecialHandler.hpp, src/PathClipper.cpp,
- src/PathClipper.hpp, src/PdfSpecialHandler.cpp,
- src/PdfSpecialHandler.hpp, src/PreScanDVIReader.cpp,
- src/PreScanDVIReader.hpp, src/Process.cpp, src/Process.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/RangeMap.cpp,
- src/RangeMap.hpp, src/SVGCharHandler.cpp, src/SVGCharHandler.hpp,
- src/SVGCharHandlerFactory.cpp, src/SVGCharHandlerFactory.hpp,
- src/SVGCharPathHandler.cpp, src/SVGCharPathHandler.hpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGCharTspanTextHandler.hpp,
- src/SVGOutput.cpp, src/SVGOutput.hpp, src/SVGSingleCharTextHandler.cpp,
- src/SVGSingleCharTextHandler.hpp, src/SVGTree.cpp, src/SVGTree.hpp,
- src/ShadingPatch.cpp, src/ShadingPatch.hpp, src/SignalHandler.cpp,
- src/SignalHandler.hpp, src/SourceInput.cpp, src/SourceInput.hpp,
- src/SpecialActions.hpp, src/SpecialHandler.hpp, src/SpecialManager.cpp,
- src/SpecialManager.hpp, src/StreamReader.cpp, src/StreamReader.hpp,
- src/StreamWriter.cpp, src/StreamWriter.hpp, src/Subfont.cpp,
- src/Subfont.hpp, src/System.cpp, src/System.hpp, src/TFM.cpp,
- src/TFM.hpp, src/TTFAutohint.cpp, src/TTFAutohint.hpp,
- src/TensorProductPatch.cpp, src/TensorProductPatch.hpp, src/Terminal.cpp,
- src/Terminal.hpp, src/ToUnicodeMap.cpp, src/ToUnicodeMap.hpp,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.hpp,
- src/TriangularPatch.cpp, src/TriangularPatch.hpp, src/TrueTypeFont.cpp,
- src/TrueTypeFont.hpp, src/Unicode.cpp, src/Unicode.hpp,
- src/VFActions.hpp, src/VFReader.cpp, src/VFReader.hpp,
- src/VectorIterator.hpp, src/VectorStream.hpp, src/XMLDocument.cpp,
- src/XMLDocument.hpp, src/XMLNode.cpp, src/XMLNode.hpp, src/XMLString.cpp,
- src/XMLString.hpp, src/XXHashFunction.hpp, src/ZLibOutputStream.hpp,
- src/dvisvgm.cpp, src/ffwrapper.c, src/ffwrapper.h, src/macros.hpp,
- src/optimizer/AttributeExtractor.cpp,
- src/optimizer/AttributeExtractor.hpp, src/optimizer/DependencyGraph.hpp,
- src/optimizer/GroupCollapser.cpp, src/optimizer/GroupCollapser.hpp,
- src/optimizer/OptimizerModule.hpp,
- src/optimizer/RedundantElementRemover.cpp,
- src/optimizer/RedundantElementRemover.hpp,
- src/optimizer/SVGOptimizer.cpp, src/optimizer/SVGOptimizer.hpp,
- src/optimizer/TextSimplifier.cpp, src/optimizer/TextSimplifier.hpp,
- src/optimizer/TransformSimplifier.cpp,
- src/optimizer/TransformSimplifier.hpp, src/optimizer/WSNodeRemover.cpp,
- src/optimizer/WSNodeRemover.hpp, src/options.dtd, src/options.xml,
- src/psdefs.cpp, src/utility.cpp, src/utility.hpp, src/version.hpp,
- src/version.hpp.in, src/windows.hpp, tests/BezierTest.cpp,
- tests/BitmapTest.cpp, tests/BoundingBoxTest.cpp,
- tests/CMapManagerTest.cpp, tests/CMapReaderTest.cpp, tests/CMapTest.cpp,
- tests/CalculatorTest.cpp, tests/ColorSpecialTest.cpp,
- tests/ColorTest.cpp, tests/CommandLineTest.cpp, tests/DVIReaderTest.cpp,
- tests/DependencyGraphTest.cpp, tests/DirectoryTest.cpp,
- tests/DvisvgmSpecialTest.cpp, tests/EllipticalArcTest.cpp,
- tests/EmSpecialTest.cpp, tests/FileFinderTest.cpp,
- tests/FilePathTest.cpp, tests/FileSystemTest.cpp,
- tests/FontCacheTest.cpp, tests/FontManagerTest.cpp,
- tests/FontMapTest.cpp, tests/GFGlyphTracerTest.cpp,
- tests/GFReaderTest.cpp, tests/GhostscriptTest.cpp,
- tests/GraphicsPathTest.cpp, tests/HashFunctionTest.cpp,
- tests/JFMReaderTest.cpp, tests/LengthTest.cpp, tests/Makefile.am,
- tests/MapLineTest.cpp, tests/MatrixTest.cpp,
- tests/MessageExceptionTest.cpp, tests/PDFParserTest.cpp,
- tests/PSInterpreterTest.cpp, tests/PageRagesTest.cpp,
- tests/PageSizeTest.cpp, tests/PairTest.cpp,
- tests/PapersizeSpecialTest.cpp, tests/RangeMapTest.cpp,
- tests/SVGOutputTest.cpp, tests/ShadingPatchTest.cpp,
- tests/SpecialManagerTest.cpp, tests/SplittedCharInputBufferTest.cpp,
- tests/StreamInputBufferTest.cpp, tests/StreamReaderTest.cpp,
- tests/StreamWriterTest.cpp, tests/StringMatcherTest.cpp,
- tests/SubfontTest.cpp, tests/TFMReaderTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/ToUnicodeMapTest.cpp,
- tests/TpicSpecialTest.cpp, tests/TriangularPatchTest.cpp,
- tests/UnicodeTest.cpp, tests/UtilityTest.cpp,
- tests/VectorIteratorTest.cpp, tests/VectorStreamTest.cpp,
- tests/XMLNodeTest.cpp, tests/XMLStringTest.cpp, tests/check-conv,
- tests/create-makefile, tests/data/Makefile.am, tests/genhashcheck.py,
- tests/normalize.xsl, tests/testmain.cpp:
- updated year in copyright statements to 2020
-
-2019-12-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- few additions to the manual page
-
-2019-12-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS:
- updated NEWS
-
-2019-12-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.8.2
-
-2019-12-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileSystem.cpp:
- convert path separators only in Windows binaries
-
- * src/Process.cpp:
- Subprocess: handle absolute path to executable correctly
-
- * src/FileFinder.cpp, src/FileFinder.hpp:
- added FileFinder::lookupExecutable()
-
- * src/MetafontWrapper.cpp:
- call 'mf-nowin' instead of 'mf' if available (closes #121)
-
-2019-12-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSInterpreter.cpp:
- adapt path separators before passing them to Ghostscript
-closes #123
-
- * src/FilePath.cpp, src/FileSystem.cpp, src/FileSystem.hpp,
- src/PSInterpreter.cpp, src/PsSpecialHandler.cpp, src/dvisvgm.cpp:
- renamed adaptPathSeperators() to ensureForwardSlashes()
-
- * src/Calculator.hpp, src/CharMapID.hpp, src/Color.hpp, src/Directory.cpp,
- src/Directory.hpp, src/FixWord.hpp, src/FontStyle.hpp,
- src/GFGlyphTracer.cpp, src/GFGlyphTracer.hpp, src/GFReader.cpp,
- src/GFReader.hpp, src/GFTracer.cpp, src/GFTracer.hpp,
- src/GlyphTracerMessages.hpp, src/HtmlSpecialHandler.hpp,
- src/HyperlinkManager.hpp, src/Length.hpp, src/NoPsSpecialHandler.hpp,
- src/PSPreviewFilter.cpp, src/PSPreviewFilter.hpp, src/PathClipper.hpp,
- src/PreScanDVIReader.cpp, src/PreScanDVIReader.hpp, src/Process.cpp,
- src/PsSpecialHandler.hpp, src/RangeMap.hpp, src/SVGOutput.cpp,
- src/SVGOutput.hpp, src/SignalHandler.cpp, src/SignalHandler.hpp,
- src/TFM.hpp, src/VFReader.cpp, src/VFReader.hpp, src/VectorStream.hpp:
- simplified constructors, avoid constant initializers
-
- * src/FileSystem.cpp, src/FileSystem.hpp:
- removed redundant class variable
-
- * src/MiKTeXCom.cpp:
- fixed type mismatch of FindFile expression
-
-2019-12-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- fixed handling of 'nulldevice' in PS operator 'restore'
-closes #122
-
-2019-11-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPath.hpp:
- added missing namespace prefix to pow()
-
-2019-11-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, README.md:
- updated NEWS and README
-
-2019-11-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.8.1
-
- * doc/dvisvgm.txt.in:
- some minor changes of the manual page
-
-2019-11-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- added newline at end of file
-
-2019-11-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/optimizer/GroupCollapser.hpp:
- made GroupCollapser::moveAttributes() static
-
- * doc/dvisvgm.txt.in, src/optimizer/Makefile.am,
- src/optimizer/SVGOptimizer.cpp, src/optimizer/TextSimplifier.cpp,
- src/optimizer/TextSimplifier.hpp:
- added optimizer module TextSimplifier
-
- * doc/dvisvgm.txt.in, src/XMLNode.hpp,
- src/optimizer/AttributeExtractor.hpp, src/optimizer/TextSimplifier.cpp:
- extended functionality of optimizer module 'simplify-text'
-- common
- attributes of tspans are moved to the enclosing text element
-- tspans
- without attributes are unwrapped
-
-2019-11-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVGActions.cpp, src/DVIToSVGActions.hpp,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.hpp:
- removed some constant initializers from constructors
-
- * src/DVIToSVGActions.cpp, src/DVIToSVGActions.hpp,
- src/EmSpecialHandler.cpp, src/PSInterpreter.cpp, src/PSInterpreter.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp,
- src/SpecialActions.hpp, src/TpicSpecialHandler.cpp, src/psdefs.cpp,
- tests/PSInterpreterTest.cpp:
- added support for PS operator 'nulldevice'
-
-2019-10-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp:
- added PNG, JPEG, and SVG to supported formats of FileFinder
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp:
- psfile: create absolute or relative paths to reference images
-depending
- on the file location and the file path given by the user
-
-2019-10-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FilePath.cpp, src/FilePath.hpp:
- added method to check if a path is absolute or relative
-
-2019-10-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMapReader.cpp, src/CMapReader.hpp, tests/CMapReaderTest.cpp:
- CMapReader: extracted common code; added test for 'begincidchar'
-
-2019-10-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/Makefile.am, tests/create-makefile:
- added missing gtest file to distribution
-
- * tests/FontCacheTest.cpp:
- remove temporary files created by FontCacheTest
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.8
-
- * NEWS:
- updated NEWS
-
-2019-10-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMapReader.cpp, src/CMapReader.hpp:
- CMapReader: added support for operator 'begincidchar' (patch by Akira
- Kakuto)
-
-2019-10-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/DVIToSVG.hpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.hpp, src/FilePath.cpp, src/FilePath.hpp,
- src/HyperlinkManager.cpp, src/ImageToSVG.cpp, src/ImageToSVG.hpp,
- src/PDFToSVG.hpp, src/SVGOutput.cpp, src/SVGOutput.hpp,
- src/SpecialActions.hpp, tests/FilePathTest.cpp, tests/SVGOutputTest.cpp:
- SVGOutput: renamed 'filename' to 'filepath'; changed return type to
- FilePath
-
-2019-10-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/gtest/include/gtest/gtest-death-test.h,
- tests/gtest/include/gtest/gtest-matchers.h,
- tests/gtest/include/gtest/gtest-message.h,
- tests/gtest/include/gtest/gtest-param-test.h,
- tests/gtest/include/gtest/gtest-printers.h,
- tests/gtest/include/gtest/gtest-spi.h,
- tests/gtest/include/gtest/gtest-test-part.h,
- tests/gtest/include/gtest/gtest-typed-test.h,
- tests/gtest/include/gtest/gtest.h,
- tests/gtest/include/gtest/gtest_pred_impl.h,
- tests/gtest/include/gtest/internal/gtest-death-test-internal.h,
- tests/gtest/include/gtest/internal/gtest-filepath.h,
- tests/gtest/include/gtest/internal/gtest-internal.h,
- tests/gtest/include/gtest/internal/gtest-param-util.h,
- tests/gtest/include/gtest/internal/gtest-port-arch.h,
- tests/gtest/include/gtest/internal/gtest-port.h,
- tests/gtest/include/gtest/internal/gtest-string.h,
- tests/gtest/include/gtest/internal/gtest-type-util.h,
- tests/gtest/src/gtest-all.cc, tests/gtest/src/gtest-death-test.cc,
- tests/gtest/src/gtest-filepath.cc, tests/gtest/src/gtest-internal-inl.h,
- tests/gtest/src/gtest-matchers.cc, tests/gtest/src/gtest-port.cc,
- tests/gtest/src/gtest-printers.cc, tests/gtest/src/gtest-test-part.cc,
- tests/gtest/src/gtest-typed-test.cc, tests/gtest/src/gtest.cc,
- tests/gtest/src/gtest_main.cc, tests/testutil.hpp:
- updated gtest to version 1.10
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp:
- psfile: added support for PDF, JPG, PNG, and SVG files
-
- * src/optimizer/TransformSimplifier.cpp,
- src/optimizer/TransformSimplifier.hpp:
- try to incorporate transformations into positional and size attributes
-
- * src/PsSpecialHandler.cpp:
- PS handler: minor code enhancements
-
-2019-10-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSInterpreter.cpp:
- call GS with -dDELAYSAFER if GS version >= 9.50
-Ghostscript 9.50
- introduced incompatible changes regarding SAFER which is now
-active by
- default. This conflicts with DELAYBIND and WRITESYSTEMDICT, which
- are
-necessary for dvisvgm to work
- correctly.
-https://www.ghostscript.com/doc/9.50/Use.htm#Safer
-
- * tests/HashFunctionTest.cpp:
- adapted XXH128 tests to changes in xxhash 0.7.2
-
-2019-10-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/xxHash/xxh3.h, libs/xxHash/xxhash.c, libs/xxHash/xxhash.h:
- updated xxhash to version 0.7.2
-
-2019-10-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/EllipticalArc.cpp:
- minor changes in EllipticalArc.cpp
-
-2019-09-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PathClipper.cpp:
- prevent warnings about uninitialized variables
-
-2019-09-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/potrace/auxiliary.h, libs/potrace/bitmap.h, libs/potrace/config.h,
- libs/potrace/curve.c, libs/potrace/curve.h, libs/potrace/decompose.c,
- libs/potrace/decompose.h, libs/potrace/lists.h,
- libs/potrace/potracelib.c, libs/potrace/potracelib.h,
- libs/potrace/progress.h, libs/potrace/trace.c, libs/potrace/trace.h:
- updated potrace to version 1.16
-
- * src/Bitmap.cpp, src/Bitmap.hpp:
- minor code cleanup of Bitmap class
-
-2019-09-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPath.hpp:
- renamed misspelled variables 'largeArgFlag' to 'largeArcFlag'
-
- * src/EllipticalArc.cpp:
- removed #include "debug.h"
-
-2019-09-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/src/glyph.cc, libs/woff2/src/normalize.cc:
- fixed two compiler warnings in libwoff2
-regarding signed/unsigned
- comparison
-
-2019-08-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XXHashFunction.hpp, tests/HashFunctionTest.cpp:
- simplified implementation of XXHashFunction::digestValue() and tests
-
-2019-08-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/StreamReader.cpp, src/StreamReader.hpp, src/VFReader.cpp,
- tests/StreamReaderTest.cpp:
- removed vector reference from StreamReader::readBytes()
-
- * src/CRC32.cpp, src/CRC32.hpp, src/FontCache.cpp, src/FontCache.hpp,
- src/HashFunction.cpp, src/HashFunction.hpp, src/Makefile.am,
- src/StreamReader.cpp, src/StreamReader.hpp, src/StreamWriter.cpp,
- src/StreamWriter.hpp, src/XXHashFunction.hpp, src/utility.hpp,
- tests/CRC32Test.cpp, tests/FontCacheTest.cpp, tests/Makefile.am,
- tests/StreamReaderTest.cpp, tests/StreamWriterTest.cpp:
- replaced CRC32 cache checksums with XXH32 hashes
-
-2019-08-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, libs/xxHash/xxhash.h, src/HashFunction.cpp,
- src/XXHashFunction.hpp, tests/HashFunctionTest.cpp:
- added support for the experimental 128-bit XXH3 algorithm
-
-2019-08-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPath.hpp:
- avoid redundant sequences of closepath (z/Z) commands
-
-2019-08-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPath.hpp, tests/GraphicsPathTest.cpp:
- added short versions of 'quadto' and 'cubicto' to GraphicsPath
-
-2019-08-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TpicSpecialHandler.cpp, tests/TpicSpecialTest.cpp:
- use class EllipticalArc to process arcs in tpic handler
-
-2019-08-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/xxHash/Makefile.am, libs/xxHash/xxh3.h, libs/xxHash/xxhash.c,
- libs/xxHash/xxhash.h:
- updated xxhash to version 0.7.1
-
- * src/DVIToSVG.cpp:
- print error message on wrong page hash arguments
-
-2019-08-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/EllipticalArc.cpp, src/EllipticalArc.hpp, src/GraphicsPath.hpp,
- tests/EllipticalArcTest.cpp, tests/GraphicsPathTest.cpp:
- added GraphicsPath::approximateArcs()
-
-2019-08-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bezier.cpp, src/Bezier.hpp, src/EllipticalArc.cpp,
- src/EllipticalArc.hpp, src/GraphicsPath.hpp, src/Makefile.am,
- src/Pair.hpp, src/utility.cpp, src/utility.hpp,
- tests/EllipticalArcTest.cpp, tests/Makefile.am:
- added support of 'arcto' command to class GraphicsPath
-
-2019-08-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bezier.cpp, src/Bezier.hpp, src/PsSpecialHandler.cpp,
- src/ShadingPatch.hpp, src/TensorProductPatch.cpp,
- src/TensorProductPatch.hpp, src/TriangularPatch.cpp,
- src/TriangularPatch.hpp, tests/BezierTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/TriangularPatchTest.cpp:
- getBBox(): replaced reference parameter with return value
-
- * src/PsSpecialHandler.cpp, src/ShadingPatch.hpp,
- src/TensorProductPatch.cpp, src/TensorProductPatch.hpp,
- src/TriangularPatch.cpp, src/TriangularPatch.hpp,
- tests/TensorProductPatchTest.cpp, tests/TriangularPatchTest.cpp:
- getBoundaryPath(): replaced reference parameter with return value
-
-2019-08-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.cpp, src/Pair.hpp:
- use std::hypot() to compute length of vector
-
-2019-08-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/MD5HashFunction.hpp:
- removed 'explicit' from default constructor
-Work around for C++11 bug in
- GCC 4.8:
-https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58255
-
- * src/FontCache.cpp, src/FontEngine.cpp, src/FontWriter.cpp,
- src/GraphicsPath.hpp, src/Pair.hpp, src/PathClipper.cpp,
- src/TpicSpecialHandler.cpp, src/optimizer/CMakeLists.txt,
- src/optimizer/Makefile.am, tests/FontCacheTest.cpp,
- tests/GraphicsPathTest.cpp:
- redesigned implementation of class GraphicsPath
-- use variant instances
- to store path commands instead of plain structs
-- process commands in
- visitor objects
-- removed GraphicsPath::Actions::draw() that exposed
- implemenation details
-- simplify iterate() method
-
-2019-07-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontCache.cpp:
- use direct string concatenation instead of temporary string stream
-
-2019-07-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am:
- added missing dependency to Makefile rule
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.7.4
-
- * NEWS:
- updated NEWS
-
-2019-07-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am:
- moved generation of dvisvgm.sty to separate rule
-
-2019-07-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.cpp:
- use std::round to round color value (fixes #116)
-
- * doc/Makefile.am, doc/dvisvgm.sty, doc/dvisvgm.txt.in,
- doc/generate-dvisvgm-sty.xsl, doc/tweak-db-article.xsl,
- doc/tweak-db-refentry.xsl:
- show revision date given in doc/dvisvgm.txt on manual page
-rather than
- the build date
-
-2019-07-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TrueTypeFont.cpp:
- call ofstream constructor with std::string instead of C string
-
-2019-07-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/MetafontWrapper.cpp:
- replaced atoi() with stoi()
-
-2019-07-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/MetafontWrapper.cpp:
- don't access moved string
-
- * doc/dvisvgm.txt.in, src/dvisvgm.cpp:
- changed cache location to $XDG_CACHE_HOME/dvisvgm
-or ~/.cache/dvisvgm if
- $XDG_CACHE_HOME is not set (closes #112)
-
-2019-07-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.7.3
-
- * NEWS:
- updated NEWS
-
-2019-07-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLString.cpp, src/utility.cpp, src/utility.hpp,
- tests/UtilityTest.cpp:
- added util::to_string(double) that strips trailing zeros
-(in contrast to
- std::to_string)
-
- * src/CMapManager.cpp, src/CMapReader.cpp, src/DVIReader.cpp,
- src/GFReader.cpp, src/JFM.cpp, src/Length.cpp, src/MapLine.cpp,
- src/Matrix.cpp, src/PDFParser.cpp, src/SVGOutput.cpp, src/VFReader.cpp:
- replaced some string streams with plain strings
-
-2019-07-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * README.md:
- updated badges in README
-
- * src/Font.cpp, src/Font.hpp, src/dvisvgm.cpp:
- changed type of CACHE_PATH to std::string
-
-2019-07-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * .github/FUNDING.yml:
- added funding.yml
-
-2019-07-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp:
- properly assign collected chars to unique fonts (fixes #110)
-
-2019-06-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- manpage: updated \special example
-
-2019-06-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BasicDVIReader.cpp:
- replaced string streams with plain strings
-
-2019-06-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/genhashcheck.py:
- use range-based loop to iterate over C array
-
-2019-06-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.7.2
-
- * NEWS:
- updated NEWS
-
-2019-05-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- 'GS_PDF_ProcSet' and 'pdfdict' are private as of GS 9.27
-As a workaround
- 'runpdfbegin' and 'runpdfend' can be used to enter/leave the
- dictionaries.
-
-2019-05-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.7.1
-
- * NEWS:
- updated NEWS
-
-2019-05-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .gitignore, src/MiKTeXCom.hpp:
- added files required to access the MiKTeX session object
-
-2019-05-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- pop unused operand in PS operator 'setmatrix' (closes #106)
-
-2019-04-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/optimizer/AttributeExtractor.cpp, src/optimizer/GroupCollapser.cpp,
- src/utility.hpp:
- removed util::make_array() due to compatibility
- issues
-https://trac.macports.org/ticket/58347
-
-2019-04-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md:
- updated URL of FontForge website
-
-2019-04-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * README.md:
- removed Coverity badge as the service seems to be dead
-
-2019-04-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Makefile.am:
- add file windows.hpp to source tarball
-
-2019-04-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.7
-
- * NEWS:
- updated NEWS
-
-2019-04-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/DvisvgmSpecialHandler.cpp:
- added specials "bbox lock" and "bbox unlock" to lock/unlock the page
- bbox
-(closes #105)
-
- * doc/dvisvgm.txt.in, src/DvisvgmSpecialHandler.cpp:
- added optional modifier 'transform' to the dvisvgm:bbox specials
-
- * doc/dvisvgm.txt.in, src/DvisvgmSpecialHandler.cpp:
- added macro {?matrix} to raw specials
-
-2019-04-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bezier.cpp, src/BoundingBox.hpp, src/CMap.hpp, src/CMapReader.hpp,
- src/Character.hpp, src/Color.hpp, src/DLLoader.hpp, src/Directory.cpp,
- src/Directory.hpp, src/DvisvgmSpecialHandler.cpp, src/EPSFile.hpp,
- src/EncFile.hpp, src/FilePath.hpp, src/Font.hpp, src/FontEncoding.hpp,
- src/FontMap.hpp, src/FontWriter.cpp, src/FontWriter.hpp,
- src/GFTracer.hpp, src/GlyphTracerMessages.hpp, src/GraphicsPath.hpp,
- src/InputBuffer.hpp, src/InputReader.hpp, src/JFM.hpp, src/Length.hpp,
- src/MD5HashFunction.hpp, src/MapLine.hpp, src/Matrix.cpp, src/Matrix.hpp,
- src/Message.hpp, src/PDFParser.cpp, src/PDFParser.hpp, src/PSPattern.hpp,
- src/PSPreviewFilter.hpp, src/PageSize.hpp, src/Pair.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp,
- src/SVGCharHandler.hpp, src/SVGCharTspanTextHandler.hpp,
- src/SVGOutput.hpp, src/SVGSingleCharTextHandler.hpp,
- src/ShadingPatch.hpp, src/SourceInput.hpp, src/StreamReader.hpp,
- src/StreamWriter.hpp, src/TFM.hpp, src/TensorProductPatch.hpp,
- src/TriangularPatch.hpp, src/TrueTypeFont.hpp, src/VFReader.cpp,
- src/VFReader.hpp, src/VectorIterator.hpp, src/VectorStream.hpp,
- src/XMLDocument.hpp, src/XMLString.hpp, src/XXHashFunction.hpp,
- src/optimizer/DependencyGraph.hpp:
- marked most constructors 'explicit' if they may be called with a single
- parameter
-
- * src/DVIReader.cpp, src/DVIToSVG.cpp, src/DVIToSVGActions.cpp,
- src/Font.cpp, src/FontEngine.cpp, src/FontManager.cpp,
- src/HyperlinkManager.cpp, src/ImageToSVG.cpp, src/PDFParser.hpp,
- src/PSInterpreter.cpp, src/PdfSpecialHandler.cpp,
- src/PsSpecialHandler.cpp, src/SVGCharHandler.cpp,
- src/SVGCharPathHandler.cpp, src/SVGCharTspanTextHandler.cpp,
- src/SVGTree.cpp, src/TensorProductPatch.cpp, src/TriangularPatch.cpp,
- src/TrueTypeFont.cpp:
- use automatic type deduction in conjunction with casts
-
- * src/EPSFile.cpp, src/EmSpecialHandler.cpp, src/EncFile.cpp,
- src/InputReader.cpp, src/PSInterpreter.cpp, src/PsSpecialHandler.cpp,
- src/SpecialManager.cpp, src/StreamReader.cpp, src/Subfont.cpp,
- src/Unicode.cpp, src/dvisvgm.cpp:
- explicitly cast integers representing characeters to char
-
- * src/CLCommandLine.hpp, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.hpp, src/EncFile.cpp, src/Font.cpp,
- src/Font.hpp, src/MetafontWrapper.cpp, src/MetafontWrapper.hpp,
- src/Process.cpp, src/Process.hpp, src/SVGOutput.cpp, src/SVGOutput.hpp,
- src/Subfont.cpp, src/Subfont.hpp:
- if possible, move string parameters instead of copying them
-
- * src/Color.cpp, src/FontEngine.cpp, src/PathClipper.cpp:
- use std::lround() rather than truncation
-
- * src/DVIActions.hpp, src/DVIToSVGActions.hpp, src/Font.hpp,
- src/PSInterpreter.cpp, src/SignalHandler.cpp, src/System.cpp:
- replaced 0 and NULL with nullptr
-
- * src/Message.cpp, src/Message.hpp:
- drop 'const' from char parameter
-
- * src/EPSFile.cpp:
- replaced C array with std::array
-
- * src/SpecialManager.hpp, src/ZLibOutputStream.hpp:
- made deleted constructor public; use 'default' with default constructor
-
- * src/PageSize.cpp:
- removed redundant semicolons
-
-2019-04-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/RangeMap.cpp, tests/RangeMapTest.cpp:
- use std::accumulate() to compute the number of values mapped by a
- RangeMap
-
-2019-04-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- reworded some paragraphs on the manpage
-
-2019-04-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DvisvgmSpecialHandler.cpp, src/HtmlSpecialHandler.cpp,
- src/InputReader.cpp, src/InputReader.hpp, src/PsSpecialHandler.cpp,
- tests/StreamInputBufferTest.cpp:
- optionally allow 'flags' (attributes w/o values) in attribute lists
-
- * src/PsSpecialHandler.cpp:
- psfile/pdffile: evaluate boolean attribute 'clip'
-If given, the drawing
- region is clipped to the bounding box of the
-EPS/PDF page being
- processed.
-(closes #104)
-
- * .appveyor.yml:
- AppVeyor: switched build image to VS 2019 Preview
-
-2019-04-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- AppVeyor: updated release number of ttfautohint-dll
-
- * m4/ax_cxx_compile_stdcxx.m4:
- updated ax_cxx_compile_stdcxx.m4 to version 11
-
-2019-04-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- AppVeyor: set freetype version to 2.10.0; use current image of VS 2017
- again
-
- * src/SVGTree.cpp:
- fixed gcc 5 failure regarding initializer lists
-
- * src/FileFinder.cpp:
- pdffile special: look for pdf files in texmf tree too (closes #103)
-
-2019-04-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/optimizer/GroupCollapser.cpp:
- group collapser: unwrap groups without attributes
-
- * src/DVIToSVGActions.hpp, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.hpp, src/EmSpecialHandler.cpp,
- src/HyperlinkManager.cpp, src/ImageToSVG.hpp, src/PSPattern.cpp,
- src/PsSpecialHandler.cpp, src/SpecialActions.hpp,
- src/TpicSpecialHandler.cpp, tests/DvisvgmSpecialTest.cpp,
- tests/EmSpecialTest.cpp, tests/TpicSpecialTest.cpp:
- reduced interface of SpecialActions
-- removed append/prepend and context
- functions
-- added direct access to the SVGTree object
-
-2019-03-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLNode.cpp, src/XMLNode.hpp, src/optimizer/AttributeExtractor.cpp,
- src/optimizer/AttributeExtractor.hpp, src/optimizer/GroupCollapser.cpp,
- src/optimizer/RedundantElementRemover.cpp,
- src/optimizer/TransformSimplifier.cpp, src/optimizer/WSNodeRemover.cpp,
- tests/BoundingBoxTest.cpp, tests/TpicSpecialTest.cpp,
- tests/XMLNodeTest.cpp:
- refactored the implementation of the XML node classes
-for easier
- modifications of the XML tree
-
-2019-03-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/ff-woff/Makefile.am:
- added missing zlib include path to ff-woff
-
- * src/CMapReader.cpp:
- properly release memory if CMap throws an exception
-
-2019-03-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPath.hpp:
- skip redundant line drawing commands in path elements
-
-2019-03-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLString.cpp, tests/DVIReaderTest.cpp, tests/GFGlyphTracerTest.cpp,
- tests/MatrixTest.cpp:
- replace "0." by "." in floating point numbers |x| < 1
-
- * src/GraphicsPath.hpp, tests/GFGlyphTracerTest.cpp:
- avoid redundant space characters in SVG paths
-
- * src/GraphicsPath.hpp, tests/TpicSpecialTest.cpp:
- take precision into account when checking for reflection points
-
-2019-03-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Matrix.cpp, src/Matrix.hpp, tests/MatrixTest.cpp:
- made Matrix::parse() a static member
-
- * configure.ac, doc/dvisvgm.txt.in, src/CommandLine.hpp, src/DVIToSVG.cpp,
- src/DependencyGraph.hpp, src/ImageToSVG.cpp, src/Makefile.am,
- src/SVGOptimizer.cpp, src/SVGOptimizer.hpp, src/SVGTree.cpp,
- src/XMLNode.cpp, src/dvisvgm.cpp, src/optimizer/AttributeExtractor.cpp,
- src/optimizer/AttributeExtractor.hpp, src/optimizer/CMakeLists.txt,
- src/optimizer/DependencyGraph.hpp, src/optimizer/GroupCollapser.cpp,
- src/optimizer/GroupCollapser.hpp, src/optimizer/Makefile.am,
- src/optimizer/OptimizerModule.hpp,
- src/optimizer/RedundantElementRemover.cpp,
- src/optimizer/RedundantElementRemover.hpp,
- src/optimizer/SVGOptimizer.cpp, src/optimizer/SVGOptimizer.hpp,
- src/optimizer/TransformSimplifier.cpp,
- src/optimizer/TransformSimplifier.hpp, src/optimizer/WSNodeRemover.cpp,
- src/optimizer/WSNodeRemover.hpp, src/options.xml,
- tests/DependencyGraphTest.cpp, tests/Makefile.am, tests/create-makefile:
- moved optimizer classes to subdirectory
-
-2019-03-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Matrix.cpp, src/Matrix.hpp, src/PsSpecialHandler.cpp,
- tests/MatrixTest.cpp:
- swapped Matrix::lmultiply and Matrix::rmultiply
-
- * src/Matrix.cpp, src/Matrix.hpp, src/SVGOptimizer.cpp,
- src/SVGOptimizer.hpp, src/utility.hpp, tests/MatrixTest.cpp:
- added optimizer to simplify 'transform' attributes
-
-2019-03-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/SVGOptimizer.cpp, src/SVGOptimizer.hpp, src/XMLNode.cpp,
- src/XMLNode.hpp:
- remove whitespace nodes before collapsing group elements
-
-2019-03-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/InputBuffer.hpp:
- added StringInputBuffer::assign() to assign a different string
-
- * src/InputReader.cpp, tests/StreamInputBufferTest.cpp:
- replaced constraints for attribute names
-- must start with a letter
--
- may contain selected non-alphanumeric characters, like '-', '_', and '.'
-
- * doc/dvisvgm.txt.in, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.hpp, src/SVGTree.cpp, src/XMLNode.cpp,
- tests/DvisvgmSpecialTest.cpp:
- allow split tags distributed over several dvisvgm:raw specials
-
-2019-03-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.cpp, src/PSPattern.cpp, src/PageRanges.cpp,
- src/PathClipper.cpp, src/RangeMap.cpp:
- use type 'auto' for local iterator variables
-
- * src/FilePath.hpp, src/Font.hpp, src/ImageToSVG.hpp, src/PDFParser.hpp,
- src/SVGOutput.hpp, src/Subfont.hpp, src/XMLNode.cpp, src/XMLNode.hpp:
- use move semantics to initialize string members
-
-2019-03-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BasicDVIReader.hpp, src/DVIToSVG.hpp, src/Subfont.hpp:
- deleted constructors should be public
-
- * src/Bezier.cpp, src/Bezier.hpp, src/CMap.hpp, src/CMapReader.cpp,
- src/Color.cpp, src/DVIToSVG.hpp, src/DVIToSVGActions.cpp,
- src/EmSpecialHandler.cpp, src/EncFile.cpp, src/FileFinder.cpp,
- src/FileFinder.hpp, src/FileSystem.cpp, src/Font.cpp, src/FontCache.cpp,
- src/FontEncoding.cpp, src/FontEncoding.hpp, src/FontEngine.cpp,
- src/FontEngine.hpp, src/FontManager.cpp, src/FontManager.hpp,
- src/FontWriter.hpp, src/GFGlyphTracer.cpp, src/GFGlyphTracer.hpp,
- src/Ghostscript.cpp, src/Ghostscript.hpp, src/ImageToSVG.cpp,
- src/MapLine.cpp, src/MapLine.hpp, src/Message.cpp, src/Message.hpp,
- src/NoPsSpecialHandler.hpp, src/PDFParser.cpp, src/PSInterpreter.cpp,
- src/PSInterpreter.hpp, src/PathClipper.cpp, src/Process.hpp,
- src/SVGCharHandler.hpp, src/SVGCharPathHandler.cpp,
- src/SVGCharPathHandler.hpp, src/SVGCharTspanTextHandler.cpp,
- src/SVGTree.hpp, src/VFReader.cpp, src/VFReader.hpp, src/XMLNode.cpp,
- src/dvisvgm.cpp:
- use nullptr instead of 0
-
- * src/BoundingBox.hpp, src/CLCommandLine.hpp, src/CMapReader.hpp,
- src/Calculator.hpp, src/Font.hpp, src/FontMetrics.hpp,
- src/FontWriter.hpp, src/GFReader.hpp, src/Length.hpp, src/MapLine.hpp,
- src/Matrix.hpp, src/MessageException.hpp, src/PDFParser.hpp,
- src/PSInterpreter.hpp, src/PageSize.hpp, src/ShadingPatch.hpp,
- src/SpecialHandler.hpp, src/StreamReader.hpp, src/TrueTypeFont.hpp,
- src/VFReader.hpp, src/VectorIterator.hpp, src/ZLibOutputStream.hpp:
- made constructors of exception classes explicit
-
- * src/ZLibOutputStream.hpp:
- few modifications of class ZLibOutputStream
-
- * src/CharMapID.hpp, src/Color.hpp, src/FontCache.hpp, src/Message.cpp,
- src/Message.hpp:
- ensure initializations of static members don't throw exceptions
-
- * src/BoundingBox.cpp, src/CMapManager.cpp, src/ColorSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.cpp, src/PathClipper.cpp, src/RangeMap.cpp:
- replaced some index-based loops with range-based ones
-
- * src/FilePath.cpp, src/FilePath.hpp:
- fixed type used to store directories in class FilePath
-
- * src/CLCommandLine.cpp:
- use emplace_back() instead of push_back()
-
- * src/FileFinder.cpp, src/Font.hpp, src/TensorProductPatch.hpp,
- src/dvisvgm.cpp:
- removed redundant 'virtual' modifiers and calls of c_str()
-
- * src/FontManager.cpp, src/HyperlinkManager.cpp, src/PageSize.cpp:
- use spezialized string::find() to look for single characters
-
- * doc/dvisvgm.txt.in, src/CommandLine.hpp, src/dvisvgm.cpp,
- src/options.xml, tests/CommandLineTest.cpp:
- renamed option --exact to --exact-bbox
-This change is downward
- compatible due to partial matching of long options.
-
- * src/DVIToSVGActions.cpp, src/DvisvgmSpecialHandler.cpp, src/Matrix.cpp,
- src/Matrix.hpp, src/PSPattern.cpp, src/PsSpecialHandler.cpp,
- src/SVGCharHandler.cpp, src/SVGCharPathHandler.cpp, src/SVGTree.cpp,
- tests/MatrixTest.cpp:
- renamed and slightly refactored Matrix::getSVG()
-
-2019-03-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/DVIToSVGActions.hpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/HyperlinkManager.cpp, src/ImageToSVG.hpp, src/SVGTree.cpp,
- src/SVGTree.hpp, src/SpecialActions.hpp, tests/DvisvgmSpecialTest.cpp:
- added context stack for SVG defs section
-
- * src/DVIToSVG.cpp, src/ImageToSVG.cpp, src/SVGOptimizer.cpp,
- src/SVGOptimizer.hpp, src/SVGTree.cpp, src/SVGTree.hpp:
- moved removal of redundant clipPath elements to SVGOptimizer
-
- * doc/dvisvgm.txt.in, src/CommandLine.hpp, src/SVGOptimizer.cpp,
- src/SVGOptimizer.hpp, src/dvisvgm.cpp, src/options.xml:
- added command-line option --group-attributes
-
-2019-03-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Makefile.am:
- reformatted file list in Makefile
-
-2019-03-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- added processing of PS operators xshow, yshow, and xyshow
-
-2019-03-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/xxHash/xxhash.c, libs/xxHash/xxhash.h:
- updated xxhash to version 0.7.0
-
-2019-03-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Makefile.am, src/SVGOptimizer.cpp, src/SVGOptimizer.hpp,
- src/SVGTree.cpp, src/XMLNode.cpp, src/XMLNode.hpp, src/utility.hpp:
- added algorithms to move common attributes to group elements
-
-2019-03-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVGActions.hpp, src/ImageToSVG.hpp, src/PSPattern.cpp,
- src/PSPattern.hpp, src/SVGCharHandler.cpp, src/SVGCharHandler.hpp,
- src/SVGTree.cpp, src/SVGTree.hpp, src/SpecialActions.hpp,
- src/SpecialManager.cpp, src/SpecialManager.hpp, src/XMLDocument.cpp,
- src/XMLDocument.hpp, src/XMLNode.cpp, src/XMLNode.hpp,
- tests/DvisvgmSpecialTest.cpp, tests/EmSpecialTest.cpp,
- tests/TpicSpecialTest.cpp:
- take unique_ptrs by value instead of rvalue reference
-
-2019-03-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BoundingBox.cpp, src/BoundingBox.hpp, src/DVIToSVG.cpp,
- src/DVIToSVG.hpp, src/DVIToSVGActions.cpp, src/DVIToSVGActions.hpp,
- src/DvisvgmSpecialHandler.cpp, src/EmSpecialHandler.cpp,
- src/HyperlinkManager.cpp, src/ImageToSVG.cpp, src/ImageToSVG.hpp,
- src/PSPattern.cpp, src/PSPattern.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/SVGCharHandler.cpp, src/SVGCharHandler.hpp,
- src/SVGCharPathHandler.cpp, src/SVGCharPathHandler.hpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGCharTspanTextHandler.hpp,
- src/SVGTree.cpp, src/SVGTree.hpp, src/SpecialActions.hpp,
- src/TpicSpecialHandler.cpp, src/XMLDocument.cpp, src/XMLDocument.hpp,
- src/XMLNode.cpp, src/XMLNode.hpp, tests/DvisvgmSpecialTest.cpp,
- tests/EmSpecialTest.cpp, tests/TpicSpecialTest.cpp,
- tests/XMLNodeTest.cpp:
- renamed XML node classes
-
- * src/XMLDocument.cpp, src/XMLNode.cpp, src/XMLNode.hpp,
- tests/XMLNodeTest.cpp:
- replaced dynamic casts of XML nodes with dedicated cast methods
-
-2019-03-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am:
- rebuild manpage if configure.ac was updated
-A potential change of the
- version number should be propagated to the manpage.
-
- * doc/dvisvgm.txt.in:
- manpage: added link to SVG color names
-
-2019-03-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- imgfile: improved and simplifed code
-- compute transformation matrix
- only once (for image and bbox)
-- compute and update bbox only if
- necessary
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.6.3
-
- * NEWS:
- updated NEWS
-
-2019-03-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/dvisvgm.cpp:
- option --bbox: check validity of paper format arguments corretcly
-
- * src/PsSpecialHandler.cpp:
- ensure forward slashes in file paths passed to PS oparator 'run'
-
- * src/PsSpecialHandler.cpp, src/psdefs.cpp:
- psfile/pdffile: adapt opposite orientation of y-coordinates properly
-
-2019-02-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/InputReader.cpp, src/InputReader.hpp,
- tests/StreamInputBufferTest.cpp, tests/StringMatcherTest.cpp:
- added StringMatcher::read()
-
- * src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/InputReader.cpp, tests/DvisvgmSpecialTest.cpp:
- parse raw specials and create proper XML nodes
-
-2019-02-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DvisvgmSpecialHandler.cpp, src/FontWriter.cpp:
- replaced lookup loops with std::find_if
-
-2019-02-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * m4/Makefile.am:
- add ax_check_compile_flag.m4 to distributed source archives
-
-2019-02-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, m4/ax_check_compile_flag.m4, src/Makefile.am:
- add -Wno-mismatched-tags only if compiler supports
- -Wmismatched-tags
-(closes #101)
-
-2019-02-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Calculator.hpp, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.hpp, src/InputReader.cpp, src/InputReader.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp,
- tests/StreamInputBufferTest.cpp:
- replaced some unordered maps with ordered ones
-
- * src/HtmlSpecialHandler.cpp, src/InputReader.cpp, src/InputReader.hpp,
- src/MapLine.cpp, src/PsSpecialHandler.cpp,
- tests/StreamInputBufferTest.cpp:
- accept alternative bounding chars in getQuotedString()
-
-2019-02-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLNode.cpp, src/XMLNode.hpp, tests/DvisvgmSpecialTest.cpp,
- tests/EmSpecialTest.cpp, tests/TpicSpecialTest.cpp:
- store attributes in vectors instead of maps
-
-2019-02-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/Color.cpp, tests/ColorSpecialTest.cpp,
- tests/ColorTest.cpp, tests/EmSpecialTest.cpp, tests/ShadingPatchTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/TpicSpecialTest.cpp,
- tests/TriangularPatchTest.cpp:
- use short RGB hex values if possible
-
-2019-02-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontEngine.cpp, src/Ghostscript.cpp:
- replaced C casts with const_cast
-
-2019-02-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * README.md:
- added some links to README
-
-2019-01-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/gtest/include/gtest/gtest-death-test.h,
- tests/gtest/include/gtest/gtest-message.h,
- tests/gtest/include/gtest/gtest-param-test.h,
- tests/gtest/include/gtest/gtest-printers.h,
- tests/gtest/include/gtest/gtest-spi.h,
- tests/gtest/include/gtest/gtest-test-part.h,
- tests/gtest/include/gtest/gtest-typed-test.h,
- tests/gtest/include/gtest/gtest.h,
- tests/gtest/include/gtest/gtest_pred_impl.h,
- tests/gtest/include/gtest/gtest_prod.h,
- tests/gtest/include/gtest/internal/custom/gtest-port.h,
- tests/gtest/include/gtest/internal/custom/gtest-printers.h,
- tests/gtest/include/gtest/internal/custom/gtest.h,
- tests/gtest/include/gtest/internal/gtest-death-test-internal.h,
- tests/gtest/include/gtest/internal/gtest-filepath.h,
- tests/gtest/include/gtest/internal/gtest-internal.h,
- tests/gtest/include/gtest/internal/gtest-linked_ptr.h,
- tests/gtest/include/gtest/internal/gtest-param-util-generated.h,
- tests/gtest/include/gtest/internal/gtest-param-util.h,
- tests/gtest/include/gtest/internal/gtest-port-arch.h,
- tests/gtest/include/gtest/internal/gtest-port.h,
- tests/gtest/include/gtest/internal/gtest-string.h,
- tests/gtest/include/gtest/internal/gtest-tuple.h,
- tests/gtest/include/gtest/internal/gtest-type-util.h,
- tests/gtest/src/gtest-all.cc, tests/gtest/src/gtest-death-test.cc,
- tests/gtest/src/gtest-filepath.cc, tests/gtest/src/gtest-internal-inl.h,
- tests/gtest/src/gtest-port.cc, tests/gtest/src/gtest-printers.cc,
- tests/gtest/src/gtest-test-part.cc, tests/gtest/src/gtest-typed-test.cc,
- tests/gtest/src/gtest.cc, tests/gtest/src/gtest_main.cc:
- updated gtest to version 1.8.1
-
-2019-01-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- put struct PatchVertex in corresponding method
-
-2019-01-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, configure.ac, m4/Makefile.am:
- add m4 files to source tarball
-
-2019-01-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, README, README.md:
- updated NEWS and README
-
- * .travis.yml:
- Travis: switched to xenial environment
-
-2019-01-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/psdefs.cpp:
- ensure a path loaded by 'clippath' is considered by clip/eoclip
-
- * src/PsSpecialHandler.cpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- changed semantics of operand of 'newpath'
-It now denotes whether method
- 'newpath' was triggered by PS operator 'newpath'
-or one of the
- drawing/clipping operators.
-
- * src/GraphicsPath.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, tests/FontCacheTest.cpp,
- tests/GraphicsPathTest.cpp:
- only create new clipPath element if the new clip path differs
-
-2019-01-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Ghostscript.cpp:
- fixed formatting of GS version number
-
- * src/PsSpecialHandler.cpp:
- use nullptr instead of 0
-
-2019-01-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- execute 'show' if called internally by another PS operator (e.g.
- charpath)
-
- * src/psdefs.cpp:
- don't propagate local transformations to the PS handler
-PS operators
- like 'charpath' may perform local transformations, e.g. by
-calling
- 'scale'. These must not be forwarded to the PS handler.
-
- * libs/variant/Makefile.am, libs/variant/include/mpark/config.hpp,
- libs/variant/include/mpark/in_place.hpp,
- libs/variant/include/mpark/lib.hpp,
- libs/variant/include/mpark/variant.hpp:
- updated mpark::variant to version 1.4.0
-
- * src/psdefs.cpp:
- PS handler: draw glyph paths with 'fill' rather than 'eofill'
-
- * .appveyor.yml:
- AppVeyor: updated ttfautohint revision to 1.8.2-2
-
-2019-01-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.6.2
-
-2019-01-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- properly apply current scale values to line properties
-
- * src/psdefs.cpp:
- prevent visible side-effects of PS operator 'stringwidth'
-According to
- the PS manual, p. 699, stringwidth may execute the path operators
-of the
- glyph descriptions. This led to visible fragments in the SVG graphics.
-
-2019-01-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/db2html.xsl:
- manpage: fixed wrongly nested list elements
-
- * Makefile.am, README, README.md, configure.ac, doc/Makefile.am,
- doc/conf-dblatex-man.xsl, doc/conf-dblatex-pdf.xsl, doc/db2html.xsl,
- doc/dvisvgm.txt.in, doc/tweak-db-article.xsl, doc/tweak-db-refentry.xsl,
- doc/tweak-dblatex-pdf.xsl, libs/Makefile.am,
- libs/ff-woff/fontforge/tmpfile2.cpp, src/AGLTable.hpp,
- src/BasicDVIReader.cpp, src/BasicDVIReader.hpp, src/Bezier.cpp,
- src/Bezier.hpp, src/BgColorSpecialHandler.cpp,
- src/BgColorSpecialHandler.hpp, src/Bitmap.cpp, src/Bitmap.hpp,
- src/BoundingBox.cpp, src/BoundingBox.hpp, src/CLCommandLine.cpp,
- src/CLCommandLine.hpp, src/CLOption.hpp, src/CMap.cpp, src/CMap.hpp,
- src/CMapManager.cpp, src/CMapManager.hpp, src/CMapReader.cpp,
- src/CMapReader.hpp, src/CRC32.cpp, src/CRC32.hpp, src/Calculator.cpp,
- src/Calculator.hpp, src/CharMapID.cpp, src/CharMapID.hpp,
- src/Character.hpp, src/Color.cpp, src/Color.hpp,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.hpp,
- src/CommandLine.hpp, src/DLLoader.cpp, src/DLLoader.hpp,
- src/DVIActions.hpp, src/DVIReader.cpp, src/DVIReader.hpp,
- src/DVIToSVG.cpp, src/DVIToSVG.hpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.hpp, src/DependencyGraph.hpp, src/Directory.cpp,
- src/Directory.hpp, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.hpp, src/EPSFile.cpp, src/EPSFile.hpp,
- src/EPSToSVG.hpp, src/EmSpecialHandler.cpp, src/EmSpecialHandler.hpp,
- src/EncFile.cpp, src/EncFile.hpp, src/FileFinder.cpp, src/FileFinder.hpp,
- src/FilePath.cpp, src/FilePath.hpp, src/FileSystem.cpp,
- src/FileSystem.hpp, src/FixWord.hpp, src/Font.cpp, src/Font.hpp,
- src/FontCache.cpp, src/FontCache.hpp, src/FontEncoding.cpp,
- src/FontEncoding.hpp, src/FontEngine.cpp, src/FontEngine.hpp,
- src/FontManager.cpp, src/FontManager.hpp, src/FontMap.cpp,
- src/FontMap.hpp, src/FontMetrics.cpp, src/FontMetrics.hpp,
- src/FontStyle.hpp, src/FontWriter.cpp, src/FontWriter.hpp,
- src/GFGlyphTracer.cpp, src/GFGlyphTracer.hpp, src/GFReader.cpp,
- src/GFReader.hpp, src/GFTracer.cpp, src/GFTracer.hpp,
- src/Ghostscript.cpp, src/Ghostscript.hpp, src/Glyph.hpp,
- src/GlyphTracerMessages.hpp, src/GraphicsPath.hpp, src/HashFunction.cpp,
- src/HashFunction.hpp, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.hpp, src/HyperlinkManager.cpp,
- src/HyperlinkManager.hpp, src/ImageToSVG.cpp, src/ImageToSVG.hpp,
- src/InputBuffer.cpp, src/InputBuffer.hpp, src/InputReader.cpp,
- src/InputReader.hpp, src/JFM.cpp, src/JFM.hpp, src/Length.cpp,
- src/Length.hpp, src/MD5HashFunction.hpp, src/Makefile.am,
- src/MapLine.cpp, src/MapLine.hpp, src/Matrix.cpp, src/Matrix.hpp,
- src/Message.cpp, src/Message.hpp, src/MessageException.hpp,
- src/MetafontWrapper.cpp, src/MetafontWrapper.hpp, src/MiKTeXCom.cpp,
- src/MiKTeXCom.hpp, src/NoPsSpecialHandler.cpp,
- src/NoPsSpecialHandler.hpp, src/NumericRanges.hpp, src/PDFParser.cpp,
- src/PDFParser.hpp, src/PDFToSVG.hpp, src/PSFilter.hpp,
- src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PSPattern.cpp,
- src/PSPattern.hpp, src/PSPreviewFilter.cpp, src/PSPreviewFilter.hpp,
- src/PageRanges.cpp, src/PageRanges.hpp, src/PageSize.cpp,
- src/PageSize.hpp, src/Pair.hpp, src/PapersizeSpecialHandler.cpp,
- src/PapersizeSpecialHandler.hpp, src/PathClipper.cpp,
- src/PathClipper.hpp, src/PdfSpecialHandler.cpp,
- src/PdfSpecialHandler.hpp, src/PreScanDVIReader.cpp,
- src/PreScanDVIReader.hpp, src/Process.cpp, src/Process.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/RangeMap.cpp,
- src/RangeMap.hpp, src/SVGCharHandler.cpp, src/SVGCharHandler.hpp,
- src/SVGCharHandlerFactory.cpp, src/SVGCharHandlerFactory.hpp,
- src/SVGCharPathHandler.cpp, src/SVGCharPathHandler.hpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGCharTspanTextHandler.hpp,
- src/SVGOutput.cpp, src/SVGOutput.hpp, src/SVGSingleCharTextHandler.cpp,
- src/SVGSingleCharTextHandler.hpp, src/SVGTree.cpp, src/SVGTree.hpp,
- src/ShadingPatch.cpp, src/ShadingPatch.hpp, src/SignalHandler.cpp,
- src/SignalHandler.hpp, src/SourceInput.cpp, src/SourceInput.hpp,
- src/SpecialActions.hpp, src/SpecialHandler.hpp, src/SpecialManager.cpp,
- src/SpecialManager.hpp, src/StreamReader.cpp, src/StreamReader.hpp,
- src/StreamWriter.cpp, src/StreamWriter.hpp, src/Subfont.cpp,
- src/Subfont.hpp, src/System.cpp, src/System.hpp, src/TFM.cpp,
- src/TFM.hpp, src/TTFAutohint.cpp, src/TTFAutohint.hpp,
- src/TensorProductPatch.cpp, src/TensorProductPatch.hpp, src/Terminal.cpp,
- src/Terminal.hpp, src/ToUnicodeMap.cpp, src/ToUnicodeMap.hpp,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.hpp,
- src/TriangularPatch.cpp, src/TriangularPatch.hpp, src/TrueTypeFont.cpp,
- src/TrueTypeFont.hpp, src/Unicode.cpp, src/Unicode.hpp,
- src/VFActions.hpp, src/VFReader.cpp, src/VFReader.hpp,
- src/VectorIterator.hpp, src/VectorStream.hpp, src/XMLDocument.cpp,
- src/XMLDocument.hpp, src/XMLNode.cpp, src/XMLNode.hpp, src/XMLString.cpp,
- src/XMLString.hpp, src/XXHashFunction.hpp, src/ZLibOutputStream.hpp,
- src/dvisvgm.cpp, src/ffwrapper.c, src/ffwrapper.h, src/macros.hpp,
- src/options.dtd, src/options.xml, src/psdefs.cpp, src/utility.cpp,
- src/utility.hpp, src/version.hpp, src/version.hpp.in, src/windows.hpp,
- tests/BezierTest.cpp, tests/BitmapTest.cpp, tests/BoundingBoxTest.cpp,
- tests/CMapManagerTest.cpp, tests/CMapReaderTest.cpp, tests/CMapTest.cpp,
- tests/CRC32Test.cpp, tests/CalculatorTest.cpp,
- tests/ColorSpecialTest.cpp, tests/ColorTest.cpp,
- tests/CommandLineTest.cpp, tests/DVIReaderTest.cpp,
- tests/DependencyGraphTest.cpp, tests/DirectoryTest.cpp,
- tests/DvisvgmSpecialTest.cpp, tests/EmSpecialTest.cpp,
- tests/FileFinderTest.cpp, tests/FilePathTest.cpp,
- tests/FileSystemTest.cpp, tests/FontCacheTest.cpp,
- tests/FontManagerTest.cpp, tests/FontMapTest.cpp,
- tests/GFGlyphTracerTest.cpp, tests/GFReaderTest.cpp,
- tests/GhostscriptTest.cpp, tests/GraphicsPathTest.cpp,
- tests/HashFunctionTest.cpp, tests/JFMReaderTest.cpp,
- tests/LengthTest.cpp, tests/Makefile.am, tests/MapLineTest.cpp,
- tests/MatrixTest.cpp, tests/MessageExceptionTest.cpp,
- tests/PDFParserTest.cpp, tests/PSInterpreterTest.cpp,
- tests/PageRagesTest.cpp, tests/PageSizeTest.cpp, tests/PairTest.cpp,
- tests/PapersizeSpecialTest.cpp, tests/RangeMapTest.cpp,
- tests/SVGOutputTest.cpp, tests/ShadingPatchTest.cpp,
- tests/SpecialManagerTest.cpp, tests/SplittedCharInputBufferTest.cpp,
- tests/StreamInputBufferTest.cpp, tests/StreamReaderTest.cpp,
- tests/StreamWriterTest.cpp, tests/StringMatcherTest.cpp,
- tests/SubfontTest.cpp, tests/TFMReaderTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/ToUnicodeMapTest.cpp,
- tests/TpicSpecialTest.cpp, tests/TriangularPatchTest.cpp,
- tests/UnicodeTest.cpp, tests/UtilityTest.cpp,
- tests/VectorIteratorTest.cpp, tests/VectorStreamTest.cpp,
- tests/XMLNodeTest.cpp, tests/XMLStringTest.cpp, tests/check-conv,
- tests/create-makefile, tests/data/Makefile.am, tests/genhashcheck.py,
- tests/normalize.xsl, tests/testmain.cpp:
- updated year in copyright statements to 2019
-
-2018-12-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/potrace/CMakeLists.txt, libs/variant/CMakeLists.txt:
- removed redundant files
-
-2018-11-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CommandLine.hpp, src/options.xml:
- updated description in --help output
-
-2018-11-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, doc/Makefile.am, libs/defs.am, src/Makefile.am,
- tests/Makefile.am, tests/create-makefile:
- Makefiles: replaced $(top_srcdir) with $(dvisvgm_srcdir)
-to simplify
- maintenance of dvisvgm in TeX Live
-
-2018-11-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * m4/ax_cxx_compile_stdcxx.m4:
- updated ax_cxx_compile_stdcxx.m4 to version 10
-
-2018-10-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/brotli/Makefile.am, libs/defs.am, libs/potrace/Makefile.am,
- libs/woff2/Makefile.am, libs/xxHash/Makefile.am:
- use negation in Makefile conditionals
-
-2018-10-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/brotli/common/platform.h, libs/brotli/common/transform.c,
- libs/brotli/common/version.h, libs/brotli/enc/backward_references_hq.c,
- libs/brotli/enc/backward_references_hq.h,
- libs/brotli/enc/backward_references_inc.h, libs/brotli/enc/encode.c,
- libs/brotli/enc/hash.h, libs/brotli/enc/hash_composite_inc.h,
- libs/brotli/enc/hash_longest_match64_inc.h,
- libs/brotli/enc/hash_longest_match_inc.h,
- libs/brotli/enc/hash_rolling_inc.h,
- libs/brotli/enc/hash_to_binary_tree_inc.h:
- updated brotli to version 1.0.7
-
-2018-10-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS:
- updated NEWS
-
-2018-10-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am:
- only create intermediate XML files if dvisvgm.txt.1 has changed
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.6.1
-
-2018-10-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am:
- ensure dvisvgm.txt.in is distributed with the tarball
-
- * configure.ac, libs/brotli/Makefile.am, libs/defs.am,
- libs/potrace/Makefile.am, libs/woff2/Makefile.am,
- libs/xxHash/Makefile.am, src/Makefile.am, tests/Makefile.am,
- tests/create-makefile:
- relaxed semantics of config option --disable-bundled-libs
-If some of the
- system libraries brotli, potrace, woff2, and xxhash can't be
-found, the
- bundled libraries are used as a fallback, even if
- option
---disable-bundled-libs is given. (closes #94)
-
-2018-10-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac:
- added configuration option --disable-manpage (closes #93)
-
-2018-10-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, doc/Makefile.am:
- don't update man page if asciidoc file hasn't changed
-
-2018-09-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/brotli/common/platform.h, libs/brotli/common/version.h,
- libs/brotli/enc/metablock.c:
- updated brotli to version 1.0.6
-
-2018-09-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XXHashFunction.hpp:
- fixed constexpr issue occured with gcc 4.8
-
-2018-09-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am:
- add dvisvgm.sty to distributed files
-
-2018-09-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Ghostscript.cpp:
- call RegGetValueA() with correct buffer size
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.6
-
- * NEWS:
- updated NEWS
-
-2018-09-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/DVIToSVG.hpp, src/dvisvgm.cpp:
- use enums for hash parameters rather than strings
-
- * doc/dvisvgm.txt.in, src/DVIToSVG.cpp, src/DVIToSVG.hpp:
- added optional parameter 'replace' to --page-hashes
-
-2018-09-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/DVIToSVG.cpp:
- reset hash function before computing a page hash
-
-2018-09-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/clipper/clipper.cpp:
- clipper: initialize TEdge by constructor instead of memset()
-
-2018-09-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac:
- removed redundant check for potrace from configure
-
-2018-08-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/variant/include/mpark/config.hpp:
- VC: fixed failing compilation of
- mpark::variant
-https://github.com/mpark/variant/commit/4e3e7f88f03f513622daa973
-
-2018-08-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- AppVeyor: use VS 2017 version 15.7 instead of 15.8
-Version 15.8 of
- Visual Studio 2017 introduced a compiler bug that prevents
-compiling
- mpark::variant (https://github.com/mpark/variant/issues/48).
-
-2018-08-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XXHashFunction.hpp, src/dvisvgm.cpp:
- use wrapper class to get the xxhash version number
-
- * src/HashFunction.cpp, src/HashFunction.hpp, src/MD5HashFunction.hpp,
- src/XXHashFunction.hpp, tests/HashFunctionTest.cpp:
- added extended create functions to hash classes
-
- * doc/dvisvgm.txt.in, src/CommandLine.hpp, src/DVIToSVG.cpp,
- src/DVIToSVG.hpp, src/SVGOutput.cpp, src/SVGOutput.hpp, src/dvisvgm.cpp,
- src/options.xml, tests/SVGOutputTest.cpp:
- replaced pattern variable %h with %hd; added %ho and %hc
-In order to
- recognize changes in the command-line options that may affect the
-SVG
- output, %ho and %hc have been introduced. The former expands to a
- 32-bit
-hash reflecting the command-line options, the latter combines this
- information
-with the hash computed from the DVI page data.
-
-2018-08-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/DVIToSVG.hpp, src/dvisvgm.cpp:
- option --page-hashes accepts multiple modifiers now
-
-2018-08-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/DVIToSVG.cpp, src/DVIToSVG.hpp,
- src/HashFunction.cpp, src/HashFunction.hpp, src/SVGOutput.hpp,
- src/dvisvgm.cpp, tests/CommandLineTest.cpp:
- added optional parameter 'list' to option --page-hashes
-
- * src/dvisvgm.cpp:
- fixed wrong directory separators shown in output of --cache
-
-2018-08-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/CommandLine.hpp, src/DVIToSVG.hpp,
- src/dvisvgm.cpp, src/options.xml:
- added command-line option --page-hashes to enable hashing functionality
-
-2018-08-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * AUTHORS, README, README.md, configure.ac, libs/Makefile.am,
- libs/md5/Makefile.am, libs/md5/md5.c, libs/md5/md5.h,
- src/HashFunction.cpp, src/HashFunction.hpp, src/MD5HashFunction.hpp,
- src/Makefile.am, src/XXHashFunction.hpp, tests/HashFunctionTest.cpp,
- tests/Makefile.am, tests/create-makefile:
- added classes to compute MD5, XXH32, and XXH64 hash values
-
- * src/BasicDVIReader.hpp, src/DVIReader.cpp:
- added validity checks for bop offsets
-
- * src/DVIReader.cpp, src/DVIReader.hpp, src/DVIToSVG.cpp,
- src/DVIToSVG.hpp, src/HashFunction.cpp, src/HashFunction.hpp,
- src/SVGOutput.cpp, src/SVGOutput.hpp:
- added optional computation and evaluation of page hashes
-If this
- functionality is enabled, a hash value based on the contents of
- the
-corresponding DVI page is added to the SVG file names. Furthermore,
- dvisvgm
-skips the conversion of these pages in subsequent calls if the
- resulting SVG
-files already exist.
-
-2018-08-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp:
- DVI postamble: relaxed plausibility check of the total page count
-
-2018-08-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac:
- correctly evaluate config option --disable-bundled-libs (closes #91)
-
-2018-08-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BasicDVIReader.hpp, src/DVIToSVG.cpp, src/DVIToSVG.hpp,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.hpp,
- src/PsSpecialHandler.cpp:
- getPageTransformation: replaced reference parameter with return value
-
- * src/DVIToSVGActions.hpp, src/ImageToSVG.hpp, src/PsSpecialHandler.cpp,
- src/SpecialActions.hpp:
- renamed getPageTransform; return unity matrix by default
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.5
-
- * NEWS:
- updated NEWS
-
-2018-08-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp, src/FilePath.cpp, src/FilePath.hpp,
- src/Ghostscript.cpp:
- TL32: also look for gsdll32.dll in the corresponding TL bin folder
-The
- changes are based on a patch sent by Akira Kakuto.
-
-2018-08-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * README:
- updated README
-
- * .appveyor.yml, .travis.yml:
- updated CI configurations; dropped potrace as an external dependency
-
- * configure.ac, src/SourceInput.cpp:
- set umask before calling mkstemp()
-Coverity complains about calling
- mkstemp() without securely setting umask first.
-If umask() is available,
- it's now called so that the permissions of temporary
-files result to
- 0600.
-
- * src/BoundingBox.cpp:
- show lock state when printing a bounding box object
-
- * src/DVIToSVG.cpp:
- apply user transformations even if the bounding box is locked
-
-2018-07-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/ImageToSVG.cpp, src/ImageToSVG.hpp, src/dvisvgm.cpp:
- apply --transform commands in --eps and --pdf mode too
-
- * src/DVIToSVG.cpp, src/Length.cpp, src/Length.hpp, tests/LengthTest.cpp:
- added function to retrieve all units supported by the Length class
-
- * doc/dvisvgm.txt.in, src/DVIToSVG.cpp, src/ImageToSVG.cpp,
- tests/CalculatorTest.cpp:
- allow to use all supported units in --transform commands
-
- * Makefile.am:
- propagate --enable-bundled-libs to "distcheck"
-
- * AUTHORS, README.md, configure.ac, libs/Makefile.am,
- libs/potrace/CMakeLists.txt, libs/potrace/Makefile.am,
- libs/potrace/auxiliary.h, libs/potrace/bitmap.h, libs/potrace/config.h,
- libs/potrace/curve.c, libs/potrace/curve.h, libs/potrace/decompose.c,
- libs/potrace/decompose.h, libs/potrace/lists.h,
- libs/potrace/potracelib.c, libs/potrace/potracelib.h,
- libs/potrace/progress.h, libs/potrace/trace.c, libs/potrace/trace.h,
- src/Makefile.am:
- added potrace to the bundled libraries again
-
- * tests/Makefile.am, tests/create-makefile:
- link tests only against bundled libs if configured with
- --enable-bundled-libs
-
- * src/ImageToSVG.cpp:
- changed type of exception thrown in case of invalid EPS/PDF files
-
-2018-07-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- replaced internal PS operator @getpdfpagebox with PSInterpreter method
-
-2018-07-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/dvisvgm.cpp:
- removed redundant code from main()
-
- * README.md, doc/dvisvgm.txt.in, src/EPSToSVG.hpp, src/ImageToSVG.cpp,
- src/ImageToSVG.hpp, src/PDFToSVG.hpp, src/PSInterpreter.cpp,
- src/PSInterpreter.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/dvisvgm.cpp, src/psdefs.cpp:
- PDF conversion: allow to specify the pages to process
-
-2018-07-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, README.md, configure.ac, libs/brotli/Makefile.am,
- libs/woff2/Makefile.am, libs/xxHash/Makefile.am, src/Makefile.am,
- src/dvisvgm.cpp:
- added config option --enable-bundled-libs
-If this option is given, the
- bundled libraries brotli, woff2, and xxhash are
-built and statically
- linked. Otherwise, the configure script looks for the
-corresponing system
- libraries and links dvisvgm against those. (closes #90)
-
-2018-07-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS:
- fixed date in NEWS
-
-2018-07-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, doc/Makefile.am:
- don't try to build manpage if required tools are missing
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.4.2
-
- * NEWS:
- updated NEWS
-
-2018-07-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/HyperlinkManager.cpp:
- reduced extent of hyperlinked areas to get a tight bbox
-
-2018-07-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- use unique_ptr in bbox debug code
-
- * src/PSPreviewFilter.cpp, src/PSPreviewFilter.hpp:
- removed redundant method PSPreviewFilter::getBorders()
-
- * src/PSPreviewFilter.cpp, src/PsSpecialHandler.cpp:
- fixed computation of preview extents (closes #89)
-
- * src/PsSpecialHandler.cpp:
- prevent warning about missing psfile "/dev/null"
-
-2018-07-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS:
- updated NEWS
-
- * .gitattributes:
- added linguist settings to
- .gitattributes
-
-https://github.com/github/linguist
-
-2018-07-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/brotli/Makefile.am, libs/brotli/common/dictionary.c,
- libs/brotli/common/platform.h, libs/brotli/common/transform.c,
- libs/brotli/common/version.h, libs/brotli/enc/backward_references.c,
- libs/brotli/enc/brotli_bit_stream.h, libs/brotli/enc/command.h,
- libs/brotli/enc/compress_fragment.c,
- libs/brotli/enc/compress_fragment_two_pass.c, libs/brotli/enc/encode.c,
- libs/brotli/enc/encoder_dict.h, libs/brotli/enc/fast_log.h,
- libs/brotli/enc/hash.h, libs/brotli/enc/hash_composite_inc.h,
- libs/brotli/enc/hash_rolling_inc.h, libs/brotli/enc/quality.h,
- libs/brotli/enc/static_dict.c, libs/brotli/enc/write_bits.h,
- libs/brotli/include/brotli/port.h, libs/brotli/include/brotli/types.h:
- updated brotli to version 1.0.5
-
- * README, README.md, doc/dvisvgm.txt.in, libs/ff-woff/README.md:
- updated links to new project website dvisvgm.de
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.4.1
-
-2018-07-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- manpage: updated external links
-
-2018-06-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/include/woff2/version.h, libs/woff2/src/font.cc,
- libs/woff2/src/normalize.cc, libs/woff2/src/woff2_enc.cc:
- updated woff2 to 1.0.2
-
-2018-06-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/SourceInput.cpp, src/SourceInput.hpp:
- moved handling of temporary files to separate class
-
-2018-05-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVGActions.cpp, src/ImageToSVG.cpp:
- fixed evaluation of progress delay
-
-2018-05-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- minor fixes in manpage
-
-2018-05-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/conf-dblatex-pdf.xsl:
- list options and specials in PDF bookmarks of manpage
-
- * doc/dvisvgm.txt.in:
- manpage: ordered options alphabetically according to long name
-
-2018-05-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, README, README.md:
- updated NEWS and README
-
-2018-05-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Calculator.cpp:
- catch exception by reference rather than by value
-
-2018-04-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/EPSFile.cpp, src/EPSFile.hpp, src/EPSToSVG.cpp:
- changed signature of EPSFile::bbox()
-
- * src/CLCommandLine.cpp:
- cmdline: fixed handling of 'usage' section
-
- * src/EPSToSVG.cpp, src/EPSToSVG.hpp, src/ImageToSVG.cpp,
- src/ImageToSVG.hpp, src/Makefile.am:
- derive EPSToSVG from abstract class ImageToSVG
-
- * doc/dvisvgm.txt.in, src/CommandLine.hpp, src/Makefile.am,
- src/PDFToSVG.hpp, src/PSInterpreter.cpp, src/PSInterpreter.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/dvisvgm.cpp,
- src/options.xml, src/psdefs.cpp, tests/CommandLineTest.cpp,
- tests/PSInterpreterTest.cpp:
- added option --pdf to convert PDF files to SVG
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.4
-
-2018-04-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BoundingBox.cpp:
- swap wrongly assigned variables (doesn't affect behavior)
-
-2018-04-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- psfile: use operator 'run' to simplify execution of (E)PS files
-
- * src/PSInterpreter.cpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- added special pdffile to embed PDF graphics
-
- * src/PsSpecialHandler.cpp:
- apply outer transformations to psfile/pdffile graphics
-
-2018-04-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Ghostscript.cpp, src/Ghostscript.hpp, src/dvisvgm.cpp,
- tests/GhostscriptTest.cpp:
- added function to get numeric GS revision
-
- * src/PSInterpreter.cpp, src/PSInterpreter.hpp:
- moved GS init options to init method
-
- * src/PsSpecialHandler.cpp:
- replaced str2double() with stod(); added check for zero bbox
-
- * src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.hpp,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.hpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.hpp,
- src/HtmlSpecialHandler.cpp, src/HtmlSpecialHandler.hpp,
- src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.hpp,
- src/PapersizeSpecialHandler.cpp, src/PapersizeSpecialHandler.hpp,
- src/PdfSpecialHandler.cpp, src/PdfSpecialHandler.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp,
- src/SpecialHandler.hpp, src/SpecialManager.cpp,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.hpp,
- tests/ColorSpecialTest.cpp, tests/DvisvgmSpecialTest.cpp,
- tests/PapersizeSpecialTest.cpp, tests/TpicSpecialTest.cpp:
- changed type of \special prefix from const char* to string
-
- * src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.hpp,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.hpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.hpp,
- src/HtmlSpecialHandler.cpp, src/HtmlSpecialHandler.hpp,
- src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.hpp,
- src/PapersizeSpecialHandler.cpp, src/PapersizeSpecialHandler.hpp,
- src/PdfSpecialHandler.cpp, src/PdfSpecialHandler.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp,
- src/SpecialHandler.hpp, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.hpp:
- removed const from result vector of SpecialHandler::prefixes()
-
-2018-04-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/xxHash/xxhash.c, libs/xxHash/xxhash.h:
- updated xxHash to version 0.6.5
-
- * src/psdefs.cpp:
- fixed handling of PS operator 'setgstate'
-
-2018-04-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * m4/ax_cxx_compile_stdcxx.m4:
- updated ax_cxx_compile_stdcxx.m4 to version 8
-
-2018-04-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.hpp, src/DvisvgmSpecialHandler.hpp,
- src/EmSpecialHandler.hpp, src/HtmlSpecialHandler.hpp,
- src/NoPsSpecialHandler.hpp, src/PapersizeSpecialHandler.hpp,
- src/PdfSpecialHandler.hpp, src/PsSpecialHandler.hpp,
- src/SpecialHandler.hpp, src/SpecialManager.cpp, src/SpecialManager.hpp,
- src/TpicSpecialHandler.hpp:
- merged listener methods into SpecialHandler class
-
- * src/CommandLine.hpp:
- made opt2cpp compatible with Python 3
-
-2018-04-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/brotli/Makefile.am, libs/brotli/common/constants.h,
- libs/brotli/common/platform.h, libs/brotli/common/version.h,
- libs/brotli/enc/backward_references.c,
- libs/brotli/enc/backward_references_hq.c, libs/brotli/enc/command.h,
- libs/brotli/enc/context.h, libs/brotli/enc/encode.c,
- libs/brotli/enc/memory.h, libs/brotli/enc/metablock.c,
- libs/brotli/enc/metablock.h, libs/brotli/enc/params.h,
- libs/brotli/enc/port.h, libs/brotli/enc/quality.h,
- libs/brotli/enc/write_bits.h, libs/brotli/include/brotli/decode.h,
- libs/brotli/include/brotli/encode.h:
- updated brotli to version 1.0.4
-
-2018-03-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/SVGOutput.cpp, src/ZLibOutputStream.hpp,
- src/dvisvgm.cpp:
- enabled to output compressed SVG data to stdout
-
- * src/dvisvgm.cpp:
- renamed SourceInput variable
-
-2018-03-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/dvisvgm.cpp:
- simplified main() function
-
-2018-03-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/CLCommandLine.cpp, src/CLCommandLine.hpp,
- src/CommandLine.hpp, src/EPSFile.cpp, src/EPSFile.hpp, src/EPSToSVG.cpp,
- src/EPSToSVG.hpp, src/FileSystem.cpp, src/Makefile.am,
- src/PsSpecialHandler.cpp, src/SVGOutput.cpp, src/SVGOutput.hpp,
- src/SourceInput.cpp, src/SourceInput.hpp, src/dvisvgm.cpp,
- src/options.xml, tests/CommandLineTest.cpp, tests/SVGOutputTest.cpp:
- added option to read DVI/EPS input from stdin (closes #86)
-
-2018-03-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- PS handler: added processing of .setshapealpha and .setblendmode
-
-2018-03-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Matrix.cpp, src/Matrix.hpp, tests/MatrixTest.cpp:
- added initlist constructor to class Matrix
-
- * src/PSInterpreter.cpp, src/PSInterpreter.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- psfile special: added evaluation of operator 'setpagedevice'
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.3.5
-
- * NEWS:
- updated NEWS
-
-2018-03-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- added missing PS header required to evaluate color names
-
- * src/PSInterpreter.cpp, src/psdefs.cpp:
- drop GS option -dSAFER to stay compatible with GS 9.23
-
-2018-03-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.3.4
-
- * NEWS:
- updated NEWS
-
-2018-03-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/data/Makefile.am:
- add required test file cmr10.pfb to source tarballs (closes #87)
-
-2018-03-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/EmSpecialHandler.hpp, src/XMLDocument.hpp, src/dvisvgm.cpp:
- replaced memory-inefficient lists with vectors
-
- * src/XMLNode.cpp, src/XMLNode.hpp:
- replaced lists of XML element pointers with deques
-
- * src/CLCommandLine.cpp:
- fixed message printed if command-line contains an isolated '-'
-
-2018-03-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/brotli/Makefile.am, libs/brotli/common/constants.h,
- libs/brotli/common/context.h, libs/brotli/common/dictionary.h,
- libs/brotli/common/platform.h, libs/brotli/common/transform.h,
- libs/brotli/common/version.h, libs/brotli/enc/backward_references.c,
- libs/brotli/enc/backward_references.h,
- libs/brotli/enc/backward_references_hq.c,
- libs/brotli/enc/backward_references_hq.h,
- libs/brotli/enc/backward_references_inc.h, libs/brotli/enc/bit_cost.c,
- libs/brotli/enc/bit_cost.h, libs/brotli/enc/block_encoder_inc.h,
- libs/brotli/enc/block_splitter.c, libs/brotli/enc/block_splitter.h,
- libs/brotli/enc/block_splitter_inc.h,
- libs/brotli/enc/brotli_bit_stream.c, libs/brotli/enc/brotli_bit_stream.h,
- libs/brotli/enc/cluster.c, libs/brotli/enc/cluster.h,
- libs/brotli/enc/command.h, libs/brotli/enc/compress_fragment.c,
- libs/brotli/enc/compress_fragment.h,
- libs/brotli/enc/compress_fragment_two_pass.c,
- libs/brotli/enc/compress_fragment_two_pass.h,
- libs/brotli/enc/dictionary_hash.c, libs/brotli/enc/encode.c,
- libs/brotli/enc/encoder_dict.c, libs/brotli/enc/encoder_dict.h,
- libs/brotli/enc/entropy_encode.c, libs/brotli/enc/entropy_encode.h,
- libs/brotli/enc/entropy_encode_static.h, libs/brotli/enc/fast_log.h,
- libs/brotli/enc/find_match_length.h, libs/brotli/enc/hash.h,
- libs/brotli/enc/hash_forgetful_chain_inc.h,
- libs/brotli/enc/hash_longest_match64_inc.h,
- libs/brotli/enc/hash_longest_match_inc.h,
- libs/brotli/enc/hash_longest_match_quickly_inc.h,
- libs/brotli/enc/hash_to_binary_tree_inc.h, libs/brotli/enc/histogram.c,
- libs/brotli/enc/histogram.h, libs/brotli/enc/histogram_inc.h,
- libs/brotli/enc/literal_cost.c, libs/brotli/enc/literal_cost.h,
- libs/brotli/enc/memory.c, libs/brotli/enc/memory.h,
- libs/brotli/enc/metablock.c, libs/brotli/enc/metablock.h,
- libs/brotli/enc/metablock_inc.h, libs/brotli/enc/params.h,
- libs/brotli/enc/prefix.h, libs/brotli/enc/quality.h,
- libs/brotli/enc/ringbuffer.h, libs/brotli/enc/static_dict.c,
- libs/brotli/enc/static_dict.h, libs/brotli/enc/static_dict_lut.h,
- libs/brotli/enc/utf8_util.c, libs/brotli/enc/utf8_util.h,
- libs/brotli/enc/write_bits.h, libs/brotli/include/brotli/decode.h,
- libs/brotli/include/brotli/encode.h, libs/brotli/include/brotli/port.h:
- updated brotli to version 1.0.3
-
-2018-02-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- minor changes of the manpage
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.3.3
-
- * NEWS:
- updated NEWS
-
-2018-02-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PdfSpecialHandler.cpp, src/PdfSpecialHandler.hpp:
- don't remove fontmap definitions before processing pdf:mapXXX specials
-
- * src/FontEngine.cpp:
- prevent creating string from nullptr
-
-2018-02-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileSystem.cpp, src/FontCache.cpp, src/FontMap.cpp,
- src/GFGlyphTracer.cpp, src/MetafontWrapper.cpp, src/PsSpecialHandler.cpp,
- src/utility.cpp, tests/DVIReaderTest.cpp, tests/GFReaderTest.cpp,
- tests/JFMReaderTest.cpp, tests/TFMReaderTest.cpp:
- removed calls of c_str() redundant since C++11
-
- * src/StreamReader.cpp:
- replaced c_str() with data() in StreamReader
-
-2018-02-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.3.2
-
- * src/TpicSpecialHandler.cpp:
- prevent potential division by 0
-
- * src/dvisvgm.cpp:
- prevent dereferencing nullptr (CACHE_PATH)
-
- * NEWS:
- updated NEWS
-
-2018-02-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIActions.hpp, src/DVIReader.cpp, src/DVIReader.hpp,
- src/DVIToSVG.cpp, src/DVIToSVG.hpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.hpp:
- don't update the SVG position after DVIActions::setChar()
-Otherwise, all
- characters get an explicit x position assigned even if it's
-already
- reached by applying the character's advance width.
-
-2018-01-27 Hironobu Yamashita <h.y.acetaminophen@gmail.com>
-
- * src/JFM.cpp:
- JFM.cpp: support new JFM spec introduced in TeX Live r46452
-
- * src/JFM.cpp, src/JFM.hpp, tests/JFMReaderTest.cpp:
- adapted types to conform new JFM format
-
- * src/options.xml:
- updated year in options.xml
-
- * src/FileFinder.cpp, src/Process.cpp:
- relaxed reading from process pipe; fixed getting output of kpsewhich
- (Win only)
-
-2018-01-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMap.hpp, src/RangeMap.hpp, src/ToUnicodeMap.cpp,
- tests/RangeMapTest.cpp, tests/ToUnicodeMapTest.cpp:
- renamed RangeMap::size() to RangeMap::numRanges()
-
-2018-01-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/RangeMap.cpp, src/RangeMap.hpp:
- added iterator and some getters to RangeMap
-
-2018-01-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- AppVeyor: updated to FreeType 2.9 and ttfautohint 1.8.1
-
- * .appveyor.yml:
- AppVeyor: fixed download link of ttfautohint-dll
-
- * NEWS:
- updated NEWS
-
-2018-01-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- manpage: reworded info about option --bbox=preview (closes #83)
-
-2018-01-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.3.1
-
-2018-01-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMapReader.cpp, src/Directory.cpp, src/Directory.hpp,
- src/DvisvgmSpecialHandler.cpp, src/FileFinder.cpp, src/FileFinder.hpp,
- src/FilePath.cpp, src/FilePath.hpp, src/FileSystem.cpp,
- src/FileSystem.hpp, src/Font.cpp, src/FontCache.cpp, src/FontCache.hpp,
- src/FontMap.cpp, src/FontMetrics.cpp, src/FontMetrics.hpp,
- src/MetafontWrapper.cpp:
- replaced some C string parameters with C++ strings
-
-2018-01-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, README, README.md, configure.ac, doc/Makefile.am,
- doc/conf-dblatex-man.xsl, doc/conf-dblatex-pdf.xsl, doc/db2html.xsl,
- doc/dvisvgm.txt.in, doc/tweak-db-article.xsl, doc/tweak-db-refentry.xsl,
- doc/tweak-dblatex-pdf.xsl, libs/Makefile.am,
- libs/ff-woff/fontforge/tmpfile2.cpp, src/AGLTable.hpp,
- src/BasicDVIReader.cpp, src/BasicDVIReader.hpp, src/Bezier.cpp,
- src/Bezier.hpp, src/BgColorSpecialHandler.cpp,
- src/BgColorSpecialHandler.hpp, src/Bitmap.cpp, src/Bitmap.hpp,
- src/BoundingBox.cpp, src/BoundingBox.hpp, src/CLCommandLine.cpp,
- src/CLCommandLine.hpp, src/CLOption.hpp, src/CMap.cpp, src/CMap.hpp,
- src/CMapManager.cpp, src/CMapManager.hpp, src/CMapReader.cpp,
- src/CMapReader.hpp, src/CRC32.cpp, src/CRC32.hpp, src/Calculator.cpp,
- src/Calculator.hpp, src/CharMapID.cpp, src/CharMapID.hpp,
- src/Character.hpp, src/Color.cpp, src/Color.hpp,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.hpp,
- src/CommandLine.hpp, src/DLLoader.cpp, src/DLLoader.hpp,
- src/DVIActions.hpp, src/DVIReader.cpp, src/DVIReader.hpp,
- src/DVIToSVG.cpp, src/DVIToSVG.hpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.hpp, src/DependencyGraph.hpp, src/Directory.cpp,
- src/Directory.hpp, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.hpp, src/EPSFile.cpp, src/EPSFile.hpp,
- src/EPSToSVG.cpp, src/EPSToSVG.hpp, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.hpp, src/EncFile.cpp, src/EncFile.hpp,
- src/FileFinder.cpp, src/FileFinder.hpp, src/FilePath.cpp,
- src/FilePath.hpp, src/FileSystem.cpp, src/FileSystem.hpp,
- src/FixWord.hpp, src/Font.cpp, src/Font.hpp, src/FontCache.cpp,
- src/FontCache.hpp, src/FontEncoding.cpp, src/FontEncoding.hpp,
- src/FontEngine.cpp, src/FontEngine.hpp, src/FontManager.cpp,
- src/FontManager.hpp, src/FontMap.cpp, src/FontMap.hpp,
- src/FontMetrics.cpp, src/FontMetrics.hpp, src/FontStyle.hpp,
- src/FontWriter.cpp, src/FontWriter.hpp, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.hpp, src/GFReader.cpp, src/GFReader.hpp,
- src/GFTracer.cpp, src/GFTracer.hpp, src/Ghostscript.cpp,
- src/Ghostscript.hpp, src/Glyph.hpp, src/GlyphTracerMessages.hpp,
- src/GraphicsPath.hpp, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.hpp, src/HyperlinkManager.cpp,
- src/HyperlinkManager.hpp, src/InputBuffer.cpp, src/InputBuffer.hpp,
- src/InputReader.cpp, src/InputReader.hpp, src/JFM.cpp, src/JFM.hpp,
- src/Length.cpp, src/Length.hpp, src/Makefile.am, src/MapLine.cpp,
- src/MapLine.hpp, src/Matrix.cpp, src/Matrix.hpp, src/Message.cpp,
- src/Message.hpp, src/MessageException.hpp, src/MetafontWrapper.cpp,
- src/MetafontWrapper.hpp, src/MiKTeXCom.cpp, src/MiKTeXCom.hpp,
- src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.hpp,
- src/NumericRanges.hpp, src/PDFParser.cpp, src/PDFParser.hpp,
- src/PSFilter.hpp, src/PSInterpreter.cpp, src/PSInterpreter.hpp,
- src/PSPattern.cpp, src/PSPattern.hpp, src/PSPreviewFilter.cpp,
- src/PSPreviewFilter.hpp, src/PageRanges.cpp, src/PageRanges.hpp,
- src/PageSize.cpp, src/PageSize.hpp, src/Pair.hpp,
- src/PapersizeSpecialHandler.cpp, src/PapersizeSpecialHandler.hpp,
- src/PathClipper.cpp, src/PathClipper.hpp, src/PdfSpecialHandler.cpp,
- src/PdfSpecialHandler.hpp, src/PreScanDVIReader.cpp,
- src/PreScanDVIReader.hpp, src/Process.cpp, src/Process.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/RangeMap.cpp,
- src/RangeMap.hpp, src/SVGCharHandler.cpp, src/SVGCharHandler.hpp,
- src/SVGCharHandlerFactory.cpp, src/SVGCharHandlerFactory.hpp,
- src/SVGCharPathHandler.cpp, src/SVGCharPathHandler.hpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGCharTspanTextHandler.hpp,
- src/SVGOutput.cpp, src/SVGOutput.hpp, src/SVGSingleCharTextHandler.cpp,
- src/SVGSingleCharTextHandler.hpp, src/SVGTree.cpp, src/SVGTree.hpp,
- src/ShadingPatch.cpp, src/ShadingPatch.hpp, src/SignalHandler.cpp,
- src/SignalHandler.hpp, src/SpecialActions.hpp, src/SpecialHandler.hpp,
- src/SpecialManager.cpp, src/SpecialManager.hpp, src/StreamReader.cpp,
- src/StreamReader.hpp, src/StreamWriter.cpp, src/StreamWriter.hpp,
- src/Subfont.cpp, src/Subfont.hpp, src/System.cpp, src/System.hpp,
- src/TFM.cpp, src/TFM.hpp, src/TTFAutohint.cpp, src/TTFAutohint.hpp,
- src/TensorProductPatch.cpp, src/TensorProductPatch.hpp, src/Terminal.cpp,
- src/Terminal.hpp, src/ToUnicodeMap.cpp, src/ToUnicodeMap.hpp,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.hpp,
- src/TriangularPatch.cpp, src/TriangularPatch.hpp, src/TrueTypeFont.cpp,
- src/TrueTypeFont.hpp, src/Unicode.cpp, src/Unicode.hpp,
- src/VFActions.hpp, src/VFReader.cpp, src/VFReader.hpp,
- src/VectorIterator.hpp, src/VectorStream.hpp, src/XMLDocument.cpp,
- src/XMLDocument.hpp, src/XMLNode.cpp, src/XMLNode.hpp, src/XMLString.cpp,
- src/XMLString.hpp, src/ZLibOutputStream.hpp, src/dvisvgm.cpp,
- src/ffwrapper.c, src/ffwrapper.h, src/macros.hpp, src/options.dtd,
- src/options.xml, src/psdefs.cpp, src/utility.cpp, src/utility.hpp,
- src/version.hpp, src/version.hpp.in, src/windows.hpp,
- tests/BezierTest.cpp, tests/BitmapTest.cpp, tests/BoundingBoxTest.cpp,
- tests/CMapManagerTest.cpp, tests/CMapReaderTest.cpp, tests/CMapTest.cpp,
- tests/CRC32Test.cpp, tests/CalculatorTest.cpp,
- tests/ColorSpecialTest.cpp, tests/ColorTest.cpp,
- tests/CommandLineTest.cpp, tests/DVIReaderTest.cpp,
- tests/DependencyGraphTest.cpp, tests/DirectoryTest.cpp,
- tests/DvisvgmSpecialTest.cpp, tests/EmSpecialTest.cpp,
- tests/FileFinderTest.cpp, tests/FilePathTest.cpp,
- tests/FileSystemTest.cpp, tests/FontCacheTest.cpp,
- tests/FontManagerTest.cpp, tests/FontMapTest.cpp,
- tests/GFGlyphTracerTest.cpp, tests/GFReaderTest.cpp,
- tests/GhostscriptTest.cpp, tests/GraphicsPathTest.cpp,
- tests/JFMReaderTest.cpp, tests/LengthTest.cpp, tests/Makefile.am,
- tests/MapLineTest.cpp, tests/MatrixTest.cpp,
- tests/MessageExceptionTest.cpp, tests/PDFParserTest.cpp,
- tests/PSInterpreterTest.cpp, tests/PageRagesTest.cpp,
- tests/PageSizeTest.cpp, tests/PairTest.cpp,
- tests/PapersizeSpecialTest.cpp, tests/RangeMapTest.cpp,
- tests/SVGOutputTest.cpp, tests/ShadingPatchTest.cpp,
- tests/SpecialManagerTest.cpp, tests/SplittedCharInputBufferTest.cpp,
- tests/StreamInputBufferTest.cpp, tests/StreamReaderTest.cpp,
- tests/StreamWriterTest.cpp, tests/StringMatcherTest.cpp,
- tests/SubfontTest.cpp, tests/TFMReaderTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/ToUnicodeMapTest.cpp,
- tests/TpicSpecialTest.cpp, tests/TriangularPatchTest.cpp,
- tests/UnicodeTest.cpp, tests/UtilityTest.cpp,
- tests/VectorIteratorTest.cpp, tests/VectorStreamTest.cpp,
- tests/XMLNodeTest.cpp, tests/XMLStringTest.cpp, tests/check-conv,
- tests/create-makefile, tests/data/Makefile.am, tests/genhashcheck.py,
- tests/normalize.xsl, tests/testmain.cpp:
- updated year in copyright statements to 2018
-
- * src/dvisvgm.cpp:
- avoid potential dangling string pointer to --fontmap argument
-
- * src/Font.cpp:
- fixed char width of fonts slanted by style option (closes #82)
-
-2017-12-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TTFAutohint.hpp:
- don't declare member variables of TTFAutohint if ttfautohint is not
- available
-
- * src/FontWriter.cpp:
- keep unhinted TTF if autohinting failed
-
-2017-12-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- AppVeyor: download and install ttfautohint headers
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.3
-
- * NEWS, README, README.md:
- updated README and NEWS
-
-2017-12-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DLLoader.cpp, src/DLLoader.hpp, src/Ghostscript.cpp,
- src/TTFAutohint.cpp:
- simplify function to load a symbol from a dynamic library
-
-2017-12-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/DLLoader.cpp, src/DLLoader.hpp, src/FontWriter.cpp,
- src/Makefile.am, src/TTFAutohint.cpp, src/TTFAutohint.hpp,
- src/dvisvgm.cpp:
- added code to load libttfautohint dynamically at runtime
-
-2017-12-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/xxHash/xxhash.c, libs/xxHash/xxhash.h:
- updated xxHash to version 0.6.4
-
-2017-12-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/gtest/include/gtest/gtest-param-test.h,
- tests/gtest/include/gtest/gtest-printers.h,
- tests/gtest/include/gtest/gtest-spi.h,
- tests/gtest/include/gtest/gtest-typed-test.h,
- tests/gtest/include/gtest/gtest.h,
- tests/gtest/include/gtest/internal/custom/gtest-port.h,
- tests/gtest/include/gtest/internal/custom/gtest.h,
- tests/gtest/include/gtest/internal/gtest-internal.h,
- tests/gtest/include/gtest/internal/gtest-param-util-generated.h,
- tests/gtest/include/gtest/internal/gtest-param-util.h,
- tests/gtest/include/gtest/internal/gtest-port-arch.h,
- tests/gtest/include/gtest/internal/gtest-port.h,
- tests/gtest/src/gtest-death-test.cc,
- tests/gtest/src/gtest-internal-inl.h, tests/gtest/src/gtest-port.cc,
- tests/gtest/src/gtest-printers.cc, tests/gtest/src/gtest.cc:
- updated gtest
-
-2017-12-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac:
- configure: dropped check of outdated Ghostscript version
-
- * configure.ac, src/Makefile.am:
- configure: added --with-kpathsea to set the path of the kpathsea devel
- files
-closes #71
-
-2017-12-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- psdefs: replaced '6 array' with 'matrix'
-
-2017-12-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/Makefile.am, libs/woff2/include/woff2/file.h,
- src/FontWriter.cpp, src/FontWriter.hpp, src/Makefile.am,
- src/StreamReader.hpp, src/StreamWriter.cpp, src/StreamWriter.hpp,
- src/TrueTypeFont.cpp, src/TrueTypeFont.hpp, src/ffwrapper.c,
- src/ffwrapper.h, src/utility.cpp, src/utility.hpp:
- replaced ff_sfd_to_woff() with TrueTypeFont::writeWOFF()
-
- * configure.ac, src/FontWriter.cpp, src/Makefile.am, src/dvisvgm.cpp:
- added optional support for ttfautohint
-
-2017-12-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, libs/Makefile.am, libs/brotli/LICENSE,
- libs/brotli/Makefile.am, libs/brotli/common/constants.h,
- libs/brotli/common/dictionary.c, libs/brotli/common/dictionary.h,
- libs/brotli/common/version.h, libs/brotli/enc/backward_references.c,
- libs/brotli/enc/backward_references.h,
- libs/brotli/enc/backward_references_hq.c,
- libs/brotli/enc/backward_references_hq.h,
- libs/brotli/enc/backward_references_inc.h, libs/brotli/enc/bit_cost.c,
- libs/brotli/enc/bit_cost.h, libs/brotli/enc/bit_cost_inc.h,
- libs/brotli/enc/block_encoder_inc.h, libs/brotli/enc/block_splitter.c,
- libs/brotli/enc/block_splitter.h, libs/brotli/enc/block_splitter_inc.h,
- libs/brotli/enc/brotli_bit_stream.c, libs/brotli/enc/brotli_bit_stream.h,
- libs/brotli/enc/cluster.c, libs/brotli/enc/cluster.h,
- libs/brotli/enc/cluster_inc.h, libs/brotli/enc/command.h,
- libs/brotli/enc/compress_fragment.c, libs/brotli/enc/compress_fragment.h,
- libs/brotli/enc/compress_fragment_two_pass.c,
- libs/brotli/enc/compress_fragment_two_pass.h, libs/brotli/enc/context.h,
- libs/brotli/enc/dictionary_hash.c, libs/brotli/enc/dictionary_hash.h,
- libs/brotli/enc/encode.c, libs/brotli/enc/entropy_encode.c,
- libs/brotli/enc/entropy_encode.h,
- libs/brotli/enc/entropy_encode_static.h, libs/brotli/enc/fast_log.h,
- libs/brotli/enc/find_match_length.h, libs/brotli/enc/hash.h,
- libs/brotli/enc/hash_forgetful_chain_inc.h,
- libs/brotli/enc/hash_longest_match64_inc.h,
- libs/brotli/enc/hash_longest_match_inc.h,
- libs/brotli/enc/hash_longest_match_quickly_inc.h,
- libs/brotli/enc/hash_to_binary_tree_inc.h, libs/brotli/enc/histogram.c,
- libs/brotli/enc/histogram.h, libs/brotli/enc/histogram_inc.h,
- libs/brotli/enc/literal_cost.c, libs/brotli/enc/literal_cost.h,
- libs/brotli/enc/memory.c, libs/brotli/enc/memory.h,
- libs/brotli/enc/metablock.c, libs/brotli/enc/metablock.h,
- libs/brotli/enc/metablock_inc.h, libs/brotli/enc/port.h,
- libs/brotli/enc/prefix.h, libs/brotli/enc/quality.h,
- libs/brotli/enc/ringbuffer.h, libs/brotli/enc/static_dict.c,
- libs/brotli/enc/static_dict.h, libs/brotli/enc/static_dict_lut.h,
- libs/brotli/enc/utf8_util.c, libs/brotli/enc/utf8_util.h,
- libs/brotli/enc/write_bits.h, libs/brotli/include/brotli/decode.h,
- libs/brotli/include/brotli/encode.h, libs/brotli/include/brotli/port.h,
- libs/brotli/include/brotli/types.h, libs/woff2/Makefile.am,
- libs/woff2/brotli/LICENSE, libs/woff2/brotli/Makefile.am,
- libs/woff2/brotli/common/constants.h,
- libs/woff2/brotli/common/dictionary.c,
- libs/woff2/brotli/common/dictionary.h,
- libs/woff2/brotli/common/version.h,
- libs/woff2/brotli/enc/backward_references.c,
- libs/woff2/brotli/enc/backward_references.h,
- libs/woff2/brotli/enc/backward_references_hq.c,
- libs/woff2/brotli/enc/backward_references_hq.h,
- libs/woff2/brotli/enc/backward_references_inc.h,
- libs/woff2/brotli/enc/bit_cost.c, libs/woff2/brotli/enc/bit_cost.h,
- libs/woff2/brotli/enc/bit_cost_inc.h,
- libs/woff2/brotli/enc/block_encoder_inc.h,
- libs/woff2/brotli/enc/block_splitter.c,
- libs/woff2/brotli/enc/block_splitter.h,
- libs/woff2/brotli/enc/block_splitter_inc.h,
- libs/woff2/brotli/enc/brotli_bit_stream.c,
- libs/woff2/brotli/enc/brotli_bit_stream.h,
- libs/woff2/brotli/enc/cluster.c, libs/woff2/brotli/enc/cluster.h,
- libs/woff2/brotli/enc/cluster_inc.h, libs/woff2/brotli/enc/command.h,
- libs/woff2/brotli/enc/compress_fragment.c,
- libs/woff2/brotli/enc/compress_fragment.h,
- libs/woff2/brotli/enc/compress_fragment_two_pass.c,
- libs/woff2/brotli/enc/compress_fragment_two_pass.h,
- libs/woff2/brotli/enc/context.h, libs/woff2/brotli/enc/dictionary_hash.c,
- libs/woff2/brotli/enc/dictionary_hash.h, libs/woff2/brotli/enc/encode.c,
- libs/woff2/brotli/enc/entropy_encode.c,
- libs/woff2/brotli/enc/entropy_encode.h,
- libs/woff2/brotli/enc/entropy_encode_static.h,
- libs/woff2/brotli/enc/fast_log.h,
- libs/woff2/brotli/enc/find_match_length.h, libs/woff2/brotli/enc/hash.h,
- libs/woff2/brotli/enc/hash_forgetful_chain_inc.h,
- libs/woff2/brotli/enc/hash_longest_match64_inc.h,
- libs/woff2/brotli/enc/hash_longest_match_inc.h,
- libs/woff2/brotli/enc/hash_longest_match_quickly_inc.h,
- libs/woff2/brotli/enc/hash_to_binary_tree_inc.h,
- libs/woff2/brotli/enc/histogram.c, libs/woff2/brotli/enc/histogram.h,
- libs/woff2/brotli/enc/histogram_inc.h,
- libs/woff2/brotli/enc/literal_cost.c,
- libs/woff2/brotli/enc/literal_cost.h, libs/woff2/brotli/enc/memory.c,
- libs/woff2/brotli/enc/memory.h, libs/woff2/brotli/enc/metablock.c,
- libs/woff2/brotli/enc/metablock.h, libs/woff2/brotli/enc/metablock_inc.h,
- libs/woff2/brotli/enc/port.h, libs/woff2/brotli/enc/prefix.h,
- libs/woff2/brotli/enc/quality.h, libs/woff2/brotli/enc/ringbuffer.h,
- libs/woff2/brotli/enc/static_dict.c, libs/woff2/brotli/enc/static_dict.h,
- libs/woff2/brotli/enc/static_dict_lut.h,
- libs/woff2/brotli/enc/utf8_util.c, libs/woff2/brotli/enc/utf8_util.h,
- libs/woff2/brotli/enc/write_bits.h,
- libs/woff2/brotli/include/brotli/decode.h,
- libs/woff2/brotli/include/brotli/encode.h,
- libs/woff2/brotli/include/brotli/port.h,
- libs/woff2/brotli/include/brotli/types.h, src/Makefile.am,
- tests/Makefile.am, tests/create-makefile:
- moved brotli from woff2 to libs folder
-
-2017-12-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/variant/include/mpark/config.hpp,
- libs/variant/include/mpark/lib.hpp,
- libs/variant/include/mpark/variant.hpp:
- updated mpark::variant to
- https://github.com/mpark/variant/commit/382014b
-fixes a build error
- introduced with MSVC 19.12
-
-2017-12-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.2.3
-
- * NEWS:
- updated NEWS
-
-2017-11-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/brotli/common/dictionary.h,
- libs/woff2/brotli/common/version.h,
- libs/woff2/brotli/enc/backward_references_hq.c,
- libs/woff2/brotli/enc/backward_references_hq.h,
- libs/woff2/brotli/enc/port.h, libs/woff2/brotli/enc/quality.h,
- libs/woff2/brotli/include/brotli/decode.h,
- libs/woff2/brotli/include/brotli/encode.h:
- updated brotli to version 1.0.2
-
-2017-11-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.cpp, src/BoundingBox.cpp, src/BoundingBox.hpp,
- src/Color.cpp, src/PathClipper.cpp, src/SVGTree.cpp,
- tests/BoundingBoxTest.cpp:
- minor code cleanup and improvements
-
- * src/DependencyGraph.hpp:
- simplified DependencyGraph::GraphNode
-
-2017-11-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/TpicSpecialTest.cpp:
- added missing initializers in TpicSpecialTest
-
- * tests/EmSpecialTest.cpp:
- added missing initializers in EmSpecialTest
-
- * src/DependencyGraph.hpp:
- fixed dangling pointer issue in DependencyGraph
-
- * src/Makefile.am, tests/Makefile.am, tests/create-makefile:
- suppress warnings regarding 'mismatched tags'
- (class/struct)
-https://gcc.gnu.org/wiki/FAQ#Why_GCC_does_not_warn_for_mismatch_between_struct_and_class_.28-Wmismatched-tags.29_.3F
-
-2017-11-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSPattern.cpp, src/SVGCharHandler.cpp, src/SVGTree.cpp,
- src/TpicSpecialHandler.cpp:
- removed redundant calls of std::move()
-
- * src/Subfont.cpp, src/Subfont.hpp, tests/CMapManagerTest.cpp,
- tests/FileFinderTest.cpp, tests/FontManagerTest.cpp, tests/Makefile.am,
- tests/MapLineTest.cpp, tests/SubfontTest.cpp, tests/create-makefile,
- tests/testmain.cpp, tests/testutil.hpp:
- tests: moved common initializations to testmain.cpp
-
- * src/DVIReader.hpp, tests/DVIReaderTest.cpp, tests/Makefile.am,
- tests/data/Makefile.am, tests/data/cmr10.pfb, tests/data/sample_v2.dvi,
- tests/data/sample_v3.dvi:
- added test for DVIReader
-
-2017-11-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am:
- removed redundant lcov statement from Makefile
-
-2017-11-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/CMapTest.cpp, tests/GFReaderTest.cpp, tests/JFMReaderTest.cpp,
- tests/RangeMapTest.cpp, tests/TFMReaderTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/ToUnicodeMapTest.cpp,
- tests/VectorStreamTest.cpp:
- tests: few code improvements
-
- * README.md:
- added donation badge to readme
-
-2017-11-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp, src/Font.hpp:
- prevent dangling pointers to font map entries (closes #79)
-
- * src/CMapManager.cpp, src/FileFinder.cpp, src/Font.cpp, src/Font.hpp,
- src/FontEngine.cpp, src/FontManager.cpp, src/FontMap.cpp,
- src/FontMap.hpp, src/Ghostscript.cpp, src/MiKTeXCom.cpp, src/XMLNode.cpp:
- replaced null pointer constants with 'nullptr'
-
- * src/XMLString.cpp, tests/TensorProductPatchTest.cpp,
- tests/XMLStringTest.cpp:
- avoid scientific notation when printing floats/doubles
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.2.2
-
- * NEWS:
- updated NEWS
-
-2017-11-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am:
- ensure tweak-db-refentry.xsl is put into the tarball
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.2.1
-
- * NEWS, README.md:
- updated NEWS and README
-
- * libs/variant/include/mpark/lib.hpp,
- libs/variant/include/mpark/variant.hpp:
- updated mpark::variant to commit
- ea542a0
-https://github.com/mpark/variant/commit/ea542a0fef86fb8c1696238b95bdaddb8ff2337c
-
-2017-11-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md, doc/dvisvgm.txt.in:
- minor additions/fixes of manpage and README
-
-2017-11-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am, doc/db2html.xsl, doc/tweak-db-refentry.xsl:
- manpage: avoid using 'stats' to improve portability (closes #72)
-
-2017-10-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/InputReader.cpp, src/InputReader.hpp, src/PSInterpreter.cpp:
- simplified code to lookup PS operators
-
-2017-10-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.hpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- properly apply CTM to linewidth (closes #77)
-
- * src/PsSpecialHandler.hpp, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- call applyscalevals on every change of the CTM
-
-2017-10-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/DVIToSVGActions.cpp, src/DVIToSVGActions.hpp,
- src/DvisvgmSpecialHandler.cpp, src/EPSToSVG.cpp, src/EPSToSVG.hpp,
- src/EmSpecialHandler.cpp, src/HyperlinkManager.cpp, src/PSPattern.cpp,
- src/PSPattern.hpp, src/PsSpecialHandler.cpp, src/SVGCharHandler.cpp,
- src/SVGCharHandler.hpp, src/SVGCharPathHandler.cpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGSingleCharTextHandler.cpp,
- src/SVGTree.cpp, src/SVGTree.hpp, src/ShadingPatch.hpp,
- src/SpecialActions.hpp, src/TpicSpecialHandler.cpp, src/XMLDocument.cpp,
- src/XMLDocument.hpp, src/XMLNode.cpp, src/XMLNode.hpp, src/utility.hpp,
- tests/DvisvgmSpecialTest.cpp, tests/EmSpecialTest.cpp,
- tests/TpicSpecialTest.cpp, tests/XMLNodeTest.cpp:
- replaced raw XMLNode pointers with unique_ptrs
-which helps to ensure
- proper ownership and simplifies deleting the corresponding objects
-
- * src/DependencyGraph.hpp, src/SVGTree.cpp, tests/DependencyGraphTest.cpp:
- manage heap memory in DependencyGraph with unique_ptrs
-
-2017-10-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/ff-woff/fontforge/macbinary.c:
- updated link to CTAN:/tools/macutils/crc
-
-2017-10-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/include/woff2/version.h:
- replaced CRLF line endings
-
-2017-10-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMapManager.cpp, src/CMapReader.cpp, src/CMapReader.hpp,
- src/DVIActions.hpp, src/DVIToSVG.cpp, src/DVIToSVG.hpp,
- src/DVIToSVGActions.hpp, src/FileFinder.cpp, src/Font.cpp, src/Font.hpp,
- src/FontEncoding.cpp, src/FontEncoding.hpp, src/FontEngine.cpp,
- src/FontEngine.hpp, src/FontManager.cpp, src/FontMetrics.cpp,
- src/FontMetrics.hpp, src/PSPattern.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.hpp, src/SVGCharHandlerFactory.cpp,
- src/SVGCharHandlerFactory.hpp, src/SVGOutput.cpp,
- src/SVGSingleCharTextHandler.hpp, src/SVGTree.cpp, src/ShadingPatch.cpp,
- src/ShadingPatch.hpp, src/SignalHandler.cpp, src/Subfont.cpp,
- src/Subfont.hpp, src/XMLNode.cpp, tests/CMapReaderTest.cpp,
- tests/ShadingPatchTest.cpp:
- replaced several bare new/delete statements with unique pointers
-
- * src/dvisvgm.cpp:
- fixed output of option --version
-
- * src/Length.hpp, src/PageSize.cpp:
- added user-defined literals for some length units
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.2
-
- * NEWS, README, README.md:
- updated NEWS and README
-
-2017-10-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontWriter.cpp:
- added missing #include of config.h
-
- * src/Message.cpp:
- check for '\0' at end of DVISVGM_COLORS
-
- * src/Subfont.cpp:
- don't access unique_ptr after it has been moved
-
-2017-10-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PDFParser.cpp, src/PDFParser.hpp:
- replaced shared_ptr with unique_ptr in PDFParser
-
-2017-10-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * AUTHORS, configure.ac, doc/dvisvgm.txt.in, libs/Makefile.am,
- libs/variant/CMakeLists.txt, libs/variant/LICENSE.md,
- libs/variant/Makefile.am, libs/variant/include/mpark/in_place.hpp,
- libs/variant/include/mpark/lib.hpp,
- libs/variant/include/mpark/variant.hpp, src/HyperlinkManager.cpp,
- src/HyperlinkManager.hpp, src/InputReader.hpp, src/Makefile.am,
- src/PDFParser.cpp, src/PDFParser.hpp, src/PdfSpecialHandler.cpp,
- src/PdfSpecialHandler.hpp, tests/Makefile.am, tests/PDFParserTest.cpp,
- tests/SpecialManagerTest.cpp, tests/create-makefile:
- added evaluation of PDF hyperlink specials (closes #74)
-
- * libs/variant/include/mpark/config.hpp:
- added missing config file
-
- * .travis.yml:
- Travis: use gcc 4.9 rather than 4.8 to compile mpark::variant correctly
-
- * tests/Makefile.am, tests/create-makefile, tests/testmain.cpp:
- add custom testmain to gtest.a
-
-2017-10-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/HtmlSpecialHandler.cpp, src/HtmlSpecialHandler.hpp,
- src/HyperlinkManager.cpp, src/HyperlinkManager.hpp, src/Makefile.am,
- src/dvisvgm.cpp:
- separated hyperlink functionality from HtmlSpecialHandler to
- HyperlinkManager
-
-2017-10-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/src/font.cc, libs/woff2/src/normalize.cc,
- libs/woff2/src/woff2_enc.cc:
- woff2: removed unused variables to prevent compiler warnings
-
- * libs/woff2/src/font.cc, libs/woff2/src/normalize.cc,
- libs/woff2/src/woff2_enc.cc:
- woff2: removed unused variables to prevent compiler warnings
-
-2017-10-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/Makefile.am, libs/woff2/include/woff2/decode.h,
- libs/woff2/include/woff2/encode.h, libs/woff2/include/woff2/file.h,
- libs/woff2/include/woff2/output.h, libs/woff2/include/woff2/version.h,
- libs/woff2/src/buffer.h, libs/woff2/src/file.h, libs/woff2/src/font.cc,
- libs/woff2/src/font.h, libs/woff2/src/glyph.cc, libs/woff2/src/glyph.h,
- libs/woff2/src/normalize.cc, libs/woff2/src/normalize.h,
- libs/woff2/src/port.h, libs/woff2/src/round.h,
- libs/woff2/src/store_bytes.h, libs/woff2/src/table_tags.cc,
- libs/woff2/src/table_tags.h, libs/woff2/src/transform.cc,
- libs/woff2/src/transform.h, libs/woff2/src/variable_length.cc,
- libs/woff2/src/variable_length.h, libs/woff2/src/woff2_common.cc,
- libs/woff2/src/woff2_common.h, libs/woff2/src/woff2_dec.h,
- libs/woff2/src/woff2_enc.cc, libs/woff2/src/woff2_enc.h,
- libs/woff2/src/woff2_out.cc, libs/woff2/src/woff2_out.h,
- src/FontWriter.cpp, src/Makefile.am, src/dvisvgm.cpp:
- updated woff2 to version 1.0.1
-
-2017-10-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CRC32.hpp, src/SpecialManager.hpp, src/Subfont.hpp, src/XMLNode.hpp:
- use delete/default to remove/implement constructors
-
- * src/XMLNode.cpp, src/XMLNode.hpp:
- added move constructor to XMLElementNode
-
- * src/Subfont.cpp, src/Subfont.hpp, src/utility.hpp:
- removed stream-based constructor of SubfontException
-
-2017-09-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/PapersizeSpecialHandler.cpp,
- src/PapersizeSpecialHandler.hpp, src/PdfSpecialHandler.cpp,
- src/PdfSpecialHandler.hpp, src/SpecialManager.cpp,
- src/SpecialManager.hpp, tests/PapersizeSpecialTest.cpp:
- added evaluation of pdf:pagesize specials
-
-2017-09-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/Length.hpp, src/PageSize.cpp, src/PageSize.hpp,
- src/utility.hpp, tests/PageSizeTest.cpp:
- use class Length in PageSize rather than plain numbers
-
- * src/BoundingBox.cpp, src/BoundingBox.hpp, src/DVIToSVG.cpp,
- src/utility.cpp, src/utility.hpp, tests/BoundingBoxTest.cpp,
- tests/UtilityTest.cpp:
- rewrite of BoundingBox::extractLengths()
-
-2017-09-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TpicSpecialHandler.cpp:
- use isxdigit() to check hex digits
-
- * src/InputReader.cpp, src/InputReader.hpp, tests/Makefile.am,
- tests/SplittedCharInputBufferTest.cpp, tests/StreamInputBufferTest.cpp,
- tests/StringMatcherTest.cpp:
- use Knuth-Morris-Pratt algorithm to find a string in a stream
-
- * libs/woff2/brotli/common/constants.h,
- libs/woff2/brotli/common/dictionary.c,
- libs/woff2/brotli/common/dictionary.h,
- libs/woff2/brotli/common/version.h,
- libs/woff2/brotli/enc/backward_references.c,
- libs/woff2/brotli/enc/backward_references_hq.c,
- libs/woff2/brotli/enc/backward_references_hq.h,
- libs/woff2/brotli/enc/backward_references_inc.h,
- libs/woff2/brotli/enc/block_splitter.c,
- libs/woff2/brotli/enc/block_splitter_inc.h,
- libs/woff2/brotli/enc/brotli_bit_stream.c,
- libs/woff2/brotli/enc/brotli_bit_stream.h,
- libs/woff2/brotli/enc/cluster_inc.h, libs/woff2/brotli/enc/command.h,
- libs/woff2/brotli/enc/compress_fragment.c,
- libs/woff2/brotli/enc/compress_fragment_two_pass.c,
- libs/woff2/brotli/enc/encode.c,
- libs/woff2/brotli/enc/find_match_length.h, libs/woff2/brotli/enc/hash.h,
- libs/woff2/brotli/enc/hash_forgetful_chain_inc.h,
- libs/woff2/brotli/enc/hash_longest_match64_inc.h,
- libs/woff2/brotli/enc/hash_longest_match_inc.h,
- libs/woff2/brotli/enc/hash_longest_match_quickly_inc.h,
- libs/woff2/brotli/enc/hash_to_binary_tree_inc.h,
- libs/woff2/brotli/enc/memory.h, libs/woff2/brotli/enc/port.h,
- libs/woff2/brotli/enc/write_bits.h,
- libs/woff2/brotli/include/brotli/decode.h,
- libs/woff2/brotli/include/brotli/encode.h:
- updated Brotli to version 1.0.1
-
-2017-09-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/SpecialManager.cpp, src/SpecialManager.hpp,
- src/utility.hpp, tests/Makefile.am, tests/SpecialManagerTest.cpp:
- use smart pointers to allocate/deallocate SpecialHandlers
-
- * src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.hpp,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.hpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.hpp,
- src/HtmlSpecialHandler.cpp, src/HtmlSpecialHandler.hpp,
- src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.hpp,
- src/PapersizeSpecialHandler.cpp, src/PapersizeSpecialHandler.hpp,
- src/PdfSpecialHandler.cpp, src/PdfSpecialHandler.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp,
- src/SpecialHandler.hpp, src/SpecialManager.cpp,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.hpp,
- tests/ColorSpecialTest.cpp, tests/PapersizeSpecialTest.cpp:
- changed return value of SpecialHandler::prefixes() to std::vector
-
- * .appveyor.yml:
- AppVeyor: updated FreeType to version 2.8.1
-
-2017-09-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/FileSystemTest.cpp:
- close streams before removing corresponding files
-
-2017-09-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/dvisvgm.cpp:
- fixed number of dashes printed by option -V1
-
-2017-09-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DependencyGraph.hpp, src/SVGTree.cpp, tests/DependencyGraphTest.cpp:
- DependencyGraph::getKeys(): return result, don't use reference parameter
-
- * src/FileFinder.cpp, src/Makefile.am:
- added missing #include; added windows.hpp to Makefile.am
-
- * tests/Makefile.am, tests/create-makefile, tests/testmain.cpp:
- define variable TEST_ARGV0 to make argv[0] of main() available in
- tests
-this is required to initialize kpathsea properly, for example
-
- * src/FileFinder.cpp, src/FileFinder.hpp, tests/CMapManagerTest.cpp,
- tests/FileFinderTest.cpp, tests/FontManagerTest.cpp,
- tests/MapLineTest.cpp, tests/SubfontTest.cpp:
- init libkpathsea correctly in tests to prevent assertion failures
-
- * libs/xxHash/xxhash.c, libs/xxHash/xxhash.h:
- updated xxHash to version 0.6.3
-
-2017-09-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/FontCacheTest.cpp, tests/Makefile.am, tests/create-makefile:
- fixed path issue in FontCacheTest
-
- * src/GFReader.cpp:
- fixed incorrect integer type in GFReader; insert CharInfos with emplace
-
- * src/MapLine.cpp, tests/MapLineTest.cpp:
- treat prefix "<<" in a mapline as "<[" (skip second char)
-
- * doc/dvisvgm.txt.in, src/dvisvgm.cpp:
- added pdftex.map to default mapfiles
-
-2017-09-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BasicDVIReader.cpp, src/BgColorSpecialHandler.cpp, src/Bitmap.cpp,
- src/BoundingBox.cpp, src/CMap.cpp, src/CMapReader.cpp, src/CRC32.cpp,
- src/Calculator.cpp, src/ColorSpecialHandler.cpp, src/DLLoader.cpp,
- src/DVIReader.cpp, src/Directory.cpp, src/EPSFile.cpp, src/EPSToSVG.cpp,
- src/EmSpecialHandler.cpp, src/EncFile.cpp, src/FileFinder.cpp,
- src/FilePath.cpp, src/Font.cpp, src/FontCache.cpp, src/FontEncoding.cpp,
- src/FontEngine.cpp, src/FontManager.cpp, src/FontMap.cpp,
- src/FontMap.hpp, src/FontMetrics.cpp, src/FontWriter.cpp,
- src/GFGlyphTracer.cpp, src/GFTracer.cpp, src/HtmlSpecialHandler.cpp,
- src/InputBuffer.cpp, src/InputReader.cpp, src/JFM.cpp, src/MapLine.cpp,
- src/Message.cpp, src/MetafontWrapper.cpp, src/MiKTeXCom.cpp,
- src/NoPsSpecialHandler.cpp, src/PSInterpreter.cpp, src/PSPattern.cpp,
- src/PSPreviewFilter.cpp, src/PageRanges.cpp, src/PageSize.cpp,
- src/PathClipper.cpp, src/PdfSpecialHandler.cpp, src/SVGTree.cpp,
- src/SpecialManager.cpp, src/StreamWriter.cpp, src/TFM.cpp,
- src/VFReader.cpp, src/XMLDocument.cpp, src/XMLNode.cpp,
- src/XMLString.cpp, src/dvisvgm.cpp:
- removed redundant #includes of config.h
-
- * src/DLLoader.hpp, src/Directory.cpp, src/Directory.hpp,
- src/FileSystem.cpp, src/MiKTeXCom.hpp, src/Process.cpp, src/Terminal.cpp,
- src/windows.hpp:
- disable macros min/max defined in windows.h
-
- * src/CLCommandLine.cpp, src/CMapManager.cpp, src/CMapManager.hpp,
- src/Calculator.cpp, src/Calculator.hpp, src/DVIToSVG.cpp,
- src/DVIToSVGActions.hpp, src/DependencyGraph.hpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.hpp,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.hpp, src/FileFinder.cpp,
- src/Font.cpp, src/Font.hpp, src/FontCache.hpp, src/FontEncoding.cpp,
- src/FontManager.cpp, src/FontManager.hpp, src/FontMap.hpp,
- src/GFReader.hpp, src/HtmlSpecialHandler.cpp, src/HtmlSpecialHandler.hpp,
- src/InputReader.cpp, src/InputReader.hpp, src/Message.cpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/SVGTree.cpp,
- src/SVGTree.hpp, src/SpecialManager.hpp, src/Subfont.cpp,
- src/Subfont.hpp, tests/StreamInputBufferTest.cpp:
- replaced std::map with std::unordered_map where possible to increase
- performance
-
-2017-09-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/DvisvgmSpecialTest.cpp:
- replaced constexpr with const to make clang happy
-
- * doc/dvisvgm.txt.in, src/DvisvgmSpecialHandler.cpp,
- tests/DvisvgmSpecialTest.cpp:
- allow all common length units in dvisvgm specials
-
-2017-08-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/AGLTable.hpp, src/CMapReader.cpp, src/Color.cpp,
- src/CommandLine.hpp, src/FontWriter.cpp, tests/genhashcheck.py:
- use list initialization on constant std::arrays
-
- * tests/MapLineTest.cpp:
- added braces to prevent compiler warnings
-
-2017-08-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMapManager.cpp, src/DvisvgmSpecialHandler.cpp, src/Font.cpp,
- src/Ghostscript.cpp, src/PsSpecialHandler.cpp, src/dvisvgm.cpp,
- tests/DvisvgmSpecialTest.cpp:
- use range-based for to iterate over a fixed sequence of items
-
-2017-08-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * m4/ax_code_coverage.m4:
- updated ax_code_coverage.m4 to version 25
-
-2017-08-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- AppVeyor: updated potrace to version 1.15
-
-2017-08-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/src/font.cc, libs/woff2/src/normalize.cc,
- libs/woff2/src/port.h, libs/woff2/src/store_bytes.h,
- libs/woff2/src/woff2_common.cc, libs/woff2/src/woff2_enc.cc:
- updated woff2 to https://github.com/google/woff2/commits/2e09253
-
-2017-06-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml:
- AppVeyor: changed build image to VS 2017; updated FreeType to 2.8
-
-2017-06-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- psfile: fixed sign of y coordinates
-
-2017-06-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.hpp:
- use bp units for line width and miter limit
-
-2017-06-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/EPSToSVG.cpp:
- remove redundant clipPath elements also when converting EPS files
-
-2017-05-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPath.hpp:
- replaced vector with deque in class GraphicsPath
-due to cheaper front
- insertions/deletions
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp:
- manage memory of ClippingStack with shared pointers
-- automatically
- deletes unreferenced path objects
-- avoids keeping popped (and no longer
- required) paths in the pool vector
-
-2017-05-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Pair.hpp, tests/PairTest.cpp:
- added abs() and negation operator to class Pair
-
- * src/Matrix.hpp, src/PsSpecialHandler.cpp:
- respect transformation of PS state in computation of psfile position
- (fixes #70)
-
- * src/FileFinder.cpp, src/PsSpecialHandler.cpp:
- lookup psfile in texmf tree if it's not present in cwd (fixes #69)
-
-2017-05-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/FontCacheTest.cpp, tests/Makefile.am, tests/create-makefile:
- FontCacheTest: write test output to $builddir/data
-$srcdir/data may be
- read-only so that the tests fail unintentionally
-
-2017-05-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/brotli/LICENSE, libs/woff2/brotli/Makefile.am,
- libs/woff2/brotli/common/constants.h,
- libs/woff2/brotli/common/dictionary.c,
- libs/woff2/brotli/common/dictionary.h,
- libs/woff2/brotli/common/version.h,
- libs/woff2/brotli/enc/backward_references.c,
- libs/woff2/brotli/enc/backward_references.h,
- libs/woff2/brotli/enc/backward_references_hq.c,
- libs/woff2/brotli/enc/backward_references_hq.h,
- libs/woff2/brotli/enc/backward_references_inc.h,
- libs/woff2/brotli/enc/block_splitter_inc.h,
- libs/woff2/brotli/enc/command.h,
- libs/woff2/brotli/enc/compress_fragment.c,
- libs/woff2/brotli/enc/compress_fragment.h,
- libs/woff2/brotli/enc/compress_fragment_two_pass.c,
- libs/woff2/brotli/enc/compress_fragment_two_pass.h,
- libs/woff2/brotli/enc/context.h, libs/woff2/brotli/enc/dictionary_hash.c,
- libs/woff2/brotli/enc/dictionary_hash.h, libs/woff2/brotli/enc/encode.c,
- libs/woff2/brotli/enc/fast_log.h, libs/woff2/brotli/enc/hash.h,
- libs/woff2/brotli/enc/hash_forgetful_chain_inc.h,
- libs/woff2/brotli/enc/hash_longest_match64_inc.h,
- libs/woff2/brotli/enc/hash_longest_match_inc.h,
- libs/woff2/brotli/enc/hash_longest_match_quickly_inc.h,
- libs/woff2/brotli/enc/hash_to_binary_tree_inc.h,
- libs/woff2/brotli/enc/histogram.c, libs/woff2/brotli/enc/literal_cost.c,
- libs/woff2/brotli/enc/memory.h, libs/woff2/brotli/enc/metablock.c,
- libs/woff2/brotli/enc/metablock.h, libs/woff2/brotli/enc/quality.h,
- libs/woff2/brotli/enc/static_dict.c, libs/woff2/brotli/enc/static_dict.h,
- libs/woff2/brotli/include/brotli/decode.h,
- libs/woff2/brotli/include/brotli/encode.h,
- libs/woff2/brotli/include/brotli/port.h,
- libs/woff2/brotli/include/brotli/types.h:
- updated brotli to version 0.6.0
-
-2017-05-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Process.cpp:
- close pipe if fork() fails
-
-2017-05-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/SignalHandler.cpp, src/SignalHandler.hpp:
- use sigaction() rather than signal() if possible
-
- * src/Process.cpp, src/Process.hpp:
- refactored Process class
-- use separate class to encapsulate
- system-dependent stuff and to ensure
- proper termination in case of
- signals or errors
-- prevent blocking if subprocess doesn't write anything
- to stdout/stderr
-
-2017-04-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Process.cpp:
- quit Process::run() if child process terminated unexpectedly (fixes #68)
-
-2017-04-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/Makefile.am, tests/create-makefile:
- added the FontWriter dependencies to the tests
-
-2017-04-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.cpp, src/Color.hpp, src/PSPattern.cpp,
- tests/ColorSpecialTest.cpp:
- avoid implicit conversion of Color object to RGB integer
-
- * src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.hpp,
- tests/Makefile.am, tests/TpicSpecialTest.cpp:
- improved the TPIC special handler and added tests for it
-
- * src/TpicSpecialHandler.cpp, tests/TpicSpecialTest.cpp:
- added evaluation of TPIC's 'tx' special command
-
-2017-04-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BasicDVIReader.hpp, src/BgColorSpecialHandler.hpp,
- src/CLCommandLine.hpp, src/CMapManager.hpp, src/DVIToSVGActions.hpp,
- src/DependencyGraph.hpp, src/DvisvgmSpecialHandler.hpp, src/FilePath.hpp,
- src/Font.hpp, src/FontCache.cpp, src/FontCache.hpp, src/FontEngine.cpp,
- src/FontManager.hpp, src/Ghostscript.hpp, src/Glyph.hpp,
- src/GraphicsPath.hpp, src/HtmlSpecialHandler.hpp, src/NumericRanges.hpp,
- src/PapersizeSpecialHandler.cpp, src/PapersizeSpecialHandler.hpp,
- src/PathClipper.cpp, src/PathClipper.hpp, src/PsSpecialHandler.hpp,
- src/RangeMap.hpp, src/SVGCharPathHandler.hpp, src/ShadingPatch.hpp,
- src/SpecialManager.hpp, src/Subfont.hpp, src/VFReader.hpp,
- src/XMLNode.cpp, src/XMLNode.hpp, src/dvisvgm.cpp:
- replaced typedefs with 'using' statements
-
-2017-04-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Ghostscript.cpp:
- simplify code for looking up libgs (closes #66)
-
-2017-04-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DLLoader.cpp, src/DLLoader.hpp:
- added DLLoader::loadLibrary() to assign a different library
-
- * src/DLLoader.cpp, src/DLLoader.hpp, src/Ghostscript.cpp:
- replaced c-string parameters of DLLoader() and loadLibrary() with
- std::string
-
-2017-04-13 Toby Fleming <tobywf@users.noreply.github.com>
-
- * src/Ghostscript.cpp:
- Auto-detect ghostscript dynamic library on macOS
-
-2017-03-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * m4/ax_code_coverage.m4, m4/ax_cxx_compile_stdcxx.m4:
- updated m4 scripts
-
-2017-03-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp, tests/FileFinderTest.cpp:
- fixed handling of absolute additional directories in FileFinder
-
- * tests/FilePathTest.cpp, tests/FontCacheTest.cpp,
- tests/SVGOutputTest.cpp:
- tests: minor path improvements
-
-2017-03-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/src/normalize.cc, libs/woff2/src/woff2_enc.cc:
- woff2: removed unused variables
-
- * src/Makefile.am, src/dvisvgm.cpp:
- improved generation of list showing the library versions
-
- * src/Color.cpp, src/FilePath.cpp, src/FontWriter.cpp, src/PageSize.cpp,
- src/dvisvgm.cpp, src/utility.cpp, src/utility.hpp, tests/UtilityTest.cpp:
- removed side-effect from util::to_lower(); returns new modified string
- instead
-
-2017-03-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/ff-woff/fontforge/nowakowskittfinstr.c:
- ff-woff: removed redundant variables
-
- * libs/woff2/Makefile.am, libs/woff2/brotli/Makefile.am,
- libs/woff2/brotli/common/constants.h,
- libs/woff2/brotli/common/dictionary.c,
- libs/woff2/brotli/common/dictionary.h,
- libs/woff2/brotli/common/version.h,
- libs/woff2/brotli/enc/backward_references.c,
- libs/woff2/brotli/enc/backward_references.cc,
- libs/woff2/brotli/enc/backward_references.h,
- libs/woff2/brotli/enc/backward_references_inc.h,
- libs/woff2/brotli/enc/bit_cost.c, libs/woff2/brotli/enc/bit_cost.h,
- libs/woff2/brotli/enc/bit_cost_inc.h,
- libs/woff2/brotli/enc/block_encoder_inc.h,
- libs/woff2/brotli/enc/block_splitter.c,
- libs/woff2/brotli/enc/block_splitter.cc,
- libs/woff2/brotli/enc/block_splitter.h,
- libs/woff2/brotli/enc/block_splitter_inc.h,
- libs/woff2/brotli/enc/brotli_bit_stream.c,
- libs/woff2/brotli/enc/brotli_bit_stream.cc,
- libs/woff2/brotli/enc/brotli_bit_stream.h,
- libs/woff2/brotli/enc/cluster.c, libs/woff2/brotli/enc/cluster.h,
- libs/woff2/brotli/enc/cluster_inc.h, libs/woff2/brotli/enc/command.h,
- libs/woff2/brotli/enc/compress_fragment.c,
- libs/woff2/brotli/enc/compress_fragment.cc,
- libs/woff2/brotli/enc/compress_fragment.h,
- libs/woff2/brotli/enc/compress_fragment_two_pass.c,
- libs/woff2/brotli/enc/compress_fragment_two_pass.cc,
- libs/woff2/brotli/enc/compress_fragment_two_pass.h,
- libs/woff2/brotli/enc/compressor.h, libs/woff2/brotli/enc/context.h,
- libs/woff2/brotli/enc/dictionary.cc, libs/woff2/brotli/enc/dictionary.h,
- libs/woff2/brotli/enc/dictionary_hash.h, libs/woff2/brotli/enc/encode.c,
- libs/woff2/brotli/enc/encode.cc, libs/woff2/brotli/enc/encode.h,
- libs/woff2/brotli/enc/encode_parallel.cc,
- libs/woff2/brotli/enc/encode_parallel.h,
- libs/woff2/brotli/enc/entropy_encode.c,
- libs/woff2/brotli/enc/entropy_encode.cc,
- libs/woff2/brotli/enc/entropy_encode.h,
- libs/woff2/brotli/enc/entropy_encode_static.h,
- libs/woff2/brotli/enc/fast_log.h,
- libs/woff2/brotli/enc/find_match_length.h, libs/woff2/brotli/enc/hash.h,
- libs/woff2/brotli/enc/hash_forgetful_chain_inc.h,
- libs/woff2/brotli/enc/hash_longest_match_inc.h,
- libs/woff2/brotli/enc/hash_longest_match_quickly_inc.h,
- libs/woff2/brotli/enc/histogram.c, libs/woff2/brotli/enc/histogram.cc,
- libs/woff2/brotli/enc/histogram.h, libs/woff2/brotli/enc/histogram_inc.h,
- libs/woff2/brotli/enc/literal_cost.c,
- libs/woff2/brotli/enc/literal_cost.cc,
- libs/woff2/brotli/enc/literal_cost.h, libs/woff2/brotli/enc/memory.c,
- libs/woff2/brotli/enc/memory.h, libs/woff2/brotli/enc/metablock.c,
- libs/woff2/brotli/enc/metablock.cc, libs/woff2/brotli/enc/metablock.h,
- libs/woff2/brotli/enc/metablock_inc.h, libs/woff2/brotli/enc/port.h,
- libs/woff2/brotli/enc/prefix.h, libs/woff2/brotli/enc/quality.h,
- libs/woff2/brotli/enc/ringbuffer.h, libs/woff2/brotli/enc/static_dict.c,
- libs/woff2/brotli/enc/static_dict.cc,
- libs/woff2/brotli/enc/static_dict.h,
- libs/woff2/brotli/enc/static_dict_lut.h,
- libs/woff2/brotli/enc/streams.cc, libs/woff2/brotli/enc/streams.h,
- libs/woff2/brotli/enc/transform.h, libs/woff2/brotli/enc/types.h,
- libs/woff2/brotli/enc/utf8_util.c, libs/woff2/brotli/enc/utf8_util.cc,
- libs/woff2/brotli/enc/utf8_util.h, libs/woff2/brotli/enc/write_bits.h,
- libs/woff2/brotli/include/brotli/decode.h,
- libs/woff2/brotli/include/brotli/encode.h,
- libs/woff2/brotli/include/brotli/port.h,
- libs/woff2/brotli/include/brotli/types.h, libs/woff2/src/buffer.h,
- libs/woff2/src/font.cc, libs/woff2/src/glyph.cc,
- libs/woff2/src/variable_length.cc, libs/woff2/src/woff2_dec.h,
- libs/woff2/src/woff2_enc.cc, src/Makefile.am:
- updated woff2 to https://github.com/google/woff2/commit/68e9ab5
-
-2017-02-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/BezierTest.cpp, tests/BitmapTest.cpp, tests/BoundingBoxTest.cpp,
- tests/CMapManagerTest.cpp, tests/CMapReaderTest.cpp, tests/CMapTest.cpp,
- tests/CRC32Test.cpp, tests/ColorTest.cpp, tests/CommandLineTest.cpp,
- tests/DirectoryTest.cpp, tests/FileSystemTest.cpp,
- tests/GraphicsPathTest.cpp, tests/JFMReaderTest.cpp,
- tests/MatrixTest.cpp, tests/PageRagesTest.cpp, tests/RangeMapTest.cpp,
- tests/SVGOutputTest.cpp, tests/SplittedCharInputBufferTest.cpp,
- tests/StreamInputBufferTest.cpp, tests/StreamReaderTest.cpp,
- tests/StreamWriterTest.cpp, tests/SubfontTest.cpp,
- tests/TFMReaderTest.cpp, tests/ToUnicodeMapTest.cpp,
- tests/UnicodeTest.cpp, tests/VectorIteratorTest.cpp,
- tests/XMLNodeTest.cpp:
- fixed signed/unsigned warnings in tests
-
-2017-02-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/woff2/brotli/tools/bro.cc, libs/woff2/brotli/tools/rfc-format.py,
- libs/woff2/brotli/tools/version.h:
- removed redundant files
-
-2017-02-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.1.3
-
- * NEWS:
- updated NEWS
-
-2017-02-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/ff-woff/inc/ffintl.h:
- ff-woff: removed redundant defines and prototypes to fix build failure
- on Solaris
-
- * tests/genhashcheck.py:
- reformatted genhashcheck
-
- * tests/BezierTest.cpp, tests/CRC32Test.cpp, tests/ToUnicodeMapTest.cpp,
- tests/UnicodeTest.cpp, tests/VectorIteratorTest.cpp,
- tests/XMLNodeTest.cpp:
- minor additions to some tests
-
-2017-02-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, libs/ff-woff/Makefile.am,
- libs/ff-woff/fontforge/fflocale.c, libs/ff-woff/fontforge/fflocale.h,
- libs/ff-woff/fontforge/sfd.c, libs/ff-woff/fontforge/splinefont.h,
- libs/ff-woff/fontforge/tottf.c:
- ff-woff: only call uselocale() if present, use setlocale() otherwise
-
-2017-02-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md:
- added information on required C++11 compiler to README
-
- * tests/genhashcheck.py:
- made genhashcheck.py compatible with Python 3 (plus few minor changes)
-
-2017-02-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/MapLine.cpp, src/MapLine.hpp, tests/ColorSpecialTest.cpp,
- tests/FontMapTest.cpp, tests/LengthTest.cpp, tests/MapLineTest.cpp:
- improved a couple of test cases
-
- * src/Color.cpp, src/Matrix.cpp, src/TpicSpecialHandler.cpp,
- src/utility.hpp:
- replaced non-standard constant M_PI with own definition
-
- * src/Color.cpp, src/Matrix.cpp, src/utility.hpp:
- replaced local copies of deg2rad with global function
-
-2017-02-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * .appveyor.yml, .travis.yml, appveyor.yml:
- exclude branch 'tmp' from CI builds
-
-2017-02-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/ff-woff/Makefile.am, libs/ff-woff/fontforge/fontforge.h,
- libs/ff-woff/inc/ffintl.h, libs/ff-woff/inc/intl.h:
- don't try to #include libintl.h
-
- * .travis.yml:
- Travis: enable clang builds again
-
- * NEWS:
- updated NEWS
-
-2017-02-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Calculator.cpp:
- fixed number parsing in Calculator class (failed on Mac)
-
- * tests/StreamReaderTest.cpp:
- clear istream flags to prevent failure of StreamReaderTest
-
- * libs/xxHash/xxhash.c, libs/xxHash/xxhash.h:
- removed 'restrict' keyword from xxHash
-
- * .travis.yml, appveyor.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.1.2
-
-2017-02-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * .gitignore, .travis.yml, Makefile.am, configure.ac, tests/Makefile.am,
- tests/create-makefile, tests/gtest/LICENSE,
- tests/gtest/include/gtest/gtest-death-test.h,
- tests/gtest/include/gtest/gtest-message.h,
- tests/gtest/include/gtest/gtest-param-test.h,
- tests/gtest/include/gtest/gtest-printers.h,
- tests/gtest/include/gtest/gtest-spi.h,
- tests/gtest/include/gtest/gtest-test-part.h,
- tests/gtest/include/gtest/gtest-typed-test.h,
- tests/gtest/include/gtest/gtest.h,
- tests/gtest/include/gtest/gtest_pred_impl.h,
- tests/gtest/include/gtest/gtest_prod.h,
- tests/gtest/include/gtest/internal/custom/gtest-port.h,
- tests/gtest/include/gtest/internal/custom/gtest-printers.h,
- tests/gtest/include/gtest/internal/custom/gtest.h,
- tests/gtest/include/gtest/internal/gtest-death-test-internal.h,
- tests/gtest/include/gtest/internal/gtest-filepath.h,
- tests/gtest/include/gtest/internal/gtest-internal.h,
- tests/gtest/include/gtest/internal/gtest-linked_ptr.h,
- tests/gtest/include/gtest/internal/gtest-param-util-generated.h,
- tests/gtest/include/gtest/internal/gtest-param-util.h,
- tests/gtest/include/gtest/internal/gtest-port-arch.h,
- tests/gtest/include/gtest/internal/gtest-port.h,
- tests/gtest/include/gtest/internal/gtest-string.h,
- tests/gtest/include/gtest/internal/gtest-tuple.h,
- tests/gtest/include/gtest/internal/gtest-type-util.h,
- tests/gtest/src/gtest-all.cc, tests/gtest/src/gtest-death-test.cc,
- tests/gtest/src/gtest-filepath.cc, tests/gtest/src/gtest-internal-inl.h,
- tests/gtest/src/gtest-port.cc, tests/gtest/src/gtest-printers.cc,
- tests/gtest/src/gtest-test-part.cc, tests/gtest/src/gtest-typed-test.cc,
- tests/gtest/src/gtest.cc, tests/gtest/src/gtest_main.cc:
- bundle gtest with the sources to simplify building and running the tests
-
- * src/Directory.cpp, tests/DirectoryTest.cpp:
- prevent calling closedir() with null pointer argument
-
- * src/VectorStream.hpp:
- don't access first vector component if the vector is empty
-
- * src/GFReader.cpp, src/StreamReader.cpp, tests/GFReaderTest.cpp,
- tests/StreamReaderTest.cpp:
- improved implementation of getString()
-
- * src/CLCommandLine.cpp:
- reset status flags before changing the sstream source
-
-2017-02-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/CommandLineTest.cpp:
- removed redundant function
-
- * src/XMLString.cpp, tests/EmSpecialTest.cpp, tests/GFGlyphTracerTest.cpp:
- avoid negative zeros (-0) in SVG output
-
- * src/BoundingBox.cpp:
- fixed memory issue in BoundingBox class
-
- * src/CMapReader.cpp, src/InputReader.cpp, src/InputReader.hpp,
- tests/SplittedCharInputBufferTest.cpp, tests/StreamInputBufferTest.cpp:
- fixed potential number overflow issue
-
- * tests/CMapReaderTest.cpp:
- fixed memory leak in CMapReaderTest
-
- * src/Subfont.cpp:
- fixed memory leak in Subfont class
-
- * src/XMLNode.cpp:
- fixed memory leak in class XMLElementNode
-
-2017-02-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac:
- replaced deprecated AC_CONFIG_HEADER
-
- * NEWS:
- updated NEWS
-
- * libs/clipper/License.txt:
- fixed line endings of clipper/License.txt
-
-2017-02-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, appveyor.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.1.1
-
-2017-02-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/FontCacheTest.cpp:
- fixed FontCacheTest ('make distcheck' failed)
-
-2017-02-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.cpp, src/Color.hpp, src/VectorIterator.hpp,
- tests/ColorTest.cpp, tests/VectorIteratorTest.cpp:
- increased coverage of ColorTest
-
- * configure.ac, libs/ff-woff/fontforge/splinefont.h:
- include xlocale.h in ff-woff if available (fixes #65)
-
-2017-02-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Makefile.am:
- removed spurious colon from src/Makefile.am
-
- * configure.ac:
- allow C++11 language extensions if necessary
-
- * src/Font.cpp, src/Font.hpp:
- report Metafont failures only once for each font
-
-2017-01-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md:
- README: updated links, added release badge
-
-2017-01-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/FontManagerTest.cpp, tests/data/cmr10.pfb:
- prevent FontManagerTest to fail due to missing font files
-
-2017-01-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Matrix.cpp, tests/MatrixTest.cpp:
- minor changes of matrix class; improved MatrixTest
-
-2017-01-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PapersizeSpecialHandler.cpp, src/PapersizeSpecialHandler.hpp,
- tests/Makefile.am, tests/PapersizeSpecialTest.cpp, tests/create-makefile:
- added PapersizeSpecialTest
-
- * tests/CMapManagerTest.cpp, tests/CMapReaderTest.cpp,
- tests/DvisvgmSpecialTest.cpp, tests/EmSpecialTest.cpp,
- tests/FileFinderTest.cpp, tests/FontManagerTest.cpp,
- tests/JFMReaderTest.cpp, tests/MapLineTest.cpp, tests/SubfontTest.cpp,
- tests/TFMReaderTest.cpp, tests/TensorProductPatchTest.cpp:
- added 'override' specifier to gtest methods
-
- * src/FontCache.cpp, src/FontCache.hpp, tests/FontCacheTest.cpp,
- tests/Makefile.am:
- added FontCacheTest
-
- * tests/Makefile.am, tests/create-makefile:
- removed redundant linker flag from tests
-
- * m4/ax_code_coverage.m4, m4/ax_cxx_compile_stdcxx.m4:
- updated m4 scripts to latest versions
-
-2017-01-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * README.md, appveyor.yml:
- added basic appveyor.yml
-
-2017-01-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/ff-woff/Makefile.am, libs/ff-woff/fontforge/fontforge.h,
- libs/ff-woff/fontforge/tmpfile2.cpp, libs/ff-woff/fontforge/utils.c,
- src/dvisvgm.cpp:
- improved error handling of tmpfile2() in ff-woff
-The FontForge library
- doesn't check the return value of tmpfile() which may lead
-to segfaults.
- The replacement function tmpfile2() throws an exception or calls
-exit()
- so that dvisvgm can terminate more cleanly.
-
-2017-01-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BoundingBox.cpp, src/Color.cpp, src/DVIToSVGActions.cpp,
- src/FilePath.cpp, src/FileSystem.cpp, src/FontWriter.cpp,
- src/Makefile.am, src/PageSize.cpp, src/SVGOutput.cpp, src/utility.cpp,
- src/utility.hpp, tests/Makefile.am, tests/UtilityTest.cpp:
- moved common utility functions to separate compilation unit and
- namespace
-
- * src/DVIToSVG.cpp, src/DVIToSVGActions.cpp, src/EPSToSVG.cpp:
- get program name and version from version.hpp, avoid using macros from
- config.h
-
- * .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.1
-
- * NEWS:
- updated NEWS
-
-2017-01-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * libs/ff-woff/fontforge/utils.c, src/FileSystem.cpp, src/FileSystem.hpp,
- src/Font.cpp, src/FontWriter.cpp, src/GlyphTracerMessages.hpp,
- src/MetafontWrapper.cpp, src/MetafontWrapper.hpp, src/Process.cpp,
- src/Process.hpp, src/SVGOutput.cpp, src/SVGOutput.hpp:
- create temp files in the system's temp folder rather than in cwd (closes
- #63)
-
- * doc/dvisvgm.txt.in, src/CommandLine.hpp, src/dvisvgm.cpp,
- src/options.xml:
- added option --tmpdir to select a different temp folder
-
- * src/FontWriter.cpp, src/FontWriter.hpp:
- print error message if FontWriter can't write temporary files
-
-2017-01-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FilePath.cpp, src/FilePath.hpp, tests/FilePathTest.cpp,
- tests/SVGOutputTest.cpp:
- retain letter case of filenames (Windows)
-
- * src/DVIToSVG.cpp, src/EPSToSVG.cpp, src/SVGTree.hpp:
- print warning message if output file could not be written
-
- * tests/GhostscriptTest.cpp:
- disable GS banner in GhostscriptTest
-
-2017-01-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp, src/dvisvgm.cpp:
- added missing newlines in messages; fixed typo
-
-2017-01-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/AGLTable.hpp:
- updated AGL table and removed colliding codepoints (closes #64)
-
-2017-01-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, README, README.md, configure.ac, doc/Makefile.am,
- doc/conf-dblatex-man.xsl, doc/conf-dblatex-pdf.xsl, doc/db2html.xsl,
- doc/dvisvgm.txt.in, doc/tweak-db-article.xsl, doc/tweak-dblatex-pdf.xsl,
- libs/Makefile.am, src/AGLTable.hpp, src/BasicDVIReader.cpp,
- src/BasicDVIReader.hpp, src/Bezier.cpp, src/Bezier.hpp,
- src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.hpp,
- src/Bitmap.cpp, src/Bitmap.hpp, src/BoundingBox.cpp, src/BoundingBox.hpp,
- src/CLCommandLine.cpp, src/CLCommandLine.hpp, src/CLOption.hpp,
- src/CMap.cpp, src/CMap.hpp, src/CMapManager.cpp, src/CMapManager.hpp,
- src/CMapReader.cpp, src/CMapReader.hpp, src/CRC32.cpp, src/CRC32.hpp,
- src/Calculator.cpp, src/Calculator.hpp, src/CharMapID.cpp,
- src/CharMapID.hpp, src/Character.hpp, src/Color.cpp, src/Color.hpp,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.hpp,
- src/CommandLine.hpp, src/DLLoader.cpp, src/DLLoader.hpp,
- src/DVIActions.hpp, src/DVIReader.cpp, src/DVIReader.hpp,
- src/DVIToSVG.cpp, src/DVIToSVG.hpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.hpp, src/DependencyGraph.hpp, src/Directory.cpp,
- src/Directory.hpp, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.hpp, src/EPSFile.cpp, src/EPSFile.hpp,
- src/EPSToSVG.cpp, src/EPSToSVG.hpp, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.hpp, src/EncFile.cpp, src/EncFile.hpp,
- src/FileFinder.cpp, src/FileFinder.hpp, src/FilePath.cpp,
- src/FilePath.hpp, src/FileSystem.cpp, src/FileSystem.hpp,
- src/FixWord.hpp, src/Font.cpp, src/Font.hpp, src/FontCache.cpp,
- src/FontCache.hpp, src/FontEncoding.cpp, src/FontEncoding.hpp,
- src/FontEngine.cpp, src/FontEngine.hpp, src/FontManager.cpp,
- src/FontManager.hpp, src/FontMap.cpp, src/FontMap.hpp,
- src/FontMetrics.cpp, src/FontMetrics.hpp, src/FontStyle.hpp,
- src/FontWriter.cpp, src/FontWriter.hpp, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.hpp, src/GFReader.cpp, src/GFReader.hpp,
- src/GFTracer.cpp, src/GFTracer.hpp, src/Ghostscript.cpp,
- src/Ghostscript.hpp, src/Glyph.hpp, src/GlyphTracerMessages.hpp,
- src/GraphicsPath.hpp, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.hpp, src/InputBuffer.cpp, src/InputBuffer.hpp,
- src/InputReader.cpp, src/InputReader.hpp, src/JFM.cpp, src/JFM.hpp,
- src/Length.cpp, src/Length.hpp, src/Makefile.am, src/MapLine.cpp,
- src/MapLine.hpp, src/Matrix.cpp, src/Matrix.hpp, src/Message.cpp,
- src/Message.hpp, src/MessageException.hpp, src/MetafontWrapper.cpp,
- src/MetafontWrapper.hpp, src/MiKTeXCom.cpp, src/MiKTeXCom.hpp,
- src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.hpp,
- src/NumericRanges.hpp, src/PSFilter.hpp, src/PSInterpreter.cpp,
- src/PSInterpreter.hpp, src/PSPattern.cpp, src/PSPattern.hpp,
- src/PSPreviewFilter.cpp, src/PSPreviewFilter.hpp, src/PageRanges.cpp,
- src/PageRanges.hpp, src/PageSize.cpp, src/PageSize.hpp, src/Pair.hpp,
- src/PapersizeSpecialHandler.cpp, src/PapersizeSpecialHandler.hpp,
- src/PathClipper.cpp, src/PathClipper.hpp, src/PdfSpecialHandler.cpp,
- src/PdfSpecialHandler.hpp, src/PreScanDVIReader.cpp,
- src/PreScanDVIReader.hpp, src/Process.cpp, src/Process.hpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.hpp, src/RangeMap.cpp,
- src/RangeMap.hpp, src/SVGCharHandler.cpp, src/SVGCharHandler.hpp,
- src/SVGCharHandlerFactory.cpp, src/SVGCharHandlerFactory.hpp,
- src/SVGCharPathHandler.cpp, src/SVGCharPathHandler.hpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGCharTspanTextHandler.hpp,
- src/SVGOutput.cpp, src/SVGOutput.hpp, src/SVGSingleCharTextHandler.cpp,
- src/SVGSingleCharTextHandler.hpp, src/SVGTree.cpp, src/SVGTree.hpp,
- src/ShadingPatch.cpp, src/ShadingPatch.hpp, src/SignalHandler.cpp,
- src/SignalHandler.hpp, src/SpecialActions.hpp, src/SpecialHandler.hpp,
- src/SpecialManager.cpp, src/SpecialManager.hpp, src/StreamReader.cpp,
- src/StreamReader.hpp, src/StreamWriter.cpp, src/StreamWriter.hpp,
- src/Subfont.cpp, src/Subfont.hpp, src/System.cpp, src/System.hpp,
- src/TFM.cpp, src/TFM.hpp, src/TensorProductPatch.cpp,
- src/TensorProductPatch.hpp, src/Terminal.cpp, src/Terminal.hpp,
- src/ToUnicodeMap.cpp, src/ToUnicodeMap.hpp, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.hpp, src/TriangularPatch.cpp,
- src/TriangularPatch.hpp, src/Unicode.cpp, src/Unicode.hpp,
- src/VFActions.hpp, src/VFReader.cpp, src/VFReader.hpp,
- src/VectorIterator.hpp, src/VectorStream.hpp, src/XMLDocument.cpp,
- src/XMLDocument.hpp, src/XMLNode.cpp, src/XMLNode.hpp, src/XMLString.cpp,
- src/XMLString.hpp, src/ZLibOutputStream.hpp, src/dvisvgm.cpp,
- src/ffwrapper.c, src/ffwrapper.h, src/macros.hpp, src/options.dtd,
- src/options.xml, src/psdefs.cpp, src/version.hpp, src/version.hpp.in,
- tests/BezierTest.cpp, tests/BitmapTest.cpp, tests/BoundingBoxTest.cpp,
- tests/CMapManagerTest.cpp, tests/CMapReaderTest.cpp, tests/CMapTest.cpp,
- tests/CRC32Test.cpp, tests/CalculatorTest.cpp,
- tests/ColorSpecialTest.cpp, tests/ColorTest.cpp,
- tests/CommandLineTest.cpp, tests/DependencyGraphTest.cpp,
- tests/DirectoryTest.cpp, tests/DvisvgmSpecialTest.cpp,
- tests/EmSpecialTest.cpp, tests/FileFinderTest.cpp,
- tests/FilePathTest.cpp, tests/FileSystemTest.cpp,
- tests/FontManagerTest.cpp, tests/FontMapTest.cpp,
- tests/GFGlyphTracerTest.cpp, tests/GFReaderTest.cpp,
- tests/GraphicsPathTest.cpp, tests/JFMReaderTest.cpp,
- tests/LengthTest.cpp, tests/Makefile.am, tests/MapLineTest.cpp,
- tests/MatrixTest.cpp, tests/MessageExceptionTest.cpp,
- tests/PSInterpreterTest.cpp, tests/PageRagesTest.cpp,
- tests/PageSizeTest.cpp, tests/PairTest.cpp, tests/RangeMapTest.cpp,
- tests/SVGOutputTest.cpp, tests/ShadingPatchTest.cpp,
- tests/SplittedCharInputBufferTest.cpp, tests/StreamInputBufferTest.cpp,
- tests/StreamReaderTest.cpp, tests/StreamWriterTest.cpp,
- tests/SubfontTest.cpp, tests/TFMReaderTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/ToUnicodeMapTest.cpp,
- tests/TriangularPatchTest.cpp, tests/UnicodeTest.cpp,
- tests/VectorIteratorTest.cpp, tests/VectorStreamTest.cpp,
- tests/XMLNodeTest.cpp, tests/XMLStringTest.cpp, tests/check-conv,
- tests/create-makefile, tests/data/Makefile.am, tests/genhashcheck.py,
- tests/normalize.xsl:
- updated year in copyright statements to 2017
-
-2016-12-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am, doc/conf-dblatex-pdf.xsl, doc/db2html.xsl,
- doc/dvisvgm.txt.in, doc/dvisvgm.xpr, doc/tweak-db-article.xsl:
- manpage: minor refactorings of the XSLT scripts; added generation of
- epub
-
-2016-12-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/conf-dblatex-man.xsl, doc/conf-dblatex-pdf.xsl, doc/db2html.xsl,
- doc/tweak-dblatex-pdf.xsl:
- added missing email address to copyright headers
-
- * doc/conf-dblatex-man.xsl, doc/conf-dblatex-pdf.xsl,
- doc/tweak-dblatex-pdf.xsl:
- indent with tabs rather than spaces
-
- * doc/db2html.xsl:
- manpage: replace icon of Author section
-
- * doc/conf-dblatex-pdf.xsl, doc/tweak-dblatex-pdf.xsl:
- manpage: use mixed case titles in pdf output
-
-2016-12-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/db2html.xsl, doc/dvisvgm.xpr:
- manpage: preserve whitespace in list of supported specials
-
-2016-11-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac:
- ensure compiling C files with --std=c99
-
-2016-11-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS:
- updated NEWS
-
-2016-11-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- minor changes in manpage
-
- * README, README.md, configure.ac, libs/Makefile.am, libs/ff-woff/LICENSE,
- libs/ff-woff/Makefile.am, libs/ff-woff/README.md,
- libs/ff-woff/fontforge/PfEd.h, libs/ff-woff/fontforge/alphabet.c,
- libs/ff-woff/fontforge/asmfpst.c, libs/ff-woff/fontforge/autohint.c,
- libs/ff-woff/fontforge/char.c, libs/ff-woff/fontforge/cjk.c,
- libs/ff-woff/fontforge/configure-fontforge.h,
- libs/ff-woff/fontforge/cvundoes.c, libs/ff-woff/fontforge/dumppfa.c,
- libs/ff-woff/fontforge/edgelist.h, libs/ff-woff/fontforge/edgelist2.h,
- libs/ff-woff/fontforge/encoding.c, libs/ff-woff/fontforge/encoding.h,
- libs/ff-woff/fontforge/fontforge-config.h,
- libs/ff-woff/fontforge/fontforge.h, libs/ff-woff/fontforge/fontforgevw.h,
- libs/ff-woff/fontforge/fvfonts.c, libs/ff-woff/fontforge/gwwiconv.c,
- libs/ff-woff/fontforge/libffstamp.h, libs/ff-woff/fontforge/lookups.c,
- libs/ff-woff/fontforge/macbinary.c, libs/ff-woff/fontforge/macenc.c,
- libs/ff-woff/fontforge/mathconstants.c, libs/ff-woff/fontforge/memory.c,
- libs/ff-woff/fontforge/mm.c, libs/ff-woff/fontforge/namehash.h,
- libs/ff-woff/fontforge/namelist.c, libs/ff-woff/fontforge/nouiutil.c,
- libs/ff-woff/fontforge/nowakowskittfinstr.c,
- libs/ff-woff/fontforge/parsepfa.c, libs/ff-woff/fontforge/parsettf.c,
- libs/ff-woff/fontforge/parsettfatt.c, libs/ff-woff/fontforge/psfont.h,
- libs/ff-woff/fontforge/psread.c, libs/ff-woff/fontforge/pua.c,
- libs/ff-woff/fontforge/sd.h, libs/ff-woff/fontforge/sfd.c,
- libs/ff-woff/fontforge/sfd1.c, libs/ff-woff/fontforge/sfd1.h,
- libs/ff-woff/fontforge/splinechar.c, libs/ff-woff/fontforge/splinefont.c,
- libs/ff-woff/fontforge/splinefont.h,
- libs/ff-woff/fontforge/splineorder2.c,
- libs/ff-woff/fontforge/splineoverlap.c,
- libs/ff-woff/fontforge/splinerefigure.c,
- libs/ff-woff/fontforge/splinesave.c,
- libs/ff-woff/fontforge/splinesaveafm.c,
- libs/ff-woff/fontforge/splineutil.c,
- libs/ff-woff/fontforge/splineutil2.c, libs/ff-woff/fontforge/start.c,
- libs/ff-woff/fontforge/stemdb.c, libs/ff-woff/fontforge/stemdb.h,
- libs/ff-woff/fontforge/tables.h, libs/ff-woff/fontforge/tottf.c,
- libs/ff-woff/fontforge/tottfaat.c, libs/ff-woff/fontforge/tottfgpos.c,
- libs/ff-woff/fontforge/tottfvar.c, libs/ff-woff/fontforge/ttf.h,
- libs/ff-woff/fontforge/ttfinstrs.c, libs/ff-woff/fontforge/ttfinstrs.h,
- libs/ff-woff/fontforge/ttfspecial.c,
- libs/ff-woff/fontforge/uiinterface.h, libs/ff-woff/fontforge/unialt.c,
- libs/ff-woff/fontforge/ustring.c, libs/ff-woff/fontforge/utils.c,
- libs/ff-woff/fontforge/utype.c, libs/ff-woff/fontforge/woff.c,
- libs/ff-woff/inc/basics.h, libs/ff-woff/inc/chardata.h,
- libs/ff-woff/inc/charset.h, libs/ff-woff/inc/dlist.h,
- libs/ff-woff/inc/gimage.h, libs/ff-woff/inc/gnetwork.h,
- libs/ff-woff/inc/gwwiconv.h, libs/ff-woff/inc/intl.h,
- libs/ff-woff/inc/ustring.h, libs/ff-woff/inc/utype.h, src/Makefile.am:
- bundle reduced fontforge library (ff-woff)
-
- * configure.ac, libs/Makefile.am, libs/clipper/Makefile.am,
- libs/ff-woff/Makefile.am, libs/woff2/Makefile.am,
- libs/woff2/brotli/Makefile.am, libs/woff2/brotli/enc/Makefile.am,
- libs/woff2/src/Makefile.am, src/Makefile.am:
- added license files of bundled libraries; relocated Makefiles
-
- * .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.0.4
-
-2016-11-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CommandLine.hpp, src/options.xml:
- fixed a typo in the --help output
-
- * src/BasicDVIReader.cpp, src/BasicDVIReader.hpp, src/DVIReader.cpp,
- src/DVIReader.hpp:
- use const variables for DVI opcodes rather than the values directly
-
-2016-11-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontWriter.cpp:
- few cosmetic changes; added comments
-
-2016-09-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.0.3
-
- * NEWS, README, README.md:
- updated NEWS and README
-
-2016-09-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/DVIReader.hpp, src/DVIToSVG.cpp,
- src/DVIToSVG.hpp:
- dropped tracking of previous DVI state from DVIReader
-
- * src/DVIReader.cpp:
- fixed positioning of rules
-
-2016-09-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/DVIReader.hpp, src/DVIToSVG.cpp:
- fixed regression in character positioning of of virtual fonts
-
-2016-09-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp:
- fixed type regression in computation of DVI positions (closes #61)
-
- * .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.0.2
-
- * NEWS, README.md:
- updated NEWS and README
-
-2016-09-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp:
- fixed sign of character depth computed for native fonts
-
-2016-09-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.0.1
-
- * NEWS, README, README.md:
- updated NEWS and README
-
-2016-08-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md:
- added link to reduced FF library to README
-
- * doc/dvisvgm.txt.in, src/FontWriter.cpp, src/FontWriter.hpp,
- src/SVGTree.cpp, src/SVGTree.hpp, src/ffwrapper.c:
- added option to autohint fonts created by the FontForge library
-
-2016-08-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVGActions.hpp, src/FontManager.hpp, src/MetafontWrapper.hpp:
- adapted struct/class forward declarations
-
-2016-08-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp, src/FileFinder.hpp:
- removed unused variable
-
- * src/CLCommandLine.cpp:
- added missing cast to avoid compiler warning
-
- * .travis.yml, configure.ac, src/Doxyfile, src/version.hpp:
- set version to 2.0
-
- * README, README.md:
- updated README files
-
- * NEWS:
- updated NEWS
-
-2016-08-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml:
- use Ubuntu Trusty for Travis builds
-
- * .travis.yml:
- Travis: prevent rebuilding files in folder 'src' when calling 'make
- check'
-
- * src/FontWriter.cpp, src/FontWriter.hpp, src/ffwrapper.c,
- src/ffwrapper.h:
- added missing copyright headers
-
-2016-08-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, clipper/License.txt, clipper/Makefile.am,
- clipper/clipper.cpp, clipper/clipper.hpp, configure.ac, libs/Makefile.am,
- libs/clipper/License.txt, libs/clipper/Makefile.am,
- libs/clipper/clipper.cpp, libs/clipper/clipper.hpp, libs/xxHash/LICENSE,
- libs/xxHash/Makefile.am, libs/xxHash/xxhash.c, libs/xxHash/xxhash.h,
- src/Makefile.am, tests/Makefile.am, tests/create-makefile,
- xxHash/LICENSE, xxHash/Makefile.am, xxHash/xxhash.c, xxHash/xxhash.h:
- moved bundled libraries (clipper, xxHash) to subfolder 'libs'
-
- * configure.ac, doc/dvisvgm.txt.in, libs/Makefile.am, libs/woff2/LICENSE,
- libs/woff2/brotli/LICENSE, libs/woff2/brotli/enc/Makefile.am,
- libs/woff2/brotli/enc/backward_references.cc,
- libs/woff2/brotli/enc/backward_references.h,
- libs/woff2/brotli/enc/bit_cost.h,
- libs/woff2/brotli/enc/block_splitter.cc,
- libs/woff2/brotli/enc/block_splitter.h,
- libs/woff2/brotli/enc/brotli_bit_stream.cc,
- libs/woff2/brotli/enc/brotli_bit_stream.h,
- libs/woff2/brotli/enc/cluster.h, libs/woff2/brotli/enc/command.h,
- libs/woff2/brotli/enc/compress_fragment.cc,
- libs/woff2/brotli/enc/compress_fragment.h,
- libs/woff2/brotli/enc/compress_fragment_two_pass.cc,
- libs/woff2/brotli/enc/compress_fragment_two_pass.h,
- libs/woff2/brotli/enc/compressor.h, libs/woff2/brotli/enc/context.h,
- libs/woff2/brotli/enc/dictionary.cc, libs/woff2/brotli/enc/dictionary.h,
- libs/woff2/brotli/enc/dictionary_hash.h, libs/woff2/brotli/enc/encode.cc,
- libs/woff2/brotli/enc/encode.h, libs/woff2/brotli/enc/encode_parallel.cc,
- libs/woff2/brotli/enc/encode_parallel.h,
- libs/woff2/brotli/enc/entropy_encode.cc,
- libs/woff2/brotli/enc/entropy_encode.h,
- libs/woff2/brotli/enc/entropy_encode_static.h,
- libs/woff2/brotli/enc/fast_log.h,
- libs/woff2/brotli/enc/find_match_length.h, libs/woff2/brotli/enc/hash.h,
- libs/woff2/brotli/enc/histogram.cc, libs/woff2/brotli/enc/histogram.h,
- libs/woff2/brotli/enc/literal_cost.cc,
- libs/woff2/brotli/enc/literal_cost.h, libs/woff2/brotli/enc/metablock.cc,
- libs/woff2/brotli/enc/metablock.h, libs/woff2/brotli/enc/port.h,
- libs/woff2/brotli/enc/prefix.h, libs/woff2/brotli/enc/ringbuffer.h,
- libs/woff2/brotli/enc/static_dict.cc,
- libs/woff2/brotli/enc/static_dict.h,
- libs/woff2/brotli/enc/static_dict_lut.h,
- libs/woff2/brotli/enc/streams.cc, libs/woff2/brotli/enc/streams.h,
- libs/woff2/brotli/enc/transform.h, libs/woff2/brotli/enc/types.h,
- libs/woff2/brotli/enc/utf8_util.cc, libs/woff2/brotli/enc/utf8_util.h,
- libs/woff2/brotli/enc/write_bits.h, libs/woff2/brotli/tools/bro.cc,
- libs/woff2/brotli/tools/rfc-format.py, libs/woff2/brotli/tools/version.h,
- libs/woff2/src/Makefile.am, libs/woff2/src/buffer.h,
- libs/woff2/src/file.h, libs/woff2/src/font.cc, libs/woff2/src/font.h,
- libs/woff2/src/glyph.cc, libs/woff2/src/glyph.h,
- libs/woff2/src/normalize.cc, libs/woff2/src/normalize.h,
- libs/woff2/src/port.h, libs/woff2/src/round.h,
- libs/woff2/src/store_bytes.h, libs/woff2/src/table_tags.cc,
- libs/woff2/src/table_tags.h, libs/woff2/src/transform.cc,
- libs/woff2/src/transform.h, libs/woff2/src/variable_length.cc,
- libs/woff2/src/variable_length.h, libs/woff2/src/woff2_common.cc,
- libs/woff2/src/woff2_common.h, libs/woff2/src/woff2_dec.h,
- libs/woff2/src/woff2_enc.cc, libs/woff2/src/woff2_enc.h,
- libs/woff2/src/woff2_out.cc, libs/woff2/src/woff2_out.h,
- src/FontWriter.cpp, src/FontWriter.hpp, src/Makefile.am:
- added support for embedding WOFF2 fonts
-
-2016-08-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLNode.hpp:
- added move constructors to XMLNode classes
-
-2016-08-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontEngine.cpp:
- fixed sign of the font descender
-
- * configure.ac, doc/dvisvgm.txt.in, src/CommandLine.hpp,
- src/FontWriter.cpp, src/FontWriter.hpp, src/GraphicsPath.hpp,
- src/Makefile.am, src/SVGTree.cpp, src/SVGTree.hpp, src/XMLNode.cpp,
- src/XMLNode.hpp, src/dvisvgm.cpp, src/ffwrapper.c, src/ffwrapper.h,
- src/options.xml:
- added option --font-format to select the file format used to embed fonts
-
-2016-08-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * xxHash/xxhash.c, xxHash/xxhash.h:
- updated xxHash to version 0.6.2
-
-2016-08-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FixWord.hpp, src/Font.cpp, src/FontMetrics.hpp, src/SVGTree.cpp,
- src/TFM.cpp, src/TFM.hpp:
- added getters for ascent and descent to TFM-based fonts
-
-2016-08-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Ghostscript.hpp:
- removed copy constructor of class Ghostscript
-
- * src/PathClipper.cpp:
- added missing initializers
-
-2016-08-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/CLCommandLine.cpp, src/CLCommandLine.hpp,
- src/CommandLine.hpp, src/Makefile.am, src/dvisvgm.cpp, src/options.dtd,
- src/options.xml, src/version.hpp, src/version.hpp.in:
- added version.hpp to provide the current version number
-
-2016-08-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/DVIReader.hpp, src/Directory.cpp,
- src/Directory.hpp, src/FilePath.cpp, src/FilePath.hpp, src/Font.cpp,
- src/Font.hpp, src/FontManager.cpp, src/FontManager.hpp, src/GFReader.hpp,
- src/PageRanges.cpp, src/PageRanges.hpp, src/PageSize.cpp,
- src/PageSize.hpp, src/SVGOutput.cpp, src/SVGOutput.hpp,
- src/VFActions.hpp, src/VFReader.cpp:
- pass string parameters by reference if possible
-
- * src/System.cpp, src/dvisvgm.cpp:
- minor refactorings of dvisvgm.cpp
-
- * src/Ghostscript.cpp, src/MiKTeXCom.cpp:
- replaced __WIN64__ with pre-defined _WIN64
-
-2016-08-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CLCommandLine.cpp, src/CLCommandLine.hpp, src/CLOption.hpp,
- src/CmdLineParserBase.cpp, src/CmdLineParserBase.hpp,
- src/CommandLine.cpp, src/CommandLine.hpp, src/Makefile.am,
- src/dvisvgm.cpp, src/options.dtd, src/options.xml,
- tests/CommandLineTest.cpp:
- reimplemented the CommandLine parser class
-
- * src/CMap.cpp, src/CMapManager.cpp, src/CMapReader.cpp, src/EncFile.cpp,
- src/FileFinder.cpp, src/FileFinder.hpp, src/Font.cpp,
- src/FontEncoding.cpp, src/FontManager.cpp, src/FontMap.cpp,
- src/FontMetrics.cpp, src/Ghostscript.cpp, src/MetafontWrapper.cpp,
- src/PsSpecialHandler.cpp, src/Subfont.cpp, src/dvisvgm.cpp,
- tests/CMapManagerTest.cpp, tests/FileFinderTest.cpp,
- tests/MapLineTest.cpp, tests/SubfontTest.cpp:
- made FileFinder a singleton again
-
-2016-07-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.cpp, src/BoundingBox.cpp,
- src/DvisvgmSpecialHandler.cpp, src/EmSpecialHandler.cpp,
- src/FileSystem.cpp, src/FontCache.cpp, src/FontEngine.cpp,
- src/FontManager.cpp, src/GraphicsPath.hpp, src/PSInterpreter.cpp,
- src/PapersizeSpecialHandler.cpp, src/PathClipper.cpp, src/RangeMap.cpp,
- src/Subfont.cpp, src/TpicSpecialHandler.cpp, src/XMLDocument.cpp,
- src/XMLNode.cpp:
- replaced insert/push_back with emplace/emplace_back where useful
-
-2016-07-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PathClipper.cpp:
- some minor refactorings of class PathClipper
-
- * src/CMapReader.cpp:
- minor refactoring of class CMapReader
-
-2016-07-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontMap.cpp, src/FontMap.hpp:
- some syntactic refactorings of class FontMap
-
- * src/FontManager.cpp, src/FontManager.hpp:
- use unique_ptr to automatically release Font objects in class
- FontManager
-
-2016-07-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/AGLTable.h, src/AGLTable.hpp, src/BasicDVIReader.cpp,
- src/BasicDVIReader.h, src/BasicDVIReader.hpp, src/Bezier.cpp,
- src/Bezier.h, src/Bezier.hpp, src/BgColorSpecialHandler.cpp,
- src/BgColorSpecialHandler.h, src/BgColorSpecialHandler.hpp,
- src/Bitmap.cpp, src/Bitmap.h, src/Bitmap.hpp, src/BoundingBox.cpp,
- src/BoundingBox.h, src/BoundingBox.hpp, src/CMap.cpp, src/CMap.h,
- src/CMap.hpp, src/CMapManager.cpp, src/CMapManager.h,
- src/CMapManager.hpp, src/CMapReader.cpp, src/CMapReader.h,
- src/CMapReader.hpp, src/CRC32.cpp, src/CRC32.h, src/CRC32.hpp,
- src/Calculator.cpp, src/Calculator.h, src/Calculator.hpp,
- src/CharMapID.cpp, src/CharMapID.h, src/CharMapID.hpp, src/Character.h,
- src/Character.hpp, src/CmdLineParserBase.cpp, src/CmdLineParserBase.h,
- src/CmdLineParserBase.hpp, src/Color.cpp, src/Color.h, src/Color.hpp,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/ColorSpecialHandler.hpp, src/CommandLine.cpp, src/CommandLine.h,
- src/CommandLine.hpp, src/DLLoader.cpp, src/DLLoader.h, src/DLLoader.hpp,
- src/DVIActions.h, src/DVIActions.hpp, src/DVIReader.cpp, src/DVIReader.h,
- src/DVIReader.hpp, src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVG.hpp,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/DVIToSVGActions.hpp,
- src/DependencyGraph.h, src/DependencyGraph.hpp, src/Directory.cpp,
- src/Directory.h, src/Directory.hpp, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.h, src/DvisvgmSpecialHandler.hpp,
- src/EPSFile.cpp, src/EPSFile.h, src/EPSFile.hpp, src/EPSToSVG.cpp,
- src/EPSToSVG.h, src/EPSToSVG.hpp, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.h, src/EmSpecialHandler.hpp, src/EncFile.cpp,
- src/EncFile.h, src/EncFile.hpp, src/FileFinder.cpp, src/FileFinder.h,
- src/FileFinder.hpp, src/FilePath.cpp, src/FilePath.h, src/FilePath.hpp,
- src/FileSystem.cpp, src/FileSystem.h, src/FileSystem.hpp, src/FixWord.h,
- src/FixWord.hpp, src/Font.cpp, src/Font.h, src/Font.hpp,
- src/FontCache.cpp, src/FontCache.h, src/FontCache.hpp,
- src/FontEncoding.cpp, src/FontEncoding.h, src/FontEncoding.hpp,
- src/FontEngine.cpp, src/FontEngine.h, src/FontEngine.hpp,
- src/FontManager.cpp, src/FontManager.h, src/FontManager.hpp,
- src/FontMap.cpp, src/FontMap.h, src/FontMap.hpp, src/FontMetrics.cpp,
- src/FontMetrics.h, src/FontMetrics.hpp, src/FontStyle.h,
- src/FontStyle.hpp, src/GFGlyphTracer.cpp, src/GFGlyphTracer.h,
- src/GFGlyphTracer.hpp, src/GFReader.cpp, src/GFReader.h,
- src/GFReader.hpp, src/GFTracer.cpp, src/GFTracer.h, src/GFTracer.hpp,
- src/Ghostscript.cpp, src/Ghostscript.h, src/Ghostscript.hpp, src/Glyph.h,
- src/Glyph.hpp, src/GlyphTracerMessages.h, src/GlyphTracerMessages.hpp,
- src/GraphicsPath.h, src/GraphicsPath.hpp, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.h, src/HtmlSpecialHandler.hpp,
- src/InputBuffer.cpp, src/InputBuffer.h, src/InputBuffer.hpp,
- src/InputReader.cpp, src/InputReader.h, src/InputReader.hpp, src/JFM.cpp,
- src/JFM.h, src/JFM.hpp, src/Length.cpp, src/Length.h, src/Length.hpp,
- src/Makefile.am, src/MapLine.cpp, src/MapLine.h, src/MapLine.hpp,
- src/Matrix.cpp, src/Matrix.h, src/Matrix.hpp, src/Message.cpp,
- src/Message.h, src/Message.hpp, src/MessageException.h,
- src/MessageException.hpp, src/MetafontWrapper.cpp, src/MetafontWrapper.h,
- src/MetafontWrapper.hpp, src/MiKTeXCom.cpp, src/MiKTeXCom.h,
- src/MiKTeXCom.hpp, src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.h,
- src/NoPsSpecialHandler.hpp, src/NumericRanges.h, src/NumericRanges.hpp,
- src/PSFilter.h, src/PSFilter.hpp, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PSInterpreter.hpp, src/PSPattern.cpp,
- src/PSPattern.h, src/PSPattern.hpp, src/PSPreviewFilter.cpp,
- src/PSPreviewFilter.h, src/PSPreviewFilter.hpp, src/PageRanges.cpp,
- src/PageRanges.h, src/PageRanges.hpp, src/PageSize.cpp, src/PageSize.h,
- src/PageSize.hpp, src/Pair.h, src/Pair.hpp,
- src/PapersizeSpecialHandler.cpp, src/PapersizeSpecialHandler.h,
- src/PapersizeSpecialHandler.hpp, src/PathClipper.cpp, src/PathClipper.h,
- src/PathClipper.hpp, src/PdfSpecialHandler.cpp, src/PdfSpecialHandler.h,
- src/PdfSpecialHandler.hpp, src/PreScanDVIReader.cpp,
- src/PreScanDVIReader.h, src/PreScanDVIReader.hpp, src/Process.cpp,
- src/Process.h, src/Process.hpp, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/PsSpecialHandler.hpp, src/RangeMap.cpp,
- src/RangeMap.h, src/RangeMap.hpp, src/SVGCharHandler.cpp,
- src/SVGCharHandler.h, src/SVGCharHandler.hpp,
- src/SVGCharHandlerFactory.cpp, src/SVGCharHandlerFactory.h,
- src/SVGCharHandlerFactory.hpp, src/SVGCharPathHandler.cpp,
- src/SVGCharPathHandler.h, src/SVGCharPathHandler.hpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGCharTspanTextHandler.h,
- src/SVGCharTspanTextHandler.hpp, src/SVGOutput.cpp, src/SVGOutput.h,
- src/SVGOutput.hpp, src/SVGSingleCharTextHandler.cpp,
- src/SVGSingleCharTextHandler.h, src/SVGSingleCharTextHandler.hpp,
- src/SVGTree.cpp, src/SVGTree.h, src/SVGTree.hpp, src/ShadingPatch.cpp,
- src/ShadingPatch.h, src/ShadingPatch.hpp, src/SignalHandler.cpp,
- src/SignalHandler.h, src/SignalHandler.hpp, src/SpecialActions.h,
- src/SpecialActions.hpp, src/SpecialHandler.h, src/SpecialHandler.hpp,
- src/SpecialManager.cpp, src/SpecialManager.h, src/SpecialManager.hpp,
- src/StreamReader.cpp, src/StreamReader.h, src/StreamReader.hpp,
- src/StreamWriter.cpp, src/StreamWriter.h, src/StreamWriter.hpp,
- src/Subfont.cpp, src/Subfont.h, src/Subfont.hpp, src/System.cpp,
- src/System.h, src/System.hpp, src/TFM.cpp, src/TFM.h, src/TFM.hpp,
- src/TensorProductPatch.cpp, src/TensorProductPatch.h,
- src/TensorProductPatch.hpp, src/Terminal.cpp, src/Terminal.h,
- src/Terminal.hpp, src/ToUnicodeMap.cpp, src/ToUnicodeMap.h,
- src/ToUnicodeMap.hpp, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h, src/TpicSpecialHandler.hpp,
- src/TriangularPatch.cpp, src/TriangularPatch.h, src/TriangularPatch.hpp,
- src/Unicode.cpp, src/Unicode.h, src/Unicode.hpp, src/VFActions.h,
- src/VFActions.hpp, src/VFReader.cpp, src/VFReader.h, src/VFReader.hpp,
- src/VectorIterator.h, src/VectorIterator.hpp, src/VectorStream.h,
- src/VectorStream.hpp, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLDocument.hpp, src/XMLNode.cpp, src/XMLNode.h, src/XMLNode.hpp,
- src/XMLString.cpp, src/XMLString.h, src/XMLString.hpp,
- src/ZLibOutputStream.h, src/ZLibOutputStream.hpp, src/dvisvgm.cpp,
- src/macros.h, src/macros.hpp, src/psdefs.cpp, tests/BezierTest.cpp,
- tests/BitmapTest.cpp, tests/BoundingBoxTest.cpp,
- tests/CMapManagerTest.cpp, tests/CMapReaderTest.cpp, tests/CMapTest.cpp,
- tests/CRC32Test.cpp, tests/CalculatorTest.cpp,
- tests/ColorSpecialTest.cpp, tests/ColorTest.cpp,
- tests/CommandLineTest.cpp, tests/DependencyGraphTest.cpp,
- tests/DirectoryTest.cpp, tests/DvisvgmSpecialTest.cpp,
- tests/EmSpecialTest.cpp, tests/FileFinderTest.cpp,
- tests/FilePathTest.cpp, tests/FileSystemTest.cpp,
- tests/FontManagerTest.cpp, tests/FontMapTest.cpp,
- tests/GFGlyphTracerTest.cpp, tests/GFReaderTest.cpp,
- tests/GhostscriptTest.cpp, tests/GraphicsPathTest.cpp,
- tests/JFMReaderTest.cpp, tests/LengthTest.cpp, tests/Makefile.am,
- tests/MapLineTest.cpp, tests/MatrixTest.cpp,
- tests/MessageExceptionTest.cpp, tests/PSInterpreterTest.cpp,
- tests/PageRagesTest.cpp, tests/PageSizeTest.cpp, tests/PairTest.cpp,
- tests/RangeMapTest.cpp, tests/SVGOutputTest.cpp,
- tests/ShadingPatchTest.cpp, tests/SplittedCharInputBufferTest.cpp,
- tests/StreamInputBufferTest.cpp, tests/StreamReaderTest.cpp,
- tests/StreamWriterTest.cpp, tests/SubfontTest.cpp,
- tests/TFMReaderTest.cpp, tests/TensorProductPatchTest.cpp,
- tests/ToUnicodeMapTest.cpp, tests/TriangularPatchTest.cpp,
- tests/UnicodeTest.cpp, tests/VectorIteratorTest.cpp,
- tests/VectorStreamTest.cpp, tests/XMLNodeTest.cpp,
- tests/XMLStringTest.cpp, tests/create-makefile:
- renamed filename extension of C++ headers to .hpp
-
-2016-07-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMapManager.cpp, src/CMapManager.h, src/FileFinder.cpp,
- src/Font.cpp, src/Font.h, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLNode.cpp, src/XMLNode.h, tests/XMLNodeTest.cpp:
- use smart pointers to release heap memory
-
- * src/DVIToSVGActions.cpp, src/DVIToSVGActions.h:
- create BoxMap object directly, avoid new/delete
-
-2016-07-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/AGLTable.h, src/Color.cpp, src/Unicode.cpp, tests/genhashcheck.py:
- replaced repeated binary search implementations with calls of
- lower_bound()
-
-2016-07-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp, src/Message.cpp:
- initialize maps with initializer-lists
-
-2016-07-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Length.cpp, src/TpicSpecialHandler.cpp:
- replaced 'id macros' with constexpr functions
-
-2016-07-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TFM.cpp:
- added missing initializers
-
- * src/dvisvgm.cpp:
- catch exception in set_cache_dir()
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.16
-
- * NEWS, README.md:
- updated NEWS and README
-
-2016-07-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, m4/ax_cxx_compile_stdcxx.m4:
- switch from C++03 to C++11
-
- * src/NumericRanges.h, src/PapersizeSpecialHandler.cpp, src/Unicode.cpp,
- src/VFReader.cpp:
- replaced static callback functions with lambdas
-
- * src/CMapReader.cpp, src/CMapReader.h, src/CmdLineParserBase.cpp,
- src/CmdLineParserBase.h, src/Color.cpp, src/Color.h, src/CommandLine.cpp,
- src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp,
- src/EmSpecialHandler.cpp, src/Font.cpp, src/Font.h, src/FontManager.cpp,
- src/GraphicsPath.h, src/HtmlSpecialHandler.cpp, src/HtmlSpecialHandler.h,
- src/Length.cpp, src/Length.h, src/PathClipper.cpp,
- src/PsSpecialHandler.cpp, src/SVGTree.cpp, src/ShadingPatch.cpp,
- src/TensorProductPatch.h, tests/BoundingBoxTest.cpp,
- tests/LengthTest.cpp, tests/ShadingPatchTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/TriangularPatchTest.cpp:
- replaced some enums with enum classes
-
- * clipper/clipper.hpp, src/AGLTable.h, src/BasicDVIReader.cpp,
- src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.h, src/CMap.cpp,
- src/CMap.h, src/CMapReader.cpp, src/CRC32.cpp, src/CRC32.h,
- src/CharMapID.h, src/Character.h, src/Color.cpp, src/Color.h,
- src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp,
- src/DVIToSVG.h, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/EPSFile.cpp, src/EPSFile.h, src/EncFile.cpp, src/EncFile.h,
- src/FileSystem.cpp, src/FileSystem.h, src/FixWord.h, src/Font.cpp,
- src/Font.h, src/FontCache.cpp, src/FontCache.h, src/FontEncoding.cpp,
- src/FontEncoding.h, src/FontEngine.cpp, src/FontEngine.h,
- src/FontManager.cpp, src/FontManager.h, src/FontMetrics.cpp,
- src/FontMetrics.h, src/GFGlyphTracer.cpp, src/GFGlyphTracer.h,
- src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp, src/GFTracer.h,
- src/Glyph.h, src/GlyphTracerMessages.h, src/InputBuffer.cpp,
- src/InputBuffer.h, src/JFM.cpp, src/JFM.h, src/Makefile.am,
- src/Message.h, src/Pair.h, src/PathClipper.cpp, src/PreScanDVIReader.cpp,
- src/PsSpecialHandler.h, src/RangeMap.cpp, src/RangeMap.h,
- src/SVGCharHandler.h, src/SVGCharPathHandler.cpp,
- src/SVGCharPathHandler.h, src/SVGCharTspanTextHandler.cpp,
- src/SVGCharTspanTextHandler.h, src/SVGSingleCharTextHandler.cpp,
- src/SVGSingleCharTextHandler.h, src/StreamReader.cpp, src/StreamReader.h,
- src/StreamWriter.cpp, src/StreamWriter.h, src/Subfont.cpp, src/Subfont.h,
- src/TFM.cpp, src/TFM.h, src/ToUnicodeMap.cpp, src/ToUnicodeMap.h,
- src/Unicode.cpp, src/Unicode.h, src/VFActions.h, src/VFReader.cpp,
- src/VFReader.h, src/XMLString.cpp, src/types.h, tests/BitmapTest.cpp,
- tests/CRC32Test.cpp, tests/ColorSpecialTest.cpp, tests/ColorTest.cpp,
- tests/GFGlyphTracerTest.cpp, tests/GFReaderTest.cpp,
- tests/JFMReaderTest.cpp, tests/Makefile.am, tests/StreamReaderTest.cpp,
- tests/TriangularPatchTest.cpp, tests/TypesTest.cpp,
- tests/UnicodeTest.cpp:
- replaced own fixed-sized integer types with types from cstdint
-
- * AUTHORS, LGPL-2.1.txt, Makefile.am, gzstream/COPYING.LIB,
- gzstream/Makefile, gzstream/README, gzstream/gzstream.cpp,
- gzstream/gzstream.h, gzstream/index.html, gzstream/logo.gif,
- gzstream/test_gunzip.C, gzstream/test_gzip.C, gzstream/version,
- src/Makefile.am, src/SVGOutput.cpp, src/SVGOutput.h,
- src/ZLibOutputStream.h, src/dvisvgm.cpp, src/gzstream.cpp,
- src/gzstream.h, tests/Makefile.am, tests/SVGOutputTest.cpp,
- tests/create-makefile:
- replaced old gzstream classes
-
- * src/DVIReader.cpp, src/DVIReader.h, src/Font.cpp, src/Font.h,
- src/FontManager.cpp, src/FontManager.h, src/VFActions.h,
- src/VFReader.cpp:
- transfer DVI snippet of a VF char by move semantics rather than by heap
- pointer
-
-2016-07-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bitmap.cpp, src/BoundingBox.h, src/CMapManager.cpp,
- src/CmdLineParserBase.cpp, src/DVIToSVG.cpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/DependencyGraph.h,
- src/DvisvgmSpecialHandler.cpp, src/EmSpecialHandler.cpp,
- src/FileFinder.cpp, src/FilePath.cpp, src/FilePath.h, src/Font.cpp,
- src/FontCache.cpp, src/FontEncoding.cpp, src/FontManager.cpp,
- src/FontMap.cpp, src/FontMap.h, src/GFReader.cpp, src/GFReader.h,
- src/GraphicsPath.h, src/HtmlSpecialHandler.cpp, src/NumericRanges.h,
- src/PSPattern.cpp, src/PsSpecialHandler.cpp, src/SVGTree.cpp,
- src/SVGTree.h, src/SpecialManager.cpp, src/SpecialManager.h,
- src/Subfont.cpp, src/Subfont.h, src/TpicSpecialHandler.cpp,
- src/XMLDocument.cpp, src/XMLNode.cpp, src/XMLString.cpp, src/macros.h:
- use range-based 'for' loop to iterate over containers; drop FORALL macro
-
- * clipper/clipper.hpp, src/BgColorSpecialHandler.h, src/Bitmap.cpp,
- src/CMap.h, src/CmdLineParserBase.h, src/ColorSpecialHandler.h,
- src/CommandLine.h, src/DVIReader.h, src/DVIToSVG.h,
- src/DVIToSVGActions.h, src/DvisvgmSpecialHandler.h, src/EPSToSVG.h,
- src/EmSpecialHandler.h, src/EncFile.h, src/Font.h, src/FontCache.cpp,
- src/FontEncoding.h, src/FontMetrics.h, src/GFGlyphTracer.h,
- src/GFReader.h, src/GFTracer.h, src/GlyphTracerMessages.h,
- src/GraphicsPath.h, src/HtmlSpecialHandler.h, src/InputBuffer.h,
- src/InputReader.h, src/JFM.h, src/MessageException.h,
- src/NoPsSpecialHandler.h, src/PSPattern.h, src/PSPreviewFilter.h,
- src/PapersizeSpecialHandler.h, src/PathClipper.cpp,
- src/PdfSpecialHandler.h, src/PreScanDVIReader.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h,
- src/SVGCharPathHandler.h, src/SVGCharTspanTextHandler.h, src/SVGOutput.h,
- src/SVGSingleCharTextHandler.h, src/SpecialActions.h, src/TFM.h,
- src/TensorProductPatch.h, src/TpicSpecialHandler.h,
- src/TriangularPatch.h, src/VectorStream.h, src/XMLNode.h:
- mark overridden methods with 'override' keyword
-
- * src/PsSpecialHandler.cpp:
- use unique_ptr rather than deprecated auto_ptr
-
- * src/BasicDVIReader.h, src/Bitmap.h, src/CMap.h, src/CmdLineParserBase.h,
- src/DVIActions.h, src/Font.h, src/FontEncoding.h, src/FontMetrics.h,
- src/GFGlyphTracer.h, src/GFReader.h, src/GFTracer.h, src/GraphicsPath.h,
- src/InputBuffer.h, src/InputReader.h, src/MessageException.h,
- src/PSFilter.h, src/PSInterpreter.h, src/PSPattern.h,
- src/SVGCharHandler.h, src/SVGOutput.h, src/ShadingPatch.h,
- src/SpecialActions.h, src/SpecialHandler.h, src/StreamReader.h,
- src/StreamWriter.h, src/Subfont.h, src/VFActions.h, src/XMLNode.h:
- replaced empty virtual destructors with default ones
-
-2016-07-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BasicDVIReader.h, src/DVIActions.h, src/DVIReader.cpp,
- src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/FontManager.cpp,
- src/FontManager.h, src/PreScanDVIReader.h, src/dvisvgm.cpp:
- refactored the DVI reader classes
-- added higher-level template methods
- to process the DVI commands more safely
-- moved triggering of DVIActions
- from DVIReader to DVIToSVG
-
-2016-06-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BoundingBox.cpp, src/BoundingBox.h, src/DVIToSVG.cpp,
- src/dvisvgm.cpp:
- fixed computation of bounding boxes modified by relative --bbox argument
-
- * xxHash/xxhash.c, xxHash/xxhash.h:
- updated xxHash to version 0.6.1
-
-2016-06-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TFM.cpp, tests/JFMReaderTest.cpp, tests/TFMReaderTest.cpp:
- minor improvements to TFM/JFM tests
-
-2016-06-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/VectorStream.h, tests/VectorStreamTest.cpp:
- refactored VectorStreamBuffer to keep constness of assigned vector
-
- * src/GFReader.cpp:
- ensure validity of postpost command in GFReader::executePostamble()
-
-2016-06-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DvisvgmSpecialHandler.cpp, src/TFM.cpp, src/VFReader.cpp:
- replaced local definitions of pt2bp with Length::pt2bp
-
- * src/XMLNode.h:
- added ouput operators for the XML node objects
-
- * src/EmSpecialHandler.cpp, src/EmSpecialHandler.h,
- tests/EmSpecialTest.cpp, tests/Makefile.am:
- improved the emTeX special handler; added EmSpecialTest
-
- * src/BoundingBox.cpp, src/BoundingBox.h, tests/BoundingBoxTest.cpp:
- fixed unit conversion in BoundingBox class
-
-2016-06-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/Length.cpp, src/Length.h, tests/LengthTest.cpp:
- added dd, cc, and sp units to class Length; fixed factor pt2pc
-
-2016-06-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * xxHash/xxhash.c, xxHash/xxhash.h:
- updated xxHash to version 0.6.0
-
- * src/DLLoader.cpp, src/DLLoader.h, src/Directory.cpp, src/Directory.h,
- src/FilePath.cpp, src/FilePath.h, src/FileSystem.cpp, src/GFTracer.cpp,
- src/Ghostscript.cpp, src/Ghostscript.h, src/Message.cpp,
- src/MetafontWrapper.cpp, src/Process.cpp, src/Terminal.cpp,
- src/Terminal.h, src/dvisvgm.cpp:
- cleaned up Windows-related #defines
-
-2016-06-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CommandLine.cpp:
- removed redundant #includes
-
- * src/Length.cpp, src/Length.h, tests/LengthTest.cpp:
- added functions to convert between Length::Unit and std::string
-
-2016-06-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMapManager.cpp, src/CMapManager.h, src/DVIActions.h,
- src/DVIToSVGActions.h, src/DvisvgmSpecialHandler.h, src/Font.h,
- src/FontEngine.h, src/FontManager.h, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.h, src/PSPattern.h, src/PSPreviewFilter.h,
- src/SVGCharHandler.cpp, src/SVGCharHandler.h, src/SVGCharPathHandler.cpp,
- src/SVGCharTspanTextHandler.cpp, src/SVGSingleCharTextHandler.cpp,
- src/SVGTree.h, src/SpecialActions.h, src/SpecialHandler.h,
- src/SpecialManager.h, src/XMLDocument.cpp, src/XMLNode.h,
- tests/XMLNodeTest.cpp:
- changed some structs to classes and replaced #includes with forward
- declarations
-
- * src/SVGCharHandler.h:
- added missing initializer to class SVGCharHandler
-
-2016-06-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h, src/DVIToSVG.cpp,
- src/DVIToSVGActions.cpp, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.h, src/EPSToSVG.cpp, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.h, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.h, src/NoPsSpecialHandler.cpp,
- src/NoPsSpecialHandler.h, src/PSPattern.cpp, src/PSPattern.h,
- src/PdfSpecialHandler.cpp, src/PdfSpecialHandler.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h, tests/ColorSpecialTest.cpp,
- tests/DvisvgmSpecialTest.cpp:
- refactored handling of SpecialAction objects
-
- * src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/SVGTree.cpp,
- src/SVGTree.h:
- refactored processing of end-of-page (eop) commands
-
- * doc/dvisvgm.txt.in, src/DVIToSVG.cpp, src/Makefile.am,
- src/PapersizeSpecialHandler.cpp, src/PapersizeSpecialHandler.h,
- src/PsSpecialHandler.cpp, src/dvisvgm.cpp:
- added evaluation of PS special 'papersize='
-
-2016-06-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp:
- fixed transformation of background color rectange
-
-2016-05-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/EPSToSVG.cpp:
- reworded messages printed after finishing a conversion
-
-2016-05-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVGActions.cpp, src/Font.cpp, src/Makefile.am,
- src/SVGCharHandler.cpp, src/SVGCharHandler.h,
- src/SVGCharHandlerFactory.cpp, src/SVGCharHandlerFactory.h,
- src/SVGCharPathHandler.cpp, src/SVGCharPathHandler.h,
- src/SVGCharTspanTextHandler.cpp, src/SVGCharTspanTextHandler.h,
- src/SVGSingleCharTextHandler.cpp, src/SVGSingleCharTextHandler.h,
- src/SVGTree.cpp, src/SVGTree.h, src/dvisvgm.cpp:
- replaced static SVG text backend by specialized handler classes
-
- * src/BasicDVIReader.cpp, src/BasicDVIReader.h, src/Bezier.h,
- src/TensorProductPatch.h, src/TriangularPatch.h:
- replaced leading spaces with tabs
-
-2016-05-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BasicDVIReader.cpp, src/DVIReader.cpp:
- fixed handling of subfont index in native font definition of XDV 7
-
-2016-05-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLDocument.cpp, src/XMLNode.cpp, src/XMLNode.h,
- tests/DvisvgmSpecialTest.cpp:
- prevent line wrapping inside text nodes
-
-2016-05-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * README.md, doc/dvisvgm.txt.in, src/BasicDVIReader.cpp,
- src/BasicDVIReader.h, src/DVIReader.cpp, src/DVIToSVG.cpp:
- reworded 'DVI format' to 'DVI (format) version'
-
- * README.md, doc/dvisvgm.txt.in, src/BasicDVIReader.cpp,
- src/BasicDVIReader.h, src/DVIReader.cpp:
- added support for XDV version 7 introduced by XeTeX 0.99995
-
-2016-05-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TFM.cpp:
- prevent reading more than 7 TFM param values (fixes #58)
-
- * .travis.yml:
- temporarily drop clang from Travis builds
-
-2016-05-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/JFM.cpp, src/JFM.h, src/TFM.cpp, src/TFM.h:
- TFM: store design size in bp units rather than as fixword
-
- * src/FontMetrics.h, src/JFM.cpp, src/TFM.cpp, src/TFM.h:
- added methods to query space-related parameters from TFM/JFM files
-
- * src/TFM.cpp, tests/JFMReaderTest.cpp, tests/TFMReaderTest.cpp:
- fixed calculation of character dimensions in TFM class
-
-2016-04-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Process.cpp:
- fixed collecting stdout/stderr output when executing a process
-
-2016-04-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMap.h, src/CMapReader.cpp, tests/CMapManagerTest.cpp,
- tests/Makefile.am, tests/data/Makefile.am, tests/data/ot1.cmap:
- added CMapManagerTest
-
-2016-04-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.15.1
-
- * NEWS, README, README.md:
- updated NEWS and README
-
-2016-04-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Calculator.cpp, src/Matrix.cpp:
- use std::ws to skip whitespace in istreams
-
- * src/Matrix.cpp:
- avoid adding trailing EOF characters when parsing parameters of
- transformation commands
-
- * tests/CMapReaderTest.cpp:
- improved CMapReaderTest
-
-2016-04-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/AGLTable.h, src/Makefile.am, src/Unicode.cpp, tests/Makefile.am,
- tests/create-makefile, tests/genhashcheck.py:
- moved AGL hash table from Unicode.cpp to a separate file
-
-2016-04-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLDocument.cpp:
- explicitly specify UTF-8 encoding in XML declaration (closes #54)
-
- * src/Unicode.cpp, tests/UnicodeTest.cpp:
- added support for the AGL character names 'uniFOO' and 'uFOO'
-
-2016-03-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPath.h:
- renamed GraphicsPath::sconito/scubicto
-
-2016-03-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/db2html.xsl:
- adapted db2html to insert anchors for each option entry
-
- * src/DVIActions.h, src/DVIReader.cpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/SVGTree.cpp, src/SVGTree.h:
- changed font parameter of setFont() methods from pointer to reference
-
- * src/SVGTree.cpp, src/SVGTree.h:
- split text and path section of SVGTree::appendChar() into seperate
- methods
-
-2016-02-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS:
- updated NEWS
-
-2016-02-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/Font.cpp, src/Font.h, src/SVGTree.cpp, src/SVGTree.h,
- src/dvisvgm.cpp, src/options.xml:
- added option --comments (adds comments with additional information to
- the SVG file
-
- * src/Font.cpp, src/Unicode.cpp, src/Unicode.h, tests/UnicodeTest.cpp:
- renamed Unicode::psNameToCodepoint() to Unicode::aglNameToCodepoint
-
- * src/FileFinder.cpp, src/FilePath.cpp, src/FileSystem.cpp,
- src/FileSystem.h, src/Font.cpp, src/MetafontWrapper.cpp, src/dvisvgm.cpp:
- changed string parameters of FileSystem functions to type std::string
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.15
-
-2016-02-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontEngine.cpp:
- reworded error messages of class FontEngine
-
- * src/MetafontWrapper.cpp, src/Process.cpp:
- avoid reading Metafont logfiles to extract the GF filename
-
- * configure.ac, src/FileFinder.cpp, src/FileFinder.h,
- tests/FileFinderTest.cpp, tests/GFGlyphTracerTest.cpp,
- tests/GFReaderTest.cpp, tests/JFMReaderTest.cpp, tests/Makefile.am,
- tests/TFMReaderTest.cpp, tests/cidjmgr0-h.tfm, tests/cmr10.600gf,
- tests/cmr10.tfm, tests/create-makefile, tests/data/Makefile.am,
- tests/data/cidjmgr0-h.tfm, tests/data/cmr10.600gf, tests/data/cmr10.tfm,
- tests/data/dvipdfm_test.map, tests/data/dvips_test.map,
- tests/data/frktest-nf-cmp.svg, tests/data/frktest-wf-cmp.svg,
- tests/data/frktest.dvi, tests/data/sample-nf-cmp.svg,
- tests/data/sample-wf-cmp.svg, tests/data/sample.dvi,
- tests/data/sample.sfd, tests/dvipdfm_test.map, tests/dvips_test.map,
- tests/frktest-nf-cmp.svg, tests/frktest-wf-cmp.svg, tests/frktest.dvi,
- tests/sample-nf-cmp.svg, tests/sample-wf-cmp.svg, tests/sample.dvi,
- tests/sample.sfd:
- moved test data files to subfolder
-
-2016-02-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/FileFinderTest.cpp, tests/GFReaderTest.cpp,
- tests/SVGOutputTest.cpp:
- avoid implicit casts of ifstream/ozstream objects in tests
-
- * src/CmdLineParserBase.cpp, src/CmdLineParserBase.h,
- tests/CommandLineTest.cpp:
- minor improvements of class CommandLineTest
-
- * src/XMLNode.cpp, tests/DvisvgmSpecialTest.cpp:
- improved DvisvgmSpecialTest
-
- * src/FontEngine.cpp, src/FontEngine.h:
- removed redundant code from class FontEngine
-
-2016-02-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- don't remove clipping paths that consist of single moveto commands only
-
-2016-02-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bitmap.cpp, src/BoundingBox.cpp, src/CMap.cpp, src/CMapManager.cpp,
- src/Calculator.cpp, src/CommandLine.cpp, src/DVIReader.cpp,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/Directory.cpp, src/Directory.h, src/EPSToSVG.cpp, src/EncFile.cpp,
- src/FileFinder.cpp, src/Font.cpp, src/FontCache.h, src/FontEngine.cpp,
- src/FontManager.cpp, src/FontMap.cpp, src/FontMetrics.cpp,
- src/GFGlyphTracer.cpp, src/GFReader.cpp, src/GFTracer.cpp,
- src/HtmlSpecialHandler.cpp, src/InputReader.cpp, src/MapLine.cpp,
- src/MetafontWrapper.cpp, src/PSInterpreter.cpp,
- src/PdfSpecialHandler.cpp, src/Process.cpp, src/PsSpecialHandler.cpp,
- src/SVGTree.cpp, src/SpecialManager.cpp, src/StreamReader.cpp,
- src/StreamWriter.cpp, src/Subfont.cpp, src/TFM.cpp,
- src/TensorProductPatch.cpp, src/TpicSpecialHandler.cpp, src/VFReader.cpp,
- src/XMLDocument.cpp, src/dvisvgm.cpp, tests/XMLStringTest.cpp:
- minor code cleanup (removed redundant includes, added casts)
-
-2016-01-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * m4/ax_code_coverage.m4:
- updated m4 code coverage script to latest version
-
- * src/JFM.h, tests/JFMReaderTest.cpp, tests/Makefile.am,
- tests/TFMReaderTest.cpp, tests/cidjmgr0-h.tfm, tests/cmr10.tfm,
- tests/create-makefile:
- added tests for the TFM and JFM classes
-
-2016-01-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicsPath.h, tests/GraphicsPathTest.cpp:
- fixed access of invalid iterator
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.14.2
-
- * NEWS, README.md:
- updated NEWS
-
-2016-01-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- added generic info about the command-line interface to the manpage
-
- * doc/db2html.xsl:
- updated links to Bootstrap and Font Awesome in stylesheet db2html.xsl
-
- * src/dvisvgm.cpp, xxHash/xxhash.c, xxHash/xxhash.h:
- updated xxHash to version 0.5.0
-
- * tests/Makefile.am, tests/create-makefile, tests/genhashcheck.py:
- added test to check the validity of the char name hashes used in
- Unicode.cpp
-
-2016-01-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.cpp, src/ColorSpecialHandler.cpp,
- src/ColorSpecialHandler.h, tests/ColorSpecialTest.cpp:
- removed check for 'background' special from ColorSpecialHandler
-
-2016-01-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.h, src/FontStyle.h, src/SVGTree.cpp,
- src/TriangularPatch.cpp:
- updated/fixed some comments
-
- * src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h, src/DVIToSVG.cpp,
- src/SpecialHandler.h, src/SpecialManager.cpp, src/SpecialManager.h:
- corrected handling of background color special across DVI pages
-
-2016-01-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GFReader.cpp, src/GFReader.h:
- added checks for misplaced GF commands
-
- * NEWS:
- updated NEWS
-
-2016-01-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml:
- force Travis to use legacy builds due to an issue with clang and gtest
-
- * Makefile.am, README, README.md, configure.ac, doc/Makefile.am,
- doc/conf-dblatex-man.xsl, doc/conf-dblatex-pdf.xsl, doc/db2html.xsl,
- doc/dvisvgm.txt.in, src/BasicDVIReader.cpp, src/BasicDVIReader.h,
- src/Bezier.cpp, src/Bezier.h, src/BgColorSpecialHandler.cpp,
- src/BgColorSpecialHandler.h, src/Bitmap.cpp, src/Bitmap.h,
- src/BoundingBox.cpp, src/BoundingBox.h, src/CMap.cpp, src/CMap.h,
- src/CMapManager.cpp, src/CMapManager.h, src/CMapReader.cpp,
- src/CMapReader.h, src/CRC32.cpp, src/CRC32.h, src/Calculator.cpp,
- src/Calculator.h, src/CharMapID.cpp, src/CharMapID.h, src/Character.h,
- src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/Color.cpp,
- src/Color.h, src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/CommandLine.cpp, src/CommandLine.h, src/DLLoader.cpp, src/DLLoader.h,
- src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp,
- src/DVIToSVG.h, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/DependencyGraph.h, src/Directory.cpp, src/Directory.h,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- src/EPSFile.cpp, src/EPSFile.h, src/EPSToSVG.cpp, src/EPSToSVG.h,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.h, src/EncFile.cpp,
- src/EncFile.h, src/FileFinder.cpp, src/FileFinder.h, src/FilePath.cpp,
- src/FilePath.h, src/FileSystem.cpp, src/FileSystem.h, src/Font.cpp,
- src/Font.h, src/FontCache.cpp, src/FontCache.h, src/FontEncoding.cpp,
- src/FontEncoding.h, src/FontEngine.cpp, src/FontEngine.h,
- src/FontManager.cpp, src/FontManager.h, src/FontMap.cpp, src/FontMap.h,
- src/FontMetrics.cpp, src/FontMetrics.h, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.h, src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp,
- src/GFTracer.h, src/Ghostscript.cpp, src/Ghostscript.h, src/Glyph.h,
- src/GlyphTracerMessages.h, src/GraphicsPath.h,
- src/HtmlSpecialHandler.cpp, src/HtmlSpecialHandler.h,
- src/InputBuffer.cpp, src/InputBuffer.h, src/InputReader.cpp,
- src/InputReader.h, src/JFM.cpp, src/JFM.h, src/Length.cpp, src/Length.h,
- src/Makefile.am, src/MapLine.cpp, src/MapLine.h, src/Matrix.cpp,
- src/Matrix.h, src/Message.cpp, src/Message.h, src/MessageException.h,
- src/MetafontWrapper.cpp, src/MetafontWrapper.h, src/MiKTeXCom.cpp,
- src/MiKTeXCom.h, src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.h,
- src/NumericRanges.h, src/PSFilter.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PSPattern.cpp, src/PSPattern.h,
- src/PSPreviewFilter.cpp, src/PSPreviewFilter.h, src/PageRanges.cpp,
- src/PageRanges.h, src/PageSize.cpp, src/PageSize.h, src/Pair.h,
- src/PathClipper.cpp, src/PathClipper.h, src/PdfSpecialHandler.cpp,
- src/PdfSpecialHandler.h, src/PreScanDVIReader.cpp,
- src/PreScanDVIReader.h, src/Process.cpp, src/Process.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/RangeMap.cpp,
- src/RangeMap.h, src/SVGOutput.cpp, src/SVGOutput.h, src/SVGTree.cpp,
- src/SVGTree.h, src/ShadingPatch.cpp, src/ShadingPatch.h,
- src/SignalHandler.cpp, src/SignalHandler.h, src/SpecialActions.h,
- src/SpecialHandler.h, src/SpecialManager.cpp, src/SpecialManager.h,
- src/StreamReader.cpp, src/StreamReader.h, src/StreamWriter.cpp,
- src/StreamWriter.h, src/Subfont.cpp, src/Subfont.h, src/System.cpp,
- src/System.h, src/TFM.cpp, src/TFM.h, src/TensorProductPatch.cpp,
- src/TensorProductPatch.h, src/Terminal.cpp, src/Terminal.h,
- src/ToUnicodeMap.cpp, src/ToUnicodeMap.h, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h, src/TriangularPatch.cpp, src/TriangularPatch.h,
- src/Unicode.cpp, src/Unicode.h, src/VFActions.h, src/VFReader.cpp,
- src/VFReader.h, src/VectorIterator.h, src/VectorStream.h,
- src/XMLDocument.cpp, src/XMLDocument.h, src/XMLNode.cpp, src/XMLNode.h,
- src/XMLString.cpp, src/XMLString.h, src/dvisvgm.cpp, src/macros.h,
- src/options.dtd, src/options.xml, src/psdefs.cpp, src/types.h,
- tests/BezierTest.cpp, tests/BitmapTest.cpp, tests/BoundingBoxTest.cpp,
- tests/CMapReaderTest.cpp, tests/CMapTest.cpp, tests/CRC32Test.cpp,
- tests/CalculatorTest.cpp, tests/ColorSpecialTest.cpp,
- tests/ColorTest.cpp, tests/CommandLineTest.cpp,
- tests/DependencyGraphTest.cpp, tests/DirectoryTest.cpp,
- tests/DvisvgmSpecialTest.cpp, tests/FileFinderTest.cpp,
- tests/FilePathTest.cpp, tests/FileSystemTest.cpp,
- tests/FontManagerTest.cpp, tests/FontMapTest.cpp,
- tests/GFGlyphTracerTest.cpp, tests/GFReaderTest.cpp,
- tests/GraphicsPathTest.cpp, tests/LengthTest.cpp, tests/Makefile.am,
- tests/MapLineTest.cpp, tests/MatrixTest.cpp,
- tests/MessageExceptionTest.cpp, tests/PSInterpreterTest.cpp,
- tests/PageRagesTest.cpp, tests/PageSizeTest.cpp, tests/PairTest.cpp,
- tests/RangeMapTest.cpp, tests/SVGOutputTest.cpp,
- tests/ShadingPatchTest.cpp, tests/SplittedCharInputBufferTest.cpp,
- tests/StreamInputBufferTest.cpp, tests/StreamReaderTest.cpp,
- tests/StreamWriterTest.cpp, tests/SubfontTest.cpp,
- tests/TensorProductPatchTest.cpp, tests/ToUnicodeMapTest.cpp,
- tests/TriangularPatchTest.cpp, tests/TypesTest.cpp,
- tests/UnicodeTest.cpp, tests/VectorIteratorTest.cpp,
- tests/VectorStreamTest.cpp, tests/XMLNodeTest.cpp,
- tests/XMLStringTest.cpp, tests/check-conv, tests/create-makefile,
- tests/normalize.xsl:
- updated year in copyright statements to 2016
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.14.1
-
-2015-12-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.h:
- reset PS graphics state at end of every DVI page
-
-2015-12-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.14
-
- * NEWS:
- updated NEWS
-
-2015-12-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- added evaluation of PSTricks specials 'pst:' and 'PST:'
-
-2015-12-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp:
- lookup files in the current working directory before searching the texmf
- tree
-
- * src/GraphicsPath.h, tests/GraphicsPathTest.cpp:
- fixed memory issue in class GraphicsPath<T>
-
-2015-12-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/EPSToSVG.h,
- src/PSPreviewFilter.cpp, src/PSPreviewFilter.h, src/PsSpecialHandler.cpp,
- src/SpecialActions.h, src/dvisvgm.cpp:
- added option --bbox=preview; adapt preview data if --bbox=min
-
-2015-12-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp:
- return entire kpathsea version string if it doesn't start with
- 'kpathsea'
-
- * tests/GhostscriptTest.cpp:
- prevent opening a graphics window when running GhostscriptTest
-
-2015-12-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.13
-
- * NEWS:
- updated NEWS
-
- * clipper/clipper.cpp, clipper/clipper.hpp:
- replaced DOS line endings of the Clipper sources to Unix ones
-
-2015-12-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp, src/Font.h, src/Glyph.h, src/GraphicPath.h,
- src/GraphicsPath.h, src/Makefile.am, src/PathClipper.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/ShadingPatch.h,
- src/TensorProductPatch.cpp, src/TensorProductPatch.h,
- src/TpicSpecialHandler.cpp, src/TriangularPatch.cpp,
- src/TriangularPatch.h, tests/GraphicPathTest.cpp,
- tests/GraphicsPathTest.cpp, tests/Makefile.am,
- tests/TensorProductPatchTest.cpp, tests/TriangularPatchTest.cpp:
- renamed class GraphicPath to GraphicsPath
-
-2015-11-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- added a couple of links to the manpage
-
- * src/GraphicPath.h, src/PsSpecialHandler.cpp:
- remove redundant moveto commands from graphics paths
-
-2015-11-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVGActions.cpp, src/EPSToSVG.cpp:
- remove progress message before printing a PS error message
-
- * src/DVIToSVGActions.cpp, src/DVIToSVGActions.h:
- removed redundant methods
-
-2015-11-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- added evaluation of PS operators ashow, awidthshow, and widthshow (fixes
- #49)
-
- * xxHash/xxhash.c:
- updated xxHash to version r42
-
-2015-11-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp, src/psdefs.cpp:
- minor code cleanup and reordering
-
- * src/psdefs.cpp:
- reduce rounding errors produced by PS operator 'charpath'
-
- * src/psdefs.cpp:
- propagate call of PS operator 'setcolor' to the PS handler
-
-2015-11-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.12
-
- * NEWS:
- updated NEWS
-
-2015-11-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontManager.cpp:
- removed redundant #include
-
- * src/FontEngine.cpp:
- treat character code as character index if no font mapping is set
-
-2015-11-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md:
- updated links to Google Test framework
-
-2015-11-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.cpp, src/Color.h, src/ColorSpecialHandler.cpp,
- src/HtmlSpecialHandler.cpp, tests/ColorTest.cpp:
- renamed Color::setName() to Color::setPSName()
-
- * tests/Makefile.am, tests/ShadingPatch.cpp, tests/ShadingPatchTest.cpp:
- renamed ShadingPatchTest
-
- * doc/dvisvgm.txt.in, src/Color.cpp, src/Color.h, src/CommandLine.cpp,
- src/CommandLine.h, src/DVIToSVGActions.cpp,
- src/DvisvgmSpecialHandler.cpp, src/EmSpecialHandler.cpp,
- src/HtmlSpecialHandler.cpp, src/PSPattern.cpp, src/PsSpecialHandler.cpp,
- src/SVGTree.cpp, src/TpicSpecialHandler.cpp, src/dvisvgm.cpp,
- src/options.xml, tests/ColorTest.cpp:
- added option --colornames to replace RGB color values with SVG color
- names
-
-2015-10-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Process.cpp, src/Process.h:
- fixed invalid access to freed string memory
-
-2015-10-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in:
- minor improvements of the manual page
-
-2015-09-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, README, README.md:
- updated NEWS and README files
-
-2015-09-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.11
-
-2015-09-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp, src/ToUnicodeMap.cpp, src/Unicode.cpp, src/Unicode.h,
- tests/UnicodeTest.cpp:
- improved handling of invalid Unicode points
-
- * src/Font.cpp, src/Unicode.cpp, src/Unicode.h, tests/UnicodeTest.cpp:
- renamed Unicode::psName2Codepoint to Unicode::psNameToCodepoint
-
-2015-09-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp:
- prevent creating 0x00 codepoints if PS character name is unknown
-
- * src/HtmlSpecialHandler.cpp:
- quote XML metacharacters in xlink:title attributes
-
- * src/CmdLineParserBase.h, src/InputReader.h:
- changed 'struct InputReader' to 'class InputReader'
-
-2015-09-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/SVGTree.cpp:
- force creating a new text element after appending a different node to
- the page
-
-2015-08-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md:
- minor updates to README and README.md
-
-2015-07-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/GhostscriptTest.cpp, tests/Makefile.am:
- added GhostscriptTest
-
- * tests/UnicodeTest.cpp:
- improved UnicodeTest
-
- * tests/CommandLineTest.cpp, tests/MessageExceptionTest.cpp:
- use ASSERT_STREQ in tests
-
-2015-07-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md, doc/dvisvgm.txt.in:
- updated links to project website again (relocated to
- dvisvgm.bplaced.net)
-
-2015-07-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md, doc/dvisvgm.txt.in:
- updated info about new project website
-
-2015-07-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.10
-
- * NEWS:
- updated NEWS
-
-2015-07-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * README.md, doc/dvisvgm.txt.in, src/BasicDVIReader.cpp,
- src/BasicDVIReader.h, src/DVIReader.cpp, src/DVIReader.h, src/Font.h,
- src/FontManager.cpp, src/FontManager.h:
- added support for new XDV format 6
-
-2015-07-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md:
- updated README
-
-2015-07-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/dvisvgm.cpp:
- check for option --help before initializing the FileFinder
-
- * src/MiKTeXCom.cpp:
- added some comments to MiKTeXCom.cpp
-
-2015-07-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/BezierTest.cpp:
- removed #include "debug.h" from test
-
- * Makefile.am, configure.ac, xxHash/LICENSE, xxHash/Makefile.am,
- xxHash/xxhash.c, xxHash/xxhash.h:
- added xxHash library (https://github.com/Cyan4973/xxHash)
-
- * src/Font.cpp, src/Makefile.am, src/Unicode.cpp, src/Unicode.h,
- tests/Makefile.am, tests/create-makefile:
- added mapping from character names to unicode for PostScript fonts
-
-2015-04-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml, configure.ac, src/Doxyfile:
- set version to 1.9.2
-
- * NEWS, README.md:
- updated NEWS and README.md
-
- * src/SVGTree.cpp:
- apply --precision settings to font-size attributes too
-
-2015-04-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/SVGOutputTest.cpp:
- remove output files created by SVGOutputTest::getPageStream()
-
-2015-04-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * README.md:
- minor additions to README.md
-
-2015-03-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GlyphTracerMessages.h:
- always skip tracer message if no glyphs have been traced
-
- * src/GFReader.cpp, src/GFReader.h, tests/GFReaderTest.cpp:
- improved GFReaderTest
-
-2015-03-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GFGlyphTracer.cpp, src/GFTracer.h, tests/GFGlyphTracerTest.cpp,
- tests/Makefile.am:
- ensure GFGlyphTracer::executeChar() returns the correct status; added
- GFGlyphtracerTest
-
- * src/DVIToSVG.cpp:
- avoid retracing of fonts if option --no-fonts is given
-
-2015-03-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/StreamWriterTest.cpp:
- fixed StreamWriterTest
-
- * tests/SVGOutputTest.cpp:
- improved SVGOutputTest
-
-2015-03-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/Makefile.am, tests/ShadingPatch.cpp:
- added ShadingPatchTest
-
-2015-03-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/ShadingPatch.h, src/TensorProductPatch.cpp,
- src/TensorProductPatch.h, src/TriangularPatch.cpp, src/TriangularPatch.h,
- tests/Makefile.am, tests/TriangularPatchTest.cpp:
- added test for class TriangularPatch
-
- * src/Bezier.cpp, src/Bezier.h, src/TensorProductPatch.cpp,
- src/TriangularPatch.cpp, src/TriangularPatch.h,
- tests/TriangularPatchTest.cpp:
- renamed method pointAt() of class Bezier and TriangularPatch to
- valueAt()
-
- * src/TensorProductPatch.h, tests/TensorProductPatchTest.cpp:
- improved TensorProductPatchTest
-
-2015-03-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * m4/ax_code_coverage.m4:
- added missing file ax_code_coverage.m4
-
- * autogen.sh:
- updated autogen.sh
-
-2015-03-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLNode.cpp, src/XMLNode.h, tests/Makefile.am,
- tests/XMLNodeTest.cpp:
- fixed a few issues in class XMLElementNode; added XMLNodeTest
-
- * .gitignore, Makefile.am, clipper/Makefile.am, configure.ac,
- src/Makefile.am, tests/Makefile.am, tests/create-makefile:
- extended build system to generate coverage reports
-
- * tests/Makefile.am, tests/VectorIteratorTest.cpp:
- added VectorIteratorTest
-
-2015-03-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/XMLStringTest.cpp:
- fixed test class name of XMLString
-
-2015-03-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/CRC32Test.cpp:
- added test for 'compute' methods of class CRC32
-
- * tests/GraphicPathTest.cpp:
- extended tests of class GraphicPath
-
-2015-03-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Unicode.cpp, tests/Makefile.am, tests/UnicodeTest.cpp:
- fixed UTF-8 encoding of 0xfffe and 0xffff; added UnicodeTest
-
- * tests/StreamReaderTest.cpp:
- exteded StreamReader tests
-
-2015-03-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/XMLString.cpp, tests/Makefile.am, tests/XMLStringTest.cpp:
- fixed conversion from C and C++ strings to XMLString; added
- XMLStringTest
-
- * .gitignore:
- added .gitignore
-
-2015-03-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bitmap.cpp, src/Bitmap.h, tests/BitmapTest.cpp,
- tests/GFReaderTest.cpp, tests/Makefile.am:
- small refactorings of class Bitmap; added tests for class Bitmap
-
- * src/BoundingBox.cpp, src/BoundingBox.h, tests/BoundingBoxTest.cpp:
- improved BoundingBox tests
-
-2015-03-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bezier.cpp, src/BoundingBox.cpp, src/BoundingBox.h,
- tests/BezierTest.cpp, tests/Makefile.am:
- fixed Bezier::reduceDegree() for degree 1 and added BezierTest class
-
-2015-03-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml:
- Travis conf: added configuration data for Coverity Scan
-
- * README.md:
- added license badge to README.md
-
-2015-02-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, README.md:
- updated NEWS and README.md
-
-2015-02-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Calculator.cpp:
- replaced while(1) with for(;;) for consistency
-
-2015-02-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/Doxyfile:
- set version to 1.9.1
-
-2015-02-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Ghostscript.cpp:
- disable lookup of GS library in Windows registry for old gcc versions
-
-2015-02-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/EPSToSVG.cpp, src/Makefile.am, src/SVGOutput.cpp,
- src/SVGOutput.h, src/SVGOutputBase.h, src/dvisvgm.cpp:
- moved class SVGOutput to separate compilation unit
-
- * doc/dvisvgm.txt.in, src/SVGOutput.cpp, src/SVGOutput.h,
- tests/Makefile.am, tests/SVGOutputTest.cpp, tests/create-makefile:
- added width specifiers and exression evaluation to --output patterns
-
- * doc/dvisvgm.txt.in:
- minor additions and formatting changes of the manpage
-
- * doc/Makefile.am, doc/conf-dblatex-man.xsl, doc/conf-dblatex-pdf.xsl,
- doc/dvisvgm.sty, doc/dvisvgm.xpr, doc/tweak-dblatex-pdf.xsl:
- improved the layout of the pdf manpage
-
- * doc/Makefile.am, doc/db2html.xsl, doc/dvisvgm.css:
- create html manpage with a separate stylesheet matching the new website
- theme
-
-2015-02-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * .travis.yml:
- added configuration file for Travis CI
-
- * .travis.yml:
- added dependency 'python-lxml' to Travis configuration
-
- * .travis.yml:
- added dependency 'libgtest-dev' to Travis configuration; ensure call of
- 'make check'
-
- * .travis.yml:
- Travis conf: added missing call of 'configure'
-
- * .travis.yml:
- Travis conf: build gtest libraries since Ubuntu doesn't provide the
- binaries
-
-2015-02-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TpicSpecialHandler.cpp:
- use constant M_PI rather than computing PI locally
-
-2015-02-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * README, README.md:
- updated README and README.md
-
-2015-01-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/ShadingPatch.h:
- removed redundant methods from class ShadingPatch
-
-2015-01-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TensorProductPatch.cpp, src/TriangularPatch.cpp:
- renamed static helper function clip() to snap()
-
-2015-01-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.cpp:
- resolved ambiguous call of pow (patch by Peter Breitenlohner)
-
-2015-01-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/VectorIterator.h:
- removed redundant method VectorIterator::distanceToLast()
-
-2014-12-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, README, README.md, configure.ac, doc/Makefile.am,
- doc/dvisvgm.txt.in, src/BasicDVIReader.cpp, src/BasicDVIReader.h,
- src/Bezier.cpp, src/Bezier.h, src/BgColorSpecialHandler.cpp,
- src/BgColorSpecialHandler.h, src/Bitmap.cpp, src/Bitmap.h,
- src/BoundingBox.cpp, src/BoundingBox.h, src/CMap.cpp, src/CMap.h,
- src/CMapManager.cpp, src/CMapManager.h, src/CMapReader.cpp,
- src/CMapReader.h, src/CRC32.cpp, src/CRC32.h, src/Calculator.cpp,
- src/Calculator.h, src/CharMapID.cpp, src/CharMapID.h, src/Character.h,
- src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/Color.cpp,
- src/Color.h, src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/CommandLine.cpp, src/CommandLine.h, src/DLLoader.cpp, src/DLLoader.h,
- src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp,
- src/DVIToSVG.h, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/DependencyGraph.h, src/Directory.cpp, src/Directory.h,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- src/EPSFile.cpp, src/EPSFile.h, src/EPSToSVG.cpp, src/EPSToSVG.h,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.h, src/EncFile.cpp,
- src/EncFile.h, src/FileFinder.cpp, src/FileFinder.h, src/FilePath.cpp,
- src/FilePath.h, src/FileSystem.cpp, src/FileSystem.h, src/Font.cpp,
- src/Font.h, src/FontCache.cpp, src/FontCache.h, src/FontEncoding.cpp,
- src/FontEncoding.h, src/FontEngine.cpp, src/FontEngine.h,
- src/FontManager.cpp, src/FontManager.h, src/FontMap.cpp, src/FontMap.h,
- src/FontMetrics.cpp, src/FontMetrics.h, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.h, src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp,
- src/GFTracer.h, src/Ghostscript.cpp, src/Ghostscript.h, src/Glyph.h,
- src/GlyphTracerMessages.h, src/GraphicPath.h, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.h, src/InputBuffer.cpp, src/InputBuffer.h,
- src/InputReader.cpp, src/InputReader.h, src/JFM.cpp, src/JFM.h,
- src/Length.cpp, src/Length.h, src/Makefile.am, src/MapLine.cpp,
- src/MapLine.h, src/Matrix.cpp, src/Matrix.h, src/Message.cpp,
- src/Message.h, src/MessageException.h, src/MetafontWrapper.cpp,
- src/MetafontWrapper.h, src/MiKTeXCom.cpp, src/MiKTeXCom.h,
- src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.h,
- src/NumericRanges.h, src/PSFilter.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PSPattern.cpp, src/PSPattern.h,
- src/PSPreviewFilter.cpp, src/PSPreviewFilter.h, src/PageRanges.cpp,
- src/PageRanges.h, src/PageSize.cpp, src/PageSize.h, src/Pair.h,
- src/PathClipper.cpp, src/PathClipper.h, src/PdfSpecialHandler.cpp,
- src/PdfSpecialHandler.h, src/PreScanDVIReader.cpp,
- src/PreScanDVIReader.h, src/Process.cpp, src/Process.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/RangeMap.cpp,
- src/RangeMap.h, src/SVGOutputBase.h, src/SVGTree.cpp, src/SVGTree.h,
- src/ShadingPatch.cpp, src/ShadingPatch.h, src/SignalHandler.cpp,
- src/SignalHandler.h, src/SpecialActions.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h, src/StreamReader.cpp,
- src/StreamReader.h, src/StreamWriter.cpp, src/StreamWriter.h,
- src/Subfont.cpp, src/Subfont.h, src/System.cpp, src/System.h,
- src/TFM.cpp, src/TFM.h, src/TensorProductPatch.cpp,
- src/TensorProductPatch.h, src/Terminal.cpp, src/Terminal.h,
- src/ToUnicodeMap.cpp, src/ToUnicodeMap.h, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h, src/TriangularPatch.cpp, src/TriangularPatch.h,
- src/Unicode.cpp, src/Unicode.h, src/VFActions.h, src/VFReader.cpp,
- src/VFReader.h, src/VectorIterator.h, src/VectorStream.h,
- src/XMLDocument.cpp, src/XMLDocument.h, src/XMLNode.cpp, src/XMLNode.h,
- src/XMLString.cpp, src/XMLString.h, src/dvisvgm.cpp, src/macros.h,
- src/options.dtd, src/options.xml, src/psdefs.cpp, src/types.h,
- tests/BoundingBoxTest.cpp, tests/CMapReaderTest.cpp, tests/CMapTest.cpp,
- tests/CRC32Test.cpp, tests/CalculatorTest.cpp,
- tests/ColorSpecialTest.cpp, tests/ColorTest.cpp,
- tests/CommandLineTest.cpp, tests/DependencyGraphTest.cpp,
- tests/DirectoryTest.cpp, tests/DvisvgmSpecialTest.cpp,
- tests/FileFinderTest.cpp, tests/FilePathTest.cpp,
- tests/FileSystemTest.cpp, tests/FontManagerTest.cpp,
- tests/FontMapTest.cpp, tests/GFReaderTest.cpp, tests/GraphicPathTest.cpp,
- tests/LengthTest.cpp, tests/Makefile.am, tests/MapLineTest.cpp,
- tests/MatrixTest.cpp, tests/MessageExceptionTest.cpp,
- tests/PSInterpreterTest.cpp, tests/PageRagesTest.cpp,
- tests/PageSizeTest.cpp, tests/PairTest.cpp, tests/RangeMapTest.cpp,
- tests/SplittedCharInputBufferTest.cpp, tests/StreamInputBufferTest.cpp,
- tests/StreamReaderTest.cpp, tests/StreamWriterTest.cpp,
- tests/SubfontTest.cpp, tests/TensorProductPatchTest.cpp,
- tests/ToUnicodeMapTest.cpp, tests/TypesTest.cpp,
- tests/VectorStreamTest.cpp, tests/check-conv, tests/create-makefile,
- tests/normalize.xsl:
- updated year in copyright statements to 2015
-
-2014-12-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/ShadingPatch.h,
- src/TensorProductPatch.cpp, src/TensorProductPatch.h,
- src/TriangularPatch.cpp, src/TriangularPatch.h, src/dvisvgm.cpp,
- src/options.xml:
- added command-line options --grad-overlap, --grad-segments, and
- --grad-simplify
-
- * src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/EPSToSVG.cpp,
- src/EPSToSVG.h, src/SpecialActions.h, src/SpecialManager.cpp,
- src/dvisvgm.cpp:
- show PS instruction counter when processing EPS files with option
- --progress
-
- * src/dvisvgm.cpp:
- clear line before printing the message about user interruption to avoid
- trailing text fragments
-
- * configure.ac, src/Doxyfile:
- set version to 1.9
-
- * NEWS:
- updated NEWS
-
-2014-12-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp:
- check validity of DVI file before trying to collect the BOPs
-
-2014-12-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Makefile.am, src/TriangularPatch.cpp, src/TriangularPatch.h:
- added class to compute triangular shading patches
-
- * src/Makefile.am, src/PsSpecialHandler.cpp, src/ShadingPatch.cpp,
- src/ShadingPatch.h, src/TensorProductPatch.cpp, src/TensorProductPatch.h:
- extracted common interface class ShadingPatch from TensorProductPatch
-
- * src/Color.cpp, src/Color.h, src/Makefile.am, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/VectorIterator.h, src/psdefs.cpp:
- extended PS operator 'shfill' to support triangular patch meshes
-
-2014-12-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.h:
- added processing of the optional 'BBox' entry in a PS shading dictionary
-
-2014-12-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CommandLine.cpp, src/CommandLine.h, src/dvisvgm.cpp,
- src/options.xml:
- disable option --clipjoin if PS support is disabled
-
- * src/Color.cpp, tests/ColorSpecialTest.cpp, tests/ColorTest.cpp:
- fixed CMYK to RGB approximation
-
-2014-11-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSInterpreter.cpp, src/PSInterpreter.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/psdefs.cpp, tests/PSInterpreterTest.cpp:
- added evaluation of PS operator shfill (Coons and tensor product patches
- only)
-
-2014-11-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * README.md:
- added list of features and a download button to README.md
-
-2014-11-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * clipper/clipper.cpp, clipper/clipper.hpp:
- updated clipper library to version 6.2.1
-
-2014-11-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bezier.cpp, src/Bezier.h, src/BoundingBox.h, src/GraphicPath.h,
- src/Makefile.am, src/TensorProductPatch.cpp, src/TensorProductPatch.h,
- tests/Makefile.am, tests/TensorProductPatchTest.cpp:
- added code to compute tensor-product patches required for gradient fills
-
-2014-11-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Matrix.cpp:
- use constant M_PI rather than defining PI locally
-
-2014-10-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.cpp, src/Color.h, src/ColorSpecialHandler.cpp,
- src/PsSpecialHandler.cpp, tests/ColorTest.cpp:
- replaced float by double in class Color
-
- * src/Color.cpp, src/Color.h, src/ColorSpecialHandler.cpp,
- src/DVIReader.cpp, src/HtmlSpecialHandler.cpp, src/PsSpecialHandler.cpp,
- tests/ColorTest.cpp:
- renamed RGB setters/getters of class Color
-
- * src/Color.cpp, src/Color.h:
- replaced vectors with valarrays in class Color
-
- * src/Color.cpp, src/Color.h, tests/ColorTest.cpp:
- added deltaE and L*a*b* color space methods to class Color
-
-2014-10-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * clipper/clipper.cpp, clipper/clipper.hpp:
- updated clipper library to version 6.2.0
-
- * src/GraphicPath.h, src/PathClipper.cpp, src/PathClipper.h,
- src/XMLNode.h:
- fixed a couple of doxygen comments; removed redundant
- PathClipperException
-
-2014-10-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CommandLine.cpp:
- updated CommandLine.cpp with description of option --no-merge
-
- * src/Ghostscript.cpp:
- try to lookup the location of the GS DLL in the Windows registry
-
-2014-10-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/options.xml:
- added info about option --no-merge to the manpage
-
-2014-09-24 Khaled Hosny <khaled.hosny@hindawi.com>
-
- * src/Makefile.am:
- Add an opt2cpp Python script
-
-A very ugly script that should work as a
- drop in replacement for the
-opt2cpp XSLT.
-
-2014-09-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.h:
- ensure that colors set by a color special are always considered by the
- PS handler
-
-2014-09-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BasicDVIReader.cpp, src/DVIReader.cpp, src/FontCache.cpp,
- src/GFReader.cpp, src/dvisvgm.cpp:
- replaced namespace 'ios_base' with 'ios'
-
-2014-08-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- added missing whitespace boundaries in PS code
-
- * src/FontEngine.cpp, tests/PageRagesTest.cpp:
- removed unused static functions
-
- * configure.ac, src/Doxyfile:
- set version to 1.8.1
-
- * NEWS:
- updated NEWS
-
-2014-08-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/DependencyGraph.h, src/Makefile.am,
- src/SVGTree.cpp, src/SVGTree.h, src/XMLNode.cpp, src/XMLNode.h,
- tests/DependencyGraphTest.cpp, tests/Makefile.am:
- remove redundant clipPath elements from generated SVG files
-
-2014-08-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSPattern.cpp, src/XMLNode.cpp, src/XMLNode.h:
- renamed XMLElementNode::findDescendants() and made it constant
-
-2014-08-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/Makefile.am, tests/create-makefile:
- link tests against FreeType library
-
- * README.md:
- minor fixed to README.md
-
-2014-08-10 Khaled Hosny <khaledhosny@eglug.org>
-
- * configure.ac, src/Makefile.am:
- Don't override CXXFLAGS in configure script
-
-Breaks standard things
- like:
-
- make CXXFLAGS="-g -O0 -pg"
-
- * configure.ac, src/Makefile.am:
- Don't override CPPFLAGS and LDFLAGS in configure
-
-For the same reasons
- as the previous commit
-
-2014-08-07 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/dvisvgm.cpp:
- removed old code that moved cache files to new location
-
- * src/XMLDocument.cpp, src/XMLDocument.h, src/XMLNode.cpp, src/XMLNode.h:
- removed unused emit() methods from XML classes
-
-2014-07-31 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/PsSpecialHandler.cpp, src/psdefs.cpp:
- prevent side-effects caused by bop/eop operators present in PS specials
-
-2014-07-29 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * NEWS:
- updated NEWS
-
-2014-07-28 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/GraphicPath.h, src/PSInterpreter.cpp, src/PSInterpreter.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/psdefs.cpp,
- tests/PSInterpreterTest.cpp:
- added evaluation of PS operator 'clippath' (copies clipping path into
- graphics path)
-
- * configure.ac, src/Doxyfile:
- set version to 1.8
-
-2014-07-26 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Font.cpp, src/GFGlyphTracer.cpp, src/GraphicPath.h,
- src/PsSpecialHandler.cpp:
- renamed GraphicPath::newpath() to GraphicPath::clear()
-
-2014-07-24 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/InputReader.cpp, src/PSInterpreter.cpp:
- ensure that InputReader::compare() checks whole and not just partial
- words
-
-2014-07-22 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.h, src/dvisvgm.cpp:
- prevent throwing a DVIException when option -l is present
-
- * Makefile.am, clipper/License.txt, clipper/Makefile.am,
- clipper/clipper.cpp, clipper/clipper.hpp, configure.ac, src/Makefile.am:
- added slightly modified sources of clipper library (computes boolops on
- polygons)
-
- * src/GraphicPath.h:
- added field to store the winding rule to class GraphicPath
-
- * README, README.md, src/Bezier.cpp, src/Bezier.h, src/GraphicPath.h,
- src/Makefile.am, src/PathClipper.cpp, src/PathClipper.h, src/dvisvgm.cpp:
- added class PathClipper to compute intersections of closed curved
- graphics paths
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/dvisvgm.cpp,
- src/options.xml:
- added option --clippath to compute the intersection of clipping paths
-
-2014-07-20 Khaled Hosny <khaledhosny@eglug.org>
-
- * src/FontEngine.cpp:
- Free existing FT_Face before creating a new one
-
-FontEngine was never
- destroying the FT_Face's it creates, except the
-very last one that was
- destroyed by the destructor. For some reason,
-this was causing
- FT_New_Face() to fail on Windows after processing the
-first hundred or so
- pages of DVI files.
-
-2014-07-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/GraphicPath.h, src/PsSpecialHandler.cpp, src/SVGTree.cpp,
- src/SVGTree.h, src/dvisvgm.cpp, src/options.xml,
- tests/GraphicPathTest.cpp:
- added option to create relative rather than absolute path commands
-
- * src/TpicSpecialHandler.cpp:
- TPIC handler: use class GraphicPath to create SVG path commands
-
-2014-07-07 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVGActions.h, src/Doxyfile, src/HtmlSpecialHandler.h,
- src/RangeMap.cpp, src/SpecialManager.cpp, src/ToUnicodeMap.cpp:
- fixed a couple of broken doxygen comments
-
-2014-06-25 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Ghostscript.cpp:
- get proper name of Ghostscript library when building for Cygwin
-
-2014-06-23 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * README.md:
- added markdown version of README
-
-2014-06-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- suppress output of PS operator ':show' to prevent the creation of
- additional graphic elements
-
-2014-06-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/SpecialManager.cpp, src/SpecialManager.h:
- removed redundant method SpecialManager::leavePSHeaderSection()
-
- * doc/dvisvgm.txt.in, src/DVIToSVGActions.cpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- tests/DvisvgmSpecialTest.cpp, tests/Makefile.am:
- added/improved dvisvgm::raw* specials
-
- * src/InputReader.cpp:
- added missing include
-
- * configure.ac, src/Doxyfile:
- set version to 1.7
-
- * NEWS:
- updated NEWS
-
-2014-06-12 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/XMLNode.cpp, src/XMLNode.h:
- added clear() to XMLNode classes; added XMLTextNode::getText()
-
-2014-06-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/InputReader.cpp, src/InputReader.h:
- added InputReader::getLine()
-
- * src/DVIToSVG.cpp, src/SpecialHandler.h, src/SpecialManager.cpp,
- src/SpecialManager.h:
- added listener to allow SpecialHandlers being notified when
- pre-processing has finished
-
-2014-06-10 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/SpecialActions.h, tests/ColorSpecialTest.cpp:
- renamed class SpecialEmptyActions to EmptySpecialActions
-
-2014-06-09 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIReader.cpp, src/Ghostscript.cpp:
- removed unused variable; call Ghostscript::exit() with explicitely given
- object
-
- * src/DVIToSVG.h, src/SpecialManager.h:
- removed redundant definition of assignment operators
-
-2014-06-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BasicDVIReader.cpp, src/BasicDVIReader.h, src/DVIReader.cpp,
- src/DVIReader.h, src/Makefile.am:
- moved basic funtionality of DVIReader to base class BasicDVIReader
-
- * src/BasicDVIReader.h, src/DVIReader.cpp, src/DVIToSVG.cpp,
- src/DVIToSVG.h, src/dvisvgm.cpp:
- moved call of executePreamble() and executePostamble() from DVIToSVG to
- DVIReader
-
- * src/DVIActions.h, src/DVIReader.cpp, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Makefile.am,
- src/PreScanDVIReader.cpp, src/PreScanDVIReader.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h, src/StreamReader.cpp,
- src/StreamReader.h:
- pre-process DVI file to collect required data not present in the page
- ranges to be converted
-
- * src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/SpecialManager.cpp, src/SpecialManager.h, src/dvisvgm.cpp:
- made class SpecialManager a singleton
-
- * src/BasicDVIReader.h, src/DVIToSVG.cpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h:
- allow to replace the DVI reader assigned to an instance of
- DVIToSVGActions
-
- * doc/dvisvgm.txt.in, src/BasicDVIReader.h, src/DVIToSVG.cpp,
- src/DVIToSVG.h, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/EPSToSVG.cpp, src/EPSToSVG.h, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.h, src/PreScanDVIReader.cpp,
- src/PreScanDVIReader.h, src/SpecialActions.h:
- process hyperref anchors and links across pages
-
- * src/BasicDVIReader.cpp, src/BasicDVIReader.h, src/Bitmap.h,
- src/BoundingBox.h, src/CMap.h, src/CMapManager.cpp, src/CMapManager.h,
- src/CMapReader.h, src/CRC32.h, src/Calculator.cpp, src/Calculator.h,
- src/CmdLineParserBase.h, src/Color.cpp, src/ColorSpecialHandler.cpp,
- src/ColorSpecialHandler.h, src/CommandLine.cpp, src/CommandLine.h,
- src/DLLoader.h, src/DVIReader.cpp, src/DVIToSVG.h, src/DVIToSVGActions.h,
- src/Directory.h, src/DvisvgmSpecialHandler.h, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.h, src/EncFile.h, src/FileFinder.h,
- src/FileSystem.cpp, src/Font.cpp, src/Font.h, src/FontCache.h,
- src/FontEncoding.cpp, src/FontEngine.cpp, src/FontEngine.h,
- src/FontManager.cpp, src/FontManager.h, src/FontMap.cpp, src/FontMap.h,
- src/GFGlyphTracer.cpp, src/GFGlyphTracer.h, src/GFReader.cpp,
- src/GFReader.h, src/GFTracer.h, src/Ghostscript.cpp, src/Ghostscript.h,
- src/GraphicPath.h, src/HtmlSpecialHandler.h, src/InputBuffer.cpp,
- src/InputBuffer.h, src/JFM.h, src/Length.cpp, src/Length.h,
- src/MapLine.cpp, src/MapLine.h, src/Matrix.cpp, src/Matrix.h,
- src/MessageException.h, src/MetafontWrapper.cpp, src/MetafontWrapper.h,
- src/NoPsSpecialHandler.h, src/NumericRanges.h, src/PSInterpreter.h,
- src/PSPattern.h, src/PSPreviewFilter.h, src/PageRanges.h, src/PageSize.h,
- src/Pair.h, src/PdfSpecialHandler.cpp, src/PdfSpecialHandler.h,
- src/Process.h, src/PsSpecialHandler.cpp, src/PsSpecialHandler.h,
- src/SVGTree.h, src/SignalHandler.h, src/SpecialActions.h,
- src/SpecialManager.h, src/StreamWriter.h, src/Subfont.cpp, src/Subfont.h,
- src/TFM.h, src/ToUnicodeMap.h, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h, src/VFReader.cpp, src/VectorStream.h,
- src/XMLDocument.h, src/XMLNode.h, src/XMLString.cpp, src/XMLString.h,
- src/dvisvgm.cpp, src/types.h:
- replaced leading spaces by tabs; removed trailing whitespace
-
-2014-06-03 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIReader.cpp, src/DVIReader.h:
- removed redundant variable DVIReader::_prevBop
-
- * src/PsSpecialHandler.cpp:
- fixed incorrect extent values shown when applying a preview bbox
- (bp->pt)
-
-2014-06-01 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/EPSFile.cpp, src/GFReader.cpp:
- replaced relative variant of seekg() by absolute one where possible
-
- * src/DVIReader.cpp, src/DVIReader.h:
- removed redundant code from DVIReader::evalCommand()
-
-2014-05-31 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIReader.cpp, src/VFReader.cpp:
- few code adjustments
-
- * src/DVIReader.cpp, src/StreamReader.cpp, src/StreamReader.h,
- src/VFReader.cpp:
- removed StreamReader::in()
-
- * src/DVIReader.cpp, src/StreamReader.h, src/VFReader.cpp:
- renamed some methods of class StreamReader
-
-2014-05-29 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIReader.cpp, src/DVIReader.h, src/StreamReader.h:
- collect all DVI BOP offsets to reach them quickly
-
- * src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h:
- removed DVIReader::_totalPages; use number of BOP offsets instead
-
- * src/DVIReader.cpp, src/DVIReader.h, src/dvisvgm.cpp:
- simplified computation of progress ratio
-
- * src/DVIReader.cpp, src/DVIReader.h:
- simplified DVIReader::executePage; removed DVIReader::executePages
-
-2014-05-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp, src/Makefile.am, src/Unicode.cpp, src/Unicode.h,
- src/XMLString.cpp:
- moved unicode-related funtions to separate class
-
- * src/CharMap.cpp, src/CharMap.h, src/Font.cpp, src/FontEngine.cpp,
- src/FontEngine.h:
- removed redundant method CharMap::invert()
-
- * src/CMap.cpp, src/CMap.h, src/Makefile.am, src/RangeMap.cpp,
- src/RangeMap.h, tests/Makefile.am, tests/RangeMapTest.cpp:
- extracted class RangeMap previously implemented as part of SegmentedCMap
-
- * src/RangeMap.cpp:
- fixed right joins of touching ranges in a RangeMap
-
- * src/CharMap.cpp, src/CharMap.h, src/Font.cpp, src/Font.h,
- src/FontEngine.cpp, src/FontEngine.h, src/Makefile.am:
- replaced class CharMap with more generic class RangeMap
-
- * src/DVIToSVG.cpp, src/Makefile.am, src/NumericRanges.h,
- src/PageRanges.cpp, src/PageRanges.h, tests/PageRagesTest.cpp:
- extracted functionality of class PageRanges to separate class
- NumericRanges
-
- * src/Makefile.am, src/RangeMap.h, src/ToUnicodeMap.cpp,
- src/ToUnicodeMap.h, tests/Makefile.am, tests/ToUnicodeMapTest.cpp:
- added class ToUnicodeMap to handle mappings from character indexes to
- unicode points
-
- * src/Makefile.am:
- Makefile: put source files on separate lines
-
-2014-04-30 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CharMapID.cpp, src/CharMapID.h, src/DVIReader.cpp, src/Font.cpp,
- src/Font.h, src/FontEngine.cpp, src/FontEngine.h:
- try to add unicode mappings missing in a font's cmap table
-
-2014-04-29 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/SVGTree.cpp:
- don't add unnecessary element 'missing-glyph' to SVG files
-
-2014-04-24 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/options.xml:
- renamed argument of option --linkmark from 'type' to 'style'
-
-2014-04-23 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/System.h:
- removed redundant semicolon
-
-2014-04-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/Doxyfile:
- set version to 1.6
-
- * NEWS:
- updated NEWS
-
-2014-04-21 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/DVIToSVG.cpp, src/EPSToSVG.cpp:
- removed date and machine triplet from generated SVG files
-
-2014-04-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.h:
- added optional selection of line/box colors to option --linkmark
-
-2014-04-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CommandLine.h, src/DVIToSVG.cpp, src/EPSToSVG.cpp:
- don't link GS messages unnecessarily if HAVE_LIBGS is defined
-
- * src/DVIReader.h, src/DVIToSVGActions.h, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.h, src/SpecialActions.h:
- only split hyperlink boxes on line breaks
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/options.xml:
- changed default argument of option --linkmark to 'box'
-
-2014-04-16 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DLLoader.cpp:
- prevent calling dlopen() if the length of the string argument is 0
-
- * doc/dvisvgm.txt.in, src/Ghostscript.cpp:
- if libgs is loaded during runtime, look for libgs.so.X instead of
- libgs.so
-
- * src/Ghostscript.cpp, src/dvisvgm.cpp:
- moved lookup of MiKTeX's GS DLL to get_libgs()
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/SVGTree.cpp, src/SVGTree.h, src/dvisvgm.cpp, src/options.xml:
- added command-line option --zoom
-
-2014-04-11 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CMap.cpp, src/CmdLineParserBase.cpp, src/ColorSpecialHandler.cpp,
- src/DVIReader.cpp, src/DVIToSVGActions.cpp, src/Doxyfile,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- src/EPSFile.cpp, src/EmSpecialHandler.cpp, src/FileFinder.cpp,
- src/FileSystem.cpp, src/Font.cpp, src/FontCache.cpp, src/FontEncoding.h,
- src/FontEngine.cpp, src/FontMap.cpp, src/GraphicPath.h,
- src/PSInterpreter.cpp, src/PageRanges.cpp, src/PsSpecialHandler.cpp,
- src/SVGTree.cpp, src/SVGTree.h, src/SpecialManager.cpp, src/Subfont.cpp,
- src/TFM.cpp, src/TpicSpecialHandler.cpp, src/XMLDocument.cpp,
- src/XMLNode.cpp, src/dvisvgm.cpp:
- fixed issues in the doxygen documentation
-
- * configure.ac, src/Doxyfile:
- set version to 1.5.3
-
- * NEWS:
- updated NEWS
-
-2014-04-09 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVGActions.cpp:
- equalize implementations of moveToX and moveToY
-
- * src/BoundingBox.h, src/DVIActions.cpp, src/DVIActions.h,
- src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/DvisvgmSpecialHandler.cpp, src/EPSToSVG.cpp,
- src/EmSpecialHandler.cpp, src/Font.h, src/FontManager.cpp,
- src/GFGlyphTracer.cpp, src/GFReader.cpp, src/GFTracer.cpp,
- src/GFTracer.h, src/GraphicPath.h, src/HtmlSpecialHandler.h,
- src/Makefile.am, src/PSPattern.cpp, src/PSPreviewFilter.cpp,
- src/PSPreviewFilter.h, src/PageSize.cpp, src/PageSize.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/SVGTree.cpp,
- src/SpecialHandler.h, src/SpecialManager.cpp, src/SpecialManager.h,
- src/TFM.cpp, src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.h,
- src/VFReader.cpp:
- switched internal computations from TeX points (pt) to PS points (bp)
-
-2014-02-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/DVIReader.h:
- ensure updating the SVG cursor position when executing DVI command
- set_rule
-
-2014-01-13 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Ghostscript.cpp:
- check if library given by --libgs is actually a GS library
-
-2014-01-10 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * NEWS:
- updated NEWS
-
-2014-01-03 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileFinder.cpp:
- catch exceptions thrown by MiKTeXCom object
-
- * src/Directory.cpp:
- initialize Directory member variables (Win only)
-
- * src/FileFinder.cpp:
- return 'unknown' if MiKTeX version can't be retrieved
-
- * configure.ac, src/Doxyfile:
- set version to 1.5.2
-
-2014-01-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, README, configure.ac, doc/Makefile.am, doc/dvisvgm.txt.in,
- src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp, src/BoundingBox.h,
- src/CMap.cpp, src/CMap.h, src/CMapManager.cpp, src/CMapManager.h,
- src/CMapReader.cpp, src/CMapReader.h, src/CRC32.cpp, src/CRC32.h,
- src/Calculator.cpp, src/Calculator.h, src/CharMap.cpp, src/CharMap.h,
- src/CharMapID.cpp, src/CharMapID.h, src/Character.h,
- src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/Color.cpp,
- src/Color.h, src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/CommandLine.cpp, src/CommandLine.h, src/DLLoader.cpp, src/DLLoader.h,
- src/DVIActions.cpp, src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/Directory.cpp, src/Directory.h,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- src/EPSFile.cpp, src/EPSFile.h, src/EPSToSVG.cpp, src/EPSToSVG.h,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.h, src/EncFile.cpp,
- src/EncFile.h, src/FileFinder.cpp, src/FileFinder.h, src/FilePath.cpp,
- src/FilePath.h, src/FileSystem.cpp, src/FileSystem.h, src/Font.cpp,
- src/Font.h, src/FontCache.cpp, src/FontCache.h, src/FontEncoding.cpp,
- src/FontEncoding.h, src/FontEngine.cpp, src/FontEngine.h,
- src/FontManager.cpp, src/FontManager.h, src/FontMap.cpp, src/FontMap.h,
- src/FontMetrics.cpp, src/FontMetrics.h, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.h, src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp,
- src/GFTracer.h, src/Ghostscript.cpp, src/Ghostscript.h, src/Glyph.h,
- src/GlyphTracerMessages.h, src/GraphicPath.h, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.h, src/InputBuffer.cpp, src/InputBuffer.h,
- src/InputReader.cpp, src/InputReader.h, src/JFM.cpp, src/JFM.h,
- src/Length.cpp, src/Length.h, src/Makefile.am, src/MapLine.cpp,
- src/MapLine.h, src/Matrix.cpp, src/Matrix.h, src/Message.cpp,
- src/Message.h, src/MessageException.h, src/MetafontWrapper.cpp,
- src/MetafontWrapper.h, src/MiKTeXCom.cpp, src/MiKTeXCom.h,
- src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.h, src/PSFilter.h,
- src/PSInterpreter.cpp, src/PSInterpreter.h, src/PSPattern.cpp,
- src/PSPattern.h, src/PSPreviewFilter.cpp, src/PSPreviewFilter.h,
- src/PageRanges.cpp, src/PageRanges.h, src/PageSize.cpp, src/PageSize.h,
- src/Pair.h, src/PdfSpecialHandler.cpp, src/PdfSpecialHandler.h,
- src/Process.cpp, src/Process.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/SVGOutputBase.h, src/SVGTree.cpp,
- src/SVGTree.h, src/SignalHandler.cpp, src/SignalHandler.h,
- src/SpecialActions.h, src/SpecialHandler.h, src/SpecialManager.cpp,
- src/SpecialManager.h, src/StreamReader.cpp, src/StreamReader.h,
- src/StreamWriter.cpp, src/StreamWriter.h, src/Subfont.cpp, src/Subfont.h,
- src/System.cpp, src/System.h, src/TFM.cpp, src/TFM.h, src/Terminal.cpp,
- src/Terminal.h, src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.h,
- src/VFActions.h, src/VFReader.cpp, src/VFReader.h, src/VectorStream.h,
- src/XMLDocument.cpp, src/XMLDocument.h, src/XMLNode.cpp, src/XMLNode.h,
- src/XMLString.cpp, src/XMLString.h, src/dvisvgm.cpp, src/macros.h,
- src/options.dtd, src/options.xml, src/psdefs.cpp, src/types.h,
- tests/BoundingBoxTest.cpp, tests/CMapReaderTest.cpp, tests/CMapTest.cpp,
- tests/CRC32Test.cpp, tests/CalculatorTest.cpp,
- tests/ColorSpecialTest.cpp, tests/ColorTest.cpp,
- tests/CommandLineTest.cpp, tests/DirectoryTest.cpp,
- tests/FileFinderTest.cpp, tests/FilePathTest.cpp,
- tests/FileSystemTest.cpp, tests/FontManagerTest.cpp,
- tests/FontMapTest.cpp, tests/GFReaderTest.cpp, tests/GraphicPathTest.cpp,
- tests/LengthTest.cpp, tests/Makefile.am, tests/MapLineTest.cpp,
- tests/MatrixTest.cpp, tests/MessageExceptionTest.cpp,
- tests/PSInterpreterTest.cpp, tests/PageRagesTest.cpp,
- tests/PageSizeTest.cpp, tests/PairTest.cpp,
- tests/SplittedCharInputBufferTest.cpp, tests/StreamInputBufferTest.cpp,
- tests/StreamReaderTest.cpp, tests/StreamWriterTest.cpp,
- tests/SubfontTest.cpp, tests/TypesTest.cpp, tests/VectorStreamTest.cpp,
- tests/check-conv, tests/create-makefile, tests/normalize.xsl:
- updated year in copyright statements to 2014
-
-2014-01-01 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/MiKTeXCom.cpp:
- prevent releasing MiKTeX object if its initialization failed
-
-2013-12-29 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Font.cpp:
- check if units per EM are not 0 to prevent divisions by zero
-
- * src/Directory.cpp, src/Directory.h, src/FontMap.cpp,
- tests/DirectoryTest.cpp:
- changed directory entry types from char to enums
-
- * src/FontCache.cpp:
- catch potential StreamReaderException
-
-2013-12-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/BoundingBox.cpp:
- explicitely initialize BoundingBox fields
-
- * src/FontCache.cpp:
- avoid accessing strings constructed from temporaries
-
- * src/Matrix.cpp:
- ensure return value of istream::get() is assigned to int vars
-
- * src/DVIReader.cpp:
- check if denominator of DVI unit is non-zero
-
- * src/DvisvgmSpecialHandler.cpp, src/FontCache.cpp:
- ensure null pointer checks before dereferencing
-
- * src/FontCache.cpp, src/SpecialManager.cpp:
- restore stream format flags
-
- * src/DVIReader.cpp, src/Directory.cpp, src/GFReader.cpp:
- added missing initializations of member variables
-
-2013-12-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.h, src/Bitmap.h, src/BoundingBox.h,
- src/CMap.h, src/CMapManager.h, src/CMapReader.h, src/Calculator.h,
- src/CharMap.h, src/CharMapID.h, src/Character.h, src/CmdLineParserBase.h,
- src/Color.h, src/ColorSpecialHandler.h, src/CommandLine.h,
- src/DLLoader.h, src/DVIActions.h, src/DVIReader.h, src/DVIToSVG.h,
- src/DVIToSVGActions.h, src/Directory.h, src/DvisvgmSpecialHandler.h,
- src/EPSFile.h, src/EPSToSVG.h, src/EmSpecialHandler.h, src/EncFile.h,
- src/FileFinder.h, src/FilePath.h, src/FileSystem.h, src/Font.h,
- src/FontCache.h, src/FontEncoding.h, src/FontEngine.h, src/FontManager.h,
- src/FontMap.h, src/FontMetrics.h, src/GFGlyphTracer.h, src/GFReader.h,
- src/GFTracer.h, src/Ghostscript.h, src/Glyph.h,
- src/GlyphTracerMessages.h, src/GraphicPath.h, src/HtmlSpecialHandler.h,
- src/InputBuffer.h, src/InputReader.h, src/JFM.h, src/Length.h,
- src/MapLine.h, src/Matrix.h, src/Message.h, src/MessageException.h,
- src/MetafontWrapper.h, src/MiKTeXCom.h, src/NoPsSpecialHandler.h,
- src/PSFilter.h, src/PSInterpreter.h, src/PSPattern.h,
- src/PSPreviewFilter.h, src/PageRanges.h, src/PageSize.h, src/Pair.h,
- src/PdfSpecialHandler.h, src/Process.h, src/PsSpecialHandler.h,
- src/SVGOutputBase.h, src/SVGTree.h, src/SignalHandler.h,
- src/SpecialActions.h, src/SpecialHandler.h, src/SpecialManager.h,
- src/StreamReader.h, src/StreamWriter.h, src/Subfont.h, src/System.h,
- src/TFM.h, src/Terminal.h, src/TpicSpecialHandler.h, src/VFActions.h,
- src/VFReader.h, src/VectorStream.h, src/XMLDocument.h, src/XMLNode.h,
- src/XMLString.h, src/macros.h, src/types.h:
- prefixed include guards with DVISVGM_ to prevent ambiguities with
- external headers
-
-2013-11-16 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIReader.cpp, src/SVGTree.cpp, src/SVGTree.h:
- don't let global font colors interfere with color specials
-
-2013-10-29 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * NEWS:
- updated NEWS
-
-2013-10-28 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Bitmap.cpp, src/Color.cpp, src/JFM.cpp, src/Matrix.cpp:
- added missing #includes of header file <algorithm>
-
- * src/FileSystem.cpp, src/MetafontWrapper.cpp:
- added explicit casts from ifstream to bool
-
- * src/DVIReader.cpp:
- temporarily reactivated processing of font definitions located in the
- postamble
-
- * configure.ac, src/Doxyfile:
- set version to 1.5.1
-
-2013-10-27 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.cpp:
- suppress output of logical page number if it equals physical page number
-
-2013-10-16 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/PSPreviewFilter.cpp, src/PsSpecialHandler.cpp:
- ensure proper evaluation of tightpage data if multiple pages are
- processed
-
-2013-10-12 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/InputBuffer.h:
- don't check unsigned variables for negative values
-
- * src/Color.h, src/PsSpecialHandler.cpp, src/PsSpecialHandler.h:
- added 'const' to read-only methods
-
-2013-09-21 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontCache.cpp, src/FontCache.h:
- renamed FontCache::VERSION to FontCache::FORMAT_VERSION
-
- * src/DVIToSVG.cpp, src/Ghostscript.h, src/dvisvgm.cpp:
- added missing guards and functions to prevent compilation errors if
- DISABLE_GS is set
-
- * src/DVIToSVG.cpp:
- changed warning message that appears if PS support has been disabled
- permanently
-
-2013-09-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.cpp, src/Bitmap.cpp, src/BoundingBox.cpp,
- src/CMap.cpp, src/CMapManager.cpp, src/CMapReader.cpp, src/CRC32.cpp,
- src/Calculator.cpp, src/CharMap.cpp, src/CmdLineParserBase.cpp,
- src/Color.cpp, src/ColorSpecialHandler.cpp, src/CommandLine.cpp,
- src/CommandLine.h, src/DLLoader.cpp, src/DVIActions.cpp,
- src/DVIReader.cpp, src/DVIToSVG.cpp, src/DVIToSVGActions.cpp,
- src/Directory.cpp, src/DvisvgmSpecialHandler.cpp, src/EPSFile.cpp,
- src/EPSToSVG.cpp, src/EmSpecialHandler.cpp, src/EncFile.cpp,
- src/FileFinder.cpp, src/FilePath.cpp, src/FileSystem.cpp, src/Font.cpp,
- src/FontCache.cpp, src/FontEncoding.cpp, src/FontEngine.cpp,
- src/FontManager.cpp, src/FontMap.cpp, src/FontMetrics.cpp,
- src/GFGlyphTracer.cpp, src/GFReader.cpp, src/GFTracer.cpp,
- src/Ghostscript.cpp, src/Ghostscript.h, src/HtmlSpecialHandler.cpp,
- src/InputBuffer.cpp, src/InputReader.cpp, src/JFM.cpp, src/Length.cpp,
- src/MapLine.cpp, src/Matrix.cpp, src/Message.cpp,
- src/MetafontWrapper.cpp, src/MiKTeXCom.cpp, src/NoPsSpecialHandler.cpp,
- src/PSInterpreter.cpp, src/PSPattern.cpp, src/PSPreviewFilter.cpp,
- src/PageRanges.cpp, src/PageSize.cpp, src/PdfSpecialHandler.cpp,
- src/Process.cpp, src/PsSpecialHandler.cpp, src/SVGTree.cpp,
- src/SignalHandler.cpp, src/SpecialManager.cpp, src/StreamReader.cpp,
- src/StreamWriter.cpp, src/Subfont.cpp, src/System.cpp, src/TFM.cpp,
- src/Terminal.cpp, src/TpicSpecialHandler.cpp, src/VFReader.cpp,
- src/XMLDocument.cpp, src/XMLNode.cpp, src/XMLString.cpp, src/dvisvgm.cpp:
- include config.h at the top of every translation unit
-
- * src/DLLoader.h, src/Directory.h:
- moved #define NOMINMAX to Windows config.h
-
- * configure.ac, src/Doxyfile:
- set version to 1.5
-
- * NEWS:
- updated NEWS
-
-2013-08-30 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontMetrics.h, src/JFM.cpp, src/JFM.h, src/TFM.h:
- added retrieval of vertical mode flag to class FontMetrics
-
- * src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Font.cpp, src/Font.h,
- src/FontEngine.cpp, src/FontEngine.h, src/FontMetrics.h, src/JFM.h,
- src/SVGTree.cpp, src/SVGTree.h, src/TFM.h, src/dvisvgm.cpp:
- added support for DVI format 3 (pTeX, vertical mode)
-
- * src/DVIReader.cpp, src/DVIReader.h, src/Font.cpp, src/Font.h,
- src/FontEngine.cpp, src/FontEngine.h, src/FontManager.cpp,
- src/FontManager.h, src/FontStyle.h, src/SVGTree.cpp, src/dvisvgm.cpp:
- added support for XDV (DVI format 5) files
-
- * src/Font.cpp, src/Font.h, src/XMLString.cpp:
- replaced entity references by corresponding UTF-8 characters; use
- correct unicode points rather than DVI charcodes
-
- * doc/dvisvgm.txt.in:
- updated manpage
-
-2013-08-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CharMap.cpp, src/CharMap.h, src/Font.cpp, src/Font.h,
- src/FontEncoding.h, src/FontEngine.cpp, src/FontEngine.h,
- src/FontManager.cpp, src/Makefile.am:
- replaced local std::map tables used in Font classes with new class
- CharMap
-
-2013-08-23 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/SVGTree.cpp:
- appended px unit to font-size attributes in style section
-
-2013-08-22 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/XMLString.cpp:
- replace very small floating point numbers by 0
-
-2013-08-20 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileFinder.cpp:
- suppress error messages from makeFOO tools
-
-2013-08-13 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CMap.cpp, src/CMap.h, src/CMapManager.cpp, src/CMapManager.h,
- src/EncFile.h, src/Font.cpp, src/Font.h, src/FontEncoding.cpp,
- src/FontEncoding.h, src/FontManager.cpp, src/FontMap.cpp, src/FontMap.h:
- derive EncodingPair from FontEncoding
-
- * src/Font.cpp, src/Font.h, src/FontEncoding.cpp, src/FontEncoding.h,
- src/FontManager.cpp, src/FontMap.cpp, src/FontMap.h:
- moved assignment of base font map to Font class
-
-2013-08-11 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/FileFinder.cpp:
- check if the kpathsea library is C++-safe (patch by Peter Breitenlohner)
-
- * src/dvisvgm.cpp:
- fix number of dashes printed by -V1
-
-2013-08-08 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Matrix.cpp, src/Matrix.h:
- renamed Matrix skewing methods
-
-2013-08-04 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Font.cpp, src/Font.h, src/FontEngine.cpp, src/FontManager.cpp,
- src/FontMap.cpp, src/FontMap.h, src/FontStyle.h, src/Makefile.am:
- store pointers to font map and encoding in Font objects to speed up
- looking them up
-
- * src/Ghostscript.h, src/PSPreviewFilter.cpp, src/PsSpecialHandler.cpp:
- added missing variable initializations
-
-2013-08-03 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CMapManager.cpp, src/CMapManager.h, src/FontManager.cpp:
- avoid const_cast in CMapManager
-
-2013-08-02 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIActions.h, src/DVIReader.cpp, src/DVIToSVG.cpp:
- disable font processing while scanning PS header specials
-
- * src/CMap.h, src/CMapManager.cpp:
- properly handle 'unicode' encoding entries set in font map
-
-2013-08-01 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/XMLDocument.cpp, src/XMLString.cpp:
- changed encoding of SVG files from ISO-8859-1 to UTF-8
-
- * src/DVIToSVG.cpp, src/Makefile.am, src/SVGTree.cpp,
- src/XMLDocTypeNode.h:
- removed DOCTYPE declaration from generated files as suggested by the SVG
- specification
-
- * src/DVIToSVG.cpp:
- removed redundant #include statements
-
- * src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.h, src/EPSToSVG.h,
- src/Matrix.cpp, src/Matrix.h, src/PsSpecialHandler.cpp,
- src/SpecialActions.h, src/dvisvgm.cpp:
- apply page transformations to width, height, and depth of preview bbox
-
- * NEWS:
- updated NEWS
-
- * configure.ac, src/Doxyfile:
- set version to 1.4
-
-2013-07-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CMap.cpp, src/CMap.h, src/CMapManager.cpp, src/CMapManager.h,
- src/CMapReader.cpp, src/CMapReader.h, src/FontManager.cpp,
- src/Makefile.am, tests/CMapTest.cpp, tests/Makefile.am:
- added classes to handle CMap files
-
- * src/CMap.cpp, src/CMap.h, src/CMapManager.h, src/EncFile.cpp,
- src/EncFile.h, src/FileFinder.cpp, src/Font.cpp, src/Font.h,
- src/FontEncoding.cpp, src/FontEncoding.h, src/FontEngine.cpp,
- src/FontEngine.h, src/FontManager.cpp, src/Makefile.am,
- tests/CMapTest.cpp:
- derive .enc encoding vectors and CMaps from common base class
- FontEncoding
-
- * src/CMap.cpp, src/CMap.h, src/Character.h, src/EncFile.h, src/Font.cpp,
- src/Font.h, src/FontEncoding.h, src/FontEngine.cpp, src/FontEngine.h,
- src/Makefile.am, tests/CMapTest.cpp:
- added Character class to handle character names, codes, and indexes
- consistently
-
- * src/FileFinder.cpp, src/Font.cpp, src/Font.h, src/FontManager.cpp:
- added support for OTF fonts
-
- * src/Font.cpp, src/Font.h, src/FontMetric.cpp, src/FontMetric.h,
- src/FontMetrics.cpp, src/FontMetrics.h, src/Makefile.am, src/TFM.h:
- renamed class FontMetric to FontMetrics
-
- * src/CMap.cpp, src/CMap.h, src/CMapReader.cpp, src/CMapReader.h,
- tests/CMapReaderTest.cpp, tests/CMapTest.cpp, tests/Makefile.am:
- added evaluation of base font (bf) sections in CMap files
-
- * src/CMap.h, src/CMapManager.cpp, src/CMapManager.h, src/CMapReader.cpp,
- src/CharMapID.cpp, src/CharMapID.h, src/Font.cpp, src/Font.h,
- src/FontEngine.cpp, src/FontEngine.h, src/FontManager.cpp,
- src/FontMap.cpp, src/FontMap.h, src/Makefile.am:
- try to decode characters of non-CID fonts that have a CMap assigned in
- the fontmap
-
-2013-07-27 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Font.cpp, src/Font.h, src/FontEncoding.cpp, src/FontEncoding.h:
- moved lookup of the encoding of a font to the Font class
-
- * src/JFM.cpp:
- fixed retrieval of char indexes if a JFM contains entries of chartype 0
- only
-
- * src/BgColorSpecialHandler.h, src/DVIToSVG.cpp, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PsSpecialHandler.cpp, src/PsSpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h:
- ensure that PS header code is evaluated before the page/body code; also
- execute bop-hook and eop-hook
-
- * src/PSInterpreter.cpp, src/PSInterpreter.h, src/PsSpecialHandler.cpp:
- added funtion to execute PS code snippets and retrieve their results
-
- * doc/dvisvgm.txt.in, src/DVIActions.h, src/DVIReader.cpp,
- src/DVIToSVG.cpp, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/EPSToSVG.cpp, src/Makefile.am, src/PSFilter.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PSPreviewFilter.cpp, src/PSPreviewFilter.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/SpecialActions.h,
- src/SpecialHandler.h, src/SpecialManager.cpp, src/SpecialManager.h:
- added evaluation of bounding box information created by preview package
-
-2013-07-23 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/EPSToSVG.cpp:
- print warning message if height or width of EPS bbox is 0
-
- * src/psdefs.cpp:
- PS handler: call newpath before executing charpath in operator show
-
- * src/FontMap.cpp:
- check for EOF prior to try to parse another mapline
-
-2013-07-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.cpp:
- replaced PS operator prval with =only in psdefs
-
-2013-07-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.cpp:
- ensure catching PSExceptions while processing PS header specials to
- prevent segfaults
-
- * src/psdefs.cpp:
- properly store PS operator applyscalevals in systemdict
-
-2013-07-14 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Process.cpp, src/Process.h:
- extended Process::run() to grab the output written to stdout
-
- * src/FileFinder.cpp, src/FileFinder.h:
- FileFinder: added lookup of cmap files
-
-2013-07-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/CommandLine.cpp:
- command-line parser: changed type of argument mode from char to enum
-
-2013-06-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileFinder.cpp:
- removed redundant 'using namespace std'
-
-2013-06-03 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.h, src/dvisvgm.cpp:
- extend option --linkmark to highlight linked areas by a given background
- color
-
-2013-06-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.cpp, src/Color.h, src/ColorSpecialHandler.cpp,
- src/ColorSpecialHandler.h, src/SpecialActions.h,
- tests/ColorSpecialTest.cpp, tests/ColorTest.cpp, tests/Makefile.am:
- use Color class in ColorSpecialHandler rather than local code; added
- ColorTest
-
-2013-05-22 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/dvisvgm.cpp:
- added a missing (underlining) hyphen to the output of -V1
-
-2013-05-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.h:
- added missing NoPsSpecialhandler files
-
-2013-05-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp, src/Font.h, src/FontManager.h, src/FontMetric.cpp,
- src/FontMetric.h, src/Makefile.am, src/TFM.cpp, src/TFM.h:
- handle invalid TFM files properly
-
- * src/Font.cpp, src/FontMetric.cpp, src/FontMetric.h, src/JFM.cpp,
- src/JFM.h, src/Makefile.am, src/StreamReader.h, src/TFM.cpp, src/TFM.h:
- added support for Japanese font metric (JFM) files
-
- * src/FileFinder.cpp, src/MiKTeXCom.cpp, src/MiKTeXCom.h, src/dvisvgm.cpp:
- try to load the Ghostscript library that comes with MiKTeX
-
- * doc/dvisvgm.txt.in, src/DVIToSVG.cpp, src/HtmlSpecialHandler.cpp,
- src/HtmlSpecialHandler.h, src/Makefile.am, src/SpecialManager.cpp:
- added support of hyperref specials
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/HtmlSpecialHandler.cpp, src/dvisvgm.cpp, src/options.xml:
- added option --linkmark to select the highlighing variant for hyperlinks
-
- * configure.ac, src/Doxyfile:
- set version to 1.3
-
- * NEWS:
- updated NEWS
-
-2013-05-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * AUTHORS, Makefile.am, README, configure.ac, potracelib/Makefile.am,
- potracelib/auxiliary.h, potracelib/bitmap.h, potracelib/curve.c,
- potracelib/curve.h, potracelib/decompose.c, potracelib/decompose.h,
- potracelib/lists.h, potracelib/potracelib.c, potracelib/potracelib.h,
- potracelib/progress.h, potracelib/trace.c, potracelib/trace.h:
- removed bundled potrace library
-
- * src/SVGTree.cpp, src/SVGTree.h:
- added methods to push and pop 'context elements' to a page that wrap
- parts of the page contents
-
- * src/DVIToSVGActions.h, src/EPSToSVG.h, src/SpecialActions.h:
- provide the context push/pop methods of class SVGTree to special
- handlers
-
- * src/InputReader.cpp, src/InputReader.h:
- added optional parameter 'quotechar' to InputReader::parseAttributes()
-
- * src/EmSpecialHandler.h, src/NoPsSpecialHandler.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h, src/TpicSpecialHandler.h:
- moved DVI listener methods to dedicated listener interface classes
-
- * src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp,
- src/DVIToSVG.h, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.h,
- src/NoPsSpecialHandler.cpp, src/NoPsSpecialHandler.h,
- src/SpecialHandler.h, src/SpecialManager.cpp, src/SpecialManager.h,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.h:
- added page number parameter to DVIEndPageListener::dviEndPage()
-
-2013-05-01 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVGActions.cpp, src/Terminal.cpp, src/Terminal.h:
- disable cursor when showing the progress indicator (Windows only)
-
-2013-04-26 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.cpp:
- don't link NoPsSpecialHandler if HAVE_LIBGS
-
-2013-04-25 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontEncoding.cpp:
- fixed bracketing bug that prevented lookup of fontmap files
-
-2013-04-24 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/BoundingBox.cpp, src/BoundingBox.h, src/Calculator.cpp,
- src/Calculator.h, src/Matrix.cpp, src/Matrix.h, src/MessageException.h,
- src/PageSize.cpp, src/PageSize.h, src/StreamReader.cpp,
- src/StreamReader.h, src/VFReader.cpp, src/VFReader.h, src/VectorStream.h,
- src/XMLDocument.cpp, src/XMLDocument.h:
- added missing underscores to private member variables
-
- * configure.ac, src/Doxyfile:
- set version to 1.2.2
-
- * NEWS:
- updated NEWS
-
-2013-04-23 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.cpp, src/EPSToSVG.cpp, src/dvisvgm.cpp:
- avoid output of empty parentheses if TARGET_SYSTEM is not set
-
- * doc/dvisvgm.txt.in, src/CmdLineParserBase.cpp, src/CommandLine.cpp,
- src/options.dtd, src/options.xml:
- added information about 'dvisvgm -E' to usage line
-
- * src/BoundingBox.cpp, src/BoundingBox.h, src/Calculator.h,
- src/CmdLineParserBase.h, src/DVIToSVGActions.cpp, src/Message.cpp,
- src/VFReader.cpp:
- added missing member initializations to some classes
-
-2013-04-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/Makefile.am, src/SpecialManager.cpp:
- print a warning message if PS specials are found but ignored
-
-2013-04-15 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileFinder.cpp, src/dvisvgm.cpp:
- catch MessageException if MiKTeX version can't be obtained
-
-2013-04-09 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * tests/Makefile.am, tests/create-makefile:
- updated tests/Makefile.am to honor system potracelib if present
-
- * configure.ac, src/Doxyfile:
- set version to 1.2.1
-
- * NEWS:
- updated NEWS
-
-2013-04-08 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/Color.cpp, src/Color.h, src/DVIToSVGActions.cpp:
- allow the background color special to insert white rectancles
-
- * src/PageRanges.h:
- dropped unused variable PageRanges::_max
-
-2013-04-04 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/XMLNode.cpp, src/XMLNode.h:
- unhide derived method XMLDeclarationNode::append
-
-2013-03-10 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * Makefile.am, configure.ac:
- don't build bundled potracelib if system library is used (patch by
- Alexis Ballier)
-
-2013-03-03 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * potracelib/auxiliary.h, potracelib/bitmap.h, potracelib/curve.c,
- potracelib/curve.h, potracelib/decompose.c, potracelib/decompose.h,
- potracelib/lists.h, potracelib/potracelib.c, potracelib/potracelib.h,
- potracelib/progress.h, potracelib/trace.c, potracelib/trace.h:
- updated bundled potrace library to version 1.11
-
-2013-03-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * potracelib/auxiliary.h, potracelib/bitmap.h, potracelib/curve.c,
- potracelib/decompose.h, potracelib/lists.h, potracelib/progress.h,
- potracelib/trace.c, potracelib/trace.h, src/EPSFile.cpp,
- src/EPSToSVG.cpp, src/EPSToSVG.h, src/PSPattern.cpp, src/PSPattern.h,
- src/SVGOutputBase.h:
- converted DOS line endings
-
-2013-02-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Makefile.am, src/PSInterpreter.cpp, src/PSInterpreter.h,
- src/PSPattern.cpp, src/PSPattern.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/psdefs.psc, tests/PSInterpreterTest.cpp:
- PS handler: added support of tiling patterns
-
- * src/Makefile.am, src/PSInterpreter.cpp, src/psdefs.cpp, src/psdefs.psc:
- make psdefs a separate compilation unit
-
- * tests/MapLineTest.cpp:
- prevent MapLineTest from failing if file UGBK.sfd is not available
-
- * src/psdefs.cpp:
- improved processing of PS operator 'show'
-
- * configure.ac, src/Doxyfile:
- set version to 1.2
-
- * NEWS:
- updated NEWS
-
-2013-02-21 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/XMLNode.cpp, src/XMLNode.h:
- added virtual constructor XMLNode::clone()
-
- * src/XMLNode.cpp, src/XMLNode.h:
- added methods to lookup attribute values and selected descendant XML
- nodes
-
-2013-02-19 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/PSInterpreter.cpp, src/PSInterpreter.h:
- added PSInterpreter::limit() to limit the number of bytes to be
- processed
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/EPSFile.cpp, src/EPSFile.h,
- src/EPSToSVG.cpp, src/EPSToSVG.h, src/Makefile.am,
- src/PsSpecialHandler.cpp, src/SVGOutputBase.h, src/dvisvgm.cpp,
- src/options.xml:
- add option to directly convert EPS files to SVG
-
- * src/FilePath.cpp:
- adapt path separators on Windows systems to get the correct output path
-
-2013-02-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/CommandLine.cpp,
- src/CommandLine.h:
- applied a few refactorings to the command-line parser
-
-2013-02-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/CmdLineParserBase.cpp, src/CmdLineParserBase.h,
- src/CommandLine.cpp, src/CommandLine.h, src/dvisvgm.cpp, src/options.xml:
- added optional parameter to option --help to specify output format
-
-2013-02-06 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/BoundingBox.cpp, src/CommandLine.cpp,
- src/CommandLine.h, src/EmSpecialHandler.cpp, src/GraphicPath.h,
- src/Matrix.cpp, src/PsSpecialHandler.cpp, src/TpicSpecialHandler.cpp,
- src/XMLString.cpp, src/XMLString.h, src/dvisvgm.cpp, src/options.xml:
- added option --precision to set the number of decimal places applied to
- attribute values
-
-2013-01-30 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CommandLine.cpp:
- fixed alignment of --help text
-
-2013-01-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp, src/FontEngine.cpp, src/Makefile.am,
- src/MiKTeXCom.cpp, src/MiKTeXCom.h:
- moved MiKTeX COM code to separate class
-
-2013-01-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/DVIToSVG.cpp, src/FileFinder.cpp, src/Font.cpp,
- src/Font.h, src/FontEncoding.cpp, src/FontEngine.cpp, src/FontEngine.h,
- src/FontManager.cpp, src/FontMap.cpp, src/FontMap.h, src/Makefile.am,
- src/MapLine.cpp, src/MapLine.h, src/Subfont.cpp, src/Subfont.h,
- tests/FontMapTest.cpp, tests/Makefile.am, tests/MapLineTest.cpp,
- tests/SubfontTest.cpp, tests/create-makefile, tests/sample.sfd:
- added support for subfont definitions and multi-font (.ttc) files
-
- * src/FontManager.cpp, src/FontMap.cpp, src/FontMap.h, src/MapLine.h:
- replaced FontMap entries by pointers; initialize entries with MapLine
- objects
-
- * src/CommandLine.cpp, src/Font.cpp, src/Font.h, src/FontEngine.cpp,
- src/FontEngine.h, src/FontManager.cpp, src/FontMap.cpp, src/FontMap.h,
- src/MapLine.cpp, src/MapLine.h, tests/MapLineTest.cpp:
- implemented evaluation of font style options given in a mapline
-
- * configure.ac, src/Doxyfile:
- set version to 1.1
-
- * NEWS, README:
- updated NEWS and README
-
-2013-01-20 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontEngine.cpp, src/FontEngine.h:
- removed unneeded code related to font sizes from class FontEngine
-
-2013-01-16 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/FontMap.cpp, src/FontMap.h, src/dvisvgm.cpp, src/options.xml:
- renamed option --map-file to --fontmap; allow multiple mapfiles and
- modes
-
- * doc/dvisvgm.txt.in, src/DVIToSVG.cpp, src/FontMap.cpp, src/FontMap.h,
- src/Makefile.am, src/PdfSpecialHandler.cpp, src/PdfSpecialHandler.h:
- added PdfSpecialHandler to evaluate pdf:mapline and pdf:mapfile specials
-
-2013-01-10 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Font.cpp, src/FontEncoding.cpp:
- fixed a string exception that occurred when an encoding file or an entry
- in the encoding table is unavailable
-
-2013-01-06 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileFinder.cpp, src/FileFinder.h, src/FontEncoding.cpp,
- src/FontEncoding.h:
- removed font encoding methods from FileFinder
-
-2013-01-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, README, configure.ac, doc/Makefile.am, doc/dvisvgm.txt.in,
- src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp, src/BoundingBox.h,
- src/CRC32.cpp, src/CRC32.h, src/Calculator.cpp, src/Calculator.h,
- src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/Color.cpp,
- src/Color.h, src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/CommandLine.cpp, src/CommandLine.h, src/DLLoader.cpp, src/DLLoader.h,
- src/DVIActions.cpp, src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/Directory.cpp, src/Directory.h,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.h, src/FileFinder.cpp,
- src/FileFinder.h, src/FilePath.cpp, src/FilePath.h, src/FileSystem.cpp,
- src/FileSystem.h, src/Font.cpp, src/Font.h, src/FontCache.cpp,
- src/FontCache.h, src/FontEncoding.cpp, src/FontEncoding.h,
- src/FontEngine.cpp, src/FontEngine.h, src/FontManager.cpp,
- src/FontManager.h, src/FontMap.cpp, src/FontMap.h, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.h, src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp,
- src/GFTracer.h, src/Ghostscript.cpp, src/Ghostscript.h, src/Glyph.h,
- src/GlyphTracerMessages.h, src/GraphicPath.h, src/InputBuffer.cpp,
- src/InputBuffer.h, src/InputReader.cpp, src/InputReader.h,
- src/Length.cpp, src/Length.h, src/Makefile.am, src/Matrix.cpp,
- src/Matrix.h, src/Message.cpp, src/Message.h, src/MessageException.h,
- src/MetafontWrapper.cpp, src/MetafontWrapper.h, src/MiKTeXCom.cpp,
- src/MiKTeXCom.h, src/PSInterpreter.cpp, src/PSInterpreter.h,
- src/PageRanges.cpp, src/PageRanges.h, src/PageSize.cpp, src/PageSize.h,
- src/Pair.h, src/Process.cpp, src/Process.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/SVGTree.cpp, src/SVGTree.h,
- src/SignalHandler.cpp, src/SignalHandler.h, src/SpecialActions.h,
- src/SpecialHandler.h, src/SpecialManager.cpp, src/SpecialManager.h,
- src/StreamReader.cpp, src/StreamReader.h, src/StreamWriter.cpp,
- src/StreamWriter.h, src/System.cpp, src/System.h, src/TFM.cpp, src/TFM.h,
- src/Terminal.cpp, src/Terminal.h, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h, src/VFActions.h, src/VFReader.cpp,
- src/VFReader.h, src/VectorStream.h, src/XMLDocTypeNode.h,
- src/XMLDocument.cpp, src/XMLDocument.h, src/XMLNode.cpp, src/XMLNode.h,
- src/XMLString.cpp, src/XMLString.h, src/dvisvgm.cpp, src/macros.h,
- src/options.dtd, src/options.xml, src/psdefs.psc, src/types.h,
- tests/BoundingBoxTest.cpp, tests/CRC32Test.cpp, tests/CalculatorTest.cpp,
- tests/ColorSpecialTest.cpp, tests/CommandLineTest.cpp,
- tests/DirectoryTest.cpp, tests/FileFinderTest.cpp,
- tests/FilePathTest.cpp, tests/FileSystemTest.cpp,
- tests/FontManagerTest.cpp, tests/FontMapTest.cpp, tests/GFReaderTest.cpp,
- tests/GraphicPathTest.cpp, tests/LengthTest.cpp, tests/Makefile.am,
- tests/MatrixTest.cpp, tests/MessageExceptionTest.cpp,
- tests/PSInterpreterTest.cpp, tests/PageRagesTest.cpp,
- tests/PageSizeTest.cpp, tests/PairTest.cpp,
- tests/SplittedCharInputBufferTest.cpp, tests/StreamInputBufferTest.cpp,
- tests/StreamReaderTest.cpp, tests/StreamWriterTest.cpp,
- tests/TypesTest.cpp, tests/VectorStreamTest.cpp, tests/create-makefile:
- updated year in copyright statements to 2013
-
-2012-12-23 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontCache.cpp, src/PsSpecialHandler.cpp, src/TpicSpecialHandler.cpp:
- check emptiness of containers with empty() instead of size()
-
- * src/FileFinder.cpp, src/MiKTeXCom.cpp, src/Process.cpp:
- avoid creating copies of exception objects
-
- * src/CmdLineParserBase.h, src/Directory.cpp, src/GFReader.cpp,
- src/PsSpecialHandler.cpp:
- initialize uninitialized member variables
-
- * src/FileFinder.cpp, src/Message.cpp, src/dvisvgm.cpp:
- reduced scope of some variables
-
-2012-12-12 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontCache.cpp:
- replaced 'char' with 'glyph' in font cache listing
-
- * src/SpecialManager.cpp:
- clear all corresponding containers when calling
- SpecialHandler::unregisterHandlers()
-
-2012-12-03 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Ghostscript.cpp:
- added explicit cast to avoid signed/unsigned comparison warning
-
-2012-12-02 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FilePath.cpp, tests/FilePathTest.cpp:
- strip drive letter if it's not set (Windows only)
-
- * tests/FileSystemTest.cpp, tests/GFReaderTest.cpp:
- ensure that tests work properly on Windows
-
- * src/macros.h:
- removed SHOW() from macros.h
-
- * doc/dvisvgm.txt.in, src/Ghostscript.cpp:
- use gsdll64.dll for 64-bit builds; added info about gsdll64.dll to
- manpage
-
-2012-11-24 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Message.cpp:
- don't wrap message lines explicitly on Windows
-* * *
-
-2012-11-23 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Ghostscript.cpp, src/Ghostscript.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/dvisvgm.cpp:
- print an error message if the execution of PS code fails
-
- * src/PSInterpreter.cpp, src/psdefs.psc:
- print operand stack in case of a PS error
-
-2012-11-22 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Message.cpp:
- handle wrapping of messages containing newlines correctly
-
-2012-11-21 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DLLoader.cpp, src/DLLoader.h, src/Ghostscript.cpp:
- renamed DLLoader::loadFunction() to DLLoader::loadSymbol()
-
-2012-11-19 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontEngine.cpp, src/FontEngine.h:
- renamed FontEngine::fname to FontEngine::_fontname
-
- * src/Font.cpp, src/Font.h, src/FontManager.cpp:
- print warning if font checksums don't match
-
-2012-11-16 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Directory.h:
- undefine macro max() to avoid compilation problems on Windows
-
-2012-11-15 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileFinder.cpp, src/FileFinder.h, src/FontMap.cpp, src/FontMap.h,
- tests/FontMapTest.cpp:
- made class FontMap a singleton
-
- * src/FileFinder.cpp, src/FileFinder.h, src/dvisvgm.cpp:
- moved initialization of FontMap from FileFinder to dvisvgm.cpp
-
- * src/Makefile.am, src/MapLine.cpp, src/MapLine.h, tests/Makefile.am,
- tests/MapLineTest.cpp:
- added new class MapLine to parse and evaluate a single line of a map
- file
-
- * src/FileFinder.cpp, src/FontManager.cpp, src/FontMap.cpp, src/FontMap.h,
- tests/FontMapTest.cpp:
- adapted code to use new MapLine class; introduced support of map line
- modes
-
-2012-11-14 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileFinder.cpp:
- initialize Ghostscript when compiled for TeX Live Win32 (patch by Peter
- Breitenlohner)
-
- * src/FileFinder.cpp, src/FileFinder.h, src/dvisvgm.cpp,
- tests/FileFinderTest.cpp, tests/FontManagerTest.cpp:
- initialize second parameter of kpse_set_program_name() correctly
-
- * src/DVIToSVG.cpp:
- prevent compilation error when using a C++11 compiler (patch by Peter
- Breitenlohner)
-
-2012-11-11 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/InputBuffer.cpp, src/InputBuffer.h, src/InputReader.cpp,
- src/InputReader.h, src/PsSpecialHandler.cpp,
- tests/StreamInputBufferTest.cpp:
- some refactorings of class InputReader; added InputReader::find()
-
-2012-10-24 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.cpp, src/DVIToSVG.h, src/dvisvgm.cpp:
- don't show warning about disabled PS support in list of special handlers
-
-2012-09-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.12
-
- * NEWS:
- updated NEWS
-
- * src/options.ggo:
- removed deprecated file options.ggo
-
-2012-09-20 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.cpp:
- show warning if processing of PS specials is disabled
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.h:
- removed Ghostscript info from ps entry in list of special handlers
-
-2012-09-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.psc:
- ignore dvips bop operators that might be present in PS specials
-
-2012-09-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/StreamReader.cpp:
- fixed reading invalid number of string characters
-
-2012-04-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/Makefile.am:
- keep manpage when calling 'make clean'
-
-2012-04-04 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVGActions.cpp, src/SVGTree.cpp, src/SVGTree.h,
- tests/frktest-nf-cmp.svg, tests/frktest-wf-cmp.svg,
- tests/sample-nf-cmp.svg, tests/sample-wf-cmp.svg:
- scale point units in the SVG files to big points (bp)
-
-2012-04-02 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Matrix.cpp, src/Matrix.h, tests/MatrixTest.cpp:
- added Matrix::invert() and det()
-
-2012-03-29 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Matrix.cpp, src/Matrix.h, tests/MatrixTest.cpp:
- added start index parameter to Matrix::set(vector<>)
-
-2012-03-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.psc:
- evaluate PS operators rectclip, rectfill, and rectstroke
-
-2012-03-09 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Ghostscript.cpp, src/Ghostscript.h:
- added optional parameter to Ghostscript::revision() to retrieve the
- revision number only
-
- * src/dvisvgm.cpp:
- added Ghostscript to library list printed by --version=yes
-
- * NEWS:
- updated NEWS
-
-2012-03-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.11
-
-2012-03-07 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVGActions.cpp:
- correct location of a rule's bounding box (lp bug #948713)
-
-2012-02-24 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in:
- fixed a couple of mistakes and formatting flaws in the manpage
-
-2012-02-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * README:
- updated information about bug reporting
-
-2012-01-26 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CmdLineParserBase.h, src/DVIActions.h, src/DVIReader.h,
- src/DVIToSVGActions.h, src/FontEngine.h, src/FontManager.h,
- src/MetafontWrapper.h, src/SVGTree.h, src/SpecialActions.h,
- src/SpecialHandler.h, src/SpecialManager.h, src/TFM.h, src/VFReader.h:
- adapt forward declarations of classes and structs to their corresponding
- definition (SF bug #3480013)
-
-2012-01-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/miktex-core.def, src/miktex-kps.def, src/miktex-kps.h:
- removed outdated files for old MiKTeX bindings
-
-2012-01-09 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/InputReader.cpp, tests/StreamInputBufferTest.cpp:
- fixed parsing of negative floating point numbers starting with '-0.' (SF
- bug #3471097)
-
- * src/TpicSpecialHandler.cpp:
- added some more comments to methods of class TpicSpecialHandler
-
-2012-01-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, README, configure.ac, doc/Makefile.am, doc/dvisvgm.txt.in,
- src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp, src/BoundingBox.h,
- src/CRC32.cpp, src/CRC32.h, src/Calculator.cpp, src/Calculator.h,
- src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/Color.cpp,
- src/Color.h, src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/CommandLine.cpp, src/CommandLine.h, src/DLLoader.cpp, src/DLLoader.h,
- src/DVIActions.cpp, src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/Directory.cpp, src/Directory.h,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.h, src/FileFinder.cpp,
- src/FileFinder.h, src/FilePath.cpp, src/FilePath.h, src/FileSystem.cpp,
- src/FileSystem.h, src/Font.cpp, src/Font.h, src/FontCache.cpp,
- src/FontCache.h, src/FontEncoding.cpp, src/FontEncoding.h,
- src/FontEngine.cpp, src/FontEngine.h, src/FontManager.cpp,
- src/FontManager.h, src/FontMap.cpp, src/FontMap.h, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.h, src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp,
- src/GFTracer.h, src/Ghostscript.cpp, src/Ghostscript.h, src/Glyph.h,
- src/GlyphTracerMessages.h, src/GraphicPath.h, src/InputBuffer.cpp,
- src/InputBuffer.h, src/InputReader.cpp, src/InputReader.h,
- src/Length.cpp, src/Length.h, src/Makefile.am, src/Matrix.cpp,
- src/Matrix.h, src/Message.cpp, src/Message.h, src/MessageException.h,
- src/MetafontWrapper.cpp, src/MetafontWrapper.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PageRanges.cpp, src/PageRanges.h,
- src/PageSize.cpp, src/PageSize.h, src/Pair.h, src/Process.cpp,
- src/Process.h, src/PsSpecialHandler.cpp, src/PsSpecialHandler.h,
- src/SVGTree.cpp, src/SVGTree.h, src/SignalHandler.cpp,
- src/SignalHandler.h, src/SpecialActions.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h, src/StreamReader.cpp,
- src/StreamReader.h, src/StreamWriter.cpp, src/StreamWriter.h,
- src/System.cpp, src/System.h, src/TFM.cpp, src/TFM.h, src/Terminal.cpp,
- src/Terminal.h, src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.h,
- src/VFActions.h, src/VFReader.cpp, src/VFReader.h, src/VectorStream.h,
- src/XMLDocTypeNode.h, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLNode.cpp, src/XMLNode.h, src/XMLString.cpp, src/XMLString.h,
- src/dvisvgm.cpp, src/macros.h, src/options.dtd, src/options.xml,
- src/psdefs.psc, src/types.h, tests/BoundingBoxTest.cpp,
- tests/CRC32Test.cpp, tests/CalculatorTest.cpp,
- tests/ColorSpecialTest.cpp, tests/CommandLineTest.cpp,
- tests/DirectoryTest.cpp, tests/FileFinderTest.cpp,
- tests/FilePathTest.cpp, tests/FileSystemTest.cpp,
- tests/FontManagerTest.cpp, tests/FontMapTest.cpp, tests/GFReaderTest.cpp,
- tests/GraphicPathTest.cpp, tests/LengthTest.cpp, tests/Makefile.am,
- tests/MatrixTest.cpp, tests/MessageExceptionTest.cpp,
- tests/PSInterpreterTest.cpp, tests/PageRagesTest.cpp,
- tests/PageSizeTest.cpp, tests/PairTest.cpp,
- tests/SplittedCharInputBufferTest.cpp, tests/StreamInputBufferTest.cpp,
- tests/StreamReaderTest.cpp, tests/StreamWriterTest.cpp,
- tests/TypesTest.cpp, tests/VectorStreamTest.cpp, tests/check-conv,
- tests/create-makefile:
- updated year in copyright statements
-
-2011-12-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * tests/Makefile.am, tests/create-makefile:
- link tests with -lpthread (required by gtest on Ubuntu)
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.10
-
- * NEWS:
- updated NEWS
-
-2011-12-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.cpp, src/DVIToSVGActions.cpp, src/GlyphTracerMessages.h,
- src/Message.cpp, src/Message.h, src/MetafontWrapper.cpp,
- src/Terminal.cpp, src/Terminal.h, src/dvisvgm.cpp:
- allow users to customize the message colors
-
- * doc/dvisvgm.txt.in:
- added documentation on environment variable DVISVGM_COLORS to manpage
-
-2011-11-22 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/GraphicPath.h:
- added some more comments to the methods of GraphicPath
-
-2011-11-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac:
- move linker flag -lfreetype from LDFLAGS to LIBS to avoid linking
- problems
-
-2011-10-28 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontMap.cpp:
- removed unused variable eval_prefix in helper function read_entry()
-
- * src/SVGTree.cpp:
- avoid possible collisions of glyph IDs
-
-2011-10-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.9
-
- * NEWS:
- updated NEWS
-
-2011-10-09 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FilePath.cpp:
- added some missing comments to methods of class FilePath
-
- * src/Directory.h:
- dropped method Directory::getEntry()
-
-2011-10-07 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Process.cpp:
- added missing include <signal.h> to Process.cpp
-
- * src/Process.cpp:
- exclude definition of split_paramstr() from Windows builds as it's not
- used there
-
-2011-10-03 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/Makefile.am:
- add metadata/pdfmarks to pdf version of manpage
-
-2011-09-06 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * potracelib/auxiliary.h, potracelib/bitmap.h, potracelib/curve.c,
- potracelib/curve.h, potracelib/decompose.c, potracelib/decompose.h,
- potracelib/lists.h, potracelib/potracelib.c, potracelib/potracelib.h,
- potracelib/progress.h, potracelib/trace.c, potracelib/trace.h:
- updated bundled potrace library to version 1.10
-
-2011-06-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.9dev
-
- * src/FileFinder.cpp, src/MetafontWrapper.cpp:
- fixed segfault occured in TeX Live Win32 caused by mf.exe being
- unavailable (SF bug #3308473)
-
-2011-06-01 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac:
- added AC_LANG_SOURCE to avoid autoconf warnings
-
-2011-05-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, configure.ac, src/Doxyfile:
- set version to 1.0.8; updated NEWS
-
- * src/PsSpecialHandler.cpp:
- explicitly cast double to int in call of ClippingStack::dup()/pop()
-
-2011-05-27 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * tests/check-conv, tests/sample-nf-cmp.svg, tests/sample-wf-cmp.svg:
- updated conversion tests
-
-2011-05-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp, src/Makefile.am, src/MetafontWrapper.cpp,
- src/MetafontWrapper.h, src/Process.cpp, src/Process.h,
- src/SignalHandler.cpp:
- replaced call of system() with Process::run() and kill child process if
- necessary
-
-2011-05-22 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileFinder.cpp:
- MiKTeX: maketfm and makemf have been renamed to miktex-maketfm and
- miktex-makemf
-
- * src/MetafontWrapper.cpp:
- dropped '--halt-on-error' in Metafont call to process buggy mf files
- completely
-
-2011-05-19 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DLLoader.h:
- added #undef NOMINMAX before (re)defining it
-
-2011-05-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSInterpreter.cpp, src/PSInterpreter.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/psdefs.psc, tests/PSInterpreterTest.cpp:
- PS handler: implemented evaluation of save, restore, and grestoreall
-
-2011-05-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.8dev
-
- * src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVGActions.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/SpecialActions.h:
- fixed interaction between PS and DVI drawing position
-
- * src/PsSpecialHandler.cpp:
- add definitions in literal PS headers to dictionary TeXDict
-
- * src/PsSpecialHandler.cpp:
- fixed potential segfault caused by invisible zero-length paths
-
-2011-05-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVGActions.h, src/PsSpecialHandler.cpp, src/PsSpecialHandler.h,
- src/psdefs.psc:
- PS handler: added missing unit conversions (pt vs. bp)
-
- * NEWS, README, configure.ac, src/Doxyfile:
- set version to 1.0.7; updated NEWS and README
-
-2011-05-05 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/PSInterpreter.cpp, src/PsSpecialHandler.cpp:
- separate PS snippets by newline characters to leave preceding comments
-
- * src/PsSpecialHandler.h:
- corrected scaling formula applied to PS line properties
-
- * doc/dvisvgm.txt.in:
- added info about dvips rounding issues to manpage
-
-2011-05-04 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/PsSpecialHandler.cpp:
- don't call Ghostscript::revision() in initialization of static variable
-
- * src/Ghostscript.cpp, src/Ghostscript.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h:
- avoid 'this' pointer in initialazation list of
- PSInterpreter::PSInterpreter()
-
- * src/Length.h:
- undefine macro IN
-
-2011-05-03 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.7dev
-
- * src/psdefs.psc:
- catch PS error /nocurrentpoint in operator 'setpos' properly
-
- * src/psdefs.psc:
- PS handler: recognize save/restore operators
-
- * src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/EmSpecialHandler.cpp, src/EmSpecialHandler.h,
- src/PSInterpreter.h, src/PsSpecialHandler.cpp, src/PsSpecialHandler.h,
- src/SpecialActions.h, src/SpecialHandler.h, src/SpecialManager.cpp,
- src/SpecialManager.h, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h:
- replaced methods for DVI position alterations with translation semantics
-
- * src/PSInterpreter.cpp, src/PSInterpreter.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/macros.h, src/psdefs.psc,
- tests/PSInterpreterTest.cpp:
- improved handling of pure PostScript specials
-
- * src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.h:
- tpic special 'ip' must not draw the outline of the polygon but only fill
- its interior
-
- * src/DLLoader.cpp, src/DLLoader.h:
- don't define min/max macros in windows.h
-
-2011-04-30 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/SpecialManager.cpp:
- register special prefix ps:: properly
-
-2011-04-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileFinder.cpp, src/FileFinder.h, src/dvisvgm.cpp,
- tests/FileFinderTest.cpp:
- dropped class FileFinder::Impl and simplified FileFinder interface
-
- * src/DVIReader.cpp, src/Font.cpp, src/GFReader.cpp, src/Makefile.am,
- src/MetafontWrapper.cpp, src/PSInterpreter.cpp, src/SignalHandler.cpp,
- src/SignalHandler.h, src/TFM.cpp, src/dvisvgm.cpp:
- added class SignalHandler for CTRL-C signals
-
- * NEWS, README, configure.ac, src/Doxyfile:
- set version to 1.0.6; updated NEWS and README
-
-2011-04-14 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVGActions.cpp, src/MessageException.h, src/dvisvgm.cpp,
- tests/Makefile.am, tests/MessageExceptionTest.cpp:
- derived MessageException from std::exception and replaced getMessage()
- with what()
-
-2011-04-13 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/XMLNode.cpp, src/XMLNode.h:
- prepended member variables of the XMLNode classes with underscore
-
-2011-03-15 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIReader.cpp:
- throw DVI exception if set_char/put_char is executed without preceding
- font selection
-
-2011-03-04 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.6dev
-
- * potracelib/potracelib.c, potracelib/potracelib.h:
- changed return type of potrace_version() to 'const char *' in order to
- avoid compiler warning
-
-2011-03-01 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * NEWS, configure.ac, src/Doxyfile:
- set version to 1.0.5, updated NEWS
-
-2011-02-28 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/FontCache.cpp, src/FontCache.h, src/dvisvgm.cpp:
- added code to remove outdated and corrupted cache files
-
- * src/Ghostscript.cpp:
- fixed formatting of GS version number
-
-2011-02-21 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.5dev
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/GraphicPath.h, src/SVGTree.cpp, src/SVGTree.h, src/dvisvgm.cpp,
- src/options.xml, tests/CommandLineTest.cpp:
- added option to replace use elements with paths
-
- * src/SVGTree.cpp:
- added missing unit in height/width attribute of svg root element
-
- * tests/frktest-nf-cmp.svg, tests/frktest-wf-cmp.svg,
- tests/sample-nf-cmp.svg, tests/sample-wf-cmp.svg:
- updated conversion test files
-
-2011-02-16 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/InputBuffer.h:
- reference to scanned string in StringInputBuffer is constant now
-
-2011-02-10 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileSystem.cpp, src/FileSystem.h, src/dvisvgm.cpp,
- tests/FileSystemTest.cpp:
- merged FileSystem::move() into FileSystem::copy()
-
- * src/CRC32.cpp, src/CRC32.h, src/Makefile.am, tests/CRC32Test.cpp,
- tests/Makefile.am:
- added class CRC32 and corresponding tests
-
- * src/StreamReader.cpp, src/StreamReader.h, src/StreamWriter.cpp,
- src/StreamWriter.h, tests/Makefile.am, tests/StreamReaderTest.cpp,
- tests/StreamWriterTest.cpp:
- added CRC32 computation methods to StreamReader and StreamWriter
-
- * src/FontCache.cpp, src/FontCache.h:
- added CRC32 checks to cache files
-
-2011-01-31 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CmdLineParserBase.cpp:
- print character instead of ascii value in message of command-line parser
-
-2011-01-30 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/FileFinder.cpp, src/FileFinder.h, src/FontEngine.cpp,
- src/FontEngine.h, src/dvisvgm.cpp, src/options.xml:
- added optional argument to --version
-
-2011-01-28 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * potracelib/auxiliary.h, potracelib/bitmap.h, potracelib/curve.c,
- potracelib/curve.h, potracelib/decompose.c, potracelib/decompose.h,
- potracelib/lists.h, potracelib/potracelib.c, potracelib/potracelib.h,
- potracelib/progress.h, potracelib/trace.c, potracelib/trace.h:
- updated bundled potrace library to version 1.9
-
-2011-01-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileSystem.cpp, src/FileSystem.h, tests/FileSystemTest.cpp,
- tests/Makefile.am:
- added FileSystem::copy and FileSystem::move; added FileSystemTest
-
- * doc/dvisvgm.txt.in, src/dvisvgm.cpp:
- moved cache files to subfolder ($HOME/.dvisvgm/cache)
-
-2011-01-04 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * Makefile.am, README, configure.ac, doc/Makefile.am, doc/dvisvgm.txt.in,
- src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp, src/BoundingBox.h,
- src/Calculator.cpp, src/Calculator.h, src/CmdLineParserBase.cpp,
- src/CmdLineParserBase.h, src/Color.cpp, src/Color.h,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/CommandLine.cpp, src/CommandLine.h, src/DLLoader.cpp, src/DLLoader.h,
- src/DVIActions.cpp, src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/Directory.cpp, src/Directory.h,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.h, src/FileFinder.cpp,
- src/FileFinder.h, src/FilePath.cpp, src/FilePath.h, src/FileSystem.cpp,
- src/FileSystem.h, src/Font.cpp, src/Font.h, src/FontCache.cpp,
- src/FontCache.h, src/FontEncoding.cpp, src/FontEncoding.h,
- src/FontEngine.cpp, src/FontEngine.h, src/FontManager.cpp,
- src/FontManager.h, src/FontMap.cpp, src/FontMap.h, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.h, src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp,
- src/GFTracer.h, src/Ghostscript.cpp, src/Ghostscript.h, src/Glyph.h,
- src/GlyphTracerMessages.h, src/GraphicPath.h, src/InputBuffer.cpp,
- src/InputBuffer.h, src/InputReader.cpp, src/InputReader.h,
- src/Length.cpp, src/Length.h, src/Makefile.am, src/Matrix.cpp,
- src/Matrix.h, src/Message.cpp, src/Message.h, src/MessageException.h,
- src/MetafontWrapper.cpp, src/MetafontWrapper.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PageRanges.cpp, src/PageRanges.h,
- src/PageSize.cpp, src/PageSize.h, src/Pair.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/SVGTree.cpp, src/SVGTree.h,
- src/SpecialActions.h, src/SpecialHandler.h, src/SpecialManager.cpp,
- src/SpecialManager.h, src/StreamReader.cpp, src/StreamReader.h,
- src/StreamWriter.cpp, src/StreamWriter.h, src/System.cpp, src/System.h,
- src/TFM.cpp, src/TFM.h, src/Terminal.cpp, src/Terminal.h,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.h, src/VFActions.h,
- src/VFReader.cpp, src/VFReader.h, src/VectorStream.h,
- src/XMLDocTypeNode.h, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLNode.cpp, src/XMLNode.h, src/XMLString.cpp, src/XMLString.h,
- src/dvisvgm.cpp, src/macros.h, src/options.dtd, src/options.xml,
- src/psdefs.psc, src/types.h, tests/BoundingBoxTest.cpp,
- tests/CalculatorTest.cpp, tests/ColorSpecialTest.cpp,
- tests/CommandLineTest.cpp, tests/DirectoryTest.cpp,
- tests/FileFinderTest.cpp, tests/FilePathTest.cpp,
- tests/FontManagerTest.cpp, tests/FontMapTest.cpp, tests/GFReaderTest.cpp,
- tests/GraphicPathTest.cpp, tests/LengthTest.cpp, tests/Makefile.am,
- tests/MatrixTest.cpp, tests/PageRagesTest.cpp, tests/PageSizeTest.cpp,
- tests/PairTest.cpp, tests/SplittedCharInputBufferTest.cpp,
- tests/StreamInputBufferTest.cpp, tests/TypesTest.cpp,
- tests/VectorStreamTest.cpp, tests/check-conv, tests/create-makefile:
- updated year in copyright info
-
- * tests/Makefile.am, tests/PSInterpreterTest.cpp:
- added basic tests for class PSInterpreter
-
-2010-12-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FileFinder.cpp:
- updated to MiKTeX 2.8 SDK
-
- * src/PsSpecialHandler.cpp:
- fixed scaling issue in PS positioning
-
- * src/PSInterpreter.cpp, src/PSInterpreter.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/psdefs.psc:
- PS handler: added missing scaling of linewidths and dash distances
-
- * NEWS, configure.ac, src/Doxyfile:
- set version to 1.0.4; updated NEWS
-
- * doc/dvisvgm.txt.in:
- minor update to the manpage
-
-2010-08-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontEngine.cpp:
- fixed FreeType version check (patch by Paul Vojta)
-
-2010-08-11 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * tests/Makefile.am, tests/PairTest.cpp:
- added PairTest
-
-2010-08-06 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.3
-
-2010-08-05 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * NEWS, doc/dvisvgm.txt.in:
- updated manpage and NEWS
-
-2010-08-04 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/BoundingBox.cpp, src/BoundingBox.h, src/Matrix.cpp, src/Matrix.h,
- src/PsSpecialHandler.cpp:
- revamped PsSpecialHandler::psfile() to fix a transformation issue (SF
- bug #3037372)
-
-2010-07-28 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp:
- added check of DVI format version
-
-2010-07-26 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/PsSpecialHandler.cpp, src/PsSpecialHandler.h:
- restore transformation matrix after execution of psfile
-
-2010-07-13 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.3dev
-
- * src/InputBuffer.h:
- added missing namespace prefix
-
- * src/Terminal.cpp:
- replaced \e with \x1B
-
- * src/GraphicPath.h, src/PsSpecialHandler.h:
- fixed missing initialization of GraphicPath iterator
-
- * src/Directory.cpp, src/Directory.h, src/GFReader.cpp, src/GFReader.h:
- added leading underscore to variables of GFReader
-
-2010-06-22 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/gzstream.cpp, src/gzstream.h:
- fixed class variable issue introduced by previous AIX patch
-
- * NEWS, configure.ac, src/Doxyfile:
- set version to 1.0.2
-
-2010-06-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Bitmap.cpp, tests/DirectoryTest.cpp, tests/GFReaderTest.cpp,
- tests/Makefile.am, tests/cmr10.600gf, tests/create-makefile:
- added GFReaderTest; updated DirectoryTest
-
-2010-06-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Bitmap.cpp, src/Calculator.cpp, src/CmdLineParserBase.cpp,
- src/Color.cpp, src/ColorSpecialHandler.cpp, src/DVIReader.cpp,
- src/DVIReader.h, src/DVIToSVGActions.cpp, src/DvisvgmSpecialHandler.cpp,
- src/EmSpecialHandler.cpp, src/FontCache.cpp, src/FontEncoding.cpp,
- src/GFGlyphTracer.cpp, src/Pair.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/TFM.cpp, src/TFM.h:
- fixed some type conversion warnings
-
- * src/Message.cpp, src/Message.h:
- renamed MessageStream::putchar() to MessageStream::putChar() to avoid
- name clashes
-
- * src/types.h, tests/Makefile.am, tests/TypesTest.cpp:
- added TypesTest
-
-2010-06-16 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * potracelib/curve.c, potracelib/curve.h, potracelib/decompose.c:
- renamed internal potrace functions path_new() and path_free() to prevent
- linker conflicts on OS X
-
-2010-06-14 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.2dev
-
- * configure.ac, src/CmdLineParserBase.h, src/FileFinder.h,
- src/FontCache.cpp, src/FontCache.h, src/FontEncoding.cpp,
- src/FontEngine.cpp, src/GFGlyphTracer.h, src/MetafontWrapper.cpp,
- src/gzstream.cpp:
- applied latest TL patches from Peter Breitenlohner and Karl Berry
-
-2010-06-11 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Message.cpp:
- suppress ANSI color code by default
-
- * NEWS, configure.ac, src/Doxyfile:
- set version to 1.0.1
-
-2010-06-09 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/Doxyfile:
- set version to 1.0.1dev
-
- * src/psdefs.psc:
- fixed recursion issue in PS operator charpath
-
-2010-06-08 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, doc/Makefile.am, src/Makefile.am:
- cleaned up configuration scripts
-
- * configure.ac, src/Doxyfile:
- set version to 1.0dev
-
- * doc/dvisvgm.txt.in, src/BoundingBox.cpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/DvisvgmSpecialHandler.cpp,
- src/EmSpecialHandler.cpp, src/PsSpecialHandler.cpp, src/SpecialActions.h,
- src/SpecialManager.cpp, src/TpicSpecialHandler.cpp:
- added special for creating local bounding boxes
-
- * src/FilePath.cpp, src/FilePath.h, src/FileSystem.cpp, src/FileSystem.h,
- src/Makefile.am, tests/FilePathTest.cpp, tests/Makefile.am:
- added class FilePath
-
- * src/InputBuffer.h, tests/ColorSpecialTest.cpp,
- tests/StreamInputBufferTest.cpp:
- added InputBuffer::invalidate()
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Makefile.am,
- src/PageRanges.cpp, src/PageRanges.h, src/StreamCounter.h,
- src/dvisvgm.cpp, src/options.xml, tests/BoundingBoxTest.cpp,
- tests/CommandLineTest.cpp, tests/Makefile.am, tests/PageRagesTest.cpp,
- tests/StreamCounterTest.cpp:
- added conversion of multiple pages
-
- * configure.ac, doc/Makefile.am, doc/dvisvgm.txt.in, src/CommandLine.cpp,
- src/CommandLine.h, src/DVIActions.h, src/DVIToSVG.cpp, src/GFTracer.cpp,
- src/GlyphTracerMessages.h, src/Makefile.am, src/Message.cpp,
- src/Message.h, src/MetafontWrapper.cpp, src/Terminal.cpp, src/Terminal.h,
- src/dvisvgm.cpp, src/options.xml:
- improved output of messages including optional colorization
-
- * src/Font.cpp:
- print error message if Metafont failed
-
- * src/PSInterpreter.cpp, src/PSInterpreter.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/psdefs.psc:
- evaluate Ghostscript operator .setopacityalpha
-
- * src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h:
- added method to compute length of DVI command
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/DVIActions.h, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/Makefile.am, src/Message.cpp, src/Message.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PsSpecialHandler.cpp, src/PsSpecialHandler.h,
- src/SpecialActions.h, src/System.cpp, src/System.h, src/dvisvgm.cpp,
- src/options.xml:
- added percentage-based progress indicator
-
- * doc/Makefile.am, doc/dvisvgm.txt.in:
- documented option --help and --version in manpage
-
- * NEWS, configure.ac, src/Doxyfile:
- set version to 1.0
-
- * src/PSInterpreter.cpp, src/PSInterpreter.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h:
- fixed PS destructor issue (SF bug #3013392)
-
-2010-05-09 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac:
- fixed whitespace issue in CPPFLAGS and LDFLAGS
-
-2010-05-04 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac:
- fixed kpathsea check; use pkg-config to check freetype availability
-
- * tests/FileFinderTest.cpp, tests/FontManagerTest.cpp, tests/check-conv:
- fixed segfaults in tests
-
-2010-04-23 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * NEWS, configure.ac, src/Doxyfile:
- set version to 0.9.1
-
-2010-04-22 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CommandLine.cpp, src/options.xml:
- output of option --help: replaced '(default: FOO)' by '[FOO]'
-
- * src/DVIToSVG.cpp, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/SVGTree.cpp, src/SVGTree.h, src/XMLNode.cpp, src/XMLNode.h:
- ignore unused fonts in CSS styles list
-
- * src/SVGTree.cpp:
- fixed broken validity when using SVG fonts
-
- * src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp,
- src/DVIToSVG.h, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h:
- print page count and page number of DVI page being processed
-
- * tests/check-conv, tests/frktest-wf-cmp.svg, tests/sample-wf-cmp.svg:
- adapted conversion tests to new output format
-
-2010-04-20 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontEncoding.cpp:
- fixed memory bug in FontEncoding::encoding()
-
-2010-04-11 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/Doxyfile:
- set version to 0.9.1dev
-
- * src/DVIToSVGActions.cpp:
- replaced wrong font pointer that could lead to segfaults
-
-2010-03-24 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Font.cpp, src/Font.h, src/dvisvgm.cpp:
- moved some methods from PhysicalFontImpl to PysicalFont
-
- * doc/dvisvgm.txt.in, src/BoundingBox.cpp, src/BoundingBox.h,
- src/CommandLine.cpp, src/CommandLine.h, src/DVIToSVG.cpp,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Font.cpp, src/Font.h,
- src/GlyphTracerMessages.h, src/Makefile.am, src/dvisvgm.cpp,
- src/options.xml:
- added command-line option --exact
-
- * src/FontCache.cpp, src/Makefile.am, src/StreamWriter.cpp,
- src/StreamWriter.h, src/TFM.cpp:
- replaced local stream IO functions by StreamReader/StreamWriter methods
-
- * src/CmdLineParserBase.cpp, src/DVIToSVG.cpp, src/DVIToSVGActions.cpp,
- src/FontEngine.cpp, src/GlyphTracerMessages.h, src/Message.cpp,
- src/Message.h, src/MetafontWrapper.cpp, src/dvisvgm.cpp:
- added class MessageStream, updated message output
-
- * src/FontCache.cpp, src/GFGlyphTracer.cpp, src/GFReader.cpp:
- variable _fontname is now correctly set in class FontCache
-
- * NEWS, configure.ac, src/Doxyfile:
- set version to 0.9
-
- * tests/frktest-nf-cmp.svg, tests/frktest-wf-cmp.svg,
- tests/sample-nf-cmp.svg, tests/sample-wf-cmp.svg:
- updated conversion tests
-
-2010-03-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.cpp, src/SVGTree.cpp:
- moved creation of SVG 'use' elements from class DVIToSVG to class
- SVGTree
-
- * src/DVIToSVG.cpp, src/Font.cpp, src/Font.h, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.h, src/SVGTree.cpp, src/SVGTree.h:
- added class GFGlyphTracer::Callback providing an interface used to print
- status information about the tracer
-
- * src/CmdLineParserBase.cpp, src/CmdLineParserBase.h:
- added evaluation of boolean and char arguments to the command-line
- parser
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/Font.cpp, src/Font.h,
- src/dvisvgm.cpp, src/options.xml, tests/CommandLineTest.cpp:
- reactivated option --trace-all, and added optional argument 'retrace' to
- it
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/Font.cpp, src/Font.h, src/dvisvgm.cpp, src/options.xml:
- added command-line option --keep
-
-2010-03-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/GFReader.cpp, src/GFReader.h:
- replaced GFReader messages by exceptions
-
- * src/CharmapTranslator.cpp, src/CharmapTranslator.h, src/DVIToSVG.cpp,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Font.cpp, src/Font.h,
- src/Makefile.am, src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h, src/SVGTree.cpp,
- src/SVGTree.h:
- removed class CharmapTranslator
-
- * src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp,
- src/DVIToSVGActions.cpp, src/FontManager.cpp, src/FontManager.h,
- src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h, src/SVGTree.cpp,
- src/SVGTree.h, src/VFReader.h, tests/FontManagerTest.cpp:
- made FontManager a singleton
-
- * src/FontCache.cpp, src/FontCache.h:
- added method FontCache::write(const char *dir) that updates the cache
- file of the current font
-
- * src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp, src/Font.cpp,
- src/Font.h, src/FontEmitter.h, src/GFGlyphTracer.h, src/Makefile.am,
- src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h, src/SVGTree.cpp,
- src/SVGTree.h, src/dvisvgm.cpp, tests/Makefile.am, tests/check-conv,
- tests/create-makefile:
- removed emitter classes; incorporated their functionality into SVGTree
- and PhysicalFontImpl
-
- * src/BoundingBox.cpp, src/Calculator.cpp, src/Matrix.cpp,
- src/PSInterpreter.cpp, src/PSInterpreter.h:
- fixed a couple of comments
-
-2010-02-26 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Font.cpp, src/FontCache.cpp, src/FontCache.h, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.h, src/GFReader.cpp, src/GFReader.h, src/GFTracer.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h:
- refactorings of GF tracer class; removed transferGlyph()
-
-2010-02-21 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Font.h, src/FontEncoding.cpp, src/FontEncoding.h,
- src/FontManager.cpp, src/FontManager.h, src/SVGFontEmitter.cpp:
- moved method encoding() from class FontManager to class FontEncoding
-
- * src/CharmapTranslator.cpp, src/CharmapTranslator.h, src/Font.cpp,
- src/Font.h, src/FontCache.cpp, src/FontCache.h, src/FontEngine.cpp,
- src/FontEngine.h, src/Glyph.cpp, src/Glyph.h, src/Makefile.am,
- src/SVGFontEmitter.cpp, src/SVGFontEmitter.h:
- removed class Glyph and incorporated its functionality into Font class
-
-2010-02-05 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/Doxyfile:
- set version to 0.8.9dev
-
- * src/psdefs.psc:
- removed PS error handler nocurrentpoint
-
- * src/DVIToSVG.cpp:
- added evaluation of literal PS headers to PSHeaderActions
-
-2010-02-02 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * NEWS, configure.ac, src/Doxyfile:
- version updated to 0.8.8
-
-2010-02-01 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * tests/check-conv:
- skip conversion checks by default
-
-2010-01-31 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * tests/Makefile.am, tests/check-conv, tests/create-makefile,
- tests/frktest-nf-cmp.svg, tests/frktest-wf-cmp.svg, tests/frktest.dvi,
- tests/normalize.xsl, tests/sample-nf-cmp.svg, tests/sample-wf-cmp.svg,
- tests/sample.dvi:
- added tests to check conversion results
-
- * tests/normalize.xsl:
- some improvements to normalize.xsl
-
-2010-01-29 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/CommandLine.cpp,
- src/CommandLine.h:
- removed CmdLineParserBase::numOptions()
-
- * src/GraphicPath.h:
- fixed scaling bug in computation of glyph paths when using -n
-
-2010-01-24 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/FontCache.h, src/dvisvgm.cpp, src/options.dtd, src/options.xml:
- added command-line option --libgs
-
-2010-01-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/CommandLine.cpp, src/options.dtd, src/options.xml:
- added DTD for options.xml
-
-2010-01-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac:
- updated type of kpathsea_version_string (patch by lomov_vl)
-
- * fedora/dvisvgm-gs.patch, fedora/dvisvgm-potrace.patch,
- fedora/dvisvgm.spec:
- removed fedora directory
-
- * doc/dvisvgm.txt.in, src/BoundingBox.cpp, src/BoundingBox.h,
- src/DVIToSVG.cpp, tests/BoundingBoxTest.cpp, tests/Makefile.am:
- added support for enlarging the minimal bbox by a given amount.
-
- * Makefile.am, README, configure.ac, doc/dvisvgm.txt.in,
- src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp, src/BoundingBox.h,
- src/Calculator.cpp, src/Calculator.h, src/CharmapTranslator.cpp,
- src/CharmapTranslator.h, src/CmdLineParserBase.cpp,
- src/CmdLineParserBase.h, src/Color.cpp, src/Color.h,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/CommandLine.cpp, src/CommandLine.h, src/DLLoader.cpp, src/DLLoader.h,
- src/DVIActions.cpp, src/DVIActions.h, src/DVIReader.cpp, src/DVIReader.h,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/Directory.cpp, src/Directory.h,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.h, src/FileFinder.cpp,
- src/FileFinder.h, src/FileSystem.cpp, src/FileSystem.h, src/Font.cpp,
- src/Font.h, src/FontCache.cpp, src/FontCache.h, src/FontEmitter.h,
- src/FontEncoding.cpp, src/FontEncoding.h, src/FontEngine.cpp,
- src/FontEngine.h, src/FontManager.cpp, src/FontManager.h,
- src/FontMap.cpp, src/FontMap.h, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.h, src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp,
- src/GFTracer.h, src/Ghostscript.cpp, src/Ghostscript.h, src/Glyph.cpp,
- src/Glyph.h, src/GraphicPath.h, src/InputBuffer.cpp, src/InputBuffer.h,
- src/InputReader.cpp, src/InputReader.h, src/Length.cpp, src/Length.h,
- src/Makefile.am, src/Matrix.cpp, src/Matrix.h, src/Message.cpp,
- src/Message.h, src/MessageException.h, src/MetafontWrapper.cpp,
- src/MetafontWrapper.h, src/PSInterpreter.cpp, src/PSInterpreter.h,
- src/PageSize.cpp, src/PageSize.h, src/Pair.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h, src/SVGTree.cpp,
- src/SVGTree.h, src/SpecialActions.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h, src/StreamCounter.h,
- src/StreamReader.cpp, src/StreamReader.h, src/TFM.cpp, src/TFM.h,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.h, src/VFActions.h,
- src/VFReader.cpp, src/VFReader.h, src/VectorStream.h,
- src/XMLDocTypeNode.h, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLNode.cpp, src/XMLNode.h, src/XMLString.cpp, src/XMLString.h,
- src/dvisvgm.cpp, src/macros.h, src/options.xml, src/psdefs.psc,
- src/types.h, tests/BoundingBoxTest.cpp, tests/CalculatorTest.cpp,
- tests/ColorSpecialTest.cpp, tests/CommandLineTest.cpp,
- tests/DirectoryTest.cpp, tests/FileFinderTest.cpp,
- tests/FontManagerTest.cpp, tests/FontMapTest.cpp,
- tests/GraphicPathTest.cpp, tests/LengthTest.cpp, tests/Makefile.am,
- tests/MatrixTest.cpp, tests/PageSizeTest.cpp,
- tests/SplittedCharInputBufferTest.cpp, tests/StreamCounterTest.cpp,
- tests/StreamInputBufferTest.cpp, tests/VectorStreamTest.cpp,
- tests/create-makefile:
- updated boilerplates
-
- * doc/dvisvgm.txt.in, src/FileFinder.cpp, src/Ghostscript.cpp,
- src/Ghostscript.h, src/dvisvgm.cpp:
- environment variable LIBGS can now be used to set the name of the GS
- shared library
-
- * NEWS:
- updated NEWS
-
- * src/Ghostscript.cpp:
- fixed typo in variable name
-
-2009-12-16 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/InputReader.cpp:
- fixed bug in InputReader::parseUInt()
-
-2009-12-15 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, src/dvisvgm.cpp:
- appied get_time patch sent by Peter Breitenlohner
-
-2009-12-02 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/BoundingBox.h, src/Calculator.h, src/CharmapTranslator.h,
- src/DVIReader.h, src/DVIToSVG.h, src/DVIToSVGActions.h, src/Font.h,
- src/FontEngine.h, src/FontManager.h, src/FontMap.h, src/GFGlyphTracer.h,
- src/GFReader.h, src/MessageException.h, src/MetafontWrapper.h,
- src/PageSize.h, src/SVGTree.cpp, src/SVGTree.h, src/StreamReader.h,
- src/VFActions.h, src/VFReader.h, src/XMLDocTypeNode.h, src/XMLDocument.h,
- src/XMLNode.h, src/XMLString.h:
- removed using statements from header files
-
-2009-11-25 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/FontCache.cpp, src/FontCache.h, src/FontEngine.cpp,
- src/FontEngine.h, src/FontGlyph.cpp, src/FontGlyph.h,
- src/GFGlyphTracer.cpp, src/GFGlyphTracer.h, src/GFTracer.cpp,
- src/Glyph.cpp, src/Glyph.h, src/GraphicPath.h, src/Makefile.am,
- src/Pair.h, src/SVGFontEmitter.cpp, src/SVGFontTraceEmitter.cpp,
- tests/GraphicPathTest.cpp:
- removed FEGlyphCommands and replaced separate glyph class implementation
- by class GraphicPath
-
-2009-11-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.cpp, src/Ghostscript.cpp, src/Ghostscript.h:
- replaced #if !DISABLE_GS by #if !defined(DISABLE_GS) (Peter
- Breitenlohner)
-
- * src/Ghostscript.cpp, src/Ghostscript.h:
- replaced #if HAVE_LIBGS by #if defined(HAVE_LIBGS)
-
- * src/DLLoader.cpp, src/DLLoader.h:
- fixed line endings
-
-2009-11-17 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * configure.ac, fedora/dvisvgm.spec, src/Doxyfile:
- set version number to 0.8.8dev
-
- * potracelib/potracelib.c, potracelib/potracelib.h:
- replaced outdated string constant type char* by const char* in
- potrace_version()
-
- * src/Color.cpp, src/ColorSpecialHandler.cpp, src/FontManager.cpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h,
- src/TpicSpecialHandler.cpp:
- added explicit casts to avoid compiler warnings (Peter Breitenlohner)
-
- * src/InputReader.cpp:
- added missing initialization value (Peter Breitenlohner)
-
- * src/CmdLineParserBase.h, src/GraphicPath.h, src/InputReader.h,
- src/Makefile.am, src/PSInterpreter.h, src/SpecialManager.h:
- added missing virtual destructors to avoid warnings
-
- * src/dvisvgm.cpp:
- don't use email adress PACKAGE_BUGREPORT for copyright notice
-
- * NEWS:
- updated NEWS
-
-2009-11-09 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVG.cpp, src/dvisvgm.cpp:
- added total number of pages to message text
-
- * NEWS, src/Color.cpp, src/Color.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/SVGTree.cpp:
- PS handler: colors set by color specials are now considered properly
-
- * configure.ac, fedora/dvisvgm.spec, src/Doxyfile:
- set version to 0.8.7
-
-2009-11-06 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/GraphicPath.h, src/PsSpecialHandler.cpp:
- PS handler: replace zero-length paths by dots
-
- * NEWS, doc/dvisvgm.txt.in:
- updated NEWS and manpage
-
- * NEWS, src/PsSpecialHandler.cpp:
- fixed path scaling issue in PS handler
-
-2009-10-29 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DVIToSVGActions.cpp, src/Font.cpp, src/Font.h:
- fixed positioning of italic characters
-
-2009-10-25 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/DvisvgmSpecialHandler.cpp:
- added macro {?nl} to dvisvgm:raw evaluator
-
-2009-10-18 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/Font.cpp, src/TFM.cpp, src/TFM.h:
- added italic correction values to character widths
-
-2009-10-16 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * tests/Makefile.am, tests/create-makefile:
- added script to create tests/Makefile.am
-
- * configure.ac, src/Doxyfile:
- increased version to 0.8.7dev
-
-2009-10-13 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * doc/Makefile.am, doc/dvisvgm.txt.in:
- removed outdated post-processing of manpage
-
- * fedora/dvisvgm.spec:
- updated spec file
-
- * doc/Makefile.am:
- added missing dvi suffix in Makefile target dvi-pdf
-
- * README, tests/CalculatorTest.cpp, tests/CalculatorTest.h,
- tests/ColorSpecialTest.cpp, tests/ColorSpecialTest.h,
- tests/CommandLineTest.cpp, tests/CommandLineTest.h,
- tests/DirectoryTest.cpp, tests/DirectoryTest.h, tests/FileFinderTest.cpp,
- tests/FileFinderTest.h, tests/FontManagerTest.cpp,
- tests/FontManagerTest.h, tests/FontMapTest.cpp, tests/FontMapTest.h,
- tests/GraphicPathTest.cpp, tests/GraphicPathTest.h, tests/LengthTest.cpp,
- tests/LengthTest.h, tests/Makefile.am, tests/MatrixTest.cpp,
- tests/MatrixTest.h, tests/PageSizeTest.cpp, tests/PageSizeTest.h,
- tests/SplittedCharInputBufferTest.cpp,
- tests/SplittedCharInputBufferTest.h, tests/StreamCounterTest.cpp,
- tests/StreamCounterTest.h, tests/StreamInputBufferTest.cpp,
- tests/StreamInputBufferTest.h, tests/VectorStreamTest.cpp,
- tests/VectorStreamTest.h:
- replaced cxxtest by googletest
-
-2009-10-12 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp, src/BoundingBox.h,
- src/Calculator.cpp, src/Calculator.h, src/CharmapTranslator.cpp,
- src/CharmapTranslator.h, src/CmdLineParserBase.cpp,
- src/CmdLineParserBase.h, src/Color.cpp, src/Color.h,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h, src/DLLoader.cpp,
- src/DLLoader.h, src/DVIActions.cpp, src/DVIActions.h, src/DVIReader.cpp,
- src/DVIReader.h, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/Directory.cpp, src/Directory.h,
- src/DvisvgmSpecialHandler.h, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.h, src/FileFinder.cpp, src/FileFinder.h,
- src/FileSystem.cpp, src/FileSystem.h, src/Font.cpp, src/Font.h,
- src/FontCache.cpp, src/FontCache.h, src/FontEmitter.h,
- src/FontEncoding.cpp, src/FontEncoding.h, src/FontEngine.cpp,
- src/FontEngine.h, src/FontGlyph.cpp, src/FontGlyph.h,
- src/FontManager.cpp, src/FontManager.h, src/FontMap.cpp, src/FontMap.h,
- src/GFGlyphTracer.cpp, src/GFGlyphTracer.h, src/GFReader.cpp,
- src/GFReader.h, src/GFTracer.cpp, src/GFTracer.h, src/Ghostscript.cpp,
- src/Ghostscript.h, src/GraphicPath.h, src/InputBuffer.cpp,
- src/InputBuffer.h, src/InputReader.cpp, src/InputReader.h,
- src/Matrix.cpp, src/Matrix.h, src/Message.cpp, src/Message.h,
- src/MessageException.h, src/MetafontWrapper.cpp, src/MetafontWrapper.h,
- src/PSInterpreter.cpp, src/PSInterpreter.h, src/PageSize.cpp,
- src/PageSize.h, src/Pair.h, src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h,
- src/SpecialActions.h, src/SpecialHandler.h, src/SpecialManager.cpp,
- src/SpecialManager.h, src/StreamCounter.h, src/StreamReader.cpp,
- src/StreamReader.h, src/TFM.cpp, src/TFM.h, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h, src/VFActions.h, src/VFReader.cpp,
- src/VFReader.h, src/VectorStream.h, src/XMLDocTypeNode.h,
- src/XMLDocument.cpp, src/XMLDocument.h, src/XMLNode.cpp, src/XMLNode.h,
- src/XMLString.cpp, src/XMLString.h, src/macros.h, src/types.h:
- code cleanup
-
-2009-10-11 Martin Gieseking <mgieseki@users.sourceforge.net>
-
- * autogen.sh:
- fixed file permissions of autogen.sh
-
- * src/DVIToSVG.cpp, src/DvisvgmSpecialHandler.cpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/SVGTree.cpp,
- src/SVGTree.h:
- suppress empty style and transformation elements
-
- * NEWS:
- NEWS updated
-
-2009-10-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- scale clipping paths by 72.27/72
-
-2009-10-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bitmap.h:
- fixed bit shift overflow in Bitmap class occured on 64-bit systems
-
- * autogen.sh, prepare:
- prepare script replaced by autogen.sh
-
- * doc/dvisvgm.txt.in:
- fixed formatting of manual page
-
- * src/Length.cpp, src/Length.h, tests/LengthTest.h:
- fixed unit conversion bug
-
- * src/Makefile.am:
- fixed Makefile
-
-2009-10-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, doc/dvisvgm.txt.in, src/BoundingBox.cpp, src/CommandLine.cpp,
- src/CommandLine.h, src/DVIToSVG.cpp, src/DVIToSVG.h, src/dvisvgm.cpp,
- src/options.xml, tests/CommandLineTest.h, tests/Makefile.am:
- cmdline parameter --bbox can now be used to set the absolute bounding
- box
-
- * NEWS, src/GraphicPath.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h:
- PS clipping path sequences and intersections are now handled correctly
-
- * src/MetafontWrapper.cpp:
- fixed file permissions
-
- * src/dvisvgm.cpp:
- fixed uncaught PageSizeException
-
-2009-10-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, doc/dvisvgm.txt.in, src/BoundingBox.cpp, src/BoundingBox.h,
- src/DvisvgmSpecialHandler.cpp:
- added the special variant 'dvisvgm:bbox abs' and 'dvisvgm:bbox fix'
-
- * src/BoundingBox.cpp, src/BoundingBox.h, src/Length.cpp, src/Length.h,
- src/Makefile.am, tests/LengthTest.h:
- class Length provides length unit calculations
-
-2009-10-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BoundingBox.cpp, src/BoundingBox.h, src/GraphicPath.h,
- src/PSInterpreter.cpp, src/PSInterpreter.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/psdefs.psc:
- fixed some PS bounding box and positioning issues introduced by previous
- changesets
-
- * NEWS, configure.ac, fedora/dvisvgm.spec, src/Doxyfile:
- set version to 0.8.6
-
-2009-10-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- convert PS path coordinated to TeX point units
-
- * NEWS, src/PsSpecialHandler.cpp:
- fixed another positioning bug reported by John Bowman
-
-2009-10-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GraphicPath.h, src/PsSpecialHandler.cpp, src/PsSpecialHandler.h:
- corrected positioning bug introduced with previous PS positioning fix
-
-2009-10-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am, doc/dvisvgm.txt.in:
- generate pdf manpage directly with groff; adapted manpage source to work
- with latest asciidoc
-
-2009-10-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am, doc/dvisvgm.txt.in:
- replaced backticks in manpage by apostrophes; updated date on homepage
-
-2009-09-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DvisvgmSpecialHandler.cpp:
- added optional depth parameter to special dvisvgm:raw
-
- * doc/dvisvgm.txt.in:
- added dvisvgm:raw example to man page
-
- * LGPL-2.1.txt, NEWS, README:
- updated README and NEWS, and added file with LGPL license text
-
- * Makefile.am, configure.ac, fedora/dvisvgm.spec, src/Doxyfile:
- increased version number to 0.8.5
-
-2009-09-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS:
- added cretdit to John Bowman for sending a patch for the already fixed
- clipping bug
-
- * src/PsSpecialHandler.h:
- increased the default linewidth to 0.5
-
- * fedora/dvisvgm.spec:
- updated spec file and fixed typo on website
-
- * doc/dvisvgm.txt.in:
- minor changes of the documentation
-
-2009-09-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, src/CmdLineParserBase.cpp, src/FontCache.cpp,
- src/SVGFontTraceEmitter.cpp:
- fixed memory bug in tracer module (issue #21)
-
- * NEWS, doc/dvisvgm.txt.in, src/CommandLine.cpp, src/CommandLine.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/SpecialManager.cpp,
- src/SpecialManager.h, src/dvisvgm.cpp, src/options.xml:
- added option --progress for enabling a progress indicator (feature #22)
-
- * src/FileSystem.cpp, src/MetafontWrapper.cpp:
- Windows: Metafont is now called via CreateProcess()
-
-2009-09-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h, src/DVIToSVG.cpp,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h:
- refactored prefixes methods of the SpecialHandlers (ticket #20)
-
- * NEWS, doc/dvisvgm.txt.in, src/FileSystem.cpp, src/FileSystem.h,
- src/FontCache.cpp, src/FontCache.h, src/dvisvgm.cpp:
- option --cache prints additional information about the cached fonts
- (feature #7)
-
- * src/FileSystem.cpp, src/FontCache.cpp:
- fixed Windows-related bug in FileSystem::collect
-
-2009-09-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, README:
- updated NEWS and README
-
-2009-09-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, fedora/dvisvgm.spec, src/Doxyfile:
- increased version number to 0.8.4
-
- * src/BoundingBox.cpp, src/BoundingBox.h, src/PsSpecialHandler.cpp:
- linewidths are now considered properly in computation of bounding box
- (issue #13)
-
- * src/dvisvgm.cpp:
- fixed evaluation of option --help
-
- * src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/CommandLine.cpp,
- src/InputBuffer.h, src/InputReader.h, src/psdefs.psc,
- tests/CommandLineTest.h:
- improved the command line parser to make it more POSIX-compliant
- (feature #17)
-
-2009-09-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp, src/psdefs.psc:
- fixed flattened clipping path bug (issue #11)
-
-2009-08-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Makefile.am:
- added error checks; disallow numeric optional arguments w/o default
- value
-
-2009-08-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, src/PSInterpreter.cpp, src/PsSpecialHandler.cpp, src/dvisvgm.cpp,
- src/psdefs.psc:
- added evaluation of PS 'show' operator in order to evaluate PSTricks
- Type 3 fonts properly
-
- * fedora/dvisvgm.spec:
- updated spec file and homepage to latest release
-
-2009-08-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, configure.ac, doc/dvisvgm.txt.in, src/CmdLineParserBase.cpp,
- src/CommandLine.cpp, src/Doxyfile, src/dvisvgm.cpp, src/getopt.c,
- src/getopt.h, src/getopt1.c, src/options.xml:
- replaced option --cache=? by --cache; increased version number to 0.8.3
-
-2009-08-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * fedora/dvisvgm-0.8.1-potrace.patch, fedora/dvisvgm-gs.patch,
- fedora/dvisvgm-potrace.patch, fedora/dvisvgm.spec:
- updated Fedora files
-
- * configure.ac, fedora/dvisvgm.spec, src/Ghostscript.cpp,
- src/Ghostscript.h, src/Makefile.am:
- improved Ghostscript and potrace linking checks to simplify usage of
- external devel files
-
- * NEWS, configure.ac, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/PsSpecialHandler.cpp,
- src/SpecialManager.cpp, src/SpecialManager.h:
- PS prologue files referenced in first page are now always loaded
-
-2009-08-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CommandLine.cpp, src/CommandLine.h:
- speed up printing help by using puts() instead of C++ streams
-
-2009-08-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontMap.cpp:
- fixed memory bug in FontMap
-
- * src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/Makefile.am,
- src/dvisvgm.cpp, src/options.xml, tests/CommandLineTest.h,
- tests/Makefile.am:
- improved CmdLineParserBase and replaced gengetopt-based parser
-
- * NEWS, configure.ac, src/CmdLineParserBase.cpp, src/CmdLineParserBase.h,
- src/Doxyfile:
- increased version number to 0.8.2
-
-2009-08-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/InputReader.cpp, src/InputReader.h:
- added method parseUInt()
-
- * src/CmdLineParserBase.cpp, src/CmdLineParserBase.h, src/options.xml:
- added files for replacement of gengetopt (not active yet)
-
- * src/CmdLineParserBase.cpp, src/CmdLineParserBase.h:
- finished cmdline parser
-
- * COPYING:
- added copy of file COPYING
-
-2009-08-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * tests/Makefile.am:
- added include path to fix broken distcheck
-
- * COPYING, LICENSE, Makefile.am, README, doc/dvisvgm.txt.in,
- src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp, src/BoundingBox.h,
- src/Calculator.cpp, src/Calculator.h, src/CharmapTranslator.cpp,
- src/CharmapTranslator.h, src/Color.cpp, src/Color.h,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h, src/DLLoader.cpp,
- src/DLLoader.h, src/DVIActions.cpp, src/DVIActions.h, src/DVIReader.cpp,
- src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Directory.cpp,
- src/Directory.h, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.h, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.h, src/FileFinder.cpp, src/FileFinder.h,
- src/FileSystem.cpp, src/FileSystem.h, src/Font.cpp, src/Font.h,
- src/FontCache.cpp, src/FontCache.h, src/FontEmitter.h,
- src/FontEncoding.cpp, src/FontEncoding.h, src/FontEngine.cpp,
- src/FontEngine.h, src/FontGlyph.cpp, src/FontGlyph.h,
- src/FontManager.cpp, src/FontManager.h, src/FontMap.cpp, src/FontMap.h,
- src/GFGlyphTracer.cpp, src/GFGlyphTracer.h, src/GFReader.cpp,
- src/GFReader.h, src/GFTracer.cpp, src/GFTracer.h, src/Ghostscript.cpp,
- src/Ghostscript.h, src/GraphicPath.h, src/InputBuffer.cpp,
- src/InputBuffer.h, src/InputReader.cpp, src/InputReader.h,
- src/Matrix.cpp, src/Matrix.h, src/Message.cpp, src/Message.h,
- src/MessageException.h, src/MetafontWrapper.cpp, src/MetafontWrapper.h,
- src/PSInterpreter.cpp, src/PSInterpreter.h, src/PageSize.cpp,
- src/PageSize.h, src/Pair.h, src/PsSpecialHandler.cpp,
- src/PsSpecialHandler.h, src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h, src/SVGTree.cpp,
- src/SVGTree.h, src/SpecialActions.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h, src/StreamCounter.h,
- src/StreamReader.cpp, src/StreamReader.h, src/TFM.cpp, src/TFM.h,
- src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.h, src/VFActions.h,
- src/VFReader.cpp, src/VFReader.h, src/VectorStream.h,
- src/XMLDocTypeNode.h, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLNode.cpp, src/XMLNode.h, src/XMLString.cpp, src/XMLString.h,
- src/dvisvgm.cpp, src/inttypes.h, src/macros.h, src/psdefs.psc,
- src/types.h, tests/CalculatorTest.h, tests/ColorSpecialTest.h,
- tests/DirectoryTest.h, tests/FileFinderTest.h, tests/FontManagerTest.h,
- tests/FontMapTest.h, tests/GraphicPathTest.h, tests/MatrixTest.h,
- tests/PageSizeTest.h, tests/SplittedCharInputBufferTest.h,
- tests/StreamCounterTest.h, tests/StreamInputBufferTest.h,
- tests/VectorStreamTest.h:
- changed license to GPL version 3 or later
-
-2009-08-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * fedora/dvisvgm-0.8.1-potrace.patch, fedora/dvisvgm.spec:
- added spec file and patch for Fedora builds
-
- * Makefile.am, configure.ac, src/Makefile.am, src/tests/CalculatorTest.h,
- src/tests/ColorSpecialTest.h, src/tests/DirectoryTest.h,
- src/tests/FileFinderTest.h, src/tests/FontManagerTest.h,
- src/tests/FontMapTest.h, src/tests/GraphicPathTest.h,
- src/tests/MatrixTest.h, src/tests/PageSizeTest.h,
- src/tests/SplittedCharInputBufferTest.h, src/tests/StreamCounterTest.h,
- src/tests/StreamInputBufferTest.h, src/tests/VectorStreamTest.h,
- src/tests/dvipdfm_test.map, src/tests/dvips_test.map,
- tests/CalculatorTest.h, tests/ColorSpecialTest.h, tests/DirectoryTest.h,
- tests/FileFinderTest.h, tests/FontManagerTest.h, tests/FontMapTest.h,
- tests/GraphicPathTest.h, tests/Makefile.am, tests/MatrixTest.h,
- tests/PageSizeTest.h, tests/SplittedCharInputBufferTest.h,
- tests/StreamCounterTest.h, tests/StreamInputBufferTest.h,
- tests/VectorStreamTest.h, tests/dvipdfm_test.map, tests/dvips_test.map:
- moved tests from src/tests to ./tests
-
- * tests/Makefile.am:
- added generated file test-all.cpp to CLEANFILES
-
-2009-08-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * LICENSE, Makefile.am, src/Ghostscript.cpp:
- modified package to be compatible with prerequisites of Fedora
-
-2009-07-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, src/DVIToSVG.cpp:
- added target triplet to version string in SVG output
-
- * src/DVIToSVGActions.cpp, src/Ghostscript.cpp, src/Ghostscript.h,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h:
- added Ghostscript revision info to output of dvisvgm -l
-
-2009-07-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/psdefs.psc:
- added vim tag to psdefs.psc
-
-2009-07-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PsSpecialHandler.cpp:
- added evaluation of more psfile parameters; fixed psfile bounding box
- bug
-
- * NEWS, configure.ac, src/Doxyfile:
- updated version number to 0.8.1
-
- * NEWS, src/FileSystem.cpp, src/FontEngine.cpp, src/FontManager.cpp,
- src/Ghostscript.cpp, src/PageSize.cpp, src/dvisvgm.cpp:
- fixed bug related to unsigned/size_t mismatch on x64 systems
-
- * src/psdefs.psc:
- cleaned up VC++ build files; added batch file to generate cmdline.c;
- added generated file psdefs.psc for convenience
-
-2009-07-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DLLoader.cpp, src/InputReader.cpp, src/PSInterpreter.cpp:
- changes to make VC happy; fixed potential memory bug
-
- * NEWS, README:
- fixed typos; updated homepage/manpage
-
- * src/DVIReader.h, src/InputBuffer.cpp, src/InputBuffer.h,
- src/InputReader.cpp, src/InputReader.h, src/Matrix.cpp, src/Matrix.h,
- src/PSInterpreter.h:
- replaced size_t parameters by unsigned
-
-2009-07-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/PSInterpreter.cpp:
- some clean-ups
-
-2009-07-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, README, doc/dvisvgm.txt.in, src/BoundingBox.cpp,
- src/BoundingBox.h, src/GraphicPath.h, src/PSInterpreter.cpp,
- src/PsSpecialHandler.cpp, src/PsSpecialHandler.h:
- fixed clipping bug; updated homepage, README, NEWS
-
- * src/TpicSpecialHandler.cpp:
- fixed reintroduced bug in TPIC handler
-
-2009-07-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DvisvgmSpecialHandler.cpp, src/InputBuffer.cpp, src/InputReader.cpp,
- src/InputReader.h, src/PsSpecialHandler.cpp, src/PsSpecialHandler.h,
- src/tests/StreamInputBufferTest.h:
- implemented psfile special; fixed some bugs
-
- * src/PsSpecialHandler.cpp, src/SVGTree.cpp:
- fixed bbox bug; added missing file
-
-2009-07-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, doc/dvisvgm.txt.in, src/BoundingBox.cpp,
- src/BoundingBox.h, src/Color.cpp, src/Color.h, src/DLLoader.cpp,
- src/DLLoader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Doxyfile,
- src/DvisvgmSpecialHandler.cpp, src/EmSpecialHandler.cpp,
- src/FileFinder.cpp, src/FontEncoding.cpp, src/Ghostscript.cpp,
- src/Ghostscript.h, src/GraphicPath.h, src/InputBuffer.cpp,
- src/InputBuffer.h, src/InputReader.cpp, src/InputReader.h,
- src/Makefile.am, src/Matrix.cpp, src/Matrix.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PsSpecialHandler.cpp, src/PsSpecialHandler.h,
- src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h, src/SVGTree.h,
- src/SpecialActions.h, src/TpicSpecialHandler.cpp,
- src/TransformationMatrix.cpp, src/TransformationMatrix.h,
- src/XMLDocument.cpp, src/XMLDocument.h, src/XMLNode.cpp, src/XMLNode.h,
- src/iapi.h, src/ierrors.h, src/tests/GraphicPathTest.h,
- src/tests/MatrixTest.h, src/tests/SplittedCharInputBufferTest.h,
- src/tests/StreamInputBufferTest.h:
- transplanted PS functionality to default branch
-
-2009-06-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GFReader.cpp, src/GFReader.h:
- removed error method, use Message::estream instead
-
- * src/InputBuffer.cpp, src/InputBuffer.h, src/Makefile.am:
- transplanted changes to InputBuffer from branch 'pages'
-
- * src/Bitmap.cpp, src/Bitmap.h:
- transplanted changes to Bitmap from branch 'pages'
-
- * src/DVIReader.cpp, src/DVIReader.h:
- transplanted changes to DVIReader from branch 'pages'
-
- * src/FileSystem.cpp, src/FileSystem.h:
- transplanted changes to FileSystem from branch 'pages'
-
- * src/VFReader.cpp:
- transplanted changes to VFReader from branch 'pages'
-
- * src/GFTracer.cpp:
- transplanted changes to GFTracer from branch 'pages'
-
- * src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/DvisvgmSpecialHandler.cpp, src/DvisvgmSpecialHandler.h,
- src/EmSpecialHandler.cpp, src/EmSpecialHandler.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h:
- transplanted changes to SpecialHandlers from branch 'pages'
-
-2009-04-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TpicSpecialHandler.cpp:
- fixed TPIC handler bug that could caused unwanted color fills of
- ellipses due to a missing call of reset()
-
- * NEWS, configure.ac, src/Doxyfile:
- increased version number to 0.7.3
-
- * src/FontCache.h:
- increased version of font cache files to ensure their recreation due to
- the previously fixed shorthand path command bug
-
-2009-04-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontGlyph.cpp:
- fixed bug in computation of shorthand path command
-
-2009-04-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontMap.cpp:
- fixed bug in FontMap that causes a segfault if extension in given font
- file is missing (reported by Armin Geisse)
-
-2009-04-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * configure.ac, doc/dvisvgm.txt.in, src/MetafontWrapper.cpp,
- src/dvisvgm.cpp:
- prepared release 0.7.2 (removed inclusions of debug.h, adapted homepage
- and manpage)
-
-2009-03-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/MetafontWrapper.cpp, src/MetafontWrapper.h:
- ported fix in MetafontWrapper back to default branch
-
-2009-03-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/DVIToSVG.h, src/FontGlyph.cpp,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h, src/dvisvgm.cpp:
- replaced Metafont magnification variable and its setters by a public
- class variable
-
- * src/Doxyfile:
- added doxygen files
-
- * src/SVGFontTraceEmitter.cpp:
- fixed closing bracket "bug" when writing the currently traced character
- to the terminal
-
-2009-03-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, src/FontCache.cpp, src/FontGlyph.cpp, src/FontGlyph.h,
- src/GFGlyphTracer.cpp, src/Pair.h, src/SVGFontEmitter.cpp:
- use of shorthand path commands has been implemented
-
- * src/FontGlyph.cpp:
- fixed potential bug in Glyph::optimizeCommands()
-
- * src/FontGlyph.cpp:
- fixed memory bug in Glyph::optimizeCommands()
-
-2009-03-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontCache.cpp:
- cache files are being compressed now to reduce the file size
-
-2009-03-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, doc/dvisvgm.txt.in, src/FontEmitter.h, src/GFGlyphTracer.cpp,
- src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h, src/dvisvgm.cpp,
- src/options.ggo:
- added option --trace-all that forces tracing of all glyphs of all
- currently used bitmap fonts
-
- * src/FontCache.cpp, src/SVGFontTraceEmitter.cpp:
- don't read existing cache file if --trace-all is given (trace complete
- font and then write cache file instead)
-
-2009-03-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontCache.cpp:
- fixed bug in read/write functions of FontCache
-
- * src/DVIToSVG.cpp, src/TFM.cpp, src/TFM.h:
- added firstChar()/lastChar() to TFM class, removed unnecessary mag
- member variable and its setter
-
-2009-03-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.txt.in, src/DVIToSVG.cpp, src/FileSystem.cpp,
- src/FileSystem.h, src/FontCache.cpp, src/FontCache.h, src/FontGlyph.h,
- src/GFGlyphTracer.cpp, src/GFGlyphTracer.h, src/Makefile.am,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h, src/dvisvgm.cpp:
- completed font caching support
-
- * doc/dvisvgm.txt.in, src/dvisvgm.cpp:
- added option variant --cache=? to display the default cache directory
-
- * src/FontCache.cpp:
- reduced size of cache file format by using variable integer sizes
-
-2009-03-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, configure.ac, doc/dvisvgm.txt.in, src/DVIToSVG.cpp,
- src/FileSystem.cpp, src/FileSystem.h, src/FontCache.cpp, src/FontCache.h,
- src/FontGlyph.cpp, src/FontGlyph.h, src/GFGlyphTracer.cpp,
- src/GFGlyphTracer.h, src/GFTracer.cpp, src/options.ggo:
- first additions to support font caching; not working yet
-
-2009-03-11 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/FontEmitter.h, src/SVGFontEmitter.cpp,
- src/SVGFontEmitter.h, src/SVGFontTraceEmitter.cpp,
- src/SVGFontTraceEmitter.h:
- improved font embedding algorithm in case of --no-fonts (identical
- glyphs in different sizes are now referenced rather than duplicated)
-
-2009-03-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, src/DVIToSVG.cpp, src/DVIToSVGActions.cpp, src/Font.h,
- src/SVGFontEmitter.cpp, src/SVGFontTraceEmitter.cpp:
- all glyph sizes are now computed correctly in conjuction with option
- --no-fonts
-
-2009-03-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BgColorSpecialHandler.cpp, src/SpecialManager.cpp,
- src/TpicSpecialHandler.cpp:
- adapted Code to make VC happy
-
- * src/types.h:
- minor changes to homepage and .hgignore
-
- * src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp:
- fixed transformation bug (transformations are now applied properly to
- the page)
-
-2009-03-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, README, src/Color.cpp, src/Color.h, src/ColorSpecialHandler.cpp,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/DvisvgmSpecialHandler.cpp, src/EmSpecialHandler.cpp, src/Makefile.am,
- src/TpicSpecialHandler.cpp:
- added bgcolor support, updated homepage, fixed color handler bug
-
- * src/BgColorSpecialHandler.cpp, src/BgColorSpecialHandler.h:
- added missing background color handler
-
-2009-03-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.h:
- implemented arc drawing of tpic special set
-
- * src/TpicSpecialHandler.cpp, src/TpicSpecialHandler.h:
- implemented splines of tpic specials
-
-2009-03-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/BoundingBox.cpp, src/BoundingBox.h, src/Color.cpp,
- src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h, src/DVIActions.h,
- src/DVIBBoxActions.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/EmSpecialHandler.cpp,
- src/Makefile.am, src/SpecialActions.h, src/SpecialHandler.h,
- src/TpicSpecialHandler.cpp:
- improved computation of the bounding box (works with specials now);
- added dummy function for background color assignments
-
- * doc/Makefile.am, doc/dvisvgm.txt.in, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.h, src/InputBuffer.cpp, src/InputBuffer.h,
- src/SpecialActions.h:
- implemented the dvisvgm specials raw, image, and bbox
-
- * doc/dvisvgm.txt.in, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.h:
- minor code improvements; comments added
-
-2009-02-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am, doc/dvisvgm.txt, doc/dvisvgm.txt.in:
- removed generated file, added dvisvgm.txt.in
-
- * doc/Makefile.am, doc/dvisvgm.txt.in:
- improved manpage
-
-2009-02-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/DvisvgmSpecialHandler.cpp, src/EmSpecialHandler.cpp,
- src/SpecialActions.h, src/TpicSpecialHandler.cpp:
- renamed appendInPage() to appendToPage
-
-2009-02-24 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/DVIToSVGActions.cpp, src/DvisvgmSpecialHandler.cpp,
- src/DvisvgmSpecialHandler.h, src/EmSpecialHandler.cpp,
- src/EmSpecialHandler.h, src/Makefile.am, src/SpecialColorHandler.cpp,
- src/SpecialColorHandler.h, src/SpecialDvisvgmHandler.cpp,
- src/SpecialDvisvgmHandler.h, src/SpecialEmHandler.cpp,
- src/SpecialEmHandler.h, src/SpecialHandler.h, src/SpecialHtmlHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h,
- src/tests/ColorSpecialTest.h:
- improved SpecialHandler is now able to handle unprefixed specials
-
- * NEWS, src/Color.cpp, src/Color.h, src/DVIToSVGActions.cpp,
- src/Makefile.am, src/Pair.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h, src/TpicSpecialHandler.cpp,
- src/TpicSpecialHandler.h:
- first tpic implementations; not complete yet
-
- * NEWS, doc/dvisvgm.1.in, src/TpicSpecialHandler.cpp:
- few additions to tpic handler
-
-2009-02-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, configure.ac, doc/dvisvgm.1.in, src/DVIBBoxActions.h,
- src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/FontEmitter.h, src/FontEngine.cpp,
- src/FontEngine.h, src/FontGlyph.cpp, src/FontGlyph.h,
- src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h, src/XMLNode.cpp,
- src/XMLNode.h, src/dvisvgm.cpp, src/options.ggo,
- src/tests/ColorSpecialTest.h:
- added option --no-fonts wich uses path elements instead of fonts
-
-2009-02-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, doc/dvisvgm.1.in, src/Color.cpp, src/Color.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Makefile.am,
- src/SpecialActions.h, src/SpecialColorHandler.cpp,
- src/SpecialDvisvgmHandler.cpp, src/SpecialDvisvgmHandler.h,
- src/SpecialEmHandler.cpp, src/SpecialEmHandler.h,
- src/SpecialHtmlHandler.h, src/VerbSpecialHandler.cpp,
- src/VerbSpecialHandler.h:
- fixed bug in color handler, added skeletons of dvisvgm/hyperref special
- handlers
-
-2009-02-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.h, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/Makefile.am, src/SpecialActions.h, src/SpecialColorHandler.cpp,
- src/SpecialEmHandler.cpp:
- added color support to emTeX specials, removed Color class
-
- * NEWS, src/SpecialActions.h, src/tests/ColorSpecialTest.h:
- adapted color test to new interface, added emtex info
-
-2009-02-17 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp:
- made DVICommand local to executeCommand, removed unnecessary if
- statement
-
-2009-02-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.h, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h:
- finished color support
-
- * src/dvisvgm.cpp:
- fixed incorrect behavior of option -V/--version
-
- * NEWS, configure.ac:
- increased version number to 0.6.2, updated NEWS
-
- * doc/dvisvgm.1.in, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/dvisvgm.cpp, src/options.ggo:
- added option --no-style
-
- * NEWS, configure.ac:
- prepared release of version 0.7
-
-2009-02-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile.am, configure.ac, src/tests/DirectoryTest.h:
- removed rpm support
-
- * prepare:
- added administrative files
-
- * src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h:
- reverted to previous version, removed dependency on Color class
-
- * src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Makefile.am,
- src/SpecialActions.h, src/SpecialHandler.h, src/SpecialManager.cpp,
- src/SpecialManager.h:
- color specials are now processed by DVIToSVGActions, but don't create
- any results yet
-
- * prepare:
- updated administrative files
-
- * src/ColorSpecialHandler.cpp, src/Makefile.am,
- src/tests/ColorSpecialTest.h:
- added tests for ColorSpecialHandler
-
-2009-02-12 martin@xps <martin@xps>
-
- * src/inttypes.h:
- added rudimentary files for writing of SWF files; not ready yet
-
-2009-02-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Color.h, src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/Makefile.am:
- replaced RGB arrays by Color class
-
-2009-02-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TransformationMatrix.cpp:
- made y-coordinate of cmdline-option -t optional
-
-2009-02-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/dvisvgm.1.in, src/ColorSpecialHandler.h, src/DVIToSVG.cpp,
- src/DVIToSVG.h, src/DVIToSVGActions.cpp, src/DVIToSVGActions.h,
- src/SpecialHandler.h, src/SpecialManager.cpp, src/SpecialManager.h,
- src/dvisvgm.cpp, src/options.ggo:
- added option --list-specials that lists all registered special handlers
-
- * src/FileFinder.cpp:
- changed lookup order of font maps
-
-2009-02-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/dvisvgm.cpp, src/options.ggo:
- added optional prefix list to commandline option --no-specials
-
- * src/DVIToSVGActions.cpp:
- replaced special ignore list evaluation algorithm
-
-2009-02-04 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp:
- added option for additional loading of user maps
-
- * src/FontMap.cpp:
- added output of font encoding in write method
-
-2009-02-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/SpecialHandler.h,
- src/SpecialManager.cpp, src/SpecialManager.h, src/options.ggo:
- more color special implementation (color constants), still not ready
-
- * src/FileFinder.cpp, src/FileFinder.h, src/dvisvgm.cpp:
- option -m/--map-file is now evaluated properly
-
- * map/cork-lm.map:
- removed deprecated map subdirectory
-
-2009-02-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, src/FileFinder.cpp:
- fixed buggy call of maketfm/makemf in Windows version
-
- * src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h, src/Makefile.am,
- src/SpecialHandler.h, src/SpecialManager.cpp, src/SpecialManager.h:
- added special support skeletons; not working yet
-
- * src/ColorSpecialHandler.cpp, src/ColorSpecialHandler.h:
- some refactorings in color handler
-
-2009-01-30 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/dvisvgm.cpp:
- prevented writing zero-length svg files; simplified main code by using
- auto pointers
-
- * NEWS, src/DVIReader.cpp, src/DVIReader.h:
- fixed magnification bug
-
-2009-01-29 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp:
- adapted Windows version to new release
-
-2009-01-28 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FileFinder.cpp, src/FileFinder.h, src/Makefile.am,
- src/tests/DirectoryTest.h, src/tests/FileFinderTest.h,
- src/tests/FontManagerTest.h, src/tests/KPSFileFinderTest.h:
- refactored FileFinder (implementation as singleton)
-
- * src/dvisvgm.cpp:
- use new initialisation of FileFinder
-
- * src/GFReader.h, src/GFTracer.cpp, src/GFTracer.h:
- improved GFTracer to support unscaled results
-
- * src/FontMap.cpp, src/Makefile.am, src/tests/FontMapTest.h,
- src/tests/dvipdfm_test.map, src/tests/dvips_test.map:
- extensions to FontMap almost complete but not finished yet
-
- * src/Calculator.cpp, src/DVIToSVG.cpp, src/FontEncoding.cpp,
- src/FontMap.cpp, src/SVGFontEmitter.cpp, src/SVGFontTraceEmitter.cpp:
- replaced comparisions with "" with calls of empty()
-
- * src/FileFinder.cpp, src/FontMap.cpp, src/FontMap.h,
- src/tests/FontMapTest.h, src/tests/dvips_test.map:
- FontMap now supports dvips and dvipdfm maps
-
- * NEWS, configure.ac, doc/dvisvgm.1.in:
- adapted configuration and documentation to new dvips map file support
-
-2009-01-27 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/GFGlyphTracer.cpp, src/GFGlyphTracer.h, src/GFTracer.cpp,
- src/GFTracer.h, src/Makefile.am, src/SVGFontTraceEmitter.cpp,
- src/SVGFontTraceEmitter.h:
- made GFTracer a generic class with template methods
-
-2009-01-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bitmap.cpp, src/Bitmap.h, src/GFReader.cpp, src/GFReader.h,
- src/GFTracer.cpp, src/Makefile.am:
- improvements to GF handling, first skeletton of gf->metapost (gfprint)
-
- * src/InputBuffer.h:
- fixed incompatible types bug
-
-2009-01-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/InputBuffer.cpp, src/InputBuffer.h:
- added missing include
-
- * src/FontMap.cpp, src/FontMap.h:
- started redesign of FontMap, not complete yet
-
- * src/CharmapTranslator.cpp, src/DVIToSVG.cpp, src/FileFinder.cpp,
- src/FileFinder.h, src/Font.cpp, src/FontEncoding.cpp,
- src/FontManager.cpp, src/KPSFileFinder.cpp, src/KPSFileFinder.h,
- src/Makefile.am, src/MetafontWrapper.cpp, src/TFM.cpp, src/dvisvgm.cpp:
- renamed KPSFileFinder to FileFinder
-
- * src/FontMap.cpp:
- basic dvips font map support, not complete yet
-
-2009-01-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * doc/Makefile.am, doc/dvisvgm.1.in:
- manpage updates
-
-2009-01-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontMap.cpp:
- forgot to remove address operator
-
- * src/KPSFileFinder.cpp, src/KPSFileFinder.h, src/dvisvgm.cpp:
- added support for MiKTeX' new COM interface
-
- * src/DVIReader.cpp, src/FontManager.cpp, src/KPSFileFinder.cpp:
- memory leak fixed
-
- * src/KPSFileFinder.cpp:
- fixed throwing of COM exception
-
- * Makefile.am, NEWS, README, configure.ac, potracelib/Makefile.am:
- updated version info to 0.6
-
- * src/tests/CalculatorTest.h, src/tests/DirectoryTest.h,
- src/tests/FontManagerTest.h, src/tests/FontMapTest.h,
- src/tests/KPSFileFinderTest.h, src/tests/PageSizeTest.h,
- src/tests/StreamCounterTest.h, src/tests/VectorStreamTest.h:
- updated tests
-
- * doc/dvisvgm.1.in, src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp,
- src/BoundingBox.h, src/Calculator.cpp, src/Calculator.h,
- src/CharmapTranslator.cpp, src/CharmapTranslator.h, src/DVIActions.cpp,
- src/DVIActions.h, src/DVIBBoxActions.h, src/DVIReader.cpp,
- src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Directory.cpp,
- src/Directory.h, src/FileFinder.cpp, src/FileFinder.h,
- src/FileSystem.cpp, src/FileSystem.h, src/Font.cpp, src/Font.h,
- src/FontEmitter.h, src/FontEncoding.cpp, src/FontEncoding.h,
- src/FontEngine.cpp, src/FontEngine.h, src/FontGlyph.cpp, src/FontGlyph.h,
- src/FontManager.cpp, src/FontManager.h, src/FontMap.cpp, src/FontMap.h,
- src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp, src/GFTracer.h,
- src/InputBuffer.cpp, src/InputBuffer.h, src/KPSFileFinder.cpp,
- src/KPSFileFinder.h, src/Makefile.am, src/Matrix.cpp, src/Matrix.h,
- src/Message.cpp, src/Message.h, src/MessageException.h,
- src/MetafontWrapper.cpp, src/MetafontWrapper.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PageSize.cpp, src/PageSize.h, src/Pair.h,
- src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h,
- src/StreamCounter.h, src/StreamReader.cpp, src/StreamReader.h,
- src/TFM.cpp, src/TFM.h, src/TransformationMatrix.cpp,
- src/TransformationMatrix.h, src/VFActions.h, src/VFReader.cpp,
- src/VFReader.h, src/VectorStream.h, src/XMLDocTypeNode.h,
- src/XMLDocument.cpp, src/XMLDocument.h, src/XMLNode.cpp, src/XMLNode.h,
- src/XMLString.cpp, src/XMLString.h, src/dvisvgm.cpp, src/macros.h,
- src/options.ggo, src/types.h:
- updated file header comments
-
- * configure.ac:
- added test whether dvipdfm.map is available
-
-2009-01-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp,
- src/FontEncoding.cpp, src/FontGlyph.cpp:
- fixed bugs in handling of font encodings and virtual fonts
-
- * src/Calculator.cpp, src/DVIReader.cpp, src/DVIToSVGActions.cpp,
- src/Directory.cpp, src/FontEncoding.cpp, src/FontEngine.cpp,
- src/FontManager.cpp, src/FontMap.cpp, src/KPSFileFinder.cpp,
- src/MetafontWrapper.cpp, src/PageSize.cpp, src/StreamReader.cpp,
- src/TFM.cpp, src/TransformationMatrix.cpp, src/VFReader.cpp,
- src/XMLDocument.cpp, src/XMLNode.cpp:
- added in/out attributes to parameter documentation
-
-2009-01-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/DVIToSVG.cpp, src/Font.h, src/FontEncoding.cpp,
- src/FontEncoding.h, src/FontEngine.cpp, src/FontEngine.h,
- src/FontGlyph.cpp, src/FontGlyph.h, src/FontManager.cpp,
- src/FontManager.h, src/InputBuffer.cpp, src/InputBuffer.h,
- src/SVGFontEmitter.cpp, src/SVGFontEmitter.h:
- first working version with font encoding support
-
- * src/FontEngine.cpp, src/FontEngine.h, src/SVGFontEmitter.cpp:
- fixed glyph positioning bug occured in conjunction with font encoding
-
- * src/SVGFontEmitter.cpp:
- fixed memory bug
-
-2009-01-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/FontEncoding.cpp, src/FontEncoding.h, src/FontEngine.cpp,
- src/FontEngine.h, src/FontManager.cpp, src/FontManager.h,
- src/FontMap.cpp, src/FontMap.h, src/KPSFileFinder.cpp,
- src/KPSFileFinder.h:
- more encoding implementations, not complete yet
-
- * src/DVIReader.cpp, src/FontEncoding.cpp, src/FontEncoding.h,
- src/FontEngine.cpp, src/FontEngine.h, src/FontManager.cpp,
- src/FontManager.h, src/FontMap.cpp:
- partly working mapping support, but yet too slow
-
-2009-01-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TransformationMatrix.cpp:
- fixed bug in argument assignment of transformation command M
-
-2009-01-15 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/TransformationMatrix.cpp:
- removed a dangerous loop remained from previous code
-
-2009-01-14 Martin Gieseking <martin.gieseking@uos.de>
-
- * potracelib/auxiliary.h, potracelib/bitmap.h, potracelib/curve.c,
- potracelib/curve.h, potracelib/decompose.c, potracelib/decompose.h,
- potracelib/lists.h, potracelib/potracelib.c, potracelib/potracelib.h,
- potracelib/progress.h, potracelib/trace.c, potracelib/trace.h:
- updated libpotrace to version 1.8
-
- * src/FontEncoding.cpp, src/FontEncoding.h, src/InputBuffer.cpp,
- src/InputBuffer.h, src/Makefile.am:
- added basic skeleton for handling of font encodings
-
- * src/FileSystem.cpp, src/FileSystem.h:
- const string parameters
-
- * src/dvisvgm.cpp:
- updated copyright string
-
- * src/KPSFileFinder.cpp:
- added enc-file support
-
-2009-01-13 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CharmapTranslator.cpp:
- fixed crash on loading corrupt pfb-files
-
-2008-06-18 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Makefile.am:
- adapted to latest gengetopt version
-
-2008-04-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Makefile.am:
- added missing include path
-
- * src/DVIReader.cpp:
- minor change
-
-2007-03-26 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, src/CharmapTranslator.cpp, src/CharmapTranslator.h,
- src/DVIActions.h, src/DVIReader.cpp, src/DVIToSVG.cpp,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Font.h,
- src/FontManager.cpp, src/Makefile.am, src/SVGFontTraceEmitter.cpp,
- src/SVGFontTraceEmitter.h:
- redesigned DVIActions and CharmapTranslator
-
- * src/DVIActions.cpp, src/DVIReader.cpp, src/DVIReader.h,
- src/FontManager.cpp, src/tests/FontManagerTest.h:
- few minor changes
-
-2007-03-25 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIActions.cpp, src/DVIActions.h, src/DVIBBoxActions.h,
- src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/Font.cpp, src/Font.h,
- src/FontManager.cpp, src/FontManager.h, src/StreamReader.cpp,
- src/StreamReader.h, src/VFActions.h, src/VFReader.cpp, src/VFReader.h,
- src/VectorStream.h:
- first working version 0.5, release candidate 1
-
- * src/DVIReader.cpp, src/DVIReader.h, src/VFActions.h:
- minor fixes
-
-2007-03-23 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/FontManager.cpp, src/FontManager.h,
- src/KPSFileFinder.cpp, src/KPSFileFinder.h, src/VFReader.cpp:
- more vf implementations, not complete yet
-
-2007-03-22 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, doc/Makefile.in, src/DVIReader.cpp, src/DVIReader.h,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/FileSystem.cpp, src/FileSystem.h,
- src/KPSFileFinder.cpp, src/KPSFileFinder.h, src/Makefile.am,
- src/dvisvgm.cpp, src/tests/DirectoryTest.h, src/tests/FontManagerTest.h:
- reintegrated font map initialization into KPSFileFinderm adapted some
- tests
-
- * src/DVIReader.cpp, src/Font.cpp, src/Font.h, src/FontManager.cpp,
- src/VFActions.h, src/VFReader.cpp, src/VFReader.h:
- more vf implementations
-
-2007-03-21 Martin Gieseking <martin.gieseking@uos.de>
-
- * AUTHORS, Makefile.am, README, potracelib/Makefile.am, src/Directory.cpp,
- src/Directory.h, src/KPSFileFinder.cpp, src/Makefile, src/Makefile.am,
- src/Makefile.in, src/SVGFontTraceEmitter.cpp, src/test-all.cpp,
- src/tests/DirectoryTest.h:
- implemented Directory class for Linux, added DirectoryTest
-
- * src/Calculator.cpp, src/DVIReader.cpp, src/Directory.cpp, src/Font.h,
- src/FontManager.cpp, src/Makefile, src/Makefile.am, src/Makefile.in,
- src/MetafontWrapper.cpp, src/VFReader.cpp, src/VectorStream.h,
- src/test-all.cpp, src/tests/VectorStreamTest.h:
- removed redundant code and commented code fragments, added
- VectorInputStream class
-
- * src/Directory.cpp, src/Directory.h, src/KPSFileFinder.cpp,
- src/KPSFileFinder.h, src/dvisvgm.cpp:
- completed MiKTeX font map file look-up, fixed bug in Directory class
-
- * src/KPSFileFinder.cpp, src/KPSFileFinder.h, src/dvisvgm.cpp:
- implemented options -n and -m
-
-2007-03-20 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, doc/Makefile, doc/Makefile.in, doc/dvisvgm.1.in,
- src/DVIReader.cpp, src/DVIToSVG.cpp, src/Font.cpp, src/Font.h,
- src/FontManager.cpp, src/KPSFileFinder.cpp, src/Makefile,
- src/Makefile.am, src/Makefile.in, src/VFReader.cpp, src/dvisvgm.cpp,
- src/test-all.cpp, src/tests/KPSFileFinderTest.h:
- added KPSFileFinderTest, added EmptyFont, fixed compilation error
-
- * src/Directory.cpp, src/Directory.h, src/FileSystem.cpp, src/FontMap.cpp,
- src/FontMap.h, src/KPSFileFinder.cpp:
- more changes for MiKTeX support
-
-2007-03-19 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CharmapTranslator.cpp, src/DVIToSVG.cpp, src/FontManager.cpp,
- src/KPSFileFinder.cpp, src/KPSFileFinder.h, src/Makefile,
- src/Makefile.am, src/Makefile.in, src/MetafontWrapper.cpp, src/TFM.cpp:
- added mktexFOO support and font map lookups to KPSFileFinder
-
- * src/KPSFileFinder.cpp:
- bug fixed, font maps work now
-
- * src/Font.cpp, src/Font.h, src/FontManager.cpp, src/FontMap.cpp,
- src/FontMap.h, src/KPSFileFinder.cpp:
- made sources comaptible with MikTeX
-
-2007-03-16 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp, src/Font.h, src/FontManager.cpp, src/FontMap.cpp,
- src/FontMap.h, src/KPSFileFinder.cpp, src/Makefile, src/Makefile.am,
- src/Makefile.in, src/StreamReader.cpp, src/TFM.cpp, src/options.ggo,
- src/tests/FontMapTest.h:
- more coding in the font department, not finished yet
-
-2007-03-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/CharmapTranslator.cpp, src/CharmapTranslator.h, src/DVIReader.cpp,
- src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVGActions.cpp, src/Font.cpp,
- src/FontManager.cpp, src/GFTracer.cpp, src/KPSFileFinder.cpp,
- src/KPSFileFinder.h, src/Makefile, src/Makefile.am, src/Makefile.in,
- src/MetafontWrapper.cpp, src/MetafontWrapper.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h,
- src/StreamReader.cpp, src/StreamReader.h, src/TFM.cpp, src/TFM.h,
- src/VFReader.cpp, src/VFReader.h, src/dvisvgm.cpp, src/options.ggo,
- src/test-all.cpp:
- refactorings: extracted StreamReader class, replaced generic FileFinder
- support by KPSFileFinder calls
-
-2007-03-08 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIActions.h, src/DVIBBoxActions.h, src/DVIReader.cpp,
- src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/Font.cpp, src/Font.h, src/FontManager.cpp,
- src/FontManager.h, src/KPSFileFinder.cpp, src/KPSFileFinder.h,
- src/Makefile, src/Makefile.am, src/Makefile.in, src/Message.cpp,
- src/dvisvgm.cpp, src/macros.h, src/test-all.cpp:
- first unstable version with redesigned font handling
-
- * COPYING, Makefile, Makefile.am, Makefile.in, Martins_svg_neu.svg, NEWS,
- aclocal.m4, cmdline.c, config.guess, config.h, config.h.in,
- config.status, config.sub, configure.ac, depcomp, doc/Makefile,
- doc/dvisvgm.1, doc/dvisvgm.1.in, gpl.txt, install-sh, missing,
- src/FontManager.cpp, src/FontManager.h, src/Makefile.am,
- src/VFReader.cpp, src/tests/FontManagerTest.h, stamp-h1, table.txt:
- removed some garbage from the repository, added initial FontManagerTest
-
- * doc/dvisvgm.1, src/FontEngine.h, src/dvisvgm.cpp,
- src/tests/FontManagerTest.h:
- minor changes
-
- * src/DVIBBoxReader.cpp, src/DVIBBoxReader.h, src/Font.cpp, src/Font.h,
- src/StreamCounter.h, src/dvisvgm.cpp:
- fixed memory bug
-
- * src/DVIReader.cpp, src/DVIToSVGActions.cpp, src/Font.h, src/Makefile,
- src/Makefile.am, src/Makefile.in, src/VFActions.h, src/VFReader.cpp,
- src/VFReader.h, src/dvisvgm.cpp:
- plugged VFReader and its actions into the code (not usable yet)
-
-2007-03-07 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Font.cpp, src/Font.h:
- added Font classes (not yet error-free)
-
-2007-03-06 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.h, src/DVIToSVG.cpp, src/FontManager.cpp,
- src/FontManager.h:
- added FontManager skeleton, fixed bug in makehead
-
-2007-03-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/FontManager.cpp, src/VFReader.cpp:
- added some more skeleton code
-
-2007-03-02 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/DVIReader.cpp, src/Makefile, src/Makefile.in, src/VFReader.cpp,
- src/VFReader.h, src/options.ggo:
- added skeleton of VFReader
-
-2007-01-10 Martin Gieseking <martin.gieseking@uos.de>
-
- * src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp, src/BoundingBox.h,
- src/Calculator.cpp, src/Calculator.h, src/CharmapTranslator.cpp,
- src/CharmapTranslator.h, src/DVIActions.h, src/DVIBBoxActions.h,
- src/DVIBBoxReader.cpp, src/DVIBBoxReader.h, src/DVIReader.cpp,
- src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/FileFinder.cpp,
- src/FileFinder.h, src/FileSystem.cpp, src/FileSystem.h,
- src/FontEmitter.h, src/FontEngine.cpp, src/FontEngine.h,
- src/FontGlyph.cpp, src/FontGlyph.h, src/FontMap.cpp, src/FontMap.h,
- src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp, src/GFTracer.h,
- src/KPSFileFinder.cpp, src/KPSFileFinder.h, src/Makefile,
- src/Makefile.am, src/Makefile.in, src/Matrix.cpp, src/Matrix.h,
- src/Message.cpp, src/Message.h, src/MessageException.h,
- src/MetafontWrapper.cpp, src/MetafontWrapper.h, src/PSInterpreter.cpp,
- src/PSInterpreter.h, src/PageSize.cpp, src/PageSize.h, src/Pair.h,
- src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h,
- src/StreamCounter.h, src/TFM.cpp, src/TFM.h,
- src/TransformationMatrix.cpp, src/TransformationMatrix.h,
- src/XMLDocTypeNode.h, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLNode.cpp, src/XMLNode.h, src/XMLString.cpp, src/XMLString.h,
- src/cmdline.c, src/cmdline.h, src/dvisvgm.cpp, src/getopt.c,
- src/getopt.h, src/getopt1.c, src/gzstream.cpp, src/gzstream.h,
- src/macros.h, src/miktex-core.def, src/miktex-kps.def, src/miktex-kps.h,
- src/options.ggo, src/test-all.cpp, src/tests/CalculatorTest.h,
- src/tests/PageSizeTest.h, src/tests/StreamCounterTest.h, src/types.h:
- moved dir
-
- * INSTALL, Makefile.am, NEWS, README, configure.ac, doc/Makefile,
- doc/Makefile.am, doc/Makefile.in, doc/dvisvgm.1, doc/dvisvgm.1.in,
- gzstream/COPYING.LIB, gzstream/Makefile, gzstream/README,
- gzstream/gzstream.cpp, gzstream/gzstream.h, gzstream/index.html,
- gzstream/logo.gif, gzstream/test_gunzip.C, gzstream/test_gzip.C,
- gzstream/version, map/cork-lm.map, potracelib/Makefile.am,
- potracelib/auxiliary.h, potracelib/bitmap.h, potracelib/curve.c,
- potracelib/curve.h, potracelib/decompose.c, potracelib/decompose.h,
- potracelib/lists.h, potracelib/potracelib.c, potracelib/potracelib.h,
- potracelib/progress.h, potracelib/trace.c, potracelib/trace.h:
- moved sources
-
- * src/cmdline.c, src/cmdline.h:
- remove unnecessary files
-
-2007-01-09 Martin Gieseking <martin.gieseking@uos.de>
-
- * INSTALL, Makefile.am, NEWS, README, configure.ac, doc/Makefile,
- doc/Makefile.am, doc/Makefile.in, doc/dvisvgm.1, doc/dvisvgm.1.in,
- gzstream/COPYING.LIB, gzstream/Makefile, gzstream/README,
- gzstream/gzstream.cpp, gzstream/gzstream.h, gzstream/index.html,
- gzstream/logo.gif, gzstream/test_gunzip.C, gzstream/test_gzip.C,
- gzstream/version, potracelib/Makefile.am, potracelib/auxiliary.h,
- potracelib/bitmap.h, potracelib/curve.c, potracelib/curve.h,
- potracelib/decompose.c, potracelib/decompose.h, potracelib/lists.h,
- potracelib/potracelib.c, potracelib/potracelib.h, potracelib/progress.h,
- potracelib/trace.c, potracelib/trace.h, src/Bitmap.cpp, src/Bitmap.h,
- src/BoundingBox.cpp, src/BoundingBox.h, src/Calculator.cpp,
- src/Calculator.h, src/CharmapTranslator.cpp, src/CharmapTranslator.h,
- src/DVIActions.h, src/DVIBBoxActions.h, src/DVIBBoxReader.cpp,
- src/DVIBBoxReader.h, src/DVIReader.cpp, src/DVIReader.h,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/FileFinder.cpp, src/FileFinder.h,
- src/FileSystem.cpp, src/FileSystem.h, src/FontEmitter.h,
- src/FontEngine.cpp, src/FontEngine.h, src/FontGlyph.cpp, src/FontGlyph.h,
- src/FontMap.cpp, src/FontMap.h, src/GFReader.cpp, src/GFReader.h,
- src/GFTracer.cpp, src/GFTracer.h, src/KPSFileFinder.cpp,
- src/KPSFileFinder.h, src/Makefile, src/Makefile.am, src/Makefile.in,
- src/Matrix.cpp, src/Matrix.h, src/Message.cpp, src/Message.h,
- src/MessageException.h, src/MetafontWrapper.cpp, src/MetafontWrapper.h,
- src/PSInterpreter.cpp, src/PSInterpreter.h, src/PageSize.cpp,
- src/PageSize.h, src/Pair.h, src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h,
- src/StreamCounter.h, src/TFM.cpp, src/TFM.h,
- src/TransformationMatrix.cpp, src/TransformationMatrix.h,
- src/XMLDocTypeNode.h, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLNode.cpp, src/XMLNode.h, src/XMLString.cpp, src/XMLString.h,
- src/cmdline.c, src/cmdline.h, src/dvisvgm.cpp, src/getopt.c,
- src/getopt.h, src/getopt1.c, src/gzstream.cpp, src/gzstream.h,
- src/macros.h, src/miktex-core.def, src/miktex-kps.def, src/miktex-kps.h,
- src/options.ggo, src/test-all.cpp, src/tests/CalculatorTest.h,
- src/tests/PageSizeTest.h, src/tests/StreamCounterTest.h, src/types.h:
- moved files to trunk subfolder
-
- * map/cork-lm.map:
- moved files to trunk
-
-2007-01-05 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile, Makefile.am, Makefile.in, README, config.status, configure.ac,
- potracelib/Makefile.am, potracelib/bitops.h, potracelib/flate.c,
- potracelib/flate.h, src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp,
- src/BoundingBox.h, src/Calculator.cpp, src/Calculator.h,
- src/CharmapTranslator.cpp, src/CharmapTranslator.h, src/DVIActions.h,
- src/DVIBBoxActions.h, src/DVIBBoxReader.cpp, src/DVIBBoxReader.h,
- src/DVIReader.cpp, src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/FileFinder.cpp,
- src/FileFinder.h, src/FileSystem.cpp, src/FileSystem.h,
- src/FontEmitter.h, src/FontEngine.cpp, src/FontEngine.h,
- src/FontGlyph.cpp, src/FontGlyph.h, src/FontMap.cpp, src/FontMap.h,
- src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp, src/GFTracer.h,
- src/KPSFileFinder.cpp, src/KPSFileFinder.h, src/Makefile.am,
- src/Matrix.cpp, src/Matrix.h, src/Message.cpp, src/Message.h,
- src/MessageException.h, src/MetafontWrapper.cpp, src/MetafontWrapper.h,
- src/PSInterpreter.cpp, src/PSInterpreter.h, src/PageSize.cpp,
- src/PageSize.h, src/Pair.h, src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h,
- src/StreamCounter.h, src/TFM.cpp, src/TFM.h,
- src/TransformationMatrix.cpp, src/TransformationMatrix.h,
- src/XMLDocTypeNode.h, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLNode.cpp, src/XMLNode.h, src/XMLString.cpp, src/XMLString.h,
- src/dvisvgm.cpp, src/macros.h, src/test-all.cpp, src/types.h:
- minor modifications
-
-2007-01-03 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, src/KPSFileFinder.cpp:
- updated homepage
-
- * Makefile, Makefile.am, Makefile.in, config.h, config.h.in,
- config.status, configure, configure.ac, doc/Makefile,
- potracelib/Makefile.am, potracelib/auxiliary.h, potracelib/bitmap.h,
- potracelib/bitops.h, potracelib/curve.c, potracelib/curve.h,
- potracelib/decompose.c, potracelib/decompose.h, potracelib/flate.c,
- potracelib/flate.h, potracelib/lists.h, potracelib/potracelib.c,
- potracelib/potracelib.h, potracelib/progress.h, potracelib/trace.c,
- potracelib/trace.h, src/Makefile, src/Makefile.am, src/Makefile.in:
- added potracelib to distribution
-
- * configure:
- removed configure from repository
-
-2006-12-31 Martin Gieseking <martin.gieseking@uos.de>
-
- * NEWS, configure.ac, src/DVIToSVG.cpp, src/FileSystem.cpp,
- src/FontEngine.cpp, src/GFTracer.cpp, src/KPSFileFinder.cpp,
- src/Matrix.h, src/Message.cpp, src/PageSize.cpp,
- src/TransformationMatrix.cpp, src/dvisvgm.cpp:
- updated to MikTeX 2.5 support
-
- * Makefile, config.status, configure, configure.ac, doc/Makefile,
- doc/dvisvgm.1, src/FileSystem.cpp, src/FontEngine.cpp,
- src/KPSFileFinder.cpp, src/Makefile, src/dvisvgm.cpp, src/test-all.cpp:
- some minor fixes
-
- * src/KPSFileFinder.cpp:
- fixed namepsace bug
-
-2006-08-01 Martin Gieseking <martin.gieseking@uos.de>
-
- * Makefile, Makefile.in, NEWS, aclocal.m4, autom4te.cache/output.0,
- autom4te.cache/requests, autom4te.cache/traces.0, config.h, config.log,
- config.status, configure, configure.ac, doc/Makefile, doc/Makefile.in,
- doc/dvisvgm.1, src/FontEngine.cpp, src/Makefile, src/Makefile.in,
- src/cmdline.c, src/cmdline.h, src/dvisvgm.cpp:
- added support for freetype version >= 2.1.1
-
- * configure.ac:
- enabled svn keyword expansion
-
-2006-04-12 Martin Gieseking <martin.gieseking@uos.de>
-
- * COPYING, INSTALL, Makefile, Makefile.am, Makefile.in,
- Martins_svg_neu.svg, NEWS, README, aclocal.m4, autom4te.cache/output.0,
- autom4te.cache/requests, autom4te.cache/traces.0, cmdline.c,
- config.guess, config.h, config.h.in, config.log, config.status,
- config.sub, configure, configure.ac, depcomp, doc/Makefile,
- doc/Makefile.am, doc/Makefile.in, doc/dvisvgm.1, doc/dvisvgm.1.in,
- gpl.txt, gzstream/COPYING.LIB, gzstream/Makefile, gzstream/README,
- gzstream/gzstream.cpp, gzstream/gzstream.h, gzstream/index.html,
- gzstream/logo.gif, gzstream/test_gunzip.C, gzstream/test_gzip.C,
- gzstream/version, install-sh, map/cork-lm.map, missing, src/Bitmap.cpp,
- src/Bitmap.h, src/BoundingBox.cpp, src/BoundingBox.h, src/Calculator.cpp,
- src/Calculator.h, src/CharmapTranslator.cpp, src/CharmapTranslator.h,
- src/DVIActions.h, src/DVIBBoxActions.h, src/DVIBBoxReader.cpp,
- src/DVIBBoxReader.h, src/DVIReader.cpp, src/DVIReader.h,
- src/DVIToSVG.cpp, src/DVIToSVG.h, src/DVIToSVGActions.cpp,
- src/DVIToSVGActions.h, src/FileFinder.cpp, src/FileFinder.h,
- src/FileSystem.cpp, src/FileSystem.h, src/FontEmitter.h,
- src/FontEngine.cpp, src/FontEngine.h, src/FontGlyph.cpp, src/FontGlyph.h,
- src/FontMap.cpp, src/FontMap.h, src/GFReader.cpp, src/GFReader.h,
- src/GFTracer.cpp, src/GFTracer.h, src/KPSFileFinder.cpp,
- src/KPSFileFinder.h, src/Makefile, src/Makefile.am, src/Makefile.in,
- src/Matrix.cpp, src/Matrix.h, src/Message.cpp, src/Message.h,
- src/MessageException.h, src/MetafontWrapper.cpp, src/MetafontWrapper.h,
- src/PSInterpreter.cpp, src/PSInterpreter.h, src/PageSize.cpp,
- src/PageSize.h, src/Pair.h, src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h,
- src/StreamCounter.h, src/TFM.cpp, src/TFM.h,
- src/TransformationMatrix.cpp, src/TransformationMatrix.h,
- src/XMLDocTypeNode.h, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLNode.cpp, src/XMLNode.h, src/XMLString.cpp, src/XMLString.h,
- src/cmdline.c, src/cmdline.h, src/dvisvgm.cpp, src/getopt.c,
- src/getopt.h, src/getopt1.c, src/gzstream.cpp, src/gzstream.h,
- src/lshort-cm.dvi, src/lshort-cm.svg, src/lshort-cm.svgz, src/lshort.dvi,
- src/lshort.svg, src/lshort.svgz, src/macros.h, src/miktex-core.def,
- src/miktex-kps.def, src/miktex-kps.h, src/options.ggo, src/test-all.cpp,
- src/tests/CalculatorTest.h, src/tests/PageSizeTest.h,
- src/tests/StreamCounterTest.h, src/types.h, stamp-h1, table.txt:
- initial import
-
- * src/Bitmap.cpp, src/Bitmap.h, src/BoundingBox.cpp, src/BoundingBox.h,
- src/Calculator.cpp, src/Calculator.h, src/CharmapTranslator.cpp,
- src/CharmapTranslator.h, src/DVIActions.h, src/DVIBBoxActions.h,
- src/DVIBBoxReader.cpp, src/DVIBBoxReader.h, src/DVIReader.cpp,
- src/DVIReader.h, src/DVIToSVG.cpp, src/DVIToSVG.h,
- src/DVIToSVGActions.cpp, src/DVIToSVGActions.h, src/FileFinder.cpp,
- src/FileFinder.h, src/FileSystem.cpp, src/FileSystem.h,
- src/FontEmitter.h, src/FontEngine.cpp, src/FontEngine.h,
- src/FontGlyph.cpp, src/FontGlyph.h, src/FontMap.cpp, src/FontMap.h,
- src/GFReader.cpp, src/GFReader.h, src/GFTracer.cpp, src/GFTracer.h,
- src/KPSFileFinder.cpp, src/KPSFileFinder.h, src/Message.cpp,
- src/Message.h, src/MessageException.h, src/MetafontWrapper.cpp,
- src/MetafontWrapper.h, src/PageSize.cpp, src/PageSize.h, src/Pair.h,
- src/SVGFontEmitter.cpp, src/SVGFontEmitter.h,
- src/SVGFontTraceEmitter.cpp, src/SVGFontTraceEmitter.h,
- src/StreamCounter.h, src/TFM.cpp, src/TFM.h,
- src/TransformationMatrix.cpp, src/TransformationMatrix.h,
- src/XMLDocTypeNode.h, src/XMLDocument.cpp, src/XMLDocument.h,
- src/XMLNode.cpp, src/XMLNode.h, src/XMLString.cpp, src/XMLString.h,
- src/dvisvgm.cpp, src/macros.h, src/test-all.cpp,
- src/tests/CalculatorTest.h, src/tests/PageSizeTest.h,
- src/tests/StreamCounterTest.h, src/types.h:
- changed keyword tags
-
- * src/lshort-cm.dvi, src/lshort-cm.svg, src/lshort-cm.svgz,
- src/lshort.dvi, src/lshort.svg, src/lshort.svgz:
- removed files that need not be version controlled
-
diff --git a/dviware/dvisvgm/Makefile.am b/dviware/dvisvgm/Makefile.am
index f500e9e1cb..2612c11993 100644
--- a/dviware/dvisvgm/Makefile.am
+++ b/dviware/dvisvgm/Makefile.am
@@ -1,11 +1,13 @@
## This file is part of dvisvgm
-## Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de>
+## Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de>
##
## Process this file with automake.
+include $(top_srcdir)/aminclude_static.am
+
AUTOMAKE_OPTIONS = foreign
EXTRA_DIST = COPYING
-SUBDIRS = libs m4 src tests doc
+SUBDIRS = libs src tests doc
ACLOCAL_AMFLAGS = -I m4
if USE_BUNDLED_LIBS
diff --git a/dviware/dvisvgm/Makefile.in b/dviware/dvisvgm/Makefile.in
index d76c1b19e1..db990b1fd5 100644
--- a/dviware/dvisvgm/Makefile.in
+++ b/dviware/dvisvgm/Makefile.in
@@ -13,6 +13,9 @@
# PARTICULAR PURPOSE.
@SET_MAKE@
+
+# aminclude_static.am generated automatically by Autoconf
+# from AX_AM_MACROS_STATIC on Tue Jan 10 14:41:23 CET 2023
VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
@@ -87,10 +90,20 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
@@ -155,9 +168,10 @@ am__define_uniq_tagged_files = \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in AUTHORS \
- COPYING ChangeLog INSTALL NEWS README ar-lib compile \
- config.guess config.sub install-sh ltmain.sh missing
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
+ $(top_srcdir)/aminclude_static.am AUTHORS COPYING INSTALL NEWS \
+ README ar-lib compile config.guess config.sub depcomp \
+ install-sh ltmain.sh missing
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@@ -193,9 +207,9 @@ am__relativize = \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
-DIST_ARCHIVES = $(distdir).tar.gz
+DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.xz
GZIP_ENV = --best
-DIST_TARGETS = dist-gzip
+DIST_TARGETS = dist-xz dist-gzip
# Exists only to be overridden by the user if desired.
AM_DISTCHECK_DVI_TARGET = dvi
distuninstallcheck_listfiles = find . -type f -print
@@ -222,7 +236,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -338,6 +351,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -357,19 +372,32 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
+@CODE_COVERAGE_ENABLED_TRUE@GITIGNOREFILES := $(GITIGNOREFILES) $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_DIRECTORY)
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_v_lcov_cap = $(code_coverage_v_lcov_cap_$(V))
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_v_lcov_cap_ = $(code_coverage_v_lcov_cap_$(AM_DEFAULT_VERBOSITY))
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_v_lcov_cap_0 = @echo " LCOV --capture" $(CODE_COVERAGE_OUTPUT_FILE);
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_v_lcov_ign = $(code_coverage_v_lcov_ign_$(V))
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_v_lcov_ign_ = $(code_coverage_v_lcov_ign_$(AM_DEFAULT_VERBOSITY))
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_v_lcov_ign_0 = @echo " LCOV --remove /tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN);
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_v_genhtml = $(code_coverage_v_genhtml_$(V))
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_v_genhtml_ = $(code_coverage_v_genhtml_$(AM_DEFAULT_VERBOSITY))
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_v_genhtml_0 = @echo " GEN " "$(CODE_COVERAGE_OUTPUT_DIRECTORY)";
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_quiet = $(code_coverage_quiet_$(V))
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_quiet_ = $(code_coverage_quiet_$(AM_DEFAULT_VERBOSITY))
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_quiet_0 = --quiet
+
+# sanitizes the test-name: replaces with underscores: dashes and dots
+@CODE_COVERAGE_ENABLED_TRUE@code_coverage_sanitize = $(subst -,_,$(subst .,_,$(1)))
+@CODE_COVERAGE_ENABLED_TRUE@AM_DISTCHECK_CONFIGURE_FLAGS := $(AM_DISTCHECK_CONFIGURE_FLAGS) --disable-code-coverage
+@USE_BUNDLED_LIBS_TRUE@AM_DISTCHECK_CONFIGURE_FLAGS = --enable-bundled-libs
AUTOMAKE_OPTIONS = foreign
EXTRA_DIST = COPYING
-SUBDIRS = libs m4 src tests doc
+SUBDIRS = libs src tests doc
ACLOCAL_AMFLAGS = -I m4
-@USE_BUNDLED_LIBS_TRUE@AM_DISTCHECK_CONFIGURE_FLAGS = --enable-bundled-libs
@CODE_COVERAGE_ENABLED_TRUE@lcov_dir = $(top_builddir)/lcov
@CODE_COVERAGE_ENABLED_TRUE@lcov_file = $(lcov_dir)/lcov.info
all: config.h
@@ -378,7 +406,7 @@ all: config.h
.SUFFIXES:
am--refresh: Makefile
@:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/aminclude_static.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -400,6 +428,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
esac;
+$(top_srcdir)/aminclude_static.am $(am__empty):
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
@@ -617,7 +646,6 @@ dist-bzip2: distdir
dist-lzip: distdir
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
$(am__post_remove_distdir)
-
dist-xz: distdir
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
$(am__post_remove_distdir)
@@ -863,6 +891,106 @@ uninstall-am:
.PRECIOUS: Makefile
+# Code coverage
+#
+# Optional:
+# - CODE_COVERAGE_DIRECTORY: Top-level directory for code coverage reporting.
+# Multiple directories may be specified, separated by whitespace.
+# (Default: $(top_builddir))
+# - CODE_COVERAGE_OUTPUT_FILE: Filename and path for the .info file generated
+# by lcov for code coverage. (Default:
+# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info)
+# - CODE_COVERAGE_OUTPUT_DIRECTORY: Directory for generated code coverage
+# reports to be created. (Default:
+# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage)
+# - CODE_COVERAGE_BRANCH_COVERAGE: Set to 1 to enforce branch coverage,
+# set to 0 to disable it and leave empty to stay with the default.
+# (Default: empty)
+# - CODE_COVERAGE_LCOV_SHOPTS_DEFAULT: Extra options shared between both lcov
+# instances. (Default: based on )
+# - CODE_COVERAGE_LCOV_SHOPTS: Extra options to shared between both lcov
+# instances. (Default: )
+# - CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH: --gcov-tool pathtogcov
+# - CODE_COVERAGE_LCOV_OPTIONS_DEFAULT: Extra options to pass to the
+# collecting lcov instance. (Default: )
+# - CODE_COVERAGE_LCOV_OPTIONS: Extra options to pass to the collecting lcov
+# instance. (Default: )
+# - CODE_COVERAGE_LCOV_RMOPTS_DEFAULT: Extra options to pass to the filtering
+# lcov instance. (Default: empty)
+# - CODE_COVERAGE_LCOV_RMOPTS: Extra options to pass to the filtering lcov
+# instance. (Default: )
+# - CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT: Extra options to pass to the
+# genhtml instance. (Default: based on )
+# - CODE_COVERAGE_GENHTML_OPTIONS: Extra options to pass to the genhtml
+# instance. (Default: )
+# - CODE_COVERAGE_IGNORE_PATTERN: Extra glob pattern of files to ignore
+#
+# The generated report will be titled using the $(PACKAGE_NAME) and
+# $(PACKAGE_VERSION). In order to add the current git hash to the title,
+# use the git-version-gen script, available online.
+# Optional variables
+# run only on top dir
+@CODE_COVERAGE_ENABLED_TRUE@ ifeq ($(abs_builddir), $(abs_top_builddir))
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_DIRECTORY ?= $(top_builddir)
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_OUTPUT_FILE ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_OUTPUT_DIRECTORY ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage
+
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_BRANCH_COVERAGE ?=
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_LCOV_SHOPTS_DEFAULT ?= $(if $(CODE_COVERAGE_BRANCH_COVERAGE),--rc lcov_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE))
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_LCOV_SHOPTS ?= $(CODE_COVERAGE_LCOV_SHOPTS_DEFAULT)
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH ?= --gcov-tool "$(GCOV)"
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_LCOV_OPTIONS_DEFAULT ?= $(CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH)
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_LCOV_OPTIONS ?= $(CODE_COVERAGE_LCOV_OPTIONS_DEFAULT)
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_LCOV_RMOPTS_DEFAULT ?=
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_LCOV_RMOPTS ?= $(CODE_COVERAGE_LCOV_RMOPTS_DEFAULT)
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT ?=$(if $(CODE_COVERAGE_BRANCH_COVERAGE),--rc genhtml_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE))
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_GENHTML_OPTIONS ?= $(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT)
+@CODE_COVERAGE_ENABLED_TRUE@CODE_COVERAGE_IGNORE_PATTERN ?=
+
+# Use recursive makes in order to ignore errors during check
+@CODE_COVERAGE_ENABLED_TRUE@check-code-coverage:
+@CODE_COVERAGE_ENABLED_TRUE@ -$(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -k check
+@CODE_COVERAGE_ENABLED_TRUE@ $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) code-coverage-capture
+
+# Capture code coverage data
+@CODE_COVERAGE_ENABLED_TRUE@code-coverage-capture: code-coverage-capture-hook
+@CODE_COVERAGE_ENABLED_TRUE@ $(code_coverage_v_lcov_cap)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(call code_coverage_sanitize,$(PACKAGE_NAME)-$(PACKAGE_VERSION))" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_OPTIONS)
+@CODE_COVERAGE_ENABLED_TRUE@ $(code_coverage_v_lcov_ign)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_RMOPTS)
+@CODE_COVERAGE_ENABLED_TRUE@ -@rm -f "$(CODE_COVERAGE_OUTPUT_FILE).tmp"
+@CODE_COVERAGE_ENABLED_TRUE@ $(code_coverage_v_genhtml)LANG=C $(GENHTML) $(code_coverage_quiet) $(addprefix --prefix ,$(CODE_COVERAGE_DIRECTORY)) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS)
+@CODE_COVERAGE_ENABLED_TRUE@ @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html"
+
+@CODE_COVERAGE_ENABLED_TRUE@code-coverage-clean:
+@CODE_COVERAGE_ENABLED_TRUE@ -$(LCOV) --directory $(top_builddir) -z
+@CODE_COVERAGE_ENABLED_TRUE@ -rm -rf "$(CODE_COVERAGE_OUTPUT_FILE)" "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "$(CODE_COVERAGE_OUTPUT_DIRECTORY)"
+@CODE_COVERAGE_ENABLED_TRUE@ -find . \( -name "*.gcda" -o -name "*.gcno" -o -name "*.gcov" \) -delete
+
+@CODE_COVERAGE_ENABLED_TRUE@code-coverage-dist-clean:
+@CODE_COVERAGE_ENABLED_TRUE@ else # ifneq ($(abs_builddir), $(abs_top_builddir))
+@CODE_COVERAGE_ENABLED_TRUE@check-code-coverage:
+
+@CODE_COVERAGE_ENABLED_TRUE@code-coverage-capture: code-coverage-capture-hook
+
+@CODE_COVERAGE_ENABLED_TRUE@code-coverage-clean:
+
+@CODE_COVERAGE_ENABLED_TRUE@code-coverage-dist-clean:
+@CODE_COVERAGE_ENABLED_TRUE@ endif # ifeq ($(abs_builddir), $(abs_top_builddir))
+# Use recursive makes in order to ignore errors during check
+@CODE_COVERAGE_ENABLED_FALSE@check-code-coverage:
+@CODE_COVERAGE_ENABLED_FALSE@ @echo "Need to reconfigure with --enable-code-coverage"
+# Capture code coverage data
+@CODE_COVERAGE_ENABLED_FALSE@code-coverage-capture: code-coverage-capture-hook
+@CODE_COVERAGE_ENABLED_FALSE@ @echo "Need to reconfigure with --enable-code-coverage"
+
+@CODE_COVERAGE_ENABLED_FALSE@code-coverage-clean:
+
+@CODE_COVERAGE_ENABLED_FALSE@code-coverage-dist-clean:
+
+# Hook rule executed before code-coverage-capture, overridable by the user
+code-coverage-capture-hook:
+
+.PHONY: check-code-coverage code-coverage-capture code-coverage-dist-clean code-coverage-clean code-coverage-capture-hook
+
@CODE_COVERAGE_ENABLED_TRUE@lcov-report:
@CODE_COVERAGE_ENABLED_TRUE@ @mkdir -p $(lcov_dir)
@CODE_COVERAGE_ENABLED_TRUE@ lcov --capture --directory . --no-external -o $(lcov_file)
diff --git a/dviware/dvisvgm/NEWS b/dviware/dvisvgm/NEWS
index 526c45d367..d1f6981d0b 100644
--- a/dviware/dvisvgm/NEWS
+++ b/dviware/dvisvgm/NEWS
@@ -1,3 +1,28 @@
+dvisvgm-3.0.1 (2023-01-10)
+- added support for the 64-bit GS library in TeX Live
+ (patch sent by Akira Kakuto)
+- MacTeX: explicitly lookup libgs in /usr/local/lib (GH issue #197)
+- fixed character spacing when processing XDV glyph arrays (GH issue #198)
+- fixed invalid removal of non-redundant clipPath elements (GH issue #203)
+- fixed computation of the graphics extents printed to the console when using
+ the preview package (GH issue #209)
+- several improvements of the autotool scripts (thanks to Sam James)
+- improved processing of fonts when using the new PDF handler
+
+dvisvgm-3.0 (2022-10-16)
+- added new PDF handler based on mutool to keep the PDF functionality available
+ which can't no longer be realized with as of Ghostscript 10.1.0 due to the
+ replacement of its PDF interpreter
+- replaced the bundled minimal Fontforge library (ff-woff) with a dedicated,
+ newly implemented library for embedding TTF/WOFF data into the SVG files
+- added option --embed-bitmaps to embed bitmaps into the generated SVG files
+ instead of referencing the external files
+- exteded option --tmpdir to optionally suppress the creation of uniquely
+ named subfolders
+- added filters :even and :odd to option --page to limit the given page ranges
+ to even and odd page numbers respectively
+- fixed the call of ttfautohint to prevent potential memory errors
+
dvisvgm-2.14 (2022-08-12)
- added processing of SVG path elements inserted by "raw" specials in order to
treat them similar to generated ones
@@ -15,7 +40,7 @@ dvisvgm-2.13.4 (2022-04-20)
dvisvgm-2.13.3 (2022-02-27)
- added SVG optimizer module 'reassign-clippaths' that searches for duplicate
- clipPath elements, removes them, and updates the clip-path references
+ clipPath elements, removes them, and updates the clip-path references
- replaced method to clip embedded EPS/PDF graphics that usually results in
faster rendering of the affected SVG sections
- fixed a regression regarding transformations of embedded EPS/PDF graphics
diff --git a/dviware/dvisvgm/README b/dviware/dvisvgm/README
index 2d2a3af843..0dbbc51a35 100644
--- a/dviware/dvisvgm/README
+++ b/dviware/dvisvgm/README
@@ -14,13 +14,6 @@ DEPENDENCIES
to polygons, intersects them using Clipper, and reconstructs the curves
afterwards.
- * FontForge library (https://fontforge.github.io)
- dvisvgm can be built with optional WOFF support that allows to embed the
- font data in WOFF or TrueType format rather than as SVG. The FontForge
- library provides the required functions to create font files in these
- formats. A reduced version of the library is bundled with the dvisvgm
- sources.
-
* FreeType 2 (http://www.freetype.org)
This library is used to extract the glyph outlines from vector fonts
(PFB, OTF, TTF).
@@ -53,9 +46,9 @@ DEPENDENCIES
bitmap output. A recent version is also part of the dvisvgm sources.
* ttfautohint (https://www.freetype.org/ttfautohint)
- dvisvgm can optionally be built with ttfautohint support to replace the
- autohinting functionality of FontForge. Since it's still an experimental
- feature, ttfautohint support is disabled by default.
+ dvisvgm can optionally be built with ttfautohint support to allow for
+ autohinting the generated TrueType, WOFF, and WOFF2 fonts. Since this is
+ still an experimental feature, ttfautohint support is disabled by default.
The development files required for Windows can be found at
https://github.com/mgieseki/ttfautohint-dll.
@@ -83,7 +76,7 @@ BUILDING DVISVGM FROM SOURCE
Quick installation info:
* ensure that the development packages of all libraries, listed above,
are installed
- * type "./autogen.sh" if "configure" is not present in the dvisvgm
+ * type "autoreconf -fi" if "configure" is not present in the dvisvgm
root folder
* either type "./configure" if you don't want to use the bundled libraries
brotli, potrace, woff2, and xxHash but link against the corresponding
@@ -130,7 +123,7 @@ ADDITIONAL INFORMATION
COPYRIGHT
- Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de>
+ Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de>
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
diff --git a/dviware/dvisvgm/aclocal.m4 b/dviware/dvisvgm/aclocal.m4
index a209b9f9a9..ac5140a998 100644
--- a/dviware/dvisvgm/aclocal.m4
+++ b/dviware/dvisvgm/aclocal.m4
@@ -20,6 +20,102 @@ You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_check_gnu_make.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_CHECK_GNU_MAKE([run-if-true],[run-if-false])
+#
+# DESCRIPTION
+#
+# This macro searches for a GNU version of make. If a match is found:
+#
+# * The makefile variable `ifGNUmake' is set to the empty string, otherwise
+# it is set to "#". This is useful for including a special features in a
+# Makefile, which cannot be handled by other versions of make.
+# * The makefile variable `ifnGNUmake' is set to #, otherwise
+# it is set to the empty string. This is useful for including a special
+# features in a Makefile, which can be handled
+# by other versions of make or to specify else like clause.
+# * The variable `_cv_gnu_make_command` is set to the command to invoke
+# GNU make if it exists, the empty string otherwise.
+# * The variable `ax_cv_gnu_make_command` is set to the command to invoke
+# GNU make by copying `_cv_gnu_make_command`, otherwise it is unset.
+# * If GNU Make is found, its version is extracted from the output of
+# `make --version` as the last field of a record of space-separated
+# columns and saved into the variable `ax_check_gnu_make_version`.
+# * Additionally if GNU Make is found, run shell code run-if-true
+# else run shell code run-if-false.
+#
+# Here is an example of its use:
+#
+# Makefile.in might contain:
+#
+# # A failsafe way of putting a dependency rule into a makefile
+# $(DEPEND):
+# $(CC) -MM $(srcdir)/*.c > $(DEPEND)
+#
+# @ifGNUmake@ ifeq ($(DEPEND),$(wildcard $(DEPEND)))
+# @ifGNUmake@ include $(DEPEND)
+# @ifGNUmake@ else
+# fallback code
+# @ifGNUmake@ endif
+#
+# Then configure.in would normally contain:
+#
+# AX_CHECK_GNU_MAKE()
+# AC_OUTPUT(Makefile)
+#
+# Then perhaps to cause gnu make to override any other make, we could do
+# something like this (note that GNU make always looks for GNUmakefile
+# first):
+#
+# if ! test x$_cv_gnu_make_command = x ; then
+# mv Makefile GNUmakefile
+# echo .DEFAULT: > Makefile ;
+# echo \ $_cv_gnu_make_command \$@ >> Makefile;
+# fi
+#
+# Then, if any (well almost any) other make is called, and GNU make also
+# exists, then the other make wraps the GNU make.
+#
+# LICENSE
+#
+# Copyright (c) 2008 John Darrington <j.darrington@elvis.murdoch.edu.au>
+# Copyright (c) 2015 Enrico M. Crisostomo <enrico.m.crisostomo@gmail.com>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 12
+
+AC_DEFUN([AX_CHECK_GNU_MAKE],dnl
+ [AC_PROG_AWK
+ AC_CACHE_CHECK([for GNU make],[_cv_gnu_make_command],[dnl
+ _cv_gnu_make_command="" ;
+dnl Search all the common names for GNU make
+ for a in "$MAKE" make gmake gnumake ; do
+ if test -z "$a" ; then continue ; fi ;
+ if "$a" --version 2> /dev/null | grep GNU 2>&1 > /dev/null ; then
+ _cv_gnu_make_command=$a ;
+ AX_CHECK_GNU_MAKE_HEADLINE=$("$a" --version 2> /dev/null | grep "GNU Make")
+ ax_check_gnu_make_version=$(echo ${AX_CHECK_GNU_MAKE_HEADLINE} | ${AWK} -F " " '{ print $(NF); }')
+ break ;
+ fi
+ done ;])
+dnl If there was a GNU version, then set @ifGNUmake@ to the empty string, '#' otherwise
+ AS_VAR_IF([_cv_gnu_make_command], [""], [AS_VAR_SET([ifGNUmake], ["#"])], [AS_VAR_SET([ifGNUmake], [""])])
+ AS_VAR_IF([_cv_gnu_make_command], [""], [AS_VAR_SET([ifnGNUmake], [""])], [AS_VAR_SET([ifnGNUmake], ["#"])])
+ AS_VAR_IF([_cv_gnu_make_command], [""], [AS_UNSET(ax_cv_gnu_make_command)], [AS_VAR_SET([ax_cv_gnu_make_command], [${_cv_gnu_make_command}])])
+ AS_VAR_IF([_cv_gnu_make_command], [""],[$2],[$1])
+ AC_SUBST([ifGNUmake])
+ AC_SUBST([ifnGNUmake])
+])
+
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
# serial 11 (pkg-config-0.29.1)
@@ -1552,10393 +1648,17 @@ AC_SUBST([am__tar])
AC_SUBST([am__untar])
]) # _AM_PROG_TAR
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
-#
-# DESCRIPTION
-#
-# Check whether the given FLAG works with the current language's compiler
-# or gives an error. (Warnings, however, are ignored)
-#
-# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
-# success/failure.
-#
-# If EXTRA-FLAGS is defined, it is added to the current language's default
-# flags (e.g. CFLAGS) when the check is done. The check is thus made with
-# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to
-# force the compiler to issue an error when a bad flag is given.
-#
-# INPUT gives an alternative input source to AC_COMPILE_IFELSE.
-#
-# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
-# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
-#
-# LICENSE
-#
-# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
-# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 6
-
-AC_DEFUN([AX_CHECK_COMPILE_FLAG],
-[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
-AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
-AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
- ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
- _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
- AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
- [AS_VAR_SET(CACHEVAR,[yes])],
- [AS_VAR_SET(CACHEVAR,[no])])
- _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
-AS_VAR_IF(CACHEVAR,yes,
- [m4_default([$2], :)],
- [m4_default([$3], :)])
-AS_VAR_POPDEF([CACHEVAR])dnl
-])dnl AX_CHECK_COMPILE_FLAGS
-
-
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_code_coverage.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_CODE_COVERAGE()
-#
-# DESCRIPTION
-#
-# Defines CODE_COVERAGE_CPPFLAGS, CODE_COVERAGE_CFLAGS,
-# CODE_COVERAGE_CXXFLAGS and CODE_COVERAGE_LIBS which should be included
-# in the CPPFLAGS, CFLAGS CXXFLAGS and LIBS/LIBADD variables of every
-# build target (program or library) which should be built with code
-# coverage support. Also defines CODE_COVERAGE_RULES which should be
-# substituted in your Makefile; and $enable_code_coverage which can be
-# used in subsequent configure output. CODE_COVERAGE_ENABLED is defined
-# and substituted, and corresponds to the value of the
-# --enable-code-coverage option, which defaults to being disabled.
-#
-# Test also for gcov program and create GCOV variable that could be
-# substituted.
-#
-# Note that all optimization flags in CFLAGS must be disabled when code
-# coverage is enabled.
-#
-# Usage example:
-#
-# configure.ac:
-#
-# AX_CODE_COVERAGE
-#
-# Makefile.am:
-#
-# @CODE_COVERAGE_RULES@
-# my_program_LIBS = ... $(CODE_COVERAGE_LIBS) ...
-# my_program_CPPFLAGS = ... $(CODE_COVERAGE_CPPFLAGS) ...
-# my_program_CFLAGS = ... $(CODE_COVERAGE_CFLAGS) ...
-# my_program_CXXFLAGS = ... $(CODE_COVERAGE_CXXFLAGS) ...
-#
-# This results in a "check-code-coverage" rule being added to any
-# Makefile.am which includes "@CODE_COVERAGE_RULES@" (assuming the module
-# has been configured with --enable-code-coverage). Running `make
-# check-code-coverage` in that directory will run the module's test suite
-# (`make check`) and build a code coverage report detailing the code which
-# was touched, then print the URI for the report.
-#
-# In earlier versions of this macro, CODE_COVERAGE_LDFLAGS was defined
-# instead of CODE_COVERAGE_LIBS. They are both still defined, but use of
-# CODE_COVERAGE_LIBS is preferred for clarity; CODE_COVERAGE_LDFLAGS is
-# deprecated. They have the same value.
-#
-# This code was derived from Makefile.decl in GLib, originally licenced
-# under LGPLv2.1+.
-#
-# LICENSE
-#
-# Copyright (c) 2012, 2016 Philip Withnall
-# Copyright (c) 2012 Xan Lopez
-# Copyright (c) 2012 Christian Persch
-# Copyright (c) 2012 Paolo Borelli
-# Copyright (c) 2012 Dan Winship
-# Copyright (c) 2015 Bastien ROUCARIES
-#
-# This library is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or (at
-# your option) any later version.
-#
-# This library is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
-# General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public License
-# along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-#serial 25
-
-AC_DEFUN([AX_CODE_COVERAGE],[
- dnl Check for --enable-code-coverage
- AC_REQUIRE([AC_PROG_SED])
-
- # allow to override gcov location
- AC_ARG_WITH([gcov],
- [AS_HELP_STRING([--with-gcov[=GCOV]], [use given GCOV for coverage (GCOV=gcov).])],
- [_AX_CODE_COVERAGE_GCOV_PROG_WITH=$with_gcov],
- [_AX_CODE_COVERAGE_GCOV_PROG_WITH=gcov])
-
- AC_MSG_CHECKING([whether to build with code coverage support])
- AC_ARG_ENABLE([code-coverage],
- AS_HELP_STRING([--enable-code-coverage],
- [Whether to enable code coverage support]),,
- enable_code_coverage=no)
-
- AM_CONDITIONAL([CODE_COVERAGE_ENABLED], [test x$enable_code_coverage = xyes])
- AC_SUBST([CODE_COVERAGE_ENABLED], [$enable_code_coverage])
- AC_MSG_RESULT($enable_code_coverage)
-
- AS_IF([ test "$enable_code_coverage" = "yes" ], [
- # check for gcov
- AC_CHECK_TOOL([GCOV],
- [$_AX_CODE_COVERAGE_GCOV_PROG_WITH],
- [:])
- AS_IF([test "X$GCOV" = "X:"],
- [AC_MSG_ERROR([gcov is needed to do coverage])])
- AC_SUBST([GCOV])
-
- dnl Check if gcc is being used
- AS_IF([ test "$GCC" = "no" ], [
- AC_MSG_ERROR([not compiling with gcc, which is required for gcov code coverage])
- ])
-
- AC_CHECK_PROG([LCOV], [lcov], [lcov])
- AC_CHECK_PROG([GENHTML], [genhtml], [genhtml])
-
- AS_IF([ test -z "$LCOV" ], [
- AC_MSG_ERROR([To enable code coverage reporting you must have lcov installed])
- ])
-
- AS_IF([ test -z "$GENHTML" ], [
- AC_MSG_ERROR([Could not find genhtml from the lcov package])
- ])
-
- dnl Build the code coverage flags
- dnl Define CODE_COVERAGE_LDFLAGS for backwards compatibility
- CODE_COVERAGE_CPPFLAGS="-DNDEBUG"
- CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage"
- CODE_COVERAGE_CXXFLAGS="-O0 -g -fprofile-arcs -ftest-coverage"
- CODE_COVERAGE_LIBS="-lgcov"
- CODE_COVERAGE_LDFLAGS="$CODE_COVERAGE_LIBS"
-
- AC_SUBST([CODE_COVERAGE_CPPFLAGS])
- AC_SUBST([CODE_COVERAGE_CFLAGS])
- AC_SUBST([CODE_COVERAGE_CXXFLAGS])
- AC_SUBST([CODE_COVERAGE_LIBS])
- AC_SUBST([CODE_COVERAGE_LDFLAGS])
-
- [CODE_COVERAGE_RULES_CHECK='
- -$(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) -k check
- $(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) code-coverage-capture
-']
- [CODE_COVERAGE_RULES_CAPTURE='
- $(code_coverage_v_lcov_cap)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(call code_coverage_sanitize,$(PACKAGE_NAME)-$(PACKAGE_VERSION))" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_OPTIONS)
- $(code_coverage_v_lcov_ign)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_RMOPTS)
- -@rm -f $(CODE_COVERAGE_OUTPUT_FILE).tmp
- $(code_coverage_v_genhtml)LANG=C $(GENHTML) $(code_coverage_quiet) $(addprefix --prefix ,$(CODE_COVERAGE_DIRECTORY)) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS)
- @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html"
-']
- [CODE_COVERAGE_RULES_CLEAN='
-clean: code-coverage-clean
-distclean: code-coverage-clean
-code-coverage-clean:
- -$(LCOV) --directory $(top_builddir) -z
- -rm -rf $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_FILE).tmp $(CODE_COVERAGE_OUTPUT_DIRECTORY)
- -find . \( -name "*.gcda" -o -name "*.gcno" -o -name "*.gcov" \) -delete
-']
- ], [
- [CODE_COVERAGE_RULES_CHECK='
- @echo "Need to reconfigure with --enable-code-coverage"
-']
- CODE_COVERAGE_RULES_CAPTURE="$CODE_COVERAGE_RULES_CHECK"
- CODE_COVERAGE_RULES_CLEAN=''
- ])
-
-[CODE_COVERAGE_RULES='
-# Code coverage
-#
-# Optional:
-# - CODE_COVERAGE_DIRECTORY: Top-level directory for code coverage reporting.
-# Multiple directories may be specified, separated by whitespace.
-# (Default: $(top_builddir))
-# - CODE_COVERAGE_OUTPUT_FILE: Filename and path for the .info file generated
-# by lcov for code coverage. (Default:
-# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info)
-# - CODE_COVERAGE_OUTPUT_DIRECTORY: Directory for generated code coverage
-# reports to be created. (Default:
-# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage)
-# - CODE_COVERAGE_BRANCH_COVERAGE: Set to 1 to enforce branch coverage,
-# set to 0 to disable it and leave empty to stay with the default.
-# (Default: empty)
-# - CODE_COVERAGE_LCOV_SHOPTS_DEFAULT: Extra options shared between both lcov
-# instances. (Default: based on $CODE_COVERAGE_BRANCH_COVERAGE)
-# - CODE_COVERAGE_LCOV_SHOPTS: Extra options to shared between both lcov
-# instances. (Default: $CODE_COVERAGE_LCOV_SHOPTS_DEFAULT)
-# - CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH: --gcov-tool pathtogcov
-# - CODE_COVERAGE_LCOV_OPTIONS_DEFAULT: Extra options to pass to the
-# collecting lcov instance. (Default: $CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH)
-# - CODE_COVERAGE_LCOV_OPTIONS: Extra options to pass to the collecting lcov
-# instance. (Default: $CODE_COVERAGE_LCOV_OPTIONS_DEFAULT)
-# - CODE_COVERAGE_LCOV_RMOPTS_DEFAULT: Extra options to pass to the filtering
-# lcov instance. (Default: empty)
-# - CODE_COVERAGE_LCOV_RMOPTS: Extra options to pass to the filtering lcov
-# instance. (Default: $CODE_COVERAGE_LCOV_RMOPTS_DEFAULT)
-# - CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT: Extra options to pass to the
-# genhtml instance. (Default: based on $CODE_COVERAGE_BRANCH_COVERAGE)
-# - CODE_COVERAGE_GENHTML_OPTIONS: Extra options to pass to the genhtml
-# instance. (Default: $CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT)
-# - CODE_COVERAGE_IGNORE_PATTERN: Extra glob pattern of files to ignore
-#
-# The generated report will be titled using the $(PACKAGE_NAME) and
-# $(PACKAGE_VERSION). In order to add the current git hash to the title,
-# use the git-version-gen script, available online.
-
-# Optional variables
-CODE_COVERAGE_DIRECTORY ?= $(top_builddir)
-CODE_COVERAGE_OUTPUT_FILE ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info
-CODE_COVERAGE_OUTPUT_DIRECTORY ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage
-CODE_COVERAGE_BRANCH_COVERAGE ?=
-CODE_COVERAGE_LCOV_SHOPTS_DEFAULT ?= $(if $(CODE_COVERAGE_BRANCH_COVERAGE),\
---rc lcov_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE))
-CODE_COVERAGE_LCOV_SHOPTS ?= $(CODE_COVERAGE_LCOV_SHOPTS_DEFAULT)
-CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH ?= --gcov-tool "$(GCOV)"
-CODE_COVERAGE_LCOV_OPTIONS_DEFAULT ?= $(CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH)
-CODE_COVERAGE_LCOV_OPTIONS ?= $(CODE_COVERAGE_LCOV_OPTIONS_DEFAULT)
-CODE_COVERAGE_LCOV_RMOPTS_DEFAULT ?=
-CODE_COVERAGE_LCOV_RMOPTS ?= $(CODE_COVERAGE_LCOV_RMOPTS_DEFAULT)
-CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT ?=\
-$(if $(CODE_COVERAGE_BRANCH_COVERAGE),\
---rc genhtml_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE))
-CODE_COVERAGE_GENHTML_OPTIONS ?= $(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT)
-CODE_COVERAGE_IGNORE_PATTERN ?=
-
-GITIGNOREFILES ?=
-GITIGNOREFILES += $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_DIRECTORY)
-
-code_coverage_v_lcov_cap = $(code_coverage_v_lcov_cap_$(V))
-code_coverage_v_lcov_cap_ = $(code_coverage_v_lcov_cap_$(AM_DEFAULT_VERBOSITY))
-code_coverage_v_lcov_cap_0 = @echo " LCOV --capture"\
- $(CODE_COVERAGE_OUTPUT_FILE);
-code_coverage_v_lcov_ign = $(code_coverage_v_lcov_ign_$(V))
-code_coverage_v_lcov_ign_ = $(code_coverage_v_lcov_ign_$(AM_DEFAULT_VERBOSITY))
-code_coverage_v_lcov_ign_0 = @echo " LCOV --remove /tmp/*"\
- $(CODE_COVERAGE_IGNORE_PATTERN);
-code_coverage_v_genhtml = $(code_coverage_v_genhtml_$(V))
-code_coverage_v_genhtml_ = $(code_coverage_v_genhtml_$(AM_DEFAULT_VERBOSITY))
-code_coverage_v_genhtml_0 = @echo " GEN " $(CODE_COVERAGE_OUTPUT_DIRECTORY);
-code_coverage_quiet = $(code_coverage_quiet_$(V))
-code_coverage_quiet_ = $(code_coverage_quiet_$(AM_DEFAULT_VERBOSITY))
-code_coverage_quiet_0 = --quiet
-
-# sanitizes the test-name: replaces with underscores: dashes and dots
-code_coverage_sanitize = $(subst -,_,$(subst .,_,$(1)))
-
-# Use recursive makes in order to ignore errors during check
-check-code-coverage:'"$CODE_COVERAGE_RULES_CHECK"'
-
-# Capture code coverage data
-code-coverage-capture: code-coverage-capture-hook'"$CODE_COVERAGE_RULES_CAPTURE"'
-
-# Hook rule executed before code-coverage-capture, overridable by the user
-code-coverage-capture-hook:
-
-'"$CODE_COVERAGE_RULES_CLEAN"'
-
-A''M_DISTCHECK_CONFIGURE_FLAGS ?=
-A''M_DISTCHECK_CONFIGURE_FLAGS += --disable-code-coverage
-
-.PHONY: check-code-coverage code-coverage-capture code-coverage-capture-hook code-coverage-clean
-']
-
- AC_SUBST([CODE_COVERAGE_RULES])
- m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([CODE_COVERAGE_RULES])])
-])
-
-# ===========================================================================
-# https://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-# AX_CXX_COMPILE_STDCXX(VERSION, [ext|noext], [mandatory|optional])
-#
-# DESCRIPTION
-#
-# Check for baseline language coverage in the compiler for the specified
-# version of the C++ standard. If necessary, add switches to CXX and
-# CXXCPP to enable support. VERSION may be '11', '14', '17', or '20' for
-# the respective C++ standard version.
-#
-# The second argument, if specified, indicates whether you insist on an
-# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
-# -std=c++11). If neither is specified, you get whatever works, with
-# preference for no added switch, and then for an extended mode.
-#
-# The third argument, if specified 'mandatory' or if left unspecified,
-# indicates that baseline support for the specified C++ standard is
-# required and that the macro should error out if no mode with that
-# support is found. If specified 'optional', then configuration proceeds
-# regardless, after defining HAVE_CXX${VERSION} if and only if a
-# supporting mode is found.
-#
-# LICENSE
-#
-# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
-# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
-# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
-# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>
-# Copyright (c) 2015 Paul Norman <penorman@mac.com>
-# Copyright (c) 2015 Moritz Klammler <moritz@klammler.eu>
-# Copyright (c) 2016, 2018 Krzesimir Nowak <qdlacz@gmail.com>
-# Copyright (c) 2019 Enji Cooper <yaneurabeya@gmail.com>
-# Copyright (c) 2020 Jason Merrill <jason@redhat.com>
-# Copyright (c) 2021 Jörn Heusipp <osmanx@problemloesungsmaschine.de>
-#
-# Copying and distribution of this file, with or without modification, are
-# permitted in any medium without royalty provided the copyright notice
-# and this notice are preserved. This file is offered as-is, without any
-# warranty.
-
-#serial 14
-
-dnl This macro is based on the code from the AX_CXX_COMPILE_STDCXX_11 macro
-dnl (serial version number 13).
-
-AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl
- m4_if([$1], [11], [ax_cxx_compile_alternatives="11 0x"],
- [$1], [14], [ax_cxx_compile_alternatives="14 1y"],
- [$1], [17], [ax_cxx_compile_alternatives="17 1z"],
- [$1], [20], [ax_cxx_compile_alternatives="20"],
- [m4_fatal([invalid first argument `$1' to AX_CXX_COMPILE_STDCXX])])dnl
- m4_if([$2], [], [],
- [$2], [ext], [],
- [$2], [noext], [],
- [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX])])dnl
- m4_if([$3], [], [ax_cxx_compile_cxx$1_required=true],
- [$3], [mandatory], [ax_cxx_compile_cxx$1_required=true],
- [$3], [optional], [ax_cxx_compile_cxx$1_required=false],
- [m4_fatal([invalid third argument `$3' to AX_CXX_COMPILE_STDCXX])])
- AC_LANG_PUSH([C++])dnl
- ac_success=no
-
- m4_if([$2], [], [dnl
- AC_CACHE_CHECK(whether $CXX supports C++$1 features by default,
- ax_cv_cxx_compile_cxx$1,
- [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
- [ax_cv_cxx_compile_cxx$1=yes],
- [ax_cv_cxx_compile_cxx$1=no])])
- if test x$ax_cv_cxx_compile_cxx$1 = xyes; then
- ac_success=yes
- fi])
-
- m4_if([$2], [noext], [], [dnl
- if test x$ac_success = xno; then
- for alternative in ${ax_cxx_compile_alternatives}; do
- switch="-std=gnu++${alternative}"
- cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch])
- AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch,
- $cachevar,
- [ac_save_CXX="$CXX"
- CXX="$CXX $switch"
- AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
- [eval $cachevar=yes],
- [eval $cachevar=no])
- CXX="$ac_save_CXX"])
- if eval test x\$$cachevar = xyes; then
- CXX="$CXX $switch"
- if test -n "$CXXCPP" ; then
- CXXCPP="$CXXCPP $switch"
- fi
- ac_success=yes
- break
- fi
- done
- fi])
-
- m4_if([$2], [ext], [], [dnl
- if test x$ac_success = xno; then
- dnl HP's aCC needs +std=c++11 according to:
- dnl http://h21007.www2.hp.com/portal/download/files/unprot/aCxx/PDF_Release_Notes/769149-001.pdf
- dnl Cray's crayCC needs "-h std=c++11"
- for alternative in ${ax_cxx_compile_alternatives}; do
- for switch in -std=c++${alternative} +std=c++${alternative} "-h std=c++${alternative}"; do
- cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch])
- AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch,
- $cachevar,
- [ac_save_CXX="$CXX"
- CXX="$CXX $switch"
- AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
- [eval $cachevar=yes],
- [eval $cachevar=no])
- CXX="$ac_save_CXX"])
- if eval test x\$$cachevar = xyes; then
- CXX="$CXX $switch"
- if test -n "$CXXCPP" ; then
- CXXCPP="$CXXCPP $switch"
- fi
- ac_success=yes
- break
- fi
- done
- if test x$ac_success = xyes; then
- break
- fi
- done
- fi])
- AC_LANG_POP([C++])
- if test x$ax_cxx_compile_cxx$1_required = xtrue; then
- if test x$ac_success = xno; then
- AC_MSG_ERROR([*** A compiler with support for C++$1 language features is required.])
- fi
- fi
- if test x$ac_success = xno; then
- HAVE_CXX$1=0
- AC_MSG_NOTICE([No compiler with C++$1 support was found])
- else
- HAVE_CXX$1=1
- AC_DEFINE(HAVE_CXX$1,1,
- [define if the compiler supports basic C++$1 syntax])
- fi
- AC_SUBST(HAVE_CXX$1)
-])
-
-
-dnl Test body for checking C++11 support
-
-m4_define([_AX_CXX_COMPILE_STDCXX_testbody_11],
- _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
-)
-
-dnl Test body for checking C++14 support
-
-m4_define([_AX_CXX_COMPILE_STDCXX_testbody_14],
- _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
- _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
-)
-
-dnl Test body for checking C++17 support
-
-m4_define([_AX_CXX_COMPILE_STDCXX_testbody_17],
- _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
- _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
- _AX_CXX_COMPILE_STDCXX_testbody_new_in_17
-)
-
-dnl Test body for checking C++20 support
-
-m4_define([_AX_CXX_COMPILE_STDCXX_testbody_20],
- _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
- _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
- _AX_CXX_COMPILE_STDCXX_testbody_new_in_17
- _AX_CXX_COMPILE_STDCXX_testbody_new_in_20
-)
-
-
-dnl Tests for new features in C++11
-
-m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_11], [[
-
-// If the compiler admits that it is not ready for C++11, why torture it?
-// Hopefully, this will speed up the test.
-
-#ifndef __cplusplus
-
-#error "This is not a C++ compiler"
-
-#elif __cplusplus < 201103L
-
-#error "This is not a C++11 compiler"
-
-#else
-
-namespace cxx11
-{
-
- namespace test_static_assert
- {
-
- template <typename T>
- struct check
- {
- static_assert(sizeof(int) <= sizeof(T), "not big enough");
- };
-
- }
-
- namespace test_final_override
- {
-
- struct Base
- {
- virtual ~Base() {}
- virtual void f() {}
- };
-
- struct Derived : public Base
- {
- virtual ~Derived() override {}
- virtual void f() override {}
- };
-
- }
-
- namespace test_double_right_angle_brackets
- {
-
- template < typename T >
- struct check {};
-
- typedef check<void> single_type;
- typedef check<check<void>> double_type;
- typedef check<check<check<void>>> triple_type;
- typedef check<check<check<check<void>>>> quadruple_type;
-
- }
-
- namespace test_decltype
- {
-
- int
- f()
- {
- int a = 1;
- decltype(a) b = 2;
- return a + b;
- }
-
- }
-
- namespace test_type_deduction
- {
-
- template < typename T1, typename T2 >
- struct is_same
- {
- static const bool value = false;
- };
-
- template < typename T >
- struct is_same<T, T>
- {
- static const bool value = true;
- };
-
- template < typename T1, typename T2 >
- auto
- add(T1 a1, T2 a2) -> decltype(a1 + a2)
- {
- return a1 + a2;
- }
-
- int
- test(const int c, volatile int v)
- {
- static_assert(is_same<int, decltype(0)>::value == true, "");
- static_assert(is_same<int, decltype(c)>::value == false, "");
- static_assert(is_same<int, decltype(v)>::value == false, "");
- auto ac = c;
- auto av = v;
- auto sumi = ac + av + 'x';
- auto sumf = ac + av + 1.0;
- static_assert(is_same<int, decltype(ac)>::value == true, "");
- static_assert(is_same<int, decltype(av)>::value == true, "");
- static_assert(is_same<int, decltype(sumi)>::value == true, "");
- static_assert(is_same<int, decltype(sumf)>::value == false, "");
- static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
- return (sumf > 0.0) ? sumi : add(c, v);
- }
-
- }
-
- namespace test_noexcept
- {
-
- int f() { return 0; }
- int g() noexcept { return 0; }
-
- static_assert(noexcept(f()) == false, "");
- static_assert(noexcept(g()) == true, "");
-
- }
-
- namespace test_constexpr
- {
-
- template < typename CharT >
- unsigned long constexpr
- strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
- {
- return *s ? strlen_c_r(s + 1, acc + 1) : acc;
- }
-
- template < typename CharT >
- unsigned long constexpr
- strlen_c(const CharT *const s) noexcept
- {
- return strlen_c_r(s, 0UL);
- }
-
- static_assert(strlen_c("") == 0UL, "");
- static_assert(strlen_c("1") == 1UL, "");
- static_assert(strlen_c("example") == 7UL, "");
- static_assert(strlen_c("another\0example") == 7UL, "");
-
- }
-
- namespace test_rvalue_references
- {
-
- template < int N >
- struct answer
- {
- static constexpr int value = N;
- };
-
- answer<1> f(int&) { return answer<1>(); }
- answer<2> f(const int&) { return answer<2>(); }
- answer<3> f(int&&) { return answer<3>(); }
-
- void
- test()
- {
- int i = 0;
- const int c = 0;
- static_assert(decltype(f(i))::value == 1, "");
- static_assert(decltype(f(c))::value == 2, "");
- static_assert(decltype(f(0))::value == 3, "");
- }
-
- }
-
- namespace test_uniform_initialization
- {
-
- struct test
- {
- static const int zero {};
- static const int one {1};
- };
-
- static_assert(test::zero == 0, "");
- static_assert(test::one == 1, "");
-
- }
-
- namespace test_lambdas
- {
-
- void
- test1()
- {
- auto lambda1 = [](){};
- auto lambda2 = lambda1;
- lambda1();
- lambda2();
- }
-
- int
- test2()
- {
- auto a = [](int i, int j){ return i + j; }(1, 2);
- auto b = []() -> int { return '0'; }();
- auto c = [=](){ return a + b; }();
- auto d = [&](){ return c; }();
- auto e = [a, &b](int x) mutable {
- const auto identity = [](int y){ return y; };
- for (auto i = 0; i < a; ++i)
- a += b--;
- return x + identity(a + b);
- }(0);
- return a + b + c + d + e;
- }
-
- int
- test3()
- {
- const auto nullary = [](){ return 0; };
- const auto unary = [](int x){ return x; };
- using nullary_t = decltype(nullary);
- using unary_t = decltype(unary);
- const auto higher1st = [](nullary_t f){ return f(); };
- const auto higher2nd = [unary](nullary_t f1){
- return [unary, f1](unary_t f2){ return f2(unary(f1())); };
- };
- return higher1st(nullary) + higher2nd(nullary)(unary);
- }
-
- }
-
- namespace test_variadic_templates
- {
-
- template <int...>
- struct sum;
-
- template <int N0, int... N1toN>
- struct sum<N0, N1toN...>
- {
- static constexpr auto value = N0 + sum<N1toN...>::value;
- };
-
- template <>
- struct sum<>
- {
- static constexpr auto value = 0;
- };
-
- static_assert(sum<>::value == 0, "");
- static_assert(sum<1>::value == 1, "");
- static_assert(sum<23>::value == 23, "");
- static_assert(sum<1, 2>::value == 3, "");
- static_assert(sum<5, 5, 11>::value == 21, "");
- static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
-
- }
-
- // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
- // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
- // because of this.
- namespace test_template_alias_sfinae
- {
-
- struct foo {};
-
- template<typename T>
- using member = typename T::member_type;
-
- template<typename T>
- void func(...) {}
-
- template<typename T>
- void func(member<T>*) {}
-
- void test();
-
- void test() { func<foo>(0); }
-
- }
-
-} // namespace cxx11
-
-#endif // __cplusplus >= 201103L
-
-]])
-
-
-dnl Tests for new features in C++14
-
-m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_14], [[
-
-// If the compiler admits that it is not ready for C++14, why torture it?
-// Hopefully, this will speed up the test.
-
-#ifndef __cplusplus
-
-#error "This is not a C++ compiler"
-
-#elif __cplusplus < 201402L
-
-#error "This is not a C++14 compiler"
-
-#else
-
-namespace cxx14
-{
-
- namespace test_polymorphic_lambdas
- {
-
- int
- test()
- {
- const auto lambda = [](auto&&... args){
- const auto istiny = [](auto x){
- return (sizeof(x) == 1UL) ? 1 : 0;
- };
- const int aretiny[] = { istiny(args)... };
- return aretiny[0];
- };
- return lambda(1, 1L, 1.0f, '1');
- }
-
- }
-
- namespace test_binary_literals
- {
-
- constexpr auto ivii = 0b0000000000101010;
- static_assert(ivii == 42, "wrong value");
-
- }
-
- namespace test_generalized_constexpr
- {
-
- template < typename CharT >
- constexpr unsigned long
- strlen_c(const CharT *const s) noexcept
- {
- auto length = 0UL;
- for (auto p = s; *p; ++p)
- ++length;
- return length;
- }
-
- static_assert(strlen_c("") == 0UL, "");
- static_assert(strlen_c("x") == 1UL, "");
- static_assert(strlen_c("test") == 4UL, "");
- static_assert(strlen_c("another\0test") == 7UL, "");
-
- }
-
- namespace test_lambda_init_capture
- {
-
- int
- test()
- {
- auto x = 0;
- const auto lambda1 = [a = x](int b){ return a + b; };
- const auto lambda2 = [a = lambda1(x)](){ return a; };
- return lambda2();
- }
-
- }
-
- namespace test_digit_separators
- {
-
- constexpr auto ten_million = 100'000'000;
- static_assert(ten_million == 100000000, "");
-
- }
-
- namespace test_return_type_deduction
- {
-
- auto f(int& x) { return x; }
- decltype(auto) g(int& x) { return x; }
-
- template < typename T1, typename T2 >
- struct is_same
- {
- static constexpr auto value = false;
- };
-
- template < typename T >
- struct is_same<T, T>
- {
- static constexpr auto value = true;
- };
-
- int
- test()
- {
- auto x = 0;
- static_assert(is_same<int, decltype(f(x))>::value, "");
- static_assert(is_same<int&, decltype(g(x))>::value, "");
- return x;
- }
-
- }
-
-} // namespace cxx14
-
-#endif // __cplusplus >= 201402L
-
-]])
-
-
-dnl Tests for new features in C++17
-
-m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_17], [[
-
-// If the compiler admits that it is not ready for C++17, why torture it?
-// Hopefully, this will speed up the test.
-
-#ifndef __cplusplus
-
-#error "This is not a C++ compiler"
-
-#elif __cplusplus < 201703L
-
-#error "This is not a C++17 compiler"
-
-#else
-
-#include <initializer_list>
-#include <utility>
-#include <type_traits>
-
-namespace cxx17
-{
-
- namespace test_constexpr_lambdas
- {
-
- constexpr int foo = [](){return 42;}();
-
- }
-
- namespace test::nested_namespace::definitions
- {
-
- }
-
- namespace test_fold_expression
- {
-
- template<typename... Args>
- int multiply(Args... args)
- {
- return (args * ... * 1);
- }
-
- template<typename... Args>
- bool all(Args... args)
- {
- return (args && ...);
- }
-
- }
-
- namespace test_extended_static_assert
- {
-
- static_assert (true);
-
- }
-
- namespace test_auto_brace_init_list
- {
-
- auto foo = {5};
- auto bar {5};
-
- static_assert(std::is_same<std::initializer_list<int>, decltype(foo)>::value);
- static_assert(std::is_same<int, decltype(bar)>::value);
- }
-
- namespace test_typename_in_template_template_parameter
- {
-
- template<template<typename> typename X> struct D;
-
- }
-
- namespace test_fallthrough_nodiscard_maybe_unused_attributes
- {
-
- int f1()
- {
- return 42;
- }
-
- [[nodiscard]] int f2()
- {
- [[maybe_unused]] auto unused = f1();
-
- switch (f1())
- {
- case 17:
- f1();
- [[fallthrough]];
- case 42:
- f1();
- }
- return f1();
- }
-
- }
-
- namespace test_extended_aggregate_initialization
- {
-
- struct base1
- {
- int b1, b2 = 42;
- };
-
- struct base2
- {
- base2() {
- b3 = 42;
- }
- int b3;
- };
-
- struct derived : base1, base2
- {
- int d;
- };
-
- derived d1 {{1, 2}, {}, 4}; // full initialization
- derived d2 {{}, {}, 4}; // value-initialized bases
-
- }
-
- namespace test_general_range_based_for_loop
- {
-
- struct iter
- {
- int i;
-
- int& operator* ()
- {
- return i;
- }
-
- const int& operator* () const
- {
- return i;
- }
-
- iter& operator++()
- {
- ++i;
- return *this;
- }
- };
-
- struct sentinel
- {
- int i;
- };
-
- bool operator== (const iter& i, const sentinel& s)
- {
- return i.i == s.i;
- }
-
- bool operator!= (const iter& i, const sentinel& s)
- {
- return !(i == s);
- }
-
- struct range
- {
- iter begin() const
- {
- return {0};
- }
-
- sentinel end() const
- {
- return {5};
- }
- };
-
- void f()
- {
- range r {};
-
- for (auto i : r)
- {
- [[maybe_unused]] auto v = i;
- }
- }
-
- }
-
- namespace test_lambda_capture_asterisk_this_by_value
- {
-
- struct t
- {
- int i;
- int foo()
- {
- return [*this]()
- {
- return i;
- }();
- }
- };
-
- }
-
- namespace test_enum_class_construction
- {
-
- enum class byte : unsigned char
- {};
-
- byte foo {42};
-
- }
-
- namespace test_constexpr_if
- {
-
- template <bool cond>
- int f ()
- {
- if constexpr(cond)
- {
- return 13;
- }
- else
- {
- return 42;
- }
- }
-
- }
-
- namespace test_selection_statement_with_initializer
- {
-
- int f()
- {
- return 13;
- }
-
- int f2()
- {
- if (auto i = f(); i > 0)
- {
- return 3;
- }
-
- switch (auto i = f(); i + 4)
- {
- case 17:
- return 2;
-
- default:
- return 1;
- }
- }
-
- }
-
- namespace test_template_argument_deduction_for_class_templates
- {
-
- template <typename T1, typename T2>
- struct pair
- {
- pair (T1 p1, T2 p2)
- : m1 {p1},
- m2 {p2}
- {}
-
- T1 m1;
- T2 m2;
- };
-
- void f()
- {
- [[maybe_unused]] auto p = pair{13, 42u};
- }
-
- }
-
- namespace test_non_type_auto_template_parameters
- {
-
- template <auto n>
- struct B
- {};
-
- B<5> b1;
- B<'a'> b2;
-
- }
-
- namespace test_structured_bindings
- {
-
- int arr[2] = { 1, 2 };
- std::pair<int, int> pr = { 1, 2 };
-
- auto f1() -> int(&)[2]
- {
- return arr;
- }
-
- auto f2() -> std::pair<int, int>&
- {
- return pr;
- }
-
- struct S
- {
- int x1 : 2;
- volatile double y1;
- };
-
- S f3()
- {
- return {};
- }
-
- auto [ x1, y1 ] = f1();
- auto& [ xr1, yr1 ] = f1();
- auto [ x2, y2 ] = f2();
- auto& [ xr2, yr2 ] = f2();
- const auto [ x3, y3 ] = f3();
-
- }
-
- namespace test_exception_spec_type_system
- {
-
- struct Good {};
- struct Bad {};
-
- void g1() noexcept;
- void g2();
-
- template<typename T>
- Bad
- f(T*, T*);
-
- template<typename T1, typename T2>
- Good
- f(T1*, T2*);
-
- static_assert (std::is_same_v<Good, decltype(f(g1, g2))>);
-
- }
-
- namespace test_inline_variables
- {
-
- template<class T> void f(T)
- {}
-
- template<class T> inline T g(T)
- {
- return T{};
- }
-
- template<> inline void f<>(int)
- {}
-
- template<> int g<>(int)
- {
- return 5;
- }
-
- }
-
-} // namespace cxx17
-
-#endif // __cplusplus < 201703L
-
-]])
-
-
-dnl Tests for new features in C++20
-
-m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_20], [[
-
-#ifndef __cplusplus
-
-#error "This is not a C++ compiler"
-
-#elif __cplusplus < 202002L
-
-#error "This is not a C++20 compiler"
-
-#else
-
-#include <version>
-
-namespace cxx20
-{
-
-// As C++20 supports feature test macros in the standard, there is no
-// immediate need to actually test for feature availability on the
-// Autoconf side.
-
-} // namespace cxx20
-
-#endif // __cplusplus < 202002L
-
-]])
-
-# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
-#
-# Copyright (C) 1996-2001, 2003-2019, 2021-2022 Free Software
-# Foundation, Inc.
-# Written by Gordon Matzigkeit, 1996
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-m4_define([_LT_COPYING], [dnl
-# Copyright (C) 2014 Free Software Foundation, Inc.
-# This is free software; see the source for copying conditions. There is NO
-# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-# GNU Libtool is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of of the License, or
-# (at your option) any later version.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program or library that is built
-# using GNU Libtool, you may include this file under the same
-# distribution terms that you use for the rest of that program.
-#
-# GNU Libtool is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-])
-
-# serial 59 LT_INIT
-
-
-# LT_PREREQ(VERSION)
-# ------------------
-# Complain and exit if this libtool version is less that VERSION.
-m4_defun([LT_PREREQ],
-[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
- [m4_default([$3],
- [m4_fatal([Libtool version $1 or higher is required],
- 63)])],
- [$2])])
-
-
-# _LT_CHECK_BUILDDIR
-# ------------------
-# Complain if the absolute build directory name contains unusual characters
-m4_defun([_LT_CHECK_BUILDDIR],
-[case `pwd` in
- *\ * | *\ *)
- AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
-esac
-])
-
-
-# LT_INIT([OPTIONS])
-# ------------------
-AC_DEFUN([LT_INIT],
-[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
-AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
-AC_BEFORE([$0], [LT_LANG])dnl
-AC_BEFORE([$0], [LT_OUTPUT])dnl
-AC_BEFORE([$0], [LTDL_INIT])dnl
-m4_require([_LT_CHECK_BUILDDIR])dnl
-
-dnl Autoconf doesn't catch unexpanded LT_ macros by default:
-m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
-m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
-dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
-dnl unless we require an AC_DEFUNed macro:
-AC_REQUIRE([LTOPTIONS_VERSION])dnl
-AC_REQUIRE([LTSUGAR_VERSION])dnl
-AC_REQUIRE([LTVERSION_VERSION])dnl
-AC_REQUIRE([LTOBSOLETE_VERSION])dnl
-m4_require([_LT_PROG_LTMAIN])dnl
-
-_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
-
-dnl Parse OPTIONS
-_LT_SET_OPTIONS([$0], [$1])
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS=$ltmain
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-AC_SUBST(LIBTOOL)dnl
-
-_LT_SETUP
-
-# Only expand once:
-m4_define([LT_INIT])
-])# LT_INIT
-
-# Old names:
-AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
-AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
-dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
-
-
-# _LT_PREPARE_CC_BASENAME
-# -----------------------
-m4_defun([_LT_PREPARE_CC_BASENAME], [
-# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
-func_cc_basename ()
-{
- for cc_temp in @S|@*""; do
- case $cc_temp in
- compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
- distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
- \-*) ;;
- *) break;;
- esac
- done
- func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
-}
-])# _LT_PREPARE_CC_BASENAME
-
-
-# _LT_CC_BASENAME(CC)
-# -------------------
-# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
-# but that macro is also expanded into generated libtool script, which
-# arranges for $SED and $ECHO to be set by different means.
-m4_defun([_LT_CC_BASENAME],
-[m4_require([_LT_PREPARE_CC_BASENAME])dnl
-AC_REQUIRE([_LT_DECL_SED])dnl
-AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
-func_cc_basename $1
-cc_basename=$func_cc_basename_result
-])
-
-
-# _LT_FILEUTILS_DEFAULTS
-# ----------------------
-# It is okay to use these file commands and assume they have been set
-# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
-m4_defun([_LT_FILEUTILS_DEFAULTS],
-[: ${CP="cp -f"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-])# _LT_FILEUTILS_DEFAULTS
-
-
-# _LT_SETUP
-# ---------
-m4_defun([_LT_SETUP],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
-AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
-
-_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
-dnl
-_LT_DECL([], [host_alias], [0], [The host system])dnl
-_LT_DECL([], [host], [0])dnl
-_LT_DECL([], [host_os], [0])dnl
-dnl
-_LT_DECL([], [build_alias], [0], [The build system])dnl
-_LT_DECL([], [build], [0])dnl
-_LT_DECL([], [build_os], [0])dnl
-dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([LT_PATH_LD])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-dnl
-AC_REQUIRE([AC_PROG_LN_S])dnl
-test -z "$LN_S" && LN_S="ln -s"
-_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
-dnl
-AC_REQUIRE([LT_CMD_MAX_LEN])dnl
-_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
-_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
-dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_CHECK_SHELL_FEATURES])dnl
-m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
-m4_require([_LT_CMD_RELOAD])dnl
-m4_require([_LT_DECL_FILECMD])dnl
-m4_require([_LT_CHECK_MAGIC_METHOD])dnl
-m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
-m4_require([_LT_CMD_OLD_ARCHIVE])dnl
-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-m4_require([_LT_WITH_SYSROOT])dnl
-m4_require([_LT_CMD_TRUNCATE])dnl
-
-_LT_CONFIG_LIBTOOL_INIT([
-# See if we are running on zsh, and set the options that allow our
-# commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}"; then
- setopt NO_GLOB_SUBST
-fi
-])
-if test -n "${ZSH_VERSION+set}"; then
- setopt NO_GLOB_SUBST
-fi
-
-_LT_CHECK_OBJDIR
-
-m4_require([_LT_TAG_COMPILER])dnl
-
-case $host_os in
-aix3*)
- # AIX sometimes has problems with the GCC collect2 program. For some
- # reason, if we set the COLLECT_NAMES environment variable, the problems
- # vanish in a puff of smoke.
- if test set != "${COLLECT_NAMES+set}"; then
- COLLECT_NAMES=
- export COLLECT_NAMES
- fi
- ;;
-esac
-
-# Global variables:
-ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a '.a' archive for static linking (except MSVC and
-# ICC, which need '.lib').
-libext=a
-
-with_gnu_ld=$lt_cv_prog_gnu_ld
-
-old_CC=$CC
-old_CFLAGS=$CFLAGS
-
-# Set sane defaults for various variables
-test -z "$CC" && CC=cc
-test -z "$LTCC" && LTCC=$CC
-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
-test -z "$LD" && LD=ld
-test -z "$ac_objext" && ac_objext=o
-
-_LT_CC_BASENAME([$compiler])
-
-# Only perform the check for file, if the check method requires it
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-case $deplibs_check_method in
-file_magic*)
- if test "$file_magic_cmd" = '$MAGIC_CMD'; then
- _LT_PATH_MAGIC
- fi
- ;;
-esac
-
-# Use C for the default configuration in the libtool script
-LT_SUPPORTED_TAG([CC])
-_LT_LANG_C_CONFIG
-_LT_LANG_DEFAULT_CONFIG
-_LT_CONFIG_COMMANDS
-])# _LT_SETUP
-
-
-# _LT_PREPARE_SED_QUOTE_VARS
-# --------------------------
-# Define a few sed substitution that help us do robust quoting.
-m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
-[# Backslashify metacharacters that are still active within
-# double-quoted strings.
-sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\([["`\\]]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Sed substitution to delay expansion of an escaped single quote.
-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
-
-# Sed substitution to avoid accidental globbing in evaled expressions
-no_glob_subst='s/\*/\\\*/g'
-])
-
-# _LT_PROG_LTMAIN
-# ---------------
-# Note that this code is called both from 'configure', and 'config.status'
-# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
-# 'config.status' has no value for ac_aux_dir unless we are using Automake,
-# so we pass a copy along to make sure it has a sensible value anyway.
-m4_defun([_LT_PROG_LTMAIN],
-[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
-_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
-ltmain=$ac_aux_dir/ltmain.sh
-])# _LT_PROG_LTMAIN
-
-
-
-# So that we can recreate a full libtool script including additional
-# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
-# in macros and then make a single call at the end using the 'libtool'
-# label.
-
-
-# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
-# ----------------------------------------
-# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
-m4_define([_LT_CONFIG_LIBTOOL_INIT],
-[m4_ifval([$1],
- [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
- [$1
-])])])
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_INIT])
-
-
-# _LT_CONFIG_LIBTOOL([COMMANDS])
-# ------------------------------
-# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
-m4_define([_LT_CONFIG_LIBTOOL],
-[m4_ifval([$1],
- [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
- [$1
-])])])
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
-
-
-# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
-# -----------------------------------------------------
-m4_defun([_LT_CONFIG_SAVE_COMMANDS],
-[_LT_CONFIG_LIBTOOL([$1])
-_LT_CONFIG_LIBTOOL_INIT([$2])
-])
-
-
-# _LT_FORMAT_COMMENT([COMMENT])
-# -----------------------------
-# Add leading comment marks to the start of each line, and a trailing
-# full-stop to the whole comment if one is not present already.
-m4_define([_LT_FORMAT_COMMENT],
-[m4_ifval([$1], [
-m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
- [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
-)])
-
-
-
-
-
-# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
-# -------------------------------------------------------------------
-# CONFIGNAME is the name given to the value in the libtool script.
-# VARNAME is the (base) name used in the configure script.
-# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
-# VARNAME. Any other value will be used directly.
-m4_define([_LT_DECL],
-[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
- [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
- [m4_ifval([$1], [$1], [$2])])
- lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
- m4_ifval([$4],
- [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
- lt_dict_add_subkey([lt_decl_dict], [$2],
- [tagged?], [m4_ifval([$5], [yes], [no])])])
-])
-
-
-# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
-# --------------------------------------------------------
-m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
-
-
-# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
-# ------------------------------------------------
-m4_define([lt_decl_tag_varnames],
-[_lt_decl_filter([tagged?], [yes], $@)])
-
-
-# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
-# ---------------------------------------------------------
-m4_define([_lt_decl_filter],
-[m4_case([$#],
- [0], [m4_fatal([$0: too few arguments: $#])],
- [1], [m4_fatal([$0: too few arguments: $#: $1])],
- [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
- [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
- [lt_dict_filter([lt_decl_dict], $@)])[]dnl
-])
-
-
-# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
-# --------------------------------------------------
-m4_define([lt_decl_quote_varnames],
-[_lt_decl_filter([value], [1], $@)])
-
-
-# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
-# ---------------------------------------------------
-m4_define([lt_decl_dquote_varnames],
-[_lt_decl_filter([value], [2], $@)])
-
-
-# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
-# ---------------------------------------------------
-m4_define([lt_decl_varnames_tagged],
-[m4_assert([$# <= 2])dnl
-_$0(m4_quote(m4_default([$1], [[, ]])),
- m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
- m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
-m4_define([_lt_decl_varnames_tagged],
-[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
-
-
-# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
-# ------------------------------------------------
-m4_define([lt_decl_all_varnames],
-[_$0(m4_quote(m4_default([$1], [[, ]])),
- m4_if([$2], [],
- m4_quote(lt_decl_varnames),
- m4_quote(m4_shift($@))))[]dnl
-])
-m4_define([_lt_decl_all_varnames],
-[lt_join($@, lt_decl_varnames_tagged([$1],
- lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
-])
-
-
-# _LT_CONFIG_STATUS_DECLARE([VARNAME])
-# ------------------------------------
-# Quote a variable value, and forward it to 'config.status' so that its
-# declaration there will have the same value as in 'configure'. VARNAME
-# must have a single quote delimited value for this to work.
-m4_define([_LT_CONFIG_STATUS_DECLARE],
-[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
-
-
-# _LT_CONFIG_STATUS_DECLARATIONS
-# ------------------------------
-# We delimit libtool config variables with single quotes, so when
-# we write them to config.status, we have to be sure to quote all
-# embedded single quotes properly. In configure, this macro expands
-# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
-#
-# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
-m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
-[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
- [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
-
-
-# _LT_LIBTOOL_TAGS
-# ----------------
-# Output comment and list of tags supported by the script
-m4_defun([_LT_LIBTOOL_TAGS],
-[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
-available_tags='_LT_TAGS'dnl
-])
-
-
-# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
-# -----------------------------------
-# Extract the dictionary values for VARNAME (optionally with TAG) and
-# expand to a commented shell variable setting:
-#
-# # Some comment about what VAR is for.
-# visible_name=$lt_internal_name
-m4_define([_LT_LIBTOOL_DECLARE],
-[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
- [description])))[]dnl
-m4_pushdef([_libtool_name],
- m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
-m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
- [0], [_libtool_name=[$]$1],
- [1], [_libtool_name=$lt_[]$1],
- [2], [_libtool_name=$lt_[]$1],
- [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
-m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
-])
-
-
-# _LT_LIBTOOL_CONFIG_VARS
-# -----------------------
-# Produce commented declarations of non-tagged libtool config variables
-# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
-# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
-# section) are produced by _LT_LIBTOOL_TAG_VARS.
-m4_defun([_LT_LIBTOOL_CONFIG_VARS],
-[m4_foreach([_lt_var],
- m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
- [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
-
-
-# _LT_LIBTOOL_TAG_VARS(TAG)
-# -------------------------
-m4_define([_LT_LIBTOOL_TAG_VARS],
-[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
- [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
-
-
-# _LT_TAGVAR(VARNAME, [TAGNAME])
-# ------------------------------
-m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
-
-
-# _LT_CONFIG_COMMANDS
-# -------------------
-# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
-# variables for single and double quote escaping we saved from calls
-# to _LT_DECL, we can put quote escaped variables declarations
-# into 'config.status', and then the shell code to quote escape them in
-# for loops in 'config.status'. Finally, any additional code accumulated
-# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
-m4_defun([_LT_CONFIG_COMMANDS],
-[AC_PROVIDE_IFELSE([LT_OUTPUT],
- dnl If the libtool generation code has been placed in $CONFIG_LT,
- dnl instead of duplicating it all over again into config.status,
- dnl then we will have config.status run $CONFIG_LT later, so it
- dnl needs to know what name is stored there:
- [AC_CONFIG_COMMANDS([libtool],
- [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
- dnl If the libtool generation code is destined for config.status,
- dnl expand the accumulated commands and init code now:
- [AC_CONFIG_COMMANDS([libtool],
- [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
-])#_LT_CONFIG_COMMANDS
-
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
-[
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-sed_quote_subst='$sed_quote_subst'
-double_quote_subst='$double_quote_subst'
-delay_variable_subst='$delay_variable_subst'
-_LT_CONFIG_STATUS_DECLARATIONS
-LTCC='$LTCC'
-LTCFLAGS='$LTCFLAGS'
-compiler='$compiler_DEFAULT'
-
-# A function that is used when there is no print builtin or printf.
-func_fallback_echo ()
-{
- eval 'cat <<_LTECHO_EOF
-\$[]1
-_LTECHO_EOF'
-}
-
-# Quote evaled strings.
-for var in lt_decl_all_varnames([[ \
-]], lt_decl_quote_varnames); do
- case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
- *[[\\\\\\\`\\"\\\$]]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Double-quote double-evaled strings.
-for var in lt_decl_all_varnames([[ \
-]], lt_decl_dquote_varnames); do
- case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
- *[[\\\\\\\`\\"\\\$]]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-_LT_OUTPUT_LIBTOOL_INIT
-])
-
-# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
-# ------------------------------------
-# Generate a child script FILE with all initialization necessary to
-# reuse the environment learned by the parent script, and make the
-# file executable. If COMMENT is supplied, it is inserted after the
-# '#!' sequence but before initialization text begins. After this
-# macro, additional text can be appended to FILE to form the body of
-# the child script. The macro ends with non-zero status if the
-# file could not be fully written (such as if the disk is full).
-m4_ifdef([AS_INIT_GENERATED],
-[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
-[m4_defun([_LT_GENERATED_FILE_INIT],
-[m4_require([AS_PREPARE])]dnl
-[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
-[lt_write_fail=0
-cat >$1 <<_ASEOF || lt_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-$2
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$1 <<\_ASEOF || lt_write_fail=1
-AS_SHELL_SANITIZE
-_AS_PREPARE
-exec AS_MESSAGE_FD>&1
-_ASEOF
-test 0 = "$lt_write_fail" && chmod +x $1[]dnl
-m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
-
-# LT_OUTPUT
-# ---------
-# This macro allows early generation of the libtool script (before
-# AC_OUTPUT is called), incase it is used in configure for compilation
-# tests.
-AC_DEFUN([LT_OUTPUT],
-[: ${CONFIG_LT=./config.lt}
-AC_MSG_NOTICE([creating $CONFIG_LT])
-_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
-[# Run this file to recreate a libtool stub with the current configuration.])
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-lt_cl_silent=false
-exec AS_MESSAGE_LOG_FD>>config.log
-{
- echo
- AS_BOX([Running $as_me.])
-} >&AS_MESSAGE_LOG_FD
-
-lt_cl_help="\
-'$as_me' creates a local libtool stub from the current configuration,
-for use in further configure time tests before the real libtool is
-generated.
-
-Usage: $[0] [[OPTIONS]]
-
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -q, --quiet do not print progress messages
- -d, --debug don't remove temporary files
-
-Report bugs to <bug-libtool@gnu.org>."
-
-lt_cl_version="\
-m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
-m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
-configured by $[0], generated by m4_PACKAGE_STRING.
-
-Copyright (C) 2011 Free Software Foundation, Inc.
-This config.lt script is free software; the Free Software Foundation
-gives unlimited permision to copy, distribute and modify it."
-
-while test 0 != $[#]
-do
- case $[1] in
- --version | --v* | -V )
- echo "$lt_cl_version"; exit 0 ;;
- --help | --h* | -h )
- echo "$lt_cl_help"; exit 0 ;;
- --debug | --d* | -d )
- debug=: ;;
- --quiet | --q* | --silent | --s* | -q )
- lt_cl_silent=: ;;
-
- -*) AC_MSG_ERROR([unrecognized option: $[1]
-Try '$[0] --help' for more information.]) ;;
-
- *) AC_MSG_ERROR([unrecognized argument: $[1]
-Try '$[0] --help' for more information.]) ;;
- esac
- shift
-done
-
-if $lt_cl_silent; then
- exec AS_MESSAGE_FD>/dev/null
-fi
-_LTEOF
-
-cat >>"$CONFIG_LT" <<_LTEOF
-_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
-_LTEOF
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-AC_MSG_NOTICE([creating $ofile])
-_LT_OUTPUT_LIBTOOL_COMMANDS
-AS_EXIT(0)
-_LTEOF
-chmod +x "$CONFIG_LT"
-
-# configure is writing to config.log, but config.lt does its own redirection,
-# appending to config.log, which fails on DOS, as config.log is still kept
-# open by configure. Here we exec the FD to /dev/null, effectively closing
-# config.log, so it can be properly (re)opened and appended to by config.lt.
-lt_cl_success=:
-test yes = "$silent" &&
- lt_config_lt_args="$lt_config_lt_args --quiet"
-exec AS_MESSAGE_LOG_FD>/dev/null
-$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
-exec AS_MESSAGE_LOG_FD>>config.log
-$lt_cl_success || AS_EXIT(1)
-])# LT_OUTPUT
-
-
-# _LT_CONFIG(TAG)
-# ---------------
-# If TAG is the built-in tag, create an initial libtool script with a
-# default configuration from the untagged config vars. Otherwise add code
-# to config.status for appending the configuration named by TAG from the
-# matching tagged config vars.
-m4_defun([_LT_CONFIG],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-_LT_CONFIG_SAVE_COMMANDS([
- m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
- m4_if(_LT_TAG, [C], [
- # See if we are running on zsh, and set the options that allow our
- # commands through without removal of \ escapes.
- if test -n "${ZSH_VERSION+set}"; then
- setopt NO_GLOB_SUBST
- fi
-
- cfgfile=${ofile}T
- trap "$RM \"$cfgfile\"; exit 1" 1 2 15
- $RM "$cfgfile"
-
- cat <<_LT_EOF >> "$cfgfile"
-#! $SHELL
-# Generated automatically by $as_me ($PACKAGE) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-
-# Provide generalized library-building support services.
-# Written by Gordon Matzigkeit, 1996
-
-_LT_COPYING
-_LT_LIBTOOL_TAGS
-
-# Configured defaults for sys_lib_dlsearch_path munging.
-: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
-
-# ### BEGIN LIBTOOL CONFIG
-_LT_LIBTOOL_CONFIG_VARS
-_LT_LIBTOOL_TAG_VARS
-# ### END LIBTOOL CONFIG
-
-_LT_EOF
-
- cat <<'_LT_EOF' >> "$cfgfile"
-
-# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
-
-_LT_PREPARE_MUNGE_PATH_LIST
-_LT_PREPARE_CC_BASENAME
-
-# ### END FUNCTIONS SHARED WITH CONFIGURE
-
-_LT_EOF
-
- case $host_os in
- aix3*)
- cat <<\_LT_EOF >> "$cfgfile"
-# AIX sometimes has problems with the GCC collect2 program. For some
-# reason, if we set the COLLECT_NAMES environment variable, the problems
-# vanish in a puff of smoke.
-if test set != "${COLLECT_NAMES+set}"; then
- COLLECT_NAMES=
- export COLLECT_NAMES
-fi
-_LT_EOF
- ;;
- esac
-
- _LT_PROG_LTMAIN
-
- # We use sed instead of cat because bash on DJGPP gets confused if
- # if finds mixed CR/LF and LF-only lines. Since sed operates in
- # text mode, it properly converts lines to CR/LF. This bash problem
- # is reportedly fixed, but why not run on old versions too?
- $SED '$q' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- mv -f "$cfgfile" "$ofile" ||
- (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
- chmod +x "$ofile"
-],
-[cat <<_LT_EOF >> "$ofile"
-
-dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
-dnl in a comment (ie after a #).
-# ### BEGIN LIBTOOL TAG CONFIG: $1
-_LT_LIBTOOL_TAG_VARS(_LT_TAG)
-# ### END LIBTOOL TAG CONFIG: $1
-_LT_EOF
-])dnl /m4_if
-],
-[m4_if([$1], [], [
- PACKAGE='$PACKAGE'
- VERSION='$VERSION'
- RM='$RM'
- ofile='$ofile'], [])
-])dnl /_LT_CONFIG_SAVE_COMMANDS
-])# _LT_CONFIG
-
-
-# LT_SUPPORTED_TAG(TAG)
-# ---------------------
-# Trace this macro to discover what tags are supported by the libtool
-# --tag option, using:
-# autoconf --trace 'LT_SUPPORTED_TAG:$1'
-AC_DEFUN([LT_SUPPORTED_TAG], [])
-
-
-# C support is built-in for now
-m4_define([_LT_LANG_C_enabled], [])
-m4_define([_LT_TAGS], [])
-
-
-# LT_LANG(LANG)
-# -------------
-# Enable libtool support for the given language if not already enabled.
-AC_DEFUN([LT_LANG],
-[AC_BEFORE([$0], [LT_OUTPUT])dnl
-m4_case([$1],
- [C], [_LT_LANG(C)],
- [C++], [_LT_LANG(CXX)],
- [Go], [_LT_LANG(GO)],
- [Java], [_LT_LANG(GCJ)],
- [Fortran 77], [_LT_LANG(F77)],
- [Fortran], [_LT_LANG(FC)],
- [Windows Resource], [_LT_LANG(RC)],
- [m4_ifdef([_LT_LANG_]$1[_CONFIG],
- [_LT_LANG($1)],
- [m4_fatal([$0: unsupported language: "$1"])])])dnl
-])# LT_LANG
-
-
-# _LT_LANG(LANGNAME)
-# ------------------
-m4_defun([_LT_LANG],
-[m4_ifdef([_LT_LANG_]$1[_enabled], [],
- [LT_SUPPORTED_TAG([$1])dnl
- m4_append([_LT_TAGS], [$1 ])dnl
- m4_define([_LT_LANG_]$1[_enabled], [])dnl
- _LT_LANG_$1_CONFIG($1)])dnl
-])# _LT_LANG
-
-
-m4_ifndef([AC_PROG_GO], [
-# NOTE: This macro has been submitted for inclusion into #
-# GNU Autoconf as AC_PROG_GO. When it is available in #
-# a released version of Autoconf we should remove this #
-# macro and use it instead. #
-m4_defun([AC_PROG_GO],
-[AC_LANG_PUSH(Go)dnl
-AC_ARG_VAR([GOC], [Go compiler command])dnl
-AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
-_AC_ARG_VAR_LDFLAGS()dnl
-AC_CHECK_TOOL(GOC, gccgo)
-if test -z "$GOC"; then
- if test -n "$ac_tool_prefix"; then
- AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
- fi
-fi
-if test -z "$GOC"; then
- AC_CHECK_PROG(GOC, gccgo, gccgo, false)
-fi
-])#m4_defun
-])#m4_ifndef
-
-
-# _LT_LANG_DEFAULT_CONFIG
-# -----------------------
-m4_defun([_LT_LANG_DEFAULT_CONFIG],
-[AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [LT_LANG(CXX)],
- [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
-
-AC_PROVIDE_IFELSE([AC_PROG_F77],
- [LT_LANG(F77)],
- [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
-
-AC_PROVIDE_IFELSE([AC_PROG_FC],
- [LT_LANG(FC)],
- [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
-
-dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
-dnl pulling things in needlessly.
-AC_PROVIDE_IFELSE([AC_PROG_GCJ],
- [LT_LANG(GCJ)],
- [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
- [LT_LANG(GCJ)],
- [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
- [LT_LANG(GCJ)],
- [m4_ifdef([AC_PROG_GCJ],
- [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
- m4_ifdef([A][M_PROG_GCJ],
- [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
- m4_ifdef([LT_PROG_GCJ],
- [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
-
-AC_PROVIDE_IFELSE([AC_PROG_GO],
- [LT_LANG(GO)],
- [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
-
-AC_PROVIDE_IFELSE([LT_PROG_RC],
- [LT_LANG(RC)],
- [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
-])# _LT_LANG_DEFAULT_CONFIG
-
-# Obsolete macros:
-AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
-AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
-AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
-AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
-AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
-dnl AC_DEFUN([AC_LIBTOOL_F77], [])
-dnl AC_DEFUN([AC_LIBTOOL_FC], [])
-dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
-dnl AC_DEFUN([AC_LIBTOOL_RC], [])
-
-
-# _LT_TAG_COMPILER
-# ----------------
-m4_defun([_LT_TAG_COMPILER],
-[AC_REQUIRE([AC_PROG_CC])dnl
-
-_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
-_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
-_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
-_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-])# _LT_TAG_COMPILER
-
-
-# _LT_COMPILER_BOILERPLATE
-# ------------------------
-# Check for compiler boilerplate output or warnings with
-# the simple compiler test code.
-m4_defun([_LT_COMPILER_BOILERPLATE],
-[m4_require([_LT_DECL_SED])dnl
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-])# _LT_COMPILER_BOILERPLATE
-
-
-# _LT_LINKER_BOILERPLATE
-# ----------------------
-# Check for linker boilerplate output or warnings with
-# the simple link test code.
-m4_defun([_LT_LINKER_BOILERPLATE],
-[m4_require([_LT_DECL_SED])dnl
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-])# _LT_LINKER_BOILERPLATE
-
-# _LT_REQUIRED_DARWIN_CHECKS
-# -------------------------
-m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
- case $host_os in
- rhapsody* | darwin*)
- AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
- AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
- AC_CHECK_TOOL([LIPO], [lipo], [:])
- AC_CHECK_TOOL([OTOOL], [otool], [:])
- AC_CHECK_TOOL([OTOOL64], [otool64], [:])
- _LT_DECL([], [DSYMUTIL], [1],
- [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
- _LT_DECL([], [NMEDIT], [1],
- [Tool to change global to local symbols on Mac OS X])
- _LT_DECL([], [LIPO], [1],
- [Tool to manipulate fat objects and archives on Mac OS X])
- _LT_DECL([], [OTOOL], [1],
- [ldd/readelf like tool for Mach-O binaries on Mac OS X])
- _LT_DECL([], [OTOOL64], [1],
- [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
-
- AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
- [lt_cv_apple_cc_single_mod=no
- if test -z "$LT_MULTI_MODULE"; then
- # By default we will add the -single_module flag. You can override
- # by either setting the environment variable LT_MULTI_MODULE
- # non-empty at configure time, or by adding -multi_module to the
- # link flags.
- rm -rf libconftest.dylib*
- echo "int foo(void){return 1;}" > conftest.c
- echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
- $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
- -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
- _lt_result=$?
- # If there is a non-empty error log, and "single_module"
- # appears in it, assume the flag caused a linker warning
- if test -s conftest.err && $GREP single_module conftest.err; then
- cat conftest.err >&AS_MESSAGE_LOG_FD
- # Otherwise, if the output was created with a 0 exit code from
- # the compiler, it worked.
- elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
- lt_cv_apple_cc_single_mod=yes
- else
- cat conftest.err >&AS_MESSAGE_LOG_FD
- fi
- rm -rf libconftest.dylib*
- rm -f conftest.*
- fi])
-
- AC_CACHE_CHECK([for -exported_symbols_list linker flag],
- [lt_cv_ld_exported_symbols_list],
- [lt_cv_ld_exported_symbols_list=no
- save_LDFLAGS=$LDFLAGS
- echo "_main" > conftest.sym
- LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
- AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
- [lt_cv_ld_exported_symbols_list=yes],
- [lt_cv_ld_exported_symbols_list=no])
- LDFLAGS=$save_LDFLAGS
- ])
-
- AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
- [lt_cv_ld_force_load=no
- cat > conftest.c << _LT_EOF
-int forced_loaded() { return 2;}
-_LT_EOF
- echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
- $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
- echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
- $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
- echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
- $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
- cat > conftest.c << _LT_EOF
-int main() { return 0;}
-_LT_EOF
- echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
- $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
- _lt_result=$?
- if test -s conftest.err && $GREP force_load conftest.err; then
- cat conftest.err >&AS_MESSAGE_LOG_FD
- elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
- lt_cv_ld_force_load=yes
- else
- cat conftest.err >&AS_MESSAGE_LOG_FD
- fi
- rm -f conftest.err libconftest.a conftest conftest.c
- rm -rf conftest.dSYM
- ])
- case $host_os in
- rhapsody* | darwin1.[[012]])
- _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
- darwin1.*)
- _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
- darwin*)
- case $MACOSX_DEPLOYMENT_TARGET,$host in
- 10.[[012]],*|,*powerpc*-darwin[[5-8]]*)
- _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
- *)
- _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
- esac
- ;;
- esac
- if test yes = "$lt_cv_apple_cc_single_mod"; then
- _lt_dar_single_mod='$single_module'
- fi
- if test yes = "$lt_cv_ld_exported_symbols_list"; then
- _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
- else
- _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
- fi
- if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
- _lt_dsymutil='~$DSYMUTIL $lib || :'
- else
- _lt_dsymutil=
- fi
- ;;
- esac
-])
-
-
-# _LT_DARWIN_LINKER_FEATURES([TAG])
-# ---------------------------------
-# Checks for linker and compiler features on darwin
-m4_defun([_LT_DARWIN_LINKER_FEATURES],
-[
- m4_require([_LT_REQUIRED_DARWIN_CHECKS])
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_automatic, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
- if test yes = "$lt_cv_ld_force_load"; then
- _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
- m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
- [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
- else
- _LT_TAGVAR(whole_archive_flag_spec, $1)=''
- fi
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
- case $cc_basename in
- ifort*|nagfor*) _lt_dar_can_shared=yes ;;
- *) _lt_dar_can_shared=$GCC ;;
- esac
- if test yes = "$_lt_dar_can_shared"; then
- output_verbose_link_cmd=func_echo_all
- _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
- _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
- _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
- _LT_TAGVAR(module_expsym_cmds, $1)="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
- m4_if([$1], [CXX],
-[ if test yes != "$lt_cv_apple_cc_single_mod"; then
- _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil"
- _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
- fi
-],[])
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
-])
-
-# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
-# ----------------------------------
-# Links a minimal program and checks the executable
-# for the system default hardcoded library path. In most cases,
-# this is /usr/lib:/lib, but when the MPI compilers are used
-# the location of the communication and MPI libs are included too.
-# If we don't find anything, use the default library path according
-# to the aix ld manual.
-# Store the results from the different compilers for each TAGNAME.
-# Allow to override them for all tags through lt_cv_aix_libpath.
-m4_defun([_LT_SYS_MODULE_PATH_AIX],
-[m4_require([_LT_DECL_SED])dnl
-if test set = "${lt_cv_aix_libpath+set}"; then
- aix_libpath=$lt_cv_aix_libpath
-else
- AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
- [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
- lt_aix_libpath_sed='[
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\([^ ]*\) *$/\1/
- p
- }
- }]'
- _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
- # Check for a 64-bit object if we didn't find anything.
- if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
- _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
- fi],[])
- if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
- _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
- fi
- ])
- aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
-fi
-])# _LT_SYS_MODULE_PATH_AIX
-
-
-# _LT_SHELL_INIT(ARG)
-# -------------------
-m4_define([_LT_SHELL_INIT],
-[m4_divert_text([M4SH-INIT], [$1
-])])# _LT_SHELL_INIT
-
-
-
-# _LT_PROG_ECHO_BACKSLASH
-# -----------------------
-# Find how we can fake an echo command that does not interpret backslash.
-# In particular, with Autoconf 2.60 or later we add some code to the start
-# of the generated configure script that will find a shell with a builtin
-# printf (that we can use as an echo command).
-m4_defun([_LT_PROG_ECHO_BACKSLASH],
-[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
-
-AC_MSG_CHECKING([how to print strings])
-# Test print first, because it will be a builtin if present.
-if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
- test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
- ECHO='print -r --'
-elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
- ECHO='printf %s\n'
-else
- # Use this function as a fallback that always works.
- func_fallback_echo ()
- {
- eval 'cat <<_LTECHO_EOF
-$[]1
-_LTECHO_EOF'
- }
- ECHO='func_fallback_echo'
-fi
-
-# func_echo_all arg...
-# Invoke $ECHO with all args, space-separated.
-func_echo_all ()
-{
- $ECHO "$*"
-}
-
-case $ECHO in
- printf*) AC_MSG_RESULT([printf]) ;;
- print*) AC_MSG_RESULT([print -r]) ;;
- *) AC_MSG_RESULT([cat]) ;;
-esac
-
-m4_ifdef([_AS_DETECT_SUGGESTED],
-[_AS_DETECT_SUGGESTED([
- test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
- ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
- ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
- ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
- PATH=/empty FPATH=/empty; export PATH FPATH
- test "X`printf %s $ECHO`" = "X$ECHO" \
- || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
-
-_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
-_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
-])# _LT_PROG_ECHO_BACKSLASH
-
-
-# _LT_WITH_SYSROOT
-# ----------------
-AC_DEFUN([_LT_WITH_SYSROOT],
-[m4_require([_LT_DECL_SED])dnl
-AC_MSG_CHECKING([for sysroot])
-AC_ARG_WITH([sysroot],
-[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
- [Search for dependent libraries within DIR (or the compiler's sysroot
- if not specified).])],
-[], [with_sysroot=no])
-
-dnl lt_sysroot will always be passed unquoted. We quote it here
-dnl in case the user passed a directory name.
-lt_sysroot=
-case $with_sysroot in #(
- yes)
- if test yes = "$GCC"; then
- lt_sysroot=`$CC --print-sysroot 2>/dev/null`
- fi
- ;; #(
- /*)
- lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`
- ;; #(
- no|'')
- ;; #(
- *)
- AC_MSG_RESULT([$with_sysroot])
- AC_MSG_ERROR([The sysroot must be an absolute path.])
- ;;
-esac
-
- AC_MSG_RESULT([${lt_sysroot:-no}])
-_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
-[dependent libraries, and where our libraries should be installed.])])
-
-# _LT_ENABLE_LOCK
-# ---------------
-m4_defun([_LT_ENABLE_LOCK],
-[AC_ARG_ENABLE([libtool-lock],
- [AS_HELP_STRING([--disable-libtool-lock],
- [avoid locking (might break parallel builds)])])
-test no = "$enable_libtool_lock" || enable_libtool_lock=yes
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-ia64-*-hpux*)
- # Find out what ABI is being produced by ac_compile, and set mode
- # options accordingly.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case `$FILECMD conftest.$ac_objext` in
- *ELF-32*)
- HPUX_IA64_MODE=32
- ;;
- *ELF-64*)
- HPUX_IA64_MODE=64
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-*-*-irix6*)
- # Find out what ABI is being produced by ac_compile, and set linker
- # options accordingly.
- echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- if test yes = "$lt_cv_prog_gnu_ld"; then
- case `$FILECMD conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -melf32bsmip"
- ;;
- *N32*)
- LD="${LD-ld} -melf32bmipn32"
- ;;
- *64-bit*)
- LD="${LD-ld} -melf64bmip"
- ;;
- esac
- else
- case `$FILECMD conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -32"
- ;;
- *N32*)
- LD="${LD-ld} -n32"
- ;;
- *64-bit*)
- LD="${LD-ld} -64"
- ;;
- esac
- fi
- fi
- rm -rf conftest*
- ;;
-
-mips64*-*linux*)
- # Find out what ABI is being produced by ac_compile, and set linker
- # options accordingly.
- echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- emul=elf
- case `$FILECMD conftest.$ac_objext` in
- *32-bit*)
- emul="${emul}32"
- ;;
- *64-bit*)
- emul="${emul}64"
- ;;
- esac
- case `$FILECMD conftest.$ac_objext` in
- *MSB*)
- emul="${emul}btsmip"
- ;;
- *LSB*)
- emul="${emul}ltsmip"
- ;;
- esac
- case `$FILECMD conftest.$ac_objext` in
- *N32*)
- emul="${emul}n32"
- ;;
- esac
- LD="${LD-ld} -m $emul"
- fi
- rm -rf conftest*
- ;;
-
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
- # Find out what ABI is being produced by ac_compile, and set linker
- # options accordingly. Note that the listed cases only cover the
- # situations where additional linker options are needed (such as when
- # doing 32-bit compilation for a host where ld defaults to 64-bit, or
- # vice versa); the common cases where no linker options are needed do
- # not appear in the list.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case `$FILECMD conftest.o` in
- *32-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_i386_fbsd"
- ;;
- x86_64-*linux*)
- case `$FILECMD conftest.o` in
- *x86-64*)
- LD="${LD-ld} -m elf32_x86_64"
- ;;
- *)
- LD="${LD-ld} -m elf_i386"
- ;;
- esac
- ;;
- powerpc64le-*linux*)
- LD="${LD-ld} -m elf32lppclinux"
- ;;
- powerpc64-*linux*)
- LD="${LD-ld} -m elf32ppclinux"
- ;;
- s390x-*linux*)
- LD="${LD-ld} -m elf_s390"
- ;;
- sparc64-*linux*)
- LD="${LD-ld} -m elf32_sparc"
- ;;
- esac
- ;;
- *64-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_x86_64_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_x86_64"
- ;;
- powerpcle-*linux*)
- LD="${LD-ld} -m elf64lppc"
- ;;
- powerpc-*linux*)
- LD="${LD-ld} -m elf64ppc"
- ;;
- s390*-*linux*|s390*-*tpf*)
- LD="${LD-ld} -m elf64_s390"
- ;;
- sparc*-*linux*)
- LD="${LD-ld} -m elf64_sparc"
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-
-*-*-sco3.2v5*)
- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
- SAVE_CFLAGS=$CFLAGS
- CFLAGS="$CFLAGS -belf"
- AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
- [AC_LANG_PUSH(C)
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
- AC_LANG_POP])
- if test yes != "$lt_cv_cc_needs_belf"; then
- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
- CFLAGS=$SAVE_CFLAGS
- fi
- ;;
-*-*solaris*)
- # Find out what ABI is being produced by ac_compile, and set linker
- # options accordingly.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case `$FILECMD conftest.o` in
- *64-bit*)
- case $lt_cv_prog_gnu_ld in
- yes*)
- case $host in
- i?86-*-solaris*|x86_64-*-solaris*)
- LD="${LD-ld} -m elf_x86_64"
- ;;
- sparc*-*-solaris*)
- LD="${LD-ld} -m elf64_sparc"
- ;;
- esac
- # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
- if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
- LD=${LD-ld}_sol2
- fi
- ;;
- *)
- if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
- LD="${LD-ld} -64"
- fi
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-esac
-
-need_locks=$enable_libtool_lock
-])# _LT_ENABLE_LOCK
-
-
-# _LT_PROG_AR
-# -----------
-m4_defun([_LT_PROG_AR],
-[AC_CHECK_TOOLS(AR, [ar], false)
-: ${AR=ar}
-_LT_DECL([], [AR], [1], [The archiver])
-
-# Use ARFLAGS variable as AR's operation code to sync the variable naming with
-# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have
-# higher priority because thats what people were doing historically (setting
-# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS
-# variable obsoleted/removed.
-
-test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr}
-lt_ar_flags=$AR_FLAGS
-_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)])
-
-# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override
-# by AR_FLAGS because that was never working and AR_FLAGS is about to die.
-_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}],
- [Flags to create an archive])
-
-AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
- [lt_cv_ar_at_file=no
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
- [echo conftest.$ac_objext > conftest.lst
- lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
- AC_TRY_EVAL([lt_ar_try])
- if test 0 -eq "$ac_status"; then
- # Ensure the archiver fails upon bogus file names.
- rm -f conftest.$ac_objext libconftest.a
- AC_TRY_EVAL([lt_ar_try])
- if test 0 -ne "$ac_status"; then
- lt_cv_ar_at_file=@
- fi
- fi
- rm -f conftest.* libconftest.a
- ])
- ])
-
-if test no = "$lt_cv_ar_at_file"; then
- archiver_list_spec=
-else
- archiver_list_spec=$lt_cv_ar_at_file
-fi
-_LT_DECL([], [archiver_list_spec], [1],
- [How to feed a file listing to the archiver])
-])# _LT_PROG_AR
-
-
-# _LT_CMD_OLD_ARCHIVE
-# -------------------
-m4_defun([_LT_CMD_OLD_ARCHIVE],
-[_LT_PROG_AR
-
-AC_CHECK_TOOL(STRIP, strip, :)
-test -z "$STRIP" && STRIP=:
-_LT_DECL([], [STRIP], [1], [A symbol stripping program])
-
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-test -z "$RANLIB" && RANLIB=:
-_LT_DECL([], [RANLIB], [1],
- [Commands used to install an old-style archive])
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
- case $host_os in
- bitrig* | openbsd*)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
- ;;
- *)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
- ;;
- esac
- old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
-fi
-
-case $host_os in
- darwin*)
- lock_old_archive_extraction=yes ;;
- *)
- lock_old_archive_extraction=no ;;
-esac
-_LT_DECL([], [old_postinstall_cmds], [2])
-_LT_DECL([], [old_postuninstall_cmds], [2])
-_LT_TAGDECL([], [old_archive_cmds], [2],
- [Commands used to build an old-style archive])
-_LT_DECL([], [lock_old_archive_extraction], [0],
- [Whether to use a lock for old archive extraction])
-])# _LT_CMD_OLD_ARCHIVE
-
-
-# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
-# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
-# ----------------------------------------------------------------
-# Check whether the given compiler option works
-AC_DEFUN([_LT_COMPILER_OPTION],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
- [$2=no
- m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&AS_MESSAGE_LOG_FD
- echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- $2=yes
- fi
- fi
- $RM conftest*
-])
-
-if test yes = "[$]$2"; then
- m4_if([$5], , :, [$5])
-else
- m4_if([$6], , :, [$6])
-fi
-])# _LT_COMPILER_OPTION
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
-
-
-# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
-# [ACTION-SUCCESS], [ACTION-FAILURE])
-# ----------------------------------------------------
-# Check whether the given linker option works
-AC_DEFUN([_LT_LINKER_OPTION],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
- [$2=no
- save_LDFLAGS=$LDFLAGS
- LDFLAGS="$LDFLAGS $3"
- echo "$lt_simple_link_test_code" > conftest.$ac_ext
- if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The linker can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- # Append any errors to the config.log.
- cat conftest.err 1>&AS_MESSAGE_LOG_FD
- $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if diff conftest.exp conftest.er2 >/dev/null; then
- $2=yes
- fi
- else
- $2=yes
- fi
- fi
- $RM -r conftest*
- LDFLAGS=$save_LDFLAGS
-])
-
-if test yes = "[$]$2"; then
- m4_if([$4], , :, [$4])
-else
- m4_if([$5], , :, [$5])
-fi
-])# _LT_LINKER_OPTION
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
-
-
-# LT_CMD_MAX_LEN
-#---------------
-AC_DEFUN([LT_CMD_MAX_LEN],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-# find the maximum length of command line arguments
-AC_MSG_CHECKING([the maximum length of command line arguments])
-AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
- i=0
- teststring=ABCD
-
- case $build_os in
- msdosdjgpp*)
- # On DJGPP, this test can blow up pretty badly due to problems in libc
- # (any single argument exceeding 2000 bytes causes a buffer overrun
- # during glob expansion). Even if it were fixed, the result of this
- # check would be larger than it should be.
- lt_cv_sys_max_cmd_len=12288; # 12K is about right
- ;;
-
- gnu*)
- # Under GNU Hurd, this test is not required because there is
- # no limit to the length of command line arguments.
- # Libtool will interpret -1 as no limit whatsoever
- lt_cv_sys_max_cmd_len=-1;
- ;;
-
- cygwin* | mingw* | cegcc*)
- # On Win9x/ME, this test blows up -- it succeeds, but takes
- # about 5 minutes as the teststring grows exponentially.
- # Worse, since 9x/ME are not pre-emptively multitasking,
- # you end up with a "frozen" computer, even though with patience
- # the test eventually succeeds (with a max line length of 256k).
- # Instead, let's just punt: use the minimum linelength reported by
- # all of the supported platforms: 8192 (on NT/2K/XP).
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- mint*)
- # On MiNT this can take a long time and run out of memory.
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- amigaos*)
- # On AmigaOS with pdksh, this test takes hours, literally.
- # So we just punt and use a minimum line length of 8192.
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)
- # This has been around since 386BSD, at least. Likely further.
- if test -x /sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
- elif test -x /usr/sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
- else
- lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
- fi
- # And add a safety zone
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- ;;
-
- interix*)
- # We know the value 262144 and hardcode it with a safety zone (like BSD)
- lt_cv_sys_max_cmd_len=196608
- ;;
-
- os2*)
- # The test takes a long time on OS/2.
- lt_cv_sys_max_cmd_len=8192
- ;;
-
- osf*)
- # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
- # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
- # nice to cause kernel panics so lets avoid the loop below.
- # First set a reasonable default.
- lt_cv_sys_max_cmd_len=16384
- #
- if test -x /sbin/sysconfig; then
- case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
- *1*) lt_cv_sys_max_cmd_len=-1 ;;
- esac
- fi
- ;;
- sco3.2v5*)
- lt_cv_sys_max_cmd_len=102400
- ;;
- sysv5* | sco5v6* | sysv4.2uw2*)
- kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
- if test -n "$kargmax"; then
- lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[ ]]//'`
- else
- lt_cv_sys_max_cmd_len=32768
- fi
- ;;
- *)
- lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
- if test -n "$lt_cv_sys_max_cmd_len" && \
- test undefined != "$lt_cv_sys_max_cmd_len"; then
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- else
- # Make teststring a little bigger before we do anything with it.
- # a 1K string should be a reasonable start.
- for i in 1 2 3 4 5 6 7 8; do
- teststring=$teststring$teststring
- done
- SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
- # If test is not a shell built-in, we'll probably end up computing a
- # maximum length that is only half of the actual maximum length, but
- # we can't tell.
- while { test X`env echo "$teststring$teststring" 2>/dev/null` \
- = "X$teststring$teststring"; } >/dev/null 2>&1 &&
- test 17 != "$i" # 1/2 MB should be enough
- do
- i=`expr $i + 1`
- teststring=$teststring$teststring
- done
- # Only check the string length outside the loop.
- lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
- teststring=
- # Add a significant safety factor because C++ compilers can tack on
- # massive amounts of additional arguments before passing them to the
- # linker. It appears as though 1/2 is a usable value.
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
- fi
- ;;
- esac
-])
-if test -n "$lt_cv_sys_max_cmd_len"; then
- AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
-else
- AC_MSG_RESULT(none)
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-_LT_DECL([], [max_cmd_len], [0],
- [What is the maximum length of a command?])
-])# LT_CMD_MAX_LEN
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
-
-
-# _LT_HEADER_DLFCN
-# ----------------
-m4_defun([_LT_HEADER_DLFCN],
-[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
-])# _LT_HEADER_DLFCN
-
-
-# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
-# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
-# ----------------------------------------------------------------
-m4_defun([_LT_TRY_DLOPEN_SELF],
-[m4_require([_LT_HEADER_DLFCN])dnl
-if test yes = "$cross_compiling"; then :
- [$4]
-else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
-[#line $LINENO "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LT_DLGLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LT_DLGLOBAL DL_GLOBAL
-# else
-# define LT_DLGLOBAL 0
-# endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LT_DLLAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LT_DLLAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LT_DLLAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LT_DLLAZY_OR_NOW DL_NOW
-# else
-# define LT_DLLAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-/* When -fvisibility=hidden is used, assume the code has been annotated
- correspondingly for the symbols needed. */
-#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
-int fnord () __attribute__((visibility("default")));
-#endif
-
-int fnord () { return 42; }
-int main ()
-{
- void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
- int status = $lt_dlunknown;
-
- if (self)
- {
- if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
- else
- {
- if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
- else puts (dlerror ());
- }
- /* dlclose (self); */
- }
- else
- puts (dlerror ());
-
- return status;
-}]
-_LT_EOF
- if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
- (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
- lt_status=$?
- case x$lt_status in
- x$lt_dlno_uscore) $1 ;;
- x$lt_dlneed_uscore) $2 ;;
- x$lt_dlunknown|x*) $3 ;;
- esac
- else :
- # compilation failed
- $3
- fi
-fi
-rm -fr conftest*
-])# _LT_TRY_DLOPEN_SELF
-
-
-# LT_SYS_DLOPEN_SELF
-# ------------------
-AC_DEFUN([LT_SYS_DLOPEN_SELF],
-[m4_require([_LT_HEADER_DLFCN])dnl
-if test yes != "$enable_dlopen"; then
- enable_dlopen=unknown
- enable_dlopen_self=unknown
- enable_dlopen_self_static=unknown
-else
- lt_cv_dlopen=no
- lt_cv_dlopen_libs=
-
- case $host_os in
- beos*)
- lt_cv_dlopen=load_add_on
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ;;
-
- mingw* | pw32* | cegcc*)
- lt_cv_dlopen=LoadLibrary
- lt_cv_dlopen_libs=
- ;;
-
- cygwin*)
- lt_cv_dlopen=dlopen
- lt_cv_dlopen_libs=
- ;;
-
- darwin*)
- # if libdl is installed we need to link against it
- AC_CHECK_LIB([dl], [dlopen],
- [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
- lt_cv_dlopen=dyld
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ])
- ;;
-
- tpf*)
- # Don't try to run any link tests for TPF. We know it's impossible
- # because TPF is a cross-compiler, and we know how we open DSOs.
- lt_cv_dlopen=dlopen
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=no
- ;;
-
- *)
- AC_CHECK_FUNC([shl_load],
- [lt_cv_dlopen=shl_load],
- [AC_CHECK_LIB([dld], [shl_load],
- [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
- [AC_CHECK_FUNC([dlopen],
- [lt_cv_dlopen=dlopen],
- [AC_CHECK_LIB([dl], [dlopen],
- [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
- [AC_CHECK_LIB([svld], [dlopen],
- [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
- [AC_CHECK_LIB([dld], [dld_link],
- [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
- ])
- ])
- ])
- ])
- ])
- ;;
- esac
-
- if test no = "$lt_cv_dlopen"; then
- enable_dlopen=no
- else
- enable_dlopen=yes
- fi
-
- case $lt_cv_dlopen in
- dlopen)
- save_CPPFLAGS=$CPPFLAGS
- test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
- save_LDFLAGS=$LDFLAGS
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
- save_LIBS=$LIBS
- LIBS="$lt_cv_dlopen_libs $LIBS"
-
- AC_CACHE_CHECK([whether a program can dlopen itself],
- lt_cv_dlopen_self, [dnl
- _LT_TRY_DLOPEN_SELF(
- lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
- lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
- ])
-
- if test yes = "$lt_cv_dlopen_self"; then
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
- AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
- lt_cv_dlopen_self_static, [dnl
- _LT_TRY_DLOPEN_SELF(
- lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
- lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
- ])
- fi
-
- CPPFLAGS=$save_CPPFLAGS
- LDFLAGS=$save_LDFLAGS
- LIBS=$save_LIBS
- ;;
- esac
-
- case $lt_cv_dlopen_self in
- yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
- *) enable_dlopen_self=unknown ;;
- esac
-
- case $lt_cv_dlopen_self_static in
- yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
- *) enable_dlopen_self_static=unknown ;;
- esac
-fi
-_LT_DECL([dlopen_support], [enable_dlopen], [0],
- [Whether dlopen is supported])
-_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
- [Whether dlopen of programs is supported])
-_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
- [Whether dlopen of statically linked programs is supported])
-])# LT_SYS_DLOPEN_SELF
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
-
-
-# _LT_COMPILER_C_O([TAGNAME])
-# ---------------------------
-# Check to see if options -c and -o are simultaneously supported by compiler.
-# This macro does not hard code the compiler like AC_PROG_CC_C_O.
-m4_defun([_LT_COMPILER_C_O],
-[m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
- [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
- [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&AS_MESSAGE_LOG_FD
- echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
- fi
- fi
- chmod u+w . 2>&AS_MESSAGE_LOG_FD
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-])
-_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
- [Does compiler simultaneously support -c and -o options?])
-])# _LT_COMPILER_C_O
-
-
-# _LT_COMPILER_FILE_LOCKS([TAGNAME])
-# ----------------------------------
-# Check to see if we can do hard links to lock some files if needed
-m4_defun([_LT_COMPILER_FILE_LOCKS],
-[m4_require([_LT_ENABLE_LOCK])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-_LT_COMPILER_C_O([$1])
-
-hard_links=nottested
-if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
- # do not overwrite the value of need_locks provided by the user
- AC_MSG_CHECKING([if we can lock with hard links])
- hard_links=yes
- $RM conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- AC_MSG_RESULT([$hard_links])
- if test no = "$hard_links"; then
- AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
-])# _LT_COMPILER_FILE_LOCKS
-
-
-# _LT_CHECK_OBJDIR
-# ----------------
-m4_defun([_LT_CHECK_OBJDIR],
-[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
-[rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
- lt_cv_objdir=.libs
-else
- # MS-DOS does not allow filenames that begin with a dot.
- lt_cv_objdir=_libs
-fi
-rmdir .libs 2>/dev/null])
-objdir=$lt_cv_objdir
-_LT_DECL([], [objdir], [0],
- [The name of the directory that contains temporary libtool files])dnl
-m4_pattern_allow([LT_OBJDIR])dnl
-AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
- [Define to the sub-directory where libtool stores uninstalled libraries.])
-])# _LT_CHECK_OBJDIR
-
-
-# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
-# --------------------------------------
-# Check hardcoding attributes.
-m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
-[AC_MSG_CHECKING([how to hardcode library paths into programs])
-_LT_TAGVAR(hardcode_action, $1)=
-if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
- test -n "$_LT_TAGVAR(runpath_var, $1)" ||
- test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
-
- # We can hardcode non-existent directories.
- if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
- test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
- # Linking always hardcodes the temporary library directory.
- _LT_TAGVAR(hardcode_action, $1)=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- _LT_TAGVAR(hardcode_action, $1)=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- _LT_TAGVAR(hardcode_action, $1)=unsupported
-fi
-AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
-
-if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
- test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test yes = "$shlibpath_overrides_runpath" ||
- test no = "$enable_shared"; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-_LT_TAGDECL([], [hardcode_action], [0],
- [How to hardcode a shared library path into an executable])
-])# _LT_LINKER_HARDCODE_LIBPATH
-
-
-# _LT_CMD_STRIPLIB
-# ----------------
-m4_defun([_LT_CMD_STRIPLIB],
-[m4_require([_LT_DECL_EGREP])
-striplib=
-old_striplib=
-AC_MSG_CHECKING([whether stripping libraries is possible])
-if test -z "$STRIP"; then
- AC_MSG_RESULT([no])
-else
- if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
- old_striplib="$STRIP --strip-debug"
- striplib="$STRIP --strip-unneeded"
- AC_MSG_RESULT([yes])
- else
- case $host_os in
- darwin*)
- # FIXME - insert some real tests, host_os isn't really good enough
- striplib="$STRIP -x"
- old_striplib="$STRIP -S"
- AC_MSG_RESULT([yes])
- ;;
- freebsd*)
- if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then
- old_striplib="$STRIP --strip-debug"
- striplib="$STRIP --strip-unneeded"
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
- ;;
- *)
- AC_MSG_RESULT([no])
- ;;
- esac
- fi
-fi
-_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
-_LT_DECL([], [striplib], [1])
-])# _LT_CMD_STRIPLIB
-
-
-# _LT_PREPARE_MUNGE_PATH_LIST
-# ---------------------------
-# Make sure func_munge_path_list() is defined correctly.
-m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
-[[# func_munge_path_list VARIABLE PATH
-# -----------------------------------
-# VARIABLE is name of variable containing _space_ separated list of
-# directories to be munged by the contents of PATH, which is string
-# having a format:
-# "DIR[:DIR]:"
-# string "DIR[ DIR]" will be prepended to VARIABLE
-# ":DIR[:DIR]"
-# string "DIR[ DIR]" will be appended to VARIABLE
-# "DIRP[:DIRP]::[DIRA:]DIRA"
-# string "DIRP[ DIRP]" will be prepended to VARIABLE and string
-# "DIRA[ DIRA]" will be appended to VARIABLE
-# "DIR[:DIR]"
-# VARIABLE will be replaced by "DIR[ DIR]"
-func_munge_path_list ()
-{
- case x@S|@2 in
- x)
- ;;
- *:)
- eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
- ;;
- x:*)
- eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
- ;;
- *::*)
- eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
- eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
- ;;
- *)
- eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
- ;;
- esac
-}
-]])# _LT_PREPARE_PATH_LIST
-
-
-# _LT_SYS_DYNAMIC_LINKER([TAG])
-# -----------------------------
-# PORTME Fill in your ld.so characteristics
-m4_defun([_LT_SYS_DYNAMIC_LINKER],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_OBJDUMP])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_CHECK_SHELL_FEATURES])dnl
-m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
-AC_MSG_CHECKING([dynamic linker characteristics])
-m4_if([$1],
- [], [
-if test yes = "$GCC"; then
- case $host_os in
- darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
- *) lt_awk_arg='/^libraries:/' ;;
- esac
- case $host_os in
- mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
- *) lt_sed_strip_eq='s|=/|/|g' ;;
- esac
- lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
- case $lt_search_path_spec in
- *\;*)
- # if the path contains ";" then we assume it to be the separator
- # otherwise default to the standard path separator (i.e. ":") - it is
- # assumed that no part of a normal pathname contains ";" but that should
- # okay in the real world where ";" in dirpaths is itself problematic.
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
- ;;
- *)
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
- ;;
- esac
- # Ok, now we have the path, separated by spaces, we can step through it
- # and add multilib dir if necessary...
- lt_tmp_lt_search_path_spec=
- lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
- # ...but if some path component already ends with the multilib dir we assume
- # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
- case "$lt_multi_os_dir; $lt_search_path_spec " in
- "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
- lt_multi_os_dir=
- ;;
- esac
- for lt_sys_path in $lt_search_path_spec; do
- if test -d "$lt_sys_path$lt_multi_os_dir"; then
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
- elif test -n "$lt_multi_os_dir"; then
- test -d "$lt_sys_path" && \
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
- fi
- done
- lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
-BEGIN {RS = " "; FS = "/|\n";} {
- lt_foo = "";
- lt_count = 0;
- for (lt_i = NF; lt_i > 0; lt_i--) {
- if ($lt_i != "" && $lt_i != ".") {
- if ($lt_i == "..") {
- lt_count++;
- } else {
- if (lt_count == 0) {
- lt_foo = "/" $lt_i lt_foo;
- } else {
- lt_count--;
- }
- }
- }
- }
- if (lt_foo != "") { lt_freq[[lt_foo]]++; }
- if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
-}'`
- # AWK program above erroneously prepends '/' to C:/dos/paths
- # for these hosts.
- case $host_os in
- mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
- $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
- esac
- sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
-else
- sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi])
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=.so
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
-[User-defined run-time library search path.])
-
-case $host_os in
-aix3*)
- version_type=linux # correct to gnu/linux during the next big refactor
- library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX 3 has no versioning support, so we append a major version to the name.
- soname_spec='$libname$release$shared_ext$major'
- ;;
-
-aix[[4-9]]*)
- version_type=linux # correct to gnu/linux during the next big refactor
- need_lib_prefix=no
- need_version=no
- hardcode_into_libs=yes
- if test ia64 = "$host_cpu"; then
- # AIX 5 supports IA64
- library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
- shlibpath_var=LD_LIBRARY_PATH
- else
- # With GCC up to 2.95.x, collect2 would create an import file
- # for dependence libraries. The import file would start with
- # the line '#! .'. This would cause the generated library to
- # depend on '.', always an invalid library. This was fixed in
- # development snapshots of GCC prior to 3.0.
- case $host_os in
- aix4 | aix4.[[01]] | aix4.[[01]].*)
- if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
- echo ' yes '
- echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
- :
- else
- can_build_shared=no
- fi
- ;;
- esac
- # Using Import Files as archive members, it is possible to support
- # filename-based versioning of shared library archives on AIX. While
- # this would work for both with and without runtime linking, it will
- # prevent static linking of such archives. So we do filename-based
- # shared library versioning with .so extension only, which is used
- # when both runtime linking and shared linking is enabled.
- # Unfortunately, runtime linking may impact performance, so we do
- # not want this to be the default eventually. Also, we use the
- # versioned .so libs for executables only if there is the -brtl
- # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
- # To allow for filename-based versioning support, we need to create
- # libNAME.so.V as an archive file, containing:
- # *) an Import File, referring to the versioned filename of the
- # archive as well as the shared archive member, telling the
- # bitwidth (32 or 64) of that shared object, and providing the
- # list of exported symbols of that shared object, eventually
- # decorated with the 'weak' keyword
- # *) the shared object with the F_LOADONLY flag set, to really avoid
- # it being seen by the linker.
- # At run time we better use the real file rather than another symlink,
- # but for link time we create the symlink libNAME.so -> libNAME.so.V
-
- case $with_aix_soname,$aix_use_runtimelinking in
- # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
- # soname into executable. Probably we can add versioning support to
- # collect2, so additional links can be useful in future.
- aix,yes) # traditional libtool
- dynamic_linker='AIX unversionable lib.so'
- # If using run time linking (on AIX 4.2 or later) use lib<name>.so
- # instead of lib<name>.a to let people know that these are not
- # typical AIX shared libraries.
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- ;;
- aix,no) # traditional AIX only
- dynamic_linker='AIX lib.a[(]lib.so.V[)]'
- # We preserve .a as extension for shared libraries through AIX4.2
- # and later when we are not doing run time linking.
- library_names_spec='$libname$release.a $libname.a'
- soname_spec='$libname$release$shared_ext$major'
- ;;
- svr4,*) # full svr4 only
- dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
- library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
- # We do not specify a path in Import Files, so LIBPATH fires.
- shlibpath_overrides_runpath=yes
- ;;
- *,yes) # both, prefer svr4
- dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
- library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
- # unpreferred sharedlib libNAME.a needs extra handling
- postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
- postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
- # We do not specify a path in Import Files, so LIBPATH fires.
- shlibpath_overrides_runpath=yes
- ;;
- *,no) # both, prefer aix
- dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
- library_names_spec='$libname$release.a $libname.a'
- soname_spec='$libname$release$shared_ext$major'
- # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
- postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
- postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
- ;;
- esac
- shlibpath_var=LIBPATH
- fi
- ;;
-
-amigaos*)
- case $host_cpu in
- powerpc)
- # Since July 2007 AmigaOS4 officially supports .so libraries.
- # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- ;;
- m68k)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
- ;;
- esac
- ;;
-
-beos*)
- library_names_spec='$libname$shared_ext'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- ;;
-
-bsdi[[45]]*)
- version_type=linux # correct to gnu/linux during the next big refactor
- need_version=no
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
- version_type=windows
- shrext_cmds=.dll
- need_version=no
- need_lib_prefix=no
-
- case $GCC,$cc_basename in
- yes,*)
- # gcc
- library_names_spec='$libname.dll.a'
- # DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \$file`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname~
- chmod a+x \$dldir/$dlname~
- if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
- eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
- fi'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- shlibpath_overrides_runpath=yes
-
- case $host_os in
- cygwin*)
- # Cygwin DLLs use 'cyg' prefix rather than 'lib'
- soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
-m4_if([$1], [],[
- sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
- ;;
- mingw* | cegcc*)
- # MinGW DLLs use traditional 'lib' prefix
- soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
- ;;
- pw32*)
- # pw32 DLLs use 'pw' prefix rather than 'lib'
- library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
- ;;
- esac
- dynamic_linker='Win32 ld.exe'
- ;;
-
- *,cl* | *,icl*)
- # Native MSVC or ICC
- libname_spec='$name'
- soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
- library_names_spec='$libname.dll.lib'
-
- case $build_os in
- mingw*)
- sys_lib_search_path_spec=
- lt_save_ifs=$IFS
- IFS=';'
- for lt_path in $LIB
- do
- IFS=$lt_save_ifs
- # Let DOS variable expansion print the short 8.3 style file name.
- lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
- sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
- done
- IFS=$lt_save_ifs
- # Convert to MSYS style.
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
- ;;
- cygwin*)
- # Convert to unix form, then to dos form, then back to unix form
- # but this time dos style (no spaces!) so that the unix form looks
- # like /cygdrive/c/PROGRA~1:/cygdr...
- sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
- sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
- sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- ;;
- *)
- sys_lib_search_path_spec=$LIB
- if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
- # It is most probably a Windows format PATH.
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
- else
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- # FIXME: find the short name or the path components, as spaces are
- # common. (e.g. "Program Files" -> "PROGRA~1")
- ;;
- esac
-
- # DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \$file`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- shlibpath_overrides_runpath=yes
- dynamic_linker='Win32 link.exe'
- ;;
-
- *)
- # Assume MSVC and ICC wrapper
- library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
- dynamic_linker='Win32 ld.exe'
- ;;
- esac
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- ;;
-
-darwin* | rhapsody*)
- dynamic_linker="$host_os dyld"
- version_type=darwin
- need_lib_prefix=no
- need_version=no
- library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
- soname_spec='$libname$release$major$shared_ext'
- shlibpath_overrides_runpath=yes
- shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-m4_if([$1], [],[
- sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
- sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
- ;;
-
-dgux*)
- version_type=linux # correct to gnu/linux during the next big refactor
- need_lib_prefix=no
- need_version=no
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-freebsd* | dragonfly* | midnightbsd*)
- # DragonFly does not have aout. When/if they implement a new
- # versioning mechanism, adjust this.
- if test -x /usr/bin/objformat; then
- objformat=`/usr/bin/objformat`
- else
- case $host_os in
- freebsd[[23]].*) objformat=aout ;;
- *) objformat=elf ;;
- esac
- fi
- version_type=freebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
- need_version=yes
- ;;
- esac
- shlibpath_var=LD_LIBRARY_PATH
- case $host_os in
- freebsd2.*)
- shlibpath_overrides_runpath=yes
- ;;
- freebsd3.[[01]]* | freebsdelf3.[[01]]*)
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
- freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
- *) # from 4.6 on, and DragonFly
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- esac
- ;;
-
-haiku*)
- version_type=linux # correct to gnu/linux during the next big refactor
- need_lib_prefix=no
- need_version=no
- dynamic_linker="$host_os runtime_loader"
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- shlibpath_var=LIBRARY_PATH
- shlibpath_overrides_runpath=no
- sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
- hardcode_into_libs=yes
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- case $host_cpu in
- ia64*)
- shrext_cmds='.so'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.so"
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- if test 32 = "$HPUX_IA64_MODE"; then
- sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
- sys_lib_dlsearch_path_spec=/usr/lib/hpux32
- else
- sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
- sys_lib_dlsearch_path_spec=/usr/lib/hpux64
- fi
- ;;
- hppa*64*)
- shrext_cmds='.sl'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- *)
- shrext_cmds='.sl'
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- ;;
- esac
- # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
- postinstall_cmds='chmod 555 $lib'
- # or fails outright, so override atomically:
- install_override_mode=555
- ;;
-
-interix[[3-9]]*)
- version_type=linux # correct to gnu/linux during the next big refactor
- need_lib_prefix=no
- need_version=no
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $host_os in
- nonstopux*) version_type=nonstopux ;;
- *)
- if test yes = "$lt_cv_prog_gnu_ld"; then
- version_type=linux # correct to gnu/linux during the next big refactor
- else
- version_type=irix
- fi ;;
- esac
- need_lib_prefix=no
- need_version=no
- soname_spec='$libname$release$shared_ext$major'
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
- case $host_os in
- irix5* | nonstopux*)
- libsuff= shlibsuff=
- ;;
- *)
- case $LD in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
- libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
- libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
- libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
- sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
- hardcode_into_libs=yes
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
- dynamic_linker=no
- ;;
-
-linux*android*)
- version_type=none # Android doesn't support versioned libraries.
- need_lib_prefix=no
- need_version=no
- library_names_spec='$libname$release$shared_ext'
- soname_spec='$libname$release$shared_ext'
- finish_cmds=
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
-
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- dynamic_linker='Android linker'
- # Don't embed -rpath directories since the linker doesn't support them.
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- ;;
-
-# This must be glibc/ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
- version_type=linux # correct to gnu/linux during the next big refactor
- need_lib_prefix=no
- need_version=no
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
-
- # Some binutils ld are patched to set DT_RUNPATH
- AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
- [lt_cv_shlibpath_overrides_runpath=no
- save_LDFLAGS=$LDFLAGS
- save_libdir=$libdir
- eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
- LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
- AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
- [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
- [lt_cv_shlibpath_overrides_runpath=yes])])
- LDFLAGS=$save_LDFLAGS
- libdir=$save_libdir
- ])
- shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
-
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- # Add ABI-specific directories to the system library path.
- sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
-
- # Ideally, we could use ldconfig to report *all* directores which are
- # searched for libraries, however this is still not possible. Aside from not
- # being certain /sbin/ldconfig is available, command
- # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
- # even though it is searched at run-time. Try to do the best guess by
- # appending ld.so.conf contents (and includes) to the search path.
- if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
- fi
-
- # We used to test for /lib/ld.so.1 and disable shared libraries on
- # powerpc, because MkLinux only supported shared libraries with the
- # GNU dynamic linker. Since this was broken with cross compilers,
- # most powerpc-linux boxes support dynamic linking these days and
- # people can always --disable-shared, the test was removed, and we
- # assume the GNU/Linux dynamic linker is in use.
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
-netbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
-
-newsos6)
- version_type=linux # correct to gnu/linux during the next big refactor
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-*nto* | *qnx*)
- version_type=qnx
- need_lib_prefix=no
- need_version=no
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='ldqnx.so'
- ;;
-
-openbsd* | bitrig*)
- version_type=sunos
- sys_lib_dlsearch_path_spec=/usr/lib
- need_lib_prefix=no
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
- need_version=no
- else
- need_version=yes
- fi
- library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-os2*)
- libname_spec='$name'
- version_type=windows
- shrext_cmds=.dll
- need_version=no
- need_lib_prefix=no
- # OS/2 can only load a DLL with a base name of 8 characters or less.
- soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
- v=$($ECHO $release$versuffix | tr -d .-);
- n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
- $ECHO $n$v`$shared_ext'
- library_names_spec='${libname}_dll.$libext'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=BEGINLIBPATH
- sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- postinstall_cmds='base_file=`basename \$file`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname~
- chmod a+x \$dldir/$dlname~
- if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
- eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
- fi'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- ;;
-
-osf3* | osf4* | osf5*)
- version_type=osf
- need_lib_prefix=no
- need_version=no
- soname_spec='$libname$release$shared_ext$major'
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
-
-rdos*)
- dynamic_linker=no
- ;;
-
-solaris*)
- version_type=linux # correct to gnu/linux during the next big refactor
- need_lib_prefix=no
- need_version=no
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test yes = "$with_gnu_ld"; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.3*)
- version_type=linux # correct to gnu/linux during the next big refactor
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- shlibpath_var=LD_LIBRARY_PATH
- case $host_vendor in
- sni)
- shlibpath_overrides_runpath=no
- need_lib_prefix=no
- runpath_var=LD_RUN_PATH
- ;;
- siemens)
- need_lib_prefix=no
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- ;;
- esac
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec; then
- version_type=linux # correct to gnu/linux during the next big refactor
- library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
- soname_spec='$libname$shared_ext.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- version_type=sco
- need_lib_prefix=no
- need_version=no
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- if test yes = "$with_gnu_ld"; then
- sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
- else
- sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
- case $host_os in
- sco3.2v5*)
- sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
- ;;
- esac
- fi
- sys_lib_dlsearch_path_spec='/usr/lib'
- ;;
-
-tpf*)
- # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
- version_type=linux # correct to gnu/linux during the next big refactor
- need_lib_prefix=no
- need_version=no
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-uts4*)
- version_type=linux # correct to gnu/linux during the next big refactor
- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
- soname_spec='$libname$release$shared_ext$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-AC_MSG_RESULT([$dynamic_linker])
-test no = "$dynamic_linker" && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test yes = "$GCC"; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
- sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
-fi
-
-if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
- sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
-fi
-
-# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
-configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
-
-# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
-func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
-
-# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
-configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
-
-_LT_DECL([], [variables_saved_for_relink], [1],
- [Variables whose values should be saved in libtool wrapper scripts and
- restored at link time])
-_LT_DECL([], [need_lib_prefix], [0],
- [Do we need the "lib" prefix for modules?])
-_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
-_LT_DECL([], [version_type], [0], [Library versioning type])
-_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
-_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
-_LT_DECL([], [shlibpath_overrides_runpath], [0],
- [Is shlibpath searched before the hard-coded library search path?])
-_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
-_LT_DECL([], [library_names_spec], [1],
- [[List of archive names. First name is the real one, the rest are links.
- The last name is the one that the linker finds with -lNAME]])
-_LT_DECL([], [soname_spec], [1],
- [[The coded name of the library, if different from the real name]])
-_LT_DECL([], [install_override_mode], [1],
- [Permission mode override for installation of shared libraries])
-_LT_DECL([], [postinstall_cmds], [2],
- [Command to use after installation of a shared archive])
-_LT_DECL([], [postuninstall_cmds], [2],
- [Command to use after uninstallation of a shared archive])
-_LT_DECL([], [finish_cmds], [2],
- [Commands used to finish a libtool library installation in a directory])
-_LT_DECL([], [finish_eval], [1],
- [[As "finish_cmds", except a single script fragment to be evaled but
- not shown]])
-_LT_DECL([], [hardcode_into_libs], [0],
- [Whether we should hardcode library paths into libraries])
-_LT_DECL([], [sys_lib_search_path_spec], [2],
- [Compile-time system search path for libraries])
-_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
- [Detected run-time system search path for libraries])
-_LT_DECL([], [configure_time_lt_sys_library_path], [2],
- [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
-])# _LT_SYS_DYNAMIC_LINKER
-
-
-# _LT_PATH_TOOL_PREFIX(TOOL)
-# --------------------------
-# find a file program that can recognize shared library
-AC_DEFUN([_LT_PATH_TOOL_PREFIX],
-[m4_require([_LT_DECL_EGREP])dnl
-AC_MSG_CHECKING([for $1])
-AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
-[case $MAGIC_CMD in
-[[\\/*] | ?:[\\/]*])
- lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
- ;;
-*)
- lt_save_MAGIC_CMD=$MAGIC_CMD
- lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
-dnl $ac_dummy forces splitting on constant user-supplied paths.
-dnl POSIX.2 word splitting is done only on the output of word expansions,
-dnl not every word. This closes a longstanding sh security hole.
- ac_dummy="m4_if([$2], , $PATH, [$2])"
- for ac_dir in $ac_dummy; do
- IFS=$lt_save_ifs
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$1"; then
- lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
- MAGIC_CMD=$lt_cv_path_MAGIC_CMD
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- $EGREP "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool@gnu.org
-
-_LT_EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS=$lt_save_ifs
- MAGIC_CMD=$lt_save_MAGIC_CMD
- ;;
-esac])
-MAGIC_CMD=$lt_cv_path_MAGIC_CMD
-if test -n "$MAGIC_CMD"; then
- AC_MSG_RESULT($MAGIC_CMD)
-else
- AC_MSG_RESULT(no)
-fi
-_LT_DECL([], [MAGIC_CMD], [0],
- [Used to examine libraries when file_magic_cmd begins with "file"])dnl
-])# _LT_PATH_TOOL_PREFIX
-
-# Old name:
-AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
-
-
-# _LT_PATH_MAGIC
-# --------------
-# find a file program that can recognize a shared library
-m4_defun([_LT_PATH_MAGIC],
-[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
-if test -z "$lt_cv_path_MAGIC_CMD"; then
- if test -n "$ac_tool_prefix"; then
- _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
- else
- MAGIC_CMD=:
- fi
-fi
-])# _LT_PATH_MAGIC
-
-
-# LT_PATH_LD
-# ----------
-# find the pathname to the GNU or non-GNU linker
-AC_DEFUN([LT_PATH_LD],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
-
-AC_ARG_WITH([gnu-ld],
- [AS_HELP_STRING([--with-gnu-ld],
- [assume the C compiler uses GNU ld @<:@default=no@:>@])],
- [test no = "$withval" || with_gnu_ld=yes],
- [with_gnu_ld=no])dnl
-
-ac_prog=ld
-if test yes = "$GCC"; then
- # Check if gcc -print-prog-name=ld gives a path.
- AC_MSG_CHECKING([for ld used by $CC])
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return, which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [[\\/]]* | ?:[[\\/]]*)
- re_direlt='/[[^/]][[^/]]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
- while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD=$ac_prog
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test yes = "$with_gnu_ld"; then
- AC_MSG_CHECKING([for GNU ld])
-else
- AC_MSG_CHECKING([for non-GNU ld])
-fi
-AC_CACHE_VAL(lt_cv_path_LD,
-[if test -z "$LD"; then
- lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS=$lt_save_ifs
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD=$ac_dir/$ac_prog
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test no != "$with_gnu_ld" && break
- ;;
- *)
- test yes != "$with_gnu_ld" && break
- ;;
- esac
- fi
- done
- IFS=$lt_save_ifs
-else
- lt_cv_path_LD=$LD # Let the user override the test with a path.
-fi])
-LD=$lt_cv_path_LD
-if test -n "$LD"; then
- AC_MSG_RESULT($LD)
-else
- AC_MSG_RESULT(no)
-fi
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
-_LT_PATH_LD_GNU
-AC_SUBST([LD])
-
-_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
-])# LT_PATH_LD
-
-# Old names:
-AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
-AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_PROG_LD], [])
-dnl AC_DEFUN([AC_PROG_LD], [])
-
-
-# _LT_PATH_LD_GNU
-#- --------------
-m4_defun([_LT_PATH_LD_GNU],
-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
-[# I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
- lt_cv_prog_gnu_ld=yes
- ;;
-*)
- lt_cv_prog_gnu_ld=no
- ;;
-esac])
-with_gnu_ld=$lt_cv_prog_gnu_ld
-])# _LT_PATH_LD_GNU
-
-
-# _LT_CMD_RELOAD
-# --------------
-# find reload flag for linker
-# -- PORTME Some linkers may need a different reload flag.
-m4_defun([_LT_CMD_RELOAD],
-[AC_CACHE_CHECK([for $LD option to reload object files],
- lt_cv_ld_reload_flag,
- [lt_cv_ld_reload_flag='-r'])
-reload_flag=$lt_cv_ld_reload_flag
-case $reload_flag in
-"" | " "*) ;;
-*) reload_flag=" $reload_flag" ;;
-esac
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-case $host_os in
- cygwin* | mingw* | pw32* | cegcc*)
- if test yes != "$GCC"; then
- reload_cmds=false
- fi
- ;;
- darwin*)
- if test yes = "$GCC"; then
- reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
- else
- reload_cmds='$LD$reload_flag -o $output$reload_objs'
- fi
- ;;
-esac
-_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
-_LT_TAGDECL([], [reload_cmds], [2])dnl
-])# _LT_CMD_RELOAD
-
-
-# _LT_PATH_DD
-# -----------
-# find a working dd
-m4_defun([_LT_PATH_DD],
-[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
-[printf 0123456789abcdef0123456789abcdef >conftest.i
-cat conftest.i conftest.i >conftest2.i
-: ${lt_DD:=$DD}
-AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
-[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
- cmp -s conftest.i conftest.out \
- && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
-fi])
-rm -f conftest.i conftest2.i conftest.out])
-])# _LT_PATH_DD
-
-
-# _LT_CMD_TRUNCATE
-# ----------------
-# find command to truncate a binary pipe
-m4_defun([_LT_CMD_TRUNCATE],
-[m4_require([_LT_PATH_DD])
-AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
-[printf 0123456789abcdef0123456789abcdef >conftest.i
-cat conftest.i conftest.i >conftest2.i
-lt_cv_truncate_bin=
-if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
- cmp -s conftest.i conftest.out \
- && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
-fi
-rm -f conftest.i conftest2.i conftest.out
-test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
-_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
- [Command to truncate a binary pipe])
-])# _LT_CMD_TRUNCATE
-
-
-# _LT_CHECK_MAGIC_METHOD
-# ----------------------
-# how to check for library dependencies
-# -- PORTME fill in with the dynamic library characteristics
-m4_defun([_LT_CHECK_MAGIC_METHOD],
-[m4_require([_LT_DECL_EGREP])
-m4_require([_LT_DECL_OBJDUMP])
-AC_CACHE_CHECK([how to recognize dependent libraries],
-lt_cv_deplibs_check_method,
-[lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# 'unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# that responds to the $file_magic_cmd with a given extended regex.
-# If you have 'file' or equivalent on your system and you're not sure
-# whether 'pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix[[4-9]]*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-beos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-bsdi[[45]]*)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
- lt_cv_file_magic_cmd='$FILECMD -L'
- lt_cv_file_magic_test_file=/shlib/libc.so
- ;;
-
-cygwin*)
- # func_win32_libid is a shell function defined in ltmain.sh
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- ;;
-
-mingw* | pw32*)
- # Base MSYS/MinGW do not provide the 'file' command needed by
- # func_win32_libid shell function, so use a weaker test based on 'objdump',
- # unless we find 'file', for example because we are cross-compiling.
- if ( file / ) >/dev/null 2>&1; then
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- else
- # Keep this pattern in sync with the one in func_win32_libid.
- lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- fi
- ;;
-
-cegcc*)
- # use the weaker test based on 'objdump'. See mingw*.
- lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- ;;
-
-darwin* | rhapsody*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-freebsd* | dragonfly* | midnightbsd*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- case $host_cpu in
- i*86 )
- # Not sure whether the presence of OpenBSD here was a mistake.
- # Let's accept both of them until this is cleared up.
- lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
- lt_cv_file_magic_cmd=$FILECMD
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
- ;;
- esac
- else
- lt_cv_deplibs_check_method=pass_all
- fi
- ;;
-
-haiku*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-hpux10.20* | hpux11*)
- lt_cv_file_magic_cmd=$FILECMD
- case $host_cpu in
- ia64*)
- lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
- lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
- ;;
- hppa*64*)
- [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
- lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
- ;;
- *)
- lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
- lt_cv_file_magic_test_file=/usr/lib/libc.sl
- ;;
- esac
- ;;
-
-interix[[3-9]]*)
- # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $LD in
- *-32|*"-32 ") libmagic=32-bit;;
- *-n32|*"-n32 ") libmagic=N32;;
- *-64|*"-64 ") libmagic=64-bit;;
- *) libmagic=never-match;;
- esac
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-# This must be glibc/ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-netbsd*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
- fi
- ;;
-
-newos6*)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
- lt_cv_file_magic_cmd=$FILECMD
- lt_cv_file_magic_test_file=/usr/lib/libnls.so
- ;;
-
-*nto* | *qnx*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-openbsd* | bitrig*)
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
- fi
- ;;
-
-osf3* | osf4* | osf5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-rdos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-solaris*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv4 | sysv4.3*)
- case $host_vendor in
- motorola)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
- ;;
- ncr)
- lt_cv_deplibs_check_method=pass_all
- ;;
- sequent)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
- ;;
- sni)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
- lt_cv_file_magic_test_file=/lib/libc.so
- ;;
- siemens)
- lt_cv_deplibs_check_method=pass_all
- ;;
- pc)
- lt_cv_deplibs_check_method=pass_all
- ;;
- esac
- ;;
-
-tpf*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-os2*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-esac
-])
-
-file_magic_glob=
-want_nocaseglob=no
-if test "$build" = "$host"; then
- case $host_os in
- mingw* | pw32*)
- if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
- want_nocaseglob=yes
- else
- file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
- fi
- ;;
- esac
-fi
-
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-_LT_DECL([], [deplibs_check_method], [1],
- [Method to check whether dependent libraries are shared objects])
-_LT_DECL([], [file_magic_cmd], [1],
- [Command to use when deplibs_check_method = "file_magic"])
-_LT_DECL([], [file_magic_glob], [1],
- [How to find potential files when deplibs_check_method = "file_magic"])
-_LT_DECL([], [want_nocaseglob], [1],
- [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
-])# _LT_CHECK_MAGIC_METHOD
-
-
-# LT_PATH_NM
-# ----------
-# find the pathname to a BSD- or MS-compatible name lister
-AC_DEFUN([LT_PATH_NM],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
-[if test -n "$NM"; then
- # Let the user override the test.
- lt_cv_path_NM=$NM
-else
- lt_nm_to_check=${ac_tool_prefix}nm
- if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
- lt_nm_to_check="$lt_nm_to_check nm"
- fi
- for lt_tmp_nm in $lt_nm_to_check; do
- lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
- IFS=$lt_save_ifs
- test -z "$ac_dir" && ac_dir=.
- tmp_nm=$ac_dir/$lt_tmp_nm
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
- case $build_os in
- mingw*) lt_bad_file=conftest.nm/nofile ;;
- *) lt_bad_file=/dev/null ;;
- esac
- case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in
- *$lt_bad_file* | *'Invalid file or object type'*)
- lt_cv_path_NM="$tmp_nm -B"
- break 2
- ;;
- *)
- case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in
- */dev/null*)
- lt_cv_path_NM="$tmp_nm -p"
- break 2
- ;;
- *)
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- ;;
- esac
- ;;
- esac
- fi
- done
- IFS=$lt_save_ifs
- done
- : ${lt_cv_path_NM=no}
-fi])
-if test no != "$lt_cv_path_NM"; then
- NM=$lt_cv_path_NM
-else
- # Didn't find any BSD compatible name lister, look for dumpbin.
- if test -n "$DUMPBIN"; then :
- # Let the user override the test.
- else
- AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
- case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in
- *COFF*)
- DUMPBIN="$DUMPBIN -symbols -headers"
- ;;
- *)
- DUMPBIN=:
- ;;
- esac
- fi
- AC_SUBST([DUMPBIN])
- if test : != "$DUMPBIN"; then
- NM=$DUMPBIN
- fi
-fi
-test -z "$NM" && NM=nm
-AC_SUBST([NM])
-_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
-
-AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
- [lt_cv_nm_interface="BSD nm"
- echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$ac_compile" 2>conftest.err)
- cat conftest.err >&AS_MESSAGE_LOG_FD
- (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
- (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
- cat conftest.err >&AS_MESSAGE_LOG_FD
- (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
- cat conftest.out >&AS_MESSAGE_LOG_FD
- if $GREP 'External.*some_variable' conftest.out > /dev/null; then
- lt_cv_nm_interface="MS dumpbin"
- fi
- rm -f conftest*])
-])# LT_PATH_NM
-
-# Old names:
-AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
-AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_PROG_NM], [])
-dnl AC_DEFUN([AC_PROG_NM], [])
-
-# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
-# --------------------------------
-# how to determine the name of the shared library
-# associated with a specific link library.
-# -- PORTME fill in with the dynamic library characteristics
-m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
-[m4_require([_LT_DECL_EGREP])
-m4_require([_LT_DECL_OBJDUMP])
-m4_require([_LT_DECL_DLLTOOL])
-AC_CACHE_CHECK([how to associate runtime and link libraries],
-lt_cv_sharedlib_from_linklib_cmd,
-[lt_cv_sharedlib_from_linklib_cmd='unknown'
-
-case $host_os in
-cygwin* | mingw* | pw32* | cegcc*)
- # two different shell functions defined in ltmain.sh;
- # decide which one to use based on capabilities of $DLLTOOL
- case `$DLLTOOL --help 2>&1` in
- *--identify-strict*)
- lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
- ;;
- *)
- lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
- ;;
- esac
- ;;
-*)
- # fallback: assume linklib IS sharedlib
- lt_cv_sharedlib_from_linklib_cmd=$ECHO
- ;;
-esac
-])
-sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
-test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
-
-_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
- [Command to associate shared and link libraries])
-])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
-
-
-# _LT_PATH_MANIFEST_TOOL
-# ----------------------
-# locate the manifest tool
-m4_defun([_LT_PATH_MANIFEST_TOOL],
-[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
-test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
-AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
- [lt_cv_path_mainfest_tool=no
- echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
- $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
- cat conftest.err >&AS_MESSAGE_LOG_FD
- if $GREP 'Manifest Tool' conftest.out > /dev/null; then
- lt_cv_path_mainfest_tool=yes
- fi
- rm -f conftest*])
-if test yes != "$lt_cv_path_mainfest_tool"; then
- MANIFEST_TOOL=:
-fi
-_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
-])# _LT_PATH_MANIFEST_TOOL
-
-
-# _LT_DLL_DEF_P([FILE])
-# ---------------------
-# True iff FILE is a Windows DLL '.def' file.
-# Keep in sync with func_dll_def_p in the libtool script
-AC_DEFUN([_LT_DLL_DEF_P],
-[dnl
- test DEF = "`$SED -n dnl
- -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace
- -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments
- -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl
- -e q dnl Only consider the first "real" line
- $1`" dnl
-])# _LT_DLL_DEF_P
-
-
-# LT_LIB_M
-# --------
-# check for math library
-AC_DEFUN([LT_LIB_M],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-LIBM=
-case $host in
-*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
- # These system don't have libm, or don't need it
- ;;
-*-ncr-sysv4.3*)
- AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
- AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
- ;;
-*)
- AC_CHECK_LIB(m, cos, LIBM=-lm)
- ;;
-esac
-AC_SUBST([LIBM])
-])# LT_LIB_M
-
-# Old name:
-AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_CHECK_LIBM], [])
-
-
-# _LT_COMPILER_NO_RTTI([TAGNAME])
-# -------------------------------
-m4_defun([_LT_COMPILER_NO_RTTI],
-[m4_require([_LT_TAG_COMPILER])dnl
-
-_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
-
-if test yes = "$GCC"; then
- case $cc_basename in
- nvcc*)
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
- esac
-
- _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
- lt_cv_prog_compiler_rtti_exceptions,
- [-fno-rtti -fno-exceptions], [],
- [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
-fi
-_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
- [Compiler flag to turn off builtin functions])
-])# _LT_COMPILER_NO_RTTI
-
-
-# _LT_CMD_GLOBAL_SYMBOLS
-# ----------------------
-m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-AC_REQUIRE([LT_PATH_LD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-AC_MSG_CHECKING([command to parse $NM output from $compiler object])
-AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
-[
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[[BCDEGRST]]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
-
-# Define system-specific variables.
-case $host_os in
-aix*)
- symcode='[[BCDT]]'
- ;;
-cygwin* | mingw* | pw32* | cegcc*)
- symcode='[[ABCDGISTW]]'
- ;;
-hpux*)
- if test ia64 = "$host_cpu"; then
- symcode='[[ABCDEGRST]]'
- fi
- ;;
-irix* | nonstopux*)
- symcode='[[BCDEGRST]]'
- ;;
-osf*)
- symcode='[[BCDEGQRST]]'
- ;;
-solaris*)
- symcode='[[BDRT]]'
- ;;
-sco3.2v5*)
- symcode='[[DT]]'
- ;;
-sysv4.2uw2*)
- symcode='[[DT]]'
- ;;
-sysv5* | sco5v6* | unixware* | OpenUNIX*)
- symcode='[[ABDT]]'
- ;;
-sysv4)
- symcode='[[DFNSTU]]'
- ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-case `$NM -V 2>&1` in
-*GNU* | *'with BFD'*)
- symcode='[[ABCDGIRSTW]]' ;;
-esac
-
-if test "$lt_cv_nm_interface" = "MS dumpbin"; then
- # Gets list of data symbols to import.
- lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'"
- # Adjust the below global symbol transforms to fixup imported variables.
- lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
- lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
- lt_c_name_lib_hook="\
- -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\
- -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"
-else
- # Disable hooks by default.
- lt_cv_sys_global_symbol_to_import=
- lt_cdecl_hook=
- lt_c_name_hook=
- lt_c_name_lib_hook=
-fi
-
-# Transform an extracted symbol line into a proper C declaration.
-# Some systems (esp. on ia64) link data and code symbols differently,
-# so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="$SED -n"\
-$lt_cdecl_hook\
-" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
-" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\
-$lt_c_name_hook\
-" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
-" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
-
-# Transform an extracted symbol line into symbol name with lib prefix and
-# symbol address.
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\
-$lt_c_name_lib_hook\
-" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
-" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
-" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $build_os in
-mingw*)
- opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
- ;;
-esac
-
-# Try without a prefix underscore, then with it.
-for ac_symprfx in "" "_"; do
-
- # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
- symxfrm="\\1 $ac_symprfx\\2 \\2"
-
- # Write the raw and C identifiers.
- if test "$lt_cv_nm_interface" = "MS dumpbin"; then
- # Fake it for dumpbin and say T for any non-static function,
- # D for any global variable and I for any imported variable.
- # Also find C++ and __fastcall symbols from MSVC++ or ICC,
- # which start with @ or ?.
- lt_cv_sys_global_symbol_pipe="$AWK ['"\
-" {last_section=section; section=\$ 3};"\
-" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
-" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
-" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
-" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
-" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
-" \$ 0!~/External *\|/{next};"\
-" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
-" {if(hide[section]) next};"\
-" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
-" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
-" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
-" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
-" ' prfx=^$ac_symprfx]"
- else
- lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
- fi
- lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'"
-
- # Check to see that the pipe works correctly.
- pipe_works=no
-
- rm -f conftest*
- cat > conftest.$ac_ext <<_LT_EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(void);
-void nm_test_func(void){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-_LT_EOF
-
- if AC_TRY_EVAL(ac_compile); then
- # Now try to grab the symbols.
- nlist=conftest.nm
- if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
- # Try sorting and uniquifying the output.
- if sort "$nlist" | uniq > "$nlist"T; then
- mv -f "$nlist"T "$nlist"
- else
- rm -f "$nlist"T
- fi
-
- # Make sure that we snagged all the symbols we need.
- if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
- if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
- cat <<_LT_EOF > conftest.$ac_ext
-/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
-#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
-/* DATA imports from DLLs on WIN32 can't be const, because runtime
- relocations are performed -- see ld's documentation on pseudo-relocs. */
-# define LT@&t@_DLSYM_CONST
-#elif defined __osf__
-/* This system does not cope well with relocations in const data. */
-# define LT@&t@_DLSYM_CONST
-#else
-# define LT@&t@_DLSYM_CONST const
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-_LT_EOF
- # Now generate the symbol file.
- eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
-
- cat <<_LT_EOF >> conftest.$ac_ext
-
-/* The mapping between symbol names and symbols. */
-LT@&t@_DLSYM_CONST struct {
- const char *name;
- void *address;
-}
-lt__PROGRAM__LTX_preloaded_symbols[[]] =
-{
- { "@PROGRAM@", (void *) 0 },
-_LT_EOF
- $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
- cat <<\_LT_EOF >> conftest.$ac_ext
- {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
- return lt__PROGRAM__LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-_LT_EOF
- # Now try linking the two files.
- mv conftest.$ac_objext conftstm.$ac_objext
- lt_globsym_save_LIBS=$LIBS
- lt_globsym_save_CFLAGS=$CFLAGS
- LIBS=conftstm.$ac_objext
- CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
- if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
- pipe_works=yes
- fi
- LIBS=$lt_globsym_save_LIBS
- CFLAGS=$lt_globsym_save_CFLAGS
- else
- echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
- fi
- else
- echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
- fi
- else
- echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
- fi
- else
- echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
- cat conftest.$ac_ext >&5
- fi
- rm -rf conftest* conftst*
-
- # Do not use the global_symbol_pipe unless it works.
- if test yes = "$pipe_works"; then
- break
- else
- lt_cv_sys_global_symbol_pipe=
- fi
-done
-])
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
- lt_cv_sys_global_symbol_to_cdecl=
-fi
-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
- AC_MSG_RESULT(failed)
-else
- AC_MSG_RESULT(ok)
-fi
-
-# Response file support.
-if test "$lt_cv_nm_interface" = "MS dumpbin"; then
- nm_file_list_spec='@'
-elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
- nm_file_list_spec='@'
-fi
-
-_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
- [Take the output of nm and produce a listing of raw symbols and C names])
-_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
- [Transform the output of nm in a proper C declaration])
-_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
- [Transform the output of nm into a list of symbols to manually relocate])
-_LT_DECL([global_symbol_to_c_name_address],
- [lt_cv_sys_global_symbol_to_c_name_address], [1],
- [Transform the output of nm in a C name address pair])
-_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
- [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
- [Transform the output of nm in a C name address pair when lib prefix is needed])
-_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
- [The name lister interface])
-_LT_DECL([], [nm_file_list_spec], [1],
- [Specify filename containing input files for $NM])
-]) # _LT_CMD_GLOBAL_SYMBOLS
-
-
-# _LT_COMPILER_PIC([TAGNAME])
-# ---------------------------
-m4_defun([_LT_COMPILER_PIC],
-[m4_require([_LT_TAG_COMPILER])dnl
-_LT_TAGVAR(lt_prog_compiler_wl, $1)=
-_LT_TAGVAR(lt_prog_compiler_pic, $1)=
-_LT_TAGVAR(lt_prog_compiler_static, $1)=
-
-m4_if([$1], [CXX], [
- # C++ specific cases for pic, static, wl, etc.
- if test yes = "$GXX"; then
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test ia64 = "$host_cpu"; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- fi
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the '-m68020' flag to GCC prevents building anything better,
- # like '-m68040'.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
- mingw* | cygwin* | os2* | pw32* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- m4_if([$1], [GCJ], [],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
- case $host_os in
- os2*)
- _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
- ;;
- esac
- ;;
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
- ;;
- *djgpp*)
- # DJGPP does not support shared libraries at all
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- ;;
- haiku*)
- # PIC is the default for Haiku.
- # The "-static" flag exists, but is broken.
- _LT_TAGVAR(lt_prog_compiler_static, $1)=
- ;;
- interix[[3-9]]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
- sysv4*MP*)
- if test -d /usr/nec; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
- fi
- ;;
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- else
- case $host_os in
- aix[[4-9]]*)
- # All AIX code is PIC.
- if test ia64 = "$host_cpu"; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- else
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
- chorus*)
- case $cc_basename in
- cxch68*)
- # Green Hills C++ Compiler
- # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
- ;;
- esac
- ;;
- mingw* | cygwin* | os2* | pw32* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- m4_if([$1], [GCJ], [],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
- ;;
- dgux*)
- case $cc_basename in
- ec++*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- freebsd* | dragonfly* | midnightbsd*)
- # FreeBSD uses GNU C++
- ;;
- hpux9* | hpux10* | hpux11*)
- case $cc_basename in
- CC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
- if test ia64 != "$host_cpu"; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
- fi
- ;;
- aCC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
- ;;
- esac
- ;;
- *)
- ;;
- esac
- ;;
- interix*)
- # This is c89, which is MS Visual C++ (no shared libs)
- # Anyone wants to do a port?
- ;;
- irix5* | irix6* | nonstopux*)
- case $cc_basename in
- CC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- # CC pic flag -KPIC is the default.
- ;;
- *)
- ;;
- esac
- ;;
- linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
- case $cc_basename in
- KCC*)
- # KAI C++ Compiler
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- ecpc* )
- # old Intel C++ for x86_64, which still supported -KPIC.
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- icpc* )
- # Intel C++, used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- cxx*)
- # Compaq C++
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
- xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
- # IBM XL 8.0, 9.0 on PPC and BlueGene
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | $SED 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
- ;;
- esac
- ;;
- esac
- ;;
- lynxos*)
- ;;
- m88k*)
- ;;
- mvs*)
- case $cc_basename in
- cxx*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
- ;;
- *)
- ;;
- esac
- ;;
- netbsd*)
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
- ;;
- RCC*)
- # Rational C++ 2.4.1
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- ;;
- cxx*)
- # Digital/Compaq C++
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
- *)
- ;;
- esac
- ;;
- psos*)
- ;;
- solaris*)
- case $cc_basename in
- CC* | sunCC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
- ;;
- gcx*)
- # Green Hills C++ Compiler
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
- ;;
- *)
- ;;
- esac
- ;;
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- lcc*)
- # Lucid
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- case $cc_basename in
- CC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- esac
- ;;
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- ;;
- *)
- ;;
- esac
- ;;
- vxworks*)
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- ;;
- esac
- fi
-],
-[
- if test yes = "$GCC"; then
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test ia64 = "$host_cpu"; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- fi
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the '-m68020' flag to GCC prevents building anything better,
- # like '-m68040'.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- m4_if([$1], [GCJ], [],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
- case $host_os in
- os2*)
- _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
- ;;
- esac
- ;;
-
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
- ;;
-
- haiku*)
- # PIC is the default for Haiku.
- # The "-static" flag exists, but is broken.
- _LT_TAGVAR(lt_prog_compiler_static, $1)=
- ;;
-
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- # +Z the default
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- ;;
-
- interix[[3-9]]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
-
- msdosdjgpp*)
- # Just because we use GCC doesn't mean we suddenly get shared libraries
- # on systems that don't support them.
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- enable_shared=no
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
- fi
- ;;
-
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
-
- case $cc_basename in
- nvcc*) # Cuda Compiler Driver 2.2
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
- if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
- fi
- ;;
- esac
- else
- # PORTME Check for flag to pass linker flags through the system compiler.
- case $host_os in
- aix*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- if test ia64 = "$host_cpu"; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- else
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
-
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
- case $cc_basename in
- nagfor*)
- # NAG Fortran compiler
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- esac
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- m4_if([$1], [GCJ], [],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
- case $host_os in
- os2*)
- _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
- ;;
- esac
- ;;
-
- hpux9* | hpux10* | hpux11*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
- # not for PA HP-UX.
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
- ;;
- esac
- # Is there a better lt_prog_compiler_static that works with the bundled CC?
- _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
- ;;
-
- irix5* | irix6* | nonstopux*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # PIC (with -KPIC) is the default.
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
- case $cc_basename in
- # old Intel for x86_64, which still supported -KPIC.
- ecc*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- # icc used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- icc* | ifort*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- # Lahey Fortran 8.1.
- lf95*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
- ;;
- nagfor*)
- # NAG Fortran compiler
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- tcc*)
- # Fabrice Bellard et al's Tiny C Compiler
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
- # Portland Group compilers (*not* the Pentium gcc compiler,
- # which looks to be a dead project)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- ccc*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # All Alpha code is PIC.
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
- xl* | bgxl* | bgf* | mpixl*)
- # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | $SED 5q` in
- *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
- # Sun Fortran 8.3 passes all unrecognized flags to the linker
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
- ;;
- *Sun\ F* | *Sun*Fortran*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
- ;;
- *Sun\ C*)
- # Sun C 5.9
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- ;;
- *Intel*\ [[CF]]*Compiler*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- *Portland\ Group*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- esac
- ;;
- esac
- ;;
-
- newsos6)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
-
- osf3* | osf4* | osf5*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # All OSF/1 code is PIC.
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
-
- rdos*)
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
-
- solaris*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- case $cc_basename in
- f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
- *)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
- esac
- ;;
-
- sunos4*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- sysv4 | sysv4.2uw2* | sysv4.3*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- fi
- ;;
-
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- unicos*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- ;;
-
- uts4*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- *)
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- ;;
- esac
- fi
-])
-case $host_os in
- # For platforms that do not support PIC, -DPIC is meaningless:
- *djgpp*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
- ;;
-esac
-
-AC_CACHE_CHECK([for $compiler option to produce PIC],
- [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
- [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
-_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
- _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
- [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
- [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
- [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
- "" | " "*) ;;
- *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
- esac],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
-fi
-_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
- [Additional compiler flags for building library objects])
-
-_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
- [How to pass a linker flag through the compiler])
-#
-# Check to make sure the static flag actually works.
-#
-wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
-_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
- _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
- $lt_tmp_static_flag,
- [],
- [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
-_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
- [Compiler flag to prevent dynamic linking])
-])# _LT_COMPILER_PIC
-
-
-# _LT_LINKER_SHLIBS([TAGNAME])
-# ----------------------------
-# See if the linker supports building shared libraries.
-m4_defun([_LT_LINKER_SHLIBS],
-[AC_REQUIRE([LT_PATH_LD])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-m4_require([_LT_PATH_MANIFEST_TOOL])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
-m4_if([$1], [CXX], [
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
- case $host_os in
- aix[[4-9]]*)
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to GNU nm, but means don't demangle to AIX nm.
- # Without the "-l" option, or with the "-B" option, AIX nm treats
- # weak defined symbols like other global defined symbols, whereas
- # GNU nm marks them as "W".
- # While the 'weak' keyword is ignored in the Export File, we need
- # it in the Import File for the 'aix-soname' feature, so we have
- # to replace the "-B" option with "-P" for AIX nm.
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
- else
- _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
- fi
- ;;
- pw32*)
- _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
- ;;
- cygwin* | mingw* | cegcc*)
- case $cc_basename in
- cl* | icl*)
- _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
- ;;
- *)
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
- _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
- ;;
- esac
- ;;
- *)
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- esac
-], [
- runpath_var=
- _LT_TAGVAR(allow_undefined_flag, $1)=
- _LT_TAGVAR(always_export_symbols, $1)=no
- _LT_TAGVAR(archive_cmds, $1)=
- _LT_TAGVAR(archive_expsym_cmds, $1)=
- _LT_TAGVAR(compiler_needs_object, $1)=no
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
- _LT_TAGVAR(export_dynamic_flag_spec, $1)=
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- _LT_TAGVAR(hardcode_automatic, $1)=no
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
- _LT_TAGVAR(hardcode_libdir_separator, $1)=
- _LT_TAGVAR(hardcode_minus_L, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
- _LT_TAGVAR(inherit_rpath, $1)=no
- _LT_TAGVAR(link_all_deplibs, $1)=unknown
- _LT_TAGVAR(module_cmds, $1)=
- _LT_TAGVAR(module_expsym_cmds, $1)=
- _LT_TAGVAR(old_archive_from_new_cmds, $1)=
- _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
- _LT_TAGVAR(thread_safe_flag_spec, $1)=
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- # include_expsyms should be a list of space-separated symbols to be *always*
- # included in the symbol list
- _LT_TAGVAR(include_expsyms, $1)=
- # exclude_expsyms can be an extended regexp of symbols to exclude
- # it will be wrapped by ' (' and ')$', so one must not match beginning or
- # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
- # as well as any symbol that contains 'd'.
- _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
- # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
- # platforms (ab)use it in PIC code, but their linkers get confused if
- # the symbol is explicitly referenced. Since portable code cannot
- # rely on this symbol name, it's probably fine to never include it in
- # preloaded symbol tables.
- # Exclude shared library initialization/finalization symbols.
-dnl Note also adjust exclude_expsyms for C++ above.
- extract_expsyms_cmds=
-
- case $host_os in
- cygwin* | mingw* | pw32* | cegcc*)
- # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++ or Intel C++ Compiler.
- if test yes != "$GCC"; then
- with_gnu_ld=no
- fi
- ;;
- interix*)
- # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)
- with_gnu_ld=yes
- ;;
- openbsd* | bitrig*)
- with_gnu_ld=no
- ;;
- esac
-
- _LT_TAGVAR(ld_shlibs, $1)=yes
-
- # On some targets, GNU ld is compatible enough with the native linker
- # that we're better off using the native interface for both.
- lt_use_gnu_ld_interface=no
- if test yes = "$with_gnu_ld"; then
- case $host_os in
- aix*)
- # The AIX port of GNU ld has always aspired to compatibility
- # with the native linker. However, as the warning in the GNU ld
- # block says, versions before 2.19.5* couldn't really create working
- # shared libraries, regardless of the interface used.
- case `$LD -v 2>&1` in
- *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
- *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
- *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
- *)
- lt_use_gnu_ld_interface=yes
- ;;
- esac
- ;;
- *)
- lt_use_gnu_ld_interface=yes
- ;;
- esac
- fi
-
- if test yes = "$lt_use_gnu_ld_interface"; then
- # If archive_cmds runs LD, not CC, wlarc should be empty
- wlarc='$wl'
-
- # Set some defaults for GNU ld with shared library support. These
- # are reset later if shared libraries are not supported. Putting them
- # here allows them to be overridden if necessary.
- runpath_var=LD_RUN_PATH
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
- # ancient GNU ld didn't support --whole-archive et. al.
- if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
- _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
- else
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- fi
- supports_anon_versioning=no
- case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in
- *GNU\ gold*) supports_anon_versioning=yes ;;
- *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
- *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
- *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
- *\ 2.11.*) ;; # other 2.11 versions
- *) supports_anon_versioning=yes ;;
- esac
-
- # See if GNU ld supports shared libraries.
- case $host_os in
- aix[[3-9]]*)
- # On AIX/PPC, the GNU linker is very broken
- if test ia64 != "$host_cpu"; then
- _LT_TAGVAR(ld_shlibs, $1)=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.19, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support. If you
-*** really care for shared libraries, you may want to install binutils
-*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
-*** You will then need to restart the configuration process.
-
-_LT_EOF
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)=''
- ;;
- m68k)
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
- esac
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
- # as there is no search path for DLLs.
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=no
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
- _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file, use it as
- # is; otherwise, prepend EXPORTS...
- _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- haiku*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
-
- os2*)
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- shrext_cmds=.dll
- _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
- $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
- $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
- $ECHO EXPORTS >> $output_objdir/$libname.def~
- emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
- $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
- emximp -o $lib $output_objdir/$libname.def'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
- $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
- $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
- $ECHO EXPORTS >> $output_objdir/$libname.def~
- prefix_cmds="$SED"~
- if test EXPORTS = "`$SED 1q $export_symbols`"; then
- prefix_cmds="$prefix_cmds -e 1d";
- fi~
- prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
- cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
- $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
- emximp -o $lib $output_objdir/$libname.def'
- _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='@'
- ;;
-
- interix[[3-9]]*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
-
- gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
- tmp_diet=no
- if test linux-dietlibc = "$host_os"; then
- case $cc_basename in
- diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
- esac
- fi
- if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
- && test no = "$tmp_diet"
- then
- tmp_addflag=' $pic_flag'
- tmp_sharedflag='-shared'
- case $cc_basename,$host_cpu in
- pgcc*) # Portland Group C compiler
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
- tmp_addflag=' $pic_flag'
- ;;
- pgf77* | pgf90* | pgf95* | pgfortran*)
- # Portland Group f77 and f90 compilers
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
- tmp_addflag=' $pic_flag -Mnomain' ;;
- ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
- tmp_addflag=' -i_dynamic' ;;
- efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
- tmp_addflag=' -i_dynamic -nofor_main' ;;
- ifc* | ifort*) # Intel Fortran compiler
- tmp_addflag=' -nofor_main' ;;
- lf95*) # Lahey Fortran 8.1
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- tmp_sharedflag='--shared' ;;
- nagfor*) # NAGFOR 5.3
- tmp_sharedflag='-Wl,-shared' ;;
- xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
- tmp_sharedflag='-qmkshrobj'
- tmp_addflag= ;;
- nvcc*) # Cuda Compiler Driver 2.2
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
- _LT_TAGVAR(compiler_needs_object, $1)=yes
- ;;
- esac
- case `$CC -V 2>&1 | $SED 5q` in
- *Sun\ C*) # Sun C 5.9
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
- _LT_TAGVAR(compiler_needs_object, $1)=yes
- tmp_sharedflag='-G' ;;
- *Sun\ F*) # Sun Fortran 8.3
- tmp_sharedflag='-G' ;;
- esac
- _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
-
- if test yes = "$supports_anon_versioning"; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
- fi
-
- case $cc_basename in
- tcc*)
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
- ;;
- xlf* | bgf* | bgxlf* | mpixlf*)
- # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
- _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
- if test yes = "$supports_anon_versioning"; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
- fi
- ;;
- esac
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
- wlarc=
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
- fi
- ;;
-
- solaris*)
- if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
- _LT_TAGVAR(ld_shlibs, $1)=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
- case `$LD -v 2>&1` in
- *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
- _LT_TAGVAR(ld_shlibs, $1)=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
-*** reliably create shared libraries on SCO systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- ;;
- *)
- # For security reasons, it is highly recommended that you always
- # use absolute paths for naming shared libraries, and exclude the
- # DT_RUNPATH tag from executables and libraries. But doing so
- # requires that you compile everything twice, which is a pain.
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- sunos4*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- wlarc=
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- *)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
-
- if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
- runpath_var=
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
- _LT_TAGVAR(export_dynamic_flag_spec, $1)=
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- fi
- else
- # PORTME fill in a description of your system's linker (not GNU ld)
- case $host_os in
- aix3*)
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=yes
- _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
- # Note: this linker hardcodes the directories in LIBPATH if there
- # are no directories specified by -L.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
- # Neither direct hardcoding nor static linking is supported with a
- # broken collect2.
- _LT_TAGVAR(hardcode_direct, $1)=unsupported
- fi
- ;;
-
- aix[[4-9]]*)
- if test ia64 = "$host_cpu"; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=
- else
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to GNU nm, but means don't demangle to AIX nm.
- # Without the "-l" option, or with the "-B" option, AIX nm treats
- # weak defined symbols like other global defined symbols, whereas
- # GNU nm marks them as "W".
- # While the 'weak' keyword is ignored in the Export File, we need
- # it in the Import File for the 'aix-soname' feature, so we have
- # to replace the "-B" option with "-P" for AIX nm.
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
- else
- _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
- fi
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # have runtime linking enabled, and use it for executables.
- # For shared libraries, we enable/disable runtime linking
- # depending on the kind of the shared library created -
- # when "with_aix_soname,aix_use_runtimelinking" is:
- # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
- # "aix,yes" lib.so shared, rtl:yes, for executables
- # lib.a static archive
- # "both,no" lib.so.V(shr.o) shared, rtl:yes
- # lib.a(lib.so.V) shared, rtl:no, for executables
- # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
- # lib.a(lib.so.V) shared, rtl:no
- # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
- # lib.a static archive
- case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
- for ld_flag in $LDFLAGS; do
- if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
- aix_use_runtimelinking=yes
- break
- fi
- done
- if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
- # With aix-soname=svr4, we create the lib.so.V shared archives only,
- # so we don't have lib.a shared libs to link our executables.
- # We have to force runtime linking in this case.
- aix_use_runtimelinking=yes
- LDFLAGS="$LDFLAGS -Wl,-brtl"
- fi
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- _LT_TAGVAR(archive_cmds, $1)=''
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
- case $with_aix_soname,$aix_use_runtimelinking in
- aix,*) ;; # traditional, no import file
- svr4,* | *,yes) # use import file
- # The Import File defines what to hardcode.
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=no
- ;;
- esac
-
- if test yes = "$GCC"; then
- case $host_os in aix4.[[012]]|aix4.[[012]].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`$CC -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- _LT_TAGVAR(hardcode_direct, $1)=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=
- fi
- ;;
- esac
- shared_flag='-shared'
- if test yes = "$aix_use_runtimelinking"; then
- shared_flag="$shared_flag "'$wl-G'
- fi
- # Need to ensure runtime linking is disabled for the traditional
- # shared library, or the linker may eventually find shared libraries
- # /with/ Import File - we do not want to mix them.
- shared_flag_aix='-shared'
- shared_flag_svr4='-shared $wl-G'
- else
- # not using gcc
- if test ia64 = "$host_cpu"; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test yes = "$aix_use_runtimelinking"; then
- shared_flag='$wl-G'
- else
- shared_flag='$wl-bM:SRE'
- fi
- shared_flag_aix='$wl-bM:SRE'
- shared_flag_svr4='$wl-G'
- fi
- fi
-
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to export.
- _LT_TAGVAR(always_export_symbols, $1)=yes
- if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
- # Determine the default libpath from the value encoded in an
- # empty executable.
- _LT_SYS_MODULE_PATH_AIX([$1])
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
- else
- if test ia64 = "$host_cpu"; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
- _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- _LT_SYS_MODULE_PATH_AIX([$1])
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
- _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
- if test yes = "$with_gnu_ld"; then
- # We only use this code for GNU lds that support --whole-archive.
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
- else
- # Exported symbols can be pulled into shared objects from archives
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
- _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
- # -brtl affects multiple linker settings, -berok does not and is overridden later
- compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
- if test svr4 != "$with_aix_soname"; then
- # This is similar to how AIX traditionally builds its shared libraries.
- _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
- fi
- if test aix != "$with_aix_soname"; then
- _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
- else
- # used by -dlpreopen to get the symbols
- _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
- fi
- _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
- fi
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)=''
- ;;
- m68k)
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
- esac
- ;;
-
- bsdi[[45]]*)
- _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++ or Intel C++ Compiler.
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- case $cc_basename in
- cl* | icl*)
- # Native MSVC or ICC
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='@'
- # Tell ltmain to make .lib files, not .a files.
- libext=lib
- # Tell ltmain to make .dll files, not .so files.
- shrext_cmds=.dll
- # FIXME: Setting linknames here is a bad hack.
- _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
- _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
- cp "$export_symbols" "$output_objdir/$soname.def";
- echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
- else
- $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
- fi~
- $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
- linknames='
- # The linker will not automatically build a static lib if we build a DLL.
- # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
- # Don't use ranlib
- _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
- _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
- lt_tool_outputfile="@TOOL_OUTPUT@"~
- case $lt_outputfile in
- *.exe|*.EXE) ;;
- *)
- lt_outputfile=$lt_outputfile.exe
- lt_tool_outputfile=$lt_tool_outputfile.exe
- ;;
- esac~
- if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
- $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
- $RM "$lt_outputfile.manifest";
- fi'
- ;;
- *)
- # Assume MSVC and ICC wrapper
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- # Tell ltmain to make .lib files, not .a files.
- libext=lib
- # Tell ltmain to make .dll files, not .so files.
- shrext_cmds=.dll
- # FIXME: Setting linknames here is a bad hack.
- _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
- # The linker will automatically build a .lib file if we build a DLL.
- _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
- # FIXME: Should let the user specify the lib program.
- _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- ;;
- esac
- ;;
-
- darwin* | rhapsody*)
- _LT_DARWIN_LINKER_FEATURES($1)
- ;;
-
- dgux*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
- # support. Future versions do this automatically, but an explicit c++rt0.o
- # does not break anything, and helps significantly (at the cost of a little
- # extra space).
- freebsd2.2*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- # Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2.*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
- freebsd* | dragonfly* | midnightbsd*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- hpux9*)
- if test yes = "$GCC"; then
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
- else
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(hardcode_direct, $1)=yes
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
- ;;
-
- hpux10*)
- if test yes,no = "$GCC,$with_gnu_ld"; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
- fi
- if test no = "$with_gnu_ld"; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- fi
- ;;
-
- hpux11*)
- if test yes,no = "$GCC,$with_gnu_ld"; then
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- else
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- m4_if($1, [], [
- # Older versions of the 11.00 compiler do not understand -b yet
- # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
- _LT_LINKER_OPTION([if $CC understands -b],
- _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
- [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
- [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
- [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
- ;;
- esac
- fi
- if test no = "$with_gnu_ld"; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
- *)
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
- esac
- fi
- ;;
-
- irix5* | irix6* | nonstopux*)
- if test yes = "$GCC"; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
- # Try to use the -exported_symbol ld option, if it does not
- # work, assume that -exports_file does not work either and
- # implicitly export all symbols.
- # This should be the same for all languages, so no per-tag cache variable.
- AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
- [lt_cv_irix_exported_symbol],
- [save_LDFLAGS=$LDFLAGS
- LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
- AC_LINK_IFELSE(
- [AC_LANG_SOURCE(
- [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
- [C++], [[int foo (void) { return 0; }]],
- [Fortran 77], [[
- subroutine foo
- end]],
- [Fortran], [[
- subroutine foo
- end]])])],
- [lt_cv_irix_exported_symbol=yes],
- [lt_cv_irix_exported_symbol=no])
- LDFLAGS=$save_LDFLAGS])
- if test yes = "$lt_cv_irix_exported_symbol"; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
- fi
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(inherit_rpath, $1)=yes
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
-
- linux*)
- case $cc_basename in
- tcc*)
- # Fabrice Bellard et al's Tiny C Compiler
- _LT_TAGVAR(ld_shlibs, $1)=yes
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
- else
- _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- newsos6)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- *nto* | *qnx*)
- ;;
-
- openbsd* | bitrig*)
- if test -f /usr/libexec/ld.so; then
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
- fi
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- os2*)
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- shrext_cmds=.dll
- _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
- $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
- $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
- $ECHO EXPORTS >> $output_objdir/$libname.def~
- emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
- $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
- emximp -o $lib $output_objdir/$libname.def'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
- $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
- $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
- $ECHO EXPORTS >> $output_objdir/$libname.def~
- prefix_cmds="$SED"~
- if test EXPORTS = "`$SED 1q $export_symbols`"; then
- prefix_cmds="$prefix_cmds -e 1d";
- fi~
- prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
- cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
- $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
- emximp -o $lib $output_objdir/$libname.def'
- _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='@'
- ;;
-
- osf3*)
- if test yes = "$GCC"; then
- _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
- else
- _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- ;;
-
- osf4* | osf5*) # as osf3* with the addition of -msym flag
- if test yes = "$GCC"; then
- _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- else
- _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
- $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp'
-
- # Both c and cxx compiler support -rpath directly
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- ;;
-
- solaris*)
- _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
- if test yes = "$GCC"; then
- wlarc='$wl'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- else
- case `$CC -V 2>&1` in
- *"Compilers 5.0"*)
- wlarc=''
- _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
- ;;
- *)
- wlarc='$wl'
- _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- ;;
- esac
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- case $host_os in
- solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands '-z linker_flag'. GCC discards it without '$wl',
- # but is careful enough not to reorder.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- if test yes = "$GCC"; then
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
- else
- _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
- fi
- ;;
- esac
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
-
- sunos4*)
- if test sequent = "$host_vendor"; then
- # Use $CC to link under sequent, because it throws in some extra .o
- # files that make .init and .fini sections work.
- _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- sysv4)
- case $host_vendor in
- sni)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
- ;;
- siemens)
- ## LD is ld it makes a PLAMLIB
- ## CC just makes a GrossModule.
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
- _LT_TAGVAR(hardcode_direct, $1)=no
- ;;
- motorola)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
- ;;
- esac
- runpath_var='LD_RUN_PATH'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- sysv4.3*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- _LT_TAGVAR(ld_shlibs, $1)=yes
- fi
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
- _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- runpath_var='LD_RUN_PATH'
-
- if test yes = "$GCC"; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We CANNOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
- _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
- runpath_var='LD_RUN_PATH'
-
- if test yes = "$GCC"; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- uts4*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- *)
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
-
- if test sni = "$host_vendor"; then
- case $host in
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
- ;;
- esac
- fi
- fi
-])
-AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
-
-_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
-
-_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
-_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
-_LT_DECL([], [extract_expsyms_cmds], [2],
- [The commands to extract the exported symbol list from a shared archive])
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
-x|xyes)
- # Assume -lc should be added
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-
- if test yes,yes = "$GCC,$enable_shared"; then
- case $_LT_TAGVAR(archive_cmds, $1) in
- *'~'*)
- # FIXME: we may have to deal with multi-command sequences.
- ;;
- '$CC '*)
- # Test whether the compiler implicitly links with -lc since on some
- # systems, -lgcc has to come before -lc. If gcc already passes -lc
- # to ld, don't add -lc before -lgcc.
- AC_CACHE_CHECK([whether -lc should be explicitly linked in],
- [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
- [$RM conftest*
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
- soname=conftest
- lib=conftest
- libobjs=conftest.$ac_objext
- deplibs=
- wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
- pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
- compiler_flags=-v
- linker_flags=-v
- verstring=
- output_objdir=.
- libname=conftest
- lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
- _LT_TAGVAR(allow_undefined_flag, $1)=
- if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
- then
- lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
- else
- lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
- fi
- _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
- else
- cat conftest.err 1>&5
- fi
- $RM conftest*
- ])
- _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
- ;;
- esac
- fi
- ;;
-esac
-
-_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
- [Whether or not to add -lc for building shared libraries])
-_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
- [enable_shared_with_static_runtimes], [0],
- [Whether or not to disallow shared libs when runtime libs are static])
-_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
- [Compiler flag to allow reflexive dlopens])
-_LT_TAGDECL([], [whole_archive_flag_spec], [1],
- [Compiler flag to generate shared objects directly from archives])
-_LT_TAGDECL([], [compiler_needs_object], [1],
- [Whether the compiler copes with passing no objects directly])
-_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
- [Create an old-style archive from a shared archive])
-_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
- [Create a temporary old-style archive to link instead of a shared archive])
-_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
-_LT_TAGDECL([], [archive_expsym_cmds], [2])
-_LT_TAGDECL([], [module_cmds], [2],
- [Commands used to build a loadable module if different from building
- a shared archive.])
-_LT_TAGDECL([], [module_expsym_cmds], [2])
-_LT_TAGDECL([], [with_gnu_ld], [1],
- [Whether we are building with GNU ld or not])
-_LT_TAGDECL([], [allow_undefined_flag], [1],
- [Flag that allows shared libraries with undefined symbols to be built])
-_LT_TAGDECL([], [no_undefined_flag], [1],
- [Flag that enforces no undefined symbols])
-_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
- [Flag to hardcode $libdir into a binary during linking.
- This must work even if $libdir does not exist])
-_LT_TAGDECL([], [hardcode_libdir_separator], [1],
- [Whether we need a single "-rpath" flag with a separated argument])
-_LT_TAGDECL([], [hardcode_direct], [0],
- [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
- DIR into the resulting binary])
-_LT_TAGDECL([], [hardcode_direct_absolute], [0],
- [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
- DIR into the resulting binary and the resulting library dependency is
- "absolute", i.e impossible to change by setting $shlibpath_var if the
- library is relocated])
-_LT_TAGDECL([], [hardcode_minus_L], [0],
- [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
- into the resulting binary])
-_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
- [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
- into the resulting binary])
-_LT_TAGDECL([], [hardcode_automatic], [0],
- [Set to "yes" if building a shared library automatically hardcodes DIR
- into the library and all subsequent libraries and executables linked
- against it])
-_LT_TAGDECL([], [inherit_rpath], [0],
- [Set to yes if linker adds runtime paths of dependent libraries
- to runtime path list])
-_LT_TAGDECL([], [link_all_deplibs], [0],
- [Whether libtool must link a program against all its dependency libraries])
-_LT_TAGDECL([], [always_export_symbols], [0],
- [Set to "yes" if exported symbols are required])
-_LT_TAGDECL([], [export_symbols_cmds], [2],
- [The commands to list exported symbols])
-_LT_TAGDECL([], [exclude_expsyms], [1],
- [Symbols that should not be listed in the preloaded symbols])
-_LT_TAGDECL([], [include_expsyms], [1],
- [Symbols that must always be exported])
-_LT_TAGDECL([], [prelink_cmds], [2],
- [Commands necessary for linking programs (against libraries) with templates])
-_LT_TAGDECL([], [postlink_cmds], [2],
- [Commands necessary for finishing linking programs])
-_LT_TAGDECL([], [file_list_spec], [1],
- [Specify filename containing input files])
-dnl FIXME: Not yet implemented
-dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
-dnl [Compiler flag to generate thread safe objects])
-])# _LT_LINKER_SHLIBS
-
-
-# _LT_LANG_C_CONFIG([TAG])
-# ------------------------
-# Ensure that the configuration variables for a C compiler are suitably
-# defined. These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to 'libtool'.
-m4_defun([_LT_LANG_C_CONFIG],
-[m4_require([_LT_DECL_EGREP])dnl
-lt_save_CC=$CC
-AC_LANG_PUSH(C)
-
-# Source file extension for C test sources.
-ac_ext=c
-
-# Object file extension for compiled C test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}'
-
-_LT_TAG_COMPILER
-# Save the default compiler, since it gets overwritten when the other
-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
-compiler_DEFAULT=$CC
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-if test -n "$compiler"; then
- _LT_COMPILER_NO_RTTI($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
- LT_SYS_DLOPEN_SELF
- _LT_CMD_STRIPLIB
-
- # Report what library types will actually be built
- AC_MSG_CHECKING([if libtool supports shared libraries])
- AC_MSG_RESULT([$can_build_shared])
-
- AC_MSG_CHECKING([whether to build shared libraries])
- test no = "$can_build_shared" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test yes = "$enable_shared" && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
-
- aix[[4-9]]*)
- if test ia64 != "$host_cpu"; then
- case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
- yes,aix,yes) ;; # shared object as lib.so file only
- yes,svr4,*) ;; # shared object as lib.so archive member only
- yes,*) enable_static=no ;; # shared object in lib.a archive as well
- esac
- fi
- ;;
- esac
- AC_MSG_RESULT([$enable_shared])
-
- AC_MSG_CHECKING([whether to build static libraries])
- # Make sure either enable_shared or enable_static is yes.
- test yes = "$enable_shared" || enable_static=yes
- AC_MSG_RESULT([$enable_static])
-
- _LT_CONFIG($1)
-fi
-AC_LANG_POP
-CC=$lt_save_CC
-])# _LT_LANG_C_CONFIG
-
-
-# _LT_LANG_CXX_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for a C++ compiler are suitably
-# defined. These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to 'libtool'.
-m4_defun([_LT_LANG_CXX_CONFIG],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_PATH_MANIFEST_TOOL])dnl
-if test -n "$CXX" && ( test no != "$CXX" &&
- ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
- (test g++ != "$CXX"))); then
- AC_PROG_CXXCPP
-else
- _lt_caught_CXX_error=yes
-fi
-
-AC_LANG_PUSH(C++)
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(compiler_needs_object, $1)=no
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for C++ test sources.
-ac_ext=cpp
-
-# Object file extension for compiled C++ test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the CXX compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test yes != "$_lt_caught_CXX_error"; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="int some_variable = 0;"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
- _LT_TAG_COMPILER
-
- # save warnings/boilerplate of simple test code
- _LT_COMPILER_BOILERPLATE
- _LT_LINKER_BOILERPLATE
-
- # Allow CC to be a program name with arguments.
- lt_save_CC=$CC
- lt_save_CFLAGS=$CFLAGS
- lt_save_LD=$LD
- lt_save_GCC=$GCC
- GCC=$GXX
- lt_save_with_gnu_ld=$with_gnu_ld
- lt_save_path_LD=$lt_cv_path_LD
- if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
- lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
- else
- $as_unset lt_cv_prog_gnu_ld
- fi
- if test -n "${lt_cv_path_LDCXX+set}"; then
- lt_cv_path_LD=$lt_cv_path_LDCXX
- else
- $as_unset lt_cv_path_LD
- fi
- test -z "${LDCXX+set}" || LD=$LDCXX
- CC=${CXX-"c++"}
- CFLAGS=$CXXFLAGS
- compiler=$CC
- _LT_TAGVAR(compiler, $1)=$CC
- _LT_CC_BASENAME([$compiler])
-
- if test -n "$compiler"; then
- # We don't want -fno-exception when compiling C++ code, so set the
- # no_builtin_flag separately
- if test yes = "$GXX"; then
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
- else
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
- fi
-
- if test yes = "$GXX"; then
- # Set up default GNU C++ configuration
-
- LT_PATH_LD
-
- # Check if GNU C++ uses GNU ld as the underlying linker, since the
- # archiving commands below assume that GNU ld is being used.
- if test yes = "$with_gnu_ld"; then
- _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
-
- # If archive_cmds runs LD, not CC, wlarc should be empty
- # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
- # investigate it a little bit more. (MM)
- wlarc='$wl'
-
- # ancient GNU ld didn't support --whole-archive et. al.
- if eval "`$CC -print-prog-name=ld` --help 2>&1" |
- $GREP 'no-whole-archive' > /dev/null; then
- _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
- else
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- fi
- else
- with_gnu_ld=no
- wlarc=
-
- # A generic and very simple default shared library creation
- # command for GNU C++ for the case where it uses the native
- # linker, instead of GNU ld. If possible, this setting should
- # overridden to take advantage of the native linker features on
- # the platform it is being used on.
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- fi
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
-
- else
- GXX=no
- with_gnu_ld=no
- wlarc=
- fi
-
- # PORTME: fill in a description of your system's C++ link characteristics
- AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
- _LT_TAGVAR(ld_shlibs, $1)=yes
- case $host_os in
- aix3*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- aix[[4-9]]*)
- if test ia64 = "$host_cpu"; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=
- else
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # have runtime linking enabled, and use it for executables.
- # For shared libraries, we enable/disable runtime linking
- # depending on the kind of the shared library created -
- # when "with_aix_soname,aix_use_runtimelinking" is:
- # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
- # "aix,yes" lib.so shared, rtl:yes, for executables
- # lib.a static archive
- # "both,no" lib.so.V(shr.o) shared, rtl:yes
- # lib.a(lib.so.V) shared, rtl:no, for executables
- # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
- # lib.a(lib.so.V) shared, rtl:no
- # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
- # lib.a static archive
- case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
- for ld_flag in $LDFLAGS; do
- case $ld_flag in
- *-brtl*)
- aix_use_runtimelinking=yes
- break
- ;;
- esac
- done
- if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
- # With aix-soname=svr4, we create the lib.so.V shared archives only,
- # so we don't have lib.a shared libs to link our executables.
- # We have to force runtime linking in this case.
- aix_use_runtimelinking=yes
- LDFLAGS="$LDFLAGS -Wl,-brtl"
- fi
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- _LT_TAGVAR(archive_cmds, $1)=''
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
- case $with_aix_soname,$aix_use_runtimelinking in
- aix,*) ;; # no import file
- svr4,* | *,yes) # use import file
- # The Import File defines what to hardcode.
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=no
- ;;
- esac
-
- if test yes = "$GXX"; then
- case $host_os in aix4.[[012]]|aix4.[[012]].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`$CC -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- _LT_TAGVAR(hardcode_direct, $1)=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=
- fi
- esac
- shared_flag='-shared'
- if test yes = "$aix_use_runtimelinking"; then
- shared_flag=$shared_flag' $wl-G'
- fi
- # Need to ensure runtime linking is disabled for the traditional
- # shared library, or the linker may eventually find shared libraries
- # /with/ Import File - we do not want to mix them.
- shared_flag_aix='-shared'
- shared_flag_svr4='-shared $wl-G'
- else
- # not using gcc
- if test ia64 = "$host_cpu"; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test yes = "$aix_use_runtimelinking"; then
- shared_flag='$wl-G'
- else
- shared_flag='$wl-bM:SRE'
- fi
- shared_flag_aix='$wl-bM:SRE'
- shared_flag_svr4='$wl-G'
- fi
- fi
-
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to
- # export.
- _LT_TAGVAR(always_export_symbols, $1)=yes
- if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- # The "-G" linker flag allows undefined symbols.
- _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
- # Determine the default libpath from the value encoded in an empty
- # executable.
- _LT_SYS_MODULE_PATH_AIX([$1])
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
-
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
- else
- if test ia64 = "$host_cpu"; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
- _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- _LT_SYS_MODULE_PATH_AIX([$1])
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
- _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
- if test yes = "$with_gnu_ld"; then
- # We only use this code for GNU lds that support --whole-archive.
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
- else
- # Exported symbols can be pulled into shared objects from archives
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
- _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
- # -brtl affects multiple linker settings, -berok does not and is overridden later
- compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
- if test svr4 != "$with_aix_soname"; then
- # This is similar to how AIX traditionally builds its shared
- # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
- _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
- fi
- if test aix != "$with_aix_soname"; then
- _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
- else
- # used by -dlpreopen to get the symbols
- _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
- fi
- _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
- fi
- fi
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- chorus*)
- case $cc_basename in
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- case $GXX,$cc_basename in
- ,cl* | no,cl* | ,icl* | no,icl*)
- # Native MSVC or ICC
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='@'
- # Tell ltmain to make .lib files, not .a files.
- libext=lib
- # Tell ltmain to make .dll files, not .so files.
- shrext_cmds=.dll
- # FIXME: Setting linknames here is a bad hack.
- _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
- _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
- cp "$export_symbols" "$output_objdir/$soname.def";
- echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
- else
- $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
- fi~
- $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
- linknames='
- # The linker will not automatically build a static lib if we build a DLL.
- # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- # Don't use ranlib
- _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
- _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
- lt_tool_outputfile="@TOOL_OUTPUT@"~
- case $lt_outputfile in
- *.exe|*.EXE) ;;
- *)
- lt_outputfile=$lt_outputfile.exe
- lt_tool_outputfile=$lt_tool_outputfile.exe
- ;;
- esac~
- func_to_tool_file "$lt_outputfile"~
- if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
- $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
- $RM "$lt_outputfile.manifest";
- fi'
- ;;
- *)
- # g++
- # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
- # as there is no search path for DLLs.
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=no
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file, use it as
- # is; otherwise, prepend EXPORTS...
- _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
- darwin* | rhapsody*)
- _LT_DARWIN_LINKER_FEATURES($1)
- ;;
-
- os2*)
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- shrext_cmds=.dll
- _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
- $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
- $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
- $ECHO EXPORTS >> $output_objdir/$libname.def~
- emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
- $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
- emximp -o $lib $output_objdir/$libname.def'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
- $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
- $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
- $ECHO EXPORTS >> $output_objdir/$libname.def~
- prefix_cmds="$SED"~
- if test EXPORTS = "`$SED 1q $export_symbols`"; then
- prefix_cmds="$prefix_cmds -e 1d";
- fi~
- prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
- cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
- $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
- emximp -o $lib $output_objdir/$libname.def'
- _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='@'
- ;;
-
- dgux*)
- case $cc_basename in
- ec++*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- freebsd2.*)
- # C++ shared libraries reported to be fairly broken before
- # switch to ELF
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- freebsd-elf*)
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- ;;
-
- freebsd* | dragonfly* | midnightbsd*)
- # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
- # conventions
- _LT_TAGVAR(ld_shlibs, $1)=yes
- ;;
-
- haiku*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
-
- hpux9*)
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
- # but as the default
- # location of the library.
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- aCC*)
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
- ;;
- *)
- if test yes = "$GXX"; then
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
- else
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- hpux10*|hpux11*)
- if test no = "$with_gnu_ld"; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- ;;
- *)
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
- ;;
- esac
- fi
- case $host_cpu in
- hppa*64*|ia64*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
- *)
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
- # but as the default
- # location of the library.
- ;;
- esac
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- aCC*)
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
- ;;
- *)
- if test yes = "$GXX"; then
- if test no = "$with_gnu_ld"; then
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- fi
- else
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- interix[[3-9]]*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
- irix5* | irix6*)
- case $cc_basename in
- CC*)
- # SGI C++
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
-
- # Archives containing C++ object files must be created using
- # "CC -ar", where "CC" is the IRIX C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
- ;;
- *)
- if test yes = "$GXX"; then
- if test no = "$with_gnu_ld"; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib'
- fi
- fi
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
- esac
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(inherit_rpath, $1)=yes
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
-
- # Archives containing C++ object files must be created using
- # "CC -Bstatic", where "CC" is the KAI C++ compiler.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
- ;;
- icpc* | ecpc* )
- # Intel C++
- with_gnu_ld=yes
- # version 8.0 and above of icpc choke on multiply defined symbols
- # if we add $predep_objects and $postdep_objects, however 7.1 and
- # earlier do not add the objects themselves.
- case `$CC -V 2>&1` in
- *"Version 7."*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- *) # Version 8.0 or newer
- tmp_idyn=
- case $host_cpu in
- ia64*) tmp_idyn=' -i_dynamic';;
- esac
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- esac
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- case `$CC -V` in
- *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
- _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
- compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
- _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
- $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
- $RANLIB $oldlib'
- _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- *) # Version 6 and above use weak symbols
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- esac
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
- ;;
- cxx*)
- # Compaq C++
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols'
-
- runpath_var=LD_RUN_PATH
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
- ;;
- xl* | mpixl* | bgxl*)
- # IBM XL 8.0 on PPC, with GNU ld
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
- _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
- if test yes = "$supports_anon_versioning"; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
- fi
- ;;
- *)
- case `$CC -V 2>&1 | $SED 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
- _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
- _LT_TAGVAR(compiler_needs_object, $1)=yes
-
- # Not sure whether something based on
- # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
- # would be better.
- output_verbose_link_cmd='func_echo_all'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
- ;;
- esac
- ;;
- esac
- ;;
-
- lynxos*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- m88k*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- mvs*)
- case $cc_basename in
- cxx*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
- wlarc=
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- fi
- # Workaround some broken pre-1.5 toolchains
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
- ;;
-
- *nto* | *qnx*)
- _LT_TAGVAR(ld_shlibs, $1)=yes
- ;;
-
- openbsd* | bitrig*)
- if test -f /usr/libexec/ld.so; then
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
- if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
- _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
- fi
- output_verbose_link_cmd=func_echo_all
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Archives containing C++ object files must be created using
- # the KAI C++ compiler.
- case $host in
- osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
- *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
- esac
- ;;
- RCC*)
- # Rational C++ 2.4.1
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- cxx*)
- case $host in
- osf3*)
- _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- ;;
- *)
- _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
- echo "-hidden">> $lib.exp~
- $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~
- $RM $lib.exp'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
- ;;
- esac
-
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
- ;;
- *)
- if test yes,no = "$GXX,$with_gnu_ld"; then
- _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
- case $host in
- osf3*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
- ;;
- esac
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
-
- else
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- psos*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- lcc*)
- # Lucid
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- solaris*)
- case $cc_basename in
- CC* | sunCC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
- _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
- _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- case $host_os in
- solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands '-z linker_flag'.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
- ;;
- esac
- _LT_TAGVAR(link_all_deplibs, $1)=yes
-
- output_verbose_link_cmd='func_echo_all'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
- ;;
- gcx*)
- # Green Hills C++ Compiler
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
-
- # The C++ compiler must be used to create the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
- ;;
- *)
- # GNU C++ compiler with Solaris linker
- if test yes,no = "$GXX,$with_gnu_ld"; then
- _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
- if $CC --version | $GREP -v '^2\.7' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
- else
- # g++ 2.7 appears to require '-G' NOT '-shared' on this
- # platform.
- _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
- fi
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
- case $host_os in
- solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
- *)
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
- ;;
- esac
- fi
- ;;
- esac
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
- _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We CANNOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
- _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
- '"$_LT_TAGVAR(old_archive_cmds, $1)"
- _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
- '"$_LT_TAGVAR(reload_cmds, $1)"
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- vxworks*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
-
- AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
- test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
-
- _LT_TAGVAR(GCC, $1)=$GXX
- _LT_TAGVAR(LD, $1)=$LD
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- _LT_SYS_HIDDEN_LIBDEPS($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
- fi # test -n "$compiler"
-
- CC=$lt_save_CC
- CFLAGS=$lt_save_CFLAGS
- LDCXX=$LD
- LD=$lt_save_LD
- GCC=$lt_save_GCC
- with_gnu_ld=$lt_save_with_gnu_ld
- lt_cv_path_LDCXX=$lt_cv_path_LD
- lt_cv_path_LD=$lt_save_path_LD
- lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
- lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
-fi # test yes != "$_lt_caught_CXX_error"
-
-AC_LANG_POP
-])# _LT_LANG_CXX_CONFIG
-
-
-# _LT_FUNC_STRIPNAME_CNF
-# ----------------------
-# func_stripname_cnf prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-#
-# This function is identical to the (non-XSI) version of func_stripname,
-# except this one can be used by m4 code that may be executed by configure,
-# rather than the libtool script.
-m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
-AC_REQUIRE([_LT_DECL_SED])
-AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
-func_stripname_cnf ()
-{
- case @S|@2 in
- .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
- *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
- esac
-} # func_stripname_cnf
-])# _LT_FUNC_STRIPNAME_CNF
-
-
-# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
-# ---------------------------------
-# Figure out "hidden" library dependencies from verbose
-# compiler output when linking a shared library.
-# Parse the compiler output and extract the necessary
-# objects, libraries and library flags.
-m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
-# Dependencies to place before and after the object being linked:
-_LT_TAGVAR(predep_objects, $1)=
-_LT_TAGVAR(postdep_objects, $1)=
-_LT_TAGVAR(predeps, $1)=
-_LT_TAGVAR(postdeps, $1)=
-_LT_TAGVAR(compiler_lib_search_path, $1)=
-
-dnl we can't use the lt_simple_compile_test_code here,
-dnl because it contains code intended for an executable,
-dnl not a library. It's possible we should let each
-dnl tag define a new lt_????_link_test_code variable,
-dnl but it's only used here...
-m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
-int a;
-void foo (void) { a = 0; }
-_LT_EOF
-], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
-class Foo
-{
-public:
- Foo (void) { a = 0; }
-private:
- int a;
-};
-_LT_EOF
-], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
- subroutine foo
- implicit none
- integer*4 a
- a=0
- return
- end
-_LT_EOF
-], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
- subroutine foo
- implicit none
- integer a
- a=0
- return
- end
-_LT_EOF
-], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
-public class foo {
- private int a;
- public void bar (void) {
- a = 0;
- }
-};
-_LT_EOF
-], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
-package foo
-func foo() {
-}
-_LT_EOF
-])
-
-_lt_libdeps_save_CFLAGS=$CFLAGS
-case "$CC $CFLAGS " in #(
-*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
-*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
-*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
-esac
-
-dnl Parse the compiler output and extract the necessary
-dnl objects, libraries and library flags.
-if AC_TRY_EVAL(ac_compile); then
- # Parse the compiler output and extract the necessary
- # objects, libraries and library flags.
-
- # Sentinel used to keep track of whether or not we are before
- # the conftest object file.
- pre_test_object_deps_done=no
-
- for p in `eval "$output_verbose_link_cmd"`; do
- case $prev$p in
-
- -L* | -R* | -l*)
- # Some compilers place space between "-{L,R}" and the path.
- # Remove the space.
- if test x-L = "$p" ||
- test x-R = "$p"; then
- prev=$p
- continue
- fi
-
- # Expand the sysroot to ease extracting the directories later.
- if test -z "$prev"; then
- case $p in
- -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
- -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
- -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
- esac
- fi
- case $p in
- =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
- esac
- if test no = "$pre_test_object_deps_done"; then
- case $prev in
- -L | -R)
- # Internal compiler library paths should come after those
- # provided the user. The postdeps already come after the
- # user supplied libs so there is no need to process them.
- if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
- _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
- else
- _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
- fi
- ;;
- # The "-l" case would never come before the object being
- # linked, so don't bother handling this case.
- esac
- else
- if test -z "$_LT_TAGVAR(postdeps, $1)"; then
- _LT_TAGVAR(postdeps, $1)=$prev$p
- else
- _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
- fi
- fi
- prev=
- ;;
-
- *.lto.$objext) ;; # Ignore GCC LTO objects
- *.$objext)
- # This assumes that the test object file only shows up
- # once in the compiler output.
- if test "$p" = "conftest.$objext"; then
- pre_test_object_deps_done=yes
- continue
- fi
-
- if test no = "$pre_test_object_deps_done"; then
- if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
- _LT_TAGVAR(predep_objects, $1)=$p
- else
- _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
- fi
- else
- if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
- _LT_TAGVAR(postdep_objects, $1)=$p
- else
- _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
- fi
- fi
- ;;
-
- *) ;; # Ignore the rest.
-
- esac
- done
-
- # Clean up.
- rm -f a.out a.exe
-else
- echo "libtool.m4: error: problem compiling $1 test program"
-fi
-
-$RM -f confest.$objext
-CFLAGS=$_lt_libdeps_save_CFLAGS
-
-# PORTME: override above test on systems where it is broken
-m4_if([$1], [CXX],
-[case $host_os in
-interix[[3-9]]*)
- # Interix 3.5 installs completely hosed .la files for C++, so rather than
- # hack all around it, let's just trust "g++" to DTRT.
- _LT_TAGVAR(predep_objects,$1)=
- _LT_TAGVAR(postdep_objects,$1)=
- _LT_TAGVAR(postdeps,$1)=
- ;;
-esac
-])
-
-case " $_LT_TAGVAR(postdeps, $1) " in
-*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
-esac
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=
-if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
-fi
-_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
- [The directories searched by this compiler when creating a shared library])
-_LT_TAGDECL([], [predep_objects], [1],
- [Dependencies to place before and after the objects being linked to
- create a shared library])
-_LT_TAGDECL([], [postdep_objects], [1])
-_LT_TAGDECL([], [predeps], [1])
-_LT_TAGDECL([], [postdeps], [1])
-_LT_TAGDECL([], [compiler_lib_search_path], [1],
- [The library search path used internally by the compiler when linking
- a shared library])
-])# _LT_SYS_HIDDEN_LIBDEPS
-
-
-# _LT_LANG_F77_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for a Fortran 77 compiler are
-# suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to 'libtool'.
-m4_defun([_LT_LANG_F77_CONFIG],
-[AC_LANG_PUSH(Fortran 77)
-if test -z "$F77" || test no = "$F77"; then
- _lt_disable_F77=yes
-fi
-
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for f77 test sources.
-ac_ext=f
-
-# Object file extension for compiled f77 test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the F77 compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test yes != "$_lt_disable_F77"; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="\
- subroutine t
- return
- end
-"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code="\
- program t
- end
-"
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
- _LT_TAG_COMPILER
-
- # save warnings/boilerplate of simple test code
- _LT_COMPILER_BOILERPLATE
- _LT_LINKER_BOILERPLATE
-
- # Allow CC to be a program name with arguments.
- lt_save_CC=$CC
- lt_save_GCC=$GCC
- lt_save_CFLAGS=$CFLAGS
- CC=${F77-"f77"}
- CFLAGS=$FFLAGS
- compiler=$CC
- _LT_TAGVAR(compiler, $1)=$CC
- _LT_CC_BASENAME([$compiler])
- GCC=$G77
- if test -n "$compiler"; then
- AC_MSG_CHECKING([if libtool supports shared libraries])
- AC_MSG_RESULT([$can_build_shared])
-
- AC_MSG_CHECKING([whether to build shared libraries])
- test no = "$can_build_shared" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test yes = "$enable_shared" && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
- aix[[4-9]]*)
- if test ia64 != "$host_cpu"; then
- case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
- yes,aix,yes) ;; # shared object as lib.so file only
- yes,svr4,*) ;; # shared object as lib.so archive member only
- yes,*) enable_static=no ;; # shared object in lib.a archive as well
- esac
- fi
- ;;
- esac
- AC_MSG_RESULT([$enable_shared])
-
- AC_MSG_CHECKING([whether to build static libraries])
- # Make sure either enable_shared or enable_static is yes.
- test yes = "$enable_shared" || enable_static=yes
- AC_MSG_RESULT([$enable_static])
-
- _LT_TAGVAR(GCC, $1)=$G77
- _LT_TAGVAR(LD, $1)=$LD
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
- fi # test -n "$compiler"
-
- GCC=$lt_save_GCC
- CC=$lt_save_CC
- CFLAGS=$lt_save_CFLAGS
-fi # test yes != "$_lt_disable_F77"
-
-AC_LANG_POP
-])# _LT_LANG_F77_CONFIG
-
-
-# _LT_LANG_FC_CONFIG([TAG])
-# -------------------------
-# Ensure that the configuration variables for a Fortran compiler are
-# suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to 'libtool'.
-m4_defun([_LT_LANG_FC_CONFIG],
-[AC_LANG_PUSH(Fortran)
-
-if test -z "$FC" || test no = "$FC"; then
- _lt_disable_FC=yes
-fi
-
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for fc test sources.
-ac_ext=${ac_fc_srcext-f}
-
-# Object file extension for compiled fc test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the FC compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test yes != "$_lt_disable_FC"; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="\
- subroutine t
- return
- end
-"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code="\
- program t
- end
-"
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
- _LT_TAG_COMPILER
-
- # save warnings/boilerplate of simple test code
- _LT_COMPILER_BOILERPLATE
- _LT_LINKER_BOILERPLATE
-
- # Allow CC to be a program name with arguments.
- lt_save_CC=$CC
- lt_save_GCC=$GCC
- lt_save_CFLAGS=$CFLAGS
- CC=${FC-"f95"}
- CFLAGS=$FCFLAGS
- compiler=$CC
- GCC=$ac_cv_fc_compiler_gnu
-
- _LT_TAGVAR(compiler, $1)=$CC
- _LT_CC_BASENAME([$compiler])
-
- if test -n "$compiler"; then
- AC_MSG_CHECKING([if libtool supports shared libraries])
- AC_MSG_RESULT([$can_build_shared])
-
- AC_MSG_CHECKING([whether to build shared libraries])
- test no = "$can_build_shared" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test yes = "$enable_shared" && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
- aix[[4-9]]*)
- if test ia64 != "$host_cpu"; then
- case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
- yes,aix,yes) ;; # shared object as lib.so file only
- yes,svr4,*) ;; # shared object as lib.so archive member only
- yes,*) enable_static=no ;; # shared object in lib.a archive as well
- esac
- fi
- ;;
- esac
- AC_MSG_RESULT([$enable_shared])
-
- AC_MSG_CHECKING([whether to build static libraries])
- # Make sure either enable_shared or enable_static is yes.
- test yes = "$enable_shared" || enable_static=yes
- AC_MSG_RESULT([$enable_static])
-
- _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
- _LT_TAGVAR(LD, $1)=$LD
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- _LT_SYS_HIDDEN_LIBDEPS($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
- fi # test -n "$compiler"
-
- GCC=$lt_save_GCC
- CC=$lt_save_CC
- CFLAGS=$lt_save_CFLAGS
-fi # test yes != "$_lt_disable_FC"
-
-AC_LANG_POP
-])# _LT_LANG_FC_CONFIG
-
-
-# _LT_LANG_GCJ_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for the GNU Java Compiler compiler
-# are suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to 'libtool'.
-m4_defun([_LT_LANG_GCJ_CONFIG],
-[AC_REQUIRE([LT_PROG_GCJ])dnl
-AC_LANG_SAVE
-
-# Source file extension for Java test sources.
-ac_ext=java
-
-# Object file extension for compiled Java test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="class foo {}"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC=$CC
-lt_save_CFLAGS=$CFLAGS
-lt_save_GCC=$GCC
-GCC=yes
-CC=${GCJ-"gcj"}
-CFLAGS=$GCJFLAGS
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_TAGVAR(LD, $1)=$LD
-_LT_CC_BASENAME([$compiler])
-
-# GCJ did not exist at the time GCC didn't implicitly link libc in.
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-
-if test -n "$compiler"; then
- _LT_COMPILER_NO_RTTI($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
-fi
-
-AC_LANG_RESTORE
-
-GCC=$lt_save_GCC
-CC=$lt_save_CC
-CFLAGS=$lt_save_CFLAGS
-])# _LT_LANG_GCJ_CONFIG
-
-
-# _LT_LANG_GO_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for the GNU Go compiler
-# are suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to 'libtool'.
-m4_defun([_LT_LANG_GO_CONFIG],
-[AC_REQUIRE([LT_PROG_GO])dnl
-AC_LANG_SAVE
-
-# Source file extension for Go test sources.
-ac_ext=go
-
-# Object file extension for compiled Go test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="package main; func main() { }"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='package main; func main() { }'
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC=$CC
-lt_save_CFLAGS=$CFLAGS
-lt_save_GCC=$GCC
-GCC=yes
-CC=${GOC-"gccgo"}
-CFLAGS=$GOFLAGS
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_TAGVAR(LD, $1)=$LD
-_LT_CC_BASENAME([$compiler])
-
-# Go did not exist at the time GCC didn't implicitly link libc in.
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-
-if test -n "$compiler"; then
- _LT_COMPILER_NO_RTTI($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
-fi
-
-AC_LANG_RESTORE
-
-GCC=$lt_save_GCC
-CC=$lt_save_CC
-CFLAGS=$lt_save_CFLAGS
-])# _LT_LANG_GO_CONFIG
-
-
-# _LT_LANG_RC_CONFIG([TAG])
-# -------------------------
-# Ensure that the configuration variables for the Windows resource compiler
-# are suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to 'libtool'.
-m4_defun([_LT_LANG_RC_CONFIG],
-[AC_REQUIRE([LT_PROG_RC])dnl
-AC_LANG_SAVE
-
-# Source file extension for RC test sources.
-ac_ext=rc
-
-# Object file extension for compiled RC test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
-
-# Code to be used in simple link tests
-lt_simple_link_test_code=$lt_simple_compile_test_code
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC=$CC
-lt_save_CFLAGS=$CFLAGS
-lt_save_GCC=$GCC
-GCC=
-CC=${RC-"windres"}
-CFLAGS=
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_CC_BASENAME([$compiler])
-_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
-
-if test -n "$compiler"; then
- :
- _LT_CONFIG($1)
-fi
-
-GCC=$lt_save_GCC
-AC_LANG_RESTORE
-CC=$lt_save_CC
-CFLAGS=$lt_save_CFLAGS
-])# _LT_LANG_RC_CONFIG
-
-
-# LT_PROG_GCJ
-# -----------
-AC_DEFUN([LT_PROG_GCJ],
-[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
- [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
- [AC_CHECK_TOOL(GCJ, gcj,)
- test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
- AC_SUBST(GCJFLAGS)])])[]dnl
-])
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
-
-
-# LT_PROG_GO
-# ----------
-AC_DEFUN([LT_PROG_GO],
-[AC_CHECK_TOOL(GOC, gccgo,)
-])
-
-
-# LT_PROG_RC
-# ----------
-AC_DEFUN([LT_PROG_RC],
-[AC_CHECK_TOOL(RC, windres,)
-])
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_RC], [])
-
-
-# _LT_DECL_EGREP
-# --------------
-# If we don't have a new enough Autoconf to choose the best grep
-# available, choose the one first in the user's PATH.
-m4_defun([_LT_DECL_EGREP],
-[AC_REQUIRE([AC_PROG_EGREP])dnl
-AC_REQUIRE([AC_PROG_FGREP])dnl
-test -z "$GREP" && GREP=grep
-_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
-_LT_DECL([], [EGREP], [1], [An ERE matcher])
-_LT_DECL([], [FGREP], [1], [A literal string matcher])
-dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
-AC_SUBST([GREP])
-])
-
-
-# _LT_DECL_OBJDUMP
-# --------------
-# If we don't have a new enough Autoconf to choose the best objdump
-# available, choose the one first in the user's PATH.
-m4_defun([_LT_DECL_OBJDUMP],
-[AC_CHECK_TOOL(OBJDUMP, objdump, false)
-test -z "$OBJDUMP" && OBJDUMP=objdump
-_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
-AC_SUBST([OBJDUMP])
-])
-
-# _LT_DECL_DLLTOOL
-# ----------------
-# Ensure DLLTOOL variable is set.
-m4_defun([_LT_DECL_DLLTOOL],
-[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
-AC_SUBST([DLLTOOL])
-])
-
-# _LT_DECL_FILECMD
-# ----------------
-# Check for a file(cmd) program that can be used to detect file type and magic
-m4_defun([_LT_DECL_FILECMD],
-[AC_CHECK_TOOL([FILECMD], [file], [:])
-_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types])
-])# _LD_DECL_FILECMD
-
-# _LT_DECL_SED
-# ------------
-# Check for a fully-functional sed program, that truncates
-# as few characters as possible. Prefer GNU sed if found.
-m4_defun([_LT_DECL_SED],
-[AC_PROG_SED
-test -z "$SED" && SED=sed
-Xsed="$SED -e 1s/^X//"
-_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
-_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
- [Sed that helps us avoid accidentally triggering echo(1) options like -n])
-])# _LT_DECL_SED
-
-m4_ifndef([AC_PROG_SED], [
-# NOTE: This macro has been submitted for inclusion into #
-# GNU Autoconf as AC_PROG_SED. When it is available in #
-# a released version of Autoconf we should remove this #
-# macro and use it instead. #
-
-m4_defun([AC_PROG_SED],
-[AC_MSG_CHECKING([for a sed that does not truncate output])
-AC_CACHE_VAL(lt_cv_path_SED,
-[# Loop through the user's path and test for sed and gsed.
-# Then use that list of sed's as ones to test for truncation.
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for lt_ac_prog in sed gsed; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
- lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
- fi
- done
- done
-done
-IFS=$as_save_IFS
-lt_ac_max=0
-lt_ac_count=0
-# Add /usr/xpg4/bin/sed as it is typically found on Solaris
-# along with /bin/sed that truncates output.
-for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
- test ! -f "$lt_ac_sed" && continue
- cat /dev/null > conftest.in
- lt_ac_count=0
- echo $ECHO_N "0123456789$ECHO_C" >conftest.in
- # Check for GNU sed and select it if it is found.
- if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
- lt_cv_path_SED=$lt_ac_sed
- break
- fi
- while true; do
- cat conftest.in conftest.in >conftest.tmp
- mv conftest.tmp conftest.in
- cp conftest.in conftest.nl
- echo >>conftest.nl
- $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
- cmp -s conftest.out conftest.nl || break
- # 10000 chars as input seems more than enough
- test 10 -lt "$lt_ac_count" && break
- lt_ac_count=`expr $lt_ac_count + 1`
- if test "$lt_ac_count" -gt "$lt_ac_max"; then
- lt_ac_max=$lt_ac_count
- lt_cv_path_SED=$lt_ac_sed
- fi
- done
-done
-])
-SED=$lt_cv_path_SED
-AC_SUBST([SED])
-AC_MSG_RESULT([$SED])
-])#AC_PROG_SED
-])#m4_ifndef
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_SED], [])
-
-
-# _LT_CHECK_SHELL_FEATURES
-# ------------------------
-# Find out whether the shell is Bourne or XSI compatible,
-# or has some other useful features.
-m4_defun([_LT_CHECK_SHELL_FEATURES],
-[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- lt_unset=unset
-else
- lt_unset=false
-fi
-_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
-
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
- # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
- lt_SP2NL='tr \040 \012'
- lt_NL2SP='tr \015\012 \040\040'
- ;;
- *) # EBCDIC based system
- lt_SP2NL='tr \100 \n'
- lt_NL2SP='tr \r\n \100\100'
- ;;
-esac
-_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
-_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
-])# _LT_CHECK_SHELL_FEATURES
-
-
-# _LT_PATH_CONVERSION_FUNCTIONS
-# -----------------------------
-# Determine what file name conversion functions should be used by
-# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
-# for certain cross-compile configurations and native mingw.
-m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-AC_MSG_CHECKING([how to convert $build file names to $host format])
-AC_CACHE_VAL(lt_cv_to_host_file_cmd,
-[case $host in
- *-*-mingw* )
- case $build in
- *-*-mingw* ) # actually msys
- lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
- ;;
- *-*-cygwin* )
- lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
- ;;
- * ) # otherwise, assume *nix
- lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
- ;;
- esac
- ;;
- *-*-cygwin* )
- case $build in
- *-*-mingw* ) # actually msys
- lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
- ;;
- *-*-cygwin* )
- lt_cv_to_host_file_cmd=func_convert_file_noop
- ;;
- * ) # otherwise, assume *nix
- lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
- ;;
- esac
- ;;
- * ) # unhandled hosts (and "normal" native builds)
- lt_cv_to_host_file_cmd=func_convert_file_noop
- ;;
-esac
-])
-to_host_file_cmd=$lt_cv_to_host_file_cmd
-AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
-_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
- [0], [convert $build file names to $host format])dnl
-
-AC_MSG_CHECKING([how to convert $build file names to toolchain format])
-AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
-[#assume ordinary cross tools, or native build.
-lt_cv_to_tool_file_cmd=func_convert_file_noop
-case $host in
- *-*-mingw* )
- case $build in
- *-*-mingw* ) # actually msys
- lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
- ;;
- esac
- ;;
-esac
-])
-to_tool_file_cmd=$lt_cv_to_tool_file_cmd
-AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
-_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
- [0], [convert $build files to toolchain format])dnl
-])# _LT_PATH_CONVERSION_FUNCTIONS
-
-# Helper functions for option handling. -*- Autoconf -*-
-#
-# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free
-# Software Foundation, Inc.
-# Written by Gary V. Vaughan, 2004
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# serial 8 ltoptions.m4
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
-
-
-# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
-# ------------------------------------------
-m4_define([_LT_MANGLE_OPTION],
-[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
-
-
-# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
-# ---------------------------------------
-# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
-# matching handler defined, dispatch to it. Other OPTION-NAMEs are
-# saved as a flag.
-m4_define([_LT_SET_OPTION],
-[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
-m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
- _LT_MANGLE_DEFUN([$1], [$2]),
- [m4_warning([Unknown $1 option '$2'])])[]dnl
-])
-
-
-# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
-# ------------------------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-m4_define([_LT_IF_OPTION],
-[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
-
-
-# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
-# -------------------------------------------------------
-# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
-# are set.
-m4_define([_LT_UNLESS_OPTIONS],
-[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
- [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
- [m4_define([$0_found])])])[]dnl
-m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
-])[]dnl
-])
-
-
-# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
-# ----------------------------------------
-# OPTION-LIST is a space-separated list of Libtool options associated
-# with MACRO-NAME. If any OPTION has a matching handler declared with
-# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
-# the unknown option and exit.
-m4_defun([_LT_SET_OPTIONS],
-[# Set options
-m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
- [_LT_SET_OPTION([$1], _LT_Option)])
-
-m4_if([$1],[LT_INIT],[
- dnl
- dnl Simply set some default values (i.e off) if boolean options were not
- dnl specified:
- _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
- ])
- _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
- ])
- dnl
- dnl If no reference was made to various pairs of opposing options, then
- dnl we run the default mode handler for the pair. For example, if neither
- dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
- dnl archives by default:
- _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
- _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
- _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
- _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
- [_LT_ENABLE_FAST_INSTALL])
- _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
- [_LT_WITH_AIX_SONAME([aix])])
- ])
-])# _LT_SET_OPTIONS
-
-
-
-# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
-# -----------------------------------------
-m4_define([_LT_MANGLE_DEFUN],
-[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
-
-
-# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
-# -----------------------------------------------
-m4_define([LT_OPTION_DEFINE],
-[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
-])# LT_OPTION_DEFINE
-
-
-# dlopen
-# ------
-LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
-])
-
-AU_DEFUN([AC_LIBTOOL_DLOPEN],
-[_LT_SET_OPTION([LT_INIT], [dlopen])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the 'dlopen' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
-
-
-# win32-dll
-# ---------
-# Declare package support for building win32 dll's.
-LT_OPTION_DEFINE([LT_INIT], [win32-dll],
-[enable_win32_dll=yes
-
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
- AC_CHECK_TOOL(AS, as, false)
- AC_CHECK_TOOL(DLLTOOL, dlltool, false)
- AC_CHECK_TOOL(OBJDUMP, objdump, false)
- ;;
-esac
-
-test -z "$AS" && AS=as
-_LT_DECL([], [AS], [1], [Assembler program])dnl
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
-])# win32-dll
-
-AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-_LT_SET_OPTION([LT_INIT], [win32-dll])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the 'win32-dll' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
-
-
-# _LT_ENABLE_SHARED([DEFAULT])
-# ----------------------------
-# implement the --enable-shared flag, and supports the 'shared' and
-# 'disable-shared' LT_INIT options.
-# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
-m4_define([_LT_ENABLE_SHARED],
-[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([shared],
- [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
- [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
- [p=${PACKAGE-default}
- case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
- *)
- enable_shared=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
- for pkg in $enableval; do
- IFS=$lt_save_ifs
- if test "X$pkg" = "X$p"; then
- enable_shared=yes
- fi
- done
- IFS=$lt_save_ifs
- ;;
- esac],
- [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
-
- _LT_DECL([build_libtool_libs], [enable_shared], [0],
- [Whether or not to build shared libraries])
-])# _LT_ENABLE_SHARED
-
-LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
-
-# Old names:
-AC_DEFUN([AC_ENABLE_SHARED],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
-])
-
-AC_DEFUN([AC_DISABLE_SHARED],
-[_LT_SET_OPTION([LT_INIT], [disable-shared])
-])
-
-AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
-AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_ENABLE_SHARED], [])
-dnl AC_DEFUN([AM_DISABLE_SHARED], [])
-
-
-
-# _LT_ENABLE_STATIC([DEFAULT])
-# ----------------------------
-# implement the --enable-static flag, and support the 'static' and
-# 'disable-static' LT_INIT options.
-# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
-m4_define([_LT_ENABLE_STATIC],
-[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([static],
- [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
- [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
- [p=${PACKAGE-default}
- case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
- *)
- enable_static=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
- for pkg in $enableval; do
- IFS=$lt_save_ifs
- if test "X$pkg" = "X$p"; then
- enable_static=yes
- fi
- done
- IFS=$lt_save_ifs
- ;;
- esac],
- [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
-
- _LT_DECL([build_old_libs], [enable_static], [0],
- [Whether or not to build static libraries])
-])# _LT_ENABLE_STATIC
-
-LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
-
-# Old names:
-AC_DEFUN([AC_ENABLE_STATIC],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
-])
-
-AC_DEFUN([AC_DISABLE_STATIC],
-[_LT_SET_OPTION([LT_INIT], [disable-static])
-])
-
-AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
-AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_ENABLE_STATIC], [])
-dnl AC_DEFUN([AM_DISABLE_STATIC], [])
-
-
-
-# _LT_ENABLE_FAST_INSTALL([DEFAULT])
-# ----------------------------------
-# implement the --enable-fast-install flag, and support the 'fast-install'
-# and 'disable-fast-install' LT_INIT options.
-# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
-m4_define([_LT_ENABLE_FAST_INSTALL],
-[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([fast-install],
- [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
- [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
- [p=${PACKAGE-default}
- case $enableval in
- yes) enable_fast_install=yes ;;
- no) enable_fast_install=no ;;
- *)
- enable_fast_install=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
- for pkg in $enableval; do
- IFS=$lt_save_ifs
- if test "X$pkg" = "X$p"; then
- enable_fast_install=yes
- fi
- done
- IFS=$lt_save_ifs
- ;;
- esac],
- [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
-
-_LT_DECL([fast_install], [enable_fast_install], [0],
- [Whether or not to optimize for fast installation])dnl
-])# _LT_ENABLE_FAST_INSTALL
-
-LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
-
-# Old names:
-AU_DEFUN([AC_ENABLE_FAST_INSTALL],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the 'fast-install' option into LT_INIT's first parameter.])
-])
-
-AU_DEFUN([AC_DISABLE_FAST_INSTALL],
-[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the 'disable-fast-install' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
-dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
-
-
-# _LT_WITH_AIX_SONAME([DEFAULT])
-# ----------------------------------
-# implement the --with-aix-soname flag, and support the `aix-soname=aix'
-# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
-# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
-m4_define([_LT_WITH_AIX_SONAME],
-[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
-shared_archive_member_spec=
-case $host,$enable_shared in
-power*-*-aix[[5-9]]*,yes)
- AC_MSG_CHECKING([which variant of shared library versioning to provide])
- AC_ARG_WITH([aix-soname],
- [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
- [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
- [case $withval in
- aix|svr4|both)
- ;;
- *)
- AC_MSG_ERROR([Unknown argument to --with-aix-soname])
- ;;
- esac
- lt_cv_with_aix_soname=$with_aix_soname],
- [AC_CACHE_VAL([lt_cv_with_aix_soname],
- [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
- with_aix_soname=$lt_cv_with_aix_soname])
- AC_MSG_RESULT([$with_aix_soname])
- if test aix != "$with_aix_soname"; then
- # For the AIX way of multilib, we name the shared archive member
- # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
- # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
- # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
- # the AIX toolchain works better with OBJECT_MODE set (default 32).
- if test 64 = "${OBJECT_MODE-32}"; then
- shared_archive_member_spec=shr_64
- else
- shared_archive_member_spec=shr
- fi
- fi
- ;;
-*)
- with_aix_soname=aix
- ;;
-esac
-
-_LT_DECL([], [shared_archive_member_spec], [0],
- [Shared archive member basename, for filename based shared library versioning on AIX])dnl
-])# _LT_WITH_AIX_SONAME
-
-LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
-LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
-LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
-
-
-# _LT_WITH_PIC([MODE])
-# --------------------
-# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
-# LT_INIT options.
-# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
-m4_define([_LT_WITH_PIC],
-[AC_ARG_WITH([pic],
- [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
- [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
- [lt_p=${PACKAGE-default}
- case $withval in
- yes|no) pic_mode=$withval ;;
- *)
- pic_mode=default
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
- for lt_pkg in $withval; do
- IFS=$lt_save_ifs
- if test "X$lt_pkg" = "X$lt_p"; then
- pic_mode=yes
- fi
- done
- IFS=$lt_save_ifs
- ;;
- esac],
- [pic_mode=m4_default([$1], [default])])
-
-_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
-])# _LT_WITH_PIC
-
-LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
-LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
-
-# Old name:
-AU_DEFUN([AC_LIBTOOL_PICMODE],
-[_LT_SET_OPTION([LT_INIT], [pic-only])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the 'pic-only' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
-
-
-m4_define([_LTDL_MODE], [])
-LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
- [m4_define([_LTDL_MODE], [nonrecursive])])
-LT_OPTION_DEFINE([LTDL_INIT], [recursive],
- [m4_define([_LTDL_MODE], [recursive])])
-LT_OPTION_DEFINE([LTDL_INIT], [subproject],
- [m4_define([_LTDL_MODE], [subproject])])
-
-m4_define([_LTDL_TYPE], [])
-LT_OPTION_DEFINE([LTDL_INIT], [installable],
- [m4_define([_LTDL_TYPE], [installable])])
-LT_OPTION_DEFINE([LTDL_INIT], [convenience],
- [m4_define([_LTDL_TYPE], [convenience])])
-
-# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
-#
-# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software
-# Foundation, Inc.
-# Written by Gary V. Vaughan, 2004
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# serial 6 ltsugar.m4
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
-
-
-# lt_join(SEP, ARG1, [ARG2...])
-# -----------------------------
-# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
-# associated separator.
-# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
-# versions in m4sugar had bugs.
-m4_define([lt_join],
-[m4_if([$#], [1], [],
- [$#], [2], [[$2]],
- [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
-m4_define([_lt_join],
-[m4_if([$#$2], [2], [],
- [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
-
-
-# lt_car(LIST)
-# lt_cdr(LIST)
-# ------------
-# Manipulate m4 lists.
-# These macros are necessary as long as will still need to support
-# Autoconf-2.59, which quotes differently.
-m4_define([lt_car], [[$1]])
-m4_define([lt_cdr],
-[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
- [$#], 1, [],
- [m4_dquote(m4_shift($@))])])
-m4_define([lt_unquote], $1)
-
-
-# lt_append(MACRO-NAME, STRING, [SEPARATOR])
-# ------------------------------------------
-# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
-# Note that neither SEPARATOR nor STRING are expanded; they are appended
-# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
-# No SEPARATOR is output if MACRO-NAME was previously undefined (different
-# than defined and empty).
-#
-# This macro is needed until we can rely on Autoconf 2.62, since earlier
-# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
-m4_define([lt_append],
-[m4_define([$1],
- m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
-
-
-
-# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
-# ----------------------------------------------------------
-# Produce a SEP delimited list of all paired combinations of elements of
-# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
-# has the form PREFIXmINFIXSUFFIXn.
-# Needed until we can rely on m4_combine added in Autoconf 2.62.
-m4_define([lt_combine],
-[m4_if(m4_eval([$# > 3]), [1],
- [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
-[[m4_foreach([_Lt_prefix], [$2],
- [m4_foreach([_Lt_suffix],
- ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
- [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
-
-
-# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
-# -----------------------------------------------------------------------
-# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
-# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
-m4_define([lt_if_append_uniq],
-[m4_ifdef([$1],
- [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
- [lt_append([$1], [$2], [$3])$4],
- [$5])],
- [lt_append([$1], [$2], [$3])$4])])
-
-
-# lt_dict_add(DICT, KEY, VALUE)
-# -----------------------------
-m4_define([lt_dict_add],
-[m4_define([$1($2)], [$3])])
-
-
-# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
-# --------------------------------------------
-m4_define([lt_dict_add_subkey],
-[m4_define([$1($2:$3)], [$4])])
-
-
-# lt_dict_fetch(DICT, KEY, [SUBKEY])
-# ----------------------------------
-m4_define([lt_dict_fetch],
-[m4_ifval([$3],
- m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
- m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
-
-
-# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
-# -----------------------------------------------------------------
-m4_define([lt_if_dict_fetch],
-[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
- [$5],
- [$6])])
-
-
-# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
-# --------------------------------------------------------------
-m4_define([lt_dict_filter],
-[m4_if([$5], [], [],
- [lt_join(m4_quote(m4_default([$4], [[, ]])),
- lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
- [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
-])
-
-# ltversion.m4 -- version numbers -*- Autoconf -*-
-#
-# Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation,
-# Inc.
-# Written by Scott James Remnant, 2004
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# @configure_input@
-
-# serial 4245 ltversion.m4
-# This file is part of GNU Libtool
-
-m4_define([LT_PACKAGE_VERSION], [2.4.7])
-m4_define([LT_PACKAGE_REVISION], [2.4.7])
-
-AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.4.7'
-macro_revision='2.4.7'
-_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
-_LT_DECL(, macro_revision, 0)
-])
-
-# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
-#
-# Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free
-# Software Foundation, Inc.
-# Written by Scott James Remnant, 2004.
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# serial 5 lt~obsolete.m4
-
-# These exist entirely to fool aclocal when bootstrapping libtool.
-#
-# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
-# which have later been changed to m4_define as they aren't part of the
-# exported API, or moved to Autoconf or Automake where they belong.
-#
-# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
-# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
-# using a macro with the same name in our local m4/libtool.m4 it'll
-# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
-# and doesn't know about Autoconf macros at all.)
-#
-# So we provide this file, which has a silly filename so it's always
-# included after everything else. This provides aclocal with the
-# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
-# because those macros already exist, or will be overwritten later.
-# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
-#
-# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
-# Yes, that means every name once taken will need to remain here until
-# we give up compatibility with versions before 1.7, at which point
-# we need to keep only those names which we still refer to.
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
-
-m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
-m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
-m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
-m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
-m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
-m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
-m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
-m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
-m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
-m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
-m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
-m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
-m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
-m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
-m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
-m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
-m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
-m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
-m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
-m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
-m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
-m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
-m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
-m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
-m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
-m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
-m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
-m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
-m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
-m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
-m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
-m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
-m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
-m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
-m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
-m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
-m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
-m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
-m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
-m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
-m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
-m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
-m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
-m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
-m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
-m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
-m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
-m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
-m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
-m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
-m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
-m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
-m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
-m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
-m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
-
+m4_include([m4/ax_ac_append_to_file.m4])
+m4_include([m4/ax_ac_print_to_file.m4])
+m4_include([m4/ax_add_am_macro_static.m4])
+m4_include([m4/ax_am_macros_static.m4])
+m4_include([m4/ax_check_compile_flag.m4])
+m4_include([m4/ax_code_coverage.m4])
+m4_include([m4/ax_cxx_compile_stdcxx.m4])
+m4_include([m4/ax_file_escapes.m4])
+m4_include([m4/ax_gcc_builtin.m4])
+m4_include([m4/libtool.m4])
+m4_include([m4/ltoptions.m4])
+m4_include([m4/ltsugar.m4])
+m4_include([m4/ltversion.m4])
+m4_include([m4/lt~obsolete.m4])
diff --git a/dviware/dvisvgm/aminclude_static.am b/dviware/dvisvgm/aminclude_static.am
new file mode 100644
index 0000000000..da2bc19bda
--- /dev/null
+++ b/dviware/dvisvgm/aminclude_static.am
@@ -0,0 +1,126 @@
+
+# aminclude_static.am generated automatically by Autoconf
+# from AX_AM_MACROS_STATIC on Tue Jan 10 14:41:23 CET 2023
+
+
+# Code coverage
+#
+# Optional:
+# - CODE_COVERAGE_DIRECTORY: Top-level directory for code coverage reporting.
+# Multiple directories may be specified, separated by whitespace.
+# (Default: $(top_builddir))
+# - CODE_COVERAGE_OUTPUT_FILE: Filename and path for the .info file generated
+# by lcov for code coverage. (Default:
+# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info)
+# - CODE_COVERAGE_OUTPUT_DIRECTORY: Directory for generated code coverage
+# reports to be created. (Default:
+# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage)
+# - CODE_COVERAGE_BRANCH_COVERAGE: Set to 1 to enforce branch coverage,
+# set to 0 to disable it and leave empty to stay with the default.
+# (Default: empty)
+# - CODE_COVERAGE_LCOV_SHOPTS_DEFAULT: Extra options shared between both lcov
+# instances. (Default: based on )
+# - CODE_COVERAGE_LCOV_SHOPTS: Extra options to shared between both lcov
+# instances. (Default: )
+# - CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH: --gcov-tool pathtogcov
+# - CODE_COVERAGE_LCOV_OPTIONS_DEFAULT: Extra options to pass to the
+# collecting lcov instance. (Default: )
+# - CODE_COVERAGE_LCOV_OPTIONS: Extra options to pass to the collecting lcov
+# instance. (Default: )
+# - CODE_COVERAGE_LCOV_RMOPTS_DEFAULT: Extra options to pass to the filtering
+# lcov instance. (Default: empty)
+# - CODE_COVERAGE_LCOV_RMOPTS: Extra options to pass to the filtering lcov
+# instance. (Default: )
+# - CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT: Extra options to pass to the
+# genhtml instance. (Default: based on )
+# - CODE_COVERAGE_GENHTML_OPTIONS: Extra options to pass to the genhtml
+# instance. (Default: )
+# - CODE_COVERAGE_IGNORE_PATTERN: Extra glob pattern of files to ignore
+#
+# The generated report will be titled using the $(PACKAGE_NAME) and
+# $(PACKAGE_VERSION). In order to add the current git hash to the title,
+# use the git-version-gen script, available online.
+# Optional variables
+# run only on top dir
+if CODE_COVERAGE_ENABLED
+ ifeq ($(abs_builddir), $(abs_top_builddir))
+CODE_COVERAGE_DIRECTORY ?= $(top_builddir)
+CODE_COVERAGE_OUTPUT_FILE ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info
+CODE_COVERAGE_OUTPUT_DIRECTORY ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage
+
+CODE_COVERAGE_BRANCH_COVERAGE ?=
+CODE_COVERAGE_LCOV_SHOPTS_DEFAULT ?= $(if $(CODE_COVERAGE_BRANCH_COVERAGE),--rc lcov_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE))
+CODE_COVERAGE_LCOV_SHOPTS ?= $(CODE_COVERAGE_LCOV_SHOPTS_DEFAULT)
+CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH ?= --gcov-tool "$(GCOV)"
+CODE_COVERAGE_LCOV_OPTIONS_DEFAULT ?= $(CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH)
+CODE_COVERAGE_LCOV_OPTIONS ?= $(CODE_COVERAGE_LCOV_OPTIONS_DEFAULT)
+CODE_COVERAGE_LCOV_RMOPTS_DEFAULT ?=
+CODE_COVERAGE_LCOV_RMOPTS ?= $(CODE_COVERAGE_LCOV_RMOPTS_DEFAULT)
+CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT ?=$(if $(CODE_COVERAGE_BRANCH_COVERAGE),--rc genhtml_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE))
+CODE_COVERAGE_GENHTML_OPTIONS ?= $(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT)
+CODE_COVERAGE_IGNORE_PATTERN ?=
+
+GITIGNOREFILES := $(GITIGNOREFILES) $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_DIRECTORY)
+code_coverage_v_lcov_cap = $(code_coverage_v_lcov_cap_$(V))
+code_coverage_v_lcov_cap_ = $(code_coverage_v_lcov_cap_$(AM_DEFAULT_VERBOSITY))
+code_coverage_v_lcov_cap_0 = @echo " LCOV --capture" $(CODE_COVERAGE_OUTPUT_FILE);
+code_coverage_v_lcov_ign = $(code_coverage_v_lcov_ign_$(V))
+code_coverage_v_lcov_ign_ = $(code_coverage_v_lcov_ign_$(AM_DEFAULT_VERBOSITY))
+code_coverage_v_lcov_ign_0 = @echo " LCOV --remove /tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN);
+code_coverage_v_genhtml = $(code_coverage_v_genhtml_$(V))
+code_coverage_v_genhtml_ = $(code_coverage_v_genhtml_$(AM_DEFAULT_VERBOSITY))
+code_coverage_v_genhtml_0 = @echo " GEN " "$(CODE_COVERAGE_OUTPUT_DIRECTORY)";
+code_coverage_quiet = $(code_coverage_quiet_$(V))
+code_coverage_quiet_ = $(code_coverage_quiet_$(AM_DEFAULT_VERBOSITY))
+code_coverage_quiet_0 = --quiet
+
+# sanitizes the test-name: replaces with underscores: dashes and dots
+code_coverage_sanitize = $(subst -,_,$(subst .,_,$(1)))
+
+# Use recursive makes in order to ignore errors during check
+check-code-coverage:
+ -$(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -k check
+ $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) code-coverage-capture
+
+# Capture code coverage data
+code-coverage-capture: code-coverage-capture-hook
+ $(code_coverage_v_lcov_cap)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(call code_coverage_sanitize,$(PACKAGE_NAME)-$(PACKAGE_VERSION))" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_OPTIONS)
+ $(code_coverage_v_lcov_ign)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_RMOPTS)
+ -@rm -f "$(CODE_COVERAGE_OUTPUT_FILE).tmp"
+ $(code_coverage_v_genhtml)LANG=C $(GENHTML) $(code_coverage_quiet) $(addprefix --prefix ,$(CODE_COVERAGE_DIRECTORY)) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS)
+ @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html"
+
+code-coverage-clean:
+ -$(LCOV) --directory $(top_builddir) -z
+ -rm -rf "$(CODE_COVERAGE_OUTPUT_FILE)" "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "$(CODE_COVERAGE_OUTPUT_DIRECTORY)"
+ -find . \( -name "*.gcda" -o -name "*.gcno" -o -name "*.gcov" \) -delete
+
+code-coverage-dist-clean:
+
+AM_DISTCHECK_CONFIGURE_FLAGS := $(AM_DISTCHECK_CONFIGURE_FLAGS) --disable-code-coverage
+ else # ifneq ($(abs_builddir), $(abs_top_builddir))
+check-code-coverage:
+
+code-coverage-capture: code-coverage-capture-hook
+
+code-coverage-clean:
+
+code-coverage-dist-clean:
+ endif # ifeq ($(abs_builddir), $(abs_top_builddir))
+else #! CODE_COVERAGE_ENABLED
+# Use recursive makes in order to ignore errors during check
+check-code-coverage:
+ @echo "Need to reconfigure with --enable-code-coverage"
+# Capture code coverage data
+code-coverage-capture: code-coverage-capture-hook
+ @echo "Need to reconfigure with --enable-code-coverage"
+
+code-coverage-clean:
+
+code-coverage-dist-clean:
+
+endif #CODE_COVERAGE_ENABLED
+# Hook rule executed before code-coverage-capture, overridable by the user
+code-coverage-capture-hook:
+
+.PHONY: check-code-coverage code-coverage-capture code-coverage-dist-clean code-coverage-clean code-coverage-capture-hook
diff --git a/dviware/dvisvgm/config.h.in b/dviware/dvisvgm/config.h.in
index a853374f69..f649cc3dcb 100644
--- a/dviware/dvisvgm/config.h.in
+++ b/dviware/dvisvgm/config.h.in
@@ -115,6 +115,12 @@
/* Define to 1 if the system has the type `_Bool'. */
#undef HAVE__BOOL
+/* Define to 1 if the system has the `__builtin_clz' built-in function */
+#undef HAVE___BUILTIN_CLZ
+
+/* The machine triplet of the host system */
+#undef HOST_SYSTEM
+
/* Define to 1 if the kpathsea headers are not C++ safe. */
#undef KPSE_CXX_UNSAFE
@@ -151,9 +157,6 @@
backward compatibility; new code need not use it. */
#undef STDC_HEADERS
-/* The machine triplet of the target system */
-#undef TARGET_SYSTEM
-
/* Define to 1 if your <sys/time.h> declares `struct tm'. */
#undef TM_IN_SYS_TIME
diff --git a/dviware/dvisvgm/configure b/dviware/dvisvgm/configure
index df58c6775a..3bd0835d9b 100755
--- a/dviware/dvisvgm/configure
+++ b/dviware/dvisvgm/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for dvisvgm 2.14.
+# Generated by GNU Autoconf 2.71 for dvisvgm 3.0.1.
#
# Report bugs to <martin.gieseking@uos.de>.
#
@@ -621,8 +621,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='dvisvgm'
PACKAGE_TARNAME='dvisvgm'
-PACKAGE_VERSION='2.14'
-PACKAGE_STRING='dvisvgm 2.14'
+PACKAGE_VERSION='3.0.1'
+PACKAGE_STRING='dvisvgm 3.0.1'
PACKAGE_BUGREPORT='martin.gieseking@uos.de'
PACKAGE_URL=''
@@ -667,8 +667,6 @@ AM_LDFLAGS
AM_CPPFLAGS
DATE
dvisvgm_srcdir
-CODE_COVERAGE_RULES
-CODE_COVERAGE_LDFLAGS
CODE_COVERAGE_LIBS
CODE_COVERAGE_CXXFLAGS
CODE_COVERAGE_CFLAGS
@@ -676,6 +674,8 @@ CODE_COVERAGE_CPPFLAGS
GENHTML
LCOV
GCOV
+ifnGNUmake
+ifGNUmake
CODE_COVERAGE_ENABLED
CODE_COVERAGE_ENABLED_FALSE
CODE_COVERAGE_ENABLED_TRUE
@@ -794,10 +794,6 @@ am__isrc
INSTALL_DATA
INSTALL_SCRIPT
INSTALL_PROGRAM
-target_os
-target_vendor
-target_cpu
-target
host_os
host_vendor
host_cpu
@@ -1445,7 +1441,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures dvisvgm 2.14 to adapt to many kinds of systems.
+\`configure' configures dvisvgm 3.0.1 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1511,13 +1507,12 @@ Program names:
System types:
--build=BUILD configure for building on BUILD [guessed]
--host=HOST cross-compile to build programs to run on HOST [BUILD]
- --target=TARGET configure for building compilers for TARGET [HOST]
_ACEOF
fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of dvisvgm 2.14:";;
+ short | recursive ) echo "Configuration of dvisvgm 3.0.1:";;
esac
cat <<\_ACEOF
@@ -1666,7 +1661,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-dvisvgm configure 2.14
+dvisvgm configure 3.0.1
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
@@ -2146,7 +2141,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by dvisvgm $as_me 2.14, which was
+It was created by dvisvgm $as_me 3.0.1, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
@@ -3123,7 +3118,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-DATE="August 2022"
+DATE="January 2023"
ac_config_headers="$ac_config_headers config.h"
@@ -3204,46 +3199,6 @@ IFS=$ac_save_IFS
case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking target system type" >&5
-printf %s "checking target system type... " >&6; }
-if test ${ac_cv_target+y}
-then :
- printf %s "(cached) " >&6
-else $as_nop
- if test "x$target_alias" = x; then
- ac_cv_target=$ac_cv_host
-else
- ac_cv_target=`$SHELL "${ac_aux_dir}config.sub" $target_alias` ||
- as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $target_alias failed" "$LINENO" 5
-fi
-
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5
-printf "%s\n" "$ac_cv_target" >&6; }
-case $ac_cv_target in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;;
-esac
-target=$ac_cv_target
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_target
-shift
-target_cpu=$1
-target_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-target_os=$*
-IFS=$ac_save_IFS
-case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac
-
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-test -n "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
am__api_version='1.16'
@@ -3757,7 +3712,7 @@ fi
# Define the identity of the package.
PACKAGE='dvisvgm'
- VERSION='2.14'
+ VERSION='3.0.1'
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -3862,7 +3817,7 @@ fi
-printf "%s\n" "#define TARGET_SYSTEM \"$target\"" >>confdefs.h
+printf "%s\n" "#define HOST_SYSTEM \"$host\"" >>confdefs.h
# Checks for programs.
@@ -5121,7 +5076,6 @@ fi
-
ac_ext=cpp
ac_cpp='$CXXCPP $CPPFLAGS'
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -5396,11 +5350,11 @@ if test x$ac_prog_cxx_stdcxx = xno
then :
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++11 features" >&5
printf %s "checking for $CXX option to enable C++11 features... " >&6; }
-if test ${ac_cv_prog_cxx_11+y}
+if test ${ac_cv_prog_cxx_cxx11+y}
then :
printf %s "(cached) " >&6
else $as_nop
- ac_cv_prog_cxx_11=no
+ ac_cv_prog_cxx_cxx11=no
ac_save_CXX=$CXX
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -5442,11 +5396,11 @@ if test x$ac_prog_cxx_stdcxx = xno
then :
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++98 features" >&5
printf %s "checking for $CXX option to enable C++98 features... " >&6; }
-if test ${ac_cv_prog_cxx_98+y}
+if test ${ac_cv_prog_cxx_cxx98+y}
then :
printf %s "(cached) " >&6
else $as_nop
- ac_cv_prog_cxx_98=no
+ ac_cv_prog_cxx_cxx98=no
ac_save_CXX=$CXX
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -5646,7 +5600,11 @@ else $as_nop
#error "This is not a C++ compiler"
-#elif __cplusplus < 201103L
+// MSVC always sets __cplusplus to 199711L in older versions; newer versions
+// only set it correctly if /Zc:__cplusplus is specified as well as a
+// /std:c++NN switch:
+// https://devblogs.microsoft.com/cppblog/msvc-now-correctly-reports-__cplusplus/
+#elif __cplusplus < 201103L && !defined _MSC_VER
#error "This is not a C++11 compiler"
@@ -5963,7 +5921,11 @@ else $as_nop
#error "This is not a C++ compiler"
-#elif __cplusplus < 201103L
+// MSVC always sets __cplusplus to 199711L in older versions; newer versions
+// only set it correctly if /Zc:__cplusplus is specified as well as a
+// /std:c++NN switch:
+// https://devblogs.microsoft.com/cppblog/msvc-now-correctly-reports-__cplusplus/
+#elif __cplusplus < 201103L && !defined _MSC_VER
#error "This is not a C++11 compiler"
@@ -6289,7 +6251,11 @@ else $as_nop
#error "This is not a C++ compiler"
-#elif __cplusplus < 201103L
+// MSVC always sets __cplusplus to 199711L in older versions; newer versions
+// only set it correctly if /Zc:__cplusplus is specified as well as a
+// /std:c++NN switch:
+// https://devblogs.microsoft.com/cppblog/msvc-now-correctly-reports-__cplusplus/
+#elif __cplusplus < 201103L && !defined _MSC_VER
#error "This is not a C++11 compiler"
@@ -11076,6 +11042,10 @@ _lt_linker_boilerplate=`cat conftest.err`
$RM -r conftest*
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
if test -n "$compiler"; then
lt_prog_compiler_no_builtin_flag=
@@ -18221,108 +18191,6 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-printf %s "checking for $ac_word... " >&6; }
-if test ${ac_cv_prog_RANLIB+y}
-then :
- printf %s "(cached) " >&6
-else $as_nop
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- case $as_dir in #(((
- '') as_dir=./ ;;
- */) ;;
- *) as_dir=$as_dir/ ;;
- esac
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-printf "%s\n" "$RANLIB" >&6; }
-else
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
-printf "%s\n" "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
- ac_ct_RANLIB=$RANLIB
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-printf %s "checking for $ac_word... " >&6; }
-if test ${ac_cv_prog_ac_ct_RANLIB+y}
-then :
- printf %s "(cached) " >&6
-else $as_nop
- if test -n "$ac_ct_RANLIB"; then
- ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- case $as_dir in #(((
- '') as_dir=./ ;;
- */) ;;
- *) as_dir=$as_dir/ ;;
- esac
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_RANLIB="ranlib"
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-printf "%s\n" "$ac_ct_RANLIB" >&6; }
-else
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
-printf "%s\n" "no" >&6; }
-fi
-
- if test "x$ac_ct_RANLIB" = x; then
- RANLIB=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- RANLIB=$ac_ct_RANLIB
- fi
-else
- RANLIB="$ac_cv_prog_RANLIB"
-fi
-
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -18672,6 +18540,7 @@ else $as_nop
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdio.h>
+ #include <stdlib.h>
#include <kpathsea/kpathsea.h>
int main() {
FILE *f;
@@ -19922,82 +19791,6 @@ fi
fi
-# Autoupdate added the next two lines to ensure that your configure
-# script's behavior did not change. They are probably safe to remove.
-
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-printf %s "checking for egrep... " >&6; }
-if test ${ac_cv_path_EGREP+y}
-then :
- printf %s "(cached) " >&6
-else $as_nop
- if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
- then ac_cv_path_EGREP="$GREP -E"
- else
- if test -z "$EGREP"; then
- ac_path_EGREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- case $as_dir in #(((
- '') as_dir=./ ;;
- */) ;;
- *) as_dir=$as_dir/ ;;
- esac
- for ac_prog in egrep
- do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext"
- as_fn_executable_p "$ac_path_EGREP" || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
- # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
- ac_count=0
- printf %s 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- printf "%s\n" 'EGREP' >> "conftest.nl"
- "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_EGREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_EGREP="$ac_path_EGREP"
- ac_path_EGREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_EGREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_EGREP"; then
- as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_EGREP=$EGREP
-fi
-
- fi
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-printf "%s\n" "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
@@ -20328,6 +20121,51 @@ done
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for __builtin_clz" >&5
+printf %s "checking for __builtin_clz... " >&6; }
+if test ${ax_cv_have___builtin_clz+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main (void)
+{
+
+ __builtin_clz(0)
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+ ax_cv_have___builtin_clz=yes
+else $as_nop
+ ax_cv_have___builtin_clz=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
+ conftest$ac_exeext conftest.$ac_ext
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_have___builtin_clz" >&5
+printf "%s\n" "$ax_cv_have___builtin_clz" >&6; }
+
+ if test yes = $ax_cv_have___builtin_clz
+then :
+
+printf "%s\n" "#define HAVE___BUILTIN_CLZ 1" >>confdefs.h
+
+fi
+
+
+
+
# add options for selection of "optional" library locations
# currently these libraries are mandatory; the --with-foo options
# are used to specify the locations explicitely
@@ -20565,6 +20403,17 @@ fi
+
+
+
+
+
+
+
+
+
+
+
# allow to override gcov location
# Check whether --with-gcov was given.
@@ -20587,7 +20436,7 @@ else $as_nop
fi
- if test x$enable_code_coverage = xyes; then
+ if test "x$enable_code_coverage" = xyes; then
CODE_COVERAGE_ENABLED_TRUE=
CODE_COVERAGE_ENABLED_FALSE='#'
else
@@ -20600,11 +20449,104 @@ fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_code_coverage" >&5
printf "%s\n" "$enable_code_coverage" >&6; }
- if test "$enable_code_coverage" = "yes"
+ if test "x$enable_code_coverage" = xyes
+then :
+
+
+ for ac_prog in gawk mawk nawk awk
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AWK+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ if test -n "$AWK"; then
+ ac_cv_prog_AWK="$AWK" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+ ac_cv_prog_AWK="$ac_prog"
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+AWK=$ac_cv_prog_AWK
+if test -n "$AWK"; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+printf "%s\n" "$AWK" >&6; }
+else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+ test -n "$AWK" && break
+done
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU make" >&5
+printf %s "checking for GNU make... " >&6; }
+if test ${_cv_gnu_make_command+y}
+then :
+ printf %s "(cached) " >&6
+else $as_nop
+ _cv_gnu_make_command="" ;
+ for a in "$MAKE" make gmake gnumake ; do
+ if test -z "$a" ; then continue ; fi ;
+ if "$a" --version 2> /dev/null | grep GNU 2>&1 > /dev/null ; then
+ _cv_gnu_make_command=$a ;
+ AX_CHECK_GNU_MAKE_HEADLINE=$("$a" --version 2> /dev/null | grep "GNU Make")
+ ax_check_gnu_make_version=$(echo ${AX_CHECK_GNU_MAKE_HEADLINE} | ${AWK} -F " " '{ print $(NF); }')
+ break ;
+ fi
+ done ;
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $_cv_gnu_make_command" >&5
+printf "%s\n" "$_cv_gnu_make_command" >&6; }
+ if test "x$_cv_gnu_make_command" = x""
+then :
+ ifGNUmake="#"
+else $as_nop
+ ifGNUmake=""
+fi
+ if test "x$_cv_gnu_make_command" = x""
+then :
+ ifnGNUmake=""
+else $as_nop
+ ifnGNUmake="#"
+fi
+ if test "x$_cv_gnu_make_command" = x""
+then :
+ { ax_cv_gnu_make_command=; unset ax_cv_gnu_make_command;}
+else $as_nop
+ ax_cv_gnu_make_command=${_cv_gnu_make_command}
+fi
+ if test "x$_cv_gnu_make_command" = x""
then :
+ as_fn_error $? "not using GNU make that is needed for coverage" "$LINENO" 5
+fi
+
+
+
- # check for gcov
- if test -n "$ac_tool_prefix"; then
+ # check for gcov
+ if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}$_AX_CODE_COVERAGE_GCOV_PROG_WITH", so it can be a program name with args.
set dummy ${ac_tool_prefix}$_AX_CODE_COVERAGE_GCOV_PROG_WITH; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@@ -20706,20 +20648,20 @@ else
GCOV="$ac_cv_prog_GCOV"
fi
- if test "X$GCOV" = "X:"
+ if test "X$GCOV" = "X:"
then :
as_fn_error $? "gcov is needed to do coverage" "$LINENO" 5
fi
- if test "$GCC" = "no"
+ if test "$GCC" = "no"
then :
- as_fn_error $? "not compiling with gcc, which is required for gcov code coverage" "$LINENO" 5
+ as_fn_error $? "not compiling with gcc, which is required for gcov code coverage" "$LINENO" 5
fi
- # Extract the first word of "lcov", so it can be a program name with args.
+ # Extract the first word of "lcov", so it can be a program name with args.
set dummy lcov; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
@@ -20761,7 +20703,7 @@ printf "%s\n" "no" >&6; }
fi
- # Extract the first word of "genhtml", so it can be a program name with args.
+ # Extract the first word of "genhtml", so it can be a program name with args.
set dummy genhtml; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
@@ -20804,25 +20746,24 @@ fi
- if test -z "$LCOV"
+ if test x"$LCOV" = x
then :
- as_fn_error $? "To enable code coverage reporting you must have lcov installed" "$LINENO" 5
+ as_fn_error $? "To enable code coverage reporting you must have lcov installed" "$LINENO" 5
fi
- if test -z "$GENHTML"
+ if test x"$GENHTML" = x
then :
- as_fn_error $? "Could not find genhtml from the lcov package" "$LINENO" 5
+ as_fn_error $? "Could not find genhtml from the lcov package" "$LINENO" 5
fi
- CODE_COVERAGE_CPPFLAGS="-DNDEBUG"
- CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage"
- CODE_COVERAGE_CXXFLAGS="-O0 -g -fprofile-arcs -ftest-coverage"
- CODE_COVERAGE_LIBS="-lgcov"
- CODE_COVERAGE_LDFLAGS="$CODE_COVERAGE_LIBS"
+ CODE_COVERAGE_CPPFLAGS="-DNDEBUG"
+ CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage"
+ CODE_COVERAGE_CXXFLAGS="-O0 -g -fprofile-arcs -ftest-coverage"
+ CODE_COVERAGE_LIBS="-lgcov"
@@ -20830,131 +20771,15 @@ fi
- CODE_COVERAGE_RULES_CHECK='
- -$(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) -k check
- $(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) code-coverage-capture
-'
- CODE_COVERAGE_RULES_CAPTURE='
- $(code_coverage_v_lcov_cap)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(call code_coverage_sanitize,$(PACKAGE_NAME)-$(PACKAGE_VERSION))" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_OPTIONS)
- $(code_coverage_v_lcov_ign)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_RMOPTS)
- -@rm -f $(CODE_COVERAGE_OUTPUT_FILE).tmp
- $(code_coverage_v_genhtml)LANG=C $(GENHTML) $(code_coverage_quiet) $(addprefix --prefix ,$(CODE_COVERAGE_DIRECTORY)) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS)
- @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html"
-'
- CODE_COVERAGE_RULES_CLEAN='
-clean: code-coverage-clean
-distclean: code-coverage-clean
-code-coverage-clean:
- -$(LCOV) --directory $(top_builddir) -z
- -rm -rf $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_FILE).tmp $(CODE_COVERAGE_OUTPUT_DIRECTORY)
- -find . \( -name "*.gcda" -o -name "*.gcno" -o -name "*.gcov" \) -delete
-'
+fi
+
+
+
+
-else $as_nop
- CODE_COVERAGE_RULES_CHECK='
- @echo "Need to reconfigure with --enable-code-coverage"
-'
- CODE_COVERAGE_RULES_CAPTURE="$CODE_COVERAGE_RULES_CHECK"
- CODE_COVERAGE_RULES_CLEAN=''
-fi
-CODE_COVERAGE_RULES='
-# Code coverage
-#
-# Optional:
-# - CODE_COVERAGE_DIRECTORY: Top-level directory for code coverage reporting.
-# Multiple directories may be specified, separated by whitespace.
-# (Default: $(top_builddir))
-# - CODE_COVERAGE_OUTPUT_FILE: Filename and path for the .info file generated
-# by lcov for code coverage. (Default:
-# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info)
-# - CODE_COVERAGE_OUTPUT_DIRECTORY: Directory for generated code coverage
-# reports to be created. (Default:
-# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage)
-# - CODE_COVERAGE_BRANCH_COVERAGE: Set to 1 to enforce branch coverage,
-# set to 0 to disable it and leave empty to stay with the default.
-# (Default: empty)
-# - CODE_COVERAGE_LCOV_SHOPTS_DEFAULT: Extra options shared between both lcov
-# instances. (Default: based on $CODE_COVERAGE_BRANCH_COVERAGE)
-# - CODE_COVERAGE_LCOV_SHOPTS: Extra options to shared between both lcov
-# instances. (Default: $CODE_COVERAGE_LCOV_SHOPTS_DEFAULT)
-# - CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH: --gcov-tool pathtogcov
-# - CODE_COVERAGE_LCOV_OPTIONS_DEFAULT: Extra options to pass to the
-# collecting lcov instance. (Default: $CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH)
-# - CODE_COVERAGE_LCOV_OPTIONS: Extra options to pass to the collecting lcov
-# instance. (Default: $CODE_COVERAGE_LCOV_OPTIONS_DEFAULT)
-# - CODE_COVERAGE_LCOV_RMOPTS_DEFAULT: Extra options to pass to the filtering
-# lcov instance. (Default: empty)
-# - CODE_COVERAGE_LCOV_RMOPTS: Extra options to pass to the filtering lcov
-# instance. (Default: $CODE_COVERAGE_LCOV_RMOPTS_DEFAULT)
-# - CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT: Extra options to pass to the
-# genhtml instance. (Default: based on $CODE_COVERAGE_BRANCH_COVERAGE)
-# - CODE_COVERAGE_GENHTML_OPTIONS: Extra options to pass to the genhtml
-# instance. (Default: $CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT)
-# - CODE_COVERAGE_IGNORE_PATTERN: Extra glob pattern of files to ignore
-#
-# The generated report will be titled using the $(PACKAGE_NAME) and
-# $(PACKAGE_VERSION). In order to add the current git hash to the title,
-# use the git-version-gen script, available online.
-
-# Optional variables
-CODE_COVERAGE_DIRECTORY ?= $(top_builddir)
-CODE_COVERAGE_OUTPUT_FILE ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info
-CODE_COVERAGE_OUTPUT_DIRECTORY ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage
-CODE_COVERAGE_BRANCH_COVERAGE ?=
-CODE_COVERAGE_LCOV_SHOPTS_DEFAULT ?= $(if $(CODE_COVERAGE_BRANCH_COVERAGE),\
---rc lcov_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE))
-CODE_COVERAGE_LCOV_SHOPTS ?= $(CODE_COVERAGE_LCOV_SHOPTS_DEFAULT)
-CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH ?= --gcov-tool "$(GCOV)"
-CODE_COVERAGE_LCOV_OPTIONS_DEFAULT ?= $(CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH)
-CODE_COVERAGE_LCOV_OPTIONS ?= $(CODE_COVERAGE_LCOV_OPTIONS_DEFAULT)
-CODE_COVERAGE_LCOV_RMOPTS_DEFAULT ?=
-CODE_COVERAGE_LCOV_RMOPTS ?= $(CODE_COVERAGE_LCOV_RMOPTS_DEFAULT)
-CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT ?=\
-$(if $(CODE_COVERAGE_BRANCH_COVERAGE),\
---rc genhtml_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE))
-CODE_COVERAGE_GENHTML_OPTIONS ?= $(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT)
-CODE_COVERAGE_IGNORE_PATTERN ?=
-
-GITIGNOREFILES ?=
-GITIGNOREFILES += $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_DIRECTORY)
-
-code_coverage_v_lcov_cap = $(code_coverage_v_lcov_cap_$(V))
-code_coverage_v_lcov_cap_ = $(code_coverage_v_lcov_cap_$(AM_DEFAULT_VERBOSITY))
-code_coverage_v_lcov_cap_0 = @echo " LCOV --capture"\
- $(CODE_COVERAGE_OUTPUT_FILE);
-code_coverage_v_lcov_ign = $(code_coverage_v_lcov_ign_$(V))
-code_coverage_v_lcov_ign_ = $(code_coverage_v_lcov_ign_$(AM_DEFAULT_VERBOSITY))
-code_coverage_v_lcov_ign_0 = @echo " LCOV --remove /tmp/*"\
- $(CODE_COVERAGE_IGNORE_PATTERN);
-code_coverage_v_genhtml = $(code_coverage_v_genhtml_$(V))
-code_coverage_v_genhtml_ = $(code_coverage_v_genhtml_$(AM_DEFAULT_VERBOSITY))
-code_coverage_v_genhtml_0 = @echo " GEN " $(CODE_COVERAGE_OUTPUT_DIRECTORY);
-code_coverage_quiet = $(code_coverage_quiet_$(V))
-code_coverage_quiet_ = $(code_coverage_quiet_$(AM_DEFAULT_VERBOSITY))
-code_coverage_quiet_0 = --quiet
-
-# sanitizes the test-name: replaces with underscores: dashes and dots
-code_coverage_sanitize = $(subst -,_,$(subst .,_,$(1)))
-
-# Use recursive makes in order to ignore errors during check
-check-code-coverage:'"$CODE_COVERAGE_RULES_CHECK"'
-
-# Capture code coverage data
-code-coverage-capture: code-coverage-capture-hook'"$CODE_COVERAGE_RULES_CAPTURE"'
-
-# Hook rule executed before code-coverage-capture, overridable by the user
-code-coverage-capture-hook:
-
-'"$CODE_COVERAGE_RULES_CLEAN"'
-
-A''M_DISTCHECK_CONFIGURE_FLAGS ?=
-A''M_DISTCHECK_CONFIGURE_FLAGS += --disable-code-coverage
-
-.PHONY: check-code-coverage code-coverage-capture code-coverage-capture-hook code-coverage-clean
-'
@@ -20975,7 +20800,7 @@ dvisvgm_srcdir='$(top_srcdir)'
-ac_config_files="$ac_config_files Makefile libs/Makefile libs/brotli/Makefile libs/clipper/Makefile libs/ff-woff/Makefile libs/md5/Makefile libs/potrace/Makefile libs/variant/Makefile libs/woff2/Makefile libs/xxHash/Makefile m4/Makefile src/Makefile src/version.hpp src/optimizer/Makefile tests/Makefile tests/data/Makefile doc/Makefile"
+ac_config_files="$ac_config_files Makefile libs/Makefile libs/boost/Makefile libs/brotli/Makefile libs/clipper/Makefile libs/md5/Makefile libs/potrace/Makefile libs/variant/Makefile libs/woff2/Makefile libs/xxHash/Makefile src/Makefile src/version.hpp src/fonts/Makefile src/optimizer/Makefile src/ttf/Makefile tests/Makefile tests/data/Makefile doc/Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@@ -21540,7 +21365,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by dvisvgm $as_me 2.14, which was
+This file was extended by dvisvgm $as_me 3.0.1, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -21608,7 +21433,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
-dvisvgm config.status 2.14
+dvisvgm config.status 3.0.1
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
@@ -22125,18 +21950,19 @@ do
"libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"libs/Makefile") CONFIG_FILES="$CONFIG_FILES libs/Makefile" ;;
+ "libs/boost/Makefile") CONFIG_FILES="$CONFIG_FILES libs/boost/Makefile" ;;
"libs/brotli/Makefile") CONFIG_FILES="$CONFIG_FILES libs/brotli/Makefile" ;;
"libs/clipper/Makefile") CONFIG_FILES="$CONFIG_FILES libs/clipper/Makefile" ;;
- "libs/ff-woff/Makefile") CONFIG_FILES="$CONFIG_FILES libs/ff-woff/Makefile" ;;
"libs/md5/Makefile") CONFIG_FILES="$CONFIG_FILES libs/md5/Makefile" ;;
"libs/potrace/Makefile") CONFIG_FILES="$CONFIG_FILES libs/potrace/Makefile" ;;
"libs/variant/Makefile") CONFIG_FILES="$CONFIG_FILES libs/variant/Makefile" ;;
"libs/woff2/Makefile") CONFIG_FILES="$CONFIG_FILES libs/woff2/Makefile" ;;
"libs/xxHash/Makefile") CONFIG_FILES="$CONFIG_FILES libs/xxHash/Makefile" ;;
- "m4/Makefile") CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;;
"src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
"src/version.hpp") CONFIG_FILES="$CONFIG_FILES src/version.hpp" ;;
+ "src/fonts/Makefile") CONFIG_FILES="$CONFIG_FILES src/fonts/Makefile" ;;
"src/optimizer/Makefile") CONFIG_FILES="$CONFIG_FILES src/optimizer/Makefile" ;;
+ "src/ttf/Makefile") CONFIG_FILES="$CONFIG_FILES src/ttf/Makefile" ;;
"tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;;
"tests/data/Makefile") CONFIG_FILES="$CONFIG_FILES tests/data/Makefile" ;;
"doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
diff --git a/dviware/dvisvgm/configure.ac b/dviware/dvisvgm/configure.ac
index b64216e5c7..7fa9e9b18f 100644
--- a/dviware/dvisvgm/configure.ac
+++ b/dviware/dvisvgm/configure.ac
@@ -1,30 +1,27 @@
# This file is part of dvisvgm
-# Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de>
+# Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de>
#
# Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.59)
-AC_INIT([dvisvgm],[2.14],[martin.gieseking@uos.de])
-DATE="August 2022"
+AC_PREREQ([2.69])
+AC_INIT([dvisvgm],[3.0.1],[martin.gieseking@uos.de])
+DATE="January 2023"
AC_CONFIG_SRCDIR(src)
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_MACRO_DIR([m4])
AC_CANONICAL_HOST
-AC_CANONICAL_TARGET
-AM_INIT_AUTOMAKE([subdir-objects])
+AM_INIT_AUTOMAKE([subdir-objects dist-xz])
-AH_TEMPLATE([TARGET_SYSTEM], [The machine triplet of the target system])
-AC_DEFINE_UNQUOTED([TARGET_SYSTEM], ["$target"])
+AH_TEMPLATE([HOST_SYSTEM], [The machine triplet of the host system])
+AC_DEFINE_UNQUOTED([HOST_SYSTEM], ["$host"])
# Checks for programs.
AC_PROG_CC
-AC_PROG_CC_C99
AC_PROG_CXX
AX_CXX_COMPILE_STDCXX([11])
AM_PROG_AR
LT_INIT
-AC_PROG_RANLIB
AC_LANG(C)
AX_CHECK_COMPILE_FLAG([-Wmismatched-tags -Wno-mismatched-tags], [CXXFLAGS="$CXXFLAGS -Wno-mismatched-tags"])
@@ -55,6 +52,7 @@ AC_CHECK_LIB([kpathsea], [kpse_find_file],,
AC_MSG_CHECKING([kpathsea version])
AC_RUN_IFELSE([AC_LANG_SOURCE([#include <stdio.h>
+ #include <stdlib.h>
#include <kpathsea/kpathsea.h>
int main() {
FILE *f;
@@ -146,7 +144,7 @@ AC_CHECK_LIB(z, gzopen)
# Check for header files.
AC_HEADER_DIRENT
-AC_HEADER_STDC
+
AC_CHECK_HEADERS_ONCE([libintl.h stdlib.h string.h strings.h unistd.h])
# Check for typedefs, structures, and compiler characteristics.
@@ -157,6 +155,7 @@ AC_STRUCT_TM
# Check for library functions.
AC_FUNC_STAT
AC_CHECK_FUNCS_ONCE([ftime gettimeofday sigaction umask uselocale])
+AX_GCC_BUILTIN(__builtin_clz)
# add options for selection of "optional" library locations
# currently these libraries are mandatory; the --with-foo options
@@ -204,6 +203,7 @@ AS_IF([test "x$enable_manpage" != "xyes"],
AM_CONDITIONAL([BUILD_MANPAGE], [test "x$enable_manpage" = "xyes"])
AX_CODE_COVERAGE
+
AS_IF([ test "$enable_code_coverage" = "yes" ], [
# disable optimization
changequote({,})
@@ -219,18 +219,19 @@ AC_SUBST(AM_LDFLAGS)
AC_CONFIG_FILES([
Makefile
libs/Makefile
+ libs/boost/Makefile
libs/brotli/Makefile
libs/clipper/Makefile
- libs/ff-woff/Makefile
libs/md5/Makefile
libs/potrace/Makefile
libs/variant/Makefile
libs/woff2/Makefile
libs/xxHash/Makefile
- m4/Makefile
src/Makefile
src/version.hpp
+ src/fonts/Makefile
src/optimizer/Makefile
+ src/ttf/Makefile
tests/Makefile
tests/data/Makefile
doc/Makefile])
diff --git a/dviware/dvisvgm/doc/Makefile.am b/dviware/dvisvgm/doc/Makefile.am
index 1dd6434df5..8ec0d0a0a0 100644
--- a/dviware/dvisvgm/doc/Makefile.am
+++ b/dviware/dvisvgm/doc/Makefile.am
@@ -1,5 +1,5 @@
## This file is part of dvisvgm
-## Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de>
+## Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de>
##
## Process this file with automake.
diff --git a/dviware/dvisvgm/doc/Makefile.in b/dviware/dvisvgm/doc/Makefile.in
index 0bb4ef6546..d9d639c5c3 100644
--- a/dviware/dvisvgm/doc/Makefile.in
+++ b/dviware/dvisvgm/doc/Makefile.in
@@ -91,10 +91,20 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
subdir = doc
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -175,7 +185,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -291,6 +300,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -310,11 +321,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -348,9 +355,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu doc/Makefile
+ $(AUTOMAKE) --foreign doc/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
diff --git a/dviware/dvisvgm/doc/conf-dblatex-man.xsl b/dviware/dvisvgm/doc/conf-dblatex-man.xsl
index 48c47c49f3..23fb9ff2c4 100644
--- a/dviware/dvisvgm/doc/conf-dblatex-man.xsl
+++ b/dviware/dvisvgm/doc/conf-dblatex-man.xsl
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- This file is part of dvisvgm -->
-<!-- Copyright (C) 2015-2022 Martin Gieseking <martin.gieseking@uos.de> -->
+<!-- Copyright (C) 2015-2023 Martin Gieseking <martin.gieseking@uos.de> -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<!-- output monospaced text in bold -->
<xsl:template match="literal">
diff --git a/dviware/dvisvgm/doc/conf-dblatex-pdf.xsl b/dviware/dvisvgm/doc/conf-dblatex-pdf.xsl
index 25ec379129..d39e03c3a3 100644
--- a/dviware/dvisvgm/doc/conf-dblatex-pdf.xsl
+++ b/dviware/dvisvgm/doc/conf-dblatex-pdf.xsl
@@ -1,6 +1,6 @@
<?xml version='1.0' encoding="iso-8859-1"?>
<!-- This file is part of dvisvgm -->
-<!-- Copyright (C) 2015-2022 Martin Gieseking <martin.gieseking@uos.de> -->
+<!-- Copyright (C) 2015-2023 Martin Gieseking <martin.gieseking@uos.de> -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:param name="xetex.font">
<xsl:text>\setmainfont{Source Serif Pro}&#10;</xsl:text>
diff --git a/dviware/dvisvgm/doc/dvisvgm.1 b/dviware/dvisvgm/doc/dvisvgm.1
index abf067f3aa..06705cef77 100644
--- a/dviware/dvisvgm/doc/dvisvgm.1
+++ b/dviware/dvisvgm/doc/dvisvgm.1
@@ -2,12 +2,12 @@
.\" Title: dvisvgm
.\" Author: Martin Gieseking <martin.gieseking@uos.de>
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 2022-02-26
+.\" Date: 2022-10-14
.\" Manual: dvisvgm Manual
-.\" Source: dvisvgm 2.14
+.\" Source: dvisvgm 3.0.1
.\" Language: English
.\"
-.TH "DVISVGM" "1" "2022\-02\-26" "dvisvgm 2\&.14" "dvisvgm Manual"
+.TH "DVISVGM" "1" "2022\-10\-14" "dvisvgm 3\&.0\&.1" "dvisvgm Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@@ -299,6 +299,15 @@ predefined colors (\m[blue]https://www.w3.org/TR/SVG11/types.html#ColorKeywords\
Adds comments with further information about selected data to the SVG file\&. Currently, only font elements and font CSS rules related to native fonts are annotated\&.
.RE
.PP
+\fBembed\-bitmaps\fR
+.RS 4
+Embeds the contents of bitmap files into the generated SVG files instead of adding file references\&. Because of the base64\-encoded data, the SVG files are usually much bigger but at the same time more portable because they don\(cqt rely on external bitmap files\&.
+.sp
+This option only affects bitmaps referenced in DVI/XDV files, e\&.g\&. added by
+\fB\eincludegraphics\fR\&. Bitmaps in PostScript or PDF files are always embedded\&. Also see option
+\fBbitmap\-format\fR\&.
+.RE
+.PP
\fB\-E, \-\-eps\fR
.RS 4
If this option is given, dvisvgm does not expect a DVI but a single or multiple EPS input files, and tries to convert them to SVG\&. In order to do so, a single
@@ -317,7 +326,10 @@ given, dvisvgm analyzes the actual shape of each character and derives a usually
.PP
\fB\-f, \-\-font\-format\fR=\fIformat\fR
.RS 4
-Selects the file format used to embed font data into the generated SVG output when converting DVI files\&. It has no effect when converting PDF or PostScript files\&. Text fragments present in these files are always converted to path elements\&.
+Selects the file format used to embed font data into the generated SVG output when converting DVI or PDF files\&. The latter require the new mutool\-based PDF handler introduced with dvisvgm 3\&.0 (also see option
+\fB\-\-pdf\fR)\&. Option
+\fB\-\-font\-format\fR
+has no effect when converting PDF or PostScript files using Ghostscript\&. Text fragments present in these files are then always converted to path elements\&.
.sp
Following formats are supported:
\fBSVG\fR
@@ -333,7 +345,8 @@ or
to the font format, e\&.g\&.
\fB\-\-font\-format=woff,autohint\fR
or
-\fB\-\-fwoff,ah\fR\&.
+\fB\-\-fwoff,ah\fR\&. This functionality requires the
+ttfautohint library (\m[blue]https://freetype.org/ttfautohint\m[])\&. If it\(cqs not available or can\(cqt be found, dvisvgm issues a corresponding warning message\&.
.sp
Option
\fB\-\-font\-format\fR
@@ -671,9 +684,9 @@ expression, it\(cqs assigned to the attribute\&. Otherwise, the matrix expressio
.PP
\fB\-o, \-\-output\fR=\fIpattern\fR
.RS 4
-Sets the pattern that determines the names of the generated SVG files\&. The required parameter
+Sets the pattern that determines the names of the generated SVG files, optionally including the file path\&. The required parameter
\fIpattern\fR
-may consist of an arbitrary sequence of characters which make up the filenames\&. With the exception of the following mentioned variables and expressions, all characters are treated as static parts of the filenames and are therefore identical for all pages processed during a run of dvisvgm\&. The strings
+may consist of an arbitrary sequence of characters which make up the filenames or file paths relative to the current working directory\&. With the exception of the following mentioned variables and expressions, all characters are treated as static parts of the filenames/folders and are therefore identical for all pages processed during a run of dvisvgm\&. The strings
\fB%f\fR,
\fB%p\fR,
\fB%P\fR,
@@ -701,7 +714,7 @@ enforces 3 digits for the current page number (001, 002, etc\&.)\&. Without an e
gets the same number of digits as
\fB%P\fR\&.
.sp
-If you need more control over the numbering, you can use arithmetic expressions as part of a pattern\&. The syntax is
+If you need more control over the numbering, you can use arithmetic expressions as part of the pattern\&. The syntax is
\fB%(\fR\fIexpr\fR\fB)\fR
where
\fIexpr\fR
@@ -745,13 +758,24 @@ is a single\-page document\&. Otherwise, multiple SVG files
.RS 4
This option selects the pages to be processed\&. Parameter
\fIranges\fR
-consists of a comma\-separated list of single page numbers and/or page ranges\&. A page range is a pair of numbers separated by a hyphen, e\&.g\&. 5\-12\&. Thus, a page sequence might look like this: 2\-4,6,9\-12,15\&. It doesn\(cqt matter if a page is given more than once or if page ranges overlap\&. dvisvgm always extracts the page numbers in ascending order and converts them only once\&. In order to stay compatible with previous versions, the default page sequence is 1\&. dvisvgm therefore converts only the first page and not the whole document if option
+consists of a comma\-separated list of single page numbers and/or page ranges\&. A page range is a pair of numbers separated by a hyphen, e\&.g\&. 5\-12\&. Thus, a page sequence might look like this: 2\-4,6,9\-12,15\&. It doesn\(cqt matter if a page is given more than once or if page ranges overlap\&. dvisvgm always extracts the page numbers in ascending order and converts them only once\&.
+.sp
+In order to stay compatible with previous versions, the default page sequence is 1\&. dvisvgm therefore converts only the first page and not the whole document if option
\fB\-\-page\fR
is omitted\&. Usually, page ranges consist of two numbers denoting the first and last page to be converted\&. If the conversion should start at page 1, or if it should continue up to the last DVI page, the first or second range number can be omitted, respectively\&. Example:
\fB\-\-page=\-10\fR
converts all pages up to page 10,
\fB\-\-page=10\-\fR
converts all pages starting with page 10\&. Please consider that the page values don\(cqt refer to the page numbers printed on the corresponding page\&. Instead, the physical page count is expected, where the first page always gets number 1\&.
+.sp
+At the end of the range sequence an optional filter specifier can be added\&. Currently, the two filters
+\fB:even\fR
+and
+\fB:odd\fR
+are supported which restrict the preceding values to even or odd numbers\&. For example,
+\fB\-\-page=1\-11,20:even\fR
+is equivalent to
+\fB\-\-page=2,4,6,8,10,20\fR\&.
.RE
.PP
\fB\-H, \-\-page\-hashes\fR[=\fIparams\fR]
@@ -827,11 +851,26 @@ forces dvisvgm to convert a DVI page even if a file with the target name already
.RS 4
If this option is given, dvisvgm does not expect a DVI but a PDF input file, and tries to convert it to SVG\&. Similar to the conversion of DVI files, only the first page is processed by default\&. Option
\fB\-\-page\fR
-can be used to select different pages, page ranges, and/or page sequences\&. The conversion is realized by creating a single
+can be used to select different pages, page ranges, and/or page sequences\&.
+.sp
+If a Ghostcript version < 10\&.1\&.0 is found, dvisvgm uses Ghostscript to process the PDF file\&. In this case, the conversion is realized by creating a single
\fIpdffile\fR
-special command which is forwarded to the PostScript special handler\&. Therefore, this option is only available if dvisvgm was built with PostScript support enabled, and requires Ghostscript to be accessible\&. See option
+special command which is forwarded to dvisvgm\(cqs PostScript special handler\&. Therefore, this option is only available if dvisvgm was built with PostScript support enabled, and requires Ghostscript to be accessible\&. See option
\fB\-\-libgs\fR
for further information\&.
+.sp
+As of Ghostscript 10\&.1\&.0, this will no longer work due to the introduction of a new PDF interpreter\&. Therefore, an alternative conversion module based on
+mutool (\m[blue]https://mupdf.com/docs/mutool.html\m[])
+has been introduced\&. It\(cqs automatically invoked if Ghostscript can\(cqt be used and if a working
+\fBmutool\fR
+executable is present in a directory which is part of the system\(cqs search path\&.
+.sp
+Alternatively, environment variable
+\fBDVISVGM_PDF_PROC\fR
+can be used to select the PDF processor\&. The currently supported values are
+\fBgs\fR
+and
+\fBmutool\fR\&.
.RE
.PP
\fB\-d, \-\-precision\fR=\fIdigits\fR
@@ -887,8 +926,20 @@ on Linux systems\&. Option
\fB\-\-tmpdir\fR
can be used to specify a different location\&. Please note that dvisvgm does not create this folder if it doesn\(cqt exist\&. Therefore, you must ensure that it\(cqs actually present before running dvisvgm\&.
.sp
+In order to prevent colliding files caused by parallel calls of dvisvgm, the program doesn\(cqt write the files directly in the specified directory but furthermore creates a uniquely named subfolder in there, where the temporary files will be placed\&. This can be prevented by appending
+\fB//\fR
+or
+\fB\e\e\fR
+(on Windows) to the specified directory name\&. For example,
+\fB\-\-tmpdir=\&.//\fR
+creates the temporary files directly in the current working directory, while
+\fB\-\-tmpdir=\&.\fR
+places them in a dedicated subfolder of the current working directory\&.
+.sp
If the optional parameter
\fIpath\fR
+of option
+\fB\-\-tmpdir\fR
is omitted, dvisvgm prints the location of the system\(cqs temp folder and exits\&.
.RE
.PP
@@ -1614,6 +1665,8 @@ T}
.sp 1
.sp
\fBExample:\fR \fBer=01:pi=*5\fR sets the colors of error messages (\fBer\fR) to red (\fB1\fR) on black (\fB0\fR), and those of progress indicators (\fBpi\fR) to cyan (\fB5\fR) on default background (\fB*\fR)\&.
+.sp
+Variable \fBDVISVGM_PDF_PROC\fR allows you to select the desired PDF processor\&. dvisvgm requires either Ghostscript (version < 10\&.1\&.0) or mutool to process PDF files\&. IF \fBDVISVGM_PDF_PROC\fR is not set, dvisvgm tries to detect the available processors\&. See option \fB\-\-pdf\fR for further information\&. To select a specific PDF processor, you can set \fBDVISVGM_PDF_PROC\fR to \fBgs\fR or \fBmutool\fR which forces the use of Ghostscript and mutool respectively\&.
.SH "FILES"
.sp
The location of the following files is determined by the kpathsea library\&. To check the actual kpathsea configuration you can use the \fBkpsewhich\fR utility\&.
@@ -1715,4 +1768,4 @@ Please report bugs using the bug tracker at GitHub (\m[blue]https://github.com/m
Written by Martin Gieseking <\m[blue]\fBmartin\&.gieseking@uos\&.de\fR\m[]>
.SH "COPYING"
.sp
-Copyright \(co 2005\-2022 Martin Gieseking\&. Free use of this software is granted under the terms of the GNU General Public License (GPL) version 3 or, (at your option) any later version\&.
+Copyright \(co 2005\-2023 Martin Gieseking\&. Free use of this software is granted under the terms of the GNU General Public License (GPL) version 3 or, (at your option) any later version\&.
diff --git a/dviware/dvisvgm/doc/dvisvgm.txt.in b/dviware/dvisvgm/doc/dvisvgm.txt.in
index fcadbee66b..f415189aef 100644
--- a/dviware/dvisvgm/doc/dvisvgm.txt.in
+++ b/dviware/dvisvgm/doc/dvisvgm.txt.in
@@ -1,6 +1,6 @@
//////////////////////////////////////////////////////////////////////////
// This file is part of dvisvgm -- a fast DVI to SVG converter //
-// Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> //
+// Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> //
// //
// This program is free software; you can redistribute it and/or //
// modify it under the terms of the GNU General Public License as //
@@ -22,7 +22,7 @@ Martin Gieseking <@PACKAGE_BUGREPORT@>
:man source: dvisvgm
:man version: @VERSION@
:man manual: dvisvgm Manual
-:revdate: 2022-02-26 19:08 +0100
+:revdate: 2022-10-14 12:56 +0200
Name
----
@@ -206,6 +206,14 @@ In order to apply these color names rather than their RGB values, call dvisvgm w
Adds comments with further information about selected data to the SVG file. Currently, only
font elements and font CSS rules related to native fonts are annotated.
+*embed-bitmaps*::
+Embeds the contents of bitmap files into the generated SVG files instead of adding file references.
+Because of the base64-encoded data, the SVG files are usually much bigger but at the same time
+more portable because they don't rely on external bitmap files.
++
+This option only affects bitmaps referenced in DVI/XDV files, e.g. added by +\includegraphics+.
+Bitmaps in PostScript or PDF files are always embedded. Also see option *bitmap-format*.
+
*-E, --eps*::
If this option is given, dvisvgm does not expect a DVI but a single or multiple EPS input files,
and tries to convert them to SVG. In order to do so, a single 'psfile' special command is created
@@ -224,15 +232,18 @@ given, dvisvgm analyzes the actual shape of each character and derives a usually
*-f, --font-format*='format'::
Selects the file format used to embed font data into the generated SVG output when converting DVI
-files. It has no effect when converting PDF or PostScript files. Text fragments present in these
-files are always converted to path elements.
+or PDF files. The latter require the new mutool-based PDF handler introduced with dvisvgm 3.0 (also
+see option *--pdf*). Option *--font-format* has no effect when converting PDF or PostScript files
+using Ghostscript. Text fragments present in these files are then always converted to path elements.
+
Following formats are supported: +SVG+ (that's the default), +TTF+ (TrueType), +WOFF+, and +WOFF2+
(Web Open Font Format version 1 and 2).
By default, dvisvgm creates unhinted fonts that might look bad on low-resolution devices. In order to
improve the display quality, the generated TrueType, WOFF, or WOFF2 fonts can be autohinted. The
autohinter is enabled by appending +,autohint+ or +,ah+ to the font format,
-e.g. +--font-format=woff,autohint+ or +--fwoff,ah+.
+e.g. +--font-format=woff,autohint+ or +--fwoff,ah+. This functionality requires the
+https://freetype.org/ttfautohint[ttfautohint library]. If it's not available or can't be found,
+dvisvgm issues a corresponding warning message.
+
Option *--font-format* is only available if dvisvgm was built with WOFF support enabled.
@@ -459,10 +470,11 @@ The following list describes the currently available optimizer modules.
expression is used.
*-o, --output*='pattern'::
-Sets the pattern that determines the names of the generated SVG files. The required parameter
-'pattern' may consist of an arbitrary sequence of characters which make up the filenames. With the
-exception of the following mentioned variables and expressions, all characters are treated as static
-parts of the filenames and are therefore identical for all pages processed during a run of dvisvgm.
+Sets the pattern that determines the names of the generated SVG files, optionally including the file
+path. The required parameter 'pattern' may consist of an arbitrary sequence of characters which make
+up the filenames or file paths relative to the current working directory. With the exception of the
+following mentioned variables and expressions, all characters are treated as static parts of the
+filenames/folders and are therefore identical for all pages processed during a run of dvisvgm.
The strings +%f+, +%p+, +%P+, +%n+, +%N+, +%hd+, +%ho+, and +%hc+ are variables that can be used as
part of the pattern. +%f+ expands to the base name of the DVI file, i.e. the filename without suffix,
+%p+ is the current page number, and +%P+ the total number of pages in the DVI file. The variables
@@ -475,7 +487,7 @@ digits, the number is padded with leading zeros.
Example: +%3p+ enforces 3 digits for the current page number (001, 002, etc.). Without an explicit
width specifier, +%p+ gets the same number of digits as +%P+.
+
-If you need more control over the numbering, you can use arithmetic expressions as part of a pattern.
+If you need more control over the numbering, you can use arithmetic expressions as part of the pattern.
The syntax is +%(+'expr'+)+ where 'expr' may contain additions, subtractions, multiplications, and
integer divisions with common precedence. The variables *p* and *P* contain the current page number
and the total number of pages, respectively. For example, +--output="%f-%(p-1)"+ creates filenames
@@ -498,6 +510,7 @@ list of single page numbers and/or page ranges. A page range is a pair of number
a hyphen, e.g. 5-12. Thus, a page sequence might look like this: 2-4,6,9-12,15. It doesn't matter
if a page is given more than once or if page ranges overlap. dvisvgm always extracts the page
numbers in ascending order and converts them only once.
++
In order to stay compatible with previous versions, the default page sequence is 1. dvisvgm
therefore converts only the first page and not the whole document if option *--page* is omitted.
Usually, page ranges consist of two numbers denoting the first and last page to be converted.
@@ -507,6 +520,10 @@ pages up to page 10, +--page=10-+ converts all pages starting with page 10.
Please consider that the page values don't refer to the page numbers printed on the
corresponding page. Instead, the physical page count is expected, where the first page always
gets number 1.
++
+At the end of the range sequence an optional filter specifier can be added. Currently, the two
+filters +:even+ and +:odd+ are supported which restrict the preceding values to even or odd
+numbers. For example, +--page=1-11,20:even+ is equivalent to +--page=2,4,6,8,10,20+.
*-H, --page-hashes*[='params']::
If this option is given, dvisvgm computes hash values of all pages to be processed. As long as the
@@ -554,10 +571,20 @@ forces dvisvgm to convert a DVI page even if a file with the target name already
If this option is given, dvisvgm does not expect a DVI but a PDF input file, and tries to convert
it to SVG. Similar to the conversion of DVI files, only the first page is processed by default.
Option *--page* can be used to select different pages, page ranges, and/or page sequences.
-The conversion is realized by creating a single 'pdffile' special command which is forwarded to
-the PostScript special handler. Therefore, this option is only available if dvisvgm was built
-with PostScript support enabled, and requires Ghostscript to be accessible. See option *--libgs*
-for further information.
++
+If a Ghostcript version < 10.1.0 is found, dvisvgm uses Ghostscript to process the PDF file. In
+this case, the conversion is realized by creating a single 'pdffile' special command which is
+forwarded to dvisvgm's PostScript special handler. Therefore, this option is only available if
+dvisvgm was built with PostScript support enabled, and requires Ghostscript to be accessible.
+See option *--libgs* for further information.
++
+As of Ghostscript 10.1.0, this will no longer work due to the introduction of a new PDF interpreter.
+Therefore, an alternative conversion module based on https://mupdf.com/docs/mutool.html[mutool]
+has been introduced. It's automatically invoked if Ghostscript can't be used and if a working
++mutool+ executable is present in a directory which is part of the system's search path.
++
+Alternatively, environment variable +DVISVGM_PDF_PROC+ can be used to select the PDF processor.
+The currently supported values are +gs+ and +mutool+.
*-d, --precision*='digits'::
Specifies the maximal number of decimal places applied to floating-point attribute values.
@@ -596,8 +623,15 @@ system's temporary folder by default, e.g. +/tmp+ on Linux systems. Option *--tm
to specify a different location. Please note that dvisvgm does not create this folder if it doesn't
exist. Therefore, you must ensure that it's actually present before running dvisvgm.
+
-If the optional parameter 'path' is omitted, dvisvgm prints the location of the system's
-temp folder and exits.
+In order to prevent colliding files caused by parallel calls of dvisvgm, the program doesn't write
+the files directly in the specified directory but furthermore creates a uniquely named subfolder in
+there, where the temporary files will be placed. This can be prevented by appending +//+ or +\\+
+(on Windows) to the specified directory name. For example, +--tmpdir=.//+ creates the temporary files
+directly in the current working directory, while +--tmpdir=.+ places them in a dedicated subfolder of
+the current working directory.
++
+If the optional parameter 'path' of option *--tmpdir* is omitted, dvisvgm prints the location of the
+system's temp folder and exits.
*-a, --trace-all*=['retrace']::
This option forces dvisvgm to vectorize not only the glyphs actually required to render the
@@ -990,6 +1024,12 @@ All malformed entries in the list are silently ignored.
*Example:* +er=01:pi=\*5+ sets the colors of error messages (+er+) to red (+1+) on black (+0+), and those
of progress indicators (+pi+) to cyan (+5+) on default background (+*+).
+Variable *DVISVGM_PDF_PROC* allows you to select the desired PDF processor. dvisvgm requires either
+Ghostscript (version < 10.1.0) or mutool to process PDF files. IF *DVISVGM_PDF_PROC* is not set, dvisvgm
+tries to detect the available processors. See option *--pdf* for further information. To select a
+specific PDF processor, you can set *DVISVGM_PDF_PROC* to +gs+ or +mutool+ which forces the use of
+Ghostscript and mutool respectively.
+
Files
-----
The location of the following files is determined by the kpathsea library.
@@ -1025,7 +1065,7 @@ Written by {author} <{email}>
Copying
-------
-Copyright (C) 2005-2022 Martin Gieseking. Free use of this software is
+Copyright (C) 2005-2023 Martin Gieseking. Free use of this software is
granted under the terms of the GNU General Public License (GPL) version 3
or, (at your option) any later version.
diff --git a/dviware/dvisvgm/doc/tweak-db-refentry.xsl b/dviware/dvisvgm/doc/tweak-db-refentry.xsl
index cfaffaab71..f47e18d93d 100644
--- a/dviware/dvisvgm/doc/tweak-db-refentry.xsl
+++ b/dviware/dvisvgm/doc/tweak-db-refentry.xsl
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<!-- This file is part of dvisvgm -->
-<!-- Copyright (C) 2015-2022 Martin Gieseking <martin.gieseking@uos.de> -->
+<!-- Copyright (C) 2015-2023 Martin Gieseking <martin.gieseking@uos.de> -->
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:date="http://exslt.org/dates-and-times"
diff --git a/dviware/dvisvgm/doc/tweak-dblatex-pdf.xsl b/dviware/dvisvgm/doc/tweak-dblatex-pdf.xsl
index 1d08432e7f..15523e3a20 100644
--- a/dviware/dvisvgm/doc/tweak-dblatex-pdf.xsl
+++ b/dviware/dvisvgm/doc/tweak-dblatex-pdf.xsl
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- This file is part of dvisvgm -->
-<!-- Copyright (C) 2015-2022 Martin Gieseking <martin.gieseking@uos.de> -->
+<!-- Copyright (C) 2015-2023 Martin Gieseking <martin.gieseking@uos.de> -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output doctype-public="-//OASIS//DTD DocBook XML V4.5//EN" doctype-system="http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"/>
diff --git a/dviware/dvisvgm/libs/Makefile.am b/dviware/dvisvgm/libs/Makefile.am
index f98732f04e..9d9f90da3f 100644
--- a/dviware/dvisvgm/libs/Makefile.am
+++ b/dviware/dvisvgm/libs/Makefile.am
@@ -1,10 +1,10 @@
## This file is part of dvisvgm
-## Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de>
+## Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de>
##
## Process this file with automake.
-SUBDIRS = clipper md5 potrace variant xxHash
+SUBDIRS = boost clipper md5 potrace variant xxHash
if ENABLE_WOFF
-SUBDIRS += brotli ff-woff woff2
+SUBDIRS += brotli woff2
endif
diff --git a/dviware/dvisvgm/libs/Makefile.in b/dviware/dvisvgm/libs/Makefile.in
index 7a82406a2d..b8fdad7d3f 100644
--- a/dviware/dvisvgm/libs/Makefile.in
+++ b/dviware/dvisvgm/libs/Makefile.in
@@ -87,11 +87,21 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
-@ENABLE_WOFF_TRUE@am__append_1 = brotli ff-woff woff2
+@ENABLE_WOFF_TRUE@am__append_1 = brotli woff2
subdir = libs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -151,7 +161,7 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
-DIST_SUBDIRS = clipper md5 potrace variant xxHash brotli ff-woff woff2
+DIST_SUBDIRS = boost clipper md5 potrace variant xxHash brotli woff2
am__DIST_COMMON = $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
@@ -199,7 +209,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -315,6 +324,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -334,15 +345,11 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-SUBDIRS = clipper md5 potrace variant xxHash $(am__append_1)
+SUBDIRS = boost clipper md5 potrace variant xxHash $(am__append_1)
all: all-recursive
.SUFFIXES:
@@ -355,9 +362,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libs/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libs/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu libs/Makefile
+ $(AUTOMAKE) --foreign libs/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
diff --git a/dviware/dvisvgm/libs/boost/LICENSE.txt b/dviware/dvisvgm/libs/boost/LICENSE.txt
new file mode 100644
index 0000000000..36b7cd93cd
--- /dev/null
+++ b/dviware/dvisvgm/libs/boost/LICENSE.txt
@@ -0,0 +1,23 @@
+Boost Software License - Version 1.0 - August 17th, 2003
+
+Permission is hereby granted, free of charge, to any person or organization
+obtaining a copy of the software and accompanying documentation covered by
+this license (the "Software") to use, reproduce, display, distribute,
+execute, and transmit the Software, and to prepare derivative works of the
+Software, and to permit third-parties to whom the Software is furnished to
+do so, all subject to the following:
+
+The copyright notices in the Software and this entire statement, including
+the above license grant, this restriction and the following disclaimer,
+must be included in all copies of the Software, in whole or in part, and
+all derivative works of the Software, unless such copies or derivative
+works are solely in the form of machine-executable object code generated by
+a source language processor.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+DEALINGS IN THE SOFTWARE.
diff --git a/dviware/dvisvgm/libs/boost/Makefile.am b/dviware/dvisvgm/libs/boost/Makefile.am
new file mode 100644
index 0000000000..39fd937031
--- /dev/null
+++ b/dviware/dvisvgm/libs/boost/Makefile.am
@@ -0,0 +1,5 @@
+noinst_HEADERS = \
+ boost-vectorstream.hpp \
+ vectorstream.hpp
+
+EXTRA_DIST = LICENSE.txt
diff --git a/dviware/dvisvgm/m4/Makefile.in b/dviware/dvisvgm/libs/boost/Makefile.in
index 65769a840b..5cba11f705 100644
--- a/dviware/dvisvgm/m4/Makefile.in
+++ b/dviware/dvisvgm/libs/boost/Makefile.in
@@ -13,6 +13,7 @@
# PARTICULAR PURPOSE.
@SET_MAKE@
+
VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
@@ -87,13 +88,24 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
-subdir = m4
+subdir = libs/boost
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+DIST_COMMON = $(srcdir)/Makefile.am $(noinst_HEADERS) \
+ $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
@@ -117,7 +129,24 @@ am__can_run_installinfo = \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
+HEADERS = $(noinst_HEADERS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
am__DIST_COMMON = $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
@@ -140,7 +169,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -256,6 +284,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -275,19 +305,15 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-M4_EXTRA_DIST = \
- ax_check_compile_flag.m4 \
- ax_code_coverage.m4 \
- ax_cxx_compile_stdcxx.m4
+noinst_HEADERS = \
+ boost-vectorstream.hpp \
+ vectorstream.hpp
+EXTRA_DIST = LICENSE.txt
all: all-am
.SUFFIXES:
@@ -300,9 +326,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu m4/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libs/boost/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu m4/Makefile
+ $(AUTOMAKE) --foreign libs/boost/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -326,12 +352,58 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
-tags TAGS:
-
-ctags CTAGS:
-cscope cscopelist:
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ set x; \
+ here=`pwd`; \
+ $(am__define_uniq_tagged_files); \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
@@ -367,7 +439,7 @@ distdir-am: $(DISTFILES)
done
check-am: all-am
check: check-am
-all-am: Makefile
+all-am: Makefile $(HEADERS)
installdirs:
install: install-am
install-exec: install-exec-am
@@ -405,7 +477,7 @@ clean-am: clean-generic clean-libtool mostlyclean-am
distclean: distclean-am
-rm -f Makefile
-distclean-am: clean-am distclean-generic
+distclean-am: clean-am distclean-generic distclean-tags
dvi: dvi-am
@@ -467,17 +539,18 @@ uninstall-am:
.MAKE: install-am install-strip
-.PHONY: all all-am check check-am clean clean-generic clean-libtool \
- cscopelist-am ctags-am distclean distclean-generic \
- distclean-libtool distdir dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags-am uninstall uninstall-am
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+ clean-libtool cscopelist-am ctags ctags-am distclean \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
+ uninstall-am
.PRECIOUS: Makefile
diff --git a/dviware/dvisvgm/libs/boost/boost-vectorstream.hpp b/dviware/dvisvgm/libs/boost/boost-vectorstream.hpp
new file mode 100644
index 0000000000..91aa2f864d
--- /dev/null
+++ b/dviware/dvisvgm/libs/boost/boost-vectorstream.hpp
@@ -0,0 +1,607 @@
+//////////////////////////////////////////////////////////////////////////////
+//
+// (C) Copyright Ion Gaztanaga 2005-2012. Distributed under the Boost
+// Software License, Version 1.0. (See accompanying file
+// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+//
+// See http://www.boost.org/libs/interprocess for documentation.
+//
+//////////////////////////////////////////////////////////////////////////////
+//
+// This file comes from SGI's sstream file. Modified by Ion Gaztanaga 2005-2012.
+// Changed internal SGI string to a generic, templatized vector. Added efficient
+// internal buffer get/set/swap functions, so that we can obtain/establish the
+// internal buffer without any reallocation or copy. Kill those temporaries!
+///////////////////////////////////////////////////////////////////////////////
+/*
+ * Copyright (c) 1998
+ * Silicon Graphics Computer Systems, Inc.
+ *
+ * Permission to use, copy, modify, distribute and sell this software
+ * and its documentation for any purpose is hereby granted without fee,
+ * provided that the above copyright notice appear in all copies and
+ * that both that copyright notice and this permission notice appear
+ * in supporting documentation. Silicon Graphics makes no
+ * representations about the suitability of this software for any
+ * purpose. It is provided "as is" without express or implied warranty.
+ */
+
+//!\file
+//!This file defines basic_vectorbuf, basic_ivectorstream,
+//!basic_ovectorstream, and basic_vectorstreamclasses. These classes
+//!represent streamsbufs and streams whose sources or destinations are
+//!STL-like vectors that can be swapped with external vectors to avoid
+//!unnecessary allocations/copies.
+
+#ifndef BOOST_INTERPROCESS_VECTORSTREAM_HPP
+#define BOOST_INTERPROCESS_VECTORSTREAM_HPP
+
+#include <iosfwd>
+#include <ios>
+#include <istream>
+#include <ostream>
+#include <string> // char traits
+#include <cstddef> // ptrdiff_t
+
+namespace boost { namespace interprocess {
+
+//!A streambuf class that controls the transmission of elements to and from
+//!a basic_ivectorstream, basic_ovectorstream or basic_vectorstream.
+//!It holds a character vector specified by CharVector template parameter
+//!as its formatting buffer. The vector must have contiguous storage, like
+//!std::vector, boost::interprocess::vector or boost::interprocess::basic_string
+template <class CharVector, class CharTraits>
+class basic_vectorbuf
+ : public std::basic_streambuf<typename CharVector::value_type, CharTraits>
+{
+ public:
+ typedef CharVector vector_type;
+ typedef typename CharVector::value_type char_type;
+ typedef typename CharTraits::int_type int_type;
+ typedef typename CharTraits::pos_type pos_type;
+ typedef typename CharTraits::off_type off_type;
+ typedef CharTraits traits_type;
+
+ #if !defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+ private:
+ typedef std::basic_streambuf<char_type, traits_type> base_t;
+
+ basic_vectorbuf(const basic_vectorbuf&);
+ basic_vectorbuf & operator =(const basic_vectorbuf&);
+ #endif //#ifndef BOOST_INTERPROCESS_DOXYGEN_INVOKED
+
+ public:
+ //!Constructor. Throws if vector_type default
+ //!constructor throws.
+ explicit basic_vectorbuf(std::ios_base::openmode mode
+ = std::ios_base::in | std::ios_base::out)
+ : base_t(), m_mode(mode)
+ { this->initialize_pointers(); }
+
+ //!Constructor. Throws if
+ //!vector_type(const VectorParameter &param) throws.
+ template<class VectorParameter>
+ explicit basic_vectorbuf(const VectorParameter &param,
+ std::ios_base::openmode mode
+ = std::ios_base::in | std::ios_base::out)
+ : base_t(), m_mode(mode), m_vect(param)
+ { this->initialize_pointers(); }
+
+ public:
+
+ //!Swaps the underlying vector with the passed vector.
+ //!This function resets the read/write position in the stream.
+ //!Does not throw.
+ void swap_vector(vector_type &vect)
+ {
+ if (this->m_mode & std::ios_base::out){
+ //Update high water if necessary
+ //And resize vector to remove extra size
+ if (mp_high_water < base_t::pptr()){
+ //Restore the vector's size if necessary
+ mp_high_water = base_t::pptr();
+ }
+ //This does not reallocate
+ m_vect.resize(std::size_t(mp_high_water - (m_vect.size() ? &m_vect[0] : 0)));
+ }
+ //Now swap vector
+ m_vect.swap(vect);
+ this->initialize_pointers();
+ }
+
+ //!Returns a const reference to the internal vector.
+ //!Does not throw.
+ const vector_type &vector() const
+ {
+ if (this->m_mode & std::ios_base::out){
+ if (mp_high_water < base_t::pptr()){
+ //Restore the vector's size if necessary
+ mp_high_water = base_t::pptr();
+ }
+ //This shouldn't reallocate
+ typedef typename vector_type::size_type size_type;
+ char_type *old_ptr = base_t::pbase();
+ size_type high_pos = size_type(mp_high_water-old_ptr);
+ if(m_vect.size() > high_pos){
+ m_vect.resize(high_pos);
+ //But we must update end write pointer because vector size is now shorter
+ int old_pos = (int)(base_t::pptr() - base_t::pbase());
+ const_cast<basic_vectorbuf*>(this)->base_t::setp(old_ptr, old_ptr + high_pos);
+ const_cast<basic_vectorbuf*>(this)->base_t::pbump(old_pos);
+ }
+ }
+ return m_vect;
+ }
+
+ //!Preallocates memory from the internal vector.
+ //!Resets the stream to the first position.
+ //!Throws if the internals vector's memory allocation throws.
+ void reserve(typename vector_type::size_type size)
+ {
+ if (this->m_mode & std::ios_base::out && size > m_vect.size()){
+ typename vector_type::difference_type write_pos = base_t::pptr() - base_t::pbase();
+ typename vector_type::difference_type read_pos = base_t::gptr() - base_t::eback();
+ //Now update pointer data
+ m_vect.reserve(size);
+ this->initialize_pointers();
+ base_t::pbump((int)write_pos);
+ if(this->m_mode & std::ios_base::in){
+ base_t::gbump((int)read_pos);
+ }
+ }
+ }
+
+ //!Calls clear() method of the internal vector.
+ //!Resets the stream to the first position.
+ void clear()
+ { m_vect.clear(); this->initialize_pointers(); }
+
+ #if !defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+ private:
+ //Maximizes high watermark to the initial vector size,
+ //initializes read and write iostream buffers to the capacity
+ //and resets stream positions
+ void initialize_pointers()
+ {
+ // The initial read position is the beginning of the vector.
+ if(!(m_mode & std::ios_base::out)){
+ if(m_vect.empty()){
+ this->setg(0, 0, 0);
+ }
+ else{
+ this->setg(&m_vect[0], &m_vect[0], &m_vect[0] + m_vect.size());
+ }
+ }
+
+ // The initial write position is the beginning of the vector.
+ if(m_mode & std::ios_base::out){
+ //First get real size
+ int real_size = (int)m_vect.size();
+ //Then maximize size for high watermarking
+ m_vect.resize(m_vect.capacity());
+ BOOST_ASSERT(m_vect.size() == m_vect.capacity());
+ //Set high watermarking with the expanded size
+ mp_high_water = m_vect.size() ? (&m_vect[0] + real_size) : 0;
+ //Now set formatting pointers
+ if(m_vect.empty()){
+ this->setp(0, 0);
+ if(m_mode & std::ios_base::in)
+ this->setg(0, 0, 0);
+ }
+ else{
+ char_type *p = &m_vect[0];
+ this->setp(p, p + m_vect.size());
+ if(m_mode & std::ios_base::in)
+ this->setg(p, p, p + real_size);
+ }
+ if (m_mode & (std::ios_base::app | std::ios_base::ate)){
+ base_t::pbump((int)real_size);
+ }
+ }
+ }
+
+ protected:
+ virtual int_type underflow() BOOST_OVERRIDE
+ {
+ if (base_t::gptr() == 0)
+ return CharTraits::eof();
+ if(m_mode & std::ios_base::out){
+ if (mp_high_water < base_t::pptr())
+ mp_high_water = base_t::pptr();
+ if (base_t::egptr() < mp_high_water)
+ base_t::setg(base_t::eback(), base_t::gptr(), mp_high_water);
+ }
+ if (base_t::gptr() < base_t::egptr())
+ return CharTraits::to_int_type(*base_t::gptr());
+ return CharTraits::eof();
+ }
+
+ virtual int_type pbackfail(int_type c = CharTraits::eof()) BOOST_OVERRIDE
+ {
+ if(this->gptr() != this->eback()) {
+ if(!CharTraits::eq_int_type(c, CharTraits::eof())) {
+ if(CharTraits::eq(CharTraits::to_char_type(c), this->gptr()[-1])) {
+ this->gbump(-1);
+ return c;
+ }
+ else if(m_mode & std::ios_base::out) {
+ this->gbump(-1);
+ *this->gptr() = CharTraits::to_char_type(c);
+ return c;
+ }
+ else
+ return CharTraits::eof();
+ }
+ else {
+ this->gbump(-1);
+ return CharTraits::not_eof(c);
+ }
+ }
+ else
+ return CharTraits::eof();
+ }
+
+ virtual int_type overflow(int_type c = CharTraits::eof()) BOOST_OVERRIDE
+ {
+ if(m_mode & std::ios_base::out) {
+ if(!CharTraits::eq_int_type(c, CharTraits::eof())) {
+ typedef typename vector_type::difference_type dif_t;
+ //The new output position is the previous one plus one
+ //because 'overflow' requires putting 'c' on the buffer
+ dif_t new_outpos = base_t::pptr() - base_t::pbase() + 1;
+ //Adjust high water if necessary
+ dif_t hipos = mp_high_water - base_t::pbase();
+ if (hipos < new_outpos)
+ hipos = new_outpos;
+ //Insert the new data
+ m_vect.push_back(CharTraits::to_char_type(c));
+ m_vect.resize(m_vect.capacity());
+ BOOST_ASSERT(m_vect.size() == m_vect.capacity());
+ char_type* p = const_cast<char_type*>(&m_vect[0]);
+ //A reallocation might have happened, update pointers
+ base_t::setp(p, p + (dif_t)m_vect.size());
+ mp_high_water = p + hipos;
+ if (m_mode & std::ios_base::in)
+ base_t::setg(p, p + (base_t::gptr() - base_t::eback()), mp_high_water);
+ //Update write position to the old position + 1
+ base_t::pbump((int)new_outpos);
+ return c;
+ }
+ else // c is EOF, so we don't have to do anything
+ return CharTraits::not_eof(c);
+ }
+ else // Overflow always fails if it's read-only.
+ return CharTraits::eof();
+ }
+
+ virtual pos_type seekoff(off_type off, std::ios_base::seekdir dir,
+ std::ios_base::openmode mode
+ = std::ios_base::in | std::ios_base::out) BOOST_OVERRIDE
+ {
+ //Get seek mode
+ bool in(0 != (mode & std::ios_base::in)), out(0 != (mode & std::ios_base::out));
+ //Test for logic errors
+ if(!in & !out)
+ return pos_type(off_type(-1));
+ else if((in && out) && (dir == std::ios_base::cur))
+ return pos_type(off_type(-1));
+ else if((in && (!(m_mode & std::ios_base::in) || (off != 0 && this->gptr() == 0) )) ||
+ (out && (!(m_mode & std::ios_base::out) || (off != 0 && this->pptr() == 0))))
+ return pos_type(off_type(-1));
+
+ off_type newoff;
+ //Just calculate the end of the stream. If the stream is read-only
+ //the limit is the size of the vector. Otherwise, the high water mark
+ //will mark the real size.
+ off_type limit;
+ if(m_mode & std::ios_base::out){
+ //Update high water marking because pptr() is going to change and it might
+ //have been updated since last overflow()
+ if(mp_high_water < base_t::pptr())
+ mp_high_water = base_t::pptr();
+ //Update read limits in case high water mark was changed
+ if(m_mode & std::ios_base::in){
+ if (base_t::egptr() < mp_high_water)
+ base_t::setg(base_t::eback(), base_t::gptr(), mp_high_water);
+ }
+ limit = static_cast<off_type>(mp_high_water - base_t::pbase());
+ }
+ else{
+ limit = static_cast<off_type>(m_vect.size());
+ }
+
+ switch(dir) {
+ case std::ios_base::beg:
+ newoff = 0;
+ break;
+ case std::ios_base::end:
+ newoff = limit;
+ break;
+ case std::ios_base::cur:
+ newoff = in ? static_cast<std::streamoff>(this->gptr() - this->eback())
+ : static_cast<std::streamoff>(this->pptr() - this->pbase());
+ break;
+ default:
+ return pos_type(off_type(-1));
+ }
+
+ newoff += off;
+
+ if (newoff < 0 || newoff > limit)
+ return pos_type(-1);
+ if (m_mode & std::ios_base::app && mode & std::ios_base::out && newoff != limit)
+ return pos_type(-1);
+ //This can reassign pointers
+ //if(m_vect.size() != m_vect.capacity())
+ //this->initialize_pointers();
+ if (in)
+ base_t::setg(base_t::eback(), base_t::eback() + newoff, base_t::egptr());
+ if (out){
+ base_t::setp(base_t::pbase(), base_t::epptr());
+ base_t::pbump(static_cast<int>(newoff));
+ }
+ return pos_type(newoff);
+ }
+
+ virtual pos_type seekpos(pos_type pos, std::ios_base::openmode mode
+ = std::ios_base::in | std::ios_base::out) BOOST_OVERRIDE
+ { return seekoff(pos - pos_type(off_type(0)), std::ios_base::beg, mode); }
+
+ private:
+ std::ios_base::openmode m_mode;
+ mutable vector_type m_vect;
+ mutable char_type* mp_high_water;
+ #endif //#ifndef BOOST_INTERPROCESS_DOXYGEN_INVOKED
+};
+
+//!A basic_istream class that holds a character vector specified by CharVector
+//!template parameter as its formatting buffer. The vector must have
+//!contiguous storage, like std::vector, boost::interprocess::vector or
+//!boost::interprocess::basic_string
+template <class CharVector, class CharTraits>
+class basic_ivectorstream
+ : public std::basic_istream<typename CharVector::value_type, CharTraits>
+ #if !defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+ , private basic_vectorbuf<CharVector, CharTraits>
+ #endif //#ifndef BOOST_INTERPROCESS_DOXYGEN_INVOKED
+{
+ public:
+ typedef CharVector vector_type;
+ typedef typename std::basic_ios
+ <typename CharVector::value_type, CharTraits>::char_type char_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::int_type int_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::pos_type pos_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::off_type off_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::traits_type traits_type;
+
+ #if !defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+ private:
+ typedef basic_vectorbuf<CharVector, CharTraits> vectorbuf_t;
+ typedef std::basic_ios<char_type, CharTraits> basic_ios_t;
+ typedef std::basic_istream<char_type, CharTraits> base_t;
+
+ vectorbuf_t & get_buf() { return *this; }
+ const vectorbuf_t & get_buf() const{ return *this; }
+ #endif //#ifndef BOOST_INTERPROCESS_DOXYGEN_INVOKED
+
+ public:
+
+ //!Constructor. Throws if vector_type default
+ //!constructor throws.
+ basic_ivectorstream(std::ios_base::openmode mode = std::ios_base::in)
+ : base_t(0) //Initializes first the base class to safely init the virtual basic_ios base
+ //(via basic_ios::init() call in base_t's constructor) without the risk of a
+ //previous throwing vectorbuf constructor. Set the streambuf after risk has gone.
+ , vectorbuf_t(mode | std::ios_base::in)
+ { this->base_t::rdbuf(&get_buf()); }
+
+ //!Constructor. Throws if vector_type(const VectorParameter &param)
+ //!throws.
+ template<class VectorParameter>
+ basic_ivectorstream(const VectorParameter &param,
+ std::ios_base::openmode mode = std::ios_base::in)
+ : vectorbuf_t(param, mode | std::ios_base::in)
+ //basic_ios_t() is constructed uninitialized as virtual base
+ //and initialized inside base_t calling basic_ios::init()
+ , base_t(&get_buf())
+ {}
+
+ public:
+ //!Returns the address of the stored
+ //!stream buffer.
+ basic_vectorbuf<CharVector, CharTraits>* rdbuf() const
+ { return const_cast<basic_vectorbuf<CharVector, CharTraits>*>(&get_buf()); }
+
+ //!Swaps the underlying vector with the passed vector.
+ //!This function resets the read position in the stream.
+ //!Does not throw.
+ void swap_vector(vector_type &vect)
+ { get_buf().swap_vector(vect); }
+
+ //!Returns a const reference to the internal vector.
+ //!Does not throw.
+ const vector_type &vector() const
+ { return get_buf().vector(); }
+
+ //!Calls reserve() method of the internal vector.
+ //!Resets the stream to the first position.
+ //!Throws if the internals vector's reserve throws.
+ void reserve(typename vector_type::size_type size)
+ { get_buf().reserve(size); }
+
+ //!Calls clear() method of the internal vector.
+ //!Resets the stream to the first position.
+ void clear()
+ { get_buf().clear(); }
+};
+
+//!A basic_ostream class that holds a character vector specified by CharVector
+//!template parameter as its formatting buffer. The vector must have
+//!contiguous storage, like std::vector, boost::interprocess::vector or
+//!boost::interprocess::basic_string
+template <class CharVector, class CharTraits>
+class basic_ovectorstream
+ : public std::basic_ostream<typename CharVector::value_type, CharTraits>
+ #if !defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+ , private basic_vectorbuf<CharVector, CharTraits>
+ #endif //#ifndef BOOST_INTERPROCESS_DOXYGEN_INVOKED
+{
+ public:
+ typedef CharVector vector_type;
+ typedef typename std::basic_ios
+ <typename CharVector::value_type, CharTraits>::char_type char_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::int_type int_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::pos_type pos_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::off_type off_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::traits_type traits_type;
+
+ #if !defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+ private:
+ typedef basic_vectorbuf<CharVector, CharTraits> vectorbuf_t;
+ typedef std::basic_ios<char_type, CharTraits> basic_ios_t;
+ typedef std::basic_ostream<char_type, CharTraits> base_t;
+
+ vectorbuf_t & get_buf() { return *this; }
+ const vectorbuf_t & get_buf()const { return *this; }
+ #endif //#ifndef BOOST_INTERPROCESS_DOXYGEN_INVOKED
+
+ public:
+ //!Constructor. Throws if vector_type default
+ //!constructor throws.
+ basic_ovectorstream(std::ios_base::openmode mode = std::ios_base::out)
+ : base_t(0) //Initializes first the base class to safely init the virtual basic_ios base
+ //(via basic_ios::init() call in base_t's constructor) without the risk of a
+ //previous throwing vectorbuf constructor. Set the streambuf after risk has gone.
+ , vectorbuf_t(mode | std::ios_base::out)
+ { this->base_t::rdbuf(&get_buf()); }
+
+ //!Constructor. Throws if vector_type(const VectorParameter &param)
+ //!throws.
+ template<class VectorParameter>
+ basic_ovectorstream(const VectorParameter &param,
+ std::ios_base::openmode mode = std::ios_base::out)
+ : base_t(0) //Initializes first the base class to safely init the virtual basic_ios base
+ //(via basic_ios::init() call in base_t's constructor) without the risk of a
+ //previous throwing vectorbuf constructor. Set the streambuf after risk has gone.
+ , vectorbuf_t(param, mode | std::ios_base::out)
+ { this->base_t::rdbuf(&get_buf()); }
+
+ public:
+ //!Returns the address of the stored
+ //!stream buffer.
+ basic_vectorbuf<CharVector, CharTraits>* rdbuf() const
+ { return const_cast<basic_vectorbuf<CharVector, CharTraits>*>(&get_buf()); }
+
+ //!Swaps the underlying vector with the passed vector.
+ //!This function resets the write position in the stream.
+ //!Does not throw.
+ void swap_vector(vector_type &vect)
+ { get_buf().swap_vector(vect); }
+
+ //!Returns a const reference to the internal vector.
+ //!Does not throw.
+ const vector_type &vector() const
+ { return get_buf().vector(); }
+
+ //!Calls reserve() method of the internal vector.
+ //!Resets the stream to the first position.
+ //!Throws if the internals vector's reserve throws.
+ void reserve(typename vector_type::size_type size)
+ { get_buf().reserve(size); }
+};
+
+//!A basic_iostream class that holds a character vector specified by CharVector
+//!template parameter as its formatting buffer. The vector must have
+//!contiguous storage, like std::vector, boost::interprocess::vector or
+//!boost::interprocess::basic_string
+template <class CharVector, class CharTraits>
+class basic_vectorstream
+ : public std::basic_iostream<typename CharVector::value_type, CharTraits>
+ #if !defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+ , private basic_vectorbuf<CharVector, CharTraits>
+ #endif //#ifndef BOOST_INTERPROCESS_DOXYGEN_INVOKED
+{
+ public:
+ typedef CharVector vector_type;
+ typedef typename std::basic_ios
+ <typename CharVector::value_type, CharTraits>::char_type char_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::int_type int_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::pos_type pos_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::off_type off_type;
+ typedef typename std::basic_ios<char_type, CharTraits>::traits_type traits_type;
+
+ #if !defined(BOOST_INTERPROCESS_DOXYGEN_INVOKED)
+ private:
+ typedef basic_vectorbuf<CharVector, CharTraits> vectorbuf_t;
+ typedef std::basic_ios<char_type, CharTraits> basic_ios_t;
+ typedef std::basic_iostream<char_type, CharTraits> base_t;
+
+ vectorbuf_t & get_buf() { return *this; }
+ const vectorbuf_t & get_buf() const{ return *this; }
+ #endif //#ifndef BOOST_INTERPROCESS_DOXYGEN_INVOKED
+
+ public:
+ //!Constructor. Throws if vector_type default
+ //!constructor throws.
+ basic_vectorstream(std::ios_base::openmode mode
+ = std::ios_base::in | std::ios_base::out)
+ : base_t(0) //Initializes first the base class to safely init the virtual basic_ios base
+ //(via basic_ios::init() call in base_t's constructor) without the risk of a
+ //previous throwing vectorbuf constructor. Set the streambuf after risk has gone.
+ , vectorbuf_t(mode)
+ { this->base_t::rdbuf(&get_buf()); }
+
+ //!Constructor. Throws if vector_type(const VectorParameter &param)
+ //!throws.
+ template<class VectorParameter>
+ basic_vectorstream(const VectorParameter &param, std::ios_base::openmode mode
+ = std::ios_base::in | std::ios_base::out)
+ : base_t(0) //Initializes first the base class to safely init the virtual basic_ios base
+ //(via basic_ios::init() call in base_t's constructor) without the risk of a
+ //previous throwing vectorbuf constructor. Set the streambuf after risk has gone.
+ , vectorbuf_t(param, mode)
+ { this->base_t::rdbuf(&get_buf()); }
+
+ public:
+ //Returns the address of the stored stream buffer.
+ basic_vectorbuf<CharVector, CharTraits>* rdbuf() const
+ { return const_cast<basic_vectorbuf<CharVector, CharTraits>*>(&get_buf()); }
+
+ //!Swaps the underlying vector with the passed vector.
+ //!This function resets the read/write position in the stream.
+ //!Does not throw.
+ void swap_vector(vector_type &vect)
+ { get_buf().swap_vector(vect); }
+
+ //!Returns a const reference to the internal vector.
+ //!Does not throw.
+ const vector_type &vector() const
+ { return get_buf().vector(); }
+
+ //!Calls reserve() method of the internal vector.
+ //!Resets the stream to the first position.
+ //!Throws if the internals vector's reserve throws.
+ void reserve(typename vector_type::size_type size)
+ { get_buf().reserve(size); }
+
+ //!Calls clear() method of the internal vector.
+ //!Resets the stream to the first position.
+ void clear()
+ { get_buf().clear(); }
+};
+
+//Some typedefs to simplify usage
+//!
+//!typedef basic_vectorbuf<std::vector<char> > vectorbuf;
+//!typedef basic_vectorstream<std::vector<char> > vectorstream;
+//!typedef basic_ivectorstream<std::vector<char> > ivectorstream;
+//!typedef basic_ovectorstream<std::vector<char> > ovectorstream;
+//!
+//!typedef basic_vectorbuf<std::vector<wchar_t> > wvectorbuf;
+//!typedef basic_vectorstream<std::vector<wchar_t> > wvectorstream;
+//!typedef basic_ivectorstream<std::vector<wchar_t> > wivectorstream;
+//!typedef basic_ovectorstream<std::vector<wchar_t> > wovectorstream;
+
+}} //namespace boost { namespace interprocess {
+
+#endif /* BOOST_INTERPROCESS_VECTORSTREAM_HPP */
diff --git a/dviware/dvisvgm/libs/boost/vectorstream.hpp b/dviware/dvisvgm/libs/boost/vectorstream.hpp
new file mode 100644
index 0000000000..6afbfc9446
--- /dev/null
+++ b/dviware/dvisvgm/libs/boost/vectorstream.hpp
@@ -0,0 +1,17 @@
+#pragma once
+
+#ifndef BOOST_OVERRIDE
+#define BOOST_OVERRIDE override
+#endif
+
+#ifndef BOOST_ASSERT
+#define BOOST_ASSERT(expr)
+#endif
+
+#include "boost-vectorstream.hpp"
+
+template <class CharVector>
+using ovectorstream = boost::interprocess::basic_ovectorstream<CharVector, std::char_traits<typename CharVector::value_type>>;
+
+template <class CharVector>
+using ivectorstream = boost::interprocess::basic_ivectorstream<CharVector, std::char_traits<typename CharVector::value_type>>;
diff --git a/dviware/dvisvgm/libs/brotli/Makefile.am b/dviware/dvisvgm/libs/brotli/Makefile.am
index 7e8eae7d3d..64ad12e6aa 100644
--- a/dviware/dvisvgm/libs/brotli/Makefile.am
+++ b/dviware/dvisvgm/libs/brotli/Makefile.am
@@ -81,7 +81,6 @@ libbrotli_a_SOURCES = \
AM_CFLAGS = -Wall -I$(srcdir)/include
-@CODE_COVERAGE_RULES@
endif
EXTRA_DIST = LICENSE
diff --git a/dviware/dvisvgm/libs/brotli/Makefile.in b/dviware/dvisvgm/libs/brotli/Makefile.in
index 9d9a1ed31c..b222bd13cd 100644
--- a/dviware/dvisvgm/libs/brotli/Makefile.in
+++ b/dviware/dvisvgm/libs/brotli/Makefile.in
@@ -88,10 +88,20 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
subdir = libs/brotli
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -264,7 +274,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -380,6 +389,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -399,11 +410,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -503,9 +510,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libs/brotli/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libs/brotli/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu libs/brotli/Makefile
+ $(AUTOMAKE) --foreign libs/brotli/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -925,8 +932,6 @@ uninstall-am:
.PRECIOUS: Makefile
-@HAVE_BROTLI_FALSE@@CODE_COVERAGE_RULES@
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/dviware/dvisvgm/libs/clipper/Makefile.am b/dviware/dvisvgm/libs/clipper/Makefile.am
index ad880e74b7..c6dd1f6887 100644
--- a/dviware/dvisvgm/libs/clipper/Makefile.am
+++ b/dviware/dvisvgm/libs/clipper/Makefile.am
@@ -6,6 +6,4 @@ AM_CXXFLAGS = -Wall
clipper.cpp: clipper.hpp
-@CODE_COVERAGE_RULES@
-
CLEANFILES = *.gcda *.gcno
diff --git a/dviware/dvisvgm/libs/clipper/Makefile.in b/dviware/dvisvgm/libs/clipper/Makefile.in
index 7b2b89d8b4..2f848bd483 100644
--- a/dviware/dvisvgm/libs/clipper/Makefile.in
+++ b/dviware/dvisvgm/libs/clipper/Makefile.in
@@ -88,10 +88,20 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
subdir = libs/clipper
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -212,7 +222,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -328,6 +337,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -347,11 +358,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -373,9 +380,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libs/clipper/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libs/clipper/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu libs/clipper/Makefile
+ $(AUTOMAKE) --foreign libs/clipper/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -657,8 +664,6 @@ uninstall-am:
clipper.cpp: clipper.hpp
-@CODE_COVERAGE_RULES@
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/dviware/dvisvgm/libs/ff-woff/LICENSE b/dviware/dvisvgm/libs/ff-woff/LICENSE
deleted file mode 100644
index 57be819b4d..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/LICENSE
+++ /dev/null
@@ -1,281 +0,0 @@
-# FontForge Licensing
-
-FontForge is available as a whole under the terms of the [GNU GPL](http://www.gnu.org/copyleft/gpl.html), version
-3 or any later version.
-However, almost all of its parts are available under the "revised BSD license" ([pdf](http://www.law.yi.org/~sfllaw/talks/bsd.pdf)) because FontForge was mostly written by George Williams, using that license.
-
-The Revised BSD License is very permissive, and allows for code to be combined with other code under other licenses.
-There are many useful libraries available under copyleft libre licenses, such as the LGPL and GPL, which FontForge started to use in 2012.
-For example, Pango and Cairo are available under the LGPL, and gnulib is available under the GPL.
-Advanced features added since 2012 are licensed by their individual developers under the GPLv3.
-
-## How To License Contributions
-
-- Contributions to existing files must be made under the existing license for that file
-- Contributions in new files should be made under the original Revised BSD License, but any license compatible with the GPLv3 is fine
-
-The majority of FontForge was written by George Williams and published under the revised BSD license.
-This license is permitted to be compiled with added GNU GPL source code to build a FontForge executable program.
-
-FontForge was known from 2000 to 2004 as PfaEdit, and was written and developed primarily by George Williams from 2000 until 2012.
-It is published as free/libre software and distributed under the 3-clause BSD license.
-Later, when development slowed down and then stopped in 2012, the FontForge community began to take an interest in improving FontForge further with fixes, modifications, libraries, patches, and other additions which have been introduced under the same, or different, yet, compatible licenses.
-
-## Copyright Notices, Contributors, Translators
-
-See [`AUTHORS`](https://github.com/fontforge/fontforge/blob/master/AUTHORS)
-
-## The Revised BSD License used by FontForge
-
-```
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-
-Redistributions of source code must retain the above copyright
-notice, this list of conditions and the following disclaimer.
-
-Redistributions in binary form must reproduce the above copyright
-notice, this list of conditions and the following disclaimer in the
-documentation and/or other materials provided with the distribution.
-
-The name of the author may not be used to endorse or promote
-products derived from this software without specific prior written
-permission.
-
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS
-OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
-GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
-IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-```
-
-## LGPL and GPL
-
-FontForge includes the GPLv3 in the source tree as [COPYING.gplv3](https://github.com/fontforge/fontforge/blob/master/COPYING.gplv3)
-
-You can read the [LGPL](http://www.gnu.org/licenses/lgpl.html) and [GPL](http://www.gnu.org/copyleft/gpl.html) on the GNU website.
-
-## Source Files
-
-### FontForge Files Using The Revised BSD License
-
-These files were created under the Revised BSD License:
-```
-fontforge-20120731-b/
-install-sh
-
-fontforge-20120731-b/fontforge:
-alignment.c fontinfo.c savefont.h
-anchorsaway.c fontview.c savefontdlg.c
-asmfpst.c fontviewbase.c scriptfuncs.h
-autohint.c freetype.c scripting.c
-autosave.c freetypeui.c scripting.h
-autotrace.c ftdelta.c scriptingdlg.c
-autowidth.c fvcomposite.c scstyles.c
-autowidth2.c fvfonts.c scstylesui.c
-autowidth2.h fvfontsdlg.c sd.h
-autowidth2dlg.c fvmetrics.c search.c
-basedlg.c fvmetrics.h search.h
-baseviews.h fvmetricsdlg.c searchview.c
-bdfinfo.c glyphcomp.c sfd.c
-bitmapchar.c gotodlg.c sfd1.c
-bitmapcontrol.c groups.c sfd1.h
-bitmapcontrol.h groups.h sfddiff.c
-bitmapdlg.c groupsdlg.c sflayout.c
-bitmapview.c histograms.c sflayoutP.h
-bvedit.c http.c sftextfield.c
-charinfo.c ikarus.c sftextfieldP.h
-charview.c images.c showatt.c
-clipnoui.c justifydlg.c simplifydlg.c
-clipui.c kernclass.c spiro.c
-combinations.c layer2layer.c splashimage.c
-configure-fontforge.h lookups.c splinechar.c
-contextchain.c lookupui.c splinefill.c
-cursors.c macbinary.c splinefont.c
-cvaddpoints.c macenc.c splinefont.h
-cvdebug.c macencui.c splineorder2.c
-cvdgloss.c math.c splineoverlap.c
-cvexport.c mathconstants.c splinerefigure.c
-cvexportdlg.c metricsview.c splinesaveafm.c
-cvfreehand.c mm.c splinesave.c
-cvgetinfo.c mm.h splinestroke.c
-cvgridfit.c mmdlg.c splineutil.c
-cvhand.c namehash.h splineutil2.c
-cvhints.c namelist.c start.c
-cvimages.c nonlineartrans.c startnoui.c
-cvimportdlg.c nonlineartrans.h startui.c
-cvknife.c nonlineartransui.c statemachine.c
-cvpalettes.c noprefs.c stemdb.c
-cvpointer.c nouiutil.c stemdb.h
-cvruler.c nowakowskittfinstr.c svg.c
-cvshapes.c tilepath.c
-cvstroke.c openfontdlg.c tottf.c
-cvtranstools.c palmfonts.c tottfaat.c
-cvundoes.c parsepdf.c tottfgpos.c
-delta.h parsepfa.c tottfvar.c
-deltaui.c parsettf.c transform.c
-displayfonts.c parsettfatt.c ttf.h
-dumpbdf.c parsettfbmf.c ttfinstrs.c
-dumppfa.c parsettfvar.c ttfinstrs.h
-edgelist.h PfEd.h ttfinstrsui.c
-edgelist2.h plugins.c ttfspecial.c
-effects.c plugins.h ufo.c
-effectsui.c prefs.c uiinterface.h
-encoding.c print.c uiutil.c
-encodingui.c print.h unicoderange.c
-featurefile.c problems.c unicoderange.h
-fffreetype.h psfont.h utils.c
-ffpython.h psread.c views.h
-fontforge.h python.c windowmenu.c
-fontforgeui.h pythonui.c winfonts.c
-fontforgevw.h savefont.c woff.c
-
-fontforge-20120731-b/gdraw:
-choosericons.c gfiledlg.c gradio.c
-colorP.h ggadgetP.h gresedit.c
-ctlvalues.c ggadgets.c gresource.c
-drawboxborder.c ggroupbox.c gresourceimage.c
-gaskdlg.c ghvbox.c gresourceP.h
-gbuttons.c gimagebmpP.h growcol.c
-gchardlg.c gimageclut.c gsavefiledlg.c
-gcolor.c gimagecvt.c gscrollbar.c
-gcontainer.c gimagepsdraw.c gspacer.c
-gdraw.c gimagewriteeps.c gtabset.c
-gdrawable.c gimagexdraw.c gtextfield.c
-gdrawbuildchars.c gkeysym.c gtextinfo.c
-gdrawerror.c glist.c gwidgetP.h
-gdrawgimage.c gmatrixedit.c gwidgets.c
-gdrawP.h gmenu.c gxcdraw.c
-gdrawtxt.c gprogress.c gxcdrawP.h
-gdrawtxtinit.c gpsdraw.c gxdrawP.h
-gdrawwacomdriver.c gpsdrawP.h hotkeys.c
-gfilechooser.c gpstxtinit.c hotkeys.h
-
-fontforge-20120731-b/gutils:
-dynamic.c gimagereadrgb.c giofile.c
-fsys.c gimagereadtiff.c gioftp.c
-gcol.c gimagereadxbm.c gioftpP.h
-gimage.c gimagereadxpm.c giofuncP.h
-gimagebmpP.h gimagewritebmp.c giohosts.c
-gimageread.c gimagewritegimage.c giomime.c
-gimagereadbmp.c gimagewritejpeg.c gioP.h
-gimagereadgif.c gimagewritepng.c giothread.c
-gimagereadjpeg.c gimagewritexbm.c giotrans.c
-gimagereadpng.c gimagewritexpm.c gwwintl.c
-gimagereadras.c gio.c
-
-fontforge-20120731-b/inc:
-basics.h gfile.h gio.h gwidget.h
-charset.h ggadget.h gprogress.h gwwiconv.h
-fileutil.h gicons.h gresedit.h intl.h
-gdraw.h gimage.h gresource.h ustring.h
-
-fontforge-20120731-b/Packaging:
-fontforge.desktop FontForge.spec fontforge.xml
-FontForge-doc.spec FontForge.static.spec
-
-fontforge-20120731-b/pycontrib:
-excepthook.py
-
-fontforge-20120731-b/Unicode:
-char.c makebuildtables.c ucharmap.c
-dump.c makeutype.c usprintf.c
-gwwiconv.c memory.c ustring.c
-```
-
-### FontForge Files Using The GPL Licenses
-
-These files were created under the GPL License:
-```
-fontforge-20120731-b/
-aclocal.m4 configure.dynamic configure.static.in
-config.guess configure.dynamic.in ltmain.sh
-config.sub configure.in Makefile.dynamic.in
-configure configure.static Makefile.static.in
-
-fontforge-20120731-b/fontforge:
-Makefile.dynamic.in Makefile.static.in
-
-fontforge-20120731-b/gdraw:
-Makefile.dynamic.in Makefile.static.in
-
-fontforge-20120731-b/gutils:
-giomime.c Makefile.dynamic.in Makefile.static.in
-
-fontforge-20120731-b/inc:
-fontforge-config.h.in
-
-fontforge-20120731-b/plugins:
-ANALYZE_MAP.COM Makefile.in
-
-fontforge-20120731-b/Unicode:
-Makefile.dynamic.in Makefile.static.in
-```
-
-### FontForge Files Using The Open Group License
-
-```
-fontforge-20120731-b/fontforge:
-fvimportbdf.c
-
-fontforge-20120731-b/gdraw:
-fontP.h
-
-fontforge-20120731-b/inc:
-gkeysym.h
-
-### Other Files
-
-These are generated files, or do not have a license specified:
-
-```
-fontforge-20120731-b/
-LICENSE README-Unix.html
-fontforge.pc.in README-Mac.html systemspecific.in
-INSTALL README-unix VERSION
-
-fontforge-20120731-b/fontforge:
-acorn2sfd.c fontimage.pe pottitle.patch
-autowidth.h fontlint.1 pua.c
-bezctx_ff.c fontlint.pe sfddiff.1
-bezctx_ff.h langfreq.c sfddiff.pe
-crctab.c libffstamp.h stamp.c
-libstamp.pre stamper.c
-diffstubs.c threaddummy.c
-encoding.h lookups.h utf8.pot
-exelibstamp.pre MacFontForgeApp.zip
-fontforge.1 othersubrs.c zapfnomen.c
-fontimage.1 potmstitle.patch
-
-fontforge-20120731-b/gdraw:
-genkeysym.c gxdraw.c xkeysyms_unicode.c
-
-fontforge-20120731-b/inc:
-chardata.h dynamic.h utype.h
-
-fontforge-20120731-b/gutils:
-divisors.c
-
-fontforge-20120731-b/plugins:
-gb12345.c
-
-fontforge-20120731-b/po:
-ca.po el.po es.po it.po ml.po ru.po uk.po zh_CN.po
-de.po en_GB.po fr.po ja.po pl.po toengb.c vi.po zh_TW.po
-
-fontforge-20120731-b/pyhook:
-fontforgepyhook.c psMatpyhook.c setup.py.in
-loadfontforge.h README
-
-fontforge-20120731-b/Unicode:
-alphabet.c cjk.c README.TXT
-ArabicForms.c combiners.h unialt.c
-backtrns.c utype.c
-```
diff --git a/dviware/dvisvgm/libs/ff-woff/Makefile.am b/dviware/dvisvgm/libs/ff-woff/Makefile.am
deleted file mode 100644
index 22492d9cc6..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/Makefile.am
+++ /dev/null
@@ -1,90 +0,0 @@
-noinst_LIBRARIES = libfontforge.a
-
-libfontforge_a_SOURCES = \
- fontforge/PfEd.h \
- fontforge/alphabet.c \
- fontforge/asmfpst.c \
- fontforge/autohint.c \
- fontforge/char.c \
- fontforge/cjk.c \
- fontforge/configure-fontforge.h \
- fontforge/cvundoes.c \
- fontforge/dumppfa.c \
- fontforge/edgelist.h \
- fontforge/edgelist2.h \
- fontforge/encoding.c \
- fontforge/encoding.h \
- fontforge/fflocale.c \
- fontforge/fflocale.h \
- fontforge/fontforge-config.h \
- fontforge/fontforge.h \
- fontforge/fontforgevw.h \
- fontforge/fvfonts.c \
- fontforge/gwwiconv.c \
- fontforge/libffstamp.h \
- fontforge/lookups.c \
- fontforge/macbinary.c \
- fontforge/macenc.c \
- fontforge/mathconstants.c \
- fontforge/memory.c \
- fontforge/mm.c \
- fontforge/namehash.h \
- fontforge/namelist.c \
- fontforge/nouiutil.c \
- fontforge/nowakowskittfinstr.c \
- fontforge/parsepfa.c \
- fontforge/parsettf.c \
- fontforge/parsettfatt.c \
- fontforge/psfont.h \
- fontforge/psread.c \
- fontforge/pua.c \
- fontforge/sd.h \
- fontforge/sfd.c \
- fontforge/sfd1.c \
- fontforge/sfd1.h \
- fontforge/splinechar.c \
- fontforge/splinefont.c \
- fontforge/splinefont.h \
- fontforge/splineorder2.c \
- fontforge/splineoverlap.c \
- fontforge/splinerefigure.c \
- fontforge/splinesave.c \
- fontforge/splinesaveafm.c \
- fontforge/splineutil.c \
- fontforge/splineutil2.c \
- fontforge/start.c \
- fontforge/stemdb.c \
- fontforge/stemdb.h \
- fontforge/tables.h \
- fontforge/tmpfile2.cpp \
- fontforge/tottf.c \
- fontforge/tottfaat.c \
- fontforge/tottfgpos.c \
- fontforge/tottfvar.c \
- fontforge/ttf.h \
- fontforge/ttfinstrs.c \
- fontforge/ttfinstrs.h \
- fontforge/ttfspecial.c \
- fontforge/uiinterface.h \
- fontforge/unialt.c \
- fontforge/ustring.c \
- fontforge/utype.c \
- fontforge/woff.c \
- inc/basics.h \
- inc/chardata.h \
- inc/charset.h \
- inc/dlist.h \
- inc/ffintl.h \
- inc/gimage.h \
- inc/gnetwork.h \
- inc/gwwiconv.h \
- inc/ustring.h \
- inc/utype.h
-
-EXTRA_DIST = LICENSE
-
-AM_CFLAGS = -I$(srcdir)/inc -I$(srcdir)/fontforge $(ZLIB_CFLAGS)
-
-@CODE_COVERAGE_RULES@
-
-CLEANFILES = *.gcda *.gcno
diff --git a/dviware/dvisvgm/libs/ff-woff/Makefile.in b/dviware/dvisvgm/libs/ff-woff/Makefile.in
deleted file mode 100644
index 5395a98626..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/Makefile.in
+++ /dev/null
@@ -1,1082 +0,0 @@
-# Makefile.in generated by automake 1.16.5 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994-2021 Free Software Foundation, Inc.
-
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-
-VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
-am__make_running_with_option = \
- case $${target_option-} in \
- ?) ;; \
- *) echo "am__make_running_with_option: internal error: invalid" \
- "target option '$${target_option-}' specified" >&2; \
- exit 1;; \
- esac; \
- has_opt=no; \
- sane_makeflags=$$MAKEFLAGS; \
- if $(am__is_gnu_make); then \
- sane_makeflags=$$MFLAGS; \
- else \
- case $$MAKEFLAGS in \
- *\\[\ \ ]*) \
- bs=\\; \
- sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
- | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
- esac; \
- fi; \
- skip_next=no; \
- strip_trailopt () \
- { \
- flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
- }; \
- for flg in $$sane_makeflags; do \
- test $$skip_next = yes && { skip_next=no; continue; }; \
- case $$flg in \
- *=*|--*) continue;; \
- -*I) strip_trailopt 'I'; skip_next=yes;; \
- -*I?*) strip_trailopt 'I';; \
- -*O) strip_trailopt 'O'; skip_next=yes;; \
- -*O?*) strip_trailopt 'O';; \
- -*l) strip_trailopt 'l'; skip_next=yes;; \
- -*l?*) strip_trailopt 'l';; \
- -[dEDm]) skip_next=yes;; \
- -[JT]) skip_next=yes;; \
- esac; \
- case $$flg in \
- *$$target_option*) has_opt=yes; break;; \
- esac; \
- done; \
- test $$has_opt = yes
-am__make_dryrun = (target_option=n; $(am__make_running_with_option))
-am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-target_triplet = @target@
-subdir = libs/ff-woff
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-LIBRARIES = $(noinst_LIBRARIES)
-ARFLAGS = cru
-AM_V_AR = $(am__v_AR_@AM_V@)
-am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@)
-am__v_AR_0 = @echo " AR " $@;
-am__v_AR_1 =
-libfontforge_a_AR = $(AR) $(ARFLAGS)
-libfontforge_a_LIBADD =
-am__dirstamp = $(am__leading_dot)dirstamp
-am_libfontforge_a_OBJECTS = fontforge/alphabet.$(OBJEXT) \
- fontforge/asmfpst.$(OBJEXT) fontforge/autohint.$(OBJEXT) \
- fontforge/char.$(OBJEXT) fontforge/cjk.$(OBJEXT) \
- fontforge/cvundoes.$(OBJEXT) fontforge/dumppfa.$(OBJEXT) \
- fontforge/encoding.$(OBJEXT) fontforge/fflocale.$(OBJEXT) \
- fontforge/fvfonts.$(OBJEXT) fontforge/gwwiconv.$(OBJEXT) \
- fontforge/lookups.$(OBJEXT) fontforge/macbinary.$(OBJEXT) \
- fontforge/macenc.$(OBJEXT) fontforge/mathconstants.$(OBJEXT) \
- fontforge/memory.$(OBJEXT) fontforge/mm.$(OBJEXT) \
- fontforge/namelist.$(OBJEXT) fontforge/nouiutil.$(OBJEXT) \
- fontforge/nowakowskittfinstr.$(OBJEXT) \
- fontforge/parsepfa.$(OBJEXT) fontforge/parsettf.$(OBJEXT) \
- fontforge/parsettfatt.$(OBJEXT) fontforge/psread.$(OBJEXT) \
- fontforge/pua.$(OBJEXT) fontforge/sfd.$(OBJEXT) \
- fontforge/sfd1.$(OBJEXT) fontforge/splinechar.$(OBJEXT) \
- fontforge/splinefont.$(OBJEXT) \
- fontforge/splineorder2.$(OBJEXT) \
- fontforge/splineoverlap.$(OBJEXT) \
- fontforge/splinerefigure.$(OBJEXT) \
- fontforge/splinesave.$(OBJEXT) \
- fontforge/splinesaveafm.$(OBJEXT) \
- fontforge/splineutil.$(OBJEXT) fontforge/splineutil2.$(OBJEXT) \
- fontforge/start.$(OBJEXT) fontforge/stemdb.$(OBJEXT) \
- fontforge/tmpfile2.$(OBJEXT) fontforge/tottf.$(OBJEXT) \
- fontforge/tottfaat.$(OBJEXT) fontforge/tottfgpos.$(OBJEXT) \
- fontforge/tottfvar.$(OBJEXT) fontforge/ttfinstrs.$(OBJEXT) \
- fontforge/ttfspecial.$(OBJEXT) fontforge/unialt.$(OBJEXT) \
- fontforge/ustring.$(OBJEXT) fontforge/utype.$(OBJEXT) \
- fontforge/woff.$(OBJEXT)
-libfontforge_a_OBJECTS = $(am_libfontforge_a_OBJECTS)
-AM_V_P = $(am__v_P_@AM_V@)
-am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
-am__v_P_0 = false
-am__v_P_1 = :
-AM_V_GEN = $(am__v_GEN_@AM_V@)
-am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
-am__v_GEN_0 = @echo " GEN " $@;
-am__v_GEN_1 =
-AM_V_at = $(am__v_at_@AM_V@)
-am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
-am__v_at_0 = @
-am__v_at_1 =
-DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__maybe_remake_depfiles = depfiles
-am__depfiles_remade = fontforge/$(DEPDIR)/alphabet.Po \
- fontforge/$(DEPDIR)/asmfpst.Po fontforge/$(DEPDIR)/autohint.Po \
- fontforge/$(DEPDIR)/char.Po fontforge/$(DEPDIR)/cjk.Po \
- fontforge/$(DEPDIR)/cvundoes.Po fontforge/$(DEPDIR)/dumppfa.Po \
- fontforge/$(DEPDIR)/encoding.Po \
- fontforge/$(DEPDIR)/fflocale.Po fontforge/$(DEPDIR)/fvfonts.Po \
- fontforge/$(DEPDIR)/gwwiconv.Po fontforge/$(DEPDIR)/lookups.Po \
- fontforge/$(DEPDIR)/macbinary.Po fontforge/$(DEPDIR)/macenc.Po \
- fontforge/$(DEPDIR)/mathconstants.Po \
- fontforge/$(DEPDIR)/memory.Po fontforge/$(DEPDIR)/mm.Po \
- fontforge/$(DEPDIR)/namelist.Po \
- fontforge/$(DEPDIR)/nouiutil.Po \
- fontforge/$(DEPDIR)/nowakowskittfinstr.Po \
- fontforge/$(DEPDIR)/parsepfa.Po \
- fontforge/$(DEPDIR)/parsettf.Po \
- fontforge/$(DEPDIR)/parsettfatt.Po \
- fontforge/$(DEPDIR)/psread.Po fontforge/$(DEPDIR)/pua.Po \
- fontforge/$(DEPDIR)/sfd.Po fontforge/$(DEPDIR)/sfd1.Po \
- fontforge/$(DEPDIR)/splinechar.Po \
- fontforge/$(DEPDIR)/splinefont.Po \
- fontforge/$(DEPDIR)/splineorder2.Po \
- fontforge/$(DEPDIR)/splineoverlap.Po \
- fontforge/$(DEPDIR)/splinerefigure.Po \
- fontforge/$(DEPDIR)/splinesave.Po \
- fontforge/$(DEPDIR)/splinesaveafm.Po \
- fontforge/$(DEPDIR)/splineutil.Po \
- fontforge/$(DEPDIR)/splineutil2.Po \
- fontforge/$(DEPDIR)/start.Po fontforge/$(DEPDIR)/stemdb.Po \
- fontforge/$(DEPDIR)/tmpfile2.Po fontforge/$(DEPDIR)/tottf.Po \
- fontforge/$(DEPDIR)/tottfaat.Po \
- fontforge/$(DEPDIR)/tottfgpos.Po \
- fontforge/$(DEPDIR)/tottfvar.Po \
- fontforge/$(DEPDIR)/ttfinstrs.Po \
- fontforge/$(DEPDIR)/ttfspecial.Po \
- fontforge/$(DEPDIR)/unialt.Po fontforge/$(DEPDIR)/ustring.Po \
- fontforge/$(DEPDIR)/utype.Po fontforge/$(DEPDIR)/woff.Po
-am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-AM_V_lt = $(am__v_lt_@AM_V@)
-am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
-am__v_lt_0 = --silent
-am__v_lt_1 =
-LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
- $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
- $(AM_CFLAGS) $(CFLAGS)
-AM_V_CC = $(am__v_CC_@AM_V@)
-am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
-am__v_CC_0 = @echo " CC " $@;
-am__v_CC_1 =
-CCLD = $(CC)
-LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-AM_V_CCLD = $(am__v_CCLD_@AM_V@)
-am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
-am__v_CCLD_0 = @echo " CCLD " $@;
-am__v_CCLD_1 =
-CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
- $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
- $(AM_CXXFLAGS) $(CXXFLAGS)
-AM_V_CXX = $(am__v_CXX_@AM_V@)
-am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
-am__v_CXX_0 = @echo " CXX " $@;
-am__v_CXX_1 =
-CXXLD = $(CXX)
-CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
- $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
-am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
-am__v_CXXLD_0 = @echo " CXXLD " $@;
-am__v_CXXLD_1 =
-SOURCES = $(libfontforge_a_SOURCES)
-DIST_SOURCES = $(libfontforge_a_SOURCES)
-am__can_run_installinfo = \
- case $$AM_UPDATE_INFO_DIR in \
- n|no|NO) false;; \
- *) (install-info --version) >/dev/null 2>&1;; \
- esac
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-# Read a list of newline-separated strings from the standard input,
-# and print each of them once, without duplicates. Input order is
-# *not* preserved.
-am__uniquify_input = $(AWK) '\
- BEGIN { nonempty = 0; } \
- { items[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in items) print i; }; } \
-'
-# Make sure the list of sources is unique. This is necessary because,
-# e.g., the same source file might be shared among _SOURCES variables
-# for different programs/libraries.
-am__define_uniq_tagged_files = \
- list='$(am__tagged_files)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | $(am__uniquify_input)`
-am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp \
- README.md
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_CPPFLAGS = @AM_CPPFLAGS@
-AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
-AM_LDFLAGS = @AM_LDFLAGS@
-AR = @AR@
-ASCIIDOC = @ASCIIDOC@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-BROTLI_CFLAGS = @BROTLI_CFLAGS@
-BROTLI_LIBS = @BROTLI_LIBS@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
-CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
-CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
-CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
-CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CSCOPE = @CSCOPE@
-CTAGS = @CTAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DATE = @DATE@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-ETAGS = @ETAGS@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FILECMD = @FILECMD@
-FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
-FREETYPE_LIBS = @FREETYPE_LIBS@
-GCOV = @GCOV@
-GENHTML = @GENHTML@
-GREP = @GREP@
-HAVE_CXX11 = @HAVE_CXX11@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-KPSE_CFLAGS = @KPSE_CFLAGS@
-KPSE_LIBS = @KPSE_LIBS@
-LCOV = @LCOV@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCRYPTO_CFLAGS = @LIBCRYPTO_CFLAGS@
-LIBCRYPTO_LIBS = @LIBCRYPTO_LIBS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PKG_CONFIG = @PKG_CONFIG@
-PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
-PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
-RANLIB = @RANLIB@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-TTFAUTOHINT_CFLAGS = @TTFAUTOHINT_CFLAGS@
-TTFAUTOHINT_LIBS = @TTFAUTOHINT_LIBS@
-VERSION = @VERSION@
-WOFF2_CFLAGS = @WOFF2_CFLAGS@
-WOFF2_LIBS = @WOFF2_LIBS@
-XMLTO = @XMLTO@
-XSLTPROC = @XSLTPROC@
-ZLIB_CFLAGS = @ZLIB_CFLAGS@
-ZLIB_LIBS = @ZLIB_LIBS@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-dvisvgm_srcdir = @dvisvgm_srcdir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-runstatedir = @runstatedir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target = @target@
-target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-noinst_LIBRARIES = libfontforge.a
-libfontforge_a_SOURCES = \
- fontforge/PfEd.h \
- fontforge/alphabet.c \
- fontforge/asmfpst.c \
- fontforge/autohint.c \
- fontforge/char.c \
- fontforge/cjk.c \
- fontforge/configure-fontforge.h \
- fontforge/cvundoes.c \
- fontforge/dumppfa.c \
- fontforge/edgelist.h \
- fontforge/edgelist2.h \
- fontforge/encoding.c \
- fontforge/encoding.h \
- fontforge/fflocale.c \
- fontforge/fflocale.h \
- fontforge/fontforge-config.h \
- fontforge/fontforge.h \
- fontforge/fontforgevw.h \
- fontforge/fvfonts.c \
- fontforge/gwwiconv.c \
- fontforge/libffstamp.h \
- fontforge/lookups.c \
- fontforge/macbinary.c \
- fontforge/macenc.c \
- fontforge/mathconstants.c \
- fontforge/memory.c \
- fontforge/mm.c \
- fontforge/namehash.h \
- fontforge/namelist.c \
- fontforge/nouiutil.c \
- fontforge/nowakowskittfinstr.c \
- fontforge/parsepfa.c \
- fontforge/parsettf.c \
- fontforge/parsettfatt.c \
- fontforge/psfont.h \
- fontforge/psread.c \
- fontforge/pua.c \
- fontforge/sd.h \
- fontforge/sfd.c \
- fontforge/sfd1.c \
- fontforge/sfd1.h \
- fontforge/splinechar.c \
- fontforge/splinefont.c \
- fontforge/splinefont.h \
- fontforge/splineorder2.c \
- fontforge/splineoverlap.c \
- fontforge/splinerefigure.c \
- fontforge/splinesave.c \
- fontforge/splinesaveafm.c \
- fontforge/splineutil.c \
- fontforge/splineutil2.c \
- fontforge/start.c \
- fontforge/stemdb.c \
- fontforge/stemdb.h \
- fontforge/tables.h \
- fontforge/tmpfile2.cpp \
- fontforge/tottf.c \
- fontforge/tottfaat.c \
- fontforge/tottfgpos.c \
- fontforge/tottfvar.c \
- fontforge/ttf.h \
- fontforge/ttfinstrs.c \
- fontforge/ttfinstrs.h \
- fontforge/ttfspecial.c \
- fontforge/uiinterface.h \
- fontforge/unialt.c \
- fontforge/ustring.c \
- fontforge/utype.c \
- fontforge/woff.c \
- inc/basics.h \
- inc/chardata.h \
- inc/charset.h \
- inc/dlist.h \
- inc/ffintl.h \
- inc/gimage.h \
- inc/gnetwork.h \
- inc/gwwiconv.h \
- inc/ustring.h \
- inc/utype.h
-
-EXTRA_DIST = LICENSE
-AM_CFLAGS = -I$(srcdir)/inc -I$(srcdir)/fontforge $(ZLIB_CFLAGS)
-CLEANFILES = *.gcda *.gcno
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .cpp .lo .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libs/ff-woff/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu libs/ff-woff/Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-clean-noinstLIBRARIES:
- -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-fontforge/$(am__dirstamp):
- @$(MKDIR_P) fontforge
- @: > fontforge/$(am__dirstamp)
-fontforge/$(DEPDIR)/$(am__dirstamp):
- @$(MKDIR_P) fontforge/$(DEPDIR)
- @: > fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/alphabet.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/asmfpst.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/autohint.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/char.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/cjk.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/cvundoes.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/dumppfa.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/encoding.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/fflocale.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/fvfonts.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/gwwiconv.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/lookups.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/macbinary.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/macenc.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/mathconstants.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/memory.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/mm.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/namelist.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/nouiutil.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/nowakowskittfinstr.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/parsepfa.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/parsettf.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/parsettfatt.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/psread.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/pua.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/sfd.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/sfd1.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/splinechar.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/splinefont.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/splineorder2.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/splineoverlap.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/splinerefigure.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/splinesave.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/splinesaveafm.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/splineutil.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/splineutil2.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/start.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/stemdb.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/tmpfile2.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/tottf.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/tottfaat.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/tottfgpos.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/tottfvar.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/ttfinstrs.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/ttfspecial.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/unialt.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/ustring.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/utype.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-fontforge/woff.$(OBJEXT): fontforge/$(am__dirstamp) \
- fontforge/$(DEPDIR)/$(am__dirstamp)
-
-libfontforge.a: $(libfontforge_a_OBJECTS) $(libfontforge_a_DEPENDENCIES) $(EXTRA_libfontforge_a_DEPENDENCIES)
- $(AM_V_at)-rm -f libfontforge.a
- $(AM_V_AR)$(libfontforge_a_AR) libfontforge.a $(libfontforge_a_OBJECTS) $(libfontforge_a_LIBADD)
- $(AM_V_at)$(RANLIB) libfontforge.a
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
- -rm -f fontforge/*.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/alphabet.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/asmfpst.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/autohint.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/char.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/cjk.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/cvundoes.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/dumppfa.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/encoding.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/fflocale.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/fvfonts.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/gwwiconv.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/lookups.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/macbinary.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/macenc.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/mathconstants.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/memory.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/mm.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/namelist.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/nouiutil.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/nowakowskittfinstr.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/parsepfa.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/parsettf.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/parsettfatt.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/psread.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/pua.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/sfd.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/sfd1.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/splinechar.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/splinefont.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/splineorder2.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/splineoverlap.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/splinerefigure.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/splinesave.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/splinesaveafm.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/splineutil.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/splineutil2.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/start.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/stemdb.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/tmpfile2.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/tottf.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/tottfaat.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/tottfgpos.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/tottfvar.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/ttfinstrs.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/ttfspecial.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/unialt.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/ustring.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/utype.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@fontforge/$(DEPDIR)/woff.Po@am__quote@ # am--include-marker
-
-$(am__depfiles_remade):
- @$(MKDIR_P) $(@D)
- @echo '# dummy' >$@-t && $(am__mv) $@-t $@
-
-am--depfiles: $(am__depfiles_remade)
-
-.c.o:
-@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
-@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
-
-.c.obj:
-@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
-@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-
-.c.lo:
-@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
-@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
-@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
-
-.cpp.o:
-@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
-@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
-@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
-@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $<
-
-.cpp.obj:
-@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
-@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
-@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
-@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-
-.cpp.lo:
-@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
-@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
-@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
-@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-
-ID: $(am__tagged_files)
- $(am__define_uniq_tagged_files); mkid -fID $$unique
-tags: tags-am
-TAGS: tags
-
-tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
- set x; \
- here=`pwd`; \
- $(am__define_uniq_tagged_files); \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: ctags-am
-
-CTAGS: ctags
-ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
- $(am__define_uniq_tagged_files); \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-cscopelist: cscopelist-am
-
-cscopelist-am: $(am__tagged_files)
- list='$(am__tagged_files)'; \
- case "$(srcdir)" in \
- [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
- *) sdir=$(subdir)/$(srcdir) ;; \
- esac; \
- for i in $$list; do \
- if test -f "$$i"; then \
- echo "$(subdir)/$$i"; \
- else \
- echo "$$sdir/$$i"; \
- fi; \
- done >> $(top_builddir)/cscope.files
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-distdir: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) distdir-am
-
-distdir-am: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-am
-all-am: Makefile $(LIBRARIES)
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- if test -z '$(STRIP)'; then \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- install; \
- else \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
- fi
-mostlyclean-generic:
-
-clean-generic:
- -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
- -rm -f fontforge/$(DEPDIR)/$(am__dirstamp)
- -rm -f fontforge/$(am__dirstamp)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-noinstLIBRARIES \
- mostlyclean-am
-
-distclean: distclean-am
- -rm -f fontforge/$(DEPDIR)/alphabet.Po
- -rm -f fontforge/$(DEPDIR)/asmfpst.Po
- -rm -f fontforge/$(DEPDIR)/autohint.Po
- -rm -f fontforge/$(DEPDIR)/char.Po
- -rm -f fontforge/$(DEPDIR)/cjk.Po
- -rm -f fontforge/$(DEPDIR)/cvundoes.Po
- -rm -f fontforge/$(DEPDIR)/dumppfa.Po
- -rm -f fontforge/$(DEPDIR)/encoding.Po
- -rm -f fontforge/$(DEPDIR)/fflocale.Po
- -rm -f fontforge/$(DEPDIR)/fvfonts.Po
- -rm -f fontforge/$(DEPDIR)/gwwiconv.Po
- -rm -f fontforge/$(DEPDIR)/lookups.Po
- -rm -f fontforge/$(DEPDIR)/macbinary.Po
- -rm -f fontforge/$(DEPDIR)/macenc.Po
- -rm -f fontforge/$(DEPDIR)/mathconstants.Po
- -rm -f fontforge/$(DEPDIR)/memory.Po
- -rm -f fontforge/$(DEPDIR)/mm.Po
- -rm -f fontforge/$(DEPDIR)/namelist.Po
- -rm -f fontforge/$(DEPDIR)/nouiutil.Po
- -rm -f fontforge/$(DEPDIR)/nowakowskittfinstr.Po
- -rm -f fontforge/$(DEPDIR)/parsepfa.Po
- -rm -f fontforge/$(DEPDIR)/parsettf.Po
- -rm -f fontforge/$(DEPDIR)/parsettfatt.Po
- -rm -f fontforge/$(DEPDIR)/psread.Po
- -rm -f fontforge/$(DEPDIR)/pua.Po
- -rm -f fontforge/$(DEPDIR)/sfd.Po
- -rm -f fontforge/$(DEPDIR)/sfd1.Po
- -rm -f fontforge/$(DEPDIR)/splinechar.Po
- -rm -f fontforge/$(DEPDIR)/splinefont.Po
- -rm -f fontforge/$(DEPDIR)/splineorder2.Po
- -rm -f fontforge/$(DEPDIR)/splineoverlap.Po
- -rm -f fontforge/$(DEPDIR)/splinerefigure.Po
- -rm -f fontforge/$(DEPDIR)/splinesave.Po
- -rm -f fontforge/$(DEPDIR)/splinesaveafm.Po
- -rm -f fontforge/$(DEPDIR)/splineutil.Po
- -rm -f fontforge/$(DEPDIR)/splineutil2.Po
- -rm -f fontforge/$(DEPDIR)/start.Po
- -rm -f fontforge/$(DEPDIR)/stemdb.Po
- -rm -f fontforge/$(DEPDIR)/tmpfile2.Po
- -rm -f fontforge/$(DEPDIR)/tottf.Po
- -rm -f fontforge/$(DEPDIR)/tottfaat.Po
- -rm -f fontforge/$(DEPDIR)/tottfgpos.Po
- -rm -f fontforge/$(DEPDIR)/tottfvar.Po
- -rm -f fontforge/$(DEPDIR)/ttfinstrs.Po
- -rm -f fontforge/$(DEPDIR)/ttfspecial.Po
- -rm -f fontforge/$(DEPDIR)/unialt.Po
- -rm -f fontforge/$(DEPDIR)/ustring.Po
- -rm -f fontforge/$(DEPDIR)/utype.Po
- -rm -f fontforge/$(DEPDIR)/woff.Po
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -f fontforge/$(DEPDIR)/alphabet.Po
- -rm -f fontforge/$(DEPDIR)/asmfpst.Po
- -rm -f fontforge/$(DEPDIR)/autohint.Po
- -rm -f fontforge/$(DEPDIR)/char.Po
- -rm -f fontforge/$(DEPDIR)/cjk.Po
- -rm -f fontforge/$(DEPDIR)/cvundoes.Po
- -rm -f fontforge/$(DEPDIR)/dumppfa.Po
- -rm -f fontforge/$(DEPDIR)/encoding.Po
- -rm -f fontforge/$(DEPDIR)/fflocale.Po
- -rm -f fontforge/$(DEPDIR)/fvfonts.Po
- -rm -f fontforge/$(DEPDIR)/gwwiconv.Po
- -rm -f fontforge/$(DEPDIR)/lookups.Po
- -rm -f fontforge/$(DEPDIR)/macbinary.Po
- -rm -f fontforge/$(DEPDIR)/macenc.Po
- -rm -f fontforge/$(DEPDIR)/mathconstants.Po
- -rm -f fontforge/$(DEPDIR)/memory.Po
- -rm -f fontforge/$(DEPDIR)/mm.Po
- -rm -f fontforge/$(DEPDIR)/namelist.Po
- -rm -f fontforge/$(DEPDIR)/nouiutil.Po
- -rm -f fontforge/$(DEPDIR)/nowakowskittfinstr.Po
- -rm -f fontforge/$(DEPDIR)/parsepfa.Po
- -rm -f fontforge/$(DEPDIR)/parsettf.Po
- -rm -f fontforge/$(DEPDIR)/parsettfatt.Po
- -rm -f fontforge/$(DEPDIR)/psread.Po
- -rm -f fontforge/$(DEPDIR)/pua.Po
- -rm -f fontforge/$(DEPDIR)/sfd.Po
- -rm -f fontforge/$(DEPDIR)/sfd1.Po
- -rm -f fontforge/$(DEPDIR)/splinechar.Po
- -rm -f fontforge/$(DEPDIR)/splinefont.Po
- -rm -f fontforge/$(DEPDIR)/splineorder2.Po
- -rm -f fontforge/$(DEPDIR)/splineoverlap.Po
- -rm -f fontforge/$(DEPDIR)/splinerefigure.Po
- -rm -f fontforge/$(DEPDIR)/splinesave.Po
- -rm -f fontforge/$(DEPDIR)/splinesaveafm.Po
- -rm -f fontforge/$(DEPDIR)/splineutil.Po
- -rm -f fontforge/$(DEPDIR)/splineutil2.Po
- -rm -f fontforge/$(DEPDIR)/start.Po
- -rm -f fontforge/$(DEPDIR)/stemdb.Po
- -rm -f fontforge/$(DEPDIR)/tmpfile2.Po
- -rm -f fontforge/$(DEPDIR)/tottf.Po
- -rm -f fontforge/$(DEPDIR)/tottfaat.Po
- -rm -f fontforge/$(DEPDIR)/tottfgpos.Po
- -rm -f fontforge/$(DEPDIR)/tottfvar.Po
- -rm -f fontforge/$(DEPDIR)/ttfinstrs.Po
- -rm -f fontforge/$(DEPDIR)/ttfspecial.Po
- -rm -f fontforge/$(DEPDIR)/unialt.Po
- -rm -f fontforge/$(DEPDIR)/ustring.Po
- -rm -f fontforge/$(DEPDIR)/utype.Po
- -rm -f fontforge/$(DEPDIR)/woff.Po
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
- clean-generic clean-libtool clean-noinstLIBRARIES \
- cscopelist-am ctags ctags-am distclean distclean-compile \
- distclean-generic distclean-libtool distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-data install-data-am install-dvi install-dvi-am \
- install-exec install-exec-am install-html install-html-am \
- install-info install-info-am install-man install-pdf \
- install-pdf-am install-ps install-ps-am install-strip \
- installcheck installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags tags-am uninstall uninstall-am
-
-.PRECIOUS: Makefile
-
-
-@CODE_COVERAGE_RULES@
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/dviware/dvisvgm/libs/ff-woff/README.md b/dviware/dvisvgm/libs/ff-woff/README.md
deleted file mode 100644
index 28f094d9be..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# Reduced FontForge library for dvisvgm
-
-This is a radically reduced version of the [FontForge](http://fontforge.org) library required to natively
-build [dvisvgm](https://dvisvgm.de) on Windows. Most of the code not needed to create autohinted
-TrueType and WOFF fonts from [SFD](https://fontforge.github.io/sfdformat.html) files has been removed.
-
-The reduced library depends on [zlib](http://www.zlib.net).
-
----
-Thanks to George Williams and the FontForge project contributors for developing this great font editor and for
-providing it as open source.
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/PfEd.h b/dviware/dvisvgm/libs/ff-woff/fontforge/PfEd.h
deleted file mode 100644
index 2130e38f03..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/PfEd.h
+++ /dev/null
@@ -1,218 +0,0 @@
-/* Copyright (C) 2008-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _PFED_H
-# define _PFED_H
-/* The PfEd table (from PfaEdit, former name of FontForge) is designed to */
-/* store information useful for editing the font. This includes stuff like */
-/* guidelines, background layers, spiro layers, comments, lookup names, etc*/
-/* The idea is that much useful information can be retrieved even after the */
-/* font has been generated into its final form: ttf/otf */
-/* It is something of a catch all table composed of many subtables, each of */
-/* which preserves one particular item. I expect more subtables will be */
-/* added as I, or others, think of more things worth preserving. */
-
-
-# ifndef CHR
-# define CHR(ch1,ch2,ch3,ch4) (((ch1)<<24)|((ch2)<<16)|((ch3)<<8)|(ch4))
-# endif
-
-/* 'PfEd' table format is as follows... */
-/* uint32 version number 0x00010000 */
-/* uint32 subtable count */
-/* struct { uint32 tab, offset } tag/offset for first subtable */
-/* struct { uint32 tab, offset } tag/offset for second subtable */
-/* ... */
-
-/* 'PfEd' 'fcmt' font comment subtable format */
-/* short version number 0/1 */
-/* short string length */
-/* version 0=>String in latin1 (should be ASCII), version 1=>utf8*/
-
- /* 'PfEd' 'cmnt' glyph comment subtable format */
- /* THIS VERSION IS DEPRECATED IN FAVOR OF VERSION 1 DESCRIBED BELOW */
- /* short version number 0 */
- /* short count-of-ranges */
- /* struct { short start-glyph, end-glyph, short offset } */
- /* ... */
- /* foreach glyph >=start-glyph, <=end-glyph(+1) */
- /* uint32 offset to glyph comment string (in UCS2)*/
- /* ... */
- /* And one last offset pointing beyong the end of the last string to enable length calculations */
- /* String table in UCS2 (NUL terminated). All offsets from start*/
- /* of subtable */
-
-/* 'PfEd' 'cmnt' glyph comment subtable format */
-/* New version of 'cmnt' which uses utf8 rather than UCS2 */
-/* short version number 1 */
-/* short count-of-ranges */
-/* struct { short start-glyph, end-glyph, short offset } */
-/* ... */
-/* foreach glyph >=start-glyph, <=end-glyph(+1) */
-/* uint32 offset to glyph comment string (in utf8)*/
-/* ... */
-/* And one last offset pointing beyong the end of the last string to enable length calculations */
-/* String table in utf8 (NUL terminated). All offsets from start*/
-/* of subtable */
-
-/* 'PfEd' 'cvt ' cvt comment subtable format */
-/* short version number 0 */
-/* short size of cvt comment array (might be less that cvt) */
-/* ushort offset[size] to utf8 strings describing cvt entries */
-/* (strings are NUL terminated) */
-/* String table in utf8 (NUL terminated). All offsets from start*/
-/* of subtable */
-
-/* 'PfEd' 'colr' glyph colour subtable */
-/* short version number 0 */
-/* short count-of-ranges */
-/* struct { short start-glyph, end-glyph, uint32 colour (rgb) } */
-
-/* 'PfEd' 'GPOS' GPOS lookup/subtable/anchor names */
-/* short version number 0 */
-/* short count-of-lookups */
-/* struct { short offset name, offset subtables; } */
-/* A subtable: */
-/* short count-of-subtables */
-/* struct { short offset name, offset anchors; } */
-/* An anchor */
-/* short count-of-anchors */
-/* struct { short offset name; } */
-/* string data (utf8, nul terminated) */
-/* (all offsets from start of subtable) */
-
-/* 'PfEd' 'GSUB' GSUB lookup/subtable names */
-/* Same as GPOS (anchors will always be NULL) */
-
-/* The next two tables 'guid' and 'layr' will make use of the */
-/* following data type. The glyph_layer. */
-/* short contour-count */
-/* short image-count (always 0 for now) */
-/* struct { ushort offset; ushort name-off}[contour-count] */
-/* struct { ??? }[image-count] */
-/* Each contour consists of one byte of command and a random */
-/* amount of data dependant on the command. */
-/* See below for a description of the command verbs */
-/* string data in utf8 */
-/* (offsets relative to start of glyph_layer structure ) */
-
-/* 'PfEd' 'guid' Horizontal/Vertical guideline data */
-/* short version number 0 */
-/* short # vertical guidelines */
-/* short # horizontal guidelines */
-/* short mbz */
-/* offset guide spline data -- specifies all guides as splines */
-/* May be NULL */
-/* struct[# vert guidelines] { short x; short offset name} */
-/* struct[# h guidelines] { short y; short offset name} */
-/* a glyph_layer (includes all guides, even those listed above) */
-/* (all offsets, except those in the glyph_layer, relative to start of subtable) */
-
-/* 'PfEd' 'layr' layer data */
-/* short version number 0 */
-/* short layer-count */
-/* struct { short typeflags; short offset-name; uint32 offset-to-layer-data; } */
-/* the layer type is 2=>quadratic, 3=>PostScript, 1=>spiro */
-/* 0x102=>quadratic fore, 0x103=>PS fore */
-/* A layer: */
-/* short count-of-ranges */
-/* struct { short start-glyph, end-glyph, uint32 offset } */
-/* ... */
-/* foreach glyph >=start-glyph, <=end-glyph */
-/* uint32 offset to per-glyph outline data */
-/* many glyph_layers */
-/* (all offsets, except those in the glyph_layers, relative to start of subtable) */
-
- /* Main table tag */
-# define PfEd_TAG CHR('P','f','E','d')
-
- /* Subtable tags */
-# define fcmt_TAG CHR('f','c','m','t') /* Font Comment */
-# define flog_TAG CHR('f','l','o','g') /* FONTLOG */
-# define cmnt_TAG CHR('c','m','n','t') /* Glyph Comments */
-# define cvtc_TAG CHR('c','v','t','c') /* Comments for each cvt entry */
-# define colr_TAG CHR('c','o','l','r') /* Glyph color flags */
-# ifndef GPOS_TAG
-# define GPOS_TAG CHR('G','P','O','S') /* Names for GPOS lookups */
-# define GSUB_TAG CHR('G','S','U','B') /* Names for GSUB lookups */
-# endif
-# define guid_TAG CHR('g','u','i','d') /* Guideline data */
-# define layr_TAG CHR('l','a','y','r') /* Any layers which aren't part of the font */
- /* Backgrounds, spiros, etc. */
-
-
-/* The layer commands used to draw quadratic and cubic layers have two */
-/* componants: A verb, which says what to do, and a modifier which says */
-/* how the data are stored. So a command looks like (verb)|(modifier) */
-/* A moveto command with byte data looks like (V_MoveTo|V_B) */
-/* The two commands to end a contour (V_Close and V_End) take no data */
-/* and use no modifier */
-
-/* layr subtable contour construction verb modifiers specifying data types */
-# define V_B 0 /* data are signed bytes */
-# define V_S 1 /* data are signed shorts */
-# define V_F 2 /* data are fixed longs, divide by 256.0 */
-
-/* layr subtable contour construction verbs */
-# define V_MoveTo 0 /* Start contour, absolute data (2 coords) */
-# define V_LineTo 4 /* Straight line, relative data (2 coords) */
-# define V_HLineTo 8 /* Horizontal line, relative (1 coord, x-off) */
-# define V_VLineTo 12 /* Vertical line, relative (1 coord, y-off) */
-
-# define V_QCurveTo 16 /* Quadratic spline, rel, rel (4 coords, cp, p) */
-# define V_QImplicit 20 /* Quadratic spline, rel (2 coords, cp) */
- /* May only occur after a V_QCurveTo or V_QImplicit (may not start contour) */
- /* Must be followed by a V_QCurveTo or V_QImplicit (this may end contour) */
- /* The on-curve point is implicit by averaging the given cp with the cp in the next verb */
-# define V_QHImplicit 24 /* Quadratic spline, rel (1 coord, cp.x) */
-# define V_QVImplicit 28 /* Quadratic spline, rel (1 coord, cp.y) */
-
-# define V_CurveTo 32 /* Cubic spline, rel, rel (6 coords, cp1, cp2, p) */
-# define V_VHCurveTo 36 /* Cubic spline, rel, rel (4 coords, cp1.y cp2.* p.x) */
- /* cp1.x == current.y, p.y == cp2.y */
-# define V_HVCurveTo 40 /* Cubic spline, rel, rel (4 coords, cp1.x cp2.* p.y) */
-
-# define V_Close 44 /* Close path (optionally adding a line) no data */
-# define V_End 45 /* End path (leave open) no data */
-
-#define COM_MOD(com) ((com)&3)
-#define COM_VERB(com) ((com)&~3)
-
-/* the layer commands used to draw spiro layers are the standard spiro verbs */
-/* these will always take fixed long data (V_L) as described above */
-# ifndef SPIRO_OPEN_CONTOUR
-# define SPIRO_OPEN_CONTOUR '{'
-# define SPIRO_CORNER 'v'
-# define SPIRO_G4 'o'
-# define SPIRO_G2 'c'
-# define SPIRO_LEFT '['
-# define SPIRO_RIGHT ']'
-# define SPIRO_END 'z'
-# endif
-# define SPIRO_CLOSE_CONTOUR '}'
-
-#endif /* _PFED_H */
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/alphabet.c b/dviware/dvisvgm/libs/ff-woff/fontforge/alphabet.c
deleted file mode 100644
index 166a33208a..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/alphabet.c
+++ /dev/null
@@ -1,3348 +0,0 @@
-#include <chardata.h>
-
-const unsigned char c_allzeros[256] = { 0 };
-
-const unichar_t unicode_from_i8859_1[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
- 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
- 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
- 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
- 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
- 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
- 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
- 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
- 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
- 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
- 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
-};
-
-static const unsigned char i8859_1_from_unicode_0[] = {
- 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
- 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
- 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
- 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
- 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
- 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff
-};
-
-static const unsigned char * const i8859_1_from_unicode_[] = {
- i8859_1_from_unicode_0
-};
-
-struct charmap i8859_1_from_unicode = { 0, 0, (unsigned char **) i8859_1_from_unicode_, (unichar_t *) unicode_from_i8859_1 };
-
-const unichar_t unicode_from_i8859_2[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x0104, 0x02d8, 0x0141, 0x00a4, 0x013d, 0x015a, 0x00a7,
- 0x00a8, 0x0160, 0x015e, 0x0164, 0x0179, 0x00ad, 0x017d, 0x017b,
- 0x00b0, 0x0105, 0x02db, 0x0142, 0x00b4, 0x013e, 0x015b, 0x02c7,
- 0x00b8, 0x0161, 0x015f, 0x0165, 0x017a, 0x02dd, 0x017e, 0x017c,
- 0x0154, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7,
- 0x010c, 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e,
- 0x0110, 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7,
- 0x0158, 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df,
- 0x0155, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7,
- 0x010d, 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f,
- 0x0111, 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7,
- 0x0159, 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9
-};
-
-static const unsigned char i8859_2_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0x00, 0x00, 0xa4, 0x00, 0x00, 0xa7, 0xa8, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00,
- 0xb0, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0xc1, 0xc2, 0x00, 0xc4, 0x00, 0x00, 0xc7, 0x00, 0xc9, 0x00, 0xcb, 0x00, 0xcd, 0xce, 0x00,
- 0x00, 0x00, 0x00, 0xd3, 0xd4, 0x00, 0xd6, 0xd7, 0x00, 0x00, 0xda, 0x00, 0xdc, 0xdd, 0x00, 0xdf,
- 0x00, 0xe1, 0xe2, 0x00, 0xe4, 0x00, 0x00, 0xe7, 0x00, 0xe9, 0x00, 0xeb, 0x00, 0xed, 0xee, 0x00,
- 0x00, 0x00, 0x00, 0xf3, 0xf4, 0x00, 0xf6, 0xf7, 0x00, 0x00, 0xfa, 0x00, 0xfc, 0xfd, 0x00, 0x00
-};
-
-static const unsigned char i8859_2_from_unicode_1[] = {
- 0x00, 0x00, 0xc3, 0xe3, 0xa1, 0xb1, 0xc6, 0xe6, 0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0xcf, 0xef,
- 0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0xea, 0xcc, 0xec, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc5, 0xe5, 0x00, 0x00, 0xa5, 0xb5, 0x00,
- 0x00, 0xa3, 0xb3, 0xd1, 0xf1, 0x00, 0x00, 0xd2, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xd5, 0xf5, 0x00, 0x00, 0xc0, 0xe0, 0x00, 0x00, 0xd8, 0xf8, 0xa6, 0xb6, 0x00, 0x00, 0xaa, 0xba,
- 0xa9, 0xb9, 0xde, 0xfe, 0xab, 0xbb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd9, 0xf9,
- 0xdb, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xac, 0xbc, 0xaf, 0xbf, 0xae, 0xbe, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_2_from_unicode_2[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa2, 0xff, 0x00, 0xb2, 0x00, 0xbd, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_2_from_unicode_[] = {
- i8859_2_from_unicode_0,
- i8859_2_from_unicode_1,
- i8859_2_from_unicode_2
-};
-
-struct charmap i8859_2_from_unicode = { 0, 2, (unsigned char **) i8859_2_from_unicode_, (unichar_t *) unicode_from_i8859_2 };
-
-const unichar_t unicode_from_i8859_3[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x0126, 0x02d8, 0x00a3, 0x00a4, 0x0000, 0x0124, 0x00a7,
- 0x00a8, 0x0130, 0x015e, 0x011e, 0x0134, 0x00ad, 0x0000, 0x017b,
- 0x00b0, 0x0127, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x0125, 0x00b7,
- 0x00b8, 0x0131, 0x015f, 0x011f, 0x0135, 0x00bd, 0x0000, 0x017c,
- 0x00c0, 0x00c1, 0x00c2, 0x0000, 0x00c4, 0x010a, 0x0108, 0x00c7,
- 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
- 0x0000, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x0120, 0x00d6, 0x00d7,
- 0x011c, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x016c, 0x015c, 0x00df,
- 0x00e0, 0x00e1, 0x00e2, 0x0000, 0x00e4, 0x010b, 0x0109, 0x00e7,
- 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x0000, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x0121, 0x00f6, 0x00f7,
- 0x011d, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x016d, 0x015d, 0x02d9
-};
-
-static const unsigned char i8859_3_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0x00, 0xa3, 0xa4, 0x00, 0x00, 0xa7, 0xa8, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00,
- 0xb0, 0x00, 0xb2, 0xb3, 0xb4, 0xb5, 0x00, 0xb7, 0xb8, 0x00, 0x00, 0x00, 0x00, 0xbd, 0x00, 0x00,
- 0xc0, 0xc1, 0xc2, 0x00, 0xc4, 0x00, 0x00, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0x00, 0xd6, 0xd7, 0x00, 0xd9, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf,
- 0xe0, 0xe1, 0xe2, 0x00, 0xe4, 0x00, 0x00, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0x00, 0xf6, 0xf7, 0x00, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_3_from_unicode_1[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xe6, 0xc5, 0xe5, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0xf8, 0xab, 0xbb,
- 0xd5, 0xf5, 0x00, 0x00, 0xa6, 0xb6, 0xa1, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa9, 0xb9, 0x00, 0x00, 0xac, 0xbc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xde, 0xfe, 0xaa, 0xba,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdd, 0xfd, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaf, 0xbf, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_3_from_unicode_2[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa2, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_3_from_unicode_[] = {
- i8859_3_from_unicode_0,
- i8859_3_from_unicode_1,
- i8859_3_from_unicode_2
-};
-
-struct charmap i8859_3_from_unicode = { 0, 2, (unsigned char **) i8859_3_from_unicode_, (unichar_t *) unicode_from_i8859_3 };
-
-const unichar_t unicode_from_i8859_4[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x0104, 0x0138, 0x0156, 0x00a4, 0x0128, 0x013b, 0x00a7,
- 0x00a8, 0x0160, 0x0112, 0x0122, 0x0166, 0x00ad, 0x017d, 0x00af,
- 0x00b0, 0x0105, 0x02db, 0x0157, 0x00b4, 0x0129, 0x013c, 0x02c7,
- 0x00b8, 0x0161, 0x0113, 0x0123, 0x0167, 0x014a, 0x017e, 0x014b,
- 0x0100, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x012e,
- 0x010c, 0x00c9, 0x0118, 0x00cb, 0x0116, 0x00cd, 0x00ce, 0x012a,
- 0x0110, 0x0145, 0x014c, 0x0136, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
- 0x00d8, 0x0172, 0x00da, 0x00db, 0x00dc, 0x0168, 0x016a, 0x00df,
- 0x0101, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x012f,
- 0x010d, 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x012b,
- 0x0111, 0x0146, 0x014d, 0x0137, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
- 0x00f8, 0x0173, 0x00fa, 0x00fb, 0x00fc, 0x0169, 0x016b, 0x02d9
-};
-
-static const unsigned char i8859_4_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0x00, 0x00, 0xa4, 0x00, 0x00, 0xa7, 0xa8, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0xaf,
- 0xb0, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0x00, 0x00, 0xc9, 0x00, 0xcb, 0x00, 0xcd, 0xce, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0x00, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf,
- 0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0x00, 0x00, 0xe9, 0x00, 0xeb, 0x00, 0xed, 0xee, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0x00, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_4_from_unicode_1[] = {
- 0xc0, 0xe0, 0x00, 0x00, 0xa1, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0x00, 0x00,
- 0xd0, 0xf0, 0xaa, 0xba, 0x00, 0x00, 0xcc, 0xec, 0xca, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xab, 0xbb, 0x00, 0x00, 0x00, 0x00, 0xa5, 0xb5, 0xcf, 0xef, 0x00, 0x00, 0xc7, 0xe7,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0xf3, 0xa2, 0x00, 0x00, 0xa6, 0xb6, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xd1, 0xf1, 0x00, 0x00, 0x00, 0xbd, 0xbf, 0xd2, 0xf2, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa9, 0xb9, 0x00, 0x00, 0x00, 0x00, 0xac, 0xbc, 0xdd, 0xfd, 0xde, 0xfe, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xd9, 0xf9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xae, 0xbe, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_4_from_unicode_2[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xb2, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_4_from_unicode_[] = {
- i8859_4_from_unicode_0,
- i8859_4_from_unicode_1,
- i8859_4_from_unicode_2
-};
-
-struct charmap i8859_4_from_unicode = { 0, 2, (unsigned char **) i8859_4_from_unicode_, (unichar_t *) unicode_from_i8859_4 };
-
-const unichar_t unicode_from_i8859_5[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x0401, 0x0402, 0x0403, 0x0404, 0x0405, 0x0406, 0x0407,
- 0x0408, 0x0409, 0x040a, 0x040b, 0x040c, 0x00ad, 0x040e, 0x040f,
- 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
- 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
- 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
- 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
- 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
- 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
- 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
- 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
- 0x2116, 0x0451, 0x0452, 0x0453, 0x0454, 0x0455, 0x0456, 0x0457,
- 0x0458, 0x0459, 0x045a, 0x045b, 0x045c, 0x00a7, 0x045e, 0x045f
-};
-
-static const unsigned char i8859_5_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_5_from_unicode_4[] = {
- 0x00, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0x00, 0xae, 0xaf,
- 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0xfe, 0xff,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_5_from_unicode_21[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_5_from_unicode_[] = {
- i8859_5_from_unicode_0,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- i8859_5_from_unicode_4,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- i8859_5_from_unicode_21
-};
-
-struct charmap i8859_5_from_unicode = { 0, 33, (unsigned char **) i8859_5_from_unicode_, (unichar_t *) unicode_from_i8859_5 };
-
-const unichar_t unicode_from_i8859_6[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667,
- 0x0668, 0x0669, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x0000, 0x0000, 0x0000, 0x00a4, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x060c, 0x00ad, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x061b, 0x0000, 0x0000, 0x0000, 0x061f,
- 0x0000, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
- 0x0628, 0x0629, 0x062a, 0x062b, 0x062c, 0x062d, 0x062e, 0x062f,
- 0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637,
- 0x0638, 0x0639, 0x063a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0640, 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647,
- 0x0648, 0x0649, 0x064a, 0x064b, 0x064c, 0x064d, 0x064e, 0x064f,
- 0x0650, 0x0651, 0x0652, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
-};
-
-static const unsigned char i8859_6_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0x00, 0x00, 0xa4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_6_from_unicode_6[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xac, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0xbf,
- 0x00, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0xf0, 0xf1, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_6_from_unicode_[] = {
- i8859_6_from_unicode_0,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- i8859_6_from_unicode_6
-};
-
-struct charmap i8859_6_from_unicode = { 0, 6, (unsigned char **) i8859_6_from_unicode_, (unichar_t *) unicode_from_i8859_6 };
-
-const unichar_t unicode_from_i8859_7[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x02bd, 0x02bc, 0x00a3, 0x0000, 0x0000, 0x00a6, 0x00a7,
- 0x00a8, 0x00a9, 0x0000, 0x00ab, 0x00ac, 0x00ad, 0x0000, 0x2015,
- 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x0384, 0x0385, 0x0386, 0x00b7,
- 0x0388, 0x0389, 0x038a, 0x00bb, 0x038c, 0x00bd, 0x038e, 0x038f,
- 0x0390, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,
- 0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f,
- 0x03a0, 0x03a1, 0x0000, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7,
- 0x03a8, 0x03a9, 0x03aa, 0x03ab, 0x03ac, 0x03ad, 0x03ae, 0x03af,
- 0x03b0, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
- 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf,
- 0x03c0, 0x03c1, 0x03c2, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7,
- 0x03c8, 0x03c9, 0x03ca, 0x03cb, 0x03cc, 0x03cd, 0x03ce, 0x0000
-};
-
-static const unsigned char i8859_7_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0x00, 0xa3, 0x00, 0x00, 0xa6, 0xa7, 0xa8, 0xa9, 0x00, 0xab, 0xac, 0xad, 0x00, 0x00,
- 0xb0, 0xb1, 0xb2, 0xb3, 0x00, 0x00, 0x00, 0xb7, 0x00, 0x00, 0x00, 0xbb, 0x00, 0xbd, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_7_from_unicode_2[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa2, 0xa1, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_7_from_unicode_3[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xb4, 0xb5, 0xb6, 0x00, 0xb8, 0xb9, 0xba, 0x00, 0xbc, 0x00, 0xbe, 0xbf,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0xd0, 0xd1, 0x00, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_7_from_unicode_20[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xaf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_7_from_unicode_[] = {
- i8859_7_from_unicode_0,
- c_allzeros,
- i8859_7_from_unicode_2,
- i8859_7_from_unicode_3,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- i8859_7_from_unicode_20
-};
-
-struct charmap i8859_7_from_unicode = { 0, 32, (unsigned char **) i8859_7_from_unicode_, (unichar_t *) unicode_from_i8859_7 };
-
-const unichar_t unicode_from_i8859_8[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x0000, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
- 0x00a8, 0x00a9, 0x00d7, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x203e,
- 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
- 0x00b8, 0x00b9, 0x00f7, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2017,
- 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
- 0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
- 0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
- 0x05e8, 0x05e9, 0x05ea, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
-};
-
-static const unsigned char i8859_8_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0x00,
- 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0x00, 0xbb, 0xbc, 0xbd, 0xbe, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xba, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_8_from_unicode_5[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_8_from_unicode_20[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaf, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_8_from_unicode_[] = {
- i8859_8_from_unicode_0,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- i8859_8_from_unicode_5,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- i8859_8_from_unicode_20
-};
-
-struct charmap i8859_8_from_unicode = { 0, 32, (unsigned char **) i8859_8_from_unicode_, (unichar_t *) unicode_from_i8859_8 };
-
-const unichar_t unicode_from_i8859_9[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
- 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
- 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
- 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
- 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
- 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
- 0x011e, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
- 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0130, 0x015e, 0x00df,
- 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
- 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x011f, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
- 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x0131, 0x015f, 0x00ff
-};
-
-static const unsigned char i8859_9_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
- 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0xff
-};
-
-static const unsigned char i8859_9_from_unicode_1[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0xf0,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xdd, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xde, 0xfe,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_9_from_unicode_[] = {
- i8859_9_from_unicode_0,
- i8859_9_from_unicode_1
-};
-
-struct charmap i8859_9_from_unicode = { 0, 1, (unsigned char **) i8859_9_from_unicode_, (unichar_t *) unicode_from_i8859_9 };
-
-const unichar_t unicode_from_i8859_10[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x0104, 0x0112, 0x0122, 0x012a, 0x0128, 0x0136, 0x00a7,
- 0x013b, 0x0110, 0x0160, 0x0166, 0x017d, 0x00ad, 0x016a, 0x014a,
- 0x00b0, 0x0105, 0x0113, 0x0123, 0x012b, 0x0129, 0x0137, 0x0000,
- 0x013c, 0x0111, 0x0161, 0x0167, 0x017e, 0x00af, 0x016b, 0x014b,
- 0x0100, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x012e,
- 0x010c, 0x00c9, 0x0118, 0x00cb, 0x0112, 0x00cd, 0x00ce, 0x00cf,
- 0x00d0, 0x0145, 0x014c, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x0168,
- 0x00d8, 0x0172, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
- 0x0101, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x012f,
- 0x010d, 0x00e9, 0x0119, 0x00eb, 0x0113, 0x00ed, 0x00ee, 0x00ef,
- 0x00f0, 0x0146, 0x014d, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x0169,
- 0x00f8, 0x0173, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x0138
-};
-
-static const unsigned char i8859_10_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x00, 0xad, 0x00, 0xbd,
- 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0x00, 0x00, 0xc9, 0x00, 0xcb, 0x00, 0xcd, 0xce, 0xcf,
- 0xd0, 0x00, 0x00, 0xd3, 0xd4, 0xd5, 0xd6, 0x00, 0xd8, 0x00, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
- 0x00, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0x00, 0x00, 0xe9, 0x00, 0xeb, 0x00, 0xed, 0xee, 0xef,
- 0xf0, 0x00, 0x00, 0xf3, 0xf4, 0xf5, 0xf6, 0x00, 0xf8, 0x00, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0x00
-};
-
-static const unsigned char i8859_10_from_unicode_1[] = {
- 0xc0, 0xe0, 0x00, 0x00, 0xa1, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0x00, 0x00,
- 0xa9, 0xb9, 0xcc, 0xec, 0x00, 0x00, 0x00, 0x00, 0xca, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xa3, 0xb3, 0x00, 0x00, 0x00, 0x00, 0xa5, 0xb5, 0xa4, 0xb4, 0x00, 0x00, 0xc7, 0xe7,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6, 0xb6, 0xff, 0x00, 0x00, 0xa8, 0xb8, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xd1, 0xf1, 0x00, 0x00, 0x00, 0xaf, 0xbf, 0xd2, 0xf2, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xaa, 0xba, 0x00, 0x00, 0x00, 0x00, 0xab, 0xbb, 0xd7, 0xf7, 0xae, 0xbe, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xd9, 0xf9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xac, 0xbc, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_10_from_unicode_[] = {
- i8859_10_from_unicode_0,
- i8859_10_from_unicode_1
-};
-
-struct charmap i8859_10_from_unicode = { 0, 1, (unsigned char **) i8859_10_from_unicode_, (unichar_t *) unicode_from_i8859_10 };
-
-const unichar_t unicode_from_i8859_11[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x0e01, 0x0e02, 0x0e03, 0x0e04, 0x0e05, 0x0e06, 0x0e07,
- 0x0e08, 0x0e09, 0x0e0a, 0x0e0b, 0x0e0c, 0x0e0d, 0x0e0e, 0x0e0f,
- 0x0e10, 0x0e11, 0x0e12, 0x0e13, 0x0e14, 0x0e15, 0x0e16, 0x0e17,
- 0x0e18, 0x0e19, 0x0e1a, 0x0e1b, 0x0e1c, 0x0e1d, 0x0e1e, 0x0e1f,
- 0x0e20, 0x0e21, 0x0e22, 0x0e23, 0x0e24, 0x0e25, 0x0e26, 0x0e27,
- 0x0e28, 0x0e29, 0x0e2a, 0x0e2b, 0x0e2c, 0x0e2d, 0x0e2e, 0x0e2f,
- 0x0e30, 0x0e31, 0x0e32, 0x0e33, 0x0e34, 0x0e35, 0x0e36, 0x0e37,
- 0x0e38, 0x0e39, 0x0e3a, 0x0000, 0x0020, 0x0000, 0x0000, 0x0e3f,
- 0x0e40, 0x0e41, 0x0e42, 0x0e43, 0x0e44, 0x0e45, 0x0e46, 0x0e47,
- 0x0e48, 0x0e49, 0x0e4a, 0x0e4b, 0x0e4c, 0x0e4d, 0x0e4e, 0x0e4f,
- 0x0e50, 0x0e51, 0x0e52, 0x0e53, 0x0e54, 0x0e55, 0x0e56, 0x0e57,
- 0x0e58, 0x0e59, 0x0e5a, 0x0e5b, 0x0000, 0x0000, 0x0000, 0x0000
-};
-
-static const unsigned char i8859_11_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xdc, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_11_from_unicode_e[] = {
- 0x00, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
- 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0x00, 0x00, 0x00, 0x00, 0xdf,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_11_from_unicode_[] = {
- i8859_11_from_unicode_0,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- i8859_11_from_unicode_e
-};
-
-struct charmap i8859_11_from_unicode = { 0, 14, (unsigned char **) i8859_11_from_unicode_, (unichar_t *) unicode_from_i8859_11 };
-
-const unichar_t unicode_from_i8859_13[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x201d, 0x00a2, 0x00a3, 0x00a4, 0x201e, 0x00a6, 0x00a7,
- 0x00d8, 0x00a9, 0x0157, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00c6,
- 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x201c, 0x00b5, 0x00b6, 0x00b7,
- 0x00f8, 0x00b9, 0x0000, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00e6,
- 0x0104, 0x012e, 0x0100, 0x0106, 0x00c4, 0x00c5, 0x0118, 0x0112,
- 0x010c, 0x00c9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012a, 0x013b,
- 0x0160, 0x0143, 0x0145, 0x00d3, 0x014c, 0x00d5, 0x00d6, 0x00d7,
- 0x0172, 0x0141, 0x00da, 0x00db, 0x00dc, 0x017b, 0x017d, 0x00df,
- 0x0105, 0x012e, 0x0101, 0x0107, 0x00e4, 0x00e5, 0x0119, 0x0113,
- 0x010d, 0x00e9, 0x017a, 0x0117, 0x0123, 0x0137, 0x012b, 0x013c,
- 0x0161, 0x0144, 0x0146, 0x00f3, 0x014d, 0x00f5, 0x00f6, 0x00f7,
- 0x0173, 0x0142, 0x00fa, 0x00fb, 0x00fc, 0x017c, 0x017e, 0x2019
-};
-
-static const unsigned char i8859_13_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0xa2, 0xa3, 0xa4, 0x00, 0xa6, 0xa7, 0x00, 0xa9, 0x00, 0xab, 0xac, 0xad, 0xae, 0x00,
- 0xb0, 0xb1, 0xb2, 0xb3, 0x00, 0xb5, 0xb6, 0xb7, 0x00, 0xb9, 0x00, 0xbb, 0xbc, 0xbd, 0xbe, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xc4, 0xc5, 0xaf, 0x00, 0x00, 0xc9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0xd3, 0x00, 0xd5, 0xd6, 0xd7, 0xa8, 0x00, 0xda, 0xdb, 0xdc, 0x00, 0x00, 0xdf,
- 0x00, 0x00, 0x00, 0x00, 0xe4, 0xe5, 0xbf, 0x00, 0x00, 0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0xf3, 0x00, 0xf5, 0xf6, 0xf7, 0xb8, 0x00, 0xfa, 0xfb, 0xfc, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_13_from_unicode_1[] = {
- 0xc2, 0xe2, 0x00, 0x00, 0xc0, 0xe0, 0xc3, 0xe3, 0x00, 0x00, 0x00, 0x00, 0xc8, 0xe8, 0x00, 0x00,
- 0x00, 0x00, 0xc7, 0xe7, 0x00, 0x00, 0xcb, 0xeb, 0xc6, 0xe6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xcc, 0xec, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xce, 0xee, 0x00, 0x00, 0xe1, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcd, 0xed, 0x00, 0x00, 0x00, 0xcf, 0xef, 0x00, 0x00, 0x00,
- 0x00, 0xd9, 0xf9, 0xd1, 0xf1, 0xd2, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0xf4, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xd0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xd8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0xea, 0xdd, 0xfd, 0xde, 0xfe, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_13_from_unicode_20[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xb4, 0xa1, 0xa5, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_13_from_unicode_[] = {
- i8859_13_from_unicode_0,
- i8859_13_from_unicode_1,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- i8859_13_from_unicode_20
-};
-
-struct charmap i8859_13_from_unicode = { 0, 32, (unsigned char **) i8859_13_from_unicode_, (unichar_t *) unicode_from_i8859_13 };
-
-const unichar_t unicode_from_i8859_14[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x1e02, 0x1e03, 0x00a3, 0x010a, 0x010b, 0x1e0a, 0x00a7,
- 0x1e80, 0x00a9, 0x1e82, 0x1e0b, 0x1ef2, 0x00ad, 0x00ae, 0x0178,
- 0x1e1e, 0x1e1f, 0x0120, 0x0121, 0x1e40, 0x1e41, 0x00b6, 0x1e56,
- 0x1e81, 0x1e57, 0x1e83, 0x1e60, 0x1ef3, 0x1e84, 0x1e85, 0x1e61,
- 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
- 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
- 0x0174, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x1e6a,
- 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x0176, 0x00df,
- 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
- 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x0175, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x1e6b,
- 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x0177, 0x00ff
-};
-
-static const unsigned char i8859_14_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0x00, 0x00, 0xa3, 0x00, 0x00, 0x00, 0xa7, 0x00, 0xa9, 0x00, 0x00, 0x00, 0xad, 0xae, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0x00, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0x00, 0xdf,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0x00, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0x00, 0xff
-};
-
-static const unsigned char i8859_14_from_unicode_1[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0xa5, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xb2, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xd0, 0xf0, 0xde, 0xfe, 0xaf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_14_from_unicode_1e[] = {
- 0x00, 0x00, 0xa1, 0xa2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6, 0xab, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0xb1,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xb4, 0xb5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb7, 0xb9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xbb, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xf7, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa8, 0xb8, 0xaa, 0xba, 0xbd, 0xbe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xac, 0xbc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_14_from_unicode_[] = {
- i8859_14_from_unicode_0,
- i8859_14_from_unicode_1,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- i8859_14_from_unicode_1e
-};
-
-struct charmap i8859_14_from_unicode = { 0, 30, (unsigned char **) i8859_14_from_unicode_, (unichar_t *) unicode_from_i8859_14 };
-
-const unichar_t unicode_from_i8859_15[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x20ac, 0x00a5, 0x0160, 0x00a7,
- 0x0161, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
- 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x017d, 0x00b5, 0x00b6, 0x00b7,
- 0x017e, 0x00b9, 0x00ba, 0x00bb, 0x0152, 0x0153, 0x0178, 0x00bf,
- 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
- 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
- 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
- 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
- 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
- 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
- 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
-};
-
-static const unsigned char i8859_15_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0xa1, 0xa2, 0xa3, 0x00, 0xa5, 0x00, 0xa7, 0x00, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
- 0xb0, 0xb1, 0xb2, 0xb3, 0x00, 0xb5, 0xb6, 0xb7, 0x00, 0xb9, 0xba, 0xbb, 0x00, 0x00, 0x00, 0xbf,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff
-};
-
-static const unsigned char i8859_15_from_unicode_1[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xbc, 0xbd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa6, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbe, 0x00, 0x00, 0x00, 0x00, 0xb4, 0xb8, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char i8859_15_from_unicode_20[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const i8859_15_from_unicode_[] = {
- i8859_15_from_unicode_0,
- i8859_15_from_unicode_1,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- i8859_15_from_unicode_20
-};
-
-struct charmap i8859_15_from_unicode = { 0, 32, (unsigned char **) i8859_15_from_unicode_, (unichar_t *) unicode_from_i8859_15 };
-
-const unichar_t unicode_from_koi8_r[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x0000,
- 0x2500, 0x2502, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
- 0x252c, 0x2534, 0x253c, 0x2580, 0x2584, 0x2588, 0x258c, 0x2590,
- 0x2591, 0x2592, 0x2593, 0x2320, 0x25a0, 0x2219, 0x221a, 0x2248,
- 0x2264, 0x2265, 0x00a0, 0x2321, 0x00b0, 0x00b2, 0x00b7, 0x00f7,
- 0x2550, 0x2551, 0x2552, 0x0451, 0x2553, 0x2554, 0x2555, 0x2556,
- 0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x255c, 0x255d, 0x255e,
- 0x255f, 0x2560, 0x2561, 0x0401, 0x2562, 0x2563, 0x2564, 0x2565,
- 0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x256b, 0x256c, 0x00a9,
- 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
- 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
- 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
- 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
- 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
- 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
- 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
- 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a
-};
-
-static const unsigned char koi8_r_from_unicode_0[] = {
- 0x7f, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
- 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x9c, 0x00, 0x9d, 0x00, 0x00, 0x00, 0x00, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char koi8_r_from_unicode_4[] = {
- 0x00, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xe1, 0xe2, 0xf7, 0xe7, 0xe4, 0xe5, 0xf6, 0xfa, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, 0xf0,
- 0xf2, 0xf3, 0xf4, 0xf5, 0xe6, 0xe8, 0xe3, 0xfe, 0xfb, 0xfd, 0xff, 0xf9, 0xf8, 0xfc, 0xe0, 0xf1,
- 0xc1, 0xc2, 0xd7, 0xc7, 0xc4, 0xc5, 0xd6, 0xda, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0,
- 0xd2, 0xd3, 0xd4, 0xd5, 0xc6, 0xc8, 0xc3, 0xde, 0xdb, 0xdd, 0xdf, 0xd9, 0xd8, 0xdc, 0xc0, 0xd1,
- 0x00, 0xa3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char koi8_r_from_unicode_22[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x95, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x97, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x98, 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char koi8_r_from_unicode_23[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x93, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char koi8_r_from_unicode_25[] = {
- 0x80, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0x00, 0x00, 0x00,
- 0x83, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00, 0x86, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0xa1, 0xa2, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0,
- 0xb1, 0xb2, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x8b, 0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00, 0x8d, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x00, 0x00,
- 0x8f, 0x90, 0x91, 0x92, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x94, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const koi8_r_from_unicode_[] = {
- koi8_r_from_unicode_0,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- koi8_r_from_unicode_4,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- koi8_r_from_unicode_22,
- koi8_r_from_unicode_23,
- c_allzeros,
- koi8_r_from_unicode_25
-};
-
-struct charmap koi8_r_from_unicode = { 0, 37, (unsigned char **) koi8_r_from_unicode_, (unichar_t *) unicode_from_koi8_r };
-
-const unichar_t unicode_from_jis201[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x00a5, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x203e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x0000, 0xff61, 0xff62, 0xff63, 0xff64, 0xff65, 0xff66, 0xff67,
- 0xff68, 0xff69, 0xff6a, 0xff6b, 0xff6c, 0xff6d, 0xff6e, 0xff6f,
- 0xff70, 0xff71, 0xff72, 0xff73, 0xff74, 0xff75, 0xff76, 0xff77,
- 0xff78, 0xff79, 0xff7a, 0xff7b, 0xff7c, 0xff7d, 0xff7e, 0xff7f,
- 0xff80, 0xff81, 0xff82, 0xff83, 0xff84, 0xff85, 0xff86, 0xff87,
- 0xff88, 0xff89, 0xff8a, 0xff8b, 0xff8c, 0xff8d, 0xff8e, 0xff8f,
- 0xff90, 0xff91, 0xff92, 0xff93, 0xff94, 0xff95, 0xff96, 0xff97,
- 0xff98, 0xff99, 0xff9a, 0xff9b, 0xff9c, 0xff9d, 0xff9e, 0xff9f,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
-};
-
-static const unsigned char jis201_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x00, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char jis201_from_unicode_20[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char jis201_from_unicode_ff[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
- 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const jis201_from_unicode_[] = {
- jis201_from_unicode_0,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- jis201_from_unicode_20,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- jis201_from_unicode_ff
-};
-
-struct charmap jis201_from_unicode = { 0, 255, (unsigned char **) jis201_from_unicode_, (unichar_t *) unicode_from_jis201 };
-
-const unichar_t unicode_from_win[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x20ac, 0x0081, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
- 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
- 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, 0x009d, 0x009e, 0x0178,
- 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
- 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
- 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
- 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
- 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
- 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
- 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
- 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
- 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
- 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
- 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
-};
-
-static const unsigned char win_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
- 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff
-};
-
-static const unsigned char win_from_unicode_1[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x8c, 0x9c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x8a, 0x9a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char win_from_unicode_2[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char win_from_unicode_20[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x96, 0x97, 0x00, 0x00, 0x00, 0x91, 0x92, 0x82, 0x00, 0x93, 0x94, 0x84, 0x00,
- 0x86, 0x87, 0x95, 0x00, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x89, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8b, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char win_from_unicode_21[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const win_from_unicode_[] = {
- win_from_unicode_0,
- win_from_unicode_1,
- win_from_unicode_2,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- win_from_unicode_20,
- win_from_unicode_21
-};
-
-struct charmap win_from_unicode = { 0, 33, (unsigned char **) win_from_unicode_, (unichar_t *) unicode_from_win };
-
-const unichar_t unicode_from_mac[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
- 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
- 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
- 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
- 0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
- 0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
- 0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
- 0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x00e6, 0x00f8,
- 0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
- 0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
- 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
- 0x00ff, 0x0178, 0x2044, 0x20ac, 0x2039, 0x203a, 0xfb01, 0xfb02,
- 0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
- 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
- 0xf8ff, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc,
- 0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7
-};
-
-static const unsigned char mac_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
- 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xca, 0xc1, 0xa2, 0xa3, 0x00, 0xb4, 0x00, 0xa4, 0xac, 0xa9, 0xbb, 0xc7, 0xc2, 0x00, 0xa8, 0xf8,
- 0xa1, 0xb1, 0x00, 0x00, 0xab, 0xb5, 0xa6, 0xe1, 0xfc, 0x00, 0xbc, 0xc8, 0x00, 0x00, 0x00, 0xc0,
- 0xcb, 0xe7, 0xe5, 0xcc, 0x80, 0x81, 0xae, 0x82, 0xe9, 0x83, 0xe6, 0xe8, 0xed, 0xea, 0xeb, 0xec,
- 0x00, 0x84, 0xf1, 0xee, 0xef, 0xcd, 0x85, 0x00, 0xaf, 0xf4, 0xf2, 0xf3, 0x86, 0x00, 0x00, 0xa7,
- 0x88, 0x87, 0x89, 0x8b, 0x8a, 0x8c, 0xbe, 0x8d, 0x8f, 0x8e, 0x90, 0x91, 0x93, 0x92, 0x94, 0x95,
- 0x00, 0x96, 0x98, 0x97, 0x99, 0x9b, 0x9a, 0xd6, 0xbf, 0x9d, 0x9c, 0x9e, 0x9f, 0x00, 0x00, 0xd8
-};
-
-static const unsigned char mac_from_unicode_1[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xce, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xc4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char mac_from_unicode_2[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf6, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf9, 0xfa, 0xfb, 0xfe, 0xf7, 0xfd, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char mac_from_unicode_3[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xb9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char mac_from_unicode_20[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0xd0, 0xd1, 0x00, 0x00, 0x00, 0xd4, 0xd5, 0xe2, 0x00, 0xd2, 0xd3, 0xe3, 0x00,
- 0xa0, 0xe0, 0xa5, 0x00, 0x00, 0x00, 0xc9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0xdd, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xda, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdb, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char mac_from_unicode_21[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char mac_from_unicode_22[] = {
- 0x00, 0x00, 0xb6, 0x00, 0x00, 0x00, 0xc6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8,
- 0x00, 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0xb0, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xba, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xad, 0x00, 0x00, 0x00, 0xb2, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char mac_from_unicode_25[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char mac_from_unicode_f8[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0
-};
-
-static const unsigned char mac_from_unicode_fb[] = {
- 0x00, 0xde, 0xdf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const mac_from_unicode_[] = {
- mac_from_unicode_0,
- mac_from_unicode_1,
- mac_from_unicode_2,
- mac_from_unicode_3,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- mac_from_unicode_20,
- mac_from_unicode_21,
- mac_from_unicode_22,
- c_allzeros,
- c_allzeros,
- mac_from_unicode_25,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- mac_from_unicode_f8,
- c_allzeros,
- c_allzeros,
- mac_from_unicode_fb
-};
-
-struct charmap mac_from_unicode = { 0, 251, (unsigned char **) mac_from_unicode_, (unichar_t *) unicode_from_mac };
-
-const unichar_t unicode_from_MacSymbol[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x2200, 0x0023, 0x2203, 0x0025, 0x0026, 0x220d,
- 0x0028, 0x0029, 0x2217, 0x002b, 0x002c, 0x2212, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x2245, 0x0391, 0x0392, 0x03a7, 0x0394, 0x0395, 0x03a6, 0x0393,
- 0x0397, 0x0399, 0x03d1, 0x039a, 0x039b, 0x039c, 0x039d, 0x039f,
- 0x03a0, 0x0398, 0x03a1, 0x03a3, 0x03a4, 0x03a5, 0x03c2, 0x03a9,
- 0x039e, 0x03a8, 0x0396, 0x005b, 0x2234, 0x005d, 0x22a5, 0x005f,
- 0xf8e5, 0x03b1, 0x03b2, 0x03c7, 0x03b4, 0x03b5, 0x03c6, 0x03b3,
- 0x03b7, 0x03b9, 0x03d5, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03bf,
- 0x03c0, 0x03b8, 0x03c1, 0x03c3, 0x03c4, 0x03c5, 0x03d6, 0x03c9,
- 0x03be, 0x03c8, 0x03b6, 0x007b, 0x007c, 0x007d, 0x223c, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x0000, 0x03d2, 0x2032, 0x2264, 0x2044, 0x221e, 0x0192, 0x2663,
- 0x2666, 0x2665, 0x2660, 0x2194, 0x2190, 0x2191, 0x2192, 0x2193,
- 0x00b0, 0x00b1, 0x2033, 0x2265, 0x00d7, 0x221d, 0x2202, 0x2022,
- 0x00f7, 0x2260, 0x2261, 0x2248, 0x2026, 0xf8e6, 0xf8e7, 0x21b5,
- 0x2135, 0x2111, 0x211c, 0x2118, 0x2297, 0x2295, 0x2205, 0x2229,
- 0x222a, 0x2283, 0x2287, 0x2284, 0x2282, 0x2286, 0x2208, 0x2209,
- 0x2220, 0x2207, 0x00ae, 0x00a9, 0x2122, 0x220f, 0x221a, 0x22c5,
- 0x00ac, 0x2227, 0x2228, 0x21d4, 0x21d0, 0x21d1, 0x21d2, 0x21d3,
- 0x22c4, 0x2329, 0xf8e8, 0xf8e9, 0xf8ea, 0x2211, 0xf8eb, 0xf8ec,
- 0xf8ed, 0xf8ee, 0xf8ef, 0xf8f0, 0xf8f1, 0xf8f2, 0xf8f3, 0xf8f4,
- 0xf8ff, 0x232a, 0x222b, 0x2320, 0xf8f5, 0x2321, 0xf8f6, 0xf8f7,
- 0xf8f8, 0xf8f9, 0xf8fa, 0xf8fb, 0xf8fc, 0xf8fd, 0xf8fe, 0x02c7
-};
-
-static const unsigned char MacSymbol_from_unicode_0[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x21, 0x00, 0x23, 0x00, 0x25, 0x26, 0x00, 0x28, 0x29, 0x00, 0x2b, 0x2c, 0x00, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5b, 0x00, 0x5d, 0x00, 0x5f,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7b, 0x7c, 0x7d, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x00, 0x00, 0xd8, 0x00, 0xd2, 0x00,
- 0xb0, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char MacSymbol_from_unicode_1[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xa6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char MacSymbol_from_unicode_2[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char MacSymbol_from_unicode_3[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x41, 0x42, 0x47, 0x44, 0x45, 0x5a, 0x48, 0x51, 0x49, 0x4b, 0x4c, 0x4d, 0x4e, 0x58, 0x4f,
- 0x50, 0x52, 0x00, 0x53, 0x54, 0x55, 0x46, 0x43, 0x59, 0x57, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x61, 0x62, 0x67, 0x64, 0x65, 0x7a, 0x68, 0x71, 0x69, 0x6b, 0x6c, 0x6d, 0x6e, 0x78, 0x6f,
- 0x70, 0x72, 0x56, 0x73, 0x74, 0x75, 0x66, 0x63, 0x79, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x4a, 0xa1, 0x00, 0x00, 0x6a, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char MacSymbol_from_unicode_20[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xb7, 0x00, 0x00, 0x00, 0xbc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xa2, 0xb2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xa4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char MacSymbol_from_unicode_21[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0xc2, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xd4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xac, 0xad, 0xae, 0xaf, 0xab, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xdc, 0xdd, 0xde, 0xdf, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char MacSymbol_from_unicode_22[] = {
- 0x22, 0x00, 0xb6, 0x24, 0x00, 0xc6, 0x00, 0xd1, 0xce, 0xcf, 0x00, 0x00, 0x00, 0x27, 0x00, 0xd5,
- 0x00, 0xe5, 0x2d, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0xd6, 0x00, 0x00, 0xb5, 0xa5, 0x00,
- 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd9, 0xda, 0xc7, 0xc8, 0xf2, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xb9, 0xba, 0x00, 0x00, 0xa3, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xcc, 0xc9, 0xcb, 0x00, 0xcd, 0xca, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xc5, 0x00, 0xc4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x5e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xe0, 0xd7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char MacSymbol_from_unicode_23[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xf3, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe1, 0xf1, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char MacSymbol_from_unicode_26[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xaa, 0x00, 0x00, 0xa7, 0x00, 0xa9, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char MacSymbol_from_unicode_f8[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xbd, 0xbe, 0xe2, 0xe3, 0xe4, 0xe6, 0xe7, 0xe8, 0xe9, 0xea,
- 0xeb, 0xec, 0xed, 0xee, 0xef, 0xf4, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xf0
-};
-
-static const unsigned char * const MacSymbol_from_unicode_[] = {
- MacSymbol_from_unicode_0,
- MacSymbol_from_unicode_1,
- MacSymbol_from_unicode_2,
- MacSymbol_from_unicode_3,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- MacSymbol_from_unicode_20,
- MacSymbol_from_unicode_21,
- MacSymbol_from_unicode_22,
- MacSymbol_from_unicode_23,
- c_allzeros,
- c_allzeros,
- MacSymbol_from_unicode_26,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- c_allzeros,
- MacSymbol_from_unicode_f8
-};
-
-struct charmap MacSymbol_from_unicode = { 0, 248, (unsigned char **) MacSymbol_from_unicode_, (unichar_t *) unicode_from_MacSymbol };
-
-const unichar_t unicode_from_ZapfDingbats[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x2701, 0x2702, 0x2703, 0x2704, 0x260e, 0x2706, 0x2707,
- 0x2708, 0x2709, 0x261b, 0x261e, 0x270c, 0x270d, 0x270e, 0x270f,
- 0x2710, 0x2711, 0x2712, 0x2713, 0x2714, 0x2715, 0x2716, 0x2717,
- 0x2718, 0x2719, 0x271a, 0x271b, 0x271c, 0x271d, 0x271e, 0x271f,
- 0x2720, 0x2721, 0x2722, 0x2723, 0x2724, 0x2725, 0x2726, 0x2727,
- 0x2605, 0x2729, 0x272a, 0x272b, 0x272c, 0x272d, 0x272e, 0x272f,
- 0x2730, 0x2731, 0x2732, 0x2733, 0x2734, 0x2735, 0x2736, 0x2737,
- 0x2738, 0x2739, 0x273a, 0x273b, 0x273c, 0x273d, 0x273e, 0x273f,
- 0x2740, 0x2741, 0x2742, 0x2743, 0x2744, 0x2745, 0x2746, 0x2747,
- 0x2748, 0x2749, 0x274a, 0x274b, 0x25cf, 0x274d, 0x25a0, 0x274f,
- 0x2750, 0x2751, 0x2752, 0x25b2, 0x25bc, 0x25c6, 0x2756, 0x25d7,
- 0x2758, 0x2759, 0x275a, 0x275b, 0x275c, 0x275d, 0x275e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x0000, 0x2761, 0x2762, 0x2763, 0x2764, 0x2765, 0x2766, 0x2767,
- 0x2663, 0x2666, 0x2665, 0x2660, 0x2460, 0x2461, 0x2462, 0x2463,
- 0x2464, 0x2465, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469, 0x2777,
- 0x2778, 0x2779, 0x277a, 0x277b, 0x277c, 0x277d, 0x277e, 0x277f,
- 0x2780, 0x2781, 0x2782, 0x2783, 0x2784, 0x2785, 0x2786, 0x2787,
- 0x2788, 0x2789, 0x278a, 0x278b, 0x278c, 0x278d, 0x278e, 0x278f,
- 0x2790, 0x2791, 0x2792, 0x2793, 0x2794, 0x2192, 0x2194, 0x2195,
- 0x2798, 0x2799, 0x279a, 0x279b, 0x279c, 0x279d, 0x279e, 0x279f,
- 0x27a0, 0x27a1, 0x27a2, 0x27a3, 0x27a4, 0x27a5, 0x27a6, 0x27a7,
- 0x27a8, 0x27a9, 0x27aa, 0x27ab, 0x27ac, 0x27ad, 0x27ae, 0x27af,
- 0x0000, 0x27b1, 0x27b2, 0x27b3, 0x27b4, 0x27b5, 0x27b6, 0x27b7,
- 0x27b8, 0x27b9, 0x27ba, 0x27bb, 0x27bc, 0x27bd, 0x27be, 0x27bf
-};
-
-static const unsigned char ZapfDingbats_from_unicode_21[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xd5, 0x00, 0xd6, 0xd7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char ZapfDingbats_from_unicode_24[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char ZapfDingbats_from_unicode_25[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char ZapfDingbats_from_unicode_26[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x25, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x2b, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xab, 0x00, 0x00, 0xa8, 0x00, 0xaa, 0xa9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char ZapfDingbats_from_unicode_27[] = {
- 0x00, 0x21, 0x22, 0x23, 0x24, 0x00, 0x26, 0x27, 0x28, 0x29, 0x00, 0x00, 0x2c, 0x2d, 0x2e, 0x2f,
- 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
- 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x00, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
- 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
- 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x00, 0x6d, 0x00, 0x6f,
- 0x70, 0x71, 0x72, 0x00, 0x00, 0x00, 0x76, 0x00, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x00,
- 0x00, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
- 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0x00, 0x00, 0x00, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
- 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
- 0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-static const unsigned char * const ZapfDingbats_from_unicode_[] = {
- ZapfDingbats_from_unicode_21,
- c_allzeros,
- c_allzeros,
- ZapfDingbats_from_unicode_24,
- ZapfDingbats_from_unicode_25,
- ZapfDingbats_from_unicode_26,
- ZapfDingbats_from_unicode_27
-};
-
-struct charmap ZapfDingbats_from_unicode = { 33, 39, (unsigned char **) ZapfDingbats_from_unicode_, (unichar_t *) unicode_from_ZapfDingbats };
-
-unichar_t *unicode_from_alphabets[]={
- (unichar_t *) unicode_from_win, 0,0,
- (unichar_t *) unicode_from_i8859_1,
- (unichar_t *) unicode_from_i8859_2,
- (unichar_t *) unicode_from_i8859_3,
- (unichar_t *) unicode_from_i8859_4,
- (unichar_t *) unicode_from_i8859_5,
- (unichar_t *) unicode_from_i8859_6,
- (unichar_t *) unicode_from_i8859_7,
- (unichar_t *) unicode_from_i8859_8,
- (unichar_t *) unicode_from_i8859_9,
- (unichar_t *) unicode_from_i8859_10,
- (unichar_t *) unicode_from_i8859_11,
- (unichar_t *) unicode_from_i8859_13,
- (unichar_t *) unicode_from_i8859_14,
- (unichar_t *) unicode_from_i8859_15,
- (unichar_t *) unicode_from_koi8_r,
- (unichar_t *) unicode_from_jis201,
- (unichar_t *) unicode_from_win,
- (unichar_t *) unicode_from_mac,
- (unichar_t *) unicode_from_MacSymbol,
- (unichar_t *) unicode_from_ZapfDingbats,
- (unichar_t *) unicode_from_i8859_1, /* Place holder for user-defined map */
- 0
-};
-
-struct charmap *alphabets_from_unicode[]={ 0,0,0,
- &i8859_1_from_unicode,
- &i8859_2_from_unicode,
- &i8859_3_from_unicode,
- &i8859_4_from_unicode,
- &i8859_5_from_unicode,
- &i8859_6_from_unicode,
- &i8859_7_from_unicode,
- &i8859_8_from_unicode,
- &i8859_9_from_unicode,
- &i8859_10_from_unicode,
- &i8859_11_from_unicode,
- &i8859_13_from_unicode,
- &i8859_14_from_unicode,
- &i8859_15_from_unicode,
- &koi8_r_from_unicode,
- &jis201_from_unicode,
- &win_from_unicode,
- &mac_from_unicode,
- &MacSymbol_from_unicode,
- &ZapfDingbats_from_unicode,
- &i8859_1_from_unicode, /* Place holder for user-defined map*/
- 0
-};
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/asmfpst.c b/dviware/dvisvgm/libs/ff-woff/fontforge/asmfpst.c
deleted file mode 100644
index 9276f9aece..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/asmfpst.c
+++ /dev/null
@@ -1,1007 +0,0 @@
-/* Copyright (C) 2003-2007 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-#include "ttf.h"
-
-/* ************************************************************************** */
-/* *************** Routines to test conversion from OpenType **************** */
-/* ************************************************************************** */
-
-int ClassesMatch(int cnt1,char **classes1,int cnt2,char **classes2) {
- int i;
-
- if ( cnt1!=cnt2 )
-return( false );
- for ( i=1; i<cnt2; ++i )
- if ( strcmp(classes1[i],classes2[i])!=0 )
-return( false );
-
-return( true );
-}
-
-static char **classcopy(char **names,int nextclass) {
- char **ret;
- int i;
-
- if ( nextclass <= 1 )
-return( NULL );
-
- ret = malloc(nextclass*sizeof(char *));
- ret[0] = NULL;
- for ( i=1; i<nextclass; ++i )
- ret[i] = copy(names[i]);
-return( ret );
-}
-
-FPST *FPSTGlyphToClass(FPST *fpst) {
- FPST *new;
- int nextclass=0, i,j,k, max, cnt, ch;
- char *pt, *end;
- char **names;
-
- if ( fpst->format!=pst_glyphs )
-return( NULL );
-
- new = chunkalloc(sizeof(FPST));
- new->type = fpst->type;
- new->format = pst_class;
- new->subtable = fpst->subtable;
- new->rule_cnt = fpst->rule_cnt;
- new->rules = calloc(fpst->rule_cnt,sizeof(struct fpst_rule));
-
- max = 100; nextclass=1;
- names = malloc(max*sizeof(char *));
- names[0] = NULL;
- for ( i=0; i<fpst->rule_cnt; ++i ) {
- for ( j=0; j<3; ++j ) {
- cnt = 0;
- if ( (&fpst->rules[i].u.glyph.names)[j]!=NULL && *(&fpst->rules[i].u.glyph.names)[j]!='\0' ) {
- for ( pt=(&fpst->rules[i].u.glyph.names)[j]; *pt; ) {
- while ( *pt==' ' ) ++pt;
- if ( *pt=='\0' )
- break;
- while ( *pt!=' ' && *pt!='\0' ) ++pt;
- ++cnt;
- }
- }
- (&new->rules[i].u.class.ncnt)[j] = cnt;
- if ( cnt!=0 ) {
- (&new->rules[i].u.class.nclasses)[j] = malloc(cnt*sizeof(uint16));
- cnt = 0;
- for ( pt=(&fpst->rules[i].u.glyph.names)[j]; *pt; pt=end ) {
- while ( *pt==' ' ) ++pt;
- if ( *pt=='\0' )
- break;
- for ( end=pt ; *end!=' ' && *end!='\0'; ++end );
- ch = *end; *end='\0';
- for ( k=1; k<nextclass; ++k )
- if ( strcmp(pt,names[k])==0 )
- break;
- if ( k==nextclass ) {
- if ( nextclass>=max )
- names = realloc(names,(max+=100)*sizeof(char *));
- names[nextclass++] = copy(pt);
- }
- *end = ch;
- (&new->rules[i].u.class.nclasses)[j][cnt++] = k;
- }
- }
- }
- new->rules[i].lookup_cnt = fpst->rules[i].lookup_cnt;
- new->rules[i].lookups = malloc(fpst->rules[i].lookup_cnt*sizeof(struct seqlookup));
- memcpy(new->rules[i].lookups,fpst->rules[i].lookups,
- fpst->rules[i].lookup_cnt*sizeof(struct seqlookup));
- }
- new->nccnt = nextclass;
- new->nclass = names;
- new->nclassnames = calloc(nextclass,sizeof(char *)); /* Leave as NULL */
- if ( fpst->type==pst_chainpos || fpst->type==pst_chainsub ) {
- /* our class set has one "class" for each glyph used anywhere */
- /* all three class sets are the same */
- new->bccnt = new->fccnt = nextclass;
- new->bclass = classcopy(names,nextclass);
- new->fclass = classcopy(names,nextclass);
- new->bclassnames = calloc(nextclass,sizeof(char *)); /* Leave as NULL */
- new->fclassnames = calloc(nextclass,sizeof(char *)); /* Leave as NULL */
- }
-return( new );
-}
-
-static int ValidSubs(OTLookup *otl ) {
-return( otl->lookup_type == gsub_single );
-}
-
-static void TreeFree(struct contexttree *tree) {
- int i;
-
- if ( tree==NULL )
-return;
-
- for ( i=0; i<tree->branch_cnt; ++i )
- TreeFree(tree->branches[i].branch);
-
- free( tree->branches );
- free( tree->rules );
- chunkfree( tree,sizeof(*tree) );
-}
-
-static int TreeLabelState(struct contexttree *tree, int snum) {
- int i;
-
- if ( tree->branch_cnt==0 && tree->ends_here!=NULL ) {
- tree->state = 0;
-return( snum );
- }
-
- tree->state = snum++;
- for ( i=0; i<tree->branch_cnt; ++i )
- snum = TreeLabelState(tree->branches[i].branch,snum);
- tree->next_state = snum;
-
-return( snum );
-}
-
-static OTLookup *RuleHasSubsHere(struct fpst_rule *rule,int depth) {
- int i,j;
-
- if ( depth<rule->u.class.bcnt )
-return( NULL );
- depth -= rule->u.class.bcnt;
- if ( depth>=rule->u.class.ncnt )
-return( NULL );
- for ( i=0; i<rule->lookup_cnt; ++i ) {
- if ( rule->lookups[i].seq==depth ) {
- /* It is possible to have two substitutions applied at the same */
- /* location. I can't deal with that here */
- for ( j=i+1; j<rule->lookup_cnt; ++j ) {
- if ( rule->lookups[j].seq==depth )
-return( (OTLookup *) 0xffffffff );
- }
-return( rule->lookups[i].lookup );
- }
- }
-
-return( 0 );
-}
-
-static OTLookup *RulesAllSameSubsAt(struct contexttree *me,int pos) {
- int i;
- OTLookup *tag=(OTLookup *) 0x01, *newtag; /* Can't use 0 as an "unused" flag because it is perfectly valid for there to be no substititution. But then all rules must have no subs */
-
- for ( i=0; i<me->rule_cnt; ++i ) {
- newtag = RuleHasSubsHere(me->rules[i].rule,pos);
- if ( tag==(OTLookup *) 0x01 )
- tag=newtag;
- else if ( newtag!=tag )
-return( (OTLookup *) 0xffffffff );
- }
- if ( tag==(OTLookup *) 0x01 )
-return( NULL ); /* Should never happen */
-
-return( tag );
-}
-
-static int TreeFollowBranches(SplineFont *sf,struct contexttree *me,int pending_pos) {
- int i, j;
-
- me->pending_pos = pending_pos;
- if ( me->ends_here!=NULL ) {
- /* If any rule ends here then we have to be able to apply all current */
- /* and pending substitutions */
- if ( pending_pos!=-1 ) {
- me->applymarkedsubs = RulesAllSameSubsAt(me,pending_pos);
- if ( me->applymarkedsubs==(OTLookup *) 0xffffffff )
-return( false );
- if ( !ValidSubs(me->applymarkedsubs))
-return( false );
- }
- me->applycursubs = RulesAllSameSubsAt(me,me->depth);
- if ( me->applycursubs==(OTLookup *) 0xffffffff )
-return( false );
- if ( me->applycursubs!=NULL && !ValidSubs(me->applycursubs))
-return( false );
- for ( i=0; i<me->branch_cnt; ++i ) {
- if ( !TreeFollowBranches(sf,me->branches[i].branch,-1))
-return( false );
- }
- } else {
- for ( i=0; i<me->branch_cnt; ++i ) {
- for ( j=0; j<me->rule_cnt; ++j )
- if ( me->rules[j].branch==me->branches[i].branch &&
- RuleHasSubsHere(me->rules[j].rule,me->depth)!=NULL )
- break;
- if ( j<me->rule_cnt ) {
- if ( pending_pos==-1 ) {
- pending_pos = me->pending_pos = me->depth;
- me->markme = true;
- } else
-return( false );
- }
- if ( !TreeFollowBranches(sf,me->branches[i].branch,pending_pos))
-return( false );
- }
- }
-
-return( true );
-}
-
-static struct contexttree *_FPST2Tree(FPST *fpst,struct contexttree *parent,int class) {
- struct contexttree *me = chunkalloc(sizeof(struct contexttree));
- int i, rcnt, ccnt, k, thisclass;
- uint16 *classes;
-
- if ( fpst!=NULL ) {
- me->depth = -1;
- me->rule_cnt = fpst->rule_cnt;
- me->rules = calloc(me->rule_cnt,sizeof(struct ct_subs));
- for ( i=0; i<me->rule_cnt; ++i )
- me->rules[i].rule = &fpst->rules[i];
- me->parent = NULL;
- } else {
- me->depth = parent->depth+1;
- for ( i=rcnt=0; i<parent->rule_cnt; ++i )
- if ( parent->rules[i].rule->u.class.allclasses[me->depth] == class )
- ++rcnt;
- me->rule_cnt = rcnt;
- me->rules = calloc(me->rule_cnt,sizeof(struct ct_subs));
- for ( i=rcnt=0; i<parent->rule_cnt; ++i )
- if ( parent->rules[i].rule->u.class.allclasses[me->depth] == class )
- me->rules[rcnt++].rule = parent->rules[i].rule;
- me->parent = parent;
- }
- classes = malloc(me->rule_cnt*sizeof(uint16));
- for ( i=ccnt=0; i<me->rule_cnt; ++i ) {
- thisclass = me->rules[i].thisclassnum = me->rules[i].rule->u.class.allclasses[me->depth+1];
- if ( thisclass==0xffff ) {
- if ( me->ends_here==NULL )
- me->ends_here = me->rules[i].rule;
- } else {
- for ( k=0; k<ccnt; ++k )
- if ( classes[k] == thisclass )
- break;
- if ( k==ccnt )
- classes[ccnt++] = thisclass;
- }
- }
- me->branch_cnt = ccnt;
- me->branches = calloc(ccnt,sizeof(struct ct_branch));
- for ( i=0; i<ccnt; ++i )
- me->branches[i].classnum = classes[i];
- for ( i=0; i<ccnt; ++i ) {
- me->branches[i].branch = _FPST2Tree(NULL,me,classes[i]);
- for ( k=0; k<me->rule_cnt; ++k )
- if ( classes[i]==me->rules[k].thisclassnum )
- me->rules[k].branch = me->branches[i].branch;
- }
- free(classes );
-return( me );
-}
-
-static void FPSTBuildAllClasses(FPST *fpst) {
- int i, off,j;
-
- for ( i=0; i<fpst->rule_cnt; ++i ) {
- fpst->rules[i].u.class.allclasses = malloc((fpst->rules[i].u.class.bcnt+
- fpst->rules[i].u.class.ncnt+
- fpst->rules[i].u.class.fcnt+
- 1)*sizeof(uint16));
- off = fpst->rules[i].u.class.bcnt;
- for ( j=0; j<off; ++j )
- fpst->rules[i].u.class.allclasses[j] = fpst->rules[i].u.class.bclasses[off-1-j];
- for ( j=0; j<fpst->rules[i].u.class.ncnt; ++j )
- fpst->rules[i].u.class.allclasses[off+j] = fpst->rules[i].u.class.nclasses[j];
- off += j;
- for ( j=0; j<fpst->rules[i].u.class.fcnt; ++j )
- fpst->rules[i].u.class.allclasses[off+j] = fpst->rules[i].u.class.fclasses[j];
- fpst->rules[i].u.class.allclasses[off+j] = 0xffff; /* End of rule marker */
- }
-}
-
-static void FPSTFreeAllClasses(FPST *fpst) {
- int i;
-
- for ( i=0; i<fpst->rule_cnt; ++i ) {
- free( fpst->rules[i].u.class.allclasses );
- fpst->rules[i].u.class.allclasses = NULL;
- }
-}
-
-static struct contexttree *FPST2Tree(SplineFont *sf,FPST *fpst) {
- struct contexttree *ret;
-
- if ( fpst->format != pst_class )
-return( NULL );
-
- /* I could check for subclasses rather than ClassesMatch, but then I'd have */
- /* to make sure that class 0 was used (if at all) consistently */
- if ( (fpst->bccnt!=0 && !ClassesMatch(fpst->bccnt,fpst->bclass,fpst->nccnt,fpst->nclass)) ||
- (fpst->fccnt!=0 && !ClassesMatch(fpst->fccnt,fpst->fclass,fpst->nccnt,fpst->nclass)))
-return( NULL );
-
- FPSTBuildAllClasses(fpst);
-
- ret = _FPST2Tree(fpst,NULL,0);
-
- if ( !TreeFollowBranches(sf,ret,-1) ) {
- TreeFree(ret);
- ret = NULL;
- }
-
- FPSTFreeAllClasses(fpst);
-
- if ( ret!=NULL )
- TreeLabelState(ret,1); /* actually, it's states 0&1, but this will do */
-
-return( ret );
-}
-
-static struct contexttree *TreeNext(struct contexttree *cur) {
- struct contexttree *p;
- int i;
-
- if ( cur->branch_cnt!=0 )
-return( cur->branches[0].branch );
- else {
- for (;;) {
- p = cur->parent;
- if ( p==NULL )
-return( NULL );
- for ( i=0; i<p->branch_cnt; ++i ) {
- if ( p->branches[i].branch==cur ) {
- ++i;
- break;
- }
- }
- if ( i<p->branch_cnt )
-return( p->branches[i].branch );
- cur = p;
- }
- }
-}
-
-int FPSTisMacable(SplineFont *sf, FPST *fpst) {
- int i;
- int featureType, featureSetting;
- struct contexttree *ret;
- FeatureScriptLangList *fl;
-
- if ( fpst->type!=pst_contextsub && fpst->type!=pst_chainsub )
-return( false );
- for ( fl = fpst->subtable->lookup->features; fl!=NULL; fl=fl->next ) {
- if ( OTTagToMacFeature(fl->featuretag,&featureType,&featureSetting) &&
- scriptsHaveDefault(fl->scripts) )
- break;
- }
- if ( fl==NULL )
-return( false );
-
- if ( fpst->format == pst_glyphs ) {
- FPST *tempfpst = FPSTGlyphToClass(fpst);
- ret = FPST2Tree(sf, tempfpst);
- FPSTFree(tempfpst);
- TreeFree(ret);
-return( ret!=NULL );
- } else if ( fpst->format == pst_class ) {
- ret = FPST2Tree(sf, fpst);
- TreeFree(ret);
-return( ret!=NULL );
- } else if ( fpst->format != pst_coverage )
-return( false );
-
- for ( i=0; i<fpst->rule_cnt; ++i ) {
- if ( fpst->rules[i].u.coverage.ncnt+
- fpst->rules[i].u.coverage.bcnt+
- fpst->rules[i].u.coverage.fcnt>=10 )
-return( false ); /* Let's not make a state machine this complicated */
-
- if ( fpst->rules[i].lookup_cnt==2 ) {
- switch ( fpst->format ) {
- case pst_coverage:
- /* Second substitution must be on the final glyph */
- if ( fpst->rules[i].u.coverage.fcnt!=0 ||
- fpst->rules[i].lookups[0].seq==fpst->rules[i].lookups[1].seq ||
- (fpst->rules[i].lookups[0].seq!=fpst->rules[i].u.coverage.ncnt-1 &&
- fpst->rules[i].lookups[1].seq!=fpst->rules[i].u.coverage.ncnt-1) )
-return( false );
- break;
- default:
-return( false );
- }
- if ( !ValidSubs(fpst->rules[i].lookups[1].lookup) )
-return( false );
-
- } else if ( fpst->rules[i].lookup_cnt!=1 )
-return( false );
- if ( !ValidSubs(fpst->rules[i].lookups[0].lookup) )
-return( false );
- }
-
-return( fpst->rule_cnt>0 );
-}
-
-/* ************************************************************************** */
-/* *************** Conversion from OpenType Context/Chaining **************** */
-/* ************************************************************************** */
-
- /* ********************** From Forms ********************** */
-static int IsMarkChar( SplineChar *sc ) {
- AnchorPoint *ap;
-
- ap=sc->anchor;
- while ( ap!=NULL && (ap->type==at_centry || ap->type==at_cexit) )
- ap = ap->next;
- if ( ap!=NULL && (ap->type==at_mark || ap->type==at_basemark) )
-return( true );
-
-return( false );
-}
-
-static char *GlyphListToNames(SplineChar **classglyphs) {
- int i, len;
- char *ret, *pt;
-
- for ( i=len=0; classglyphs[i]!=NULL; ++i )
- len += strlen(classglyphs[i]->name)+1;
- ret = pt = malloc(len+1);
- for ( i=0; classglyphs[i]!=NULL; ++i ) {
- strcpy(pt,classglyphs[i]->name);
- pt += strlen(pt);
- *pt++ = ' ';
- }
- if ( pt>ret )
- pt[-1] = '\0';
- else
- *ret = '\0';
-return( ret );
-}
-
-static char *BuildMarkClass(SplineFont *sf) {
- SplineChar *sc, **markglyphs;
- int i, mg;
- char *ret;
-
- mg = 0;
- markglyphs = malloc(sf->glyphcnt*sizeof(SplineChar *));
- for ( i=0; i<sf->glyphcnt; ++i ) if ( (sc=sf->glyphs[i])!=NULL ) {
- if ( IsMarkChar(sc)) {
- markglyphs[mg++] = sc;
- }
- }
- markglyphs[mg] = NULL;
- ret = GlyphListToNames(markglyphs);
- free(markglyphs);
-return(ret);
-}
-
-static char *BuildClassNames(SplineChar **glyphs,uint16 *map, int classnum) {
- int i, len;
- char *ret, *pt;
-
- for ( i=len=0; glyphs[i]!=NULL; ++i ) {
- if ( map[i]==classnum )
- len += strlen(glyphs[i]->name)+1;
- }
- ret = pt = malloc(len+1);
- for ( i=len=0; glyphs[i]!=NULL; ++i ) {
- if ( map[i]==classnum ) {
- strcpy(pt,glyphs[i]->name);
- pt += strlen(pt);
- *pt++ = ' ';
- }
- }
- if ( pt>ret )
- pt[-1] = '\0';
- else
- *ret = '\0';
-return( ret );
-}
-
-static int FindFormLookupsForScript(SplineFont *sf,uint32 script,OTLookup *lookups[4]) {
- OTLookup *otl;
- FeatureScriptLangList *fl;
- struct scriptlanglist *sl;
- int which;
-
- memset(lookups,0,4*sizeof(OTLookup *));
- for ( otl=sf->gsub_lookups; otl!=NULL; otl=otl->next ) if ( !otl->unused && otl->lookup_type == gsub_single ) {
- for ( fl=otl->features; fl!=NULL; fl=fl->next ) {
- if ( fl->featuretag== CHR('i','n','i','t') ) which = 0;
- else if ( fl->featuretag== CHR('m','e','d','i') ) which = 1;
- else if ( fl->featuretag== CHR('f','i','n','a') ) which = 2;
- else if ( fl->featuretag== CHR('i','s','o','l') ) which = 3;
- else
- continue;
- if ( lookups[which]!=NULL )
- continue;
- for ( sl=fl->scripts; sl!=NULL && sl->script!=script; sl=sl->next );
- if ( sl==NULL )
- continue;
- lookups[which] = otl;
- break;
- }
- }
- if ( lookups[0]!=NULL || lookups[1]!=NULL || lookups[2]!=NULL || lookups[3]!=NULL )
-return( true );
-
-return( false );
-}
-
-ASM *ASMFromOpenTypeForms(SplineFont *sf,uint32 script) {
- int i, which, cg, mg;
- SplineChar *sc, *rsc, **classglyphs, **markglyphs;
- PST *pst;
- OTLookup *lookups[4];
- ASM *sm;
- int flags;
-
- if ( !FindFormLookupsForScript(sf,script,lookups))
-return( NULL );
- flags = (lookups[0]!=NULL ? lookups[0]->lookup_flags
- :lookups[1]!=NULL ? lookups[1]->lookup_flags
- :lookups[2]!=NULL ? lookups[2]->lookup_flags
- : lookups[3]->lookup_flags);
- classglyphs = calloc((sf->glyphcnt+1),sizeof(SplineChar *));
- markglyphs = malloc((sf->glyphcnt+1)*sizeof(SplineChar *));
-
- mg = 0;
- for ( i=0; i<sf->glyphcnt; ++i ) if ( (sc=sf->glyphs[i])!=NULL ) {
- if ( (flags&pst_ignorecombiningmarks) && IsMarkChar(sc)) {
- markglyphs[mg++] = sc;
- } else if ( SCScriptFromUnicode(sc)==script ) {
- classglyphs[sc->orig_pos] = sc;
- for ( pst = sc->possub; pst!=NULL; pst=pst->next ) if ( pst->subtable!=NULL ) {
- OTLookup *otl = pst->subtable->lookup;
- for ( which=3; which>=0; --which ) {
- if ( otl==lookups[which])
- break;
- }
- if ( which==-1 )
- continue;
- rsc = SFGetChar(sf,-1,pst->u.subs.variant);
- if ( rsc!=NULL )
- classglyphs[rsc->orig_pos] = rsc;
- }
- }
- }
- markglyphs[mg] = NULL;
-
- cg = 0;
- for ( i=0; i<sf->glyphcnt; ++i )
- if ( classglyphs[i]!=NULL )
- classglyphs[cg++] = classglyphs[i];
- classglyphs[cg] = NULL;
-
- sm = chunkalloc(sizeof(ASM));
- sm->type = asm_context;
- sm->flags = (flags&pst_r2l) ? asm_descending : 0;
- /* This is a temporary value. It should be replaced if we will retain */
- /* this state machine */
- sm->subtable = (lookups[3]!=NULL ? lookups[3] : lookups[0]!=NULL ? lookups[0] : lookups[1]!=NULL ? lookups[1] : lookups[2])->subtables;
- /* Only one (or two) classes of any importance: Letter in this script */
- /* might already be formed. Might be a lig. Might be normal */
- /* Oh, if ignoremarks is true, then combining marks merit a class of their own */
- sm->class_cnt = (flags&pst_ignorecombiningmarks) ? 6 : 5;
- sm->classes = calloc(sm->class_cnt,sizeof(char *));
-
- sm->classes[4] = GlyphListToNames(classglyphs);
- if ( flags&pst_ignorecombiningmarks )
- sm->classes[5] = GlyphListToNames(markglyphs);
- free(classglyphs); free(markglyphs);
-
-
- /* State 0,1 are start states */
- /* State 2 means we have found one interesting letter, transformed current to 'init' and marked it (in case we need to make it isolated) */
- /* State 3 means we have found two interesting letters, transformed current to 'medi' and marked (in case we need to make it final) */
- sm->state_cnt = 4;
- sm->state = calloc(sm->state_cnt*sm->class_cnt,sizeof(struct asm_state));
-
- /* State 0,1 (start), Class 4 (char in script) takes us to state 2 */
- sm->state[4].next_state = 2;
- sm->state[4].flags = 0x8000;
-
- sm->state[sm->class_cnt+4] = sm->state[4];
-
- for ( i=0; i<4; ++i ) {
- sm->state[2*sm->class_cnt+i].next_state = 0;
- sm->state[2*sm->class_cnt+i].u.context.mark_lookup = lookups[3];/* Isolated */
- }
-
- sm->state[2*sm->class_cnt+4].next_state = 3;
- sm->state[2*sm->class_cnt+4].flags = 0x8000;
- sm->state[2*sm->class_cnt+4].u.context.mark_lookup = lookups[0]; /* Initial */
-
- for ( i=0; i<4; ++i ) {
- sm->state[3*sm->class_cnt+i].next_state = 0;
- sm->state[3*sm->class_cnt+i].u.context.mark_lookup = lookups[2];/* Final */
- }
-
- sm->state[3*sm->class_cnt+4].next_state = 3;
- sm->state[3*sm->class_cnt+4].flags = 0x8000;
- sm->state[3*sm->class_cnt+4].u.context.mark_lookup = lookups[1]; /* Medial */
-
- /* Deleted glyph retains same state, just eats the glyph */
- for ( i=0; i<sm->state_cnt; ++i ) {
- int pos = i*sm->class_cnt+2, mpos = i*sm->class_cnt+5;
- sm->state[pos].next_state = i;
- sm->state[pos].flags = 0;
- sm->state[pos].u.context.cur_lookup = NULL;
- sm->state[pos].u.context.mark_lookup = NULL;
- /* same for ignored marks */
- if ( flags&pst_ignorecombiningmarks )
- sm->state[mpos].next_state = i;
- }
-
-return( sm );
-}
-
- /* ********************** From Coverage FPST ********************** */
-static SplineChar **morx_cg_FigureClasses(SplineChar ***tables,int match_len,
- int ***classes, int *cc, uint16 **mp, int *gc,
- FPST *fpst,SplineFont *sf,int ordered) {
- int i,j,k, mask, max, class_cnt, gcnt, gtot;
- SplineChar ***temp, *sc, **glyphs, **gall;
- uint16 *map;
- int *nc;
- int *next;
- /* For each glyph used, figure out what coverage tables it gets used in */
- /* then all the glyphs which get used in the same set of coverage tables */
- /* can form one class */
-
- if ( match_len>10 ) /* would need too much space to figure out */
-return( NULL );
-
- gtot = 0;
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- sf->glyphs[i]->lsidebearing = 1;
- if ( !ordered )
- sf->glyphs[i]->ttf_glyph = gtot++;
- else if ( sf->glyphs[i]->ttf_glyph+1>gtot )
- gtot = sf->glyphs[i]->ttf_glyph+1;
- }
-
- max=0;
- for ( i=0; i<match_len; ++i ) {
- for ( k=0; tables[i][k]!=NULL; ++k );
- if ( k>max ) max=k;
- }
- next = calloc(1<<match_len,sizeof(int));
- temp = malloc((1<<match_len)*sizeof(SplineChar **));
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- sf->glyphs[i]->lsidebearing = 0;
- sf->glyphs[i]->ticked = false;
- }
- for ( i=0; i<match_len; ++i ) {
- for ( j=0; tables[i][j]!=NULL ; ++j )
- tables[i][j]->lsidebearing |= 1<<i;
- }
-
- for ( i=0; i<match_len; ++i ) {
- for ( j=0; (sc=tables[i][j])!=NULL ; ++j ) if ( !sc->ticked ) {
- mask = sc->lsidebearing;
- if ( next[mask]==0 )
- temp[mask] = malloc(max*sizeof(SplineChar *));
- temp[mask][next[mask]++] = sc;
- sc->ticked = true;
- }
- }
-
- gall = calloc(gtot+1,sizeof(SplineChar *));
- class_cnt = gcnt = 0;
- for ( i=0; i<(1<<match_len); ++i ) {
- if ( next[i]!=0 ) {
- for ( k=0; k<next[i]; ++k ) {
- gall[temp[i][k]->ttf_glyph] = temp[i][k];
- temp[i][k]->lsidebearing = class_cnt;
- }
- ++class_cnt;
- gcnt += next[i];
- free(temp[i]);
- }
- }
- if ( fpst->subtable->lookup->lookup_flags & pst_ignorecombiningmarks ) {
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL && sf->glyphs[i]->ttf_glyph!=-1 ) {
- if ( sf->glyphs[i]->lsidebearing==0 && IsMarkChar(sf->glyphs[i])) {
- sf->glyphs[i]->lsidebearing = class_cnt;
- ++gcnt;
- }
- }
- ++class_cnt; /* Add a class for the marks so we can ignore them */
- }
- *cc = class_cnt+4;
- glyphs = malloc((gcnt+1)*sizeof(SplineChar *));
- map = malloc((gcnt+1)*sizeof(uint16));
- gcnt = 0;
- for ( i=0; i<gtot; ++i ) if ( gall[i]!=NULL ) {
- glyphs[gcnt] = gall[i];
- map[gcnt++] = gall[i]->lsidebearing+4; /* there are 4 standard classes, so our first class starts at 4 */
- }
- glyphs[gcnt] = NULL;
- free(gall);
- free(temp);
- *gc = gcnt;
- *mp = map;
-
- nc = calloc(match_len,sizeof(int));
- *classes = malloc((match_len+1)*sizeof(int *));
- for ( i=0; i<match_len; ++i )
- (*classes)[i] = malloc((class_cnt+1)*sizeof(int));
- (*classes)[i] = NULL;
-
- class_cnt = 0;
- for ( i=0; i<(1<<match_len); ++i ) {
- if ( next[i]!=0 ) {
- for ( j=0; j<match_len; ++j ) if ( i&(1<<j)) {
- (*classes)[j][nc[j]++] = class_cnt+4; /* there are 4 standard classes, so our first class starts at 4 */
- }
- ++class_cnt;
- }
- }
- for ( j=0; j<match_len; ++j )
- (*classes)[j][nc[j]] = 0xffff; /* End marker */
-
- free(next);
- free(nc);
-return( glyphs );
-}
-
-static ASM *ASMFromCoverageFPST(SplineFont *sf,FPST *fpst,int ordered) {
- SplineChar ***tables, **glyphs;
- int **classes, class_cnt, gcnt;
- int i, j, k, match_len;
- struct fpst_rule *r = &fpst->rules[0];
- int subspos = r->u.coverage.bcnt+r->lookups[0].seq;
- OTLookup *substag = r->lookups[0].lookup, *finaltag=NULL;
- uint16 *map;
- ASM *sm;
-
- /* In one very specific case we can support two substitutions */
- if ( r->lookup_cnt==2 ) {
- if ( r->lookups[0].seq==r->u.coverage.ncnt-1 ) {
- finaltag = substag;
- subspos = r->u.coverage.bcnt+r->lookups[1].seq;
- substag = r->lookups[1].lookup;
- } else
- finaltag = r->lookups[1].lookup;
- }
-
- tables = malloc((r->u.coverage.ncnt+r->u.coverage.bcnt+r->u.coverage.fcnt+1)*sizeof(SplineChar **));
- for ( j=0, i=r->u.coverage.bcnt-1; i>=0; --i, ++j )
- tables[j] = SFGlyphsFromNames(sf,r->u.coverage.bcovers[i]);
- for ( i=0; i<r->u.coverage.ncnt; ++i, ++j )
- tables[j] = SFGlyphsFromNames(sf,r->u.coverage.ncovers[i]);
- for ( i=0; i<r->u.coverage.fcnt; ++i, ++j )
- tables[j] = SFGlyphsFromNames(sf,r->u.coverage.fcovers[i]);
- tables[j] = NULL;
- match_len = j;
-
- for ( i=0; i<match_len; ++i )
- if ( tables[i]==NULL || tables[i][0]==NULL )
-return( NULL );
-
- glyphs = morx_cg_FigureClasses(tables,match_len,
- &classes,&class_cnt,&map,&gcnt,fpst,sf,ordered);
- if ( glyphs==NULL )
-return( NULL );
-
- for ( i=0; i<match_len; ++i )
- free(tables[i]);
- free(tables);
-
- sm = chunkalloc(sizeof(ASM));
- sm->type = asm_context;
- sm->flags = (fpst->subtable->lookup->lookup_flags&pst_r2l) ? asm_descending : 0;
- sm->class_cnt = class_cnt;
- sm->classes = malloc(class_cnt*sizeof(char *));
- sm->classes[0] = sm->classes[1] = sm->classes[2] = sm->classes[3] = NULL;
- for ( i=4; i<class_cnt; ++i )
- sm->classes[i] = BuildClassNames(glyphs,map,i);
- free(glyphs); free(map);
-
- /* Now build the state machine */
- /* we have match_len+1 states (there are 2 initial states) */
- /* we transition from the initial state to our first state when we get */
- /* any class which makes up the first coverage table. From the first */
- /* to the second on any class which makes up the second ... */
- sm->state_cnt = match_len+1;
- sm->state = calloc(sm->state_cnt*sm->class_cnt,sizeof(struct asm_state));
- for ( j=0; j<match_len; ++j ) {
- int off = (j+1)*sm->class_cnt;
- for ( i=0; i<class_cnt; ++i ) {
- for ( k=0; classes[j][k]!=0xffff && classes[j][k]!=i; ++k );
- if ( classes[j][k]==i ) {
- sm->state[off+i].next_state = j+2;
- if ( j==match_len-1 ) {
- sm->state[off+i].next_state = 0;
- sm->state[off+i].flags = 0x4000;
- if ( subspos==j )
- sm->state[off+i].u.context.cur_lookup = substag;
- else {
- sm->state[off+i].u.context.mark_lookup = substag;
- sm->state[off+i].u.context.cur_lookup = finaltag;
- }
- } else if ( subspos==j )
- sm->state[off+i].flags = 0x8000;
- } else if ( i==2 || ((fpst->subtable->lookup->lookup_flags&pst_ignorecombiningmarks) && i==class_cnt-1 ) )
- sm->state[off+i].next_state = j+1; /* Deleted glyph is a noop */
- else if ( j!=0 )
- sm->state[off+i].flags = 0x4000; /* Don't eat the current glyph, go back to state 0 and see if it will start the sequence over again */
- }
- }
- /* Class 0 and class 1 should be the same. We only filled in class 1 above*/
- memcpy(sm->state,sm->state+sm->class_cnt,sm->class_cnt*sizeof(struct asm_state));
- for ( j=0; j<match_len; ++j )
- free(classes[j]);
- free(classes);
-return( sm );
-}
-
- /* ********************** From Class FPST ********************** */
-static void SMSetState(struct asm_state *trans,struct contexttree *cur,int class) {
- int i;
-
- for ( i=0; i<cur->branch_cnt; ++i ) {
- if ( cur->branches[i].classnum==class ) {
- trans->next_state = cur->branches[i].branch->state;
- /* If we go back to state 0, it means we want to start from */
- /* the begining again, and we should check against the */
- /* current glyph (which failed for us, but might be useful */
- /* to start a new operation). Even if we did not fail we */
- /* should still do this (so don't advance the glyph) */
- trans->flags = cur->branches[i].branch->state!=0
- ? cur->branches[i].branch->markme?0x8000:0x0000
- : cur->branches[i].branch->markme?0xc000:0x4000;
- trans->u.context.mark_lookup = cur->branches[i].branch->applymarkedsubs;
- trans->u.context.cur_lookup = cur->branches[i].branch->applycursubs;
-return;
- }
- }
-
- if ( cur->ends_here!=NULL ) {
- trans->next_state = 0;
- trans->flags = 0x4000;
- trans->u.context.mark_lookup = cur->applymarkedsubs;
- trans->u.context.cur_lookup = cur->applycursubs;
- } else
- trans->next_state = 0;
-}
-
-static struct asm_state *AnyActiveSubstrings(struct contexttree *tree,
- struct contexttree *cur,int class, struct asm_state *trans, int classcnt) {
- struct fpc *any = &cur->rules[0].rule->u.class;
- int i,rc,j, b;
-
- for ( i=1; i<=cur->depth; ++i ) {
- for ( rc=0; rc<tree->rule_cnt; ++rc ) {
- struct fpc *r = &tree->rules[rc].rule->u.class;
- int ok = true;
- for ( j=0; j<=cur->depth-i; ++j ) {
- if ( any->allclasses[j+i]!=r->allclasses[j] ) {
- ok = false;
- break;
- }
- }
- if ( ok && r->allclasses[j]==class ) {
- struct contexttree *sub = tree;
- for ( j=0; j<=cur->depth-i; ++j ) {
- for ( b=0; b<sub->branch_cnt; ++b ) {
- if ( sub->branches[b].classnum==r->allclasses[j] ) {
- sub = sub->branches[b].branch;
- break;
- }
- }
- }
- if ( trans[sub->state*classcnt+class+3].next_state!=0 &&
- (sub->pending_pos+i == cur->pending_pos ||
- sub->pending_pos == -1 ))
-return( &trans[sub->state*classcnt+class+3] );
- }
- }
- }
-return( NULL );
-}
-
-static int FailureTrans( struct asm_state *trans ) {
-return( trans->next_state==0 &&
- trans->u.context.mark_lookup==NULL &&
- trans->u.context.cur_lookup==NULL );
-}
-
-static ASM *ASMFromClassFPST(SplineFont *sf,FPST *fpst, struct contexttree *tree) {
- ASM *sm;
- struct contexttree *cur;
- int i;
-
- sm = chunkalloc(sizeof(ASM));
- sm->type = asm_context;
- sm->flags = (fpst->subtable->lookup->lookup_flags&pst_r2l) ? asm_descending : 0;
- /* mac class sets have four magic classes, opentype sets only have one */
- sm->class_cnt = (fpst->subtable->lookup->lookup_flags&pst_ignorecombiningmarks) ? fpst->nccnt+4 : fpst->nccnt+3;
- sm->classes = malloc(sm->class_cnt*sizeof(char *));
- sm->classes[0] = sm->classes[1] = sm->classes[2] = sm->classes[3] = NULL;
- for ( i=1; i<fpst->nccnt; ++i )
- sm->classes[i+3] = copy(fpst->nclass[i]);
- if ( fpst->subtable->lookup->lookup_flags&pst_ignorecombiningmarks )
- sm->classes[sm->class_cnt-1] = BuildMarkClass(sf);
-
- /* Now build the state machine */
- sm->state_cnt = tree->next_state;
- sm->state = calloc(sm->state_cnt*sm->class_cnt,sizeof(struct asm_state));
- for ( cur=tree; cur!=NULL; cur = TreeNext(cur)) if ( cur->state!=0 ) {
- int off = cur->state*sm->class_cnt;
-
- SMSetState(&sm->state[off+1],cur,0); /* Out of bounds state */
- sm->state[off+2].next_state = cur->state; /* Deleted glyph gets eaten and ignored */
- if ( fpst->subtable->lookup->lookup_flags&pst_ignorecombiningmarks )
- sm->state[off+sm->class_cnt-1].next_state = cur->state; /* As do ignored marks */
- for ( i=1; i<fpst->nccnt; ++i )
- SMSetState(&sm->state[off+i+3],cur,i);
- }
- /* Class 0 and class 1 should be the same. We only filled in class 1 above*/
- memcpy(sm->state,sm->state+sm->class_cnt,sm->class_cnt*sizeof(struct asm_state));
- /* Do a sort of transitive closure on states, so if we are looking for */
- /* either "abcd" or "bce", don't lose the "bce" inside "abce" */
- FPSTBuildAllClasses(fpst);
- for ( cur = tree; cur!=NULL; cur = TreeNext(cur)) if ( cur->state>1 ) {
- int off = cur->state*sm->class_cnt;
- for ( i=1; i<fpst->nccnt; ++i ) if ( FailureTrans(&sm->state[off+3+i]) ) {
- struct asm_state *trans =
- AnyActiveSubstrings(tree,cur,i, sm->state,sm->class_cnt);
- if ( trans!=NULL )
- sm->state[off+3+i] = *trans;
- }
- }
- FPSTFreeAllClasses(fpst);
-return( sm );
-}
-
-ASM *ASMFromFPST(SplineFont *sf,FPST *fpst,int ordered) {
- FPST *tempfpst=fpst;
- struct contexttree *tree=NULL;
- ASM *sm;
-
- if ( fpst->format==pst_glyphs )
- tempfpst = FPSTGlyphToClass( fpst );
- if ( tempfpst->format==pst_coverage )
- sm = ASMFromCoverageFPST(sf,fpst,ordered);
- else {
- tree = FPST2Tree(sf, tempfpst);
- if ( tree!=NULL ) {
- sm = ASMFromClassFPST(sf,tempfpst,tree);
- TreeFree(tree);
- } else
- sm = NULL;
- }
-
- if ( tempfpst!=fpst )
- FPSTFree(tempfpst);
- /* This is a temporary value. It should be replaced if we plan to */
- /* retain this state machine */
- if ( sm!=NULL )
- sm->subtable = fpst->subtable;
-return( sm );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/autohint.c b/dviware/dvisvgm/libs/ff-woff/fontforge/autohint.c
deleted file mode 100644
index 034978b919..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/autohint.c
+++ /dev/null
@@ -1,2708 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include <math.h>
-#include "stemdb.h"
-#include <utype.h>
-#include <chardata.h>
-#include "edgelist.h"
-
-float OpenTypeLoadHintEqualityTolerance = 0.0;
-
-/* to create a type 1 font we must come up with the following entries for the
- private dictionary:
- BlueValues -- an array of 2n entries where Blue[2i]<Blue[2i+1] max n=7, Blue[i]>0
- OtherBlues -- (optional) OtherBlue[i]<0
- (blue zones should be at least 3 units appart)
- StdHW -- (o) array with one entry, standard hstem height
- StdVW -- (o) ditto vstem width
- StemSnapH -- (o) up to 12 numbers containing various hstem heights (includes StdHW), small widths first
- StemSnapV -- (o) ditto, vstem
-This file has routines to figure out at least some of these
-
-Also other routines to guess at good per-character hints
-*/
-
-static void AddBlue(real val, real array[5], int force) {
- val = rint(val);
- if ( !force && (val<array[0]-array[1] || val >array[0]+array[1] ))
-return; /* Outside of one sd */
- if ( array[3]==0 && array[4]==0 )
- array[3] = array[4] = val;
- else if ( val>array[4] )
- array[4] = val;
- else if ( val<array[3] )
- array[3] = val;
-}
-
-static void MergeZones(real zone1[5], real zone2[5]) {
- if ( zone1[2]!=0 && zone2[2]!=0 &&
- ((zone1[4]+3>zone2[3] && zone1[3]<=zone2[3]) ||
- (zone2[4]+3>zone1[3] && zone2[3]<=zone1[3]) )) {
- if (( zone2[0]<zone1[0]-zone1[1] || zone2[0] >zone1[0]+zone1[1] ) &&
- ( zone1[0]<zone2[0]-zone2[1] || zone1[0] >zone2[0]+zone2[1] ))
- /* the means of the zones are too far appart, don't merge em */;
- else {
- if ( zone1[0]<zone2[0] ) zone2[0] = zone1[0];
- if ( zone1[1]>zone2[1] ) zone2[1] = zone1[1];
- }
- zone1[2] = 0;
- }
-}
-
-/* I can deal with latin, greek and cyrillic because the they all come from */
-/* the same set of letter shapes and have all evolved together and have */
-/* various common features (ascenders, descenders, lower case, etc.). Other */
-/* scripts don't fit */
-void FindBlues( SplineFont *sf, int layer, real blues[14], real otherblues[10]) {
- real caph[5], xh[5], ascenth[5], digith[5], descenth[5], base[5];
- real otherdigits[5];
- int i, j, k;
- DBounds b;
-
- /* Go through once to get some idea of the average value so we can weed */
- /* out undesirables */
- caph[0] = caph[1] = caph[2] = xh[0] = xh[1] = xh[2] = 0;
- ascenth[0] = ascenth[1] = ascenth[2] = digith[0] = digith[1] = digith[2] = 0;
- descenth[0] = descenth[1] = descenth[2] = base[0] = base[1] = base[2] = 0;
- otherdigits[0] = otherdigits[1] = otherdigits[2] = 0;
- for ( i=0; i<sf->glyphcnt; ++i ) {
- if ( sf->glyphs[i]!=NULL && sf->glyphs[i]->layers[layer].splines!=NULL ) {
- int enc = sf->glyphs[i]->unicodeenc;
- const unichar_t *upt;
- if ( enc<0x10000 && isalnum(enc) &&
- ((enc>=32 && enc<128 ) || enc == 0xfe || enc==0xf0 || enc==0xdf ||
- enc==0x131 ||
- (enc>=0x391 && enc<=0x3f3 ) ||
- (enc>=0x400 && enc<=0x4e9 ) )) {
- /* no accented characters (or ligatures) */
- if ( unicode_alternates[enc>>8]!=NULL &&
- (upt =unicode_alternates[enc>>8][enc&0xff])!=NULL &&
- upt[1]!='\0' )
- continue;
- SplineCharFindBounds(sf->glyphs[i],&b);
- if ( b.miny==0 && b.maxy==0 )
- continue;
- if ( enc=='g' || enc=='j' || enc=='p' || enc=='q' || enc=='y' ||
- enc==0xfe ||
- enc==0x3c1 /* rho */ ||
- enc==0x3c6 /* phi */ ||
- enc==0x3c7 /* chi */ ||
- enc==0x3c8 /* psi */ ||
- enc==0x440 /* cyr er */ ||
- enc==0x443 /* cyr u */ ||
- enc==0x444 /* cyr ef */) {
- descenth[0] += b.miny;
- descenth[1] += b.miny*b.miny;
- ++descenth[2];
- } else if ( enc=='x' || enc=='r' || enc=='o' || enc=='e' ||
- enc=='s' || enc=='c' || enc=='h' || enc=='k' ||
- enc=='l' || enc=='m' || enc=='n' ||
- enc==0x3b5 /* epsilon */ ||
- enc==0x3b9 /* iota */ ||
- enc==0x3ba /* kappa */ ||
- enc==0x3bf /* omicron */ ||
- enc==0x3c3 /* sigma */ ||
- enc==0x3c5 /* upsilon */ ||
- enc==0x430 /* cyr a */ ||
- enc==0x432 /* cyr ve */ ||
- enc==0x433 /* cyr ge */ ||
- enc==0x435 /* cyr e */ ||
- enc==0x436 /* cyr zhe */ ||
- enc==0x438 /* cyr i */ ||
- enc==0x43a /* cyr ka */ ||
- enc==0x43d /* cyr en */ ||
- enc==0x43e /* cyr o */ ||
- enc==0x441 /* cyr es */ ||
- enc==0x445 /* cyr ha */ ||
- enc==0x447 /* cyr che */ ||
- enc==0x448 /* cyr sha */ ||
- enc==0x44f /* cyr ya */ ){
- base[0] += b.miny;
- base[1] += b.miny*b.miny;
- ++base[2];
- }
- /* careful of lowercase digits, 6 and 8 should be ascenders */
- if ( enc=='6' || enc=='8' ) {
- digith[0] += b.maxy;
- digith[1] += b.maxy*b.maxy;
- ++digith[2];
- } else if ( enc<0x10000 && isdigit(enc) ) {
- otherdigits[0] += b.maxy;
- otherdigits[1] += b.maxy*b.maxy;
- ++otherdigits[2];
- } else if ( enc<0x10000 && isupper(enc) && enc!=0x462 && enc!=0x490 ) {
- caph[0] += b.maxy;
- caph[1] += b.maxy*b.maxy;
- ++caph[2];
- } else if ( enc=='b' || enc=='d' || enc=='f' || enc=='h' || enc=='k' ||
- enc == 'l' || enc==0xf0 || enc==0xfe || enc == 0xdf ||
- enc == 0x3b2 || enc==0x3b6 || enc==0x3b8 || enc==0x3bb ||
- enc == 0x3be ||
- enc == 0x431 /* cyr be */ /* || enc == 0x444 - ef may have varible height */) {
- ascenth[0] += b.maxy;
- ascenth[1] += b.maxy*b.maxy;
- ++ascenth[2];
- } else if ( enc=='c' || enc=='e' || enc=='o' || enc=='s' || enc=='u' ||
- enc=='v' || enc=='w' || enc=='x' || enc=='y' || enc=='z' ||
- enc==0x3b5 /* epsilon */ ||
- enc==0x3b9 /* iota */ ||
- enc==0x3ba /* kappa */ ||
- enc==0x3bc /* mu */ ||
- enc==0x3bd /* nu */ ||
- enc==0x3bf /* omicron */ ||
- enc==0x3c0 /* pi */ ||
- enc==0x3c1 /* rho */ ||
- enc==0x3c5 /* upsilon */ ||
- enc==0x433 /* cyr ge */ ||
- enc==0x435 /* cyr e */ ||
- enc==0x436 /* cyr zhe */ ||
- enc==0x438 /* cyr i */ ||
- enc==0x43b /* cyr el */ ||
- enc==0x43d /* cyr en */ ||
- enc==0x43e /* cyr o */ ||
- enc==0x43f /* cyr pe */ ||
- enc==0x440 /* cyr er */ ||
- enc==0x441 /* cyr es */ ||
- enc==0x442 /* cyr te */ ||
- enc==0x443 /* cyr u */ ||
- enc==0x445 /* cyr ha */ ||
- enc==0x446 /* cyr tse */ ||
- enc==0x447 /* cyr che */ ||
- enc==0x448 /* cyr sha */ ||
- enc==0x449 /* cyr shcha */ ||
- enc==0x44a /* cyr hard sign */ ||
- enc==0x44b /* cyr yery */ ||
- enc==0x44c /* cyr soft sign */ ||
- enc==0x44d /* cyr reversed e */ ||
- enc==0x44f /* cyr ya */ ) {
- xh[0] += b.maxy;
- xh[1] += b.maxy*b.maxy;
- ++xh[2];
- }
- }
- }
- if ( !ff_progress_next())
- break;
- }
- if ( otherdigits[2]>0 && digith[2]>0 ) {
- if ( otherdigits[0]/otherdigits[2] >= .95*digith[0]/digith[2] ) {
- /* all digits are about the same height, not lowercase */
- digith[0] += otherdigits[0];
- digith[1] += otherdigits[1];
- digith[2] += otherdigits[2];
- }
- }
-
- if ( xh[2]>1 ) {
- xh[1] = sqrt((xh[1]-xh[0]*xh[0]/xh[2])/(xh[2]-1));
- xh[0] /= xh[2];
- }
- if ( ascenth[2]>1 ) {
- ascenth[1] = sqrt((ascenth[1]-ascenth[0]*ascenth[0]/ascenth[2])/(ascenth[2]-1));
- ascenth[0] /= ascenth[2];
- }
- if ( caph[2]>1 ) {
- caph[1] = sqrt((caph[1]-caph[0]*caph[0]/caph[2])/(caph[2]-1));
- caph[0] /= caph[2];
- }
- if ( digith[2]>1 ) {
- digith[1] = sqrt((digith[1]-digith[0]*digith[0]/digith[2])/(digith[2]-1));
- digith[0] /= digith[2];
- }
- if ( base[2]>1 ) {
- base[1] = sqrt((base[1]-base[0]*base[0]/base[2])/(base[2]-1));
- base[0] /= base[2];
- }
- if ( descenth[2]>1 ) {
- descenth[1] = sqrt((descenth[1]-descenth[0]*descenth[0]/descenth[2])/(descenth[2]-1));
- descenth[0] /= descenth[2];
- }
-
- /* we'll accept values between +/- 1sd of the mean */
- /* array[0] == mean, array[1] == sd, array[2] == cnt, array[3]=min, array[4]==max */
- if ( base[0]+base[1]<0 ) base[1] = -base[0]; /* Make sure 0 is within the base bluezone */
- caph[3] = caph[4] = 0;
- xh[3] = xh[4] = 0;
- ascenth[3] = ascenth[4] = 0;
- digith[3] = digith[4] = 0;
- descenth[3] = descenth[4] = 0;
- base[3] = base[4] = 0;
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- int enc = sf->glyphs[i]->unicodeenc;
- const unichar_t *upt;
- if ( enc<0x10000 && isalnum(enc) &&
- ((enc>=32 && enc<128 ) || enc == 0xfe || enc==0xf0 || enc==0xdf ||
- (enc>=0x391 && enc<=0x3f3 ) ||
- (enc>=0x400 && enc<=0x4e9 ) )) {
- /* no accented characters (or ligatures) */
- if ( unicode_alternates[enc>>8]!=NULL &&
- (upt =unicode_alternates[enc>>8][enc&0xff])!=NULL &&
- upt[1]!='\0' )
- continue;
- SplineCharFindBounds(sf->glyphs[i],&b);
- if ( b.miny==0 && b.maxy==0 )
- continue;
- if ( enc=='g' || enc=='j' || enc=='p' || enc=='q' || enc=='y' ||
- enc==0xfe || enc == 0x3c6 || enc==0x3c8 ||
- enc==0x440 || enc==0x443 || enc==0x444) {
- AddBlue(b.miny,descenth,false);
- } else {
- /* O and o get forced into the baseline blue value even if they*/
- /* are beyond 1 sd */
- AddBlue(b.miny,base,enc=='O' || enc=='o');
- }
- if ( enc<0x10000 && isdigit(enc)) {
- AddBlue(b.maxy,digith,false);
- } else if ( enc<0x10000 && isupper(enc)) {
- AddBlue(b.maxy,caph,enc=='O');
- } else if ( enc=='b' || enc=='d' || enc=='f' || enc=='h' || enc=='k' ||
- enc == 'l' || enc=='t' || enc==0xf0 || enc==0xfe || enc == 0xdf ||
- enc == 0x3b2 || enc==0x3b6 || enc==0x3b8 || enc==0x3bb ||
- enc == 0x3be ||
- enc == 0x431 ) {
- AddBlue(b.maxy,ascenth,false);
- } else if ( enc=='c' || enc=='e' || enc=='o' || enc=='s' || enc=='u' ||
- enc=='v' || enc=='w' || enc=='x' || enc=='y' || enc=='z' ||
- enc==0x3b5 /* epsilon */ ||
- enc==0x3b9 /* iota */ ||
- enc==0x3ba /* kappa */ ||
- enc==0x3bc /* mu */ ||
- enc==0x3bd /* nu */ ||
- enc==0x3bf /* omicron */ ||
- enc==0x3c0 /* pi */ ||
- enc==0x3c1 /* rho */ ||
- enc==0x3c5 /* upsilon */ ||
- enc==0x433 /* cyr ge */ ||
- enc==0x435 /* cyr e */ ||
- enc==0x436 /* cyr zhe */ ||
- enc==0x438 /* cyr i */ ||
- enc==0x43b /* cyr el */ ||
- enc==0x43d /* cyr en */ ||
- enc==0x43e /* cyr o */ ||
- enc==0x43f /* cyr pe */ ||
- enc==0x440 /* cyr er */ ||
- enc==0x441 /* cyr es */ ||
- enc==0x442 /* cyr te */ ||
- enc==0x443 /* cyr u */ ||
- enc==0x445 /* cyr ha */ ||
- enc==0x446 /* cyr tse */ ||
- enc==0x447 /* cyr che */ ||
- enc==0x448 /* cyr sha */ ||
- enc==0x449 /* cyr shcha */ ||
- enc==0x44a /* cyr hard sign */ ||
- enc==0x44b /* cyr yery */ ||
- enc==0x44c /* cyr soft sign */ ||
- enc==0x44d /* cyr reversed e */ ||
- enc==0x44f /* cyr ya */ ) {
- AddBlue(b.maxy,xh,enc=='o' || enc=='x');
- }
- }
- }
-
- /* the descent blue zone merges into the base zone */
- MergeZones(descenth,base);
- MergeZones(xh,base);
- MergeZones(ascenth,caph);
- MergeZones(digith,caph);
- MergeZones(xh,caph);
- MergeZones(ascenth,digith);
- MergeZones(xh,digith);
-
- if ( otherblues!=NULL )
- for ( i=0; i<10; ++i )
- otherblues[i] = 0;
- for ( i=0; i<14; ++i )
- blues[i] = 0;
-
- if ( otherblues!=NULL && descenth[2]!=0 ) {
- otherblues[0] = descenth[3];
- otherblues[1] = descenth[4];
- }
- i = 0;
- if ( base[2]==0 && (xh[2]!=0 || ascenth[2]!=0 || caph[2]!=0 || digith[2]!=0 )) {
- /* base line blue value must be present if any other value is */
- /* make one up if we don't have one */
- blues[0] = -20;
- blues[1] = 0;
- i = 2;
- } else if ( base[2]!=0 ) {
- blues[0] = base[3];
- blues[1] = base[4];
- i = 2;
- }
- if ( xh[2]!=0 ) {
- blues[i++] = xh[3];
- blues[i++] = xh[4];
- }
- if ( caph[2]!=0 ) {
- blues[i++] = caph[3];
- blues[i++] = caph[4];
- }
- if ( digith[2]!=0 ) {
- blues[i++] = digith[3];
- blues[i++] = digith[4];
- }
- if ( ascenth[2]!=0 ) {
- blues[i++] = ascenth[3];
- blues[i++] = ascenth[4];
- }
-
- for ( j=0; j<i; j+=2 ) for ( k=j+2; k<i; k+=2 ) {
- if ( blues[j]>blues[k] ) {
- real temp = blues[j];
- blues[j]=blues[k];
- blues[k] = temp;
- temp = blues[j+1];
- blues[j+1] = blues[k+1];
- blues[k+1] = temp;
- }
- }
-}
-
-static int PVAddBlues(BlueData *bd,unsigned bcnt,char *pt) {
- char *end;
- real val1, val2;
- unsigned i,j;
-
- if ( pt==NULL )
-return( bcnt );
-
- while ( isspace(*pt) || *pt=='[' ) ++pt;
- while ( *pt!=']' && *pt!='\0' ) {
- val1 = strtod(pt,&end);
- if ( *end=='\0' || end==pt )
- break;
- for ( pt=end; isspace(*pt) ; ++pt );
- val2 = strtod(pt,&end);
- if ( end==pt )
- break;
- if ( bcnt==0 || val1>bd->blues[bcnt-1][0] )
- i = bcnt;
- else {
- for ( i=0; i<bcnt && val1>bd->blues[i][0]; ++i );
- for ( j=bcnt; j>i; --j ) {
- bd->blues[j][0] = bd->blues[j-1][0];
- bd->blues[j][1] = bd->blues[j-1][1];
- }
- }
- bd->blues[i][0] = val1;
- bd->blues[i][1] = val2;
- ++bcnt;
- if ( bcnt>=sizeof(bd->blues)/sizeof(bd->blues[0]))
- break;
- for ( pt=end; isspace(*pt) ; ++pt );
- }
-return( bcnt );
-}
-
-/* Quick and dirty (and sometimes wrong) approach to figure out the common */
-/* alignment zones in latin (greek, cyrillic) alphabets */
-void QuickBlues(SplineFont *_sf, int layer, BlueData *bd) {
- real xheight = -1e10, caph = -1e10, ascent = -1e10, descent = 1e10, max, min;
- real xheighttop = -1e10, caphtop = -1e10;
- real numh = -1e10, numhtop = -1e10;
- real base = -1e10, basebelow = 1e10;
- SplineFont *sf;
- SplinePoint *sp;
- SplineSet *spl;
- int i,j, bcnt;
- SplineChar *t;
- char *pt;
-
- /* Get the alignment zones we care most about */
-
- /* be careful of cid fonts */
- if ( _sf->cidmaster!=NULL )
- _sf = _sf->cidmaster;
-
- j=0;
- do {
- sf = ( _sf->subfontcnt==0 )? _sf : _sf->subfonts[j];
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- int enc = sf->glyphs[i]->unicodeenc;
- if ( enc=='I' || enc=='O' || enc=='x' || enc=='o' || enc=='p' || enc=='l' ||
-/* Jean-Christophe Dubacq points out that x-height should be calculated from */
-/* various characters and not just x and o. Italic "x"s often have strange */
-/* shapes */
- enc=='A' || enc==0x391 || enc==0x410 ||
- enc=='V' ||
- enc=='u' || enc=='v' || enc=='w' || enc=='y' || enc=='z' ||
- enc=='7' || enc=='8' || /* numbers with ascenders */
- enc==0x399 || enc==0x39f || enc==0x3ba || enc==0x3bf || enc==0x3c1 || enc==0x3be || enc==0x3c7 ||
- enc==0x41f || enc==0x41e || enc==0x43e || enc==0x43f || enc==0x440 || enc==0x452 || enc==0x445 ) {
- t = sf->glyphs[i];
- while ( t->layers[layer].splines==NULL && t->layers[layer].refs!=NULL )
- t = t->layers[layer].refs->sc;
- max = -1e10; min = 1e10;
- if ( t->layers[layer].splines!=NULL ) {
- for ( spl=t->layers[layer].splines; spl!=NULL; spl=spl->next ) {
- for ( sp=spl->first; ; ) {
- if ( sp->me.y > max ) max = sp->me.y;
- if ( sp->me.y < min ) min = sp->me.y;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==spl->first )
- break;
- }
- }
- if ( enc>0x400 ) {
- /* Only use ascent and descent here if we don't have anything better */
- if ( enc==0x41f ) { caph = max; base = min; }
- else if ( enc==0x41e ) { if ( max>caphtop ) caphtop = max; basebelow = min; }
- else if ( enc==0x410 ) { if ( max>caphtop ) caphtop = max; }
- else if ( enc==0x43f && xheight<0 ) xheight = max;
- else if ( enc==0x445 && xheight<0 ) xheight = max;
- else if ( enc==0x43e ) xheighttop = max;
- else if ( enc==0x452 && ascent<0 ) ascent = max;
- else if ( enc==0x440 && descent>0 ) descent = min;
- } else if ( enc>0x300 ) {
- if ( enc==0x399 ) { caph = max; base = min; }
- else if ( enc==0x391 ) { if ( max>caphtop ) caphtop = max; }
- else if ( enc==0x39f ) { if ( max>caphtop ) caphtop = max; basebelow = min; }
- else if ( enc==0x3ba && xheight<0 ) xheight = max;
- else if ( enc==0x3c7 && xheight<0 ) xheight = max;
- else if ( enc==0x3bf ) xheighttop = max;
- else if ( enc==0x3be && ascent<0 ) ascent = max;
- else if ( enc==0x3c1 && descent>0 ) descent = min;
- } else {
- if ( enc=='I' ) { caph = max; base = min; }
- else if ( enc=='O' ) { if ( max>caphtop ) caphtop = max; if ( basebelow<min ) basebelow = min; }
- else if ( enc=='V' ) { if ( basebelow<min ) basebelow = min; }
- else if ( enc=='A' ) { if ( max>caphtop ) caphtop = max; }
- else if ( enc=='7' ) numh = max;
- else if ( enc=='0' ) numhtop = max;
- else if ( enc=='x' || enc=='o' || enc=='u' || enc=='v' ||
- enc =='w' || enc=='y' || enc=='z' ) {
- if ( xheighttop==-1e10 ) xheighttop = max;
- if ( xheight==-1e10 ) xheight = max;
- if ( max > xheighttop ) xheighttop = max;
- else if ( max<xheight && max>20 ) xheight = max;
- if ( enc=='y' && descent==1e10 ) descent = min;
- } else if ( enc=='l' ) ascent = max;
- else descent = min;
- }
- }
- }
- }
- ++j;
- } while ( j<_sf->subfontcnt );
-
- if ( basebelow==1e10 ) basebelow=-1e10;
-
- if ( caphtop<caph ) caphtop = caph; else if ( caph==-1e10 ) caph=caphtop;
- if ( basebelow>base ) basebelow = base; else if ( base==-1e10 ) base=basebelow;
- if ( base==-1e10 ) { base=basebelow = 0; }
- if ( xheighttop<xheight ) xheighttop = xheight; else if ( xheight==-1e10 ) xheight=xheighttop;
- bd->xheight = xheight; bd->xheighttop = xheighttop;
- bd->caph = caph; bd->caphtop = caphtop;
- bd->numh = numh; bd->numhtop = numhtop;
- bd->ascent = ascent; bd->descent = descent;
- bd->base = base; bd->basebelow = basebelow;
-
- bcnt = 0;
- if ( (pt=PSDictHasEntry(sf->private,"BlueValues"))!=NULL )
- bcnt = PVAddBlues(bd,bcnt,pt);
- if ( (pt=PSDictHasEntry(sf->private,"OtherBlues"))!=NULL )
- bcnt = PVAddBlues(bd,bcnt,pt);
- if ( bcnt==0 ) {
- if ( basebelow==-1e10 ) basebelow = base;
- if ( base==-1e10 ) base = basebelow;
- if ( xheight==-1e10 ) xheight = xheighttop;
- if ( xheighttop==-1e10 ) xheighttop = xheight;
- if ( caph==-1e10 ) caph = caphtop;
- if ( caphtop==-1e10 ) caphtop = caph;
- if ( numh==-1e10 ) numh = numhtop;
- if ( numhtop==-1e10 ) numhtop = numh;
- if ( numh!=-1e10 && (numhtop>caph-2 && numh<caphtop+2)) {
- if ( numh<caph ) caph=numh;
- if ( numhtop>caphtop ) caphtop = numhtop;
- numh = numhtop = -1e10;
- }
- if ( ascent!=-1e10 && (ascent>caph-2 && ascent<caphtop+2)) {
- if ( ascent<caph ) caph=ascent;
- if ( ascent>caphtop ) caphtop = ascent;
- ascent = -1e10;
- }
- if ( ascent!=-1e10 && (ascent>numh-2 && ascent<numhtop+2)) {
- if ( ascent<numh ) numh=ascent;
- if ( ascent>numhtop ) numhtop = ascent;
- ascent = -1e10;
- if ( numhtop>caph-2 && numh<caphtop+2 ) {
- if ( numh<caph ) caph=numh;
- if ( numhtop>caphtop ) caphtop = numhtop;
- numh = numhtop = -1e10;
- }
- }
-
- if ( descent!=1e10 ) {
- bd->blues[0][0] = bd->blues[0][1] = descent;
- ++bcnt;
- }
- if ( basebelow!=-1e10 ) {
- bd->blues[bcnt][0] = basebelow;
- bd->blues[bcnt][1] = base;
- ++bcnt;
- }
- if ( xheight!=-1e10 ) {
- bd->blues[bcnt][0] = xheight;
- bd->blues[bcnt][1] = xheighttop;
- ++bcnt;
- }
- if ( numh!=-1e10 ) {
- bd->blues[bcnt][0] = numh;
- bd->blues[bcnt][1] = numhtop;
- ++bcnt;
- }
- if ( caph!=-1e10 ) {
- bd->blues[bcnt][0] = caph;
- bd->blues[bcnt][1] = caphtop;
- ++bcnt;
- }
- if ( ascent!=-1e10 ) {
- bd->blues[bcnt][0] = bd->blues[bcnt][1] = ascent;
- ++bcnt;
- }
- }
- bd->bluecnt = bcnt;
-}
-
-void ElFreeEI(EIList *el) {
- EI *e, *next;
-
- for ( e = el->edges; e!=NULL; e = next ) {
- next = e->next;
- free(e);
- }
-}
-
-static int EIAddEdge(Spline *spline, real tmin, real tmax, EIList *el) {
- EI *new = calloc(1,sizeof(EI));
- real min, max, temp;
- Spline1D *s;
- real dxdtmin, dxdtmax, dydtmin, dydtmax;
-
- new->spline = spline;
- new->tmin = tmin;
- new->tmax = tmax;
-
- s = &spline->splines[1];
- if (( dydtmin = (3*s->a*tmin + 2*s->b)*tmin + s->c )<0 ) dydtmin = -dydtmin;
- if (( dydtmax = (3*s->a*tmax + 2*s->b)*tmax + s->c )<0 ) dydtmax = -dydtmax;
- s = &spline->splines[0];
- if (( dxdtmin = (3*s->a*tmin + 2*s->b)*tmin + s->c )<0 ) dxdtmin = -dxdtmin;
- if (( dxdtmax = (3*s->a*tmax + 2*s->b)*tmax + s->c )<0 ) dxdtmax = -dxdtmax;
-
- /*s = &spline->splines[0];*/
- min = ((s->a * tmin + s->b)* tmin + s->c)* tmin + s->d;
- max = ((s->a * tmax + s->b)* tmax + s->c)* tmax + s->d;
- if ( tmax==1 ) max = spline->to->me.x; /* beware rounding errors */
- if ( !el->leavetiny && floor(min)==floor(max) ) { /* If it doesn't cross a pixel boundary then it might as well be vertical */
- if ( tmin==0 ) max = min;
- else if ( tmax==1 ) min = max;
- else max = min;
- }
- if ( min==max )
- new->vert = true;
- else if ( min<max )
- new->hup = true;
- else {
- temp = min; min = max; max=temp;
- }
- if ( !el->leavetiny && min+1>max ) new->almostvert = true;
- if ( 40*dxdtmin<dydtmin ) new->vertattmin = true;
- if ( 40*dxdtmax<dydtmax ) new->vertattmax = true;
- /*if ( new->vertattmin && new->vertattmax && s->a==0 && s->b==0 ) new->almostvert = true;*/
- new->coordmin[0] = min; new->coordmax[0] = max;
- if ( el->coordmin[0]>min )
- el->coordmin[0] = min;
- if ( el->coordmax[0]<max )
- el->coordmax[0] = max;
-
- s = &spline->splines[1];
- min = ((s->a * tmin + s->b)* tmin + s->c)* tmin + s->d;
- max = ((s->a * tmax + s->b)* tmax + s->c)* tmax + s->d;
- if ( tmax==1 ) max = spline->to->me.y;
- if ( !el->leavetiny && floor(min)==floor(max) ) { /* If it doesn't cross a pixel boundary then it might as well be horizontal */
- if ( tmin==0 ) max = min;
- else if ( tmax==1 ) min = max;
- else max = min;
- }
- if ( min==max )
- new->hor = true;
- else if ( min<max )
- new->vup = true;
- else {
- temp = min; min = max; max=temp;
- }
- if ( !el->leavetiny && min+1>max ) new->almosthor = true;
- if ( 40*dydtmin<dxdtmin ) new->horattmin = true;
- if ( 40*dydtmax<dxdtmax ) new->horattmax = true;
- /*if ( new->horattmin && new->horattmax && s->a==0 && s->b==0 ) new->almosthor = true;*/
- new->coordmin[1] = min; new->coordmax[1] = max;
- if ( el->coordmin[1]>min )
- el->coordmin[1] = min;
- if ( el->coordmax[1]<max )
- el->coordmax[1] = max;
-
- if ( new->hor && new->vert ) {
- /* This spline is too small for us to notice */
- free(new);
-return( false );
- } else {
- new->next = el->edges;
- el->edges = new;
-
- if ( el->splinelast!=NULL )
- el->splinelast->splinenext = new;
- el->splinelast = new;
- if ( el->splinefirst==NULL )
- el->splinefirst = new;
-
-return( true );
- }
-}
-
-static void EIAddSpline(Spline *spline, EIList *el) {
- extended ts[6], temp;
- int i, j, base, last;
-
- ts[0] = 0; ts[5] = 1.0;
- SplineFindExtrema(&spline->splines[0],&ts[1],&ts[2]);
- SplineFindExtrema(&spline->splines[1],&ts[3],&ts[4]);
- /* avoid teeny tiny segments, they just confuse us */
- SplineRemoveExtremaTooClose(&spline->splines[0],&ts[1],&ts[2]);
- SplineRemoveExtremaTooClose(&spline->splines[1],&ts[3],&ts[4]);
- for ( i=0; i<4; ++i ) for ( j=i+1; j<5; ++j ) {
- if ( ts[i]>ts[j] ) {
- temp = ts[i];
- ts[i] = ts[j];
- ts[j] = temp;
- }
- }
- for ( base=0; ts[base]==-1; ++base);
- for ( i=5; i>base ; --i ) {
- if ( ts[i]==ts[i-1] ) {
- for ( j=i-1; j>base; --j )
- ts[j] = ts[j-1];
- ts[j] = -1;
- ++base;
- }
- }
- last = base;
- for ( i=base; i<5 ; ++i )
- if ( EIAddEdge(spline,ts[last],ts[i+1],el) )
- last = i+1;
-}
-
-void ELFindEdges(SplineChar *sc, EIList *el) {
- Spline *spline, *first;
- SplineSet *spl;
-
- el->sc = sc;
- if ( sc->layers[el->layer].splines==NULL )
-return;
-
- el->coordmin[0] = el->coordmax[0] = sc->layers[el->layer].splines->first->me.x;
- el->coordmin[1] = el->coordmax[1] = sc->layers[el->layer].splines->first->me.y;
-
- for ( spl = sc->layers[el->layer].splines; spl!=NULL; spl = spl->next ) if ( spl->first->prev!=NULL && spl->first->prev->from!=spl->first ) {
- first = NULL;
- for ( spline = spl->first->next; spline!=NULL && spline!=first; spline=spline->to->next ) {
- EIAddSpline(spline,el);
- if ( first==NULL ) first = spline;
- }
- if ( el->splinefirst!=NULL && spl->first->prev!=NULL )
- el->splinelast->splinenext = el->splinefirst;
- el->splinelast = NULL; el->splinefirst = NULL;
- }
-}
-
-static int IsBiggerSlope(EI *test, EI *base, int major) {
- int other = !major;
- real tdo, tdm, bdo, bdm, t;
-
- if (( major && test->vup ) || (!major && test->hup))
- t = test->tmin;
- else
- t = test->tmax;
- tdm = (3*test->spline->splines[major].a*t + 2*test->spline->splines[major].b)*t + test->spline->splines[major].c;
- tdo = (3*test->spline->splines[other].a*t + 2*test->spline->splines[other].b)*t + test->spline->splines[other].c;
-
- if (( major && base->vup ) || (!major && base->hup))
- t = base->tmin;
- else
- t = base->tmax;
- bdm = (3*base->spline->splines[major].a*t + 2*base->spline->splines[major].b)*t + base->spline->splines[major].c;
- bdo = (3*base->spline->splines[other].a*t + 2*base->spline->splines[other].b)*t + base->spline->splines[other].c;
-
- if ( tdm==0 && bdm==0 )
-return( tdo > bdo );
- if ( tdo==0 )
-return( tdo>0 );
- else if ( bdo==0 )
-return( bdo>0 );
-
-return( tdo/tdm > bdo/bdm );
-}
-
-void ELOrder(EIList *el, int major ) {
- int other = !major;
- int pos;
- EI *ei, *prev, *test;
-
- el->low = floor(el->coordmin[major]); el->high = ceil(el->coordmax[major]);
- el->cnt = el->high-el->low+1;
- el->ordered = calloc(el->cnt,sizeof(EI *));
- el->ends = calloc(el->cnt,1);
-
- for ( ei = el->edges; ei!=NULL ; ei=ei->next ) {
- pos = ceil(ei->coordmax[major])-el->low;
- el->ends[pos] = true;
- pos = floor(ei->coordmin[major])-el->low;
- ei->ocur = (ei->hup == ei->vup)?ei->coordmin[other]:ei->coordmax[other];
- ei->tcur = ((major && ei->vup) || (!major && ei->hup)) ?
- ei->tmin: ei->tmax;
- if ( major ) {
- ei->up = ei->vup;
- ei->hv = (ei->vert || ei->almostvert);
- ei->hvbottom = ei->vup ? ei->vertattmin : ei->vertattmax;
- ei->hvtop =!ei->vup ? ei->vertattmin : ei->vertattmax;
- if ( ei->hor || ei->almosthor)
- continue;
- } else {
- ei->up = ei->hup;
- ei->hv = (ei->hor || ei->almosthor);
- ei->hvbottom = ei->hup ? ei->horattmin : ei->horattmax;
- ei->hvtop =!ei->hup ? ei->horattmin : ei->horattmax;
- if ( ei->vert || ei->almostvert)
- continue;
- }
- if ( el->ordered[pos]==NULL || ei->ocur<el->ordered[pos]->ocur ) {
- ei->ordered = el->ordered[pos];
- el->ordered[pos] = ei;
- } else {
- for ( prev=el->ordered[pos], test = prev->ordered; test!=NULL;
- prev = test, test = test->ordered ) {
- if ( test->ocur>ei->ocur ||
- (test->ocur==ei->ocur && IsBiggerSlope(test,ei,major)))
- break;
- }
- ei->ordered = test;
- prev->ordered = ei;
- }
- }
-}
-
-static HintInstance *HIMerge(HintInstance *into, HintInstance *hi) {
- HintInstance *n, *first = NULL, *last = NULL;
-
- while ( into!=NULL && hi!=NULL ) {
- if ( into->begin<hi->begin ) {
- n = into;
- into = into->next;
- } else {
- n = hi;
- hi = hi->next;
- }
- if ( first==NULL )
- first = n;
- else
- last->next = n;
- last = n;
- }
- if ( into!=NULL ) {
- if ( first==NULL )
- first = into;
- else
- last->next = into;
- } else if ( hi!=NULL ) {
- if ( first==NULL )
- first = hi;
- else
- last->next = hi;
- }
-return( first );
-}
-
-real EITOfNextMajor(EI *e, EIList *el, real sought_m ) {
- /* We want to find t so that Mspline(t) = sought_m */
- /* the curve is monotonic */
- Spline1D *msp = &e->spline->splines[el->major];
- real new_t;
- real found_m;
- real t_mmax, t_mmin;
-
- if ( msp->a==0 && msp->b==0 ) {
- if ( msp->c == 0 ) {
- IError("Hor/Vert line when not expected");
-return( 0 );
- }
- new_t = (sought_m-msp->d)/(msp->c);
-return( new_t );
- }
-
- t_mmax = e->up?e->tmax:e->tmin;
- t_mmin = e->up?e->tmin:e->tmax;
- /* sought_m += el->low; */
-
- while ( 1 ) {
- new_t = (t_mmin+t_mmax)/2;
- found_m = ( ((msp->a*new_t+msp->b)*new_t+msp->c)*new_t + msp->d );
- if ( found_m>sought_m-.001 && found_m<sought_m+.001 )
-return( new_t );
- if ( found_m > sought_m ) {
- t_mmax = new_t;
- } else {
- t_mmin = new_t;
- }
- if ( t_mmax==t_mmin ) {
- IError("EITOfNextMajor failed! on %s", el->sc!=NULL?el->sc->name:"Unknown" );
-return( new_t );
- }
- }
-}
-
-EI *EIActiveListReorder(EI *active,int *change) {
- int any;
- EI *pr, *apt;
-
- *change = false;
- if ( active!=NULL ) {
- any = true;
- while ( any ) {
- any = false;
- for ( pr=NULL, apt=active; apt->aenext!=NULL; ) {
- if ( apt->ocur <= apt->aenext->ocur ) {
- /* still ordered */;
- pr = apt;
- apt = apt->aenext;
- } else if ( pr==NULL ) {
- active = apt->aenext;
- apt->aenext = apt->aenext->aenext;
- active->aenext = apt;
- *change = true;
- /* don't need to set any, since this reorder can't disorder the list */
- pr = active;
- } else {
- pr->aenext = apt->aenext;
- apt->aenext = apt->aenext->aenext;
- pr->aenext->aenext = apt;
- any = *change = true;
- pr = pr->aenext;
- }
- }
- }
- }
-return( active );
-}
-
-EI *EIActiveEdgesRefigure(EIList *el, EI *active,real i,int major, int *_change) {
- EI *apt, *pr, *npt;
- int change = false, subchange;
- int other = !major;
-
- /* first remove any entry which doesn't intersect the new scan line */
- /* (ie. stopped on last line) */
- for ( pr=NULL, apt=active; apt!=NULL; apt = apt->aenext ) {
- if ( apt->coordmax[major]<i+el->low ) {
- if ( pr==NULL )
- active = apt->aenext;
- else
- pr->aenext = apt->aenext;
- change = true;
- } else
- pr = apt;
- }
- /* then move the active list to the next line */
- for ( apt=active; apt!=NULL; apt = apt->aenext ) {
- Spline1D *osp = &apt->spline->splines[other];
- apt->tcur = EITOfNextMajor(apt,el,i+el->low);
- apt->ocur = ( ((osp->a*apt->tcur+osp->b)*apt->tcur+osp->c)*apt->tcur + osp->d );
- }
- /* reorder list */
- active = EIActiveListReorder(active,&subchange);
- if ( subchange ) change = true;
-
- /* Insert new nodes */
- if ( el->ordered[(int) i]!=NULL ) change = true;
- for ( pr=NULL, apt=active, npt=el->ordered[(int) i]; apt!=NULL && npt!=NULL; ) {
- if ( npt->ocur<apt->ocur ) {
- npt->aenext = apt;
- if ( pr==NULL )
- active = npt;
- else
- pr->aenext = npt;
- pr = npt;
- npt = npt->ordered;
- } else {
- pr = apt;
- apt = apt->aenext;
- }
- }
- while ( npt!=NULL ) {
- npt->aenext = NULL;
- if ( pr==NULL )
- active = npt;
- else
- pr->aenext = npt;
- pr = npt;
- npt = npt->ordered;
- }
- *_change = change;
-return( active );
-}
-
-/* Should I consider e and n to be a continuation of the same spline? */
-/* If we are at an intersection (and it's the same intersection on both) */
-/* and they go in vaguely the same direction then we should */
-/* Ah, but also if they are at different intersections and are connected */
-/* by a series of horizontal/vertical lines (whichever are invisible to major)*/
-/* then we still should. */
-int EISameLine(EI *e, EI *n, real i, int major) {
- EI *t;
-
- if ( n!=NULL && /*n->up==e->up &&*/
- (ceil(e->coordmin[major])==i || floor(e->coordmin[major])==i || floor(e->coordmax[major])==i || ceil(e->coordmax[major])==i) &&
- (ceil(n->coordmin[major])==i || floor(n->coordmin[major])==i || floor(n->coordmax[major])==i || ceil(n->coordmax[major])==i) ) {
- if (
- (n==e->splinenext && n->tmin==e->tmax &&
- n->tcur<n->tmin+.2 && e->tcur>e->tmax-.2 ) ||
- (n->splinenext==e && n->tmax==e->tmin &&
- n->tcur>n->tmax-.2 && e->tcur<e->tmin+.2 ) )
-return( true );
- /* can be separated by a horizontal/vertical line in the other direction */
- if ( n->tmax==1 && e->tmin==0 && n->tcur>.8 && e->tcur<.2) {
- t = n;
- while ( (t = t->splinenext)!=e ) {
- if ( t==NULL || t==n ||
- (major && !t->hor) || ( !major && !t->vert ))
-return( false );
- }
-return( n->up==e->up );
- } else if ( n->tmin==0 && e->tmax==1 && n->tcur<.2 && e->tcur>.8) {
- t = e;
- while ( (t = t->splinenext)!=n ) {
- if ( t==NULL || t==e ||
- (major && !t->hor) || ( !major && !t->vert ))
-return( false );
- }
-return( n->up==e->up );
- }
- }
-return( false );
-}
-
-int EISkipExtremum(EI *e, real i, int major) {
- EI *n = e->aenext, *t;
-
- if ( n==NULL )
-return( false );
- if (
- (ceil(e->coordmin[major])==i || floor(e->coordmin[major])==i || floor(e->coordmax[major])==i || ceil(e->coordmax[major])==i) &&
- (ceil(n->coordmin[major])==i || floor(n->coordmin[major])==i || floor(n->coordmax[major])==i || ceil(n->coordmax[major])==i) ) {
- if (
- (n==e->splinenext && n->tmin==e->tmax &&
- n->tcur<n->tmin+.2 && e->tcur>e->tmax-.2 ) ||
- (n->splinenext==e && n->tmax==e->tmin &&
- n->tcur>n->tmax-.2 && e->tcur<e->tmin+.2 ) )
-return( n->up!=e->up );
- /* can be separated by a horizontal/vertical line in the other direction */
- if ( n->tmax==1 && e->tmin==0 && n->tcur>.8 && e->tcur<.2) {
- t = n;
- while ( (t = t->splinenext)!=e ) {
- if ( t==NULL || t==n ||
- (major && !t->hor) || ( !major && !t->vert ))
-return( false );
- }
-return( n->up!=e->up );
- } else if ( n->tmin==0 && e->tmax==1 && n->tcur<.2 && e->tcur>.8) {
- t = e;
- while ( (t = t->splinenext)!=n ) {
- if ( t==NULL || t==e ||
- (major && !t->hor) || ( !major && !t->vert ))
-return( false );
- }
-return( n->up!=e->up );
- }
- }
-return( false );
-}
-
-static StemInfo *StemRemoveFlexCandidates(StemInfo *stems) {
- StemInfo *s, *t, *sn;
- const real BlueShift = 7;
- /* Suppose we have something that is a flex candidate */
- /* We might get two hints from it... one from the two end points */
- /* and one from the internal point */
-
- if ( stems==NULL )
-return( NULL );
-
- for ( s=stems; (sn = s->next)!=NULL; s = sn ) {
- if ( s->start+BlueShift > sn->start && s->width>0 && sn->width>0 &&
- s->start+s->width-BlueShift < sn->start+sn->width &&
- s->start+s->width+BlueShift > sn->start+sn->width &&
- s->where != NULL && sn->where != NULL &&
- s->where->next!=NULL && sn->where->next==NULL ) {
- t = sn->next;
- sn->next = NULL;
- StemInfoFree(sn);
- s->next = t;
- sn = t;
- if ( t==NULL )
- break;
- }
- }
-return( stems );
-}
-
-real HIlen( StemInfo *stems) {
- HintInstance *hi;
- real len = 0;
-
- for ( hi=stems->where; hi!=NULL; hi = hi->next )
- len += hi->end-hi->begin;
-return( len );
-}
-
-real HIoverlap( HintInstance *mhi, HintInstance *thi) {
- HintInstance *hi;
- real len = 0;
- real s, e;
-
- for ( ; mhi!=NULL; mhi = mhi->next ) {
- for ( hi = thi; hi!=NULL && hi->begin<=mhi->end; hi = hi->next ) {
- if ( hi->end<mhi->begin ) {
- thi = hi;
- continue;
- }
- s = hi->begin<mhi->begin?mhi->begin:hi->begin;
- e = hi->end>mhi->end?mhi->end:hi->end;
- if ( e<s )
- continue; /* Shouldn't happen */
- len += e-s;
- }
- }
-return( len );
-}
-
-int StemListAnyConflicts(StemInfo *stems) {
- StemInfo *s;
- int any= false;
- double end;
-
- for ( s=stems; s!=NULL ; s=s->next )
- s->hasconflicts = false;
- while ( stems!=NULL ) {
- end = stems->width<0 ? stems->start : stems->start+stems->width;
- for ( s=stems->next; s!=NULL && (s->width>0 ? s->start : s->start+s->width)<=end; s=s->next ) {
- stems->hasconflicts = true;
- s->hasconflicts = true;
- any = true;
- }
- stems = stems->next;
- }
-return( any );
-}
-
-HintInstance *HICopyTrans(HintInstance *hi, real mul, real offset) {
- HintInstance *first=NULL, *last, *cur, *p;
-
- while ( hi!=NULL ) {
- cur = chunkalloc(sizeof(HintInstance));
- if ( mul>0 ) {
- cur->begin = hi->begin*mul+offset;
- cur->end = hi->end*mul+offset;
- if ( first==NULL )
- first = cur;
- else
- last->next = cur;
- last = cur;
- } else {
- cur->begin = hi->end*mul+offset;
- cur->end = hi->begin*mul+offset;
- if ( first==NULL || cur->begin<first->begin ) {
- cur->next = first;
- first = cur;
- } else {
- for ( p=first, last=p->next; last!=NULL && cur->begin>last->begin; last=last->next );
- p->next = cur;
- cur->next = last;
- }
- }
- hi = hi->next;
- }
-return( first );
-}
-
-static HintInstance *StemAddHIFromActive(struct stemdata *stem,int major) {
- int i;
- HintInstance *head = NULL, *cur, *t;
- double mino, maxo;
- double dir = ((real *) &stem->unit.x)[major]<0 ? -1 : 1;
-
- for ( i=0; i<stem->activecnt; ++i ) {
- mino = dir*stem->active[i].start + ((real *) &stem->left.x)[major];
- maxo = dir*stem->active[i].end + ((real *) &stem->left.x)[major];
- cur = chunkalloc(sizeof(HintInstance));
- if ( dir>0 ) {
- cur->begin = mino;
- cur->end = maxo;
- if ( head==NULL )
- head = cur;
- else
- t->next = cur;
- t = cur;
- } else {
- cur->begin = maxo;
- cur->end = mino;
- cur->next = head;
- head = cur;
- }
- }
-return( head );
-}
-
-static HintInstance *DStemAddHIFromActive( struct stemdata *stem ) {
- int i;
- HintInstance *head = NULL, *cur, *t;
-
- for ( i=0; i<stem->activecnt; ++i ) {
- cur = chunkalloc( sizeof( HintInstance ));
- cur->begin = stem->active[i].start;
- cur->end = stem->active[i].end;
- if ( head == NULL )
- head = cur;
- else
- t->next = cur;
- t = cur;
- }
-return( head );
-}
-
-void SCGuessHintInstancesList( SplineChar *sc,int layer,StemInfo *hstem,StemInfo *vstem,DStemInfo *dstem,
- int hvforce,int dforce ) {
-
- struct glyphdata *gd;
- struct stemdata *sd;
- int i, cnt=0, hneeds_gd=false, vneeds_gd=false, dneeds_gd=false;
- StemInfo *test;
- DStemInfo *dtest;
- double em_size = ( sc->parent != NULL ) ?
- sc->parent->ascent + sc->parent->descent : 1000;
-
- if ( hstem == NULL && vstem == NULL && dstem == NULL )
-return;
- /* If all stems already have active zones assigned (actual for .sfd */
- /* files), then there is no need to wast time generating glyph data for */
- /* this glyph */
- test = hstem;
- while ( !hneeds_gd && test != NULL ) {
- if ( test->where == NULL || hvforce ) hneeds_gd = true;
- test = test->next;
- }
- test = vstem;
- while ( !vneeds_gd && test != NULL ) {
- if ( test->where == NULL || hvforce ) vneeds_gd = true;
- test = test->next;
- }
- dtest = dstem;
- while ( !dneeds_gd && dtest != NULL ) {
- if ( dtest->where == NULL || dforce ) dneeds_gd = true;
- dtest = dtest->next;
- }
- if ( !hneeds_gd && !vneeds_gd && !dneeds_gd )
-return;
-
- gd = GlyphDataInit( sc,layer,em_size,!dneeds_gd );
- if ( gd == NULL )
-return;
-
- cnt = 0;
- if ( hstem != NULL && hneeds_gd ) {
- gd = StemInfoToStemData( gd,hstem,false );
- for ( i=cnt; i<gd->stemcnt; i++ ) {
- sd = &gd->stems[i];
- if ( hstem == NULL )
- break;
- if ( hstem->where == NULL || hvforce )
- hstem->where = StemAddHIFromActive( sd,false );
- hstem = hstem->next;
- }
- }
- cnt = gd->stemcnt;
- if ( vstem != NULL && vneeds_gd ) {
- gd = StemInfoToStemData( gd,vstem,true );
- for ( i=cnt; i<gd->stemcnt; i++ ) {
- sd = &gd->stems[i];
- if ( vstem == NULL )
- break;
- if ( vstem->where == NULL || hvforce )
- vstem->where = StemAddHIFromActive( sd,true );
- vstem = vstem->next;
- }
- }
- cnt = gd->stemcnt;
- if ( dstem != NULL && dneeds_gd ) {
- gd = DStemInfoToStemData( gd,dstem );
- for ( i=cnt; i<gd->stemcnt; i++ ) {
- sd = &gd->stems[i];
- if ( dstem == NULL )
- break;
- dstem->left = sd->left; dstem->right = sd->right;
- if ( dstem->where == NULL || dforce )
- dstem->where = DStemAddHIFromActive( sd );
- dstem = dstem->next;
- }
- }
- GlyphDataFree( gd );
-return;
-}
-
-/* We have got (either from a file or user specified) a diagonal stem,
- described by 4 base points (pairs of x and y coordinates). Some additional
- tests are required before we can add this stem to the given glyph. */
-int MergeDStemInfo( SplineFont *sf,DStemInfo **ds,DStemInfo *test ) {
- DStemInfo *dn, *cur, *prev, *next, *temp;
- double dot, loff, roff, soff, dist_error_diag ;
- double ibegin, iend;
- int overlap;
- BasePoint *base, *nbase, *pbase;
- HintInstance *hi;
-
- if ( *ds == NULL ) {
- *ds = test;
-return( true );
- }
- dist_error_diag = ( sf->ascent + sf->descent ) * 0.0065;
-
- cur = prev = NULL;
- for ( dn=*ds ; dn!=NULL ; dn=dn->next ) {
- prev = cur; cur = dn;
-
- /* Compare the given stem with each of the existing diagonal stem
- * hints. First ensure that it is not an exact duplicate of an already
- * added stem. Then test if unit vectors are parallel and edges colinear.
- * In this case we should either preserve the existing stem or replace
- * it with the new one, but not keep them both */
- if (test->unit.x == dn->unit.x && test->unit.y == dn->unit.y &&
- test->left.x == dn->left.x && test->left.y == dn->left.y &&
- test->right.x == dn->right.x && test->right.y == dn->right.y ) {
- DStemInfoFree( test );
-return( false );
- }
- dot = ( test->unit.x * dn->unit.y ) -
- ( test->unit.y * dn->unit.x );
- if ( dot <= -0.5 || dot >= 0.5 )
- continue;
-
- loff = ( test->left.x - dn->left.x ) * dn->unit.y -
- ( test->left.y - dn->left.y ) * dn->unit.x;
- roff = ( test->right.x - dn->right.x ) * dn->unit.y -
- ( test->right.y - dn->right.y ) * dn->unit.x;
- if (loff <= -dist_error_diag || loff >= dist_error_diag ||
- roff <= -dist_error_diag || roff >= dist_error_diag )
- continue;
- soff = ( test->left.x - dn->left.x ) * dn->unit.x +
- ( test->left.y - dn->left.y ) * dn->unit.y;
- overlap = false;
- if ( dn->where != NULL && test->where != NULL && test->where->next == NULL ) {
- ibegin = test->where->begin + soff;
- iend = test->where->end + soff;
- for ( hi = dn->where; hi != NULL; hi = hi->next ) {
- if (( hi->begin <= ibegin && ibegin <= hi->end ) ||
- ( hi->begin <= iend && iend <= hi->end ) ||
- ( ibegin <= hi->begin && hi->end <= iend )) {
- overlap = true;
- break;
- }
- }
- } else
- overlap = true;
- /* It's probably a colinear dstem, as in older SFD files. Treat */
- /* it as one more instance for the already added stem */
- if ( !overlap ) {
- for ( hi=dn->where; hi->next != NULL; hi = hi->next ) ;
- hi->next = chunkalloc( sizeof( HintInstance ));
- hi->next->begin = ibegin; hi->next->end = iend;
- DStemInfoFree( test );
-return( false );
- /* The found stem is close but not identical to the stem we */
- /* are going to add. So just replace the older stem with the */
- /* new one */
- } else {
- test->next = dn->next;
- if ( prev == NULL )
- *ds = test;
- else
- prev->next = test;
- DStemInfoFree( dn );
-return( true );
- }
- }
-
- /* Insert the given stem to the list by such a way that diagonal
- * stems are ordered by the X coordinate of the left edge key point, and
- * by Y if X is the same. The order is arbitrary, but may be essential for
- * things like "W". So we should be sure that the autoinstructor will
- * process diagonals from left to right. */
- base = ( test->unit.y < 0 ) ? &test->right : &test->left;
- nbase = ( (*ds)->unit.y < 0 ) ? &(*ds)->right : &(*ds)->left;
-
- if ( base->x < nbase->x || ( base->x == nbase->x && base->y >= nbase->y )) {
- temp = *ds; *ds = test;
- (*ds)->next = temp;
- } else {
- for ( dn=*ds ; dn!=NULL && dn!=test ; dn=dn->next ) {
- next = dn->next;
- pbase = ( dn->unit.y < 0 ) ? &dn->right : &dn->left;
- if ( next != NULL )
- nbase = ( next->unit.y < 0 ) ? &next->right : &next->left;
-
- if (( pbase->x < base->x ||
- ( pbase->x == base->x && pbase->y >= base->y )) &&
- ( next == NULL || base->x < nbase->x ||
- ( base->x == nbase->x && base->y >= nbase->y ))) {
-
- test->next = next; dn->next = test;
- break;
- }
-
- }
- }
-return( true );
-}
-
-static StemInfo *RefHintsMerge(StemInfo *into, StemInfo *rh, real mul, real offset,
- real omul, real oofset) {
- StemInfo *prev, *h, *n;
- real start, width;
-
- for ( ; rh!=NULL; rh=rh->next ) {
- start = rh->start*mul + offset;
- width = rh->width *mul;
- if ( width<0 ) {
- start += width; width = -width;
- }
- for ( h=into, prev=NULL; h!=NULL && (start>h->start || (start==h->start && width>h->width)); prev=h, h=h->next );
- if ( h==NULL || start!=h->start || width!=h->width ) {
- n = chunkalloc(sizeof(StemInfo));
- n->start = start; n->width = width;
- n->ghost = rh->ghost;
- n->next = h;
- if ( prev==NULL )
- into = n;
- else
- prev->next = n;
- n->where = HICopyTrans(rh->where,omul,oofset);
- } else
- h->where = HIMerge(h->where,HICopyTrans(rh->where,omul,oofset));
- }
-return( into );
-}
-
-static DStemInfo *RefDHintsMerge( SplineFont *sf,DStemInfo *into,DStemInfo *rh,
- real xmul,real xoffset,real ymul,real yoffset ) {
- DStemInfo *new;
- double dmul;
-
- for ( ; rh!=NULL; rh=rh->next ) {
- new = chunkalloc( sizeof( DStemInfo ));
- *new = *rh;
- new->left.x = xmul*new->left.x + xoffset;
- new->right.x = xmul*new->right.x + xoffset;
- new->left.y = ymul*new->left.y + yoffset;
- new->right.y = ymul*new->right.y + yoffset;
- new->next = NULL;
- if (( xmul < 0 && ymul > 0 ) || ( xmul > 0 && ymul < 0 ))
- new->unit.y = -new->unit.y;
- new->unit.x *= fabs( xmul ); new->unit.y *= fabs( ymul );
- dmul = sqrt( pow( new->unit.x,2 ) + pow( new->unit.y,2 ));
- new->unit.x /= dmul; new->unit.y /= dmul;
- if ( xmul < 0 ) dmul = -dmul;
- new->where = HICopyTrans( rh->where,dmul,0 );
-
- MergeDStemInfo( sf,&into,new );
- }
-return( into );
-}
-
-static void __SplineCharAutoHint( SplineChar *sc, int layer, BlueData *bd, int gen_undoes );
-
-static void AutoHintRefs(SplineChar *sc,int layer, BlueData *bd, int picky, int gen_undoes) {
- RefChar *ref;
-
- /* Add hints for base characters before accent hints => if there are any */
- /* conflicts, the base characters win */
- for ( ref=sc->layers[layer].refs; ref!=NULL; ref=ref->next ) {
- if ( ref->transform[1]==0 && ref->transform[2]==0 ) {
- if ( picky ) {
- if ( !ref->sc->manualhints && ref->sc->changedsincelasthinted &&
- (ref->sc->layers[layer].refs!=NULL &&
- ref->sc->layers[layer].splines==NULL))
- AutoHintRefs(ref->sc,layer,bd,true,gen_undoes);
- } else if ( !ref->sc->manualhints && ref->sc->changedsincelasthinted )
- __SplineCharAutoHint(ref->sc,layer,bd,gen_undoes);
- if ( ref->sc->unicodeenc!=-1 && ref->sc->unicodeenc<0x10000 &&
- isalnum(ref->sc->unicodeenc) ) {
- sc->hstem = RefHintsMerge(sc->hstem,ref->sc->hstem,ref->transform[3], ref->transform[5], ref->transform[0], ref->transform[4]);
- sc->vstem = RefHintsMerge(sc->vstem,ref->sc->vstem,ref->transform[0], ref->transform[4], ref->transform[3], ref->transform[5]);
- sc->dstem = RefDHintsMerge(sc->parent,sc->dstem,ref->sc->dstem,ref->transform[0], ref->transform[4], ref->transform[3], ref->transform[5]);
- }
- }
- }
-
- for ( ref=sc->layers[layer].refs; ref!=NULL; ref=ref->next ) {
- if ( ref->transform[1]==0 && ref->transform[2]==0 &&
- (ref->sc->unicodeenc==-1 || ref->sc->unicodeenc>=0x10000 ||
- !isalnum(ref->sc->unicodeenc)) ) {
- sc->hstem = RefHintsMerge(sc->hstem,ref->sc->hstem,ref->transform[3], ref->transform[5], ref->transform[0], ref->transform[4]);
- sc->vstem = RefHintsMerge(sc->vstem,ref->sc->vstem,ref->transform[0], ref->transform[4], ref->transform[3], ref->transform[5]);
- sc->dstem = RefDHintsMerge(sc->parent,sc->dstem,ref->sc->dstem,ref->transform[0], ref->transform[4], ref->transform[3], ref->transform[5]);
- }
- }
-
- sc->vconflicts = StemListAnyConflicts(sc->vstem);
- sc->hconflicts = StemListAnyConflicts(sc->hstem);
-}
-
-static void _SCClearHintMasks(SplineChar *sc,int layer, int counterstoo) {
- SplineSet *spl;
- SplinePoint *sp;
- RefChar *ref;
-
- if ( layer<0 || layer>=sc->layer_cnt )
- return;
-
- if ( counterstoo ) {
- free(sc->countermasks);
- sc->countermasks = NULL; sc->countermask_cnt = 0;
- }
-
- for ( spl = sc->layers[layer].splines; spl!=NULL; spl=spl->next ) {
- for ( sp = spl->first ; ; ) {
- chunkfree(sp->hintmask,sizeof(HintMask));
- sp->hintmask = NULL;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==spl->first )
- break;
- }
- }
-
- for ( ref = sc->layers[layer].refs; ref!=NULL; ref=ref->next ) {
- for ( spl = ref->layers[0].splines; spl!=NULL; spl=spl->next ) {
- for ( sp = spl->first ; ; ) {
- chunkfree(sp->hintmask,sizeof(HintMask));
- sp->hintmask = NULL;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==spl->first )
- break;
- }
- }
- }
-}
-
-static void SCFigureSimpleCounterMasks(SplineChar *sc) {
- SplineChar *scs[MmMax];
- int hadh3, hadv3, i, vbase;
- HintMask mask;
- StemInfo *h;
-
- if ( sc->countermask_cnt!=0 )
-return;
-
- scs[0] = sc;
- hadh3 = CvtPsStem3(NULL,scs,1,true,false);
- hadv3 = CvtPsStem3(NULL,scs,1,false,false);
- if ( hadh3 || hadv3 ) {
- memset(mask,0,sizeof(mask));
- if ( hadh3 ) mask[0] = 0x80|0x40|0x20;
- if ( hadv3 ) {
- for ( h=sc->hstem, vbase=0; h!=NULL; h=h->next, ++vbase );
- for ( i=0; i<3 ; ++i ) {
- int j = i+vbase;
- mask[j>>3] |= (0x80>>(j&7));
- }
- }
- sc->countermask_cnt = 1;
- sc->countermasks = malloc(sizeof(HintMask));
- memcpy(sc->countermasks[0],mask,sizeof(HintMask));
-return;
- }
-}
-
-void SCClearHintMasks(SplineChar *sc,int layer,int counterstoo) {
- MMSet *mm = sc->parent->mm;
- int i;
-
- if ( mm==NULL )
- _SCClearHintMasks(sc,layer,counterstoo);
- else {
- for ( i=0; i<mm->instance_count; ++i ) {
- if ( sc->orig_pos<mm->instances[i]->glyphcnt )
- _SCClearHintMasks(mm->instances[i]->glyphs[sc->orig_pos],layer,counterstoo);
- }
- if ( sc->orig_pos<mm->normal->glyphcnt )
- _SCClearHintMasks(mm->normal->glyphs[sc->orig_pos],layer,counterstoo);
- }
-}
-
-static StemInfo *OnHHint(SplinePoint *sp, StemInfo *s) {
- StemInfo *possible=NULL;
- HintInstance *hi;
-
- if ( sp==NULL )
-return( NULL );
-
- for ( ; s!=NULL; s=s->next ) {
- if ( sp->me.y<s->start )
-return( possible );
- if ( s->start==sp->me.y || s->start+s->width==sp->me.y ) {
- if ( !s->hasconflicts )
-return( s );
- for ( hi=s->where; hi!=NULL; hi=hi->next ) {
- if ( hi->begin<=sp->me.x && hi->end>=sp->me.x )
-return( s );
- }
- if ( !s->used )
- possible = s;
- }
- }
-return( possible );
-}
-
-static StemInfo *OnVHint(SplinePoint *sp, StemInfo *s) {
- StemInfo *possible=NULL;
- HintInstance *hi;
-
- if ( sp==NULL )
-return( NULL );
-
- for ( ; s!=NULL; s=s->next ) {
- if ( sp->me.x<s->start )
-return( possible );
- if ( s->start==sp->me.x || s->start+s->width==sp->me.x ) {
- if ( !s->hasconflicts )
-return( s );
- for ( hi=s->where; hi!=NULL; hi=hi->next ) {
- if ( hi->begin<=sp->me.y && hi->end>=sp->me.y )
-return( s );
- }
- if ( !s->used )
- possible = s;
- }
- }
-return( possible );
-}
-
-/* Does h have a conflict with any of the stems in the list which have bits */
-/* set in the mask */
-static int ConflictsWithMask(StemInfo *stems, HintMask mask,StemInfo *h) {
- while ( stems!=NULL && stems->start<=h->start+h->width ) {
- if ( stems->start+stems->width>=h->start && stems!=h ) {
- if ( stems->hintnumber!=-1 &&
- (mask[stems->hintnumber>>3]&(0x80>>(stems->hintnumber&7))) )
-return( true );
- }
- stems = stems->next;
- }
-return( false );
-}
-
-/* All instances of a MM set must have the same hint mask at all points */
-static void FigureHintMask(SplineChar *scs[MmMax], SplinePoint *to[MmMax], int instance_count,
- HintMask mask) {
- StemInfo *s;
- int i;
- SplinePoint *sp;
-
- memset(mask,'\0',sizeof(HintMask));
-
- /* Install all hints that are always active */
- i=0; {
- SplineChar *sc = scs[i];
-
- if ( sc==NULL )
-return;
-
- for ( s=sc->hstem; s!=NULL; s=s->next )
- if ( s->hintnumber!=-1 && !s->hasconflicts )
- mask[s->hintnumber>>3] |= (0x80>>(s->hintnumber&7));
- for ( s=sc->vstem; s!=NULL; s=s->next )
- if ( s->hintnumber!=-1 && !s->hasconflicts )
- mask[s->hintnumber>>3] |= (0x80>>(s->hintnumber&7));
-
- if ( sc->hconflicts ) {
- for ( sp=to[i]; sp!=NULL; ) {
- s = OnHHint(sp,sc->hstem);
- if ( s!=NULL && s->hintnumber!=-1 ) {
- if ( ConflictsWithMask(scs[i]->hstem,mask,s))
- break;
- mask[s->hintnumber>>3] |= (0x80>>(s->hintnumber&7));
- }
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( to[i]==sp )
- break;
- }
- }
- if ( sc->vconflicts ) {
- for ( sp=to[i]; sp!=NULL; ) {
- s = OnVHint(sp,sc->vstem);
- if ( s!=NULL && s->hintnumber!=-1 ) {
- if ( ConflictsWithMask(scs[i]->vstem,mask,s))
- break;
- mask[s->hintnumber>>3] |= (0x80>>(s->hintnumber&7));
- }
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( to[i]==sp )
- break;
- }
- }
- }
- for ( i=0; i<instance_count; ++i ) if ( to[i]!=NULL ) {
- chunkfree(to[i]->hintmask,sizeof(HintMask));
- to[i]->hintmask = chunkalloc(sizeof(HintMask));
- memcpy(to[i]->hintmask,mask,sizeof(HintMask));
- }
-}
-
-static int TestHintMask(SplineChar *scs[MmMax], SplinePoint *to[MmMax], int instance_count,
- HintMask mask) {
- StemInfo *h=NULL, *v=NULL;
- int i;
-
- for ( i=0; i<instance_count; ++i ) {
- SplineChar *sc = scs[i];
-
- if ( sc==NULL || (!sc->hconflicts && !sc->vconflicts ))
- continue;
-
- /* Does this point lie on any hints? */
- if ( scs[i]->hconflicts )
- h = OnHHint(to[i],sc->hstem);
- if ( scs[i]->vconflicts )
- v = OnVHint(to[i],sc->vstem);
-
- /* Need to set this hint */
- if ( (h!=NULL && h->hintnumber!=-1 && (mask[h->hintnumber>>3]&(0x80>>(h->hintnumber&7)))==0 ) ||
- (v!=NULL && v->hintnumber!=-1 && (mask[v->hintnumber>>3]&(0x80>>(v->hintnumber&7)))==0 ))
- break;
- }
- if ( i==instance_count ) /* All hint masks were ok */
-return( false );
-
- FigureHintMask(scs,to,instance_count,mask);
-return( true );
-}
-
-static void UnnumberHints(SplineChar *sc) {
- StemInfo *h;
-
- for ( h=sc->hstem; h!=NULL; h=h->next )
- h->hintnumber = -1;
- for ( h=sc->vstem; h!=NULL; h=h->next )
- h->hintnumber = -1;
-}
-
-static int NumberHints(SplineChar *sc) {
- StemInfo *h;
- int hcnt=0;
-
- for ( h=sc->hstem; h!=NULL; h=h->next )
- h->hintnumber = hcnt>=HntMax ? -1 : hcnt++;
- for ( h=sc->vstem; h!=NULL; h=h->next )
- h->hintnumber = hcnt>=HntMax ? -1 : hcnt++;
-return( hcnt );
-}
-
-static void UntickHints(SplineChar *sc) {
- StemInfo *h;
-
- for ( h=sc->hstem; h!=NULL; h=h->next )
- h->used = false;
- for ( h=sc->vstem; h!=NULL; h=h->next )
- h->used = false;
-}
-
-struct coords {
- real coords[MmMax];
- struct coords *next;
-};
-
-typedef struct mmh {
- StemInfo *hints[MmMax], *map[MmMax];
- struct coords *where;
- struct mmh *next;
-} MMH;
-
-static void AddCoord(MMH *mmh,SplinePoint *sps[MmMax],int instance_count, int ish) {
- struct coords *coords;
- int i;
-
- coords = chunkalloc(sizeof(struct coords));
- coords->next = mmh->where;
- mmh->where = coords;
- if ( ish )
- for ( i=0; i<instance_count; ++i )
- coords->coords[i] = sps[i]->me.x;
- else
- for ( i=0; i<instance_count; ++i )
- coords->coords[i] = sps[i]->me.y;
-}
-
-static MMH *AddHintSet(MMH *hints,StemInfo *h[MmMax], int instance_count,
- SplinePoint *sps[MmMax], int ish) {
- int i, cnt, bestc;
- MMH *test, *best;
-
- for ( i=0; i<instance_count; ++i )
- if ( h[i]==NULL )
-return( hints );
-
- best = NULL; bestc = 0;
- for ( test=hints; test!=NULL; test=test->next ) {
- cnt = 0;
- for ( i=0; i<instance_count; ++i )
- if ( test->hints[i]==h[i] )
- ++cnt;
- if ( cnt==instance_count ) {
- AddCoord(test,sps,instance_count,ish);
-return( hints );
- }
- if ( cnt>bestc ) {
- bestc = cnt;
- best = test;
- }
- }
- test = chunkalloc(sizeof(MMH));
- test->next = hints;
- AddCoord(test,sps,instance_count,ish);
- for ( i=0; i<instance_count; ++i )
- test->hints[i]=h[i];
- if ( bestc!=0 ) {
- for ( i=0; i<instance_count; ++i ) {
- if ( best->hints[i]==h[i] ) {
- h[i]->hasconflicts = true;
- test->map[i] = chunkalloc(sizeof(StemInfo));
- *test->map[i] = *h[i];
- test->map[i]->where = NULL;
- test->map[i]->used = true;
- h[i]->next = test->map[i];
- } else
- test->map[i] = h[i];
- }
- } else {
- for ( i=0; i<instance_count; ++i )
- test->map[i]=h[i];
- }
-return( test );
-}
-
-static int CompareMMH(MMH *mmh1,MMH *mmh2, int instance_count) {
- int i;
-
- if ( mmh1->map[0]==NULL )
-return( 1 );
- if ( mmh2->map[0]==NULL )
-return( -1 );
-
- for ( i=0; i<instance_count; ++i ) {
- if ( mmh1->map[i]->start!=mmh2->map[i]->start ) {
- if ( mmh1->map[i]->start > mmh2->map[i]->start )
-return( 1 );
- else
-return( -1 );
- }
- }
- for ( i=0; i<instance_count; ++i ) {
- if ( mmh1->map[i]->width!=mmh2->map[i]->width ) {
- if ( mmh1->map[i]->width > mmh2->map[i]->width )
-return( 1 );
- else
-return( -1 );
- }
- }
-return( 0 );
-}
-
-static MMH *SortMMH(MMH *head,int instance_count) {
- MMH *mmh, *p, *smallest, *psmallest, *test, *ptest;
-
- for ( mmh = head, p=NULL; mmh!=NULL ; ) {
- smallest = mmh; psmallest = p;
- ptest = mmh; test = mmh->next;
- while ( test!=NULL ) {
- if ( CompareMMH(test,smallest,instance_count)<0 ) {
- smallest = test;
- psmallest = ptest;
- }
- ptest = test;
- test = test->next;
- }
- if ( smallest!=mmh ) {
- if ( p==NULL )
- head = smallest;
- else
- p->next = smallest;
- if ( mmh->next==smallest ) {
- mmh->next = smallest->next;
- smallest->next = mmh;
- } else {
- test = mmh->next;
- mmh->next = smallest->next;
- smallest->next = test;
- psmallest->next = mmh;
- }
- }
- p = smallest;
- mmh = smallest->next;
- }
-return( head );
-}
-
-static int NumberMMH(MMH *mmh,int hstart,int instance_count) {
- int i;
- HintInstance *hi, *n;
- struct coords *coords;
-
- while ( mmh!=NULL ) {
- for ( i=0; i<instance_count; ++i ) {
- StemInfo *h = mmh->map[i];
- if ( h==NULL )
- continue;
-
- h->hintnumber = hstart;
-
- for ( hi=h->where; hi!=NULL; hi=n ) {
- n = hi->next;
- chunkfree(hi,sizeof(HintInstance));
- }
- h->where = NULL;
- for ( coords=mmh->where; coords!=NULL; coords = coords->next ) {
- hi = chunkalloc(sizeof(HintInstance));
- hi->next = h->where;
- h->where = hi;
- hi->begin = coords->coords[i]-1;
- hi->end = coords->coords[i]+1;
- }
- }
- if ( mmh->map[0]!=NULL ) ++hstart;
- mmh = mmh->next;
- }
-return( hstart );
-}
-
-static void SortMMH2(SplineChar *scs[MmMax],MMH *mmh,int instance_count,int ish) {
- int i;
- StemInfo *h, *n;
- MMH *m;
-
- for ( i=0; i<instance_count; ++i ) {
- for ( h= ish ? scs[i]->hstem : scs[i]->vstem; h!=NULL; h=n ) {
- n = h->next;
- if ( h->hintnumber==-1 )
- StemInfoFree(h);
- }
- n = NULL;
- for ( m = mmh ; m!=NULL; m=m->next ) {
- h = m->map[i];
- if ( n!=NULL )
- n->next = h;
- else if ( ish )
- scs[i]->hstem = h;
- else
- scs[i]->vstem = h;
- n = h;
- }
- if ( n!=NULL )
- n->next = NULL;
- else if ( ish )
- scs[i]->hstem = NULL;
- else
- scs[i]->vstem = NULL;
- }
-}
-
-static void MMHFreeList(MMH *mmh) {
- MMH *mn;
- struct coords *c, *n;
-
- for ( ; mmh!=NULL; mmh = mn ) {
- mn = mmh->next;
- for ( c=mmh->where; c!=NULL; c=n ) {
- n = c->next;
- chunkfree(c,sizeof(struct coords));
- }
- chunkfree(mmh,sizeof(struct coords));
- }
-}
-
-static void SplResolveSplitHints(SplineChar *scs[MmMax], SplineSet *spl[MmMax],
- int instance_count, MMH **hs, MMH **vs) {
- SplinePoint *to[MmMax];
- StemInfo *h[MmMax], *v[MmMax];
- int i, anymore;
-
- for (;;) {
- for ( i=0; i<instance_count; ++i ) {
- if ( spl[i]!=NULL )
- to[i] = spl[i]->first;
- else
- to[i] = NULL;
- }
- for (;;) {
- for ( i=0; i<instance_count; ++i ) {
- h[i] = OnHHint(to[i],scs[i]->hstem);
- v[i] = OnVHint(to[i],scs[i]->vstem);
- }
- *hs = AddHintSet(*hs,h,instance_count,to,true);
- *vs = AddHintSet(*vs,v,instance_count,to,false);
- anymore = false;
- for ( i=0; i<instance_count; ++i ) if ( to[i]!=NULL ) {
- if ( to[i]->next==NULL ) to[i] = NULL;
- else {
- to[i] = to[i]->next->to;
- if ( to[i]==spl[i]->first ) to[i] = NULL;
- }
- if ( to[i]!=NULL ) anymore = true;
- }
- if ( !anymore )
- break;
- }
- anymore = false;
- for ( i=0; i<instance_count; ++i ) {
- if ( spl[i]!=NULL )
- spl[i] = spl[i]->next;
- if ( spl[i]!=NULL ) anymore = true;
- }
- if ( !anymore )
- break;
- }
-}
-
-static void ResolveSplitHints(SplineChar *scs[16],int layer,int instance_count) {
- /* It is possible for a single hint in one mm instance to split into two */
- /* in a different MM set. For example, we have two stems which happen */
- /* to line up in one instance but which do not in another instance. */
- /* It is even possible that there could be no instance with any conflicts */
- /* but some of the intermediate forms might conflict. */
- /* We can't deal (nor can postscript) with the case where hints change order*/
- SplinePointList *spl[MmMax];
- RefChar *ref[MmMax];
- int i, hcnt, hmax=0, anymore;
- MMH *hs=NULL, *vs=NULL;
-
- for ( i=0; i<instance_count; ++i ) {
- hcnt = NumberHints(scs[i]);
- UntickHints(scs[i]);
- if ( hcnt>hmax ) hmax = hcnt;
- spl[i] = scs[i]->layers[layer].splines;
- }
- if ( hmax==0 )
-return;
-
- SplResolveSplitHints(scs,spl,instance_count,&hs,&vs);
- anymore = false;
- for ( i=0; i<instance_count; ++i ) {
- ref[i] = scs[i]->layers[layer].refs;
- if ( ref[i]!=NULL ) anymore = true;
- }
- while ( anymore ) {
- for ( i=0; i<instance_count; ++i )
- spl[i] = ( ref[i]!=NULL ) ? ref[i]->layers[0].splines : NULL;
- SplResolveSplitHints(scs,spl,instance_count,&hs,&vs);
- anymore = false;
- for ( i=0; i<instance_count; ++i ) {
- if ( ref[i]!=NULL ) {
- ref[i] = ref[i]->next;
- if ( ref[i]!=NULL ) anymore = true;
- }
- }
- }
-
- for ( i=0; i<instance_count; ++i )
- UnnumberHints(scs[i]);
- hs = SortMMH(hs,instance_count);
- vs = SortMMH(vs,instance_count);
- hcnt = NumberMMH(hs,0,instance_count);
- hcnt = NumberMMH(vs,hcnt,instance_count);
- SortMMH2(scs,hs,instance_count,true);
- SortMMH2(scs,vs,instance_count,false);
- MMHFreeList(hs);
- MMHFreeList(vs);
-}
-
-static int SplFigureHintMasks(SplineChar *scs[MmMax], SplineSet *spl[MmMax],
- int instance_count, HintMask mask, int inited) {
- SplinePoint *to[MmMax];
- int i, anymore;
-
- anymore = false;
- for ( i=0; i<instance_count; ++i ) {
- if ( spl[i]!=NULL ) {
- SplineSetReverse(spl[i]);
- to[i] = spl[i]->first;
- anymore = true;
- } else
- to[i] = NULL;
- }
-
- /* Assign the initial hint mask */
- if ( anymore && !inited ) {
- FigureHintMask(scs,to,instance_count,mask);
- inited = true;
- }
-
- for (;;) {
- for ( i=0; i<instance_count; ++i ) {
- if ( spl[i]!=NULL )
- to[i] = spl[i]->first;
- else
- to[i] = NULL;
- }
- for (;;) {
- TestHintMask(scs,to,instance_count,mask);
- anymore = false;
- for ( i=0; i<instance_count; ++i ) if ( to[i]!=NULL ) {
- if ( to[i]->next==NULL ) to[i] = NULL;
- else {
- to[i] = to[i]->next->to;
- if ( to[i]==spl[i]->first ) to[i] = NULL;
- }
- if ( to[i]!=NULL ) anymore = true;
- }
- if ( !anymore )
- break;
- }
- anymore = false;
- for ( i=0; i<instance_count; ++i ) {
- if ( spl[i]!=NULL ) {
- SplineSetReverse(spl[i]);
- spl[i] = spl[i]->next;
- }
- if ( spl[i]!=NULL ) {
- anymore = true;
- SplineSetReverse(spl[i]);
- }
- }
- if ( !anymore )
- break;
- }
-return( inited );
-}
-
-void SCFigureHintMasks(SplineChar *sc,int layer) {
- SplineChar *scs[MmMax];
- SplinePointList *spl[MmMax];
- RefChar *ref[MmMax];
- MMSet *mm = sc->parent->mm;
- int i, instance_count, conflicts, anymore, inited;
- HintMask mask;
-
- if ( mm==NULL ) {
- scs[0] = sc;
- instance_count = 1;
- SCClearHintMasks(sc,layer,false);
- } else {
- if ( mm->apple )
-return;
- instance_count = mm->instance_count;
- for ( i=0; i<instance_count; ++i )
- if ( sc->orig_pos < mm->instances[i]->glyphcnt ) {
- scs[i] = mm->instances[i]->glyphs[sc->orig_pos];
- SCClearHintMasks(scs[i],layer,false);
- }
- ResolveSplitHints(scs,layer,instance_count);
- }
- conflicts = false;
- for ( i=0; i<instance_count; ++i ) {
- NumberHints(scs[i]);
- if ( scs[i]->hconflicts || scs[i]->vconflicts )
- conflicts = true;
- }
- if ( !conflicts && instance_count==1 ) { /* All hints always active */
- SCFigureSimpleCounterMasks(sc);
-return; /* In an MM font we may still need to resolve things like different numbers of hints */
- }
-
- for ( i=0; i<instance_count; ++i ) {
- spl[i] = scs[i]->layers[layer].splines;
- ref[i] = scs[i]->layers[layer].refs;
- }
- inited = SplFigureHintMasks(scs,spl,instance_count,mask,false);
- for (;;) {
- for ( i=0; i<instance_count; ++i ) {
- if ( ref[i]!=NULL )
- spl[i] = ref[i]->layers[0].splines;
- }
- inited = SplFigureHintMasks(scs,spl,instance_count,mask,inited);
- anymore = false;
- for ( i=0; i<instance_count; ++i ) {
- if ( ref[i]!=NULL ) {
- ref[i] = ref[i]->next;
- if ( ref[i]!=NULL ) anymore = true;
- }
- }
- if ( !anymore )
- break;
- }
- if ( instance_count==1 )
- SCFigureSimpleCounterMasks(sc);
-}
-
-static StemInfo *GDFindStems(struct glyphdata *gd, int major) {
- int i;
- StemInfo *head = NULL, *cur, *p, *t;
- StemBundle *bundle = major ? gd->vbundle : gd->hbundle;
- StemData *stem;
- int other = !major;
- double l, r;
-
- for ( i=0; i<bundle->cnt; ++i ) {
- stem = bundle->stemlist[i];
- l = (&stem->left.x)[other];
- r = (&stem->right.x)[other];
- cur = chunkalloc( sizeof( StemInfo ));
- if ( l<r ) {
- cur->start = l;
- cur->width = r - l;
- cur->haspointleft = stem->lpcnt > 0;
- cur->haspointright = stem->rpcnt > 0;
- } else {
- cur->start = r;
- cur->width = l - r;
- cur->haspointleft = stem->rpcnt > 0;
- cur->haspointright = stem->lpcnt > 0;
- }
- cur->ghost = stem->ghost;
- for ( p=NULL, t=head; t!=NULL ; p=t, t=t->next ) {
- if ( cur->start<=t->start )
- break;
- }
- cur->next = t;
- if ( p==NULL )
- head = cur;
- else
- p->next = cur;
- cur->where = StemAddHIFromActive(stem,major);
- }
- head = StemRemoveFlexCandidates(head);
-return( head );
-}
-
-static DStemInfo *GDFindDStems(struct glyphdata *gd) {
- int i;
- DStemInfo *head = NULL, *cur ;
- struct stemdata *stem;
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- /* A real diagonal stem should consist of one or more continuous
- * ranges. Thus the number of active zones should be less then the
- * number of stem chunks (i. e. pairs of the opposite points). If
- * each chunk has its own active zone, then we probably have got
- * not a real stem, but rather two (or more) separate point pairs,
- * which occasionally happened to have nearly the same vectors and
- * to be positioned on the same lines */
- if ( stem->toobig )
- continue;
-
- if (( stem->unit.y > -.05 && stem->unit.y < .05 ) ||
- ( stem->unit.x > -.05 && stem->unit.x < .05 ))
- continue;
-
- if ( stem->lpcnt < 2 || stem->rpcnt < 2 )
- continue;
- cur = chunkalloc( sizeof(DStemInfo) );
- cur->left = stem->left;
- cur->right = stem->right;
- cur->unit = stem->unit;
- cur->where = DStemAddHIFromActive( stem );
- MergeDStemInfo(gd->sf, &head, cur);
- }
-return( head );
-}
-
-
-static bool inorder( real a, real b, real c )
-{
- return a < b && b < c;
-}
-
-/**
- * If fluffy is near enough to exact then clamp to exact.
- * If fluffy is more than Tolerance away from exact then
- * just return fluffy (no change).
- */
-static real clampToIfNear( real exact, real fluffy, real Tolerance )
-{
- if( inorder( exact - Tolerance, fluffy, exact + Tolerance ))
- return exact;
-
- return fluffy;
-}
-
-
-void _SplineCharAutoHint( SplineChar *sc, int layer, BlueData *bd, struct glyphdata *gd2,
- int gen_undoes ) {
- struct glyphdata *gd;
-
- StemInfosFree(sc->vstem); sc->vstem=NULL;
- StemInfosFree(sc->hstem); sc->hstem=NULL;
- DStemInfosFree(sc->dstem); sc->dstem=NULL;
- MinimumDistancesFree(sc->md); sc->md=NULL;
-
- free(sc->countermasks);
- sc->countermasks = NULL; sc->countermask_cnt = 0;
- /* We'll free the hintmasks when we call SCFigureHintMasks */
-
- sc->changedsincelasthinted = false;
- sc->manualhints = false;
-
- if ( (gd=gd2)==NULL )
- gd = GlyphDataBuild( sc,layer,bd,false );
- if ( gd!=NULL ) {
-
- sc->vstem = GDFindStems(gd,1);
- sc->hstem = GDFindStems(gd,0);
-
- if ( !gd->only_hv )
- sc->dstem = GDFindDStems(gd);
- if ( gd2==NULL ) GlyphDataFree(gd);
- }
-
- real AutohintRoundingTolerance = 0.005;
- StemInfo* s = sc->hstem;
- for( ; s; s = s->next )
- {
- s->width = clampToIfNear( 20.0, s->width, AutohintRoundingTolerance );
- s->width = clampToIfNear( 21.0, s->width, AutohintRoundingTolerance );
- }
-
- AutoHintRefs(sc,layer,bd,false,gen_undoes);
-}
-
-static void __SplineCharAutoHint( SplineChar *sc, int layer, BlueData *bd, int gen_undoes ) {
- MMSet *mm = sc->parent->mm;
- int i;
-
- if ( mm==NULL )
- _SplineCharAutoHint(sc,layer,bd,NULL,gen_undoes);
- else {
- for ( i=0; i<mm->instance_count; ++i )
- if ( sc->orig_pos < mm->instances[i]->glyphcnt )
- _SplineCharAutoHint(mm->instances[i]->glyphs[sc->orig_pos],layer,NULL,NULL,gen_undoes);
- if ( sc->orig_pos < mm->normal->glyphcnt )
- _SplineCharAutoHint(mm->normal->glyphs[sc->orig_pos],layer,NULL,NULL,gen_undoes);
- }
- SCFigureHintMasks(sc,layer);
-}
-
-void SplineCharAutoHint( SplineChar *sc, int layer, BlueData *bd ) {
- __SplineCharAutoHint(sc,layer,bd,true);
-}
-
-void SFSCAutoHint( SplineChar *sc, int layer, BlueData *bd ) {
- RefChar *ref;
-
- if ( sc->ticked )
-return;
- for ( ref=sc->layers[ly_fore].refs; ref!=NULL; ref=ref->next ) {
- if ( !ref->sc->ticked )
- SFSCAutoHint(ref->sc,layer,bd);
- }
- sc->ticked = true;
- SplineCharAutoHint(sc,layer,bd);
-}
-
-void SplineFontAutoHint( SplineFont *_sf,int layer) {
- int i,k;
- SplineFont *sf;
- BlueData *bd = NULL, _bd;
- SplineChar *sc;
-
- if ( _sf->mm==NULL ) {
- QuickBlues(_sf,layer,&_bd);
- bd = &_bd;
- }
-
- /* Tick the ones we don't want to AH, untick the ones that need AH */
- k=0;
- do {
- sf = _sf->subfontcnt==0 ? _sf : _sf->subfonts[k];
- for ( i=0; i<sf->glyphcnt; ++i ) if ( (sc = sf->glyphs[i])!=NULL )
- sc->ticked = ( !sc->changedsincelasthinted || sc->manualhints );
- ++k;
- } while ( k<_sf->subfontcnt );
-
- k=0;
- do {
- sf = _sf->subfontcnt==0 ? _sf : _sf->subfonts[k];
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- if ( sf->glyphs[i]->changedsincelasthinted &&
- !sf->glyphs[i]->manualhints )
- SFSCAutoHint(sf->glyphs[i],layer,bd);
- if ( !ff_progress_next()) {
- k = _sf->subfontcnt+1;
- break;
- }
- }
- ++k;
- } while ( k<_sf->subfontcnt );
-}
-
-void SplineFontAutoHintRefs( SplineFont *_sf,int layer) {
- int i,k;
- SplineFont *sf;
- BlueData *bd = NULL, _bd;
- SplineChar *sc;
-
- if ( _sf->mm==NULL ) {
- QuickBlues(_sf,layer,&_bd);
- bd = &_bd;
- }
-
- k=0;
- do {
- sf = _sf->subfontcnt==0 ? _sf : _sf->subfonts[k];
- for ( i=0; i<sf->glyphcnt; ++i ) if ( (sc = sf->glyphs[i])!=NULL ) {
- if ( sc->changedsincelasthinted &&
- !sc->manualhints &&
- (sc->layers[layer].refs!=NULL && sc->layers[layer].splines==NULL)) {
- StemInfosFree(sc->vstem); sc->vstem=NULL;
- StemInfosFree(sc->hstem); sc->hstem=NULL;
- AutoHintRefs(sc,layer,bd,true,true);
- }
- }
- ++k;
- } while ( k<_sf->subfontcnt );
-}
-
-static void FigureStems( SplineFont *sf, real snaps[12], real cnts[12],
- int which ) {
- int i, j, k, cnt, smax=0, smin=2000;
- real stemwidths[2000];
- StemInfo *stems, *test;
- int len;
- HintInstance *hi;
-
- memset(stemwidths,'\0',sizeof(stemwidths));
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- stems = which?sf->glyphs[i]->hstem:sf->glyphs[i]->vstem;
- for ( test=stems; test!=NULL; test = test->next ) if ( !test->ghost ) {
- if ( (j=test->width)<0 ) j= -j;
- if ( j<2000 ) {
- len = 0;
- for ( hi=test->where; hi!=NULL; hi=hi->next )
- len += hi->end-hi->begin;
- if ( len==0 ) len = 100;
- stemwidths[j] += len;
- if ( smax<j ) smax=j;
- if ( smin>j ) smin=j;
- }
- }
- }
-
- for ( i=smin, cnt=0; i<=smax; ++i ) {
- if ( stemwidths[i]!=0 )
- ++cnt;
- }
-
- if ( cnt>12 ) {
- /* Merge width windows */
- int windsize=3, j;
- for ( i=smin; i<=smax; ++i ) if ( stemwidths[i]!=0 ) {
- if ( (j = i-windsize)<0 ) j=0;
- for ( ; j<smax && j<=i+windsize; ++j )
- if ( stemwidths[i]<stemwidths[j] )
- break;
- if ( j==smax || j>i+windsize ) {
- if ( (j = i-windsize)<0 ) j=0;
- for ( ; j<smax && j<=i+windsize; ++j ) if ( j!=i ) {
- stemwidths[i] += stemwidths[j];
- stemwidths[j] = 0;
- }
- }
- }
- /* Merge adjacent widths */
- for ( i=smin; i<=smax; ++i ) {
- if ( i<=smax-1 && stemwidths[i]!=0 && stemwidths[i+1]!=0 ) {
- if ( stemwidths[i]>stemwidths[i+1] ) {
- stemwidths[i] += stemwidths[i+1];
- stemwidths[i+1] = 0;
- } else {
- if ( i<=smax-2 && stemwidths[i+2] && stemwidths[i+2]<stemwidths[i+1] ) {
- stemwidths[i+1] += stemwidths[i+2];
- stemwidths[i+2] = 0;
- }
- stemwidths[i+1] += stemwidths[i];
- stemwidths[i] = 0;
- ++i;
- }
- }
- }
- for ( i=smin, cnt=0; i<=smax; ++i ) {
- if ( stemwidths[i]!=0 )
- ++cnt;
- }
- }
- if ( cnt<=12 ) {
- for ( i=smin, cnt=0; i<=smax; ++i ) {
- if ( stemwidths[i]!=0 ) {
- snaps[cnt] = i;
- cnts[cnt++] = stemwidths[i];
- }
- }
- } else { real firstbiggest=0;
- for ( cnt = 0; cnt<12; ++cnt ) {
- int biggesti=0;
- real biggest=0;
- for ( i=smin; i<=smax; ++i ) {
- if ( stemwidths[i]>biggest ) { biggest = stemwidths[i]; biggesti=i; }
- }
- /* array must be sorted */
- if ( biggest<firstbiggest/6 )
- break;
- for ( j=0; j<cnt; ++j )
- if ( snaps[j]>biggesti )
- break;
- for ( k=cnt-1; k>=j; --k ) {
- snaps[k+1] = snaps[k];
- cnts[k+1]=cnts[k];
- }
- snaps[j] = biggesti;
- cnts[j] = biggest;
- stemwidths[biggesti] = 0;
- if ( firstbiggest==0 ) firstbiggest = biggest;
- }
- }
- for ( ; cnt<12; ++cnt ) {
- snaps[cnt] = 0;
- cnts[cnt] = 0;
- }
-}
-
-void FindHStems( SplineFont *sf, real snaps[12], real cnt[12]) {
- FigureStems(sf,snaps,cnt,1);
-}
-
-void FindVStems( SplineFont *sf, real snaps[12], real cnt[12]) {
- FigureStems(sf,snaps,cnt,0);
-}
-
-static int IsFlexSmooth(SplinePoint *sp) {
- BasePoint nvec, pvec;
- double proj_same, proj_normal;
-
- if ( sp->nonextcp || sp->noprevcp )
-return( false ); /* No continuity of slopes */
-
- nvec.x = sp->nextcp.x - sp->me.x; nvec.y = sp->nextcp.y - sp->me.y;
- pvec.x = sp->me.x - sp->prevcp.x; pvec.y = sp->me.y - sp->prevcp.y;
-
- /* Avoid cases where the slopes are 180 out of phase */
- if ( (proj_same = nvec.x*pvec.x + nvec.y*pvec.y)<=0 )
-return( false );
- if ( (proj_normal = nvec.x*pvec.y - nvec.y*pvec.x)<0 )
- proj_normal = -proj_normal;
-
- /* Something is smooth if the normal projection is 0. Let's allow for */
- /* some rounding errors */
- if ( proj_same >= 16*proj_normal )
-return( true );
-
-return( false );
-}
-
-static int _SplineCharIsFlexible(SplineChar *sc, int layer, int blueshift) {
- /* Need two splines
- outer endpoints have same x (or y) values
- inner point must be less than 20 horizontal (v) units from the outer points
- inner point must also be less than BlueShift units (defaults to 7=>6)
- (can increase BlueShift up to 21)
- the inner point must be a local extremum
- the inner point's cps must be at the x (or y) value as the extremum
- (I think)
- */
- /* We want long, nearly straight stems. If the end-points should not have
- continuous slopes, or if they do, they must be horizontal/vertical.
- This is an heuristic requirement, not part of Adobe's spec.
- */
- SplineSet *spl;
- SplinePoint *sp, *np, *pp;
- int max=0, val;
- RefChar *r;
-
- if ( sc==NULL )
-return(false);
-
- for ( spl = sc->layers[layer].splines; spl!=NULL; spl=spl->next ) {
- if ( spl->first->prev==NULL ) {
- /* Mark everything on the open path as inflexible */
- sp=spl->first;
- while ( 1 ) {
- sp->flexx = sp->flexy = false;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- }
- continue; /* Ignore open paths */
- }
- sp=spl->first;
- do {
- if ( sp->next==NULL || sp->prev==NULL )
- break;
- np = sp->next->to;
- pp = sp->prev->from;
- if ( !pp->flexx && !pp->flexy ) {
- sp->flexy = sp->flexx = 0;
- val = 0;
- if ( RealNear(sp->nextcp.x,sp->me.x) &&
- RealNear(sp->prevcp.x,sp->me.x) &&
- RealNear(np->me.x,pp->me.x) &&
- !RealNear(np->me.x,sp->me.x) &&
- (!IsFlexSmooth(pp) || RealNear(pp->nextcp.x,pp->me.x)) &&
- (!IsFlexSmooth(np) || RealNear(np->prevcp.x,np->me.x)) &&
- np->me.x-sp->me.x < blueshift &&
- np->me.x-sp->me.x > -blueshift ) {
- if ( (np->me.x>sp->me.x &&
- np->prevcp.x<=np->me.x && np->prevcp.x>=sp->me.x &&
- pp->nextcp.x<=pp->me.x && pp->prevcp.x>=sp->me.x ) ||
- (np->me.x<sp->me.x &&
- np->prevcp.x>=np->me.x && np->prevcp.x<=sp->me.x &&
- pp->nextcp.x>=pp->me.x && pp->prevcp.x<=sp->me.x )) {
- sp->flexx = true;
- val = np->me.x-sp->me.x;
- }
- }
- if ( RealNear(sp->nextcp.y,sp->me.y) &&
- RealNear(sp->prevcp.y,sp->me.y) &&
- RealNear(np->me.y,pp->me.y) &&
- !RealNear(np->me.y,sp->me.y) &&
- (!IsFlexSmooth(pp) || RealNear(pp->nextcp.y,pp->me.y)) &&
- (!IsFlexSmooth(np) || RealNear(np->prevcp.y,np->me.y)) &&
- np->me.y-sp->me.y < blueshift &&
- np->me.y-sp->me.y > -blueshift ) {
- if ( (np->me.y>sp->me.y &&
- np->prevcp.y<=np->me.y && np->prevcp.y>=sp->me.y &&
- pp->nextcp.y<=pp->me.y && pp->nextcp.y>=sp->me.y ) ||
- (np->me.y<sp->me.y &&
- np->prevcp.y>=np->me.y && np->prevcp.y<=sp->me.y &&
- pp->nextcp.y>=pp->me.y && pp->nextcp.y<=sp->me.y )) {
- sp->flexy = true;
- val = np->me.y-sp->me.y;
- }
- }
- if ( val<0 ) val = -val;
- if ( val>max ) max = val;
- }
- sp = np;
- } while ( sp!=spl->first );
- }
- sc->layers[layer].anyflexes = max>0;
- if ( max==0 )
- for ( r = sc->layers[layer].refs; r!=NULL ; r=r->next )
- if ( r->sc->layers[layer].anyflexes ) {
- sc->layers[layer].anyflexes = true;
- break;
- }
-return( max );
-}
-
-static void SCUnflex(SplineChar *sc, int layer) {
- SplineSet *spl;
- SplinePoint *sp;
-
- for ( spl = sc->layers[layer].splines; spl!=NULL; spl=spl->next ) {
- /* Mark everything on the path as inflexible */
- sp=spl->first;
- while ( 1 ) {
- sp->flexx = sp->flexy = false;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==spl->first )
- break;
- }
- }
- sc->layers[layer].anyflexes = false;
-}
-
-static void FlexDependents(SplineChar *sc,int layer) {
- struct splinecharlist *scl;
-
- sc->layers[layer].anyflexes = true;
- for ( scl = sc->dependents; scl!=NULL; scl=scl->next )
- FlexDependents(scl->sc,layer);
-}
-
-int SplineFontIsFlexible(SplineFont *sf,int layer, int flags) {
- int i;
- int max=0, val;
- char *pt;
- int blueshift;
- /* if the return value is bigger than 6 and we don't have a BlueShift */
- /* then we must set BlueShift to ret+1 before saving private dictionary */
- /* If the first point in a spline set is flexible, then we must rotate */
- /* the splineset */
-
- if ( flags&(ps_flag_nohints|ps_flag_noflex)) {
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL )
- SCUnflex(sf->glyphs[i],layer);
-return( 0 );
- }
-
- pt = PSDictHasEntry(sf->private,"BlueShift");
- blueshift = 21; /* maximum posible flex, not default */
- if ( pt!=NULL ) {
- blueshift = strtol(pt,NULL,10);
- if ( blueshift>21 ) blueshift = 21;
- } else if ( PSDictHasEntry(sf->private,"BlueValues")!=NULL )
- blueshift = 7; /* The BlueValues array may depend on BlueShift having its default value */
-
- for ( i=0; i<sf->glyphcnt; ++i )
- if ( sf->glyphs[i]!=NULL ) if ( sf->glyphs[i]!=NULL ) {
- val = _SplineCharIsFlexible(sf->glyphs[i],layer,blueshift);
- if ( val>max ) max = val;
- if ( sf->glyphs[i]->layers[layer].anyflexes )
- FlexDependents(sf->glyphs[i],layer);
- }
-return( max );
-}
-
-
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/char.c b/dviware/dvisvgm/libs/ff-woff/fontforge/char.c
deleted file mode 100644
index fdaaa17500..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/char.c
+++ /dev/null
@@ -1,72 +0,0 @@
-/* Copyright (C) 2000-2002 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include <fontforge-config.h>
-
-#include <utype.h>
-#include "ustring.h"
-
-int strmatch(const char *str1, const char *str2) {
- int ch1, ch2;
- for (;;) {
- ch1 = *str1++; ch2 = *str2++ ;
- ch1 = tolower(ch1);
- ch2 = tolower(ch2);
- if ( ch1!=ch2 || ch1=='\0' )
-return(ch1-ch2);
- }
-}
-
-int strnmatch(const char *str1, const char *str2, int n) {
- int ch1, ch2;
- for (;n-->0;) {
- ch1 = *str1++; ch2 = *str2++ ;
- ch1 = tolower(ch1);
- ch2 = tolower(ch2);
- if ( ch1!=ch2 || ch1=='\0' )
-return(ch1-ch2);
- }
-return(0);
-}
-
-char *strstrmatch(const char *longer, const char *substr) {
- int ch1, ch2;
- const char *lpt, *str1, *str2;
-
- for ( lpt=longer; *lpt!='\0'; ++lpt ) {
- str1 = lpt; str2 = substr;
- for (;;) {
- ch1 = *str1++; ch2 = *str2++ ;
- ch1 = tolower(ch1);
- ch2 = tolower(ch2);
- if ( ch2=='\0' )
-return((char *) lpt);
- if ( ch1!=ch2 )
- break;
- }
- }
-return( NULL );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/cjk.c b/dviware/dvisvgm/libs/ff-woff/fontforge/cjk.c
deleted file mode 100644
index bd029ecf62..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/cjk.c
+++ /dev/null
@@ -1,15591 +0,0 @@
-#include <chardata.h>
-
-const unichar_t unicode_from_jis208[] = {
- 0x2003, 0x3001, 0x3002, 0xff0c, 0xff0e, 0x30fb, 0xff1a, 0xff1b,
- 0xff1f, 0xff01, 0x309b, 0x309c, 0x00b4, 0xff40, 0x00a8, 0xff3e,
- 0xffe3, 0xff3f, 0x30fd, 0x30fe, 0x309d, 0x309e, 0x3003, 0x4edd,
- 0x3005, 0x3006, 0x3007, 0x30fc, 0x2015, 0x2010, 0xff0f, 0xff3c,
- 0x301c, 0x2016, 0xff5c, 0x2026, 0x2025, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xff08, 0xff09, 0x3014, 0x3015, 0xff3b, 0xff3d, 0xff5b,
- 0xff5d, 0x3008, 0x3009, 0x300a, 0x300b, 0x300c, 0x300d, 0x300e,
- 0x300f, 0x3010, 0x3011, 0xff0b, 0x2212, 0x00b1, 0x00d7, 0x00f7,
- 0xff1d, 0x2260, 0xff1c, 0xff1e, 0x2266, 0x2267, 0x221e, 0x2234,
- 0x2642, 0x2640, 0x00b0, 0x2032, 0x2033, 0x2103, 0xffe5, 0xff04,
- 0xffe0, 0xffe1, 0xff05, 0xff03, 0xff06, 0xff0a, 0xff20, 0x00a7,
- 0x2606, 0x2605, 0x25cb, 0x25cf, 0x25ce, 0x25c7, 0x25c6, 0x25a1,
- 0x25a0, 0x25b3, 0x25b2, 0x25bd, 0x25bc, 0x203b, 0x3012, 0x2192,
- 0x2190, 0x2191, 0x2193, 0x3013, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2208,
- 0x220b, 0x2286, 0x2287, 0x2282, 0x2283, 0x222a, 0x2229, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2227,
- 0x2228, 0xffe2, 0x21d2, 0x21d4, 0x2200, 0x2203, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x2220, 0x22a5, 0x2312, 0x2202, 0x2207, 0x2261, 0x2252,
- 0x226a, 0x226b, 0x221a, 0x223d, 0x221d, 0x2235, 0x222b, 0x222c,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x212b,
- 0x2030, 0x266f, 0x266d, 0x266a, 0x2020, 0x2021, 0x00b6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x25ef, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0xff10, 0xff11, 0xff12, 0xff13, 0xff14,
- 0xff15, 0xff16, 0xff17, 0xff18, 0xff19, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0xff21, 0xff22, 0xff23, 0xff24,
- 0xff25, 0xff26, 0xff27, 0xff28, 0xff29, 0xff2a, 0xff2b, 0xff2c,
- 0xff2d, 0xff2e, 0xff2f, 0xff30, 0xff31, 0xff32, 0xff33, 0xff34,
- 0xff35, 0xff36, 0xff37, 0xff38, 0xff39, 0xff3a, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0xff41, 0xff42, 0xff43, 0xff44,
- 0xff45, 0xff46, 0xff47, 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c,
- 0xff4d, 0xff4e, 0xff4f, 0xff50, 0xff51, 0xff52, 0xff53, 0xff54,
- 0xff55, 0xff56, 0xff57, 0xff58, 0xff59, 0xff5a, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046,
- 0x3047, 0x3048, 0x3049, 0x304a, 0x304b, 0x304c, 0x304d, 0x304e,
- 0x304f, 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056,
- 0x3057, 0x3058, 0x3059, 0x305a, 0x305b, 0x305c, 0x305d, 0x305e,
- 0x305f, 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066,
- 0x3067, 0x3068, 0x3069, 0x306a, 0x306b, 0x306c, 0x306d, 0x306e,
- 0x306f, 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076,
- 0x3077, 0x3078, 0x3079, 0x307a, 0x307b, 0x307c, 0x307d, 0x307e,
- 0x307f, 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086,
- 0x3087, 0x3088, 0x3089, 0x308a, 0x308b, 0x308c, 0x308d, 0x308e,
- 0x308f, 0x3090, 0x3091, 0x3092, 0x3093, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x30a1, 0x30a2, 0x30a3, 0x30a4, 0x30a5, 0x30a6, 0x30a7, 0x30a8,
- 0x30a9, 0x30aa, 0x30ab, 0x30ac, 0x30ad, 0x30ae, 0x30af, 0x30b0,
- 0x30b1, 0x30b2, 0x30b3, 0x30b4, 0x30b5, 0x30b6, 0x30b7, 0x30b8,
- 0x30b9, 0x30ba, 0x30bb, 0x30bc, 0x30bd, 0x30be, 0x30bf, 0x30c0,
- 0x30c1, 0x30c2, 0x30c3, 0x30c4, 0x30c5, 0x30c6, 0x30c7, 0x30c8,
- 0x30c9, 0x30ca, 0x30cb, 0x30cc, 0x30cd, 0x30ce, 0x30cf, 0x30d0,
- 0x30d1, 0x30d2, 0x30d3, 0x30d4, 0x30d5, 0x30d6, 0x30d7, 0x30d8,
- 0x30d9, 0x30da, 0x30db, 0x30dc, 0x30dd, 0x30de, 0x30df, 0x30e0,
- 0x30e1, 0x30e2, 0x30e3, 0x30e4, 0x30e5, 0x30e6, 0x30e7, 0x30e8,
- 0x30e9, 0x30ea, 0x30eb, 0x30ec, 0x30ed, 0x30ee, 0x30ef, 0x30f0,
- 0x30f1, 0x30f2, 0x30f3, 0x30f4, 0x30f5, 0x30f6, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0391, 0x0392,
- 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039a,
- 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0, 0x03a1, 0x03a3,
- 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03b1, 0x03b2,
- 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba,
- 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3,
- 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8, 0x03c9, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0410, 0x0411, 0x0412, 0x0413,
- 0x0414, 0x0415, 0x0401, 0x0416, 0x0417, 0x0418, 0x0419, 0x041a,
- 0x041b, 0x041c, 0x041d, 0x041e, 0x041f, 0x0420, 0x0421, 0x0422,
- 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428, 0x0429, 0x042a,
- 0x042b, 0x042c, 0x042d, 0x042e, 0x042f, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0430, 0x0431, 0x0432, 0x0433,
- 0x0434, 0x0435, 0x0451, 0x0436, 0x0437, 0x0438, 0x0439, 0x043a,
- 0x043b, 0x043c, 0x043d, 0x043e, 0x043f, 0x0440, 0x0441, 0x0442,
- 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, 0x0448, 0x0449, 0x044a,
- 0x044b, 0x044c, 0x044d, 0x044e, 0x044f, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x2500, 0x2502, 0x250c, 0x2510, 0x2518, 0x2514,
- 0x251c, 0x252c, 0x2524, 0x2534, 0x253c, 0x2501, 0x2503, 0x250f,
- 0x2513, 0x251b, 0x2517, 0x2523, 0x2533, 0x252b, 0x253b, 0x254b,
- 0x2520, 0x252f, 0x2528, 0x2537, 0x253f, 0x251d, 0x2530, 0x2525,
- 0x2538, 0x2542, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x4e9c, 0x5516, 0x5a03, 0x963f, 0x54c0, 0x611b,
- 0x6328, 0x59f6, 0x9022, 0x8475, 0x831c, 0x7a50, 0x60aa, 0x63e1,
- 0x6e25, 0x65ed, 0x8466, 0x82a6, 0x9bf5, 0x6893, 0x5727, 0x65a1,
- 0x6271, 0x5b9b, 0x59d0, 0x867b, 0x98f4, 0x7d62, 0x7dbe, 0x9b8e,
- 0x6216, 0x7c9f, 0x88b7, 0x5b89, 0x5eb5, 0x6309, 0x6697, 0x6848,
- 0x95c7, 0x978d, 0x674f, 0x4ee5, 0x4f0a, 0x4f4d, 0x4f9d, 0x5049,
- 0x56f2, 0x5937, 0x59d4, 0x5a01, 0x5c09, 0x60df, 0x610f, 0x6170,
- 0x6613, 0x6905, 0x70ba, 0x754f, 0x7570, 0x79fb, 0x7dad, 0x7def,
- 0x80c3, 0x840e, 0x8863, 0x8b02, 0x9055, 0x907a, 0x533b, 0x4e95,
- 0x4ea5, 0x57df, 0x80b2, 0x90c1, 0x78ef, 0x4e00, 0x58f1, 0x6ea2,
- 0x9038, 0x7a32, 0x8328, 0x828b, 0x9c2f, 0x5141, 0x5370, 0x54bd,
- 0x54e1, 0x56e0, 0x59fb, 0x5f15, 0x98f2, 0x6deb, 0x80e4, 0x852d,
- 0x9662, 0x9670, 0x96a0, 0x97fb, 0x540b, 0x53f3, 0x5b87, 0x70cf,
- 0x7fbd, 0x8fc2, 0x96e8, 0x536f, 0x9d5c, 0x7aba, 0x4e11, 0x7893,
- 0x81fc, 0x6e26, 0x5618, 0x5504, 0x6b1d, 0x851a, 0x9c3b, 0x59e5,
- 0x53a9, 0x6d66, 0x74dc, 0x958f, 0x5642, 0x4e91, 0x904b, 0x96f2,
- 0x834f, 0x990c, 0x53e1, 0x55b6, 0x5b30, 0x5f71, 0x6620, 0x66f3,
- 0x6804, 0x6c38, 0x6cf3, 0x6d29, 0x745b, 0x76c8, 0x7a4e, 0x9834,
- 0x82f1, 0x885b, 0x8a60, 0x92ed, 0x6db2, 0x75ab, 0x76ca, 0x99c5,
- 0x60a6, 0x8b01, 0x8d8a, 0x95b2, 0x698e, 0x53ad, 0x5186, 0x5712,
- 0x5830, 0x5944, 0x5bb4, 0x5ef6, 0x6028, 0x63a9, 0x63f4, 0x6cbf,
- 0x6f14, 0x708e, 0x7114, 0x7159, 0x71d5, 0x733f, 0x7e01, 0x8276,
- 0x82d1, 0x8597, 0x9060, 0x925b, 0x9d1b, 0x5869, 0x65bc, 0x6c5a,
- 0x7525, 0x51f9, 0x592e, 0x5965, 0x5f80, 0x5fdc, 0x62bc, 0x65fa,
- 0x6a2a, 0x6b27, 0x6bb4, 0x738b, 0x7fc1, 0x8956, 0x9d2c, 0x9d0e,
- 0x9ec4, 0x5ca1, 0x6c96, 0x837b, 0x5104, 0x5c4b, 0x61b6, 0x81c6,
- 0x6876, 0x7261, 0x4e59, 0x4ffa, 0x5378, 0x6069, 0x6e29, 0x7a4f,
- 0x97f3, 0x4e0b, 0x5316, 0x4eee, 0x4f55, 0x4f3d, 0x4fa1, 0x4f73,
- 0x52a0, 0x53ef, 0x5609, 0x590f, 0x5ac1, 0x5bb6, 0x5be1, 0x79d1,
- 0x6687, 0x679c, 0x67b6, 0x6b4c, 0x6cb3, 0x706b, 0x73c2, 0x798d,
- 0x79be, 0x7a3c, 0x7b87, 0x82b1, 0x82db, 0x8304, 0x8377, 0x83ef,
- 0x83d3, 0x8766, 0x8ab2, 0x5629, 0x8ca8, 0x8fe6, 0x904e, 0x971e,
- 0x868a, 0x4fc4, 0x5ce8, 0x6211, 0x7259, 0x753b, 0x81e5, 0x82bd,
- 0x86fe, 0x8cc0, 0x96c5, 0x9913, 0x99d5, 0x4ecb, 0x4f1a, 0x89e3,
- 0x56de, 0x584a, 0x58ca, 0x5efb, 0x5feb, 0x602a, 0x6094, 0x6062,
- 0x61d0, 0x6212, 0x62d0, 0x6539, 0x9b41, 0x6666, 0x68b0, 0x6d77,
- 0x7070, 0x754c, 0x7686, 0x7d75, 0x82a5, 0x87f9, 0x958b, 0x968e,
- 0x8c9d, 0x51f1, 0x52be, 0x5916, 0x54b3, 0x5bb3, 0x5d16, 0x6168,
- 0x6982, 0x6daf, 0x788d, 0x84cb, 0x8857, 0x8a72, 0x93a7, 0x9ab8,
- 0x6d6c, 0x99a8, 0x86d9, 0x57a3, 0x67ff, 0x86ce, 0x920e, 0x5283,
- 0x5687, 0x5404, 0x5ed3, 0x62e1, 0x64b9, 0x683c, 0x6838, 0x6bbb,
- 0x7372, 0x78ba, 0x7a6b, 0x899a, 0x89d2, 0x8d6b, 0x8f03, 0x90ed,
- 0x95a3, 0x9694, 0x9769, 0x5b66, 0x5cb3, 0x697d, 0x984d, 0x984e,
- 0x639b, 0x7b20, 0x6a2b, 0x6a7f, 0x68b6, 0x9c0d, 0x6f5f, 0x5272,
- 0x559d, 0x6070, 0x62ec, 0x6d3b, 0x6e07, 0x6ed1, 0x845b, 0x8910,
- 0x8f44, 0x4e14, 0x9c39, 0x53f6, 0x691b, 0x6a3a, 0x9784, 0x682a,
- 0x515c, 0x7ac3, 0x84b2, 0x91dc, 0x938c, 0x565b, 0x9d28, 0x6822,
- 0x8305, 0x8431, 0x7ca5, 0x5208, 0x82c5, 0x74e6, 0x4e7e, 0x4f83,
- 0x51a0, 0x5bd2, 0x520a, 0x52d8, 0x52e7, 0x5dfb, 0x559a, 0x582a,
- 0x59e6, 0x5b8c, 0x5b98, 0x5bdb, 0x5e72, 0x5e79, 0x60a3, 0x611f,
- 0x6163, 0x61be, 0x63db, 0x6562, 0x67d1, 0x6853, 0x68fa, 0x6b3e,
- 0x6b53, 0x6c57, 0x6f22, 0x6f97, 0x6f45, 0x74b0, 0x7518, 0x76e3,
- 0x770b, 0x7aff, 0x7ba1, 0x7c21, 0x7de9, 0x7f36, 0x7ff0, 0x809d,
- 0x8266, 0x839e, 0x89b3, 0x8acc, 0x8cab, 0x9084, 0x9451, 0x9593,
- 0x9591, 0x95a2, 0x9665, 0x97d3, 0x9928, 0x8218, 0x4e38, 0x542b,
- 0x5cb8, 0x5dcc, 0x73a9, 0x764c, 0x773c, 0x5ca9, 0x7feb, 0x8d0b,
- 0x96c1, 0x9811, 0x9854, 0x9858, 0x4f01, 0x4f0e, 0x5371, 0x559c,
- 0x5668, 0x57fa, 0x5947, 0x5b09, 0x5bc4, 0x5c90, 0x5e0c, 0x5e7e,
- 0x5fcc, 0x63ee, 0x673a, 0x65d7, 0x65e2, 0x671f, 0x68cb, 0x68c4,
- 0x6a5f, 0x5e30, 0x6bc5, 0x6c17, 0x6c7d, 0x757f, 0x7948, 0x5b63,
- 0x7a00, 0x7d00, 0x5fbd, 0x898f, 0x8a18, 0x8cb4, 0x8d77, 0x8ecc,
- 0x8f1d, 0x98e2, 0x9a0e, 0x9b3c, 0x4e80, 0x507d, 0x5100, 0x5993,
- 0x5b9c, 0x622f, 0x6280, 0x64ec, 0x6b3a, 0x72a0, 0x7591, 0x7947,
- 0x7fa9, 0x87fb, 0x8abc, 0x8b70, 0x63ac, 0x83ca, 0x97a0, 0x5409,
- 0x5403, 0x55ab, 0x6854, 0x6a58, 0x8a70, 0x7827, 0x6775, 0x9ecd,
- 0x5374, 0x5ba2, 0x811a, 0x8650, 0x9006, 0x4e18, 0x4e45, 0x4ec7,
- 0x4f11, 0x53ca, 0x5438, 0x5bae, 0x5f13, 0x6025, 0x6551, 0x673d,
- 0x6c42, 0x6c72, 0x6ce3, 0x7078, 0x7403, 0x7a76, 0x7aae, 0x7b08,
- 0x7d1a, 0x7cfe, 0x7d66, 0x65e7, 0x725b, 0x53bb, 0x5c45, 0x5de8,
- 0x62d2, 0x62e0, 0x6319, 0x6e20, 0x865a, 0x8a31, 0x8ddd, 0x92f8,
- 0x6f01, 0x79a6, 0x9b5a, 0x4ea8, 0x4eab, 0x4eac, 0x4f9b, 0x4fa0,
- 0x50d1, 0x5147, 0x7af6, 0x5171, 0x51f6, 0x5354, 0x5321, 0x537f,
- 0x53eb, 0x55ac, 0x5883, 0x5ce1, 0x5f37, 0x5f4a, 0x602f, 0x6050,
- 0x606d, 0x631f, 0x6559, 0x6a4b, 0x6cc1, 0x72c2, 0x72ed, 0x77ef,
- 0x80f8, 0x8105, 0x8208, 0x854e, 0x90f7, 0x93e1, 0x97ff, 0x9957,
- 0x9a5a, 0x4ef0, 0x51dd, 0x5c2d, 0x6681, 0x696d, 0x5c40, 0x66f2,
- 0x6975, 0x7389, 0x6850, 0x7c81, 0x50c5, 0x52e4, 0x5747, 0x5dfe,
- 0x9326, 0x65a4, 0x6b23, 0x6b3d, 0x7434, 0x7981, 0x79bd, 0x7b4b,
- 0x7dca, 0x82b9, 0x83cc, 0x887f, 0x895f, 0x8b39, 0x8fd1, 0x91d1,
- 0x541f, 0x9280, 0x4e5d, 0x5036, 0x53e5, 0x533a, 0x72d7, 0x7396,
- 0x77e9, 0x82e6, 0x8eaf, 0x99c6, 0x99c8, 0x99d2, 0x5177, 0x611a,
- 0x865e, 0x55b0, 0x7a7a, 0x5076, 0x5bd3, 0x9047, 0x9685, 0x4e32,
- 0x6adb, 0x91e7, 0x5c51, 0x5c48, 0x6398, 0x7a9f, 0x6c93, 0x9774,
- 0x8f61, 0x7aaa, 0x718a, 0x9688, 0x7c82, 0x6817, 0x7e70, 0x6851,
- 0x936c, 0x52f2, 0x541b, 0x85ab, 0x8a13, 0x7fa4, 0x8ecd, 0x90e1,
- 0x5366, 0x8888, 0x7941, 0x4fc2, 0x50be, 0x5211, 0x5144, 0x5553,
- 0x572d, 0x73ea, 0x578b, 0x5951, 0x5f62, 0x5f84, 0x6075, 0x6176,
- 0x6167, 0x61a9, 0x63b2, 0x643a, 0x656c, 0x666f, 0x6842, 0x6e13,
- 0x7566, 0x7a3d, 0x7cfb, 0x7d4c, 0x7d99, 0x7e4b, 0x7f6b, 0x830e,
- 0x834a, 0x86cd, 0x8a08, 0x8a63, 0x8b66, 0x8efd, 0x981a, 0x9d8f,
- 0x82b8, 0x8fce, 0x9be8, 0x5287, 0x621f, 0x6483, 0x6fc0, 0x9699,
- 0x6841, 0x5091, 0x6b20, 0x6c7a, 0x6f54, 0x7a74, 0x7d50, 0x8840,
- 0x8a23, 0x6708, 0x4ef6, 0x5039, 0x5026, 0x5065, 0x517c, 0x5238,
- 0x5263, 0x55a7, 0x570f, 0x5805, 0x5acc, 0x5efa, 0x61b2, 0x61f8,
- 0x62f3, 0x6372, 0x691c, 0x6a29, 0x727d, 0x72ac, 0x732e, 0x7814,
- 0x786f, 0x7d79, 0x770c, 0x80a9, 0x898b, 0x8b19, 0x8ce2, 0x8ed2,
- 0x9063, 0x9375, 0x967a, 0x9855, 0x9a13, 0x9e78, 0x5143, 0x539f,
- 0x53b3, 0x5e7b, 0x5f26, 0x6e1b, 0x6e90, 0x7384, 0x73fe, 0x7d43,
- 0x8237, 0x8a00, 0x8afa, 0x9650, 0x4e4e, 0x500b, 0x53e4, 0x547c,
- 0x56fa, 0x59d1, 0x5b64, 0x5df1, 0x5eab, 0x5f27, 0x6238, 0x6545,
- 0x67af, 0x6e56, 0x72d0, 0x7cca, 0x88b4, 0x80a1, 0x80e1, 0x83f0,
- 0x864e, 0x8a87, 0x8de8, 0x9237, 0x96c7, 0x9867, 0x9f13, 0x4e94,
- 0x4e92, 0x4f0d, 0x5348, 0x5449, 0x543e, 0x5a2f, 0x5f8c, 0x5fa1,
- 0x609f, 0x68a7, 0x6a8e, 0x745a, 0x7881, 0x8a9e, 0x8aa4, 0x8b77,
- 0x9190, 0x4e5e, 0x9bc9, 0x4ea4, 0x4f7c, 0x4faf, 0x5019, 0x5016,
- 0x5149, 0x516c, 0x529f, 0x52b9, 0x52fe, 0x539a, 0x53e3, 0x5411,
- 0x540e, 0x5589, 0x5751, 0x57a2, 0x597d, 0x5b54, 0x5b5d, 0x5b8f,
- 0x5de5, 0x5de7, 0x5df7, 0x5e78, 0x5e83, 0x5e9a, 0x5eb7, 0x5f18,
- 0x6052, 0x614c, 0x6297, 0x62d8, 0x63a7, 0x653b, 0x6602, 0x6643,
- 0x66f4, 0x676d, 0x6821, 0x6897, 0x69cb, 0x6c5f, 0x6d2a, 0x6d69,
- 0x6e2f, 0x6e9d, 0x7532, 0x7687, 0x786c, 0x7a3f, 0x7ce0, 0x7d05,
- 0x7d18, 0x7d5e, 0x7db1, 0x8015, 0x8003, 0x80af, 0x80b1, 0x8154,
- 0x818f, 0x822a, 0x8352, 0x884c, 0x8861, 0x8b1b, 0x8ca2, 0x8cfc,
- 0x90ca, 0x9175, 0x9271, 0x783f, 0x92fc, 0x95a4, 0x964d, 0x9805,
- 0x9999, 0x9ad8, 0x9d3b, 0x525b, 0x52ab, 0x53f7, 0x5408, 0x58d5,
- 0x62f7, 0x6fe0, 0x8c6a, 0x8f5f, 0x9eb9, 0x514b, 0x523b, 0x544a,
- 0x56fd, 0x7a40, 0x9177, 0x9d60, 0x9ed2, 0x7344, 0x6f09, 0x8170,
- 0x7511, 0x5ffd, 0x60da, 0x9aa8, 0x72db, 0x8fbc, 0x6b64, 0x9803,
- 0x4eca, 0x56f0, 0x5764, 0x58be, 0x5a5a, 0x6068, 0x61c7, 0x660f,
- 0x6606, 0x6839, 0x68b1, 0x6df7, 0x75d5, 0x7d3a, 0x826e, 0x9b42,
- 0x4e9b, 0x4f50, 0x53c9, 0x5506, 0x5d6f, 0x5de6, 0x5dee, 0x67fb,
- 0x6c99, 0x7473, 0x7802, 0x8a50, 0x9396, 0x88df, 0x5750, 0x5ea7,
- 0x632b, 0x50b5, 0x50ac, 0x518d, 0x6700, 0x54c9, 0x585e, 0x59bb,
- 0x5bb0, 0x5f69, 0x624d, 0x63a1, 0x683d, 0x6b73, 0x6e08, 0x707d,
- 0x91c7, 0x7280, 0x7815, 0x7826, 0x796d, 0x658e, 0x7d30, 0x83dc,
- 0x88c1, 0x8f09, 0x969b, 0x5264, 0x5728, 0x6750, 0x7f6a, 0x8ca1,
- 0x51b4, 0x5742, 0x962a, 0x583a, 0x698a, 0x80b4, 0x54b2, 0x5d0e,
- 0x57fc, 0x7895, 0x9dfa, 0x4f5c, 0x524a, 0x548b, 0x643e, 0x6628,
- 0x6714, 0x67f5, 0x7a84, 0x7b56, 0x7d22, 0x932f, 0x685c, 0x9bad,
- 0x7b39, 0x5319, 0x518a, 0x5237, 0x5bdf, 0x62f6, 0x64ae, 0x64e6,
- 0x672d, 0x6bba, 0x85a9, 0x96d1, 0x7690, 0x9bd6, 0x634c, 0x9306,
- 0x9bab, 0x76bf, 0x6652, 0x4e09, 0x5098, 0x53c2, 0x5c71, 0x60e8,
- 0x6492, 0x6563, 0x685f, 0x71e6, 0x73ca, 0x7523, 0x7b97, 0x7e82,
- 0x8695, 0x8b83, 0x8cdb, 0x9178, 0x9910, 0x65ac, 0x66ab, 0x6b8b,
- 0x4ed5, 0x4ed4, 0x4f3a, 0x4f7f, 0x523a, 0x53f8, 0x53f2, 0x55e3,
- 0x56db, 0x58eb, 0x59cb, 0x59c9, 0x59ff, 0x5b50, 0x5c4d, 0x5e02,
- 0x5e2b, 0x5fd7, 0x601d, 0x6307, 0x652f, 0x5b5c, 0x65af, 0x65bd,
- 0x65e8, 0x679d, 0x6b62, 0x6b7b, 0x6c0f, 0x7345, 0x7949, 0x79c1,
- 0x7cf8, 0x7d19, 0x7d2b, 0x80a2, 0x8102, 0x81f3, 0x8996, 0x8a5e,
- 0x8a69, 0x8a66, 0x8a8c, 0x8aee, 0x8cc7, 0x8cdc, 0x96cc, 0x98fc,
- 0x6b6f, 0x4e8b, 0x4f3c, 0x4f8d, 0x5150, 0x5b57, 0x5bfa, 0x6148,
- 0x6301, 0x6642, 0x6b21, 0x6ecb, 0x6cbb, 0x723e, 0x74bd, 0x75d4,
- 0x78c1, 0x793a, 0x800c, 0x8033, 0x81ea, 0x8494, 0x8f9e, 0x6c50,
- 0x9e7f, 0x5f0f, 0x8b58, 0x9d2b, 0x7afa, 0x8ef8, 0x5b8d, 0x96eb,
- 0x4e03, 0x53f1, 0x57f7, 0x5931, 0x5ac9, 0x5ba4, 0x6089, 0x6e7f,
- 0x6f06, 0x75be, 0x8cea, 0x5b9f, 0x8500, 0x7be0, 0x5072, 0x67f4,
- 0x829d, 0x5c61, 0x854a, 0x7e1e, 0x820e, 0x5199, 0x5c04, 0x6368,
- 0x8d66, 0x659c, 0x716e, 0x793e, 0x7d17, 0x8005, 0x8b1d, 0x8eca,
- 0x906e, 0x86c7, 0x90aa, 0x501f, 0x52fa, 0x5c3a, 0x6753, 0x707c,
- 0x7235, 0x914c, 0x91c8, 0x932b, 0x82e5, 0x5bc2, 0x5f31, 0x60f9,
- 0x4e3b, 0x53d6, 0x5b88, 0x624b, 0x6731, 0x6b8a, 0x72e9, 0x73e0,
- 0x7a2e, 0x816b, 0x8da3, 0x9152, 0x9996, 0x5112, 0x53d7, 0x546a,
- 0x5bff, 0x6388, 0x6a39, 0x7dac, 0x9700, 0x56da, 0x53ce, 0x5468,
- 0x5b97, 0x5c31, 0x5dde, 0x4fee, 0x6101, 0x62fe, 0x6d32, 0x79c0,
- 0x79cb, 0x7d42, 0x7e4d, 0x7fd2, 0x81ed, 0x821f, 0x8490, 0x8846,
- 0x8972, 0x8b90, 0x8e74, 0x8f2f, 0x9031, 0x914b, 0x916c, 0x96c6,
- 0x919c, 0x4ec0, 0x4f4f, 0x5145, 0x5341, 0x5f93, 0x620e, 0x67d4,
- 0x6c41, 0x6e0b, 0x7363, 0x7e26, 0x91cd, 0x9283, 0x53d4, 0x5919,
- 0x5bbf, 0x6dd1, 0x795d, 0x7e2e, 0x7c9b, 0x587e, 0x719f, 0x51fa,
- 0x8853, 0x8ff0, 0x4fca, 0x5cfb, 0x6625, 0x77ac, 0x7ae3, 0x821c,
- 0x99ff, 0x51c6, 0x5faa, 0x65ec, 0x696f, 0x6b89, 0x6df3, 0x6e96,
- 0x6f64, 0x76fe, 0x7d14, 0x5de1, 0x9075, 0x9187, 0x9806, 0x51e6,
- 0x521d, 0x6240, 0x6691, 0x66d9, 0x6e1a, 0x5eb6, 0x7dd2, 0x7f72,
- 0x66f8, 0x85af, 0x85f7, 0x8af8, 0x52a9, 0x53d9, 0x5973, 0x5e8f,
- 0x5f90, 0x6055, 0x92e4, 0x9664, 0x50b7, 0x511f, 0x52dd, 0x5320,
- 0x5347, 0x53ec, 0x54e8, 0x5546, 0x5531, 0x5617, 0x5968, 0x59be,
- 0x5a3c, 0x5bb5, 0x5c06, 0x5c0f, 0x5c11, 0x5c1a, 0x5e84, 0x5e8a,
- 0x5ee0, 0x5f70, 0x627f, 0x6284, 0x62db, 0x638c, 0x6377, 0x6607,
- 0x660c, 0x662d, 0x6676, 0x677e, 0x68a2, 0x6a1f, 0x6a35, 0x6cbc,
- 0x6d88, 0x6e09, 0x6e58, 0x713c, 0x7126, 0x7167, 0x75c7, 0x7701,
- 0x785d, 0x7901, 0x7965, 0x79f0, 0x7ae0, 0x7b11, 0x7ca7, 0x7d39,
- 0x8096, 0x83d6, 0x848b, 0x8549, 0x885d, 0x88f3, 0x8a1f, 0x8a3c,
- 0x8a54, 0x8a73, 0x8c61, 0x8cde, 0x91a4, 0x9266, 0x937e, 0x9418,
- 0x969c, 0x9798, 0x4e0a, 0x4e08, 0x4e1e, 0x4e57, 0x5197, 0x5270,
- 0x57ce, 0x5834, 0x58cc, 0x5b22, 0x5e38, 0x60c5, 0x64fe, 0x6761,
- 0x6756, 0x6d44, 0x72b6, 0x7573, 0x7a63, 0x84b8, 0x8b72, 0x91b8,
- 0x9320, 0x5631, 0x57f4, 0x98fe, 0x62ed, 0x690d, 0x6b96, 0x71ed,
- 0x7e54, 0x8077, 0x8272, 0x89e6, 0x98df, 0x8755, 0x8fb1, 0x5c3b,
- 0x4f38, 0x4fe1, 0x4fb5, 0x5507, 0x5a20, 0x5bdd, 0x5be9, 0x5fc3,
- 0x614e, 0x632f, 0x65b0, 0x664b, 0x68ee, 0x699b, 0x6d78, 0x6df1,
- 0x7533, 0x75b9, 0x771f, 0x795e, 0x79e6, 0x7d33, 0x81e3, 0x82af,
- 0x85aa, 0x89aa, 0x8a3a, 0x8eab, 0x8f9b, 0x9032, 0x91dd, 0x9707,
- 0x4eba, 0x4ec1, 0x5203, 0x5875, 0x58ec, 0x5c0b, 0x751a, 0x5c3d,
- 0x814e, 0x8a0a, 0x8fc5, 0x9663, 0x976d, 0x7b25, 0x8acf, 0x9808,
- 0x9162, 0x56f3, 0x53a8, 0x9017, 0x5439, 0x5782, 0x5e25, 0x63a8,
- 0x6c34, 0x708a, 0x7761, 0x7c8b, 0x7fe0, 0x8870, 0x9042, 0x9154,
- 0x9310, 0x9318, 0x968f, 0x745e, 0x9ac4, 0x5d07, 0x5d69, 0x6570,
- 0x67a2, 0x8da8, 0x96db, 0x636e, 0x6749, 0x6919, 0x83c5, 0x9817,
- 0x96c0, 0x88fe, 0x6f84, 0x647a, 0x5bf8, 0x4e16, 0x702c, 0x755d,
- 0x662f, 0x51c4, 0x5236, 0x52e2, 0x59d3, 0x5f81, 0x6027, 0x6210,
- 0x653f, 0x6574, 0x661f, 0x6674, 0x68f2, 0x6816, 0x6b63, 0x6e05,
- 0x7272, 0x751f, 0x76db, 0x7cbe, 0x8056, 0x58f0, 0x88fd, 0x897f,
- 0x8aa0, 0x8a93, 0x8acb, 0x901d, 0x9192, 0x9752, 0x9759, 0x6589,
- 0x7a0e, 0x8106, 0x96bb, 0x5e2d, 0x60dc, 0x621a, 0x65a5, 0x6614,
- 0x6790, 0x77f3, 0x7a4d, 0x7c4d, 0x7e3e, 0x810a, 0x8cac, 0x8d64,
- 0x8de1, 0x8e5f, 0x78a9, 0x5207, 0x62d9, 0x63a5, 0x6442, 0x6298,
- 0x8a2d, 0x7a83, 0x7bc0, 0x8aac, 0x96ea, 0x7d76, 0x820c, 0x8749,
- 0x4ed9, 0x5148, 0x5343, 0x5360, 0x5ba3, 0x5c02, 0x5c16, 0x5ddd,
- 0x6226, 0x6247, 0x64b0, 0x6813, 0x6834, 0x6cc9, 0x6d45, 0x6d17,
- 0x67d3, 0x6f5c, 0x714e, 0x717d, 0x65cb, 0x7a7f, 0x7bad, 0x7dda,
- 0x7e4a, 0x7fa8, 0x817a, 0x821b, 0x8239, 0x85a6, 0x8a6e, 0x8cce,
- 0x8df5, 0x9078, 0x9077, 0x92ad, 0x9291, 0x9583, 0x9bae, 0x524d,
- 0x5584, 0x6f38, 0x7136, 0x5168, 0x7985, 0x7e55, 0x81b3, 0x7cce,
- 0x564c, 0x5851, 0x5ca8, 0x63aa, 0x66fe, 0x66fd, 0x695a, 0x72d9,
- 0x758f, 0x758e, 0x790e, 0x7956, 0x79df, 0x7c97, 0x7d20, 0x7d44,
- 0x8607, 0x8a34, 0x963b, 0x9061, 0x9f20, 0x50e7, 0x5275, 0x53cc,
- 0x53e2, 0x5009, 0x55aa, 0x58ee, 0x594f, 0x723d, 0x5b8b, 0x5c64,
- 0x531d, 0x60e3, 0x60f3, 0x635c, 0x6383, 0x633f, 0x63bb, 0x64cd,
- 0x65e9, 0x66f9, 0x5de3, 0x69cd, 0x69fd, 0x6f15, 0x71e5, 0x4e89,
- 0x75e9, 0x76f8, 0x7a93, 0x7cdf, 0x7dcf, 0x7d9c, 0x8061, 0x8349,
- 0x8358, 0x846c, 0x84bc, 0x85fb, 0x88c5, 0x8d70, 0x9001, 0x906d,
- 0x9397, 0x971c, 0x9a12, 0x50cf, 0x5897, 0x618e, 0x81d3, 0x8535,
- 0x8d08, 0x9020, 0x4fc3, 0x5074, 0x5247, 0x5373, 0x606f, 0x6349,
- 0x675f, 0x6e2c, 0x8db3, 0x901f, 0x4fd7, 0x5c5e, 0x8cca, 0x65cf,
- 0x7d9a, 0x5352, 0x8896, 0x5176, 0x63c3, 0x5b58, 0x5b6b, 0x5c0a,
- 0x640d, 0x6751, 0x905c, 0x4ed6, 0x591a, 0x592a, 0x6c70, 0x8a51,
- 0x553e, 0x5815, 0x59a5, 0x60f0, 0x6253, 0x67c1, 0x8235, 0x6955,
- 0x9640, 0x99c4, 0x9a28, 0x4f53, 0x5806, 0x5bfe, 0x8010, 0x5cb1,
- 0x5e2f, 0x5f85, 0x6020, 0x614b, 0x6234, 0x66ff, 0x6cf0, 0x6ede,
- 0x80ce, 0x817f, 0x82d4, 0x888b, 0x8cb8, 0x9000, 0x902e, 0x968a,
- 0x9edb, 0x9bdb, 0x4ee3, 0x53f0, 0x5927, 0x7b2c, 0x918d, 0x984c,
- 0x9df9, 0x6edd, 0x7027, 0x5353, 0x5544, 0x5b85, 0x6258, 0x629e,
- 0x62d3, 0x6ca2, 0x6fef, 0x7422, 0x8a17, 0x9438, 0x6fc1, 0x8afe,
- 0x8338, 0x51e7, 0x86f8, 0x53ea, 0x53e9, 0x4f46, 0x9054, 0x8fb0,
- 0x596a, 0x8131, 0x5dfd, 0x7aea, 0x8fbf, 0x68da, 0x8c37, 0x72f8,
- 0x9c48, 0x6a3d, 0x8ab0, 0x4e39, 0x5358, 0x5606, 0x5766, 0x62c5,
- 0x63a2, 0x65e6, 0x6b4e, 0x6de1, 0x6e5b, 0x70ad, 0x77ed, 0x7aef,
- 0x7baa, 0x7dbb, 0x803d, 0x80c6, 0x86cb, 0x8a95, 0x935b, 0x56e3,
- 0x58c7, 0x5f3e, 0x65ad, 0x6696, 0x6a80, 0x6bb5, 0x7537, 0x8ac7,
- 0x5024, 0x77e5, 0x5730, 0x5f1b, 0x6065, 0x667a, 0x6c60, 0x75f4,
- 0x7a1a, 0x7f6e, 0x81f4, 0x8718, 0x9045, 0x99b3, 0x7bc9, 0x755c,
- 0x7af9, 0x7b51, 0x84c4, 0x9010, 0x79e9, 0x7a92, 0x8336, 0x5ae1,
- 0x7740, 0x4e2d, 0x4ef2, 0x5b99, 0x5fe0, 0x62bd, 0x663c, 0x67f1,
- 0x6ce8, 0x866b, 0x8877, 0x8a3b, 0x914e, 0x92f3, 0x99d0, 0x6a17,
- 0x7026, 0x732a, 0x82e7, 0x8457, 0x8caf, 0x4e01, 0x5146, 0x51cb,
- 0x558b, 0x5bf5, 0x5e16, 0x5e33, 0x5e81, 0x5f14, 0x5f35, 0x5f6b,
- 0x5fb4, 0x61f2, 0x6311, 0x66a2, 0x671d, 0x6f6e, 0x7252, 0x753a,
- 0x773a, 0x8074, 0x8139, 0x8178, 0x8776, 0x8abf, 0x8adc, 0x8d85,
- 0x8df3, 0x929a, 0x9577, 0x9802, 0x9ce5, 0x52c5, 0x6357, 0x76f4,
- 0x6715, 0x6c88, 0x73cd, 0x8cc3, 0x93ae, 0x9673, 0x6d25, 0x589c,
- 0x690e, 0x69cc, 0x8ffd, 0x939a, 0x75db, 0x901a, 0x585a, 0x6802,
- 0x63b4, 0x69fb, 0x4f43, 0x6f2c, 0x67d8, 0x8fbb, 0x8526, 0x7db4,
- 0x9354, 0x693f, 0x6f70, 0x576a, 0x58f7, 0x5b2c, 0x7d2c, 0x722a,
- 0x540a, 0x91e3, 0x9db4, 0x4ead, 0x4f4e, 0x505c, 0x5075, 0x5243,
- 0x8c9e, 0x5448, 0x5824, 0x5b9a, 0x5e1d, 0x5e95, 0x5ead, 0x5ef7,
- 0x5f1f, 0x608c, 0x62b5, 0x633a, 0x63d0, 0x68af, 0x6c40, 0x7887,
- 0x798e, 0x7a0b, 0x7de0, 0x8247, 0x8a02, 0x8ae6, 0x8e44, 0x9013,
- 0x90b8, 0x912d, 0x91d8, 0x9f0e, 0x6ce5, 0x6458, 0x64e2, 0x6575,
- 0x6ef4, 0x7684, 0x7b1b, 0x9069, 0x93d1, 0x6eba, 0x54f2, 0x5fb9,
- 0x64a4, 0x8f4d, 0x8fed, 0x9244, 0x5178, 0x586b, 0x5929, 0x5c55,
- 0x5e97, 0x6dfb, 0x7e8f, 0x751c, 0x8cbc, 0x8ee2, 0x985b, 0x70b9,
- 0x4f1d, 0x6bbf, 0x6fb1, 0x7530, 0x96fb, 0x514e, 0x5410, 0x5835,
- 0x5857, 0x59ac, 0x5c60, 0x5f92, 0x6597, 0x675c, 0x6e21, 0x767b,
- 0x83df, 0x8ced, 0x9014, 0x90fd, 0x934d, 0x7825, 0x783a, 0x52aa,
- 0x5ea6, 0x571f, 0x5974, 0x6012, 0x5012, 0x515a, 0x51ac, 0x51cd,
- 0x5200, 0x5510, 0x5854, 0x5858, 0x5957, 0x5b95, 0x5cf6, 0x5d8b,
- 0x60bc, 0x6295, 0x642d, 0x6771, 0x6843, 0x68bc, 0x68df, 0x76d7,
- 0x6dd8, 0x6e6f, 0x6d9b, 0x706f, 0x71c8, 0x5f53, 0x75d8, 0x7977,
- 0x7b49, 0x7b54, 0x7b52, 0x7cd6, 0x7d71, 0x5230, 0x8463, 0x8569,
- 0x85e4, 0x8a0e, 0x8b04, 0x8c46, 0x8e0f, 0x9003, 0x900f, 0x9419,
- 0x9676, 0x982d, 0x9a30, 0x95d8, 0x50cd, 0x52d5, 0x540c, 0x5802,
- 0x5c0e, 0x61a7, 0x649e, 0x6d1e, 0x77b3, 0x7ae5, 0x80f4, 0x8404,
- 0x9053, 0x9285, 0x5ce0, 0x9d07, 0x533f, 0x5f97, 0x5fb3, 0x6d9c,
- 0x7279, 0x7763, 0x79bf, 0x7be4, 0x6bd2, 0x72ec, 0x8aad, 0x6803,
- 0x6a61, 0x51f8, 0x7a81, 0x6934, 0x5c4a, 0x9cf6, 0x82eb, 0x5bc5,
- 0x9149, 0x701e, 0x5678, 0x5c6f, 0x60c7, 0x6566, 0x6c8c, 0x8c5a,
- 0x9041, 0x9813, 0x5451, 0x66c7, 0x920d, 0x5948, 0x90a3, 0x5185,
- 0x4e4d, 0x51ea, 0x8599, 0x8b0e, 0x7058, 0x637a, 0x934b, 0x6962,
- 0x99b4, 0x7e04, 0x7577, 0x5357, 0x6960, 0x8edf, 0x96e3, 0x6c5d,
- 0x4e8c, 0x5c3c, 0x5f10, 0x8fe9, 0x5302, 0x8cd1, 0x8089, 0x8679,
- 0x5eff, 0x65e5, 0x4e73, 0x5165, 0x5982, 0x5c3f, 0x97ee, 0x4efb,
- 0x598a, 0x5fcd, 0x8a8d, 0x6fe1, 0x79b0, 0x7962, 0x5be7, 0x8471,
- 0x732b, 0x71b1, 0x5e74, 0x5ff5, 0x637b, 0x649a, 0x71c3, 0x7c98,
- 0x4e43, 0x5efc, 0x4e4b, 0x57dc, 0x56a2, 0x60a9, 0x6fc3, 0x7d0d,
- 0x80fd, 0x8133, 0x81bf, 0x8fb2, 0x8997, 0x86a4, 0x5df4, 0x628a,
- 0x64ad, 0x8987, 0x6777, 0x6ce2, 0x6d3e, 0x7436, 0x7834, 0x5a46,
- 0x7f75, 0x82ad, 0x99ac, 0x4ff3, 0x5ec3, 0x62dd, 0x6392, 0x6557,
- 0x676f, 0x76c3, 0x724c, 0x80cc, 0x80ba, 0x8f29, 0x914d, 0x500d,
- 0x57f9, 0x5a92, 0x6885, 0x6973, 0x7164, 0x72fd, 0x8cb7, 0x58f2,
- 0x8ce0, 0x966a, 0x9019, 0x877f, 0x79e4, 0x77e7, 0x8429, 0x4f2f,
- 0x5265, 0x535a, 0x62cd, 0x67cf, 0x6cca, 0x767d, 0x7b94, 0x7c95,
- 0x8236, 0x8584, 0x8feb, 0x66dd, 0x6f20, 0x7206, 0x7e1b, 0x83ab,
- 0x99c1, 0x9ea6, 0x51fd, 0x7bb1, 0x7872, 0x7bb8, 0x8087, 0x7b48,
- 0x6ae8, 0x5e61, 0x808c, 0x7551, 0x7560, 0x516b, 0x9262, 0x6e8c,
- 0x767a, 0x9197, 0x9aea, 0x4f10, 0x7f70, 0x629c, 0x7b4f, 0x95a5,
- 0x9ce9, 0x567a, 0x5859, 0x86e4, 0x96bc, 0x4f34, 0x5224, 0x534a,
- 0x53cd, 0x53db, 0x5e06, 0x642c, 0x6591, 0x677f, 0x6c3e, 0x6c4e,
- 0x7248, 0x72af, 0x73ed, 0x7554, 0x7e41, 0x822c, 0x85e9, 0x8ca9,
- 0x7bc4, 0x91c6, 0x7169, 0x9812, 0x98ef, 0x633d, 0x6669, 0x756a,
- 0x76e4, 0x78d0, 0x8543, 0x86ee, 0x532a, 0x5351, 0x5426, 0x5983,
- 0x5e87, 0x5f7c, 0x60b2, 0x6249, 0x6279, 0x62ab, 0x6590, 0x6bd4,
- 0x6ccc, 0x75b2, 0x76ae, 0x7891, 0x79d8, 0x7dcb, 0x7f77, 0x80a5,
- 0x88ab, 0x8ab9, 0x8cbb, 0x907f, 0x975e, 0x98db, 0x6a0b, 0x7c38,
- 0x5099, 0x5c3e, 0x5fae, 0x6787, 0x6bd8, 0x7435, 0x7709, 0x7f8e,
- 0x9f3b, 0x67ca, 0x7a17, 0x5339, 0x758b, 0x9aed, 0x5f66, 0x819d,
- 0x83f1, 0x8098, 0x5f3c, 0x5fc5, 0x7562, 0x7b46, 0x903c, 0x6867,
- 0x59eb, 0x5a9b, 0x7d10, 0x767e, 0x8b2c, 0x4ff5, 0x5f6a, 0x6a19,
- 0x6c37, 0x6f02, 0x74e2, 0x7968, 0x8868, 0x8a55, 0x8c79, 0x5edf,
- 0x63cf, 0x75c5, 0x79d2, 0x82d7, 0x9328, 0x92f2, 0x849c, 0x86ed,
- 0x9c2d, 0x54c1, 0x5f6c, 0x658c, 0x6d5c, 0x7015, 0x8ca7, 0x8cd3,
- 0x983b, 0x654f, 0x74f6, 0x4e0d, 0x4ed8, 0x57e0, 0x592b, 0x5a66,
- 0x5bcc, 0x51a8, 0x5e03, 0x5e9c, 0x6016, 0x6276, 0x6577, 0x65a7,
- 0x666e, 0x6d6e, 0x7236, 0x7b26, 0x8150, 0x819a, 0x8299, 0x8b5c,
- 0x8ca0, 0x8ce6, 0x8d74, 0x961c, 0x9644, 0x4fae, 0x64ab, 0x6b66,
- 0x821e, 0x8461, 0x856a, 0x90e8, 0x5c01, 0x6953, 0x98a8, 0x847a,
- 0x8557, 0x4f0f, 0x526f, 0x5fa9, 0x5e45, 0x670d, 0x798f, 0x8179,
- 0x8907, 0x8986, 0x6df5, 0x5f17, 0x6255, 0x6cb8, 0x4ecf, 0x7269,
- 0x9b92, 0x5206, 0x543b, 0x5674, 0x58b3, 0x61a4, 0x626e, 0x711a,
- 0x596e, 0x7c89, 0x7cde, 0x7d1b, 0x96f0, 0x6587, 0x805e, 0x4e19,
- 0x4f75, 0x5175, 0x5840, 0x5e63, 0x5e73, 0x5f0a, 0x67c4, 0x4e26,
- 0x853d, 0x9589, 0x965b, 0x7c73, 0x9801, 0x50fb, 0x58c1, 0x7656,
- 0x78a7, 0x5225, 0x77a5, 0x8511, 0x7b86, 0x504f, 0x5909, 0x7247,
- 0x7bc7, 0x7de8, 0x8fba, 0x8fd4, 0x904d, 0x4fbf, 0x52c9, 0x5a29,
- 0x5f01, 0x97ad, 0x4fdd, 0x8217, 0x92ea, 0x5703, 0x6355, 0x6b69,
- 0x752b, 0x88dc, 0x8f14, 0x7a42, 0x52df, 0x5893, 0x6155, 0x620a,
- 0x66ae, 0x6bcd, 0x7c3f, 0x83e9, 0x5023, 0x4ff8, 0x5305, 0x5446,
- 0x5831, 0x5949, 0x5b9d, 0x5cf0, 0x5cef, 0x5d29, 0x5e96, 0x62b1,
- 0x6367, 0x653e, 0x65b9, 0x670b, 0x6cd5, 0x6ce1, 0x70f9, 0x7832,
- 0x7e2b, 0x80de, 0x82b3, 0x840c, 0x84ec, 0x8702, 0x8912, 0x8a2a,
- 0x8c4a, 0x90a6, 0x92d2, 0x98fd, 0x9cf3, 0x9d6c, 0x4e4f, 0x4ea1,
- 0x508d, 0x5256, 0x574a, 0x59a8, 0x5e3d, 0x5fd8, 0x5fd9, 0x623f,
- 0x66b4, 0x671b, 0x67d0, 0x68d2, 0x5192, 0x7d21, 0x80aa, 0x81a8,
- 0x8b00, 0x8c8c, 0x8cbf, 0x927e, 0x9632, 0x5420, 0x982c, 0x5317,
- 0x50d5, 0x535c, 0x58a8, 0x64b2, 0x6734, 0x7267, 0x7766, 0x7a46,
- 0x91e6, 0x52c3, 0x6ca1, 0x6b86, 0x5800, 0x5e4c, 0x5954, 0x672c,
- 0x7ffb, 0x51e1, 0x76c6, 0x6469, 0x78e8, 0x9b54, 0x9ebb, 0x57cb,
- 0x59b9, 0x6627, 0x679a, 0x6bce, 0x54e9, 0x69d9, 0x5e55, 0x819c,
- 0x6795, 0x9baa, 0x67fe, 0x9c52, 0x685d, 0x4ea6, 0x4fe3, 0x53c8,
- 0x62b9, 0x672b, 0x6cab, 0x8fc4, 0x4fad, 0x7e6d, 0x9ebf, 0x4e07,
- 0x6162, 0x6e80, 0x6f2b, 0x8513, 0x5473, 0x672a, 0x9b45, 0x5df3,
- 0x7b95, 0x5cac, 0x5bc6, 0x871c, 0x6e4a, 0x84d1, 0x7a14, 0x8108,
- 0x5999, 0x7c8d, 0x6c11, 0x7720, 0x52d9, 0x5922, 0x7121, 0x725f,
- 0x77db, 0x9727, 0x9d61, 0x690b, 0x5a7f, 0x5a18, 0x51a5, 0x540d,
- 0x547d, 0x660e, 0x76df, 0x8ff7, 0x9298, 0x9cf4, 0x59ea, 0x725d,
- 0x6ec5, 0x514d, 0x68c9, 0x7dbf, 0x7dec, 0x9762, 0x9eba, 0x6478,
- 0x6a21, 0x8302, 0x5984, 0x5b5f, 0x6bdb, 0x731b, 0x76f2, 0x7db2,
- 0x8017, 0x8499, 0x5132, 0x6728, 0x9ed9, 0x76ee, 0x6762, 0x52ff,
- 0x9905, 0x5c24, 0x623b, 0x7c7e, 0x8cb0, 0x554f, 0x60b6, 0x7d0b,
- 0x9580, 0x5301, 0x4e5f, 0x51b6, 0x591c, 0x723a, 0x8036, 0x91ce,
- 0x5f25, 0x77e2, 0x5384, 0x5f79, 0x7d04, 0x85ac, 0x8a33, 0x8e8d,
- 0x9756, 0x67f3, 0x85ae, 0x9453, 0x6109, 0x6108, 0x6cb9, 0x7652,
- 0x8aed, 0x8f38, 0x552f, 0x4f51, 0x512a, 0x52c7, 0x53cb, 0x5ba5,
- 0x5e7d, 0x60a0, 0x6182, 0x63d6, 0x6709, 0x67da, 0x6e67, 0x6d8c,
- 0x7336, 0x7337, 0x7531, 0x7950, 0x88d5, 0x8a98, 0x904a, 0x9091,
- 0x90f5, 0x96c4, 0x878d, 0x5915, 0x4e88, 0x4f59, 0x4e0e, 0x8a89,
- 0x8f3f, 0x9810, 0x50ad, 0x5e7c, 0x5996, 0x5bb9, 0x5eb8, 0x63da,
- 0x63fa, 0x64c1, 0x66dc, 0x694a, 0x69d8, 0x6d0b, 0x6eb6, 0x7194,
- 0x7528, 0x7aaf, 0x7f8a, 0x8000, 0x8449, 0x84c9, 0x8981, 0x8b21,
- 0x8e0a, 0x9065, 0x967d, 0x990a, 0x617e, 0x6291, 0x6b32, 0x6c83,
- 0x6d74, 0x7fcc, 0x7ffc, 0x6dc0, 0x7f85, 0x87ba, 0x88f8, 0x6765,
- 0x83b1, 0x983c, 0x96f7, 0x6d1b, 0x7d61, 0x843d, 0x916a, 0x4e71,
- 0x5375, 0x5d50, 0x6b04, 0x6feb, 0x85cd, 0x862d, 0x89a7, 0x5229,
- 0x540f, 0x5c65, 0x674e, 0x68a8, 0x7406, 0x7483, 0x75e2, 0x88cf,
- 0x88e1, 0x91cc, 0x96e2, 0x9678, 0x5f8b, 0x7387, 0x7acb, 0x844e,
- 0x63a0, 0x7565, 0x5289, 0x6d41, 0x6e9c, 0x7409, 0x7559, 0x786b,
- 0x7c92, 0x9686, 0x7adc, 0x9f8d, 0x4fb6, 0x616e, 0x65c5, 0x865c,
- 0x4e86, 0x4eae, 0x50da, 0x4e21, 0x51cc, 0x5bee, 0x6599, 0x6881,
- 0x6dbc, 0x731f, 0x7642, 0x77ad, 0x7a1c, 0x7ce7, 0x826f, 0x8ad2,
- 0x907c, 0x91cf, 0x9675, 0x9818, 0x529b, 0x7dd1, 0x502b, 0x5398,
- 0x6797, 0x6dcb, 0x71d0, 0x7433, 0x81e8, 0x8f2a, 0x96a3, 0x9c57,
- 0x9e9f, 0x7460, 0x5841, 0x6d99, 0x7d2f, 0x985e, 0x4ee4, 0x4f36,
- 0x4f8b, 0x51b7, 0x52b1, 0x5dba, 0x601c, 0x73b2, 0x793c, 0x82d3,
- 0x9234, 0x96b7, 0x96f6, 0x970a, 0x9e97, 0x9f62, 0x66a6, 0x6b74,
- 0x5217, 0x52a3, 0x70c8, 0x88c2, 0x5ec9, 0x604b, 0x6190, 0x6f23,
- 0x7149, 0x7c3e, 0x7df4, 0x806f, 0x84ee, 0x9023, 0x932c, 0x5442,
- 0x9b6f, 0x6ad3, 0x7089, 0x8cc2, 0x8def, 0x9732, 0x52b4, 0x5a41,
- 0x5eca, 0x5f04, 0x6717, 0x697c, 0x6994, 0x6d6a, 0x6f0f, 0x7262,
- 0x72fc, 0x7bed, 0x8001, 0x807e, 0x874b, 0x90ce, 0x516d, 0x9e93,
- 0x7984, 0x808b, 0x9332, 0x8ad6, 0x502d, 0x548c, 0x8a71, 0x6b6a,
- 0x8cc4, 0x8107, 0x60d1, 0x67a0, 0x9df2, 0x4e99, 0x4e98, 0x9c10,
- 0x8a6b, 0x85c1, 0x8568, 0x6900, 0x6e7e, 0x7897, 0x8155, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x5f0c, 0x4e10, 0x4e15, 0x4e2a, 0x4e31, 0x4e36,
- 0x4e3c, 0x4e3f, 0x4e42, 0x4e56, 0x4e58, 0x4e82, 0x4e85, 0x8c6b,
- 0x4e8a, 0x8212, 0x5f0d, 0x4e8e, 0x4e9e, 0x4e9f, 0x4ea0, 0x4ea2,
- 0x4eb0, 0x4eb3, 0x4eb6, 0x4ece, 0x4ecd, 0x4ec4, 0x4ec6, 0x4ec2,
- 0x4ed7, 0x4ede, 0x4eed, 0x4edf, 0x4ef7, 0x4f09, 0x4f5a, 0x4f30,
- 0x4f5b, 0x4f5d, 0x4f57, 0x4f47, 0x4f76, 0x4f88, 0x4f8f, 0x4f98,
- 0x4f7b, 0x4f69, 0x4f70, 0x4f91, 0x4f6f, 0x4f86, 0x4f96, 0x5118,
- 0x4fd4, 0x4fdf, 0x4fce, 0x4fd8, 0x4fdb, 0x4fd1, 0x4fda, 0x4fd0,
- 0x4fe4, 0x4fe5, 0x501a, 0x5028, 0x5014, 0x502a, 0x5025, 0x5005,
- 0x4f1c, 0x4ff6, 0x5021, 0x5029, 0x502c, 0x4ffe, 0x4fef, 0x5011,
- 0x5006, 0x5043, 0x5047, 0x6703, 0x5055, 0x5050, 0x5048, 0x505a,
- 0x5056, 0x506c, 0x5078, 0x5080, 0x509a, 0x5085, 0x50b4, 0x50b2,
- 0x50c9, 0x50ca, 0x50b3, 0x50c2, 0x50d6, 0x50de, 0x50e5, 0x50ed,
- 0x50e3, 0x50ee, 0x50f9, 0x50f5, 0x5109, 0x5101, 0x5102, 0x5116,
- 0x5115, 0x5114, 0x511a, 0x5121, 0x513a, 0x5137, 0x513c, 0x513b,
- 0x513f, 0x5140, 0x5152, 0x514c, 0x5154, 0x5162, 0x7af8, 0x5169,
- 0x516a, 0x516e, 0x5180, 0x5182, 0x56d8, 0x518c, 0x5189, 0x518f,
- 0x5191, 0x5193, 0x5195, 0x5196, 0x51a4, 0x51a6, 0x51a2, 0x51a9,
- 0x51aa, 0x51ab, 0x51b3, 0x51b1, 0x51b2, 0x51b0, 0x51b5, 0x51bd,
- 0x51c5, 0x51c9, 0x51db, 0x51e0, 0x8655, 0x51e9, 0x51ed, 0x51f0,
- 0x51f5, 0x51fe, 0x5204, 0x520b, 0x5214, 0x520e, 0x5227, 0x522a,
- 0x522e, 0x5233, 0x5239, 0x524f, 0x5244, 0x524b, 0x524c, 0x525e,
- 0x5254, 0x526a, 0x5274, 0x5269, 0x5273, 0x527f, 0x527d, 0x528d,
- 0x5294, 0x5292, 0x5271, 0x5288, 0x5291, 0x8fa8, 0x8fa7, 0x52ac,
- 0x52ad, 0x52bc, 0x52b5, 0x52c1, 0x52cd, 0x52d7, 0x52de, 0x52e3,
- 0x52e6, 0x98ed, 0x52e0, 0x52f3, 0x52f5, 0x52f8, 0x52f9, 0x5306,
- 0x5308, 0x7538, 0x530d, 0x5310, 0x530f, 0x5315, 0x531a, 0x5323,
- 0x532f, 0x5331, 0x5333, 0x5338, 0x5340, 0x5346, 0x5345, 0x4e17,
- 0x5349, 0x534d, 0x51d6, 0x535e, 0x5369, 0x536e, 0x5918, 0x537b,
- 0x5377, 0x5382, 0x5396, 0x53a0, 0x53a6, 0x53a5, 0x53ae, 0x53b0,
- 0x53b6, 0x53c3, 0x7c12, 0x96d9, 0x53df, 0x66fc, 0x71ee, 0x53ee,
- 0x53e8, 0x53ed, 0x53fa, 0x5401, 0x543d, 0x5440, 0x542c, 0x542d,
- 0x543c, 0x542e, 0x5436, 0x5429, 0x541d, 0x544e, 0x548f, 0x5475,
- 0x548e, 0x545f, 0x5471, 0x5477, 0x5470, 0x5492, 0x547b, 0x5480,
- 0x5476, 0x5484, 0x5490, 0x5486, 0x54c7, 0x54a2, 0x54b8, 0x54a5,
- 0x54ac, 0x54c4, 0x54c8, 0x54a8, 0x54ab, 0x54c2, 0x54a4, 0x54be,
- 0x54bc, 0x54d8, 0x54e5, 0x54e6, 0x550f, 0x5514, 0x54fd, 0x54ee,
- 0x54ed, 0x54fa, 0x54e2, 0x5539, 0x5540, 0x5563, 0x554c, 0x552e,
- 0x555c, 0x5545, 0x5556, 0x5557, 0x5538, 0x5533, 0x555d, 0x5599,
- 0x5580, 0x54af, 0x558a, 0x559f, 0x557b, 0x557e, 0x5598, 0x559e,
- 0x55ae, 0x557c, 0x5583, 0x55a9, 0x5587, 0x55a8, 0x55da, 0x55c5,
- 0x55df, 0x55c4, 0x55dc, 0x55e4, 0x55d4, 0x5614, 0x55f7, 0x5616,
- 0x55fe, 0x55fd, 0x561b, 0x55f9, 0x564e, 0x5650, 0x71df, 0x5634,
- 0x5636, 0x5632, 0x5638, 0x566b, 0x5664, 0x562f, 0x566c, 0x566a,
- 0x5686, 0x5680, 0x568a, 0x56a0, 0x5694, 0x568f, 0x56a5, 0x56ae,
- 0x56b6, 0x56b4, 0x56c2, 0x56bc, 0x56c1, 0x56c3, 0x56c0, 0x56c8,
- 0x56ce, 0x56d1, 0x56d3, 0x56d7, 0x56ee, 0x56f9, 0x5700, 0x56ff,
- 0x5704, 0x5709, 0x5708, 0x570b, 0x570d, 0x5713, 0x5718, 0x5716,
- 0x55c7, 0x571c, 0x5726, 0x5737, 0x5738, 0x574e, 0x573b, 0x5740,
- 0x574f, 0x5769, 0x57c0, 0x5788, 0x5761, 0x577f, 0x5789, 0x5793,
- 0x57a0, 0x57b3, 0x57a4, 0x57aa, 0x57b0, 0x57c3, 0x57c6, 0x57d4,
- 0x57d2, 0x57d3, 0x580a, 0x57d6, 0x57e3, 0x580b, 0x5819, 0x581d,
- 0x5872, 0x5821, 0x5862, 0x584b, 0x5870, 0x6bc0, 0x5852, 0x583d,
- 0x5879, 0x5885, 0x58b9, 0x589f, 0x58ab, 0x58ba, 0x58de, 0x58bb,
- 0x58b8, 0x58ae, 0x58c5, 0x58d3, 0x58d1, 0x58d7, 0x58d9, 0x58d8,
- 0x58e5, 0x58dc, 0x58e4, 0x58df, 0x58ef, 0x58fa, 0x58f9, 0x58fb,
- 0x58fc, 0x58fd, 0x5902, 0x590a, 0x5910, 0x591b, 0x68a6, 0x5925,
- 0x592c, 0x592d, 0x5932, 0x5938, 0x593e, 0x7ad2, 0x5955, 0x5950,
- 0x594e, 0x595a, 0x5958, 0x5962, 0x5960, 0x5967, 0x596c, 0x5969,
- 0x5978, 0x5981, 0x599d, 0x4f5e, 0x4fab, 0x59a3, 0x59b2, 0x59c6,
- 0x59e8, 0x59dc, 0x598d, 0x59d9, 0x59da, 0x5a25, 0x5a1f, 0x5a11,
- 0x5a1c, 0x5a09, 0x5a1a, 0x5a40, 0x5a6c, 0x5a49, 0x5a35, 0x5a36,
- 0x5a62, 0x5a6a, 0x5a9a, 0x5abc, 0x5abe, 0x5acb, 0x5ac2, 0x5abd,
- 0x5ae3, 0x5ad7, 0x5ae6, 0x5ae9, 0x5ad6, 0x5afa, 0x5afb, 0x5b0c,
- 0x5b0b, 0x5b16, 0x5b32, 0x5ad0, 0x5b2a, 0x5b36, 0x5b3e, 0x5b43,
- 0x5b45, 0x5b40, 0x5b51, 0x5b55, 0x5b5a, 0x5b5b, 0x5b65, 0x5b69,
- 0x5b70, 0x5b73, 0x5b75, 0x5b78, 0x6588, 0x5b7a, 0x5b80, 0x5b83,
- 0x5ba6, 0x5bb8, 0x5bc3, 0x5bc7, 0x5bc9, 0x5bd4, 0x5bd0, 0x5be4,
- 0x5be6, 0x5be2, 0x5bde, 0x5be5, 0x5beb, 0x5bf0, 0x5bf6, 0x5bf3,
- 0x5c05, 0x5c07, 0x5c08, 0x5c0d, 0x5c13, 0x5c20, 0x5c22, 0x5c28,
- 0x5c38, 0x5c39, 0x5c41, 0x5c46, 0x5c4e, 0x5c53, 0x5c50, 0x5c4f,
- 0x5b71, 0x5c6c, 0x5c6e, 0x4e62, 0x5c76, 0x5c79, 0x5c8c, 0x5c91,
- 0x5c94, 0x599b, 0x5cab, 0x5cbb, 0x5cb6, 0x5cbc, 0x5cb7, 0x5cc5,
- 0x5cbe, 0x5cc7, 0x5cd9, 0x5ce9, 0x5cfd, 0x5cfa, 0x5ced, 0x5d8c,
- 0x5cea, 0x5d0b, 0x5d15, 0x5d17, 0x5d5c, 0x5d1f, 0x5d1b, 0x5d11,
- 0x5d14, 0x5d22, 0x5d1a, 0x5d19, 0x5d18, 0x5d4c, 0x5d52, 0x5d4e,
- 0x5d4b, 0x5d6c, 0x5d73, 0x5d76, 0x5d87, 0x5d84, 0x5d82, 0x5da2,
- 0x5d9d, 0x5dac, 0x5dae, 0x5dbd, 0x5d90, 0x5db7, 0x5dbc, 0x5dc9,
- 0x5dcd, 0x5dd3, 0x5dd2, 0x5dd6, 0x5ddb, 0x5deb, 0x5df2, 0x5df5,
- 0x5e0b, 0x5e1a, 0x5e19, 0x5e11, 0x5e1b, 0x5e36, 0x5e37, 0x5e44,
- 0x5e43, 0x5e40, 0x5e4e, 0x5e57, 0x5e54, 0x5e5f, 0x5e62, 0x5e64,
- 0x5e47, 0x5e75, 0x5e76, 0x5e7a, 0x9ebc, 0x5e7f, 0x5ea0, 0x5ec1,
- 0x5ec2, 0x5ec8, 0x5ed0, 0x5ecf, 0x5ed6, 0x5ee3, 0x5edd, 0x5eda,
- 0x5edb, 0x5ee2, 0x5ee1, 0x5ee8, 0x5ee9, 0x5eec, 0x5ef1, 0x5ef3,
- 0x5ef0, 0x5ef4, 0x5ef8, 0x5efe, 0x5f03, 0x5f09, 0x5f5d, 0x5f5c,
- 0x5f0b, 0x5f11, 0x5f16, 0x5f29, 0x5f2d, 0x5f38, 0x5f41, 0x5f48,
- 0x5f4c, 0x5f4e, 0x5f2f, 0x5f51, 0x5f56, 0x5f57, 0x5f59, 0x5f61,
- 0x5f6d, 0x5f73, 0x5f77, 0x5f83, 0x5f82, 0x5f7f, 0x5f8a, 0x5f88,
- 0x5f91, 0x5f87, 0x5f9e, 0x5f99, 0x5f98, 0x5fa0, 0x5fa8, 0x5fad,
- 0x5fbc, 0x5fd6, 0x5ffb, 0x5fe4, 0x5ff8, 0x5ff1, 0x5fdd, 0x60b3,
- 0x5fff, 0x6021, 0x6060, 0x6019, 0x6010, 0x6029, 0x600e, 0x6031,
- 0x601b, 0x6015, 0x602b, 0x6026, 0x600f, 0x603a, 0x605a, 0x6041,
- 0x606a, 0x6077, 0x605f, 0x604a, 0x6046, 0x604d, 0x6063, 0x6043,
- 0x6064, 0x6042, 0x606c, 0x606b, 0x6059, 0x6081, 0x608d, 0x60e7,
- 0x6083, 0x609a, 0x6084, 0x609b, 0x6096, 0x6097, 0x6092, 0x60a7,
- 0x608b, 0x60e1, 0x60b8, 0x60e0, 0x60d3, 0x60b4, 0x5ff0, 0x60bd,
- 0x60c6, 0x60b5, 0x60d8, 0x614d, 0x6115, 0x6106, 0x60f6, 0x60f7,
- 0x6100, 0x60f4, 0x60fa, 0x6103, 0x6121, 0x60fb, 0x60f1, 0x610d,
- 0x610e, 0x6147, 0x613e, 0x6128, 0x6127, 0x614a, 0x613f, 0x613c,
- 0x612c, 0x6134, 0x613d, 0x6142, 0x6144, 0x6173, 0x6177, 0x6158,
- 0x6159, 0x615a, 0x616b, 0x6174, 0x616f, 0x6165, 0x6171, 0x615f,
- 0x615d, 0x6153, 0x6175, 0x6199, 0x6196, 0x6187, 0x61ac, 0x6194,
- 0x619a, 0x618a, 0x6191, 0x61ab, 0x61ae, 0x61cc, 0x61ca, 0x61c9,
- 0x61f7, 0x61c8, 0x61c3, 0x61c6, 0x61ba, 0x61cb, 0x7f79, 0x61cd,
- 0x61e6, 0x61e3, 0x61f6, 0x61fa, 0x61f4, 0x61ff, 0x61fd, 0x61fc,
- 0x61fe, 0x6200, 0x6208, 0x6209, 0x620d, 0x620c, 0x6214, 0x621b,
- 0x621e, 0x6221, 0x622a, 0x622e, 0x6230, 0x6232, 0x6233, 0x6241,
- 0x624e, 0x625e, 0x6263, 0x625b, 0x6260, 0x6268, 0x627c, 0x6282,
- 0x6289, 0x627e, 0x6292, 0x6293, 0x6296, 0x62d4, 0x6283, 0x6294,
- 0x62d7, 0x62d1, 0x62bb, 0x62cf, 0x62ff, 0x62c6, 0x64d4, 0x62c8,
- 0x62dc, 0x62cc, 0x62ca, 0x62c2, 0x62c7, 0x629b, 0x62c9, 0x630c,
- 0x62ee, 0x62f1, 0x6327, 0x6302, 0x6308, 0x62ef, 0x62f5, 0x6350,
- 0x633e, 0x634d, 0x641c, 0x634f, 0x6396, 0x638e, 0x6380, 0x63ab,
- 0x6376, 0x63a3, 0x638f, 0x6389, 0x639f, 0x63b5, 0x636b, 0x6369,
- 0x63be, 0x63e9, 0x63c0, 0x63c6, 0x63e3, 0x63c9, 0x63d2, 0x63f6,
- 0x63c4, 0x6416, 0x6434, 0x6406, 0x6413, 0x6426, 0x6436, 0x651d,
- 0x6417, 0x6428, 0x640f, 0x6467, 0x646f, 0x6476, 0x644e, 0x652a,
- 0x6495, 0x6493, 0x64a5, 0x64a9, 0x6488, 0x64bc, 0x64da, 0x64d2,
- 0x64c5, 0x64c7, 0x64bb, 0x64d8, 0x64c2, 0x64f1, 0x64e7, 0x8209,
- 0x64e0, 0x64e1, 0x62ac, 0x64e3, 0x64ef, 0x652c, 0x64f6, 0x64f4,
- 0x64f2, 0x64fa, 0x6500, 0x64fd, 0x6518, 0x651c, 0x6505, 0x6524,
- 0x6523, 0x652b, 0x6534, 0x6535, 0x6537, 0x6536, 0x6538, 0x754b,
- 0x6548, 0x6556, 0x6555, 0x654d, 0x6558, 0x655e, 0x655d, 0x6572,
- 0x6578, 0x6582, 0x6583, 0x8b8a, 0x659b, 0x659f, 0x65ab, 0x65b7,
- 0x65c3, 0x65c6, 0x65c1, 0x65c4, 0x65cc, 0x65d2, 0x65db, 0x65d9,
- 0x65e0, 0x65e1, 0x65f1, 0x6772, 0x660a, 0x6603, 0x65fb, 0x6773,
- 0x6635, 0x6636, 0x6634, 0x661c, 0x664f, 0x6644, 0x6649, 0x6641,
- 0x665e, 0x665d, 0x6664, 0x6667, 0x6668, 0x665f, 0x6662, 0x6670,
- 0x6683, 0x6688, 0x668e, 0x6689, 0x6684, 0x6698, 0x669d, 0x66c1,
- 0x66b9, 0x66c9, 0x66be, 0x66bc, 0x66c4, 0x66b8, 0x66d6, 0x66da,
- 0x66e0, 0x663f, 0x66e6, 0x66e9, 0x66f0, 0x66f5, 0x66f7, 0x670f,
- 0x6716, 0x671e, 0x6726, 0x6727, 0x9738, 0x672e, 0x673f, 0x6736,
- 0x6741, 0x6738, 0x6737, 0x6746, 0x675e, 0x6760, 0x6759, 0x6763,
- 0x6764, 0x6789, 0x6770, 0x67a9, 0x677c, 0x676a, 0x678c, 0x678b,
- 0x67a6, 0x67a1, 0x6785, 0x67b7, 0x67ef, 0x67b4, 0x67ec, 0x67b3,
- 0x67e9, 0x67b8, 0x67e4, 0x67de, 0x67dd, 0x67e2, 0x67ee, 0x67b9,
- 0x67ce, 0x67c6, 0x67e7, 0x6a9c, 0x681e, 0x6846, 0x6829, 0x6840,
- 0x684d, 0x6832, 0x684e, 0x68b3, 0x682b, 0x6859, 0x6863, 0x6877,
- 0x687f, 0x689f, 0x688f, 0x68ad, 0x6894, 0x689d, 0x689b, 0x6883,
- 0x6aae, 0x68b9, 0x6874, 0x68b5, 0x68a0, 0x68ba, 0x690f, 0x688d,
- 0x687e, 0x6901, 0x68ca, 0x6908, 0x68d8, 0x6922, 0x6926, 0x68e1,
- 0x690c, 0x68cd, 0x68d4, 0x68e7, 0x68d5, 0x6936, 0x6912, 0x6904,
- 0x68d7, 0x68e3, 0x6925, 0x68f9, 0x68e0, 0x68ef, 0x6928, 0x692a,
- 0x691a, 0x6923, 0x6921, 0x68c6, 0x6979, 0x6977, 0x695c, 0x6978,
- 0x696b, 0x6954, 0x697e, 0x696e, 0x6939, 0x6974, 0x693d, 0x6959,
- 0x6930, 0x6961, 0x695e, 0x695d, 0x6981, 0x696a, 0x69b2, 0x69ae,
- 0x69d0, 0x69bf, 0x69c1, 0x69d3, 0x69be, 0x69ce, 0x5be8, 0x69ca,
- 0x69dd, 0x69bb, 0x69c3, 0x69a7, 0x6a2e, 0x6991, 0x69a0, 0x699c,
- 0x6995, 0x69b4, 0x69de, 0x69e8, 0x6a02, 0x6a1b, 0x69ff, 0x6b0a,
- 0x69f9, 0x69f2, 0x69e7, 0x6a05, 0x69b1, 0x6a1e, 0x69ed, 0x6a14,
- 0x69eb, 0x6a0a, 0x6a12, 0x6ac1, 0x6a23, 0x6a13, 0x6a44, 0x6a0c,
- 0x6a72, 0x6a36, 0x6a78, 0x6a47, 0x6a62, 0x6a59, 0x6a66, 0x6a48,
- 0x6a38, 0x6a22, 0x6a90, 0x6a8d, 0x6aa0, 0x6a84, 0x6aa2, 0x6aa3,
- 0x6a97, 0x8617, 0x6abb, 0x6ac3, 0x6ac2, 0x6ab8, 0x6ab3, 0x6aac,
- 0x6ade, 0x6ad1, 0x6adf, 0x6aaa, 0x6ada, 0x6aea, 0x6afb, 0x6b05,
- 0x8616, 0x6afa, 0x6b12, 0x6b16, 0x9b31, 0x6b1f, 0x6b38, 0x6b37,
- 0x76dc, 0x6b39, 0x98ee, 0x6b47, 0x6b43, 0x6b49, 0x6b50, 0x6b59,
- 0x6b54, 0x6b5b, 0x6b5f, 0x6b61, 0x6b78, 0x6b79, 0x6b7f, 0x6b80,
- 0x6b84, 0x6b83, 0x6b8d, 0x6b98, 0x6b95, 0x6b9e, 0x6ba4, 0x6baa,
- 0x6bab, 0x6baf, 0x6bb2, 0x6bb1, 0x6bb3, 0x6bb7, 0x6bbc, 0x6bc6,
- 0x6bcb, 0x6bd3, 0x6bdf, 0x6bec, 0x6beb, 0x6bf3, 0x6bef, 0x9ebe,
- 0x6c08, 0x6c13, 0x6c14, 0x6c1b, 0x6c24, 0x6c23, 0x6c5e, 0x6c55,
- 0x6c62, 0x6c6a, 0x6c82, 0x6c8d, 0x6c9a, 0x6c81, 0x6c9b, 0x6c7e,
- 0x6c68, 0x6c73, 0x6c92, 0x6c90, 0x6cc4, 0x6cf1, 0x6cd3, 0x6cbd,
- 0x6cd7, 0x6cc5, 0x6cdd, 0x6cae, 0x6cb1, 0x6cbe, 0x6cba, 0x6cdb,
- 0x6cef, 0x6cd9, 0x6cea, 0x6d1f, 0x884d, 0x6d36, 0x6d2b, 0x6d3d,
- 0x6d38, 0x6d19, 0x6d35, 0x6d33, 0x6d12, 0x6d0c, 0x6d63, 0x6d93,
- 0x6d64, 0x6d5a, 0x6d79, 0x6d59, 0x6d8e, 0x6d95, 0x6fe4, 0x6d85,
- 0x6df9, 0x6e15, 0x6e0a, 0x6db5, 0x6dc7, 0x6de6, 0x6db8, 0x6dc6,
- 0x6dec, 0x6dde, 0x6dcc, 0x6de8, 0x6dd2, 0x6dc5, 0x6dfa, 0x6dd9,
- 0x6de4, 0x6dd5, 0x6dea, 0x6dee, 0x6e2d, 0x6e6e, 0x6e2e, 0x6e19,
- 0x6e72, 0x6e5f, 0x6e3e, 0x6e23, 0x6e6b, 0x6e2b, 0x6e76, 0x6e4d,
- 0x6e1f, 0x6e43, 0x6e3a, 0x6e4e, 0x6e24, 0x6eff, 0x6e1d, 0x6e38,
- 0x6e82, 0x6eaa, 0x6e98, 0x6ec9, 0x6eb7, 0x6ed3, 0x6ebd, 0x6eaf,
- 0x6ec4, 0x6eb2, 0x6ed4, 0x6ed5, 0x6e8f, 0x6ea5, 0x6ec2, 0x6e9f,
- 0x6f41, 0x6f11, 0x704c, 0x6eec, 0x6ef8, 0x6efe, 0x6f3f, 0x6ef2,
- 0x6f31, 0x6eef, 0x6f32, 0x6ecc, 0x6f3e, 0x6f13, 0x6ef7, 0x6f86,
- 0x6f7a, 0x6f78, 0x6f81, 0x6f80, 0x6f6f, 0x6f5b, 0x6ff3, 0x6f6d,
- 0x6f82, 0x6f7c, 0x6f58, 0x6f8e, 0x6f91, 0x6fc2, 0x6f66, 0x6fb3,
- 0x6fa3, 0x6fa1, 0x6fa4, 0x6fb9, 0x6fc6, 0x6faa, 0x6fdf, 0x6fd5,
- 0x6fec, 0x6fd4, 0x6fd8, 0x6ff1, 0x6fee, 0x6fdb, 0x7009, 0x700b,
- 0x6ffa, 0x7011, 0x7001, 0x700f, 0x6ffe, 0x701b, 0x701a, 0x6f74,
- 0x701d, 0x7018, 0x701f, 0x7030, 0x703e, 0x7032, 0x7051, 0x7063,
- 0x7099, 0x7092, 0x70af, 0x70f1, 0x70ac, 0x70b8, 0x70b3, 0x70ae,
- 0x70df, 0x70cb, 0x70dd, 0x70d9, 0x7109, 0x70fd, 0x711c, 0x7119,
- 0x7165, 0x7155, 0x7188, 0x7166, 0x7162, 0x714c, 0x7156, 0x716c,
- 0x718f, 0x71fb, 0x7184, 0x7195, 0x71a8, 0x71ac, 0x71d7, 0x71b9,
- 0x71be, 0x71d2, 0x71c9, 0x71d4, 0x71ce, 0x71e0, 0x71ec, 0x71e7,
- 0x71f5, 0x71fc, 0x71f9, 0x71ff, 0x720d, 0x7210, 0x721b, 0x7228,
- 0x722d, 0x722c, 0x7230, 0x7232, 0x723b, 0x723c, 0x723f, 0x7240,
- 0x7246, 0x724b, 0x7258, 0x7274, 0x727e, 0x7282, 0x7281, 0x7287,
- 0x7292, 0x7296, 0x72a2, 0x72a7, 0x72b9, 0x72b2, 0x72c3, 0x72c6,
- 0x72c4, 0x72ce, 0x72d2, 0x72e2, 0x72e0, 0x72e1, 0x72f9, 0x72f7,
- 0x500f, 0x7317, 0x730a, 0x731c, 0x7316, 0x731d, 0x7334, 0x732f,
- 0x7329, 0x7325, 0x733e, 0x734e, 0x734f, 0x9ed8, 0x7357, 0x736a,
- 0x7368, 0x7370, 0x7378, 0x7375, 0x737b, 0x737a, 0x73c8, 0x73b3,
- 0x73ce, 0x73bb, 0x73c0, 0x73e5, 0x73ee, 0x73de, 0x74a2, 0x7405,
- 0x746f, 0x7425, 0x73f8, 0x7432, 0x743a, 0x7455, 0x743f, 0x745f,
- 0x7459, 0x7441, 0x745c, 0x7469, 0x7470, 0x7463, 0x746a, 0x7476,
- 0x747e, 0x748b, 0x749e, 0x74a7, 0x74ca, 0x74cf, 0x74d4, 0x73f1,
- 0x74e0, 0x74e3, 0x74e7, 0x74e9, 0x74ee, 0x74f2, 0x74f0, 0x74f1,
- 0x74f8, 0x74f7, 0x7504, 0x7503, 0x7505, 0x750c, 0x750e, 0x750d,
- 0x7515, 0x7513, 0x751e, 0x7526, 0x752c, 0x753c, 0x7544, 0x754d,
- 0x754a, 0x7549, 0x755b, 0x7546, 0x755a, 0x7569, 0x7564, 0x7567,
- 0x756b, 0x756d, 0x7578, 0x7576, 0x7586, 0x7587, 0x7574, 0x758a,
- 0x7589, 0x7582, 0x7594, 0x759a, 0x759d, 0x75a5, 0x75a3, 0x75c2,
- 0x75b3, 0x75c3, 0x75b5, 0x75bd, 0x75b8, 0x75bc, 0x75b1, 0x75cd,
- 0x75ca, 0x75d2, 0x75d9, 0x75e3, 0x75de, 0x75fe, 0x75ff, 0x75fc,
- 0x7601, 0x75f0, 0x75fa, 0x75f2, 0x75f3, 0x760b, 0x760d, 0x7609,
- 0x761f, 0x7627, 0x7620, 0x7621, 0x7622, 0x7624, 0x7634, 0x7630,
- 0x763b, 0x7647, 0x7648, 0x7646, 0x765c, 0x7658, 0x7661, 0x7662,
- 0x7668, 0x7669, 0x766a, 0x7667, 0x766c, 0x7670, 0x7672, 0x7676,
- 0x7678, 0x767c, 0x7680, 0x7683, 0x7688, 0x768b, 0x768e, 0x7696,
- 0x7693, 0x7699, 0x769a, 0x76b0, 0x76b4, 0x76b8, 0x76b9, 0x76ba,
- 0x76c2, 0x76cd, 0x76d6, 0x76d2, 0x76de, 0x76e1, 0x76e5, 0x76e7,
- 0x76ea, 0x862f, 0x76fb, 0x7708, 0x7707, 0x7704, 0x7729, 0x7724,
- 0x771e, 0x7725, 0x7726, 0x771b, 0x7737, 0x7738, 0x7747, 0x775a,
- 0x7768, 0x776b, 0x775b, 0x7765, 0x777f, 0x777e, 0x7779, 0x778e,
- 0x778b, 0x7791, 0x77a0, 0x779e, 0x77b0, 0x77b6, 0x77b9, 0x77bf,
- 0x77bc, 0x77bd, 0x77bb, 0x77c7, 0x77cd, 0x77d7, 0x77da, 0x77dc,
- 0x77e3, 0x77ee, 0x77fc, 0x780c, 0x7812, 0x7926, 0x7820, 0x792a,
- 0x7845, 0x788e, 0x7874, 0x7886, 0x787c, 0x789a, 0x788c, 0x78a3,
- 0x78b5, 0x78aa, 0x78af, 0x78d1, 0x78c6, 0x78cb, 0x78d4, 0x78be,
- 0x78bc, 0x78c5, 0x78ca, 0x78ec, 0x78e7, 0x78da, 0x78fd, 0x78f4,
- 0x7907, 0x7912, 0x7911, 0x7919, 0x792c, 0x792b, 0x7940, 0x7960,
- 0x7957, 0x795f, 0x795a, 0x7955, 0x7953, 0x797a, 0x797f, 0x798a,
- 0x799d, 0x79a7, 0x9f4b, 0x79aa, 0x79ae, 0x79b3, 0x79b9, 0x79ba,
- 0x79c9, 0x79d5, 0x79e7, 0x79ec, 0x79e1, 0x79e3, 0x7a08, 0x7a0d,
- 0x7a18, 0x7a19, 0x7a20, 0x7a1f, 0x7980, 0x7a31, 0x7a3b, 0x7a3e,
- 0x7a37, 0x7a43, 0x7a57, 0x7a49, 0x7a61, 0x7a62, 0x7a69, 0x9f9d,
- 0x7a70, 0x7a79, 0x7a7d, 0x7a88, 0x7a97, 0x7a95, 0x7a98, 0x7a96,
- 0x7aa9, 0x7ac8, 0x7ab0, 0x7ab6, 0x7ac5, 0x7ac4, 0x7abf, 0x9083,
- 0x7ac7, 0x7aca, 0x7acd, 0x7acf, 0x7ad5, 0x7ad3, 0x7ad9, 0x7ada,
- 0x7add, 0x7ae1, 0x7ae2, 0x7ae6, 0x7aed, 0x7af0, 0x7b02, 0x7b0f,
- 0x7b0a, 0x7b06, 0x7b33, 0x7b18, 0x7b19, 0x7b1e, 0x7b35, 0x7b28,
- 0x7b36, 0x7b50, 0x7b7a, 0x7b04, 0x7b4d, 0x7b0b, 0x7b4c, 0x7b45,
- 0x7b75, 0x7b65, 0x7b74, 0x7b67, 0x7b70, 0x7b71, 0x7b6c, 0x7b6e,
- 0x7b9d, 0x7b98, 0x7b9f, 0x7b8d, 0x7b9c, 0x7b9a, 0x7b8b, 0x7b92,
- 0x7b8f, 0x7b5d, 0x7b99, 0x7bcb, 0x7bc1, 0x7bcc, 0x7bcf, 0x7bb4,
- 0x7bc6, 0x7bdd, 0x7be9, 0x7c11, 0x7c14, 0x7be6, 0x7be5, 0x7c60,
- 0x7c00, 0x7c07, 0x7c13, 0x7bf3, 0x7bf7, 0x7c17, 0x7c0d, 0x7bf6,
- 0x7c23, 0x7c27, 0x7c2a, 0x7c1f, 0x7c37, 0x7c2b, 0x7c3d, 0x7c4c,
- 0x7c43, 0x7c54, 0x7c4f, 0x7c40, 0x7c50, 0x7c58, 0x7c5f, 0x7c64,
- 0x7c56, 0x7c65, 0x7c6c, 0x7c75, 0x7c83, 0x7c90, 0x7ca4, 0x7cad,
- 0x7ca2, 0x7cab, 0x7ca1, 0x7ca8, 0x7cb3, 0x7cb2, 0x7cb1, 0x7cae,
- 0x7cb9, 0x7cbd, 0x7cc0, 0x7cc5, 0x7cc2, 0x7cd8, 0x7cd2, 0x7cdc,
- 0x7ce2, 0x9b3b, 0x7cef, 0x7cf2, 0x7cf4, 0x7cf6, 0x7cfa, 0x7d06,
- 0x7d02, 0x7d1c, 0x7d15, 0x7d0a, 0x7d45, 0x7d4b, 0x7d2e, 0x7d32,
- 0x7d3f, 0x7d35, 0x7d46, 0x7d73, 0x7d56, 0x7d4e, 0x7d72, 0x7d68,
- 0x7d6e, 0x7d4f, 0x7d63, 0x7d93, 0x7d89, 0x7d5b, 0x7d8f, 0x7d7d,
- 0x7d9b, 0x7dba, 0x7dae, 0x7da3, 0x7db5, 0x7dc7, 0x7dbd, 0x7dab,
- 0x7e3d, 0x7da2, 0x7daf, 0x7ddc, 0x7db8, 0x7d9f, 0x7db0, 0x7dd8,
- 0x7ddd, 0x7de4, 0x7dde, 0x7dfb, 0x7df2, 0x7de1, 0x7e05, 0x7e0a,
- 0x7e23, 0x7e21, 0x7e12, 0x7e31, 0x7e1f, 0x7e09, 0x7e0b, 0x7e22,
- 0x7e46, 0x7e66, 0x7e3b, 0x7e35, 0x7e39, 0x7e43, 0x7e37, 0x7e32,
- 0x7e3a, 0x7e67, 0x7e5d, 0x7e56, 0x7e5e, 0x7e59, 0x7e5a, 0x7e79,
- 0x7e6a, 0x7e69, 0x7e7c, 0x7e7b, 0x7e83, 0x7dd5, 0x7e7d, 0x8fae,
- 0x7e7f, 0x7e88, 0x7e89, 0x7e8c, 0x7e92, 0x7e90, 0x7e93, 0x7e94,
- 0x7e96, 0x7e8e, 0x7e9b, 0x7e9c, 0x7f38, 0x7f3a, 0x7f45, 0x7f4c,
- 0x7f4d, 0x7f4e, 0x7f50, 0x7f51, 0x7f55, 0x7f54, 0x7f58, 0x7f5f,
- 0x7f60, 0x7f68, 0x7f69, 0x7f67, 0x7f78, 0x7f82, 0x7f86, 0x7f83,
- 0x7f88, 0x7f87, 0x7f8c, 0x7f94, 0x7f9e, 0x7f9d, 0x7f9a, 0x7fa3,
- 0x7faf, 0x7fb2, 0x7fb9, 0x7fae, 0x7fb6, 0x7fb8, 0x8b71, 0x7fc5,
- 0x7fc6, 0x7fca, 0x7fd5, 0x7fd4, 0x7fe1, 0x7fe6, 0x7fe9, 0x7ff3,
- 0x7ff9, 0x98dc, 0x8006, 0x8004, 0x800b, 0x8012, 0x8018, 0x8019,
- 0x801c, 0x8021, 0x8028, 0x803f, 0x803b, 0x804a, 0x8046, 0x8052,
- 0x8058, 0x805a, 0x805f, 0x8062, 0x8068, 0x8073, 0x8072, 0x8070,
- 0x8076, 0x8079, 0x807d, 0x807f, 0x8084, 0x8086, 0x8085, 0x809b,
- 0x8093, 0x809a, 0x80ad, 0x5190, 0x80ac, 0x80db, 0x80e5, 0x80d9,
- 0x80dd, 0x80c4, 0x80da, 0x80d6, 0x8109, 0x80ef, 0x80f1, 0x811b,
- 0x8129, 0x8123, 0x812f, 0x814b, 0x968b, 0x8146, 0x813e, 0x8153,
- 0x8151, 0x80fc, 0x8171, 0x816e, 0x8165, 0x8166, 0x8174, 0x8183,
- 0x8188, 0x818a, 0x8180, 0x8182, 0x81a0, 0x8195, 0x81a4, 0x81a3,
- 0x815f, 0x8193, 0x81a9, 0x81b0, 0x81b5, 0x81be, 0x81b8, 0x81bd,
- 0x81c0, 0x81c2, 0x81ba, 0x81c9, 0x81cd, 0x81d1, 0x81d9, 0x81d8,
- 0x81c8, 0x81da, 0x81df, 0x81e0, 0x81e7, 0x81fa, 0x81fb, 0x81fe,
- 0x8201, 0x8202, 0x8205, 0x8207, 0x820a, 0x820d, 0x8210, 0x8216,
- 0x8229, 0x822b, 0x8238, 0x8233, 0x8240, 0x8259, 0x8258, 0x825d,
- 0x825a, 0x825f, 0x8264, 0x8262, 0x8268, 0x826a, 0x826b, 0x822e,
- 0x8271, 0x8277, 0x8278, 0x827e, 0x828d, 0x8292, 0x82ab, 0x829f,
- 0x82bb, 0x82ac, 0x82e1, 0x82e3, 0x82df, 0x82d2, 0x82f4, 0x82f3,
- 0x82fa, 0x8393, 0x8303, 0x82fb, 0x82f9, 0x82de, 0x8306, 0x82dc,
- 0x8309, 0x82d9, 0x8335, 0x8334, 0x8316, 0x8332, 0x8331, 0x8340,
- 0x8339, 0x8350, 0x8345, 0x832f, 0x832b, 0x8317, 0x8318, 0x8385,
- 0x839a, 0x83aa, 0x839f, 0x83a2, 0x8396, 0x8323, 0x838e, 0x8387,
- 0x838a, 0x837c, 0x83b5, 0x8373, 0x8375, 0x83a0, 0x8389, 0x83a8,
- 0x83f4, 0x8413, 0x83eb, 0x83ce, 0x83fd, 0x8403, 0x83d8, 0x840b,
- 0x83c1, 0x83f7, 0x8407, 0x83e0, 0x83f2, 0x840d, 0x8422, 0x8420,
- 0x83bd, 0x8438, 0x8506, 0x83fb, 0x846d, 0x842a, 0x843c, 0x855a,
- 0x8484, 0x8477, 0x846b, 0x84ad, 0x846e, 0x8482, 0x8469, 0x8446,
- 0x842c, 0x846f, 0x8479, 0x8435, 0x84ca, 0x8462, 0x84b9, 0x84bf,
- 0x849f, 0x84d9, 0x84cd, 0x84bb, 0x84da, 0x84d0, 0x84c1, 0x84c6,
- 0x84d6, 0x84a1, 0x8521, 0x84ff, 0x84f4, 0x8517, 0x8518, 0x852c,
- 0x851f, 0x8515, 0x8514, 0x84fc, 0x8540, 0x8563, 0x8558, 0x8548,
- 0x8541, 0x8602, 0x854b, 0x8555, 0x8580, 0x85a4, 0x8588, 0x8591,
- 0x858a, 0x85a8, 0x856d, 0x8594, 0x859b, 0x85ea, 0x8587, 0x859c,
- 0x8577, 0x857e, 0x8590, 0x85c9, 0x85ba, 0x85cf, 0x85b9, 0x85d0,
- 0x85d5, 0x85dd, 0x85e5, 0x85dc, 0x85f9, 0x860a, 0x8613, 0x860b,
- 0x85fe, 0x85fa, 0x8606, 0x8622, 0x861a, 0x8630, 0x863f, 0x864d,
- 0x4e55, 0x8654, 0x865f, 0x8667, 0x8671, 0x8693, 0x86a3, 0x86a9,
- 0x86aa, 0x868b, 0x868c, 0x86b6, 0x86af, 0x86c4, 0x86c6, 0x86b0,
- 0x86c9, 0x8823, 0x86ab, 0x86d4, 0x86de, 0x86e9, 0x86ec, 0x86df,
- 0x86db, 0x86ef, 0x8712, 0x8706, 0x8708, 0x8700, 0x8703, 0x86fb,
- 0x8711, 0x8709, 0x870d, 0x86f9, 0x870a, 0x8734, 0x873f, 0x8737,
- 0x873b, 0x8725, 0x8729, 0x871a, 0x8760, 0x875f, 0x8778, 0x874c,
- 0x874e, 0x8774, 0x8757, 0x8768, 0x876e, 0x8759, 0x8753, 0x8763,
- 0x876a, 0x8805, 0x87a2, 0x879f, 0x8782, 0x87af, 0x87cb, 0x87bd,
- 0x87c0, 0x87d0, 0x96d6, 0x87ab, 0x87c4, 0x87b3, 0x87c7, 0x87c6,
- 0x87bb, 0x87ef, 0x87f2, 0x87e0, 0x880f, 0x880d, 0x87fe, 0x87f6,
- 0x87f7, 0x880e, 0x87d2, 0x8811, 0x8816, 0x8815, 0x8822, 0x8821,
- 0x8831, 0x8836, 0x8839, 0x8827, 0x883b, 0x8844, 0x8842, 0x8852,
- 0x8859, 0x885e, 0x8862, 0x886b, 0x8881, 0x887e, 0x889e, 0x8875,
- 0x887d, 0x88b5, 0x8872, 0x8882, 0x8897, 0x8892, 0x88ae, 0x8899,
- 0x88a2, 0x888d, 0x88a4, 0x88b0, 0x88bf, 0x88b1, 0x88c3, 0x88c4,
- 0x88d4, 0x88d8, 0x88d9, 0x88dd, 0x88f9, 0x8902, 0x88fc, 0x88f4,
- 0x88e8, 0x88f2, 0x8904, 0x890c, 0x890a, 0x8913, 0x8943, 0x891e,
- 0x8925, 0x892a, 0x892b, 0x8941, 0x8944, 0x893b, 0x8936, 0x8938,
- 0x894c, 0x891d, 0x8960, 0x895e, 0x8966, 0x8964, 0x896d, 0x896a,
- 0x896f, 0x8974, 0x8977, 0x897e, 0x8983, 0x8988, 0x898a, 0x8993,
- 0x8998, 0x89a1, 0x89a9, 0x89a6, 0x89ac, 0x89af, 0x89b2, 0x89ba,
- 0x89bd, 0x89bf, 0x89c0, 0x89da, 0x89dc, 0x89dd, 0x89e7, 0x89f4,
- 0x89f8, 0x8a03, 0x8a16, 0x8a10, 0x8a0c, 0x8a1b, 0x8a1d, 0x8a25,
- 0x8a36, 0x8a41, 0x8a5b, 0x8a52, 0x8a46, 0x8a48, 0x8a7c, 0x8a6d,
- 0x8a6c, 0x8a62, 0x8a85, 0x8a82, 0x8a84, 0x8aa8, 0x8aa1, 0x8a91,
- 0x8aa5, 0x8aa6, 0x8a9a, 0x8aa3, 0x8ac4, 0x8acd, 0x8ac2, 0x8ada,
- 0x8aeb, 0x8af3, 0x8ae7, 0x8ae4, 0x8af1, 0x8b14, 0x8ae0, 0x8ae2,
- 0x8af7, 0x8ade, 0x8adb, 0x8b0c, 0x8b07, 0x8b1a, 0x8ae1, 0x8b16,
- 0x8b10, 0x8b17, 0x8b20, 0x8b33, 0x97ab, 0x8b26, 0x8b2b, 0x8b3e,
- 0x8b28, 0x8b41, 0x8b4c, 0x8b4f, 0x8b4e, 0x8b49, 0x8b56, 0x8b5b,
- 0x8b5a, 0x8b6b, 0x8b5f, 0x8b6c, 0x8b6f, 0x8b74, 0x8b7d, 0x8b80,
- 0x8b8c, 0x8b8e, 0x8b92, 0x8b93, 0x8b96, 0x8b99, 0x8b9a, 0x8c3a,
- 0x8c41, 0x8c3f, 0x8c48, 0x8c4c, 0x8c4e, 0x8c50, 0x8c55, 0x8c62,
- 0x8c6c, 0x8c78, 0x8c7a, 0x8c82, 0x8c89, 0x8c85, 0x8c8a, 0x8c8d,
- 0x8c8e, 0x8c94, 0x8c7c, 0x8c98, 0x621d, 0x8cad, 0x8caa, 0x8cbd,
- 0x8cb2, 0x8cb3, 0x8cae, 0x8cb6, 0x8cc8, 0x8cc1, 0x8ce4, 0x8ce3,
- 0x8cda, 0x8cfd, 0x8cfa, 0x8cfb, 0x8d04, 0x8d05, 0x8d0a, 0x8d07,
- 0x8d0f, 0x8d0d, 0x8d10, 0x9f4e, 0x8d13, 0x8ccd, 0x8d14, 0x8d16,
- 0x8d67, 0x8d6d, 0x8d71, 0x8d73, 0x8d81, 0x8d99, 0x8dc2, 0x8dbe,
- 0x8dba, 0x8dcf, 0x8dda, 0x8dd6, 0x8dcc, 0x8ddb, 0x8dcb, 0x8dea,
- 0x8deb, 0x8ddf, 0x8de3, 0x8dfc, 0x8e08, 0x8e09, 0x8dff, 0x8e1d,
- 0x8e1e, 0x8e10, 0x8e1f, 0x8e42, 0x8e35, 0x8e30, 0x8e34, 0x8e4a,
- 0x8e47, 0x8e49, 0x8e4c, 0x8e50, 0x8e48, 0x8e59, 0x8e64, 0x8e60,
- 0x8e2a, 0x8e63, 0x8e55, 0x8e76, 0x8e72, 0x8e7c, 0x8e81, 0x8e87,
- 0x8e85, 0x8e84, 0x8e8b, 0x8e8a, 0x8e93, 0x8e91, 0x8e94, 0x8e99,
- 0x8eaa, 0x8ea1, 0x8eac, 0x8eb0, 0x8ec6, 0x8eb1, 0x8ebe, 0x8ec5,
- 0x8ec8, 0x8ecb, 0x8edb, 0x8ee3, 0x8efc, 0x8efb, 0x8eeb, 0x8efe,
- 0x8f0a, 0x8f05, 0x8f15, 0x8f12, 0x8f19, 0x8f13, 0x8f1c, 0x8f1f,
- 0x8f1b, 0x8f0c, 0x8f26, 0x8f33, 0x8f3b, 0x8f39, 0x8f45, 0x8f42,
- 0x8f3e, 0x8f4c, 0x8f49, 0x8f46, 0x8f4e, 0x8f57, 0x8f5c, 0x8f62,
- 0x8f63, 0x8f64, 0x8f9c, 0x8f9f, 0x8fa3, 0x8fad, 0x8faf, 0x8fb7,
- 0x8fda, 0x8fe5, 0x8fe2, 0x8fea, 0x8fef, 0x9087, 0x8ff4, 0x9005,
- 0x8ff9, 0x8ffa, 0x9011, 0x9015, 0x9021, 0x900d, 0x901e, 0x9016,
- 0x900b, 0x9027, 0x9036, 0x9035, 0x9039, 0x8ff8, 0x904f, 0x9050,
- 0x9051, 0x9052, 0x900e, 0x9049, 0x903e, 0x9056, 0x9058, 0x905e,
- 0x9068, 0x906f, 0x9076, 0x96a8, 0x9072, 0x9082, 0x907d, 0x9081,
- 0x9080, 0x908a, 0x9089, 0x908f, 0x90a8, 0x90af, 0x90b1, 0x90b5,
- 0x90e2, 0x90e4, 0x6248, 0x90db, 0x9102, 0x9112, 0x9119, 0x9132,
- 0x9130, 0x914a, 0x9156, 0x9158, 0x9163, 0x9165, 0x9169, 0x9173,
- 0x9172, 0x918b, 0x9189, 0x9182, 0x91a2, 0x91ab, 0x91af, 0x91aa,
- 0x91b5, 0x91b4, 0x91ba, 0x91c0, 0x91c1, 0x91c9, 0x91cb, 0x91d0,
- 0x91d6, 0x91df, 0x91e1, 0x91db, 0x91fc, 0x91f5, 0x91f6, 0x921e,
- 0x91ff, 0x9214, 0x922c, 0x9215, 0x9211, 0x925e, 0x9257, 0x9245,
- 0x9249, 0x9264, 0x9248, 0x9295, 0x923f, 0x924b, 0x9250, 0x929c,
- 0x9296, 0x9293, 0x929b, 0x925a, 0x92cf, 0x92b9, 0x92b7, 0x92e9,
- 0x930f, 0x92fa, 0x9344, 0x932e, 0x9319, 0x9322, 0x931a, 0x9323,
- 0x933a, 0x9335, 0x933b, 0x935c, 0x9360, 0x937c, 0x936e, 0x9356,
- 0x93b0, 0x93ac, 0x93ad, 0x9394, 0x93b9, 0x93d6, 0x93d7, 0x93e8,
- 0x93e5, 0x93d8, 0x93c3, 0x93dd, 0x93d0, 0x93c8, 0x93e4, 0x941a,
- 0x9414, 0x9413, 0x9403, 0x9407, 0x9410, 0x9436, 0x942b, 0x9435,
- 0x9421, 0x943a, 0x9441, 0x9452, 0x9444, 0x945b, 0x9460, 0x9462,
- 0x945e, 0x946a, 0x9229, 0x9470, 0x9475, 0x9477, 0x947d, 0x945a,
- 0x947c, 0x947e, 0x9481, 0x947f, 0x9582, 0x9587, 0x958a, 0x9594,
- 0x9596, 0x9598, 0x9599, 0x95a0, 0x95a8, 0x95a7, 0x95ad, 0x95bc,
- 0x95bb, 0x95b9, 0x95be, 0x95ca, 0x6ff6, 0x95c3, 0x95cd, 0x95cc,
- 0x95d5, 0x95d4, 0x95d6, 0x95dc, 0x95e1, 0x95e5, 0x95e2, 0x9621,
- 0x9628, 0x962e, 0x962f, 0x9642, 0x964c, 0x964f, 0x964b, 0x9677,
- 0x965c, 0x965e, 0x965d, 0x965f, 0x9666, 0x9672, 0x966c, 0x968d,
- 0x9698, 0x9695, 0x9697, 0x96aa, 0x96a7, 0x96b1, 0x96b2, 0x96b0,
- 0x96b4, 0x96b6, 0x96b8, 0x96b9, 0x96ce, 0x96cb, 0x96c9, 0x96cd,
- 0x894d, 0x96dc, 0x970d, 0x96d5, 0x96f9, 0x9704, 0x9706, 0x9708,
- 0x9713, 0x970e, 0x9711, 0x970f, 0x9716, 0x9719, 0x9724, 0x972a,
- 0x9730, 0x9739, 0x973d, 0x973e, 0x9744, 0x9746, 0x9748, 0x9742,
- 0x9749, 0x975c, 0x9760, 0x9764, 0x9766, 0x9768, 0x52d2, 0x976b,
- 0x9771, 0x9779, 0x9785, 0x977c, 0x9781, 0x977a, 0x9786, 0x978b,
- 0x978f, 0x9790, 0x979c, 0x97a8, 0x97a6, 0x97a3, 0x97b3, 0x97b4,
- 0x97c3, 0x97c6, 0x97c8, 0x97cb, 0x97dc, 0x97ed, 0x9f4f, 0x97f2,
- 0x7adf, 0x97f6, 0x97f5, 0x980f, 0x980c, 0x9838, 0x9824, 0x9821,
- 0x9837, 0x983d, 0x9846, 0x984f, 0x984b, 0x986b, 0x986f, 0x9870,
- 0x9871, 0x9874, 0x9873, 0x98aa, 0x98af, 0x98b1, 0x98b6, 0x98c4,
- 0x98c3, 0x98c6, 0x98e9, 0x98eb, 0x9903, 0x9909, 0x9912, 0x9914,
- 0x9918, 0x9921, 0x991d, 0x991e, 0x9924, 0x9920, 0x992c, 0x992e,
- 0x993d, 0x993e, 0x9942, 0x9949, 0x9945, 0x9950, 0x994b, 0x9951,
- 0x9952, 0x994c, 0x9955, 0x9997, 0x9998, 0x99a5, 0x99ad, 0x99ae,
- 0x99bc, 0x99df, 0x99db, 0x99dd, 0x99d8, 0x99d1, 0x99ed, 0x99ee,
- 0x99f1, 0x99f2, 0x99fb, 0x99f8, 0x9a01, 0x9a0f, 0x9a05, 0x99e2,
- 0x9a19, 0x9a2b, 0x9a37, 0x9a45, 0x9a42, 0x9a40, 0x9a43, 0x9a3e,
- 0x9a55, 0x9a4d, 0x9a5b, 0x9a57, 0x9a5f, 0x9a62, 0x9a65, 0x9a64,
- 0x9a69, 0x9a6b, 0x9a6a, 0x9aad, 0x9ab0, 0x9abc, 0x9ac0, 0x9acf,
- 0x9ad1, 0x9ad3, 0x9ad4, 0x9ade, 0x9adf, 0x9ae2, 0x9ae3, 0x9ae6,
- 0x9aef, 0x9aeb, 0x9aee, 0x9af4, 0x9af1, 0x9af7, 0x9afb, 0x9b06,
- 0x9b18, 0x9b1a, 0x9b1f, 0x9b22, 0x9b23, 0x9b25, 0x9b27, 0x9b28,
- 0x9b29, 0x9b2a, 0x9b2e, 0x9b2f, 0x9b32, 0x9b44, 0x9b43, 0x9b4f,
- 0x9b4d, 0x9b4e, 0x9b51, 0x9b58, 0x9b74, 0x9b93, 0x9b83, 0x9b91,
- 0x9b96, 0x9b97, 0x9b9f, 0x9ba0, 0x9ba8, 0x9bb4, 0x9bc0, 0x9bca,
- 0x9bb9, 0x9bc6, 0x9bcf, 0x9bd1, 0x9bd2, 0x9be3, 0x9be2, 0x9be4,
- 0x9bd4, 0x9be1, 0x9c3a, 0x9bf2, 0x9bf1, 0x9bf0, 0x9c15, 0x9c14,
- 0x9c09, 0x9c13, 0x9c0c, 0x9c06, 0x9c08, 0x9c12, 0x9c0a, 0x9c04,
- 0x9c2e, 0x9c1b, 0x9c25, 0x9c24, 0x9c21, 0x9c30, 0x9c47, 0x9c32,
- 0x9c46, 0x9c3e, 0x9c5a, 0x9c60, 0x9c67, 0x9c76, 0x9c78, 0x9ce7,
- 0x9cec, 0x9cf0, 0x9d09, 0x9d08, 0x9ceb, 0x9d03, 0x9d06, 0x9d2a,
- 0x9d26, 0x9daf, 0x9d23, 0x9d1f, 0x9d44, 0x9d15, 0x9d12, 0x9d41,
- 0x9d3f, 0x9d3e, 0x9d46, 0x9d48, 0x9d5d, 0x9d5e, 0x9d64, 0x9d51,
- 0x9d50, 0x9d59, 0x9d72, 0x9d89, 0x9d87, 0x9dab, 0x9d6f, 0x9d7a,
- 0x9d9a, 0x9da4, 0x9da9, 0x9db2, 0x9dc4, 0x9dc1, 0x9dbb, 0x9db8,
- 0x9dba, 0x9dc6, 0x9dcf, 0x9dc2, 0x9dd9, 0x9dd3, 0x9df8, 0x9de6,
- 0x9ded, 0x9def, 0x9dfd, 0x9e1a, 0x9e1b, 0x9e1e, 0x9e75, 0x9e79,
- 0x9e7d, 0x9e81, 0x9e88, 0x9e8b, 0x9e8c, 0x9e92, 0x9e95, 0x9e91,
- 0x9e9d, 0x9ea5, 0x9ea9, 0x9eb8, 0x9eaa, 0x9ead, 0x9761, 0x9ecc,
- 0x9ece, 0x9ecf, 0x9ed0, 0x9ed4, 0x9edc, 0x9ede, 0x9edd, 0x9ee0,
- 0x9ee5, 0x9ee8, 0x9eef, 0x9ef4, 0x9ef6, 0x9ef7, 0x9ef9, 0x9efb,
- 0x9efc, 0x9efd, 0x9f07, 0x9f08, 0x76b7, 0x9f15, 0x9f21, 0x9f2c,
- 0x9f3e, 0x9f4a, 0x9f52, 0x9f54, 0x9f63, 0x9f5f, 0x9f60, 0x9f61,
- 0x9f66, 0x9f67, 0x9f6c, 0x9f6a, 0x9f77, 0x9f72, 0x9f76, 0x9f95,
- 0x9f9c, 0x9fa0, 0x582f, 0x69c7, 0x9059, 0x7464, 0x51dc, 0x7199,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x9fa5, 0x1c2a, 0xbfffdb88, 0x4204f04f,
- 0x804ef70, 0x0000, 0x2288, 0x804f240, 0x42130a14, 0x40015360, 0xbfffdba8, 0x804bcc9
-};
-
-const unichar_t unicode_from_jis212[] = {
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x02d8, 0x02c7, 0x00b8, 0x02d9,
- 0x02dd, 0x00af, 0x02db, 0x02da, 0x007e, 0x0384, 0x0385, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00a1,
- 0x00a6, 0x00bf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x00ba, 0x00aa, 0x00a9, 0x00ae, 0x2122, 0x00a4, 0x2116, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0386, 0x0388,
- 0x0389, 0x038a, 0x03aa, 0x0000, 0x038c, 0x0000, 0x038e, 0x03ab,
- 0x0000, 0x038f, 0x0000, 0x0000, 0x0000, 0x0000, 0x03ac, 0x03ad,
- 0x03ae, 0x03af, 0x03ca, 0x0390, 0x03cc, 0x03c2, 0x03cd, 0x03cb,
- 0x03b0, 0x03ce, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0402, 0x0403, 0x0404,
- 0x0405, 0x0406, 0x0407, 0x0408, 0x0409, 0x040a, 0x040b, 0x040c,
- 0x040e, 0x040f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0452, 0x0453, 0x0454,
- 0x0455, 0x0456, 0x0457, 0x0458, 0x0459, 0x045a, 0x045b, 0x045c,
- 0x045e, 0x045f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x00c6, 0x0110, 0x0000, 0x0126, 0x0000, 0x0132, 0x0000, 0x0141,
- 0x013f, 0x0000, 0x014a, 0x00d8, 0x0152, 0x0000, 0x0166, 0x00de,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x00e6, 0x0111, 0x00f0, 0x0127, 0x0131, 0x0133, 0x0138, 0x0142,
- 0x0140, 0x0149, 0x014b, 0x00f8, 0x0153, 0x00df, 0x0167, 0x00fe,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00c1, 0x00c0,
- 0x00c4, 0x00c2, 0x0102, 0x01cd, 0x0100, 0x0104, 0x00c5, 0x00c3,
- 0x0106, 0x0108, 0x010c, 0x00c7, 0x010a, 0x010e, 0x00c9, 0x00c8,
- 0x00cb, 0x00ca, 0x011a, 0x0116, 0x0112, 0x0118, 0x0000, 0x011c,
- 0x011e, 0x0122, 0x0120, 0x0124, 0x00cd, 0x00cc, 0x00cf, 0x00ce,
- 0x01cf, 0x0130, 0x012a, 0x012e, 0x0128, 0x0134, 0x0136, 0x0139,
- 0x013d, 0x013b, 0x0143, 0x0147, 0x0145, 0x00d1, 0x00d3, 0x00d2,
- 0x00d6, 0x00d4, 0x01d1, 0x0150, 0x014c, 0x00d5, 0x0154, 0x0158,
- 0x0156, 0x015a, 0x015c, 0x0160, 0x015e, 0x0164, 0x0162, 0x00da,
- 0x00d9, 0x00dc, 0x00db, 0x016c, 0x01d3, 0x0170, 0x016a, 0x0172,
- 0x016e, 0x0168, 0x01d7, 0x01db, 0x01d9, 0x01d5, 0x0174, 0x00dd,
- 0x0178, 0x0176, 0x0179, 0x017d, 0x017b, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x00e1, 0x00e0, 0x00e4, 0x00e2,
- 0x0103, 0x01ce, 0x0101, 0x0105, 0x00e5, 0x00e3, 0x0107, 0x0109,
- 0x010d, 0x00e7, 0x010b, 0x010f, 0x00e9, 0x00e8, 0x00eb, 0x00ea,
- 0x011b, 0x0117, 0x0113, 0x0119, 0x01f5, 0x011d, 0x011f, 0x0000,
- 0x0121, 0x0125, 0x00ed, 0x00ec, 0x00ef, 0x00ee, 0x01d0, 0x0000,
- 0x012b, 0x012f, 0x0129, 0x0135, 0x0137, 0x013a, 0x013e, 0x013c,
- 0x0144, 0x0148, 0x0146, 0x00f1, 0x00f3, 0x00f2, 0x00f6, 0x00f4,
- 0x01d2, 0x0151, 0x014d, 0x00f5, 0x0155, 0x0159, 0x0157, 0x015b,
- 0x015d, 0x0161, 0x015f, 0x0165, 0x0163, 0x00fa, 0x00f9, 0x00fc,
- 0x00fb, 0x016d, 0x01d4, 0x0171, 0x016b, 0x0173, 0x016f, 0x0169,
- 0x01d8, 0x01dc, 0x01da, 0x01d6, 0x0175, 0x00fd, 0x00ff, 0x0177,
- 0x017a, 0x017e, 0x017c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x4e02, 0x4e04, 0x4e05, 0x4e0c, 0x4e12, 0x4e1f,
- 0x4e23, 0x4e24, 0x4e28, 0x4e2b, 0x4e2e, 0x4e2f, 0x4e30, 0x4e35,
- 0x4e40, 0x4e41, 0x4e44, 0x4e47, 0x4e51, 0x4e5a, 0x4e5c, 0x4e63,
- 0x4e68, 0x4e69, 0x4e74, 0x4e75, 0x4e79, 0x4e7f, 0x4e8d, 0x4e96,
- 0x4e97, 0x4e9d, 0x4eaf, 0x4eb9, 0x4ec3, 0x4ed0, 0x4eda, 0x4edb,
- 0x4ee0, 0x4ee1, 0x4ee2, 0x4ee8, 0x4eef, 0x4ef1, 0x4ef3, 0x4ef5,
- 0x4efd, 0x4efe, 0x4eff, 0x4f00, 0x4f02, 0x4f03, 0x4f08, 0x4f0b,
- 0x4f0c, 0x4f12, 0x4f15, 0x4f16, 0x4f17, 0x4f19, 0x4f2e, 0x4f31,
- 0x4f60, 0x4f33, 0x4f35, 0x4f37, 0x4f39, 0x4f3b, 0x4f3e, 0x4f40,
- 0x4f42, 0x4f48, 0x4f49, 0x4f4b, 0x4f4c, 0x4f52, 0x4f54, 0x4f56,
- 0x4f58, 0x4f5f, 0x4f63, 0x4f6a, 0x4f6c, 0x4f6e, 0x4f71, 0x4f77,
- 0x4f78, 0x4f79, 0x4f7a, 0x4f7d, 0x4f7e, 0x4f81, 0x4f82, 0x4f84,
- 0x4f85, 0x4f89, 0x4f8a, 0x4f8c, 0x4f8e, 0x4f90, 0x4f92, 0x4f93,
- 0x4f94, 0x4f97, 0x4f99, 0x4f9a, 0x4f9e, 0x4f9f, 0x4fb2, 0x4fb7,
- 0x4fb9, 0x4fbb, 0x4fbc, 0x4fbd, 0x4fbe, 0x4fc0, 0x4fc1, 0x4fc5,
- 0x4fc6, 0x4fc8, 0x4fc9, 0x4fcb, 0x4fcc, 0x4fcd, 0x4fcf, 0x4fd2,
- 0x4fdc, 0x4fe0, 0x4fe2, 0x4ff0, 0x4ff2, 0x4ffc, 0x4ffd, 0x4fff,
- 0x5000, 0x5001, 0x5004, 0x5007, 0x500a, 0x500c, 0x500e, 0x5010,
- 0x5013, 0x5017, 0x5018, 0x501b, 0x501c, 0x501d, 0x501e, 0x5022,
- 0x5027, 0x502e, 0x5030, 0x5032, 0x5033, 0x5035, 0x5040, 0x5041,
- 0x5042, 0x5045, 0x5046, 0x504a, 0x504c, 0x504e, 0x5051, 0x5052,
- 0x5053, 0x5057, 0x5059, 0x505f, 0x5060, 0x5062, 0x5063, 0x5066,
- 0x5067, 0x506a, 0x506d, 0x5070, 0x5071, 0x503b, 0x5081, 0x5083,
- 0x5084, 0x5086, 0x508a, 0x508e, 0x508f, 0x5090, 0x5092, 0x5093,
- 0x5094, 0x5096, 0x509b, 0x509c, 0x509e, 0x509f, 0x50a0, 0x50a1,
- 0x50a2, 0x50aa, 0x50af, 0x50b0, 0x50b9, 0x50ba, 0x50bd, 0x50c0,
- 0x50c3, 0x50c4, 0x50c7, 0x50cc, 0x50ce, 0x50d0, 0x50d3, 0x50d4,
- 0x50d8, 0x50dc, 0x50dd, 0x50df, 0x50e2, 0x50e4, 0x50e6, 0x50e8,
- 0x50e9, 0x50ef, 0x50f1, 0x50f6, 0x50fa, 0x50fe, 0x5103, 0x5106,
- 0x5107, 0x5108, 0x510b, 0x510c, 0x510d, 0x510e, 0x50f2, 0x5110,
- 0x5117, 0x5119, 0x511b, 0x511c, 0x511d, 0x511e, 0x5123, 0x5127,
- 0x5128, 0x512c, 0x512d, 0x512f, 0x5131, 0x5133, 0x5134, 0x5135,
- 0x5138, 0x5139, 0x5142, 0x514a, 0x514f, 0x5153, 0x5155, 0x5157,
- 0x5158, 0x515f, 0x5164, 0x5166, 0x517e, 0x5183, 0x5184, 0x518b,
- 0x518e, 0x5198, 0x519d, 0x51a1, 0x51a3, 0x51ad, 0x51b8, 0x51ba,
- 0x51bc, 0x51be, 0x51bf, 0x51c2, 0x51c8, 0x51cf, 0x51d1, 0x51d2,
- 0x51d3, 0x51d5, 0x51d8, 0x51de, 0x51e2, 0x51e5, 0x51ee, 0x51f2,
- 0x51f3, 0x51f4, 0x51f7, 0x5201, 0x5202, 0x5205, 0x5212, 0x5213,
- 0x5215, 0x5216, 0x5218, 0x5222, 0x5228, 0x5231, 0x5232, 0x5235,
- 0x523c, 0x5245, 0x5249, 0x5255, 0x5257, 0x5258, 0x525a, 0x525c,
- 0x525f, 0x5260, 0x5261, 0x5266, 0x526e, 0x5277, 0x5278, 0x5279,
- 0x5280, 0x5282, 0x5285, 0x528a, 0x528c, 0x5293, 0x5295, 0x5296,
- 0x5297, 0x5298, 0x529a, 0x529c, 0x52a4, 0x52a5, 0x52a6, 0x52a7,
- 0x52af, 0x52b0, 0x52b6, 0x52b7, 0x52b8, 0x52ba, 0x52bb, 0x52bd,
- 0x52c0, 0x52c4, 0x52c6, 0x52c8, 0x52cc, 0x52cf, 0x52d1, 0x52d4,
- 0x52d6, 0x52db, 0x52dc, 0x52e1, 0x52e5, 0x52e8, 0x52e9, 0x52ea,
- 0x52ec, 0x52f0, 0x52f1, 0x52f4, 0x52f6, 0x52f7, 0x5300, 0x5303,
- 0x530a, 0x530b, 0x530c, 0x5311, 0x5313, 0x5318, 0x531b, 0x531c,
- 0x531e, 0x531f, 0x5325, 0x5327, 0x5328, 0x5329, 0x532b, 0x532c,
- 0x532d, 0x5330, 0x5332, 0x5335, 0x533c, 0x533d, 0x533e, 0x5342,
- 0x534c, 0x534b, 0x5359, 0x535b, 0x5361, 0x5363, 0x5365, 0x536c,
- 0x536d, 0x5372, 0x5379, 0x537e, 0x5383, 0x5387, 0x5388, 0x538e,
- 0x5393, 0x5394, 0x5399, 0x539d, 0x53a1, 0x53a4, 0x53aa, 0x53ab,
- 0x53af, 0x53b2, 0x53b4, 0x53b5, 0x53b7, 0x53b8, 0x53ba, 0x53bd,
- 0x53c0, 0x53c5, 0x53cf, 0x53d2, 0x53d3, 0x53d5, 0x53da, 0x53dd,
- 0x53de, 0x53e0, 0x53e6, 0x53e7, 0x53f5, 0x5402, 0x5413, 0x541a,
- 0x5421, 0x5427, 0x5428, 0x542a, 0x542f, 0x5431, 0x5434, 0x5435,
- 0x5443, 0x5444, 0x5447, 0x544d, 0x544f, 0x545e, 0x5462, 0x5464,
- 0x5466, 0x5467, 0x5469, 0x546b, 0x546d, 0x546e, 0x5474, 0x547f,
- 0x5481, 0x5483, 0x5485, 0x5488, 0x5489, 0x548d, 0x5491, 0x5495,
- 0x5496, 0x549c, 0x549f, 0x54a1, 0x54a6, 0x54a7, 0x54a9, 0x54aa,
- 0x54ad, 0x54ae, 0x54b1, 0x54b7, 0x54b9, 0x54ba, 0x54bb, 0x54bf,
- 0x54c6, 0x54ca, 0x54cd, 0x54ce, 0x54e0, 0x54ea, 0x54ec, 0x54ef,
- 0x54f6, 0x54fc, 0x54fe, 0x54ff, 0x5500, 0x5501, 0x5505, 0x5508,
- 0x5509, 0x550c, 0x550d, 0x550e, 0x5515, 0x552a, 0x552b, 0x5532,
- 0x5535, 0x5536, 0x553b, 0x553c, 0x553d, 0x5541, 0x5547, 0x5549,
- 0x554a, 0x554d, 0x5550, 0x5551, 0x5558, 0x555a, 0x555b, 0x555e,
- 0x5560, 0x5561, 0x5564, 0x5566, 0x557f, 0x5581, 0x5582, 0x5586,
- 0x5588, 0x558e, 0x558f, 0x5591, 0x5592, 0x5593, 0x5594, 0x5597,
- 0x55a3, 0x55a4, 0x55ad, 0x55b2, 0x55bf, 0x55c1, 0x55c3, 0x55c6,
- 0x55c9, 0x55cb, 0x55cc, 0x55ce, 0x55d1, 0x55d2, 0x55d3, 0x55d7,
- 0x55d8, 0x55db, 0x55de, 0x55e2, 0x55e9, 0x55f6, 0x55ff, 0x5605,
- 0x5608, 0x560a, 0x560d, 0x560e, 0x560f, 0x5610, 0x5611, 0x5612,
- 0x5619, 0x562c, 0x5630, 0x5633, 0x5635, 0x5637, 0x5639, 0x563b,
- 0x563c, 0x563d, 0x563f, 0x5640, 0x5641, 0x5643, 0x5644, 0x5646,
- 0x5649, 0x564b, 0x564d, 0x564f, 0x5654, 0x565e, 0x5660, 0x5661,
- 0x5662, 0x5663, 0x5666, 0x5669, 0x566d, 0x566f, 0x5671, 0x5672,
- 0x5675, 0x5684, 0x5685, 0x5688, 0x568b, 0x568c, 0x5695, 0x5699,
- 0x569a, 0x569d, 0x569e, 0x569f, 0x56a6, 0x56a7, 0x56a8, 0x56a9,
- 0x56ab, 0x56ac, 0x56ad, 0x56b1, 0x56b3, 0x56b7, 0x56be, 0x56c5,
- 0x56c9, 0x56ca, 0x56cb, 0x56cf, 0x56d0, 0x56cc, 0x56cd, 0x56d9,
- 0x56dc, 0x56dd, 0x56df, 0x56e1, 0x56e4, 0x56e5, 0x56e6, 0x56e7,
- 0x56e8, 0x56f1, 0x56eb, 0x56ed, 0x56f6, 0x56f7, 0x5701, 0x5702,
- 0x5707, 0x570a, 0x570c, 0x5711, 0x5715, 0x571a, 0x571b, 0x571d,
- 0x5720, 0x5722, 0x5723, 0x5724, 0x5725, 0x5729, 0x572a, 0x572c,
- 0x572e, 0x572f, 0x5733, 0x5734, 0x573d, 0x573e, 0x573f, 0x5745,
- 0x5746, 0x574c, 0x574d, 0x5752, 0x5762, 0x5765, 0x5767, 0x5768,
- 0x576b, 0x576d, 0x576e, 0x576f, 0x5770, 0x5771, 0x5773, 0x5774,
- 0x5775, 0x5777, 0x5779, 0x577a, 0x577b, 0x577c, 0x577e, 0x5781,
- 0x5783, 0x578c, 0x5794, 0x5797, 0x5799, 0x579a, 0x579c, 0x579d,
- 0x579e, 0x579f, 0x57a1, 0x5795, 0x57a7, 0x57a8, 0x57a9, 0x57ac,
- 0x57b8, 0x57bd, 0x57c7, 0x57c8, 0x57cc, 0x57cf, 0x57d5, 0x57dd,
- 0x57de, 0x57e4, 0x57e6, 0x57e7, 0x57e9, 0x57ed, 0x57f0, 0x57f5,
- 0x57f6, 0x57f8, 0x57fd, 0x57fe, 0x57ff, 0x5803, 0x5804, 0x5808,
- 0x5809, 0x57e1, 0x580c, 0x580d, 0x581b, 0x581e, 0x581f, 0x5820,
- 0x5826, 0x5827, 0x582d, 0x5832, 0x5839, 0x583f, 0x5849, 0x584c,
- 0x584d, 0x584f, 0x5850, 0x5855, 0x585f, 0x5861, 0x5864, 0x5867,
- 0x5868, 0x5878, 0x587c, 0x587f, 0x5880, 0x5881, 0x5887, 0x5888,
- 0x5889, 0x588a, 0x588c, 0x588d, 0x588f, 0x5890, 0x5894, 0x5896,
- 0x589d, 0x58a0, 0x58a1, 0x58a2, 0x58a6, 0x58a9, 0x58b1, 0x58b2,
- 0x58c4, 0x58bc, 0x58c2, 0x58c8, 0x58cd, 0x58ce, 0x58d0, 0x58d2,
- 0x58d4, 0x58d6, 0x58da, 0x58dd, 0x58e1, 0x58e2, 0x58e9, 0x58f3,
- 0x5905, 0x5906, 0x590b, 0x590c, 0x5912, 0x5913, 0x5914, 0x8641,
- 0x591d, 0x5921, 0x5923, 0x5924, 0x5928, 0x592f, 0x5930, 0x5933,
- 0x5935, 0x5936, 0x593f, 0x5943, 0x5946, 0x5952, 0x5953, 0x5959,
- 0x595b, 0x595d, 0x595e, 0x595f, 0x5961, 0x5963, 0x596b, 0x596d,
- 0x596f, 0x5972, 0x5975, 0x5976, 0x5979, 0x597b, 0x597c, 0x598b,
- 0x598c, 0x598e, 0x5992, 0x5995, 0x5997, 0x599f, 0x59a4, 0x59a7,
- 0x59ad, 0x59ae, 0x59af, 0x59b0, 0x59b3, 0x59b7, 0x59ba, 0x59bc,
- 0x59c1, 0x59c3, 0x59c4, 0x59c8, 0x59ca, 0x59cd, 0x59d2, 0x59dd,
- 0x59de, 0x59df, 0x59e3, 0x59e4, 0x59e7, 0x59ee, 0x59ef, 0x59f1,
- 0x59f2, 0x59f4, 0x59f7, 0x5a00, 0x5a04, 0x5a0c, 0x5a0d, 0x5a0e,
- 0x5a12, 0x5a13, 0x5a1e, 0x5a23, 0x5a24, 0x5a27, 0x5a28, 0x5a2a,
- 0x5a2d, 0x5a30, 0x5a44, 0x5a45, 0x5a47, 0x5a48, 0x5a4c, 0x5a50,
- 0x5a55, 0x5a5e, 0x5a63, 0x5a65, 0x5a67, 0x5a6d, 0x5a77, 0x5a7a,
- 0x5a7b, 0x5a7e, 0x5a8b, 0x5a90, 0x5a93, 0x5a96, 0x5a99, 0x5a9c,
- 0x5a9e, 0x5a9f, 0x5aa0, 0x5aa2, 0x5aa7, 0x5aac, 0x5ab1, 0x5ab2,
- 0x5ab3, 0x5ab5, 0x5ab8, 0x5aba, 0x5abb, 0x5abf, 0x5ac4, 0x5ac6,
- 0x5ac8, 0x5acf, 0x5ada, 0x5adc, 0x5ae0, 0x5ae5, 0x5aea, 0x5aee,
- 0x5af5, 0x5af6, 0x5afd, 0x5b00, 0x5b01, 0x5b08, 0x5b17, 0x5b34,
- 0x5b19, 0x5b1b, 0x5b1d, 0x5b21, 0x5b25, 0x5b2d, 0x5b38, 0x5b41,
- 0x5b4b, 0x5b4c, 0x5b52, 0x5b56, 0x5b5e, 0x5b68, 0x5b6e, 0x5b6f,
- 0x5b7c, 0x5b7d, 0x5b7e, 0x5b7f, 0x5b81, 0x5b84, 0x5b86, 0x5b8a,
- 0x5b8e, 0x5b90, 0x5b91, 0x5b93, 0x5b94, 0x5b96, 0x5ba8, 0x5ba9,
- 0x5bac, 0x5bad, 0x5baf, 0x5bb1, 0x5bb2, 0x5bb7, 0x5bba, 0x5bbc,
- 0x5bc0, 0x5bc1, 0x5bcd, 0x5bcf, 0x5bd6, 0x5bd7, 0x5bd8, 0x5bd9,
- 0x5bda, 0x5be0, 0x5bef, 0x5bf1, 0x5bf4, 0x5bfd, 0x5c0c, 0x5c17,
- 0x5c1e, 0x5c1f, 0x5c23, 0x5c26, 0x5c29, 0x5c2b, 0x5c2c, 0x5c2e,
- 0x5c30, 0x5c32, 0x5c35, 0x5c36, 0x5c59, 0x5c5a, 0x5c5c, 0x5c62,
- 0x5c63, 0x5c67, 0x5c68, 0x5c69, 0x5c6d, 0x5c70, 0x5c74, 0x5c75,
- 0x5c7a, 0x5c7b, 0x5c7c, 0x5c7d, 0x5c87, 0x5c88, 0x5c8a, 0x5c8f,
- 0x5c92, 0x5c9d, 0x5c9f, 0x5ca0, 0x5ca2, 0x5ca3, 0x5ca6, 0x5caa,
- 0x5cb2, 0x5cb4, 0x5cb5, 0x5cba, 0x5cc9, 0x5ccb, 0x5cd2, 0x5cdd,
- 0x5cd7, 0x5cee, 0x5cf1, 0x5cf2, 0x5cf4, 0x5d01, 0x5d06, 0x5d0d,
- 0x5d12, 0x5d2b, 0x5d23, 0x5d24, 0x5d26, 0x5d27, 0x5d31, 0x5d34,
- 0x5d39, 0x5d3d, 0x5d3f, 0x5d42, 0x5d43, 0x5d46, 0x5d48, 0x5d55,
- 0x5d51, 0x5d59, 0x5d4a, 0x5d5f, 0x5d60, 0x5d61, 0x5d62, 0x5d64,
- 0x5d6a, 0x5d6d, 0x5d70, 0x5d79, 0x5d7a, 0x5d7e, 0x5d7f, 0x5d81,
- 0x5d83, 0x5d88, 0x5d8a, 0x5d92, 0x5d93, 0x5d94, 0x5d95, 0x5d99,
- 0x5d9b, 0x5d9f, 0x5da0, 0x5da7, 0x5dab, 0x5db0, 0x5db4, 0x5db8,
- 0x5db9, 0x5dc3, 0x5dc7, 0x5dcb, 0x5dd0, 0x5dce, 0x5dd8, 0x5dd9,
- 0x5de0, 0x5de4, 0x5de9, 0x5df8, 0x5df9, 0x5e00, 0x5e07, 0x5e0d,
- 0x5e12, 0x5e14, 0x5e15, 0x5e18, 0x5e1f, 0x5e20, 0x5e2e, 0x5e28,
- 0x5e32, 0x5e35, 0x5e3e, 0x5e4b, 0x5e50, 0x5e49, 0x5e51, 0x5e56,
- 0x5e58, 0x5e5b, 0x5e5c, 0x5e5e, 0x5e68, 0x5e6a, 0x5e6b, 0x5e6c,
- 0x5e6d, 0x5e6e, 0x5e70, 0x5e80, 0x5e8b, 0x5e8e, 0x5ea2, 0x5ea4,
- 0x5ea5, 0x5ea8, 0x5eaa, 0x5eac, 0x5eb1, 0x5eb3, 0x5ebd, 0x5ebe,
- 0x5ebf, 0x5ec6, 0x5ecc, 0x5ecb, 0x5ece, 0x5ed1, 0x5ed2, 0x5ed4,
- 0x5ed5, 0x5edc, 0x5ede, 0x5ee5, 0x5eeb, 0x5f02, 0x5f06, 0x5f07,
- 0x5f08, 0x5f0e, 0x5f19, 0x5f1c, 0x5f1d, 0x5f21, 0x5f22, 0x5f23,
- 0x5f24, 0x5f28, 0x5f2b, 0x5f2c, 0x5f2e, 0x5f30, 0x5f34, 0x5f36,
- 0x5f3b, 0x5f3d, 0x5f3f, 0x5f40, 0x5f44, 0x5f45, 0x5f47, 0x5f4d,
- 0x5f50, 0x5f54, 0x5f58, 0x5f5b, 0x5f60, 0x5f63, 0x5f64, 0x5f67,
- 0x5f6f, 0x5f72, 0x5f74, 0x5f75, 0x5f78, 0x5f7a, 0x5f7d, 0x5f7e,
- 0x5f89, 0x5f8d, 0x5f8f, 0x5f96, 0x5f9c, 0x5f9d, 0x5fa2, 0x5fa7,
- 0x5fab, 0x5fa4, 0x5fac, 0x5faf, 0x5fb0, 0x5fb1, 0x5fb8, 0x5fc4,
- 0x5fc7, 0x5fc8, 0x5fc9, 0x5fcb, 0x5fd0, 0x5fd1, 0x5fd2, 0x5fd3,
- 0x5fd4, 0x5fde, 0x5fe1, 0x5fe2, 0x5fe8, 0x5fe9, 0x5fea, 0x5fec,
- 0x5fed, 0x5fee, 0x5fef, 0x5ff2, 0x5ff3, 0x5ff6, 0x5ffa, 0x5ffc,
- 0x6007, 0x600a, 0x600d, 0x6013, 0x6014, 0x6017, 0x6018, 0x601a,
- 0x601f, 0x6024, 0x602d, 0x6033, 0x6035, 0x6040, 0x6047, 0x6048,
- 0x6049, 0x604c, 0x6051, 0x6054, 0x6056, 0x6057, 0x605d, 0x6061,
- 0x6067, 0x6071, 0x607e, 0x607f, 0x6082, 0x6086, 0x6088, 0x608a,
- 0x608e, 0x6091, 0x6093, 0x6095, 0x6098, 0x609d, 0x609e, 0x60a2,
- 0x60a4, 0x60a5, 0x60a8, 0x60b0, 0x60b1, 0x60b7, 0x60bb, 0x60be,
- 0x60c2, 0x60c4, 0x60c8, 0x60c9, 0x60ca, 0x60cb, 0x60ce, 0x60cf,
- 0x60d4, 0x60d5, 0x60d9, 0x60db, 0x60dd, 0x60de, 0x60e2, 0x60e5,
- 0x60f2, 0x60f5, 0x60f8, 0x60fc, 0x60fd, 0x6102, 0x6107, 0x610a,
- 0x610c, 0x6110, 0x6111, 0x6112, 0x6113, 0x6114, 0x6116, 0x6117,
- 0x6119, 0x611c, 0x611e, 0x6122, 0x612a, 0x612b, 0x6130, 0x6131,
- 0x6135, 0x6136, 0x6137, 0x6139, 0x6141, 0x6145, 0x6146, 0x6149,
- 0x615e, 0x6160, 0x616c, 0x6172, 0x6178, 0x617b, 0x617c, 0x617f,
- 0x6180, 0x6181, 0x6183, 0x6184, 0x618b, 0x618d, 0x6192, 0x6193,
- 0x6197, 0x6198, 0x619c, 0x619d, 0x619f, 0x61a0, 0x61a5, 0x61a8,
- 0x61aa, 0x61ad, 0x61b8, 0x61b9, 0x61bc, 0x61c0, 0x61c1, 0x61c2,
- 0x61ce, 0x61cf, 0x61d5, 0x61dc, 0x61dd, 0x61de, 0x61df, 0x61e1,
- 0x61e2, 0x61e7, 0x61e9, 0x61e5, 0x61ec, 0x61ed, 0x61ef, 0x6201,
- 0x6203, 0x6204, 0x6207, 0x6213, 0x6215, 0x621c, 0x6220, 0x6222,
- 0x6223, 0x6227, 0x6229, 0x622b, 0x6239, 0x623d, 0x6242, 0x6243,
- 0x6244, 0x6246, 0x624c, 0x6250, 0x6251, 0x6252, 0x6254, 0x6256,
- 0x625a, 0x625c, 0x6264, 0x626d, 0x626f, 0x6273, 0x627a, 0x627d,
- 0x628d, 0x628e, 0x628f, 0x6290, 0x62a6, 0x62a8, 0x62b3, 0x62b6,
- 0x62b7, 0x62ba, 0x62be, 0x62bf, 0x62c4, 0x62ce, 0x62d5, 0x62d6,
- 0x62da, 0x62ea, 0x62f2, 0x62f4, 0x62fc, 0x62fd, 0x6303, 0x6304,
- 0x630a, 0x630b, 0x630d, 0x6310, 0x6313, 0x6316, 0x6318, 0x6329,
- 0x632a, 0x632d, 0x6335, 0x6336, 0x6339, 0x633c, 0x6341, 0x6342,
- 0x6343, 0x6344, 0x6346, 0x634a, 0x634b, 0x634e, 0x6352, 0x6353,
- 0x6354, 0x6358, 0x635b, 0x6365, 0x6366, 0x636c, 0x636d, 0x6371,
- 0x6374, 0x6375, 0x6378, 0x637c, 0x637d, 0x637f, 0x6382, 0x6384,
- 0x6387, 0x638a, 0x6390, 0x6394, 0x6395, 0x6399, 0x639a, 0x639e,
- 0x63a4, 0x63a6, 0x63ad, 0x63ae, 0x63af, 0x63bd, 0x63c1, 0x63c5,
- 0x63c8, 0x63ce, 0x63d1, 0x63d3, 0x63d4, 0x63d5, 0x63dc, 0x63e0,
- 0x63e5, 0x63ea, 0x63ec, 0x63f2, 0x63f3, 0x63f5, 0x63f8, 0x63f9,
- 0x6409, 0x640a, 0x6410, 0x6412, 0x6414, 0x6418, 0x641e, 0x6420,
- 0x6422, 0x6424, 0x6425, 0x6429, 0x642a, 0x642f, 0x6430, 0x6435,
- 0x643d, 0x643f, 0x644b, 0x644f, 0x6451, 0x6452, 0x6453, 0x6454,
- 0x645a, 0x645b, 0x645c, 0x645d, 0x645f, 0x6460, 0x6461, 0x6463,
- 0x646d, 0x6473, 0x6474, 0x647b, 0x647d, 0x6485, 0x6487, 0x648f,
- 0x6490, 0x6491, 0x6498, 0x6499, 0x649b, 0x649d, 0x649f, 0x64a1,
- 0x64a3, 0x64a6, 0x64a8, 0x64ac, 0x64b3, 0x64bd, 0x64be, 0x64bf,
- 0x64c4, 0x64c9, 0x64ca, 0x64cb, 0x64cc, 0x64ce, 0x64d0, 0x64d1,
- 0x64d5, 0x64d7, 0x64e4, 0x64e5, 0x64e9, 0x64ea, 0x64ed, 0x64f0,
- 0x64f5, 0x64f7, 0x64fb, 0x64ff, 0x6501, 0x6504, 0x6508, 0x6509,
- 0x650a, 0x650f, 0x6513, 0x6514, 0x6516, 0x6519, 0x651b, 0x651e,
- 0x651f, 0x6522, 0x6526, 0x6529, 0x652e, 0x6531, 0x653a, 0x653c,
- 0x653d, 0x6543, 0x6547, 0x6549, 0x6550, 0x6552, 0x6554, 0x655f,
- 0x6560, 0x6567, 0x656b, 0x657a, 0x657d, 0x6581, 0x6585, 0x658a,
- 0x6592, 0x6595, 0x6598, 0x659d, 0x65a0, 0x65a3, 0x65a6, 0x65ae,
- 0x65b2, 0x65b3, 0x65b4, 0x65bf, 0x65c2, 0x65c8, 0x65c9, 0x65ce,
- 0x65d0, 0x65d4, 0x65d6, 0x65d8, 0x65df, 0x65f0, 0x65f2, 0x65f4,
- 0x65f5, 0x65f9, 0x65fe, 0x65ff, 0x6600, 0x6604, 0x6608, 0x6609,
- 0x660d, 0x6611, 0x6612, 0x6615, 0x6616, 0x661d, 0x661e, 0x6621,
- 0x6622, 0x6623, 0x6624, 0x6626, 0x6629, 0x662a, 0x662b, 0x662c,
- 0x662e, 0x6630, 0x6631, 0x6633, 0x6639, 0x6637, 0x6640, 0x6645,
- 0x6646, 0x664a, 0x664c, 0x6651, 0x664e, 0x6657, 0x6658, 0x6659,
- 0x665b, 0x665c, 0x6660, 0x6661, 0x66fb, 0x666a, 0x666b, 0x666c,
- 0x667e, 0x6673, 0x6675, 0x667f, 0x6677, 0x6678, 0x6679, 0x667b,
- 0x6680, 0x667c, 0x668b, 0x668c, 0x668d, 0x6690, 0x6692, 0x6699,
- 0x669a, 0x669b, 0x669c, 0x669f, 0x66a0, 0x66a4, 0x66ad, 0x66b1,
- 0x66b2, 0x66b5, 0x66bb, 0x66bf, 0x66c0, 0x66c2, 0x66c3, 0x66c8,
- 0x66cc, 0x66ce, 0x66cf, 0x66d4, 0x66db, 0x66df, 0x66e8, 0x66eb,
- 0x66ec, 0x66ee, 0x66fa, 0x6705, 0x6707, 0x670e, 0x6713, 0x6719,
- 0x671c, 0x6720, 0x6722, 0x6733, 0x673e, 0x6745, 0x6747, 0x6748,
- 0x674c, 0x6754, 0x6755, 0x675d, 0x6766, 0x676c, 0x676e, 0x6774,
- 0x6776, 0x677b, 0x6781, 0x6784, 0x678e, 0x678f, 0x6791, 0x6793,
- 0x6796, 0x6798, 0x6799, 0x679b, 0x67b0, 0x67b1, 0x67b2, 0x67b5,
- 0x67bb, 0x67bc, 0x67bd, 0x67f9, 0x67c0, 0x67c2, 0x67c3, 0x67c5,
- 0x67c8, 0x67c9, 0x67d2, 0x67d7, 0x67d9, 0x67dc, 0x67e1, 0x67e6,
- 0x67f0, 0x67f2, 0x67f6, 0x67f7, 0x6852, 0x6814, 0x6819, 0x681d,
- 0x681f, 0x6828, 0x6827, 0x682c, 0x682d, 0x682f, 0x6830, 0x6831,
- 0x6833, 0x683b, 0x683f, 0x6844, 0x6845, 0x684a, 0x684c, 0x6855,
- 0x6857, 0x6858, 0x685b, 0x686b, 0x686e, 0x686f, 0x6870, 0x6871,
- 0x6872, 0x6875, 0x6879, 0x687a, 0x687b, 0x687c, 0x6882, 0x6884,
- 0x6886, 0x6888, 0x6896, 0x6898, 0x689a, 0x689c, 0x68a1, 0x68a3,
- 0x68a5, 0x68a9, 0x68aa, 0x68ae, 0x68b2, 0x68bb, 0x68c5, 0x68c8,
- 0x68cc, 0x68cf, 0x68d0, 0x68d1, 0x68d3, 0x68d6, 0x68d9, 0x68dc,
- 0x68dd, 0x68e5, 0x68e8, 0x68ea, 0x68eb, 0x68ec, 0x68ed, 0x68f0,
- 0x68f1, 0x68f5, 0x68f6, 0x68fb, 0x68fc, 0x68fd, 0x6906, 0x6909,
- 0x690a, 0x6910, 0x6911, 0x6913, 0x6916, 0x6917, 0x6931, 0x6933,
- 0x6935, 0x6938, 0x693b, 0x6942, 0x6945, 0x6949, 0x694e, 0x6957,
- 0x695b, 0x6963, 0x6964, 0x6965, 0x6966, 0x6968, 0x6969, 0x696c,
- 0x6970, 0x6971, 0x6972, 0x697a, 0x697b, 0x697f, 0x6980, 0x698d,
- 0x6992, 0x6996, 0x6998, 0x69a1, 0x69a5, 0x69a6, 0x69a8, 0x69ab,
- 0x69ad, 0x69af, 0x69b7, 0x69b8, 0x69ba, 0x69bc, 0x69c5, 0x69c8,
- 0x69d1, 0x69d6, 0x69d7, 0x69e2, 0x69e5, 0x69ee, 0x69ef, 0x69f1,
- 0x69f3, 0x69f5, 0x69fe, 0x6a00, 0x6a01, 0x6a03, 0x6a0f, 0x6a11,
- 0x6a15, 0x6a1a, 0x6a1d, 0x6a20, 0x6a24, 0x6a28, 0x6a30, 0x6a32,
- 0x6a34, 0x6a37, 0x6a3b, 0x6a3e, 0x6a3f, 0x6a45, 0x6a46, 0x6a49,
- 0x6a4a, 0x6a4e, 0x6a50, 0x6a51, 0x6a52, 0x6a55, 0x6a56, 0x6a5b,
- 0x6a64, 0x6a67, 0x6a6a, 0x6a71, 0x6a73, 0x6a7e, 0x6a81, 0x6a83,
- 0x6a86, 0x6a87, 0x6a89, 0x6a8b, 0x6a91, 0x6a9b, 0x6a9d, 0x6a9e,
- 0x6a9f, 0x6aa5, 0x6aab, 0x6aaf, 0x6ab0, 0x6ab1, 0x6ab4, 0x6abd,
- 0x6abe, 0x6abf, 0x6ac6, 0x6ac9, 0x6ac8, 0x6acc, 0x6ad0, 0x6ad4,
- 0x6ad5, 0x6ad6, 0x6adc, 0x6add, 0x6ae4, 0x6ae7, 0x6aec, 0x6af0,
- 0x6af1, 0x6af2, 0x6afc, 0x6afd, 0x6b02, 0x6b03, 0x6b06, 0x6b07,
- 0x6b09, 0x6b0f, 0x6b10, 0x6b11, 0x6b17, 0x6b1b, 0x6b1e, 0x6b24,
- 0x6b28, 0x6b2b, 0x6b2c, 0x6b2f, 0x6b35, 0x6b36, 0x6b3b, 0x6b3f,
- 0x6b46, 0x6b4a, 0x6b4d, 0x6b52, 0x6b56, 0x6b58, 0x6b5d, 0x6b60,
- 0x6b67, 0x6b6b, 0x6b6e, 0x6b70, 0x6b75, 0x6b7d, 0x6b7e, 0x6b82,
- 0x6b85, 0x6b97, 0x6b9b, 0x6b9f, 0x6ba0, 0x6ba2, 0x6ba3, 0x6ba8,
- 0x6ba9, 0x6bac, 0x6bad, 0x6bae, 0x6bb0, 0x6bb8, 0x6bb9, 0x6bbd,
- 0x6bbe, 0x6bc3, 0x6bc4, 0x6bc9, 0x6bcc, 0x6bd6, 0x6bda, 0x6be1,
- 0x6be3, 0x6be6, 0x6be7, 0x6bee, 0x6bf1, 0x6bf7, 0x6bf9, 0x6bff,
- 0x6c02, 0x6c04, 0x6c05, 0x6c09, 0x6c0d, 0x6c0e, 0x6c10, 0x6c12,
- 0x6c19, 0x6c1f, 0x6c26, 0x6c27, 0x6c28, 0x6c2c, 0x6c2e, 0x6c33,
- 0x6c35, 0x6c36, 0x6c3a, 0x6c3b, 0x6c3f, 0x6c4a, 0x6c4b, 0x6c4d,
- 0x6c4f, 0x6c52, 0x6c54, 0x6c59, 0x6c5b, 0x6c5c, 0x6c6b, 0x6c6d,
- 0x6c6f, 0x6c74, 0x6c76, 0x6c78, 0x6c79, 0x6c7b, 0x6c85, 0x6c86,
- 0x6c87, 0x6c89, 0x6c94, 0x6c95, 0x6c97, 0x6c98, 0x6c9c, 0x6c9f,
- 0x6cb0, 0x6cb2, 0x6cb4, 0x6cc2, 0x6cc6, 0x6ccd, 0x6ccf, 0x6cd0,
- 0x6cd1, 0x6cd2, 0x6cd4, 0x6cd6, 0x6cda, 0x6cdc, 0x6ce0, 0x6ce7,
- 0x6ce9, 0x6ceb, 0x6cec, 0x6cee, 0x6cf2, 0x6cf4, 0x6d04, 0x6d07,
- 0x6d0a, 0x6d0e, 0x6d0f, 0x6d11, 0x6d13, 0x6d1a, 0x6d26, 0x6d27,
- 0x6d28, 0x6c67, 0x6d2e, 0x6d2f, 0x6d31, 0x6d39, 0x6d3c, 0x6d3f,
- 0x6d57, 0x6d5e, 0x6d5f, 0x6d61, 0x6d65, 0x6d67, 0x6d6f, 0x6d70,
- 0x6d7c, 0x6d82, 0x6d87, 0x6d91, 0x6d92, 0x6d94, 0x6d96, 0x6d97,
- 0x6d98, 0x6daa, 0x6dac, 0x6db4, 0x6db7, 0x6db9, 0x6dbd, 0x6dbf,
- 0x6dc4, 0x6dc8, 0x6dca, 0x6dce, 0x6dcf, 0x6dd6, 0x6ddb, 0x6ddd,
- 0x6ddf, 0x6de0, 0x6de2, 0x6de5, 0x6de9, 0x6def, 0x6df0, 0x6df4,
- 0x6df6, 0x6dfc, 0x6e00, 0x6e04, 0x6e1e, 0x6e22, 0x6e27, 0x6e32,
- 0x6e36, 0x6e39, 0x6e3b, 0x6e3c, 0x6e44, 0x6e45, 0x6e48, 0x6e49,
- 0x6e4b, 0x6e4f, 0x6e51, 0x6e52, 0x6e53, 0x6e54, 0x6e57, 0x6e5c,
- 0x6e5d, 0x6e5e, 0x6e62, 0x6e63, 0x6e68, 0x6e73, 0x6e7b, 0x6e7d,
- 0x6e8d, 0x6e93, 0x6e99, 0x6ea0, 0x6ea7, 0x6ead, 0x6eae, 0x6eb1,
- 0x6eb3, 0x6ebb, 0x6ebf, 0x6ec0, 0x6ec1, 0x6ec3, 0x6ec7, 0x6ec8,
- 0x6eca, 0x6ecd, 0x6ece, 0x6ecf, 0x6eeb, 0x6eed, 0x6eee, 0x6ef9,
- 0x6efb, 0x6efd, 0x6f04, 0x6f08, 0x6f0a, 0x6f0c, 0x6f0d, 0x6f16,
- 0x6f18, 0x6f1a, 0x6f1b, 0x6f26, 0x6f29, 0x6f2a, 0x6f2f, 0x6f30,
- 0x6f33, 0x6f36, 0x6f3b, 0x6f3c, 0x6f2d, 0x6f4f, 0x6f51, 0x6f52,
- 0x6f53, 0x6f57, 0x6f59, 0x6f5a, 0x6f5d, 0x6f5e, 0x6f61, 0x6f62,
- 0x6f68, 0x6f6c, 0x6f7d, 0x6f7e, 0x6f83, 0x6f87, 0x6f88, 0x6f8b,
- 0x6f8c, 0x6f8d, 0x6f90, 0x6f92, 0x6f93, 0x6f94, 0x6f96, 0x6f9a,
- 0x6f9f, 0x6fa0, 0x6fa5, 0x6fa6, 0x6fa7, 0x6fa8, 0x6fae, 0x6faf,
- 0x6fb0, 0x6fb5, 0x6fb6, 0x6fbc, 0x6fc5, 0x6fc7, 0x6fc8, 0x6fca,
- 0x6fda, 0x6fde, 0x6fe8, 0x6fe9, 0x6ff0, 0x6ff5, 0x6ff9, 0x6ffc,
- 0x6ffd, 0x7000, 0x7005, 0x7006, 0x7007, 0x700d, 0x7017, 0x7020,
- 0x7023, 0x702f, 0x7034, 0x7037, 0x7039, 0x703c, 0x7043, 0x7044,
- 0x7048, 0x7049, 0x704a, 0x704b, 0x7054, 0x7055, 0x705d, 0x705e,
- 0x704e, 0x7064, 0x7065, 0x706c, 0x706e, 0x7075, 0x7076, 0x707e,
- 0x7081, 0x7085, 0x7086, 0x7094, 0x7095, 0x7096, 0x7097, 0x7098,
- 0x709b, 0x70a4, 0x70ab, 0x70b0, 0x70b1, 0x70b4, 0x70b7, 0x70ca,
- 0x70d1, 0x70d3, 0x70d4, 0x70d5, 0x70d6, 0x70d8, 0x70dc, 0x70e4,
- 0x70fa, 0x7103, 0x7104, 0x7105, 0x7106, 0x7107, 0x710b, 0x710c,
- 0x710f, 0x711e, 0x7120, 0x712b, 0x712d, 0x712f, 0x7130, 0x7131,
- 0x7138, 0x7141, 0x7145, 0x7146, 0x7147, 0x714a, 0x714b, 0x7150,
- 0x7152, 0x7157, 0x715a, 0x715c, 0x715e, 0x7160, 0x7168, 0x7179,
- 0x7180, 0x7185, 0x7187, 0x718c, 0x7192, 0x719a, 0x719b, 0x71a0,
- 0x71a2, 0x71af, 0x71b0, 0x71b2, 0x71b3, 0x71ba, 0x71bf, 0x71c0,
- 0x71c1, 0x71c4, 0x71cb, 0x71cc, 0x71d3, 0x71d6, 0x71d9, 0x71da,
- 0x71dc, 0x71f8, 0x71fe, 0x7200, 0x7207, 0x7208, 0x7209, 0x7213,
- 0x7217, 0x721a, 0x721d, 0x721f, 0x7224, 0x722b, 0x722f, 0x7234,
- 0x7238, 0x7239, 0x7241, 0x7242, 0x7243, 0x7245, 0x724e, 0x724f,
- 0x7250, 0x7253, 0x7255, 0x7256, 0x725a, 0x725c, 0x725e, 0x7260,
- 0x7263, 0x7268, 0x726b, 0x726e, 0x726f, 0x7271, 0x7277, 0x7278,
- 0x727b, 0x727c, 0x727f, 0x7284, 0x7289, 0x728d, 0x728e, 0x7293,
- 0x729b, 0x72a8, 0x72ad, 0x72ae, 0x72b1, 0x72b4, 0x72be, 0x72c1,
- 0x72c7, 0x72c9, 0x72cc, 0x72d5, 0x72d6, 0x72d8, 0x72df, 0x72e5,
- 0x72f3, 0x72f4, 0x72fa, 0x72fb, 0x72fe, 0x7302, 0x7304, 0x7305,
- 0x7307, 0x730b, 0x730d, 0x7312, 0x7313, 0x7318, 0x7319, 0x731e,
- 0x7322, 0x7324, 0x7327, 0x7328, 0x732c, 0x7331, 0x7332, 0x7335,
- 0x733a, 0x733b, 0x733d, 0x7343, 0x734d, 0x7350, 0x7352, 0x7356,
- 0x7358, 0x735d, 0x735e, 0x735f, 0x7360, 0x7366, 0x7367, 0x7369,
- 0x736b, 0x736c, 0x736e, 0x736f, 0x7371, 0x7377, 0x7379, 0x737c,
- 0x7380, 0x7381, 0x7383, 0x7385, 0x7386, 0x738e, 0x7390, 0x7393,
- 0x7395, 0x7397, 0x7398, 0x739c, 0x739e, 0x739f, 0x73a0, 0x73a2,
- 0x73a5, 0x73a6, 0x73aa, 0x73ab, 0x73ad, 0x73b5, 0x73b7, 0x73b9,
- 0x73bc, 0x73bd, 0x73bf, 0x73c5, 0x73c6, 0x73c9, 0x73cb, 0x73cc,
- 0x73cf, 0x73d2, 0x73d3, 0x73d6, 0x73d9, 0x73dd, 0x73e1, 0x73e3,
- 0x73e6, 0x73e7, 0x73e9, 0x73f4, 0x73f5, 0x73f7, 0x73f9, 0x73fa,
- 0x73fb, 0x73fd, 0x73ff, 0x7400, 0x7401, 0x7404, 0x7407, 0x740a,
- 0x7411, 0x741a, 0x741b, 0x7424, 0x7426, 0x7428, 0x7429, 0x742a,
- 0x742b, 0x742c, 0x742d, 0x742e, 0x742f, 0x7430, 0x7431, 0x7439,
- 0x7440, 0x7443, 0x7444, 0x7446, 0x7447, 0x744b, 0x744d, 0x7451,
- 0x7452, 0x7457, 0x745d, 0x7462, 0x7466, 0x7467, 0x7468, 0x746b,
- 0x746d, 0x746e, 0x7471, 0x7472, 0x7480, 0x7481, 0x7485, 0x7486,
- 0x7487, 0x7489, 0x748f, 0x7490, 0x7491, 0x7492, 0x7498, 0x7499,
- 0x749a, 0x749c, 0x749f, 0x74a0, 0x74a1, 0x74a3, 0x74a6, 0x74a8,
- 0x74a9, 0x74aa, 0x74ab, 0x74ae, 0x74af, 0x74b1, 0x74b2, 0x74b5,
- 0x74b9, 0x74bb, 0x74bf, 0x74c8, 0x74c9, 0x74cc, 0x74d0, 0x74d3,
- 0x74d8, 0x74da, 0x74db, 0x74de, 0x74df, 0x74e4, 0x74e8, 0x74ea,
- 0x74eb, 0x74ef, 0x74f4, 0x74fa, 0x74fb, 0x74fc, 0x74ff, 0x7506,
- 0x7512, 0x7516, 0x7517, 0x7520, 0x7521, 0x7524, 0x7527, 0x7529,
- 0x752a, 0x752f, 0x7536, 0x7539, 0x753d, 0x753e, 0x753f, 0x7540,
- 0x7543, 0x7547, 0x7548, 0x754e, 0x7550, 0x7552, 0x7557, 0x755e,
- 0x755f, 0x7561, 0x756f, 0x7571, 0x7579, 0x757a, 0x757b, 0x757c,
- 0x757d, 0x757e, 0x7581, 0x7585, 0x7590, 0x7592, 0x7593, 0x7595,
- 0x7599, 0x759c, 0x75a2, 0x75a4, 0x75b4, 0x75ba, 0x75bf, 0x75c0,
- 0x75c1, 0x75c4, 0x75c6, 0x75cc, 0x75ce, 0x75cf, 0x75d7, 0x75dc,
- 0x75df, 0x75e0, 0x75e1, 0x75e4, 0x75e7, 0x75ec, 0x75ee, 0x75ef,
- 0x75f1, 0x75f9, 0x7600, 0x7602, 0x7603, 0x7604, 0x7607, 0x7608,
- 0x760a, 0x760c, 0x760f, 0x7612, 0x7613, 0x7615, 0x7616, 0x7619,
- 0x761b, 0x761c, 0x761d, 0x761e, 0x7623, 0x7625, 0x7626, 0x7629,
- 0x762d, 0x7632, 0x7633, 0x7635, 0x7638, 0x7639, 0x763a, 0x763c,
- 0x764a, 0x7640, 0x7641, 0x7643, 0x7644, 0x7645, 0x7649, 0x764b,
- 0x7655, 0x7659, 0x765f, 0x7664, 0x7665, 0x766d, 0x766e, 0x766f,
- 0x7671, 0x7674, 0x7681, 0x7685, 0x768c, 0x768d, 0x7695, 0x769b,
- 0x769c, 0x769d, 0x769f, 0x76a0, 0x76a2, 0x76a3, 0x76a4, 0x76a5,
- 0x76a6, 0x76a7, 0x76a8, 0x76aa, 0x76ad, 0x76bd, 0x76c1, 0x76c5,
- 0x76c9, 0x76cb, 0x76cc, 0x76ce, 0x76d4, 0x76d9, 0x76e0, 0x76e6,
- 0x76e8, 0x76ec, 0x76f0, 0x76f1, 0x76f6, 0x76f9, 0x76fc, 0x7700,
- 0x7706, 0x770a, 0x770e, 0x7712, 0x7714, 0x7715, 0x7717, 0x7719,
- 0x771a, 0x771c, 0x7722, 0x7728, 0x772d, 0x772e, 0x772f, 0x7734,
- 0x7735, 0x7736, 0x7739, 0x773d, 0x773e, 0x7742, 0x7745, 0x7746,
- 0x774a, 0x774d, 0x774e, 0x774f, 0x7752, 0x7756, 0x7757, 0x775c,
- 0x775e, 0x775f, 0x7760, 0x7762, 0x7764, 0x7767, 0x776a, 0x776c,
- 0x7770, 0x7772, 0x7773, 0x7774, 0x777a, 0x777d, 0x7780, 0x7784,
- 0x778c, 0x778d, 0x7794, 0x7795, 0x7796, 0x779a, 0x779f, 0x77a2,
- 0x77a7, 0x77aa, 0x77ae, 0x77af, 0x77b1, 0x77b5, 0x77be, 0x77c3,
- 0x77c9, 0x77d1, 0x77d2, 0x77d5, 0x77d9, 0x77de, 0x77df, 0x77e0,
- 0x77e4, 0x77e6, 0x77ea, 0x77ec, 0x77f0, 0x77f1, 0x77f4, 0x77f8,
- 0x77fb, 0x7805, 0x7806, 0x7809, 0x780d, 0x780e, 0x7811, 0x781d,
- 0x7821, 0x7822, 0x7823, 0x782d, 0x782e, 0x7830, 0x7835, 0x7837,
- 0x7843, 0x7844, 0x7847, 0x7848, 0x784c, 0x784e, 0x7852, 0x785c,
- 0x785e, 0x7860, 0x7861, 0x7863, 0x7864, 0x7868, 0x786a, 0x786e,
- 0x787a, 0x787e, 0x788a, 0x788f, 0x7894, 0x7898, 0x78a1, 0x789d,
- 0x789e, 0x789f, 0x78a4, 0x78a8, 0x78ac, 0x78ad, 0x78b0, 0x78b1,
- 0x78b2, 0x78b3, 0x78bb, 0x78bd, 0x78bf, 0x78c7, 0x78c8, 0x78c9,
- 0x78cc, 0x78ce, 0x78d2, 0x78d3, 0x78d5, 0x78d6, 0x78e4, 0x78db,
- 0x78df, 0x78e0, 0x78e1, 0x78e6, 0x78ea, 0x78f2, 0x78f3, 0x7900,
- 0x78f6, 0x78f7, 0x78fa, 0x78fb, 0x78ff, 0x7906, 0x790c, 0x7910,
- 0x791a, 0x791c, 0x791e, 0x791f, 0x7920, 0x7925, 0x7927, 0x7929,
- 0x792d, 0x7931, 0x7934, 0x7935, 0x793b, 0x793d, 0x793f, 0x7944,
- 0x7945, 0x7946, 0x794a, 0x794b, 0x794f, 0x7951, 0x7954, 0x7958,
- 0x795b, 0x795c, 0x7967, 0x7969, 0x796b, 0x7972, 0x7979, 0x797b,
- 0x797c, 0x797e, 0x798b, 0x798c, 0x7991, 0x7993, 0x7994, 0x7995,
- 0x7996, 0x7998, 0x799b, 0x799c, 0x79a1, 0x79a8, 0x79a9, 0x79ab,
- 0x79af, 0x79b1, 0x79b4, 0x79b8, 0x79bb, 0x79c2, 0x79c4, 0x79c7,
- 0x79c8, 0x79ca, 0x79cf, 0x79d4, 0x79d6, 0x79da, 0x79dd, 0x79de,
- 0x79e0, 0x79e2, 0x79e5, 0x79ea, 0x79eb, 0x79ed, 0x79f1, 0x79f8,
- 0x79fc, 0x7a02, 0x7a03, 0x7a07, 0x7a09, 0x7a0a, 0x7a0c, 0x7a11,
- 0x7a15, 0x7a1b, 0x7a1e, 0x7a21, 0x7a27, 0x7a2b, 0x7a2d, 0x7a2f,
- 0x7a30, 0x7a34, 0x7a35, 0x7a38, 0x7a39, 0x7a3a, 0x7a44, 0x7a45,
- 0x7a47, 0x7a48, 0x7a4c, 0x7a55, 0x7a56, 0x7a59, 0x7a5c, 0x7a5d,
- 0x7a5f, 0x7a60, 0x7a65, 0x7a67, 0x7a6a, 0x7a6d, 0x7a75, 0x7a78,
- 0x7a7e, 0x7a80, 0x7a82, 0x7a85, 0x7a86, 0x7a8a, 0x7a8b, 0x7a90,
- 0x7a91, 0x7a94, 0x7a9e, 0x7aa0, 0x7aa3, 0x7aac, 0x7ab3, 0x7ab5,
- 0x7ab9, 0x7abb, 0x7abc, 0x7ac6, 0x7ac9, 0x7acc, 0x7ace, 0x7ad1,
- 0x7adb, 0x7ae8, 0x7ae9, 0x7aeb, 0x7aec, 0x7af1, 0x7af4, 0x7afb,
- 0x7afd, 0x7afe, 0x7b07, 0x7b14, 0x7b1f, 0x7b23, 0x7b27, 0x7b29,
- 0x7b2a, 0x7b2b, 0x7b2d, 0x7b2e, 0x7b2f, 0x7b30, 0x7b31, 0x7b34,
- 0x7b3d, 0x7b3f, 0x7b40, 0x7b41, 0x7b47, 0x7b4e, 0x7b55, 0x7b60,
- 0x7b64, 0x7b66, 0x7b69, 0x7b6a, 0x7b6d, 0x7b6f, 0x7b72, 0x7b73,
- 0x7b77, 0x7b84, 0x7b89, 0x7b8e, 0x7b90, 0x7b91, 0x7b96, 0x7b9b,
- 0x7b9e, 0x7ba0, 0x7ba5, 0x7bac, 0x7baf, 0x7bb0, 0x7bb2, 0x7bb5,
- 0x7bb6, 0x7bba, 0x7bbb, 0x7bbc, 0x7bbd, 0x7bc2, 0x7bc5, 0x7bc8,
- 0x7bca, 0x7bd4, 0x7bd6, 0x7bd7, 0x7bd9, 0x7bda, 0x7bdb, 0x7be8,
- 0x7bea, 0x7bf2, 0x7bf4, 0x7bf5, 0x7bf8, 0x7bf9, 0x7bfa, 0x7bfc,
- 0x7bfe, 0x7c01, 0x7c02, 0x7c03, 0x7c04, 0x7c06, 0x7c09, 0x7c0b,
- 0x7c0c, 0x7c0e, 0x7c0f, 0x7c19, 0x7c1b, 0x7c20, 0x7c25, 0x7c26,
- 0x7c28, 0x7c2c, 0x7c31, 0x7c33, 0x7c34, 0x7c36, 0x7c39, 0x7c3a,
- 0x7c46, 0x7c4a, 0x7c55, 0x7c51, 0x7c52, 0x7c53, 0x7c59, 0x7c5a,
- 0x7c5b, 0x7c5c, 0x7c5d, 0x7c5e, 0x7c61, 0x7c63, 0x7c67, 0x7c69,
- 0x7c6d, 0x7c6e, 0x7c70, 0x7c72, 0x7c79, 0x7c7c, 0x7c7d, 0x7c86,
- 0x7c87, 0x7c8f, 0x7c94, 0x7c9e, 0x7ca0, 0x7ca6, 0x7cb0, 0x7cb6,
- 0x7cb7, 0x7cba, 0x7cbb, 0x7cbc, 0x7cbf, 0x7cc4, 0x7cc7, 0x7cc8,
- 0x7cc9, 0x7ccd, 0x7ccf, 0x7cd3, 0x7cd4, 0x7cd5, 0x7cd7, 0x7cd9,
- 0x7cda, 0x7cdd, 0x7ce6, 0x7ce9, 0x7ceb, 0x7cf5, 0x7d03, 0x7d07,
- 0x7d08, 0x7d09, 0x7d0f, 0x7d11, 0x7d12, 0x7d13, 0x7d16, 0x7d1d,
- 0x7d1e, 0x7d23, 0x7d26, 0x7d2a, 0x7d2d, 0x7d31, 0x7d3c, 0x7d3d,
- 0x7d3e, 0x7d40, 0x7d41, 0x7d47, 0x7d48, 0x7d4d, 0x7d51, 0x7d53,
- 0x7d57, 0x7d59, 0x7d5a, 0x7d5c, 0x7d5d, 0x7d65, 0x7d67, 0x7d6a,
- 0x7d70, 0x7d78, 0x7d7a, 0x7d7b, 0x7d7f, 0x7d81, 0x7d82, 0x7d83,
- 0x7d85, 0x7d86, 0x7d88, 0x7d8b, 0x7d8c, 0x7d8d, 0x7d91, 0x7d96,
- 0x7d97, 0x7d9d, 0x7d9e, 0x7da6, 0x7da7, 0x7daa, 0x7db3, 0x7db6,
- 0x7db7, 0x7db9, 0x7dc2, 0x7dc3, 0x7dc4, 0x7dc5, 0x7dc6, 0x7dcc,
- 0x7dcd, 0x7dce, 0x7dd7, 0x7dd9, 0x7e00, 0x7de2, 0x7de5, 0x7de6,
- 0x7dea, 0x7deb, 0x7ded, 0x7df1, 0x7df5, 0x7df6, 0x7df9, 0x7dfa,
- 0x7e08, 0x7e10, 0x7e11, 0x7e15, 0x7e17, 0x7e1c, 0x7e1d, 0x7e20,
- 0x7e27, 0x7e28, 0x7e2c, 0x7e2d, 0x7e2f, 0x7e33, 0x7e36, 0x7e3f,
- 0x7e44, 0x7e45, 0x7e47, 0x7e4e, 0x7e50, 0x7e52, 0x7e58, 0x7e5f,
- 0x7e61, 0x7e62, 0x7e65, 0x7e6b, 0x7e6e, 0x7e6f, 0x7e73, 0x7e78,
- 0x7e7e, 0x7e81, 0x7e86, 0x7e87, 0x7e8a, 0x7e8d, 0x7e91, 0x7e95,
- 0x7e98, 0x7e9a, 0x7e9d, 0x7e9e, 0x7f3c, 0x7f3b, 0x7f3d, 0x7f3e,
- 0x7f3f, 0x7f43, 0x7f44, 0x7f47, 0x7f4f, 0x7f52, 0x7f53, 0x7f5b,
- 0x7f5c, 0x7f5d, 0x7f61, 0x7f63, 0x7f64, 0x7f65, 0x7f66, 0x7f6d,
- 0x7f71, 0x7f7d, 0x7f7e, 0x7f7f, 0x7f80, 0x7f8b, 0x7f8d, 0x7f8f,
- 0x7f90, 0x7f91, 0x7f96, 0x7f97, 0x7f9c, 0x7fa1, 0x7fa2, 0x7fa6,
- 0x7faa, 0x7fad, 0x7fb4, 0x7fbc, 0x7fbf, 0x7fc0, 0x7fc3, 0x7fc8,
- 0x7fce, 0x7fcf, 0x7fdb, 0x7fdf, 0x7fe3, 0x7fe5, 0x7fe8, 0x7fec,
- 0x7fee, 0x7fef, 0x7ff2, 0x7ffa, 0x7ffd, 0x7ffe, 0x7fff, 0x8007,
- 0x8008, 0x800a, 0x800d, 0x800e, 0x800f, 0x8011, 0x8013, 0x8014,
- 0x8016, 0x801d, 0x801e, 0x801f, 0x8020, 0x8024, 0x8026, 0x802c,
- 0x802e, 0x8030, 0x8034, 0x8035, 0x8037, 0x8039, 0x803a, 0x803c,
- 0x803e, 0x8040, 0x8044, 0x8060, 0x8064, 0x8066, 0x806d, 0x8071,
- 0x8075, 0x8081, 0x8088, 0x808e, 0x809c, 0x809e, 0x80a6, 0x80a7,
- 0x80ab, 0x80b8, 0x80b9, 0x80c8, 0x80cd, 0x80cf, 0x80d2, 0x80d4,
- 0x80d5, 0x80d7, 0x80d8, 0x80e0, 0x80ed, 0x80ee, 0x80f0, 0x80f2,
- 0x80f3, 0x80f6, 0x80f9, 0x80fa, 0x80fe, 0x8103, 0x810b, 0x8116,
- 0x8117, 0x8118, 0x811c, 0x811e, 0x8120, 0x8124, 0x8127, 0x812c,
- 0x8130, 0x8135, 0x813a, 0x813c, 0x8145, 0x8147, 0x814a, 0x814c,
- 0x8152, 0x8157, 0x8160, 0x8161, 0x8167, 0x8168, 0x8169, 0x816d,
- 0x816f, 0x8177, 0x8181, 0x8190, 0x8184, 0x8185, 0x8186, 0x818b,
- 0x818e, 0x8196, 0x8198, 0x819b, 0x819e, 0x81a2, 0x81ae, 0x81b2,
- 0x81b4, 0x81bb, 0x81cb, 0x81c3, 0x81c5, 0x81ca, 0x81ce, 0x81cf,
- 0x81d5, 0x81d7, 0x81db, 0x81dd, 0x81de, 0x81e1, 0x81e4, 0x81eb,
- 0x81ec, 0x81f0, 0x81f1, 0x81f2, 0x81f5, 0x81f6, 0x81f8, 0x81f9,
- 0x81fd, 0x81ff, 0x8200, 0x8203, 0x820f, 0x8213, 0x8214, 0x8219,
- 0x821a, 0x821d, 0x8221, 0x8222, 0x8228, 0x8232, 0x8234, 0x823a,
- 0x8243, 0x8244, 0x8245, 0x8246, 0x824b, 0x824e, 0x824f, 0x8251,
- 0x8256, 0x825c, 0x8260, 0x8263, 0x8267, 0x826d, 0x8274, 0x827b,
- 0x827d, 0x827f, 0x8280, 0x8281, 0x8283, 0x8284, 0x8287, 0x8289,
- 0x828a, 0x828e, 0x8291, 0x8294, 0x8296, 0x8298, 0x829a, 0x829b,
- 0x82a0, 0x82a1, 0x82a3, 0x82a4, 0x82a7, 0x82a8, 0x82a9, 0x82aa,
- 0x82ae, 0x82b0, 0x82b2, 0x82b4, 0x82b7, 0x82ba, 0x82bc, 0x82be,
- 0x82bf, 0x82c6, 0x82d0, 0x82d5, 0x82da, 0x82e0, 0x82e2, 0x82e4,
- 0x82e8, 0x82ea, 0x82ed, 0x82ef, 0x82f6, 0x82f7, 0x82fd, 0x82fe,
- 0x8300, 0x8301, 0x8307, 0x8308, 0x830a, 0x830b, 0x8354, 0x831b,
- 0x831d, 0x831e, 0x831f, 0x8321, 0x8322, 0x832c, 0x832d, 0x832e,
- 0x8330, 0x8333, 0x8337, 0x833a, 0x833c, 0x833d, 0x8342, 0x8343,
- 0x8344, 0x8347, 0x834d, 0x834e, 0x8351, 0x8355, 0x8356, 0x8357,
- 0x8370, 0x8378, 0x837d, 0x837f, 0x8380, 0x8382, 0x8384, 0x8386,
- 0x838d, 0x8392, 0x8394, 0x8395, 0x8398, 0x8399, 0x839b, 0x839c,
- 0x839d, 0x83a6, 0x83a7, 0x83a9, 0x83ac, 0x83be, 0x83bf, 0x83c0,
- 0x83c7, 0x83c9, 0x83cf, 0x83d0, 0x83d1, 0x83d4, 0x83dd, 0x8353,
- 0x83e8, 0x83ea, 0x83f6, 0x83f8, 0x83f9, 0x83fc, 0x8401, 0x8406,
- 0x840a, 0x840f, 0x8411, 0x8415, 0x8419, 0x83ad, 0x842f, 0x8439,
- 0x8445, 0x8447, 0x8448, 0x844a, 0x844d, 0x844f, 0x8451, 0x8452,
- 0x8456, 0x8458, 0x8459, 0x845a, 0x845c, 0x8460, 0x8464, 0x8465,
- 0x8467, 0x846a, 0x8470, 0x8473, 0x8474, 0x8476, 0x8478, 0x847c,
- 0x847d, 0x8481, 0x8485, 0x8492, 0x8493, 0x8495, 0x849e, 0x84a6,
- 0x84a8, 0x84a9, 0x84aa, 0x84af, 0x84b1, 0x84b4, 0x84ba, 0x84bd,
- 0x84be, 0x84c0, 0x84c2, 0x84c7, 0x84c8, 0x84cc, 0x84cf, 0x84d3,
- 0x84dc, 0x84e7, 0x84ea, 0x84ef, 0x84f0, 0x84f1, 0x84f2, 0x84f7,
- 0x8532, 0x84fa, 0x84fb, 0x84fd, 0x8502, 0x8503, 0x8507, 0x850c,
- 0x850e, 0x8510, 0x851c, 0x851e, 0x8522, 0x8523, 0x8524, 0x8525,
- 0x8527, 0x852a, 0x852b, 0x852f, 0x8533, 0x8534, 0x8536, 0x853f,
- 0x8546, 0x854f, 0x8550, 0x8551, 0x8552, 0x8553, 0x8556, 0x8559,
- 0x855c, 0x855d, 0x855e, 0x855f, 0x8560, 0x8561, 0x8562, 0x8564,
- 0x856b, 0x856f, 0x8579, 0x857a, 0x857b, 0x857d, 0x857f, 0x8581,
- 0x8585, 0x8586, 0x8589, 0x858b, 0x858c, 0x858f, 0x8593, 0x8598,
- 0x859d, 0x859f, 0x85a0, 0x85a2, 0x85a5, 0x85a7, 0x85b4, 0x85b6,
- 0x85b7, 0x85b8, 0x85bc, 0x85bd, 0x85be, 0x85bf, 0x85c2, 0x85c7,
- 0x85ca, 0x85cb, 0x85ce, 0x85ad, 0x85d8, 0x85da, 0x85df, 0x85e0,
- 0x85e6, 0x85e8, 0x85ed, 0x85f3, 0x85f6, 0x85fc, 0x85ff, 0x8600,
- 0x8604, 0x8605, 0x860d, 0x860e, 0x8610, 0x8611, 0x8612, 0x8618,
- 0x8619, 0x861b, 0x861e, 0x8621, 0x8627, 0x8629, 0x8636, 0x8638,
- 0x863a, 0x863c, 0x863d, 0x8640, 0x8642, 0x8646, 0x8652, 0x8653,
- 0x8656, 0x8657, 0x8658, 0x8659, 0x865d, 0x8660, 0x8661, 0x8662,
- 0x8663, 0x8664, 0x8669, 0x866c, 0x866f, 0x8675, 0x8676, 0x8677,
- 0x867a, 0x868d, 0x8691, 0x8696, 0x8698, 0x869a, 0x869c, 0x86a1,
- 0x86a6, 0x86a7, 0x86a8, 0x86ad, 0x86b1, 0x86b3, 0x86b4, 0x86b5,
- 0x86b7, 0x86b8, 0x86b9, 0x86bf, 0x86c0, 0x86c1, 0x86c3, 0x86c5,
- 0x86d1, 0x86d2, 0x86d5, 0x86d7, 0x86da, 0x86dc, 0x86e0, 0x86e3,
- 0x86e5, 0x86e7, 0x8688, 0x86fa, 0x86fc, 0x86fd, 0x8704, 0x8705,
- 0x8707, 0x870b, 0x870e, 0x870f, 0x8710, 0x8713, 0x8714, 0x8719,
- 0x871e, 0x871f, 0x8721, 0x8723, 0x8728, 0x872e, 0x872f, 0x8731,
- 0x8732, 0x8739, 0x873a, 0x873c, 0x873d, 0x873e, 0x8740, 0x8743,
- 0x8745, 0x874d, 0x8758, 0x875d, 0x8761, 0x8764, 0x8765, 0x876f,
- 0x8771, 0x8772, 0x877b, 0x8783, 0x8784, 0x8785, 0x8786, 0x8787,
- 0x8788, 0x8789, 0x878b, 0x878c, 0x8790, 0x8793, 0x8795, 0x8797,
- 0x8798, 0x8799, 0x879e, 0x87a0, 0x87a3, 0x87a7, 0x87ac, 0x87ad,
- 0x87ae, 0x87b1, 0x87b5, 0x87be, 0x87bf, 0x87c1, 0x87c8, 0x87c9,
- 0x87ca, 0x87ce, 0x87d5, 0x87d6, 0x87d9, 0x87da, 0x87dc, 0x87df,
- 0x87e2, 0x87e3, 0x87e4, 0x87ea, 0x87eb, 0x87ed, 0x87f1, 0x87f3,
- 0x87f8, 0x87fa, 0x87ff, 0x8801, 0x8803, 0x8806, 0x8809, 0x880a,
- 0x880b, 0x8810, 0x8819, 0x8812, 0x8813, 0x8814, 0x8818, 0x881a,
- 0x881b, 0x881c, 0x881e, 0x881f, 0x8828, 0x882d, 0x882e, 0x8830,
- 0x8832, 0x8835, 0x883a, 0x883c, 0x8841, 0x8843, 0x8845, 0x8848,
- 0x8849, 0x884a, 0x884b, 0x884e, 0x8851, 0x8855, 0x8856, 0x8858,
- 0x885a, 0x885c, 0x885f, 0x8860, 0x8864, 0x8869, 0x8871, 0x8879,
- 0x887b, 0x8880, 0x8898, 0x889a, 0x889b, 0x889c, 0x889f, 0x88a0,
- 0x88a8, 0x88aa, 0x88ba, 0x88bd, 0x88be, 0x88c0, 0x88ca, 0x88cb,
- 0x88cc, 0x88cd, 0x88ce, 0x88d1, 0x88d2, 0x88d3, 0x88db, 0x88de,
- 0x88e7, 0x88ef, 0x88f0, 0x88f1, 0x88f5, 0x88f7, 0x8901, 0x8906,
- 0x890d, 0x890e, 0x890f, 0x8915, 0x8916, 0x8918, 0x8919, 0x891a,
- 0x891c, 0x8920, 0x8926, 0x8927, 0x8928, 0x8930, 0x8931, 0x8932,
- 0x8935, 0x8939, 0x893a, 0x893e, 0x8940, 0x8942, 0x8945, 0x8946,
- 0x8949, 0x894f, 0x8952, 0x8957, 0x895a, 0x895b, 0x895c, 0x8961,
- 0x8962, 0x8963, 0x896b, 0x896e, 0x8970, 0x8973, 0x8975, 0x897a,
- 0x897b, 0x897c, 0x897d, 0x8989, 0x898d, 0x8990, 0x8994, 0x8995,
- 0x899b, 0x899c, 0x899f, 0x89a0, 0x89a5, 0x89b0, 0x89b4, 0x89b5,
- 0x89b6, 0x89b7, 0x89bc, 0x89d4, 0x89d5, 0x89d6, 0x89d7, 0x89d8,
- 0x89e5, 0x89e9, 0x89eb, 0x89ed, 0x89f1, 0x89f3, 0x89f6, 0x89f9,
- 0x89fd, 0x89ff, 0x8a04, 0x8a05, 0x8a07, 0x8a0f, 0x8a11, 0x8a12,
- 0x8a14, 0x8a15, 0x8a1e, 0x8a20, 0x8a22, 0x8a24, 0x8a26, 0x8a2b,
- 0x8a2c, 0x8a2f, 0x8a35, 0x8a37, 0x8a3d, 0x8a3e, 0x8a40, 0x8a43,
- 0x8a45, 0x8a47, 0x8a49, 0x8a4d, 0x8a4e, 0x8a53, 0x8a56, 0x8a57,
- 0x8a58, 0x8a5c, 0x8a5d, 0x8a61, 0x8a65, 0x8a67, 0x8a75, 0x8a76,
- 0x8a77, 0x8a79, 0x8a7a, 0x8a7b, 0x8a7e, 0x8a7f, 0x8a80, 0x8a83,
- 0x8a86, 0x8a8b, 0x8a8f, 0x8a90, 0x8a92, 0x8a96, 0x8a97, 0x8a99,
- 0x8a9f, 0x8aa7, 0x8aa9, 0x8aae, 0x8aaf, 0x8ab3, 0x8ab6, 0x8ab7,
- 0x8abb, 0x8abe, 0x8ac3, 0x8ac6, 0x8ac8, 0x8ac9, 0x8aca, 0x8ad1,
- 0x8ad3, 0x8ad4, 0x8ad5, 0x8ad7, 0x8add, 0x8adf, 0x8aec, 0x8af0,
- 0x8af4, 0x8af5, 0x8af6, 0x8afc, 0x8aff, 0x8b05, 0x8b06, 0x8b0b,
- 0x8b11, 0x8b1c, 0x8b1e, 0x8b1f, 0x8b0a, 0x8b2d, 0x8b30, 0x8b37,
- 0x8b3c, 0x8b42, 0x8b43, 0x8b44, 0x8b45, 0x8b46, 0x8b48, 0x8b52,
- 0x8b53, 0x8b54, 0x8b59, 0x8b4d, 0x8b5e, 0x8b63, 0x8b6d, 0x8b76,
- 0x8b78, 0x8b79, 0x8b7c, 0x8b7e, 0x8b81, 0x8b84, 0x8b85, 0x8b8b,
- 0x8b8d, 0x8b8f, 0x8b94, 0x8b95, 0x8b9c, 0x8b9e, 0x8b9f, 0x8c38,
- 0x8c39, 0x8c3d, 0x8c3e, 0x8c45, 0x8c47, 0x8c49, 0x8c4b, 0x8c4f,
- 0x8c51, 0x8c53, 0x8c54, 0x8c57, 0x8c58, 0x8c5b, 0x8c5d, 0x8c59,
- 0x8c63, 0x8c64, 0x8c66, 0x8c68, 0x8c69, 0x8c6d, 0x8c73, 0x8c75,
- 0x8c76, 0x8c7b, 0x8c7e, 0x8c86, 0x8c87, 0x8c8b, 0x8c90, 0x8c92,
- 0x8c93, 0x8c99, 0x8c9b, 0x8c9c, 0x8ca4, 0x8cb9, 0x8cba, 0x8cc5,
- 0x8cc6, 0x8cc9, 0x8ccb, 0x8ccf, 0x8cd6, 0x8cd5, 0x8cd9, 0x8cdd,
- 0x8ce1, 0x8ce8, 0x8cec, 0x8cef, 0x8cf0, 0x8cf2, 0x8cf5, 0x8cf7,
- 0x8cf8, 0x8cfe, 0x8cff, 0x8d01, 0x8d03, 0x8d09, 0x8d12, 0x8d17,
- 0x8d1b, 0x8d65, 0x8d69, 0x8d6c, 0x8d6e, 0x8d7f, 0x8d82, 0x8d84,
- 0x8d88, 0x8d8d, 0x8d90, 0x8d91, 0x8d95, 0x8d9e, 0x8d9f, 0x8da0,
- 0x8da6, 0x8dab, 0x8dac, 0x8daf, 0x8db2, 0x8db5, 0x8db7, 0x8db9,
- 0x8dbb, 0x8dc0, 0x8dc5, 0x8dc6, 0x8dc7, 0x8dc8, 0x8dca, 0x8dce,
- 0x8dd1, 0x8dd4, 0x8dd5, 0x8dd7, 0x8dd9, 0x8de4, 0x8de5, 0x8de7,
- 0x8dec, 0x8df0, 0x8dbc, 0x8df1, 0x8df2, 0x8df4, 0x8dfd, 0x8e01,
- 0x8e04, 0x8e05, 0x8e06, 0x8e0b, 0x8e11, 0x8e14, 0x8e16, 0x8e20,
- 0x8e21, 0x8e22, 0x8e23, 0x8e26, 0x8e27, 0x8e31, 0x8e33, 0x8e36,
- 0x8e37, 0x8e38, 0x8e39, 0x8e3d, 0x8e40, 0x8e41, 0x8e4b, 0x8e4d,
- 0x8e4e, 0x8e4f, 0x8e54, 0x8e5b, 0x8e5c, 0x8e5d, 0x8e5e, 0x8e61,
- 0x8e62, 0x8e69, 0x8e6c, 0x8e6d, 0x8e6f, 0x8e70, 0x8e71, 0x8e79,
- 0x8e7a, 0x8e7b, 0x8e82, 0x8e83, 0x8e89, 0x8e90, 0x8e92, 0x8e95,
- 0x8e9a, 0x8e9b, 0x8e9d, 0x8e9e, 0x8ea2, 0x8ea7, 0x8ea9, 0x8ead,
- 0x8eae, 0x8eb3, 0x8eb5, 0x8eba, 0x8ebb, 0x8ec0, 0x8ec1, 0x8ec3,
- 0x8ec4, 0x8ec7, 0x8ecf, 0x8ed1, 0x8ed4, 0x8edc, 0x8ee8, 0x8eee,
- 0x8ef0, 0x8ef1, 0x8ef7, 0x8ef9, 0x8efa, 0x8eed, 0x8f00, 0x8f02,
- 0x8f07, 0x8f08, 0x8f0f, 0x8f10, 0x8f16, 0x8f17, 0x8f18, 0x8f1e,
- 0x8f20, 0x8f21, 0x8f23, 0x8f25, 0x8f27, 0x8f28, 0x8f2c, 0x8f2d,
- 0x8f2e, 0x8f34, 0x8f35, 0x8f36, 0x8f37, 0x8f3a, 0x8f40, 0x8f41,
- 0x8f43, 0x8f47, 0x8f4f, 0x8f51, 0x8f52, 0x8f53, 0x8f54, 0x8f55,
- 0x8f58, 0x8f5d, 0x8f5e, 0x8f65, 0x8f9d, 0x8fa0, 0x8fa1, 0x8fa4,
- 0x8fa5, 0x8fa6, 0x8fb5, 0x8fb6, 0x8fb8, 0x8fbe, 0x8fc0, 0x8fc1,
- 0x8fc6, 0x8fca, 0x8fcb, 0x8fcd, 0x8fd0, 0x8fd2, 0x8fd3, 0x8fd5,
- 0x8fe0, 0x8fe3, 0x8fe4, 0x8fe8, 0x8fee, 0x8ff1, 0x8ff5, 0x8ff6,
- 0x8ffb, 0x8ffe, 0x9002, 0x9004, 0x9008, 0x900c, 0x9018, 0x901b,
- 0x9028, 0x9029, 0x902f, 0x902a, 0x902c, 0x902d, 0x9033, 0x9034,
- 0x9037, 0x903f, 0x9043, 0x9044, 0x904c, 0x905b, 0x905d, 0x9062,
- 0x9066, 0x9067, 0x906c, 0x9070, 0x9074, 0x9079, 0x9085, 0x9088,
- 0x908b, 0x908c, 0x908e, 0x9090, 0x9095, 0x9097, 0x9098, 0x9099,
- 0x909b, 0x90a0, 0x90a1, 0x90a2, 0x90a5, 0x90b0, 0x90b2, 0x90b3,
- 0x90b4, 0x90b6, 0x90bd, 0x90cc, 0x90be, 0x90c3, 0x90c4, 0x90c5,
- 0x90c7, 0x90c8, 0x90d5, 0x90d7, 0x90d8, 0x90d9, 0x90dc, 0x90dd,
- 0x90df, 0x90e5, 0x90d2, 0x90f6, 0x90eb, 0x90ef, 0x90f0, 0x90f4,
- 0x90fe, 0x90ff, 0x9100, 0x9104, 0x9105, 0x9106, 0x9108, 0x910d,
- 0x9110, 0x9114, 0x9116, 0x9117, 0x9118, 0x911a, 0x911c, 0x911e,
- 0x9120, 0x9125, 0x9122, 0x9123, 0x9127, 0x9129, 0x912e, 0x912f,
- 0x9131, 0x9134, 0x9136, 0x9137, 0x9139, 0x913a, 0x913c, 0x913d,
- 0x9143, 0x9147, 0x9148, 0x914f, 0x9153, 0x9157, 0x9159, 0x915a,
- 0x915b, 0x9161, 0x9164, 0x9167, 0x916d, 0x9174, 0x9179, 0x917a,
- 0x917b, 0x9181, 0x9183, 0x9185, 0x9186, 0x918a, 0x918e, 0x9191,
- 0x9193, 0x9194, 0x9195, 0x9198, 0x919e, 0x91a1, 0x91a6, 0x91a8,
- 0x91ac, 0x91ad, 0x91ae, 0x91b0, 0x91b1, 0x91b2, 0x91b3, 0x91b6,
- 0x91bb, 0x91bc, 0x91bd, 0x91bf, 0x91c2, 0x91c3, 0x91c5, 0x91d3,
- 0x91d4, 0x91d7, 0x91d9, 0x91da, 0x91de, 0x91e4, 0x91e5, 0x91e9,
- 0x91ea, 0x91ec, 0x91ed, 0x91ee, 0x91ef, 0x91f0, 0x91f1, 0x91f7,
- 0x91f9, 0x91fb, 0x91fd, 0x9200, 0x9201, 0x9204, 0x9205, 0x9206,
- 0x9207, 0x9209, 0x920a, 0x920c, 0x9210, 0x9212, 0x9213, 0x9216,
- 0x9218, 0x921c, 0x921d, 0x9223, 0x9224, 0x9225, 0x9226, 0x9228,
- 0x922e, 0x922f, 0x9230, 0x9233, 0x9235, 0x9236, 0x9238, 0x9239,
- 0x923a, 0x923c, 0x923e, 0x9240, 0x9242, 0x9243, 0x9246, 0x9247,
- 0x924a, 0x924d, 0x924e, 0x924f, 0x9251, 0x9258, 0x9259, 0x925c,
- 0x925d, 0x9260, 0x9261, 0x9265, 0x9267, 0x9268, 0x9269, 0x926e,
- 0x926f, 0x9270, 0x9275, 0x9276, 0x9277, 0x9278, 0x9279, 0x927b,
- 0x927c, 0x927d, 0x927f, 0x9288, 0x9289, 0x928a, 0x928d, 0x928e,
- 0x9292, 0x9297, 0x9299, 0x929f, 0x92a0, 0x92a4, 0x92a5, 0x92a7,
- 0x92a8, 0x92ab, 0x92af, 0x92b2, 0x92b6, 0x92b8, 0x92ba, 0x92bb,
- 0x92bc, 0x92bd, 0x92bf, 0x92c0, 0x92c1, 0x92c2, 0x92c3, 0x92c5,
- 0x92c6, 0x92c7, 0x92c8, 0x92cb, 0x92cc, 0x92cd, 0x92ce, 0x92d0,
- 0x92d3, 0x92d5, 0x92d7, 0x92d8, 0x92d9, 0x92dc, 0x92dd, 0x92df,
- 0x92e0, 0x92e1, 0x92e3, 0x92e5, 0x92e7, 0x92e8, 0x92ec, 0x92ee,
- 0x92f0, 0x92f9, 0x92fb, 0x92ff, 0x9300, 0x9302, 0x9308, 0x930d,
- 0x9311, 0x9314, 0x9315, 0x931c, 0x931d, 0x931e, 0x931f, 0x9321,
- 0x9324, 0x9325, 0x9327, 0x9329, 0x932a, 0x9333, 0x9334, 0x9336,
- 0x9337, 0x9347, 0x9348, 0x9349, 0x9350, 0x9351, 0x9352, 0x9355,
- 0x9357, 0x9358, 0x935a, 0x935e, 0x9364, 0x9365, 0x9367, 0x9369,
- 0x936a, 0x936d, 0x936f, 0x9370, 0x9371, 0x9373, 0x9374, 0x9376,
- 0x937a, 0x937d, 0x937f, 0x9380, 0x9381, 0x9382, 0x9388, 0x938a,
- 0x938b, 0x938d, 0x938f, 0x9392, 0x9395, 0x9398, 0x939b, 0x939e,
- 0x93a1, 0x93a3, 0x93a4, 0x93a6, 0x93a8, 0x93ab, 0x93b4, 0x93b5,
- 0x93b6, 0x93ba, 0x93a9, 0x93c1, 0x93c4, 0x93c5, 0x93c6, 0x93c7,
- 0x93c9, 0x93ca, 0x93cb, 0x93cc, 0x93cd, 0x93d3, 0x93d9, 0x93dc,
- 0x93de, 0x93df, 0x93e2, 0x93e6, 0x93e7, 0x93f9, 0x93f7, 0x93f8,
- 0x93fa, 0x93fb, 0x93fd, 0x9401, 0x9402, 0x9404, 0x9408, 0x9409,
- 0x940d, 0x940e, 0x940f, 0x9415, 0x9416, 0x9417, 0x941f, 0x942e,
- 0x942f, 0x9431, 0x9432, 0x9433, 0x9434, 0x943b, 0x943f, 0x943d,
- 0x9443, 0x9445, 0x9448, 0x944a, 0x944c, 0x9455, 0x9459, 0x945c,
- 0x945f, 0x9461, 0x9463, 0x9468, 0x946b, 0x946d, 0x946e, 0x946f,
- 0x9471, 0x9472, 0x9484, 0x9483, 0x9578, 0x9579, 0x957e, 0x9584,
- 0x9588, 0x958c, 0x958d, 0x958e, 0x959d, 0x959e, 0x959f, 0x95a1,
- 0x95a6, 0x95a9, 0x95ab, 0x95ac, 0x95b4, 0x95b6, 0x95ba, 0x95bd,
- 0x95bf, 0x95c6, 0x95c8, 0x95c9, 0x95cb, 0x95d0, 0x95d1, 0x95d2,
- 0x95d3, 0x95d9, 0x95da, 0x95dd, 0x95de, 0x95df, 0x95e0, 0x95e4,
- 0x95e6, 0x961d, 0x961e, 0x9622, 0x9624, 0x9625, 0x9626, 0x962c,
- 0x9631, 0x9633, 0x9637, 0x9638, 0x9639, 0x963a, 0x963c, 0x963d,
- 0x9641, 0x9652, 0x9654, 0x9656, 0x9657, 0x9658, 0x9661, 0x966e,
- 0x9674, 0x967b, 0x967c, 0x967e, 0x967f, 0x9681, 0x9682, 0x9683,
- 0x9684, 0x9689, 0x9691, 0x9696, 0x969a, 0x969d, 0x969f, 0x96a4,
- 0x96a5, 0x96a6, 0x96a9, 0x96ae, 0x96af, 0x96b3, 0x96ba, 0x96ca,
- 0x96d2, 0x5db2, 0x96d8, 0x96da, 0x96dd, 0x96de, 0x96df, 0x96e9,
- 0x96ef, 0x96f1, 0x96fa, 0x9702, 0x9703, 0x9705, 0x9709, 0x971a,
- 0x971b, 0x971d, 0x9721, 0x9722, 0x9723, 0x9728, 0x9731, 0x9733,
- 0x9741, 0x9743, 0x974a, 0x974e, 0x974f, 0x9755, 0x9757, 0x9758,
- 0x975a, 0x975b, 0x9763, 0x9767, 0x976a, 0x976e, 0x9773, 0x9776,
- 0x9777, 0x9778, 0x977b, 0x977d, 0x977f, 0x9780, 0x9789, 0x9795,
- 0x9796, 0x9797, 0x9799, 0x979a, 0x979e, 0x979f, 0x97a2, 0x97ac,
- 0x97ae, 0x97b1, 0x97b2, 0x97b5, 0x97b6, 0x97b8, 0x97b9, 0x97ba,
- 0x97bc, 0x97be, 0x97bf, 0x97c1, 0x97c4, 0x97c5, 0x97c7, 0x97c9,
- 0x97ca, 0x97cc, 0x97cd, 0x97ce, 0x97d0, 0x97d1, 0x97d4, 0x97d7,
- 0x97d8, 0x97d9, 0x97dd, 0x97de, 0x97e0, 0x97db, 0x97e1, 0x97e4,
- 0x97ef, 0x97f1, 0x97f4, 0x97f7, 0x97f8, 0x97fa, 0x9807, 0x980a,
- 0x9819, 0x980d, 0x980e, 0x9814, 0x9816, 0x981c, 0x981e, 0x9820,
- 0x9823, 0x9826, 0x982b, 0x982e, 0x982f, 0x9830, 0x9832, 0x9833,
- 0x9835, 0x9825, 0x983e, 0x9844, 0x9847, 0x984a, 0x9851, 0x9852,
- 0x9853, 0x9856, 0x9857, 0x9859, 0x985a, 0x9862, 0x9863, 0x9865,
- 0x9866, 0x986a, 0x986c, 0x98ab, 0x98ad, 0x98ae, 0x98b0, 0x98b4,
- 0x98b7, 0x98b8, 0x98ba, 0x98bb, 0x98bf, 0x98c2, 0x98c5, 0x98c8,
- 0x98cc, 0x98e1, 0x98e3, 0x98e5, 0x98e6, 0x98e7, 0x98ea, 0x98f3,
- 0x98f6, 0x9902, 0x9907, 0x9908, 0x9911, 0x9915, 0x9916, 0x9917,
- 0x991a, 0x991b, 0x991c, 0x991f, 0x9922, 0x9926, 0x9927, 0x992b,
- 0x9931, 0x9932, 0x9933, 0x9934, 0x9935, 0x9939, 0x993a, 0x993b,
- 0x993c, 0x9940, 0x9941, 0x9946, 0x9947, 0x9948, 0x994d, 0x994e,
- 0x9954, 0x9958, 0x9959, 0x995b, 0x995c, 0x995e, 0x995f, 0x9960,
- 0x999b, 0x999d, 0x999f, 0x99a6, 0x99b0, 0x99b1, 0x99b2, 0x99b5,
- 0x99b9, 0x99ba, 0x99bd, 0x99bf, 0x99c3, 0x99c9, 0x99d3, 0x99d4,
- 0x99d9, 0x99da, 0x99dc, 0x99de, 0x99e7, 0x99ea, 0x99eb, 0x99ec,
- 0x99f0, 0x99f4, 0x99f5, 0x99f9, 0x99fd, 0x99fe, 0x9a02, 0x9a03,
- 0x9a04, 0x9a0b, 0x9a0c, 0x9a10, 0x9a11, 0x9a16, 0x9a1e, 0x9a20,
- 0x9a22, 0x9a23, 0x9a24, 0x9a27, 0x9a2d, 0x9a2e, 0x9a33, 0x9a35,
- 0x9a36, 0x9a38, 0x9a47, 0x9a41, 0x9a44, 0x9a4a, 0x9a4b, 0x9a4c,
- 0x9a4e, 0x9a51, 0x9a54, 0x9a56, 0x9a5d, 0x9aaa, 0x9aac, 0x9aae,
- 0x9aaf, 0x9ab2, 0x9ab4, 0x9ab5, 0x9ab6, 0x9ab9, 0x9abb, 0x9abe,
- 0x9abf, 0x9ac1, 0x9ac3, 0x9ac6, 0x9ac8, 0x9ace, 0x9ad0, 0x9ad2,
- 0x9ad5, 0x9ad6, 0x9ad7, 0x9adb, 0x9adc, 0x9ae0, 0x9ae4, 0x9ae5,
- 0x9ae7, 0x9ae9, 0x9aec, 0x9af2, 0x9af3, 0x9af5, 0x9af9, 0x9afa,
- 0x9afd, 0x9aff, 0x9b00, 0x9b01, 0x9b02, 0x9b03, 0x9b04, 0x9b05,
- 0x9b08, 0x9b09, 0x9b0b, 0x9b0c, 0x9b0d, 0x9b0e, 0x9b10, 0x9b12,
- 0x9b16, 0x9b19, 0x9b1b, 0x9b1c, 0x9b20, 0x9b26, 0x9b2b, 0x9b2d,
- 0x9b33, 0x9b34, 0x9b35, 0x9b37, 0x9b39, 0x9b3a, 0x9b3d, 0x9b48,
- 0x9b4b, 0x9b4c, 0x9b55, 0x9b56, 0x9b57, 0x9b5b, 0x9b5e, 0x9b61,
- 0x9b63, 0x9b65, 0x9b66, 0x9b68, 0x9b6a, 0x9b6b, 0x9b6c, 0x9b6d,
- 0x9b6e, 0x9b73, 0x9b75, 0x9b77, 0x9b78, 0x9b79, 0x9b7f, 0x9b80,
- 0x9b84, 0x9b85, 0x9b86, 0x9b87, 0x9b89, 0x9b8a, 0x9b8b, 0x9b8d,
- 0x9b8f, 0x9b90, 0x9b94, 0x9b9a, 0x9b9d, 0x9b9e, 0x9ba6, 0x9ba7,
- 0x9ba9, 0x9bac, 0x9bb0, 0x9bb1, 0x9bb2, 0x9bb7, 0x9bb8, 0x9bbb,
- 0x9bbc, 0x9bbe, 0x9bbf, 0x9bc1, 0x9bc7, 0x9bc8, 0x9bce, 0x9bd0,
- 0x9bd7, 0x9bd8, 0x9bdd, 0x9bdf, 0x9be5, 0x9be7, 0x9bea, 0x9beb,
- 0x9bef, 0x9bf3, 0x9bf7, 0x9bf8, 0x9bf9, 0x9bfa, 0x9bfd, 0x9bff,
- 0x9c00, 0x9c02, 0x9c0b, 0x9c0f, 0x9c11, 0x9c16, 0x9c18, 0x9c19,
- 0x9c1a, 0x9c1c, 0x9c1e, 0x9c22, 0x9c23, 0x9c26, 0x9c27, 0x9c28,
- 0x9c29, 0x9c2a, 0x9c31, 0x9c35, 0x9c36, 0x9c37, 0x9c3d, 0x9c41,
- 0x9c43, 0x9c44, 0x9c45, 0x9c49, 0x9c4a, 0x9c4e, 0x9c4f, 0x9c50,
- 0x9c53, 0x9c54, 0x9c56, 0x9c58, 0x9c5b, 0x9c5d, 0x9c5e, 0x9c5f,
- 0x9c63, 0x9c69, 0x9c6a, 0x9c5c, 0x9c6b, 0x9c68, 0x9c6e, 0x9c70,
- 0x9c72, 0x9c75, 0x9c77, 0x9c7b, 0x9ce6, 0x9cf2, 0x9cf7, 0x9cf9,
- 0x9d0b, 0x9d02, 0x9d11, 0x9d17, 0x9d18, 0x9d1c, 0x9d1d, 0x9d1e,
- 0x9d2f, 0x9d30, 0x9d32, 0x9d33, 0x9d34, 0x9d3a, 0x9d3c, 0x9d45,
- 0x9d3d, 0x9d42, 0x9d43, 0x9d47, 0x9d4a, 0x9d53, 0x9d54, 0x9d5f,
- 0x9d63, 0x9d62, 0x9d65, 0x9d69, 0x9d6a, 0x9d6b, 0x9d70, 0x9d76,
- 0x9d77, 0x9d7b, 0x9d7c, 0x9d7e, 0x9d83, 0x9d84, 0x9d86, 0x9d8a,
- 0x9d8d, 0x9d8e, 0x9d92, 0x9d93, 0x9d95, 0x9d96, 0x9d97, 0x9d98,
- 0x9da1, 0x9daa, 0x9dac, 0x9dae, 0x9db1, 0x9db5, 0x9db9, 0x9dbc,
- 0x9dbf, 0x9dc3, 0x9dc7, 0x9dc9, 0x9dca, 0x9dd4, 0x9dd5, 0x9dd6,
- 0x9dd7, 0x9dda, 0x9dde, 0x9ddf, 0x9de0, 0x9de5, 0x9de7, 0x9de9,
- 0x9deb, 0x9dee, 0x9df0, 0x9df3, 0x9df4, 0x9dfe, 0x9e0a, 0x9e02,
- 0x9e07, 0x9e0e, 0x9e10, 0x9e11, 0x9e12, 0x9e15, 0x9e16, 0x9e19,
- 0x9e1c, 0x9e1d, 0x9e7a, 0x9e7b, 0x9e7c, 0x9e80, 0x9e82, 0x9e83,
- 0x9e84, 0x9e85, 0x9e87, 0x9e8e, 0x9e8f, 0x9e96, 0x9e98, 0x9e9b,
- 0x9e9e, 0x9ea4, 0x9ea8, 0x9eac, 0x9eae, 0x9eaf, 0x9eb0, 0x9eb3,
- 0x9eb4, 0x9eb5, 0x9ec6, 0x9ec8, 0x9ecb, 0x9ed5, 0x9edf, 0x9ee4,
- 0x9ee7, 0x9eec, 0x9eed, 0x9eee, 0x9ef0, 0x9ef1, 0x9ef2, 0x9ef5,
- 0x9ef8, 0x9eff, 0x9f02, 0x9f03, 0x9f09, 0x9f0f, 0x9f10, 0x9f11,
- 0x9f12, 0x9f14, 0x9f16, 0x9f17, 0x9f19, 0x9f1a, 0x9f1b, 0x9f1f,
- 0x9f22, 0x9f26, 0x9f2a, 0x9f2b, 0x9f2f, 0x9f31, 0x9f32, 0x9f34,
- 0x9f37, 0x9f39, 0x9f3a, 0x9f3c, 0x9f3d, 0x9f3f, 0x9f41, 0x9f43,
- 0x9f44, 0x9f45, 0x9f46, 0x9f47, 0x9f53, 0x9f55, 0x9f56, 0x9f57,
- 0x9f58, 0x9f5a, 0x9f5d, 0x9f5e, 0x9f68, 0x9f69, 0x9f6d, 0x9f6e,
- 0x9f6f, 0x9f70, 0x9f71, 0x9f73, 0x9f75, 0x9f7a, 0x9f7d, 0x9f8f,
- 0x9f90, 0x9f91, 0x9f92, 0x9f94, 0x9f96, 0x9f97, 0x9f9e, 0x9fa1,
- 0x9fa2, 0x9fa3, 0x9fa5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x2003, 0x3001, 0x3002, 0xff0c,
- 0xff0e, 0x30fb, 0xff1a, 0xff1b, 0xff1f, 0xff01, 0x309b, 0x309c
-};
-
-
-const unichar_t unicode_from_big5[] = {
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x3000, 0xff0c, 0x3001, 0x3002, 0xff0e, 0x2022, 0xff1b, 0xff1a,
- 0xff1f, 0xff01, 0xfe30, 0x2026, 0x2025, 0xfe50, 0xff64, 0xfe52,
- 0x00b7, 0xfe54, 0xfe55, 0xfe56, 0xfe57, 0xff5c, 0x2013, 0xfe31,
- 0x2014, 0xfe33, 0x2574, 0xfe34, 0xfe4f, 0xff08, 0xff09, 0xfe35,
- 0xfe36, 0xff5b, 0xff5d, 0xfe37, 0xfe38, 0x3014, 0x3015, 0xfe39,
- 0xfe3a, 0x3010, 0x3011, 0xfe3b, 0xfe3c, 0x300a, 0x300b, 0xfe3d,
- 0xfe3e, 0x3008, 0x3009, 0xfe3f, 0xfe40, 0x300c, 0x300d, 0xfe41,
- 0xfe42, 0x300e, 0x300f, 0xfe43, 0xfe44, 0xfe59, 0xfe5a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xfe5b, 0xfe5c, 0xfe5d, 0xfe5e, 0x2018, 0x2019, 0x201c,
- 0x201d, 0x301d, 0x301e, 0x2035, 0x2032, 0xff03, 0xff06, 0xff0a,
- 0x203b, 0x00a7, 0x3003, 0x25cb, 0x25cf, 0x25b3, 0x25b2, 0x25ce,
- 0x2606, 0x2605, 0x25c7, 0x25c6, 0x25a1, 0x25a0, 0x25bd, 0x25bc,
- 0x32a3, 0x2105, 0x00af, 0xffe3, 0xff3f, 0x02cd, 0xfe49, 0xfe4a,
- 0xfe4d, 0xfe4e, 0xfe4b, 0xfe4c, 0xfe5f, 0xfe60, 0xfe61, 0xff0b,
- 0xff0d, 0x00d7, 0x00f7, 0x00b1, 0x221a, 0xff1c, 0xff1e, 0xff1d,
- 0x2266, 0x2267, 0x2260, 0x221e, 0x2252, 0x2261, 0xfe62, 0xfe63,
- 0xfe64, 0xfe65, 0xfe66, 0x223c, 0x2229, 0x222a, 0x22a5, 0x2220,
- 0x221f, 0x22bf, 0x33d2, 0x33d1, 0x222b, 0x222e, 0x2235, 0x2234,
- 0x2640, 0x2642, 0x2295, 0x2299, 0x2191, 0x2193, 0x2190, 0x2192,
- 0x2196, 0x2197, 0x2199, 0x2198, 0x2225, 0x2223, 0xff0f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xff3c, 0x2215, 0xfe68, 0xff04, 0x00a5, 0x3012, 0x00a2, 0x00a3,
- 0xff05, 0xff20, 0x2103, 0x2109, 0xfe69, 0xfe6a, 0xfe6b, 0x33d5,
- 0x339c, 0x339d, 0x339e, 0x33ce, 0x33a1, 0x338e, 0x338f, 0x33c4,
- 0x00b0, 0x5159, 0x515b, 0x515e, 0x515d, 0x5161, 0x5163, 0x55e7,
- 0x74e9, 0x7cce, 0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586,
- 0x2587, 0x2588, 0x258f, 0x258e, 0x258d, 0x258c, 0x258b, 0x258a,
- 0x2589, 0x253c, 0x2534, 0x252c, 0x2524, 0x251c, 0x2594, 0x2500,
- 0x2502, 0x2595, 0x250c, 0x2510, 0x2514, 0x2518, 0x256d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x256e, 0x2570, 0x256f, 0x2550, 0x255e, 0x256a, 0x2561,
- 0x25e2, 0x25e3, 0x25e5, 0x25e4, 0x2571, 0x2572, 0x2573, 0xff10,
- 0xff11, 0xff12, 0xff13, 0xff14, 0xff15, 0xff16, 0xff17, 0xff18,
- 0xff19, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166,
- 0x2167, 0x2168, 0x2169, 0x3021, 0x3022, 0x3023, 0x3024, 0x3025,
- 0x3026, 0x3027, 0x3028, 0x3029, 0x3038, 0x5344, 0x303a, 0xff21,
- 0xff22, 0xff23, 0xff24, 0xff25, 0xff26, 0xff27, 0xff28, 0xff29,
- 0xff2a, 0xff2b, 0xff2c, 0xff2d, 0xff2e, 0xff2f, 0xff30, 0xff31,
- 0xff32, 0xff33, 0xff34, 0xff35, 0xff36, 0xff37, 0xff38, 0xff39,
- 0xff3a, 0xff41, 0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47,
- 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f,
- 0xff50, 0xff51, 0xff52, 0xff53, 0xff54, 0xff55, 0xff56, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xff57, 0xff58, 0xff59, 0xff5a, 0x0391, 0x0392, 0x0393, 0x0394,
- 0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039a, 0x039b, 0x039c,
- 0x039d, 0x039e, 0x039f, 0x03a0, 0x03a1, 0x03a3, 0x03a4, 0x03a5,
- 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x03b1, 0x03b2, 0x03b3, 0x03b4,
- 0x03b5, 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc,
- 0x03bd, 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3, 0x03c4, 0x03c5,
- 0x03c6, 0x03c7, 0x03c8, 0x03c9, 0x3105, 0x3106, 0x3107, 0x3108,
- 0x3109, 0x310a, 0x310b, 0x310c, 0x310d, 0x310e, 0x310f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116,
- 0x3117, 0x3118, 0x3119, 0x311a, 0x311b, 0x311c, 0x311d, 0x311e,
- 0x311f, 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126,
- 0x3127, 0x3128, 0x3129, 0x02d9, 0x0000, 0x02ca, 0x02c7, 0x02cb,
- 0x2400, 0x2401, 0x2402, 0x2403, 0x2404, 0x2405, 0x2406, 0x2407,
- 0x2408, 0x2409, 0x240a, 0x240b, 0x240c, 0x240d, 0x240e, 0x240f,
- 0x2410, 0x2411, 0x2412, 0x2413, 0x2414, 0x2415, 0x2416, 0x2417,
- 0x2418, 0x2419, 0x241a, 0x241b, 0x241c, 0x241d, 0x241e, 0x241f,
- 0x2421, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4e00, 0x4e59, 0x4e01, 0x4e03, 0x4e43, 0x4e5d, 0x4e86, 0x4e8c,
- 0x4eba, 0x513f, 0x5165, 0x516b, 0x51e0, 0x5200, 0x5201, 0x529b,
- 0x5315, 0x5341, 0x535c, 0x53c8, 0x4e09, 0x4e0b, 0x4e08, 0x4e0a,
- 0x4e2b, 0x4e38, 0x51e1, 0x4e45, 0x4e48, 0x4e5f, 0x4e5e, 0x4e8e,
- 0x4ea1, 0x5140, 0x5203, 0x52fa, 0x5343, 0x53c9, 0x53e3, 0x571f,
- 0x58eb, 0x5915, 0x5927, 0x5973, 0x5b50, 0x5b51, 0x5b53, 0x5bf8,
- 0x5c0f, 0x5c22, 0x5c38, 0x5c71, 0x5ddd, 0x5de5, 0x5df1, 0x5df2,
- 0x5df3, 0x5dfe, 0x5e72, 0x5efe, 0x5f0b, 0x5f13, 0x624d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x4e11, 0x4e10, 0x4e0d, 0x4e2d, 0x4e30, 0x4e39, 0x4e4b,
- 0x5c39, 0x4e88, 0x4e91, 0x4e95, 0x4e92, 0x4e94, 0x4ea2, 0x4ec1,
- 0x4ec0, 0x4ec3, 0x4ec6, 0x4ec7, 0x4ecd, 0x4eca, 0x4ecb, 0x4ec4,
- 0x5143, 0x5141, 0x5167, 0x516d, 0x516e, 0x516c, 0x5197, 0x51f6,
- 0x5206, 0x5207, 0x5208, 0x52fb, 0x52fe, 0x52ff, 0x5316, 0x5339,
- 0x5348, 0x5347, 0x5345, 0x535e, 0x5384, 0x53cb, 0x53ca, 0x53cd,
- 0x58ec, 0x5929, 0x592b, 0x592a, 0x592d, 0x5b54, 0x5c11, 0x5c24,
- 0x5c3a, 0x5c6f, 0x5df4, 0x5e7b, 0x5eff, 0x5f14, 0x5f15, 0x5fc3,
- 0x6208, 0x6236, 0x624b, 0x624e, 0x652f, 0x6587, 0x6597, 0x65a4,
- 0x65b9, 0x65e5, 0x66f0, 0x6708, 0x6728, 0x6b20, 0x6b62, 0x6b79,
- 0x6bcb, 0x6bd4, 0x6bdb, 0x6c0f, 0x6c34, 0x706b, 0x722a, 0x7236,
- 0x723b, 0x7247, 0x7259, 0x725b, 0x72ac, 0x738b, 0x4e19, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4e16, 0x4e15, 0x4e14, 0x4e18, 0x4e3b, 0x4e4d, 0x4e4f, 0x4e4e,
- 0x4ee5, 0x4ed8, 0x4ed4, 0x4ed5, 0x4ed6, 0x4ed7, 0x4ee3, 0x4ee4,
- 0x4ed9, 0x4ede, 0x5145, 0x5144, 0x5189, 0x518a, 0x51ac, 0x51f9,
- 0x51fa, 0x51f8, 0x520a, 0x52a0, 0x529f, 0xe05b, 0x5306, 0x5317,
- 0x531d, 0x4edf, 0x534a, 0x5349, 0x5361, 0x5360, 0x536f, 0x536e,
- 0x53bb, 0x53ef, 0x53e4, 0x53f3, 0x53ec, 0x53ee, 0x53e9, 0x53e8,
- 0x53fc, 0x53f8, 0x53f5, 0x53eb, 0x53e6, 0x53ea, 0x53f2, 0x53f1,
- 0x53f0, 0x53e5, 0x53ed, 0x53fb, 0x56db, 0x56da, 0x5916, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x592e, 0x5931, 0x5974, 0x5976, 0x5b55, 0x5b83, 0x5c3c,
- 0x5de8, 0x5de7, 0x5de6, 0x5e02, 0x5e03, 0x5e73, 0x5e7c, 0x5f01,
- 0x5f18, 0x5f17, 0x5fc5, 0x620a, 0x6253, 0x6254, 0x6252, 0x6251,
- 0x65a5, 0x65e6, 0x672e, 0x672c, 0x672a, 0x672b, 0x672d, 0x6b63,
- 0x6bcd, 0x6c11, 0x6c10, 0x6c38, 0x6c41, 0x6c40, 0x6c3e, 0x72af,
- 0x7384, 0x7389, 0x74dc, 0x74e6, 0x7518, 0x751f, 0x7528, 0x7529,
- 0x7530, 0x7531, 0x7532, 0x7533, 0x758b, 0x767d, 0x76ae, 0x76bf,
- 0x76ee, 0x77db, 0x77e2, 0x77f3, 0x793a, 0x79be, 0x7a74, 0x7acb,
- 0x4e1e, 0x4e1f, 0x4e52, 0x4e53, 0x4e69, 0x4e99, 0x4ea4, 0x4ea6,
- 0x4ea5, 0x4eff, 0x4f09, 0x4f19, 0x4f0a, 0x4f15, 0x4f0d, 0x4f10,
- 0x4f11, 0x4f0f, 0x4ef2, 0x4ef6, 0x4efb, 0x4ef0, 0x4ef3, 0x4efd,
- 0x4f01, 0x4f0b, 0x5149, 0x5147, 0x5146, 0x5148, 0x5168, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5171, 0x518d, 0x51b0, 0x5217, 0x5211, 0x5212, 0x520e, 0x5216,
- 0x52a3, 0x5308, 0x5321, 0x5320, 0x5370, 0x5371, 0x5409, 0x540f,
- 0x540c, 0x540a, 0x5410, 0x5401, 0x540b, 0x5404, 0x5411, 0x540d,
- 0x5408, 0x5403, 0x540e, 0x5406, 0x5412, 0x56e0, 0x56de, 0x56dd,
- 0x5733, 0x5730, 0x5728, 0x572d, 0x572c, 0x572f, 0x5729, 0x5919,
- 0x591a, 0x5937, 0x5938, 0x5984, 0x5978, 0x5983, 0x597d, 0x5979,
- 0x5982, 0x5981, 0x5b57, 0x5b58, 0x5b87, 0x5b88, 0x5b85, 0x5b89,
- 0x5bfa, 0x5c16, 0x5c79, 0x5dde, 0x5e06, 0x5e76, 0x5e74, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5f0f, 0x5f1b, 0x5fd9, 0x5fd6, 0x620e, 0x620c, 0x620d,
- 0x6210, 0x6263, 0x625b, 0x6258, 0x6536, 0x65e9, 0x65e8, 0x65ec,
- 0x65ed, 0x66f2, 0x66f3, 0x6709, 0x673d, 0x6734, 0x6731, 0x6735,
- 0x6b21, 0x6b64, 0x6b7b, 0x6c16, 0x6c5d, 0x6c57, 0x6c59, 0x6c5f,
- 0x6c60, 0x6c50, 0x6c55, 0x6c61, 0x6c5b, 0x6c4d, 0x6c4e, 0x7070,
- 0x725f, 0x725d, 0x767e, 0x7af9, 0x7c73, 0x7cf8, 0x7f36, 0x7f8a,
- 0x7fbd, 0x8001, 0x8003, 0x800c, 0x8012, 0x8033, 0x807f, 0x8089,
- 0x808b, 0x808c, 0x81e3, 0x81ea, 0x81f3, 0x81fc, 0x820c, 0x821b,
- 0x821f, 0x826e, 0x8272, 0x827e, 0x866b, 0x8840, 0x884c, 0x8863,
- 0x897f, 0x9621, 0x4e32, 0x4ea8, 0x4f4d, 0x4f4f, 0x4f47, 0x4f57,
- 0x4f5e, 0x4f34, 0x4f5b, 0x4f55, 0x4f30, 0x4f50, 0x4f51, 0x4f3d,
- 0x4f3a, 0x4f38, 0x4f43, 0x4f54, 0x4f3c, 0x4f46, 0x4f63, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4f5c, 0x4f60, 0x4f2f, 0x4f4e, 0x4f36, 0x4f59, 0x4f5d, 0x4f48,
- 0x4f5a, 0x514c, 0x514b, 0x514d, 0x5175, 0x51b6, 0x51b7, 0x5225,
- 0x5224, 0x5229, 0x522a, 0x5228, 0x52ab, 0x52a9, 0x52aa, 0x52ac,
- 0x5323, 0x5373, 0x5375, 0x541d, 0x542d, 0x541e, 0x543e, 0x5426,
- 0x544e, 0x5427, 0x5446, 0x5443, 0x5433, 0x5448, 0x5442, 0x541b,
- 0x5429, 0x544a, 0x5439, 0x543b, 0x5438, 0x542e, 0x5435, 0x5436,
- 0x5420, 0x543c, 0x5440, 0x5431, 0x542b, 0x541f, 0x542c, 0x56ea,
- 0x56f0, 0x56e4, 0x56eb, 0x574a, 0x5751, 0x5740, 0x574d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5747, 0x574e, 0x573e, 0x5750, 0x574f, 0x573b, 0x58ef,
- 0x593e, 0x599d, 0x5992, 0x59a8, 0x599e, 0x59a3, 0x5999, 0x5996,
- 0x598d, 0x59a4, 0x5993, 0x598a, 0x59a5, 0x5b5d, 0x5b5c, 0x5b5a,
- 0x5b5b, 0x5b8c, 0x5b8b, 0x5b8f, 0x5c2c, 0x5c40, 0x5c41, 0x5c3f,
- 0x5c3e, 0x5c90, 0x5c91, 0x5c94, 0x5c8c, 0x5deb, 0x5e0c, 0x5e8f,
- 0x5e87, 0x5e8a, 0x5ef7, 0x5f04, 0x5f1f, 0x5f64, 0x5f62, 0x5f77,
- 0x5f79, 0x5fd8, 0x5fcc, 0x5fd7, 0x5fcd, 0x5ff1, 0x5feb, 0x5ff8,
- 0x5fea, 0x6212, 0x6211, 0x6284, 0x6297, 0x6296, 0x6280, 0x6276,
- 0x6289, 0x626d, 0x628a, 0x627c, 0x627e, 0x6279, 0x6273, 0x6292,
- 0x626f, 0x6298, 0x626e, 0x6295, 0x6293, 0x6291, 0x6286, 0x6539,
- 0x653b, 0x6538, 0x65f1, 0x66f4, 0x675f, 0x674e, 0x674f, 0x6750,
- 0x6751, 0x675c, 0x6756, 0x675e, 0x6749, 0x6746, 0x6760, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6753, 0x6757, 0x6b65, 0x6bcf, 0x6c42, 0x6c5e, 0x6c99, 0x6c81,
- 0x6c88, 0x6c89, 0x6c85, 0x6c9b, 0x6c6a, 0x6c7a, 0x6c90, 0x6c70,
- 0x6c8c, 0x6c68, 0x6c96, 0x6c92, 0x6c7d, 0x6c83, 0x6c72, 0x6c7e,
- 0x6c74, 0x6c86, 0x6c76, 0x6c8d, 0x6c94, 0x6c98, 0x6c82, 0x7076,
- 0x707c, 0x707d, 0x7078, 0x7262, 0x7261, 0x7260, 0x72c4, 0x72c2,
- 0x7396, 0x752c, 0x752b, 0x7537, 0x7538, 0x7682, 0x76ef, 0x77e3,
- 0x79c1, 0x79c0, 0x79bf, 0x7a76, 0x7cfb, 0x7f55, 0x8096, 0x8093,
- 0x809d, 0x8098, 0x809b, 0x809a, 0x80b2, 0x826f, 0x8292, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x828b, 0x828d, 0x898b, 0x89d2, 0x8a00, 0x8c37, 0x8c46,
- 0x8c55, 0x8c9d, 0x8d64, 0x8d70, 0x8db3, 0x8eab, 0x8eca, 0x8f9b,
- 0x8fb0, 0x8fc2, 0x8fc6, 0x8fc5, 0x8fc4, 0x5de1, 0x9091, 0x90a2,
- 0x90aa, 0x90a6, 0x90a3, 0x9149, 0x91c6, 0x91cc, 0x9632, 0x962e,
- 0x9631, 0x962a, 0x962c, 0x4e26, 0x4e56, 0x4e73, 0x4e8b, 0x4e9b,
- 0x4e9e, 0x4eab, 0x4eac, 0x4f6f, 0x4f9d, 0x4f8d, 0x4f73, 0x4f7f,
- 0x4f6c, 0x4f9b, 0x4f8b, 0x4f86, 0x4f83, 0x4f70, 0x4f75, 0x4f88,
- 0x4f69, 0x4f7b, 0x4f96, 0x4f7e, 0x4f8f, 0x4f91, 0x4f7a, 0x5154,
- 0x5152, 0x5155, 0x5169, 0x5177, 0x5176, 0x5178, 0x51bd, 0x51fd,
- 0x523b, 0x5238, 0x5237, 0x523a, 0x5230, 0x522e, 0x5236, 0x5241,
- 0x52be, 0x52bb, 0x5352, 0x5354, 0x5353, 0x5351, 0x5366, 0x5377,
- 0x5378, 0x5379, 0x53d6, 0x53d4, 0x53d7, 0x5473, 0x5475, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5496, 0x5478, 0x5495, 0x5480, 0x547b, 0x5477, 0x5484, 0x5492,
- 0x5486, 0x547c, 0x5490, 0x5471, 0x5476, 0x548c, 0x549a, 0x5462,
- 0x5468, 0x548b, 0x547d, 0x548e, 0x56fa, 0x5783, 0x5777, 0x576a,
- 0x5769, 0x5761, 0x5766, 0x5764, 0x577c, 0x591c, 0x5949, 0x5947,
- 0x5948, 0x5944, 0x5954, 0x59be, 0x59bb, 0x59d4, 0x59b9, 0x59ae,
- 0x59d1, 0x59c6, 0x59d0, 0x59cd, 0x59cb, 0x59d3, 0x59ca, 0x59af,
- 0x59b3, 0x59d2, 0x59c5, 0x5b5f, 0x5b64, 0x5b63, 0x5b97, 0x5b9a,
- 0x5b98, 0x5b9c, 0x5b99, 0x5b9b, 0x5c1a, 0x5c48, 0x5c45, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5c46, 0x5cb7, 0x5ca1, 0x5cb8, 0x5ca9, 0x5cab, 0x5cb1,
- 0x5cb3, 0x5e18, 0x5e1a, 0x5e16, 0x5e15, 0x5e1b, 0x5e11, 0x5e78,
- 0x5e9a, 0x5e97, 0x5e9c, 0x5e95, 0x5e96, 0x5ef6, 0x5f26, 0x5f27,
- 0x5f29, 0x5f80, 0x5f81, 0x5f7f, 0x5f7c, 0x5fdd, 0x5fe0, 0x5ffd,
- 0x5ff5, 0x5fff, 0x600f, 0x6014, 0x602f, 0x6035, 0x6016, 0x602a,
- 0x6015, 0x6021, 0x6027, 0x6029, 0x602b, 0x601b, 0x6216, 0x6215,
- 0x623f, 0x623e, 0x6240, 0x627f, 0x62c9, 0x62cc, 0x62c4, 0x62bf,
- 0x62c2, 0x62b9, 0x62d2, 0x62db, 0x62ab, 0x62d3, 0x62d4, 0x62cb,
- 0x62c8, 0x62a8, 0x62bd, 0x62bc, 0x62d0, 0x62d9, 0x62c7, 0x62cd,
- 0x62b5, 0x62da, 0x62b1, 0x62d8, 0x62d6, 0x62d7, 0x62c6, 0x62ac,
- 0x62ce, 0x653e, 0x65a7, 0x65bc, 0x65fa, 0x6614, 0x6613, 0x660c,
- 0x6606, 0x6602, 0x660e, 0x6600, 0x660f, 0x6615, 0x660a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6607, 0x670d, 0x670b, 0x676d, 0x678b, 0x6795, 0x6771, 0x679c,
- 0x6773, 0x6777, 0x6787, 0x679d, 0x6797, 0x676f, 0x6770, 0x677f,
- 0x6789, 0x677e, 0x6790, 0x6775, 0x679a, 0x6793, 0x677c, 0x676a,
- 0x6772, 0x6b23, 0x6b66, 0x6b67, 0x6b7f, 0x6c13, 0x6c1b, 0x6ce3,
- 0x6ce8, 0x6cf3, 0x6cb1, 0x6ccc, 0x6ce5, 0x6cb3, 0x6cbd, 0x6cbe,
- 0x6cbc, 0x6ce2, 0x6cab, 0x6cd5, 0x6cd3, 0x6cb8, 0x6cc4, 0x6cb9,
- 0x6cc1, 0x6cae, 0x6cd7, 0x6cc5, 0x6cf1, 0x6cbf, 0x6cbb, 0x6ce1,
- 0x6cdb, 0x6cca, 0x6cac, 0x6cef, 0x6cdc, 0x6cd6, 0x6ce0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7095, 0x708e, 0x7092, 0x708a, 0x7099, 0x722c, 0x722d,
- 0x7238, 0x7248, 0x7267, 0x7269, 0x72c0, 0x72ce, 0x72d9, 0x72d7,
- 0x72d0, 0x73a9, 0x73a8, 0x739f, 0x73ab, 0x73a5, 0x753d, 0x759d,
- 0x7599, 0x759a, 0x7684, 0x76c2, 0x76f2, 0x76f4, 0x77e5, 0x77fd,
- 0x793e, 0x7940, 0x7941, 0x79c9, 0x79c8, 0x7a7a, 0x7a79, 0x7afa,
- 0x7cfe, 0x7f54, 0x7f8c, 0x7f8b, 0x8005, 0x80ba, 0x80a5, 0x80a2,
- 0x80b1, 0x80a1, 0x80ab, 0x80a9, 0x80b4, 0x80aa, 0x80af, 0x81e5,
- 0x81fe, 0x820d, 0x82b3, 0x829d, 0x8299, 0x82ad, 0x82bd, 0x829f,
- 0x82b9, 0x82b1, 0x82ac, 0x82a5, 0x82af, 0x82b8, 0x82a3, 0x82b0,
- 0x82be, 0x82b7, 0x864e, 0x8671, 0x521d, 0x8868, 0x8ecb, 0x8fce,
- 0x8fd4, 0x8fd1, 0x90b5, 0x90b8, 0x90b1, 0x90b6, 0x91c7, 0x91d1,
- 0x9577, 0x9580, 0x961c, 0x9640, 0x963f, 0x963b, 0x9644, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x9642, 0x96b9, 0x96e8, 0x9752, 0x975e, 0x4e9f, 0x4ead, 0x4eae,
- 0x4fe1, 0x4fb5, 0x4faf, 0x4fbf, 0x4fe0, 0x4fd1, 0x4fcf, 0x4fdd,
- 0x4fc3, 0x4fb6, 0x4fd8, 0x4fdf, 0x4fca, 0x4fd7, 0x4fae, 0x4fd0,
- 0x4fc4, 0x4fc2, 0x4fda, 0x4fce, 0x4fde, 0x4fb7, 0x5157, 0x5192,
- 0x5191, 0x51a0, 0x524e, 0x5243, 0x524a, 0x524d, 0x524c, 0x524b,
- 0x5247, 0x52c7, 0x52c9, 0x52c3, 0x52c1, 0x530d, 0x5357, 0x537b,
- 0x539a, 0x53db, 0x54ac, 0x54c0, 0x54a8, 0x54ce, 0x54c9, 0x54b8,
- 0x54a6, 0x54b3, 0x54c7, 0x54c2, 0x54bd, 0x54aa, 0x54c1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x54c4, 0x54c8, 0x54af, 0x54ab, 0x54b1, 0x54bb, 0x54a9,
- 0x54a7, 0x54bf, 0x56ff, 0x5782, 0x578b, 0x57a0, 0x57a3, 0x57a2,
- 0x57ce, 0x57ae, 0x5793, 0x5955, 0x5951, 0x594f, 0x594e, 0x5950,
- 0x59dc, 0x59d8, 0x59ff, 0x59e3, 0x59e8, 0x5a03, 0x59e5, 0x59ea,
- 0x59da, 0x59e6, 0x5a01, 0x59fb, 0x5b69, 0x5ba3, 0x5ba6, 0x5ba4,
- 0x5ba2, 0x5ba5, 0x5c01, 0x5c4e, 0x5c4f, 0x5c4d, 0x5c4b, 0x5cd9,
- 0x5cd2, 0x5df7, 0x5e1d, 0x5e25, 0x5e1f, 0x5e7d, 0x5ea0, 0x5ea6,
- 0x5efa, 0x5f08, 0x5f2d, 0x5f65, 0x5f88, 0x5f85, 0x5f8a, 0x5f8b,
- 0x5f87, 0x5f8c, 0x5f89, 0x6012, 0x601d, 0x6020, 0x6025, 0x600e,
- 0x6028, 0x604d, 0x6070, 0x6068, 0x6062, 0x6046, 0x6043, 0x606c,
- 0x606b, 0x606a, 0x6064, 0x6241, 0x62dc, 0x6316, 0x6309, 0x62fc,
- 0x62ed, 0x6301, 0x62ee, 0x62fd, 0x6307, 0x62f1, 0x62f7, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x62ef, 0x62ec, 0x62fe, 0x62f4, 0x6311, 0x6302, 0x653f, 0x6545,
- 0x65ab, 0x65bd, 0x65e2, 0x6625, 0x662d, 0x6620, 0x6627, 0x662f,
- 0x661f, 0x6628, 0x6631, 0x6624, 0x66f7, 0x67ff, 0x67d3, 0x67f1,
- 0x67d4, 0x67d0, 0x67ec, 0x67b6, 0x67af, 0x67f5, 0x67e9, 0x67ef,
- 0x67c4, 0x67d1, 0x67b4, 0x67da, 0x67e5, 0x67b8, 0x67cf, 0x67de,
- 0x67f3, 0x67b0, 0x67d9, 0x67e2, 0x67dd, 0x67d2, 0x6b6a, 0x6b83,
- 0x6b86, 0x6bb5, 0x6bd2, 0x6bd7, 0x6c1f, 0x6cc9, 0x6d0b, 0x6d32,
- 0x6d2a, 0x6d41, 0x6d25, 0x6d0c, 0x6d31, 0x6d1e, 0x6d17, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6d3b, 0x6d3d, 0x6d3e, 0x6d36, 0x6d1b, 0x6cf5, 0x6d39,
- 0x6d27, 0x6d38, 0x6d29, 0x6d2e, 0x6d35, 0x6d0e, 0x6d2b, 0x70ab,
- 0x70ba, 0x70b3, 0x70ac, 0x70af, 0x70ad, 0x70b8, 0x70ae, 0x70a4,
- 0x7230, 0x7272, 0x726f, 0x7274, 0x72e9, 0x72e0, 0x72e1, 0x73b7,
- 0x73ca, 0x73bb, 0x73b2, 0x73cd, 0x73c0, 0x73b3, 0x751a, 0x752d,
- 0x754f, 0x754c, 0x754e, 0x754b, 0x75ab, 0x75a4, 0x75a5, 0x75a2,
- 0x75a3, 0x7678, 0x7686, 0x7687, 0x7688, 0x76c8, 0x76c6, 0x76c3,
- 0x76c5, 0x7701, 0x76f9, 0x76f8, 0x7709, 0x770b, 0x76fe, 0x76fc,
- 0x7707, 0x77dc, 0x7802, 0x7814, 0x780c, 0x780d, 0x7946, 0x7949,
- 0x7948, 0x7947, 0x79b9, 0x79ba, 0x79d1, 0x79d2, 0x79cb, 0x7a7f,
- 0x7a81, 0x7aff, 0x7afd, 0x7c7d, 0x7d02, 0x7d05, 0x7d00, 0x7d09,
- 0x7d07, 0x7d04, 0x7d06, 0x7f38, 0x7f8e, 0x7fbf, 0x8004, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8010, 0x800d, 0x8011, 0x8036, 0x80d6, 0x80e5, 0x80da, 0x80c3,
- 0x80c4, 0x80cc, 0x80e1, 0x80db, 0x80ce, 0x80de, 0x80e4, 0x80dd,
- 0x81f4, 0x8222, 0x82e7, 0x8303, 0x8305, 0x82e3, 0x82db, 0x82e6,
- 0x8304, 0x82e5, 0x8302, 0x8309, 0x82d2, 0x82d7, 0x82f1, 0x8301,
- 0x82dc, 0x82d4, 0x82d1, 0x82de, 0x82d3, 0x82df, 0x82ef, 0x8306,
- 0x8650, 0x8679, 0x867b, 0x867a, 0x884d, 0x886b, 0x8981, 0x89d4,
- 0x8a08, 0x8a02, 0x8a03, 0x8c9e, 0x8ca0, 0x8d74, 0x8d73, 0x8db4,
- 0x8ecd, 0x8ecc, 0x8ff0, 0x8fe6, 0x8fe2, 0x8fea, 0x8fe5, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8fed, 0x8feb, 0x8fe4, 0x8fe8, 0x90ca, 0x90ce, 0x90c1,
- 0x90c3, 0x914b, 0x914a, 0x91cd, 0x9582, 0x9650, 0x964b, 0x964c,
- 0x964d, 0x9762, 0x9769, 0x97cb, 0x97ed, 0x97f3, 0x9801, 0x98a8,
- 0x98db, 0x98df, 0x9996, 0x9999, 0x4e58, 0x4eb3, 0x500c, 0x500d,
- 0x5023, 0x4fef, 0x5026, 0x5025, 0x4ff8, 0x5029, 0x5016, 0x5006,
- 0x503c, 0x501f, 0x501a, 0x5012, 0x5011, 0x4ffa, 0x5000, 0x5014,
- 0x5028, 0x4ff1, 0x5021, 0x500b, 0x5019, 0x5018, 0x4ff3, 0x4fee,
- 0x502d, 0x502a, 0x4ffe, 0x502b, 0x5009, 0x517c, 0x51a4, 0x51a5,
- 0x51a2, 0x51cd, 0x51cc, 0x51c6, 0x51cb, 0x5256, 0x525c, 0x5254,
- 0x525b, 0x525d, 0x532a, 0x537f, 0x539f, 0x539d, 0x53df, 0x54e8,
- 0x5510, 0x5501, 0x5537, 0x54fc, 0x54e5, 0x54f2, 0x5506, 0x54fa,
- 0x5514, 0x54e9, 0x54ed, 0x54e1, 0x5509, 0x54ee, 0x54ea, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x54e6, 0x5527, 0x5507, 0x54fd, 0x550f, 0x5703, 0x5704, 0x57c2,
- 0x57d4, 0x57cb, 0x57c3, 0x5809, 0x590f, 0x5957, 0x5958, 0x595a,
- 0x5a11, 0x5a18, 0x5a1c, 0x5a1f, 0x5a1b, 0x5a13, 0x59ec, 0x5a20,
- 0x5a23, 0x5a29, 0x5a25, 0x5a0c, 0x5a09, 0x5b6b, 0x5c58, 0x5bb0,
- 0x5bb3, 0x5bb6, 0x5bb4, 0x5bae, 0x5bb5, 0x5bb9, 0x5bb8, 0x5c04,
- 0x5c51, 0x5c55, 0x5c50, 0x5ced, 0x5cfd, 0x5cfb, 0x5cea, 0x5ce8,
- 0x5cf0, 0x5cf6, 0x5d01, 0x5cf4, 0x5dee, 0x5e2d, 0x5e2b, 0x5eab,
- 0x5ead, 0x5ea7, 0x5f31, 0x5f92, 0x5f91, 0x5f90, 0x6059, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6063, 0x6065, 0x6050, 0x6055, 0x606d, 0x6069, 0x606f,
- 0x6084, 0x609f, 0x609a, 0x608d, 0x6094, 0x608c, 0x6085, 0x6096,
- 0x6247, 0x62f3, 0x6308, 0x62ff, 0x634e, 0x633e, 0x632f, 0x6355,
- 0x6342, 0x6346, 0x634f, 0x6349, 0x633a, 0x6350, 0x633d, 0x632a,
- 0x632b, 0x6328, 0x634d, 0x634c, 0x6548, 0x6549, 0x6599, 0x65c1,
- 0x65c5, 0x6642, 0x6649, 0x664f, 0x6643, 0x6652, 0x664c, 0x6645,
- 0x6641, 0x66f8, 0x6714, 0x6715, 0x6717, 0x6821, 0x6838, 0x6848,
- 0x6846, 0x6853, 0x6839, 0x6842, 0x6854, 0x6829, 0x68b3, 0x6817,
- 0x684c, 0x6851, 0x683d, 0x67f4, 0x6850, 0x6840, 0x683c, 0x6843,
- 0x682a, 0x6845, 0x6813, 0x6818, 0x6841, 0x6b8a, 0x6b89, 0x6bb7,
- 0x6c23, 0x6c27, 0x6c28, 0x6c26, 0x6c24, 0x6cf0, 0x6d6a, 0x6d95,
- 0x6d88, 0x6d87, 0x6d66, 0x6d78, 0x6d77, 0x6d59, 0x6d93, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6d6c, 0x6d89, 0x6d6e, 0x6d5a, 0x6d74, 0x6d69, 0x6d8c, 0x6d8a,
- 0x6d79, 0x6d85, 0x6d65, 0x6d94, 0x70ca, 0x70d8, 0x70e4, 0x70d9,
- 0x70c8, 0x70cf, 0x7239, 0x7279, 0x72fc, 0x72f9, 0x72fd, 0x72f8,
- 0x72f7, 0x7386, 0x73ed, 0x7409, 0x73ee, 0x73e0, 0x73ea, 0x73de,
- 0x7554, 0x755d, 0x755c, 0x755a, 0x7559, 0x75be, 0x75c5, 0x75c7,
- 0x75b2, 0x75b3, 0x75bd, 0x75bc, 0x75b9, 0x75c2, 0x75b8, 0x768b,
- 0x76b0, 0x76ca, 0x76cd, 0x76ce, 0x7729, 0x771f, 0x7720, 0x7728,
- 0x77e9, 0x7830, 0x7827, 0x7838, 0x781d, 0x7834, 0x7837, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7825, 0x782d, 0x7820, 0x781f, 0x7832, 0x7955, 0x7950,
- 0x7960, 0x795f, 0x7956, 0x795e, 0x795d, 0x7957, 0x795a, 0x79e4,
- 0x79e3, 0x79e7, 0x79df, 0x79e6, 0x79e9, 0x79d8, 0x7a84, 0x7a88,
- 0x7ad9, 0x7b06, 0x7b11, 0x7c89, 0x7d21, 0x7d17, 0x7d0b, 0x7d0a,
- 0x7d20, 0x7d22, 0x7d14, 0x7d10, 0x7d15, 0x7d1a, 0x7d1c, 0x7d0d,
- 0x7d19, 0x7d1b, 0x7f3a, 0x7f5f, 0x7f94, 0x7fc5, 0x7fc1, 0x8006,
- 0x8018, 0x8015, 0x8019, 0x8017, 0x803d, 0x803f, 0x80f1, 0x8102,
- 0x80f0, 0x8105, 0x80ed, 0x80f4, 0x8106, 0x80f8, 0x80f3, 0x8108,
- 0x80fd, 0x810a, 0x80fc, 0x80ef, 0x81ed, 0x81ec, 0x8200, 0x8210,
- 0x822a, 0x822b, 0x8228, 0x822c, 0x82bb, 0x832b, 0x8352, 0x8354,
- 0x834a, 0x8338, 0x8350, 0x8349, 0x8335, 0x8334, 0x834f, 0x8332,
- 0x8339, 0x8336, 0x8317, 0x8340, 0x8331, 0x8328, 0x8343, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8654, 0x868a, 0x86aa, 0x8693, 0x86a4, 0x86a9, 0x868c, 0x86a3,
- 0x869c, 0x8870, 0x8877, 0x8881, 0x8882, 0x887d, 0x8879, 0x8a18,
- 0x8a10, 0x8a0e, 0x8a0c, 0x8a15, 0x8a0a, 0x8a17, 0x8a13, 0x8a16,
- 0x8a0f, 0x8a11, 0x8c48, 0x8c7a, 0x8c79, 0x8ca1, 0x8ca2, 0x8d77,
- 0x8eac, 0x8ed2, 0x8ed4, 0x8ecf, 0x8fb1, 0x9001, 0x9006, 0x8ff7,
- 0x9000, 0x8ffa, 0x8ff4, 0x9003, 0x8ffd, 0x9005, 0x8ff8, 0x9095,
- 0x90e1, 0x90dd, 0x90e2, 0x9152, 0x914d, 0x914c, 0x91d8, 0x91dd,
- 0x91d7, 0x91dc, 0x91d9, 0x9583, 0x9662, 0x9663, 0x9661, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x965b, 0x965d, 0x9664, 0x9658, 0x965e, 0x96bb, 0x98e2,
- 0x99ac, 0x9aa8, 0x9ad8, 0x9b25, 0x9b32, 0x9b3c, 0x4e7e, 0x507a,
- 0x507d, 0x505c, 0x5047, 0x5043, 0x504c, 0x505a, 0x5049, 0x5065,
- 0x5076, 0x504e, 0x5055, 0x5075, 0x5074, 0x5077, 0x504f, 0x500f,
- 0x506f, 0x506d, 0x515c, 0x5195, 0x51f0, 0x526a, 0x526f, 0x52d2,
- 0x52d9, 0x52d8, 0x52d5, 0x5310, 0x530f, 0x5319, 0x533f, 0x5340,
- 0x533e, 0x53c3, 0x66fc, 0x5546, 0x556a, 0x5566, 0x5544, 0x555e,
- 0x5561, 0x5543, 0x554a, 0x5531, 0x5556, 0x554f, 0x5555, 0x552f,
- 0x5564, 0x5538, 0x552e, 0x555c, 0x552c, 0x5563, 0x5533, 0x5541,
- 0x5557, 0x5708, 0x570b, 0x5709, 0x57df, 0x5805, 0x580a, 0x5806,
- 0x57e0, 0x57e4, 0x57fa, 0x5802, 0x5835, 0x57f7, 0x57f9, 0x5920,
- 0x5962, 0x5a36, 0x5a41, 0x5a49, 0x5a66, 0x5a6a, 0x5a40, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5a3c, 0x5a62, 0x5a5a, 0x5a46, 0x5a4a, 0x5b70, 0x5bc7, 0x5bc5,
- 0x5bc4, 0x5bc2, 0x5bbf, 0x5bc6, 0x5c09, 0x5c08, 0x5c07, 0x5c60,
- 0x5c5c, 0x5c5d, 0x5d07, 0x5d06, 0x5d0e, 0x5d1b, 0x5d16, 0x5d22,
- 0x5d11, 0x5d29, 0x5d14, 0x5d19, 0x5d24, 0x5d27, 0x5d17, 0x5de2,
- 0x5e38, 0x5e36, 0x5e33, 0x5e37, 0x5eb7, 0x5eb8, 0x5eb6, 0x5eb5,
- 0x5ebe, 0x5f35, 0x5f37, 0x5f57, 0x5f6c, 0x5f69, 0x5f6b, 0x5f97,
- 0x5f99, 0x5f9e, 0x5f98, 0x5fa1, 0x5fa0, 0x5f9c, 0x607f, 0x60a3,
- 0x6089, 0x60a0, 0x60a8, 0x60cb, 0x60b4, 0x60e6, 0x60bd, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x60c5, 0x60bb, 0x60b5, 0x60dc, 0x60bc, 0x60d8, 0x60d5,
- 0x60c6, 0x60df, 0x60b8, 0x60da, 0x60c7, 0x621a, 0x621b, 0x6248,
- 0x63a0, 0x63a7, 0x6372, 0x6396, 0x63a2, 0x63a5, 0x6377, 0x6367,
- 0x6398, 0x63aa, 0x6371, 0x63a9, 0x6389, 0x6383, 0x639b, 0x636b,
- 0x63a8, 0x6384, 0x6388, 0x6399, 0x63a1, 0x63ac, 0x6392, 0x638f,
- 0x6380, 0x637b, 0x6369, 0x6368, 0x637a, 0x655d, 0x6556, 0x6551,
- 0x6559, 0x6557, 0x555f, 0x654f, 0x6558, 0x6555, 0x6554, 0x659c,
- 0x659b, 0x65ac, 0x65cf, 0x65cb, 0x65cc, 0x65ce, 0x665d, 0x665a,
- 0x6664, 0x6668, 0x6666, 0x665e, 0x66f9, 0x52d7, 0x671b, 0x6881,
- 0x68af, 0x68a2, 0x6893, 0x68b5, 0x687f, 0x6876, 0x68b1, 0x68a7,
- 0x6897, 0x68b0, 0x6883, 0x68c4, 0x68ad, 0x6886, 0x6885, 0x6894,
- 0x689d, 0x68a8, 0x689f, 0x68a1, 0x6882, 0x6b32, 0x6bba, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6beb, 0x6bec, 0x6c2b, 0x6d8e, 0x6dbc, 0x6df3, 0x6dd9, 0x6db2,
- 0x6de1, 0x6dcc, 0x6de4, 0x6dfb, 0x6dfa, 0x6e05, 0x6dc7, 0x6dcb,
- 0x6daf, 0x6dd1, 0x6dae, 0x6dde, 0x6df9, 0x6db8, 0x6df7, 0x6df5,
- 0x6dc5, 0x6dd2, 0x6e1a, 0x6db5, 0x6dda, 0x6deb, 0x6dd8, 0x6dea,
- 0x6df1, 0x6dee, 0x6de8, 0x6dc6, 0x6dc4, 0x6daa, 0x6dec, 0x6dbf,
- 0x6de6, 0x70f9, 0x7109, 0x710a, 0x70fd, 0x70ef, 0x723d, 0x727d,
- 0x7281, 0x731c, 0x731b, 0x7316, 0x7313, 0x7319, 0x7387, 0x7405,
- 0x740a, 0x7403, 0x7406, 0x73fe, 0x740d, 0x74e0, 0x74f6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x74f7, 0x751c, 0x7522, 0x7565, 0x7566, 0x7562, 0x7570,
- 0x758f, 0x75d4, 0x75d5, 0x75b5, 0x75ca, 0x75cd, 0x768e, 0x76d4,
- 0x76d2, 0x76db, 0x7737, 0x773e, 0x773c, 0x7736, 0x7738, 0x773a,
- 0x786b, 0x7843, 0x784e, 0x7965, 0x7968, 0x796d, 0x79fb, 0x7a92,
- 0x7a95, 0x7b20, 0x7b28, 0x7b1b, 0x7b2c, 0x7b26, 0x7b19, 0x7b1e,
- 0x7b2e, 0x7c92, 0x7c97, 0x7c95, 0x7d46, 0x7d43, 0x7d71, 0x7d2e,
- 0x7d39, 0x7d3c, 0x7d40, 0x7d30, 0x7d33, 0x7d44, 0x7d2f, 0x7d42,
- 0x7d32, 0x7d31, 0x7f3d, 0x7f9e, 0x7f9a, 0x7fcc, 0x7fce, 0x7fd2,
- 0x801c, 0x804a, 0x8046, 0x812f, 0x8116, 0x8123, 0x812b, 0x8129,
- 0x8130, 0x8124, 0x8202, 0x8235, 0x8237, 0x8236, 0x8239, 0x838e,
- 0x839e, 0x8398, 0x8378, 0x83a2, 0x8396, 0x83bd, 0x83ab, 0x8392,
- 0x838a, 0x8393, 0x8389, 0x83a0, 0x8377, 0x837b, 0x837c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8386, 0x83a7, 0x8655, 0x5f6a, 0x86c7, 0x86c0, 0x86b6, 0x86c4,
- 0x86b5, 0x86c6, 0x86cb, 0x86b1, 0x86af, 0x86c9, 0x8853, 0x889e,
- 0x8888, 0x88ab, 0x8892, 0x8896, 0x888d, 0x888b, 0x8993, 0x898f,
- 0x8a2a, 0x8a1d, 0x8a23, 0x8a25, 0x8a31, 0x8a2d, 0x8a1f, 0x8a1b,
- 0x8a22, 0x8c49, 0x8c5a, 0x8ca9, 0x8cac, 0x8cab, 0x8ca8, 0x8caa,
- 0x8ca7, 0x8d67, 0x8d66, 0x8dbe, 0x8dba, 0x8edb, 0x8edf, 0x9019,
- 0x900d, 0x901a, 0x9017, 0x9023, 0x901f, 0x901d, 0x9010, 0x9015,
- 0x901e, 0x9020, 0x900f, 0x9022, 0x9016, 0x901b, 0x9014, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x90e8, 0x90ed, 0x90fd, 0x9157, 0x91ce, 0x91f5, 0x91e6,
- 0x91e3, 0x91e7, 0x91ed, 0x91e9, 0x9589, 0x966a, 0x9675, 0x9673,
- 0x9678, 0x9670, 0x9674, 0x9676, 0x9677, 0x966c, 0x96c0, 0x96ea,
- 0x96e9, 0x7ae0, 0x7adf, 0x9802, 0x9803, 0x9b5a, 0x9ce5, 0x9e75,
- 0x9e7f, 0x9ea5, 0x9ebb, 0x50a2, 0x508d, 0x5085, 0x5099, 0x5091,
- 0x5080, 0x5096, 0x5098, 0x509a, 0x6700, 0x51f1, 0x5272, 0x5274,
- 0x5275, 0x5269, 0x52de, 0x52dd, 0x52db, 0x535a, 0x53a5, 0x557b,
- 0x5580, 0x55a7, 0x557c, 0x558a, 0x559d, 0x5598, 0x5582, 0x559c,
- 0x55aa, 0x5594, 0x5587, 0x558b, 0x5583, 0x55b3, 0x55ae, 0x559f,
- 0x553e, 0x55b2, 0x559a, 0x55bb, 0x55ac, 0x55b1, 0x557e, 0x5589,
- 0x55ab, 0x5599, 0x570d, 0x582f, 0x582a, 0x5834, 0x5824, 0x5830,
- 0x5831, 0x5821, 0x581d, 0x5820, 0x58f9, 0x58fa, 0x5960, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5a77, 0x5a9a, 0x5a7f, 0x5a92, 0x5a9b, 0x5aa7, 0x5b73, 0x5b71,
- 0x5bd2, 0x5bcc, 0x5bd3, 0x5bd0, 0x5c0a, 0x5c0b, 0x5c31, 0x5d4c,
- 0x5d50, 0x5d34, 0x5d47, 0x5dfd, 0x5e45, 0x5e3d, 0x5e40, 0x5e43,
- 0x5e7e, 0x5eca, 0x5ec1, 0x5ec2, 0x5ec4, 0x5f3c, 0x5f6d, 0x5fa9,
- 0x5faa, 0x5fa8, 0x60d1, 0x60e1, 0x60b2, 0x60b6, 0x60e0, 0x611c,
- 0x6123, 0x60fa, 0x6115, 0x60f0, 0x60fb, 0x60f4, 0x6168, 0x60f1,
- 0x610e, 0x60f6, 0x6109, 0x6100, 0x6112, 0x621f, 0x6249, 0x63a3,
- 0x638c, 0x63cf, 0x63c0, 0x63e9, 0x63c9, 0x63c6, 0x63cd, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x63d2, 0x63e3, 0x63d0, 0x63e1, 0x63d6, 0x63ed, 0x63ee,
- 0x6376, 0x63f4, 0x63ea, 0x63db, 0x6452, 0x63da, 0x63f9, 0x655e,
- 0x6566, 0x6562, 0x6563, 0x6591, 0x6590, 0x65af, 0x666e, 0x6670,
- 0x6674, 0x6676, 0x666f, 0x6691, 0x667a, 0x667e, 0x6677, 0x66fe,
- 0x66ff, 0x671f, 0x671d, 0x68fa, 0x68d5, 0x68e0, 0x68d8, 0x68d7,
- 0x6905, 0x68df, 0x68f5, 0x68ee, 0x68e7, 0x68f9, 0x68d2, 0x68f2,
- 0x68e3, 0x68cb, 0x68cd, 0x690d, 0x6912, 0x690e, 0x68c9, 0x68da,
- 0x696e, 0x68fb, 0x6b3e, 0x6b3a, 0x6b3d, 0x6b98, 0x6b96, 0x6bbc,
- 0x6bef, 0x6c2e, 0x6c2f, 0x6c2c, 0x6e2f, 0x6e38, 0x6e54, 0x6e21,
- 0x6e32, 0x6e67, 0x6e4a, 0x6e20, 0x6e25, 0x6e23, 0x6e1b, 0x6e5b,
- 0x6e58, 0x6e24, 0x6e56, 0x6e6e, 0x6e2d, 0x6e26, 0x6e6f, 0x6e34,
- 0x6e4d, 0x6e3a, 0x6e2c, 0x6e43, 0x6e1d, 0x6e3e, 0x6ecb, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6e89, 0x6e19, 0x6e4e, 0x6e63, 0x6e44, 0x6e72, 0x6e69, 0x6e5f,
- 0x7119, 0x711a, 0x7126, 0x7130, 0x7121, 0x7136, 0x716e, 0x711c,
- 0x724c, 0x7284, 0x7280, 0x7336, 0x7325, 0x7334, 0x7329, 0x743a,
- 0x742a, 0x7433, 0x7422, 0x7425, 0x7435, 0x7436, 0x7434, 0x742f,
- 0x741b, 0x7426, 0x7428, 0x7525, 0x7526, 0x756b, 0x756a, 0x75e2,
- 0x75db, 0x75e3, 0x75d9, 0x75d8, 0x75de, 0x75e0, 0x767b, 0x767c,
- 0x7696, 0x7693, 0x76b4, 0x76dc, 0x774f, 0x77ed, 0x785d, 0x786c,
- 0x786f, 0x7a0d, 0x7a08, 0x7a0b, 0x7a05, 0x7a00, 0x7a98, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7a97, 0x7a96, 0x7ae5, 0x7ae3, 0x7b49, 0x7b56, 0x7b46,
- 0x7b50, 0x7b52, 0x7b54, 0x7b4d, 0x7b4b, 0x7b4f, 0x7b51, 0x7c9f,
- 0x7ca5, 0x7d5e, 0x7d50, 0x7d68, 0x7d55, 0x7d2b, 0x7d6e, 0x7d72,
- 0x7d61, 0x7d66, 0x7d62, 0x7d70, 0x7d73, 0x5584, 0x7fd4, 0x7fd5,
- 0x800b, 0x8052, 0x8085, 0x8155, 0x8154, 0x814b, 0x8151, 0x814e,
- 0x8139, 0x8146, 0x813e, 0x814c, 0x8153, 0x8174, 0x8212, 0x821c,
- 0x83e9, 0x8403, 0x83f8, 0x840d, 0x83e0, 0x83c5, 0x840b, 0x83c1,
- 0x83ef, 0x83f1, 0x83f4, 0x8457, 0x840a, 0x83f0, 0x840c, 0x83cc,
- 0x83fd, 0x83f2, 0x83ca, 0x8438, 0x840e, 0x8404, 0x83dc, 0x8407,
- 0x83d4, 0x83df, 0x865b, 0x86df, 0x86d9, 0x86ed, 0x86d4, 0x86db,
- 0x86e4, 0x86d0, 0x86de, 0x8857, 0x88c1, 0x88c2, 0x88b1, 0x8983,
- 0x8996, 0x8a3b, 0x8a60, 0x8a55, 0x8a5e, 0x8a3c, 0x8a41, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8a54, 0x8a5b, 0x8a50, 0x8a46, 0x8a34, 0x8a3a, 0x8a36, 0x8a56,
- 0x8c61, 0x8c82, 0x8caf, 0x8cbc, 0x8cb3, 0x8cbd, 0x8cc1, 0x8cbb,
- 0x8cc0, 0x8cb4, 0x8cb7, 0x8cb6, 0x8cbf, 0x8cb8, 0x8d8a, 0x8d85,
- 0x8d81, 0x8dce, 0x8ddd, 0x8dcb, 0x8dda, 0x8dd1, 0x8dcc, 0x8ddb,
- 0x8dc6, 0x8efb, 0x8ef8, 0x8efc, 0x8f9c, 0x902e, 0x9035, 0x9031,
- 0x9038, 0x9032, 0x9036, 0x9102, 0x90f5, 0x9109, 0x90fe, 0x9163,
- 0x9165, 0x91cf, 0x9214, 0x9215, 0x9223, 0x9209, 0x921e, 0x920d,
- 0x9210, 0x9207, 0x9211, 0x9594, 0x958f, 0x958b, 0x9591, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9593, 0x9592, 0x958e, 0x968a, 0x968e, 0x968b, 0x967d,
- 0x9685, 0x9686, 0x968d, 0x9672, 0x9684, 0x96c1, 0x96c5, 0x96c4,
- 0x96c6, 0x96c7, 0x96ef, 0x96f2, 0x97cc, 0x9805, 0x9806, 0x9808,
- 0x98e7, 0x98ea, 0x98ef, 0x98e9, 0x98f2, 0x98ed, 0x99ae, 0x99ad,
- 0x9ec3, 0x9ecd, 0x9ed1, 0x4e82, 0x50ad, 0x50b5, 0x50b2, 0x50b3,
- 0x50c5, 0x50be, 0x50ac, 0x50b7, 0x50bb, 0x50af, 0x50c7, 0x527f,
- 0x5277, 0x527d, 0x52df, 0x52e6, 0x52e4, 0x52e2, 0x52e3, 0x532f,
- 0x55df, 0x55e8, 0x55d3, 0x55e6, 0x55ce, 0x55dc, 0x55c7, 0x55d1,
- 0x55e3, 0x55e4, 0x55ef, 0x55da, 0x55e1, 0x55c5, 0x55c6, 0x55e5,
- 0x55c9, 0x5712, 0x5713, 0x585e, 0x5851, 0x5858, 0x5857, 0x585a,
- 0x5854, 0x586b, 0x584c, 0x586d, 0x584a, 0x5862, 0x5852, 0x584b,
- 0x5967, 0x5ac1, 0x5ac9, 0x5acc, 0x5abe, 0x5abd, 0x5abc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5ab3, 0x5ac2, 0x5ab2, 0x5d69, 0x5d6f, 0x5e4c, 0x5e79, 0x5ec9,
- 0x5ec8, 0x5f12, 0x5f59, 0x5fac, 0x5fae, 0x611a, 0x610f, 0x6148,
- 0x611f, 0x60f3, 0x611b, 0x60f9, 0x6101, 0x6108, 0x614e, 0x614c,
- 0x6144, 0x614d, 0x613e, 0x6134, 0x6127, 0x610d, 0x6106, 0x6137,
- 0x6221, 0x6222, 0x6413, 0x643e, 0x641e, 0x642a, 0x642d, 0x643d,
- 0x642c, 0x640f, 0x641c, 0x6414, 0x640d, 0x6436, 0x6416, 0x6417,
- 0x6406, 0x656c, 0x659f, 0x65b0, 0x6697, 0x6689, 0x6687, 0x6688,
- 0x6696, 0x6684, 0x6698, 0x668d, 0x6703, 0x6994, 0x696d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x695a, 0x6977, 0x6960, 0x6954, 0x6975, 0x6930, 0x6982,
- 0x694a, 0x6968, 0x696b, 0x695e, 0x6953, 0x6979, 0x6986, 0x695d,
- 0x6963, 0x695b, 0x6b47, 0x6b72, 0x6bc0, 0x6bbf, 0x6bd3, 0x6bfd,
- 0x6ea2, 0x6eaf, 0x6ed3, 0x6eb6, 0x6ec2, 0x6e90, 0x6e9d, 0x6ec7,
- 0x6ec5, 0x6ea5, 0x6e98, 0x6ebc, 0x6eba, 0x6eab, 0x6ed1, 0x6e96,
- 0x6e9c, 0x6ec4, 0x6ed4, 0x6eaa, 0x6ea7, 0x6eb4, 0x714e, 0x7159,
- 0x7169, 0x7164, 0x7149, 0x7167, 0x715c, 0x716c, 0x7166, 0x714c,
- 0x7165, 0x715e, 0x7146, 0x7168, 0x7156, 0x723a, 0x7252, 0x7337,
- 0x7345, 0x733f, 0x733e, 0x746f, 0x745a, 0x7455, 0x745f, 0x745e,
- 0x7441, 0x743f, 0x7459, 0x745b, 0xe2a3, 0x7576, 0x7578, 0x7600,
- 0x75f0, 0x7601, 0x75f2, 0x75f1, 0x75fa, 0x75ff, 0x75f4, 0x75f3,
- 0x76de, 0x76df, 0x775b, 0x776b, 0x7766, 0x775e, 0x7763, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7779, 0x776a, 0x776c, 0x775c, 0x7765, 0x7768, 0x7762, 0x77ee,
- 0x788e, 0x78b0, 0x7897, 0x7898, 0x788c, 0x7889, 0x787c, 0x7891,
- 0x7893, 0x787f, 0x797a, 0x797f, 0x7981, 0x842c, 0x79bd, 0x7a1c,
- 0x7a1a, 0x7a20, 0x7a14, 0x7a1f, 0x7a1e, 0x7a9f, 0x7aa0, 0x7b77,
- 0x7bc0, 0x7b60, 0x7b6e, 0x7b67, 0x7cb1, 0x7cb3, 0x7cb5, 0x7d93,
- 0x7d79, 0x7d91, 0x7d81, 0x7d8f, 0x7d5b, 0x7f6e, 0x7f69, 0x7f6a,
- 0x7f72, 0x7fa9, 0x7fa8, 0x7fa4, 0x8056, 0x8058, 0x8086, 0x8084,
- 0x8171, 0x8170, 0x8178, 0x8165, 0x816e, 0x8173, 0x816b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8179, 0x817a, 0x8166, 0x8205, 0x8247, 0x8482, 0x8477,
- 0x843d, 0x8431, 0x8475, 0x8466, 0x846b, 0x8449, 0x846c, 0x845b,
- 0x843c, 0x8435, 0x8461, 0x8463, 0x8469, 0x846d, 0x8446, 0x865e,
- 0x865c, 0x865f, 0x86f9, 0x8713, 0x8708, 0x8707, 0x8700, 0x86fe,
- 0x86fb, 0x8702, 0x8703, 0x8706, 0x870a, 0x8859, 0x88df, 0x88d4,
- 0x88d9, 0x88dc, 0x88d8, 0x88dd, 0x88e1, 0x88ca, 0x88d5, 0x88d2,
- 0x899c, 0x89e3, 0x8a6b, 0x8a72, 0x8a73, 0x8a66, 0x8a69, 0x8a70,
- 0x8a87, 0x8a7c, 0x8a63, 0x8aa0, 0x8a71, 0x8a85, 0x8a6d, 0x8a62,
- 0x8a6e, 0x8a6c, 0x8a79, 0x8a7b, 0x8a3e, 0x8a68, 0x8c62, 0x8c8a,
- 0x8c89, 0x8cca, 0x8cc7, 0x8cc8, 0x8cc4, 0x8cb2, 0x8cc3, 0x8cc2,
- 0x8cc5, 0x8de1, 0x8ddf, 0x8de8, 0x8def, 0x8df3, 0x8dfa, 0x8dea,
- 0x8de4, 0x8de6, 0x8eb2, 0x8f03, 0x8f09, 0x8efe, 0x8f0a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8f9f, 0x8fb2, 0x904b, 0x904a, 0x9053, 0x9042, 0x9054, 0x903c,
- 0x9055, 0x9050, 0x9047, 0x904f, 0x904e, 0x904d, 0x9051, 0x903e,
- 0x9041, 0x9112, 0x9117, 0x916c, 0x916a, 0x9169, 0x91c9, 0x9237,
- 0x9257, 0x9238, 0x923d, 0x9240, 0x923e, 0x925b, 0x924b, 0x9264,
- 0x9251, 0x9234, 0x9249, 0x924d, 0x9245, 0x9239, 0x923f, 0x925a,
- 0x9598, 0x9698, 0x9694, 0x9695, 0x96cd, 0x96cb, 0x96c9, 0x96ca,
- 0x96f7, 0x96fb, 0x96f9, 0x96f6, 0x9756, 0x9774, 0x9776, 0x9810,
- 0x9811, 0x9813, 0x980a, 0x9812, 0x980c, 0x98fc, 0x98f4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x98fd, 0x98fe, 0x99b3, 0x99b1, 0x99b4, 0x9ae1, 0x9ce9,
- 0x9e82, 0x9f0e, 0x9f13, 0x9f20, 0x50e7, 0x50ee, 0x50e5, 0x50d6,
- 0x50ed, 0x50da, 0x50d5, 0x50cf, 0x50d1, 0x50f1, 0x50ce, 0x50e9,
- 0x5162, 0x51f3, 0x5283, 0x5282, 0x5331, 0x53ad, 0x55fe, 0x5600,
- 0x561b, 0x5617, 0x55fd, 0x5614, 0x5606, 0x5609, 0x560d, 0x560e,
- 0x55f7, 0x5616, 0x561f, 0x5608, 0x5610, 0x55f6, 0x5718, 0x5716,
- 0x5875, 0x587e, 0x5883, 0x5893, 0x588a, 0x5879, 0x5885, 0x587d,
- 0x58fd, 0x5925, 0x5922, 0x5924, 0x596a, 0x5969, 0x5ae1, 0x5ae6,
- 0x5ae9, 0x5ad7, 0x5ad6, 0x5ad8, 0x5ae3, 0x5b75, 0x5bde, 0x5be7,
- 0x5be1, 0x5be5, 0x5be6, 0x5be8, 0x5be2, 0x5be4, 0x5bdf, 0x5c0d,
- 0x5c62, 0x5d84, 0x5d87, 0x5e5b, 0x5e63, 0x5e55, 0x5e57, 0x5e54,
- 0x5ed3, 0x5ed6, 0x5f0a, 0x5f46, 0x5f70, 0x5fb9, 0x6147, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x613f, 0x614b, 0x6177, 0x6162, 0x6163, 0x615f, 0x615a, 0x6158,
- 0x6175, 0x622a, 0x6487, 0x6458, 0x6454, 0x64a4, 0x6478, 0x645f,
- 0x647a, 0x6451, 0x6467, 0x6434, 0x646d, 0x647b, 0x6572, 0x65a1,
- 0x65d7, 0x65d6, 0x66a2, 0x66a8, 0x669d, 0x699c, 0x69a8, 0x6995,
- 0x69c1, 0x69ae, 0x69d3, 0x69cb, 0x699b, 0x69b7, 0x69bb, 0x69ab,
- 0x69b4, 0x69d0, 0x69cd, 0x69ad, 0x69cc, 0x69a6, 0x69c3, 0x69a3,
- 0x6b49, 0x6b4c, 0x6c33, 0x6f33, 0x6f14, 0x6efe, 0x6f13, 0x6ef4,
- 0x6f29, 0x6f3e, 0x6f20, 0x6f2c, 0x6f0f, 0x6f02, 0x6f22, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6eff, 0x6eef, 0x6f06, 0x6f31, 0x6f38, 0x6f32, 0x6f23,
- 0x6f15, 0x6f2b, 0x6f2f, 0x6f88, 0x6f2a, 0x6eec, 0x6f01, 0x6ef2,
- 0x6ecc, 0x6ef7, 0x7194, 0x7199, 0x717d, 0x718a, 0x7184, 0x7192,
- 0x723e, 0x7292, 0x7296, 0x7344, 0x7350, 0x7464, 0x7463, 0x746a,
- 0x7470, 0x746d, 0x7504, 0x7591, 0x7627, 0x760d, 0x760b, 0x7609,
- 0x7613, 0x76e1, 0x76e3, 0x7784, 0x777d, 0x777f, 0x7761, 0x78c1,
- 0x789f, 0x78a7, 0x78b3, 0x78a9, 0x78a3, 0x798e, 0x798f, 0x798d,
- 0x7a2e, 0x7a31, 0x7aaa, 0x7aa9, 0x7aed, 0x7aef, 0x7ba1, 0x7b95,
- 0x7b8b, 0x7b75, 0x7b97, 0x7b9d, 0x7b94, 0x7b8f, 0x7bb8, 0x7b87,
- 0x7b84, 0x7cb9, 0x7cbd, 0x7cbe, 0x7dbb, 0x7db0, 0x7d9c, 0x7dbd,
- 0x7dbe, 0x7da0, 0x7dca, 0x7db4, 0x7db2, 0x7db1, 0x7dba, 0x7da2,
- 0x7dbf, 0x7db5, 0x7db8, 0x7dad, 0x7dd2, 0x7dc7, 0x7dac, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7f70, 0x7fe0, 0x7fe1, 0x7fdf, 0x805e, 0x805a, 0x8087, 0x8150,
- 0x8180, 0x818f, 0x8188, 0x818a, 0x817f, 0x8182, 0x81e7, 0x81fa,
- 0x8207, 0x8214, 0x821e, 0x824b, 0x84c9, 0x84bf, 0x84c6, 0x84c4,
- 0x8499, 0x849e, 0x84b2, 0x849c, 0x84cb, 0x84b8, 0x84c0, 0x84d3,
- 0x8490, 0x84bc, 0x84d1, 0x84ca, 0x873f, 0x871c, 0x873b, 0x8722,
- 0x8725, 0x8734, 0x8718, 0x8755, 0x8737, 0x8729, 0x88f3, 0x8902,
- 0x88f4, 0x88f9, 0x88f8, 0x88fd, 0x88e8, 0x891a, 0x88ef, 0x8aa6,
- 0x8a8c, 0x8a9e, 0x8aa3, 0x8a8d, 0x8aa1, 0x8a93, 0x8aa4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8aaa, 0x8aa5, 0x8aa8, 0x8a98, 0x8a91, 0x8a9a, 0x8aa7,
- 0x8c6a, 0x8c8d, 0x8c8c, 0x8cd3, 0x8cd1, 0x8cd2, 0x8d6b, 0x8d99,
- 0x8d95, 0x8dfc, 0x8f14, 0x8f12, 0x8f15, 0x8f13, 0x8fa3, 0x9060,
- 0x9058, 0x905c, 0x9063, 0x9059, 0x905e, 0x9062, 0x905d, 0x905b,
- 0x9119, 0x9118, 0x911e, 0x9175, 0x9178, 0x9177, 0x9174, 0x9278,
- 0x9280, 0x9285, 0x9298, 0x9296, 0x927b, 0x9293, 0x929c, 0x92a8,
- 0x927c, 0x9291, 0x95a1, 0x95a8, 0x95a9, 0x95a3, 0x95a5, 0x95a4,
- 0x9699, 0x969c, 0x969b, 0x96cc, 0x96d2, 0x9700, 0x977c, 0x9785,
- 0x97f6, 0x9817, 0x9818, 0x98af, 0x98b1, 0x9903, 0x9905, 0x990c,
- 0x9909, 0x99c1, 0x9aaf, 0x9ab0, 0x9ae6, 0x9b41, 0x9b42, 0x9cf4,
- 0x9cf6, 0x9cf3, 0x9ebc, 0x9f3b, 0x9f4a, 0x5104, 0x5100, 0x50fb,
- 0x50f5, 0x50f9, 0x5102, 0x5108, 0x5109, 0x5105, 0x51dc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5287, 0x5288, 0x5289, 0x528d, 0x528a, 0x52f0, 0x53b2, 0x562e,
- 0x563b, 0x5639, 0x5632, 0x563f, 0x5634, 0x5629, 0x5653, 0x564e,
- 0x5657, 0x5674, 0x5636, 0x562f, 0x5630, 0x5880, 0x589f, 0x589e,
- 0x58b3, 0x589c, 0x58ae, 0x58a9, 0x58a6, 0x596d, 0x5b09, 0x5afb,
- 0x5b0b, 0x5af5, 0x5b0c, 0x5b08, 0x5bee, 0x5bec, 0x5be9, 0x5beb,
- 0x5c64, 0x5c65, 0x5d9d, 0x5d94, 0x5e62, 0x5e5f, 0x5e61, 0x5ee2,
- 0x5eda, 0x5edf, 0x5edd, 0x5ee3, 0x5ee0, 0x5f48, 0x5f71, 0x5fb7,
- 0x5fb5, 0x6176, 0x6167, 0x616e, 0x615d, 0x6155, 0x6182, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x617c, 0x6170, 0x616b, 0x617e, 0x61a7, 0x6190, 0x61ab,
- 0x618e, 0x61ac, 0x619a, 0x61a4, 0x6194, 0x61ae, 0x622e, 0x6469,
- 0x646f, 0x6479, 0x649e, 0x64b2, 0x6488, 0x6490, 0x64b0, 0x64a5,
- 0x6493, 0x6495, 0x64a9, 0x6492, 0x64ae, 0x64ad, 0x64ab, 0x649a,
- 0x64ac, 0x6499, 0x64a2, 0x64b3, 0x6575, 0x6577, 0x6578, 0x66ae,
- 0x66ab, 0x66b4, 0x66b1, 0x6a23, 0x6a1f, 0x69e8, 0x6a01, 0x6a1e,
- 0x6a19, 0x69fd, 0x6a21, 0x6a13, 0x6a0a, 0x69f3, 0x6a02, 0x6a05,
- 0x69ed, 0x6a11, 0x6b50, 0x6b4e, 0x6ba4, 0x6bc5, 0x6bc6, 0x6f3f,
- 0x6f7c, 0x6f84, 0x6f51, 0x6f66, 0x6f54, 0x6f86, 0x6f6d, 0x6f5b,
- 0x6f78, 0x6f6e, 0x6f8e, 0x6f7a, 0x6f70, 0x6f64, 0x6f97, 0x6f58,
- 0x6ed5, 0x6f6f, 0x6f60, 0x6f5f, 0x719f, 0x71ac, 0x71b1, 0x71a8,
- 0x7256, 0x729b, 0x734e, 0x7357, 0x7469, 0x748b, 0x7483, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x747e, 0x7480, 0x757f, 0x7620, 0x7629, 0x761f, 0x7624, 0x7626,
- 0x7621, 0x7622, 0x769a, 0x76ba, 0x76e4, 0x778e, 0x7787, 0x778c,
- 0x7791, 0x778b, 0x78cb, 0x78c5, 0x78ba, 0x78ca, 0x78be, 0x78d5,
- 0x78bc, 0x78d0, 0x7a3f, 0x7a3c, 0x7a40, 0x7a3d, 0x7a37, 0x7a3b,
- 0x7aaf, 0x7aae, 0x7bad, 0x7bb1, 0x7bc4, 0x7bb4, 0x7bc6, 0x7bc7,
- 0x7bc1, 0x7ba0, 0x7bcc, 0x7cca, 0x7de0, 0x7df4, 0x7def, 0x7dfb,
- 0x7dd8, 0x7dec, 0x7ddd, 0x7de8, 0x7de3, 0x7dda, 0x7dde, 0x7de9,
- 0x7d9e, 0x7dd9, 0x7df2, 0x7df9, 0x7f75, 0x7f77, 0x7faf, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7fe9, 0x8026, 0x819b, 0x819c, 0x819d, 0x81a0, 0x819a,
- 0x8198, 0x8517, 0x853d, 0x851a, 0x84ee, 0x852c, 0x852d, 0x8513,
- 0x8511, 0x8523, 0x8521, 0x8514, 0x84ec, 0x8525, 0x84ff, 0x8506,
- 0x8782, 0x8774, 0x8776, 0x8760, 0x8766, 0x8778, 0x8768, 0x8759,
- 0x8757, 0x874c, 0x8753, 0x885b, 0x885d, 0x8910, 0x8907, 0x8912,
- 0x8913, 0x8915, 0x890a, 0x8abc, 0x8ad2, 0x8ac7, 0x8ac4, 0x8a95,
- 0x8acb, 0x8af8, 0x8ab2, 0x8ac9, 0x8ac2, 0x8abf, 0x8ab0, 0x8ad6,
- 0x8acd, 0x8ab6, 0x8ab9, 0x8adb, 0x8c4c, 0x8c4e, 0x8c6c, 0x8ce0,
- 0x8cde, 0x8ce6, 0x8ce4, 0x8cec, 0x8ced, 0x8ce2, 0x8ce3, 0x8cdc,
- 0x8cea, 0x8ce1, 0x8d6d, 0x8d9f, 0x8da3, 0x8e2b, 0x8e10, 0x8e1d,
- 0x8e22, 0x8e0f, 0x8e29, 0x8e1f, 0x8e21, 0x8e1e, 0x8eba, 0x8f1d,
- 0x8f1b, 0x8f1f, 0x8f29, 0x8f26, 0x8f2a, 0x8f1c, 0x8f1e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8f25, 0x9069, 0x906e, 0x9068, 0x906d, 0x9077, 0x9130, 0x912d,
- 0x9127, 0x9131, 0x9187, 0x9189, 0x918b, 0x9183, 0x92c5, 0x92bb,
- 0x92b7, 0x92ea, 0x92ac, 0x92e4, 0x92c1, 0x92b3, 0x92bc, 0x92d2,
- 0x92c7, 0x92f0, 0x92b2, 0x95ad, 0x95b1, 0x9704, 0x9706, 0x9707,
- 0x9709, 0x9760, 0x978d, 0x978b, 0x978f, 0x9821, 0x982b, 0x981c,
- 0x98b3, 0x990a, 0x9913, 0x9912, 0x9918, 0x99dd, 0x99d0, 0x99df,
- 0x99db, 0x99d1, 0x99d5, 0x99d2, 0x99d9, 0x9ab7, 0x9aee, 0x9aef,
- 0x9b27, 0x9b45, 0x9b44, 0x9b77, 0x9b6f, 0x9d06, 0x9d09, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9d03, 0x9ea9, 0x9ebe, 0x9ece, 0x58a8, 0x9f52, 0x5112,
- 0x5118, 0x5114, 0x5110, 0x5115, 0x5180, 0x51aa, 0x51dd, 0x5291,
- 0x5293, 0x52f3, 0x5659, 0x566b, 0x5679, 0x5669, 0x5664, 0x5678,
- 0x566a, 0x5668, 0x5665, 0x5671, 0x566f, 0x566c, 0x5662, 0x5676,
- 0x58c1, 0x58be, 0x58c7, 0x58c5, 0x596e, 0x5b1d, 0x5b34, 0x5b78,
- 0x5bf0, 0x5c0e, 0x5f4a, 0x61b2, 0x6191, 0x61a9, 0x618a, 0x61cd,
- 0x61b6, 0x61be, 0x61ca, 0x61c8, 0x6230, 0x64c5, 0x64c1, 0x64cb,
- 0x64bb, 0x64bc, 0x64da, 0x64c4, 0x64c7, 0x64c2, 0x64cd, 0x64bf,
- 0x64d2, 0x64d4, 0x64be, 0x6574, 0x66c6, 0x66c9, 0x66b9, 0x66c4,
- 0x66c7, 0x66b8, 0x6a3d, 0x6a38, 0x6a3a, 0x6a59, 0x6a6b, 0x6a58,
- 0x6a39, 0x6a44, 0x6a62, 0x6a61, 0x6a4b, 0x6a47, 0x6a35, 0x6a5f,
- 0x6a48, 0x6b59, 0x6b77, 0x6c05, 0x6fc2, 0x6fb1, 0x6fa1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6fc3, 0x6fa4, 0x6fc1, 0x6fa7, 0x6fb3, 0x6fc0, 0x6fb9, 0x6fb6,
- 0x6fa6, 0x6fa0, 0x6fb4, 0x71be, 0x71c9, 0x71d0, 0x71d2, 0x71c8,
- 0x71d5, 0x71b9, 0x71ce, 0x71d9, 0x71dc, 0x71c3, 0x71c4, 0x7368,
- 0x749c, 0x74a3, 0x7498, 0x749f, 0x749e, 0x74e2, 0x750c, 0x750d,
- 0x7634, 0x7638, 0x763a, 0x76e7, 0x76e5, 0x77a0, 0x779e, 0x779f,
- 0x77a5, 0x78e8, 0x78da, 0x78ec, 0x78e7, 0x79a6, 0x7a4d, 0x7a4e,
- 0x7a46, 0x7a4c, 0x7a4b, 0x7aba, 0x7bd9, 0x7c11, 0x7bc9, 0x7be4,
- 0x7bdb, 0x7be1, 0x7be9, 0x7be6, 0x7cd5, 0x7cd6, 0x7e0a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7e11, 0x7e08, 0x7e1b, 0x7e23, 0x7e1e, 0x7e1d, 0x7e09,
- 0x7e10, 0x7f79, 0x7fb2, 0x7ff0, 0x7ff1, 0x7fee, 0x8028, 0x81b3,
- 0x81a9, 0x81a8, 0x81fb, 0x8208, 0x8258, 0x8259, 0x854a, 0x8559,
- 0x8548, 0x8568, 0x8569, 0x8543, 0x8549, 0x856d, 0x856a, 0x855e,
- 0x8783, 0x879f, 0x879e, 0x87a2, 0x878d, 0x8861, 0x892a, 0x8932,
- 0x8925, 0x892b, 0x8921, 0x89aa, 0x89a6, 0x8ae6, 0x8afa, 0x8aeb,
- 0x8af1, 0x8b00, 0x8adc, 0x8ae7, 0x8aee, 0x8afe, 0x8b01, 0x8b02,
- 0x8af7, 0x8aed, 0x8af3, 0x8af6, 0x8afc, 0x8c6b, 0x8c6d, 0x8c93,
- 0x8cf4, 0x8e44, 0x8e31, 0x8e34, 0x8e42, 0x8e39, 0x8e35, 0x8f3b,
- 0x8f2f, 0x8f38, 0x8f33, 0x8fa8, 0x8fa6, 0x9075, 0x9074, 0x9078,
- 0x9072, 0x907c, 0x907a, 0x9134, 0x9192, 0x9320, 0x9336, 0x92f8,
- 0x9333, 0x932f, 0x9322, 0x92fc, 0x932b, 0x9304, 0x931a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x9310, 0x9326, 0x9321, 0x9315, 0x932e, 0x9319, 0x95bb, 0x96a7,
- 0x96a8, 0x96aa, 0x96d5, 0x970e, 0x9711, 0x9716, 0x970d, 0x9713,
- 0x970f, 0x975b, 0xe4c5, 0x9766, 0x9798, 0x9830, 0x9838, 0x983b,
- 0x9837, 0x982d, 0x9839, 0x9824, 0x9910, 0x9928, 0x991e, 0x991b,
- 0x9921, 0x991a, 0x99ed, 0x99e2, 0x99f1, 0x9ab8, 0x9abc, 0x9afb,
- 0x9aed, 0x9b28, 0x9b91, 0x9d15, 0x9d23, 0x9d26, 0x9d28, 0x9d12,
- 0x9d1b, 0x9ed8, 0x9ed4, 0x9f8d, 0x9f9c, 0x512a, 0x511f, 0x5121,
- 0x5132, 0x52f5, 0x568e, 0x5680, 0x5690, 0x5685, 0x5687, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x568f, 0x58d5, 0x58d3, 0x58d1, 0x58ce, 0x5b30, 0x5b2a,
- 0x5b24, 0x5b7a, 0x5c37, 0x5c68, 0x5dbc, 0x5dba, 0x5dbd, 0x5db8,
- 0x5e6b, 0x5f4c, 0x5fbd, 0x61c9, 0x61c2, 0x61c7, 0x61e6, 0x61cb,
- 0x6232, 0x6234, 0x64ce, 0x64ca, 0x64d8, 0x64e0, 0x64f0, 0x64e6,
- 0x64ec, 0x64f1, 0x64e2, 0x64ed, 0x6582, 0x6583, 0x66d9, 0x66d6,
- 0x6a80, 0x6a94, 0x6a84, 0x6aa2, 0x6a9c, 0x6adb, 0x6aa3, 0x6a7e,
- 0x6a97, 0x6a90, 0x6aa0, 0x6b5c, 0x6bae, 0x6bda, 0x6c08, 0x6fd8,
- 0x6ff1, 0x6fdf, 0x6fe0, 0x6fdb, 0x6fe4, 0x6feb, 0x6fef, 0x6f80,
- 0x6fec, 0x6fe1, 0x6fe9, 0x6fd5, 0x6fee, 0x6ff0, 0x71e7, 0x71df,
- 0x71ee, 0x71e6, 0x71e5, 0x71ed, 0x71ec, 0x71f4, 0x71e0, 0x7235,
- 0x7246, 0x7370, 0x7372, 0x74a9, 0x74b0, 0x74a6, 0x74a8, 0x7646,
- 0x7642, 0x764c, 0x76ea, 0x77b3, 0x77aa, 0x77b0, 0x77ac, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x77a7, 0x77ad, 0x77ef, 0x78f7, 0x78fa, 0x78f4, 0x78ef, 0x7901,
- 0x79a7, 0x79aa, 0x7a57, 0x7abf, 0x7c07, 0x7c0d, 0x7bfe, 0x7bf7,
- 0x7c0c, 0x7be0, 0x7ce0, 0x7cdc, 0x7cde, 0x7ce2, 0x7cdf, 0x7cd9,
- 0x7cdd, 0x7e2e, 0x7e3e, 0x7e46, 0x7e37, 0x7e32, 0x7e43, 0x7e2b,
- 0x7e3d, 0x7e31, 0x7e45, 0x7e41, 0x7e34, 0x7e39, 0x7e48, 0x7e35,
- 0x7e3f, 0x7e2f, 0x7f44, 0x7ff3, 0x7ffc, 0x8071, 0x8072, 0x8070,
- 0x806f, 0x8073, 0x81c6, 0x81c3, 0x81ba, 0x81c2, 0x81c0, 0x81bf,
- 0x81bd, 0x81c9, 0x81be, 0x81e8, 0x8209, 0x8271, 0x85aa, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8584, 0x857e, 0x859c, 0x8591, 0x8594, 0x85af, 0x859b,
- 0x8587, 0x85a8, 0x858a, 0x8667, 0x87c0, 0x87d1, 0x87b3, 0x87d2,
- 0x87c6, 0x87ab, 0x87bb, 0x87ba, 0x87c8, 0x87cb, 0x893b, 0x8936,
- 0x8944, 0x8938, 0x893d, 0x89ac, 0x8b0e, 0x8b17, 0x8b19, 0x8b1b,
- 0x8b0a, 0x8b20, 0x8b1d, 0x8b04, 0x8b10, 0x8c41, 0x8c3f, 0x8c73,
- 0x8cfa, 0x8cfd, 0x8cfc, 0x8cf8, 0x8cfb, 0x8da8, 0x8e49, 0x8e4b,
- 0x8e48, 0x8e4a, 0x8f44, 0x8f3e, 0x8f42, 0x8f45, 0x8f3f, 0x907f,
- 0x907d, 0x9084, 0x9081, 0x9082, 0x9080, 0x9139, 0x91a3, 0x919e,
- 0x919c, 0x934d, 0x9382, 0x9328, 0x9375, 0x934a, 0x9365, 0x934b,
- 0x9318, 0x937e, 0x936c, 0x935b, 0x9370, 0x935a, 0x9354, 0x95ca,
- 0x95cb, 0x95cc, 0x95c8, 0x95c6, 0x96b1, 0x96b8, 0x96d6, 0x971c,
- 0x971e, 0x97a0, 0x97d3, 0x9846, 0x98b6, 0x9935, 0x9a01, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x99ff, 0x9bae, 0x9bab, 0x9baa, 0x9bad, 0x9d3b, 0x9d3f, 0x9e8b,
- 0x9ecf, 0x9ede, 0x9edc, 0x9edd, 0x9edb, 0x9f3e, 0x9f4b, 0x53e2,
- 0x5695, 0x56ae, 0x58d9, 0x58d8, 0x5b38, 0x5f5d, 0x61e3, 0x6233,
- 0x64f4, 0x64f2, 0x64fe, 0x6506, 0x64fa, 0x64fb, 0x64f7, 0x65b7,
- 0x66dc, 0x6726, 0x6ab3, 0x6aac, 0x6ac3, 0x6abb, 0x6ab8, 0x6ac2,
- 0x6aae, 0x6aaf, 0x6b5f, 0x6b78, 0x6baf, 0x7009, 0x700b, 0x6ffe,
- 0x7006, 0x6ffa, 0x7011, 0x700f, 0x71fb, 0x71fc, 0x71fe, 0x71f8,
- 0x7377, 0x7375, 0x74a7, 0x74bf, 0x7515, 0x7656, 0x7658, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7652, 0x77bd, 0x77bf, 0x77bb, 0x77bc, 0x790e, 0x79ae,
- 0x7a61, 0x7a62, 0x7a60, 0x7ac4, 0x7ac5, 0x7c2b, 0x7c27, 0x7c2a,
- 0x7c1e, 0x7c23, 0x7c21, 0x7ce7, 0x7e54, 0x7e55, 0x7e5e, 0x7e5a,
- 0x7e61, 0x7e52, 0x7e59, 0x7f48, 0x7ff9, 0x7ffb, 0x8077, 0x8076,
- 0x81cd, 0x81cf, 0x820a, 0x85cf, 0x85a9, 0x85cd, 0x85d0, 0x85c9,
- 0x85b0, 0x85ba, 0x85b9, 0x85a6, 0x87ef, 0x87ec, 0x87f2, 0x87e0,
- 0x8986, 0x89b2, 0x89f4, 0x8b28, 0x8b39, 0x8b2c, 0x8b2b, 0x8c50,
- 0x8d05, 0x8e59, 0x8e63, 0x8e66, 0x8e64, 0x8e5f, 0x8e55, 0x8ec0,
- 0x8f49, 0x8f4d, 0x9087, 0x9083, 0x9088, 0x91ab, 0x91ac, 0x91d0,
- 0x9394, 0x938a, 0x9396, 0x93a2, 0x93b3, 0x93ae, 0x93ac, 0x93b0,
- 0x9398, 0x939a, 0x9397, 0x95d4, 0x95d6, 0x95d0, 0x95d5, 0x96e2,
- 0x96dc, 0x96d9, 0x96db, 0x96de, 0x9724, 0x97a3, 0x97a6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x97ad, 0x97f9, 0x984d, 0x984f, 0x984c, 0x984e, 0x9853, 0x98ba,
- 0x993e, 0x993f, 0x993d, 0x992e, 0x99a5, 0x9a0e, 0x9ac1, 0x9b03,
- 0x9b06, 0x9b4f, 0x9b4e, 0x9b4d, 0x9bca, 0x9bc9, 0x9bfd, 0x9bc8,
- 0x9bc0, 0x9d51, 0x9d5d, 0x9d60, 0x9ee0, 0x9f15, 0x9f2c, 0x5133,
- 0x56a5, 0x58de, 0x58df, 0x58e2, 0x5bf5, 0x9f90, 0x5eec, 0x61f2,
- 0x61f7, 0x61f6, 0x61f5, 0x6500, 0x650f, 0x66e0, 0x66dd, 0x6ae5,
- 0x6add, 0x6ada, 0x6ad3, 0x701b, 0x701f, 0x7028, 0x701a, 0x701d,
- 0x7015, 0x7018, 0x7206, 0x720d, 0x7258, 0x72a2, 0x7378, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x737a, 0x74bd, 0x74ca, 0x74e3, 0x7587, 0x7586, 0x765f,
- 0x7661, 0x77c7, 0x7919, 0x79b1, 0x7a6b, 0x7a69, 0x7c3e, 0x7c3f,
- 0x7c38, 0x7c3d, 0x7c37, 0x7c40, 0x7e6b, 0x7e6d, 0x7e79, 0x7e69,
- 0x7e6a, 0x7f85, 0x7e73, 0x7fb6, 0x7fb9, 0x7fb8, 0x81d8, 0x85e9,
- 0x85dd, 0x85ea, 0x85d5, 0x85e4, 0x85e5, 0x85f7, 0x87fb, 0x8805,
- 0x880d, 0x87f9, 0x87fe, 0x8960, 0x895f, 0x8956, 0x895e, 0x8b41,
- 0x8b5c, 0x8b58, 0x8b49, 0x8b5a, 0x8b4e, 0x8b4f, 0x8b46, 0x8b59,
- 0x8d08, 0x8d0a, 0x8e7c, 0x8e72, 0x8e87, 0x8e76, 0x8e6c, 0x8e7a,
- 0x8e74, 0x8f54, 0x8f4e, 0x8fad, 0x908a, 0x908b, 0x91b1, 0x91ae,
- 0x93e1, 0x93d1, 0x93df, 0x93c3, 0x93c8, 0x93dc, 0x93dd, 0x93d6,
- 0x93e2, 0x93cd, 0x93d8, 0x93e4, 0x93d7, 0x93e8, 0x95dc, 0x96b4,
- 0x96e3, 0x972a, 0x9727, 0x9761, 0x97dc, 0x97fb, 0x985e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x9858, 0x985b, 0x98bc, 0x9945, 0x9949, 0x9a16, 0x9a19, 0x9b0d,
- 0x9be8, 0x9be7, 0x9bd6, 0x9bdb, 0x9d89, 0x9d61, 0x9d72, 0x9d6a,
- 0x9d6c, 0x9e92, 0x9e97, 0x9e93, 0x9eb4, 0x52f8, 0x56a8, 0x56b7,
- 0x56b6, 0x56b4, 0x56bc, 0x58e4, 0x5b40, 0x5b43, 0x5b7d, 0x5bf6,
- 0x5dc9, 0x61f8, 0x61fa, 0x6518, 0x6514, 0x6519, 0x66e6, 0x6727,
- 0x6aec, 0x703e, 0x7030, 0x7032, 0x7210, 0x737b, 0x74cf, 0x7662,
- 0x7665, 0x7926, 0x792a, 0x792c, 0x792b, 0x7ac7, 0x7af6, 0x7c4c,
- 0x7c43, 0x7c4d, 0x7cef, 0x7cf0, 0x8fae, 0x7e7d, 0x7e7c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7e82, 0x7f4c, 0x8000, 0x81da, 0x8266, 0x85fb, 0x85f9,
- 0x8611, 0x85fa, 0x8606, 0x860b, 0x8607, 0x860a, 0x8814, 0x8815,
- 0x8964, 0x89ba, 0x89f8, 0x8b70, 0x8b6c, 0x8b66, 0x8b6f, 0x8b5f,
- 0x8b6b, 0x8d0f, 0x8d0d, 0x8e89, 0x8e81, 0x8e85, 0x8e82, 0x91b4,
- 0x91cb, 0x9418, 0x9403, 0x93fd, 0x95e1, 0x9730, 0x98c4, 0x9952,
- 0x9951, 0x99a8, 0x9a2b, 0x9a30, 0x9a37, 0x9a35, 0x9c13, 0x9c0d,
- 0x9e79, 0x9eb5, 0x9ee8, 0x9f2f, 0x9f5f, 0x9f63, 0x9f61, 0x5137,
- 0x5138, 0x56c1, 0x56c0, 0x56c2, 0x5914, 0x5c6c, 0x5dcd, 0x61fc,
- 0x61fe, 0x651d, 0x651c, 0x6595, 0x66e9, 0x6afb, 0x6b04, 0x6afa,
- 0x6bb2, 0x704c, 0x721b, 0x72a7, 0x74d6, 0x74d4, 0x7669, 0x77d3,
- 0x7c50, 0x7e8f, 0x7e8c, 0x7fbc, 0x8617, 0x862d, 0x861a, 0x8823,
- 0x8822, 0x8821, 0x881f, 0x896a, 0x896c, 0x89bd, 0x8b74, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8b77, 0x8b7d, 0x8d13, 0x8e8a, 0x8e8d, 0x8e8b, 0x8f5f, 0x8faf,
- 0x91ba, 0x942e, 0x9433, 0x9435, 0x943a, 0x9438, 0x9432, 0x942b,
- 0x95e2, 0x9738, 0x9739, 0x9732, 0x97ff, 0x9867, 0x9865, 0x9957,
- 0x9a45, 0x9a43, 0x9a40, 0x9a3e, 0x9acf, 0x9b54, 0x9b51, 0x9c2d,
- 0x9c25, 0x9daf, 0x9db4, 0x9dc2, 0x9db8, 0x9e9d, 0x9eef, 0x9f19,
- 0x9f5c, 0x9f66, 0x9f67, 0x513c, 0x513b, 0x56c8, 0x56ca, 0x56c9,
- 0x5b7f, 0x5dd4, 0x5dd2, 0x5f4e, 0x61ff, 0x6524, 0x6b0a, 0x6b61,
- 0x7051, 0x7058, 0x7380, 0x74e4, 0x758a, 0x766e, 0x766c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x79b3, 0x7c60, 0x7c5f, 0x807e, 0x807d, 0x81df, 0x8972,
- 0x896f, 0x89fc, 0x8b80, 0x8d16, 0x8d17, 0x8e91, 0x8e93, 0x8f61,
- 0x9148, 0x9444, 0x9451, 0x9452, 0x973d, 0x973e, 0x97c3, 0x97c1,
- 0x986b, 0x9955, 0x9a55, 0x9a4d, 0x9ad2, 0x9b1a, 0x9c49, 0x9c31,
- 0x9c3e, 0x9c3b, 0x9dd3, 0x9dd7, 0x9f34, 0x9f6c, 0x9f6a, 0x9f94,
- 0x56cc, 0x5dd6, 0x6200, 0x6523, 0x652b, 0x652a, 0x66ec, 0x6b10,
- 0x74da, 0x7aca, 0x7c64, 0x7c63, 0x7c65, 0x7e93, 0x7e96, 0x7e94,
- 0x81e2, 0x8638, 0x863f, 0x8831, 0x8b8a, 0x9090, 0x908f, 0x9463,
- 0x9460, 0x9464, 0x9768, 0x986f, 0x995c, 0x9a5a, 0x9a5b, 0x9a57,
- 0x9ad3, 0x9ad4, 0x9ad1, 0x9c54, 0x9c57, 0x9c56, 0x9de5, 0x9e9f,
- 0x9ef4, 0x56d1, 0x58e9, 0x652c, 0x705e, 0x7671, 0x7672, 0x77d7,
- 0x7f50, 0x7f88, 0x8836, 0x8839, 0x8862, 0x8b93, 0x8b92, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8b96, 0x8277, 0x8d1b, 0x91c0, 0x946a, 0x9742, 0x9748, 0x9744,
- 0x97c6, 0x9870, 0x9a5f, 0x9b22, 0x9b58, 0x9c5f, 0x9df9, 0x9dfa,
- 0x9e7c, 0x9e7d, 0x9f07, 0x9f77, 0x9f72, 0x5ef3, 0x6b16, 0x7063,
- 0x7c6c, 0x7c6e, 0x883b, 0x89c0, 0x8ea1, 0x91c1, 0x9472, 0x9470,
- 0x9871, 0x995e, 0x9ad6, 0x9b23, 0x9ecc, 0x7064, 0x77da, 0x8b9a,
- 0x9477, 0x97c9, 0x9a62, 0x9a65, 0x7e9c, 0x8b9c, 0x8eaa, 0x91c5,
- 0x947d, 0x947e, 0x947c, 0x9c77, 0x9c78, 0x9ef7, 0x8c54, 0x947f,
- 0x9e1a, 0x7228, 0x9a6a, 0x9b31, 0x9e1b, 0x9e1e, 0x7c72, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4e42, 0x4e5c, 0x51f5, 0x531a, 0x5382, 0x4e07, 0x4e0c, 0x4e47,
- 0x4e8d, 0x56d7, 0x0000, 0x5c6e, 0x5f73, 0x4e0f, 0x5187, 0x4e0e,
- 0x4e2e, 0x4e93, 0x4ec2, 0x4ec9, 0x4ec8, 0x5198, 0x52fc, 0x536c,
- 0x53b9, 0x5720, 0x5903, 0x592c, 0x5c10, 0x5dff, 0x65e1, 0x6bb3,
- 0x6bcc, 0x6c14, 0x723f, 0x4e31, 0x4e3c, 0x4ee8, 0x4edc, 0x4ee9,
- 0x4ee1, 0x4edd, 0x4eda, 0x520c, 0x531c, 0x534c, 0x5722, 0x5723,
- 0x5917, 0x592f, 0x5b81, 0x5b84, 0x5c12, 0x5c3b, 0x5c74, 0x5c73,
- 0x5e04, 0x5e80, 0x5e82, 0x5fc9, 0x6209, 0x6250, 0x6c15, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6c36, 0x6c43, 0x6c3f, 0x6c3b, 0x72ae, 0x72b0, 0x738a,
- 0x79b8, 0x808a, 0x961e, 0x4f0e, 0x4f18, 0x4f2c, 0x4ef5, 0x4f14,
- 0x4ef1, 0x4f00, 0x4ef7, 0x4f08, 0x4f1d, 0x4f02, 0x4f05, 0x4f22,
- 0x4f13, 0x4f04, 0x4ef4, 0x4f12, 0x51b1, 0x5213, 0x5209, 0x5210,
- 0x52a6, 0x5322, 0x531f, 0x534d, 0x538a, 0x5407, 0x56e1, 0x56df,
- 0x572e, 0x572a, 0x5734, 0x593c, 0x5980, 0x597c, 0x5985, 0x597b,
- 0x597e, 0x5977, 0x597f, 0x5b56, 0x5c15, 0x5c25, 0x5c7c, 0x5c7a,
- 0x5c7b, 0x5c7e, 0x5ddf, 0x5e75, 0x5e84, 0x5f02, 0x5f1a, 0x5f74,
- 0x5fd5, 0x5fd4, 0x5fcf, 0x625c, 0x625e, 0x6264, 0x6261, 0x6266,
- 0x6262, 0x6259, 0x6260, 0x625a, 0x6265, 0x65ef, 0x65ee, 0x673e,
- 0x6739, 0x6738, 0x673b, 0x673a, 0x673f, 0x673c, 0x6733, 0x6c18,
- 0x6c46, 0x6c52, 0x6c5c, 0x6c4f, 0x6c4a, 0x6c54, 0x6c4b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6c4c, 0x7071, 0x725e, 0x72b4, 0x72b5, 0x738e, 0x752a, 0x767f,
- 0x7a75, 0x7f51, 0x8278, 0x827c, 0x8280, 0x827d, 0x827f, 0x864d,
- 0x897e, 0x9099, 0xe7d3, 0x9098, 0x909b, 0x9094, 0x9622, 0x9624,
- 0x9620, 0x9623, 0x4f56, 0x4f3b, 0x4f62, 0x4f49, 0x4f53, 0x4f64,
- 0x4f3e, 0x4f67, 0x4f52, 0x4f5f, 0x4f41, 0x4f58, 0x4f2d, 0x4f33,
- 0x4f3f, 0x4f61, 0x518f, 0x51b9, 0x521c, 0x521e, 0x5221, 0x52ad,
- 0x52ae, 0x5309, 0x5363, 0x5372, 0x538e, 0x538f, 0x5430, 0x5437,
- 0x542a, 0x5454, 0x5445, 0x5419, 0x541c, 0x5425, 0x5418, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x543d, 0x544f, 0x5441, 0x5428, 0x5424, 0x5447, 0x56ee,
- 0x56e7, 0x56e5, 0x5741, 0x5745, 0x574c, 0x5749, 0x574b, 0x5752,
- 0x5906, 0x5940, 0x59a6, 0x5998, 0x59a0, 0x5997, 0x598e, 0x59a2,
- 0x5990, 0x598f, 0x59a7, 0x59a1, 0x5b8e, 0x5b92, 0x5c28, 0x5c2a,
- 0x5c8d, 0x5c8f, 0x5c88, 0x5c8b, 0x5c89, 0x5c92, 0x5c8a, 0x5c86,
- 0x5c93, 0x5c95, 0x5de0, 0x5e0a, 0x5e0e, 0x5e8b, 0x5e89, 0x5e8c,
- 0x5e88, 0x5e8d, 0x5f05, 0x5f1d, 0x5f78, 0x5f76, 0x5fd2, 0x5fd1,
- 0x5fd0, 0x5fed, 0x5fe8, 0x5fee, 0x5ff3, 0x5fe1, 0x5fe4, 0x5fe3,
- 0x5ffa, 0x5fef, 0x5ff7, 0x5ffb, 0x6000, 0x5ff4, 0x623a, 0x6283,
- 0x628c, 0x628e, 0x628f, 0x6294, 0x6287, 0x6271, 0x627b, 0x627a,
- 0x6270, 0x6281, 0x6288, 0x6277, 0x627d, 0x6272, 0x6274, 0x6537,
- 0x65f0, 0x65f4, 0x65f3, 0x65f2, 0x65f5, 0x6745, 0x6747, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6759, 0x6755, 0x674c, 0x6748, 0x675d, 0x674d, 0x675a, 0x674b,
- 0x6bd0, 0x6c19, 0x6c1a, 0x6c78, 0x6c67, 0x6c6b, 0x6c84, 0x6c8b,
- 0x6c8f, 0x6c71, 0x6c6f, 0x6c69, 0x6c9a, 0x6c6d, 0x6c87, 0x6c95,
- 0x6c9c, 0x6c66, 0x6c73, 0x6c65, 0x6c7b, 0x6c8e, 0x7074, 0x707a,
- 0x7263, 0x72bf, 0x72bd, 0x72c3, 0x72c6, 0x72c1, 0x72ba, 0x72c5,
- 0x7395, 0x7397, 0x7393, 0x7394, 0x7392, 0x753a, 0x7539, 0x7594,
- 0x7595, 0x7681, 0x793d, 0x8034, 0x8095, 0x8099, 0x8090, 0x8092,
- 0x809c, 0x8290, 0x828f, 0x8285, 0x828e, 0x8291, 0x8293, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x828a, 0x8283, 0x8284, 0x8c78, 0x8fc9, 0x8fbf, 0x909f,
- 0x90a1, 0x90a5, 0x909e, 0x90a7, 0x90a0, 0x9630, 0x9628, 0x962f,
- 0x962d, 0x4e33, 0x4f98, 0x4f7c, 0x4f85, 0x4f7d, 0x4f80, 0x4f87,
- 0x4f76, 0x4f74, 0x4f89, 0x4f84, 0x4f77, 0x4f4c, 0x4f97, 0x4f6a,
- 0x4f9a, 0x4f79, 0x4f81, 0x4f78, 0x4f90, 0x4f9c, 0x4f94, 0x4f9e,
- 0x4f92, 0x4f82, 0x4f95, 0x4f6b, 0x4f6e, 0x519e, 0x51bc, 0x51be,
- 0x5235, 0x5232, 0x5233, 0x5246, 0x5231, 0x52bc, 0x530a, 0x530b,
- 0x533c, 0x5392, 0x5394, 0x5487, 0x547f, 0x5481, 0x5491, 0x5482,
- 0x5488, 0x546b, 0x547a, 0x547e, 0x5465, 0x546c, 0x5474, 0x5466,
- 0x548d, 0x546f, 0x5461, 0x5460, 0x5498, 0x5463, 0x5467, 0x5464,
- 0x56f7, 0x56f9, 0x576f, 0x5772, 0x576d, 0x576b, 0x5771, 0x5770,
- 0x5776, 0x5780, 0x5775, 0x577b, 0x5773, 0x5774, 0x5762, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5768, 0x577d, 0x590c, 0x5945, 0x59b5, 0x59ba, 0x59cf, 0x59ce,
- 0x59b2, 0x59cc, 0x59c1, 0x59b6, 0x59bc, 0x59c3, 0x59d6, 0x59b1,
- 0x59bd, 0x59c0, 0x59c8, 0x59b4, 0x59c7, 0x5b62, 0x5b65, 0x5b93,
- 0x5b95, 0x5c44, 0x5c47, 0x5cae, 0x5ca4, 0x5ca0, 0x5cb5, 0x5caf,
- 0x5ca8, 0x5cac, 0x5c9f, 0x5ca3, 0x5cad, 0x5ca2, 0x5caa, 0x5ca7,
- 0x5c9d, 0x5ca5, 0x5cb6, 0x5cb0, 0x5ca6, 0x5e17, 0x5e14, 0x5e19,
- 0x5f28, 0x5f22, 0x5f23, 0x5f24, 0x5f54, 0x5f82, 0x5f7e, 0x5f7d,
- 0x5fde, 0x5fe5, 0x602d, 0x6026, 0x6019, 0x6032, 0x600b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6034, 0x600a, 0x6017, 0x6033, 0x601a, 0x601e, 0x602c,
- 0x6022, 0x600d, 0x6010, 0x602e, 0x6013, 0x6011, 0x600c, 0x6009,
- 0x601c, 0x6214, 0x623d, 0x62ad, 0x62b4, 0x62d1, 0x62be, 0x62aa,
- 0x62b6, 0x62ca, 0x62ae, 0x62b3, 0x62af, 0x62bb, 0x62a9, 0x62b0,
- 0x62b8, 0x653d, 0x65a8, 0x65bb, 0x6609, 0x65fc, 0x6604, 0x6612,
- 0x6608, 0x65fb, 0x6603, 0x660b, 0x660d, 0x6605, 0x65fd, 0x6611,
- 0x6610, 0x66f6, 0x670a, 0x6785, 0x676c, 0x678e, 0x6792, 0x6776,
- 0x677b, 0x6798, 0x6786, 0x6784, 0x6774, 0x678d, 0x678c, 0x677a,
- 0x679f, 0x6791, 0x6799, 0x6783, 0x677d, 0x6781, 0x6778, 0x6779,
- 0x6794, 0x6b25, 0x6b80, 0x6b7e, 0x6bde, 0x6c1d, 0x6c93, 0x6cec,
- 0x6ceb, 0x6cee, 0x6cd9, 0x6cb6, 0x6cd4, 0x6cad, 0x6ce7, 0x6cb7,
- 0x6cd0, 0x6cc2, 0x6cba, 0x6cc3, 0x6cc6, 0x6ced, 0x6cf2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6cd2, 0x6cdd, 0x6cb4, 0x6c8a, 0x6c9d, 0x6c80, 0x6cde, 0x6cc0,
- 0x6d30, 0x6ccd, 0x6cc7, 0x6cb0, 0x6cf9, 0x6ccf, 0x6ce9, 0x6cd1,
- 0x7094, 0x7098, 0x7085, 0x7093, 0x7086, 0x7084, 0x7091, 0x7096,
- 0x7082, 0x709a, 0x7083, 0x726a, 0x72d6, 0x72cb, 0x72d8, 0x72c9,
- 0x72dc, 0x72d2, 0x72d4, 0x72da, 0x72cc, 0x72d1, 0x73a4, 0x73a1,
- 0x73ad, 0x73a6, 0x73a2, 0x73a0, 0x73ac, 0x739d, 0x74dd, 0x74e8,
- 0x753f, 0x7540, 0x753e, 0x758c, 0x7598, 0x76af, 0x76f3, 0x76f1,
- 0x76f0, 0x76f5, 0x77f8, 0x77fc, 0x77f9, 0x77fb, 0x77fa, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x77f7, 0x7942, 0x793f, 0x79c5, 0x7a78, 0x7a7b, 0x7afb,
- 0x7c75, 0x7cfd, 0x8035, 0x808f, 0x80ae, 0x80a3, 0x80b8, 0x80b5,
- 0x80ad, 0x8220, 0x82a0, 0x82c0, 0x82ab, 0x829a, 0x8298, 0x829b,
- 0x82b5, 0x82a7, 0x82ae, 0x82bc, 0x829e, 0x82ba, 0x82b4, 0x82a8,
- 0x82a1, 0x82a9, 0x82c2, 0x82a4, 0x82c3, 0x82b6, 0x82a2, 0x8670,
- 0x866f, 0x866d, 0x866e, 0x8c56, 0x8fd2, 0x8fcb, 0x8fd3, 0x8fcd,
- 0x8fd6, 0x8fd5, 0x8fd7, 0x90b2, 0x90b4, 0x90af, 0x90b3, 0x90b0,
- 0x9639, 0x963d, 0x963c, 0x963a, 0x9643, 0x4fcd, 0x4fc5, 0x4fd3,
- 0x4fb2, 0x4fc9, 0x4fcb, 0x4fc1, 0x4fd4, 0x4fdc, 0x4fd9, 0x4fbb,
- 0x4fb3, 0x4fdb, 0x4fc7, 0x4fd6, 0x4fba, 0x4fc0, 0x4fb9, 0x4fec,
- 0x5244, 0x5249, 0x52c0, 0x52c2, 0x533d, 0x537c, 0x5397, 0x5396,
- 0x5399, 0x5398, 0x54ba, 0x54a1, 0x54ad, 0x54a5, 0x54cf, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x54c3, 0x830d, 0x54b7, 0x54ae, 0x54d6, 0x54b6, 0x54c5, 0x54c6,
- 0x54a0, 0x5470, 0x54bc, 0x54a2, 0x54be, 0x5472, 0x54de, 0x54b0,
- 0x57b5, 0x579e, 0x579f, 0x57a4, 0x578c, 0x5797, 0x579d, 0x579b,
- 0x5794, 0x5798, 0x578f, 0x5799, 0x57a5, 0x579a, 0x5795, 0x58f4,
- 0x590d, 0x5953, 0x59e1, 0x59de, 0x59ee, 0x5a00, 0x59f1, 0x59dd,
- 0x59fa, 0x59fd, 0x59fc, 0x59f6, 0x59e4, 0x59f2, 0x59f7, 0x59db,
- 0x59e9, 0x59f3, 0x59f5, 0x59e0, 0x59fe, 0x59f4, 0x59ed, 0x5ba8,
- 0x5c4c, 0x5cd0, 0x5cd8, 0x5ccc, 0x5cd7, 0x5ccb, 0x5cdb, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5cde, 0x5cda, 0x5cc9, 0x5cc7, 0x5cca, 0x5cd6, 0x5cd3,
- 0x5cd4, 0x5ccf, 0x5cc8, 0x5cc6, 0x5cce, 0x5cdf, 0x5cf8, 0x5df9,
- 0x5e21, 0x5e22, 0x5e23, 0x5e20, 0x5e24, 0x5eb0, 0x5ea4, 0x5ea2,
- 0x5e9b, 0x5ea3, 0x5ea5, 0x5f07, 0x5f2e, 0x5f56, 0x5f86, 0x6037,
- 0x6039, 0x6054, 0x6072, 0x605e, 0x6045, 0x6053, 0x6047, 0x6049,
- 0x605b, 0x604c, 0x6040, 0x6042, 0x605f, 0x6024, 0x6044, 0x6058,
- 0x6066, 0x606e, 0x6242, 0x6243, 0x62cf, 0x630d, 0x630b, 0x62f5,
- 0x630e, 0x6303, 0x62eb, 0x62f9, 0x630f, 0x630c, 0x62f8, 0x62f6,
- 0x6300, 0x6313, 0x6314, 0x62fa, 0x6315, 0x62fb, 0x62f0, 0x6541,
- 0x6543, 0x65aa, 0x65bf, 0x6636, 0x6621, 0x6632, 0x6635, 0x661c,
- 0x6626, 0x6622, 0x6633, 0x662b, 0x663a, 0x661d, 0x6634, 0x6639,
- 0x662e, 0x670f, 0x6710, 0x67c1, 0x67f2, 0x67c8, 0x67ba, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x67dc, 0x67bb, 0x67f8, 0x67d8, 0x67c0, 0x67b7, 0x67c5, 0x67eb,
- 0x67e4, 0x67df, 0x67b5, 0x67cd, 0x67b3, 0x67f7, 0x67f6, 0x67ee,
- 0x67e3, 0x67c2, 0x67b9, 0x67ce, 0x67e7, 0x67f0, 0x67b2, 0x67fc,
- 0x67c6, 0x67ed, 0x67cc, 0x67ae, 0x67e6, 0x67db, 0x67fa, 0x67c9,
- 0x67ca, 0x67c3, 0x67ea, 0x67cb, 0x6b28, 0x6b82, 0x6b84, 0x6bb6,
- 0x6bd6, 0x6bd8, 0x6be0, 0x6c20, 0x6c21, 0x6d28, 0x6d34, 0x6d2d,
- 0x6d1f, 0x6d3c, 0x6d3f, 0x6d12, 0x6d0a, 0x6cda, 0x6d33, 0x6d04,
- 0x6d19, 0x6d3a, 0x6d1a, 0x6d11, 0x6d00, 0x6d1d, 0x6d42, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6d01, 0x6d18, 0x6d37, 0x6d03, 0x6d0f, 0x6d40, 0x6d07,
- 0x6d20, 0x6d2c, 0x6d08, 0x6d22, 0x6d09, 0x6d10, 0x70b7, 0x709f,
- 0x70be, 0x70b1, 0x70b0, 0x70a1, 0x70b4, 0x70b5, 0x70a9, 0x7241,
- 0x7249, 0x724a, 0x726c, 0x7270, 0x7273, 0x726e, 0x72ca, 0x72e4,
- 0x72e8, 0x72eb, 0x72df, 0x72ea, 0x72e6, 0x72e3, 0x7385, 0x73cc,
- 0x73c2, 0x73c8, 0x73c5, 0x73b9, 0x73b6, 0x73b5, 0x73b4, 0x73eb,
- 0x73bf, 0x73c7, 0x73be, 0x73c3, 0x73c6, 0x73b8, 0x73cb, 0x74ec,
- 0x74ee, 0x752e, 0x7547, 0x7548, 0x75a7, 0x75aa, 0x7679, 0x76c4,
- 0x7708, 0x7703, 0x7704, 0x7705, 0x770a, 0x76f7, 0x76fb, 0x76fa,
- 0x77e7, 0x77e8, 0x7806, 0x7811, 0x7812, 0x7805, 0x7810, 0x780f,
- 0x780e, 0x7809, 0x7803, 0x7813, 0x794a, 0x794c, 0x794b, 0x7945,
- 0x7944, 0x79d5, 0x79cd, 0x79cf, 0x79d6, 0x79ce, 0x7a80, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7a7e, 0x7ad1, 0x7b00, 0x7b01, 0x7c7a, 0x7c78, 0x7c79, 0x7c7f,
- 0x7c80, 0x7c81, 0x7d03, 0x7d08, 0x7d01, 0x7f58, 0x7f91, 0x7f8d,
- 0x7fbe, 0x8007, 0x800e, 0x800f, 0x8014, 0x8037, 0x80d8, 0x80c7,
- 0x80e0, 0x80d1, 0x80c8, 0x80c2, 0x80d0, 0x80c5, 0x80e3, 0x80d9,
- 0x80dc, 0x80ca, 0x80d5, 0x80c9, 0x80cf, 0x80d7, 0x80e6, 0x80cd,
- 0x81ff, 0x8221, 0x8294, 0x82d9, 0x82fe, 0x82f9, 0x8307, 0x82e8,
- 0x8300, 0x82d5, 0x833a, 0x82eb, 0x82d6, 0x82f4, 0x82ec, 0x82e1,
- 0x82f2, 0x82f5, 0x830c, 0x82fb, 0x82f6, 0x82f0, 0x82ea, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x82e4, 0x82e0, 0x82fa, 0x82f3, 0x82ed, 0x8677, 0x8674,
- 0x867c, 0x8673, 0x8841, 0x884e, 0x8867, 0x886a, 0x8869, 0x89d3,
- 0x8a04, 0x8a07, 0x8d72, 0x8fe3, 0x8fe1, 0x8fee, 0x8fe0, 0x90f1,
- 0x90bd, 0x90bf, 0x90d5, 0x90c5, 0x90be, 0x90c7, 0x90cb, 0x90c8,
- 0x91d4, 0x91d3, 0x9654, 0x964f, 0x9651, 0x9653, 0x964a, 0x964e,
- 0x501e, 0x5005, 0x5007, 0x5013, 0x5022, 0x5030, 0x501b, 0x4ff5,
- 0x4ff4, 0x5033, 0x5037, 0x502c, 0x4ff6, 0x4ff7, 0x5017, 0x501c,
- 0x5020, 0x5027, 0x5035, 0x502f, 0x5031, 0x500e, 0x515a, 0x5194,
- 0x5193, 0x51ca, 0x51c4, 0x51c5, 0x51c8, 0x51ce, 0x5261, 0x525a,
- 0x5252, 0x525e, 0x525f, 0x5255, 0x5262, 0x52cd, 0x530e, 0x539e,
- 0x5526, 0x54e2, 0x5517, 0x5512, 0x54e7, 0x54f3, 0x54e4, 0x551a,
- 0x54ff, 0x5504, 0x5508, 0x54eb, 0x5511, 0x5505, 0x54f1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x550a, 0x54fb, 0x54f7, 0x54f8, 0x54e0, 0x550e, 0x5503, 0x550b,
- 0x5701, 0x5702, 0x57cc, 0x5832, 0x57d5, 0x57d2, 0x57ba, 0x57c6,
- 0x57bd, 0x57bc, 0x57b8, 0x57b6, 0x57bf, 0x57c7, 0x57d0, 0x57b9,
- 0x57c1, 0x590e, 0x594a, 0x5a19, 0x5a16, 0x5a2d, 0x5a2e, 0x5a15,
- 0x5a0f, 0x5a17, 0x5a0a, 0x5a1e, 0x5a33, 0x5b6c, 0x5ba7, 0x5bad,
- 0x5bac, 0x5c03, 0x5c56, 0x5c54, 0x5cec, 0x5cff, 0x5cee, 0x5cf1,
- 0x5cf7, 0x5d00, 0x5cf9, 0x5e29, 0x5e28, 0x5ea8, 0x5eae, 0x5eaa,
- 0x5eac, 0x5f33, 0x5f30, 0x5f67, 0x605d, 0x605a, 0x6067, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6041, 0x60a2, 0x6088, 0x6080, 0x6092, 0x6081, 0x609d,
- 0x6083, 0x6095, 0x609b, 0x6097, 0x6087, 0x609c, 0x608e, 0x6219,
- 0x6246, 0x62f2, 0x6310, 0x6356, 0x632c, 0x6344, 0x6345, 0x6336,
- 0x6343, 0x63e4, 0x6339, 0x634b, 0x634a, 0x633c, 0x6329, 0x6341,
- 0x6334, 0x6358, 0x6354, 0x6359, 0x632d, 0x6347, 0x6333, 0x635a,
- 0x6351, 0x6338, 0x6357, 0x6340, 0x6348, 0x654a, 0x6546, 0x65c6,
- 0x65c3, 0x65c4, 0x65c2, 0x664a, 0x665f, 0x6647, 0x6651, 0x6712,
- 0x6713, 0x681f, 0x681a, 0x6849, 0x6832, 0x6833, 0x683b, 0x684b,
- 0x684f, 0x6816, 0x6831, 0x681c, 0x6835, 0x682b, 0x682d, 0x682f,
- 0x684e, 0x6844, 0x6834, 0x681d, 0x6812, 0x6814, 0x6826, 0x6828,
- 0x682e, 0x684d, 0x683a, 0x6825, 0x6820, 0x6b2c, 0x6b2f, 0x6b2d,
- 0x6b31, 0x6b34, 0x6b6d, 0x8082, 0x6b88, 0x6be6, 0x6be4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6be8, 0x6be3, 0x6be2, 0x6be7, 0x6c25, 0x6d7a, 0x6d63, 0x6d64,
- 0x6d76, 0x6d0d, 0x6d61, 0x6d92, 0x6d58, 0x6d62, 0x6d6d, 0x6d6f,
- 0x6d91, 0x6d8d, 0x6def, 0x6d7f, 0x6d86, 0x6d5e, 0x6d67, 0x6d60,
- 0x6d97, 0x6d70, 0x6d7c, 0x6d5f, 0x6d82, 0x6d98, 0x6d2f, 0x6d68,
- 0x6d8b, 0x6d7e, 0x6d80, 0x6d84, 0x6d16, 0x6d83, 0x6d7b, 0x6d7d,
- 0x6d75, 0x6d90, 0x70dc, 0x70d3, 0x70d1, 0x70dd, 0x70cb, 0x7f39,
- 0x70e2, 0x70d7, 0x70d2, 0x70de, 0x70e0, 0x70d4, 0x70cd, 0x70c5,
- 0x70c6, 0x70c7, 0x70da, 0x70ce, 0x70e1, 0x7242, 0x7278, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7277, 0x7276, 0x7300, 0x72fa, 0x72f4, 0x72fe, 0x72f6,
- 0x72f3, 0x72fb, 0x7301, 0x73d3, 0x73d9, 0x73e5, 0x73d6, 0x73bc,
- 0x73e7, 0x73e3, 0x73e9, 0x73dc, 0x73d2, 0x73db, 0x73d4, 0x73dd,
- 0x73da, 0x73d7, 0x73d8, 0x73e8, 0x74de, 0x74df, 0x74f4, 0x74f5,
- 0x7521, 0x755b, 0x755f, 0x75b0, 0x75c1, 0x75bb, 0x75c4, 0x75c0,
- 0x75bf, 0x75b6, 0x75ba, 0x768a, 0x76c9, 0x771d, 0x771b, 0x7710,
- 0x7713, 0x7712, 0x7723, 0x7711, 0x7715, 0x7719, 0x771a, 0x7722,
- 0x7727, 0x7823, 0x782c, 0x7822, 0x7835, 0x782f, 0x7828, 0x782e,
- 0x782b, 0x7821, 0x7829, 0x7833, 0x782a, 0x7831, 0x7954, 0x795b,
- 0x794f, 0x795c, 0x7953, 0x7952, 0x7951, 0x79eb, 0x79ec, 0x79e0,
- 0x79ee, 0x79ed, 0x79ea, 0x79dc, 0x79de, 0x79dd, 0x7a86, 0x7a89,
- 0x7a85, 0x7a8b, 0x7a8c, 0x7a8a, 0x7a87, 0x7ad8, 0x7b10, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7b04, 0x7b13, 0x7b05, 0x7b0f, 0x7b08, 0x7b0a, 0x7b0e, 0x7b09,
- 0x7b12, 0x7c84, 0x7c91, 0x7c8a, 0x7c8c, 0x7c88, 0x7c8d, 0x7c85,
- 0x7d1e, 0x7d1d, 0x7d11, 0x7d0e, 0x7d18, 0x7d16, 0x7d13, 0x7d1f,
- 0x7d12, 0x7d0f, 0x7d0c, 0x7f5c, 0x7f61, 0x7f5e, 0x7f60, 0x7f5d,
- 0x7f5b, 0x7f96, 0x7f92, 0x7fc3, 0x7fc2, 0x7fc0, 0x8016, 0x803e,
- 0x8039, 0x80fa, 0x80f2, 0x80f9, 0x80f5, 0x8101, 0x80fb, 0x8100,
- 0x8201, 0x822f, 0x8225, 0x8333, 0x832d, 0x8344, 0x8319, 0x8351,
- 0x8325, 0x8356, 0x833f, 0x8341, 0x8326, 0x831c, 0x8322, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8342, 0x834e, 0x831b, 0x832a, 0x8308, 0x833c, 0x834d,
- 0x8316, 0x8324, 0x8320, 0x8337, 0x832f, 0x8329, 0x8347, 0x8345,
- 0x834c, 0x8353, 0x831e, 0x832c, 0x834b, 0x8327, 0x8348, 0x8653,
- 0x8652, 0x86a2, 0x86a8, 0x8696, 0x868d, 0x8691, 0x869e, 0x8687,
- 0x8697, 0x8686, 0x868b, 0x869a, 0x8685, 0x86a5, 0x8699, 0x86a1,
- 0x86a7, 0x8695, 0x8698, 0x868e, 0x869d, 0x8690, 0x8694, 0x8843,
- 0x8844, 0x886d, 0x8875, 0x8876, 0x8872, 0x8880, 0x8871, 0x887f,
- 0x886f, 0x8883, 0x887e, 0x8874, 0x887c, 0x8a12, 0x8c47, 0x8c57,
- 0x8c7b, 0x8ca4, 0x8ca3, 0x8d76, 0x8d78, 0x8db5, 0x8db7, 0x8db6,
- 0x8ed1, 0x8ed3, 0x8ffe, 0x8ff5, 0x9002, 0x8fff, 0x8ffb, 0x9004,
- 0x8ffc, 0x8ff6, 0x90d6, 0x90e0, 0x90d9, 0x90da, 0x90e3, 0x90df,
- 0x90e5, 0x90d8, 0x90db, 0x90d7, 0x90dc, 0x90e4, 0x9150, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x914e, 0x914f, 0x91d5, 0x91e2, 0x91da, 0x965c, 0x965f, 0x96bc,
- 0x98e3, 0x9adf, 0x9b2f, 0x4e7f, 0x5070, 0x506a, 0x5061, 0x505e,
- 0x5060, 0x5053, 0x504b, 0x505d, 0x5072, 0x5048, 0x504d, 0x5041,
- 0x505b, 0x504a, 0x5062, 0x5015, 0x5045, 0x505f, 0x5069, 0x506b,
- 0x5063, 0x5064, 0x5046, 0x5040, 0x506e, 0x5073, 0x5057, 0x5051,
- 0x51d0, 0x526b, 0x526d, 0x526c, 0x526e, 0x52d6, 0x52d3, 0x532d,
- 0x539c, 0x5575, 0x5576, 0x553c, 0x554d, 0x5550, 0x5534, 0x552a,
- 0x5551, 0x5562, 0x5536, 0x5535, 0x5530, 0x5552, 0x5545, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x550c, 0x5532, 0x5565, 0x554e, 0x5539, 0x5548, 0x552d,
- 0x553b, 0x5540, 0x554b, 0x570a, 0x5707, 0x57fb, 0x5814, 0x57e2,
- 0x57f6, 0x57dc, 0x57f4, 0x5800, 0x57ed, 0x57fd, 0x5808, 0x57f8,
- 0x580b, 0x57f3, 0x57cf, 0x5807, 0x57ee, 0x57e3, 0x57f2, 0x57e5,
- 0x57ec, 0x57e1, 0x580e, 0x57fc, 0x5810, 0x57e7, 0x5801, 0x580c,
- 0x57f1, 0x57e9, 0x57f0, 0x580d, 0x5804, 0x595c, 0x5a60, 0x5a58,
- 0x5a55, 0x5a67, 0x5a5e, 0x5a38, 0x5a35, 0x5a6d, 0x5a50, 0x5a5f,
- 0x5a65, 0x5a6c, 0x5a53, 0x5a64, 0x5a57, 0x5a43, 0x5a5d, 0x5a52,
- 0x5a44, 0x5a5b, 0x5a48, 0x5a8e, 0x5a3e, 0x5a4d, 0x5a39, 0x5a4c,
- 0x5a70, 0x5a69, 0x5a47, 0x5a51, 0x5a56, 0x5a42, 0x5a5c, 0x5b72,
- 0x5b6e, 0x5bc1, 0x5bc0, 0x5c59, 0x5d1e, 0x5d0b, 0x5d1d, 0x5d1a,
- 0x5d20, 0x5d0c, 0x5d28, 0x5d0d, 0x5d26, 0x5d25, 0x5d0f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5d30, 0x5d12, 0x5d23, 0x5d1f, 0x5d2e, 0x5e3e, 0x5e34, 0x5eb1,
- 0x5eb4, 0x5eb9, 0x5eb2, 0x5eb3, 0x5f36, 0x5f38, 0x5f9b, 0x5f96,
- 0x5f9f, 0x608a, 0x6090, 0x6086, 0x60be, 0x60b0, 0x60ba, 0x60d3,
- 0x60d4, 0x60cf, 0x60e4, 0x60d9, 0x60dd, 0x60c8, 0x60b1, 0x60db,
- 0x60b7, 0x60ca, 0x60bf, 0x60c3, 0x60cd, 0x60c0, 0x6332, 0x6365,
- 0x638a, 0x6382, 0x637d, 0x63bd, 0x639e, 0x63ad, 0x639d, 0x6397,
- 0x63ab, 0x638e, 0x636f, 0x6387, 0x6390, 0x636e, 0x63af, 0x6375,
- 0x639c, 0x636d, 0x63ae, 0x637c, 0x63a4, 0x633b, 0x639f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6378, 0x6385, 0x6381, 0x6391, 0x638d, 0x6370, 0x6553,
- 0x65cd, 0x6665, 0x6661, 0x665b, 0x6659, 0x665c, 0x6662, 0x6718,
- 0x6879, 0x6887, 0x6890, 0x689c, 0x686d, 0x686e, 0x68ae, 0x68ab,
- 0x6956, 0x686f, 0x68a3, 0x68ac, 0x68a9, 0x6875, 0x6874, 0x68b2,
- 0x688f, 0x6877, 0x6892, 0x687c, 0x686b, 0x6872, 0x68aa, 0x6880,
- 0x6871, 0x687e, 0x689b, 0x6896, 0x688b, 0x68a0, 0x6889, 0x68a4,
- 0x6878, 0x687b, 0x6891, 0x688c, 0x688a, 0x687d, 0x6b36, 0x6b33,
- 0x6b37, 0x6b38, 0x6b91, 0x6b8f, 0x6b8d, 0x6b8e, 0x6b8c, 0x6c2a,
- 0x6dc0, 0x6dab, 0x6db4, 0x6db3, 0x6e74, 0x6dac, 0x6de9, 0x6de2,
- 0x6db7, 0x6df6, 0x6dd4, 0x6e00, 0x6dc8, 0x6de0, 0x6ddf, 0x6dd6,
- 0x6dbe, 0x6de5, 0x6ddc, 0x6ddd, 0x6ddb, 0x6df4, 0x6dca, 0x6dbd,
- 0x6ded, 0x6df0, 0x6dba, 0x6dd5, 0x6dc2, 0x6dcf, 0x6dc9, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6dd0, 0x6df2, 0x6dd3, 0x6dfd, 0x6dd7, 0x6dcd, 0x6de3, 0x6dbb,
- 0x70fa, 0x710d, 0x70f7, 0x7117, 0x70f4, 0x710c, 0x70f0, 0x7104,
- 0x70f3, 0x7110, 0x70fc, 0x70ff, 0x7106, 0x7113, 0x7100, 0x70f8,
- 0x70f6, 0x710b, 0x7102, 0x710e, 0x727e, 0x727b, 0x727c, 0x727f,
- 0x731d, 0x7317, 0x7307, 0x7311, 0x7318, 0x730a, 0x7308, 0x72ff,
- 0x730f, 0x731e, 0x7388, 0x73f6, 0x73f8, 0x73f5, 0x7404, 0x7401,
- 0x73fd, 0x7407, 0x7400, 0x73fa, 0x73fc, 0x73ff, 0x740c, 0x740b,
- 0x73f4, 0x7408, 0x7564, 0x7563, 0x75ce, 0x75d2, 0x75cf, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x75cb, 0x75cc, 0x75d1, 0x75d0, 0x768f, 0x7689, 0x76d3,
- 0x7739, 0x772f, 0x772d, 0x7731, 0x7732, 0x7734, 0x7733, 0x773d,
- 0x7725, 0x773b, 0x7735, 0x7848, 0x7852, 0x7849, 0x784d, 0x784a,
- 0x784c, 0x7826, 0x7845, 0x7850, 0x7964, 0x7967, 0x7969, 0x796a,
- 0x7963, 0x796b, 0x7961, 0x79bb, 0x79fa, 0x79f8, 0x79f6, 0x79f7,
- 0x7a8f, 0x7a94, 0x7a90, 0x7b35, 0x7b47, 0x7b34, 0x7b25, 0x7b30,
- 0x7b22, 0x7b24, 0x7b33, 0x7b18, 0x7b2a, 0x7b1d, 0x7b31, 0x7b2b,
- 0x7b2d, 0x7b2f, 0x7b32, 0x7b38, 0x7b1a, 0x7b23, 0x7c94, 0x7c98,
- 0x7c96, 0x7ca3, 0x7d35, 0x7d3d, 0x7d38, 0x7d36, 0x7d3a, 0x7d45,
- 0x7d2c, 0x7d29, 0x7d41, 0x7d47, 0x7d3e, 0x7d3f, 0x7d4a, 0x7d3b,
- 0x7d28, 0x7f63, 0x7f95, 0x7f9c, 0x7f9d, 0x7f9b, 0x7fca, 0x7fcb,
- 0x7fcd, 0x7fd0, 0x7fd1, 0x7fc7, 0x7fcf, 0x7fc9, 0x801f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x801e, 0x801b, 0x8047, 0x8043, 0x8048, 0x8118, 0x8125, 0x8119,
- 0x811b, 0x812d, 0x811f, 0x812c, 0x811e, 0x8121, 0x8115, 0x8127,
- 0x811d, 0x8122, 0x8211, 0x8238, 0x8233, 0x823a, 0x8234, 0x8232,
- 0x8274, 0x8390, 0x83a3, 0x83a8, 0x838d, 0x837a, 0x8373, 0x83a4,
- 0x8374, 0x838f, 0x8381, 0x8395, 0x8399, 0x8375, 0x8394, 0x83a9,
- 0x837d, 0x8383, 0x838c, 0x839d, 0x839b, 0x83aa, 0x838b, 0x837e,
- 0x83a5, 0x83af, 0x8388, 0x8397, 0x83b0, 0x837f, 0x83a6, 0x8387,
- 0x83ae, 0x8376, 0x839a, 0x8659, 0x8656, 0x86bf, 0x86b7, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x86c2, 0x86c1, 0x86c5, 0x86ba, 0x86b0, 0x86c8, 0x86b9,
- 0x86b3, 0x86b8, 0x86cc, 0x86b4, 0x86bb, 0x86bc, 0x86c3, 0x86bd,
- 0x86be, 0x8852, 0x8889, 0x8895, 0x88a8, 0x88a2, 0x88aa, 0x889a,
- 0x8891, 0x88a1, 0x889f, 0x8898, 0x88a7, 0x8899, 0x889b, 0x8897,
- 0x88a4, 0x88ac, 0x888c, 0x8893, 0x888e, 0x8982, 0x89d6, 0x89d9,
- 0x89d5, 0x8a30, 0x8a27, 0x8a2c, 0x8a1e, 0x8c39, 0x8c3b, 0x8c5c,
- 0x8c5d, 0x8c7d, 0x8ca5, 0x8d7d, 0x8d7b, 0x8d79, 0x8dbc, 0x8dc2,
- 0x8db9, 0x8dbf, 0x8dc1, 0x8ed8, 0x8ede, 0x8edd, 0x8edc, 0x8ed7,
- 0x8ee0, 0x8ee1, 0x9024, 0x900b, 0x9011, 0x901c, 0x900c, 0x9021,
- 0x90ef, 0x90ea, 0x90f0, 0x90f4, 0x90f2, 0x90f3, 0x90d4, 0x90eb,
- 0x90ec, 0x90e9, 0x9156, 0x9158, 0x915a, 0x9153, 0x9155, 0x91ec,
- 0x91f4, 0x91f1, 0x91f3, 0x91f8, 0x91e4, 0x91f9, 0x91ea, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x91eb, 0x91f7, 0x91e8, 0x91ee, 0x957a, 0x9586, 0x9588, 0x967c,
- 0x966d, 0x966b, 0x9671, 0x966f, 0x96bf, 0x976a, 0x9804, 0x98e5,
- 0x9997, 0x509b, 0x5095, 0x5094, 0x509e, 0x508b, 0x50a3, 0x5083,
- 0x508c, 0x508e, 0x509d, 0x5068, 0x509c, 0x5092, 0x5082, 0x5087,
- 0x515f, 0x51d4, 0x5312, 0x5311, 0x53a4, 0x53a7, 0x5591, 0x55a8,
- 0x55a5, 0x55ad, 0x5577, 0x5645, 0x55a2, 0x5593, 0x5588, 0x558f,
- 0x55b5, 0x5581, 0x55a3, 0x5592, 0x55a4, 0x557d, 0x558c, 0x55a6,
- 0x557f, 0x5595, 0x55a1, 0x558e, 0x570c, 0x5829, 0x5837, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5819, 0x581e, 0x5827, 0x5823, 0x5828, 0x57f5, 0x5848,
- 0x5825, 0x581c, 0x581b, 0x5833, 0x583f, 0x5836, 0x582e, 0x5839,
- 0x5838, 0x582d, 0x582c, 0x583b, 0x5961, 0x5aaf, 0x5a94, 0x5a9f,
- 0x5a7a, 0x5aa2, 0x5a9e, 0x5a78, 0x5aa6, 0x5a7c, 0x5aa5, 0x5aac,
- 0x5a95, 0x5aae, 0x5a37, 0x5a84, 0x5a8a, 0x5a97, 0x5a83, 0x5a8b,
- 0x5aa9, 0x5a7b, 0x5a7d, 0x5a8c, 0x5a9c, 0x5a8f, 0x5a93, 0x5a9d,
- 0x5bea, 0x5bcd, 0x5bcb, 0x5bd4, 0x5bd1, 0x5bca, 0x5bce, 0x5c0c,
- 0x5c30, 0x5d37, 0x5d43, 0x5d6b, 0x5d41, 0x5d4b, 0x5d3f, 0x5d35,
- 0x5d51, 0x5d4e, 0x5d55, 0x5d33, 0x5d3a, 0x5d52, 0x5d3d, 0x5d31,
- 0x5d59, 0x5d42, 0x5d39, 0x5d49, 0x5d38, 0x5d3c, 0x5d32, 0x5d36,
- 0x5d40, 0x5d45, 0x5e44, 0x5e41, 0x5f58, 0x5fa6, 0x5fa5, 0x5fab,
- 0x60c9, 0x60b9, 0x60cc, 0x60e2, 0x60ce, 0x60c4, 0x6114, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x60f2, 0x610a, 0x6116, 0x6105, 0x60f5, 0x6113, 0x60f8, 0x60fc,
- 0x60fe, 0x60c1, 0x6103, 0x6118, 0x611d, 0x6110, 0x60ff, 0x6104,
- 0x610b, 0x624a, 0x6394, 0x63b1, 0x63b0, 0x63ce, 0x63e5, 0x63e8,
- 0x63ef, 0x63c3, 0x649d, 0x63f3, 0x63ca, 0x63e0, 0x63f6, 0x63d5,
- 0x63f2, 0x63f5, 0x6461, 0x63df, 0x63be, 0x63dd, 0x63dc, 0x63c4,
- 0x63d8, 0x63d3, 0x63c2, 0x63c7, 0x63cc, 0x63cb, 0x63c8, 0x63f0,
- 0x63d7, 0x63d9, 0x6532, 0x6567, 0x656a, 0x6564, 0x655c, 0x6568,
- 0x6565, 0x658c, 0x659d, 0x659e, 0x65ae, 0x65d0, 0x65d2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x667c, 0x666c, 0x667b, 0x6680, 0x6671, 0x6679, 0x666a,
- 0x6672, 0x6701, 0x690c, 0x68d3, 0x6904, 0x68dc, 0x692a, 0x68ec,
- 0x68ea, 0x68f1, 0x690f, 0x68d6, 0x68f7, 0x68eb, 0x68e4, 0x68f6,
- 0x6913, 0x6910, 0x68f3, 0x68e1, 0x6907, 0x68cc, 0x6908, 0x6970,
- 0x68b4, 0x6911, 0x68ef, 0x68c6, 0x6914, 0x68f8, 0x68d0, 0x68fd,
- 0x68fc, 0x68e8, 0x690b, 0x690a, 0x6917, 0x68ce, 0x68c8, 0x68dd,
- 0x68de, 0x68e6, 0x68f4, 0x68d1, 0x6906, 0x68d4, 0x68e9, 0x6915,
- 0x6925, 0x68c7, 0x6b39, 0x6b3b, 0x6b3f, 0x6b3c, 0x6b94, 0x6b97,
- 0x6b99, 0x6b95, 0x6bbd, 0x6bf0, 0x6bf2, 0x6bf3, 0x6c30, 0x6dfc,
- 0x6e46, 0x6e47, 0x6e1f, 0x6e49, 0x6e88, 0x6e3c, 0x6e3d, 0x6e45,
- 0x6e62, 0x6e2b, 0x6e3f, 0x6e41, 0x6e5d, 0x6e73, 0x6e1c, 0x6e33,
- 0x6e4b, 0x6e40, 0x6e51, 0x6e3b, 0x6e03, 0x6e2e, 0x6e5e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6e68, 0x6e5c, 0x6e61, 0x6e31, 0x6e28, 0x6e60, 0x6e71, 0x6e6b,
- 0x6e39, 0x6e22, 0x6e30, 0x6e53, 0x6e65, 0x6e27, 0x6e78, 0x6e64,
- 0x6e77, 0x6e55, 0x6e79, 0x6e52, 0x6e66, 0x6e35, 0x6e36, 0x6e5a,
- 0x7120, 0x711e, 0x712f, 0x70fb, 0x712e, 0x7131, 0x7123, 0x7125,
- 0x7122, 0x7132, 0x711f, 0x7128, 0x713a, 0x711b, 0x724b, 0x725a,
- 0x7288, 0x7289, 0x7286, 0x7285, 0x728b, 0x7312, 0x730b, 0x7330,
- 0x7322, 0x7331, 0x7333, 0x7327, 0x7332, 0x732d, 0x7326, 0x7323,
- 0x7335, 0x730c, 0x742e, 0x742c, 0x7430, 0x742b, 0x7416, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x741a, 0x7421, 0x742d, 0x7431, 0x7424, 0x7423, 0x741d,
- 0x7429, 0x7420, 0x7432, 0x74fb, 0x752f, 0x756f, 0x756c, 0x75e7,
- 0x75da, 0x75e1, 0x75e6, 0x75dd, 0x75df, 0x75e4, 0x75d7, 0x7695,
- 0x7692, 0x76da, 0x7746, 0x7747, 0x7744, 0x774d, 0x7745, 0x774a,
- 0x774e, 0x774b, 0x774c, 0x77de, 0x77ec, 0x7860, 0x7864, 0x7865,
- 0x785c, 0x786d, 0x7871, 0x786a, 0x786e, 0x7870, 0x7869, 0x7868,
- 0x785e, 0x7862, 0x7974, 0x7973, 0x7972, 0x7970, 0x7a02, 0x7a0a,
- 0x7a03, 0x7a0c, 0x7a04, 0x7a99, 0x7ae6, 0x7ae4, 0x7b4a, 0x7b3b,
- 0x7b44, 0x7b48, 0x7b4c, 0x7b4e, 0x7b40, 0x7b58, 0x7b45, 0x7ca2,
- 0x7c9e, 0x7ca8, 0x7ca1, 0x7d58, 0x7d6f, 0x7d63, 0x7d53, 0x7d56,
- 0x7d67, 0x7d6a, 0x7d4f, 0x7d6d, 0x7d5c, 0x7d6b, 0x7d52, 0x7d54,
- 0x7d69, 0x7d51, 0x7d5f, 0x7d4e, 0x7f3e, 0x7f3f, 0x7f65, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7f66, 0x7fa2, 0x7fa0, 0x7fa1, 0x7fd7, 0x8051, 0x804f, 0x8050,
- 0x80fe, 0x80d4, 0x8143, 0x814a, 0x8152, 0x814f, 0x8147, 0x813d,
- 0x814d, 0x813a, 0x81e6, 0x81ee, 0x81f7, 0x81f8, 0x81f9, 0x8204,
- 0x823c, 0x823d, 0x823f, 0x8275, 0x833b, 0x83cf, 0x83f9, 0x8423,
- 0x83c0, 0x83e8, 0x8412, 0x83e7, 0x83e4, 0x83fc, 0x83f6, 0x8410,
- 0x83c6, 0x83c8, 0x83eb, 0x83e3, 0x83bf, 0x8401, 0x83dd, 0x83e5,
- 0x83d8, 0x83ff, 0x83e1, 0x83cb, 0x83ce, 0x83d6, 0x83f5, 0x83c9,
- 0x8409, 0x840f, 0x83de, 0x8411, 0x8406, 0x83c2, 0x83f3, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x83d5, 0x83fa, 0x83c7, 0x83d1, 0x83ea, 0x8413, 0x83c3,
- 0x83ec, 0x83ee, 0x83c4, 0x83fb, 0x83d7, 0x83e2, 0x841b, 0x83db,
- 0x83fe, 0x86d8, 0x86e2, 0x86e6, 0x86d3, 0x86e3, 0x86da, 0x86ea,
- 0x86dd, 0x86eb, 0x86dc, 0x86ec, 0x86e9, 0x86d7, 0x86e8, 0x86d1,
- 0x8848, 0x8856, 0x8855, 0x88ba, 0x88d7, 0x88b9, 0x88b8, 0x88c0,
- 0x88be, 0x88b6, 0x88bc, 0x88b7, 0x88bd, 0x88b2, 0x8901, 0x88c9,
- 0x8995, 0x8998, 0x8997, 0x89dd, 0x89da, 0x89db, 0x8a4e, 0x8a4d,
- 0x8a39, 0x8a59, 0x8a40, 0x8a57, 0x8a58, 0x8a44, 0x8a45, 0x8a52,
- 0x8a48, 0x8a51, 0x8a4a, 0x8a4c, 0x8a4f, 0x8c5f, 0x8c81, 0x8c80,
- 0x8cba, 0x8cbe, 0x8cb0, 0x8cb9, 0x8cb5, 0x8d84, 0x8d80, 0x8d89,
- 0x8dd8, 0x8dd3, 0x8dcd, 0x8dc7, 0x8dd6, 0x8ddc, 0x8dcf, 0x8dd5,
- 0x8dd9, 0x8dc8, 0x8dd7, 0x8dc5, 0x8eef, 0x8ef7, 0x8efa, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8ef9, 0x8ee6, 0x8eee, 0x8ee5, 0x8ef5, 0x8ee7, 0x8ee8, 0x8ef6,
- 0x8eeb, 0x8ef1, 0x8eec, 0x8ef4, 0x8ee9, 0x902d, 0x9034, 0x902f,
- 0x9106, 0x912c, 0x9104, 0x90ff, 0x90fc, 0x9108, 0x90f9, 0x90fb,
- 0x9101, 0x9100, 0x9107, 0x9105, 0x9103, 0x9161, 0x9164, 0x915f,
- 0x9162, 0x9160, 0x9201, 0x920a, 0x9225, 0x9203, 0x921a, 0x9226,
- 0x920f, 0x920c, 0x9200, 0x9212, 0x91ff, 0x91fd, 0x9206, 0x9204,
- 0x9227, 0x9202, 0x921c, 0x9224, 0x9219, 0x9217, 0x9205, 0x9216,
- 0x957b, 0x958d, 0x958c, 0x9590, 0x9687, 0x967e, 0x9688, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9689, 0x9683, 0x9680, 0x96c2, 0x96c8, 0x96c3, 0x96f1,
- 0x96f0, 0x976c, 0x9770, 0x976e, 0x9807, 0x98a9, 0x98eb, 0x9ce6,
- 0x9ef9, 0x4e83, 0x4e84, 0x4eb6, 0x50bd, 0x50bf, 0x50c6, 0x50ae,
- 0x50c4, 0x50ca, 0x50b4, 0x50c8, 0x50c2, 0x50b0, 0x50c1, 0x50ba,
- 0x50b1, 0x50cb, 0x50c9, 0x50b6, 0x50b8, 0x51d7, 0x527a, 0x5278,
- 0x527b, 0x527c, 0x55c3, 0x55db, 0x55cc, 0x55d0, 0x55cb, 0x55ca,
- 0x55dd, 0x55c0, 0x55d4, 0x55c4, 0x55e9, 0x55bf, 0x55d2, 0x558d,
- 0x55cf, 0x55d5, 0x55e2, 0x55d6, 0x55c8, 0x55f2, 0x55cd, 0x55d9,
- 0x55c2, 0x5714, 0x5853, 0x5868, 0x5864, 0x584f, 0x584d, 0x5849,
- 0x586f, 0x5855, 0x584e, 0x585d, 0x5859, 0x5865, 0x585b, 0x583d,
- 0x5863, 0x5871, 0x58fc, 0x5ac7, 0x5ac4, 0x5acb, 0x5aba, 0x5ab8,
- 0x5ab1, 0x5ab5, 0x5ab0, 0x5abf, 0x5ac8, 0x5abb, 0x5ac6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5ab7, 0x5ac0, 0x5aca, 0x5ab4, 0x5ab6, 0x5acd, 0x5ab9, 0x5a90,
- 0x5bd6, 0x5bd8, 0x5bd9, 0x5c1f, 0x5c33, 0x5d71, 0x5d63, 0x5d4a,
- 0x5d65, 0x5d72, 0x5d6c, 0x5d5e, 0x5d68, 0x5d67, 0x5d62, 0x5df0,
- 0x5e4f, 0x5e4e, 0x5e4a, 0x5e4d, 0x5e4b, 0x5ec5, 0x5ecc, 0x5ec6,
- 0x5ecb, 0x5ec7, 0x5f40, 0x5faf, 0x5fad, 0x60f7, 0x6149, 0x614a,
- 0x612b, 0x6145, 0x6136, 0x6132, 0x612e, 0x6146, 0x612f, 0x614f,
- 0x6129, 0x6140, 0x6220, 0x9168, 0x6223, 0x6225, 0x6224, 0x63c5,
- 0x63f1, 0x63eb, 0x6410, 0x6412, 0x6409, 0x6420, 0x6424, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6433, 0x6443, 0x641f, 0x6415, 0x6418, 0x6439, 0x6437,
- 0x6422, 0x6423, 0x640c, 0x6426, 0x6430, 0x6428, 0x6441, 0x6435,
- 0x642f, 0x640a, 0x641a, 0x6440, 0x6425, 0x6427, 0x640b, 0x63e7,
- 0x641b, 0x642e, 0x6421, 0x640e, 0x656f, 0x6592, 0x65d3, 0x6686,
- 0x668c, 0x6695, 0x6690, 0x668b, 0x668a, 0x6699, 0x6694, 0x6678,
- 0x6720, 0x6966, 0x695f, 0x6938, 0x694e, 0x6962, 0x6971, 0x693f,
- 0x6945, 0x696a, 0x6939, 0x6942, 0x6957, 0x6959, 0x697a, 0x6948,
- 0x6949, 0x6935, 0x696c, 0x6933, 0x693d, 0x6965, 0x68f0, 0x6978,
- 0x6934, 0x6969, 0x6940, 0x696f, 0x6944, 0x6976, 0x6958, 0x6941,
- 0x6974, 0x694c, 0x693b, 0x694b, 0x6937, 0x695c, 0x694f, 0x6951,
- 0x6932, 0x6952, 0x692f, 0x697b, 0x693c, 0x6b46, 0x6b45, 0x6b43,
- 0x6b42, 0x6b48, 0x6b41, 0x6b9b, 0x0000, 0x6bfb, 0x6bfc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6bf9, 0x6bf7, 0x6bf8, 0x6e9b, 0x6ed6, 0x6ec8, 0x6e8f, 0x6ec0,
- 0x6e9f, 0x6e93, 0x6e94, 0x6ea0, 0x6eb1, 0x6eb9, 0x6ec6, 0x6ed2,
- 0x6ebd, 0x6ec1, 0x6e9e, 0x6ec9, 0x6eb7, 0x6eb0, 0x6ecd, 0x6ea6,
- 0x6ecf, 0x6eb2, 0x6ebe, 0x6ec3, 0x6edc, 0x6ed8, 0x6e99, 0x6e92,
- 0x6e8e, 0x6e8d, 0x6ea4, 0x6ea1, 0x6ebf, 0x6eb3, 0x6ed0, 0x6eca,
- 0x6e97, 0x6eae, 0x6ea3, 0x7147, 0x7154, 0x7152, 0x7163, 0x7160,
- 0x7141, 0x715d, 0x7162, 0x7172, 0x7178, 0x716a, 0x7161, 0x7142,
- 0x7158, 0x7143, 0x714b, 0x7170, 0x715f, 0x7150, 0x7153, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7144, 0x714d, 0x715a, 0x724f, 0x728d, 0x728c, 0x7291,
- 0x7290, 0x728e, 0x733c, 0x7342, 0x733b, 0x733a, 0x7340, 0x734a,
- 0x7349, 0x7444, 0x744a, 0x744b, 0x7452, 0x7451, 0x7457, 0x7440,
- 0x744f, 0x7450, 0x744e, 0x7442, 0x7446, 0x744d, 0x7454, 0x74e1,
- 0x74ff, 0x74fe, 0x74fd, 0x751d, 0x7579, 0x7577, 0x6983, 0x75ef,
- 0x760f, 0x7603, 0x75f7, 0x75fe, 0x75fc, 0x75f9, 0x75f8, 0x7610,
- 0x75fb, 0x75f6, 0x75ed, 0x75f5, 0x75fd, 0x7699, 0x76b5, 0x76dd,
- 0x7755, 0x775f, 0x7760, 0x7752, 0x7756, 0x775a, 0x7769, 0x7767,
- 0x7754, 0x7759, 0x776d, 0x77e0, 0x7887, 0x789a, 0x7894, 0x788f,
- 0x7884, 0x7895, 0x7885, 0x7886, 0x78a1, 0x7883, 0x7879, 0x7899,
- 0x7880, 0x7896, 0x787b, 0x797c, 0x7982, 0x797d, 0x7979, 0x7a11,
- 0x7a18, 0x7a19, 0x7a12, 0x7a17, 0x7a15, 0x7a22, 0x7a13, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7a1b, 0x7a10, 0x7aa3, 0x7aa2, 0x7a9e, 0x7aeb, 0x7b66, 0x7b64,
- 0x7b6d, 0x7b74, 0x7b69, 0x7b72, 0x7b65, 0x7b73, 0x7b71, 0x7b70,
- 0x7b61, 0x7b78, 0x7b76, 0x7b63, 0x7cb2, 0x7cb4, 0x7caf, 0x7d88,
- 0x7d86, 0x7d80, 0x7d8d, 0x7d7f, 0x7d85, 0x7d7a, 0x7d8e, 0x7d7b,
- 0x7d83, 0x7d7c, 0x7d8c, 0x7d94, 0x7d84, 0x7d7d, 0x7d92, 0x7f6d,
- 0x7f6b, 0x7f67, 0x7f68, 0x7f6c, 0x7fa6, 0x7fa5, 0x7fa7, 0x7fdb,
- 0x7fdc, 0x8021, 0x8164, 0x8160, 0x8177, 0x815c, 0x8169, 0x815b,
- 0x8162, 0x8172, 0x6721, 0x815e, 0x8176, 0x8167, 0x816f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8144, 0x8161, 0x821d, 0x8249, 0x8244, 0x8240, 0x8242,
- 0x8245, 0x84f1, 0x843f, 0x8456, 0x8476, 0x8479, 0x848f, 0x848d,
- 0x8465, 0x8451, 0x8440, 0x8486, 0x8467, 0x8430, 0x844d, 0x847d,
- 0x845a, 0x8459, 0x8474, 0x8473, 0x845d, 0x8507, 0x845e, 0x8437,
- 0x843a, 0x8434, 0x847a, 0x8443, 0x8478, 0x8432, 0x8445, 0x8429,
- 0x83d9, 0x844b, 0x842f, 0x8442, 0x842d, 0x845f, 0x8470, 0x8439,
- 0x844e, 0x844c, 0x8452, 0x846f, 0x84c5, 0x848e, 0x843b, 0x8447,
- 0x8436, 0x8433, 0x8468, 0x847e, 0x8444, 0x842b, 0x8460, 0x8454,
- 0x846e, 0x8450, 0x870b, 0x8704, 0x86f7, 0x870c, 0x86fa, 0x86d6,
- 0x86f5, 0x874d, 0x86f8, 0x870e, 0x8709, 0x8701, 0x86f6, 0x870d,
- 0x8705, 0x88d6, 0x88cb, 0x88cd, 0x88ce, 0x88de, 0x88db, 0x88da,
- 0x88cc, 0x88d0, 0x8985, 0x899b, 0x89df, 0x89e5, 0x89e4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x89e1, 0x89e0, 0x89e2, 0x89dc, 0x89e6, 0x8a76, 0x8a86, 0x8a7f,
- 0x8a61, 0x8a3f, 0x8a77, 0x8a82, 0x8a84, 0x8a75, 0x8a83, 0x8a81,
- 0x8a74, 0x8a7a, 0x8c3c, 0x8c4b, 0x8c4a, 0x8c65, 0x8c64, 0x8c66,
- 0x8c86, 0x8c84, 0x8c85, 0x8ccc, 0x8d68, 0x8d69, 0x8d91, 0x8d8c,
- 0x8d8e, 0x8d8f, 0x8d8d, 0x8d93, 0x8d94, 0x8d90, 0x8d92, 0x8df0,
- 0x8de0, 0x8dec, 0x8df1, 0x8dee, 0x8dd0, 0x8de9, 0x8de3, 0x8de2,
- 0x8de7, 0x8df2, 0x8deb, 0x8df4, 0x8f06, 0x8eff, 0x8f01, 0x8f00,
- 0x8f05, 0x8f07, 0x8f08, 0x8f02, 0x8f0b, 0x9052, 0x903f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9044, 0x9049, 0x903d, 0x9110, 0x910d, 0x910f, 0x9111,
- 0x9116, 0x9114, 0x910b, 0x910e, 0x916e, 0x916f, 0x9248, 0x9252,
- 0x9230, 0x923a, 0x9266, 0x9233, 0x9265, 0x925e, 0x9283, 0x922e,
- 0x924a, 0x9246, 0x926d, 0x926c, 0x924f, 0x9260, 0x9267, 0x926f,
- 0x9236, 0x9261, 0x9270, 0x9231, 0x9254, 0x9263, 0x9250, 0x9272,
- 0x924e, 0x9253, 0x924c, 0x9256, 0x9232, 0x959f, 0x959c, 0x959e,
- 0x959b, 0x9692, 0x9693, 0x9691, 0x9697, 0x96ce, 0x96fa, 0x96fd,
- 0x96f8, 0x96f5, 0x9773, 0x9777, 0x9778, 0x9772, 0x980f, 0x980d,
- 0x980e, 0x98ac, 0x98f6, 0x98f9, 0x99af, 0x99b2, 0x99b0, 0x99b5,
- 0x9aad, 0x9aab, 0x9b5b, 0x9cea, 0x9ced, 0x9ce7, 0x9e80, 0x9efd,
- 0x50e6, 0x50d4, 0x50d7, 0x50e8, 0x50f3, 0x50db, 0x50ea, 0x50dd,
- 0x50e4, 0x50d3, 0x50ec, 0x50f0, 0x50ef, 0x50e3, 0x50e0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x51d8, 0x5280, 0x5281, 0x52e9, 0x52eb, 0x5330, 0x53ac, 0x5627,
- 0x5615, 0x560c, 0x5612, 0x55fc, 0x560f, 0x561c, 0x5601, 0x5613,
- 0x5602, 0x55fa, 0x561d, 0x5604, 0x55ff, 0x55f9, 0x5889, 0x587c,
- 0x5890, 0x5898, 0x5886, 0x5881, 0x587f, 0x5874, 0x588b, 0x587a,
- 0x5887, 0x5891, 0x588e, 0x5876, 0x5882, 0x5888, 0x587b, 0x5894,
- 0x588f, 0x58fe, 0x596b, 0x5adc, 0x5aee, 0x5ae5, 0x5ad5, 0x5aea,
- 0x5ada, 0x5aed, 0x5aeb, 0x5af3, 0x5ae2, 0x5ae0, 0x5adb, 0x5aec,
- 0x5ade, 0x5add, 0x5ad9, 0x5ae8, 0x5adf, 0x5b77, 0x5be0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5be3, 0x5c63, 0x5d82, 0x5d80, 0x5d7d, 0x5d86, 0x5d7a,
- 0x5d81, 0x5d77, 0x5d8a, 0x5d89, 0x5d88, 0x5d7e, 0x5d7c, 0x5d8d,
- 0x5d79, 0x5d7f, 0x5e58, 0x5e59, 0x5e53, 0x5ed8, 0x5ed1, 0x5ed7,
- 0x5ece, 0x5edc, 0x5ed5, 0x5ed9, 0x5ed2, 0x5ed4, 0x5f44, 0x5f43,
- 0x5f6f, 0x5fb6, 0x612c, 0x6128, 0x6141, 0x615e, 0x6171, 0x6173,
- 0x6152, 0x6153, 0x6172, 0x616c, 0x6180, 0x6174, 0x6154, 0x617a,
- 0x615b, 0x6165, 0x613b, 0x616a, 0x6161, 0x6156, 0x6229, 0x6227,
- 0x622b, 0x642b, 0x644d, 0x645b, 0x645d, 0x6474, 0x6476, 0x6472,
- 0x6473, 0x647d, 0x6475, 0x6466, 0x64a6, 0x644e, 0x6482, 0x645e,
- 0x645c, 0x644b, 0x6453, 0x6460, 0x6450, 0x647f, 0x643f, 0x646c,
- 0x646b, 0x6459, 0x6465, 0x6477, 0x6573, 0x65a0, 0x66a1, 0x66a0,
- 0x669f, 0x6705, 0x6704, 0x6722, 0x69b1, 0x69b6, 0x69c9, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x69a0, 0x69ce, 0x6996, 0x69b0, 0x69ac, 0x69bc, 0x6991, 0x6999,
- 0x698e, 0x69a7, 0x698d, 0x69a9, 0x69be, 0x69af, 0x69bf, 0x69c4,
- 0x69bd, 0x69a4, 0x69d4, 0x69b9, 0x69ca, 0x699a, 0x69cf, 0x69b3,
- 0x6993, 0x69aa, 0x69a1, 0x699e, 0x69d9, 0x6997, 0x6990, 0x69c2,
- 0x69b5, 0x69a5, 0x69c6, 0x6b4a, 0x6b4d, 0x6b4b, 0x6b9e, 0x6b9f,
- 0x6ba0, 0x6bc3, 0x6bc4, 0x6bfe, 0x6ece, 0x6ef5, 0x6ef1, 0x6f03,
- 0x6f25, 0x6ef8, 0x6f37, 0x6efb, 0x6f2e, 0x6f09, 0x6f4e, 0x6f19,
- 0x6f1a, 0x6f27, 0x6f18, 0x6f3b, 0x6f12, 0x6eed, 0x6f0a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6f36, 0x6f73, 0x6ef9, 0x6eee, 0x6f2d, 0x6f40, 0x6f30,
- 0x6f3c, 0x6f35, 0x6eeb, 0x6f07, 0x6f0e, 0x6f43, 0x6f05, 0x6efd,
- 0x6ef6, 0x6f39, 0x6f1c, 0x6efc, 0x6f3a, 0x6f1f, 0x6f0d, 0x6f1e,
- 0x6f08, 0x6f21, 0x7187, 0x7190, 0x7189, 0x7180, 0x7185, 0x7182,
- 0x718f, 0x717b, 0x7186, 0x7181, 0x7197, 0x7244, 0x7253, 0x7297,
- 0x7295, 0x7293, 0x7343, 0x734d, 0x7351, 0x734c, 0x7462, 0x7473,
- 0x7471, 0x7475, 0x7472, 0x7467, 0x746e, 0x7500, 0x7502, 0x7503,
- 0x757d, 0x7590, 0x7616, 0x7608, 0x760c, 0x7615, 0x7611, 0x760a,
- 0x7614, 0x76b8, 0x7781, 0x777c, 0x7785, 0x7782, 0x776e, 0x7780,
- 0x776f, 0x777e, 0x7783, 0x78b2, 0x78aa, 0x78b4, 0x78ad, 0x78a8,
- 0x787e, 0x78ab, 0x789e, 0x78a5, 0x78a0, 0x78ac, 0x78a2, 0x78a4,
- 0x7998, 0x798a, 0x798b, 0x7996, 0x7995, 0x7994, 0x7993, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7997, 0x7988, 0x7992, 0x7990, 0x7a2b, 0x7a4a, 0x7a30, 0x7a2f,
- 0x7a28, 0x7a26, 0x7aa8, 0x7aab, 0x7aac, 0x7aee, 0x7b88, 0x7b9c,
- 0x7b8a, 0x7b91, 0x7b90, 0x7b96, 0x7b8d, 0x7b8c, 0x7b9b, 0x7b8e,
- 0x7b85, 0x7b98, 0x5284, 0x7b99, 0x7ba4, 0x7b82, 0x7cbb, 0x7cbf,
- 0x7cbc, 0x7cba, 0x7da7, 0x7db7, 0x7dc2, 0x7da3, 0x7daa, 0x7dc1,
- 0x7dc0, 0x7dc5, 0x7d9d, 0x7dce, 0x7dc4, 0x7dc6, 0x7dcb, 0x7dcc,
- 0x7daf, 0x7db9, 0x7d96, 0x7dbc, 0x7d9f, 0x7da6, 0x7dae, 0x7da9,
- 0x7da1, 0x7dc9, 0x7f73, 0x7fe2, 0x7fe3, 0x7fe5, 0x7fde, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8024, 0x805d, 0x805c, 0x8189, 0x8186, 0x8183, 0x8187,
- 0x818d, 0x818c, 0x818b, 0x8215, 0x8497, 0x84a4, 0x84a1, 0x849f,
- 0x84ba, 0x84ce, 0x84c2, 0x84ac, 0x84ae, 0x84ab, 0x84b9, 0x84b4,
- 0x84c1, 0x84cd, 0x84aa, 0x849a, 0x84b1, 0x84d0, 0x849d, 0x84a7,
- 0x84bb, 0x84a2, 0x8494, 0x84c7, 0x84cc, 0x849b, 0x84a9, 0x84af,
- 0x84a8, 0x84d6, 0x8498, 0x84b6, 0x84cf, 0x84a0, 0x84d7, 0x84d4,
- 0x84d2, 0x84db, 0x84b0, 0x8491, 0x8661, 0x8733, 0x8723, 0x8728,
- 0x876b, 0x8740, 0x872e, 0x871e, 0x8721, 0x8719, 0x871b, 0x8743,
- 0x872c, 0x8741, 0x873e, 0x8746, 0x8720, 0x8732, 0x872a, 0x872d,
- 0x873c, 0x8712, 0x873a, 0x8731, 0x8735, 0x8742, 0x8726, 0x8727,
- 0x8738, 0x8724, 0x871a, 0x8730, 0x8711, 0x88f7, 0x88e7, 0x88f1,
- 0x88f2, 0x88fa, 0x88fe, 0x88ee, 0x88fc, 0x88f6, 0x88fb, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x88f0, 0x88ec, 0x88eb, 0x899d, 0x89a1, 0x899f, 0x899e, 0x89e9,
- 0x89eb, 0x89e8, 0x8aab, 0x8a99, 0x8a8b, 0x8a92, 0x8a8f, 0x8a96,
- 0x8c3d, 0x8c68, 0x8c69, 0x8cd5, 0x8ccf, 0x8cd7, 0x8d96, 0x8e09,
- 0x8e02, 0x8dff, 0x8e0d, 0x8dfd, 0x8e0a, 0x8e03, 0x8e07, 0x8e06,
- 0x8e05, 0x8dfe, 0x8e00, 0x8e04, 0x8f10, 0x8f11, 0x8f0e, 0x8f0d,
- 0x9123, 0x911c, 0x9120, 0x9122, 0x911f, 0x911d, 0x911a, 0x9124,
- 0x9121, 0x911b, 0x917a, 0x9172, 0x9179, 0x9173, 0x92a5, 0x92a4,
- 0x9276, 0x929b, 0x927a, 0x92a0, 0x9294, 0x92aa, 0x928d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x92a6, 0x929a, 0x92ab, 0x9279, 0x9297, 0x927f, 0x92a3,
- 0x92ee, 0x928e, 0x9282, 0x9295, 0x92a2, 0x927d, 0x9288, 0x92a1,
- 0x928a, 0x9286, 0x928c, 0x9299, 0x92a7, 0x927e, 0x9287, 0x92a9,
- 0x929d, 0x928b, 0x922d, 0x969e, 0x96a1, 0x96ff, 0x9758, 0x977d,
- 0x977a, 0x977e, 0x9783, 0x9780, 0x9782, 0x977b, 0x9784, 0x9781,
- 0x977f, 0x97ce, 0x97cd, 0x9816, 0x98ad, 0x98ae, 0x9902, 0x9900,
- 0x9907, 0x999d, 0x999c, 0x99c3, 0x99b9, 0x99bb, 0x99ba, 0x99c2,
- 0x99bd, 0x99c7, 0x9ab1, 0x9ae3, 0x9ae7, 0x9b3e, 0x9b3f, 0x9b60,
- 0x9b61, 0x9b5f, 0x9cf1, 0x9cf2, 0x9cf5, 0x9ea7, 0x50ff, 0x5103,
- 0x5130, 0x50f8, 0x5106, 0x5107, 0x50f6, 0x50fe, 0x510b, 0x510c,
- 0x50fd, 0x510a, 0x528b, 0x528c, 0x52f1, 0x52ef, 0x5648, 0x5642,
- 0x564c, 0x5635, 0x5641, 0x564a, 0x5649, 0x5646, 0x5658, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x565a, 0x5640, 0x5633, 0x563d, 0x562c, 0x563e, 0x5638, 0x562a,
- 0x563a, 0x571a, 0x58ab, 0x589d, 0x58b1, 0x58a0, 0x58a3, 0x58af,
- 0x58ac, 0x58a5, 0x58a1, 0x58ff, 0x5aff, 0x5af4, 0x5afd, 0x5af7,
- 0x5af6, 0x5b03, 0x5af8, 0x5b02, 0x5af9, 0x5b01, 0x5b07, 0x5b05,
- 0x5b0f, 0x5c67, 0x5d99, 0x5d97, 0x5d9f, 0x5d92, 0x5da2, 0x5d93,
- 0x5d95, 0x5da0, 0x5d9c, 0x5da1, 0x5d9a, 0x5d9e, 0x5e69, 0x5e5d,
- 0x5e60, 0x5e5c, 0x7df3, 0x5edb, 0x5ede, 0x5ee1, 0x5f49, 0x5fb2,
- 0x618b, 0x6183, 0x6179, 0x61b1, 0x61b0, 0x61a2, 0x6189, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x619b, 0x6193, 0x61af, 0x61ad, 0x619f, 0x6192, 0x61aa,
- 0x61a1, 0x618d, 0x6166, 0x61b3, 0x622d, 0x646e, 0x6470, 0x6496,
- 0x64a0, 0x6485, 0x6497, 0x649c, 0x648f, 0x648b, 0x648a, 0x648c,
- 0x64a3, 0x649f, 0x6468, 0x64b1, 0x6498, 0x6576, 0x657a, 0x6579,
- 0x657b, 0x65b2, 0x65b3, 0x66b5, 0x66b0, 0x66a9, 0x66b2, 0x66b7,
- 0x66aa, 0x66af, 0x6a00, 0x6a06, 0x6a17, 0x69e5, 0x69f8, 0x6a15,
- 0x69f1, 0x69e4, 0x6a20, 0x69ff, 0x69ec, 0x69e2, 0x6a1b, 0x6a1d,
- 0x69fe, 0x6a27, 0x69f2, 0x69ee, 0x6a14, 0x69f7, 0x69e7, 0x6a40,
- 0x6a08, 0x69e6, 0x69fb, 0x6a0d, 0x69fc, 0x69eb, 0x6a09, 0x6a04,
- 0x6a18, 0x6a25, 0x6a0f, 0x69f6, 0x6a26, 0x6a07, 0x69f4, 0x6a16,
- 0x6b51, 0x6ba5, 0x6ba3, 0x6ba2, 0x6ba6, 0x6c01, 0x6c00, 0x6bff,
- 0x6c02, 0x6f41, 0x6f26, 0x6f7e, 0x6f87, 0x6fc6, 0x6f92, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6f8d, 0x6f89, 0x6f8c, 0x6f62, 0x6f4f, 0x6f85, 0x6f5a, 0x6f96,
- 0x6f76, 0x6f6c, 0x6f82, 0x6f55, 0x6f72, 0x6f52, 0x6f50, 0x6f57,
- 0x6f94, 0x6f93, 0x6f5d, 0x6f00, 0x6f61, 0x6f6b, 0x6f7d, 0x6f67,
- 0x6f90, 0x6f53, 0x6f8b, 0x6f69, 0x6f7f, 0x6f95, 0x6f63, 0x6f77,
- 0x6f6a, 0x6f7b, 0x71b2, 0x71af, 0x719b, 0x71b0, 0x71a0, 0x719a,
- 0x71a9, 0x71b5, 0x719d, 0x71a5, 0x719e, 0x71a4, 0x71a1, 0x71aa,
- 0x719c, 0x71a7, 0x71b3, 0x7298, 0x729a, 0x7358, 0x7352, 0x735e,
- 0x735f, 0x7360, 0x735d, 0x735b, 0x7361, 0x735a, 0x7359, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7362, 0x7487, 0x7489, 0x748a, 0x7486, 0x7481, 0x747d,
- 0x7485, 0x7488, 0x747c, 0x7479, 0x7508, 0x7507, 0x757e, 0x7625,
- 0x761e, 0x7619, 0x761d, 0x761c, 0x7623, 0x761a, 0x7628, 0x761b,
- 0x769c, 0x769d, 0x769e, 0x769b, 0x778d, 0x778f, 0x7789, 0x7788,
- 0x78cd, 0x78bb, 0x78cf, 0x78cc, 0x78d1, 0x78ce, 0x78d4, 0x78c8,
- 0x78c3, 0x78c4, 0x78c9, 0x799a, 0x79a1, 0x79a0, 0x799c, 0x79a2,
- 0x799b, 0x6b76, 0x7a39, 0x7ab2, 0x7ab4, 0x7ab3, 0x7bb7, 0x7bcb,
- 0x7bbe, 0x7bac, 0x7bce, 0x7baf, 0x7bb9, 0x7bca, 0x7bb5, 0x7cc5,
- 0x7cc8, 0x7ccc, 0x7ccb, 0x7df7, 0x7ddb, 0x7dea, 0x7de7, 0x7dd7,
- 0x7de1, 0x7e03, 0x7dfa, 0x7de6, 0x7df6, 0x7df1, 0x7df0, 0x7dee,
- 0x7ddf, 0x7f76, 0x7fac, 0x7fb0, 0x7fad, 0x7fed, 0x7feb, 0x7fea,
- 0x7fec, 0x7fe6, 0x7fe8, 0x8064, 0x8067, 0x81a3, 0x819f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x819e, 0x8195, 0x81a2, 0x8199, 0x8197, 0x8216, 0x824f, 0x8253,
- 0x8252, 0x8250, 0x824e, 0x8251, 0x8524, 0x853b, 0x850f, 0x8500,
- 0x8529, 0x850e, 0x8509, 0x850d, 0x851f, 0x850a, 0x8527, 0x851c,
- 0x84fb, 0x852b, 0x84fa, 0x8508, 0x850c, 0x84f4, 0x852a, 0x84f2,
- 0x8515, 0x84f7, 0x84eb, 0x84f3, 0x84fc, 0x8512, 0x84ea, 0x84e9,
- 0x8516, 0x84fe, 0x8528, 0x851d, 0x852e, 0x8502, 0x84fd, 0x851e,
- 0x84f6, 0x8531, 0x8526, 0x84e7, 0x84e8, 0x84f0, 0x84ef, 0x84f9,
- 0x8518, 0x8520, 0x8530, 0x850b, 0x8519, 0x852f, 0x8662, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8756, 0x8763, 0x8764, 0x8777, 0x87e1, 0x8773, 0x8758,
- 0x8754, 0x875b, 0x8752, 0x8761, 0x875a, 0x8751, 0x875e, 0x876d,
- 0x876a, 0x8750, 0x874e, 0x875f, 0x875d, 0x876f, 0x876c, 0x877a,
- 0x876e, 0x875c, 0x8765, 0x874f, 0x877b, 0x8775, 0x8762, 0x8767,
- 0x8769, 0x885a, 0x8905, 0x890c, 0x8914, 0x890b, 0x8917, 0x8918,
- 0x8919, 0x8906, 0x8916, 0x8911, 0x890e, 0x8909, 0x89a2, 0x89a4,
- 0x89a3, 0x89ed, 0x89f0, 0x89ec, 0x8acf, 0x8ac6, 0x8ab8, 0x8ad3,
- 0x8ad1, 0x8ad4, 0x8ad5, 0x8abb, 0x8ad7, 0x8abe, 0x8ac0, 0x8ac5,
- 0x8ad8, 0x8ac3, 0x8aba, 0x8abd, 0x8ad9, 0x8c3e, 0x8c4d, 0x8c8f,
- 0x8ce5, 0x8cdf, 0x8cd9, 0x8ce8, 0x8cda, 0x8cdd, 0x8ce7, 0x8da0,
- 0x8d9c, 0x8da1, 0x8d9b, 0x8e20, 0x8e23, 0x8e25, 0x8e24, 0x8e2e,
- 0x8e15, 0x8e1b, 0x8e16, 0x8e11, 0x8e19, 0x8e26, 0x8e27, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8e14, 0x8e12, 0x8e18, 0x8e13, 0x8e1c, 0x8e17, 0x8e1a, 0x8f2c,
- 0x8f24, 0x8f18, 0x8f1a, 0x8f20, 0x8f23, 0x8f16, 0x8f17, 0x9073,
- 0x9070, 0x906f, 0x9067, 0x906b, 0x912f, 0x912b, 0x9129, 0x912a,
- 0x9132, 0x9126, 0x912e, 0x9185, 0x9186, 0x918a, 0x9181, 0x9182,
- 0x9184, 0x9180, 0x92d0, 0x92c3, 0x92c4, 0x92c0, 0x92d9, 0x92b6,
- 0x92cf, 0x92f1, 0x92df, 0x92d8, 0x92e9, 0x92d7, 0x92dd, 0x92cc,
- 0x92ef, 0x92c2, 0x92e8, 0x92ca, 0x92c8, 0x92ce, 0x92e6, 0x92cd,
- 0x92d5, 0x92c9, 0x92e0, 0x92de, 0x92e7, 0x92d1, 0x92d3, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x92b5, 0x92e1, 0x92c6, 0x92b4, 0x957c, 0x95ac, 0x95ab,
- 0x95ae, 0x95b0, 0x96a4, 0x96a2, 0x96d3, 0x9705, 0x9708, 0x9702,
- 0x975a, 0x978a, 0x978e, 0x9788, 0x97d0, 0x97cf, 0x981e, 0x981d,
- 0x9826, 0x9829, 0x9828, 0x9820, 0x981b, 0x9827, 0x98b2, 0x9908,
- 0x98fa, 0x9911, 0x9914, 0x9916, 0x9917, 0x9915, 0x99dc, 0x99cd,
- 0x99cf, 0x99d3, 0x99d4, 0x99ce, 0x99c9, 0x99d6, 0x99d8, 0x99cb,
- 0x99d7, 0x99cc, 0x9ab3, 0x9aec, 0x9aeb, 0x9af3, 0x9af2, 0x9af1,
- 0x9b46, 0x9b43, 0x9b67, 0x9b74, 0x9b71, 0x9b66, 0x9b76, 0x9b75,
- 0x9b70, 0x9b68, 0x9b64, 0x9b6c, 0x9cfc, 0x9cfa, 0x9cfd, 0x9cff,
- 0x9cf7, 0x9d07, 0x9d00, 0x9cf9, 0x9cfb, 0x9d08, 0x9d05, 0x9d04,
- 0x9e83, 0x9ed3, 0x9f0f, 0x9f10, 0x511c, 0x5113, 0x5117, 0x511a,
- 0x5111, 0x51de, 0x5334, 0x53e1, 0x5670, 0x5660, 0x566e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5673, 0x5666, 0x5663, 0x566d, 0x5672, 0x565e, 0x5677, 0x571c,
- 0x571b, 0x58c8, 0x58bd, 0x58c9, 0x58bf, 0x58ba, 0x58c2, 0x58bc,
- 0x58c6, 0x5b17, 0x5b19, 0x5b1b, 0x5b21, 0x5b14, 0x5b13, 0x5b10,
- 0x5b16, 0x5b28, 0x5b1a, 0x5b20, 0x5b1e, 0x5bef, 0x5dac, 0x5db1,
- 0x5da9, 0x5da7, 0x5db5, 0x5db0, 0x5dae, 0x5daa, 0x5da8, 0x5db2,
- 0x5dad, 0x5daf, 0x5db4, 0x5e67, 0x5e68, 0x5e66, 0x5e6f, 0x5ee9,
- 0x5ee7, 0x5ee6, 0x5ee8, 0x5ee5, 0x5f4b, 0x5fbc, 0x619d, 0x61a8,
- 0x6196, 0x61c5, 0x61b4, 0x61c6, 0x61c1, 0x61cc, 0x61ba, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x61bf, 0x61b8, 0x618c, 0x64d7, 0x64d6, 0x64d0, 0x64cf,
- 0x64c9, 0x64bd, 0x6489, 0x64c3, 0x64db, 0x64f3, 0x64d9, 0x6533,
- 0x657f, 0x657c, 0x65a2, 0x66c8, 0x66be, 0x66c0, 0x66ca, 0x66cb,
- 0x66cf, 0x66bd, 0x66bb, 0x66ba, 0x66cc, 0x6723, 0x6a34, 0x6a66,
- 0x6a49, 0x6a67, 0x6a32, 0x6a68, 0x6a3e, 0x6a5d, 0x6a6d, 0x6a76,
- 0x6a5b, 0x6a51, 0x6a28, 0x6a5a, 0x6a3b, 0x6a3f, 0x6a41, 0x6a6a,
- 0x6a64, 0x6a50, 0x6a4f, 0x6a54, 0x6a6f, 0x6a69, 0x6a60, 0x6a3c,
- 0x6a5e, 0x6a56, 0x6a55, 0x6a4d, 0x6a4e, 0x6a46, 0x6b55, 0x6b54,
- 0x6b56, 0x6ba7, 0x6baa, 0x6bab, 0x6bc8, 0x6bc7, 0x6c04, 0x6c03,
- 0x6c06, 0x6fad, 0x6fcb, 0x6fa3, 0x6fc7, 0x6fbc, 0x6fce, 0x6fc8,
- 0x6f5e, 0x6fc4, 0x6fbd, 0x6f9e, 0x6fca, 0x6fa8, 0x7004, 0x6fa5,
- 0x6fae, 0x6fba, 0x6fac, 0x6faa, 0x6fcf, 0x6fbf, 0x6fb8, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6fa2, 0x6fc9, 0x6fab, 0x6fcd, 0x6faf, 0x6fb2, 0x6fb0, 0x71c5,
- 0x71c2, 0x71bf, 0x71b8, 0x71d6, 0x71c0, 0x71c1, 0x71cb, 0x71d4,
- 0x71ca, 0x71c7, 0x71cf, 0x71bd, 0x71d8, 0x71bc, 0x71c6, 0x71da,
- 0x71db, 0x729d, 0x729e, 0x7369, 0x7366, 0x7367, 0x736c, 0x7365,
- 0x736b, 0x736a, 0x747f, 0x749a, 0x74a0, 0x7494, 0x7492, 0x7495,
- 0x74a1, 0x750b, 0x7580, 0x762f, 0x762d, 0x7631, 0x763d, 0x7633,
- 0x763c, 0x7635, 0x7632, 0x7630, 0x76bb, 0x76e6, 0x779a, 0x779d,
- 0x77a1, 0x779c, 0x779b, 0x77a2, 0x77a3, 0x7795, 0x7799, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7797, 0x78dd, 0x78e9, 0x78e5, 0x78ea, 0x78de, 0x78e3,
- 0x78db, 0x78e1, 0x78e2, 0x78ed, 0x78df, 0x78e0, 0x79a4, 0x7a44,
- 0x7a48, 0x7a47, 0x7ab6, 0x7ab8, 0x7ab5, 0x7ab1, 0x7ab7, 0x7bde,
- 0x7be3, 0x7be7, 0x7bdd, 0x7bd5, 0x7be5, 0x7bda, 0x7be8, 0x7bf9,
- 0x7bd4, 0x7bea, 0x7be2, 0x7bdc, 0x7beb, 0x7bd8, 0x7bdf, 0x7cd2,
- 0x7cd4, 0x7cd7, 0x7cd0, 0x7cd1, 0x7e12, 0x7e21, 0x7e17, 0x7e0c,
- 0x7e1f, 0x7e20, 0x7e13, 0x7e0e, 0x7e1c, 0x7e15, 0x7e1a, 0x7e22,
- 0x7e0b, 0x7e0f, 0x7e16, 0x7e0d, 0x7e14, 0x7e25, 0x7e24, 0x7f43,
- 0x7f7b, 0x7f7c, 0x7f7a, 0x7fb1, 0x7fef, 0x802a, 0x8029, 0x806c,
- 0x81b1, 0x81a6, 0x81ae, 0x81b9, 0x81b5, 0x81ab, 0x81b0, 0x81ac,
- 0x81b4, 0x81b2, 0x81b7, 0x81a7, 0x81f2, 0x8255, 0x8256, 0x8257,
- 0x8556, 0x8545, 0x856b, 0x854d, 0x8553, 0x8561, 0x8558, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8540, 0x8546, 0x8564, 0x8541, 0x8562, 0x8544, 0x8551, 0x8547,
- 0x8563, 0x853e, 0x855b, 0x8571, 0x854e, 0x856e, 0x8575, 0x8555,
- 0x8567, 0x8560, 0x858c, 0x8566, 0x855d, 0x8554, 0x8565, 0x856c,
- 0x8663, 0x8665, 0x8664, 0x879b, 0x878f, 0x8797, 0x8793, 0x8792,
- 0x8788, 0x8781, 0x8796, 0x8798, 0x8779, 0x8787, 0x87a3, 0x8785,
- 0x8790, 0x8791, 0x879d, 0x8784, 0x8794, 0x879c, 0x879a, 0x8789,
- 0x891e, 0x8926, 0x8930, 0x892d, 0x892e, 0x8927, 0x8931, 0x8922,
- 0x8929, 0x8923, 0x892f, 0x892c, 0x891f, 0x89f1, 0x8ae0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8ae2, 0x8af2, 0x8af4, 0x8af5, 0x8add, 0x8b14, 0x8ae4,
- 0x8adf, 0x8af0, 0x8ac8, 0x8ade, 0x8ae1, 0x8ae8, 0x8aff, 0x8aef,
- 0x8afb, 0x8c91, 0x8c92, 0x8c90, 0x8cf5, 0x8cee, 0x8cf1, 0x8cf0,
- 0x8cf3, 0x8d6c, 0x8d6e, 0x8da5, 0x8da7, 0x8e33, 0x8e3e, 0x8e38,
- 0x8e40, 0x8e45, 0x8e36, 0x8e3c, 0x8e3d, 0x8e41, 0x8e30, 0x8e3f,
- 0x8ebd, 0x8f36, 0x8f2e, 0x8f35, 0x8f32, 0x8f39, 0x8f37, 0x8f34,
- 0x9076, 0x9079, 0x907b, 0x9086, 0x90fa, 0x9133, 0x9135, 0x9136,
- 0x9193, 0x9190, 0x9191, 0x918d, 0x918f, 0x9327, 0x931e, 0x9308,
- 0x931f, 0x9306, 0x930f, 0x937a, 0x9338, 0x933c, 0x931b, 0x9323,
- 0x9312, 0x9301, 0x9346, 0x932d, 0x930e, 0x930d, 0x92cb, 0x931d,
- 0x92fa, 0x9325, 0x9313, 0x92f9, 0x92f7, 0x9334, 0x9302, 0x9324,
- 0x92ff, 0x9329, 0x9339, 0x9335, 0x932a, 0x9314, 0x930c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x930b, 0x92fe, 0x9309, 0x9300, 0x92fb, 0x9316, 0x95bc, 0x95cd,
- 0x95be, 0x95b9, 0x95ba, 0x95b6, 0x95bf, 0x95b5, 0x95bd, 0x96a9,
- 0x96d4, 0x970b, 0x9712, 0x9710, 0x9799, 0x9797, 0x9794, 0x97f0,
- 0x97f8, 0x9835, 0x982f, 0x9832, 0x9924, 0x991f, 0x9927, 0x9929,
- 0x999e, 0x99ee, 0x99ec, 0x99e5, 0x99e4, 0x99f0, 0x99e3, 0x99ea,
- 0x99e9, 0x99e7, 0x9ab9, 0x9abf, 0x9ab4, 0x9abb, 0x9af6, 0x9afa,
- 0x9af9, 0x9af7, 0x9b33, 0x9b80, 0x9b85, 0x9b87, 0x9b7c, 0x9b7e,
- 0x9b7b, 0x9b82, 0x9b93, 0x9b92, 0x9b90, 0x9b7a, 0x9b95, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9b7d, 0x9b88, 0x9d25, 0x9d17, 0x9d20, 0x9d1e, 0x9d14,
- 0x9d29, 0x9d1d, 0x9d18, 0x9d22, 0x9d10, 0x9d19, 0x9d1f, 0x9e88,
- 0x9e86, 0x9e87, 0x9eae, 0x9ead, 0x9ed5, 0x9ed6, 0x9efa, 0x9f12,
- 0x9f3d, 0x5126, 0x5125, 0x5122, 0x5124, 0x5120, 0x5129, 0x52f4,
- 0x5693, 0x568c, 0x568d, 0x5686, 0x5684, 0x5683, 0x567e, 0x5682,
- 0x567f, 0x5681, 0x58d6, 0x58d4, 0x58cf, 0x58d2, 0x5b2d, 0x5b25,
- 0x5b32, 0x5b23, 0x5b2c, 0x5b27, 0x5b26, 0x5b2f, 0x5b2e, 0x5b7b,
- 0x5bf1, 0x5bf2, 0x5db7, 0x5e6c, 0x5e6a, 0x5fbe, 0x5fbb, 0x61c3,
- 0x61b5, 0x61bc, 0x61e7, 0x61e0, 0x61e5, 0x61e4, 0x61e8, 0x61de,
- 0x64ef, 0x64e9, 0x64e3, 0x64eb, 0x64e4, 0x64e8, 0x6581, 0x6580,
- 0x65b6, 0x65da, 0x66d2, 0x6a8d, 0x6a96, 0x6a81, 0x6aa5, 0x6a89,
- 0x6a9f, 0x6a9b, 0x6aa1, 0x6a9e, 0x6a87, 0x6a93, 0x6a8e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6a95, 0x6a83, 0x6aa8, 0x6aa4, 0x6a91, 0x6a7f, 0x6aa6, 0x6a9a,
- 0x6a85, 0x6a8c, 0x6a92, 0x6b5b, 0x6bad, 0x6c09, 0x6fcc, 0x6fa9,
- 0x6ff4, 0x6fd4, 0x6fe3, 0x6fdc, 0x6fed, 0x6fe7, 0x6fe6, 0x6fde,
- 0x6ff2, 0x6fdd, 0x6fe2, 0x6fe8, 0x71e1, 0x71f1, 0x71e8, 0x71f2,
- 0x71e4, 0x71f0, 0x71e2, 0x7373, 0x736e, 0x736f, 0x7497, 0x74b2,
- 0x74ab, 0x7490, 0x74aa, 0x74ad, 0x74b1, 0x74a5, 0x74af, 0x7510,
- 0x7511, 0x7512, 0x750f, 0x7584, 0x7643, 0x7648, 0x7649, 0x7647,
- 0x76a4, 0x76e9, 0x77b5, 0x77ab, 0x77b2, 0x77b7, 0x77b6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x77b4, 0x77b1, 0x77a8, 0x77f0, 0x78f3, 0x78fd, 0x7902,
- 0x78fb, 0x78fc, 0x78f2, 0x7905, 0x78f9, 0x78fe, 0x7904, 0x79ab,
- 0x79a8, 0x7a5c, 0x7a5b, 0x7a56, 0x7a58, 0x7a54, 0x7a5a, 0x7abe,
- 0x7ac0, 0x7ac1, 0x7c05, 0x7c0f, 0x7bf2, 0x7c00, 0x7bff, 0x7bfb,
- 0x7c0e, 0x7bf4, 0x7c0b, 0x7bf3, 0x7c02, 0x7c09, 0x7c03, 0x7c01,
- 0x7bf8, 0x7bfd, 0x7c06, 0x7bf0, 0x7bf1, 0x7c10, 0x7c0a, 0x7ce8,
- 0x7e2d, 0x7e3c, 0x7e42, 0x7e33, 0x9848, 0x7e38, 0x7e2a, 0x7e49,
- 0x7e40, 0x7e47, 0x7e29, 0x7e4c, 0x7e30, 0x7e3b, 0x7e36, 0x7e44,
- 0x7e3a, 0x7f45, 0x7f7f, 0x7f7e, 0x7f7d, 0x7ff4, 0x7ff2, 0x802c,
- 0x81bb, 0x81c4, 0x81cc, 0x81ca, 0x81c5, 0x81c7, 0x81bc, 0x81e9,
- 0x825b, 0x825a, 0x825c, 0x8583, 0x8580, 0x858f, 0x85a7, 0x8595,
- 0x85a0, 0x858b, 0x85a3, 0x857b, 0x85a4, 0x859a, 0x859e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8577, 0x857c, 0x8589, 0x85a1, 0x857a, 0x8578, 0x8557, 0x858e,
- 0x8596, 0x8586, 0x858d, 0x8599, 0x859d, 0x8581, 0x85a2, 0x8582,
- 0x8588, 0x8585, 0x8579, 0x8576, 0x8598, 0x8590, 0x859f, 0x8668,
- 0x87be, 0x87aa, 0x87ad, 0x87c5, 0x87b0, 0x87ac, 0x87b9, 0x87b5,
- 0x87bc, 0x87ae, 0x87c9, 0x87c3, 0x87c2, 0x87cc, 0x87b7, 0x87af,
- 0x87c4, 0x87ca, 0x87b4, 0x87b6, 0x87bf, 0x87b8, 0x87bd, 0x87de,
- 0x87b2, 0x8935, 0x8933, 0x893c, 0x893e, 0x8941, 0x8952, 0x8937,
- 0x8942, 0x89ad, 0x89af, 0x89ae, 0x89f2, 0x89f3, 0x8b1e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8b18, 0x8b16, 0x8b11, 0x8b05, 0x8b0b, 0x8b22, 0x8b0f,
- 0x8b12, 0x8b15, 0x8b07, 0x8b0d, 0x8b08, 0x8b06, 0x8b1c, 0x8b13,
- 0x8b1a, 0x8c4f, 0x8c70, 0x8c72, 0x8c71, 0x8c6f, 0x8c95, 0x8c94,
- 0x8cf9, 0x8d6f, 0x8e4e, 0x8e4d, 0x8e53, 0x8e50, 0x8e4c, 0x8e47,
- 0x8f43, 0x8f40, 0x9085, 0x907e, 0x9138, 0x919a, 0x91a2, 0x919b,
- 0x9199, 0x919f, 0x91a1, 0x919d, 0x91a0, 0x93a1, 0x9383, 0x93af,
- 0x9364, 0x9356, 0x9347, 0x937c, 0x9358, 0x935c, 0x9376, 0x9349,
- 0x9350, 0x9351, 0x9360, 0x936d, 0x938f, 0x934c, 0x936a, 0x9379,
- 0x9357, 0x9355, 0x9352, 0x934f, 0x9371, 0x9377, 0x937b, 0x9361,
- 0x935e, 0x9363, 0x9367, 0x9380, 0x934e, 0x9359, 0x95c7, 0x95c0,
- 0x95c9, 0x95c3, 0x95c5, 0x95b7, 0x96ae, 0x96b0, 0x96ac, 0x9720,
- 0x971f, 0x9718, 0x971d, 0x9719, 0x979a, 0x97a1, 0x979c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x979e, 0x979d, 0x97d5, 0x97d4, 0x97f1, 0x9841, 0x9844, 0x984a,
- 0x9849, 0x9845, 0x9843, 0x9925, 0x992b, 0x992c, 0x992a, 0x9933,
- 0x9932, 0x992f, 0x992d, 0x9931, 0x9930, 0x9998, 0x99a3, 0x99a1,
- 0x9a02, 0x99fa, 0x99f4, 0x99f7, 0x99f9, 0x99f8, 0x99f6, 0x99fb,
- 0x99fd, 0x99fe, 0x99fc, 0x9a03, 0x9abe, 0x9afe, 0x9afd, 0x9b01,
- 0x9afc, 0x9b48, 0x9b9a, 0x9ba8, 0x9b9e, 0x9b9b, 0x9ba6, 0x9ba1,
- 0x9ba5, 0x9ba4, 0x9b86, 0x9ba2, 0x9ba0, 0x9baf, 0x9d33, 0x9d41,
- 0x9d67, 0x9d36, 0x9d2e, 0x9d2f, 0x9d31, 0x9d38, 0x9d30, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9d45, 0x9d42, 0x9d43, 0x9d3e, 0x9d37, 0x9d40, 0x9d3d,
- 0x7ff5, 0x9d2d, 0x9e8a, 0x9e89, 0x9e8d, 0x9eb0, 0x9ec8, 0x9eda,
- 0x9efb, 0x9eff, 0x9f24, 0x9f23, 0x9f22, 0x9f54, 0x9fa0, 0x5131,
- 0x512d, 0x512e, 0x5698, 0x569c, 0x5697, 0x569a, 0x569d, 0x5699,
- 0x5970, 0x5b3c, 0x5c69, 0x5c6a, 0x5dc0, 0x5e6d, 0x5e6e, 0x61d8,
- 0x61df, 0x61ed, 0x61ee, 0x61f1, 0x61ea, 0x61f0, 0x61eb, 0x61d6,
- 0x61e9, 0x64ff, 0x6504, 0x64fd, 0x64f8, 0x6501, 0x6503, 0x64fc,
- 0x6594, 0x65db, 0x66da, 0x66db, 0x66d8, 0x6ac5, 0x6ab9, 0x6abd,
- 0x6ae1, 0x6ac6, 0x6aba, 0x6ab6, 0x6ab7, 0x6ac7, 0x6ab4, 0x6aad,
- 0x6b5e, 0x6bc9, 0x6c0b, 0x7007, 0x700c, 0x700d, 0x7001, 0x7005,
- 0x7014, 0x700e, 0x6fff, 0x7000, 0x6ffb, 0x7026, 0x6ffc, 0x6ff7,
- 0x700a, 0x7201, 0x71ff, 0x71f9, 0x7203, 0x71fd, 0x7376, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x74b8, 0x74c0, 0x74b5, 0x74c1, 0x74be, 0x74b6, 0x74bb, 0x74c2,
- 0x7514, 0x7513, 0x765c, 0x7664, 0x7659, 0x7650, 0x7653, 0x7657,
- 0x765a, 0x76a6, 0x76bd, 0x76ec, 0x77c2, 0x77ba, 0x78ff, 0x790c,
- 0x7913, 0x7914, 0x7909, 0x7910, 0x7912, 0x7911, 0x79ad, 0x79ac,
- 0x7a5f, 0x7c1c, 0x7c29, 0x7c19, 0x7c20, 0x7c1f, 0x7c2d, 0x7c1d,
- 0x7c26, 0x7c28, 0x7c22, 0x7c25, 0x7c30, 0x7e5c, 0x7e50, 0x7e56,
- 0x7e63, 0x7e58, 0x7e62, 0x7e5f, 0x7e51, 0x7e60, 0x7e57, 0x7e53,
- 0x7fb5, 0x7fb3, 0x7ff7, 0x7ff8, 0x8075, 0x81d1, 0x81d2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x81d0, 0x825f, 0x825e, 0x85b4, 0x85c6, 0x85c0, 0x85c3,
- 0x85c2, 0x85b3, 0x85b5, 0x85bd, 0x85c7, 0x85c4, 0x85bf, 0x85cb,
- 0x85ce, 0x85c8, 0x85c5, 0x85b1, 0x85b6, 0x85d2, 0x8624, 0x85b8,
- 0x85b7, 0x85be, 0x8669, 0x87e7, 0x87e6, 0x87e2, 0x87db, 0x87eb,
- 0x87ea, 0x87e5, 0x87df, 0x87f3, 0x87e4, 0x87d4, 0x87dc, 0x87d3,
- 0x87ed, 0x87d8, 0x87e3, 0x87a4, 0x87d7, 0x87d9, 0x8801, 0x87f4,
- 0x87e8, 0x87dd, 0x8953, 0x894b, 0x894f, 0x894c, 0x8946, 0x8950,
- 0x8951, 0x8949, 0x8b2a, 0x8b27, 0x8b23, 0x8b33, 0x8b30, 0x8b35,
- 0x8b47, 0x8b2f, 0x8b3c, 0x8b3e, 0x8b31, 0x8b25, 0x8b37, 0x8b26,
- 0x8b36, 0x8b2e, 0x8b24, 0x8b3b, 0x8b3d, 0x8b3a, 0x8c42, 0x8c75,
- 0x8c99, 0x8c98, 0x8c97, 0x8cfe, 0x8d04, 0x8d02, 0x8d00, 0x8e5c,
- 0x8e62, 0x8e60, 0x8e57, 0x8e56, 0x8e5e, 0x8e65, 0x8e67, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8e5b, 0x8e5a, 0x8e61, 0x8e5d, 0x8e69, 0x8e54, 0x8f46, 0x8f47,
- 0x8f48, 0x8f4b, 0x9128, 0x913a, 0x913b, 0x913e, 0x91a8, 0x91a5,
- 0x91a7, 0x91af, 0x91aa, 0x93b5, 0x938c, 0x9392, 0x93b7, 0x939b,
- 0x939d, 0x9389, 0x93a7, 0x938e, 0x93aa, 0x939e, 0x93a6, 0x9395,
- 0x9388, 0x9399, 0x939f, 0x938d, 0x93b1, 0x9391, 0x93b2, 0x93a4,
- 0x93a8, 0x93b4, 0x93a3, 0x93a5, 0x95d2, 0x95d3, 0x95d1, 0x96b3,
- 0x96d7, 0x96da, 0x5dc2, 0x96df, 0x96d8, 0x96dd, 0x9723, 0x9722,
- 0x9725, 0x97ac, 0x97ae, 0x97a8, 0x97ab, 0x97a4, 0x97aa, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x97a2, 0x97a5, 0x97d7, 0x97d9, 0x97d6, 0x97d8, 0x97fa,
- 0x9850, 0x9851, 0x9852, 0x98b8, 0x9941, 0x993c, 0x993a, 0x9a0f,
- 0x9a0b, 0x9a09, 0x9a0d, 0x9a04, 0x9a11, 0x9a0a, 0x9a05, 0x9a07,
- 0x9a06, 0x9ac0, 0x9adc, 0x9b08, 0x9b04, 0x9b05, 0x9b29, 0x9b35,
- 0x9b4a, 0x9b4c, 0x9b4b, 0x9bc7, 0x9bc6, 0x9bc3, 0x9bbf, 0x9bc1,
- 0x9bb5, 0x9bb8, 0x9bd3, 0x9bb6, 0x9bc4, 0x9bb9, 0x9bbd, 0x9d5c,
- 0x9d53, 0x9d4f, 0x9d4a, 0x9d5b, 0x9d4b, 0x9d59, 0x9d56, 0x9d4c,
- 0x9d57, 0x9d52, 0x9d54, 0x9d5f, 0x9d58, 0x9d5a, 0x9e8e, 0x9e8c,
- 0x9edf, 0x9f01, 0x9f00, 0x9f16, 0x9f25, 0x9f2b, 0x9f2a, 0x9f29,
- 0x9f28, 0x9f4c, 0x9f55, 0x5134, 0x5135, 0x5296, 0x52f7, 0x53b4,
- 0x56ab, 0x56ad, 0x56a6, 0x56a7, 0x56aa, 0x56ac, 0x58da, 0x58dd,
- 0x58db, 0x5912, 0x5b3d, 0x5b3e, 0x5b3f, 0x5dc3, 0x5e70, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5fbf, 0x61fb, 0x6507, 0x6510, 0x650d, 0x6509, 0x650c, 0x650e,
- 0x6584, 0x65de, 0x65dd, 0x66de, 0x6ae7, 0x6ae0, 0x6acc, 0x6ad1,
- 0x6ad9, 0x6acb, 0x6adf, 0x6adc, 0x6ad0, 0x6aeb, 0x6acf, 0x6acd,
- 0x6ade, 0x6b60, 0x6bb0, 0x6c0c, 0x7019, 0x7027, 0x7020, 0x7016,
- 0x702b, 0x7021, 0x7022, 0x7023, 0x7029, 0x7017, 0x7024, 0x701c,
- 0x702a, 0x720c, 0x720a, 0x7207, 0x7202, 0x7205, 0x72a5, 0x72a6,
- 0x72a4, 0x72a3, 0x72a1, 0x74cb, 0x74c5, 0x74b7, 0x74c3, 0x7516,
- 0x7660, 0x77c9, 0x77ca, 0x77c4, 0x77f1, 0x791d, 0x791b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7921, 0x791c, 0x7917, 0x791e, 0x79b0, 0x7a67, 0x7a68,
- 0x7c33, 0x7c3c, 0x7c39, 0x7c2c, 0x7c3b, 0x7cec, 0x7cea, 0x7e76,
- 0x7e75, 0x7e78, 0x7e70, 0x7e77, 0x7e6f, 0x7e7a, 0x7e72, 0x7e74,
- 0x7e68, 0x7f4b, 0x7f4a, 0x7f83, 0x7f86, 0x7fb7, 0x7ffd, 0x7ffe,
- 0x8078, 0x81d7, 0x81d5, 0x8264, 0x8261, 0x8263, 0x85eb, 0x85f1,
- 0x85ed, 0x85d9, 0x85e1, 0x85e8, 0x85da, 0x85d7, 0x85ec, 0x85f2,
- 0x85f8, 0x85d8, 0x85df, 0x85e3, 0x85dc, 0x85d1, 0x85f0, 0x85e6,
- 0x85ef, 0x85de, 0x85e2, 0x8800, 0x87fa, 0x8803, 0x87f6, 0x87f7,
- 0x8809, 0x880c, 0x880b, 0x8806, 0x87fc, 0x8808, 0x87ff, 0x880a,
- 0x8802, 0x8962, 0x895a, 0x895b, 0x8957, 0x8961, 0x895c, 0x8958,
- 0x895d, 0x8959, 0x8988, 0x89b7, 0x89b6, 0x89f6, 0x8b50, 0x8b48,
- 0x8b4a, 0x8b40, 0x8b53, 0x8b56, 0x8b54, 0x8b4b, 0x8b55, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8b51, 0x8b42, 0x8b52, 0x8b57, 0x8c43, 0x8c77, 0x8c76, 0x8c9a,
- 0x8d06, 0x8d07, 0x8d09, 0x8dac, 0x8daa, 0x8dad, 0x8dab, 0x8e6d,
- 0x8e78, 0x8e73, 0x8e6a, 0x8e6f, 0x8e7b, 0x8ec2, 0x8f52, 0x8f51,
- 0x8f4f, 0x8f50, 0x8f53, 0x8fb4, 0x9140, 0x913f, 0x91b0, 0x91ad,
- 0x93de, 0x93c7, 0x93cf, 0x93c2, 0x93da, 0x93d0, 0x93f9, 0x93ec,
- 0x93cc, 0x93d9, 0x93a9, 0x93e6, 0x93ca, 0x93d4, 0x93ee, 0x93e3,
- 0x93d5, 0x93c4, 0x93ce, 0x93c0, 0x93d2, 0x93e7, 0x957d, 0x95da,
- 0x95db, 0x96e1, 0x9729, 0x972b, 0x972c, 0x9728, 0x9726, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x97b3, 0x97b7, 0x97b6, 0x97dd, 0x97de, 0x97df, 0x985c,
- 0x9859, 0x985d, 0x9857, 0x98bf, 0x98bd, 0x98bb, 0x98be, 0x9948,
- 0x9947, 0x9943, 0x99a6, 0x99a7, 0x9a1a, 0x9a15, 0x9a25, 0x9a1d,
- 0x9a24, 0x9a1b, 0x9a22, 0x9a20, 0x9a27, 0x9a23, 0x9a1e, 0x9a1c,
- 0x9a14, 0x9ac2, 0x9b0b, 0x9b0a, 0x9b0e, 0x9b0c, 0x9b37, 0x9bea,
- 0x9beb, 0x9be0, 0x9bde, 0x9be4, 0x9be6, 0x9be2, 0x9bf0, 0x9bd4,
- 0x9bd7, 0x9bec, 0x9bdc, 0x9bd9, 0x9be5, 0x9bd5, 0x9be1, 0x9bda,
- 0x9d77, 0x9d81, 0x9d8a, 0x9d84, 0x9d88, 0x9d71, 0x9d80, 0x9d78,
- 0x9d86, 0x9d8b, 0x9d8c, 0x9d7d, 0x9d6b, 0x9d74, 0x9d75, 0x9d70,
- 0x9d69, 0x9d85, 0x9d73, 0x9d7b, 0x9d82, 0x9d6f, 0x9d79, 0x9d7f,
- 0x9d87, 0x9d68, 0x9e94, 0x9e91, 0x9ec0, 0x9efc, 0x9f2d, 0x9f40,
- 0x9f41, 0x9f4d, 0x9f56, 0x9f57, 0x9f58, 0x5337, 0x56b2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x56b5, 0x56b3, 0x58e3, 0x5b45, 0x5dc6, 0x5dc7, 0x5eee, 0x5eef,
- 0x5fc0, 0x5fc1, 0x61f9, 0x6517, 0x6516, 0x6515, 0x6513, 0x65df,
- 0x66e8, 0x66e3, 0x66e4, 0x6af3, 0x6af0, 0x6aea, 0x6ae8, 0x6af9,
- 0x6af1, 0x6aee, 0x6aef, 0x703c, 0x7035, 0x702f, 0x7037, 0x7034,
- 0x7031, 0x7042, 0x7038, 0x703f, 0x703a, 0x7039, 0x7040, 0x703b,
- 0x7033, 0x7041, 0x7213, 0x7214, 0x72a8, 0x737d, 0x737c, 0x74ba,
- 0x76ab, 0x76aa, 0x76be, 0x76ed, 0x77cc, 0x77ce, 0x77cf, 0x77cd,
- 0x77f2, 0x7925, 0x7923, 0x7927, 0x7928, 0x7924, 0x7929, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x79b2, 0x7a6e, 0x7a6c, 0x7a6d, 0x7af7, 0x7c49, 0x7c48,
- 0x7c4a, 0x7c47, 0x7c45, 0x7cee, 0x7e7b, 0x7e7e, 0x7e81, 0x7e80,
- 0x7fba, 0x7fff, 0x8079, 0x81db, 0x81d9, 0x820b, 0x8268, 0x8269,
- 0x8622, 0x85ff, 0x8601, 0x85fe, 0x861b, 0x8600, 0x85f6, 0x8604,
- 0x8609, 0x8605, 0x860c, 0x85fd, 0x8819, 0x8810, 0x8811, 0x8817,
- 0x8813, 0x8816, 0x8963, 0x8966, 0x89b9, 0x89f7, 0x8b60, 0x8b6a,
- 0x8b5d, 0x8b68, 0x8b63, 0x8b65, 0x8b67, 0x8b6d, 0x8dae, 0x8e86,
- 0x8e88, 0x8e84, 0x8f59, 0x8f56, 0x8f57, 0x8f55, 0x8f58, 0x8f5a,
- 0x908d, 0x9143, 0x9141, 0x91b7, 0x91b5, 0x91b2, 0x91b3, 0x940b,
- 0x9413, 0x93fb, 0x9420, 0x940f, 0x9414, 0x93fe, 0x9415, 0x9410,
- 0x9428, 0x9419, 0x940d, 0x93f5, 0x9400, 0x93f7, 0x9407, 0x940e,
- 0x9416, 0x9412, 0x93fa, 0x9409, 0x93f8, 0x940a, 0x93ff, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x93fc, 0x940c, 0x93f6, 0x9411, 0x9406, 0x95de, 0x95e0, 0x95df,
- 0x972e, 0x972f, 0x97b9, 0x97bb, 0x97fd, 0x97fe, 0x9860, 0x9862,
- 0x9863, 0x985f, 0x98c1, 0x98c2, 0x9950, 0x994e, 0x9959, 0x994c,
- 0x994b, 0x9953, 0x9a32, 0x9a34, 0x9a31, 0x9a2c, 0x9a2a, 0x9a36,
- 0x9a29, 0x9a2e, 0x9a38, 0x9a2d, 0x9ac7, 0x9aca, 0x9ac6, 0x9b10,
- 0x9b12, 0x9b11, 0x9c0b, 0x9c08, 0x9bf7, 0x9c05, 0x9c12, 0x9bf8,
- 0x9c40, 0x9c07, 0x9c0e, 0x9c06, 0x9c17, 0x9c14, 0x9c09, 0x9d9f,
- 0x9d99, 0x9da4, 0x9d9d, 0x9d92, 0x9d98, 0x9d90, 0x9d9b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9da0, 0x9d94, 0x9d9c, 0x9daa, 0x9d97, 0x9da1, 0x9d9a,
- 0x9da2, 0x9da8, 0x9d9e, 0x9da3, 0x9dbf, 0x9da9, 0x9d96, 0x9da6,
- 0x9da7, 0x9e99, 0x9e9b, 0x9e9a, 0x9ee5, 0x9ee4, 0x9ee7, 0x9ee6,
- 0x9f30, 0x9f2e, 0x9f5b, 0x9f60, 0x9f5e, 0x9f5d, 0x9f59, 0x9f91,
- 0x513a, 0x5139, 0x5298, 0x5297, 0x56c3, 0x56bd, 0x56be, 0x5b48,
- 0x5b47, 0x5dcb, 0x5dcf, 0x5ef1, 0x61fd, 0x651b, 0x6b02, 0x6afc,
- 0x6b03, 0x6af8, 0x6b00, 0x7043, 0x7044, 0x704a, 0x7048, 0x7049,
- 0x7045, 0x7046, 0x721d, 0x721a, 0x7219, 0x737e, 0x7517, 0x766a,
- 0x77d0, 0x792d, 0x7931, 0x792f, 0x7c54, 0x7c53, 0x7cf2, 0x7e8a,
- 0xeb45, 0x7e88, 0x7e8b, 0x7e86, 0x7e8d, 0x7f4d, 0x7fbb, 0x8030,
- 0x81dd, 0x8618, 0x862a, 0x8626, 0x861f, 0x8623, 0x861c, 0x8619,
- 0x8627, 0x862e, 0x8621, 0x8620, 0x8629, 0x861e, 0x8625, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8829, 0x881d, 0x881b, 0x8820, 0x8824, 0x881c, 0x882b, 0x884a,
- 0x896d, 0x8969, 0x896e, 0x896b, 0x89fa, 0x8b79, 0x8b78, 0x8b45,
- 0x8b7a, 0x8b7b, 0x8d10, 0x8d14, 0x8daf, 0x8e8e, 0x8e8c, 0x8f5e,
- 0x8f5b, 0x8f5d, 0x9146, 0x9144, 0x9145, 0x91b9, 0x943f, 0x943b,
- 0x9436, 0x9429, 0x943d, 0x943c, 0x9430, 0x9439, 0x942a, 0x9437,
- 0x942c, 0x9440, 0x9431, 0x95e5, 0x95e4, 0x95e3, 0x9735, 0x973a,
- 0x97bf, 0x97e1, 0x9864, 0x98c9, 0x98c6, 0x98c0, 0x9958, 0x9956,
- 0x9a39, 0x9a3d, 0x9a46, 0x9a44, 0x9a42, 0x9a41, 0x9a3a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9a3f, 0x9acd, 0x9b15, 0x9b17, 0x9b18, 0x9b16, 0x9b3a,
- 0x9b52, 0x9c2b, 0x9c1d, 0x9c1c, 0x9c2c, 0x9c23, 0x9c28, 0x9c29,
- 0x9c24, 0x9c21, 0x9db7, 0x9db6, 0x9dbc, 0x9dc1, 0x9dc7, 0x9dca,
- 0x9dcf, 0x9dbe, 0x9dc5, 0x9dc3, 0x9dbb, 0x9db5, 0x9dce, 0x9db9,
- 0x9dba, 0x9dac, 0x9dc8, 0x9db1, 0x9dad, 0x9dcc, 0x9db3, 0x9dcd,
- 0x9db2, 0x9e7a, 0x9e9c, 0x9eeb, 0x9eee, 0x9eed, 0x9f1b, 0x9f18,
- 0x9f1a, 0x9f31, 0x9f4e, 0x9f65, 0x9f64, 0x9f92, 0x4eb9, 0x56c6,
- 0x56c5, 0x56cb, 0x5971, 0x5b4b, 0x5b4c, 0x5dd5, 0x5dd1, 0x5ef2,
- 0x6521, 0x6520, 0x6526, 0x6522, 0x6b0b, 0x6b08, 0x6b09, 0x6c0d,
- 0x7055, 0x7056, 0x7057, 0x7052, 0x721e, 0x721f, 0x72a9, 0x737f,
- 0x74d8, 0x74d5, 0x74d9, 0x74d7, 0x766d, 0x76ad, 0x7935, 0x79b4,
- 0x7a70, 0x7a71, 0x7c57, 0x7c5c, 0x7c59, 0x7c5b, 0x7c5a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7cf4, 0x7cf1, 0x7e91, 0x7f4f, 0x7f87, 0x81de, 0x826b, 0x8634,
- 0x8635, 0x8633, 0x862c, 0x8632, 0x8636, 0x882c, 0x8828, 0x8826,
- 0x882a, 0x8825, 0x8971, 0x89bf, 0x89be, 0x89fb, 0x8b7e, 0x8b84,
- 0x8b82, 0x8b86, 0x8b85, 0x8b7f, 0x8d15, 0x8e95, 0x8e94, 0x8e9a,
- 0x8e92, 0x8e90, 0x8e96, 0x8e97, 0x8f60, 0x8f62, 0x9147, 0x944c,
- 0x9450, 0x944a, 0x944b, 0x944f, 0x9447, 0x9445, 0x9448, 0x9449,
- 0x9446, 0x973f, 0x97e3, 0x986a, 0x9869, 0x98cb, 0x9954, 0x995b,
- 0x9a4e, 0x9a53, 0x9a54, 0x9a4c, 0x9a4f, 0x9a48, 0x9a4a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9a49, 0x9a52, 0x9a50, 0x9ad0, 0x9b19, 0x9b2b, 0x9b3b,
- 0x9b56, 0x9b55, 0x9c46, 0x9c48, 0x9c3f, 0x9c44, 0x9c39, 0x9c33,
- 0x9c41, 0x9c3c, 0x9c37, 0x9c34, 0x9c32, 0x9c3d, 0x9c36, 0x9ddb,
- 0x9dd2, 0x9dde, 0x9dda, 0x9dcb, 0x9dd0, 0x9ddc, 0x9dd1, 0x9ddf,
- 0x9de9, 0x9dd9, 0x9dd8, 0x9dd6, 0x9df5, 0x9dd5, 0x9ddd, 0x9eb6,
- 0x9ef0, 0x9f35, 0x9f33, 0x9f32, 0x9f42, 0x9f6b, 0x9f95, 0x9fa2,
- 0x513d, 0x5299, 0x58e8, 0x58e7, 0x5972, 0x5b4d, 0x5dd8, 0x882f,
- 0x5f4f, 0x6201, 0x6203, 0x6204, 0x6529, 0x6525, 0x6596, 0x66eb,
- 0x6b11, 0x6b12, 0x6b0f, 0x6bca, 0x705b, 0x705a, 0x7222, 0x7382,
- 0x7381, 0x7383, 0x7670, 0x77d4, 0x7c67, 0x7c66, 0x7e95, 0x826c,
- 0x863a, 0x8640, 0x8639, 0x863c, 0x8631, 0x863b, 0x863e, 0x8830,
- 0x8832, 0x882e, 0x8833, 0x8976, 0x8974, 0x8973, 0x89fe, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8b8c, 0x8b8e, 0x8b8b, 0x8b88, 0x8c45, 0x8d19, 0x8e98, 0x8f64,
- 0x8f63, 0x91bc, 0x9462, 0x9455, 0x945d, 0x9457, 0x945e, 0x97c4,
- 0x97c5, 0x9800, 0x9a56, 0x9a59, 0x9b1e, 0x9b1f, 0x9b20, 0x9c52,
- 0x9c58, 0x9c50, 0x9c4a, 0x9c4d, 0x9c4b, 0x9c55, 0x9c59, 0x9c4c,
- 0x9c4e, 0x9dfb, 0x9df7, 0x9def, 0x9de3, 0x9deb, 0x9df8, 0x9de4,
- 0x9df6, 0x9de1, 0x9dee, 0x9de6, 0x9df2, 0x9df0, 0x9de2, 0x9dec,
- 0x9df4, 0x9df3, 0x9de8, 0x9ded, 0x9ec2, 0x9ed0, 0x9ef2, 0x9ef3,
- 0x9f06, 0x9f1c, 0x9f38, 0x9f37, 0x9f36, 0x9f43, 0x9f4f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9f71, 0x9f70, 0x9f6e, 0x9f6f, 0x56d3, 0x56cd, 0x5b4e,
- 0x5c6d, 0x652d, 0x66ed, 0x66ee, 0x6b13, 0x705f, 0x7061, 0x705d,
- 0x7060, 0x7223, 0x74db, 0x74e5, 0x77d5, 0x7938, 0x79b7, 0x79b6,
- 0x7c6a, 0x7e97, 0x7f89, 0x826d, 0x8643, 0x8838, 0x8837, 0x8835,
- 0x884b, 0x8b94, 0x8b95, 0x8e9e, 0x8e9f, 0x8ea0, 0x8e9d, 0x91be,
- 0x91bd, 0x91c2, 0x946b, 0x9468, 0x9469, 0x96e5, 0x9746, 0x9743,
- 0x9747, 0x97c7, 0x97e5, 0x9a5e, 0x9ad5, 0x9b59, 0x9c63, 0x9c67,
- 0x9c66, 0x9c62, 0x9c5e, 0x9c60, 0x9e02, 0x9dfe, 0x9e07, 0x9e03,
- 0x9e06, 0x9e05, 0x9e00, 0x9e01, 0x9e09, 0x9dff, 0x9dfd, 0x9e04,
- 0x9ea0, 0x9f1e, 0x9f46, 0x9f74, 0x9f75, 0x9f76, 0x56d4, 0x652e,
- 0x65b8, 0x6b18, 0x6b19, 0x6b17, 0x6b1a, 0x7062, 0x7226, 0x72aa,
- 0x77d8, 0x77d9, 0x7939, 0x7c69, 0x7c6b, 0x7cf6, 0x7e9a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7e98, 0x7e9b, 0x7e99, 0x81e0, 0x81e1, 0x8646, 0x8647, 0x8648,
- 0x8979, 0x897a, 0x897c, 0x897b, 0x89ff, 0x8b98, 0x8b99, 0x8ea5,
- 0x8ea4, 0x8ea3, 0x946e, 0x946d, 0x946f, 0x9471, 0x9473, 0x9749,
- 0x9872, 0x995f, 0x9c68, 0x9c6e, 0x9c6d, 0x9e0b, 0x9e0d, 0x9e10,
- 0x9e0f, 0x9e12, 0x9e11, 0x9ea1, 0x9ef5, 0x9f09, 0x9f47, 0x9f78,
- 0x9f7b, 0x9f7a, 0x9f79, 0x571e, 0x7066, 0x7c6f, 0x883c, 0x8db2,
- 0x8ea6, 0x91c3, 0x9474, 0x9478, 0x9476, 0x9475, 0x9a60, 0x9c74,
- 0x9c73, 0x9c71, 0x9c75, 0x9e14, 0x9e13, 0x9ef6, 0x9f0a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9fa4, 0x7068, 0x7065, 0x7cf7, 0x866a, 0x883e, 0x883d,
- 0x883f, 0x8b9e, 0x8c9c, 0x8ea9, 0x8ec9, 0x974b, 0x9873, 0x9874,
- 0x98cc, 0x9961, 0x99ab, 0x9a64, 0x9a66, 0x9a67, 0x9b24, 0x9e15,
- 0x9e17, 0x9f48, 0x6207, 0x6b1e, 0x7227, 0x864c, 0x8ea8, 0x9482,
- 0x9480, 0x9481, 0x9a69, 0x9a68, 0x9b2e, 0x9e19, 0x7229, 0x864b,
- 0x8b9f, 0x9483, 0x9c79, 0x9eb7, 0x7675, 0x9a6b, 0x9c7a, 0x9e1d,
- 0x7069, 0x706a, 0x9ea4, 0x9f7e, 0x9f49, 0x9f98, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xfe4f, 0xffffffff, 0x00ff, 0x0000, 0x0100, 0x0002, 0x6000, 0x804f240
-};
-
-
-const unichar_t unicode_from_big5hkscs[] = {
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xeeb8, 0xeeb9, 0xeeba, 0xeebb, 0xeebc, 0xeebd, 0xeebe, 0xeebf,
- 0xeec0, 0xeec1, 0xeec2, 0xeec3, 0xeec4, 0xeec5, 0xeec6, 0xeec7,
- 0xeec8, 0xeec9, 0xeeca, 0xeecb, 0xeecc, 0xeecd, 0xeece, 0xeecf,
- 0xeed0, 0xeed1, 0xeed2, 0xeed3, 0xeed4, 0xeed5, 0xeed6, 0xeed7,
- 0xeed8, 0xeed9, 0xeeda, 0xeedb, 0xeedc, 0xeedd, 0xeede, 0xeedf,
- 0xeee0, 0xeee1, 0xeee2, 0xeee3, 0xeee4, 0xeee5, 0xeee6, 0xeee7,
- 0xeee8, 0xeee9, 0xeeea, 0xeeeb, 0xeeec, 0xeeed, 0xeeee, 0xeeef,
- 0xeef0, 0xeef1, 0xeef2, 0xeef3, 0xeef4, 0xeef5, 0xeef6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xeef7, 0xeef8, 0xeef9, 0xeefa, 0xeefb, 0xeefc, 0xeefd,
- 0xeefe, 0xeeff, 0xef00, 0xef01, 0xef02, 0xef03, 0xef04, 0xef05,
- 0xef06, 0xef07, 0xef08, 0xef09, 0xef0a, 0xef0b, 0xef0c, 0xef0d,
- 0xef0e, 0xef0f, 0xef10, 0xef11, 0xef12, 0xef13, 0xef14, 0xef15,
- 0xef16, 0xef17, 0xef18, 0xef19, 0xef1a, 0xef1b, 0xef1c, 0xef1d,
- 0xef1e, 0xef1f, 0xef20, 0xef21, 0xef22, 0xef23, 0xef24, 0xef25,
- 0xef26, 0xef27, 0xef28, 0xef29, 0xef2a, 0xef2b, 0xef2c, 0xef2d,
- 0xef2e, 0xef2f, 0xef30, 0xef31, 0xef32, 0xef33, 0xef34, 0xef35,
- 0xef36, 0xef37, 0xef38, 0xef39, 0xef3a, 0xef3b, 0xef3c, 0xef3d,
- 0xef3e, 0xef3f, 0xef40, 0xef41, 0xef42, 0xef43, 0xef44, 0xef45,
- 0xef46, 0xef47, 0xef48, 0xef49, 0xef4a, 0xef4b, 0xef4c, 0xef4d,
- 0xef4e, 0xef4f, 0xef50, 0xef51, 0xef52, 0xef53, 0xef54, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xef55, 0xef56, 0xef57, 0xef58, 0xef59, 0xef5a, 0xef5b, 0xef5c,
- 0xef5d, 0xef5e, 0xef5f, 0xef60, 0xef61, 0xef62, 0xef63, 0xef64,
- 0xef65, 0xef66, 0xef67, 0xef68, 0xef69, 0xef6a, 0xef6b, 0xef6c,
- 0xef6d, 0xef6e, 0xef6f, 0xef70, 0xef71, 0xef72, 0xef73, 0xef74,
- 0xef75, 0xef76, 0xef77, 0xef78, 0xef79, 0xef7a, 0xef7b, 0xef7c,
- 0xef7d, 0xef7e, 0xef7f, 0xef80, 0xef81, 0xef82, 0xef83, 0xef84,
- 0xef85, 0xef86, 0xef87, 0xef88, 0xef89, 0xef8a, 0xef8b, 0xef8c,
- 0xef8d, 0xef8e, 0xef8f, 0xef90, 0xef91, 0xef92, 0xef93, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xef94, 0xef95, 0xef96, 0xef97, 0xef98, 0xef99, 0xef9a,
- 0xef9b, 0xef9c, 0xef9d, 0xef9e, 0xef9f, 0xefa0, 0xefa1, 0xefa2,
- 0xefa3, 0xefa4, 0xefa5, 0xefa6, 0xefa7, 0xefa8, 0xefa9, 0xefaa,
- 0xefab, 0xefac, 0xefad, 0xefae, 0xefaf, 0xefb0, 0xefb1, 0xefb2,
- 0xefb3, 0xefb4, 0xefb5, 0xefb6, 0xefb7, 0xefb8, 0xefb9, 0xefba,
- 0xefbb, 0xefbc, 0xefbd, 0xefbe, 0xefbf, 0xefc0, 0xefc1, 0xefc2,
- 0xefc3, 0xefc4, 0xefc5, 0xefc6, 0xefc7, 0xefc8, 0xefc9, 0xefca,
- 0xefcb, 0xefcc, 0xefcd, 0xefce, 0xefcf, 0xefd0, 0xefd1, 0xefd2,
- 0xefd3, 0xefd4, 0xefd5, 0xefd6, 0xefd7, 0xefd8, 0xefd9, 0xefda,
- 0xefdb, 0xefdc, 0xefdd, 0xefde, 0xefdf, 0xefe0, 0xefe1, 0xefe2,
- 0xefe3, 0xefe4, 0xefe5, 0xefe6, 0xefe7, 0xefe8, 0xefe9, 0xefea,
- 0xefeb, 0xefec, 0xefed, 0xefee, 0xefef, 0xeff0, 0xeff1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xeff2, 0xeff3, 0xeff4, 0xeff5, 0xeff6, 0xeff7, 0xeff8, 0xeff9,
- 0xeffa, 0xeffb, 0xeffc, 0xeffd, 0xeffe, 0xefff, 0xf000, 0xf001,
- 0xf002, 0xf003, 0xf004, 0xf005, 0xf006, 0xf007, 0xf008, 0xf009,
- 0xf00a, 0xf00b, 0xf00c, 0xf00d, 0xf00e, 0xf00f, 0xf010, 0xf011,
- 0xf012, 0xf013, 0xf014, 0xf015, 0xf016, 0xf017, 0xf018, 0xf019,
- 0xf01a, 0xf01b, 0xf01c, 0xf01d, 0xf01e, 0xf01f, 0xf020, 0xf021,
- 0xf022, 0xf023, 0xf024, 0xf025, 0xf026, 0xf027, 0xf028, 0xf029,
- 0xf02a, 0xf02b, 0xf02c, 0xf02d, 0xf02e, 0xf02f, 0xf030, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xf031, 0xf032, 0xf033, 0xf034, 0xf035, 0xf036, 0xf037,
- 0xf038, 0xf039, 0xf03a, 0xf03b, 0xf03c, 0xf03d, 0xf03e, 0xf03f,
- 0xf040, 0xf041, 0xf042, 0xf043, 0xf044, 0xf045, 0xf046, 0xf047,
- 0xf048, 0xf049, 0xf04a, 0xf04b, 0xf04c, 0xf04d, 0xf04e, 0xf04f,
- 0xf050, 0xf051, 0xf052, 0xf053, 0xf054, 0xf055, 0xf056, 0xf057,
- 0xf058, 0xf059, 0xf05a, 0xf05b, 0xf05c, 0xf05d, 0xf05e, 0xf05f,
- 0xf060, 0xf061, 0xf062, 0xf063, 0xf064, 0xf065, 0xf066, 0xf067,
- 0xf068, 0xf069, 0xf06a, 0xf06b, 0xf06c, 0xf06d, 0xf06e, 0xf06f,
- 0xf070, 0xf071, 0xf072, 0xf073, 0xf074, 0xf075, 0xf076, 0xf077,
- 0xf078, 0xf079, 0xf07a, 0xf07b, 0xf07c, 0xf07d, 0xf07e, 0xf07f,
- 0xf080, 0xf081, 0xf082, 0xf083, 0xf084, 0xf085, 0xf086, 0xf087,
- 0xf088, 0xf089, 0xf08a, 0xf08b, 0xf08c, 0xf08d, 0xf08e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xf08f, 0xf090, 0xf091, 0xf092, 0xf093, 0xf094, 0xf095, 0xf096,
- 0xf097, 0xf098, 0xf099, 0xf09a, 0xf09b, 0xf09c, 0xf09d, 0xf09e,
- 0xf09f, 0xf0a0, 0xf0a1, 0xf0a2, 0xf0a3, 0xf0a4, 0xf0a5, 0xf0a6,
- 0xf0a7, 0xf0a8, 0xf0a9, 0xf0aa, 0xf0ab, 0xf0ac, 0xf0ad, 0xf0ae,
- 0xf0af, 0xf0b0, 0xf0b1, 0xf0b2, 0xf0b3, 0xf0b4, 0xf0b5, 0xf0b6,
- 0xf0b7, 0xf0b8, 0xf0b9, 0xf0ba, 0xf0bb, 0xf0bc, 0xf0bd, 0xf0be,
- 0xf0bf, 0xf0c0, 0xf0c1, 0xf0c2, 0xf0c3, 0xf0c4, 0xf0c5, 0xf0c6,
- 0xf0c7, 0xf0c8, 0xf0c9, 0xf0ca, 0xf0cb, 0xf0cc, 0xf0cd, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xf0ce, 0xf0cf, 0xf0d0, 0xf0d1, 0xf0d2, 0xf0d3, 0xf0d4,
- 0xf0d5, 0xf0d6, 0xf0d7, 0xf0d8, 0xf0d9, 0xf0da, 0xf0db, 0xf0dc,
- 0xf0dd, 0xf0de, 0xf0df, 0xf0e0, 0xf0e1, 0xf0e2, 0xf0e3, 0xf0e4,
- 0xf0e5, 0xf0e6, 0xf0e7, 0xf0e8, 0xf0e9, 0xf0ea, 0xf0eb, 0xf0ec,
- 0xf0ed, 0xf0ee, 0xf0ef, 0xf0f0, 0xf0f1, 0xf0f2, 0xf0f3, 0xf0f4,
- 0xf0f5, 0xf0f6, 0xf0f7, 0xf0f8, 0xf0f9, 0xf0fa, 0xf0fb, 0xf0fc,
- 0xf0fd, 0xf0fe, 0xf0ff, 0xf100, 0xf101, 0xf102, 0xf103, 0xf104,
- 0xf105, 0xf106, 0xf107, 0xf108, 0xf109, 0xf10a, 0xf10b, 0xf10c,
- 0xf10d, 0xf10e, 0xf10f, 0xf110, 0xf111, 0xf112, 0xf113, 0xf114,
- 0xf115, 0xf116, 0xf117, 0xf118, 0xf119, 0xf11a, 0xf11b, 0xf11c,
- 0xf11d, 0xf11e, 0xf11f, 0xf120, 0xf121, 0xf122, 0xf123, 0xf124,
- 0xf125, 0xf126, 0xf127, 0xf128, 0xf129, 0xf12a, 0xf12b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xf12c, 0xf12d, 0xf12e, 0xf12f, 0xf130, 0xf131, 0xf132, 0xf133,
- 0xf134, 0xf135, 0xf136, 0xf137, 0xf138, 0xf139, 0xf13a, 0xf13b,
- 0xf13c, 0xf13d, 0xf13e, 0xf13f, 0xf140, 0xf141, 0xf142, 0xf143,
- 0xf144, 0xf145, 0xf146, 0xf147, 0xf148, 0xf149, 0xf14a, 0xf14b,
- 0xf14c, 0xf14d, 0xf14e, 0xf14f, 0xf150, 0xf151, 0xf152, 0xf153,
- 0xf154, 0xf155, 0xf156, 0xf157, 0xf158, 0xf159, 0xf15a, 0xf15b,
- 0xf15c, 0xf15d, 0xf15e, 0xf15f, 0xf160, 0xf161, 0xf162, 0xf163,
- 0xf164, 0xf165, 0xf166, 0xf167, 0xf168, 0xf169, 0xf16a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xf16b, 0xf16c, 0xf16d, 0xf16e, 0xf16f, 0xf170, 0xf171,
- 0xf172, 0xf173, 0xf174, 0xf175, 0xf176, 0xf177, 0xf178, 0xf179,
- 0xf17a, 0xf17b, 0xf17c, 0xf17d, 0xf17e, 0xf17f, 0xf180, 0xf181,
- 0xf182, 0xf183, 0xf184, 0xf185, 0xf186, 0xf187, 0xf188, 0xf189,
- 0xf18a, 0xf18b, 0xf18c, 0xf18d, 0xf18e, 0xf18f, 0xf190, 0xf191,
- 0xf192, 0xf193, 0xf194, 0xf195, 0xf196, 0xf197, 0xf198, 0xf199,
- 0xf19a, 0xf19b, 0xf19c, 0xf19d, 0xf19e, 0xf19f, 0xf1a0, 0xf1a1,
- 0xf1a2, 0xf1a3, 0xf1a4, 0xf1a5, 0xf1a6, 0xf1a7, 0xf1a8, 0xf1a9,
- 0xf1aa, 0xf1ab, 0xf1ac, 0xf1ad, 0xf1ae, 0xf1af, 0xf1b0, 0xf1b1,
- 0xf1b2, 0xf1b3, 0xf1b4, 0xf1b5, 0xf1b6, 0xf1b7, 0xf1b8, 0xf1b9,
- 0xf1ba, 0xf1bb, 0xf1bc, 0xf1bd, 0xf1be, 0xf1bf, 0xf1c0, 0xf1c1,
- 0xf1c2, 0xf1c3, 0xf1c4, 0xf1c5, 0xf1c6, 0xf1c7, 0xf1c8, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xf1c9, 0xf1ca, 0xf1cb, 0xf1cc, 0xf1cd, 0xf1ce, 0xf1cf, 0xf1d0,
- 0xf1d1, 0xf1d2, 0xf1d3, 0xf1d4, 0xf1d5, 0xf1d6, 0xf1d7, 0xf1d8,
- 0xf1d9, 0xf1da, 0xf1db, 0xf1dc, 0xf1dd, 0xf1de, 0xf1df, 0xf1e0,
- 0xf1e1, 0xf1e2, 0xf1e3, 0xf1e4, 0xf1e5, 0xf1e6, 0xf1e7, 0xf1e8,
- 0xf1e9, 0xf1ea, 0xf1eb, 0xf1ec, 0xf1ed, 0xf1ee, 0xf1ef, 0xf1f0,
- 0xf1f1, 0xf1f2, 0xf1f3, 0xf1f4, 0xf1f5, 0xf1f6, 0xf1f7, 0xf1f8,
- 0xf1f9, 0xf1fa, 0xf1fb, 0xf1fc, 0xf1fd, 0xf1fe, 0xf1ff, 0xf200,
- 0xf201, 0xf202, 0xf203, 0xf204, 0xf205, 0xf206, 0xf207, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xf208, 0xf209, 0xf20a, 0xf20b, 0xf20c, 0xf20d, 0xf20e,
- 0xf20f, 0xf210, 0xf211, 0xf212, 0xf213, 0xf214, 0xf215, 0xf216,
- 0xf217, 0xf218, 0xf219, 0xf21a, 0xf21b, 0xf21c, 0xf21d, 0xf21e,
- 0xf21f, 0xf220, 0xf221, 0xf222, 0xf223, 0xf224, 0xf225, 0xf226,
- 0xf227, 0xf228, 0xf229, 0xf22a, 0xf22b, 0xf22c, 0xf22d, 0xf22e,
- 0xf22f, 0xf230, 0xf231, 0xf232, 0xf233, 0xf234, 0xf235, 0xf236,
- 0xf237, 0xf238, 0xf239, 0xf23a, 0xf23b, 0xf23c, 0xf23d, 0xf23e,
- 0xf23f, 0xf240, 0xf241, 0xf242, 0xf243, 0xf244, 0xf245, 0xf246,
- 0xf247, 0xf248, 0xf249, 0xf24a, 0xf24b, 0xf24c, 0xf24d, 0xf24e,
- 0xf24f, 0xf250, 0xf251, 0xf252, 0xf253, 0xf254, 0xf255, 0xf256,
- 0xf257, 0xf258, 0xf259, 0xf25a, 0xf25b, 0xf25c, 0xf25d, 0xf25e,
- 0xf25f, 0xf260, 0xf261, 0xf262, 0xf263, 0xf264, 0xf265, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xf266, 0xf267, 0xf268, 0xf269, 0xf26a, 0xf26b, 0xf26c, 0xf26d,
- 0xf26e, 0xf26f, 0xf270, 0xf271, 0xf272, 0xf273, 0xf274, 0xf275,
- 0xf276, 0xf277, 0xf278, 0xf279, 0xf27a, 0xf27b, 0xf27c, 0xf27d,
- 0xf27e, 0xf27f, 0xf280, 0xf281, 0xf282, 0xf283, 0xf284, 0xf285,
- 0xf286, 0xf287, 0xf288, 0xf289, 0xf28a, 0xf28b, 0xf28c, 0xf28d,
- 0xf28e, 0xf28f, 0xf290, 0xf291, 0xf292, 0xf293, 0xf294, 0xf295,
- 0xf296, 0xf297, 0xf298, 0xf299, 0xf29a, 0xf29b, 0xf29c, 0xf29d,
- 0xf29e, 0xf29f, 0xf2a0, 0xf2a1, 0xf2a2, 0xf2a3, 0xf2a4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xf2a5, 0xf2a6, 0xf2a7, 0xf2a8, 0xf2a9, 0xf2aa, 0xf2ab,
- 0xf2ac, 0xf2ad, 0xf2ae, 0xf2af, 0xf2b0, 0xf2b1, 0xf2b2, 0xf2b3,
- 0xf2b4, 0xf2b5, 0xf2b6, 0xf2b7, 0xf2b8, 0xf2b9, 0xf2ba, 0xf2bb,
- 0xf2bc, 0xf2bd, 0xf2be, 0xf2bf, 0xf2c0, 0xf2c1, 0xf2c2, 0xf2c3,
- 0xf2c4, 0xf2c5, 0xf2c6, 0xf2c7, 0xf2c8, 0xf2c9, 0xf2ca, 0xf2cb,
- 0xf2cc, 0xf2cd, 0xf2ce, 0xf2cf, 0xf2d0, 0xf2d1, 0xf2d2, 0xf2d3,
- 0xf2d4, 0xf2d5, 0xf2d6, 0xf2d7, 0xf2d8, 0xf2d9, 0xf2da, 0xf2db,
- 0xf2dc, 0xf2dd, 0xf2de, 0xf2df, 0xf2e0, 0xf2e1, 0xf2e2, 0xf2e3,
- 0xf2e4, 0xf2e5, 0xf2e6, 0xf2e7, 0xf2e8, 0xf2e9, 0xf2ea, 0xf2eb,
- 0xf2ec, 0xf2ed, 0xf2ee, 0xf2ef, 0xf2f0, 0xf2f1, 0xf2f2, 0xf2f3,
- 0xf2f4, 0xf2f5, 0xf2f6, 0xf2f7, 0xf2f8, 0xf2f9, 0xf2fa, 0xf2fb,
- 0xf2fc, 0xf2fd, 0xf2fe, 0xf2ff, 0xf300, 0xf301, 0xf302, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xf303, 0xf304, 0xf305, 0xf306, 0xf307, 0xf308, 0xf309, 0xf30a,
- 0xf30b, 0xf30c, 0xf30d, 0xf30e, 0xf30f, 0xf310, 0xf311, 0xf312,
- 0xf313, 0xf314, 0xf315, 0xf316, 0xf317, 0xf318, 0x0100, 0x00c1,
- 0x01cd, 0x00c0, 0x0112, 0x00c9, 0x011a, 0x00c8, 0x014c, 0x00d3,
- 0x01d1, 0x00d2, 0xf325, 0x1ebe, 0xf327, 0x1ec0, 0x00ca, 0x0101,
- 0x00e1, 0x01ce, 0x00e0, 0x0251, 0x0113, 0x00e9, 0x011b, 0x00e8,
- 0x012b, 0x00ed, 0x01d0, 0x00ec, 0x014d, 0x00f3, 0x01d2, 0x00f2,
- 0x016b, 0x00fa, 0x01d4, 0x00f9, 0x01d6, 0x01d8, 0x01da, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x01dc, 0x00fc, 0xf344, 0x1ebf, 0xf346, 0x1ec1, 0x00ea,
- 0x0261, 0xf34a, 0xf34b, 0xf34c, 0xf34d, 0xf34e, 0xf34f, 0xf350,
- 0xf351, 0xf352, 0xf353, 0xf354, 0xf355, 0xf356, 0xf357, 0xf358,
- 0xf359, 0xf35a, 0xf35b, 0xf35c, 0xf35d, 0xf35e, 0xf35f, 0xf360,
- 0xf361, 0xf362, 0xf363, 0xf364, 0xf365, 0xf366, 0xf367, 0xf368,
- 0xf369, 0xf36a, 0xf36b, 0xf36c, 0xf36d, 0xf36e, 0xf36f, 0xf370,
- 0xf371, 0xf372, 0xf373, 0xf374, 0xf375, 0xf376, 0xf377, 0xf378,
- 0xf379, 0xf37a, 0xf37b, 0xf37c, 0xf37d, 0xf37e, 0xf37f, 0xf380,
- 0xf381, 0xf382, 0xf383, 0xf384, 0xf385, 0xf386, 0xf387, 0xf388,
- 0xf389, 0xf38a, 0xf38b, 0xf38c, 0xf38d, 0xf38e, 0xf38f, 0xf390,
- 0xf391, 0xf392, 0xf393, 0xf394, 0xf395, 0xf396, 0xf397, 0xf398,
- 0xf399, 0xf39a, 0xf39b, 0xf39c, 0xf39d, 0xf39e, 0xf39f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xf3a0, 0xf3a1, 0xf3a2, 0x650a, 0xf3a4, 0xf3a5, 0x4e3d, 0x6edd,
- 0x9d4e, 0x91df, 0xf3aa, 0xf3ab, 0xf3ac, 0x6491, 0x4f1a, 0x4f28,
- 0x4fa8, 0x5156, 0x5174, 0x519c, 0x51e4, 0x52a1, 0x52a8, 0x533b,
- 0x534e, 0x53d1, 0x53d8, 0x56e2, 0x58f0, 0x5904, 0x5907, 0x5932,
- 0x5934, 0x5b66, 0x5b9e, 0x5b9f, 0x5c9a, 0x5e86, 0x603b, 0x6589,
- 0x67fe, 0x6804, 0x6865, 0x6d4e, 0x70bc, 0x7535, 0x7ea4, 0x7eac,
- 0x7eba, 0x7ec7, 0x7ecf, 0x7edf, 0x7f06, 0x7f37, 0x827a, 0x82cf,
- 0x836f, 0x89c6, 0x8bbe, 0x8be2, 0x8f66, 0x8f67, 0x8f6e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7411, 0x7cfc, 0x7dcd, 0x6946, 0x7ac9, 0x5227, 0xf3e5,
- 0xf3e6, 0xf3e7, 0xf3e8, 0x918c, 0x78b8, 0x915e, 0x80bc, 0xf3ed,
- 0x8d0b, 0x80f6, 0xf3f0, 0xf3f1, 0xf3f2, 0x809f, 0x9ec7, 0x4ccd,
- 0x9dc9, 0x9e0c, 0x4c3e, 0xf3f9, 0xf3fa, 0x9e0a, 0xf3fc, 0x35c1,
- 0xf3fe, 0x6e9a, 0x823e, 0x7519, 0xf402, 0x4911, 0x9a6c, 0x9a8f,
- 0x9f99, 0x7987, 0xf408, 0xf409, 0xf40a, 0xf40b, 0x4e24, 0x4e81,
- 0x4e80, 0x4e87, 0x4ebf, 0x4eeb, 0x4f37, 0x344c, 0x4fbd, 0x3e48,
- 0x5003, 0x5088, 0x347d, 0x3493, 0x34a5, 0x5186, 0x5905, 0x51db,
- 0x51fc, 0x5205, 0x4e89, 0x5279, 0x5290, 0x5327, 0x35c7, 0x53a9,
- 0x3551, 0x53b0, 0x3553, 0x53c2, 0x5423, 0x356d, 0x3572, 0x3681,
- 0x5493, 0x54a3, 0x54b4, 0x54b9, 0x54d0, 0x54ef, 0x5518, 0x5523,
- 0x5528, 0x3598, 0x553f, 0x35a5, 0x35bf, 0x55d7, 0x35c5, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xf43d, 0x5525, 0xf43f, 0xf440, 0xf441, 0xf442, 0x5590, 0xf444,
- 0x39ec, 0xf446, 0x8e46, 0xf448, 0xf449, 0x4053, 0xf44b, 0x777a,
- 0xf44d, 0x3a34, 0x47d5, 0xf450, 0xf451, 0xf452, 0x64dd, 0xf454,
- 0xf455, 0xf456, 0xf457, 0x648d, 0x8e7e, 0xf45a, 0xf45b, 0xf45c,
- 0xf45d, 0xf45e, 0xf45f, 0xf460, 0xf461, 0xf462, 0xf463, 0x47f4,
- 0xf465, 0xf466, 0x9ab2, 0x3a67, 0xf469, 0x3fed, 0x3506, 0xf46c,
- 0xf46d, 0xf46e, 0xf46f, 0x9d6e, 0x9815, 0xf472, 0x43d9, 0xf474,
- 0x64b4, 0x54e3, 0xf477, 0xf478, 0xf479, 0x39fb, 0xf47b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xf47c, 0xf47d, 0xf47e, 0x64ea, 0xf480, 0xf481, 0x8e68,
- 0xf483, 0xf484, 0xf485, 0xf486, 0x480b, 0xf488, 0x3ffa, 0x5873,
- 0xf48b, 0xf48c, 0xf48d, 0xf48e, 0xf48f, 0xf490, 0xf491, 0x5579,
- 0x40bb, 0x43ba, 0xf495, 0x4ab4, 0xf497, 0xf498, 0x81aa, 0x98f5,
- 0xf49b, 0x6379, 0x39fe, 0xf49e, 0x8dc0, 0x56a1, 0x647c, 0x3e43,
- 0xf4a3, 0xf4a4, 0xf4a5, 0xf4a6, 0xf4a7, 0xf4a8, 0xf4a9, 0xf4aa,
- 0x3992, 0x3a06, 0xf4ad, 0x3578, 0xf4af, 0xf4b0, 0x5652, 0xf4b2,
- 0xf4b3, 0xf4b4, 0x34bc, 0x6c3d, 0xf4b7, 0xf4b8, 0xf4b9, 0xf4ba,
- 0xf4bb, 0xf4bc, 0xf4bd, 0xf4be, 0xf4bf, 0xf4c0, 0xf4c1, 0x7f93,
- 0xf4c3, 0xf4c4, 0xf4c5, 0x35fb, 0xf4c7, 0xf4c8, 0xf4c9, 0xf4ca,
- 0x3f93, 0xf4cc, 0xf4cd, 0xf4ce, 0xf4cf, 0xf4d0, 0xf4d1, 0xf4d2,
- 0xf4d3, 0xf4d4, 0xf4d5, 0x3ff9, 0xf4d7, 0x6432, 0xf4d9, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xf4da, 0xf4db, 0xf4dc, 0xf4dd, 0xf4de, 0xf4df, 0xf4e0, 0x3a18,
- 0xf4e2, 0xf4e3, 0xf4e4, 0xf4e5, 0xf4e6, 0xf4e7, 0xf4e8, 0xf4e9,
- 0x95aa, 0x54cc, 0x82c4, 0x55b9, 0xf4ee, 0xf4ef, 0x9c26, 0x9ab6,
- 0xf4f2, 0xf4f3, 0x7140, 0x816d, 0x80ec, 0x5c1c, 0xf4f8, 0x8134,
- 0x3797, 0x535f, 0xf4fc, 0x91b6, 0xf4fe, 0xf4ff, 0xf500, 0xf501,
- 0x35dd, 0xf503, 0x3609, 0xf505, 0x56af, 0xf507, 0xf508, 0xf509,
- 0xf50a, 0xf50b, 0xf50c, 0xf50d, 0xf50e, 0xf50f, 0xf510, 0xf511,
- 0x5a54, 0xf513, 0xf514, 0xf515, 0xf516, 0x579c, 0xf518, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xf519, 0xf51a, 0xf51b, 0xf51c, 0xf51d, 0x3703, 0xf51f,
- 0xf520, 0xf521, 0xf522, 0xf523, 0xf524, 0xf525, 0xf526, 0x5899,
- 0x5268, 0x361a, 0xf52a, 0x7bb2, 0x5b68, 0x4800, 0x4b2c, 0x9f27,
- 0x49e7, 0x9c1f, 0x9b8d, 0xf533, 0xf534, 0x55fb, 0x35f2, 0x5689,
- 0x4e28, 0x5902, 0xf53a, 0xf53b, 0x9751, 0xf53d, 0x4e5b, 0x4ebb,
- 0x353e, 0x5c23, 0x5f51, 0x5fc4, 0x38fa, 0x624c, 0x6535, 0x6b7a,
- 0x6c35, 0x6c3a, 0x706c, 0x722b, 0x4e2c, 0x72ad, 0xf54e, 0x7f52,
- 0x793b, 0x7cf9, 0x7f53, 0xf553, 0x34c1, 0xf555, 0xf556, 0x8002,
- 0x8080, 0xf559, 0xf55a, 0x535d, 0x8864, 0x89c1, 0xf55e, 0x8ba0,
- 0x8d1d, 0x9485, 0x9578, 0x957f, 0x95e8, 0xf565, 0x97e6, 0x9875,
- 0x98ce, 0x98de, 0x9963, 0xf56b, 0x9c7c, 0x9e1f, 0x9ec4, 0x6b6f,
- 0xf907, 0x4e37, 0xf572, 0x961d, 0x6237, 0x94a2, 0xf576, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x503b, 0x6dfe, 0xf579, 0xf57a, 0x3dc9, 0x888f, 0xf57d, 0x7077,
- 0x5cf5, 0x4b20, 0xf581, 0x3559, 0xf583, 0x6122, 0xf585, 0x8fa7,
- 0x91f6, 0x7191, 0x6719, 0x73ba, 0xf58b, 0xf58c, 0x3c8b, 0xf58e,
- 0x4b10, 0x78e4, 0x7402, 0x51ae, 0xf593, 0x4009, 0x6a63, 0xf596,
- 0x4223, 0x860f, 0xf599, 0x7a2a, 0xf59b, 0xf59c, 0x9755, 0x704d,
- 0x5324, 0xf5a0, 0x93f4, 0x76d9, 0xf5a3, 0xf5a4, 0x77dd, 0x4ea3,
- 0x4ff0, 0x50bc, 0x4e2f, 0x4f17, 0xf5ab, 0x5434, 0x7d8b, 0x5892,
- 0x58d0, 0xf5b0, 0x5e92, 0x5e99, 0x5fc2, 0xf5b4, 0x658b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xf5b6, 0x6919, 0x6a43, 0xf5b9, 0x6cff, 0xf5bb, 0x7200,
- 0xf5bd, 0x738c, 0x3edb, 0xf5c0, 0x5b15, 0x74b9, 0x8b83, 0xf5c4,
- 0xf5c5, 0x7a93, 0x7bec, 0x7cc3, 0x7e6c, 0x82f8, 0x8597, 0xf5cc,
- 0x8890, 0xf5ce, 0x8eb9, 0xf5d0, 0x8fcf, 0x855f, 0x99e0, 0x9221,
- 0xf5d5, 0xf5d6, 0xf5d7, 0x4071, 0x42a2, 0x5a1a, 0xf5db, 0xf5dc,
- 0xf5dd, 0x9868, 0x676b, 0x4276, 0x573d, 0xf5e2, 0x85d6, 0xf5e4,
- 0x82bf, 0xf5e6, 0x4c81, 0xf5e8, 0x5d7b, 0xf5ea, 0xf5eb, 0xf5ec,
- 0xf5ed, 0x5b96, 0xf5ef, 0xf5f0, 0x7e5b, 0xf5f2, 0xf5f3, 0xf5f4,
- 0xf5f5, 0xf5f6, 0xf5f7, 0xf5f8, 0xf5f9, 0xf5fa, 0xf5fb, 0xf5fc,
- 0xf5fd, 0xf5fe, 0xf5ff, 0xf600, 0xf601, 0xf602, 0xf603, 0xf604,
- 0xf605, 0xf606, 0xf607, 0xf608, 0xf609, 0xf60a, 0xf60b, 0xf60c,
- 0xf60d, 0xf60e, 0xf60f, 0xf610, 0xf611, 0xf612, 0xf613, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xf614, 0xf615, 0xf616, 0xf617, 0xf618, 0xf619, 0xf61a, 0xf61b,
- 0xf61c, 0xf61d, 0xf61e, 0xf61f, 0xf620, 0xf621, 0xf622, 0xf623,
- 0xf624, 0xf625, 0xf626, 0xf627, 0xf628, 0xf629, 0xf62a, 0xf62b,
- 0xf62c, 0xf62d, 0xf62e, 0xf62f, 0xf630, 0xf631, 0xf632, 0xf633,
- 0x5d3e, 0x5d48, 0x5d56, 0x3dfc, 0x380f, 0x5da4, 0x5db9, 0x3820,
- 0x3838, 0x5e42, 0x5ebd, 0x5f25, 0x5f83, 0x3908, 0x3914, 0x393f,
- 0x394d, 0x60d7, 0x613d, 0x5ce5, 0x3989, 0x61b7, 0x61b9, 0x61cf,
- 0x39b8, 0x622c, 0x6290, 0x62e5, 0x6318, 0x39f8, 0x56b1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3a03, 0x63e2, 0x63fb, 0x6407, 0x645a, 0x3a4b, 0x64c0,
- 0x5d15, 0x5621, 0x9f9f, 0x3a97, 0x6586, 0x3abd, 0x65ff, 0x6653,
- 0x3af2, 0x6692, 0x3b22, 0x6716, 0x3b42, 0x67a4, 0x6800, 0x3b58,
- 0x684a, 0x6884, 0x3b72, 0x3b71, 0x3b7b, 0x6909, 0x6943, 0x725c,
- 0x6964, 0x699f, 0x6985, 0x3bbc, 0x69d6, 0x3bdd, 0x6a65, 0x6a74,
- 0x6a71, 0x6a82, 0x3bec, 0x6a99, 0x3bf2, 0x6aab, 0x6ab5, 0x6ad4,
- 0x6af6, 0x6b81, 0x6bc1, 0x6bea, 0x6c75, 0x6caa, 0x3ccb, 0x6d02,
- 0x6d06, 0x6d26, 0x6d81, 0x3cef, 0x6da4, 0x6db1, 0x6e15, 0x6e18,
- 0x6e29, 0x6e86, 0xf694, 0x6ebb, 0x6ee2, 0x6eda, 0x9f7f, 0x6ee8,
- 0x6ee9, 0x6f24, 0x6f34, 0x3d46, 0xf69e, 0x6f81, 0x6fbe, 0x3d6a,
- 0x3d75, 0x71b7, 0x5c99, 0x3d8a, 0x702c, 0x3d91, 0x7050, 0x7054,
- 0x706f, 0x707f, 0x7089, 0xf6ad, 0x43c1, 0x35f1, 0xf6b0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xe311, 0x57be, 0xe313, 0x713e, 0xe315, 0x364e, 0x69a2, 0xe318,
- 0x5b74, 0x7a49, 0xe31b, 0xe31c, 0x7a65, 0x7a7d, 0xe31f, 0x7abb,
- 0x7ab0, 0x7ac2, 0x7ac3, 0x71d1, 0xe325, 0x41ca, 0x7ada, 0x7add,
- 0x7aea, 0x41ef, 0x54b2, 0xe32c, 0x7b0b, 0x7b55, 0x7b29, 0xe330,
- 0xe331, 0x7ba2, 0x7b6f, 0x839c, 0xe335, 0xe336, 0x7bd0, 0x8421,
- 0x7b92, 0x7bb8, 0xe33b, 0x3dad, 0xe33d, 0x8492, 0x7bfa, 0x7c06,
- 0x7c35, 0xe342, 0x7c44, 0x7c83, 0xe345, 0x7ca6, 0x667d, 0xe348,
- 0x7cc9, 0x7cc7, 0x7ce6, 0x7c74, 0x7cf3, 0x7cf5, 0x7cce, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7e67, 0x451d, 0xe352, 0x7d5d, 0xe354, 0x748d, 0x7d89,
- 0x7dab, 0x7135, 0x7db3, 0x7dd2, 0xe35b, 0xe35c, 0x7de4, 0x3d13,
- 0x7df5, 0xe360, 0x7de5, 0xe362, 0x7e1d, 0xe364, 0xe365, 0x7e6e,
- 0x7e92, 0x432b, 0x946c, 0x7e27, 0x7f40, 0x7f41, 0x7f47, 0x7936,
- 0xe36f, 0x99e1, 0x7f97, 0xe372, 0x7fa3, 0xe374, 0xe375, 0x455c,
- 0xe377, 0x4503, 0xe379, 0x7ffa, 0xe37b, 0x8005, 0x8008, 0x801d,
- 0x8028, 0x802f, 0xe381, 0xe382, 0x803b, 0x803c, 0x8061, 0xe386,
- 0x4989, 0xe388, 0xe389, 0xe38a, 0x6725, 0x80a7, 0xe38d, 0x8107,
- 0x811a, 0x58b0, 0xe391, 0x6c7f, 0xe393, 0xe394, 0x64e7, 0xe396,
- 0x8218, 0xe398, 0x6a53, 0xe39a, 0xe39b, 0x447a, 0x8229, 0xe39e,
- 0xe39f, 0xe3a0, 0x4ff9, 0xe3a2, 0x84e2, 0x8362, 0xe3a5, 0xe3a6,
- 0xe3a7, 0xe3a8, 0xe3a9, 0x82aa, 0x691b, 0xe3ac, 0x41db, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x854b, 0x82d0, 0x831a, 0xe3b1, 0xe3b2, 0x36c1, 0xe3b4, 0xe3b5,
- 0x827b, 0x82e2, 0x8318, 0xe3b9, 0xe3ba, 0xe3bb, 0xe3bc, 0xe3bd,
- 0x3dbf, 0x831d, 0x55ec, 0x8385, 0x450b, 0xe3c3, 0x83ac, 0x83c1,
- 0x83d3, 0x347e, 0xe3c8, 0x6a57, 0x855a, 0x3496, 0xe3cc, 0xe3cd,
- 0x8458, 0xe3cf, 0x8471, 0x3dd3, 0x44e4, 0x6aa7, 0x844a, 0xe3d5,
- 0x7958, 0x84a8, 0xe3d8, 0xe3d9, 0xe3da, 0x84de, 0x840f, 0x8391,
- 0x44a0, 0x8493, 0x84e4, 0xe3e1, 0x4240, 0xe3e3, 0x4543, 0x8534,
- 0x5af2, 0xe3e7, 0x4527, 0x8573, 0x4516, 0x67bf, 0x8616, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xe3ed, 0xe3ee, 0x85c1, 0xe3f0, 0x8602, 0xe3f2, 0xe3f3,
- 0xe3f4, 0x456a, 0x8628, 0x3648, 0xe3f8, 0x53f7, 0xe3fa, 0x867e,
- 0x8771, 0xe3fd, 0x87ee, 0xe3ff, 0x87b1, 0x87da, 0x880f, 0x5661,
- 0x866c, 0x6856, 0x460f, 0x8845, 0x8846, 0xe409, 0xe40a, 0xe40b,
- 0x885e, 0x889c, 0x465b, 0x88b4, 0x88b5, 0x63c1, 0x88c5, 0x7777,
- 0xe414, 0x8987, 0x898a, 0x89a6, 0x89a9, 0x89a7, 0x89bc, 0xe41b,
- 0x89e7, 0xe41d, 0xe41e, 0x8a9c, 0x7793, 0x91fe, 0x8a90, 0xe423,
- 0x7ae9, 0xe425, 0xe426, 0x4713, 0xe428, 0x717c, 0x8b0c, 0x8b1f,
- 0xe42c, 0xe42d, 0x8b3f, 0x8b4c, 0x8b4d, 0x8aa9, 0xe432, 0x8b90,
- 0x8b9b, 0x8aaf, 0xe436, 0x4615, 0x884f, 0x8c9b, 0xe43a, 0xe43b,
- 0xe43c, 0x3725, 0xe43e, 0x8cd6, 0xe440, 0xe441, 0x8d12, 0x8d03,
- 0xe444, 0x8cdb, 0x705c, 0x8d11, 0xe448, 0x3ed0, 0x8d77, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8da9, 0xe44c, 0xe44d, 0xe44e, 0x3b7c, 0xe450, 0xe451, 0x7ae7,
- 0x8ead, 0x8eb6, 0x8ec3, 0x92d4, 0x8f19, 0x8f2d, 0xe459, 0xe45a,
- 0x8fa5, 0x9303, 0xe45d, 0xe45e, 0x8fb3, 0x492a, 0xe461, 0xe462,
- 0xe463, 0x5ef8, 0xe465, 0x8ff9, 0xe467, 0xe468, 0xe469, 0xe46a,
- 0x3980, 0xe46c, 0x9037, 0xe46e, 0xe46f, 0x9061, 0xe471, 0xe472,
- 0x90a8, 0xe474, 0x90c4, 0xe476, 0x90ae, 0x90fd, 0x9167, 0x3af0,
- 0x91a9, 0x91c4, 0x7cac, 0xe47e, 0xe47f, 0x920e, 0x6c9f, 0x9241,
- 0x9262, 0xe484, 0x92b9, 0xe486, 0xe487, 0xe488, 0xe489, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xe48a, 0x932c, 0x936b, 0xe48d, 0xe48e, 0x708f, 0x5ac3,
- 0xe491, 0xe492, 0x4965, 0x9244, 0xe495, 0xe496, 0xe497, 0x9373,
- 0x945b, 0x8ebc, 0x9585, 0x95a6, 0x9426, 0x95a0, 0x6ff6, 0x42b9,
- 0xe4a1, 0xe4a2, 0xe4a3, 0xe4a4, 0x49df, 0x6c1c, 0x967b, 0x9696,
- 0x416c, 0x96a3, 0xe4ab, 0x61da, 0x96b6, 0x78f5, 0xe4af, 0x96bd,
- 0x53cc, 0x49a1, 0xe4b3, 0xe4b4, 0xe4b5, 0xe4b6, 0xe4b7, 0xe4b8,
- 0xe4b9, 0xe4ba, 0x9731, 0x8642, 0x9736, 0x4a0f, 0x453d, 0x4585,
- 0xe4c1, 0x7075, 0x5b41, 0x971b, 0x975c, 0xe4c6, 0x9757, 0x5b4a,
- 0xe4c9, 0x975f, 0x9425, 0x50d0, 0xe4cd, 0xe4ce, 0x9789, 0x979f,
- 0x97b1, 0x97be, 0x97c0, 0x97d2, 0x97e0, 0xe4d6, 0x97ee, 0x741c,
- 0xe4d9, 0x97ff, 0x97f5, 0xe4dc, 0xe4dd, 0x4ad1, 0x9834, 0x9833,
- 0x984b, 0x9866, 0x3b0e, 0xe4e4, 0x3d51, 0xe4e6, 0xe4e7, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xe4e8, 0x98ca, 0x98b7, 0x98c8, 0x98c7, 0x4aff, 0xe4ee, 0xe4ef,
- 0x55b0, 0x98e1, 0x98e6, 0x98ec, 0x9378, 0x9939, 0xe4f6, 0x4b72,
- 0xe4f8, 0xe4f9, 0x99f5, 0x9a0c, 0x9a3b, 0x9a10, 0x9a58, 0xe4ff,
- 0x36c4, 0xe501, 0xe502, 0x9ae0, 0x9ae2, 0xe505, 0x9af4, 0x4c0e,
- 0x9b14, 0x9b2d, 0xe50a, 0x5034, 0x9b34, 0xe50d, 0x38c3, 0xe50f,
- 0x9b50, 0x9b40, 0xe512, 0x5a45, 0xe514, 0x9b8e, 0xe516, 0x9c02,
- 0x9bff, 0x9c0c, 0xe51a, 0x9dd4, 0xe51c, 0xe51d, 0xe51e, 0xe51f,
- 0xe520, 0xe521, 0x9d7e, 0x9d83, 0xe524, 0x9e0e, 0x6888, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9dc4, 0xe528, 0xe529, 0xe52a, 0xe52b, 0xe52c, 0x9d39,
- 0xe52e, 0xe52f, 0x9e90, 0x9e95, 0x9e9e, 0x9ea2, 0x4d34, 0x9eaa,
- 0x9eaf, 0xe537, 0x9ec1, 0x3b60, 0x39e5, 0x3d1d, 0x4f32, 0x37be,
- 0xe53e, 0x9f02, 0x9f08, 0x4b96, 0x9424, 0xe543, 0x9f17, 0x9f16,
- 0x9f39, 0x569f, 0x568a, 0x9f45, 0x99b8, 0xe54b, 0x97f2, 0x847f,
- 0x9f62, 0x9f69, 0x7adc, 0x9f8e, 0x7216, 0x4bbe, 0xe554, 0xe555,
- 0x7177, 0xe557, 0xe558, 0xe559, 0x739e, 0xe55b, 0xe55c, 0x799f,
- 0xe55e, 0xe55f, 0x9369, 0x93f3, 0xe562, 0x92ec, 0x9381, 0x93cb,
- 0xe566, 0xe567, 0x7217, 0x3eeb, 0x7772, 0x7a43, 0x70d0, 0xe56d,
- 0xe56e, 0x717e, 0xe570, 0x70a3, 0xe572, 0xe573, 0x3ec7, 0xe575,
- 0xe576, 0xe577, 0x3722, 0xe579, 0xe57a, 0x36e1, 0xe57c, 0xe57d,
- 0xe57e, 0x3723, 0xe580, 0x575b, 0xe582, 0xe583, 0xe584, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xe585, 0xe586, 0x8503, 0xe588, 0x8503, 0x8455, 0xe58b, 0xe58c,
- 0xe58d, 0xe58e, 0xe58f, 0xe590, 0x44f4, 0xe592, 0xe593, 0xe594,
- 0x67f9, 0x3733, 0x3c15, 0x3de7, 0x586c, 0xe59a, 0x6810, 0x4057,
- 0xe59d, 0xe59e, 0xe59f, 0xe5a0, 0xe5a1, 0x54cb, 0x569e, 0xe5a4,
- 0x5692, 0xe5a6, 0xe5a7, 0xe5a8, 0x93c6, 0xe5aa, 0x939c, 0x4ef8,
- 0x512b, 0x3819, 0xe5af, 0x4ebc, 0xe5b1, 0xe5b2, 0x4f4b, 0x4f8a,
- 0xe5b5, 0x5a68, 0xe5b7, 0xe5b8, 0x3999, 0xe5ba, 0xe5bb, 0x3435,
- 0x4f29, 0xe5be, 0xe5bf, 0xe5c0, 0x8ada, 0xe5c2, 0x4e98, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x50cd, 0x510d, 0x4fa2, 0x4f03, 0xe5c8, 0xe5c9, 0x4f42,
- 0x502e, 0x506c, 0x5081, 0x4fcc, 0x4fe5, 0x5058, 0x50fc, 0x5159,
- 0x515b, 0x515d, 0x515e, 0x6e76, 0xe5d7, 0xe5d8, 0xe5d9, 0x6d72,
- 0xe5db, 0xe5dc, 0x51a8, 0x51c3, 0xe5df, 0x44dd, 0xe5e1, 0xe5e2,
- 0xe5e3, 0x8d7a, 0xe5e5, 0xe5e6, 0x5259, 0x52a4, 0xe5e9, 0x52e1,
- 0x936e, 0x467a, 0x718c, 0xe5ee, 0xe5ef, 0xe5f0, 0xe5f1, 0x69d1,
- 0xe5f3, 0x7479, 0x3ede, 0x7499, 0x7414, 0x7456, 0x7398, 0x4b8e,
- 0xe5fb, 0xe5fc, 0x53d0, 0x3584, 0x720f, 0xe600, 0x55b4, 0xe602,
- 0x54cd, 0xe604, 0x571d, 0x925d, 0x96f4, 0x9366, 0x57dd, 0x578d,
- 0x577f, 0x363e, 0x58cb, 0x5a99, 0xe60f, 0xe610, 0xe611, 0xe612,
- 0x5a2c, 0x59b8, 0x928f, 0x5a7e, 0x5acf, 0x5a12, 0xe619, 0xe61a,
- 0xe61b, 0xe61c, 0x36f5, 0x6d05, 0x7443, 0x5a21, 0xe621, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5a81, 0xe623, 0xe624, 0x93e0, 0x748c, 0xe627, 0x7105, 0x4972,
- 0x9408, 0xe62b, 0x93bd, 0x37a0, 0x5c1e, 0x5c9e, 0x5e5e, 0x5e48,
- 0xe632, 0xe633, 0xe634, 0x5ecd, 0x5b4f, 0xe637, 0xe638, 0x3701,
- 0xe63a, 0x36dd, 0xe63c, 0x36d3, 0x812a, 0xe63f, 0xe640, 0xe641,
- 0xe642, 0x5f0c, 0x5f0e, 0xe645, 0xe646, 0x5a6b, 0xe648, 0x5b44,
- 0x8614, 0xe64b, 0x8860, 0x607e, 0xe64e, 0xe64f, 0x5fdb, 0x3eb8,
- 0xe652, 0xe653, 0xe654, 0xe655, 0x61c0, 0xe657, 0xe658, 0xe659,
- 0x6199, 0x6198, 0x6075, 0xe65d, 0xe65e, 0xe65f, 0xe660, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6471, 0xe662, 0xe663, 0x3a29, 0xe665, 0xe666, 0xe667,
- 0xe668, 0x6337, 0xe66a, 0x64b6, 0x6331, 0x63d1, 0xe66e, 0xe66f,
- 0x62a4, 0xe671, 0x643b, 0x656b, 0x6972, 0x3bf4, 0xe676, 0xe677,
- 0xe678, 0xe679, 0x550d, 0xe67b, 0xe67c, 0xe67d, 0x66ce, 0xe67f,
- 0xe680, 0x3ae0, 0x4190, 0xe683, 0xe684, 0xe685, 0xe686, 0xe687,
- 0xe688, 0x78ee, 0xe68a, 0xe68b, 0xe68c, 0x3464, 0xe68e, 0xe68f,
- 0xe690, 0x668e, 0xe692, 0x666b, 0x4b93, 0x6630, 0xe696, 0xe697,
- 0x6663, 0xe699, 0xe69a, 0x661e, 0xe69c, 0x38d1, 0xe69e, 0xe69f,
- 0x3b99, 0xe6a1, 0xe6a2, 0x74d0, 0x3b96, 0x678f, 0xe6a6, 0x68b6,
- 0x681e, 0x3bc4, 0x6abe, 0x3863, 0xe6ac, 0xe6ad, 0x6a33, 0x6a52,
- 0x6ac9, 0x6b05, 0xe6b2, 0x6511, 0x6898, 0x6a4c, 0x3bd7, 0x6a7a,
- 0x6b57, 0xe6b9, 0xe6ba, 0x93a0, 0x92f2, 0xe6bd, 0xe6be, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x9289, 0xe6c0, 0xe6c1, 0x9467, 0x6da5, 0x6f0b, 0xe6c5, 0x6d67,
- 0xe6c7, 0x3d8f, 0x6e04, 0xe6ca, 0x5a3d, 0x6e0a, 0x5847, 0x6d24,
- 0x7842, 0x713b, 0xe6d1, 0xe6d2, 0x70f1, 0x7250, 0x7287, 0x7294,
- 0xe6d7, 0xe6d8, 0x5179, 0xe6da, 0xe6db, 0x747a, 0xe6dd, 0xe6de,
- 0xe6df, 0xe6e0, 0xe6e1, 0x3f06, 0x3eb1, 0xe6e4, 0xe6e5, 0xe6e6,
- 0x60a7, 0x3ef3, 0x74cc, 0x743c, 0x9387, 0x7437, 0x449f, 0xe6ee,
- 0x4551, 0x7583, 0x3f63, 0xe6f2, 0xe6f3, 0x3f58, 0x7555, 0x7673,
- 0xe6f7, 0x3b19, 0x7468, 0xe6fa, 0xe6fb, 0xe6fc, 0x3afb, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3dcd, 0xe6ff, 0x3eff, 0xe701, 0xe702, 0x91fa, 0x5732,
- 0x9342, 0xe706, 0xe707, 0x50df, 0xe709, 0xe70a, 0x7778, 0xe70c,
- 0x770e, 0x770f, 0x777b, 0xe710, 0xe711, 0x3a5e, 0xe713, 0x7438,
- 0x749b, 0x3ebf, 0xe717, 0xe718, 0x40c8, 0xe71a, 0xe71b, 0x9307,
- 0xe71d, 0x781e, 0x788d, 0x7888, 0x78d2, 0x73d0, 0x7959, 0xe724,
- 0xe725, 0x410e, 0x799b, 0x8496, 0x79a5, 0x6a2d, 0xe72b, 0x7a3a,
- 0x79f4, 0x416e, 0xe72f, 0x4132, 0x9235, 0x79f1, 0xe733, 0xe734,
- 0xe735, 0xe736, 0xe737, 0x3597, 0x556b, 0x3570, 0x36aa, 0xe73c,
- 0xe73d, 0x7ae2, 0x5a59, 0xe740, 0xe741, 0xe742, 0x5a0d, 0xe744,
- 0x78f0, 0x5a2a, 0xe747, 0x7afe, 0x41f9, 0x7c5d, 0x7c6d, 0x4211,
- 0xe74d, 0xe74e, 0xe74f, 0x7ccd, 0xe751, 0xe752, 0x7c8e, 0x7c7c,
- 0x7cae, 0x6ab2, 0x7ddc, 0x7e07, 0x7dd3, 0x7f4e, 0xe75b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xe75c, 0xe75d, 0x7d97, 0xe75f, 0x426a, 0xe761, 0xe762, 0x67d6,
- 0xe764, 0xe765, 0x57c4, 0xe767, 0xe768, 0xe769, 0x7fdd, 0x7b27,
- 0xe76c, 0xe76d, 0xe76e, 0x7b0c, 0xe770, 0x99e6, 0x8645, 0x9a63,
- 0x6a1c, 0xe775, 0x39e2, 0xe777, 0xe778, 0x9a1f, 0xe77a, 0x8480,
- 0xe77c, 0xe77d, 0x44ea, 0x8137, 0x4402, 0x80c6, 0x8109, 0x8142,
- 0xe784, 0x98c3, 0xe786, 0x8262, 0x8265, 0xe789, 0x8453, 0xe78b,
- 0x8610, 0xe78d, 0x5a86, 0x417f, 0xe790, 0x5b2b, 0xe792, 0x5ae4,
- 0xe794, 0x86a0, 0xe796, 0xe797, 0x882d, 0xe799, 0x5a02, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x886e, 0x4f45, 0x8887, 0x88bf, 0x88e6, 0x8965, 0x894d,
- 0xe7a2, 0x8954, 0xe7a4, 0xe7a5, 0xe7a6, 0xe7a7, 0xe7a8, 0xe7a9,
- 0x3ead, 0x84a3, 0x46f5, 0x46cf, 0x37f2, 0x8a3d, 0x8a1c, 0xe7b1,
- 0x5f4d, 0x922b, 0xe7b4, 0x65d4, 0x7129, 0x70c4, 0xe7b8, 0x9d6d,
- 0x8c9f, 0x8ce9, 0xe7bc, 0x599a, 0x77c3, 0x59f0, 0x436e, 0x36d4,
- 0x8e2a, 0x8ea7, 0xe7c4, 0x8f30, 0x8f4a, 0x42f4, 0x6c58, 0x6fbb,
- 0xe7ca, 0x489b, 0x6f79, 0x6e8b, 0xe7ce, 0x9be9, 0x36b5, 0xe7d1,
- 0x90bb, 0x9097, 0x5571, 0x4906, 0x91bb, 0x9404, 0xe7d8, 0x4062,
- 0xe7da, 0x9427, 0xe7dc, 0xe7dd, 0x84e5, 0x8a2b, 0x9599, 0x95a7,
- 0x9597, 0x9596, 0xe7e4, 0x7445, 0x3ec2, 0xe7e7, 0xe7e8, 0xe7e9,
- 0x3ee7, 0xe7eb, 0x968f, 0xe7ed, 0xe7ee, 0xe7ef, 0x3ecc, 0xe7f1,
- 0xe7f2, 0xe7f3, 0x7412, 0x746b, 0x3efc, 0x9741, 0xe7f8, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6847, 0x4a1d, 0xe7fb, 0xe7fc, 0x975d, 0x9368, 0xe7ff, 0xe800,
- 0xe801, 0xe802, 0x92ba, 0x5b11, 0x8b69, 0x493c, 0x73f9, 0xe808,
- 0x979b, 0x9771, 0x9938, 0xe80c, 0x5dc1, 0xe80e, 0xe80f, 0x981f,
- 0xe811, 0x92f6, 0xe813, 0x91e5, 0x44c0, 0xe816, 0xe817, 0xe818,
- 0x98dc, 0xe81a, 0x3f00, 0x922a, 0x4925, 0x8414, 0x993b, 0x994d,
- 0xe821, 0x3dfd, 0x999b, 0x4b6f, 0x99aa, 0x9a5c, 0xe827, 0xe828,
- 0x6a8f, 0x9a21, 0x5afe, 0x9a2f, 0xe82d, 0x4b90, 0xe82f, 0x99bc,
- 0x4bbd, 0x4b97, 0x937d, 0x5872, 0xe835, 0x5822, 0xe837, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xe838, 0x7844, 0xe83a, 0xe83b, 0x68c5, 0x3d7d, 0x9458,
- 0x3927, 0x6150, 0xe841, 0xe842, 0x6107, 0x9c4f, 0x9c53, 0x9c7b,
- 0x9c35, 0x9c10, 0x9b7f, 0x9bcf, 0xe84b, 0x9b9f, 0xe84d, 0xe84e,
- 0x9d21, 0x4cae, 0xe851, 0x9e18, 0x4cb0, 0x9d0c, 0xe855, 0xe856,
- 0xe857, 0xe858, 0x9da5, 0x84bd, 0xe85b, 0xe85c, 0xe85d, 0x85fc,
- 0x4533, 0xe860, 0xe861, 0xe862, 0x8420, 0x85ee, 0xe865, 0xe866,
- 0xe867, 0x79e2, 0xe869, 0xe86a, 0x492d, 0xe86c, 0x3d62, 0x93db,
- 0x92be, 0x9348, 0xe871, 0x78b9, 0x9277, 0x944d, 0x4fe4, 0x3440,
- 0x9064, 0xe878, 0x783d, 0x7854, 0x78b6, 0x784b, 0xe87d, 0xe87e,
- 0xe87f, 0x369a, 0x4f72, 0x6fda, 0x6fd9, 0x701e, 0x701e, 0x5414,
- 0xe887, 0x57bb, 0x58f3, 0x578a, 0x9d16, 0x57d7, 0x7134, 0x34af,
- 0xe88f, 0x71eb, 0xe891, 0xe892, 0x5b28, 0xe894, 0xe895, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x610c, 0x5ace, 0x5a0b, 0x42bc, 0xe89a, 0x372c, 0x4b7b, 0xe89d,
- 0x93bb, 0x93b8, 0xe8a0, 0xe8a1, 0x8472, 0xe8a3, 0xe8a4, 0xe8a5,
- 0xe8a6, 0xe8a7, 0x5994, 0xe8a9, 0xe8aa, 0x7da8, 0xe8ac, 0xe8ad,
- 0xe8ae, 0xe8af, 0xe8b0, 0x92e5, 0x73e2, 0x3ee9, 0x74b4, 0xe8b5,
- 0xe8b6, 0x3ee1, 0xe8b8, 0x6ad8, 0x73f3, 0x73fb, 0x3ed6, 0xe8bd,
- 0xe8be, 0xe8bf, 0xe8c0, 0xe8c1, 0xe8c2, 0xe8c3, 0x7448, 0xe8c5,
- 0x70a5, 0xe8c7, 0x9284, 0x73e6, 0x935f, 0xe8cb, 0x9331, 0xe8cd,
- 0xe8ce, 0x9386, 0xe8d0, 0xe8d1, 0x4935, 0xe8d3, 0x716b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xe8d5, 0xe8d6, 0x56a4, 0xe8d8, 0xe8d9, 0xe8da, 0x5502,
- 0x79c4, 0xe8dd, 0x7dfe, 0xe8df, 0xe8e0, 0xe8e1, 0x452e, 0x9401,
- 0x370a, 0xe8e5, 0xe8e6, 0x59b0, 0xe8e8, 0xe8e9, 0xe8ea, 0x5aa1,
- 0x36e2, 0xe8ed, 0x36b0, 0x925f, 0x5a79, 0xe8f1, 0xe8f2, 0x9374,
- 0x3ccd, 0xe8f5, 0x4a96, 0x398a, 0x50f4, 0x3d69, 0x3d4c, 0xe8fb,
- 0x7175, 0x42fb, 0xe8fe, 0x6e0f, 0xe900, 0x44eb, 0x6d57, 0xe903,
- 0x7067, 0x6caf, 0x3cd6, 0xe907, 0xe908, 0x6e02, 0x6f0c, 0x3d6f,
- 0xe90c, 0x7551, 0x36bc, 0x34c8, 0x4680, 0x3eda, 0x4871, 0x59c4,
- 0x926e, 0x493e, 0x8f41, 0xe917, 0xe918, 0x5812, 0x57c8, 0x36d6,
- 0xe91c, 0x70fe, 0xe91e, 0xe91f, 0xe920, 0xe921, 0xe922, 0x68b9,
- 0x6967, 0xe925, 0xe926, 0xe927, 0xe928, 0xe929, 0xe92a, 0xe92b,
- 0xe92c, 0x6a1a, 0xe92e, 0xe92f, 0x843e, 0x44df, 0x44ce, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xe933, 0xe934, 0xe935, 0xe936, 0x6f17, 0xe938, 0x833d, 0xe93a,
- 0x83ed, 0xe93c, 0xe93d, 0xe93e, 0x5989, 0x5a82, 0xe941, 0x5a61,
- 0x5a71, 0xe944, 0xe945, 0x372d, 0x59ef, 0xe948, 0x36c7, 0x718e,
- 0x9390, 0x669a, 0xe94d, 0x5a6e, 0x5a2b, 0xe950, 0x6a2b, 0xe952,
- 0xe953, 0xe954, 0xe955, 0x711d, 0xe957, 0xe958, 0x4fb0, 0xe95a,
- 0x5cc2, 0xe95c, 0xe95d, 0xe95e, 0x6a0c, 0xe960, 0xe961, 0x70a6,
- 0x7133, 0xe964, 0x3da5, 0x6cdf, 0xe967, 0xe968, 0x7e65, 0x59eb,
- 0x5d2f, 0x3df3, 0x5f5c, 0xe96e, 0xe96f, 0x7da4, 0x8426, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5485, 0xe973, 0xe974, 0xe975, 0x577e, 0xe977, 0xe978,
- 0x3fe5, 0xe97a, 0xe97b, 0x7003, 0xe97d, 0x5d70, 0x738f, 0x7cd3,
- 0xe981, 0xe982, 0x4fc8, 0x7fe7, 0x72cd, 0x7310, 0xe987, 0x7338,
- 0x7339, 0xe98a, 0x7341, 0x7348, 0x3ea9, 0xe98e, 0x906c, 0x71f5,
- 0xe991, 0x73e1, 0x81f6, 0x3eca, 0x770c, 0x3ed1, 0x6ca2, 0x56fd,
- 0x7419, 0x741e, 0x741f, 0x3ee2, 0x3ef0, 0x3ef4, 0x3efa, 0x74d3,
- 0x3f0e, 0x3f53, 0x7542, 0x756d, 0x7572, 0x758d, 0x3f7c, 0x75c8,
- 0x75dc, 0x3fc0, 0x764d, 0x3fd7, 0x7674, 0x3fdc, 0x767a, 0xe9b0,
- 0x7188, 0x5623, 0x8980, 0x5869, 0x401d, 0x7743, 0x4039, 0x6761,
- 0x4045, 0x35db, 0x7798, 0x406a, 0x406f, 0x5c5e, 0x77be, 0x77cb,
- 0x58f2, 0x7818, 0x70b9, 0x781c, 0x40a8, 0x7839, 0x7847, 0x7851,
- 0x7866, 0x8448, 0xe9cb, 0x7933, 0x6803, 0x7932, 0x4103, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4109, 0x7991, 0x7999, 0x8fbb, 0x7a06, 0x8fbc, 0x4167, 0x7a91,
- 0x41b2, 0x7abc, 0x8279, 0x41c4, 0x7acf, 0x7adb, 0x41cf, 0x4e21,
- 0x7b62, 0x7b6c, 0x7b7b, 0x7c12, 0x7c1b, 0x4260, 0x427a, 0x7c7b,
- 0x7c9c, 0x428c, 0x7cb8, 0x4294, 0x7ced, 0x8f93, 0x70c0, 0xe9ef,
- 0x7dcf, 0x7dd4, 0x7dd0, 0x7dfd, 0x7fae, 0x7fb4, 0x729f, 0x4397,
- 0x8020, 0x8025, 0x7b39, 0x802e, 0x8031, 0x8054, 0x3dcc, 0x57b4,
- 0x70a0, 0x80b7, 0x80e9, 0x43ed, 0x810c, 0x732a, 0x810e, 0x8112,
- 0x7560, 0x8114, 0x4401, 0x3b39, 0x8156, 0x8159, 0x815a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x4413, 0x583a, 0x817c, 0x8184, 0x4425, 0x8193, 0x442d,
- 0x81a5, 0x57ef, 0x81c1, 0x81e4, 0x8254, 0x448f, 0x82a6, 0x8276,
- 0x82ca, 0x82d8, 0x82ff, 0x44b0, 0x8357, 0x9669, 0x698a, 0x8405,
- 0x70f5, 0x8464, 0x60e3, 0x8488, 0x4504, 0x84be, 0x84e1, 0x84f8,
- 0x8510, 0x8538, 0x8552, 0x453b, 0x856f, 0x8570, 0x85e0, 0x4577,
- 0x8672, 0x8692, 0x86b2, 0x86ef, 0x9645, 0x878b, 0x4606, 0x4617,
- 0x88ae, 0x88ff, 0x8924, 0x8947, 0x8991, 0xea43, 0x8a29, 0x8a38,
- 0x8a94, 0x8ab4, 0x8c51, 0x8cd4, 0x8cf2, 0x8d1c, 0x4798, 0x585f,
- 0x8dc3, 0x47ed, 0x4eee, 0x8e3a, 0x55d8, 0x5754, 0x8e71, 0x55f5,
- 0x8eb0, 0x4837, 0x8ece, 0x8ee2, 0x8ee4, 0x8eed, 0x8ef2, 0x8fb7,
- 0x8fc1, 0x8fca, 0x8fcc, 0x9033, 0x99c4, 0x48ad, 0x98e0, 0x9213,
- 0x491e, 0x9228, 0x9258, 0x926b, 0x92b1, 0x92ae, 0x92bf, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x92e3, 0x92eb, 0x92f3, 0x92f4, 0x92fd, 0x9343, 0x9384, 0x93ad,
- 0x4945, 0x4951, 0x9ebf, 0x9417, 0x5301, 0x941d, 0x942d, 0x943e,
- 0x496a, 0x9454, 0x9479, 0x952d, 0x95a2, 0x49a7, 0x95f4, 0x9633,
- 0x49e5, 0x67a0, 0x4a24, 0x9740, 0x4a35, 0x97b2, 0x97c2, 0x5654,
- 0x4ae4, 0x60e8, 0x98b9, 0x4b19, 0x98f1, 0x5844, 0x990e, 0x9919,
- 0x51b4, 0x991c, 0x9937, 0x9942, 0x995d, 0x9962, 0x4b70, 0x99c5,
- 0x4b9d, 0x9a3c, 0x9b0f, 0x7a83, 0x9b69, 0x9b81, 0x9bdd, 0x9bf1,
- 0x9bf4, 0x4c6d, 0x9c20, 0x376f, 0xeaa9, 0x9d49, 0x9c3a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9efe, 0x5650, 0x9d93, 0x9dbd, 0x9dc0, 0x9dfc, 0x94f6,
- 0x8fb6, 0x9e7b, 0x9eac, 0x9eb1, 0x9ebd, 0x9ec6, 0x94dc, 0x9ee2,
- 0x9ef1, 0x9ef8, 0x7ac8, 0x9f44, 0xeabf, 0xeac0, 0xeac1, 0x691a,
- 0x94c3, 0x59ac, 0xeac5, 0x5840, 0x94c1, 0x37b9, 0xeac9, 0xeaca,
- 0xeacb, 0xeacc, 0x5757, 0x7173, 0xeacf, 0xead0, 0xead1, 0x546a,
- 0xead3, 0xead4, 0x549e, 0xead6, 0xead7, 0xead8, 0xead9, 0xeada,
- 0x60e7, 0xeadc, 0x567a, 0xeade, 0xeadf, 0xeae0, 0xeae1, 0xeae2,
- 0xeae3, 0x6955, 0x9c2f, 0x87a5, 0xeae7, 0xeae8, 0xeae9, 0xeaea,
- 0xeaeb, 0xeaec, 0x5c20, 0xeaee, 0x5e0b, 0xeaf0, 0xeaf1, 0xeaf2,
- 0x671e, 0xeaf4, 0xeaf5, 0xeaf6, 0x3647, 0xeaf8, 0xeaf9, 0xeafa,
- 0xeafb, 0x5364, 0x84ad, 0xeafe, 0xeaff, 0xeb00, 0x8b81, 0xeb02,
- 0xeb03, 0xeb04, 0xeb05, 0x4e78, 0x70bb, 0xeb08, 0xeb09, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xeb0a, 0xeb0b, 0xeb0c, 0xeb0d, 0xeb0e, 0xeb0f, 0x62c3, 0xeb11,
- 0xeb12, 0x7198, 0x6855, 0xeb15, 0x69e9, 0x36c8, 0xeb18, 0xeb19,
- 0xeb1a, 0xeb1b, 0xeb1c, 0xeb1d, 0x82fd, 0xeb1f, 0xeb20, 0xeb21,
- 0x89a5, 0xeb23, 0x8fa0, 0xeb25, 0x97b8, 0xeb27, 0x9847, 0x9abd,
- 0xeb2a, 0xeb2b, 0xeb2c, 0xeb2d, 0xeb2e, 0xeb2f, 0xeb30, 0xeb31,
- 0xeb32, 0xeb33, 0xeb34, 0xeb35, 0xeb36, 0xeb37, 0xeb38, 0xeb39,
- 0x5fb1, 0x6648, 0x66bf, 0xeb3d, 0xeb3e, 0xeb3f, 0x7201, 0xeb41,
- 0x77d7, 0xeb43, 0xeb44, 0x7e87, 0xeb46, 0x58b5, 0x670e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6918, 0xeb4a, 0xeb4b, 0xeb4c, 0xeb4d, 0xeb4e, 0xeb4f,
- 0xeb50, 0x48d0, 0x4ab8, 0xeb53, 0xeb54, 0xeb55, 0xeb56, 0xeb57,
- 0xeb58, 0xeb59, 0xeb5a, 0xeb5b, 0x51d2, 0xeb5d, 0x599f, 0xeb5f,
- 0x3bbe, 0xeb61, 0xeb62, 0xeb63, 0x5788, 0xeb65, 0x399b, 0xeb67,
- 0xeb68, 0xeb69, 0x3762, 0xeb6b, 0x8b5e, 0xeb6d, 0x99d6, 0xeb6f,
- 0xeb70, 0xeb71, 0x7209, 0xeb73, 0xeb74, 0x5965, 0xeb76, 0xeb77,
- 0xeb78, 0x8eda, 0xeb7a, 0x528f, 0x573f, 0x7171, 0xeb7e, 0xeb7f,
- 0xeb80, 0xeb81, 0x55bc, 0xeb83, 0xeb84, 0xeb85, 0x91d4, 0x3473,
- 0xeb88, 0xeb89, 0xeb8a, 0x4718, 0xeb8c, 0xeb8d, 0xeb8e, 0xeb8f,
- 0xeb90, 0x5066, 0x34fb, 0xeb93, 0x60de, 0xeb95, 0x477c, 0xeb97,
- 0xeb98, 0xeb99, 0xeb9a, 0xeb9b, 0x57a1, 0x7151, 0x6fb6, 0xeb9f,
- 0xeba0, 0x9056, 0xeba2, 0xeba3, 0x8b62, 0xeba5, 0xeba6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5d5b, 0xeba8, 0x8f36, 0xebaa, 0xebab, 0x8aea, 0xebad, 0xebae,
- 0xebaf, 0xebb0, 0x4bc0, 0xebb2, 0xebb3, 0xebb4, 0x9465, 0xebb6,
- 0x6195, 0x5a27, 0xebb9, 0x4fbb, 0x56b9, 0xebbc, 0xebbd, 0x4e6a,
- 0xebbf, 0x9656, 0x6d8f, 0xebc2, 0x3618, 0x8977, 0xebc5, 0xebc6,
- 0xebc7, 0xebc8, 0x71df, 0xebca, 0x7b42, 0xebcc, 0xebcd, 0xebce,
- 0x9104, 0xebd0, 0x7a45, 0x9df0, 0xebd3, 0x9a26, 0xebd5, 0x365f,
- 0xebd7, 0xebd8, 0x7983, 0xebda, 0xebdb, 0x5d2c, 0xebdd, 0x83cf,
- 0xebdf, 0x46d0, 0xebe1, 0x753b, 0x8865, 0xebe4, 0x58b6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x371c, 0xebe7, 0xebe8, 0xebe9, 0x3c54, 0xebeb, 0xebec,
- 0x9281, 0xebee, 0xebef, 0x9330, 0xebf1, 0xebf2, 0x6c39, 0x949f,
- 0xebf5, 0xebf6, 0x8827, 0x88f5, 0xebf9, 0xebfa, 0xebfb, 0x6eb8,
- 0xebfd, 0xebfe, 0x39a4, 0x36b9, 0x5c10, 0x79e3, 0x453f, 0x66b6,
- 0xec05, 0xec06, 0x8943, 0xec08, 0xec09, 0x56d6, 0x40df, 0xec0c,
- 0x39a1, 0xec0e, 0xec0f, 0xec10, 0x71ad, 0x8366, 0xec13, 0xec14,
- 0x5a67, 0x4cb7, 0xec17, 0xec18, 0xec19, 0xec1a, 0xec1b, 0xec1c,
- 0xec1d, 0x7b43, 0x797e, 0xec20, 0x6fb5, 0xec22, 0x6a03, 0xec24,
- 0x53a2, 0xec26, 0x93bf, 0x6836, 0x975d, 0xec2a, 0xec2b, 0xec2c,
- 0xec2d, 0xec2e, 0xec2f, 0x5d85, 0xec31, 0xec32, 0x5715, 0x9823,
- 0xec35, 0x5dab, 0xec37, 0x65be, 0x69d5, 0x53d2, 0xec3b, 0xec3c,
- 0x3c11, 0x6736, 0xec3f, 0xec40, 0xec41, 0xec42, 0xec43, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xec44, 0xec45, 0xec46, 0xec47, 0xec48, 0xec49, 0x35ca, 0xec4b,
- 0xec4c, 0x48fa, 0x63e6, 0xec4f, 0x7808, 0x9255, 0xec52, 0x43f2,
- 0xec54, 0x43df, 0xec56, 0xec57, 0xec58, 0x59f8, 0xec5a, 0x8f0b,
- 0xec5c, 0xec5d, 0x7b51, 0xec5f, 0xec60, 0x3df7, 0xec62, 0xec63,
- 0x8fd0, 0x728f, 0x568b, 0xec67, 0xec68, 0xec69, 0xec6a, 0xec6b,
- 0xec6c, 0xec6d, 0xec6e, 0xec6f, 0xec70, 0xec71, 0xec72, 0xec73,
- 0x7e9f, 0xec75, 0xec76, 0x4ca4, 0x9547, 0xec79, 0x71a2, 0xec7b,
- 0x4d91, 0x9012, 0xec7e, 0x4d9c, 0xec80, 0x8fbe, 0x55c1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8fba, 0xec84, 0x8fb9, 0xec86, 0x4509, 0x7e7f, 0x6f56,
- 0x6ab1, 0x4eea, 0x34e4, 0xec8d, 0xec8e, 0x373a, 0x8e80, 0xec91,
- 0xec92, 0xec93, 0xec94, 0xec95, 0xec96, 0x3deb, 0xec98, 0xec99,
- 0xec9a, 0xec9b, 0x4e9a, 0xec9d, 0xec9e, 0x56bf, 0xeca0, 0x8e0e,
- 0x5b6d, 0xeca3, 0xeca4, 0x63de, 0x62d0, 0xeca7, 0xeca8, 0x6530,
- 0x562d, 0xecab, 0x541a, 0xecad, 0x3dc6, 0xecaf, 0x4c7d, 0x5622,
- 0x561e, 0x7f49, 0xecb4, 0x5975, 0xecb6, 0x8770, 0x4e1c, 0xecb9,
- 0xecba, 0xecbb, 0x8117, 0x9d5e, 0x8d18, 0x763b, 0x9c45, 0x764e,
- 0x77b9, 0x9345, 0x5432, 0x8148, 0x82f7, 0x5625, 0x8132, 0x8418,
- 0x80bd, 0x55ea, 0x7962, 0x5643, 0x5416, 0xeccf, 0x35ce, 0x5605,
- 0x55f1, 0x66f1, 0xecd4, 0x362d, 0x7534, 0x55f0, 0x55ba, 0x5497,
- 0x5572, 0xecdb, 0xecdc, 0x5ed0, 0xecde, 0xecdf, 0xece0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xece1, 0x9eab, 0x7d5a, 0x55de, 0xece5, 0x629d, 0x976d, 0x5494,
- 0x8ccd, 0x71f6, 0x9176, 0x63fc, 0x63b9, 0x63fe, 0x5569, 0xecf0,
- 0x9c72, 0xecf2, 0x519a, 0x34df, 0xecf5, 0x51a7, 0x544d, 0x551e,
- 0x5513, 0x7666, 0x8e2d, 0xecfc, 0x75b1, 0x80b6, 0x8804, 0x8786,
- 0x88c7, 0x81b6, 0x841c, 0xed04, 0x44ec, 0x7304, 0xed07, 0x5b90,
- 0x830b, 0xed0a, 0x567b, 0xed0c, 0xed0d, 0xed0e, 0xed0f, 0xed10,
- 0xed11, 0x9170, 0xed13, 0x9208, 0xed15, 0xed16, 0xed17, 0xed18,
- 0x7266, 0xed1a, 0x474e, 0xed1c, 0xed1d, 0xed1e, 0x40fa, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9c5d, 0x651f, 0xed22, 0x48f3, 0xed24, 0xed25, 0xed26,
- 0xed27, 0x6062, 0xed29, 0xed2a, 0xed2b, 0xed2c, 0xed2d, 0x71a3,
- 0x7e8e, 0x9d50, 0x4e1a, 0x4e04, 0x3577, 0x5b0d, 0x6cb2, 0x5367,
- 0x36ac, 0x39dc, 0x537d, 0x36a5, 0xed3b, 0x589a, 0xed3d, 0x822d,
- 0x544b, 0x57aa, 0xed41, 0xed42, 0xed43, 0x3a52, 0xed45, 0x7374,
- 0xed47, 0x4d09, 0x9bed, 0xed4a, 0xed4b, 0x4c5b, 0xed4d, 0xed4e,
- 0xed4f, 0x845c, 0xed51, 0xed52, 0xed53, 0xed54, 0x632e, 0x7d25,
- 0xed57, 0xed58, 0x3a2a, 0x9008, 0x52cc, 0x3e74, 0x367a, 0x45e9,
- 0xed5f, 0x7640, 0x5af0, 0xed62, 0x787a, 0x47b6, 0x58a7, 0x40bf,
- 0x567c, 0x9b8b, 0x5d74, 0x7654, 0xed6b, 0x9e85, 0x4ce1, 0x75f9,
- 0x37fb, 0x6119, 0xed71, 0xed72, 0xed73, 0x565d, 0xed75, 0x57a7,
- 0xed77, 0xed78, 0x5234, 0xed7a, 0x35ad, 0x6c4a, 0x9d7c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7c56, 0x9b39, 0x57de, 0xed81, 0x5c53, 0x64d3, 0xed84, 0xed85,
- 0xed86, 0x86ad, 0xed88, 0xed89, 0xed8a, 0xed8b, 0xed8c, 0x51fe,
- 0xed8e, 0x5d8e, 0x9703, 0xed91, 0x9e81, 0x904c, 0x7b1f, 0x9b02,
- 0x5cd1, 0x7ba3, 0x6268, 0x6335, 0x9aff, 0x7bcf, 0x9b2a, 0x7c7e,
- 0x9b2e, 0x7c42, 0x7c86, 0x9c15, 0x7bfc, 0x9b09, 0x9f17, 0x9c1b,
- 0xeda6, 0x9f5a, 0x5573, 0x5bc3, 0x4ffd, 0x9e98, 0x4ff2, 0x5260,
- 0x3e06, 0x52d1, 0x5767, 0x5056, 0x59b7, 0x5e12, 0x97c8, 0x9dab,
- 0x8f5c, 0x5469, 0x97b4, 0x9940, 0x97ba, 0x532c, 0x6130, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x692c, 0x53da, 0x9c0a, 0x9d02, 0x4c3b, 0x9641, 0x6980,
- 0x50a6, 0x7546, 0xedc6, 0x99da, 0x5273, 0xedc9, 0x9159, 0x9681,
- 0x915c, 0xedcd, 0x9151, 0xedcf, 0x637f, 0xedd1, 0x6aca, 0x5611,
- 0x918e, 0x757a, 0x6285, 0xedd7, 0x734f, 0x7c70, 0xedda, 0xeddb,
- 0xeddc, 0xeddd, 0x76d6, 0x9b9d, 0x4e2a, 0xede1, 0x83be, 0x8842,
- 0xede4, 0x5c4a, 0x69c0, 0x50ed, 0x577a, 0x521f, 0x5df5, 0x4ece,
- 0x6c31, 0xeded, 0x4f39, 0x549c, 0x54da, 0x529a, 0x8d82, 0x35fe,
- 0x5f0c, 0x35f3, 0xedf6, 0x6b52, 0x917c, 0x9fa5, 0x9b97, 0x982e,
- 0x98b4, 0x9aba, 0x9ea8, 0x9e84, 0x717a, 0x7b14, 0xee02, 0x6bfa,
- 0x8818, 0x7f78, 0xee06, 0x5620, 0xee08, 0x8e77, 0x9f53, 0xee0b,
- 0x8dd4, 0x8e4f, 0x9e1c, 0x8e01, 0x6282, 0xee11, 0x8e28, 0x8e75,
- 0x7ad3, 0xee15, 0x7a3e, 0x78d8, 0x6cea, 0x8a67, 0x7607, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xee1b, 0x9f26, 0x6cce, 0x87d6, 0x75c3, 0xee20, 0x7853, 0xee22,
- 0x8d0c, 0x72e2, 0x7371, 0x8b2d, 0x7302, 0x74f1, 0x8ceb, 0xee2a,
- 0x862f, 0x5fba, 0x88a0, 0x44b7, 0xee2f, 0xee30, 0xee31, 0xee32,
- 0x8a7e, 0xee34, 0xee35, 0x60fd, 0x7667, 0x9ad7, 0x9d44, 0x936e,
- 0x9b8f, 0x87f5, 0xee3d, 0x880f, 0x8cf7, 0x732c, 0x9721, 0x9bb0,
- 0x35d6, 0x72b2, 0x4c07, 0x7c51, 0x994a, 0xee48, 0x6159, 0x4c04,
- 0x9e96, 0x617d, 0xee4d, 0x575f, 0x616f, 0x62a6, 0x6239, 0x62ce,
- 0x3a5c, 0x61e2, 0x53aa, 0xee56, 0x6364, 0x6802, 0x35d2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5d57, 0xee5b, 0x8fda, 0xee5d, 0xee5e, 0x50d9, 0xee60,
- 0x7906, 0x5332, 0x9638, 0xee64, 0x4065, 0xee66, 0x77fe, 0xee68,
- 0x7cc2, 0xee6a, 0x7cda, 0x7a2d, 0x8066, 0x8063, 0x7d4d, 0x7505,
- 0x74f2, 0x8994, 0x821a, 0x670c, 0x8062, 0xee76, 0x805b, 0x74f0,
- 0x8103, 0x7724, 0x8989, 0xee7c, 0x7553, 0xee7e, 0x87a9, 0x87ce,
- 0x81c8, 0x878c, 0x8a49, 0x8cad, 0x8b43, 0x772b, 0x74f8, 0x84da,
- 0x3635, 0x69b2, 0x8da6, 0xee8c, 0x89a9, 0x7468, 0x6db9, 0x87c1,
- 0xee91, 0x74e7, 0x3ddb, 0x7176, 0x60a4, 0x619c, 0x3cd1, 0x7162,
- 0x6077, 0xee9a, 0x7f71, 0xee9c, 0x7250, 0x60e9, 0x4b7e, 0x5220,
- 0x3c18, 0xeea2, 0xeea3, 0xeea4, 0xeea5, 0xeea6, 0xeea7, 0xeea8,
- 0xeea9, 0xeeaa, 0x5cc1, 0xeeac, 0xeead, 0xeeae, 0xeeaf, 0xeeb0,
- 0xeeb1, 0x4562, 0x5b1f, 0xeeb4, 0x9f50, 0x9ea6, 0xeeb7, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x3000, 0xff0c, 0x3001, 0x3002, 0xff0e, 0x2027, 0xff1b, 0xff1a,
- 0xff1f, 0xff01, 0xfe30, 0x2026, 0x2025, 0xfe50, 0xfe51, 0xfe52,
- 0x00b7, 0xfe54, 0xfe55, 0xfe56, 0xfe57, 0xff5c, 0x2013, 0xfe31,
- 0x2014, 0xfe33, 0x2574, 0xfe34, 0xfe4f, 0xff08, 0xff09, 0xfe35,
- 0xfe36, 0xff5b, 0xff5d, 0xfe37, 0xfe38, 0x3014, 0x3015, 0xfe39,
- 0xfe3a, 0x3010, 0x3011, 0xfe3b, 0xfe3c, 0x300a, 0x300b, 0xfe3d,
- 0xfe3e, 0x3008, 0x3009, 0xfe3f, 0xfe40, 0x300c, 0x300d, 0xfe41,
- 0xfe42, 0x300e, 0x300f, 0xfe43, 0xfe44, 0xfe59, 0xfe5a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xfe5b, 0xfe5c, 0xfe5d, 0xfe5e, 0x2018, 0x2019, 0x201c,
- 0x201d, 0x301d, 0x301e, 0x2035, 0x2032, 0xff03, 0xff06, 0xff0a,
- 0x203b, 0x00a7, 0x3003, 0x25cb, 0x25cf, 0x25b3, 0x25b2, 0x25ce,
- 0x2606, 0x2605, 0x25c7, 0x25c6, 0x25a1, 0x25a0, 0x25bd, 0x25bc,
- 0x32a3, 0x2105, 0x00af, 0xffe3, 0xff3f, 0x02cd, 0xfe49, 0xfe4a,
- 0xfe4d, 0xfe4e, 0xfe4b, 0xfe4c, 0xfe5f, 0xfe60, 0xfe61, 0xff0b,
- 0xff0d, 0x00d7, 0x00f7, 0x00b1, 0x221a, 0xff1c, 0xff1e, 0xff1d,
- 0x2266, 0x2267, 0x2260, 0x221e, 0x2252, 0x2261, 0xfe62, 0xfe63,
- 0xfe64, 0xfe65, 0xfe66, 0xff5e, 0x2229, 0x222a, 0x22a5, 0x2220,
- 0x221f, 0x22bf, 0x33d2, 0x33d1, 0x222b, 0x222e, 0x2235, 0x2234,
- 0x2640, 0x2642, 0x2295, 0x2299, 0x2191, 0x2193, 0x2190, 0x2192,
- 0x2196, 0x2197, 0x2199, 0x2198, 0x2225, 0x2223, 0xff0f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xff3c, 0x2215, 0xfe68, 0xff04, 0xffe5, 0x3012, 0xffe0, 0xffe1,
- 0xff05, 0xff20, 0x2103, 0x2109, 0xfe69, 0xfe6a, 0xfe6b, 0x33d5,
- 0x339c, 0x339d, 0x339e, 0x33ce, 0x33a1, 0x338e, 0x338f, 0x33c4,
- 0x00b0, 0x5159, 0x515b, 0x515e, 0x515d, 0x5161, 0x5163, 0x55e7,
- 0x74e9, 0x7cce, 0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586,
- 0x2587, 0x2588, 0x258f, 0x258e, 0x258d, 0x258c, 0x258b, 0x258a,
- 0x2589, 0x253c, 0x2534, 0x252c, 0x2524, 0x251c, 0x2594, 0x2500,
- 0x2502, 0x2595, 0x250c, 0x2510, 0x2514, 0x2518, 0x256d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x256e, 0x2570, 0x256f, 0x2550, 0x255e, 0x256a, 0x2561,
- 0x25e2, 0x25e3, 0x25e5, 0x25e4, 0x2571, 0x2572, 0x2573, 0xff10,
- 0xff11, 0xff12, 0xff13, 0xff14, 0xff15, 0xff16, 0xff17, 0xff18,
- 0xff19, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166,
- 0x2167, 0x2168, 0x2169, 0x3021, 0x3022, 0x3023, 0x3024, 0x3025,
- 0x3026, 0x3027, 0x3028, 0x3029, 0x5341, 0x5344, 0x5345, 0xff21,
- 0xff22, 0xff23, 0xff24, 0xff25, 0xff26, 0xff27, 0xff28, 0xff29,
- 0xff2a, 0xff2b, 0xff2c, 0xff2d, 0xff2e, 0xff2f, 0xff30, 0xff31,
- 0xff32, 0xff33, 0xff34, 0xff35, 0xff36, 0xff37, 0xff38, 0xff39,
- 0xff3a, 0xff41, 0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47,
- 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f,
- 0xff50, 0xff51, 0xff52, 0xff53, 0xff54, 0xff55, 0xff56, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xff57, 0xff58, 0xff59, 0xff5a, 0x0391, 0x0392, 0x0393, 0x0394,
- 0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039a, 0x039b, 0x039c,
- 0x039d, 0x039e, 0x039f, 0x03a0, 0x03a1, 0x03a3, 0x03a4, 0x03a5,
- 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x03b1, 0x03b2, 0x03b3, 0x03b4,
- 0x03b5, 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc,
- 0x03bd, 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3, 0x03c4, 0x03c5,
- 0x03c6, 0x03c7, 0x03c8, 0x03c9, 0x3105, 0x3106, 0x3107, 0x3108,
- 0x3109, 0x310a, 0x310b, 0x310c, 0x310d, 0x310e, 0x310f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116,
- 0x3117, 0x3118, 0x3119, 0x311a, 0x311b, 0x311c, 0x311d, 0x311e,
- 0x311f, 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126,
- 0x3127, 0x3128, 0x3129, 0x02d9, 0x02c9, 0x02ca, 0x02c7, 0x02cb,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4e00, 0x4e59, 0x4e01, 0x4e03, 0x4e43, 0x4e5d, 0x4e86, 0x4e8c,
- 0x4eba, 0x513f, 0x5165, 0x516b, 0x51e0, 0x5200, 0x5201, 0x529b,
- 0x5315, 0x5341, 0x535c, 0x53c8, 0x4e09, 0x4e0b, 0x4e08, 0x4e0a,
- 0x4e2b, 0x4e38, 0x51e1, 0x4e45, 0x4e48, 0x4e5f, 0x4e5e, 0x4e8e,
- 0x4ea1, 0x5140, 0x5203, 0x52fa, 0x5343, 0x53c9, 0x53e3, 0x571f,
- 0x58eb, 0x5915, 0x5927, 0x5973, 0x5b50, 0x5b51, 0x5b53, 0x5bf8,
- 0x5c0f, 0x5c22, 0x5c38, 0x5c71, 0x5ddd, 0x5de5, 0x5df1, 0x5df2,
- 0x5df3, 0x5dfe, 0x5e72, 0x5efe, 0x5f0b, 0x5f13, 0x624d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x4e11, 0x4e10, 0x4e0d, 0x4e2d, 0x4e30, 0x4e39, 0x4e4b,
- 0x5c39, 0x4e88, 0x4e91, 0x4e95, 0x4e92, 0x4e94, 0x4ea2, 0x4ec1,
- 0x4ec0, 0x4ec3, 0x4ec6, 0x4ec7, 0x4ecd, 0x4eca, 0x4ecb, 0x4ec4,
- 0x5143, 0x5141, 0x5167, 0x516d, 0x516e, 0x516c, 0x5197, 0x51f6,
- 0x5206, 0x5207, 0x5208, 0x52fb, 0x52fe, 0x52ff, 0x5316, 0x5339,
- 0x5348, 0x5347, 0x5345, 0x535e, 0x5384, 0x53cb, 0x53ca, 0x53cd,
- 0x58ec, 0x5929, 0x592b, 0x592a, 0x592d, 0x5b54, 0x5c11, 0x5c24,
- 0x5c3a, 0x5c6f, 0x5df4, 0x5e7b, 0x5eff, 0x5f14, 0x5f15, 0x5fc3,
- 0x6208, 0x6236, 0x624b, 0x624e, 0x652f, 0x6587, 0x6597, 0x65a4,
- 0x65b9, 0x65e5, 0x66f0, 0x6708, 0x6728, 0x6b20, 0x6b62, 0x6b79,
- 0x6bcb, 0x6bd4, 0x6bdb, 0x6c0f, 0x6c34, 0x706b, 0x722a, 0x7236,
- 0x723b, 0x7247, 0x7259, 0x725b, 0x72ac, 0x738b, 0x4e19, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4e16, 0x4e15, 0x4e14, 0x4e18, 0x4e3b, 0x4e4d, 0x4e4f, 0x4e4e,
- 0x4ee5, 0x4ed8, 0x4ed4, 0x4ed5, 0x4ed6, 0x4ed7, 0x4ee3, 0x4ee4,
- 0x4ed9, 0x4ede, 0x5145, 0x5144, 0x5189, 0x518a, 0x51ac, 0x51f9,
- 0x51fa, 0x51f8, 0x520a, 0x52a0, 0x529f, 0x5305, 0x5306, 0x5317,
- 0x531d, 0x4edf, 0x534a, 0x5349, 0x5361, 0x5360, 0x536f, 0x536e,
- 0x53bb, 0x53ef, 0x53e4, 0x53f3, 0x53ec, 0x53ee, 0x53e9, 0x53e8,
- 0x53fc, 0x53f8, 0x53f5, 0x53eb, 0x53e6, 0x53ea, 0x53f2, 0x53f1,
- 0x53f0, 0x53e5, 0x53ed, 0x53fb, 0x56db, 0x56da, 0x5916, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x592e, 0x5931, 0x5974, 0x5976, 0x5b55, 0x5b83, 0x5c3c,
- 0x5de8, 0x5de7, 0x5de6, 0x5e02, 0x5e03, 0x5e73, 0x5e7c, 0x5f01,
- 0x5f18, 0x5f17, 0x5fc5, 0x620a, 0x6253, 0x6254, 0x6252, 0x6251,
- 0x65a5, 0x65e6, 0x672e, 0x672c, 0x672a, 0x672b, 0x672d, 0x6b63,
- 0x6bcd, 0x6c11, 0x6c10, 0x6c38, 0x6c41, 0x6c40, 0x6c3e, 0x72af,
- 0x7384, 0x7389, 0x74dc, 0x74e6, 0x7518, 0x751f, 0x7528, 0x7529,
- 0x7530, 0x7531, 0x7532, 0x7533, 0x758b, 0x767d, 0x76ae, 0x76bf,
- 0x76ee, 0x77db, 0x77e2, 0x77f3, 0x793a, 0x79be, 0x7a74, 0x7acb,
- 0x4e1e, 0x4e1f, 0x4e52, 0x4e53, 0x4e69, 0x4e99, 0x4ea4, 0x4ea6,
- 0x4ea5, 0x4eff, 0x4f09, 0x4f19, 0x4f0a, 0x4f15, 0x4f0d, 0x4f10,
- 0x4f11, 0x4f0f, 0x4ef2, 0x4ef6, 0x4efb, 0x4ef0, 0x4ef3, 0x4efd,
- 0x4f01, 0x4f0b, 0x5149, 0x5147, 0x5146, 0x5148, 0x5168, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5171, 0x518d, 0x51b0, 0x5217, 0x5211, 0x5212, 0x520e, 0x5216,
- 0x52a3, 0x5308, 0x5321, 0x5320, 0x5370, 0x5371, 0x5409, 0x540f,
- 0x540c, 0x540a, 0x5410, 0x5401, 0x540b, 0x5404, 0x5411, 0x540d,
- 0x5408, 0x5403, 0x540e, 0x5406, 0x5412, 0x56e0, 0x56de, 0x56dd,
- 0x5733, 0x5730, 0x5728, 0x572d, 0x572c, 0x572f, 0x5729, 0x5919,
- 0x591a, 0x5937, 0x5938, 0x5984, 0x5978, 0x5983, 0x597d, 0x5979,
- 0x5982, 0x5981, 0x5b57, 0x5b58, 0x5b87, 0x5b88, 0x5b85, 0x5b89,
- 0x5bfa, 0x5c16, 0x5c79, 0x5dde, 0x5e06, 0x5e76, 0x5e74, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5f0f, 0x5f1b, 0x5fd9, 0x5fd6, 0x620e, 0x620c, 0x620d,
- 0x6210, 0x6263, 0x625b, 0x6258, 0x6536, 0x65e9, 0x65e8, 0x65ec,
- 0x65ed, 0x66f2, 0x66f3, 0x6709, 0x673d, 0x6734, 0x6731, 0x6735,
- 0x6b21, 0x6b64, 0x6b7b, 0x6c16, 0x6c5d, 0x6c57, 0x6c59, 0x6c5f,
- 0x6c60, 0x6c50, 0x6c55, 0x6c61, 0x6c5b, 0x6c4d, 0x6c4e, 0x7070,
- 0x725f, 0x725d, 0x767e, 0x7af9, 0x7c73, 0x7cf8, 0x7f36, 0x7f8a,
- 0x7fbd, 0x8001, 0x8003, 0x800c, 0x8012, 0x8033, 0x807f, 0x8089,
- 0x808b, 0x808c, 0x81e3, 0x81ea, 0x81f3, 0x81fc, 0x820c, 0x821b,
- 0x821f, 0x826e, 0x8272, 0x827e, 0x866b, 0x8840, 0x884c, 0x8863,
- 0x897f, 0x9621, 0x4e32, 0x4ea8, 0x4f4d, 0x4f4f, 0x4f47, 0x4f57,
- 0x4f5e, 0x4f34, 0x4f5b, 0x4f55, 0x4f30, 0x4f50, 0x4f51, 0x4f3d,
- 0x4f3a, 0x4f38, 0x4f43, 0x4f54, 0x4f3c, 0x4f46, 0x4f63, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4f5c, 0x4f60, 0x4f2f, 0x4f4e, 0x4f36, 0x4f59, 0x4f5d, 0x4f48,
- 0x4f5a, 0x514c, 0x514b, 0x514d, 0x5175, 0x51b6, 0x51b7, 0x5225,
- 0x5224, 0x5229, 0x522a, 0x5228, 0x52ab, 0x52a9, 0x52aa, 0x52ac,
- 0x5323, 0x5373, 0x5375, 0x541d, 0x542d, 0x541e, 0x543e, 0x5426,
- 0x544e, 0x5427, 0x5446, 0x5443, 0x5433, 0x5448, 0x5442, 0x541b,
- 0x5429, 0x544a, 0x5439, 0x543b, 0x5438, 0x542e, 0x5435, 0x5436,
- 0x5420, 0x543c, 0x5440, 0x5431, 0x542b, 0x541f, 0x542c, 0x56ea,
- 0x56f0, 0x56e4, 0x56eb, 0x574a, 0x5751, 0x5740, 0x574d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5747, 0x574e, 0x573e, 0x5750, 0x574f, 0x573b, 0x58ef,
- 0x593e, 0x599d, 0x5992, 0x59a8, 0x599e, 0x59a3, 0x5999, 0x5996,
- 0x598d, 0x59a4, 0x5993, 0x598a, 0x59a5, 0x5b5d, 0x5b5c, 0x5b5a,
- 0x5b5b, 0x5b8c, 0x5b8b, 0x5b8f, 0x5c2c, 0x5c40, 0x5c41, 0x5c3f,
- 0x5c3e, 0x5c90, 0x5c91, 0x5c94, 0x5c8c, 0x5deb, 0x5e0c, 0x5e8f,
- 0x5e87, 0x5e8a, 0x5ef7, 0x5f04, 0x5f1f, 0x5f64, 0x5f62, 0x5f77,
- 0x5f79, 0x5fd8, 0x5fcc, 0x5fd7, 0x5fcd, 0x5ff1, 0x5feb, 0x5ff8,
- 0x5fea, 0x6212, 0x6211, 0x6284, 0x6297, 0x6296, 0x6280, 0x6276,
- 0x6289, 0x626d, 0x628a, 0x627c, 0x627e, 0x6279, 0x6273, 0x6292,
- 0x626f, 0x6298, 0x626e, 0x6295, 0x6293, 0x6291, 0x6286, 0x6539,
- 0x653b, 0x6538, 0x65f1, 0x66f4, 0x675f, 0x674e, 0x674f, 0x6750,
- 0x6751, 0x675c, 0x6756, 0x675e, 0x6749, 0x6746, 0x6760, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6753, 0x6757, 0x6b65, 0x6bcf, 0x6c42, 0x6c5e, 0x6c99, 0x6c81,
- 0x6c88, 0x6c89, 0x6c85, 0x6c9b, 0x6c6a, 0x6c7a, 0x6c90, 0x6c70,
- 0x6c8c, 0x6c68, 0x6c96, 0x6c92, 0x6c7d, 0x6c83, 0x6c72, 0x6c7e,
- 0x6c74, 0x6c86, 0x6c76, 0x6c8d, 0x6c94, 0x6c98, 0x6c82, 0x7076,
- 0x707c, 0x707d, 0x7078, 0x7262, 0x7261, 0x7260, 0x72c4, 0x72c2,
- 0x7396, 0x752c, 0x752b, 0x7537, 0x7538, 0x7682, 0x76ef, 0x77e3,
- 0x79c1, 0x79c0, 0x79bf, 0x7a76, 0x7cfb, 0x7f55, 0x8096, 0x8093,
- 0x809d, 0x8098, 0x809b, 0x809a, 0x80b2, 0x826f, 0x8292, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x828b, 0x828d, 0x898b, 0x89d2, 0x8a00, 0x8c37, 0x8c46,
- 0x8c55, 0x8c9d, 0x8d64, 0x8d70, 0x8db3, 0x8eab, 0x8eca, 0x8f9b,
- 0x8fb0, 0x8fc2, 0x8fc6, 0x8fc5, 0x8fc4, 0x5de1, 0x9091, 0x90a2,
- 0x90aa, 0x90a6, 0x90a3, 0x9149, 0x91c6, 0x91cc, 0x9632, 0x962e,
- 0x9631, 0x962a, 0x962c, 0x4e26, 0x4e56, 0x4e73, 0x4e8b, 0x4e9b,
- 0x4e9e, 0x4eab, 0x4eac, 0x4f6f, 0x4f9d, 0x4f8d, 0x4f73, 0x4f7f,
- 0x4f6c, 0x4f9b, 0x4f8b, 0x4f86, 0x4f83, 0x4f70, 0x4f75, 0x4f88,
- 0x4f69, 0x4f7b, 0x4f96, 0x4f7e, 0x4f8f, 0x4f91, 0x4f7a, 0x5154,
- 0x5152, 0x5155, 0x5169, 0x5177, 0x5176, 0x5178, 0x51bd, 0x51fd,
- 0x523b, 0x5238, 0x5237, 0x523a, 0x5230, 0x522e, 0x5236, 0x5241,
- 0x52be, 0x52bb, 0x5352, 0x5354, 0x5353, 0x5351, 0x5366, 0x5377,
- 0x5378, 0x5379, 0x53d6, 0x53d4, 0x53d7, 0x5473, 0x5475, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5496, 0x5478, 0x5495, 0x5480, 0x547b, 0x5477, 0x5484, 0x5492,
- 0x5486, 0x547c, 0x5490, 0x5471, 0x5476, 0x548c, 0x549a, 0x5462,
- 0x5468, 0x548b, 0x547d, 0x548e, 0x56fa, 0x5783, 0x5777, 0x576a,
- 0x5769, 0x5761, 0x5766, 0x5764, 0x577c, 0x591c, 0x5949, 0x5947,
- 0x5948, 0x5944, 0x5954, 0x59be, 0x59bb, 0x59d4, 0x59b9, 0x59ae,
- 0x59d1, 0x59c6, 0x59d0, 0x59cd, 0x59cb, 0x59d3, 0x59ca, 0x59af,
- 0x59b3, 0x59d2, 0x59c5, 0x5b5f, 0x5b64, 0x5b63, 0x5b97, 0x5b9a,
- 0x5b98, 0x5b9c, 0x5b99, 0x5b9b, 0x5c1a, 0x5c48, 0x5c45, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5c46, 0x5cb7, 0x5ca1, 0x5cb8, 0x5ca9, 0x5cab, 0x5cb1,
- 0x5cb3, 0x5e18, 0x5e1a, 0x5e16, 0x5e15, 0x5e1b, 0x5e11, 0x5e78,
- 0x5e9a, 0x5e97, 0x5e9c, 0x5e95, 0x5e96, 0x5ef6, 0x5f26, 0x5f27,
- 0x5f29, 0x5f80, 0x5f81, 0x5f7f, 0x5f7c, 0x5fdd, 0x5fe0, 0x5ffd,
- 0x5ff5, 0x5fff, 0x600f, 0x6014, 0x602f, 0x6035, 0x6016, 0x602a,
- 0x6015, 0x6021, 0x6027, 0x6029, 0x602b, 0x601b, 0x6216, 0x6215,
- 0x623f, 0x623e, 0x6240, 0x627f, 0x62c9, 0x62cc, 0x62c4, 0x62bf,
- 0x62c2, 0x62b9, 0x62d2, 0x62db, 0x62ab, 0x62d3, 0x62d4, 0x62cb,
- 0x62c8, 0x62a8, 0x62bd, 0x62bc, 0x62d0, 0x62d9, 0x62c7, 0x62cd,
- 0x62b5, 0x62da, 0x62b1, 0x62d8, 0x62d6, 0x62d7, 0x62c6, 0x62ac,
- 0x62ce, 0x653e, 0x65a7, 0x65bc, 0x65fa, 0x6614, 0x6613, 0x660c,
- 0x6606, 0x6602, 0x660e, 0x6600, 0x660f, 0x6615, 0x660a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6607, 0x670d, 0x670b, 0x676d, 0x678b, 0x6795, 0x6771, 0x679c,
- 0x6773, 0x6777, 0x6787, 0x679d, 0x6797, 0x676f, 0x6770, 0x677f,
- 0x6789, 0x677e, 0x6790, 0x6775, 0x679a, 0x6793, 0x677c, 0x676a,
- 0x6772, 0x6b23, 0x6b66, 0x6b67, 0x6b7f, 0x6c13, 0x6c1b, 0x6ce3,
- 0x6ce8, 0x6cf3, 0x6cb1, 0x6ccc, 0x6ce5, 0x6cb3, 0x6cbd, 0x6cbe,
- 0x6cbc, 0x6ce2, 0x6cab, 0x6cd5, 0x6cd3, 0x6cb8, 0x6cc4, 0x6cb9,
- 0x6cc1, 0x6cae, 0x6cd7, 0x6cc5, 0x6cf1, 0x6cbf, 0x6cbb, 0x6ce1,
- 0x6cdb, 0x6cca, 0x6cac, 0x6cef, 0x6cdc, 0x6cd6, 0x6ce0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7095, 0x708e, 0x7092, 0x708a, 0x7099, 0x722c, 0x722d,
- 0x7238, 0x7248, 0x7267, 0x7269, 0x72c0, 0x72ce, 0x72d9, 0x72d7,
- 0x72d0, 0x73a9, 0x73a8, 0x739f, 0x73ab, 0x73a5, 0x753d, 0x759d,
- 0x7599, 0x759a, 0x7684, 0x76c2, 0x76f2, 0x76f4, 0x77e5, 0x77fd,
- 0x793e, 0x7940, 0x7941, 0x79c9, 0x79c8, 0x7a7a, 0x7a79, 0x7afa,
- 0x7cfe, 0x7f54, 0x7f8c, 0x7f8b, 0x8005, 0x80ba, 0x80a5, 0x80a2,
- 0x80b1, 0x80a1, 0x80ab, 0x80a9, 0x80b4, 0x80aa, 0x80af, 0x81e5,
- 0x81fe, 0x820d, 0x82b3, 0x829d, 0x8299, 0x82ad, 0x82bd, 0x829f,
- 0x82b9, 0x82b1, 0x82ac, 0x82a5, 0x82af, 0x82b8, 0x82a3, 0x82b0,
- 0x82be, 0x82b7, 0x864e, 0x8671, 0x521d, 0x8868, 0x8ecb, 0x8fce,
- 0x8fd4, 0x8fd1, 0x90b5, 0x90b8, 0x90b1, 0x90b6, 0x91c7, 0x91d1,
- 0x9577, 0x9580, 0x961c, 0x9640, 0x963f, 0x963b, 0x9644, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x9642, 0x96b9, 0x96e8, 0x9752, 0x975e, 0x4e9f, 0x4ead, 0x4eae,
- 0x4fe1, 0x4fb5, 0x4faf, 0x4fbf, 0x4fe0, 0x4fd1, 0x4fcf, 0x4fdd,
- 0x4fc3, 0x4fb6, 0x4fd8, 0x4fdf, 0x4fca, 0x4fd7, 0x4fae, 0x4fd0,
- 0x4fc4, 0x4fc2, 0x4fda, 0x4fce, 0x4fde, 0x4fb7, 0x5157, 0x5192,
- 0x5191, 0x51a0, 0x524e, 0x5243, 0x524a, 0x524d, 0x524c, 0x524b,
- 0x5247, 0x52c7, 0x52c9, 0x52c3, 0x52c1, 0x530d, 0x5357, 0x537b,
- 0x539a, 0x53db, 0x54ac, 0x54c0, 0x54a8, 0x54ce, 0x54c9, 0x54b8,
- 0x54a6, 0x54b3, 0x54c7, 0x54c2, 0x54bd, 0x54aa, 0x54c1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x54c4, 0x54c8, 0x54af, 0x54ab, 0x54b1, 0x54bb, 0x54a9,
- 0x54a7, 0x54bf, 0x56ff, 0x5782, 0x578b, 0x57a0, 0x57a3, 0x57a2,
- 0x57ce, 0x57ae, 0x5793, 0x5955, 0x5951, 0x594f, 0x594e, 0x5950,
- 0x59dc, 0x59d8, 0x59ff, 0x59e3, 0x59e8, 0x5a03, 0x59e5, 0x59ea,
- 0x59da, 0x59e6, 0x5a01, 0x59fb, 0x5b69, 0x5ba3, 0x5ba6, 0x5ba4,
- 0x5ba2, 0x5ba5, 0x5c01, 0x5c4e, 0x5c4f, 0x5c4d, 0x5c4b, 0x5cd9,
- 0x5cd2, 0x5df7, 0x5e1d, 0x5e25, 0x5e1f, 0x5e7d, 0x5ea0, 0x5ea6,
- 0x5efa, 0x5f08, 0x5f2d, 0x5f65, 0x5f88, 0x5f85, 0x5f8a, 0x5f8b,
- 0x5f87, 0x5f8c, 0x5f89, 0x6012, 0x601d, 0x6020, 0x6025, 0x600e,
- 0x6028, 0x604d, 0x6070, 0x6068, 0x6062, 0x6046, 0x6043, 0x606c,
- 0x606b, 0x606a, 0x6064, 0x6241, 0x62dc, 0x6316, 0x6309, 0x62fc,
- 0x62ed, 0x6301, 0x62ee, 0x62fd, 0x6307, 0x62f1, 0x62f7, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x62ef, 0x62ec, 0x62fe, 0x62f4, 0x6311, 0x6302, 0x653f, 0x6545,
- 0x65ab, 0x65bd, 0x65e2, 0x6625, 0x662d, 0x6620, 0x6627, 0x662f,
- 0x661f, 0x6628, 0x6631, 0x6624, 0x66f7, 0x67ff, 0x67d3, 0x67f1,
- 0x67d4, 0x67d0, 0x67ec, 0x67b6, 0x67af, 0x67f5, 0x67e9, 0x67ef,
- 0x67c4, 0x67d1, 0x67b4, 0x67da, 0x67e5, 0x67b8, 0x67cf, 0x67de,
- 0x67f3, 0x67b0, 0x67d9, 0x67e2, 0x67dd, 0x67d2, 0x6b6a, 0x6b83,
- 0x6b86, 0x6bb5, 0x6bd2, 0x6bd7, 0x6c1f, 0x6cc9, 0x6d0b, 0x6d32,
- 0x6d2a, 0x6d41, 0x6d25, 0x6d0c, 0x6d31, 0x6d1e, 0x6d17, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6d3b, 0x6d3d, 0x6d3e, 0x6d36, 0x6d1b, 0x6cf5, 0x6d39,
- 0x6d27, 0x6d38, 0x6d29, 0x6d2e, 0x6d35, 0x6d0e, 0x6d2b, 0x70ab,
- 0x70ba, 0x70b3, 0x70ac, 0x70af, 0x70ad, 0x70b8, 0x70ae, 0x70a4,
- 0x7230, 0x7272, 0x726f, 0x7274, 0x72e9, 0x72e0, 0x72e1, 0x73b7,
- 0x73ca, 0x73bb, 0x73b2, 0x73cd, 0x73c0, 0x73b3, 0x751a, 0x752d,
- 0x754f, 0x754c, 0x754e, 0x754b, 0x75ab, 0x75a4, 0x75a5, 0x75a2,
- 0x75a3, 0x7678, 0x7686, 0x7687, 0x7688, 0x76c8, 0x76c6, 0x76c3,
- 0x76c5, 0x7701, 0x76f9, 0x76f8, 0x7709, 0x770b, 0x76fe, 0x76fc,
- 0x7707, 0x77dc, 0x7802, 0x7814, 0x780c, 0x780d, 0x7946, 0x7949,
- 0x7948, 0x7947, 0x79b9, 0x79ba, 0x79d1, 0x79d2, 0x79cb, 0x7a7f,
- 0x7a81, 0x7aff, 0x7afd, 0x7c7d, 0x7d02, 0x7d05, 0x7d00, 0x7d09,
- 0x7d07, 0x7d04, 0x7d06, 0x7f38, 0x7f8e, 0x7fbf, 0x8004, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8010, 0x800d, 0x8011, 0x8036, 0x80d6, 0x80e5, 0x80da, 0x80c3,
- 0x80c4, 0x80cc, 0x80e1, 0x80db, 0x80ce, 0x80de, 0x80e4, 0x80dd,
- 0x81f4, 0x8222, 0x82e7, 0x8303, 0x8305, 0x82e3, 0x82db, 0x82e6,
- 0x8304, 0x82e5, 0x8302, 0x8309, 0x82d2, 0x82d7, 0x82f1, 0x8301,
- 0x82dc, 0x82d4, 0x82d1, 0x82de, 0x82d3, 0x82df, 0x82ef, 0x8306,
- 0x8650, 0x8679, 0x867b, 0x867a, 0x884d, 0x886b, 0x8981, 0x89d4,
- 0x8a08, 0x8a02, 0x8a03, 0x8c9e, 0x8ca0, 0x8d74, 0x8d73, 0x8db4,
- 0x8ecd, 0x8ecc, 0x8ff0, 0x8fe6, 0x8fe2, 0x8fea, 0x8fe5, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8fed, 0x8feb, 0x8fe4, 0x8fe8, 0x90ca, 0x90ce, 0x90c1,
- 0x90c3, 0x914b, 0x914a, 0x91cd, 0x9582, 0x9650, 0x964b, 0x964c,
- 0x964d, 0x9762, 0x9769, 0x97cb, 0x97ed, 0x97f3, 0x9801, 0x98a8,
- 0x98db, 0x98df, 0x9996, 0x9999, 0x4e58, 0x4eb3, 0x500c, 0x500d,
- 0x5023, 0x4fef, 0x5026, 0x5025, 0x4ff8, 0x5029, 0x5016, 0x5006,
- 0x503c, 0x501f, 0x501a, 0x5012, 0x5011, 0x4ffa, 0x5000, 0x5014,
- 0x5028, 0x4ff1, 0x5021, 0x500b, 0x5019, 0x5018, 0x4ff3, 0x4fee,
- 0x502d, 0x502a, 0x4ffe, 0x502b, 0x5009, 0x517c, 0x51a4, 0x51a5,
- 0x51a2, 0x51cd, 0x51cc, 0x51c6, 0x51cb, 0x5256, 0x525c, 0x5254,
- 0x525b, 0x525d, 0x532a, 0x537f, 0x539f, 0x539d, 0x53df, 0x54e8,
- 0x5510, 0x5501, 0x5537, 0x54fc, 0x54e5, 0x54f2, 0x5506, 0x54fa,
- 0x5514, 0x54e9, 0x54ed, 0x54e1, 0x5509, 0x54ee, 0x54ea, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x54e6, 0x5527, 0x5507, 0x54fd, 0x550f, 0x5703, 0x5704, 0x57c2,
- 0x57d4, 0x57cb, 0x57c3, 0x5809, 0x590f, 0x5957, 0x5958, 0x595a,
- 0x5a11, 0x5a18, 0x5a1c, 0x5a1f, 0x5a1b, 0x5a13, 0x59ec, 0x5a20,
- 0x5a23, 0x5a29, 0x5a25, 0x5a0c, 0x5a09, 0x5b6b, 0x5c58, 0x5bb0,
- 0x5bb3, 0x5bb6, 0x5bb4, 0x5bae, 0x5bb5, 0x5bb9, 0x5bb8, 0x5c04,
- 0x5c51, 0x5c55, 0x5c50, 0x5ced, 0x5cfd, 0x5cfb, 0x5cea, 0x5ce8,
- 0x5cf0, 0x5cf6, 0x5d01, 0x5cf4, 0x5dee, 0x5e2d, 0x5e2b, 0x5eab,
- 0x5ead, 0x5ea7, 0x5f31, 0x5f92, 0x5f91, 0x5f90, 0x6059, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6063, 0x6065, 0x6050, 0x6055, 0x606d, 0x6069, 0x606f,
- 0x6084, 0x609f, 0x609a, 0x608d, 0x6094, 0x608c, 0x6085, 0x6096,
- 0x6247, 0x62f3, 0x6308, 0x62ff, 0x634e, 0x633e, 0x632f, 0x6355,
- 0x6342, 0x6346, 0x634f, 0x6349, 0x633a, 0x6350, 0x633d, 0x632a,
- 0x632b, 0x6328, 0x634d, 0x634c, 0x6548, 0x6549, 0x6599, 0x65c1,
- 0x65c5, 0x6642, 0x6649, 0x664f, 0x6643, 0x6652, 0x664c, 0x6645,
- 0x6641, 0x66f8, 0x6714, 0x6715, 0x6717, 0x6821, 0x6838, 0x6848,
- 0x6846, 0x6853, 0x6839, 0x6842, 0x6854, 0x6829, 0x68b3, 0x6817,
- 0x684c, 0x6851, 0x683d, 0x67f4, 0x6850, 0x6840, 0x683c, 0x6843,
- 0x682a, 0x6845, 0x6813, 0x6818, 0x6841, 0x6b8a, 0x6b89, 0x6bb7,
- 0x6c23, 0x6c27, 0x6c28, 0x6c26, 0x6c24, 0x6cf0, 0x6d6a, 0x6d95,
- 0x6d88, 0x6d87, 0x6d66, 0x6d78, 0x6d77, 0x6d59, 0x6d93, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6d6c, 0x6d89, 0x6d6e, 0x6d5a, 0x6d74, 0x6d69, 0x6d8c, 0x6d8a,
- 0x6d79, 0x6d85, 0x6d65, 0x6d94, 0x70ca, 0x70d8, 0x70e4, 0x70d9,
- 0x70c8, 0x70cf, 0x7239, 0x7279, 0x72fc, 0x72f9, 0x72fd, 0x72f8,
- 0x72f7, 0x7386, 0x73ed, 0x7409, 0x73ee, 0x73e0, 0x73ea, 0x73de,
- 0x7554, 0x755d, 0x755c, 0x755a, 0x7559, 0x75be, 0x75c5, 0x75c7,
- 0x75b2, 0x75b3, 0x75bd, 0x75bc, 0x75b9, 0x75c2, 0x75b8, 0x768b,
- 0x76b0, 0x76ca, 0x76cd, 0x76ce, 0x7729, 0x771f, 0x7720, 0x7728,
- 0x77e9, 0x7830, 0x7827, 0x7838, 0x781d, 0x7834, 0x7837, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7825, 0x782d, 0x7820, 0x781f, 0x7832, 0x7955, 0x7950,
- 0x7960, 0x795f, 0x7956, 0x795e, 0x795d, 0x7957, 0x795a, 0x79e4,
- 0x79e3, 0x79e7, 0x79df, 0x79e6, 0x79e9, 0x79d8, 0x7a84, 0x7a88,
- 0x7ad9, 0x7b06, 0x7b11, 0x7c89, 0x7d21, 0x7d17, 0x7d0b, 0x7d0a,
- 0x7d20, 0x7d22, 0x7d14, 0x7d10, 0x7d15, 0x7d1a, 0x7d1c, 0x7d0d,
- 0x7d19, 0x7d1b, 0x7f3a, 0x7f5f, 0x7f94, 0x7fc5, 0x7fc1, 0x8006,
- 0x8018, 0x8015, 0x8019, 0x8017, 0x803d, 0x803f, 0x80f1, 0x8102,
- 0x80f0, 0x8105, 0x80ed, 0x80f4, 0x8106, 0x80f8, 0x80f3, 0x8108,
- 0x80fd, 0x810a, 0x80fc, 0x80ef, 0x81ed, 0x81ec, 0x8200, 0x8210,
- 0x822a, 0x822b, 0x8228, 0x822c, 0x82bb, 0x832b, 0x8352, 0x8354,
- 0x834a, 0x8338, 0x8350, 0x8349, 0x8335, 0x8334, 0x834f, 0x8332,
- 0x8339, 0x8336, 0x8317, 0x8340, 0x8331, 0x8328, 0x8343, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8654, 0x868a, 0x86aa, 0x8693, 0x86a4, 0x86a9, 0x868c, 0x86a3,
- 0x869c, 0x8870, 0x8877, 0x8881, 0x8882, 0x887d, 0x8879, 0x8a18,
- 0x8a10, 0x8a0e, 0x8a0c, 0x8a15, 0x8a0a, 0x8a17, 0x8a13, 0x8a16,
- 0x8a0f, 0x8a11, 0x8c48, 0x8c7a, 0x8c79, 0x8ca1, 0x8ca2, 0x8d77,
- 0x8eac, 0x8ed2, 0x8ed4, 0x8ecf, 0x8fb1, 0x9001, 0x9006, 0x8ff7,
- 0x9000, 0x8ffa, 0x8ff4, 0x9003, 0x8ffd, 0x9005, 0x8ff8, 0x9095,
- 0x90e1, 0x90dd, 0x90e2, 0x9152, 0x914d, 0x914c, 0x91d8, 0x91dd,
- 0x91d7, 0x91dc, 0x91d9, 0x9583, 0x9662, 0x9663, 0x9661, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x965b, 0x965d, 0x9664, 0x9658, 0x965e, 0x96bb, 0x98e2,
- 0x99ac, 0x9aa8, 0x9ad8, 0x9b25, 0x9b32, 0x9b3c, 0x4e7e, 0x507a,
- 0x507d, 0x505c, 0x5047, 0x5043, 0x504c, 0x505a, 0x5049, 0x5065,
- 0x5076, 0x504e, 0x5055, 0x5075, 0x5074, 0x5077, 0x504f, 0x500f,
- 0x506f, 0x506d, 0x515c, 0x5195, 0x51f0, 0x526a, 0x526f, 0x52d2,
- 0x52d9, 0x52d8, 0x52d5, 0x5310, 0x530f, 0x5319, 0x533f, 0x5340,
- 0x533e, 0x53c3, 0x66fc, 0x5546, 0x556a, 0x5566, 0x5544, 0x555e,
- 0x5561, 0x5543, 0x554a, 0x5531, 0x5556, 0x554f, 0x5555, 0x552f,
- 0x5564, 0x5538, 0x552e, 0x555c, 0x552c, 0x5563, 0x5533, 0x5541,
- 0x5557, 0x5708, 0x570b, 0x5709, 0x57df, 0x5805, 0x580a, 0x5806,
- 0x57e0, 0x57e4, 0x57fa, 0x5802, 0x5835, 0x57f7, 0x57f9, 0x5920,
- 0x5962, 0x5a36, 0x5a41, 0x5a49, 0x5a66, 0x5a6a, 0x5a40, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5a3c, 0x5a62, 0x5a5a, 0x5a46, 0x5a4a, 0x5b70, 0x5bc7, 0x5bc5,
- 0x5bc4, 0x5bc2, 0x5bbf, 0x5bc6, 0x5c09, 0x5c08, 0x5c07, 0x5c60,
- 0x5c5c, 0x5c5d, 0x5d07, 0x5d06, 0x5d0e, 0x5d1b, 0x5d16, 0x5d22,
- 0x5d11, 0x5d29, 0x5d14, 0x5d19, 0x5d24, 0x5d27, 0x5d17, 0x5de2,
- 0x5e38, 0x5e36, 0x5e33, 0x5e37, 0x5eb7, 0x5eb8, 0x5eb6, 0x5eb5,
- 0x5ebe, 0x5f35, 0x5f37, 0x5f57, 0x5f6c, 0x5f69, 0x5f6b, 0x5f97,
- 0x5f99, 0x5f9e, 0x5f98, 0x5fa1, 0x5fa0, 0x5f9c, 0x607f, 0x60a3,
- 0x6089, 0x60a0, 0x60a8, 0x60cb, 0x60b4, 0x60e6, 0x60bd, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x60c5, 0x60bb, 0x60b5, 0x60dc, 0x60bc, 0x60d8, 0x60d5,
- 0x60c6, 0x60df, 0x60b8, 0x60da, 0x60c7, 0x621a, 0x621b, 0x6248,
- 0x63a0, 0x63a7, 0x6372, 0x6396, 0x63a2, 0x63a5, 0x6377, 0x6367,
- 0x6398, 0x63aa, 0x6371, 0x63a9, 0x6389, 0x6383, 0x639b, 0x636b,
- 0x63a8, 0x6384, 0x6388, 0x6399, 0x63a1, 0x63ac, 0x6392, 0x638f,
- 0x6380, 0x637b, 0x6369, 0x6368, 0x637a, 0x655d, 0x6556, 0x6551,
- 0x6559, 0x6557, 0x555f, 0x654f, 0x6558, 0x6555, 0x6554, 0x659c,
- 0x659b, 0x65ac, 0x65cf, 0x65cb, 0x65cc, 0x65ce, 0x665d, 0x665a,
- 0x6664, 0x6668, 0x6666, 0x665e, 0x66f9, 0x52d7, 0x671b, 0x6881,
- 0x68af, 0x68a2, 0x6893, 0x68b5, 0x687f, 0x6876, 0x68b1, 0x68a7,
- 0x6897, 0x68b0, 0x6883, 0x68c4, 0x68ad, 0x6886, 0x6885, 0x6894,
- 0x689d, 0x68a8, 0x689f, 0x68a1, 0x6882, 0x6b32, 0x6bba, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6beb, 0x6bec, 0x6c2b, 0x6d8e, 0x6dbc, 0x6df3, 0x6dd9, 0x6db2,
- 0x6de1, 0x6dcc, 0x6de4, 0x6dfb, 0x6dfa, 0x6e05, 0x6dc7, 0x6dcb,
- 0x6daf, 0x6dd1, 0x6dae, 0x6dde, 0x6df9, 0x6db8, 0x6df7, 0x6df5,
- 0x6dc5, 0x6dd2, 0x6e1a, 0x6db5, 0x6dda, 0x6deb, 0x6dd8, 0x6dea,
- 0x6df1, 0x6dee, 0x6de8, 0x6dc6, 0x6dc4, 0x6daa, 0x6dec, 0x6dbf,
- 0x6de6, 0x70f9, 0x7109, 0x710a, 0x70fd, 0x70ef, 0x723d, 0x727d,
- 0x7281, 0x731c, 0x731b, 0x7316, 0x7313, 0x7319, 0x7387, 0x7405,
- 0x740a, 0x7403, 0x7406, 0x73fe, 0x740d, 0x74e0, 0x74f6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x74f7, 0x751c, 0x7522, 0x7565, 0x7566, 0x7562, 0x7570,
- 0x758f, 0x75d4, 0x75d5, 0x75b5, 0x75ca, 0x75cd, 0x768e, 0x76d4,
- 0x76d2, 0x76db, 0x7737, 0x773e, 0x773c, 0x7736, 0x7738, 0x773a,
- 0x786b, 0x7843, 0x784e, 0x7965, 0x7968, 0x796d, 0x79fb, 0x7a92,
- 0x7a95, 0x7b20, 0x7b28, 0x7b1b, 0x7b2c, 0x7b26, 0x7b19, 0x7b1e,
- 0x7b2e, 0x7c92, 0x7c97, 0x7c95, 0x7d46, 0x7d43, 0x7d71, 0x7d2e,
- 0x7d39, 0x7d3c, 0x7d40, 0x7d30, 0x7d33, 0x7d44, 0x7d2f, 0x7d42,
- 0x7d32, 0x7d31, 0x7f3d, 0x7f9e, 0x7f9a, 0x7fcc, 0x7fce, 0x7fd2,
- 0x801c, 0x804a, 0x8046, 0x812f, 0x8116, 0x8123, 0x812b, 0x8129,
- 0x8130, 0x8124, 0x8202, 0x8235, 0x8237, 0x8236, 0x8239, 0x838e,
- 0x839e, 0x8398, 0x8378, 0x83a2, 0x8396, 0x83bd, 0x83ab, 0x8392,
- 0x838a, 0x8393, 0x8389, 0x83a0, 0x8377, 0x837b, 0x837c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8386, 0x83a7, 0x8655, 0x5f6a, 0x86c7, 0x86c0, 0x86b6, 0x86c4,
- 0x86b5, 0x86c6, 0x86cb, 0x86b1, 0x86af, 0x86c9, 0x8853, 0x889e,
- 0x8888, 0x88ab, 0x8892, 0x8896, 0x888d, 0x888b, 0x8993, 0x898f,
- 0x8a2a, 0x8a1d, 0x8a23, 0x8a25, 0x8a31, 0x8a2d, 0x8a1f, 0x8a1b,
- 0x8a22, 0x8c49, 0x8c5a, 0x8ca9, 0x8cac, 0x8cab, 0x8ca8, 0x8caa,
- 0x8ca7, 0x8d67, 0x8d66, 0x8dbe, 0x8dba, 0x8edb, 0x8edf, 0x9019,
- 0x900d, 0x901a, 0x9017, 0x9023, 0x901f, 0x901d, 0x9010, 0x9015,
- 0x901e, 0x9020, 0x900f, 0x9022, 0x9016, 0x901b, 0x9014, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x90e8, 0x90ed, 0x90fd, 0x9157, 0x91ce, 0x91f5, 0x91e6,
- 0x91e3, 0x91e7, 0x91ed, 0x91e9, 0x9589, 0x966a, 0x9675, 0x9673,
- 0x9678, 0x9670, 0x9674, 0x9676, 0x9677, 0x966c, 0x96c0, 0x96ea,
- 0x96e9, 0x7ae0, 0x7adf, 0x9802, 0x9803, 0x9b5a, 0x9ce5, 0x9e75,
- 0x9e7f, 0x9ea5, 0x9ebb, 0x50a2, 0x508d, 0x5085, 0x5099, 0x5091,
- 0x5080, 0x5096, 0x5098, 0x509a, 0x6700, 0x51f1, 0x5272, 0x5274,
- 0x5275, 0x5269, 0x52de, 0x52dd, 0x52db, 0x535a, 0x53a5, 0x557b,
- 0x5580, 0x55a7, 0x557c, 0x558a, 0x559d, 0x5598, 0x5582, 0x559c,
- 0x55aa, 0x5594, 0x5587, 0x558b, 0x5583, 0x55b3, 0x55ae, 0x559f,
- 0x553e, 0x55b2, 0x559a, 0x55bb, 0x55ac, 0x55b1, 0x557e, 0x5589,
- 0x55ab, 0x5599, 0x570d, 0x582f, 0x582a, 0x5834, 0x5824, 0x5830,
- 0x5831, 0x5821, 0x581d, 0x5820, 0x58f9, 0x58fa, 0x5960, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5a77, 0x5a9a, 0x5a7f, 0x5a92, 0x5a9b, 0x5aa7, 0x5b73, 0x5b71,
- 0x5bd2, 0x5bcc, 0x5bd3, 0x5bd0, 0x5c0a, 0x5c0b, 0x5c31, 0x5d4c,
- 0x5d50, 0x5d34, 0x5d47, 0x5dfd, 0x5e45, 0x5e3d, 0x5e40, 0x5e43,
- 0x5e7e, 0x5eca, 0x5ec1, 0x5ec2, 0x5ec4, 0x5f3c, 0x5f6d, 0x5fa9,
- 0x5faa, 0x5fa8, 0x60d1, 0x60e1, 0x60b2, 0x60b6, 0x60e0, 0x611c,
- 0x6123, 0x60fa, 0x6115, 0x60f0, 0x60fb, 0x60f4, 0x6168, 0x60f1,
- 0x610e, 0x60f6, 0x6109, 0x6100, 0x6112, 0x621f, 0x6249, 0x63a3,
- 0x638c, 0x63cf, 0x63c0, 0x63e9, 0x63c9, 0x63c6, 0x63cd, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x63d2, 0x63e3, 0x63d0, 0x63e1, 0x63d6, 0x63ed, 0x63ee,
- 0x6376, 0x63f4, 0x63ea, 0x63db, 0x6452, 0x63da, 0x63f9, 0x655e,
- 0x6566, 0x6562, 0x6563, 0x6591, 0x6590, 0x65af, 0x666e, 0x6670,
- 0x6674, 0x6676, 0x666f, 0x6691, 0x667a, 0x667e, 0x6677, 0x66fe,
- 0x66ff, 0x671f, 0x671d, 0x68fa, 0x68d5, 0x68e0, 0x68d8, 0x68d7,
- 0x6905, 0x68df, 0x68f5, 0x68ee, 0x68e7, 0x68f9, 0x68d2, 0x68f2,
- 0x68e3, 0x68cb, 0x68cd, 0x690d, 0x6912, 0x690e, 0x68c9, 0x68da,
- 0x696e, 0x68fb, 0x6b3e, 0x6b3a, 0x6b3d, 0x6b98, 0x6b96, 0x6bbc,
- 0x6bef, 0x6c2e, 0x6c2f, 0x6c2c, 0x6e2f, 0x6e38, 0x6e54, 0x6e21,
- 0x6e32, 0x6e67, 0x6e4a, 0x6e20, 0x6e25, 0x6e23, 0x6e1b, 0x6e5b,
- 0x6e58, 0x6e24, 0x6e56, 0x6e6e, 0x6e2d, 0x6e26, 0x6e6f, 0x6e34,
- 0x6e4d, 0x6e3a, 0x6e2c, 0x6e43, 0x6e1d, 0x6e3e, 0x6ecb, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6e89, 0x6e19, 0x6e4e, 0x6e63, 0x6e44, 0x6e72, 0x6e69, 0x6e5f,
- 0x7119, 0x711a, 0x7126, 0x7130, 0x7121, 0x7136, 0x716e, 0x711c,
- 0x724c, 0x7284, 0x7280, 0x7336, 0x7325, 0x7334, 0x7329, 0x743a,
- 0x742a, 0x7433, 0x7422, 0x7425, 0x7435, 0x7436, 0x7434, 0x742f,
- 0x741b, 0x7426, 0x7428, 0x7525, 0x7526, 0x756b, 0x756a, 0x75e2,
- 0x75db, 0x75e3, 0x75d9, 0x75d8, 0x75de, 0x75e0, 0x767b, 0x767c,
- 0x7696, 0x7693, 0x76b4, 0x76dc, 0x774f, 0x77ed, 0x785d, 0x786c,
- 0x786f, 0x7a0d, 0x7a08, 0x7a0b, 0x7a05, 0x7a00, 0x7a98, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7a97, 0x7a96, 0x7ae5, 0x7ae3, 0x7b49, 0x7b56, 0x7b46,
- 0x7b50, 0x7b52, 0x7b54, 0x7b4d, 0x7b4b, 0x7b4f, 0x7b51, 0x7c9f,
- 0x7ca5, 0x7d5e, 0x7d50, 0x7d68, 0x7d55, 0x7d2b, 0x7d6e, 0x7d72,
- 0x7d61, 0x7d66, 0x7d62, 0x7d70, 0x7d73, 0x5584, 0x7fd4, 0x7fd5,
- 0x800b, 0x8052, 0x8085, 0x8155, 0x8154, 0x814b, 0x8151, 0x814e,
- 0x8139, 0x8146, 0x813e, 0x814c, 0x8153, 0x8174, 0x8212, 0x821c,
- 0x83e9, 0x8403, 0x83f8, 0x840d, 0x83e0, 0x83c5, 0x840b, 0x83c1,
- 0x83ef, 0x83f1, 0x83f4, 0x8457, 0x840a, 0x83f0, 0x840c, 0x83cc,
- 0x83fd, 0x83f2, 0x83ca, 0x8438, 0x840e, 0x8404, 0x83dc, 0x8407,
- 0x83d4, 0x83df, 0x865b, 0x86df, 0x86d9, 0x86ed, 0x86d4, 0x86db,
- 0x86e4, 0x86d0, 0x86de, 0x8857, 0x88c1, 0x88c2, 0x88b1, 0x8983,
- 0x8996, 0x8a3b, 0x8a60, 0x8a55, 0x8a5e, 0x8a3c, 0x8a41, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8a54, 0x8a5b, 0x8a50, 0x8a46, 0x8a34, 0x8a3a, 0x8a36, 0x8a56,
- 0x8c61, 0x8c82, 0x8caf, 0x8cbc, 0x8cb3, 0x8cbd, 0x8cc1, 0x8cbb,
- 0x8cc0, 0x8cb4, 0x8cb7, 0x8cb6, 0x8cbf, 0x8cb8, 0x8d8a, 0x8d85,
- 0x8d81, 0x8dce, 0x8ddd, 0x8dcb, 0x8dda, 0x8dd1, 0x8dcc, 0x8ddb,
- 0x8dc6, 0x8efb, 0x8ef8, 0x8efc, 0x8f9c, 0x902e, 0x9035, 0x9031,
- 0x9038, 0x9032, 0x9036, 0x9102, 0x90f5, 0x9109, 0x90fe, 0x9163,
- 0x9165, 0x91cf, 0x9214, 0x9215, 0x9223, 0x9209, 0x921e, 0x920d,
- 0x9210, 0x9207, 0x9211, 0x9594, 0x958f, 0x958b, 0x9591, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9593, 0x9592, 0x958e, 0x968a, 0x968e, 0x968b, 0x967d,
- 0x9685, 0x9686, 0x968d, 0x9672, 0x9684, 0x96c1, 0x96c5, 0x96c4,
- 0x96c6, 0x96c7, 0x96ef, 0x96f2, 0x97cc, 0x9805, 0x9806, 0x9808,
- 0x98e7, 0x98ea, 0x98ef, 0x98e9, 0x98f2, 0x98ed, 0x99ae, 0x99ad,
- 0x9ec3, 0x9ecd, 0x9ed1, 0x4e82, 0x50ad, 0x50b5, 0x50b2, 0x50b3,
- 0x50c5, 0x50be, 0x50ac, 0x50b7, 0x50bb, 0x50af, 0x50c7, 0x527f,
- 0x5277, 0x527d, 0x52df, 0x52e6, 0x52e4, 0x52e2, 0x52e3, 0x532f,
- 0x55df, 0x55e8, 0x55d3, 0x55e6, 0x55ce, 0x55dc, 0x55c7, 0x55d1,
- 0x55e3, 0x55e4, 0x55ef, 0x55da, 0x55e1, 0x55c5, 0x55c6, 0x55e5,
- 0x55c9, 0x5712, 0x5713, 0x585e, 0x5851, 0x5858, 0x5857, 0x585a,
- 0x5854, 0x586b, 0x584c, 0x586d, 0x584a, 0x5862, 0x5852, 0x584b,
- 0x5967, 0x5ac1, 0x5ac9, 0x5acc, 0x5abe, 0x5abd, 0x5abc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5ab3, 0x5ac2, 0x5ab2, 0x5d69, 0x5d6f, 0x5e4c, 0x5e79, 0x5ec9,
- 0x5ec8, 0x5f12, 0x5f59, 0x5fac, 0x5fae, 0x611a, 0x610f, 0x6148,
- 0x611f, 0x60f3, 0x611b, 0x60f9, 0x6101, 0x6108, 0x614e, 0x614c,
- 0x6144, 0x614d, 0x613e, 0x6134, 0x6127, 0x610d, 0x6106, 0x6137,
- 0x6221, 0x6222, 0x6413, 0x643e, 0x641e, 0x642a, 0x642d, 0x643d,
- 0x642c, 0x640f, 0x641c, 0x6414, 0x640d, 0x6436, 0x6416, 0x6417,
- 0x6406, 0x656c, 0x659f, 0x65b0, 0x6697, 0x6689, 0x6687, 0x6688,
- 0x6696, 0x6684, 0x6698, 0x668d, 0x6703, 0x6994, 0x696d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x695a, 0x6977, 0x6960, 0x6954, 0x6975, 0x6930, 0x6982,
- 0x694a, 0x6968, 0x696b, 0x695e, 0x6953, 0x6979, 0x6986, 0x695d,
- 0x6963, 0x695b, 0x6b47, 0x6b72, 0x6bc0, 0x6bbf, 0x6bd3, 0x6bfd,
- 0x6ea2, 0x6eaf, 0x6ed3, 0x6eb6, 0x6ec2, 0x6e90, 0x6e9d, 0x6ec7,
- 0x6ec5, 0x6ea5, 0x6e98, 0x6ebc, 0x6eba, 0x6eab, 0x6ed1, 0x6e96,
- 0x6e9c, 0x6ec4, 0x6ed4, 0x6eaa, 0x6ea7, 0x6eb4, 0x714e, 0x7159,
- 0x7169, 0x7164, 0x7149, 0x7167, 0x715c, 0x716c, 0x7166, 0x714c,
- 0x7165, 0x715e, 0x7146, 0x7168, 0x7156, 0x723a, 0x7252, 0x7337,
- 0x7345, 0x733f, 0x733e, 0x746f, 0x745a, 0x7455, 0x745f, 0x745e,
- 0x7441, 0x743f, 0x7459, 0x745b, 0x745c, 0x7576, 0x7578, 0x7600,
- 0x75f0, 0x7601, 0x75f2, 0x75f1, 0x75fa, 0x75ff, 0x75f4, 0x75f3,
- 0x76de, 0x76df, 0x775b, 0x776b, 0x7766, 0x775e, 0x7763, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7779, 0x776a, 0x776c, 0x775c, 0x7765, 0x7768, 0x7762, 0x77ee,
- 0x788e, 0x78b0, 0x7897, 0x7898, 0x788c, 0x7889, 0x787c, 0x7891,
- 0x7893, 0x787f, 0x797a, 0x797f, 0x7981, 0x842c, 0x79bd, 0x7a1c,
- 0x7a1a, 0x7a20, 0x7a14, 0x7a1f, 0x7a1e, 0x7a9f, 0x7aa0, 0x7b77,
- 0x7bc0, 0x7b60, 0x7b6e, 0x7b67, 0x7cb1, 0x7cb3, 0x7cb5, 0x7d93,
- 0x7d79, 0x7d91, 0x7d81, 0x7d8f, 0x7d5b, 0x7f6e, 0x7f69, 0x7f6a,
- 0x7f72, 0x7fa9, 0x7fa8, 0x7fa4, 0x8056, 0x8058, 0x8086, 0x8084,
- 0x8171, 0x8170, 0x8178, 0x8165, 0x816e, 0x8173, 0x816b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8179, 0x817a, 0x8166, 0x8205, 0x8247, 0x8482, 0x8477,
- 0x843d, 0x8431, 0x8475, 0x8466, 0x846b, 0x8449, 0x846c, 0x845b,
- 0x843c, 0x8435, 0x8461, 0x8463, 0x8469, 0x846d, 0x8446, 0x865e,
- 0x865c, 0x865f, 0x86f9, 0x8713, 0x8708, 0x8707, 0x8700, 0x86fe,
- 0x86fb, 0x8702, 0x8703, 0x8706, 0x870a, 0x8859, 0x88df, 0x88d4,
- 0x88d9, 0x88dc, 0x88d8, 0x88dd, 0x88e1, 0x88ca, 0x88d5, 0x88d2,
- 0x899c, 0x89e3, 0x8a6b, 0x8a72, 0x8a73, 0x8a66, 0x8a69, 0x8a70,
- 0x8a87, 0x8a7c, 0x8a63, 0x8aa0, 0x8a71, 0x8a85, 0x8a6d, 0x8a62,
- 0x8a6e, 0x8a6c, 0x8a79, 0x8a7b, 0x8a3e, 0x8a68, 0x8c62, 0x8c8a,
- 0x8c89, 0x8cca, 0x8cc7, 0x8cc8, 0x8cc4, 0x8cb2, 0x8cc3, 0x8cc2,
- 0x8cc5, 0x8de1, 0x8ddf, 0x8de8, 0x8def, 0x8df3, 0x8dfa, 0x8dea,
- 0x8de4, 0x8de6, 0x8eb2, 0x8f03, 0x8f09, 0x8efe, 0x8f0a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8f9f, 0x8fb2, 0x904b, 0x904a, 0x9053, 0x9042, 0x9054, 0x903c,
- 0x9055, 0x9050, 0x9047, 0x904f, 0x904e, 0x904d, 0x9051, 0x903e,
- 0x9041, 0x9112, 0x9117, 0x916c, 0x916a, 0x9169, 0x91c9, 0x9237,
- 0x9257, 0x9238, 0x923d, 0x9240, 0x923e, 0x925b, 0x924b, 0x9264,
- 0x9251, 0x9234, 0x9249, 0x924d, 0x9245, 0x9239, 0x923f, 0x925a,
- 0x9598, 0x9698, 0x9694, 0x9695, 0x96cd, 0x96cb, 0x96c9, 0x96ca,
- 0x96f7, 0x96fb, 0x96f9, 0x96f6, 0x9756, 0x9774, 0x9776, 0x9810,
- 0x9811, 0x9813, 0x980a, 0x9812, 0x980c, 0x98fc, 0x98f4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x98fd, 0x98fe, 0x99b3, 0x99b1, 0x99b4, 0x9ae1, 0x9ce9,
- 0x9e82, 0x9f0e, 0x9f13, 0x9f20, 0x50e7, 0x50ee, 0x50e5, 0x50d6,
- 0x50ed, 0x50da, 0x50d5, 0x50cf, 0x50d1, 0x50f1, 0x50ce, 0x50e9,
- 0x5162, 0x51f3, 0x5283, 0x5282, 0x5331, 0x53ad, 0x55fe, 0x5600,
- 0x561b, 0x5617, 0x55fd, 0x5614, 0x5606, 0x5609, 0x560d, 0x560e,
- 0x55f7, 0x5616, 0x561f, 0x5608, 0x5610, 0x55f6, 0x5718, 0x5716,
- 0x5875, 0x587e, 0x5883, 0x5893, 0x588a, 0x5879, 0x5885, 0x587d,
- 0x58fd, 0x5925, 0x5922, 0x5924, 0x596a, 0x5969, 0x5ae1, 0x5ae6,
- 0x5ae9, 0x5ad7, 0x5ad6, 0x5ad8, 0x5ae3, 0x5b75, 0x5bde, 0x5be7,
- 0x5be1, 0x5be5, 0x5be6, 0x5be8, 0x5be2, 0x5be4, 0x5bdf, 0x5c0d,
- 0x5c62, 0x5d84, 0x5d87, 0x5e5b, 0x5e63, 0x5e55, 0x5e57, 0x5e54,
- 0x5ed3, 0x5ed6, 0x5f0a, 0x5f46, 0x5f70, 0x5fb9, 0x6147, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x613f, 0x614b, 0x6177, 0x6162, 0x6163, 0x615f, 0x615a, 0x6158,
- 0x6175, 0x622a, 0x6487, 0x6458, 0x6454, 0x64a4, 0x6478, 0x645f,
- 0x647a, 0x6451, 0x6467, 0x6434, 0x646d, 0x647b, 0x6572, 0x65a1,
- 0x65d7, 0x65d6, 0x66a2, 0x66a8, 0x669d, 0x699c, 0x69a8, 0x6995,
- 0x69c1, 0x69ae, 0x69d3, 0x69cb, 0x699b, 0x69b7, 0x69bb, 0x69ab,
- 0x69b4, 0x69d0, 0x69cd, 0x69ad, 0x69cc, 0x69a6, 0x69c3, 0x69a3,
- 0x6b49, 0x6b4c, 0x6c33, 0x6f33, 0x6f14, 0x6efe, 0x6f13, 0x6ef4,
- 0x6f29, 0x6f3e, 0x6f20, 0x6f2c, 0x6f0f, 0x6f02, 0x6f22, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6eff, 0x6eef, 0x6f06, 0x6f31, 0x6f38, 0x6f32, 0x6f23,
- 0x6f15, 0x6f2b, 0x6f2f, 0x6f88, 0x6f2a, 0x6eec, 0x6f01, 0x6ef2,
- 0x6ecc, 0x6ef7, 0x7194, 0x7199, 0x717d, 0x718a, 0x7184, 0x7192,
- 0x723e, 0x7292, 0x7296, 0x7344, 0x7350, 0x7464, 0x7463, 0x746a,
- 0x7470, 0x746d, 0x7504, 0x7591, 0x7627, 0x760d, 0x760b, 0x7609,
- 0x7613, 0x76e1, 0x76e3, 0x7784, 0x777d, 0x777f, 0x7761, 0x78c1,
- 0x789f, 0x78a7, 0x78b3, 0x78a9, 0x78a3, 0x798e, 0x798f, 0x798d,
- 0x7a2e, 0x7a31, 0x7aaa, 0x7aa9, 0x7aed, 0x7aef, 0x7ba1, 0x7b95,
- 0x7b8b, 0x7b75, 0x7b97, 0x7b9d, 0x7b94, 0x7b8f, 0x7bb8, 0x7b87,
- 0x7b84, 0x7cb9, 0x7cbd, 0x7cbe, 0x7dbb, 0x7db0, 0x7d9c, 0x7dbd,
- 0x7dbe, 0x7da0, 0x7dca, 0x7db4, 0x7db2, 0x7db1, 0x7dba, 0x7da2,
- 0x7dbf, 0x7db5, 0x7db8, 0x7dad, 0x7dd2, 0x7dc7, 0x7dac, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7f70, 0x7fe0, 0x7fe1, 0x7fdf, 0x805e, 0x805a, 0x8087, 0x8150,
- 0x8180, 0x818f, 0x8188, 0x818a, 0x817f, 0x8182, 0x81e7, 0x81fa,
- 0x8207, 0x8214, 0x821e, 0x824b, 0x84c9, 0x84bf, 0x84c6, 0x84c4,
- 0x8499, 0x849e, 0x84b2, 0x849c, 0x84cb, 0x84b8, 0x84c0, 0x84d3,
- 0x8490, 0x84bc, 0x84d1, 0x84ca, 0x873f, 0x871c, 0x873b, 0x8722,
- 0x8725, 0x8734, 0x8718, 0x8755, 0x8737, 0x8729, 0x88f3, 0x8902,
- 0x88f4, 0x88f9, 0x88f8, 0x88fd, 0x88e8, 0x891a, 0x88ef, 0x8aa6,
- 0x8a8c, 0x8a9e, 0x8aa3, 0x8a8d, 0x8aa1, 0x8a93, 0x8aa4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8aaa, 0x8aa5, 0x8aa8, 0x8a98, 0x8a91, 0x8a9a, 0x8aa7,
- 0x8c6a, 0x8c8d, 0x8c8c, 0x8cd3, 0x8cd1, 0x8cd2, 0x8d6b, 0x8d99,
- 0x8d95, 0x8dfc, 0x8f14, 0x8f12, 0x8f15, 0x8f13, 0x8fa3, 0x9060,
- 0x9058, 0x905c, 0x9063, 0x9059, 0x905e, 0x9062, 0x905d, 0x905b,
- 0x9119, 0x9118, 0x911e, 0x9175, 0x9178, 0x9177, 0x9174, 0x9278,
- 0x9280, 0x9285, 0x9298, 0x9296, 0x927b, 0x9293, 0x929c, 0x92a8,
- 0x927c, 0x9291, 0x95a1, 0x95a8, 0x95a9, 0x95a3, 0x95a5, 0x95a4,
- 0x9699, 0x969c, 0x969b, 0x96cc, 0x96d2, 0x9700, 0x977c, 0x9785,
- 0x97f6, 0x9817, 0x9818, 0x98af, 0x98b1, 0x9903, 0x9905, 0x990c,
- 0x9909, 0x99c1, 0x9aaf, 0x9ab0, 0x9ae6, 0x9b41, 0x9b42, 0x9cf4,
- 0x9cf6, 0x9cf3, 0x9ebc, 0x9f3b, 0x9f4a, 0x5104, 0x5100, 0x50fb,
- 0x50f5, 0x50f9, 0x5102, 0x5108, 0x5109, 0x5105, 0x51dc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5287, 0x5288, 0x5289, 0x528d, 0x528a, 0x52f0, 0x53b2, 0x562e,
- 0x563b, 0x5639, 0x5632, 0x563f, 0x5634, 0x5629, 0x5653, 0x564e,
- 0x5657, 0x5674, 0x5636, 0x562f, 0x5630, 0x5880, 0x589f, 0x589e,
- 0x58b3, 0x589c, 0x58ae, 0x58a9, 0x58a6, 0x596d, 0x5b09, 0x5afb,
- 0x5b0b, 0x5af5, 0x5b0c, 0x5b08, 0x5bee, 0x5bec, 0x5be9, 0x5beb,
- 0x5c64, 0x5c65, 0x5d9d, 0x5d94, 0x5e62, 0x5e5f, 0x5e61, 0x5ee2,
- 0x5eda, 0x5edf, 0x5edd, 0x5ee3, 0x5ee0, 0x5f48, 0x5f71, 0x5fb7,
- 0x5fb5, 0x6176, 0x6167, 0x616e, 0x615d, 0x6155, 0x6182, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x617c, 0x6170, 0x616b, 0x617e, 0x61a7, 0x6190, 0x61ab,
- 0x618e, 0x61ac, 0x619a, 0x61a4, 0x6194, 0x61ae, 0x622e, 0x6469,
- 0x646f, 0x6479, 0x649e, 0x64b2, 0x6488, 0x6490, 0x64b0, 0x64a5,
- 0x6493, 0x6495, 0x64a9, 0x6492, 0x64ae, 0x64ad, 0x64ab, 0x649a,
- 0x64ac, 0x6499, 0x64a2, 0x64b3, 0x6575, 0x6577, 0x6578, 0x66ae,
- 0x66ab, 0x66b4, 0x66b1, 0x6a23, 0x6a1f, 0x69e8, 0x6a01, 0x6a1e,
- 0x6a19, 0x69fd, 0x6a21, 0x6a13, 0x6a0a, 0x69f3, 0x6a02, 0x6a05,
- 0x69ed, 0x6a11, 0x6b50, 0x6b4e, 0x6ba4, 0x6bc5, 0x6bc6, 0x6f3f,
- 0x6f7c, 0x6f84, 0x6f51, 0x6f66, 0x6f54, 0x6f86, 0x6f6d, 0x6f5b,
- 0x6f78, 0x6f6e, 0x6f8e, 0x6f7a, 0x6f70, 0x6f64, 0x6f97, 0x6f58,
- 0x6ed5, 0x6f6f, 0x6f60, 0x6f5f, 0x719f, 0x71ac, 0x71b1, 0x71a8,
- 0x7256, 0x729b, 0x734e, 0x7357, 0x7469, 0x748b, 0x7483, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x747e, 0x7480, 0x757f, 0x7620, 0x7629, 0x761f, 0x7624, 0x7626,
- 0x7621, 0x7622, 0x769a, 0x76ba, 0x76e4, 0x778e, 0x7787, 0x778c,
- 0x7791, 0x778b, 0x78cb, 0x78c5, 0x78ba, 0x78ca, 0x78be, 0x78d5,
- 0x78bc, 0x78d0, 0x7a3f, 0x7a3c, 0x7a40, 0x7a3d, 0x7a37, 0x7a3b,
- 0x7aaf, 0x7aae, 0x7bad, 0x7bb1, 0x7bc4, 0x7bb4, 0x7bc6, 0x7bc7,
- 0x7bc1, 0x7ba0, 0x7bcc, 0x7cca, 0x7de0, 0x7df4, 0x7def, 0x7dfb,
- 0x7dd8, 0x7dec, 0x7ddd, 0x7de8, 0x7de3, 0x7dda, 0x7dde, 0x7de9,
- 0x7d9e, 0x7dd9, 0x7df2, 0x7df9, 0x7f75, 0x7f77, 0x7faf, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7fe9, 0x8026, 0x819b, 0x819c, 0x819d, 0x81a0, 0x819a,
- 0x8198, 0x8517, 0x853d, 0x851a, 0x84ee, 0x852c, 0x852d, 0x8513,
- 0x8511, 0x8523, 0x8521, 0x8514, 0x84ec, 0x8525, 0x84ff, 0x8506,
- 0x8782, 0x8774, 0x8776, 0x8760, 0x8766, 0x8778, 0x8768, 0x8759,
- 0x8757, 0x874c, 0x8753, 0x885b, 0x885d, 0x8910, 0x8907, 0x8912,
- 0x8913, 0x8915, 0x890a, 0x8abc, 0x8ad2, 0x8ac7, 0x8ac4, 0x8a95,
- 0x8acb, 0x8af8, 0x8ab2, 0x8ac9, 0x8ac2, 0x8abf, 0x8ab0, 0x8ad6,
- 0x8acd, 0x8ab6, 0x8ab9, 0x8adb, 0x8c4c, 0x8c4e, 0x8c6c, 0x8ce0,
- 0x8cde, 0x8ce6, 0x8ce4, 0x8cec, 0x8ced, 0x8ce2, 0x8ce3, 0x8cdc,
- 0x8cea, 0x8ce1, 0x8d6d, 0x8d9f, 0x8da3, 0x8e2b, 0x8e10, 0x8e1d,
- 0x8e22, 0x8e0f, 0x8e29, 0x8e1f, 0x8e21, 0x8e1e, 0x8eba, 0x8f1d,
- 0x8f1b, 0x8f1f, 0x8f29, 0x8f26, 0x8f2a, 0x8f1c, 0x8f1e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8f25, 0x9069, 0x906e, 0x9068, 0x906d, 0x9077, 0x9130, 0x912d,
- 0x9127, 0x9131, 0x9187, 0x9189, 0x918b, 0x9183, 0x92c5, 0x92bb,
- 0x92b7, 0x92ea, 0x92ac, 0x92e4, 0x92c1, 0x92b3, 0x92bc, 0x92d2,
- 0x92c7, 0x92f0, 0x92b2, 0x95ad, 0x95b1, 0x9704, 0x9706, 0x9707,
- 0x9709, 0x9760, 0x978d, 0x978b, 0x978f, 0x9821, 0x982b, 0x981c,
- 0x98b3, 0x990a, 0x9913, 0x9912, 0x9918, 0x99dd, 0x99d0, 0x99df,
- 0x99db, 0x99d1, 0x99d5, 0x99d2, 0x99d9, 0x9ab7, 0x9aee, 0x9aef,
- 0x9b27, 0x9b45, 0x9b44, 0x9b77, 0x9b6f, 0x9d06, 0x9d09, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9d03, 0x9ea9, 0x9ebe, 0x9ece, 0x58a8, 0x9f52, 0x5112,
- 0x5118, 0x5114, 0x5110, 0x5115, 0x5180, 0x51aa, 0x51dd, 0x5291,
- 0x5293, 0x52f3, 0x5659, 0x566b, 0x5679, 0x5669, 0x5664, 0x5678,
- 0x566a, 0x5668, 0x5665, 0x5671, 0x566f, 0x566c, 0x5662, 0x5676,
- 0x58c1, 0x58be, 0x58c7, 0x58c5, 0x596e, 0x5b1d, 0x5b34, 0x5b78,
- 0x5bf0, 0x5c0e, 0x5f4a, 0x61b2, 0x6191, 0x61a9, 0x618a, 0x61cd,
- 0x61b6, 0x61be, 0x61ca, 0x61c8, 0x6230, 0x64c5, 0x64c1, 0x64cb,
- 0x64bb, 0x64bc, 0x64da, 0x64c4, 0x64c7, 0x64c2, 0x64cd, 0x64bf,
- 0x64d2, 0x64d4, 0x64be, 0x6574, 0x66c6, 0x66c9, 0x66b9, 0x66c4,
- 0x66c7, 0x66b8, 0x6a3d, 0x6a38, 0x6a3a, 0x6a59, 0x6a6b, 0x6a58,
- 0x6a39, 0x6a44, 0x6a62, 0x6a61, 0x6a4b, 0x6a47, 0x6a35, 0x6a5f,
- 0x6a48, 0x6b59, 0x6b77, 0x6c05, 0x6fc2, 0x6fb1, 0x6fa1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6fc3, 0x6fa4, 0x6fc1, 0x6fa7, 0x6fb3, 0x6fc0, 0x6fb9, 0x6fb6,
- 0x6fa6, 0x6fa0, 0x6fb4, 0x71be, 0x71c9, 0x71d0, 0x71d2, 0x71c8,
- 0x71d5, 0x71b9, 0x71ce, 0x71d9, 0x71dc, 0x71c3, 0x71c4, 0x7368,
- 0x749c, 0x74a3, 0x7498, 0x749f, 0x749e, 0x74e2, 0x750c, 0x750d,
- 0x7634, 0x7638, 0x763a, 0x76e7, 0x76e5, 0x77a0, 0x779e, 0x779f,
- 0x77a5, 0x78e8, 0x78da, 0x78ec, 0x78e7, 0x79a6, 0x7a4d, 0x7a4e,
- 0x7a46, 0x7a4c, 0x7a4b, 0x7aba, 0x7bd9, 0x7c11, 0x7bc9, 0x7be4,
- 0x7bdb, 0x7be1, 0x7be9, 0x7be6, 0x7cd5, 0x7cd6, 0x7e0a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7e11, 0x7e08, 0x7e1b, 0x7e23, 0x7e1e, 0x7e1d, 0x7e09,
- 0x7e10, 0x7f79, 0x7fb2, 0x7ff0, 0x7ff1, 0x7fee, 0x8028, 0x81b3,
- 0x81a9, 0x81a8, 0x81fb, 0x8208, 0x8258, 0x8259, 0x854a, 0x8559,
- 0x8548, 0x8568, 0x8569, 0x8543, 0x8549, 0x856d, 0x856a, 0x855e,
- 0x8783, 0x879f, 0x879e, 0x87a2, 0x878d, 0x8861, 0x892a, 0x8932,
- 0x8925, 0x892b, 0x8921, 0x89aa, 0x89a6, 0x8ae6, 0x8afa, 0x8aeb,
- 0x8af1, 0x8b00, 0x8adc, 0x8ae7, 0x8aee, 0x8afe, 0x8b01, 0x8b02,
- 0x8af7, 0x8aed, 0x8af3, 0x8af6, 0x8afc, 0x8c6b, 0x8c6d, 0x8c93,
- 0x8cf4, 0x8e44, 0x8e31, 0x8e34, 0x8e42, 0x8e39, 0x8e35, 0x8f3b,
- 0x8f2f, 0x8f38, 0x8f33, 0x8fa8, 0x8fa6, 0x9075, 0x9074, 0x9078,
- 0x9072, 0x907c, 0x907a, 0x9134, 0x9192, 0x9320, 0x9336, 0x92f8,
- 0x9333, 0x932f, 0x9322, 0x92fc, 0x932b, 0x9304, 0x931a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x9310, 0x9326, 0x9321, 0x9315, 0x932e, 0x9319, 0x95bb, 0x96a7,
- 0x96a8, 0x96aa, 0x96d5, 0x970e, 0x9711, 0x9716, 0x970d, 0x9713,
- 0x970f, 0x975b, 0x975c, 0x9766, 0x9798, 0x9830, 0x9838, 0x983b,
- 0x9837, 0x982d, 0x9839, 0x9824, 0x9910, 0x9928, 0x991e, 0x991b,
- 0x9921, 0x991a, 0x99ed, 0x99e2, 0x99f1, 0x9ab8, 0x9abc, 0x9afb,
- 0x9aed, 0x9b28, 0x9b91, 0x9d15, 0x9d23, 0x9d26, 0x9d28, 0x9d12,
- 0x9d1b, 0x9ed8, 0x9ed4, 0x9f8d, 0x9f9c, 0x512a, 0x511f, 0x5121,
- 0x5132, 0x52f5, 0x568e, 0x5680, 0x5690, 0x5685, 0x5687, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x568f, 0x58d5, 0x58d3, 0x58d1, 0x58ce, 0x5b30, 0x5b2a,
- 0x5b24, 0x5b7a, 0x5c37, 0x5c68, 0x5dbc, 0x5dba, 0x5dbd, 0x5db8,
- 0x5e6b, 0x5f4c, 0x5fbd, 0x61c9, 0x61c2, 0x61c7, 0x61e6, 0x61cb,
- 0x6232, 0x6234, 0x64ce, 0x64ca, 0x64d8, 0x64e0, 0x64f0, 0x64e6,
- 0x64ec, 0x64f1, 0x64e2, 0x64ed, 0x6582, 0x6583, 0x66d9, 0x66d6,
- 0x6a80, 0x6a94, 0x6a84, 0x6aa2, 0x6a9c, 0x6adb, 0x6aa3, 0x6a7e,
- 0x6a97, 0x6a90, 0x6aa0, 0x6b5c, 0x6bae, 0x6bda, 0x6c08, 0x6fd8,
- 0x6ff1, 0x6fdf, 0x6fe0, 0x6fdb, 0x6fe4, 0x6feb, 0x6fef, 0x6f80,
- 0x6fec, 0x6fe1, 0x6fe9, 0x6fd5, 0x6fee, 0x6ff0, 0x71e7, 0x71df,
- 0x71ee, 0x71e6, 0x71e5, 0x71ed, 0x71ec, 0x71f4, 0x71e0, 0x7235,
- 0x7246, 0x7370, 0x7372, 0x74a9, 0x74b0, 0x74a6, 0x74a8, 0x7646,
- 0x7642, 0x764c, 0x76ea, 0x77b3, 0x77aa, 0x77b0, 0x77ac, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x77a7, 0x77ad, 0x77ef, 0x78f7, 0x78fa, 0x78f4, 0x78ef, 0x7901,
- 0x79a7, 0x79aa, 0x7a57, 0x7abf, 0x7c07, 0x7c0d, 0x7bfe, 0x7bf7,
- 0x7c0c, 0x7be0, 0x7ce0, 0x7cdc, 0x7cde, 0x7ce2, 0x7cdf, 0x7cd9,
- 0x7cdd, 0x7e2e, 0x7e3e, 0x7e46, 0x7e37, 0x7e32, 0x7e43, 0x7e2b,
- 0x7e3d, 0x7e31, 0x7e45, 0x7e41, 0x7e34, 0x7e39, 0x7e48, 0x7e35,
- 0x7e3f, 0x7e2f, 0x7f44, 0x7ff3, 0x7ffc, 0x8071, 0x8072, 0x8070,
- 0x806f, 0x8073, 0x81c6, 0x81c3, 0x81ba, 0x81c2, 0x81c0, 0x81bf,
- 0x81bd, 0x81c9, 0x81be, 0x81e8, 0x8209, 0x8271, 0x85aa, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8584, 0x857e, 0x859c, 0x8591, 0x8594, 0x85af, 0x859b,
- 0x8587, 0x85a8, 0x858a, 0x8667, 0x87c0, 0x87d1, 0x87b3, 0x87d2,
- 0x87c6, 0x87ab, 0x87bb, 0x87ba, 0x87c8, 0x87cb, 0x893b, 0x8936,
- 0x8944, 0x8938, 0x893d, 0x89ac, 0x8b0e, 0x8b17, 0x8b19, 0x8b1b,
- 0x8b0a, 0x8b20, 0x8b1d, 0x8b04, 0x8b10, 0x8c41, 0x8c3f, 0x8c73,
- 0x8cfa, 0x8cfd, 0x8cfc, 0x8cf8, 0x8cfb, 0x8da8, 0x8e49, 0x8e4b,
- 0x8e48, 0x8e4a, 0x8f44, 0x8f3e, 0x8f42, 0x8f45, 0x8f3f, 0x907f,
- 0x907d, 0x9084, 0x9081, 0x9082, 0x9080, 0x9139, 0x91a3, 0x919e,
- 0x919c, 0x934d, 0x9382, 0x9328, 0x9375, 0x934a, 0x9365, 0x934b,
- 0x9318, 0x937e, 0x936c, 0x935b, 0x9370, 0x935a, 0x9354, 0x95ca,
- 0x95cb, 0x95cc, 0x95c8, 0x95c6, 0x96b1, 0x96b8, 0x96d6, 0x971c,
- 0x971e, 0x97a0, 0x97d3, 0x9846, 0x98b6, 0x9935, 0x9a01, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x99ff, 0x9bae, 0x9bab, 0x9baa, 0x9bad, 0x9d3b, 0x9d3f, 0x9e8b,
- 0x9ecf, 0x9ede, 0x9edc, 0x9edd, 0x9edb, 0x9f3e, 0x9f4b, 0x53e2,
- 0x5695, 0x56ae, 0x58d9, 0x58d8, 0x5b38, 0x5f5d, 0x61e3, 0x6233,
- 0x64f4, 0x64f2, 0x64fe, 0x6506, 0x64fa, 0x64fb, 0x64f7, 0x65b7,
- 0x66dc, 0x6726, 0x6ab3, 0x6aac, 0x6ac3, 0x6abb, 0x6ab8, 0x6ac2,
- 0x6aae, 0x6aaf, 0x6b5f, 0x6b78, 0x6baf, 0x7009, 0x700b, 0x6ffe,
- 0x7006, 0x6ffa, 0x7011, 0x700f, 0x71fb, 0x71fc, 0x71fe, 0x71f8,
- 0x7377, 0x7375, 0x74a7, 0x74bf, 0x7515, 0x7656, 0x7658, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7652, 0x77bd, 0x77bf, 0x77bb, 0x77bc, 0x790e, 0x79ae,
- 0x7a61, 0x7a62, 0x7a60, 0x7ac4, 0x7ac5, 0x7c2b, 0x7c27, 0x7c2a,
- 0x7c1e, 0x7c23, 0x7c21, 0x7ce7, 0x7e54, 0x7e55, 0x7e5e, 0x7e5a,
- 0x7e61, 0x7e52, 0x7e59, 0x7f48, 0x7ff9, 0x7ffb, 0x8077, 0x8076,
- 0x81cd, 0x81cf, 0x820a, 0x85cf, 0x85a9, 0x85cd, 0x85d0, 0x85c9,
- 0x85b0, 0x85ba, 0x85b9, 0x85a6, 0x87ef, 0x87ec, 0x87f2, 0x87e0,
- 0x8986, 0x89b2, 0x89f4, 0x8b28, 0x8b39, 0x8b2c, 0x8b2b, 0x8c50,
- 0x8d05, 0x8e59, 0x8e63, 0x8e66, 0x8e64, 0x8e5f, 0x8e55, 0x8ec0,
- 0x8f49, 0x8f4d, 0x9087, 0x9083, 0x9088, 0x91ab, 0x91ac, 0x91d0,
- 0x9394, 0x938a, 0x9396, 0x93a2, 0x93b3, 0x93ae, 0x93ac, 0x93b0,
- 0x9398, 0x939a, 0x9397, 0x95d4, 0x95d6, 0x95d0, 0x95d5, 0x96e2,
- 0x96dc, 0x96d9, 0x96db, 0x96de, 0x9724, 0x97a3, 0x97a6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x97ad, 0x97f9, 0x984d, 0x984f, 0x984c, 0x984e, 0x9853, 0x98ba,
- 0x993e, 0x993f, 0x993d, 0x992e, 0x99a5, 0x9a0e, 0x9ac1, 0x9b03,
- 0x9b06, 0x9b4f, 0x9b4e, 0x9b4d, 0x9bca, 0x9bc9, 0x9bfd, 0x9bc8,
- 0x9bc0, 0x9d51, 0x9d5d, 0x9d60, 0x9ee0, 0x9f15, 0x9f2c, 0x5133,
- 0x56a5, 0x58de, 0x58df, 0x58e2, 0x5bf5, 0x9f90, 0x5eec, 0x61f2,
- 0x61f7, 0x61f6, 0x61f5, 0x6500, 0x650f, 0x66e0, 0x66dd, 0x6ae5,
- 0x6add, 0x6ada, 0x6ad3, 0x701b, 0x701f, 0x7028, 0x701a, 0x701d,
- 0x7015, 0x7018, 0x7206, 0x720d, 0x7258, 0x72a2, 0x7378, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x737a, 0x74bd, 0x74ca, 0x74e3, 0x7587, 0x7586, 0x765f,
- 0x7661, 0x77c7, 0x7919, 0x79b1, 0x7a6b, 0x7a69, 0x7c3e, 0x7c3f,
- 0x7c38, 0x7c3d, 0x7c37, 0x7c40, 0x7e6b, 0x7e6d, 0x7e79, 0x7e69,
- 0x7e6a, 0x7f85, 0x7e73, 0x7fb6, 0x7fb9, 0x7fb8, 0x81d8, 0x85e9,
- 0x85dd, 0x85ea, 0x85d5, 0x85e4, 0x85e5, 0x85f7, 0x87fb, 0x8805,
- 0x880d, 0x87f9, 0x87fe, 0x8960, 0x895f, 0x8956, 0x895e, 0x8b41,
- 0x8b5c, 0x8b58, 0x8b49, 0x8b5a, 0x8b4e, 0x8b4f, 0x8b46, 0x8b59,
- 0x8d08, 0x8d0a, 0x8e7c, 0x8e72, 0x8e87, 0x8e76, 0x8e6c, 0x8e7a,
- 0x8e74, 0x8f54, 0x8f4e, 0x8fad, 0x908a, 0x908b, 0x91b1, 0x91ae,
- 0x93e1, 0x93d1, 0x93df, 0x93c3, 0x93c8, 0x93dc, 0x93dd, 0x93d6,
- 0x93e2, 0x93cd, 0x93d8, 0x93e4, 0x93d7, 0x93e8, 0x95dc, 0x96b4,
- 0x96e3, 0x972a, 0x9727, 0x9761, 0x97dc, 0x97fb, 0x985e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x9858, 0x985b, 0x98bc, 0x9945, 0x9949, 0x9a16, 0x9a19, 0x9b0d,
- 0x9be8, 0x9be7, 0x9bd6, 0x9bdb, 0x9d89, 0x9d61, 0x9d72, 0x9d6a,
- 0x9d6c, 0x9e92, 0x9e97, 0x9e93, 0x9eb4, 0x52f8, 0x56a8, 0x56b7,
- 0x56b6, 0x56b4, 0x56bc, 0x58e4, 0x5b40, 0x5b43, 0x5b7d, 0x5bf6,
- 0x5dc9, 0x61f8, 0x61fa, 0x6518, 0x6514, 0x6519, 0x66e6, 0x6727,
- 0x6aec, 0x703e, 0x7030, 0x7032, 0x7210, 0x737b, 0x74cf, 0x7662,
- 0x7665, 0x7926, 0x792a, 0x792c, 0x792b, 0x7ac7, 0x7af6, 0x7c4c,
- 0x7c43, 0x7c4d, 0x7cef, 0x7cf0, 0x8fae, 0x7e7d, 0x7e7c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7e82, 0x7f4c, 0x8000, 0x81da, 0x8266, 0x85fb, 0x85f9,
- 0x8611, 0x85fa, 0x8606, 0x860b, 0x8607, 0x860a, 0x8814, 0x8815,
- 0x8964, 0x89ba, 0x89f8, 0x8b70, 0x8b6c, 0x8b66, 0x8b6f, 0x8b5f,
- 0x8b6b, 0x8d0f, 0x8d0d, 0x8e89, 0x8e81, 0x8e85, 0x8e82, 0x91b4,
- 0x91cb, 0x9418, 0x9403, 0x93fd, 0x95e1, 0x9730, 0x98c4, 0x9952,
- 0x9951, 0x99a8, 0x9a2b, 0x9a30, 0x9a37, 0x9a35, 0x9c13, 0x9c0d,
- 0x9e79, 0x9eb5, 0x9ee8, 0x9f2f, 0x9f5f, 0x9f63, 0x9f61, 0x5137,
- 0x5138, 0x56c1, 0x56c0, 0x56c2, 0x5914, 0x5c6c, 0x5dcd, 0x61fc,
- 0x61fe, 0x651d, 0x651c, 0x6595, 0x66e9, 0x6afb, 0x6b04, 0x6afa,
- 0x6bb2, 0x704c, 0x721b, 0x72a7, 0x74d6, 0x74d4, 0x7669, 0x77d3,
- 0x7c50, 0x7e8f, 0x7e8c, 0x7fbc, 0x8617, 0x862d, 0x861a, 0x8823,
- 0x8822, 0x8821, 0x881f, 0x896a, 0x896c, 0x89bd, 0x8b74, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8b77, 0x8b7d, 0x8d13, 0x8e8a, 0x8e8d, 0x8e8b, 0x8f5f, 0x8faf,
- 0x91ba, 0x942e, 0x9433, 0x9435, 0x943a, 0x9438, 0x9432, 0x942b,
- 0x95e2, 0x9738, 0x9739, 0x9732, 0x97ff, 0x9867, 0x9865, 0x9957,
- 0x9a45, 0x9a43, 0x9a40, 0x9a3e, 0x9acf, 0x9b54, 0x9b51, 0x9c2d,
- 0x9c25, 0x9daf, 0x9db4, 0x9dc2, 0x9db8, 0x9e9d, 0x9eef, 0x9f19,
- 0x9f5c, 0x9f66, 0x9f67, 0x513c, 0x513b, 0x56c8, 0x56ca, 0x56c9,
- 0x5b7f, 0x5dd4, 0x5dd2, 0x5f4e, 0x61ff, 0x6524, 0x6b0a, 0x6b61,
- 0x7051, 0x7058, 0x7380, 0x74e4, 0x758a, 0x766e, 0x766c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x79b3, 0x7c60, 0x7c5f, 0x807e, 0x807d, 0x81df, 0x8972,
- 0x896f, 0x89fc, 0x8b80, 0x8d16, 0x8d17, 0x8e91, 0x8e93, 0x8f61,
- 0x9148, 0x9444, 0x9451, 0x9452, 0x973d, 0x973e, 0x97c3, 0x97c1,
- 0x986b, 0x9955, 0x9a55, 0x9a4d, 0x9ad2, 0x9b1a, 0x9c49, 0x9c31,
- 0x9c3e, 0x9c3b, 0x9dd3, 0x9dd7, 0x9f34, 0x9f6c, 0x9f6a, 0x9f94,
- 0x56cc, 0x5dd6, 0x6200, 0x6523, 0x652b, 0x652a, 0x66ec, 0x6b10,
- 0x74da, 0x7aca, 0x7c64, 0x7c63, 0x7c65, 0x7e93, 0x7e96, 0x7e94,
- 0x81e2, 0x8638, 0x863f, 0x8831, 0x8b8a, 0x9090, 0x908f, 0x9463,
- 0x9460, 0x9464, 0x9768, 0x986f, 0x995c, 0x9a5a, 0x9a5b, 0x9a57,
- 0x9ad3, 0x9ad4, 0x9ad1, 0x9c54, 0x9c57, 0x9c56, 0x9de5, 0x9e9f,
- 0x9ef4, 0x56d1, 0x58e9, 0x652c, 0x705e, 0x7671, 0x7672, 0x77d7,
- 0x7f50, 0x7f88, 0x8836, 0x8839, 0x8862, 0x8b93, 0x8b92, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8b96, 0x8277, 0x8d1b, 0x91c0, 0x946a, 0x9742, 0x9748, 0x9744,
- 0x97c6, 0x9870, 0x9a5f, 0x9b22, 0x9b58, 0x9c5f, 0x9df9, 0x9dfa,
- 0x9e7c, 0x9e7d, 0x9f07, 0x9f77, 0x9f72, 0x5ef3, 0x6b16, 0x7063,
- 0x7c6c, 0x7c6e, 0x883b, 0x89c0, 0x8ea1, 0x91c1, 0x9472, 0x9470,
- 0x9871, 0x995e, 0x9ad6, 0x9b23, 0x9ecc, 0x7064, 0x77da, 0x8b9a,
- 0x9477, 0x97c9, 0x9a62, 0x9a65, 0x7e9c, 0x8b9c, 0x8eaa, 0x91c5,
- 0x947d, 0x947e, 0x947c, 0x9c77, 0x9c78, 0x9ef7, 0x8c54, 0x947f,
- 0x9e1a, 0x7228, 0x9a6a, 0x9b31, 0x9e1b, 0x9e1e, 0x7c72, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466,
- 0x2467, 0x2468, 0x2469, 0x2474, 0x2475, 0x2476, 0x2477, 0x2478,
- 0x2479, 0x247a, 0x247b, 0x247c, 0x247d, 0x2170, 0x2171, 0x2172,
- 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, 0x4e36,
- 0x4e3f, 0x4e85, 0x4ea0, 0x5182, 0x5196, 0x51ab, 0x52f9, 0x5338,
- 0x5369, 0x53b6, 0x590a, 0x5b80, 0x5ddb, 0x2f33, 0x5e7f, 0xf6df,
- 0x5f50, 0x5f61, 0x6534, 0xf6e3, 0x7592, 0xf6e5, 0x8fb5, 0xf6e7,
- 0x00a8, 0x02c6, 0x30fd, 0x30fe, 0x309d, 0x309e, 0xf6ee, 0xf6ef,
- 0x3005, 0x3006, 0x3007, 0x30fc, 0xff3b, 0xff3d, 0x273d, 0x3041,
- 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, 0x3047, 0x3048, 0x3049,
- 0x304a, 0x304b, 0x304c, 0x304d, 0x304e, 0x304f, 0x3050, 0x3051,
- 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, 0x3057, 0x3058, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x3059, 0x305a, 0x305b, 0x305c, 0x305d, 0x305e, 0x305f, 0x3060,
- 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, 0x3067, 0x3068,
- 0x3069, 0x306a, 0x306b, 0x306c, 0x306d, 0x306e, 0x306f, 0x3070,
- 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, 0x3077, 0x3078,
- 0x3079, 0x307a, 0x307b, 0x307c, 0x307d, 0x307e, 0x307f, 0x3080,
- 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, 0x3087, 0x3088,
- 0x3089, 0x308a, 0x308b, 0x308c, 0x308d, 0x308e, 0x308f, 0x3090,
- 0x3091, 0x3092, 0x3093, 0x30a1, 0x30a2, 0x30a3, 0x30a4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x30a5, 0x30a6, 0x30a7, 0x30a8, 0x30a9, 0x30aa, 0x30ab,
- 0x30ac, 0x30ad, 0x30ae, 0x30af, 0x30b0, 0x30b1, 0x30b2, 0x30b3,
- 0x30b4, 0x30b5, 0x30b6, 0x30b7, 0x30b8, 0x30b9, 0x30ba, 0x30bb,
- 0x30bc, 0x30bd, 0x30be, 0x30bf, 0x30c0, 0x30c1, 0x30c2, 0x30c3,
- 0x30c4, 0x30c5, 0x30c6, 0x30c7, 0x30c8, 0x30c9, 0x30ca, 0x30cb,
- 0x30cc, 0x30cd, 0x30ce, 0x30cf, 0x30d0, 0x30d1, 0x30d2, 0x30d3,
- 0x30d4, 0x30d5, 0x30d6, 0x30d7, 0x30d8, 0x30d9, 0x30da, 0x30db,
- 0x30dc, 0x30dd, 0x30de, 0x30df, 0x30e0, 0x30e1, 0x30e2, 0x30e3,
- 0x30e4, 0x30e5, 0x30e6, 0x30e7, 0x30e8, 0x30e9, 0x30ea, 0x30eb,
- 0x30ec, 0x30ed, 0x30ee, 0x30ef, 0x30f0, 0x30f1, 0x30f2, 0x30f3,
- 0x30f4, 0x30f5, 0x30f6, 0x0410, 0x0411, 0x0412, 0x0413, 0x0414,
- 0x0415, 0x0401, 0x0416, 0x0417, 0x0418, 0x0419, 0x041a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x041b, 0x041c, 0x041d, 0x041e, 0x041f, 0x0420, 0x0421, 0x0422,
- 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428, 0x0429, 0x042a,
- 0x042b, 0x042c, 0x042d, 0x042e, 0x042f, 0x0430, 0x0431, 0x0432,
- 0x0433, 0x0434, 0x0435, 0x0451, 0x0436, 0x0437, 0x0438, 0x0439,
- 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f, 0x0440, 0x0441,
- 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, 0x0448, 0x0449,
- 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f, 0x21e7, 0x21b8,
- 0x21b9, 0xf7e5, 0xf7e6, 0x4e5a, 0xf7e8, 0x5202, 0xf7ea, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xf7eb, 0x5188, 0xf7ed, 0xf7ee, 0xf7ef, 0xf7f0, 0xf7f1,
- 0xf7f2, 0xf7f3, 0xf7f4, 0xf7f5, 0xf7f6, 0xf7f7, 0xf7f8, 0xf7f9,
- 0xf7fa, 0xf7fb, 0xf7fc, 0xf7fd, 0xf7fe, 0xf7ff, 0xf800, 0xf801,
- 0xf802, 0xf803, 0xf804, 0xf805, 0xf806, 0xf807, 0xf808, 0xf809,
- 0xf80a, 0xf80b, 0xf80c, 0xf80d, 0xf80e, 0xf80f, 0xf810, 0xf811,
- 0xf812, 0xf813, 0xf814, 0xf815, 0xf816, 0xffe2, 0xffe4, 0xff07,
- 0xff02, 0x3231, 0x2116, 0x2121, 0x309b, 0x309c, 0x2e80, 0x2e84,
- 0x2e86, 0x2e87, 0x2e88, 0x2e8a, 0x2e8c, 0x2e8d, 0x2e95, 0x2e9c,
- 0x2e9d, 0x2ea5, 0x2ea7, 0x2eaa, 0x2eac, 0x2eae, 0x2eb6, 0x2ebc,
- 0x2ebe, 0x2ec6, 0x2eca, 0x2ecc, 0x2ecd, 0x2ecf, 0x2ed6, 0x2ed7,
- 0x2ede, 0x2ee3, 0xf83c, 0xf83d, 0xf83e, 0x0283, 0x0250, 0x025b,
- 0x0254, 0x0275, 0x0153, 0x00f8, 0x014b, 0x028a, 0x026a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4e42, 0x4e5c, 0x51f5, 0x531a, 0x5382, 0x4e07, 0x4e0c, 0x4e47,
- 0x4e8d, 0x56d7, 0xfa0c, 0x5c6e, 0x5f73, 0x4e0f, 0x5187, 0x4e0e,
- 0x4e2e, 0x4e93, 0x4ec2, 0x4ec9, 0x4ec8, 0x5198, 0x52fc, 0x536c,
- 0x53b9, 0x5720, 0x5903, 0x592c, 0x5c10, 0x5dff, 0x65e1, 0x6bb3,
- 0x6bcc, 0x6c14, 0x723f, 0x4e31, 0x4e3c, 0x4ee8, 0x4edc, 0x4ee9,
- 0x4ee1, 0x4edd, 0x4eda, 0x520c, 0x531c, 0x534c, 0x5722, 0x5723,
- 0x5917, 0x592f, 0x5b81, 0x5b84, 0x5c12, 0x5c3b, 0x5c74, 0x5c73,
- 0x5e04, 0x5e80, 0x5e82, 0x5fc9, 0x6209, 0x6250, 0x6c15, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6c36, 0x6c43, 0x6c3f, 0x6c3b, 0x72ae, 0x72b0, 0x738a,
- 0x79b8, 0x808a, 0x961e, 0x4f0e, 0x4f18, 0x4f2c, 0x4ef5, 0x4f14,
- 0x4ef1, 0x4f00, 0x4ef7, 0x4f08, 0x4f1d, 0x4f02, 0x4f05, 0x4f22,
- 0x4f13, 0x4f04, 0x4ef4, 0x4f12, 0x51b1, 0x5213, 0x5209, 0x5210,
- 0x52a6, 0x5322, 0x531f, 0x534d, 0x538a, 0x5407, 0x56e1, 0x56df,
- 0x572e, 0x572a, 0x5734, 0x593c, 0x5980, 0x597c, 0x5985, 0x597b,
- 0x597e, 0x5977, 0x597f, 0x5b56, 0x5c15, 0x5c25, 0x5c7c, 0x5c7a,
- 0x5c7b, 0x5c7e, 0x5ddf, 0x5e75, 0x5e84, 0x5f02, 0x5f1a, 0x5f74,
- 0x5fd5, 0x5fd4, 0x5fcf, 0x625c, 0x625e, 0x6264, 0x6261, 0x6266,
- 0x6262, 0x6259, 0x6260, 0x625a, 0x6265, 0x65ef, 0x65ee, 0x673e,
- 0x6739, 0x6738, 0x673b, 0x673a, 0x673f, 0x673c, 0x6733, 0x6c18,
- 0x6c46, 0x6c52, 0x6c5c, 0x6c4f, 0x6c4a, 0x6c54, 0x6c4b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6c4c, 0x7071, 0x725e, 0x72b4, 0x72b5, 0x738e, 0x752a, 0x767f,
- 0x7a75, 0x7f51, 0x8278, 0x827c, 0x8280, 0x827d, 0x827f, 0x864d,
- 0x897e, 0x9099, 0x9097, 0x9098, 0x909b, 0x9094, 0x9622, 0x9624,
- 0x9620, 0x9623, 0x4f56, 0x4f3b, 0x4f62, 0x4f49, 0x4f53, 0x4f64,
- 0x4f3e, 0x4f67, 0x4f52, 0x4f5f, 0x4f41, 0x4f58, 0x4f2d, 0x4f33,
- 0x4f3f, 0x4f61, 0x518f, 0x51b9, 0x521c, 0x521e, 0x5221, 0x52ad,
- 0x52ae, 0x5309, 0x5363, 0x5372, 0x538e, 0x538f, 0x5430, 0x5437,
- 0x542a, 0x5454, 0x5445, 0x5419, 0x541c, 0x5425, 0x5418, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x543d, 0x544f, 0x5441, 0x5428, 0x5424, 0x5447, 0x56ee,
- 0x56e7, 0x56e5, 0x5741, 0x5745, 0x574c, 0x5749, 0x574b, 0x5752,
- 0x5906, 0x5940, 0x59a6, 0x5998, 0x59a0, 0x5997, 0x598e, 0x59a2,
- 0x5990, 0x598f, 0x59a7, 0x59a1, 0x5b8e, 0x5b92, 0x5c28, 0x5c2a,
- 0x5c8d, 0x5c8f, 0x5c88, 0x5c8b, 0x5c89, 0x5c92, 0x5c8a, 0x5c86,
- 0x5c93, 0x5c95, 0x5de0, 0x5e0a, 0x5e0e, 0x5e8b, 0x5e89, 0x5e8c,
- 0x5e88, 0x5e8d, 0x5f05, 0x5f1d, 0x5f78, 0x5f76, 0x5fd2, 0x5fd1,
- 0x5fd0, 0x5fed, 0x5fe8, 0x5fee, 0x5ff3, 0x5fe1, 0x5fe4, 0x5fe3,
- 0x5ffa, 0x5fef, 0x5ff7, 0x5ffb, 0x6000, 0x5ff4, 0x623a, 0x6283,
- 0x628c, 0x628e, 0x628f, 0x6294, 0x6287, 0x6271, 0x627b, 0x627a,
- 0x6270, 0x6281, 0x6288, 0x6277, 0x627d, 0x6272, 0x6274, 0x6537,
- 0x65f0, 0x65f4, 0x65f3, 0x65f2, 0x65f5, 0x6745, 0x6747, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6759, 0x6755, 0x674c, 0x6748, 0x675d, 0x674d, 0x675a, 0x674b,
- 0x6bd0, 0x6c19, 0x6c1a, 0x6c78, 0x6c67, 0x6c6b, 0x6c84, 0x6c8b,
- 0x6c8f, 0x6c71, 0x6c6f, 0x6c69, 0x6c9a, 0x6c6d, 0x6c87, 0x6c95,
- 0x6c9c, 0x6c66, 0x6c73, 0x6c65, 0x6c7b, 0x6c8e, 0x7074, 0x707a,
- 0x7263, 0x72bf, 0x72bd, 0x72c3, 0x72c6, 0x72c1, 0x72ba, 0x72c5,
- 0x7395, 0x7397, 0x7393, 0x7394, 0x7392, 0x753a, 0x7539, 0x7594,
- 0x7595, 0x7681, 0x793d, 0x8034, 0x8095, 0x8099, 0x8090, 0x8092,
- 0x809c, 0x8290, 0x828f, 0x8285, 0x828e, 0x8291, 0x8293, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x828a, 0x8283, 0x8284, 0x8c78, 0x8fc9, 0x8fbf, 0x909f,
- 0x90a1, 0x90a5, 0x909e, 0x90a7, 0x90a0, 0x9630, 0x9628, 0x962f,
- 0x962d, 0x4e33, 0x4f98, 0x4f7c, 0x4f85, 0x4f7d, 0x4f80, 0x4f87,
- 0x4f76, 0x4f74, 0x4f89, 0x4f84, 0x4f77, 0x4f4c, 0x4f97, 0x4f6a,
- 0x4f9a, 0x4f79, 0x4f81, 0x4f78, 0x4f90, 0x4f9c, 0x4f94, 0x4f9e,
- 0x4f92, 0x4f82, 0x4f95, 0x4f6b, 0x4f6e, 0x519e, 0x51bc, 0x51be,
- 0x5235, 0x5232, 0x5233, 0x5246, 0x5231, 0x52bc, 0x530a, 0x530b,
- 0x533c, 0x5392, 0x5394, 0x5487, 0x547f, 0x5481, 0x5491, 0x5482,
- 0x5488, 0x546b, 0x547a, 0x547e, 0x5465, 0x546c, 0x5474, 0x5466,
- 0x548d, 0x546f, 0x5461, 0x5460, 0x5498, 0x5463, 0x5467, 0x5464,
- 0x56f7, 0x56f9, 0x576f, 0x5772, 0x576d, 0x576b, 0x5771, 0x5770,
- 0x5776, 0x5780, 0x5775, 0x577b, 0x5773, 0x5774, 0x5762, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5768, 0x577d, 0x590c, 0x5945, 0x59b5, 0x59ba, 0x59cf, 0x59ce,
- 0x59b2, 0x59cc, 0x59c1, 0x59b6, 0x59bc, 0x59c3, 0x59d6, 0x59b1,
- 0x59bd, 0x59c0, 0x59c8, 0x59b4, 0x59c7, 0x5b62, 0x5b65, 0x5b93,
- 0x5b95, 0x5c44, 0x5c47, 0x5cae, 0x5ca4, 0x5ca0, 0x5cb5, 0x5caf,
- 0x5ca8, 0x5cac, 0x5c9f, 0x5ca3, 0x5cad, 0x5ca2, 0x5caa, 0x5ca7,
- 0x5c9d, 0x5ca5, 0x5cb6, 0x5cb0, 0x5ca6, 0x5e17, 0x5e14, 0x5e19,
- 0x5f28, 0x5f22, 0x5f23, 0x5f24, 0x5f54, 0x5f82, 0x5f7e, 0x5f7d,
- 0x5fde, 0x5fe5, 0x602d, 0x6026, 0x6019, 0x6032, 0x600b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6034, 0x600a, 0x6017, 0x6033, 0x601a, 0x601e, 0x602c,
- 0x6022, 0x600d, 0x6010, 0x602e, 0x6013, 0x6011, 0x600c, 0x6009,
- 0x601c, 0x6214, 0x623d, 0x62ad, 0x62b4, 0x62d1, 0x62be, 0x62aa,
- 0x62b6, 0x62ca, 0x62ae, 0x62b3, 0x62af, 0x62bb, 0x62a9, 0x62b0,
- 0x62b8, 0x653d, 0x65a8, 0x65bb, 0x6609, 0x65fc, 0x6604, 0x6612,
- 0x6608, 0x65fb, 0x6603, 0x660b, 0x660d, 0x6605, 0x65fd, 0x6611,
- 0x6610, 0x66f6, 0x670a, 0x6785, 0x676c, 0x678e, 0x6792, 0x6776,
- 0x677b, 0x6798, 0x6786, 0x6784, 0x6774, 0x678d, 0x678c, 0x677a,
- 0x679f, 0x6791, 0x6799, 0x6783, 0x677d, 0x6781, 0x6778, 0x6779,
- 0x6794, 0x6b25, 0x6b80, 0x6b7e, 0x6bde, 0x6c1d, 0x6c93, 0x6cec,
- 0x6ceb, 0x6cee, 0x6cd9, 0x6cb6, 0x6cd4, 0x6cad, 0x6ce7, 0x6cb7,
- 0x6cd0, 0x6cc2, 0x6cba, 0x6cc3, 0x6cc6, 0x6ced, 0x6cf2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6cd2, 0x6cdd, 0x6cb4, 0x6c8a, 0x6c9d, 0x6c80, 0x6cde, 0x6cc0,
- 0x6d30, 0x6ccd, 0x6cc7, 0x6cb0, 0x6cf9, 0x6ccf, 0x6ce9, 0x6cd1,
- 0x7094, 0x7098, 0x7085, 0x7093, 0x7086, 0x7084, 0x7091, 0x7096,
- 0x7082, 0x709a, 0x7083, 0x726a, 0x72d6, 0x72cb, 0x72d8, 0x72c9,
- 0x72dc, 0x72d2, 0x72d4, 0x72da, 0x72cc, 0x72d1, 0x73a4, 0x73a1,
- 0x73ad, 0x73a6, 0x73a2, 0x73a0, 0x73ac, 0x739d, 0x74dd, 0x74e8,
- 0x753f, 0x7540, 0x753e, 0x758c, 0x7598, 0x76af, 0x76f3, 0x76f1,
- 0x76f0, 0x76f5, 0x77f8, 0x77fc, 0x77f9, 0x77fb, 0x77fa, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x77f7, 0x7942, 0x793f, 0x79c5, 0x7a78, 0x7a7b, 0x7afb,
- 0x7c75, 0x7cfd, 0x8035, 0x808f, 0x80ae, 0x80a3, 0x80b8, 0x80b5,
- 0x80ad, 0x8220, 0x82a0, 0x82c0, 0x82ab, 0x829a, 0x8298, 0x829b,
- 0x82b5, 0x82a7, 0x82ae, 0x82bc, 0x829e, 0x82ba, 0x82b4, 0x82a8,
- 0x82a1, 0x82a9, 0x82c2, 0x82a4, 0x82c3, 0x82b6, 0x82a2, 0x8670,
- 0x866f, 0x866d, 0x866e, 0x8c56, 0x8fd2, 0x8fcb, 0x8fd3, 0x8fcd,
- 0x8fd6, 0x8fd5, 0x8fd7, 0x90b2, 0x90b4, 0x90af, 0x90b3, 0x90b0,
- 0x9639, 0x963d, 0x963c, 0x963a, 0x9643, 0x4fcd, 0x4fc5, 0x4fd3,
- 0x4fb2, 0x4fc9, 0x4fcb, 0x4fc1, 0x4fd4, 0x4fdc, 0x4fd9, 0x4fbb,
- 0x4fb3, 0x4fdb, 0x4fc7, 0x4fd6, 0x4fba, 0x4fc0, 0x4fb9, 0x4fec,
- 0x5244, 0x5249, 0x52c0, 0x52c2, 0x533d, 0x537c, 0x5397, 0x5396,
- 0x5399, 0x5398, 0x54ba, 0x54a1, 0x54ad, 0x54a5, 0x54cf, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x54c3, 0x830d, 0x54b7, 0x54ae, 0x54d6, 0x54b6, 0x54c5, 0x54c6,
- 0x54a0, 0x5470, 0x54bc, 0x54a2, 0x54be, 0x5472, 0x54de, 0x54b0,
- 0x57b5, 0x579e, 0x579f, 0x57a4, 0x578c, 0x5797, 0x579d, 0x579b,
- 0x5794, 0x5798, 0x578f, 0x5799, 0x57a5, 0x579a, 0x5795, 0x58f4,
- 0x590d, 0x5953, 0x59e1, 0x59de, 0x59ee, 0x5a00, 0x59f1, 0x59dd,
- 0x59fa, 0x59fd, 0x59fc, 0x59f6, 0x59e4, 0x59f2, 0x59f7, 0x59db,
- 0x59e9, 0x59f3, 0x59f5, 0x59e0, 0x59fe, 0x59f4, 0x59ed, 0x5ba8,
- 0x5c4c, 0x5cd0, 0x5cd8, 0x5ccc, 0x5cd7, 0x5ccb, 0x5cdb, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5cde, 0x5cda, 0x5cc9, 0x5cc7, 0x5cca, 0x5cd6, 0x5cd3,
- 0x5cd4, 0x5ccf, 0x5cc8, 0x5cc6, 0x5cce, 0x5cdf, 0x5cf8, 0x5df9,
- 0x5e21, 0x5e22, 0x5e23, 0x5e20, 0x5e24, 0x5eb0, 0x5ea4, 0x5ea2,
- 0x5e9b, 0x5ea3, 0x5ea5, 0x5f07, 0x5f2e, 0x5f56, 0x5f86, 0x6037,
- 0x6039, 0x6054, 0x6072, 0x605e, 0x6045, 0x6053, 0x6047, 0x6049,
- 0x605b, 0x604c, 0x6040, 0x6042, 0x605f, 0x6024, 0x6044, 0x6058,
- 0x6066, 0x606e, 0x6242, 0x6243, 0x62cf, 0x630d, 0x630b, 0x62f5,
- 0x630e, 0x6303, 0x62eb, 0x62f9, 0x630f, 0x630c, 0x62f8, 0x62f6,
- 0x6300, 0x6313, 0x6314, 0x62fa, 0x6315, 0x62fb, 0x62f0, 0x6541,
- 0x6543, 0x65aa, 0x65bf, 0x6636, 0x6621, 0x6632, 0x6635, 0x661c,
- 0x6626, 0x6622, 0x6633, 0x662b, 0x663a, 0x661d, 0x6634, 0x6639,
- 0x662e, 0x670f, 0x6710, 0x67c1, 0x67f2, 0x67c8, 0x67ba, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x67dc, 0x67bb, 0x67f8, 0x67d8, 0x67c0, 0x67b7, 0x67c5, 0x67eb,
- 0x67e4, 0x67df, 0x67b5, 0x67cd, 0x67b3, 0x67f7, 0x67f6, 0x67ee,
- 0x67e3, 0x67c2, 0x67b9, 0x67ce, 0x67e7, 0x67f0, 0x67b2, 0x67fc,
- 0x67c6, 0x67ed, 0x67cc, 0x67ae, 0x67e6, 0x67db, 0x67fa, 0x67c9,
- 0x67ca, 0x67c3, 0x67ea, 0x67cb, 0x6b28, 0x6b82, 0x6b84, 0x6bb6,
- 0x6bd6, 0x6bd8, 0x6be0, 0x6c20, 0x6c21, 0x6d28, 0x6d34, 0x6d2d,
- 0x6d1f, 0x6d3c, 0x6d3f, 0x6d12, 0x6d0a, 0x6cda, 0x6d33, 0x6d04,
- 0x6d19, 0x6d3a, 0x6d1a, 0x6d11, 0x6d00, 0x6d1d, 0x6d42, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6d01, 0x6d18, 0x6d37, 0x6d03, 0x6d0f, 0x6d40, 0x6d07,
- 0x6d20, 0x6d2c, 0x6d08, 0x6d22, 0x6d09, 0x6d10, 0x70b7, 0x709f,
- 0x70be, 0x70b1, 0x70b0, 0x70a1, 0x70b4, 0x70b5, 0x70a9, 0x7241,
- 0x7249, 0x724a, 0x726c, 0x7270, 0x7273, 0x726e, 0x72ca, 0x72e4,
- 0x72e8, 0x72eb, 0x72df, 0x72ea, 0x72e6, 0x72e3, 0x7385, 0x73cc,
- 0x73c2, 0x73c8, 0x73c5, 0x73b9, 0x73b6, 0x73b5, 0x73b4, 0x73eb,
- 0x73bf, 0x73c7, 0x73be, 0x73c3, 0x73c6, 0x73b8, 0x73cb, 0x74ec,
- 0x74ee, 0x752e, 0x7547, 0x7548, 0x75a7, 0x75aa, 0x7679, 0x76c4,
- 0x7708, 0x7703, 0x7704, 0x7705, 0x770a, 0x76f7, 0x76fb, 0x76fa,
- 0x77e7, 0x77e8, 0x7806, 0x7811, 0x7812, 0x7805, 0x7810, 0x780f,
- 0x780e, 0x7809, 0x7803, 0x7813, 0x794a, 0x794c, 0x794b, 0x7945,
- 0x7944, 0x79d5, 0x79cd, 0x79cf, 0x79d6, 0x79ce, 0x7a80, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7a7e, 0x7ad1, 0x7b00, 0x7b01, 0x7c7a, 0x7c78, 0x7c79, 0x7c7f,
- 0x7c80, 0x7c81, 0x7d03, 0x7d08, 0x7d01, 0x7f58, 0x7f91, 0x7f8d,
- 0x7fbe, 0x8007, 0x800e, 0x800f, 0x8014, 0x8037, 0x80d8, 0x80c7,
- 0x80e0, 0x80d1, 0x80c8, 0x80c2, 0x80d0, 0x80c5, 0x80e3, 0x80d9,
- 0x80dc, 0x80ca, 0x80d5, 0x80c9, 0x80cf, 0x80d7, 0x80e6, 0x80cd,
- 0x81ff, 0x8221, 0x8294, 0x82d9, 0x82fe, 0x82f9, 0x8307, 0x82e8,
- 0x8300, 0x82d5, 0x833a, 0x82eb, 0x82d6, 0x82f4, 0x82ec, 0x82e1,
- 0x82f2, 0x82f5, 0x830c, 0x82fb, 0x82f6, 0x82f0, 0x82ea, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x82e4, 0x82e0, 0x82fa, 0x82f3, 0x82ed, 0x8677, 0x8674,
- 0x867c, 0x8673, 0x8841, 0x884e, 0x8867, 0x886a, 0x8869, 0x89d3,
- 0x8a04, 0x8a07, 0x8d72, 0x8fe3, 0x8fe1, 0x8fee, 0x8fe0, 0x90f1,
- 0x90bd, 0x90bf, 0x90d5, 0x90c5, 0x90be, 0x90c7, 0x90cb, 0x90c8,
- 0x91d4, 0x91d3, 0x9654, 0x964f, 0x9651, 0x9653, 0x964a, 0x964e,
- 0x501e, 0x5005, 0x5007, 0x5013, 0x5022, 0x5030, 0x501b, 0x4ff5,
- 0x4ff4, 0x5033, 0x5037, 0x502c, 0x4ff6, 0x4ff7, 0x5017, 0x501c,
- 0x5020, 0x5027, 0x5035, 0x502f, 0x5031, 0x500e, 0x515a, 0x5194,
- 0x5193, 0x51ca, 0x51c4, 0x51c5, 0x51c8, 0x51ce, 0x5261, 0x525a,
- 0x5252, 0x525e, 0x525f, 0x5255, 0x5262, 0x52cd, 0x530e, 0x539e,
- 0x5526, 0x54e2, 0x5517, 0x5512, 0x54e7, 0x54f3, 0x54e4, 0x551a,
- 0x54ff, 0x5504, 0x5508, 0x54eb, 0x5511, 0x5505, 0x54f1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x550a, 0x54fb, 0x54f7, 0x54f8, 0x54e0, 0x550e, 0x5503, 0x550b,
- 0x5701, 0x5702, 0x57cc, 0x5832, 0x57d5, 0x57d2, 0x57ba, 0x57c6,
- 0x57bd, 0x57bc, 0x57b8, 0x57b6, 0x57bf, 0x57c7, 0x57d0, 0x57b9,
- 0x57c1, 0x590e, 0x594a, 0x5a19, 0x5a16, 0x5a2d, 0x5a2e, 0x5a15,
- 0x5a0f, 0x5a17, 0x5a0a, 0x5a1e, 0x5a33, 0x5b6c, 0x5ba7, 0x5bad,
- 0x5bac, 0x5c03, 0x5c56, 0x5c54, 0x5cec, 0x5cff, 0x5cee, 0x5cf1,
- 0x5cf7, 0x5d00, 0x5cf9, 0x5e29, 0x5e28, 0x5ea8, 0x5eae, 0x5eaa,
- 0x5eac, 0x5f33, 0x5f30, 0x5f67, 0x605d, 0x605a, 0x6067, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6041, 0x60a2, 0x6088, 0x6080, 0x6092, 0x6081, 0x609d,
- 0x6083, 0x6095, 0x609b, 0x6097, 0x6087, 0x609c, 0x608e, 0x6219,
- 0x6246, 0x62f2, 0x6310, 0x6356, 0x632c, 0x6344, 0x6345, 0x6336,
- 0x6343, 0x63e4, 0x6339, 0x634b, 0x634a, 0x633c, 0x6329, 0x6341,
- 0x6334, 0x6358, 0x6354, 0x6359, 0x632d, 0x6347, 0x6333, 0x635a,
- 0x6351, 0x6338, 0x6357, 0x6340, 0x6348, 0x654a, 0x6546, 0x65c6,
- 0x65c3, 0x65c4, 0x65c2, 0x664a, 0x665f, 0x6647, 0x6651, 0x6712,
- 0x6713, 0x681f, 0x681a, 0x6849, 0x6832, 0x6833, 0x683b, 0x684b,
- 0x684f, 0x6816, 0x6831, 0x681c, 0x6835, 0x682b, 0x682d, 0x682f,
- 0x684e, 0x6844, 0x6834, 0x681d, 0x6812, 0x6814, 0x6826, 0x6828,
- 0x682e, 0x684d, 0x683a, 0x6825, 0x6820, 0x6b2c, 0x6b2f, 0x6b2d,
- 0x6b31, 0x6b34, 0x6b6d, 0x8082, 0x6b88, 0x6be6, 0x6be4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6be8, 0x6be3, 0x6be2, 0x6be7, 0x6c25, 0x6d7a, 0x6d63, 0x6d64,
- 0x6d76, 0x6d0d, 0x6d61, 0x6d92, 0x6d58, 0x6d62, 0x6d6d, 0x6d6f,
- 0x6d91, 0x6d8d, 0x6def, 0x6d7f, 0x6d86, 0x6d5e, 0x6d67, 0x6d60,
- 0x6d97, 0x6d70, 0x6d7c, 0x6d5f, 0x6d82, 0x6d98, 0x6d2f, 0x6d68,
- 0x6d8b, 0x6d7e, 0x6d80, 0x6d84, 0x6d16, 0x6d83, 0x6d7b, 0x6d7d,
- 0x6d75, 0x6d90, 0x70dc, 0x70d3, 0x70d1, 0x70dd, 0x70cb, 0x7f39,
- 0x70e2, 0x70d7, 0x70d2, 0x70de, 0x70e0, 0x70d4, 0x70cd, 0x70c5,
- 0x70c6, 0x70c7, 0x70da, 0x70ce, 0x70e1, 0x7242, 0x7278, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7277, 0x7276, 0x7300, 0x72fa, 0x72f4, 0x72fe, 0x72f6,
- 0x72f3, 0x72fb, 0x7301, 0x73d3, 0x73d9, 0x73e5, 0x73d6, 0x73bc,
- 0x73e7, 0x73e3, 0x73e9, 0x73dc, 0x73d2, 0x73db, 0x73d4, 0x73dd,
- 0x73da, 0x73d7, 0x73d8, 0x73e8, 0x74de, 0x74df, 0x74f4, 0x74f5,
- 0x7521, 0x755b, 0x755f, 0x75b0, 0x75c1, 0x75bb, 0x75c4, 0x75c0,
- 0x75bf, 0x75b6, 0x75ba, 0x768a, 0x76c9, 0x771d, 0x771b, 0x7710,
- 0x7713, 0x7712, 0x7723, 0x7711, 0x7715, 0x7719, 0x771a, 0x7722,
- 0x7727, 0x7823, 0x782c, 0x7822, 0x7835, 0x782f, 0x7828, 0x782e,
- 0x782b, 0x7821, 0x7829, 0x7833, 0x782a, 0x7831, 0x7954, 0x795b,
- 0x794f, 0x795c, 0x7953, 0x7952, 0x7951, 0x79eb, 0x79ec, 0x79e0,
- 0x79ee, 0x79ed, 0x79ea, 0x79dc, 0x79de, 0x79dd, 0x7a86, 0x7a89,
- 0x7a85, 0x7a8b, 0x7a8c, 0x7a8a, 0x7a87, 0x7ad8, 0x7b10, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7b04, 0x7b13, 0x7b05, 0x7b0f, 0x7b08, 0x7b0a, 0x7b0e, 0x7b09,
- 0x7b12, 0x7c84, 0x7c91, 0x7c8a, 0x7c8c, 0x7c88, 0x7c8d, 0x7c85,
- 0x7d1e, 0x7d1d, 0x7d11, 0x7d0e, 0x7d18, 0x7d16, 0x7d13, 0x7d1f,
- 0x7d12, 0x7d0f, 0x7d0c, 0x7f5c, 0x7f61, 0x7f5e, 0x7f60, 0x7f5d,
- 0x7f5b, 0x7f96, 0x7f92, 0x7fc3, 0x7fc2, 0x7fc0, 0x8016, 0x803e,
- 0x8039, 0x80fa, 0x80f2, 0x80f9, 0x80f5, 0x8101, 0x80fb, 0x8100,
- 0x8201, 0x822f, 0x8225, 0x8333, 0x832d, 0x8344, 0x8319, 0x8351,
- 0x8325, 0x8356, 0x833f, 0x8341, 0x8326, 0x831c, 0x8322, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8342, 0x834e, 0x831b, 0x832a, 0x8308, 0x833c, 0x834d,
- 0x8316, 0x8324, 0x8320, 0x8337, 0x832f, 0x8329, 0x8347, 0x8345,
- 0x834c, 0x8353, 0x831e, 0x832c, 0x834b, 0x8327, 0x8348, 0x8653,
- 0x8652, 0x86a2, 0x86a8, 0x8696, 0x868d, 0x8691, 0x869e, 0x8687,
- 0x8697, 0x8686, 0x868b, 0x869a, 0x8685, 0x86a5, 0x8699, 0x86a1,
- 0x86a7, 0x8695, 0x8698, 0x868e, 0x869d, 0x8690, 0x8694, 0x8843,
- 0x8844, 0x886d, 0x8875, 0x8876, 0x8872, 0x8880, 0x8871, 0x887f,
- 0x886f, 0x8883, 0x887e, 0x8874, 0x887c, 0x8a12, 0x8c47, 0x8c57,
- 0x8c7b, 0x8ca4, 0x8ca3, 0x8d76, 0x8d78, 0x8db5, 0x8db7, 0x8db6,
- 0x8ed1, 0x8ed3, 0x8ffe, 0x8ff5, 0x9002, 0x8fff, 0x8ffb, 0x9004,
- 0x8ffc, 0x8ff6, 0x90d6, 0x90e0, 0x90d9, 0x90da, 0x90e3, 0x90df,
- 0x90e5, 0x90d8, 0x90db, 0x90d7, 0x90dc, 0x90e4, 0x9150, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x914e, 0x914f, 0x91d5, 0x91e2, 0x91da, 0x965c, 0x965f, 0x96bc,
- 0x98e3, 0x9adf, 0x9b2f, 0x4e7f, 0x5070, 0x506a, 0x5061, 0x505e,
- 0x5060, 0x5053, 0x504b, 0x505d, 0x5072, 0x5048, 0x504d, 0x5041,
- 0x505b, 0x504a, 0x5062, 0x5015, 0x5045, 0x505f, 0x5069, 0x506b,
- 0x5063, 0x5064, 0x5046, 0x5040, 0x506e, 0x5073, 0x5057, 0x5051,
- 0x51d0, 0x526b, 0x526d, 0x526c, 0x526e, 0x52d6, 0x52d3, 0x532d,
- 0x539c, 0x5575, 0x5576, 0x553c, 0x554d, 0x5550, 0x5534, 0x552a,
- 0x5551, 0x5562, 0x5536, 0x5535, 0x5530, 0x5552, 0x5545, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x550c, 0x5532, 0x5565, 0x554e, 0x5539, 0x5548, 0x552d,
- 0x553b, 0x5540, 0x554b, 0x570a, 0x5707, 0x57fb, 0x5814, 0x57e2,
- 0x57f6, 0x57dc, 0x57f4, 0x5800, 0x57ed, 0x57fd, 0x5808, 0x57f8,
- 0x580b, 0x57f3, 0x57cf, 0x5807, 0x57ee, 0x57e3, 0x57f2, 0x57e5,
- 0x57ec, 0x57e1, 0x580e, 0x57fc, 0x5810, 0x57e7, 0x5801, 0x580c,
- 0x57f1, 0x57e9, 0x57f0, 0x580d, 0x5804, 0x595c, 0x5a60, 0x5a58,
- 0x5a55, 0x5a67, 0x5a5e, 0x5a38, 0x5a35, 0x5a6d, 0x5a50, 0x5a5f,
- 0x5a65, 0x5a6c, 0x5a53, 0x5a64, 0x5a57, 0x5a43, 0x5a5d, 0x5a52,
- 0x5a44, 0x5a5b, 0x5a48, 0x5a8e, 0x5a3e, 0x5a4d, 0x5a39, 0x5a4c,
- 0x5a70, 0x5a69, 0x5a47, 0x5a51, 0x5a56, 0x5a42, 0x5a5c, 0x5b72,
- 0x5b6e, 0x5bc1, 0x5bc0, 0x5c59, 0x5d1e, 0x5d0b, 0x5d1d, 0x5d1a,
- 0x5d20, 0x5d0c, 0x5d28, 0x5d0d, 0x5d26, 0x5d25, 0x5d0f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5d30, 0x5d12, 0x5d23, 0x5d1f, 0x5d2e, 0x5e3e, 0x5e34, 0x5eb1,
- 0x5eb4, 0x5eb9, 0x5eb2, 0x5eb3, 0x5f36, 0x5f38, 0x5f9b, 0x5f96,
- 0x5f9f, 0x608a, 0x6090, 0x6086, 0x60be, 0x60b0, 0x60ba, 0x60d3,
- 0x60d4, 0x60cf, 0x60e4, 0x60d9, 0x60dd, 0x60c8, 0x60b1, 0x60db,
- 0x60b7, 0x60ca, 0x60bf, 0x60c3, 0x60cd, 0x60c0, 0x6332, 0x6365,
- 0x638a, 0x6382, 0x637d, 0x63bd, 0x639e, 0x63ad, 0x639d, 0x6397,
- 0x63ab, 0x638e, 0x636f, 0x6387, 0x6390, 0x636e, 0x63af, 0x6375,
- 0x639c, 0x636d, 0x63ae, 0x637c, 0x63a4, 0x633b, 0x639f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6378, 0x6385, 0x6381, 0x6391, 0x638d, 0x6370, 0x6553,
- 0x65cd, 0x6665, 0x6661, 0x665b, 0x6659, 0x665c, 0x6662, 0x6718,
- 0x6879, 0x6887, 0x6890, 0x689c, 0x686d, 0x686e, 0x68ae, 0x68ab,
- 0x6956, 0x686f, 0x68a3, 0x68ac, 0x68a9, 0x6875, 0x6874, 0x68b2,
- 0x688f, 0x6877, 0x6892, 0x687c, 0x686b, 0x6872, 0x68aa, 0x6880,
- 0x6871, 0x687e, 0x689b, 0x6896, 0x688b, 0x68a0, 0x6889, 0x68a4,
- 0x6878, 0x687b, 0x6891, 0x688c, 0x688a, 0x687d, 0x6b36, 0x6b33,
- 0x6b37, 0x6b38, 0x6b91, 0x6b8f, 0x6b8d, 0x6b8e, 0x6b8c, 0x6c2a,
- 0x6dc0, 0x6dab, 0x6db4, 0x6db3, 0x6e74, 0x6dac, 0x6de9, 0x6de2,
- 0x6db7, 0x6df6, 0x6dd4, 0x6e00, 0x6dc8, 0x6de0, 0x6ddf, 0x6dd6,
- 0x6dbe, 0x6de5, 0x6ddc, 0x6ddd, 0x6ddb, 0x6df4, 0x6dca, 0x6dbd,
- 0x6ded, 0x6df0, 0x6dba, 0x6dd5, 0x6dc2, 0x6dcf, 0x6dc9, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6dd0, 0x6df2, 0x6dd3, 0x6dfd, 0x6dd7, 0x6dcd, 0x6de3, 0x6dbb,
- 0x70fa, 0x710d, 0x70f7, 0x7117, 0x70f4, 0x710c, 0x70f0, 0x7104,
- 0x70f3, 0x7110, 0x70fc, 0x70ff, 0x7106, 0x7113, 0x7100, 0x70f8,
- 0x70f6, 0x710b, 0x7102, 0x710e, 0x727e, 0x727b, 0x727c, 0x727f,
- 0x731d, 0x7317, 0x7307, 0x7311, 0x7318, 0x730a, 0x7308, 0x72ff,
- 0x730f, 0x731e, 0x7388, 0x73f6, 0x73f8, 0x73f5, 0x7404, 0x7401,
- 0x73fd, 0x7407, 0x7400, 0x73fa, 0x73fc, 0x73ff, 0x740c, 0x740b,
- 0x73f4, 0x7408, 0x7564, 0x7563, 0x75ce, 0x75d2, 0x75cf, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x75cb, 0x75cc, 0x75d1, 0x75d0, 0x768f, 0x7689, 0x76d3,
- 0x7739, 0x772f, 0x772d, 0x7731, 0x7732, 0x7734, 0x7733, 0x773d,
- 0x7725, 0x773b, 0x7735, 0x7848, 0x7852, 0x7849, 0x784d, 0x784a,
- 0x784c, 0x7826, 0x7845, 0x7850, 0x7964, 0x7967, 0x7969, 0x796a,
- 0x7963, 0x796b, 0x7961, 0x79bb, 0x79fa, 0x79f8, 0x79f6, 0x79f7,
- 0x7a8f, 0x7a94, 0x7a90, 0x7b35, 0x7b47, 0x7b34, 0x7b25, 0x7b30,
- 0x7b22, 0x7b24, 0x7b33, 0x7b18, 0x7b2a, 0x7b1d, 0x7b31, 0x7b2b,
- 0x7b2d, 0x7b2f, 0x7b32, 0x7b38, 0x7b1a, 0x7b23, 0x7c94, 0x7c98,
- 0x7c96, 0x7ca3, 0x7d35, 0x7d3d, 0x7d38, 0x7d36, 0x7d3a, 0x7d45,
- 0x7d2c, 0x7d29, 0x7d41, 0x7d47, 0x7d3e, 0x7d3f, 0x7d4a, 0x7d3b,
- 0x7d28, 0x7f63, 0x7f95, 0x7f9c, 0x7f9d, 0x7f9b, 0x7fca, 0x7fcb,
- 0x7fcd, 0x7fd0, 0x7fd1, 0x7fc7, 0x7fcf, 0x7fc9, 0x801f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x801e, 0x801b, 0x8047, 0x8043, 0x8048, 0x8118, 0x8125, 0x8119,
- 0x811b, 0x812d, 0x811f, 0x812c, 0x811e, 0x8121, 0x8115, 0x8127,
- 0x811d, 0x8122, 0x8211, 0x8238, 0x8233, 0x823a, 0x8234, 0x8232,
- 0x8274, 0x8390, 0x83a3, 0x83a8, 0x838d, 0x837a, 0x8373, 0x83a4,
- 0x8374, 0x838f, 0x8381, 0x8395, 0x8399, 0x8375, 0x8394, 0x83a9,
- 0x837d, 0x8383, 0x838c, 0x839d, 0x839b, 0x83aa, 0x838b, 0x837e,
- 0x83a5, 0x83af, 0x8388, 0x8397, 0x83b0, 0x837f, 0x83a6, 0x8387,
- 0x83ae, 0x8376, 0x839a, 0x8659, 0x8656, 0x86bf, 0x86b7, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x86c2, 0x86c1, 0x86c5, 0x86ba, 0x86b0, 0x86c8, 0x86b9,
- 0x86b3, 0x86b8, 0x86cc, 0x86b4, 0x86bb, 0x86bc, 0x86c3, 0x86bd,
- 0x86be, 0x8852, 0x8889, 0x8895, 0x88a8, 0x88a2, 0x88aa, 0x889a,
- 0x8891, 0x88a1, 0x889f, 0x8898, 0x88a7, 0x8899, 0x889b, 0x8897,
- 0x88a4, 0x88ac, 0x888c, 0x8893, 0x888e, 0x8982, 0x89d6, 0x89d9,
- 0x89d5, 0x8a30, 0x8a27, 0x8a2c, 0x8a1e, 0x8c39, 0x8c3b, 0x8c5c,
- 0x8c5d, 0x8c7d, 0x8ca5, 0x8d7d, 0x8d7b, 0x8d79, 0x8dbc, 0x8dc2,
- 0x8db9, 0x8dbf, 0x8dc1, 0x8ed8, 0x8ede, 0x8edd, 0x8edc, 0x8ed7,
- 0x8ee0, 0x8ee1, 0x9024, 0x900b, 0x9011, 0x901c, 0x900c, 0x9021,
- 0x90ef, 0x90ea, 0x90f0, 0x90f4, 0x90f2, 0x90f3, 0x90d4, 0x90eb,
- 0x90ec, 0x90e9, 0x9156, 0x9158, 0x915a, 0x9153, 0x9155, 0x91ec,
- 0x91f4, 0x91f1, 0x91f3, 0x91f8, 0x91e4, 0x91f9, 0x91ea, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x91eb, 0x91f7, 0x91e8, 0x91ee, 0x957a, 0x9586, 0x9588, 0x967c,
- 0x966d, 0x966b, 0x9671, 0x966f, 0x96bf, 0x976a, 0x9804, 0x98e5,
- 0x9997, 0x509b, 0x5095, 0x5094, 0x509e, 0x508b, 0x50a3, 0x5083,
- 0x508c, 0x508e, 0x509d, 0x5068, 0x509c, 0x5092, 0x5082, 0x5087,
- 0x515f, 0x51d4, 0x5312, 0x5311, 0x53a4, 0x53a7, 0x5591, 0x55a8,
- 0x55a5, 0x55ad, 0x5577, 0x5645, 0x55a2, 0x5593, 0x5588, 0x558f,
- 0x55b5, 0x5581, 0x55a3, 0x5592, 0x55a4, 0x557d, 0x558c, 0x55a6,
- 0x557f, 0x5595, 0x55a1, 0x558e, 0x570c, 0x5829, 0x5837, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5819, 0x581e, 0x5827, 0x5823, 0x5828, 0x57f5, 0x5848,
- 0x5825, 0x581c, 0x581b, 0x5833, 0x583f, 0x5836, 0x582e, 0x5839,
- 0x5838, 0x582d, 0x582c, 0x583b, 0x5961, 0x5aaf, 0x5a94, 0x5a9f,
- 0x5a7a, 0x5aa2, 0x5a9e, 0x5a78, 0x5aa6, 0x5a7c, 0x5aa5, 0x5aac,
- 0x5a95, 0x5aae, 0x5a37, 0x5a84, 0x5a8a, 0x5a97, 0x5a83, 0x5a8b,
- 0x5aa9, 0x5a7b, 0x5a7d, 0x5a8c, 0x5a9c, 0x5a8f, 0x5a93, 0x5a9d,
- 0x5bea, 0x5bcd, 0x5bcb, 0x5bd4, 0x5bd1, 0x5bca, 0x5bce, 0x5c0c,
- 0x5c30, 0x5d37, 0x5d43, 0x5d6b, 0x5d41, 0x5d4b, 0x5d3f, 0x5d35,
- 0x5d51, 0x5d4e, 0x5d55, 0x5d33, 0x5d3a, 0x5d52, 0x5d3d, 0x5d31,
- 0x5d59, 0x5d42, 0x5d39, 0x5d49, 0x5d38, 0x5d3c, 0x5d32, 0x5d36,
- 0x5d40, 0x5d45, 0x5e44, 0x5e41, 0x5f58, 0x5fa6, 0x5fa5, 0x5fab,
- 0x60c9, 0x60b9, 0x60cc, 0x60e2, 0x60ce, 0x60c4, 0x6114, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x60f2, 0x610a, 0x6116, 0x6105, 0x60f5, 0x6113, 0x60f8, 0x60fc,
- 0x60fe, 0x60c1, 0x6103, 0x6118, 0x611d, 0x6110, 0x60ff, 0x6104,
- 0x610b, 0x624a, 0x6394, 0x63b1, 0x63b0, 0x63ce, 0x63e5, 0x63e8,
- 0x63ef, 0x63c3, 0x649d, 0x63f3, 0x63ca, 0x63e0, 0x63f6, 0x63d5,
- 0x63f2, 0x63f5, 0x6461, 0x63df, 0x63be, 0x63dd, 0x63dc, 0x63c4,
- 0x63d8, 0x63d3, 0x63c2, 0x63c7, 0x63cc, 0x63cb, 0x63c8, 0x63f0,
- 0x63d7, 0x63d9, 0x6532, 0x6567, 0x656a, 0x6564, 0x655c, 0x6568,
- 0x6565, 0x658c, 0x659d, 0x659e, 0x65ae, 0x65d0, 0x65d2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x667c, 0x666c, 0x667b, 0x6680, 0x6671, 0x6679, 0x666a,
- 0x6672, 0x6701, 0x690c, 0x68d3, 0x6904, 0x68dc, 0x692a, 0x68ec,
- 0x68ea, 0x68f1, 0x690f, 0x68d6, 0x68f7, 0x68eb, 0x68e4, 0x68f6,
- 0x6913, 0x6910, 0x68f3, 0x68e1, 0x6907, 0x68cc, 0x6908, 0x6970,
- 0x68b4, 0x6911, 0x68ef, 0x68c6, 0x6914, 0x68f8, 0x68d0, 0x68fd,
- 0x68fc, 0x68e8, 0x690b, 0x690a, 0x6917, 0x68ce, 0x68c8, 0x68dd,
- 0x68de, 0x68e6, 0x68f4, 0x68d1, 0x6906, 0x68d4, 0x68e9, 0x6915,
- 0x6925, 0x68c7, 0x6b39, 0x6b3b, 0x6b3f, 0x6b3c, 0x6b94, 0x6b97,
- 0x6b99, 0x6b95, 0x6bbd, 0x6bf0, 0x6bf2, 0x6bf3, 0x6c30, 0x6dfc,
- 0x6e46, 0x6e47, 0x6e1f, 0x6e49, 0x6e88, 0x6e3c, 0x6e3d, 0x6e45,
- 0x6e62, 0x6e2b, 0x6e3f, 0x6e41, 0x6e5d, 0x6e73, 0x6e1c, 0x6e33,
- 0x6e4b, 0x6e40, 0x6e51, 0x6e3b, 0x6e03, 0x6e2e, 0x6e5e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6e68, 0x6e5c, 0x6e61, 0x6e31, 0x6e28, 0x6e60, 0x6e71, 0x6e6b,
- 0x6e39, 0x6e22, 0x6e30, 0x6e53, 0x6e65, 0x6e27, 0x6e78, 0x6e64,
- 0x6e77, 0x6e55, 0x6e79, 0x6e52, 0x6e66, 0x6e35, 0x6e36, 0x6e5a,
- 0x7120, 0x711e, 0x712f, 0x70fb, 0x712e, 0x7131, 0x7123, 0x7125,
- 0x7122, 0x7132, 0x711f, 0x7128, 0x713a, 0x711b, 0x724b, 0x725a,
- 0x7288, 0x7289, 0x7286, 0x7285, 0x728b, 0x7312, 0x730b, 0x7330,
- 0x7322, 0x7331, 0x7333, 0x7327, 0x7332, 0x732d, 0x7326, 0x7323,
- 0x7335, 0x730c, 0x742e, 0x742c, 0x7430, 0x742b, 0x7416, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x741a, 0x7421, 0x742d, 0x7431, 0x7424, 0x7423, 0x741d,
- 0x7429, 0x7420, 0x7432, 0x74fb, 0x752f, 0x756f, 0x756c, 0x75e7,
- 0x75da, 0x75e1, 0x75e6, 0x75dd, 0x75df, 0x75e4, 0x75d7, 0x7695,
- 0x7692, 0x76da, 0x7746, 0x7747, 0x7744, 0x774d, 0x7745, 0x774a,
- 0x774e, 0x774b, 0x774c, 0x77de, 0x77ec, 0x7860, 0x7864, 0x7865,
- 0x785c, 0x786d, 0x7871, 0x786a, 0x786e, 0x7870, 0x7869, 0x7868,
- 0x785e, 0x7862, 0x7974, 0x7973, 0x7972, 0x7970, 0x7a02, 0x7a0a,
- 0x7a03, 0x7a0c, 0x7a04, 0x7a99, 0x7ae6, 0x7ae4, 0x7b4a, 0x7b3b,
- 0x7b44, 0x7b48, 0x7b4c, 0x7b4e, 0x7b40, 0x7b58, 0x7b45, 0x7ca2,
- 0x7c9e, 0x7ca8, 0x7ca1, 0x7d58, 0x7d6f, 0x7d63, 0x7d53, 0x7d56,
- 0x7d67, 0x7d6a, 0x7d4f, 0x7d6d, 0x7d5c, 0x7d6b, 0x7d52, 0x7d54,
- 0x7d69, 0x7d51, 0x7d5f, 0x7d4e, 0x7f3e, 0x7f3f, 0x7f65, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7f66, 0x7fa2, 0x7fa0, 0x7fa1, 0x7fd7, 0x8051, 0x804f, 0x8050,
- 0x80fe, 0x80d4, 0x8143, 0x814a, 0x8152, 0x814f, 0x8147, 0x813d,
- 0x814d, 0x813a, 0x81e6, 0x81ee, 0x81f7, 0x81f8, 0x81f9, 0x8204,
- 0x823c, 0x823d, 0x823f, 0x8275, 0x833b, 0x83cf, 0x83f9, 0x8423,
- 0x83c0, 0x83e8, 0x8412, 0x83e7, 0x83e4, 0x83fc, 0x83f6, 0x8410,
- 0x83c6, 0x83c8, 0x83eb, 0x83e3, 0x83bf, 0x8401, 0x83dd, 0x83e5,
- 0x83d8, 0x83ff, 0x83e1, 0x83cb, 0x83ce, 0x83d6, 0x83f5, 0x83c9,
- 0x8409, 0x840f, 0x83de, 0x8411, 0x8406, 0x83c2, 0x83f3, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x83d5, 0x83fa, 0x83c7, 0x83d1, 0x83ea, 0x8413, 0x83c3,
- 0x83ec, 0x83ee, 0x83c4, 0x83fb, 0x83d7, 0x83e2, 0x841b, 0x83db,
- 0x83fe, 0x86d8, 0x86e2, 0x86e6, 0x86d3, 0x86e3, 0x86da, 0x86ea,
- 0x86dd, 0x86eb, 0x86dc, 0x86ec, 0x86e9, 0x86d7, 0x86e8, 0x86d1,
- 0x8848, 0x8856, 0x8855, 0x88ba, 0x88d7, 0x88b9, 0x88b8, 0x88c0,
- 0x88be, 0x88b6, 0x88bc, 0x88b7, 0x88bd, 0x88b2, 0x8901, 0x88c9,
- 0x8995, 0x8998, 0x8997, 0x89dd, 0x89da, 0x89db, 0x8a4e, 0x8a4d,
- 0x8a39, 0x8a59, 0x8a40, 0x8a57, 0x8a58, 0x8a44, 0x8a45, 0x8a52,
- 0x8a48, 0x8a51, 0x8a4a, 0x8a4c, 0x8a4f, 0x8c5f, 0x8c81, 0x8c80,
- 0x8cba, 0x8cbe, 0x8cb0, 0x8cb9, 0x8cb5, 0x8d84, 0x8d80, 0x8d89,
- 0x8dd8, 0x8dd3, 0x8dcd, 0x8dc7, 0x8dd6, 0x8ddc, 0x8dcf, 0x8dd5,
- 0x8dd9, 0x8dc8, 0x8dd7, 0x8dc5, 0x8eef, 0x8ef7, 0x8efa, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8ef9, 0x8ee6, 0x8eee, 0x8ee5, 0x8ef5, 0x8ee7, 0x8ee8, 0x8ef6,
- 0x8eeb, 0x8ef1, 0x8eec, 0x8ef4, 0x8ee9, 0x902d, 0x9034, 0x902f,
- 0x9106, 0x912c, 0x9104, 0x90ff, 0x90fc, 0x9108, 0x90f9, 0x90fb,
- 0x9101, 0x9100, 0x9107, 0x9105, 0x9103, 0x9161, 0x9164, 0x915f,
- 0x9162, 0x9160, 0x9201, 0x920a, 0x9225, 0x9203, 0x921a, 0x9226,
- 0x920f, 0x920c, 0x9200, 0x9212, 0x91ff, 0x91fd, 0x9206, 0x9204,
- 0x9227, 0x9202, 0x921c, 0x9224, 0x9219, 0x9217, 0x9205, 0x9216,
- 0x957b, 0x958d, 0x958c, 0x9590, 0x9687, 0x967e, 0x9688, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9689, 0x9683, 0x9680, 0x96c2, 0x96c8, 0x96c3, 0x96f1,
- 0x96f0, 0x976c, 0x9770, 0x976e, 0x9807, 0x98a9, 0x98eb, 0x9ce6,
- 0x9ef9, 0x4e83, 0x4e84, 0x4eb6, 0x50bd, 0x50bf, 0x50c6, 0x50ae,
- 0x50c4, 0x50ca, 0x50b4, 0x50c8, 0x50c2, 0x50b0, 0x50c1, 0x50ba,
- 0x50b1, 0x50cb, 0x50c9, 0x50b6, 0x50b8, 0x51d7, 0x527a, 0x5278,
- 0x527b, 0x527c, 0x55c3, 0x55db, 0x55cc, 0x55d0, 0x55cb, 0x55ca,
- 0x55dd, 0x55c0, 0x55d4, 0x55c4, 0x55e9, 0x55bf, 0x55d2, 0x558d,
- 0x55cf, 0x55d5, 0x55e2, 0x55d6, 0x55c8, 0x55f2, 0x55cd, 0x55d9,
- 0x55c2, 0x5714, 0x5853, 0x5868, 0x5864, 0x584f, 0x584d, 0x5849,
- 0x586f, 0x5855, 0x584e, 0x585d, 0x5859, 0x5865, 0x585b, 0x583d,
- 0x5863, 0x5871, 0x58fc, 0x5ac7, 0x5ac4, 0x5acb, 0x5aba, 0x5ab8,
- 0x5ab1, 0x5ab5, 0x5ab0, 0x5abf, 0x5ac8, 0x5abb, 0x5ac6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5ab7, 0x5ac0, 0x5aca, 0x5ab4, 0x5ab6, 0x5acd, 0x5ab9, 0x5a90,
- 0x5bd6, 0x5bd8, 0x5bd9, 0x5c1f, 0x5c33, 0x5d71, 0x5d63, 0x5d4a,
- 0x5d65, 0x5d72, 0x5d6c, 0x5d5e, 0x5d68, 0x5d67, 0x5d62, 0x5df0,
- 0x5e4f, 0x5e4e, 0x5e4a, 0x5e4d, 0x5e4b, 0x5ec5, 0x5ecc, 0x5ec6,
- 0x5ecb, 0x5ec7, 0x5f40, 0x5faf, 0x5fad, 0x60f7, 0x6149, 0x614a,
- 0x612b, 0x6145, 0x6136, 0x6132, 0x612e, 0x6146, 0x612f, 0x614f,
- 0x6129, 0x6140, 0x6220, 0x9168, 0x6223, 0x6225, 0x6224, 0x63c5,
- 0x63f1, 0x63eb, 0x6410, 0x6412, 0x6409, 0x6420, 0x6424, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6433, 0x6443, 0x641f, 0x6415, 0x6418, 0x6439, 0x6437,
- 0x6422, 0x6423, 0x640c, 0x6426, 0x6430, 0x6428, 0x6441, 0x6435,
- 0x642f, 0x640a, 0x641a, 0x6440, 0x6425, 0x6427, 0x640b, 0x63e7,
- 0x641b, 0x642e, 0x6421, 0x640e, 0x656f, 0x6592, 0x65d3, 0x6686,
- 0x668c, 0x6695, 0x6690, 0x668b, 0x668a, 0x6699, 0x6694, 0x6678,
- 0x6720, 0x6966, 0x695f, 0x6938, 0x694e, 0x6962, 0x6971, 0x693f,
- 0x6945, 0x696a, 0x6939, 0x6942, 0x6957, 0x6959, 0x697a, 0x6948,
- 0x6949, 0x6935, 0x696c, 0x6933, 0x693d, 0x6965, 0x68f0, 0x6978,
- 0x6934, 0x6969, 0x6940, 0x696f, 0x6944, 0x6976, 0x6958, 0x6941,
- 0x6974, 0x694c, 0x693b, 0x694b, 0x6937, 0x695c, 0x694f, 0x6951,
- 0x6932, 0x6952, 0x692f, 0x697b, 0x693c, 0x6b46, 0x6b45, 0x6b43,
- 0x6b42, 0x6b48, 0x6b41, 0x6b9b, 0xfa0d, 0x6bfb, 0x6bfc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6bf9, 0x6bf7, 0x6bf8, 0x6e9b, 0x6ed6, 0x6ec8, 0x6e8f, 0x6ec0,
- 0x6e9f, 0x6e93, 0x6e94, 0x6ea0, 0x6eb1, 0x6eb9, 0x6ec6, 0x6ed2,
- 0x6ebd, 0x6ec1, 0x6e9e, 0x6ec9, 0x6eb7, 0x6eb0, 0x6ecd, 0x6ea6,
- 0x6ecf, 0x6eb2, 0x6ebe, 0x6ec3, 0x6edc, 0x6ed8, 0x6e99, 0x6e92,
- 0x6e8e, 0x6e8d, 0x6ea4, 0x6ea1, 0x6ebf, 0x6eb3, 0x6ed0, 0x6eca,
- 0x6e97, 0x6eae, 0x6ea3, 0x7147, 0x7154, 0x7152, 0x7163, 0x7160,
- 0x7141, 0x715d, 0x7162, 0x7172, 0x7178, 0x716a, 0x7161, 0x7142,
- 0x7158, 0x7143, 0x714b, 0x7170, 0x715f, 0x7150, 0x7153, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7144, 0x714d, 0x715a, 0x724f, 0x728d, 0x728c, 0x7291,
- 0x7290, 0x728e, 0x733c, 0x7342, 0x733b, 0x733a, 0x7340, 0x734a,
- 0x7349, 0x7444, 0x744a, 0x744b, 0x7452, 0x7451, 0x7457, 0x7440,
- 0x744f, 0x7450, 0x744e, 0x7442, 0x7446, 0x744d, 0x7454, 0x74e1,
- 0x74ff, 0x74fe, 0x74fd, 0x751d, 0x7579, 0x7577, 0x6983, 0x75ef,
- 0x760f, 0x7603, 0x75f7, 0x75fe, 0x75fc, 0x75f9, 0x75f8, 0x7610,
- 0x75fb, 0x75f6, 0x75ed, 0x75f5, 0x75fd, 0x7699, 0x76b5, 0x76dd,
- 0x7755, 0x775f, 0x7760, 0x7752, 0x7756, 0x775a, 0x7769, 0x7767,
- 0x7754, 0x7759, 0x776d, 0x77e0, 0x7887, 0x789a, 0x7894, 0x788f,
- 0x7884, 0x7895, 0x7885, 0x7886, 0x78a1, 0x7883, 0x7879, 0x7899,
- 0x7880, 0x7896, 0x787b, 0x797c, 0x7982, 0x797d, 0x7979, 0x7a11,
- 0x7a18, 0x7a19, 0x7a12, 0x7a17, 0x7a15, 0x7a22, 0x7a13, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7a1b, 0x7a10, 0x7aa3, 0x7aa2, 0x7a9e, 0x7aeb, 0x7b66, 0x7b64,
- 0x7b6d, 0x7b74, 0x7b69, 0x7b72, 0x7b65, 0x7b73, 0x7b71, 0x7b70,
- 0x7b61, 0x7b78, 0x7b76, 0x7b63, 0x7cb2, 0x7cb4, 0x7caf, 0x7d88,
- 0x7d86, 0x7d80, 0x7d8d, 0x7d7f, 0x7d85, 0x7d7a, 0x7d8e, 0x7d7b,
- 0x7d83, 0x7d7c, 0x7d8c, 0x7d94, 0x7d84, 0x7d7d, 0x7d92, 0x7f6d,
- 0x7f6b, 0x7f67, 0x7f68, 0x7f6c, 0x7fa6, 0x7fa5, 0x7fa7, 0x7fdb,
- 0x7fdc, 0x8021, 0x8164, 0x8160, 0x8177, 0x815c, 0x8169, 0x815b,
- 0x8162, 0x8172, 0x6721, 0x815e, 0x8176, 0x8167, 0x816f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8144, 0x8161, 0x821d, 0x8249, 0x8244, 0x8240, 0x8242,
- 0x8245, 0x84f1, 0x843f, 0x8456, 0x8476, 0x8479, 0x848f, 0x848d,
- 0x8465, 0x8451, 0x8440, 0x8486, 0x8467, 0x8430, 0x844d, 0x847d,
- 0x845a, 0x8459, 0x8474, 0x8473, 0x845d, 0x8507, 0x845e, 0x8437,
- 0x843a, 0x8434, 0x847a, 0x8443, 0x8478, 0x8432, 0x8445, 0x8429,
- 0x83d9, 0x844b, 0x842f, 0x8442, 0x842d, 0x845f, 0x8470, 0x8439,
- 0x844e, 0x844c, 0x8452, 0x846f, 0x84c5, 0x848e, 0x843b, 0x8447,
- 0x8436, 0x8433, 0x8468, 0x847e, 0x8444, 0x842b, 0x8460, 0x8454,
- 0x846e, 0x8450, 0x870b, 0x8704, 0x86f7, 0x870c, 0x86fa, 0x86d6,
- 0x86f5, 0x874d, 0x86f8, 0x870e, 0x8709, 0x8701, 0x86f6, 0x870d,
- 0x8705, 0x88d6, 0x88cb, 0x88cd, 0x88ce, 0x88de, 0x88db, 0x88da,
- 0x88cc, 0x88d0, 0x8985, 0x899b, 0x89df, 0x89e5, 0x89e4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x89e1, 0x89e0, 0x89e2, 0x89dc, 0x89e6, 0x8a76, 0x8a86, 0x8a7f,
- 0x8a61, 0x8a3f, 0x8a77, 0x8a82, 0x8a84, 0x8a75, 0x8a83, 0x8a81,
- 0x8a74, 0x8a7a, 0x8c3c, 0x8c4b, 0x8c4a, 0x8c65, 0x8c64, 0x8c66,
- 0x8c86, 0x8c84, 0x8c85, 0x8ccc, 0x8d68, 0x8d69, 0x8d91, 0x8d8c,
- 0x8d8e, 0x8d8f, 0x8d8d, 0x8d93, 0x8d94, 0x8d90, 0x8d92, 0x8df0,
- 0x8de0, 0x8dec, 0x8df1, 0x8dee, 0x8dd0, 0x8de9, 0x8de3, 0x8de2,
- 0x8de7, 0x8df2, 0x8deb, 0x8df4, 0x8f06, 0x8eff, 0x8f01, 0x8f00,
- 0x8f05, 0x8f07, 0x8f08, 0x8f02, 0x8f0b, 0x9052, 0x903f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9044, 0x9049, 0x903d, 0x9110, 0x910d, 0x910f, 0x9111,
- 0x9116, 0x9114, 0x910b, 0x910e, 0x916e, 0x916f, 0x9248, 0x9252,
- 0x9230, 0x923a, 0x9266, 0x9233, 0x9265, 0x925e, 0x9283, 0x922e,
- 0x924a, 0x9246, 0x926d, 0x926c, 0x924f, 0x9260, 0x9267, 0x926f,
- 0x9236, 0x9261, 0x9270, 0x9231, 0x9254, 0x9263, 0x9250, 0x9272,
- 0x924e, 0x9253, 0x924c, 0x9256, 0x9232, 0x959f, 0x959c, 0x959e,
- 0x959b, 0x9692, 0x9693, 0x9691, 0x9697, 0x96ce, 0x96fa, 0x96fd,
- 0x96f8, 0x96f5, 0x9773, 0x9777, 0x9778, 0x9772, 0x980f, 0x980d,
- 0x980e, 0x98ac, 0x98f6, 0x98f9, 0x99af, 0x99b2, 0x99b0, 0x99b5,
- 0x9aad, 0x9aab, 0x9b5b, 0x9cea, 0x9ced, 0x9ce7, 0x9e80, 0x9efd,
- 0x50e6, 0x50d4, 0x50d7, 0x50e8, 0x50f3, 0x50db, 0x50ea, 0x50dd,
- 0x50e4, 0x50d3, 0x50ec, 0x50f0, 0x50ef, 0x50e3, 0x50e0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x51d8, 0x5280, 0x5281, 0x52e9, 0x52eb, 0x5330, 0x53ac, 0x5627,
- 0x5615, 0x560c, 0x5612, 0x55fc, 0x560f, 0x561c, 0x5601, 0x5613,
- 0x5602, 0x55fa, 0x561d, 0x5604, 0x55ff, 0x55f9, 0x5889, 0x587c,
- 0x5890, 0x5898, 0x5886, 0x5881, 0x587f, 0x5874, 0x588b, 0x587a,
- 0x5887, 0x5891, 0x588e, 0x5876, 0x5882, 0x5888, 0x587b, 0x5894,
- 0x588f, 0x58fe, 0x596b, 0x5adc, 0x5aee, 0x5ae5, 0x5ad5, 0x5aea,
- 0x5ada, 0x5aed, 0x5aeb, 0x5af3, 0x5ae2, 0x5ae0, 0x5adb, 0x5aec,
- 0x5ade, 0x5add, 0x5ad9, 0x5ae8, 0x5adf, 0x5b77, 0x5be0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5be3, 0x5c63, 0x5d82, 0x5d80, 0x5d7d, 0x5d86, 0x5d7a,
- 0x5d81, 0x5d77, 0x5d8a, 0x5d89, 0x5d88, 0x5d7e, 0x5d7c, 0x5d8d,
- 0x5d79, 0x5d7f, 0x5e58, 0x5e59, 0x5e53, 0x5ed8, 0x5ed1, 0x5ed7,
- 0x5ece, 0x5edc, 0x5ed5, 0x5ed9, 0x5ed2, 0x5ed4, 0x5f44, 0x5f43,
- 0x5f6f, 0x5fb6, 0x612c, 0x6128, 0x6141, 0x615e, 0x6171, 0x6173,
- 0x6152, 0x6153, 0x6172, 0x616c, 0x6180, 0x6174, 0x6154, 0x617a,
- 0x615b, 0x6165, 0x613b, 0x616a, 0x6161, 0x6156, 0x6229, 0x6227,
- 0x622b, 0x642b, 0x644d, 0x645b, 0x645d, 0x6474, 0x6476, 0x6472,
- 0x6473, 0x647d, 0x6475, 0x6466, 0x64a6, 0x644e, 0x6482, 0x645e,
- 0x645c, 0x644b, 0x6453, 0x6460, 0x6450, 0x647f, 0x643f, 0x646c,
- 0x646b, 0x6459, 0x6465, 0x6477, 0x6573, 0x65a0, 0x66a1, 0x66a0,
- 0x669f, 0x6705, 0x6704, 0x6722, 0x69b1, 0x69b6, 0x69c9, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x69a0, 0x69ce, 0x6996, 0x69b0, 0x69ac, 0x69bc, 0x6991, 0x6999,
- 0x698e, 0x69a7, 0x698d, 0x69a9, 0x69be, 0x69af, 0x69bf, 0x69c4,
- 0x69bd, 0x69a4, 0x69d4, 0x69b9, 0x69ca, 0x699a, 0x69cf, 0x69b3,
- 0x6993, 0x69aa, 0x69a1, 0x699e, 0x69d9, 0x6997, 0x6990, 0x69c2,
- 0x69b5, 0x69a5, 0x69c6, 0x6b4a, 0x6b4d, 0x6b4b, 0x6b9e, 0x6b9f,
- 0x6ba0, 0x6bc3, 0x6bc4, 0x6bfe, 0x6ece, 0x6ef5, 0x6ef1, 0x6f03,
- 0x6f25, 0x6ef8, 0x6f37, 0x6efb, 0x6f2e, 0x6f09, 0x6f4e, 0x6f19,
- 0x6f1a, 0x6f27, 0x6f18, 0x6f3b, 0x6f12, 0x6eed, 0x6f0a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6f36, 0x6f73, 0x6ef9, 0x6eee, 0x6f2d, 0x6f40, 0x6f30,
- 0x6f3c, 0x6f35, 0x6eeb, 0x6f07, 0x6f0e, 0x6f43, 0x6f05, 0x6efd,
- 0x6ef6, 0x6f39, 0x6f1c, 0x6efc, 0x6f3a, 0x6f1f, 0x6f0d, 0x6f1e,
- 0x6f08, 0x6f21, 0x7187, 0x7190, 0x7189, 0x7180, 0x7185, 0x7182,
- 0x718f, 0x717b, 0x7186, 0x7181, 0x7197, 0x7244, 0x7253, 0x7297,
- 0x7295, 0x7293, 0x7343, 0x734d, 0x7351, 0x734c, 0x7462, 0x7473,
- 0x7471, 0x7475, 0x7472, 0x7467, 0x746e, 0x7500, 0x7502, 0x7503,
- 0x757d, 0x7590, 0x7616, 0x7608, 0x760c, 0x7615, 0x7611, 0x760a,
- 0x7614, 0x76b8, 0x7781, 0x777c, 0x7785, 0x7782, 0x776e, 0x7780,
- 0x776f, 0x777e, 0x7783, 0x78b2, 0x78aa, 0x78b4, 0x78ad, 0x78a8,
- 0x787e, 0x78ab, 0x789e, 0x78a5, 0x78a0, 0x78ac, 0x78a2, 0x78a4,
- 0x7998, 0x798a, 0x798b, 0x7996, 0x7995, 0x7994, 0x7993, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7997, 0x7988, 0x7992, 0x7990, 0x7a2b, 0x7a4a, 0x7a30, 0x7a2f,
- 0x7a28, 0x7a26, 0x7aa8, 0x7aab, 0x7aac, 0x7aee, 0x7b88, 0x7b9c,
- 0x7b8a, 0x7b91, 0x7b90, 0x7b96, 0x7b8d, 0x7b8c, 0x7b9b, 0x7b8e,
- 0x7b85, 0x7b98, 0x5284, 0x7b99, 0x7ba4, 0x7b82, 0x7cbb, 0x7cbf,
- 0x7cbc, 0x7cba, 0x7da7, 0x7db7, 0x7dc2, 0x7da3, 0x7daa, 0x7dc1,
- 0x7dc0, 0x7dc5, 0x7d9d, 0x7dce, 0x7dc4, 0x7dc6, 0x7dcb, 0x7dcc,
- 0x7daf, 0x7db9, 0x7d96, 0x7dbc, 0x7d9f, 0x7da6, 0x7dae, 0x7da9,
- 0x7da1, 0x7dc9, 0x7f73, 0x7fe2, 0x7fe3, 0x7fe5, 0x7fde, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8024, 0x805d, 0x805c, 0x8189, 0x8186, 0x8183, 0x8187,
- 0x818d, 0x818c, 0x818b, 0x8215, 0x8497, 0x84a4, 0x84a1, 0x849f,
- 0x84ba, 0x84ce, 0x84c2, 0x84ac, 0x84ae, 0x84ab, 0x84b9, 0x84b4,
- 0x84c1, 0x84cd, 0x84aa, 0x849a, 0x84b1, 0x84d0, 0x849d, 0x84a7,
- 0x84bb, 0x84a2, 0x8494, 0x84c7, 0x84cc, 0x849b, 0x84a9, 0x84af,
- 0x84a8, 0x84d6, 0x8498, 0x84b6, 0x84cf, 0x84a0, 0x84d7, 0x84d4,
- 0x84d2, 0x84db, 0x84b0, 0x8491, 0x8661, 0x8733, 0x8723, 0x8728,
- 0x876b, 0x8740, 0x872e, 0x871e, 0x8721, 0x8719, 0x871b, 0x8743,
- 0x872c, 0x8741, 0x873e, 0x8746, 0x8720, 0x8732, 0x872a, 0x872d,
- 0x873c, 0x8712, 0x873a, 0x8731, 0x8735, 0x8742, 0x8726, 0x8727,
- 0x8738, 0x8724, 0x871a, 0x8730, 0x8711, 0x88f7, 0x88e7, 0x88f1,
- 0x88f2, 0x88fa, 0x88fe, 0x88ee, 0x88fc, 0x88f6, 0x88fb, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x88f0, 0x88ec, 0x88eb, 0x899d, 0x89a1, 0x899f, 0x899e, 0x89e9,
- 0x89eb, 0x89e8, 0x8aab, 0x8a99, 0x8a8b, 0x8a92, 0x8a8f, 0x8a96,
- 0x8c3d, 0x8c68, 0x8c69, 0x8cd5, 0x8ccf, 0x8cd7, 0x8d96, 0x8e09,
- 0x8e02, 0x8dff, 0x8e0d, 0x8dfd, 0x8e0a, 0x8e03, 0x8e07, 0x8e06,
- 0x8e05, 0x8dfe, 0x8e00, 0x8e04, 0x8f10, 0x8f11, 0x8f0e, 0x8f0d,
- 0x9123, 0x911c, 0x9120, 0x9122, 0x911f, 0x911d, 0x911a, 0x9124,
- 0x9121, 0x911b, 0x917a, 0x9172, 0x9179, 0x9173, 0x92a5, 0x92a4,
- 0x9276, 0x929b, 0x927a, 0x92a0, 0x9294, 0x92aa, 0x928d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x92a6, 0x929a, 0x92ab, 0x9279, 0x9297, 0x927f, 0x92a3,
- 0x92ee, 0x928e, 0x9282, 0x9295, 0x92a2, 0x927d, 0x9288, 0x92a1,
- 0x928a, 0x9286, 0x928c, 0x9299, 0x92a7, 0x927e, 0x9287, 0x92a9,
- 0x929d, 0x928b, 0x922d, 0x969e, 0x96a1, 0x96ff, 0x9758, 0x977d,
- 0x977a, 0x977e, 0x9783, 0x9780, 0x9782, 0x977b, 0x9784, 0x9781,
- 0x977f, 0x97ce, 0x97cd, 0x9816, 0x98ad, 0x98ae, 0x9902, 0x9900,
- 0x9907, 0x999d, 0x999c, 0x99c3, 0x99b9, 0x99bb, 0x99ba, 0x99c2,
- 0x99bd, 0x99c7, 0x9ab1, 0x9ae3, 0x9ae7, 0x9b3e, 0x9b3f, 0x9b60,
- 0x9b61, 0x9b5f, 0x9cf1, 0x9cf2, 0x9cf5, 0x9ea7, 0x50ff, 0x5103,
- 0x5130, 0x50f8, 0x5106, 0x5107, 0x50f6, 0x50fe, 0x510b, 0x510c,
- 0x50fd, 0x510a, 0x528b, 0x528c, 0x52f1, 0x52ef, 0x5648, 0x5642,
- 0x564c, 0x5635, 0x5641, 0x564a, 0x5649, 0x5646, 0x5658, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x565a, 0x5640, 0x5633, 0x563d, 0x562c, 0x563e, 0x5638, 0x562a,
- 0x563a, 0x571a, 0x58ab, 0x589d, 0x58b1, 0x58a0, 0x58a3, 0x58af,
- 0x58ac, 0x58a5, 0x58a1, 0x58ff, 0x5aff, 0x5af4, 0x5afd, 0x5af7,
- 0x5af6, 0x5b03, 0x5af8, 0x5b02, 0x5af9, 0x5b01, 0x5b07, 0x5b05,
- 0x5b0f, 0x5c67, 0x5d99, 0x5d97, 0x5d9f, 0x5d92, 0x5da2, 0x5d93,
- 0x5d95, 0x5da0, 0x5d9c, 0x5da1, 0x5d9a, 0x5d9e, 0x5e69, 0x5e5d,
- 0x5e60, 0x5e5c, 0x7df3, 0x5edb, 0x5ede, 0x5ee1, 0x5f49, 0x5fb2,
- 0x618b, 0x6183, 0x6179, 0x61b1, 0x61b0, 0x61a2, 0x6189, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x619b, 0x6193, 0x61af, 0x61ad, 0x619f, 0x6192, 0x61aa,
- 0x61a1, 0x618d, 0x6166, 0x61b3, 0x622d, 0x646e, 0x6470, 0x6496,
- 0x64a0, 0x6485, 0x6497, 0x649c, 0x648f, 0x648b, 0x648a, 0x648c,
- 0x64a3, 0x649f, 0x6468, 0x64b1, 0x6498, 0x6576, 0x657a, 0x6579,
- 0x657b, 0x65b2, 0x65b3, 0x66b5, 0x66b0, 0x66a9, 0x66b2, 0x66b7,
- 0x66aa, 0x66af, 0x6a00, 0x6a06, 0x6a17, 0x69e5, 0x69f8, 0x6a15,
- 0x69f1, 0x69e4, 0x6a20, 0x69ff, 0x69ec, 0x69e2, 0x6a1b, 0x6a1d,
- 0x69fe, 0x6a27, 0x69f2, 0x69ee, 0x6a14, 0x69f7, 0x69e7, 0x6a40,
- 0x6a08, 0x69e6, 0x69fb, 0x6a0d, 0x69fc, 0x69eb, 0x6a09, 0x6a04,
- 0x6a18, 0x6a25, 0x6a0f, 0x69f6, 0x6a26, 0x6a07, 0x69f4, 0x6a16,
- 0x6b51, 0x6ba5, 0x6ba3, 0x6ba2, 0x6ba6, 0x6c01, 0x6c00, 0x6bff,
- 0x6c02, 0x6f41, 0x6f26, 0x6f7e, 0x6f87, 0x6fc6, 0x6f92, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6f8d, 0x6f89, 0x6f8c, 0x6f62, 0x6f4f, 0x6f85, 0x6f5a, 0x6f96,
- 0x6f76, 0x6f6c, 0x6f82, 0x6f55, 0x6f72, 0x6f52, 0x6f50, 0x6f57,
- 0x6f94, 0x6f93, 0x6f5d, 0x6f00, 0x6f61, 0x6f6b, 0x6f7d, 0x6f67,
- 0x6f90, 0x6f53, 0x6f8b, 0x6f69, 0x6f7f, 0x6f95, 0x6f63, 0x6f77,
- 0x6f6a, 0x6f7b, 0x71b2, 0x71af, 0x719b, 0x71b0, 0x71a0, 0x719a,
- 0x71a9, 0x71b5, 0x719d, 0x71a5, 0x719e, 0x71a4, 0x71a1, 0x71aa,
- 0x719c, 0x71a7, 0x71b3, 0x7298, 0x729a, 0x7358, 0x7352, 0x735e,
- 0x735f, 0x7360, 0x735d, 0x735b, 0x7361, 0x735a, 0x7359, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7362, 0x7487, 0x7489, 0x748a, 0x7486, 0x7481, 0x747d,
- 0x7485, 0x7488, 0x747c, 0x7479, 0x7508, 0x7507, 0x757e, 0x7625,
- 0x761e, 0x7619, 0x761d, 0x761c, 0x7623, 0x761a, 0x7628, 0x761b,
- 0x769c, 0x769d, 0x769e, 0x769b, 0x778d, 0x778f, 0x7789, 0x7788,
- 0x78cd, 0x78bb, 0x78cf, 0x78cc, 0x78d1, 0x78ce, 0x78d4, 0x78c8,
- 0x78c3, 0x78c4, 0x78c9, 0x799a, 0x79a1, 0x79a0, 0x799c, 0x79a2,
- 0x799b, 0x6b76, 0x7a39, 0x7ab2, 0x7ab4, 0x7ab3, 0x7bb7, 0x7bcb,
- 0x7bbe, 0x7bac, 0x7bce, 0x7baf, 0x7bb9, 0x7bca, 0x7bb5, 0x7cc5,
- 0x7cc8, 0x7ccc, 0x7ccb, 0x7df7, 0x7ddb, 0x7dea, 0x7de7, 0x7dd7,
- 0x7de1, 0x7e03, 0x7dfa, 0x7de6, 0x7df6, 0x7df1, 0x7df0, 0x7dee,
- 0x7ddf, 0x7f76, 0x7fac, 0x7fb0, 0x7fad, 0x7fed, 0x7feb, 0x7fea,
- 0x7fec, 0x7fe6, 0x7fe8, 0x8064, 0x8067, 0x81a3, 0x819f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x819e, 0x8195, 0x81a2, 0x8199, 0x8197, 0x8216, 0x824f, 0x8253,
- 0x8252, 0x8250, 0x824e, 0x8251, 0x8524, 0x853b, 0x850f, 0x8500,
- 0x8529, 0x850e, 0x8509, 0x850d, 0x851f, 0x850a, 0x8527, 0x851c,
- 0x84fb, 0x852b, 0x84fa, 0x8508, 0x850c, 0x84f4, 0x852a, 0x84f2,
- 0x8515, 0x84f7, 0x84eb, 0x84f3, 0x84fc, 0x8512, 0x84ea, 0x84e9,
- 0x8516, 0x84fe, 0x8528, 0x851d, 0x852e, 0x8502, 0x84fd, 0x851e,
- 0x84f6, 0x8531, 0x8526, 0x84e7, 0x84e8, 0x84f0, 0x84ef, 0x84f9,
- 0x8518, 0x8520, 0x8530, 0x850b, 0x8519, 0x852f, 0x8662, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8756, 0x8763, 0x8764, 0x8777, 0x87e1, 0x8773, 0x8758,
- 0x8754, 0x875b, 0x8752, 0x8761, 0x875a, 0x8751, 0x875e, 0x876d,
- 0x876a, 0x8750, 0x874e, 0x875f, 0x875d, 0x876f, 0x876c, 0x877a,
- 0x876e, 0x875c, 0x8765, 0x874f, 0x877b, 0x8775, 0x8762, 0x8767,
- 0x8769, 0x885a, 0x8905, 0x890c, 0x8914, 0x890b, 0x8917, 0x8918,
- 0x8919, 0x8906, 0x8916, 0x8911, 0x890e, 0x8909, 0x89a2, 0x89a4,
- 0x89a3, 0x89ed, 0x89f0, 0x89ec, 0x8acf, 0x8ac6, 0x8ab8, 0x8ad3,
- 0x8ad1, 0x8ad4, 0x8ad5, 0x8abb, 0x8ad7, 0x8abe, 0x8ac0, 0x8ac5,
- 0x8ad8, 0x8ac3, 0x8aba, 0x8abd, 0x8ad9, 0x8c3e, 0x8c4d, 0x8c8f,
- 0x8ce5, 0x8cdf, 0x8cd9, 0x8ce8, 0x8cda, 0x8cdd, 0x8ce7, 0x8da0,
- 0x8d9c, 0x8da1, 0x8d9b, 0x8e20, 0x8e23, 0x8e25, 0x8e24, 0x8e2e,
- 0x8e15, 0x8e1b, 0x8e16, 0x8e11, 0x8e19, 0x8e26, 0x8e27, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8e14, 0x8e12, 0x8e18, 0x8e13, 0x8e1c, 0x8e17, 0x8e1a, 0x8f2c,
- 0x8f24, 0x8f18, 0x8f1a, 0x8f20, 0x8f23, 0x8f16, 0x8f17, 0x9073,
- 0x9070, 0x906f, 0x9067, 0x906b, 0x912f, 0x912b, 0x9129, 0x912a,
- 0x9132, 0x9126, 0x912e, 0x9185, 0x9186, 0x918a, 0x9181, 0x9182,
- 0x9184, 0x9180, 0x92d0, 0x92c3, 0x92c4, 0x92c0, 0x92d9, 0x92b6,
- 0x92cf, 0x92f1, 0x92df, 0x92d8, 0x92e9, 0x92d7, 0x92dd, 0x92cc,
- 0x92ef, 0x92c2, 0x92e8, 0x92ca, 0x92c8, 0x92ce, 0x92e6, 0x92cd,
- 0x92d5, 0x92c9, 0x92e0, 0x92de, 0x92e7, 0x92d1, 0x92d3, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x92b5, 0x92e1, 0x92c6, 0x92b4, 0x957c, 0x95ac, 0x95ab,
- 0x95ae, 0x95b0, 0x96a4, 0x96a2, 0x96d3, 0x9705, 0x9708, 0x9702,
- 0x975a, 0x978a, 0x978e, 0x9788, 0x97d0, 0x97cf, 0x981e, 0x981d,
- 0x9826, 0x9829, 0x9828, 0x9820, 0x981b, 0x9827, 0x98b2, 0x9908,
- 0x98fa, 0x9911, 0x9914, 0x9916, 0x9917, 0x9915, 0x99dc, 0x99cd,
- 0x99cf, 0x99d3, 0x99d4, 0x99ce, 0x99c9, 0x99d6, 0x99d8, 0x99cb,
- 0x99d7, 0x99cc, 0x9ab3, 0x9aec, 0x9aeb, 0x9af3, 0x9af2, 0x9af1,
- 0x9b46, 0x9b43, 0x9b67, 0x9b74, 0x9b71, 0x9b66, 0x9b76, 0x9b75,
- 0x9b70, 0x9b68, 0x9b64, 0x9b6c, 0x9cfc, 0x9cfa, 0x9cfd, 0x9cff,
- 0x9cf7, 0x9d07, 0x9d00, 0x9cf9, 0x9cfb, 0x9d08, 0x9d05, 0x9d04,
- 0x9e83, 0x9ed3, 0x9f0f, 0x9f10, 0x511c, 0x5113, 0x5117, 0x511a,
- 0x5111, 0x51de, 0x5334, 0x53e1, 0x5670, 0x5660, 0x566e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5673, 0x5666, 0x5663, 0x566d, 0x5672, 0x565e, 0x5677, 0x571c,
- 0x571b, 0x58c8, 0x58bd, 0x58c9, 0x58bf, 0x58ba, 0x58c2, 0x58bc,
- 0x58c6, 0x5b17, 0x5b19, 0x5b1b, 0x5b21, 0x5b14, 0x5b13, 0x5b10,
- 0x5b16, 0x5b28, 0x5b1a, 0x5b20, 0x5b1e, 0x5bef, 0x5dac, 0x5db1,
- 0x5da9, 0x5da7, 0x5db5, 0x5db0, 0x5dae, 0x5daa, 0x5da8, 0x5db2,
- 0x5dad, 0x5daf, 0x5db4, 0x5e67, 0x5e68, 0x5e66, 0x5e6f, 0x5ee9,
- 0x5ee7, 0x5ee6, 0x5ee8, 0x5ee5, 0x5f4b, 0x5fbc, 0x619d, 0x61a8,
- 0x6196, 0x61c5, 0x61b4, 0x61c6, 0x61c1, 0x61cc, 0x61ba, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x61bf, 0x61b8, 0x618c, 0x64d7, 0x64d6, 0x64d0, 0x64cf,
- 0x64c9, 0x64bd, 0x6489, 0x64c3, 0x64db, 0x64f3, 0x64d9, 0x6533,
- 0x657f, 0x657c, 0x65a2, 0x66c8, 0x66be, 0x66c0, 0x66ca, 0x66cb,
- 0x66cf, 0x66bd, 0x66bb, 0x66ba, 0x66cc, 0x6723, 0x6a34, 0x6a66,
- 0x6a49, 0x6a67, 0x6a32, 0x6a68, 0x6a3e, 0x6a5d, 0x6a6d, 0x6a76,
- 0x6a5b, 0x6a51, 0x6a28, 0x6a5a, 0x6a3b, 0x6a3f, 0x6a41, 0x6a6a,
- 0x6a64, 0x6a50, 0x6a4f, 0x6a54, 0x6a6f, 0x6a69, 0x6a60, 0x6a3c,
- 0x6a5e, 0x6a56, 0x6a55, 0x6a4d, 0x6a4e, 0x6a46, 0x6b55, 0x6b54,
- 0x6b56, 0x6ba7, 0x6baa, 0x6bab, 0x6bc8, 0x6bc7, 0x6c04, 0x6c03,
- 0x6c06, 0x6fad, 0x6fcb, 0x6fa3, 0x6fc7, 0x6fbc, 0x6fce, 0x6fc8,
- 0x6f5e, 0x6fc4, 0x6fbd, 0x6f9e, 0x6fca, 0x6fa8, 0x7004, 0x6fa5,
- 0x6fae, 0x6fba, 0x6fac, 0x6faa, 0x6fcf, 0x6fbf, 0x6fb8, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6fa2, 0x6fc9, 0x6fab, 0x6fcd, 0x6faf, 0x6fb2, 0x6fb0, 0x71c5,
- 0x71c2, 0x71bf, 0x71b8, 0x71d6, 0x71c0, 0x71c1, 0x71cb, 0x71d4,
- 0x71ca, 0x71c7, 0x71cf, 0x71bd, 0x71d8, 0x71bc, 0x71c6, 0x71da,
- 0x71db, 0x729d, 0x729e, 0x7369, 0x7366, 0x7367, 0x736c, 0x7365,
- 0x736b, 0x736a, 0x747f, 0x749a, 0x74a0, 0x7494, 0x7492, 0x7495,
- 0x74a1, 0x750b, 0x7580, 0x762f, 0x762d, 0x7631, 0x763d, 0x7633,
- 0x763c, 0x7635, 0x7632, 0x7630, 0x76bb, 0x76e6, 0x779a, 0x779d,
- 0x77a1, 0x779c, 0x779b, 0x77a2, 0x77a3, 0x7795, 0x7799, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7797, 0x78dd, 0x78e9, 0x78e5, 0x78ea, 0x78de, 0x78e3,
- 0x78db, 0x78e1, 0x78e2, 0x78ed, 0x78df, 0x78e0, 0x79a4, 0x7a44,
- 0x7a48, 0x7a47, 0x7ab6, 0x7ab8, 0x7ab5, 0x7ab1, 0x7ab7, 0x7bde,
- 0x7be3, 0x7be7, 0x7bdd, 0x7bd5, 0x7be5, 0x7bda, 0x7be8, 0x7bf9,
- 0x7bd4, 0x7bea, 0x7be2, 0x7bdc, 0x7beb, 0x7bd8, 0x7bdf, 0x7cd2,
- 0x7cd4, 0x7cd7, 0x7cd0, 0x7cd1, 0x7e12, 0x7e21, 0x7e17, 0x7e0c,
- 0x7e1f, 0x7e20, 0x7e13, 0x7e0e, 0x7e1c, 0x7e15, 0x7e1a, 0x7e22,
- 0x7e0b, 0x7e0f, 0x7e16, 0x7e0d, 0x7e14, 0x7e25, 0x7e24, 0x7f43,
- 0x7f7b, 0x7f7c, 0x7f7a, 0x7fb1, 0x7fef, 0x802a, 0x8029, 0x806c,
- 0x81b1, 0x81a6, 0x81ae, 0x81b9, 0x81b5, 0x81ab, 0x81b0, 0x81ac,
- 0x81b4, 0x81b2, 0x81b7, 0x81a7, 0x81f2, 0x8255, 0x8256, 0x8257,
- 0x8556, 0x8545, 0x856b, 0x854d, 0x8553, 0x8561, 0x8558, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8540, 0x8546, 0x8564, 0x8541, 0x8562, 0x8544, 0x8551, 0x8547,
- 0x8563, 0x853e, 0x855b, 0x8571, 0x854e, 0x856e, 0x8575, 0x8555,
- 0x8567, 0x8560, 0x858c, 0x8566, 0x855d, 0x8554, 0x8565, 0x856c,
- 0x8663, 0x8665, 0x8664, 0x879b, 0x878f, 0x8797, 0x8793, 0x8792,
- 0x8788, 0x8781, 0x8796, 0x8798, 0x8779, 0x8787, 0x87a3, 0x8785,
- 0x8790, 0x8791, 0x879d, 0x8784, 0x8794, 0x879c, 0x879a, 0x8789,
- 0x891e, 0x8926, 0x8930, 0x892d, 0x892e, 0x8927, 0x8931, 0x8922,
- 0x8929, 0x8923, 0x892f, 0x892c, 0x891f, 0x89f1, 0x8ae0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8ae2, 0x8af2, 0x8af4, 0x8af5, 0x8add, 0x8b14, 0x8ae4,
- 0x8adf, 0x8af0, 0x8ac8, 0x8ade, 0x8ae1, 0x8ae8, 0x8aff, 0x8aef,
- 0x8afb, 0x8c91, 0x8c92, 0x8c90, 0x8cf5, 0x8cee, 0x8cf1, 0x8cf0,
- 0x8cf3, 0x8d6c, 0x8d6e, 0x8da5, 0x8da7, 0x8e33, 0x8e3e, 0x8e38,
- 0x8e40, 0x8e45, 0x8e36, 0x8e3c, 0x8e3d, 0x8e41, 0x8e30, 0x8e3f,
- 0x8ebd, 0x8f36, 0x8f2e, 0x8f35, 0x8f32, 0x8f39, 0x8f37, 0x8f34,
- 0x9076, 0x9079, 0x907b, 0x9086, 0x90fa, 0x9133, 0x9135, 0x9136,
- 0x9193, 0x9190, 0x9191, 0x918d, 0x918f, 0x9327, 0x931e, 0x9308,
- 0x931f, 0x9306, 0x930f, 0x937a, 0x9338, 0x933c, 0x931b, 0x9323,
- 0x9312, 0x9301, 0x9346, 0x932d, 0x930e, 0x930d, 0x92cb, 0x931d,
- 0x92fa, 0x9325, 0x9313, 0x92f9, 0x92f7, 0x9334, 0x9302, 0x9324,
- 0x92ff, 0x9329, 0x9339, 0x9335, 0x932a, 0x9314, 0x930c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x930b, 0x92fe, 0x9309, 0x9300, 0x92fb, 0x9316, 0x95bc, 0x95cd,
- 0x95be, 0x95b9, 0x95ba, 0x95b6, 0x95bf, 0x95b5, 0x95bd, 0x96a9,
- 0x96d4, 0x970b, 0x9712, 0x9710, 0x9799, 0x9797, 0x9794, 0x97f0,
- 0x97f8, 0x9835, 0x982f, 0x9832, 0x9924, 0x991f, 0x9927, 0x9929,
- 0x999e, 0x99ee, 0x99ec, 0x99e5, 0x99e4, 0x99f0, 0x99e3, 0x99ea,
- 0x99e9, 0x99e7, 0x9ab9, 0x9abf, 0x9ab4, 0x9abb, 0x9af6, 0x9afa,
- 0x9af9, 0x9af7, 0x9b33, 0x9b80, 0x9b85, 0x9b87, 0x9b7c, 0x9b7e,
- 0x9b7b, 0x9b82, 0x9b93, 0x9b92, 0x9b90, 0x9b7a, 0x9b95, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9b7d, 0x9b88, 0x9d25, 0x9d17, 0x9d20, 0x9d1e, 0x9d14,
- 0x9d29, 0x9d1d, 0x9d18, 0x9d22, 0x9d10, 0x9d19, 0x9d1f, 0x9e88,
- 0x9e86, 0x9e87, 0x9eae, 0x9ead, 0x9ed5, 0x9ed6, 0x9efa, 0x9f12,
- 0x9f3d, 0x5126, 0x5125, 0x5122, 0x5124, 0x5120, 0x5129, 0x52f4,
- 0x5693, 0x568c, 0x568d, 0x5686, 0x5684, 0x5683, 0x567e, 0x5682,
- 0x567f, 0x5681, 0x58d6, 0x58d4, 0x58cf, 0x58d2, 0x5b2d, 0x5b25,
- 0x5b32, 0x5b23, 0x5b2c, 0x5b27, 0x5b26, 0x5b2f, 0x5b2e, 0x5b7b,
- 0x5bf1, 0x5bf2, 0x5db7, 0x5e6c, 0x5e6a, 0x5fbe, 0x5fbb, 0x61c3,
- 0x61b5, 0x61bc, 0x61e7, 0x61e0, 0x61e5, 0x61e4, 0x61e8, 0x61de,
- 0x64ef, 0x64e9, 0x64e3, 0x64eb, 0x64e4, 0x64e8, 0x6581, 0x6580,
- 0x65b6, 0x65da, 0x66d2, 0x6a8d, 0x6a96, 0x6a81, 0x6aa5, 0x6a89,
- 0x6a9f, 0x6a9b, 0x6aa1, 0x6a9e, 0x6a87, 0x6a93, 0x6a8e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x6a95, 0x6a83, 0x6aa8, 0x6aa4, 0x6a91, 0x6a7f, 0x6aa6, 0x6a9a,
- 0x6a85, 0x6a8c, 0x6a92, 0x6b5b, 0x6bad, 0x6c09, 0x6fcc, 0x6fa9,
- 0x6ff4, 0x6fd4, 0x6fe3, 0x6fdc, 0x6fed, 0x6fe7, 0x6fe6, 0x6fde,
- 0x6ff2, 0x6fdd, 0x6fe2, 0x6fe8, 0x71e1, 0x71f1, 0x71e8, 0x71f2,
- 0x71e4, 0x71f0, 0x71e2, 0x7373, 0x736e, 0x736f, 0x7497, 0x74b2,
- 0x74ab, 0x7490, 0x74aa, 0x74ad, 0x74b1, 0x74a5, 0x74af, 0x7510,
- 0x7511, 0x7512, 0x750f, 0x7584, 0x7643, 0x7648, 0x7649, 0x7647,
- 0x76a4, 0x76e9, 0x77b5, 0x77ab, 0x77b2, 0x77b7, 0x77b6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x77b4, 0x77b1, 0x77a8, 0x77f0, 0x78f3, 0x78fd, 0x7902,
- 0x78fb, 0x78fc, 0x78f2, 0x7905, 0x78f9, 0x78fe, 0x7904, 0x79ab,
- 0x79a8, 0x7a5c, 0x7a5b, 0x7a56, 0x7a58, 0x7a54, 0x7a5a, 0x7abe,
- 0x7ac0, 0x7ac1, 0x7c05, 0x7c0f, 0x7bf2, 0x7c00, 0x7bff, 0x7bfb,
- 0x7c0e, 0x7bf4, 0x7c0b, 0x7bf3, 0x7c02, 0x7c09, 0x7c03, 0x7c01,
- 0x7bf8, 0x7bfd, 0x7c06, 0x7bf0, 0x7bf1, 0x7c10, 0x7c0a, 0x7ce8,
- 0x7e2d, 0x7e3c, 0x7e42, 0x7e33, 0x9848, 0x7e38, 0x7e2a, 0x7e49,
- 0x7e40, 0x7e47, 0x7e29, 0x7e4c, 0x7e30, 0x7e3b, 0x7e36, 0x7e44,
- 0x7e3a, 0x7f45, 0x7f7f, 0x7f7e, 0x7f7d, 0x7ff4, 0x7ff2, 0x802c,
- 0x81bb, 0x81c4, 0x81cc, 0x81ca, 0x81c5, 0x81c7, 0x81bc, 0x81e9,
- 0x825b, 0x825a, 0x825c, 0x8583, 0x8580, 0x858f, 0x85a7, 0x8595,
- 0x85a0, 0x858b, 0x85a3, 0x857b, 0x85a4, 0x859a, 0x859e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8577, 0x857c, 0x8589, 0x85a1, 0x857a, 0x8578, 0x8557, 0x858e,
- 0x8596, 0x8586, 0x858d, 0x8599, 0x859d, 0x8581, 0x85a2, 0x8582,
- 0x8588, 0x8585, 0x8579, 0x8576, 0x8598, 0x8590, 0x859f, 0x8668,
- 0x87be, 0x87aa, 0x87ad, 0x87c5, 0x87b0, 0x87ac, 0x87b9, 0x87b5,
- 0x87bc, 0x87ae, 0x87c9, 0x87c3, 0x87c2, 0x87cc, 0x87b7, 0x87af,
- 0x87c4, 0x87ca, 0x87b4, 0x87b6, 0x87bf, 0x87b8, 0x87bd, 0x87de,
- 0x87b2, 0x8935, 0x8933, 0x893c, 0x893e, 0x8941, 0x8952, 0x8937,
- 0x8942, 0x89ad, 0x89af, 0x89ae, 0x89f2, 0x89f3, 0x8b1e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8b18, 0x8b16, 0x8b11, 0x8b05, 0x8b0b, 0x8b22, 0x8b0f,
- 0x8b12, 0x8b15, 0x8b07, 0x8b0d, 0x8b08, 0x8b06, 0x8b1c, 0x8b13,
- 0x8b1a, 0x8c4f, 0x8c70, 0x8c72, 0x8c71, 0x8c6f, 0x8c95, 0x8c94,
- 0x8cf9, 0x8d6f, 0x8e4e, 0x8e4d, 0x8e53, 0x8e50, 0x8e4c, 0x8e47,
- 0x8f43, 0x8f40, 0x9085, 0x907e, 0x9138, 0x919a, 0x91a2, 0x919b,
- 0x9199, 0x919f, 0x91a1, 0x919d, 0x91a0, 0x93a1, 0x9383, 0x93af,
- 0x9364, 0x9356, 0x9347, 0x937c, 0x9358, 0x935c, 0x9376, 0x9349,
- 0x9350, 0x9351, 0x9360, 0x936d, 0x938f, 0x934c, 0x936a, 0x9379,
- 0x9357, 0x9355, 0x9352, 0x934f, 0x9371, 0x9377, 0x937b, 0x9361,
- 0x935e, 0x9363, 0x9367, 0x9380, 0x934e, 0x9359, 0x95c7, 0x95c0,
- 0x95c9, 0x95c3, 0x95c5, 0x95b7, 0x96ae, 0x96b0, 0x96ac, 0x9720,
- 0x971f, 0x9718, 0x971d, 0x9719, 0x979a, 0x97a1, 0x979c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x979e, 0x979d, 0x97d5, 0x97d4, 0x97f1, 0x9841, 0x9844, 0x984a,
- 0x9849, 0x9845, 0x9843, 0x9925, 0x992b, 0x992c, 0x992a, 0x9933,
- 0x9932, 0x992f, 0x992d, 0x9931, 0x9930, 0x9998, 0x99a3, 0x99a1,
- 0x9a02, 0x99fa, 0x99f4, 0x99f7, 0x99f9, 0x99f8, 0x99f6, 0x99fb,
- 0x99fd, 0x99fe, 0x99fc, 0x9a03, 0x9abe, 0x9afe, 0x9afd, 0x9b01,
- 0x9afc, 0x9b48, 0x9b9a, 0x9ba8, 0x9b9e, 0x9b9b, 0x9ba6, 0x9ba1,
- 0x9ba5, 0x9ba4, 0x9b86, 0x9ba2, 0x9ba0, 0x9baf, 0x9d33, 0x9d41,
- 0x9d67, 0x9d36, 0x9d2e, 0x9d2f, 0x9d31, 0x9d38, 0x9d30, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9d45, 0x9d42, 0x9d43, 0x9d3e, 0x9d37, 0x9d40, 0x9d3d,
- 0x7ff5, 0x9d2d, 0x9e8a, 0x9e89, 0x9e8d, 0x9eb0, 0x9ec8, 0x9eda,
- 0x9efb, 0x9eff, 0x9f24, 0x9f23, 0x9f22, 0x9f54, 0x9fa0, 0x5131,
- 0x512d, 0x512e, 0x5698, 0x569c, 0x5697, 0x569a, 0x569d, 0x5699,
- 0x5970, 0x5b3c, 0x5c69, 0x5c6a, 0x5dc0, 0x5e6d, 0x5e6e, 0x61d8,
- 0x61df, 0x61ed, 0x61ee, 0x61f1, 0x61ea, 0x61f0, 0x61eb, 0x61d6,
- 0x61e9, 0x64ff, 0x6504, 0x64fd, 0x64f8, 0x6501, 0x6503, 0x64fc,
- 0x6594, 0x65db, 0x66da, 0x66db, 0x66d8, 0x6ac5, 0x6ab9, 0x6abd,
- 0x6ae1, 0x6ac6, 0x6aba, 0x6ab6, 0x6ab7, 0x6ac7, 0x6ab4, 0x6aad,
- 0x6b5e, 0x6bc9, 0x6c0b, 0x7007, 0x700c, 0x700d, 0x7001, 0x7005,
- 0x7014, 0x700e, 0x6fff, 0x7000, 0x6ffb, 0x7026, 0x6ffc, 0x6ff7,
- 0x700a, 0x7201, 0x71ff, 0x71f9, 0x7203, 0x71fd, 0x7376, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x74b8, 0x74c0, 0x74b5, 0x74c1, 0x74be, 0x74b6, 0x74bb, 0x74c2,
- 0x7514, 0x7513, 0x765c, 0x7664, 0x7659, 0x7650, 0x7653, 0x7657,
- 0x765a, 0x76a6, 0x76bd, 0x76ec, 0x77c2, 0x77ba, 0x78ff, 0x790c,
- 0x7913, 0x7914, 0x7909, 0x7910, 0x7912, 0x7911, 0x79ad, 0x79ac,
- 0x7a5f, 0x7c1c, 0x7c29, 0x7c19, 0x7c20, 0x7c1f, 0x7c2d, 0x7c1d,
- 0x7c26, 0x7c28, 0x7c22, 0x7c25, 0x7c30, 0x7e5c, 0x7e50, 0x7e56,
- 0x7e63, 0x7e58, 0x7e62, 0x7e5f, 0x7e51, 0x7e60, 0x7e57, 0x7e53,
- 0x7fb5, 0x7fb3, 0x7ff7, 0x7ff8, 0x8075, 0x81d1, 0x81d2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x81d0, 0x825f, 0x825e, 0x85b4, 0x85c6, 0x85c0, 0x85c3,
- 0x85c2, 0x85b3, 0x85b5, 0x85bd, 0x85c7, 0x85c4, 0x85bf, 0x85cb,
- 0x85ce, 0x85c8, 0x85c5, 0x85b1, 0x85b6, 0x85d2, 0x8624, 0x85b8,
- 0x85b7, 0x85be, 0x8669, 0x87e7, 0x87e6, 0x87e2, 0x87db, 0x87eb,
- 0x87ea, 0x87e5, 0x87df, 0x87f3, 0x87e4, 0x87d4, 0x87dc, 0x87d3,
- 0x87ed, 0x87d8, 0x87e3, 0x87a4, 0x87d7, 0x87d9, 0x8801, 0x87f4,
- 0x87e8, 0x87dd, 0x8953, 0x894b, 0x894f, 0x894c, 0x8946, 0x8950,
- 0x8951, 0x8949, 0x8b2a, 0x8b27, 0x8b23, 0x8b33, 0x8b30, 0x8b35,
- 0x8b47, 0x8b2f, 0x8b3c, 0x8b3e, 0x8b31, 0x8b25, 0x8b37, 0x8b26,
- 0x8b36, 0x8b2e, 0x8b24, 0x8b3b, 0x8b3d, 0x8b3a, 0x8c42, 0x8c75,
- 0x8c99, 0x8c98, 0x8c97, 0x8cfe, 0x8d04, 0x8d02, 0x8d00, 0x8e5c,
- 0x8e62, 0x8e60, 0x8e57, 0x8e56, 0x8e5e, 0x8e65, 0x8e67, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8e5b, 0x8e5a, 0x8e61, 0x8e5d, 0x8e69, 0x8e54, 0x8f46, 0x8f47,
- 0x8f48, 0x8f4b, 0x9128, 0x913a, 0x913b, 0x913e, 0x91a8, 0x91a5,
- 0x91a7, 0x91af, 0x91aa, 0x93b5, 0x938c, 0x9392, 0x93b7, 0x939b,
- 0x939d, 0x9389, 0x93a7, 0x938e, 0x93aa, 0x939e, 0x93a6, 0x9395,
- 0x9388, 0x9399, 0x939f, 0x938d, 0x93b1, 0x9391, 0x93b2, 0x93a4,
- 0x93a8, 0x93b4, 0x93a3, 0x93a5, 0x95d2, 0x95d3, 0x95d1, 0x96b3,
- 0x96d7, 0x96da, 0x5dc2, 0x96df, 0x96d8, 0x96dd, 0x9723, 0x9722,
- 0x9725, 0x97ac, 0x97ae, 0x97a8, 0x97ab, 0x97a4, 0x97aa, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x97a2, 0x97a5, 0x97d7, 0x97d9, 0x97d6, 0x97d8, 0x97fa,
- 0x9850, 0x9851, 0x9852, 0x98b8, 0x9941, 0x993c, 0x993a, 0x9a0f,
- 0x9a0b, 0x9a09, 0x9a0d, 0x9a04, 0x9a11, 0x9a0a, 0x9a05, 0x9a07,
- 0x9a06, 0x9ac0, 0x9adc, 0x9b08, 0x9b04, 0x9b05, 0x9b29, 0x9b35,
- 0x9b4a, 0x9b4c, 0x9b4b, 0x9bc7, 0x9bc6, 0x9bc3, 0x9bbf, 0x9bc1,
- 0x9bb5, 0x9bb8, 0x9bd3, 0x9bb6, 0x9bc4, 0x9bb9, 0x9bbd, 0x9d5c,
- 0x9d53, 0x9d4f, 0x9d4a, 0x9d5b, 0x9d4b, 0x9d59, 0x9d56, 0x9d4c,
- 0x9d57, 0x9d52, 0x9d54, 0x9d5f, 0x9d58, 0x9d5a, 0x9e8e, 0x9e8c,
- 0x9edf, 0x9f01, 0x9f00, 0x9f16, 0x9f25, 0x9f2b, 0x9f2a, 0x9f29,
- 0x9f28, 0x9f4c, 0x9f55, 0x5134, 0x5135, 0x5296, 0x52f7, 0x53b4,
- 0x56ab, 0x56ad, 0x56a6, 0x56a7, 0x56aa, 0x56ac, 0x58da, 0x58dd,
- 0x58db, 0x5912, 0x5b3d, 0x5b3e, 0x5b3f, 0x5dc3, 0x5e70, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5fbf, 0x61fb, 0x6507, 0x6510, 0x650d, 0x6509, 0x650c, 0x650e,
- 0x6584, 0x65de, 0x65dd, 0x66de, 0x6ae7, 0x6ae0, 0x6acc, 0x6ad1,
- 0x6ad9, 0x6acb, 0x6adf, 0x6adc, 0x6ad0, 0x6aeb, 0x6acf, 0x6acd,
- 0x6ade, 0x6b60, 0x6bb0, 0x6c0c, 0x7019, 0x7027, 0x7020, 0x7016,
- 0x702b, 0x7021, 0x7022, 0x7023, 0x7029, 0x7017, 0x7024, 0x701c,
- 0x702a, 0x720c, 0x720a, 0x7207, 0x7202, 0x7205, 0x72a5, 0x72a6,
- 0x72a4, 0x72a3, 0x72a1, 0x74cb, 0x74c5, 0x74b7, 0x74c3, 0x7516,
- 0x7660, 0x77c9, 0x77ca, 0x77c4, 0x77f1, 0x791d, 0x791b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7921, 0x791c, 0x7917, 0x791e, 0x79b0, 0x7a67, 0x7a68,
- 0x7c33, 0x7c3c, 0x7c39, 0x7c2c, 0x7c3b, 0x7cec, 0x7cea, 0x7e76,
- 0x7e75, 0x7e78, 0x7e70, 0x7e77, 0x7e6f, 0x7e7a, 0x7e72, 0x7e74,
- 0x7e68, 0x7f4b, 0x7f4a, 0x7f83, 0x7f86, 0x7fb7, 0x7ffd, 0x7ffe,
- 0x8078, 0x81d7, 0x81d5, 0x8264, 0x8261, 0x8263, 0x85eb, 0x85f1,
- 0x85ed, 0x85d9, 0x85e1, 0x85e8, 0x85da, 0x85d7, 0x85ec, 0x85f2,
- 0x85f8, 0x85d8, 0x85df, 0x85e3, 0x85dc, 0x85d1, 0x85f0, 0x85e6,
- 0x85ef, 0x85de, 0x85e2, 0x8800, 0x87fa, 0x8803, 0x87f6, 0x87f7,
- 0x8809, 0x880c, 0x880b, 0x8806, 0x87fc, 0x8808, 0x87ff, 0x880a,
- 0x8802, 0x8962, 0x895a, 0x895b, 0x8957, 0x8961, 0x895c, 0x8958,
- 0x895d, 0x8959, 0x8988, 0x89b7, 0x89b6, 0x89f6, 0x8b50, 0x8b48,
- 0x8b4a, 0x8b40, 0x8b53, 0x8b56, 0x8b54, 0x8b4b, 0x8b55, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8b51, 0x8b42, 0x8b52, 0x8b57, 0x8c43, 0x8c77, 0x8c76, 0x8c9a,
- 0x8d06, 0x8d07, 0x8d09, 0x8dac, 0x8daa, 0x8dad, 0x8dab, 0x8e6d,
- 0x8e78, 0x8e73, 0x8e6a, 0x8e6f, 0x8e7b, 0x8ec2, 0x8f52, 0x8f51,
- 0x8f4f, 0x8f50, 0x8f53, 0x8fb4, 0x9140, 0x913f, 0x91b0, 0x91ad,
- 0x93de, 0x93c7, 0x93cf, 0x93c2, 0x93da, 0x93d0, 0x93f9, 0x93ec,
- 0x93cc, 0x93d9, 0x93a9, 0x93e6, 0x93ca, 0x93d4, 0x93ee, 0x93e3,
- 0x93d5, 0x93c4, 0x93ce, 0x93c0, 0x93d2, 0x93e7, 0x957d, 0x95da,
- 0x95db, 0x96e1, 0x9729, 0x972b, 0x972c, 0x9728, 0x9726, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x97b3, 0x97b7, 0x97b6, 0x97dd, 0x97de, 0x97df, 0x985c,
- 0x9859, 0x985d, 0x9857, 0x98bf, 0x98bd, 0x98bb, 0x98be, 0x9948,
- 0x9947, 0x9943, 0x99a6, 0x99a7, 0x9a1a, 0x9a15, 0x9a25, 0x9a1d,
- 0x9a24, 0x9a1b, 0x9a22, 0x9a20, 0x9a27, 0x9a23, 0x9a1e, 0x9a1c,
- 0x9a14, 0x9ac2, 0x9b0b, 0x9b0a, 0x9b0e, 0x9b0c, 0x9b37, 0x9bea,
- 0x9beb, 0x9be0, 0x9bde, 0x9be4, 0x9be6, 0x9be2, 0x9bf0, 0x9bd4,
- 0x9bd7, 0x9bec, 0x9bdc, 0x9bd9, 0x9be5, 0x9bd5, 0x9be1, 0x9bda,
- 0x9d77, 0x9d81, 0x9d8a, 0x9d84, 0x9d88, 0x9d71, 0x9d80, 0x9d78,
- 0x9d86, 0x9d8b, 0x9d8c, 0x9d7d, 0x9d6b, 0x9d74, 0x9d75, 0x9d70,
- 0x9d69, 0x9d85, 0x9d73, 0x9d7b, 0x9d82, 0x9d6f, 0x9d79, 0x9d7f,
- 0x9d87, 0x9d68, 0x9e94, 0x9e91, 0x9ec0, 0x9efc, 0x9f2d, 0x9f40,
- 0x9f41, 0x9f4d, 0x9f56, 0x9f57, 0x9f58, 0x5337, 0x56b2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x56b5, 0x56b3, 0x58e3, 0x5b45, 0x5dc6, 0x5dc7, 0x5eee, 0x5eef,
- 0x5fc0, 0x5fc1, 0x61f9, 0x6517, 0x6516, 0x6515, 0x6513, 0x65df,
- 0x66e8, 0x66e3, 0x66e4, 0x6af3, 0x6af0, 0x6aea, 0x6ae8, 0x6af9,
- 0x6af1, 0x6aee, 0x6aef, 0x703c, 0x7035, 0x702f, 0x7037, 0x7034,
- 0x7031, 0x7042, 0x7038, 0x703f, 0x703a, 0x7039, 0x7040, 0x703b,
- 0x7033, 0x7041, 0x7213, 0x7214, 0x72a8, 0x737d, 0x737c, 0x74ba,
- 0x76ab, 0x76aa, 0x76be, 0x76ed, 0x77cc, 0x77ce, 0x77cf, 0x77cd,
- 0x77f2, 0x7925, 0x7923, 0x7927, 0x7928, 0x7924, 0x7929, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x79b2, 0x7a6e, 0x7a6c, 0x7a6d, 0x7af7, 0x7c49, 0x7c48,
- 0x7c4a, 0x7c47, 0x7c45, 0x7cee, 0x7e7b, 0x7e7e, 0x7e81, 0x7e80,
- 0x7fba, 0x7fff, 0x8079, 0x81db, 0x81d9, 0x820b, 0x8268, 0x8269,
- 0x8622, 0x85ff, 0x8601, 0x85fe, 0x861b, 0x8600, 0x85f6, 0x8604,
- 0x8609, 0x8605, 0x860c, 0x85fd, 0x8819, 0x8810, 0x8811, 0x8817,
- 0x8813, 0x8816, 0x8963, 0x8966, 0x89b9, 0x89f7, 0x8b60, 0x8b6a,
- 0x8b5d, 0x8b68, 0x8b63, 0x8b65, 0x8b67, 0x8b6d, 0x8dae, 0x8e86,
- 0x8e88, 0x8e84, 0x8f59, 0x8f56, 0x8f57, 0x8f55, 0x8f58, 0x8f5a,
- 0x908d, 0x9143, 0x9141, 0x91b7, 0x91b5, 0x91b2, 0x91b3, 0x940b,
- 0x9413, 0x93fb, 0x9420, 0x940f, 0x9414, 0x93fe, 0x9415, 0x9410,
- 0x9428, 0x9419, 0x940d, 0x93f5, 0x9400, 0x93f7, 0x9407, 0x940e,
- 0x9416, 0x9412, 0x93fa, 0x9409, 0x93f8, 0x940a, 0x93ff, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x93fc, 0x940c, 0x93f6, 0x9411, 0x9406, 0x95de, 0x95e0, 0x95df,
- 0x972e, 0x972f, 0x97b9, 0x97bb, 0x97fd, 0x97fe, 0x9860, 0x9862,
- 0x9863, 0x985f, 0x98c1, 0x98c2, 0x9950, 0x994e, 0x9959, 0x994c,
- 0x994b, 0x9953, 0x9a32, 0x9a34, 0x9a31, 0x9a2c, 0x9a2a, 0x9a36,
- 0x9a29, 0x9a2e, 0x9a38, 0x9a2d, 0x9ac7, 0x9aca, 0x9ac6, 0x9b10,
- 0x9b12, 0x9b11, 0x9c0b, 0x9c08, 0x9bf7, 0x9c05, 0x9c12, 0x9bf8,
- 0x9c40, 0x9c07, 0x9c0e, 0x9c06, 0x9c17, 0x9c14, 0x9c09, 0x9d9f,
- 0x9d99, 0x9da4, 0x9d9d, 0x9d92, 0x9d98, 0x9d90, 0x9d9b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9da0, 0x9d94, 0x9d9c, 0x9daa, 0x9d97, 0x9da1, 0x9d9a,
- 0x9da2, 0x9da8, 0x9d9e, 0x9da3, 0x9dbf, 0x9da9, 0x9d96, 0x9da6,
- 0x9da7, 0x9e99, 0x9e9b, 0x9e9a, 0x9ee5, 0x9ee4, 0x9ee7, 0x9ee6,
- 0x9f30, 0x9f2e, 0x9f5b, 0x9f60, 0x9f5e, 0x9f5d, 0x9f59, 0x9f91,
- 0x513a, 0x5139, 0x5298, 0x5297, 0x56c3, 0x56bd, 0x56be, 0x5b48,
- 0x5b47, 0x5dcb, 0x5dcf, 0x5ef1, 0x61fd, 0x651b, 0x6b02, 0x6afc,
- 0x6b03, 0x6af8, 0x6b00, 0x7043, 0x7044, 0x704a, 0x7048, 0x7049,
- 0x7045, 0x7046, 0x721d, 0x721a, 0x7219, 0x737e, 0x7517, 0x766a,
- 0x77d0, 0x792d, 0x7931, 0x792f, 0x7c54, 0x7c53, 0x7cf2, 0x7e8a,
- 0x7e87, 0x7e88, 0x7e8b, 0x7e86, 0x7e8d, 0x7f4d, 0x7fbb, 0x8030,
- 0x81dd, 0x8618, 0x862a, 0x8626, 0x861f, 0x8623, 0x861c, 0x8619,
- 0x8627, 0x862e, 0x8621, 0x8620, 0x8629, 0x861e, 0x8625, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8829, 0x881d, 0x881b, 0x8820, 0x8824, 0x881c, 0x882b, 0x884a,
- 0x896d, 0x8969, 0x896e, 0x896b, 0x89fa, 0x8b79, 0x8b78, 0x8b45,
- 0x8b7a, 0x8b7b, 0x8d10, 0x8d14, 0x8daf, 0x8e8e, 0x8e8c, 0x8f5e,
- 0x8f5b, 0x8f5d, 0x9146, 0x9144, 0x9145, 0x91b9, 0x943f, 0x943b,
- 0x9436, 0x9429, 0x943d, 0x943c, 0x9430, 0x9439, 0x942a, 0x9437,
- 0x942c, 0x9440, 0x9431, 0x95e5, 0x95e4, 0x95e3, 0x9735, 0x973a,
- 0x97bf, 0x97e1, 0x9864, 0x98c9, 0x98c6, 0x98c0, 0x9958, 0x9956,
- 0x9a39, 0x9a3d, 0x9a46, 0x9a44, 0x9a42, 0x9a41, 0x9a3a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9a3f, 0x9acd, 0x9b15, 0x9b17, 0x9b18, 0x9b16, 0x9b3a,
- 0x9b52, 0x9c2b, 0x9c1d, 0x9c1c, 0x9c2c, 0x9c23, 0x9c28, 0x9c29,
- 0x9c24, 0x9c21, 0x9db7, 0x9db6, 0x9dbc, 0x9dc1, 0x9dc7, 0x9dca,
- 0x9dcf, 0x9dbe, 0x9dc5, 0x9dc3, 0x9dbb, 0x9db5, 0x9dce, 0x9db9,
- 0x9dba, 0x9dac, 0x9dc8, 0x9db1, 0x9dad, 0x9dcc, 0x9db3, 0x9dcd,
- 0x9db2, 0x9e7a, 0x9e9c, 0x9eeb, 0x9eee, 0x9eed, 0x9f1b, 0x9f18,
- 0x9f1a, 0x9f31, 0x9f4e, 0x9f65, 0x9f64, 0x9f92, 0x4eb9, 0x56c6,
- 0x56c5, 0x56cb, 0x5971, 0x5b4b, 0x5b4c, 0x5dd5, 0x5dd1, 0x5ef2,
- 0x6521, 0x6520, 0x6526, 0x6522, 0x6b0b, 0x6b08, 0x6b09, 0x6c0d,
- 0x7055, 0x7056, 0x7057, 0x7052, 0x721e, 0x721f, 0x72a9, 0x737f,
- 0x74d8, 0x74d5, 0x74d9, 0x74d7, 0x766d, 0x76ad, 0x7935, 0x79b4,
- 0x7a70, 0x7a71, 0x7c57, 0x7c5c, 0x7c59, 0x7c5b, 0x7c5a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7cf4, 0x7cf1, 0x7e91, 0x7f4f, 0x7f87, 0x81de, 0x826b, 0x8634,
- 0x8635, 0x8633, 0x862c, 0x8632, 0x8636, 0x882c, 0x8828, 0x8826,
- 0x882a, 0x8825, 0x8971, 0x89bf, 0x89be, 0x89fb, 0x8b7e, 0x8b84,
- 0x8b82, 0x8b86, 0x8b85, 0x8b7f, 0x8d15, 0x8e95, 0x8e94, 0x8e9a,
- 0x8e92, 0x8e90, 0x8e96, 0x8e97, 0x8f60, 0x8f62, 0x9147, 0x944c,
- 0x9450, 0x944a, 0x944b, 0x944f, 0x9447, 0x9445, 0x9448, 0x9449,
- 0x9446, 0x973f, 0x97e3, 0x986a, 0x9869, 0x98cb, 0x9954, 0x995b,
- 0x9a4e, 0x9a53, 0x9a54, 0x9a4c, 0x9a4f, 0x9a48, 0x9a4a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9a49, 0x9a52, 0x9a50, 0x9ad0, 0x9b19, 0x9b2b, 0x9b3b,
- 0x9b56, 0x9b55, 0x9c46, 0x9c48, 0x9c3f, 0x9c44, 0x9c39, 0x9c33,
- 0x9c41, 0x9c3c, 0x9c37, 0x9c34, 0x9c32, 0x9c3d, 0x9c36, 0x9ddb,
- 0x9dd2, 0x9dde, 0x9dda, 0x9dcb, 0x9dd0, 0x9ddc, 0x9dd1, 0x9ddf,
- 0x9de9, 0x9dd9, 0x9dd8, 0x9dd6, 0x9df5, 0x9dd5, 0x9ddd, 0x9eb6,
- 0x9ef0, 0x9f35, 0x9f33, 0x9f32, 0x9f42, 0x9f6b, 0x9f95, 0x9fa2,
- 0x513d, 0x5299, 0x58e8, 0x58e7, 0x5972, 0x5b4d, 0x5dd8, 0x882f,
- 0x5f4f, 0x6201, 0x6203, 0x6204, 0x6529, 0x6525, 0x6596, 0x66eb,
- 0x6b11, 0x6b12, 0x6b0f, 0x6bca, 0x705b, 0x705a, 0x7222, 0x7382,
- 0x7381, 0x7383, 0x7670, 0x77d4, 0x7c67, 0x7c66, 0x7e95, 0x826c,
- 0x863a, 0x8640, 0x8639, 0x863c, 0x8631, 0x863b, 0x863e, 0x8830,
- 0x8832, 0x882e, 0x8833, 0x8976, 0x8974, 0x8973, 0x89fe, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x8b8c, 0x8b8e, 0x8b8b, 0x8b88, 0x8c45, 0x8d19, 0x8e98, 0x8f64,
- 0x8f63, 0x91bc, 0x9462, 0x9455, 0x945d, 0x9457, 0x945e, 0x97c4,
- 0x97c5, 0x9800, 0x9a56, 0x9a59, 0x9b1e, 0x9b1f, 0x9b20, 0x9c52,
- 0x9c58, 0x9c50, 0x9c4a, 0x9c4d, 0x9c4b, 0x9c55, 0x9c59, 0x9c4c,
- 0x9c4e, 0x9dfb, 0x9df7, 0x9def, 0x9de3, 0x9deb, 0x9df8, 0x9de4,
- 0x9df6, 0x9de1, 0x9dee, 0x9de6, 0x9df2, 0x9df0, 0x9de2, 0x9dec,
- 0x9df4, 0x9df3, 0x9de8, 0x9ded, 0x9ec2, 0x9ed0, 0x9ef2, 0x9ef3,
- 0x9f06, 0x9f1c, 0x9f38, 0x9f37, 0x9f36, 0x9f43, 0x9f4f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9f71, 0x9f70, 0x9f6e, 0x9f6f, 0x56d3, 0x56cd, 0x5b4e,
- 0x5c6d, 0x652d, 0x66ed, 0x66ee, 0x6b13, 0x705f, 0x7061, 0x705d,
- 0x7060, 0x7223, 0x74db, 0x74e5, 0x77d5, 0x7938, 0x79b7, 0x79b6,
- 0x7c6a, 0x7e97, 0x7f89, 0x826d, 0x8643, 0x8838, 0x8837, 0x8835,
- 0x884b, 0x8b94, 0x8b95, 0x8e9e, 0x8e9f, 0x8ea0, 0x8e9d, 0x91be,
- 0x91bd, 0x91c2, 0x946b, 0x9468, 0x9469, 0x96e5, 0x9746, 0x9743,
- 0x9747, 0x97c7, 0x97e5, 0x9a5e, 0x9ad5, 0x9b59, 0x9c63, 0x9c67,
- 0x9c66, 0x9c62, 0x9c5e, 0x9c60, 0x9e02, 0x9dfe, 0x9e07, 0x9e03,
- 0x9e06, 0x9e05, 0x9e00, 0x9e01, 0x9e09, 0x9dff, 0x9dfd, 0x9e04,
- 0x9ea0, 0x9f1e, 0x9f46, 0x9f74, 0x9f75, 0x9f76, 0x56d4, 0x652e,
- 0x65b8, 0x6b18, 0x6b19, 0x6b17, 0x6b1a, 0x7062, 0x7226, 0x72aa,
- 0x77d8, 0x77d9, 0x7939, 0x7c69, 0x7c6b, 0x7cf6, 0x7e9a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7e98, 0x7e9b, 0x7e99, 0x81e0, 0x81e1, 0x8646, 0x8647, 0x8648,
- 0x8979, 0x897a, 0x897c, 0x897b, 0x89ff, 0x8b98, 0x8b99, 0x8ea5,
- 0x8ea4, 0x8ea3, 0x946e, 0x946d, 0x946f, 0x9471, 0x9473, 0x9749,
- 0x9872, 0x995f, 0x9c68, 0x9c6e, 0x9c6d, 0x9e0b, 0x9e0d, 0x9e10,
- 0x9e0f, 0x9e12, 0x9e11, 0x9ea1, 0x9ef5, 0x9f09, 0x9f47, 0x9f78,
- 0x9f7b, 0x9f7a, 0x9f79, 0x571e, 0x7066, 0x7c6f, 0x883c, 0x8db2,
- 0x8ea6, 0x91c3, 0x9474, 0x9478, 0x9476, 0x9475, 0x9a60, 0x9c74,
- 0x9c73, 0x9c71, 0x9c75, 0x9e14, 0x9e13, 0x9ef6, 0x9f0a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9fa4, 0x7068, 0x7065, 0x7cf7, 0x866a, 0x883e, 0x883d,
- 0x883f, 0x8b9e, 0x8c9c, 0x8ea9, 0x8ec9, 0x974b, 0x9873, 0x9874,
- 0x98cc, 0x9961, 0x99ab, 0x9a64, 0x9a66, 0x9a67, 0x9b24, 0x9e15,
- 0x9e17, 0x9f48, 0x6207, 0x6b1e, 0x7227, 0x864c, 0x8ea8, 0x9482,
- 0x9480, 0x9481, 0x9a69, 0x9a68, 0x9b2e, 0x9e19, 0x7229, 0x864b,
- 0x8b9f, 0x9483, 0x9c79, 0x9eb7, 0x7675, 0x9a6b, 0x9c7a, 0x9e1d,
- 0x7069, 0x706a, 0x9ea4, 0x9f7e, 0x9f49, 0x9f98, 0x7881, 0x92b9,
- 0x88cf, 0x58bb, 0x6052, 0x7ca7, 0x5afa, 0x2554, 0x2566, 0x2557,
- 0x2560, 0x256c, 0x2563, 0x255a, 0x2569, 0x255d, 0x2552, 0x2564,
- 0x2555, 0x255e, 0x256a, 0x2561, 0x2558, 0x2567, 0x255b, 0x2553,
- 0x2565, 0x2556, 0x255f, 0x256b, 0x2562, 0x2559, 0x2568, 0x255c,
- 0x2551, 0x2550, 0x256d, 0x256e, 0x2570, 0x256f, 0xffed, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xe000, 0x92db, 0xe002, 0xe003, 0x854c, 0x42b5, 0x73ef, 0x51b5,
- 0x3649, 0xe009, 0xe00a, 0x9344, 0xe00c, 0x82ee, 0xe00e, 0x783c,
- 0x6744, 0x62df, 0xe012, 0xe013, 0xe014, 0xe015, 0xe016, 0x4fab,
- 0xe018, 0x5008, 0xe01a, 0xe01b, 0xe01c, 0xe01d, 0xe01e, 0x5029,
- 0xe020, 0x5fa4, 0xe022, 0xe023, 0x6edb, 0xe025, 0x507d, 0x5101,
- 0x347a, 0x510e, 0x986c, 0x3743, 0x8416, 0xe02d, 0xe02e, 0x5160,
- 0xe030, 0x516a, 0xe032, 0xe033, 0xe034, 0xe035, 0xe036, 0xe037,
- 0xe038, 0x5b82, 0x877d, 0xe03b, 0xe03c, 0x51b2, 0x51b8, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9d34, 0x51c9, 0x51cf, 0x51d1, 0x3cdc, 0x51d3, 0xe045,
- 0x51b3, 0x51e2, 0x5342, 0x51ed, 0x83cd, 0x693e, 0xe04c, 0x5f7b,
- 0x520b, 0x5226, 0x523c, 0x52b5, 0x5257, 0x5294, 0x52b9, 0x52c5,
- 0x7c15, 0x8542, 0x52e0, 0x860d, 0xe05a, 0x5305, 0xe05c, 0x5549,
- 0x6ed9, 0xe05f, 0xe060, 0xe061, 0x5333, 0x5344, 0xe064, 0x6ccb,
- 0xe066, 0x681b, 0x73d5, 0x604a, 0x3eaa, 0x38cc, 0xe06c, 0x71dd,
- 0x44a2, 0x536d, 0x5374, 0xe071, 0x537e, 0x537f, 0xe074, 0xe075,
- 0x77e6, 0x5393, 0xe078, 0x53a0, 0x53ab, 0x53ae, 0x73a7, 0xe07d,
- 0x3f59, 0x739c, 0x53c1, 0x53c5, 0x6c49, 0x4e49, 0x57fe, 0x53d9,
- 0x3aab, 0xe087, 0x53e0, 0xe089, 0xe08a, 0x53f6, 0xe08c, 0x5413,
- 0x7079, 0x552b, 0x6657, 0x6d5b, 0x546d, 0xe093, 0xe094, 0x555d,
- 0x548f, 0x54a4, 0x47a6, 0xe099, 0xe09a, 0x3db4, 0xe09c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xe09d, 0xe09e, 0x5547, 0x4ced, 0x542f, 0x7417, 0x5586, 0x55a9,
- 0x5605, 0xe0a6, 0xe0a7, 0x4552, 0xe0a9, 0x66b3, 0xe0ab, 0x5637,
- 0x66cd, 0xe0ae, 0x66a4, 0x66ad, 0x564d, 0x564f, 0x78f1, 0x56f1,
- 0x9787, 0x53fe, 0x5700, 0x56ef, 0x56ed, 0xe0ba, 0x3623, 0xe0bc,
- 0x5746, 0xe0be, 0x6c6e, 0x708b, 0x5742, 0x36b1, 0xe0c3, 0x57e6,
- 0xe0c5, 0x5803, 0xe0c7, 0xe0c8, 0x5826, 0xe0ca, 0x585c, 0x58aa,
- 0x3561, 0x58e0, 0x58dc, 0xe0d0, 0x58fb, 0x5bff, 0x5743, 0xe0d4,
- 0xe0d5, 0x93d3, 0x35a1, 0x591f, 0x68a6, 0x36c3, 0x6e59, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xe0dc, 0x5a24, 0x5553, 0xe0df, 0x8505, 0x59c9, 0xe0e2,
- 0xe0e3, 0xe0e4, 0xe0e5, 0x59d9, 0xe0e7, 0xe0e8, 0xe0e9, 0x6d71,
- 0xe0eb, 0xe0ec, 0x59f9, 0xe0ee, 0x5aab, 0x5a63, 0x36e6, 0xe0f2,
- 0x5a77, 0x3708, 0x5a96, 0x7465, 0x5ad3, 0xe0f8, 0xe0f9, 0x3d85,
- 0xe0fb, 0x3732, 0xe0fd, 0x5e83, 0x52d0, 0x5b76, 0x6588, 0x5b7c,
- 0xe103, 0x4004, 0x485d, 0xe106, 0x5bd5, 0x6160, 0xe109, 0xe10a,
- 0xe10b, 0x5bf3, 0x5b9d, 0x4d10, 0x5c05, 0xe110, 0x5c13, 0x73ce,
- 0x5c14, 0xe114, 0xe115, 0x5c49, 0x48dd, 0x5c85, 0x5ce9, 0x5cef,
- 0x5d8b, 0xe11c, 0xe11d, 0x5d10, 0x5d18, 0x5d46, 0xe121, 0x5cba,
- 0x5dd7, 0x82fc, 0x382d, 0xe126, 0xe127, 0xe128, 0x8287, 0x3836,
- 0x3bc2, 0x5e2e, 0x6a8a, 0x5e75, 0x5e7a, 0xe130, 0xe131, 0x53a6,
- 0x4eb7, 0x5ed0, 0x53a8, 0xe136, 0x5e09, 0x5ef4, 0xe139, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x5ef9, 0x5efb, 0x38a0, 0x5efc, 0x683e, 0x941b, 0x5f0d, 0xe141,
- 0xe142, 0x3ade, 0x48ae, 0xe145, 0x5f3a, 0xe147, 0xe148, 0x5f58,
- 0xe14a, 0x5f63, 0x97bd, 0xe14d, 0x5f72, 0x9340, 0xe150, 0x5fa7,
- 0x5db6, 0x3d5f, 0xe154, 0xe155, 0xe156, 0xe157, 0x91d6, 0xe159,
- 0xe15a, 0x6031, 0x6685, 0xe15d, 0x3963, 0x3dc7, 0x3639, 0x5790,
- 0xe162, 0x7971, 0x3e40, 0x609e, 0x60a4, 0x60b3, 0xe168, 0xe169,
- 0xe16a, 0x74a4, 0x50e1, 0x5aa0, 0x6164, 0x8424, 0x6142, 0xe171,
- 0xe172, 0x6181, 0x51f4, 0xe175, 0x6187, 0x5baa, 0xe178, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xe179, 0x61d3, 0xe17b, 0xe17c, 0x61d0, 0x3932, 0xe17f,
- 0xe180, 0x6023, 0x615c, 0x651e, 0x638b, 0xe185, 0x62c5, 0xe187,
- 0x62d5, 0xe189, 0x636c, 0xe18b, 0x3a17, 0x6438, 0x63f8, 0xe18f,
- 0xe190, 0x6490, 0x6f8a, 0xe193, 0x9814, 0xe195, 0xe196, 0x64e1,
- 0x64e5, 0x947b, 0x3a66, 0x643a, 0x3a57, 0x654d, 0x6f16, 0xe19f,
- 0xe1a0, 0x6585, 0x656d, 0x655f, 0xe1a4, 0x65b5, 0xe1a6, 0x4b37,
- 0x65d1, 0x40d8, 0xe1aa, 0x65e0, 0x65e3, 0x5fdf, 0xe1ae, 0x6618,
- 0xe1b0, 0xe1b1, 0x6644, 0xe1b3, 0xe1b4, 0x664b, 0xe1b6, 0x6667,
- 0xe1b8, 0x6673, 0x6674, 0xe1bb, 0xe1bc, 0xe1bd, 0xe1be, 0xe1bf,
- 0x77c5, 0xe1c1, 0x99a4, 0x6702, 0xe1c4, 0xe1c5, 0x3b2b, 0x69fa,
- 0xe1c8, 0x675e, 0x6767, 0x6762, 0xe1cc, 0xe1cd, 0x67d7, 0x44e9,
- 0x6822, 0x6e50, 0x923c, 0x6801, 0xe1d4, 0xe1d5, 0x685d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xe1d7, 0x69e1, 0x6a0b, 0xe1da, 0x6973, 0x68c3, 0xe1dd, 0x6901,
- 0x6900, 0x3d32, 0x3a01, 0xe1e2, 0x3b80, 0x67ac, 0x6961, 0xe1e6,
- 0x42fc, 0x6936, 0x6998, 0x3ba1, 0xe1eb, 0x8363, 0x5090, 0x69f9,
- 0xe1ef, 0xe1f0, 0x6a45, 0xe1f2, 0x6a9d, 0x3bf3, 0x67b1, 0x6ac8,
- 0xe1f7, 0x3c0d, 0x6b1d, 0xe1fa, 0x60de, 0x6b35, 0x6b74, 0xe1fe,
- 0x6eb5, 0xe200, 0xe201, 0xe202, 0x3740, 0x5421, 0xe205, 0x6be1,
- 0xe207, 0x6bdc, 0x6c37, 0xe20a, 0xe20b, 0xe20c, 0x6c5a, 0x8226,
- 0x6c79, 0xe210, 0x44c5, 0xe212, 0xe213, 0xe214, 0xe215, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xe216, 0x36e5, 0x3ceb, 0xe219, 0x9b83, 0xe21b, 0xe21c,
- 0x7f8f, 0x6837, 0xe21f, 0xe220, 0xe221, 0x6d96, 0x6d5c, 0x6e7c,
- 0x6f04, 0xe226, 0xe227, 0xe228, 0x8533, 0xe22a, 0x51c7, 0x6c9c,
- 0x6e1d, 0x842e, 0xe22f, 0x6e2f, 0xe231, 0x7453, 0xe233, 0x79cc,
- 0x6e4f, 0x5a91, 0xe237, 0x6ff8, 0x370d, 0x6f9d, 0xe23b, 0x6efa,
- 0xe23d, 0xe23e, 0x4555, 0x93f0, 0x6f44, 0x6f5c, 0x3d4e, 0x6f74,
- 0xe245, 0x3d3b, 0x6f9f, 0xe248, 0x6fd3, 0xe24a, 0xe24b, 0xe24c,
- 0xe24d, 0xe24e, 0xe24f, 0x51df, 0xe251, 0xe252, 0xe253, 0xe254,
- 0x704b, 0x707e, 0x70a7, 0x7081, 0x70cc, 0x70d5, 0x70d6, 0x70df,
- 0x4104, 0x3de8, 0x71b4, 0x7196, 0xe261, 0x712b, 0x7145, 0x5a88,
- 0x714a, 0x716e, 0x5c9c, 0xe268, 0x714f, 0x9362, 0xe26b, 0x712c,
- 0xe26d, 0xe26e, 0xe26f, 0x71ba, 0xe271, 0x70bd, 0x720e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x9442, 0x7215, 0x5911, 0x9443, 0x7224, 0x9341, 0xe27a, 0x722e,
- 0x7240, 0xe27d, 0x68bd, 0x7255, 0x7257, 0x3e55, 0xe282, 0x680d,
- 0x6f3d, 0x7282, 0x732a, 0x732b, 0xe288, 0xe289, 0x48ed, 0xe28b,
- 0x7328, 0x732e, 0x73cf, 0x73aa, 0xe290, 0xe291, 0x73c9, 0x7449,
- 0xe294, 0xe295, 0xe296, 0x6623, 0x36c5, 0xe299, 0xe29a, 0xe29b,
- 0x73f7, 0x7415, 0x6903, 0xe29f, 0x7439, 0xe2a1, 0x3ed7, 0x745c,
- 0xe2a4, 0x7460, 0xe2a6, 0x7447, 0x73e4, 0x7476, 0x83b9, 0x746c,
- 0x3730, 0x7474, 0x93f1, 0x6a2c, 0x7482, 0x4953, 0xe2b2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xe2b3, 0xe2b4, 0xe2b5, 0x5b46, 0xe2b7, 0xe2b8, 0x74c8,
- 0xe2ba, 0x750e, 0x74e9, 0x751e, 0xe2be, 0xe2bf, 0x5bd7, 0xe2c1,
- 0x9385, 0x754d, 0x754a, 0x7567, 0x756e, 0xe2c7, 0x3f04, 0xe2c9,
- 0x758e, 0x745d, 0x759e, 0x75b4, 0x7602, 0x762c, 0x7651, 0x764f,
- 0x766f, 0x7676, 0xe2d4, 0x7690, 0x81ef, 0x37f8, 0xe2d8, 0xe2d9,
- 0x76a1, 0x76a5, 0x76b7, 0x76cc, 0xe2de, 0x8462, 0xe2e0, 0xe2e1,
- 0xe2e2, 0x771e, 0x7726, 0x7740, 0x64af, 0xe2e7, 0x7758, 0xe2e9,
- 0x77af, 0xe2eb, 0xe2ec, 0xe2ed, 0x77f4, 0x7809, 0xe2f0, 0xe2f1,
- 0x68ca, 0x78af, 0x78c7, 0x78d3, 0x96a5, 0x792e, 0xe2f8, 0x78d7,
- 0x7934, 0x78b1, 0xe2fc, 0x8fb8, 0x8884, 0xe2ff, 0xe300, 0xe301,
- 0x7986, 0x8900, 0x6902, 0x7980, 0xe306, 0x799d, 0xe308, 0x793c,
- 0x79a9, 0x6e2a, 0xe30c, 0x3ea8, 0x79c6, 0xe30f, 0x79d4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x79d4, 0xfefe, 0x00ff, 0x0000, 0x0100, 0x0005, 0x8000, 0x804f240
-};
-
-
-const unichar_t unicode_from_ksc5601[] = {
- 0x3164, 0x3001, 0x3002, 0x30fb, 0x2025, 0x22ef, 0x00a8, 0x3003,
- 0x2013, 0x2014, 0x2016, 0xff3c, 0xff5e, 0x2018, 0x2019, 0x201c,
- 0x201d, 0x3014, 0x3015, 0x3008, 0x3009, 0x300a, 0x300b, 0x300c,
- 0x300d, 0x300e, 0x300f, 0x3010, 0x3011, 0x00b1, 0x00d7, 0x00f7,
- 0x2260, 0x2264, 0x2265, 0x221e, 0x2234, 0x00b0, 0x2032, 0x2033,
- 0x2103, 0x212b, 0xffe0, 0xffe1, 0xffe5, 0x2642, 0x2640, 0x2220,
- 0x22a5, 0x2312, 0x2202, 0x2207, 0x2261, 0x2252, 0x00a7, 0x203b,
- 0x2606, 0x2605, 0x25cb, 0x25cf, 0x25ce, 0x25c7, 0x25c6, 0x25a1,
- 0x25a0, 0x25b3, 0x25b2, 0x25bd, 0x25bc, 0x2192, 0x2190, 0x2191,
- 0x2193, 0x2194, 0x3013, 0x00ab, 0x00bb, 0x221a, 0x223d, 0x221d,
- 0x2235, 0x222b, 0x222c, 0x2208, 0x220b, 0x2286, 0x2287, 0x2282,
- 0x2283, 0x222a, 0x2229, 0x2227, 0x2228, 0xffe2, 0x21d2, 0x21d4,
- 0x2200, 0x2203, 0x00b4, 0x02dc, 0x02c7, 0x02d8, 0x02dd, 0x02da,
- 0x02d9, 0x00b8, 0x02db, 0x00a1, 0x00bf, 0x2236, 0x222e, 0x2211,
- 0x220f, 0x00a4, 0x2109, 0x2030, 0x25c1, 0x25c0, 0x25b7, 0x25b6,
- 0x2664, 0x2660, 0x2661, 0x2665, 0x2667, 0x2663, 0x25c9, 0x25c8,
- 0x25a3, 0x25d0, 0x25d1, 0x2592, 0x25a4, 0x25a5, 0x25a8, 0x25a7,
- 0x25a6, 0x25a9, 0x2668, 0x260f, 0x260e, 0x261c, 0x261e, 0x00b6,
- 0x2020, 0x2021, 0x2195, 0x2197, 0x2199, 0x2196, 0x2198, 0x266d,
- 0x2669, 0x266a, 0x266c, 0x327f, 0x321c, 0x2116, 0x33c7, 0x2122,
- 0x33c2, 0x33d8, 0x2121, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0xff01, 0xff02, 0xff03, 0xff04,
- 0xff05, 0xff06, 0xff07, 0xff08, 0xff09, 0xff0a, 0xff0b, 0xff0c,
- 0xff0d, 0xff0e, 0xff0f, 0xff10, 0xff11, 0xff12, 0xff13, 0xff14,
- 0xff15, 0xff16, 0xff17, 0xff18, 0xff19, 0xff1a, 0xff1b, 0xff1c,
- 0xff1d, 0xff1e, 0xff1f, 0xff20, 0xff21, 0xff22, 0xff23, 0xff24,
- 0xff25, 0xff26, 0xff27, 0xff28, 0xff29, 0xff2a, 0xff2b, 0xff2c,
- 0xff2d, 0xff2e, 0xff2f, 0xff30, 0xff31, 0xff32, 0xff33, 0xff34,
- 0xff35, 0xff36, 0xff37, 0xff38, 0xff39, 0xff3a, 0xff3b, 0xffe6,
- 0xff3d, 0xff3e, 0xff3f, 0xff40, 0xff41, 0xff42, 0xff43, 0xff44,
- 0xff45, 0xff46, 0xff47, 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c,
- 0xff4d, 0xff4e, 0xff4f, 0xff50, 0xff51, 0xff52, 0xff53, 0xff54,
- 0xff55, 0xff56, 0xff57, 0xff58, 0xff59, 0xff5a, 0xff5b, 0xff5c,
- 0xff5d, 0xffe3, 0x3131, 0x3132, 0x3133, 0x3134, 0x3135, 0x3136,
- 0x3137, 0x3138, 0x3139, 0x313a, 0x313b, 0x313c, 0x313d, 0x313e,
- 0x313f, 0x3140, 0x3141, 0x3142, 0x3143, 0x3144, 0x3145, 0x3146,
- 0x3147, 0x3148, 0x3149, 0x314a, 0x314b, 0x314c, 0x314d, 0x314e,
- 0x314f, 0x3150, 0x3151, 0x3152, 0x3153, 0x3154, 0x3155, 0x3156,
- 0x3157, 0x3158, 0x3159, 0x315a, 0x315b, 0x315c, 0x315d, 0x315e,
- 0x315f, 0x3160, 0x3161, 0x3162, 0x3163, 0x0000, 0x3165, 0x3166,
- 0x3167, 0x3168, 0x3169, 0x316a, 0x316b, 0x316c, 0x316d, 0x316e,
- 0x316f, 0x3170, 0x3171, 0x3172, 0x3173, 0x3174, 0x3175, 0x3176,
- 0x3177, 0x3178, 0x3179, 0x317a, 0x317b, 0x317c, 0x317d, 0x317e,
- 0x317f, 0x3180, 0x3181, 0x3182, 0x3183, 0x3184, 0x3185, 0x3186,
- 0x3187, 0x3188, 0x3189, 0x318a, 0x318b, 0x318c, 0x318d, 0x318e,
- 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177,
- 0x2178, 0x2179, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2160,
- 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168,
- 0x2169, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398,
- 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0,
- 0x03a1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8,
- 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0,
- 0x03c1, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8, 0x03c9,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2500, 0x2502,
- 0x250c, 0x2510, 0x2518, 0x2514, 0x251c, 0x252c, 0x2524, 0x2534,
- 0x253c, 0x2501, 0x2503, 0x250f, 0x2513, 0x251b, 0x2517, 0x2523,
- 0x2533, 0x252b, 0x253b, 0x254b, 0x2520, 0x252f, 0x2528, 0x2537,
- 0x253f, 0x251d, 0x2530, 0x2525, 0x2538, 0x2542, 0x2512, 0x2511,
- 0x251a, 0x2519, 0x2516, 0x2515, 0x250e, 0x250d, 0x251e, 0x251f,
- 0x2521, 0x2522, 0x2526, 0x2527, 0x2529, 0x252a, 0x252d, 0x252e,
- 0x2531, 0x2532, 0x2535, 0x2536, 0x2539, 0x253a, 0x253d, 0x253e,
- 0x2540, 0x2541, 0x2543, 0x2544, 0x2545, 0x2546, 0x2547, 0x2548,
- 0x2549, 0x254a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x3395, 0x3396, 0x3397, 0x2113,
- 0x3398, 0x33c4, 0x33a3, 0x33a4, 0x33a5, 0x33a6, 0x3399, 0x339a,
- 0x339b, 0x339c, 0x339d, 0x339e, 0x339f, 0x33a0, 0x33a1, 0x33a2,
- 0x33ca, 0x338d, 0x338e, 0x338f, 0x33cf, 0x3388, 0x3389, 0x33c8,
- 0x33a7, 0x33a8, 0x33b0, 0x33b1, 0x33b2, 0x33b3, 0x33b4, 0x33b5,
- 0x33b6, 0x33b7, 0x33b8, 0x33b9, 0x3380, 0x3381, 0x3382, 0x3383,
- 0x3384, 0x33ba, 0x33bb, 0x33bc, 0x33bd, 0x33be, 0x33bf, 0x3390,
- 0x3391, 0x3392, 0x3393, 0x3394, 0x2126, 0x33c0, 0x33c1, 0x338a,
- 0x338b, 0x338c, 0x33d6, 0x33c5, 0x33ad, 0x33ae, 0x33af, 0x33db,
- 0x33a9, 0x33aa, 0x33ab, 0x33ac, 0x33dd, 0x33d0, 0x33d3, 0x33c3,
- 0x33c9, 0x33dc, 0x33c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x00c6, 0x00d0, 0x00aa, 0x0126, 0x0000, 0x0132,
- 0x0000, 0x013f, 0x0141, 0x00d8, 0x0152, 0x00ba, 0x00de, 0x0166,
- 0x014a, 0x0000, 0x3260, 0x3261, 0x3262, 0x3263, 0x3264, 0x3265,
- 0x3266, 0x3267, 0x3268, 0x3269, 0x326a, 0x326b, 0x326c, 0x326d,
- 0x326e, 0x326f, 0x3270, 0x3271, 0x3272, 0x3273, 0x3274, 0x3275,
- 0x3276, 0x3277, 0x3278, 0x3279, 0x327a, 0x327b, 0x24d0, 0x24d1,
- 0x24d2, 0x24d3, 0x24d4, 0x24d5, 0x24d6, 0x24d7, 0x24d8, 0x24d9,
- 0x24da, 0x24db, 0x24dc, 0x24dd, 0x24de, 0x24df, 0x24e0, 0x24e1,
- 0x24e2, 0x24e3, 0x24e4, 0x24e5, 0x24e6, 0x24e7, 0x24e8, 0x24e9,
- 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467,
- 0x2468, 0x2469, 0x246a, 0x246b, 0x246c, 0x246d, 0x246e, 0x00bd,
- 0x2153, 0x2154, 0x00bc, 0x00be, 0x215b, 0x215c, 0x215d, 0x215e,
- 0x00e6, 0x0111, 0x00f0, 0x0127, 0x0131, 0x0133, 0x0138, 0x0140,
- 0x0142, 0x00f8, 0x0153, 0x00df, 0x00fe, 0x0167, 0x014b, 0x0149,
- 0x3200, 0x3201, 0x3202, 0x3203, 0x3204, 0x3205, 0x3206, 0x3207,
- 0x3208, 0x3209, 0x320a, 0x320b, 0x320c, 0x320d, 0x320e, 0x320f,
- 0x3210, 0x3211, 0x3212, 0x3213, 0x3214, 0x3215, 0x3216, 0x3217,
- 0x3218, 0x3219, 0x321a, 0x321b, 0x249c, 0x249d, 0x249e, 0x249f,
- 0x24a0, 0x24a1, 0x24a2, 0x24a3, 0x24a4, 0x24a5, 0x24a6, 0x24a7,
- 0x24a8, 0x24a9, 0x24aa, 0x24ab, 0x24ac, 0x24ad, 0x24ae, 0x24af,
- 0x24b0, 0x24b1, 0x24b2, 0x24b3, 0x24b4, 0x24b5, 0x2474, 0x2475,
- 0x2476, 0x2477, 0x2478, 0x2479, 0x247a, 0x247b, 0x247c, 0x247d,
- 0x247e, 0x247f, 0x2480, 0x2481, 0x2482, 0x00b9, 0x00b2, 0x00b3,
- 0x2074, 0x207f, 0x2081, 0x2082, 0x2083, 0x2084, 0x3041, 0x3042,
- 0x3043, 0x3044, 0x3045, 0x3046, 0x3047, 0x3048, 0x3049, 0x304a,
- 0x304b, 0x304c, 0x304d, 0x304e, 0x304f, 0x3050, 0x3051, 0x3052,
- 0x3053, 0x3054, 0x3055, 0x3056, 0x3057, 0x3058, 0x3059, 0x305a,
- 0x305b, 0x305c, 0x305d, 0x305e, 0x305f, 0x3060, 0x3061, 0x3062,
- 0x3063, 0x3064, 0x3065, 0x3066, 0x3067, 0x3068, 0x3069, 0x306a,
- 0x306b, 0x306c, 0x306d, 0x306e, 0x306f, 0x3070, 0x3071, 0x3072,
- 0x3073, 0x3074, 0x3075, 0x3076, 0x3077, 0x3078, 0x3079, 0x307a,
- 0x307b, 0x307c, 0x307d, 0x307e, 0x307f, 0x3080, 0x3081, 0x3082,
- 0x3083, 0x3084, 0x3085, 0x3086, 0x3087, 0x3088, 0x3089, 0x308a,
- 0x308b, 0x308c, 0x308d, 0x308e, 0x308f, 0x3090, 0x3091, 0x3092,
- 0x3093, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x30a1, 0x30a2, 0x30a3, 0x30a4,
- 0x30a5, 0x30a6, 0x30a7, 0x30a8, 0x30a9, 0x30aa, 0x30ab, 0x30ac,
- 0x30ad, 0x30ae, 0x30af, 0x30b0, 0x30b1, 0x30b2, 0x30b3, 0x30b4,
- 0x30b5, 0x30b6, 0x30b7, 0x30b8, 0x30b9, 0x30ba, 0x30bb, 0x30bc,
- 0x30bd, 0x30be, 0x30bf, 0x30c0, 0x30c1, 0x30c2, 0x30c3, 0x30c4,
- 0x30c5, 0x30c6, 0x30c7, 0x30c8, 0x30c9, 0x30ca, 0x30cb, 0x30cc,
- 0x30cd, 0x30ce, 0x30cf, 0x30d0, 0x30d1, 0x30d2, 0x30d3, 0x30d4,
- 0x30d5, 0x30d6, 0x30d7, 0x30d8, 0x30d9, 0x30da, 0x30db, 0x30dc,
- 0x30dd, 0x30de, 0x30df, 0x30e0, 0x30e1, 0x30e2, 0x30e3, 0x30e4,
- 0x30e5, 0x30e6, 0x30e7, 0x30e8, 0x30e9, 0x30ea, 0x30eb, 0x30ec,
- 0x30ed, 0x30ee, 0x30ef, 0x30f0, 0x30f1, 0x30f2, 0x30f3, 0x30f4,
- 0x30f5, 0x30f6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415,
- 0x0401, 0x0416, 0x0417, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c,
- 0x041d, 0x041e, 0x041f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424,
- 0x0425, 0x0426, 0x0427, 0x0428, 0x0429, 0x042a, 0x042b, 0x042c,
- 0x042d, 0x042e, 0x042f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435,
- 0x0451, 0x0436, 0x0437, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c,
- 0x043d, 0x043e, 0x043f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444,
- 0x0445, 0x0446, 0x0447, 0x0448, 0x0449, 0x044a, 0x044b, 0x044c,
- 0x044d, 0x044e, 0x044f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0xac00, 0xac01, 0xac04, 0xac07, 0xac08, 0xac09,
- 0xac0a, 0xac10, 0xac11, 0xac12, 0xac13, 0xac14, 0xac15, 0xac16,
- 0xac17, 0xac19, 0xac1a, 0xac1b, 0xac1c, 0xac1d, 0xac20, 0xac24,
- 0xac2c, 0xac2d, 0xac2f, 0xac30, 0xac31, 0xac38, 0xac39, 0xac3c,
- 0xac40, 0xac4b, 0xac4d, 0xac54, 0xac58, 0xac5c, 0xac70, 0xac71,
- 0xac74, 0xac77, 0xac78, 0xac7a, 0xac80, 0xac81, 0xac83, 0xac84,
- 0xac85, 0xac86, 0xac89, 0xac8a, 0xac8b, 0xac8c, 0xac90, 0xac94,
- 0xac9c, 0xac9d, 0xac9f, 0xaca0, 0xaca1, 0xaca8, 0xaca9, 0xacaa,
- 0xacac, 0xacaf, 0xacb0, 0xacb8, 0xacb9, 0xacbb, 0xacbc, 0xacbd,
- 0xacc1, 0xacc4, 0xacc8, 0xaccc, 0xacd5, 0xacd7, 0xace0, 0xace1,
- 0xace4, 0xace7, 0xace8, 0xacea, 0xacec, 0xacef, 0xacf0, 0xacf1,
- 0xacf3, 0xacf5, 0xacf6, 0xacfc, 0xacfd, 0xad00, 0xad04, 0xad06,
- 0xad0c, 0xad0d, 0xad0f, 0xad11, 0xad18, 0xad1c, 0xad20, 0xad29,
- 0xad2c, 0xad2d, 0xad34, 0xad35, 0xad38, 0xad3c, 0xad44, 0xad45,
- 0xad47, 0xad49, 0xad50, 0xad54, 0xad58, 0xad61, 0xad63, 0xad6c,
- 0xad6d, 0xad70, 0xad73, 0xad74, 0xad75, 0xad76, 0xad7b, 0xad7c,
- 0xad7d, 0xad7f, 0xad81, 0xad82, 0xad88, 0xad89, 0xad8c, 0xad90,
- 0xad9c, 0xad9d, 0xada4, 0xadb7, 0xadc0, 0xadc1, 0xadc4, 0xadc8,
- 0xadd0, 0xadd1, 0xadd3, 0xaddc, 0xade0, 0xade4, 0xadf8, 0xadf9,
- 0xadfc, 0xadff, 0xae00, 0xae01, 0xae08, 0xae09, 0xae0b, 0xae0d,
- 0xae14, 0xae30, 0xae31, 0xae34, 0xae37, 0xae38, 0xae3a, 0xae40,
- 0xae41, 0xae43, 0xae45, 0xae46, 0xae4a, 0xae4c, 0xae4d, 0xae4e,
- 0xae50, 0xae54, 0xae56, 0xae5c, 0xae5d, 0xae5f, 0xae60, 0xae61,
- 0xae65, 0xae68, 0xae69, 0xae6c, 0xae70, 0xae78, 0xae79, 0xae7b,
- 0xae7c, 0xae7d, 0xae84, 0xae85, 0xae8c, 0xaebc, 0xaebd, 0xaebe,
- 0xaec0, 0xaec4, 0xaecc, 0xaecd, 0xaecf, 0xaed0, 0xaed1, 0xaed8,
- 0xaed9, 0xaedc, 0xaee8, 0xaeeb, 0xaeed, 0xaef4, 0xaef8, 0xaefc,
- 0xaf07, 0xaf08, 0xaf0d, 0xaf10, 0xaf2c, 0xaf2d, 0xaf30, 0xaf32,
- 0xaf34, 0xaf3c, 0xaf3d, 0xaf3f, 0xaf41, 0xaf42, 0xaf43, 0xaf48,
- 0xaf49, 0xaf50, 0xaf5c, 0xaf5d, 0xaf64, 0xaf65, 0xaf79, 0xaf80,
- 0xaf84, 0xaf88, 0xaf90, 0xaf91, 0xaf95, 0xaf9c, 0xafb8, 0xafb9,
- 0xafbc, 0xafc0, 0xafc7, 0xafc8, 0xafc9, 0xafcb, 0xafcd, 0xafce,
- 0xafd4, 0xafdc, 0xafe8, 0xafe9, 0xaff0, 0xaff1, 0xaff4, 0xaff8,
- 0xb000, 0xb001, 0xb004, 0xb00c, 0xb010, 0xb014, 0xb01c, 0xb01d,
- 0xb028, 0xb044, 0xb045, 0xb048, 0xb04a, 0xb04c, 0xb04e, 0xb053,
- 0xb054, 0xb055, 0xb057, 0xb059, 0xb05d, 0xb07c, 0xb07d, 0xb080,
- 0xb084, 0xb08c, 0xb08d, 0xb08f, 0xb091, 0xb098, 0xb099, 0xb09a,
- 0xb09c, 0xb09f, 0xb0a0, 0xb0a1, 0xb0a2, 0xb0a8, 0xb0a9, 0xb0ab,
- 0xb0ac, 0xb0ad, 0xb0ae, 0xb0af, 0xb0b1, 0xb0b3, 0xb0b4, 0xb0b5,
- 0xb0b8, 0xb0bc, 0xb0c4, 0xb0c5, 0xb0c7, 0xb0c8, 0xb0c9, 0xb0d0,
- 0xb0d1, 0xb0d4, 0xb0d8, 0xb0e0, 0xb0e5, 0xb108, 0xb109, 0xb10b,
- 0xb10c, 0xb110, 0xb112, 0xb113, 0xb118, 0xb119, 0xb11b, 0xb11c,
- 0xb11d, 0xb123, 0xb124, 0xb125, 0xb128, 0xb12c, 0xb134, 0xb135,
- 0xb137, 0xb138, 0xb139, 0xb140, 0xb141, 0xb144, 0xb148, 0xb150,
- 0xb151, 0xb154, 0xb155, 0xb158, 0xb15c, 0xb160, 0xb178, 0xb179,
- 0xb17c, 0xb180, 0xb182, 0xb188, 0xb189, 0xb18b, 0xb18d, 0xb192,
- 0xb193, 0xb194, 0xb198, 0xb19c, 0xb1a8, 0xb1cc, 0xb1d0, 0xb1d4,
- 0xb1dc, 0xb1dd, 0xb1df, 0xb1e8, 0xb1e9, 0xb1ec, 0xb1f0, 0xb1f9,
- 0xb1fb, 0xb1fd, 0xb204, 0xb205, 0xb208, 0xb20b, 0xb20c, 0xb214,
- 0xb215, 0xb217, 0xb219, 0xb220, 0xb234, 0xb23c, 0xb258, 0xb25c,
- 0xb260, 0xb268, 0xb269, 0xb274, 0xb275, 0xb27c, 0xb284, 0xb285,
- 0xb289, 0xb290, 0xb291, 0xb294, 0xb298, 0xb299, 0xb29a, 0xb2a0,
- 0xb2a1, 0xb2a3, 0xb2a5, 0xb2a6, 0xb2aa, 0xb2ac, 0xb2b0, 0xb2b4,
- 0xb2c8, 0xb2c9, 0xb2cc, 0xb2d0, 0xb2d2, 0xb2d8, 0xb2d9, 0xb2db,
- 0xb2dd, 0xb2e2, 0xb2e4, 0xb2e5, 0xb2e6, 0xb2e8, 0xb2eb, 0xb2ec,
- 0xb2ed, 0xb2ee, 0xb2ef, 0xb2f3, 0xb2f4, 0xb2f5, 0xb2f7, 0xb2f8,
- 0xb2f9, 0xb2fa, 0xb2fb, 0xb2ff, 0xb300, 0xb301, 0xb304, 0xb308,
- 0xb310, 0xb311, 0xb313, 0xb314, 0xb315, 0xb31c, 0xb354, 0xb355,
- 0xb356, 0xb358, 0xb35b, 0xb35c, 0xb35e, 0xb35f, 0xb364, 0xb365,
- 0xb367, 0xb369, 0xb36b, 0xb36e, 0xb370, 0xb371, 0xb374, 0xb378,
- 0xb380, 0xb381, 0xb383, 0xb384, 0xb385, 0xb38c, 0xb390, 0xb394,
- 0xb3a0, 0xb3a1, 0xb3a8, 0xb3ac, 0xb3c4, 0xb3c5, 0xb3c8, 0xb3cb,
- 0xb3cc, 0xb3ce, 0xb3d0, 0xb3d4, 0xb3d5, 0xb3d7, 0xb3d9, 0xb3db,
- 0xb3dd, 0xb3e0, 0xb3e4, 0xb3e8, 0xb3fc, 0xb410, 0xb418, 0xb41c,
- 0xb420, 0xb428, 0xb429, 0xb42b, 0xb434, 0xb450, 0xb451, 0xb454,
- 0xb458, 0xb460, 0xb461, 0xb463, 0xb465, 0xb46c, 0xb480, 0xb488,
- 0xb49d, 0xb4a4, 0xb4a8, 0xb4ac, 0xb4b5, 0xb4b7, 0xb4b9, 0xb4c0,
- 0xb4c4, 0xb4c8, 0xb4d0, 0xb4d5, 0xb4dc, 0xb4dd, 0xb4e0, 0xb4e3,
- 0xb4e4, 0xb4e6, 0xb4ec, 0xb4ed, 0xb4ef, 0xb4f1, 0xb4f8, 0xb514,
- 0xb515, 0xb518, 0xb51b, 0xb51c, 0xb524, 0xb525, 0xb527, 0xb528,
- 0xb529, 0xb52a, 0xb530, 0xb531, 0xb534, 0xb538, 0xb540, 0xb541,
- 0xb543, 0xb544, 0xb545, 0xb54b, 0xb54c, 0xb54d, 0xb550, 0xb554,
- 0xb55c, 0xb55d, 0xb55f, 0xb560, 0xb561, 0xb5a0, 0xb5a1, 0xb5a4,
- 0xb5a8, 0xb5aa, 0xb5ab, 0xb5b0, 0xb5b1, 0xb5b3, 0xb5b4, 0xb5b5,
- 0xb5bb, 0xb5bc, 0xb5bd, 0xb5c0, 0xb5c4, 0xb5cc, 0xb5cd, 0xb5cf,
- 0xb5d0, 0xb5d1, 0xb5d8, 0xb5ec, 0xb610, 0xb611, 0xb614, 0xb618,
- 0xb625, 0xb62c, 0xb634, 0xb648, 0xb664, 0xb668, 0xb69c, 0xb69d,
- 0xb6a0, 0xb6a4, 0xb6ab, 0xb6ac, 0xb6b1, 0xb6d4, 0xb6f0, 0xb6f4,
- 0xb6f8, 0xb700, 0xb701, 0xb705, 0xb728, 0xb729, 0xb72c, 0xb72f,
- 0xb730, 0xb738, 0xb739, 0xb73b, 0xb744, 0xb748, 0xb74c, 0xb754,
- 0xb755, 0xb760, 0xb764, 0xb768, 0xb770, 0xb771, 0xb773, 0xb775,
- 0xb77c, 0xb77d, 0xb780, 0xb784, 0xb78c, 0xb78d, 0xb78f, 0xb790,
- 0xb791, 0xb792, 0xb796, 0xb797, 0xb798, 0xb799, 0xb79c, 0xb7a0,
- 0xb7a8, 0xb7a9, 0xb7ab, 0xb7ac, 0xb7ad, 0xb7b4, 0xb7b5, 0xb7b8,
- 0xb7c7, 0xb7c9, 0xb7ec, 0xb7ed, 0xb7f0, 0xb7f4, 0xb7fc, 0xb7fd,
- 0xb7ff, 0xb800, 0xb801, 0xb807, 0xb808, 0xb809, 0xb80c, 0xb810,
- 0xb818, 0xb819, 0xb81b, 0xb81d, 0xb824, 0xb825, 0xb828, 0xb82c,
- 0xb834, 0xb835, 0xb837, 0xb838, 0xb839, 0xb840, 0xb844, 0xb851,
- 0xb853, 0xb85c, 0xb85d, 0xb860, 0xb864, 0xb86c, 0xb86d, 0xb86f,
- 0xb871, 0xb878, 0xb87c, 0xb88d, 0xb8a8, 0xb8b0, 0xb8b4, 0xb8b8,
- 0xb8c0, 0xb8c1, 0xb8c3, 0xb8c5, 0xb8cc, 0xb8d0, 0xb8d4, 0xb8dd,
- 0xb8df, 0xb8e1, 0xb8e8, 0xb8e9, 0xb8ec, 0xb8f0, 0xb8f8, 0xb8f9,
- 0xb8fb, 0xb8fd, 0xb904, 0xb918, 0xb920, 0xb93c, 0xb93d, 0xb940,
- 0xb944, 0xb94c, 0xb94f, 0xb951, 0xb958, 0xb959, 0xb95c, 0xb960,
- 0xb968, 0xb969, 0xb96b, 0xb96d, 0xb974, 0xb975, 0xb978, 0xb97c,
- 0xb984, 0xb985, 0xb987, 0xb989, 0xb98a, 0xb98d, 0xb98e, 0xb9ac,
- 0xb9ad, 0xb9b0, 0xb9b4, 0xb9bc, 0xb9bd, 0xb9bf, 0xb9c1, 0xb9c8,
- 0xb9c9, 0xb9cc, 0xb9ce, 0xb9cf, 0xb9d0, 0xb9d1, 0xb9d2, 0xb9d8,
- 0xb9d9, 0xb9db, 0xb9dd, 0xb9de, 0xb9e1, 0xb9e3, 0xb9e4, 0xb9e5,
- 0xb9e8, 0xb9ec, 0xb9f4, 0xb9f5, 0xb9f7, 0xb9f8, 0xb9f9, 0xb9fa,
- 0xba00, 0xba01, 0xba08, 0xba15, 0xba38, 0xba39, 0xba3c, 0xba40,
- 0xba42, 0xba48, 0xba49, 0xba4b, 0xba4d, 0xba4e, 0xba53, 0xba54,
- 0xba55, 0xba58, 0xba5c, 0xba64, 0xba65, 0xba67, 0xba68, 0xba69,
- 0xba70, 0xba71, 0xba74, 0xba78, 0xba83, 0xba84, 0xba85, 0xba87,
- 0xba8c, 0xbaa8, 0xbaa9, 0xbaab, 0xbaac, 0xbab0, 0xbab2, 0xbab8,
- 0xbab9, 0xbabb, 0xbabd, 0xbac4, 0xbac8, 0xbad8, 0xbad9, 0xbafc,
- 0xbb00, 0xbb04, 0xbb0d, 0xbb0f, 0xbb11, 0xbb18, 0xbb1c, 0xbb20,
- 0xbb29, 0xbb2b, 0xbb34, 0xbb35, 0xbb36, 0xbb38, 0xbb3b, 0xbb3c,
- 0xbb3d, 0xbb3e, 0xbb44, 0xbb45, 0xbb47, 0xbb49, 0xbb4d, 0xbb4f,
- 0xbb50, 0xbb54, 0xbb58, 0xbb61, 0xbb63, 0xbb6c, 0xbb88, 0xbb8c,
- 0xbb90, 0xbba4, 0xbba8, 0xbbac, 0xbbb4, 0xbbb7, 0xbbc0, 0xbbc4,
- 0xbbc8, 0xbbd0, 0xbbd3, 0xbbf8, 0xbbf9, 0xbbfc, 0xbbff, 0xbc00,
- 0xbc02, 0xbc08, 0xbc09, 0xbc0b, 0xbc0c, 0xbc0d, 0xbc0f, 0xbc11,
- 0xbc14, 0xbc15, 0xbc16, 0xbc17, 0xbc18, 0xbc1b, 0xbc1c, 0xbc1d,
- 0xbc1e, 0xbc1f, 0xbc24, 0xbc25, 0xbc27, 0xbc29, 0xbc2d, 0xbc30,
- 0xbc31, 0xbc34, 0xbc38, 0xbc40, 0xbc41, 0xbc43, 0xbc44, 0xbc45,
- 0xbc49, 0xbc4c, 0xbc4d, 0xbc50, 0xbc5d, 0xbc84, 0xbc85, 0xbc88,
- 0xbc8b, 0xbc8c, 0xbc8e, 0xbc94, 0xbc95, 0xbc97, 0xbc99, 0xbc9a,
- 0xbca0, 0xbca1, 0xbca4, 0xbca7, 0xbca8, 0xbcb0, 0xbcb1, 0xbcb3,
- 0xbcb4, 0xbcb5, 0xbcbc, 0xbcbd, 0xbcc0, 0xbcc4, 0xbccd, 0xbccf,
- 0xbcd0, 0xbcd1, 0xbcd5, 0xbcd8, 0xbcdc, 0xbcf4, 0xbcf5, 0xbcf6,
- 0xbcf8, 0xbcfc, 0xbd04, 0xbd05, 0xbd07, 0xbd09, 0xbd10, 0xbd14,
- 0xbd24, 0xbd2c, 0xbd40, 0xbd48, 0xbd49, 0xbd4c, 0xbd50, 0xbd58,
- 0xbd59, 0xbd64, 0xbd68, 0xbd80, 0xbd81, 0xbd84, 0xbd87, 0xbd88,
- 0xbd89, 0xbd8a, 0xbd90, 0xbd91, 0xbd93, 0xbd95, 0xbd99, 0xbd9a,
- 0xbd9c, 0xbda4, 0xbdb0, 0xbdb8, 0xbdd4, 0xbdd5, 0xbdd8, 0xbddc,
- 0xbde9, 0xbdf0, 0xbdf4, 0xbdf8, 0xbe00, 0xbe03, 0xbe05, 0xbe0c,
- 0xbe0d, 0xbe10, 0xbe14, 0xbe1c, 0xbe1d, 0xbe1f, 0xbe44, 0xbe45,
- 0xbe48, 0xbe4c, 0xbe4e, 0xbe54, 0xbe55, 0xbe57, 0xbe59, 0xbe5a,
- 0xbe5b, 0xbe60, 0xbe61, 0xbe64, 0xbe68, 0xbe6a, 0xbe70, 0xbe71,
- 0xbe73, 0xbe74, 0xbe75, 0xbe7b, 0xbe7c, 0xbe7d, 0xbe80, 0xbe84,
- 0xbe8c, 0xbe8d, 0xbe8f, 0xbe90, 0xbe91, 0xbe98, 0xbe99, 0xbea8,
- 0xbed0, 0xbed1, 0xbed4, 0xbed7, 0xbed8, 0xbee0, 0xbee3, 0xbee4,
- 0xbee5, 0xbeec, 0xbf01, 0xbf08, 0xbf09, 0xbf18, 0xbf19, 0xbf1b,
- 0xbf1c, 0xbf1d, 0xbf40, 0xbf41, 0xbf44, 0xbf48, 0xbf50, 0xbf51,
- 0xbf55, 0xbf94, 0xbfb0, 0xbfc5, 0xbfcc, 0xbfcd, 0xbfd0, 0xbfd4,
- 0xbfdc, 0xbfdf, 0xbfe1, 0xc03c, 0xc051, 0xc058, 0xc05c, 0xc060,
- 0xc068, 0xc069, 0xc090, 0xc091, 0xc094, 0xc098, 0xc0a0, 0xc0a1,
- 0xc0a3, 0xc0a5, 0xc0ac, 0xc0ad, 0xc0af, 0xc0b0, 0xc0b3, 0xc0b4,
- 0xc0b5, 0xc0b6, 0xc0bc, 0xc0bd, 0xc0bf, 0xc0c0, 0xc0c1, 0xc0c5,
- 0xc0c8, 0xc0c9, 0xc0cc, 0xc0d0, 0xc0d8, 0xc0d9, 0xc0db, 0xc0dc,
- 0xc0dd, 0xc0e4, 0xc0e5, 0xc0e8, 0xc0ec, 0xc0f4, 0xc0f5, 0xc0f7,
- 0xc0f9, 0xc100, 0xc104, 0xc108, 0xc110, 0xc115, 0xc11c, 0xc11d,
- 0xc11e, 0xc11f, 0xc120, 0xc123, 0xc124, 0xc126, 0xc127, 0xc12c,
- 0xc12d, 0xc12f, 0xc130, 0xc131, 0xc136, 0xc138, 0xc139, 0xc13c,
- 0xc140, 0xc148, 0xc149, 0xc14b, 0xc14c, 0xc14d, 0xc154, 0xc155,
- 0xc158, 0xc15c, 0xc164, 0xc165, 0xc167, 0xc168, 0xc169, 0xc170,
- 0xc174, 0xc178, 0xc185, 0xc18c, 0xc18d, 0xc18e, 0xc190, 0xc194,
- 0xc196, 0xc19c, 0xc19d, 0xc19f, 0xc1a1, 0xc1a5, 0xc1a8, 0xc1a9,
- 0xc1ac, 0xc1b0, 0xc1bd, 0xc1c4, 0xc1c8, 0xc1cc, 0xc1d4, 0xc1d7,
- 0xc1d8, 0xc1e0, 0xc1e4, 0xc1e8, 0xc1f0, 0xc1f1, 0xc1f3, 0xc1fc,
- 0xc1fd, 0xc200, 0xc204, 0xc20c, 0xc20d, 0xc20f, 0xc211, 0xc218,
- 0xc219, 0xc21c, 0xc21f, 0xc220, 0xc228, 0xc229, 0xc22b, 0xc22d,
- 0xc22f, 0xc231, 0xc232, 0xc234, 0xc248, 0xc250, 0xc251, 0xc254,
- 0xc258, 0xc260, 0xc265, 0xc26c, 0xc26d, 0xc270, 0xc274, 0xc27c,
- 0xc27d, 0xc27f, 0xc281, 0xc288, 0xc289, 0xc290, 0xc298, 0xc29b,
- 0xc29d, 0xc2a4, 0xc2a5, 0xc2a8, 0xc2ac, 0xc2ad, 0xc2b4, 0xc2b5,
- 0xc2b7, 0xc2b9, 0xc2dc, 0xc2dd, 0xc2e0, 0xc2e3, 0xc2e4, 0xc2eb,
- 0xc2ec, 0xc2ed, 0xc2ef, 0xc2f1, 0xc2f6, 0xc2f8, 0xc2f9, 0xc2fb,
- 0xc2fc, 0xc300, 0xc308, 0xc309, 0xc30c, 0xc30d, 0xc313, 0xc314,
- 0xc315, 0xc318, 0xc31c, 0xc324, 0xc325, 0xc328, 0xc329, 0xc345,
- 0xc368, 0xc369, 0xc36c, 0xc370, 0xc372, 0xc378, 0xc379, 0xc37c,
- 0xc37d, 0xc384, 0xc388, 0xc38c, 0xc3c0, 0xc3d8, 0xc3d9, 0xc3dc,
- 0xc3df, 0xc3e0, 0xc3e2, 0xc3e8, 0xc3e9, 0xc3ed, 0xc3f4, 0xc3f5,
- 0xc3f8, 0xc408, 0xc410, 0xc424, 0xc42c, 0xc430, 0xc434, 0xc43c,
- 0xc43d, 0xc448, 0xc464, 0xc465, 0xc468, 0xc46c, 0xc474, 0xc475,
- 0xc479, 0xc480, 0xc494, 0xc49c, 0xc4b8, 0xc4bc, 0xc4e9, 0xc4f0,
- 0xc4f1, 0xc4f4, 0xc4f8, 0xc4fa, 0xc4ff, 0xc500, 0xc501, 0xc50c,
- 0xc510, 0xc514, 0xc51c, 0xc528, 0xc529, 0xc52c, 0xc530, 0xc538,
- 0xc539, 0xc53b, 0xc53d, 0xc544, 0xc545, 0xc548, 0xc549, 0xc54a,
- 0xc54c, 0xc54d, 0xc54e, 0xc553, 0xc554, 0xc555, 0xc557, 0xc558,
- 0xc559, 0xc55d, 0xc55e, 0xc560, 0xc561, 0xc564, 0xc568, 0xc570,
- 0xc571, 0xc573, 0xc574, 0xc575, 0xc57c, 0xc57d, 0xc580, 0xc584,
- 0xc587, 0xc58c, 0xc58d, 0xc58f, 0xc591, 0xc595, 0xc597, 0xc598,
- 0xc59c, 0xc5a0, 0xc5a9, 0xc5b4, 0xc5b5, 0xc5b8, 0xc5b9, 0xc5bb,
- 0xc5bc, 0xc5bd, 0xc5be, 0xc5c4, 0xc5c5, 0xc5c6, 0xc5c7, 0xc5c8,
- 0xc5c9, 0xc5ca, 0xc5cc, 0xc5ce, 0xc5d0, 0xc5d1, 0xc5d4, 0xc5d8,
- 0xc5e0, 0xc5e1, 0xc5e3, 0xc5e5, 0xc5ec, 0xc5ed, 0xc5ee, 0xc5f0,
- 0xc5f4, 0xc5f6, 0xc5f7, 0xc5fc, 0xc5fd, 0xc5fe, 0xc5ff, 0xc600,
- 0xc601, 0xc605, 0xc606, 0xc607, 0xc608, 0xc60c, 0xc610, 0xc618,
- 0xc619, 0xc61b, 0xc61c, 0xc624, 0xc625, 0xc628, 0xc62c, 0xc62d,
- 0xc62e, 0xc630, 0xc633, 0xc634, 0xc635, 0xc637, 0xc639, 0xc63b,
- 0xc640, 0xc641, 0xc644, 0xc648, 0xc650, 0xc651, 0xc653, 0xc654,
- 0xc655, 0xc65c, 0xc65d, 0xc660, 0xc66c, 0xc66f, 0xc671, 0xc678,
- 0xc679, 0xc67c, 0xc680, 0xc688, 0xc689, 0xc68b, 0xc68d, 0xc694,
- 0xc695, 0xc698, 0xc69c, 0xc6a4, 0xc6a5, 0xc6a7, 0xc6a9, 0xc6b0,
- 0xc6b1, 0xc6b4, 0xc6b8, 0xc6b9, 0xc6ba, 0xc6c0, 0xc6c1, 0xc6c3,
- 0xc6c5, 0xc6cc, 0xc6cd, 0xc6d0, 0xc6d4, 0xc6dc, 0xc6dd, 0xc6e0,
- 0xc6e1, 0xc6e8, 0xc6e9, 0xc6ec, 0xc6f0, 0xc6f8, 0xc6f9, 0xc6fd,
- 0xc704, 0xc705, 0xc708, 0xc70c, 0xc714, 0xc715, 0xc717, 0xc719,
- 0xc720, 0xc721, 0xc724, 0xc728, 0xc730, 0xc731, 0xc733, 0xc735,
- 0xc737, 0xc73c, 0xc73d, 0xc740, 0xc744, 0xc74a, 0xc74c, 0xc74d,
- 0xc74f, 0xc751, 0xc752, 0xc753, 0xc754, 0xc755, 0xc756, 0xc757,
- 0xc758, 0xc75c, 0xc760, 0xc768, 0xc76b, 0xc774, 0xc775, 0xc778,
- 0xc77c, 0xc77d, 0xc77e, 0xc783, 0xc784, 0xc785, 0xc787, 0xc788,
- 0xc789, 0xc78a, 0xc78e, 0xc790, 0xc791, 0xc794, 0xc796, 0xc797,
- 0xc798, 0xc79a, 0xc7a0, 0xc7a1, 0xc7a3, 0xc7a4, 0xc7a5, 0xc7a6,
- 0xc7ac, 0xc7ad, 0xc7b0, 0xc7b4, 0xc7bc, 0xc7bd, 0xc7bf, 0xc7c0,
- 0xc7c1, 0xc7c8, 0xc7c9, 0xc7cc, 0xc7ce, 0xc7d0, 0xc7d8, 0xc7dd,
- 0xc7e4, 0xc7e8, 0xc7ec, 0xc800, 0xc801, 0xc804, 0xc808, 0xc80a,
- 0xc810, 0xc811, 0xc813, 0xc815, 0xc816, 0xc81c, 0xc81d, 0xc820,
- 0xc824, 0xc82c, 0xc82d, 0xc82f, 0xc831, 0xc838, 0xc83c, 0xc840,
- 0xc848, 0xc849, 0xc84c, 0xc84d, 0xc854, 0xc870, 0xc871, 0xc874,
- 0xc878, 0xc87a, 0xc880, 0xc881, 0xc883, 0xc885, 0xc886, 0xc887,
- 0xc88b, 0xc88c, 0xc88d, 0xc894, 0xc89d, 0xc89f, 0xc8a1, 0xc8a8,
- 0xc8bc, 0xc8bd, 0xc8c4, 0xc8c8, 0xc8cc, 0xc8d4, 0xc8d5, 0xc8d7,
- 0xc8d9, 0xc8e0, 0xc8e1, 0xc8e4, 0xc8f5, 0xc8fc, 0xc8fd, 0xc900,
- 0xc904, 0xc905, 0xc906, 0xc90c, 0xc90d, 0xc90f, 0xc911, 0xc918,
- 0xc92c, 0xc934, 0xc950, 0xc951, 0xc954, 0xc958, 0xc960, 0xc961,
- 0xc963, 0xc96c, 0xc970, 0xc974, 0xc97c, 0xc988, 0xc989, 0xc98c,
- 0xc990, 0xc998, 0xc999, 0xc99b, 0xc99d, 0xc9c0, 0xc9c1, 0xc9c4,
- 0xc9c7, 0xc9c8, 0xc9ca, 0xc9d0, 0xc9d1, 0xc9d3, 0xc9d5, 0xc9d6,
- 0xc9d9, 0xc9da, 0xc9dc, 0xc9dd, 0xc9e0, 0xc9e2, 0xc9e4, 0xc9e7,
- 0xc9ec, 0xc9ed, 0xc9ef, 0xc9f0, 0xc9f1, 0xc9f8, 0xc9f9, 0xc9fc,
- 0xca00, 0xca08, 0xca09, 0xca0b, 0xca0c, 0xca0d, 0xca14, 0xca18,
- 0xca29, 0xca4c, 0xca4d, 0xca50, 0xca54, 0xca5c, 0xca5d, 0xca5f,
- 0xca60, 0xca61, 0xca68, 0xca7d, 0xca84, 0xca98, 0xcabc, 0xcabd,
- 0xcac0, 0xcac4, 0xcacc, 0xcacd, 0xcacf, 0xcad1, 0xcad3, 0xcad8,
- 0xcad9, 0xcae0, 0xcaec, 0xcaf4, 0xcb08, 0xcb10, 0xcb14, 0xcb18,
- 0xcb20, 0xcb21, 0xcb41, 0xcb48, 0xcb49, 0xcb4c, 0xcb50, 0xcb58,
- 0xcb59, 0xcb5d, 0xcb64, 0xcb78, 0xcb79, 0xcb9c, 0xcbb8, 0xcbd4,
- 0xcbe4, 0xcbe7, 0xcbe9, 0xcc0c, 0xcc0d, 0xcc10, 0xcc14, 0xcc1c,
- 0xcc1d, 0xcc21, 0xcc22, 0xcc27, 0xcc28, 0xcc29, 0xcc2c, 0xcc2e,
- 0xcc30, 0xcc38, 0xcc39, 0xcc3b, 0xcc3c, 0xcc3d, 0xcc3e, 0xcc44,
- 0xcc45, 0xcc48, 0xcc4c, 0xcc54, 0xcc55, 0xcc57, 0xcc58, 0xcc59,
- 0xcc60, 0xcc64, 0xcc66, 0xcc68, 0xcc70, 0xcc75, 0xcc98, 0xcc99,
- 0xcc9c, 0xcca0, 0xcca8, 0xcca9, 0xccab, 0xccac, 0xccad, 0xccb4,
- 0xccb5, 0xccb8, 0xccbc, 0xccc4, 0xccc5, 0xccc7, 0xccc9, 0xccd0,
- 0xccd4, 0xcce4, 0xccec, 0xccf0, 0xcd01, 0xcd08, 0xcd09, 0xcd0c,
- 0xcd10, 0xcd18, 0xcd19, 0xcd1b, 0xcd1d, 0xcd24, 0xcd28, 0xcd2c,
- 0xcd39, 0xcd5c, 0xcd60, 0xcd64, 0xcd6c, 0xcd6d, 0xcd6f, 0xcd71,
- 0xcd78, 0xcd88, 0xcd94, 0xcd95, 0xcd98, 0xcd9c, 0xcda4, 0xcda5,
- 0xcda7, 0xcda9, 0xcdb0, 0xcdc4, 0xcdcc, 0xcdd0, 0xcde8, 0xcdec,
- 0xcdf0, 0xcdf8, 0xcdf9, 0xcdfb, 0xcdfd, 0xce04, 0xce08, 0xce0c,
- 0xce14, 0xce19, 0xce20, 0xce21, 0xce24, 0xce28, 0xce30, 0xce31,
- 0xce33, 0xce35, 0xce58, 0xce59, 0xce5c, 0xce5f, 0xce60, 0xce61,
- 0xce68, 0xce69, 0xce6b, 0xce6d, 0xce74, 0xce75, 0xce78, 0xce7c,
- 0xce84, 0xce85, 0xce87, 0xce89, 0xce90, 0xce91, 0xce94, 0xce98,
- 0xcea0, 0xcea1, 0xcea3, 0xcea4, 0xcea5, 0xceac, 0xcead, 0xcec1,
- 0xcee4, 0xcee5, 0xcee8, 0xceeb, 0xceec, 0xcef4, 0xcef5, 0xcef7,
- 0xcef8, 0xcef9, 0xcf00, 0xcf01, 0xcf04, 0xcf08, 0xcf10, 0xcf11,
- 0xcf13, 0xcf15, 0xcf1c, 0xcf20, 0xcf24, 0xcf2c, 0xcf2d, 0xcf2f,
- 0xcf30, 0xcf31, 0xcf38, 0xcf54, 0xcf55, 0xcf58, 0xcf5c, 0xcf64,
- 0xcf65, 0xcf67, 0xcf69, 0xcf70, 0xcf71, 0xcf74, 0xcf78, 0xcf80,
- 0xcf85, 0xcf8c, 0xcfa1, 0xcfa8, 0xcfb0, 0xcfc4, 0xcfe0, 0xcfe1,
- 0xcfe4, 0xcfe8, 0xcff0, 0xcff1, 0xcff3, 0xcff5, 0xcffc, 0xd000,
- 0xd004, 0xd011, 0xd018, 0xd02d, 0xd034, 0xd035, 0xd038, 0xd03c,
- 0xd044, 0xd045, 0xd047, 0xd049, 0xd050, 0xd054, 0xd058, 0xd060,
- 0xd06c, 0xd06d, 0xd070, 0xd074, 0xd07c, 0xd07d, 0xd081, 0xd0a4,
- 0xd0a5, 0xd0a8, 0xd0ac, 0xd0b4, 0xd0b5, 0xd0b7, 0xd0b9, 0xd0c0,
- 0xd0c1, 0xd0c4, 0xd0c8, 0xd0c9, 0xd0d0, 0xd0d1, 0xd0d3, 0xd0d4,
- 0xd0d5, 0xd0dc, 0xd0dd, 0xd0e0, 0xd0e4, 0xd0ec, 0xd0ed, 0xd0ef,
- 0xd0f0, 0xd0f1, 0xd0f8, 0xd10d, 0xd130, 0xd131, 0xd134, 0xd138,
- 0xd13a, 0xd140, 0xd141, 0xd143, 0xd144, 0xd145, 0xd14c, 0xd14d,
- 0xd150, 0xd154, 0xd15c, 0xd15d, 0xd15f, 0xd161, 0xd168, 0xd16c,
- 0xd17c, 0xd184, 0xd188, 0xd1a0, 0xd1a1, 0xd1a4, 0xd1a8, 0xd1b0,
- 0xd1b1, 0xd1b3, 0xd1b5, 0xd1ba, 0xd1bc, 0xd1c0, 0xd1d8, 0xd1f4,
- 0xd1f8, 0xd207, 0xd209, 0xd210, 0xd22c, 0xd22d, 0xd230, 0xd234,
- 0xd23c, 0xd23d, 0xd23f, 0xd241, 0xd248, 0xd25c, 0xd264, 0xd280,
- 0xd281, 0xd284, 0xd288, 0xd290, 0xd291, 0xd295, 0xd29c, 0xd2a0,
- 0xd2a4, 0xd2ac, 0xd2b1, 0xd2b8, 0xd2b9, 0xd2bc, 0xd2bf, 0xd2c0,
- 0xd2c2, 0xd2c8, 0xd2c9, 0xd2cb, 0xd2d4, 0xd2d8, 0xd2dc, 0xd2e4,
- 0xd2e5, 0xd2f0, 0xd2f1, 0xd2f4, 0xd2f8, 0xd300, 0xd301, 0xd303,
- 0xd305, 0xd30c, 0xd30d, 0xd30e, 0xd310, 0xd314, 0xd316, 0xd31c,
- 0xd31d, 0xd31f, 0xd320, 0xd321, 0xd325, 0xd328, 0xd329, 0xd32c,
- 0xd330, 0xd338, 0xd339, 0xd33b, 0xd33c, 0xd33d, 0xd344, 0xd345,
- 0xd37c, 0xd37d, 0xd380, 0xd384, 0xd38c, 0xd38d, 0xd38f, 0xd390,
- 0xd391, 0xd398, 0xd399, 0xd39c, 0xd3a0, 0xd3a8, 0xd3a9, 0xd3ab,
- 0xd3ad, 0xd3b4, 0xd3b8, 0xd3bc, 0xd3c4, 0xd3c5, 0xd3c8, 0xd3c9,
- 0xd3d0, 0xd3d8, 0xd3e1, 0xd3e3, 0xd3ec, 0xd3ed, 0xd3f0, 0xd3f4,
- 0xd3fc, 0xd3fd, 0xd3ff, 0xd401, 0xd408, 0xd41d, 0xd440, 0xd444,
- 0xd45c, 0xd460, 0xd464, 0xd46d, 0xd46f, 0xd478, 0xd479, 0xd47c,
- 0xd47f, 0xd480, 0xd482, 0xd488, 0xd489, 0xd48b, 0xd48d, 0xd494,
- 0xd4a9, 0xd4cc, 0xd4d0, 0xd4d4, 0xd4dc, 0xd4df, 0xd4e8, 0xd4ec,
- 0xd4f0, 0xd4f8, 0xd4fb, 0xd4fd, 0xd504, 0xd508, 0xd50c, 0xd514,
- 0xd515, 0xd517, 0xd53c, 0xd53d, 0xd540, 0xd544, 0xd54c, 0xd54d,
- 0xd54f, 0xd551, 0xd558, 0xd559, 0xd55c, 0xd560, 0xd565, 0xd568,
- 0xd569, 0xd56b, 0xd56d, 0xd574, 0xd575, 0xd578, 0xd57c, 0xd584,
- 0xd585, 0xd587, 0xd588, 0xd589, 0xd590, 0xd5a5, 0xd5c8, 0xd5c9,
- 0xd5cc, 0xd5d0, 0xd5d2, 0xd5d8, 0xd5d9, 0xd5db, 0xd5dd, 0xd5e4,
- 0xd5e5, 0xd5e8, 0xd5ec, 0xd5f4, 0xd5f5, 0xd5f7, 0xd5f9, 0xd600,
- 0xd601, 0xd604, 0xd608, 0xd610, 0xd611, 0xd613, 0xd614, 0xd615,
- 0xd61c, 0xd620, 0xd624, 0xd62d, 0xd638, 0xd639, 0xd63c, 0xd640,
- 0xd645, 0xd648, 0xd649, 0xd64b, 0xd64d, 0xd651, 0xd654, 0xd655,
- 0xd658, 0xd65c, 0xd667, 0xd669, 0xd670, 0xd671, 0xd674, 0xd683,
- 0xd685, 0xd68c, 0xd68d, 0xd690, 0xd694, 0xd69d, 0xd69f, 0xd6a1,
- 0xd6a8, 0xd6ac, 0xd6b0, 0xd6b9, 0xd6bb, 0xd6c4, 0xd6c5, 0xd6c8,
- 0xd6cc, 0xd6d1, 0xd6d4, 0xd6d7, 0xd6d9, 0xd6e0, 0xd6e4, 0xd6e8,
- 0xd6f0, 0xd6f5, 0xd6fc, 0xd6fd, 0xd700, 0xd704, 0xd711, 0xd718,
- 0xd719, 0xd71c, 0xd720, 0xd728, 0xd729, 0xd72b, 0xd72d, 0xd734,
- 0xd735, 0xd738, 0xd73c, 0xd744, 0xd747, 0xd749, 0xd750, 0xd751,
- 0xd754, 0xd756, 0xd757, 0xd758, 0xd759, 0xd760, 0xd761, 0xd763,
- 0xd765, 0xd769, 0xd76c, 0xd770, 0xd774, 0xd77c, 0xd77d, 0xd781,
- 0xd788, 0xd789, 0xd78c, 0xd790, 0xd798, 0xd799, 0xd79b, 0xd79d,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4f3d, 0x4f73,
- 0x5047, 0x50f9, 0x52a0, 0x53ef, 0x5475, 0x54e5, 0x5609, 0x5ac1,
- 0x5bb6, 0x6687, 0x67b6, 0x67b7, 0x67ef, 0x6b4c, 0x73c2, 0x75c2,
- 0x7a3c, 0x82db, 0x8304, 0x8857, 0x8888, 0x8a36, 0x8cc8, 0x8dcf,
- 0x8efb, 0x8fe6, 0x99d5, 0x523b, 0x5374, 0x5404, 0x606a, 0x6164,
- 0x6bbc, 0x73cf, 0x811a, 0x89ba, 0x89d2, 0x95a3, 0x4f83, 0x520a,
- 0x58be, 0x5978, 0x59e6, 0x5e72, 0x5e79, 0x61c7, 0x63c0, 0x6746,
- 0x67ec, 0x687f, 0x6f97, 0x764e, 0x770b, 0x78f5, 0x7a08, 0x7aff,
- 0x7c21, 0x809d, 0x826e, 0x8271, 0x8aeb, 0x9593, 0x4e6b, 0x559d,
- 0x66f7, 0x6e34, 0x78a3, 0x7aed, 0x845b, 0x8910, 0x874e, 0x97a8,
- 0x52d8, 0x574e, 0x582a, 0x5d4c, 0x611f, 0x61be, 0x6221, 0x6562,
- 0x67d1, 0x6a44, 0x6e1b, 0x7518, 0x75b3, 0x76e3, 0x77b0, 0x7d3a,
- 0x90af, 0x9451, 0x9452, 0x9f95, 0x5323, 0x5cac, 0x7532, 0x80db,
- 0x9240, 0x9598, 0x525b, 0x5808, 0x59dc, 0x5ca1, 0x5d17, 0x5eb7,
- 0x5f3a, 0x5f4a, 0x6177, 0x6c5f, 0x757a, 0x7586, 0x7ce0, 0x7d73,
- 0x7db1, 0x7f8c, 0x8154, 0x8221, 0x8591, 0x8941, 0x8b1b, 0x92fc,
- 0x0000, 0x9c47, 0x4ecb, 0x4ef7, 0x500b, 0x51f1, 0x584f, 0x6137,
- 0x613e, 0x6168, 0x6539, 0x69ea, 0x6f11, 0x75a5, 0x7686, 0x76d6,
- 0x7b87, 0x82a5, 0x84cb, 0x0000, 0x93a7, 0x958b, 0x5580, 0x5ba2,
- 0x5751, 0x66f4, 0x7cb3, 0x7fb9, 0x91b5, 0x5028, 0x53bb, 0x5c45,
- 0x5de8, 0x62d2, 0x636e, 0x64da, 0x64e7, 0x6e20, 0x70ac, 0x795b,
- 0x8ddd, 0x8e1e, 0x0000, 0x907d, 0x9245, 0x92f8, 0x4e7e, 0x4ef6,
- 0x5065, 0x5dfe, 0x5efa, 0x6106, 0x6957, 0x8171, 0x8654, 0x8e47,
- 0x9375, 0x9a2b, 0x4e5e, 0x5091, 0x6770, 0x6840, 0x5109, 0x528d,
- 0x5292, 0x6aa2, 0x77bc, 0x9210, 0x9ed4, 0x52ab, 0x602f, 0x8ff2,
- 0x5048, 0x61a9, 0x63ed, 0x64ca, 0x683c, 0x6a84, 0x6fc0, 0x8188,
- 0x89a1, 0x9694, 0x5805, 0x727d, 0x72ac, 0x7504, 0x7d79, 0x7e6d,
- 0x80a9, 0x0000, 0x8b74, 0x9063, 0x9d51, 0x6289, 0x6c7a, 0x6f54,
- 0x7d50, 0x7f3a, 0x8a23, 0x517c, 0x614a, 0x7b9d, 0x8b19, 0x9257,
- 0x938c, 0x4eac, 0x4fd3, 0x501e, 0x50be, 0x5106, 0x52c1, 0x52cd,
- 0x537f, 0x5770, 0x5883, 0x5e9a, 0x5f91, 0x6176, 0x61ac, 0x64ce,
- 0x656c, 0x666f, 0x66bb, 0x0000, 0x6897, 0x6d87, 0x7085, 0x70f1,
- 0x749f, 0x74a5, 0x74ca, 0x75d9, 0x786c, 0x78ec, 0x7adf, 0x7af6,
- 0x7d45, 0x7d93, 0x8015, 0x803f, 0x811b, 0x8396, 0x8b66, 0x8f15,
- 0x9015, 0x93e1, 0x9803, 0x9838, 0x9a5a, 0x9be8, 0x4fc2, 0x5553,
- 0x583a, 0x0000, 0x5b63, 0x5c46, 0x60b8, 0x6212, 0x6842, 0x68b0,
- 0x68e8, 0x6eaa, 0x754c, 0x7678, 0x78ce, 0x7a3d, 0x7cfb, 0x7e6b,
- 0x7e7c, 0x8a08, 0x8aa1, 0x8c3f, 0x968e, 0x9dc4, 0x53e4, 0x53e9,
- 0x544a, 0x5471, 0x56fa, 0x59d1, 0x5b64, 0x5c3b, 0x5eab, 0x62f7,
- 0x6537, 0x6545, 0x6572, 0x66a0, 0x67af, 0x69c1, 0x6cbd, 0x75fc,
- 0x7690, 0x777e, 0x7a3f, 0x7f94, 0x8003, 0x80a1, 0x818f, 0x82e6,
- 0x82fd, 0x83f0, 0x85c1, 0x8831, 0x88b4, 0x8aa5, 0x0000, 0x8f9c,
- 0x932e, 0x96c7, 0x9867, 0x9ad8, 0x9f13, 0x54ed, 0x659b, 0x66f2,
- 0x688f, 0x7a40, 0x8c37, 0x9d60, 0x56f0, 0x5764, 0x5d11, 0x6606,
- 0x68b1, 0x68cd, 0x6efe, 0x7428, 0x889e, 0x9be4, 0x6c68, 0x0000,
- 0x9aa8, 0x4f9b, 0x516c, 0x5171, 0x529f, 0x5b54, 0x5de5, 0x6050,
- 0x606d, 0x62f1, 0x63a7, 0x653b, 0x73d9, 0x7a7a, 0x86a3, 0x8ca2,
- 0x978f, 0x0000, 0x5be1, 0x6208, 0x679c, 0x74dc, 0x79d1, 0x83d3,
- 0x8a87, 0x8ab2, 0x8de8, 0x904e, 0x934b, 0x9846, 0x5ed3, 0x69e8,
- 0x85ff, 0x90ed, 0x4e32, 0x51a0, 0x5b98, 0x5bec, 0x6163, 0x68fa,
- 0x6b3e, 0x704c, 0x742f, 0x74d8, 0x7ba1, 0x7f50, 0x83c5, 0x89c0,
- 0x8cab, 0x95dc, 0x9928, 0x522e, 0x605d, 0x62ec, 0x9002, 0x4f8a,
- 0x5149, 0x5321, 0x58d9, 0x5ee3, 0x66e0, 0x6d38, 0x709a, 0x72c2,
- 0x73d6, 0x7b50, 0x80f1, 0x945b, 0x5366, 0x639b, 0x7f6b, 0x4e56,
- 0x5080, 0x584a, 0x58de, 0x602a, 0x6127, 0x62d0, 0x69d0, 0x9b41,
- 0x5b8f, 0x7d18, 0x80b1, 0x8f5f, 0x4ea4, 0x50d1, 0x54ac, 0x55ac,
- 0x5b0c, 0x5da0, 0x5de7, 0x652a, 0x654e, 0x6821, 0x6a4b, 0x72e1,
- 0x768e, 0x77ef, 0x7d5e, 0x7ff9, 0x81a0, 0x854e, 0x86df, 0x8f03,
- 0x8f4e, 0x90ca, 0x9903, 0x9a55, 0x9bab, 0x4e18, 0x4e45, 0x4e5d,
- 0x4ec7, 0x4ff1, 0x5177, 0x52fe, 0x5340, 0x53e3, 0x53e5, 0x548e,
- 0x5614, 0x5775, 0x57a2, 0x5bc7, 0x5d87, 0x5ed0, 0x61fc, 0x62d8,
- 0x6551, 0x67b8, 0x67e9, 0x69cb, 0x6b50, 0x6bc6, 0x6bec, 0x6c42,
- 0x6e9d, 0x7078, 0x72d7, 0x7396, 0x7403, 0x77bf, 0x77e9, 0x7a76,
- 0x7d7f, 0x8009, 0x81fc, 0x8205, 0x820a, 0x82df, 0x8862, 0x8b33,
- 0x8cfc, 0x8ec0, 0x9011, 0x90b1, 0x9264, 0x92b6, 0x99d2, 0x9a45,
- 0x9ce9, 0x9dd7, 0x9f9c, 0x570b, 0x5c40, 0x83ca, 0x97a0, 0x97ab,
- 0x9eb4, 0x541b, 0x7a98, 0x7fa4, 0x88d9, 0x8ecd, 0x90e1, 0x5800,
- 0x5c48, 0x6398, 0x7a9f, 0x5bae, 0x5f13, 0x7a79, 0x7aae, 0x828e,
- 0x8eac, 0x5026, 0x5238, 0x52f8, 0x5377, 0x5708, 0x62f3, 0x6372,
- 0x6b0a, 0x6dc3, 0x7737, 0x53a5, 0x7357, 0x8568, 0x8e76, 0x95d5,
- 0x673a, 0x6ac3, 0x6f70, 0x8a6d, 0x8ecc, 0x994b, 0x0000, 0x6677,
- 0x6b78, 0x8cb4, 0x9b3c, 0x0000, 0x53eb, 0x572d, 0x594e, 0x63c6,
- 0x69fb, 0x73ea, 0x7845, 0x7aba, 0x7ac5, 0x7cfe, 0x8475, 0x898f,
- 0x8d73, 0x9035, 0x95a8, 0x52fb, 0x5747, 0x7547, 0x7b60, 0x83cc,
- 0x921e, 0x0000, 0x6a58, 0x514b, 0x524b, 0x5287, 0x621f, 0x68d8,
- 0x6975, 0x9699, 0x50c5, 0x52a4, 0x52e4, 0x61c3, 0x65a4, 0x6839,
- 0x69ff, 0x747e, 0x7b4b, 0x82b9, 0x83eb, 0x89b2, 0x8b39, 0x8fd1,
- 0x9949, 0x5951, 0x4eca, 0x5997, 0x64d2, 0x6611, 0x6a8e, 0x7434,
- 0x7981, 0x79bd, 0x82a9, 0x887e, 0x887f, 0x895f, 0x91d1, 0x9326,
- 0x4f0b, 0x53ca, 0x6025, 0x6271, 0x6c72, 0x7d1a, 0x7d66, 0x4e98,
- 0x5162, 0x77dc, 0x80af, 0x4f01, 0x4f0e, 0x5176, 0x5180, 0x55dc,
- 0x5668, 0x573b, 0x57fa, 0x57fc, 0x5914, 0x5947, 0x5993, 0x5bc4,
- 0x5c90, 0x5d0e, 0x5df1, 0x5e7e, 0x5fcc, 0x6280, 0x65d7, 0x65e3,
- 0x671e, 0x671f, 0x675e, 0x68cb, 0x68c4, 0x6a5f, 0x6b3a, 0x6c23,
- 0x6c7d, 0x6c82, 0x6dc7, 0x7398, 0x7426, 0x742a, 0x7482, 0x74a3,
- 0x7578, 0x757f, 0x7881, 0x78ef, 0x7941, 0x7947, 0x7948, 0x797a,
- 0x7b95, 0x7d00, 0x7dba, 0x7f88, 0x8006, 0x802d, 0x808c, 0x8a18,
- 0x8b4f, 0x8c48, 0x8d77, 0x9321, 0x9324, 0x98e2, 0x9951, 0x9a0e,
- 0x9a0f, 0x9a65, 0x9e92, 0x7dca, 0x4f76, 0x5409, 0x62ee, 0x6854,
- 0x0000, 0x55ab, 0x513a, 0x5587, 0x5948, 0x5a1c, 0x61e6, 0x61f6,
- 0x62cf, 0x62ff, 0x7669, 0x7f85, 0x863f, 0x87ba, 0x88f8, 0x908f,
- 0x90a3, 0x6a02, 0x6d1b, 0x70d9, 0x73de, 0x843d, 0x8afe, 0x916a,
- 0x99f1, 0x4e82, 0x5375, 0x6696, 0x6b04, 0x7156, 0x721b, 0x862d,
- 0x96e3, 0x9e1e, 0x634f, 0x637a, 0x5357, 0x5d50, 0x678f, 0x6960,
- 0x6e73, 0x6feb, 0x7537, 0x85cd, 0x8964, 0x62c9, 0x7d0d, 0x81d8,
- 0x881f, 0x8872, 0x56ca, 0x5a18, 0x5eca, 0x6717, 0x6d6a, 0x72fc,
- 0x90de, 0x4e43, 0x4f86, 0x5167, 0x0000, 0x67f0, 0x8010, 0x51b7,
- 0x5973, 0x5e74, 0x649a, 0x79ca, 0x5ff5, 0x606c, 0x62c8, 0x637b,
- 0x5be7, 0x5bd7, 0x52aa, 0x52de, 0x5974, 0x5f29, 0x6012, 0x64c4,
- 0x6ad3, 0x7210, 0x7459, 0x76e7, 0x8001, 0x8606, 0x865c, 0x8def,
- 0x9732, 0x99d1, 0x9b6f, 0x9dfa, 0x788c, 0x797f, 0x7da0, 0x83c9,
- 0x9304, 0x9e7f, 0x8ad6, 0x58df, 0x5f04, 0x6fc3, 0x7c60, 0x807e,
- 0x81bf, 0x8fb2, 0x60f1, 0x7262, 0x78ca, 0x8166, 0x8cc2, 0x96f7,
- 0x5c3f, 0x58d8, 0x5c62, 0x6a13, 0x6dda, 0x6f0f, 0x7d2f, 0x7e37,
- 0x964b, 0x5ae9, 0x8a25, 0x677b, 0x7d10, 0x52d2, 0x808b, 0x51dc,
- 0x51cc, 0x7a1c, 0x7dbe, 0x80fd, 0x83f1, 0x9675, 0x5c3c, 0x6ce5,
- 0x533f, 0x6eba, 0x591a, 0x8336, 0x4e39, 0x4eb6, 0x4f46, 0x55ae,
- 0x5718, 0x58c7, 0x5f56, 0x65b7, 0x65e6, 0x6a80, 0x6bb5, 0x6e4d,
- 0x77ed, 0x7aef, 0x7c1e, 0x7dde, 0x86cb, 0x8892, 0x9132, 0x935b,
- 0x64bb, 0x6fbe, 0x737a, 0x75b8, 0x9054, 0x5556, 0x574d, 0x61ba,
- 0x64d4, 0x66c7, 0x6de1, 0x6e5b, 0x6f6d, 0x6fb9, 0x75f0, 0x8043,
- 0x81bd, 0x8541, 0x8983, 0x8ac7, 0x8b5a, 0x931f, 0x6c93, 0x7553,
- 0x7b54, 0x8e0f, 0x905d, 0x5510, 0x5802, 0x5858, 0x5e62, 0x6207,
- 0x649e, 0x68e0, 0x7576, 0x7cd6, 0x87b3, 0x9ee8, 0x4ee3, 0x5788,
- 0x576e, 0x5927, 0x5c0d, 0x5cb1, 0x5e36, 0x5f85, 0x6234, 0x64e1,
- 0x73b3, 0x81fa, 0x888b, 0x8cb8, 0x968a, 0x9edb, 0x5b85, 0x5fb7,
- 0x60b3, 0x5012, 0x5200, 0x5230, 0x5716, 0x5835, 0x5857, 0x5c0e,
- 0x5c60, 0x5cf6, 0x5d8b, 0x5ea6, 0x5f92, 0x60bc, 0x6311, 0x6389,
- 0x6417, 0x6843, 0x68f9, 0x6ac2, 0x6dd8, 0x6e21, 0x6ed4, 0x6fe4,
- 0x71fe, 0x76dc, 0x7779, 0x79b1, 0x7a3b, 0x8404, 0x89a9, 0x8ced,
- 0x8df3, 0x8e48, 0x9003, 0x9014, 0x9053, 0x90fd, 0x934d, 0x9676,
- 0x97dc, 0x6bd2, 0x7006, 0x7258, 0x72a2, 0x7368, 0x7763, 0x79bf,
- 0x7be4, 0x7e9b, 0x8b80, 0x58a9, 0x60c7, 0x6566, 0x65fd, 0x66be,
- 0x6c8c, 0x711e, 0x71c9, 0x8c5a, 0x9813, 0x4e6d, 0x7a81, 0x4edd,
- 0x51ac, 0x51cd, 0x52d5, 0x540c, 0x61a7, 0x6771, 0x6850, 0x68df,
- 0x6d1e, 0x6f7c, 0x75bc, 0x77b3, 0x7ae5, 0x80f4, 0x8463, 0x9285,
- 0x515c, 0x6597, 0x675c, 0x6793, 0x75d8, 0x7ac7, 0x8373, 0x0000,
- 0x8c46, 0x9017, 0x982d, 0x5c6f, 0x81c0, 0x829a, 0x9041, 0x906f,
- 0x920d, 0x5f97, 0x5d9d, 0x6a59, 0x71c8, 0x767b, 0x7b49, 0x85e4,
- 0x8b04, 0x9127, 0x9a30, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x7d61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6b12, 0x703e, 0x0000, 0x0000, 0x0000, 0x524c, 0x8fa3,
- 0x0000, 0x64e5, 0x652c, 0x6b16, 0x0000, 0x7c43, 0x7e9c, 0x0000,
- 0x0000, 0x89bd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7405, 0x746f, 0x8782, 0x0000, 0x0000, 0x5d0d, 0x5fa0,
- 0x840a, 0x0000, 0x63a0, 0x7565, 0x4eae, 0x5006, 0x5169, 0x51c9,
- 0x6881, 0x6a11, 0x7cae, 0x7cb1, 0x7ce7, 0x826f, 0x8ad2, 0x8f1b,
- 0x91cf, 0x4fb6, 0x5137, 0x52f5, 0x5442, 0x5eec, 0x616e, 0x623e,
- 0x65c5, 0x6ada, 0x6ffe, 0x792a, 0x85dc, 0x8823, 0x95ad, 0x9a62,
- 0x9a6a, 0x9e97, 0x9ece, 0x529b, 0x66c6, 0x6b77, 0x701d, 0x792b,
- 0x8f62, 0x9742, 0x6190, 0x6200, 0x6523, 0x6f23, 0x7149, 0x7489,
- 0x7df4, 0x806f, 0x84ee, 0x8f26, 0x9023, 0x934a, 0x51bd, 0x5217,
- 0x52a3, 0x6d0c, 0x70c8, 0x88c2, 0x5ec9, 0x6582, 0x6bae, 0x6fc2,
- 0x7c3e, 0x7375, 0x4ee4, 0x4f36, 0x56f9, 0x0000, 0x5cba, 0x5dba,
- 0x601c, 0x73b2, 0x7b2d, 0x7f9a, 0x7fce, 0x8046, 0x901e, 0x9234,
- 0x96f6, 0x9748, 0x9818, 0x9f61, 0x4f8b, 0x6fa7, 0x79ae, 0x91b4,
- 0x96b7, 0x0000, 0x0000, 0x6488, 0x0000, 0x0000, 0x6f5e, 0x7018,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8f05, 0x0000,
- 0x0000, 0x0000, 0x9e75, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9e93, 0x0000, 0x0000, 0x0000, 0x6727, 0x7027, 0x74cf,
- 0x0000, 0x0000, 0x5121, 0x7028, 0x0000, 0x0000, 0x0000, 0x8cda,
- 0x8cf4, 0x0000, 0x4e86, 0x50da, 0x5bee, 0x5ed6, 0x6599, 0x71ce,
- 0x7642, 0x77ad, 0x804a, 0x84fc, 0x907c, 0x9b27, 0x9f8d, 0x0000,
- 0x5a41, 0x0000, 0x0000, 0x0000, 0x0000, 0x763b, 0x0000, 0x0000,
- 0x851e, 0x8938, 0x93e4, 0x0000, 0x5289, 0x65d2, 0x67f3, 0x69b4,
- 0x6d41, 0x6e9c, 0x700f, 0x7409, 0x7460, 0x7559, 0x7624, 0x786b,
- 0x8b2c, 0x985e, 0x516d, 0x622e, 0x9678, 0x4f96, 0x502b, 0x5d19,
- 0x6dea, 0x7db8, 0x8f2a, 0x5f8b, 0x6144, 0x6817, 0x7387, 0x9686,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x695e, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x4fda, 0x5229, 0x5398, 0x540f, 0x550e, 0x5c65, 0x60a7,
- 0x674e, 0x68a8, 0x6d6c, 0x7281, 0x72f8, 0x7406, 0x7483, 0x7570,
- 0x75e2, 0x7c6c, 0x7f79, 0x7fb8, 0x8389, 0x88cf, 0x88e1, 0x91cc,
- 0x91d0, 0x96e2, 0x9bc9, 0x541d, 0x6f7e, 0x71d0, 0x7498, 0x85fa,
- 0x8eaa, 0x96a3, 0x9c57, 0x9e9f, 0x6797, 0x6dcb, 0x7433, 0x81e8,
- 0x9716, 0x782c, 0x7acb, 0x7b20, 0x7c92, 0x6469, 0x746a, 0x75f2,
- 0x78bc, 0x78e8, 0x99ac, 0x9b54, 0x9ebb, 0x5bde, 0x5e55, 0x6f20,
- 0x819c, 0x83ab, 0x9088, 0x4e07, 0x534d, 0x5a29, 0x5dd2, 0x5f4e,
- 0x6162, 0x633d, 0x6669, 0x66fc, 0x6eff, 0x6f2b, 0x7063, 0x779e,
- 0x842c, 0x8513, 0x883b, 0x8f13, 0x9945, 0x9c3b, 0x551c, 0x62b9,
- 0x672b, 0x6cab, 0x8309, 0x896a, 0x977a, 0x4ea1, 0x5984, 0x5fd8,
- 0x5fd9, 0x671b, 0x7db2, 0x7f54, 0x8292, 0x832b, 0x83bd, 0x8f1e,
- 0x9099, 0x57cb, 0x59b9, 0x5a92, 0x5bd0, 0x6627, 0x679a, 0x6885,
- 0x6bcf, 0x7164, 0x7f75, 0x8cb7, 0x8ce3, 0x9081, 0x9b45, 0x8108,
- 0x8c8a, 0x964c, 0x9a40, 0x9ea5, 0x5b5f, 0x6c13, 0x731b, 0x76f2,
- 0x76df, 0x840c, 0x51aa, 0x8993, 0x514d, 0x5195, 0x52c9, 0x68c9,
- 0x6c94, 0x7704, 0x7720, 0x7dbf, 0x7dec, 0x9762, 0x9eb5, 0x6ec5,
- 0x8511, 0x51a5, 0x540d, 0x547d, 0x660e, 0x669d, 0x6927, 0x6e9f,
- 0x76bf, 0x7791, 0x8317, 0x84c2, 0x879f, 0x9169, 0x9298, 0x9cf4,
- 0x8882, 0x4fae, 0x5192, 0x52df, 0x59c6, 0x5e3d, 0x6155, 0x6478,
- 0x6479, 0x66ae, 0x67d0, 0x6a21, 0x6bcd, 0x6bdb, 0x725f, 0x7261,
- 0x7441, 0x7738, 0x77db, 0x8017, 0x82bc, 0x8305, 0x8b00, 0x8b28,
- 0x8c8c, 0x6728, 0x6c90, 0x7267, 0x76ee, 0x7766, 0x7a46, 0x9da9,
- 0x6b7f, 0x6c92, 0x5922, 0x6726, 0x8499, 0x536f, 0x5893, 0x5999,
- 0x5edf, 0x63cf, 0x6634, 0x6773, 0x6e3a, 0x732b, 0x7ad7, 0x82d7,
- 0x9328, 0x52d9, 0x5deb, 0x61ae, 0x61cb, 0x620a, 0x62c7, 0x64ab,
- 0x65e0, 0x6959, 0x6b66, 0x6bcb, 0x7121, 0x73f7, 0x755d, 0x7e46,
- 0x821e, 0x8302, 0x856a, 0x8aa3, 0x8cbf, 0x9727, 0x9d61, 0x58a8,
- 0x9ed8, 0x5011, 0x520e, 0x543b, 0x554f, 0x6587, 0x6c76, 0x7d0a,
- 0x7d0b, 0x805e, 0x868a, 0x9580, 0x96ef, 0x52ff, 0x6c95, 0x7269,
- 0x5473, 0x5a9a, 0x5c3e, 0x5d4b, 0x5f4c, 0x5fae, 0x672a, 0x68b6,
- 0x6963, 0x6e3c, 0x6e44, 0x7709, 0x7c73, 0x7f8e, 0x8587, 0x8b0e,
- 0x8ff7, 0x9761, 0x9ef4, 0x5cb7, 0x60b6, 0x610d, 0x61ab, 0x654f,
- 0x65fb, 0x65fc, 0x6c11, 0x6cef, 0x739f, 0x73c9, 0x7de1, 0x9594,
- 0x5bc6, 0x871c, 0x8b10, 0x525d, 0x535a, 0x62cd, 0x640f, 0x64b2,
- 0x6734, 0x6a38, 0x6cca, 0x73c0, 0x749e, 0x7b94, 0x7c95, 0x7e1b,
- 0x818a, 0x8236, 0x8584, 0x8feb, 0x96f9, 0x99c1, 0x4f34, 0x534a,
- 0x53cd, 0x53db, 0x62cc, 0x642c, 0x6500, 0x6591, 0x69c3, 0x6cee,
- 0x6f58, 0x73ed, 0x7554, 0x7622, 0x76e4, 0x76fc, 0x78d0, 0x78fb,
- 0x792c, 0x7d46, 0x822c, 0x87e0, 0x8fd4, 0x9812, 0x98ef, 0x52c3,
- 0x62d4, 0x64a5, 0x6e24, 0x6f51, 0x767c, 0x8dcb, 0x91b1, 0x9262,
- 0x9aee, 0x9b43, 0x5023, 0x508d, 0x574a, 0x59a8, 0x5c28, 0x5e47,
- 0x5f77, 0x623f, 0x653e, 0x65b9, 0x65c1, 0x6609, 0x678b, 0x699c,
- 0x6ec2, 0x78c5, 0x7d21, 0x80aa, 0x8180, 0x822b, 0x82b3, 0x84a1,
- 0x868c, 0x8a2a, 0x8b17, 0x90a6, 0x9632, 0x9f90, 0x500d, 0x4ff3,
- 0x5317, 0x57f9, 0x5f98, 0x62dc, 0x6392, 0x676f, 0x6e43, 0x7119,
- 0x76c3, 0x80cc, 0x80da, 0x88f4, 0x88f5, 0x8919, 0x8ce0, 0x8f29,
- 0x914d, 0x966a, 0x4f2f, 0x4f70, 0x5e1b, 0x67cf, 0x6822, 0x767d,
- 0x767e, 0x9b44, 0x5e61, 0x6a0a, 0x7169, 0x71d4, 0x756a, 0x0000,
- 0x7e41, 0x8543, 0x85e9, 0x98dc, 0x4f10, 0x7b4f, 0x7f70, 0x95a5,
- 0x51e1, 0x5e06, 0x68b5, 0x6c3e, 0x6c4e, 0x6cdb, 0x72af, 0x7bc4,
- 0x8303, 0x6cd5, 0x743a, 0x50fb, 0x5288, 0x58c1, 0x64d8, 0x6a97,
- 0x74a7, 0x7656, 0x78a7, 0x8617, 0x95e2, 0x9739, 0x4fbf, 0x535e,
- 0x5f01, 0x8b8a, 0x8fa8, 0x8faf, 0x908a, 0x5225, 0x77a5, 0x9c49,
- 0x9f08, 0x4e19, 0x5002, 0x5175, 0x5c5b, 0x5e77, 0x661e, 0x663a,
- 0x67c4, 0x68c5, 0x70b3, 0x7501, 0x75c5, 0x79c9, 0x7add, 0x8f27,
- 0x9920, 0x9a08, 0x4fdd, 0x5821, 0x5831, 0x5bf6, 0x666e, 0x6b65,
- 0x6d11, 0x6e7a, 0x6f7d, 0x73e4, 0x752b, 0x83e9, 0x88dc, 0x8913,
- 0x8b5c, 0x8f14, 0x4f0f, 0x50d5, 0x5310, 0x535c, 0x5b93, 0x5fa9,
- 0x670d, 0x798f, 0x8179, 0x832f, 0x8514, 0x8907, 0x8986, 0x8f39,
- 0x8f3b, 0x99a5, 0x9c12, 0x672c, 0x4e76, 0x4ff8, 0x5949, 0x5c01,
- 0x5cef, 0x5cf0, 0x6367, 0x68d2, 0x70fd, 0x71a2, 0x742b, 0x7e2b,
- 0x84ec, 0x8702, 0x9022, 0x92d2, 0x9cf3, 0x4e0d, 0x4ed8, 0x4fef,
- 0x5085, 0x5256, 0x526f, 0x5426, 0x5490, 0x57e0, 0x592b, 0x5a66,
- 0x5b5a, 0x5b75, 0x5bcc, 0x5e9c, 0x0000, 0x6276, 0x6577, 0x65a7,
- 0x6d6e, 0x6ea5, 0x7236, 0x7b26, 0x7c3f, 0x7f36, 0x8150, 0x8151,
- 0x819a, 0x8240, 0x8299, 0x83a9, 0x8a03, 0x8ca0, 0x8ce6, 0x8cfb,
- 0x8d74, 0x8dba, 0x90e8, 0x91dc, 0x961c, 0x9644, 0x99d9, 0x9ce7,
- 0x0000, 0x5206, 0x5429, 0x5674, 0x58b3, 0x5954, 0x596e, 0x5fff,
- 0x61a4, 0x626e, 0x6610, 0x6c7e, 0x711a, 0x76c6, 0x7c89, 0x7cde,
- 0x7d1b, 0x82ac, 0x8cc1, 0x96f0, 0x0000, 0x4f5b, 0x5f17, 0x5f7f,
- 0x62c2, 0x5d29, 0x670b, 0x68da, 0x787c, 0x7e43, 0x9d6c, 0x4e15,
- 0x5099, 0x5315, 0x532a, 0x5351, 0x5983, 0x5a62, 0x5e87, 0x60b2,
- 0x618a, 0x6249, 0x6279, 0x6590, 0x6787, 0x69a7, 0x6bd4, 0x6bd6,
- 0x6bd7, 0x6bd8, 0x6cb8, 0x6ccc, 0x7435, 0x75fa, 0x7812, 0x7891,
- 0x79d5, 0x79d8, 0x7c83, 0x7dcb, 0x7fe1, 0x80a5, 0x813e, 0x81c2,
- 0x83f2, 0x871a, 0x88e8, 0x8ab9, 0x8b6c, 0x8cbb, 0x9119, 0x975e,
- 0x98db, 0x9f3b, 0x56ac, 0x5b2a, 0x5f6c, 0x658c, 0x6ab3, 0x6baf,
- 0x6d5c, 0x6ff1, 0x7015, 0x725d, 0x73ad, 0x8ca7, 0x8cd3, 0x983b,
- 0x6191, 0x6c37, 0x8058, 0x9a01, 0x4e4d, 0x4e8b, 0x4e9b, 0x4ed5,
- 0x4f3a, 0x4f3c, 0x4f7f, 0x4fdf, 0x50ff, 0x53f2, 0x53f8, 0x5506,
- 0x55e3, 0x56db, 0x58eb, 0x5962, 0x5a11, 0x5beb, 0x5bfa, 0x5c04,
- 0x5df3, 0x5e2b, 0x5f99, 0x601d, 0x6368, 0x659c, 0x65af, 0x67f6,
- 0x67fb, 0x68ad, 0x6b7b, 0x6c99, 0x6cd7, 0x6e23, 0x7009, 0x7345,
- 0x7802, 0x793e, 0x7940, 0x7960, 0x79c1, 0x7be9, 0x7d17, 0x7d72,
- 0x8086, 0x820d, 0x838e, 0x84d1, 0x86c7, 0x88df, 0x8a50, 0x8a5e,
- 0x8b1d, 0x8cdc, 0x8d66, 0x8fad, 0x90aa, 0x98fc, 0x99df, 0x9e9d,
- 0x524a, 0x6578, 0x6714, 0x7d22, 0x5098, 0x522a, 0x5c71, 0x6563,
- 0x6c55, 0x73ca, 0x7523, 0x759d, 0x7b97, 0x849c, 0x9178, 0x9730,
- 0x4e77, 0x6492, 0x6bba, 0x715e, 0x85a9, 0x4e09, 0x53c3, 0x6749,
- 0x68ee, 0x6e17, 0x829f, 0x8518, 0x886b, 0x63f7, 0x6f81, 0x9212,
- 0x98af, 0x4e0a, 0x50b7, 0x50cf, 0x511f, 0x5546, 0x55aa, 0x5617,
- 0x5b40, 0x5c19, 0x5ce0, 0x5e38, 0x5e8a, 0x5ea0, 0x5ec2, 0x60f3,
- 0x6851, 0x6a61, 0x6e58, 0x723d, 0x7240, 0x72c0, 0x76f8, 0x7965,
- 0x7bb1, 0x7fd4, 0x88f3, 0x89f4, 0x8a73, 0x8c61, 0x8cde, 0x971c,
- 0x585e, 0x74bd, 0x8cfd, 0x55c7, 0x0000, 0x7a61, 0x0000, 0x8272,
- 0x7272, 0x751f, 0x7525, 0x7701, 0x7b19, 0x5885, 0x58fb, 0x5dbc,
- 0x5e8f, 0x5eb6, 0x5f90, 0x6055, 0x6292, 0x637f, 0x654d, 0x6691,
- 0x66d9, 0x66f8, 0x6816, 0x68f2, 0x7280, 0x745e, 0x7b6e, 0x7d6e,
- 0x7dd6, 0x7f72, 0x80e5, 0x8212, 0x85af, 0x897f, 0x8a93, 0x901d,
- 0x92e4, 0x9ecd, 0x9f20, 0x5915, 0x596d, 0x5e2d, 0x60dc, 0x6614,
- 0x6673, 0x6790, 0x6c50, 0x6dc5, 0x6f5f, 0x77f3, 0x78a9, 0x84c6,
- 0x91cb, 0x932b, 0x4ed9, 0x50ca, 0x5148, 0x5584, 0x5b0b, 0x5ba3,
- 0x6247, 0x657e, 0x65cb, 0x6e32, 0x717d, 0x7401, 0x7444, 0x7487,
- 0x74bf, 0x766c, 0x79aa, 0x7dda, 0x7e55, 0x7fa8, 0x817a, 0x81b3,
- 0x8239, 0x861a, 0x87ec, 0x8a75, 0x8de3, 0x9078, 0x9291, 0x9425,
- 0x994d, 0x9bae, 0x5368, 0x5c51, 0x6954, 0x6cc4, 0x6d29, 0x6e2b,
- 0x820c, 0x859b, 0x893b, 0x8a2d, 0x8aaa, 0x96ea, 0x9f67, 0x5261,
- 0x66b9, 0x6bb2, 0x7e96, 0x87fe, 0x8d0d, 0x9583, 0x965d, 0x651d,
- 0x6d89, 0x71ee, 0x8449, 0x57ce, 0x59d3, 0x5bac, 0x6027, 0x60fa,
- 0x6210, 0x661f, 0x665f, 0x7329, 0x73f9, 0x76db, 0x0000, 0x7b6c,
- 0x8056, 0x8072, 0x8165, 0x8aa0, 0x9192, 0x4e16, 0x52e2, 0x6b72,
- 0x6d17, 0x7a05, 0x7b39, 0x7d30, 0x0000, 0x8cb0, 0x53ec, 0x562f,
- 0x5851, 0x5bb5, 0x5c0f, 0x5c11, 0x5de2, 0x6240, 0x6383, 0x6414,
- 0x662d, 0x68b3, 0x6cbc, 0x6d88, 0x6eaf, 0x701f, 0x70a4, 0x71d2,
- 0x7526, 0x758f, 0x758e, 0x7619, 0x7b11, 0x7be0, 0x7c2b, 0x7d20,
- 0x7d39, 0x852c, 0x856d, 0x8607, 0x8a34, 0x900d, 0x9061, 0x90b5,
- 0x92b7, 0x97f6, 0x9a37, 0x4fd7, 0x5c6c, 0x675f, 0x6d91, 0x7c9f,
- 0x7e8c, 0x8b16, 0x8d16, 0x901f, 0x5b6b, 0x5dfd, 0x640d, 0x84c0,
- 0x905c, 0x98e1, 0x0000, 0x5b8b, 0x609a, 0x677e, 0x6dde, 0x8a1f,
- 0x8aa6, 0x9001, 0x980c, 0x5237, 0x0000, 0x7051, 0x788e, 0x9396,
- 0x8870, 0x91d7, 0x4fee, 0x53d7, 0x55fd, 0x56da, 0x5782, 0x58fd,
- 0x5ac2, 0x5b88, 0x5cab, 0x5cc0, 0x5e25, 0x6101, 0x620d, 0x624b,
- 0x6388, 0x641c, 0x6536, 0x0000, 0x6a39, 0x6b8a, 0x6c34, 0x6d19,
- 0x6f31, 0x71e7, 0x72e9, 0x7378, 0x7407, 0x74b2, 0x7626, 0x7761,
- 0x79c0, 0x7a57, 0x7aea, 0x7cb9, 0x7d8f, 0x7dac, 0x7e61, 0x7f9e,
- 0x8129, 0x8331, 0x8490, 0x84da, 0x85ea, 0x8896, 0x8ab0, 0x8b90,
- 0x8f38, 0x9042, 0x9083, 0x916c, 0x9296, 0x92b9, 0x968b, 0x96a7,
- 0x96a8, 0x96d6, 0x9700, 0x9808, 0x9996, 0x9ad3, 0x9b1a, 0x53d4,
- 0x587e, 0x5919, 0x5b70, 0x5bbf, 0x6dd1, 0x6f5a, 0x719f, 0x7421,
- 0x74b9, 0x8085, 0x83fd, 0x5de1, 0x5f87, 0x5faa, 0x6042, 0x65ec,
- 0x6812, 0x696f, 0x6a53, 0x6b89, 0x6d35, 0x6df3, 0x73e3, 0x76fe,
- 0x77ac, 0x7b4d, 0x7d14, 0x8123, 0x821c, 0x8340, 0x84f4, 0x8563,
- 0x8a62, 0x8ac4, 0x9187, 0x931e, 0x9806, 0x99b4, 0x620c, 0x8853,
- 0x8ff0, 0x9265, 0x5d07, 0x5d27, 0x5d69, 0x745f, 0x819d, 0x8768,
- 0x6fd5, 0x62fe, 0x7fd2, 0x8936, 0x8972, 0x4e1e, 0x4e58, 0x50e7,
- 0x52dd, 0x5347, 0x627f, 0x6607, 0x7e69, 0x8805, 0x965e, 0x4f8d,
- 0x5319, 0x5636, 0x59cb, 0x5aa4, 0x5c38, 0x5c4e, 0x5c4d, 0x5e02,
- 0x5f11, 0x6043, 0x65bd, 0x662f, 0x6642, 0x67be, 0x67f4, 0x731c,
- 0x77e2, 0x793a, 0x7fc5, 0x8494, 0x84cd, 0x8996, 0x8a66, 0x8a69,
- 0x8ae1, 0x8c55, 0x8c7a, 0x57f4, 0x5bd4, 0x5f0f, 0x606f, 0x62ed,
- 0x690d, 0x6b96, 0x6e5c, 0x7184, 0x7bd2, 0x8755, 0x8b58, 0x8efe,
- 0x98df, 0x98fe, 0x4f38, 0x4f81, 0x4fe1, 0x547b, 0x5a20, 0x5bb8,
- 0x613c, 0x65b0, 0x6668, 0x71fc, 0x7533, 0x795e, 0x7d33, 0x814e,
- 0x81e3, 0x8398, 0x85aa, 0x85ce, 0x8703, 0x8a0a, 0x8eab, 0x8f9b,
- 0x8fb0, 0x8fc5, 0x5931, 0x5ba4, 0x5be6, 0x6089, 0x5be9, 0x5c0b,
- 0x5fc3, 0x6c81, 0x6c88, 0x6df1, 0x700b, 0x751a, 0x82af, 0x8af6,
- 0x4ec0, 0x5341, 0x0000, 0x96d9, 0x6c0f, 0x4e9e, 0x4fc4, 0x5152,
- 0x555e, 0x5a25, 0x5ce8, 0x6211, 0x7259, 0x82bd, 0x83aa, 0x86fe,
- 0x8859, 0x8a1d, 0x963f, 0x96c5, 0x9913, 0x9d09, 0x9d5d, 0x580a,
- 0x5cb3, 0x5dbd, 0x5e44, 0x60e1, 0x6115, 0x63e1, 0x0000, 0x6e25,
- 0x9102, 0x9354, 0x984e, 0x9c10, 0x9f77, 0x5b89, 0x5cb8, 0x6309,
- 0x664f, 0x6848, 0x773c, 0x96c1, 0x978d, 0x9854, 0x9b9f, 0x65a1,
- 0x8b01, 0x8ecb, 0x95bc, 0x5535, 0x5ca9, 0x5dd6, 0x5eb5, 0x6697,
- 0x764c, 0x83f4, 0x95c7, 0x58d3, 0x62bc, 0x72ce, 0x9d28, 0x4ef0,
- 0x592e, 0x600f, 0x663b, 0x6b83, 0x79e7, 0x9d26, 0x5393, 0x54c0,
- 0x57c3, 0x5d16, 0x611b, 0x66d6, 0x6daf, 0x788d, 0x827e, 0x9698,
- 0x9744, 0x5384, 0x627c, 0x6396, 0x6db2, 0x7e0a, 0x814b, 0x984d,
- 0x6afb, 0x7f4c, 0x9daf, 0x9e1a, 0x4e5f, 0x503b, 0x51b6, 0x591c,
- 0x60f9, 0x63f6, 0x6930, 0x723a, 0x8036, 0x82e5, 0x91ce, 0x5f31,
- 0x0000, 0x0000, 0x7d04, 0x0000, 0x846f, 0x84bb, 0x85e5, 0x8e8d,
- 0x0000, 0x4f6f, 0x0000, 0x0000, 0x58e4, 0x5b43, 0x6059, 0x63da,
- 0x6518, 0x656d, 0x6698, 0x0000, 0x694a, 0x6a23, 0x6d0b, 0x7001,
- 0x716c, 0x75d2, 0x760d, 0x79b3, 0x7a70, 0x0000, 0x7f8a, 0x0000,
- 0x8944, 0x0000, 0x8b93, 0x91c0, 0x967d, 0x0000, 0x990a, 0x5704,
- 0x5fa1, 0x65bc, 0x6f01, 0x7600, 0x79a6, 0x8a9e, 0x99ad, 0x9b5a,
- 0x9f6c, 0x5104, 0x61b6, 0x6291, 0x6a8d, 0x81c6, 0x5043, 0x5830,
- 0x5f66, 0x7109, 0x8a00, 0x8afa, 0x5b7c, 0x8616, 0x4ffa, 0x513c,
- 0x56b4, 0x5944, 0x63a9, 0x6df9, 0x5daa, 0x696d, 0x5186, 0x4e88,
- 0x4f59, 0x0000, 0x0000, 0x0000, 0x5982, 0x0000, 0x0000, 0x6b5f,
- 0x6c5d, 0x0000, 0x74b5, 0x7916, 0x0000, 0x8207, 0x8245, 0x8339,
- 0x8f3f, 0x8f5d, 0x0000, 0x9918, 0x0000, 0x0000, 0x0000, 0x4ea6,
- 0x0000, 0x57df, 0x5f79, 0x6613, 0x0000, 0x0000, 0x75ab, 0x7e79,
- 0x8b6f, 0x0000, 0x9006, 0x9a5b, 0x56a5, 0x5827, 0x59f8, 0x5a1f,
- 0x5bb4, 0x0000, 0x5ef6, 0x0000, 0x0000, 0x6350, 0x633b, 0x0000,
- 0x693d, 0x6c87, 0x6cbf, 0x6d8e, 0x6d93, 0x6df5, 0x6f14, 0x0000,
- 0x70df, 0x7136, 0x7159, 0x0000, 0x71c3, 0x71d5, 0x0000, 0x784f,
- 0x786f, 0x0000, 0x7b75, 0x7de3, 0x0000, 0x7e2f, 0x0000, 0x884d,
- 0x8edf, 0x0000, 0x0000, 0x0000, 0x925b, 0x0000, 0x9cf6, 0x0000,
- 0x0000, 0x54bd, 0x6085, 0x6d85, 0x0000, 0x71b1, 0x0000, 0x0000,
- 0x95b1, 0x53ad, 0x0000, 0x0000, 0x0000, 0x67d3, 0x0000, 0x708e,
- 0x7130, 0x7430, 0x8276, 0x82d2, 0x0000, 0x95bb, 0x9ae5, 0x9e7d,
- 0x66c4, 0x0000, 0x71c1, 0x0000, 0x0000, 0x0000, 0x584b, 0x0000,
- 0x0000, 0x5db8, 0x5f71, 0x0000, 0x6620, 0x668e, 0x6979, 0x69ae,
- 0x6c38, 0x6cf3, 0x6e36, 0x6f41, 0x6fda, 0x701b, 0x702f, 0x7150,
- 0x71df, 0x7370, 0x0000, 0x745b, 0x7469, 0x74d4, 0x76c8, 0x7a4e,
- 0x7e93, 0x0000, 0x0000, 0x82f1, 0x8a60, 0x8fce, 0x0000, 0x9348,
- 0x0000, 0x9719, 0x0000, 0x0000, 0x4e42, 0x502a, 0x0000, 0x5208,
- 0x53e1, 0x66f3, 0x6c6d, 0x6fca, 0x730a, 0x777f, 0x7a62, 0x82ae,
- 0x85dd, 0x8602, 0x0000, 0x88d4, 0x8a63, 0x8b7d, 0x8c6b, 0x0000,
- 0x92b3, 0x0000, 0x9713, 0x9810, 0x4e94, 0x4f0d, 0x4fc9, 0x50b2,
- 0x5348, 0x543e, 0x5433, 0x55da, 0x5862, 0x58ba, 0x5967, 0x5a1b,
- 0x5be4, 0x609f, 0x0000, 0x61ca, 0x6556, 0x65ff, 0x6664, 0x68a7,
- 0x6c5a, 0x6fb3, 0x70cf, 0x71ac, 0x7352, 0x7b7d, 0x8708, 0x8aa4,
- 0x9c32, 0x9f07, 0x5c4b, 0x6c83, 0x7344, 0x7389, 0x923a, 0x6eab,
- 0x7465, 0x761f, 0x7a69, 0x7e15, 0x860a, 0x5140, 0x58c5, 0x64c1,
- 0x74ee, 0x7515, 0x7670, 0x7fc1, 0x9095, 0x96cd, 0x9954, 0x6e26,
- 0x74e6, 0x7aa9, 0x7aaa, 0x81e5, 0x86d9, 0x8778, 0x8a1b, 0x5a49,
- 0x5b8c, 0x5b9b, 0x68a1, 0x6900, 0x6d63, 0x73a9, 0x7413, 0x742c,
- 0x7897, 0x7de9, 0x7feb, 0x8118, 0x8155, 0x839e, 0x8c4c, 0x962e,
- 0x9811, 0x66f0, 0x5f80, 0x65fa, 0x6789, 0x6c6a, 0x738b, 0x502d,
- 0x5a03, 0x6b6a, 0x77ee, 0x5916, 0x5d6c, 0x5dcd, 0x7325, 0x754f,
- 0x0000, 0x0000, 0x50e5, 0x51f9, 0x582f, 0x592d, 0x5996, 0x59da,
- 0x5be5, 0x0000, 0x0000, 0x5da2, 0x62d7, 0x6416, 0x6493, 0x64fe,
- 0x0000, 0x66dc, 0x0000, 0x6a48, 0x0000, 0x71ff, 0x7464, 0x0000,
- 0x7a88, 0x7aaf, 0x7e47, 0x7e5e, 0x8000, 0x8170, 0x0000, 0x87ef,
- 0x8981, 0x8b20, 0x9059, 0x0000, 0x9080, 0x9952, 0x617e, 0x6b32,
- 0x6d74, 0x7e1f, 0x8925, 0x8fb1, 0x4fd1, 0x50ad, 0x5197, 0x52c7,
- 0x57c7, 0x5889, 0x5bb9, 0x5eb8, 0x6142, 0x6995, 0x6d8c, 0x6e67,
- 0x6eb6, 0x7194, 0x7462, 0x7528, 0x752c, 0x8073, 0x8338, 0x84c9,
- 0x8e0a, 0x9394, 0x93de, 0x0000, 0x4e8e, 0x4f51, 0x5076, 0x512a,
- 0x53c8, 0x53cb, 0x53f3, 0x5b87, 0x5bd3, 0x5c24, 0x611a, 0x6182,
- 0x65f4, 0x725b, 0x7397, 0x7440, 0x76c2, 0x7950, 0x7991, 0x79b9,
- 0x7d06, 0x7fbd, 0x828b, 0x85d5, 0x865e, 0x8fc2, 0x9047, 0x90f5,
- 0x91ea, 0x9685, 0x96e8, 0x96e9, 0x52d6, 0x5f67, 0x65ed, 0x6631,
- 0x682f, 0x715c, 0x7a36, 0x90c1, 0x980a, 0x4e91, 0x6688, 0x6a52,
- 0x6b9e, 0x6f90, 0x7189, 0x8018, 0x82b8, 0x8553, 0x904b, 0x9695,
- 0x96f2, 0x97fb, 0x851a, 0x9b31, 0x4e90, 0x718a, 0x96c4, 0x5143,
- 0x539f, 0x54e1, 0x5713, 0x5712, 0x57a3, 0x5a9b, 0x5ac4, 0x5bc3,
- 0x6028, 0x613f, 0x63f4, 0x6c85, 0x6d39, 0x6e72, 0x6e90, 0x7230,
- 0x733f, 0x7457, 0x82d1, 0x8881, 0x8f45, 0x9060, 0x0000, 0x9662,
- 0x9858, 0x9d1b, 0x6708, 0x8d8a, 0x925e, 0x4f4d, 0x5049, 0x50de,
- 0x5371, 0x570d, 0x59d4, 0x5a01, 0x5c09, 0x6170, 0x6690, 0x6e2d,
- 0x7232, 0x744b, 0x7def, 0x80c3, 0x840e, 0x8466, 0x853f, 0x875f,
- 0x885b, 0x8918, 0x8b02, 0x9055, 0x97cb, 0x9b4f, 0x4e73, 0x4f91,
- 0x5112, 0x516a, 0x0000, 0x552f, 0x55a9, 0x5b7a, 0x5ba5, 0x5e7c,
- 0x5e7d, 0x5ebe, 0x60a0, 0x60df, 0x6108, 0x6109, 0x63c4, 0x6538,
- 0x6709, 0x0000, 0x67d4, 0x67da, 0x0000, 0x6961, 0x6962, 0x6cb9,
- 0x6d27, 0x0000, 0x6e38, 0x0000, 0x6fe1, 0x7336, 0x7337, 0x0000,
- 0x745c, 0x7531, 0x0000, 0x7652, 0x0000, 0x0000, 0x7dad, 0x81fe,
- 0x8438, 0x88d5, 0x8a98, 0x8adb, 0x8aed, 0x8e30, 0x8e42, 0x904a,
- 0x903e, 0x907a, 0x9149, 0x91c9, 0x936e, 0x0000, 0x0000, 0x5809,
- 0x0000, 0x6bd3, 0x8089, 0x80b2, 0x0000, 0x0000, 0x5141, 0x596b,
- 0x5c39, 0x0000, 0x0000, 0x6f64, 0x73a7, 0x80e4, 0x8d07, 0x0000,
- 0x9217, 0x958f, 0x0000, 0x0000, 0x0000, 0x0000, 0x807f, 0x620e,
- 0x701c, 0x7d68, 0x878d, 0x0000, 0x57a0, 0x6069, 0x6147, 0x6bb7,
- 0x8abe, 0x9280, 0x96b1, 0x4e59, 0x541f, 0x6deb, 0x852d, 0x9670,
- 0x97f3, 0x98ee, 0x63d6, 0x6ce3, 0x9091, 0x51dd, 0x61c9, 0x81ba,
- 0x9df9, 0x4f9d, 0x501a, 0x5100, 0x5b9c, 0x610f, 0x61ff, 0x64ec,
- 0x6905, 0x6bc5, 0x7591, 0x77e3, 0x7fa9, 0x8264, 0x858f, 0x87fb,
- 0x8863, 0x8abc, 0x8b70, 0x91ab, 0x4e8c, 0x4ee5, 0x4f0a, 0x0000,
- 0x0000, 0x5937, 0x59e8, 0x0000, 0x5df2, 0x5f1b, 0x5f5b, 0x6021,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x723e, 0x73e5, 0x0000, 0x0000,
- 0x75cd, 0x0000, 0x79fb, 0x0000, 0x800c, 0x8033, 0x8084, 0x82e1,
- 0x8351, 0x0000, 0x0000, 0x8cbd, 0x8cb3, 0x9087, 0x0000, 0x0000,
- 0x98f4, 0x990c, 0x0000, 0x0000, 0x7037, 0x76ca, 0x7fca, 0x7fcc,
- 0x7ffc, 0x8b1a, 0x4eba, 0x4ec1, 0x5203, 0x5370, 0x0000, 0x0000,
- 0x56e0, 0x59fb, 0x5bc5, 0x5f15, 0x5fcd, 0x6e6e, 0x0000, 0x0000,
- 0x7d6a, 0x8335, 0x0000, 0x8693, 0x8a8d, 0x0000, 0x976d, 0x9777,
- 0x0000, 0x0000, 0x4e00, 0x4f5a, 0x4f7e, 0x58f9, 0x65e5, 0x6ea2,
- 0x9038, 0x93b0, 0x99b9, 0x4efb, 0x58ec, 0x598a, 0x59d9, 0x6041,
- 0x0000, 0x0000, 0x7a14, 0x0000, 0x834f, 0x8cc3, 0x5165, 0x5344,
- 0x0000, 0x0000, 0x0000, 0x4ecd, 0x5269, 0x5b55, 0x82bf, 0x4ed4,
- 0x523a, 0x54a8, 0x59c9, 0x59ff, 0x5b50, 0x5b57, 0x5b5c, 0x6063,
- 0x6148, 0x6ecb, 0x7099, 0x716e, 0x7386, 0x74f7, 0x75b5, 0x78c1,
- 0x7d2b, 0x8005, 0x81ea, 0x8328, 0x8517, 0x85c9, 0x8aee, 0x8cc7,
- 0x96cc, 0x4f5c, 0x52fa, 0x56bc, 0x65ab, 0x6628, 0x707c, 0x70b8,
- 0x7235, 0x7dbd, 0x828d, 0x914c, 0x96c0, 0x9d72, 0x5b71, 0x68e7,
- 0x6b98, 0x6f7a, 0x76de, 0x5c91, 0x66ab, 0x6f5b, 0x7bb4, 0x7c2a,
- 0x8836, 0x96dc, 0x4e08, 0x4ed7, 0x5320, 0x5834, 0x58bb, 0x58ef,
- 0x596c, 0x5c07, 0x5e33, 0x5e84, 0x5f35, 0x638c, 0x66b2, 0x6756,
- 0x6a1f, 0x6aa3, 0x6b0c, 0x6f3f, 0x7246, 0x0000, 0x7350, 0x748b,
- 0x7ae0, 0x7ca7, 0x8178, 0x81df, 0x81e7, 0x838a, 0x846c, 0x8523,
- 0x8594, 0x85cf, 0x88dd, 0x8d13, 0x91ac, 0x9577, 0x969c, 0x518d,
- 0x54c9, 0x5728, 0x5bb0, 0x624d, 0x6750, 0x683d, 0x6893, 0x6e3d,
- 0x6ed3, 0x707d, 0x7e21, 0x88c1, 0x8ca1, 0x8f09, 0x9f4b, 0x9f4e,
- 0x722d, 0x7b8f, 0x8acd, 0x931a, 0x4f47, 0x4f4e, 0x5132, 0x5480,
- 0x59d0, 0x5e95, 0x62b5, 0x6775, 0x696e, 0x6a17, 0x6cae, 0x6e1a,
- 0x72d9, 0x732a, 0x75bd, 0x7bb8, 0x7d35, 0x82e7, 0x83f9, 0x8457,
- 0x85f7, 0x8a5b, 0x8caf, 0x8e87, 0x9019, 0x90b8, 0x96ce, 0x9f5f,
- 0x52e3, 0x540a, 0x5ae1, 0x5bc2, 0x6458, 0x6575, 0x6ef4, 0x72c4,
- 0x0000, 0x7684, 0x7a4d, 0x7b1b, 0x7c4d, 0x7e3e, 0x7fdf, 0x837b,
- 0x8b2b, 0x8cca, 0x8d64, 0x8de1, 0x8e5f, 0x8fea, 0x8ff9, 0x9069,
- 0x93d1, 0x4f43, 0x4f7a, 0x50b3, 0x5168, 0x5178, 0x524d, 0x526a,
- 0x5861, 0x587c, 0x5960, 0x5c08, 0x5c55, 0x5edb, 0x609b, 0x6230,
- 0x6813, 0x6bbf, 0x6c08, 0x6fb1, 0x714e, 0x7420, 0x7530, 0x7538,
- 0x7551, 0x7672, 0x7b4c, 0x7b8b, 0x7bad, 0x7bc6, 0x7e8f, 0x8a6e,
- 0x8f3e, 0x8f49, 0x923f, 0x9293, 0x9322, 0x942b, 0x96fb, 0x985a,
- 0x986b, 0x991e, 0x5207, 0x622a, 0x6298, 0x6d59, 0x7664, 0x7aca,
- 0x7bc0, 0x7d76, 0x5360, 0x5cbe, 0x5e97, 0x6f38, 0x70b9, 0x7c98,
- 0x9711, 0x9b8e, 0x9ede, 0x63a5, 0x647a, 0x8776, 0x4e01, 0x4e95,
- 0x4ead, 0x505c, 0x5075, 0x5448, 0x59c3, 0x5b9a, 0x5e40, 0x5ead,
- 0x5ef7, 0x5f81, 0x60c5, 0x633a, 0x653f, 0x6574, 0x65cc, 0x6676,
- 0x6678, 0x67fe, 0x6968, 0x6a89, 0x6b63, 0x6c40, 0x6dc0, 0x6de8,
- 0x6e1f, 0x6e5e, 0x701e, 0x70a1, 0x738e, 0x73fd, 0x753a, 0x775b,
- 0x7887, 0x798e, 0x7a0b, 0x7a7d, 0x7cbe, 0x7d8e, 0x8247, 0x8a02,
- 0x8aea, 0x8c9e, 0x912d, 0x914a, 0x91d8, 0x9266, 0x92cc, 0x9320,
- 0x9706, 0x9756, 0x975c, 0x9802, 0x9f0e, 0x5236, 0x5291, 0x557c,
- 0x5824, 0x5e1d, 0x5f1f, 0x608c, 0x63d0, 0x68af, 0x6fdf, 0x796d,
- 0x7b2c, 0x81cd, 0x85ba, 0x88fd, 0x8af8, 0x8e44, 0x918d, 0x9664,
- 0x969b, 0x973d, 0x984c, 0x9f4a, 0x4fce, 0x5146, 0x51cb, 0x52a9,
- 0x5632, 0x5f14, 0x5f6b, 0x63aa, 0x64cd, 0x65e9, 0x6641, 0x66fa,
- 0x66f9, 0x671d, 0x689d, 0x68d7, 0x69fd, 0x6f15, 0x6f6e, 0x7167,
- 0x71e5, 0x722a, 0x74aa, 0x773a, 0x7956, 0x795a, 0x79df, 0x7a20,
- 0x7a95, 0x7c97, 0x7cdf, 0x7d44, 0x7e70, 0x8087, 0x85fb, 0x86a4,
- 0x8a54, 0x8abf, 0x8d99, 0x8e81, 0x9020, 0x906d, 0x91e3, 0x963b,
- 0x96d5, 0x9ce5, 0x65cf, 0x7c07, 0x8db3, 0x93c3, 0x5b58, 0x5c0a,
- 0x5352, 0x62d9, 0x731d, 0x5027, 0x5b97, 0x5f9e, 0x60b0, 0x616b,
- 0x68d5, 0x6dd9, 0x742e, 0x7a2e, 0x7d42, 0x7d9c, 0x7e31, 0x816b,
- 0x8e2a, 0x8e35, 0x937e, 0x9418, 0x4f50, 0x5750, 0x5de6, 0x5ea7,
- 0x632b, 0x7f6a, 0x4e3b, 0x4f4f, 0x4f8f, 0x505a, 0x59dd, 0x80c4,
- 0x546a, 0x5468, 0x55fe, 0x594f, 0x5b99, 0x5dde, 0x5eda, 0x665d,
- 0x6731, 0x67f1, 0x682a, 0x6ce8, 0x6d32, 0x6e4a, 0x6f8d, 0x70b7,
- 0x73e0, 0x7587, 0x7c4c, 0x7d02, 0x7d2c, 0x7da2, 0x821f, 0x86db,
- 0x8a3b, 0x8a85, 0x8d70, 0x8e8a, 0x8f33, 0x9031, 0x914e, 0x9152,
- 0x9444, 0x99d0, 0x7af9, 0x7ca5, 0x4fca, 0x5101, 0x51c6, 0x57c8,
- 0x5bef, 0x5cfb, 0x6659, 0x6a3d, 0x6d5a, 0x6e96, 0x6fec, 0x710c,
- 0x756f, 0x7ae3, 0x8822, 0x9021, 0x9075, 0x96cb, 0x99ff, 0x8301,
- 0x4e2d, 0x4ef2, 0x8846, 0x91cd, 0x537d, 0x6adb, 0x696b, 0x6c41,
- 0x847a, 0x589e, 0x618e, 0x66fe, 0x62ef, 0x70dd, 0x7511, 0x75c7,
- 0x7e52, 0x84b8, 0x8b49, 0x8d08, 0x4e4b, 0x53ea, 0x54ab, 0x5730,
- 0x5740, 0x5fd7, 0x6301, 0x6307, 0x646f, 0x652f, 0x65e8, 0x667a,
- 0x679d, 0x67b3, 0x6b62, 0x6c60, 0x6c9a, 0x6f2c, 0x77e5, 0x7825,
- 0x7949, 0x7957, 0x7d19, 0x80a2, 0x8102, 0x81f3, 0x829d, 0x82b7,
- 0x8718, 0x8a8c, 0x0000, 0x8d04, 0x8dbe, 0x9072, 0x76f4, 0x7a19,
- 0x7a37, 0x7e54, 0x8077, 0x5507, 0x55d4, 0x5875, 0x632f, 0x6422,
- 0x6649, 0x664b, 0x686d, 0x699b, 0x6b84, 0x6d25, 0x6eb1, 0x73cd,
- 0x7468, 0x74a1, 0x755b, 0x75b9, 0x76e1, 0x771e, 0x778b, 0x79e6,
- 0x7e09, 0x7e1d, 0x81fb, 0x852f, 0x8897, 0x8a3a, 0x8cd1, 0x8eeb,
- 0x0000, 0x9032, 0x93ad, 0x9663, 0x9673, 0x9707, 0x4f84, 0x53f1,
- 0x59ea, 0x5ac9, 0x5e19, 0x684e, 0x74c6, 0x75be, 0x79e9, 0x7a92,
- 0x81a3, 0x86ed, 0x8cea, 0x8dcc, 0x8fed, 0x659f, 0x6715, 0x0000,
- 0x57f7, 0x6f57, 0x7ddd, 0x8f2f, 0x93f6, 0x96c6, 0x5fb5, 0x61f2,
- 0x6f84, 0x4e14, 0x4f98, 0x501f, 0x53c9, 0x55df, 0x5d6f, 0x5dee,
- 0x6b21, 0x6b64, 0x78cb, 0x7b9a, 0x0000, 0x8e49, 0x8eca, 0x906e,
- 0x6349, 0x643e, 0x7740, 0x7a84, 0x932f, 0x947f, 0x9f6a, 0x64b0,
- 0x6faf, 0x71e6, 0x74a8, 0x74da, 0x7ac4, 0x7c12, 0x7e82, 0x7cb2,
- 0x7e98, 0x8b9a, 0x8d0a, 0x947d, 0x9910, 0x994c, 0x5239, 0x5bdf,
- 0x64e6, 0x672d, 0x7d2e, 0x50ed, 0x0000, 0x5879, 0x6158, 0x6159,
- 0x61fa, 0x65ac, 0x7ad9, 0x8b92, 0x8b96, 0x5009, 0x5021, 0x5275,
- 0x5531, 0x5a3c, 0x5ee0, 0x5f70, 0x6134, 0x655e, 0x660c, 0x6636,
- 0x66a2, 0x69cd, 0x6ec4, 0x6f32, 0x7316, 0x7621, 0x7a93, 0x8139,
- 0x8259, 0x83d6, 0x84bc, 0x50b5, 0x57f0, 0x5bc0, 0x5be8, 0x5f69,
- 0x63a1, 0x7826, 0x7db5, 0x83dc, 0x8521, 0x91c7, 0x91f5, 0x518a,
- 0x67f5, 0x7b56, 0x8cac, 0x51c4, 0x59bb, 0x60bd, 0x8655, 0x501c,
- 0x0000, 0x5254, 0x5c3a, 0x617d, 0x621a, 0x62d3, 0x64f2, 0x65a5,
- 0x6ecc, 0x7620, 0x810a, 0x8e60, 0x965f, 0x96bb, 0x4edf, 0x5343,
- 0x5598, 0x5929, 0x5ddd, 0x64c5, 0x6cc9, 0x6dfa, 0x7394, 0x7a7f,
- 0x821b, 0x85a6, 0x8ce4, 0x8e10, 0x9077, 0x91e7, 0x95e1, 0x9621,
- 0x97c6, 0x51f8, 0x54f2, 0x5586, 0x5fb9, 0x64a4, 0x6f88, 0x7db4,
- 0x8f1f, 0x8f4d, 0x9435, 0x50c9, 0x5c16, 0x6cbe, 0x6dfb, 0x751b,
- 0x77bb, 0x7c3d, 0x7c64, 0x8a79, 0x8ac2, 0x581e, 0x59be, 0x5e16,
- 0x6377, 0x7252, 0x758a, 0x776b, 0x8adc, 0x8cbc, 0x8f12, 0x5ef3,
- 0x6674, 0x6df8, 0x807d, 0x83c1, 0x8acb, 0x9751, 0x9bd6, 0x0000,
- 0x5243, 0x66ff, 0x6d95, 0x6eef, 0x7de0, 0x8ae6, 0x902e, 0x905e,
- 0x9ad4, 0x521d, 0x527f, 0x54e8, 0x6194, 0x6284, 0x62db, 0x68a2,
- 0x6912, 0x695a, 0x6a35, 0x7092, 0x7126, 0x785d, 0x7901, 0x790e,
- 0x79d2, 0x7a0d, 0x8096, 0x8278, 0x82d5, 0x8349, 0x8549, 0x8c82,
- 0x8d85, 0x9162, 0x918b, 0x91ae, 0x4fc3, 0x56d1, 0x71ed, 0x77d7,
- 0x8700, 0x89f8, 0x5bf8, 0x5fd6, 0x6751, 0x90a8, 0x53e2, 0x585a,
- 0x5bf5, 0x60a4, 0x6181, 0x6460, 0x7e3d, 0x8070, 0x8525, 0x9283,
- 0x64ae, 0x50ac, 0x5d14, 0x6700, 0x589c, 0x62bd, 0x63a8, 0x690e,
- 0x6978, 0x6a1e, 0x6e6b, 0x76ba, 0x79cb, 0x82bb, 0x8429, 0x8acf,
- 0x8da8, 0x8ffd, 0x9112, 0x914b, 0x919c, 0x9310, 0x9318, 0x939a,
- 0x96db, 0x9a36, 0x9c0d, 0x4e11, 0x755c, 0x795d, 0x7afa, 0x7b51,
- 0x7bc9, 0x7e2e, 0x84c4, 0x8e59, 0x8e74, 0x8ef8, 0x9010, 0x6625,
- 0x693f, 0x7443, 0x51fa, 0x672e, 0x9edc, 0x5145, 0x5fe0, 0x6c96,
- 0x87f2, 0x885d, 0x8877, 0x60b4, 0x81b5, 0x8403, 0x8d05, 0x53d6,
- 0x5439, 0x5634, 0x5a36, 0x5c31, 0x708a, 0x7fe0, 0x805a, 0x8106,
- 0x81ed, 0x8da3, 0x9189, 0x9a5f, 0x9df2, 0x5074, 0x4ec4, 0x53a0,
- 0x60fb, 0x6e2c, 0x5c64, 0x4f88, 0x5024, 0x55e4, 0x5cd9, 0x5e5f,
- 0x6065, 0x6894, 0x6cbb, 0x6dc4, 0x71be, 0x75d4, 0x75f4, 0x7661,
- 0x7a1a, 0x7a49, 0x7dc7, 0x7dfb, 0x7f6e, 0x81f4, 0x86a9, 0x8f1c,
- 0x96c9, 0x99b3, 0x9f52, 0x5247, 0x52c5, 0x98ed, 0x89aa, 0x4e03,
- 0x67d2, 0x6f06, 0x4fb5, 0x5be2, 0x6795, 0x0000, 0x6d78, 0x741b,
- 0x7827, 0x91dd, 0x937c, 0x87c4, 0x79e4, 0x7a31, 0x5feb, 0x4ed6,
- 0x54a4, 0x553e, 0x58ae, 0x59a5, 0x60f0, 0x6253, 0x62d6, 0x6736,
- 0x6955, 0x8235, 0x9640, 0x99b1, 0x99dd, 0x502c, 0x5353, 0x5544,
- 0x577c, 0x0000, 0x6258, 0x0000, 0x64e2, 0x666b, 0x67dd, 0x6fc1,
- 0x6fef, 0x7422, 0x7438, 0x8a17, 0x9438, 0x5451, 0x5606, 0x5766,
- 0x5f48, 0x619a, 0x6b4e, 0x7058, 0x70ad, 0x7dbb, 0x8a95, 0x596a,
- 0x812b, 0x63a2, 0x7708, 0x803d, 0x8caa, 0x5854, 0x642d, 0x69bb,
- 0x5b95, 0x5e11, 0x6e6f, 0x0000, 0x8569, 0x514c, 0x53f0, 0x592a,
- 0x6020, 0x614b, 0x6b86, 0x6c70, 0x6cf0, 0x7b1e, 0x80ce, 0x82d4,
- 0x8dc6, 0x90b0, 0x98b1, 0x0000, 0x64c7, 0x6fa4, 0x6491, 0x6504,
- 0x514e, 0x5410, 0x571f, 0x8a0e, 0x615f, 0x6876, 0x0000, 0x75db,
- 0x7b52, 0x7d71, 0x901a, 0x5806, 0x69cc, 0x817f, 0x892a, 0x9000,
- 0x9839, 0x5078, 0x5957, 0x59ac, 0x6295, 0x900f, 0x9b2a, 0x615d,
- 0x7279, 0x95d6, 0x5761, 0x5a46, 0x5df4, 0x628a, 0x64ad, 0x64fa,
- 0x6777, 0x6ce2, 0x6d3e, 0x722c, 0x7436, 0x7834, 0x7f77, 0x82ad,
- 0x8ddb, 0x9817, 0x5224, 0x5742, 0x677f, 0x7248, 0x74e3, 0x8ca9,
- 0x8fa6, 0x9211, 0x962a, 0x516b, 0x53ed, 0x634c, 0x4f69, 0x5504,
- 0x6096, 0x6557, 0x6c9b, 0x6d7f, 0x724c, 0x72fd, 0x7a17, 0x8987,
- 0x8c9d, 0x5f6d, 0x6f8e, 0x70f9, 0x81a8, 0x610e, 0x0000, 0x504f,
- 0x6241, 0x7247, 0x7bc7, 0x7de8, 0x7fe9, 0x904d, 0x97ad, 0x9a19,
- 0x8cb6, 0x576a, 0x5e73, 0x67b0, 0x840d, 0x8a55, 0x5420, 0x5b16,
- 0x5e63, 0x5ee2, 0x5f0a, 0x6583, 0x80ba, 0x853d, 0x9589, 0x965b,
- 0x4f48, 0x5305, 0x530d, 0x530f, 0x5486, 0x54fa, 0x5703, 0x5e03,
- 0x6016, 0x629b, 0x62b1, 0x6355, 0x66b4, 0x6ce1, 0x6d66, 0x75b1,
- 0x7832, 0x80de, 0x812f, 0x82de, 0x8461, 0x84b2, 0x888d, 0x8912,
- 0x900b, 0x92ea, 0x98fd, 0x9b91, 0x5e45, 0x0000, 0x66dd, 0x7011,
- 0x7206, 0x0000, 0x4ff5, 0x527d, 0x5f6a, 0x6153, 0x6753, 0x6a19,
- 0x6f02, 0x74e2, 0x7968, 0x8868, 0x8c79, 0x98c7, 0x98c4, 0x9a43,
- 0x54c1, 0x7a1f, 0x6953, 0x8af7, 0x8c4a, 0x98a8, 0x99ae, 0x5f7c,
- 0x62ab, 0x75b2, 0x76ae, 0x88ab, 0x907f, 0x9642, 0x5339, 0x5f3c,
- 0x5fc5, 0x0000, 0x73cc, 0x7562, 0x758b, 0x7b46, 0x82fe, 0x999d,
- 0x4e4f, 0x903c, 0x4e0b, 0x4f55, 0x53a6, 0x590f, 0x5ec8, 0x6630,
- 0x6cb3, 0x7455, 0x8377, 0x8766, 0x8cc0, 0x9050, 0x971e, 0x9c15,
- 0x58d1, 0x5b78, 0x8650, 0x8b14, 0x9db4, 0x5bd2, 0x6068, 0x608d,
- 0x65f1, 0x6c57, 0x6f22, 0x6fa3, 0x701a, 0x7f55, 0x7ff0, 0x9591,
- 0x9592, 0x9650, 0x97d3, 0x5272, 0x8f44, 0x51fd, 0x542b, 0x54b8,
- 0x5563, 0x558a, 0x6abb, 0x6db5, 0x7dd8, 0x8266, 0x929c, 0x9677,
- 0x9e79, 0x5408, 0x54c8, 0x76d2, 0x86e4, 0x95a4, 0x95d4, 0x965c,
- 0x4ea2, 0x4f09, 0x59ee, 0x5ae6, 0x5df7, 0x6052, 0x6297, 0x676d,
- 0x6841, 0x6c86, 0x6e2f, 0x7f38, 0x809b, 0x822a, 0x884c, 0x964d,
- 0x9805, 0x4ea5, 0x5055, 0x54b3, 0x5793, 0x595a, 0x5b69, 0x5bb3,
- 0x61c8, 0x6977, 0x6d77, 0x7023, 0x87f9, 0x89e3, 0x8a72, 0x8ae7,
- 0x9082, 0x99ed, 0x9ab8, 0x52be, 0x6838, 0x5016, 0x5e78, 0x674f,
- 0x8347, 0x0000, 0x4eab, 0x5411, 0x56ae, 0x73e6, 0x9115, 0x97ff,
- 0x9909, 0x9957, 0x9999, 0x5653, 0x589f, 0x865b, 0x8a31, 0x61b2,
- 0x6af6, 0x737b, 0x8ed2, 0x6b47, 0x96aa, 0x9a57, 0x5955, 0x7200,
- 0x8d6b, 0x9769, 0x4fd4, 0x5cf4, 0x5f26, 0x61f8, 0x665b, 0x6ceb,
- 0x70ab, 0x7384, 0x73b9, 0x73fe, 0x7729, 0x774d, 0x7d43, 0x7d62,
- 0x7e23, 0x8237, 0x8852, 0x898b, 0x8ce2, 0x9249, 0x986f, 0x5b51,
- 0x7a74, 0x8840, 0x9801, 0x5acc, 0x4fe0, 0x5354, 0x593e, 0x5cfd,
- 0x633e, 0x6d79, 0x72f9, 0x8105, 0x8107, 0x83a2, 0x92cf, 0x9830,
- 0x4ea8, 0x5144, 0x5211, 0x578b, 0x5f62, 0x6cc2, 0x6ece, 0x7005,
- 0x7050, 0x70af, 0x7192, 0x73e9, 0x0000, 0x834a, 0x87a2, 0x8861,
- 0x9008, 0x90a2, 0x93a3, 0x99a8, 0x516e, 0x5f57, 0x60e0, 0x6167,
- 0x66b3, 0x8559, 0x8e4a, 0x91af, 0x978b, 0x4e4e, 0x4e92, 0x547c,
- 0x58d5, 0x58fa, 0x597d, 0x5cb5, 0x5f27, 0x6236, 0x6248, 0x660a,
- 0x6667, 0x6beb, 0x6d69, 0x6dcf, 0x6e56, 0x6ef8, 0x6f94, 0x6fe0,
- 0x6fe9, 0x705d, 0x72d0, 0x7425, 0x745a, 0x74e0, 0x7693, 0x795c,
- 0x7cca, 0x7e1e, 0x80e1, 0x82a6, 0x846b, 0x84bf, 0x864e, 0x865f,
- 0x8774, 0x8b77, 0x8c6a, 0x93ac, 0x9800, 0x9865, 0x60d1, 0x6216,
- 0x9177, 0x5a5a, 0x660f, 0x6df7, 0x6e3e, 0x743f, 0x9b42, 0x5ffd,
- 0x60da, 0x7b0f, 0x54c4, 0x5f18, 0x6c5e, 0x6cd3, 0x6d2a, 0x70d8,
- 0x7d05, 0x8679, 0x8a0c, 0x9d3b, 0x5316, 0x548c, 0x5b05, 0x6a3a,
- 0x706b, 0x7575, 0x798d, 0x79be, 0x82b1, 0x83ef, 0x8a71, 0x8b41,
- 0x8ca8, 0x9774, 0x0000, 0x64f4, 0x652b, 0x78ba, 0x78bb, 0x7a6b,
- 0x4e38, 0x559a, 0x5950, 0x5ba6, 0x5e7b, 0x60a3, 0x63db, 0x6b61,
- 0x6665, 0x6853, 0x6e19, 0x7165, 0x74b0, 0x7d08, 0x9084, 0x9a69,
- 0x9c25, 0x6d3b, 0x6ed1, 0x733e, 0x8c41, 0x95ca, 0x51f0, 0x5e4c,
- 0x5fa8, 0x604d, 0x60f6, 0x6130, 0x614c, 0x6643, 0x6644, 0x69a5,
- 0x6cc1, 0x6e5f, 0x6ec9, 0x6f62, 0x714c, 0x749c, 0x7687, 0x7bc1,
- 0x7c27, 0x8352, 0x8757, 0x9051, 0x968d, 0x9ec3, 0x532f, 0x56de,
- 0x5efb, 0x5f8a, 0x6062, 0x6094, 0x61f7, 0x6666, 0x6703, 0x6a9c,
- 0x6dee, 0x6fae, 0x7070, 0x736a, 0x7e6a, 0x81be, 0x8334, 0x86d4,
- 0x8aa8, 0x8cc4, 0x5283, 0x7372, 0x5b96, 0x6a6b, 0x9404, 0x54ee,
- 0x5686, 0x5b5d, 0x6548, 0x6585, 0x66c9, 0x689f, 0x6d8d, 0x6dc6,
- 0x723b, 0x80b4, 0x9175, 0x9a4d, 0x4faf, 0x5019, 0x539a, 0x540e,
- 0x543c, 0x5589, 0x55c5, 0x5e3f, 0x5f8c, 0x673d, 0x7166, 0x73dd,
- 0x9005, 0x52db, 0x52f3, 0x5864, 0x58ce, 0x7104, 0x718f, 0x71fb,
- 0x85b0, 0x8a13, 0x0000, 0x85a8, 0x55a7, 0x6684, 0x714a, 0x8431,
- 0x5349, 0x5599, 0x6bc1, 0x5f59, 0x5fbd, 0x63ee, 0x6689, 0x7147,
- 0x8af1, 0x8f1d, 0x9ebe, 0x4f11, 0x643a, 0x70cb, 0x7566, 0x8667,
- 0x6064, 0x8b4e, 0x9df8, 0x5147, 0x51f6, 0x5308, 0x6d36, 0x80f8,
- 0x9ed1, 0x6615, 0x6b23, 0x7098, 0x75d5, 0x5403, 0x5c79, 0x7d07,
- 0x8a16, 0x6b20, 0x6b3d, 0x6b46, 0x5438, 0x6070, 0x6d3d, 0x7fd5,
- 0x8208, 0x50d6, 0x51de, 0x559c, 0x566b, 0x56cd, 0x59ec, 0x5b09,
- 0x5e0c, 0x6199, 0x6198, 0x6231, 0x665e, 0x66e6, 0x7199, 0x71b9,
- 0x71ba, 0x72a7, 0x79a7, 0x7a00, 0x7fb2, 0x8a70, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffffffff,
- 0xffffffff, 0xffffffff, 0x0000, 0x0000, 0x79d4, 0x0004, 0x2288, 0x804f240
-};
-
-
-const unichar_t unicode_from_johab[] = {
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x3131, 0x3132, 0x3133, 0x3134, 0x3135, 0x3136,
- 0x3137, 0x3139, 0x313a, 0x313b, 0x313c, 0x313d, 0x313e, 0x313f,
- 0x3140, 0x3141, 0x0000, 0x3142, 0x3144, 0x3145, 0x3146, 0x3147,
- 0x3148, 0x314a, 0x314b, 0x314c, 0x314d, 0x314e, 0x0000, 0x0000,
- 0x0000, 0x314f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3150, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3151, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3152, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3153, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3154, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3155, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3156, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3157, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3158, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3159, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x315a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x315b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x315c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x315d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x315e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x315f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3160, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3161, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3162, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3163, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xac00, 0xac01, 0xac02, 0xac03, 0xac04, 0xac05, 0xac06,
- 0xac07, 0xac08, 0xac09, 0xac0a, 0xac0b, 0xac0c, 0xac0d, 0xac0e,
- 0xac0f, 0xac10, 0x0000, 0xac11, 0xac12, 0xac13, 0xac14, 0xac15,
- 0xac16, 0xac17, 0xac18, 0xac19, 0xac1a, 0xac1b, 0x0000, 0x0000,
- 0x0000, 0xac1c, 0xac1d, 0xac1e, 0xac1f, 0xac20, 0xac21, 0xac22,
- 0xac23, 0xac24, 0xac25, 0xac26, 0xac27, 0xac28, 0xac29, 0xac2a,
- 0xac2b, 0xac2c, 0x0000, 0xac2d, 0xac2e, 0xac2f, 0xac30, 0xac31,
- 0xac32, 0xac33, 0xac34, 0xac35, 0xac36, 0xac37, 0x0000, 0x0000,
- 0x0000, 0xac38, 0xac39, 0xac3a, 0xac3b, 0xac3c, 0xac3d, 0xac3e,
- 0xac3f, 0xac40, 0xac41, 0xac42, 0xac43, 0xac44, 0xac45, 0xac46,
- 0xac47, 0xac48, 0x0000, 0xac49, 0xac4a, 0xac4b, 0xac4c, 0xac4d,
- 0xac4e, 0xac4f, 0xac50, 0xac51, 0xac52, 0xac53, 0x0000, 0x0000,
- 0x0000, 0xac54, 0xac55, 0xac56, 0xac57, 0xac58, 0xac59, 0xac5a,
- 0xac5b, 0xac5c, 0xac5d, 0xac5e, 0xac5f, 0xac60, 0xac61, 0xac62,
- 0xac63, 0xac64, 0x0000, 0xac65, 0xac66, 0xac67, 0xac68, 0xac69,
- 0xac6a, 0xac6b, 0xac6c, 0xac6d, 0xac6e, 0xac6f, 0x0000, 0x0000,
- 0x0000, 0xac70, 0xac71, 0xac72, 0xac73, 0xac74, 0xac75, 0xac76,
- 0xac77, 0xac78, 0xac79, 0xac7a, 0xac7b, 0xac7c, 0xac7d, 0xac7e,
- 0xac7f, 0xac80, 0x0000, 0xac81, 0xac82, 0xac83, 0xac84, 0xac85,
- 0xac86, 0xac87, 0xac88, 0xac89, 0xac8a, 0xac8b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xac8c, 0xac8d, 0xac8e, 0xac8f, 0xac90, 0xac91, 0xac92,
- 0xac93, 0xac94, 0xac95, 0xac96, 0xac97, 0xac98, 0xac99, 0xac9a,
- 0xac9b, 0xac9c, 0x0000, 0xac9d, 0xac9e, 0xac9f, 0xaca0, 0xaca1,
- 0xaca2, 0xaca3, 0xaca4, 0xaca5, 0xaca6, 0xaca7, 0x0000, 0x0000,
- 0x0000, 0xaca8, 0xaca9, 0xacaa, 0xacab, 0xacac, 0xacad, 0xacae,
- 0xacaf, 0xacb0, 0xacb1, 0xacb2, 0xacb3, 0xacb4, 0xacb5, 0xacb6,
- 0xacb7, 0xacb8, 0x0000, 0xacb9, 0xacba, 0xacbb, 0xacbc, 0xacbd,
- 0xacbe, 0xacbf, 0xacc0, 0xacc1, 0xacc2, 0xacc3, 0x0000, 0x0000,
- 0x0000, 0xacc4, 0xacc5, 0xacc6, 0xacc7, 0xacc8, 0xacc9, 0xacca,
- 0xaccb, 0xaccc, 0xaccd, 0xacce, 0xaccf, 0xacd0, 0xacd1, 0xacd2,
- 0xacd3, 0xacd4, 0x0000, 0xacd5, 0xacd6, 0xacd7, 0xacd8, 0xacd9,
- 0xacda, 0xacdb, 0xacdc, 0xacdd, 0xacde, 0xacdf, 0x0000, 0x0000,
- 0x0000, 0xace0, 0xace1, 0xace2, 0xace3, 0xace4, 0xace5, 0xace6,
- 0xace7, 0xace8, 0xace9, 0xacea, 0xaceb, 0xacec, 0xaced, 0xacee,
- 0xacef, 0xacf0, 0x0000, 0xacf1, 0xacf2, 0xacf3, 0xacf4, 0xacf5,
- 0xacf6, 0xacf7, 0xacf8, 0xacf9, 0xacfa, 0xacfb, 0x0000, 0x0000,
- 0x0000, 0xacfc, 0xacfd, 0xacfe, 0xacff, 0xad00, 0xad01, 0xad02,
- 0xad03, 0xad04, 0xad05, 0xad06, 0xad07, 0xad08, 0xad09, 0xad0a,
- 0xad0b, 0xad0c, 0x0000, 0xad0d, 0xad0e, 0xad0f, 0xad10, 0xad11,
- 0xad12, 0xad13, 0xad14, 0xad15, 0xad16, 0xad17, 0x0000, 0x0000,
- 0x0000, 0xad18, 0xad19, 0xad1a, 0xad1b, 0xad1c, 0xad1d, 0xad1e,
- 0xad1f, 0xad20, 0xad21, 0xad22, 0xad23, 0xad24, 0xad25, 0xad26,
- 0xad27, 0xad28, 0x0000, 0xad29, 0xad2a, 0xad2b, 0xad2c, 0xad2d,
- 0xad2e, 0xad2f, 0xad30, 0xad31, 0xad32, 0xad33, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xad34, 0xad35, 0xad36, 0xad37, 0xad38, 0xad39, 0xad3a,
- 0xad3b, 0xad3c, 0xad3d, 0xad3e, 0xad3f, 0xad40, 0xad41, 0xad42,
- 0xad43, 0xad44, 0x0000, 0xad45, 0xad46, 0xad47, 0xad48, 0xad49,
- 0xad4a, 0xad4b, 0xad4c, 0xad4d, 0xad4e, 0xad4f, 0x0000, 0x0000,
- 0x0000, 0xad50, 0xad51, 0xad52, 0xad53, 0xad54, 0xad55, 0xad56,
- 0xad57, 0xad58, 0xad59, 0xad5a, 0xad5b, 0xad5c, 0xad5d, 0xad5e,
- 0xad5f, 0xad60, 0x0000, 0xad61, 0xad62, 0xad63, 0xad64, 0xad65,
- 0xad66, 0xad67, 0xad68, 0xad69, 0xad6a, 0xad6b, 0x0000, 0x0000,
- 0x0000, 0xad6c, 0xad6d, 0xad6e, 0xad6f, 0xad70, 0xad71, 0xad72,
- 0xad73, 0xad74, 0xad75, 0xad76, 0xad77, 0xad78, 0xad79, 0xad7a,
- 0xad7b, 0xad7c, 0x0000, 0xad7d, 0xad7e, 0xad7f, 0xad80, 0xad81,
- 0xad82, 0xad83, 0xad84, 0xad85, 0xad86, 0xad87, 0x0000, 0x0000,
- 0x0000, 0xad88, 0xad89, 0xad8a, 0xad8b, 0xad8c, 0xad8d, 0xad8e,
- 0xad8f, 0xad90, 0xad91, 0xad92, 0xad93, 0xad94, 0xad95, 0xad96,
- 0xad97, 0xad98, 0x0000, 0xad99, 0xad9a, 0xad9b, 0xad9c, 0xad9d,
- 0xad9e, 0xad9f, 0xada0, 0xada1, 0xada2, 0xada3, 0x0000, 0x0000,
- 0x0000, 0xada4, 0xada5, 0xada6, 0xada7, 0xada8, 0xada9, 0xadaa,
- 0xadab, 0xadac, 0xadad, 0xadae, 0xadaf, 0xadb0, 0xadb1, 0xadb2,
- 0xadb3, 0xadb4, 0x0000, 0xadb5, 0xadb6, 0xadb7, 0xadb8, 0xadb9,
- 0xadba, 0xadbb, 0xadbc, 0xadbd, 0xadbe, 0xadbf, 0x0000, 0x0000,
- 0x0000, 0xadc0, 0xadc1, 0xadc2, 0xadc3, 0xadc4, 0xadc5, 0xadc6,
- 0xadc7, 0xadc8, 0xadc9, 0xadca, 0xadcb, 0xadcc, 0xadcd, 0xadce,
- 0xadcf, 0xadd0, 0x0000, 0xadd1, 0xadd2, 0xadd3, 0xadd4, 0xadd5,
- 0xadd6, 0xadd7, 0xadd8, 0xadd9, 0xadda, 0xaddb, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xaddc, 0xaddd, 0xadde, 0xaddf, 0xade0, 0xade1, 0xade2,
- 0xade3, 0xade4, 0xade5, 0xade6, 0xade7, 0xade8, 0xade9, 0xadea,
- 0xadeb, 0xadec, 0x0000, 0xaded, 0xadee, 0xadef, 0xadf0, 0xadf1,
- 0xadf2, 0xadf3, 0xadf4, 0xadf5, 0xadf6, 0xadf7, 0x0000, 0x0000,
- 0x0000, 0xadf8, 0xadf9, 0xadfa, 0xadfb, 0xadfc, 0xadfd, 0xadfe,
- 0xadff, 0xae00, 0xae01, 0xae02, 0xae03, 0xae04, 0xae05, 0xae06,
- 0xae07, 0xae08, 0x0000, 0xae09, 0xae0a, 0xae0b, 0xae0c, 0xae0d,
- 0xae0e, 0xae0f, 0xae10, 0xae11, 0xae12, 0xae13, 0x0000, 0x0000,
- 0x0000, 0xae14, 0xae15, 0xae16, 0xae17, 0xae18, 0xae19, 0xae1a,
- 0xae1b, 0xae1c, 0xae1d, 0xae1e, 0xae1f, 0xae20, 0xae21, 0xae22,
- 0xae23, 0xae24, 0x0000, 0xae25, 0xae26, 0xae27, 0xae28, 0xae29,
- 0xae2a, 0xae2b, 0xae2c, 0xae2d, 0xae2e, 0xae2f, 0x0000, 0x0000,
- 0x0000, 0xae30, 0xae31, 0xae32, 0xae33, 0xae34, 0xae35, 0xae36,
- 0xae37, 0xae38, 0xae39, 0xae3a, 0xae3b, 0xae3c, 0xae3d, 0xae3e,
- 0xae3f, 0xae40, 0x0000, 0xae41, 0xae42, 0xae43, 0xae44, 0xae45,
- 0xae46, 0xae47, 0xae48, 0xae49, 0xae4a, 0xae4b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xae4c, 0xae4d, 0xae4e, 0xae4f, 0xae50, 0xae51, 0xae52,
- 0xae53, 0xae54, 0xae55, 0xae56, 0xae57, 0xae58, 0xae59, 0xae5a,
- 0xae5b, 0xae5c, 0x0000, 0xae5d, 0xae5e, 0xae5f, 0xae60, 0xae61,
- 0xae62, 0xae63, 0xae64, 0xae65, 0xae66, 0xae67, 0x0000, 0x0000,
- 0x0000, 0xae68, 0xae69, 0xae6a, 0xae6b, 0xae6c, 0xae6d, 0xae6e,
- 0xae6f, 0xae70, 0xae71, 0xae72, 0xae73, 0xae74, 0xae75, 0xae76,
- 0xae77, 0xae78, 0x0000, 0xae79, 0xae7a, 0xae7b, 0xae7c, 0xae7d,
- 0xae7e, 0xae7f, 0xae80, 0xae81, 0xae82, 0xae83, 0x0000, 0x0000,
- 0x0000, 0xae84, 0xae85, 0xae86, 0xae87, 0xae88, 0xae89, 0xae8a,
- 0xae8b, 0xae8c, 0xae8d, 0xae8e, 0xae8f, 0xae90, 0xae91, 0xae92,
- 0xae93, 0xae94, 0x0000, 0xae95, 0xae96, 0xae97, 0xae98, 0xae99,
- 0xae9a, 0xae9b, 0xae9c, 0xae9d, 0xae9e, 0xae9f, 0x0000, 0x0000,
- 0x0000, 0xaea0, 0xaea1, 0xaea2, 0xaea3, 0xaea4, 0xaea5, 0xaea6,
- 0xaea7, 0xaea8, 0xaea9, 0xaeaa, 0xaeab, 0xaeac, 0xaead, 0xaeae,
- 0xaeaf, 0xaeb0, 0x0000, 0xaeb1, 0xaeb2, 0xaeb3, 0xaeb4, 0xaeb5,
- 0xaeb6, 0xaeb7, 0xaeb8, 0xaeb9, 0xaeba, 0xaebb, 0x0000, 0x0000,
- 0x0000, 0xaebc, 0xaebd, 0xaebe, 0xaebf, 0xaec0, 0xaec1, 0xaec2,
- 0xaec3, 0xaec4, 0xaec5, 0xaec6, 0xaec7, 0xaec8, 0xaec9, 0xaeca,
- 0xaecb, 0xaecc, 0x0000, 0xaecd, 0xaece, 0xaecf, 0xaed0, 0xaed1,
- 0xaed2, 0xaed3, 0xaed4, 0xaed5, 0xaed6, 0xaed7, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xaed8, 0xaed9, 0xaeda, 0xaedb, 0xaedc, 0xaedd, 0xaede,
- 0xaedf, 0xaee0, 0xaee1, 0xaee2, 0xaee3, 0xaee4, 0xaee5, 0xaee6,
- 0xaee7, 0xaee8, 0x0000, 0xaee9, 0xaeea, 0xaeeb, 0xaeec, 0xaeed,
- 0xaeee, 0xaeef, 0xaef0, 0xaef1, 0xaef2, 0xaef3, 0x0000, 0x0000,
- 0x0000, 0xaef4, 0xaef5, 0xaef6, 0xaef7, 0xaef8, 0xaef9, 0xaefa,
- 0xaefb, 0xaefc, 0xaefd, 0xaefe, 0xaeff, 0xaf00, 0xaf01, 0xaf02,
- 0xaf03, 0xaf04, 0x0000, 0xaf05, 0xaf06, 0xaf07, 0xaf08, 0xaf09,
- 0xaf0a, 0xaf0b, 0xaf0c, 0xaf0d, 0xaf0e, 0xaf0f, 0x0000, 0x0000,
- 0x0000, 0xaf10, 0xaf11, 0xaf12, 0xaf13, 0xaf14, 0xaf15, 0xaf16,
- 0xaf17, 0xaf18, 0xaf19, 0xaf1a, 0xaf1b, 0xaf1c, 0xaf1d, 0xaf1e,
- 0xaf1f, 0xaf20, 0x0000, 0xaf21, 0xaf22, 0xaf23, 0xaf24, 0xaf25,
- 0xaf26, 0xaf27, 0xaf28, 0xaf29, 0xaf2a, 0xaf2b, 0x0000, 0x0000,
- 0x0000, 0xaf2c, 0xaf2d, 0xaf2e, 0xaf2f, 0xaf30, 0xaf31, 0xaf32,
- 0xaf33, 0xaf34, 0xaf35, 0xaf36, 0xaf37, 0xaf38, 0xaf39, 0xaf3a,
- 0xaf3b, 0xaf3c, 0x0000, 0xaf3d, 0xaf3e, 0xaf3f, 0xaf40, 0xaf41,
- 0xaf42, 0xaf43, 0xaf44, 0xaf45, 0xaf46, 0xaf47, 0x0000, 0x0000,
- 0x0000, 0xaf48, 0xaf49, 0xaf4a, 0xaf4b, 0xaf4c, 0xaf4d, 0xaf4e,
- 0xaf4f, 0xaf50, 0xaf51, 0xaf52, 0xaf53, 0xaf54, 0xaf55, 0xaf56,
- 0xaf57, 0xaf58, 0x0000, 0xaf59, 0xaf5a, 0xaf5b, 0xaf5c, 0xaf5d,
- 0xaf5e, 0xaf5f, 0xaf60, 0xaf61, 0xaf62, 0xaf63, 0x0000, 0x0000,
- 0x0000, 0xaf64, 0xaf65, 0xaf66, 0xaf67, 0xaf68, 0xaf69, 0xaf6a,
- 0xaf6b, 0xaf6c, 0xaf6d, 0xaf6e, 0xaf6f, 0xaf70, 0xaf71, 0xaf72,
- 0xaf73, 0xaf74, 0x0000, 0xaf75, 0xaf76, 0xaf77, 0xaf78, 0xaf79,
- 0xaf7a, 0xaf7b, 0xaf7c, 0xaf7d, 0xaf7e, 0xaf7f, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xaf80, 0xaf81, 0xaf82, 0xaf83, 0xaf84, 0xaf85, 0xaf86,
- 0xaf87, 0xaf88, 0xaf89, 0xaf8a, 0xaf8b, 0xaf8c, 0xaf8d, 0xaf8e,
- 0xaf8f, 0xaf90, 0x0000, 0xaf91, 0xaf92, 0xaf93, 0xaf94, 0xaf95,
- 0xaf96, 0xaf97, 0xaf98, 0xaf99, 0xaf9a, 0xaf9b, 0x0000, 0x0000,
- 0x0000, 0xaf9c, 0xaf9d, 0xaf9e, 0xaf9f, 0xafa0, 0xafa1, 0xafa2,
- 0xafa3, 0xafa4, 0xafa5, 0xafa6, 0xafa7, 0xafa8, 0xafa9, 0xafaa,
- 0xafab, 0xafac, 0x0000, 0xafad, 0xafae, 0xafaf, 0xafb0, 0xafb1,
- 0xafb2, 0xafb3, 0xafb4, 0xafb5, 0xafb6, 0xafb7, 0x0000, 0x0000,
- 0x0000, 0xafb8, 0xafb9, 0xafba, 0xafbb, 0xafbc, 0xafbd, 0xafbe,
- 0xafbf, 0xafc0, 0xafc1, 0xafc2, 0xafc3, 0xafc4, 0xafc5, 0xafc6,
- 0xafc7, 0xafc8, 0x0000, 0xafc9, 0xafca, 0xafcb, 0xafcc, 0xafcd,
- 0xafce, 0xafcf, 0xafd0, 0xafd1, 0xafd2, 0xafd3, 0x0000, 0x0000,
- 0x0000, 0xafd4, 0xafd5, 0xafd6, 0xafd7, 0xafd8, 0xafd9, 0xafda,
- 0xafdb, 0xafdc, 0xafdd, 0xafde, 0xafdf, 0xafe0, 0xafe1, 0xafe2,
- 0xafe3, 0xafe4, 0x0000, 0xafe5, 0xafe6, 0xafe7, 0xafe8, 0xafe9,
- 0xafea, 0xafeb, 0xafec, 0xafed, 0xafee, 0xafef, 0x0000, 0x0000,
- 0x0000, 0xaff0, 0xaff1, 0xaff2, 0xaff3, 0xaff4, 0xaff5, 0xaff6,
- 0xaff7, 0xaff8, 0xaff9, 0xaffa, 0xaffb, 0xaffc, 0xaffd, 0xaffe,
- 0xafff, 0xb000, 0x0000, 0xb001, 0xb002, 0xb003, 0xb004, 0xb005,
- 0xb006, 0xb007, 0xb008, 0xb009, 0xb00a, 0xb00b, 0x0000, 0x0000,
- 0x0000, 0xb00c, 0xb00d, 0xb00e, 0xb00f, 0xb010, 0xb011, 0xb012,
- 0xb013, 0xb014, 0xb015, 0xb016, 0xb017, 0xb018, 0xb019, 0xb01a,
- 0xb01b, 0xb01c, 0x0000, 0xb01d, 0xb01e, 0xb01f, 0xb020, 0xb021,
- 0xb022, 0xb023, 0xb024, 0xb025, 0xb026, 0xb027, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb028, 0xb029, 0xb02a, 0xb02b, 0xb02c, 0xb02d, 0xb02e,
- 0xb02f, 0xb030, 0xb031, 0xb032, 0xb033, 0xb034, 0xb035, 0xb036,
- 0xb037, 0xb038, 0x0000, 0xb039, 0xb03a, 0xb03b, 0xb03c, 0xb03d,
- 0xb03e, 0xb03f, 0xb040, 0xb041, 0xb042, 0xb043, 0x0000, 0x0000,
- 0x0000, 0xb044, 0xb045, 0xb046, 0xb047, 0xb048, 0xb049, 0xb04a,
- 0xb04b, 0xb04c, 0xb04d, 0xb04e, 0xb04f, 0xb050, 0xb051, 0xb052,
- 0xb053, 0xb054, 0x0000, 0xb055, 0xb056, 0xb057, 0xb058, 0xb059,
- 0xb05a, 0xb05b, 0xb05c, 0xb05d, 0xb05e, 0xb05f, 0x0000, 0x0000,
- 0x0000, 0xb060, 0xb061, 0xb062, 0xb063, 0xb064, 0xb065, 0xb066,
- 0xb067, 0xb068, 0xb069, 0xb06a, 0xb06b, 0xb06c, 0xb06d, 0xb06e,
- 0xb06f, 0xb070, 0x0000, 0xb071, 0xb072, 0xb073, 0xb074, 0xb075,
- 0xb076, 0xb077, 0xb078, 0xb079, 0xb07a, 0xb07b, 0x0000, 0x0000,
- 0x0000, 0xb07c, 0xb07d, 0xb07e, 0xb07f, 0xb080, 0xb081, 0xb082,
- 0xb083, 0xb084, 0xb085, 0xb086, 0xb087, 0xb088, 0xb089, 0xb08a,
- 0xb08b, 0xb08c, 0x0000, 0xb08d, 0xb08e, 0xb08f, 0xb090, 0xb091,
- 0xb092, 0xb093, 0xb094, 0xb095, 0xb096, 0xb097, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb098, 0xb099, 0xb09a, 0xb09b, 0xb09c, 0xb09d, 0xb09e,
- 0xb09f, 0xb0a0, 0xb0a1, 0xb0a2, 0xb0a3, 0xb0a4, 0xb0a5, 0xb0a6,
- 0xb0a7, 0xb0a8, 0x0000, 0xb0a9, 0xb0aa, 0xb0ab, 0xb0ac, 0xb0ad,
- 0xb0ae, 0xb0af, 0xb0b0, 0xb0b1, 0xb0b2, 0xb0b3, 0x0000, 0x0000,
- 0x0000, 0xb0b4, 0xb0b5, 0xb0b6, 0xb0b7, 0xb0b8, 0xb0b9, 0xb0ba,
- 0xb0bb, 0xb0bc, 0xb0bd, 0xb0be, 0xb0bf, 0xb0c0, 0xb0c1, 0xb0c2,
- 0xb0c3, 0xb0c4, 0x0000, 0xb0c5, 0xb0c6, 0xb0c7, 0xb0c8, 0xb0c9,
- 0xb0ca, 0xb0cb, 0xb0cc, 0xb0cd, 0xb0ce, 0xb0cf, 0x0000, 0x0000,
- 0x0000, 0xb0d0, 0xb0d1, 0xb0d2, 0xb0d3, 0xb0d4, 0xb0d5, 0xb0d6,
- 0xb0d7, 0xb0d8, 0xb0d9, 0xb0da, 0xb0db, 0xb0dc, 0xb0dd, 0xb0de,
- 0xb0df, 0xb0e0, 0x0000, 0xb0e1, 0xb0e2, 0xb0e3, 0xb0e4, 0xb0e5,
- 0xb0e6, 0xb0e7, 0xb0e8, 0xb0e9, 0xb0ea, 0xb0eb, 0x0000, 0x0000,
- 0x0000, 0xb0ec, 0xb0ed, 0xb0ee, 0xb0ef, 0xb0f0, 0xb0f1, 0xb0f2,
- 0xb0f3, 0xb0f4, 0xb0f5, 0xb0f6, 0xb0f7, 0xb0f8, 0xb0f9, 0xb0fa,
- 0xb0fb, 0xb0fc, 0x0000, 0xb0fd, 0xb0fe, 0xb0ff, 0xb100, 0xb101,
- 0xb102, 0xb103, 0xb104, 0xb105, 0xb106, 0xb107, 0x0000, 0x0000,
- 0x0000, 0xb108, 0xb109, 0xb10a, 0xb10b, 0xb10c, 0xb10d, 0xb10e,
- 0xb10f, 0xb110, 0xb111, 0xb112, 0xb113, 0xb114, 0xb115, 0xb116,
- 0xb117, 0xb118, 0x0000, 0xb119, 0xb11a, 0xb11b, 0xb11c, 0xb11d,
- 0xb11e, 0xb11f, 0xb120, 0xb121, 0xb122, 0xb123, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb124, 0xb125, 0xb126, 0xb127, 0xb128, 0xb129, 0xb12a,
- 0xb12b, 0xb12c, 0xb12d, 0xb12e, 0xb12f, 0xb130, 0xb131, 0xb132,
- 0xb133, 0xb134, 0x0000, 0xb135, 0xb136, 0xb137, 0xb138, 0xb139,
- 0xb13a, 0xb13b, 0xb13c, 0xb13d, 0xb13e, 0xb13f, 0x0000, 0x0000,
- 0x0000, 0xb140, 0xb141, 0xb142, 0xb143, 0xb144, 0xb145, 0xb146,
- 0xb147, 0xb148, 0xb149, 0xb14a, 0xb14b, 0xb14c, 0xb14d, 0xb14e,
- 0xb14f, 0xb150, 0x0000, 0xb151, 0xb152, 0xb153, 0xb154, 0xb155,
- 0xb156, 0xb157, 0xb158, 0xb159, 0xb15a, 0xb15b, 0x0000, 0x0000,
- 0x0000, 0xb15c, 0xb15d, 0xb15e, 0xb15f, 0xb160, 0xb161, 0xb162,
- 0xb163, 0xb164, 0xb165, 0xb166, 0xb167, 0xb168, 0xb169, 0xb16a,
- 0xb16b, 0xb16c, 0x0000, 0xb16d, 0xb16e, 0xb16f, 0xb170, 0xb171,
- 0xb172, 0xb173, 0xb174, 0xb175, 0xb176, 0xb177, 0x0000, 0x0000,
- 0x0000, 0xb178, 0xb179, 0xb17a, 0xb17b, 0xb17c, 0xb17d, 0xb17e,
- 0xb17f, 0xb180, 0xb181, 0xb182, 0xb183, 0xb184, 0xb185, 0xb186,
- 0xb187, 0xb188, 0x0000, 0xb189, 0xb18a, 0xb18b, 0xb18c, 0xb18d,
- 0xb18e, 0xb18f, 0xb190, 0xb191, 0xb192, 0xb193, 0x0000, 0x0000,
- 0x0000, 0xb194, 0xb195, 0xb196, 0xb197, 0xb198, 0xb199, 0xb19a,
- 0xb19b, 0xb19c, 0xb19d, 0xb19e, 0xb19f, 0xb1a0, 0xb1a1, 0xb1a2,
- 0xb1a3, 0xb1a4, 0x0000, 0xb1a5, 0xb1a6, 0xb1a7, 0xb1a8, 0xb1a9,
- 0xb1aa, 0xb1ab, 0xb1ac, 0xb1ad, 0xb1ae, 0xb1af, 0x0000, 0x0000,
- 0x0000, 0xb1b0, 0xb1b1, 0xb1b2, 0xb1b3, 0xb1b4, 0xb1b5, 0xb1b6,
- 0xb1b7, 0xb1b8, 0xb1b9, 0xb1ba, 0xb1bb, 0xb1bc, 0xb1bd, 0xb1be,
- 0xb1bf, 0xb1c0, 0x0000, 0xb1c1, 0xb1c2, 0xb1c3, 0xb1c4, 0xb1c5,
- 0xb1c6, 0xb1c7, 0xb1c8, 0xb1c9, 0xb1ca, 0xb1cb, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb1cc, 0xb1cd, 0xb1ce, 0xb1cf, 0xb1d0, 0xb1d1, 0xb1d2,
- 0xb1d3, 0xb1d4, 0xb1d5, 0xb1d6, 0xb1d7, 0xb1d8, 0xb1d9, 0xb1da,
- 0xb1db, 0xb1dc, 0x0000, 0xb1dd, 0xb1de, 0xb1df, 0xb1e0, 0xb1e1,
- 0xb1e2, 0xb1e3, 0xb1e4, 0xb1e5, 0xb1e6, 0xb1e7, 0x0000, 0x0000,
- 0x0000, 0xb1e8, 0xb1e9, 0xb1ea, 0xb1eb, 0xb1ec, 0xb1ed, 0xb1ee,
- 0xb1ef, 0xb1f0, 0xb1f1, 0xb1f2, 0xb1f3, 0xb1f4, 0xb1f5, 0xb1f6,
- 0xb1f7, 0xb1f8, 0x0000, 0xb1f9, 0xb1fa, 0xb1fb, 0xb1fc, 0xb1fd,
- 0xb1fe, 0xb1ff, 0xb200, 0xb201, 0xb202, 0xb203, 0x0000, 0x0000,
- 0x0000, 0xb204, 0xb205, 0xb206, 0xb207, 0xb208, 0xb209, 0xb20a,
- 0xb20b, 0xb20c, 0xb20d, 0xb20e, 0xb20f, 0xb210, 0xb211, 0xb212,
- 0xb213, 0xb214, 0x0000, 0xb215, 0xb216, 0xb217, 0xb218, 0xb219,
- 0xb21a, 0xb21b, 0xb21c, 0xb21d, 0xb21e, 0xb21f, 0x0000, 0x0000,
- 0x0000, 0xb220, 0xb221, 0xb222, 0xb223, 0xb224, 0xb225, 0xb226,
- 0xb227, 0xb228, 0xb229, 0xb22a, 0xb22b, 0xb22c, 0xb22d, 0xb22e,
- 0xb22f, 0xb230, 0x0000, 0xb231, 0xb232, 0xb233, 0xb234, 0xb235,
- 0xb236, 0xb237, 0xb238, 0xb239, 0xb23a, 0xb23b, 0x0000, 0x0000,
- 0x0000, 0xb23c, 0xb23d, 0xb23e, 0xb23f, 0xb240, 0xb241, 0xb242,
- 0xb243, 0xb244, 0xb245, 0xb246, 0xb247, 0xb248, 0xb249, 0xb24a,
- 0xb24b, 0xb24c, 0x0000, 0xb24d, 0xb24e, 0xb24f, 0xb250, 0xb251,
- 0xb252, 0xb253, 0xb254, 0xb255, 0xb256, 0xb257, 0x0000, 0x0000,
- 0x0000, 0xb258, 0xb259, 0xb25a, 0xb25b, 0xb25c, 0xb25d, 0xb25e,
- 0xb25f, 0xb260, 0xb261, 0xb262, 0xb263, 0xb264, 0xb265, 0xb266,
- 0xb267, 0xb268, 0x0000, 0xb269, 0xb26a, 0xb26b, 0xb26c, 0xb26d,
- 0xb26e, 0xb26f, 0xb270, 0xb271, 0xb272, 0xb273, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb274, 0xb275, 0xb276, 0xb277, 0xb278, 0xb279, 0xb27a,
- 0xb27b, 0xb27c, 0xb27d, 0xb27e, 0xb27f, 0xb280, 0xb281, 0xb282,
- 0xb283, 0xb284, 0x0000, 0xb285, 0xb286, 0xb287, 0xb288, 0xb289,
- 0xb28a, 0xb28b, 0xb28c, 0xb28d, 0xb28e, 0xb28f, 0x0000, 0x0000,
- 0x0000, 0xb290, 0xb291, 0xb292, 0xb293, 0xb294, 0xb295, 0xb296,
- 0xb297, 0xb298, 0xb299, 0xb29a, 0xb29b, 0xb29c, 0xb29d, 0xb29e,
- 0xb29f, 0xb2a0, 0x0000, 0xb2a1, 0xb2a2, 0xb2a3, 0xb2a4, 0xb2a5,
- 0xb2a6, 0xb2a7, 0xb2a8, 0xb2a9, 0xb2aa, 0xb2ab, 0x0000, 0x0000,
- 0x0000, 0xb2ac, 0xb2ad, 0xb2ae, 0xb2af, 0xb2b0, 0xb2b1, 0xb2b2,
- 0xb2b3, 0xb2b4, 0xb2b5, 0xb2b6, 0xb2b7, 0xb2b8, 0xb2b9, 0xb2ba,
- 0xb2bb, 0xb2bc, 0x0000, 0xb2bd, 0xb2be, 0xb2bf, 0xb2c0, 0xb2c1,
- 0xb2c2, 0xb2c3, 0xb2c4, 0xb2c5, 0xb2c6, 0xb2c7, 0x0000, 0x0000,
- 0x0000, 0xb2c8, 0xb2c9, 0xb2ca, 0xb2cb, 0xb2cc, 0xb2cd, 0xb2ce,
- 0xb2cf, 0xb2d0, 0xb2d1, 0xb2d2, 0xb2d3, 0xb2d4, 0xb2d5, 0xb2d6,
- 0xb2d7, 0xb2d8, 0x0000, 0xb2d9, 0xb2da, 0xb2db, 0xb2dc, 0xb2dd,
- 0xb2de, 0xb2df, 0xb2e0, 0xb2e1, 0xb2e2, 0xb2e3, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb2e4, 0xb2e5, 0xb2e6, 0xb2e7, 0xb2e8, 0xb2e9, 0xb2ea,
- 0xb2eb, 0xb2ec, 0xb2ed, 0xb2ee, 0xb2ef, 0xb2f0, 0xb2f1, 0xb2f2,
- 0xb2f3, 0xb2f4, 0x0000, 0xb2f5, 0xb2f6, 0xb2f7, 0xb2f8, 0xb2f9,
- 0xb2fa, 0xb2fb, 0xb2fc, 0xb2fd, 0xb2fe, 0xb2ff, 0x0000, 0x0000,
- 0x0000, 0xb300, 0xb301, 0xb302, 0xb303, 0xb304, 0xb305, 0xb306,
- 0xb307, 0xb308, 0xb309, 0xb30a, 0xb30b, 0xb30c, 0xb30d, 0xb30e,
- 0xb30f, 0xb310, 0x0000, 0xb311, 0xb312, 0xb313, 0xb314, 0xb315,
- 0xb316, 0xb317, 0xb318, 0xb319, 0xb31a, 0xb31b, 0x0000, 0x0000,
- 0x0000, 0xb31c, 0xb31d, 0xb31e, 0xb31f, 0xb320, 0xb321, 0xb322,
- 0xb323, 0xb324, 0xb325, 0xb326, 0xb327, 0xb328, 0xb329, 0xb32a,
- 0xb32b, 0xb32c, 0x0000, 0xb32d, 0xb32e, 0xb32f, 0xb330, 0xb331,
- 0xb332, 0xb333, 0xb334, 0xb335, 0xb336, 0xb337, 0x0000, 0x0000,
- 0x0000, 0xb338, 0xb339, 0xb33a, 0xb33b, 0xb33c, 0xb33d, 0xb33e,
- 0xb33f, 0xb340, 0xb341, 0xb342, 0xb343, 0xb344, 0xb345, 0xb346,
- 0xb347, 0xb348, 0x0000, 0xb349, 0xb34a, 0xb34b, 0xb34c, 0xb34d,
- 0xb34e, 0xb34f, 0xb350, 0xb351, 0xb352, 0xb353, 0x0000, 0x0000,
- 0x0000, 0xb354, 0xb355, 0xb356, 0xb357, 0xb358, 0xb359, 0xb35a,
- 0xb35b, 0xb35c, 0xb35d, 0xb35e, 0xb35f, 0xb360, 0xb361, 0xb362,
- 0xb363, 0xb364, 0x0000, 0xb365, 0xb366, 0xb367, 0xb368, 0xb369,
- 0xb36a, 0xb36b, 0xb36c, 0xb36d, 0xb36e, 0xb36f, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb370, 0xb371, 0xb372, 0xb373, 0xb374, 0xb375, 0xb376,
- 0xb377, 0xb378, 0xb379, 0xb37a, 0xb37b, 0xb37c, 0xb37d, 0xb37e,
- 0xb37f, 0xb380, 0x0000, 0xb381, 0xb382, 0xb383, 0xb384, 0xb385,
- 0xb386, 0xb387, 0xb388, 0xb389, 0xb38a, 0xb38b, 0x0000, 0x0000,
- 0x0000, 0xb38c, 0xb38d, 0xb38e, 0xb38f, 0xb390, 0xb391, 0xb392,
- 0xb393, 0xb394, 0xb395, 0xb396, 0xb397, 0xb398, 0xb399, 0xb39a,
- 0xb39b, 0xb39c, 0x0000, 0xb39d, 0xb39e, 0xb39f, 0xb3a0, 0xb3a1,
- 0xb3a2, 0xb3a3, 0xb3a4, 0xb3a5, 0xb3a6, 0xb3a7, 0x0000, 0x0000,
- 0x0000, 0xb3a8, 0xb3a9, 0xb3aa, 0xb3ab, 0xb3ac, 0xb3ad, 0xb3ae,
- 0xb3af, 0xb3b0, 0xb3b1, 0xb3b2, 0xb3b3, 0xb3b4, 0xb3b5, 0xb3b6,
- 0xb3b7, 0xb3b8, 0x0000, 0xb3b9, 0xb3ba, 0xb3bb, 0xb3bc, 0xb3bd,
- 0xb3be, 0xb3bf, 0xb3c0, 0xb3c1, 0xb3c2, 0xb3c3, 0x0000, 0x0000,
- 0x0000, 0xb3c4, 0xb3c5, 0xb3c6, 0xb3c7, 0xb3c8, 0xb3c9, 0xb3ca,
- 0xb3cb, 0xb3cc, 0xb3cd, 0xb3ce, 0xb3cf, 0xb3d0, 0xb3d1, 0xb3d2,
- 0xb3d3, 0xb3d4, 0x0000, 0xb3d5, 0xb3d6, 0xb3d7, 0xb3d8, 0xb3d9,
- 0xb3da, 0xb3db, 0xb3dc, 0xb3dd, 0xb3de, 0xb3df, 0x0000, 0x0000,
- 0x0000, 0xb3e0, 0xb3e1, 0xb3e2, 0xb3e3, 0xb3e4, 0xb3e5, 0xb3e6,
- 0xb3e7, 0xb3e8, 0xb3e9, 0xb3ea, 0xb3eb, 0xb3ec, 0xb3ed, 0xb3ee,
- 0xb3ef, 0xb3f0, 0x0000, 0xb3f1, 0xb3f2, 0xb3f3, 0xb3f4, 0xb3f5,
- 0xb3f6, 0xb3f7, 0xb3f8, 0xb3f9, 0xb3fa, 0xb3fb, 0x0000, 0x0000,
- 0x0000, 0xb3fc, 0xb3fd, 0xb3fe, 0xb3ff, 0xb400, 0xb401, 0xb402,
- 0xb403, 0xb404, 0xb405, 0xb406, 0xb407, 0xb408, 0xb409, 0xb40a,
- 0xb40b, 0xb40c, 0x0000, 0xb40d, 0xb40e, 0xb40f, 0xb410, 0xb411,
- 0xb412, 0xb413, 0xb414, 0xb415, 0xb416, 0xb417, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb418, 0xb419, 0xb41a, 0xb41b, 0xb41c, 0xb41d, 0xb41e,
- 0xb41f, 0xb420, 0xb421, 0xb422, 0xb423, 0xb424, 0xb425, 0xb426,
- 0xb427, 0xb428, 0x0000, 0xb429, 0xb42a, 0xb42b, 0xb42c, 0xb42d,
- 0xb42e, 0xb42f, 0xb430, 0xb431, 0xb432, 0xb433, 0x0000, 0x0000,
- 0x0000, 0xb434, 0xb435, 0xb436, 0xb437, 0xb438, 0xb439, 0xb43a,
- 0xb43b, 0xb43c, 0xb43d, 0xb43e, 0xb43f, 0xb440, 0xb441, 0xb442,
- 0xb443, 0xb444, 0x0000, 0xb445, 0xb446, 0xb447, 0xb448, 0xb449,
- 0xb44a, 0xb44b, 0xb44c, 0xb44d, 0xb44e, 0xb44f, 0x0000, 0x0000,
- 0x0000, 0xb450, 0xb451, 0xb452, 0xb453, 0xb454, 0xb455, 0xb456,
- 0xb457, 0xb458, 0xb459, 0xb45a, 0xb45b, 0xb45c, 0xb45d, 0xb45e,
- 0xb45f, 0xb460, 0x0000, 0xb461, 0xb462, 0xb463, 0xb464, 0xb465,
- 0xb466, 0xb467, 0xb468, 0xb469, 0xb46a, 0xb46b, 0x0000, 0x0000,
- 0x0000, 0xb46c, 0xb46d, 0xb46e, 0xb46f, 0xb470, 0xb471, 0xb472,
- 0xb473, 0xb474, 0xb475, 0xb476, 0xb477, 0xb478, 0xb479, 0xb47a,
- 0xb47b, 0xb47c, 0x0000, 0xb47d, 0xb47e, 0xb47f, 0xb480, 0xb481,
- 0xb482, 0xb483, 0xb484, 0xb485, 0xb486, 0xb487, 0x0000, 0x0000,
- 0x0000, 0xb488, 0xb489, 0xb48a, 0xb48b, 0xb48c, 0xb48d, 0xb48e,
- 0xb48f, 0xb490, 0xb491, 0xb492, 0xb493, 0xb494, 0xb495, 0xb496,
- 0xb497, 0xb498, 0x0000, 0xb499, 0xb49a, 0xb49b, 0xb49c, 0xb49d,
- 0xb49e, 0xb49f, 0xb4a0, 0xb4a1, 0xb4a2, 0xb4a3, 0x0000, 0x0000,
- 0x0000, 0xb4a4, 0xb4a5, 0xb4a6, 0xb4a7, 0xb4a8, 0xb4a9, 0xb4aa,
- 0xb4ab, 0xb4ac, 0xb4ad, 0xb4ae, 0xb4af, 0xb4b0, 0xb4b1, 0xb4b2,
- 0xb4b3, 0xb4b4, 0x0000, 0xb4b5, 0xb4b6, 0xb4b7, 0xb4b8, 0xb4b9,
- 0xb4ba, 0xb4bb, 0xb4bc, 0xb4bd, 0xb4be, 0xb4bf, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb4c0, 0xb4c1, 0xb4c2, 0xb4c3, 0xb4c4, 0xb4c5, 0xb4c6,
- 0xb4c7, 0xb4c8, 0xb4c9, 0xb4ca, 0xb4cb, 0xb4cc, 0xb4cd, 0xb4ce,
- 0xb4cf, 0xb4d0, 0x0000, 0xb4d1, 0xb4d2, 0xb4d3, 0xb4d4, 0xb4d5,
- 0xb4d6, 0xb4d7, 0xb4d8, 0xb4d9, 0xb4da, 0xb4db, 0x0000, 0x0000,
- 0x0000, 0xb4dc, 0xb4dd, 0xb4de, 0xb4df, 0xb4e0, 0xb4e1, 0xb4e2,
- 0xb4e3, 0xb4e4, 0xb4e5, 0xb4e6, 0xb4e7, 0xb4e8, 0xb4e9, 0xb4ea,
- 0xb4eb, 0xb4ec, 0x0000, 0xb4ed, 0xb4ee, 0xb4ef, 0xb4f0, 0xb4f1,
- 0xb4f2, 0xb4f3, 0xb4f4, 0xb4f5, 0xb4f6, 0xb4f7, 0x0000, 0x0000,
- 0x0000, 0xb4f8, 0xb4f9, 0xb4fa, 0xb4fb, 0xb4fc, 0xb4fd, 0xb4fe,
- 0xb4ff, 0xb500, 0xb501, 0xb502, 0xb503, 0xb504, 0xb505, 0xb506,
- 0xb507, 0xb508, 0x0000, 0xb509, 0xb50a, 0xb50b, 0xb50c, 0xb50d,
- 0xb50e, 0xb50f, 0xb510, 0xb511, 0xb512, 0xb513, 0x0000, 0x0000,
- 0x0000, 0xb514, 0xb515, 0xb516, 0xb517, 0xb518, 0xb519, 0xb51a,
- 0xb51b, 0xb51c, 0xb51d, 0xb51e, 0xb51f, 0xb520, 0xb521, 0xb522,
- 0xb523, 0xb524, 0x0000, 0xb525, 0xb526, 0xb527, 0xb528, 0xb529,
- 0xb52a, 0xb52b, 0xb52c, 0xb52d, 0xb52e, 0xb52f, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3138, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb530, 0xb531, 0xb532, 0xb533, 0xb534, 0xb535, 0xb536,
- 0xb537, 0xb538, 0xb539, 0xb53a, 0xb53b, 0xb53c, 0xb53d, 0xb53e,
- 0xb53f, 0xb540, 0x0000, 0xb541, 0xb542, 0xb543, 0xb544, 0xb545,
- 0xb546, 0xb547, 0xb548, 0xb549, 0xb54a, 0xb54b, 0x0000, 0x0000,
- 0x0000, 0xb54c, 0xb54d, 0xb54e, 0xb54f, 0xb550, 0xb551, 0xb552,
- 0xb553, 0xb554, 0xb555, 0xb556, 0xb557, 0xb558, 0xb559, 0xb55a,
- 0xb55b, 0xb55c, 0x0000, 0xb55d, 0xb55e, 0xb55f, 0xb560, 0xb561,
- 0xb562, 0xb563, 0xb564, 0xb565, 0xb566, 0xb567, 0x0000, 0x0000,
- 0x0000, 0xb568, 0xb569, 0xb56a, 0xb56b, 0xb56c, 0xb56d, 0xb56e,
- 0xb56f, 0xb570, 0xb571, 0xb572, 0xb573, 0xb574, 0xb575, 0xb576,
- 0xb577, 0xb578, 0x0000, 0xb579, 0xb57a, 0xb57b, 0xb57c, 0xb57d,
- 0xb57e, 0xb57f, 0xb580, 0xb581, 0xb582, 0xb583, 0x0000, 0x0000,
- 0x0000, 0xb584, 0xb585, 0xb586, 0xb587, 0xb588, 0xb589, 0xb58a,
- 0xb58b, 0xb58c, 0xb58d, 0xb58e, 0xb58f, 0xb590, 0xb591, 0xb592,
- 0xb593, 0xb594, 0x0000, 0xb595, 0xb596, 0xb597, 0xb598, 0xb599,
- 0xb59a, 0xb59b, 0xb59c, 0xb59d, 0xb59e, 0xb59f, 0x0000, 0x0000,
- 0x0000, 0xb5a0, 0xb5a1, 0xb5a2, 0xb5a3, 0xb5a4, 0xb5a5, 0xb5a6,
- 0xb5a7, 0xb5a8, 0xb5a9, 0xb5aa, 0xb5ab, 0xb5ac, 0xb5ad, 0xb5ae,
- 0xb5af, 0xb5b0, 0x0000, 0xb5b1, 0xb5b2, 0xb5b3, 0xb5b4, 0xb5b5,
- 0xb5b6, 0xb5b7, 0xb5b8, 0xb5b9, 0xb5ba, 0xb5bb, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb5bc, 0xb5bd, 0xb5be, 0xb5bf, 0xb5c0, 0xb5c1, 0xb5c2,
- 0xb5c3, 0xb5c4, 0xb5c5, 0xb5c6, 0xb5c7, 0xb5c8, 0xb5c9, 0xb5ca,
- 0xb5cb, 0xb5cc, 0x0000, 0xb5cd, 0xb5ce, 0xb5cf, 0xb5d0, 0xb5d1,
- 0xb5d2, 0xb5d3, 0xb5d4, 0xb5d5, 0xb5d6, 0xb5d7, 0x0000, 0x0000,
- 0x0000, 0xb5d8, 0xb5d9, 0xb5da, 0xb5db, 0xb5dc, 0xb5dd, 0xb5de,
- 0xb5df, 0xb5e0, 0xb5e1, 0xb5e2, 0xb5e3, 0xb5e4, 0xb5e5, 0xb5e6,
- 0xb5e7, 0xb5e8, 0x0000, 0xb5e9, 0xb5ea, 0xb5eb, 0xb5ec, 0xb5ed,
- 0xb5ee, 0xb5ef, 0xb5f0, 0xb5f1, 0xb5f2, 0xb5f3, 0x0000, 0x0000,
- 0x0000, 0xb5f4, 0xb5f5, 0xb5f6, 0xb5f7, 0xb5f8, 0xb5f9, 0xb5fa,
- 0xb5fb, 0xb5fc, 0xb5fd, 0xb5fe, 0xb5ff, 0xb600, 0xb601, 0xb602,
- 0xb603, 0xb604, 0x0000, 0xb605, 0xb606, 0xb607, 0xb608, 0xb609,
- 0xb60a, 0xb60b, 0xb60c, 0xb60d, 0xb60e, 0xb60f, 0x0000, 0x0000,
- 0x0000, 0xb610, 0xb611, 0xb612, 0xb613, 0xb614, 0xb615, 0xb616,
- 0xb617, 0xb618, 0xb619, 0xb61a, 0xb61b, 0xb61c, 0xb61d, 0xb61e,
- 0xb61f, 0xb620, 0x0000, 0xb621, 0xb622, 0xb623, 0xb624, 0xb625,
- 0xb626, 0xb627, 0xb628, 0xb629, 0xb62a, 0xb62b, 0x0000, 0x0000,
- 0x0000, 0xb62c, 0xb62d, 0xb62e, 0xb62f, 0xb630, 0xb631, 0xb632,
- 0xb633, 0xb634, 0xb635, 0xb636, 0xb637, 0xb638, 0xb639, 0xb63a,
- 0xb63b, 0xb63c, 0x0000, 0xb63d, 0xb63e, 0xb63f, 0xb640, 0xb641,
- 0xb642, 0xb643, 0xb644, 0xb645, 0xb646, 0xb647, 0x0000, 0x0000,
- 0x0000, 0xb648, 0xb649, 0xb64a, 0xb64b, 0xb64c, 0xb64d, 0xb64e,
- 0xb64f, 0xb650, 0xb651, 0xb652, 0xb653, 0xb654, 0xb655, 0xb656,
- 0xb657, 0xb658, 0x0000, 0xb659, 0xb65a, 0xb65b, 0xb65c, 0xb65d,
- 0xb65e, 0xb65f, 0xb660, 0xb661, 0xb662, 0xb663, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb664, 0xb665, 0xb666, 0xb667, 0xb668, 0xb669, 0xb66a,
- 0xb66b, 0xb66c, 0xb66d, 0xb66e, 0xb66f, 0xb670, 0xb671, 0xb672,
- 0xb673, 0xb674, 0x0000, 0xb675, 0xb676, 0xb677, 0xb678, 0xb679,
- 0xb67a, 0xb67b, 0xb67c, 0xb67d, 0xb67e, 0xb67f, 0x0000, 0x0000,
- 0x0000, 0xb680, 0xb681, 0xb682, 0xb683, 0xb684, 0xb685, 0xb686,
- 0xb687, 0xb688, 0xb689, 0xb68a, 0xb68b, 0xb68c, 0xb68d, 0xb68e,
- 0xb68f, 0xb690, 0x0000, 0xb691, 0xb692, 0xb693, 0xb694, 0xb695,
- 0xb696, 0xb697, 0xb698, 0xb699, 0xb69a, 0xb69b, 0x0000, 0x0000,
- 0x0000, 0xb69c, 0xb69d, 0xb69e, 0xb69f, 0xb6a0, 0xb6a1, 0xb6a2,
- 0xb6a3, 0xb6a4, 0xb6a5, 0xb6a6, 0xb6a7, 0xb6a8, 0xb6a9, 0xb6aa,
- 0xb6ab, 0xb6ac, 0x0000, 0xb6ad, 0xb6ae, 0xb6af, 0xb6b0, 0xb6b1,
- 0xb6b2, 0xb6b3, 0xb6b4, 0xb6b5, 0xb6b6, 0xb6b7, 0x0000, 0x0000,
- 0x0000, 0xb6b8, 0xb6b9, 0xb6ba, 0xb6bb, 0xb6bc, 0xb6bd, 0xb6be,
- 0xb6bf, 0xb6c0, 0xb6c1, 0xb6c2, 0xb6c3, 0xb6c4, 0xb6c5, 0xb6c6,
- 0xb6c7, 0xb6c8, 0x0000, 0xb6c9, 0xb6ca, 0xb6cb, 0xb6cc, 0xb6cd,
- 0xb6ce, 0xb6cf, 0xb6d0, 0xb6d1, 0xb6d2, 0xb6d3, 0x0000, 0x0000,
- 0x0000, 0xb6d4, 0xb6d5, 0xb6d6, 0xb6d7, 0xb6d8, 0xb6d9, 0xb6da,
- 0xb6db, 0xb6dc, 0xb6dd, 0xb6de, 0xb6df, 0xb6e0, 0xb6e1, 0xb6e2,
- 0xb6e3, 0xb6e4, 0x0000, 0xb6e5, 0xb6e6, 0xb6e7, 0xb6e8, 0xb6e9,
- 0xb6ea, 0xb6eb, 0xb6ec, 0xb6ed, 0xb6ee, 0xb6ef, 0x0000, 0x0000,
- 0x0000, 0xb6f0, 0xb6f1, 0xb6f2, 0xb6f3, 0xb6f4, 0xb6f5, 0xb6f6,
- 0xb6f7, 0xb6f8, 0xb6f9, 0xb6fa, 0xb6fb, 0xb6fc, 0xb6fd, 0xb6fe,
- 0xb6ff, 0xb700, 0x0000, 0xb701, 0xb702, 0xb703, 0xb704, 0xb705,
- 0xb706, 0xb707, 0xb708, 0xb709, 0xb70a, 0xb70b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb70c, 0xb70d, 0xb70e, 0xb70f, 0xb710, 0xb711, 0xb712,
- 0xb713, 0xb714, 0xb715, 0xb716, 0xb717, 0xb718, 0xb719, 0xb71a,
- 0xb71b, 0xb71c, 0x0000, 0xb71d, 0xb71e, 0xb71f, 0xb720, 0xb721,
- 0xb722, 0xb723, 0xb724, 0xb725, 0xb726, 0xb727, 0x0000, 0x0000,
- 0x0000, 0xb728, 0xb729, 0xb72a, 0xb72b, 0xb72c, 0xb72d, 0xb72e,
- 0xb72f, 0xb730, 0xb731, 0xb732, 0xb733, 0xb734, 0xb735, 0xb736,
- 0xb737, 0xb738, 0x0000, 0xb739, 0xb73a, 0xb73b, 0xb73c, 0xb73d,
- 0xb73e, 0xb73f, 0xb740, 0xb741, 0xb742, 0xb743, 0x0000, 0x0000,
- 0x0000, 0xb744, 0xb745, 0xb746, 0xb747, 0xb748, 0xb749, 0xb74a,
- 0xb74b, 0xb74c, 0xb74d, 0xb74e, 0xb74f, 0xb750, 0xb751, 0xb752,
- 0xb753, 0xb754, 0x0000, 0xb755, 0xb756, 0xb757, 0xb758, 0xb759,
- 0xb75a, 0xb75b, 0xb75c, 0xb75d, 0xb75e, 0xb75f, 0x0000, 0x0000,
- 0x0000, 0xb760, 0xb761, 0xb762, 0xb763, 0xb764, 0xb765, 0xb766,
- 0xb767, 0xb768, 0xb769, 0xb76a, 0xb76b, 0xb76c, 0xb76d, 0xb76e,
- 0xb76f, 0xb770, 0x0000, 0xb771, 0xb772, 0xb773, 0xb774, 0xb775,
- 0xb776, 0xb777, 0xb778, 0xb779, 0xb77a, 0xb77b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb77c, 0xb77d, 0xb77e, 0xb77f, 0xb780, 0xb781, 0xb782,
- 0xb783, 0xb784, 0xb785, 0xb786, 0xb787, 0xb788, 0xb789, 0xb78a,
- 0xb78b, 0xb78c, 0x0000, 0xb78d, 0xb78e, 0xb78f, 0xb790, 0xb791,
- 0xb792, 0xb793, 0xb794, 0xb795, 0xb796, 0xb797, 0x0000, 0x0000,
- 0x0000, 0xb798, 0xb799, 0xb79a, 0xb79b, 0xb79c, 0xb79d, 0xb79e,
- 0xb79f, 0xb7a0, 0xb7a1, 0xb7a2, 0xb7a3, 0xb7a4, 0xb7a5, 0xb7a6,
- 0xb7a7, 0xb7a8, 0x0000, 0xb7a9, 0xb7aa, 0xb7ab, 0xb7ac, 0xb7ad,
- 0xb7ae, 0xb7af, 0xb7b0, 0xb7b1, 0xb7b2, 0xb7b3, 0x0000, 0x0000,
- 0x0000, 0xb7b4, 0xb7b5, 0xb7b6, 0xb7b7, 0xb7b8, 0xb7b9, 0xb7ba,
- 0xb7bb, 0xb7bc, 0xb7bd, 0xb7be, 0xb7bf, 0xb7c0, 0xb7c1, 0xb7c2,
- 0xb7c3, 0xb7c4, 0x0000, 0xb7c5, 0xb7c6, 0xb7c7, 0xb7c8, 0xb7c9,
- 0xb7ca, 0xb7cb, 0xb7cc, 0xb7cd, 0xb7ce, 0xb7cf, 0x0000, 0x0000,
- 0x0000, 0xb7d0, 0xb7d1, 0xb7d2, 0xb7d3, 0xb7d4, 0xb7d5, 0xb7d6,
- 0xb7d7, 0xb7d8, 0xb7d9, 0xb7da, 0xb7db, 0xb7dc, 0xb7dd, 0xb7de,
- 0xb7df, 0xb7e0, 0x0000, 0xb7e1, 0xb7e2, 0xb7e3, 0xb7e4, 0xb7e5,
- 0xb7e6, 0xb7e7, 0xb7e8, 0xb7e9, 0xb7ea, 0xb7eb, 0x0000, 0x0000,
- 0x0000, 0xb7ec, 0xb7ed, 0xb7ee, 0xb7ef, 0xb7f0, 0xb7f1, 0xb7f2,
- 0xb7f3, 0xb7f4, 0xb7f5, 0xb7f6, 0xb7f7, 0xb7f8, 0xb7f9, 0xb7fa,
- 0xb7fb, 0xb7fc, 0x0000, 0xb7fd, 0xb7fe, 0xb7ff, 0xb800, 0xb801,
- 0xb802, 0xb803, 0xb804, 0xb805, 0xb806, 0xb807, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb808, 0xb809, 0xb80a, 0xb80b, 0xb80c, 0xb80d, 0xb80e,
- 0xb80f, 0xb810, 0xb811, 0xb812, 0xb813, 0xb814, 0xb815, 0xb816,
- 0xb817, 0xb818, 0x0000, 0xb819, 0xb81a, 0xb81b, 0xb81c, 0xb81d,
- 0xb81e, 0xb81f, 0xb820, 0xb821, 0xb822, 0xb823, 0x0000, 0x0000,
- 0x0000, 0xb824, 0xb825, 0xb826, 0xb827, 0xb828, 0xb829, 0xb82a,
- 0xb82b, 0xb82c, 0xb82d, 0xb82e, 0xb82f, 0xb830, 0xb831, 0xb832,
- 0xb833, 0xb834, 0x0000, 0xb835, 0xb836, 0xb837, 0xb838, 0xb839,
- 0xb83a, 0xb83b, 0xb83c, 0xb83d, 0xb83e, 0xb83f, 0x0000, 0x0000,
- 0x0000, 0xb840, 0xb841, 0xb842, 0xb843, 0xb844, 0xb845, 0xb846,
- 0xb847, 0xb848, 0xb849, 0xb84a, 0xb84b, 0xb84c, 0xb84d, 0xb84e,
- 0xb84f, 0xb850, 0x0000, 0xb851, 0xb852, 0xb853, 0xb854, 0xb855,
- 0xb856, 0xb857, 0xb858, 0xb859, 0xb85a, 0xb85b, 0x0000, 0x0000,
- 0x0000, 0xb85c, 0xb85d, 0xb85e, 0xb85f, 0xb860, 0xb861, 0xb862,
- 0xb863, 0xb864, 0xb865, 0xb866, 0xb867, 0xb868, 0xb869, 0xb86a,
- 0xb86b, 0xb86c, 0x0000, 0xb86d, 0xb86e, 0xb86f, 0xb870, 0xb871,
- 0xb872, 0xb873, 0xb874, 0xb875, 0xb876, 0xb877, 0x0000, 0x0000,
- 0x0000, 0xb878, 0xb879, 0xb87a, 0xb87b, 0xb87c, 0xb87d, 0xb87e,
- 0xb87f, 0xb880, 0xb881, 0xb882, 0xb883, 0xb884, 0xb885, 0xb886,
- 0xb887, 0xb888, 0x0000, 0xb889, 0xb88a, 0xb88b, 0xb88c, 0xb88d,
- 0xb88e, 0xb88f, 0xb890, 0xb891, 0xb892, 0xb893, 0x0000, 0x0000,
- 0x0000, 0xb894, 0xb895, 0xb896, 0xb897, 0xb898, 0xb899, 0xb89a,
- 0xb89b, 0xb89c, 0xb89d, 0xb89e, 0xb89f, 0xb8a0, 0xb8a1, 0xb8a2,
- 0xb8a3, 0xb8a4, 0x0000, 0xb8a5, 0xb8a6, 0xb8a7, 0xb8a8, 0xb8a9,
- 0xb8aa, 0xb8ab, 0xb8ac, 0xb8ad, 0xb8ae, 0xb8af, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb8b0, 0xb8b1, 0xb8b2, 0xb8b3, 0xb8b4, 0xb8b5, 0xb8b6,
- 0xb8b7, 0xb8b8, 0xb8b9, 0xb8ba, 0xb8bb, 0xb8bc, 0xb8bd, 0xb8be,
- 0xb8bf, 0xb8c0, 0x0000, 0xb8c1, 0xb8c2, 0xb8c3, 0xb8c4, 0xb8c5,
- 0xb8c6, 0xb8c7, 0xb8c8, 0xb8c9, 0xb8ca, 0xb8cb, 0x0000, 0x0000,
- 0x0000, 0xb8cc, 0xb8cd, 0xb8ce, 0xb8cf, 0xb8d0, 0xb8d1, 0xb8d2,
- 0xb8d3, 0xb8d4, 0xb8d5, 0xb8d6, 0xb8d7, 0xb8d8, 0xb8d9, 0xb8da,
- 0xb8db, 0xb8dc, 0x0000, 0xb8dd, 0xb8de, 0xb8df, 0xb8e0, 0xb8e1,
- 0xb8e2, 0xb8e3, 0xb8e4, 0xb8e5, 0xb8e6, 0xb8e7, 0x0000, 0x0000,
- 0x0000, 0xb8e8, 0xb8e9, 0xb8ea, 0xb8eb, 0xb8ec, 0xb8ed, 0xb8ee,
- 0xb8ef, 0xb8f0, 0xb8f1, 0xb8f2, 0xb8f3, 0xb8f4, 0xb8f5, 0xb8f6,
- 0xb8f7, 0xb8f8, 0x0000, 0xb8f9, 0xb8fa, 0xb8fb, 0xb8fc, 0xb8fd,
- 0xb8fe, 0xb8ff, 0xb900, 0xb901, 0xb902, 0xb903, 0x0000, 0x0000,
- 0x0000, 0xb904, 0xb905, 0xb906, 0xb907, 0xb908, 0xb909, 0xb90a,
- 0xb90b, 0xb90c, 0xb90d, 0xb90e, 0xb90f, 0xb910, 0xb911, 0xb912,
- 0xb913, 0xb914, 0x0000, 0xb915, 0xb916, 0xb917, 0xb918, 0xb919,
- 0xb91a, 0xb91b, 0xb91c, 0xb91d, 0xb91e, 0xb91f, 0x0000, 0x0000,
- 0x0000, 0xb920, 0xb921, 0xb922, 0xb923, 0xb924, 0xb925, 0xb926,
- 0xb927, 0xb928, 0xb929, 0xb92a, 0xb92b, 0xb92c, 0xb92d, 0xb92e,
- 0xb92f, 0xb930, 0x0000, 0xb931, 0xb932, 0xb933, 0xb934, 0xb935,
- 0xb936, 0xb937, 0xb938, 0xb939, 0xb93a, 0xb93b, 0x0000, 0x0000,
- 0x0000, 0xb93c, 0xb93d, 0xb93e, 0xb93f, 0xb940, 0xb941, 0xb942,
- 0xb943, 0xb944, 0xb945, 0xb946, 0xb947, 0xb948, 0xb949, 0xb94a,
- 0xb94b, 0xb94c, 0x0000, 0xb94d, 0xb94e, 0xb94f, 0xb950, 0xb951,
- 0xb952, 0xb953, 0xb954, 0xb955, 0xb956, 0xb957, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb958, 0xb959, 0xb95a, 0xb95b, 0xb95c, 0xb95d, 0xb95e,
- 0xb95f, 0xb960, 0xb961, 0xb962, 0xb963, 0xb964, 0xb965, 0xb966,
- 0xb967, 0xb968, 0x0000, 0xb969, 0xb96a, 0xb96b, 0xb96c, 0xb96d,
- 0xb96e, 0xb96f, 0xb970, 0xb971, 0xb972, 0xb973, 0x0000, 0x0000,
- 0x0000, 0xb974, 0xb975, 0xb976, 0xb977, 0xb978, 0xb979, 0xb97a,
- 0xb97b, 0xb97c, 0xb97d, 0xb97e, 0xb97f, 0xb980, 0xb981, 0xb982,
- 0xb983, 0xb984, 0x0000, 0xb985, 0xb986, 0xb987, 0xb988, 0xb989,
- 0xb98a, 0xb98b, 0xb98c, 0xb98d, 0xb98e, 0xb98f, 0x0000, 0x0000,
- 0x0000, 0xb990, 0xb991, 0xb992, 0xb993, 0xb994, 0xb995, 0xb996,
- 0xb997, 0xb998, 0xb999, 0xb99a, 0xb99b, 0xb99c, 0xb99d, 0xb99e,
- 0xb99f, 0xb9a0, 0x0000, 0xb9a1, 0xb9a2, 0xb9a3, 0xb9a4, 0xb9a5,
- 0xb9a6, 0xb9a7, 0xb9a8, 0xb9a9, 0xb9aa, 0xb9ab, 0x0000, 0x0000,
- 0x0000, 0xb9ac, 0xb9ad, 0xb9ae, 0xb9af, 0xb9b0, 0xb9b1, 0xb9b2,
- 0xb9b3, 0xb9b4, 0xb9b5, 0xb9b6, 0xb9b7, 0xb9b8, 0xb9b9, 0xb9ba,
- 0xb9bb, 0xb9bc, 0x0000, 0xb9bd, 0xb9be, 0xb9bf, 0xb9c0, 0xb9c1,
- 0xb9c2, 0xb9c3, 0xb9c4, 0xb9c5, 0xb9c6, 0xb9c7, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xb9c8, 0xb9c9, 0xb9ca, 0xb9cb, 0xb9cc, 0xb9cd, 0xb9ce,
- 0xb9cf, 0xb9d0, 0xb9d1, 0xb9d2, 0xb9d3, 0xb9d4, 0xb9d5, 0xb9d6,
- 0xb9d7, 0xb9d8, 0x0000, 0xb9d9, 0xb9da, 0xb9db, 0xb9dc, 0xb9dd,
- 0xb9de, 0xb9df, 0xb9e0, 0xb9e1, 0xb9e2, 0xb9e3, 0x0000, 0x0000,
- 0x0000, 0xb9e4, 0xb9e5, 0xb9e6, 0xb9e7, 0xb9e8, 0xb9e9, 0xb9ea,
- 0xb9eb, 0xb9ec, 0xb9ed, 0xb9ee, 0xb9ef, 0xb9f0, 0xb9f1, 0xb9f2,
- 0xb9f3, 0xb9f4, 0x0000, 0xb9f5, 0xb9f6, 0xb9f7, 0xb9f8, 0xb9f9,
- 0xb9fa, 0xb9fb, 0xb9fc, 0xb9fd, 0xb9fe, 0xb9ff, 0x0000, 0x0000,
- 0x0000, 0xba00, 0xba01, 0xba02, 0xba03, 0xba04, 0xba05, 0xba06,
- 0xba07, 0xba08, 0xba09, 0xba0a, 0xba0b, 0xba0c, 0xba0d, 0xba0e,
- 0xba0f, 0xba10, 0x0000, 0xba11, 0xba12, 0xba13, 0xba14, 0xba15,
- 0xba16, 0xba17, 0xba18, 0xba19, 0xba1a, 0xba1b, 0x0000, 0x0000,
- 0x0000, 0xba1c, 0xba1d, 0xba1e, 0xba1f, 0xba20, 0xba21, 0xba22,
- 0xba23, 0xba24, 0xba25, 0xba26, 0xba27, 0xba28, 0xba29, 0xba2a,
- 0xba2b, 0xba2c, 0x0000, 0xba2d, 0xba2e, 0xba2f, 0xba30, 0xba31,
- 0xba32, 0xba33, 0xba34, 0xba35, 0xba36, 0xba37, 0x0000, 0x0000,
- 0x0000, 0xba38, 0xba39, 0xba3a, 0xba3b, 0xba3c, 0xba3d, 0xba3e,
- 0xba3f, 0xba40, 0xba41, 0xba42, 0xba43, 0xba44, 0xba45, 0xba46,
- 0xba47, 0xba48, 0x0000, 0xba49, 0xba4a, 0xba4b, 0xba4c, 0xba4d,
- 0xba4e, 0xba4f, 0xba50, 0xba51, 0xba52, 0xba53, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xba54, 0xba55, 0xba56, 0xba57, 0xba58, 0xba59, 0xba5a,
- 0xba5b, 0xba5c, 0xba5d, 0xba5e, 0xba5f, 0xba60, 0xba61, 0xba62,
- 0xba63, 0xba64, 0x0000, 0xba65, 0xba66, 0xba67, 0xba68, 0xba69,
- 0xba6a, 0xba6b, 0xba6c, 0xba6d, 0xba6e, 0xba6f, 0x0000, 0x0000,
- 0x0000, 0xba70, 0xba71, 0xba72, 0xba73, 0xba74, 0xba75, 0xba76,
- 0xba77, 0xba78, 0xba79, 0xba7a, 0xba7b, 0xba7c, 0xba7d, 0xba7e,
- 0xba7f, 0xba80, 0x0000, 0xba81, 0xba82, 0xba83, 0xba84, 0xba85,
- 0xba86, 0xba87, 0xba88, 0xba89, 0xba8a, 0xba8b, 0x0000, 0x0000,
- 0x0000, 0xba8c, 0xba8d, 0xba8e, 0xba8f, 0xba90, 0xba91, 0xba92,
- 0xba93, 0xba94, 0xba95, 0xba96, 0xba97, 0xba98, 0xba99, 0xba9a,
- 0xba9b, 0xba9c, 0x0000, 0xba9d, 0xba9e, 0xba9f, 0xbaa0, 0xbaa1,
- 0xbaa2, 0xbaa3, 0xbaa4, 0xbaa5, 0xbaa6, 0xbaa7, 0x0000, 0x0000,
- 0x0000, 0xbaa8, 0xbaa9, 0xbaaa, 0xbaab, 0xbaac, 0xbaad, 0xbaae,
- 0xbaaf, 0xbab0, 0xbab1, 0xbab2, 0xbab3, 0xbab4, 0xbab5, 0xbab6,
- 0xbab7, 0xbab8, 0x0000, 0xbab9, 0xbaba, 0xbabb, 0xbabc, 0xbabd,
- 0xbabe, 0xbabf, 0xbac0, 0xbac1, 0xbac2, 0xbac3, 0x0000, 0x0000,
- 0x0000, 0xbac4, 0xbac5, 0xbac6, 0xbac7, 0xbac8, 0xbac9, 0xbaca,
- 0xbacb, 0xbacc, 0xbacd, 0xbace, 0xbacf, 0xbad0, 0xbad1, 0xbad2,
- 0xbad3, 0xbad4, 0x0000, 0xbad5, 0xbad6, 0xbad7, 0xbad8, 0xbad9,
- 0xbada, 0xbadb, 0xbadc, 0xbadd, 0xbade, 0xbadf, 0x0000, 0x0000,
- 0x0000, 0xbae0, 0xbae1, 0xbae2, 0xbae3, 0xbae4, 0xbae5, 0xbae6,
- 0xbae7, 0xbae8, 0xbae9, 0xbaea, 0xbaeb, 0xbaec, 0xbaed, 0xbaee,
- 0xbaef, 0xbaf0, 0x0000, 0xbaf1, 0xbaf2, 0xbaf3, 0xbaf4, 0xbaf5,
- 0xbaf6, 0xbaf7, 0xbaf8, 0xbaf9, 0xbafa, 0xbafb, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xbafc, 0xbafd, 0xbafe, 0xbaff, 0xbb00, 0xbb01, 0xbb02,
- 0xbb03, 0xbb04, 0xbb05, 0xbb06, 0xbb07, 0xbb08, 0xbb09, 0xbb0a,
- 0xbb0b, 0xbb0c, 0x0000, 0xbb0d, 0xbb0e, 0xbb0f, 0xbb10, 0xbb11,
- 0xbb12, 0xbb13, 0xbb14, 0xbb15, 0xbb16, 0xbb17, 0x0000, 0x0000,
- 0x0000, 0xbb18, 0xbb19, 0xbb1a, 0xbb1b, 0xbb1c, 0xbb1d, 0xbb1e,
- 0xbb1f, 0xbb20, 0xbb21, 0xbb22, 0xbb23, 0xbb24, 0xbb25, 0xbb26,
- 0xbb27, 0xbb28, 0x0000, 0xbb29, 0xbb2a, 0xbb2b, 0xbb2c, 0xbb2d,
- 0xbb2e, 0xbb2f, 0xbb30, 0xbb31, 0xbb32, 0xbb33, 0x0000, 0x0000,
- 0x0000, 0xbb34, 0xbb35, 0xbb36, 0xbb37, 0xbb38, 0xbb39, 0xbb3a,
- 0xbb3b, 0xbb3c, 0xbb3d, 0xbb3e, 0xbb3f, 0xbb40, 0xbb41, 0xbb42,
- 0xbb43, 0xbb44, 0x0000, 0xbb45, 0xbb46, 0xbb47, 0xbb48, 0xbb49,
- 0xbb4a, 0xbb4b, 0xbb4c, 0xbb4d, 0xbb4e, 0xbb4f, 0x0000, 0x0000,
- 0x0000, 0xbb50, 0xbb51, 0xbb52, 0xbb53, 0xbb54, 0xbb55, 0xbb56,
- 0xbb57, 0xbb58, 0xbb59, 0xbb5a, 0xbb5b, 0xbb5c, 0xbb5d, 0xbb5e,
- 0xbb5f, 0xbb60, 0x0000, 0xbb61, 0xbb62, 0xbb63, 0xbb64, 0xbb65,
- 0xbb66, 0xbb67, 0xbb68, 0xbb69, 0xbb6a, 0xbb6b, 0x0000, 0x0000,
- 0x0000, 0xbb6c, 0xbb6d, 0xbb6e, 0xbb6f, 0xbb70, 0xbb71, 0xbb72,
- 0xbb73, 0xbb74, 0xbb75, 0xbb76, 0xbb77, 0xbb78, 0xbb79, 0xbb7a,
- 0xbb7b, 0xbb7c, 0x0000, 0xbb7d, 0xbb7e, 0xbb7f, 0xbb80, 0xbb81,
- 0xbb82, 0xbb83, 0xbb84, 0xbb85, 0xbb86, 0xbb87, 0x0000, 0x0000,
- 0x0000, 0xbb88, 0xbb89, 0xbb8a, 0xbb8b, 0xbb8c, 0xbb8d, 0xbb8e,
- 0xbb8f, 0xbb90, 0xbb91, 0xbb92, 0xbb93, 0xbb94, 0xbb95, 0xbb96,
- 0xbb97, 0xbb98, 0x0000, 0xbb99, 0xbb9a, 0xbb9b, 0xbb9c, 0xbb9d,
- 0xbb9e, 0xbb9f, 0xbba0, 0xbba1, 0xbba2, 0xbba3, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xbba4, 0xbba5, 0xbba6, 0xbba7, 0xbba8, 0xbba9, 0xbbaa,
- 0xbbab, 0xbbac, 0xbbad, 0xbbae, 0xbbaf, 0xbbb0, 0xbbb1, 0xbbb2,
- 0xbbb3, 0xbbb4, 0x0000, 0xbbb5, 0xbbb6, 0xbbb7, 0xbbb8, 0xbbb9,
- 0xbbba, 0xbbbb, 0xbbbc, 0xbbbd, 0xbbbe, 0xbbbf, 0x0000, 0x0000,
- 0x0000, 0xbbc0, 0xbbc1, 0xbbc2, 0xbbc3, 0xbbc4, 0xbbc5, 0xbbc6,
- 0xbbc7, 0xbbc8, 0xbbc9, 0xbbca, 0xbbcb, 0xbbcc, 0xbbcd, 0xbbce,
- 0xbbcf, 0xbbd0, 0x0000, 0xbbd1, 0xbbd2, 0xbbd3, 0xbbd4, 0xbbd5,
- 0xbbd6, 0xbbd7, 0xbbd8, 0xbbd9, 0xbbda, 0xbbdb, 0x0000, 0x0000,
- 0x0000, 0xbbdc, 0xbbdd, 0xbbde, 0xbbdf, 0xbbe0, 0xbbe1, 0xbbe2,
- 0xbbe3, 0xbbe4, 0xbbe5, 0xbbe6, 0xbbe7, 0xbbe8, 0xbbe9, 0xbbea,
- 0xbbeb, 0xbbec, 0x0000, 0xbbed, 0xbbee, 0xbbef, 0xbbf0, 0xbbf1,
- 0xbbf2, 0xbbf3, 0xbbf4, 0xbbf5, 0xbbf6, 0xbbf7, 0x0000, 0x0000,
- 0x0000, 0xbbf8, 0xbbf9, 0xbbfa, 0xbbfb, 0xbbfc, 0xbbfd, 0xbbfe,
- 0xbbff, 0xbc00, 0xbc01, 0xbc02, 0xbc03, 0xbc04, 0xbc05, 0xbc06,
- 0xbc07, 0xbc08, 0x0000, 0xbc09, 0xbc0a, 0xbc0b, 0xbc0c, 0xbc0d,
- 0xbc0e, 0xbc0f, 0xbc10, 0xbc11, 0xbc12, 0xbc13, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xbc14, 0xbc15, 0xbc16, 0xbc17, 0xbc18, 0xbc19, 0xbc1a,
- 0xbc1b, 0xbc1c, 0xbc1d, 0xbc1e, 0xbc1f, 0xbc20, 0xbc21, 0xbc22,
- 0xbc23, 0xbc24, 0x0000, 0xbc25, 0xbc26, 0xbc27, 0xbc28, 0xbc29,
- 0xbc2a, 0xbc2b, 0xbc2c, 0xbc2d, 0xbc2e, 0xbc2f, 0x0000, 0x0000,
- 0x0000, 0xbc30, 0xbc31, 0xbc32, 0xbc33, 0xbc34, 0xbc35, 0xbc36,
- 0xbc37, 0xbc38, 0xbc39, 0xbc3a, 0xbc3b, 0xbc3c, 0xbc3d, 0xbc3e,
- 0xbc3f, 0xbc40, 0x0000, 0xbc41, 0xbc42, 0xbc43, 0xbc44, 0xbc45,
- 0xbc46, 0xbc47, 0xbc48, 0xbc49, 0xbc4a, 0xbc4b, 0x0000, 0x0000,
- 0x0000, 0xbc4c, 0xbc4d, 0xbc4e, 0xbc4f, 0xbc50, 0xbc51, 0xbc52,
- 0xbc53, 0xbc54, 0xbc55, 0xbc56, 0xbc57, 0xbc58, 0xbc59, 0xbc5a,
- 0xbc5b, 0xbc5c, 0x0000, 0xbc5d, 0xbc5e, 0xbc5f, 0xbc60, 0xbc61,
- 0xbc62, 0xbc63, 0xbc64, 0xbc65, 0xbc66, 0xbc67, 0x0000, 0x0000,
- 0x0000, 0xbc68, 0xbc69, 0xbc6a, 0xbc6b, 0xbc6c, 0xbc6d, 0xbc6e,
- 0xbc6f, 0xbc70, 0xbc71, 0xbc72, 0xbc73, 0xbc74, 0xbc75, 0xbc76,
- 0xbc77, 0xbc78, 0x0000, 0xbc79, 0xbc7a, 0xbc7b, 0xbc7c, 0xbc7d,
- 0xbc7e, 0xbc7f, 0xbc80, 0xbc81, 0xbc82, 0xbc83, 0x0000, 0x0000,
- 0x0000, 0xbc84, 0xbc85, 0xbc86, 0xbc87, 0xbc88, 0xbc89, 0xbc8a,
- 0xbc8b, 0xbc8c, 0xbc8d, 0xbc8e, 0xbc8f, 0xbc90, 0xbc91, 0xbc92,
- 0xbc93, 0xbc94, 0x0000, 0xbc95, 0xbc96, 0xbc97, 0xbc98, 0xbc99,
- 0xbc9a, 0xbc9b, 0xbc9c, 0xbc9d, 0xbc9e, 0xbc9f, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xbca0, 0xbca1, 0xbca2, 0xbca3, 0xbca4, 0xbca5, 0xbca6,
- 0xbca7, 0xbca8, 0xbca9, 0xbcaa, 0xbcab, 0xbcac, 0xbcad, 0xbcae,
- 0xbcaf, 0xbcb0, 0x0000, 0xbcb1, 0xbcb2, 0xbcb3, 0xbcb4, 0xbcb5,
- 0xbcb6, 0xbcb7, 0xbcb8, 0xbcb9, 0xbcba, 0xbcbb, 0x0000, 0x0000,
- 0x0000, 0xbcbc, 0xbcbd, 0xbcbe, 0xbcbf, 0xbcc0, 0xbcc1, 0xbcc2,
- 0xbcc3, 0xbcc4, 0xbcc5, 0xbcc6, 0xbcc7, 0xbcc8, 0xbcc9, 0xbcca,
- 0xbccb, 0xbccc, 0x0000, 0xbccd, 0xbcce, 0xbccf, 0xbcd0, 0xbcd1,
- 0xbcd2, 0xbcd3, 0xbcd4, 0xbcd5, 0xbcd6, 0xbcd7, 0x0000, 0x0000,
- 0x0000, 0xbcd8, 0xbcd9, 0xbcda, 0xbcdb, 0xbcdc, 0xbcdd, 0xbcde,
- 0xbcdf, 0xbce0, 0xbce1, 0xbce2, 0xbce3, 0xbce4, 0xbce5, 0xbce6,
- 0xbce7, 0xbce8, 0x0000, 0xbce9, 0xbcea, 0xbceb, 0xbcec, 0xbced,
- 0xbcee, 0xbcef, 0xbcf0, 0xbcf1, 0xbcf2, 0xbcf3, 0x0000, 0x0000,
- 0x0000, 0xbcf4, 0xbcf5, 0xbcf6, 0xbcf7, 0xbcf8, 0xbcf9, 0xbcfa,
- 0xbcfb, 0xbcfc, 0xbcfd, 0xbcfe, 0xbcff, 0xbd00, 0xbd01, 0xbd02,
- 0xbd03, 0xbd04, 0x0000, 0xbd05, 0xbd06, 0xbd07, 0xbd08, 0xbd09,
- 0xbd0a, 0xbd0b, 0xbd0c, 0xbd0d, 0xbd0e, 0xbd0f, 0x0000, 0x0000,
- 0x0000, 0xbd10, 0xbd11, 0xbd12, 0xbd13, 0xbd14, 0xbd15, 0xbd16,
- 0xbd17, 0xbd18, 0xbd19, 0xbd1a, 0xbd1b, 0xbd1c, 0xbd1d, 0xbd1e,
- 0xbd1f, 0xbd20, 0x0000, 0xbd21, 0xbd22, 0xbd23, 0xbd24, 0xbd25,
- 0xbd26, 0xbd27, 0xbd28, 0xbd29, 0xbd2a, 0xbd2b, 0x0000, 0x0000,
- 0x0000, 0xbd2c, 0xbd2d, 0xbd2e, 0xbd2f, 0xbd30, 0xbd31, 0xbd32,
- 0xbd33, 0xbd34, 0xbd35, 0xbd36, 0xbd37, 0xbd38, 0xbd39, 0xbd3a,
- 0xbd3b, 0xbd3c, 0x0000, 0xbd3d, 0xbd3e, 0xbd3f, 0xbd40, 0xbd41,
- 0xbd42, 0xbd43, 0xbd44, 0xbd45, 0xbd46, 0xbd47, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xbd48, 0xbd49, 0xbd4a, 0xbd4b, 0xbd4c, 0xbd4d, 0xbd4e,
- 0xbd4f, 0xbd50, 0xbd51, 0xbd52, 0xbd53, 0xbd54, 0xbd55, 0xbd56,
- 0xbd57, 0xbd58, 0x0000, 0xbd59, 0xbd5a, 0xbd5b, 0xbd5c, 0xbd5d,
- 0xbd5e, 0xbd5f, 0xbd60, 0xbd61, 0xbd62, 0xbd63, 0x0000, 0x0000,
- 0x0000, 0xbd64, 0xbd65, 0xbd66, 0xbd67, 0xbd68, 0xbd69, 0xbd6a,
- 0xbd6b, 0xbd6c, 0xbd6d, 0xbd6e, 0xbd6f, 0xbd70, 0xbd71, 0xbd72,
- 0xbd73, 0xbd74, 0x0000, 0xbd75, 0xbd76, 0xbd77, 0xbd78, 0xbd79,
- 0xbd7a, 0xbd7b, 0xbd7c, 0xbd7d, 0xbd7e, 0xbd7f, 0x0000, 0x0000,
- 0x0000, 0xbd80, 0xbd81, 0xbd82, 0xbd83, 0xbd84, 0xbd85, 0xbd86,
- 0xbd87, 0xbd88, 0xbd89, 0xbd8a, 0xbd8b, 0xbd8c, 0xbd8d, 0xbd8e,
- 0xbd8f, 0xbd90, 0x0000, 0xbd91, 0xbd92, 0xbd93, 0xbd94, 0xbd95,
- 0xbd96, 0xbd97, 0xbd98, 0xbd99, 0xbd9a, 0xbd9b, 0x0000, 0x0000,
- 0x0000, 0xbd9c, 0xbd9d, 0xbd9e, 0xbd9f, 0xbda0, 0xbda1, 0xbda2,
- 0xbda3, 0xbda4, 0xbda5, 0xbda6, 0xbda7, 0xbda8, 0xbda9, 0xbdaa,
- 0xbdab, 0xbdac, 0x0000, 0xbdad, 0xbdae, 0xbdaf, 0xbdb0, 0xbdb1,
- 0xbdb2, 0xbdb3, 0xbdb4, 0xbdb5, 0xbdb6, 0xbdb7, 0x0000, 0x0000,
- 0x0000, 0xbdb8, 0xbdb9, 0xbdba, 0xbdbb, 0xbdbc, 0xbdbd, 0xbdbe,
- 0xbdbf, 0xbdc0, 0xbdc1, 0xbdc2, 0xbdc3, 0xbdc4, 0xbdc5, 0xbdc6,
- 0xbdc7, 0xbdc8, 0x0000, 0xbdc9, 0xbdca, 0xbdcb, 0xbdcc, 0xbdcd,
- 0xbdce, 0xbdcf, 0xbdd0, 0xbdd1, 0xbdd2, 0xbdd3, 0x0000, 0x0000,
- 0x0000, 0xbdd4, 0xbdd5, 0xbdd6, 0xbdd7, 0xbdd8, 0xbdd9, 0xbdda,
- 0xbddb, 0xbddc, 0xbddd, 0xbdde, 0xbddf, 0xbde0, 0xbde1, 0xbde2,
- 0xbde3, 0xbde4, 0x0000, 0xbde5, 0xbde6, 0xbde7, 0xbde8, 0xbde9,
- 0xbdea, 0xbdeb, 0xbdec, 0xbded, 0xbdee, 0xbdef, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xbdf0, 0xbdf1, 0xbdf2, 0xbdf3, 0xbdf4, 0xbdf5, 0xbdf6,
- 0xbdf7, 0xbdf8, 0xbdf9, 0xbdfa, 0xbdfb, 0xbdfc, 0xbdfd, 0xbdfe,
- 0xbdff, 0xbe00, 0x0000, 0xbe01, 0xbe02, 0xbe03, 0xbe04, 0xbe05,
- 0xbe06, 0xbe07, 0xbe08, 0xbe09, 0xbe0a, 0xbe0b, 0x0000, 0x0000,
- 0x0000, 0xbe0c, 0xbe0d, 0xbe0e, 0xbe0f, 0xbe10, 0xbe11, 0xbe12,
- 0xbe13, 0xbe14, 0xbe15, 0xbe16, 0xbe17, 0xbe18, 0xbe19, 0xbe1a,
- 0xbe1b, 0xbe1c, 0x0000, 0xbe1d, 0xbe1e, 0xbe1f, 0xbe20, 0xbe21,
- 0xbe22, 0xbe23, 0xbe24, 0xbe25, 0xbe26, 0xbe27, 0x0000, 0x0000,
- 0x0000, 0xbe28, 0xbe29, 0xbe2a, 0xbe2b, 0xbe2c, 0xbe2d, 0xbe2e,
- 0xbe2f, 0xbe30, 0xbe31, 0xbe32, 0xbe33, 0xbe34, 0xbe35, 0xbe36,
- 0xbe37, 0xbe38, 0x0000, 0xbe39, 0xbe3a, 0xbe3b, 0xbe3c, 0xbe3d,
- 0xbe3e, 0xbe3f, 0xbe40, 0xbe41, 0xbe42, 0xbe43, 0x0000, 0x0000,
- 0x0000, 0xbe44, 0xbe45, 0xbe46, 0xbe47, 0xbe48, 0xbe49, 0xbe4a,
- 0xbe4b, 0xbe4c, 0xbe4d, 0xbe4e, 0xbe4f, 0xbe50, 0xbe51, 0xbe52,
- 0xbe53, 0xbe54, 0x0000, 0xbe55, 0xbe56, 0xbe57, 0xbe58, 0xbe59,
- 0xbe5a, 0xbe5b, 0xbe5c, 0xbe5d, 0xbe5e, 0xbe5f, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3143, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xbe60, 0xbe61, 0xbe62, 0xbe63, 0xbe64, 0xbe65, 0xbe66,
- 0xbe67, 0xbe68, 0xbe69, 0xbe6a, 0xbe6b, 0xbe6c, 0xbe6d, 0xbe6e,
- 0xbe6f, 0xbe70, 0x0000, 0xbe71, 0xbe72, 0xbe73, 0xbe74, 0xbe75,
- 0xbe76, 0xbe77, 0xbe78, 0xbe79, 0xbe7a, 0xbe7b, 0x0000, 0x0000,
- 0x0000, 0xbe7c, 0xbe7d, 0xbe7e, 0xbe7f, 0xbe80, 0xbe81, 0xbe82,
- 0xbe83, 0xbe84, 0xbe85, 0xbe86, 0xbe87, 0xbe88, 0xbe89, 0xbe8a,
- 0xbe8b, 0xbe8c, 0x0000, 0xbe8d, 0xbe8e, 0xbe8f, 0xbe90, 0xbe91,
- 0xbe92, 0xbe93, 0xbe94, 0xbe95, 0xbe96, 0xbe97, 0x0000, 0x0000,
- 0x0000, 0xbe98, 0xbe99, 0xbe9a, 0xbe9b, 0xbe9c, 0xbe9d, 0xbe9e,
- 0xbe9f, 0xbea0, 0xbea1, 0xbea2, 0xbea3, 0xbea4, 0xbea5, 0xbea6,
- 0xbea7, 0xbea8, 0x0000, 0xbea9, 0xbeaa, 0xbeab, 0xbeac, 0xbead,
- 0xbeae, 0xbeaf, 0xbeb0, 0xbeb1, 0xbeb2, 0xbeb3, 0x0000, 0x0000,
- 0x0000, 0xbeb4, 0xbeb5, 0xbeb6, 0xbeb7, 0xbeb8, 0xbeb9, 0xbeba,
- 0xbebb, 0xbebc, 0xbebd, 0xbebe, 0xbebf, 0xbec0, 0xbec1, 0xbec2,
- 0xbec3, 0xbec4, 0x0000, 0xbec5, 0xbec6, 0xbec7, 0xbec8, 0xbec9,
- 0xbeca, 0xbecb, 0xbecc, 0xbecd, 0xbece, 0xbecf, 0x0000, 0x0000,
- 0x0000, 0xbed0, 0xbed1, 0xbed2, 0xbed3, 0xbed4, 0xbed5, 0xbed6,
- 0xbed7, 0xbed8, 0xbed9, 0xbeda, 0xbedb, 0xbedc, 0xbedd, 0xbede,
- 0xbedf, 0xbee0, 0x0000, 0xbee1, 0xbee2, 0xbee3, 0xbee4, 0xbee5,
- 0xbee6, 0xbee7, 0xbee8, 0xbee9, 0xbeea, 0xbeeb, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xbeec, 0xbeed, 0xbeee, 0xbeef, 0xbef0, 0xbef1, 0xbef2,
- 0xbef3, 0xbef4, 0xbef5, 0xbef6, 0xbef7, 0xbef8, 0xbef9, 0xbefa,
- 0xbefb, 0xbefc, 0x0000, 0xbefd, 0xbefe, 0xbeff, 0xbf00, 0xbf01,
- 0xbf02, 0xbf03, 0xbf04, 0xbf05, 0xbf06, 0xbf07, 0x0000, 0x0000,
- 0x0000, 0xbf08, 0xbf09, 0xbf0a, 0xbf0b, 0xbf0c, 0xbf0d, 0xbf0e,
- 0xbf0f, 0xbf10, 0xbf11, 0xbf12, 0xbf13, 0xbf14, 0xbf15, 0xbf16,
- 0xbf17, 0xbf18, 0x0000, 0xbf19, 0xbf1a, 0xbf1b, 0xbf1c, 0xbf1d,
- 0xbf1e, 0xbf1f, 0xbf20, 0xbf21, 0xbf22, 0xbf23, 0x0000, 0x0000,
- 0x0000, 0xbf24, 0xbf25, 0xbf26, 0xbf27, 0xbf28, 0xbf29, 0xbf2a,
- 0xbf2b, 0xbf2c, 0xbf2d, 0xbf2e, 0xbf2f, 0xbf30, 0xbf31, 0xbf32,
- 0xbf33, 0xbf34, 0x0000, 0xbf35, 0xbf36, 0xbf37, 0xbf38, 0xbf39,
- 0xbf3a, 0xbf3b, 0xbf3c, 0xbf3d, 0xbf3e, 0xbf3f, 0x0000, 0x0000,
- 0x0000, 0xbf40, 0xbf41, 0xbf42, 0xbf43, 0xbf44, 0xbf45, 0xbf46,
- 0xbf47, 0xbf48, 0xbf49, 0xbf4a, 0xbf4b, 0xbf4c, 0xbf4d, 0xbf4e,
- 0xbf4f, 0xbf50, 0x0000, 0xbf51, 0xbf52, 0xbf53, 0xbf54, 0xbf55,
- 0xbf56, 0xbf57, 0xbf58, 0xbf59, 0xbf5a, 0xbf5b, 0x0000, 0x0000,
- 0x0000, 0xbf5c, 0xbf5d, 0xbf5e, 0xbf5f, 0xbf60, 0xbf61, 0xbf62,
- 0xbf63, 0xbf64, 0xbf65, 0xbf66, 0xbf67, 0xbf68, 0xbf69, 0xbf6a,
- 0xbf6b, 0xbf6c, 0x0000, 0xbf6d, 0xbf6e, 0xbf6f, 0xbf70, 0xbf71,
- 0xbf72, 0xbf73, 0xbf74, 0xbf75, 0xbf76, 0xbf77, 0x0000, 0x0000,
- 0x0000, 0xbf78, 0xbf79, 0xbf7a, 0xbf7b, 0xbf7c, 0xbf7d, 0xbf7e,
- 0xbf7f, 0xbf80, 0xbf81, 0xbf82, 0xbf83, 0xbf84, 0xbf85, 0xbf86,
- 0xbf87, 0xbf88, 0x0000, 0xbf89, 0xbf8a, 0xbf8b, 0xbf8c, 0xbf8d,
- 0xbf8e, 0xbf8f, 0xbf90, 0xbf91, 0xbf92, 0xbf93, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xbf94, 0xbf95, 0xbf96, 0xbf97, 0xbf98, 0xbf99, 0xbf9a,
- 0xbf9b, 0xbf9c, 0xbf9d, 0xbf9e, 0xbf9f, 0xbfa0, 0xbfa1, 0xbfa2,
- 0xbfa3, 0xbfa4, 0x0000, 0xbfa5, 0xbfa6, 0xbfa7, 0xbfa8, 0xbfa9,
- 0xbfaa, 0xbfab, 0xbfac, 0xbfad, 0xbfae, 0xbfaf, 0x0000, 0x0000,
- 0x0000, 0xbfb0, 0xbfb1, 0xbfb2, 0xbfb3, 0xbfb4, 0xbfb5, 0xbfb6,
- 0xbfb7, 0xbfb8, 0xbfb9, 0xbfba, 0xbfbb, 0xbfbc, 0xbfbd, 0xbfbe,
- 0xbfbf, 0xbfc0, 0x0000, 0xbfc1, 0xbfc2, 0xbfc3, 0xbfc4, 0xbfc5,
- 0xbfc6, 0xbfc7, 0xbfc8, 0xbfc9, 0xbfca, 0xbfcb, 0x0000, 0x0000,
- 0x0000, 0xbfcc, 0xbfcd, 0xbfce, 0xbfcf, 0xbfd0, 0xbfd1, 0xbfd2,
- 0xbfd3, 0xbfd4, 0xbfd5, 0xbfd6, 0xbfd7, 0xbfd8, 0xbfd9, 0xbfda,
- 0xbfdb, 0xbfdc, 0x0000, 0xbfdd, 0xbfde, 0xbfdf, 0xbfe0, 0xbfe1,
- 0xbfe2, 0xbfe3, 0xbfe4, 0xbfe5, 0xbfe6, 0xbfe7, 0x0000, 0x0000,
- 0x0000, 0xbfe8, 0xbfe9, 0xbfea, 0xbfeb, 0xbfec, 0xbfed, 0xbfee,
- 0xbfef, 0xbff0, 0xbff1, 0xbff2, 0xbff3, 0xbff4, 0xbff5, 0xbff6,
- 0xbff7, 0xbff8, 0x0000, 0xbff9, 0xbffa, 0xbffb, 0xbffc, 0xbffd,
- 0xbffe, 0xbfff, 0xc000, 0xc001, 0xc002, 0xc003, 0x0000, 0x0000,
- 0x0000, 0xc004, 0xc005, 0xc006, 0xc007, 0xc008, 0xc009, 0xc00a,
- 0xc00b, 0xc00c, 0xc00d, 0xc00e, 0xc00f, 0xc010, 0xc011, 0xc012,
- 0xc013, 0xc014, 0x0000, 0xc015, 0xc016, 0xc017, 0xc018, 0xc019,
- 0xc01a, 0xc01b, 0xc01c, 0xc01d, 0xc01e, 0xc01f, 0x0000, 0x0000,
- 0x0000, 0xc020, 0xc021, 0xc022, 0xc023, 0xc024, 0xc025, 0xc026,
- 0xc027, 0xc028, 0xc029, 0xc02a, 0xc02b, 0xc02c, 0xc02d, 0xc02e,
- 0xc02f, 0xc030, 0x0000, 0xc031, 0xc032, 0xc033, 0xc034, 0xc035,
- 0xc036, 0xc037, 0xc038, 0xc039, 0xc03a, 0xc03b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc03c, 0xc03d, 0xc03e, 0xc03f, 0xc040, 0xc041, 0xc042,
- 0xc043, 0xc044, 0xc045, 0xc046, 0xc047, 0xc048, 0xc049, 0xc04a,
- 0xc04b, 0xc04c, 0x0000, 0xc04d, 0xc04e, 0xc04f, 0xc050, 0xc051,
- 0xc052, 0xc053, 0xc054, 0xc055, 0xc056, 0xc057, 0x0000, 0x0000,
- 0x0000, 0xc058, 0xc059, 0xc05a, 0xc05b, 0xc05c, 0xc05d, 0xc05e,
- 0xc05f, 0xc060, 0xc061, 0xc062, 0xc063, 0xc064, 0xc065, 0xc066,
- 0xc067, 0xc068, 0x0000, 0xc069, 0xc06a, 0xc06b, 0xc06c, 0xc06d,
- 0xc06e, 0xc06f, 0xc070, 0xc071, 0xc072, 0xc073, 0x0000, 0x0000,
- 0x0000, 0xc074, 0xc075, 0xc076, 0xc077, 0xc078, 0xc079, 0xc07a,
- 0xc07b, 0xc07c, 0xc07d, 0xc07e, 0xc07f, 0xc080, 0xc081, 0xc082,
- 0xc083, 0xc084, 0x0000, 0xc085, 0xc086, 0xc087, 0xc088, 0xc089,
- 0xc08a, 0xc08b, 0xc08c, 0xc08d, 0xc08e, 0xc08f, 0x0000, 0x0000,
- 0x0000, 0xc090, 0xc091, 0xc092, 0xc093, 0xc094, 0xc095, 0xc096,
- 0xc097, 0xc098, 0xc099, 0xc09a, 0xc09b, 0xc09c, 0xc09d, 0xc09e,
- 0xc09f, 0xc0a0, 0x0000, 0xc0a1, 0xc0a2, 0xc0a3, 0xc0a4, 0xc0a5,
- 0xc0a6, 0xc0a7, 0xc0a8, 0xc0a9, 0xc0aa, 0xc0ab, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc0ac, 0xc0ad, 0xc0ae, 0xc0af, 0xc0b0, 0xc0b1, 0xc0b2,
- 0xc0b3, 0xc0b4, 0xc0b5, 0xc0b6, 0xc0b7, 0xc0b8, 0xc0b9, 0xc0ba,
- 0xc0bb, 0xc0bc, 0x0000, 0xc0bd, 0xc0be, 0xc0bf, 0xc0c0, 0xc0c1,
- 0xc0c2, 0xc0c3, 0xc0c4, 0xc0c5, 0xc0c6, 0xc0c7, 0x0000, 0x0000,
- 0x0000, 0xc0c8, 0xc0c9, 0xc0ca, 0xc0cb, 0xc0cc, 0xc0cd, 0xc0ce,
- 0xc0cf, 0xc0d0, 0xc0d1, 0xc0d2, 0xc0d3, 0xc0d4, 0xc0d5, 0xc0d6,
- 0xc0d7, 0xc0d8, 0x0000, 0xc0d9, 0xc0da, 0xc0db, 0xc0dc, 0xc0dd,
- 0xc0de, 0xc0df, 0xc0e0, 0xc0e1, 0xc0e2, 0xc0e3, 0x0000, 0x0000,
- 0x0000, 0xc0e4, 0xc0e5, 0xc0e6, 0xc0e7, 0xc0e8, 0xc0e9, 0xc0ea,
- 0xc0eb, 0xc0ec, 0xc0ed, 0xc0ee, 0xc0ef, 0xc0f0, 0xc0f1, 0xc0f2,
- 0xc0f3, 0xc0f4, 0x0000, 0xc0f5, 0xc0f6, 0xc0f7, 0xc0f8, 0xc0f9,
- 0xc0fa, 0xc0fb, 0xc0fc, 0xc0fd, 0xc0fe, 0xc0ff, 0x0000, 0x0000,
- 0x0000, 0xc100, 0xc101, 0xc102, 0xc103, 0xc104, 0xc105, 0xc106,
- 0xc107, 0xc108, 0xc109, 0xc10a, 0xc10b, 0xc10c, 0xc10d, 0xc10e,
- 0xc10f, 0xc110, 0x0000, 0xc111, 0xc112, 0xc113, 0xc114, 0xc115,
- 0xc116, 0xc117, 0xc118, 0xc119, 0xc11a, 0xc11b, 0x0000, 0x0000,
- 0x0000, 0xc11c, 0xc11d, 0xc11e, 0xc11f, 0xc120, 0xc121, 0xc122,
- 0xc123, 0xc124, 0xc125, 0xc126, 0xc127, 0xc128, 0xc129, 0xc12a,
- 0xc12b, 0xc12c, 0x0000, 0xc12d, 0xc12e, 0xc12f, 0xc130, 0xc131,
- 0xc132, 0xc133, 0xc134, 0xc135, 0xc136, 0xc137, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc138, 0xc139, 0xc13a, 0xc13b, 0xc13c, 0xc13d, 0xc13e,
- 0xc13f, 0xc140, 0xc141, 0xc142, 0xc143, 0xc144, 0xc145, 0xc146,
- 0xc147, 0xc148, 0x0000, 0xc149, 0xc14a, 0xc14b, 0xc14c, 0xc14d,
- 0xc14e, 0xc14f, 0xc150, 0xc151, 0xc152, 0xc153, 0x0000, 0x0000,
- 0x0000, 0xc154, 0xc155, 0xc156, 0xc157, 0xc158, 0xc159, 0xc15a,
- 0xc15b, 0xc15c, 0xc15d, 0xc15e, 0xc15f, 0xc160, 0xc161, 0xc162,
- 0xc163, 0xc164, 0x0000, 0xc165, 0xc166, 0xc167, 0xc168, 0xc169,
- 0xc16a, 0xc16b, 0xc16c, 0xc16d, 0xc16e, 0xc16f, 0x0000, 0x0000,
- 0x0000, 0xc170, 0xc171, 0xc172, 0xc173, 0xc174, 0xc175, 0xc176,
- 0xc177, 0xc178, 0xc179, 0xc17a, 0xc17b, 0xc17c, 0xc17d, 0xc17e,
- 0xc17f, 0xc180, 0x0000, 0xc181, 0xc182, 0xc183, 0xc184, 0xc185,
- 0xc186, 0xc187, 0xc188, 0xc189, 0xc18a, 0xc18b, 0x0000, 0x0000,
- 0x0000, 0xc18c, 0xc18d, 0xc18e, 0xc18f, 0xc190, 0xc191, 0xc192,
- 0xc193, 0xc194, 0xc195, 0xc196, 0xc197, 0xc198, 0xc199, 0xc19a,
- 0xc19b, 0xc19c, 0x0000, 0xc19d, 0xc19e, 0xc19f, 0xc1a0, 0xc1a1,
- 0xc1a2, 0xc1a3, 0xc1a4, 0xc1a5, 0xc1a6, 0xc1a7, 0x0000, 0x0000,
- 0x0000, 0xc1a8, 0xc1a9, 0xc1aa, 0xc1ab, 0xc1ac, 0xc1ad, 0xc1ae,
- 0xc1af, 0xc1b0, 0xc1b1, 0xc1b2, 0xc1b3, 0xc1b4, 0xc1b5, 0xc1b6,
- 0xc1b7, 0xc1b8, 0x0000, 0xc1b9, 0xc1ba, 0xc1bb, 0xc1bc, 0xc1bd,
- 0xc1be, 0xc1bf, 0xc1c0, 0xc1c1, 0xc1c2, 0xc1c3, 0x0000, 0x0000,
- 0x0000, 0xc1c4, 0xc1c5, 0xc1c6, 0xc1c7, 0xc1c8, 0xc1c9, 0xc1ca,
- 0xc1cb, 0xc1cc, 0xc1cd, 0xc1ce, 0xc1cf, 0xc1d0, 0xc1d1, 0xc1d2,
- 0xc1d3, 0xc1d4, 0x0000, 0xc1d5, 0xc1d6, 0xc1d7, 0xc1d8, 0xc1d9,
- 0xc1da, 0xc1db, 0xc1dc, 0xc1dd, 0xc1de, 0xc1df, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc1e0, 0xc1e1, 0xc1e2, 0xc1e3, 0xc1e4, 0xc1e5, 0xc1e6,
- 0xc1e7, 0xc1e8, 0xc1e9, 0xc1ea, 0xc1eb, 0xc1ec, 0xc1ed, 0xc1ee,
- 0xc1ef, 0xc1f0, 0x0000, 0xc1f1, 0xc1f2, 0xc1f3, 0xc1f4, 0xc1f5,
- 0xc1f6, 0xc1f7, 0xc1f8, 0xc1f9, 0xc1fa, 0xc1fb, 0x0000, 0x0000,
- 0x0000, 0xc1fc, 0xc1fd, 0xc1fe, 0xc1ff, 0xc200, 0xc201, 0xc202,
- 0xc203, 0xc204, 0xc205, 0xc206, 0xc207, 0xc208, 0xc209, 0xc20a,
- 0xc20b, 0xc20c, 0x0000, 0xc20d, 0xc20e, 0xc20f, 0xc210, 0xc211,
- 0xc212, 0xc213, 0xc214, 0xc215, 0xc216, 0xc217, 0x0000, 0x0000,
- 0x0000, 0xc218, 0xc219, 0xc21a, 0xc21b, 0xc21c, 0xc21d, 0xc21e,
- 0xc21f, 0xc220, 0xc221, 0xc222, 0xc223, 0xc224, 0xc225, 0xc226,
- 0xc227, 0xc228, 0x0000, 0xc229, 0xc22a, 0xc22b, 0xc22c, 0xc22d,
- 0xc22e, 0xc22f, 0xc230, 0xc231, 0xc232, 0xc233, 0x0000, 0x0000,
- 0x0000, 0xc234, 0xc235, 0xc236, 0xc237, 0xc238, 0xc239, 0xc23a,
- 0xc23b, 0xc23c, 0xc23d, 0xc23e, 0xc23f, 0xc240, 0xc241, 0xc242,
- 0xc243, 0xc244, 0x0000, 0xc245, 0xc246, 0xc247, 0xc248, 0xc249,
- 0xc24a, 0xc24b, 0xc24c, 0xc24d, 0xc24e, 0xc24f, 0x0000, 0x0000,
- 0x0000, 0xc250, 0xc251, 0xc252, 0xc253, 0xc254, 0xc255, 0xc256,
- 0xc257, 0xc258, 0xc259, 0xc25a, 0xc25b, 0xc25c, 0xc25d, 0xc25e,
- 0xc25f, 0xc260, 0x0000, 0xc261, 0xc262, 0xc263, 0xc264, 0xc265,
- 0xc266, 0xc267, 0xc268, 0xc269, 0xc26a, 0xc26b, 0x0000, 0x0000,
- 0x0000, 0xc26c, 0xc26d, 0xc26e, 0xc26f, 0xc270, 0xc271, 0xc272,
- 0xc273, 0xc274, 0xc275, 0xc276, 0xc277, 0xc278, 0xc279, 0xc27a,
- 0xc27b, 0xc27c, 0x0000, 0xc27d, 0xc27e, 0xc27f, 0xc280, 0xc281,
- 0xc282, 0xc283, 0xc284, 0xc285, 0xc286, 0xc287, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc288, 0xc289, 0xc28a, 0xc28b, 0xc28c, 0xc28d, 0xc28e,
- 0xc28f, 0xc290, 0xc291, 0xc292, 0xc293, 0xc294, 0xc295, 0xc296,
- 0xc297, 0xc298, 0x0000, 0xc299, 0xc29a, 0xc29b, 0xc29c, 0xc29d,
- 0xc29e, 0xc29f, 0xc2a0, 0xc2a1, 0xc2a2, 0xc2a3, 0x0000, 0x0000,
- 0x0000, 0xc2a4, 0xc2a5, 0xc2a6, 0xc2a7, 0xc2a8, 0xc2a9, 0xc2aa,
- 0xc2ab, 0xc2ac, 0xc2ad, 0xc2ae, 0xc2af, 0xc2b0, 0xc2b1, 0xc2b2,
- 0xc2b3, 0xc2b4, 0x0000, 0xc2b5, 0xc2b6, 0xc2b7, 0xc2b8, 0xc2b9,
- 0xc2ba, 0xc2bb, 0xc2bc, 0xc2bd, 0xc2be, 0xc2bf, 0x0000, 0x0000,
- 0x0000, 0xc2c0, 0xc2c1, 0xc2c2, 0xc2c3, 0xc2c4, 0xc2c5, 0xc2c6,
- 0xc2c7, 0xc2c8, 0xc2c9, 0xc2ca, 0xc2cb, 0xc2cc, 0xc2cd, 0xc2ce,
- 0xc2cf, 0xc2d0, 0x0000, 0xc2d1, 0xc2d2, 0xc2d3, 0xc2d4, 0xc2d5,
- 0xc2d6, 0xc2d7, 0xc2d8, 0xc2d9, 0xc2da, 0xc2db, 0x0000, 0x0000,
- 0x0000, 0xc2dc, 0xc2dd, 0xc2de, 0xc2df, 0xc2e0, 0xc2e1, 0xc2e2,
- 0xc2e3, 0xc2e4, 0xc2e5, 0xc2e6, 0xc2e7, 0xc2e8, 0xc2e9, 0xc2ea,
- 0xc2eb, 0xc2ec, 0x0000, 0xc2ed, 0xc2ee, 0xc2ef, 0xc2f0, 0xc2f1,
- 0xc2f2, 0xc2f3, 0xc2f4, 0xc2f5, 0xc2f6, 0xc2f7, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc2f8, 0xc2f9, 0xc2fa, 0xc2fb, 0xc2fc, 0xc2fd, 0xc2fe,
- 0xc2ff, 0xc300, 0xc301, 0xc302, 0xc303, 0xc304, 0xc305, 0xc306,
- 0xc307, 0xc308, 0x0000, 0xc309, 0xc30a, 0xc30b, 0xc30c, 0xc30d,
- 0xc30e, 0xc30f, 0xc310, 0xc311, 0xc312, 0xc313, 0x0000, 0x0000,
- 0x0000, 0xc314, 0xc315, 0xc316, 0xc317, 0xc318, 0xc319, 0xc31a,
- 0xc31b, 0xc31c, 0xc31d, 0xc31e, 0xc31f, 0xc320, 0xc321, 0xc322,
- 0xc323, 0xc324, 0x0000, 0xc325, 0xc326, 0xc327, 0xc328, 0xc329,
- 0xc32a, 0xc32b, 0xc32c, 0xc32d, 0xc32e, 0xc32f, 0x0000, 0x0000,
- 0x0000, 0xc330, 0xc331, 0xc332, 0xc333, 0xc334, 0xc335, 0xc336,
- 0xc337, 0xc338, 0xc339, 0xc33a, 0xc33b, 0xc33c, 0xc33d, 0xc33e,
- 0xc33f, 0xc340, 0x0000, 0xc341, 0xc342, 0xc343, 0xc344, 0xc345,
- 0xc346, 0xc347, 0xc348, 0xc349, 0xc34a, 0xc34b, 0x0000, 0x0000,
- 0x0000, 0xc34c, 0xc34d, 0xc34e, 0xc34f, 0xc350, 0xc351, 0xc352,
- 0xc353, 0xc354, 0xc355, 0xc356, 0xc357, 0xc358, 0xc359, 0xc35a,
- 0xc35b, 0xc35c, 0x0000, 0xc35d, 0xc35e, 0xc35f, 0xc360, 0xc361,
- 0xc362, 0xc363, 0xc364, 0xc365, 0xc366, 0xc367, 0x0000, 0x0000,
- 0x0000, 0xc368, 0xc369, 0xc36a, 0xc36b, 0xc36c, 0xc36d, 0xc36e,
- 0xc36f, 0xc370, 0xc371, 0xc372, 0xc373, 0xc374, 0xc375, 0xc376,
- 0xc377, 0xc378, 0x0000, 0xc379, 0xc37a, 0xc37b, 0xc37c, 0xc37d,
- 0xc37e, 0xc37f, 0xc380, 0xc381, 0xc382, 0xc383, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc384, 0xc385, 0xc386, 0xc387, 0xc388, 0xc389, 0xc38a,
- 0xc38b, 0xc38c, 0xc38d, 0xc38e, 0xc38f, 0xc390, 0xc391, 0xc392,
- 0xc393, 0xc394, 0x0000, 0xc395, 0xc396, 0xc397, 0xc398, 0xc399,
- 0xc39a, 0xc39b, 0xc39c, 0xc39d, 0xc39e, 0xc39f, 0x0000, 0x0000,
- 0x0000, 0xc3a0, 0xc3a1, 0xc3a2, 0xc3a3, 0xc3a4, 0xc3a5, 0xc3a6,
- 0xc3a7, 0xc3a8, 0xc3a9, 0xc3aa, 0xc3ab, 0xc3ac, 0xc3ad, 0xc3ae,
- 0xc3af, 0xc3b0, 0x0000, 0xc3b1, 0xc3b2, 0xc3b3, 0xc3b4, 0xc3b5,
- 0xc3b6, 0xc3b7, 0xc3b8, 0xc3b9, 0xc3ba, 0xc3bb, 0x0000, 0x0000,
- 0x0000, 0xc3bc, 0xc3bd, 0xc3be, 0xc3bf, 0xc3c0, 0xc3c1, 0xc3c2,
- 0xc3c3, 0xc3c4, 0xc3c5, 0xc3c6, 0xc3c7, 0xc3c8, 0xc3c9, 0xc3ca,
- 0xc3cb, 0xc3cc, 0x0000, 0xc3cd, 0xc3ce, 0xc3cf, 0xc3d0, 0xc3d1,
- 0xc3d2, 0xc3d3, 0xc3d4, 0xc3d5, 0xc3d6, 0xc3d7, 0x0000, 0x0000,
- 0x0000, 0xc3d8, 0xc3d9, 0xc3da, 0xc3db, 0xc3dc, 0xc3dd, 0xc3de,
- 0xc3df, 0xc3e0, 0xc3e1, 0xc3e2, 0xc3e3, 0xc3e4, 0xc3e5, 0xc3e6,
- 0xc3e7, 0xc3e8, 0x0000, 0xc3e9, 0xc3ea, 0xc3eb, 0xc3ec, 0xc3ed,
- 0xc3ee, 0xc3ef, 0xc3f0, 0xc3f1, 0xc3f2, 0xc3f3, 0x0000, 0x0000,
- 0x0000, 0xc3f4, 0xc3f5, 0xc3f6, 0xc3f7, 0xc3f8, 0xc3f9, 0xc3fa,
- 0xc3fb, 0xc3fc, 0xc3fd, 0xc3fe, 0xc3ff, 0xc400, 0xc401, 0xc402,
- 0xc403, 0xc404, 0x0000, 0xc405, 0xc406, 0xc407, 0xc408, 0xc409,
- 0xc40a, 0xc40b, 0xc40c, 0xc40d, 0xc40e, 0xc40f, 0x0000, 0x0000,
- 0x0000, 0xc410, 0xc411, 0xc412, 0xc413, 0xc414, 0xc415, 0xc416,
- 0xc417, 0xc418, 0xc419, 0xc41a, 0xc41b, 0xc41c, 0xc41d, 0xc41e,
- 0xc41f, 0xc420, 0x0000, 0xc421, 0xc422, 0xc423, 0xc424, 0xc425,
- 0xc426, 0xc427, 0xc428, 0xc429, 0xc42a, 0xc42b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc42c, 0xc42d, 0xc42e, 0xc42f, 0xc430, 0xc431, 0xc432,
- 0xc433, 0xc434, 0xc435, 0xc436, 0xc437, 0xc438, 0xc439, 0xc43a,
- 0xc43b, 0xc43c, 0x0000, 0xc43d, 0xc43e, 0xc43f, 0xc440, 0xc441,
- 0xc442, 0xc443, 0xc444, 0xc445, 0xc446, 0xc447, 0x0000, 0x0000,
- 0x0000, 0xc448, 0xc449, 0xc44a, 0xc44b, 0xc44c, 0xc44d, 0xc44e,
- 0xc44f, 0xc450, 0xc451, 0xc452, 0xc453, 0xc454, 0xc455, 0xc456,
- 0xc457, 0xc458, 0x0000, 0xc459, 0xc45a, 0xc45b, 0xc45c, 0xc45d,
- 0xc45e, 0xc45f, 0xc460, 0xc461, 0xc462, 0xc463, 0x0000, 0x0000,
- 0x0000, 0xc464, 0xc465, 0xc466, 0xc467, 0xc468, 0xc469, 0xc46a,
- 0xc46b, 0xc46c, 0xc46d, 0xc46e, 0xc46f, 0xc470, 0xc471, 0xc472,
- 0xc473, 0xc474, 0x0000, 0xc475, 0xc476, 0xc477, 0xc478, 0xc479,
- 0xc47a, 0xc47b, 0xc47c, 0xc47d, 0xc47e, 0xc47f, 0x0000, 0x0000,
- 0x0000, 0xc480, 0xc481, 0xc482, 0xc483, 0xc484, 0xc485, 0xc486,
- 0xc487, 0xc488, 0xc489, 0xc48a, 0xc48b, 0xc48c, 0xc48d, 0xc48e,
- 0xc48f, 0xc490, 0x0000, 0xc491, 0xc492, 0xc493, 0xc494, 0xc495,
- 0xc496, 0xc497, 0xc498, 0xc499, 0xc49a, 0xc49b, 0x0000, 0x0000,
- 0x0000, 0xc49c, 0xc49d, 0xc49e, 0xc49f, 0xc4a0, 0xc4a1, 0xc4a2,
- 0xc4a3, 0xc4a4, 0xc4a5, 0xc4a6, 0xc4a7, 0xc4a8, 0xc4a9, 0xc4aa,
- 0xc4ab, 0xc4ac, 0x0000, 0xc4ad, 0xc4ae, 0xc4af, 0xc4b0, 0xc4b1,
- 0xc4b2, 0xc4b3, 0xc4b4, 0xc4b5, 0xc4b6, 0xc4b7, 0x0000, 0x0000,
- 0x0000, 0xc4b8, 0xc4b9, 0xc4ba, 0xc4bb, 0xc4bc, 0xc4bd, 0xc4be,
- 0xc4bf, 0xc4c0, 0xc4c1, 0xc4c2, 0xc4c3, 0xc4c4, 0xc4c5, 0xc4c6,
- 0xc4c7, 0xc4c8, 0x0000, 0xc4c9, 0xc4ca, 0xc4cb, 0xc4cc, 0xc4cd,
- 0xc4ce, 0xc4cf, 0xc4d0, 0xc4d1, 0xc4d2, 0xc4d3, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc4d4, 0xc4d5, 0xc4d6, 0xc4d7, 0xc4d8, 0xc4d9, 0xc4da,
- 0xc4db, 0xc4dc, 0xc4dd, 0xc4de, 0xc4df, 0xc4e0, 0xc4e1, 0xc4e2,
- 0xc4e3, 0xc4e4, 0x0000, 0xc4e5, 0xc4e6, 0xc4e7, 0xc4e8, 0xc4e9,
- 0xc4ea, 0xc4eb, 0xc4ec, 0xc4ed, 0xc4ee, 0xc4ef, 0x0000, 0x0000,
- 0x0000, 0xc4f0, 0xc4f1, 0xc4f2, 0xc4f3, 0xc4f4, 0xc4f5, 0xc4f6,
- 0xc4f7, 0xc4f8, 0xc4f9, 0xc4fa, 0xc4fb, 0xc4fc, 0xc4fd, 0xc4fe,
- 0xc4ff, 0xc500, 0x0000, 0xc501, 0xc502, 0xc503, 0xc504, 0xc505,
- 0xc506, 0xc507, 0xc508, 0xc509, 0xc50a, 0xc50b, 0x0000, 0x0000,
- 0x0000, 0xc50c, 0xc50d, 0xc50e, 0xc50f, 0xc510, 0xc511, 0xc512,
- 0xc513, 0xc514, 0xc515, 0xc516, 0xc517, 0xc518, 0xc519, 0xc51a,
- 0xc51b, 0xc51c, 0x0000, 0xc51d, 0xc51e, 0xc51f, 0xc520, 0xc521,
- 0xc522, 0xc523, 0xc524, 0xc525, 0xc526, 0xc527, 0x0000, 0x0000,
- 0x0000, 0xc528, 0xc529, 0xc52a, 0xc52b, 0xc52c, 0xc52d, 0xc52e,
- 0xc52f, 0xc530, 0xc531, 0xc532, 0xc533, 0xc534, 0xc535, 0xc536,
- 0xc537, 0xc538, 0x0000, 0xc539, 0xc53a, 0xc53b, 0xc53c, 0xc53d,
- 0xc53e, 0xc53f, 0xc540, 0xc541, 0xc542, 0xc543, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc544, 0xc545, 0xc546, 0xc547, 0xc548, 0xc549, 0xc54a,
- 0xc54b, 0xc54c, 0xc54d, 0xc54e, 0xc54f, 0xc550, 0xc551, 0xc552,
- 0xc553, 0xc554, 0x0000, 0xc555, 0xc556, 0xc557, 0xc558, 0xc559,
- 0xc55a, 0xc55b, 0xc55c, 0xc55d, 0xc55e, 0xc55f, 0x0000, 0x0000,
- 0x0000, 0xc560, 0xc561, 0xc562, 0xc563, 0xc564, 0xc565, 0xc566,
- 0xc567, 0xc568, 0xc569, 0xc56a, 0xc56b, 0xc56c, 0xc56d, 0xc56e,
- 0xc56f, 0xc570, 0x0000, 0xc571, 0xc572, 0xc573, 0xc574, 0xc575,
- 0xc576, 0xc577, 0xc578, 0xc579, 0xc57a, 0xc57b, 0x0000, 0x0000,
- 0x0000, 0xc57c, 0xc57d, 0xc57e, 0xc57f, 0xc580, 0xc581, 0xc582,
- 0xc583, 0xc584, 0xc585, 0xc586, 0xc587, 0xc588, 0xc589, 0xc58a,
- 0xc58b, 0xc58c, 0x0000, 0xc58d, 0xc58e, 0xc58f, 0xc590, 0xc591,
- 0xc592, 0xc593, 0xc594, 0xc595, 0xc596, 0xc597, 0x0000, 0x0000,
- 0x0000, 0xc598, 0xc599, 0xc59a, 0xc59b, 0xc59c, 0xc59d, 0xc59e,
- 0xc59f, 0xc5a0, 0xc5a1, 0xc5a2, 0xc5a3, 0xc5a4, 0xc5a5, 0xc5a6,
- 0xc5a7, 0xc5a8, 0x0000, 0xc5a9, 0xc5aa, 0xc5ab, 0xc5ac, 0xc5ad,
- 0xc5ae, 0xc5af, 0xc5b0, 0xc5b1, 0xc5b2, 0xc5b3, 0x0000, 0x0000,
- 0x0000, 0xc5b4, 0xc5b5, 0xc5b6, 0xc5b7, 0xc5b8, 0xc5b9, 0xc5ba,
- 0xc5bb, 0xc5bc, 0xc5bd, 0xc5be, 0xc5bf, 0xc5c0, 0xc5c1, 0xc5c2,
- 0xc5c3, 0xc5c4, 0x0000, 0xc5c5, 0xc5c6, 0xc5c7, 0xc5c8, 0xc5c9,
- 0xc5ca, 0xc5cb, 0xc5cc, 0xc5cd, 0xc5ce, 0xc5cf, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc5d0, 0xc5d1, 0xc5d2, 0xc5d3, 0xc5d4, 0xc5d5, 0xc5d6,
- 0xc5d7, 0xc5d8, 0xc5d9, 0xc5da, 0xc5db, 0xc5dc, 0xc5dd, 0xc5de,
- 0xc5df, 0xc5e0, 0x0000, 0xc5e1, 0xc5e2, 0xc5e3, 0xc5e4, 0xc5e5,
- 0xc5e6, 0xc5e7, 0xc5e8, 0xc5e9, 0xc5ea, 0xc5eb, 0x0000, 0x0000,
- 0x0000, 0xc5ec, 0xc5ed, 0xc5ee, 0xc5ef, 0xc5f0, 0xc5f1, 0xc5f2,
- 0xc5f3, 0xc5f4, 0xc5f5, 0xc5f6, 0xc5f7, 0xc5f8, 0xc5f9, 0xc5fa,
- 0xc5fb, 0xc5fc, 0x0000, 0xc5fd, 0xc5fe, 0xc5ff, 0xc600, 0xc601,
- 0xc602, 0xc603, 0xc604, 0xc605, 0xc606, 0xc607, 0x0000, 0x0000,
- 0x0000, 0xc608, 0xc609, 0xc60a, 0xc60b, 0xc60c, 0xc60d, 0xc60e,
- 0xc60f, 0xc610, 0xc611, 0xc612, 0xc613, 0xc614, 0xc615, 0xc616,
- 0xc617, 0xc618, 0x0000, 0xc619, 0xc61a, 0xc61b, 0xc61c, 0xc61d,
- 0xc61e, 0xc61f, 0xc620, 0xc621, 0xc622, 0xc623, 0x0000, 0x0000,
- 0x0000, 0xc624, 0xc625, 0xc626, 0xc627, 0xc628, 0xc629, 0xc62a,
- 0xc62b, 0xc62c, 0xc62d, 0xc62e, 0xc62f, 0xc630, 0xc631, 0xc632,
- 0xc633, 0xc634, 0x0000, 0xc635, 0xc636, 0xc637, 0xc638, 0xc639,
- 0xc63a, 0xc63b, 0xc63c, 0xc63d, 0xc63e, 0xc63f, 0x0000, 0x0000,
- 0x0000, 0xc640, 0xc641, 0xc642, 0xc643, 0xc644, 0xc645, 0xc646,
- 0xc647, 0xc648, 0xc649, 0xc64a, 0xc64b, 0xc64c, 0xc64d, 0xc64e,
- 0xc64f, 0xc650, 0x0000, 0xc651, 0xc652, 0xc653, 0xc654, 0xc655,
- 0xc656, 0xc657, 0xc658, 0xc659, 0xc65a, 0xc65b, 0x0000, 0x0000,
- 0x0000, 0xc65c, 0xc65d, 0xc65e, 0xc65f, 0xc660, 0xc661, 0xc662,
- 0xc663, 0xc664, 0xc665, 0xc666, 0xc667, 0xc668, 0xc669, 0xc66a,
- 0xc66b, 0xc66c, 0x0000, 0xc66d, 0xc66e, 0xc66f, 0xc670, 0xc671,
- 0xc672, 0xc673, 0xc674, 0xc675, 0xc676, 0xc677, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc678, 0xc679, 0xc67a, 0xc67b, 0xc67c, 0xc67d, 0xc67e,
- 0xc67f, 0xc680, 0xc681, 0xc682, 0xc683, 0xc684, 0xc685, 0xc686,
- 0xc687, 0xc688, 0x0000, 0xc689, 0xc68a, 0xc68b, 0xc68c, 0xc68d,
- 0xc68e, 0xc68f, 0xc690, 0xc691, 0xc692, 0xc693, 0x0000, 0x0000,
- 0x0000, 0xc694, 0xc695, 0xc696, 0xc697, 0xc698, 0xc699, 0xc69a,
- 0xc69b, 0xc69c, 0xc69d, 0xc69e, 0xc69f, 0xc6a0, 0xc6a1, 0xc6a2,
- 0xc6a3, 0xc6a4, 0x0000, 0xc6a5, 0xc6a6, 0xc6a7, 0xc6a8, 0xc6a9,
- 0xc6aa, 0xc6ab, 0xc6ac, 0xc6ad, 0xc6ae, 0xc6af, 0x0000, 0x0000,
- 0x0000, 0xc6b0, 0xc6b1, 0xc6b2, 0xc6b3, 0xc6b4, 0xc6b5, 0xc6b6,
- 0xc6b7, 0xc6b8, 0xc6b9, 0xc6ba, 0xc6bb, 0xc6bc, 0xc6bd, 0xc6be,
- 0xc6bf, 0xc6c0, 0x0000, 0xc6c1, 0xc6c2, 0xc6c3, 0xc6c4, 0xc6c5,
- 0xc6c6, 0xc6c7, 0xc6c8, 0xc6c9, 0xc6ca, 0xc6cb, 0x0000, 0x0000,
- 0x0000, 0xc6cc, 0xc6cd, 0xc6ce, 0xc6cf, 0xc6d0, 0xc6d1, 0xc6d2,
- 0xc6d3, 0xc6d4, 0xc6d5, 0xc6d6, 0xc6d7, 0xc6d8, 0xc6d9, 0xc6da,
- 0xc6db, 0xc6dc, 0x0000, 0xc6dd, 0xc6de, 0xc6df, 0xc6e0, 0xc6e1,
- 0xc6e2, 0xc6e3, 0xc6e4, 0xc6e5, 0xc6e6, 0xc6e7, 0x0000, 0x0000,
- 0x0000, 0xc6e8, 0xc6e9, 0xc6ea, 0xc6eb, 0xc6ec, 0xc6ed, 0xc6ee,
- 0xc6ef, 0xc6f0, 0xc6f1, 0xc6f2, 0xc6f3, 0xc6f4, 0xc6f5, 0xc6f6,
- 0xc6f7, 0xc6f8, 0x0000, 0xc6f9, 0xc6fa, 0xc6fb, 0xc6fc, 0xc6fd,
- 0xc6fe, 0xc6ff, 0xc700, 0xc701, 0xc702, 0xc703, 0x0000, 0x0000,
- 0x0000, 0xc704, 0xc705, 0xc706, 0xc707, 0xc708, 0xc709, 0xc70a,
- 0xc70b, 0xc70c, 0xc70d, 0xc70e, 0xc70f, 0xc710, 0xc711, 0xc712,
- 0xc713, 0xc714, 0x0000, 0xc715, 0xc716, 0xc717, 0xc718, 0xc719,
- 0xc71a, 0xc71b, 0xc71c, 0xc71d, 0xc71e, 0xc71f, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc720, 0xc721, 0xc722, 0xc723, 0xc724, 0xc725, 0xc726,
- 0xc727, 0xc728, 0xc729, 0xc72a, 0xc72b, 0xc72c, 0xc72d, 0xc72e,
- 0xc72f, 0xc730, 0x0000, 0xc731, 0xc732, 0xc733, 0xc734, 0xc735,
- 0xc736, 0xc737, 0xc738, 0xc739, 0xc73a, 0xc73b, 0x0000, 0x0000,
- 0x0000, 0xc73c, 0xc73d, 0xc73e, 0xc73f, 0xc740, 0xc741, 0xc742,
- 0xc743, 0xc744, 0xc745, 0xc746, 0xc747, 0xc748, 0xc749, 0xc74a,
- 0xc74b, 0xc74c, 0x0000, 0xc74d, 0xc74e, 0xc74f, 0xc750, 0xc751,
- 0xc752, 0xc753, 0xc754, 0xc755, 0xc756, 0xc757, 0x0000, 0x0000,
- 0x0000, 0xc758, 0xc759, 0xc75a, 0xc75b, 0xc75c, 0xc75d, 0xc75e,
- 0xc75f, 0xc760, 0xc761, 0xc762, 0xc763, 0xc764, 0xc765, 0xc766,
- 0xc767, 0xc768, 0x0000, 0xc769, 0xc76a, 0xc76b, 0xc76c, 0xc76d,
- 0xc76e, 0xc76f, 0xc770, 0xc771, 0xc772, 0xc773, 0x0000, 0x0000,
- 0x0000, 0xc774, 0xc775, 0xc776, 0xc777, 0xc778, 0xc779, 0xc77a,
- 0xc77b, 0xc77c, 0xc77d, 0xc77e, 0xc77f, 0xc780, 0xc781, 0xc782,
- 0xc783, 0xc784, 0x0000, 0xc785, 0xc786, 0xc787, 0xc788, 0xc789,
- 0xc78a, 0xc78b, 0xc78c, 0xc78d, 0xc78e, 0xc78f, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc790, 0xc791, 0xc792, 0xc793, 0xc794, 0xc795, 0xc796,
- 0xc797, 0xc798, 0xc799, 0xc79a, 0xc79b, 0xc79c, 0xc79d, 0xc79e,
- 0xc79f, 0xc7a0, 0x0000, 0xc7a1, 0xc7a2, 0xc7a3, 0xc7a4, 0xc7a5,
- 0xc7a6, 0xc7a7, 0xc7a8, 0xc7a9, 0xc7aa, 0xc7ab, 0x0000, 0x0000,
- 0x0000, 0xc7ac, 0xc7ad, 0xc7ae, 0xc7af, 0xc7b0, 0xc7b1, 0xc7b2,
- 0xc7b3, 0xc7b4, 0xc7b5, 0xc7b6, 0xc7b7, 0xc7b8, 0xc7b9, 0xc7ba,
- 0xc7bb, 0xc7bc, 0x0000, 0xc7bd, 0xc7be, 0xc7bf, 0xc7c0, 0xc7c1,
- 0xc7c2, 0xc7c3, 0xc7c4, 0xc7c5, 0xc7c6, 0xc7c7, 0x0000, 0x0000,
- 0x0000, 0xc7c8, 0xc7c9, 0xc7ca, 0xc7cb, 0xc7cc, 0xc7cd, 0xc7ce,
- 0xc7cf, 0xc7d0, 0xc7d1, 0xc7d2, 0xc7d3, 0xc7d4, 0xc7d5, 0xc7d6,
- 0xc7d7, 0xc7d8, 0x0000, 0xc7d9, 0xc7da, 0xc7db, 0xc7dc, 0xc7dd,
- 0xc7de, 0xc7df, 0xc7e0, 0xc7e1, 0xc7e2, 0xc7e3, 0x0000, 0x0000,
- 0x0000, 0xc7e4, 0xc7e5, 0xc7e6, 0xc7e7, 0xc7e8, 0xc7e9, 0xc7ea,
- 0xc7eb, 0xc7ec, 0xc7ed, 0xc7ee, 0xc7ef, 0xc7f0, 0xc7f1, 0xc7f2,
- 0xc7f3, 0xc7f4, 0x0000, 0xc7f5, 0xc7f6, 0xc7f7, 0xc7f8, 0xc7f9,
- 0xc7fa, 0xc7fb, 0xc7fc, 0xc7fd, 0xc7fe, 0xc7ff, 0x0000, 0x0000,
- 0x0000, 0xc800, 0xc801, 0xc802, 0xc803, 0xc804, 0xc805, 0xc806,
- 0xc807, 0xc808, 0xc809, 0xc80a, 0xc80b, 0xc80c, 0xc80d, 0xc80e,
- 0xc80f, 0xc810, 0x0000, 0xc811, 0xc812, 0xc813, 0xc814, 0xc815,
- 0xc816, 0xc817, 0xc818, 0xc819, 0xc81a, 0xc81b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc81c, 0xc81d, 0xc81e, 0xc81f, 0xc820, 0xc821, 0xc822,
- 0xc823, 0xc824, 0xc825, 0xc826, 0xc827, 0xc828, 0xc829, 0xc82a,
- 0xc82b, 0xc82c, 0x0000, 0xc82d, 0xc82e, 0xc82f, 0xc830, 0xc831,
- 0xc832, 0xc833, 0xc834, 0xc835, 0xc836, 0xc837, 0x0000, 0x0000,
- 0x0000, 0xc838, 0xc839, 0xc83a, 0xc83b, 0xc83c, 0xc83d, 0xc83e,
- 0xc83f, 0xc840, 0xc841, 0xc842, 0xc843, 0xc844, 0xc845, 0xc846,
- 0xc847, 0xc848, 0x0000, 0xc849, 0xc84a, 0xc84b, 0xc84c, 0xc84d,
- 0xc84e, 0xc84f, 0xc850, 0xc851, 0xc852, 0xc853, 0x0000, 0x0000,
- 0x0000, 0xc854, 0xc855, 0xc856, 0xc857, 0xc858, 0xc859, 0xc85a,
- 0xc85b, 0xc85c, 0xc85d, 0xc85e, 0xc85f, 0xc860, 0xc861, 0xc862,
- 0xc863, 0xc864, 0x0000, 0xc865, 0xc866, 0xc867, 0xc868, 0xc869,
- 0xc86a, 0xc86b, 0xc86c, 0xc86d, 0xc86e, 0xc86f, 0x0000, 0x0000,
- 0x0000, 0xc870, 0xc871, 0xc872, 0xc873, 0xc874, 0xc875, 0xc876,
- 0xc877, 0xc878, 0xc879, 0xc87a, 0xc87b, 0xc87c, 0xc87d, 0xc87e,
- 0xc87f, 0xc880, 0x0000, 0xc881, 0xc882, 0xc883, 0xc884, 0xc885,
- 0xc886, 0xc887, 0xc888, 0xc889, 0xc88a, 0xc88b, 0x0000, 0x0000,
- 0x0000, 0xc88c, 0xc88d, 0xc88e, 0xc88f, 0xc890, 0xc891, 0xc892,
- 0xc893, 0xc894, 0xc895, 0xc896, 0xc897, 0xc898, 0xc899, 0xc89a,
- 0xc89b, 0xc89c, 0x0000, 0xc89d, 0xc89e, 0xc89f, 0xc8a0, 0xc8a1,
- 0xc8a2, 0xc8a3, 0xc8a4, 0xc8a5, 0xc8a6, 0xc8a7, 0x0000, 0x0000,
- 0x0000, 0xc8a8, 0xc8a9, 0xc8aa, 0xc8ab, 0xc8ac, 0xc8ad, 0xc8ae,
- 0xc8af, 0xc8b0, 0xc8b1, 0xc8b2, 0xc8b3, 0xc8b4, 0xc8b5, 0xc8b6,
- 0xc8b7, 0xc8b8, 0x0000, 0xc8b9, 0xc8ba, 0xc8bb, 0xc8bc, 0xc8bd,
- 0xc8be, 0xc8bf, 0xc8c0, 0xc8c1, 0xc8c2, 0xc8c3, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc8c4, 0xc8c5, 0xc8c6, 0xc8c7, 0xc8c8, 0xc8c9, 0xc8ca,
- 0xc8cb, 0xc8cc, 0xc8cd, 0xc8ce, 0xc8cf, 0xc8d0, 0xc8d1, 0xc8d2,
- 0xc8d3, 0xc8d4, 0x0000, 0xc8d5, 0xc8d6, 0xc8d7, 0xc8d8, 0xc8d9,
- 0xc8da, 0xc8db, 0xc8dc, 0xc8dd, 0xc8de, 0xc8df, 0x0000, 0x0000,
- 0x0000, 0xc8e0, 0xc8e1, 0xc8e2, 0xc8e3, 0xc8e4, 0xc8e5, 0xc8e6,
- 0xc8e7, 0xc8e8, 0xc8e9, 0xc8ea, 0xc8eb, 0xc8ec, 0xc8ed, 0xc8ee,
- 0xc8ef, 0xc8f0, 0x0000, 0xc8f1, 0xc8f2, 0xc8f3, 0xc8f4, 0xc8f5,
- 0xc8f6, 0xc8f7, 0xc8f8, 0xc8f9, 0xc8fa, 0xc8fb, 0x0000, 0x0000,
- 0x0000, 0xc8fc, 0xc8fd, 0xc8fe, 0xc8ff, 0xc900, 0xc901, 0xc902,
- 0xc903, 0xc904, 0xc905, 0xc906, 0xc907, 0xc908, 0xc909, 0xc90a,
- 0xc90b, 0xc90c, 0x0000, 0xc90d, 0xc90e, 0xc90f, 0xc910, 0xc911,
- 0xc912, 0xc913, 0xc914, 0xc915, 0xc916, 0xc917, 0x0000, 0x0000,
- 0x0000, 0xc918, 0xc919, 0xc91a, 0xc91b, 0xc91c, 0xc91d, 0xc91e,
- 0xc91f, 0xc920, 0xc921, 0xc922, 0xc923, 0xc924, 0xc925, 0xc926,
- 0xc927, 0xc928, 0x0000, 0xc929, 0xc92a, 0xc92b, 0xc92c, 0xc92d,
- 0xc92e, 0xc92f, 0xc930, 0xc931, 0xc932, 0xc933, 0x0000, 0x0000,
- 0x0000, 0xc934, 0xc935, 0xc936, 0xc937, 0xc938, 0xc939, 0xc93a,
- 0xc93b, 0xc93c, 0xc93d, 0xc93e, 0xc93f, 0xc940, 0xc941, 0xc942,
- 0xc943, 0xc944, 0x0000, 0xc945, 0xc946, 0xc947, 0xc948, 0xc949,
- 0xc94a, 0xc94b, 0xc94c, 0xc94d, 0xc94e, 0xc94f, 0x0000, 0x0000,
- 0x0000, 0xc950, 0xc951, 0xc952, 0xc953, 0xc954, 0xc955, 0xc956,
- 0xc957, 0xc958, 0xc959, 0xc95a, 0xc95b, 0xc95c, 0xc95d, 0xc95e,
- 0xc95f, 0xc960, 0x0000, 0xc961, 0xc962, 0xc963, 0xc964, 0xc965,
- 0xc966, 0xc967, 0xc968, 0xc969, 0xc96a, 0xc96b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc96c, 0xc96d, 0xc96e, 0xc96f, 0xc970, 0xc971, 0xc972,
- 0xc973, 0xc974, 0xc975, 0xc976, 0xc977, 0xc978, 0xc979, 0xc97a,
- 0xc97b, 0xc97c, 0x0000, 0xc97d, 0xc97e, 0xc97f, 0xc980, 0xc981,
- 0xc982, 0xc983, 0xc984, 0xc985, 0xc986, 0xc987, 0x0000, 0x0000,
- 0x0000, 0xc988, 0xc989, 0xc98a, 0xc98b, 0xc98c, 0xc98d, 0xc98e,
- 0xc98f, 0xc990, 0xc991, 0xc992, 0xc993, 0xc994, 0xc995, 0xc996,
- 0xc997, 0xc998, 0x0000, 0xc999, 0xc99a, 0xc99b, 0xc99c, 0xc99d,
- 0xc99e, 0xc99f, 0xc9a0, 0xc9a1, 0xc9a2, 0xc9a3, 0x0000, 0x0000,
- 0x0000, 0xc9a4, 0xc9a5, 0xc9a6, 0xc9a7, 0xc9a8, 0xc9a9, 0xc9aa,
- 0xc9ab, 0xc9ac, 0xc9ad, 0xc9ae, 0xc9af, 0xc9b0, 0xc9b1, 0xc9b2,
- 0xc9b3, 0xc9b4, 0x0000, 0xc9b5, 0xc9b6, 0xc9b7, 0xc9b8, 0xc9b9,
- 0xc9ba, 0xc9bb, 0xc9bc, 0xc9bd, 0xc9be, 0xc9bf, 0x0000, 0x0000,
- 0x0000, 0xc9c0, 0xc9c1, 0xc9c2, 0xc9c3, 0xc9c4, 0xc9c5, 0xc9c6,
- 0xc9c7, 0xc9c8, 0xc9c9, 0xc9ca, 0xc9cb, 0xc9cc, 0xc9cd, 0xc9ce,
- 0xc9cf, 0xc9d0, 0x0000, 0xc9d1, 0xc9d2, 0xc9d3, 0xc9d4, 0xc9d5,
- 0xc9d6, 0xc9d7, 0xc9d8, 0xc9d9, 0xc9da, 0xc9db, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3149, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xc9dc, 0xc9dd, 0xc9de, 0xc9df, 0xc9e0, 0xc9e1, 0xc9e2,
- 0xc9e3, 0xc9e4, 0xc9e5, 0xc9e6, 0xc9e7, 0xc9e8, 0xc9e9, 0xc9ea,
- 0xc9eb, 0xc9ec, 0x0000, 0xc9ed, 0xc9ee, 0xc9ef, 0xc9f0, 0xc9f1,
- 0xc9f2, 0xc9f3, 0xc9f4, 0xc9f5, 0xc9f6, 0xc9f7, 0x0000, 0x0000,
- 0x0000, 0xc9f8, 0xc9f9, 0xc9fa, 0xc9fb, 0xc9fc, 0xc9fd, 0xc9fe,
- 0xc9ff, 0xca00, 0xca01, 0xca02, 0xca03, 0xca04, 0xca05, 0xca06,
- 0xca07, 0xca08, 0x0000, 0xca09, 0xca0a, 0xca0b, 0xca0c, 0xca0d,
- 0xca0e, 0xca0f, 0xca10, 0xca11, 0xca12, 0xca13, 0x0000, 0x0000,
- 0x0000, 0xca14, 0xca15, 0xca16, 0xca17, 0xca18, 0xca19, 0xca1a,
- 0xca1b, 0xca1c, 0xca1d, 0xca1e, 0xca1f, 0xca20, 0xca21, 0xca22,
- 0xca23, 0xca24, 0x0000, 0xca25, 0xca26, 0xca27, 0xca28, 0xca29,
- 0xca2a, 0xca2b, 0xca2c, 0xca2d, 0xca2e, 0xca2f, 0x0000, 0x0000,
- 0x0000, 0xca30, 0xca31, 0xca32, 0xca33, 0xca34, 0xca35, 0xca36,
- 0xca37, 0xca38, 0xca39, 0xca3a, 0xca3b, 0xca3c, 0xca3d, 0xca3e,
- 0xca3f, 0xca40, 0x0000, 0xca41, 0xca42, 0xca43, 0xca44, 0xca45,
- 0xca46, 0xca47, 0xca48, 0xca49, 0xca4a, 0xca4b, 0x0000, 0x0000,
- 0x0000, 0xca4c, 0xca4d, 0xca4e, 0xca4f, 0xca50, 0xca51, 0xca52,
- 0xca53, 0xca54, 0xca55, 0xca56, 0xca57, 0xca58, 0xca59, 0xca5a,
- 0xca5b, 0xca5c, 0x0000, 0xca5d, 0xca5e, 0xca5f, 0xca60, 0xca61,
- 0xca62, 0xca63, 0xca64, 0xca65, 0xca66, 0xca67, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xca68, 0xca69, 0xca6a, 0xca6b, 0xca6c, 0xca6d, 0xca6e,
- 0xca6f, 0xca70, 0xca71, 0xca72, 0xca73, 0xca74, 0xca75, 0xca76,
- 0xca77, 0xca78, 0x0000, 0xca79, 0xca7a, 0xca7b, 0xca7c, 0xca7d,
- 0xca7e, 0xca7f, 0xca80, 0xca81, 0xca82, 0xca83, 0x0000, 0x0000,
- 0x0000, 0xca84, 0xca85, 0xca86, 0xca87, 0xca88, 0xca89, 0xca8a,
- 0xca8b, 0xca8c, 0xca8d, 0xca8e, 0xca8f, 0xca90, 0xca91, 0xca92,
- 0xca93, 0xca94, 0x0000, 0xca95, 0xca96, 0xca97, 0xca98, 0xca99,
- 0xca9a, 0xca9b, 0xca9c, 0xca9d, 0xca9e, 0xca9f, 0x0000, 0x0000,
- 0x0000, 0xcaa0, 0xcaa1, 0xcaa2, 0xcaa3, 0xcaa4, 0xcaa5, 0xcaa6,
- 0xcaa7, 0xcaa8, 0xcaa9, 0xcaaa, 0xcaab, 0xcaac, 0xcaad, 0xcaae,
- 0xcaaf, 0xcab0, 0x0000, 0xcab1, 0xcab2, 0xcab3, 0xcab4, 0xcab5,
- 0xcab6, 0xcab7, 0xcab8, 0xcab9, 0xcaba, 0xcabb, 0x0000, 0x0000,
- 0x0000, 0xcabc, 0xcabd, 0xcabe, 0xcabf, 0xcac0, 0xcac1, 0xcac2,
- 0xcac3, 0xcac4, 0xcac5, 0xcac6, 0xcac7, 0xcac8, 0xcac9, 0xcaca,
- 0xcacb, 0xcacc, 0x0000, 0xcacd, 0xcace, 0xcacf, 0xcad0, 0xcad1,
- 0xcad2, 0xcad3, 0xcad4, 0xcad5, 0xcad6, 0xcad7, 0x0000, 0x0000,
- 0x0000, 0xcad8, 0xcad9, 0xcada, 0xcadb, 0xcadc, 0xcadd, 0xcade,
- 0xcadf, 0xcae0, 0xcae1, 0xcae2, 0xcae3, 0xcae4, 0xcae5, 0xcae6,
- 0xcae7, 0xcae8, 0x0000, 0xcae9, 0xcaea, 0xcaeb, 0xcaec, 0xcaed,
- 0xcaee, 0xcaef, 0xcaf0, 0xcaf1, 0xcaf2, 0xcaf3, 0x0000, 0x0000,
- 0x0000, 0xcaf4, 0xcaf5, 0xcaf6, 0xcaf7, 0xcaf8, 0xcaf9, 0xcafa,
- 0xcafb, 0xcafc, 0xcafd, 0xcafe, 0xcaff, 0xcb00, 0xcb01, 0xcb02,
- 0xcb03, 0xcb04, 0x0000, 0xcb05, 0xcb06, 0xcb07, 0xcb08, 0xcb09,
- 0xcb0a, 0xcb0b, 0xcb0c, 0xcb0d, 0xcb0e, 0xcb0f, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xcb10, 0xcb11, 0xcb12, 0xcb13, 0xcb14, 0xcb15, 0xcb16,
- 0xcb17, 0xcb18, 0xcb19, 0xcb1a, 0xcb1b, 0xcb1c, 0xcb1d, 0xcb1e,
- 0xcb1f, 0xcb20, 0x0000, 0xcb21, 0xcb22, 0xcb23, 0xcb24, 0xcb25,
- 0xcb26, 0xcb27, 0xcb28, 0xcb29, 0xcb2a, 0xcb2b, 0x0000, 0x0000,
- 0x0000, 0xcb2c, 0xcb2d, 0xcb2e, 0xcb2f, 0xcb30, 0xcb31, 0xcb32,
- 0xcb33, 0xcb34, 0xcb35, 0xcb36, 0xcb37, 0xcb38, 0xcb39, 0xcb3a,
- 0xcb3b, 0xcb3c, 0x0000, 0xcb3d, 0xcb3e, 0xcb3f, 0xcb40, 0xcb41,
- 0xcb42, 0xcb43, 0xcb44, 0xcb45, 0xcb46, 0xcb47, 0x0000, 0x0000,
- 0x0000, 0xcb48, 0xcb49, 0xcb4a, 0xcb4b, 0xcb4c, 0xcb4d, 0xcb4e,
- 0xcb4f, 0xcb50, 0xcb51, 0xcb52, 0xcb53, 0xcb54, 0xcb55, 0xcb56,
- 0xcb57, 0xcb58, 0x0000, 0xcb59, 0xcb5a, 0xcb5b, 0xcb5c, 0xcb5d,
- 0xcb5e, 0xcb5f, 0xcb60, 0xcb61, 0xcb62, 0xcb63, 0x0000, 0x0000,
- 0x0000, 0xcb64, 0xcb65, 0xcb66, 0xcb67, 0xcb68, 0xcb69, 0xcb6a,
- 0xcb6b, 0xcb6c, 0xcb6d, 0xcb6e, 0xcb6f, 0xcb70, 0xcb71, 0xcb72,
- 0xcb73, 0xcb74, 0x0000, 0xcb75, 0xcb76, 0xcb77, 0xcb78, 0xcb79,
- 0xcb7a, 0xcb7b, 0xcb7c, 0xcb7d, 0xcb7e, 0xcb7f, 0x0000, 0x0000,
- 0x0000, 0xcb80, 0xcb81, 0xcb82, 0xcb83, 0xcb84, 0xcb85, 0xcb86,
- 0xcb87, 0xcb88, 0xcb89, 0xcb8a, 0xcb8b, 0xcb8c, 0xcb8d, 0xcb8e,
- 0xcb8f, 0xcb90, 0x0000, 0xcb91, 0xcb92, 0xcb93, 0xcb94, 0xcb95,
- 0xcb96, 0xcb97, 0xcb98, 0xcb99, 0xcb9a, 0xcb9b, 0x0000, 0x0000,
- 0x0000, 0xcb9c, 0xcb9d, 0xcb9e, 0xcb9f, 0xcba0, 0xcba1, 0xcba2,
- 0xcba3, 0xcba4, 0xcba5, 0xcba6, 0xcba7, 0xcba8, 0xcba9, 0xcbaa,
- 0xcbab, 0xcbac, 0x0000, 0xcbad, 0xcbae, 0xcbaf, 0xcbb0, 0xcbb1,
- 0xcbb2, 0xcbb3, 0xcbb4, 0xcbb5, 0xcbb6, 0xcbb7, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xcbb8, 0xcbb9, 0xcbba, 0xcbbb, 0xcbbc, 0xcbbd, 0xcbbe,
- 0xcbbf, 0xcbc0, 0xcbc1, 0xcbc2, 0xcbc3, 0xcbc4, 0xcbc5, 0xcbc6,
- 0xcbc7, 0xcbc8, 0x0000, 0xcbc9, 0xcbca, 0xcbcb, 0xcbcc, 0xcbcd,
- 0xcbce, 0xcbcf, 0xcbd0, 0xcbd1, 0xcbd2, 0xcbd3, 0x0000, 0x0000,
- 0x0000, 0xcbd4, 0xcbd5, 0xcbd6, 0xcbd7, 0xcbd8, 0xcbd9, 0xcbda,
- 0xcbdb, 0xcbdc, 0xcbdd, 0xcbde, 0xcbdf, 0xcbe0, 0xcbe1, 0xcbe2,
- 0xcbe3, 0xcbe4, 0x0000, 0xcbe5, 0xcbe6, 0xcbe7, 0xcbe8, 0xcbe9,
- 0xcbea, 0xcbeb, 0xcbec, 0xcbed, 0xcbee, 0xcbef, 0x0000, 0x0000,
- 0x0000, 0xcbf0, 0xcbf1, 0xcbf2, 0xcbf3, 0xcbf4, 0xcbf5, 0xcbf6,
- 0xcbf7, 0xcbf8, 0xcbf9, 0xcbfa, 0xcbfb, 0xcbfc, 0xcbfd, 0xcbfe,
- 0xcbff, 0xcc00, 0x0000, 0xcc01, 0xcc02, 0xcc03, 0xcc04, 0xcc05,
- 0xcc06, 0xcc07, 0xcc08, 0xcc09, 0xcc0a, 0xcc0b, 0x0000, 0x0000,
- 0x0000, 0xcc0c, 0xcc0d, 0xcc0e, 0xcc0f, 0xcc10, 0xcc11, 0xcc12,
- 0xcc13, 0xcc14, 0xcc15, 0xcc16, 0xcc17, 0xcc18, 0xcc19, 0xcc1a,
- 0xcc1b, 0xcc1c, 0x0000, 0xcc1d, 0xcc1e, 0xcc1f, 0xcc20, 0xcc21,
- 0xcc22, 0xcc23, 0xcc24, 0xcc25, 0xcc26, 0xcc27, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xcc28, 0xcc29, 0xcc2a, 0xcc2b, 0xcc2c, 0xcc2d, 0xcc2e,
- 0xcc2f, 0xcc30, 0xcc31, 0xcc32, 0xcc33, 0xcc34, 0xcc35, 0xcc36,
- 0xcc37, 0xcc38, 0x0000, 0xcc39, 0xcc3a, 0xcc3b, 0xcc3c, 0xcc3d,
- 0xcc3e, 0xcc3f, 0xcc40, 0xcc41, 0xcc42, 0xcc43, 0x0000, 0x0000,
- 0x0000, 0xcc44, 0xcc45, 0xcc46, 0xcc47, 0xcc48, 0xcc49, 0xcc4a,
- 0xcc4b, 0xcc4c, 0xcc4d, 0xcc4e, 0xcc4f, 0xcc50, 0xcc51, 0xcc52,
- 0xcc53, 0xcc54, 0x0000, 0xcc55, 0xcc56, 0xcc57, 0xcc58, 0xcc59,
- 0xcc5a, 0xcc5b, 0xcc5c, 0xcc5d, 0xcc5e, 0xcc5f, 0x0000, 0x0000,
- 0x0000, 0xcc60, 0xcc61, 0xcc62, 0xcc63, 0xcc64, 0xcc65, 0xcc66,
- 0xcc67, 0xcc68, 0xcc69, 0xcc6a, 0xcc6b, 0xcc6c, 0xcc6d, 0xcc6e,
- 0xcc6f, 0xcc70, 0x0000, 0xcc71, 0xcc72, 0xcc73, 0xcc74, 0xcc75,
- 0xcc76, 0xcc77, 0xcc78, 0xcc79, 0xcc7a, 0xcc7b, 0x0000, 0x0000,
- 0x0000, 0xcc7c, 0xcc7d, 0xcc7e, 0xcc7f, 0xcc80, 0xcc81, 0xcc82,
- 0xcc83, 0xcc84, 0xcc85, 0xcc86, 0xcc87, 0xcc88, 0xcc89, 0xcc8a,
- 0xcc8b, 0xcc8c, 0x0000, 0xcc8d, 0xcc8e, 0xcc8f, 0xcc90, 0xcc91,
- 0xcc92, 0xcc93, 0xcc94, 0xcc95, 0xcc96, 0xcc97, 0x0000, 0x0000,
- 0x0000, 0xcc98, 0xcc99, 0xcc9a, 0xcc9b, 0xcc9c, 0xcc9d, 0xcc9e,
- 0xcc9f, 0xcca0, 0xcca1, 0xcca2, 0xcca3, 0xcca4, 0xcca5, 0xcca6,
- 0xcca7, 0xcca8, 0x0000, 0xcca9, 0xccaa, 0xccab, 0xccac, 0xccad,
- 0xccae, 0xccaf, 0xccb0, 0xccb1, 0xccb2, 0xccb3, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xccb4, 0xccb5, 0xccb6, 0xccb7, 0xccb8, 0xccb9, 0xccba,
- 0xccbb, 0xccbc, 0xccbd, 0xccbe, 0xccbf, 0xccc0, 0xccc1, 0xccc2,
- 0xccc3, 0xccc4, 0x0000, 0xccc5, 0xccc6, 0xccc7, 0xccc8, 0xccc9,
- 0xccca, 0xcccb, 0xcccc, 0xcccd, 0xccce, 0xcccf, 0x0000, 0x0000,
- 0x0000, 0xccd0, 0xccd1, 0xccd2, 0xccd3, 0xccd4, 0xccd5, 0xccd6,
- 0xccd7, 0xccd8, 0xccd9, 0xccda, 0xccdb, 0xccdc, 0xccdd, 0xccde,
- 0xccdf, 0xcce0, 0x0000, 0xcce1, 0xcce2, 0xcce3, 0xcce4, 0xcce5,
- 0xcce6, 0xcce7, 0xcce8, 0xcce9, 0xccea, 0xcceb, 0x0000, 0x0000,
- 0x0000, 0xccec, 0xcced, 0xccee, 0xccef, 0xccf0, 0xccf1, 0xccf2,
- 0xccf3, 0xccf4, 0xccf5, 0xccf6, 0xccf7, 0xccf8, 0xccf9, 0xccfa,
- 0xccfb, 0xccfc, 0x0000, 0xccfd, 0xccfe, 0xccff, 0xcd00, 0xcd01,
- 0xcd02, 0xcd03, 0xcd04, 0xcd05, 0xcd06, 0xcd07, 0x0000, 0x0000,
- 0x0000, 0xcd08, 0xcd09, 0xcd0a, 0xcd0b, 0xcd0c, 0xcd0d, 0xcd0e,
- 0xcd0f, 0xcd10, 0xcd11, 0xcd12, 0xcd13, 0xcd14, 0xcd15, 0xcd16,
- 0xcd17, 0xcd18, 0x0000, 0xcd19, 0xcd1a, 0xcd1b, 0xcd1c, 0xcd1d,
- 0xcd1e, 0xcd1f, 0xcd20, 0xcd21, 0xcd22, 0xcd23, 0x0000, 0x0000,
- 0x0000, 0xcd24, 0xcd25, 0xcd26, 0xcd27, 0xcd28, 0xcd29, 0xcd2a,
- 0xcd2b, 0xcd2c, 0xcd2d, 0xcd2e, 0xcd2f, 0xcd30, 0xcd31, 0xcd32,
- 0xcd33, 0xcd34, 0x0000, 0xcd35, 0xcd36, 0xcd37, 0xcd38, 0xcd39,
- 0xcd3a, 0xcd3b, 0xcd3c, 0xcd3d, 0xcd3e, 0xcd3f, 0x0000, 0x0000,
- 0x0000, 0xcd40, 0xcd41, 0xcd42, 0xcd43, 0xcd44, 0xcd45, 0xcd46,
- 0xcd47, 0xcd48, 0xcd49, 0xcd4a, 0xcd4b, 0xcd4c, 0xcd4d, 0xcd4e,
- 0xcd4f, 0xcd50, 0x0000, 0xcd51, 0xcd52, 0xcd53, 0xcd54, 0xcd55,
- 0xcd56, 0xcd57, 0xcd58, 0xcd59, 0xcd5a, 0xcd5b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xcd5c, 0xcd5d, 0xcd5e, 0xcd5f, 0xcd60, 0xcd61, 0xcd62,
- 0xcd63, 0xcd64, 0xcd65, 0xcd66, 0xcd67, 0xcd68, 0xcd69, 0xcd6a,
- 0xcd6b, 0xcd6c, 0x0000, 0xcd6d, 0xcd6e, 0xcd6f, 0xcd70, 0xcd71,
- 0xcd72, 0xcd73, 0xcd74, 0xcd75, 0xcd76, 0xcd77, 0x0000, 0x0000,
- 0x0000, 0xcd78, 0xcd79, 0xcd7a, 0xcd7b, 0xcd7c, 0xcd7d, 0xcd7e,
- 0xcd7f, 0xcd80, 0xcd81, 0xcd82, 0xcd83, 0xcd84, 0xcd85, 0xcd86,
- 0xcd87, 0xcd88, 0x0000, 0xcd89, 0xcd8a, 0xcd8b, 0xcd8c, 0xcd8d,
- 0xcd8e, 0xcd8f, 0xcd90, 0xcd91, 0xcd92, 0xcd93, 0x0000, 0x0000,
- 0x0000, 0xcd94, 0xcd95, 0xcd96, 0xcd97, 0xcd98, 0xcd99, 0xcd9a,
- 0xcd9b, 0xcd9c, 0xcd9d, 0xcd9e, 0xcd9f, 0xcda0, 0xcda1, 0xcda2,
- 0xcda3, 0xcda4, 0x0000, 0xcda5, 0xcda6, 0xcda7, 0xcda8, 0xcda9,
- 0xcdaa, 0xcdab, 0xcdac, 0xcdad, 0xcdae, 0xcdaf, 0x0000, 0x0000,
- 0x0000, 0xcdb0, 0xcdb1, 0xcdb2, 0xcdb3, 0xcdb4, 0xcdb5, 0xcdb6,
- 0xcdb7, 0xcdb8, 0xcdb9, 0xcdba, 0xcdbb, 0xcdbc, 0xcdbd, 0xcdbe,
- 0xcdbf, 0xcdc0, 0x0000, 0xcdc1, 0xcdc2, 0xcdc3, 0xcdc4, 0xcdc5,
- 0xcdc6, 0xcdc7, 0xcdc8, 0xcdc9, 0xcdca, 0xcdcb, 0x0000, 0x0000,
- 0x0000, 0xcdcc, 0xcdcd, 0xcdce, 0xcdcf, 0xcdd0, 0xcdd1, 0xcdd2,
- 0xcdd3, 0xcdd4, 0xcdd5, 0xcdd6, 0xcdd7, 0xcdd8, 0xcdd9, 0xcdda,
- 0xcddb, 0xcddc, 0x0000, 0xcddd, 0xcdde, 0xcddf, 0xcde0, 0xcde1,
- 0xcde2, 0xcde3, 0xcde4, 0xcde5, 0xcde6, 0xcde7, 0x0000, 0x0000,
- 0x0000, 0xcde8, 0xcde9, 0xcdea, 0xcdeb, 0xcdec, 0xcded, 0xcdee,
- 0xcdef, 0xcdf0, 0xcdf1, 0xcdf2, 0xcdf3, 0xcdf4, 0xcdf5, 0xcdf6,
- 0xcdf7, 0xcdf8, 0x0000, 0xcdf9, 0xcdfa, 0xcdfb, 0xcdfc, 0xcdfd,
- 0xcdfe, 0xcdff, 0xce00, 0xce01, 0xce02, 0xce03, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xce04, 0xce05, 0xce06, 0xce07, 0xce08, 0xce09, 0xce0a,
- 0xce0b, 0xce0c, 0xce0d, 0xce0e, 0xce0f, 0xce10, 0xce11, 0xce12,
- 0xce13, 0xce14, 0x0000, 0xce15, 0xce16, 0xce17, 0xce18, 0xce19,
- 0xce1a, 0xce1b, 0xce1c, 0xce1d, 0xce1e, 0xce1f, 0x0000, 0x0000,
- 0x0000, 0xce20, 0xce21, 0xce22, 0xce23, 0xce24, 0xce25, 0xce26,
- 0xce27, 0xce28, 0xce29, 0xce2a, 0xce2b, 0xce2c, 0xce2d, 0xce2e,
- 0xce2f, 0xce30, 0x0000, 0xce31, 0xce32, 0xce33, 0xce34, 0xce35,
- 0xce36, 0xce37, 0xce38, 0xce39, 0xce3a, 0xce3b, 0x0000, 0x0000,
- 0x0000, 0xce3c, 0xce3d, 0xce3e, 0xce3f, 0xce40, 0xce41, 0xce42,
- 0xce43, 0xce44, 0xce45, 0xce46, 0xce47, 0xce48, 0xce49, 0xce4a,
- 0xce4b, 0xce4c, 0x0000, 0xce4d, 0xce4e, 0xce4f, 0xce50, 0xce51,
- 0xce52, 0xce53, 0xce54, 0xce55, 0xce56, 0xce57, 0x0000, 0x0000,
- 0x0000, 0xce58, 0xce59, 0xce5a, 0xce5b, 0xce5c, 0xce5d, 0xce5e,
- 0xce5f, 0xce60, 0xce61, 0xce62, 0xce63, 0xce64, 0xce65, 0xce66,
- 0xce67, 0xce68, 0x0000, 0xce69, 0xce6a, 0xce6b, 0xce6c, 0xce6d,
- 0xce6e, 0xce6f, 0xce70, 0xce71, 0xce72, 0xce73, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xce74, 0xce75, 0xce76, 0xce77, 0xce78, 0xce79, 0xce7a,
- 0xce7b, 0xce7c, 0xce7d, 0xce7e, 0xce7f, 0xce80, 0xce81, 0xce82,
- 0xce83, 0xce84, 0x0000, 0xce85, 0xce86, 0xce87, 0xce88, 0xce89,
- 0xce8a, 0xce8b, 0xce8c, 0xce8d, 0xce8e, 0xce8f, 0x0000, 0x0000,
- 0x0000, 0xce90, 0xce91, 0xce92, 0xce93, 0xce94, 0xce95, 0xce96,
- 0xce97, 0xce98, 0xce99, 0xce9a, 0xce9b, 0xce9c, 0xce9d, 0xce9e,
- 0xce9f, 0xcea0, 0x0000, 0xcea1, 0xcea2, 0xcea3, 0xcea4, 0xcea5,
- 0xcea6, 0xcea7, 0xcea8, 0xcea9, 0xceaa, 0xceab, 0x0000, 0x0000,
- 0x0000, 0xceac, 0xcead, 0xceae, 0xceaf, 0xceb0, 0xceb1, 0xceb2,
- 0xceb3, 0xceb4, 0xceb5, 0xceb6, 0xceb7, 0xceb8, 0xceb9, 0xceba,
- 0xcebb, 0xcebc, 0x0000, 0xcebd, 0xcebe, 0xcebf, 0xcec0, 0xcec1,
- 0xcec2, 0xcec3, 0xcec4, 0xcec5, 0xcec6, 0xcec7, 0x0000, 0x0000,
- 0x0000, 0xcec8, 0xcec9, 0xceca, 0xcecb, 0xcecc, 0xcecd, 0xcece,
- 0xcecf, 0xced0, 0xced1, 0xced2, 0xced3, 0xced4, 0xced5, 0xced6,
- 0xced7, 0xced8, 0x0000, 0xced9, 0xceda, 0xcedb, 0xcedc, 0xcedd,
- 0xcede, 0xcedf, 0xcee0, 0xcee1, 0xcee2, 0xcee3, 0x0000, 0x0000,
- 0x0000, 0xcee4, 0xcee5, 0xcee6, 0xcee7, 0xcee8, 0xcee9, 0xceea,
- 0xceeb, 0xceec, 0xceed, 0xceee, 0xceef, 0xcef0, 0xcef1, 0xcef2,
- 0xcef3, 0xcef4, 0x0000, 0xcef5, 0xcef6, 0xcef7, 0xcef8, 0xcef9,
- 0xcefa, 0xcefb, 0xcefc, 0xcefd, 0xcefe, 0xceff, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xcf00, 0xcf01, 0xcf02, 0xcf03, 0xcf04, 0xcf05, 0xcf06,
- 0xcf07, 0xcf08, 0xcf09, 0xcf0a, 0xcf0b, 0xcf0c, 0xcf0d, 0xcf0e,
- 0xcf0f, 0xcf10, 0x0000, 0xcf11, 0xcf12, 0xcf13, 0xcf14, 0xcf15,
- 0xcf16, 0xcf17, 0xcf18, 0xcf19, 0xcf1a, 0xcf1b, 0x0000, 0x0000,
- 0x0000, 0xcf1c, 0xcf1d, 0xcf1e, 0xcf1f, 0xcf20, 0xcf21, 0xcf22,
- 0xcf23, 0xcf24, 0xcf25, 0xcf26, 0xcf27, 0xcf28, 0xcf29, 0xcf2a,
- 0xcf2b, 0xcf2c, 0x0000, 0xcf2d, 0xcf2e, 0xcf2f, 0xcf30, 0xcf31,
- 0xcf32, 0xcf33, 0xcf34, 0xcf35, 0xcf36, 0xcf37, 0x0000, 0x0000,
- 0x0000, 0xcf38, 0xcf39, 0xcf3a, 0xcf3b, 0xcf3c, 0xcf3d, 0xcf3e,
- 0xcf3f, 0xcf40, 0xcf41, 0xcf42, 0xcf43, 0xcf44, 0xcf45, 0xcf46,
- 0xcf47, 0xcf48, 0x0000, 0xcf49, 0xcf4a, 0xcf4b, 0xcf4c, 0xcf4d,
- 0xcf4e, 0xcf4f, 0xcf50, 0xcf51, 0xcf52, 0xcf53, 0x0000, 0x0000,
- 0x0000, 0xcf54, 0xcf55, 0xcf56, 0xcf57, 0xcf58, 0xcf59, 0xcf5a,
- 0xcf5b, 0xcf5c, 0xcf5d, 0xcf5e, 0xcf5f, 0xcf60, 0xcf61, 0xcf62,
- 0xcf63, 0xcf64, 0x0000, 0xcf65, 0xcf66, 0xcf67, 0xcf68, 0xcf69,
- 0xcf6a, 0xcf6b, 0xcf6c, 0xcf6d, 0xcf6e, 0xcf6f, 0x0000, 0x0000,
- 0x0000, 0xcf70, 0xcf71, 0xcf72, 0xcf73, 0xcf74, 0xcf75, 0xcf76,
- 0xcf77, 0xcf78, 0xcf79, 0xcf7a, 0xcf7b, 0xcf7c, 0xcf7d, 0xcf7e,
- 0xcf7f, 0xcf80, 0x0000, 0xcf81, 0xcf82, 0xcf83, 0xcf84, 0xcf85,
- 0xcf86, 0xcf87, 0xcf88, 0xcf89, 0xcf8a, 0xcf8b, 0x0000, 0x0000,
- 0x0000, 0xcf8c, 0xcf8d, 0xcf8e, 0xcf8f, 0xcf90, 0xcf91, 0xcf92,
- 0xcf93, 0xcf94, 0xcf95, 0xcf96, 0xcf97, 0xcf98, 0xcf99, 0xcf9a,
- 0xcf9b, 0xcf9c, 0x0000, 0xcf9d, 0xcf9e, 0xcf9f, 0xcfa0, 0xcfa1,
- 0xcfa2, 0xcfa3, 0xcfa4, 0xcfa5, 0xcfa6, 0xcfa7, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xcfa8, 0xcfa9, 0xcfaa, 0xcfab, 0xcfac, 0xcfad, 0xcfae,
- 0xcfaf, 0xcfb0, 0xcfb1, 0xcfb2, 0xcfb3, 0xcfb4, 0xcfb5, 0xcfb6,
- 0xcfb7, 0xcfb8, 0x0000, 0xcfb9, 0xcfba, 0xcfbb, 0xcfbc, 0xcfbd,
- 0xcfbe, 0xcfbf, 0xcfc0, 0xcfc1, 0xcfc2, 0xcfc3, 0x0000, 0x0000,
- 0x0000, 0xcfc4, 0xcfc5, 0xcfc6, 0xcfc7, 0xcfc8, 0xcfc9, 0xcfca,
- 0xcfcb, 0xcfcc, 0xcfcd, 0xcfce, 0xcfcf, 0xcfd0, 0xcfd1, 0xcfd2,
- 0xcfd3, 0xcfd4, 0x0000, 0xcfd5, 0xcfd6, 0xcfd7, 0xcfd8, 0xcfd9,
- 0xcfda, 0xcfdb, 0xcfdc, 0xcfdd, 0xcfde, 0xcfdf, 0x0000, 0x0000,
- 0x0000, 0xcfe0, 0xcfe1, 0xcfe2, 0xcfe3, 0xcfe4, 0xcfe5, 0xcfe6,
- 0xcfe7, 0xcfe8, 0xcfe9, 0xcfea, 0xcfeb, 0xcfec, 0xcfed, 0xcfee,
- 0xcfef, 0xcff0, 0x0000, 0xcff1, 0xcff2, 0xcff3, 0xcff4, 0xcff5,
- 0xcff6, 0xcff7, 0xcff8, 0xcff9, 0xcffa, 0xcffb, 0x0000, 0x0000,
- 0x0000, 0xcffc, 0xcffd, 0xcffe, 0xcfff, 0xd000, 0xd001, 0xd002,
- 0xd003, 0xd004, 0xd005, 0xd006, 0xd007, 0xd008, 0xd009, 0xd00a,
- 0xd00b, 0xd00c, 0x0000, 0xd00d, 0xd00e, 0xd00f, 0xd010, 0xd011,
- 0xd012, 0xd013, 0xd014, 0xd015, 0xd016, 0xd017, 0x0000, 0x0000,
- 0x0000, 0xd018, 0xd019, 0xd01a, 0xd01b, 0xd01c, 0xd01d, 0xd01e,
- 0xd01f, 0xd020, 0xd021, 0xd022, 0xd023, 0xd024, 0xd025, 0xd026,
- 0xd027, 0xd028, 0x0000, 0xd029, 0xd02a, 0xd02b, 0xd02c, 0xd02d,
- 0xd02e, 0xd02f, 0xd030, 0xd031, 0xd032, 0xd033, 0x0000, 0x0000,
- 0x0000, 0xd034, 0xd035, 0xd036, 0xd037, 0xd038, 0xd039, 0xd03a,
- 0xd03b, 0xd03c, 0xd03d, 0xd03e, 0xd03f, 0xd040, 0xd041, 0xd042,
- 0xd043, 0xd044, 0x0000, 0xd045, 0xd046, 0xd047, 0xd048, 0xd049,
- 0xd04a, 0xd04b, 0xd04c, 0xd04d, 0xd04e, 0xd04f, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd050, 0xd051, 0xd052, 0xd053, 0xd054, 0xd055, 0xd056,
- 0xd057, 0xd058, 0xd059, 0xd05a, 0xd05b, 0xd05c, 0xd05d, 0xd05e,
- 0xd05f, 0xd060, 0x0000, 0xd061, 0xd062, 0xd063, 0xd064, 0xd065,
- 0xd066, 0xd067, 0xd068, 0xd069, 0xd06a, 0xd06b, 0x0000, 0x0000,
- 0x0000, 0xd06c, 0xd06d, 0xd06e, 0xd06f, 0xd070, 0xd071, 0xd072,
- 0xd073, 0xd074, 0xd075, 0xd076, 0xd077, 0xd078, 0xd079, 0xd07a,
- 0xd07b, 0xd07c, 0x0000, 0xd07d, 0xd07e, 0xd07f, 0xd080, 0xd081,
- 0xd082, 0xd083, 0xd084, 0xd085, 0xd086, 0xd087, 0x0000, 0x0000,
- 0x0000, 0xd088, 0xd089, 0xd08a, 0xd08b, 0xd08c, 0xd08d, 0xd08e,
- 0xd08f, 0xd090, 0xd091, 0xd092, 0xd093, 0xd094, 0xd095, 0xd096,
- 0xd097, 0xd098, 0x0000, 0xd099, 0xd09a, 0xd09b, 0xd09c, 0xd09d,
- 0xd09e, 0xd09f, 0xd0a0, 0xd0a1, 0xd0a2, 0xd0a3, 0x0000, 0x0000,
- 0x0000, 0xd0a4, 0xd0a5, 0xd0a6, 0xd0a7, 0xd0a8, 0xd0a9, 0xd0aa,
- 0xd0ab, 0xd0ac, 0xd0ad, 0xd0ae, 0xd0af, 0xd0b0, 0xd0b1, 0xd0b2,
- 0xd0b3, 0xd0b4, 0x0000, 0xd0b5, 0xd0b6, 0xd0b7, 0xd0b8, 0xd0b9,
- 0xd0ba, 0xd0bb, 0xd0bc, 0xd0bd, 0xd0be, 0xd0bf, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd0c0, 0xd0c1, 0xd0c2, 0xd0c3, 0xd0c4, 0xd0c5, 0xd0c6,
- 0xd0c7, 0xd0c8, 0xd0c9, 0xd0ca, 0xd0cb, 0xd0cc, 0xd0cd, 0xd0ce,
- 0xd0cf, 0xd0d0, 0x0000, 0xd0d1, 0xd0d2, 0xd0d3, 0xd0d4, 0xd0d5,
- 0xd0d6, 0xd0d7, 0xd0d8, 0xd0d9, 0xd0da, 0xd0db, 0x0000, 0x0000,
- 0x0000, 0xd0dc, 0xd0dd, 0xd0de, 0xd0df, 0xd0e0, 0xd0e1, 0xd0e2,
- 0xd0e3, 0xd0e4, 0xd0e5, 0xd0e6, 0xd0e7, 0xd0e8, 0xd0e9, 0xd0ea,
- 0xd0eb, 0xd0ec, 0x0000, 0xd0ed, 0xd0ee, 0xd0ef, 0xd0f0, 0xd0f1,
- 0xd0f2, 0xd0f3, 0xd0f4, 0xd0f5, 0xd0f6, 0xd0f7, 0x0000, 0x0000,
- 0x0000, 0xd0f8, 0xd0f9, 0xd0fa, 0xd0fb, 0xd0fc, 0xd0fd, 0xd0fe,
- 0xd0ff, 0xd100, 0xd101, 0xd102, 0xd103, 0xd104, 0xd105, 0xd106,
- 0xd107, 0xd108, 0x0000, 0xd109, 0xd10a, 0xd10b, 0xd10c, 0xd10d,
- 0xd10e, 0xd10f, 0xd110, 0xd111, 0xd112, 0xd113, 0x0000, 0x0000,
- 0x0000, 0xd114, 0xd115, 0xd116, 0xd117, 0xd118, 0xd119, 0xd11a,
- 0xd11b, 0xd11c, 0xd11d, 0xd11e, 0xd11f, 0xd120, 0xd121, 0xd122,
- 0xd123, 0xd124, 0x0000, 0xd125, 0xd126, 0xd127, 0xd128, 0xd129,
- 0xd12a, 0xd12b, 0xd12c, 0xd12d, 0xd12e, 0xd12f, 0x0000, 0x0000,
- 0x0000, 0xd130, 0xd131, 0xd132, 0xd133, 0xd134, 0xd135, 0xd136,
- 0xd137, 0xd138, 0xd139, 0xd13a, 0xd13b, 0xd13c, 0xd13d, 0xd13e,
- 0xd13f, 0xd140, 0x0000, 0xd141, 0xd142, 0xd143, 0xd144, 0xd145,
- 0xd146, 0xd147, 0xd148, 0xd149, 0xd14a, 0xd14b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd14c, 0xd14d, 0xd14e, 0xd14f, 0xd150, 0xd151, 0xd152,
- 0xd153, 0xd154, 0xd155, 0xd156, 0xd157, 0xd158, 0xd159, 0xd15a,
- 0xd15b, 0xd15c, 0x0000, 0xd15d, 0xd15e, 0xd15f, 0xd160, 0xd161,
- 0xd162, 0xd163, 0xd164, 0xd165, 0xd166, 0xd167, 0x0000, 0x0000,
- 0x0000, 0xd168, 0xd169, 0xd16a, 0xd16b, 0xd16c, 0xd16d, 0xd16e,
- 0xd16f, 0xd170, 0xd171, 0xd172, 0xd173, 0xd174, 0xd175, 0xd176,
- 0xd177, 0xd178, 0x0000, 0xd179, 0xd17a, 0xd17b, 0xd17c, 0xd17d,
- 0xd17e, 0xd17f, 0xd180, 0xd181, 0xd182, 0xd183, 0x0000, 0x0000,
- 0x0000, 0xd184, 0xd185, 0xd186, 0xd187, 0xd188, 0xd189, 0xd18a,
- 0xd18b, 0xd18c, 0xd18d, 0xd18e, 0xd18f, 0xd190, 0xd191, 0xd192,
- 0xd193, 0xd194, 0x0000, 0xd195, 0xd196, 0xd197, 0xd198, 0xd199,
- 0xd19a, 0xd19b, 0xd19c, 0xd19d, 0xd19e, 0xd19f, 0x0000, 0x0000,
- 0x0000, 0xd1a0, 0xd1a1, 0xd1a2, 0xd1a3, 0xd1a4, 0xd1a5, 0xd1a6,
- 0xd1a7, 0xd1a8, 0xd1a9, 0xd1aa, 0xd1ab, 0xd1ac, 0xd1ad, 0xd1ae,
- 0xd1af, 0xd1b0, 0x0000, 0xd1b1, 0xd1b2, 0xd1b3, 0xd1b4, 0xd1b5,
- 0xd1b6, 0xd1b7, 0xd1b8, 0xd1b9, 0xd1ba, 0xd1bb, 0x0000, 0x0000,
- 0x0000, 0xd1bc, 0xd1bd, 0xd1be, 0xd1bf, 0xd1c0, 0xd1c1, 0xd1c2,
- 0xd1c3, 0xd1c4, 0xd1c5, 0xd1c6, 0xd1c7, 0xd1c8, 0xd1c9, 0xd1ca,
- 0xd1cb, 0xd1cc, 0x0000, 0xd1cd, 0xd1ce, 0xd1cf, 0xd1d0, 0xd1d1,
- 0xd1d2, 0xd1d3, 0xd1d4, 0xd1d5, 0xd1d6, 0xd1d7, 0x0000, 0x0000,
- 0x0000, 0xd1d8, 0xd1d9, 0xd1da, 0xd1db, 0xd1dc, 0xd1dd, 0xd1de,
- 0xd1df, 0xd1e0, 0xd1e1, 0xd1e2, 0xd1e3, 0xd1e4, 0xd1e5, 0xd1e6,
- 0xd1e7, 0xd1e8, 0x0000, 0xd1e9, 0xd1ea, 0xd1eb, 0xd1ec, 0xd1ed,
- 0xd1ee, 0xd1ef, 0xd1f0, 0xd1f1, 0xd1f2, 0xd1f3, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd1f4, 0xd1f5, 0xd1f6, 0xd1f7, 0xd1f8, 0xd1f9, 0xd1fa,
- 0xd1fb, 0xd1fc, 0xd1fd, 0xd1fe, 0xd1ff, 0xd200, 0xd201, 0xd202,
- 0xd203, 0xd204, 0x0000, 0xd205, 0xd206, 0xd207, 0xd208, 0xd209,
- 0xd20a, 0xd20b, 0xd20c, 0xd20d, 0xd20e, 0xd20f, 0x0000, 0x0000,
- 0x0000, 0xd210, 0xd211, 0xd212, 0xd213, 0xd214, 0xd215, 0xd216,
- 0xd217, 0xd218, 0xd219, 0xd21a, 0xd21b, 0xd21c, 0xd21d, 0xd21e,
- 0xd21f, 0xd220, 0x0000, 0xd221, 0xd222, 0xd223, 0xd224, 0xd225,
- 0xd226, 0xd227, 0xd228, 0xd229, 0xd22a, 0xd22b, 0x0000, 0x0000,
- 0x0000, 0xd22c, 0xd22d, 0xd22e, 0xd22f, 0xd230, 0xd231, 0xd232,
- 0xd233, 0xd234, 0xd235, 0xd236, 0xd237, 0xd238, 0xd239, 0xd23a,
- 0xd23b, 0xd23c, 0x0000, 0xd23d, 0xd23e, 0xd23f, 0xd240, 0xd241,
- 0xd242, 0xd243, 0xd244, 0xd245, 0xd246, 0xd247, 0x0000, 0x0000,
- 0x0000, 0xd248, 0xd249, 0xd24a, 0xd24b, 0xd24c, 0xd24d, 0xd24e,
- 0xd24f, 0xd250, 0xd251, 0xd252, 0xd253, 0xd254, 0xd255, 0xd256,
- 0xd257, 0xd258, 0x0000, 0xd259, 0xd25a, 0xd25b, 0xd25c, 0xd25d,
- 0xd25e, 0xd25f, 0xd260, 0xd261, 0xd262, 0xd263, 0x0000, 0x0000,
- 0x0000, 0xd264, 0xd265, 0xd266, 0xd267, 0xd268, 0xd269, 0xd26a,
- 0xd26b, 0xd26c, 0xd26d, 0xd26e, 0xd26f, 0xd270, 0xd271, 0xd272,
- 0xd273, 0xd274, 0x0000, 0xd275, 0xd276, 0xd277, 0xd278, 0xd279,
- 0xd27a, 0xd27b, 0xd27c, 0xd27d, 0xd27e, 0xd27f, 0x0000, 0x0000,
- 0x0000, 0xd280, 0xd281, 0xd282, 0xd283, 0xd284, 0xd285, 0xd286,
- 0xd287, 0xd288, 0xd289, 0xd28a, 0xd28b, 0xd28c, 0xd28d, 0xd28e,
- 0xd28f, 0xd290, 0x0000, 0xd291, 0xd292, 0xd293, 0xd294, 0xd295,
- 0xd296, 0xd297, 0xd298, 0xd299, 0xd29a, 0xd29b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd29c, 0xd29d, 0xd29e, 0xd29f, 0xd2a0, 0xd2a1, 0xd2a2,
- 0xd2a3, 0xd2a4, 0xd2a5, 0xd2a6, 0xd2a7, 0xd2a8, 0xd2a9, 0xd2aa,
- 0xd2ab, 0xd2ac, 0x0000, 0xd2ad, 0xd2ae, 0xd2af, 0xd2b0, 0xd2b1,
- 0xd2b2, 0xd2b3, 0xd2b4, 0xd2b5, 0xd2b6, 0xd2b7, 0x0000, 0x0000,
- 0x0000, 0xd2b8, 0xd2b9, 0xd2ba, 0xd2bb, 0xd2bc, 0xd2bd, 0xd2be,
- 0xd2bf, 0xd2c0, 0xd2c1, 0xd2c2, 0xd2c3, 0xd2c4, 0xd2c5, 0xd2c6,
- 0xd2c7, 0xd2c8, 0x0000, 0xd2c9, 0xd2ca, 0xd2cb, 0xd2cc, 0xd2cd,
- 0xd2ce, 0xd2cf, 0xd2d0, 0xd2d1, 0xd2d2, 0xd2d3, 0x0000, 0x0000,
- 0x0000, 0xd2d4, 0xd2d5, 0xd2d6, 0xd2d7, 0xd2d8, 0xd2d9, 0xd2da,
- 0xd2db, 0xd2dc, 0xd2dd, 0xd2de, 0xd2df, 0xd2e0, 0xd2e1, 0xd2e2,
- 0xd2e3, 0xd2e4, 0x0000, 0xd2e5, 0xd2e6, 0xd2e7, 0xd2e8, 0xd2e9,
- 0xd2ea, 0xd2eb, 0xd2ec, 0xd2ed, 0xd2ee, 0xd2ef, 0x0000, 0x0000,
- 0x0000, 0xd2f0, 0xd2f1, 0xd2f2, 0xd2f3, 0xd2f4, 0xd2f5, 0xd2f6,
- 0xd2f7, 0xd2f8, 0xd2f9, 0xd2fa, 0xd2fb, 0xd2fc, 0xd2fd, 0xd2fe,
- 0xd2ff, 0xd300, 0x0000, 0xd301, 0xd302, 0xd303, 0xd304, 0xd305,
- 0xd306, 0xd307, 0xd308, 0xd309, 0xd30a, 0xd30b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd30c, 0xd30d, 0xd30e, 0xd30f, 0xd310, 0xd311, 0xd312,
- 0xd313, 0xd314, 0xd315, 0xd316, 0xd317, 0xd318, 0xd319, 0xd31a,
- 0xd31b, 0xd31c, 0x0000, 0xd31d, 0xd31e, 0xd31f, 0xd320, 0xd321,
- 0xd322, 0xd323, 0xd324, 0xd325, 0xd326, 0xd327, 0x0000, 0x0000,
- 0x0000, 0xd328, 0xd329, 0xd32a, 0xd32b, 0xd32c, 0xd32d, 0xd32e,
- 0xd32f, 0xd330, 0xd331, 0xd332, 0xd333, 0xd334, 0xd335, 0xd336,
- 0xd337, 0xd338, 0x0000, 0xd339, 0xd33a, 0xd33b, 0xd33c, 0xd33d,
- 0xd33e, 0xd33f, 0xd340, 0xd341, 0xd342, 0xd343, 0x0000, 0x0000,
- 0x0000, 0xd344, 0xd345, 0xd346, 0xd347, 0xd348, 0xd349, 0xd34a,
- 0xd34b, 0xd34c, 0xd34d, 0xd34e, 0xd34f, 0xd350, 0xd351, 0xd352,
- 0xd353, 0xd354, 0x0000, 0xd355, 0xd356, 0xd357, 0xd358, 0xd359,
- 0xd35a, 0xd35b, 0xd35c, 0xd35d, 0xd35e, 0xd35f, 0x0000, 0x0000,
- 0x0000, 0xd360, 0xd361, 0xd362, 0xd363, 0xd364, 0xd365, 0xd366,
- 0xd367, 0xd368, 0xd369, 0xd36a, 0xd36b, 0xd36c, 0xd36d, 0xd36e,
- 0xd36f, 0xd370, 0x0000, 0xd371, 0xd372, 0xd373, 0xd374, 0xd375,
- 0xd376, 0xd377, 0xd378, 0xd379, 0xd37a, 0xd37b, 0x0000, 0x0000,
- 0x0000, 0xd37c, 0xd37d, 0xd37e, 0xd37f, 0xd380, 0xd381, 0xd382,
- 0xd383, 0xd384, 0xd385, 0xd386, 0xd387, 0xd388, 0xd389, 0xd38a,
- 0xd38b, 0xd38c, 0x0000, 0xd38d, 0xd38e, 0xd38f, 0xd390, 0xd391,
- 0xd392, 0xd393, 0xd394, 0xd395, 0xd396, 0xd397, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd398, 0xd399, 0xd39a, 0xd39b, 0xd39c, 0xd39d, 0xd39e,
- 0xd39f, 0xd3a0, 0xd3a1, 0xd3a2, 0xd3a3, 0xd3a4, 0xd3a5, 0xd3a6,
- 0xd3a7, 0xd3a8, 0x0000, 0xd3a9, 0xd3aa, 0xd3ab, 0xd3ac, 0xd3ad,
- 0xd3ae, 0xd3af, 0xd3b0, 0xd3b1, 0xd3b2, 0xd3b3, 0x0000, 0x0000,
- 0x0000, 0xd3b4, 0xd3b5, 0xd3b6, 0xd3b7, 0xd3b8, 0xd3b9, 0xd3ba,
- 0xd3bb, 0xd3bc, 0xd3bd, 0xd3be, 0xd3bf, 0xd3c0, 0xd3c1, 0xd3c2,
- 0xd3c3, 0xd3c4, 0x0000, 0xd3c5, 0xd3c6, 0xd3c7, 0xd3c8, 0xd3c9,
- 0xd3ca, 0xd3cb, 0xd3cc, 0xd3cd, 0xd3ce, 0xd3cf, 0x0000, 0x0000,
- 0x0000, 0xd3d0, 0xd3d1, 0xd3d2, 0xd3d3, 0xd3d4, 0xd3d5, 0xd3d6,
- 0xd3d7, 0xd3d8, 0xd3d9, 0xd3da, 0xd3db, 0xd3dc, 0xd3dd, 0xd3de,
- 0xd3df, 0xd3e0, 0x0000, 0xd3e1, 0xd3e2, 0xd3e3, 0xd3e4, 0xd3e5,
- 0xd3e6, 0xd3e7, 0xd3e8, 0xd3e9, 0xd3ea, 0xd3eb, 0x0000, 0x0000,
- 0x0000, 0xd3ec, 0xd3ed, 0xd3ee, 0xd3ef, 0xd3f0, 0xd3f1, 0xd3f2,
- 0xd3f3, 0xd3f4, 0xd3f5, 0xd3f6, 0xd3f7, 0xd3f8, 0xd3f9, 0xd3fa,
- 0xd3fb, 0xd3fc, 0x0000, 0xd3fd, 0xd3fe, 0xd3ff, 0xd400, 0xd401,
- 0xd402, 0xd403, 0xd404, 0xd405, 0xd406, 0xd407, 0x0000, 0x0000,
- 0x0000, 0xd408, 0xd409, 0xd40a, 0xd40b, 0xd40c, 0xd40d, 0xd40e,
- 0xd40f, 0xd410, 0xd411, 0xd412, 0xd413, 0xd414, 0xd415, 0xd416,
- 0xd417, 0xd418, 0x0000, 0xd419, 0xd41a, 0xd41b, 0xd41c, 0xd41d,
- 0xd41e, 0xd41f, 0xd420, 0xd421, 0xd422, 0xd423, 0x0000, 0x0000,
- 0x0000, 0xd424, 0xd425, 0xd426, 0xd427, 0xd428, 0xd429, 0xd42a,
- 0xd42b, 0xd42c, 0xd42d, 0xd42e, 0xd42f, 0xd430, 0xd431, 0xd432,
- 0xd433, 0xd434, 0x0000, 0xd435, 0xd436, 0xd437, 0xd438, 0xd439,
- 0xd43a, 0xd43b, 0xd43c, 0xd43d, 0xd43e, 0xd43f, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd440, 0xd441, 0xd442, 0xd443, 0xd444, 0xd445, 0xd446,
- 0xd447, 0xd448, 0xd449, 0xd44a, 0xd44b, 0xd44c, 0xd44d, 0xd44e,
- 0xd44f, 0xd450, 0x0000, 0xd451, 0xd452, 0xd453, 0xd454, 0xd455,
- 0xd456, 0xd457, 0xd458, 0xd459, 0xd45a, 0xd45b, 0x0000, 0x0000,
- 0x0000, 0xd45c, 0xd45d, 0xd45e, 0xd45f, 0xd460, 0xd461, 0xd462,
- 0xd463, 0xd464, 0xd465, 0xd466, 0xd467, 0xd468, 0xd469, 0xd46a,
- 0xd46b, 0xd46c, 0x0000, 0xd46d, 0xd46e, 0xd46f, 0xd470, 0xd471,
- 0xd472, 0xd473, 0xd474, 0xd475, 0xd476, 0xd477, 0x0000, 0x0000,
- 0x0000, 0xd478, 0xd479, 0xd47a, 0xd47b, 0xd47c, 0xd47d, 0xd47e,
- 0xd47f, 0xd480, 0xd481, 0xd482, 0xd483, 0xd484, 0xd485, 0xd486,
- 0xd487, 0xd488, 0x0000, 0xd489, 0xd48a, 0xd48b, 0xd48c, 0xd48d,
- 0xd48e, 0xd48f, 0xd490, 0xd491, 0xd492, 0xd493, 0x0000, 0x0000,
- 0x0000, 0xd494, 0xd495, 0xd496, 0xd497, 0xd498, 0xd499, 0xd49a,
- 0xd49b, 0xd49c, 0xd49d, 0xd49e, 0xd49f, 0xd4a0, 0xd4a1, 0xd4a2,
- 0xd4a3, 0xd4a4, 0x0000, 0xd4a5, 0xd4a6, 0xd4a7, 0xd4a8, 0xd4a9,
- 0xd4aa, 0xd4ab, 0xd4ac, 0xd4ad, 0xd4ae, 0xd4af, 0x0000, 0x0000,
- 0x0000, 0xd4b0, 0xd4b1, 0xd4b2, 0xd4b3, 0xd4b4, 0xd4b5, 0xd4b6,
- 0xd4b7, 0xd4b8, 0xd4b9, 0xd4ba, 0xd4bb, 0xd4bc, 0xd4bd, 0xd4be,
- 0xd4bf, 0xd4c0, 0x0000, 0xd4c1, 0xd4c2, 0xd4c3, 0xd4c4, 0xd4c5,
- 0xd4c6, 0xd4c7, 0xd4c8, 0xd4c9, 0xd4ca, 0xd4cb, 0x0000, 0x0000,
- 0x0000, 0xd4cc, 0xd4cd, 0xd4ce, 0xd4cf, 0xd4d0, 0xd4d1, 0xd4d2,
- 0xd4d3, 0xd4d4, 0xd4d5, 0xd4d6, 0xd4d7, 0xd4d8, 0xd4d9, 0xd4da,
- 0xd4db, 0xd4dc, 0x0000, 0xd4dd, 0xd4de, 0xd4df, 0xd4e0, 0xd4e1,
- 0xd4e2, 0xd4e3, 0xd4e4, 0xd4e5, 0xd4e6, 0xd4e7, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd4e8, 0xd4e9, 0xd4ea, 0xd4eb, 0xd4ec, 0xd4ed, 0xd4ee,
- 0xd4ef, 0xd4f0, 0xd4f1, 0xd4f2, 0xd4f3, 0xd4f4, 0xd4f5, 0xd4f6,
- 0xd4f7, 0xd4f8, 0x0000, 0xd4f9, 0xd4fa, 0xd4fb, 0xd4fc, 0xd4fd,
- 0xd4fe, 0xd4ff, 0xd500, 0xd501, 0xd502, 0xd503, 0x0000, 0x0000,
- 0x0000, 0xd504, 0xd505, 0xd506, 0xd507, 0xd508, 0xd509, 0xd50a,
- 0xd50b, 0xd50c, 0xd50d, 0xd50e, 0xd50f, 0xd510, 0xd511, 0xd512,
- 0xd513, 0xd514, 0x0000, 0xd515, 0xd516, 0xd517, 0xd518, 0xd519,
- 0xd51a, 0xd51b, 0xd51c, 0xd51d, 0xd51e, 0xd51f, 0x0000, 0x0000,
- 0x0000, 0xd520, 0xd521, 0xd522, 0xd523, 0xd524, 0xd525, 0xd526,
- 0xd527, 0xd528, 0xd529, 0xd52a, 0xd52b, 0xd52c, 0xd52d, 0xd52e,
- 0xd52f, 0xd530, 0x0000, 0xd531, 0xd532, 0xd533, 0xd534, 0xd535,
- 0xd536, 0xd537, 0xd538, 0xd539, 0xd53a, 0xd53b, 0x0000, 0x0000,
- 0x0000, 0xd53c, 0xd53d, 0xd53e, 0xd53f, 0xd540, 0xd541, 0xd542,
- 0xd543, 0xd544, 0xd545, 0xd546, 0xd547, 0xd548, 0xd549, 0xd54a,
- 0xd54b, 0xd54c, 0x0000, 0xd54d, 0xd54e, 0xd54f, 0xd550, 0xd551,
- 0xd552, 0xd553, 0xd554, 0xd555, 0xd556, 0xd557, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd558, 0xd559, 0xd55a, 0xd55b, 0xd55c, 0xd55d, 0xd55e,
- 0xd55f, 0xd560, 0xd561, 0xd562, 0xd563, 0xd564, 0xd565, 0xd566,
- 0xd567, 0xd568, 0x0000, 0xd569, 0xd56a, 0xd56b, 0xd56c, 0xd56d,
- 0xd56e, 0xd56f, 0xd570, 0xd571, 0xd572, 0xd573, 0x0000, 0x0000,
- 0x0000, 0xd574, 0xd575, 0xd576, 0xd577, 0xd578, 0xd579, 0xd57a,
- 0xd57b, 0xd57c, 0xd57d, 0xd57e, 0xd57f, 0xd580, 0xd581, 0xd582,
- 0xd583, 0xd584, 0x0000, 0xd585, 0xd586, 0xd587, 0xd588, 0xd589,
- 0xd58a, 0xd58b, 0xd58c, 0xd58d, 0xd58e, 0xd58f, 0x0000, 0x0000,
- 0x0000, 0xd590, 0xd591, 0xd592, 0xd593, 0xd594, 0xd595, 0xd596,
- 0xd597, 0xd598, 0xd599, 0xd59a, 0xd59b, 0xd59c, 0xd59d, 0xd59e,
- 0xd59f, 0xd5a0, 0x0000, 0xd5a1, 0xd5a2, 0xd5a3, 0xd5a4, 0xd5a5,
- 0xd5a6, 0xd5a7, 0xd5a8, 0xd5a9, 0xd5aa, 0xd5ab, 0x0000, 0x0000,
- 0x0000, 0xd5ac, 0xd5ad, 0xd5ae, 0xd5af, 0xd5b0, 0xd5b1, 0xd5b2,
- 0xd5b3, 0xd5b4, 0xd5b5, 0xd5b6, 0xd5b7, 0xd5b8, 0xd5b9, 0xd5ba,
- 0xd5bb, 0xd5bc, 0x0000, 0xd5bd, 0xd5be, 0xd5bf, 0xd5c0, 0xd5c1,
- 0xd5c2, 0xd5c3, 0xd5c4, 0xd5c5, 0xd5c6, 0xd5c7, 0x0000, 0x0000,
- 0x0000, 0xd5c8, 0xd5c9, 0xd5ca, 0xd5cb, 0xd5cc, 0xd5cd, 0xd5ce,
- 0xd5cf, 0xd5d0, 0xd5d1, 0xd5d2, 0xd5d3, 0xd5d4, 0xd5d5, 0xd5d6,
- 0xd5d7, 0xd5d8, 0x0000, 0xd5d9, 0xd5da, 0xd5db, 0xd5dc, 0xd5dd,
- 0xd5de, 0xd5df, 0xd5e0, 0xd5e1, 0xd5e2, 0xd5e3, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd5e4, 0xd5e5, 0xd5e6, 0xd5e7, 0xd5e8, 0xd5e9, 0xd5ea,
- 0xd5eb, 0xd5ec, 0xd5ed, 0xd5ee, 0xd5ef, 0xd5f0, 0xd5f1, 0xd5f2,
- 0xd5f3, 0xd5f4, 0x0000, 0xd5f5, 0xd5f6, 0xd5f7, 0xd5f8, 0xd5f9,
- 0xd5fa, 0xd5fb, 0xd5fc, 0xd5fd, 0xd5fe, 0xd5ff, 0x0000, 0x0000,
- 0x0000, 0xd600, 0xd601, 0xd602, 0xd603, 0xd604, 0xd605, 0xd606,
- 0xd607, 0xd608, 0xd609, 0xd60a, 0xd60b, 0xd60c, 0xd60d, 0xd60e,
- 0xd60f, 0xd610, 0x0000, 0xd611, 0xd612, 0xd613, 0xd614, 0xd615,
- 0xd616, 0xd617, 0xd618, 0xd619, 0xd61a, 0xd61b, 0x0000, 0x0000,
- 0x0000, 0xd61c, 0xd61d, 0xd61e, 0xd61f, 0xd620, 0xd621, 0xd622,
- 0xd623, 0xd624, 0xd625, 0xd626, 0xd627, 0xd628, 0xd629, 0xd62a,
- 0xd62b, 0xd62c, 0x0000, 0xd62d, 0xd62e, 0xd62f, 0xd630, 0xd631,
- 0xd632, 0xd633, 0xd634, 0xd635, 0xd636, 0xd637, 0x0000, 0x0000,
- 0x0000, 0xd638, 0xd639, 0xd63a, 0xd63b, 0xd63c, 0xd63d, 0xd63e,
- 0xd63f, 0xd640, 0xd641, 0xd642, 0xd643, 0xd644, 0xd645, 0xd646,
- 0xd647, 0xd648, 0x0000, 0xd649, 0xd64a, 0xd64b, 0xd64c, 0xd64d,
- 0xd64e, 0xd64f, 0xd650, 0xd651, 0xd652, 0xd653, 0x0000, 0x0000,
- 0x0000, 0xd654, 0xd655, 0xd656, 0xd657, 0xd658, 0xd659, 0xd65a,
- 0xd65b, 0xd65c, 0xd65d, 0xd65e, 0xd65f, 0xd660, 0xd661, 0xd662,
- 0xd663, 0xd664, 0x0000, 0xd665, 0xd666, 0xd667, 0xd668, 0xd669,
- 0xd66a, 0xd66b, 0xd66c, 0xd66d, 0xd66e, 0xd66f, 0x0000, 0x0000,
- 0x0000, 0xd670, 0xd671, 0xd672, 0xd673, 0xd674, 0xd675, 0xd676,
- 0xd677, 0xd678, 0xd679, 0xd67a, 0xd67b, 0xd67c, 0xd67d, 0xd67e,
- 0xd67f, 0xd680, 0x0000, 0xd681, 0xd682, 0xd683, 0xd684, 0xd685,
- 0xd686, 0xd687, 0xd688, 0xd689, 0xd68a, 0xd68b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd68c, 0xd68d, 0xd68e, 0xd68f, 0xd690, 0xd691, 0xd692,
- 0xd693, 0xd694, 0xd695, 0xd696, 0xd697, 0xd698, 0xd699, 0xd69a,
- 0xd69b, 0xd69c, 0x0000, 0xd69d, 0xd69e, 0xd69f, 0xd6a0, 0xd6a1,
- 0xd6a2, 0xd6a3, 0xd6a4, 0xd6a5, 0xd6a6, 0xd6a7, 0x0000, 0x0000,
- 0x0000, 0xd6a8, 0xd6a9, 0xd6aa, 0xd6ab, 0xd6ac, 0xd6ad, 0xd6ae,
- 0xd6af, 0xd6b0, 0xd6b1, 0xd6b2, 0xd6b3, 0xd6b4, 0xd6b5, 0xd6b6,
- 0xd6b7, 0xd6b8, 0x0000, 0xd6b9, 0xd6ba, 0xd6bb, 0xd6bc, 0xd6bd,
- 0xd6be, 0xd6bf, 0xd6c0, 0xd6c1, 0xd6c2, 0xd6c3, 0x0000, 0x0000,
- 0x0000, 0xd6c4, 0xd6c5, 0xd6c6, 0xd6c7, 0xd6c8, 0xd6c9, 0xd6ca,
- 0xd6cb, 0xd6cc, 0xd6cd, 0xd6ce, 0xd6cf, 0xd6d0, 0xd6d1, 0xd6d2,
- 0xd6d3, 0xd6d4, 0x0000, 0xd6d5, 0xd6d6, 0xd6d7, 0xd6d8, 0xd6d9,
- 0xd6da, 0xd6db, 0xd6dc, 0xd6dd, 0xd6de, 0xd6df, 0x0000, 0x0000,
- 0x0000, 0xd6e0, 0xd6e1, 0xd6e2, 0xd6e3, 0xd6e4, 0xd6e5, 0xd6e6,
- 0xd6e7, 0xd6e8, 0xd6e9, 0xd6ea, 0xd6eb, 0xd6ec, 0xd6ed, 0xd6ee,
- 0xd6ef, 0xd6f0, 0x0000, 0xd6f1, 0xd6f2, 0xd6f3, 0xd6f4, 0xd6f5,
- 0xd6f6, 0xd6f7, 0xd6f8, 0xd6f9, 0xd6fa, 0xd6fb, 0x0000, 0x0000,
- 0x0000, 0xd6fc, 0xd6fd, 0xd6fe, 0xd6ff, 0xd700, 0xd701, 0xd702,
- 0xd703, 0xd704, 0xd705, 0xd706, 0xd707, 0xd708, 0xd709, 0xd70a,
- 0xd70b, 0xd70c, 0x0000, 0xd70d, 0xd70e, 0xd70f, 0xd710, 0xd711,
- 0xd712, 0xd713, 0xd714, 0xd715, 0xd716, 0xd717, 0x0000, 0x0000,
- 0x0000, 0xd718, 0xd719, 0xd71a, 0xd71b, 0xd71c, 0xd71d, 0xd71e,
- 0xd71f, 0xd720, 0xd721, 0xd722, 0xd723, 0xd724, 0xd725, 0xd726,
- 0xd727, 0xd728, 0x0000, 0xd729, 0xd72a, 0xd72b, 0xd72c, 0xd72d,
- 0xd72e, 0xd72f, 0xd730, 0xd731, 0xd732, 0xd733, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xd734, 0xd735, 0xd736, 0xd737, 0xd738, 0xd739, 0xd73a,
- 0xd73b, 0xd73c, 0xd73d, 0xd73e, 0xd73f, 0xd740, 0xd741, 0xd742,
- 0xd743, 0xd744, 0x0000, 0xd745, 0xd746, 0xd747, 0xd748, 0xd749,
- 0xd74a, 0xd74b, 0xd74c, 0xd74d, 0xd74e, 0xd74f, 0x0000, 0x0000,
- 0x0000, 0xd750, 0xd751, 0xd752, 0xd753, 0xd754, 0xd755, 0xd756,
- 0xd757, 0xd758, 0xd759, 0xd75a, 0xd75b, 0xd75c, 0xd75d, 0xd75e,
- 0xd75f, 0xd760, 0x0000, 0xd761, 0xd762, 0xd763, 0xd764, 0xd765,
- 0xd766, 0xd767, 0xd768, 0xd769, 0xd76a, 0xd76b, 0x0000, 0x0000,
- 0x0000, 0xd76c, 0xd76d, 0xd76e, 0xd76f, 0xd770, 0xd771, 0xd772,
- 0xd773, 0xd774, 0xd775, 0xd776, 0xd777, 0xd778, 0xd779, 0xd77a,
- 0xd77b, 0xd77c, 0x0000, 0xd77d, 0xd77e, 0xd77f, 0xd780, 0xd781,
- 0xd782, 0xd783, 0xd784, 0xd785, 0xd786, 0xd787, 0x0000, 0x0000,
- 0x0000, 0xd788, 0xd789, 0xd78a, 0xd78b, 0xd78c, 0xd78d, 0xd78e,
- 0xd78f, 0xd790, 0xd791, 0xd792, 0xd793, 0xd794, 0xd795, 0xd796,
- 0xd797, 0xd798, 0x0000, 0xd799, 0xd79a, 0xd79b, 0xd79c, 0xd79d,
- 0xd79e, 0xd79f, 0xd7a0, 0xd7a1, 0xd7a2, 0xd7a3, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3164, 0x3001, 0x3002, 0x30fb, 0x2025, 0x22ef, 0x00a8,
- 0x3003, 0x2013, 0x2014, 0x2016, 0xff3c, 0xff5e, 0x2018, 0x2019,
- 0x201c, 0x201d, 0x3014, 0x3015, 0x3008, 0x3009, 0x300a, 0x300b,
- 0x300c, 0x300d, 0x300e, 0x300f, 0x3010, 0x3011, 0x00b1, 0x00d7,
- 0x00f7, 0x2260, 0x2264, 0x2265, 0x221e, 0x2234, 0x00b0, 0x2032,
- 0x2033, 0x2103, 0x212b, 0xffe0, 0xffe1, 0xffe5, 0x2642, 0x2640,
- 0x2220, 0x22a5, 0x2312, 0x2202, 0x2207, 0x2261, 0x2252, 0x00a7,
- 0x203b, 0x2606, 0x2605, 0x25cb, 0x25cf, 0x25ce, 0x25c7, 0x25c6,
- 0x25a1, 0x25a0, 0x25b3, 0x25b2, 0x25bd, 0x25bc, 0x2192, 0x2190,
- 0x2191, 0x2193, 0x2194, 0x3013, 0x00ab, 0x00bb, 0x221a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x223d, 0x221d, 0x2235, 0x222b, 0x222c, 0x2208, 0x220b,
- 0x2286, 0x2287, 0x2282, 0x2283, 0x222a, 0x2229, 0x2227, 0x2228,
- 0xffe2, 0x21d2, 0x21d4, 0x2200, 0x2203, 0x00b4, 0x02dc, 0x02c7,
- 0x02d8, 0x02dd, 0x02da, 0x02d9, 0x00b8, 0x02db, 0x00a1, 0x00bf,
- 0x2236, 0x222e, 0x2211, 0x220f, 0x00a4, 0x2109, 0x2030, 0x25c1,
- 0x25c0, 0x25b7, 0x25b6, 0x2664, 0x2660, 0x2661, 0x2665, 0x2667,
- 0x2663, 0x25c9, 0x25c8, 0x25a3, 0x25d0, 0x25d1, 0x2592, 0x25a4,
- 0x25a5, 0x25a8, 0x25a7, 0x25a6, 0x25a9, 0x2668, 0x260f, 0x260e,
- 0x261c, 0x261e, 0x00b6, 0x2020, 0x2021, 0x2195, 0x2197, 0x2199,
- 0x2196, 0x2198, 0x266d, 0x2669, 0x266a, 0x266c, 0x327f, 0x321c,
- 0x2116, 0x33c7, 0x2122, 0x33c2, 0x33d8, 0x2121, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xff01, 0xff02, 0xff03, 0xff04, 0xff05, 0xff06, 0xff07,
- 0xff08, 0xff09, 0xff0a, 0xff0b, 0xff0c, 0xff0d, 0xff0e, 0xff0f,
- 0xff10, 0xff11, 0xff12, 0xff13, 0xff14, 0xff15, 0xff16, 0xff17,
- 0xff18, 0xff19, 0xff1a, 0xff1b, 0xff1c, 0xff1d, 0xff1e, 0xff1f,
- 0xff20, 0xff21, 0xff22, 0xff23, 0xff24, 0xff25, 0xff26, 0xff27,
- 0xff28, 0xff29, 0xff2a, 0xff2b, 0xff2c, 0xff2d, 0xff2e, 0xff2f,
- 0xff30, 0xff31, 0xff32, 0xff33, 0xff34, 0xff35, 0xff36, 0xff37,
- 0xff38, 0xff39, 0xff3a, 0xff3b, 0xffe6, 0xff3d, 0xff3e, 0xff3f,
- 0xff40, 0xff41, 0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47,
- 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xff4f, 0xff50, 0xff51, 0xff52, 0xff53, 0xff54, 0xff55,
- 0xff56, 0xff57, 0xff58, 0xff59, 0xff5a, 0xff5b, 0xff5c, 0xff5d,
- 0xffe3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3165, 0x3166, 0x3167,
- 0x3168, 0x3169, 0x316a, 0x316b, 0x316c, 0x316d, 0x316e, 0x316f,
- 0x3170, 0x3171, 0x3172, 0x3173, 0x3174, 0x3175, 0x3176, 0x3177,
- 0x3178, 0x3179, 0x317a, 0x317b, 0x317c, 0x317d, 0x317e, 0x317f,
- 0x3180, 0x3181, 0x3182, 0x3183, 0x3184, 0x3185, 0x3186, 0x3187,
- 0x3188, 0x3189, 0x318a, 0x318b, 0x318c, 0x318d, 0x318e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176,
- 0x2177, 0x2178, 0x2179, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167,
- 0x2168, 0x2169, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,
- 0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f,
- 0x03a0, 0x03a1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8,
- 0x03a9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
- 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x03bf, 0x03c0, 0x03c1, 0x03c3, 0x03c4, 0x03c5, 0x03c6,
- 0x03c7, 0x03c8, 0x03c9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x2500, 0x2502, 0x250c, 0x2510, 0x2518, 0x2514, 0x251c,
- 0x252c, 0x2524, 0x2534, 0x253c, 0x2501, 0x2503, 0x250f, 0x2513,
- 0x251b, 0x2517, 0x2523, 0x2533, 0x252b, 0x253b, 0x254b, 0x2520,
- 0x252f, 0x2528, 0x2537, 0x253f, 0x251d, 0x2530, 0x2525, 0x2538,
- 0x2542, 0x2512, 0x2511, 0x251a, 0x2519, 0x2516, 0x2515, 0x250e,
- 0x250d, 0x251e, 0x251f, 0x2521, 0x2522, 0x2526, 0x2527, 0x2529,
- 0x252a, 0x252d, 0x252e, 0x2531, 0x2532, 0x2535, 0x2536, 0x2539,
- 0x253a, 0x253d, 0x253e, 0x2540, 0x2541, 0x2543, 0x2544, 0x2545,
- 0x2546, 0x2547, 0x2548, 0x2549, 0x254a, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x3395, 0x3396, 0x3397, 0x2113, 0x3398, 0x33c4, 0x33a3,
- 0x33a4, 0x33a5, 0x33a6, 0x3399, 0x339a, 0x339b, 0x339c, 0x339d,
- 0x339e, 0x339f, 0x33a0, 0x33a1, 0x33a2, 0x33ca, 0x338d, 0x338e,
- 0x338f, 0x33cf, 0x3388, 0x3389, 0x33c8, 0x33a7, 0x33a8, 0x33b0,
- 0x33b1, 0x33b2, 0x33b3, 0x33b4, 0x33b5, 0x33b6, 0x33b7, 0x33b8,
- 0x33b9, 0x3380, 0x3381, 0x3382, 0x3383, 0x3384, 0x33ba, 0x33bb,
- 0x33bc, 0x33bd, 0x33be, 0x33bf, 0x3390, 0x3391, 0x3392, 0x3393,
- 0x3394, 0x2126, 0x33c0, 0x33c1, 0x338a, 0x338b, 0x338c, 0x33d6,
- 0x33c5, 0x33ad, 0x33ae, 0x33af, 0x33db, 0x33a9, 0x33aa, 0x33ab,
- 0x33ac, 0x33dd, 0x33d0, 0x33d3, 0x33c3, 0x33c9, 0x33dc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x33c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x00c6, 0x00d0, 0x00aa, 0x0126, 0x0000, 0x0132, 0x0000,
- 0x013f, 0x0141, 0x00d8, 0x0152, 0x00ba, 0x00de, 0x0166, 0x014a,
- 0x0000, 0x3260, 0x3261, 0x3262, 0x3263, 0x3264, 0x3265, 0x3266,
- 0x3267, 0x3268, 0x3269, 0x326a, 0x326b, 0x326c, 0x326d, 0x326e,
- 0x326f, 0x3270, 0x3271, 0x3272, 0x3273, 0x3274, 0x3275, 0x3276,
- 0x3277, 0x3278, 0x3279, 0x327a, 0x327b, 0x24d0, 0x24d1, 0x24d2,
- 0x24d3, 0x24d4, 0x24d5, 0x24d6, 0x24d7, 0x24d8, 0x24d9, 0x24da,
- 0x24db, 0x24dc, 0x24dd, 0x24de, 0x24df, 0x24e0, 0x24e1, 0x24e2,
- 0x24e3, 0x24e4, 0x24e5, 0x24e6, 0x24e7, 0x24e8, 0x24e9, 0x2460,
- 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468,
- 0x2469, 0x246a, 0x246b, 0x246c, 0x246d, 0x246e, 0x00bd, 0x2153,
- 0x2154, 0x00bc, 0x00be, 0x215b, 0x215c, 0x215d, 0x215e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x00e6, 0x0111, 0x00f0, 0x0127, 0x0131, 0x0133, 0x0138,
- 0x0140, 0x0142, 0x00f8, 0x0153, 0x00df, 0x00fe, 0x0167, 0x014b,
- 0x0149, 0x3200, 0x3201, 0x3202, 0x3203, 0x3204, 0x3205, 0x3206,
- 0x3207, 0x3208, 0x3209, 0x320a, 0x320b, 0x320c, 0x320d, 0x320e,
- 0x320f, 0x3210, 0x3211, 0x3212, 0x3213, 0x3214, 0x3215, 0x3216,
- 0x3217, 0x3218, 0x3219, 0x321a, 0x321b, 0x249c, 0x249d, 0x249e,
- 0x249f, 0x24a0, 0x24a1, 0x24a2, 0x24a3, 0x24a4, 0x24a5, 0x24a6,
- 0x24a7, 0x24a8, 0x24a9, 0x24aa, 0x24ab, 0x24ac, 0x24ad, 0x24ae,
- 0x24af, 0x24b0, 0x24b1, 0x24b2, 0x24b3, 0x24b4, 0x24b5, 0x2474,
- 0x2475, 0x2476, 0x2477, 0x2478, 0x2479, 0x247a, 0x247b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x247c, 0x247d, 0x247e, 0x247f, 0x2480, 0x2481, 0x2482,
- 0x00b9, 0x00b2, 0x00b3, 0x2074, 0x207f, 0x2081, 0x2082, 0x2083,
- 0x2084, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, 0x3047,
- 0x3048, 0x3049, 0x304a, 0x304b, 0x304c, 0x304d, 0x304e, 0x304f,
- 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, 0x3057,
- 0x3058, 0x3059, 0x305a, 0x305b, 0x305c, 0x305d, 0x305e, 0x305f,
- 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, 0x3067,
- 0x3068, 0x3069, 0x306a, 0x306b, 0x306c, 0x306d, 0x306e, 0x306f,
- 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, 0x3077,
- 0x3078, 0x3079, 0x307a, 0x307b, 0x307c, 0x307d, 0x307e, 0x307f,
- 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, 0x3087,
- 0x3088, 0x3089, 0x308a, 0x308b, 0x308c, 0x308d, 0x308e, 0x308f,
- 0x3090, 0x3091, 0x3092, 0x3093, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x30a1, 0x30a2, 0x30a3, 0x30a4, 0x30a5, 0x30a6, 0x30a7,
- 0x30a8, 0x30a9, 0x30aa, 0x30ab, 0x30ac, 0x30ad, 0x30ae, 0x30af,
- 0x30b0, 0x30b1, 0x30b2, 0x30b3, 0x30b4, 0x30b5, 0x30b6, 0x30b7,
- 0x30b8, 0x30b9, 0x30ba, 0x30bb, 0x30bc, 0x30bd, 0x30be, 0x30bf,
- 0x30c0, 0x30c1, 0x30c2, 0x30c3, 0x30c4, 0x30c5, 0x30c6, 0x30c7,
- 0x30c8, 0x30c9, 0x30ca, 0x30cb, 0x30cc, 0x30cd, 0x30ce, 0x30cf,
- 0x30d0, 0x30d1, 0x30d2, 0x30d3, 0x30d4, 0x30d5, 0x30d6, 0x30d7,
- 0x30d8, 0x30d9, 0x30da, 0x30db, 0x30dc, 0x30dd, 0x30de, 0x30df,
- 0x30e0, 0x30e1, 0x30e2, 0x30e3, 0x30e4, 0x30e5, 0x30e6, 0x30e7,
- 0x30e8, 0x30e9, 0x30ea, 0x30eb, 0x30ec, 0x30ed, 0x30ee, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x30ef, 0x30f0, 0x30f1, 0x30f2, 0x30f3, 0x30f4, 0x30f5,
- 0x30f6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0401,
- 0x0416, 0x0417, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d,
- 0x041e, 0x041f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425,
- 0x0426, 0x0427, 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d,
- 0x042e, 0x042f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0451,
- 0x0436, 0x0437, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d,
- 0x043e, 0x043f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445,
- 0x0446, 0x0447, 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d,
- 0x044e, 0x044f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x4f3d, 0x4f73, 0x5047, 0x50f9, 0x52a0, 0x53ef, 0x5475,
- 0x54e5, 0x5609, 0x5ac1, 0x5bb6, 0x6687, 0x67b6, 0x67b7, 0x67ef,
- 0x6b4c, 0x73c2, 0x75c2, 0x7a3c, 0x82db, 0x8304, 0x8857, 0x8888,
- 0x8a36, 0x8cc8, 0x8dcf, 0x8efb, 0x8fe6, 0x99d5, 0x523b, 0x5374,
- 0x5404, 0x606a, 0x6164, 0x6bbc, 0x73cf, 0x811a, 0x89ba, 0x89d2,
- 0x95a3, 0x4f83, 0x520a, 0x58be, 0x5978, 0x59e6, 0x5e72, 0x5e79,
- 0x61c7, 0x63c0, 0x6746, 0x67ec, 0x687f, 0x6f97, 0x764e, 0x770b,
- 0x78f5, 0x7a08, 0x7aff, 0x7c21, 0x809d, 0x826e, 0x8271, 0x8aeb,
- 0x9593, 0x4e6b, 0x559d, 0x66f7, 0x6e34, 0x78a3, 0x7aed, 0x845b,
- 0x8910, 0x874e, 0x97a8, 0x52d8, 0x574e, 0x582a, 0x5d4c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x611f, 0x61be, 0x6221, 0x6562, 0x67d1, 0x6a44, 0x6e1b,
- 0x7518, 0x75b3, 0x76e3, 0x77b0, 0x7d3a, 0x90af, 0x9451, 0x9452,
- 0x9f95, 0x5323, 0x5cac, 0x7532, 0x80db, 0x9240, 0x9598, 0x525b,
- 0x5808, 0x59dc, 0x5ca1, 0x5d17, 0x5eb7, 0x5f3a, 0x5f4a, 0x6177,
- 0x6c5f, 0x757a, 0x7586, 0x7ce0, 0x7d73, 0x7db1, 0x7f8c, 0x8154,
- 0x8221, 0x8591, 0x8941, 0x8b1b, 0x92fc, 0x964d, 0x9c47, 0x4ecb,
- 0x4ef7, 0x500b, 0x51f1, 0x584f, 0x6137, 0x613e, 0x6168, 0x6539,
- 0x69ea, 0x6f11, 0x75a5, 0x7686, 0x76d6, 0x7b87, 0x82a5, 0x84cb,
- 0x8c48, 0x93a7, 0x958b, 0x5580, 0x5ba2, 0x5751, 0x66f4, 0x7cb3,
- 0x7fb9, 0x91b5, 0x5028, 0x53bb, 0x5c45, 0x5de8, 0x62d2, 0x636e,
- 0x64da, 0x64e7, 0x6e20, 0x70ac, 0x795b, 0x8ddd, 0x8e1e, 0x8eca,
- 0x907d, 0x9245, 0x92f8, 0x4e7e, 0x4ef6, 0x5065, 0x5dfe, 0x5efa,
- 0x6106, 0x6957, 0x8171, 0x8654, 0x8e47, 0x9375, 0x9a2b, 0x4e5e,
- 0x5091, 0x6770, 0x6840, 0x5109, 0x528d, 0x5292, 0x6aa2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x77bc, 0x9210, 0x9ed4, 0x52ab, 0x602f, 0x8ff2, 0x5048,
- 0x61a9, 0x63ed, 0x64ca, 0x683c, 0x6a84, 0x6fc0, 0x8188, 0x89a1,
- 0x9694, 0x5805, 0x727d, 0x72ac, 0x7504, 0x7d79, 0x7e6d, 0x80a9,
- 0x898b, 0x8b74, 0x9063, 0x9d51, 0x6289, 0x6c7a, 0x6f54, 0x7d50,
- 0x7f3a, 0x8a23, 0x517c, 0x614a, 0x7b9d, 0x8b19, 0x9257, 0x938c,
- 0x4eac, 0x4fd3, 0x501e, 0x50be, 0x5106, 0x52c1, 0x52cd, 0x537f,
- 0x5770, 0x5883, 0x5e9a, 0x5f91, 0x6176, 0x61ac, 0x64ce, 0x656c,
- 0x666f, 0x66bb, 0x0000, 0x6897, 0x6d87, 0x7085, 0x70f1, 0x749f,
- 0x74a5, 0x74ca, 0x75d9, 0x786c, 0x78ec, 0x7adf, 0x7af6, 0x7d45,
- 0x7d93, 0x8015, 0x803f, 0x811b, 0x8396, 0x8b66, 0x8f15, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9015, 0x93e1, 0x9803, 0x9838, 0x9a5a, 0x9be8, 0x4fc2,
- 0x5553, 0x583a, 0x5951, 0x5b63, 0x5c46, 0x60b8, 0x6212, 0x6842,
- 0x68b0, 0x68e8, 0x6eaa, 0x754c, 0x7678, 0x78ce, 0x7a3d, 0x7cfb,
- 0x7e6b, 0x7e7c, 0x8a08, 0x8aa1, 0x8c3f, 0x968e, 0x9dc4, 0x53e4,
- 0x53e9, 0x544a, 0x5471, 0x56fa, 0x59d1, 0x5b64, 0x5c3b, 0x5eab,
- 0x62f7, 0x6537, 0x6545, 0x6572, 0x66a0, 0x67af, 0x69c1, 0x6cbd,
- 0x75fc, 0x7690, 0x777e, 0x7a3f, 0x7f94, 0x8003, 0x80a1, 0x818f,
- 0x82e6, 0x82fd, 0x83f0, 0x85c1, 0x8831, 0x88b4, 0x8aa5, 0x0000,
- 0x8f9c, 0x932e, 0x96c7, 0x9867, 0x9ad8, 0x9f13, 0x54ed, 0x659b,
- 0x66f2, 0x688f, 0x7a40, 0x8c37, 0x9d60, 0x56f0, 0x5764, 0x5d11,
- 0x6606, 0x68b1, 0x68cd, 0x6efe, 0x7428, 0x889e, 0x9be4, 0x6c68,
- 0x6ed1, 0x9aa8, 0x4f9b, 0x516c, 0x5171, 0x529f, 0x5b54, 0x5de5,
- 0x6050, 0x606d, 0x62f1, 0x63a7, 0x653b, 0x73d9, 0x7a7a, 0x86a3,
- 0x8ca2, 0x978f, 0x4e32, 0x5be1, 0x6208, 0x679c, 0x74dc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x79d1, 0x83d3, 0x8a87, 0x8ab2, 0x8de8, 0x904e, 0x934b,
- 0x9846, 0x5ed3, 0x69e8, 0x85ff, 0x90ed, 0x0000, 0x51a0, 0x5b98,
- 0x5bec, 0x6163, 0x68fa, 0x6b3e, 0x704c, 0x742f, 0x74d8, 0x7ba1,
- 0x7f50, 0x83c5, 0x89c0, 0x8cab, 0x95dc, 0x9928, 0x522e, 0x605d,
- 0x62ec, 0x9002, 0x4f8a, 0x5149, 0x5321, 0x58d9, 0x5ee3, 0x66e0,
- 0x6d38, 0x709a, 0x72c2, 0x73d6, 0x7b50, 0x80f1, 0x945b, 0x5366,
- 0x639b, 0x7f6b, 0x4e56, 0x5080, 0x584a, 0x58de, 0x602a, 0x6127,
- 0x62d0, 0x69d0, 0x9b41, 0x5b8f, 0x7d18, 0x80b1, 0x8f5f, 0x4ea4,
- 0x50d1, 0x54ac, 0x55ac, 0x5b0c, 0x5da0, 0x5de7, 0x652a, 0x654e,
- 0x6821, 0x6a4b, 0x72e1, 0x768e, 0x77ef, 0x7d5e, 0x7ff9, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x81a0, 0x854e, 0x86df, 0x8f03, 0x8f4e, 0x90ca, 0x9903,
- 0x9a55, 0x9bab, 0x4e18, 0x4e45, 0x4e5d, 0x4ec7, 0x4ff1, 0x5177,
- 0x52fe, 0x5340, 0x53e3, 0x53e5, 0x548e, 0x5614, 0x5775, 0x57a2,
- 0x5bc7, 0x5d87, 0x5ed0, 0x61fc, 0x62d8, 0x6551, 0x67b8, 0x67e9,
- 0x69cb, 0x6b50, 0x6bc6, 0x6bec, 0x6c42, 0x6e9d, 0x7078, 0x72d7,
- 0x7396, 0x7403, 0x77bf, 0x77e9, 0x7a76, 0x7d7f, 0x8009, 0x81fc,
- 0x8205, 0x820a, 0x82df, 0x8862, 0x8b33, 0x8cfc, 0x8ec0, 0x9011,
- 0x90b1, 0x9264, 0x92b6, 0x99d2, 0x9a45, 0x9ce9, 0x9dd7, 0x9f9c,
- 0x570b, 0x5c40, 0x83ca, 0x97a0, 0x97ab, 0x9eb4, 0x541b, 0x7a98,
- 0x7fa4, 0x88d9, 0x8ecd, 0x90e1, 0x5800, 0x5c48, 0x6398, 0x7a9f,
- 0x5bae, 0x5f13, 0x7a79, 0x7aae, 0x828e, 0x8eac, 0x5026, 0x5238,
- 0x52f8, 0x5377, 0x5708, 0x62f3, 0x6372, 0x6b0a, 0x6dc3, 0x7737,
- 0x53a5, 0x7357, 0x8568, 0x8e76, 0x95d5, 0x673a, 0x6ac3, 0x6f70,
- 0x8a6d, 0x8ecc, 0x994b, 0x0000, 0x6677, 0x6b78, 0x8cb4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9b3c, 0x0000, 0x53eb, 0x572d, 0x594e, 0x63c6, 0x69fb,
- 0x73ea, 0x7845, 0x7aba, 0x7ac5, 0x7cfe, 0x8475, 0x898f, 0x8d73,
- 0x9035, 0x95a8, 0x52fb, 0x5747, 0x7547, 0x7b60, 0x83cc, 0x921e,
- 0x0000, 0x6a58, 0x514b, 0x524b, 0x5287, 0x621f, 0x68d8, 0x6975,
- 0x9699, 0x50c5, 0x52a4, 0x52e4, 0x61c3, 0x65a4, 0x6839, 0x69ff,
- 0x747e, 0x7b4b, 0x82b9, 0x83eb, 0x89b2, 0x8b39, 0x8fd1, 0x9949,
- 0x0000, 0x4eca, 0x5997, 0x64d2, 0x6611, 0x6a8e, 0x7434, 0x7981,
- 0x79bd, 0x82a9, 0x887e, 0x887f, 0x895f, 0x91d1, 0x9326, 0x4f0b,
- 0x53ca, 0x6025, 0x6271, 0x6c72, 0x7d1a, 0x7d66, 0x4e98, 0x5162,
- 0x77dc, 0x80af, 0x4f01, 0x4f0e, 0x5176, 0x5180, 0x55dc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5668, 0x573b, 0x57fa, 0x57fc, 0x5914, 0x5947, 0x5993,
- 0x5bc4, 0x5c90, 0x5d0e, 0x5df1, 0x5e7e, 0x5fcc, 0x6280, 0x65d7,
- 0x65e3, 0x671e, 0x671f, 0x675e, 0x68cb, 0x68c4, 0x6a5f, 0x6b3a,
- 0x6c23, 0x6c7d, 0x6c82, 0x6dc7, 0x7398, 0x7426, 0x742a, 0x7482,
- 0x74a3, 0x7578, 0x757f, 0x7881, 0x78ef, 0x7941, 0x7947, 0x7948,
- 0x797a, 0x7b95, 0x7d00, 0x7dba, 0x7f88, 0x8006, 0x802d, 0x808c,
- 0x8a18, 0x8b4f, 0x0000, 0x8d77, 0x9321, 0x9324, 0x98e2, 0x9951,
- 0x9a0e, 0x9a0f, 0x9a65, 0x9e92, 0x7dca, 0x4f76, 0x5409, 0x62ee,
- 0x6854, 0x0000, 0x55ab, 0x513a, 0x5587, 0x5948, 0x5a1c, 0x61e6,
- 0x61f6, 0x62cf, 0x62ff, 0x7669, 0x7f85, 0x863f, 0x87ba, 0x88f8,
- 0x908f, 0x90a3, 0x6a02, 0x6d1b, 0x70d9, 0x73de, 0x843d, 0x8afe,
- 0x916a, 0x99f1, 0x4e82, 0x5375, 0x6696, 0x6b04, 0x7156, 0x721b,
- 0x862d, 0x96e3, 0x9e1e, 0x634f, 0x637a, 0x5357, 0x5d50, 0x678f,
- 0x6960, 0x6e73, 0x6feb, 0x7537, 0x85cd, 0x8964, 0x62c9, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7d0d, 0x81d8, 0x881f, 0x8872, 0x56ca, 0x5a18, 0x5eca,
- 0x6717, 0x6d6a, 0x72fc, 0x90de, 0x4e43, 0x4f86, 0x5167, 0x0000,
- 0x67f0, 0x8010, 0x51b7, 0x5973, 0x5e74, 0x649a, 0x79ca, 0x5ff5,
- 0x606c, 0x62c8, 0x637b, 0x5be7, 0x5bd7, 0x52aa, 0x52de, 0x5974,
- 0x5f29, 0x6012, 0x64c4, 0x6ad3, 0x7210, 0x7459, 0x76e7, 0x8001,
- 0x8606, 0x865c, 0x8def, 0x9732, 0x99d1, 0x9b6f, 0x9dfa, 0x788c,
- 0x797f, 0x7da0, 0x83c9, 0x9304, 0x9e7f, 0x8ad6, 0x58df, 0x5f04,
- 0x6fc3, 0x7c60, 0x807e, 0x81bf, 0x8fb2, 0x60f1, 0x7262, 0x78ca,
- 0x8166, 0x8cc2, 0x96f7, 0x5c3f, 0x58d8, 0x5c62, 0x6a13, 0x6dda,
- 0x6f0f, 0x7d2f, 0x7e37, 0x964b, 0x5ae9, 0x8a25, 0x677b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7d10, 0x52d2, 0x808b, 0x51dc, 0x51cc, 0x7a1c, 0x7dbe,
- 0x80fd, 0x83f1, 0x9675, 0x5c3c, 0x6ce5, 0x533f, 0x6eba, 0x591a,
- 0x8336, 0x4e39, 0x4eb6, 0x4f46, 0x55ae, 0x5718, 0x58c7, 0x5f56,
- 0x65b7, 0x65e6, 0x6a80, 0x6bb5, 0x6e4d, 0x77ed, 0x7aef, 0x7c1e,
- 0x7dde, 0x86cb, 0x8892, 0x9132, 0x935b, 0x64bb, 0x6fbe, 0x737a,
- 0x75b8, 0x9054, 0x5556, 0x574d, 0x61ba, 0x64d4, 0x66c7, 0x6de1,
- 0x6e5b, 0x6f6d, 0x6fb9, 0x75f0, 0x8043, 0x81bd, 0x8541, 0x8983,
- 0x8ac7, 0x8b5a, 0x931f, 0x6c93, 0x7553, 0x7b54, 0x8e0f, 0x905d,
- 0x5510, 0x5802, 0x5858, 0x5e62, 0x6207, 0x649e, 0x68e0, 0x7576,
- 0x7cd6, 0x87b3, 0x9ee8, 0x4ee3, 0x5788, 0x576e, 0x5927, 0x5c0d,
- 0x5cb1, 0x5e36, 0x5f85, 0x6234, 0x64e1, 0x73b3, 0x81fa, 0x888b,
- 0x8cb8, 0x968a, 0x9edb, 0x5b85, 0x5fb7, 0x60b3, 0x5012, 0x5200,
- 0x5230, 0x5716, 0x5835, 0x5857, 0x5c0e, 0x5c60, 0x5cf6, 0x5d8b,
- 0x5ea6, 0x5f92, 0x60bc, 0x6311, 0x6389, 0x6417, 0x6843, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x68f9, 0x6ac2, 0x6dd8, 0x6e21, 0x6ed4, 0x6fe4, 0x71fe,
- 0x76dc, 0x7779, 0x79b1, 0x7a3b, 0x8404, 0x89a9, 0x8ced, 0x8df3,
- 0x8e48, 0x9003, 0x9014, 0x9053, 0x90fd, 0x934d, 0x9676, 0x97dc,
- 0x6bd2, 0x7006, 0x7258, 0x72a2, 0x7368, 0x7763, 0x79bf, 0x7be4,
- 0x7e9b, 0x8b80, 0x58a9, 0x60c7, 0x6566, 0x65fd, 0x66be, 0x6c8c,
- 0x711e, 0x71c9, 0x8c5a, 0x9813, 0x4e6d, 0x7a81, 0x4edd, 0x51ac,
- 0x51cd, 0x52d5, 0x540c, 0x61a7, 0x6771, 0x6850, 0x68df, 0x6d1e,
- 0x6f7c, 0x75bc, 0x77b3, 0x7ae5, 0x80f4, 0x8463, 0x9285, 0x515c,
- 0x6597, 0x675c, 0x6793, 0x75d8, 0x7ac7, 0x8373, 0x0000, 0x8c46,
- 0x9017, 0x982d, 0x5c6f, 0x81c0, 0x829a, 0x9041, 0x906f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x920d, 0x5f97, 0x5d9d, 0x6a59, 0x71c8, 0x767b, 0x7b49,
- 0x85e4, 0x8b04, 0x9127, 0x9a30, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7d61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x6b12, 0x703e, 0x0000, 0x0000, 0x0000, 0x524c,
- 0x8fa3, 0x0000, 0x64e5, 0x652c, 0x6b16, 0x0000, 0x7c43, 0x7e9c,
- 0x0000, 0x0000, 0x89bd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x7405, 0x746f, 0x8782, 0x0000, 0x0000, 0x5d0d,
- 0x5fa0, 0x840a, 0x0000, 0x63a0, 0x7565, 0x4eae, 0x5006, 0x5169,
- 0x51c9, 0x6881, 0x6a11, 0x7cae, 0x7cb1, 0x7ce7, 0x826f, 0x8ad2,
- 0x8f1b, 0x91cf, 0x4fb6, 0x5137, 0x52f5, 0x5442, 0x5eec, 0x616e,
- 0x623e, 0x65c5, 0x6ada, 0x6ffe, 0x792a, 0x85dc, 0x8823, 0x95ad,
- 0x9a62, 0x9a6a, 0x9e97, 0x9ece, 0x529b, 0x66c6, 0x6b77, 0x701d,
- 0x792b, 0x8f62, 0x9742, 0x6190, 0x6200, 0x6523, 0x6f23, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7149, 0x7489, 0x7df4, 0x806f, 0x84ee, 0x8f26, 0x9023,
- 0x934a, 0x51bd, 0x5217, 0x52a3, 0x6d0c, 0x70c8, 0x88c2, 0x5ec9,
- 0x6582, 0x6bae, 0x6fc2, 0x7c3e, 0x7375, 0x4ee4, 0x4f36, 0x56f9,
- 0x0000, 0x5cba, 0x5dba, 0x601c, 0x73b2, 0x7b2d, 0x7f9a, 0x7fce,
- 0x8046, 0x901e, 0x9234, 0x96f6, 0x9748, 0x9818, 0x9f61, 0x4f8b,
- 0x6fa7, 0x79ae, 0x91b4, 0x96b7, 0x0000, 0x0000, 0x6488, 0x0000,
- 0x0000, 0x6f5e, 0x7018, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8f05, 0x0000, 0x0000, 0x0000, 0x9e75, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x9e93, 0x0000, 0x0000, 0x0000,
- 0x6727, 0x7027, 0x74cf, 0x0000, 0x0000, 0x5121, 0x7028, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x8cda, 0x8cf4, 0x0000, 0x4e86,
- 0x50da, 0x5bee, 0x5ed6, 0x6599, 0x71ce, 0x7642, 0x77ad, 0x804a,
- 0x84fc, 0x907c, 0x9b27, 0x9f8d, 0x0000, 0x5a41, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x763b, 0x0000, 0x0000, 0x851e, 0x8938, 0x93e4,
- 0x0000, 0x5289, 0x65d2, 0x67f3, 0x69b4, 0x6d41, 0x6e9c, 0x700f,
- 0x7409, 0x7460, 0x7559, 0x7624, 0x786b, 0x8b2c, 0x985e, 0x516d,
- 0x622e, 0x9678, 0x4f96, 0x502b, 0x5d19, 0x6dea, 0x7db8, 0x8f2a,
- 0x5f8b, 0x6144, 0x6817, 0x7387, 0x9686, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x695e, 0x0000, 0x0000, 0x0000, 0x0000, 0x4fda, 0x5229,
- 0x5398, 0x540f, 0x550e, 0x5c65, 0x60a7, 0x674e, 0x68a8, 0x6d6c,
- 0x7281, 0x72f8, 0x7406, 0x7483, 0x7570, 0x75e2, 0x7c6c, 0x7f79,
- 0x7fb8, 0x8389, 0x88cf, 0x88e1, 0x91cc, 0x91d0, 0x96e2, 0x9bc9,
- 0x541d, 0x6f7e, 0x71d0, 0x7498, 0x85fa, 0x8eaa, 0x96a3, 0x9c57,
- 0x9e9f, 0x6797, 0x6dcb, 0x7433, 0x81e8, 0x9716, 0x782c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7acb, 0x7b20, 0x7c92, 0x6469, 0x746a, 0x75f2, 0x78bc,
- 0x78e8, 0x99ac, 0x9b54, 0x9ebb, 0x5bde, 0x5e55, 0x6f20, 0x819c,
- 0x83ab, 0x9088, 0x4e07, 0x534d, 0x5a29, 0x5dd2, 0x5f4e, 0x6162,
- 0x633d, 0x6669, 0x66fc, 0x6eff, 0x6f2b, 0x7063, 0x779e, 0x842c,
- 0x8513, 0x883b, 0x8f13, 0x9945, 0x9c3b, 0x551c, 0x62b9, 0x672b,
- 0x6cab, 0x8309, 0x896a, 0x977a, 0x4ea1, 0x5984, 0x5fd8, 0x5fd9,
- 0x671b, 0x7db2, 0x7f54, 0x8292, 0x832b, 0x83bd, 0x8f1e, 0x9099,
- 0x57cb, 0x59b9, 0x5a92, 0x5bd0, 0x6627, 0x679a, 0x6885, 0x6bcf,
- 0x7164, 0x7f75, 0x8cb7, 0x8ce3, 0x9081, 0x9b45, 0x8108, 0x8c8a,
- 0x964c, 0x9a40, 0x9ea5, 0x5b5f, 0x6c13, 0x731b, 0x76f2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x76df, 0x840c, 0x51aa, 0x8993, 0x514d, 0x5195, 0x52c9,
- 0x68c9, 0x6c94, 0x7704, 0x7720, 0x7dbf, 0x7dec, 0x9762, 0x9eb5,
- 0x6ec5, 0x8511, 0x51a5, 0x540d, 0x547d, 0x660e, 0x669d, 0x6927,
- 0x6e9f, 0x76bf, 0x7791, 0x8317, 0x84c2, 0x879f, 0x9169, 0x9298,
- 0x9cf4, 0x8882, 0x4fae, 0x5192, 0x52df, 0x59c6, 0x5e3d, 0x6155,
- 0x6478, 0x6479, 0x66ae, 0x67d0, 0x6a21, 0x6bcd, 0x6bdb, 0x725f,
- 0x7261, 0x7441, 0x7738, 0x77db, 0x8017, 0x82bc, 0x8305, 0x8b00,
- 0x8b28, 0x8c8c, 0x6728, 0x6c90, 0x7267, 0x76ee, 0x7766, 0x7a46,
- 0x9da9, 0x6b7f, 0x6c92, 0x5922, 0x6726, 0x8499, 0x536f, 0x5893,
- 0x5999, 0x5edf, 0x63cf, 0x6634, 0x6773, 0x6e3a, 0x732b, 0x7ad7,
- 0x82d7, 0x9328, 0x52d9, 0x5deb, 0x61ae, 0x61cb, 0x620a, 0x62c7,
- 0x64ab, 0x65e0, 0x6959, 0x6b66, 0x6bcb, 0x7121, 0x73f7, 0x755d,
- 0x7e46, 0x821e, 0x8302, 0x856a, 0x8aa3, 0x8cbf, 0x9727, 0x9d61,
- 0x58a8, 0x9ed8, 0x5011, 0x520e, 0x543b, 0x554f, 0x6587, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6c76, 0x7d0a, 0x7d0b, 0x805e, 0x868a, 0x9580, 0x96ef,
- 0x52ff, 0x6c95, 0x7269, 0x5473, 0x5a9a, 0x5c3e, 0x5d4b, 0x5f4c,
- 0x5fae, 0x672a, 0x68b6, 0x6963, 0x6e3c, 0x6e44, 0x7709, 0x7c73,
- 0x7f8e, 0x8587, 0x8b0e, 0x8ff7, 0x9761, 0x9ef4, 0x5cb7, 0x60b6,
- 0x610d, 0x61ab, 0x654f, 0x65fb, 0x65fc, 0x6c11, 0x6cef, 0x739f,
- 0x73c9, 0x7de1, 0x9594, 0x5bc6, 0x871c, 0x8b10, 0x525d, 0x535a,
- 0x62cd, 0x640f, 0x64b2, 0x6734, 0x6a38, 0x6cca, 0x73c0, 0x749e,
- 0x7b94, 0x7c95, 0x7e1b, 0x818a, 0x8236, 0x8584, 0x8feb, 0x96f9,
- 0x99c1, 0x4f34, 0x534a, 0x53cd, 0x53db, 0x62cc, 0x642c, 0x6500,
- 0x6591, 0x69c3, 0x6cee, 0x6f58, 0x73ed, 0x7554, 0x7622, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x76e4, 0x76fc, 0x78d0, 0x78fb, 0x792c, 0x7d46, 0x822c,
- 0x87e0, 0x8fd4, 0x9812, 0x98ef, 0x52c3, 0x62d4, 0x64a5, 0x6e24,
- 0x6f51, 0x767c, 0x8dcb, 0x91b1, 0x9262, 0x9aee, 0x9b43, 0x5023,
- 0x508d, 0x574a, 0x59a8, 0x5c28, 0x5e47, 0x5f77, 0x623f, 0x653e,
- 0x65b9, 0x65c1, 0x6609, 0x678b, 0x699c, 0x6ec2, 0x78c5, 0x7d21,
- 0x80aa, 0x8180, 0x822b, 0x82b3, 0x84a1, 0x868c, 0x8a2a, 0x8b17,
- 0x90a6, 0x9632, 0x9f90, 0x500d, 0x4ff3, 0x5317, 0x57f9, 0x5f98,
- 0x62dc, 0x6392, 0x676f, 0x6e43, 0x7119, 0x76c3, 0x80cc, 0x80da,
- 0x88f4, 0x88f5, 0x8919, 0x8ce0, 0x8f29, 0x914d, 0x966a, 0x4f2f,
- 0x4f70, 0x5e1b, 0x67cf, 0x6822, 0x767d, 0x767e, 0x9b44, 0x5e61,
- 0x6a0a, 0x7169, 0x71d4, 0x756a, 0x0000, 0x7e41, 0x8543, 0x85e9,
- 0x98dc, 0x4f10, 0x7b4f, 0x7f70, 0x95a5, 0x51e1, 0x5e06, 0x68b5,
- 0x6c3e, 0x6c4e, 0x6cdb, 0x72af, 0x7bc4, 0x8303, 0x6cd5, 0x743a,
- 0x50fb, 0x5288, 0x58c1, 0x64d8, 0x6a97, 0x74a7, 0x7656, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x78a7, 0x8617, 0x95e2, 0x9739, 0x4fbf, 0x535e, 0x5f01,
- 0x8b8a, 0x8fa8, 0x8faf, 0x908a, 0x5225, 0x77a5, 0x9c49, 0x9f08,
- 0x4e19, 0x5002, 0x5175, 0x5c5b, 0x5e77, 0x661e, 0x663a, 0x67c4,
- 0x68c5, 0x70b3, 0x7501, 0x75c5, 0x79c9, 0x7add, 0x8f27, 0x9920,
- 0x9a08, 0x4fdd, 0x5821, 0x5831, 0x5bf6, 0x666e, 0x6b65, 0x6d11,
- 0x6e7a, 0x6f7d, 0x73e4, 0x752b, 0x83e9, 0x88dc, 0x8913, 0x8b5c,
- 0x8f14, 0x4f0f, 0x50d5, 0x5310, 0x535c, 0x5b93, 0x5fa9, 0x670d,
- 0x798f, 0x8179, 0x832f, 0x8514, 0x8907, 0x8986, 0x8f39, 0x8f3b,
- 0x99a5, 0x9c12, 0x672c, 0x4e76, 0x4ff8, 0x5949, 0x5c01, 0x5cef,
- 0x5cf0, 0x6367, 0x68d2, 0x70fd, 0x71a2, 0x742b, 0x7e2b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x84ec, 0x8702, 0x9022, 0x92d2, 0x9cf3, 0x4e0d, 0x4ed8,
- 0x4fef, 0x5085, 0x5256, 0x526f, 0x5426, 0x5490, 0x57e0, 0x592b,
- 0x5a66, 0x5b5a, 0x5b75, 0x5bcc, 0x5e9c, 0x0000, 0x6276, 0x6577,
- 0x65a7, 0x6d6e, 0x6ea5, 0x7236, 0x7b26, 0x7c3f, 0x7f36, 0x8150,
- 0x8151, 0x819a, 0x8240, 0x8299, 0x83a9, 0x8a03, 0x8ca0, 0x8ce6,
- 0x8cfb, 0x8d74, 0x8dba, 0x90e8, 0x91dc, 0x961c, 0x9644, 0x99d9,
- 0x9ce7, 0x0000, 0x5206, 0x5429, 0x5674, 0x58b3, 0x5954, 0x596e,
- 0x5fff, 0x61a4, 0x626e, 0x6610, 0x6c7e, 0x711a, 0x76c6, 0x7c89,
- 0x7cde, 0x7d1b, 0x82ac, 0x8cc1, 0x96f0, 0x0000, 0x4f5b, 0x5f17,
- 0x5f7f, 0x62c2, 0x5d29, 0x670b, 0x68da, 0x787c, 0x7e43, 0x9d6c,
- 0x4e15, 0x5099, 0x5315, 0x532a, 0x5351, 0x5983, 0x5a62, 0x5e87,
- 0x60b2, 0x618a, 0x6249, 0x6279, 0x6590, 0x6787, 0x69a7, 0x6bd4,
- 0x6bd6, 0x6bd7, 0x6bd8, 0x6cb8, 0x6ccc, 0x7435, 0x75fa, 0x7812,
- 0x7891, 0x79d5, 0x79d8, 0x7c83, 0x7dcb, 0x7fe1, 0x80a5, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x813e, 0x81c2, 0x83f2, 0x871a, 0x88e8, 0x8ab9, 0x8b6c,
- 0x8cbb, 0x9119, 0x975e, 0x98db, 0x9f3b, 0x56ac, 0x5b2a, 0x5f6c,
- 0x658c, 0x6ab3, 0x6baf, 0x6d5c, 0x6ff1, 0x7015, 0x725d, 0x73ad,
- 0x8ca7, 0x8cd3, 0x983b, 0x6191, 0x6c37, 0x8058, 0x9a01, 0x4e4d,
- 0x4e8b, 0x4e9b, 0x4ed5, 0x4f3a, 0x4f3c, 0x4f7f, 0x4fdf, 0x50ff,
- 0x53f2, 0x53f8, 0x5506, 0x55e3, 0x56db, 0x58eb, 0x5962, 0x5a11,
- 0x5beb, 0x5bfa, 0x5c04, 0x5df3, 0x5e2b, 0x5f99, 0x601d, 0x6368,
- 0x659c, 0x65af, 0x67f6, 0x67fb, 0x68ad, 0x6b7b, 0x6c99, 0x6cd7,
- 0x6e23, 0x7009, 0x7345, 0x7802, 0x793e, 0x7940, 0x7960, 0x79c1,
- 0x7be9, 0x7d17, 0x7d72, 0x8086, 0x820d, 0x838e, 0x84d1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x86c7, 0x88df, 0x8a50, 0x8a5e, 0x8b1d, 0x8cdc, 0x8d66,
- 0x8fad, 0x90aa, 0x98fc, 0x99df, 0x9e9d, 0x524a, 0x6578, 0x6714,
- 0x7d22, 0x5098, 0x522a, 0x5c71, 0x6563, 0x6c55, 0x73ca, 0x7523,
- 0x759d, 0x7b97, 0x849c, 0x9178, 0x9730, 0x4e77, 0x6492, 0x6bba,
- 0x715e, 0x85a9, 0x4e09, 0x53c3, 0x6749, 0x68ee, 0x6e17, 0x829f,
- 0x8518, 0x886b, 0x63f7, 0x6f81, 0x9212, 0x98af, 0x4e0a, 0x50b7,
- 0x50cf, 0x511f, 0x5546, 0x55aa, 0x5617, 0x5b40, 0x5c19, 0x5ce0,
- 0x5e38, 0x5e8a, 0x5ea0, 0x5ec2, 0x60f3, 0x6851, 0x6a61, 0x6e58,
- 0x723d, 0x7240, 0x72c0, 0x76f8, 0x7965, 0x7bb1, 0x7fd4, 0x88f3,
- 0x89f4, 0x8a73, 0x8c61, 0x8cde, 0x971c, 0x585e, 0x74bd, 0x8cfd,
- 0x55c7, 0x0000, 0x7a61, 0x0000, 0x8272, 0x7272, 0x751f, 0x7525,
- 0x7701, 0x7b19, 0x5885, 0x58fb, 0x5dbc, 0x5e8f, 0x5eb6, 0x5f90,
- 0x6055, 0x6292, 0x637f, 0x654d, 0x6691, 0x66d9, 0x66f8, 0x6816,
- 0x68f2, 0x7280, 0x745e, 0x7b6e, 0x7d6e, 0x7dd6, 0x7f72, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x80e5, 0x8212, 0x85af, 0x897f, 0x8a93, 0x901d, 0x92e4,
- 0x9ecd, 0x9f20, 0x5915, 0x596d, 0x5e2d, 0x60dc, 0x6614, 0x6673,
- 0x6790, 0x6c50, 0x6dc5, 0x6f5f, 0x77f3, 0x78a9, 0x84c6, 0x91cb,
- 0x932b, 0x4ed9, 0x50ca, 0x5148, 0x5584, 0x5b0b, 0x5ba3, 0x6247,
- 0x657e, 0x65cb, 0x6e32, 0x717d, 0x7401, 0x7444, 0x7487, 0x74bf,
- 0x766c, 0x79aa, 0x7dda, 0x7e55, 0x7fa8, 0x817a, 0x81b3, 0x8239,
- 0x861a, 0x87ec, 0x8a75, 0x8de3, 0x9078, 0x9291, 0x9425, 0x994d,
- 0x9bae, 0x5368, 0x5c51, 0x6954, 0x6cc4, 0x6d29, 0x6e2b, 0x820c,
- 0x859b, 0x893b, 0x8a2d, 0x8aaa, 0x96ea, 0x9f67, 0x5261, 0x66b9,
- 0x6bb2, 0x7e96, 0x87fe, 0x8d0d, 0x9583, 0x965d, 0x651d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6d89, 0x71ee, 0x8449, 0x57ce, 0x59d3, 0x5bac, 0x6027,
- 0x60fa, 0x6210, 0x661f, 0x665f, 0x7329, 0x73f9, 0x76db, 0x0000,
- 0x7b6c, 0x8056, 0x8072, 0x8165, 0x8aa0, 0x9192, 0x4e16, 0x52e2,
- 0x6b72, 0x6d17, 0x7a05, 0x7b39, 0x7d30, 0x0000, 0x8cb0, 0x53ec,
- 0x562f, 0x5851, 0x5bb5, 0x5c0f, 0x5c11, 0x5de2, 0x6240, 0x6383,
- 0x6414, 0x662d, 0x68b3, 0x6cbc, 0x6d88, 0x6eaf, 0x701f, 0x70a4,
- 0x71d2, 0x7526, 0x758f, 0x758e, 0x7619, 0x7b11, 0x7be0, 0x7c2b,
- 0x7d20, 0x7d39, 0x852c, 0x856d, 0x8607, 0x8a34, 0x900d, 0x9061,
- 0x90b5, 0x92b7, 0x97f6, 0x9a37, 0x4fd7, 0x5c6c, 0x675f, 0x6d91,
- 0x7c9f, 0x7e8c, 0x8b16, 0x8d16, 0x901f, 0x5b6b, 0x5dfd, 0x640d,
- 0x84c0, 0x905c, 0x98e1, 0x0000, 0x5b8b, 0x609a, 0x677e, 0x6dde,
- 0x8a1f, 0x8aa6, 0x9001, 0x980c, 0x5237, 0x0000, 0x7051, 0x788e,
- 0x9396, 0x8870, 0x91d7, 0x4fee, 0x53d7, 0x55fd, 0x56da, 0x5782,
- 0x58fd, 0x5ac2, 0x5b88, 0x5cab, 0x5cc0, 0x5e25, 0x6101, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x620d, 0x624b, 0x6388, 0x641c, 0x6536, 0x0000, 0x6a39,
- 0x6b8a, 0x6c34, 0x6d19, 0x6f31, 0x71e7, 0x72e9, 0x7378, 0x7407,
- 0x74b2, 0x7626, 0x7761, 0x79c0, 0x7a57, 0x7aea, 0x7cb9, 0x7d8f,
- 0x7dac, 0x7e61, 0x7f9e, 0x8129, 0x8331, 0x8490, 0x84da, 0x85ea,
- 0x8896, 0x8ab0, 0x8b90, 0x8f38, 0x9042, 0x9083, 0x916c, 0x9296,
- 0x92b9, 0x968b, 0x96a7, 0x96a8, 0x96d6, 0x9700, 0x9808, 0x9996,
- 0x9ad3, 0x9b1a, 0x53d4, 0x587e, 0x5919, 0x5b70, 0x5bbf, 0x6dd1,
- 0x6f5a, 0x719f, 0x7421, 0x74b9, 0x8085, 0x83fd, 0x5de1, 0x5f87,
- 0x5faa, 0x6042, 0x65ec, 0x6812, 0x696f, 0x6a53, 0x6b89, 0x6d35,
- 0x6df3, 0x73e3, 0x76fe, 0x77ac, 0x7b4d, 0x7d14, 0x8123, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x821c, 0x8340, 0x84f4, 0x8563, 0x8a62, 0x8ac4, 0x9187,
- 0x931e, 0x9806, 0x99b4, 0x620c, 0x8853, 0x8ff0, 0x9265, 0x5d07,
- 0x5d27, 0x5d69, 0x745f, 0x819d, 0x8768, 0x6fd5, 0x62fe, 0x7fd2,
- 0x8936, 0x8972, 0x4e1e, 0x4e58, 0x50e7, 0x52dd, 0x5347, 0x627f,
- 0x6607, 0x7e69, 0x8805, 0x965e, 0x4f8d, 0x5319, 0x5636, 0x59cb,
- 0x5aa4, 0x5c38, 0x5c4e, 0x5c4d, 0x5e02, 0x5f11, 0x6043, 0x65bd,
- 0x662f, 0x6642, 0x67be, 0x67f4, 0x731c, 0x77e2, 0x793a, 0x7fc5,
- 0x8494, 0x84cd, 0x8996, 0x8a66, 0x8a69, 0x8ae1, 0x8c55, 0x8c7a,
- 0x57f4, 0x5bd4, 0x5f0f, 0x606f, 0x62ed, 0x690d, 0x6b96, 0x6e5c,
- 0x7184, 0x7bd2, 0x8755, 0x8b58, 0x8efe, 0x98df, 0x98fe, 0x4f38,
- 0x4f81, 0x4fe1, 0x547b, 0x5a20, 0x5bb8, 0x613c, 0x65b0, 0x6668,
- 0x71fc, 0x7533, 0x795e, 0x7d33, 0x814e, 0x81e3, 0x8398, 0x85aa,
- 0x85ce, 0x8703, 0x8a0a, 0x8eab, 0x8f9b, 0x8fb0, 0x8fc5, 0x5931,
- 0x5ba4, 0x5be6, 0x6089, 0x5be9, 0x5c0b, 0x5fc3, 0x6c81, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6c88, 0x6df1, 0x700b, 0x751a, 0x82af, 0x8af6, 0x4ec0,
- 0x5341, 0x0000, 0x96d9, 0x6c0f, 0x4e9e, 0x4fc4, 0x5152, 0x555e,
- 0x5a25, 0x5ce8, 0x6211, 0x7259, 0x82bd, 0x83aa, 0x86fe, 0x8859,
- 0x8a1d, 0x963f, 0x96c5, 0x9913, 0x9d09, 0x9d5d, 0x580a, 0x5cb3,
- 0x5dbd, 0x5e44, 0x60e1, 0x6115, 0x63e1, 0x0000, 0x6e25, 0x9102,
- 0x9354, 0x984e, 0x9c10, 0x9f77, 0x5b89, 0x5cb8, 0x6309, 0x664f,
- 0x6848, 0x773c, 0x96c1, 0x978d, 0x9854, 0x9b9f, 0x65a1, 0x8b01,
- 0x8ecb, 0x95bc, 0x5535, 0x5ca9, 0x5dd6, 0x5eb5, 0x6697, 0x764c,
- 0x83f4, 0x95c7, 0x58d3, 0x62bc, 0x72ce, 0x9d28, 0x4ef0, 0x592e,
- 0x600f, 0x663b, 0x6b83, 0x79e7, 0x9d26, 0x5393, 0x54c0, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x57c3, 0x5d16, 0x611b, 0x66d6, 0x6daf, 0x788d, 0x827e,
- 0x9698, 0x9744, 0x5384, 0x627c, 0x6396, 0x6db2, 0x7e0a, 0x814b,
- 0x984d, 0x6afb, 0x7f4c, 0x9daf, 0x9e1a, 0x4e5f, 0x503b, 0x51b6,
- 0x591c, 0x60f9, 0x63f6, 0x6930, 0x723a, 0x8036, 0x82e5, 0x91ce,
- 0x5f31, 0x0000, 0x0000, 0x7d04, 0x0000, 0x846f, 0x84bb, 0x85e5,
- 0x8e8d, 0x0000, 0x4f6f, 0x0000, 0x0000, 0x58e4, 0x5b43, 0x6059,
- 0x63da, 0x6518, 0x656d, 0x6698, 0x0000, 0x694a, 0x6a23, 0x6d0b,
- 0x7001, 0x716c, 0x75d2, 0x760d, 0x79b3, 0x7a70, 0x0000, 0x7f8a,
- 0x0000, 0x8944, 0x0000, 0x8b93, 0x91c0, 0x967d, 0x0000, 0x990a,
- 0x5704, 0x5fa1, 0x65bc, 0x6f01, 0x7600, 0x79a6, 0x8a9e, 0x99ad,
- 0x9b5a, 0x9f6c, 0x5104, 0x61b6, 0x6291, 0x6a8d, 0x81c6, 0x5043,
- 0x5830, 0x5f66, 0x7109, 0x8a00, 0x8afa, 0x5b7c, 0x8616, 0x4ffa,
- 0x513c, 0x56b4, 0x5944, 0x63a9, 0x6df9, 0x5daa, 0x696d, 0x5186,
- 0x4e88, 0x4f59, 0x0000, 0x0000, 0x0000, 0x5982, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x6b5f, 0x6c5d, 0x0000, 0x74b5, 0x7916, 0x0000,
- 0x8207, 0x8245, 0x8339, 0x8f3f, 0x8f5d, 0x0000, 0x9918, 0x0000,
- 0x0000, 0x0000, 0x4ea6, 0x0000, 0x57df, 0x5f79, 0x6613, 0x0000,
- 0x0000, 0x75ab, 0x7e79, 0x8b6f, 0x0000, 0x9006, 0x9a5b, 0x56a5,
- 0x5827, 0x59f8, 0x5a1f, 0x5bb4, 0x0000, 0x5ef6, 0x0000, 0x0000,
- 0x6350, 0x633b, 0x0000, 0x693d, 0x6c87, 0x6cbf, 0x6d8e, 0x6d93,
- 0x6df5, 0x6f14, 0x0000, 0x70df, 0x7136, 0x7159, 0x0000, 0x71c3,
- 0x71d5, 0x0000, 0x784f, 0x786f, 0x0000, 0x7b75, 0x7de3, 0x0000,
- 0x7e2f, 0x0000, 0x884d, 0x8edf, 0x0000, 0x0000, 0x0000, 0x925b,
- 0x0000, 0x9cf6, 0x0000, 0x0000, 0x54bd, 0x6085, 0x6d85, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x71b1, 0x0000, 0x0000, 0x95b1, 0x53ad, 0x0000,
- 0x0000, 0x0000, 0x67d3, 0x0000, 0x708e, 0x7130, 0x7430, 0x8276,
- 0x82d2, 0x0000, 0x95bb, 0x9ae5, 0x9e7d, 0x66c4, 0x0000, 0x71c1,
- 0x0000, 0x0000, 0x0000, 0x584b, 0x0000, 0x0000, 0x5db8, 0x5f71,
- 0x0000, 0x6620, 0x668e, 0x6979, 0x69ae, 0x6c38, 0x6cf3, 0x6e36,
- 0x6f41, 0x6fda, 0x701b, 0x702f, 0x7150, 0x71df, 0x7370, 0x0000,
- 0x745b, 0x7469, 0x74d4, 0x76c8, 0x7a4e, 0x7e93, 0x0000, 0x0000,
- 0x82f1, 0x8a60, 0x8fce, 0x0000, 0x9348, 0x0000, 0x9719, 0x0000,
- 0x0000, 0x4e42, 0x502a, 0x0000, 0x5208, 0x53e1, 0x66f3, 0x6c6d,
- 0x6fca, 0x730a, 0x777f, 0x7a62, 0x82ae, 0x85dd, 0x8602, 0x0000,
- 0x88d4, 0x8a63, 0x8b7d, 0x8c6b, 0x0000, 0x92b3, 0x0000, 0x9713,
- 0x9810, 0x4e94, 0x4f0d, 0x4fc9, 0x50b2, 0x5348, 0x543e, 0x5433,
- 0x55da, 0x5862, 0x58ba, 0x5967, 0x5a1b, 0x5be4, 0x609f, 0x0000,
- 0x61ca, 0x6556, 0x65ff, 0x6664, 0x68a7, 0x6c5a, 0x6fb3, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x70cf, 0x71ac, 0x7352, 0x7b7d, 0x8708, 0x8aa4, 0x9c32,
- 0x9f07, 0x5c4b, 0x6c83, 0x7344, 0x7389, 0x923a, 0x6eab, 0x7465,
- 0x761f, 0x7a69, 0x7e15, 0x860a, 0x5140, 0x58c5, 0x64c1, 0x74ee,
- 0x7515, 0x7670, 0x7fc1, 0x9095, 0x96cd, 0x9954, 0x6e26, 0x74e6,
- 0x7aa9, 0x7aaa, 0x81e5, 0x86d9, 0x8778, 0x8a1b, 0x5a49, 0x5b8c,
- 0x5b9b, 0x68a1, 0x6900, 0x6d63, 0x73a9, 0x7413, 0x742c, 0x7897,
- 0x7de9, 0x7feb, 0x8118, 0x8155, 0x839e, 0x8c4c, 0x962e, 0x9811,
- 0x66f0, 0x5f80, 0x65fa, 0x6789, 0x6c6a, 0x738b, 0x502d, 0x5a03,
- 0x6b6a, 0x77ee, 0x5916, 0x5d6c, 0x5dcd, 0x7325, 0x754f, 0x0000,
- 0x0000, 0x50e5, 0x51f9, 0x582f, 0x592d, 0x5996, 0x59da, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5be5, 0x0000, 0x0000, 0x5da2, 0x62d7, 0x6416, 0x6493,
- 0x64fe, 0x0000, 0x66dc, 0x0000, 0x6a48, 0x0000, 0x71ff, 0x7464,
- 0x0000, 0x7a88, 0x7aaf, 0x7e47, 0x7e5e, 0x8000, 0x8170, 0x0000,
- 0x87ef, 0x8981, 0x8b20, 0x9059, 0x0000, 0x9080, 0x9952, 0x617e,
- 0x6b32, 0x6d74, 0x7e1f, 0x8925, 0x8fb1, 0x4fd1, 0x50ad, 0x5197,
- 0x52c7, 0x57c7, 0x5889, 0x5bb9, 0x5eb8, 0x6142, 0x6995, 0x6d8c,
- 0x6e67, 0x6eb6, 0x7194, 0x7462, 0x7528, 0x752c, 0x8073, 0x8338,
- 0x84c9, 0x8e0a, 0x9394, 0x93de, 0x0000, 0x4e8e, 0x4f51, 0x5076,
- 0x512a, 0x53c8, 0x53cb, 0x53f3, 0x5b87, 0x5bd3, 0x5c24, 0x611a,
- 0x6182, 0x65f4, 0x725b, 0x7397, 0x7440, 0x76c2, 0x7950, 0x7991,
- 0x79b9, 0x7d06, 0x7fbd, 0x828b, 0x85d5, 0x865e, 0x8fc2, 0x9047,
- 0x90f5, 0x91ea, 0x9685, 0x96e8, 0x96e9, 0x52d6, 0x5f67, 0x65ed,
- 0x6631, 0x682f, 0x715c, 0x7a36, 0x90c1, 0x980a, 0x4e91, 0x6688,
- 0x6a52, 0x6b9e, 0x6f90, 0x7189, 0x8018, 0x82b8, 0x8553, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x904b, 0x9695, 0x96f2, 0x97fb, 0x851a, 0x9b31, 0x4e90,
- 0x718a, 0x96c4, 0x5143, 0x539f, 0x54e1, 0x5713, 0x5712, 0x57a3,
- 0x5a9b, 0x5ac4, 0x5bc3, 0x6028, 0x613f, 0x63f4, 0x6c85, 0x6d39,
- 0x6e72, 0x6e90, 0x7230, 0x733f, 0x7457, 0x82d1, 0x8881, 0x8f45,
- 0x9060, 0x0000, 0x9662, 0x9858, 0x9d1b, 0x6708, 0x8d8a, 0x925e,
- 0x4f4d, 0x5049, 0x50de, 0x5371, 0x570d, 0x59d4, 0x5a01, 0x5c09,
- 0x6170, 0x6690, 0x6e2d, 0x7232, 0x744b, 0x7def, 0x80c3, 0x840e,
- 0x8466, 0x853f, 0x875f, 0x885b, 0x8918, 0x8b02, 0x9055, 0x97cb,
- 0x9b4f, 0x4e73, 0x4f91, 0x5112, 0x516a, 0x0000, 0x552f, 0x55a9,
- 0x5b7a, 0x5ba5, 0x5e7c, 0x5e7d, 0x5ebe, 0x60a0, 0x60df, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x6108, 0x6109, 0x63c4, 0x6538, 0x6709, 0x0000, 0x67d4,
- 0x67da, 0x0000, 0x6961, 0x6962, 0x6cb9, 0x6d27, 0x0000, 0x6e38,
- 0x0000, 0x6fe1, 0x7336, 0x7337, 0x0000, 0x745c, 0x7531, 0x0000,
- 0x7652, 0x0000, 0x0000, 0x7dad, 0x81fe, 0x8438, 0x88d5, 0x8a98,
- 0x8adb, 0x8aed, 0x8e30, 0x8e42, 0x904a, 0x903e, 0x907a, 0x9149,
- 0x91c9, 0x936e, 0x0000, 0x0000, 0x5809, 0x0000, 0x6bd3, 0x8089,
- 0x80b2, 0x0000, 0x0000, 0x5141, 0x596b, 0x5c39, 0x0000, 0x0000,
- 0x6f64, 0x73a7, 0x80e4, 0x8d07, 0x0000, 0x9217, 0x958f, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x807f, 0x620e, 0x701c, 0x7d68, 0x878d,
- 0x0000, 0x57a0, 0x6069, 0x6147, 0x6bb7, 0x8abe, 0x9280, 0x96b1,
- 0x4e59, 0x541f, 0x6deb, 0x852d, 0x9670, 0x97f3, 0x98ee, 0x63d6,
- 0x6ce3, 0x9091, 0x51dd, 0x61c9, 0x81ba, 0x9df9, 0x4f9d, 0x501a,
- 0x5100, 0x5b9c, 0x610f, 0x61ff, 0x64ec, 0x6905, 0x6bc5, 0x7591,
- 0x77e3, 0x7fa9, 0x8264, 0x858f, 0x87fb, 0x8863, 0x8abc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8b70, 0x91ab, 0x4e8c, 0x4ee5, 0x4f0a, 0x0000, 0x0000,
- 0x5937, 0x59e8, 0x0000, 0x5df2, 0x5f1b, 0x5f5b, 0x6021, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x723e, 0x73e5, 0x0000, 0x0000, 0x75cd,
- 0x0000, 0x79fb, 0x0000, 0x800c, 0x8033, 0x8084, 0x82e1, 0x8351,
- 0x0000, 0x0000, 0x8cbd, 0x8cb3, 0x9087, 0x0000, 0x0000, 0x98f4,
- 0x990c, 0x0000, 0x0000, 0x7037, 0x76ca, 0x7fca, 0x7fcc, 0x7ffc,
- 0x8b1a, 0x4eba, 0x4ec1, 0x5203, 0x5370, 0x0000, 0x0000, 0x56e0,
- 0x59fb, 0x5bc5, 0x5f15, 0x5fcd, 0x6e6e, 0x0000, 0x0000, 0x7d6a,
- 0x8335, 0x0000, 0x8693, 0x8a8d, 0x0000, 0x976d, 0x9777, 0x0000,
- 0x0000, 0x4e00, 0x4f5a, 0x4f7e, 0x58f9, 0x65e5, 0x6ea2, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x9038, 0x93b0, 0x99b9, 0x4efb, 0x58ec, 0x598a, 0x59d9,
- 0x6041, 0x0000, 0x0000, 0x7a14, 0x0000, 0x834f, 0x8cc3, 0x5165,
- 0x5344, 0x0000, 0x0000, 0x0000, 0x4ecd, 0x5269, 0x5b55, 0x82bf,
- 0x4ed4, 0x523a, 0x54a8, 0x59c9, 0x59ff, 0x5b50, 0x5b57, 0x5b5c,
- 0x6063, 0x6148, 0x6ecb, 0x7099, 0x716e, 0x7386, 0x74f7, 0x75b5,
- 0x78c1, 0x7d2b, 0x8005, 0x81ea, 0x8328, 0x8517, 0x85c9, 0x8aee,
- 0x8cc7, 0x96cc, 0x4f5c, 0x52fa, 0x56bc, 0x65ab, 0x6628, 0x707c,
- 0x70b8, 0x7235, 0x7dbd, 0x828d, 0x914c, 0x96c0, 0x9d72, 0x5b71,
- 0x68e7, 0x6b98, 0x6f7a, 0x76de, 0x5c91, 0x66ab, 0x6f5b, 0x7bb4,
- 0x7c2a, 0x8836, 0x96dc, 0x4e08, 0x4ed7, 0x5320, 0x5834, 0x58bb,
- 0x58ef, 0x596c, 0x5c07, 0x5e33, 0x5e84, 0x5f35, 0x638c, 0x66b2,
- 0x6756, 0x6a1f, 0x6aa3, 0x6b0c, 0x6f3f, 0x7246, 0x0000, 0x7350,
- 0x748b, 0x7ae0, 0x7ca7, 0x8178, 0x81df, 0x81e7, 0x838a, 0x846c,
- 0x8523, 0x8594, 0x85cf, 0x88dd, 0x8d13, 0x91ac, 0x9577, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x969c, 0x518d, 0x54c9, 0x5728, 0x5bb0, 0x624d, 0x6750,
- 0x683d, 0x6893, 0x6e3d, 0x6ed3, 0x707d, 0x7e21, 0x88c1, 0x8ca1,
- 0x8f09, 0x9f4b, 0x9f4e, 0x722d, 0x7b8f, 0x8acd, 0x931a, 0x4f47,
- 0x4f4e, 0x5132, 0x5480, 0x59d0, 0x5e95, 0x62b5, 0x6775, 0x696e,
- 0x6a17, 0x6cae, 0x6e1a, 0x72d9, 0x732a, 0x75bd, 0x7bb8, 0x7d35,
- 0x82e7, 0x83f9, 0x8457, 0x85f7, 0x8a5b, 0x8caf, 0x8e87, 0x9019,
- 0x90b8, 0x96ce, 0x9f5f, 0x52e3, 0x540a, 0x5ae1, 0x5bc2, 0x6458,
- 0x6575, 0x6ef4, 0x72c4, 0x0000, 0x7684, 0x7a4d, 0x7b1b, 0x7c4d,
- 0x7e3e, 0x7fdf, 0x837b, 0x8b2b, 0x8cca, 0x8d64, 0x8de1, 0x8e5f,
- 0x8fea, 0x8ff9, 0x9069, 0x93d1, 0x4f43, 0x4f7a, 0x50b3, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5168, 0x5178, 0x524d, 0x526a, 0x5861, 0x587c, 0x5960,
- 0x5c08, 0x5c55, 0x5edb, 0x609b, 0x6230, 0x6813, 0x6bbf, 0x6c08,
- 0x6fb1, 0x714e, 0x7420, 0x7530, 0x7538, 0x7551, 0x7672, 0x7b4c,
- 0x7b8b, 0x7bad, 0x7bc6, 0x7e8f, 0x8a6e, 0x8f3e, 0x8f49, 0x923f,
- 0x9293, 0x9322, 0x942b, 0x96fb, 0x985a, 0x986b, 0x991e, 0x5207,
- 0x622a, 0x6298, 0x6d59, 0x7664, 0x7aca, 0x7bc0, 0x7d76, 0x5360,
- 0x5cbe, 0x5e97, 0x6f38, 0x70b9, 0x7c98, 0x9711, 0x9b8e, 0x9ede,
- 0x63a5, 0x647a, 0x8776, 0x4e01, 0x4e95, 0x4ead, 0x505c, 0x5075,
- 0x5448, 0x59c3, 0x5b9a, 0x5e40, 0x5ead, 0x5ef7, 0x5f81, 0x60c5,
- 0x633a, 0x653f, 0x6574, 0x65cc, 0x6676, 0x6678, 0x67fe, 0x6968,
- 0x6a89, 0x6b63, 0x6c40, 0x6dc0, 0x6de8, 0x6e1f, 0x6e5e, 0x701e,
- 0x70a1, 0x738e, 0x73fd, 0x753a, 0x775b, 0x7887, 0x798e, 0x7a0b,
- 0x7a7d, 0x7cbe, 0x7d8e, 0x8247, 0x8a02, 0x8aea, 0x8c9e, 0x912d,
- 0x914a, 0x91d8, 0x9266, 0x92cc, 0x9320, 0x9706, 0x9756, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x975c, 0x9802, 0x9f0e, 0x5236, 0x5291, 0x557c, 0x5824,
- 0x5e1d, 0x5f1f, 0x608c, 0x63d0, 0x68af, 0x6fdf, 0x796d, 0x7b2c,
- 0x81cd, 0x85ba, 0x88fd, 0x8af8, 0x8e44, 0x918d, 0x9664, 0x969b,
- 0x973d, 0x984c, 0x9f4a, 0x4fce, 0x5146, 0x51cb, 0x52a9, 0x5632,
- 0x5f14, 0x5f6b, 0x63aa, 0x64cd, 0x65e9, 0x6641, 0x66fa, 0x66f9,
- 0x671d, 0x689d, 0x68d7, 0x69fd, 0x6f15, 0x6f6e, 0x7167, 0x71e5,
- 0x722a, 0x74aa, 0x773a, 0x7956, 0x795a, 0x79df, 0x7a20, 0x7a95,
- 0x7c97, 0x7cdf, 0x7d44, 0x7e70, 0x8087, 0x85fb, 0x86a4, 0x8a54,
- 0x8abf, 0x8d99, 0x8e81, 0x9020, 0x906d, 0x91e3, 0x963b, 0x96d5,
- 0x9ce5, 0x65cf, 0x7c07, 0x8db3, 0x93c3, 0x5b58, 0x5c0a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5352, 0x62d9, 0x731d, 0x5027, 0x5b97, 0x5f9e, 0x60b0,
- 0x616b, 0x68d5, 0x6dd9, 0x742e, 0x7a2e, 0x7d42, 0x7d9c, 0x7e31,
- 0x816b, 0x8e2a, 0x8e35, 0x937e, 0x9418, 0x4f50, 0x5750, 0x5de6,
- 0x5ea7, 0x632b, 0x7f6a, 0x4e3b, 0x4f4f, 0x4f8f, 0x505a, 0x59dd,
- 0x80c4, 0x546a, 0x5468, 0x55fe, 0x594f, 0x5b99, 0x5dde, 0x5eda,
- 0x665d, 0x6731, 0x67f1, 0x682a, 0x6ce8, 0x6d32, 0x6e4a, 0x6f8d,
- 0x70b7, 0x73e0, 0x7587, 0x7c4c, 0x7d02, 0x7d2c, 0x7da2, 0x821f,
- 0x86db, 0x8a3b, 0x8a85, 0x8d70, 0x8e8a, 0x8f33, 0x9031, 0x914e,
- 0x9152, 0x9444, 0x99d0, 0x7af9, 0x7ca5, 0x4fca, 0x5101, 0x51c6,
- 0x57c8, 0x5bef, 0x5cfb, 0x6659, 0x6a3d, 0x6d5a, 0x6e96, 0x6fec,
- 0x710c, 0x756f, 0x7ae3, 0x8822, 0x9021, 0x9075, 0x96cb, 0x99ff,
- 0x8301, 0x4e2d, 0x4ef2, 0x8846, 0x91cd, 0x537d, 0x6adb, 0x696b,
- 0x6c41, 0x847a, 0x589e, 0x618e, 0x66fe, 0x62ef, 0x70dd, 0x7511,
- 0x75c7, 0x7e52, 0x84b8, 0x8b49, 0x8d08, 0x4e4b, 0x53ea, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x54ab, 0x5730, 0x5740, 0x5fd7, 0x6301, 0x6307, 0x646f,
- 0x652f, 0x65e8, 0x667a, 0x679d, 0x67b3, 0x6b62, 0x6c60, 0x6c9a,
- 0x6f2c, 0x77e5, 0x7825, 0x7949, 0x7957, 0x7d19, 0x80a2, 0x8102,
- 0x81f3, 0x829d, 0x82b7, 0x8718, 0x8a8c, 0x0000, 0x8d04, 0x8dbe,
- 0x9072, 0x76f4, 0x7a19, 0x7a37, 0x7e54, 0x8077, 0x5507, 0x55d4,
- 0x5875, 0x632f, 0x6422, 0x6649, 0x664b, 0x686d, 0x699b, 0x6b84,
- 0x6d25, 0x6eb1, 0x73cd, 0x7468, 0x74a1, 0x755b, 0x75b9, 0x76e1,
- 0x771e, 0x778b, 0x79e6, 0x7e09, 0x7e1d, 0x81fb, 0x852f, 0x8897,
- 0x8a3a, 0x8cd1, 0x8eeb, 0x0000, 0x9032, 0x93ad, 0x9663, 0x9673,
- 0x9707, 0x4f84, 0x53f1, 0x59ea, 0x5ac9, 0x5e19, 0x684e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x74c6, 0x75be, 0x79e9, 0x7a92, 0x81a3, 0x86ed, 0x8cea,
- 0x8dcc, 0x8fed, 0x659f, 0x6715, 0x0000, 0x57f7, 0x6f57, 0x7ddd,
- 0x8f2f, 0x93f6, 0x96c6, 0x5fb5, 0x61f2, 0x6f84, 0x4e14, 0x4f98,
- 0x501f, 0x53c9, 0x55df, 0x5d6f, 0x5dee, 0x6b21, 0x6b64, 0x78cb,
- 0x7b9a, 0x0000, 0x8e49, 0x0000, 0x906e, 0x6349, 0x643e, 0x7740,
- 0x7a84, 0x932f, 0x947f, 0x9f6a, 0x64b0, 0x6faf, 0x71e6, 0x74a8,
- 0x74da, 0x7ac4, 0x7c12, 0x7e82, 0x7cb2, 0x7e98, 0x8b9a, 0x8d0a,
- 0x947d, 0x9910, 0x994c, 0x5239, 0x5bdf, 0x64e6, 0x672d, 0x7d2e,
- 0x50ed, 0x0000, 0x5879, 0x6158, 0x6159, 0x61fa, 0x65ac, 0x7ad9,
- 0x8b92, 0x8b96, 0x5009, 0x5021, 0x5275, 0x5531, 0x5a3c, 0x5ee0,
- 0x5f70, 0x6134, 0x655e, 0x660c, 0x6636, 0x66a2, 0x69cd, 0x6ec4,
- 0x6f32, 0x7316, 0x7621, 0x7a93, 0x8139, 0x8259, 0x83d6, 0x84bc,
- 0x50b5, 0x57f0, 0x5bc0, 0x5be8, 0x5f69, 0x63a1, 0x7826, 0x7db5,
- 0x83dc, 0x8521, 0x91c7, 0x91f5, 0x518a, 0x67f5, 0x7b56, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8cac, 0x51c4, 0x59bb, 0x60bd, 0x8655, 0x501c, 0x0000,
- 0x5254, 0x5c3a, 0x617d, 0x621a, 0x62d3, 0x64f2, 0x65a5, 0x6ecc,
- 0x7620, 0x810a, 0x8e60, 0x965f, 0x96bb, 0x4edf, 0x5343, 0x5598,
- 0x5929, 0x5ddd, 0x64c5, 0x6cc9, 0x6dfa, 0x7394, 0x7a7f, 0x821b,
- 0x85a6, 0x8ce4, 0x8e10, 0x9077, 0x91e7, 0x95e1, 0x9621, 0x97c6,
- 0x51f8, 0x54f2, 0x5586, 0x5fb9, 0x64a4, 0x6f88, 0x7db4, 0x8f1f,
- 0x8f4d, 0x9435, 0x50c9, 0x5c16, 0x6cbe, 0x6dfb, 0x751b, 0x77bb,
- 0x7c3d, 0x7c64, 0x8a79, 0x8ac2, 0x581e, 0x59be, 0x5e16, 0x6377,
- 0x7252, 0x758a, 0x776b, 0x8adc, 0x8cbc, 0x8f12, 0x5ef3, 0x6674,
- 0x6df8, 0x807d, 0x83c1, 0x8acb, 0x9751, 0x9bd6, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x5243, 0x66ff, 0x6d95, 0x6eef, 0x7de0, 0x8ae6, 0x902e,
- 0x905e, 0x9ad4, 0x521d, 0x527f, 0x54e8, 0x6194, 0x6284, 0x62db,
- 0x68a2, 0x6912, 0x695a, 0x6a35, 0x7092, 0x7126, 0x785d, 0x7901,
- 0x790e, 0x79d2, 0x7a0d, 0x8096, 0x8278, 0x82d5, 0x8349, 0x8549,
- 0x8c82, 0x8d85, 0x9162, 0x918b, 0x91ae, 0x4fc3, 0x56d1, 0x71ed,
- 0x77d7, 0x8700, 0x89f8, 0x5bf8, 0x5fd6, 0x6751, 0x90a8, 0x53e2,
- 0x585a, 0x5bf5, 0x60a4, 0x6181, 0x6460, 0x7e3d, 0x8070, 0x8525,
- 0x9283, 0x64ae, 0x50ac, 0x5d14, 0x6700, 0x589c, 0x62bd, 0x63a8,
- 0x690e, 0x6978, 0x6a1e, 0x6e6b, 0x76ba, 0x79cb, 0x82bb, 0x8429,
- 0x8acf, 0x8da8, 0x8ffd, 0x9112, 0x914b, 0x919c, 0x9310, 0x9318,
- 0x939a, 0x96db, 0x9a36, 0x9c0d, 0x4e11, 0x755c, 0x795d, 0x7afa,
- 0x7b51, 0x7bc9, 0x7e2e, 0x84c4, 0x8e59, 0x8e74, 0x8ef8, 0x9010,
- 0x6625, 0x693f, 0x7443, 0x51fa, 0x672e, 0x9edc, 0x5145, 0x5fe0,
- 0x6c96, 0x87f2, 0x885d, 0x8877, 0x60b4, 0x81b5, 0x8403, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8d05, 0x53d6, 0x5439, 0x5634, 0x5a36, 0x5c31, 0x708a,
- 0x7fe0, 0x805a, 0x8106, 0x81ed, 0x8da3, 0x9189, 0x9a5f, 0x9df2,
- 0x5074, 0x4ec4, 0x53a0, 0x60fb, 0x6e2c, 0x5c64, 0x4f88, 0x5024,
- 0x55e4, 0x5cd9, 0x5e5f, 0x6065, 0x6894, 0x6cbb, 0x6dc4, 0x71be,
- 0x75d4, 0x75f4, 0x7661, 0x7a1a, 0x7a49, 0x7dc7, 0x7dfb, 0x7f6e,
- 0x81f4, 0x86a9, 0x8f1c, 0x96c9, 0x99b3, 0x9f52, 0x5247, 0x52c5,
- 0x98ed, 0x89aa, 0x4e03, 0x67d2, 0x6f06, 0x4fb5, 0x5be2, 0x6795,
- 0x0000, 0x6d78, 0x741b, 0x7827, 0x91dd, 0x937c, 0x87c4, 0x79e4,
- 0x7a31, 0x5feb, 0x4ed6, 0x54a4, 0x553e, 0x58ae, 0x59a5, 0x60f0,
- 0x6253, 0x62d6, 0x6736, 0x6955, 0x8235, 0x9640, 0x99b1, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x99dd, 0x502c, 0x5353, 0x5544, 0x577c, 0x0000, 0x6258,
- 0x0000, 0x64e2, 0x666b, 0x67dd, 0x6fc1, 0x6fef, 0x7422, 0x7438,
- 0x8a17, 0x9438, 0x5451, 0x5606, 0x5766, 0x5f48, 0x619a, 0x6b4e,
- 0x7058, 0x70ad, 0x7dbb, 0x8a95, 0x596a, 0x812b, 0x63a2, 0x7708,
- 0x803d, 0x8caa, 0x5854, 0x642d, 0x69bb, 0x5b95, 0x5e11, 0x6e6f,
- 0x0000, 0x8569, 0x514c, 0x53f0, 0x592a, 0x6020, 0x614b, 0x6b86,
- 0x6c70, 0x6cf0, 0x7b1e, 0x80ce, 0x82d4, 0x8dc6, 0x90b0, 0x98b1,
- 0x0000, 0x64c7, 0x6fa4, 0x6491, 0x6504, 0x514e, 0x5410, 0x571f,
- 0x8a0e, 0x615f, 0x6876, 0x0000, 0x75db, 0x7b52, 0x7d71, 0x901a,
- 0x5806, 0x69cc, 0x817f, 0x892a, 0x9000, 0x9839, 0x5078, 0x5957,
- 0x59ac, 0x6295, 0x900f, 0x9b2a, 0x615d, 0x7279, 0x95d6, 0x5761,
- 0x5a46, 0x5df4, 0x628a, 0x64ad, 0x64fa, 0x6777, 0x6ce2, 0x6d3e,
- 0x722c, 0x7436, 0x7834, 0x7f77, 0x82ad, 0x8ddb, 0x9817, 0x5224,
- 0x5742, 0x677f, 0x7248, 0x74e3, 0x8ca9, 0x8fa6, 0x9211, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x962a, 0x516b, 0x53ed, 0x634c, 0x4f69, 0x5504, 0x6096,
- 0x6557, 0x6c9b, 0x6d7f, 0x724c, 0x72fd, 0x7a17, 0x8987, 0x8c9d,
- 0x5f6d, 0x6f8e, 0x70f9, 0x81a8, 0x610e, 0x0000, 0x504f, 0x6241,
- 0x7247, 0x7bc7, 0x7de8, 0x7fe9, 0x904d, 0x97ad, 0x9a19, 0x8cb6,
- 0x576a, 0x5e73, 0x67b0, 0x840d, 0x8a55, 0x5420, 0x5b16, 0x5e63,
- 0x5ee2, 0x5f0a, 0x6583, 0x80ba, 0x853d, 0x9589, 0x965b, 0x4f48,
- 0x5305, 0x530d, 0x530f, 0x5486, 0x54fa, 0x5703, 0x5e03, 0x6016,
- 0x629b, 0x62b1, 0x6355, 0x66b4, 0x6ce1, 0x6d66, 0x75b1, 0x7832,
- 0x80de, 0x812f, 0x82de, 0x8461, 0x84b2, 0x888d, 0x8912, 0x900b,
- 0x92ea, 0x98fd, 0x9b91, 0x5e45, 0x0000, 0x66dd, 0x7011, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x7206, 0x0000, 0x4ff5, 0x527d, 0x5f6a, 0x6153, 0x6753,
- 0x6a19, 0x6f02, 0x74e2, 0x7968, 0x8868, 0x8c79, 0x98c7, 0x98c4,
- 0x9a43, 0x54c1, 0x7a1f, 0x6953, 0x8af7, 0x8c4a, 0x98a8, 0x99ae,
- 0x5f7c, 0x62ab, 0x75b2, 0x76ae, 0x88ab, 0x907f, 0x9642, 0x5339,
- 0x5f3c, 0x5fc5, 0x0000, 0x73cc, 0x7562, 0x758b, 0x7b46, 0x82fe,
- 0x999d, 0x4e4f, 0x903c, 0x4e0b, 0x4f55, 0x53a6, 0x590f, 0x5ec8,
- 0x6630, 0x6cb3, 0x7455, 0x8377, 0x8766, 0x8cc0, 0x9050, 0x971e,
- 0x9c15, 0x58d1, 0x5b78, 0x8650, 0x8b14, 0x9db4, 0x5bd2, 0x6068,
- 0x608d, 0x65f1, 0x6c57, 0x6f22, 0x6fa3, 0x701a, 0x7f55, 0x7ff0,
- 0x9591, 0x9592, 0x9650, 0x97d3, 0x5272, 0x8f44, 0x51fd, 0x542b,
- 0x54b8, 0x5563, 0x558a, 0x6abb, 0x6db5, 0x7dd8, 0x8266, 0x929c,
- 0x9677, 0x9e79, 0x5408, 0x54c8, 0x76d2, 0x86e4, 0x95a4, 0x95d4,
- 0x965c, 0x4ea2, 0x4f09, 0x59ee, 0x5ae6, 0x5df7, 0x6052, 0x6297,
- 0x676d, 0x6841, 0x6c86, 0x6e2f, 0x7f38, 0x809b, 0x822a, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x884c, 0x0000, 0x9805, 0x4ea5, 0x5055, 0x54b3, 0x5793,
- 0x595a, 0x5b69, 0x5bb3, 0x61c8, 0x6977, 0x6d77, 0x7023, 0x87f9,
- 0x89e3, 0x8a72, 0x8ae7, 0x9082, 0x99ed, 0x9ab8, 0x52be, 0x6838,
- 0x5016, 0x5e78, 0x674f, 0x8347, 0x0000, 0x4eab, 0x5411, 0x56ae,
- 0x73e6, 0x9115, 0x97ff, 0x9909, 0x9957, 0x9999, 0x5653, 0x589f,
- 0x865b, 0x8a31, 0x61b2, 0x6af6, 0x737b, 0x8ed2, 0x6b47, 0x96aa,
- 0x9a57, 0x5955, 0x7200, 0x8d6b, 0x9769, 0x4fd4, 0x5cf4, 0x5f26,
- 0x61f8, 0x665b, 0x6ceb, 0x70ab, 0x7384, 0x73b9, 0x73fe, 0x7729,
- 0x774d, 0x7d43, 0x7d62, 0x7e23, 0x8237, 0x8852, 0x0000, 0x8ce2,
- 0x9249, 0x986f, 0x5b51, 0x7a74, 0x8840, 0x9801, 0x5acc, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x4fe0, 0x5354, 0x593e, 0x5cfd, 0x633e, 0x6d79, 0x72f9,
- 0x8105, 0x8107, 0x83a2, 0x92cf, 0x9830, 0x4ea8, 0x5144, 0x5211,
- 0x578b, 0x5f62, 0x6cc2, 0x6ece, 0x7005, 0x7050, 0x70af, 0x7192,
- 0x73e9, 0x0000, 0x834a, 0x87a2, 0x8861, 0x9008, 0x90a2, 0x93a3,
- 0x99a8, 0x516e, 0x5f57, 0x60e0, 0x6167, 0x66b3, 0x8559, 0x8e4a,
- 0x91af, 0x978b, 0x4e4e, 0x4e92, 0x547c, 0x58d5, 0x58fa, 0x597d,
- 0x5cb5, 0x5f27, 0x6236, 0x6248, 0x660a, 0x6667, 0x6beb, 0x6d69,
- 0x6dcf, 0x6e56, 0x6ef8, 0x6f94, 0x6fe0, 0x6fe9, 0x705d, 0x72d0,
- 0x7425, 0x745a, 0x74e0, 0x7693, 0x795c, 0x7cca, 0x7e1e, 0x80e1,
- 0x82a6, 0x846b, 0x84bf, 0x864e, 0x865f, 0x8774, 0x8b77, 0x8c6a,
- 0x93ac, 0x9800, 0x9865, 0x60d1, 0x6216, 0x9177, 0x5a5a, 0x660f,
- 0x6df7, 0x6e3e, 0x743f, 0x9b42, 0x5ffd, 0x60da, 0x7b0f, 0x54c4,
- 0x5f18, 0x6c5e, 0x6cd3, 0x6d2a, 0x70d8, 0x7d05, 0x8679, 0x8a0c,
- 0x9d3b, 0x5316, 0x548c, 0x5b05, 0x6a3a, 0x706b, 0x7575, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x798d, 0x79be, 0x82b1, 0x83ef, 0x8a71, 0x8b41, 0x8ca8,
- 0x9774, 0x0000, 0x64f4, 0x652b, 0x78ba, 0x78bb, 0x7a6b, 0x4e38,
- 0x559a, 0x5950, 0x5ba6, 0x5e7b, 0x60a3, 0x63db, 0x6b61, 0x6665,
- 0x6853, 0x6e19, 0x7165, 0x74b0, 0x7d08, 0x9084, 0x9a69, 0x9c25,
- 0x6d3b, 0x0000, 0x733e, 0x8c41, 0x95ca, 0x51f0, 0x5e4c, 0x5fa8,
- 0x604d, 0x60f6, 0x6130, 0x614c, 0x6643, 0x6644, 0x69a5, 0x6cc1,
- 0x6e5f, 0x6ec9, 0x6f62, 0x714c, 0x749c, 0x7687, 0x7bc1, 0x7c27,
- 0x8352, 0x8757, 0x9051, 0x968d, 0x9ec3, 0x532f, 0x56de, 0x5efb,
- 0x5f8a, 0x6062, 0x6094, 0x61f7, 0x6666, 0x6703, 0x6a9c, 0x6dee,
- 0x6fae, 0x7070, 0x736a, 0x7e6a, 0x81be, 0x8334, 0x86d4, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x8aa8, 0x8cc4, 0x5283, 0x7372, 0x5b96, 0x6a6b, 0x9404,
- 0x54ee, 0x5686, 0x5b5d, 0x6548, 0x6585, 0x66c9, 0x689f, 0x6d8d,
- 0x6dc6, 0x723b, 0x80b4, 0x9175, 0x9a4d, 0x4faf, 0x5019, 0x539a,
- 0x540e, 0x543c, 0x5589, 0x55c5, 0x5e3f, 0x5f8c, 0x673d, 0x7166,
- 0x73dd, 0x9005, 0x52db, 0x52f3, 0x5864, 0x58ce, 0x7104, 0x718f,
- 0x71fb, 0x85b0, 0x8a13, 0x0000, 0x85a8, 0x55a7, 0x6684, 0x714a,
- 0x8431, 0x5349, 0x5599, 0x6bc1, 0x5f59, 0x5fbd, 0x63ee, 0x6689,
- 0x7147, 0x8af1, 0x8f1d, 0x9ebe, 0x4f11, 0x643a, 0x70cb, 0x7566,
- 0x8667, 0x6064, 0x8b4e, 0x9df8, 0x5147, 0x51f6, 0x5308, 0x6d36,
- 0x80f8, 0x9ed1, 0x6615, 0x6b23, 0x7098, 0x75d5, 0x5403, 0x5c79,
- 0x7d07, 0x8a16, 0x6b20, 0x6b3d, 0x6b46, 0x5438, 0x6070, 0x6d3d,
- 0x7fd5, 0x8208, 0x50d6, 0x51de, 0x559c, 0x566b, 0x56cd, 0x59ec,
- 0x5b09, 0x5e0c, 0x6199, 0x6198, 0x6231, 0x665e, 0x66e6, 0x7199,
- 0x71b9, 0x71ba, 0x72a7, 0x79a7, 0x7a00, 0x7fb2, 0x8a70, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x3164, 0x3001, 0x3002, 0x30fb, 0x2025, 0x22ef, 0x00a8, 0x3003
-};
-
-
-const unichar_t unicode_from_gb2312[] = {
- 0x3000, 0x3001, 0x3002, 0x00b7, 0x02c9, 0x02c7, 0x00a8, 0x3003,
- 0x3005, 0x2014, 0xff5e, 0x2016, 0x2026, 0x2018, 0x2019, 0x201c,
- 0x201d, 0x3014, 0x3015, 0x3008, 0x3009, 0x300a, 0x300b, 0x300c,
- 0x300d, 0x300e, 0x300f, 0x3016, 0x3017, 0x3010, 0x3011, 0x00b1,
- 0x00d7, 0x00f7, 0x2236, 0x2227, 0x2228, 0x2211, 0x220f, 0x222a,
- 0x2229, 0x2208, 0x2237, 0x221a, 0x22a5, 0x2225, 0x2220, 0x2312,
- 0x2299, 0x222b, 0x222e, 0x2261, 0x224c, 0x2248, 0x223d, 0x221d,
- 0x2260, 0x226e, 0x226f, 0x2264, 0x2265, 0x221e, 0x2235, 0x2234,
- 0x2642, 0x2640, 0x00b0, 0x2032, 0x2033, 0x2103, 0xff04, 0x00a4,
- 0xffe0, 0xffe1, 0x2030, 0x00a7, 0x2116, 0x2606, 0x2605, 0x25cb,
- 0x25cf, 0x25ce, 0x25c7, 0x25c6, 0x25a1, 0x25a0, 0x25b3, 0x25b2,
- 0x203b, 0x2192, 0x2190, 0x2191, 0x2193, 0x3013, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2488, 0x2489,
- 0x248a, 0x248b, 0x248c, 0x248d, 0x248e, 0x248f, 0x2490, 0x2491,
- 0x2492, 0x2493, 0x2494, 0x2495, 0x2496, 0x2497, 0x2498, 0x2499,
- 0x249a, 0x249b, 0x2474, 0x2475, 0x2476, 0x2477, 0x2478, 0x2479,
- 0x247a, 0x247b, 0x247c, 0x247d, 0x247e, 0x247f, 0x2480, 0x2481,
- 0x2482, 0x2483, 0x2484, 0x2485, 0x2486, 0x2487, 0x2460, 0x2461,
- 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469,
- 0x0000, 0x0000, 0x3220, 0x3221, 0x3222, 0x3223, 0x3224, 0x3225,
- 0x3226, 0x3227, 0x3228, 0x3229, 0x0000, 0x0000, 0x2160, 0x2161,
- 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169,
- 0x216a, 0x216b, 0x0000, 0x0000, 0xff01, 0xff02, 0xff03, 0xffe5,
- 0xff05, 0xff06, 0xff07, 0xff08, 0xff09, 0xff0a, 0xff0b, 0xff0c,
- 0xff0d, 0xff0e, 0xff0f, 0xff10, 0xff11, 0xff12, 0xff13, 0xff14,
- 0xff15, 0xff16, 0xff17, 0xff18, 0xff19, 0xff1a, 0xff1b, 0xff1c,
- 0xff1d, 0xff1e, 0xff1f, 0xff20, 0xff21, 0xff22, 0xff23, 0xff24,
- 0xff25, 0xff26, 0xff27, 0xff28, 0xff29, 0xff2a, 0xff2b, 0xff2c,
- 0xff2d, 0xff2e, 0xff2f, 0xff30, 0xff31, 0xff32, 0xff33, 0xff34,
- 0xff35, 0xff36, 0xff37, 0xff38, 0xff39, 0xff3a, 0xff3b, 0xff3c,
- 0xff3d, 0xff3e, 0xff3f, 0xff40, 0xff41, 0xff42, 0xff43, 0xff44,
- 0xff45, 0xff46, 0xff47, 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c,
- 0xff4d, 0xff4e, 0xff4f, 0xff50, 0xff51, 0xff52, 0xff53, 0xff54,
- 0xff55, 0xff56, 0xff57, 0xff58, 0xff59, 0xff5a, 0xff5b, 0xff5c,
- 0xff5d, 0xffe3, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046,
- 0x3047, 0x3048, 0x3049, 0x304a, 0x304b, 0x304c, 0x304d, 0x304e,
- 0x304f, 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056,
- 0x3057, 0x3058, 0x3059, 0x305a, 0x305b, 0x305c, 0x305d, 0x305e,
- 0x305f, 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066,
- 0x3067, 0x3068, 0x3069, 0x306a, 0x306b, 0x306c, 0x306d, 0x306e,
- 0x306f, 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076,
- 0x3077, 0x3078, 0x3079, 0x307a, 0x307b, 0x307c, 0x307d, 0x307e,
- 0x307f, 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086,
- 0x3087, 0x3088, 0x3089, 0x308a, 0x308b, 0x308c, 0x308d, 0x308e,
- 0x308f, 0x3090, 0x3091, 0x3092, 0x3093, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x30a1, 0x30a2, 0x30a3, 0x30a4, 0x30a5, 0x30a6, 0x30a7, 0x30a8,
- 0x30a9, 0x30aa, 0x30ab, 0x30ac, 0x30ad, 0x30ae, 0x30af, 0x30b0,
- 0x30b1, 0x30b2, 0x30b3, 0x30b4, 0x30b5, 0x30b6, 0x30b7, 0x30b8,
- 0x30b9, 0x30ba, 0x30bb, 0x30bc, 0x30bd, 0x30be, 0x30bf, 0x30c0,
- 0x30c1, 0x30c2, 0x30c3, 0x30c4, 0x30c5, 0x30c6, 0x30c7, 0x30c8,
- 0x30c9, 0x30ca, 0x30cb, 0x30cc, 0x30cd, 0x30ce, 0x30cf, 0x30d0,
- 0x30d1, 0x30d2, 0x30d3, 0x30d4, 0x30d5, 0x30d6, 0x30d7, 0x30d8,
- 0x30d9, 0x30da, 0x30db, 0x30dc, 0x30dd, 0x30de, 0x30df, 0x30e0,
- 0x30e1, 0x30e2, 0x30e3, 0x30e4, 0x30e5, 0x30e6, 0x30e7, 0x30e8,
- 0x30e9, 0x30ea, 0x30eb, 0x30ec, 0x30ed, 0x30ee, 0x30ef, 0x30f0,
- 0x30f1, 0x30f2, 0x30f3, 0x30f4, 0x30f5, 0x30f6, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0391, 0x0392,
- 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039a,
- 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0, 0x03a1, 0x03a3,
- 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03b1, 0x03b2,
- 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba,
- 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3,
- 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8, 0x03c9, 0xe78d, 0xe78e,
- 0xe78f, 0xe790, 0xe791, 0xe792, 0xe793, 0xfe35, 0xfe36, 0xfe39,
- 0xfe3a, 0xfe3f, 0xfe40, 0xfe3d, 0xfe3e, 0xfe41, 0xfe42, 0xfe43,
- 0xfe44, 0xe794, 0xe795, 0xfe3b, 0xfe3c, 0xfe37, 0xfe38, 0xfe31,
- 0x205d, 0xfe33, 0xfe34, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0410, 0x0411, 0x0412, 0x0413,
- 0x0414, 0x0415, 0x0401, 0x0416, 0x0417, 0x0418, 0x0419, 0x041a,
- 0x041b, 0x041c, 0x041d, 0x041e, 0x041f, 0x0420, 0x0421, 0x0422,
- 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428, 0x0429, 0x042a,
- 0x042b, 0x042c, 0x042d, 0x042e, 0x042f, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0430, 0x0431, 0x0432, 0x0433,
- 0x0434, 0x0435, 0x0451, 0x0436, 0x0437, 0x0438, 0x0439, 0x043a,
- 0x043b, 0x043c, 0x043d, 0x043e, 0x043f, 0x0440, 0x0441, 0x0442,
- 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, 0x0448, 0x0449, 0x044a,
- 0x044b, 0x044c, 0x044d, 0x044e, 0x044f, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0101, 0x00e1, 0x01ce, 0x00e0, 0x0113, 0x00e9,
- 0x011b, 0x00e8, 0x012b, 0x00ed, 0x01d0, 0x00ec, 0x014d, 0x00f3,
- 0x01d2, 0x00f2, 0x016b, 0x00fa, 0x01d4, 0x00f9, 0x01d6, 0x01d8,
- 0x01da, 0x01dc, 0x00fc, 0x00ea, 0x0251, 0x1e3f, 0x0144, 0x0148,
- 0x01f9, 0x0261, 0x0000, 0x0000, 0x0000, 0x0000, 0x3105, 0x3106,
- 0x3107, 0x3108, 0x3109, 0x310a, 0x310b, 0x310c, 0x310d, 0x310e,
- 0x310f, 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116,
- 0x3117, 0x3118, 0x3119, 0x311a, 0x311b, 0x311c, 0x311d, 0x311e,
- 0x311f, 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126,
- 0x3127, 0x3128, 0x3129, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x2500, 0x2501, 0x2502, 0x2503, 0x2504,
- 0x2505, 0x2506, 0x2507, 0x2508, 0x2509, 0x250a, 0x250b, 0x250c,
- 0x250d, 0x250e, 0x250f, 0x2510, 0x2511, 0x2512, 0x2513, 0x2514,
- 0x2515, 0x2516, 0x2517, 0x2518, 0x2519, 0x251a, 0x251b, 0x251c,
- 0x251d, 0x251e, 0x251f, 0x2520, 0x2521, 0x2522, 0x2523, 0x2524,
- 0x2525, 0x2526, 0x2527, 0x2528, 0x2529, 0x252a, 0x252b, 0x252c,
- 0x252d, 0x252e, 0x252f, 0x2530, 0x2531, 0x2532, 0x2533, 0x2534,
- 0x2535, 0x2536, 0x2537, 0x2538, 0x2539, 0x253a, 0x253b, 0x253c,
- 0x253d, 0x253e, 0x253f, 0x2540, 0x2541, 0x2542, 0x2543, 0x2544,
- 0x2545, 0x2546, 0x2547, 0x2548, 0x2549, 0x254a, 0x254b, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x554a, 0x963f, 0x57c3, 0x6328, 0x54ce, 0x5509,
- 0x54c0, 0x7691, 0x764c, 0x853c, 0x77ee, 0x827e, 0x788d, 0x7231,
- 0x9698, 0x978d, 0x6c28, 0x5b89, 0x4ffa, 0x6309, 0x6697, 0x5cb8,
- 0x80fa, 0x6848, 0x80ae, 0x6602, 0x76ce, 0x51f9, 0x6556, 0x71ac,
- 0x7ff1, 0x8884, 0x50b2, 0x5965, 0x61ca, 0x6fb3, 0x82ad, 0x634c,
- 0x6252, 0x53ed, 0x5427, 0x7b06, 0x516b, 0x75a4, 0x5df4, 0x62d4,
- 0x8dcb, 0x9776, 0x628a, 0x8019, 0x575d, 0x9738, 0x7f62, 0x7238,
- 0x767d, 0x67cf, 0x767e, 0x6446, 0x4f70, 0x8d25, 0x62dc, 0x7a17,
- 0x6591, 0x73ed, 0x642c, 0x6273, 0x822c, 0x9881, 0x677f, 0x7248,
- 0x626e, 0x62cc, 0x4f34, 0x74e3, 0x534a, 0x529e, 0x7eca, 0x90a6,
- 0x5e2e, 0x6886, 0x699c, 0x8180, 0x7ed1, 0x68d2, 0x78c5, 0x868c,
- 0x9551, 0x508d, 0x8c24, 0x82de, 0x80de, 0x5305, 0x8912, 0x5265,
- 0x8584, 0x96f9, 0x4fdd, 0x5821, 0x9971, 0x5b9d, 0x62b1, 0x62a5,
- 0x66b4, 0x8c79, 0x9c8d, 0x7206, 0x676f, 0x7891, 0x60b2, 0x5351,
- 0x5317, 0x8f88, 0x80cc, 0x8d1d, 0x94a1, 0x500d, 0x72c8, 0x5907,
- 0x60eb, 0x7119, 0x88ab, 0x5954, 0x82ef, 0x672c, 0x7b28, 0x5d29,
- 0x7ef7, 0x752d, 0x6cf5, 0x8e66, 0x8ff8, 0x903c, 0x9f3b, 0x6bd4,
- 0x9119, 0x7b14, 0x5f7c, 0x78a7, 0x84d6, 0x853d, 0x6bd5, 0x6bd9,
- 0x6bd6, 0x5e01, 0x5e87, 0x75f9, 0x95ed, 0x655d, 0x5f0a, 0x5fc5,
- 0x8f9f, 0x58c1, 0x81c2, 0x907f, 0x965b, 0x97ad, 0x8fb9, 0x7f16,
- 0x8d2c, 0x6241, 0x4fbf, 0x53d8, 0x535e, 0x8fa8, 0x8fa9, 0x8fab,
- 0x904d, 0x6807, 0x5f6a, 0x8198, 0x8868, 0x9cd6, 0x618b, 0x522b,
- 0x762a, 0x5f6c, 0x658c, 0x6fd2, 0x6ee8, 0x5bbe, 0x6448, 0x5175,
- 0x51b0, 0x67c4, 0x4e19, 0x79c9, 0x997c, 0x70b3, 0x75c5, 0x5e76,
- 0x73bb, 0x83e0, 0x64ad, 0x62e8, 0x94b5, 0x6ce2, 0x535a, 0x52c3,
- 0x640f, 0x94c2, 0x7b94, 0x4f2f, 0x5e1b, 0x8236, 0x8116, 0x818a,
- 0x6e24, 0x6cca, 0x9a73, 0x6355, 0x535c, 0x54fa, 0x8865, 0x57e0,
- 0x4e0d, 0x5e03, 0x6b65, 0x7c3f, 0x90e8, 0x6016, 0x64e6, 0x731c,
- 0x88c1, 0x6750, 0x624d, 0x8d22, 0x776c, 0x8e29, 0x91c7, 0x5f69,
- 0x83dc, 0x8521, 0x9910, 0x53c2, 0x8695, 0x6b8b, 0x60ed, 0x60e8,
- 0x707f, 0x82cd, 0x8231, 0x4ed3, 0x6ca7, 0x85cf, 0x64cd, 0x7cd9,
- 0x69fd, 0x66f9, 0x8349, 0x5395, 0x7b56, 0x4fa7, 0x518c, 0x6d4b,
- 0x5c42, 0x8e6d, 0x63d2, 0x53c9, 0x832c, 0x8336, 0x67e5, 0x78b4,
- 0x643d, 0x5bdf, 0x5c94, 0x5dee, 0x8be7, 0x62c6, 0x67f4, 0x8c7a,
- 0x6400, 0x63ba, 0x8749, 0x998b, 0x8c17, 0x7f20, 0x94f2, 0x4ea7,
- 0x9610, 0x98a4, 0x660c, 0x7316, 0x573a, 0x5c1d, 0x5e38, 0x957f,
- 0x507f, 0x80a0, 0x5382, 0x655e, 0x7545, 0x5531, 0x5021, 0x8d85,
- 0x6284, 0x949e, 0x671d, 0x5632, 0x6f6e, 0x5de2, 0x5435, 0x7092,
- 0x8f66, 0x626f, 0x64a4, 0x63a3, 0x5f7b, 0x6f88, 0x90f4, 0x81e3,
- 0x8fb0, 0x5c18, 0x6668, 0x5ff1, 0x6c89, 0x9648, 0x8d81, 0x886c,
- 0x6491, 0x79f0, 0x57ce, 0x6a59, 0x6210, 0x5448, 0x4e58, 0x7a0b,
- 0x60e9, 0x6f84, 0x8bda, 0x627f, 0x901e, 0x9a8b, 0x79e4, 0x5403,
- 0x75f4, 0x6301, 0x5319, 0x6c60, 0x8fdf, 0x5f1b, 0x9a70, 0x803b,
- 0x9f7f, 0x4f88, 0x5c3a, 0x8d64, 0x7fc5, 0x65a5, 0x70bd, 0x5145,
- 0x51b2, 0x866b, 0x5d07, 0x5ba0, 0x62bd, 0x916c, 0x7574, 0x8e0c,
- 0x7a20, 0x6101, 0x7b79, 0x4ec7, 0x7ef8, 0x7785, 0x4e11, 0x81ed,
- 0x521d, 0x51fa, 0x6a71, 0x53a8, 0x8e87, 0x9504, 0x96cf, 0x6ec1,
- 0x9664, 0x695a, 0x7840, 0x50a8, 0x77d7, 0x6410, 0x89e6, 0x5904,
- 0x63e3, 0x5ddd, 0x7a7f, 0x693d, 0x4f20, 0x8239, 0x5598, 0x4e32,
- 0x75ae, 0x7a97, 0x5e62, 0x5e8a, 0x95ef, 0x521b, 0x5439, 0x708a,
- 0x6376, 0x9524, 0x5782, 0x6625, 0x693f, 0x9187, 0x5507, 0x6df3,
- 0x7eaf, 0x8822, 0x6233, 0x7ef0, 0x75b5, 0x8328, 0x78c1, 0x96cc,
- 0x8f9e, 0x6148, 0x74f7, 0x8bcd, 0x6b64, 0x523a, 0x8d50, 0x6b21,
- 0x806a, 0x8471, 0x56f1, 0x5306, 0x4ece, 0x4e1b, 0x51d1, 0x7c97,
- 0x918b, 0x7c07, 0x4fc3, 0x8e7f, 0x7be1, 0x7a9c, 0x6467, 0x5d14,
- 0x50ac, 0x8106, 0x7601, 0x7cb9, 0x6dec, 0x7fe0, 0x6751, 0x5b58,
- 0x5bf8, 0x78cb, 0x64ae, 0x6413, 0x63aa, 0x632b, 0x9519, 0x642d,
- 0x8fbe, 0x7b54, 0x7629, 0x6253, 0x5927, 0x5446, 0x6b79, 0x50a3,
- 0x6234, 0x5e26, 0x6b86, 0x4ee3, 0x8d37, 0x888b, 0x5f85, 0x902e,
- 0x6020, 0x803d, 0x62c5, 0x4e39, 0x5355, 0x90f8, 0x63b8, 0x80c6,
- 0x65e6, 0x6c2e, 0x4f46, 0x60ee, 0x6de1, 0x8bde, 0x5f39, 0x86cb,
- 0x5f53, 0x6321, 0x515a, 0x8361, 0x6863, 0x5200, 0x6363, 0x8e48,
- 0x5012, 0x5c9b, 0x7977, 0x5bfc, 0x5230, 0x7a3b, 0x60bc, 0x9053,
- 0x76d7, 0x5fb7, 0x5f97, 0x7684, 0x8e6c, 0x706f, 0x767b, 0x7b49,
- 0x77aa, 0x51f3, 0x9093, 0x5824, 0x4f4e, 0x6ef4, 0x8fea, 0x654c,
- 0x7b1b, 0x72c4, 0x6da4, 0x7fdf, 0x5ae1, 0x62b5, 0x5e95, 0x5730,
- 0x8482, 0x7b2c, 0x5e1d, 0x5f1f, 0x9012, 0x7f14, 0x98a0, 0x6382,
- 0x6ec7, 0x7898, 0x70b9, 0x5178, 0x975b, 0x57ab, 0x7535, 0x4f43,
- 0x7538, 0x5e97, 0x60e6, 0x5960, 0x6dc0, 0x6bbf, 0x7889, 0x53fc,
- 0x96d5, 0x51cb, 0x5201, 0x6389, 0x540a, 0x9493, 0x8c03, 0x8dcc,
- 0x7239, 0x789f, 0x8776, 0x8fed, 0x8c0d, 0x53e0, 0x4e01, 0x76ef,
- 0x53ee, 0x9489, 0x9876, 0x9f0e, 0x952d, 0x5b9a, 0x8ba2, 0x4e22,
- 0x4e1c, 0x51ac, 0x8463, 0x61c2, 0x52a8, 0x680b, 0x4f97, 0x606b,
- 0x51bb, 0x6d1e, 0x515c, 0x6296, 0x6597, 0x9661, 0x8c46, 0x9017,
- 0x75d8, 0x90fd, 0x7763, 0x6bd2, 0x728a, 0x72ec, 0x8bfb, 0x5835,
- 0x7779, 0x8d4c, 0x675c, 0x9540, 0x809a, 0x5ea6, 0x6e21, 0x5992,
- 0x7aef, 0x77ed, 0x953b, 0x6bb5, 0x65ad, 0x7f0e, 0x5806, 0x5151,
- 0x961f, 0x5bf9, 0x58a9, 0x5428, 0x8e72, 0x6566, 0x987f, 0x56e4,
- 0x949d, 0x76fe, 0x9041, 0x6387, 0x54c6, 0x591a, 0x593a, 0x579b,
- 0x8eb2, 0x6735, 0x8dfa, 0x8235, 0x5241, 0x60f0, 0x5815, 0x86fe,
- 0x5ce8, 0x9e45, 0x4fc4, 0x989d, 0x8bb9, 0x5a25, 0x6076, 0x5384,
- 0x627c, 0x904f, 0x9102, 0x997f, 0x6069, 0x800c, 0x513f, 0x8033,
- 0x5c14, 0x9975, 0x6d31, 0x4e8c, 0x8d30, 0x53d1, 0x7f5a, 0x7b4f,
- 0x4f10, 0x4e4f, 0x9600, 0x6cd5, 0x73d0, 0x85e9, 0x5e06, 0x756a,
- 0x7ffb, 0x6a0a, 0x77fe, 0x9492, 0x7e41, 0x51e1, 0x70e6, 0x53cd,
- 0x8fd4, 0x8303, 0x8d29, 0x72af, 0x996d, 0x6cdb, 0x574a, 0x82b3,
- 0x65b9, 0x80aa, 0x623f, 0x9632, 0x59a8, 0x4eff, 0x8bbf, 0x7eba,
- 0x653e, 0x83f2, 0x975e, 0x5561, 0x98de, 0x80a5, 0x532a, 0x8bfd,
- 0x5420, 0x80ba, 0x5e9f, 0x6cb8, 0x8d39, 0x82ac, 0x915a, 0x5429,
- 0x6c1b, 0x5206, 0x7eb7, 0x575f, 0x711a, 0x6c7e, 0x7c89, 0x594b,
- 0x4efd, 0x5fff, 0x6124, 0x7caa, 0x4e30, 0x5c01, 0x67ab, 0x8702,
- 0x5cf0, 0x950b, 0x98ce, 0x75af, 0x70fd, 0x9022, 0x51af, 0x7f1d,
- 0x8bbd, 0x5949, 0x51e4, 0x4f5b, 0x5426, 0x592b, 0x6577, 0x80a4,
- 0x5b75, 0x6276, 0x62c2, 0x8f90, 0x5e45, 0x6c1f, 0x7b26, 0x4f0f,
- 0x4fd8, 0x670d, 0x6d6e, 0x6daa, 0x798f, 0x88b1, 0x5f17, 0x752b,
- 0x629a, 0x8f85, 0x4fef, 0x91dc, 0x65a7, 0x812f, 0x8151, 0x5e9c,
- 0x8150, 0x8d74, 0x526f, 0x8986, 0x8d4b, 0x590d, 0x5085, 0x4ed8,
- 0x961c, 0x7236, 0x8179, 0x8d1f, 0x5bcc, 0x8ba3, 0x9644, 0x5987,
- 0x7f1a, 0x5490, 0x5676, 0x560e, 0x8be5, 0x6539, 0x6982, 0x9499,
- 0x76d6, 0x6e89, 0x5e72, 0x7518, 0x6746, 0x67d1, 0x7aff, 0x809d,
- 0x8d76, 0x611f, 0x79c6, 0x6562, 0x8d63, 0x5188, 0x521a, 0x94a2,
- 0x7f38, 0x809b, 0x7eb2, 0x5c97, 0x6e2f, 0x6760, 0x7bd9, 0x768b,
- 0x9ad8, 0x818f, 0x7f94, 0x7cd5, 0x641e, 0x9550, 0x7a3f, 0x544a,
- 0x54e5, 0x6b4c, 0x6401, 0x6208, 0x9e3d, 0x80f3, 0x7599, 0x5272,
- 0x9769, 0x845b, 0x683c, 0x86e4, 0x9601, 0x9694, 0x94ec, 0x4e2a,
- 0x5404, 0x7ed9, 0x6839, 0x8ddf, 0x8015, 0x66f4, 0x5e9a, 0x7fb9,
- 0x57c2, 0x803f, 0x6897, 0x5de5, 0x653b, 0x529f, 0x606d, 0x9f9a,
- 0x4f9b, 0x8eac, 0x516c, 0x5bab, 0x5f13, 0x5de9, 0x6c5e, 0x62f1,
- 0x8d21, 0x5171, 0x94a9, 0x52fe, 0x6c9f, 0x82df, 0x72d7, 0x57a2,
- 0x6784, 0x8d2d, 0x591f, 0x8f9c, 0x83c7, 0x5495, 0x7b8d, 0x4f30,
- 0x6cbd, 0x5b64, 0x59d1, 0x9f13, 0x53e4, 0x86ca, 0x9aa8, 0x8c37,
- 0x80a1, 0x6545, 0x987e, 0x56fa, 0x96c7, 0x522e, 0x74dc, 0x5250,
- 0x5be1, 0x6302, 0x8902, 0x4e56, 0x62d0, 0x602a, 0x68fa, 0x5173,
- 0x5b98, 0x51a0, 0x89c2, 0x7ba1, 0x9986, 0x7f50, 0x60ef, 0x704c,
- 0x8d2f, 0x5149, 0x5e7f, 0x901b, 0x7470, 0x89c4, 0x572d, 0x7845,
- 0x5f52, 0x9f9f, 0x95fa, 0x8f68, 0x9b3c, 0x8be1, 0x7678, 0x6842,
- 0x67dc, 0x8dea, 0x8d35, 0x523d, 0x8f8a, 0x6eda, 0x68cd, 0x9505,
- 0x90ed, 0x56fd, 0x679c, 0x88f9, 0x8fc7, 0x54c8, 0x9ab8, 0x5b69,
- 0x6d77, 0x6c26, 0x4ea5, 0x5bb3, 0x9a87, 0x9163, 0x61a8, 0x90af,
- 0x97e9, 0x542b, 0x6db5, 0x5bd2, 0x51fd, 0x558a, 0x7f55, 0x7ff0,
- 0x64bc, 0x634d, 0x65f1, 0x61be, 0x608d, 0x710a, 0x6c57, 0x6c49,
- 0x592f, 0x676d, 0x822a, 0x58d5, 0x568e, 0x8c6a, 0x6beb, 0x90dd,
- 0x597d, 0x8017, 0x53f7, 0x6d69, 0x5475, 0x559d, 0x8377, 0x83cf,
- 0x6838, 0x79be, 0x548c, 0x4f55, 0x5408, 0x76d2, 0x8c89, 0x9602,
- 0x6cb3, 0x6db8, 0x8d6b, 0x8910, 0x9e64, 0x8d3a, 0x563f, 0x9ed1,
- 0x75d5, 0x5f88, 0x72e0, 0x6068, 0x54fc, 0x4ea8, 0x6a2a, 0x8861,
- 0x6052, 0x8f70, 0x54c4, 0x70d8, 0x8679, 0x9e3f, 0x6d2a, 0x5b8f,
- 0x5f18, 0x7ea2, 0x5589, 0x4faf, 0x7334, 0x543c, 0x539a, 0x5019,
- 0x540e, 0x547c, 0x4e4e, 0x5ffd, 0x745a, 0x58f6, 0x846b, 0x80e1,
- 0x8774, 0x72d0, 0x7cca, 0x6e56, 0x5f27, 0x864e, 0x552c, 0x62a4,
- 0x4e92, 0x6caa, 0x6237, 0x82b1, 0x54d7, 0x534e, 0x733e, 0x6ed1,
- 0x753b, 0x5212, 0x5316, 0x8bdd, 0x69d0, 0x5f8a, 0x6000, 0x6dee,
- 0x574f, 0x6b22, 0x73af, 0x6853, 0x8fd8, 0x7f13, 0x6362, 0x60a3,
- 0x5524, 0x75ea, 0x8c62, 0x7115, 0x6da3, 0x5ba6, 0x5e7b, 0x8352,
- 0x614c, 0x9ec4, 0x78fa, 0x8757, 0x7c27, 0x7687, 0x51f0, 0x60f6,
- 0x714c, 0x6643, 0x5e4c, 0x604d, 0x8c0e, 0x7070, 0x6325, 0x8f89,
- 0x5fbd, 0x6062, 0x86d4, 0x56de, 0x6bc1, 0x6094, 0x6167, 0x5349,
- 0x60e0, 0x6666, 0x8d3f, 0x79fd, 0x4f1a, 0x70e9, 0x6c47, 0x8bb3,
- 0x8bf2, 0x7ed8, 0x8364, 0x660f, 0x5a5a, 0x9b42, 0x6d51, 0x6df7,
- 0x8c41, 0x6d3b, 0x4f19, 0x706b, 0x83b7, 0x6216, 0x60d1, 0x970d,
- 0x8d27, 0x7978, 0x51fb, 0x573e, 0x57fa, 0x673a, 0x7578, 0x7a3d,
- 0x79ef, 0x7b95, 0x808c, 0x9965, 0x8ff9, 0x6fc0, 0x8ba5, 0x9e21,
- 0x59ec, 0x7ee9, 0x7f09, 0x5409, 0x6781, 0x68d8, 0x8f91, 0x7c4d,
- 0x96c6, 0x53ca, 0x6025, 0x75be, 0x6c72, 0x5373, 0x5ac9, 0x7ea7,
- 0x6324, 0x51e0, 0x810a, 0x5df1, 0x84df, 0x6280, 0x5180, 0x5b63,
- 0x4f0e, 0x796d, 0x5242, 0x60b8, 0x6d4e, 0x5bc4, 0x5bc2, 0x8ba1,
- 0x8bb0, 0x65e2, 0x5fcc, 0x9645, 0x5993, 0x7ee7, 0x7eaa, 0x5609,
- 0x67b7, 0x5939, 0x4f73, 0x5bb6, 0x52a0, 0x835a, 0x988a, 0x8d3e,
- 0x7532, 0x94be, 0x5047, 0x7a3c, 0x4ef7, 0x67b6, 0x9a7e, 0x5ac1,
- 0x6b7c, 0x76d1, 0x575a, 0x5c16, 0x7b3a, 0x95f4, 0x714e, 0x517c,
- 0x80a9, 0x8270, 0x5978, 0x7f04, 0x8327, 0x68c0, 0x67ec, 0x78b1,
- 0x7877, 0x62e3, 0x6361, 0x7b80, 0x4fed, 0x526a, 0x51cf, 0x8350,
- 0x69db, 0x9274, 0x8df5, 0x8d31, 0x89c1, 0x952e, 0x7bad, 0x4ef6,
- 0x5065, 0x8230, 0x5251, 0x996f, 0x6e10, 0x6e85, 0x6da7, 0x5efa,
- 0x50f5, 0x59dc, 0x5c06, 0x6d46, 0x6c5f, 0x7586, 0x848b, 0x6868,
- 0x5956, 0x8bb2, 0x5320, 0x9171, 0x964d, 0x8549, 0x6912, 0x7901,
- 0x7126, 0x80f6, 0x4ea4, 0x90ca, 0x6d47, 0x9a84, 0x5a07, 0x56bc,
- 0x6405, 0x94f0, 0x77eb, 0x4fa5, 0x811a, 0x72e1, 0x89d2, 0x997a,
- 0x7f34, 0x7ede, 0x527f, 0x6559, 0x9175, 0x8f7f, 0x8f83, 0x53eb,
- 0x7a96, 0x63ed, 0x63a5, 0x7686, 0x79f8, 0x8857, 0x9636, 0x622a,
- 0x52ab, 0x8282, 0x6854, 0x6770, 0x6377, 0x776b, 0x7aed, 0x6d01,
- 0x7ed3, 0x89e3, 0x59d0, 0x6212, 0x85c9, 0x82a5, 0x754c, 0x501f,
- 0x4ecb, 0x75a5, 0x8beb, 0x5c4a, 0x5dfe, 0x7b4b, 0x65a4, 0x91d1,
- 0x4eca, 0x6d25, 0x895f, 0x7d27, 0x9526, 0x4ec5, 0x8c28, 0x8fdb,
- 0x9773, 0x664b, 0x7981, 0x8fd1, 0x70ec, 0x6d78, 0x5c3d, 0x52b2,
- 0x8346, 0x5162, 0x830e, 0x775b, 0x6676, 0x9cb8, 0x4eac, 0x60ca,
- 0x7cbe, 0x7cb3, 0x7ecf, 0x4e95, 0x8b66, 0x666f, 0x9888, 0x9759,
- 0x5883, 0x656c, 0x955c, 0x5f84, 0x75c9, 0x9756, 0x7adf, 0x7ade,
- 0x51c0, 0x70af, 0x7a98, 0x63ea, 0x7a76, 0x7ea0, 0x7396, 0x97ed,
- 0x4e45, 0x7078, 0x4e5d, 0x9152, 0x53a9, 0x6551, 0x65e7, 0x81fc,
- 0x8205, 0x548e, 0x5c31, 0x759a, 0x97a0, 0x62d8, 0x72d9, 0x75bd,
- 0x5c45, 0x9a79, 0x83ca, 0x5c40, 0x5480, 0x77e9, 0x4e3e, 0x6cae,
- 0x805a, 0x62d2, 0x636e, 0x5de8, 0x5177, 0x8ddd, 0x8e1e, 0x952f,
- 0x4ff1, 0x53e5, 0x60e7, 0x70ac, 0x5267, 0x6350, 0x9e43, 0x5a1f,
- 0x5026, 0x7737, 0x5377, 0x7ee2, 0x6485, 0x652b, 0x6289, 0x6398,
- 0x5014, 0x7235, 0x89c9, 0x51b3, 0x8bc0, 0x7edd, 0x5747, 0x83cc,
- 0x94a7, 0x519b, 0x541b, 0x5cfb, 0x4fca, 0x7ae3, 0x6d5a, 0x90e1,
- 0x9a8f, 0x5580, 0x5496, 0x5361, 0x54af, 0x5f00, 0x63e9, 0x6977,
- 0x51ef, 0x6168, 0x520a, 0x582a, 0x52d8, 0x574e, 0x780d, 0x770b,
- 0x5eb7, 0x6177, 0x7ce0, 0x625b, 0x6297, 0x4ea2, 0x7095, 0x8003,
- 0x62f7, 0x70e4, 0x9760, 0x5777, 0x82db, 0x67ef, 0x68f5, 0x78d5,
- 0x9897, 0x79d1, 0x58f3, 0x54b3, 0x53ef, 0x6e34, 0x514b, 0x523b,
- 0x5ba2, 0x8bfe, 0x80af, 0x5543, 0x57a6, 0x6073, 0x5751, 0x542d,
- 0x7a7a, 0x6050, 0x5b54, 0x63a7, 0x62a0, 0x53e3, 0x6263, 0x5bc7,
- 0x67af, 0x54ed, 0x7a9f, 0x82e6, 0x9177, 0x5e93, 0x88e4, 0x5938,
- 0x57ae, 0x630e, 0x8de8, 0x80ef, 0x5757, 0x7b77, 0x4fa9, 0x5feb,
- 0x5bbd, 0x6b3e, 0x5321, 0x7b50, 0x72c2, 0x6846, 0x77ff, 0x7736,
- 0x65f7, 0x51b5, 0x4e8f, 0x76d4, 0x5cbf, 0x7aa5, 0x8475, 0x594e,
- 0x9b41, 0x5080, 0x9988, 0x6127, 0x6e83, 0x5764, 0x6606, 0x6346,
- 0x56f0, 0x62ec, 0x6269, 0x5ed3, 0x9614, 0x5783, 0x62c9, 0x5587,
- 0x8721, 0x814a, 0x8fa3, 0x5566, 0x83b1, 0x6765, 0x8d56, 0x84dd,
- 0x5a6a, 0x680f, 0x62e6, 0x7bee, 0x9611, 0x5170, 0x6f9c, 0x8c30,
- 0x63fd, 0x89c8, 0x61d2, 0x7f06, 0x70c2, 0x6ee5, 0x7405, 0x6994,
- 0x72fc, 0x5eca, 0x90ce, 0x6717, 0x6d6a, 0x635e, 0x52b3, 0x7262,
- 0x8001, 0x4f6c, 0x59e5, 0x916a, 0x70d9, 0x6d9d, 0x52d2, 0x4e50,
- 0x96f7, 0x956d, 0x857e, 0x78ca, 0x7d2f, 0x5121, 0x5792, 0x64c2,
- 0x808b, 0x7c7b, 0x6cea, 0x68f1, 0x695e, 0x51b7, 0x5398, 0x68a8,
- 0x7281, 0x9ece, 0x7bf1, 0x72f8, 0x79bb, 0x6f13, 0x7406, 0x674e,
- 0x91cc, 0x9ca4, 0x793c, 0x8389, 0x8354, 0x540f, 0x6817, 0x4e3d,
- 0x5389, 0x52b1, 0x783e, 0x5386, 0x5229, 0x5088, 0x4f8b, 0x4fd0,
- 0x75e2, 0x7acb, 0x7c92, 0x6ca5, 0x96b6, 0x529b, 0x7483, 0x54e9,
- 0x4fe9, 0x8054, 0x83b2, 0x8fde, 0x9570, 0x5ec9, 0x601c, 0x6d9f,
- 0x5e18, 0x655b, 0x8138, 0x94fe, 0x604b, 0x70bc, 0x7ec3, 0x7cae,
- 0x51c9, 0x6881, 0x7cb1, 0x826f, 0x4e24, 0x8f86, 0x91cf, 0x667e,
- 0x4eae, 0x8c05, 0x64a9, 0x804a, 0x50da, 0x7597, 0x71ce, 0x5be5,
- 0x8fbd, 0x6f66, 0x4e86, 0x6482, 0x9563, 0x5ed6, 0x6599, 0x5217,
- 0x88c2, 0x70c8, 0x52a3, 0x730e, 0x7433, 0x6797, 0x78f7, 0x9716,
- 0x4e34, 0x90bb, 0x9cde, 0x6dcb, 0x51db, 0x8d41, 0x541d, 0x62ce,
- 0x73b2, 0x83f1, 0x96f6, 0x9f84, 0x94c3, 0x4f36, 0x7f9a, 0x51cc,
- 0x7075, 0x9675, 0x5cad, 0x9886, 0x53e6, 0x4ee4, 0x6e9c, 0x7409,
- 0x69b4, 0x786b, 0x998f, 0x7559, 0x5218, 0x7624, 0x6d41, 0x67f3,
- 0x516d, 0x9f99, 0x804b, 0x5499, 0x7b3c, 0x7abf, 0x9686, 0x5784,
- 0x62e2, 0x9647, 0x697c, 0x5a04, 0x6402, 0x7bd3, 0x6f0f, 0x964b,
- 0x82a6, 0x5362, 0x9885, 0x5e90, 0x7089, 0x63b3, 0x5364, 0x864f,
- 0x9c81, 0x9e93, 0x788c, 0x9732, 0x8def, 0x8d42, 0x9e7f, 0x6f5e,
- 0x7984, 0x5f55, 0x9646, 0x622e, 0x9a74, 0x5415, 0x94dd, 0x4fa3,
- 0x65c5, 0x5c65, 0x5c61, 0x7f15, 0x8651, 0x6c2f, 0x5f8b, 0x7387,
- 0x6ee4, 0x7eff, 0x5ce6, 0x631b, 0x5b6a, 0x6ee6, 0x5375, 0x4e71,
- 0x63a0, 0x7565, 0x62a1, 0x8f6e, 0x4f26, 0x4ed1, 0x6ca6, 0x7eb6,
- 0x8bba, 0x841d, 0x87ba, 0x7f57, 0x903b, 0x9523, 0x7ba9, 0x9aa1,
- 0x88f8, 0x843d, 0x6d1b, 0x9a86, 0x7edc, 0x5988, 0x9ebb, 0x739b,
- 0x7801, 0x8682, 0x9a6c, 0x9a82, 0x561b, 0x5417, 0x57cb, 0x4e70,
- 0x9ea6, 0x5356, 0x8fc8, 0x8109, 0x7792, 0x9992, 0x86ee, 0x6ee1,
- 0x8513, 0x66fc, 0x6162, 0x6f2b, 0x8c29, 0x8292, 0x832b, 0x76f2,
- 0x6c13, 0x5fd9, 0x83bd, 0x732b, 0x8305, 0x951a, 0x6bdb, 0x77db,
- 0x94c6, 0x536f, 0x8302, 0x5192, 0x5e3d, 0x8c8c, 0x8d38, 0x4e48,
- 0x73ab, 0x679a, 0x6885, 0x9176, 0x9709, 0x7164, 0x6ca1, 0x7709,
- 0x5a92, 0x9541, 0x6bcf, 0x7f8e, 0x6627, 0x5bd0, 0x59b9, 0x5a9a,
- 0x95e8, 0x95f7, 0x4eec, 0x840c, 0x8499, 0x6aac, 0x76df, 0x9530,
- 0x731b, 0x68a6, 0x5b5f, 0x772f, 0x919a, 0x9761, 0x7cdc, 0x8ff7,
- 0x8c1c, 0x5f25, 0x7c73, 0x79d8, 0x89c5, 0x6ccc, 0x871c, 0x5bc6,
- 0x5e42, 0x68c9, 0x7720, 0x7ef5, 0x5195, 0x514d, 0x52c9, 0x5a29,
- 0x7f05, 0x9762, 0x82d7, 0x63cf, 0x7784, 0x85d0, 0x79d2, 0x6e3a,
- 0x5e99, 0x5999, 0x8511, 0x706d, 0x6c11, 0x62bf, 0x76bf, 0x654f,
- 0x60af, 0x95fd, 0x660e, 0x879f, 0x9e23, 0x94ed, 0x540d, 0x547d,
- 0x8c2c, 0x6478, 0x6479, 0x8611, 0x6a21, 0x819c, 0x78e8, 0x6469,
- 0x9b54, 0x62b9, 0x672b, 0x83ab, 0x58a8, 0x9ed8, 0x6cab, 0x6f20,
- 0x5bde, 0x964c, 0x8c0b, 0x725f, 0x67d0, 0x62c7, 0x7261, 0x4ea9,
- 0x59c6, 0x6bcd, 0x5893, 0x66ae, 0x5e55, 0x52df, 0x6155, 0x6728,
- 0x76ee, 0x7766, 0x7267, 0x7a46, 0x62ff, 0x54ea, 0x5450, 0x94a0,
- 0x90a3, 0x5a1c, 0x7eb3, 0x6c16, 0x4e43, 0x5976, 0x8010, 0x5948,
- 0x5357, 0x7537, 0x96be, 0x56ca, 0x6320, 0x8111, 0x607c, 0x95f9,
- 0x6dd6, 0x5462, 0x9981, 0x5185, 0x5ae9, 0x80fd, 0x59ae, 0x9713,
- 0x502a, 0x6ce5, 0x5c3c, 0x62df, 0x4f60, 0x533f, 0x817b, 0x9006,
- 0x6eba, 0x852b, 0x62c8, 0x5e74, 0x78be, 0x64b5, 0x637b, 0x5ff5,
- 0x5a18, 0x917f, 0x9e1f, 0x5c3f, 0x634f, 0x8042, 0x5b7d, 0x556e,
- 0x954a, 0x954d, 0x6d85, 0x60a8, 0x67e0, 0x72de, 0x51dd, 0x5b81,
- 0x62e7, 0x6cde, 0x725b, 0x626d, 0x94ae, 0x7ebd, 0x8113, 0x6d53,
- 0x519c, 0x5f04, 0x5974, 0x52aa, 0x6012, 0x5973, 0x6696, 0x8650,
- 0x759f, 0x632a, 0x61e6, 0x7cef, 0x8bfa, 0x54e6, 0x6b27, 0x9e25,
- 0x6bb4, 0x85d5, 0x5455, 0x5076, 0x6ca4, 0x556a, 0x8db4, 0x722c,
- 0x5e15, 0x6015, 0x7436, 0x62cd, 0x6392, 0x724c, 0x5f98, 0x6e43,
- 0x6d3e, 0x6500, 0x6f58, 0x76d8, 0x78d0, 0x76fc, 0x7554, 0x5224,
- 0x53db, 0x4e53, 0x5e9e, 0x65c1, 0x802a, 0x80d6, 0x629b, 0x5486,
- 0x5228, 0x70ae, 0x888d, 0x8dd1, 0x6ce1, 0x5478, 0x80da, 0x57f9,
- 0x88f4, 0x8d54, 0x966a, 0x914d, 0x4f69, 0x6c9b, 0x55b7, 0x76c6,
- 0x7830, 0x62a8, 0x70f9, 0x6f8e, 0x5f6d, 0x84ec, 0x68da, 0x787c,
- 0x7bf7, 0x81a8, 0x670b, 0x9e4f, 0x6367, 0x78b0, 0x576f, 0x7812,
- 0x9739, 0x6279, 0x62ab, 0x5288, 0x7435, 0x6bd7, 0x5564, 0x813e,
- 0x75b2, 0x76ae, 0x5339, 0x75de, 0x50fb, 0x5c41, 0x8b6c, 0x7bc7,
- 0x504f, 0x7247, 0x9a97, 0x98d8, 0x6f02, 0x74e2, 0x7968, 0x6487,
- 0x77a5, 0x62fc, 0x9891, 0x8d2b, 0x54c1, 0x8058, 0x4e52, 0x576a,
- 0x82f9, 0x840d, 0x5e73, 0x51ed, 0x74f6, 0x8bc4, 0x5c4f, 0x5761,
- 0x6cfc, 0x9887, 0x5a46, 0x7834, 0x9b44, 0x8feb, 0x7c95, 0x5256,
- 0x6251, 0x94fa, 0x4ec6, 0x8386, 0x8461, 0x83e9, 0x84b2, 0x57d4,
- 0x6734, 0x5703, 0x666e, 0x6d66, 0x8c31, 0x66dd, 0x7011, 0x671f,
- 0x6b3a, 0x6816, 0x621a, 0x59bb, 0x4e03, 0x51c4, 0x6f06, 0x67d2,
- 0x6c8f, 0x5176, 0x68cb, 0x5947, 0x6b67, 0x7566, 0x5d0e, 0x8110,
- 0x9f50, 0x65d7, 0x7948, 0x7941, 0x9a91, 0x8d77, 0x5c82, 0x4e5e,
- 0x4f01, 0x542f, 0x5951, 0x780c, 0x5668, 0x6c14, 0x8fc4, 0x5f03,
- 0x6c7d, 0x6ce3, 0x8bab, 0x6390, 0x6070, 0x6d3d, 0x7275, 0x6266,
- 0x948e, 0x94c5, 0x5343, 0x8fc1, 0x7b7e, 0x4edf, 0x8c26, 0x4e7e,
- 0x9ed4, 0x94b1, 0x94b3, 0x524d, 0x6f5c, 0x9063, 0x6d45, 0x8c34,
- 0x5811, 0x5d4c, 0x6b20, 0x6b49, 0x67aa, 0x545b, 0x8154, 0x7f8c,
- 0x5899, 0x8537, 0x5f3a, 0x62a2, 0x6a47, 0x9539, 0x6572, 0x6084,
- 0x6865, 0x77a7, 0x4e54, 0x4fa8, 0x5de7, 0x9798, 0x64ac, 0x7fd8,
- 0x5ced, 0x4fcf, 0x7a8d, 0x5207, 0x8304, 0x4e14, 0x602f, 0x7a83,
- 0x94a6, 0x4fb5, 0x4eb2, 0x79e6, 0x7434, 0x52e4, 0x82b9, 0x64d2,
- 0x79bd, 0x5bdd, 0x6c81, 0x9752, 0x8f7b, 0x6c22, 0x503e, 0x537f,
- 0x6e05, 0x64ce, 0x6674, 0x6c30, 0x60c5, 0x9877, 0x8bf7, 0x5e86,
- 0x743c, 0x7a77, 0x79cb, 0x4e18, 0x90b1, 0x7403, 0x6c42, 0x56da,
- 0x914b, 0x6cc5, 0x8d8b, 0x533a, 0x86c6, 0x66f2, 0x8eaf, 0x5c48,
- 0x9a71, 0x6e20, 0x53d6, 0x5a36, 0x9f8b, 0x8da3, 0x53bb, 0x5708,
- 0x98a7, 0x6743, 0x919b, 0x6cc9, 0x5168, 0x75ca, 0x62f3, 0x72ac,
- 0x5238, 0x529d, 0x7f3a, 0x7094, 0x7638, 0x5374, 0x9e4a, 0x69b7,
- 0x786e, 0x96c0, 0x88d9, 0x7fa4, 0x7136, 0x71c3, 0x5189, 0x67d3,
- 0x74e4, 0x58e4, 0x6518, 0x56b7, 0x8ba9, 0x9976, 0x6270, 0x7ed5,
- 0x60f9, 0x70ed, 0x58ec, 0x4ec1, 0x4eba, 0x5fcd, 0x97e7, 0x4efb,
- 0x8ba4, 0x5203, 0x598a, 0x7eab, 0x6254, 0x4ecd, 0x65e5, 0x620e,
- 0x8338, 0x84c9, 0x8363, 0x878d, 0x7194, 0x6eb6, 0x5bb9, 0x7ed2,
- 0x5197, 0x63c9, 0x67d4, 0x8089, 0x8339, 0x8815, 0x5112, 0x5b7a,
- 0x5982, 0x8fb1, 0x4e73, 0x6c5d, 0x5165, 0x8925, 0x8f6f, 0x962e,
- 0x854a, 0x745e, 0x9510, 0x95f0, 0x6da6, 0x82e5, 0x5f31, 0x6492,
- 0x6d12, 0x8428, 0x816e, 0x9cc3, 0x585e, 0x8d5b, 0x4e09, 0x53c1,
- 0x4f1e, 0x6563, 0x6851, 0x55d3, 0x4e27, 0x6414, 0x9a9a, 0x626b,
- 0x5ac2, 0x745f, 0x8272, 0x6da9, 0x68ee, 0x50e7, 0x838e, 0x7802,
- 0x6740, 0x5239, 0x6c99, 0x7eb1, 0x50bb, 0x5565, 0x715e, 0x7b5b,
- 0x6652, 0x73ca, 0x82eb, 0x6749, 0x5c71, 0x5220, 0x717d, 0x886b,
- 0x95ea, 0x9655, 0x64c5, 0x8d61, 0x81b3, 0x5584, 0x6c55, 0x6247,
- 0x7f2e, 0x5892, 0x4f24, 0x5546, 0x8d4f, 0x664c, 0x4e0a, 0x5c1a,
- 0x88f3, 0x68a2, 0x634e, 0x7a0d, 0x70e7, 0x828d, 0x52fa, 0x97f6,
- 0x5c11, 0x54e8, 0x90b5, 0x7ecd, 0x5962, 0x8d4a, 0x86c7, 0x820c,
- 0x820d, 0x8d66, 0x6444, 0x5c04, 0x6151, 0x6d89, 0x793e, 0x8bbe,
- 0x7837, 0x7533, 0x547b, 0x4f38, 0x8eab, 0x6df1, 0x5a20, 0x7ec5,
- 0x795e, 0x6c88, 0x5ba1, 0x5a76, 0x751a, 0x80be, 0x614e, 0x6e17,
- 0x58f0, 0x751f, 0x7525, 0x7272, 0x5347, 0x7ef3, 0x7701, 0x76db,
- 0x5269, 0x80dc, 0x5723, 0x5e08, 0x5931, 0x72ee, 0x65bd, 0x6e7f,
- 0x8bd7, 0x5c38, 0x8671, 0x5341, 0x77f3, 0x62fe, 0x65f6, 0x4ec0,
- 0x98df, 0x8680, 0x5b9e, 0x8bc6, 0x53f2, 0x77e2, 0x4f7f, 0x5c4e,
- 0x9a76, 0x59cb, 0x5f0f, 0x793a, 0x58eb, 0x4e16, 0x67ff, 0x4e8b,
- 0x62ed, 0x8a93, 0x901d, 0x52bf, 0x662f, 0x55dc, 0x566c, 0x9002,
- 0x4ed5, 0x4f8d, 0x91ca, 0x9970, 0x6c0f, 0x5e02, 0x6043, 0x5ba4,
- 0x89c6, 0x8bd5, 0x6536, 0x624b, 0x9996, 0x5b88, 0x5bff, 0x6388,
- 0x552e, 0x53d7, 0x7626, 0x517d, 0x852c, 0x67a2, 0x68b3, 0x6b8a,
- 0x6292, 0x8f93, 0x53d4, 0x8212, 0x6dd1, 0x758f, 0x4e66, 0x8d4e,
- 0x5b70, 0x719f, 0x85af, 0x6691, 0x66d9, 0x7f72, 0x8700, 0x9ecd,
- 0x9f20, 0x5c5e, 0x672f, 0x8ff0, 0x6811, 0x675f, 0x620d, 0x7ad6,
- 0x5885, 0x5eb6, 0x6570, 0x6f31, 0x6055, 0x5237, 0x800d, 0x6454,
- 0x8870, 0x7529, 0x5e05, 0x6813, 0x62f4, 0x971c, 0x53cc, 0x723d,
- 0x8c01, 0x6c34, 0x7761, 0x7a0e, 0x542e, 0x77ac, 0x987a, 0x821c,
- 0x8bf4, 0x7855, 0x6714, 0x70c1, 0x65af, 0x6495, 0x5636, 0x601d,
- 0x79c1, 0x53f8, 0x4e1d, 0x6b7b, 0x8086, 0x5bfa, 0x55e3, 0x56db,
- 0x4f3a, 0x4f3c, 0x9972, 0x5df3, 0x677e, 0x8038, 0x6002, 0x9882,
- 0x9001, 0x5b8b, 0x8bbc, 0x8bf5, 0x641c, 0x8258, 0x64de, 0x55fd,
- 0x82cf, 0x9165, 0x4fd7, 0x7d20, 0x901f, 0x7c9f, 0x50f3, 0x5851,
- 0x6eaf, 0x5bbf, 0x8bc9, 0x8083, 0x9178, 0x849c, 0x7b97, 0x867d,
- 0x968b, 0x968f, 0x7ee5, 0x9ad3, 0x788e, 0x5c81, 0x7a57, 0x9042,
- 0x96a7, 0x795f, 0x5b59, 0x635f, 0x7b0b, 0x84d1, 0x68ad, 0x5506,
- 0x7f29, 0x7410, 0x7d22, 0x9501, 0x6240, 0x584c, 0x4ed6, 0x5b83,
- 0x5979, 0x5854, 0x736d, 0x631e, 0x8e4b, 0x8e0f, 0x80ce, 0x82d4,
- 0x62ac, 0x53f0, 0x6cf0, 0x915e, 0x592a, 0x6001, 0x6c70, 0x574d,
- 0x644a, 0x8d2a, 0x762b, 0x6ee9, 0x575b, 0x6a80, 0x75f0, 0x6f6d,
- 0x8c2d, 0x8c08, 0x5766, 0x6bef, 0x8892, 0x78b3, 0x63a2, 0x53f9,
- 0x70ad, 0x6c64, 0x5858, 0x642a, 0x5802, 0x68e0, 0x819b, 0x5510,
- 0x7cd6, 0x5018, 0x8eba, 0x6dcc, 0x8d9f, 0x70eb, 0x638f, 0x6d9b,
- 0x6ed4, 0x7ee6, 0x8404, 0x6843, 0x9003, 0x6dd8, 0x9676, 0x8ba8,
- 0x5957, 0x7279, 0x85e4, 0x817e, 0x75bc, 0x8a8a, 0x68af, 0x5254,
- 0x8e22, 0x9511, 0x63d0, 0x9898, 0x8e44, 0x557c, 0x4f53, 0x66ff,
- 0x568f, 0x60d5, 0x6d95, 0x5243, 0x5c49, 0x5929, 0x6dfb, 0x586b,
- 0x7530, 0x751c, 0x606c, 0x8214, 0x8146, 0x6311, 0x6761, 0x8fe2,
- 0x773a, 0x8df3, 0x8d34, 0x94c1, 0x5e16, 0x5385, 0x542c, 0x70c3,
- 0x6c40, 0x5ef7, 0x505c, 0x4ead, 0x5ead, 0x633a, 0x8247, 0x901a,
- 0x6850, 0x916e, 0x77b3, 0x540c, 0x94dc, 0x5f64, 0x7ae5, 0x6876,
- 0x6345, 0x7b52, 0x7edf, 0x75db, 0x5077, 0x6295, 0x5934, 0x900f,
- 0x51f8, 0x79c3, 0x7a81, 0x56fe, 0x5f92, 0x9014, 0x6d82, 0x5c60,
- 0x571f, 0x5410, 0x5154, 0x6e4d, 0x56e2, 0x63a8, 0x9893, 0x817f,
- 0x8715, 0x892a, 0x9000, 0x541e, 0x5c6f, 0x81c0, 0x62d6, 0x6258,
- 0x8131, 0x9e35, 0x9640, 0x9a6e, 0x9a7c, 0x692d, 0x59a5, 0x62d3,
- 0x553e, 0x6316, 0x54c7, 0x86d9, 0x6d3c, 0x5a03, 0x74e6, 0x889c,
- 0x6b6a, 0x5916, 0x8c4c, 0x5f2f, 0x6e7e, 0x73a9, 0x987d, 0x4e38,
- 0x70f7, 0x5b8c, 0x7897, 0x633d, 0x665a, 0x7696, 0x60cb, 0x5b9b,
- 0x5a49, 0x4e07, 0x8155, 0x6c6a, 0x738b, 0x4ea1, 0x6789, 0x7f51,
- 0x5f80, 0x65fa, 0x671b, 0x5fd8, 0x5984, 0x5a01, 0x5dcd, 0x5fae,
- 0x5371, 0x97e6, 0x8fdd, 0x6845, 0x56f4, 0x552f, 0x60df, 0x4e3a,
- 0x6f4d, 0x7ef4, 0x82c7, 0x840e, 0x59d4, 0x4f1f, 0x4f2a, 0x5c3e,
- 0x7eac, 0x672a, 0x851a, 0x5473, 0x754f, 0x80c3, 0x5582, 0x9b4f,
- 0x4f4d, 0x6e2d, 0x8c13, 0x5c09, 0x6170, 0x536b, 0x761f, 0x6e29,
- 0x868a, 0x6587, 0x95fb, 0x7eb9, 0x543b, 0x7a33, 0x7d0a, 0x95ee,
- 0x55e1, 0x7fc1, 0x74ee, 0x631d, 0x8717, 0x6da1, 0x7a9d, 0x6211,
- 0x65a1, 0x5367, 0x63e1, 0x6c83, 0x5deb, 0x545c, 0x94a8, 0x4e4c,
- 0x6c61, 0x8bec, 0x5c4b, 0x65e0, 0x829c, 0x68a7, 0x543e, 0x5434,
- 0x6bcb, 0x6b66, 0x4e94, 0x6342, 0x5348, 0x821e, 0x4f0d, 0x4fae,
- 0x575e, 0x620a, 0x96fe, 0x6664, 0x7269, 0x52ff, 0x52a1, 0x609f,
- 0x8bef, 0x6614, 0x7199, 0x6790, 0x897f, 0x7852, 0x77fd, 0x6670,
- 0x563b, 0x5438, 0x9521, 0x727a, 0x7a00, 0x606f, 0x5e0c, 0x6089,
- 0x819d, 0x5915, 0x60dc, 0x7184, 0x70ef, 0x6eaa, 0x6c50, 0x7280,
- 0x6a84, 0x88ad, 0x5e2d, 0x4e60, 0x5ab3, 0x559c, 0x94e3, 0x6d17,
- 0x7cfb, 0x9699, 0x620f, 0x7ec6, 0x778e, 0x867e, 0x5323, 0x971e,
- 0x8f96, 0x6687, 0x5ce1, 0x4fa0, 0x72ed, 0x4e0b, 0x53a6, 0x590f,
- 0x5413, 0x6380, 0x9528, 0x5148, 0x4ed9, 0x9c9c, 0x7ea4, 0x54b8,
- 0x8d24, 0x8854, 0x8237, 0x95f2, 0x6d8e, 0x5f26, 0x5acc, 0x663e,
- 0x9669, 0x73b0, 0x732e, 0x53bf, 0x817a, 0x9985, 0x7fa1, 0x5baa,
- 0x9677, 0x9650, 0x7ebf, 0x76f8, 0x53a2, 0x9576, 0x9999, 0x7bb1,
- 0x8944, 0x6e58, 0x4e61, 0x7fd4, 0x7965, 0x8be6, 0x60f3, 0x54cd,
- 0x4eab, 0x9879, 0x5df7, 0x6a61, 0x50cf, 0x5411, 0x8c61, 0x8427,
- 0x785d, 0x9704, 0x524a, 0x54ee, 0x56a3, 0x9500, 0x6d88, 0x5bb5,
- 0x6dc6, 0x6653, 0x5c0f, 0x5b5d, 0x6821, 0x8096, 0x5578, 0x7b11,
- 0x6548, 0x6954, 0x4e9b, 0x6b47, 0x874e, 0x978b, 0x534f, 0x631f,
- 0x643a, 0x90aa, 0x659c, 0x80c1, 0x8c10, 0x5199, 0x68b0, 0x5378,
- 0x87f9, 0x61c8, 0x6cc4, 0x6cfb, 0x8c22, 0x5c51, 0x85aa, 0x82af,
- 0x950c, 0x6b23, 0x8f9b, 0x65b0, 0x5ffb, 0x5fc3, 0x4fe1, 0x8845,
- 0x661f, 0x8165, 0x7329, 0x60fa, 0x5174, 0x5211, 0x578b, 0x5f62,
- 0x90a2, 0x884c, 0x9192, 0x5e78, 0x674f, 0x6027, 0x59d3, 0x5144,
- 0x51f6, 0x80f8, 0x5308, 0x6c79, 0x96c4, 0x718a, 0x4f11, 0x4fee,
- 0x7f9e, 0x673d, 0x55c5, 0x9508, 0x79c0, 0x8896, 0x7ee3, 0x589f,
- 0x620c, 0x9700, 0x865a, 0x5618, 0x987b, 0x5f90, 0x8bb8, 0x84c4,
- 0x9157, 0x53d9, 0x65ed, 0x5e8f, 0x755c, 0x6064, 0x7d6e, 0x5a7f,
- 0x7eea, 0x7eed, 0x8f69, 0x55a7, 0x5ba3, 0x60ac, 0x65cb, 0x7384,
- 0x9009, 0x7663, 0x7729, 0x7eda, 0x9774, 0x859b, 0x5b66, 0x7a74,
- 0x96ea, 0x8840, 0x52cb, 0x718f, 0x5faa, 0x65ec, 0x8be2, 0x5bfb,
- 0x9a6f, 0x5de1, 0x6b89, 0x6c5b, 0x8bad, 0x8baf, 0x900a, 0x8fc5,
- 0x538b, 0x62bc, 0x9e26, 0x9e2d, 0x5440, 0x4e2b, 0x82bd, 0x7259,
- 0x869c, 0x5d16, 0x8859, 0x6daf, 0x96c5, 0x54d1, 0x4e9a, 0x8bb6,
- 0x7109, 0x54bd, 0x9609, 0x70df, 0x6df9, 0x76d0, 0x4e25, 0x7814,
- 0x8712, 0x5ca9, 0x5ef6, 0x8a00, 0x989c, 0x960e, 0x708e, 0x6cbf,
- 0x5944, 0x63a9, 0x773c, 0x884d, 0x6f14, 0x8273, 0x5830, 0x71d5,
- 0x538c, 0x781a, 0x96c1, 0x5501, 0x5f66, 0x7130, 0x5bb4, 0x8c1a,
- 0x9a8c, 0x6b83, 0x592e, 0x9e2f, 0x79e7, 0x6768, 0x626c, 0x4f6f,
- 0x75a1, 0x7f8a, 0x6d0b, 0x9633, 0x6c27, 0x4ef0, 0x75d2, 0x517b,
- 0x6837, 0x6f3e, 0x9080, 0x8170, 0x5996, 0x7476, 0x6447, 0x5c27,
- 0x9065, 0x7a91, 0x8c23, 0x59da, 0x54ac, 0x8200, 0x836f, 0x8981,
- 0x8000, 0x6930, 0x564e, 0x8036, 0x7237, 0x91ce, 0x51b6, 0x4e5f,
- 0x9875, 0x6396, 0x4e1a, 0x53f6, 0x66f3, 0x814b, 0x591c, 0x6db2,
- 0x4e00, 0x58f9, 0x533b, 0x63d6, 0x94f1, 0x4f9d, 0x4f0a, 0x8863,
- 0x9890, 0x5937, 0x9057, 0x79fb, 0x4eea, 0x80f0, 0x7591, 0x6c82,
- 0x5b9c, 0x59e8, 0x5f5d, 0x6905, 0x8681, 0x501a, 0x5df2, 0x4e59,
- 0x77e3, 0x4ee5, 0x827a, 0x6291, 0x6613, 0x9091, 0x5c79, 0x4ebf,
- 0x5f79, 0x81c6, 0x9038, 0x8084, 0x75ab, 0x4ea6, 0x88d4, 0x610f,
- 0x6bc5, 0x5fc6, 0x4e49, 0x76ca, 0x6ea2, 0x8be3, 0x8bae, 0x8c0a,
- 0x8bd1, 0x5f02, 0x7ffc, 0x7fcc, 0x7ece, 0x8335, 0x836b, 0x56e0,
- 0x6bb7, 0x97f3, 0x9634, 0x59fb, 0x541f, 0x94f6, 0x6deb, 0x5bc5,
- 0x996e, 0x5c39, 0x5f15, 0x9690, 0x5370, 0x82f1, 0x6a31, 0x5a74,
- 0x9e70, 0x5e94, 0x7f28, 0x83b9, 0x8424, 0x8425, 0x8367, 0x8747,
- 0x8fce, 0x8d62, 0x76c8, 0x5f71, 0x9896, 0x786c, 0x6620, 0x54df,
- 0x62e5, 0x4f63, 0x81c3, 0x75c8, 0x5eb8, 0x96cd, 0x8e0a, 0x86f9,
- 0x548f, 0x6cf3, 0x6d8c, 0x6c38, 0x607f, 0x52c7, 0x7528, 0x5e7d,
- 0x4f18, 0x60a0, 0x5fe7, 0x5c24, 0x7531, 0x90ae, 0x94c0, 0x72b9,
- 0x6cb9, 0x6e38, 0x9149, 0x6709, 0x53cb, 0x53f3, 0x4f51, 0x91c9,
- 0x8bf1, 0x53c8, 0x5e7c, 0x8fc2, 0x6de4, 0x4e8e, 0x76c2, 0x6986,
- 0x865e, 0x611a, 0x8206, 0x4f59, 0x4fde, 0x903e, 0x9c7c, 0x6109,
- 0x6e1d, 0x6e14, 0x9685, 0x4e88, 0x5a31, 0x96e8, 0x4e0e, 0x5c7f,
- 0x79b9, 0x5b87, 0x8bed, 0x7fbd, 0x7389, 0x57df, 0x828b, 0x90c1,
- 0x5401, 0x9047, 0x55bb, 0x5cea, 0x5fa1, 0x6108, 0x6b32, 0x72f1,
- 0x80b2, 0x8a89, 0x6d74, 0x5bd3, 0x88d5, 0x9884, 0x8c6b, 0x9a6d,
- 0x9e33, 0x6e0a, 0x51a4, 0x5143, 0x57a3, 0x8881, 0x539f, 0x63f4,
- 0x8f95, 0x56ed, 0x5458, 0x5706, 0x733f, 0x6e90, 0x7f18, 0x8fdc,
- 0x82d1, 0x613f, 0x6028, 0x9662, 0x66f0, 0x7ea6, 0x8d8a, 0x8dc3,
- 0x94a5, 0x5cb3, 0x7ca4, 0x6708, 0x60a6, 0x9605, 0x8018, 0x4e91,
- 0x90e7, 0x5300, 0x9668, 0x5141, 0x8fd0, 0x8574, 0x915d, 0x6655,
- 0x97f5, 0x5b55, 0x531d, 0x7838, 0x6742, 0x683d, 0x54c9, 0x707e,
- 0x5bb0, 0x8f7d, 0x518d, 0x5728, 0x54b1, 0x6512, 0x6682, 0x8d5e,
- 0x8d43, 0x810f, 0x846c, 0x906d, 0x7cdf, 0x51ff, 0x85fb, 0x67a3,
- 0x65e9, 0x6fa1, 0x86a4, 0x8e81, 0x566a, 0x9020, 0x7682, 0x7076,
- 0x71e5, 0x8d23, 0x62e9, 0x5219, 0x6cfd, 0x8d3c, 0x600e, 0x589e,
- 0x618e, 0x66fe, 0x8d60, 0x624e, 0x55b3, 0x6e23, 0x672d, 0x8f67,
- 0x94e1, 0x95f8, 0x7728, 0x6805, 0x69a8, 0x548b, 0x4e4d, 0x70b8,
- 0x8bc8, 0x6458, 0x658b, 0x5b85, 0x7a84, 0x503a, 0x5be8, 0x77bb,
- 0x6be1, 0x8a79, 0x7c98, 0x6cbe, 0x76cf, 0x65a9, 0x8f97, 0x5d2d,
- 0x5c55, 0x8638, 0x6808, 0x5360, 0x6218, 0x7ad9, 0x6e5b, 0x7efd,
- 0x6a1f, 0x7ae0, 0x5f70, 0x6f33, 0x5f20, 0x638c, 0x6da8, 0x6756,
- 0x4e08, 0x5e10, 0x8d26, 0x4ed7, 0x80c0, 0x7634, 0x969c, 0x62db,
- 0x662d, 0x627e, 0x6cbc, 0x8d75, 0x7167, 0x7f69, 0x5146, 0x8087,
- 0x53ec, 0x906e, 0x6298, 0x54f2, 0x86f0, 0x8f99, 0x8005, 0x9517,
- 0x8517, 0x8fd9, 0x6d59, 0x73cd, 0x659f, 0x771f, 0x7504, 0x7827,
- 0x81fb, 0x8d1e, 0x9488, 0x4fa6, 0x6795, 0x75b9, 0x8bca, 0x9707,
- 0x632f, 0x9547, 0x9635, 0x84b8, 0x6323, 0x7741, 0x5f81, 0x72f0,
- 0x4e89, 0x6014, 0x6574, 0x62ef, 0x6b63, 0x653f, 0x5e27, 0x75c7,
- 0x90d1, 0x8bc1, 0x829d, 0x679d, 0x652f, 0x5431, 0x8718, 0x77e5,
- 0x80a2, 0x8102, 0x6c41, 0x4e4b, 0x7ec7, 0x804c, 0x76f4, 0x690d,
- 0x6b96, 0x6267, 0x503c, 0x4f84, 0x5740, 0x6307, 0x6b62, 0x8dbe,
- 0x53ea, 0x65e8, 0x7eb8, 0x5fd7, 0x631a, 0x63b7, 0x81f3, 0x81f4,
- 0x7f6e, 0x5e1c, 0x5cd9, 0x5236, 0x667a, 0x79e9, 0x7a1a, 0x8d28,
- 0x7099, 0x75d4, 0x6ede, 0x6cbb, 0x7a92, 0x4e2d, 0x76c5, 0x5fe0,
- 0x949f, 0x8877, 0x7ec8, 0x79cd, 0x80bf, 0x91cd, 0x4ef2, 0x4f17,
- 0x821f, 0x5468, 0x5dde, 0x6d32, 0x8bcc, 0x7ca5, 0x8f74, 0x8098,
- 0x5e1a, 0x5492, 0x76b1, 0x5b99, 0x663c, 0x9aa4, 0x73e0, 0x682a,
- 0x86db, 0x6731, 0x732a, 0x8bf8, 0x8bdb, 0x9010, 0x7af9, 0x70db,
- 0x716e, 0x62c4, 0x77a9, 0x5631, 0x4e3b, 0x8457, 0x67f1, 0x52a9,
- 0x86c0, 0x8d2e, 0x94f8, 0x7b51, 0x4f4f, 0x6ce8, 0x795d, 0x9a7b,
- 0x6293, 0x722a, 0x62fd, 0x4e13, 0x7816, 0x8f6c, 0x64b0, 0x8d5a,
- 0x7bc6, 0x6869, 0x5e84, 0x88c5, 0x5986, 0x649e, 0x58ee, 0x72b6,
- 0x690e, 0x9525, 0x8ffd, 0x8d58, 0x5760, 0x7f00, 0x8c06, 0x51c6,
- 0x6349, 0x62d9, 0x5353, 0x684c, 0x7422, 0x8301, 0x914c, 0x5544,
- 0x7740, 0x707c, 0x6d4a, 0x5179, 0x54a8, 0x8d44, 0x59ff, 0x6ecb,
- 0x6dc4, 0x5b5c, 0x7d2b, 0x4ed4, 0x7c7d, 0x6ed3, 0x5b50, 0x81ea,
- 0x6e0d, 0x5b57, 0x9b03, 0x68d5, 0x8e2a, 0x5b97, 0x7efc, 0x603b,
- 0x7eb5, 0x90b9, 0x8d70, 0x594f, 0x63cd, 0x79df, 0x8db3, 0x5352,
- 0x65cf, 0x7956, 0x8bc5, 0x963b, 0x7ec4, 0x94bb, 0x7e82, 0x5634,
- 0x9189, 0x6700, 0x7f6a, 0x5c0a, 0x9075, 0x6628, 0x5de6, 0x4f50,
- 0x67de, 0x505a, 0x4f5c, 0x5750, 0x5ea7, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x4e8d, 0x4e0c, 0x5140, 0x4e10, 0x5eff, 0x5345,
- 0x4e15, 0x4e98, 0x4e1e, 0x9b32, 0x5b6c, 0x5669, 0x4e28, 0x79ba,
- 0x4e3f, 0x5315, 0x4e47, 0x592d, 0x723b, 0x536e, 0x6c10, 0x56df,
- 0x80e4, 0x9997, 0x6bd3, 0x777e, 0x9f17, 0x4e36, 0x4e9f, 0x9f10,
- 0x4e5c, 0x4e69, 0x4e93, 0x8288, 0x5b5b, 0x556c, 0x560f, 0x4ec4,
- 0x538d, 0x539d, 0x53a3, 0x53a5, 0x53ae, 0x9765, 0x8d5d, 0x531a,
- 0x53f5, 0x5326, 0x532e, 0x533e, 0x8d5c, 0x5366, 0x5363, 0x5202,
- 0x5208, 0x520e, 0x522d, 0x5233, 0x523f, 0x5240, 0x524c, 0x525e,
- 0x5261, 0x525c, 0x84af, 0x527d, 0x5282, 0x5281, 0x5290, 0x5293,
- 0x5182, 0x7f54, 0x4ebb, 0x4ec3, 0x4ec9, 0x4ec2, 0x4ee8, 0x4ee1,
- 0x4eeb, 0x4ede, 0x4f1b, 0x4ef3, 0x4f22, 0x4f64, 0x4ef5, 0x4f25,
- 0x4f27, 0x4f09, 0x4f2b, 0x4f5e, 0x4f67, 0x6538, 0x4f5a, 0x4f5d,
- 0x4f5f, 0x4f57, 0x4f32, 0x4f3d, 0x4f76, 0x4f74, 0x4f91, 0x4f89,
- 0x4f83, 0x4f8f, 0x4f7e, 0x4f7b, 0x4faa, 0x4f7c, 0x4fac, 0x4f94,
- 0x4fe6, 0x4fe8, 0x4fea, 0x4fc5, 0x4fda, 0x4fe3, 0x4fdc, 0x4fd1,
- 0x4fdf, 0x4ff8, 0x5029, 0x504c, 0x4ff3, 0x502c, 0x500f, 0x502e,
- 0x502d, 0x4ffe, 0x501c, 0x500c, 0x5025, 0x5028, 0x507e, 0x5043,
- 0x5055, 0x5048, 0x504e, 0x506c, 0x507b, 0x50a5, 0x50a7, 0x50a9,
- 0x50ba, 0x50d6, 0x5106, 0x50ed, 0x50ec, 0x50e6, 0x50ee, 0x5107,
- 0x510b, 0x4edd, 0x6c3d, 0x4f58, 0x4f65, 0x4fce, 0x9fa0, 0x6c46,
- 0x7c74, 0x516e, 0x5dfd, 0x9ec9, 0x9998, 0x5181, 0x5914, 0x52f9,
- 0x530d, 0x8a07, 0x5310, 0x51eb, 0x5919, 0x5155, 0x4ea0, 0x5156,
- 0x4eb3, 0x886e, 0x88a4, 0x4eb5, 0x8114, 0x88d2, 0x7980, 0x5b34,
- 0x8803, 0x7fb8, 0x51ab, 0x51b1, 0x51bd, 0x51bc, 0x51c7, 0x5196,
- 0x51a2, 0x51a5, 0x8ba0, 0x8ba6, 0x8ba7, 0x8baa, 0x8bb4, 0x8bb5,
- 0x8bb7, 0x8bc2, 0x8bc3, 0x8bcb, 0x8bcf, 0x8bce, 0x8bd2, 0x8bd3,
- 0x8bd4, 0x8bd6, 0x8bd8, 0x8bd9, 0x8bdc, 0x8bdf, 0x8be0, 0x8be4,
- 0x8be8, 0x8be9, 0x8bee, 0x8bf0, 0x8bf3, 0x8bf6, 0x8bf9, 0x8bfc,
- 0x8bff, 0x8c00, 0x8c02, 0x8c04, 0x8c07, 0x8c0c, 0x8c0f, 0x8c11,
- 0x8c12, 0x8c14, 0x8c15, 0x8c16, 0x8c19, 0x8c1b, 0x8c18, 0x8c1d,
- 0x8c1f, 0x8c20, 0x8c21, 0x8c25, 0x8c27, 0x8c2a, 0x8c2b, 0x8c2e,
- 0x8c2f, 0x8c32, 0x8c33, 0x8c35, 0x8c36, 0x5369, 0x537a, 0x961d,
- 0x9622, 0x9621, 0x9631, 0x962a, 0x963d, 0x963c, 0x9642, 0x9649,
- 0x9654, 0x965f, 0x9667, 0x966c, 0x9672, 0x9674, 0x9688, 0x968d,
- 0x9697, 0x96b0, 0x9097, 0x909b, 0x909d, 0x9099, 0x90ac, 0x90a1,
- 0x90b4, 0x90b3, 0x90b6, 0x90ba, 0x90b8, 0x90b0, 0x90cf, 0x90c5,
- 0x90be, 0x90d0, 0x90c4, 0x90c7, 0x90d3, 0x90e6, 0x90e2, 0x90dc,
- 0x90d7, 0x90db, 0x90eb, 0x90ef, 0x90fe, 0x9104, 0x9122, 0x911e,
- 0x9123, 0x9131, 0x912f, 0x9139, 0x9143, 0x9146, 0x520d, 0x5942,
- 0x52a2, 0x52ac, 0x52ad, 0x52be, 0x54ff, 0x52d0, 0x52d6, 0x52f0,
- 0x53df, 0x71ee, 0x77cd, 0x5ef4, 0x51f5, 0x51fc, 0x9b2f, 0x53b6,
- 0x5f01, 0x755a, 0x5def, 0x574c, 0x57a9, 0x57a1, 0x587e, 0x58bc,
- 0x58c5, 0x58d1, 0x5729, 0x572c, 0x572a, 0x5733, 0x5739, 0x572e,
- 0x572f, 0x575c, 0x573b, 0x5742, 0x5769, 0x5785, 0x576b, 0x5786,
- 0x577c, 0x577b, 0x5768, 0x576d, 0x5776, 0x5773, 0x57ad, 0x57a4,
- 0x578c, 0x57b2, 0x57cf, 0x57a7, 0x57b4, 0x5793, 0x57a0, 0x57d5,
- 0x57d8, 0x57da, 0x57d9, 0x57d2, 0x57b8, 0x57f4, 0x57ef, 0x57f8,
- 0x57e4, 0x57dd, 0x580b, 0x580d, 0x57fd, 0x57ed, 0x5800, 0x581e,
- 0x5819, 0x5844, 0x5820, 0x5865, 0x586c, 0x5881, 0x5889, 0x589a,
- 0x5880, 0x99a8, 0x9f19, 0x61ff, 0x8279, 0x827d, 0x827f, 0x828f,
- 0x828a, 0x82a8, 0x8284, 0x828e, 0x8291, 0x8297, 0x8299, 0x82ab,
- 0x82b8, 0x82be, 0x82b0, 0x82c8, 0x82ca, 0x82e3, 0x8298, 0x82b7,
- 0x82ae, 0x82cb, 0x82cc, 0x82c1, 0x82a9, 0x82b4, 0x82a1, 0x82aa,
- 0x829f, 0x82c4, 0x82ce, 0x82a4, 0x82e1, 0x8309, 0x82f7, 0x82e4,
- 0x830f, 0x8307, 0x82dc, 0x82f4, 0x82d2, 0x82d8, 0x830c, 0x82fb,
- 0x82d3, 0x8311, 0x831a, 0x8306, 0x8314, 0x8315, 0x82e0, 0x82d5,
- 0x831c, 0x8351, 0x835b, 0x835c, 0x8308, 0x8392, 0x833c, 0x8334,
- 0x8331, 0x839b, 0x835e, 0x832f, 0x834f, 0x8347, 0x8343, 0x835f,
- 0x8340, 0x8317, 0x8360, 0x832d, 0x833a, 0x8333, 0x8366, 0x8365,
- 0x8368, 0x831b, 0x8369, 0x836c, 0x836a, 0x836d, 0x836e, 0x83b0,
- 0x8378, 0x83b3, 0x83b4, 0x83a0, 0x83aa, 0x8393, 0x839c, 0x8385,
- 0x837c, 0x83b6, 0x83a9, 0x837d, 0x83b8, 0x837b, 0x8398, 0x839e,
- 0x83a8, 0x83ba, 0x83bc, 0x83c1, 0x8401, 0x83e5, 0x83d8, 0x5807,
- 0x8418, 0x840b, 0x83dd, 0x83fd, 0x83d6, 0x841c, 0x8438, 0x8411,
- 0x8406, 0x83d4, 0x83df, 0x840f, 0x8403, 0x83f8, 0x83f9, 0x83ea,
- 0x83c5, 0x83c0, 0x8426, 0x83f0, 0x83e1, 0x845c, 0x8451, 0x845a,
- 0x8459, 0x8473, 0x8487, 0x8488, 0x847a, 0x8489, 0x8478, 0x843c,
- 0x8446, 0x8469, 0x8476, 0x848c, 0x848e, 0x8431, 0x846d, 0x84c1,
- 0x84cd, 0x84d0, 0x84e6, 0x84bd, 0x84d3, 0x84ca, 0x84bf, 0x84ba,
- 0x84e0, 0x84a1, 0x84b9, 0x84b4, 0x8497, 0x84e5, 0x84e3, 0x850c,
- 0x750d, 0x8538, 0x84f0, 0x8539, 0x851f, 0x853a, 0x8556, 0x853b,
- 0x84ff, 0x84fc, 0x8559, 0x8548, 0x8568, 0x8564, 0x855e, 0x857a,
- 0x77a2, 0x8543, 0x8572, 0x857b, 0x85a4, 0x85a8, 0x8587, 0x858f,
- 0x8579, 0x85ae, 0x859c, 0x8585, 0x85b9, 0x85b7, 0x85b0, 0x85d3,
- 0x85c1, 0x85dc, 0x85ff, 0x8627, 0x8605, 0x8629, 0x8616, 0x863c,
- 0x5efe, 0x5f08, 0x593c, 0x5941, 0x8037, 0x5955, 0x595a, 0x5958,
- 0x530f, 0x5c22, 0x5c25, 0x5c2c, 0x5c34, 0x624c, 0x626a, 0x629f,
- 0x62bb, 0x62ca, 0x62da, 0x62d7, 0x62ee, 0x6322, 0x62f6, 0x6339,
- 0x634b, 0x6343, 0x63ad, 0x63f6, 0x6371, 0x637a, 0x638e, 0x63b4,
- 0x636d, 0x63ac, 0x638a, 0x6369, 0x63ae, 0x63bc, 0x63f2, 0x63f8,
- 0x63e0, 0x63ff, 0x63c4, 0x63de, 0x63ce, 0x6452, 0x63c6, 0x63be,
- 0x6445, 0x6441, 0x640b, 0x641b, 0x6420, 0x640c, 0x6426, 0x6421,
- 0x645e, 0x6484, 0x646d, 0x6496, 0x647a, 0x64b7, 0x64b8, 0x6499,
- 0x64ba, 0x64c0, 0x64d0, 0x64d7, 0x64e4, 0x64e2, 0x6509, 0x6525,
- 0x652e, 0x5f0b, 0x5fd2, 0x7519, 0x5f11, 0x535f, 0x53f1, 0x53fd,
- 0x53e9, 0x53e8, 0x53fb, 0x5412, 0x5416, 0x5406, 0x544b, 0x5452,
- 0x5453, 0x5454, 0x5456, 0x5443, 0x5421, 0x5457, 0x5459, 0x5423,
- 0x5432, 0x5482, 0x5494, 0x5477, 0x5471, 0x5464, 0x549a, 0x549b,
- 0x5484, 0x5476, 0x5466, 0x549d, 0x54d0, 0x54ad, 0x54c2, 0x54b4,
- 0x54d2, 0x54a7, 0x54a6, 0x54d3, 0x54d4, 0x5472, 0x54a3, 0x54d5,
- 0x54bb, 0x54bf, 0x54cc, 0x54d9, 0x54da, 0x54dc, 0x54a9, 0x54aa,
- 0x54a4, 0x54dd, 0x54cf, 0x54de, 0x551b, 0x54e7, 0x5520, 0x54fd,
- 0x5514, 0x54f3, 0x5522, 0x5523, 0x550f, 0x5511, 0x5527, 0x552a,
- 0x5567, 0x558f, 0x55b5, 0x5549, 0x556d, 0x5541, 0x5555, 0x553f,
- 0x5550, 0x553c, 0x5537, 0x5556, 0x5575, 0x5576, 0x5577, 0x5533,
- 0x5530, 0x555c, 0x558b, 0x55d2, 0x5583, 0x55b1, 0x55b9, 0x5588,
- 0x5581, 0x559f, 0x557e, 0x55d6, 0x5591, 0x557b, 0x55df, 0x55bd,
- 0x55be, 0x5594, 0x5599, 0x55ea, 0x55f7, 0x55c9, 0x561f, 0x55d1,
- 0x55eb, 0x55ec, 0x55d4, 0x55e6, 0x55dd, 0x55c4, 0x55ef, 0x55e5,
- 0x55f2, 0x55f3, 0x55cc, 0x55cd, 0x55e8, 0x55f5, 0x55e4, 0x8f94,
- 0x561e, 0x5608, 0x560c, 0x5601, 0x5624, 0x5623, 0x55fe, 0x5600,
- 0x5627, 0x562d, 0x5658, 0x5639, 0x5657, 0x562c, 0x564d, 0x5662,
- 0x5659, 0x565c, 0x564c, 0x5654, 0x5686, 0x5664, 0x5671, 0x566b,
- 0x567b, 0x567c, 0x5685, 0x5693, 0x56af, 0x56d4, 0x56d7, 0x56dd,
- 0x56e1, 0x56f5, 0x56eb, 0x56f9, 0x56ff, 0x5704, 0x570a, 0x5709,
- 0x571c, 0x5e0f, 0x5e19, 0x5e14, 0x5e11, 0x5e31, 0x5e3b, 0x5e3c,
- 0x5e37, 0x5e44, 0x5e54, 0x5e5b, 0x5e5e, 0x5e61, 0x5c8c, 0x5c7a,
- 0x5c8d, 0x5c90, 0x5c96, 0x5c88, 0x5c98, 0x5c99, 0x5c91, 0x5c9a,
- 0x5c9c, 0x5cb5, 0x5ca2, 0x5cbd, 0x5cac, 0x5cab, 0x5cb1, 0x5ca3,
- 0x5cc1, 0x5cb7, 0x5cc4, 0x5cd2, 0x5ce4, 0x5ccb, 0x5ce5, 0x5d02,
- 0x5d03, 0x5d27, 0x5d26, 0x5d2e, 0x5d24, 0x5d1e, 0x5d06, 0x5d1b,
- 0x5d58, 0x5d3e, 0x5d34, 0x5d3d, 0x5d6c, 0x5d5b, 0x5d6f, 0x5d5d,
- 0x5d6b, 0x5d4b, 0x5d4a, 0x5d69, 0x5d74, 0x5d82, 0x5d99, 0x5d9d,
- 0x8c73, 0x5db7, 0x5dc5, 0x5f73, 0x5f77, 0x5f82, 0x5f87, 0x5f89,
- 0x5f8c, 0x5f95, 0x5f99, 0x5f9c, 0x5fa8, 0x5fad, 0x5fb5, 0x5fbc,
- 0x8862, 0x5f61, 0x72ad, 0x72b0, 0x72b4, 0x72b7, 0x72b8, 0x72c3,
- 0x72c1, 0x72ce, 0x72cd, 0x72d2, 0x72e8, 0x72ef, 0x72e9, 0x72f2,
- 0x72f4, 0x72f7, 0x7301, 0x72f3, 0x7303, 0x72fa, 0x72fb, 0x7317,
- 0x7313, 0x7321, 0x730a, 0x731e, 0x731d, 0x7315, 0x7322, 0x7339,
- 0x7325, 0x732c, 0x7338, 0x7331, 0x7350, 0x734d, 0x7357, 0x7360,
- 0x736c, 0x736f, 0x737e, 0x821b, 0x5925, 0x98e7, 0x5924, 0x5902,
- 0x9963, 0x9967, 0x9968, 0x9969, 0x996a, 0x996b, 0x996c, 0x9974,
- 0x9977, 0x997d, 0x9980, 0x9984, 0x9987, 0x998a, 0x998d, 0x9990,
- 0x9991, 0x9993, 0x9994, 0x9995, 0x5e80, 0x5e91, 0x5e8b, 0x5e96,
- 0x5ea5, 0x5ea0, 0x5eb9, 0x5eb5, 0x5ebe, 0x5eb3, 0x8d53, 0x5ed2,
- 0x5ed1, 0x5edb, 0x5ee8, 0x5eea, 0x81ba, 0x5fc4, 0x5fc9, 0x5fd6,
- 0x5fcf, 0x6003, 0x5fee, 0x6004, 0x5fe1, 0x5fe4, 0x5ffe, 0x6005,
- 0x6006, 0x5fea, 0x5fed, 0x5ff8, 0x6019, 0x6035, 0x6026, 0x601b,
- 0x600f, 0x600d, 0x6029, 0x602b, 0x600a, 0x603f, 0x6021, 0x6078,
- 0x6079, 0x607b, 0x607a, 0x6042, 0x606a, 0x607d, 0x6096, 0x609a,
- 0x60ad, 0x609d, 0x6083, 0x6092, 0x608c, 0x609b, 0x60ec, 0x60bb,
- 0x60b1, 0x60dd, 0x60d8, 0x60c6, 0x60da, 0x60b4, 0x6120, 0x6126,
- 0x6115, 0x6123, 0x60f4, 0x6100, 0x610e, 0x612b, 0x614a, 0x6175,
- 0x61ac, 0x6194, 0x61a7, 0x61b7, 0x61d4, 0x61f5, 0x5fdd, 0x96b3,
- 0x95e9, 0x95eb, 0x95f1, 0x95f3, 0x95f5, 0x95f6, 0x95fc, 0x95fe,
- 0x9603, 0x9604, 0x9606, 0x9608, 0x960a, 0x960b, 0x960c, 0x960d,
- 0x960f, 0x9612, 0x9615, 0x9616, 0x9617, 0x9619, 0x961a, 0x4e2c,
- 0x723f, 0x6215, 0x6c35, 0x6c54, 0x6c5c, 0x6c4a, 0x6ca3, 0x6c85,
- 0x6c90, 0x6c94, 0x6c8c, 0x6c68, 0x6c69, 0x6c74, 0x6c76, 0x6c86,
- 0x6ca9, 0x6cd0, 0x6cd4, 0x6cad, 0x6cf7, 0x6cf8, 0x6cf1, 0x6cd7,
- 0x6cb2, 0x6ce0, 0x6cd6, 0x6cfa, 0x6ceb, 0x6cee, 0x6cb1, 0x6cd3,
- 0x6cef, 0x6cfe, 0x6d39, 0x6d27, 0x6d0c, 0x6d43, 0x6d48, 0x6d07,
- 0x6d04, 0x6d19, 0x6d0e, 0x6d2b, 0x6d4d, 0x6d2e, 0x6d35, 0x6d1a,
- 0x6d4f, 0x6d52, 0x6d54, 0x6d33, 0x6d91, 0x6d6f, 0x6d9e, 0x6da0,
- 0x6d5e, 0x6d93, 0x6d94, 0x6d5c, 0x6d60, 0x6d7c, 0x6d63, 0x6e1a,
- 0x6dc7, 0x6dc5, 0x6dde, 0x6e0e, 0x6dbf, 0x6de0, 0x6e11, 0x6de6,
- 0x6ddd, 0x6dd9, 0x6e16, 0x6dab, 0x6e0c, 0x6dae, 0x6e2b, 0x6e6e,
- 0x6e4e, 0x6e6b, 0x6eb2, 0x6e5f, 0x6e86, 0x6e53, 0x6e54, 0x6e32,
- 0x6e25, 0x6e44, 0x6edf, 0x6eb1, 0x6e98, 0x6ee0, 0x6f2d, 0x6ee2,
- 0x6ea5, 0x6ea7, 0x6ebd, 0x6ebb, 0x6eb7, 0x6ed7, 0x6eb4, 0x6ecf,
- 0x6e8f, 0x6ec2, 0x6e9f, 0x6f62, 0x6f46, 0x6f47, 0x6f24, 0x6f15,
- 0x6ef9, 0x6f2f, 0x6f36, 0x6f4b, 0x6f74, 0x6f2a, 0x6f09, 0x6f29,
- 0x6f89, 0x6f8d, 0x6f8c, 0x6f78, 0x6f72, 0x6f7c, 0x6f7a, 0x6fd1,
- 0x6fc9, 0x6fa7, 0x6fb9, 0x6fb6, 0x6fc2, 0x6fe1, 0x6fee, 0x6fde,
- 0x6fe0, 0x6fef, 0x701a, 0x7023, 0x701b, 0x7039, 0x7035, 0x704f,
- 0x705e, 0x5b80, 0x5b84, 0x5b95, 0x5b93, 0x5ba5, 0x5bb8, 0x752f,
- 0x9a9e, 0x6434, 0x5be4, 0x5bee, 0x8930, 0x5bf0, 0x8e47, 0x8b07,
- 0x8fb6, 0x8fd3, 0x8fd5, 0x8fe5, 0x8fee, 0x8fe4, 0x8fe9, 0x8fe6,
- 0x8ff3, 0x8fe8, 0x9005, 0x9004, 0x900b, 0x9026, 0x9011, 0x900d,
- 0x9016, 0x9021, 0x9035, 0x9036, 0x902d, 0x902f, 0x9044, 0x9051,
- 0x9052, 0x9050, 0x9068, 0x9058, 0x9062, 0x905b, 0x66b9, 0x9074,
- 0x907d, 0x9082, 0x9088, 0x9083, 0x908b, 0x5f50, 0x5f57, 0x5f56,
- 0x5f58, 0x5c3b, 0x54ab, 0x5c50, 0x5c59, 0x5b71, 0x5c63, 0x5c66,
- 0x7fbc, 0x5f2a, 0x5f29, 0x5f2d, 0x8274, 0x5f3c, 0x9b3b, 0x5c6e,
- 0x5981, 0x5983, 0x598d, 0x59a9, 0x59aa, 0x59a3, 0x5997, 0x59ca,
- 0x59ab, 0x599e, 0x59a4, 0x59d2, 0x59b2, 0x59af, 0x59d7, 0x59be,
- 0x5a05, 0x5a06, 0x59dd, 0x5a08, 0x59e3, 0x59d8, 0x59f9, 0x5a0c,
- 0x5a09, 0x5a32, 0x5a34, 0x5a11, 0x5a23, 0x5a13, 0x5a40, 0x5a67,
- 0x5a4a, 0x5a55, 0x5a3c, 0x5a62, 0x5a75, 0x80ec, 0x5aaa, 0x5a9b,
- 0x5a77, 0x5a7a, 0x5abe, 0x5aeb, 0x5ab2, 0x5ad2, 0x5ad4, 0x5ab8,
- 0x5ae0, 0x5ae3, 0x5af1, 0x5ad6, 0x5ae6, 0x5ad8, 0x5adc, 0x5b09,
- 0x5b17, 0x5b16, 0x5b32, 0x5b37, 0x5b40, 0x5c15, 0x5c1c, 0x5b5a,
- 0x5b65, 0x5b73, 0x5b51, 0x5b53, 0x5b62, 0x9a75, 0x9a77, 0x9a78,
- 0x9a7a, 0x9a7f, 0x9a7d, 0x9a80, 0x9a81, 0x9a85, 0x9a88, 0x9a8a,
- 0x9a90, 0x9a92, 0x9a93, 0x9a96, 0x9a98, 0x9a9b, 0x9a9c, 0x9a9d,
- 0x9a9f, 0x9aa0, 0x9aa2, 0x9aa3, 0x9aa5, 0x9aa7, 0x7e9f, 0x7ea1,
- 0x7ea3, 0x7ea5, 0x7ea8, 0x7ea9, 0x7ead, 0x7eb0, 0x7ebe, 0x7ec0,
- 0x7ec1, 0x7ec2, 0x7ec9, 0x7ecb, 0x7ecc, 0x7ed0, 0x7ed4, 0x7ed7,
- 0x7edb, 0x7ee0, 0x7ee1, 0x7ee8, 0x7eeb, 0x7eee, 0x7eef, 0x7ef1,
- 0x7ef2, 0x7f0d, 0x7ef6, 0x7efa, 0x7efb, 0x7efe, 0x7f01, 0x7f02,
- 0x7f03, 0x7f07, 0x7f08, 0x7f0b, 0x7f0c, 0x7f0f, 0x7f11, 0x7f12,
- 0x7f17, 0x7f19, 0x7f1c, 0x7f1b, 0x7f1f, 0x7f21, 0x7f22, 0x7f23,
- 0x7f24, 0x7f25, 0x7f26, 0x7f27, 0x7f2a, 0x7f2b, 0x7f2c, 0x7f2d,
- 0x7f2f, 0x7f30, 0x7f31, 0x7f32, 0x7f33, 0x7f35, 0x5e7a, 0x757f,
- 0x5ddb, 0x753e, 0x9095, 0x738e, 0x7391, 0x73ae, 0x73a2, 0x739f,
- 0x73cf, 0x73c2, 0x73d1, 0x73b7, 0x73b3, 0x73c0, 0x73c9, 0x73c8,
- 0x73e5, 0x73d9, 0x987c, 0x740a, 0x73e9, 0x73e7, 0x73de, 0x73ba,
- 0x73f2, 0x740f, 0x742a, 0x745b, 0x7426, 0x7425, 0x7428, 0x7430,
- 0x742e, 0x742c, 0x741b, 0x741a, 0x7441, 0x745c, 0x7457, 0x7455,
- 0x7459, 0x7477, 0x746d, 0x747e, 0x749c, 0x748e, 0x7480, 0x7481,
- 0x7487, 0x748b, 0x749e, 0x74a8, 0x74a9, 0x7490, 0x74a7, 0x74d2,
- 0x74ba, 0x97ea, 0x97eb, 0x97ec, 0x674c, 0x6753, 0x675e, 0x6748,
- 0x6769, 0x67a5, 0x6787, 0x676a, 0x6773, 0x6798, 0x67a7, 0x6775,
- 0x67a8, 0x679e, 0x67ad, 0x678b, 0x6777, 0x677c, 0x67f0, 0x6809,
- 0x67d8, 0x680a, 0x67e9, 0x67b0, 0x680c, 0x67d9, 0x67b5, 0x67da,
- 0x67b3, 0x67dd, 0x6800, 0x67c3, 0x67b8, 0x67e2, 0x680e, 0x67c1,
- 0x67fd, 0x6832, 0x6833, 0x6860, 0x6861, 0x684e, 0x6862, 0x6844,
- 0x6864, 0x6883, 0x681d, 0x6855, 0x6866, 0x6841, 0x6867, 0x6840,
- 0x683e, 0x684a, 0x6849, 0x6829, 0x68b5, 0x688f, 0x6874, 0x6877,
- 0x6893, 0x686b, 0x68c2, 0x696e, 0x68fc, 0x691f, 0x6920, 0x68f9,
- 0x6924, 0x68f0, 0x690b, 0x6901, 0x6957, 0x68e3, 0x6910, 0x6971,
- 0x6939, 0x6960, 0x6942, 0x695d, 0x6984, 0x696b, 0x6980, 0x6998,
- 0x6978, 0x6934, 0x69cc, 0x6987, 0x6988, 0x69ce, 0x6989, 0x6966,
- 0x6963, 0x6979, 0x699b, 0x69a7, 0x69bb, 0x69ab, 0x69ad, 0x69d4,
- 0x69b1, 0x69c1, 0x69ca, 0x69df, 0x6995, 0x69e0, 0x698d, 0x69ff,
- 0x6a2f, 0x69ed, 0x6a17, 0x6a18, 0x6a65, 0x69f2, 0x6a44, 0x6a3e,
- 0x6aa0, 0x6a50, 0x6a5b, 0x6a35, 0x6a8e, 0x6a79, 0x6a3d, 0x6a28,
- 0x6a58, 0x6a7c, 0x6a91, 0x6a90, 0x6aa9, 0x6a97, 0x6aab, 0x7337,
- 0x7352, 0x6b81, 0x6b82, 0x6b87, 0x6b84, 0x6b92, 0x6b93, 0x6b8d,
- 0x6b9a, 0x6b9b, 0x6ba1, 0x6baa, 0x8f6b, 0x8f6d, 0x8f71, 0x8f72,
- 0x8f73, 0x8f75, 0x8f76, 0x8f78, 0x8f77, 0x8f79, 0x8f7a, 0x8f7c,
- 0x8f7e, 0x8f81, 0x8f82, 0x8f84, 0x8f87, 0x8f8b, 0x8f8d, 0x8f8e,
- 0x8f8f, 0x8f98, 0x8f9a, 0x8ece, 0x620b, 0x6217, 0x621b, 0x621f,
- 0x6222, 0x6221, 0x6225, 0x6224, 0x622c, 0x81e7, 0x74ef, 0x74f4,
- 0x74ff, 0x750f, 0x7511, 0x7513, 0x6534, 0x65ee, 0x65ef, 0x65f0,
- 0x660a, 0x6619, 0x6772, 0x6603, 0x6615, 0x6600, 0x7085, 0x66f7,
- 0x661d, 0x6634, 0x6631, 0x6636, 0x6635, 0x8006, 0x665f, 0x6654,
- 0x6641, 0x664f, 0x6656, 0x6661, 0x6657, 0x6677, 0x6684, 0x668c,
- 0x66a7, 0x669d, 0x66be, 0x66db, 0x66dc, 0x66e6, 0x66e9, 0x8d32,
- 0x8d33, 0x8d36, 0x8d3b, 0x8d3d, 0x8d40, 0x8d45, 0x8d46, 0x8d48,
- 0x8d49, 0x8d47, 0x8d4d, 0x8d55, 0x8d59, 0x89c7, 0x89ca, 0x89cb,
- 0x89cc, 0x89ce, 0x89cf, 0x89d0, 0x89d1, 0x726e, 0x729f, 0x725d,
- 0x7266, 0x726f, 0x727e, 0x727f, 0x7284, 0x728b, 0x728d, 0x728f,
- 0x7292, 0x6308, 0x6332, 0x63b0, 0x643f, 0x64d8, 0x8004, 0x6bea,
- 0x6bf3, 0x6bfd, 0x6bf5, 0x6bf9, 0x6c05, 0x6c07, 0x6c06, 0x6c0d,
- 0x6c15, 0x6c18, 0x6c19, 0x6c1a, 0x6c21, 0x6c29, 0x6c24, 0x6c2a,
- 0x6c32, 0x6535, 0x6555, 0x656b, 0x724d, 0x7252, 0x7256, 0x7230,
- 0x8662, 0x5216, 0x809f, 0x809c, 0x8093, 0x80bc, 0x670a, 0x80bd,
- 0x80b1, 0x80ab, 0x80ad, 0x80b4, 0x80b7, 0x80e7, 0x80e8, 0x80e9,
- 0x80ea, 0x80db, 0x80c2, 0x80c4, 0x80d9, 0x80cd, 0x80d7, 0x6710,
- 0x80dd, 0x80eb, 0x80f1, 0x80f4, 0x80ed, 0x810d, 0x810e, 0x80f2,
- 0x80fc, 0x6715, 0x8112, 0x8c5a, 0x8136, 0x811e, 0x812c, 0x8118,
- 0x8132, 0x8148, 0x814c, 0x8153, 0x8174, 0x8159, 0x815a, 0x8171,
- 0x8160, 0x8169, 0x817c, 0x817d, 0x816d, 0x8167, 0x584d, 0x5ab5,
- 0x8188, 0x8182, 0x8191, 0x6ed5, 0x81a3, 0x81aa, 0x81cc, 0x6726,
- 0x81ca, 0x81bb, 0x81c1, 0x81a6, 0x6b24, 0x6b37, 0x6b39, 0x6b43,
- 0x6b46, 0x6b59, 0x98d1, 0x98d2, 0x98d3, 0x98d5, 0x98d9, 0x98da,
- 0x6bb3, 0x5f40, 0x6bc2, 0x89f3, 0x6590, 0x9f51, 0x6593, 0x65bc,
- 0x65c6, 0x65c4, 0x65c3, 0x65cc, 0x65ce, 0x65d2, 0x65d6, 0x7080,
- 0x709c, 0x7096, 0x709d, 0x70bb, 0x70c0, 0x70b7, 0x70ab, 0x70b1,
- 0x70e8, 0x70ca, 0x7110, 0x7113, 0x7116, 0x712f, 0x7131, 0x7173,
- 0x715c, 0x7168, 0x7145, 0x7172, 0x714a, 0x7178, 0x717a, 0x7198,
- 0x71b3, 0x71b5, 0x71a8, 0x71a0, 0x71e0, 0x71d4, 0x71e7, 0x71f9,
- 0x721d, 0x7228, 0x706c, 0x7118, 0x7166, 0x71b9, 0x623e, 0x623d,
- 0x6243, 0x6248, 0x6249, 0x793b, 0x7940, 0x7946, 0x7949, 0x795b,
- 0x795c, 0x7953, 0x795a, 0x7962, 0x7957, 0x7960, 0x796f, 0x7967,
- 0x797a, 0x7985, 0x798a, 0x799a, 0x79a7, 0x79b3, 0x5fd1, 0x5fd0,
- 0x603c, 0x605d, 0x605a, 0x6067, 0x6041, 0x6059, 0x6063, 0x60ab,
- 0x6106, 0x610d, 0x615d, 0x61a9, 0x619d, 0x61cb, 0x61d1, 0x6206,
- 0x8080, 0x807f, 0x6c93, 0x6cf6, 0x6dfc, 0x77f6, 0x77f8, 0x7800,
- 0x7809, 0x7817, 0x7818, 0x7811, 0x65ab, 0x782d, 0x781c, 0x781d,
- 0x7839, 0x783a, 0x783b, 0x781f, 0x783c, 0x7825, 0x782c, 0x7823,
- 0x7829, 0x784e, 0x786d, 0x7856, 0x7857, 0x7826, 0x7850, 0x7847,
- 0x784c, 0x786a, 0x789b, 0x7893, 0x789a, 0x7887, 0x789c, 0x78a1,
- 0x78a3, 0x78b2, 0x78b9, 0x78a5, 0x78d4, 0x78d9, 0x78c9, 0x78ec,
- 0x78f2, 0x7905, 0x78f4, 0x7913, 0x7924, 0x791e, 0x7934, 0x9f9b,
- 0x9ef9, 0x9efb, 0x9efc, 0x76f1, 0x7704, 0x770d, 0x76f9, 0x7707,
- 0x7708, 0x771a, 0x7722, 0x7719, 0x772d, 0x7726, 0x7735, 0x7738,
- 0x7750, 0x7751, 0x7747, 0x7743, 0x775a, 0x7768, 0x7762, 0x7765,
- 0x777f, 0x778d, 0x777d, 0x7780, 0x778c, 0x7791, 0x779f, 0x77a0,
- 0x77b0, 0x77b5, 0x77bd, 0x753a, 0x7540, 0x754e, 0x754b, 0x7548,
- 0x755b, 0x7572, 0x7579, 0x7583, 0x7f58, 0x7f61, 0x7f5f, 0x8a48,
- 0x7f68, 0x7f74, 0x7f71, 0x7f79, 0x7f81, 0x7f7e, 0x76cd, 0x76e5,
- 0x8832, 0x9485, 0x9486, 0x9487, 0x948b, 0x948a, 0x948c, 0x948d,
- 0x948f, 0x9490, 0x9494, 0x9497, 0x9495, 0x949a, 0x949b, 0x949c,
- 0x94a3, 0x94a4, 0x94ab, 0x94aa, 0x94ad, 0x94ac, 0x94af, 0x94b0,
- 0x94b2, 0x94b4, 0x94b6, 0x94b7, 0x94b8, 0x94b9, 0x94ba, 0x94bc,
- 0x94bd, 0x94bf, 0x94c4, 0x94c8, 0x94c9, 0x94ca, 0x94cb, 0x94cc,
- 0x94cd, 0x94ce, 0x94d0, 0x94d1, 0x94d2, 0x94d5, 0x94d6, 0x94d7,
- 0x94d9, 0x94d8, 0x94db, 0x94de, 0x94df, 0x94e0, 0x94e2, 0x94e4,
- 0x94e5, 0x94e7, 0x94e8, 0x94ea, 0x94e9, 0x94eb, 0x94ee, 0x94ef,
- 0x94f3, 0x94f4, 0x94f5, 0x94f7, 0x94f9, 0x94fc, 0x94fd, 0x94ff,
- 0x9503, 0x9502, 0x9506, 0x9507, 0x9509, 0x950a, 0x950d, 0x950e,
- 0x950f, 0x9512, 0x9513, 0x9514, 0x9515, 0x9516, 0x9518, 0x951b,
- 0x951d, 0x951e, 0x951f, 0x9522, 0x952a, 0x952b, 0x9529, 0x952c,
- 0x9531, 0x9532, 0x9534, 0x9536, 0x9537, 0x9538, 0x953c, 0x953e,
- 0x953f, 0x9542, 0x9535, 0x9544, 0x9545, 0x9546, 0x9549, 0x954c,
- 0x954e, 0x954f, 0x9552, 0x9553, 0x9554, 0x9556, 0x9557, 0x9558,
- 0x9559, 0x955b, 0x955e, 0x955f, 0x955d, 0x9561, 0x9562, 0x9564,
- 0x9565, 0x9566, 0x9567, 0x9568, 0x9569, 0x956a, 0x956b, 0x956c,
- 0x956f, 0x9571, 0x9572, 0x9573, 0x953a, 0x77e7, 0x77ec, 0x96c9,
- 0x79d5, 0x79ed, 0x79e3, 0x79eb, 0x7a06, 0x5d47, 0x7a03, 0x7a02,
- 0x7a1e, 0x7a14, 0x7a39, 0x7a37, 0x7a51, 0x9ecf, 0x99a5, 0x7a70,
- 0x7688, 0x768e, 0x7693, 0x7699, 0x76a4, 0x74de, 0x74e0, 0x752c,
- 0x9e20, 0x9e22, 0x9e28, 0x9e29, 0x9e2a, 0x9e2b, 0x9e2c, 0x9e32,
- 0x9e31, 0x9e36, 0x9e38, 0x9e37, 0x9e39, 0x9e3a, 0x9e3e, 0x9e41,
- 0x9e42, 0x9e44, 0x9e46, 0x9e47, 0x9e48, 0x9e49, 0x9e4b, 0x9e4c,
- 0x9e4e, 0x9e51, 0x9e55, 0x9e57, 0x9e5a, 0x9e5b, 0x9e5c, 0x9e5e,
- 0x9e63, 0x9e66, 0x9e67, 0x9e68, 0x9e69, 0x9e6a, 0x9e6b, 0x9e6c,
- 0x9e71, 0x9e6d, 0x9e73, 0x7592, 0x7594, 0x7596, 0x75a0, 0x759d,
- 0x75ac, 0x75a3, 0x75b3, 0x75b4, 0x75b8, 0x75c4, 0x75b1, 0x75b0,
- 0x75c3, 0x75c2, 0x75d6, 0x75cd, 0x75e3, 0x75e8, 0x75e6, 0x75e4,
- 0x75eb, 0x75e7, 0x7603, 0x75f1, 0x75fc, 0x75ff, 0x7610, 0x7600,
- 0x7605, 0x760c, 0x7617, 0x760a, 0x7625, 0x7618, 0x7615, 0x7619,
- 0x761b, 0x763c, 0x7622, 0x7620, 0x7640, 0x762d, 0x7630, 0x763f,
- 0x7635, 0x7643, 0x763e, 0x7633, 0x764d, 0x765e, 0x7654, 0x765c,
- 0x7656, 0x766b, 0x766f, 0x7fca, 0x7ae6, 0x7a78, 0x7a79, 0x7a80,
- 0x7a86, 0x7a88, 0x7a95, 0x7aa6, 0x7aa0, 0x7aac, 0x7aa8, 0x7aad,
- 0x7ab3, 0x8864, 0x8869, 0x8872, 0x887d, 0x887f, 0x8882, 0x88a2,
- 0x88c6, 0x88b7, 0x88bc, 0x88c9, 0x88e2, 0x88ce, 0x88e3, 0x88e5,
- 0x88f1, 0x891a, 0x88fc, 0x88e8, 0x88fe, 0x88f0, 0x8921, 0x8919,
- 0x8913, 0x891b, 0x890a, 0x8934, 0x892b, 0x8936, 0x8941, 0x8966,
- 0x897b, 0x758b, 0x80e5, 0x76b2, 0x76b4, 0x77dc, 0x8012, 0x8014,
- 0x8016, 0x801c, 0x8020, 0x8022, 0x8025, 0x8026, 0x8027, 0x8029,
- 0x8028, 0x8031, 0x800b, 0x8035, 0x8043, 0x8046, 0x804d, 0x8052,
- 0x8069, 0x8071, 0x8983, 0x9878, 0x9880, 0x9883, 0x9889, 0x988c,
- 0x988d, 0x988f, 0x9894, 0x989a, 0x989b, 0x989e, 0x989f, 0x98a1,
- 0x98a2, 0x98a5, 0x98a6, 0x864d, 0x8654, 0x866c, 0x866e, 0x867f,
- 0x867a, 0x867c, 0x867b, 0x86a8, 0x868d, 0x868b, 0x86ac, 0x869d,
- 0x86a7, 0x86a3, 0x86aa, 0x8693, 0x86a9, 0x86b6, 0x86c4, 0x86b5,
- 0x86ce, 0x86b0, 0x86ba, 0x86b1, 0x86af, 0x86c9, 0x86cf, 0x86b4,
- 0x86e9, 0x86f1, 0x86f2, 0x86ed, 0x86f3, 0x86d0, 0x8713, 0x86de,
- 0x86f4, 0x86df, 0x86d8, 0x86d1, 0x8703, 0x8707, 0x86f8, 0x8708,
- 0x870a, 0x870d, 0x8709, 0x8723, 0x873b, 0x871e, 0x8725, 0x872e,
- 0x871a, 0x873e, 0x8748, 0x8734, 0x8731, 0x8729, 0x8737, 0x873f,
- 0x8782, 0x8722, 0x877d, 0x877e, 0x877b, 0x8760, 0x8770, 0x874c,
- 0x876e, 0x878b, 0x8753, 0x8763, 0x877c, 0x8764, 0x8759, 0x8765,
- 0x8793, 0x87af, 0x87a8, 0x87d2, 0x87c6, 0x8788, 0x8785, 0x87ad,
- 0x8797, 0x8783, 0x87ab, 0x87e5, 0x87ac, 0x87b5, 0x87b3, 0x87cb,
- 0x87d3, 0x87bd, 0x87d1, 0x87c0, 0x87ca, 0x87db, 0x87ea, 0x87e0,
- 0x87ee, 0x8816, 0x8813, 0x87fe, 0x880a, 0x881b, 0x8821, 0x8839,
- 0x883c, 0x7f36, 0x7f42, 0x7f44, 0x7f45, 0x8210, 0x7afa, 0x7afd,
- 0x7b08, 0x7b03, 0x7b04, 0x7b15, 0x7b0a, 0x7b2b, 0x7b0f, 0x7b47,
- 0x7b38, 0x7b2a, 0x7b19, 0x7b2e, 0x7b31, 0x7b20, 0x7b25, 0x7b24,
- 0x7b33, 0x7b3e, 0x7b1e, 0x7b58, 0x7b5a, 0x7b45, 0x7b75, 0x7b4c,
- 0x7b5d, 0x7b60, 0x7b6e, 0x7b7b, 0x7b62, 0x7b72, 0x7b71, 0x7b90,
- 0x7ba6, 0x7ba7, 0x7bb8, 0x7bac, 0x7b9d, 0x7ba8, 0x7b85, 0x7baa,
- 0x7b9c, 0x7ba2, 0x7bab, 0x7bb4, 0x7bd1, 0x7bc1, 0x7bcc, 0x7bdd,
- 0x7bda, 0x7be5, 0x7be6, 0x7bea, 0x7c0c, 0x7bfe, 0x7bfc, 0x7c0f,
- 0x7c16, 0x7c0b, 0x7c1f, 0x7c2a, 0x7c26, 0x7c38, 0x7c41, 0x7c40,
- 0x81fe, 0x8201, 0x8202, 0x8204, 0x81ec, 0x8844, 0x8221, 0x8222,
- 0x8223, 0x822d, 0x822f, 0x8228, 0x822b, 0x8238, 0x823b, 0x8233,
- 0x8234, 0x823e, 0x8244, 0x8249, 0x824b, 0x824f, 0x825a, 0x825f,
- 0x8268, 0x887e, 0x8885, 0x8888, 0x88d8, 0x88df, 0x895e, 0x7f9d,
- 0x7f9f, 0x7fa7, 0x7faf, 0x7fb0, 0x7fb2, 0x7c7c, 0x6549, 0x7c91,
- 0x7c9d, 0x7c9c, 0x7c9e, 0x7ca2, 0x7cb2, 0x7cbc, 0x7cbd, 0x7cc1,
- 0x7cc7, 0x7ccc, 0x7ccd, 0x7cc8, 0x7cc5, 0x7cd7, 0x7ce8, 0x826e,
- 0x66a8, 0x7fbf, 0x7fce, 0x7fd5, 0x7fe5, 0x7fe1, 0x7fe6, 0x7fe9,
- 0x7fee, 0x7ff3, 0x7cf8, 0x7d77, 0x7da6, 0x7dae, 0x7e47, 0x7e9b,
- 0x9eb8, 0x9eb4, 0x8d73, 0x8d84, 0x8d94, 0x8d91, 0x8db1, 0x8d67,
- 0x8d6d, 0x8c47, 0x8c49, 0x914a, 0x9150, 0x914e, 0x914f, 0x9164,
- 0x9162, 0x9161, 0x9170, 0x9169, 0x916f, 0x917d, 0x917e, 0x9172,
- 0x9174, 0x9179, 0x918c, 0x9185, 0x9190, 0x918d, 0x9191, 0x91a2,
- 0x91a3, 0x91aa, 0x91ad, 0x91ae, 0x91af, 0x91b5, 0x91b4, 0x91ba,
- 0x8c55, 0x9e7e, 0x8db8, 0x8deb, 0x8e05, 0x8e59, 0x8e69, 0x8db5,
- 0x8dbf, 0x8dbc, 0x8dba, 0x8dc4, 0x8dd6, 0x8dd7, 0x8dda, 0x8dde,
- 0x8dce, 0x8dcf, 0x8ddb, 0x8dc6, 0x8dec, 0x8df7, 0x8df8, 0x8de3,
- 0x8df9, 0x8dfb, 0x8de4, 0x8e09, 0x8dfd, 0x8e14, 0x8e1d, 0x8e1f,
- 0x8e2c, 0x8e2e, 0x8e23, 0x8e2f, 0x8e3a, 0x8e40, 0x8e39, 0x8e35,
- 0x8e3d, 0x8e31, 0x8e49, 0x8e41, 0x8e42, 0x8e51, 0x8e52, 0x8e4a,
- 0x8e70, 0x8e76, 0x8e7c, 0x8e6f, 0x8e74, 0x8e85, 0x8e8f, 0x8e94,
- 0x8e90, 0x8e9c, 0x8e9e, 0x8c78, 0x8c82, 0x8c8a, 0x8c85, 0x8c98,
- 0x8c94, 0x659b, 0x89d6, 0x89de, 0x89da, 0x89dc, 0x89e5, 0x89eb,
- 0x89ef, 0x8a3e, 0x8b26, 0x9753, 0x96e9, 0x96f3, 0x96ef, 0x9706,
- 0x9701, 0x9708, 0x970f, 0x970e, 0x972a, 0x972d, 0x9730, 0x973e,
- 0x9f80, 0x9f83, 0x9f85, 0x9f86, 0x9f87, 0x9f88, 0x9f89, 0x9f8a,
- 0x9f8c, 0x9efe, 0x9f0b, 0x9f0d, 0x96b9, 0x96bc, 0x96bd, 0x96ce,
- 0x96d2, 0x77bf, 0x96e0, 0x928e, 0x92ae, 0x92c8, 0x933e, 0x936a,
- 0x93ca, 0x938f, 0x943e, 0x946b, 0x9c7f, 0x9c82, 0x9c85, 0x9c86,
- 0x9c87, 0x9c88, 0x7a23, 0x9c8b, 0x9c8e, 0x9c90, 0x9c91, 0x9c92,
- 0x9c94, 0x9c95, 0x9c9a, 0x9c9b, 0x9c9e, 0x9c9f, 0x9ca0, 0x9ca1,
- 0x9ca2, 0x9ca3, 0x9ca5, 0x9ca6, 0x9ca7, 0x9ca8, 0x9ca9, 0x9cab,
- 0x9cad, 0x9cae, 0x9cb0, 0x9cb1, 0x9cb2, 0x9cb3, 0x9cb4, 0x9cb5,
- 0x9cb6, 0x9cb7, 0x9cba, 0x9cbb, 0x9cbc, 0x9cbd, 0x9cc4, 0x9cc5,
- 0x9cc6, 0x9cc7, 0x9cca, 0x9ccb, 0x9ccc, 0x9ccd, 0x9cce, 0x9ccf,
- 0x9cd0, 0x9cd3, 0x9cd4, 0x9cd5, 0x9cd7, 0x9cd8, 0x9cd9, 0x9cdc,
- 0x9cdd, 0x9cdf, 0x9ce2, 0x977c, 0x9785, 0x9791, 0x9792, 0x9794,
- 0x97af, 0x97ab, 0x97a3, 0x97b2, 0x97b4, 0x9ab1, 0x9ab0, 0x9ab7,
- 0x9e58, 0x9ab6, 0x9aba, 0x9abc, 0x9ac1, 0x9ac0, 0x9ac5, 0x9ac2,
- 0x9acb, 0x9acc, 0x9ad1, 0x9b45, 0x9b43, 0x9b47, 0x9b49, 0x9b48,
- 0x9b4d, 0x9b51, 0x98e8, 0x990d, 0x992e, 0x9955, 0x9954, 0x9adf,
- 0x9ae1, 0x9ae6, 0x9aef, 0x9aeb, 0x9afb, 0x9aed, 0x9af9, 0x9b08,
- 0x9b0f, 0x9b13, 0x9b1f, 0x9b23, 0x9ebd, 0x9ebe, 0x7e3b, 0x9e82,
- 0x9e87, 0x9e88, 0x9e8b, 0x9e92, 0x93d6, 0x9e9d, 0x9e9f, 0x9edb,
- 0x9edc, 0x9edd, 0x9ee0, 0x9edf, 0x9ee2, 0x9ee9, 0x9ee7, 0x9ee5,
- 0x9eea, 0x9eef, 0x9f22, 0x9f2c, 0x9f2f, 0x9f39, 0x9f37, 0x9f3d,
- 0x9f3e, 0x9f44, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x9f44, 0xffffffff, 0x00ff, 0x0000,
- 0x0100, 0x0003, 0x2288, 0x804f240, 0x0100, 0x0005, 0x00f8, 0x42130a14
-};
-
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/configure-fontforge.h b/dviware/dvisvgm/libs/ff-woff/fontforge/configure-fontforge.h
deleted file mode 100644
index d5511494c5..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/configure-fontforge.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/* Copyright (C) 2002-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _CONFIG_FONTFORGE_H_
-#define _CONFIG_FONTFORGE_H_
-
-
-/* Apple suggests using a sfnt version of 'true' for fonts designed for use */
-/* only on a mac (windows refuses such fonts). I generally prefer to have a */
-/* font work everywhere, so normally ff produces fonts with version 1.0 */
-/* Set this if you want Apple only fonts (produced when Apple mode is set and*/
-/* Opentype mode is unset in the Generate Fonts-Options dialog). */
-/* */
-/* #define FONTFORGE_CONFIG_APPLE_ONLY_TTF */
-/* */
-
-
-/* Nobody else puts apple unicode encodings into the name table. So I probably*/
-/* shouldn't either. But if someone wants them... */
-/* */
-/* #define FONTFORGE_CONFIG_APPLE_UNICODE_NAMES */
-/* */
-
-
-/* I used to use an approximation method when converting cubic to quadratic */
-/* splines which was non-symmetric. In some cases it produced better results */
-/* than the current approach. This flag restores the old algorithm. */
-/* */
-/* #define FONTFORGE_CONFIG_NON_SYMMETRIC_QUADRATIC_CONVERSION */
-/* */
-
-
-/* Harald Harders would like to be able to generate a PFM file without */
-/* creating a font along with it. I don't see the need for this, but he pro- */
-/* vided a patch. Setting this flag will enable his patch */
-/* */
-/* #define FONTFORGE_CONFIG_WRITE_PFM */
-/* */
-
-
-/* Prior to late Sept of 2003 FontForge converted certain mac feature/settings*/
-/* into opentype-like tags. Some features could be converted directly but for*/
-/* a few I made up tags. Now FontForge is capable of using the mac feature */
-/* settings directly. If you set this flag then when FontForge loads in an sfd*/
-/* file with these non-standard opentype tags, it will convert them into the */
-/* appropriate mac feature/setting combinations. */
-/* */
-/* #define FONTFORGE_CONFIG_CVT_OLD_MAC_FEATURES */
-/* */
-
-
-/* In addition to placing snippets of charstrings into subrs, I tried adding */
-/* whole glyphs (when that was possible). To my surprise, it made things */
-/* worse in one of my test cases, and barely registered an improvement in */
-/* another. So I think we're better off without it. But I don't understand */
-/* why things are worse so I'm leaving the code in to play with */
-/* */
-/* #define FONTFORGE_CONFIG_PS_REFS_GET_SUBRS */
-/* */
-
-
-/* Werner wants to be able to see the raw (unscaled) data for the location of */
-/* points (in the points window of the debugger). I'm not sure that is */
-/* generally a good idea (I think it makes the dlg look unsymetric). */
-/* */
-/* #define FONTFORGE_CONFIG_SHOW_RAW_POINTS */
-/* */
-
-
-/* ************************************************************************** */
-/* **************************** Numeric Settings **************************** */
-/* ************************************************************************** */
-
-
-/* The number of files displayed in the "File->Recent" menu */
-#define RECENT_MAX 10
-
-/* The number of tabs allowed in the outline glyph view of former glyphs */
-#define FORMER_MAX 10
-
-/* The maximum number of layers allowed in a normal font (this includes the */
-/* default foreground and background layers) -- this does not limit type3 */
-/* fonts */
-#define BACK_LAYER_MAX 256
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/cvundoes.c b/dviware/dvisvgm/libs/ff-woff/fontforge/cvundoes.c
deleted file mode 100644
index 1f09c640a1..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/cvundoes.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-#include "psfont.h"
-
-#ifndef HAVE_EXECINFO_H
-// no backtrace available
-#else
- #include <execinfo.h>
-#endif
-
-/* ********************************* Undoes ********************************* */
-
-int getAdobeEnc(const char *name) {
- int i;
-
- for ( i=0; i<256; ++i )
- if ( strcmp(name,AdobeStandardEncoding[i])==0 )
- break;
- if ( i==256 ) i = -1;
-return( i );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/dumppfa.c b/dviware/dvisvgm/libs/ff-woff/fontforge/dumppfa.c
deleted file mode 100644
index 4a58d1ea6d..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/dumppfa.c
+++ /dev/null
@@ -1,131 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include <math.h>
-
-#ifdef __CygWin
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <unistd.h>
-#endif
-
-char *PSDictHasEntry(struct psdict *dict, const char *key) {
- int i;
-
- if ( dict==NULL )
-return( NULL );
-
- for ( i=0; i<dict->next; ++i )
- if ( strcmp(dict->keys[i],key)==0 )
-return( dict->values[i] );
-
-return( NULL );
-}
-
-int PSDictSame(struct psdict *dict1, struct psdict *dict2) {
- int i;
-
- if ( (dict1==NULL || dict1->cnt==0) && (dict2==NULL || dict2->cnt==0))
-return( true );
- if ( dict1==NULL || dict2==NULL || dict1->cnt!=dict2->cnt )
-return( false );
-
- for ( i=0; i<dict1->cnt; ++i ) {
- char *val = PSDictHasEntry(dict2,dict1->keys[i]);
- if ( val==NULL || strcmp(val,dict1->values[i])!=0 )
-return( false );
- }
-return( true );
-}
-
-/* Inside a font, I can't use a <stdin> as a data source. Probably because */
-/* the parser doesn't know what to do with those data when building the char */
-/* proc (as opposed to executing) */
-/* So I can't use run length filters or other compression technique */
-
-static double FindMaxDiffOfBlues(char *pt, double max_diff) {
- char *end;
- double p1, p2;
-
- while ( *pt==' ' || *pt=='[' ) ++pt;
- for (;;) {
- p1 = strtod(pt,&end);
- if ( end==pt )
- break;
- pt = end;
- p2 = strtod(pt,&end);
- if ( end==pt )
- break;
- if ( p2-p1 >max_diff ) max_diff = p2-p1;
- pt = end;
- }
-return( max_diff );
-}
-
-double BlueScaleFigureForced(struct psdict *private_,real bluevalues[], real otherblues[]) {
- double max_diff=0;
- char *pt;
- int i;
-
- pt = PSDictHasEntry(private_,"BlueValues");
- if ( pt!=NULL ) {
- max_diff = FindMaxDiffOfBlues(pt,max_diff);
- } else if ( bluevalues!=NULL ) {
- for ( i=0; i<14 && (bluevalues[i]!=0 || bluevalues[i+1])!=0; i+=2 ) {
- if ( bluevalues[i+1] - bluevalues[i]>=max_diff )
- max_diff = bluevalues[i+1] - bluevalues[i];
- }
- }
- pt = PSDictHasEntry(private_,"FamilyBlues");
- if ( pt!=NULL )
- max_diff = FindMaxDiffOfBlues(pt,max_diff);
-
- pt = PSDictHasEntry(private_,"OtherBlues");
- if ( pt!=NULL )
- max_diff = FindMaxDiffOfBlues(pt,max_diff);
- else if ( otherblues!=NULL ) {
- for ( i=0; i<10 && (otherblues[i]!=0 || otherblues[i+1]!=0); i+=2 ) {
- if ( otherblues[i+1] - otherblues[i]>=max_diff )
- max_diff = otherblues[i+1] - otherblues[i];
- }
- }
- pt = PSDictHasEntry(private_,"FamilyOtherBlues");
- if ( pt!=NULL )
- max_diff = FindMaxDiffOfBlues(pt,max_diff);
- if ( max_diff<=0 )
-return( -1 );
- if ( 1/max_diff > .039625 )
-return( -1 );
-
- return rint(240.0*0.99/max_diff)/240.0;
-}
-
-double BlueScaleFigure(struct psdict *private_,real bluevalues[], real otherblues[]) {
- if ( PSDictHasEntry(private_,"BlueScale")!=NULL )
-return( -1 );
- return BlueScaleFigureForced(private_, bluevalues, otherblues);
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/edgelist.h b/dviware/dvisvgm/libs/ff-woff/fontforge/edgelist.h
deleted file mode 100644
index 99a1cc823b..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/edgelist.h
+++ /dev/null
@@ -1,144 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _EDGELIST_H
-#define _EDGELIST_H
-#include "splinefont.h"
-
-typedef struct hints {
- real base, width;
- real b1, b2, e1, e2;
- real ab, ae;
- unsigned int adjustb: 1;
- unsigned int adjuste: 1;
- struct hints *next;
-} Hints;
-
-/* Instead of y and x coordinates these are based on major and other */
-/* major maybe either x or y depending on what we're interested in */
-/* at the moment, and other will be the other one. Of course it's */
-/* consistant accross the datastructure at any given time */
-typedef struct edge {
- real mmin, mmax; /* relative to es->mmin */
- real t_mmin, t_mmax;
- real tmin, tmax;
- real o_mmin, o_mmax;
- real t_cur, o_cur, m_cur;
- unsigned int up: 1; /* line is directed up in the spline list */
- unsigned int max_adjusted: 1; /* by hstem hints */
- unsigned int min_adjusted: 1;
- Spline *spline; /* spline which generated this segment */
- struct edge *esnext, *aenext;
- struct edge *before, *after;
- int last_opos, last_mpos;
- real oldt; /* only used for FindIntersections of RemoveOverlap */
-} Edge;
-
-typedef struct edgelist {
- Edge **edges;
- int cnt;
- real mmin, mmax;
- real omin, omax;
- real scale;
- int bytes_per_line;
- uint8 *bitmap;
- Edge *last, *splinesetfirst;
- SplineChar *sc;
- int layer;
- char *interesting;
- int major, other;
- unsigned int genmajoredges: 1; /* generate a list of edges parallel to the major axis */
- Edge *majors; /* ordered so that lowest edge is first */
- Edge *majorhold; /* to hold major edges as we pass them and they become useless */
- Hints *hhints, *vhints;
- int is_overlap;
- DBounds bbox; /* Not always set. {m,o}{min,max} a provide scaled bbox, this is in glyph units */
-} EdgeList;
-
-extern void FreeEdges(EdgeList *es);
-
-/* Version which is better for everything other than rasterization */
-/* (I think) */
-typedef struct edgeinfo {
- /* The spline is broken up at all extrema. So... */
- /* The spline between tmin and tmax is monotonic in both coordinates */
- /* If the spline becomes vert/horizontal that will be at one of the */
- /* end points too */
- Spline *spline;
- real tmin, tmax;
- real coordmin[2];
- real coordmax[2];
- unsigned int up: 1;
- unsigned int hv: 1;
- unsigned int hvbottom: 1;
- unsigned int hvtop: 1;
- unsigned int hor: 1;
- unsigned int vert: 1;
- unsigned int almosthor: 1;
- unsigned int almostvert: 1;
- unsigned int horattmin: 1;
- unsigned int horattmax: 1;
- unsigned int vertattmin: 1;
- unsigned int vertattmax: 1;
- unsigned hup: 1;
- unsigned vup: 1;
- real tcur; /* Value of t for current major coord */
- real ocur; /* Value of the other coord for current major coord */
- struct edgeinfo *next;
- struct edgeinfo *ordered;
- struct edgeinfo *aenext;
- struct edgeinfo *splinenext;
- SplineChar *sc;
- int major;
-} EI;
-
-typedef struct eilist {
- EI *edges;
- real coordmin[2];
- real coordmax[2];
- int low, high, cnt;
- EI **ordered;
- char *ends; /* flag to say an edge ends on this line */
- SplineChar *sc;
- int layer;
- int major;
- EI *splinelast, *splinefirst;
- EI **bottoms, **tops; /* Used only be FindNeeded in RemoveOverlap */
- unsigned leavetiny: 1;
- enum overlap_type ot;
-} EIList;
-
-extern void ElFreeEI(EIList *el);
-extern void ELFindEdges(SplineChar *sc, EIList *el);
-extern void ELOrder(EIList *el, int major );
-extern real EITOfNextMajor(EI *e, EIList *el, real sought_m );
-extern int EISameLine(EI *e, EI *n, real i, int major);
-extern int EISkipExtremum(EI *e, real i, int major);
-extern EI *EIActiveEdgesFindStem(EI *apt, real i, int major);
-extern EI *EIActiveListReorder(EI *active,int *change);
-extern EI *EIActiveEdgesRefigure(EIList *el, EI *active,real i,int major,
- int *_change);
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/edgelist2.h b/dviware/dvisvgm/libs/ff-woff/fontforge/edgelist2.h
deleted file mode 100644
index c352288ef6..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/edgelist2.h
+++ /dev/null
@@ -1,87 +0,0 @@
-/* Copyright (C) 2004-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _EDGELIST2_H
-#define _EDGELIST2_H
-#include "splinefont.h"
-
-struct monotonic;
-
-typedef struct mlist {
- Spline *s;
- struct monotonic *m; /* May get slightly munched but will */
- /* always have right spline. we fix when we need it */
- extended t;
- int isend;
- BasePoint unit;
- struct mlist *next;
-} MList;
-
-typedef struct intersection {
- MList *monos;
- BasePoint inter;
- struct intersection *next;
-} Intersection;
-
-typedef struct preintersection {
- BasePoint inter;
- struct monotonic *m1; bigreal t1;
- struct monotonic *m2; bigreal t2;
- unsigned int is_close: 1;
- struct preintersection *next;
-} PreIntersection;
-
-#define FF_RELATIONAL_GEOM
-
-typedef struct monotonic {
- Spline *s;
- extended tstart, tend;
-#ifdef FF_RELATIONAL_GEOM
- extended otstart, otend;
-#endif
- struct monotonic *next, *prev; /* along original contour */
- uint8 xup; /* increasing t => increasing x */
- uint8 yup;
- unsigned int isneeded : 1;
- unsigned int isunneeded : 1;
- unsigned int mutual_collapse : 1;
- unsigned int exclude : 1;
- struct intersection *start;
- struct intersection *end;
- DBounds b;
- extended other, t;
- struct monotonic *linked; /* singly linked list of all monotonic*/
- /* segments, no contour indication */
- double when_set; /* Debugging */
- struct preintersection *pending;
-} Monotonic;
-
-extern void FreeMonotonics(Monotonic *m);
-extern Monotonic *SSsToMContours(SplineSet *spl, enum overlap_type ot);
- /* overlap_type controls whether we look at selected splinesets or all splinesets */
-extern int MonotonicFindAt(Monotonic *ms,int which, extended test, Monotonic **space );
-
-#endif /* _EDGELIST2_H */
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/encoding.c b/dviware/dvisvgm/libs/ff-woff/fontforge/encoding.c
deleted file mode 100644
index 4fe2523715..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/encoding.c
+++ /dev/null
@@ -1,791 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "fontforgevw.h"
-
-#ifdef _MSC_VER
-#define strcasecmp _stricmp
-#define strncasecmp _strnicmp
-#else
-
-#endif
-
-#include "encoding.h"
-#include "psfont.h"
-
-Encoding *default_encoding = NULL;
-
-static int32 tex_base_encoding[] = {
- 0x0000, 0x02d9, 0xfb01, 0xfb02, 0x2044, 0x02dd, 0x0141, 0x0142,
- 0x02db, 0x02da, 0x000a, 0x02d8, 0x2212, 0x000d, 0x017d, 0x017e,
- 0x02c7, 0x0131, 0xf6be, 0xfb00, 0xfb03, 0xfb04, 0x2260, 0x221e,
- 0x2264, 0x2265, 0x2202, 0x2211, 0x220f, 0x03c0, 0x0060, 0x0027,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x2019,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x2018, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x20ac, 0x222b, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
- 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, 0x2126, 0x221a, 0x2248,
- 0x0090, 0x0091, 0x0092, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
- 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, 0x2206, 0x25ca, 0x0178,
- 0x0000, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
- 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x002d, 0x00ae, 0x00af,
- 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
- 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
- 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
- 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
- 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
- 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
- 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
- 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
- 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
-};
-
-static int32 unicode_from_MacSymbol[] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x2200, 0x0023, 0x2203, 0x0025, 0x0026, 0x220d,
- 0x0028, 0x0029, 0x2217, 0x002b, 0x002c, 0x2212, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x2245, 0x0391, 0x0392, 0x03a7, 0x0394, 0x0395, 0x03a6, 0x0393,
- 0x0397, 0x0399, 0x03d1, 0x039a, 0x039b, 0x039c, 0x039d, 0x039f,
- 0x03a0, 0x0398, 0x03a1, 0x03a3, 0x03a4, 0x03a5, 0x03c2, 0x03a9,
- 0x039e, 0x03a8, 0x0396, 0x005b, 0x2234, 0x005d, 0x22a5, 0x005f,
- 0xf8e5, 0x03b1, 0x03b2, 0x03c7, 0x03b4, 0x03b5, 0x03c6, 0x03b3,
- 0x03b7, 0x03b9, 0x03d5, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03bf,
- 0x03c0, 0x03b8, 0x03c1, 0x03c3, 0x03c4, 0x03c5, 0x03d6, 0x03c9,
- 0x03be, 0x03c8, 0x03b6, 0x007b, 0x007c, 0x007d, 0x223c, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x0000, 0x03d2, 0x2032, 0x2264, 0x2044, 0x221e, 0x0192, 0x2663,
- 0x2666, 0x2665, 0x2660, 0x2194, 0x2190, 0x2191, 0x2192, 0x2193,
- 0x00b0, 0x00b1, 0x2033, 0x2265, 0x00d7, 0x221d, 0x2202, 0x2022,
- 0x00f7, 0x2260, 0x2261, 0x2248, 0x2026, 0xf8e6, 0xf8e7, 0x21b5,
- 0x2135, 0x2111, 0x211c, 0x2118, 0x2297, 0x2295, 0x2205, 0x2229,
- 0x222a, 0x2283, 0x2287, 0x2284, 0x2282, 0x2286, 0x2208, 0x2209,
- 0x2220, 0x2207, 0x00ae, 0x00a9, 0x2122, 0x220f, 0x221a, 0x22c5,
- 0x00ac, 0x2227, 0x2228, 0x21d4, 0x21d0, 0x21d1, 0x21d2, 0x21d3,
- 0x22c4, 0x2329, 0xf8e8, 0xf8e9, 0xf8ea, 0x2211, 0xf8eb, 0xf8ec,
- 0xf8ed, 0xf8ee, 0xf8ef, 0xf8f0, 0xf8f1, 0xf8f2, 0xf8f3, 0xf8f4,
- 0xf8ff, 0x232a, 0x222b, 0x2320, 0xf8f5, 0x2321, 0xf8f6, 0xf8f7,
- 0xf8f8, 0xf8f9, 0xf8fa, 0xf8fb, 0xf8fc, 0xf8fd, 0xf8fe, 0x02c7
-};
-
-/* I don't think iconv provides encodings for zapfdingbats nor jis201 */
-/* Perhaps I should list them here for compatability, but I think I'll just */
-/* leave them out. I doubt they get used. */
-static Encoding texbase = { "TeX-Base-Encoding", 256, tex_base_encoding, NULL, NULL, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "", 0, 0, 0, NULL, NULL, NULL, NULL, NULL, 0, 0 };
- Encoding custom = { "Custom", 0, NULL, NULL, &texbase, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, "", 0, 0, 0, NULL, NULL, NULL, NULL, NULL, 0, 0 };
-static Encoding original = { "Original", 0, NULL, NULL, &custom, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, "", 0, 0, 0, NULL, NULL, NULL, NULL, NULL, 0, 0 };
-static Encoding unicodebmp = { "UnicodeBmp", 65536, NULL, NULL, &original, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, "", 0, 0, 0, NULL, NULL, NULL, NULL, NULL, 0, 0 };
-static Encoding unicodefull = { "UnicodeFull", 17*65536, NULL, NULL, &unicodebmp, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, "", 0, 0, 0, NULL, NULL, NULL, NULL, NULL, 0, 0 };
-static Encoding adobestd = { "AdobeStandard", 256, unicode_from_adobestd, (char**)AdobeStandardEncoding, &unicodefull,
- 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "", 0, 0, 0, NULL, NULL, NULL, NULL, NULL, 0, 0 };
-static Encoding symbol = { "Symbol", 256, unicode_from_MacSymbol, NULL, &adobestd, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "", 0, 0, 0, NULL, NULL, NULL, NULL, NULL, 0, 0 };
-
-Encoding *enclist = &symbol;
-
-const char *FindUnicharName(void) {
- /* Iconv and libiconv use different names for UCS2. Just great. Perhaps */
- /* different versions of each use still different names? */
- /* Even worse, both accept UCS-2, but under iconv it means native byte */
- /* ordering and under libiconv it means big-endian */
- iconv_t test;
- static const char *goodname = NULL;
- static const char *names[] = { "UCS-4-INTERNAL", "UCS-4", "UCS4", "ISO-10646-UCS-4", "UTF-32", NULL };
- static const char *namesle[] = { "UCS-4LE", "UTF-32LE", NULL };
- static const char *namesbe[] = { "UCS-4BE", "UTF-32BE", NULL };
- const char **testnames;
- int i;
- union {
- short s;
- char c[2];
- } u;
-
- if ( goodname!=NULL )
-return( goodname );
-
- u.c[0] = 0x1; u.c[1] = 0x2;
- if ( u.s==0x201 ) { /* Little endian */
- testnames = namesle;
- } else {
- testnames = namesbe;
- }
- for ( i=0; testnames[i]!=NULL; ++i ) {
- test = iconv_open(testnames[i],"ISO-8859-1");
- if ( test!=(iconv_t) -1 && test!=NULL ) {
- iconv_close(test);
- goodname = testnames[i];
- break;
- }
- }
-
- if ( goodname==NULL ) {
- for ( i=0; names[i]!=NULL; ++i ) {
- test = iconv_open(names[i],"ISO-8859-1");
- if ( test!=(iconv_t) -1 && test!=NULL ) {
- iconv_close(test);
- goodname = names[i];
- break;
- }
- }
- }
-
- if ( goodname==NULL ) {
- IError( "I can't figure out your version of iconv(). I need a name for the UCS-4 encoding and I can't find one. Reconfigure --without-iconv. Bye.");
- exit( 1 );
- }
-
- test = iconv_open(goodname,"Mac");
- if ( test==(iconv_t) -1 || test==NULL ) {
- IError( "Your version of iconv does not support the \"Mac Roman\" encoding.\nIf this causes problems, reconfigure --without-iconv." );
- } else
- iconv_close(test);
-
- /* I really should check for ISO-2022-JP, KR, CN, and all the other encodings */
- /* I might find in a ttf 'name' table. But those tables take too long to build */
-return( goodname );
-}
-
-static int TryEscape( Encoding *enc, const char *escape_sequence ) {
- char from[20], ucs[20];
- size_t fromlen, tolen;
- ICONV_CONST char *fpt;
- char *upt;
- int i, j, low;
- int esc_len = strlen(escape_sequence);
-
- strcpy(from,escape_sequence);
-
- enc->has_2byte = false;
- low = -1;
- for ( i=0; i<256; ++i ) if ( i!=escape_sequence[0] ) {
- for ( j=0; j<256; ++j ) {
- from[esc_len] = i; from[esc_len+1] = j; from[esc_len+2] = 0;
- fromlen = esc_len+2;
- fpt = from;
- upt = ucs;
- tolen = sizeof(ucs);
- if ( iconv( enc->tounicode , &fpt, &fromlen, &upt, &tolen )!= (size_t) (-1) &&
- upt-ucs==sizeof(unichar_t) /* Exactly one character */ ) {
- if ( low==-1 ) {
- enc->low_page = low = i;
- enc->has_2byte = true;
- }
- enc->high_page = i;
- break;
- }
- }
- }
- if ( enc->low_page==enc->high_page )
- enc->has_2byte = false;
- if ( enc->has_2byte ) {
- strcpy(enc->iso_2022_escape, escape_sequence);
- enc->iso_2022_escape_len = esc_len;
- }
-return( enc->has_2byte );
-}
-
-Encoding *_FindOrMakeEncoding(const char *name,int make_it) {
- Encoding *enc;
- char buffer[20];
- const char *iconv_name;
- Encoding temp;
- uint8 good[256];
- int i, j, any, all;
- char from[8], ucs[20];
- size_t fromlen, tolen;
- ICONV_CONST char *fpt;
- char *upt;
- /* iconv is not case sensitive */
-
- if ( strncasecmp(name,"iso8859_",8)==0 || strncasecmp(name,"koi8_",5)==0 ) {
- /* Fixup for old naming conventions */
- strncpy(buffer,name,sizeof(buffer));
- buffer[sizeof(buffer)-1] = '\0';
- *strchr(buffer,'_') = '-';
- name = buffer;
- } else if ( strcasecmp(name,"iso-8859")==0 ) {
- /* Fixup for old naming conventions */
- strncpy(buffer,name,3);
- strncpy(buffer+3,name+4,sizeof(buffer)-3);
- buffer[sizeof(buffer)-1] = '\0';
- name = buffer;
- } else if ( strcasecmp(name,"isolatin1")==0 ) {
- name = "iso8859-1";
- } else if ( strcasecmp(name,"isocyrillic")==0 ) {
- name = "iso8859-5";
- } else if ( strcasecmp(name,"isoarabic")==0 ) {
- name = "iso8859-6";
- } else if ( strcasecmp(name,"isogreek")==0 ) {
- name = "iso8859-7";
- } else if ( strcasecmp(name,"isohebrew")==0 ) {
- name = "iso8859-8";
- } else if ( strcasecmp(name,"isothai")==0 ) {
- name = "tis-620"; /* TIS doesn't define non-breaking space in 0xA0 */
- } else if ( strcasecmp(name,"latin0")==0 || strcasecmp(name,"latin9")==0 ) {
- name = "iso8859-15"; /* "latin-9" is supported (libiconv bug?) */
- } else if ( strcasecmp(name,"koi8r")==0 ) {
- name = "koi8-r";
- } else if ( strncasecmp(name,"jis201",6)==0 || strncasecmp(name,"jisx0201",8)==0 ) {
- name = "jis_x0201";
- } else if ( strcasecmp(name,"AdobeStandardEncoding")==0 || strcasecmp(name,"Adobe")==0 )
- name = "AdobeStandard";
- for ( enc=enclist; enc!=NULL; enc=enc->next )
- if ( strmatch(name,enc->enc_name)==0 ||
- (enc->iconv_name!=NULL && strmatch(name,enc->iconv_name)==0))
-return( enc );
- if ( strmatch(name,"unicode")==0 || strmatch(name,"iso10646")==0 || strmatch(name,"iso10646-1")==0 )
-return( &unicodebmp );
- if ( strmatch(name,"unicode4")==0 || strmatch(name,"ucs4")==0 )
-return( &unicodefull );
-
- iconv_name = name;
- /* Mac seems to work ok */
- if ( strcasecmp(name,"win")==0 || strcasecmp(name,"ansi")==0 )
- iconv_name = "MS-ANSI"; /* "WINDOWS-1252";*/
- else if ( strncasecmp(name,"jis208",6)==0 || strncasecmp(name,"jisx0208",8)==0 )
- iconv_name = "ISO-2022-JP";
- else if ( strncasecmp(name,"jis212",6)==0 || strncasecmp(name,"jisx0212",8)==0 )
- iconv_name = "ISO-2022-JP-2";
- else if ( strncasecmp(name,"ksc5601",7)==0 )
- iconv_name = "ISO-2022-KR";
- else if ( strcasecmp(name,"gb2312pk")==0 || strcasecmp(name,"gb2312packed")==0 )
- iconv_name = "EUC-CN";
- else if ( strncasecmp(name,"gb2312",6)==0 )
- iconv_name = "ISO-2022-CN";
- else if ( strcasecmp(name,"wansung")==0 )
- iconv_name = "EUC-KR";
- else if ( strcasecmp(name,"EUC-CN")==0 ) {
- iconv_name = name;
- name = "gb2312pk";
- } else if ( strcasecmp(name,"EUC-KR")==0 ) {
- iconv_name = name;
- name = "wansung";
- }
-
-/* Escape sequences: */
-/* ISO-2022-CN: \e $ ) A ^N */
-/* ISO-2022-KR: \e $ ) C ^N */
-/* ISO-2022-JP: \e $ B */
-/* ISO-2022-JP-2: \e $ ( D */
-/* ISO-2022-JP-3: \e $ ( O */ /* Capital "O", not zero */
-/* ISO-2022-CN-EXT: \e $ ) E ^N */ /* Not sure about this, also uses CN escape */
-
- memset(&temp,0,sizeof(temp));
- temp.builtin = true;
- temp.tounicode = iconv_open(FindUnicharName(),iconv_name);
- if ( temp.tounicode==(iconv_t) -1 || temp.tounicode==NULL )
-return( NULL ); /* Iconv doesn't recognize this name */
- temp.fromunicode = iconv_open(iconv_name,FindUnicharName());
- if ( temp.fromunicode==(iconv_t) -1 || temp.fromunicode==NULL ) {
- /* This should never happen, but if it does... */
- iconv_close(temp.tounicode);
-return( NULL );
- }
-
- memset(good,0,sizeof(good));
- any = false; all = true;
- for ( i=1; i<256; ++i ) {
- from[0] = i; from[1] = 0;
- fromlen = 1;
- fpt = from;
- upt = ucs;
- tolen = sizeof(ucs);
- if ( iconv( temp.tounicode , &fpt, &fromlen, &upt, &tolen )!= (size_t) (-1)) {
- good[i] = true;
- any = true;
- } else
- all = false;
- }
- if ( any )
- temp.has_1byte = true;
- if ( all )
- temp.only_1byte = true;
-
- if ( !all ) {
- if ( strstr(iconv_name,"2022")==NULL ) {
- for ( i=temp.has_1byte; i<256; ++i ) if ( !good[i] ) {
- for ( j=0; j<256; ++j ) {
- from[0] = i; from[1] = j; from[2] = 0;
- fromlen = 2;
- fpt = from;
- upt = ucs;
- tolen = sizeof(ucs);
- if ( iconv( temp.tounicode , &fpt, &fromlen, &upt, &tolen )!= (size_t) (-1) &&
- upt-ucs==sizeof(unichar_t) /* Exactly one character */ ) {
- if ( temp.low_page==-1 )
- temp.low_page = i;
- temp.high_page = i;
- temp.has_2byte = true;
- break;
- }
- }
- }
- if ( temp.low_page==temp.high_page ) {
- temp.has_2byte = false;
- temp.low_page = temp.high_page = -1;
- }
- }
- if ( !temp.has_2byte && !good[033]/* escape */ ) {
- if ( strstr(iconv_name,"2022")!=NULL &&
- strstr(iconv_name,"JP3")!=NULL &&
- TryEscape( &temp,"\33$(O" )) {
- ;
- } else if ( strstr(iconv_name,"2022")!=NULL &&
- strstr(iconv_name,"JP2")!=NULL &&
- TryEscape( &temp,"\33$(D" )) {
- ;
- } else if ( strstr(iconv_name,"2022")!=NULL &&
- strstr(iconv_name,"JP")!=NULL &&
- TryEscape( &temp,"\33$B" )) {
- ;
- } else if ( strstr(iconv_name,"2022")!=NULL &&
- strstr(iconv_name,"KR")!=NULL &&
- TryEscape( &temp,"\33$)C\16" )) {
- ;
- } else if ( strstr(iconv_name,"2022")!=NULL &&
- strstr(iconv_name,"CN")!=NULL &&
- TryEscape( &temp,"\33$)A\16" )) {
- ;
- }
- }
- }
- if ( !temp.has_1byte && !temp.has_2byte )
-return( NULL );
- if ( !make_it )
-return( NULL );
-
- enc = chunkalloc(sizeof(Encoding));
- *enc = temp;
- enc->enc_name = copy(name);
- if ( iconv_name!=name )
- enc->iconv_name = copy(iconv_name);
- enc->next = enclist;
- enc->builtin = true;
- enclist = enc;
- if ( enc->has_2byte )
- enc->char_cnt = (enc->high_page<<8) + 256;
- else {
- enc->char_cnt = 256;
- enc->only_1byte = true;
- }
- if ( strstrmatch(iconv_name,"JP")!=NULL ||
- strstrmatch(iconv_name,"sjis")!=NULL ||
- strstrmatch(iconv_name,"cp932")!=NULL )
- enc->is_japanese = true;
- else if ( strstrmatch(iconv_name,"KR")!=NULL )
- enc->is_korean = true;
- else if ( strstrmatch(iconv_name,"CN")!=NULL )
- enc->is_simplechinese = true;
- else if ( strstrmatch(iconv_name,"BIG")!=NULL && strstrmatch(iconv_name,"5")!=NULL )
- enc->is_tradchinese = true;
-
- if ( strstrmatch(name,"ISO8859")!=NULL &&
- strtol(name+strlen(name)-2,NULL,10)>=16 )
- /* Not in our menu, don't hide */;
- else if ( iconv_name!=name || strmatch(name,"mac")==0 || strstrmatch(name,"ISO8859")!=NULL ||
- strmatch(name,"koi8-r")==0 || strmatch(name,"sjis")==0 ||
- strmatch(name,"big5")==0 || strmatch(name,"big5hkscs")==0 )
- enc->hidden = true;
-
-return( enc );
-}
-
-Encoding *FindOrMakeEncoding(const char *name) {
-return( _FindOrMakeEncoding(name,true));
-}
-
-/* Plugin API */
-
-void EncodingFree(Encoding *item) {
- int i;
-
- if ( item==NULL )
- return;
-
- free(item->enc_name);
- if ( item->psnames!=NULL ) {
- for ( i=0; i<item->char_cnt; ++i )
- free(item->psnames[i]);
- free(item->psnames);
- }
- free(item->unicode);
- free(item);
-}
-
-/* ************************************************************************** */
-/* ****************************** CID Encodings ***************************** */
-/* ************************************************************************** */
-
-int CIDFromName(char *name,SplineFont *cidmaster) {
- /* We've had various conventions for encoding a cid inside a name */
- /* I'm primarily interested in this when the name is something like */
- /* Japan1.504.vert */
- /* which tells me that the current glyph is the rotated version of */
- /* cid 504 */
- /* Other convention "cid-504.vert" */
- int len = strlen( cidmaster->ordering );
- int cid;
- char *end;
-
- if ( strncmp(name,cidmaster->ordering,len)==0 ) {
- if ( name[len]=='.' ) ++len;
- } else if ( strncmp(name,"cid-",4)==0 ) {
- len = 4;
- } else
- len = 0;
- cid = strtol(name+len,&end,10);
- if ( end==name+len )
-return( -1 );
- if ( *end!='.' && *end!='\0' )
-return( -1 );
-
-return ( cid );
-}
-
-enum cmaptype { cmt_out=-1, cmt_coderange, cmt_notdefs, cmt_cid, cmt_max };
-struct coderange { uint32 first, last, cid; };
-
-/* ************************** Reencoding routines ************************** */
-
-EncMap *EncMapFromEncoding(SplineFont *sf,Encoding *enc) {
- int i,j, extras, found, base, unmax;
- int32 *encoded, *unencoded;
- EncMap *map;
- struct altuni *altuni;
- SplineChar *sc;
-
- if ( enc==NULL )
-return( NULL );
-
- base = enc->char_cnt;
- if ( enc->is_original )
- base = 0;
- else if ( enc->char_cnt<=256 )
- base = 256;
- else if ( enc->char_cnt<=0x10000 )
- base = 0x10000;
- encoded = malloc(base*sizeof(int32));
- memset(encoded,-1,base*sizeof(int32));
- unencoded = malloc(sf->glyphcnt*sizeof(int32));
- unmax = sf->glyphcnt;
-
- for ( i=extras=0; i<sf->glyphcnt; ++i ) if ( (sc=sf->glyphs[i])!=NULL ) {
- found = false;
- if ( enc->psnames!=NULL ) {
- for ( j=enc->char_cnt-1; j>=0; --j ) {
- if ( enc->psnames[j]!=NULL &&
- strcmp(enc->psnames[j],sc->name)==0 ) {
- found = true;
- encoded[j] = i;
- }
- }
- }
- if ( !found ) {
- if ( sc->unicodeenc!=-1 &&
- sc->unicodeenc < (int)unicode4_size &&
- (j = EncFromUni(sc->unicodeenc,enc))!= -1 )
- encoded[j] = i;
- else {
- /* I don't think extras can surpass unmax now, but it doesn't */
- /* hurt to leave the code (it's from when we encoded duplicates see below) */
- if ( extras>=unmax ) unencoded = realloc(unencoded,(unmax+=300)*sizeof(int32));
- unencoded[extras++] = i;
- }
- for ( altuni=sc->altuni; altuni!=NULL; altuni=altuni->next ) {
- if ( altuni->unienc!=-1 &&
- (uint32)altuni->unienc<unicode4_size &&
- altuni->vs==-1 &&
- altuni->fid==0 &&
- (j = EncFromUni(altuni->unienc,enc))!= -1 )
- encoded[j] = i;
- /* I used to have code here to add these unencoded duplicates */
- /* but I don't really see any reason to do so. The main unicode */
- /* will occur, and any encoded duplicates so the glyph won't */
- /* vanish */
- }
- }
- }
-
- /* Some glyphs have both a pua encoding and an encoding in a non-bmp */
- /* plane. Big5HK does and the AMS glyphs do */
- if ( enc->is_unicodefull && (sf->uni_interp == ui_trad_chinese ||
- sf->uni_interp == ui_ams )) {
- extern const int cns14pua[], amspua[];
- const int *pua = sf->uni_interp == ui_ams? amspua : cns14pua;
- for ( i=0xe000; i<0xf8ff; ++i ) {
- if ( pua[i-0xe000]!=0 )
- encoded[pua[i-0xe000]] = encoded[i];
- }
- }
-
- if ( enc->psnames != NULL ) {
- /* Names are more important than unicode code points for some encodings */
- /* AdobeStandard for instance which won't work if you have a glyph */
- /* named "f_i" (must be "fi") even though the code point is correct */
- /* The code above would match f_i where AS requires fi, so force the */
- /* names to be correct. */
- for ( j=0; j<enc->char_cnt; ++j ) {
- if ( encoded[j]!=-1 && enc->psnames[j]!=NULL &&
- strcmp(sf->glyphs[encoded[j]]->name,enc->psnames[j])!=0 ) {
- free(sf->glyphs[encoded[j]]->name);
- sf->glyphs[encoded[j]]->name = copy(enc->psnames[j]);
- }
- }
- }
-
- map = chunkalloc(sizeof(EncMap));
- map->enccount = map->encmax = base + extras;
- map->map = malloc(map->enccount*sizeof(int32));
- memcpy(map->map,encoded,base*sizeof(int32));
- memcpy(map->map+base,unencoded,extras*sizeof(int32));
- map->backmax = sf->glyphcnt;
- map->backmap = malloc(sf->glyphcnt*sizeof(int32));
- memset(map->backmap,-1,sf->glyphcnt*sizeof(int32)); /* Just in case there are some unencoded glyphs (duplicates perhaps) */
- for ( i = map->enccount-1; i>=0; --i ) if ( map->map[i]!=-1 )
- map->backmap[map->map[i]] = i;
- map->enc = enc;
-
- free(encoded);
- free(unencoded);
-
-return( map );
-}
-
-static SplineChar *SplineCharMatch(SplineFont *parent,SplineChar *sc) {
- SplineChar *scnew = SFSplineCharCreate(parent);
-
- scnew->parent = parent;
- scnew->orig_pos = sc->orig_pos;
- scnew->name = copy(sc->name);
- scnew->unicodeenc = sc->unicodeenc;
- scnew->width = sc->width;
- scnew->vwidth = sc->vwidth;
- scnew->widthset = true;
-return( scnew );
-}
-
-void SFMatchGlyphs(SplineFont *sf,SplineFont *target,int addempties) {
- /* reorder sf so that its glyphs array is the same as that in target */
- int i, j, cnt, cnt2;
- SplineChar **glyphs;
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL )
- sf->glyphs[i]->ticked = false;
- if (( cnt = target->glyphcnt )<sf->glyphcnt ) cnt = sf->glyphcnt;
- glyphs = calloc(cnt,sizeof(SplineChar *));
- for ( i=0; i<target->glyphcnt; ++i ) if ( target->glyphs[i]!=NULL ) {
- SplineChar *sc = SFGetChar(sf,target->glyphs[i]->unicodeenc,target->glyphs[i]->name );
- if ( sc==NULL && addempties )
- sc = SplineCharMatch(sf,target->glyphs[i]);
- if ( sc!=NULL ) {
- glyphs[i] = sc;
- sc->ticked = true;
- }
- }
- for ( i=cnt2=0; i<sf->glyphcnt; ++i )
- if ( sf->glyphs[i]!=NULL && !sf->glyphs[i]->ticked )
- ++cnt2;
- if ( target->glyphcnt+cnt2>cnt ) {
- glyphs = realloc(glyphs,(target->glyphcnt+cnt2)*sizeof(SplineChar *));
- memset(glyphs+cnt,0,(target->glyphcnt+cnt2-cnt)*sizeof(SplineChar *));
- cnt = target->glyphcnt+cnt2;
- }
- j = target->glyphcnt;
- for ( i=0; i<sf->glyphcnt; ++i )
- if ( sf->glyphs[i]!=NULL && !sf->glyphs[i]->ticked )
- glyphs[j++] = sf->glyphs[i];
- free(sf->glyphs);
- sf->glyphs = glyphs;
- sf->glyphcnt = sf->glyphmax = cnt;
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL )
- sf->glyphs[i]->orig_pos = i;
-}
-
-void MMMatchGlyphs(MMSet *mm) {
- /* reorder all instances so that they have the same orig_pos */
- int i, j, index, lasthole;
- SplineFont *sf, *base = NULL;
- SplineChar *sc, *scnew, *sc2;
-
- for ( i = 0; i<mm->instance_count; ++i ) if ( mm->instances[i]!=NULL ) {
- base = mm->instances[i];
- break;
- }
- if ( base==NULL )
-return;
-
- /* First build up an ordering that uses all glyphs found in any of the */
- /* sub-fonts, "base" will be the start of it. We will add glyphs to */
- /* "base" as needed */
- lasthole = -1;
- for ( i = 0; i<mm->instance_count; ++i ) if ( (sf=mm->instances[i])!=NULL && sf!=NULL ) {
- for ( j=0; j<sf->glyphcnt; ++j ) if ( (sc=sf->glyphs[j])!=NULL ) {
- if ( j<base->glyphcnt && base->glyphs[j]!=NULL &&
- base->glyphs[j]->unicodeenc==sc->unicodeenc &&
- strcmp(base->glyphs[j]->name,sc->name)==0 )
- continue; /* It's good, and in the same place */
- else if ( (sc2=SFGetChar(base,sc->unicodeenc,sc->name))!=NULL &&
- sc2->unicodeenc==sc->unicodeenc &&
- strcmp(sc2->name,sc->name)==0 )
- continue; /* Well, it's in there somewhere */
- else {
- /* We need to add it */
- if ( j<base->glyphcnt && base->glyphs[j]==NULL )
- index = j;
- else {
- for ( ++lasthole ; lasthole<base->glyphcnt && base->glyphs[lasthole]!=NULL; ++lasthole );
- index = lasthole;
- if ( lasthole>=base->glyphmax )
- base->glyphs = realloc(base->glyphs,(base->glyphmax+=20)*sizeof(SplineChar *));
- if ( lasthole>=base->glyphcnt )
- base->glyphcnt = lasthole+1;
- }
- base->glyphs[index] = scnew = SplineCharMatch(base,sc);
- scnew->orig_pos = index;
- }
- }
- }
-
- /* Now force all other instances to match */
- for ( i = 0; i<mm->instance_count; ++i ) if ( (sf=mm->instances[i])!=NULL && sf!=base )
- SFMatchGlyphs(sf,base,true);
- if ( mm->normal!=NULL )
- SFMatchGlyphs(mm->normal,base,true);
-}
-
-int32 UniFromEnc(int enc, Encoding *encname) {
- char from[20];
- unichar_t to[20];
- ICONV_CONST char *fpt;
- char *tpt;
- size_t fromlen, tolen;
-
- if ( encname->is_custom || encname->is_original )
-return( -1 );
- if ( enc>=encname->char_cnt )
-return( -1 );
- if ( encname->is_unicodebmp || encname->is_unicodefull )
-return( enc );
- if ( encname->unicode!=NULL )
-return( encname->unicode[enc] );
- else if ( encname->tounicode ) {
- /* To my surprise, on RH9, doing a reset on conversion of CP1258->UCS2 */
- /* causes subsequent calls to return garbage */
- if ( encname->iso_2022_escape_len ) {
- tolen = sizeof(to); fromlen = 0;
- iconv(encname->tounicode,NULL,&fromlen,NULL,&tolen); /* Reset state */
- }
- fpt = from; tpt = (char *) to; tolen = sizeof(to);
- if ( encname->has_1byte && enc<256 ) {
- *(char *) fpt = enc;
- fromlen = 1;
- } else if ( encname->has_2byte ) {
- if ( encname->iso_2022_escape_len )
- strncpy(from,encname->iso_2022_escape,encname->iso_2022_escape_len );
- fromlen = encname->iso_2022_escape_len;
- from[fromlen++] = enc>>8;
- from[fromlen++] = enc&0xff;
- }
- if ( iconv(encname->tounicode,&fpt,&fromlen,&tpt,&tolen)==(size_t) -1 )
-return( -1 );
- if ( tpt-(char *) to == 0 ) {
- /* This strange call appears to be what we need to make CP1258->UCS2 */
- /* work. It's supposed to reset the state and give us the shift */
- /* out. As there is no state, and no shift out I have no idea why*/
- /* this works, but it does. */
- if ( iconv(encname->tounicode,NULL,&fromlen,&tpt,&tolen)==(size_t) -1 )
-return( -1 );
- }
- if ( tpt-(char *) to == sizeof(unichar_t) )
- {
- return( to[0] );
- }
- } else if ( encname->tounicode_func!=NULL ) {
-return( (encname->tounicode_func)(enc) );
- }
-return( -1 );
-}
-
-int32 EncFromUni(int32 uni, Encoding *enc) {
- unichar_t from[20];
- unsigned char to[20];
- ICONV_CONST char *fpt;
- char *tpt;
- size_t fromlen, tolen;
- int i;
-
- if ( enc->is_custom || enc->is_original || enc->is_compact || uni==-1 )
-return( -1 );
- if ( enc->is_unicodebmp || enc->is_unicodefull )
-return( uni<enc->char_cnt ? uni : -1 );
-
- if ( enc->unicode!=NULL ) {
- for ( i=0; i<enc->char_cnt; ++i ) {
- if ( enc->unicode[i]==uni )
-return( i );
- }
-return( -1 );
- } else if ( enc->fromunicode!=NULL ) {
- /* I don't see how there can be any state to reset in this direction */
- /* So I don't reset it */
- from[0] = uni;
- fromlen = sizeof(unichar_t);
- fpt = (char *) from; tpt = (char *) to; tolen = sizeof(to);
- iconv(enc->fromunicode,NULL,NULL,NULL,NULL); /* reset shift in/out, etc. */
- if ( iconv(enc->fromunicode,&fpt,&fromlen,&tpt,&tolen)==(size_t) -1 )
-return( -1 );
- if ( tpt-(char *) to == 1 )
-return( to[0] );
- if ( enc->iso_2022_escape_len!=0 ) {
- if ( tpt-(char *) to == enc->iso_2022_escape_len+2 &&
- strncmp((char *) to,enc->iso_2022_escape,enc->iso_2022_escape_len)==0 )
-return( (to[enc->iso_2022_escape_len]<<8) | to[enc->iso_2022_escape_len+1] );
- } else {
- if ( tpt-(char *) to == sizeof(unichar_t) )
-return( (to[0]<<8) | to[1] );
- }
- } else if ( enc->fromunicode_func!=NULL ) {
-return( (enc->fromunicode_func)(uni) );
- }
-return( -1 );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/encoding.h b/dviware/dvisvgm/libs/ff-woff/fontforge/encoding.h
deleted file mode 100644
index 53e61a252b..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/encoding.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#ifndef _ENCODING_H
-#define _ENCODING_H
-
-extern void EncodingFree(Encoding *item);
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/fflocale.c b/dviware/dvisvgm/libs/ff-woff/fontforge/fflocale.c
deleted file mode 100644
index 3912686b5e..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/fflocale.c
+++ /dev/null
@@ -1,44 +0,0 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "fflocale.h"
-
-void switch_to_c_locale(ff_locale_t * tmplocale_p, ff_locale_t * oldlocale_p) {
-#ifdef HAVE_USELOCALE
- *tmplocale_p = newlocale(LC_NUMERIC_MASK, "C", NULL);
- if (*tmplocale_p == NULL)
- fprintf(stderr, "Failed to create temporary locale.\n");
- else if ((*oldlocale_p = uselocale(*tmplocale_p)) == NULL) {
- fprintf(stderr, "Failed to change locale.\n");
- freelocale(*tmplocale_p); *tmplocale_p = NULL;
- }
-#else
- *tmplocale_p = setlocale(LC_NUMERIC, "C");
- if (*tmplocale_p)
- *oldlocale_p = strdup(*tmplocale_p);
- else {
- *oldlocale_p = NULL;
- fprintf(stderr, "Failed to change locale.\n");
- }
-#endif
-}
-
-void switch_to_old_locale(ff_locale_t * tmplocale_p, ff_locale_t * oldlocale_p) {
-#ifdef HAVE_USELOCALE
- if (*oldlocale_p)
- uselocale(*oldlocale_p);
- else
- uselocale(LC_GLOBAL_LOCALE);
- *oldlocale_p = NULL; // This ends the lifecycle of the temporary old locale storage.
- if (*tmplocale_p) {
- freelocale(*tmplocale_p);
- *tmplocale_p = NULL;
- }
-#else
- if (*oldlocale_p) {
- setlocale(LC_NUMERIC, *oldlocale_p);
- free(*oldlocale_p);
- *oldlocale_p = NULL;
- }
-#endif
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/fflocale.h b/dviware/dvisvgm/libs/ff-woff/fontforge/fflocale.h
deleted file mode 100644
index 51bcd83d14..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/fflocale.h
+++ /dev/null
@@ -1,23 +0,0 @@
-#ifndef FFLOCALE_H
-#define FFLOCALE_H
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <locale.h>
-#ifdef HAVE_XLOCALE_H
-#include <xlocale.h>
-#endif
-
-#ifdef HAVE_USELOCALE
-typedef locale_t ff_locale_t;
-#else
-typedef char* ff_locale_t;
-#endif // HAVE_USELOCALE
-
-void switch_to_c_locale(ff_locale_t *tmplocale_p, ff_locale_t *oldlocale_p);
-void switch_to_old_locale(ff_locale_t *tmplocale_p, ff_locale_t *oldlocale_p);
-
-#endif /* FFLOCALE_H */
-
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/fontforge-config.h b/dviware/dvisvgm/libs/ff-woff/fontforge/fontforge-config.h
deleted file mode 100644
index ac81d5a417..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/fontforge-config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#ifndef FF_CONFIG_H
-#define FF_CONFIG_H
-
-#ifndef ICONV_CONST
-#define ICONV_CONST
-#endif
-
-#define _NO_LIBUNINAMESLIST 1
-#define _NO_LIBUNICODENAMES 1
-#define _NO_PYTHON
-#define _NO_FFSCRIPT
-#define _NO_LIBSPIRO
-
-#define FONTFORGE_LIBFF_VERSION_MAJOR 2
-#define FONTFORGE_LIBFF_VERSION_MINOR 0
-#define FONTFORGE_MODTIME_RAW 1469132312L /* Seconds since 1970 (standard unix time) */
-#define FONTFORGE_MODTIME_STR ""
-#define FONTFORGE_VERSIONDATE_RAW 20160721
-
-#define _GNU_SOURCE 1
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/fontforge.h b/dviware/dvisvgm/libs/ff-woff/fontforge/fontforge.h
deleted file mode 100644
index 2ec8413c28..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/fontforge.h
+++ /dev/null
@@ -1,93 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _PFAEDIT_H_
-#define _PFAEDIT_H_
-
-#include <fontforge-config.h>
-#include "configure-fontforge.h"
-#include <basics.h>
-#include "libffstamp.h"
-#include <stdio.h>
-#include <string.h>
-#include <ffintl.h>
-#include "splinefont.h"
-#include "uiinterface.h"
-
-static const unsigned unicode4_size = 17*65536;
- /* Unicode goes up to 0x10ffff */
-
-extern FILE* tmpfile2 ();
-
-extern int32 unicode_from_adobestd[256];
-
-/* unicode_nameannot - Deprecated, but kept for older programs to access. */
-#if _NO_LIBUNINAMESLIST
-#endif
-
-extern int default_fv_font_size;
-extern int default_fv_antialias;
-extern int default_fv_bbsized;
-extern Encoding *default_encoding, custom;
-extern int adjustwidth;
-extern int adjustlbearing;
-extern int autohint_before_generate;
-extern int seperate_hint_controls;
-extern int no_windowing_ui;
-extern uint32 default_background;
-extern int use_utf8_in_script;
-
-extern int new_em_size;
-extern int new_fonts_are_order2;
-extern int loaded_fonts_same_as_new;
-
-extern char *TTFFoundry;
-
-extern Encoding *enclist;
-
-extern int quiet;
-
-extern MacFeat *default_mac_feature_map;
-
-#include <stdint.h>
-#include <basics.h>
-
-typedef uint32_t Color;
-#define COLOR_DEFAULT ((Color) 0xfffffffe)
-
-typedef struct pressedOn {
- int x,y; /* screen location of the press */
- float cx, cy; /* Translated into character space */
- float t; /* location on the spline where we pressed */
-} PressedOn;
-
-typedef struct findsel {
- float fudge; /* One pixel fudge factor */
- float xl,xh, yl, yh; /* One pixel fudge factor */
- PressedOn *p;
-} FindSel;
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/fontforgevw.h b/dviware/dvisvgm/libs/ff-woff/fontforge/fontforgevw.h
deleted file mode 100644
index 5f43c0e3c2..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/fontforgevw.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright (C) 2007-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _FONTFORGEVW_H_
-#define _FONTFORGEVW_H_
-
-#include "fontforge.h"
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/fvfonts.c b/dviware/dvisvgm/libs/ff-woff/fontforge/fvfonts.c
deleted file mode 100644
index e2229aaef1..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/fvfonts.c
+++ /dev/null
@@ -1,253 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-#include "namehash.h"
-
-static int _SFFindExistingSlot(SplineFont *sf, int unienc, const char *name );
-
-void __GlyphHashFree(struct glyphnamehash *hash) {
- struct glyphnamebucket *test, *next;
- int i;
-
- if ( hash==NULL )
-return;
- for ( i=0; i<GN_HSIZE; ++i ) {
- for ( test = hash->table[i]; test!=NULL; test = next ) {
- next = test->next;
- chunkfree(test,sizeof(struct glyphnamebucket));
- }
- }
-}
-
-static void _GlyphHashFree(SplineFont *sf) {
-
- if ( sf->glyphnames==NULL )
-return;
- __GlyphHashFree(sf->glyphnames);
- free(sf->glyphnames);
- sf->glyphnames = NULL;
-}
-
-void GlyphHashFree(SplineFont *sf) {
- _GlyphHashFree(sf);
- if ( sf->cidmaster )
- _GlyphHashFree(sf->cidmaster);
-}
-
-static void GlyphHashCreate(SplineFont *sf) {
- int i, k, hash;
- SplineFont *_sf;
- struct glyphnamehash *gnh;
- struct glyphnamebucket *new;
-
- if ( sf->glyphnames!=NULL )
-return;
- sf->glyphnames = gnh = calloc(1,sizeof(*gnh));
- k = 0;
- do {
- _sf = k<sf->subfontcnt ? sf->subfonts[k] : sf;
- /* I walk backwards because there are some ttf files where multiple */
- /* glyphs get the same name. In the cases I've seen only one of these */
- /* has an encoding. That's the one we want. It will be earlier in the */
- /* font than the others. If we build the list backwards then it will */
- /* be the top name in the bucket, and will be the one we return */
- for ( i=_sf->glyphcnt-1; i>=0; --i ) if ( _sf->glyphs[i]!=NULL ) {
- new = chunkalloc(sizeof(struct glyphnamebucket));
- new->sc = _sf->glyphs[i];
- hash = hashname(new->sc->name);
- new->next = gnh->table[hash];
- gnh->table[hash] = new;
- }
- ++k;
- } while ( k<sf->subfontcnt );
-}
-
-SplineChar *SFHashName(SplineFont *sf,const char *name) {
- struct glyphnamebucket *test;
-
- if ( sf->glyphnames==NULL )
- GlyphHashCreate(sf);
-
- for ( test=sf->glyphnames->table[hashname(name)]; test!=NULL; test = test->next )
- if ( strcmp(test->sc->name,name)==0 )
-return( test->sc );
-
-return( NULL );
-}
-
-static int SCUniMatch(SplineChar *sc,int unienc) {
- struct altuni *alt;
-
- if ( sc->unicodeenc==unienc )
-return( true );
- for ( alt=sc->altuni; alt!=NULL; alt=alt->next )
- if ( alt->unienc==unienc )
-return( true );
-
-return( false );
-}
-
-/* Find the position in the glyph list where this code point/name is found. */
-/* Returns -1 else on error */
-int SFFindGID(SplineFont *sf, int unienc, const char *name ) {
- int gid;
- SplineChar *sc;
-
- if ( unienc!=-1 ) {
- for ( gid=0; gid<sf->glyphcnt; ++gid ) if ( sf->glyphs[gid]!=NULL ) {
- if ( SCUniMatch(sf->glyphs[gid],unienc) )
-return( gid );
- }
- }
- if ( name!=NULL ) {
- sc = SFHashName(sf,name);
- if ( sc!=NULL )
-return( sc->orig_pos );
- }
-
-return ( -1 );
-}
-
-int SFCIDFindCID(SplineFont *sf, int unienc, const char *name ) {
- // For a given SplineFont *sf, find the index of the SplineChar with code unienc or name *name.
- int j,ret;
-
- // If there is a cidmap or if there are multiple subfonts, do complicated things.
- if ( sf->cidmaster!=NULL || sf->subfontcnt!=0 ) {
- if ( sf->cidmaster!=NULL )
- sf=sf->cidmaster;
- }
-
- // If things are simple, perform a flat map.
- if ( sf->subfonts==NULL && sf->cidmaster==NULL )
- return( SFFindGID(sf,unienc,name));
-
- // If the cid lookup from before failed, look through subfonts.
- if ( sf->cidmaster!=NULL )
- sf=sf->cidmaster;
- for ( j=0; j<sf->subfontcnt; ++j )
- if (( ret = SFFindGID(sf,unienc,name))!=-1 )
- return( ret );
-
- return( -1 );
-}
-
-int SFHasCID(SplineFont *sf,int cid) {
- int i;
- /* What subfont (if any) contains this cid? */
- if ( sf->cidmaster!=NULL )
- sf=sf->cidmaster;
- for ( i=0; i<sf->subfontcnt; ++i )
- if ( cid<sf->subfonts[i]->glyphcnt &&
- SCWorthOutputting(sf->subfonts[i]->glyphs[cid]) )
-return( i );
- for ( i=0; i<sf->subfontcnt; ++i )
- if ( cid<sf->subfonts[i]->glyphcnt && sf->subfonts[i]->glyphs[cid]!=NULL )
-return( i );
-
-return( -1 );
-}
-
-SplineChar *SFGetChar(SplineFont *sf, int unienc, const char *name ) {
- // This function presumably finds a glyph matching the code or name supplied. Undefined code is unienc = -1. Undefined name is name = NULL.
- int ind = -1;
- int j;
- char *pt, *start; int ch;
-
- if ( name==NULL )
- ind = SFCIDFindCID(sf,unienc,NULL);
- else {
- for ( start=(char *) name; *start==' '; ++start );
- for ( pt=start; *pt!='\0' && *pt!='('; ++pt );
- ch = *pt;
- // We truncate any glyph name before parentheses.
- if ( ch=='\0' )
- ind = SFCIDFindCID(sf,unienc,start);
- else {
- char *tmp;
- if ( (tmp = copy(name)) ) {
- tmp[pt-name] = '\0';
- ind = SFCIDFindCID(sf,unienc,tmp+(start-name));
- tmp[pt-name] = ch;
- free(tmp);
- }
- }
- }
- if ( ind==-1 )
- return( NULL );
-
- // If the typeface is simple, return the result from the flat glyph collection.
- if ( sf->subfonts==NULL && sf->cidmaster==NULL )
- return( sf->glyphs[ind]);
-
- if ( sf->cidmaster!=NULL )
- sf=sf->cidmaster;
-
- // Find a subfont that contains the glyph in question.
- j = SFHasCID(sf,ind);
- if ( j==-1 )
- return( NULL );
-
- return( sf->subfonts[j]->glyphs[ind] );
-}
-
-static int _SFFindExistingSlot(SplineFont *sf, int unienc, const char *name ) {
- int gid = -1;
- struct altuni *altuni;
-
- if ( unienc!=-1 ) {
- for ( gid=sf->glyphcnt-1; gid>=0; --gid ) if ( sf->glyphs[gid]!=NULL ) {
- if ( sf->glyphs[gid]->unicodeenc==unienc )
- break;
- for ( altuni=sf->glyphs[gid]->altuni ; altuni!=NULL &&
- (altuni->unienc!=unienc || altuni->vs!=-1 || altuni->fid!=0);
- altuni=altuni->next );
- if ( altuni!=NULL )
- break;
- }
- }
- if ( gid==-1 && name!=NULL ) {
- SplineChar *sc = SFHashName(sf,name);
- if ( sc==NULL )
-return( -1 );
- gid = sc->orig_pos;
- if ( gid<0 || gid>=sf->glyphcnt ) {
- IError("Invalid glyph location when searching for %s", name );
-return( -1 );
- }
- }
-return( gid );
-}
-
-int SFFindExistingSlot(SplineFont *sf, int unienc, const char *name ) {
- int gid = _SFFindExistingSlot(sf,unienc,name);
-
- if ( gid==-1 || !SCWorthOutputting(sf->glyphs[gid]) )
-return( -1 );
-
-return( gid );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/gwwiconv.c b/dviware/dvisvgm/libs/ff-woff/fontforge/gwwiconv.c
deleted file mode 100644
index 5524662f94..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/gwwiconv.c
+++ /dev/null
@@ -1,797 +0,0 @@
-/* Copyright (C) 2004-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include <gwwiconv.h>
-#include <charset.h>
-#include <chardata.h>
-#include <string.h>
-#include <ustring.h>
-#include <stdio.h>
-
-#ifndef HAVE_ICONV_H
-
-/* I have written an limited iconv which will convert either to or from unichar_t */
-/* (either UCS2 or UCS4) */
-/* it will not convert latin1 to latin2, but latin1->UCS2, UCS2->latin2 */
-/* it uses the encodings built into libgunicode for systems with no iconv */
-/* (ie. macs before 10.3, perhaps others) */
-
-struct gww_iconv_t {
- enum encoding from;
- enum encoding to;
-};
-
-enum extended_encoding { e_jisgbpk = e_encodingmax };
-
-static enum endian { end_big, end_little, end_unknown } endian = end_unknown;
-
-static void endian_detector(void) {
- union { short s; char c[2]; } u;
-
- u.s = 0x0102;
- if ( u.c[0]==0x1 )
- endian = end_big;
- else
- endian = end_little;
-}
-
-static enum encoding name_to_enc(const char *encname) {
- struct { const char *name; enum encoding enc; } map[] = {
- { "UCS-2-INTERNAL", e_unicode },
- { "UCS2", e_unicode },
- { "UCS-2", e_unicode },
- { "UCS-2LE", e_unicode },
- { "UCS-2BE", e_unicode },
- { "UNICODELITTLE", e_unicode },
- { "UNICODEBIG", e_unicode },
- { "ISO-10646/UCS2", e_unicode },
- { "ISO-10646/USC2", e_unicode }, /* Old typo */
- { "UCS4", e_ucs4 },
- { "UCS-4", e_ucs4 },
- { "UCS-4LE", e_ucs4 },
- { "UCS-4BE", e_ucs4 },
- { "UCS-4-INTERNAL", e_ucs4 },
- { "ISO-10646/UCS4", e_ucs4 },
- { "iso8859-1", e_iso8859_1 },
- { "iso8859-2", e_iso8859_2 },
- { "iso8859-3", e_iso8859_3 },
- { "iso8859-4", e_iso8859_4 },
- { "iso8859-5", e_iso8859_5 },
- { "iso8859-6", e_iso8859_6 },
- { "iso8859-7", e_iso8859_7 },
- { "iso8859-8", e_iso8859_8 },
- { "iso8859-9", e_iso8859_9 },
- { "iso8859-10", e_iso8859_10 },
- { "iso8859-11", e_iso8859_11 },
- { "iso8859-13", e_iso8859_13 },
- { "iso8859-14", e_iso8859_14 },
- { "iso8859-15", e_iso8859_15 },
- { "iso-8859-1", e_iso8859_1 },
- { "iso-8859-2", e_iso8859_2 },
- { "iso-8859-3", e_iso8859_3 },
- { "iso-8859-4", e_iso8859_4 },
- { "iso-8859-5", e_iso8859_5 },
- { "iso-8859-6", e_iso8859_6 },
- { "iso-8859-7", e_iso8859_7 },
- { "iso-8859-8", e_iso8859_8 },
- { "iso-8859-9", e_iso8859_9 },
- { "iso-8859-10", e_iso8859_10 },
- { "iso-8859-11", e_iso8859_11 },
- { "iso-8859-13", e_iso8859_13 },
- { "iso-8859-14", e_iso8859_14 },
- { "iso-8859-15", e_iso8859_15 },
- { "koi8-r", e_koi8_r },
- { "jis201", e_jis201 },
- { "mac", e_mac },
- { "Macintosh", e_mac },
- { "MS-ANSI", e_win },
- { "EUC-KR", e_wansung },
- { "johab", e_johab },
- { "ISO-2022-KR", e_jiskorean },
- { "ISO-2022-CN", e_jisgb },
- { "EUC-CN", e_jisgbpk },
- { "big5", e_big5 },
- { "big5hkscs", e_big5hkscs },
- { "ISO-2022-JP", e_jis },
- { "ISO-2022-JP-2", e_jis2 },
- { "Sjis", e_sjis },
- { "UTF-8", e_utf8 },
- { "UTF8", e_utf8 },
- { NULL }};
- int i;
-
- for ( i=0; map[i].name!=NULL; ++i )
- if ( strmatch(map[i].name,encname)==0 )
-return( map[i].enc );
-
-return( -1 );
-}
-
-gww_iconv_t gww_iconv_open(const char *toenc,const char *fromenc) {
- struct gww_iconv_t stuff, *ret;
-
- if ( endian==end_unknown )
- endian_detector();
-
- stuff.from = name_to_enc(fromenc);
- stuff.to = name_to_enc(toenc);
- if ( stuff.from==(enum encoding) -1 || stuff.to==(enum encoding) -1 ) {
- /*fprintf( stderr, "Unknown encoding\n" );*/
-return( (iconv_t)(-1) );
- } else if ( stuff.from!=e_ucs4 && stuff.to!=e_ucs4 ) {
- fprintf( stderr, "Bad call to gww_iconv_open, neither arg is UCS4\n" );
-return( (iconv_t)(-1) );
- }
-
- ret = malloc(sizeof(struct gww_iconv_t));
- *ret = stuff;
-return( ret );
-}
-
-void gww_iconv_close( gww_iconv_t cd) {
- free(cd);
-}
-
-size_t gww_iconv( gww_iconv_t _cd,
- char **inbuf, size_t *inlen,
- char **outbuf, size_t *outlen) {
- struct gww_iconv_t *cd = _cd;
- int char_cnt = 0;
- unsigned char *plane;
- int ch;
-
- if ( inbuf==NULL || outbuf==NULL || inlen==NULL || outlen==NULL ||
- *inbuf==NULL || *outbuf==NULL )
-return( 0 ); /* Legal, used to reset the state. As we don't do states, irrelevant */
-
- if ( cd->from<0 || cd->from>e_encodingmax || cd->to<0 || cd->to>e_encodingmax ) {
- fprintf( stderr, "Garbage encoding passed to gww_iconv()\n" );
-return( (size_t) -1 );
- }
-
- if ( cd->from==e_unicode ) {
- if ( cd->to==e_unicode ) {
- int min = *inlen < *outlen ? *inlen : *outlen;
- min &= ~1;
- memcpy(*inbuf,*outbuf,min);
- char_cnt = min/sizeof(short);
- *inbuf += min; *outbuf += min;
- *inlen -= min; *outlen -= min;
- if ( *inlen==1 && *outlen>0 )
-return( (size_t) -1 ); /* Incomplete multi-byte sequence */
- } else if ( cd->to==e_ucs4 ) {
- int min = *inlen/sizeof(short) < *outlen/sizeof(int32) ? *inlen/sizeof(short) : *outlen/sizeof(int32);
- int highch, lowch;
- if ( endian == end_little ) {
- while ( *inlen>=sizeof(short) && *outlen>=sizeof(int32) ) {
- highch = ((unsigned char *) *inbuf)[1], lowch = *(unsigned char *) *inbuf;
- ((uint8 *) outbuf)[3] = 0; ((uint8 *) outbuf)[2] = 0;
- ((uint8 *) outbuf)[1] = highch; ((uint8 *) outbuf)[0] = lowch;
- outbuf += sizeof(int32); inbuf += sizeof(short);
- *outlen -= sizeof(int32); *inlen -= sizeof(short);
- }
- } else {
- while ( *inlen>=sizeof(short) && *outlen>=sizeof(int32) ) {
- highch = ((unsigned char *) *inbuf)[0], lowch = ((unsigned char *) *inbuf)[1];
- ((uint8 *) outbuf)[0] = 0; ((uint8 *) outbuf)[1] = 0;
- ((uint8 *) outbuf)[2] = highch; ((uint8 *) outbuf)[3] = lowch;
- outbuf += sizeof(int32); inbuf += sizeof(short);
- *outlen -= sizeof(int32); *inlen -= sizeof(short);
- }
- }
- char_cnt = min;
- if ( *inlen==1 && *outlen>0 )
-return( (size_t) -1 ); /* Incomplete multi-byte sequence */
- } else if ( cd->to<e_first2byte ) {
- struct charmap *table = NULL;
- table = alphabets_from_unicode[cd->to];
- while ( *inlen>1 && *outlen>0 ) {
- int highch, lowch;
- if ( endian == end_little ) {
- highch = ((unsigned char *) *inbuf)[1], lowch = *(unsigned char *) *inbuf;
- } else {
- highch = *(unsigned char *) *inbuf, lowch = ((unsigned char *) *inbuf)[1];
- }
- if ( highch>=table->first && highch<=table->last &&
- (plane = table->table[highch])!=NULL &&
- (ch=plane[lowch])!=0 ) {
- *((*outbuf)++) = ch;
- -- *outlen;
- *inlen -= 2;
- *inbuf += 2;
- ++char_cnt;
- } else
-return( (size_t) -1 );
- }
- } else if ( cd->to==e_utf8 ) {
- while ( *inlen>1 && *outlen>0 ) {
- unichar_t uch;
- if ( endian == end_little ) {
- uch = (((unsigned char *) *inbuf)[1]<<8) | (*((unsigned char *) *inbuf));
- } else {
- uch = (*((unsigned char *) *inbuf)<<8) | (((unsigned char *) *inbuf)[1]);
- }
- if ( uch < 0x80 ) {
- *((*outbuf)++) = uch;
- --*outlen;
- } else if ( uch<0x800 ) {
- if ( *outlen==1 )
-return( (size_t) -1 );
- *((*outbuf)++) = 0xc0 | (uch>>6);
- *((*outbuf)++) = 0x80 | (uch&0x3f);
- *outlen-=2;
- } else { /* I'm not dealing with */
- if ( *outlen<=2 )
-return( (size_t) -1 );
- *((*outbuf)++) = 0xe0 | (uch>>12);
- *((*outbuf)++) = 0x80 | ((uch>>6)&0x3f);
- *((*outbuf)++) = 0x80 | (uch&0x3f);
- *outlen-=3;
- }
- *inbuf += 2;
- *inlen -= 2;
- ++char_cnt;
- }
- } else {
- fprintf( stderr, "Unexpected encoding\n" );
-return( (size_t) -1 );
- }
- } else if ( cd->from==e_ucs4 ) {
- if ( cd->to==e_unicode ) {
- int min = *inlen/sizeof(int32) < *outlen/sizeof(int16) ? *inlen/sizeof(int32) : *outlen/sizeof(int16);
- int highch, lowch;
- if ( endian == end_little ) {
- while ( *inlen>=sizeof(short) && *outlen>=sizeof(int32) ) {
- highch = ((unsigned char *) *inbuf)[1], lowch = *(unsigned char *) *inbuf;
- ((uint8 *) outbuf)[1] = highch; ((uint8 *) outbuf)[0] = lowch;
- outbuf += sizeof(int16); inbuf += sizeof(int32);
- *outlen -= sizeof(int16); *inlen -= sizeof(int32);
- }
- } else {
- while ( *inlen>=sizeof(short) && *outlen>=sizeof(int32) ) {
- highch = ((unsigned char *) *inbuf)[2], lowch = ((unsigned char *) *inbuf)[3];
- ((uint8 *) outbuf)[0] = highch; ((uint8 *) outbuf)[1] = lowch;
- outbuf += sizeof(int16); inbuf += sizeof(int32);
- *outlen -= sizeof(int16); *inlen -= sizeof(int32);
- }
- }
- char_cnt = min;
- if ( *inlen>0 && *outlen>0 )
-return( (size_t) -1 ); /* Incomplete multi-byte sequence */
- } else if ( cd->to<e_first2byte ) {
- struct charmap *table = NULL;
- table = alphabets_from_unicode[cd->to];
- while ( *inlen>1 && *outlen>0 ) {
- int highch, lowch;
- if ( endian == end_little ) {
- highch = ((unsigned char *) *inbuf)[1], lowch = *(unsigned char *) *inbuf;
- } else {
- highch = ((unsigned char *) *inbuf)[2], lowch = ((unsigned char *) *inbuf)[3];
- }
- if ( highch>=table->first && highch<=table->last &&
- (plane = table->table[highch])!=NULL &&
- (ch=plane[lowch])!=0 ) {
- *((*outbuf)++) = ch;
- -- *outlen;
- *inlen -= 4;
- *inbuf += 4;
- ++char_cnt;
- } else
-return( (size_t) -1 );
- }
- } else if ( cd->to==e_utf8 ) {
- while ( *inlen>1 && *outlen>0 ) {
- int uch;
- if ( endian == end_little ) {
- uch = (((unsigned char *) *inbuf)[3]<<24) |
- (((unsigned char *) *inbuf)[2]<<16) |
- (((unsigned char *) *inbuf)[1]<<8) |
- (*((unsigned char *) *inbuf));
- } else {
- uch = (*((unsigned char *) *inbuf)<<24) |
- (((unsigned char *) *inbuf)[1]<<16) |
- (((unsigned char *) *inbuf)[2]<<8) |
- (((unsigned char *) *inbuf)[3]);
- }
- if ( uch < 0x80 ) {
- *((*outbuf)++) = uch;
- --*outlen;
- } else if ( uch<0x800 ) {
- if ( *outlen==1 )
-return( (size_t) -1 );
- *((*outbuf)++) = 0xc0 | (uch>>6);
- *((*outbuf)++) = 0x80 | (uch&0x3f);
- *outlen-=2;
- } else if ( uch < 0x10000 ) {
- if ( *outlen<=2 )
-return( (size_t) -1 );
- *((*outbuf)++) = 0xe0 | (uch>>12);
- *((*outbuf)++) = 0x80 | ((uch>>6)&0x3f);
- *((*outbuf)++) = 0x80 | (uch&0x3f);
- *outlen-=3;
- } else {
- uint32 val = uch-0x10000;
- int u = ((val&0xf0000)>>16)+1, z=(val&0x0f000)>>12, y=(val&0x00fc0)>>6, x=val&0x0003f;
- if ( *outlen<=3 )
-return( (size_t) -1 );
- *(*outbuf)++ = 0xf0 | (u>>2);
- *(*outbuf)++ = 0x80 | ((u&3)<<4) | z;
- *(*outbuf)++ = 0x80 | y;
- *(*outbuf)++ = 0x80 | x;
- *outlen-=4;
- }
- *inbuf += 4;
- *inlen -= 4;
- ++char_cnt;
- }
- } else {
- fprintf( stderr, "Unexpected encoding\n" );
-return( (size_t) -1 );
- }
- } else if ( cd->to==e_unicode ) {
- const unichar_t *table;
- if ( cd->from<e_first2byte ) {
- table = unicode_from_alphabets[cd->from];
- while ( *inlen>0 && *outlen>1 ) {
- unichar_t ch = table[ *(unsigned char *) ((*inbuf)++)];
- --*inlen;
- if ( endian==end_little ) {
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- } else if ( cd->from==e_jis || cd->from==e_jis2 ||
- cd->from==e_jiskorean || cd->from==e_jisgb ) {
- table = cd->from==e_jisgb ? unicode_from_gb2312 :
- cd->from==e_jiskorean ? unicode_from_ksc5601 :
- cd->from==e_jis ? unicode_from_jis208 :
- unicode_from_jis212;
- while ( *inlen>1 && *outlen>1 ) {
- unsigned char *ipt = (unsigned char *) *inbuf;
- int ch;
- if ( *ipt<0x21 || *ipt>0x7e || ipt[1]<0x21 || ipt[1]>0x7e )
-return( (size_t) -1 );
- ch = (*ipt-0x21)*94 + (ipt[1]-0x21);
- ch = table[ch];
- *inlen -= 2;
- *inbuf = (char *) ipt+2;
- if ( endian==end_little ) {
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- if ( *inlen==1 && *outlen>0 )
-return( (size_t) -1 ); /* Incomplete multi-byte sequence */
- } else if ( cd->from==e_wansung || cd->from==e_jisgbpk ) {
- table = cd->from==e_jisgbpk ? unicode_from_gb2312 :
- unicode_from_ksc5601 ;
- while ( *inlen>0 && *outlen>1 ) {
- unsigned char *ipt = (unsigned char *) *inbuf;
- int ch;
- if ( *ipt<0x7f ) {
- ch = *ipt;
- --*inlen;
- *inbuf = (char *) ipt+1;
- } else {
- if ( *ipt<0xa1 || *ipt>0xfe || ipt[1]<0xa1 || ipt[1]>0xfe ||
- *inlen==1 )
-return( (size_t) -1 );
- ch = (*ipt-0xa1)*94 + (ipt[1]-0xa1);
- ch = table[ch];
- *inlen -= 2;;
- *inbuf = (char *) ipt+2;
- }
- if ( endian==end_little ) {
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- } else if ( cd->from==e_johab || cd->from==e_big5 || cd->from==e_big5hkscs ) {
- int offset;
- if ( cd->from==e_big5 ) {
- offset = 0xa100;
- table = unicode_from_big5;
- } else if ( cd->from==e_big5hkscs ) {
- offset = 0x8100;
- table = unicode_from_big5hkscs;
- } else {
- offset = 0x8400;
- table = unicode_from_johab;
- }
- while ( *inlen>0 && *outlen>1 ) {
- unsigned char *ipt = (unsigned char *) *inbuf;
- int ch;
- if ( *ipt<0x7f ) {
- ch = *ipt;
- --*inlen;
- *inbuf = (char *) ipt+1;
- } else {
- if ( *inlen==1 )
-return( (size_t) -1 );
- ch = (*ipt<<8) | ipt[1];
- if ( ch<offset )
-return( (size_t) -1 );
- ch -= offset;
- ch = table[ch];
- *inlen -= 2;
- *inbuf = (char *) ipt+2;
- }
- if ( endian==end_little ) {
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- } else if ( cd->from==e_sjis ) {
- while ( *inlen>0 && *outlen>1 ) {
- unsigned char *ipt = (unsigned char *) *inbuf;
- int ch1 = *ipt;
- if ( ch1<127 || ( ch1>=161 && ch1<=223 )) {
- ch = unicode_from_jis201[ch1];
- *inbuf = (char *) ipt+1;
- --*inlen;
- } else if ( *inlen==1 )
-return( (size_t) -1 );
- else {
- int ch2 = ipt[1];
- if ( ch1 >= 129 && ch1<= 159 )
- ch1 -= 112;
- else
- ch1 -= 176;
- ch1 <<= 1;
- if ( ch2>=159 )
- ch2-= 126;
- else if ( ch2>127 ) {
- --ch1;
- ch2 -= 32;
- } else {
- --ch1;
- ch2 -= 31;
- }
- if ( ch1-0x21>=94 || ch2-0x21>=94 )
-return( (size_t) -1 );
- ch = unicode_from_jis208[(ch1-0x21)*94+(ch2-0x21)];
- *inlen -= 2;
- *inbuf = (char *) ipt+2;
- }
- if ( endian==end_little ) {
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- } else if ( cd->from==e_utf8 ) {
- while ( *inlen>0 && *outlen>sizeof(unichar_t) ) {
- unsigned char *ipt = (unsigned char *) *inbuf;
- int ch = *ipt;
- if ( ch <= 127 ) {
- *inbuf = (char *) ipt+1;
- --*inlen;
- } else if ( ch<=0xdf ) {
- if ( *inlen<2 || ipt[1]<0x80 )
-return( (size_t) -1 );
- ch = ((ch&0x1f)<<6) | (ipt[1] &0x3f);
- *inlen -= 2;
- *inbuf = (char *) ipt+2;
- } else if ( ch<=0xef ) {
- if ( *inlen<3 || ipt[1]<0x80 || ipt[2]<0x80 )
-return( (size_t) -1 );
- ch = ((ch&0x1f)<<12) | ((ipt[1] &0x3f)<<6) | (ipt[2]&0x3f);
- *inlen -= 3;
- *inbuf = (char *) ipt+3;
- } else {
- int w;
- if ( *inlen<4 || *outlen<4 || ipt[1]<0x80 || ipt[2]<0x80 || ipt[3]<0x80 )
-return( (size_t) -1 );
- w = ( ((ch&0x7)<<2) | ((ipt[1]&0x30)>>4) )-1;
- ch = 0xd800 | (w<<6) | ((ipt[1]&0xf)<<2) | ((ipt[2]&0x30)>>4);
- if ( endian==end_little ) {
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- }
- *outlen -= 2;
- ch = 0xdc00 | ((ipt[2]&0xf)<<6) | (ipt[3]&0x3f);
- }
- if ( endian==end_little ) {
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- } else {
- fprintf( stderr, "Unexpected encoding\n" );
-return( (size_t) -1 );
- }
- } else if ( cd->to==e_ucs4 ) {
- const unichar_t *table;
- if ( cd->from<e_first2byte ) {
- table = unicode_from_alphabets[cd->from];
- while ( *inlen>0 && *outlen>1 ) {
- unichar_t ch = table[ *(unsigned char *) ((*inbuf)++)];
- --*inlen;
- if ( endian==end_little ) {
- *((*outbuf)++) = 0;
- *((*outbuf)++) = 0;
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = 0;
- *((*outbuf)++) = 0;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- } else if ( cd->from==e_jis || cd->from==e_jis2 ||
- cd->from==e_jiskorean || cd->from==e_jisgb ) {
- table = cd->from==e_jisgb ? unicode_from_gb2312 :
- cd->from==e_jiskorean ? unicode_from_ksc5601 :
- cd->from==e_jis ? unicode_from_jis208 :
- unicode_from_jis212;
- while ( *inlen>1 && *outlen>1 ) {
- unsigned char *ipt = (unsigned char *) *inbuf;
- int ch;
- if ( *ipt<0x21 || *ipt>0x7e || ipt[1]<0x21 || ipt[1]>0x7e )
-return( (size_t) -1 );
- ch = (*ipt-0x21)*94 + (ipt[1]-0x21);
- ch = table[ch];
- *inlen -= 2;
- *inbuf = (char *) ipt+2;
- if ( endian==end_little ) {
- *((*outbuf)++) = 0;
- *((*outbuf)++) = 0;
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = 0;
- *((*outbuf)++) = 0;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- if ( *inlen==1 && *outlen>0 )
-return( (size_t) -1 ); /* Incomplete multi-byte sequence */
- } else if ( cd->from==e_wansung || cd->from==e_jisgbpk ) {
- table = cd->from==e_jisgbpk ? unicode_from_gb2312 :
- unicode_from_ksc5601 ;
- while ( *inlen>0 && *outlen>1 ) {
- unsigned char *ipt = (unsigned char *) *inbuf;
- int ch;
- if ( *ipt<0x7f ) {
- ch = *ipt;
- --*inlen;
- *inbuf = (char *) ipt+1;
- } else {
- if ( *ipt<0xa1 || *ipt>0xfe || ipt[1]<0xa1 || ipt[1]>0xfe ||
- *inlen==1 )
-return( (size_t) -1 );
- ch = (*ipt-0xa1)*94 + (ipt[1]-0xa1);
- ch = table[ch];
- *inlen -= 2;;
- *inbuf = (char *) ipt+2;
- }
- if ( endian==end_little ) {
- *((*outbuf)++) = 0;
- *((*outbuf)++) = 0;
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = 0;
- *((*outbuf)++) = 0;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- } else if ( cd->from==e_johab || cd->from==e_big5 || cd->from==e_big5hkscs ) {
- int offset;
- if ( cd->from==e_big5 ) {
- offset = 0xa100;
- table = unicode_from_big5;
- } else if ( cd->from==e_big5hkscs ) {
- offset = 0x8100;
- table = unicode_from_big5hkscs;
- } else {
- offset = 0x8400;
- table = unicode_from_johab;
- }
- while ( *inlen>0 && *outlen>1 ) {
- unsigned char *ipt = (unsigned char *) *inbuf;
- int ch;
- if ( *ipt<0x7f ) {
- ch = *ipt;
- --*inlen;
- *inbuf = (char *) ipt+1;
- } else {
- if ( *inlen==1 )
-return( (size_t) -1 );
- ch = (*ipt<<8) | ipt[1];
- if ( ch<offset )
-return( (size_t) -1 );
- ch -= offset;
- ch = table[ch];
- *inlen -= 2;
- *inbuf = (char *) ipt+2;
- }
- if ( endian==end_little ) {
- *((*outbuf)++) = 0;
- *((*outbuf)++) = 0;
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = 0;
- *((*outbuf)++) = 0;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- } else if ( cd->from==e_sjis ) {
- while ( *inlen>0 && *outlen>1 ) {
- unsigned char *ipt = (unsigned char *) *inbuf;
- int ch1 = *ipt;
- if ( ch1<127 || ( ch1>=161 && ch1<=223 )) {
- ch = unicode_from_jis201[ch1];
- *inbuf = (char *) ipt+1;
- --*inlen;
- } else if ( *inlen==1 )
-return( (size_t) -1 );
- else {
- int ch2 = ipt[1];
- if ( ch1 >= 129 && ch1<= 159 )
- ch1 -= 112;
- else
- ch1 -= 176;
- ch1 <<= 1;
- if ( ch2>=159 )
- ch2-= 126;
- else if ( ch2>127 ) {
- --ch1;
- ch2 -= 32;
- } else {
- --ch1;
- ch2 -= 31;
- }
- if ( ch1-0x21>=94 || ch2-0x21>=94 )
-return( (size_t) -1 );
- ch = unicode_from_jis208[(ch1-0x21)*94+(ch2-0x21)];
- *inlen -= 2;
- *inbuf = (char *) ipt+2;
- }
- if ( endian==end_little ) {
- *((*outbuf)++) = 0;
- *((*outbuf)++) = 0;
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- } else {
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = 0;
- *((*outbuf)++) = 0;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- } else if ( cd->from==e_utf8 ) {
- while ( *inlen>0 && *outlen>sizeof(unichar_t) ) {
- unsigned char *ipt = (unsigned char *) *inbuf;
- int ch = *ipt;
- if ( ch <= 127 ) {
- *inbuf = (char *) ipt+1;
- --*inlen;
- } else if ( ch<=0xdf ) {
- if ( *inlen<2 || ipt[1]<0x80 )
-return( (size_t) -1 );
- ch = ((ch&0x1f)<<6) | (ipt[1] &0x3f);
- *inlen -= 2;
- *inbuf = (char *) ipt+2;
- } else if ( ch<=0xef ) {
- if ( *inlen<3 || ipt[1]<0x80 || ipt[2]<0x80 )
-return( (size_t) -1 );
- ch = ((ch&0x1f)<<12) | ((ipt[1] &0x3f)<<6) | (ipt[2]&0x3f);
- *inlen -= 3;
- *inbuf = (char *) ipt+3;
- } else {
- int w,w2;
- w = ( ((*ipt&0x7)<<2) | ((ipt[1]&0x30)>>4) )-1;
- w = (w<<6) | ((ipt[1]&0xf)<<2) | ((ipt[2]&0x30)>>4);
- w2 = ((ipt[2]&0xf)<<6) | (ipt[3]&0x3f);
- ch = w*0x400 + w2 + 0x10000;
- *inbuf = (char *) ipt+4;
- }
- if ( endian==end_little ) {
- *((*outbuf)++) = ch&0xff;
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch>>16;
- *((*outbuf)++) = ch>>24;
- } else {
- *((*outbuf)++) = ch>>24;
- *((*outbuf)++) = ch>>16;
- *((*outbuf)++) = ch>>8;
- *((*outbuf)++) = ch&0xff;
- }
- *outlen -= sizeof(unichar_t);
- ++char_cnt;
- }
- } else {
- fprintf( stderr, "Unexpected encoding\n" );
-return( (size_t) -1 );
- }
- } else {
- fprintf( stderr, "One of the two encodings must be UCS2 in gww_iconv()\n" );
-return( (size_t) -1 );
- }
-
- if ( *outlen>=1 ) {
- **outbuf = '\0';
- if ( *outlen>1 )
- (*outbuf)[1] = '\0';
- if ( cd->to==e_ucs4 && *outlen>3 ) {
- (*outbuf)[2] = '\0';
- (*outbuf)[3] = '\0';
- }
- }
-return( char_cnt );
-}
-#else
-static const int a_file_must_define_something=1;
-#endif /* HAVE_ICONV_H */
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/libffstamp.h b/dviware/dvisvgm/libs/ff-woff/fontforge/libffstamp.h
deleted file mode 100644
index bde3a031ba..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/libffstamp.h
+++ /dev/null
@@ -1,8 +0,0 @@
-/* This file was generated using stamper.c to create the next version release. */
-/* If you need to update this to the next release version, see fontforge/GNUmakefile.in */
-
-#include "fontforge-config.h"
-
-#define LibFF_ModTime FONTFORGE_MODTIME_RAW /* Seconds since 1970 (standard unix time) */
-#define LibFF_ModTime_Str FONTFORGE_MODTIME_STR
-#define LibFF_VersionDate FONTFORGE_VERSIONDATE_RAW /* Year, month, day */
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/lookups.c b/dviware/dvisvgm/libs/ff-woff/fontforge/lookups.c
deleted file mode 100644
index 466a05e399..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/lookups.c
+++ /dev/null
@@ -1,679 +0,0 @@
-/* -*- coding: utf-8 -*- */
-/* Copyright (C) 2007-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-
-static int uint32_cmp(const void *_ui1, const void *_ui2) {
- if ( *(uint32 *) _ui1 > *(uint32 *)_ui2 )
-return( 1 );
- if ( *(uint32 *) _ui1 < *(uint32 *)_ui2 )
-return( -1 );
-
-return( 0 );
-}
-
-static int lang_cmp(const void *_ui1, const void *_ui2) {
- /* The default language is magic, and should come first in the list even */
- /* if that is not true alphabetical order */
- if ( *(uint32 *) _ui1 == DEFAULT_LANG )
-return( -1 );
- if ( *(uint32 *) _ui2 == DEFAULT_LANG )
-return( 1 );
-
- if ( *(uint32 *) _ui1 > *(uint32 *)_ui2 )
-return( 1 );
- if ( *(uint32 *) _ui1 < *(uint32 *)_ui2 )
-return( -1 );
-
-return( 0 );
-}
-
-uint32 *SFScriptsInLookups(SplineFont *sf,int gpos) {
- /* Presumes that either SFFindUnusedLookups or SFFindClearUnusedLookupBits */
- /* has been called first */
- /* Since MS will sometimes ignore a script if it isn't found in both */
- /* GPOS and GSUB we want to return the same script list no matter */
- /* what the setting of gpos ... so we totally ignore that argument */
- /* and always look at both sets of lookups */
-
-/* Sergey Malkin from MicroSoft tells me:
- Each shaping engine in Uniscribe can decide on its requirements for
- layout tables - some of them require both GSUB and GPOS, in some cases
- any table present is enough, or it can work without any table.
-
- Sometimes, purpose of the check is to determine if font is supporting
- particular script - if required tables are not there font is just
- rejected by this shaping engine. Sometimes, shaping engine can not just
- reject the font because there are fonts using older shaping technologies
- we still have to support, so it uses some logic when to fallback to
- legacy layout code.
-
- In your case this is Hebrew, where both tables are required to use
- OpenType processing. Arabic requires both tables too, Latin requires
- GSUB to execute GPOS. But in general, if you have both tables you should
- be safe with any script to get fully featured OpenType shaping.
-
-In other words, if we have a Hebrew font with just GPOS features they won't work,
-and MS will not use the font at all. We must add a GSUB table. In the unlikely
-event that we had a hebrew font with only GSUB it would not work either.
-
-So if we want our lookups to have a chance of executing under Uniscribe we
-better make sure that both tables have the same script set.
-
-(Sergey says we could optimize a little: A Latin GSUB table will run without
-a GPOS, but he says the GPOS won't work without a GSUB.)
-*/
- int cnt=0, tot=0, i;
- uint32 *scripts = NULL;
- OTLookup *test;
- FeatureScriptLangList *fl;
- struct scriptlanglist *sl;
-
- /* So here always give scripts for both (see comment above) no */
- /* matter what they asked for */
- for ( gpos=0; gpos<2; ++gpos ) {
- for ( test = gpos ? sf->gpos_lookups : sf->gsub_lookups; test!=NULL; test = test->next ) {
- if ( test->unused )
- continue;
- for ( fl=test->features; fl!=NULL; fl=fl->next ) {
- if ( fl->ismac )
- continue;
- for ( sl=fl->scripts ; sl!=NULL; sl=sl->next ) {
- for ( i=0; i<cnt; ++i ) {
- if ( sl->script==scripts[i] )
- break;
- }
- if ( i==cnt ) {
- if ( cnt>=tot )
- scripts = realloc(scripts,(tot+=10)*sizeof(uint32));
- scripts[cnt++] = sl->script;
- }
- }
- }
- }
- }
-
- if ( cnt==0 )
-return( NULL );
-
- /* We want our scripts in alphabetic order */
- qsort(scripts,cnt,sizeof(uint32),uint32_cmp);
- /* add a 0 entry to mark the end of the list */
- if ( cnt>=tot )
- scripts = realloc(scripts,(tot+1)*sizeof(uint32));
- scripts[cnt] = 0;
-return( scripts );
-}
-
-uint32 *SFLangsInScript(SplineFont *sf,int gpos,uint32 script) {
- /* However, the language lists (I think) are distinct */
- /* But giving a value of -1 for gpos will give us the set of languages in */
- /* both tables (for this script) */
- int cnt=0, tot=0, i, g, l;
- uint32 *langs = NULL;
- OTLookup *test;
- FeatureScriptLangList *fl;
- struct scriptlanglist *sl;
-
- for ( g=0; g<2; ++g ) {
- if (( gpos==0 && g==1 ) || ( gpos==1 && g==0 ))
- continue;
- for ( test = g ? sf->gpos_lookups : sf->gsub_lookups; test!=NULL; test = test->next ) {
- if ( test->unused )
- continue;
- for ( fl=test->features; fl!=NULL; fl=fl->next ) {
- for ( sl=fl->scripts ; sl!=NULL; sl=sl->next ) {
- if ( sl->script==script ) {
- for ( l=0; l<sl->lang_cnt; ++l ) {
- uint32 lang;
- if ( l<MAX_LANG )
- lang = sl->langs[l];
- else
- lang = sl->morelangs[l-MAX_LANG];
- for ( i=0; i<cnt; ++i ) {
- if ( lang==langs[i] )
- break;
- }
- if ( i==cnt ) {
- if ( cnt>=tot )
- langs = realloc(langs,(tot+=10)*sizeof(uint32));
- langs[cnt++] = lang;
- }
- }
- }
- }
- }
- }
- }
-
- if ( cnt==0 ) {
- /* We add dummy script entries. Because Uniscribe will refuse to */
- /* process some scripts if they don't have an entry in both GPOS */
- /* an GSUB. So if a script appears in either table, force it to */
- /* appear in both. That means we can get scripts with no lookups */
- /* and hence no languages. It seems that Uniscribe doesn't like */
- /* that either. So give each such script a dummy default language */
- /* entry. This is what VOLT does */
- langs = calloc(2,sizeof(uint32));
- langs[0] = DEFAULT_LANG;
-return( langs );
- }
-
- /* We want our languages in alphabetic order */
- qsort(langs,cnt,sizeof(uint32),lang_cmp);
- /* add a 0 entry to mark the end of the list */
- if ( cnt>=tot )
- langs = realloc(langs,(tot+1)*sizeof(uint32));
- langs[cnt] = 0;
-return( langs );
-}
-
-uint32 *SFFeaturesInScriptLang(SplineFont *sf,int gpos,uint32 script,uint32 lang) {
- int cnt=0, tot=0, i, l, isg;
- uint32 *features = NULL;
- OTLookup *test;
- FeatureScriptLangList *fl;
- struct scriptlanglist *sl;
- /* gpos==0 => GSUB, gpos==1 => GPOS, gpos==-1 => both, gpos==-2 => Both & morx & kern */
-
- if ( sf->cidmaster ) sf=sf->cidmaster;
- for ( isg = 0; isg<2; ++isg ) {
- if ( gpos>=0 && isg!=gpos )
- continue;
- for ( test = isg ? sf->gpos_lookups : sf->gsub_lookups; test!=NULL; test = test->next ) {
- if ( test->unused )
- continue;
- for ( fl=test->features; fl!=NULL; fl=fl->next ) {
- if ( fl->ismac && gpos!=-2 )
- continue;
- if ( script==0xffffffff ) {
- for ( i=0; i<cnt; ++i ) {
- if ( fl->featuretag==features[i] )
- break;
- }
- if ( i==cnt ) {
- if ( cnt>=tot )
- features = realloc(features,(tot+=10)*sizeof(uint32));
- features[cnt++] = fl->featuretag;
- }
- } else for ( sl=fl->scripts ; sl!=NULL; sl=sl->next ) {
- if ( sl->script==script ) {
- int matched = false;
- if ( fl->ismac && gpos==-2 )
- matched = true;
- else for ( l=0; l<sl->lang_cnt; ++l ) {
- uint32 testlang;
- if ( l<MAX_LANG )
- testlang = sl->langs[l];
- else
- testlang = sl->morelangs[l-MAX_LANG];
- if ( testlang==lang ) {
- matched = true;
- break;
- }
- }
- if ( matched ) {
- for ( i=0; i<cnt; ++i ) {
- if ( fl->featuretag==features[i] )
- break;
- }
- if ( i==cnt ) {
- if ( cnt>=tot )
- features = realloc(features,(tot+=10)*sizeof(uint32));
- features[cnt++] = fl->featuretag;
- }
- }
- }
- }
- }
- }
- }
-
- if ( sf->design_size!=0 && gpos ) {
- /* The 'size' feature is like no other. It has no lookups and so */
- /* we will never find it in the normal course of events. If the */
- /* user has specified a design size, then every script/lang combo */
- /* gets a 'size' feature which contains no lookups but feature */
- /* params */
- if ( cnt>=tot )
- features = realloc(features,(tot+=2)*sizeof(uint32));
- features[cnt++] = CHR('s','i','z','e');
- }
-
- if ( cnt==0 )
-return( calloc(1,sizeof(uint32)) );
-
- /* We don't care if our features are in alphabetical order here */
- /* all that matters is whether the complete list of features is */
- /* ordering here would be irrelevant */
- /* qsort(features,cnt,sizeof(uint32),uint32_cmp); */
-
- /* add a 0 entry to mark the end of the list */
- if ( cnt>=tot )
- features = realloc(features,(tot+1)*sizeof(uint32));
- features[cnt] = 0;
-return( features );
-}
-
-OTLookup **SFLookupsInScriptLangFeature(SplineFont *sf,int gpos,uint32 script,uint32 lang, uint32 feature) {
- int cnt=0, tot=0, l;
- OTLookup **lookups = NULL;
- OTLookup *test;
- FeatureScriptLangList *fl;
- struct scriptlanglist *sl;
-
- for ( test = gpos ? sf->gpos_lookups : sf->gsub_lookups; test!=NULL; test = test->next ) {
- if ( test->unused )
- continue;
- for ( fl=test->features; fl!=NULL; fl=fl->next ) {
- if ( fl->featuretag==feature ) {
- for ( sl=fl->scripts ; sl!=NULL; sl=sl->next ) {
- if ( sl->script==script ) {
- for ( l=0; l<sl->lang_cnt; ++l ) {
- uint32 testlang;
- if ( l<MAX_LANG )
- testlang = sl->langs[l];
- else
- testlang = sl->morelangs[l-MAX_LANG];
- if ( testlang==lang ) {
- if ( cnt>=tot )
- lookups = realloc(lookups,(tot+=10)*sizeof(OTLookup *));
- lookups[cnt++] = test;
- goto found;
- }
- }
- }
- }
- }
- }
- found:;
- }
-
- if ( cnt==0 )
-return( NULL );
-
- /* lookup order is irrelevant here. might as well leave it in invocation order */
- /* add a 0 entry to mark the end of the list */
- if ( cnt>=tot )
- lookups = realloc(lookups,(tot+1)*sizeof(OTLookup *));
- lookups[cnt] = 0;
-return( lookups );
-}
-
-static int LigaturesFirstComponentGID(SplineFont *sf,char *components) {
- int gid, ch;
- char *pt;
-
- for ( pt = components; *pt!='\0' && *pt!=' '; ++pt );
- ch = *pt; *pt = '\0';
- gid = SFFindExistingSlot(sf,-1,components);
- *pt = ch;
-return( gid );
-}
-
-static int PSTValid(SplineFont *sf,PST *pst) {
- char *start, *pt, ch;
- int ret;
-
- switch ( pst->type ) {
- case pst_position:
-return( true );
- case pst_pair:
-return( SCWorthOutputting(SFGetChar(sf,-1,pst->u.pair.paired)) );
- case pst_substitution: case pst_alternate: case pst_multiple:
- case pst_ligature:
- for ( start = pst->u.mult.components; *start ; ) {
- for ( pt=start; *pt && *pt!=' '; ++pt );
- ch = *pt; *pt = '\0';
- ret = SCWorthOutputting(SFGetChar(sf,-1,start));
- if ( !ret ) {
- LogError(_("Lookup subtable contains unused glyph %s making the whole subtable invalid"), start);
- *pt = ch;
-return( false );
- }
- *pt = ch;
- if ( ch==0 )
- start = pt;
- else
- start = pt+1;
- }
- default:
- break;
- }
-return( true );
-}
-
-SplineChar **SFGlyphsWithPSTinSubtable(SplineFont *sf,struct lookup_subtable *subtable) {
- uint8 *used = calloc(sf->glyphcnt,sizeof(uint8));
- SplineChar **glyphs, *sc;
- int i, k, gid, cnt;
- KernPair *kp;
- PST *pst;
- int ispair = subtable->lookup->lookup_type == gpos_pair;
- int isliga = subtable->lookup->lookup_type == gsub_ligature;
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( SCWorthOutputting(sc = sf->glyphs[i]) ) {
- if ( ispair ) {
- for ( k=0; k<2; ++k ) {
- for ( kp= k ? sc->kerns : sc->vkerns; kp!=NULL ; kp=kp->next ) {
- if ( !SCWorthOutputting(kp->sc))
- continue;
- if ( kp->subtable == subtable ) {
- used[i] = true;
- goto continue_;
- }
- }
- }
- }
- for ( pst=sc->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->subtable == subtable && PSTValid(sf,pst)) {
- if ( !isliga ) {
- used[i] = true;
- goto continue_;
- } else {
- gid = LigaturesFirstComponentGID(sf,pst->u.lig.components);
- pst->u.lig.lig = sc;
- if ( gid!=-1 )
- used[gid] = true;
- /* can't continue here. ffi might be "f+f+i" and "ff+i" */
- /* and we need to mark both "f" and "ff" as used */
- }
- }
- }
- continue_: ;
- }
-
- for ( i=cnt=0 ; i<sf->glyphcnt; ++i )
- if ( used[i] )
- ++cnt;
-
- if ( cnt==0 ) {
- free(used);
-return( NULL );
- }
- glyphs = malloc((cnt+1)*sizeof(SplineChar *));
- for ( i=cnt=0 ; i<sf->glyphcnt; ++i ) {
- if ( used[i] )
- glyphs[cnt++] = sf->glyphs[i];
- }
- glyphs[cnt] = NULL;
- free(used);
-return( glyphs );
-}
-
-static void TickLookupKids(OTLookup *otl) {
- struct lookup_subtable *sub;
- int i,j;
-
- for ( sub=otl->subtables; sub!=NULL; sub=sub->next ) {
- if ( sub->fpst!=NULL ) {
- for ( i=0; i<sub->fpst->rule_cnt; ++i ) {
- struct fpst_rule *rule = &sub->fpst->rules[i];
- for ( j=0; j<rule->lookup_cnt; ++j ) {
- if ( rule->lookups[j].lookup!=NULL )
- rule->lookups[j].lookup->in_gpos = true;
- }
- }
- }
- }
-}
-
-void SFFindUnusedLookups(SplineFont *sf) {
- OTLookup *test;
- struct lookup_subtable *sub;
- int gpos;
- AnchorClass *ac;
- AnchorPoint *ap;
- SplineChar *sc;
- KernPair *kp;
- PST *pst;
- int i,k,gid,isv;
- SplineFont *_sf = sf;
- Justify *jscripts;
- struct jstf_lang *jlangs;
-
- if ( _sf->cidmaster ) _sf = _sf->cidmaster;
-
- /* Some things are obvious. If a subtable consists of a kernclass or some */
- /* such, then obviously it is used. But more distributed info takes more */
- /* work. So mark anything easy as used, and anything difficult as unused */
- /* We'll work on the difficult things later */
- for ( gpos=0; gpos<2; ++gpos ) {
- for ( test = gpos ? _sf->gpos_lookups : _sf->gsub_lookups; test!=NULL; test = test->next ) {
- for ( sub = test->subtables; sub!=NULL; sub=sub->next ) {
- if ( sub->kc!=NULL || sub->fpst!=NULL || sub->sm!=NULL ) {
- sub->unused = false;
- continue;
- }
- sub->unused = true;
- /* We'll turn the following bit back on if there turns out */
- /* to be an anchor class attached to it -- that is subtly */
- /* different than being unused -- unused will be set if all */
- /* acs are unused, this bit will be on if there are unused */
- /* classes that still refer to us. */
- sub->anchor_classes = false;
- }
- }
- }
-
- /* To be useful an anchor class must have both at least one base and one mark */
- /* (for cursive anchors that means at least one entry and at least one exit) */
- /* Start by assuming the worst */
- for ( ac = _sf->anchor; ac!=NULL; ac=ac->next )
- ac->has_mark = ac->has_base = false;
-
- /* Ok, for each glyph, look at all lookups (or anchor classes) it affects */
- /* and mark the appropriate parts of them as used */
- k = 0;
- do {
- sf = _sf->subfontcnt==0 ? _sf : _sf->subfonts[k];
- for ( gid=0; gid<sf->glyphcnt; ++gid ) if ( SCWorthOutputting(sc = sf->glyphs[gid]) ) {
- for ( ap=sc->anchor; ap!=NULL; ap=ap->next ) {
- switch ( ap->type ) {
- case at_mark: case at_centry:
- ap->anchor->has_mark = true;
- break;
- case at_basechar: case at_baselig: case at_basemark:
- case at_cexit:
- ap->anchor->has_base = true;
- break;
- default:
- break;
- }
- }
- for ( isv=0; isv<2; ++isv ) {
- for ( kp= isv ? sc->kerns : sc->vkerns ; kp!=NULL; kp=kp->next ) {
- if ( SCWorthOutputting(kp->sc))
- kp->subtable->unused = false;
- }
- }
- for ( pst=sc->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->subtable==NULL )
- continue;
- if ( !PSTValid(sf,pst))
- continue;
- pst->subtable->unused = false;
- }
- }
- ++k;
- } while ( k<_sf->subfontcnt );
-
- /* Finally for any anchor class that has both a mark and a base then it is */
- /* used, and its lookup is also used */
- /* Also, even if unused, as long as the anchor class exists we must keep */
- /* the subtable around */
- for ( ac = _sf->anchor; ac!=NULL; ac=ac->next ) {
- if ( ac->subtable==NULL )
- continue;
- ac->subtable->anchor_classes = true;
- if ( ac->has_mark && ac->has_base )
- ac->subtable->unused = false;
- }
-
- /* Now for each lookup, a lookup is unused if ALL subtables are unused */
- for ( gpos=0; gpos<2; ++gpos ) {
- for ( test = gpos ? _sf->gpos_lookups : _sf->gsub_lookups; test!=NULL; test = test->next ) {
- test->unused = test->empty = true;
- for ( sub=test->subtables; sub!=NULL; sub=sub->next ) {
- if ( !sub->unused )
- test->unused = false;
- if ( !sub->unused && !sub->anchor_classes ) {
- test->empty = false;
- break;
- }
- }
- }
- }
-
- /* I store JSTF max lookups in the gpos list because they have the same */
- /* format. But now I need to tease them out and learn which lookups are */
- /* used in GPOS and which in JSTF (and conceivably which get duplicated */
- /* and placed in both) */
- for ( test = sf->gpos_lookups; test!=NULL; test = test->next ) {
- test->only_jstf = test->in_jstf = test->in_gpos = false;
- if ( test->features!=NULL )
- test->in_gpos = true;
- }
- for ( jscripts = sf->justify; jscripts!=NULL; jscripts=jscripts->next ) {
- for ( jlangs=jscripts->langs; jlangs!=NULL; jlangs=jlangs->next ) {
- for ( i=0; i<jlangs->cnt; ++i ) {
- struct jstf_prio *prio = &jlangs->prios[i];
- if ( prio->enableShrink!=NULL )
- for ( k=0; prio->enableShrink[k]!=NULL; ++k )
- prio->enableShrink[k]->in_gpos = true;
- if ( prio->disableShrink!=NULL )
- for ( k=0; prio->disableShrink[k]!=NULL; ++k )
- prio->disableShrink[k]->in_gpos = true;
- if ( prio->enableExtend!=NULL )
- for ( k=0; prio->enableExtend[k]!=NULL; ++k )
- prio->enableExtend[k]->in_gpos = true;
- if ( prio->disableExtend!=NULL )
- for ( k=0; prio->disableExtend[k]!=NULL; ++k )
- prio->disableExtend[k]->in_gpos = true;
- if ( prio->maxShrink!=NULL )
- for ( k=0; prio->maxShrink[k]!=NULL; ++k )
- prio->maxShrink[k]->in_jstf = true;
- if ( prio->maxExtend!=NULL )
- for ( k=0; prio->maxExtend[k]!=NULL; ++k )
- prio->maxExtend[k]->in_jstf = true;
- }
- }
- }
- for ( test = sf->gpos_lookups; test!=NULL; test = test->next ) {
- if ( test->in_gpos && (test->lookup_type==gpos_context || test->lookup_type==gpos_contextchain))
- TickLookupKids(test);
- }
- for ( test = sf->gpos_lookups; test!=NULL; test = test->next )
- test->only_jstf = test->in_jstf && !test->in_gpos;
-}
-
-struct lookup_subtable *SFFindLookupSubtable(SplineFont *sf,char *name) {
- int isgpos;
- OTLookup *otl;
- struct lookup_subtable *sub;
-
- if ( sf->cidmaster ) sf = sf->cidmaster;
-
- if ( name==NULL )
-return( NULL );
-
- for ( isgpos=0; isgpos<2; ++isgpos ) {
- for ( otl = isgpos ? sf->gpos_lookups : sf->gsub_lookups ; otl!=NULL; otl=otl->next ) {
- for ( sub = otl->subtables; sub!=NULL; sub=sub->next ) {
- if ( strcmp(name,sub->subtable_name)==0 )
-return( sub );
- }
- }
- }
-return( NULL );
-}
-
-struct lookup_subtable *SFFindLookupSubtableAndFreeName(SplineFont *sf,char *name) {
- struct lookup_subtable *sub = SFFindLookupSubtable(sf,name);
- free(name);
-return( sub );
-}
-
-OTLookup *SFFindLookup(SplineFont *sf,char *name) {
- int isgpos;
- OTLookup *otl;
-
- if ( sf->cidmaster ) sf = sf->cidmaster;
-
- if ( name==NULL )
-return( NULL );
-
- for ( isgpos=0; isgpos<2; ++isgpos ) {
- for ( otl = isgpos ? sf->gpos_lookups : sf->gsub_lookups ; otl!=NULL; otl=otl->next ) {
- if ( strcmp(name,otl->lookup_name)==0 )
-return( otl );
- }
- }
-return( NULL );
-}
-
-struct scriptlanglist *SLCopy(struct scriptlanglist *sl) {
- struct scriptlanglist *newsl;
-
- newsl = chunkalloc(sizeof(struct scriptlanglist));
- *newsl = *sl;
- newsl->next = NULL;
-
- if ( sl->lang_cnt>MAX_LANG ) {
- newsl->morelangs = malloc((newsl->lang_cnt-MAX_LANG)*sizeof(uint32));
- memcpy(newsl->morelangs,sl->morelangs,(newsl->lang_cnt-MAX_LANG)*sizeof(uint32));
- }
-return( newsl );
-}
-
-struct scriptlanglist *SListCopy(struct scriptlanglist *sl) {
- struct scriptlanglist *head=NULL, *last=NULL, *cur;
-
- for ( ; sl!=NULL; sl=sl->next ) {
- cur = SLCopy(sl);
- if ( head==NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
- }
-return( head );
-}
-
-FeatureScriptLangList *FeatureListCopy(FeatureScriptLangList *fl) {
- FeatureScriptLangList *newfl;
-
- if ( fl==NULL )
-return( NULL );
-
- newfl = chunkalloc(sizeof(FeatureScriptLangList));
- *newfl = *fl;
- newfl->next = NULL;
-
- newfl->scripts = SListCopy(fl->scripts);
-return( newfl );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/macbinary.c b/dviware/dvisvgm/libs/ff-woff/fontforge/macbinary.c
deleted file mode 100644
index 85df7c5971..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/macbinary.c
+++ /dev/null
@@ -1,227 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-
-#if __Mac
-# include <ctype.h>
-# include "carbon.h"
-#else
-#undef __Mac
-#define __Mac 0
-#endif
-
-/* I had always assumed that the mac still believed in 72dpi screens, but I */
-/* see that in geneva under OS/9, the pointsize does not match the pixel */
-/* size of the font. But the dpi is not constant (and the differences */
-/* excede those supplied by rounding errors) varying between 96 and 84dpi */
-
-/* A Mac Resource fork */
-/* http://developer.apple.com/techpubs/mac/MoreToolbox/MoreToolbox-9.html */
-/* begins with a 16 byte header containing: */
-/* resource start offset */
-/* map start offset */
-/* resource length */
-/* map length */
-/* then 256-16 bytes of zeros */
-/* the resource section consists of (many) */
-/* 4 byte length count */
-/* resource data */
-/* the map section contains */
-/* A copy of the 16 byte header */
-/* a 4 byte mac internal value (I hope) */
-/* another 4 bytes of mac internal values (I hope) */
-/* a 2 byte offset from the start of the map section to the list of resource types */
-/* a 2 byte offset from the start of the map section to the list of resource names */
-/* The resource type list consists of */
-/* a 2 byte count of the number of resource types (-1) */
-/* (many copies of) */
-/* a 4 byte resource type ('FOND' for example) */
-/* a 2 byte count of the number of resources of this type (-1) */
-/* a 2 byte offset from the type list start to the resource table */
-/* a resource table looks like */
-/* a 2 byte offset from the resource name table to a pascal */
-/* string containing this resource's name (or 0xffff for none) */
-/* 1 byte of resource flags */
-/* 3 bytes of offset from the resource section to the length & */
-/* data of this instance of the resource type */
-/* 4 bytes of 0 */
-/* The resource name section consists of */
-/* a bunch of pascal strings (ie. preceded by a length byte) */
-
-/* The POST resource isn't noticeably documented, it's pretty much a */
-/* straight copy of the pfb file cut up into 0x800 byte chunks. */
-/* (each section of the pfb file has it's own set of chunks, the last may be smaller than 0x800) */
-/* The NFNT resource http://developer.apple.com/techpubs/mac/Text/Text-250.html */
-/* The FOND resource http://developer.apple.com/techpubs/mac/Text/Text-269.html */
-/* The sfnt resource is basically a copy of the ttf file */
-
-/* A MacBinary file */
-/* http://www.lazerware.com/formats/macbinary.html */
-/* begins with a 128 byte header */
-/* (which specifies lengths for data/resource forks) */
-/* (and contains mac type/creator data) */
-/* (and other stuff) */
-/* (and finally a crc checksum) */
-/* is followed by the data section (padded to a mult of 128 bytes) */
-/* is followed by the resource section (padded to a mult of 128 bytes) */
-
-/* Crc code taken from: */
-/* http:// mirror.ctan.org/tools/macutils/crc */
-/* MacBinary files use the same CRC that binhex does (in the MacBinary header) */
-
-/* ******************************** Creation ******************************** */
-struct resource {
- uint32 pos;
- uint8 flags;
- uint16 id;
- char *name;
- uint32 nameloc;
- uint32 nameptloc;
-};
-
-enum psstyle_flags { psf_bold = 1, psf_italic = 2, psf_outline = 4,
- psf_shadow = 0x8, psf_condense = 0x10, psf_extend = 0x20 };
-
-uint16 _MacStyleCode( const char *styles, SplineFont *sf, uint16 *psstylecode ) {
- unsigned short stylecode= 0, psstyle=0;
-
- if ( strstrmatch( styles, "Bold" ) || strstrmatch(styles,"Demi") ||
- strstrmatch( styles,"Heav") || strstrmatch(styles,"Blac") ||
-/* A few fonts have German/French styles in their names */
- strstrmatch( styles,"Fett") || strstrmatch(styles,"Gras") ) {
- stylecode = sf_bold;
- psstyle = psf_bold;
- } else if ( sf!=NULL && sf->weight!=NULL &&
- (strstrmatch( sf->weight, "Bold" ) || strstrmatch(sf->weight,"Demi") ||
- strstrmatch( sf->weight,"Heav") || strstrmatch(sf->weight,"Blac") ||
- strstrmatch( sf->weight,"Fett") || strstrmatch(sf->weight,"Gras")) ) {
- stylecode = sf_bold;
- psstyle = psf_bold;
- }
- /* URW uses four leter abbreviations of Italic and Oblique */
- /* Somebody else uses two letter abbrevs */
- if ( (sf!=NULL && sf->italicangle!=0) ||
- strstrmatch( styles, "Ital" ) ||
- strstrmatch( styles, "Obli" ) ||
- strstrmatch(styles, "Slanted") ||
- strstrmatch(styles, "Kurs") ||
- strstr( styles,"It" ) ) {
- stylecode |= sf_italic;
- psstyle |= psf_italic;
- }
- if ( strstrmatch( styles, "Underline" ) ) {
- stylecode |= sf_underline;
- }
- if ( strstrmatch( styles, "Outl" ) ) {
- stylecode |= sf_outline;
- psstyle |= psf_outline;
- }
- if ( strstr(styles,"Shadow")!=NULL ) {
- stylecode |= sf_shadow;
- psstyle |= psf_shadow;
- }
- if ( strstrmatch( styles, "Cond" ) || strstr( styles,"Cn") ||
- strstrmatch( styles, "Narrow") ) {
- stylecode |= sf_condense;
- psstyle |= psf_condense;
- }
- if ( strstrmatch( styles, "Exte" ) || strstr( styles,"Ex") ) {
- stylecode |= sf_extend;
- psstyle |= psf_extend;
- }
- if ( (psstyle&psf_extend) && (psstyle&psf_condense) ) {
- if ( sf!=NULL )
- LogError( _("Warning: %s(%s) is both extended and condensed. That's impossible.\n"),
- sf->fontname, sf->origname );
- else
- LogError( _("Warning: Both extended and condensed. That's impossible.\n") );
- psstyle &= ~psf_extend;
- stylecode &= ~sf_extend;
- }
- if ( psstylecode!=NULL )
- *psstylecode = psstyle;
-return( stylecode );
-}
-
-uint16 MacStyleCode( SplineFont *sf, uint16 *psstylecode ) {
- const char *styles;
-
- if ( sf->cidmaster!=NULL )
- sf = sf->cidmaster;
-
- if ( sf->macstyle!=-1 ) {
- if ( psstylecode!=NULL )
- *psstylecode = (sf->macstyle&0x3)|((sf->macstyle&0x6c)>>1);
-return( sf->macstyle );
- }
-
- styles = SFGetModifiers(sf);
-return( _MacStyleCode(styles,sf,psstylecode));
-}
-
-/* ******************************** Reading ********************************* */
-
-
-struct kerns {
- unsigned char ch1, ch2;
- short offset; /* 4.12 */
-};
-
-
-#if __Mac
-static SplineFont *HasResourceFork(char *filename,int flags,enum openflags openflags,
- SplineFont *into,EncMap *map) {
- /* If we're on a mac, we can try to see if we've got a real resource fork */
- /* (if we do, copy it into a temporary data file and then manipulate that)*/
- SplineFont *ret;
- FILE *resfork;
- char *tempfn=filename, *pt, *lparen, *respath;
-
- if (( pt=strrchr(filename,'/'))==NULL ) pt = filename;
- if ( (lparen = strchr(pt,'('))!=NULL && strchr(lparen,')')!=NULL ) {
- tempfn = copy(filename);
- tempfn[lparen-filename] = '\0';
- }
- respath = malloc(strlen(tempfn)+strlen("/..namedfork/rsrc")+1);
- strcpy(respath,tempfn);
- strcat(respath,"/..namedfork/rsrc");
- resfork = fopen(respath,"r");
- if ( resfork==NULL ) {
- strcpy(respath,tempfn);
- strcat(respath,"/rsrc");
- resfork = fopen(respath,"r");
- }
- free(respath);
- if ( tempfn!=filename )
- free(tempfn);
- if ( resfork==NULL )
-return( NULL );
- ret = IsResourceFork(resfork,0,filename,flags,openflags,into,map);
- fclose(resfork);
-return( ret );
-}
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/macenc.c b/dviware/dvisvgm/libs/ff-woff/fontforge/macenc.c
deleted file mode 100644
index f9dc5ff060..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/macenc.c
+++ /dev/null
@@ -1,1805 +0,0 @@
-/* Copyright (C) 2003-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-#include "ttf.h"
-
-/*
- The original data for these mappings may be found at
- http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/
- unfortunately this site does not contain all the macintosh encodings
- so we leave some blank
-*/
-/* Response (indirectly) from charsets@apple.com when asked about the missing
- encodings:
-
- > I don't believe any of those additional scripts are actually
- > defined as character encodings. He can safely ignore anything
- > that's not in the Apple folder on the Unicode site.
- >
- > I monitor charsets@apple.com and don't recall seeing any e-mail
- > on this subject. It's possible it got lost in the voluminous
- > spam the address receives.
- >
- > Deborah
- I find this perplexing (unless the script is defined but unused, how can
- it fail to have a defined encoding), but will accept it.
-*/
-
-/* Macintosh 1 byte encodings */
-static unichar_t arabic[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x00a0, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
- 0x00e0, 0x00e2, 0x00e4, 0x06ba, 0x00ab, 0x00e7, 0x00e9, 0x00e8,
- 0x00ea, 0x00eb, 0x00ed, 0x2026, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
- 0x00bb, 0x00f4, 0x00f6, 0x00f7, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x066a, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x060c, 0x002d, 0x002e, 0x002f,
- 0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667,
- 0x0668, 0x0669, 0x003a, 0x061b, 0x003c, 0x003d, 0x003e, 0x061f,
- 0x274a, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
- 0x0628, 0x0629, 0x062a, 0x062b, 0x062c, 0x062d, 0x062e, 0x062f,
- 0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637,
- 0x0638, 0x0639, 0x063a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0640, 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647,
- 0x0648, 0x0649, 0x064a, 0x064b, 0x064c, 0x064d, 0x064e, 0x064f,
- 0x0650, 0x0651, 0x0652, 0x067e, 0x0679, 0x0686, 0x06d5, 0x06a4,
- 0x06af, 0x0688, 0x0691, 0x007b, 0x007c, 0x007d, 0x0698, 0x06d2
-};
-
-static unichar_t centeuro[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x0100, 0x0101, 0x00c9, 0x0104, 0x00d6, 0x00dc, 0x00e1,
- 0x0105, 0x010c, 0x00e4, 0x010d, 0x0106, 0x0107, 0x00e9, 0x0179,
- 0x017a, 0x010e, 0x00ed, 0x010f, 0x0112, 0x0113, 0x0116, 0x00f3,
- 0x0117, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x011a, 0x011b, 0x00fc,
- 0x2020, 0x00b0, 0x0118, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
- 0x00ae, 0x00a9, 0x2122, 0x0119, 0x00a8, 0x2260, 0x0123, 0x012e,
- 0x012f, 0x012a, 0x2264, 0x2265, 0x012b, 0x0136, 0x2202, 0x2211,
- 0x0142, 0x013b, 0x013c, 0x013d, 0x013e, 0x0139, 0x013a, 0x0145,
- 0x0146, 0x0143, 0x00ac, 0x221a, 0x0144, 0x0147, 0x2206, 0x00ab,
- 0x00bb, 0x2026, 0x00a0, 0x0148, 0x0150, 0x00d5, 0x0151, 0x014c,
- 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
- 0x014d, 0x0154, 0x0155, 0x0158, 0x2039, 0x203a, 0x0159, 0x0156,
- 0x0157, 0x0160, 0x201a, 0x201e, 0x0161, 0x015a, 0x015b, 0x00c1,
- 0x0164, 0x0165, 0x00cd, 0x017d, 0x017e, 0x016a, 0x00d3, 0x00d4,
- 0x016b, 0x016e, 0x00da, 0x016f, 0x0170, 0x0171, 0x0172, 0x0173,
- 0x00dd, 0x00fd, 0x0137, 0x017b, 0x0141, 0x017c, 0x0122, 0x02c7
-};
-
-static unichar_t croatian[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
- 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
- 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
- 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
- 0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
- 0x00ae, 0x0160, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x017d, 0x00d8,
- 0x221e, 0x00b1, 0x2264, 0x2265, 0x2206, 0x00b5, 0x2202, 0x2211,
- 0x220f, 0x0161, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x017e, 0x00f8,
- 0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x0106, 0x00ab,
- 0x010c, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
- 0x0110, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
- 0xf8ff, 0x00a9, 0x2044, 0x20ac, 0x2039, 0x203a, 0x00c6, 0x00bb,
- 0x2013, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x0107, 0x00c1,
- 0x010d, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
- 0x0111, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc,
- 0x00af, 0x03c0, 0x00cb, 0x02da, 0x00b8, 0x00ca, 0x00e6, 0x02c7
-};
-
-static unichar_t cyrillic[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
- 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
- 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
- 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
- 0x2020, 0x00b0, 0x0490, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x0406,
- 0x00ae, 0x00a9, 0x2122, 0x0402, 0x0452, 0x2260, 0x0403, 0x0453,
- 0x221e, 0x00b1, 0x2264, 0x2265, 0x0456, 0x00b5, 0x0491, 0x0408,
- 0x0404, 0x0454, 0x0407, 0x0457, 0x0409, 0x0459, 0x040a, 0x045a,
- 0x0458, 0x0405, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
- 0x00bb, 0x2026, 0x00a0, 0x040b, 0x045b, 0x040c, 0x045c, 0x0455,
- 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x201e,
- 0x040e, 0x045e, 0x040f, 0x045f, 0x2116, 0x0401, 0x0451, 0x044f,
- 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
- 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
- 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
- 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x20ac
-};
-
-static unichar_t devanagari[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00d7, 0x2212, 0x2013, 0x2014, 0x2018, 0x2019, 0x2026, 0x2022,
- 0x00a9, 0x00ae, 0x2122, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0965, 0x0970, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x0901, 0x0902, 0x0903, 0x0905, 0x0906, 0x0907, 0x0908,
- 0x0909, 0x090a, 0x090b, 0x090e, 0x090f, 0x0910, 0x090d, 0x0912,
- 0x0913, 0x0914, 0x0911, 0x0915, 0x0916, 0x0917, 0x0918, 0x0919,
- 0x091a, 0x091b, 0x091c, 0x091d, 0x091e, 0x091f, 0x0920, 0x0921,
- 0x0922, 0x0923, 0x0924, 0x0925, 0x0926, 0x0927, 0x0928, 0x0929,
- 0x092a, 0x092b, 0x092c, 0x092d, 0x092e, 0x092f, 0x095f, 0x0930,
- 0x0931, 0x0932, 0x0933, 0x0934, 0x0935, 0x0936, 0x0937, 0x0938,
- 0x0939, 0x200e, 0x093e, 0x093f, 0x0940, 0x0941, 0x0942, 0x0943,
- 0x0946, 0x0947, 0x0948, 0x0945, 0x094a, 0x094b, 0x094c, 0x0949,
- 0x094d, 0x093c, 0x0964, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x00f0, 0x0966, 0x0967, 0x0968, 0x0969, 0x096a, 0x096b, 0x096c,
- 0x096d, 0x096e, 0x096f,
-};
-
-static unichar_t farsi[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x00a0, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
- 0x00e0, 0x00e2, 0x00e4, 0x06ba, 0x00ab, 0x00e7, 0x00e9, 0x00e8,
- 0x00ea, 0x00eb, 0x00ed, 0x2026, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
- 0x00bb, 0x00f4, 0x00f6, 0x00f7, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x066a, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x060c, 0x002d, 0x002e, 0x002f,
- 0x06f0, 0x06f1, 0x06f2, 0x06f3, 0x06f4, 0x06f5, 0x06f6, 0x06f7,
- 0x06f8, 0x06f9, 0x003a, 0x061b, 0x003c, 0x003d, 0x003e, 0x061f,
- 0x274a, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
- 0x0628, 0x0629, 0x062a, 0x062b, 0x062c, 0x062d, 0x062e, 0x062f,
- 0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637,
- 0x0638, 0x0639, 0x063a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0640, 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647,
- 0x0648, 0x0649, 0x064a, 0x064b, 0x064c, 0x064d, 0x064e, 0x064f,
- 0x0650, 0x0651, 0x0652, 0x067e, 0x0679, 0x0686, 0x06d5, 0x06a4,
- 0x06af, 0x0688, 0x0691, 0x007b, 0x007c, 0x007d, 0x0698, 0x06d2
-};
-
-static unichar_t greek[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x00b9, 0x00b2, 0x00c9, 0x00b3, 0x00d6, 0x00dc, 0x0385,
- 0x00e0, 0x00e2, 0x00e4, 0x0384, 0x00a8, 0x00e7, 0x00e9, 0x00e8,
- 0x00ea, 0x00eb, 0x00a3, 0x2122, 0x00ee, 0x00ef, 0x2022, 0x00bd,
- 0x2030, 0x00f4, 0x00f6, 0x00a6, 0x20ac, 0x00f9, 0x00fb, 0x00fc,
- 0x2020, 0x0393, 0x0394, 0x0398, 0x039b, 0x039e, 0x03a0, 0x00df,
- 0x00ae, 0x00a9, 0x03a3, 0x03aa, 0x00a7, 0x2260, 0x00b0, 0x00b7,
- 0x0391, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x0392, 0x0395, 0x0396,
- 0x0397, 0x0399, 0x039a, 0x039c, 0x03a6, 0x03ab, 0x03a8, 0x03a9,
- 0x03ac, 0x039d, 0x00ac, 0x039f, 0x03a1, 0x2248, 0x03a4, 0x00ab,
- 0x00bb, 0x2026, 0x00a0, 0x03a5, 0x03a7, 0x0386, 0x0388, 0x0153,
- 0x2013, 0x2015, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x0389,
- 0x038a, 0x038c, 0x038e, 0x03ad, 0x03ae, 0x03af, 0x03cc, 0x038f,
- 0x03cd, 0x03b1, 0x03b2, 0x03c8, 0x03b4, 0x03b5, 0x03c6, 0x03b3,
- 0x03b7, 0x03b9, 0x03be, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03bf,
- 0x03c0, 0x03ce, 0x03c1, 0x03c3, 0x03c4, 0x03b8, 0x03c9, 0x03c2,
- 0x03c7, 0x03c5, 0x03b6, 0x03ca, 0x03cb, 0x0390, 0x03b0, 0x00ad
-};
-
-static unichar_t gujarati[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00d7, 0x2212, 0x2013, 0x2014, 0x2018, 0x2019, 0x2026, 0x2022,
- 0x00a9, 0x00ae, 0x2122, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0965, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x0a81, 0x0a82, 0x0a83, 0x0a85, 0x0a86, 0x0a87, 0x0a88,
- 0x0a89, 0x0a8a, 0x0a8b, 0x00ab, 0x0a8f, 0x0a90, 0x0a8d, 0x00af,
- 0x0a93, 0x0a94, 0x0a91, 0x0a95, 0x0a96, 0x0a97, 0x0a98, 0x0a99,
- 0x0a9a, 0x0a9b, 0x0a9c, 0x0a9d, 0x0a9e, 0x0a9f, 0x0aa0, 0x0aa1,
- 0x0aa2, 0x0aa3, 0x0aa4, 0x0aa5, 0x0aa6, 0x0aa7, 0x0aa8, 0x00c7,
- 0x0aaa, 0x0aab, 0x0aac, 0x0aad, 0x0aae, 0x0aaf, 0x00ce, 0x0ab0,
- 0x00d0, 0x0ab2, 0x0ab3, 0x00d3, 0x0ab5, 0x0ab6, 0x0ab7, 0x0ab8,
- 0x0ab9, 0x200e, 0x0abe, 0x0abf, 0x0ac0, 0x0ac1, 0x0ac2, 0x0ac3,
- 0x00e0, 0x0ac7, 0x0ac8, 0x0ac5, 0x00e4, 0x0acb, 0x0acc, 0x0ac9,
- 0x0acd, 0x0abc, 0x0964, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x00f0, 0x0ae6, 0x0ae7, 0x0ae8, 0x0ae9, 0x0aea, 0x0aeb, 0x0aec,
- 0x0aed, 0x0aee, 0x0aef,
-};
-
-static unichar_t gurmukhi[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00d7, 0x2212, 0x2013, 0x2014, 0x2018, 0x2019, 0x2026, 0x2022,
- 0x00a9, 0x00ae, 0x2122, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0a71, 0x0a5c, 0x0a73, 0x0a72, 0x0a74, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x00a1, 0x0a02, 0x00a3, 0x0a05, 0x0a06, 0x0a07, 0x0a08,
- 0x0a09, 0x0a0a, 0x00aa, 0x00ab, 0x0a0f, 0x0a10, 0x00ae, 0x00af,
- 0x0a13, 0x0a14, 0x00b2, 0x0a15, 0x0a16, 0x0a17, 0x0a18, 0x0a19,
- 0x0a1a, 0x0a1b, 0x0a1c, 0x0a1d, 0x0a1e, 0x0a1f, 0x0a20, 0x0a21,
- 0x0a22, 0x0a23, 0x0a24, 0x0a25, 0x0a26, 0x0a27, 0x0a28, 0x00c7,
- 0x0a2a, 0x0a2b, 0x0a2c, 0x0a2d, 0x0a2e, 0x0a2f, 0x00ce, 0x0a30,
- 0x00d0, 0x0a32, 0x00d2, 0x00d3, 0x0a35, 0xf860, 0x00d6, 0x0a38,
- 0x0a39, 0x200e, 0x0a3e, 0x0a3f, 0x0a40, 0x0a41, 0x0a42, 0x00df,
- 0x00e0, 0x0a47, 0x0a48, 0x00e3, 0x00e4, 0x0a4b, 0x0a4c, 0x00e7,
- 0x0a4d, 0x0a3c, 0x0964, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x00f0, 0x0a66, 0x0a67, 0x0a68, 0x0a69, 0x0a6a, 0x0a6b, 0x0a6c,
- 0x0a6d, 0x0a6e, 0x0a6f,
-};
-
-static unichar_t hebrew[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x05f2, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
- 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
- 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
- 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x20aa, 0x0027,
- 0x0029, 0x0028, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0xf86a, 0x201e, 0xf89b, 0xf89c, 0xf89d, 0xf89e, 0x05bc, 0xfb4b,
- 0xfb35, 0x2026, 0x00a0, 0x05b8, 0x05b7, 0x05b5, 0x05b6, 0x05b4,
- 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0xfb2a, 0xfb2b,
- 0x05bf, 0x05b0, 0x05b2, 0x05b1, 0x05bb, 0x05b9, 0x05b8, 0x05b3,
- 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
- 0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
- 0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
- 0x05e8, 0x05e9, 0x05ea, 0x007d, 0x005d, 0x007b, 0x005b, 0x007c
-};
-
-static unichar_t iceland[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
- 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
- 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
- 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
- 0x00dd, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
- 0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
- 0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
- 0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x00e6, 0x00f8,
- 0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
- 0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
- 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
- 0x00ff, 0x0178, 0x2044, 0x20ac, 0x00d0, 0x00f0, 0x00de, 0x00fe,
- 0x00fd, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
- 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
- 0xf8ff, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc,
- 0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7
-};
-
-static unichar_t romanian[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
- 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
- 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
- 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
- 0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
- 0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x0102, 0x0218,
- 0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
- 0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x0103, 0x0219,
- 0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
- 0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
- 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
- 0x00ff, 0x0178, 0x2044, 0x20ac, 0x2039, 0x203a, 0x021a, 0x021b,
- 0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
- 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
- 0xf8ff, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc,
- 0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7
-};
-
-unichar_t MacRomanEnc[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
- 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
- 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
- 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
- 0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
- 0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
- 0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
- 0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x00e6, 0x00f8,
- 0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
- 0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
- 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
- 0x00ff, 0x0178, 0x2044, 0x20ac, 0x2039, 0x203a, 0xfb01, 0xfb02,
- 0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
- 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
- 0xf8ff, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc,
- 0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7
-};
-
-static unichar_t thai[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00ab, 0x00bb, 0x2026, 0x0e48, 0x0e49, 0x0e4a, 0x0e4b, 0x0e4c,
- 0x0e48, 0x0e49, 0x0e4a, 0x0e4b, 0x0e4c, 0x201c, 0x201d, 0x0e4d,
- 0x0090, 0x2022, 0x0e31, 0x0e47, 0x0e34, 0x0e35, 0x0e36, 0x0e37,
- 0x0e48, 0x0e49, 0x0e4a, 0x0e4b, 0x0e4c, 0x2018, 0x2019, 0x009f,
- 0x00a0, 0x0e01, 0x0e02, 0x0e03, 0x0e04, 0x0e05, 0x0e06, 0x0e07,
- 0x0e08, 0x0e09, 0x0e0a, 0x0e0b, 0x0e0c, 0x0e0d, 0x0e0e, 0x0e0f,
- 0x0e10, 0x0e11, 0x0e12, 0x0e13, 0x0e14, 0x0e15, 0x0e16, 0x0e17,
- 0x0e18, 0x0e19, 0x0e1a, 0x0e1b, 0x0e1c, 0x0e1d, 0x0e1e, 0x0e1f,
- 0x0e20, 0x0e21, 0x0e22, 0x0e23, 0x0e24, 0x0e25, 0x0e26, 0x0e27,
- 0x0e28, 0x0e29, 0x0e2a, 0x0e2b, 0x0e2c, 0x0e2d, 0x0e2e, 0x0e2f,
- 0x0e30, 0x0e31, 0x0e32, 0x0e33, 0x0e34, 0x0e35, 0x0e36, 0x0e37,
- 0x0e38, 0x0e39, 0x0e3a, 0x2060, 0x200b, 0x2013, 0x2014, 0x0e3f,
- 0x0e40, 0x0e41, 0x0e42, 0x0e43, 0x0e44, 0x0e45, 0x0e46, 0x0e47,
- 0x0e48, 0x0e49, 0x0e4a, 0x0e4b, 0x0e4c, 0x0e4d, 0x2122, 0x0e4f,
- 0x0e50, 0x0e51, 0x0e52, 0x0e53, 0x0e54, 0x0e55, 0x0e56, 0x0e57,
- 0x0e58, 0x0e59, 0x00ae, 0x00a9,
-};
-
-static unichar_t turkish[256] = {
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
- 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
- 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
- 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
- 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
- 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
- 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
- 0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
- 0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
- 0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
- 0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x00e6, 0x00f8,
- 0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
- 0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
- 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
- 0x00ff, 0x0178, 0x011e, 0x011f, 0x0130, 0x0131, 0x015e, 0x015f,
- 0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
- 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
- 0xf8ff, 0x00d2, 0x00da, 0x00db, 0x00d9, 0xf8a0, 0x02c6, 0x02dc,
- 0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7
-};
-
-enum script_codes {
- sm_roman, sm_japanese, sm_tradchinese, sm_korean,
- sm_arabic, sm_hebrew, sm_greek, sm_cyrillic,
- sm_rsymbol, sm_devanagari, sm_gurmukhi, sm_gujarati,
- sm_oriya, sm_bengali, sm_tamil, sm_telugu,
- sm_kannada, sm_malayalam, sm_sinhalese, sm_burmese,
- sm_khmer, sm_thai, sm_laotian, sm_georgian,
- sm_armenian, sm_simpchinese, sm_tibetan, sm_mongolian,
- sm_geez, sm_slavic, sm_vietnamese, sm_sindhi,
- sm_max };
-
-static unichar_t *macencodings[] = {
- MacRomanEnc,
- NULL/*Essentially SJIS*/,
- NULL/*Essentially Big 5*/,
- NULL/*Essentially Wansung*/,
- arabic,
- hebrew,
- greek,
- cyrillic,
- NULL, /* rsymbol, whatever that is */
- devanagari,
-/*10*/ gurmukhi,
- gujarati,
- NULL, /* oriya */
- NULL, /* bengali */
- NULL, /* Tamil */
- NULL, /* Telugu */
- NULL, /* Kannada */
- NULL, /* Malayalam */
- NULL, /* Sinhalese */
- NULL, /* Burmese */
-/*20*/ NULL, /* Khmer */
- thai,
- NULL, /* Lao */
- NULL, /* Georgian */
- NULL, /* Armenian */
-/*25*/ NULL,/* SimpChinese, GB2312 offset by 0x8080 to 0xa1a1 */
- NULL, /* Tibetan */
- NULL, /* Mongolian */
- NULL, /* Geex/Ethiopic */
- centeuro, /* Baltic/Slavic */
-/*30*/ NULL, /* Vietnamese */
- NULL, /* Extended Arabic for Sindhi */
- NULL /* Uninterpretted */
-};
-
-/* The icelandic encoding also uses 0 (mac roman) encoding even though it's not*/
-/* The turkish encoding also uses 0 (mac roman) encoding even though it's not*/
-/* The croatian encoding also uses 0 (mac roman) encoding even though it's not*/
-/* The romanian encoding also uses 0 (mac roman) encoding even though it's not*/
-
-/* I've no idea what encoding code farsi uses, it isn't documented to be arabic 4, nor is it documented to have its own code */
-
-static uint8 _MacScriptFromLanguage[] = {
- sm_roman, /* English */
- sm_roman, /* French */
- sm_roman, /* German */
- sm_roman, /* Italian */
- sm_roman, /* Dutch */
- sm_roman, /* Swedish */
- sm_roman, /* Spanish */
- sm_roman, /* Danish */
- sm_roman, /* Portuguese */
- sm_roman, /* Norwegian */
-/*10*/ sm_hebrew, /* Hebrew */
- sm_japanese, /* Japanese */
- sm_arabic, /* Arabic */
- sm_roman, /* Finnish */
- sm_greek, /* Greek */
- sm_roman, /* Icelandic */ /* Modified roman */
- sm_roman, /* Maltese */
- sm_roman, /* Turkish */ /* Modified roman */
- sm_roman, /* Croatian */ /* Modified roman */
- sm_tradchinese, /* Traditional Chinese */
-/*20*/ sm_arabic, /* Urdu (I assume arabic) */
- sm_devanagari, /* Hindi (I assume) */
- sm_thai, /* Thai */
- sm_korean, /* Korean */
- sm_slavic, /* Lithuanian */
- sm_slavic, /* Polish */
- sm_slavic, /* Hungarian */
- sm_slavic, /* Estonian */
- sm_slavic, /* Latvian */
- sm_roman, /* Sami (Lappish) */
-/*30*/ sm_roman, /* Faroese (Icelandic) */ /* Modified roman */
- sm_arabic, /* Farsi/Persian */ /* Modified Arabic */
- sm_cyrillic, /* Russian */
- sm_simpchinese, /* Simplified Chinese */
- sm_roman, /* Flemish */
- sm_roman, /* Irish Gaelic */
- sm_roman, /* albanian (???) */
- sm_roman, /* Romanian */ /* Modified roman */
- sm_slavic, /* Czech */
- sm_slavic, /* Slovak */
-/*40*/ sm_slavic, /* Slovenian */
- sm_roman, /* Yiddish */
- sm_cyrillic, /* Serbian */
- sm_cyrillic, /* Macedonian */
- sm_cyrillic, /* Bulgarian */
- sm_cyrillic, /* Ukrainian */
- sm_cyrillic, /* Byelorussian */
- sm_cyrillic, /* Uzbek */
- sm_cyrillic, /* Kazakh */
- sm_cyrillic, /* Axerbaijani (Cyrillic) */
-/*50*/ sm_arabic, /* Axerbaijani (Arabic) */
- sm_armenian, /* Armenian */
- sm_georgian, /* Georgian */
- sm_cyrillic, /* Moldavian */
- sm_cyrillic, /* Kirghiz */
- sm_cyrillic, /* Tajiki */
- sm_cyrillic, /* Turkmen */
- sm_mongolian, /* Mongolian (Mongolian) */
- sm_cyrillic, /* Mongolian (cyrillic) */
- sm_arabic, /* Pashto */
-/*60*/ sm_arabic, /* Kurdish */
- sm_devanagari, /* Kashmiri (???) */
- sm_sindhi, /* Sindhi */
- sm_tibetan, /* Tibetan */
- sm_tibetan, /* Nepali (???) */
- sm_devanagari, /* Sanskrit */
- sm_devanagari, /* Marathi */
- sm_bengali, /* Bengali */
- sm_bengali, /* Assamese (???) */
- sm_gujarati, /* Gujarati */
-/*70*/ sm_gujarati, /* Punjabi (???) */
- sm_oriya, /* Oriya */
- sm_malayalam, /* Malayalam */
- sm_kannada, /* Kannada */
- sm_tamil, /* Tamil */
- sm_telugu, /* Telugu */
- sm_sinhalese, /* Sinhalese */
- sm_burmese, /* Burmese */
- sm_khmer, /* Khmer */
- sm_laotian, /* Lao */
-/*80*/ sm_vietnamese, /* Vietnamese */
- sm_arabic, /* Indonesian */
- sm_roman, /* Tagalog (???) */
- sm_roman, /* Malay (roman) */
- sm_arabic, /* Malay (arabic) */
- sm_roman, /* Amharic (???) */
- sm_roman, /* Tigrinya (???) */
- sm_roman, /* Galla (???) */
- sm_roman, /* Somali (???) */
- sm_roman, /* Swahili (???) */
-/*90*/ sm_roman, /* Kinyarwanda/Ruanda (???) */
- sm_roman, /* Rundi (???) */
- sm_roman, /* Nyanja/Chewa (???) */
- sm_roman, /* Malagasy */
-/*94*/ sm_roman, /* Esperanto */
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
-/*100*/ 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
-/*110*/ 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
-/*120*/ 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
- 0xff,
-/*128*/ sm_roman, /* Welsh */
- sm_roman, /* Basque */
-/*130*/ sm_roman, /* Catalan */
- sm_roman, /* Latin */
- sm_roman, /* Quechua (???) */
- sm_roman, /* Guarani (???) */
- sm_roman, /* Aymara (???) */
- sm_cyrillic, /* Tatar (???) */
- sm_cyrillic, /* Uighur (???) */
- sm_cyrillic, /* Dzongkha (???) */
- sm_roman, /* Javanese (roman) */
- sm_roman, /* Sundanese (roman) */
-/*140*/ sm_roman, /* Galician */
- sm_roman, /* Afrikaans */
- sm_roman, /* Breton */
- sm_roman, /* Inuktitut */
- sm_roman, /* Scottish Gaelic */
- sm_roman, /* Manx Gaelic */
- sm_roman, /* Irish Gaelic (with dot) */
- sm_roman, /* Tongan */
- sm_greek, /* Greek (polytonic) */
- sm_roman, /* Greenlandic */ /* Presumably icelandic? */
-/*150*/ sm_roman, /* Azebaijani (roman) */
- 0xff
-};
-
-static uint16 _WinLangFromMac[] = {
- 0x409, /* English */
- 0x40c, /* French */
- 0x407, /* German */
- 0x410, /* Italian */
- 0x413, /* Dutch */
- 0x41d, /* Swedish */
- 0x40a, /* Spanish */
- 0x406, /* Danish */
- 0x416, /* Portuguese */
- 0x414, /* Norwegian */
-/*10*/ 0x40d, /* Hebrew */
- 0x411, /* Japanese */
- 0x401, /* Arabic */
- 0x40b, /* Finnish */
- 0x408, /* Greek */
- 0x40f, /* Icelandic */
- 0x43a, /* Maltese */
- 0x41f, /* Turkish */
- 0x41a, /* Croatian */
- 0x404, /* Traditional Chinese */
-/*20*/ 0x420, /* Urdu */
- 0x439, /* Hindi */
- 0x41e, /* Thai */
- 0x412, /* Korean */
- 0x427, /* Lithuanian */
- 0x415, /* Polish */
- 0x40e, /* Hungarian */
- 0x425, /* Estonian */
- 0x426, /* Latvian */
- 0x43b, /* Sami (Lappish) */
-/*30*/ 0x438, /* Faroese (Icelandic) */
- 0x429, /* Farsi/Persian */
- 0x419, /* Russian */
- 0x804, /* Simplified Chinese */
- 0x813, /* Flemish */
- 0x43c, /* Irish Gaelic */
- 0x41c, /* albanian */
- 0x418, /* Romanian */
- 0x405, /* Czech */
- 0x41b, /* Slovak */
-/*40*/ 0x424, /* Slovenian */
- 0x43d, /* Yiddish */
- 0xc1a, /* Serbian */
- 0x42f, /* Macedonian */
- 0x402, /* Bulgarian */
- 0x422, /* Ukrainian */
- 0x423, /* Byelorussian */
- 0x843, /* Uzbek */
- 0x43f, /* Kazakh */
- 0x42c, /* Azerbaijani (Cyrillic) */
-/*50*/ 0x82c, /* Azerbaijani (Arabic) */
- 0x42b, /* Armenian */
- 0x437, /* Georgian */
- 0x818, /* Moldavian */
- 0x440, /* Kirghiz */
- 0x428, /* Tajiki */
- 0x442, /* Turkmen */
- 0x450, /* Mongolian (Mongolian) */
- 0x850, /* Mongolian (cyrillic) */
- 0x463, /* Pashto */
-/*60*/ 0xffff, /* Kurdish */
- 0x860, /* Kashmiri */
- 0x459, /* Sindhi */
- 0xffff, /* Tibetan */
- 0x461, /* Nepali */
- 0x43b, /* Sanskrit */
- 0x44e, /* Marathi */
- 0x445, /* Bengali */
- 0x44d, /* Assamese */
- 0x447, /* Gujarati */
-/*70*/ 0x446, /* Punjabi */
- 0x448, /* Oriya */
- 0x44c, /* Malayalam */
- 0x44b, /* Kannada */
- 0x449, /* Tamil */
- 0x44a, /* Telugu */
- 0x45b, /* Sinhalese */
- 0x455, /* Burmese */
- 0x453, /* Khmer */
- 0x454, /* Lao */
-/*80*/ 0x42a, /* Vietnamese */
- 0x421, /* Indonesian */
- 0x464, /* Tagalog */
- 0x43e, /* Malay (latin) */
- 0x83e, /* Malay (arabic) */
- 0x45e, /* Amharic */
- 0x473, /* Tigrinya */
- 0x472, /* Galla, oromo, afan */
- 0x477, /* Somali */
- 0x441, /* Swahili */
-/*90*/ 0xffff, /* Kinyarwanda/Ruanda */
- 0xffff, /* Rundi/Kirundi */
- 0xffff, /* Nyanja/Chewa */
- 0xffff, /* Malagasy */
-/*94*/ 0xffff, /* Esperanto */
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
-/*100*/ 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
-/*110*/ 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
-/*120*/ 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
- 0xffff,
-/*128*/ 0x452, /* Welsh */
- 0x42d, /* Basque */
-/*130*/ 0x403, /* Catalan */
- 0x476, /* Latin */
- 0xffff, /* Quechua */
- 0x474, /* Guarani */
- 0xffff, /* Aymara */
- 0x444, /* Tatar */
- 0xffff, /* Uighur */
- 0xffff, /* Dzongkha/Bhutani */
- 0xffff, /* Javanese (roman) */
- 0xffff, /* Sundanese (roman) */
-/*140*/ 0x456, /* Galician */
- 0x436, /* Afrikaans */
- 0xffff, /* Breton */
- 0x45d, /* Inuktitut */
- 0x43c, /* Scottish Gaelic */
- 0xc3c, /* Manx Gaelic */
- 0x83c, /* Irish Gaelic (with dot) */
- 0xffff, /* Tongan */
- 0xffff, /* Greek (polytonic) */
- 0xffff, /* Greenlandic */ /* Presumably icelandic? */
-/*150*/ 0x42c, /* Azebaijani (roman) */
- 0xffff
-};
-
-char *Utf8ToMacStr(const char *ustr,int macenc,int maclang) {
- char *ret, *rpt;
- const unichar_t *table;
- int i, ch;
-
- if ( ustr==NULL )
-return( NULL );
-
- if ( macenc==sm_japanese || macenc==sm_korean || macenc==sm_tradchinese ||
- macenc == sm_simpchinese ) {
- Encoding *enc = FindOrMakeEncoding(macenc==sm_japanese ? "Sjis" :
- macenc==sm_korean ? "EUC-KR" :
- macenc==sm_tradchinese ? "Big5" :
- "EUC-CN" );
- iconv_t fromutf8;
- ICONV_CONST char *in;
- char *out;
- size_t inlen, outlen;
- if ( enc==NULL )
-return( NULL );
- fromutf8 = iconv_open(enc->iconv_name!=NULL?enc->iconv_name:enc->enc_name,"UTF-8");
- if ( fromutf8==(iconv_t) -1 || fromutf8==NULL )
-return( NULL );
- in = (char *) ustr;
- inlen = strlen(ustr);
- outlen = sizeof(unichar_t)*strlen(ustr);
- out = ret = malloc(outlen+sizeof(unichar_t));
- iconv(fromutf8,&in,&inlen,&out,&outlen);
- out[0] = out[1] = '\0';
- out[2] = out[3] = '\0';
- iconv_close(fromutf8);
-return( ret );
- }
-
- table = macencodings[macenc];
-
- if ( maclang==15 /* Icelandic */ ||
- maclang==30 /* Faroese */ ||
- maclang==149 /* Greenlandic */ )
- table = iceland;
- else if ( maclang == 17 /* turkish */ )
- table = turkish;
- else if ( maclang == 18 /* croatian */ )
- table = croatian;
- else if ( maclang == 37 /* romanian */ )
- table = romanian;
- else if ( maclang == 31 /* Farsi/Persian */ )
- table = farsi;
-
- if ( table==NULL )
-return( NULL );
-
- ret = malloc(strlen(ustr)+1);
- for ( rpt = ret; (ch=utf8_ildb(&ustr)); ) {
- for ( i=0; i<256; ++i )
- if ( table[i]==ch ) {
- *rpt++ = i;
- break;
- }
- }
- *rpt = '\0';
-return( ret );
-}
-
-uint8 MacEncFromMacLang(int maclang) {
- if ( maclang<0 || maclang>=sizeof(_MacScriptFromLanguage)/sizeof(_MacScriptFromLanguage[0]))
-return( 0xff );
-
-return( _MacScriptFromLanguage[maclang] );
-}
-
-uint16 WinLangToMac(int winlang) {
- int i;
-
- for ( i=0; i<sizeof(_WinLangFromMac)/sizeof(_WinLangFromMac[0]); ++i )
- if ( _WinLangFromMac[i] == winlang )
-return( i );
-
- winlang &= 0xff;
- for ( i=0; i<sizeof(_WinLangFromMac)/sizeof(_WinLangFromMac[0]); ++i )
- if ( (_WinLangFromMac[i]&0xff) == winlang )
-return( i );
-
-return( 0xffff );
-}
-
-MacFeat *FindMacFeature(SplineFont *sf, int feat, MacFeat **secondary) {
- MacFeat *from_f, *from_p;
-
- for ( from_f = sf->features; from_f!=NULL && from_f->feature!=feat; from_f=from_f->next );
- for ( from_p = default_mac_feature_map; from_p!=NULL && from_p->feature!=feat; from_p=from_p->next );
- if ( from_f!=NULL ) {
- if ( secondary!=NULL ) *secondary = from_p;
-return( from_f );
- }
- if ( secondary!=NULL ) *secondary = NULL;
-return( from_p );
-}
-
-struct macsetting *FindMacSetting(SplineFont *sf, int feat, int set,
- struct macsetting **secondary) {
- MacFeat *from_f, *from_p;
- struct macsetting *s_f, *s_p;
-
- if ( sf!=NULL )
- for ( from_f = sf->features; from_f!=NULL && from_f->feature!=feat; from_f=from_f->next );
- else
- from_f = NULL;
- for ( from_p = default_mac_feature_map; from_p!=NULL && from_p->feature!=feat; from_p=from_p->next );
- s_f = s_p = NULL;
- if ( from_f!=NULL )
- for ( s_f = from_f->settings; s_f!=NULL && s_f->setting!=set; s_f=s_f->next );
- if ( from_p!=NULL )
- for ( s_p = from_p->settings; s_p!=NULL && s_p->setting!=set; s_p=s_p->next );
- if ( s_f!=NULL ) {
- if ( secondary!=NULL ) *secondary = s_p;
-return( s_f );
- }
- if ( secondary!=NULL ) *secondary = NULL;
-return( s_p );
-}
-
-struct macsettingname macfeat_otftag[] = {
- { 1, 0, CHR('r','l','i','g') }, /* Required ligatures */
- { 1, 2, CHR('l','i','g','a') }, /* Common ligatures */
- { 1, 4, CHR('d','l','i','g') }, /* rare ligatures => discretionary */
- /* { 1, 4, CHR('h','l','i','g') }, /\* rare ligatures => historic *\/ */
- /* { 1, 4, CHR('a','l','i','g') }, /\* rare ligatures => ?ancient? *\/ */
- /* 2, 1, partially connected cursive */
- { 2, 2, CHR('i','s','o','l') }, /* Arabic forms */
- { 2, 2, CHR('c','a','l','t') }, /* ??? */
- /* 3, 1, all caps */
- /* 3, 2, all lower */
- { 3, 3, CHR('s','m','c','p') }, /* small caps */
- /* 3, 4, initial caps */
- /* 3, 5, initial caps, small caps */
- { 4, 0, CHR('v','r','t','2') }, /* vertical forms => vertical rotation */
- /* { 4, 0, CHR('v','k','n','a') }, /\* vertical forms => vertical kana *\/ */
- { 6, 0, CHR('t','n','u','m') }, /* monospace numbers => Tabular numbers */
- { 10, 1, CHR('s','u','p','s') }, /* superior vertical position => superscript */
- { 10, 2, CHR('s','u','b','s') }, /* inferior vertical position => subscript */
- /* { 10, 3, CHR('s','u','p','s') }, /\* ordinal vertical position => superscript *\/ */
- { 11, 1, CHR('a','f','r','c') }, /* vertical fraction => fraction ligature */
- { 11, 2, CHR('f','r','a','c') }, /* diagonal fraction => fraction ligature */
- { 16, 1, CHR('o','r','n','m') }, /* vertical fraction => fraction ligature */
- { 20, 0, CHR('t','r','a','d') }, /* traditional characters => traditional forms */
- /* { 20, 0, CHR('t','n','a','m') }, /\* traditional characters => traditional names *\/ */
- { 20, 1, CHR('s','m','p','l') }, /* simplified characters */
- { 20, 2, CHR('j','p','7','8') }, /* jis 1978 */
- { 20, 3, CHR('j','p','8','3') }, /* jis 1983 */
- { 20, 4, CHR('j','p','9','0') }, /* jis 1990 */
- { 21, 0, CHR('o','n','u','m') }, /* lower case number => old style numbers */
- { 22, 0, CHR('p','w','i','d') }, /* proportional text => proportional widths */
- { 22, 2, CHR('h','w','i','d') }, /* half width text => half widths */
- { 22, 3, CHR('f','w','i','d') }, /* full width text => full widths */
- { 25, 0, CHR('f','w','i','d') }, /* full width kana => full widths */
- { 25, 1, CHR('p','w','i','d') }, /* proportional kana => proportional widths */
- { 26, 0, CHR('f','w','i','d') }, /* full width ideograph => full widths */
- { 26, 1, CHR('p','w','i','d') }, /* proportional ideograph => proportional widths */
- { 103, 0, CHR('h','w','i','d') }, /* half width cjk roman => half widths */
- { 103, 1, CHR('p','w','i','d') }, /* proportional cjk roman => proportional widths */
- { 103, 3, CHR('f','w','i','d') }, /* full width cjk roman => full widths */
- { 0, 0, 0 }
-}, *user_macfeat_otftag;
-
-static struct macname fs_names[] = {
- { &fs_names[146], 0, 0, "All Typographic Features" },
- { &fs_names[147], 0, 0, "All Type Features" },
- { &fs_names[148], 0, 0, "Ligatures" },
- { &fs_names[149], 0, 0, "Required Ligatures" },
- { &fs_names[150], 0, 0, "Common Ligatures" },
- { &fs_names[151], 0, 0, "Rare Ligatures" },
- { &fs_names[152], 0, 0, "Logo Ligatures" },
- { &fs_names[153], 0, 0, "Rebus Ligatures" },
- { &fs_names[154], 0, 0, "Diphthong Ligatures" },
- { &fs_names[155], 0, 0, "Squared Ligatures" },
- { &fs_names[156], 0, 0, "Abbreviated Squared Ligatures" },
- { &fs_names[157], 0, 0, "Cursive connection" },
- { &fs_names[158], 0, 0, "Unconnected" },
- { &fs_names[159], 0, 0, "Partially connected" },
- { &fs_names[160], 0, 0, "Cursive" },
- { &fs_names[161], 0, 0, "Letter Case" },
- { &fs_names[162], 0, 0, "Upper & Lower Case" },
- { &fs_names[163], 0, 0, "All Capitals" },
- { &fs_names[164], 0, 0, "All Lower Case" },
- { &fs_names[165], 0, 0, "Small Caps" },
- { &fs_names[166], 0, 0, "Initial Caps" },
- { &fs_names[167], 0, 0, "Initial and Small Caps" },
- { &fs_names[168], 0, 0, "Vertical Substitution" },
- { &fs_names[169], 0, 0, "Vertical Substitution" },
- { &fs_names[170], 0, 0, "No Vertical Substitution" },
- { &fs_names[171], 0, 0, "Linguistic Rearrangement" },
- { &fs_names[172], 0, 0, "Linguistic Rearrangement" },
- { &fs_names[173], 0, 0, "No Linguistic Rearrangement" },
- { &fs_names[174], 0, 0, "Number Spacing" },
- { &fs_names[175], 0, 0, "Monospaced Numbers" },
- { &fs_names[176], 0, 0, "Proportional Numbers" },
- { &fs_names[177], 0, 0, "Smart Swashes" },
- { &fs_names[178], 0, 0, "Word Initial Swashes" },
- { &fs_names[179], 0, 0, "Word Final Swashes" },
- { &fs_names[180], 0, 0, "Line Initial Swashes" },
- { &fs_names[181], 0, 0, "Line Final Swashes" },
- { &fs_names[182], 0, 0, "Non-Final Swashes" },
- { &fs_names[183], 0, 0, "Diacritics" },
- { &fs_names[184], 0, 0, "Show Diacritics" },
- { &fs_names[185], 0, 0, "Hide Diacritics" },
- { &fs_names[186], 0, 0, "Decompose Diacritics" },
- { &fs_names[187], 0, 0, "Vertical Position" },
- { &fs_names[188], 0, 0, "Normal Vertical Position" },
- { &fs_names[189], 0, 0, "Superiors" },
- { &fs_names[190], 0, 0, "Inferiors" },
- { &fs_names[191], 0, 0, "Ordinals" },
- { &fs_names[192], 0, 0, "Fractions" },
- { &fs_names[193], 0, 0, "No Fractions" },
- { &fs_names[194], 0, 0, "Vertical Fractions" },
- { &fs_names[195], 0, 0, "Diagonal Fractions" },
- { &fs_names[196], 0, 0, "Overlapping Characters" },
- { &fs_names[197], 0, 0, "Prevent Overlap" },
- { &fs_names[198], 0, 0, "Allow Overlap" },
- { &fs_names[199], 0, 0, "Typographic Extras" },
- { &fs_names[200], 0, 0, "Hyphens to Em-dash" },
- { &fs_names[201], 0, 0, "Hyphen to En-dash" },
- { &fs_names[202], 0, 0, "Unslashed Zero" },
- { &fs_names[203], 0, 0, "Form Interrobang" },
- { &fs_names[204], 0, 0, "Smart Quotes" },
- { &fs_names[205], 0, 0, "Periods to Ellipsis" },
- { &fs_names[206], 0, 0, "Mathematical Extras" },
- { &fs_names[207], 0, 0, "Hyphen to Minus" },
- { &fs_names[208], 0, 0, "Asterisk to Multiply" },
- { &fs_names[209], 0, 0, "Slash to Divide" },
- { &fs_names[210], 0, 0, "Inequality Ligatures" },
- { &fs_names[211], 0, 0, "Exponents" },
- { &fs_names[212], 0, 0, "Ornament Sets" },
- { &fs_names[213], 0, 0, "No Ornaments" },
- { &fs_names[214], 0, 0, "Dingbats" },
- { &fs_names[215], 0, 0, "Pi Characters" },
- { &fs_names[216], 0, 0, "Fleurons" },
- { &fs_names[217], 0, 0, "Decorative Borders" },
- { &fs_names[218], 0, 0, "International Symbols" },
- { &fs_names[219], 0, 0, "Math Symbols" },
- { &fs_names[220], 0, 0, "Character Alternates" },
- { &fs_names[221], 0, 0, "No Alternates" },
- { &fs_names[222], 0, 0, "Alternate Characters" },
- { &fs_names[223], 0, 0, "Other Alternates" },
- { &fs_names[224], 0, 0, "Design Complexity" },
- { &fs_names[225], 0, 0, "Design Level 1" },
- { &fs_names[226], 0, 0, "Design Level 2" },
- { &fs_names[227], 0, 0, "Design Level 3" },
- { &fs_names[228], 0, 0, "Design Level 4" },
- { &fs_names[229], 0, 0, "Design Level 5" },
- { &fs_names[230], 0, 0, "Style Options" },
- { &fs_names[231], 0, 0, "No Style Options" },
- { &fs_names[232], 0, 0, "Display Text" },
- { &fs_names[233], 0, 0, "Engraved Text" },
- { &fs_names[234], 0, 0, "Illuminated Caps" },
- { &fs_names[235], 0, 0, "Titling Caps" },
- { &fs_names[236], 0, 0, "Tall Caps" },
- { &fs_names[237], 0, 0, "Character Shape" },
- { &fs_names[238], 0, 0, "Traditional" },
- { &fs_names[239], 0, 0, "Simplified" },
- { &fs_names[240], 0, 0, "jis 1978" },
- { &fs_names[241], 0, 0, "jis 1983" },
- { &fs_names[242], 0, 0, "jis 1990" },
- { &fs_names[243], 0, 0, "Traditional Alt 1" },
- { &fs_names[244], 0, 0, "Traditional Alt 2" },
- { &fs_names[245], 0, 0, "Traditional Alt 3" },
- { &fs_names[246], 0, 0, "Traditional Alt 4" },
- { &fs_names[247], 0, 0, "Traditional Alt 5" },
- { &fs_names[248], 0, 0, "Expert" },
- { &fs_names[249], 0, 0, "Number Case" },
- { &fs_names[250], 0, 0, "Lower Case Numbers" },
- { &fs_names[251], 0, 0, "Upper Case Numbers" },
- { &fs_names[252], 0, 0, "Text Spacing" },
- { &fs_names[253], 0, 0, "Proportional" },
- { &fs_names[254], 0, 0, "Monospace" },
- { &fs_names[255], 0, 0, "Transliteration" },
- { &fs_names[256], 0, 0, "No Transliteration" },
- { &fs_names[257], 0, 0, "Hanja To Hangul" },
- { &fs_names[258], 0, 0, "Hiragana to Katakana" },
- { &fs_names[259], 0, 0, "Katakana to Hiragana" },
- { &fs_names[260], 0, 0, "Katakana to Roman" },
- { &fs_names[261], 0, 0, "Roman to Hiragana" },
- { &fs_names[262], 0, 0, "Roman to Katakana" },
- { &fs_names[263], 0, 0, "Hanja To Hangul Alt 1" },
- { &fs_names[264], 0, 0, "Hanja To Hangul Alt 2" },
- { &fs_names[265], 0, 0, "Hanja To Hangul Alt 3" },
- { &fs_names[266], 0, 0, "Annotation" },
- { &fs_names[267], 0, 0, "No Annotation" },
- { &fs_names[268], 0, 0, "Box Annotation" },
- { &fs_names[269], 0, 0, "Rounded Box Annotation" },
- { &fs_names[270], 0, 0, "Circle Annotation" },
- { &fs_names[271], 0, 0, "Inverted Circle Annotation" },
- { &fs_names[272], 0, 0, "Parenthesized Annotation" },
- { &fs_names[273], 0, 0, "Period Annotation" },
- { &fs_names[274], 0, 0, "Roman Numeral Annotation" },
- { &fs_names[275], 0, 0, "Diamond Annotation" },
- { &fs_names[276], 0, 0, "Kana Spacing" },
- { &fs_names[277], 0, 0, "Full-Width" },
- { &fs_names[278], 0, 0, "Proportional" },
- { &fs_names[136], 0, 0, "Ideographic Spacing" },
- { &fs_names[137], 0, 0, "Full-Width" },
- { &fs_names[138], 0, 0, "Proportional" },
- { &fs_names[279], 0, 0, "Ideographic Spacing" },
- { &fs_names[280], 0, 0, "Full-Width" },
- { &fs_names[281], 0, 0, "Proportional" },
- { &fs_names[282], 0, 0, "CJK Roman Spacing" },
- { &fs_names[283], 0, 0, "Half-Width" },
- { &fs_names[284], 0, 0, "Proportional" },
- { &fs_names[285], 0, 0, "Default" },
- { &fs_names[286], 0, 0, "Full-Width" },
- { &fs_names[287], 0, 0, "Unicode Decomposition" },
- { &fs_names[288], 0, 0, "Canonical Decomposition" },
- { &fs_names[289], 0, 1, "Fonctions typographiques" },
- { &fs_names[290], 0, 1, "Toutes fonctions typographiques" },
- { &fs_names[291], 0, 1, "Ligatures" },
- { &fs_names[397], 0, 1, "Ligatures Requises" },
- { &fs_names[292], 0, 1, "Ligatures Usuelles" },
- { &fs_names[293], 0, 1, "Ligatures Rares" },
- { &fs_names[400], 0, 1, "Ligatures Logos" },
- { &fs_names[401], 0, 1, "Ligatures R\216bus" },
- { &fs_names[334], 0, 1, "Ligatures Diphtongues" },
- { &fs_names[403], 0, 1, "Ligatures Carr\216es" },
- { &fs_names[404], 0, 1, "Ligatures Carr\216es Abr\217g\216es" },
- { &fs_names[405], 0, 1, "Connection des Cursives" },
- { &fs_names[406], 0, 1, "Non connect\216es" },
- { &fs_names[407], 0, 1, "Partiellement connect\216es" },
- { &fs_names[408], 0, 1, "Pleinement connect\216es" },
- { &fs_names[409], 0, 1, "Casse" },
- { &fs_names[295], 0, 1, "Majuscules & Minuscules" },
- { &fs_names[296], 0, 1, "Tout Majuscule" },
- { &fs_names[412], 0, 1, "Tout Minuscule" },
- { &fs_names[297], 0, 1, "Petites Majuscules" },
- { &fs_names[414], 0, 1, "Initiales Majuscules" },
- { &fs_names[415], 0, 1, "Initiales + Petites Majuscules" },
- { &fs_names[416], 0, 1, "Substitution Verticale" },
- { &fs_names[417], 0, 1, "Substitution vertical" },
- { &fs_names[418], 0, 1, "Aucun Substitution vertical" },
- { &fs_names[419], 0, 1, "R\216arrangement Linguistique" },
- { &fs_names[420], 0, 1, "Avec R\216arrangement Linguistique" },
- { &fs_names[421], 0, 1, "Pas de R\216arrangement Linguistique" },
- { &fs_names[422], 0, 1, "Espacement des chiffres" },
- { &fs_names[299], 0, 1, "Chiffres de largeur fixe" },
- { &fs_names[300], 0, 1, "Chiffres Proportionnels" },
- { &fs_names[301], 0, 1, "Parafes" },
- { &fs_names[304], 0, 1, "Parafes en d\216but de mot" },
- { &fs_names[305], 0, 1, "Parafes en fin de mot" },
- { &fs_names[303], 0, 1, "Parafes en d\216but de ligne" },
- { &fs_names[302], 0, 1, "Parafes en fin de ligne" },
- { &fs_names[306], 0, 1, "Autres Parafes" },
- { &fs_names[431], 0, 1, "Signes Diacritiques" },
- { &fs_names[339], 0, 1, "Montrer les Signes Diacritiques" },
- { &fs_names[433], 0, 1, "Cacher les Signes Diacritiques" },
- { &fs_names[337], 0, 1, "D\216composer les Signes Diacritiques" },
- { &fs_names[435], 0, 1, "Position Verticale" },
- { &fs_names[309], 0, 1, "Position Verticale Normale" },
- { &fs_names[308], 0, 1, "Position Sup\216rieure" },
- { &fs_names[310], 0, 1, "Position Inf\216rieure" },
- { &fs_names[311], 0, 1, "Position Sup\216rieure Contextuelle (Num\216rique)" },
- { &fs_names[440], 0, 1, "Fractions" },
- { &fs_names[313], 0, 1, "Pas de Fractions" },
- { &fs_names[442], 0, 1, "Fractions Verticales" },
- { &fs_names[314], 0, 1, "Fractions en Diagonale" },
- { &fs_names[444], 0, 1, "Chevauchement des caract\217res" },
- { &fs_names[316], 0, 1, "\203viter le chevauchement" },
- { &fs_names[446], 0, 1, "Laisser le Chevauchement" },
- { &fs_names[317], 0, 1, "Extras Typographiques" },
- { &fs_names[448], 0, 1, "Tirets vers Tiret Large" },
- { &fs_names[449], 0, 1, "Tiret vers Tiret Moyen" },
- { &fs_names[450], 0, 1, "Z\216ro non Barr\216" },
- { &fs_names[451], 0, 1, "?! vers InterroExclam" },
- { &fs_names[336], 0, 1, "Apostrophes Intelligentes" },
- { &fs_names[453], 0, 1, "... vers Ellipse" },
- { &fs_names[318], 0, 1, "Extras Math\216matiques" },
- { &fs_names[319], 0, 1, "Tiret vers Moins" },
- { &fs_names[320], 0, 1, "\203toile vers Multipli\216" },
- { &fs_names[457], 0, 1, "Barre pench\216e vers Divis\216" },
- { &fs_names[458], 0, 1, "Ligatures pour In\216galit\216s" },
- { &fs_names[459], 0, 1, "Passage en Exposant" },
- { &fs_names[460], 0, 1, "Ensembles Ornementaux" },
- { &fs_names[322], 0, 1, "Pas d'Ornements" },
- { &fs_names[462], 0, 1, "Dingbats" },
- { &fs_names[463], 0, 1, "Symboles Sp\216cifiques \210 un Domaine" },
- { &fs_names[323], 0, 1, "Fleurons" },
- { &fs_names[465], 0, 1, "Bordures D\216coratives" },
- { &fs_names[466], 0, 1, "Symboles Internationaux" },
- { &fs_names[467], 0, 1, "Symboles Math\216matiques" },
- { &fs_names[468], 0, 1, "Caract\217res Alternatifs" },
- { &fs_names[325], 0, 1, "Sans Caract\217res Alternatifs" },
- { &fs_names[470], 0, 1, "Avec Caract\217res Alternatifs" },
- { &fs_names[471], 0, 1, "Autres Caract\217res Alternatifs" },
- { &fs_names[472], 0, 1, "Complexit\216 du Dessin" },
- { &fs_names[327], 0, 1, "Dessin Niveau 1" },
- { &fs_names[328], 0, 1, "Dessin Niveau 2" },
- { &fs_names[329], 0, 1, "Dessin Niveau 3" },
- { &fs_names[330], 0, 1, "Dessin Niveau 4" },
- { &fs_names[477], 0, 1, "Dessin Niveau 5" },
- { &fs_names[478], 0, 1, "Options de Style" },
- { &fs_names[479], 0, 1, "Texte Ordinaire" },
- { &fs_names[480], 0, 1, "Texte Majeur" },
- { &fs_names[481], 0, 1, "Texte en Relief" },
- { &fs_names[482], 0, 1, "Majuscules Enlumin\216es" },
- { &fs_names[483], 0, 1, "Majuscules de Titrage" },
- { &fs_names[484], 0, 1, "Majuscules avec Descendantes" },
- { &fs_names[485], 0, 1, "Forme des Caract\217res" },
- { &fs_names[486], 0, 1, "Traditionelle" },
- { &fs_names[487], 0, 1, "Simplifi\216e" },
- { &fs_names[488], 0, 1, "jis 1978" },
- { &fs_names[489], 0, 1, "jis 1983" },
- { &fs_names[490], 0, 1, "jis 1990" },
- { &fs_names[491], 0, 1, "Traditionelle Alt 1" },
- { &fs_names[492], 0, 1, "Traditionelle Alt 2" },
- { &fs_names[493], 0, 1, "Traditionelle Alt 3" },
- { &fs_names[494], 0, 1, "Traditionelle Alt 4" },
- { &fs_names[495], 0, 1, "Traditionelle Alt 5" },
- { &fs_names[496], 0, 1, "Expert" },
- { &fs_names[497], 0, 1, "Style des Chiffres" },
- { &fs_names[332], 0, 1, "Chiffres Anciens (bas de casse)" },
- { &fs_names[333], 0, 1, "Chiffres Conventionnels (alignants)" },
- { &fs_names[500], 0, 1, "Espacement du Texte" },
- { &fs_names[501], 0, 1, "Proportionel" },
- { &fs_names[502], 0, 1, "Fixe" },
- { &fs_names[503], 0, 1, "Translitt\216ration" },
- { &fs_names[504], 0, 1, "Sans Translitt\216ration" },
- { &fs_names[505], 0, 1, "Hanja vers Hangul" },
- { &fs_names[506], 0, 1, "Hiragana vers Katakana" },
- { &fs_names[507], 0, 1, "Katakana vers Hiragana" },
- { &fs_names[508], 0, 1, "Katakana vers Roman" },
- { &fs_names[509], 0, 1, "Roman vers Hiragana" },
- { &fs_names[510], 0, 1, "Roman vers Katakana" },
- { &fs_names[511], 0, 1, "Hanja vers Hangul Alt 1" },
- { &fs_names[512], 0, 1, "Hanja vers Hangul Alt 2" },
- { &fs_names[513], 0, 1, "Hanja vers Hangul Alt 3" },
- { &fs_names[514], 0, 1, "Annotations" },
- { &fs_names[515], 0, 1, "Sans Annotations" },
- { &fs_names[516], 0, 1, "Annotations Encadr\216es" },
- { &fs_names[517], 0, 1, "Annotations en Cadres arrondis" },
- { &fs_names[518], 0, 1, "Annotations dans des Cercles" },
- { &fs_names[519], 0, 1, "Annotations dans des Cercles inverses" },
- { &fs_names[520], 0, 1, "Annotations Parenth\217s\216es" },
- { &fs_names[521], 0, 1, "Annotations avec des ." },
- { &fs_names[522], 0, 1, "Annotations en Chiffres Romains" },
- { &fs_names[523], 0, 1, "Annotations Diamant" },
- { &fs_names[524], 0, 1, "Espacement Kana" },
- { &fs_names[525], 0, 1, "Pleine Taille" },
- { &fs_names[526], 0, 1, "Proportionnel" },
- { &fs_names[527], 0, 1, "Espacement des Id\216ogrammes" },
- { &fs_names[528], 0, 1, "Pleine Taille" },
- { &fs_names[529], 0, 1, "Proportionnel" },
- { &fs_names[533], 0, 1, "Espacement des CJK romains" },
- { &fs_names[534], 0, 1, "Pleine Taille" },
- { &fs_names[535], 0, 1, "Proportionnel" },
- { &fs_names[536], 0, 1, "Romains par D\216faut" },
- { &fs_names[537], 0, 1, "Romains Pleine Taille" },
- { &fs_names[340], 0, 1, "D\216composition Unicode" },
- { &fs_names[341], 0, 1, "D\216composition Canonique" },
- { &fs_names[342], 0, 2, "Alle typografischen M\232glichkeiten" },
- { &fs_names[343], 0, 2, "Alle Auszeichnungsarten" },
- { &fs_names[344], 0, 2, "Ligaturen" },
- { &fs_names[346], 0, 2, "Normale Ligaturen" },
- { &fs_names[345], 0, 2, "Seltene Ligaturen" },
- { &fs_names[347], 0, 2, "Schreibweise" },
- { &fs_names[348], 0, 2, "Gro\247/Klein" },
- { &fs_names[349], 0, 2, "Gro\247" },
- { &fs_names[350], 0, 2, "Kapit\212lchen" },
- { &fs_names[351], 0, 2, "Ziffernabst\212nde" },
- { &fs_names[352], 0, 2, "Tabellenziffern" },
- { &fs_names[353], 0, 2, "Proportionalziffern" },
- { &fs_names[354], 0, 2, "Zierbuchstabe" },
- { &fs_names[355], 0, 2, "Zierbuchstabe Zeilenende" },
- { &fs_names[356], 0, 2, "Zierbuchstabe Zeilenanfang" },
- { &fs_names[357], 0, 2, "Zierbuchstabe Wortanfang" },
- { &fs_names[358], 0, 2, "Zierbuchstabe Wortende" },
- { &fs_names[359], 0, 2, "Zierbuchstabe Beliebig" },
- { &fs_names[360], 0, 2, "Hoch-/Tiefstellen" },
- { &fs_names[361], 0, 2, "Hochgestellt" },
- { &fs_names[362], 0, 2, "Normal" },
- { &fs_names[363], 0, 2, "Tiefgestellt" },
- { &fs_names[364], 0, 2, "Ordnungszahlen" },
- { &fs_names[365], 0, 2, "Br\237che" },
- { &fs_names[367], 0, 2, "Kein Bruche" },
- { &fs_names[366], 0, 2, "Diagonaler Bruch" },
- { &fs_names[368], 0, 2, "\206berlappen" },
- { &fs_names[369], 0, 2, "\206berlappen vermeiden" },
- { &fs_names[335], 0, 2, "Typographische Extras" },
- { &fs_names[370], 0, 2, "Mathematische Sonderzeichen" },
- { &fs_names[371], 0, 2, "Minuszeichen" },
- { &fs_names[372], 0, 2, "Malzeichen" },
- { &fs_names[373], 0, 2, "Sonderzeichen" },
- { &fs_names[374], 0, 2, "Keine Sonderzeichen" },
- { &fs_names[375], 0, 2, "Pflanzenornamente" },
- { &fs_names[376], 0, 2, "Alternative Zeichen" },
- { &fs_names[377], 0, 2, "Keine Alternativ-Figuren" },
- { &fs_names[378], 0, 2, "Modifikationsgrad" },
- { &fs_names[379], 0, 2, "Design Stufe 1" },
- { &fs_names[380], 0, 2, "Design Stufe 2" },
- { &fs_names[381], 0, 2, "Design Stufe 3" },
- { &fs_names[382], 0, 2, "Design Stufe 4" },
- { &fs_names[383], 0, 2, "Zahlendarstellung" },
- { &fs_names[384], 0, 2, "Medi\276val-Ziffern" },
- { &fs_names[385], 0, 2, "Normale Ziffern" },
- { &fs_names[386], 0, 2, "Diphtong Ligaturen" },
- { &fs_names[387], 0, 2, "Typografische Extras" },
- { &fs_names[388], 0, 2, "Ersetzen mit geschwungenen Anf\237hrungszeichen" },
- { &fs_names[389], 0, 2, "Keine Ver\212nderung" },
- { &fs_names[390], 0, 2, "Diakritische Zeichen" },
- { &fs_names[391], 0, 2, "Diakritische Zeichen zeigen" },
- { &fs_names[392], 0, 2, "In Unicode zerlegen" },
- { &fs_names[393], 0, 2, "anerkannte Komposition" },
- { &fs_names[394], 0, 3, "Funzioni Tipografiche" },
- { &fs_names[395], 0, 3, "Tutte le Funzioni" },
- { &fs_names[396], 0, 3, "Legature" },
- { &fs_names[399], 0, 3, "Legature Rare" },
- { &fs_names[398], 0, 3, "Legature pi\235 Comuni" },
- { NULL, 0, 3, "Maiuscolo o Minuscolo" },
- { &fs_names[410], 0, 3, "Maiuscolo & minuscolo" },
- { &fs_names[411], 0, 3, "Tutto in Maiuscolo" },
- { &fs_names[413], 0, 3, "Maiuscoletto" },
- { NULL, 0, 3, "Spaziatura numeri" },
- { &fs_names[423], 0, 3, "Monospaziata" },
- { &fs_names[424], 0, 3, "Proporzionale" },
- { &fs_names[425], 0, 3, "Lettere Ornate" },
- { &fs_names[429], 0, 3, "Fine Riga" },
- { &fs_names[428], 0, 3, "Inizio Riga" },
- { &fs_names[426], 0, 3, "All'inizio" },
- { &fs_names[427], 0, 3, "Alla Fine" },
- { &fs_names[430], 0, 3, "All'interno" },
- { NULL, 0, 3, "Posizione Verticale" },
- { &fs_names[437], 0, 3, "Apice" },
- { &fs_names[436], 0, 3, "Posizione Normale" },
- { &fs_names[438], 0, 3, "Pedice" },
- { &fs_names[439], 0, 3, "Ordinali" },
- { NULL, 0, 3, "Frazioni" },
- { &fs_names[443], 0, 3, "Frazioni Diagonali" },
- { &fs_names[441], 0, 3, "Nessuna Frazione" },
- { NULL, 0, 3, "Caratteri Sovrapposti" },
- { &fs_names[445], 0, 3, "Nessuna Sovrapposizione" },
- { &fs_names[454], 0, 3, "Conversioni Matematiche" },
- { &fs_names[455], 0, 3, "Trattino per Sottrazione" },
- { &fs_names[456], 0, 3, "Asterisco per Moltiplicazione" },
- { NULL, 0, 3, "Impostazione Ornamenti" },
- { &fs_names[461], 0, 3, "Nessun Ornamento" },
- { &fs_names[464], 0, 3, "Fleurons" },
- { NULL, 0, 3, "Caratteri Alternativi" },
- { &fs_names[469], 0, 3, "Nessuna alternativa" },
- { NULL, 0, 3, "Design Complexity" },
- { &fs_names[473], 0, 3, "Livello 1" },
- { &fs_names[474], 0, 3, "Livello 2" },
- { &fs_names[475], 0, 3, "Livello 3" },
- { &fs_names[476], 0, 3, "Livello 4" },
- { NULL, 0, 3, "Posizione Numeri" },
- { &fs_names[498], 0, 3, "Sopra la Linea Base" },
- { &fs_names[499], 0, 3, "Tradizionale" },
- { &fs_names[402], 0, 3, "Legature dittonghi" },
- { &fs_names[447], 0, 3, "Extra tipografici" },
- { &fs_names[452], 0, 3, "Virgolette eleganti" },
- { &fs_names[434], 0, 3, "Nessuna modifica" },
- { NULL, 0, 3, "Diacritici" },
- { &fs_names[432], 0, 3, "Mostra diacritici" },
- { &fs_names[538], 0, 3, "Scomposizione unicode" },
- { &fs_names[539], 0, 3, "Composizione canonica" },
- { NULL, 0, 4, "Alle typografische kenmerken" },
- { NULL, 0, 4, "Alle typekenmerken" },
- { NULL, 0, 4, "Ligaturen" },
- { NULL, 0, 4, "Vereiste ligaturen" },
- { NULL, 0, 4, "Gemeenschappelijke Ligaturen" },
- { NULL, 0, 4, "Zeldzame ligaturen" },
- { NULL, 0, 4, "Logoligaturen" },
- { NULL, 0, 4, "Rebusligaturen" },
- { NULL, 0, 4, "Tweeklankligaturen" },
- { NULL, 0, 4, "Vierkante ligaturen" },
- { NULL, 0, 4, "Afgekorte vierkante ligatures" },
- { NULL, 0, 4, "Cursieve verbinding" },
- { NULL, 0, 4, "Niet verbonden" },
- { NULL, 0, 4, "Gedeeltelijk verbonden" },
- { NULL, 0, 4, "Cursief" },
- { NULL, 0, 4, "Hoofd/kleine letters" },
- { NULL, 0, 4, "Hoofd- en kleine letters" },
- { NULL, 0, 4, "Alles in hoofdletters" },
- { NULL, 0, 4, "Alles in kleine letters" },
- { NULL, 0, 4, "Kleine hoofdletters" },
- { NULL, 0, 4, "Eerste hoofdletters" },
- { NULL, 0, 4, "Eerste en kleine hoofdletters" },
- { NULL, 0, 4, "Verticale vervanging" },
- { NULL, 0, 4, "Verticale vervanging" },
- { NULL, 0, 4, "Geen verticale vervanging" },
- { NULL, 0, 4, "Taalkundige herschikking" },
- { NULL, 0, 4, "Taalkundige herschikking" },
- { NULL, 0, 4, "Geen taalkundige herschikking" },
- { NULL, 0, 4, "Nummerafstanden" },
- { NULL, 0, 4, "Vaste nummerafstanden" },
- { NULL, 0, 4, "Proportionele nummers" },
- { NULL, 0, 4, "Slimme versieringingen" },
- { NULL, 0, 4, "Woordbegin-versieringingen" },
- { NULL, 0, 4, "Woordeinde-versieringingen" },
- { NULL, 0, 4, "Regelbegin-versieringingen" },
- { NULL, 0, 4, "Regeleinde-versieringingen" },
- { NULL, 0, 4, "Niet-einde-versieringingen" },
- { NULL, 0, 4, "Accenten" },
- { NULL, 0, 4, "Accenten tonen" },
- { NULL, 0, 4, "Accenten verbergen" },
- { NULL, 0, 4, "Accenten ontleden" },
- { NULL, 0, 4, "Verticale positie" },
- { NULL, 0, 4, "Normale verticale positie" },
- { NULL, 0, 4, "Superieuren" },
- { NULL, 0, 4, "Inferieuren" },
- { NULL, 0, 4, "Ordinalen" },
- { NULL, 0, 4, "Breuken" },
- { NULL, 0, 4, "Geen breuken" },
- { NULL, 0, 4, "Verticale breuken" },
- { NULL, 0, 4, "Diagonale breuken" },
- { NULL, 0, 4, "Overlappende tekens" },
- { NULL, 0, 4, "Overlap voorkomen" },
- { NULL, 0, 4, "Overlap toestaan" },
- { NULL, 0, 4, "Typografische extras" },
- { NULL, 0, 4, "Koppelteken naar em-streep" },
- { NULL, 0, 4, "Koppelteken naar en-streepje" },
- { NULL, 0, 4, "Nul zonder schuine streep" },
- { NULL, 0, 4, "Vorm interrobang" },
- { NULL, 0, 4, "Slimme aanhalingstekens" },
- { NULL, 0, 4, "Punten naar ellipsen" },
- { NULL, 0, 4, "Wiskundige extras" },
- { NULL, 0, 4, "Koppelteken naar minteken" },
- { NULL, 0, 4, "Sterretje naar multiplicatieteken" },
- { NULL, 0, 4, "Schuine streep naar deelteken" },
- { NULL, 0, 4, "Ongelijkheidsligaturen" },
- { NULL, 0, 4, "Exponenten aan" },
- { NULL, 0, 4, "Ornamentenverzamelingen" },
- { NULL, 0, 4, "Geen ornamenten" },
- { NULL, 0, 4, "Dingbats" },
- { NULL, 0, 4, "Pi-tekens" },
- { NULL, 0, 4, "Fleurons" },
- { NULL, 0, 4, "Decoratieve randen" },
- { NULL, 0, 4, "Internationale symbolen" },
- { NULL, 0, 4, "Wiskundige Symbolen" },
- { NULL, 0, 4, "Tekenalternatieven" },
- { NULL, 0, 4, "Geen alternatieven" },
- { NULL, 0, 4, "Alternatieve tekens" },
- { NULL, 0, 4, "Andere alternatieven" },
- { NULL, 0, 4, "Ontwepcomplexiteit" },
- { NULL, 0, 4, "Ontwerpniveau 1" },
- { NULL, 0, 4, "Ontwerpniveau 2" },
- { NULL, 0, 4, "Ontwerpniveau 3" },
- { NULL, 0, 4, "Ontwerpniveau 4" },
- { NULL, 0, 4, "Ontwerpniveau 5" },
- { NULL, 0, 4, "Stijlopties" },
- { NULL, 0, 4, "Geen stijl ptions" },
- { NULL, 0, 4, "Tekst tonen" },
- { NULL, 0, 4, "Gegraveerde tekst" },
- { NULL, 0, 4, "Uitgelichte koppen" },
- { NULL, 0, 4, "Titelkoppen" },
- { NULL, 0, 4, "Eindkoppen" },
- { NULL, 0, 4, "Tekenvorm" },
- { NULL, 0, 4, "Traditioneel" },
- { NULL, 0, 4, "Vereenvoudigd" },
- { NULL, 0, 4, "jis 1978" },
- { NULL, 0, 4, "jis 1983" },
- { NULL, 0, 4, "jis 1990" },
- { NULL, 0, 4, "Traditioneel Alt 1" },
- { NULL, 0, 4, "Traditioneel Alt 2" },
- { NULL, 0, 4, "Traditioneel Alt 3" },
- { NULL, 0, 4, "Traditioneel Alt 4" },
- { NULL, 0, 4, "Traditioneel Alt 5" },
- { NULL, 0, 4, "Expert" },
- { NULL, 0, 4, "Nummerhoogte" },
- { NULL, 0, 4, "Kleine nummers" },
- { NULL, 0, 4, "Grote nummers" },
- { NULL, 0, 4, "TekstspatiQring" },
- { NULL, 0, 4, "Proportioneel" },
- { NULL, 0, 4, "Gelijk gespatieerd" },
- { NULL, 0, 4, "Transliteratie" },
- { NULL, 0, 4, "Geen transliteratie" },
- { NULL, 0, 4, "Hanja naar Hangul" },
- { NULL, 0, 4, "Hiragana naar Katakana" },
- { NULL, 0, 4, "Katakana naar Hiragana" },
- { NULL, 0, 4, "Katakana naar Romeins" },
- { NULL, 0, 4, "Romeins naar Hiragana" },
- { NULL, 0, 4, "Romeins naar Katakana" },
- { NULL, 0, 4, "Hanja naar Hangul Alt 1" },
- { NULL, 0, 4, "Hanja naar Hangul Alt 2" },
- { NULL, 0, 4, "Hanja naar Hangul Alt 3" },
- { NULL, 0, 4, "Annotatie" },
- { NULL, 0, 4, "Geen annotatie" },
- { NULL, 0, 4, "Vierkantannotatie" },
- { NULL, 0, 4, "Ronde-vierkantannotatie" },
- { NULL, 0, 4, "Cirkelannotatie" },
- { NULL, 0, 4, "Omgekeerde cirkelannotatie" },
- { NULL, 0, 4, "Aanhalingstekenannotatie" },
- { NULL, 0, 4, "Puntannotatie" },
- { NULL, 0, 4, "Romeinse-cijferannotatie" },
- { NULL, 0, 4, "Diamantannotatie" },
- { NULL, 0, 4, "Kana spatiQring" },
- { NULL, 0, 4, "Volledige breedte" },
- { NULL, 0, 4, "Proportioneel" },
- { &fs_names[530], 0, 4, "Ideographische spatiQring" },
- { &fs_names[531], 0, 4, "Volledige breedte" },
- { &fs_names[532], 0, 4, "Proportioneel" },
- { NULL, 0, 4, "IdeograafspatiQring" },
- { NULL, 0, 4, "Volledige breedte" },
- { NULL, 0, 4, "Proportioneel" },
- { NULL, 0, 4, "CJK Romeinse spatiQring" },
- { NULL, 0, 4, "Halve breedte" },
- { NULL, 0, 4, "Proportioneel" },
- { NULL, 0, 4, "Default" },
- { NULL, 0, 4, "Volledige breedte" },
- { NULL, 0, 4, "Unicodeontleding" },
- { NULL, 0, 4, "Canonieke ontleding" },
- { NULL, 0, 0, NULL }
-};
-
-static struct macsetting fs_settings[] = {
- { NULL, 0, 0, &fs_names[1], 0 },
- { NULL, 14, 0, &fs_names[10], 0 },
- { &fs_settings[1], 12, 0, &fs_names[9], 0 },
- { &fs_settings[2], 10, 0, &fs_names[8], 0 },
- { &fs_settings[3], 8, 0, &fs_names[7], 0 },
- { &fs_settings[4], 6, 0, &fs_names[6], 0 },
- { &fs_settings[5], 4, 0, &fs_names[5], 0 },
- { &fs_settings[6], 2, 0, &fs_names[4], 1 },
- { &fs_settings[7], 0, 0, &fs_names[3], 1 },
- { NULL, 2, 0, &fs_names[14], 0 },
- { &fs_settings[9], 1, 0, &fs_names[13], 0 },
- { &fs_settings[10], 0, 0, &fs_names[12], 1 },
- { NULL, 5, 0, &fs_names[21], 0 },
- { &fs_settings[12], 4, 0, &fs_names[20], 0 },
- { &fs_settings[13], 3, 0, &fs_names[19], 0 },
- { &fs_settings[14], 2, 0, &fs_names[18], 0 },
- { &fs_settings[15], 1, 0, &fs_names[17], 0 },
- { &fs_settings[16], 0, 0, &fs_names[16], 1 },
- { NULL, 1, 0, &fs_names[24], 0 },
- { &fs_settings[18], 0, 0, &fs_names[23], 1 },
- { NULL, 1, 0, &fs_names[27], 0 },
- { &fs_settings[20], 0, 0, &fs_names[26], 1 },
- { NULL, 1, 0, &fs_names[30], 0 },
- { &fs_settings[22], 0, 0, &fs_names[29], 1 },
- { NULL, 8, 0, &fs_names[36], 0 },
- { &fs_settings[24], 6, 0, &fs_names[35], 0 },
- { &fs_settings[25], 4, 0, &fs_names[34], 0 },
- { &fs_settings[26], 2, 0, &fs_names[33], 0 },
- { &fs_settings[27], 0, 0, &fs_names[32], 0 },
- { NULL, 2, 0, &fs_names[40], 0 },
- { &fs_settings[29], 1, 0, &fs_names[39], 0 },
- { &fs_settings[30], 0, 0, &fs_names[38], 1 },
- { NULL, 3, 0, &fs_names[45], 0 },
- { &fs_settings[32], 2, 0, &fs_names[44], 0 },
- { &fs_settings[33], 1, 0, &fs_names[43], 0 },
- { &fs_settings[34], 0, 0, &fs_names[42], 1 },
- { NULL, 2, 0, &fs_names[49], 0 },
- { &fs_settings[36], 1, 0, &fs_names[48], 0 },
- { &fs_settings[37], 0, 0, &fs_names[47], 1 },
- { NULL, 1, 0, &fs_names[52], 0 },
- { &fs_settings[39], 0, 0, &fs_names[51], 1 },
- { NULL, 10, 0, &fs_names[59], 0 },
- { &fs_settings[41], 8, 0, &fs_names[58], 0 },
- { &fs_settings[42], 6, 0, &fs_names[57], 0 },
- { &fs_settings[43], 4, 0, &fs_names[56], 0 },
- { &fs_settings[44], 2, 0, &fs_names[55], 0 },
- { &fs_settings[45], 0, 0, &fs_names[54], 0 },
- { NULL, 8, 0, &fs_names[65], 0 },
- { &fs_settings[47], 6, 0, &fs_names[64], 0 },
- { &fs_settings[48], 4, 0, &fs_names[63], 0 },
- { &fs_settings[49], 2, 0, &fs_names[62], 0 },
- { &fs_settings[50], 0, 0, &fs_names[61], 0 },
- { NULL, 6, 0, &fs_names[73], 0 },
- { &fs_settings[52], 5, 0, &fs_names[72], 0 },
- { &fs_settings[53], 4, 0, &fs_names[71], 0 },
- { &fs_settings[54], 3, 0, &fs_names[70], 0 },
- { &fs_settings[55], 2, 0, &fs_names[69], 0 },
- { &fs_settings[56], 1, 0, &fs_names[68], 0 },
- { &fs_settings[57], 0, 0, &fs_names[67], 1 },
- { NULL, 2, 0, &fs_names[77], 0 },
- { &fs_settings[59], 1, 0, &fs_names[76], 0 },
- { &fs_settings[60], 0, 0, &fs_names[75], 1 },
- { NULL, 4, 0, &fs_names[83], 0 },
- { &fs_settings[62], 3, 0, &fs_names[82], 0 },
- { &fs_settings[63], 2, 0, &fs_names[81], 0 },
- { &fs_settings[64], 1, 0, &fs_names[80], 0 },
- { &fs_settings[65], 0, 0, &fs_names[79], 1 },
- { NULL, 5, 0, &fs_names[90], 0 },
- { &fs_settings[67], 4, 0, &fs_names[89], 0 },
- { &fs_settings[68], 3, 0, &fs_names[88], 0 },
- { &fs_settings[69], 2, 0, &fs_names[87], 0 },
- { &fs_settings[70], 1, 0, &fs_names[86], 0 },
- { &fs_settings[71], 0, 0, &fs_names[85], 1 },
- { NULL, 10, 0, &fs_names[102], 0 },
- { &fs_settings[73], 9, 0, &fs_names[101], 0 },
- { &fs_settings[74], 8, 0, &fs_names[100], 0 },
- { &fs_settings[75], 7, 0, &fs_names[99], 0 },
- { &fs_settings[76], 6, 0, &fs_names[98], 0 },
- { &fs_settings[77], 5, 0, &fs_names[97], 0 },
- { &fs_settings[78], 4, 0, &fs_names[96], 0 },
- { &fs_settings[79], 3, 0, &fs_names[95], 0 },
- { &fs_settings[80], 2, 0, &fs_names[94], 0 },
- { &fs_settings[81], 1, 0, &fs_names[93], 0 },
- { &fs_settings[82], 0, 0, &fs_names[92], 1 },
- { NULL, 1, 0, &fs_names[105], 1 },
- { &fs_settings[84], 0, 0, &fs_names[104], 0 },
- { NULL, 1, 0, &fs_names[108], 0 },
- { &fs_settings[86], 0, 0, &fs_names[107], 1 },
- { NULL, 9, 0, &fs_names[119], 0 },
- { &fs_settings[88], 8, 0, &fs_names[118], 0 },
- { &fs_settings[89], 7, 0, &fs_names[117], 0 },
- { &fs_settings[90], 6, 0, &fs_names[116], 0 },
- { &fs_settings[91], 5, 0, &fs_names[115], 0 },
- { &fs_settings[92], 4, 0, &fs_names[114], 0 },
- { &fs_settings[93], 3, 0, &fs_names[113], 0 },
- { &fs_settings[94], 2, 0, &fs_names[112], 0 },
- { &fs_settings[95], 1, 0, &fs_names[111], 0 },
- { &fs_settings[96], 0, 0, &fs_names[110], 1 },
- { NULL, 8, 0, &fs_names[129], 0 },
- { &fs_settings[98], 7, 0, &fs_names[128], 0 },
- { &fs_settings[99], 6, 0, &fs_names[127], 0 },
- { &fs_settings[100], 5, 0, &fs_names[126], 0 },
- { &fs_settings[101], 4, 0, &fs_names[125], 0 },
- { &fs_settings[102], 3, 0, &fs_names[124], 0 },
- { &fs_settings[103], 2, 0, &fs_names[123], 0 },
- { &fs_settings[104], 1, 0, &fs_names[122], 0 },
- { &fs_settings[105], 0, 0, &fs_names[121], 1 },
- { NULL, 1, 0, &fs_names[132], 0 },
- { &fs_settings[107], 0, 0, &fs_names[131], 1 },
- { NULL, 1, 0, &fs_names[135], 0 },
- { &fs_settings[109], 0, 0, &fs_names[134], 1 },
- { NULL, 0, 0, &fs_names[145], 0 },
- { NULL, 3, 0, &fs_names[143], 0 },
- { &fs_settings[112], 2, 0, &fs_names[142], 0 },
- { &fs_settings[113], 1, 0, &fs_names[141], 0 },
- { &fs_settings[114], 0, 0, &fs_names[140], 1 },
- { NULL, 0, 0, NULL, 0 }
-};
-
-static MacFeat fs_features[] = {
- { NULL, 103, 1, 0, 0, &fs_names[139], &fs_settings[115] },
- { &fs_features[0], 27, 0, 0, 0, &fs_names[144], &fs_settings[111] },
- { &fs_features[1], 26, 1, 0, 0, &fs_names[133], &fs_settings[110] },
- { &fs_features[2], 25, 1, 0, 0, &fs_names[130], &fs_settings[108] },
- { &fs_features[3], 24, 1, 0, 0, &fs_names[120], &fs_settings[106] },
- { &fs_features[4], 23, 1, 0, 0, &fs_names[109], &fs_settings[97] },
- { &fs_features[5], 22, 1, 0, 0, &fs_names[106], &fs_settings[87] },
- { &fs_features[6], 21, 1, 1, 0, &fs_names[103], &fs_settings[85] },
- { &fs_features[7], 20, 1, 0, 0, &fs_names[91], &fs_settings[83] },
- { &fs_features[8], 19, 1, 0, 0, &fs_names[84], &fs_settings[72] },
- { &fs_features[9], 18, 1, 0, 0, &fs_names[78], &fs_settings[66] },
- { &fs_features[10], 17, 1, 0, 0, &fs_names[74], &fs_settings[61] },
- { &fs_features[11], 16, 1, 0, 0, &fs_names[66], &fs_settings[58] },
- { &fs_features[12], 15, 0, 0, 0, &fs_names[60], &fs_settings[51] },
- { &fs_features[13], 14, 0, 0, 0, &fs_names[53], &fs_settings[46] },
- { &fs_features[14], 13, 1, 0, 0, &fs_names[50], &fs_settings[40] },
- { &fs_features[15], 11, 1, 0, 0, &fs_names[46], &fs_settings[38] },
- { &fs_features[16], 10, 1, 0, 0, &fs_names[41], &fs_settings[35] },
- { &fs_features[17], 9, 1, 0, 0, &fs_names[37], &fs_settings[31] },
- { &fs_features[18], 8, 0, 0, 0, &fs_names[31], &fs_settings[28] },
- { &fs_features[19], 6, 1, 0, 0, &fs_names[28], &fs_settings[23] },
- { &fs_features[20], 5, 1, 0, 0, &fs_names[25], &fs_settings[21] },
- { &fs_features[21], 4, 1, 0, 0, &fs_names[22], &fs_settings[19] },
- { &fs_features[22], 3, 1, 0, 0, &fs_names[15], &fs_settings[17] },
- { &fs_features[23], 2, 1, 0, 0, &fs_names[11], &fs_settings[11] },
- { &fs_features[24], 1, 0, 0, 0, &fs_names[2], &fs_settings[8] },
- { &fs_features[25], 0, 0, 0, 0, &fs_names[0], &fs_settings[0] },
- { NULL, 0, 0, 0, 0, NULL, NULL }
-};
-
-MacFeat *default_mac_feature_map = &fs_features[26],
- *builtin_mac_feature_map=&fs_features[26],
- *user_mac_feature_map;
-
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/mathconstants.c b/dviware/dvisvgm/libs/ff-woff/fontforge/mathconstants.c
deleted file mode 100644
index 5becd180f0..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/mathconstants.c
+++ /dev/null
@@ -1,99 +0,0 @@
-/* Copyright (C) 2007-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include <stddef.h>
-#include "fontforgevw.h"
-#ifdef __need_size_t
-/* This is a bug on the mac, someone defines this and leaves it defined */
-/* that means when I load stddef.h it only defines size_t and doesn't */
-/* do offset_of, which is what I need */
-# undef __need_size_t
-#endif
-
-#define MCD(name) { #name, offsetof(struct MATH,name), -1 }
-#define MCDD(name,devtab_name) { #name, offsetof(struct MATH,name), offsetof(struct MATH,devtab_name) }
-
-struct math_constants_descriptor math_constants_descriptor[] = {
- MCD(ScriptPercentScaleDown),
- MCD(ScriptScriptPercentScaleDown),
- MCD(DelimitedSubFormulaMinHeight),
- MCD(DisplayOperatorMinHeight),
- MCDD(MathLeading,MathLeading_adjust),
- MCDD(AxisHeight,AxisHeight_adjust),
- MCDD(AccentBaseHeight,AccentBaseHeight_adjust),
- MCDD(FlattenedAccentBaseHeight,FlattenedAccentBaseHeight_adjust),
- MCDD(SubscriptShiftDown,SubscriptShiftDown_adjust),
- MCDD(SubscriptTopMax,SubscriptTopMax_adjust),
- MCDD(SubscriptBaselineDropMin,SubscriptBaselineDropMin_adjust),
- MCDD(SuperscriptShiftUp,SuperscriptShiftUp_adjust),
- MCDD(SuperscriptShiftUpCramped,SuperscriptShiftUpCramped_adjust),
- MCDD(SuperscriptBottomMin,SuperscriptBottomMin_adjust),
- MCDD(SuperscriptBaselineDropMax,SuperscriptBaselineDropMax_adjust),
- MCDD(SubSuperscriptGapMin,SubSuperscriptGapMin_adjust),
- MCDD(SuperscriptBottomMaxWithSubscript,SuperscriptBottomMaxWithSubscript_adjust),
- MCDD(SpaceAfterScript,SpaceAfterScript_adjust),
- MCDD(UpperLimitGapMin,UpperLimitGapMin_adjust),
- MCDD(UpperLimitBaselineRiseMin,UpperLimitBaselineRiseMin_adjust),
- MCDD(LowerLimitGapMin,LowerLimitGapMin_adjust),
- MCDD(LowerLimitBaselineDropMin,LowerLimitBaselineDropMin_adjust),
- MCDD(StackTopShiftUp,StackTopShiftUp_adjust),
- MCDD(StackTopDisplayStyleShiftUp,StackTopDisplayStyleShiftUp_adjust),
- MCDD(StackBottomShiftDown,StackBottomShiftDown_adjust),
- MCDD(StackBottomDisplayStyleShiftDown,StackBottomDisplayStyleShiftDown_adjust),
- MCDD(StackGapMin,StackGapMin_adjust),
- MCDD(StackDisplayStyleGapMin,StackDisplayStyleGapMin_adjust),
- MCDD(StretchStackTopShiftUp,StretchStackTopShiftUp_adjust),
- MCDD(StretchStackBottomShiftDown,StretchStackBottomShiftDown_adjust),
- MCDD(StretchStackGapAboveMin,StretchStackGapAboveMin_adjust),
- MCDD(StretchStackGapBelowMin,StretchStackGapBelowMin_adjust),
- MCDD(FractionNumeratorShiftUp,FractionNumeratorShiftUp_adjust),
- MCDD(FractionNumeratorDisplayStyleShiftUp,FractionNumeratorDisplayStyleShiftUp_adjust),
- MCDD(FractionDenominatorShiftDown,FractionDenominatorShiftDown_adjust),
- MCDD(FractionDenominatorDisplayStyleShiftDown,FractionDenominatorDisplayStyleShiftDown_adjust),
- MCDD(FractionNumeratorGapMin,FractionNumeratorGapMin_adjust),
- MCDD(FractionNumeratorDisplayStyleGapMin,FractionNumeratorDisplayStyleGapMin_adjust),
- MCDD(FractionRuleThickness,FractionRuleThickness_adjust),
- MCDD(FractionDenominatorGapMin,FractionDenominatorGapMin_adjust),
- MCDD(FractionDenominatorDisplayStyleGapMin,FractionDenominatorDisplayStyleGapMin_adjust),
- MCDD(SkewedFractionHorizontalGap,SkewedFractionHorizontalGap_adjust),
- MCDD(SkewedFractionVerticalGap,SkewedFractionVerticalGap_adjust),
- MCDD(OverbarVerticalGap,OverbarVerticalGap_adjust),
- MCDD(OverbarRuleThickness,OverbarRuleThickness_adjust),
- MCDD(OverbarExtraAscender,OverbarExtraAscender_adjust),
- MCDD(UnderbarVerticalGap,UnderbarVerticalGap_adjust),
- MCDD(UnderbarRuleThickness,UnderbarRuleThickness_adjust),
- MCDD(UnderbarExtraDescender,UnderbarExtraDescender_adjust),
- MCDD(RadicalVerticalGap,RadicalVerticalGap_adjust),
- MCDD(RadicalDisplayStyleVerticalGap,RadicalDisplayStyleVerticalGap_adjust),
- MCDD(RadicalRuleThickness,RadicalRuleThickness_adjust),
- MCDD(RadicalExtraAscender,RadicalExtraAscender_adjust),
- MCDD(RadicalKernBeforeDegree,RadicalKernBeforeDegree_adjust),
- MCDD(RadicalKernAfterDegree,RadicalKernAfterDegree_adjust),
- MCD(RadicalDegreeBottomRaisePercent),
- MCD(MinConnectorOverlap),
- MATH_CONSTANTS_DESCRIPTOR_EMPTY
-};
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/memory.c b/dviware/dvisvgm/libs/ff-woff/fontforge/memory.c
deleted file mode 100644
index cbe850140c..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/memory.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include <stdio.h>
-#include <string.h>
-#include "ustring.h"
-
-char *copy(const char *str) {
- return str ? strdup(str) : NULL;
-}
-
-char *copyn(const char *str,long n) {
- /**
- * MIQ: Note that there is at least one site that relies on
- * copyn copying up to n bytes including embedded nulls.
- * So using strndup() doesn't provide the same outcomes
- * to that code.
- * https://github.com/fontforge/fontforge/issues/1239
- */
- char *ret;
- if ( str==NULL )
- return( NULL );
-
- ret = (char *) malloc(n+1);
- memcpy(ret,str,n);
- ret[n]='\0';
- return( ret );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/mm.c b/dviware/dvisvgm/libs/ff-woff/fontforge/mm.c
deleted file mode 100644
index 4de1319bfa..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/mm.c
+++ /dev/null
@@ -1,307 +0,0 @@
-/* Copyright (C) 2003-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-#include "ttf.h"
-
-/******************************************************************************/
-/* MM Validation */
-/******************************************************************************/
-
-static int ContourCount(SplineChar *sc) {
- SplineSet *spl;
- int i;
-
- for ( spl=sc->layers[ly_fore].splines, i=0; spl!=NULL; spl=spl->next, ++i );
-return( i );
-}
-
-static int ContourPtMatch(SplineChar *sc1, SplineChar *sc2) {
- SplineSet *spl1, *spl2;
- SplinePoint *sp1, *sp2;
-
- for ( spl1=sc1->layers[ly_fore].splines, spl2=sc2->layers[ly_fore].splines; spl1!=NULL && spl2!=NULL; spl1=spl1->next, spl2=spl2->next ) {
- for ( sp1=spl1->first, sp2 = spl2->first; ; ) {
- if ( sp1->nonextcp!=sp2->nonextcp || sp1->noprevcp!=sp2->noprevcp )
-return( false );
- if ( sp1->next==NULL || sp2->next==NULL ) {
- if ( sp1->next==NULL && sp2->next==NULL )
- break;
-return( false );
- }
- sp1 = sp1->next->to; sp2 = sp2->next->to;
- if ( sp1==spl1->first || sp2==spl2->first ) {
- if ( sp1==spl1->first && sp2==spl2->first )
- break;
-return( false );
- }
- }
- }
-return( true );
-}
-
-static int ContourDirMatch(SplineChar *sc1, SplineChar *sc2) {
- SplineSet *spl1, *spl2;
-
- for ( spl1=sc1->layers[ly_fore].splines, spl2=sc2->layers[ly_fore].splines; spl1!=NULL && spl2!=NULL; spl1=spl1->next, spl2=spl2->next ) {
- if ( SplinePointListIsClockwise(spl1)!=SplinePointListIsClockwise(spl2) )
-return( false );
- }
-return( true );
-}
-
-static int ContourHintMaskMatch(SplineChar *sc1, SplineChar *sc2) {
- SplineSet *spl1, *spl2;
- SplinePoint *sp1, *sp2;
-
- for ( spl1=sc1->layers[ly_fore].splines, spl2=sc2->layers[ly_fore].splines; spl1!=NULL && spl2!=NULL; spl1=spl1->next, spl2=spl2->next ) {
- for ( sp1=spl1->first, sp2 = spl2->first; ; ) {
- if ( (sp1->hintmask==NULL)!=(sp2->hintmask==NULL) )
-return( false );
- if ( sp1->hintmask!=NULL && memcmp(sp1->hintmask,sp2->hintmask,sizeof(HintMask))!=0 )
-return( false );
- if ( sp1->next==NULL || sp2->next==NULL ) {
- if ( sp1->next==NULL && sp2->next==NULL )
- break;
-return( false );
- }
- sp1 = sp1->next->to; sp2 = sp2->next->to;
- if ( sp1==spl1->first || sp2==spl2->first ) {
- if ( sp1==spl1->first && sp2==spl2->first )
- break;
-return( false );
- }
- }
- }
-return( true );
-}
-
-static int RefMatch(SplineChar *sc1, SplineChar *sc2) {
- RefChar *ref1, *ref2;
- /* I don't require the reference list to be ordered */
-
- for ( ref1=sc1->layers[ly_fore].refs, ref2=sc2->layers[ly_fore].refs; ref1!=NULL && ref2!=NULL; ref1=ref1->next, ref2=ref2->next )
- ref2->checked = false;
- if ( ref1!=NULL || ref2!=NULL )
-return( false );
-
- for ( ref1=sc1->layers[ly_fore].refs; ref1!=NULL ; ref1=ref1->next ) {
- for ( ref2=sc2->layers[ly_fore].refs; ref2!=NULL ; ref2=ref2->next ) {
- if ( ref2->sc->orig_pos==ref1->sc->orig_pos && !ref2->checked )
- break;
- }
- if ( ref2==NULL )
-return( false );
- ref2->checked = true;
- }
-
-return( true );
-}
-
-static int RefTransformsMatch(SplineChar *sc1, SplineChar *sc2) {
- /* Apple only provides a means to change the translation of a reference */
- /* so if rotation, skewing, scaling, etc. differ then we can't deal with */
- /* it. */
- RefChar *r1 = sc1->layers[ly_fore].refs;
- RefChar *r2 = sc2->layers[ly_fore].refs;
-
- while ( r1!=NULL && r2!=NULL ) {
- if ( r1->transform[0]!=r2->transform[0] ||
- r1->transform[1]!=r2->transform[1] ||
- r1->transform[2]!=r2->transform[2] ||
- r1->transform[3]!=r2->transform[3] )
-return( false );
- r1 = r1->next;
- r2 = r2->next;
- }
-return( true );
-}
-
-static int HintsMatch(StemInfo *h1,StemInfo *h2) {
- while ( h1!=NULL && h2!=NULL ) {
- h1 = h1->next;
- h2 = h2->next;
- }
-return ( h1==NULL && h2==NULL );
-}
-
-static int KernsMatch(SplineChar *sc1, SplineChar *sc2) {
- /* I don't require the kern list to be ordered */
- /* Only interested in kerns that go into afm files (ie. no kernclasses) */
- KernPair *k1, *k2;
-
- for ( k1=sc1->kerns, k2=sc2->kerns; k1!=NULL && k2!=NULL; k1=k1->next, k2=k2->next )
- k2->kcid = false;
- if ( k1!=NULL || k2!=NULL )
-return( false );
-
- for ( k1=sc1->kerns; k1!=NULL ; k1=k1->next ) {
- for ( k2=sc2->kerns; k2!=NULL ; k2=k2->next ) {
- if ( k2->sc->orig_pos==k1->sc->orig_pos && !k2->kcid )
- break;
- }
- if ( k2==NULL )
-return( false );
- k2->kcid = true;
- }
-
-return( true );
-}
-
-static int ArrayCount(char *val) {
- char *end;
- int cnt;
-
- if ( val==NULL )
-return( 0 );
- while ( *val==' ' ) ++val;
- if ( *val=='[' ) ++val;
- cnt=0;
- while ( *val ) {
- strtod(val,&end);
- if ( val==end )
- break;
- ++cnt;
- val = end;
- }
-return( cnt );
-}
-
-int MMValid(MMSet *mm,int complain) {
- int i, j;
- SplineFont *sf;
- static char *arrnames[] = { "BlueValues", "OtherBlues", "FamilyBlues", "FamilyOtherBlues", "StdHW", "StdVW", "StemSnapH", "StemSnapV", NULL };
-
- if ( mm==NULL )
-return( false );
-
- for ( i=0; i<mm->instance_count; ++i )
- if ( mm->instances[i]->layers[ly_fore].order2 != mm->apple ) {
-return( false );
- }
-
- sf = mm->apple ? mm->normal : mm->instances[0];
-
- if ( !mm->apple && PSDictHasEntry(sf->private,"ForceBold")!=NULL &&
- PSDictHasEntry(mm->normal->private,"ForceBoldThreshold")==NULL) {
-return( false );
- }
-
- for ( j=mm->apple ? 0 : 1; j<mm->instance_count; ++j ) {
- if ( sf->glyphcnt!=mm->instances[j]->glyphcnt ) {
-return( false );
- } else if ( sf->layers[ly_fore].order2!=mm->instances[j]->layers[ly_fore].order2 ) {
-return( false );
- }
- if ( !mm->apple ) {
- if ( PSDictHasEntry(mm->instances[j]->private,"ForceBold")!=NULL &&
- PSDictHasEntry(mm->normal->private,"ForceBoldThreshold")==NULL) {
-return( false );
- }
- for ( i=0; arrnames[i]!=NULL; ++i ) {
- if ( ArrayCount(PSDictHasEntry(mm->instances[j]->private,arrnames[i]))!=
- ArrayCount(PSDictHasEntry(sf->private,arrnames[i])) ) {
-return( false );
- }
- }
- }
- }
-
- for ( i=0; i<sf->glyphcnt; ++i ) {
- for ( j=mm->apple?0:1; j<mm->instance_count; ++j ) {
- if ( SCWorthOutputting(sf->glyphs[i])!=SCWorthOutputting(mm->instances[j]->glyphs[i]) ) {
-return( false );
- }
- }
- if ( SCWorthOutputting(sf->glyphs[i]) ) {
- if ( mm->apple && sf->glyphs[i]->layers[ly_fore].refs!=NULL && sf->glyphs[i]->layers[ly_fore].splines!=NULL ) {
-return( false );
- }
- for ( j=mm->apple?0:1; j<mm->instance_count; ++j ) {
- if ( mm->apple && mm->instances[j]->glyphs[i]->layers[ly_fore].refs!=NULL &&
- mm->instances[j]->glyphs[i]->layers[ly_fore].splines!=NULL ) {
-return( false );
- }
- if ( ContourCount(sf->glyphs[i])!=ContourCount(mm->instances[j]->glyphs[i])) {
-return( false );
- } else if ( !mm->apple && !ContourPtMatch(sf->glyphs[i],mm->instances[j]->glyphs[i])) {
-return( false );
- } else if ( !ContourDirMatch(sf->glyphs[i],mm->instances[j]->glyphs[i])) {
-return( false );
- } else if ( !RefMatch(sf->glyphs[i],mm->instances[j]->glyphs[i])) {
-return( false );
- } else if ( mm->apple && !RefTransformsMatch(sf->glyphs[i],mm->instances[j]->glyphs[i])) {
-return( false );
- } else if ( !mm->apple && !KernsMatch(sf->glyphs[i],mm->instances[j]->glyphs[i])) {
-return( false );
- }
- }
- if ( mm->apple && !ContourPtNumMatch(mm,i)) {
-return( false );
- }
- if ( !mm->apple ) {
- for ( j=1; j<mm->instance_count; ++j ) {
- if ( !HintsMatch(sf->glyphs[i]->hstem,mm->instances[j]->glyphs[i]->hstem)) {
-return( false );
- } else if ( !HintsMatch(sf->glyphs[i]->vstem,mm->instances[j]->glyphs[i]->vstem)) {
-return( false );
- }
- }
- for ( j=1; j<mm->instance_count; ++j ) {
- if ( !ContourHintMaskMatch(sf->glyphs[i],mm->instances[j]->glyphs[i])) {
-return( false );
- }
- }
- }
- }
- }
- if ( mm->apple ) {
- struct ttf_table *cvt;
- for ( cvt = mm->normal->ttf_tables; cvt!=NULL && cvt->tag!=CHR('c','v','t',' '); cvt=cvt->next );
- if ( cvt==NULL ) {
- for ( j=0; j<mm->instance_count; ++j ) {
- if ( mm->instances[j]->ttf_tables!=NULL ) {
-return( false );
- }
- }
- } else {
- /* Not all instances are required to have cvts, but any that do */
- /* must be the same size */
- for ( j=0; j<mm->instance_count; ++j ) {
- if ( mm->instances[j]->ttf_tables!=NULL &&
- (mm->instances[j]->ttf_tables->next!=NULL ||
- mm->instances[j]->ttf_tables->tag!=CHR('c','v','t',' '))) {
-return( false );
- }
- if ( mm->instances[j]->ttf_tables!=NULL &&
- mm->instances[j]->ttf_tables->len!=cvt->len ) {
-return( false );
- }
- }
- }
- }
-return( true );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/namehash.h b/dviware/dvisvgm/libs/ff-woff/fontforge/namehash.h
deleted file mode 100644
index 925019e295..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/namehash.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Copyright (C) 2009-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _NAMEHASH_H
-# define _NAMEHASH_H
-
-#define GN_HSIZE 257
-
-struct glyphnamebucket {
- SplineChar *sc;
- struct glyphnamebucket *next;
- const char *name;
-};
-
-struct glyphnamehash {
- struct glyphnamebucket *table[GN_HSIZE];
-};
-
-#ifndef __GNUC__
-# define __inline__
-#endif
-
-static __inline__ int hashname(const char *pt) {
- int val = 0;
-
- while ( *pt ) {
- val = (val<<3)|((val>>29)&0x7);
- val ^= (unsigned char)(*pt-'!');
- pt++;
- }
- val ^= (val>>16);
- val &= 0xffff;
- val %= GN_HSIZE;
-return( val );
-}
-
-extern void __GlyphHashFree(struct glyphnamehash *hash);
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/namelist.c b/dviware/dvisvgm/libs/ff-woff/fontforge/namelist.c
deleted file mode 100644
index 3a6e5b252c..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/namelist.c
+++ /dev/null
@@ -1,19965 +0,0 @@
-/* -*- coding: utf-8 -*- */
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "fontforgevw.h"
-#include "namehash.h"
-#include "tables.h"
-
-int recognizePUA = false;
-
-#ifndef _MSC_VER
-static
-#endif
-struct psaltnames {
- const char *name;
- int unicode;
- int provenance; /* 1=> Adobe PUA, 2=>AMS PUA, 3=>TeX */
-} psaltnames[];
-
-static NameList agl_sans, agl, agl_nf, adobepua, greeksc, tex, ams;
-NameList *namelist_for_new_fonts = &agl_nf;
-
-/* Adobe's standard names are wrong for: */
-/* 0x2206 is named Delta, 0x394 should be */
-/* 0x2126 is named Omega, 0x3A9 should be */
-/* 0x00b5 is named mu, 0x3BC should be */
-/* The following have been corrected removed from AGL For New Fonts: */
-/* 0x0162 is named Tcommaaccent, 0x21A should be */
-/* 0x0163 is named tcommaaccent, 0x21B should be */
-/* 0xf6be is named dotlessj, 0x237 should be */
-
-static int psnamesinited=false;
-#define HASH_SIZE 257
-struct psbucket { const char *name; int uni; struct psbucket *prev; } *psbuckets[HASH_SIZE];
-
-static void psaddbucket(const char *name, int uni) {
- int hash = hashname(name);
- struct psbucket *buck = calloc(1,sizeof(struct psbucket));
-
- buck->name = name;
- buck->uni = uni;
- buck->prev = psbuckets[hash];
- psbuckets[hash] = buck;
-}
-
-static void NameListHash(NameList *nl) {
- int i,j,k;
- for ( i=0; i<17; ++i ) if ( nl->unicode[i]!=NULL ) {
- for ( j=0; j<256; ++j ) if ( nl->unicode[i][j]!=NULL ) {
- for ( k=0; k<256; ++k ) if ( nl->unicode[i][j][k]!=NULL )
- psaddbucket(nl->unicode[i][j][k],(i<<16)|(j<<8)|k );
- }
- }
-}
-
-static void psinitnames(void) {
- int i;
- NameList *nl;
-
- agl.next = &agl_nf;
- agl_nf.next = &agl_sans;
- agl_sans.next = &adobepua;
- adobepua.next = &greeksc;
- greeksc.next = &tex;
- tex.next = &ams;
-
- for ( i=0; psaltnames[i].name!=NULL ; ++i )
- psaddbucket(psaltnames[i].name,psaltnames[i].unicode);
- for ( nl=&agl; nl!=NULL; nl=nl->next )
- NameListHash(nl);
- psnamesinited = true;
-}
-
-
-int UniFromName(const char *name,enum uni_interp interp,Encoding *encname) {
- int i = -1;
- char *end;
- struct psbucket *buck;
- int _recognizePUA = recognizePUA;
-
- if ( strncmp(name,"uni",3)==0 ) {
- i = strtol(name+3,&end,16);
- if ( *end || end-name!=7 ) /* uniXXXXXXXX means a ligature of uniXXXX and uniXXXX */
- i = -1;
- _recognizePUA = true;
- } else if ( (name[0]=='U' || name[0]=='u') && name[1]=='+' &&
- (strlen(name)==6 || strlen(name)==7)) {
- /* Unifont uses this convention */
- i = strtol(name+2,&end,16);
- if ( *end )
- i = -1;
- _recognizePUA = true;
- } else if ( name[0]=='u' && strlen(name)>=5 ) {
- i = strtol(name+1,&end,16);
- if ( *end )
- i = -1;
- else if ( encname!=NULL && !encname->is_unicodefull &&
- (interp==ui_ams || interp==ui_trad_chinese)) {
- int j;
- const int *pua = interp==ui_ams ? amspua : cns14pua;
- for ( j=0xf8ff-0xe000; j>=0; --j )
- if ( pua[j]==i ) {
- i = j+0xe000;
- break;
- }
- }
- if ( i!=-1 )
- _recognizePUA = true;
- } else if ( name[0]!='\0' && name[1]=='\0' )
- i = ((unsigned char *) name)[0];
- if ( i==-1 ) {
- if ( !psnamesinited )
- psinitnames();
- for ( buck = psbuckets[hashname(name)]; buck!=NULL; buck=buck->prev )
- if ( strcmp(buck->name,name)==0 )
- break;
- if ( buck!=NULL )
- i = buck->uni;
- }
- if ( !_recognizePUA && i>=0xe000 && i<=0xf8ff )
- i = -1;
-return( i );
-}
-
-#define RefMax 40
-
-NameList *DefaultNameListForNewFonts(void) {
-return( namelist_for_new_fonts );
-}
-
-NameList *NameListByName(const char *name) {
- const char *nameTex = "ΤεΧ Names";
- NameList *nl;
-
- /* ΤεΧ is hard tp type e.g. from scripting, so accept TeX as alias */
- if (strcmp(name,"TeX Names")==0)
- name = (char *)nameTex;
-
- for ( nl = &agl; nl!=NULL; nl=nl->next ) {
- if ( strcmp(_(nl->title),name)==0 || strcmp(nl->title,name)==0 )
- return( nl );
- }
- return( NULL );
-}
-
-struct bits {
- char *start, *end;
- SplineChar *rpl;
-};
-
-/* ************************************************************************** */
-static const char *agl_sans_p0_b0[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "space",
- "exclam",
- "quotedbl",
- "numbersign",
- "dollar",
- "percent",
- "ampersand",
- "quotesingle",
- "parenleft",
- "parenright",
- "asterisk",
- "plus",
- "comma",
- "hyphen",
- "period",
- "slash",
- "zero",
- "one",
- "two",
- "three",
- "four",
- "five",
- "six",
- "seven",
- "eight",
- "nine",
- "colon",
- "semicolon",
- "less",
- "equal",
- "greater",
- "question",
- "at",
- "A",
- "B",
- "C",
- "D",
- "E",
- "F",
- "G",
- "H",
- "I",
- "J",
- "K",
- "L",
- "M",
- "N",
- "O",
- "P",
- "Q",
- "R",
- "S",
- "T",
- "U",
- "V",
- "W",
- "X",
- "Y",
- "Z",
- "bracketleft",
- "backslash",
- "bracketright",
- "asciicircum",
- "underscore",
- "grave",
- "a",
- "b",
- "c",
- "d",
- "e",
- "f",
- "g",
- "h",
- "i",
- "j",
- "k",
- "l",
- "m",
- "n",
- "o",
- "p",
- "q",
- "r",
- "s",
- "t",
- "u",
- "v",
- "w",
- "x",
- "y",
- "z",
- "braceleft",
- "bar",
- "braceright",
- "asciitilde",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "exclamdown",
- "cent",
- "sterling",
- "currency",
- "yen",
- "brokenbar",
- "section",
- "dieresis",
- "copyright",
- "ordfeminine",
- "guillemotleft",
- "logicalnot",
- NULL,
- "registered",
- "macron",
- "degree",
- "plusminus",
- NULL,
- NULL,
- "acute",
- "mu",
- "paragraph",
- "periodcentered",
- "cedilla",
- NULL,
- "ordmasculine",
- "guillemotright",
- "onequarter",
- "onehalf",
- "threequarters",
- "questiondown",
- "Agrave",
- "Aacute",
- "Acircumflex",
- "Atilde",
- "Adieresis",
- "Aring",
- "AE",
- "Ccedilla",
- "Egrave",
- "Eacute",
- "Ecircumflex",
- "Edieresis",
- "Igrave",
- "Iacute",
- "Icircumflex",
- "Idieresis",
- "Eth",
- "Ntilde",
- "Ograve",
- "Oacute",
- "Ocircumflex",
- "Otilde",
- "Odieresis",
- "multiply",
- "Oslash",
- "Ugrave",
- "Uacute",
- "Ucircumflex",
- "Udieresis",
- "Yacute",
- "Thorn",
- "germandbls",
- "agrave",
- "aacute",
- "acircumflex",
- "atilde",
- "adieresis",
- "aring",
- "ae",
- "ccedilla",
- "egrave",
- "eacute",
- "ecircumflex",
- "edieresis",
- "igrave",
- "iacute",
- "icircumflex",
- "idieresis",
- "eth",
- "ntilde",
- "ograve",
- "oacute",
- "ocircumflex",
- "otilde",
- "odieresis",
- "divide",
- "oslash",
- "ugrave",
- "uacute",
- "ucircumflex",
- "udieresis",
- "yacute",
- "thorn",
- "ydieresis"
-};
-
-static const char *agl_sans_p0_b1[] = {
- "Amacron",
- "amacron",
- "Abreve",
- "abreve",
- "Aogonek",
- "aogonek",
- "Cacute",
- "cacute",
- "Ccircumflex",
- "ccircumflex",
- "Cdotaccent",
- "cdotaccent",
- "Ccaron",
- "ccaron",
- "Dcaron",
- "dcaron",
- "Dcroat",
- "dcroat",
- "Emacron",
- "emacron",
- "Ebreve",
- "ebreve",
- "Edotaccent",
- "edotaccent",
- "Eogonek",
- "eogonek",
- "Ecaron",
- "ecaron",
- "Gcircumflex",
- "gcircumflex",
- "Gbreve",
- "gbreve",
- "Gdotaccent",
- "gdotaccent",
- "Gcommaaccent",
- "gcommaaccent",
- "Hcircumflex",
- "hcircumflex",
- "Hbar",
- "hbar",
- "Itilde",
- "itilde",
- "Imacron",
- "imacron",
- "Ibreve",
- "ibreve",
- "Iogonek",
- "iogonek",
- "Idotaccent",
- "dotlessi",
- "IJ",
- "ij",
- "Jcircumflex",
- "jcircumflex",
- "Kcommaaccent",
- "kcommaaccent",
- "kgreenlandic",
- "Lacute",
- "lacute",
- "Lcommaaccent",
- "lcommaaccent",
- "Lcaron",
- "lcaron",
- "Ldot",
- "ldot",
- "Lslash",
- "lslash",
- "Nacute",
- "nacute",
- "Ncommaaccent",
- "ncommaaccent",
- "Ncaron",
- "ncaron",
- "napostrophe",
- "Eng",
- "eng",
- "Omacron",
- "omacron",
- "Obreve",
- "obreve",
- "Ohungarumlaut",
- "ohungarumlaut",
- "OE",
- "oe",
- "Racute",
- "racute",
- "Rcommaaccent",
- "rcommaaccent",
- "Rcaron",
- "rcaron",
- "Sacute",
- "sacute",
- "Scircumflex",
- "scircumflex",
- "Scedilla",
- "scedilla",
- "Scaron",
- "scaron",
- NULL,
- NULL,
- "Tcaron",
- "tcaron",
- "Tbar",
- "tbar",
- "Utilde",
- "utilde",
- "Umacron",
- "umacron",
- "Ubreve",
- "ubreve",
- "Uring",
- "uring",
- "Uhungarumlaut",
- "uhungarumlaut",
- "Uogonek",
- "uogonek",
- "Wcircumflex",
- "wcircumflex",
- "Ycircumflex",
- "ycircumflex",
- "Ydieresis",
- "Zacute",
- "zacute",
- "Zdotaccent",
- "zdotaccent",
- "Zcaron",
- "zcaron",
- "longs",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "florin",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Ohorn",
- "ohorn",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Uhorn",
- "uhorn",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Gcaron",
- "gcaron",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Aringacute",
- "aringacute",
- "AEacute",
- "aeacute",
- "Oslashacute",
- "oslashacute"
-};
-
-static const char *agl_sans_p0_b2[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Scommaaccent",
- "scommaaccent",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "circumflex",
- "caron",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "breve",
- "dotaccent",
- "ring",
- "ogonek",
- "tilde",
- "hungarumlaut",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_sans_p0_b3[] = {
- "gravecomb",
- "acutecomb",
- NULL,
- "tildecomb",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "hookabovecomb",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "dotbelowcomb",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "tonos",
- "dieresistonos",
- "Alphatonos",
- "anoteleia",
- "Epsilontonos",
- "Etatonos",
- "Iotatonos",
- NULL,
- "Omicrontonos",
- NULL,
- "Upsilontonos",
- "Omegatonos",
- "iotadieresistonos",
- "Alpha",
- "Beta",
- "Gamma",
- NULL,
- "Epsilon",
- "Zeta",
- "Eta",
- "Theta",
- "Iota",
- "Kappa",
- "Lambda",
- "Mu",
- "Nu",
- "Xi",
- "Omicron",
- "Pi",
- "Rho",
- NULL,
- "Sigma",
- "Tau",
- "Upsilon",
- "Phi",
- "Chi",
- "Psi",
- NULL,
- "Iotadieresis",
- "Upsilondieresis",
- "alphatonos",
- "epsilontonos",
- "etatonos",
- "iotatonos",
- "upsilondieresistonos",
- "alpha",
- "beta",
- "gamma",
- "delta",
- "epsilon",
- "zeta",
- "eta",
- "theta",
- "iota",
- "kappa",
- "lambda",
- NULL,
- "nu",
- "xi",
- "omicron",
- "pi",
- "rho",
- "sigma1",
- "sigma",
- "tau",
- "upsilon",
- "phi",
- "chi",
- "psi",
- "omega",
- "iotadieresis",
- "upsilondieresis",
- "omicrontonos",
- "upsilontonos",
- "omegatonos",
- NULL,
- NULL,
- "theta1",
- "Upsilon1",
- NULL,
- NULL,
- "phi1",
- "omega1",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_sans_p0_b1e[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Wgrave",
- "wgrave",
- "Wacute",
- "wacute",
- "Wdieresis",
- "wdieresis",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Ygrave",
- "ygrave",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_sans_p0_b20[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "figuredash",
- "endash",
- "emdash",
- NULL,
- NULL,
- "underscoredbl",
- "quoteleft",
- "quoteright",
- "quotesinglbase",
- "quotereversed",
- "quotedblleft",
- "quotedblright",
- "quotedblbase",
- NULL,
- "dagger",
- "daggerdbl",
- "bullet",
- NULL,
- "onedotenleader",
- "twodotenleader",
- "ellipsis",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "perthousand",
- NULL,
- "minute",
- "second",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "guilsinglleft",
- "guilsinglright",
- NULL,
- "exclamdbl",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "fraction",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "colonmonetary",
- NULL,
- "franc",
- "lira",
- NULL,
- NULL,
- "peseta",
- NULL,
- NULL,
- NULL,
- "dong",
- "Euro",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_sans_p0_b21[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Ifraktur",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "weierstrass",
- NULL,
- NULL,
- NULL,
- "Rfraktur",
- NULL,
- "prescription",
- NULL,
- NULL,
- NULL,
- "trademark",
- NULL,
- NULL,
- NULL,
- "Omega",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "estimated",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "aleph",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "onethird",
- "twothirds",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "oneeighth",
- "threeeighths",
- "fiveeighths",
- "seveneighths",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "arrowleft",
- "arrowup",
- "arrowright",
- "arrowdown",
- "arrowboth",
- "arrowupdn",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "arrowupdnbse",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "carriagereturn",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "arrowdblleft",
- "arrowdblup",
- "arrowdblright",
- "arrowdbldown",
- "arrowdblboth",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_sans_p0_b22[] = {
- "universal",
- NULL,
- "partialdiff",
- "existential",
- NULL,
- "emptyset",
- "Delta",
- "gradient",
- "element",
- "notelement",
- NULL,
- "suchthat",
- NULL,
- NULL,
- NULL,
- "product",
- NULL,
- "summation",
- "minus",
- NULL,
- NULL,
- NULL,
- NULL,
- "asteriskmath",
- NULL,
- NULL,
- "radical",
- NULL,
- NULL,
- "proportional",
- "infinity",
- "orthogonal",
- "angle",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "logicaland",
- "logicalor",
- "intersection",
- "union",
- "integral",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "therefore",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "similar",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "congruent",
- NULL,
- NULL,
- "approxequal",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "notequal",
- "equivalence",
- NULL,
- NULL,
- "lessequal",
- "greaterequal",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "propersubset",
- "propersuperset",
- "notsubset",
- NULL,
- "reflexsubset",
- "reflexsuperset",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "circleplus",
- NULL,
- "circlemultiply",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "perpendicular",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "dotmath",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_sans_p0_b23[] = {
- NULL,
- NULL,
- "house",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "revlogicalnot",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "integraltp",
- "integralbt",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "angleleft",
- "angleright",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_sans_p0_b25[] = {
- "SF100000",
- NULL,
- "SF110000",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "SF010000",
- NULL,
- NULL,
- NULL,
- "SF030000",
- NULL,
- NULL,
- NULL,
- "SF020000",
- NULL,
- NULL,
- NULL,
- "SF040000",
- NULL,
- NULL,
- NULL,
- "SF080000",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "SF090000",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "SF060000",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "SF070000",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "SF050000",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "SF430000",
- "SF240000",
- "SF510000",
- "SF520000",
- "SF390000",
- "SF220000",
- "SF210000",
- "SF250000",
- "SF500000",
- "SF490000",
- "SF380000",
- "SF280000",
- "SF270000",
- "SF260000",
- "SF360000",
- "SF370000",
- "SF420000",
- "SF190000",
- "SF200000",
- "SF230000",
- "SF470000",
- "SF480000",
- "SF410000",
- "SF450000",
- "SF460000",
- "SF400000",
- "SF540000",
- "SF530000",
- "SF440000",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "upblock",
- NULL,
- NULL,
- NULL,
- "dnblock",
- NULL,
- NULL,
- NULL,
- "block",
- NULL,
- NULL,
- NULL,
- "lfblock",
- NULL,
- NULL,
- NULL,
- "rtblock",
- "ltshade",
- "shade",
- "dkshade",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "filledbox",
- "H22073",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "H18543",
- "H18551",
- "filledrect",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "triagup",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "triagrt",
- NULL,
- "triagdn",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "triaglf",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "lozenge",
- "circle",
- NULL,
- NULL,
- NULL,
- "H18533",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "invbullet",
- "invcircle",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "openbullet",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_sans_p0_b26[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "smileface",
- "invsmileface",
- "sun",
- NULL,
- NULL,
- NULL,
- "female",
- NULL,
- "male",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "spade",
- NULL,
- NULL,
- "club",
- NULL,
- "heart",
- "diamond",
- NULL,
- NULL,
- NULL,
- "musicalnote",
- "musicalnotedbl",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char **agl_sans_p0[] = {
- agl_sans_p0_b0,
- agl_sans_p0_b1,
- agl_sans_p0_b2,
- agl_sans_p0_b3,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- agl_sans_p0_b1e,
- NULL,
- agl_sans_p0_b20,
- agl_sans_p0_b21,
- agl_sans_p0_b22,
- agl_sans_p0_b23,
- NULL,
- agl_sans_p0_b25,
- agl_sans_p0_b26,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static NameList agl_sans = {
- NULL,
- N_("AGL without afii"),
- { agl_sans_p0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL },
- NULL, NULL, 0, NULL
-};
-
-/* ************************************************************************** */
-static const char *agl_nf_p0_b1[] = {
- "Amacron",
- "amacron",
- "Abreve",
- "abreve",
- "Aogonek",
- "aogonek",
- "Cacute",
- "cacute",
- "Ccircumflex",
- "ccircumflex",
- "Cdotaccent",
- "cdotaccent",
- "Ccaron",
- "ccaron",
- "Dcaron",
- "dcaron",
- "Dcroat",
- "dcroat",
- "Emacron",
- "emacron",
- "Ebreve",
- "ebreve",
- "Edotaccent",
- "edotaccent",
- "Eogonek",
- "eogonek",
- "Ecaron",
- "ecaron",
- "Gcircumflex",
- "gcircumflex",
- "Gbreve",
- "gbreve",
- "Gdotaccent",
- "gdotaccent",
- NULL,
- NULL,
- "Hcircumflex",
- "hcircumflex",
- "Hbar",
- "hbar",
- "Itilde",
- "itilde",
- "Imacron",
- "imacron",
- "Ibreve",
- "ibreve",
- "Iogonek",
- "iogonek",
- "Idotaccent",
- "dotlessi",
- "IJ",
- "ij",
- "Jcircumflex",
- "jcircumflex",
- NULL,
- NULL,
- "kgreenlandic",
- "Lacute",
- "lacute",
- NULL,
- NULL,
- "Lcaron",
- "lcaron",
- "Ldot",
- "ldot",
- "Lslash",
- "lslash",
- "Nacute",
- "nacute",
- NULL,
- NULL,
- "Ncaron",
- "ncaron",
- "napostrophe",
- "Eng",
- "eng",
- "Omacron",
- "omacron",
- "Obreve",
- "obreve",
- "Ohungarumlaut",
- "ohungarumlaut",
- "OE",
- "oe",
- "Racute",
- "racute",
- NULL,
- NULL,
- "Rcaron",
- "rcaron",
- "Sacute",
- "sacute",
- "Scircumflex",
- "scircumflex",
- "Scedilla",
- "scedilla",
- "Scaron",
- "scaron",
- NULL,
- NULL,
- "Tcaron",
- "tcaron",
- "Tbar",
- "tbar",
- "Utilde",
- "utilde",
- "Umacron",
- "umacron",
- "Ubreve",
- "ubreve",
- "Uring",
- "uring",
- "Uhungarumlaut",
- "uhungarumlaut",
- "Uogonek",
- "uogonek",
- "Wcircumflex",
- "wcircumflex",
- "Ycircumflex",
- "ycircumflex",
- "Ydieresis",
- "Zacute",
- "zacute",
- "Zdotaccent",
- "zdotaccent",
- "Zcaron",
- "zcaron",
- "longs",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "florin",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Ohorn",
- "ohorn",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Uhorn",
- "uhorn",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Gcaron",
- "gcaron",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Aringacute",
- "aringacute",
- "AEacute",
- "aeacute",
- "Oslashacute",
- "oslashacute"
-};
-
-static const char *agl_nf_p0_b2[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "circumflex",
- "caron",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "breve",
- "dotaccent",
- "ring",
- "ogonek",
- "tilde",
- "hungarumlaut",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char **agl_nf_p0[] = {
- agl_sans_p0_b0,
- agl_nf_p0_b1,
- agl_nf_p0_b2,
- agl_sans_p0_b3,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- agl_sans_p0_b1e,
- NULL,
- agl_sans_p0_b20,
- agl_sans_p0_b21,
- agl_sans_p0_b22,
- agl_sans_p0_b23,
- NULL,
- agl_sans_p0_b25,
- agl_sans_p0_b26,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static NameList agl_nf = {
- NULL,
- N_("AGL For New Fonts"),
- { agl_nf_p0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL },
- NULL, NULL, 0, NULL
-};
-
-/* ************************************************************************** */
-static const char *agl_p0_b1[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Tcommaaccent",
- "tcommaaccent",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_p0_b2[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57929",
- "afii64937",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_p0_b4[] = {
- NULL,
- "afii10023",
- "afii10051",
- "afii10052",
- "afii10053",
- "afii10054",
- "afii10055",
- "afii10056",
- "afii10057",
- "afii10058",
- "afii10059",
- "afii10060",
- "afii10061",
- NULL,
- "afii10062",
- "afii10145",
- "afii10017",
- "afii10018",
- "afii10019",
- "afii10020",
- "afii10021",
- "afii10022",
- "afii10024",
- "afii10025",
- "afii10026",
- "afii10027",
- "afii10028",
- "afii10029",
- "afii10030",
- "afii10031",
- "afii10032",
- "afii10033",
- "afii10034",
- "afii10035",
- "afii10036",
- "afii10037",
- "afii10038",
- "afii10039",
- "afii10040",
- "afii10041",
- "afii10042",
- "afii10043",
- "afii10044",
- "afii10045",
- "afii10046",
- "afii10047",
- "afii10048",
- "afii10049",
- "afii10065",
- "afii10066",
- "afii10067",
- "afii10068",
- "afii10069",
- "afii10070",
- "afii10072",
- "afii10073",
- "afii10074",
- "afii10075",
- "afii10076",
- "afii10077",
- "afii10078",
- "afii10079",
- "afii10080",
- "afii10081",
- "afii10082",
- "afii10083",
- "afii10084",
- "afii10085",
- "afii10086",
- "afii10087",
- "afii10088",
- "afii10089",
- "afii10090",
- "afii10091",
- "afii10092",
- "afii10093",
- "afii10094",
- "afii10095",
- "afii10096",
- "afii10097",
- NULL,
- "afii10071",
- "afii10099",
- "afii10100",
- "afii10101",
- "afii10102",
- "afii10103",
- "afii10104",
- "afii10105",
- "afii10106",
- "afii10107",
- "afii10108",
- "afii10109",
- NULL,
- "afii10110",
- "afii10193",
- NULL,
- NULL,
- "afii10146",
- "afii10194",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii10147",
- "afii10195",
- "afii10148",
- "afii10196",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii10050",
- "afii10098",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii10846",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_p0_b5[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57799",
- "afii57801",
- "afii57800",
- "afii57802",
- "afii57793",
- "afii57794",
- "afii57795",
- "afii57798",
- "afii57797",
- "afii57806",
- NULL,
- "afii57796",
- "afii57807",
- "afii57839",
- "afii57645",
- "afii57841",
- "afii57842",
- "afii57804",
- "afii57803",
- "afii57658",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57664",
- "afii57665",
- "afii57666",
- "afii57667",
- "afii57668",
- "afii57669",
- "afii57670",
- "afii57671",
- "afii57672",
- "afii57673",
- "afii57674",
- "afii57675",
- "afii57676",
- "afii57677",
- "afii57678",
- "afii57679",
- "afii57680",
- "afii57681",
- "afii57682",
- "afii57683",
- "afii57684",
- "afii57685",
- "afii57686",
- "afii57687",
- "afii57688",
- "afii57689",
- "afii57690",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57716",
- "afii57717",
- "afii57718",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_p0_b6[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57388",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57403",
- NULL,
- NULL,
- NULL,
- "afii57407",
- NULL,
- "afii57409",
- "afii57410",
- "afii57411",
- "afii57412",
- "afii57413",
- "afii57414",
- "afii57415",
- "afii57416",
- "afii57417",
- "afii57418",
- "afii57419",
- "afii57420",
- "afii57421",
- "afii57422",
- "afii57423",
- "afii57424",
- "afii57425",
- "afii57426",
- "afii57427",
- "afii57428",
- "afii57429",
- "afii57430",
- "afii57431",
- "afii57432",
- "afii57433",
- "afii57434",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57440",
- "afii57441",
- "afii57442",
- "afii57443",
- "afii57444",
- "afii57445",
- "afii57446",
- "afii57470",
- "afii57448",
- "afii57449",
- "afii57450",
- "afii57451",
- "afii57452",
- "afii57453",
- "afii57454",
- "afii57455",
- "afii57456",
- "afii57457",
- "afii57458",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57392",
- "afii57393",
- "afii57394",
- "afii57395",
- "afii57396",
- "afii57397",
- "afii57398",
- "afii57399",
- "afii57400",
- "afii57401",
- "afii57381",
- NULL,
- NULL,
- "afii63167",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57511",
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57506",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57507",
- NULL,
- "afii57512",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57513",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57508",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57505",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57509",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57514",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57519",
- NULL,
- NULL,
- "afii57534",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_p0_b20[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii61664",
- "afii301",
- "afii299",
- "afii300",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii00208",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii61573",
- "afii61574",
- "afii61575",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii57636",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *agl_p0_b21[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii61248",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii61289",
- NULL,
- NULL,
- "afii61352",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char **agl_p0[] = {
- NULL,
- agl_p0_b1,
- agl_p0_b2,
- NULL,
- agl_p0_b4,
- agl_p0_b5,
- agl_p0_b6,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- agl_p0_b20,
- agl_p0_b21,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static NameList agl = {
- &agl_sans,
- N_("Adobe Glyph List"),
- { agl_p0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL },
- NULL, NULL, 0, NULL
-};
-/* ************************************************************************** */
-static const char *adobepua_p0_bf6[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "perthousand.oldstyle",
- "cent.denominator",
- "dollar.denominator",
- "hyphen.denominator",
- "parenleft.denominator",
- "parenright.denominator",
- "cent.numerator",
- "dollar.numerator",
- "hyphen.numerator",
- "parenleft.numerator",
- "parenright.numerator",
- "at.cap",
- "commaaccent.cap",
- "commaaccent.small",
- "pi.math",
- "h.superior",
- "zero.slash",
- "zero.fitted",
- "two.fitted",
- "three.fitted",
- "four.fitted",
- "five.fitted",
- "six.fitted",
- "seven.fitted",
- "eight.fitted",
- "nine.fitted",
- "percent.oldstyle",
- "zero.taboldstyle",
- "one.taboldstyle",
- "two.taboldstyle",
- "three.taboldstyle",
- "four.taboldstyle",
- "five.taboldstyle",
- "six.taboldstyle",
- "seven.taboldstyle",
- "eight.taboldstyle",
- "nine.taboldstyle",
- "colonmonetary.taboldstyle",
- "Euro.taboldstyle",
- "florin.taboldstyle",
- "numbersign.taboldstyle",
- "sterling.taboldstyle",
- "yen.taboldstyle",
- "dollar.taboldstyle",
- "cent.taboldstyle",
- "zero.denominator",
- "one.denominator",
- "two.denominator",
- "three.denominator",
- "four.denominator",
- "five.denominator",
- "six.denominator",
- "seven.denominator",
- "eight.denominator",
- "nine.denominator",
- "comma.denominator",
- "period.denominator",
- "zero.numerator",
- "one.numerator",
- "two.numerator",
- "three.numerator",
- "four.numerator",
- "five.numerator",
- "six.numerator",
- "seven.numerator",
- "eight.numerator",
- "nine.numerator",
- "comma.numerator",
- "period.numerator",
- "Abreve.small",
- "Amacron.small",
- "Aogonek.small",
- "AEacute.small",
- "Cacute.small",
- "Ccaron.small",
- "Ccircumflex.small",
- "Cdotaccent.small",
- "Dcaron.small",
- "Dcroat.small",
- "Ebreve.small",
- "Ecaron.small",
- "Edotaccent.small",
- "Emacron.small",
- "Eng.small",
- "Eogonek.small",
- "Gbreve.small",
- "Gcircumflex.small",
- "Gcommaaccent.small",
- "Gdotaccent.small",
- "Hbar.small",
- "Hcircumflex.small",
- "Ibreve.small",
- "IJ.small",
- "Imacron.small",
- "Iogonek.small",
- "Itilde.small",
- "Jcircumflex.small",
- "Kcommaaccent.small",
- "Lacute.small",
- "Lcaron.small",
- "Lcommaaccent.small",
- "Ldot.small",
- "Nacute.small",
- "Ncaron.small",
- "Ncommaaccent.small",
- "Obreve.small",
- "Ohungarumlaut.small",
- "Omacron.small",
- "Oslashacute.small",
- "Racute.small",
- "Rcaron.small",
- "Rcommaaccent.small",
- "Sacute.small",
- "Scedilla.small",
- "Scircumflex.small",
- "Scommaaccent.small",
- "Tbar.small",
- "Tcaron.small",
- "Tcommaaccent.small",
- "Ubreve.small",
- "Uhungarumlaut.small",
- "Umacron.small",
- "Uogonek.small",
- "Uring.small",
- "Utilde.small",
- "Wacute.small",
- "Wcircumflex.small",
- "Wdieresis.small",
- "Wgrave.small",
- "Ycircumflex.small",
- "Ygrave.small",
- "Zacute.small",
- "Zdotaccent.small",
- "Idotaccent.small",
- "parenleft.cap",
- "parenright.cap",
- "bracketleft.cap",
- "bracketright.cap",
- "braceleft.cap",
- "braceright.cap",
- "exclamdown.cap",
- "questiondown.cap",
- "guillemotleft.cap",
- "guillemotright.cap",
- "guilsinglleft.cap",
- "guilsinglright.cap",
- "hyphen.cap",
- "endash.cap",
- "emdash.cap",
- "periodcentered.cap",
- "j.dotless",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "afii10068.ital",
- "afii10066.ital",
- "afii10069.ital",
- "afii10081.ital",
- "afii10084.ital",
- "acute.cap",
- "caron.cap",
- "dieresis.cap",
- "space_uni0308_uni0301.cap",
- "space_uni0308_uni0300.cap",
- "grave.cap",
- "hungarumlaut.cap",
- "macron.cap",
- "breve.cyrcap",
- "circumflex.cyrcap",
- "space_uni030F.cap",
- "breve.cyr",
- "circumflex.cyr",
- "space_uni030F",
- "space_uni0308_uni0301",
- "space_uni0308_uni0300",
- "copyright.serif",
- "registered.serif",
- "trademark.serif",
- "one.fitted",
- "R_p",
- "uni2014.alt",
- "cent.inferior",
- "cent.superior",
- "comma.inferior",
- "comma.superior",
- "dollar.inferior",
- "dollar.superior",
- "hyphen.inferior",
- "hyphen.superior",
- "period.inferior",
- "period.superior",
- "a.superior",
- "b.superior",
- "d.superior",
- "e.superior",
- "i.superior",
- "l.superior",
- "m.superior",
- "o.superior",
- "r.superior",
- "s.superior",
- "t.superior",
- "breve.sc",
- "caron.sc",
- "circumflex.sc",
- "dotaccent.sc",
- "hungarumlaut.sc",
- "lslash.sc",
- "oe.sc",
- "ogonek.sc",
- "ring.sc",
- "scaron.sc",
- "tilde.sc",
- "zcaron.sc"
-};
-
-static const char *adobepua_p0_bf7[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "exclam.sc",
- NULL,
- NULL,
- "dollar.oldstyle",
- NULL,
- "ampersand.sc",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "zero.oldstyle",
- "one.oldstyle",
- "two.oldstyle",
- "three.oldstyle",
- "four.oldstyle",
- "five.oldstyle",
- "six.oldstyle",
- "seven.oldstyle",
- "eight.oldstyle",
- "nine.oldstyle",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "question.sc",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "grave.sc",
- "a.sc",
- "b.sc",
- "c.sc",
- "d.sc",
- "e.sc",
- "f.sc",
- "g.sc",
- "h.sc",
- "i.sc",
- "j.sc",
- "k.sc",
- "l.sc",
- "m.sc",
- "n.sc",
- "o.sc",
- "p.sc",
- "q.sc",
- "r.sc",
- "s.sc",
- "t.sc",
- "u.sc",
- "v.sc",
- "w.sc",
- "x.sc",
- "y.sc",
- "z.sc",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "exclamdown.sc",
- "cent.oldstyle",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "dieresis.sc",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "macron.sc",
- NULL,
- NULL,
- NULL,
- NULL,
- "acute.sc",
- NULL,
- NULL,
- NULL,
- "cedilla.sc",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "questiondown.sc",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "agrave.sc",
- "aacute.sc",
- "acircumflex.sc",
- "atilde.sc",
- "adieresis.sc",
- "aring.sc",
- "ae.sc",
- "ccedilla.sc",
- "egrave.sc",
- "eacute.sc",
- "ecircumflex.sc",
- "edieresis.sc",
- "igrave.sc",
- "iacute.sc",
- "icircumflex.sc",
- "idieresis.sc",
- "eth.sc",
- "ntilde.sc",
- "ograve.sc",
- "oacute.sc",
- "ocircumflex.sc",
- "otilde.sc",
- "odieresis.sc",
- NULL,
- "oslash.sc",
- "ugrave.sc",
- "uacute.sc",
- "ucircumflex.sc",
- "udieresis.sc",
- "yacute.sc",
- "thorn.sc",
- "ydieresis.sc"
-};
-
-static const char *adobepua_p0_bf8[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "registered.sans",
- "copyright.sans",
- "trademark.sans",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *adobepua_p0_bfb[] = {
- "f_f",
- "f_i",
- "f_l",
- "f_f_i",
- "f_f_l",
- "longs_t",
- "s_t",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char **adobepua_p0[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- adobepua_p0_bf6,
- adobepua_p0_bf7,
- adobepua_p0_bf8,
- NULL,
- NULL,
- adobepua_p0_bfb,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static NameList adobepua = {
- &agl,
- N_("AGL with PUA"),
- { adobepua_p0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL },
- NULL, NULL, 0, NULL
-};
-/* ************************************************************************** */
-static const char *greeksc_p0_bf5[] = {
- "alpha.sc",
- "beta.sc",
- "gamma.sc",
- "delta.sc",
- "epsilon.sc",
- "zeta.sc",
- "eta.sc",
- "theta.sc",
- "iota.sc",
- "kappa.sc",
- "lambda.sc",
- "mu.sc",
- "nu.sc",
- "xi.sc",
- "omicron.sc",
- "pi.sc",
- "rho.sc",
- NULL,
- "sigma.sc",
- "tau.sc",
- "upsilon.sc",
- "phi.sc",
- "chi.sc",
- "psi.sc",
- "omega.sc",
- "iotadieresis.sc",
- "upsilondieresis.sc",
- "alphaiota.sc",
- "etaiota.sc",
- "omegaiota.sc",
- "prosgegrammeni.sc",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char **greeksc_p0[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- greeksc_p0_bf5,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static NameList greeksc = {
- &adobepua,
- N_("Greek small caps"),
- { greeksc_p0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL },
- NULL, NULL, 0, NULL
-};
-/* ************************************************************************** */
-static const char *tex_p0_b20[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "closure",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "leftharpoonaccent",
- "rightharpoonaccent",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *tex_p0_b21[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "shortleftarrow",
- "shortuparrow",
- "shortrightarrow",
- "shortdownarrow",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "leftwavyarrow",
- "rightwavyarrow",
- NULL,
- "twoheaduparrow",
- NULL,
- "twoheaddownarrow",
- NULL,
- NULL,
- NULL,
- "mapsup",
- NULL,
- "mapsdown",
- "updownarrowbar",
- NULL,
- NULL,
- NULL,
- NULL,
- "leftrightwavyarrow",
- NULL,
- "downzigzagarrow",
- NULL,
- NULL,
- "Ldsh",
- "Rdsh",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "acwopencirclearrow",
- "cwopencirclearrow",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "updownarrows",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Nwarrow",
- "Nearrow",
- "Searrow",
- "Swarrow",
- NULL,
- NULL,
- "longleftzigzagarrow",
- "rightzigzagarrow",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "barleftarrow",
- "rightarrowbar",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "downuparrows",
- "rightthreearrows",
- "nvleftarrow",
- "nvrightarrow",
- "nvleftrightarrow",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *tex_p0_b22[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "ltrpar",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "difference",
- NULL,
- "ac",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "approxident",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "arceq",
- NULL,
- "veeeq",
- "stareq",
- NULL,
- "eqdef",
- "measeq",
- NULL,
- NULL,
- NULL,
- NULL,
- "Equiv",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "prurel",
- "scurel",
- NULL,
- NULL,
- NULL,
- NULL,
- "origof",
- "imageof",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "eqless",
- "eqgtr",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "disin",
- NULL,
- "isins",
- "isindot",
- NULL,
- NULL,
- "isinvb",
- "isinE",
- "nisd",
- NULL,
- "nis",
- NULL,
- NULL,
- NULL
-};
-
-static const char *tex_p0_b23[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "invnot",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "turnednot",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "solbar",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "rangledownzigzagarrow",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *tex_p0_b27[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "longrightzigzagarrow"
-};
-
-static const char *tex_p0_b29[] = {
- NULL,
- NULL,
- "nvLeftarrow",
- "nvRightarrow",
- "nvLeftrightarrow",
- "twoheadmapsto",
- NULL,
- NULL,
- "downarrowbarred",
- "uparrowbarred",
- "Uuparrow",
- "Ddownarrow",
- "leftbkarrow",
- "rightbkarrow",
- "leftdbkarrow",
- NULL,
- NULL,
- "rightdotarrow",
- "baruparrow",
- "downarrowbar",
- NULL,
- NULL,
- "twoheadrightarrowtail",
- NULL,
- NULL,
- "lefttail",
- "righttail",
- "leftdbltail",
- "rightdbltail",
- "diamondleftarrow",
- "rightarrowdiamond",
- "diamondleftarrowbar",
- "barrightarrowdiamond",
- "nwsearrow",
- "neswarrow",
- "hknwarrow",
- "hknearrow",
- "hksearrow",
- "hkswarrow",
- NULL,
- NULL,
- NULL,
- NULL,
- "rdiagovfdiag",
- "fdiagovrdiag",
- "seovnearrow",
- "neovsearrow",
- "fdiagovnearrow",
- "rdiagovsearrow",
- "neovnwarrow",
- "nwovnearrow",
- "rightcurvedarrow",
- NULL,
- NULL,
- "leftdowncurvedarrow",
- "rightdowncurvedarrow",
- "cwhalfcirclearrow",
- "acwhalfcirclearrow",
- NULL,
- "acwundercurvearrow",
- "curvearrowrightminus",
- "curvearrowleftplus",
- "cwundercurvearrow",
- NULL,
- NULL,
- NULL,
- "rightarrowshortleftarrow",
- "leftarrowshortrightarrow",
- "shortrightarrowleftarrow",
- "rightarrowplus",
- "leftarrowplus",
- "rightarrowx",
- "leftrightarrowcircle",
- "twoheaduparrowcircle",
- "leftrightharpoonupdown",
- "leftrightharpoondownup",
- "updownharpoonrightleft",
- "updownharpoonleftright",
- "leftrightharpoonupup",
- "updownharpoonrightright",
- "leftrightharpoondowndown",
- "updownharpoonleftleft",
- "barleftharpoonup",
- "rightharpoonupbar",
- "barupharpoonright",
- "downharpoonrightbar",
- "barleftharpoondown",
- "rightharpoondownbar",
- "barupharpoonleft",
- "downharpoonleftbar",
- "leftharpoonupbar",
- "barrightharpoonup",
- "upharpoonrightbar",
- "bardownharpoonright",
- "leftharpoondownbar",
- "barrightharpoondown",
- "upharpoonleftbar",
- "bardownharpoonleft",
- "leftharpoonsupdown",
- "upharpoonsleftright",
- "rightharpoonsupdown",
- "downharpoonsleftright",
- "leftrightharpoonsup",
- "leftrightharpoonsdown",
- "rightleftharpoonsup",
- "rightleftharpoonsdown",
- "leftharpoonupdash",
- "dashleftharpoondown",
- "rightharpoonupdash",
- "dashrightharpoondown",
- "updownharpoonsleftright",
- "downupharpoonsleftright",
- "rightimply",
- "equalrightarrow",
- "similarrightarrow",
- "leftarrowsimilar",
- "rightarrowsimilar",
- "rightarrowapprox",
- "ltlarr",
- "leftarrowless",
- "gtrarr",
- "subrarr",
- "leftarrowsubset",
- "suplarr",
- "leftfishtail",
- "rightfishtail",
- "upfishtail",
- "downfishtail",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "rtriltri",
- "ltrivb",
- "vbrtri",
- "lfbowtie",
- "rfbowtie",
- "fbowtie",
- "lftimes",
- "rftimes",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "eqvparsl",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "ruledelayed",
- NULL,
- "dsol",
- "rsolbar",
- "xsol",
- "xbsol",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *tex_p0_b2a[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "congdot",
- NULL,
- NULL,
- "approxeqq",
- NULL,
- NULL,
- "eqqsim",
- "Coloneq",
- "eqeq",
- NULL,
- NULL,
- "equivDD",
- "ltcir",
- "gtcir",
- "ltquest",
- "gtquest",
- NULL,
- NULL,
- "lesdot",
- "gesdot",
- "lesdoto",
- "gesdoto",
- "lesdotor",
- "gesdotol",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "lsime",
- "gsime",
- "lsimg",
- "gsiml",
- "lgE",
- "glE",
- "lesges",
- "gesles",
- NULL,
- NULL,
- "elsdot",
- "egsdot",
- NULL,
- NULL,
- NULL,
- NULL,
- "simless",
- "simgtr",
- "simlE",
- "simgE",
- "Lt",
- "Gt",
- NULL,
- "glj",
- "gla",
- "ltcc",
- "gtcc",
- "lescc",
- "gescc",
- "smt",
- "lat",
- "smte",
- "late",
- "bumpeqq",
- NULL,
- NULL,
- NULL,
- NULL,
- "prE",
- "scE",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Pr",
- "Sc",
- "subsetdot",
- "supsetdot",
- "subsetplus",
- "supsetplus",
- "submult",
- "supmult",
- "subedot",
- "supedot",
- NULL,
- NULL,
- "subsim",
- "supsim",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "csub",
- "csup",
- "csube",
- "csupe",
- "subsup",
- "supsub",
- "subsub",
- "supsup",
- "suphsub",
- "supdsub",
- "forkv",
- "topfork",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "Barv",
- "vBar",
- "vBarv",
- "barV",
- "Vbar",
- "Not",
- "bNot",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *tex_p0_be2[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "rightdbkarrow",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "nrightwavyarrow",
- NULL,
- "nrightcurvedarrow",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "race",
- "acE",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *tex_p0_be3[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "lesg",
- "gesl",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "smtes",
- "lates",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "bsolhsub",
- "suphsol",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "congruence",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *tex_p0_be4[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "mostpos",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *tex_p0_be6[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "varrightfishtail",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char **tex_p0[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- tex_p0_b20,
- tex_p0_b21,
- tex_p0_b22,
- tex_p0_b23,
- NULL,
- NULL,
- NULL,
- tex_p0_b27,
- NULL,
- tex_p0_b29,
- tex_p0_b2a,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- tex_p0_be2,
- tex_p0_be3,
- tex_p0_be4,
- NULL,
- tex_p0_be6,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static NameList tex = {
- &agl,
- NU_("ΤεΧ Names"),
- { tex_p0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL },
- NULL, NULL, 0, NULL
-};
-/* ************************************************************************** */
-static const char *ams_p0_be2[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni219D0338",
- NULL,
- "uni29330338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2192.short",
- "uni2190.short",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni222AFE00",
- "uni2229FE00",
- "uni2294FE00",
- "uni2293FE00",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni223E0332.reversed",
- "uni223E0333",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2269FE00",
- NULL,
- NULL,
- "uni2268FE00",
- "uni22670338",
- "uni2A7E0338",
- "uni2A7D0338",
- "uni22660338",
- NULL,
- "uni2224.short",
- "uni2226.short",
- "uni228220D2",
- "uni228620D2",
- "uni2AC50338",
- "uni228320D2",
- "uni2AC60338",
- "uni228720D2",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2ACBFE00",
- "uni228AFE00",
- "uni228BFE00",
- "uni2ACCFE00",
- "uni224B0338",
- NULL,
- NULL,
- NULL,
- NULL,
- "uni226420D2",
- "uni226520D2",
- "uni003C20D2",
- "uni003E20D2",
- "uni2A6D0338",
- "uni224820D2",
- "uni2A700338",
- NULL,
- "uni2AA120D2",
- "uni2AA220D2",
- "uni226A0338",
- "uni226B0338",
- "uni22D80338",
- "uni22D90338",
- "uni22B520D2",
- "uni22B420D2",
- NULL,
- NULL,
- NULL,
- "uni006A.dotless",
- "uni210F.var",
- NULL,
- NULL,
- "uni222020D2",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_be3[] = {
- NULL,
- "uni2223.short",
- "uni2225.short",
- NULL,
- NULL,
- NULL,
- "uni2248.bold",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni22DAFE00",
- "uni22DBFE00",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2AACFE00",
- "uni2AADFE00",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni220B20D2",
- "uni220D0338",
- NULL,
- NULL,
- "uni220820D2",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2A15.up",
- "uni2A16.up",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni226120E5",
- "uni003D20E5",
- "uni2AFD20E5",
- "uni22500338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni22020338",
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2A10.up",
- NULL,
- "uni2A12.up",
- "uni2A13.up",
- "uni2A14.up",
- "uni2A17.up",
- "uni2A11.up",
- NULL,
- "uni22F50338",
- NULL,
- "uni22F90338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2026.em",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni220A0338",
- "uni227320D2",
- "uni227220D2",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni223E.reversed",
- NULL,
- NULL,
- NULL,
- NULL,
- "uni0265.superscript",
- "uni0252.superscript",
- NULL,
- NULL,
- NULL,
- "uni2A0F.up",
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2A9B20D2",
- "uni2A9C20D2",
- "uni2A9B0338",
- "uni2A9C0338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_be4[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni223E.var",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni223C20D2",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_be5[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2A3CFE00",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2AAF0338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni224220D2",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2AB00338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_be6[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- "uni228F0338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni22900338",
- "uni224E0338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2205.var",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni0077.subscript",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni1D0B.reversed",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni025102DE",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni025B02DE",
- "uni025402DE",
- NULL,
- "uni03C9.inverted",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni297D.var",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni223C.bold",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_be8[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni227E0338",
- "uni227F0338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2216.var",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni224F0338",
- "uni22420338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_bea[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni00730336",
- NULL,
- "uni006C0321",
- NULL,
- NULL,
- "uni03040304",
- NULL,
- NULL,
- "uni229CFE00",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni03020302",
- NULL,
- "uni03030303",
- "uni033103310331",
- "uni0331033103310331",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni03070302",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni03040303",
- "uni03310330",
- "uni03040308",
- "uni03300331",
- NULL,
- "uni00640321",
- "uni00680321",
- "uni006B0321",
- "uni00780321",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni00730321",
- "uni007A0321",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2034.notsup",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2A0B.up",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni227620D2",
- "uni227720D2",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_bec[] = {
- NULL,
- NULL,
- "uni2A3DFE00",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_bed[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni220A20D2",
- "uni220D20D2",
- "uni22F60338",
- "uni22FD0338",
- "uni22F620D2",
- "uni22FD20D2",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2295FE00",
- "uni2297FE00",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni224320D2",
- "uni224520D2",
- NULL,
- "uni2A6C0338",
- "uni2A6C20D2",
- "uni2A7020D2",
- "uni224D20D2",
- "uni223F.reversed",
- "uni003D20D2",
- NULL,
- "uni226120D2",
- "uni22630338",
- "uni226320D2",
- NULL,
- NULL,
- "uni2A7D20D2",
- "uni2A7E20D2",
- "uni226620D2",
- "uni226720D2",
- "uni2A950338",
- "uni2A960338",
- "uni2A9520D2",
- "uni2A9620D2",
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2A990338",
- "uni2A9A0338",
- "uni2A9920D2",
- "uni2A9A20D2",
- "uni2272FE00",
- "uni2273FE00",
- "uni2A9DFE00",
- "uni2A9EFE00",
- NULL,
- NULL,
- "uni227A20D2",
- "uni227B20D2",
- "uni227C20D2",
- "uni227D20D2",
- "uni22DE20D2",
- "uni22DF20D2",
- "uni22DE0338",
- "uni22DF0338",
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2AC520D2",
- "uni2AC620D2",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2AF40338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2A0A.lgdisplay",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni220A.narrow",
- "uni220D.narrow",
- NULL,
- "u1D6FB.narrow",
- "uni002820090029",
- "uni002822C50029",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_bee[] = {
- "stixEE00",
- "stixEE01",
- "stixEE02",
- "stixEE03",
- "stixEE04",
- "stixEE05",
- "stixEE06",
- "stixEE07",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "stixEE10",
- "stixEE11",
- "stixEE12",
- "stixEE13",
- "stixEE14",
- "stixEE15",
- "stixEE16",
- "stixEE17",
- "stixEE18",
- "stixEE19",
- "stixEE1A",
- "stixEE1B",
- "stixEE1C",
- "stixEE1D",
- "stixEE1E",
- "stixEE1F",
- "stixEE20",
- "stixEE21",
- "stixEE22",
- "stixEE23",
- "stixEE24",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "stixEE30",
- "stixEE31",
- "stixEE32",
- "stixEE33",
- "stixEE34",
- "stixEE35",
- "stixEE36",
- "stixEE37",
- "stixEE38",
- "stixEE39",
- "stixEE3A",
- "stixEE3B",
- "stixEE3C",
- "stixEE3D",
- "stixEE3E",
- NULL,
- "stixEE40",
- "stixEE41",
- "stixEE42",
- "stixEE43",
- "stixEE44",
- "stixEE45",
- "stixEE46",
- "stixEE47",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "stixEE50",
- "stixEE51",
- "stixEE52",
- "stixEE53",
- "stixEE54",
- "stixEE55",
- "stixEE56",
- "stixEE57",
- "stixEE58",
- "stixEE59",
- "stixEE5A",
- "stixEE5B",
- "stixEE5C",
- "stixEE5D",
- "stixEE5E",
- "stixEE5F",
- "stixEE60",
- "stixEE61",
- "stixEE62",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "stixEE70",
- "stixEE71",
- "stixEE72",
- "stixEE73",
- "stixEE74",
- "stixEE75",
- "stixEE76",
- "stixEE77",
- "stixEE78",
- "stixEE79",
- "stixEE7A",
- "stixEE7B",
- "stixEE7C",
- "stixEE7D",
- "stixEE7E",
- "stixEE7F",
- "stixEE80",
- "stixEE81",
- "stixEE82",
- "stixEE83",
- "stixEE84",
- "stixEE85",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "stixEE90",
- "stixEE91",
- "stixEE92",
- "stixEE93",
- "stixEE94",
- "stixEE95",
- "stixEE96",
- "stixEE97",
- "stixEE98",
- "stixEE99",
- "stixEE9A",
- "stixEE9B",
- "stixEE9C",
- "stixEE9D",
- "stixEE9E",
- "stixEE9F",
- "stixEEA0",
- "stixEEA1",
- "stixEEA2",
- "stixEEA3",
- "stixEEA4",
- "stixEEA5",
- "stixEEA6",
- "stixEEA7",
- "stixEEA8",
- "stixEEA9",
- "stixEEAA",
- "stixEEAB",
- "stixEEAC",
- NULL,
- NULL,
- NULL,
- "stixEEB0",
- "stixEEB1",
- "stixEEB2",
- "stixEEB3",
- "stixEEB4",
- "stixEEB5",
- "stixEEB6",
- "stixEEB7",
- "stixEEB8",
- "stixEEB9",
- "stixEEBA",
- "stixEEBB",
- "stixEEBC",
- "stixEEBD",
- "stixEEBE",
- "stixEEBF",
- "stixEEC0",
- "stixEEC1",
- "stixEEC2",
- "stixEEC3",
- "stixEEC4",
- "stixEEC5",
- "stixEEC6",
- "stixEEC7",
- "stixEEC8",
- "stixEEC9",
- "stixEECA",
- "stixEECB",
- NULL,
- "stixEECD",
- "stixEECE",
- "stixEECF",
- "stixEED0",
- "stixEED1",
- "stixEED2",
- "stixEED3",
- "stixEED4",
- "stixEED5",
- "stixEED6",
- "stixEED7",
- "stixEED8",
- "stixEED9",
- "stixEEDA",
- "stixEEDB",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_bf4[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni29CF0338",
- "uni29D00338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2AA10338",
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2AA20338",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char *ams_p0_bf5[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- "uni2191.short",
- "uni2193.short",
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static const char **ams_p0[] = {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- ams_p0_be2,
- ams_p0_be3,
- ams_p0_be4,
- ams_p0_be5,
- ams_p0_be6,
- NULL,
- ams_p0_be8,
- NULL,
- ams_p0_bea,
- NULL,
- ams_p0_bec,
- ams_p0_bed,
- ams_p0_bee,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- ams_p0_bf4,
- ams_p0_bf5,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
-};
-
-static NameList ams = {
- &tex,
- N_("AMS Names"),
- { ams_p0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL },
- NULL, NULL, 0, NULL
-};
-/* ************************************************************************** */
-static struct psaltnames psaltnames[] = {
- { "AEmacron", 0x01e2, 0 },
- { "AEsmall", 0xf7e6, 0 },
- { "Aacutesmall", 0xf7e1, 0 },
- { "Abreveacute", 0x1eae, 0 },
- { "Abrevecyrillic", 0x04d0, 0 },
- { "Abrevedotbelow", 0x1eb6, 0 },
- { "Abrevegrave", 0x1eb0, 0 },
- { "Abrevehookabove", 0x1eb2, 0 },
- { "Abrevetilde", 0x1eb4, 0 },
- { "Acaron", 0x01cd, 0 },
- { "Acircle", 0x24b6, 0 },
- { "Acircumflexacute", 0x1ea4, 0 },
- { "Acircumflexdotbelow", 0x1eac, 0 },
- { "Acircumflexgrave", 0x1ea6, 0 },
- { "Acircumflexhookabove", 0x1ea8, 0 },
- { "Acircumflexsmall", 0xf7e2, 0 },
- { "Acircumflextilde", 0x1eaa, 0 },
- { "Acute", 0xf6c9, 0 },
- { "Acutesmall", 0xf7b4, 0 },
- { "Acyrillic", 0x0410, 0 },
- { "Adblgrave", 0x0200, 0 },
- { "Adieresiscyrillic", 0x04d2, 0 },
- { "Adieresismacron", 0x01de, 0 },
- { "Adieresissmall", 0xf7e4, 0 },
- { "Adotbelow", 0x1ea0, 0 },
- { "Adotmacron", 0x01e0, 0 },
- { "Agravesmall", 0xf7e0, 0 },
- { "Ahookabove", 0x1ea2, 0 },
- { "Aiecyrillic", 0x04d4, 0 },
- { "Ainvertedbreve", 0x0202, 0 },
- { "Amonospace", 0xff21, 0 },
- { "Aringbelow", 0x1e00, 0 },
- { "Aringsmall", 0xf7e5, 0 },
- { "Asmall", 0xf761, 0 },
- { "Atildesmall", 0xf7e3, 0 },
- { "Aybarmenian", 0x0531, 0 },
- { "Bcircle", 0x24b7, 0 },
- { "Bdotaccent", 0x1e02, 0 },
- { "Bdotbelow", 0x1e04, 0 },
- { "Becyrillic", 0x0411, 0 },
- { "Benarmenian", 0x0532, 0 },
- { "Bhook", 0x0181, 0 },
- { "Blinebelow", 0x1e06, 0 },
- { "Bmonospace", 0xff22, 0 },
- { "Brevesmall", 0xf6f4, 0 },
- { "Bsmall", 0xf762, 0 },
- { "Btopbar", 0x0182, 0 },
- { "Caarmenian", 0x053e, 0 },
- { "Caron", 0xf6ca, 0 },
- { "Caronsmall", 0xf6f5, 0 },
- { "Ccedillaacute", 0x1e08, 0 },
- { "Ccedillasmall", 0xf7e7, 0 },
- { "Ccircle", 0x24b8, 0 },
- { "Cdot", 0x010a, 0 },
- { "Cedillasmall", 0xf7b8, 0 },
- { "Chaarmenian", 0x0549, 0 },
- { "Cheabkhasiancyrillic", 0x04bc, 0 },
- { "Checyrillic", 0x0427, 0 },
- { "Chedescenderabkhasiancyrillic", 0x04be, 0 },
- { "Chedescendercyrillic", 0x04b6, 0 },
- { "Chedieresiscyrillic", 0x04f4, 0 },
- { "Cheharmenian", 0x0543, 0 },
- { "Chekhakassiancyrillic", 0x04cb, 0 },
- { "Cheverticalstrokecyrillic", 0x04b8, 0 },
- { "Chook", 0x0187, 0 },
- { "Circumflexsmall", 0xf6f6, 0 },
- { "Cmonospace", 0xff23, 0 },
- { "Coarmenian", 0x0551, 0 },
- { "Csmall", 0xf763, 0 },
- { "DZ", 0x01f1, 0 },
- { "DZcaron", 0x01c4, 0 },
- { "Daarmenian", 0x0534, 0 },
- { "Dafrican", 0x0189, 0 },
- { "Dcedilla", 0x1e10, 0 },
- { "Dcircle", 0x24b9, 0 },
- { "Dcircumflexbelow", 0x1e12, 0 },
- { "Ddotaccent", 0x1e0a, 0 },
- { "Ddotbelow", 0x1e0c, 0 },
- { "Decyrillic", 0x0414, 0 },
- { "Deicoptic", 0x03ee, 0 },
- { "Deltagreek", 0x0394, 0 },
- { "Dhook", 0x018a, 0 },
- { "Dieresis", 0xf6cb, 0 },
- { "diaeresis", 0x00a8, 0 },
- { "Diaeresis", 0xf6cb, 0 },
- { "DieresisAcute", 0xf6cc, 0 },
- { "DieresisGrave", 0xf6cd, 0 },
- { "Dieresissmall", 0xf7a8, 0 },
- { "Digammagreek", 0x03dc, 0 },
- { "Djecyrillic", 0x0402, 0 },
- { "Dlinebelow", 0x1e0e, 0 },
- { "Dmonospace", 0xff24, 0 },
- { "Dotaccentsmall", 0xf6f7, 0 },
- { "Dslash", 0x0110, 0 },
- { "Dsmall", 0xf764, 0 },
- { "Dtopbar", 0x018b, 0 },
- { "Dz", 0x01f2, 0 },
- { "Dzcaron", 0x01c5, 0 },
- { "Dzeabkhasiancyrillic", 0x04e0, 0 },
- { "Dzecyrillic", 0x0405, 0 },
- { "Dzhecyrillic", 0x040f, 0 },
- { "Eacutesmall", 0xf7e9, 0 },
- { "Ecedillabreve", 0x1e1c, 0 },
- { "Echarmenian", 0x0535, 0 },
- { "Ecircle", 0x24ba, 0 },
- { "Ecircumflexacute", 0x1ebe, 0 },
- { "Ecircumflexbelow", 0x1e18, 0 },
- { "Ecircumflexdotbelow", 0x1ec6, 0 },
- { "Ecircumflexgrave", 0x1ec0, 0 },
- { "Ecircumflexhookabove", 0x1ec2, 0 },
- { "Ecircumflexsmall", 0xf7ea, 0 },
- { "Ecircumflextilde", 0x1ec4, 0 },
- { "Ecyrillic", 0x0404, 0 },
- { "Edblgrave", 0x0204, 0 },
- { "Edieresissmall", 0xf7eb, 0 },
- { "Edot", 0x0116, 0 },
- { "Edotbelow", 0x1eb8, 0 },
- { "Efcyrillic", 0x0424, 0 },
- { "Egravesmall", 0xf7e8, 0 },
- { "Eharmenian", 0x0537, 0 },
- { "Ehookabove", 0x1eba, 0 },
- { "Eightroman", 0x2167, 0 },
- { "Einvertedbreve", 0x0206, 0 },
- { "Eiotifiedcyrillic", 0x0464, 0 },
- { "Elcyrillic", 0x041b, 0 },
- { "Elevenroman", 0x216a, 0 },
- { "Emacronacute", 0x1e16, 0 },
- { "Emacrongrave", 0x1e14, 0 },
- { "Emcyrillic", 0x041c, 0 },
- { "Emonospace", 0xff25, 0 },
- { "Encyrillic", 0x041d, 0 },
- { "Endescendercyrillic", 0x04a2, 0 },
- { "Enghecyrillic", 0x04a4, 0 },
- { "Enhookcyrillic", 0x04c7, 0 },
- { "Eopen", 0x0190, 0 },
- { "Ercyrillic", 0x0420, 0 },
- { "Ereversed", 0x018e, 0 },
- { "Ereversedcyrillic", 0x042d, 0 },
- { "Escyrillic", 0x0421, 0 },
- { "Esdescendercyrillic", 0x04aa, 0 },
- { "Esh", 0x01a9, 0 },
- { "Esmall", 0xf765, 0 },
- { "Etarmenian", 0x0538, 0 },
- { "Ethsmall", 0xf7f0, 0 },
- { "Etilde", 0x1ebc, 0 },
- { "Etildebelow", 0x1e1a, 0 },
- { "Ezh", 0x01b7, 0 },
- { "Ezhcaron", 0x01ee, 0 },
- { "Ezhreversed", 0x01b8, 0 },
- { "Fcircle", 0x24bb, 0 },
- { "Fdotaccent", 0x1e1e, 0 },
- { "Feharmenian", 0x0556, 0 },
- { "Feicoptic", 0x03e4, 0 },
- { "Fhook", 0x0191, 0 },
- { "Fitacyrillic", 0x0472, 0 },
- { "Fiveroman", 0x2164, 0 },
- { "Fmonospace", 0xff26, 0 },
- { "Fourroman", 0x2163, 0 },
- { "Fsmall", 0xf766, 0 },
- { "GBsquare", 0x3387, 0 },
- { "Gacute", 0x01f4, 0 },
- { "Gammaafrican", 0x0194, 0 },
- { "Gangiacoptic", 0x03ea, 0 },
- { "Gcedilla", 0x0122, 0 },
- { "Gcircle", 0x24bc, 0 },
- { "Gdot", 0x0120, 0 },
- { "Gecyrillic", 0x0413, 0 },
- { "Ghadarmenian", 0x0542, 0 },
- { "Ghemiddlehookcyrillic", 0x0494, 0 },
- { "Ghestrokecyrillic", 0x0492, 0 },
- { "Gheupturncyrillic", 0x0490, 0 },
- { "Ghook", 0x0193, 0 },
- { "Gimarmenian", 0x0533, 0 },
- { "Gjecyrillic", 0x0403, 0 },
- { "Gmacron", 0x1e20, 0 },
- { "Gmonospace", 0xff27, 0 },
- { "Grave", 0xf6ce, 0 },
- { "Gravesmall", 0xf760, 0 },
- { "Gsmall", 0xf767, 0 },
- { "Gsmallhook", 0x029b, 0 },
- { "Gstroke", 0x01e4, 0 },
- { "HPsquare", 0x33cb, 0 },
- { "Haabkhasiancyrillic", 0x04a8, 0 },
- { "Hadescendercyrillic", 0x04b2, 0 },
- { "Hardsigncyrillic", 0x042a, 0 },
- { "Hbrevebelow", 0x1e2a, 0 },
- { "Hcedilla", 0x1e28, 0 },
- { "Hcircle", 0x24bd, 0 },
- { "Hdieresis", 0x1e26, 0 },
- { "Hdotaccent", 0x1e22, 0 },
- { "Hdotbelow", 0x1e24, 0 },
- { "Hmonospace", 0xff28, 0 },
- { "Hoarmenian", 0x0540, 0 },
- { "Horicoptic", 0x03e8, 0 },
- { "Hsmall", 0xf768, 0 },
- { "Hungarumlaut", 0xf6cf, 0 },
- { "Hungarumlautsmall", 0xf6f8, 0 },
- { "Hzsquare", 0x3390, 0 },
- { "IAcyrillic", 0x042f, 0 },
- { "IUcyrillic", 0x042e, 0 },
- { "Iacutesmall", 0xf7ed, 0 },
- { "Icaron", 0x01cf, 0 },
- { "Icircle", 0x24be, 0 },
- { "Icircumflexsmall", 0xf7ee, 0 },
- { "Icyrillic", 0x0406, 0 },
- { "Idblgrave", 0x0208, 0 },
- { "Idieresisacute", 0x1e2e, 0 },
- { "Idieresiscyrillic", 0x04e4, 0 },
- { "Idieresissmall", 0xf7ef, 0 },
- { "Idot", 0x0130, 0 },
- { "Idotbelow", 0x1eca, 0 },
- { "Iebrevecyrillic", 0x04d6, 0 },
- { "Iecyrillic", 0x0415, 0 },
- { "Igravesmall", 0xf7ec, 0 },
- { "Ihookabove", 0x1ec8, 0 },
- { "Iicyrillic", 0x0418, 0 },
- { "Iinvertedbreve", 0x020a, 0 },
- { "Iishortcyrillic", 0x0419, 0 },
- { "Imacroncyrillic", 0x04e2, 0 },
- { "Imonospace", 0xff29, 0 },
- { "Iniarmenian", 0x053b, 0 },
- { "Iocyrillic", 0x0401, 0 },
- { "Iotaafrican", 0x0196, 0 },
- { "Ismall", 0xf769, 0 },
- { "Istroke", 0x0197, 0 },
- { "Itildebelow", 0x1e2c, 0 },
- { "Izhitsacyrillic", 0x0474, 0 },
- { "Izhitsadblgravecyrillic", 0x0476, 0 },
- { "Jaarmenian", 0x0541, 0 },
- { "Jcircle", 0x24bf, 0 },
- { "Jecyrillic", 0x0408, 0 },
- { "Jheharmenian", 0x054b, 0 },
- { "Jmonospace", 0xff2a, 0 },
- { "Jsmall", 0xf76a, 0 },
- { "KBsquare", 0x3385, 0 },
- { "KKsquare", 0x33cd, 0 },
- { "Kabashkircyrillic", 0x04a0, 0 },
- { "Kacute", 0x1e30, 0 },
- { "Kacyrillic", 0x041a, 0 },
- { "Kadescendercyrillic", 0x049a, 0 },
- { "Kahookcyrillic", 0x04c3, 0 },
- { "Kastrokecyrillic", 0x049e, 0 },
- { "Kaverticalstrokecyrillic", 0x049c, 0 },
- { "Kcaron", 0x01e8, 0 },
- { "Kcedilla", 0x0136, 0 },
- { "Kcircle", 0x24c0, 0 },
- { "Kdotbelow", 0x1e32, 0 },
- { "Keharmenian", 0x0554, 0 },
- { "Kenarmenian", 0x053f, 0 },
- { "Khacyrillic", 0x0425, 0 },
- { "Kheicoptic", 0x03e6, 0 },
- { "Khook", 0x0198, 0 },
- { "Kjecyrillic", 0x040c, 0 },
- { "Klinebelow", 0x1e34, 0 },
- { "Kmonospace", 0xff2b, 0 },
- { "Koppacyrillic", 0x0480, 0 },
- { "Koppagreek", 0x03de, 0 },
- { "Ksicyrillic", 0x046e, 0 },
- { "Ksmall", 0xf76b, 0 },
- { "LJ", 0x01c7, 0 },
- { "LL", 0xf6bf, 0 },
- { "Lcedilla", 0x013b, 0 },
- { "Lcircle", 0x24c1, 0 },
- { "Lcircumflexbelow", 0x1e3c, 0 },
- { "Ldotaccent", 0x013f, 0 },
- { "Ldotbelow", 0x1e36, 0 },
- { "Ldotbelowmacron", 0x1e38, 0 },
- { "Liwnarmenian", 0x053c, 0 },
- { "Lj", 0x01c8, 0 },
- { "Ljecyrillic", 0x0409, 0 },
- { "Llinebelow", 0x1e3a, 0 },
- { "Lmonospace", 0xff2c, 0 },
- { "Lslashsmall", 0xf6f9, 0 },
- { "Lsmall", 0xf76c, 0 },
- { "MBsquare", 0x3386, 0 },
- { "Macron", 0xf6d0, 0 },
- { "Macronsmall", 0xf7af, 0 },
- { "Macute", 0x1e3e, 0 },
- { "Mcircle", 0x24c2, 0 },
- { "Mdotaccent", 0x1e40, 0 },
- { "Mdotbelow", 0x1e42, 0 },
- { "Menarmenian", 0x0544, 0 },
- { "Mmonospace", 0xff2d, 0 },
- { "Msmall", 0xf76d, 0 },
- { "Mturned", 0x019c, 0 },
- { "NJ", 0x01ca, 0 },
- { "Ncedilla", 0x0145, 0 },
- { "Ncircle", 0x24c3, 0 },
- { "Ncircumflexbelow", 0x1e4a, 0 },
- { "Ndotaccent", 0x1e44, 0 },
- { "Ndotbelow", 0x1e46, 0 },
- { "Nhookleft", 0x019d, 0 },
- { "Nineroman", 0x2168, 0 },
- { "Nj", 0x01cb, 0 },
- { "Njecyrillic", 0x040a, 0 },
- { "Nlinebelow", 0x1e48, 0 },
- { "Nmonospace", 0xff2e, 0 },
- { "Nowarmenian", 0x0546, 0 },
- { "Nsmall", 0xf76e, 0 },
- { "Ntildesmall", 0xf7f1, 0 },
- { "OEsmall", 0xf6fa, 0 },
- { "Oacutesmall", 0xf7f3, 0 },
- { "Obarredcyrillic", 0x04e8, 0 },
- { "Obarreddieresiscyrillic", 0x04ea, 0 },
- { "Ocaron", 0x01d1, 0 },
- { "Ocenteredtilde", 0x019f, 0 },
- { "Ocircle", 0x24c4, 0 },
- { "Ocircumflexacute", 0x1ed0, 0 },
- { "Ocircumflexdotbelow", 0x1ed8, 0 },
- { "Ocircumflexgrave", 0x1ed2, 0 },
- { "Ocircumflexhookabove", 0x1ed4, 0 },
- { "Ocircumflexsmall", 0xf7f4, 0 },
- { "Ocircumflextilde", 0x1ed6, 0 },
- { "Ocyrillic", 0x041e, 0 },
- { "Odblacute", 0x0150, 0 },
- { "Odblgrave", 0x020c, 0 },
- { "Odieresiscyrillic", 0x04e6, 0 },
- { "Odieresissmall", 0xf7f6, 0 },
- { "Odotbelow", 0x1ecc, 0 },
- { "Ogoneksmall", 0xf6fb, 0 },
- { "Ogravesmall", 0xf7f2, 0 },
- { "Oharmenian", 0x0555, 0 },
- { "Ohm", 0x2126, 0 },
- { "Ohookabove", 0x1ece, 0 },
- { "Ohornacute", 0x1eda, 0 },
- { "Ohorndotbelow", 0x1ee2, 0 },
- { "Ohorngrave", 0x1edc, 0 },
- { "Ohornhookabove", 0x1ede, 0 },
- { "Ohorntilde", 0x1ee0, 0 },
- { "Oi", 0x01a2, 0 },
- { "Oinvertedbreve", 0x020e, 0 },
- { "Omacronacute", 0x1e52, 0 },
- { "Omacrongrave", 0x1e50, 0 },
- { "Omegacyrillic", 0x0460, 0 },
- { "Omegagreek", 0x03a9, 0 },
- { "Omegaroundcyrillic", 0x047a, 0 },
- { "Omegatitlocyrillic", 0x047c, 0 },
- { "Omonospace", 0xff2f, 0 },
- { "Oneroman", 0x2160, 0 },
- { "Oogonek", 0x01ea, 0 },
- { "Oogonekmacron", 0x01ec, 0 },
- { "Oopen", 0x0186, 0 },
- { "Oslashsmall", 0xf7f8, 0 },
- { "Osmall", 0xf76f, 0 },
- { "Ostrokeacute", 0x01fe, 0 },
- { "Otcyrillic", 0x047e, 0 },
- { "Otildeacute", 0x1e4c, 0 },
- { "Otildedieresis", 0x1e4e, 0 },
- { "Otildesmall", 0xf7f5, 0 },
- { "Pacute", 0x1e54, 0 },
- { "Pcircle", 0x24c5, 0 },
- { "Pdotaccent", 0x1e56, 0 },
- { "Pecyrillic", 0x041f, 0 },
- { "Peharmenian", 0x054a, 0 },
- { "Pemiddlehookcyrillic", 0x04a6, 0 },
- { "Phook", 0x01a4, 0 },
- { "Piwrarmenian", 0x0553, 0 },
- { "Pmonospace", 0xff30, 0 },
- { "Psicyrillic", 0x0470, 0 },
- { "Psmall", 0xf770, 0 },
- { "Qcircle", 0x24c6, 0 },
- { "Qmonospace", 0xff31, 0 },
- { "Qsmall", 0xf771, 0 },
- { "Raarmenian", 0x054c, 0 },
- { "Rcedilla", 0x0156, 0 },
- { "Rcircle", 0x24c7, 0 },
- { "Rdblgrave", 0x0210, 0 },
- { "Rdotaccent", 0x1e58, 0 },
- { "Rdotbelow", 0x1e5a, 0 },
- { "Rdotbelowmacron", 0x1e5c, 0 },
- { "Reharmenian", 0x0550, 0 },
- { "Ringsmall", 0xf6fc, 0 },
- { "Rinvertedbreve", 0x0212, 0 },
- { "Rlinebelow", 0x1e5e, 0 },
- { "Rmonospace", 0xff32, 0 },
- { "Rsmall", 0xf772, 0 },
- { "Rsmallinverted", 0x0281, 0 },
- { "Rsmallinvertedsuperior", 0x02b6, 0 },
- { "Sacutedotaccent", 0x1e64, 0 },
- { "Sampigreek", 0x03e0, 0 },
- { "Scarondotaccent", 0x1e66, 0 },
- { "Scaronsmall", 0xf6fd, 0 },
- { "Schwa", 0x018f, 0 },
- { "Schwacyrillic", 0x04d8, 0 },
- { "Schwadieresiscyrillic", 0x04da, 0 },
- { "Scircle", 0x24c8, 0 },
- { "Sdotaccent", 0x1e60, 0 },
- { "Sdotbelow", 0x1e62, 0 },
- { "Sdotbelowdotaccent", 0x1e68, 0 },
- { "Seharmenian", 0x054d, 0 },
- { "Sevenroman", 0x2166, 0 },
- { "Shaarmenian", 0x0547, 0 },
- { "Shacyrillic", 0x0428, 0 },
- { "Shchacyrillic", 0x0429, 0 },
- { "Sheicoptic", 0x03e2, 0 },
- { "Shhacyrillic", 0x04ba, 0 },
- { "Shimacoptic", 0x03ec, 0 },
- { "Sixroman", 0x2165, 0 },
- { "Smonospace", 0xff33, 0 },
- { "Softsigncyrillic", 0x042c, 0 },
- { "Ssmall", 0xf773, 0 },
- { "Stigmagreek", 0x03da, 0 },
- { "Tcedilla", 0x0162, 0 },
- { "Tcircle", 0x24c9, 0 },
- { "Tcircumflexbelow", 0x1e70, 0 },
- { "Tdotaccent", 0x1e6a, 0 },
- { "Tdotbelow", 0x1e6c, 0 },
- { "Tecyrillic", 0x0422, 0 },
- { "Tedescendercyrillic", 0x04ac, 0 },
- { "Tenroman", 0x2169, 0 },
- { "Tetsecyrillic", 0x04b4, 0 },
- { "Thook", 0x01ac, 0 },
- { "Thornsmall", 0xf7fe, 0 },
- { "Threeroman", 0x2162, 0 },
- { "Tildesmall", 0xf6fe, 0 },
- { "Tiwnarmenian", 0x054f, 0 },
- { "Tlinebelow", 0x1e6e, 0 },
- { "Tmonospace", 0xff34, 0 },
- { "Toarmenian", 0x0539, 0 },
- { "Tonefive", 0x01bc, 0 },
- { "Tonesix", 0x0184, 0 },
- { "Tonetwo", 0x01a7, 0 },
- { "Tretroflexhook", 0x01ae, 0 },
- { "Tsecyrillic", 0x0426, 0 },
- { "Tshecyrillic", 0x040b, 0 },
- { "Tsmall", 0xf774, 0 },
- { "Twelveroman", 0x216b, 0 },
- { "Tworoman", 0x2161, 0 },
- { "Uacutesmall", 0xf7fa, 0 },
- { "Ucaron", 0x01d3, 0 },
- { "Ucircle", 0x24ca, 0 },
- { "Ucircumflexbelow", 0x1e76, 0 },
- { "Ucircumflexsmall", 0xf7fb, 0 },
- { "Ucyrillic", 0x0423, 0 },
- { "Udblacute", 0x0170, 0 },
- { "Udblgrave", 0x0214, 0 },
- { "Udieresisacute", 0x01d7, 0 },
- { "Udieresisbelow", 0x1e72, 0 },
- { "Udieresiscaron", 0x01d9, 0 },
- { "Udieresiscyrillic", 0x04f0, 0 },
- { "Udieresisgrave", 0x01db, 0 },
- { "Udieresismacron", 0x01d5, 0 },
- { "Udieresissmall", 0xf7fc, 0 },
- { "Udotbelow", 0x1ee4, 0 },
- { "Ugravesmall", 0xf7f9, 0 },
- { "Uhookabove", 0x1ee6, 0 },
- { "Uhornacute", 0x1ee8, 0 },
- { "Uhorndotbelow", 0x1ef0, 0 },
- { "Uhorngrave", 0x1eea, 0 },
- { "Uhornhookabove", 0x1eec, 0 },
- { "Uhorntilde", 0x1eee, 0 },
- { "Uhungarumlautcyrillic", 0x04f2, 0 },
- { "Uinvertedbreve", 0x0216, 0 },
- { "Ukcyrillic", 0x0478, 0 },
- { "Umacroncyrillic", 0x04ee, 0 },
- { "Umacrondieresis", 0x1e7a, 0 },
- { "Umonospace", 0xff35, 0 },
- { "Upsilonacutehooksymbolgreek", 0x03d3, 0 },
- { "Upsilonafrican", 0x01b1, 0 },
- { "Upsilondieresishooksymbolgreek", 0x03d4, 0 },
- { "Upsilonhooksymbol", 0x03d2, 0 },
- { "Ushortcyrillic", 0x040e, 0 },
- { "Usmall", 0xf775, 0 },
- { "Ustraightcyrillic", 0x04ae, 0 },
- { "Ustraightstrokecyrillic", 0x04b0, 0 },
- { "Utildeacute", 0x1e78, 0 },
- { "Utildebelow", 0x1e74, 0 },
- { "Vcircle", 0x24cb, 0 },
- { "Vdotbelow", 0x1e7e, 0 },
- { "Vecyrillic", 0x0412, 0 },
- { "Vewarmenian", 0x054e, 0 },
- { "Vhook", 0x01b2, 0 },
- { "Vmonospace", 0xff36, 0 },
- { "Voarmenian", 0x0548, 0 },
- { "Vsmall", 0xf776, 0 },
- { "Vtilde", 0x1e7c, 0 },
- { "Wcircle", 0x24cc, 0 },
- { "Wdotaccent", 0x1e86, 0 },
- { "Wdotbelow", 0x1e88, 0 },
- { "Wmonospace", 0xff37, 0 },
- { "Wsmall", 0xf777, 0 },
- { "Xcircle", 0x24cd, 0 },
- { "Xdieresis", 0x1e8c, 0 },
- { "Xdotaccent", 0x1e8a, 0 },
- { "Xeharmenian", 0x053d, 0 },
- { "Xmonospace", 0xff38, 0 },
- { "Xsmall", 0xf778, 0 },
- { "Yacutesmall", 0xf7fd, 0 },
- { "Yatcyrillic", 0x0462, 0 },
- { "Ycircle", 0x24ce, 0 },
- { "Ydieresissmall", 0xf7ff, 0 },
- { "Ydotaccent", 0x1e8e, 0 },
- { "Ydotbelow", 0x1ef4, 0 },
- { "Yericyrillic", 0x042b, 0 },
- { "Yerudieresiscyrillic", 0x04f8, 0 },
- { "Yhook", 0x01b3, 0 },
- { "Yhookabove", 0x1ef6, 0 },
- { "Yiarmenian", 0x0545, 0 },
- { "Yicyrillic", 0x0407, 0 },
- { "Yiwnarmenian", 0x0552, 0 },
- { "Ymonospace", 0xff39, 0 },
- { "Ysmall", 0xf779, 0 },
- { "Ytilde", 0x1ef8, 0 },
- { "Yusbigcyrillic", 0x046a, 0 },
- { "Yusbigiotifiedcyrillic", 0x046c, 0 },
- { "Yuslittlecyrillic", 0x0466, 0 },
- { "Yuslittleiotifiedcyrillic", 0x0468, 0 },
- { "Zaarmenian", 0x0536, 0 },
- { "Zcaronsmall", 0xf6ff, 0 },
- { "Zcircle", 0x24cf, 0 },
- { "Zcircumflex", 0x1e90, 0 },
- { "Zdot", 0x017b, 0 },
- { "Zdotbelow", 0x1e92, 0 },
- { "Zecyrillic", 0x0417, 0 },
- { "Zedescendercyrillic", 0x0498, 0 },
- { "Zedieresiscyrillic", 0x04de, 0 },
- { "Zhearmenian", 0x053a, 0 },
- { "Zhebrevecyrillic", 0x04c1, 0 },
- { "Zhecyrillic", 0x0416, 0 },
- { "Zhedescendercyrillic", 0x0496, 0 },
- { "Zhedieresiscyrillic", 0x04dc, 0 },
- { "Zlinebelow", 0x1e94, 0 },
- { "Zmonospace", 0xff3a, 0 },
- { "Zsmall", 0xf77a, 0 },
- { "Zstroke", 0x01b5, 0 },
- { "aabengali", 0x0986, 0 },
- { "aadeva", 0x0906, 0 },
- { "aagujarati", 0x0a86, 0 },
- { "aagurmukhi", 0x0a06, 0 },
- { "aamatragurmukhi", 0x0a3e, 0 },
- { "aarusquare", 0x3303, 0 },
- { "aavowelsignbengali", 0x09be, 0 },
- { "aavowelsigndeva", 0x093e, 0 },
- { "aavowelsigngujarati", 0x0abe, 0 },
- { "abbreviationmarkarmenian", 0x055f, 0 },
- { "abbreviationsigndeva", 0x0970, 0 },
- { "abengali", 0x0985, 0 },
- { "abopomofo", 0x311a, 0 },
- { "abreveacute", 0x1eaf, 0 },
- { "abrevecyrillic", 0x04d1, 0 },
- { "abrevedotbelow", 0x1eb7, 0 },
- { "abrevegrave", 0x1eb1, 0 },
- { "abrevehookabove", 0x1eb3, 0 },
- { "abrevetilde", 0x1eb5, 0 },
- { "acaron", 0x01ce, 0 },
- { "acircle", 0x24d0, 0 },
- { "acircumflexacute", 0x1ea5, 0 },
- { "acircumflexdotbelow", 0x1ead, 0 },
- { "acircumflexgrave", 0x1ea7, 0 },
- { "acircumflexhookabove", 0x1ea9, 0 },
- { "acircumflextilde", 0x1eab, 0 },
- { "acutebelowcmb", 0x0317, 0 },
- { "acutecmb", 0x0301, 0 },
- { "acutedeva", 0x0954, 0 },
- { "acutelowmod", 0x02cf, 0 },
- { "acutetonecmb", 0x0341, 0 },
- { "acyrillic", 0x0430, 0 },
- { "adblgrave", 0x0201, 0 },
- { "addakgurmukhi", 0x0a71, 0 },
- { "adeva", 0x0905, 0 },
- { "adieresiscyrillic", 0x04d3, 0 },
- { "adieresismacron", 0x01df, 0 },
- { "adotbelow", 0x1ea1, 0 },
- { "adotmacron", 0x01e1, 0 },
- { "aekorean", 0x3150, 0 },
- { "aemacron", 0x01e3, 0 },
- { "afii08941", 0x20a4, 0 },
- { "afii10063", 0xf6c4, 0 },
- { "afii10064", 0xf6c5, 0 },
- { "afii10192", 0xf6c6, 0 },
- { "afii10831", 0xf6c7, 0 },
- { "afii10832", 0xf6c8, 0 },
- { "afii57694", 0xfb2a, 0 },
- { "afii57695", 0xfb2b, 0 },
- { "afii57700", 0xfb4b, 0 },
- { "afii57705", 0xfb1f, 0 },
- { "afii57723", 0xfb35, 0 },
- { "agujarati", 0x0a85, 0 },
- { "agurmukhi", 0x0a05, 0 },
- { "ahiragana", 0x3042, 0 },
- { "ahookabove", 0x1ea3, 0 },
- { "aibengali", 0x0990, 0 },
- { "aibopomofo", 0x311e, 0 },
- { "aideva", 0x0910, 0 },
- { "aiecyrillic", 0x04d5, 0 },
- { "aigujarati", 0x0a90, 0 },
- { "aigurmukhi", 0x0a10, 0 },
- { "aimatragurmukhi", 0x0a48, 0 },
- { "ainarabic", 0x0639, 0 },
- { "ainfinalarabic", 0xfeca, 0 },
- { "aininitialarabic", 0xfecb, 0 },
- { "ainmedialarabic", 0xfecc, 0 },
- { "ainvertedbreve", 0x0203, 0 },
- { "aivowelsignbengali", 0x09c8, 0 },
- { "aivowelsigndeva", 0x0948, 0 },
- { "aivowelsigngujarati", 0x0ac8, 0 },
- { "akatakana", 0x30a2, 0 },
- { "akatakanahalfwidth", 0xff71, 0 },
- { "akorean", 0x314f, 0 },
- { "alef", 0x05d0, 0 },
- { "alefarabic", 0x0627, 0 },
- { "alefdageshhebrew", 0xfb30, 0 },
- { "aleffinalarabic", 0xfe8e, 0 },
- { "alefhamzaabovearabic", 0x0623, 0 },
- { "alefhamzaabovefinalarabic", 0xfe84, 0 },
- { "alefhamzabelowarabic", 0x0625, 0 },
- { "alefhamzabelowfinalarabic", 0xfe88, 0 },
- { "alefhebrew", 0x05d0, 0 },
- { "aleflamedhebrew", 0xfb4f, 0 },
- { "alefmaddaabovearabic", 0x0622, 0 },
- { "alefmaddaabovefinalarabic", 0xfe82, 0 },
- { "alefmaksuraarabic", 0x0649, 0 },
- { "alefmaksurafinalarabic", 0xfef0, 0 },
- { "alefmaksurainitialarabic", 0xfef3, 0 },
- { "alefmaksuramedialarabic", 0xfef4, 0 },
- { "alefpatahhebrew", 0xfb2e, 0 },
- { "alefqamatshebrew", 0xfb2f, 0 },
- { "allequal", 0x224c, 0 },
- { "amonospace", 0xff41, 0 },
- { "ampersandmonospace", 0xff06, 0 },
- { "ampersandsmall", 0xf726, 0 },
- { "amsquare", 0x33c2, 0 },
- { "anbopomofo", 0x3122, 0 },
- { "angbopomofo", 0x3124, 0 },
- { "angkhankhuthai", 0x0e5a, 0 },
- { "anglebracketleft", 0x3008, 0 },
- { "anglebracketleftvertical", 0xfe3f, 0 },
- { "anglebracketright", 0x3009, 0 },
- { "anglebracketrightvertical", 0xfe40, 0 },
- { "angstrom", 0x212b, 0 },
- { "anudattadeva", 0x0952, 0 },
- { "anusvarabengali", 0x0982, 0 },
- { "anusvaradeva", 0x0902, 0 },
- { "anusvaragujarati", 0x0a82, 0 },
- { "apaatosquare", 0x3300, 0 },
- { "aparen", 0x249c, 0 },
- { "apostrophearmenian", 0x055a, 0 },
- { "apostrophemod", 0x02bc, 0 },
- { "apple", 0xf8ff, 0 },
- { "approaches", 0x2250, 0 },
- { "approxequalorimage", 0x2252, 0 },
- { "approximatelyequal", 0x2245, 0 },
- { "araeaekorean", 0x318e, 0 },
- { "araeakorean", 0x318d, 0 },
- { "arc", 0x2312, 0 },
- { "arighthalfring", 0x1e9a, 0 },
- { "aringbelow", 0x1e01, 0 },
- { "arrowdashdown", 0x21e3, 0 },
- { "arrowdashleft", 0x21e0, 0 },
- { "arrowdashright", 0x21e2, 0 },
- { "arrowdashup", 0x21e1, 0 },
- { "arrowdownleft", 0x2199, 0 },
- { "arrowdownright", 0x2198, 0 },
- { "arrowdownwhite", 0x21e9, 0 },
- { "arrowheaddownmod", 0x02c5, 0 },
- { "arrowheadleftmod", 0x02c2, 0 },
- { "arrowheadrightmod", 0x02c3, 0 },
- { "arrowheadupmod", 0x02c4, 0 },
- { "arrowhorizex", 0xf8e7, 0 },
- { "arrowleftdbl", 0x21d0, 0 },
- { "arrowleftdblstroke", 0x21cd, 0 },
- { "arrowleftoverright", 0x21c6, 0 },
- { "arrowleftwhite", 0x21e6, 0 },
- { "arrowrightdblstroke", 0x21cf, 0 },
- { "arrowrightheavy", 0x279e, 0 },
- { "arrowrightoverleft", 0x21c4, 0 },
- { "arrowrightwhite", 0x21e8, 0 },
- { "arrowtableft", 0x21e4, 0 },
- { "arrowtabright", 0x21e5, 0 },
- { "arrowupdownbase", 0x21a8, 0 },
- { "arrowupleft", 0x2196, 0 },
- { "arrowupleftofdown", 0x21c5, 0 },
- { "arrowupright", 0x2197, 0 },
- { "arrowupwhite", 0x21e7, 0 },
- { "arrowvertex", 0xf8e6, 0 },
- { "asciicircummonospace", 0xff3e, 0 },
- { "asciitildemonospace", 0xff5e, 0 },
- { "ascript", 0x0251, 0 },
- { "ascriptturned", 0x0252, 0 },
- { "asmallhiragana", 0x3041, 0 },
- { "asmallkatakana", 0x30a1, 0 },
- { "asmallkatakanahalfwidth", 0xff67, 0 },
- { "asteriskaltonearabic", 0x066d, 0 },
- { "asteriskarabic", 0x066d, 0 },
- { "asteriskmonospace", 0xff0a, 0 },
- { "asterisksmall", 0xfe61, 0 },
- { "asterism", 0x2042, 0 },
- { "asuperior", 0xf6e9, 0 },
- { "asymptoticallyequal", 0x2243, 0 },
- { "atmonospace", 0xff20, 0 },
- { "atsmall", 0xfe6b, 0 },
- { "aturned", 0x0250, 0 },
- { "aubengali", 0x0994, 0 },
- { "aubopomofo", 0x3120, 0 },
- { "audeva", 0x0914, 0 },
- { "augujarati", 0x0a94, 0 },
- { "augurmukhi", 0x0a14, 0 },
- { "aulengthmarkbengali", 0x09d7, 0 },
- { "aumatragurmukhi", 0x0a4c, 0 },
- { "auvowelsignbengali", 0x09cc, 0 },
- { "auvowelsigndeva", 0x094c, 0 },
- { "auvowelsigngujarati", 0x0acc, 0 },
- { "avagrahadeva", 0x093d, 0 },
- { "aybarmenian", 0x0561, 0 },
- { "ayin", 0x05e2, 0 },
- { "ayinaltonehebrew", 0xfb20, 0 },
- { "ayinhebrew", 0x05e2, 0 },
- { "babengali", 0x09ac, 0 },
- { "backslashmonospace", 0xff3c, 0 },
- { "badeva", 0x092c, 0 },
- { "bagujarati", 0x0aac, 0 },
- { "bagurmukhi", 0x0a2c, 0 },
- { "bahiragana", 0x3070, 0 },
- { "bahtthai", 0x0e3f, 0 },
- { "bakatakana", 0x30d0, 0 },
- { "barmonospace", 0xff5c, 0 },
- { "bbopomofo", 0x3105, 0 },
- { "bcircle", 0x24d1, 0 },
- { "bdotaccent", 0x1e03, 0 },
- { "bdotbelow", 0x1e05, 0 },
- { "beamedsixteenthnotes", 0x266c, 0 },
- { "because", 0x2235, 0 },
- { "becyrillic", 0x0431, 0 },
- { "beharabic", 0x0628, 0 },
- { "behfinalarabic", 0xfe90, 0 },
- { "behinitialarabic", 0xfe91, 0 },
- { "behiragana", 0x3079, 0 },
- { "behmedialarabic", 0xfe92, 0 },
- { "behmeeminitialarabic", 0xfc9f, 0 },
- { "behmeemisolatedarabic", 0xfc08, 0 },
- { "behnoonfinalarabic", 0xfc6d, 0 },
- { "bekatakana", 0x30d9, 0 },
- { "benarmenian", 0x0562, 0 },
- { "bet", 0x05d1, 0 },
- { "betasymbolgreek", 0x03d0, 0 },
- { "betdagesh", 0xfb31, 0 },
- { "betdageshhebrew", 0xfb31, 0 },
- { "bethebrew", 0x05d1, 0 },
- { "betrafehebrew", 0xfb4c, 0 },
- { "bhabengali", 0x09ad, 0 },
- { "bhadeva", 0x092d, 0 },
- { "bhagujarati", 0x0aad, 0 },
- { "bhagurmukhi", 0x0a2d, 0 },
- { "bhook", 0x0253, 0 },
- { "bihiragana", 0x3073, 0 },
- { "bikatakana", 0x30d3, 0 },
- { "bilabialclick", 0x0298, 0 },
- { "bindigurmukhi", 0x0a02, 0 },
- { "birusquare", 0x3331, 0 },
- { "blackcircle", 0x25cf, 0 },
- { "blackdiamond", 0x25c6, 0 },
- { "blackdownpointingtriangle", 0x25bc, 0 },
- { "blackleftpointingpointer", 0x25c4, 0 },
- { "blackleftpointingtriangle", 0x25c0, 0 },
- { "blacklenticularbracketleft", 0x3010, 0 },
- { "blacklenticularbracketleftvertical", 0xfe3b, 0 },
- { "blacklenticularbracketright", 0x3011, 0 },
- { "blacklenticularbracketrightvertical", 0xfe3c, 0 },
- { "blacklowerlefttriangle", 0x25e3, 0 },
- { "blacklowerrighttriangle", 0x25e2, 0 },
- { "blackrectangle", 0x25ac, 0 },
- { "blackrightpointingpointer", 0x25ba, 0 },
- { "blackrightpointingtriangle", 0x25b6, 0 },
- { "blacksmallsquare", 0x25aa, 0 },
- { "blacksmilingface", 0x263b, 0 },
- { "blacksquare", 0x25a0, 0 },
- { "blackstar", 0x2605, 0 },
- { "blackupperlefttriangle", 0x25e4, 0 },
- { "blackupperrighttriangle", 0x25e5, 0 },
- { "blackuppointingsmalltriangle", 0x25b4, 0 },
- { "blackuppointingtriangle", 0x25b2, 0 },
- { "blank", 0x2423, 0 },
- { "blinebelow", 0x1e07, 0 },
- { "bmonospace", 0xff42, 0 },
- { "bobaimaithai", 0x0e1a, 0 },
- { "bohiragana", 0x307c, 0 },
- { "bokatakana", 0x30dc, 0 },
- { "bparen", 0x249d, 0 },
- { "bqsquare", 0x33c3, 0 },
- { "braceex", 0xf8f4, 0 },
- { "braceleftbt", 0xf8f3, 0 },
- { "braceleftmid", 0xf8f2, 0 },
- { "braceleftmonospace", 0xff5b, 0 },
- { "braceleftsmall", 0xfe5b, 0 },
- { "bracelefttp", 0xf8f1, 0 },
- { "braceleftvertical", 0xfe37, 0 },
- { "bracerightbt", 0xf8fe, 0 },
- { "bracerightmid", 0xf8fd, 0 },
- { "bracerightmonospace", 0xff5d, 0 },
- { "bracerightsmall", 0xfe5c, 0 },
- { "bracerighttp", 0xf8fc, 0 },
- { "bracerightvertical", 0xfe38, 0 },
- { "bracketleftbt", 0xf8f0, 0 },
- { "bracketleftex", 0xf8ef, 0 },
- { "bracketleftmonospace", 0xff3b, 0 },
- { "bracketlefttp", 0xf8ee, 0 },
- { "bracketrightbt", 0xf8fb, 0 },
- { "bracketrightex", 0xf8fa, 0 },
- { "bracketrightmonospace", 0xff3d, 0 },
- { "bracketrighttp", 0xf8f9, 0 },
- { "brevebelowcmb", 0x032e, 0 },
- { "brevecmb", 0x0306, 0 },
- { "breveinvertedbelowcmb", 0x032f, 0 },
- { "breveinvertedcmb", 0x0311, 0 },
- { "breveinverteddoublecmb", 0x0361, 0 },
- { "bridgebelowcmb", 0x032a, 0 },
- { "bridgeinvertedbelowcmb", 0x033a, 0 },
- { "bstroke", 0x0180, 0 },
- { "bsuperior", 0xf6ea, 0 },
- { "btopbar", 0x0183, 0 },
- { "buhiragana", 0x3076, 0 },
- { "bukatakana", 0x30d6, 0 },
- { "bulletinverse", 0x25d8, 0 },
- { "bulletoperator", 0x2219, 0 },
- { "bullseye", 0x25ce, 0 },
- { "caarmenian", 0x056e, 0 },
- { "cabengali", 0x099a, 0 },
- { "cadeva", 0x091a, 0 },
- { "cagujarati", 0x0a9a, 0 },
- { "cagurmukhi", 0x0a1a, 0 },
- { "calsquare", 0x3388, 0 },
- { "candrabindubengali", 0x0981, 0 },
- { "candrabinducmb", 0x0310, 0 },
- { "candrabindudeva", 0x0901, 0 },
- { "candrabindugujarati", 0x0a81, 0 },
- { "capslock", 0x21ea, 0 },
- { "careof", 0x2105, 0 },
- { "caronbelowcmb", 0x032c, 0 },
- { "caroncmb", 0x030c, 0 },
- { "cbopomofo", 0x3118, 0 },
- { "ccedillaacute", 0x1e09, 0 },
- { "ccircle", 0x24d2, 0 },
- { "ccurl", 0x0255, 0 },
- { "cdot", 0x010b, 0 },
- { "cdsquare", 0x33c5, 0 },
- { "cedillacmb", 0x0327, 0 },
- { "centigrade", 0x2103, 0 },
- { "centinferior", 0xf6df, 0 },
- { "centmonospace", 0xffe0, 0 },
- { "centoldstyle", 0xf7a2, 0 },
- { "centsuperior", 0xf6e0, 0 },
- { "chaarmenian", 0x0579, 0 },
- { "chabengali", 0x099b, 0 },
- { "chadeva", 0x091b, 0 },
- { "chagujarati", 0x0a9b, 0 },
- { "chagurmukhi", 0x0a1b, 0 },
- { "chbopomofo", 0x3114, 0 },
- { "cheabkhasiancyrillic", 0x04bd, 0 },
- { "checkmark", 0x2713, 0 },
- { "checyrillic", 0x0447, 0 },
- { "chedescenderabkhasiancyrillic", 0x04bf, 0 },
- { "chedescendercyrillic", 0x04b7, 0 },
- { "chedieresiscyrillic", 0x04f5, 0 },
- { "cheharmenian", 0x0573, 0 },
- { "chekhakassiancyrillic", 0x04cc, 0 },
- { "cheverticalstrokecyrillic", 0x04b9, 0 },
- { "chieuchacirclekorean", 0x3277, 0 },
- { "chieuchaparenkorean", 0x3217, 0 },
- { "chieuchcirclekorean", 0x3269, 0 },
- { "chieuchkorean", 0x314a, 0 },
- { "chieuchparenkorean", 0x3209, 0 },
- { "chochangthai", 0x0e0a, 0 },
- { "chochanthai", 0x0e08, 0 },
- { "chochingthai", 0x0e09, 0 },
- { "chochoethai", 0x0e0c, 0 },
- { "chook", 0x0188, 0 },
- { "cieucacirclekorean", 0x3276, 0 },
- { "cieucaparenkorean", 0x3216, 0 },
- { "cieuccirclekorean", 0x3268, 0 },
- { "cieuckorean", 0x3148, 0 },
- { "cieucparenkorean", 0x3208, 0 },
- { "cieucuparenkorean", 0x321c, 0 },
- { "circleot", 0x2299, 0 }, /* Typo in Adobe's glyphlist */
- { "circledot", 0x2299, 0 }, /* But same typo exists in acrobat */
- { "circlepostalmark", 0x3036, 0 },
- { "circlewithlefthalfblack", 0x25d0, 0 },
- { "circlewithrighthalfblack", 0x25d1, 0 },
- { "circumflexbelowcmb", 0x032d, 0 },
- { "circumflexcmb", 0x0302, 0 },
- { "clear", 0x2327, 0 },
- { "clickalveolar", 0x01c2, 0 },
- { "clickdental", 0x01c0, 0 },
- { "clicklateral", 0x01c1, 0 },
- { "clickretroflex", 0x01c3, 0 },
- { "clubsuitblack", 0x2663, 0 },
- { "clubsuitwhite", 0x2667, 0 },
- { "cmcubedsquare", 0x33a4, 0 },
- { "cmonospace", 0xff43, 0 },
- { "cmsquaredsquare", 0x33a0, 0 },
- { "coarmenian", 0x0581, 0 },
- { "colonmonospace", 0xff1a, 0 },
- { "colonsign", 0x20a1, 0 },
- { "colonsmall", 0xfe55, 0 },
- { "colontriangularhalfmod", 0x02d1, 0 },
- { "colontriangularmod", 0x02d0, 0 },
- { "commaabovecmb", 0x0313, 0 },
- { "commaaboverightcmb", 0x0315, 0 },
- { "commaaccent", 0xf6c3, 0 },
- { "commaarabic", 0x060c, 0 },
- { "commaarmenian", 0x055d, 0 },
- { "commainferior", 0xf6e1, 0 },
- { "commamonospace", 0xff0c, 0 },
- { "commareversedabovecmb", 0x0314, 0 },
- { "commareversedmod", 0x02bd, 0 },
- { "commasmall", 0xfe50, 0 },
- { "commasuperior", 0xf6e2, 0 },
- { "commaturnedabovecmb", 0x0312, 0 },
- { "commaturnedmod", 0x02bb, 0 },
- { "compass", 0x263c, 0 },
- { "contourintegral", 0x222e, 0 },
- { "control", 0x2303, 0 },
- { "controlACK", 0x0006, 0 },
- { "controlBEL", 0x0007, 0 },
- { "controlBS", 0x0008, 0 },
- { "controlCAN", 0x0018, 0 },
- { "controlCR", 0x000d, 0 },
- { "controlDC1", 0x0011, 0 },
- { "controlDC2", 0x0012, 0 },
- { "controlDC3", 0x0013, 0 },
- { "controlDC4", 0x0014, 0 },
- { "controlDEL", 0x007f, 0 },
- { "controlDLE", 0x0010, 0 },
- { "controlEM", 0x0019, 0 },
- { "controlENQ", 0x0005, 0 },
- { "controlEOT", 0x0004, 0 },
- { "controlESC", 0x001b, 0 },
- { "controlETB", 0x0017, 0 },
- { "controlETX", 0x0003, 0 },
- { "controlFF", 0x000c, 0 },
- { "controlFS", 0x001c, 0 },
- { "controlGS", 0x001d, 0 },
- { "controlHT", 0x0009, 0 },
- { "controlLF", 0x000a, 0 },
- { "controlNAK", 0x0015, 0 },
- { "controlRS", 0x001e, 0 },
- { "controlSI", 0x000f, 0 },
- { "controlSO", 0x000e, 0 },
- { "controlSOT", 0x0002, 0 },
- { "controlSTX", 0x0001, 0 },
- { "controlSUB", 0x001a, 0 },
- { "controlSYN", 0x0016, 0 },
- { "controlUS", 0x001f, 0 },
- { "controlVT", 0x000b, 0 },
- { "copyrightsans", 0xf8e9, 0 },
- { "copyrightserif", 0xf6d9, 0 },
- { "cornerbracketleft", 0x300c, 0 },
- { "cornerbracketlefthalfwidth", 0xff62, 0 },
- { "cornerbracketleftvertical", 0xfe41, 0 },
- { "cornerbracketright", 0x300d, 0 },
- { "cornerbracketrighthalfwidth", 0xff63, 0 },
- { "cornerbracketrightvertical", 0xfe42, 0 },
- { "corporationsquare", 0x337f, 0 },
- { "cosquare", 0x33c7, 0 },
- { "coverkgsquare", 0x33c6, 0 },
- { "cparen", 0x249e, 0 },
- { "cruzeiro", 0x20a2, 0 },
- { "cstretched", 0x0297, 0 },
- { "curlyand", 0x22cf, 0 },
- { "curlyor", 0x22ce, 0 },
- { "cyrBreve", 0xf6d1, 0 },
- { "cyrFlex", 0xf6d2, 0 },
- { "cyrbreve", 0xf6d4, 0 },
- { "cyrflex", 0xf6d5, 0 },
- { "daarmenian", 0x0564, 0 },
- { "dabengali", 0x09a6, 0 },
- { "dadarabic", 0x0636, 0 },
- { "dadeva", 0x0926, 0 },
- { "dadfinalarabic", 0xfebe, 0 },
- { "dadinitialarabic", 0xfebf, 0 },
- { "dadmedialarabic", 0xfec0, 0 },
- { "dagesh", 0x05bc, 0 },
- { "dageshhebrew", 0x05bc, 0 },
- { "dagujarati", 0x0aa6, 0 },
- { "dagurmukhi", 0x0a26, 0 },
- { "dahiragana", 0x3060, 0 },
- { "dakatakana", 0x30c0, 0 },
- { "dalarabic", 0x062f, 0 },
- { "dalet", 0x05d3, 0 },
- { "daletdagesh", 0xfb33, 0 },
- { "daletdageshhebrew", 0xfb33, 0 },
- { "dalethatafpatah", 0x05d3, 0 },
- { "dalethatafpatahhebrew", 0x05d3, 0 },
- { "dalethatafsegol", 0x05d3, 0 },
- { "dalethatafsegolhebrew", 0x05d3, 0 },
- { "dalethebrew", 0x05d3, 0 },
- { "dalethiriq", 0x05d3, 0 },
- { "dalethiriqhebrew", 0x05d3, 0 },
- { "daletholam", 0x05d3, 0 },
- { "daletholamhebrew", 0x05d3, 0 },
- { "daletpatah", 0x05d3, 0 },
- { "daletpatahhebrew", 0x05d3, 0 },
- { "daletqamats", 0x05d3, 0 },
- { "daletqamatshebrew", 0x05d3, 0 },
- { "daletqubuts", 0x05d3, 0 },
- { "daletqubutshebrew", 0x05d3, 0 },
- { "daletsegol", 0x05d3, 0 },
- { "daletsegolhebrew", 0x05d3, 0 },
- { "daletsheva", 0x05d3, 0 },
- { "daletshevahebrew", 0x05d3, 0 },
- { "dalettsere", 0x05d3, 0 },
- { "dalettserehebrew", 0x05d3, 0 },
- { "dalfinalarabic", 0xfeaa, 0 },
- { "dammaarabic", 0x064f, 0 },
- { "dammalowarabic", 0x064f, 0 },
- { "dammatanaltonearabic", 0x064c, 0 },
- { "dammatanarabic", 0x064c, 0 },
- { "danda", 0x0964, 0 },
- { "dargahebrew", 0x05a7, 0 },
- { "dargalefthebrew", 0x05a7, 0 },
- { "dasiapneumatacyrilliccmb", 0x0485, 0 },
- { "dblGrave", 0xf6d3, 0 },
- { "dblanglebracketleft", 0x300a, 0 },
- { "dblanglebracketleftvertical", 0xfe3d, 0 },
- { "dblanglebracketright", 0x300b, 0 },
- { "dblanglebracketrightvertical", 0xfe3e, 0 },
- { "dblarchinvertedbelowcmb", 0x032b, 0 },
- { "dblarrowleft", 0x21d4, 0 },
- { "dblarrowright", 0x21d2, 0 },
- { "dbldanda", 0x0965, 0 },
- { "dblgrave", 0xf6d6, 0 },
- { "dblgravecmb", 0x030f, 0 },
- { "dblintegral", 0x222c, 0 },
- { "dbllowline", 0x2017, 0 },
- { "dbllowlinecmb", 0x0333, 0 },
- { "dbloverlinecmb", 0x033f, 0 },
- { "dblprimemod", 0x02ba, 0 },
- { "dblverticalbar", 0x2016, 0 },
- { "dblverticallineabovecmb", 0x030e, 0 },
- { "dbopomofo", 0x3109, 0 },
- { "dbsquare", 0x33c8, 0 },
- { "dcedilla", 0x1e11, 0 },
- { "dcircle", 0x24d3, 0 },
- { "dcircumflexbelow", 0x1e13, 0 },
- { "ddabengali", 0x09a1, 0 },
- { "ddadeva", 0x0921, 0 },
- { "ddagujarati", 0x0aa1, 0 },
- { "ddagurmukhi", 0x0a21, 0 },
- { "ddalarabic", 0x0688, 0 },
- { "ddalfinalarabic", 0xfb89, 0 },
- { "dddhadeva", 0x095c, 0 },
- { "ddhabengali", 0x09a2, 0 },
- { "ddhadeva", 0x0922, 0 },
- { "ddhagujarati", 0x0aa2, 0 },
- { "ddhagurmukhi", 0x0a22, 0 },
- { "ddotaccent", 0x1e0b, 0 },
- { "ddotbelow", 0x1e0d, 0 },
- { "decimalseparatorarabic", 0x066b, 0 },
- { "decimalseparatorpersian", 0x066b, 0 },
- { "decyrillic", 0x0434, 0 },
- { "dehihebrew", 0x05ad, 0 },
- { "dehiragana", 0x3067, 0 },
- { "deicoptic", 0x03ef, 0 },
- { "dekatakana", 0x30c7, 0 },
- { "deleteleft", 0x232b, 0 },
- { "deleteright", 0x2326, 0 },
- { "deltaturned", 0x018d, 0 },
- { "denominatorminusonenumeratorbengali", 0x09f8, 0 },
- { "dezh", 0x02a4, 0 },
- { "dhabengali", 0x09a7, 0 },
- { "dhadeva", 0x0927, 0 },
- { "dhagujarati", 0x0aa7, 0 },
- { "dhagurmukhi", 0x0a27, 0 },
- { "dhook", 0x0257, 0 },
- { "dialytikatonos", 0x0385, 0 },
- { "dialytikatonoscmb", 0x0344, 0 },
- { "diamondsuitwhite", 0x2662, 0 },
- { "dieresisacute", 0xf6d7, 0 },
- { "dieresisbelowcmb", 0x0324, 0 },
- { "dieresiscmb", 0x0308, 0 },
- { "dieresisgrave", 0xf6d8, 0 },
- { "dihiragana", 0x3062, 0 },
- { "dikatakana", 0x30c2, 0 },
- { "dittomark", 0x3003, 0 },
- { "divides", 0x2223, 0 },
- { "divisionslash", 0x2215, 0 },
- { "djecyrillic", 0x0452, 0 },
- { "dlinebelow", 0x1e0f, 0 },
- { "dlsquare", 0x3397, 0 },
- { "dmacron", 0x0111, 0 },
- { "dmonospace", 0xff44, 0 },
- { "dochadathai", 0x0e0e, 0 },
- { "dodekthai", 0x0e14, 0 },
- { "dohiragana", 0x3069, 0 },
- { "dokatakana", 0x30c9, 0 },
- { "dollarinferior", 0xf6e3, 0 },
- { "dollarmonospace", 0xff04, 0 },
- { "dollaroldstyle", 0xf724, 0 },
- { "dollarsmall", 0xfe69, 0 },
- { "dollarsuperior", 0xf6e4, 0 },
- { "dorusquare", 0x3326, 0 },
- { "dotaccentcmb", 0x0307, 0 },
- { "dotbelowcmb", 0x0323, 0 },
- { "dotkatakana", 0x30fb, 0 },
- { "dotlessj", 0x0237, 0 }, /* !!!! AGL Still says this is 0xf6be */
- { "dotlessjstrokehook", 0x0284, 0 },
- { "dottedcircle", 0x25cc, 0 },
- { "doubleyodpatah", 0xfb1f, 0 },
- { "doubleyodpatahhebrew", 0xfb1f, 0 },
- { "downtackbelowcmb", 0x031e, 0 },
- { "downtackmod", 0x02d5, 0 },
- { "dparen", 0x249f, 0 },
- { "dsuperior", 0xf6eb, 0 },
- { "dtail", 0x0256, 0 },
- { "dtopbar", 0x018c, 0 },
- { "duhiragana", 0x3065, 0 },
- { "dukatakana", 0x30c5, 0 },
- { "dz", 0x01f3, 0 },
- { "dzaltone", 0x02a3, 0 },
- { "dzcaron", 0x01c6, 0 },
- { "dzcurl", 0x02a5, 0 },
- { "dzeabkhasiancyrillic", 0x04e1, 0 },
- { "dzecyrillic", 0x0455, 0 },
- { "dzhecyrillic", 0x045f, 0 },
- { "earth", 0x2641, 0 },
- { "ebengali", 0x098f, 0 },
- { "ebopomofo", 0x311c, 0 },
- { "ecandradeva", 0x090d, 0 },
- { "ecandragujarati", 0x0a8d, 0 },
- { "ecandravowelsigndeva", 0x0945, 0 },
- { "ecandravowelsigngujarati", 0x0ac5, 0 },
- { "ecedillabreve", 0x1e1d, 0 },
- { "echarmenian", 0x0565, 0 },
- { "echyiwnarmenian", 0x0587, 0 },
- { "ecircle", 0x24d4, 0 },
- { "ecircumflexacute", 0x1ebf, 0 },
- { "ecircumflexbelow", 0x1e19, 0 },
- { "ecircumflexdotbelow", 0x1ec7, 0 },
- { "ecircumflexgrave", 0x1ec1, 0 },
- { "ecircumflexhookabove", 0x1ec3, 0 },
- { "ecircumflextilde", 0x1ec5, 0 },
- { "ecyrillic", 0x0454, 0 },
- { "edblgrave", 0x0205, 0 },
- { "edeva", 0x090f, 0 },
- { "edot", 0x0117, 0 },
- { "edotbelow", 0x1eb9, 0 },
- { "eegurmukhi", 0x0a0f, 0 },
- { "eematragurmukhi", 0x0a47, 0 },
- { "efcyrillic", 0x0444, 0 },
- { "egujarati", 0x0a8f, 0 },
- { "eharmenian", 0x0567, 0 },
- { "ehbopomofo", 0x311d, 0 },
- { "ehiragana", 0x3048, 0 },
- { "ehookabove", 0x1ebb, 0 },
- { "eibopomofo", 0x311f, 0 },
- { "eightarabic", 0x0668, 0 },
- { "eightbengali", 0x09ee, 0 },
- { "eightcircle", 0x2467, 0 },
- { "eightcircleinversesansserif", 0x2791, 0 },
- { "eightdeva", 0x096e, 0 },
- { "eighteencircle", 0x2471, 0 },
- { "eighteenparen", 0x2485, 0 },
- { "eighteenperiod", 0x2499, 0 },
- { "eightgujarati", 0x0aee, 0 },
- { "eightgurmukhi", 0x0a6e, 0 },
- { "eighthackarabic", 0x0668, 0 },
- { "eighthangzhou", 0x3028, 0 },
- { "eighthnotebeamed", 0x266b, 0 },
- { "eightideographicparen", 0x3227, 0 },
- { "eightinferior", 0x2088, 0 },
- { "eightmonospace", 0xff18, 0 },
- { "eightoldstyle", 0xf738, 0 },
- { "eightparen", 0x247b, 0 },
- { "eightperiod", 0x248f, 0 },
- { "eightpersian", 0x06f8, 0 },
- { "eightroman", 0x2177, 0 },
- { "eightsuperior", 0x2078, 0 },
- { "eightthai", 0x0e58, 0 },
- { "einvertedbreve", 0x0207, 0 },
- { "eiotifiedcyrillic", 0x0465, 0 },
- { "ekatakana", 0x30a8, 0 },
- { "ekatakanahalfwidth", 0xff74, 0 },
- { "ekonkargurmukhi", 0x0a74, 0 },
- { "ekorean", 0x3154, 0 },
- { "elcyrillic", 0x043b, 0 },
- { "elevencircle", 0x246a, 0 },
- { "elevenparen", 0x247e, 0 },
- { "elevenperiod", 0x2492, 0 },
- { "elevenroman", 0x217a, 0 },
- { "ellipsisvertical", 0x22ee, 0 },
- { "emacronacute", 0x1e17, 0 },
- { "emacrongrave", 0x1e15, 0 },
- { "emcyrillic", 0x043c, 0 },
- { "emdashvertical", 0xfe31, 0 },
- { "emonospace", 0xff45, 0 },
- { "emphasismarkarmenian", 0x055b, 0 },
- { "enbopomofo", 0x3123, 0 },
- { "encyrillic", 0x043d, 0 },
- { "endashvertical", 0xfe32, 0 },
- { "endescendercyrillic", 0x04a3, 0 },
- { "engbopomofo", 0x3125, 0 },
- { "enghecyrillic", 0x04a5, 0 },
- { "enhookcyrillic", 0x04c8, 0 },
- { "enspace", 0x2002, 0 },
- { "eokorean", 0x3153, 0 },
- { "eopen", 0x025b, 0 },
- { "eopenclosed", 0x029a, 0 },
- { "eopenreversed", 0x025c, 0 },
- { "eopenreversedclosed", 0x025e, 0 },
- { "eopenreversedhook", 0x025d, 0 },
- { "eparen", 0x24a0, 0 },
- { "equalmonospace", 0xff1d, 0 },
- { "equalsmall", 0xfe66, 0 },
- { "equalsuperior", 0x207c, 0 },
- { "erbopomofo", 0x3126, 0 },
- { "ercyrillic", 0x0440, 0 },
- { "ereversed", 0x0258, 0 },
- { "ereversedcyrillic", 0x044d, 0 },
- { "escyrillic", 0x0441, 0 },
- { "esdescendercyrillic", 0x04ab, 0 },
- { "esh", 0x0283, 0 },
- { "eshcurl", 0x0286, 0 },
- { "eshortdeva", 0x090e, 0 },
- { "eshortvowelsigndeva", 0x0946, 0 },
- { "eshreversedloop", 0x01aa, 0 },
- { "eshsquatreversed", 0x0285, 0 },
- { "esmallhiragana", 0x3047, 0 },
- { "esmallkatakana", 0x30a7, 0 },
- { "esmallkatakanahalfwidth", 0xff6a, 0 },
- { "esuperior", 0xf6ec, 0 },
- { "etarmenian", 0x0568, 0 },
- { "etilde", 0x1ebd, 0 },
- { "etildebelow", 0x1e1b, 0 },
- { "etnahtafoukhhebrew", 0x0591, 0 },
- { "etnahtafoukhlefthebrew", 0x0591, 0 },
- { "etnahtahebrew", 0x0591, 0 },
- { "etnahtalefthebrew", 0x0591, 0 },
- { "eturned", 0x01dd, 0 },
- { "eukorean", 0x3161, 0 },
- { "euro", 0x20ac, 0 },
- { "evowelsignbengali", 0x09c7, 0 },
- { "evowelsigndeva", 0x0947, 0 },
- { "evowelsigngujarati", 0x0ac7, 0 },
- { "exclamarmenian", 0x055c, 0 },
- { "exclamdownsmall", 0xf7a1, 0 },
- { "exclammonospace", 0xff01, 0 },
- { "exclamsmall", 0xf721, 0 },
- { "ezh", 0x0292, 0 },
- { "ezhcaron", 0x01ef, 0 },
- { "ezhcurl", 0x0293, 0 },
- { "ezhreversed", 0x01b9, 0 },
- { "ezhtail", 0x01ba, 0 },
- { "fadeva", 0x095e, 0 },
- { "fagurmukhi", 0x0a5e, 0 },
- { "fahrenheit", 0x2109, 0 },
- { "fathaarabic", 0x064e, 0 },
- { "fathalowarabic", 0x064e, 0 },
- { "fathatanarabic", 0x064b, 0 },
- { "fbopomofo", 0x3108, 0 },
- { "fcircle", 0x24d5, 0 },
- { "fdotaccent", 0x1e1f, 0 },
- { "feharabic", 0x0641, 0 },
- { "feharmenian", 0x0586, 0 },
- { "fehfinalarabic", 0xfed2, 0 },
- { "fehinitialarabic", 0xfed3, 0 },
- { "fehmedialarabic", 0xfed4, 0 },
- { "feicoptic", 0x03e5, 0 },
- { "ff", 0xfb00, 0 },
- { "ffi", 0xfb03, 0 },
- { "ffl", 0xfb04, 0 },
- { "fi", 0xfb01, 0 },
- { "fifteencircle", 0x246e, 0 },
- { "fifteenparen", 0x2482, 0 },
- { "fifteenperiod", 0x2496, 0 },
- { "finalkaf", 0x05da, 0 },
- { "finalkafdagesh", 0xfb3a, 0 },
- { "finalkafdageshhebrew", 0xfb3a, 0 },
- { "finalkafhebrew", 0x05da, 0 },
- { "finalkafqamats", 0x05da, 0 },
- { "finalkafqamatshebrew", 0x05da, 0 },
- { "finalkafsheva", 0x05da, 0 },
- { "finalkafshevahebrew", 0x05da, 0 },
- { "finalmem", 0x05dd, 0 },
- { "finalmemhebrew", 0x05dd, 0 },
- { "finalnun", 0x05df, 0 },
- { "finalnunhebrew", 0x05df, 0 },
- { "finalpe", 0x05e3, 0 },
- { "finalpehebrew", 0x05e3, 0 },
- { "finaltsadi", 0x05e5, 0 },
- { "finaltsadihebrew", 0x05e5, 0 },
- { "firsttonechinese", 0x02c9, 0 },
- { "fisheye", 0x25c9, 0 },
- { "fitacyrillic", 0x0473, 0 },
- { "fivearabic", 0x0665, 0 },
- { "fivebengali", 0x09eb, 0 },
- { "fivecircle", 0x2464, 0 },
- { "fivecircleinversesansserif", 0x278e, 0 },
- { "fivedeva", 0x096b, 0 },
- { "fivegujarati", 0x0aeb, 0 },
- { "fivegurmukhi", 0x0a6b, 0 },
- { "fivehackarabic", 0x0665, 0 },
- { "fivehangzhou", 0x3025, 0 },
- { "fiveideographicparen", 0x3224, 0 },
- { "fiveinferior", 0x2085, 0 },
- { "fivemonospace", 0xff15, 0 },
- { "fiveoldstyle", 0xf735, 0 },
- { "fiveparen", 0x2478, 0 },
- { "fiveperiod", 0x248c, 0 },
- { "fivepersian", 0x06f5, 0 },
- { "fiveroman", 0x2174, 0 },
- { "fivesuperior", 0x2075, 0 },
- { "fivethai", 0x0e55, 0 },
- { "fl", 0xfb02, 0 },
- { "fmonospace", 0xff46, 0 },
- { "fmsquare", 0x3399, 0 },
- { "fofanthai", 0x0e1f, 0 },
- { "fofathai", 0x0e1d, 0 },
- { "fongmanthai", 0x0e4f, 0 },
- { "forall", 0x2200, 0 },
- { "fourarabic", 0x0664, 0 },
- { "fourbengali", 0x09ea, 0 },
- { "fourcircle", 0x2463, 0 },
- { "fourcircleinversesansserif", 0x278d, 0 },
- { "fourdeva", 0x096a, 0 },
- { "fourgujarati", 0x0aea, 0 },
- { "fourgurmukhi", 0x0a6a, 0 },
- { "fourhackarabic", 0x0664, 0 },
- { "fourhangzhou", 0x3024, 0 },
- { "fourideographicparen", 0x3223, 0 },
- { "fourinferior", 0x2084, 0 },
- { "fourmonospace", 0xff14, 0 },
- { "fournumeratorbengali", 0x09f7, 0 },
- { "fouroldstyle", 0xf734, 0 },
- { "fourparen", 0x2477, 0 },
- { "fourperiod", 0x248b, 0 },
- { "fourpersian", 0x06f4, 0 },
- { "fourroman", 0x2173, 0 },
- { "foursuperior", 0x2074, 0 },
- { "fourteencircle", 0x246d, 0 },
- { "fourteenparen", 0x2481, 0 },
- { "fourteenperiod", 0x2495, 0 },
- { "fourthai", 0x0e54, 0 },
- { "fourthtonechinese", 0x02cb, 0 },
- { "fparen", 0x24a1, 0 },
- { "gabengali", 0x0997, 0 },
- { "gacute", 0x01f5, 0 },
- { "gadeva", 0x0917, 0 },
- { "gafarabic", 0x06af, 0 },
- { "gaffinalarabic", 0xfb93, 0 },
- { "gafinitialarabic", 0xfb94, 0 },
- { "gafmedialarabic", 0xfb95, 0 },
- { "gagujarati", 0x0a97, 0 },
- { "gagurmukhi", 0x0a17, 0 },
- { "gahiragana", 0x304c, 0 },
- { "gakatakana", 0x30ac, 0 },
- { "gammalatinsmall", 0x0263, 0 },
- { "gammasuperior", 0x02e0, 0 },
- { "gangiacoptic", 0x03eb, 0 },
- { "gbopomofo", 0x310d, 0 },
- { "gcedilla", 0x0123, 0 },
- { "gcircle", 0x24d6, 0 },
- { "gdot", 0x0121, 0 },
- { "gecyrillic", 0x0433, 0 },
- { "gehiragana", 0x3052, 0 },
- { "gekatakana", 0x30b2, 0 },
- { "geometricallyequal", 0x2251, 0 },
- { "gereshaccenthebrew", 0x059c, 0 },
- { "gereshhebrew", 0x05f3, 0 },
- { "gereshmuqdamhebrew", 0x059d, 0 },
- { "gershayimaccenthebrew", 0x059e, 0 },
- { "gershayimhebrew", 0x05f4, 0 },
- { "getamark", 0x3013, 0 },
- { "ghabengali", 0x0998, 0 },
- { "ghadarmenian", 0x0572, 0 },
- { "ghadeva", 0x0918, 0 },
- { "ghagujarati", 0x0a98, 0 },
- { "ghagurmukhi", 0x0a18, 0 },
- { "ghainarabic", 0x063a, 0 },
- { "ghainfinalarabic", 0xfece, 0 },
- { "ghaininitialarabic", 0xfecf, 0 },
- { "ghainmedialarabic", 0xfed0, 0 },
- { "ghemiddlehookcyrillic", 0x0495, 0 },
- { "ghestrokecyrillic", 0x0493, 0 },
- { "gheupturncyrillic", 0x0491, 0 },
- { "ghhadeva", 0x095a, 0 },
- { "ghhagurmukhi", 0x0a5a, 0 },
- { "ghook", 0x0260, 0 },
- { "ghzsquare", 0x3393, 0 },
- { "gihiragana", 0x304e, 0 },
- { "gikatakana", 0x30ae, 0 },
- { "gimarmenian", 0x0563, 0 },
- { "gimel", 0x05d2, 0 },
- { "gimeldagesh", 0xfb32, 0 },
- { "gimeldageshhebrew", 0xfb32, 0 },
- { "gimelhebrew", 0x05d2, 0 },
- { "gjecyrillic", 0x0453, 0 },
- { "glottalinvertedstroke", 0x01be, 0 },
- { "glottalstop", 0x0294, 0 },
- { "glottalstopinverted", 0x0296, 0 },
- { "glottalstopmod", 0x02c0, 0 },
- { "glottalstopreversed", 0x0295, 0 },
- { "glottalstopreversedmod", 0x02c1, 0 },
- { "glottalstopreversedsuperior", 0x02e4, 0 },
- { "glottalstopstroke", 0x02a1, 0 },
- { "glottalstopstrokereversed", 0x02a2, 0 },
- { "gmacron", 0x1e21, 0 },
- { "gmonospace", 0xff47, 0 },
- { "gohiragana", 0x3054, 0 },
- { "gokatakana", 0x30b4, 0 },
- { "gparen", 0x24a2, 0 },
- { "gpasquare", 0x33ac, 0 },
- { "gravebelowcmb", 0x0316, 0 },
- { "gravecmb", 0x0300, 0 },
- { "gravedeva", 0x0953, 0 },
- { "gravelowmod", 0x02ce, 0 },
- { "gravemonospace", 0xff40, 0 },
- { "gravetonecmb", 0x0340, 0 },
- { "greaterequalorless", 0x22db, 0 },
- { "greatermonospace", 0xff1e, 0 },
- { "greaterorequivalent", 0x2273, 0 },
- { "greaterorless", 0x2277, 0 },
- { "greateroverequal", 0x2267, 0 },
- { "greatersmall", 0xfe65, 0 },
- { "gscript", 0x0261, 0 },
- { "gstroke", 0x01e5, 0 },
- { "guhiragana", 0x3050, 0 },
- { "gukatakana", 0x30b0, 0 },
- { "guramusquare", 0x3318, 0 },
- { "gysquare", 0x33c9, 0 },
- { "haabkhasiancyrillic", 0x04a9, 0 },
- { "haaltonearabic", 0x06c1, 0 },
- { "habengali", 0x09b9, 0 },
- { "hadescendercyrillic", 0x04b3, 0 },
- { "hadeva", 0x0939, 0 },
- { "hagujarati", 0x0ab9, 0 },
- { "hagurmukhi", 0x0a39, 0 },
- { "haharabic", 0x062d, 0 },
- { "hahfinalarabic", 0xfea2, 0 },
- { "hahinitialarabic", 0xfea3, 0 },
- { "hahiragana", 0x306f, 0 },
- { "hahmedialarabic", 0xfea4, 0 },
- { "haitusquare", 0x332a, 0 },
- { "hakatakana", 0x30cf, 0 },
- { "hakatakanahalfwidth", 0xff8a, 0 },
- { "halantgurmukhi", 0x0a4d, 0 },
- { "hamzaarabic", 0x0621, 0 },
- { "hamzadammaarabic", 0x0621, 0 },
- { "hamzadammatanarabic", 0x0621, 0 },
- { "hamzafathaarabic", 0x0621, 0 },
- { "hamzafathatanarabic", 0x0621, 0 },
- { "hamzalowarabic", 0x0621, 0 },
- { "hamzalowkasraarabic", 0x0621, 0 },
- { "hamzalowkasratanarabic", 0x0621, 0 },
- { "hamzasukunarabic", 0x0621, 0 },
- { "hangulfiller", 0x3164, 0 },
- { "hardsigncyrillic", 0x044a, 0 },
- { "harpoonleftbarbup", 0x21bc, 0 },
- { "harpoonrightbarbup", 0x21c0, 0 },
- { "hasquare", 0x33ca, 0 },
- { "hatafpatah", 0x05b2, 0 },
- { "hatafpatah16", 0x05b2, 0 },
- { "hatafpatah23", 0x05b2, 0 },
- { "hatafpatah2f", 0x05b2, 0 },
- { "hatafpatahhebrew", 0x05b2, 0 },
- { "hatafpatahnarrowhebrew", 0x05b2, 0 },
- { "hatafpatahquarterhebrew", 0x05b2, 0 },
- { "hatafpatahwidehebrew", 0x05b2, 0 },
- { "hatafqamats", 0x05b3, 0 },
- { "hatafqamats1b", 0x05b3, 0 },
- { "hatafqamats28", 0x05b3, 0 },
- { "hatafqamats34", 0x05b3, 0 },
- { "hatafqamatshebrew", 0x05b3, 0 },
- { "hatafqamatsnarrowhebrew", 0x05b3, 0 },
- { "hatafqamatsquarterhebrew", 0x05b3, 0 },
- { "hatafqamatswidehebrew", 0x05b3, 0 },
- { "hatafsegol", 0x05b1, 0 },
- { "hatafsegol17", 0x05b1, 0 },
- { "hatafsegol24", 0x05b1, 0 },
- { "hatafsegol30", 0x05b1, 0 },
- { "hatafsegolhebrew", 0x05b1, 0 },
- { "hatafsegolnarrowhebrew", 0x05b1, 0 },
- { "hatafsegolquarterhebrew", 0x05b1, 0 },
- { "hatafsegolwidehebrew", 0x05b1, 0 },
- { "hbopomofo", 0x310f, 0 },
- { "hbrevebelow", 0x1e2b, 0 },
- { "hcedilla", 0x1e29, 0 },
- { "hcircle", 0x24d7, 0 },
- { "hdieresis", 0x1e27, 0 },
- { "hdotaccent", 0x1e23, 0 },
- { "hdotbelow", 0x1e25, 0 },
- { "he", 0x05d4, 0 },
- { "heartsuitblack", 0x2665, 0 },
- { "heartsuitwhite", 0x2661, 0 },
- { "hedagesh", 0xfb34, 0 },
- { "hedageshhebrew", 0xfb34, 0 },
- { "hehaltonearabic", 0x06c1, 0 },
- { "heharabic", 0x0647, 0 },
- { "hehebrew", 0x05d4, 0 },
- { "hehfinalaltonearabic", 0xfba7, 0 },
- { "hehfinalalttwoarabic", 0xfeea, 0 },
- { "hehfinalarabic", 0xfeea, 0 },
- { "hehhamzaabovefinalarabic", 0xfba5, 0 },
- { "hehhamzaaboveisolatedarabic", 0xfba4, 0 },
- { "hehinitialaltonearabic", 0xfba8, 0 },
- { "hehinitialarabic", 0xfeeb, 0 },
- { "hehiragana", 0x3078, 0 },
- { "hehmedialaltonearabic", 0xfba9, 0 },
- { "hehmedialarabic", 0xfeec, 0 },
- { "heiseierasquare", 0x337b, 0 },
- { "hekatakana", 0x30d8, 0 },
- { "hekatakanahalfwidth", 0xff8d, 0 },
- { "hekutaarusquare", 0x3336, 0 },
- { "henghook", 0x0267, 0 },
- { "herutusquare", 0x3339, 0 },
- { "het", 0x05d7, 0 },
- { "hethebrew", 0x05d7, 0 },
- { "hhook", 0x0266, 0 },
- { "hhooksuperior", 0x02b1, 0 },
- { "hieuhacirclekorean", 0x327b, 0 },
- { "hieuhaparenkorean", 0x321b, 0 },
- { "hieuhcirclekorean", 0x326d, 0 },
- { "hieuhkorean", 0x314e, 0 },
- { "hieuhparenkorean", 0x320d, 0 },
- { "hihiragana", 0x3072, 0 },
- { "hikatakana", 0x30d2, 0 },
- { "hikatakanahalfwidth", 0xff8b, 0 },
- { "hiriq", 0x05b4, 0 },
- { "hiriq14", 0x05b4, 0 },
- { "hiriq21", 0x05b4, 0 },
- { "hiriq2d", 0x05b4, 0 },
- { "hiriqhebrew", 0x05b4, 0 },
- { "hiriqnarrowhebrew", 0x05b4, 0 },
- { "hiriqquarterhebrew", 0x05b4, 0 },
- { "hiriqwidehebrew", 0x05b4, 0 },
- { "hlinebelow", 0x1e96, 0 },
- { "hmonospace", 0xff48, 0 },
- { "hoarmenian", 0x0570, 0 },
- { "hohipthai", 0x0e2b, 0 },
- { "hohiragana", 0x307b, 0 },
- { "hokatakana", 0x30db, 0 },
- { "hokatakanahalfwidth", 0xff8e, 0 },
- { "holam", 0x05b9, 0 },
- { "holam19", 0x05b9, 0 },
- { "holam26", 0x05b9, 0 },
- { "holam32", 0x05b9, 0 },
- { "holamhebrew", 0x05b9, 0 },
- { "holamnarrowhebrew", 0x05b9, 0 },
- { "holamquarterhebrew", 0x05b9, 0 },
- { "holamwidehebrew", 0x05b9, 0 },
- { "honokhukthai", 0x0e2e, 0 },
- { "hookcmb", 0x0309, 0 },
- { "hookpalatalizedbelowcmb", 0x0321, 0 },
- { "hookretroflexbelowcmb", 0x0322, 0 },
- { "hoonsquare", 0x3342, 0 },
- { "horicoptic", 0x03e9, 0 },
- { "horizontalbar", 0x2015, 0 },
- { "horncmb", 0x031b, 0 },
- { "hotsprings", 0x2668, 0 },
- { "hparen", 0x24a3, 0 },
- { "hsuperior", 0x02b0, 0 },
- { "hturned", 0x0265, 0 },
- { "huhiragana", 0x3075, 0 },
- { "huiitosquare", 0x3333, 0 },
- { "hukatakana", 0x30d5, 0 },
- { "hukatakanahalfwidth", 0xff8c, 0 },
- { "hungarumlautcmb", 0x030b, 0 },
- { "hv", 0x0195, 0 },
- { "hypheninferior", 0xf6e5, 0 },
- { "hyphenmonospace", 0xff0d, 0 },
- { "hyphensmall", 0xfe63, 0 },
- { "hyphensuperior", 0xf6e6, 0 },
- { "hyphentwo", 0x2010, 0 },
- { "iacyrillic", 0x044f, 0 },
- { "ibengali", 0x0987, 0 },
- { "ibopomofo", 0x3127, 0 },
- { "icaron", 0x01d0, 0 },
- { "icircle", 0x24d8, 0 },
- { "icyrillic", 0x0456, 0 },
- { "idblgrave", 0x0209, 0 },
- { "ideographearthcircle", 0x328f, 0 },
- { "ideographfirecircle", 0x328b, 0 },
- { "ideographicallianceparen", 0x323f, 0 },
- { "ideographiccallparen", 0x323a, 0 },
- { "ideographiccentrecircle", 0x32a5, 0 },
- { "ideographicclose", 0x3006, 0 },
- { "ideographiccomma", 0x3001, 0 },
- { "ideographiccommaleft", 0xff64, 0 },
- { "ideographiccongratulationparen", 0x3237, 0 },
- { "ideographiccorrectcircle", 0x32a3, 0 },
- { "ideographicearthparen", 0x322f, 0 },
- { "ideographicenterpriseparen", 0x323d, 0 },
- { "ideographicexcellentcircle", 0x329d, 0 },
- { "ideographicfestivalparen", 0x3240, 0 },
- { "ideographicfinancialcircle", 0x3296, 0 },
- { "ideographicfinancialparen", 0x3236, 0 },
- { "ideographicfireparen", 0x322b, 0 },
- { "ideographichaveparen", 0x3232, 0 },
- { "ideographichighcircle", 0x32a4, 0 },
- { "ideographiciterationmark", 0x3005, 0 },
- { "ideographiclaborcircle", 0x3298, 0 },
- { "ideographiclaborparen", 0x3238, 0 },
- { "ideographicleftcircle", 0x32a7, 0 },
- { "ideographiclowcircle", 0x32a6, 0 },
- { "ideographicmedicinecircle", 0x32a9, 0 },
- { "ideographicmetalparen", 0x322e, 0 },
- { "ideographicmoonparen", 0x322a, 0 },
- { "ideographicnameparen", 0x3234, 0 },
- { "ideographicperiod", 0x3002, 0 },
- { "ideographicprintcircle", 0x329e, 0 },
- { "ideographicreachparen", 0x3243, 0 },
- { "ideographicrepresentparen", 0x3239, 0 },
- { "ideographicresourceparen", 0x323e, 0 },
- { "ideographicrightcircle", 0x32a8, 0 },
- { "ideographicsecretcircle", 0x3299, 0 },
- { "ideographicselfparen", 0x3242, 0 },
- { "ideographicsocietyparen", 0x3233, 0 },
- { "ideographicspace", 0x3000, 0 },
- { "ideographicspecialparen", 0x3235, 0 },
- { "ideographicstockparen", 0x3231, 0 },
- { "ideographicstudyparen", 0x323b, 0 },
- { "ideographicsunparen", 0x3230, 0 },
- { "ideographicsuperviseparen", 0x323c, 0 },
- { "ideographicwaterparen", 0x322c, 0 },
- { "ideographicwoodparen", 0x322d, 0 },
- { "ideographiczero", 0x3007, 0 },
- { "ideographmetalcircle", 0x328e, 0 },
- { "ideographmooncircle", 0x328a, 0 },
- { "ideographnamecircle", 0x3294, 0 },
- { "ideographsuncircle", 0x3290, 0 },
- { "ideographwatercircle", 0x328c, 0 },
- { "ideographwoodcircle", 0x328d, 0 },
- { "ideva", 0x0907, 0 },
- { "idieresisacute", 0x1e2f, 0 },
- { "idieresiscyrillic", 0x04e5, 0 },
- { "idotbelow", 0x1ecb, 0 },
- { "iebrevecyrillic", 0x04d7, 0 },
- { "iecyrillic", 0x0435, 0 },
- { "ieungacirclekorean", 0x3275, 0 },
- { "ieungaparenkorean", 0x3215, 0 },
- { "ieungcirclekorean", 0x3267, 0 },
- { "ieungkorean", 0x3147, 0 },
- { "ieungparenkorean", 0x3207, 0 },
- { "igujarati", 0x0a87, 0 },
- { "igurmukhi", 0x0a07, 0 },
- { "ihiragana", 0x3044, 0 },
- { "ihookabove", 0x1ec9, 0 },
- { "iibengali", 0x0988, 0 },
- { "iicyrillic", 0x0438, 0 },
- { "iideva", 0x0908, 0 },
- { "iigujarati", 0x0a88, 0 },
- { "iigurmukhi", 0x0a08, 0 },
- { "iimatragurmukhi", 0x0a40, 0 },
- { "iinvertedbreve", 0x020b, 0 },
- { "iishortcyrillic", 0x0439, 0 },
- { "iivowelsignbengali", 0x09c0, 0 },
- { "iivowelsigndeva", 0x0940, 0 },
- { "iivowelsigngujarati", 0x0ac0, 0 },
- { "ikatakana", 0x30a4, 0 },
- { "ikatakanahalfwidth", 0xff72, 0 },
- { "ikorean", 0x3163, 0 },
- { "ilde", 0x02dc, 0 },
- { "iluyhebrew", 0x05ac, 0 },
- { "imacroncyrillic", 0x04e3, 0 },
- { "imageorapproximatelyequal", 0x2253, 0 },
- { "imatragurmukhi", 0x0a3f, 0 },
- { "imonospace", 0xff49, 0 },
- { "increment", 0x2206, 0 },
- { "iniarmenian", 0x056b, 0 },
- { "integralbottom", 0x2321, 0 },
- { "integralex", 0xf8f5, 0 },
- { "integraltop", 0x2320, 0 },
- { "intisquare", 0x3305, 0 },
- { "iocyrillic", 0x0451, 0 },
- { "iotalatin", 0x0269, 0 },
- { "iparen", 0x24a4, 0 },
- { "irigurmukhi", 0x0a72, 0 },
- { "ismallhiragana", 0x3043, 0 },
- { "ismallkatakana", 0x30a3, 0 },
- { "ismallkatakanahalfwidth", 0xff68, 0 },
- { "issharbengali", 0x09fa, 0 },
- { "istroke", 0x0268, 0 },
- { "isuperior", 0xf6ed, 0 },
- { "iterationhiragana", 0x309d, 0 },
- { "iterationkatakana", 0x30fd, 0 },
- { "itildebelow", 0x1e2d, 0 },
- { "iubopomofo", 0x3129, 0 },
- { "iucyrillic", 0x044e, 0 },
- { "ivowelsignbengali", 0x09bf, 0 },
- { "ivowelsigndeva", 0x093f, 0 },
- { "ivowelsigngujarati", 0x0abf, 0 },
- { "izhitsacyrillic", 0x0475, 0 },
- { "izhitsadblgravecyrillic", 0x0477, 0 },
- { "jaarmenian", 0x0571, 0 },
- { "jabengali", 0x099c, 0 },
- { "jadeva", 0x091c, 0 },
- { "jagujarati", 0x0a9c, 0 },
- { "jagurmukhi", 0x0a1c, 0 },
- { "jbopomofo", 0x3110, 0 },
- { "jcaron", 0x01f0, 0 },
- { "jcircle", 0x24d9, 0 },
- { "jcrossedtail", 0x029d, 0 },
- { "jdotlessstroke", 0x025f, 0 },
- { "jecyrillic", 0x0458, 0 },
- { "jeemarabic", 0x062c, 0 },
- { "jeemfinalarabic", 0xfe9e, 0 },
- { "jeeminitialarabic", 0xfe9f, 0 },
- { "jeemmedialarabic", 0xfea0, 0 },
- { "jeharabic", 0x0698, 0 },
- { "jehfinalarabic", 0xfb8b, 0 },
- { "jhabengali", 0x099d, 0 },
- { "jhadeva", 0x091d, 0 },
- { "jhagujarati", 0x0a9d, 0 },
- { "jhagurmukhi", 0x0a1d, 0 },
- { "jheharmenian", 0x057b, 0 },
- { "jis", 0x3004, 0 },
- { "jmonospace", 0xff4a, 0 },
- { "jparen", 0x24a5, 0 },
- { "jsuperior", 0x02b2, 0 },
- { "kabashkircyrillic", 0x04a1, 0 },
- { "kabengali", 0x0995, 0 },
- { "kacute", 0x1e31, 0 },
- { "kacyrillic", 0x043a, 0 },
- { "kadescendercyrillic", 0x049b, 0 },
- { "kadeva", 0x0915, 0 },
- { "kaf", 0x05db, 0 },
- { "kafarabic", 0x0643, 0 },
- { "kafdagesh", 0xfb3b, 0 },
- { "kafdageshhebrew", 0xfb3b, 0 },
- { "kaffinalarabic", 0xfeda, 0 },
- { "kafhebrew", 0x05db, 0 },
- { "kafinitialarabic", 0xfedb, 0 },
- { "kafmedialarabic", 0xfedc, 0 },
- { "kafrafehebrew", 0xfb4d, 0 },
- { "kagujarati", 0x0a95, 0 },
- { "kagurmukhi", 0x0a15, 0 },
- { "kahiragana", 0x304b, 0 },
- { "kahookcyrillic", 0x04c4, 0 },
- { "kakatakana", 0x30ab, 0 },
- { "kakatakanahalfwidth", 0xff76, 0 },
- { "kappasymbolgreek", 0x03f0, 0 },
- { "kapyeounmieumkorean", 0x3171, 0 },
- { "kapyeounphieuphkorean", 0x3184, 0 },
- { "kapyeounpieupkorean", 0x3178, 0 },
- { "kapyeounssangpieupkorean", 0x3179, 0 },
- { "karoriisquare", 0x330d, 0 },
- { "kashidaautoarabic", 0x0640, 0 },
- { "kashidaautonosidebearingarabic", 0x0640, 0 },
- { "kasmallkatakana", 0x30f5, 0 },
- { "kasquare", 0x3384, 0 },
- { "kasraarabic", 0x0650, 0 },
- { "kasratanarabic", 0x064d, 0 },
- { "kastrokecyrillic", 0x049f, 0 },
- { "katahiraprolongmarkhalfwidth", 0xff70, 0 },
- { "kaverticalstrokecyrillic", 0x049d, 0 },
- { "kbopomofo", 0x310e, 0 },
- { "kcalsquare", 0x3389, 0 },
- { "kcaron", 0x01e9, 0 },
- { "kcedilla", 0x0137, 0 },
- { "kcircle", 0x24da, 0 },
- { "kdotbelow", 0x1e33, 0 },
- { "keharmenian", 0x0584, 0 },
- { "kehiragana", 0x3051, 0 },
- { "kekatakana", 0x30b1, 0 },
- { "kekatakanahalfwidth", 0xff79, 0 },
- { "kenarmenian", 0x056f, 0 },
- { "kesmallkatakana", 0x30f6, 0 },
- { "khabengali", 0x0996, 0 },
- { "khacyrillic", 0x0445, 0 },
- { "khadeva", 0x0916, 0 },
- { "khagujarati", 0x0a96, 0 },
- { "khagurmukhi", 0x0a16, 0 },
- { "khaharabic", 0x062e, 0 },
- { "khahfinalarabic", 0xfea6, 0 },
- { "khahinitialarabic", 0xfea7, 0 },
- { "khahmedialarabic", 0xfea8, 0 },
- { "kheicoptic", 0x03e7, 0 },
- { "khhadeva", 0x0959, 0 },
- { "khhagurmukhi", 0x0a59, 0 },
- { "khieukhacirclekorean", 0x3278, 0 },
- { "khieukhaparenkorean", 0x3218, 0 },
- { "khieukhcirclekorean", 0x326a, 0 },
- { "khieukhkorean", 0x314b, 0 },
- { "khieukhparenkorean", 0x320a, 0 },
- { "khokhaithai", 0x0e02, 0 },
- { "khokhonthai", 0x0e05, 0 },
- { "khokhuatthai", 0x0e03, 0 },
- { "khokhwaithai", 0x0e04, 0 },
- { "khomutthai", 0x0e5b, 0 },
- { "khook", 0x0199, 0 },
- { "khorakhangthai", 0x0e06, 0 },
- { "khzsquare", 0x3391, 0 },
- { "kihiragana", 0x304d, 0 },
- { "kikatakana", 0x30ad, 0 },
- { "kikatakanahalfwidth", 0xff77, 0 },
- { "kiroguramusquare", 0x3315, 0 },
- { "kiromeetorusquare", 0x3316, 0 },
- { "kirosquare", 0x3314, 0 },
- { "kiyeokacirclekorean", 0x326e, 0 },
- { "kiyeokaparenkorean", 0x320e, 0 },
- { "kiyeokcirclekorean", 0x3260, 0 },
- { "kiyeokkorean", 0x3131, 0 },
- { "kiyeokparenkorean", 0x3200, 0 },
- { "kiyeoksioskorean", 0x3133, 0 },
- { "kjecyrillic", 0x045c, 0 },
- { "klinebelow", 0x1e35, 0 },
- { "klsquare", 0x3398, 0 },
- { "kmcubedsquare", 0x33a6, 0 },
- { "kmonospace", 0xff4b, 0 },
- { "kmsquaredsquare", 0x33a2, 0 },
- { "kohiragana", 0x3053, 0 },
- { "kohmsquare", 0x33c0, 0 },
- { "kokaithai", 0x0e01, 0 },
- { "kokatakana", 0x30b3, 0 },
- { "kokatakanahalfwidth", 0xff7a, 0 },
- { "kooposquare", 0x331e, 0 },
- { "koppacyrillic", 0x0481, 0 },
- { "koreanstandardsymbol", 0x327f, 0 },
- { "koroniscmb", 0x0343, 0 },
- { "kparen", 0x24a6, 0 },
- { "kpasquare", 0x33aa, 0 },
- { "ksicyrillic", 0x046f, 0 },
- { "ktsquare", 0x33cf, 0 },
- { "kturned", 0x029e, 0 },
- { "kuhiragana", 0x304f, 0 },
- { "kukatakana", 0x30af, 0 },
- { "kukatakanahalfwidth", 0xff78, 0 },
- { "kvsquare", 0x33b8, 0 },
- { "kwsquare", 0x33be, 0 },
- { "labengali", 0x09b2, 0 },
- { "ladeva", 0x0932, 0 },
- { "lagujarati", 0x0ab2, 0 },
- { "lagurmukhi", 0x0a32, 0 },
- { "lakkhangyaothai", 0x0e45, 0 },
- { "lamaleffinalarabic", 0xfefc, 0 },
- { "lamalefhamzaabovefinalarabic", 0xfef8, 0 },
- { "lamalefhamzaaboveisolatedarabic", 0xfef7, 0 },
- { "lamalefhamzabelowfinalarabic", 0xfefa, 0 },
- { "lamalefhamzabelowisolatedarabic", 0xfef9, 0 },
- { "lamalefisolatedarabic", 0xfefb, 0 },
- { "lamalefmaddaabovefinalarabic", 0xfef6, 0 },
- { "lamalefmaddaaboveisolatedarabic", 0xfef5, 0 },
- { "lamarabic", 0x0644, 0 },
- { "lambdastroke", 0x019b, 0 },
- { "lamed", 0x05dc, 0 },
- { "lameddagesh", 0xfb3c, 0 },
- { "lameddageshhebrew", 0xfb3c, 0 },
- { "lamedhebrew", 0x05dc, 0 },
- { "lamedholam", 0x05dc, 0 },
- { "lamedholamdagesh", 0x05dc, 0 },
- { "lamedholamdageshhebrew", 0x05dc, 0 },
- { "lamedholamhebrew", 0x05dc, 0 },
- { "lamfinalarabic", 0xfede, 0 },
- { "lamhahinitialarabic", 0xfcca, 0 },
- { "laminitialarabic", 0xfedf, 0 },
- { "lamjeeminitialarabic", 0xfcc9, 0 },
- { "lamkhahinitialarabic", 0xfccb, 0 },
- { "lamlamhehisolatedarabic", 0xfdf2, 0 },
- { "lammedialarabic", 0xfee0, 0 },
- { "lammeemhahinitialarabic", 0xfd88, 0 },
- { "lammeeminitialarabic", 0xfccc, 0 },
- { "lammeemjeeminitialarabic", 0xfedf, 0 },
- { "lammeemkhahinitialarabic", 0xfedf, 0 },
- { "largecircle", 0x25ef, 0 },
- { "lbar", 0x019a, 0 },
- { "lbelt", 0x026c, 0 },
- { "lbopomofo", 0x310c, 0 },
- { "lcedilla", 0x013c, 0 },
- { "lcircle", 0x24db, 0 },
- { "lcircumflexbelow", 0x1e3d, 0 },
- { "ldotaccent", 0x0140, 0 },
- { "ldotbelow", 0x1e37, 0 },
- { "ldotbelowmacron", 0x1e39, 0 },
- { "leftangleabovecmb", 0x031a, 0 },
- { "lefttackbelowcmb", 0x0318, 0 },
- { "lessequalorgreater", 0x22da, 0 },
- { "lessmonospace", 0xff1c, 0 },
- { "lessorequivalent", 0x2272, 0 },
- { "lessorgreater", 0x2276, 0 },
- { "lessoverequal", 0x2266, 0 },
- { "lesssmall", 0xfe64, 0 },
- { "lezh", 0x026e, 0 },
- { "lhookretroflex", 0x026d, 0 },
- { "liwnarmenian", 0x056c, 0 },
- { "lj", 0x01c9, 0 },
- { "ljecyrillic", 0x0459, 0 },
- { "ll", 0xf6c0, 0 },
- { "lladeva", 0x0933, 0 },
- { "llagujarati", 0x0ab3, 0 },
- { "llinebelow", 0x1e3b, 0 },
- { "llladeva", 0x0934, 0 },
- { "llvocalicbengali", 0x09e1, 0 },
- { "llvocalicdeva", 0x0961, 0 },
- { "llvocalicvowelsignbengali", 0x09e3, 0 },
- { "llvocalicvowelsigndeva", 0x0963, 0 },
- { "lmiddletilde", 0x026b, 0 },
- { "lmonospace", 0xff4c, 0 },
- { "lmsquare", 0x33d0, 0 },
- { "lochulathai", 0x0e2c, 0 },
- { "logicalnotreversed", 0x2310, 0 },
- { "lolingthai", 0x0e25, 0 },
- { "lowlinecenterline", 0xfe4e, 0 },
- { "lowlinecmb", 0x0332, 0 },
- { "lowlinedashed", 0xfe4d, 0 },
- { "lparen", 0x24a7, 0 },
- { "lsquare", 0x2113, 0 },
- { "lsuperior", 0xf6ee, 0 },
- { "luthai", 0x0e26, 0 },
- { "lvocalicbengali", 0x098c, 0 },
- { "lvocalicdeva", 0x090c, 0 },
- { "lvocalicvowelsignbengali", 0x09e2, 0 },
- { "lvocalicvowelsigndeva", 0x0962, 0 },
- { "lxsquare", 0x33d3, 0 },
- { "mabengali", 0x09ae, 0 },
- { "macronbelowcmb", 0x0331, 0 },
- { "macroncmb", 0x0304, 0 },
- { "macronlowmod", 0x02cd, 0 },
- { "macronmonospace", 0xffe3, 0 },
- { "macute", 0x1e3f, 0 },
- { "madeva", 0x092e, 0 },
- { "magujarati", 0x0aae, 0 },
- { "magurmukhi", 0x0a2e, 0 },
- { "mahapakhhebrew", 0x05a4, 0 },
- { "mahapakhlefthebrew", 0x05a4, 0 },
- { "mahiragana", 0x307e, 0 },
- { "maichattawalowleftthai", 0xf895, 0 },
- { "maichattawalowrightthai", 0xf894, 0 },
- { "maichattawathai", 0x0e4b, 0 },
- { "maichattawaupperleftthai", 0xf893, 0 },
- { "maieklowleftthai", 0xf88c, 0 },
- { "maieklowrightthai", 0xf88b, 0 },
- { "maiekthai", 0x0e48, 0 },
- { "maiekupperleftthai", 0xf88a, 0 },
- { "maihanakatleftthai", 0xf884, 0 },
- { "maihanakatthai", 0x0e31, 0 },
- { "maitaikhuleftthai", 0xf889, 0 },
- { "maitaikhuthai", 0x0e47, 0 },
- { "maitholowleftthai", 0xf88f, 0 },
- { "maitholowrightthai", 0xf88e, 0 },
- { "maithothai", 0x0e49, 0 },
- { "maithoupperleftthai", 0xf88d, 0 },
- { "maitrilowleftthai", 0xf892, 0 },
- { "maitrilowrightthai", 0xf891, 0 },
- { "maitrithai", 0x0e4a, 0 },
- { "maitriupperleftthai", 0xf890, 0 },
- { "maiyamokthai", 0x0e46, 0 },
- { "makatakana", 0x30de, 0 },
- { "makatakanahalfwidth", 0xff8f, 0 },
- { "mansyonsquare", 0x3347, 0 },
- { "maqafhebrew", 0x05be, 0 },
- { "mars", 0x2642, 0 },
- { "masoracirclehebrew", 0x05af, 0 },
- { "masquare", 0x3383, 0 },
- { "mbopomofo", 0x3107, 0 },
- { "mbsquare", 0x33d4, 0 },
- { "mcircle", 0x24dc, 0 },
- { "mcubedsquare", 0x33a5, 0 },
- { "mdotaccent", 0x1e41, 0 },
- { "mdotbelow", 0x1e43, 0 },
- { "meemarabic", 0x0645, 0 },
- { "meemfinalarabic", 0xfee2, 0 },
- { "meeminitialarabic", 0xfee3, 0 },
- { "meemmedialarabic", 0xfee4, 0 },
- { "meemmeeminitialarabic", 0xfcd1, 0 },
- { "meemmeemisolatedarabic", 0xfc48, 0 },
- { "meetorusquare", 0x334d, 0 },
- { "mehiragana", 0x3081, 0 },
- { "meizierasquare", 0x337e, 0 },
- { "mekatakana", 0x30e1, 0 },
- { "mekatakanahalfwidth", 0xff92, 0 },
- { "mem", 0x05de, 0 },
- { "memdagesh", 0xfb3e, 0 },
- { "memdageshhebrew", 0xfb3e, 0 },
- { "memhebrew", 0x05de, 0 },
- { "menarmenian", 0x0574, 0 },
- { "merkhahebrew", 0x05a5, 0 },
- { "merkhakefulahebrew", 0x05a6, 0 },
- { "merkhakefulalefthebrew", 0x05a6, 0 },
- { "merkhalefthebrew", 0x05a5, 0 },
- { "mhook", 0x0271, 0 },
- { "mhzsquare", 0x3392, 0 },
- { "middledotkatakanahalfwidth", 0xff65, 0 },
- { "middot", 0x00b7, 0 },
- { "mieumacirclekorean", 0x3272, 0 },
- { "mieumaparenkorean", 0x3212, 0 },
- { "mieumcirclekorean", 0x3264, 0 },
- { "mieumkorean", 0x3141, 0 },
- { "mieumpansioskorean", 0x3170, 0 },
- { "mieumparenkorean", 0x3204, 0 },
- { "mieumpieupkorean", 0x316e, 0 },
- { "mieumsioskorean", 0x316f, 0 },
- { "mihiragana", 0x307f, 0 },
- { "mikatakana", 0x30df, 0 },
- { "mikatakanahalfwidth", 0xff90, 0 },
- { "minusbelowcmb", 0x0320, 0 },
- { "minuscircle", 0x2296, 0 },
- { "minusmod", 0x02d7, 0 },
- { "minusplus", 0x2213, 0 },
- { "miribaarusquare", 0x334a, 0 },
- { "mirisquare", 0x3349, 0 },
- { "mlonglegturned", 0x0270, 0 },
- { "mlsquare", 0x3396, 0 },
- { "mmcubedsquare", 0x33a3, 0 },
- { "mmonospace", 0xff4d, 0 },
- { "mmsquaredsquare", 0x339f, 0 },
- { "mohiragana", 0x3082, 0 },
- { "mohmsquare", 0x33c1, 0 },
- { "mokatakana", 0x30e2, 0 },
- { "mokatakanahalfwidth", 0xff93, 0 },
- { "molsquare", 0x33d6, 0 },
- { "momathai", 0x0e21, 0 },
- { "moverssquare", 0x33a7, 0 },
- { "moverssquaredsquare", 0x33a8, 0 },
- { "mparen", 0x24a8, 0 },
- { "mpasquare", 0x33ab, 0 },
- { "mssquare", 0x33b3, 0 },
- { "msuperior", 0xf6ef, 0 },
- { "mturned", 0x026f, 0 },
- { "mu1", 0x00b5, 0 },
- { "muasquare", 0x3382, 0 },
- { "muchgreater", 0x226b, 0 },
- { "muchless", 0x226a, 0 },
- { "mufsquare", 0x338c, 0 },
- { "mugreek", 0x03bc, 0 },
- { "mugsquare", 0x338d, 0 },
- { "muhiragana", 0x3080, 0 },
- { "mukatakana", 0x30e0, 0 },
- { "mukatakanahalfwidth", 0xff91, 0 },
- { "mulsquare", 0x3395, 0 },
- { "mumsquare", 0x339b, 0 },
- { "munahhebrew", 0x05a3, 0 },
- { "munahlefthebrew", 0x05a3, 0 },
- { "musicflatsign", 0x266d, 0 },
- { "musicsharpsign", 0x266f, 0 },
- { "mussquare", 0x33b2, 0 },
- { "muvsquare", 0x33b6, 0 },
- { "muwsquare", 0x33bc, 0 },
- { "mvmegasquare", 0x33b9, 0 },
- { "mvsquare", 0x33b7, 0 },
- { "mwmegasquare", 0x33bf, 0 },
- { "mwsquare", 0x33bd, 0 },
- { "nabengali", 0x09a8, 0 },
- { "nabla", 0x2207, 0 },
- { "nadeva", 0x0928, 0 },
- { "nagujarati", 0x0aa8, 0 },
- { "nagurmukhi", 0x0a28, 0 },
- { "nahiragana", 0x306a, 0 },
- { "nakatakana", 0x30ca, 0 },
- { "nakatakanahalfwidth", 0xff85, 0 },
- { "nasquare", 0x3381, 0 },
- { "nbopomofo", 0x310b, 0 },
- { "nbspace", 0x00a0, 0 },
- { "ncedilla", 0x0146, 0 },
- { "ncircle", 0x24dd, 0 },
- { "ncircumflexbelow", 0x1e4b, 0 },
- { "ndotaccent", 0x1e45, 0 },
- { "ndotbelow", 0x1e47, 0 },
- { "nehiragana", 0x306d, 0 },
- { "nekatakana", 0x30cd, 0 },
- { "nekatakanahalfwidth", 0xff88, 0 },
- { "newsheqelsign", 0x20aa, 0 },
- { "nfsquare", 0x338b, 0 },
- { "ngabengali", 0x0999, 0 },
- { "ngadeva", 0x0919, 0 },
- { "ngagujarati", 0x0a99, 0 },
- { "ngagurmukhi", 0x0a19, 0 },
- { "ngonguthai", 0x0e07, 0 },
- { "nhiragana", 0x3093, 0 },
- { "nhookleft", 0x0272, 0 },
- { "nhookretroflex", 0x0273, 0 },
- { "nieunacirclekorean", 0x326f, 0 },
- { "nieunaparenkorean", 0x320f, 0 },
- { "nieuncieuckorean", 0x3135, 0 },
- { "nieuncirclekorean", 0x3261, 0 },
- { "nieunhieuhkorean", 0x3136, 0 },
- { "nieunkorean", 0x3134, 0 },
- { "nieunpansioskorean", 0x3168, 0 },
- { "nieunparenkorean", 0x3201, 0 },
- { "nieunsioskorean", 0x3167, 0 },
- { "nieuntikeutkorean", 0x3166, 0 },
- { "nihiragana", 0x306b, 0 },
- { "nikatakana", 0x30cb, 0 },
- { "nikatakanahalfwidth", 0xff86, 0 },
- { "nikhahitleftthai", 0xf899, 0 },
- { "nikhahitthai", 0x0e4d, 0 },
- { "ninearabic", 0x0669, 0 },
- { "ninebengali", 0x09ef, 0 },
- { "ninecircle", 0x2468, 0 },
- { "ninecircleinversesansserif", 0x2792, 0 },
- { "ninedeva", 0x096f, 0 },
- { "ninegujarati", 0x0aef, 0 },
- { "ninegurmukhi", 0x0a6f, 0 },
- { "ninehackarabic", 0x0669, 0 },
- { "ninehangzhou", 0x3029, 0 },
- { "nineideographicparen", 0x3228, 0 },
- { "nineinferior", 0x2089, 0 },
- { "ninemonospace", 0xff19, 0 },
- { "nineoldstyle", 0xf739, 0 },
- { "nineparen", 0x247c, 0 },
- { "nineperiod", 0x2490, 0 },
- { "ninepersian", 0x06f9, 0 },
- { "nineroman", 0x2178, 0 },
- { "ninesuperior", 0x2079, 0 },
- { "nineteencircle", 0x2472, 0 },
- { "nineteenparen", 0x2486, 0 },
- { "nineteenperiod", 0x249a, 0 },
- { "ninethai", 0x0e59, 0 },
- { "nj", 0x01cc, 0 },
- { "njecyrillic", 0x045a, 0 },
- { "nkatakana", 0x30f3, 0 },
- { "nkatakanahalfwidth", 0xff9d, 0 },
- { "nlegrightlong", 0x019e, 0 },
- { "nlinebelow", 0x1e49, 0 },
- { "nmonospace", 0xff4e, 0 },
- { "nmsquare", 0x339a, 0 },
- { "nnabengali", 0x09a3, 0 },
- { "nnadeva", 0x0923, 0 },
- { "nnagujarati", 0x0aa3, 0 },
- { "nnagurmukhi", 0x0a23, 0 },
- { "nnnadeva", 0x0929, 0 },
- { "nohiragana", 0x306e, 0 },
- { "nokatakana", 0x30ce, 0 },
- { "nokatakanahalfwidth", 0xff89, 0 },
- { "nonbreakingspace", 0x00a0, 0 },
- { "nonenthai", 0x0e13, 0 },
- { "nonuthai", 0x0e19, 0 },
- { "noonarabic", 0x0646, 0 },
- { "noonfinalarabic", 0xfee6, 0 },
- { "noonghunnaarabic", 0x06ba, 0 },
- { "noonghunnafinalarabic", 0xfb9f, 0 },
- { "noonhehinitialarabic", 0xfee7, 0 },
- { "nooninitialarabic", 0xfee7, 0 },
- { "noonjeeminitialarabic", 0xfcd2, 0 },
- { "noonjeemisolatedarabic", 0xfc4b, 0 },
- { "noonmedialarabic", 0xfee8, 0 },
- { "noonmeeminitialarabic", 0xfcd5, 0 },
- { "noonmeemisolatedarabic", 0xfc4e, 0 },
- { "noonnoonfinalarabic", 0xfc8d, 0 },
- { "notcontains", 0x220c, 0 },
- { "notelementof", 0x2209, 0 },
- { "notgreater", 0x226f, 0 },
- { "notgreaternorequal", 0x2271, 0 },
- { "notgreaternorless", 0x2279, 0 },
- { "notidentical", 0x2262, 0 },
- { "notless", 0x226e, 0 },
- { "notlessnorequal", 0x2270, 0 },
- { "notparallel", 0x2226, 0 },
- { "notprecedes", 0x2280, 0 },
- { "notsucceeds", 0x2281, 0 },
- { "notsuperset", 0x2285, 0 },
- { "nowarmenian", 0x0576, 0 },
- { "nparen", 0x24a9, 0 },
- { "nssquare", 0x33b1, 0 },
- { "nsuperior", 0x207f, 0 },
- { "nuhiragana", 0x306c, 0 },
- { "nukatakana", 0x30cc, 0 },
- { "nukatakanahalfwidth", 0xff87, 0 },
- { "nuktabengali", 0x09bc, 0 },
- { "nuktadeva", 0x093c, 0 },
- { "nuktagujarati", 0x0abc, 0 },
- { "nuktagurmukhi", 0x0a3c, 0 },
- { "numbersignmonospace", 0xff03, 0 },
- { "numbersignsmall", 0xfe5f, 0 },
- { "numeralsigngreek", 0x0374, 0 },
- { "numeralsignlowergreek", 0x0375, 0 },
- { "numero", 0x2116, 0 },
- { "nun", 0x05e0, 0 },
- { "nundagesh", 0xfb40, 0 },
- { "nundageshhebrew", 0xfb40, 0 },
- { "nunhebrew", 0x05e0, 0 },
- { "nvsquare", 0x33b5, 0 },
- { "nwsquare", 0x33bb, 0 },
- { "nyabengali", 0x099e, 0 },
- { "nyadeva", 0x091e, 0 },
- { "nyagujarati", 0x0a9e, 0 },
- { "nyagurmukhi", 0x0a1e, 0 },
- { "oangthai", 0x0e2d, 0 },
- { "obarred", 0x0275, 0 },
- { "obarredcyrillic", 0x04e9, 0 },
- { "obarreddieresiscyrillic", 0x04eb, 0 },
- { "obengali", 0x0993, 0 },
- { "obopomofo", 0x311b, 0 },
- { "ocandradeva", 0x0911, 0 },
- { "ocandragujarati", 0x0a91, 0 },
- { "ocandravowelsigndeva", 0x0949, 0 },
- { "ocandravowelsigngujarati", 0x0ac9, 0 },
- { "ocaron", 0x01d2, 0 },
- { "ocircle", 0x24de, 0 },
- { "ocircumflexacute", 0x1ed1, 0 },
- { "ocircumflexdotbelow", 0x1ed9, 0 },
- { "ocircumflexgrave", 0x1ed3, 0 },
- { "ocircumflexhookabove", 0x1ed5, 0 },
- { "ocircumflextilde", 0x1ed7, 0 },
- { "ocyrillic", 0x043e, 0 },
- { "odblacute", 0x0151, 0 },
- { "odblgrave", 0x020d, 0 },
- { "odeva", 0x0913, 0 },
- { "odieresiscyrillic", 0x04e7, 0 },
- { "odotbelow", 0x1ecd, 0 },
- { "oekorean", 0x315a, 0 },
- { "ogonekcmb", 0x0328, 0 },
- { "ogujarati", 0x0a93, 0 },
- { "oharmenian", 0x0585, 0 },
- { "ohiragana", 0x304a, 0 },
- { "ohookabove", 0x1ecf, 0 },
- { "ohornacute", 0x1edb, 0 },
- { "ohorndotbelow", 0x1ee3, 0 },
- { "ohorngrave", 0x1edd, 0 },
- { "ohornhookabove", 0x1edf, 0 },
- { "ohorntilde", 0x1ee1, 0 },
- { "oi", 0x01a3, 0 },
- { "oinvertedbreve", 0x020f, 0 },
- { "okatakana", 0x30aa, 0 },
- { "okatakanahalfwidth", 0xff75, 0 },
- { "okorean", 0x3157, 0 },
- { "olehebrew", 0x05ab, 0 },
- { "omacronacute", 0x1e53, 0 },
- { "omacrongrave", 0x1e51, 0 },
- { "omdeva", 0x0950, 0 },
- { "omegacyrillic", 0x0461, 0 },
- { "omegalatinclosed", 0x0277, 0 },
- { "omegaroundcyrillic", 0x047b, 0 },
- { "omegatitlocyrillic", 0x047d, 0 },
- { "omgujarati", 0x0ad0, 0 },
- { "omonospace", 0xff4f, 0 },
- { "onearabic", 0x0661, 0 },
- { "onebengali", 0x09e7, 0 },
- { "onecircle", 0x2460, 0 },
- { "onecircleinversesansserif", 0x278a, 0 },
- { "onedeva", 0x0967, 0 },
- { "onefitted", 0xf6dc, 0 },
- { "onegujarati", 0x0ae7, 0 },
- { "onegurmukhi", 0x0a67, 0 },
- { "onehackarabic", 0x0661, 0 },
- { "onehangzhou", 0x3021, 0 },
- { "oneideographicparen", 0x3220, 0 },
- { "oneinferior", 0x2081, 0 },
- { "onemonospace", 0xff11, 0 },
- { "onenumeratorbengali", 0x09f4, 0 },
- { "oneoldstyle", 0xf731, 0 },
- { "oneparen", 0x2474, 0 },
- { "oneperiod", 0x2488, 0 },
- { "onepersian", 0x06f1, 0 },
- { "oneroman", 0x2170, 0 },
- { "onesuperior", 0x00b9, 0 },
- { "onethai", 0x0e51, 0 },
- { "oogonek", 0x01eb, 0 },
- { "oogonekmacron", 0x01ed, 0 },
- { "oogurmukhi", 0x0a13, 0 },
- { "oomatragurmukhi", 0x0a4b, 0 },
- { "oopen", 0x0254, 0 },
- { "oparen", 0x24aa, 0 },
- { "option", 0x2325, 0 },
- { "oshortdeva", 0x0912, 0 },
- { "oshortvowelsigndeva", 0x094a, 0 },
- { "osmallhiragana", 0x3049, 0 },
- { "osmallkatakana", 0x30a9, 0 },
- { "osmallkatakanahalfwidth", 0xff6b, 0 },
- { "ostrokeacute", 0x01ff, 0 },
- { "osuperior", 0xf6f0, 0 },
- { "otcyrillic", 0x047f, 0 },
- { "otildeacute", 0x1e4d, 0 },
- { "otildedieresis", 0x1e4f, 0 },
- { "oubopomofo", 0x3121, 0 },
- { "overline", 0x203e, 0 },
- { "overlinecenterline", 0xfe4a, 0 },
- { "overlinecmb", 0x0305, 0 },
- { "overlinedashed", 0xfe49, 0 },
- { "overlinedblwavy", 0xfe4c, 0 },
- { "overlinewavy", 0xfe4b, 0 },
- { "overscore", 0x00af, 0 },
- { "ovowelsignbengali", 0x09cb, 0 },
- { "ovowelsigndeva", 0x094b, 0 },
- { "ovowelsigngujarati", 0x0acb, 0 },
- { "paampssquare", 0x3380, 0 },
- { "paasentosquare", 0x332b, 0 },
- { "pabengali", 0x09aa, 0 },
- { "pacute", 0x1e55, 0 },
- { "padeva", 0x092a, 0 },
- { "pagedown", 0x21df, 0 },
- { "pageup", 0x21de, 0 },
- { "pagujarati", 0x0aaa, 0 },
- { "pagurmukhi", 0x0a2a, 0 },
- { "pahiragana", 0x3071, 0 },
- { "paiyannoithai", 0x0e2f, 0 },
- { "pakatakana", 0x30d1, 0 },
- { "palatalizationcyrilliccmb", 0x0484, 0 },
- { "palochkacyrillic", 0x04c0, 0 },
- { "pansioskorean", 0x317f, 0 },
- { "parallel", 0x2225, 0 },
- { "parenleftaltonearabic", 0xfd3e, 0 },
- { "parenleftbt", 0xf8ed, 0 },
- { "parenleftex", 0xf8ec, 0 },
- { "parenleftinferior", 0x208d, 0 },
- { "parenleftmonospace", 0xff08, 0 },
- { "parenleftsmall", 0xfe59, 0 },
- { "parenleftsuperior", 0x207d, 0 },
- { "parenlefttp", 0xf8eb, 0 },
- { "parenleftvertical", 0xfe35, 0 },
- { "parenrightaltonearabic", 0xfd3f, 0 },
- { "parenrightbt", 0xf8f8, 0 },
- { "parenrightex", 0xf8f7, 0 },
- { "parenrightinferior", 0x208e, 0 },
- { "parenrightmonospace", 0xff09, 0 },
- { "parenrightsmall", 0xfe5a, 0 },
- { "parenrightsuperior", 0x207e, 0 },
- { "parenrighttp", 0xf8f6, 0 },
- { "parenrightvertical", 0xfe36, 0 },
- { "paseqhebrew", 0x05c0, 0 },
- { "pashtahebrew", 0x0599, 0 },
- { "pasquare", 0x33a9, 0 },
- { "patah", 0x05b7, 0 },
- { "patah11", 0x05b7, 0 },
- { "patah1d", 0x05b7, 0 },
- { "patah2a", 0x05b7, 0 },
- { "patahhebrew", 0x05b7, 0 },
- { "patahnarrowhebrew", 0x05b7, 0 },
- { "patahquarterhebrew", 0x05b7, 0 },
- { "patahwidehebrew", 0x05b7, 0 },
- { "pazerhebrew", 0x05a1, 0 },
- { "pbopomofo", 0x3106, 0 },
- { "pcircle", 0x24df, 0 },
- { "pdotaccent", 0x1e57, 0 },
- { "pe", 0x05e4, 0 },
- { "pecyrillic", 0x043f, 0 },
- { "pedagesh", 0xfb44, 0 },
- { "pedageshhebrew", 0xfb44, 0 },
- { "peezisquare", 0x333b, 0 },
- { "pefinaldageshhebrew", 0xfb43, 0 },
- { "peharabic", 0x067e, 0 },
- { "peharmenian", 0x057a, 0 },
- { "pehebrew", 0x05e4, 0 },
- { "pehfinalarabic", 0xfb57, 0 },
- { "pehinitialarabic", 0xfb58, 0 },
- { "pehiragana", 0x307a, 0 },
- { "pehmedialarabic", 0xfb59, 0 },
- { "pekatakana", 0x30da, 0 },
- { "pemiddlehookcyrillic", 0x04a7, 0 },
- { "perafehebrew", 0xfb4e, 0 },
- { "percentarabic", 0x066a, 0 },
- { "percentmonospace", 0xff05, 0 },
- { "percentsmall", 0xfe6a, 0 },
- { "periodarmenian", 0x0589, 0 },
- { "periodhalfwidth", 0xff61, 0 },
- { "periodinferior", 0xf6e7, 0 },
- { "periodmonospace", 0xff0e, 0 },
- { "periodsmall", 0xfe52, 0 },
- { "periodsuperior", 0xf6e8, 0 },
- { "perispomenigreekcmb", 0x0342, 0 },
- { "pfsquare", 0x338a, 0 },
- { "phabengali", 0x09ab, 0 },
- { "phadeva", 0x092b, 0 },
- { "phagujarati", 0x0aab, 0 },
- { "phagurmukhi", 0x0a2b, 0 },
- { "phieuphacirclekorean", 0x327a, 0 },
- { "phieuphaparenkorean", 0x321a, 0 },
- { "phieuphcirclekorean", 0x326c, 0 },
- { "phieuphkorean", 0x314d, 0 },
- { "phieuphparenkorean", 0x320c, 0 },
- { "philatin", 0x0278, 0 },
- { "phinthuthai", 0x0e3a, 0 },
- { "phisymbolgreek", 0x03d5, 0 },
- { "phook", 0x01a5, 0 },
- { "phophanthai", 0x0e1e, 0 },
- { "phophungthai", 0x0e1c, 0 },
- { "phosamphaothai", 0x0e20, 0 },
- { "pieupacirclekorean", 0x3273, 0 },
- { "pieupaparenkorean", 0x3213, 0 },
- { "pieupcieuckorean", 0x3176, 0 },
- { "pieupcirclekorean", 0x3265, 0 },
- { "pieupkiyeokkorean", 0x3172, 0 },
- { "pieupkorean", 0x3142, 0 },
- { "pieupparenkorean", 0x3205, 0 },
- { "pieupsioskiyeokkorean", 0x3174, 0 },
- { "pieupsioskorean", 0x3144, 0 },
- { "pieupsiostikeutkorean", 0x3175, 0 },
- { "pieupthieuthkorean", 0x3177, 0 },
- { "pieuptikeutkorean", 0x3173, 0 },
- { "pihiragana", 0x3074, 0 },
- { "pikatakana", 0x30d4, 0 },
- { "pisymbolgreek", 0x03d6, 0 },
- { "piwrarmenian", 0x0583, 0 },
- { "plusbelowcmb", 0x031f, 0 },
- { "pluscircle", 0x2295, 0 },
- { "plusmod", 0x02d6, 0 },
- { "plusmonospace", 0xff0b, 0 },
- { "plussmall", 0xfe62, 0 },
- { "plussuperior", 0x207a, 0 },
- { "pmonospace", 0xff50, 0 },
- { "pmsquare", 0x33d8, 0 },
- { "pohiragana", 0x307d, 0 },
- { "pointingindexdownwhite", 0x261f, 0 },
- { "pointingindexleftwhite", 0x261c, 0 },
- { "pointingindexrightwhite", 0x261e, 0 },
- { "pointingindexupwhite", 0x261d, 0 },
- { "pokatakana", 0x30dd, 0 },
- { "poplathai", 0x0e1b, 0 },
- { "postalmark", 0x3012, 0 },
- { "postalmarkface", 0x3020, 0 },
- { "pparen", 0x24ab, 0 },
- { "precedes", 0x227a, 0 },
- { "primemod", 0x02b9, 0 },
- { "primereversed", 0x2035, 0 },
- { "projective", 0x2305, 0 },
- { "prolongedkana", 0x30fc, 0 },
- { "propellor", 0x2318, 0 },
- { "proportion", 0x2237, 0 },
- { "psicyrillic", 0x0471, 0 },
- { "psilipneumatacyrilliccmb", 0x0486, 0 },
- { "pssquare", 0x33b0, 0 },
- { "puhiragana", 0x3077, 0 },
- { "pukatakana", 0x30d7, 0 },
- { "pvsquare", 0x33b4, 0 },
- { "pwsquare", 0x33ba, 0 },
- { "qadeva", 0x0958, 0 },
- { "qadmahebrew", 0x05a8, 0 },
- { "qafarabic", 0x0642, 0 },
- { "qaffinalarabic", 0xfed6, 0 },
- { "qafinitialarabic", 0xfed7, 0 },
- { "qafmedialarabic", 0xfed8, 0 },
- { "qamats", 0x05b8, 0 },
- { "qamats10", 0x05b8, 0 },
- { "qamats1a", 0x05b8, 0 },
- { "qamats1c", 0x05b8, 0 },
- { "qamats27", 0x05b8, 0 },
- { "qamats29", 0x05b8, 0 },
- { "qamats33", 0x05b8, 0 },
- { "qamatsde", 0x05b8, 0 },
- { "qamatshebrew", 0x05b8, 0 },
- { "qamatsnarrowhebrew", 0x05b8, 0 },
- { "qamatsqatanhebrew", 0x05b8, 0 },
- { "qamatsqatannarrowhebrew", 0x05b8, 0 },
- { "qamatsqatanquarterhebrew", 0x05b8, 0 },
- { "qamatsqatanwidehebrew", 0x05b8, 0 },
- { "qamatsquarterhebrew", 0x05b8, 0 },
- { "qamatswidehebrew", 0x05b8, 0 },
- { "qarneyparahebrew", 0x059f, 0 },
- { "qbopomofo", 0x3111, 0 },
- { "qcircle", 0x24e0, 0 },
- { "qhook", 0x02a0, 0 },
- { "qmonospace", 0xff51, 0 },
- { "qof", 0x05e7, 0 },
- { "qofdagesh", 0xfb47, 0 },
- { "qofdageshhebrew", 0xfb47, 0 },
- { "qofhatafpatah", 0x05e7, 0 },
- { "qofhatafpatahhebrew", 0x05e7, 0 },
- { "qofhatafsegol", 0x05e7, 0 },
- { "qofhatafsegolhebrew", 0x05e7, 0 },
- { "qofhebrew", 0x05e7, 0 },
- { "qofhiriq", 0x05e7, 0 },
- { "qofhiriqhebrew", 0x05e7, 0 },
- { "qofholam", 0x05e7, 0 },
- { "qofholamhebrew", 0x05e7, 0 },
- { "qofpatah", 0x05e7, 0 },
- { "qofpatahhebrew", 0x05e7, 0 },
- { "qofqamats", 0x05e7, 0 },
- { "qofqamatshebrew", 0x05e7, 0 },
- { "qofqubuts", 0x05e7, 0 },
- { "qofqubutshebrew", 0x05e7, 0 },
- { "qofsegol", 0x05e7, 0 },
- { "qofsegolhebrew", 0x05e7, 0 },
- { "qofsheva", 0x05e7, 0 },
- { "qofshevahebrew", 0x05e7, 0 },
- { "qoftsere", 0x05e7, 0 },
- { "qoftserehebrew", 0x05e7, 0 },
- { "qparen", 0x24ac, 0 },
- { "quarternote", 0x2669, 0 },
- { "qubuts", 0x05bb, 0 },
- { "qubuts18", 0x05bb, 0 },
- { "qubuts25", 0x05bb, 0 },
- { "qubuts31", 0x05bb, 0 },
- { "qubutshebrew", 0x05bb, 0 },
- { "qubutsnarrowhebrew", 0x05bb, 0 },
- { "qubutsquarterhebrew", 0x05bb, 0 },
- { "qubutswidehebrew", 0x05bb, 0 },
- { "questionarabic", 0x061f, 0 },
- { "questionarmenian", 0x055e, 0 },
- { "questiondownsmall", 0xf7bf, 0 },
- { "questiongreek", 0x037e, 0 },
- { "questionmonospace", 0xff1f, 0 },
- { "questionsmall", 0xf73f, 0 },
- { "quotedblmonospace", 0xff02, 0 },
- { "quotedblprime", 0x301e, 0 },
- { "quotedblprimereversed", 0x301d, 0 },
- { "quoteleftreversed", 0x201b, 0 },
- { "quoterightn", 0x0149, 0 },
- { "quotesinglemonospace", 0xff07, 0 },
- { "raarmenian", 0x057c, 0 },
- { "rabengali", 0x09b0, 0 },
- { "radeva", 0x0930, 0 },
- { "radicalex", 0xf8e5, 0 },
- { "radoverssquare", 0x33ae, 0 },
- { "radoverssquaredsquare", 0x33af, 0 },
- { "radsquare", 0x33ad, 0 },
- { "rafe", 0x05bf, 0 },
- { "rafehebrew", 0x05bf, 0 },
- { "ragujarati", 0x0ab0, 0 },
- { "ragurmukhi", 0x0a30, 0 },
- { "rahiragana", 0x3089, 0 },
- { "rakatakana", 0x30e9, 0 },
- { "rakatakanahalfwidth", 0xff97, 0 },
- { "ralowerdiagonalbengali", 0x09f1, 0 },
- { "ramiddlediagonalbengali", 0x09f0, 0 },
- { "ramshorn", 0x0264, 0 },
- { "ratio", 0x2236, 0 },
- { "rbopomofo", 0x3116, 0 },
- { "rcedilla", 0x0157, 0 },
- { "rcircle", 0x24e1, 0 },
- { "rdblgrave", 0x0211, 0 },
- { "rdotaccent", 0x1e59, 0 },
- { "rdotbelow", 0x1e5b, 0 },
- { "rdotbelowmacron", 0x1e5d, 0 },
- { "referencemark", 0x203b, 0 },
- { "registersans", 0xf8e8, 0 },
- { "registerserif", 0xf6da, 0 },
- { "reharabic", 0x0631, 0 },
- { "reharmenian", 0x0580, 0 },
- { "rehfinalarabic", 0xfeae, 0 },
- { "rehiragana", 0x308c, 0 },
- { "rehyehaleflamarabic", 0x0631, 0 },
- { "rekatakana", 0x30ec, 0 },
- { "rekatakanahalfwidth", 0xff9a, 0 },
- { "resh", 0x05e8, 0 },
- { "reshdageshhebrew", 0xfb48, 0 },
- { "reshhatafpatah", 0x05e8, 0 },
- { "reshhatafpatahhebrew", 0x05e8, 0 },
- { "reshhatafsegol", 0x05e8, 0 },
- { "reshhatafsegolhebrew", 0x05e8, 0 },
- { "reshhebrew", 0x05e8, 0 },
- { "reshhiriq", 0x05e8, 0 },
- { "reshhiriqhebrew", 0x05e8, 0 },
- { "reshholam", 0x05e8, 0 },
- { "reshholamhebrew", 0x05e8, 0 },
- { "reshpatah", 0x05e8, 0 },
- { "reshpatahhebrew", 0x05e8, 0 },
- { "reshqamats", 0x05e8, 0 },
- { "reshqamatshebrew", 0x05e8, 0 },
- { "reshqubuts", 0x05e8, 0 },
- { "reshqubutshebrew", 0x05e8, 0 },
- { "reshsegol", 0x05e8, 0 },
- { "reshsegolhebrew", 0x05e8, 0 },
- { "reshsheva", 0x05e8, 0 },
- { "reshshevahebrew", 0x05e8, 0 },
- { "reshtsere", 0x05e8, 0 },
- { "reshtserehebrew", 0x05e8, 0 },
- { "reversedtilde", 0x223d, 0 },
- { "reviahebrew", 0x0597, 0 },
- { "reviamugrashhebrew", 0x0597, 0 },
- { "rfishhook", 0x027e, 0 },
- { "rfishhookreversed", 0x027f, 0 },
- { "rhabengali", 0x09dd, 0 },
- { "rhadeva", 0x095d, 0 },
- { "rhook", 0x027d, 0 },
- { "rhookturned", 0x027b, 0 },
- { "rhookturnedsuperior", 0x02b5, 0 },
- { "rhosymbolgreek", 0x03f1, 0 },
- { "rhotichookmod", 0x02de, 0 },
- { "rieulacirclekorean", 0x3271, 0 },
- { "rieulaparenkorean", 0x3211, 0 },
- { "rieulcirclekorean", 0x3263, 0 },
- { "rieulhieuhkorean", 0x3140, 0 },
- { "rieulkiyeokkorean", 0x313a, 0 },
- { "rieulkiyeoksioskorean", 0x3169, 0 },
- { "rieulkorean", 0x3139, 0 },
- { "rieulmieumkorean", 0x313b, 0 },
- { "rieulpansioskorean", 0x316c, 0 },
- { "rieulparenkorean", 0x3203, 0 },
- { "rieulphieuphkorean", 0x313f, 0 },
- { "rieulpieupkorean", 0x313c, 0 },
- { "rieulpieupsioskorean", 0x316b, 0 },
- { "rieulsioskorean", 0x313d, 0 },
- { "rieulthieuthkorean", 0x313e, 0 },
- { "rieultikeutkorean", 0x316a, 0 },
- { "rieulyeorinhieuhkorean", 0x316d, 0 },
- { "rightangle", 0x221f, 0 },
- { "righttackbelowcmb", 0x0319, 0 },
- { "righttriangle", 0x22bf, 0 },
- { "rihiragana", 0x308a, 0 },
- { "rikatakana", 0x30ea, 0 },
- { "rikatakanahalfwidth", 0xff98, 0 },
- { "ringbelowcmb", 0x0325, 0 },
- { "ringcmb", 0x030a, 0 },
- { "ringhalfleft", 0x02bf, 0 },
- { "ringhalfleftarmenian", 0x0559, 0 },
- { "ringhalfleftbelowcmb", 0x031c, 0 },
- { "ringhalfleftcentered", 0x02d3, 0 },
- { "ringhalfright", 0x02be, 0 },
- { "ringhalfrightbelowcmb", 0x0339, 0 },
- { "ringhalfrightcentered", 0x02d2, 0 },
- { "rinvertedbreve", 0x0213, 0 },
- { "rittorusquare", 0x3351, 0 },
- { "rlinebelow", 0x1e5f, 0 },
- { "rlongleg", 0x027c, 0 },
- { "rlonglegturned", 0x027a, 0 },
- { "rmonospace", 0xff52, 0 },
- { "rohiragana", 0x308d, 0 },
- { "rokatakana", 0x30ed, 0 },
- { "rokatakanahalfwidth", 0xff9b, 0 },
- { "roruathai", 0x0e23, 0 },
- { "rparen", 0x24ad, 0 },
- { "rrabengali", 0x09dc, 0 },
- { "rradeva", 0x0931, 0 },
- { "rragurmukhi", 0x0a5c, 0 },
- { "rreharabic", 0x0691, 0 },
- { "rrehfinalarabic", 0xfb8d, 0 },
- { "rrvocalicbengali", 0x09e0, 0 },
- { "rrvocalicdeva", 0x0960, 0 },
- { "rrvocalicgujarati", 0x0ae0, 0 },
- { "rrvocalicvowelsignbengali", 0x09c4, 0 },
- { "rrvocalicvowelsigndeva", 0x0944, 0 },
- { "rrvocalicvowelsigngujarati", 0x0ac4, 0 },
- { "rsuperior", 0xf6f1, 0 },
- { "rturned", 0x0279, 0 },
- { "rturnedsuperior", 0x02b4, 0 },
- { "ruhiragana", 0x308b, 0 },
- { "rukatakana", 0x30eb, 0 },
- { "rukatakanahalfwidth", 0xff99, 0 },
- { "rupeemarkbengali", 0x09f2, 0 },
- { "rupeesignbengali", 0x09f3, 0 },
- { "rupiah", 0xf6dd, 0 },
- { "ruthai", 0x0e24, 0 },
- { "rvocalicbengali", 0x098b, 0 },
- { "rvocalicdeva", 0x090b, 0 },
- { "rvocalicgujarati", 0x0a8b, 0 },
- { "rvocalicvowelsignbengali", 0x09c3, 0 },
- { "rvocalicvowelsigndeva", 0x0943, 0 },
- { "rvocalicvowelsigngujarati", 0x0ac3, 0 },
- { "sabengali", 0x09b8, 0 },
- { "sacutedotaccent", 0x1e65, 0 },
- { "sadarabic", 0x0635, 0 },
- { "sadeva", 0x0938, 0 },
- { "sadfinalarabic", 0xfeba, 0 },
- { "sadinitialarabic", 0xfebb, 0 },
- { "sadmedialarabic", 0xfebc, 0 },
- { "sagujarati", 0x0ab8, 0 },
- { "sagurmukhi", 0x0a38, 0 },
- { "sahiragana", 0x3055, 0 },
- { "sakatakana", 0x30b5, 0 },
- { "sakatakanahalfwidth", 0xff7b, 0 },
- { "sallallahoualayhewasallamarabic", 0xfdfa, 0 },
- { "samekh", 0x05e1, 0 },
- { "samekhdagesh", 0xfb41, 0 },
- { "samekhdageshhebrew", 0xfb41, 0 },
- { "samekhhebrew", 0x05e1, 0 },
- { "saraaathai", 0x0e32, 0 },
- { "saraaethai", 0x0e41, 0 },
- { "saraaimaimalaithai", 0x0e44, 0 },
- { "saraaimaimuanthai", 0x0e43, 0 },
- { "saraamthai", 0x0e33, 0 },
- { "saraathai", 0x0e30, 0 },
- { "saraethai", 0x0e40, 0 },
- { "saraiileftthai", 0xf886, 0 },
- { "saraiithai", 0x0e35, 0 },
- { "saraileftthai", 0xf885, 0 },
- { "saraithai", 0x0e34, 0 },
- { "saraothai", 0x0e42, 0 },
- { "saraueeleftthai", 0xf888, 0 },
- { "saraueethai", 0x0e37, 0 },
- { "saraueleftthai", 0xf887, 0 },
- { "sarauethai", 0x0e36, 0 },
- { "sarauthai", 0x0e38, 0 },
- { "sarauuthai", 0x0e39, 0 },
- { "sbopomofo", 0x3119, 0 },
- { "scarondotaccent", 0x1e67, 0 },
- { "schwa", 0x0259, 0 },
- { "schwacyrillic", 0x04d9, 0 },
- { "schwadieresiscyrillic", 0x04db, 0 },
- { "schwahook", 0x025a, 0 },
- { "scircle", 0x24e2, 0 },
- { "sdotaccent", 0x1e61, 0 },
- { "sdotbelow", 0x1e63, 0 },
- { "sdotbelowdotaccent", 0x1e69, 0 },
- { "seagullbelowcmb", 0x033c, 0 },
- { "secondtonechinese", 0x02ca, 0 },
- { "seenarabic", 0x0633, 0 },
- { "seenfinalarabic", 0xfeb2, 0 },
- { "seeninitialarabic", 0xfeb3, 0 },
- { "seenmedialarabic", 0xfeb4, 0 },
- { "segol", 0x05b6, 0 },
- { "segol13", 0x05b6, 0 },
- { "segol1f", 0x05b6, 0 },
- { "segol2c", 0x05b6, 0 },
- { "segolhebrew", 0x05b6, 0 },
- { "segolnarrowhebrew", 0x05b6, 0 },
- { "segolquarterhebrew", 0x05b6, 0 },
- { "segoltahebrew", 0x0592, 0 },
- { "segolwidehebrew", 0x05b6, 0 },
- { "seharmenian", 0x057d, 0 },
- { "sehiragana", 0x305b, 0 },
- { "sekatakana", 0x30bb, 0 },
- { "sekatakanahalfwidth", 0xff7e, 0 },
- { "semicolonarabic", 0x061b, 0 },
- { "semicolonmonospace", 0xff1b, 0 },
- { "semicolonsmall", 0xfe54, 0 },
- { "semivoicedmarkkana", 0x309c, 0 },
- { "semivoicedmarkkanahalfwidth", 0xff9f, 0 },
- { "sentisquare", 0x3322, 0 },
- { "sentosquare", 0x3323, 0 },
- { "sevenarabic", 0x0667, 0 },
- { "sevenbengali", 0x09ed, 0 },
- { "sevencircle", 0x2466, 0 },
- { "sevencircleinversesansserif", 0x2790, 0 },
- { "sevendeva", 0x096d, 0 },
- { "sevengujarati", 0x0aed, 0 },
- { "sevengurmukhi", 0x0a6d, 0 },
- { "sevenhackarabic", 0x0667, 0 },
- { "sevenhangzhou", 0x3027, 0 },
- { "sevenideographicparen", 0x3226, 0 },
- { "seveninferior", 0x2087, 0 },
- { "sevenmonospace", 0xff17, 0 },
- { "sevenoldstyle", 0xf737, 0 },
- { "sevenparen", 0x247a, 0 },
- { "sevenperiod", 0x248e, 0 },
- { "sevenpersian", 0x06f7, 0 },
- { "sevenroman", 0x2176, 0 },
- { "sevensuperior", 0x2077, 0 },
- { "seventeencircle", 0x2470, 0 },
- { "seventeenparen", 0x2484, 0 },
- { "seventeenperiod", 0x2498, 0 },
- { "seventhai", 0x0e57, 0 },
- { "sfthyphen", 0x00ad, 0 },
- { "shaarmenian", 0x0577, 0 },
- { "shabengali", 0x09b6, 0 },
- { "shacyrillic", 0x0448, 0 },
- { "shaddaarabic", 0x0651, 0 },
- { "shaddadammaarabic", 0xfc61, 0 },
- { "shaddadammatanarabic", 0xfc5e, 0 },
- { "shaddafathaarabic", 0xfc60, 0 },
- { "shaddafathatanarabic", 0x0651, 0 },
- { "shaddakasraarabic", 0xfc62, 0 },
- { "shaddakasratanarabic", 0xfc5f, 0 },
- { "shadedark", 0x2593, 0 },
- { "shadelight", 0x2591, 0 },
- { "shademedium", 0x2592, 0 },
- { "shadeva", 0x0936, 0 },
- { "shagujarati", 0x0ab6, 0 },
- { "shagurmukhi", 0x0a36, 0 },
- { "shalshelethebrew", 0x0593, 0 },
- { "shbopomofo", 0x3115, 0 },
- { "shchacyrillic", 0x0449, 0 },
- { "sheenarabic", 0x0634, 0 },
- { "sheenfinalarabic", 0xfeb6, 0 },
- { "sheeninitialarabic", 0xfeb7, 0 },
- { "sheenmedialarabic", 0xfeb8, 0 },
- { "sheicoptic", 0x03e3, 0 },
- { "sheqel", 0x20aa, 0 },
- { "sheqelhebrew", 0x20aa, 0 },
- { "sheva", 0x05b0, 0 },
- { "sheva115", 0x05b0, 0 },
- { "sheva15", 0x05b0, 0 },
- { "sheva22", 0x05b0, 0 },
- { "sheva2e", 0x05b0, 0 },
- { "shevahebrew", 0x05b0, 0 },
- { "shevanarrowhebrew", 0x05b0, 0 },
- { "shevaquarterhebrew", 0x05b0, 0 },
- { "shevawidehebrew", 0x05b0, 0 },
- { "shhacyrillic", 0x04bb, 0 },
- { "shimacoptic", 0x03ed, 0 },
- { "shin", 0x05e9, 0 },
- { "shindagesh", 0xfb49, 0 },
- { "shindageshhebrew", 0xfb49, 0 },
- { "shindageshshindot", 0xfb2c, 0 },
- { "shindageshshindothebrew", 0xfb2c, 0 },
- { "shindageshsindot", 0xfb2d, 0 },
- { "shindageshsindothebrew", 0xfb2d, 0 },
- { "shindothebrew", 0x05c1, 0 },
- { "shinhebrew", 0x05e9, 0 },
- { "shinshindot", 0xfb2a, 0 },
- { "shinshindothebrew", 0xfb2a, 0 },
- { "shinsindot", 0xfb2b, 0 },
- { "shinsindothebrew", 0xfb2b, 0 },
- { "shook", 0x0282, 0 },
- { "sigmafinal", 0x03c2, 0 },
- { "sigmalunatesymbolgreek", 0x03f2, 0 },
- { "sihiragana", 0x3057, 0 },
- { "sikatakana", 0x30b7, 0 },
- { "sikatakanahalfwidth", 0xff7c, 0 },
- { "siluqhebrew", 0x05bd, 0 },
- { "siluqlefthebrew", 0x05bd, 0 },
- { "sindothebrew", 0x05c2, 0 },
- { "siosacirclekorean", 0x3274, 0 },
- { "siosaparenkorean", 0x3214, 0 },
- { "sioscieuckorean", 0x317e, 0 },
- { "sioscirclekorean", 0x3266, 0 },
- { "sioskiyeokkorean", 0x317a, 0 },
- { "sioskorean", 0x3145, 0 },
- { "siosnieunkorean", 0x317b, 0 },
- { "siosparenkorean", 0x3206, 0 },
- { "siospieupkorean", 0x317d, 0 },
- { "siostikeutkorean", 0x317c, 0 },
- { "sixarabic", 0x0666, 0 },
- { "sixbengali", 0x09ec, 0 },
- { "sixcircle", 0x2465, 0 },
- { "sixcircleinversesansserif", 0x278f, 0 },
- { "sixdeva", 0x096c, 0 },
- { "sixgujarati", 0x0aec, 0 },
- { "sixgurmukhi", 0x0a6c, 0 },
- { "sixhackarabic", 0x0666, 0 },
- { "sixhangzhou", 0x3026, 0 },
- { "sixideographicparen", 0x3225, 0 },
- { "sixinferior", 0x2086, 0 },
- { "sixmonospace", 0xff16, 0 },
- { "sixoldstyle", 0xf736, 0 },
- { "sixparen", 0x2479, 0 },
- { "sixperiod", 0x248d, 0 },
- { "sixpersian", 0x06f6, 0 },
- { "sixroman", 0x2175, 0 },
- { "sixsuperior", 0x2076, 0 },
- { "sixteencircle", 0x246f, 0 },
- { "sixteencurrencydenominatorbengali", 0x09f9, 0 },
- { "sixteenparen", 0x2483, 0 },
- { "sixteenperiod", 0x2497, 0 },
- { "sixthai", 0x0e56, 0 },
- { "slashmonospace", 0xff0f, 0 },
- { "slong", 0x017f, 0 },
- { "slongdotaccent", 0x1e9b, 0 },
- { "smonospace", 0xff53, 0 },
- { "sofpasuqhebrew", 0x05c3, 0 },
- { "softhyphen", 0x00ad, 0 },
- { "softsigncyrillic", 0x044c, 0 },
- { "sohiragana", 0x305d, 0 },
- { "sokatakana", 0x30bd, 0 },
- { "sokatakanahalfwidth", 0xff7f, 0 },
- { "soliduslongoverlaycmb", 0x0338, 0 },
- { "solidusshortoverlaycmb", 0x0337, 0 },
- { "sorusithai", 0x0e29, 0 },
- { "sosalathai", 0x0e28, 0 },
- { "sosothai", 0x0e0b, 0 },
- { "sosuathai", 0x0e2a, 0 },
- { "spacehackarabic", 0x0020, 0 },
- { "spadesuitblack", 0x2660, 0 },
- { "spadesuitwhite", 0x2664, 0 },
- { "sparen", 0x24ae, 0 },
- { "squarebelowcmb", 0x033b, 0 },
- { "squarecc", 0x33c4, 0 },
- { "squarecm", 0x339d, 0 },
- { "squarediagonalcrosshatchfill", 0x25a9, 0 },
- { "squarehorizontalfill", 0x25a4, 0 },
- { "squarekg", 0x338f, 0 },
- { "squarekm", 0x339e, 0 },
- { "squarekmcapital", 0x33ce, 0 },
- { "squareln", 0x33d1, 0 },
- { "squarelog", 0x33d2, 0 },
- { "squaremg", 0x338e, 0 },
- { "squaremil", 0x33d5, 0 },
- { "squaremm", 0x339c, 0 },
- { "squaremsquared", 0x33a1, 0 },
- { "squareorthogonalcrosshatchfill", 0x25a6, 0 },
- { "squareupperlefttolowerrightfill", 0x25a7, 0 },
- { "squareupperrighttolowerleftfill", 0x25a8, 0 },
- { "squareverticalfill", 0x25a5, 0 },
- { "squarewhitewithsmallblack", 0x25a3, 0 },
- { "srsquare", 0x33db, 0 },
- { "ssabengali", 0x09b7, 0 },
- { "ssadeva", 0x0937, 0 },
- { "ssagujarati", 0x0ab7, 0 },
- { "ssangcieuckorean", 0x3149, 0 },
- { "ssanghieuhkorean", 0x3185, 0 },
- { "ssangieungkorean", 0x3180, 0 },
- { "ssangkiyeokkorean", 0x3132, 0 },
- { "ssangnieunkorean", 0x3165, 0 },
- { "ssangpieupkorean", 0x3143, 0 },
- { "ssangsioskorean", 0x3146, 0 },
- { "ssangtikeutkorean", 0x3138, 0 },
- { "ssuperior", 0xf6f2, 0 },
- { "sterlingmonospace", 0xffe1, 0 },
- { "strokelongoverlaycmb", 0x0336, 0 },
- { "strokeshortoverlaycmb", 0x0335, 0 },
- { "subset", 0x2282, 0 },
- { "subsetnotequal", 0x228a, 0 },
- { "subsetorequal", 0x2286, 0 },
- { "succeeds", 0x227b, 0 },
- { "suhiragana", 0x3059, 0 },
- { "sukatakana", 0x30b9, 0 },
- { "sukatakanahalfwidth", 0xff7d, 0 },
- { "sukunarabic", 0x0652, 0 },
- { "superset", 0x2283, 0 },
- { "supersetnotequal", 0x228b, 0 },
- { "supersetorequal", 0x2287, 0 },
- { "svsquare", 0x33dc, 0 },
- { "syouwaerasquare", 0x337c, 0 },
- { "tabengali", 0x09a4, 0 },
- { "tackdown", 0x22a4, 0 },
- { "tackleft", 0x22a3, 0 },
- { "tadeva", 0x0924, 0 },
- { "tagujarati", 0x0aa4, 0 },
- { "tagurmukhi", 0x0a24, 0 },
- { "taharabic", 0x0637, 0 },
- { "tahfinalarabic", 0xfec2, 0 },
- { "tahinitialarabic", 0xfec3, 0 },
- { "tahiragana", 0x305f, 0 },
- { "tahmedialarabic", 0xfec4, 0 },
- { "taisyouerasquare", 0x337d, 0 },
- { "takatakana", 0x30bf, 0 },
- { "takatakanahalfwidth", 0xff80, 0 },
- { "tatweelarabic", 0x0640, 0 },
- { "tav", 0x05ea, 0 },
- { "tavdages", 0xfb4a, 0 },
- { "tavdagesh", 0xfb4a, 0 },
- { "tavdageshhebrew", 0xfb4a, 0 },
- { "tavhebrew", 0x05ea, 0 },
- { "tbopomofo", 0x310a, 0 },
- { "tccurl", 0x02a8, 0 },
- { "tcedilla", 0x0163, 0 },
- { "tcheharabic", 0x0686, 0 },
- { "tchehfinalarabic", 0xfb7b, 0 },
- { "tchehinitialarabic", 0xfb7c, 0 },
- { "tchehmedialarabic", 0xfb7d, 0 },
- { "tchehmeeminitialarabic", 0xfb7c, 0 },
- { "tcircle", 0x24e3, 0 },
- { "tcircumflexbelow", 0x1e71, 0 },
- { "tdieresis", 0x1e97, 0 },
- { "tdotaccent", 0x1e6b, 0 },
- { "tdotbelow", 0x1e6d, 0 },
- { "tecyrillic", 0x0442, 0 },
- { "tedescendercyrillic", 0x04ad, 0 },
- { "teharabic", 0x062a, 0 },
- { "tehfinalarabic", 0xfe96, 0 },
- { "tehhahinitialarabic", 0xfca2, 0 },
- { "tehhahisolatedarabic", 0xfc0c, 0 },
- { "tehinitialarabic", 0xfe97, 0 },
- { "tehiragana", 0x3066, 0 },
- { "tehjeeminitialarabic", 0xfca1, 0 },
- { "tehjeemisolatedarabic", 0xfc0b, 0 },
- { "tehmarbutaarabic", 0x0629, 0 },
- { "tehmarbutafinalarabic", 0xfe94, 0 },
- { "tehmedialarabic", 0xfe98, 0 },
- { "tehmeeminitialarabic", 0xfca4, 0 },
- { "tehmeemisolatedarabic", 0xfc0e, 0 },
- { "tehnoonfinalarabic", 0xfc73, 0 },
- { "tekatakana", 0x30c6, 0 },
- { "tekatakanahalfwidth", 0xff83, 0 },
- { "telephone", 0x2121, 0 },
- { "telephoneblack", 0x260e, 0 },
- { "telishagedolahebrew", 0x05a0, 0 },
- { "telishaqetanahebrew", 0x05a9, 0 },
- { "tencircle", 0x2469, 0 },
- { "tenideographicparen", 0x3229, 0 },
- { "tenparen", 0x247d, 0 },
- { "tenperiod", 0x2491, 0 },
- { "tenroman", 0x2179, 0 },
- { "tesh", 0x02a7, 0 },
- { "tet", 0x05d8, 0 },
- { "tetdagesh", 0xfb38, 0 },
- { "tetdageshhebrew", 0xfb38, 0 },
- { "tethebrew", 0x05d8, 0 },
- { "tetsecyrillic", 0x04b5, 0 },
- { "tevirhebrew", 0x059b, 0 },
- { "tevirlefthebrew", 0x059b, 0 },
- { "thabengali", 0x09a5, 0 },
- { "thadeva", 0x0925, 0 },
- { "thagujarati", 0x0aa5, 0 },
- { "thagurmukhi", 0x0a25, 0 },
- { "thalarabic", 0x0630, 0 },
- { "thalfinalarabic", 0xfeac, 0 },
- { "thanthakhatlowleftthai", 0xf898, 0 },
- { "thanthakhatlowrightthai", 0xf897, 0 },
- { "thanthakhatthai", 0x0e4c, 0 },
- { "thanthakhatupperleftthai", 0xf896, 0 },
- { "theharabic", 0x062b, 0 },
- { "thehfinalarabic", 0xfe9a, 0 },
- { "thehinitialarabic", 0xfe9b, 0 },
- { "thehmedialarabic", 0xfe9c, 0 },
- { "thereexists", 0x2203, 0 },
- { "thetasymbolgreek", 0x03d1, 0 },
- { "thieuthacirclekorean", 0x3279, 0 },
- { "thieuthaparenkorean", 0x3219, 0 },
- { "thieuthcirclekorean", 0x326b, 0 },
- { "thieuthkorean", 0x314c, 0 },
- { "thieuthparenkorean", 0x320b, 0 },
- { "thirteencircle", 0x246c, 0 },
- { "thirteenparen", 0x2480, 0 },
- { "thirteenperiod", 0x2494, 0 },
- { "thonangmonthothai", 0x0e11, 0 },
- { "thook", 0x01ad, 0 },
- { "thophuthaothai", 0x0e12, 0 },
- { "thothahanthai", 0x0e17, 0 },
- { "thothanthai", 0x0e10, 0 },
- { "thothongthai", 0x0e18, 0 },
- { "thothungthai", 0x0e16, 0 },
- { "thousandcyrillic", 0x0482, 0 },
- { "thousandsseparatorarabic", 0x066c, 0 },
- { "thousandsseparatorpersian", 0x066c, 0 },
- { "threearabic", 0x0663, 0 },
- { "threebengali", 0x09e9, 0 },
- { "threecircle", 0x2462, 0 },
- { "threecircleinversesansserif", 0x278c, 0 },
- { "threedeva", 0x0969, 0 },
- { "threegujarati", 0x0ae9, 0 },
- { "threegurmukhi", 0x0a69, 0 },
- { "threehackarabic", 0x0663, 0 },
- { "threehangzhou", 0x3023, 0 },
- { "threeideographicparen", 0x3222, 0 },
- { "threeinferior", 0x2083, 0 },
- { "threemonospace", 0xff13, 0 },
- { "threenumeratorbengali", 0x09f6, 0 },
- { "threeoldstyle", 0xf733, 0 },
- { "threeparen", 0x2476, 0 },
- { "threeperiod", 0x248a, 0 },
- { "threepersian", 0x06f3, 0 },
- { "threequartersemdash", 0xf6de, 0 },
- { "threeroman", 0x2172, 0 },
- { "threesuperior", 0x00b3, 0 },
- { "threethai", 0x0e53, 0 },
- { "thzsquare", 0x3394, 0 },
- { "tihiragana", 0x3061, 0 },
- { "tikatakana", 0x30c1, 0 },
- { "tikatakanahalfwidth", 0xff81, 0 },
- { "tikeutacirclekorean", 0x3270, 0 },
- { "tikeutaparenkorean", 0x3210, 0 },
- { "tikeutcirclekorean", 0x3262, 0 },
- { "tikeutkorean", 0x3137, 0 },
- { "tikeutparenkorean", 0x3202, 0 },
- { "tildebelowcmb", 0x0330, 0 },
- { "tildecmb", 0x0303, 0 },
- { "tildedoublecmb", 0x0360, 0 },
- { "tildeoperator", 0x223c, 0 },
- { "tildeoverlaycmb", 0x0334, 0 },
- { "tildeverticalcmb", 0x033e, 0 },
- { "timescircle", 0x2297, 0 },
- { "tipehahebrew", 0x0596, 0 },
- { "tipehalefthebrew", 0x0596, 0 },
- { "tippigurmukhi", 0x0a70, 0 },
- { "titlocyrilliccmb", 0x0483, 0 },
- { "tiwnarmenian", 0x057f, 0 },
- { "tlinebelow", 0x1e6f, 0 },
- { "tmonospace", 0xff54, 0 },
- { "toarmenian", 0x0569, 0 },
- { "tohiragana", 0x3068, 0 },
- { "tokatakana", 0x30c8, 0 },
- { "tokatakanahalfwidth", 0xff84, 0 },
- { "tonebarextrahighmod", 0x02e5, 0 },
- { "tonebarextralowmod", 0x02e9, 0 },
- { "tonebarhighmod", 0x02e6, 0 },
- { "tonebarlowmod", 0x02e8, 0 },
- { "tonebarmidmod", 0x02e7, 0 },
- { "tonefive", 0x01bd, 0 },
- { "tonesix", 0x0185, 0 },
- { "tonetwo", 0x01a8, 0 },
- { "tonsquare", 0x3327, 0 },
- { "topatakthai", 0x0e0f, 0 },
- { "tortoiseshellbracketleft", 0x3014, 0 },
- { "tortoiseshellbracketleftsmall", 0xfe5d, 0 },
- { "tortoiseshellbracketleftvertical", 0xfe39, 0 },
- { "tortoiseshellbracketright", 0x3015, 0 },
- { "tortoiseshellbracketrightsmall", 0xfe5e, 0 },
- { "tortoiseshellbracketrightvertical", 0xfe3a, 0 },
- { "totaothai", 0x0e15, 0 },
- { "tpalatalhook", 0x01ab, 0 },
- { "tparen", 0x24af, 0 },
- { "trademarksans", 0xf8ea, 0 },
- { "trademarkserif", 0xf6db, 0 },
- { "tretroflexhook", 0x0288, 0 },
- { "ts", 0x02a6, 0 },
- { "tsadi", 0x05e6, 0 },
- { "tsadidagesh", 0xfb46, 0 },
- { "tsadidageshhebrew", 0xfb46, 0 },
- { "tsadihebrew", 0x05e6, 0 },
- { "tsecyrillic", 0x0446, 0 },
- { "tsere", 0x05b5, 0 },
- { "tsere12", 0x05b5, 0 },
- { "tsere1e", 0x05b5, 0 },
- { "tsere2b", 0x05b5, 0 },
- { "tserehebrew", 0x05b5, 0 },
- { "tserenarrowhebrew", 0x05b5, 0 },
- { "tserequarterhebrew", 0x05b5, 0 },
- { "tserewidehebrew", 0x05b5, 0 },
- { "tshecyrillic", 0x045b, 0 },
- { "tsuperior", 0xf6f3, 0 },
- { "ttabengali", 0x099f, 0 },
- { "ttadeva", 0x091f, 0 },
- { "ttagujarati", 0x0a9f, 0 },
- { "ttagurmukhi", 0x0a1f, 0 },
- { "tteharabic", 0x0679, 0 },
- { "ttehfinalarabic", 0xfb67, 0 },
- { "ttehinitialarabic", 0xfb68, 0 },
- { "ttehmedialarabic", 0xfb69, 0 },
- { "tthabengali", 0x09a0, 0 },
- { "tthadeva", 0x0920, 0 },
- { "tthagujarati", 0x0aa0, 0 },
- { "tthagurmukhi", 0x0a20, 0 },
- { "tturned", 0x0287, 0 },
- { "tuhiragana", 0x3064, 0 },
- { "tukatakana", 0x30c4, 0 },
- { "tukatakanahalfwidth", 0xff82, 0 },
- { "tusmallhiragana", 0x3063, 0 },
- { "tusmallkatakana", 0x30c3, 0 },
- { "tusmallkatakanahalfwidth", 0xff6f, 0 },
- { "twelvecircle", 0x246b, 0 },
- { "twelveparen", 0x247f, 0 },
- { "twelveperiod", 0x2493, 0 },
- { "twelveroman", 0x217b, 0 },
- { "twentycircle", 0x2473, 0 },
- { "twentyhangzhou", 0x5344, 0 },
- { "twentyparen", 0x2487, 0 },
- { "twentyperiod", 0x249b, 0 },
- { "twoarabic", 0x0662, 0 },
- { "twobengali", 0x09e8, 0 },
- { "twocircle", 0x2461, 0 },
- { "twocircleinversesansserif", 0x278b, 0 },
- { "twodeva", 0x0968, 0 },
- { "twodotleader", 0x2025, 0 },
- { "twodotleadervertical", 0xfe30, 0 },
- { "twogujarati", 0x0ae8, 0 },
- { "twogurmukhi", 0x0a68, 0 },
- { "twohackarabic", 0x0662, 0 },
- { "twohangzhou", 0x3022, 0 },
- { "twoideographicparen", 0x3221, 0 },
- { "twoinferior", 0x2082, 0 },
- { "twomonospace", 0xff12, 0 },
- { "twonumeratorbengali", 0x09f5, 0 },
- { "twooldstyle", 0xf732, 0 },
- { "twoparen", 0x2475, 0 },
- { "twoperiod", 0x2489, 0 },
- { "twopersian", 0x06f2, 0 },
- { "tworoman", 0x2171, 0 },
- { "twostroke", 0x01bb, 0 },
- { "twosuperior", 0x00b2, 0 },
- { "twothai", 0x0e52, 0 },
- { "ubar", 0x0289, 0 },
- { "ubengali", 0x0989, 0 },
- { "ubopomofo", 0x3128, 0 },
- { "ucaron", 0x01d4, 0 },
- { "ucircle", 0x24e4, 0 },
- { "ucircumflexbelow", 0x1e77, 0 },
- { "ucyrillic", 0x0443, 0 },
- { "udattadeva", 0x0951, 0 },
- { "udblacute", 0x0171, 0 },
- { "udblgrave", 0x0215, 0 },
- { "udeva", 0x0909, 0 },
- { "udieresisacute", 0x01d8, 0 },
- { "udieresisbelow", 0x1e73, 0 },
- { "udieresiscaron", 0x01da, 0 },
- { "udieresiscyrillic", 0x04f1, 0 },
- { "udieresisgrave", 0x01dc, 0 },
- { "udieresismacron", 0x01d6, 0 },
- { "udotbelow", 0x1ee5, 0 },
- { "ugujarati", 0x0a89, 0 },
- { "ugurmukhi", 0x0a09, 0 },
- { "uhiragana", 0x3046, 0 },
- { "uhookabove", 0x1ee7, 0 },
- { "uhornacute", 0x1ee9, 0 },
- { "uhorndotbelow", 0x1ef1, 0 },
- { "uhorngrave", 0x1eeb, 0 },
- { "uhornhookabove", 0x1eed, 0 },
- { "uhorntilde", 0x1eef, 0 },
- { "uhungarumlautcyrillic", 0x04f3, 0 },
- { "uinvertedbreve", 0x0217, 0 },
- { "ukatakana", 0x30a6, 0 },
- { "ukatakanahalfwidth", 0xff73, 0 },
- { "ukcyrillic", 0x0479, 0 },
- { "ukorean", 0x315c, 0 },
- { "umacroncyrillic", 0x04ef, 0 },
- { "umacrondieresis", 0x1e7b, 0 },
- { "umatragurmukhi", 0x0a41, 0 },
- { "umonospace", 0xff55, 0 },
- { "underscoremonospace", 0xff3f, 0 },
- { "underscorevertical", 0xfe33, 0 },
- { "underscorewavy", 0xfe4f, 0 },
- { "uparen", 0x24b0, 0 },
- { "upperdothebrew", 0x05c4, 0 },
- { "upsilonlatin", 0x028a, 0 },
- { "uptackbelowcmb", 0x031d, 0 },
- { "uptackmod", 0x02d4, 0 },
- { "uragurmukhi", 0x0a73, 0 },
- { "ushortcyrillic", 0x045e, 0 },
- { "usmallhiragana", 0x3045, 0 },
- { "usmallkatakana", 0x30a5, 0 },
- { "usmallkatakanahalfwidth", 0xff69, 0 },
- { "ustraightcyrillic", 0x04af, 0 },
- { "ustraightstrokecyrillic", 0x04b1, 0 },
- { "utildeacute", 0x1e79, 0 },
- { "utildebelow", 0x1e75, 0 },
- { "uubengali", 0x098a, 0 },
- { "uudeva", 0x090a, 0 },
- { "uugujarati", 0x0a8a, 0 },
- { "uugurmukhi", 0x0a0a, 0 },
- { "uumatragurmukhi", 0x0a42, 0 },
- { "uuvowelsignbengali", 0x09c2, 0 },
- { "uuvowelsigndeva", 0x0942, 0 },
- { "uuvowelsigngujarati", 0x0ac2, 0 },
- { "uvowelsignbengali", 0x09c1, 0 },
- { "uvowelsigndeva", 0x0941, 0 },
- { "uvowelsigngujarati", 0x0ac1, 0 },
- { "vadeva", 0x0935, 0 },
- { "vagujarati", 0x0ab5, 0 },
- { "vagurmukhi", 0x0a35, 0 },
- { "vakatakana", 0x30f7, 0 },
- { "vav", 0x05d5, 0 },
- { "vavdagesh", 0xfb35, 0 },
- { "vavdagesh65", 0xfb35, 0 },
- { "vavdageshhebrew", 0xfb35, 0 },
- { "vavhebrew", 0x05d5, 0 },
- { "vavholam", 0xfb4b, 0 },
- { "vavholamhebrew", 0xfb4b, 0 },
- { "vavvavhebrew", 0x05f0, 0 },
- { "vavyodhebrew", 0x05f1, 0 },
- { "vcircle", 0x24e5, 0 },
- { "vdotbelow", 0x1e7f, 0 },
- { "vecyrillic", 0x0432, 0 },
- { "veharabic", 0x06a4, 0 },
- { "vehfinalarabic", 0xfb6b, 0 },
- { "vehinitialarabic", 0xfb6c, 0 },
- { "vehmedialarabic", 0xfb6d, 0 },
- { "vekatakana", 0x30f9, 0 },
- { "venus", 0x2640, 0 },
- { "verticalbar", 0x007c, 0 },
- { "verticallineabovecmb", 0x030d, 0 },
- { "verticallinebelowcmb", 0x0329, 0 },
- { "verticallinelowmod", 0x02cc, 0 },
- { "verticallinemod", 0x02c8, 0 },
- { "vewarmenian", 0x057e, 0 },
- { "vhook", 0x028b, 0 },
- { "vikatakana", 0x30f8, 0 },
- { "viramabengali", 0x09cd, 0 },
- { "viramadeva", 0x094d, 0 },
- { "viramagujarati", 0x0acd, 0 },
- { "visargabengali", 0x0983, 0 },
- { "visargadeva", 0x0903, 0 },
- { "visargagujarati", 0x0a83, 0 },
- { "vmonospace", 0xff56, 0 },
- { "voarmenian", 0x0578, 0 },
- { "voicediterationhiragana", 0x309e, 0 },
- { "voicediterationkatakana", 0x30fe, 0 },
- { "voicedmarkkana", 0x309b, 0 },
- { "voicedmarkkanahalfwidth", 0xff9e, 0 },
- { "vokatakana", 0x30fa, 0 },
- { "vparen", 0x24b1, 0 },
- { "vtilde", 0x1e7d, 0 },
- { "vturned", 0x028c, 0 },
- { "vuhiragana", 0x3094, 0 },
- { "vukatakana", 0x30f4, 0 },
- { "waekorean", 0x3159, 0 },
- { "wahiragana", 0x308f, 0 },
- { "wakatakana", 0x30ef, 0 },
- { "wakatakanahalfwidth", 0xff9c, 0 },
- { "wakorean", 0x3158, 0 },
- { "wasmallhiragana", 0x308e, 0 },
- { "wasmallkatakana", 0x30ee, 0 },
- { "wattosquare", 0x3357, 0 },
- { "wavedash", 0x301c, 0 },
- { "wavyunderscorevertical", 0xfe34, 0 },
- { "wawarabic", 0x0648, 0 },
- { "wawfinalarabic", 0xfeee, 0 },
- { "wawhamzaabovearabic", 0x0624, 0 },
- { "wawhamzaabovefinalarabic", 0xfe86, 0 },
- { "wbsquare", 0x33dd, 0 },
- { "wcircle", 0x24e6, 0 },
- { "wdotaccent", 0x1e87, 0 },
- { "wdotbelow", 0x1e89, 0 },
- { "wehiragana", 0x3091, 0 },
- { "wekatakana", 0x30f1, 0 },
- { "wekorean", 0x315e, 0 },
- { "weokorean", 0x315d, 0 },
- { "whitebullet", 0x25e6, 0 },
- { "whitecircle", 0x25cb, 0 },
- { "whitecircleinverse", 0x25d9, 0 },
- { "whitecornerbracketleft", 0x300e, 0 },
- { "whitecornerbracketleftvertical", 0xfe43, 0 },
- { "whitecornerbracketright", 0x300f, 0 },
- { "whitecornerbracketrightvertical", 0xfe44, 0 },
- { "whitediamond", 0x25c7, 0 },
- { "whitediamondcontainingblacksmalldiamond", 0x25c8, 0 },
- { "whitedownpointingsmalltriangle", 0x25bf, 0 },
- { "whitedownpointingtriangle", 0x25bd, 0 },
- { "whiteleftpointingsmalltriangle", 0x25c3, 0 },
- { "whiteleftpointingtriangle", 0x25c1, 0 },
- { "whitelenticularbracketleft", 0x3016, 0 },
- { "whitelenticularbracketright", 0x3017, 0 },
- { "whiterightpointingsmalltriangle", 0x25b9, 0 },
- { "whiterightpointingtriangle", 0x25b7, 0 },
- { "whitesmallsquare", 0x25ab, 0 },
- { "whitesmilingface", 0x263a, 0 },
- { "whitesquare", 0x25a1, 0 },
- { "whitestar", 0x2606, 0 },
- { "whitetelephone", 0x260f, 0 },
- { "whitetortoiseshellbracketleft", 0x3018, 0 },
- { "whitetortoiseshellbracketright", 0x3019, 0 },
- { "whiteuppointingsmalltriangle", 0x25b5, 0 },
- { "whiteuppointingtriangle", 0x25b3, 0 },
- { "wihiragana", 0x3090, 0 },
- { "wikatakana", 0x30f0, 0 },
- { "wikorean", 0x315f, 0 },
- { "wmonospace", 0xff57, 0 },
- { "wohiragana", 0x3092, 0 },
- { "wokatakana", 0x30f2, 0 },
- { "wokatakanahalfwidth", 0xff66, 0 },
- { "won", 0x20a9, 0 },
- { "wonmonospace", 0xffe6, 0 },
- { "wowaenthai", 0x0e27, 0 },
- { "wparen", 0x24b2, 0 },
- { "wring", 0x1e98, 0 },
- { "wsuperior", 0x02b7, 0 },
- { "wturned", 0x028d, 0 },
- { "wynn", 0x01bf, 0 },
- { "xabovecmb", 0x033d, 0 },
- { "xbopomofo", 0x3112, 0 },
- { "xcircle", 0x24e7, 0 },
- { "xdieresis", 0x1e8d, 0 },
- { "xdotaccent", 0x1e8b, 0 },
- { "xeharmenian", 0x056d, 0 },
- { "xmonospace", 0xff58, 0 },
- { "xparen", 0x24b3, 0 },
- { "xsuperior", 0x02e3, 0 },
- { "yaadosquare", 0x334e, 0 },
- { "yabengali", 0x09af, 0 },
- { "yadeva", 0x092f, 0 },
- { "yaekorean", 0x3152, 0 },
- { "yagujarati", 0x0aaf, 0 },
- { "yagurmukhi", 0x0a2f, 0 },
- { "yahiragana", 0x3084, 0 },
- { "yakatakana", 0x30e4, 0 },
- { "yakatakanahalfwidth", 0xff94, 0 },
- { "yakorean", 0x3151, 0 },
- { "yamakkanthai", 0x0e4e, 0 },
- { "yasmallhiragana", 0x3083, 0 },
- { "yasmallkatakana", 0x30e3, 0 },
- { "yasmallkatakanahalfwidth", 0xff6c, 0 },
- { "yatcyrillic", 0x0463, 0 },
- { "ycircle", 0x24e8, 0 },
- { "ydotaccent", 0x1e8f, 0 },
- { "ydotbelow", 0x1ef5, 0 },
- { "yeharabic", 0x064a, 0 },
- { "yehbarreearabic", 0x06d2, 0 },
- { "yehbarreefinalarabic", 0xfbaf, 0 },
- { "yehfinalarabic", 0xfef2, 0 },
- { "yehhamzaabovearabic", 0x0626, 0 },
- { "yehhamzaabovefinalarabic", 0xfe8a, 0 },
- { "yehhamzaaboveinitialarabic", 0xfe8b, 0 },
- { "yehhamzaabovemedialarabic", 0xfe8c, 0 },
- { "yehinitialarabic", 0xfef3, 0 },
- { "yehmedialarabic", 0xfef4, 0 },
- { "yehmeeminitialarabic", 0xfcdd, 0 },
- { "yehmeemisolatedarabic", 0xfc58, 0 },
- { "yehnoonfinalarabic", 0xfc94, 0 },
- { "yehthreedotsbelowarabic", 0x06d1, 0 },
- { "yekorean", 0x3156, 0 },
- { "yenmonospace", 0xffe5, 0 },
- { "yeokorean", 0x3155, 0 },
- { "yeorinhieuhkorean", 0x3186, 0 },
- { "yerahbenyomohebrew", 0x05aa, 0 },
- { "yerahbenyomolefthebrew", 0x05aa, 0 },
- { "yericyrillic", 0x044b, 0 },
- { "yerudieresiscyrillic", 0x04f9, 0 },
- { "yesieungkorean", 0x3181, 0 },
- { "yesieungpansioskorean", 0x3183, 0 },
- { "yesieungsioskorean", 0x3182, 0 },
- { "yetivhebrew", 0x059a, 0 },
- { "yhook", 0x01b4, 0 },
- { "yhookabove", 0x1ef7, 0 },
- { "yiarmenian", 0x0575, 0 },
- { "yicyrillic", 0x0457, 0 },
- { "yikorean", 0x3162, 0 },
- { "yinyang", 0x262f, 0 },
- { "yiwnarmenian", 0x0582, 0 },
- { "ymonospace", 0xff59, 0 },
- { "yod", 0x05d9, 0 },
- { "yoddagesh", 0xfb39, 0 },
- { "yoddageshhebrew", 0xfb39, 0 },
- { "yodhebrew", 0x05d9, 0 },
- { "yodyodhebrew", 0x05f2, 0 },
- { "yodyodpatahhebrew", 0xfb1f, 0 },
- { "yohiragana", 0x3088, 0 },
- { "yoikorean", 0x3189, 0 },
- { "yokatakana", 0x30e8, 0 },
- { "yokatakanahalfwidth", 0xff96, 0 },
- { "yokorean", 0x315b, 0 },
- { "yosmallhiragana", 0x3087, 0 },
- { "yosmallkatakana", 0x30e7, 0 },
- { "yosmallkatakanahalfwidth", 0xff6e, 0 },
- { "yotgreek", 0x03f3, 0 },
- { "yoyaekorean", 0x3188, 0 },
- { "yoyakorean", 0x3187, 0 },
- { "yoyakthai", 0x0e22, 0 },
- { "yoyingthai", 0x0e0d, 0 },
- { "yparen", 0x24b4, 0 },
- { "ypogegrammeni", 0x037a, 0 },
- { "ypogegrammenigreekcmb", 0x0345, 0 },
- { "yr", 0x01a6, 0 },
- { "yring", 0x1e99, 0 },
- { "ysuperior", 0x02b8, 0 },
- { "ytilde", 0x1ef9, 0 },
- { "yturned", 0x028e, 0 },
- { "yuhiragana", 0x3086, 0 },
- { "yuikorean", 0x318c, 0 },
- { "yukatakana", 0x30e6, 0 },
- { "yukatakanahalfwidth", 0xff95, 0 },
- { "yukorean", 0x3160, 0 },
- { "yusbigcyrillic", 0x046b, 0 },
- { "yusbigiotifiedcyrillic", 0x046d, 0 },
- { "yuslittlecyrillic", 0x0467, 0 },
- { "yuslittleiotifiedcyrillic", 0x0469, 0 },
- { "yusmallhiragana", 0x3085, 0 },
- { "yusmallkatakana", 0x30e5, 0 },
- { "yusmallkatakanahalfwidth", 0xff6d, 0 },
- { "yuyekorean", 0x318b, 0 },
- { "yuyeokorean", 0x318a, 0 },
- { "yyabengali", 0x09df, 0 },
- { "yyadeva", 0x095f, 0 },
- { "zaarmenian", 0x0566, 0 },
- { "zadeva", 0x095b, 0 },
- { "zagurmukhi", 0x0a5b, 0 },
- { "zaharabic", 0x0638, 0 },
- { "zahfinalarabic", 0xfec6, 0 },
- { "zahinitialarabic", 0xfec7, 0 },
- { "zahiragana", 0x3056, 0 },
- { "zahmedialarabic", 0xfec8, 0 },
- { "zainarabic", 0x0632, 0 },
- { "zainfinalarabic", 0xfeb0, 0 },
- { "zakatakana", 0x30b6, 0 },
- { "zaqefgadolhebrew", 0x0595, 0 },
- { "zaqefqatanhebrew", 0x0594, 0 },
- { "zarqahebrew", 0x0598, 0 },
- { "zayin", 0x05d6, 0 },
- { "zayindagesh", 0xfb36, 0 },
- { "zayindageshhebrew", 0xfb36, 0 },
- { "zayinhebrew", 0x05d6, 0 },
- { "zbopomofo", 0x3117, 0 },
- { "zcircle", 0x24e9, 0 },
- { "zcircumflex", 0x1e91, 0 },
- { "zcurl", 0x0291, 0 },
- { "zdot", 0x017c, 0 },
- { "zdotbelow", 0x1e93, 0 },
- { "zecyrillic", 0x0437, 0 },
- { "zedescendercyrillic", 0x0499, 0 },
- { "zedieresiscyrillic", 0x04df, 0 },
- { "zehiragana", 0x305c, 0 },
- { "zekatakana", 0x30bc, 0 },
- { "zeroarabic", 0x0660, 0 },
- { "zerobengali", 0x09e6, 0 },
- { "zerodeva", 0x0966, 0 },
- { "zerogujarati", 0x0ae6, 0 },
- { "zerogurmukhi", 0x0a66, 0 },
- { "zerohackarabic", 0x0660, 0 },
- { "zeroinferior", 0x2080, 0 },
- { "zeromonospace", 0xff10, 0 },
- { "zerooldstyle", 0xf730, 0 },
- { "zeropersian", 0x06f0, 0 },
- { "zerosuperior", 0x2070, 0 },
- { "zerothai", 0x0e50, 0 },
- { "zerowidthjoiner", 0xfeff, 0 },
- { "zerowidthnonjoiner", 0x200c, 0 },
- { "zerowidthspace", 0x200b, 0 },
- { "zhbopomofo", 0x3113, 0 },
- { "zhearmenian", 0x056a, 0 },
- { "zhebrevecyrillic", 0x04c2, 0 },
- { "zhecyrillic", 0x0436, 0 },
- { "zhedescendercyrillic", 0x0497, 0 },
- { "zhedieresiscyrillic", 0x04dd, 0 },
- { "zihiragana", 0x3058, 0 },
- { "zikatakana", 0x30b8, 0 },
- { "zinorhebrew", 0x05ae, 0 },
- { "zlinebelow", 0x1e95, 0 },
- { "zmonospace", 0xff5a, 0 },
- { "zohiragana", 0x305e, 0 },
- { "zokatakana", 0x30be, 0 },
- { "zparen", 0x24b5, 0 },
- { "zretroflexhook", 0x0290, 0 },
- { "zstroke", 0x01b6, 0 },
- { "zuhiragana", 0x305a, 0 },
- { "zukatakana", 0x30ba, 0 },
- { "dotaccent.cap", 0xefed, 0 },
- { "breve.cap", 0xefee, 0 },
- { "ogonek.cap", 0xeff1, 0 },
- { "cedilla.cap", 0xeff2, 0 },
- { "ring.cap", 0xeff3, 0 },
- { "tilde.cap", 0xeff5, 0 },
- { "circumflex.cap", 0xeff7, 0 },
- { "a1", 0x2701, 0 },
- { "a2", 0x2702, 0 },
- { "a202", 0x2703, 0 },
- { "a3", 0x2704, 0 },
- { "a4", 0x260e, 0 },
- { "a5", 0x2706, 0 },
- { "a119", 0x2707, 0 },
- { "a118", 0x2708, 0 },
- { "a117", 0x2709, 0 },
- { "a11", 0x261b, 0 },
- { "a12", 0x261e, 0 },
- { "a13", 0x270c, 0 },
- { "a14", 0x270d, 0 },
- { "a15", 0x270e, 0 },
- { "a16", 0x270f, 0 },
- { "a105", 0x2710, 0 },
- { "a17", 0x2711, 0 },
- { "a18", 0x2712, 0 },
- { "a19", 0x2713, 0 },
- { "a20", 0x2714, 0 },
- { "a21", 0x2715, 0 },
- { "a22", 0x2716, 0 },
- { "a23", 0x2717, 0 },
- { "a24", 0x2718, 0 },
- { "a25", 0x2719, 0 },
- { "a26", 0x271a, 0 },
- { "a27", 0x271b, 0 },
- { "a28", 0x271c, 0 },
- { "a6", 0x271d, 0 },
- { "a7", 0x271e, 0 },
- { "a8", 0x271f, 0 },
- { "a9", 0x2720, 0 },
- { "a10", 0x2721, 0 },
- { "a29", 0x2722, 0 },
- { "a30", 0x2723, 0 },
- { "a31", 0x2724, 0 },
- { "a32", 0x2725, 0 },
- { "a33", 0x2726, 0 },
- { "a34", 0x2727, 0 },
- { "a35", 0x2605, 0 },
- { "a36", 0x2729, 0 },
- { "a37", 0x272a, 0 },
- { "a38", 0x272b, 0 },
- { "a39", 0x272c, 0 },
- { "a40", 0x272d, 0 },
- { "a41", 0x272e, 0 },
- { "a42", 0x272f, 0 },
- { "a43", 0x2730, 0 },
- { "a44", 0x2731, 0 },
- { "a45", 0x2732, 0 },
- { "a46", 0x2733, 0 },
- { "a47", 0x2734, 0 },
- { "a48", 0x2735, 0 },
- { "a49", 0x2736, 0 },
- { "a50", 0x2737, 0 },
- { "a51", 0x2738, 0 },
- { "a52", 0x2739, 0 },
- { "a53", 0x273a, 0 },
- { "a54", 0x273b, 0 },
- { "a55", 0x273c, 0 },
- { "a56", 0x273d, 0 },
- { "a57", 0x273e, 0 },
- { "a58", 0x273f, 0 },
- { "a59", 0x2740, 0 },
- { "a60", 0x2741, 0 },
- { "a61", 0x2742, 0 },
- { "a62", 0x2743, 0 },
- { "a63", 0x2744, 0 },
- { "a64", 0x2745, 0 },
- { "a65", 0x2746, 0 },
- { "a66", 0x2747, 0 },
- { "a67", 0x2748, 0 },
- { "a68", 0x2749, 0 },
- { "a69", 0x274a, 0 },
- { "a70", 0x274b, 0 },
- { "a71", 0x25cf, 0 },
- { "a72", 0x274d, 0 },
- { "a73", 0x25a0, 0 },
- { "a74", 0x274f, 0 },
- { "a203", 0x2750, 0 },
- { "a75", 0x2751, 0 },
- { "a204", 0x2752, 0 },
- { "a76", 0x25b2, 0 },
- { "a77", 0x25bc, 0 },
- { "a78", 0x25c6, 0 },
- { "a79", 0x2756, 0 },
- { "a81", 0x25d7, 0 },
- { "a82", 0x2758, 0 },
- { "a83", 0x2759, 0 },
- { "a84", 0x275a, 0 },
- { "a97", 0x275b, 0 },
- { "a98", 0x275c, 0 },
- { "a99", 0x275d, 0 },
- { "a100", 0x275e, 0 },
- { "a89", 0x2768, 0 },
- { "a90", 0x2769, 0 },
- { "a93", 0x276a, 0 },
- { "a94", 0x276b, 0 },
- { "a91", 0x276c, 0 },
- { "a92", 0x276d, 0 },
- { "a205", 0x276e, 0 },
- { "a85", 0x276f, 0 },
- { "a206", 0x2770, 0 },
- { "a86", 0x2771, 0 },
- { "a87", 0x2772, 0 },
- { "a88", 0x2773, 0 },
- { "a95", 0x2774, 0 },
- { "a96", 0x2775, 0 },
- { "a101", 0x2761, 0 },
- { "a102", 0x2762, 0 },
- { "a103", 0x2763, 0 },
- { "a104", 0x2764, 0 },
- { "a106", 0x2765, 0 },
- { "a107", 0x2766, 0 },
- { "a108", 0x2767, 0 },
- { "a112", 0x2663, 0 },
- { "a111", 0x2666, 0 },
- { "a110", 0x2665, 0 },
- { "a109", 0x2660, 0 },
- { "a120", 0x2460, 0 },
- { "a121", 0x2461, 0 },
- { "a122", 0x2462, 0 },
- { "a123", 0x2463, 0 },
- { "a124", 0x2464, 0 },
- { "a125", 0x2465, 0 },
- { "a126", 0x2466, 0 },
- { "a127", 0x2467, 0 },
- { "a128", 0x2468, 0 },
- { "a129", 0x2469, 0 },
- { "a130", 0x2776, 0 },
- { "a131", 0x2777, 0 },
- { "a132", 0x2778, 0 },
- { "a133", 0x2779, 0 },
- { "a134", 0x277a, 0 },
- { "a135", 0x277b, 0 },
- { "a136", 0x277c, 0 },
- { "a137", 0x277d, 0 },
- { "a138", 0x277e, 0 },
- { "a139", 0x277f, 0 },
- { "a140", 0x2780, 0 },
- { "a141", 0x2781, 0 },
- { "a142", 0x2782, 0 },
- { "a143", 0x2783, 0 },
- { "a144", 0x2784, 0 },
- { "a145", 0x2785, 0 },
- { "a146", 0x2786, 0 },
- { "a147", 0x2787, 0 },
- { "a148", 0x2788, 0 },
- { "a149", 0x2789, 0 },
- { "a150", 0x278a, 0 },
- { "a151", 0x278b, 0 },
- { "a152", 0x278c, 0 },
- { "a153", 0x278d, 0 },
- { "a154", 0x278e, 0 },
- { "a155", 0x278f, 0 },
- { "a156", 0x2790, 0 },
- { "a157", 0x2791, 0 },
- { "a158", 0x2792, 0 },
- { "a159", 0x2793, 0 },
- { "a160", 0x2794, 0 },
- { "a161", 0x2192, 0 },
- { "a163", 0x2194, 0 },
- { "a164", 0x2195, 0 },
- { "a196", 0x2798, 0 },
- { "a165", 0x2799, 0 },
- { "a192", 0x279a, 0 },
- { "a166", 0x279b, 0 },
- { "a167", 0x279c, 0 },
- { "a168", 0x279d, 0 },
- { "a169", 0x279e, 0 },
- { "a170", 0x279f, 0 },
- { "a171", 0x27a0, 0 },
- { "a172", 0x27a1, 0 },
- { "a173", 0x27a2, 0 },
- { "a162", 0x27a3, 0 },
- { "a174", 0x27a4, 0 },
- { "a175", 0x27a5, 0 },
- { "a176", 0x27a6, 0 },
- { "a177", 0x27a7, 0 },
- { "a178", 0x27a8, 0 },
- { "a179", 0x27a9, 0 },
- { "a193", 0x27aa, 0 },
- { "a180", 0x27ab, 0 },
- { "a199", 0x27ac, 0 },
- { "a181", 0x27ad, 0 },
- { "a200", 0x27ae, 0 },
- { "a182", 0x27af, 0 },
- { "a201", 0x27b1, 0 },
- { "a183", 0x27b2, 0 },
- { "a184", 0x27b3, 0 },
- { "a197", 0x27b4, 0 },
- { "a185", 0x27b5, 0 },
- { "a194", 0x27b6, 0 },
- { "a198", 0x27b7, 0 },
- { "a186", 0x27b8, 0 },
- { "a195", 0x27b9, 0 },
- { "a187", 0x27ba, 0 },
- { "a188", 0x27bb, 0 },
- { "a189", 0x27bc, 0 },
- { "a190", 0x27bd, 0 },
- { "a191", 0x27be, 0 },
- { "register.sans", 0xf8e8, 0 },
- { "register.serif", 0xf6da, 0 },
- { "one.superior", 0x00b9, 0 },
- { "two.superior", 0x00b2, 0 },
- { "three.superior", 0x00b3, 0 },
- { "parenleft.superior", 0x207d, 0 },
- { "parenright.superior", 0x207e, 0 },
- { "n.superior", 0x207f, 0 },
- { "parenleft.inferior", 0x208d, 0 },
- { "parenright.inferior", 0x208e, 0 },
- { "zero.superior", 0x2070, 0 },
- { "four.superior", 0x2074, 0 },
- { "five.superior", 0x2075, 0 },
- { "six.superior", 0x2076, 0 },
- { "seven.superior", 0x2077, 0 },
- { "eight.superior", 0x2078, 0 },
- { "nine.superior", 0x2079, 0 },
- { "zero.inferior", 0x2080, 0 },
- { "one.inferior", 0x2081, 0 },
- { "two.inferior", 0x2082, 0 },
- { "three.inferior", 0x2083, 0 },
- { "four.inferior", 0x2084, 0 },
- { "five.inferior", 0x2085, 0 },
- { "six.inferior", 0x2086, 0 },
- { "seven.inferior", 0x2087, 0 },
- { "eight.inferior", 0x2088, 0 },
- { "nine.inferior", 0x2089, 0 },
- { "mu.greek", 0x03bc, 0 },
- { "Delta.greek", 0x0394, 0 },
- { "Omega.greek", 0x03a9, 0 },
- { "sigma.end", 0x03c2, 0 },
- { "beta.alt", 0x03d0, 0 },
- { "kappa.alt", 0x03f0, 0 },
- { "theta.alt", 0x03d1, 0 },
- { "Upsilon.alt", 0x03d2, 0 },
- { "phi.alt", 0x03d5, 0 },
- { "pi.alt", 0x03d6, 0 },
- { "A.cyr", 0x0410, 0 },
- { "Ghe.up", 0x0490, 0 },
- { "I.cyr", 0x0418, 0 },
- { "I.short", 0x0419, 0 },
- { "O.cyr", 0x041e, 0 },
- { "U.cyr", 0x0423, 0 },
- { "E.cyr", 0x042d, 0 },
- { "Ie.ukran", 0x0404, 0 },
- { "I.ukran", 0x0406, 0 },
- { "U.short", 0x040e, 0 },
- { "a.cyr", 0x0430, 0 },
- { "ghe.up", 0x0491, 0 },
- { "i.cyr", 0x0438, 0 },
- { "i.short", 0x0439, 0 },
- { "o.cyr", 0x043e, 0 },
- { "u.cyr", 0x0443, 0 },
- { "e.cyr", 0x044d, 0 },
- { "ie.ukran", 0x0454, 0 },
- { "i.ukran", 0x0456, 0 },
- { "u.short", 0x045e, 0 },
- { "ghe.ital", 0xf6c4, 0 },
- { "afii10068.ital", 0xf6c4, 0 },
- { "afii10066.ital", 0xf6c5, 0 },
- { "be.alt", 0xf6c5, 0 },
- { "afii10069.ital", 0xf6c6, 0 },
- { "de.ital", 0xf6c6, 0 },
- { "afii10081.ital", 0xf6c7, 0 },
- { "pe.ital", 0xf6c7, 0 },
- { "afii10084.ital", 0xf6c8, 0 },
- { "te.ital", 0xf6c8, 0 },
- { "Omega.math", 0x2126, 0 },
- { "Delta.math", 0x2206, 0 },
- { "afii57689_afii57804", 0xfb2a, 0 },
- { "afii57689_afii57803", 0xfb2b, 0 },
- { "afii57669_afii57806", 0xfb4b, 0 },
- { "afii57718_afii57798", 0xfb1f, 0 },
- { "afii57669_afii57807", 0xfb35, 0 },
- { ".null", 0x0000, 0 },
- { "dialytika_perispomeni", 0x1fc1, 0 },
- { "psili_varia", 0x1fcd, 0 },
- { "psili_oxia", 0x1fce, 0 },
- { "psili_perispomeni", 0x1fcf, 0 },
- { "dasia_varia", 0x1fdd, 0 },
- { "dasia_oxia", 0x1fde, 0 },
- { "dasia_perispomeni", 0x1fdf, 0 },
- { "dialytika_varia", 0x1fed, 0 },
- { "dialytika_oxia", 0x1fee, 0 },
- { "Alphaacute", 0x1fbb, 0 },
- { "Alphaasper", 0x1f09, 0 },
- { "Alphaasperacute", 0x1f0d, 0 },
- { "Alphaaspergrave", 0x1f0b, 0 },
- { "Alphaaspertilde", 0x1f0f, 0 },
- { "Alphabreve", 0x1fb8, 0 },
- { "Alphagrave", 0x1fba, 0 },
- { "Alphaiotasub", 0x1fbc, 0 },
- { "Alphaiotasubasper", 0x1f89, 0 },
- { "Alphaiotasubasperacute", 0x1f8d, 0 },
- { "Alphaiotasubaspergrave", 0x1f8b, 0 },
- { "Alphaiotasubaspertilde", 0x1f8f, 0 },
- { "Alphaiotasublenis", 0x1f88, 0 },
- { "Alphaiotasublenisacute", 0x1f8c, 0 },
- { "Alphaiotasublenisgrave", 0x1f8a, 0 },
- { "Alphaiotasublenistilde", 0x1f8e, 0 },
- { "Alphalenis", 0x1f08, 0 },
- { "Alphalenisacute", 0x1f0c, 0 },
- { "Alphalenisgrave", 0x1f0a, 0 },
- { "Alphalenistilde", 0x1f0e, 0 },
- { "Alphamacron", 0x1fb9, 0 },
- { "Epsilonacute", 0x1fc9, 0 },
- { "Epsilonasper", 0x1f19, 0 },
- { "Epsilonasperacute", 0x1f1d, 0 },
- { "Epsilonaspergrave", 0x1f1b, 0 },
- { "Epsilongrave", 0x1fc8, 0 },
- { "Epsilonlenis", 0x1f18, 0 },
- { "Epsilonlenisacute", 0x1f1c, 0 },
- { "Epsilonlenisgrave", 0x1f1a, 0 },
- { "Etaacute", 0x1fcb, 0 },
- { "Etaasper", 0x1f29, 0 },
- { "Etaasperacute", 0x1f2d, 0 },
- { "Etaaspergrave", 0x1f2b, 0 },
- { "Etaaspertilde", 0x1f2f, 0 },
- { "Etagrave", 0x1fca, 0 },
- { "Etaiotasub", 0x1fcc, 0 },
- { "Etaiotasubasper", 0x1f99, 0 },
- { "Etaiotasubasperacute", 0x1f9d, 0 },
- { "Etaiotasubaspergrave", 0x1f9b, 0 },
- { "Etaiotasubaspertilde", 0x1f9f, 0 },
- { "Etaiotasublenis", 0x1f98, 0 },
- { "Etaiotasublenisacute", 0x1f9c, 0 },
- { "Etaiotasublenisgrave", 0x1f9a, 0 },
- { "Etaiotasublenistilde", 0x1f9e, 0 },
- { "Etalenis", 0x1f28, 0 },
- { "Etalenisacute", 0x1f2c, 0 },
- { "Etalenisgrave", 0x1f2a, 0 },
- { "Etalenistilde", 0x1f2e, 0 },
- { "Iotaacute", 0x1fdb, 0 },
- { "Iotaasper", 0x1f39, 0 },
- { "Iotaasperacute", 0x1f3d, 0 },
- { "Iotaaspergrave", 0x1f3b, 0 },
- { "Iotaaspertilde", 0x1f3f, 0 },
- { "Iotabreve", 0x1fd8, 0 },
- { "Iotagrave", 0x1fda, 0 },
- { "Iotalenis", 0x1f38, 0 },
- { "Iotalenisacute", 0x1f3c, 0 },
- { "Iotalenisgrave", 0x1f3a, 0 },
- { "Iotalenistilde", 0x1f3e, 0 },
- { "Iotamacron", 0x1fd9, 0 },
- { "Omegaacute", 0x1ffb, 0 },
- { "Omegaasper", 0x1f69, 0 },
- { "Omegaasperacute", 0x1f6d, 0 },
- { "Omegaaspergrave", 0x1f6b, 0 },
- { "Omegaaspertilde", 0x1f6f, 0 },
- { "Omegagrave", 0x1ffa, 0 },
- { "Omegaiotasub", 0x1ffc, 0 },
- { "Omegaiotasubasper", 0x1fa9, 0 },
- { "Omegaiotasubasperacute", 0x1fad, 0 },
- { "Omegaiotasubaspergrave", 0x1fab, 0 },
- { "Omegaiotasubaspertilde", 0x1faf, 0 },
- { "Omegaiotasublenis", 0x1fa8, 0 },
- { "Omegaiotasublenisacute", 0x1fac, 0 },
- { "Omegaiotasublenisgrave", 0x1faa, 0 },
- { "Omegaiotasublenistilde", 0x1fae, 0 },
- { "Omegalenis", 0x1f68, 0 },
- { "Omegalenisacute", 0x1f6c, 0 },
- { "Omegalenisgrave", 0x1f6a, 0 },
- { "Omegalenistilde", 0x1f6e, 0 },
- { "Omicronacute", 0x1ff9, 0 },
- { "Omicronasper", 0x1f49, 0 },
- { "Omicronasperacute", 0x1f4d, 0 },
- { "Omicronaspergrave", 0x1f4b, 0 },
- { "Omicrongrave", 0x1ff8, 0 },
- { "Omicronlenis", 0x1f48, 0 },
- { "Omicronlenisacute", 0x1f4c, 0 },
- { "Omicronlenisgrave", 0x1f4a, 0 },
- { "Rhoasper", 0x1fec, 0 },
- { "Upsilonacute", 0x1feb, 0 },
- { "Upsilonasper", 0x1f59, 0 },
- { "Upsilonasperacute", 0x1f5d, 0 },
- { "Upsilonaspergrave", 0x1f5b, 0 },
- { "Upsilonaspertilde", 0x1f5f, 0 },
- { "Upsilonbreve", 0x1fe8, 0 },
- { "Upsilongrave", 0x1fea, 0 },
- { "Upsilonmacron", 0x1fe9, 0 },
- { "numeralsign", 0x0374, 0 },
- { "lownumeralsign", 0x0375, 0 },
- { "lowcomma", 0x037a, 0 },
- { "stigma", 0x03da, 0 },
- { "koppa", 0x03de, 0 },
- { "sampi", 0x03e0, 0 },
- { "lenis", 0x1fbd, 0 },
- { "iotasubscript", 0x1fbe, 0 },
- { "dieresistilde", 0x1fc1, 0 },
- { "lenisgrave", 0x1fcd, 0 },
- { "lenisacute", 0x1fce, 0 },
- { "lenistilde", 0x1fcf, 0 },
- { "aspergrave", 0x1fdd, 0 },
- { "asperacute", 0x1fde, 0 },
- { "aspertilde", 0x1fdf, 0 },
- { "dialytikagrave", 0x1fed, 0 },
- { "dialytikaacute", 0x1fee, 0 },
- { "asper", 0x1ffe, 0 },
- { "alphalenis", 0x1f00, 0 },
- { "alphaasper", 0x1f01, 0 },
- { "alphalenisgrave", 0x1f02, 0 },
- { "alphaaspergrave", 0x1f03, 0 },
- { "alphalenisacute", 0x1f04, 0 },
- { "alphaasperacute", 0x1f05, 0 },
- { "alphalenistilde", 0x1f06, 0 },
- { "alphaaspertilde", 0x1f07, 0 },
- { "epsilonlenis", 0x1f10, 0 },
- { "epsilonasper", 0x1f11, 0 },
- { "epsilonlenisgrave", 0x1f12, 0 },
- { "epsilonaspergrave", 0x1f13, 0 },
- { "epsilonlenisacute", 0x1f14, 0 },
- { "epsilonasperacute", 0x1f15, 0 },
- { "etalenis", 0x1f20, 0 },
- { "etaasper", 0x1f21, 0 },
- { "etalenisgrave", 0x1f22, 0 },
- { "etaaspergrave", 0x1f23, 0 },
- { "etalenisacute", 0x1f24, 0 },
- { "etaasperacute", 0x1f25, 0 },
- { "etalenistilde", 0x1f26, 0 },
- { "etaaspertilde", 0x1f27, 0 },
- { "iotalenis", 0x1f30, 0 },
- { "iotaasper", 0x1f31, 0 },
- { "iotalenisgrave", 0x1f32, 0 },
- { "iotaaspergrave", 0x1f33, 0 },
- { "iotalenisacute", 0x1f34, 0 },
- { "iotaasperacute", 0x1f35, 0 },
- { "iotalenistilde", 0x1f36, 0 },
- { "iotaaspertilde", 0x1f37, 0 },
- { "omicronlenis", 0x1f40, 0 },
- { "omicronasper", 0x1f41, 0 },
- { "omicronlenisgrave", 0x1f42, 0 },
- { "omicronaspergrave", 0x1f43, 0 },
- { "omicronlenisacute", 0x1f44, 0 },
- { "omicronasperacute", 0x1f45, 0 },
- { "upsilonlenis", 0x1f50, 0 },
- { "upsilonasper", 0x1f51, 0 },
- { "upsilonlenisgrave", 0x1f52, 0 },
- { "upsilonaspergrave", 0x1f53, 0 },
- { "upsilonlenisacute", 0x1f54, 0 },
- { "upsilonasperacute", 0x1f55, 0 },
- { "upsilonlenistilde", 0x1f56, 0 },
- { "upsilonaspertilde", 0x1f57, 0 },
- { "omegalenis", 0x1f60, 0 },
- { "omegaasper", 0x1f61, 0 },
- { "omegalenisgrave", 0x1f62, 0 },
- { "omegaaspergrave", 0x1f63, 0 },
- { "omegalenisacute", 0x1f64, 0 },
- { "omegaasperacute", 0x1f65, 0 },
- { "omegalenistilde", 0x1f66, 0 },
- { "omegaaspertilde", 0x1f67, 0 },
- { "alphagrave", 0x1f70, 0 },
- { "alphaacute", 0x1f71, 0 },
- { "epsilongrave", 0x1f72, 0 },
- { "epsilonacute", 0x1f73, 0 },
- { "etagrave", 0x1f74, 0 },
- { "etaacute", 0x1f75, 0 },
- { "iotagrave", 0x1f76, 0 },
- { "iotaacute", 0x1f77, 0 },
- { "omicrongrave", 0x1f78, 0 },
- { "omicronacute", 0x1f79, 0 },
- { "upsilongrave", 0x1f7a, 0 },
- { "upsilonacute", 0x1f7b, 0 },
- { "omegagrave", 0x1f7c, 0 },
- { "omegaacute", 0x1f7d, 0 },
- { "alphaiotasublenis", 0x1f80, 0 },
- { "alphaiotasubasper", 0x1f81, 0 },
- { "alphaiotasublenisgrave", 0x1f82, 0 },
- { "alphaiotasubaspergrave", 0x1f83, 0 },
- { "alphaiotasublenisacute", 0x1f84, 0 },
- { "alphaiotasubasperacute", 0x1f85, 0 },
- { "alphaiotasublenistilde", 0x1f86, 0 },
- { "alphaiotasubaspertilde", 0x1f87, 0 },
- { "etaiotasublenis", 0x1f90, 0 },
- { "etaiotasubasper", 0x1f91, 0 },
- { "etaiotasublenisgrave", 0x1f92, 0 },
- { "etaiotasubaspergrave", 0x1f93, 0 },
- { "etaiotasublenisacute", 0x1f94, 0 },
- { "etaiotasubasperacute", 0x1f95, 0 },
- { "etaiotasublenistilde", 0x1f96, 0 },
- { "etaiotasubaspertilde", 0x1f97, 0 },
- { "omegaiotasublenis", 0x1fa0, 0 },
- { "omegaiotasubasper", 0x1fa1, 0 },
- { "omegaiotasublenisgrave", 0x1fa2, 0 },
- { "omegaiotasubaspergrave", 0x1fa3, 0 },
- { "omegaiotasublenisacute", 0x1fa4, 0 },
- { "omegaiotasubasperacute", 0x1fa5, 0 },
- { "omegaiotasublenistilde", 0x1fa6, 0 },
- { "omegaiotasubaspertilde", 0x1fa7, 0 },
- { "alphabreve", 0x1fb0, 0 },
- { "alphamacron", 0x1fb1, 0 },
- { "alphaiotasubgrave", 0x1fb2, 0 },
- { "alphaiotasub", 0x1fb3, 0 },
- { "alphatilde", 0x1fb6, 0 },
- { "alphaiotasubtilde", 0x1fb7, 0 },
- { "etaiotasubgrave", 0x1fc2, 0 },
- { "etaiotasub", 0x1fc3, 0 },
- { "etaiotasubacute", 0x1fc4, 0 },
- { "etatilde", 0x1fc6, 0 },
- { "etaiotasubtilde", 0x1fc7, 0 },
- { "iotabreve", 0x1fd0, 0 },
- { "iotamacron", 0x1fd1, 0 },
- { "iotadieresisgrave", 0x1fd2, 0 },
- { "iotadieresisacute", 0x1fd3, 0 },
- { "iotatilde", 0x1fd6, 0 },
- { "iotadieresistilde", 0x1fd7, 0 },
- { "upsilonbreve", 0x1fe0, 0 },
- { "upsilonmacron", 0x1fe1, 0 },
- { "upsilondieresisgrave", 0x1fe2, 0 },
- { "upsilondieresisacute", 0x1fe3, 0 },
- { "rholenis", 0x1fe4, 0 },
- { "rhoasper", 0x1fe5, 0 },
- { "upsilontilde", 0x1fe6, 0 },
- { "omegaiotasubgrave", 0x1ff2, 0 },
- { "omegaiotasub", 0x1ff3, 0 },
- { "omegaiotasubacute", 0x1ff4, 0 },
- { "omegatilde", 0x1ff6, 0 },
- { "omegaiotasubtilde", 0x1ff7, 0 },
- { "alphaiotasubacute", 0x1fb4, 0 },
- { "upsilondieresistilde", 0x1fe7, 0 },
- { "digamma", 0xefd5, 0 },
- { "Be", 0x0411, 0 },
- { "Ve", 0x0412, 0 },
- { "Ghe", 0x0413, 0 },
- { "De", 0x0414, 0 },
- { "Ie", 0x0415, 0 },
- { "Zhe", 0x0416, 0 },
- { "Ze", 0x0417, 0 },
- { "Ka", 0x041a, 0 },
- { "El", 0x041b, 0 },
- { "Em", 0x041c, 0 },
- { "En", 0x041d, 0 },
- { "Pe", 0x041f, 0 },
- { "Er", 0x0420, 0 },
- { "Es", 0x0421, 0 },
- { "Te", 0x0422, 0 },
- { "Ef", 0x0424, 0 },
- { "Ha", 0x0425, 0 },
- { "Tse", 0x0426, 0 },
- { "Che", 0x0427, 0 },
- { "Sha", 0x0428, 0 },
- { "Shcha", 0x0429, 0 },
- { "Hard", 0x042a, 0 },
- { "Yeru", 0x042b, 0 },
- { "Soft", 0x042c, 0 },
- { "Yu", 0x042e, 0 },
- { "Ya", 0x042f, 0 },
- { "Io", 0x0401, 0 },
- { "Dje", 0x0402, 0 },
- { "Gje", 0x0403, 0 },
- { "Dze", 0x0405, 0 },
- { "Yi", 0x0407, 0 },
- { "Je", 0x0408, 0 },
- { "Lje", 0x0409, 0 },
- { "Nje", 0x040a, 0 },
- { "Tshe", 0x040b, 0 },
- { "Kje", 0x040c, 0 },
- { "Dzhe", 0x040f, 0 },
- { "Yat", 0x0462, 0 },
- { "Fita", 0x0472, 0 },
- { "Izhitsa", 0x0474, 0 },
- { "be", 0x0431, 0 },
- { "ve", 0x0432, 0 },
- { "ghe", 0x0433, 0 },
- { "de", 0x0434, 0 },
- { "ie", 0x0435, 0 },
- { "zhe", 0x0436, 0 },
- { "ze", 0x0437, 0 },
- { "ka", 0x043a, 0 },
- { "el", 0x043b, 0 },
- { "em", 0x043c, 0 },
- { "en", 0x043d, 0 },
- { "er", 0x0440, 0 },
- { "es", 0x0441, 0 },
- { "te", 0x0442, 0 },
- { "ef", 0x0444, 0 },
- { "ha", 0x0445, 0 },
- { "tse", 0x0446, 0 },
- { "che", 0x0447, 0 },
- { "sha", 0x0448, 0 },
- { "shcha", 0x0449, 0 },
- { "hard", 0x044a, 0 },
- { "yeru", 0x044b, 0 },
- { "soft", 0x044c, 0 },
- { "yu", 0x044e, 0 },
- { "ya", 0x044f, 0 },
- { "io", 0x0451, 0 },
- { "dje", 0x0452, 0 },
- { "gje", 0x0453, 0 },
- { "dze", 0x0455, 0 },
- { "yi", 0x0457, 0 },
- { "je", 0x0458, 0 },
- { "lje", 0x0459, 0 },
- { "nje", 0x045a, 0 },
- { "tshe", 0x045b, 0 },
- { "kje", 0x045c, 0 },
- { "dzhe", 0x045f, 0 },
- { "yat", 0x0463, 0 },
- { "fita", 0x0473, 0 },
- { "izhitsa", 0x0475, 0 },
- { "litre", 0x2113, 0 },
- { "Dotaccent", 0xefed, 0 },
- { "Breve", 0xefee, 0 },
- { "Ogonek", 0xeff1, 0 },
- { "Cedilla", 0xeff2, 0 },
- { "Ring", 0xeff3, 0 },
- { "Tilde", 0xeff5, 0 },
- { "Circumflex", 0xeff7, 0 },
- { "dbar", 0x0111, 0 },
- { "st", 0xfb06, 0 },
- { "TeXtext32", 0x0337, 0 },
- { "DD070", 0x2014, 0 },
- { "monospacedash", 0x2014, 0 },
- { "Dash1cent", 0x2015, 0 },
- { "apostrophereverse", 0x201b, 0 },
- { "Pts", 0x20a7, 0 },
- { "SM760000", 0x2195, 0 },
- { "SM770000", 0x21a8, 0 },
- { "SP320000", 0x2219, 0 },
- { "SD630000", 0x22c5, 0 },
- { "SM790000", 0x2302, 0 },
- { "caretinverted", 0x2304, 0 },
- { "SM680000", 0x2310, 0 },
- { "SA420000", 0x2319, 0 },
- { "BorderULCorner1", 0x231c, 0 },
- { "DD010", 0x231c, 0 },
- { "DD101", 0x231c, 0 },
- { "BorderURCorner1", 0x231d, 0 },
- { "DD012", 0x231d, 0 },
- { "DD104", 0x231d, 0 },
- { "BorderLLCorner1", 0x231e, 0 },
- { "DD014", 0x231e, 0 },
- { "DD109", 0x231e, 0 },
- { "BorderLRCorner1", 0x231f, 0 },
- { "DD015", 0x231f, 0 },
- { "DD112", 0x231f, 0 },
- { "SS260000", 0x2320, 0 },
- { "SS270000", 0x2321, 0 },
- { "hook", 0x2440, 0 },
- { "chair", 0x2441, 0 },
- { "fork", 0x2442, 0 },
- { "SF600000", 0x2580, 0 },
- { "BorderLower1", 0x2581, 0 },
- { "DD011", 0x2581, 0 },
- { "DD021", 0x2581, 0 },
- { "DD110", 0x2581, 0 },
- { "Flower1l", 0x2581, 0 },
- { "SF570000", 0x2584, 0 },
- { "SF610000", 0x2588, 0 },
- { "Tile", 0x2588, 0 },
- { "HalfTile", 0x258c, 0 },
- { "SF580000", 0x258c, 0 },
- { "BorderLeftVertical1", 0x258f, 0 },
- { "DD013", 0x258f, 0 },
- { "DD034", 0x258f, 0 },
- { "DD105", 0x258f, 0 },
- { "Flower1d", 0x258f, 0 },
- { "SF590000", 0x2590, 0 },
- { "SF140000", 0x2591, 0 },
- { "SF150000", 0x2592, 0 },
- { "SF160000", 0x2593, 0 },
- { "BorderUpper1", 0x2594, 0 },
- { "DD024", 0x2594, 0 },
- { "DD102", 0x2594, 0 },
- { "BorderRightVertical1", 0x2595, 0 },
- { "DD031", 0x2595, 0 },
- { "DD106", 0x2595, 0 },
- { "Flower2dr", 0x2595, 0 },
- { "SM600000", 0x25b2, 0 },
- { "SM590000", 0x25b6, 0 },
- { "SV040000", 0x25bc, 0 },
- { "SM630000", 0x25c0, 0 },
- { "SM750000", 0x25cb, 0 },
- { "SM570001", 0x25d8, 0 },
- { "SM750002", 0x25d9, 0 },
- { "ShootingStar", 0x2604, 0 },
- { "DD130", 0x2605, 0 },
- { "StarDingbat1", 0x2605, 0 },
- { "TheSun", 0x2609, 0 },
- { "FleuronLeft", 0x2619, 0 },
- { "cross", 0x2629, 0 },
- { "SS000000", 0x263a, 0 },
- { "SS010000", 0x263b, 0 },
- { "SM690000", 0x263c, 0 },
- { "TheMoon", 0x263d, 0 },
- { "Moon", 0x263e, 0 },
- { "Mercury", 0x263f, 0 },
- { "Venus", 0x2640, 0 },
- { "Earth", 0x2641, 0 },
- { "Mars", 0x2642, 0 },
- { "Jupiter", 0x2643, 0 },
- { "Saturn", 0x2644, 0 },
- { "Uranus", 0x2645, 0 },
- { "Neptune", 0x2646, 0 },
- { "Pluto", 0x2647, 0 },
- { "Aries", 0x2648, 0 },
- { "Taurus", 0x2649, 0 },
- { "Gemini", 0x264a, 0 },
- { "Cancer", 0x264b, 0 },
- { "Leo", 0x264c, 0 },
- { "Virgo", 0x264d, 0 },
- { "Libra", 0x264e, 0 },
- { "Scorpio", 0x264f, 0 },
- { "Sagittarius", 0x2650, 0 },
- { "Capricorn", 0x2651, 0 },
- { "Aquarius", 0x2652, 0 },
- { "Pisces", 0x2653, 0 },
- { "diamondopen", 0x2662, 0 },
- { "FleuronCenter", 0x2766, 0 },
- { "FleuronRight", 0x2767, 0 },
- { "st1", 0xfb06, 0 },
- { "zeroslash", 0xf638, 0 },
- { "pi1", 0x03d6, 0 },
- { "hyphen-minus", 0x002d, 0 },
- { "hyphenminus", 0x002d, 0 },
- { "nonmarkingreturn", 0x000d, 0 },
- { "micro", 0x00b5, 0 },
- { "Dmacron", 0x0110, 0 },
- { "kra", 0x0138, 0 },
- { "bbar", 0x0180, 0 },
- { "Dbar", 0x0189, 0 },
- { "deltaturn", 0x018d, 0 },
- { "Eturn", 0x018e, 0 },
- { "Epsilonlatin", 0x0190, 0 },
- { "Gammalatin", 0x0194, 0 },
- { "Iotalatin", 0x0196, 0 },
- { "Ibar", 0x0197, 0 },
- { "lambdabar", 0x019b, 0 },
- { "mcapturn", 0x019c, 0 },
- { "Nhook", 0x019d, 0 },
- { "nleg", 0x019e, 0 },
- { "Obar", 0x019f, 0 },
- { "OI", 0x01a2, 0 },
- { "YR", 0x01a6, 0 },
- { "eshlooprev", 0x01aa, 0 },
- { "Trthook", 0x01ae, 0 },
- { "Upsilonlatin", 0x01b1, 0 },
- { "Vcursive", 0x01b2, 0 },
- { "Zbar", 0x01b5, 0 },
- { "zbar", 0x01b6, 0 },
- { "Yogh", 0x01b7, 0 },
- { "Yoghrev", 0x01b8, 0 },
- { "yoghrev", 0x01b9, 0 },
- { "yoghtail", 0x01ba, 0 },
- { "twobar", 0x01bb, 0 },
- { "glottalstopbarinv", 0x01be, 0 },
- { "pipe", 0x01c0, 0 },
- { "pipedbl", 0x01c1, 0 },
- { "pipedblbar", 0x01c2, 0 },
- { "exclamlatin", 0x01c3, 0 },
- { "DZhacek", 0x01c4, 0 },
- { "Dzhacek", 0x01c5, 0 },
- { "dzhacek", 0x01c6, 0 },
- { "Ahacek", 0x01cd, 0 },
- { "ahacek", 0x01ce, 0 },
- { "Ihacek", 0x01cf, 0 },
- { "ihacek", 0x01d0, 0 },
- { "Ohacek", 0x01d1, 0 },
- { "ohacek", 0x01d2, 0 },
- { "Uhacek", 0x01d3, 0 },
- { "uhacek", 0x01d4, 0 },
- { "Udieresishacek", 0x01d9, 0 },
- { "udieresishacek", 0x01da, 0 },
- { "eturn", 0x01dd, 0 },
- { "Gbar", 0x01e4, 0 },
- { "gbar", 0x01e5, 0 },
- { "Ghacek", 0x01e6, 0 },
- { "ghacek", 0x01e7, 0 },
- { "Khacek", 0x01e8, 0 },
- { "khacek", 0x01e9, 0 },
- { "Yoghhacek", 0x01ee, 0 },
- { "yoghhacek", 0x01ef, 0 },
- { "jhacek", 0x01f0, 0 },
- { "aturn", 0x0250, 0 },
- { "ascriptturn", 0x0252, 0 },
- { "cturn", 0x0254, 0 },
- { "drthook", 0x0256, 0 },
- { "erev", 0x0258, 0 },
- { "epsilonlatin", 0x025b, 0 },
- { "epsilonlatinrev", 0x025c, 0 },
- { "epsilonlatinrevhook", 0x025d, 0 },
- { "epsilonlatinrevclosed", 0x025e, 0 },
- { "jdotlessbar", 0x025f, 0 },
- { "gcursive", 0x0261, 0 },
- { "Gsmallcap", 0x0262, 0 },
- { "gammalatin", 0x0263, 0 },
- { "babygamma", 0x0264, 0 },
- { "hturn", 0x0265, 0 },
- { "ibar", 0x0268, 0 },
- { "Ismallcap", 0x026a, 0 },
- { "lmidtilde", 0x026b, 0 },
- { "lrthook", 0x026d, 0 },
- { "lyogh", 0x026e, 0 },
- { "mturn", 0x026f, 0 },
- { "mturndescend", 0x0270, 0 },
- { "nlftlfthook", 0x0272, 0 },
- { "nrthook", 0x0273, 0 },
- { "Nsmallcap", 0x0274, 0 },
- { "obar", 0x0275, 0 },
- { "OEsmallcap", 0x0276, 0 },
- { "omegaclosed", 0x0277, 0 },
- { "rturn", 0x0279, 0 },
- { "rturnascend", 0x027a, 0 },
- { "rturnrthook", 0x027b, 0 },
- { "rdescend", 0x027c, 0 },
- { "rrthook", 0x027d, 0 },
- { "rfishhookrev", 0x027f, 0 },
- { "Rsmallcap", 0x0280, 0 },
- { "Rsmallcapinv", 0x0281, 0 },
- { "srthook", 0x0282, 0 },
- { "jhookdblbar", 0x0284, 0 },
- { "eshshortrev", 0x0285, 0 },
- { "tturn", 0x0287, 0 },
- { "trthook", 0x0288, 0 },
- { "vscript", 0x028b, 0 },
- { "vturn", 0x028c, 0 },
- { "wturn", 0x028d, 0 },
- { "yturn", 0x028e, 0 },
- { "Ysmallcap", 0x028f, 0 },
- { "zrthook", 0x0290, 0 },
- { "yogh", 0x0292, 0 },
- { "yoghcurl", 0x0293, 0 },
- { "glottalstoprevinv", 0x0295, 0 },
- { "glottalstopinv", 0x0296, 0 },
- { "cstretch", 0x0297, 0 },
- { "kiss", 0x0298, 0 },
- { "Bsmallcap", 0x0299, 0 },
- { "epsilonclosed", 0x029a, 0 },
- { "Gsmallcaphook", 0x029b, 0 },
- { "Hsmallcap", 0x029c, 0 },
- { "jcrosstail", 0x029d, 0 },
- { "kturn", 0x029e, 0 },
- { "Lsmallcap", 0x029f, 0 },
- { "glottalstopbar", 0x02a1, 0 },
- { "glottalstopbarrev", 0x02a2, 0 },
- { "dyogh", 0x02a4, 0 },
- { "hsuper", 0x02b0, 0 },
- { "hhooksuper", 0x02b1, 0 },
- { "jsuper", 0x02b2, 0 },
- { "rsuper", 0x02b3, 0 },
- { "rturnsuper", 0x02b4, 0 },
- { "rturnrthooksuper", 0x02b5, 0 },
- { "Rturnsuper", 0x02b6, 0 },
- { "wsuper", 0x02b7, 0 },
- { "ysuper", 0x02b8, 0 },
- { "primedblmod", 0x02ba, 0 },
- { "quoteleftmod", 0x02bb, 0 },
- { "apostrophe", 0x02bc, 0 },
- { "apostropherev", 0x02bd, 0 },
- { "ringrighthalfsuper", 0x02be, 0 },
- { "ringlefthalfsuper", 0x02bf, 0 },
- { "glottal", 0x02c0, 0 },
- { "glottalrev", 0x02c1, 0 },
- { "fronted", 0x02c2, 0 },
- { "backed", 0x02c3, 0 },
- { "raised", 0x02c4, 0 },
- { "lowered", 0x02c5, 0 },
- { "linevert", 0x02c8, 0 },
- { "macronmodifier", 0x02c9, 0 },
- { "acutemodifier", 0x02ca, 0 },
- { "gravemodifier", 0x02cb, 0 },
- { "linevertsub", 0x02cc, 0 },
- { "macronsub", 0x02cd, 0 },
- { "gravesub", 0x02ce, 0 },
- { "acutesub", 0x02cf, 0 },
- { "length", 0x02d0, 0 },
- { "halflength", 0x02d1, 0 },
- { "ringrighthalfcenter", 0x02d2, 0 },
- { "ringlefthalfsup", 0x02d3, 0 },
- { "tackupmid", 0x02d4, 0 },
- { "tackdownmid", 0x02d5, 0 },
- { "rhotichook", 0x02de, 0 },
- { "gammasuper", 0x02e0, 0 },
- { "lsuper", 0x02e1, 0 },
- { "ssuper", 0x02e2, 0 },
- { "xsuper", 0x02e3, 0 },
- { "glottalrevsuper", 0x02e4, 0 },
- { "toneextrahigh", 0x02e5, 0 },
- { "tonehigh", 0x02e6, 0 },
- { "tonemid", 0x02e7, 0 },
- { "tonelow", 0x02e8, 0 },
- { "toneextralow", 0x02e9, 0 },
- { "gravenosp", 0x0300, 0 },
- { "acutenosp", 0x0301, 0 },
- { "circumflexnosp", 0x0302, 0 },
- { "tildenosp", 0x0303, 0 },
- { "macronnosp", 0x0304, 0 },
- { "overscorenosp", 0x0305, 0 },
- { "brevenosp", 0x0306, 0 },
- { "dotnosp", 0x0307, 0 },
- { "dieresisnosp", 0x0308, 0 },
- { "hooksupnosp", 0x0309, 0 },
- { "ringnosp", 0x030a, 0 },
- { "acutedblnosp", 0x030b, 0 },
- { "haceknosp", 0x030c, 0 },
- { "linevertnosp", 0x030d, 0 },
- { "linevertdblnosp", 0x030e, 0 },
- { "gravedblnosp", 0x030f, 0 },
- { "candrabindunosp", 0x0310, 0 },
- { "breveinvnosp", 0x0311, 0 },
- { "commaturnsupnosp", 0x0312, 0 },
- { "apostrophesupnosp", 0x0313, 0 },
- { "commasuprevnosp", 0x0314, 0 },
- { "commasuprightnosp", 0x0315, 0 },
- { "gravesubnosp", 0x0316, 0 },
- { "acutesubnosp", 0x0317, 0 },
- { "tackleftsubnosp", 0x0318, 0 },
- { "tackrightsubnosp", 0x0319, 0 },
- { "anglesupnosp", 0x031a, 0 },
- { "hornnosp", 0x031b, 0 },
- { "ringlefthalfsubnosp", 0x031c, 0 },
- { "tackupsubnosp", 0x031d, 0 },
- { "tackdownsubnosp", 0x031e, 0 },
- { "plussubnosp", 0x031f, 0 },
- { "minussubnosp", 0x0320, 0 },
- { "hooksubpalatnosp", 0x0321, 0 },
- { "hooksubretronosp", 0x0322, 0 },
- { "dotsubnosp", 0x0323, 0 },
- { "dotdblsubnosp", 0x0324, 0 },
- { "ringsubnosp", 0x0325, 0 },
- { "commasubnosp", 0x0326, 0 },
- { "cedillanosp", 0x0327, 0 },
- { "ogoneknosp", 0x0328, 0 },
- { "linevertsubnosp", 0x0329, 0 },
- { "bridgesubnosp", 0x032a, 0 },
- { "archdblsubnosp", 0x032b, 0 },
- { "haceksubnosp", 0x032c, 0 },
- { "circumflexsubnosp", 0x032d, 0 },
- { "brevesubnosp", 0x032e, 0 },
- { "breveinvsubnosp", 0x032f, 0 },
- { "tildesubnosp", 0x0330, 0 },
- { "macronsubnosp", 0x0331, 0 },
- { "underscorenosp", 0x0332, 0 },
- { "underscoredblnosp", 0x0333, 0 },
- { "tildemidnosp", 0x0334, 0 },
- { "barmidshortnosp", 0x0335, 0 },
- { "barmidlongnosp", 0x0336, 0 },
- { "slashshortnosp", 0x0337, 0 },
- { "slashlongnosp", 0x0338, 0 },
- { "ringrighthalfsubnosp", 0x0339, 0 },
- { "bridgeinvsubnosp", 0x033a, 0 },
- { "squaresubnosp", 0x033b, 0 },
- { "seagullsubnosp", 0x033c, 0 },
- { "xsupnosp", 0x033d, 0 },
- { "tildevertsupnosp", 0x033e, 0 },
- { "overscoredblnosp", 0x033f, 0 },
- { "graveleftnosp", 0x0340, 0 },
- { "acuterightnosp", 0x0341, 0 },
- { "wavyoverscorenosp", 0x0342, 0 },
- { "zigzagoverscorenosp", 0x0343, 0 },
- { "diaeresistonosnosp", 0x0344, 0 },
- { "iotasubnosp", 0x0345, 0 },
- { "iotasub", 0x037a, 0 },
- { "diaeresistonos", 0x0385, 0 },
- { "iotadiaeresistonos", 0x0390, 0 },
- { "Iotadiaeresis", 0x03aa, 0 },
- { "Upsilondiaeresis", 0x03ab, 0 },
- { "upsilondiaeresistonos", 0x03b0, 0 },
- { "iotadiaeresis", 0x03ca, 0 },
- { "upsilondiaeresis", 0x03cb, 0 },
- { "betacurled", 0x03d0, 0 },
- { "thetascript", 0x03d1, 0 },
- { "Upsilonhook", 0x03d2, 0 },
- { "Upsilonhooktonos", 0x03d3, 0 },
- { "Upsilonhookdiaeresis", 0x03d4, 0 },
- { "phiscript", 0x03d5, 0 },
- { "omegapi", 0x03d6, 0 },
- { "Stigma", 0x03da, 0 },
- { "stigma", 0x03db, 0 },
- { "Digamma", 0x03dc, 0 },
- { "digamma", 0x03dd, 0 },
- { "Koppa", 0x03de, 0 },
- { "koppa", 0x03df, 0 },
- { "Sampi", 0x03e0, 0 },
- { "sampi", 0x03e1, 0 },
- { "Shei", 0x03e2, 0 },
- { "shei", 0x03e3, 0 },
- { "Fei", 0x03e4, 0 },
- { "fei", 0x03e5, 0 },
- { "Khei", 0x03e6, 0 },
- { "khei", 0x03e7, 0 },
- { "Hori", 0x03e8, 0 },
- { "hori", 0x03e9, 0 },
- { "Gangia", 0x03ea, 0 },
- { "gangia", 0x03eb, 0 },
- { "Shima", 0x03ec, 0 },
- { "shima", 0x03ed, 0 },
- { "Dei", 0x03ee, 0 },
- { "dei", 0x03ef, 0 },
- { "kappascript", 0x03f0, 0 },
- { "sigmalunate", 0x03f2, 0 },
- { "Io", 0x0401, 0 },
- { "Dje", 0x0402, 0 },
- { "Gje", 0x0403, 0 },
- { "Ecyril", 0x0404, 0 },
- { "Dze", 0x0405, 0 },
- { "Icyril", 0x0406, 0 },
- { "Yi", 0x0407, 0 },
- { "Je", 0x0408, 0 },
- { "Lje", 0x0409, 0 },
- { "Nje", 0x040a, 0 },
- { "Tshe", 0x040b, 0 },
- { "Kje", 0x040c, 0 },
- { "Ucyrilbreve", 0x040e, 0 },
- { "Dzhe", 0x040f, 0 },
- { "Acyril", 0x0410, 0 },
- { "Be", 0x0411, 0 },
- { "Ve", 0x0412, 0 },
- { "Ge", 0x0413, 0 },
- { "De", 0x0414, 0 },
- { "Ie", 0x0415, 0 },
- { "Zhe", 0x0416, 0 },
- { "Ze", 0x0417, 0 },
- { "Ii", 0x0418, 0 },
- { "Iibreve", 0x0419, 0 },
- { "Ka", 0x041a, 0 },
- { "El", 0x041b, 0 },
- { "Em", 0x041c, 0 },
- { "En", 0x041d, 0 },
- { "Ocyril", 0x041e, 0 },
- { "Pecyril", 0x041f, 0 },
- { "Er", 0x0420, 0 },
- { "Es", 0x0421, 0 },
- { "Te", 0x0422, 0 },
- { "Ucyril", 0x0423, 0 },
- { "Ef", 0x0424, 0 },
- { "Kha", 0x0425, 0 },
- { "Tse", 0x0426, 0 },
- { "Che", 0x0427, 0 },
- { "Sha", 0x0428, 0 },
- { "Shcha", 0x0429, 0 },
- { "Hard", 0x042a, 0 },
- { "Yeri", 0x042b, 0 },
- { "Soft", 0x042c, 0 },
- { "Ecyrilrev", 0x042d, 0 },
- { "Iu", 0x042e, 0 },
- { "Ia", 0x042f, 0 },
- { "acyril", 0x0430, 0 },
- { "be", 0x0431, 0 },
- { "ve", 0x0432, 0 },
- { "ge", 0x0433, 0 },
- { "de", 0x0434, 0 },
- { "ie", 0x0435, 0 },
- { "zhe", 0x0436, 0 },
- { "ze", 0x0437, 0 },
- { "ii", 0x0438, 0 },
- { "iibreve", 0x0439, 0 },
- { "ka", 0x043a, 0 },
- { "el", 0x043b, 0 },
- { "em", 0x043c, 0 },
- { "en", 0x043d, 0 },
- { "ocyril", 0x043e, 0 },
- { "pecyril", 0x043f, 0 },
- { "er", 0x0440, 0 },
- { "es", 0x0441, 0 },
- { "te", 0x0442, 0 },
- { "ucyril", 0x0443, 0 },
- { "ef", 0x0444, 0 },
- { "kha", 0x0445, 0 },
- { "tse", 0x0446, 0 },
- { "che", 0x0447, 0 },
- { "sha", 0x0448, 0 },
- { "shcha", 0x0449, 0 },
- { "hard", 0x044a, 0 },
- { "yeri", 0x044b, 0 },
- { "soft", 0x044c, 0 },
- { "ecyrilrev", 0x044d, 0 },
- { "iu", 0x044e, 0 },
- { "ia", 0x044f, 0 },
- { "io", 0x0451, 0 },
- { "dje", 0x0452, 0 },
- { "gje", 0x0453, 0 },
- { "ecyril", 0x0454, 0 },
- { "dze", 0x0455, 0 },
- { "icyril", 0x0456, 0 },
- { "yi", 0x0457, 0 },
- { "je", 0x0458, 0 },
- { "lje", 0x0459, 0 },
- { "nje", 0x045a, 0 },
- { "tshe", 0x045b, 0 },
- { "kje", 0x045c, 0 },
- { "ucyrilbreve", 0x045e, 0 },
- { "dzhe", 0x045f, 0 },
- { "Yat", 0x0462, 0 },
- { "yat", 0x0463, 0 },
- { "Yusbig", 0x046a, 0 },
- { "yusbig", 0x046b, 0 },
- { "Psicyril", 0x0470, 0 },
- { "psicyril", 0x0471, 0 },
- { "Fita", 0x0472, 0 },
- { "fita", 0x0473, 0 },
- { "Izhitsa", 0x0474, 0 },
- { "izhitsa", 0x0475, 0 },
- { "Izhitsagravedbl", 0x0476, 0 },
- { "izhitsagravedbl", 0x0477, 0 },
- { "Digraphuk", 0x0478, 0 },
- { "digraphuk", 0x0479, 0 },
- { "Omegaround", 0x047a, 0 },
- { "omegaround", 0x047b, 0 },
- { "Omegatitlo", 0x047c, 0 },
- { "omegatitlo", 0x047d, 0 },
- { "OT", 0x047e, 0 },
- { "ot", 0x047f, 0 },
- { "Geupturn", 0x0490, 0 },
- { "geupturn", 0x0491, 0 },
- { "Gebar", 0x0492, 0 },
- { "gebar", 0x0493, 0 },
- { "Gehook", 0x0494, 0 },
- { "gehook", 0x0495, 0 },
- { "Zhertdes", 0x0496, 0 },
- { "zhertdes", 0x0497, 0 },
- { "Zecedilla", 0x0498, 0 },
- { "zecedilla", 0x0499, 0 },
- { "Kartdes", 0x049a, 0 },
- { "kartdes", 0x049b, 0 },
- { "Kavertbar", 0x049c, 0 },
- { "kavertbar", 0x049d, 0 },
- { "Kabar", 0x049e, 0 },
- { "kabar", 0x049f, 0 },
- { "GeKarev", 0x04a0, 0 },
- { "gekarev", 0x04a1, 0 },
- { "Enrtdes", 0x04a2, 0 },
- { "enrtdes", 0x04a3, 0 },
- { "EnGe", 0x04a4, 0 },
- { "enge", 0x04a5, 0 },
- { "Pehook", 0x04a6, 0 },
- { "pehook", 0x04a7, 0 },
- { "Ohook", 0x04a8, 0 },
- { "ohook", 0x04a9, 0 },
- { "Escedilla", 0x04aa, 0 },
- { "escedilla", 0x04ab, 0 },
- { "Tertdes", 0x04ac, 0 },
- { "tertdes", 0x04ad, 0 },
- { "Ustrt", 0x04ae, 0 },
- { "ustrt", 0x04af, 0 },
- { "Ustrtbar", 0x04b0, 0 },
- { "ustrtbar", 0x04b1, 0 },
- { "Khartdes", 0x04b2, 0 },
- { "khartdes", 0x04b3, 0 },
- { "TeTse", 0x04b4, 0 },
- { "tetse", 0x04b5, 0 },
- { "Chertdes", 0x04b6, 0 },
- { "chertdes", 0x04b7, 0 },
- { "Chevertbar", 0x04b8, 0 },
- { "chevertbar", 0x04b9, 0 },
- { "Hcyril", 0x04ba, 0 },
- { "hcyril", 0x04bb, 0 },
- { "Iehook", 0x04bc, 0 },
- { "iehook", 0x04bd, 0 },
- { "Iehookogonek", 0x04be, 0 },
- { "iehookogonek", 0x04bf, 0 },
- { "Icyril1", 0x04c0, 0 },
- { "Zhebreve", 0x04c1, 0 },
- { "zhebreve", 0x04c2, 0 },
- { "Kahook", 0x04c3, 0 },
- { "kahook", 0x04c4, 0 },
- { "Enhook", 0x04c7, 0 },
- { "enhook", 0x04c8, 0 },
- { "Cheleftdes", 0x04cb, 0 },
- { "cheleftdes", 0x04cc, 0 },
- { "qibuts", 0x05bb, 0 },
- { "meteg", 0x05bd, 0 },
- { "maqaf", 0x05be, 0 },
- { "paseq", 0x05c0, 0 },
- { "shindot", 0x05c1, 0 },
- { "sindot", 0x05c2, 0 },
- { "sofpasuq", 0x05c3, 0 },
- { "kaffinal", 0x05da, 0 },
- { "memfinal", 0x05dd, 0 },
- { "nunfinal", 0x05df, 0 },
- { "pefinal", 0x05e3, 0 },
- { "tsadifinal", 0x05e5, 0 },
- { "vavdbl", 0x05f0, 0 },
- { "vavyod", 0x05f1, 0 },
- { "yoddbl", 0x05f2, 0 },
- { "geresh", 0x05f3, 0 },
- { "gershayim", 0x05f4, 0 },
- { "varika", 0x05f5, 0 },
- { "enquad", 0x2000, 0 },
- { "emquad", 0x2001, 0 },
- { "emspace", 0x2003, 0 },
- { "threeperemspace", 0x2004, 0 },
- { "fourperemspace", 0x2005, 0 },
- { "sixperemspace", 0x2006, 0 },
- { "figurespace", 0x2007, 0 },
- { "punctuationspace", 0x2008, 0 },
- { "thinspace", 0x2009, 0 },
- { "hairspace", 0x200a, 0 },
- { "zerospace", 0x200b, 0 },
- { "zeronojoin", 0x200c, 0 },
- { "zerojoin", 0x200d, 0 },
- { "hyphennobreak", 0x2011, 0 },
- { "quotedash", 0x2015, 0 },
- { "dashdbl", 0x2016, 0 },
- { "quotesinglrev", 0x201b, 0 },
- { "quotedblrev", 0x201f, 0 },
- { "trianglebullet", 0x2023, 0 },
- { "onedotlead", 0x2024, 0 },
- { "twodotlead", 0x2025, 0 },
- { "hyphendot", 0x2027, 0 },
- { "lineseparator", 0x2028, 0 },
- { "paragraphseparator", 0x2029, 0 },
- { "lre", 0x202a, 0 },
- { "rle", 0x202b, 0 },
- { "pdf", 0x202c, 0 },
- { "lro", 0x202d, 0 },
- { "rlo", 0x202e, 0 },
- { "pertenthousand", 0x2031, 0 },
- { "prime", 0x2032, 0 },
- { "primedbl", 0x2033, 0 },
- { "primetriple", 0x2034, 0 },
- { "primerev", 0x2035, 0 },
- { "primedblrev", 0x2036, 0 },
- { "primetriplerev", 0x2037, 0 },
- { "caret", 0x2038, 0 },
- { "refmark", 0x203b, 0 },
- { "interrobang", 0x203d, 0 },
- { "tie", 0x2040, 0 },
- { "caretinsert", 0x2041, 0 },
- { "hyphenbullet", 0x2043, 0 },
- { "minussuperior", 0x207b, 0 },
- { "plusinferior", 0x208a, 0 },
- { "equalinferior", 0x208c, 0 },
- { "eurocurrency", 0x20a0, 0 },
- { "coloncurrency", 0x20a1, 0 },
- { "mill", 0x20a5, 0 },
- { "naira", 0x20a6, 0 },
- { "pesetas", 0x20a7, 0 },
- { "rupee", 0x20a8, 0 },
- { "newsheqel", 0x20aa, 0 },
- { "accountof", 0x2100, 0 },
- { "addresssubject", 0x2101, 0 },
- { "Cbb", 0x2102, 0 },
- { "degreecentigrade", 0x2103, 0 },
- { "CL", 0x2104, 0 },
- { "cadauna", 0x2106, 0 },
- { "Euler", 0x2107, 0 },
- { "scruple", 0x2108, 0 },
- { "degreefarenheit", 0x2109, 0 },
- { "Hscript", 0x210b, 0 },
- { "Hblackletter", 0x210c, 0 },
- { "Hbb", 0x210d, 0 },
- { "planck", 0x210e, 0 },
- { "planckover2pi", 0x210f, 0 },
- { "Iscript", 0x2110, 0 },
- { "Lscript", 0x2112, 0 },
- { "lscript", 0x2113, 0 },
- { "lbbar", 0x2114, 0 },
- { "Nbb", 0x2115, 0 },
- { "recordright", 0x2117, 0 },
- { "Pbb", 0x2119, 0 },
- { "Qbb", 0x211a, 0 },
- { "Rscript", 0x211b, 0 },
- { "Rfractur", 0x211c, 0 },
- { "Rbb", 0x211d, 0 },
- { "Rx", 0x211e, 0 },
- { "response", 0x211f, 0 },
- { "servicemark", 0x2120, 0 },
- { "tel", 0x2121, 0 },
- { "versicle", 0x2123, 0 },
- { "Zbb", 0x2124, 0 },
- { "ounce", 0x2125, 0 },
- { "ohm", 0x2126, 0 },
- { "mho", 0x2127, 0 },
- { "Zblackletter", 0x2128, 0 },
- { "iotaturn", 0x2129, 0 },
- { "degreekelvin", 0x212a, 0 },
- { "Bscript", 0x212c, 0 },
- { "Cblackletter", 0x212d, 0 },
- { "escript", 0x212f, 0 },
- { "Escript", 0x2130, 0 },
- { "Fscript", 0x2131, 0 },
- { "Fturn", 0x2132, 0 },
- { "Mscript", 0x2133, 0 },
- { "u0scrip", 0x2134, 0 },
- { "alephmath", 0x2135, 0 },
- { "gimelmath", 0x2137, 0 },
- { "dalethmath", 0x2138, 0 },
- { "twothird", 0x2154, 0 },
- { "onefifth", 0x2155, 0 },
- { "twofifths", 0x2156, 0 },
- { "threefifths", 0x2157, 0 },
- { "fourfifths", 0x2158, 0 },
- { "onesixth", 0x2159, 0 },
- { "fivesixths", 0x215a, 0 },
- { "onenumerator", 0x215f, 0 },
- { "arrowlongboth", 0x2194, 0 },
- { "arrowlongbothv", 0x2195, 0 },
- { "arrownorthwest", 0x2196, 0 },
- { "arrownortheast", 0x2197, 0 },
- { "arrowsoutheast", 0x2198, 0 },
- { "arrowsouthwest", 0x2199, 0 },
- { "arrowleftnot", 0x219a, 0 },
- { "arrowrightnot", 0x219b, 0 },
- { "arrowwaveleft", 0x219c, 0 },
- { "arrowwaveright", 0x219d, 0 },
- { "dblarrowheadleft", 0x219e, 0 },
- { "dblarrowheadup", 0x219f, 0 },
- { "dblarrowheadright", 0x21a0, 0 },
- { "dblarrowheaddown", 0x21a1, 0 },
- { "arrowtailleft", 0x21a2, 0 },
- { "arrowtailright", 0x21a3, 0 },
- { "arrowbarleft", 0x21a4, 0 },
- { "arrowbarup", 0x21a5, 0 },
- { "arrowbarright", 0x21a6, 0 },
- { "arrowbardown", 0x21a7, 0 },
- { "arrowbothvbase", 0x21a8, 0 },
- { "arrowhookleft", 0x21a9, 0 },
- { "arrowhookright", 0x21aa, 0 },
- { "arrowloopleft", 0x21ab, 0 },
- { "arrowloopright", 0x21ac, 0 },
- { "arrowwaveboth", 0x21ad, 0 },
- { "arrowlongbothnot", 0x21ae, 0 },
- { "arrowzigzag", 0x21af, 0 },
- { "arrowrightdown", 0x21b4, 0 },
- { "carriagerreturn", 0x21b5, 0 },
- { "arrowsemanticlockw", 0x21b6, 0 },
- { "arrowsemclockw", 0x21b7, 0 },
- { "home", 0x21b8, 0 },
- { "tableftright", 0x21b9, 0 },
- { "arrowanticlockw", 0x21ba, 0 },
- { "arrowclockw", 0x21bb, 0 },
- { "arrowlefttophalf", 0x21bc, 0 },
- { "arrowleftbothalf", 0x21bd, 0 },
- { "harpoonupright", 0x21be, 0 },
- { "harpoonupleft", 0x21bf, 0 },
- { "arrowrighttophalf", 0x21c0, 0 },
- { "arrowrightbothalf", 0x21c1, 0 },
- { "harpoondownright", 0x21c2, 0 },
- { "harpoondownleft", 0x21c3, 0 },
- { "arrowparrrightleft", 0x21c4, 0 },
- { "dblarrowupdown", 0x21c5, 0 },
- { "arrowparrleftright", 0x21c6, 0 },
- { "dblarrowup", 0x21c8, 0 },
- { "dblarrowdown", 0x21ca, 0 },
- { "harpoonleftright", 0x21cb, 0 },
- { "harpoonrightleft", 0x21cc, 0 },
- { "arrowdblleftnot", 0x21cd, 0 },
- { "arrowdbllongbothnot", 0x21ce, 0 },
- { "arrowdblrightnot", 0x21cf, 0 },
- { "arrowdbllongboth", 0x21d4, 0 },
- { "arrowdbllongbothv", 0x21d5, 0 },
- { "arrowdblnw", 0x21d6, 0 },
- { "arrowdblne", 0x21d7, 0 },
- { "arrowdblse", 0x21d8, 0 },
- { "arrowdblsw", 0x21d9, 0 },
- { "arrowtripleleft", 0x21da, 0 },
- { "arrowtripleright", 0x21db, 0 },
- { "arrowsquiggleleft", 0x21dc, 0 },
- { "arrowsquiggleright", 0x21dd, 0 },
- { "arrowopenleft", 0x21e6, 0 },
- { "arrowopenup", 0x21e7, 0 },
- { "arrowopenright", 0x21e8, 0 },
- { "arrowopendown", 0x21e9, 0 },
- { "complement", 0x2201, 0 },
- { "notexistential", 0x2204, 0 },
- { "elementsmall", 0x220a, 0 },
- { "owner", 0x220b, 0 },
- { "notowner", 0x220c, 0 },
- { "ownersmall", 0x220d, 0 },
- { "eop", 0x220e, 0 },
- { "coproduct", 0x2210, 0 },
- { "dotplus", 0x2214, 0 },
- { "slashmath", 0x2215, 0 },
- { "backslashmath", 0x2216, 0 },
- { "ringoperator", 0x2218, 0 },
- { "bulletmath", 0x2219, 0 },
- { "cuberoot", 0x221b, 0 },
- { "fourthroot", 0x221c, 0 },
- { "measuredangle", 0x2221, 0 },
- { "sphericalangle", 0x2222, 0 },
- { "notbar", 0x2224, 0 },
- { "parallelto", 0x2225, 0 },
- { "notbardbl", 0x2226, 0 },
- { "integraldbl", 0x222c, 0 },
- { "integraltrpl", 0x222d, 0 },
- { "contintegral", 0x222e, 0 },
- { "surfintegral", 0x222f, 0 },
- { "volintegral", 0x2230, 0 },
- { "clwintegral", 0x2231, 0 },
- { "clwcontintegral", 0x2232, 0 },
- { "cclwcontintegral", 0x2233, 0 },
- { "dotminus", 0x2238, 0 },
- { "excess", 0x2239, 0 },
- { "geomproportion", 0x223a, 0 },
- { "homothetic", 0x223b, 0 },
- { "revsimilar", 0x223d, 0 },
- { "lazysinv", 0x223e, 0 },
- { "sine", 0x223f, 0 },
- { "wreathproduct", 0x2240, 0 },
- { "notsimilar", 0x2241, 0 },
- { "minustilde", 0x2242, 0 },
- { "asymptequal", 0x2243, 0 },
- { "notasymptequal", 0x2244, 0 },
- { "approxorequal", 0x2245, 0 },
- { "approxnotequal", 0x2246, 0 },
- { "notapproxequal", 0x2247, 0 },
- { "almostequal", 0x2248, 0 },
- { "notalmostequal", 0x2249, 0 },
- { "almostorequal", 0x224a, 0 },
- { "tildetrpl", 0x224b, 0 },
- { "equivasymptotic", 0x224d, 0 },
- { "geomequivalent", 0x224e, 0 },
- { "difference", 0x224f, 0 },
- { "approachlimit", 0x2250, 0 },
- { "geomequal", 0x2251, 0 },
- { "imageorapproxequal", 0x2253, 0 },
- { "colonequal", 0x2254, 0 },
- { "equalcolon", 0x2255, 0 },
- { "ringinequal", 0x2256, 0 },
- { "ringequal", 0x2257, 0 },
- { "corresponds", 0x2258, 0 },
- { "estimates", 0x2259, 0 },
- { "equiangular", 0x225a, 0 },
- { "starequal", 0x225b, 0 },
- { "deltaequal", 0x225c, 0 },
- { "definequal", 0x225d, 0 },
- { "measurequal", 0x225e, 0 },
- { "questionequal", 0x225f, 0 },
- { "notequivalence", 0x2262, 0 },
- { "strictequivalence", 0x2263, 0 },
- { "lessdblequal", 0x2266, 0 },
- { "greaterdblequal", 0x2267, 0 },
- { "lessnotdblequal", 0x2268, 0 },
- { "greaternotdblequal", 0x2269, 0 },
- { "lessmuch", 0x226a, 0 },
- { "greatermuch", 0x226b, 0 },
- { "between", 0x226c, 0 },
- { "notequivasymptotic", 0x226d, 0 },
- { "notlessequal", 0x2270, 0 },
- { "notgreaterequal", 0x2271, 0 },
- { "lessequivlnt", 0x2272, 0 },
- { "greaterequivlnt", 0x2273, 0 },
- { "notlessequivlnt", 0x2274, 0 },
- { "notgreaterequivlnt", 0x2275, 0 },
- { "notlessgreater", 0x2278, 0 },
- { "notgreaterless", 0x2279, 0 },
- { "follows", 0x227b, 0 },
- { "precedesequal", 0x227c, 0 },
- { "followsequal", 0x227d, 0 },
- { "precedequivlnt", 0x227e, 0 },
- { "followsequivlnt", 0x227f, 0 },
- { "notpreceeds", 0x2280, 0 },
- { "notfollows", 0x2281, 0 },
- { "notpropersubset", 0x2284, 0 },
- { "notpropersuperset", 0x2285, 0 },
- { "notreflexsubset", 0x2288, 0 },
- { "notreflexsuperset", 0x2289, 0 },
- { "multiset", 0x228c, 0 },
- { "multiplymultiset", 0x228d, 0 },
- { "unionmulti", 0x228e, 0 },
- { "squareimage", 0x228f, 0 },
- { "squareoriginal", 0x2290, 0 },
- { "subsetsqequal", 0x2291, 0 },
- { "supersetsqequal", 0x2292, 0 },
- { "intersectionsq", 0x2293, 0 },
- { "unionsq", 0x2294, 0 },
- { "circleminus", 0x2296, 0 },
- { "circledivide", 0x2298, 0 },
- { "circledot", 0x2299, 0 },
- { "circlering", 0x229a, 0 },
- { "circleasterisk", 0x229b, 0 },
- { "circleequal", 0x229c, 0 },
- { "circlevertbar", 0x229d, 0 },
- { "squareplus", 0x229e, 0 },
- { "squareminus", 0x229f, 0 },
- { "squaremultiply", 0x22a0, 0 },
- { "squaredot", 0x22a1, 0 },
- { "turnstileleft", 0x22a2, 0 },
- { "turnstileright", 0x22a3, 0 },
- { "latticetop", 0x22a4, 0 },
- { "assertion", 0x22a6, 0 },
- { "truestate", 0x22a7, 0 },
- { "satisfy", 0x22a8, 0 },
- { "force", 0x22a9, 0 },
- { "tacktrpl", 0x22aa, 0 },
- { "forceextr", 0x22ab, 0 },
- { "notturnstileleft", 0x22ac, 0 },
- { "notsatisfy", 0x22ad, 0 },
- { "notforce", 0x22ae, 0 },
- { "notforceextr", 0x22af, 0 },
- { "lowerrank", 0x22b0, 0 },
- { "higherrank", 0x22b1, 0 },
- { "triangleright", 0x22b2, 0 },
- { "triangleleft", 0x22b3, 0 },
- { "triangleftequal", 0x22b4, 0 },
- { "triangrightequal", 0x22b5, 0 },
- { "original", 0x22b6, 0 },
- { "image", 0x22b7, 0 },
- { "multimap", 0x22b8, 0 },
- { "hermitconjmatrix", 0x22b9, 0 },
- { "intercal", 0x22ba, 0 },
- { "xor", 0x22bb, 0 },
- { "nand", 0x22bc, 0 },
- { "nor", 0x22bd, 0 },
- { "rightanglearc", 0x22be, 0 },
- { "narylogicaland", 0x22c0, 0 },
- { "narylogicalor", 0x22c1, 0 },
- { "naryintersection", 0x22c2, 0 },
- { "naryunion", 0x22c3, 0 },
- { "diamondmath", 0x22c4, 0 },
- { "divideonmultiply", 0x22c7, 0 },
- { "bowtie", 0x22c8, 0 },
- { "multicloseleft", 0x22c9, 0 },
- { "multicloseright", 0x22ca, 0 },
- { "multiopenleft", 0x22cb, 0 },
- { "multiopenright", 0x22cc, 0 },
- { "revasymptequal", 0x22cd, 0 },
- { "curlor", 0x22ce, 0 },
- { "curland", 0x22cf, 0 },
- { "subsetdbl", 0x22d0, 0 },
- { "supersetdbl", 0x22d1, 0 },
- { "uniondbl", 0x22d2, 0 },
- { "intersectiondbl", 0x22d3, 0 },
- { "fork", 0x22d4, 0 },
- { "equalparallel", 0x22d5, 0 },
- { "lessdot", 0x22d6, 0 },
- { "greaterdot", 0x22d7, 0 },
- { "verymuchless", 0x22d8, 0 },
- { "verymuchgreater", 0x22d9, 0 },
- { "lessequalgreater", 0x22da, 0 },
- { "greaterequalless", 0x22db, 0 },
- { "equalless", 0x22dc, 0 },
- { "equalgreater", 0x22dd, 0 },
- { "equalprecedes", 0x22de, 0 },
- { "equalfollows", 0x22df, 0 },
- { "preceedsnotequal", 0x22e0, 0 },
- { "followsnotequal", 0x22e1, 0 },
- { "notsubsetsqequal", 0x22e2, 0 },
- { "notsupersetsqequal", 0x22e3, 0 },
- { "sqimageornotequal", 0x22e4, 0 },
- { "sqoriginornotequal", 0x22e5, 0 },
- { "lessnotequivlnt", 0x22e6, 0 },
- { "greaternotequivlnt", 0x22e7, 0 },
- { "preceedsnotsimilar", 0x22e8, 0 },
- { "followsnotequivlnt", 0x22e9, 0 },
- { "nottriangleleft", 0x22ea, 0 },
- { "nottriangleright", 0x22eb, 0 },
- { "nottriangleleftequal", 0x22ec, 0 },
- { "nottrianglerightequal", 0x22ed, 0 },
- { "vertellipsis", 0x22ee, 0 },
- { "midhorizellipsis", 0x22ef, 0 },
- { "upslopeellipsis", 0x22f0, 0 },
- { "downslopeellipsis", 0x22f1, 0 },
- { "perspcorrespond", 0x2306, 0 },
- { "ceilingleft", 0x2308, 0 },
- { "ceilingright", 0x2309, 0 },
- { "floorleft", 0x230a, 0 },
- { "floorright", 0x230b, 0 },
- { "slurabove", 0x2322, 0 },
- { "slurbelow", 0x2323, 0 },
- { "null", 0x2400, 0 },
- { "startofhead", 0x2401, 0 },
- { "starttext", 0x2402, 0 },
- { "endtext", 0x2403, 0 },
- { "endtrans", 0x2404, 0 },
- { "enquiry", 0x2405, 0 },
- { "acknowledge", 0x2406, 0 },
- { "bell", 0x2407, 0 },
- { "backspace", 0x2408, 0 },
- { "horiztab", 0x2409, 0 },
- { "linefeed", 0x240a, 0 },
- { "verttab", 0x240b, 0 },
- { "formfeed", 0x240c, 0 },
- { "shiftout", 0x240e, 0 },
- { "shiftin", 0x240f, 0 },
- { "datalinkescape", 0x2410, 0 },
- { "devcon1", 0x2411, 0 },
- { "devcon2", 0x2412, 0 },
- { "devcon3", 0x2413, 0 },
- { "devcon4", 0x2414, 0 },
- { "negacknowledge", 0x2415, 0 },
- { "synch", 0x2416, 0 },
- { "endtransblock", 0x2417, 0 },
- { "cancel", 0x2418, 0 },
- { "endmedium", 0x2419, 0 },
- { "substitute", 0x241a, 0 },
- { "escape", 0x241b, 0 },
- { "fileseparator", 0x241c, 0 },
- { "groupseparator", 0x241d, 0 },
- { "recordseparator", 0x241e, 0 },
- { "unitseparator", 0x241f, 0 },
- { "spaceliteral", 0x2420, 0 },
- { "delete", 0x2421, 0 },
- { "blankb", 0x2422, 0 },
- { "spaceopenbox", 0x2423, 0 },
- { "newline", 0x2424, 0 },
- { "lthorizform", 0x2500, 0 },
- { "hvhorizform", 0x2501, 0 },
- { "ltvertform", 0x2502, 0 },
- { "hvvertform", 0x2503, 0 },
- { "ltdashtriphorizform", 0x2504, 0 },
- { "hvdashtriphorizform", 0x2505, 0 },
- { "ltdashtripvertform", 0x2506, 0 },
- { "hvdashtripvertform", 0x2507, 0 },
- { "ltdashquadhorizform", 0x2508, 0 },
- { "hvdashquadhorizform", 0x2509, 0 },
- { "ltdashquadvertform", 0x250a, 0 },
- { "hvdashquadvertform", 0x250b, 0 },
- { "ltdnrtform", 0x250c, 0 },
- { "dnltrthvform", 0x250d, 0 },
- { "dnhvrtltform", 0x250e, 0 },
- { "hvdnrtform", 0x250f, 0 },
- { "ltdnleftform", 0x2510, 0 },
- { "dnltlefthvform", 0x2511, 0 },
- { "dnhvleftltform", 0x2512, 0 },
- { "hvdnleftform", 0x2513, 0 },
- { "ltuprtform", 0x2514, 0 },
- { "upltrthvform", 0x2515, 0 },
- { "uphvrtltform", 0x2516, 0 },
- { "hvuprtform", 0x2517, 0 },
- { "ltupleftform", 0x2518, 0 },
- { "upltlefthvform", 0x2519, 0 },
- { "uphvleftltform", 0x251a, 0 },
- { "hvupleftform", 0x251b, 0 },
- { "ltvertrightform", 0x251c, 0 },
- { "vertltrthvform", 0x251d, 0 },
- { "uphvrtdnltform", 0x251e, 0 },
- { "dnhvrtupltform", 0x251f, 0 },
- { "verthvrtltform", 0x2520, 0 },
- { "dnltrtuphvform", 0x2521, 0 },
- { "upltrtdnhvform", 0x2522, 0 },
- { "hvvertrtform", 0x2523, 0 },
- { "ltvertleftform", 0x2524, 0 },
- { "vtltlefthvform", 0x2525, 0 },
- { "uphvleftdnltform", 0x2526, 0 },
- { "dnhvleftupltform", 0x2527, 0 },
- { "verthvleftltform", 0x2528, 0 },
- { "dnltleftuphvform", 0x2529, 0 },
- { "upltleftdnhvform", 0x252a, 0 },
- { "hvvertleftform", 0x252b, 0 },
- { "ltdnhorizform", 0x252c, 0 },
- { "lefthvrtdnltform", 0x252d, 0 },
- { "rthvleftdnltform", 0x252e, 0 },
- { "dnlthorizhvform", 0x252f, 0 },
- { "dnhvhorizltform", 0x2530, 0 },
- { "rtltrtdnhvform", 0x2531, 0 },
- { "leftltrtdnhvform", 0x2532, 0 },
- { "hvdnhorizform", 0x2533, 0 },
- { "ltuphorizform", 0x2534, 0 },
- { "lefthvrtupltform", 0x2535, 0 },
- { "rthvleftupltform", 0x2536, 0 },
- { "uplthorizhvform", 0x2537, 0 },
- { "uphvhorizltform", 0x2538, 0 },
- { "rtltleftuphvform", 0x2539, 0 },
- { "leftltrtuphvform", 0x253a, 0 },
- { "hvuphorizform", 0x253b, 0 },
- { "ltverthorizform", 0x253c, 0 },
- { "lefthvrtvertltform", 0x253d, 0 },
- { "rthvleftvertltform", 0x253e, 0 },
- { "vertlthorizhvform", 0x253f, 0 },
- { "uphvdnhorizltform", 0x2540, 0 },
- { "dnhvuphorizltform", 0x2541, 0 },
- { "verthvhorizltform", 0x2542, 0 },
- { "leftuphvrtdnltform", 0x2543, 0 },
- { "rtuphvleftdnltform", 0x2544, 0 },
- { "leftdnhvrtupltform", 0x2545, 0 },
- { "rtdnhvleftupltform", 0x2546, 0 },
- { "dnltuphorizhvform", 0x2547, 0 },
- { "upltdnhorizhvform", 0x2548, 0 },
- { "rtltleftverthvform", 0x2549, 0 },
- { "leftltrtverthvform", 0x254a, 0 },
- { "hvverthorizform", 0x254b, 0 },
- { "ltdashdblhorizform", 0x254c, 0 },
- { "hvdashdblhorizform", 0x254d, 0 },
- { "ltdashdblvertform", 0x254e, 0 },
- { "hvdashdblvertform", 0x254f, 0 },
- { "horizdblbar", 0x2550, 0 },
- { "vertdblbar", 0x2551, 0 },
- { "dnrtdblform", 0x2552, 0 },
- { "dndblrtform", 0x2553, 0 },
- { "dbldnrtform", 0x2554, 0 },
- { "dnleftdblform", 0x2555, 0 },
- { "dndblleftform", 0x2556, 0 },
- { "dbldnleftform", 0x2557, 0 },
- { "uprtdblform", 0x2558, 0 },
- { "updblrtform", 0x2559, 0 },
- { "dbluprtform", 0x255a, 0 },
- { "upleftdblform", 0x255b, 0 },
- { "updblleftform", 0x255c, 0 },
- { "dblupleftform", 0x255d, 0 },
- { "vertrtdblform", 0x255e, 0 },
- { "vertdblrtform", 0x255f, 0 },
- { "dblvertrtform", 0x2560, 0 },
- { "vertleftdblform", 0x2561, 0 },
- { "vertdblleftform", 0x2562, 0 },
- { "dblvertleftform", 0x2563, 0 },
- { "dnhorizdblform", 0x2564, 0 },
- { "dndblhorizform", 0x2565, 0 },
- { "dbldnhorizform", 0x2566, 0 },
- { "uphorizdblform", 0x2567, 0 },
- { "updblhorizform", 0x2568, 0 },
- { "dbluphorizform", 0x2569, 0 },
- { "verthorizdblform", 0x256a, 0 },
- { "vertdblhorizform", 0x256b, 0 },
- { "dblverthorizform", 0x256c, 0 },
- { "ltarcdnrtform", 0x256d, 0 },
- { "ltarcdnleftform", 0x256e, 0 },
- { "ltarcupleftform", 0x256f, 0 },
- { "ltarcuprtform", 0x2570, 0 },
- { "forwarddiagonal", 0x2571, 0 },
- { "backwarddiagonal", 0x2572, 0 },
- { "ltdiagonalcross", 0x2573, 0 },
- { "dneighthblock", 0x2581, 0 },
- { "dnquarterblock", 0x2582, 0 },
- { "dnthreeeighthblock", 0x2583, 0 },
- { "dnfiveeighthblock", 0x2585, 0 },
- { "dnthreequarterblock", 0x2586, 0 },
- { "dnseveneighthblock", 0x2587, 0 },
- { "lfseveneighthblock", 0x2589, 0 },
- { "lfthreequarterblock", 0x258a, 0 },
- { "lffiveeighthblock", 0x258b, 0 },
- { "lfthreeeighthblock", 0x258d, 0 },
- { "lfquarterblock", 0x258e, 0 },
- { "lfeighthblock", 0x258f, 0 },
- { "upeighthblock", 0x2594, 0 },
- { "rteighthblock", 0x2595, 0 },
- { "box", 0x25a1, 0 },
- { "boxrounded", 0x25a2, 0 },
- { "boxnested", 0x25a3, 0 },
- { "boxhorizhatch", 0x25a4, 0 },
- { "boxverthatch", 0x25a5, 0 },
- { "boxcrosshatch", 0x25a6, 0 },
- { "boxleftdiaghatch", 0x25a7, 0 },
- { "boxrtdiaghatch", 0x25a8, 0 },
- { "boxcrossdiaghatch", 0x25a9, 0 },
- { "smallboxfilled", 0x25aa, 0 },
- { "smallbox", 0x25ab, 0 },
- { "rectangle", 0x25ad, 0 },
- { "filledvertrect", 0x25ae, 0 },
- { "vertrectangle", 0x25af, 0 },
- { "filledparallelogram", 0x25b0, 0 },
- { "parallelogram", 0x25b1, 0 },
- { "triangle", 0x25b3, 0 },
- { "smalltrianglesld", 0x25b4, 0 },
- { "smalltriangle", 0x25b5, 0 },
- { "trianglerightsld1", 0x25b6, 0 },
- { "triangleright1", 0x25b7, 0 },
- { "smalltrianglerightsld", 0x25b8, 0 },
- { "smalltriangleright", 0x25b9, 0 },
- { "triagrtopen", 0x25bb, 0 },
- { "triangleinv", 0x25bd, 0 },
- { "smalltriangleinvsld", 0x25be, 0 },
- { "smalltriangleinv", 0x25bf, 0 },
- { "triangleleftsld1", 0x25c0, 0 },
- { "triangleleft1", 0x25c1, 0 },
- { "smalltriangleleftsld", 0x25c2, 0 },
- { "smalltriangleleft", 0x25c3, 0 },
- { "triaglfopen", 0x25c5, 0 },
- { "diamondrhombsolid", 0x25c6, 0 },
- { "diamondrhomb", 0x25c7, 0 },
- { "diamondrhombnested", 0x25c8, 0 },
- { "circledash", 0x25cc, 0 },
- { "circleverthatch", 0x25cd, 0 },
- { "circlesolid", 0x25cf, 0 },
- { "circleleftsld", 0x25d0, 0 },
- { "circlerightsld", 0x25d1, 0 },
- { "circlebottomsld", 0x25d2, 0 },
- { "circletopsld", 0x25d3, 0 },
- { "circlenesld", 0x25d4, 0 },
- { "circlenwopen", 0x25d5, 0 },
- { "semicircleleftsld", 0x25d6, 0 },
- { "semicirclelertsld", 0x25d7, 0 },
- { "invsemicircleup", 0x25da, 0 },
- { "invsemicircledn", 0x25db, 0 },
- { "nwquadarc", 0x25dc, 0 },
- { "nequadarc", 0x25dd, 0 },
- { "sequadarc", 0x25de, 0 },
- { "swquadarc", 0x25df, 0 },
- { "toparc", 0x25e0, 0 },
- { "bottomarc", 0x25e1, 0 },
- { "trianglesesld", 0x25e2, 0 },
- { "triangleswsld", 0x25e3, 0 },
- { "tranglenwsld", 0x25e4, 0 },
- { "trianglenesld", 0x25e5, 0 },
- { "squareleftsld", 0x25e7, 0 },
- { "squarerightsld", 0x25e8, 0 },
- { "squarenwsld", 0x25e9, 0 },
- { "squaresesld", 0x25ea, 0 },
- { "squarevertbisect", 0x25eb, 0 },
- { "triangledot", 0x25ec, 0 },
- { "triangleleftsld", 0x25ed, 0 },
- { "trianglerightsld", 0x25ee, 0 },
- { "heartopen", 0x2661, 0 },
- { "diamondopen", 0x2662, 0 },
- { "spadeopen", 0x2664, 0 },
- { "Omegaiotasubleniscircumflex", 0x1fae, 0 },
- { "Omegaleniscircumflex", 0x1f6e, 0 },
- { "Upsilonaspercircumflex", 0x1f5f, 0 },
- { "dieresiscircumflex", 0x1fc1, 0 },
- { "leniscircumflex", 0x1fcf, 0 },
- { "aspercircumflex", 0x1fdf, 0 },
- { "alphaleniscircumflex", 0x1f06, 0 },
- { "alphaaspercircumflex", 0x1f07, 0 },
- { "etaleniscircumflex", 0x1f26, 0 },
- { "etaaspercircumflex", 0x1f27, 0 },
- { "iotaleniscircumflex", 0x1f36, 0 },
- { "iotaaspercircumflex", 0x1f37, 0 },
- { "upsilonleniscircumflex", 0x1f56, 0 },
- { "upsilonaspercircumflex", 0x1f57, 0 },
- { "omegaleniscircumflex", 0x1f66, 0 },
- { "omegaaspercircumflex", 0x1f67, 0 },
- { "alphaiotasubleniscircumflex", 0x1f86, 0 },
- { "alphaiotasubaspercircumflex", 0x1f87, 0 },
- { "etaiotasubleniscircumflex", 0x1f96, 0 },
- { "etaiotasubaspercircumflex", 0x1f97, 0 },
- { "omegaiotasubleniscircumflex", 0x1fa6, 0 },
- { "omegaiotasubaspercircumflex", 0x1fa7, 0 },
- { "alphacircumflex", 0x1fb6, 0 },
- { "alphaiotasubcircumflex", 0x1fb7, 0 },
- { "etacircumflex", 0x1fc6, 0 },
- { "etaiotasubcircumflex", 0x1fc7, 0 },
- { "iotacircumflex", 0x1fd6, 0 },
- { "iotadieresiscircumflex", 0x1fd7, 0 },
- { "upsiloncircumflex", 0x1fe6, 0 },
- { "omegacircumflex", 0x1ff6, 0 },
- { "omegaiotasubcircumflex", 0x1ff7, 0 },
- { "upsilondieresiscircumflex", 0x1fe7, 0 },
- { "dialytika", 0x0308, 0 },
- { "koronis", 0x1fbd, 0 },
- { "prosgegrammeni", 0x1fbe, 0 },
- { "psili", 0x1fbf, 0 },
- { "perispomeni", 0x1fc0, 0 },
- { "varia", 0x1fef, 0 },
- { "oxia", 0x1ffd, 0 },
- { "dasia", 0x1ffe, 0 },
- { "Alphasmall", 0xf500, 0 },
- { "Betasmall", 0xf501, 0 },
- { "Gammasmall", 0xf502, 0 },
- { "Deltasmall", 0xf503, 0 },
- { "Epsilonsmall", 0xf504, 0 },
- { "Zetasmall", 0xf505, 0 },
- { "Etasmall", 0xf506, 0 },
- { "Thetasmall", 0xf507, 0 },
- { "Iotasmall", 0xf508, 0 },
- { "Kappasmall", 0xf509, 0 },
- { "Lambdasmall", 0xf50a, 0 },
- { "Musmall", 0xf50b, 0 },
- { "Nusmall", 0xf50c, 0 },
- { "Xismall", 0xf50d, 0 },
- { "Omicronsmall", 0xf50e, 0 },
- { "Pismall", 0xf50f, 0 },
- { "Rhosmall", 0xf510, 0 },
- { "Sigmasmall", 0xf512, 0 },
- { "Tausmall", 0xf513, 0 },
- { "Upsilonsmall", 0xf514, 0 },
- { "Phismall", 0xf515, 0 },
- { "Chismall", 0xf516, 0 },
- { "Psismall", 0xf517, 0 },
- { "Omegasmall", 0xf518, 0 },
- { "Iotadieresissmall", 0xf519, 0 },
- { "Upsilondieresissmall", 0xf51a, 0 },
- { "uni2A0B.lgdisplay", 0xea57, 0 },
- { "uni2A0B.uplgdisplay", 0xea57, 0 },
- { "uni2A15.lgdisplay", 0xe376, 0 },
- { "uni2A15.uplgdisplay", 0xe376, 0 },
- { "uni2A16.lgdisplay", 0xe377, 0 },
- { "uni2A16.uplgdisplay", 0xe377, 0 },
- { "uni2A10.lgdisplay", 0xe395, 0 },
- { "uni2A10.uplgdisplay", 0xe395, 0 },
- { "uni2A12.lgdisplay", 0xe397, 0 },
- { "uni2A12.uplgdisplay", 0xe397, 0 },
- { "uni2A13.lgdisplay", 0xe398, 0 },
- { "uni2A13.uplgdisplay", 0xe398, 0 },
- { "uni2A14.lgdisplay", 0xe399, 0 },
- { "uni2A14.uplgdisplay", 0xe399, 0 },
- { "uni2A17.lgdisplay", 0xe39a, 0 },
- { "uni2A17.uplgdisplay", 0xe39a, 0 },
- { "uni2A11.uplgdisplay", 0xe39b, 0 },
- { "uni2A11.lgdisplay", 0xe39b, 0 },
- { "uni2A0F.lgdisplay", 0xe3d3, 0 },
- { "uni2A0F.uplgdisplay", 0xe3d3, 0 },
-/* From Richard Kinch's TeX list of glyph aliases */
- { "fscript", 0x192, 0 },
- { "fraction1", 0x2215, 0 },
- { "negationslash", 0x2215, 0 },
- { "circleR", 0xae, 0 },
- { "circlecopyrt", 0xa9, 0 },
- { "smile", 0x263a, 0 },
- { "Ifractur", 0x2111, 0 },
- { "Rfractur", 0x211C, 0 },
- { "Omegainv", 0x2127, 0 },
- { "mho", 0x2127, 0 },
- { "alephmath", 0x2135, 0 },
- { "beth", 0x2136, 0 },
- { "bethmath", 0x2136, 0 },
- { "gimelmath", 0x2137, 0 },
- { "daleth", 0x2138, 0 },
- { "daletmath", 0x2138, 0 },
- { "arrowbothv", 0x2195, 0 },
- { "prime1", 0x2032, 0 },
- { "primerev1", 0x2035, 0 },
- { "primereverse", 0x2035, 0 },
- { "followsequal1", 0x227d, 0 },
- { "similarequal", 0x2243, 0 },
- { "square", 0x25a1, 0 },
- { "squaresolid", 0x25a0, 0 },
- { "squaresmallsolid", 0x25aa, 0 },
- { "diamondsolid", 0x25c6, 0 },
- { "clockwise", 0x21bb, 0 },
- { "anticlockwise", 0x21ba, 0 },
- { "forces", 0x22a9, 0 },
- { "forcesbar", 0x22aa, 0 },
- { "satisfies", 0x22a8, 0 },
- { "dblarrowdwn", 0x21ca, 0 },
- { "shiftleft", 0x2196, 0 },
- { "shiftright", 0x2197, 0 },
- { "squiggleright", 0x21dd, 0 },
- { "squiggleleft", 0x21dc, 0 },
- { "squiggleleftright", 0x21ad, 0 },
- { "curlyleft", 0x21ab, 0 },
- { "curlyright", 0x21ac, 0 },
- { "followsorequal", 0x227d, 0 },
- { "equalsdots", 0x2251, 0 },
- { "defines", 0x225c, 0 },
- { "ng", 0x014b, 0 },
- { "Ng", 0x014a, 0 },
- { "visiblespace", 0x2420, 0 },
- { "dslash", 0x0111, 0 },
- { "tie1", 0x2040, 0 },
- { "arrowdblbothv", 0x21d5, 0 },
- { "precedesequal1", 0x227c, 0 },
- { "greaterorsimilar", 0x2273, 0 },
- { "precedesorequal", 0x227e, 0 },
- { "lessorsimilar", 0x2272, 0 },
- { "equalorgreater", 0x22dd, 0 },
- { "lessorequalslant", 0x2264, 0 },
- { "equaldotrightleft", 0x2253, 0 },
- { "equaldotleftright", 0x2252, 0 },
- { "followsorcurly", 0x227d, 0 },
- { "greaterorequalslant", 0x2265, 0 },
- { "trianglerightequal", 0x22b5, 0 },
- { "triangleleftequal", 0x22b4, 0 },
- { "triangledownsld", 0x25bc, 0 },
- { "arrowaxisright", 0x2192, 0 },
- { "arrowaxisleft", 0x2190, 0 },
- { "trianglesolid", 0x25b2, 0 },
- { "greaterlessequal", 0x22db, 0 },
- { "orunderscore", 0x22bb, 0 },
- { "frown", 0x2322, 0 },
- { "uprise", 0x22cf, 0 },
- { "downfall", 0x22ce, 0 },
- { "subsetdblequal", 0x2286, 0 },
- { "supersetdblequal", 0x2287, 0 },
- { "Finv", 0x2132, 0 },
- { "notarrowboth", 0x21ae, 0 },
- { "archleftdown", 0x21b6, 0 },
- { "archrightdown", 0x21b7, 0 },
- { "notdblarrowleft", 0x21cd, 0 },
- { "notdblarrowboth", 0x21ce, 0 },
- { "notdblarrowright", 0x21cf, 0 },
- { "epsiloninv", 0x220a, 0 },
- { "equalorsimilar", 0x2242, 0 },
- { "notprecedes", 0x2280, 0 },
- { "notsubseteql", 0x2288, 0 },
- { "notsuperseteql", 0x2289, 0 },
- { "subsetnoteql", 0x228a, 0 },
- { "supersetnoteql", 0x228b, 0 },
- { "notturnstile", 0x22ac, 0 },
- { "notforcesextra", 0x22af, 0 },
- { "dividemultiply", 0x22c7, 0 },
- { "notprecedesoreql", 0x22e0, 0 },
- { "notfollowsoreql", 0x22e1, 0 },
- { "lessornotsimilar", 0x22e6, 0 },
- { "greaterornotsimilar", 0x22e7, 0 },
- { "precedeornoteqvlnt", 0x22e8, 0 },
- { "followornoteqvlnt", 0x22e9, 0 },
- { "nottriangeqlleft", 0x22ec, 0 },
- { "nottriangeqlright", 0x22ed, 0 },
- { "angbracketleft", 0x3008, 0 },
- { "angbracketright", 0x3009, 0 },
- { "check", 0x2713, 0 },
- { "circleS", 0x24c8, 0 },
- { "rightanglenw", 0x250c, 0 },
- { "rightanglene", 0x2510, 0 },
- { "rightanglesw", 0x2514, 0 },
- { "rightanglese", 0x2518, 0 },
- { "Yen", 0x00a5, 0 },
- { "permill", 0x2030, 0 },
- { "recipe", 0x211e, 0 },
- { "pertenmill", 0x2031, 0 },
- { "lnot", 0x00ac, 0 },
- { "circleP", 0x2117, 0 },
- { "surd", 0x221a, 0 },
- { "asciigrave", 0x60, 0 },
- { "asciigrave", 0x60, 0 },
- { "asciiacute", 0xb4, 0 },
- { "asciidieresis", 0xa8, 0 },
- { "pilcrow", 0xb6, 0 },
-/* Useful names to use to find glyphs */
- { "circumflexcomb", 0x302, 0 },
- { "macroncomb", 0x304, 0 },
- { "brevecomb", 0x306, 0 },
- { "diaeresiscomb", 0x308, 0 },
- { "caroncomb", 0x30c, 0 },
- { "vrachycomb", 0x306, 0 },
- { "psilicomb", 0x313, 0 },
- { "dasiacomb", 0x314, 0 },
- { "psilivaria", 0x1fcd, 0 },
- { "psilioxia", 0x1fce, 0 },
- { "psiliperispomeni", 0x1fcf, 0 },
- { "dasiavaria", 0x1fdd, 0 },
- { "dasiaoxia", 0x1fde, 0 },
- { "dasiaperispomeni", 0x1fdf, 0 },
- { "dialytikavaria", 0x1fed, 0 },
- { "dialytikaoxia", 0x1fee, 0 },
- { "dialytikaperispomeni", 0x1fc1, 0 },
-/* Adobe spells diaeresis the American way, as dieresis */
- { "diaeresis", 0xa8, 0 },
- { "Adiaeresis", 0xC4, 0 },
- { "Ediaeresis", 0xCB, 0 },
- { "Idiaeresis", 0xCF, 0 },
- { "Odiaeresis", 0xD6, 0 },
- { "Udiaeresis", 0xDC, 0 },
- { "adiaeresis", 0xE4, 0 },
- { "ediaeresis", 0xEB, 0 },
- { "idiaeresis", 0xEF, 0 },
- { "odiaeresis", 0xF6, 0 },
- { "udiaeresis", 0xFC, 0 },
- { "Ydiaeresis", 0x178, 0 },
- { "diaeresistonos", 0x385, 0 },
- { "iotadiaeresistonos", 0x390, 0 },
- { "Iotadiaeresis", 0x3AA, 0 },
- { "Upsilondiaeresis", 0x3AB, 0 },
- { "upsilondiaeresistonos", 0x3B0, 0 },
- { "iotadiaeresis", 0x3CA, 0 },
- { "upsilondiaeresis", 0x3CB, 0 },
- { "Wdiaeresis", 0x1e84, 0 },
- { "wdiaeresis", 0x1e85, 0 },
- { "ETH", 0xd0, 0 },
- { "THORN", 0xde, 0 },
- { "ssharp", 0xdf, 0 },
- { "Ooblique", 0xd8, 0 },
- { "notsign", 0xac, 0 },
-/* Sun has used "masculine" for ordmasculine */
- { NULL, 0, 0 }
-};
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/nouiutil.c b/dviware/dvisvgm/libs/ff-woff/fontforge/nouiutil.c
deleted file mode 100644
index 109b13eeb7..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/nouiutil.c
+++ /dev/null
@@ -1,161 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "uiinterface.h"
-#include "splinefont.h"
-
-static void NOUI_IError(const char *format,...) {
- va_list ap;
- char buffer[400], *str;
- va_start(ap,format);
- fprintf(stderr, "Internal Error: " );
- vsnprintf(buffer,sizeof(buffer),format,ap);
- str = buffer;
- fprintf(stderr,"%s",str);
- if ( str[strlen(str)-1]!='\n' )
- putc('\n',stderr);
- va_end(ap);
-}
-
-static void NOUI__LogError(const char *format,va_list ap) {
- char buffer[400], *str;
- vsnprintf(buffer,sizeof(buffer),format,ap);
- str = buffer;
- fprintf(stderr,"%s",str);
- if ( str[strlen(str)-1]!='\n' )
- putc('\n',stderr);
-}
-
-static void NOUI_LogError(const char *format,...) {
- va_list ap;
-
- va_start(ap,format);
- NOUI__LogError(format,ap);
- va_end(ap);
-}
-
-static void NOUI_post_notice(const char *title,const char *statement,...) {
- va_list ap;
- va_start(ap,statement);
- NOUI__LogError(statement,ap);
- va_end(ap);
-}
-
-static void NOUI_post_error(const char *title,const char *statement,...) {
- va_list ap;
- va_start(ap,statement);
- NOUI__LogError(statement,ap);
- va_end(ap);
-}
-
-static int NOUI_ask(const char *title, const char **answers,
- int def, int cancel,const char *question,...) {
-return( def );
-}
-
-static int NOUI_choose(const char *title, const char **choices,int cnt, int def,
- const char *question,...) {
-return( def );
-}
-
-static int NOUI_choose_multiple(char *title, const char **choices,char *sel,
- int cnt, char *buts[2], const char *question,...) {
-return( -1 );
-}
-
-static char *NOUI_ask_string(const char *title, const char *def,
- const char *question,...) {
-return( (char *) def );
-}
-
-static char *NOUI_open_file(const char *title, const char *defaultfile,
- const char *initial_filter) {
-return( NULL );
-}
-
-static char *NOUI_saveas_file(const char *title, const char *defaultfile,
- const char *initial_filter) {
-return( copy(defaultfile) );
-}
-
-static void NOUI_progress_start(int delay, const char *title, const char *line1,
- const char *line2, int tot, int stages) {
-}
-
-static void NOUI_void_void_noop(void) {
-}
-
-static void NOUI_void_int_noop(int useless) {
-}
-
-static int NOUI_int_int_noop(int useless) {
-return( true );
-}
-
-static void NOUI_void_str_noop(const char * useless) {
-}
-
-static int NOUI_alwaystrue(void) {
-return( true );
-}
-
-static int NOUI_DefaultStrokeFlags(void) {
-return( sf_correctdir );
-}
-
-static struct ui_interface noui_interface = {
- NOUI_IError,
- NOUI_post_error,
- NOUI_LogError,
- NOUI_post_notice,
- NOUI_ask,
- NOUI_choose,
- NOUI_choose_multiple,
- NOUI_ask_string,
- NOUI_ask_string, /* password */
- NOUI_open_file,
- NOUI_saveas_file,
-
- NOUI_progress_start,
- NOUI_void_void_noop,
- NOUI_void_void_noop,
- NOUI_void_int_noop,
- NOUI_alwaystrue,
- NOUI_alwaystrue,
- NOUI_int_int_noop,
- NOUI_void_str_noop,
- NOUI_void_str_noop,
- NOUI_void_void_noop,
- NOUI_void_void_noop,
- NOUI_void_int_noop,
- NOUI_void_int_noop,
- NOUI_alwaystrue,
-
- NOUI_void_void_noop,
-
- NOUI_DefaultStrokeFlags
-};
-struct ui_interface *ui_interface = &noui_interface;
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/nowakowskittfinstr.c b/dviware/dvisvgm/libs/ff-woff/fontforge/nowakowskittfinstr.c
deleted file mode 100644
index e56cc7a009..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/nowakowskittfinstr.c
+++ /dev/null
@@ -1,5258 +0,0 @@
-/* Copyright (C) 2000-2012 by
- George Williams, Michal Nowakowski & Alexey Kryukov */
-
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-#define _USE_MATH_DEFINES
-#include <ctype.h>
-#include <math.h>
-
-#include "ttf.h"
-#include "splinefont.h"
-#include "stemdb.h"
-
-extern int autohint_before_generate;
-
-int instruct_diagonal_stems = 1,
- instruct_serif_stems = 1,
- instruct_ball_terminals = 1,
- interpolate_strong = 1,
- interpolate_more_strong = 1, /* not applicable if interpolate_strong==0 */
- control_counters = 0;
-
-/* non-optimized instructions will be using a stack of depth 6, allowing
- * for easy testing whether the code leaves trash on the stack or not.
- */
-#define OPTIMIZE_TTF_INSTRS 1
-#if OPTIMIZE_TTF_INSTRS
-#define STACK_DEPTH 256
-#else
-#define STACK_DEPTH 6
-#endif
-
-/* define some often used instructions */
-#define SVTCA_y (0x00)
-#define SVTCA_x (0x01)
-#define SRP0 (0x10)
-#define SRP1 (0x11)
-#define SRP2 (0x12)
-#define SZP0 (0x13)
-#define SLOOP (0x17)
-#define RTG (0x18)
-#define SMD (0x1a)
-#define DUP (0x20)
-#define DEPTH (0x24)
-#define CALL (0x2b)
-#define MDAP (0x2e)
-#define MDAP_rnd (0x2f)
-#define IUP_y (0x30)
-#define IUP_x (0x31)
-#define SHP_rp2 (0x32)
-#define SHP_rp1 (0x33)
-#define SHPIX (0x38)
-#define IP (0x39)
-#define ALIGNRP (0x3c)
-#define MIAP_rnd (0x3f)
-#define ADD (0x60)
-#define MUL (0x63)
-#define NEG (0x65)
-#define SROUND (0x76)
-#define FLIPPT (0x80)
-#define MDRP_grey (0xc0)
-#define MDRP_min_black (0xc9)
-#define MDRP_min_white (0xca)
-#define MDRP_min_rnd_black (0xcd)
-#define MDRP_rp0_rnd_white (0xd6)
-#define MDRP_rp0_min_rnd_grey (0xdc)
-#define MDRP_rp0_min_rnd_black (0xdd)
-#define MIRP_min_black (0xe9)
-#define MIRP_min_rnd_black (0xed)
-#define MIRP_rp0_min_black (0xf9)
-#define MIRP_rp0_min_rnd_black (0xfd)
-
-
-/******************************************************************************
- *
- * Low-level routines to add data for PUSHes to bytecode instruction stream.
- * pushheader() adds PUSH preamble, then repeating addpoint() adds items.
- *
- * Numbers larger than 65535 are not supported (according to TrueType spec,
- * there can't be more points in a glyph, simple or compound). Negative
- * numbers aren't supported, either. So don't use these functions as they
- * are - there are higher-level ones further below, that handle things nicely.
- *
- ******************************************************************************/
-
-static uint8 *pushheader(uint8 *instrs, int isword, int tot) {
- if ( isword ) {
- if ( tot>8 ) {
- *instrs++ = 0x41; /* N(next word) Push words */
- *instrs++ = tot;
- } else
- *instrs++ = 0xb8+(tot-1); /* Push Words */
- } else {
- if ( tot>8 ) {
- *instrs++ = 0x40; /* N(next byte) Push bytes */
- *instrs++ = tot;
- } else
- *instrs++ = 0xb0+(tot-1); /* Push bytes */
- }
-return( instrs );
-}
-
-static uint8 *addpoint(uint8 *instrs,int isword,int pt) {
- if ( !isword ) {
- *instrs++ = pt;
- } else {
- *instrs++ = pt>>8;
- *instrs++ = pt&0xff;
- }
-return( instrs );
-}
-
-/* Exemplary high-level routines to add PUSH-es to bytecode instruction
- * stream. They handle negative numbers correctly. As they are used
- * in various roles here, some aliases are defined, so that the name
- * speaks for itself in the code.
- */
-
-static uint8 *pushpoint(uint8 *instrs,int pt) {
- instrs = pushheader(instrs,(pt>255)||(pt<0),1);
-return( addpoint(instrs,(pt>255)||(pt<0),pt));
-}
-
-#define pushnum(a, b) pushpoint(a, b)
-
-static uint8 *pushpointstem(uint8 *instrs, int pt, int stem) {
- int isword = pt>255 || stem>255 || pt<0 || stem<0;
- instrs = pushheader(instrs,isword,2);
- instrs = addpoint(instrs,isword,pt);
-return( addpoint(instrs,isword,stem));
-}
-
-#define push2points(a, b, c) pushpointstem(a, b, c)
-#define push2nums(a, b, c) pushpointstem(a, b, c)
-
-/* Push a bunch of point numbers (or other numbers) onto the stack.
- * TODO!
- * Possible strategies:
- * - push point by point (poor space efficiency)
- * - push all the stock at once (currently used, better, but has
- * poor space efficiency in case of a word among several bytes).
- * - push bytes and words separately
- */
-static uint8 *pushpoints(uint8 *instrs, int ptcnt, const int *pts) {
- int i, isword = 0;
- for (i=0; i<ptcnt; i++) if (pts[i]>255 || pts[i]<0) isword=1;
-
- /* It's an error to push more than STACK_DEPTH points. */
- if (ptcnt > STACK_DEPTH)
- IError("Truetype stack overflow will occur.");
-
- if (ptcnt > 255 && !isword) {
- instrs = pushpoints(instrs, 255, pts);
- ptcnt-=255;
- pts+=255;
- }
-
- instrs = pushheader(instrs,isword,ptcnt);
- for (i=0; i<ptcnt; i++) instrs = addpoint(instrs, isword, pts[i]);
-return( instrs );
-}
-
-#define pushnums(a, b, c) pushpoints(a, b, c)
-
-/* As we don't have "push F26dot6" command in truetype instructions,
- * we need to do this by hand. As we can explicitly push only 16-bit
- * quantities, we need to push a F26dot6 value in halves, shift left
- * the more significant half and add halves.
- *
- * There are no checks for overflow!
- */
-static uint8 *pushF26Dot6(uint8 *instrs, double num) {
- int a, elems[3];
- int negative=0;
-
- if (num < 0) {
- negative=1;
- num*=-1.0;
- }
-
- num *= 64;
- a = rint(num);
- elems[0] = a % 65536;
- elems[1] = (int)rint(a / 65536.0) % 65536;
- elems[2] = 16384;
-
- if (elems[1]) {
- instrs = pushpoints(instrs, 3, elems);
- *instrs++ = DUP;
- *instrs++ = MUL;
- *instrs++ = MUL;
- *instrs++ = ADD;
- }
- else instrs = pushpoint(instrs, elems[0]);
-
- if (negative) *instrs++ = NEG;
-
-return( instrs );
-}
-
-/* Compute an EF2Dot14 representation of a floating point number.
- * The number must be in range [-2.0 ... 1.0+(2^14-1)/(2^14) = 1.99993896...]
- *
- * There are no checks for overflow!
- */
-static int EF2Dot14(double num) {
-return( rint(num*16384) );
-}
-
-/* An apparatus for instructing sets of points with given truetype command.
- * The command must pop exactly 1 element from the stack and mustn't push any.
- * These points must be marked as 'touched' elsewhere! this function only
- * generates intructions.
- */
-static uint8 *instructpoints(uint8 *instrs, int ptcnt, const int *pts, uint8 command) {
- int i, use_sloop;
-
- use_sloop = 0;
- use_sloop |= (command == SHP_rp1);
- use_sloop |= (command == SHP_rp2);
- use_sloop |= (command == SHPIX);
- use_sloop |= (command == IP);
- use_sloop |= (command == FLIPPT);
- use_sloop |= (command == ALIGNRP);
- use_sloop = use_sloop && (ptcnt > 3);
-
- instrs = pushpoints(instrs, ptcnt<STACK_DEPTH?ptcnt:STACK_DEPTH-1, pts);
-
- if (use_sloop) {
- *instrs++ = DEPTH;
- *instrs++ = SLOOP;
- *instrs++ = command;
- }
- else for (i=0; i<(ptcnt<STACK_DEPTH?ptcnt:STACK_DEPTH-1); i++)
- *instrs++ = command;
-
- if (ptcnt>=STACK_DEPTH)
- instrs=instructpoints(instrs, ptcnt-(STACK_DEPTH-1), pts+(STACK_DEPTH-1), command);
-
-return( instrs );
-}
-
-/******************************************************************************
- *
- * Low-level routines for getting a cvt index for a stem width, assuming there
- * are any numbers in cvt. Includes legacy code for importing PS Private into
- * CVT.
- *
- ******************************************************************************/
-
-struct ttf_table *SFFindTable(SplineFont *sf,uint32 tag) {
- struct ttf_table *tab;
-
- for ( tab=sf->ttf_tables; tab!=NULL && tab->tag!=tag; tab=tab->next );
-return( tab );
-}
-
-int TTF__getcvtval(SplineFont *sf,int val) {
- int i;
- struct ttf_table *cvt_tab = SFFindTable(sf,CHR('c','v','t',' '));
-
- if ( cvt_tab==NULL ) {
- cvt_tab = chunkalloc(sizeof(struct ttf_table));
- cvt_tab->tag = CHR('c','v','t',' ');
- cvt_tab->maxlen = 200;
- cvt_tab->data = malloc(100*sizeof(short));
- cvt_tab->next = sf->ttf_tables;
- sf->ttf_tables = cvt_tab;
- }
- for ( i=0; (int)sizeof(uint16)*i<cvt_tab->len; ++i ) {
- int tval = (int16) memushort(cvt_tab->data,cvt_tab->len, sizeof(uint16)*i);
- if ( val>=tval-1 && val<=tval+1 )
-return( i );
- }
- if ( (int)sizeof(uint16)*i>=cvt_tab->maxlen ) {
- if ( cvt_tab->maxlen==0 ) cvt_tab->maxlen = cvt_tab->len;
- cvt_tab->maxlen += 200;
- cvt_tab->data = realloc(cvt_tab->data,cvt_tab->maxlen);
- }
- memputshort(cvt_tab->data,sizeof(uint16)*i,val);
- cvt_tab->len += sizeof(uint16);
-return( i );
-}
-
-/* by default sign is unimportant in the cvt
- * For some instructions anyway, but not for MIAP so this routine has
- * been broken in two.
- */
-int TTF_getcvtval(SplineFont *sf,int val) {
- if ( val<0 ) val = -val;
-return( TTF__getcvtval(sf,val));
-}
-
-/* We are given a stem weight and try to find matching one in CVT.
- * If none found, we return -1.
- */
-static StdStem *CVTSeekStem(int xdir, GlobalInstrCt *gic, double value, int can_fail) {
- StdStem *mainstem = xdir?&(gic->stdvw):&(gic->stdhw);
- StdStem *otherstems = xdir?gic->stemsnapv:gic->stemsnaph;
- StdStem *closest = NULL;
- int otherstemcnt = xdir?gic->stemsnapvcnt:gic->stemsnaphcnt;
- int i;
- double mindelta=1e20, delta, closestwidth=1e20;
-
- if (mainstem->width == -1)
-return NULL;
-
- value = fabs(value);
- delta = fabs(mainstem->width - value);
-
- if (delta < mindelta) {
- mindelta = delta;
- closestwidth = rint(mainstem->width);
- closest = mainstem;
- }
-
- for (i=0; i<otherstemcnt; i++) {
- delta = fabs(otherstems[i].width - value);
-
- if (delta < mindelta) {
- mindelta = delta;
- closestwidth = otherstems[i].width;
- closest = otherstems+i;
- }
- }
-
- if (mindelta <= gic->fudge)
-return closest;
- if (value/closestwidth < 1.11 && value/closestwidth > 0.9)
-return closest;
- if (can_fail)
-return NULL;
-return closest;
-}
-
-/******************************************************************************
- ******************************************************************************
- **
- ** We need to initialize global instructing context before autoinstructing
- ** a glyph, because we want to be sure that global hinting tables (cvt, prep,
- ** fpgm) were (or weren't) properly set up.
- **
- ******************************************************************************
- ******************************************************************************/
-
-/* Helper routines: read PS private entry and return its contents.
- */
-static int GetBlueFuzz(SplineFont *sf) {
- char *str, *end;
-
- if ( sf->private==NULL || (str=PSDictHasEntry(sf->private,"BlueFuzz"))==NULL || !isdigit(str[0]) )
-return 1;
-return strtod(str, &end);
-}
-
-/* Return BlueScale as PPEM at which we have to stop suppressing overshoots */
-static int GetBlueScale(SplineFont *sf) {
- char *str, *end;
- double bs;
- int result;
- if ( sf->private==NULL || (str=PSDictHasEntry(sf->private,"BlueScale"))==NULL )
-return 42;
-
- bs = strtod(str, &end);
- if (end==str || bs<=0.0) bs=0.039625;
- bs*=240;
- bs+=0.49;
- bs*=300.0/72.0;
-
- result = (int)rint(bs);
- if (result>255) result = 255; /* Who would need such blue scale??? */
-
-return result;
-}
-
-static real *ParsePSArray(const char *str, int *rescnt) {
- char *end;
- real d, *results=NULL;
-
- if ((rescnt == NULL) || (str == NULL))
-return NULL;
-
- *rescnt = 0;
-
- while (*str)
- {
- while (!isdigit(*str) && *str!='-' && *str!='+' && *str!='.' && *str!='\0')
- ++str;
-
- if ( *str=='\0' )
- break;
-
- d = strtod(str, &end);
-
- if ( d>=-32768 && d<=32767 ) {
- if (*rescnt) {
- results = realloc(results, sizeof(real)*(++(*rescnt)));
- results[*rescnt-1] = d;
- }
- else (results = calloc(*rescnt=1, sizeof(real)))[0] = d;
- }
-
- str = end;
- }
-
-return results;
-}
-
-static real *GetNParsePSArray(SplineFont *sf, const char *name, int *rescnt) {
-return ParsePSArray(PSDictHasEntry(sf->private, name), rescnt);
-}
-
-/* Tell if the two segments, [b1,o1] and [b2,o2] intersect.
- * This can be used to determine whether blues or stems overlap.
- */
-static int SegmentsOverlap(real b1, real o1, real b2, real o2) {
- real t;
-
- if (b1 > o1) {
- t = o1;
- o1 = b1;
- b1 = t;
- }
-
- if (b2 > o2) {
- t = o2;
- o2 = b2;
- b2 = t;
- }
-
-return !((b2 > o1) || (o2 < b1));
-}
-
-/* To be used with qsort() - sorts BlueZone array by base in ascending order.
- */
-static int SortBlues(const void *a, const void *b) {
- return ((BlueZone *)a)->base > ((BlueZone *)b)->base;
-}
-
-/* Import blue data into global instructing context. Include family blues too.
- * We assume that blues are needed for family blues to make sense. If there are
- * only family blues, we treat them as normal blues. Otherwise, if a family blue
- * zone doesn't match any normal blue zone, or if they match perfectly,
- * it is ignored.
- */
-static void GICImportBlues(GlobalInstrCt *gic) {
- int bluecnt = 0;
- int i, j, cnt;
- real *values;
-
- int HasPSBlues =
- (PSDictHasEntry(gic->sf->private, "BlueValues") != NULL) ||
- (PSDictHasEntry(gic->sf->private, "OtherBlues") != NULL);
-
- int HasPSFamilyBlues =
- (PSDictHasEntry(gic->sf->private, "FamilyBlues") != NULL) ||
- (PSDictHasEntry(gic->sf->private, "FamilyOtherBlues") != NULL);
-
- const char *PrimaryBlues = HasPSBlues ? "BlueValues" : "FamilyBlues";
- const char *OtherBlues = HasPSBlues ? "OtherBlues" : "FamilyOtherBlues";
-
- if (HasPSBlues || HasPSFamilyBlues){
- values = GetNParsePSArray(gic->sf, PrimaryBlues, &cnt);
- cnt /= 2;
- if (cnt > 7) cnt = 7;
-
- if (values != NULL) {
- gic->bluecnt = bluecnt = cnt;
-
- /* First pair is a bottom zone (see Type1 specification). */
- gic->blues[0].base = values[1];
- gic->blues[0].overshoot = values[0];
- gic->blues[0].family_base = strtod("NAN", NULL);
-
- /* Next pairs are top zones (see Type1 specification). */
- for (i=1; i<bluecnt; i++) {
- gic->blues[i].family_base = strtod("NAN", NULL);
- gic->blues[i].base = values[2*i];
- gic->blues[i].overshoot = values[2*i+1];
- }
-
- free(values);
- }
-
- values = GetNParsePSArray(gic->sf, OtherBlues, &cnt);
- cnt /= 2;
- if (cnt > 5) cnt = 5;
-
- if (values != NULL) {
- gic->bluecnt += cnt;
-
- /* All pairs are bottom zones (see Type1 specification). */
- for (i=0; i<cnt; i++) {
- gic->blues[i+bluecnt].family_base = strtod("NAN", NULL);
- gic->blues[i+bluecnt].base = values[2*i+1];
- gic->blues[i+bluecnt].overshoot = values[2*i];
- }
-
- free(values);
- bluecnt += cnt;
- }
-
- /* Add family data to blues */
- if (HasPSBlues && HasPSFamilyBlues) {
- values = GetNParsePSArray(gic->sf, "FamilyBlues", &cnt);
- cnt /= 2;
- if (cnt > 7) cnt = 7;
-
- if (values != NULL) {
- /* First pair is a bottom zone (see Type1 specification). */
- for (j=0; j<bluecnt; j++)
- if (isfinite(gic->blues[j].family_base))
- continue;
- else if (values[1] != gic->blues[j].base &&
- SegmentsOverlap(gic->blues[j].base,
- gic->blues[j].overshoot,
- values[0], values[1]))
- gic->blues[j].family_base = values[1];
-
- /* Next pairs are top zones (see Type1 specification). */
- for (i=1; i<cnt; i++) {
- for (j=0; j<bluecnt; j++)
- if (isfinite(gic->blues[j].family_base))
- continue;
- else if (values[2*i] != gic->blues[j].base &&
- SegmentsOverlap(gic->blues[j].base,
- gic->blues[j].overshoot,
- values[2*i], values[2*i+1]))
- gic->blues[j].family_base = values[2*i];
- }
-
- free(values);
- }
-
- values = GetNParsePSArray(gic->sf, "FamilyOtherBlues", &cnt);
- cnt /= 2;
- if (cnt > 5) cnt = 5;
-
- if (values != NULL) {
- /* All pairs are bottom zones (see Type1 specification). */
- for (i=0; i<cnt; i++) {
- for (j=0; j<bluecnt; j++)
- if (isfinite(gic->blues[j].family_base))
- continue;
- else if (values[2*i+1] != gic->blues[j].base &&
- SegmentsOverlap(gic->blues[j].base,
- gic->blues[j].overshoot,
- values[2*i], values[2*i+1]))
- gic->blues[j].family_base = values[2*i+1];
- }
-
- free(values);
- }
- }
- }
- else if (gic->bd->bluecnt) {
- /* If there are no PS private entries, we have */
- /* to use FF's quickly guessed fallback blues. */
- gic->bluecnt = bluecnt = gic->bd->bluecnt;
-
- for (i=0; i<bluecnt; i++) {
- gic->blues[i].family_base = strtod("NAN", NULL);
- gic->blues[i].family_cvtindex = -1;
-
- if (gic->bd->blues[i][1] <= 0) {
- gic->blues[i].base = gic->bd->blues[i][1];
- gic->blues[i].overshoot = gic->bd->blues[i][0];
- }
- else {
- gic->blues[i].base = gic->bd->blues[i][0];
- gic->blues[i].overshoot = gic->bd->blues[i][1];
- }
- }
- }
-
- /* 'highest' and 'lowest' are not to be set yet. */
- for (i=0; i<gic->bluecnt; i++)
- gic->blues[i].highest = gic->blues[i].lowest = -1;
-
- /* I assume ascending order in snap_to_blues(). */
- qsort(gic->blues, gic->bluecnt, sizeof(BlueZone), SortBlues);
-}
-
-/* To be used with qsort() - sorts StdStem array by width in ascending order.
- */
-static int SortStems(const void *a, const void *b) {
- return ((StdStem *)a)->width > ((StdStem *)b)->width;
-}
-
-/* Import stem data into global instructing context. We deal only with
- * horizontal or vertical stems (xdir decides) here. If Std*W is not specified,
- * but there exists StemSnap*, we'll make up a fake Std*V as a fallback.
- * Subtle manipulations with Std*W's value can result in massive change of
- * font appearance at some pixel sizes, because it's used as a base for
- * normalization of all other stems.
- */
-static void GICImportStems(int xdir, GlobalInstrCt *gic) {
- int i, cnt, next;
- real *values;
- const char *s_StdW = xdir?"StdVW":"StdHW";
- const char *s_StemSnap = xdir?"StemSnapV":"StemSnapH";
- StdStem *stdw = xdir?&(gic->stdvw):&(gic->stdhw);
- StdStem **stemsnap = xdir?&(gic->stemsnapv):&(gic->stemsnaph);
- int *stemsnapcnt = xdir?&(gic->stemsnapvcnt):&(gic->stemsnaphcnt);
-
- if ((values = GetNParsePSArray(gic->sf, s_StdW, &cnt)) != NULL) {
- stdw->width = *values;
- free(values);
- }
-
- if ((values = GetNParsePSArray(gic->sf, s_StemSnap, &cnt)) != NULL) {
- *stemsnap = (StdStem *)calloc(cnt, sizeof(StdStem));
-
- for (next=i=0; i<cnt; i++)
- if (values[i] != gic->stdhw.width)
- (*stemsnap)[next++].width = values[i];
-
- if (!next) {
- free(*stemsnap);
- *stemsnap = NULL;
- }
-
- *stemsnapcnt = next;
- free(values);
-
- /* I assume ascending order here and in normalize_stems(). */
- qsort(*stemsnap, *stemsnapcnt, sizeof(StdStem), SortStems);
- }
-
- /* No StdW, but StemSnap exists? */
- if (stdw->width == -1 && *stemsnap != NULL) {
- cnt = *stemsnapcnt;
- i = cnt/2;
- stdw->width = (*stemsnap)[i].width;
- memmove((*stemsnap)+i, (*stemsnap)+i+1, cnt-i-1);
-
- if (--(*stemsnapcnt) == 0) {
- free(*stemsnap);
- *stemsnap = NULL;
- }
- }
-}
-
-/* Assign CVT indices to blues and stems in global instructing context. In case
- * we can't implant it because of already existent cvt table, reassign the cvt
- * indices, picking them from existing cvt table (thus a cvt value can't be
- * considered 'horizontal' or 'vertical', and reliable stem normalization is
- * thus impossible) and adding some for new values.
- */
-static void init_cvt(GlobalInstrCt *gic) {
- int i, cvtindex, cvtsize;
- struct ttf_table *tab;
- uint8 *cvt;
-
- cvtsize = 1;
- if (gic->stdhw.width != -1) cvtsize++;
- if (gic->stdvw.width != -1) cvtsize++;
- cvtsize += gic->stemsnaphcnt;
- cvtsize += gic->stemsnapvcnt;
- cvtsize += gic->bluecnt * 2; /* possible family blues */
-
- cvt = calloc(cvtsize, cvtsize * sizeof(int16));
- cvtindex = 0;
-
- /* Assign cvt indices */
- for (i=0; i<gic->bluecnt; i++) {
- gic->blues[i].cvtindex = cvtindex;
- memputshort(cvt, 2*cvtindex++, rint(gic->blues[i].base));
-
- if (isfinite(gic->blues[i].family_base)) {
- gic->blues[i].family_cvtindex = cvtindex;
- memputshort(cvt, 2*cvtindex++, rint(gic->blues[i].family_base));
- }
- }
-
- if (gic->stdhw.width != -1) {
- gic->stdhw.cvtindex = cvtindex;
- memputshort(cvt, 2*cvtindex++, rint(gic->stdhw.width));
- }
-
- for (i=0; i<gic->stemsnaphcnt; i++) {
- gic->stemsnaph[i].cvtindex = cvtindex;
- memputshort(cvt, 2*cvtindex++, rint(gic->stemsnaph[i].width));
- }
-
- if (gic->stdvw.width != -1) {
- gic->stdvw.cvtindex = cvtindex;
- memputshort(cvt, 2*cvtindex++, rint(gic->stdvw.width));
- }
-
- for (i=0; i<gic->stemsnapvcnt; i++) {
- gic->stemsnapv[i].cvtindex = cvtindex;
- memputshort(cvt, 2*cvtindex++, rint(gic->stemsnapv[i].width));
- }
-
- cvtsize = cvtindex;
- cvt = realloc(cvt, cvtsize * sizeof(int16));
-
- /* Try to implant the new cvt table */
- gic->cvt_done = 0;
-
- tab = SFFindTable(gic->sf, CHR('c','v','t',' '));
-
- if ( tab==NULL ) {
- tab = chunkalloc(sizeof(struct ttf_table));
- tab->next = gic->sf->ttf_tables;
- gic->sf->ttf_tables = tab;
- tab->tag = CHR('c','v','t',' ');
-
- tab->len = tab->maxlen = cvtsize * sizeof(int16);
- if (tab->maxlen >256) tab->maxlen = 256;
- tab->data = cvt;
-
- gic->cvt_done = 1;
- }
- else {
- if (tab->len >= cvtsize * (int)sizeof(int16) &&
- memcmp(cvt, tab->data, cvtsize * sizeof(int16)) == 0)
- gic->cvt_done = 1;
-
- free(cvt);
-
- if (!gic->cvt_done) {
- ff_post_error(_("Can't insert 'cvt'"),
- _("There already exists a 'cvt' table, perhaps legacy. "
- "FontForge can use it, but can't make any assumptions on "
- "values stored there, so generated instructions will be of "
- "lower quality. If legacy hinting is to be scrapped, it is "
- "suggested to clear the `cvt` and repeat autoinstructing. "
- ));
- }
- }
-
- if (gic->cvt_done)
-return;
-
- /* Fallback mode starts here. */
-
- for (i=0; i<gic->bluecnt; i++)
- gic->blues[i].cvtindex =
- TTF_getcvtval(gic->sf, gic->blues[i].base);
-
- if (gic->stdhw.width != -1)
- gic->stdhw.cvtindex =
- TTF_getcvtval(gic->sf, gic->stdhw.width);
-
- for (i=0; i<gic->stemsnaphcnt; i++)
- gic->stemsnaph[i].cvtindex =
- TTF_getcvtval(gic->sf, gic->stemsnaph[i].width);
-
- if (gic->stdvw.width != -1)
- gic->stdvw.cvtindex =
- TTF_getcvtval(gic->sf, gic->stdvw.width);
-
- for (i=0; i<gic->stemsnapvcnt; i++)
- gic->stemsnapv[i].cvtindex =
- TTF_getcvtval(gic->sf, gic->stemsnapv[i].width);
-}
-
-/* We'll need at least STACK_DEPTH stack levels and a twilight point (and thus
- * also a twilight zone). We also currently define some functions in fpgm.
- * We must ensure this is indicated in the 'maxp' table.
- *
- * We also need two storage cells. As we now use SPVFS to set projection
- * vector for diagonal hinting, we have to adjust values taken by SPVFS,
- * so that diagonals look cleanly in all aspect ratios. Adjustments are
- * not trivial to compute, so we do this once (in prep) and store them
- * in storage[0] (for X direction) and storage[1] (for Y direction).
- */
-static void init_maxp(GlobalInstrCt *gic) {
- struct ttf_table *tab = SFFindTable(gic->sf, CHR('m','a','x','p'));
- uint16 zones, twpts, store, fdefs, stack;
-
- if ( tab==NULL ) {
- tab = chunkalloc(sizeof(struct ttf_table));
- tab->next = gic->sf->ttf_tables;
- gic->sf->ttf_tables = tab;
- tab->tag = CHR('m','a','x','p');
- }
-
- if ( tab->len<32 ) {
- tab->data = realloc(tab->data,32);
- memset(tab->data+tab->len,0,32-tab->len);
- tab->len = tab->maxlen = 32;
- }
-
- zones = memushort(tab->data, 32, 7*sizeof(uint16));
- twpts = memushort(tab->data, 32, 8*sizeof(uint16));
- store = memushort(tab->data, 32, 9*sizeof(uint16));
- fdefs = memushort(tab->data, 32, 10*sizeof(uint16));
- stack = memushort(tab->data, 32, 12*sizeof(uint16));
-
- if (gic->fpgm_done && zones<2) zones=2;
- if (gic->fpgm_done && twpts<1) twpts=1;
- if (gic->fpgm_done && gic->prep_done && store<2) store=2;
- if (gic->fpgm_done && fdefs<22) fdefs=22;
- if (stack<STACK_DEPTH) stack=STACK_DEPTH;
-
- memputshort(tab->data, 7*sizeof(uint16), zones);
- memputshort(tab->data, 8*sizeof(uint16), twpts);
- memputshort(tab->data, 9*sizeof(uint16), store);
- memputshort(tab->data,10*sizeof(uint16), fdefs);
- memputshort(tab->data,12*sizeof(uint16), stack);
-}
-
-/* Other hinting software puts certain actions in FPGM to ease developer's life
- * and compress the code. I feel that having a 'standard' library of functions
- * could also help FF users.
- *
- * Caution! This code is heavily relied by autohinting. Any other code should
- * be placed below it. It's good to first clear font's hinting tables, then
- * autohint it, and then insert user's own code and do the manual hinting of
- * glyphs that do need it.
- */
-static void init_fpgm(GlobalInstrCt *gic) {
- uint8 new_fpgm[] =
- {
- /* Function 0: position a point within a blue zone (given via cvt).
- * Note: in case of successful init of 'cvt' and 'prep' this function
- * could be much simpler.
- * Syntax: PUSHB_3 point cvt_of_blue 0 CALL
- */
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x2c, // FDEF
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x13, // SZP0
- 0x4b, // MPPEM
- 0xb0, // PUSHB_1 - under this ppem blues will be specially rounded
- GetBlueScale(gic->sf),
- 0x50, // LT
- 0x58, // IF
- 0xb0, // PUSHB_0
- 0x4a, // 74
- 0x76, // SROUND - round blues a bit up to grid
- 0x59, // EIF
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x23, // SWAP
- 0x3f, // MIAP[rnd] - blue zone positioned here
- 0x18, // RTG - round state for overshoots in monochrome mode
- 0xb0, // PUSHB_1
- 0x06, // 6
- 0x2b, // CALL
- 0x58, // IF
- 0x3d, // RTDG - round state for overshoots in antialiased mode
- 0x59, // EIF
- 0x4b, // MPPEM
- 0xb0, // PUSHB_1 - under following ppem overshoots will be suppressed
- GetBlueScale(gic->sf),
- 0x50, // LT
- 0x58, // IF
- 0x7d, // RDTG - suppress overshoots
- 0x59, // EIF
- 0x20, // DUP
- 0xd4, // MDRP[rp0,rnd,grey]
- 0xb0, // PUSHB_1
- 0x01, // 1
- 0x13, // SZP0
- 0x2e, // MDAP[no-rnd]
- 0x18, // RTG
- 0x2d, // ENDF
-
- /* Function 1: Place given point relatively to previous, maintaining the
- * minimum distance. Then call FPGM 12 to check if the point's gridfitted
- * position is too far from its original position, and correct it, if necessary.
- * Syntax: PUSB_2 point 1 CALL
- */
- 0xb0, // PUSHB_1
- 0x01, // 1
- 0x2c, // FDEF
- 0x20, // DUP
- 0xda, // MDRP[rp0,min,white]
- 0xb0, // PUSHB_1
- 0x0c, // 12
- 0x2b, // CALL
- 0x2d, // ENDF
-
- /* Function 2: Below given ppem, substitute the width with cvt entry.
- * Leave the resulting width on the stack. Used as the first step in
- * normalizing cvt stems, see normalize_stem().
- * Syntax: PUSHX_3 width cvt_index ppem 2 CALL
- */
- 0xb0, // PUSHB_1
- 0x02, // 2
- 0x2c, // FDEF
- 0x4b, // MPPEM
- 0x52, // GT
- 0x58, // IF
- 0x45, // RCVT
- 0x23, // SWAP
- 0x59, // EIF
- 0x21, // POP
- 0x2d, // ENDF
-
- /* Function 3: round a stack element as a black distance, respecting
- * minimum distance of 1px. This is used for rounding stems after width
- * normalization. Often preceeded with SROUND, so finally sets RTG.
- * Leaves the rounded width on the stack.
- * Syntax: PUSHX_2 width_to_be_rounded 3 CALL
- */
- 0xb0, // PUSHB_1
- 0x03, // 3
- 0x2c, // FDEF
- 0x69, // ROUND[black]
- 0x18, // RTG
- 0x20, // DUP
- 0xb0, // PUSHB_1
- 0x40, // 64, that's one pixel as F26Dot6
- 0x50, // LT
- 0x58, // IF
- 0x21, // POP
- 0xb0, // PUSHB_1
- 0x40, // 64
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 4: Position the second edge of a stem that is not normally
- * regularized via cvt (but we snap it to cvt width below given ppem).
- * Vertical stems need special round state when not snapped to cvt
- * (basically, they are shortened by 0.25px before being rounded).
- * Syntax: PUSHX_5 pt cvt_index chg_rp0 ppem 4 CALL
- */
- 0xb0, // PUSHB_1
- 0x04, // 4
- 0x2c, // FDEF
- 0xb0, // PUSHB_1
- 0x06, // 6
- 0x2b, // CALL
- 0x58, // IF
- 0x21, // POP
- 0x23, // SWAP
- 0x21, // POP
- 0x7a, // ROFF
- 0x58, // IF
- 0xdd, // MDRP[rp0,min,rnd,black]
- 0x1b, // ELSE
- 0xcd, // MDRP[min,rnd,black]
- 0x59, // EIF
- 0x1b, // ELSE
- 0x4b, // MPPEM
- 0x52, // GT
- 0x58, // IF
- 0x58, // IF
- 0xfd, // MIRP[rp0,min,rnd,black]
- 0x1b, // ELSE
- 0xed, // MIRP[min,rnd,black]
- 0x59, // EIF
- 0x1b, // ELSE
- 0x23, // SWAP
- 0x21, // POP
- 0xb0, // PUSHB_1
- 0x05, // 5
- 0x2b, // CALL
- 0x58, // IF
- 0xb0, // PUSHB_1
- 0x46, // 70
- 0x76, // SROUND
- 0x59, // EIF
- 0x58, // IF
- 0xdd, // MDRP[rp0,min,rnd,black]
- 0x1b, // ELSE
- 0xcd, // MDRP[min,rnd,black]
- 0x59, // EIF
- 0x59, // EIF
- 0x59, // EIF
- 0x18, // RTG
- 0x2d, // ENDF
-
- /* Function 5: determine if we are hinting vertically. The function
- * is crude and it's use is limited to conditions set by SVTCA[].
- * Syntax: PUSHB_1 5 CALL; leaves boolean on the stack.
- */
- 0xb0, // PUSHB_1
- 0x05, // 5
- 0x2c, // FDEF
- 0x0d, // GFV
- 0x5c, // NOT
- 0x5a, // AND
- 0x2d, // ENDF
-
- /* Function 6: check if we are hinting in grayscale.
- * CAUTION! Older FreeType versions lie if asked.
- * Syntax: PUSHB_1 6 CALL; leaves boolean on the stack.
- */
- 0xb0, // PUSHB_1
- 0x06, // 6
- 0x2c, // FDEF
- 0xb1, // PUSHB_2
- 0x22, // 34
- 0x01, // 1
- 0x88, // GETINFO
- 0x50, // LT
- 0x58, // IF
- 0xb0, // PUSHB_1
- 0x20, // 32
- 0x88, // GETINFO
- 0x5c, // NOT
- 0x5c, // NOT
- 0x1b, // ELSE
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 7: check if we are hinting in cleartype.
- * CAUTION! FreeType doesn't support that, as subpixel
- * filtering is usually done by higher level library.
- * Syntax: PUSHB_1 7 CALL; leaves boolean on the stack.
- */
- 0xb0, // PUSHB_1
- 0x07, // 7
- 0x2c, // FDEF
- 0xb1, // PUSHB_2
- 0x24, // 36
- 0x01, // 1
- 0x88, // GETINFO
- 0x50, // LT
- 0x58, // IF
- 0xb0, // PUSHB_1
- 0x40, // 64
- 0x88, // GETINFO
- 0x5c, // NOT
- 0x5c, // NOT
- 0x1b, // ELSE
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 8: Interpolate a point between
- * two other points and snap it to the grid.
- * Syntax: PUSHX_4 pt_to_ip rp1 rp2 8 CALL;
- */
- 0xb0, // PUSHB_1
- 0x08, // 8
- 0x2c, // FDEF
- 0x12, // SRP2
- 0x11, // SRP1
- 0x20, // DUP
- 0x39, // IP
- 0x2f, // MDAP[rnd]
- 0x2d, // ENDF
-
- /* Function 9: Link a serif-like element edge to the opposite
- * edge of the base stem when rounding down to grid, but ensure
- * that its distance from the reference point is larger than
- * the base stem width at least to a specified amount of pixels.
- * Syntax: PUSHX_3 min_dist inner_pt outer_pt CALL;
- */
- 0xb0, // PUSHB_1
- 0x09, // 9
- 0x2c, // FDEF
- 0x20, // DUP
- 0x7d, // RDTG
- 0xb0, // PUSHB_1
- 0x06, // 6
- 0x2b, // CALL
- 0x58, // IF
- 0xc4, // MDRP[min,grey]
- 0x1b, // ELSE
- 0xcd, // MDRP[min,rnd,black]
- 0x59, // EIF
- 0x20, // DUP
- 0xb0, // PUSHB_1
- 0x03, // 3
- 0x25, // CINDEX
- 0x49, // MD[grid]
- 0x23, // SWAP
- 0x20, // DUP
- 0xb0, // PUSHB_1
- 0x04, // 4
- 0x26, // MINDEX
- 0x4a, // MD[orig]
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x50, // LT
- 0x58, // IF
- 0x8a, // ROLL
- 0x65, // NEG
- 0x8a, // ROLL
- 0x61, // SUB
- 0x20, // DUP
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x50, // LT
- 0x58, // IF
- 0x38, // SHPIX
- 0x1b, // ELSE
- 0x21, // POP
- 0x21, // POP
- 0x59, // EIF
- 0x1b, // ELSE
- 0x8a, // ROLL
- 0x8a, // ROLL
- 0x61, // SUB
- 0x20, // DUP
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x52, // GT
- 0x58, // IF
- 0x38, // SHPIX
- 0x1b, // ELSE
- 0x21, // POP
- 0x21, // POP
- 0x59, // EIF
- 0x59, // EIF
- 0x18, // RTG
- 0x2d, // ENDF
-
- /* Function 10: depending from the hinting mode (grayscale or mono) set
- * rp0 either to pt1 or to pt2. This is used to link serif-like elements
- * either to the opposite side of the base stem or to the same side (i. e.
- * left-to-left and right-to-right).
- * Syntax: PUSHX_3 pt2 pt1 10 CALL
- */
- 0xb0, // PUSHB_1
- 0x0a, // 10
- 0x2c, // FDEF
- 0xb0, // PUSHB_1
- 0x06, // 6
- 0x2b, // CALL
- 0x58, // IF
- 0x21, // POP
- 0x10, // SRP0
- 0x1b, // ELSE
- 0x10, // SRP0
- 0x21, // POP
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 11: similar to FPGM 1, but places a point without
- * maintaining the minimum distance.
- * Syntax: PUSHX_2 point 11 CALL
- */
- 0xb0, // PUSHB_1
- 0x0b, // 11
- 0x2c, // FDEF
- 0x20, // DUP
- 0xd2, // MDRP[rp0,white]
- 0xb0, // PUSHB_1
- 0x0c, // 12
- 0x2b, // CALL
- 0x2d, // ENDF
-
- /* Function 12: Check if the gridfitted position of the point is too far
- * from its original position, and shift it, if necessary. The function is
- * used to place vertical stems, it assures almost linear advance width
- * to PPEM scaling. Shift amount is capped to at most 1 px to prevent some
- * weird artifacts at very small ppems. In cleartype mode, no shift
- * is made at all.
- * Syntax: PUSHX_2 point 12 CALL
- */
- 0xb0, // PUSHB_1
- 0x0c, // 12
- 0x2c, // FDEF
- 0x20, // DUP
- 0x2f, // MDAP[rnd], this is needed for grayscale mode
- 0xb0, // PUSHB_1
- 0x07, // 7
- 0x2b, // CALL
- 0x5c, // NOT
- 0x58, // IF
- 0x20, // DUP
- 0x20, // DUP
- 0x47, // GC[cur]
- 0x23, // SWAP
- 0x46, // GC[orig]
- 0x61, // SUB
- 0x6a, // ROUND[white]
- 0x20, // DUP
- 0x58, // IF
- 0x20, // DUP
- 0x64, // ABS
- 0x62, // DIV
- 0x38, // SHPIX
- 0x1b, // ELSE
- 0x21, // POP
- 0x21, // POP
- 0x59, // EIF
- 0x1b, // ELSE
- 0x21, // POP
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 13: Interpolate a HStem edge's reference point between two other points
- * and snap it to the grid. Then compare its new position with the ungridfitted
- * position of the second edge. If the gridfitted point belongs to the bottom edge
- * and now it is positioned above the top edge's original coordinate, then shift it
- * one pixel down; similarly, if the interpolation resulted in positioning the top
- * edge below the original coordinate of the bottom edge, shift it one pixel up.
- * Syntax: PUSHX_6 other_edge_refpt pt_to_ip rp1 rp2 13 CALL
- */
- 0xb0, // PUSHB_1
- 0x0d, // 13
- 0x2c, // FDEF
- 0x12, // SRP2
- 0x11, // SRP1
- 0x20, // DUP
- 0x20, // DUP
- 0x39, // IP
- 0x2f, // MDAP[rnd]
- 0x20, // DUP
- 0x8a, // ROLL
- 0x20, // DUP
- 0x47, // GC[orig]
- 0x8a, // ROLL
- 0x46, // GC[cur]
- 0x61, // SUB
- 0x23, // SWAP
- 0x8a, // ROLL
- 0x20, // DUP
- 0x8a, // ROLL
- 0x23, // SWAP
- 0x4A, // MD[orig]
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x50, // LT
- 0x58, // IF
- 0x23, // SWAP
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x52, // GT
- 0x58, // IF
- 0xb0, // PUSHB_1
- 0x40, // 64
- 0x38, // SHPIX
- 0x1b, // ELSE
- 0x21, // POP
- 0x59, // EIF
- 0x1b, // ELSE
- 0x23, // SWAP
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x50, // LT
- 0x58, // IF
- 0xb0, // PUSHB_1
- 0x40, // 64
- 0x65, // NEG
- 0x38, // SHPIX
- 0x1b, // ELSE
- 0x21, // POP
- 0x59, // EIF
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 14: Link two points using MDRP without maintaining
- * the minimum distance. In antialiased mode use rounding to
- * double grid for this operation, otherwise ensure there is no
- * distance between those two points below the given PPEM (i. e.
- * points are aligned). The function is used for linking nested
- * stems to each other, and guarantees their relative positioning
- * is preserved in the gridfitted outline.
- * Syntax: PUSHX_4 ppem ref_pt base_pt 14 CALL;
- */
- 0xb0, // PUSHB_1
- 0x0e, // 14
- 0x2c, // FDEF
- 0xb0, // PUSHB_1
- 0x06, // 6
- 0x2b, // CALL
- 0x58, // IF
- 0x3d, // RTDG
- 0xd6, // MDRP[rp0,rnd,white]
- 0x18, // RTG
- 0x21, // POP
- 0x21, // POP
- 0x1b, // ELSE
- 0x20, // DUP
- 0xd6, // MDRP[rp0,rnd,white]
- 0x8a, // ROLL
- 0x4b, // MPPEM
- 0x52, // GT
- 0x58, // IF
- 0x20, // DUP
- 0x8a, // ROLL
- 0x23, // SWAP
- 0x49, // MD[grid]
- 0x20, // DUP
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x55, // NEQ
- 0x58, // IF
- 0x38, // SHPIX
- 0x1b, // ELSE
- 0x21, // POP
- 0x21, // POP
- 0x59, // EIF
- 0x1b, // ELSE
- 0x21, // POP
- 0x21, // POP
- 0x59, // EIF
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 15: similar to FPGM 1, but used to position a stem
- * relatively to the previous stem preserving the counter width
- * equal to the distance between another pair of previously positioned
- * stems. Thus it serves nearly the same purpose as PS counter hints.
- * Syntax: PUSHX_6 master_counter_start_pt master_counter_end_pt
- * current_counter_start_pt current_counter_end_pt ppem 15 CALL;
- */
- 0xb0, // PUSHB_1
- 0x0f, // 15
- 0x2c, // FDEF
- 0x23, // SWAP
- 0x20, // DUP
- 0xd6, // MDRP[rp0,rnd,white]
- 0x20, // DUP
- 0x2f, // MDAP[rnd], this is needed for grayscale mode
- 0xb0, // PUSHB_1
- 0x07, // 7
- 0x2b, // CALL
- 0x5c, // NOT
- 0x58, // IF
- 0x23, // SWAP
- 0x20, // DUP
- 0x58, // IF
- 0x4b, // MPPEM
- 0x53, // GTEQ
- 0x1b, // ELSE
- 0x21, // POP
- 0xb0, // PUSHB_1
- 0x01, // 1
- 0x59, // EIF
- 0x58, // IF
- 0x8a, // ROLL
- 0xb0, // PUSHB_1
- 0x04, // 4
- 0x26, // MINDEX
- 0x49, // MD[grid]
- 0x23, // SWAP
- 0x8a, // ROLL
- 0x23, // SWAP
- 0x20, // DUP
- 0x8a, // ROLL
- 0x49, // MD[grid]
- 0x8a, // ROLL
- 0x23, // SWAP
- 0x61, // SUB
- 0x38, // SHPIX
- 0x1b, // ELSE
- 0x21, // POP
- 0x21, // POP
- 0x21, // POP
- 0x21, // POP
- 0x59, // EIF
- 0x1b, // ELSE
- 0x21, // POP
- 0x21, // POP
- 0x21, // POP
- 0x21, // POP
- 0x21, // POP
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 16: Same as FPGM 1, but calls FPGM 18 rather than FPGM 12
- * and thus takes 3 arguments.
- * Syntax: PUSHX_3 ref_point point 16 CALL
- */
- 0xb0, // PUSHB_1
- 0x10, // 16
- 0x2c, // FDEF
- 0x20, // DUP
- 0xda, // MDRP[rp0,min,white]
- 0xb0, // PUSHB_1
- 0x12, // 18
- 0x2b, // CALL
- 0x2d, // ENDF
-
- /* Function 17: Same as FPGM 11, but calls FPGM 18 rather than FPGM 12
- * and thus takes 3 arguments.
- * Syntax: PUSHX_3 ref_point point 17 CALL
- */
- 0xb0, // PUSHB_1
- 0x11, // 17
- 0x2c, // FDEF
- 0x20, // DUP
- 0xd2, // MDRP[rp0,white]
- 0xb0, // PUSHB_1
- 0x12, // 18
- 0x2b, // CALL
- 0x2d, // ENDF
-
- /* Function 18: this is a special version of FPGM 12, used when the counter
- * control is enabled but doesn't directly affect the stem which is going to
- * be positioned. Unlike FPGM 12, it doesn't just attempt to position a point
- * closely enough to its original coordinate, but also checks if the previous
- * stem has already been shifted relatively to its "ideal" position FPGM 12 would
- * determine. If so, then the desired point position is corrected relatively to
- * the current placement of the previous stem.
- * Syntax: PUSHX_3 ref_point point 18 CALL
- */
- 0xb0, // PUSHB_1
- 0x12, // 18
- 0x2c, // FDEF
- 0x20, // DUP
- 0x2f, // MDAP[rnd], this is needed for grayscale mode
- 0xb0, // PUSHB_1
- 0x07, // 7
- 0x2b, // CALL
- 0x5c, // NOT
- 0x58, // IF
- 0x20, // DUP
- 0x20, // DUP
- 0x47, // GC[cur]
- 0x23, // SWAP
- 0x46, // GC[orig]
- 0x61, // SUB
- 0x6a, // ROUND[white]
- 0x8a, // ROLL
- 0x20, // DUP
- 0x47, // GC[cur]
- 0x23, // SWAP
- 0x46, // GC[orig]
- 0x23, // SWAP
- 0x61, // SUB
- 0x6a, // ROUND[white]
- 0x60, // ADD
- 0x20, // DUP
- 0x58, // IF
- 0x20, // DUP
- 0x64, // ABS
- 0x62, // DIV
- 0x38, // SHPIX
- 0x1b, // ELSE
- 0x21, // POP
- 0x21, // POP
- 0x59, // EIF
- 0x1b, // ELSE
- 0x21, // POP
- 0x21, // POP
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 19: used to align a point relatively to a diagonal line,
- * specified by two other points. First we check if the point going
- * to be positioned doesn't deviate too far from the line in the original
- * outline. If the deviation is small enough to neglect it, we use ALIGNRP
- * to position the point, otherwise MDRP is used instead. We can't just
- * always use MDRP, because this command may produce wrong results at
- * small PPEMs, if the original and gridfitted coordinates of the line end
- * points specify slightly different unit vectors.
- * Syntax: point diag_start_point diag_end_point 19 CALL
- */
- 0xb0, // PUSHB_1
- 0x13, // 19
- 0x2c, // FDEF
- 0x20, // DUP
- 0x8a, // ROLL
- 0x20, // DUP
- 0x8a, // ROLL
- 0x87, // SDPVTL[orthogonal]
- 0x20, // DUP
- 0xb0, // PUSHB_1
- 0x03, // 4
- 0x25, // CINDEX
- 0x4a, // MD[orig]
- 0x64, // ABS
- 0x23, // SWAP
- 0x8a, // ROLL
- 0x07, // SPVTL[orthogonal]
- 0xb0, // PUSHB_1
- 0x20, // 32
- 0x50, // LT
- 0x58, // IF
- 0x3c, // ALIGNRP
- 0x1b, // ELSE
- 0xc0, // MDRP[grey]
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 20: compute adjustments for X and Y components of projection
- * vector, for aspect ratios different than 1:1, and store them
- * in storage[0] and storage[1] respectively.
- * Syntax: 20 CALL (use it only ONCE, from PREP table).
- */
- 0xb0, // PUSHB_1
- 0x14, // 20
- 0x2c, // FDEF
- 0xb3, // PUSHB_4 (we normally need no adjustments)
- 0x00, // 0
- 0x40, // 1.0 (F26Dot6)
- 0x01, // 1
- 0x40, // 1.0 (F26Dot6)
- 0x42, // WS
- 0x42, // WS
- 0x01, // SVTCA[x-axis]
- 0x4b, // MPPEM
- 0xb8, // PUSHW_1
- 0x10, // 4096
- 0x00, // ...still that 4096
- 0x63, // MUL (so we have PPEM along X casted to F26Dot6)
- 0x00, // SVTCA[y-axis]
- 0x4b, // MPPEM
- 0xb8, // PUSHW_1
- 0x10, // 4096
- 0x00, // ...still that 4096
- 0x63, // MUL (so we have PPEM along Y casted to F26Dot6)
- 0x20, // DUP
- 0x8a, // ROLL
- 0x20, // DUP
- 0x8a, // ROLL
- 0x55, // NEQ
- 0x58, // IF (if PPEM along X != PPEM along Y)
- 0x20, // DUP
- 0x8a, // ROLL
- 0x20, // DUP
- 0x8a, // ROLL
- 0x52, // GT
- 0x58, // IF (if PPEM along X < PPEM along Y)
- 0x23, // SWAP
- 0x62, // DIV
- 0x20, // DUP
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x23, // SWAP
- 0x42, // WS
- 0x1b, // ELSE (if PPEM along X > PPEM along Y)
- 0x62, // DIV
- 0x20, // DUP
- 0xb0, // PUSHB_1
- 0x01, // 1
- 0x23, // SWAP
- 0x42, // WS
- 0x59, // EIF
- 0x20, // DUP [A LOOP STARTS HERE]
- 0xb0, // PUSHB_1
- 0x40, // 1.0 (F26Dot6)
- 0x52, // GT
- 0x58, // IF (bigger adjustment is greater than 1.0 => needs fixing)
- 0xb2, // PUSHB_3
- 0x00, // 0
- 0x20, // 0.5 (F26Dot6)
- 0x00, // 0
- 0x43, // RS
- 0x63, // MUL
- 0x42, // WS (we halved adjustment for X)
- 0xb2, // PUSHB_3
- 0x01, // 1
- 0x20, // 0.5 (F26Dot6)
- 0x01, // 1
- 0x43, // RS
- 0x63, // MUL
- 0x42, // WS (we halved adjustment for Y)
- 0xb0, // PUSHB_1
- 0x20, // 0.5 (F26Dot6)
- 0x63, // MUL (we halved the bigger adjustment)
- 0xb0, // PUSHB_1
- 0x19, // 25
- 0x65, // NEG
- 0x1c, // JMPR (go back to the start of the loop)
- 0x21, // POP
- 0x59, // EIF
- 0x1b, // ELSE (if PPEM along X == PPEM along Y)
- 0x21, // POP
- 0x21, // POP
- 0x59, // EIF
- 0x2d, // ENDF
-
- /* Function 21: call it before SFVFS or SPVFS, so that the vector
- * passed is aspect-ratio corrected.
- * Syntax: x y 21 CALL
- */
- 0xb0, // PUSHB_1
- 0x15, // 21
- 0x2c, // FDEF
- 0xb0, // PUSHB_1
- 0x01, // 1
- 0x43, // RS
- 0x63, // MUL
- 0x23, // SWAP
- 0xb0, // PUSHB_1
- 0x00, // 0
- 0x43, // RS
- 0x63, // MUL
- 0x23, // SWAP
- 0x2d // ENDF
- };
-
- struct ttf_table *tab = SFFindTable(gic->sf, CHR('f','p','g','m'));
-
- if ( tab==NULL ) {
- /* We have to create such table. */
- tab = chunkalloc(sizeof(struct ttf_table));
- tab->next = gic->sf->ttf_tables;
- gic->sf->ttf_tables = tab;
- tab->tag = CHR('f','p','g','m');
- tab->len = 0;
- }
-
- if (tab->len==0 ||
- (tab->len < (int)sizeof(new_fpgm) &&
- !memcmp(tab->data, new_fpgm, tab->len)))
- {
- /* We can safely update font program. */
- tab->len = tab->maxlen = sizeof(new_fpgm);
- tab->data = realloc(tab->data, sizeof(new_fpgm));
- memmove(tab->data, new_fpgm, sizeof(new_fpgm));
- gic->fpgm_done = 1;
- }
- else {
- /* there already is a font program. */
- gic->fpgm_done = 0;
- if (tab->len >= (int)sizeof(new_fpgm))
- if (!memcmp(tab->data, new_fpgm, sizeof(new_fpgm)))
- gic->fpgm_done = 1; /* it's ours. */
-
- /* Log warning message. */
- if (!gic->fpgm_done)
- ff_post_error(_("Can't insert 'fpgm'"),
- _("There exists a 'fpgm' code that seems incompatible with "
- "FontForge's. Instructions generated will be of lower "
- "quality. If legacy hinting is to be scrapped, it is "
- "suggested to clear the `fpgm` and repeat autoinstructing. "
- "It will be then possible to append user's code to "
- "FontForge's 'fpgm', but due to possible future updates, "
- "it is extremely advised to use high numbers for user's "
- "functions."
- ));
- }
-}
-
-/* When initializing global instructing context, we want to set up the 'prep'
- * table in order to apply family blues and normalize stem widths for monochrome
- * display.
- *
- * The stem normalizer is heavily based on simple concept from FreeType2.
- *
- * First round the StdW. Then for each StemSnap (going outwards from StdW) check
- * if it's within 1px from its already rounded neighbor, and if so, snap it
- * before rounding. From all vertical stems (but not StdHW itself), 0.25px is
- * subtracted before rounding. Similar method is used for non-cvt stems, they're
- * snapped to the closest standard width if possible.
- *
- * NOTE: because of tiny scaling issues, we have to compute ppem at which each
- * stem stops being snapped to its already-rounded neighbor here instead of
- * relegating this to the truetype bytecide interpreter. We can't simply rely
- * on cvt cut-in.
- */
-
-static int compute_blue_height(real val, int EM, int bluescale, int ppem) {
- int scaled_val = rint((rint(fabs(val)) * ppem * 64)/EM);
- if (ppem < bluescale) scaled_val += 16;
-return (scaled_val + 32) / 64 * (val / fabs(val));
-}
-
-static uint8 *use_family_blues(uint8 *prep_head, GlobalInstrCt *gic) {
- int i, h1, h2, stopat;
- int bs = GetBlueScale(gic->sf);
- int EM = gic->sf->ascent + gic->sf->descent;
- int callargs[3];
-
- for (i=0; i<gic->bluecnt; i++) {
- if (isfinite(gic->blues[i].family_base))
- {
- for (stopat=0; stopat<32768; stopat++) {
- h1 = compute_blue_height(gic->blues[i].base, EM, bs, stopat);
- h2 = compute_blue_height(gic->blues[i].family_base, EM, bs, stopat);
- if (abs(h1 - h2) > 1) break;
- }
-
- callargs[0] = gic->blues[i].family_cvtindex;
- callargs[1] = stopat;
- callargs[2] = 2;
-
- prep_head = pushnum(prep_head, gic->blues[i].cvtindex);
- *prep_head++ = DUP;
- *prep_head++ = 0x45; //RCVT
- prep_head = pushnums(prep_head, 3, callargs);
- *prep_head++ = CALL;
- *prep_head++ = 0x44; //WCVTP
- }
- }
-
- return prep_head;
-}
-
-/* Return width (in pixels) of given stem, taking snaps into account.
- */
-#define SNAP_THRESHOLD (64)
-static int compute_stem_width(int xdir, StdStem *stem, int EM, int ppem) {
- int scaled_width; /* in 1/64th pixels */
- int snapto_width; /* in 1/64th pixels */
-
- scaled_width = (int)rint((rint(fabs(stem->width)) * ppem * 64.0)/EM);
- if (scaled_width < 64) scaled_width = 64;
-
- if (stem->snapto != NULL)
- {
- if (stem->stopat > ppem) {
- snapto_width = 64*compute_stem_width(xdir, stem->snapto, EM, ppem);
-
- if (abs(snapto_width - scaled_width) < SNAP_THRESHOLD)
- scaled_width = snapto_width;
- }
-
- if (xdir) scaled_width -= 16;
- }
-
-return (scaled_width + 32) / 64;
-}
-
-/* Normalize a single stem. The code generated assumes there is a scaled stem
- * width on bytecode interpreter's stack, and leaves normalized width there.
- */
-static uint8 *normalize_stem(uint8 *prep_head, int xdir, StdStem *stem, GlobalInstrCt *gic) {
- int callargs[3];
- int i;
-
- stem->stopat = 32767;
-
- if (stem->snapto != NULL)
- {
- /* compute ppem at which to stop snapping stem to stem->snapto */
- int EM = gic->sf->ascent + gic->sf->descent;
-
- for (i=7; i<32768; i++) {
- int width_parent = compute_stem_width(xdir, stem->snapto, EM, i);
- int width_me = compute_stem_width(xdir, stem, EM, i);
-
- if (width_parent != width_me) {
- stem->stopat = i;
- break;
- }
- }
-
- /* snap if below given ppem */
- callargs[0] = stem->snapto->cvtindex;
- callargs[1] = stem->stopat;
- callargs[2] = 2;
- prep_head = pushnums(prep_head, 3, callargs);
- *prep_head++ = CALL;
-
- /* Round[black], respecting minimum distance of 1 px */
- /* Vertical stems (but not StdVW) use special rounding threshold. */
- /* The rounding function restores default round state at the end. */
- if (xdir) {
- prep_head = push2nums(prep_head, 3, 70);
- *prep_head++ = SROUND;
- }
- else prep_head = pushnum(prep_head, 3);
-
- *prep_head++ = CALL;
- }
- else {
- /* simply round[black] respecting minimum distance of 1 px */
- prep_head = pushnum(prep_head, 3);
- *prep_head++ = CALL;
- }
-
-return prep_head;
-}
-
-/* Append the code for normalizing standard stems' widths to 'prep'.
- */
-static uint8 *normalize_stems(uint8 *prep_head, int xdir, GlobalInstrCt *gic) {
- int i, t;
- StdStem *mainstem = xdir?&(gic->stdvw):&(gic->stdhw);
- StdStem *otherstems = xdir?gic->stemsnapv:gic->stemsnaph;
- int otherstemcnt = xdir?gic->stemsnapvcnt:gic->stemsnaphcnt;
-
- if (mainstem->width == -1)
-return prep_head;
-
- /* set up the standard width */
- mainstem->snapto = NULL;
- *prep_head++ = xdir?SVTCA_x:SVTCA_y;
- prep_head = pushnum(prep_head, mainstem->cvtindex);
- *prep_head++ = DUP;
- *prep_head++ = 0x45; //RCVT
- prep_head = normalize_stem(prep_head, xdir, mainstem, gic);
- *prep_head++ = 0x44; //WCVTP
-
- /* set up other standard widths */
- for (i=0; i<otherstemcnt && otherstems[i].width < mainstem->width; i++);
- t = i-1;
-
- for (i=t; i>=0; i--) {
- otherstems[i].snapto = i==t?mainstem:otherstems+i+1;
- prep_head = pushnum(prep_head, otherstems[i].cvtindex);
- *prep_head++ = DUP;
- *prep_head++ = 0x45; //RCVT
- prep_head = normalize_stem(prep_head, xdir, otherstems+i, gic);
- *prep_head++ = 0x44; //WCVTP
- }
-
- for (i=t+1; i<otherstemcnt; i++) {
- otherstems[i].snapto = i==t+1?mainstem:otherstems+i-1;
- prep_head = pushnum(prep_head, otherstems[i].cvtindex);
- *prep_head++ = DUP;
- *prep_head++ = 0x45; //RCVT
- prep_head = normalize_stem(prep_head, xdir, otherstems+i, gic);
- *prep_head++ = 0x44; //WCVTP
- }
-
-return prep_head;
-}
-
-/* Turning dropout control on will dramatically improve mono rendering, even
- * without further hinting, especcialy for light typefaces. And turning hinting
- * off at veeery small pixel sizes is required, because hints tend to visually
- * tear outlines apart when not having enough workspace.
- *
- * We also normalize stem widths here, this usually massively improves overall
- * consistency. We currently do this only for monochrome rendering (this
- * includes WinXP's cleartype).
- *
- * TODO! We should take 'gasp' table into account and set up blues here.
- */
-static void init_prep(GlobalInstrCt *gic) {
- uint8 new_prep_preamble[] =
- {
- /* Enable dropout control. FreeType 2.3.7 need explicit SCANTYPE. */
- 0xb8, // PUSHW_1
- 0x01, // 511
- 0xff, // ...still that 511
- 0x85, // SCANCTRL
- 0xb0, // PUSHB_1
- 0x01, // 1
- 0x8d, // SCANTYPE
-
- /* Measurements are taken along Y axis */
- 0x00, // SVTCA[y-axis]
-
- /* Turn hinting off at very small pixel sizes */
- 0x4b, // MPPEM
- 0xb0, // PUSHB_1
- 0x08, // 8 - hinting threshold - should be configurable
- 0x50, // LT
- 0x58, // IF
- 0xb1, // PUSHB_2
- 0x01, // 1
- 0x01, // 1
- 0x8e, // INSTCTRL
- 0x59, // EIF
-
- /* Determine the cvt cut-in used */
- 0xb1, // PUSHB_2
- 0x46, // 70/64 = about 1.094 pixel (that's our default setting)
- 0x06, // 6
- 0x2b, // CALL
- 0x58, // IF
- 0x21, // POP
- 0xb0, // PUSHB_1
- 0x10, // 16/64 = 0.25 pixel (very low cut-in for grayscale mode)
- 0x59, // EIF
- 0x4b, // MPPEM
- 0xb0, // PUSHB_1
- 0x14, // 20 PPEM - a threshold below which we'll use larger CVT cut-in
- 0x52, // GT
- 0x58, // IF
- 0x21, // POP
- 0xb0, // PUSHB_1
- 0x80, // 128/64 = 2 pixels (extreme regularization for small ppems)
- 0x59, // EIF
- 0x1d // SCVTCI
- };
-
- int preplen = sizeof(new_prep_preamble);
- int prepmaxlen = preplen;
- uint8 *new_prep, *prep_head;
- struct ttf_table *tab;
-
- if (gic->cvt_done) {
- prepmaxlen += 48 + 38*(gic->stemsnaphcnt + gic->stemsnapvcnt);
- prepmaxlen += 14*(gic->bluecnt);
- }
-
- if (gic->fpgm_done)
- prepmaxlen += 3;
-
- new_prep = calloc(prepmaxlen, sizeof(uint8));
- memmove(new_prep, new_prep_preamble, preplen*sizeof(uint8));
- prep_head = new_prep + preplen;
-
- if (gic->cvt_done && gic->fpgm_done) {
- /* Apply family blues. */
- prep_head = use_family_blues(prep_head, gic);
-
- /* Normalize stems (only in monochrome mode) */
- prep_head = pushnum(prep_head, 6);
- *prep_head++ = CALL;
- *prep_head++ = 0x5c; // NOT
- *prep_head++ = 0x58; // IF
- prep_head = normalize_stems(prep_head, 0, gic);
- prep_head = normalize_stems(prep_head, 1, gic);
- *prep_head++ = 0x59; // EIF
- }
-
- /* compute adjustments for projection vector */
- if (gic->fpgm_done) {
- prep_head = pushnum(prep_head, 20);
- *prep_head++ = CALL;
- }
-
- preplen = prep_head - new_prep;
-
- tab = SFFindTable(gic->sf, CHR('p','r','e','p'));
-
- if ( tab==NULL ) {
- /* We have to create such table. */
- tab = chunkalloc(sizeof(struct ttf_table));
- tab->next = gic->sf->ttf_tables;
- gic->sf->ttf_tables = tab;
- tab->tag = CHR('p','r','e','p');
- tab->len = 0;
- }
-
- if (tab->len==0 ||
- (tab->len < preplen && !memcmp(tab->data, new_prep, tab->len)))
- {
- /* We can safely update cvt program. */
- tab->len = tab->maxlen = preplen;
- tab->data = realloc(tab->data, preplen);
- memmove(tab->data, new_prep, preplen);
- gic->prep_done = 1;
- }
- else {
- /* there already is a font program. */
- gic->prep_done = 0;
- if (tab->len >= preplen)
- if (!memcmp(tab->data, new_prep, preplen))
- gic->prep_done = 1; /* it's ours */
-
- /* Log warning message. */
- if (!gic->prep_done)
- ff_post_error(_("Can't insert 'prep'"),
- _("There exists a 'prep' code incompatible with FontForge's. "
- "It can't be guaranteed it will work well. It is suggested "
- "to allow FontForge to insert its code and then append user"
- "'s own."
- ));
- }
-
- free(new_prep);
-}
-
-/*
- * Initialize Global Instructing Context
- */
-#define EDGE_FUZZ (500.0)
-void InitGlobalInstrCt(GlobalInstrCt *gic, SplineFont *sf, int layer,
- BlueData *bd) {
- BlueData _bd;
-
- if (bd == NULL) {
- QuickBlues(sf,layer,&_bd);
- bd = &_bd;
- }
-
- gic->sf = sf;
- gic->bd = bd;
- gic->layer = layer;
- gic->fudge = (sf->ascent+sf->descent)/EDGE_FUZZ;
-
- gic->cvt_done = false;
- gic->fpgm_done = false;
- gic->prep_done = false;
-
- gic->bluecnt = 0;
- gic->stdhw.width = -1;
- gic->stemsnaph = NULL;
- gic->stemsnaphcnt = 0;
- gic->stdvw.width = -1;
- gic->stemsnapv = NULL;
- gic->stemsnapvcnt = 0;
-
- GICImportBlues(gic);
- GICImportStems(0, gic); /* horizontal stems */
- GICImportStems(1, gic); /* vertical stems */
-
- init_cvt(gic);
- init_fpgm(gic);
- init_prep(gic);
- init_maxp(gic);
-}
-
-/*
- * Finalize Global Instructing Context
- */
-void FreeGlobalInstrCt(GlobalInstrCt *gic) {
- gic->sf = NULL;
- gic->bd = NULL;
- gic->fudge = 0;
-
- gic->cvt_done = false;
- gic->fpgm_done = false;
- gic->prep_done = false;
-
- gic->bluecnt = 0;
- gic->stdhw.width = -1;
- if (gic->stemsnaphcnt != 0) free(gic->stemsnaph);
- gic->stemsnaphcnt = 0;
- gic->stemsnaph = NULL;
- gic->stdvw.width = -1;
- if (gic->stemsnapvcnt != 0) free(gic->stemsnapv);
- gic->stemsnapvcnt = 0;
- gic->stemsnapv = NULL;
-}
-
-/******************************************************************************
- ******************************************************************************
- **
- ** Stuff for managing global instructing context ends here. Now we'll deal
- ** with single glyphs.
- **
- ** Many functions here need large or similar sets of arguments. I decided to
- ** define an '(local) instructing context' to have them in one place and keep
- ** functions' argument lists reasonably short. I first need to define some
- ** internal sub-structures for instructing diagonal stems. Similar structures
- ** for CVT management (based on PS Private) are defined in splinefont.h, and
- ** were initialized handled above.
- **
- ******************************************************************************
- ******************************************************************************/
-
-/* A line, described by two points */
-typedef struct pointvector {
- PointData *pd1, *pd2;
- int done;
-} PointVector;
-
-/* In this structure we store information about diagonales,
- relatively to which the given point should be positioned */
-typedef struct diagpointinfo {
- struct pointvector line[2];
- int count;
-} DiagPointInfo;
-
-typedef struct instrct {
- /* Things that are global for font and should be
- initialized before instructing particular glyph. */
- GlobalInstrCt *gic;
-
- /* Here things for this particular glyph start. */
- SplineChar *sc;
- SplineSet *ss;
-
- /* instructions */
- uint8 *instrs; /* the beginning of the instructions */
- uint8 *pt; /* the current position in the instructions */
-
- /* properties indexed by contour number */
- int *contourends; /* points ending their contours. Null-terminated. */
- uint8 *clockwise; /* is given contour clockwise? */
-
- /* properties, indexed by ttf point index. Some could be compressed. */
- int ptcnt; /* number of points in this glyph */
- BasePoint *bp; /* point coordinates */
- uint8 *touched; /* touchflags; points explicitly instructed */
- uint8 *affected; /* touchflags; almost touched, but optimized out */
-
- /* data from stem detector */
- GlyphData *gd;
-
- /* stuff for hinting diagonals */
- int diagcnt;
- StemData **diagstems;
- DiagPointInfo *diagpts; /* indexed by ttf point index */
-
- /* stuff for hinting edges (stems, blues, strong point interpolation). */
- int xdir; /* direction flag: x=true, y=false */
- int cdir; /* is current contour outer? - blues need this */
- struct __edge {
- real base; /* where the edge is */
- int refpt; /* best ref. point for an edge, ttf index, -1 if none */
- int refscore; /* its quality, for searching better one; 0 if none */
- int othercnt; /* count of other points to instruct for this edge */
- int *others; /* their ttf indices, optimize_edge() is advised */
- } edge;
-
- /* Some variables for tracking graphics state */
- int rp0;
-} InstrCt;
-
-/******************************************************************************
- *
- * Low-level routines for manipulting and classifying splinepoints
- *
- ******************************************************************************/
-
-/* Find previous point index on the contour. */
-static int PrevOnContour(int *contourends, int p) {
- int i;
-
- if (p == 0) return contourends[0];
- else {
- for (i=0; contourends[i+1]; i++)
- if (contourends[i]+1 == p)
- return contourends[i+1];
-
- return p-1;
- }
-}
-
-/* Find next point index on the contour. */
-static int NextOnContour(int *contourends, int p) {
- int i;
-
- if (p == 0) return 1;
- else {
- for (i=0; contourends[i]; i++) {
- if (contourends[i] == p) {
- if (i==0) return 0;
- else return contourends[i-1]+1;
- }
- }
- return p+1;
- }
-}
-
-/* For hinting stems, I found it needed to check if candidate point for
- * instructing is pararell to hint's direction to avoid snapping wrong points.
- * I splitted the routine into two, as sometimes it may be needed to check
- * the angle to be strictly almost the same, not just pararell.
- */
-static int __same_angle(int *contourends, BasePoint *bp, int p, double angle) {
- int PrevPoint, NextPoint;
- double PrevTangent, NextTangent;
-
- PrevPoint = PrevOnContour(contourends, p);
- NextPoint = NextOnContour(contourends, p);
- PrevTangent = atan2(bp[p].y - bp[PrevPoint].y, bp[p].x - bp[PrevPoint].x);
- NextTangent = atan2(bp[NextPoint].y - bp[p].y, bp[NextPoint].x - bp[p].x);
-
- /* If at least one of the tangents is close to the given angle, return */
- /* true. 'Close' means about 5 deg, i.e. about 0.087 rad. */
- PrevTangent = fabs(PrevTangent-angle);
- NextTangent = fabs(NextTangent-angle);
- while (PrevTangent > M_PI) PrevTangent -= 2*M_PI;
- while (NextTangent > M_PI) NextTangent -= 2*M_PI;
-return (fabs(PrevTangent) <= 0.087) || (fabs(NextTangent) <= 0.087);
-}
-
-static int same_angle(int *contourends, BasePoint *bp, int p, double angle) {
-return __same_angle(contourends, bp, p, angle) || __same_angle(contourends, bp, p, angle+M_PI);
-}
-
-/* I found it needed to write some simple functions to classify points snapped
- * to hint's edges. Classification helps to establish the most accurate leading
- * point for an edge.
- */
-static int _IsExtremum(int xdir, SplinePoint *sp) {
-return xdir?
- (!sp->nonextcp && !sp->noprevcp && sp->nextcp.x==sp->me.x && sp->prevcp.x==sp->me.x):
- (!sp->nonextcp && !sp->noprevcp && sp->nextcp.y==sp->me.y && sp->prevcp.y==sp->me.y);
-}
-
-static int IsExtremum(int xdir, int p, SplinePoint *sp) {
- int ret = _IsExtremum(xdir, sp);
-
- if ((sp->nextcpindex == p) && (sp->next != NULL) && (sp->next->to != NULL))
- ret = ret || _IsExtremum(xdir, sp->next->to);
- else if ((sp->ttfindex != p) && (sp->prev != NULL) && (sp->prev->from != NULL))
- ret = ret || _IsExtremum(xdir, sp->prev->from);
-
-return ret;
-}
-
-static int IsCornerExtremum(int xdir, int *contourends, BasePoint *bp, int p) {
- int PrevPoint = PrevOnContour(contourends, p);
- int NextPoint = NextOnContour(contourends, p);
-
-return xdir?
- ((bp[PrevPoint].x > bp[p].x && bp[NextPoint].x > bp[p].x) ||
- (bp[PrevPoint].x < bp[p].x && bp[NextPoint].x < bp[p].x)):
- ((bp[PrevPoint].y > bp[p].y && bp[NextPoint].y > bp[p].y) ||
- (bp[PrevPoint].y < bp[p].y && bp[NextPoint].y < bp[p].y));
-}
-
-static int IsAnglePoint(int *contourends, BasePoint *bp, SplinePoint *sp) {
- int PrevPoint, NextPoint, p=sp->ttfindex;
- double PrevTangent, NextTangent;
-
- if ((sp->pointtype != pt_corner) || (p == 0xffff))
-return 0;
-
- PrevPoint = PrevOnContour(contourends, p);
- NextPoint = NextOnContour(contourends, p);
- PrevTangent = atan2(bp[p].y - bp[PrevPoint].y, bp[p].x - bp[PrevPoint].x);
- NextTangent = atan2(bp[NextPoint].y - bp[p].y, bp[NextPoint].x - bp[p].x);
-
-return fabs(PrevTangent - NextTangent) > 0.261;
-}
-
-static int IsInflectionPoint(int *contourends, BasePoint *bp, SplinePoint *sp) {
- double CURVATURE_THRESHOLD = 1e-9;
- struct spline *prev, *next;
- double in, out;
-
- if (IsAnglePoint(contourends, bp, sp))
-return 0;
-
- /* point of a single-point contour can't be an inflection point. */
- if (sp->prev != NULL && sp->prev->from != NULL && sp->prev->from == sp)
-return 0;
-
- prev = sp->prev;
- in = 0;
- while (prev != NULL && fabs(in) < CURVATURE_THRESHOLD) {
- in = SplineCurvature(prev, 1);
- if (fabs(in) < CURVATURE_THRESHOLD) in = SplineCurvature(prev, 0);
- if (fabs(in) < CURVATURE_THRESHOLD) prev = prev->from->prev;
- if ((prev != NULL && IsAnglePoint(contourends, bp, prev->to)) || (prev == sp->prev))
- break;
- }
-
- next = sp->next;
- out = 0;
- while (next != NULL && fabs(out) < CURVATURE_THRESHOLD) {
- out = SplineCurvature(next, 0);
- if (fabs(out) < CURVATURE_THRESHOLD) out = SplineCurvature(next, 1);
- if (fabs(out) < CURVATURE_THRESHOLD) next = next->to->next;
- if ((next != NULL && IsAnglePoint(contourends, bp, next->from)) || (next == sp->next))
- break;
- }
-
- if (in==0 || out==0 || (prev != sp->prev && next != sp->next))
-return 0;
-
- in/=fabs(in);
- out/=fabs(out);
-
-return (in*out < 0);
-}
-
-/******************************************************************************
- *
- * I found it easier to write an iterator that calls given function for each
- * point worth instructing than repeating the same loops all the time.
- *
- * The control points are not skipped, but runmes often eliminate them as
- * instructing them seems to cause more damages than profits. They are included
- * here because edge optimizer cam be simpler and work more reliably then.
- *
- * The contour_direction option is for blues - snapping internal contour to a
- * blue zone is plain wrong, unless there is a stem hint tat don't fit to any
- * other blue zone.
- *
- ******************************************************************************/
-#define EXTERNAL_CONTOURS 0
-#define ALL_CONTOURS 1
-#define INTERNAL_CONTOURS 2
-static void RunOnPoints(InstrCt *ct, int contour_direction,
- void (*runme)(int p, SplinePoint *sp, InstrCt *ct))
-{
- SplineSet *ss = ct->ss;
- SplinePoint *sp;
- uint8 *done;
- int c, p;
-
- done = (uint8 *)calloc(ct->ptcnt, sizeof(uint8));
-
- for ( c=0; ss!=NULL; ss=ss->next, ++c ) {
- ct->cdir = ct->clockwise[c];
-
- if (((contour_direction == EXTERNAL_CONTOURS) && !ct->cdir) ||
- ((contour_direction == INTERNAL_CONTOURS) && ct->cdir)) continue;
-
- for ( sp=ss->first; ; ) {
- if (sp->ttfindex != 0xffff) {
- if (!sp->noprevcp &&
- !done[p = PrevOnContour(ct->contourends, sp->ttfindex)])
- {
- runme(p, sp, ct);
- done[p] = true;
- }
-
- if (!done[p = sp->ttfindex]) {
- runme(p, sp, ct);
- done[p] = true;
- }
-
- if (!sp->nonextcp && !done[p = sp->nextcpindex])
- {
- runme(p, sp, ct);
- done[p] = true;
- }
- }
- else if (!sp->nonextcp) {
- if (!done[p = PrevOnContour(ct->contourends, sp->nextcpindex)]) {
- runme(p, sp, ct);
- done[p] = true;
- }
-
- if (!done[p = sp->nextcpindex]) {
- runme(p, sp, ct);
- done[p] = true;
- }
- }
-
- if ( sp->next==NULL ) break;
- sp = sp->next->to;
- if ( sp==ss->first ) break;
- }
- }
-
- free(done);
-}
-
-/******************************************************************************
- *
- * Hinting is mostly aligning 'edges' (in FreeType's sense). Each stem hint
- * consists of two edges (or one, for ghost hints). And each blue zone can be
- * represented as an edge with extended fudge (overshoot).
- *
- * Hinting a stem edge is broken in two steps. First: init_stem_edge() seeks for
- * points to snap and chooses one that will be used as a reference point - it
- * should be then instructed elsewhere (a general method of edge positioning).
- * Old init_edge() is still used instead for blue zones and strong points.
- * Finally, finish_edge() instructs the rest of points found with given command,
- * using instructpoints(). It normally optimizes an edge before instructing,
- * but not in presence of diagonal hints.
- *
- * The contour_direction option of init_edge() is for hinting blues - snapping
- * internal contour to a bluezone seems just plainly wrong.
- *
- ******************************************************************************/
-
-/* The following operations have been separated from search_edge(), */
-/* because sometimes it is important to be able to determine, if the */
-/* given point is about to be gridfitted or interpolated */
-static int value_point(InstrCt *ct, int p, SplinePoint *sp, real fudge) {
- int score = 0;
- int EM = ct->gic->sf->ascent + ct->gic->sf->descent;
- uint8 touchflag = ct->xdir?tf_x:tf_y;
-
- if (IsCornerExtremum(ct->xdir, ct->contourends, ct->bp, p) ||
- IsExtremum(ct->xdir, p, sp))
- score+=4;
-
- if (same_angle(ct->contourends, ct->bp, p, ct->xdir?0.5*M_PI:0.0))
- score++;
-
- if (p == sp->ttfindex && IsAnglePoint(ct->contourends, ct->bp, sp))
- score++;
-
- if (interpolate_more_strong && (fudge > (EM/EDGE_FUZZ+0.0001)))
- if (IsExtremum(!ct->xdir, p, sp))
- score++;
-
- if (IsInflectionPoint(ct->contourends, ct->bp, sp))
- score++;
-
- if (score && ct->gd->points[p].sp != NULL) /* oncurve */
- score+=2;
-
- if (!score)
-return( 0 );
-
- if (ct->diagstems != NULL && ct->diagpts[p].count) score+=9;
- if (ct->touched[p] & touchflag) score+=26;
-return( score );
-}
-
-/* search for points to be snapped to an edge - to be used in RunOnPoints() */
-static void search_edge(int p, SplinePoint *sp, InstrCt *ct) {
- int tmp, score;
- real fudge = ct->gic->fudge;
- uint8 touchflag = ct->xdir?tf_x:tf_y;
- real refcoord, coord = ct->xdir?ct->bp[p].x:ct->bp[p].y;
-
- if (fabs(coord - ct->edge.base) <= fudge)
- {
- score = value_point(ct, p, sp, ct->gic->fudge);
- if (!score)
- return;
- else if (ct->edge.refpt == -1) {
- ct->edge.refpt = p;
- ct->edge.refscore = score;
- return;
- }
-
- refcoord = ct->xdir?ct->bp[ct->edge.refpt].x:ct->bp[ct->edge.refpt].y;
-
- if ((score > ct->edge.refscore) ||
- (score == ct->edge.refscore &&
- fabs(coord - ct->edge.base) < fabs(refcoord - ct->edge.base)))
- {
- tmp = ct->edge.refpt;
- ct->edge.refpt = p;
- ct->edge.refscore = score;
- p = tmp;
- }
-
- if ((p!=-1) && !((ct->touched[p] | ct->affected[p]) & touchflag)) {
- ct->edge.othercnt++;
-
- if (ct->edge.othercnt==1) ct->edge.others=(int *)calloc(1, sizeof(int));
- else ct->edge.others=(int *)realloc(ct->edge.others, ct->edge.othercnt*sizeof(int));
-
- ct->edge.others[ct->edge.othercnt-1] = p;
- }
- }
-}
-
-static int StemPreferredForPoint(PointData *pd, StemData *stem,int is_next ) {
- StemData **stems;
- BasePoint bp;
- real off, bestoff;
- int i, is_l, best=0, *stemcnt;
-
- stems = ( is_next ) ? pd->nextstems : pd->prevstems;
- stemcnt = ( is_next) ? &pd->nextcnt : &pd->prevcnt;
-
- bestoff = 1e4;
- for ( i=0; i<*stemcnt; i++ ) {
- /* Ghost hints are always assigned to both sides of a point, no matter
- * what the next/previous spline direction is. So we need an additional
- * check for stem unit parallelity */
- if (stems[i]->toobig > stem->toobig ||
- stems[i]->unit.x != stem->unit.x || stems[i]->unit.y != stem->unit.y)
- continue;
- is_l = is_next ? pd->next_is_l[i] : pd->prev_is_l[i];
- bp = is_l ? stems[i]->left : stems[i]->right;
- off = fabs(( pd->base.x - bp.x )*stem->l_to_r.x +
- ( pd->base.y - bp.y )*stem->l_to_r.y );
- if (off < bestoff || (RealNear(off, bestoff) && stems[i] == stem)) {
- best = i;
- bestoff = off;
- }
- }
- if (best < *stemcnt && stem == stems[best])
- return( best );
-
- return( -1 );
-}
-
-static int has_valid_dstem( PointData *pd,int next ) {
- int i, cnt;
- StemData *test;
-
- cnt = next ? pd->nextcnt : pd->prevcnt;
- for ( i=0; i<cnt; i++ ) {
- test = next ? pd->nextstems[i] : pd->prevstems[i];
- if ( !test->toobig && test->lpcnt > 1 && test->rpcnt > 1 &&
- fabs( test->unit.x ) > .05 && fabs( test->unit.y ) > .05 )
- return( i );
- }
- return( -1 );
-}
-
-/* init_stem_edge(): Initialize the InstrCt for instructing given edge.
- *
- * Finds points that should be snapped to this hint's given edge.
- * It will return two types of points: a 'chosen one' ct->edge.refpt, that
- * should be used as a reference for this hint, and ct->edge.others that should
- * be positioned after ct.refpt with, for example, SHP.
- *
- * assign_points_to_edge() is a helper function, only to use from init_stem_edge().
- */
-static void assign_points_to_edge(InstrCt *ct, StemData *stem, int is_l, int *refidx) {
- int i, previdx, nextidx, test_l, dint_inner = false, flag;
- PointData *pd;
-
- flag = RealNear( stem->unit.y,1 ) ? tf_x : tf_y;
-
- for ( i=0; i<ct->gd->realcnt; i++ ) {
- pd = &ct->gd->points[i];
- previdx = StemPreferredForPoint( pd,stem,false );
- nextidx = StemPreferredForPoint( pd,stem,true );
- if (!pd->ticked && (previdx != -1 || nextidx != -1)) {
- pd->ticked = true;
- /* Don't attempt to position inner points at diagonal intersections:
- * our diagonal stem hinter will handle them better */
- if ( ct->diagcnt > 0 && (
- ( stem->unit.y == 1 && pd->x_corner == 2 ) ||
- ( stem->unit.x == 1 && pd->y_corner == 2 ))) {
-
- dint_inner= has_valid_dstem( pd,true ) != -1 &&
- has_valid_dstem( pd,false ) != -1;
- }
- test_l = (nextidx != -1) ?
- pd->next_is_l[nextidx] : pd->prev_is_l[previdx];
- if (test_l == is_l && !dint_inner &&
- !(ct->touched[pd->ttfindex] & flag) && !(ct->affected[pd->ttfindex] & flag)) {
- ct->edge.others = (int *)realloc(
- ct->edge.others, (ct->edge.othercnt+1)*sizeof(int));
- ct->edge.others[ct->edge.othercnt++] = pd->ttfindex;
- if ( *refidx == -1 ) *refidx = pd->ttfindex;
- }
- }
- }
-}
-
-static void init_stem_edge(InstrCt *ct, StemData *stem, int is_l) {
- real left, right, base;
- struct dependent_stem *slave;
- PointData *rpd = NULL;
- int i, *refidx = NULL;
-
- left = ( stem->unit.x == 0 ) ? stem->left.x : stem->left.y;
- right = ( stem->unit.x == 0 ) ? stem->right.x : stem->right.y;
- base = ( is_l ) ? left : right;
-
- ct->edge.base = base;
- ct->edge.refpt = -1;
- ct->edge.refscore = 0;
- ct->edge.othercnt = 0;
- ct->edge.others = NULL;
-
- refidx = ( is_l ) ? &stem->leftidx : &stem->rightidx;
- if ( *refidx != -1 )
- rpd = &ct->gd->points[*refidx];
-
- /* Don't attempt to position inner points at diagonal intersections:
- * our diagonal stem hinter will handle them better */
- if ( rpd != NULL && ct->diagcnt > 0 && (
- ( stem->unit.y == 1 && rpd->x_corner == 2 ) ||
- ( stem->unit.x == 1 && rpd->y_corner == 2 )) &&
- has_valid_dstem( rpd,true ) != -1 && has_valid_dstem( rpd,false ) != -1 )
- *refidx = -1;
-
- for ( i=0; i<ct->gd->realcnt; i++ )
- ct->gd->points[i].ticked = false;
- assign_points_to_edge(ct, stem, is_l, refidx);
-
- for ( i=0; i<stem->dep_cnt; i++ ) {
- slave = &stem->dependent[i];
- if (slave->dep_type == 'a' &&
- ((is_l && slave->lbase) || (!is_l && !slave->lbase))) {
-
- if ( is_l ) slave->stem->leftidx = *refidx;
- else slave->stem->rightidx = *refidx;
- assign_points_to_edge(ct, slave->stem, is_l, refidx);
- }
- }
- ct->edge.refpt = *refidx;
-}
-
-/* Initialize the InstrCt for instructing given edge. */
-static void init_edge(InstrCt *ct, real base, int contour_direction) {
- ct->edge.base = base;
- ct->edge.refpt = -1;
- ct->edge.refscore = 0;
- ct->edge.othercnt = 0;
- ct->edge.others = NULL;
-
- RunOnPoints(ct, contour_direction, &search_edge);
-}
-
-/* Apparatus for edge hinting optimization. For given 'others' in ct,
- * it detects 'segments' (in FreeType's sense) and leaves only one point per
- * segment. A segment to which refpt belong is completely removed (refpt is
- * enough).
- *
- * optimize_edge() is the right high-level function to call with instructing
- * context (an edge must be previously initialized with init_edge). It calls
- * optimize_segment() internally - a function that is otherwise unsafe.
- *
- * optimize_blue() is even higher-level function to call before optimize_edge
- * if init_edge() was used to collect points in a blue zone (or other narrow
- * zone).
- *
- * Optimizers keep points used by diagonal hinter.
- *
- * optimize_strongpts() is used instead of two routines above when hinting
- * inter-stem zones (see interpolate_strong option). It's invoked after
- * instructing diagonal stems.
- */
-
-/* To be used with qsort() - sorts integer array in ascending order. */
-static int sortbynum(const void *a, const void *b) {
- return *(int *)a > *(int *)b;
-}
-
-/* Find element's index within an array - return -1 if element not found. */
-static int findoffs(const int *elems, int elemcnt, int val) {
- int i;
- for (i=0; i<elemcnt; i++) if (elems[i]==val) return i;
- return -1;
-}
-
-/* In given ct, others[segstart...segend] form a continuous segment on an edge
- * parallel to one of coordinate axes. If there are no diagonal hints, we can
- * instruct just one point of a segment, preferring refpt if included, and
- * preferring on-curve points ovef off-curve. Otherwise we must instruct all
- * points used by diagonal hinter along with refpt if included. We mark points
- * that are not to be instructed as 'affected'.
- */
-static void optimize_segment(int segstart, int segend, InstrCt *ct) {
- int i, local_refpt=-1;
- int *others = ct->edge.others;
- int touchflag = (ct->xdir)?tf_x:tf_y;
- int ondiags = 0;
-
- if (segstart==segend)
-return;
-
- /* purely for aesthetic reasons - can be safely removed. */
- qsort(others+segstart, segend+1-segstart, sizeof(int), sortbynum);
-
- /* are there any to be used with dstems? */
- if (ct->diagstems)
- for (i=segstart; !ondiags && i<=segend; i++)
- ondiags = ct->diagpts[others[i]].count;
-
- if (ondiags) {
- for (i=segstart; i<=segend; i++)
- ct->affected[others[i]] |= ct->diagpts[others[i]].count?0:touchflag;
- }
- else {
- for (i=segstart; i<=segend && ct->gd->points[others[i]].sp == NULL; i++);
- if (i<=segend) local_refpt = others[i];
-
- if (findoffs(others+segstart, segend+1-segstart, ct->edge.refpt) != -1)
- local_refpt = ct->edge.refpt;
-
- if (local_refpt==-1) local_refpt = others[segstart];
-
- for (i=segstart; i<=segend; i++)
- ct->affected[others[i]] |= local_refpt==others[i]?0:touchflag;
- }
-}
-
-/* Subdivide an edge into segments and optimize segments separately.
- * A segment consists oh a point, his neighbours, their neighbours...
- */
-static void optimize_edge(InstrCt *ct) {
- int i, p, segstart, next;
- int refpt = ct->edge.refpt;
- int *others = ct->edge.others;
- int othercnt = ct->edge.othercnt;
- int touchflag = (ct->xdir)?tf_x:tf_y;
-
- if (othercnt == 0)
-return;
-
- /* add edge.refpt to edge.others */
- ct->edge.othercnt = ++othercnt;
- ct->edge.others = others = (int *)realloc(others, othercnt*sizeof(int));
- others[othercnt-1]=refpt;
-
- next = 0;
- while (next < othercnt) {
- p = others[segstart = next++];
-
- while((next < othercnt) && (i = findoffs(others+next, othercnt-next,
- NextOnContour(ct->contourends, p))) != -1) {
- p = others[i+=next];
- others[i] = others[next];
- others[next++] = p;
- }
-
- p=others[segstart];
-
- while((next < othercnt) && (i = findoffs(others+next, othercnt-next,
- PrevOnContour(ct->contourends, p))) != -1) {
- p = others[i+=next];
- others[i] = others[next];
- others[next++] = p;
- }
-
- optimize_segment(segstart, next-1, ct);
- }
-
- for (i=next=0; i<othercnt; i++)
- if (!(ct->affected[others[i]] & touchflag) && (others[i] != refpt))
- others[next++] = others[i];
-
- if ((ct->edge.othercnt = next) == 0) {
- free(others);
- ct->edge.others = NULL;
- }
- else /* purely for aesthetic reasons - could be safely removed. */
- qsort(others, ct->edge.othercnt, sizeof(int), sortbynum);
-}
-
-/* For any given point on edge, if there exists a path to other point snapped
- * or to-be-snapped in that zone, such that any points on this path are within
- * that zone, then this given point may be optimized out.
- */
-static void optimize_blue(InstrCt *ct) {
- int i, j, curr;
- int *others = ct->edge.others;
- int othercnt = ct->edge.othercnt;
- int touchflag = (ct->xdir)?tf_x:tf_y;
- int *contourends = ct->contourends;
- uint8 *touched = ct->touched;
- uint8 *affected = ct->affected;
- uint8 *tosnap;
-
- if (othercnt == 0)
-return;
-
- tosnap = (uint8 *)calloc(ct->ptcnt, sizeof(uint8));
-
- for(i=0; i<ct->edge.othercnt; i++)
- {
- if (ct->diagpts && ct->diagpts[others[i]].count) continue;
-
- /* check path forward */
- curr=NextOnContour(contourends, others[i]);
- while(curr!=others[i]) {
- double coord = (ct->xdir) ? ct->bp[curr].x : ct->bp[curr].y;
- if (fabs(ct->edge.base - coord) > ct->gic->fudge) break;
- if ((touched[curr] | affected[curr]) & touchflag || tosnap[curr]) {
- affected[others[i]] |= touchflag;
- break;
- }
- curr=NextOnContour(contourends, curr);
- }
-
- if (affected[others[i]] & touchflag) continue;
-
- /* check path backward */
- curr=PrevOnContour(contourends, others[i]);
- while(curr!=others[i]) {
- double coord = (ct->xdir) ? ct->bp[curr].x : ct->bp[curr].y;
- if (fabs(ct->edge.base - coord) > ct->gic->fudge) break;
- if ((touched[curr] | affected[curr]) & touchflag || tosnap[curr]) {
- affected[others[i]] |= touchflag;
- break;
- }
- curr=PrevOnContour(contourends, curr);
- }
-
- if (!(affected[others[i]] & touchflag)) tosnap[others[i]] = 1;
- }
-
- free(tosnap);
-
- /* remove optimized-out points from list to be instructed. */
- for(i=0; i<ct->edge.othercnt; i++)
- if (affected[others[i]]) {
- ct->edge.othercnt--;
- for(j=i; j<ct->edge.othercnt; j++) others[j] = others[j+1];
- i--;
- }
-}
-
-/* For any strong point, check whether it's position can rely on other
- * points (if so, we don't have to instruct it explicitly).
- * This optimization is two-pass. 'Obvious' Off-curve points are sweeped
- * first. Some remaining unneeded points (off- and on-curve) may then be
- * optimized out in second pass.
- *
- * TODO! This optimizer could be even more aggressive - it currently
- * skips some features too small or unexposed to benefit from hinting.
- */
-static void optimize_strongpts_step1(InstrCt *ct);
-static void optimize_strongpts_step2(InstrCt *ct);
-
-static void optimize_strongpts(InstrCt *ct) {
- optimize_strongpts_step1(ct);
- optimize_strongpts_step2(ct);
-}
-
-static void optimize_strongpts_step1(InstrCt *ct) {
- int i, j;
- int *others = ct->edge.others;
- int othercnt = ct->edge.othercnt;
- int *contourends = ct->contourends;
- uint8 *tocull, *tocheck;
-
- if (othercnt == 0)
-return;
-
- tocull = (uint8 *)calloc(ct->ptcnt, sizeof(uint8));
- tocheck = (uint8 *)calloc(ct->ptcnt, sizeof(uint8));
- for(i=0; i<ct->edge.othercnt; i++) tocheck[ct->edge.others[i]] = 1;
-
- /* for each point of "edge" (would be better called "zone") */
- for(i=0; i<ct->edge.othercnt; i++)
- {
- int pt = others[i];
- double pt_x = ct->bp[pt].x;
- double pt_y = ct->bp[pt].y;
-
- int pt_next = NextOnContour(contourends, pt);
- double pt_next_x = ct->bp[pt_next].x;
- double pt_next_y = ct->bp[pt_next].y;
-
- int pt_prev = PrevOnContour(contourends, pt);
- double pt_prev_x = ct->bp[pt_prev].x;
- double pt_prev_y = ct->bp[pt_prev].y;
-
- /* We sweep only off-curve points here */
- if (ct->gd->points[pt].sp != NULL)
- continue;
-
- if (IsCornerExtremum(ct->xdir, ct->contourends, ct->bp, pt))
- continue;
-
- /* Some off-curve points may 'belong' to extrema from other zone. */
-
- if (/*tocheck[pt_next] &&*/ (ct->gd->points[pt_next].sp != NULL) &&
- (pt_x == pt_next_x || pt_y == pt_next_y))
- tocull[pt] = 1;
-
- if (/*tocheck[pt_prev] &&*/ (ct->gd->points[pt_prev].sp != NULL) &&
- (pt_x == pt_prev_x || pt_y == pt_prev_y))
- tocull[pt] = 1;
- }
-
- /* remove optimized-out points from list to be instructed. */
- for(i=0; i<ct->edge.othercnt; i++)
- if (tocull[others[i]]) {
- ct->edge.othercnt--;
- for(j=i; j<ct->edge.othercnt; j++) others[j] = others[j+1];
- i--;
- }
-
- free(tocull);
- free(tocheck);
-}
-
-static void optimize_strongpts_step2(InstrCt *ct) {
- int pass, i, j, forward;
- int next_closed, prev_closed;
- int next_pt_max, next_pt_min, prev_pt_max, prev_pt_min;
- int next_coord_max, next_coord_min, prev_coord_max, prev_coord_min;
- int *others = ct->edge.others;
- int othercnt = ct->edge.othercnt;
- int touchflag = (ct->xdir)?tf_x:tf_y;
- int *contourends = ct->contourends;
- uint8 *touched = ct->touched;
- uint8 *affected = ct->affected;
- uint8 *toinstr, *tocull, *tocheck;
-
- if (othercnt == 0)
-return;
-
- toinstr = (uint8 *)calloc(ct->ptcnt, sizeof(uint8));
- tocull = (uint8 *)calloc(ct->ptcnt, sizeof(uint8));
- tocheck = (uint8 *)calloc(ct->ptcnt, sizeof(uint8));
- for(i=0; i<ct->edge.othercnt; i++) tocheck[ct->edge.others[i]] = 1;
-
- /* two passes... */
- for(pass=0; pass<2; pass++)
- {
- /* ...for each point of "edge" (would be better called "zone" here) */
- for(i=0; i<ct->edge.othercnt; i++)
- {
- int pt = others[i];
- double pt_coord = (ct->xdir) ? ct->bp[pt].x : ct->bp[pt].y;
-
- /* In first pass, we sweep only off-curve points */
- if ((pass==0) && (ct->gd->points[pt].sp != NULL))
- continue;
-
- if (tocull[pt] || toinstr[pt])
- continue;
-
- /* check path backward and forward */
- for (forward=0; forward<2; forward++)
- {
- int closed = 0;
- int pt_max = pt, pt_min = pt;
- double coord_max = pt_coord, coord_min = pt_coord;
- int curr = forward ? NextOnContour(contourends, pt):
- PrevOnContour(contourends, pt);
-
- while(curr!=pt)
- {
- double coord = (ct->xdir) ? ct->bp[curr].x : ct->bp[curr].y;
-
- if (fabs(ct->edge.base - coord) > ct->gic->fudge)
- break;
-
- if ((touched[curr] | affected[curr]) & touchflag || tocheck[curr])
- {
- if (coord > coord_max) { coord_max = coord; pt_max = curr; }
- else if ((coord == coord_max) && (curr < pt_max)) pt_max = curr;
-
- if (coord < coord_min) { coord_min = coord; pt_min = curr; }
- else if ((coord == coord_min) && (curr < pt_min)) pt_min = curr;
-
- closed = 1;
- }
-
- if ((touched[curr] | affected[curr]) & touchflag || toinstr[curr])
- break;
-
- curr = forward ? NextOnContour(contourends, curr):
- PrevOnContour(contourends, curr);
- }
-
- if (forward) {
- next_closed = closed;
- next_pt_max = pt_max;
- next_pt_min = pt_min;
- next_coord_max = coord_max;
- next_coord_min = coord_min;
- }
- else {
- prev_closed = closed;
- prev_pt_max = pt_max;
- prev_pt_min = pt_min;
- prev_coord_max = coord_max;
- prev_coord_min = coord_min;
- }
- }
-
- if (prev_closed && next_closed && (
- (prev_coord_max >= pt_coord && pt != prev_pt_max &&
- next_coord_min <= pt_coord && pt != next_pt_min) ||
- (prev_coord_min <= pt_coord && pt != prev_pt_min &&
- next_coord_max >= pt_coord && pt != next_pt_max)))
- tocull[pt] = 1;
- else
- toinstr[pt] = 1;
- }
- }
-
- /* remove optimized-out points from list to be instructed. */
- for(i=0; i<ct->edge.othercnt; i++)
- if (tocull[others[i]]) {
- ct->edge.othercnt--;
- for(j=i; j<ct->edge.othercnt; j++) others[j] = others[j+1];
- i--;
- }
-
- free(tocheck);
- free(toinstr);
- free(tocull);
-}
-
-/* Finish instructing the edge. Try to hint only those points on edge that are
- * necessary - IUP should do the rest.
- */
-static void finish_edge(InstrCt *ct, uint8 command) {
- int i;
-
- optimize_edge(ct);
- if (ct->edge.othercnt==0)
-return;
-
- ct->pt=instructpoints(ct->pt, ct->edge.othercnt, ct->edge.others, command);
- for(i=0; i<ct->edge.othercnt; i++)
- ct->touched[ct->edge.others[i]] |= (ct->xdir?tf_x:tf_y);
-
- free(ct->edge.others);
- ct->edge.others=NULL;
- ct->edge.othercnt = 0;
-}
-
-/******************************************************************************
- *
- * Routines for hinting single stems.
- *
- ******************************************************************************/
-
-/* Each stem hint has 'ldone' and 'rdone' flag, indicating whether 'left'
- * or 'right' edge is hinted or not. This functions marks as done all edges at
- * specified coordinate, starting from given hint (hints sometimes share edges).
- */
-static void mark_startenddones(StemData *stem, int is_l ) {
- struct dependent_stem *slave;
- int i;
- uint8 *done;
-
- done = is_l ? &stem->ldone : &stem->rdone;
- *done = true;
- for (i=0; i<stem->dep_cnt; i++) {
- slave = &stem->dependent[i];
- if ( slave->dep_type == 'a' && slave->lbase == is_l ) {
- done = is_l ? &slave->stem->ldone : &slave->stem->rdone;
- *done = true;
- }
- }
-}
-
-static void build_cvt_stem(InstrCt *ct, real width, StdStem *cvt_stem) {
- int i, width_parent, width_me;
- int EM = ct->gic->sf->ascent + ct->gic->sf->descent;
-
- cvt_stem->width = (int)rint(fabs(width));
- cvt_stem->stopat = 32767;
- cvt_stem->snapto =
- CVTSeekStem(ct->xdir, ct->gic, width, false);
-
- for (i=7; i<32768; i++) {
- width_parent = compute_stem_width(ct->xdir, cvt_stem->snapto, EM, i);
- width_me = compute_stem_width(ct->xdir, cvt_stem, EM, i);
-
- if (width_parent != width_me) {
- cvt_stem->stopat = i;
- break;
- }
- }
-}
-
-/* This function has been separated from finish_stem(), because sometimes
- * it is necessary to maintain the distance between two points (usually on
- * opposite stem edges) without instructing the whole stem. Currently we use this
- * to achieve proper positioning of the left edge of a vertical stem in antialiased
- * mode, if instructing this stem has to be started from the right edge
- */
-static void maintain_black_dist(InstrCt *ct, real width, int refpt, int chg_rp0) {
- int callargs[5];
- StdStem *StdW = ct->xdir?&(ct->gic->stdvw):&(ct->gic->stdhw);
- StdStem *ClosestStem;
- StdStem cvt_stem;
-
- ClosestStem = CVTSeekStem(ct->xdir, ct->gic, width, true);
-
- if (ClosestStem != NULL) {
- ct->pt = push2nums(ct->pt, refpt, ClosestStem->cvtindex);
-
- if (ct->gic->cvt_done && ct->gic->fpgm_done && ct->gic->prep_done)
- *(ct->pt)++ = chg_rp0?MIRP_rp0_min_black:MIRP_min_black;
- else *(ct->pt)++ = chg_rp0?MIRP_min_rnd_black:MIRP_rp0_min_rnd_black;
- }
- else {
- if (ct->gic->cvt_done && ct->gic->fpgm_done && ct->gic->prep_done &&
- StdW->width!=-1)
- {
- build_cvt_stem(ct, width, &cvt_stem);
-
- callargs[0] = ct->edge.refpt;
- callargs[1] = cvt_stem.snapto->cvtindex;
- callargs[2] = chg_rp0?1:0;
- callargs[3] = cvt_stem.stopat;
- callargs[4] = 4;
- ct->pt = pushnums(ct->pt, 5, callargs);
- *(ct->pt)++ = CALL;
- }
- else {
- ct->pt = pushpoint(ct->pt, ct->edge.refpt);
- *(ct->pt)++ = chg_rp0?MDRP_rp0_min_rnd_black:MDRP_min_rnd_black;
- }
- }
-}
-
-/* Given the refpt for one of this hint's edges is already positioned, this
- * function aligns 'others' (SHP with given shp_rp) for this edge and positions
- * the second edge, optionally setting its refpt as rp0. It frees edge.others
- * and sets edge.othercnt to zero, but it leaves edge.refpt set to last
- * instructed edge.
- */
-#define use_rp1 (true)
-#define use_rp2 (false)
-#define set_new_rp0 (true)
-#define keep_old_rp0 (false)
-static void finish_stem(StemData *stem, int shp_rp1, int chg_rp0, InstrCt *ct)
-{
- int is_l, basedone, oppdone, reverse;
- real hleft, hright, width;
-
- if (stem == NULL)
- return;
- hleft = ((real *) &stem->left.x)[!ct->xdir];
- hright= ((real *) &stem->right.x)[!ct->xdir];
-
- is_l = (fabs(hleft - ct->edge.base) < fabs(hright - ct->edge.base));
- basedone = ( is_l && stem->ldone ) || ( !is_l && stem->rdone );
- oppdone = ( is_l && stem->rdone ) || ( !is_l && stem->ldone );
- reverse = ( ct->xdir && !is_l && !stem->ldone && !stem->ghost );
- width = stem->width;
-
- if ( !reverse && !basedone ) {
- ct->touched[ct->edge.refpt] |= ct->xdir?tf_x:tf_y;
- finish_edge(ct, shp_rp1?SHP_rp1:SHP_rp2);
- mark_startenddones(stem, is_l );
- }
-
- if (oppdone || (stem->ghost && ((stem->width==20) || (stem->width==21)))) {
- stem->ldone = stem->rdone = 1;
- return;
- }
-
- init_stem_edge(ct, stem, !is_l);
- if (ct->edge.refpt == -1) {
- /* We have skipped the right edge to start instructing this stem from
- * left. But its left edge appears to have no points to be instructed.
- * So return to the right edge and instruct it before exiting */
- if ( reverse && !basedone ) {
- init_stem_edge(ct, stem, is_l);
- ct->touched[ct->edge.refpt] |= ct->xdir?tf_x:tf_y;
- finish_edge(ct, shp_rp1?SHP_rp1:SHP_rp2);
- mark_startenddones(stem, is_l );
- }
- return;
- }
- maintain_black_dist(ct, width, ct->edge.refpt, chg_rp0);
-
- if ( reverse ) {
- is_l = !is_l;
- ct->rp0 = ct->edge.refpt;
- ct->pt = pushpoint(ct->pt, ct->rp0);
- *(ct->pt)++ = MDAP_rnd;
- ct->touched[ct->edge.refpt] |= ct->xdir?tf_x:tf_y;
- finish_edge(ct, SHP_rp1);
- mark_startenddones( stem, is_l );
- if ( !stem->rdone ) {
- init_stem_edge(ct, stem, false);
- if (ct->edge.refpt == -1)
- return;
- maintain_black_dist(ct, width, ct->edge.refpt, chg_rp0);
- }
- }
-
- if (chg_rp0) ct->rp0 = ct->edge.refpt;
- ct->touched[ct->edge.refpt] |= ct->xdir?tf_x:tf_y;
- finish_edge(ct, SHP_rp2);
- mark_startenddones( stem, !is_l );
-}
-
-static void mark_points_affected(InstrCt *ct,StemData *target,PointData *opd,int next) {
- Spline *s;
- PointData *pd, *cpd;
- int cpidx;
-
- s = next ? opd->sp->next : opd->sp->prev;
- pd = next ? &ct->gd->points[s->to->ptindex] : &ct->gd->points[s->from->ptindex];
- while (IsStemAssignedToPoint(pd, target, !next) == -1) {
- if (pd->ttfindex < ct->gd->realcnt &&
- value_point(ct, pd->ttfindex, pd->sp, ct->gd->emsize))
- ct->affected[pd->ttfindex] |= ct->xdir?tf_x:tf_y;
-
- if (!pd->sp->noprevcp) {
- cpidx = pd->sp->prev->from->nextcpindex;
- cpd = &ct->gd->points[cpidx];
- if (value_point(ct, cpd->ttfindex, pd->sp, ct->gd->emsize))
- ct->affected[cpd->ttfindex] |= ct->xdir?tf_x:tf_y;
- }
- if (!pd->sp->nonextcp) {
- cpidx = pd->sp->nextcpindex;
- cpd = &ct->gd->points[cpidx];
- if (value_point(ct, cpd->ttfindex, pd->sp, ct->gd->emsize))
- ct->affected[cpd->ttfindex] |= ct->xdir?tf_x:tf_y;
- }
- s = next ? pd->sp->next : pd->sp->prev;
- pd = next ? &ct->gd->points[s->to->ptindex] : &ct->gd->points[s->from->ptindex];
- if ( pd == opd ) {
- IError( "The ball terminal with a key point at %.3f,%.3f\n"
- "appears to be incorrectly linked to the %s stem\n"
- "<%.3f, %.3f>",
- pd->base.x,pd->base.y,
- ct->xdir?"vertical":"horizontal",
- ct->xdir?target->left.x:target->right.y,target->width );
- break;
- }
- }
-}
-
-static void finish_serif(StemData *slave, StemData *master, int lbase, int is_ball, InstrCt *ct)
-{
- int inner_pt, callargs[4];
- struct stem_chunk *chunk;
- PointData *opd;
- int i;
-
- if (slave == NULL || master == NULL)
-return;
- inner_pt = ( lbase ) ? master->rightidx : master->leftidx;
-
- init_stem_edge(ct, slave, !lbase);
- if (ct->edge.refpt == -1)
-return;
-
- if (ct->gic->fpgm_done) {
- callargs[0] = is_ball ? 0 : 64;
- callargs[1] = inner_pt;
- callargs[2] = ct->edge.refpt;
- callargs[3] = 9;
- ct->pt = pushnums(ct->pt, 4, callargs);
- *(ct->pt)++ = CALL;
- }
- else {
- *(ct->pt)++ = 0x7D; /* RDTG */
- ct->pt = pushpoint(ct->pt, ct->edge.refpt);
- *(ct->pt)++ = MDRP_min_rnd_black;
- *(ct->pt)++ = 0x18; /* RTG */
- }
-
- ct->touched[ct->edge.refpt] |= ct->xdir?tf_x:tf_y;
- finish_edge(ct, SHP_rp2);
- mark_startenddones( slave, !lbase );
-
- if ( !interpolate_strong || !instruct_ball_terminals )
-return;
-
- /* Preserve points on ball terminals from being interpolated
- * between edges by marking them as affected */
- for ( i=0; i<slave->chunk_cnt; i++ ) {
- chunk = &slave->chunks[i];
- opd = lbase ? chunk->r : chunk->l;
-
- if (chunk->is_ball && opd != NULL) {
- mark_points_affected(ct, chunk->ball_m, opd, true);
- mark_points_affected(ct, chunk->ball_m, opd, false);
- }
- }
-}
-
-static void link_serifs_to_edge(InstrCt *ct, StemData *stem, int is_l) {
- int i, callargs[3];
- struct dependent_serif *serif;
-
- /* We use an FPGM function to set rp0, and thus the exact value
- * is not known at the compilation time. So it is safer to reset
- * ct->rp0 to -1
- */
- if ( ct->gic->fpgm_done ) {
- ct->rp0 = -1;
- callargs[0] = is_l ? stem->rightidx : stem->leftidx;
- callargs[1] = is_l ? stem->leftidx : stem->rightidx;
- callargs[2] = 10;
- ct->pt = pushnums(ct->pt, 3, callargs);
- *(ct->pt)++ = CALL;
- } else {
- init_stem_edge(ct, stem, !is_l);
- if ( ct->rp0 != ct->edge.refpt ) {
- ct->pt = pushpoint(ct->pt, ct->edge.refpt);
- *(ct->pt)++ = SRP0;
- ct->rp0 = ct->edge.refpt;
- }
- }
- for (i=0; i<stem->serif_cnt; i++) {
- serif = &stem->serifs[i];
- if (serif->lbase == is_l &&
- ((serif->is_ball && instruct_ball_terminals) ||
- (!serif->is_ball && instruct_serif_stems)))
- finish_serif( serif->stem,stem,is_l,serif->is_ball,ct );
- }
-}
-
-static void instruct_serifs(InstrCt *ct, StemData *stem) {
- int i, lcnt, rcnt;
- struct dependent_serif *serif;
-
- if ( stem->leftidx == -1 || stem->rightidx == -1 )
- return;
- lcnt = rcnt = 0;
- for (i=0; i<stem->serif_cnt; i++) {
- serif = &stem->serifs[i];
- if ((serif->is_ball && !instruct_ball_terminals) ||
- (!serif->is_ball && !instruct_serif_stems))
- continue;
- if ( serif->lbase )
- lcnt++;
- else if ( !serif->lbase )
- rcnt++;
- }
-
- if (stem->ldone && lcnt > 0)
- link_serifs_to_edge(ct, stem, true);
- if (stem->rdone && rcnt > 0)
- link_serifs_to_edge(ct, stem, false);
-}
-
-static void instruct_dependent(InstrCt *ct, StemData *stem) {
- int i, j, rp, rp1, rp2, stopat, callargs[4];
- struct dependent_stem *slave;
- int w_master, w_slave;
- StdStem *std_master, *std_slave, norm_master, norm_slave;
- StdStem *StdW = ct->xdir?&(ct->gic->stdvw):&(ct->gic->stdhw);
-
- for (i=0; i<stem->dep_cnt; i++) {
- slave = &stem->dependent[i];
- if (slave->stem->master == NULL)
- continue;
-
- init_stem_edge(ct, slave->stem, slave->lbase);
- if (ct->edge.refpt == -1) continue;
-
- if (slave->dep_type == 'i' && stem->ldone && stem->rdone) {
- rp1 = ct->xdir ? stem->leftidx : stem->rightidx;
- rp2 = ct->xdir ? stem->rightidx : stem->leftidx;
- callargs[0] = ct->edge.refpt;
- callargs[1] = rp2;
- callargs[2] = rp1;
- if (ct->gic->fpgm_done) {
- callargs[3] = 8;
- ct->pt = pushpoints(ct->pt, 4, callargs);
- *(ct->pt)++ = CALL;
- } else {
- ct->pt = pushpoints(ct->pt, 3, callargs);
- *(ct->pt)++ = SRP1;
- *(ct->pt)++ = SRP2;
- *(ct->pt)++ = DUP;
- *(ct->pt)++ = IP;
- *(ct->pt)++ = MDAP_rnd;
- }
- }
- else if (slave->dep_type == 'm' &&
- ((slave->lbase && stem->ldone) || (!slave->lbase && stem->rdone))) {
-
- rp = slave->lbase ? stem->leftidx : stem->rightidx;
- if ( rp != ct->rp0 ) {
- ct->pt = pushpoint(ct->pt, rp);
- *(ct->pt)++ = SRP0;
- ct->rp0 = rp;
- }
-
- /* It is possible that at certain PPEMs both the master and slave stems are
- * regularized, say, to 1 pixel, but the difference between their positions
- * is rounded to 1 pixel too. Thus one stem is shifted relatively to another,
- * so that the overlap disappears. This looks especially odd for nesting/nested
- * stems. We use a special FPGM function to prevent this.
- */
- if ( ct->gic->cvt_done && ct->gic->fpgm_done && ct->gic->prep_done && StdW->width!=-1 && (
- ((&stem->left.x)[!ct->xdir] <= (&slave->stem->left.x)[!ct->xdir] &&
- ( &stem->right.x)[!ct->xdir] >= (&slave->stem->right.x)[!ct->xdir] ) ||
- ((&stem->left.x)[!ct->xdir] >= (&slave->stem->left.x)[!ct->xdir] &&
- ( &stem->right.x)[!ct->xdir] <= (&slave->stem->right.x)[!ct->xdir] ))) {
-
- std_master = CVTSeekStem(ct->xdir, ct->gic, stem->width, true);
- std_slave = CVTSeekStem(ct->xdir, ct->gic, slave->stem->width, true);
- if ( std_master == NULL ) {
- build_cvt_stem(ct, stem->width, &norm_master);
- std_master = &norm_master;
- }
- if ( std_slave == NULL ) {
- build_cvt_stem(ct, slave->stem->width, &norm_slave);
- std_slave = &norm_slave;
- }
-
- stopat = 32768;
- for (j=7; j<=stopat; j++) {
- w_master = compute_stem_width(ct->xdir, std_master, ct->gd->emsize, j);
- w_slave = compute_stem_width(ct->xdir, std_slave , ct->gd->emsize, j);
-
- if (w_master != w_slave)
- stopat = j;
- }
- callargs[0] = stopat;
- callargs[1] = ct->rp0;
- callargs[2] = ct->edge.refpt;
- callargs[3] = 14;
- ct->pt = pushpoints(ct->pt, 4, callargs);
- *(ct->pt)++ = CALL;
- }
- else {
- ct->pt = pushpoint(ct->pt, ct->edge.refpt);
- *(ct->pt)++ = DUP;
- *(ct->pt)++ = MDRP_rp0_rnd_white;
- *(ct->pt)++ = SRP1;
- }
- }
- else if (slave->dep_type == 'a' &&
- ((slave->lbase && stem->ldone) || (!slave->lbase && stem->rdone))) {
- if ( ct->edge.refpt != ct->rp0 ) {
- ct->pt = pushpoint(ct->pt, ct->edge.refpt);
- *(ct->pt)++ = SRP0;
- }
- }
- else
- continue;
-
- ct->rp0 = ct->edge.refpt;
- finish_stem(slave->stem, use_rp1, keep_old_rp0, ct);
- if ( instruct_serif_stems || instruct_ball_terminals )
- instruct_serifs(ct, slave->stem);
-
- instruct_dependent(ct, slave->stem);
- }
-}
-
-/******************************************************************************
- *
- * I decided to do snapping to blues at the very beginning of the instructing.
- *
- * Blues are processed in certain (important) order: baseline, descenders
- * (from deeper to shorter), ascenders (from taller to shorter).
- *
- * For each blue, one of the edges is put into CVT: lower if is't > zero,
- * the upper otherwise. A twilight point 0 is established at this height. All
- * the glyph's points decided to be worth snapping are then moved relative to
- * this twilight point, being subject to rounding 'down-to-int'. Space taken
- * is at most 8*ptcnt.
- *
- * For each blue, all yet unprocessed HStems affected are instructed. Ghost
- * hints are reckognised. If there is at least one stem hint in given blue zone,
- * autoinstructor will seek for other interesting features, so there is no need
- * to hint them explicitly.
- *
- * TODO! We currently instruct hints dependent on those controlled by blues.
- * This may be not always corrrect (e.g. if a dependent hint is itself
- * controlled by blue zone - possibly even different). Research needed.
- *
- * Important notes:
- *
- * The zone count must be set to 2, the twilight point count must be nonzero.
- * This is done automagically in init_maxp(), otherwise this method wouldn't
- * work at all. Currently there is only one twilight point used, but there
- * may be needed one or even two points per blue zone if some advanced snapping
- * and counter managing is to be done.
- *
- * Snapping relies on function 0 in FPGM, see init_fpgm().
- *
- * Using MIAP (single cvt, relying on cut-in) instead of twilight points
- * causes overshoots to appear/disappear inconsistently at small pixel sizes.
- * This flickering is disastrous to soft, wavy horizontal lines. We could use
- * any glyph's point at needed height, but we're not certain we'll find any.
- *
- * The inner (leftwards) contours aren't snapped to the blue zone.
- * This could have created weird artifacts. Of course this will fail for
- * glyphs with wrong direction, but I won't handle it for now.
- *
- * TODO! Remind the user to correct direction or do it for him.
- * TODO! Try to instruct 'free points' with single push and LOOPCALL.
- *
- * If we didn't snapped any point to a blue zone, we shouldn't mark any HStem
- * edges done. This could made some important points on inner contours missed.
- *
- ******************************************************************************/
-
-/* Each blue zone has two TTF point indices associated with it: 'highest' and
- * 'lowest'. These have to be points with highest and lowest Y coordinates that
- * are snapped to that blue zone (directly or by horizontal stem). Currently
- * we register only edge.refpt. These points are later to be used for horizontal
- * stems' positioning.
- */
-static void update_blue_pts(int blueindex, InstrCt *ct)
-{
- BasePoint *bp = ct->bp;
- BlueZone *blues = ct->gic->blues;
-
- if (ct->edge.refpt == -1)
-return;
-
- if (blues[blueindex].highest == -1 ||
- bp[ct->edge.refpt].y > bp[blues[blueindex].highest].y)
- blues[blueindex].highest = ct->edge.refpt;
-
- if (blues[blueindex].lowest == -1 ||
- bp[ct->edge.refpt].y < bp[blues[blueindex].lowest].y)
- blues[blueindex].lowest = ct->edge.refpt;
-}
-
-/* It is theoretically possible that 'highest' and 'lowest' points of neighbour
- * blue zones overlap, and thus may spoil horizontal stems' positioning.
- * Here we fix this up.
- */
-static void fixup_blue_pts(BlueZone *b1, BlueZone *b2) {
- if (b1->lowest > b2->lowest) b1->lowest = b2->lowest;
- if (b1->highest < b2->highest) b1->highest = b2->highest;
-}
-
-static void check_blue_pts(InstrCt *ct) {
- BasePoint *bp = ct->bp;
- BlueZone *blues = ct->gic->blues;
- int i, j, bluecnt = ct->gic->bluecnt;
-
- for (i=0; i<bluecnt; i++)
- if (blues[i].lowest != -1)
- for (j=0; j<bluecnt; j++)
- if (i != j && blues[j].lowest != -1 && SegmentsOverlap(
- bp[blues[i].lowest].y, bp[blues[i].highest].y,
- bp[blues[j].lowest].y, bp[blues[j].highest].y))
- fixup_blue_pts(blues+i, blues+j);
-}
-
-static int snap_stem_to_blue(InstrCt *ct,StemData *stem, BlueZone *blue, int idx) {
- int i, is_l, ret = 0;
- int callargs[3] = { 0/*pt*/, 0/*cvt*/, 0 };
- real base, advance, tmp;
- real fuzz = GetBlueFuzz(ct->gic->sf);
- StemData *slave;
-
- /* Which edge to start at? */
- /* Starting at the other would usually be wrong. */
- if (blue->overshoot < blue->base && ( !stem->ghost || stem->width == 21 ))
- {
- is_l = false;
- base = stem->right.y;
- advance = stem->left.y;
- }
- else {
- is_l = true;
- base = stem->left.y;
- advance = stem->right.y;
- }
-
- /* This is intended as a fallback if the base edge wasn't within
- * this bluezone, and advance edge was.
- */
- if (!stem->ghost &&
- !SegmentsOverlap(base+fuzz, base-fuzz, blue->base, blue->overshoot) &&
- SegmentsOverlap(advance+fuzz, advance-fuzz, blue->base, blue->overshoot))
- {
- tmp = base;
- base = advance;
- advance = tmp;
- is_l = !is_l;
- }
-
- /* instruct the stem */
- init_stem_edge(ct, stem, is_l);
- if (ct->edge.refpt == -1) {
- for ( i=0; i<stem->dep_cnt; i++ ) {
- slave = stem->dependent[i].stem;
- /* A hack which allows single-edge hints to tie features
- * to remote blue zones. */
- if ( stem->ghost ) slave->blue = idx;
- if ( slave->blue == idx )
- ret += snap_stem_to_blue(ct, slave, blue, idx);
- }
- return( ret );
- }
- update_blue_pts(idx, ct);
- callargs[0] = ct->rp0 = ct->edge.refpt;
- callargs[1] = blue->cvtindex;
-
- if (ct->gic->fpgm_done) {
- ct->pt = pushpoints(ct->pt, 3, callargs);
- *(ct->pt)++ = CALL;
- }
- else {
- ct->pt = pushpoints(ct->pt, 2, callargs);
- *(ct->pt)++ = MIAP_rnd;
- }
-
- finish_stem(stem, use_rp1, keep_old_rp0, ct);
- for ( i=0; i<stem->dep_cnt; i++ ) {
- slave = stem->dependent[i].stem;
- if ( slave->blue == idx ) {
- ret += snap_stem_to_blue(ct, slave, blue, idx);
- slave->master = NULL;
- }
- }
-
- if( instruct_serif_stems || instruct_ball_terminals )
- instruct_serifs(ct, stem);
- instruct_dependent(ct, stem);
- update_blue_pts(idx, ct); /* this uses only refpt: who cares? */
- return( ret + 1 );
-}
-
-/* Snap stems and perhaps also some other points to given bluezone and set up
- * its 'highest' and 'lowest' point indices.
- */
-static void snap_to_blues(InstrCt *ct) {
- int i, j;
- int therewerestems; /* were there any HStems snapped to this blue? */
- StemData *stem; /* for HStems affected by blues */
- real base; /* for the hint */
- int callargs[3] = { 0/*pt*/, 0/*cvt*/, 0 };
- real fudge;
- int bluecnt=ct->gic->bluecnt;
- int queue[12]; /* Blue zones' indices in processing order */
- BlueZone *blues = ct->gic->blues;
- real fuzz = GetBlueFuzz(ct->gic->sf);
-
- if (bluecnt == 0)
-return;
-
- /* Fill the processing queue - baseline goes first, then bottom zones */
- /* sorted by base in ascending order, then top zones sorted in descending */
- /* order. I assume the blues are sorted in ascending order first. */
- for (i=0; (i < bluecnt) && (blues[i].base < 0); i++);
- queue[0] = i;
- for (i=0; i<queue[0]; i++) queue[i+1] = i;
- for (i=queue[0]+1; i<bluecnt; i++) queue[i] = bluecnt - i + queue[0];
-
- /* Process the blues. */
- for (i=0; i<bluecnt; i++) {
- therewerestems = 0;
-
- /* Process all hints with edges within current blue zone. */
- for ( j=0; j<ct->gd->hbundle->cnt; j++ ) {
- stem = ct->gd->hbundle->stemlist[j];
- if (stem->master != NULL || stem->blue != queue[i] || stem->ldone || stem->rdone)
- continue;
-
- therewerestems += snap_stem_to_blue(ct, stem, &blues[queue[i]], queue[i]);
- }
-
- /* Now I'll try to find points not snapped by any previous stem hint. */
- if (therewerestems) {
- base = (blues[queue[i]].base + blues[queue[i]].overshoot) / 2.0;
- fudge = ct->gic->fudge;
- ct->gic->fudge = fabs(base - blues[queue[i]].base) + fuzz;
- init_edge(ct, base, EXTERNAL_CONTOURS);
- optimize_blue(ct);
- optimize_edge(ct);
-
- if (ct->edge.refpt == -1) {
- ct->gic->fudge = fudge;
- continue;
- }
-
- if (!(ct->touched[ct->edge.refpt]&tf_y || ct->affected[ct->edge.refpt]&tf_y)) {
- callargs[0] = ct->rp0 = ct->edge.refpt;
-
- if (ct->gic->fpgm_done) {
- ct->pt = pushpoints(ct->pt, 3, callargs);
- *(ct->pt)++ = CALL;
- }
- else {
- ct->pt = pushpoints(ct->pt, 2, callargs);
- *(ct->pt)++ = MIAP_rnd;
- }
-
- ct->touched[ct->edge.refpt] |= tf_y;
- }
-
- for (j=0; j<ct->edge.othercnt; j++) {
- callargs[0] = ct->rp0 = ct->edge.others[j];
-
- if (ct->gic->fpgm_done) {
- ct->pt = pushpoints(ct->pt, 3, callargs);
- *(ct->pt)++ = CALL;
- }
- else {
- ct->pt = pushpoints(ct->pt, 2, callargs);
- *(ct->pt)++ = MIAP_rnd;
- }
-
- ct->touched[ct->edge.others[j]] |= tf_y;
- }
-
- update_blue_pts(queue[i], ct);
-
- if (ct->edge.others != NULL) {
- free(ct->edge.others);
- ct->edge.others = NULL;
- ct->edge.othercnt = 0;
- }
-
- ct->gic->fudge = fudge;
- }
- }
-
- check_blue_pts(ct);
-}
-
-static int get_counters_cut_in(InstrCt *ct, int m1, int m2, int c1, int c2) {
- real s1, e1, s2, e2, width1, width2;
- int i, swidth1, swidth2;
- int EM = ct->gic->sf->ascent + ct->gic->sf->descent;
-
- s1 = (&ct->gd->points[m1].base.x)[!ct->xdir];
- e1 = (&ct->gd->points[m2].base.x)[!ct->xdir];
- s2 = (&ct->gd->points[c1].base.x)[!ct->xdir];
- e2 = (&ct->gd->points[c2].base.x)[!ct->xdir];
- width1 = e1 - s1; width2 = e2 - s2;
-
- if ( RealNear( width1, width2 ))
- return( 0 );
-
- for (i=7; i<32768; i++) {
- swidth1 = (int)rint((rint(fabs(width1)) * i * 64.0)/EM);
- swidth2 = (int)rint((rint(fabs(width2)) * i * 64.0)/EM);
- if ( fabs(swidth1 - swidth2) >= SNAP_THRESHOLD )
- break;
- }
- return( i );
-}
-
-/******************************************************************************
- *
- * High-level functions for instructing horizontal and vertical stems.
- * Both use 'geninstrs' for positioning single, elementary stems.
- *
- ******************************************************************************/
-
-/* geninstrs's main burden is to choose the better of two reference points
- * found by init_stem_edge() - one for each edge - and position it relatively
- * to other stems (if not already done).
- *
- * If none of the edges is positioned:
- * If this hint is the first, previously overlapped, or simply horizontal,
- * position the reference point at the base where it is using MDAP; otherwise
- * position the hint's base rp0 relatively to the previous hint's end using
- * MDRP with white minimum distance (fpgm function 1).
- *
- * Calling finish_stem() will deal with the rest of points needing explicit
- * positioning. Then we instruct serifs and dependent stems, if wanted.
- */
-static void geninstrs(InstrCt *ct, StemData *stem, StemData *prev, int lbase) {
- int shp_rp1, chg_rp0, c_m_pt1 = -1, c_m_pt2 = -1;
- int callargs[6];
- real prev_pos = 0, cur_pos;
-
- if (stem->ldone && stem->rdone)
- return;
- if ((lbase && stem->rdone) || (!lbase && stem->ldone))
- lbase = !lbase;
- init_stem_edge(ct, stem, lbase);
- if (ct->edge.refpt == -1) {
- lbase = !lbase;
- init_stem_edge(ct, stem, lbase);
- }
- if (ct->edge.refpt == -1)
- return;
-
- if (ct->rp0 < ct->gd->realcnt && ct->rp0 >= 0)
- prev_pos = (&ct->gd->points[ct->rp0].base.x)[!ct->xdir];
- cur_pos = (&ct->gd->points[ct->edge.refpt].base.x)[!ct->xdir];
-
- if (prev != NULL && stem->prev_c_m != NULL && prev->next_c_m != NULL ) {
- c_m_pt1 = ct->xdir ? prev->next_c_m->rightidx : prev->next_c_m->leftidx;
- c_m_pt2 = ct->xdir ? stem->prev_c_m->leftidx : stem->prev_c_m->rightidx;
- }
-
- /* Now the stem's origin must be placed in respect to others... */
- /* TODO! What's really needed here is an iterative procedure that */
- /* would preserve counters and widths, like in freetype2. */
- /* For horizontal stems, interpolating between blues is being be done. */
-
- if (stem->ldone || stem->rdone ) {
- ct->pt = pushpoint(ct->pt, ct->edge.refpt);
- *(ct->pt)++ = MDAP; /* sets rp0 and rp1 */
- shp_rp1 = use_rp1;
- chg_rp0 = (ct->xdir && !lbase) || (!ct->xdir && lbase);
- }
- else if (!ct->xdir) { /* horizontal stem */
- ct->pt = pushpoint(ct->pt, ct->edge.refpt);
- *(ct->pt)++ = MDAP_rnd;
- shp_rp1 = use_rp1;
- chg_rp0 = keep_old_rp0;
- }
- else if (prev == NULL) { /* first vertical stem */
- ct->pt = pushpoint(ct->pt, ct->edge.refpt);
- *(ct->pt)++ = MDRP_rp0_rnd_white;
- shp_rp1 = use_rp2;
- chg_rp0 = keep_old_rp0;
- }
- else {
- if (ct->gic->fpgm_done) {
- if ( control_counters && c_m_pt1 != -1 && c_m_pt2 != -1 ) {
- callargs[0] = c_m_pt1;
- callargs[1] = c_m_pt2;
- callargs[2] = ct->rp0;
- callargs[3] = ct->edge.refpt;
- callargs[4] = get_counters_cut_in(ct, c_m_pt1, c_m_pt2, ct->rp0, ct->edge.refpt);
- callargs[5] = 15;
- ct->pt = pushpoints(ct->pt, 6, callargs);
-
- } else if ( control_counters && prev != NULL && prev->leftidx != -1 && prev->rightidx != -1 ) {
- callargs[0] = ct->xdir ? prev->leftidx : prev->rightidx;
- callargs[1] = ct->edge.refpt;
- callargs[2] = ( cur_pos - prev_pos ) > ct->gic->fudge ? 16 : 17;
- ct->pt = pushpoints(ct->pt, 3, callargs);
-
- } else if ( fabs( cur_pos - prev_pos ) > ct->gic->fudge ) {
- ct->pt = push2nums(ct->pt, ct->edge.refpt, 1);
- } else {
- ct->pt = push2nums(ct->pt, ct->edge.refpt, 11);
- }
- *(ct->pt)++ = CALL;
- }
- else {
- ct->pt = pushpoint(ct->pt, ct->edge.refpt);
- if ( fabs( cur_pos - prev_pos ) > ct->gic->fudge )
- *(ct->pt)++ = MDRP_rp0_min_rnd_grey;
- else
- *(ct->pt)++ = MDRP_rp0_rnd_white;
- }
- shp_rp1 = use_rp2;
-
- /* Don't switch rp0 to the second edge. Thus, relative distance
- * to the next stem is be larger, and errors are hopefully lesser.
- * TODO! This is disputable.
- * TODO! For the last vstem, we probably want to switch rp0 anyway.
- */
- chg_rp0 = keep_old_rp0;
- }
- ct->rp0 = ct->edge.refpt;
- finish_stem(stem, shp_rp1, chg_rp0, ct);
- if ( instruct_serif_stems || instruct_ball_terminals )
- instruct_serifs(ct, stem);
-
- instruct_dependent(ct, stem);
-}
-
-/* High-level function for instructing horizontal stems.
- *
- * It is assumed that blues (and hstems associated with them) are already
- * done so that remaining stems can be interpolated between them.
- *
- * TODO! CJK hinting will probably need different function (HStemGeninstCJK?)
- * TODO! Instruct top and bottom bearings for fonts which have them.
- */
-static void HStemGeninst(InstrCt *ct) {
- BlueZone *blues = ct->gic->blues;
- int bluecnt = ct->gic->bluecnt;
- BasePoint *bp = ct->bp;
- StemData *stem;
- int i, j, rp1, rp2, opp, bpt, ept;
- double hbase, hend;
- int mdrp_end, mdrp_base, ip_base, *rpts1, *rpts2;
- int callargs[5];
-
- if ( ct->gd->hbundle == NULL )
- return;
- rpts1 = calloc(ct->gd->hbundle->cnt, sizeof(int));
- rpts2 = calloc(ct->gd->hbundle->cnt, sizeof(int));
-
- /* Interpolating between blues is splitted to two stages: first
- * we determine which stems can be interpolated and which cannot
- * and store the numbers of reference points, and then (in the
- * second cycle) proceed to generating actual instructions. The reason is
- * that we need a special handling for dependent stems: if they
- * can be interpolated, we process them separately, but otherwise
- * the normal algorithm for positioning dependent stems relatively
- * to their "masters" is used. It is necessary to know which method
- * to prefer for each stem at the time instructions are generated.
- */
- for ( i=0; i<ct->gd->hbundle->cnt; i++ )
- {
- stem = ct->gd->hbundle->stemlist[i];
- if (!stem->ldone && !stem->rdone)
- {
- /* Set up upper edge (hend) and lower edge (hbase). */
- hbase = stem->right.y;
- hend = stem->left.y;
-
- /* Find two points to interpolate the HStem between.
- rp1 = lower, rp2 = upper. */
- rp1 = -1;
- rp2 = -1;
-
- for (j=0; j<bluecnt; j++) {
- if (blues[j].lowest == -1) // implies blues[j].highest==-1 too
- continue;
-
- if (bp[blues[j].lowest].y < hbase)
- if (rp1==-1 || bp[rp1].y < bp[blues[j].lowest].y)
- rp1=blues[j].lowest;
-
- if (bp[blues[j].highest].y > hend)
- if (rp2==-1 || bp[rp2].y > bp[blues[j].highest].y)
- rp2=blues[j].highest;
- }
- rpts1[i] = rp1; rpts2[i] = rp2;
-
- /* If a dependent stem has to be positioned by interpolating
- * one of its edges between the edges of the master stem and
- * we have found reference points to interpolate it between
- * blues, then we prefer to interpolate it between blues. However
- * we keep the standard handling for other types of dependent
- * stems, since usually positioning relatively to the "master"
- * stem is more important than positioning relatively to blues
- * in such cases.
- * Exception: nested stems marked for interpolation should be
- * positioned by interpolating between the edges of the nesting
- * stem.
- */
- if (rp1!=-1 && rp2!=-1 && stem->master != NULL)
- for (j=0; j<stem->master->dep_cnt; j++) {
- if (stem->master->dependent[j].stem == stem &&
- stem->master->dependent[j].dep_type == 'i' &&
- (stem->master->left.y <= stem->left.y ||
- stem->master->right.y >= stem->right.y)) {
- stem->master = NULL;
- break;
- }
- }
- }
- }
-
- for ( i=0; i<ct->gd->hbundle->cnt; i++ )
- {
- stem = ct->gd->hbundle->stemlist[i];
- if ( stem->master != NULL )
- continue;
- if (!stem->ldone && !stem->rdone)
- {
- hbase = stem->right.y;
- hend = stem->left.y;
-
- rp1 = rpts1[i]; rp2 = rpts2[i];
- /* Reference points not found? Fall back to old method. */
- if (rp1==-1 || rp2==-1) {
- geninstrs(ct, stem, NULL, false);
- continue;
- }
-
- bpt = ept = -1;
- if ( !stem->ghost || stem->width == 21 ) {
- init_stem_edge(ct, stem, false);
- bpt = ct->edge.refpt;
- }
- if ( !stem->ghost || stem->width == 20 ) {
- init_stem_edge(ct, stem, true);
- ept = ct->edge.refpt;
- }
- if ( bpt == -1 && ept == -1 )
- continue;
-
- /* Align the stem relatively to rp0 and rp1. */
- mdrp_end = ept != -1 &&
- fabs(bp[rp2].y - hbase) < 0.2*fabs(bp[rp2].y - bp[rp1].y);
- mdrp_base = bpt != -1 &&
- fabs(bp[rp1].y - hend) < 0.2*fabs(bp[rp2].y - bp[rp1].y);
-
- if (mdrp_end || mdrp_base) {
- if (mdrp_end) init_stem_edge(ct, stem, true);
- else init_stem_edge(ct, stem, false);
-
- if (ct->edge.refpt == -1) continue;
-
- if (mdrp_end) ct->pt = push2points(ct->pt, ct->edge.refpt, rp2);
- else ct->pt = push2points(ct->pt, ct->edge.refpt, rp1);
-
- *(ct->pt)++ = SRP0;
- *(ct->pt)++ = DUP;
- *(ct->pt)++ = MDRP_grey;
- *(ct->pt)++ = MDAP_rnd;
- }
- else if ( bpt == -1 || ept == -1 ) {
- ip_base = ( ept == -1 );
- init_stem_edge(ct, stem, !ip_base);
- if ( ct->gic->fpgm_done ) {
- callargs[0] = ct->edge.refpt;
- callargs[1] = rp1;
- callargs[2] = rp2;
- callargs[3] = 8;
- ct->pt = pushnums(ct->pt, 4, callargs);
- *(ct->pt)++ = CALL;
- }
- else {
- callargs[0] = ct->edge.refpt;
- callargs[1] = rp1;
- callargs[2] = rp2;
- ct->pt = pushnums(ct->pt, 3, callargs);
- *(ct->pt)++ = SRP2;
- *(ct->pt)++ = SRP1;
- *(ct->pt)++ = DUP;
- *(ct->pt)++ = IP;
- *(ct->pt)++ = MDAP_rnd;
- }
- }
- else {
- ip_base = fabs(bp[rp2].y - hend) < fabs(bp[rp1].y - hbase);
- opp = ip_base ? ept : bpt;
- init_stem_edge(ct, stem, !ip_base);
-
- if (ct->edge.refpt == -1) continue;
-
- if ( ct->gic->fpgm_done ) {
- callargs[0] = opp;
- callargs[1] = ct->edge.refpt;
- callargs[2] = rp1;
- callargs[3] = rp2;
- callargs[4] = 13;
- ct->pt = pushnums(ct->pt, 5, callargs);
- *(ct->pt)++ = CALL;
- } else {
- callargs[0] = ct->edge.refpt;
- callargs[1] = rp1;
- callargs[2] = rp2;
- ct->pt = pushnums(ct->pt, 3, callargs);
- *(ct->pt)++ = SRP2;
- *(ct->pt)++ = SRP1;
- *(ct->pt)++ = DUP;
- *(ct->pt)++ = IP;
- *(ct->pt)++ = MDAP_rnd;
- }
- }
-
- ct->rp0 = ct->edge.refpt;
- finish_stem(stem, use_rp1, keep_old_rp0, ct);
- if ( instruct_serif_stems || instruct_ball_terminals )
- instruct_serifs(ct, stem);
-
- instruct_dependent(ct, stem);
- }
- }
- free(rpts1);
- free(rpts2);
-}
-
-/*
- * High-level function for instructing vertical stems.
- *
- * TODO! CJK hinting may need different function (VStemGeninstCJK?)
- */
-static void VStemGeninst(InstrCt *ct) {
- StemData *stem, *prev=NULL;
- int i;
-
- if (ct->rp0 != ct->ptcnt) {
- ct->pt = pushpoint(ct->pt, ct->ptcnt);
- *(ct->pt)++ = MDAP_rnd;
- ct->rp0 = ct->ptcnt;
- }
-
- if ( ct->gd->vbundle != NULL ) {
- for ( i=0; i<ct->gd->vbundle->cnt; i++ ) {
- stem = ct->gd->vbundle->stemlist[i];
- if ((!stem->ldone || !stem->rdone) && stem->master == NULL) {
-
- if (prev != NULL && prev->rightidx != -1 && ct->rp0 != prev->rightidx) {
- ct->pt = pushpoint(ct->pt, prev->rightidx);
- *(ct->pt)++ = SRP0;
- ct->rp0 = prev->rightidx;
- }
- geninstrs(ct, stem, prev, true);
- prev = stem;
- }
- }
- }
-
- /* instruct right sidebearing */
- if (ct->sc->width != 0) {
- if ( ct->gic->fpgm_done && !control_counters ) {
- ct->pt = push2nums(ct->pt, ct->ptcnt+1, 1);
- *(ct->pt)++ = CALL;
- } else {
- /* select rp0 at the right edge of last stem - geninstrs() didn't. */
- /* TODO! after some time, move this to geninstrs(), to save space. */
- if (prev != NULL && prev->rightidx != -1 && ct->rp0 != prev->rightidx) {
- ct->pt = pushpoint(ct->pt, prev->rightidx);
- *(ct->pt)++ = SRP0;
- ct->rp0 = prev->rightidx;
- }
- ct->pt = pushpoint(ct->pt, ct->ptcnt+1);
- *(ct->pt)++ = MDRP_rp0_rnd_white;
- }
- ct->rp0 = ct->ptcnt+1;
- }
-}
-
-/******************************************************************************
- *
- * Everything related with diagonal hinting goes here
- *
- ******************************************************************************/
-
-#define DIAG_MIN_DISTANCE (0.84375)
-
-static int ds_cmp( const void *_s1, const void *_s2 ) {
- StemData * const *s1 = _s1, * const *s2 = _s2;
-
- BasePoint *bp1, *bp2;
- bp1 = (*s1)->unit.y > 0 ? &(*s1)->keypts[0]->base : &(*s1)->keypts[2]->base;
- bp2 = (*s2)->unit.y > 0 ? &(*s2)->keypts[0]->base : &(*s2)->keypts[2]->base;
- if ( bp1->x < bp2->x || ( bp1->x == bp2->x && bp1->y < bp2->y ))
-return( -1 );
- else if ( bp2->x < bp1->x || ( bp2->x == bp1->x && bp2->y < bp1->y ))
-return( 1 );
-
-return( 0 );
-}
-
-/* Takes a line defined by two points and returns a vector decribed as a
- * pair of x and y values, such that the value (x2 + y2) is equal to 1.
- * Note that the BasePoint structure is used to store the vector, although
- * it is not a point itself. This is just because that structure has "x"
- * and "y" fields which can be used for our purpose.
- */
-static BasePoint GetVector ( BasePoint *top,BasePoint *bottom,int orth ) {
- real catx, caty, hyp, temp;
- BasePoint ret;
-
- catx = top->x - bottom->x; caty = top->y - bottom->y;
- hyp = sqrt(( catx*catx ) + ( caty*caty ));
- ret.y = caty/hyp; ret.x = catx/hyp;
-
- if( orth ) {
- temp = ret.x; ret.x = -ret.y; ret.y = temp;
- }
-return( ret );
-}
-
-static int SetDStemKeyPoint( InstrCt *ct,StemData *stem,PointData *pd,int aindex ) {
-
- int nextidx, previdx, cpidx, prev_outer, next_outer, is_start;
- int nsidx, psidx, sidx;
- uint8 flag;
- PointData *ncpd, *pcpd, *cpd, *best = NULL;
- real prevdot, nextdot, cpdist;
-
- if ( pd == NULL )
-return( false );
-
- flag = fabs( stem->unit.y ) > fabs( stem->unit.x ) ? tf_y : tf_x;
- is_start = ( aindex == 0 || aindex == 2 );
- prevdot = ( pd->prevunit.x * stem->unit.x ) +
- ( pd->prevunit.y * stem->unit.y );
- nextdot = ( pd->nextunit.x * stem->unit.x ) +
- ( pd->nextunit.y * stem->unit.y );
- prev_outer = IsStemAssignedToPoint( pd,stem,false ) != -1 &&
- (( is_start && prevdot < 0 ) || ( !is_start && prevdot > 0 ));
- next_outer = IsStemAssignedToPoint( pd,stem,true ) != -1 &&
- (( is_start && nextdot < 0 ) || ( !is_start && nextdot > 0 ));
-
- if ( pd->ttfindex >= ct->gd->realcnt ) {
- nextidx = pd->sp->nextcpindex;
- previdx = pd->sp->prev->from->nextcpindex;
- ncpd = &ct->gd->points[nextidx];
- pcpd = &ct->gd->points[previdx];
- psidx = IsStemAssignedToPoint( pcpd,stem,true );
- nsidx = IsStemAssignedToPoint( ncpd,stem,false );
-
- if ( psidx == -1 && nsidx == -1 )
-return( false );
-
- if ( psidx > -1 && nsidx > -1 )
- best = ( prev_outer ) ? pcpd : ncpd;
- else
- best = ( psidx > -1 ) ? pcpd : ncpd;
-
- } else if (( !pd->sp->nonextcp && next_outer ) || ( !pd->sp->noprevcp && prev_outer )) {
- cpidx = ( prev_outer ) ? pd->sp->prev->from->nextcpindex : pd->sp->nextcpindex;
- cpd = &ct->gd->points[cpidx];
- sidx = IsStemAssignedToPoint( cpd,stem,prev_outer );
-
- if ( sidx != -1 ) {
- cpdist = fabs(( pd->base.x - cpd->base.x ) * stem->unit.x +
- ( pd->base.y - cpd->base.y ) * stem->unit.y );
- if (( cpdist > stem->clen/2 ) ||
- (!(ct->touched[pd->ttfindex] & flag) && !(ct->affected[pd->ttfindex] & flag) &&
- ( ct->touched[cpd->ttfindex] & flag || ct->affected[cpd->ttfindex] & flag )))
- best = cpd;
- }
- if ( best == NULL ) best = pd;
- } else
- best = pd;
-
- stem->keypts[aindex] = best;
-return( true );
-}
-
-static void AssignLineToPoint( DiagPointInfo *diagpts,StemData *stem,int idx,int is_l ) {
- int num, base, i;
- PointData *pd1, *pd2;
-
- num = diagpts[idx].count;
- base = ( is_l ) ? 0 : 2;
- pd1 = stem->keypts[base];
- pd2 = stem->keypts[base+1];
- for ( i=0; i<num; i++ ) {
- if ( diagpts[idx].line[i].pd1 == pd1 && diagpts[idx].line[i].pd2 == pd2 )
-return;
- }
-
- diagpts[idx].line[num].pd1 = stem->keypts[base];
- diagpts[idx].line[num].pd2 = stem->keypts[base+1];
- diagpts[idx].line[num].done = false;
- diagpts[idx].count++;
-return;
-}
-
-/* Convert the existing diagonal stem layout to glyph data, containing
- * information about points assigned to each stem. Then run on stem chunks
- * and associate with each point the line it should be aligned by. Note that
- * we have to do this on a relatively early stage, as it may be important
- * to know, if the given point is subject to the subsequent diagonale hinting,
- * before any actual processing of diagonal stems is started.
- */
-static void InitDStemData( InstrCt *ct ) {
- DiagPointInfo *diagpts = ct->diagpts;
- int i, j, idx, previdx, nextidx, num1, num2, psidx, nsidx, is_l, cnt=0;
- real prevlsp, prevrsp, prevlep, prevrep, lpos, rpos;
- GlyphData *gd;
- StemData *stem;
- PointData *ls, *rs, *le, *re, *tpd, *ppd, *npd;
- struct stem_chunk *chunk;
-
- gd = ct->gd;
-
- for ( i=0; i<gd->stemcnt; i++ ) {
- stem = &gd->stems[i];
- if ( stem->toobig )
- continue;
- if (( stem->unit.y > -.05 && stem->unit.y < .05 ) ||
- ( stem->unit.x > -.05 && stem->unit.x < .05 ))
- continue;
- if ( stem->lpcnt < 2 || stem->rpcnt < 2 )
- continue;
-
- prevlsp = prevrsp = 1e4;
- prevlep = prevrep = -1e4;
- ls = rs = le = re = NULL;
- for ( j=0; j<stem->chunk_cnt; j++ ) {
- chunk = &stem->chunks[j];
- if ( chunk->l != NULL ) {
- lpos = ( chunk->l->base.x - stem->left.x )*stem->unit.x +
- ( chunk->l->base.y - stem->left.y )*stem->unit.y;
- if ( lpos < prevlsp ) {
- ls = chunk->l; prevlsp = lpos;
- }
- if ( lpos > prevlep ) {
- le = chunk->l; prevlep = lpos;
- }
- }
- if ( chunk->r != NULL ) {
- rpos = ( chunk->r->base.x - stem->right.x )*stem->unit.x +
- ( chunk->r->base.y - stem->right.y )*stem->unit.y;
- if ( rpos < prevrsp ) {
- rs = chunk->r; prevrsp = rpos;
- }
- if ( rpos > prevrep ) {
- re = chunk->r; prevrep = rpos;
- }
- }
- }
-
- /* Swap "left" and "right" sides for vectors pointing north-east,
- * so that the "left" side is always determined along the x axis
- * rather than relatively to the vector direction */
- num1 = ( stem->unit.y > 0 ) ? 0 : 2;
- num2 = ( stem->unit.y > 0 ) ? 2 : 0;
- if (!SetDStemKeyPoint( ct,stem,ls,num1 ) || !SetDStemKeyPoint( ct,stem,rs,num2 ))
- continue;
-
- num1 = ( stem->unit.y > 0 ) ? 1 : 3;
- num2 = ( stem->unit.y > 0 ) ? 3 : 1;
- if (!SetDStemKeyPoint( ct,stem,le,num1 ) || !SetDStemKeyPoint( ct,stem,re,num2 ))
- continue;
-
- for ( j=0; j<gd->pcnt; j++ )
- gd->points[j].ticked = false;
- for ( j=0; j<gd->pcnt; j++ ) if ( gd->points[j].sp != NULL ) {
- tpd = &gd->points[j];
- idx = tpd->ttfindex;
- psidx = nsidx = -1;
- if ( idx < gd->realcnt ) {
- if ( !tpd->ticked && diagpts[idx].count < 2 && (
- ( psidx = IsStemAssignedToPoint( tpd,stem,false )) > -1 ||
- ( nsidx = IsStemAssignedToPoint( tpd,stem,true )) > -1)) {
-
- is_l = ( nsidx > -1 ) ? tpd->next_is_l[nsidx] : tpd->prev_is_l[psidx];
- if ( stem->unit.y < 0 ) is_l = !is_l;
- AssignLineToPoint( diagpts,stem,idx,is_l );
- tpd->ticked = true;
- }
- } else {
- previdx = tpd->sp->prev->from->nextcpindex;
- nextidx = tpd->sp->nextcpindex;
- ppd = &gd->points[previdx];
- npd = &gd->points[nextidx];
- if (!ppd->ticked && diagpts[previdx].count < 2 &&
- ( nsidx = IsStemAssignedToPoint( ppd,stem,true )) > -1 ) {
-
- is_l = ppd->next_is_l[nsidx];
- if ( stem->unit.y < 0 ) is_l = !is_l;
- AssignLineToPoint( diagpts,stem,previdx,is_l );
- ppd->ticked = true;
- }
- if (!npd->ticked && diagpts[nextidx].count < 2 &&
- ( psidx = IsStemAssignedToPoint( npd,stem,false )) > -1 ) {
-
- is_l = npd->prev_is_l[psidx];
- if ( stem->unit.y < 0 ) is_l = !is_l;
- AssignLineToPoint( diagpts,stem,nextidx,is_l );
- npd->ticked = true;
- }
- }
- }
- ct->diagstems[cnt++] = stem;
- }
- qsort( ct->diagstems,cnt,sizeof( StemData *),ds_cmp );
- ct->diagcnt = cnt;
-}
-
-/* Usually we have to start doing each diagonal stem from the point which
- * is most touched in any directions.
- */
-static int FindDiagStartPoint( StemData *stem, uint8 *touched ) {
- int i;
-
- for ( i=0; i<4; ++i ) {
- if (( touched[stem->keypts[i]->ttfindex] & tf_x ) &&
- ( touched[stem->keypts[i]->ttfindex] & tf_y ))
-return( i );
- }
-
- for ( i=0; i<4; ++i ) {
- if (( stem->unit.x > stem->unit.y &&
- touched[stem->keypts[i]->ttfindex] & tf_y ) ||
- ( stem->unit.y > stem->unit.x &&
- touched[stem->keypts[i]->ttfindex] & tf_x ))
-return( i );
- }
-
- for ( i=0; i<4; ++i ) {
- if ( touched[stem->keypts[i]->ttfindex] & ( tf_x | tf_y ))
-return( i );
- }
-return( 0 );
-}
-
-/* Check the directions at which the given point still can be moved
- * (i. e. has not yet been touched) and set freedom vector to that
- * direction in case it has not already been set.
- */
-static int SetFreedomVector( uint8 **instrs,int pnum,
- uint8 *touched,DiagPointInfo *diagpts,BasePoint *norm,BasePoint *fv,int pvset,int fpgm_ok ) {
-
- int i, pushpts[3];
- PointData *start=NULL, *end=NULL;
- BasePoint newfv;
-
- if (( touched[pnum] & tf_d ) && !( touched[pnum] & tf_x ) && !( touched[pnum] & tf_y )) {
- for ( i=0 ; i<diagpts[pnum].count ; i++) {
- if ( diagpts[pnum].line[i].done ) {
- start = diagpts[pnum].line[i].pd1;
- end = diagpts[pnum].line[i].pd2;
- }
- }
-
- /* This should never happen */
- if ( start == NULL || end == NULL )
-return( false );
-
- newfv = GetVector( &start->base,&end->base,false );
- if ( !UnitsParallel( fv,&newfv,true )) {
- fv->x = newfv.x; fv->y = newfv.y;
-
- pushpts[0] = start->ttfindex; pushpts[1] = end->ttfindex;
- *instrs = pushpoints( *instrs,2,pushpts );
- *(*instrs)++ = 0x08; /*SFVTL[parallel]*/
- }
-
-return( true );
-
- } else if ( touched[pnum] & tf_x && !(touched[pnum] & tf_d) && !(touched[pnum] & tf_y)) {
- if (!( RealNear( fv->x,0 ) && RealNear( fv->y,1 ))) {
- *(*instrs)++ = 0x04; /*SFVTCA[y-axis]*/
- fv->x = 0; fv->y = 1;
- }
-return( true );
-
- } else if ( touched[pnum] & tf_y && !(touched[pnum] & tf_d) && !(touched[pnum] & tf_x)) {
- if (!( RealNear( fv->x,1 ) && RealNear( fv->y,0 ))) {
- *(*instrs)++ = 0x05; /*SFVTCA[x-axis]*/
- fv->x = 1; fv->y = 0;
- }
-return( true );
- } else if ( !(touched[pnum] & (tf_x|tf_y|tf_d))) {
- if ( !UnitsParallel( fv,norm,true )) {
- fv->x = norm->x; fv->y = norm->y;
-
- if ( pvset )
- *(*instrs)++ = 0x0E; /*SFVTPV*/
- else {
- pushpts[0] = EF2Dot14(norm->x);
- pushpts[1] = EF2Dot14(norm->y);
- if ( fpgm_ok ) {
- pushpts[2] = 21;
- *instrs = pushpoints( *instrs,3,pushpts );
- *(*instrs)++ = CALL; /* aspect-ratio correction */
- } else
- *instrs = pushpoints( *instrs,2,pushpts );
-
- *(*instrs)++ = 0x0b; /* SFVFS */
- }
- }
-return( true );
- }
-return( false );
-}
-
-static int MarkLineFinished( int pnum,int startnum,int endnum,DiagPointInfo *diagpts ) {
- int i;
-
- for ( i=0; i<diagpts[pnum].count; i++ ) {
- if (( diagpts[pnum].line[i].pd1->ttfindex == startnum ) &&
- ( diagpts[pnum].line[i].pd2->ttfindex == endnum )) {
-
- diagpts[pnum].line[i].done = 2;
-return( true );
- }
- }
-return( false );
-}
-
-static uint8 *FixDStemPoint ( InstrCt *ct,StemData *stem,
- int pt,int refpt,int firstedge,int cvt,BasePoint *fv ) {
- uint8 *instrs, *touched;
- DiagPointInfo *diagpts;
-
- diagpts = ct->diagpts;
- touched = ct->touched;
- instrs = ct->pt;
-
- if ( SetFreedomVector( &instrs,pt,touched,diagpts,&stem->l_to_r,fv,true,
- ct->gic->fpgm_done && ct->gic->prep_done )) {
- if ( refpt == -1 ) {
- if (( fv->x == 1 && !( touched[pt] & tf_x )) ||
- ( fv->y == 1 && !( touched[pt] & tf_y ))) {
-
- instrs = pushpoint( instrs,pt );
- *instrs++ = MDAP;
- } else {
- instrs = pushpoint( instrs,pt );
- *instrs++ = SRP0;
- }
- ct->rp0 = pt;
- } else {
- if ( refpt != ct->rp0 ) {
- instrs = pushpoint( instrs,refpt );
- *instrs++ = SRP0;
- ct->rp0 = refpt;
- }
-
- if ( cvt < 0 ) {
- instrs = pushpoint( instrs,pt );
- *instrs++ = MDRP_grey;
- } else {
- instrs = pushpointstem( instrs,pt,cvt );
- *instrs++ = MIRP_rp0_min_black;
- ct->rp0 = pt;
- }
- }
- touched[pt] |= tf_d;
-
- if (!MarkLineFinished( pt,stem->keypts[0]->ttfindex,stem->keypts[1]->ttfindex,diagpts ))
- MarkLineFinished( pt,stem->keypts[2]->ttfindex,stem->keypts[3]->ttfindex,diagpts );
- }
-return( instrs );
-}
-
-static int DStemHasSnappableCorners ( InstrCt *ct,StemData *stem,PointData *pd1,PointData *pd2 ) {
- uint8 *touched = ct->touched;
-
- /* We should be dealing with oncurve points */
- if ( pd1->sp == NULL || pd2->sp == NULL )
-return( false );
-
- /* points should not be lined up vertically or horizontally */
- if (fabs( pd1->base.x - pd2->base.x ) <= ct->gic->fudge ||
- fabs( pd1->base.y - pd2->base.y ) <= ct->gic->fudge )
-return( false );
-
- if (( pd1->x_corner == 1 && !( touched[pd1->ttfindex] & tf_y ) &&
- pd2->y_corner == 1 && !( touched[pd2->ttfindex] & tf_x )) ||
- ( pd1->y_corner == 1 && !( touched[pd1->ttfindex] & tf_x ) &&
- pd2->x_corner == 1 && !( touched[pd2->ttfindex] & tf_y )))
-return( true );
-
-return( false );
-}
-
-static uint8 *SnapDStemCorners ( InstrCt *ct,StemData *stem,PointData *pd1,PointData *pd2,BasePoint *fv ) {
- uint8 *instrs, *touched;
- int xbase, ybase;
-
- instrs = ct->pt;
- touched = ct->touched;
-
- if ( pd1->x_corner && pd2->y_corner ) {
- xbase = pd1->ttfindex; ybase = pd2->ttfindex;
- } else {
- xbase = pd2->ttfindex; ybase = pd1->ttfindex;
- }
-
- *(ct->pt)++ = SVTCA_x;
- ct->pt = push2points( ct->pt,ybase,xbase );
- *(ct->pt)++ = touched[xbase] & tf_x ? MDAP : MDAP_rnd;
- *(ct->pt)++ = MDRP_min_black;
- *(ct->pt)++ = SVTCA_y;
- ct->pt = push2points( ct->pt,xbase,ybase );
- *(ct->pt)++ = touched[ybase] & tf_y ? MDAP : MDAP_rnd;
- *(ct->pt)++ = MDRP_min_black;
-
- touched[xbase] |= ( tf_x | tf_y );
- touched[ybase] |= ( tf_x | tf_y );
- fv->x = 0; fv->y = 1;
-
-return( instrs );
-}
-
-/* A basic algorithm for hinting diagonal stems:
- * -- iterate through diagonal stems, ordered from left to right;
- * -- for each stem, find the most touched point, to start from,
- * and fix that point. TODO: the positioning should be done
- * relatively to points already touched by x or y;
- * -- position the second point on the same edge, using dual projection
- * vector;
- * -- link to the second edge and repeat the same operation.
- *
- * For each point we first determine a direction at which it still can
- * be moved. If a point has already been positioned relatively to another
- * diagonal line, then we move it along that diagonale. Thus this algorithm
- * can handle things like "V" where one line's ending point is another
- * line's starting point without special exceptions.
- */
-static uint8 *FixDstem( InstrCt *ct, StemData *ds, BasePoint *fv ) {
- int startnum, a1, a2, b1, b2, firstedge, cvt;
- int x_ldup, y_ldup, x_edup, y_edup, dsc1, dsc2;
- PointData *v1, *v2;
- uint8 *touched;
- int pushpts[3];
-
- if ( ds->ldone && ds->rdone )
-return( ct->pt );
-
- touched = ct->touched;
-
- dsc1 = DStemHasSnappableCorners( ct,ds,ds->keypts[0],ds->keypts[2] );
- dsc2 = DStemHasSnappableCorners( ct,ds,ds->keypts[1],ds->keypts[3] );
-
- if ( dsc1 || dsc2 ) {
- ct->pt = pushF26Dot6( ct->pt,.59662 );
- *(ct->pt)++ = SMD;
-
- if ( dsc1 )
- SnapDStemCorners( ct,ds,ds->keypts[0],ds->keypts[2],fv );
- if ( dsc2 )
- SnapDStemCorners( ct,ds,ds->keypts[1],ds->keypts[3],fv );
-
- ct->pt = pushF26Dot6( ct->pt,DIAG_MIN_DISTANCE );
- *(ct->pt)++ = SMD;
- }
-
- if ( !dsc1 || !dsc2 ) {
- startnum = FindDiagStartPoint( ds,touched );
- a1 = ds->keypts[startnum]->ttfindex;
- if (( startnum == 0 ) || ( startnum == 1 )) {
- firstedge = true;
- v1 = ds->keypts[0]; v2 = ds->keypts[1];
- a2 = ( startnum == 1 ) ? ds->keypts[0]->ttfindex : ds->keypts[1]->ttfindex;
- b1 = ( startnum == 1 ) ? ds->keypts[3]->ttfindex : ds->keypts[2]->ttfindex;
- b2 = ( startnum == 1 ) ? ds->keypts[2]->ttfindex : ds->keypts[3]->ttfindex;
- } else {
- firstedge = false;
- v1 = ds->keypts[2]; v2 = ds->keypts[3];
- a2 = ( startnum == 3 ) ? ds->keypts[2]->ttfindex : ds->keypts[3]->ttfindex;
- b1 = ( startnum == 3 ) ? ds->keypts[1]->ttfindex : ds->keypts[0]->ttfindex;
- b2 = ( startnum == 3 ) ? ds->keypts[0]->ttfindex : ds->keypts[1]->ttfindex;
- }
-
- /* Always put the calculated stem width into the CVT table, unless it is
- * already there. This approach would be wrong for vertical or horizontal
- * stems, but for diagonales it is just unlikely that we can find an
- * acceptable predefined value in StemSnapH or StemSnapV
- */
- cvt = TTF_getcvtval( ct->gic->sf,ds->width );
-
- pushpts[0] = EF2Dot14(ds->l_to_r.x);
- pushpts[1] = EF2Dot14(ds->l_to_r.y);
- if ( ct->gic->fpgm_done && ct->gic->prep_done ) {
- pushpts[2] = 21;
- ct->pt = pushnums( ct->pt, 3, pushpts );
- *(ct->pt)++ = CALL; /* Aspect ratio correction */
- } else
- ct->pt = pushnums( ct->pt, 2, pushpts );
- *(ct->pt)++ = 0x0A; /* SPVFS */
-
- pushpts[0] = v1->ttfindex; pushpts[1] = v2->ttfindex;
-
- x_ldup =( touched[a1] & tf_x && touched[a2] & tf_x ) ||
- ( touched[b1] & tf_x && touched[b2] & tf_x );
- y_ldup =( touched[a1] & tf_y && touched[a2] & tf_y ) ||
- ( touched[b1] & tf_y && touched[b2] & tf_y );
- x_edup =( touched[a1] & tf_x && touched[b1] & tf_x ) ||
- ( touched[a2] & tf_x && touched[b2] & tf_x );
- y_edup =( touched[a1] & tf_y && touched[b1] & tf_y ) ||
- ( touched[a2] & tf_y && touched[b2] & tf_y );
-
- if (( x_ldup && !y_edup ) || ( y_ldup && !x_edup)) {
-
- ct->pt = FixDStemPoint ( ct,ds,a1,-1,firstedge,-1,fv );
- ct->pt = FixDStemPoint ( ct,ds,b2,-1,firstedge,-1,fv );
- ct->pt = FixDStemPoint ( ct,ds,b1,a1,firstedge,cvt,fv );
- ct->pt = FixDStemPoint ( ct,ds,a2,b2,firstedge,cvt,fv );
- } else {
- ct->pt = FixDStemPoint ( ct,ds,a1,-1,firstedge,-1,fv );
- ct->pt = FixDStemPoint ( ct,ds,a2,a1,firstedge,-1,fv );
- ct->pt = FixDStemPoint ( ct,ds,b1,a1,firstedge,cvt,fv );
- ct->pt = FixDStemPoint ( ct,ds,b2,b1,firstedge,-1,fv );
- }
- }
-
- ds->ldone = ds->rdone = true;
-return( ct->pt );
-}
-
-static uint8 *FixPointOnLine ( DiagPointInfo *diagpts,PointVector *line,
- PointData *pd,InstrCt *ct,BasePoint *fv,BasePoint *pv,int *rp1,int *rp2 ) {
-
- uint8 *instrs, *touched;
- BasePoint newpv;
- int pushpts[4];
-
- touched = ct->touched;
- instrs = ct->pt;
-
- newpv = GetVector( &line->pd1->base,&line->pd2->base,true );
-
- if ( SetFreedomVector( &instrs,pd->ttfindex,touched,diagpts,&newpv,fv,false,
- ct->gic->fpgm_done && ct->gic->prep_done )) {
- if ( ct->rp0 != line->pd1->ttfindex ) {
- instrs = pushpoint( instrs,line->pd1->ttfindex );
- *instrs++ = SRP0;
- ct->rp0 = line->pd1->ttfindex;
- }
- if ( ct->gic->fpgm_done ) {
- pv->x = newpv.x; pv->y = newpv.y;
-
- pushpts[0] = pd->ttfindex;
- pushpts[1] = line->pd1->ttfindex;
- pushpts[2] = line->pd2->ttfindex;
- pushpts[3] = 19;
- instrs = pushpoints( instrs,4,pushpts );
- *instrs++ = CALL;
- } else {
- if ( !UnitsParallel( pv,&newpv,true )) {
- pv->x = newpv.x; pv->y = newpv.y;
-
- pushpts[0] = line->pd1->ttfindex; pushpts[1] = line->pd2->ttfindex;
- instrs = pushpoints( instrs,2,pushpts );
- *instrs++ = 0x07; /*SPVTL[orthogonal]*/
- }
-
- instrs = pushpoint( instrs,pd->ttfindex );
- *instrs++ = MDRP_grey;
- }
- }
-return( instrs );
-}
-
-/* If a point has to be positioned just relatively to the diagonal
- * line (no intersections, no need to maintain other directions),
- * then we can interpolate it along that line. This usually produces
- * better results for things like a Danish slashed "O".
- */
-static uint8 *InterpolateAlongDiag ( DiagPointInfo *diagpts,PointVector *line,
- PointData *pd,InstrCt *ct,BasePoint *fv,BasePoint *pv,int *rp1,int *rp2 ) {
-
- uint8 *instrs, *touched;
- BasePoint newpv;
- int pushpts[3];
-
- touched = ct->touched;
- instrs = ct->pt;
-
- if (diagpts[pd->ttfindex].count != 1 || touched[pd->ttfindex] & ( tf_x|tf_y ) ||
- diagpts[pd->ttfindex].line[0].done > 1 )
-return( instrs );
-
- newpv = GetVector( &line->pd1->base,&line->pd2->base,false );
-
- if ( !UnitsParallel( pv,&newpv,false ) ||
- *rp1 != line->pd1->ttfindex || *rp2 != line->pd1->ttfindex ) {
-
- pushpts[0] = pd->ttfindex;
- pushpts[1] = line->pd1->ttfindex;
- pushpts[2] = line->pd2->ttfindex;
- instrs = pushpoints( instrs,3,pushpts );
- } else
- instrs = pushpoint ( instrs,pd->ttfindex );
-
- if ( !UnitsParallel( pv,&newpv,true )) {
- pv->x = newpv.x; pv->y = newpv.y;
-
- if ( *rp1 != line->pd1->ttfindex || *rp2 != line->pd1->ttfindex ) {
- *instrs++ = DUP;
- *instrs++ = 0x8a; /* ROLL */
- *instrs++ = DUP;
- *instrs++ = 0x8a; /* ROLL */
- *instrs++ = 0x23; /* SWAP */
- }
- *instrs++ = 0x06; /* SPVTL[parallel] */
- }
-
- if ( !UnitsParallel( fv,&newpv,true )) {
- *instrs++ = 0x0E; /* SFVTPV */
- fv->x = newpv.x; fv->y = newpv.y;
- }
- if ( *rp1 != line->pd1->ttfindex || *rp2 != line->pd1->ttfindex ) {
- *rp1 = line->pd1->ttfindex;
- *rp2 = line->pd1->ttfindex;
-
- *instrs++ = SRP1;
- *instrs++ = SRP2;
- }
- *instrs++ = IP;
- touched[pd->ttfindex] |= tf_d;
- diagpts[pd->ttfindex].line[0].done = 2;
-return( instrs );
-}
-
-/* When all stem edges have already been positioned, run through other
- * points which are known to be related with some diagonales and position
- * them too. This may include both intersections and points which just
- * lie on a diagonal line. This function does not care about starting/ending
- * points of stems, unless they should be additionally positioned relatively
- * to another stem. Thus is can handle things like "X" or "K".
- */
-static uint8 *MovePointsToIntersections( InstrCt *ct,BasePoint *fv ) {
-
- int i, j, ptcnt, rp1=-1, rp2=-1;
- uint8 *touched;
- BasePoint pv;
- PointData *curpd, *npd, *ppd;
- DiagPointInfo *diagpts;
- StemData *ds;
-
- touched = ct->touched;
- ptcnt = ct->gd->realcnt;
- diagpts = ct->diagpts;
- pv.x = 1; pv.y = 0;
-
- for ( i=0; i<ptcnt; i++ ) {
- if ( diagpts[i].count > 0 ) {
- for ( j=0; j<diagpts[i].count; j++ ) {
- if ( !diagpts[i].line[j].done ) {
- curpd = &ct->gd->points[i];
-
- ct->pt = FixPointOnLine( diagpts,&diagpts[i].line[j],
- curpd,ct,fv,&pv,&rp1,&rp2 );
-
- diagpts[i].line[j].done = true;
- touched[i] |= tf_d;
- }
- }
- }
- }
-
- /* Second pass to interpolate points lying on diagonal lines (but not
- * starting/ending stem points) along those lines. This operation, unlike
- * moving points to diagonals, requires vectors to be set parallel to lines,
- * and this is the reason for which it is done in a separate cycle
- */
- for ( i=0; i<ct->diagcnt; i++ ) {
- ds = ct->diagstems[i];
- if ( ds->ldone ) {
- for ( j=0; j<ds->chunk_cnt; j++ ) if (( curpd = ds->chunks[j].l ) != NULL ) {
- if ( curpd->ttfindex < ct->ptcnt ) {
- ct->pt = InterpolateAlongDiag ( diagpts,&diagpts[curpd->ttfindex].line[0],
- curpd,ct,fv,&pv,&rp1,&rp2 );
- } else {
- ppd = &ct->gd->points[curpd->sp->prev->from->nextcpindex];
- npd = &ct->gd->points[curpd->sp->nextcpindex];
- if ( IsStemAssignedToPoint(ppd, ds, true) != -1 )
- ct->pt = InterpolateAlongDiag ( diagpts,&diagpts[ppd->ttfindex].line[0],
- ppd,ct,fv,&pv,&rp1,&rp2 );
- if ( IsStemAssignedToPoint(npd, ds, false) != -1 )
- ct->pt = InterpolateAlongDiag ( diagpts,&diagpts[npd->ttfindex].line[0],
- npd,ct,fv,&pv,&rp1,&rp2 );
- }
- }
- }
- if ( ds->rdone ) {
- for ( j=0; j<ds->chunk_cnt; j++ ) if (( curpd = ds->chunks[j].r ) != NULL ) {
- if ( curpd->ttfindex < ct->ptcnt ) {
- ct->pt = InterpolateAlongDiag ( diagpts,&diagpts[curpd->ttfindex].line[0],
- curpd,ct,fv,&pv,&rp1,&rp2 );
- } else {
- ppd = &ct->gd->points[curpd->sp->prev->from->nextcpindex];
- npd = &ct->gd->points[curpd->sp->nextcpindex];
- if ( IsStemAssignedToPoint(ppd, ds, true) != -1 )
- ct->pt = InterpolateAlongDiag ( diagpts,&diagpts[ppd->ttfindex].line[0],
- ppd,ct,fv,&pv,&rp1,&rp2 );
- if ( IsStemAssignedToPoint(npd, ds, false) != -1 )
- ct->pt = InterpolateAlongDiag ( diagpts,&diagpts[npd->ttfindex].line[0],
- npd,ct,fv,&pv,&rp1,&rp2 );
- }
- }
- }
- }
-return( ct->pt );
-}
-
-static void TouchControlPoint( InstrCt *ct,PointData *pd,
- int next,int *tobefixedy,int *tobefixedx,int *numx,int *numy ) {
-
- int idx, cpidx;
- PointData *cpd;
- uint8 *touched = ct->touched;
-
- idx = pd->ttfindex;
- cpidx = next ? pd->sp->nextcpindex : pd->sp->prev->from->nextcpindex;
- cpd = &ct->gd->points[cpidx];
-
- if ( has_valid_dstem( cpd, !next ) != -1 ) {
- /* if this control point is used to describe an implied spline
- * point, then it is instructed as if it was an oncurve point */
- if ( idx == 0xffff && touched[cpidx] & tf_d ) {
- if (!( touched[cpidx] & tf_y )) {
- tobefixedy[(*numy)++] = cpidx;
- touched[cpidx] |= tf_y;
- }
-
- if (!( touched[cpidx] & tf_x )) {
- tobefixedx[(*numx)++] = cpidx;
- touched[cpidx] |= tf_x;
- }
- /* otherwise we just mark it as affected to prevent undesired
- * interpolations */
- } else if ( idx < ct->gd->realcnt && touched[idx] & tf_d ) {
- ct->affected[cpidx] |= tf_x;
- ct->affected[cpidx] |= tf_y;
- }
- }
-}
-
-/* Finally explicitly touch all affected points by X and Y (unless they
- * have already been), so that subsequent IUP's can't distort our stems.
- */
-static uint8 *TouchDStemPoints( InstrCt *ct,BasePoint *fv ) {
-
- int i, ptcnt, numx=0, numy=0, idx;
- int *tobefixedy, *tobefixedx;
- uint8 *instrs, *touched;
- PointData *pd;
-
- touched = ct->touched;
- instrs = ct->pt;
- ptcnt = ct->gd->pcnt;
-
- tobefixedy = calloc( ptcnt,sizeof( int ));
- tobefixedx = calloc( ptcnt,sizeof( int ));
-
- /* Ensure that the projection vector is no longer set to a diagonal line */
- if ( fv->x == 1 && fv->y == 0 )
- *instrs++ = 0x03; /* SPVTCA[x] */
- else if ( fv->x == 0 && fv->y == 1 )
- *instrs++ = 0x02; /* SPVTCA[y] */
-
- for ( i=0; i<ptcnt; i++ ) if ( ct->gd->points[i].sp != NULL ) {
- pd = &ct->gd->points[i];
- if (( has_valid_dstem( pd,false )) != -1 ||
- ( has_valid_dstem( pd,true )) != -1 ) {
-
- idx = pd->ttfindex;
- if ( idx < ct->gd->realcnt && touched[idx] & tf_d ) {
- if (!( touched[idx] & tf_y )) {
- tobefixedy[numy++] = idx;
- touched[idx] |= tf_y;
- }
-
- if (!( touched[idx] & tf_x )) {
- tobefixedx[numx++] = idx;
- touched[idx] |= tf_x;
- }
- }
- if ( !pd->sp->noprevcp )
- TouchControlPoint( ct,pd,false,tobefixedy,tobefixedx,&numx,&numy );
- if ( !pd->sp->nonextcp )
- TouchControlPoint( ct,pd,true,tobefixedy,tobefixedx,&numx,&numy );
- }
- }
-
- if ( numy>0 ) {
- if ( !(fv->x == 0 && fv->y == 1) ) *instrs++ = SVTCA_y;
- instrs = instructpoints ( instrs,numy,tobefixedy,MDAP );
- }
-
- if ( numx>0 ) {
- if ( !(fv->x == 1 && fv->y == 0) || numy > 0 ) *instrs++ = SVTCA_x;
- instrs = instructpoints ( instrs,numx,tobefixedx,MDAP );
- }
-
- if ( numx == 0 && numy == 0 ) *instrs++ = SVTCA_x;
-
- free( tobefixedy );
- free( tobefixedx );
-return( instrs );
-}
-
-static void DStemInfoGeninst( InstrCt *ct ) {
- BasePoint fv;
- int i;
-
- if (ct->diagcnt == 0)
-return;
-
- fv.x = 1; fv.y = 0;
-
- ct->pt = pushF26Dot6( ct->pt,DIAG_MIN_DISTANCE );
- *(ct->pt)++ = SMD; /* Set Minimum Distance */
-
- for ( i=0; i<ct->diagcnt; i++ )
- ct->pt = FixDstem ( ct,ct->diagstems[i],&fv );
-
- ct->pt = MovePointsToIntersections( ct,&fv );
- ct->pt = TouchDStemPoints ( ct,&fv);
-
- ct->pt = pushF26Dot6( ct->pt,1.0 );
- *(ct->pt)++ = SMD; /* Set Minimum Distance */
-
- ct->xdir = fv.x;
-}
-
-/******************************************************************************
- *
- * Strong point interpolation
- *
- * TODO! Better optimization, if possible.
- * TODO! leftmost and righmost bounds, if not already controlled by stems.
- *
- ******************************************************************************/
-
-/* To be used with qsort() - sorts edge array in ascending order. */
-struct stemedge {
- int refpt;
- double pos;
-};
-
-/* To be used with qsort() - sorts edge array in ascending order. */
-static int sortedges(const void *_e1, const void *_e2) {
- const struct stemedge *e1 = _e1, *e2 = _e2;
- return ( e1->pos > e2->pos );
-}
-
-static int AddEdge(InstrCt *ct, StemData *stem, int is_l, struct stemedge *edgelist, int cnt) {
- real coord;
- int i, skip, refidx;
-
- if (!stem->ghost ||
- (is_l && stem->width == 20) || (!is_l && stem->width == 21)) {
-
- coord = is_l ?
- ((real *) &stem->left.x)[!ct->xdir] : ((real *) &stem->right.x)[!ct->xdir];
- refidx = is_l ? stem->leftidx : stem->rightidx;
- for (i=skip=0; i<cnt; i++)
- if (abs(coord - edgelist[i].pos) <= ct->gic->fudge ||
- edgelist[i].refpt == refidx) {
- skip=1;
- break;
- }
- if (!skip && refidx != -1) {
- edgelist[cnt ].refpt = refidx;
- edgelist[cnt++].pos = coord;
- }
- }
- return( cnt );
-}
-
-/* Optional feature: tries to maintain relative position of some important
- * points between stems' edges, so that glyph's shape is mostly preserved
- * when strongly gridfitted. This in terms of FreeType is called 'Strong Point
- * Interpolation'. It now does more or else what it should, but generates large
- * and sometimes incomplete code - see 'todos' above, and optimize_strongpts().
- * Note: it would affect diagonals if done before instructing them.
- *
- * TODO: it now intrpolates strong points only between hints' edges.
- * What about between leftmost/rightmost edge and leftmost/rightmost
- * glyph extents, if they protrude beyond the edges?
- */
-static void InterpolateStrongPoints(InstrCt *ct) {
- StemBundle *bundle;
- StemData *stem;
- uint8 touchflag = ct->xdir?tf_x:tf_y;
- real fudge;
- struct stemedge edgelist[192];
- int edgecnt=0, i, j;
- int lpoint = -1, ledge=0;
- int rpoint = -1;
- int nowrp1 = 1;
- int ldone = 0;
-
- bundle = ( ct->xdir ) ? ct->gd->vbundle : ct->gd->hbundle;
- if (bundle == NULL || bundle->cnt == 0)
- return;
-
- /* List all stem edges. List only active edges for ghost hints. */
- for(i=0; i<bundle->cnt; i++) {
- stem = bundle->stemlist[i];
-
- edgecnt = AddEdge(ct, stem, ct->xdir, edgelist, edgecnt);
- edgecnt = AddEdge(ct, stem, !ct->xdir, edgelist, edgecnt);
- }
-
- if (edgecnt < 2)
-return;
-
- qsort(edgelist, edgecnt, sizeof(struct stemedge), sortedges);
-
- /* Interpolate important points between subsequent edges */
- for (i=0; i<edgecnt; i++) {
- rpoint = edgelist[i].refpt;
- if (rpoint == -1 || !(ct->touched[rpoint] & touchflag)) continue;
-
- if (lpoint==-1) {
- /* first edge */
- lpoint = rpoint;
- ledge = i;
- }
- else {
- fudge = ct->gic->fudge;
- ct->gic->fudge = (edgelist[i].pos-edgelist[ledge].pos)/2;
- init_edge(ct, (edgelist[i].pos+edgelist[ledge].pos)/2, ALL_CONTOURS);
- optimize_strongpts(ct); /* Special way is needed here. */
- ct->gic->fudge = fudge;
-
- if (!ct->edge.othercnt) {
- nowrp1 = 1;
- lpoint = rpoint;
- ledge = i;
- ldone = 0;
- }
- else if (ct->edge.refscore) {
- if (!ldone) {
- ct->pt = push2points(ct->pt, rpoint, lpoint);
- *ct->pt++ = SRP1;
- *ct->pt++ = SRP2;
- }
- else {
- ct->pt = pushpoint(ct->pt, rpoint);
- if (nowrp1) *ct->pt++ = SRP1;
- else *ct->pt++ = SRP2;
- nowrp1 = !nowrp1;
- }
-
- lpoint = rpoint;
- ledge = i;
- ldone = 1;
-
- /* instruct points */
- ct->pt = instructpoints(ct->pt, ct->edge.othercnt,
- ct->edge.others, IP);
- for (j=0; j<ct->edge.othercnt; j++)
- ct->touched[ct->edge.others[j]] |= touchflag;
- }
-
- if (ct->edge.othercnt) {
- free(ct->edge.others);
- ct->edge.othercnt = 0;
- }
- }
- }
-}
-
-/******************************************************************************
- *
- * Generate instructions for a glyph.
- *
- ******************************************************************************/
-
-static uint8 *dogeninstructions(InstrCt *ct) {
- StemData *stem;
- int max, i;
- DStemInfo *dstem;
- BlueData nbd;
-
- /* Fill a temporary BlueData structure basing on the data stored in the global
- * instruction context. This is needed for GlyphDataBuild(), as it accepts
- * blue data only in this format
- */
- for ( i=0; i<ct->gic->bluecnt; i++ ) {
- if ( ct->gic->blues[i].base < ct->gic->blues[i].overshoot ) {
- nbd.blues[i][0] = ct->gic->blues[i].base;
- nbd.blues[i][1] = ct->gic->blues[i].overshoot;
- } else {
- nbd.blues[i][0] = ct->gic->blues[i].overshoot;
- nbd.blues[i][1] = ct->gic->blues[i].base;
- }
- }
- nbd.bluecnt = ct->gic->bluecnt;
- ct->gd = GlyphDataBuild( ct->sc,ct->gic->layer,&nbd,instruct_diagonal_stems );
-
- /* Maximum instruction length is 6 bytes for each point in each dimension
- * 2 extra bytes to finish up. And one byte to switch from x to y axis
- * Diagonal take more space because we need to set the orientation on
- * each stem, and worry about intersections, etc.
- * That should be an over-estimate
- */
- max=2;
- if ( ct->gd->hbundle!=NULL ) max += ct->ptcnt*8;
- if ( ct->gd->vbundle!=NULL ) max += ct->ptcnt*8+4;
- for ( dstem=ct->sc->dstem; dstem!=NULL; max+=7+4*6+100, dstem=dstem->next );
- if ( ct->sc->md!=NULL ) max += ct->ptcnt*12;
- max += ct->ptcnt*6; /* in case there are any rounds */
- max += ct->ptcnt*6; /* paranoia */
- ct->instrs = ct->pt = malloc(max);
-
- /* Initially no stem hints are done */
- if ( ct->gd->hbundle!=NULL ) {
- for ( i=0; i<ct->gd->hbundle->cnt; i++ ) {
- stem = ct->gd->hbundle->stemlist[i];
- stem->ldone = stem->rdone = false;
- }
- }
- if ( ct->gd->vbundle!=NULL ) {
- for ( i=0; i<ct->gd->vbundle->cnt; i++ ) {
- stem = ct->gd->vbundle->stemlist[i];
- stem->ldone = stem->rdone = false;
- }
- }
-
- if ( instruct_diagonal_stems ) {
- /* Prepare info about diagonal stems to be used during edge optimization. */
- /* These contents need to be explicitly freed after hinting diagonals. */
- ct->diagstems = calloc(ct->gd->stemcnt, sizeof(StemData *));
- ct->diagpts = calloc(ct->ptcnt, sizeof(struct diagpointinfo));
- InitDStemData(ct);
- }
-
- /* We start from instructing horizontal features (=> movement in y)
- * Do this first so that the diagonal hinter will have everything moved
- * properly when it sets the projection vector
- * Even if we aren't doing the diagonals, we do the blues.
- */
- ct->xdir = false;
- *(ct->pt)++ = SVTCA_y;
- snap_to_blues(ct);
- HStemGeninst(ct);
-
- /* Next instruct vertical features (=> movement in x). */
- ct->xdir = true;
- *(ct->pt)++ = SVTCA_x;
- VStemGeninst(ct);
-
- /* Then instruct diagonal stems (=> movement in x)
- * This is done after vertical stems because it involves
- * moving some points out-of their vertical stems.
- */
- if (instruct_diagonal_stems && ct->diagcnt > 0) DStemInfoGeninst(ct);
-
- if ( interpolate_strong ) {
- /* Adjust important points between hint edges. */
- if (ct->xdir == false) *(ct->pt)++ = SVTCA_x;
- ct->xdir = true;
- InterpolateStrongPoints(ct);
- ct->xdir = false;
- *(ct->pt)++ = SVTCA_y;
- InterpolateStrongPoints(ct);
- }
-
- /* Interpolate untouched points */
- *(ct->pt)++ = IUP_y;
- *(ct->pt)++ = IUP_x;
-
- if ((ct->pt)-(ct->instrs) > max) IError(
- "We're about to crash.\n"
- "We miscalculated the glyph's instruction set length\n"
- "When processing TTF instructions (hinting) of %s", ct->sc->name
- );
-
- if ( instruct_diagonal_stems ) {
- free(ct->diagstems);
- free(ct->diagpts);
- }
- GlyphDataFree( ct->gd );
-
- ct->sc->ttf_instrs_len = (ct->pt)-(ct->instrs);
- ct->sc->instructions_out_of_date = false;
-return ct->sc->ttf_instrs = realloc(ct->instrs,(ct->pt)-(ct->instrs));
-}
-
-void NowakowskiSCAutoInstr(GlobalInstrCt *gic, SplineChar *sc) {
- int cnt, contourcnt;
- BasePoint *bp;
- int *contourends;
- uint8 *clockwise;
- uint8 *touched;
- uint8 *affected;
- SplineSet *ss;
- RefChar *ref;
- InstrCt ct;
- int i;
-
- if ( !sc->layers[gic->layer].order2 )
-return;
-
- if ( sc->layers[gic->layer].refs!=NULL && sc->layers[gic->layer].splines!=NULL ) {
- ff_post_error(_("Can't instruct this glyph"),
- _("TrueType does not support mixed references and contours.\nIf you want instructions for %.30s you should either:\n * Unlink the reference(s)\n * Copy the inline contours into their own (unencoded\n glyph) and make a reference to that."),
- sc->name );
-return;
- }
- for ( ref = sc->layers[gic->layer].refs; ref!=NULL; ref=ref->next ) {
- if ( ref->transform[0]>=2 || ref->transform[0]<-2 ||
- ref->transform[1]>=2 || ref->transform[1]<-2 ||
- ref->transform[2]>=2 || ref->transform[2]<-2 ||
- ref->transform[3]>=2 || ref->transform[3]<-2 )
- break;
- }
- if ( ref!=NULL ) {
- ff_post_error(_("Can't instruct this glyph"),
- _("TrueType does not support references which\nare scaled by more than 200%%. But %1$.30s\nhas been in %2$.30s. Any instructions\nadded would be meaningless."),
- ref->sc->name, sc->name );
-return;
- }
-
- if ( sc->ttf_instrs ) {
- free(sc->ttf_instrs);
- sc->ttf_instrs = NULL;
- sc->ttf_instrs_len = 0;
- }
- SCNumberPoints(sc,gic->layer);
- if ( autohint_before_generate && sc->changedsincelasthinted &&
- !sc->manualhints )
- SplineCharAutoHint(sc,gic->layer,NULL);
-
- if ( sc->vstem==NULL && sc->hstem==NULL && sc->dstem==NULL && sc->md==NULL)
-return;
-
- /* TODO!
- *
- * We're having problems with references utilizing 'use my metrics' that are
- * rotated or flipped horizontally. Basically, such glyphs can get negative
- * width and behave strangely when the glyph referred is instructed. Such
- * widths are treated very differently under Freetype (OK) and Windows
- * (terribly shifted), and I suppose other rasterizers can also complain.
- * Perhaps we should advise turning 'use my metrics' off.
- */
-
- if ( sc->layers[gic->layer].splines==NULL )
-return;
-
- /* Start dealing with the glyph */
- contourcnt = 0;
- for ( ss=sc->layers[gic->layer].splines; ss!=NULL; ss=ss->next, ++contourcnt );
- cnt = SSTtfNumberPoints(sc->layers[gic->layer].splines);
-
- contourends = malloc((contourcnt+1)*sizeof(int));
- clockwise = calloc(contourcnt,1);
- bp = malloc(cnt*sizeof(BasePoint));
- touched = calloc(cnt,1);
- affected = calloc(cnt,1);
-
- contourcnt = cnt = 0;
- for ( ss=sc->layers[gic->layer].splines; ss!=NULL; ss=ss->next ) {
- touched[cnt] |= tf_startcontour;
- cnt = SSAddPoints(ss,cnt,bp,NULL);
- touched[cnt-1] |= tf_endcontour;
- contourends[contourcnt] = cnt-1;
- clockwise[contourcnt++] = SplinePointListIsClockwise(ss);
- }
- contourends[contourcnt] = 0;
-
- for (i=0; i<gic->bluecnt; i++)
- gic->blues[i].highest = gic->blues[i].lowest = -1;
-
- ct.gic = gic;
-
- ct.sc = sc;
- ct.ss = sc->layers[gic->layer].splines;
- ct.instrs = NULL;
- ct.pt = NULL;
- ct.ptcnt = cnt;
- ct.contourends = contourends;
- ct.clockwise = clockwise;
- ct.bp = bp;
- ct.touched = touched;
- ct.affected = affected;
- ct.diagstems = NULL;
- ct.diagpts = NULL;
-
- ct.rp0 = 0;
-
- dogeninstructions(&ct);
-
- free(touched);
- free(affected);
- free(bp);
- free(contourends);
- free(clockwise);
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/parsepfa.c b/dviware/dvisvgm/libs/ff-woff/fontforge/parsepfa.c
deleted file mode 100644
index 9f3d5f8161..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/parsepfa.c
+++ /dev/null
@@ -1,583 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include "psfont.h"
-
-const char *AdobeStandardEncoding[] = {
-/* 0000 */ ".notdef",
-/* 0001 */ ".notdef",
-/* 0002 */ ".notdef",
-/* 0003 */ ".notdef",
-/* 0004 */ ".notdef",
-/* 0005 */ ".notdef",
-/* 0006 */ ".notdef",
-/* 0007 */ ".notdef",
-/* 0008 */ ".notdef",
-/* 0009 */ ".notdef",
-/* 000a */ ".notdef",
-/* 000b */ ".notdef",
-/* 000c */ ".notdef",
-/* 000d */ ".notdef",
-/* 000e */ ".notdef",
-/* 000f */ ".notdef",
-/* 0010 */ ".notdef",
-/* 0011 */ ".notdef",
-/* 0012 */ ".notdef",
-/* 0013 */ ".notdef",
-/* 0014 */ ".notdef",
-/* 0015 */ ".notdef",
-/* 0016 */ ".notdef",
-/* 0017 */ ".notdef",
-/* 0018 */ ".notdef",
-/* 0019 */ ".notdef",
-/* 001a */ ".notdef",
-/* 001b */ ".notdef",
-/* 001c */ ".notdef",
-/* 001d */ ".notdef",
-/* 001e */ ".notdef",
-/* 001f */ ".notdef",
-/* 0020 */ "space",
-/* 0021 */ "exclam",
-/* 0022 */ "quotedbl",
-/* 0023 */ "numbersign",
-/* 0024 */ "dollar",
-/* 0025 */ "percent",
-/* 0026 */ "ampersand",
-/* 0027 */ "quoteright",
-/* 0028 */ "parenleft",
-/* 0029 */ "parenright",
-/* 002a */ "asterisk",
-/* 002b */ "plus",
-/* 002c */ "comma",
-/* 002d */ "hyphen",
-/* 002e */ "period",
-/* 002f */ "slash",
-/* 0030 */ "zero",
-/* 0031 */ "one",
-/* 0032 */ "two",
-/* 0033 */ "three",
-/* 0034 */ "four",
-/* 0035 */ "five",
-/* 0036 */ "six",
-/* 0037 */ "seven",
-/* 0038 */ "eight",
-/* 0039 */ "nine",
-/* 003a */ "colon",
-/* 003b */ "semicolon",
-/* 003c */ "less",
-/* 003d */ "equal",
-/* 003e */ "greater",
-/* 003f */ "question",
-/* 0040 */ "at",
-/* 0041 */ "A",
-/* 0042 */ "B",
-/* 0043 */ "C",
-/* 0044 */ "D",
-/* 0045 */ "E",
-/* 0046 */ "F",
-/* 0047 */ "G",
-/* 0048 */ "H",
-/* 0049 */ "I",
-/* 004a */ "J",
-/* 004b */ "K",
-/* 004c */ "L",
-/* 004d */ "M",
-/* 004e */ "N",
-/* 004f */ "O",
-/* 0050 */ "P",
-/* 0051 */ "Q",
-/* 0052 */ "R",
-/* 0053 */ "S",
-/* 0054 */ "T",
-/* 0055 */ "U",
-/* 0056 */ "V",
-/* 0057 */ "W",
-/* 0058 */ "X",
-/* 0059 */ "Y",
-/* 005a */ "Z",
-/* 005b */ "bracketleft",
-/* 005c */ "backslash",
-/* 005d */ "bracketright",
-/* 005e */ "asciicircum",
-/* 005f */ "underscore",
-/* 0060 */ "quoteleft",
-/* 0061 */ "a",
-/* 0062 */ "b",
-/* 0063 */ "c",
-/* 0064 */ "d",
-/* 0065 */ "e",
-/* 0066 */ "f",
-/* 0067 */ "g",
-/* 0068 */ "h",
-/* 0069 */ "i",
-/* 006a */ "j",
-/* 006b */ "k",
-/* 006c */ "l",
-/* 006d */ "m",
-/* 006e */ "n",
-/* 006f */ "o",
-/* 0070 */ "p",
-/* 0071 */ "q",
-/* 0072 */ "r",
-/* 0073 */ "s",
-/* 0074 */ "t",
-/* 0075 */ "u",
-/* 0076 */ "v",
-/* 0077 */ "w",
-/* 0078 */ "x",
-/* 0079 */ "y",
-/* 007a */ "z",
-/* 007b */ "braceleft",
-/* 007c */ "bar",
-/* 007d */ "braceright",
-/* 007e */ "asciitilde",
-/* 007f */ ".notdef",
-/* 0080 */ ".notdef",
-/* 0081 */ ".notdef",
-/* 0082 */ ".notdef",
-/* 0083 */ ".notdef",
-/* 0084 */ ".notdef",
-/* 0085 */ ".notdef",
-/* 0086 */ ".notdef",
-/* 0087 */ ".notdef",
-/* 0088 */ ".notdef",
-/* 0089 */ ".notdef",
-/* 008a */ ".notdef",
-/* 008b */ ".notdef",
-/* 008c */ ".notdef",
-/* 008d */ ".notdef",
-/* 008e */ ".notdef",
-/* 008f */ ".notdef",
-/* 0090 */ ".notdef",
-/* 0091 */ ".notdef",
-/* 0092 */ ".notdef",
-/* 0093 */ ".notdef",
-/* 0094 */ ".notdef",
-/* 0095 */ ".notdef",
-/* 0096 */ ".notdef",
-/* 0097 */ ".notdef",
-/* 0098 */ ".notdef",
-/* 0099 */ ".notdef",
-/* 009a */ ".notdef",
-/* 009b */ ".notdef",
-/* 009c */ ".notdef",
-/* 009d */ ".notdef",
-/* 009e */ ".notdef",
-/* 009f */ ".notdef",
-/* 00a0 */ ".notdef",
-/* 00a1 */ "exclamdown",
-/* 00a2 */ "cent",
-/* 00a3 */ "sterling",
-/* 00a4 */ "fraction",
-/* 00a5 */ "yen",
-/* 00a6 */ "florin",
-/* 00a7 */ "section",
-/* 00a8 */ "currency",
-/* 00a9 */ "quotesingle",
-/* 00aa */ "quotedblleft",
-/* 00ab */ "guillemotleft",
-/* 00ac */ "guilsinglleft",
-/* 00ad */ "guilsinglright",
-/* 00ae */ "fi",
-/* 00af */ "fl",
-/* 00b0 */ ".notdef",
-/* 00b1 */ "endash",
-/* 00b2 */ "dagger",
-/* 00b3 */ "daggerdbl",
-/* 00b4 */ "periodcentered",
-/* 00b5 */ ".notdef",
-/* 00b6 */ "paragraph",
-/* 00b7 */ "bullet",
-/* 00b8 */ "quotesinglbase",
-/* 00b9 */ "quotedblbase",
-/* 00ba */ "quotedblright",
-/* 00bb */ "guillemotright",
-/* 00bc */ "ellipsis",
-/* 00bd */ "perthousand",
-/* 00be */ ".notdef",
-/* 00bf */ "questiondown",
-/* 00c0 */ ".notdef",
-/* 00c1 */ "grave",
-/* 00c2 */ "acute",
-/* 00c3 */ "circumflex",
-/* 00c4 */ "tilde",
-/* 00c5 */ "macron",
-/* 00c6 */ "breve",
-/* 00c7 */ "dotaccent",
-/* 00c8 */ "dieresis",
-/* 00c9 */ ".notdef",
-/* 00ca */ "ring",
-/* 00cb */ "cedilla",
-/* 00cc */ ".notdef",
-/* 00cd */ "hungarumlaut",
-/* 00ce */ "ogonek",
-/* 00cf */ "caron",
-/* 00d0 */ "emdash",
-/* 00d1 */ ".notdef",
-/* 00d2 */ ".notdef",
-/* 00d3 */ ".notdef",
-/* 00d4 */ ".notdef",
-/* 00d5 */ ".notdef",
-/* 00d6 */ ".notdef",
-/* 00d7 */ ".notdef",
-/* 00d8 */ ".notdef",
-/* 00d9 */ ".notdef",
-/* 00da */ ".notdef",
-/* 00db */ ".notdef",
-/* 00dc */ ".notdef",
-/* 00dd */ ".notdef",
-/* 00de */ ".notdef",
-/* 00df */ ".notdef",
-/* 00e0 */ ".notdef",
-/* 00e1 */ "AE",
-/* 00e2 */ ".notdef",
-/* 00e3 */ "ordfeminine",
-/* 00e4 */ ".notdef",
-/* 00e5 */ ".notdef",
-/* 00e6 */ ".notdef",
-/* 00e7 */ ".notdef",
-/* 00e8 */ "Lslash",
-/* 00e9 */ "Oslash",
-/* 00ea */ "OE",
-/* 00eb */ "ordmasculine",
-/* 00ec */ ".notdef",
-/* 00ed */ ".notdef",
-/* 00ee */ ".notdef",
-/* 00ef */ ".notdef",
-/* 00f0 */ ".notdef",
-/* 00f1 */ "ae",
-/* 00f2 */ ".notdef",
-/* 00f3 */ ".notdef",
-/* 00f4 */ ".notdef",
-/* 00f5 */ "dotlessi",
-/* 00f6 */ ".notdef",
-/* 00f7 */ ".notdef",
-/* 00f8 */ "lslash",
-/* 00f9 */ "oslash",
-/* 00fa */ "oe",
-/* 00fb */ "germandbls",
-/* 00fc */ ".notdef",
-/* 00fd */ ".notdef",
-/* 00fe */ ".notdef",
-/* 00ff */ ".notdef"
-};
-
-const char *AdobeExpertEncoding[] = {
-/* 0000 */ ".notdef",
-/* 0001 */ ".notdef",
-/* 0002 */ ".notdef",
-/* 0003 */ ".notdef",
-/* 0004 */ ".notdef",
-/* 0005 */ ".notdef",
-/* 0006 */ ".notdef",
-/* 0007 */ ".notdef",
-/* 0008 */ ".notdef",
-/* 0009 */ ".notdef",
-/* 000a */ ".notdef",
-/* 000b */ ".notdef",
-/* 000c */ ".notdef",
-/* 000d */ ".notdef",
-/* 000e */ ".notdef",
-/* 000f */ ".notdef",
-/* 0010 */ ".notdef",
-/* 0011 */ ".notdef",
-/* 0012 */ ".notdef",
-/* 0013 */ ".notdef",
-/* 0014 */ ".notdef",
-/* 0015 */ ".notdef",
-/* 0016 */ ".notdef",
-/* 0017 */ ".notdef",
-/* 0018 */ ".notdef",
-/* 0019 */ ".notdef",
-/* 001a */ ".notdef",
-/* 001b */ ".notdef",
-/* 001c */ ".notdef",
-/* 001d */ ".notdef",
-/* 001e */ ".notdef",
-/* 001f */ ".notdef",
-/* 0020 */ "space",
-/* 0021 */ "exclamsmall",
-/* 0022 */ "Hungarumlautsmal",
-/* 0023 */ ".notdef",
-/* 0024 */ "dollaroldstyle",
-/* 0025 */ "dollarsuperior",
-/* 0026 */ "ampersandsmall",
-/* 0027 */ "Acutesmall",
-/* 0028 */ "parenleftsuperior",
-/* 0029 */ "parenrightsuperior",
-/* 002a */ "twodotenleader",
-/* 002b */ "onedotenleader",
-/* 002c */ "comma",
-/* 002d */ "hyphen",
-/* 002e */ "period",
-/* 002f */ "fraction",
-/* 0030 */ "zerooldstyle",
-/* 0031 */ "oneoldstyle",
-/* 0032 */ "twooldstyle",
-/* 0033 */ "threeoldstyle",
-/* 0034 */ "fouroldstyle",
-/* 0035 */ "fiveoldstyle",
-/* 0036 */ "sixoldstyle",
-/* 0037 */ "sevenoldstyle",
-/* 0038 */ "eightoldstyle",
-/* 0039 */ "nineoldstyle",
-/* 003a */ "colon",
-/* 003b */ "semicolon",
-/* 003c */ "commasuperior",
-/* 003d */ "threequartersemdash",
-/* 003e */ "periodsuperior",
-/* 003f */ "questionsmall",
-/* 0040 */ ".notdef",
-/* 0041 */ "asuperior",
-/* 0042 */ "bsuperior",
-/* 0043 */ "centsuperior",
-/* 0044 */ "dsuperior",
-/* 0045 */ "esuperior",
-/* 0046 */ ".notdef",
-/* 0047 */ ".notdef",
-/* 0048 */ ".notdef",
-/* 0049 */ "isuperior",
-/* 004a */ ".notdef",
-/* 004b */ ".notdef",
-/* 004c */ "lsuperior",
-/* 004d */ "msuperior",
-/* 004e */ "nsuperior",
-/* 004f */ "osuperior",
-/* 0050 */ ".notdef",
-/* 0051 */ ".notdef",
-/* 0052 */ "rsuperior",
-/* 0053 */ "ssuperior",
-/* 0054 */ "tsuperior",
-/* 0055 */ ".notdef",
-/* 0056 */ "ff",
-/* 0057 */ "fi",
-/* 0058 */ "fl",
-/* 0059 */ "ffi",
-/* 005a */ "ffl",
-/* 005b */ "parenleftinferior",
-/* 005c */ ".notdef",
-/* 005d */ "parenrightinferior",
-/* 005e */ "Circumflexsmall",
-/* 005f */ "hyphensuperior",
-/* 0060 */ "Gravesmall",
-/* 0061 */ "Asmall",
-/* 0062 */ "Bsmall",
-/* 0063 */ "Csmall",
-/* 0064 */ "Dsmall",
-/* 0065 */ "Esmall",
-/* 0066 */ "Fsmall",
-/* 0067 */ "Gsmall",
-/* 0068 */ "Hsmall",
-/* 0069 */ "Ismall",
-/* 006a */ "Jsmall",
-/* 006b */ "Ksmall",
-/* 006c */ "Lsmall",
-/* 006d */ "Msmall",
-/* 006e */ "Nsmall",
-/* 006f */ "Osmall",
-/* 0070 */ "Psmall",
-/* 0071 */ "Qsmall",
-/* 0072 */ "Rsmall",
-/* 0073 */ "Ssmall",
-/* 0074 */ "Tsmall",
-/* 0075 */ "Usmall",
-/* 0076 */ "Vsmall",
-/* 0077 */ "Wsmall",
-/* 0078 */ "Xsmall",
-/* 0079 */ "Ysmall",
-/* 007a */ "Zsmall",
-/* 007b */ "colonmonetary",
-/* 007c */ "onefitted",
-/* 007d */ "rupiah",
-/* 007e */ "Tildesmall",
-/* 007f */ ".notdef",
-/* 0080 */ ".notdef",
-/* 0081 */ ".notdef",
-/* 0082 */ ".notdef",
-/* 0083 */ ".notdef",
-/* 0084 */ ".notdef",
-/* 0085 */ ".notdef",
-/* 0086 */ ".notdef",
-/* 0087 */ ".notdef",
-/* 0088 */ ".notdef",
-/* 0089 */ ".notdef",
-/* 008a */ ".notdef",
-/* 008b */ ".notdef",
-/* 008c */ ".notdef",
-/* 008d */ ".notdef",
-/* 008e */ ".notdef",
-/* 008f */ ".notdef",
-/* 0090 */ ".notdef",
-/* 0091 */ ".notdef",
-/* 0092 */ ".notdef",
-/* 0093 */ ".notdef",
-/* 0094 */ ".notdef",
-/* 0095 */ ".notdef",
-/* 0096 */ ".notdef",
-/* 0097 */ ".notdef",
-/* 0098 */ ".notdef",
-/* 0099 */ ".notdef",
-/* 009a */ ".notdef",
-/* 009b */ ".notdef",
-/* 009c */ ".notdef",
-/* 009d */ ".notdef",
-/* 009e */ ".notdef",
-/* 009f */ ".notdef",
-/* 00a0 */ ".notdef",
-/* 00a1 */ "exclamdownsmall",
-/* 00a2 */ "centoldstyle",
-/* 00a3 */ "Lslashsmall",
-/* 00a4 */ ".notdef",
-/* 00a5 */ ".notdef",
-/* 00a6 */ "Scaronsmall",
-/* 00a7 */ "Zcaronsmall",
-/* 00a8 */ "Dieresissmall",
-/* 00a9 */ "Brevesmall",
-/* 00aa */ "Caronsmall",
-/* 00ab */ ".notdef",
-/* 00ac */ "Dotaccentsmall",
-/* 00ad */ ".notdef",
-/* 00ae */ ".notdef",
-/* 00af */ "Macronsmall",
-/* 00b0 */ ".notdef",
-/* 00b1 */ ".notdef",
-/* 00b2 */ "figuredash",
-/* 00b3 */ "hypheninferior",
-/* 00b4 */ ".notdef",
-/* 00b5 */ ".notdef",
-/* 00b6 */ "Ogoneksmall",
-/* 00b7 */ "Ringsmall",
-/* 00b8 */ "Cedillasmall",
-/* 00b9 */ ".notdef",
-/* 00ba */ ".notdef",
-/* 00bb */ ".notdef",
-/* 00bc */ "onequarter",
-/* 00bd */ "onehalf",
-/* 00be */ "threequarters",
-/* 00bf */ "questiondownsmall",
-/* 00c0 */ "oneeighth",
-/* 00c1 */ "threeeighths",
-/* 00c2 */ "fiveeighths",
-/* 00c3 */ "seveneighths",
-/* 00c4 */ "onethird",
-/* 00c5 */ "twothirds",
-/* 00c6 */ ".notdef",
-/* 00c7 */ ".notdef",
-/* 00c8 */ "zerosuperior",
-/* 00c9 */ "onesuperior",
-/* 00ca */ "twosuperior",
-/* 00cb */ "threesuperior",
-/* 00cc */ "foursuperior",
-/* 00cd */ "fivesuperior",
-/* 00ce */ "sixsuperior",
-/* 00cf */ "sevensuperior",
-/* 00d0 */ "eightsuperior",
-/* 00d1 */ "ninesuperior",
-/* 00d2 */ "zeroinferior",
-/* 00d3 */ "oneinferior",
-/* 00d4 */ "twoinferior",
-/* 00d5 */ "threeinferior",
-/* 00d6 */ "fourinferior",
-/* 00d7 */ "fiveinferior",
-/* 00d8 */ "sixinferior",
-/* 00d9 */ "seveninferior",
-/* 00da */ "eightinferior",
-/* 00db */ "nineinferior",
-/* 00dc */ "centinferior",
-/* 00dd */ "dollarinferior",
-/* 00de */ "periodinferior",
-/* 00df */ "commainferior",
-/* 00e0 */ "Agravesmall",
-/* 00e1 */ "Aacutesmall",
-/* 00e2 */ "Acircumflexsmall",
-/* 00e3 */ "Atildesmall",
-/* 00e4 */ "Adieresissmall",
-/* 00e5 */ "Aringsmall",
-/* 00e6 */ "AEsmall",
-/* 00e7 */ "Ccedillasmall",
-/* 00e8 */ "Egravesmall",
-/* 00e9 */ "Eacutesmall",
-/* 00ea */ "Ecircumflexsmall",
-/* 00eb */ "Edieresissmall",
-/* 00ec */ "Igravesmall",
-/* 00ed */ "Iacutesmall",
-/* 00ee */ "Icircumflexsmall",
-/* 00ef */ "Idieresissmall",
-/* 00f0 */ "Ethsmall",
-/* 00f1 */ "Ntildesmall",
-/* 00f2 */ "Ogravesmall",
-/* 00f3 */ "Oacutesmall",
-/* 00f4 */ "Ocircumflexsmall",
-/* 00f5 */ "Otildesmall",
-/* 00f6 */ "Odieresissmall",
-/* 00f7 */ "OEsmall",
-/* 00f8 */ "Oslashsmall",
-/* 00f9 */ "Ugravesmall",
-/* 00fa */ "Uacutesmall",
-/* 00fb */ "Ucircumflexsmall",
-/* 00fc */ "Udieresissmall",
-/* 00fd */ "Yacutesmall",
-/* 00fe */ "Thornsmall",
-/* 00ff */ "Ydieresissmall"
-};
-
-unsigned short r;
-#define c1 52845
-#define c2 22719
-
-#define EODMARKLEN 16
-
-#define bgetc(extra,in) (*(extra)=='\0' ? getc(in) : (unsigned char ) *(extra)++ )
-
-void PSCharsFree(struct pschars *chrs) {
- int i;
-
- if ( chrs==NULL )
-return;
- for ( i=0; i<chrs->next; ++i ) {
- if ( chrs->keys!=NULL ) free(chrs->keys[i]);
- free(chrs->values[i]);
- }
- free(chrs->lens);
- free(chrs->keys);
- free(chrs->values);
- free(chrs);
-}
-
-void PSDictFree(struct psdict *dict) {
- int i;
-
- if ( dict==NULL )
-return;
- for ( i=0; i<dict->next; ++i ) {
- if ( dict->keys!=NULL ) free(dict->keys[i]);
- free(dict->values[i]);
- }
- free(dict->keys);
- free(dict->values);
- free(dict);
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/parsettf.c b/dviware/dvisvgm/libs/ff-woff/fontforge/parsettf.c
deleted file mode 100644
index d6cd930c51..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/parsettf.c
+++ /dev/null
@@ -1,505 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include "ttf.h"
-
-/* True Type is a really icky format. Nothing is together. It's badly described */
-/* much of the description is misleading */
-/* Apple's version: */
-/* http://fonts.apple.com/TTRefMan/index.html */
-/* MS's version: */
-/* http://www.microsoft.com/typography/tt/tt.htm */
-/* An helpful but incomplete description is given at */
-/* http://www.truetype.demon.co.uk/ttoutln.htm */
-/* For some things I looked at freetype's code to see how they did it */
-/* (I think only for what happens if !ARGS_ARE_XY) */
-/* http://freetype.sourceforge.net/ */
-/* It grows on you though... now that I understand it better it seems better designed */
-/* but the docs remain in conflict. Sometimes badly so */
-
-
-/* ************************************************************************** */
-
-int getushort(FILE *ttf) {
- int ch1 = getc(ttf);
- int ch2 = getc(ttf);
- if ( ch2==EOF )
-return( EOF );
-return( (ch1<<8)|ch2 );
-}
-
-int32 getlong(FILE *ttf) {
- int ch1 = getc(ttf);
- int ch2 = getc(ttf);
- int ch3 = getc(ttf);
- int ch4 = getc(ttf);
- if ( ch4==EOF )
-return( EOF );
-return( (ch1<<24)|(ch2<<16)|(ch3<<8)|ch4 );
-}
-
-/* Chooses which font to open from a TTC TrueType Collection font file. */
-/* */
-/* There are five ways that one enclosed font is selected: */
-/* 1) there is only one font enclosed, so we force defaulting to that one.*/
-/* 2a) the filename has a font index appended, we choose that N'th font. */
-/* 2b) the filename has a font name appended, we try to match that name */
-/* in list of discovered font names and select that named font. */
-/* 3) the user is prompted with a list of all discovered font names, and */
-/* asked to select one, and then that N'th font is chosen. */
-/* 4) when there is no UI, then font index zero is used. */
-/* */
-/* On failure and no font is chosen, returns false. */
-/* */
-/* On success, true is returned. The chosen font name (allocated) pointer */
-/* is returned via 'chosenname'. Additionally, the file position is set */
-/* pointing to the chosen TTF font offset table, ready for reading the */
-/* TTF header. */
-/* */
-/* Example filename strings with appended font selector: */
-/* ./tests/fonts/mingliu.windows.ttc(PMingLiU) */
-/* ./tests/fonts/mingliu.windows.ttc(1) */
-/* */
-/* 'offsets' is a list of file offsets to each enclosed TTF offset table. */
-/* 'names' is a list of font names as found in each enclosed name table. */
-/* 'names' is used to search for a matching font name, or to present as a */
-/* list to the user via ff_choose() to select from. */
-/* Once the chosen font index is determined, offsets[choice] is used to */
-/* call fseek() to position to the chosen TTF header offset table. Then */
-/* the chosen font name is copied into 'chosenname'. */
-
-
-/* Standard names for cff */
-const char *cffnames[] = {
- ".notdef",
- "space",
- "exclam",
- "quotedbl",
- "numbersign",
- "dollar",
- "percent",
- "ampersand",
- "quoteright",
- "parenleft",
- "parenright",
- "asterisk",
- "plus",
- "comma",
- "hyphen",
- "period",
- "slash",
- "zero",
- "one",
- "two",
- "three",
- "four",
- "five",
- "six",
- "seven",
- "eight",
- "nine",
- "colon",
- "semicolon",
- "less",
- "equal",
- "greater",
- "question",
- "at",
- "A",
- "B",
- "C",
- "D",
- "E",
- "F",
- "G",
- "H",
- "I",
- "J",
- "K",
- "L",
- "M",
- "N",
- "O",
- "P",
- "Q",
- "R",
- "S",
- "T",
- "U",
- "V",
- "W",
- "X",
- "Y",
- "Z",
- "bracketleft",
- "backslash",
- "bracketright",
- "asciicircum",
- "underscore",
- "quoteleft",
- "a",
- "b",
- "c",
- "d",
- "e",
- "f",
- "g",
- "h",
- "i",
- "j",
- "k",
- "l",
- "m",
- "n",
- "o",
- "p",
- "q",
- "r",
- "s",
- "t",
- "u",
- "v",
- "w",
- "x",
- "y",
- "z",
- "braceleft",
- "bar",
- "braceright",
- "asciitilde",
- "exclamdown",
- "cent",
- "sterling",
- "fraction",
- "yen",
- "florin",
- "section",
- "currency",
- "quotesingle",
- "quotedblleft",
- "guillemotleft",
- "guilsinglleft",
- "guilsinglright",
- "fi",
- "fl",
- "endash",
- "dagger",
- "daggerdbl",
- "periodcentered",
- "paragraph",
- "bullet",
- "quotesinglbase",
- "quotedblbase",
- "quotedblright",
- "guillemotright",
- "ellipsis",
- "perthousand",
- "questiondown",
- "grave",
- "acute",
- "circumflex",
- "tilde",
- "macron",
- "breve",
- "dotaccent",
- "dieresis",
- "ring",
- "cedilla",
- "hungarumlaut",
- "ogonek",
- "caron",
- "emdash",
- "AE",
- "ordfeminine",
- "Lslash",
- "Oslash",
- "OE",
- "ordmasculine",
- "ae",
- "dotlessi",
- "lslash",
- "oslash",
- "oe",
- "germandbls",
- "onesuperior",
- "logicalnot",
- "mu",
- "trademark",
- "Eth",
- "onehalf",
- "plusminus",
- "Thorn",
- "onequarter",
- "divide",
- "brokenbar",
- "degree",
- "thorn",
- "threequarters",
- "twosuperior",
- "registered",
- "minus",
- "eth",
- "multiply",
- "threesuperior",
- "copyright",
- "Aacute",
- "Acircumflex",
- "Adieresis",
- "Agrave",
- "Aring",
- "Atilde",
- "Ccedilla",
- "Eacute",
- "Ecircumflex",
- "Edieresis",
- "Egrave",
- "Iacute",
- "Icircumflex",
- "Idieresis",
- "Igrave",
- "Ntilde",
- "Oacute",
- "Ocircumflex",
- "Odieresis",
- "Ograve",
- "Otilde",
- "Scaron",
- "Uacute",
- "Ucircumflex",
- "Udieresis",
- "Ugrave",
- "Yacute",
- "Ydieresis",
- "Zcaron",
- "aacute",
- "acircumflex",
- "adieresis",
- "agrave",
- "aring",
- "atilde",
- "ccedilla",
- "eacute",
- "ecircumflex",
- "edieresis",
- "egrave",
- "iacute",
- "icircumflex",
- "idieresis",
- "igrave",
- "ntilde",
- "oacute",
- "ocircumflex",
- "odieresis",
- "ograve",
- "otilde",
- "scaron",
- "uacute",
- "ucircumflex",
- "udieresis",
- "ugrave",
- "yacute",
- "ydieresis",
- "zcaron",
- "exclamsmall",
- "Hungarumlautsmall",
- "dollaroldstyle",
- "dollarsuperior",
- "ampersandsmall",
- "Acutesmall",
- "parenleftsuperior",
- "parenrightsuperior",
- "twodotenleader",
- "onedotenleader",
- "zerooldstyle",
- "oneoldstyle",
- "twooldstyle",
- "threeoldstyle",
- "fouroldstyle",
- "fiveoldstyle",
- "sixoldstyle",
- "sevenoldstyle",
- "eightoldstyle",
- "nineoldstyle",
- "commasuperior",
- "threequartersemdash",
- "periodsuperior",
- "questionsmall",
- "asuperior",
- "bsuperior",
- "centsuperior",
- "dsuperior",
- "esuperior",
- "isuperior",
- "lsuperior",
- "msuperior",
- "nsuperior",
- "osuperior",
- "rsuperior",
- "ssuperior",
- "tsuperior",
- "ff",
- "ffi",
- "ffl",
- "parenleftinferior",
- "parenrightinferior",
- "Circumflexsmall",
- "hyphensuperior",
- "Gravesmall",
- "Asmall",
- "Bsmall",
- "Csmall",
- "Dsmall",
- "Esmall",
- "Fsmall",
- "Gsmall",
- "Hsmall",
- "Ismall",
- "Jsmall",
- "Ksmall",
- "Lsmall",
- "Msmall",
- "Nsmall",
- "Osmall",
- "Psmall",
- "Qsmall",
- "Rsmall",
- "Ssmall",
- "Tsmall",
- "Usmall",
- "Vsmall",
- "Wsmall",
- "Xsmall",
- "Ysmall",
- "Zsmall",
- "colonmonetary",
- "onefitted",
- "rupiah",
- "Tildesmall",
- "exclamdownsmall",
- "centoldstyle",
- "Lslashsmall",
- "Scaronsmall",
- "Zcaronsmall",
- "Dieresissmall",
- "Brevesmall",
- "Caronsmall",
- "Dotaccentsmall",
- "Macronsmall",
- "figuredash",
- "hypheninferior",
- "Ogoneksmall",
- "Ringsmall",
- "Cedillasmall",
- "questiondownsmall",
- "oneeighth",
- "threeeighths",
- "fiveeighths",
- "seveneighths",
- "onethird",
- "twothirds",
- "zerosuperior",
- "foursuperior",
- "fivesuperior",
- "sixsuperior",
- "sevensuperior",
- "eightsuperior",
- "ninesuperior",
- "zeroinferior",
- "oneinferior",
- "twoinferior",
- "threeinferior",
- "fourinferior",
- "fiveinferior",
- "sixinferior",
- "seveninferior",
- "eightinferior",
- "nineinferior",
- "centinferior",
- "dollarinferior",
- "periodinferior",
- "commainferior",
- "Agravesmall",
- "Aacutesmall",
- "Acircumflexsmall",
- "Atildesmall",
- "Adieresissmall",
- "Aringsmall",
- "AEsmall",
- "Ccedillasmall",
- "Egravesmall",
- "Eacutesmall",
- "Ecircumflexsmall",
- "Edieresissmall",
- "Igravesmall",
- "Iacutesmall",
- "Icircumflexsmall",
- "Idieresissmall",
- "Ethsmall",
- "Ntildesmall",
- "Ogravesmall",
- "Oacutesmall",
- "Ocircumflexsmall",
- "Otildesmall",
- "Odieresissmall",
- "OEsmall",
- "Oslashsmall",
- "Ugravesmall",
- "Uacutesmall",
- "Ucircumflexsmall",
- "Udieresissmall",
- "Yacutesmall",
- "Thornsmall",
- "Ydieresissmall",
- "001.000",
- "001.001",
- "001.002",
- "001.003",
- "Black",
- "Bold",
- "Book",
- "Light",
- "Medium",
- "Regular",
- "Roman",
- "Semibold",
- NULL
-};
-const int nStdStrings = sizeof(cffnames)/sizeof(cffnames[0])-1;
-
-void AltUniFigure(SplineFont *sf,EncMap *map,int check_dups) {
- int i,gid;
-
- if ( map->enc!=&custom ) {
- for ( i=0; i<map->enccount; ++i ) if ( (gid = map->map[i])!=-1 ) {
- int uni = UniFromEnc(i,map->enc);
- if (check_dups)
- AltUniAdd(sf->glyphs[gid],uni);
- else
- AltUniAdd_DontCheckDups(sf->glyphs[gid],uni);
- }
- }
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/parsettfatt.c b/dviware/dvisvgm/libs/ff-woff/fontforge/parsettfatt.c
deleted file mode 100644
index 1b6a172a0e..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/parsettfatt.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-
-int memushort(uint8 *data,int len, int offset) {
- if ( offset>=0 && offset+1<len ) {
- int ch1 = data[offset], ch2 = data[offset+1];
-return( (ch1<<8)|ch2 );
- } else {
- LogError( _("Bad font, offset out of bounds.\n") );
-return( 0 );
- }
-}
-
-void memputshort(uint8 *data,int offset,uint16 val) {
- data[offset] = (val>>8);
- data[offset+1] = val&0xff;
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/psfont.h b/dviware/dvisvgm/libs/ff-woff/fontforge/psfont.h
deleted file mode 100644
index 58f9c1c775..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/psfont.h
+++ /dev/null
@@ -1,188 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _PSFONT_H_
-#define _PSFONT_H_
-
-#include "splinefont.h"
-
-/* pfb section headers.
- There seem to be three and a half of them. the first is a the start of the
- file and is 6 bytes long "\200\001x\005\000\000", the second is right after
- the newline after eexec and is 6 bytes "\200\002I\224\000\000", the third
- is right before the zeros (after the encoded data) and is "\200\001\024\002\000\000"
- the last is at the end of file and is only two bytes "\200\003"
- I think that the \200 byte indicates a header, the next byte is 1 for ascii,
- 2 for binary and 3 for eof, then next 4 bytes are the length (not present
- for eof headers) with the first byte the least significant.
-*/
-
-struct charprocs {
- int cnt, next;
- char **keys;
- SplineChar **values;
-};
-
-struct fontinfo {
- char *familyname;
- char *fullname;
- char *notice;
- char *weight;
- char *version;
- real italicangle;
- unsigned int isfixedpitch:1;
- real underlineposition;
- real underlinethickness;
- int em, ascent, descent; /* Generated by Fontographer (and us) */
- int fstype; /* 2=>no embedding, 4=>print, 8=>edit */
- /* Multiple master */
- char *blenddesignpositions;
- char *blenddesignmap;
- char *blendaxistypes;
-};
-
-struct private {
- struct psdict *private;
- struct pschars *subrs; /* (optional, required if othersubrs is present) */
- /* 0-2 part of Flex, 3 hint replacement, 4 and up for charstrings */
- int leniv; /* (optional) must be 4 for old interpreters (number of rand chars at start of charstrings entries) */
-/* int bluefuzz; /\* (optional) (expand bluezones by this much, def=1) *\/ */
-/* real bluescale; /\* (optional) if the current pointsize in pixels is less than this value then do overshoot hinting *\/ */
-/* int blueshift; /\* (optional) *\/ */
-/* real bluevalues[14]; /\* <=7 pairs of integers, first less than second, (may be empty) *\/ */
-/* /\* first pair is baseline overshoots, other pairs above baseline *\/ */
-/* real expansionfactor; /\* (optional) only for languagegroup==1 (CJK) *\/ */
-/* real familyblues[14]; /\* (optional) bluevalues for family, can override local entry at small pointsizes *\/ */
-/* real familyotherblues[10];/\* (optional) otherblues for family *\/ */
-/* unsigned int forcebold:1; /\* (optional) *\/ */
-/* int languagegroup; /\* (optional) (0=>latin, greek, cyril, etc.), (1=>CJK)*\/ */
-/* int leniv; /\* (optional) must be 4 for old interpreters (number of rand chars at start of charstrings entries) *\/ */
-/* char *minfeature; /\* obsolete, required must be {16 16} *\/ */
-/* char *nd; /\* "noaccess def" (may also be named "|-") *\/ */
-/* char *np; /\* "noaccess put" (may also be named "|") *\/ */
-/* real otherblues[10]; /\* (optional) descender blue zones *\/ */
-/* struct pschars *othersubrs; /\* (optional) shouldn't contain user defined subs *\/ */
-/* int password; /\* obsolete, required must be 5839 *\/ */
-/* char *rd; /\* "{string currentfile exch readstring pop}" (may also be named "-|") *\/ */
-/* unsigned int rndstemup:1; /\* (optional) obsolete, false if languagegroud==1 *\/ */
-/* real stdhw[1]; /\* (optional) dominant horizontal stem width *\/ */
-/* real stdvw[1]; /\* (optional) dominant vert *\/ */
-/* real stemsnaph[12]; /\* (optional) common h stem widths (at most 12, includes stdhw, sorted by increasing size) *\/ */
-/* real stemsnapv[12]; /\* (optional) common v stem widths*\/ */
-/* struct pschars *subrs; /\* (optional, required if othersubrs is present) *\/ */
-/* /\* 0-2 part of Flex, 3 hint replacement, 4 and up for charstrings *\/ */
-/* int uniqueid; /\* (optional) seems same as fontdict entry. why's it here too? what of XUID? *\/ */
-/* /\* CID entries *\/ */
-/* int subrmapoffset; /\* Offset to the start of this font's subr strings map *\/ */
-/* int sdbytes; /\* bytes in each pointer in the map *\/ */
-/* int subrcnt; /\* number of subroutines, number of pointers-1 in the map *\/ */
-};
-
-typedef struct fontdict {
- int fonttype;
- real fontmatrix[6];
- char *fontname; /* (optional) */
- struct fontinfo *fontinfo;
- int languagelevel; /* (optional) */
- int wmode; /* (optional) chooses between alternate metric sets */
-/* non-type0 entries */
- char (*encoding[256]);
- real fontbb[4];
- int uniqueid; /* (optional) open range between 4,000,000 and 4,999,999 */
- int xuid[20]; /* (optional) */
-/* Type1 specific values */
- int painttype; /* 0 (filled) 2 (stroked) */
- real strokewidth; /* (optional) only if painttype==2 */
- struct psdict *metrics; /* (optional) */
- struct psdict *metrics2; /* (optional) */
- struct pschars *chars;
- struct charprocs *charprocs;
- struct private *private;
- unsigned int wasbinary: 1;
- unsigned int wascff: 1;
- Encoding *encoding_name;
-/* CID stuff */
- int fdcnt; /* For the underlying dictionaries */
- struct fontdict **fds;
- char *cidfontname;
- int cidfonttype;
- real cidversion;
- char *registry;
- char *ordering;
- int supplement;
- int mapoffset;
- int fdbytes;
- int gdbytes;
- int cidcnt;
- uint8 **cidstrs;
- int16 *cidlens;
- int16 *cidfds;
-/* CFF stuff */
- struct splinefont *sf;
-/* MM stuff */
- char *blendfunc;
- char *weightvector;
- char *cdv;
- char *ndv;
- struct psdict *blendprivate;
- struct psdict *blendfontinfo;
- long long creationtime; /* seconds since 1970 */
- long long modificationtime;
-} FontDict;
-
-struct fddata {
- int leniv;
- int subrmapoff, sdbytes, subrcnt;
- int flexmax;
- unsigned int iscjk:1;
- struct pschars *subrs;
-};
-
-struct cidbytes {
- int fdbytes, gdbytes, cidcnt;
- int cidmapoffset;
- int fdcnt;
- struct fddata *fds;
- int *fdind;
- int errors;
-};
-
-struct fd2data {
- int defwid, nomwid; /* For Type2 charstrings */
- struct pschars *subrs;
- FILE *private; /* Subroutines get stored in the private file immediately after the private dict */
- int eodictmark, fillindictmark;
- int privatelen;
-};
-
-extern const char (*AdobeStandardEncoding[256]);
-extern const char (*AdobeExpertEncoding[256]);
-extern int copymetadata, copyttfinstr;
-
-extern FontDict *_ReadPSFont(FILE *ps);
-extern FontDict *ReadPSFont(char *fontname);
-extern void PSFontFree(FontDict *fd);
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/psread.c b/dviware/dvisvgm/libs/ff-woff/fontforge/psread.c
deleted file mode 100644
index 5c5a52ed64..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/psread.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include "sd.h"
-#ifdef HAVE_IEEEFP_H
-# include <ieeefp.h> /* Solaris defines isnan in ieeefp rather than math.h */
-#endif
-
-typedef struct _io {
- const char *macro;
- char *start;
- FILE *ps, *fog;
- char fogbuf[60];
- int backedup, cnt, isloop, isstopped, fogns;
- struct _io *prev;
-} _IO;
-
-typedef struct io {
- struct _io *top;
- int endedstopped;
- int advance_width; /* Can be set from a PS comment by MF2PT1 */
-} IO;
-
-#define GARBAGE_MAX 64
-
-/* length (of string)
- fill eofill stroke
- gsave grestore
-*/
-
-void MatMultiply(real m1[6], real m2[6], real to[6]) {
- real trans[6];
-
- trans[0] = m1[0]*m2[0] +
- m1[1]*m2[2];
- trans[1] = m1[0]*m2[1] +
- m1[1]*m2[3];
- trans[2] = m1[2]*m2[0] +
- m1[3]*m2[2];
- trans[3] = m1[2]*m2[1] +
- m1[3]*m2[3];
- trans[4] = m1[4]*m2[0] +
- m1[5]*m2[2] +
- m2[4];
- trans[5] = m1[4]*m2[1] +
- m1[5]*m2[3] +
- m2[5];
- memcpy(to,trans,sizeof(trans));
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/pua.c b/dviware/dvisvgm/libs/ff-woff/fontforge/pua.c
deleted file mode 100644
index 3e7582829b..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/pua.c
+++ /dev/null
@@ -1,1612 +0,0 @@
-/* A number of encodings use the public use area to map to glyphs that are */
-/* defined in planes other than the BMP (chinese), or just multiple encodings*/
-/* for the same glyph (ams) */
-
-/* These data are taken from http://www.ams.org/STIX/bnb/stix-tbl.asc-2003-10-10 */
-const int amspua[] = {
-/* E000 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E008 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E010 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E018 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E020 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E028 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E030 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E038 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E040 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E048 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E050 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E058 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E060 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E068 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E070 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E078 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E080 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E088 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E090 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E098 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E100 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E108 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E110 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E118 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E120 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E128 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E130 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E138 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E140 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E148 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E150 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E158 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E160 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E168 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E170 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E178 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E180 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E188 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E190 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E198 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E1F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E200 */ 0x027f8, 0x027f5, 0x027fa, 0x027f7, 0x027f9, 0x027f6, 0x0290e, 0x0290f,
-/* E208 */ 0x027fc, 0x02910, 0x02926, 0x02925, 0x02923, 0x02924, 0x02928, 0x02929,
-/* E210 */ 0x0292a, 0x02927, 0x02905, 0x0, 0x0297c, 0x0297d, 0x021f5, 0x0296f,
-/* E218 */ 0x0296e, 0x02937, 0x02936, 0x0, 0x02933, 0x0, 0x02945, 0x02946,
-/* E220 */ 0x0291f, 0x02920, 0x0291d, 0x0291e, 0x02964, 0x02962, 0x02963, 0x02965,
-/* E228 */ 0x0294b, 0x0294a, 0x02968, 0x02966, 0x02967, 0x02969, 0x0296a, 0x0296d,
-/* E230 */ 0x0296c, 0x0296b, 0x02192, 0x02190, 0x02972, 0x02975, 0x02971, 0x02949,
-/* E238 */ 0x02911, 0x02916, 0x0291a, 0x0291c, 0x02919, 0x0291b, 0x02938, 0x02939,
-/* E240 */ 0x02948, 0x021fe, 0x021fd, 0x021ff, 0x021dd, 0x02904, 0x02903, 0x02902,
-/* E248 */ 0x0237c, 0x0293c, 0x0293d, 0x0297e, 0x0297f, 0x02974, 0x02973, 0x02af0,
-/* E250 */ 0x02aef, 0x02a3f, 0x0, 0x0, 0x02a00, 0x02a01, 0x02a02, 0x02a06,
-/* E258 */ 0x02a04, 0x02a3c, 0x02a25, 0x02a2a, 0x02a2d, 0x02a2e, 0x02a34, 0x02a35,
-/* E260 */ 0x029b5, 0x02a40, 0x02abd, 0x02abe, 0x02a33, 0x02a5f, 0x02a22, 0x02a72,
-/* E268 */ 0x02a71, 0x02a27, 0x02a23, 0x02a24, 0x02a26, 0x02a30, 0x02a46, 0x02a47,
-/* E270 */ 0x02a48, 0x02a49, 0x02a4a, 0x02a4b, 0x0, 0x0, 0x0, 0x0,
-/* E278 */ 0x02a4c, 0x02a4d, 0x02a50, 0x02a39, 0x02a3a, 0x02a3b, 0x029cd, 0x029c4,
-/* E280 */ 0x029c5, 0x02a44, 0x02a45, 0x02a42, 0x02a43, 0x02a38, 0x029bc, 0x029bf,
-/* E288 */ 0x029c0, 0x029c1, 0x029b7, 0x029b9, 0x02a37, 0x02a36, 0x02a31, 0x0,
-/* E290 */ 0x0, 0x02994, 0x02993, 0x023b1, 0x023b0, 0x02996, 0x02995, 0x02991,
-/* E298 */ 0x02992, 0x0298b, 0x0298c, 0x0298d, 0x0298e, 0x0298f, 0x02990, 0x02a8a,
-/* E2A0 */ 0x02a88, 0x02269, 0x02a89, 0x02a87, 0x02268, 0x02271, 0x02271, 0x02270,
-/* E2A8 */ 0x02270, 0x0, 0x02224, 0x02226, 0x02284, 0x02288, 0x02288, 0x02285,
-/* E2B0 */ 0x02289, 0x02289, 0x02ab9, 0x02ab5, 0x02aba, 0x02ab6, 0x02acb, 0x02acc,
-/* E2B8 */ 0x02acb, 0x0228a, 0x0228b, 0x02acc, 0x0, 0x0, 0x0, 0x0,
-/* E2C0 */ 0x0, 0x02270, 0x02271, 0x0226e, 0x0226f, 0x0, 0x02249, 0x0,
-/* E2C8 */ 0x02af3, 0x0f423, 0x0f428, 0x0, 0x0, 0x0, 0x0, 0x022ed,
-/* E2D0 */ 0x022ec, 0x02aee, 0x0, 0x0, 0x0, 0x0210f, 0x029a4, 0x029a5,
-/* E2D8 */ 0x0, 0x029a8, 0x029a9, 0x029aa, 0x029ab, 0x029ac, 0x029ad, 0x029ae,
-/* E2E0 */ 0x029af, 0x0299d, 0x025f9, 0x0, 0x025f8, 0x025fa, 0x029c9, 0x029b1,
-/* E2E8 */ 0x029b2, 0x029b3, 0x029b4, 0x0299a, 0x0ee39, 0x0204f, 0x023b5, 0x023b4,
-/* E2F0 */ 0x023b6, 0x029c2, 0x029c3, 0x0, 0x02a86, 0x02a8c, 0x02a7e, 0x02aa2,
-/* E2F8 */ 0x02a85, 0x02a8b, 0x02a7d, 0x02aa1, 0x0, 0x02ab7, 0x02aaf, 0x02ab8,
-/* E300 */ 0x02ab0, 0x02223, 0x02225, 0x02323, 0x02ac5, 0x02ac6, 0x02248, 0x0,
-/* E308 */ 0x0, 0x02a77, 0x02adb, 0x02a9d, 0x02a9e, 0x02aeb, 0x02a74, 0x02ae4,
-/* E310 */ 0x02ae8, 0x02ae7, 0x02ae9, 0x02ae6, 0x02a6d, 0x02a70, 0x02aae, 0x02a73,
-/* E318 */ 0x02a78, 0x02a66, 0x02a29, 0x02ad9, 0x02ada, 0x02a7f, 0x02a80, 0x02a81,
-/* E320 */ 0x02a82, 0x02a83, 0x02a84, 0x02a97, 0x02a98, 0x02a79, 0x02a7a, 0x0,
-/* E328 */ 0x0, 0x02a7b, 0x02a7c, 0x022da, 0x022db, 0x02a91, 0x02a92, 0x02aa4,
-/* E330 */ 0x02aa5, 0x02a93, 0x02a94, 0x02a8d, 0x02a8e, 0x02a8f, 0x02a90, 0x02a9f,
-/* E338 */ 0x02aa0, 0x02aaa, 0x02aab, 0x02aac, 0x02aad, 0x0, 0x0, 0x02979,
-/* E340 */ 0x0297b, 0x02abf, 0x02ac0, 0x02ac1, 0x02ac2, 0x02ac7, 0x02ac8, 0x02ad3,
-/* E348 */ 0x02ad4, 0x02ad5, 0x02ad6, 0x02ad7, 0x02ad8, 0x0ee40, 0x0ee41, 0x02ac3,
-/* E350 */ 0x02ac4, 0x02acf, 0x02ad0, 0x02ad1, 0x02ad2, 0x02aa6, 0x02aa7, 0x02aa8,
-/* E358 */ 0x02aa9, 0x029ce, 0x02ab3, 0x02ab4, 0x02abb, 0x02abc, 0x02976, 0x02978,
-/* E360 */ 0x0, 0x02218, 0x0, 0x022a5, 0x1d453, 0x021d4, 0x0, 0x0,
-/* E368 */ 0x0, 0x0, 0x0204e, 0x0, 0x0220c, 0x0220c, 0x02a55, 0x02a56,
-/* E370 */ 0x02209, 0x02057, 0x029dc, 0x0299c, 0x02a53, 0x02a54, 0x02a15, 0x02a16,
-/* E378 */ 0x02a0c, 0x0, 0x0, 0x022f7, 0x022f6, 0x022fe, 0x022fd, 0x001b5,
-/* E380 */ 0x0ee44, 0x0ee45, 0x02afd, 0x02af1, 0x029e3, 0x029e4, 0x029e5, 0x0,
-/* E388 */ 0x0, 0x0, 0x0, 0x02a6a, 0x02a6f, 0x02af2, 0x029de, 0x029dd,
-/* E390 */ 0x0, 0x02a5a, 0x02a5b, 0x02a5d, 0x02a5c, 0x02a10, 0x02a0d, 0x02a12,
-/* E398 */ 0x02a13, 0x02a14, 0x02a17, 0x02a11, 0x022f5, 0x0, 0x022f9, 0x0,
-/* E3A0 */ 0x022f2, 0x022fa, 0x022f3, 0x022fb, 0x022f4, 0x022fc, 0x0ee46, 0x0ee47,
-/* E3A8 */ 0x029bb, 0x02052, 0x029a6, 0x029a7, 0x02aec, 0x02aed, 0x02a57, 0x02a58,
-/* E3B0 */ 0x02a61, 0x02218, 0x0ee24, 0x0, 0x02026, 0x0ee30, 0x00308, 0x02aea,
-/* E3B8 */ 0x022f8, 0x0, 0x0, 0x0, 0x02209, 0x02275, 0x02274, 0x0,
-/* E3C0 */ 0x02053, 0x0, 0x0, 0x0, 0x02ae2, 0x0, 0x0, 0x0299f,
-/* E3C8 */ 0x029e1, 0x0, 0x02a51, 0x02a52, 0x003b1, 0x0026b, 0x0, 0x0,
-/* E3D0 */ 0x003c3, 0x00067, 0x025aa, 0x02a0f, 0x022bd, 0x0007c, 0x02934, 0x02935,
-/* E3D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E3E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E3E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E3F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E3F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E400 */ 0x0, 0x0, 0x0290c, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E408 */ 0x0, 0x029be, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E410 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x02241, 0x0, 0x0,
-/* E418 */ 0x0, 0x0, 0x029b0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E420 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E428 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E430 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E438 */ 0x0, 0x0, 0x0, 0x0ee3b, 0x0ee3c, 0x0, 0x0, 0x0,
-/* E440 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E448 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E450 */ 0x00308, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E458 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E460 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E468 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E470 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E478 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E480 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E488 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E490 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E498 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4F8 */ 0x0, 0x02423, 0x0, 0x0, 0x0ee31, 0x0, 0x0, 0x0ee32,
-/* E500 */ 0x1d538, 0x1d539, 0x02102, 0x1d53b, 0x1d53c, 0x1d53d, 0x1d53e, 0x0210d,
-/* E508 */ 0x1d540, 0x1d541, 0x1d542, 0x1d543, 0x1d544, 0x02115, 0x1d546, 0x02119,
-/* E510 */ 0x0211a, 0x0211d, 0x1d54a, 0x1d54b, 0x1d54c, 0x1d54d, 0x1d54e, 0x1d54f,
-/* E518 */ 0x1d550, 0x02124, 0x0213f, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E520 */ 0x1d49c, 0x0212c, 0x1d49e, 0x1d49f, 0x02130, 0x02131, 0x1d4a2, 0x0210b,
-/* E528 */ 0x02110, 0x1d4a5, 0x1d4a6, 0x02112, 0x02133, 0x1d4a9, 0x1d4aa, 0x1d4ab,
-/* E530 */ 0x1d4ac, 0x0211b, 0x1d4ae, 0x1d4af, 0x1d4b0, 0x1d4b1, 0x1d4b2, 0x1d4b3,
-/* E538 */ 0x1d4b4, 0x1d4b5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E540 */ 0x1d4b6, 0x1d4b7, 0x1d4b8, 0x1d4b9, 0x0212f, 0x1d4bb, 0x0210a, 0x1d4bd,
-/* E548 */ 0x1d4be, 0x1d4bf, 0x1d4c0, 0x02113, 0x1d4c2, 0x1d4c3, 0x02134, 0x1d4c5,
-/* E550 */ 0x1d4c6, 0x1d4c7, 0x1d4c8, 0x1d4c9, 0x1d4ca, 0x1d4cb, 0x1d4cc, 0x1d4cd,
-/* E558 */ 0x1d4ce, 0x1d4cf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E560 */ 0x1d504, 0x1d505, 0x1d506, 0x1d507, 0x1d508, 0x1d509, 0x1d50a, 0x0210c,
-/* E568 */ 0x02111, 0x1d50d, 0x1d50e, 0x1d50f, 0x1d510, 0x1d511, 0x1d512, 0x1d513,
-/* E570 */ 0x1d514, 0x0211c, 0x1d516, 0x1d517, 0x1d518, 0x1d519, 0x1d51a, 0x1d51b,
-/* E578 */ 0x1d51c, 0x12128, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E580 */ 0x1d51e, 0x1d51f, 0x1d520, 0x1d521, 0x1d522, 0x1d523, 0x1d524, 0x1d525,
-/* E588 */ 0x1d526, 0x1d527, 0x1d528, 0x1d529, 0x1d52a, 0x1d52b, 0x1d52c, 0x1d52d,
-/* E590 */ 0x1d52e, 0x1d52f, 0x1d530, 0x1d531, 0x1d532, 0x1d533, 0x1d534, 0x1d535,
-/* E598 */ 0x1d536, 0x1d537, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E5A0 */ 0x02942, 0x02944, 0x02947, 0x02940, 0x02941, 0x0, 0x0, 0x0,
-/* E5A8 */ 0x02985, 0x0, 0x02980, 0x0, 0x0ec01, 0x0, 0x0, 0x02986,
-/* E5B0 */ 0x02af6, 0x0, 0x02999, 0x0, 0x0ee33, 0x0ee34, 0x0ee35, 0x0ee36,
-/* E5B8 */ 0x025a9, 0x0ee37, 0x0ee38, 0x0, 0x0ee80, 0x0, 0x0, 0x02222,
-/* E5C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x02a08, 0x02a07, 0x02a63,
-/* E5C8 */ 0x02a5e, 0x0, 0x029ca, 0x0, 0x0, 0x0, 0x0, 0x02a95,
-/* E5D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E5D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x02a96,
-/* E5E0 */ 0x0, 0x0, 0x0, 0x0, 0x0e84e, 0x0, 0x0, 0x0ee50,
-/* E5E8 */ 0x0ee51, 0x0ee52, 0x0ee53, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E5F0 */ 0x0, 0x0, 0x0ee3a, 0x0, 0x0ee54, 0x0, 0x0ee55, 0x0ee56,
-/* E5F8 */ 0x0ee57, 0x0ee58, 0x0, 0x0ee59, 0x0ee5a, 0x0ee5b, 0x029f8, 0x029f9,
-/* E600 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0ee5c, 0x0ee5d, 0x0ee5e,
-/* E608 */ 0x0ee5f, 0x0ee60, 0x0ee61, 0x0ee62, 0x0224c, 0x0224c, 0x0, 0x029cb,
-/* E610 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E618 */ 0x0, 0x02a2f, 0x0, 0x029b6, 0x0, 0x0, 0x0, 0x0,
-/* E620 */ 0x0, 0x0, 0x0, 0x02205, 0x0ee10, 0x00326, 0x000b7, 0x0,
-/* E628 */ 0x0, 0x003f5, 0x0, 0x0, 0x0, 0x0ee14, 0x00061, 0x0,
-/* E630 */ 0x0ee15, 0x0, 0x0ee18, 0x0ee19, 0x0ee1a, 0x0ee1b, 0x0ee1c, 0x0,
-/* E638 */ 0x0ee1d, 0x0ee1e, 0x0026e, 0x0, 0x002af, 0x0, 0x00235, 0x00236,
-/* E640 */ 0x0ee1f, 0x00221, 0x0ee12, 0x02afd, 0x0ee20, 0x0, 0x0, 0x02afb,
-/* E648 */ 0x0, 0x0, 0x0005c, 0x0ee13, 0x0ee16, 0x0, 0x0, 0x0,
-/* E650 */ 0x021f9, 0x0, 0x0, 0x0, 0x0e215, 0x0, 0x0, 0x0,
-/* E658 */ 0x0, 0x1d5b2, 0x0, 0x02a05, 0x0, 0x0, 0x0, 0x0,
-/* E660 */ 0x003d8, 0x003d9, 0x0223c, 0x003d2, 0x003f4, 0x0, 0x0, 0x0,
-/* E668 */ 0x00062, 0x00063, 0x00064, 0x00065, 0x00066, 0x00068, 0x00069, 0x0006a,
-/* E670 */ 0x0006b, 0x0006c, 0x0006d, 0x0006e, 0x0006f, 0x00070, 0x00071, 0x00072,
-/* E678 */ 0x00073, 0x00074, 0x00075, 0x00076, 0x00077, 0x00078, 0x00079, 0x0007a,
-/* E680 */ 0x0030f, 0x003c7, 0x003b2, 0x001a5, 0x01d1c, 0x01d07, 0x0004d, 0x0002f,
-/* E688 */ 0x01d00, 0x0029c, 0x0e2d4, 0x003b8, 0x003bb, 0x02260, 0x00110, 0x003c9,
-/* E690 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E698 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6A0 */ 0x0ee17, 0x0ee70, 0x0ee71, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E700 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E708 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E710 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E718 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E720 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E728 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E730 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E738 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E740 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E748 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E750 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E758 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E760 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E768 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E770 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E778 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E780 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E788 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E790 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E798 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E800 */ 0x003f6, 0x0213f, 0x0, 0x1d7d9, 0x1d7d8, 0x02a03, 0x0, 0x0,
-/* E808 */ 0x0, 0x02a09, 0x0290d, 0x029eb, 0x0, 0x029c6, 0x0, 0x0,
-/* E810 */ 0x029c7, 0x0, 0x02a32, 0x02ae3, 0x0, 0x0, 0x0, 0x0,
-/* E818 */ 0x0, 0x029df, 0x02adc, 0x02add, 0x02141, 0x0, 0x0, 0x0,
-/* E820 */ 0x0, 0x02a0e, 0x02a19, 0x02a1a, 0x02af4, 0x02a18, 0x0, 0x0,
-/* E828 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x027fb, 0x027fd, 0x0,
-/* E830 */ 0x027fe, 0x0, 0x0, 0x0, 0x02906, 0x02907, 0x0, 0x0,
-/* E838 */ 0x0, 0x029b8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E840 */ 0x02aa3, 0x0, 0x0, 0x02322, 0x02216, 0x0, 0x0214b, 0x0221d,
-/* E848 */ 0x0, 0x00303, 0x0, 0x0, 0x0, 0x0, 0x0e84e, 0x0,
-/* E850 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E858 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E860 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E868 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E870 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E878 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E880 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E888 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E890 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E898 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E8F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E900 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E908 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E910 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E918 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E920 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E928 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E930 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E938 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E940 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E948 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E950 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E958 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E960 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E968 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E970 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E978 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E980 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E988 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E990 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E998 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA00 */ 0x029a2, 0x0299e, 0x029a3, 0x0ee73, 0x0ee74, 0x0, 0x0ee75, 0x02943,
-/* EA08 */ 0x02051, 0x00319, 0x0ee11, 0x0, 0x0ee76, 0x0, 0x0, 0x0,
-/* EA10 */ 0x0, 0x029f3, 0x029f1, 0x0, 0x0, 0x029bd, 0x029ec, 0x029ed,
-/* EA18 */ 0x0, 0x029ba, 0x02050, 0x0ee77, 0x029ef, 0x0, 0x0, 0x0,
-/* EA20 */ 0x0, 0x0, 0x025a0, 0x0, 0x0, 0x0223c, 0x0ee21, 0x0ee22,
-/* EA28 */ 0x029ea, 0x02908, 0x0ee72, 0x0, 0x0ee78, 0x0ee79, 0x0ee7a, 0x0ee7b,
-/* EA30 */ 0x0ee7c, 0x0ee7d, 0x0ee23, 0x0, 0x0, 0x0, 0x0, 0x0ee7e,
-/* EA38 */ 0x0, 0x0, 0x0, 0x0, 0x02142, 0x029e0, 0x0293e, 0x029d1,
-/* EA40 */ 0x029d4, 0x0, 0x0, 0x02983, 0x02922, 0x02921, 0x029f2, 0x029f0,
-/* EA48 */ 0x029ee, 0x0, 0x029d6, 0x02034, 0x021f6, 0x0293b, 0x029d2, 0x029d5,
-/* EA50 */ 0x02984, 0x02143, 0x1d5ab, 0x0ee42, 0x0ee43, 0x025fb, 0x025fc, 0x02a0b,
-/* EA58 */ 0x020e8, 0x0297a, 0x02a28, 0x029cc, 0x02909, 0x0ee7f, 0x02144, 0x029c8,
-/* EA60 */ 0x027d0, 0x029d3, 0x029d7, 0x00318, 0x02977, 0x02278, 0x02279, 0x0,
-/* EA68 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA70 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA78 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA80 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA88 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA90 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA98 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAA0 */ 0x02987, 0x02988, 0x02989, 0x0298a, 0x02982, 0x02a3e, 0x02a1f, 0x02a20,
-/* EAA8 */ 0x02040, 0x02a21, 0x02a64, 0x02a65, 0x022ff, 0x02a41, 0x020e6, 0x0,
-/* EAB0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAB8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAC0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAC8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAD0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAD8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAE0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAE8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAF0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAF8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB00 */ 0x0ee3d, 0x0, 0x0ee3e, 0x029e7, 0x0ee81, 0x029e8, 0x029e9, 0x0,
-/* EB08 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB10 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB18 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB20 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB28 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB30 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB38 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB40 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB48 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB50 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB58 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB60 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB68 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB70 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB78 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB80 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB88 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB90 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EB98 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBA0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBA8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBB0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBB8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBC0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBC8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBD0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBD8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBE0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBE8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBF0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EBF8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC00 */ 0x02a3d, 0x0e5ac, 0x0e5a5, 0x00302, 0x0030c, 0x00330, 0x020e7, 0x029e2,
-/* EC08 */ 0x0290a, 0x0290b, 0x02140, 0x02a1b, 0x02a1c, 0x02a1d, 0x02a1e, 0x0,
-/* EC10 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC18 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC20 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC28 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC30 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC38 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC40 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC48 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC50 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC58 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC60 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC68 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC70 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC78 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC80 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC88 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC90 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EC98 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECA0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECA8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECB0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECB8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECC0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECC8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECD0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECD8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECE0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECE8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECF0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECF8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED00 */ 0x0292b, 0x0292c, 0x0292d, 0x0292e, 0x0292f, 0x02930, 0x02931, 0x02932,
-/* ED08 */ 0x0294c, 0x0294d, 0x021f7, 0x021f8, 0x021fa, 0x0, 0x021fb, 0x021fc,
-/* ED10 */ 0x02900, 0x02901, 0x02914, 0x02915, 0x02917, 0x02918, 0x0, 0x0,
-/* ED18 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED20 */ 0x0293f, 0x0293a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED28 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED30 */ 0x0e370, 0x0e36c, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED38 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED40 */ 0x0, 0x0, 0x02a2c, 0x02a2b, 0x02a62, 0x02a60, 0x0, 0x0,
-/* ED48 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED50 */ 0x02a6b, 0x0, 0x0, 0x02a6c, 0x0, 0x0, 0x0, 0x0,
-/* ED58 */ 0x0, 0x0, 0x02a67, 0x0, 0x0, 0x0, 0x02a76, 0x0,
-/* ED60 */ 0x02270, 0x02271, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED68 */ 0x02a99, 0x02a9a, 0x02a9b, 0x02a9c, 0x0, 0x0, 0x0, 0x0,
-/* ED70 */ 0x02272, 0x02273, 0x02a9d, 0x02a9e, 0x02ab1, 0x02ab2, 0x0, 0x0,
-/* ED78 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED80 */ 0x02ac9, 0x02aca, 0x02288, 0x02289, 0x02a59, 0x02a4e, 0x02a4f, 0x02acd,
-/* ED88 */ 0x02ace, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED90 */ 0x02ae0, 0x02ade, 0x02adf, 0x02ae5, 0x02ae1, 0x0299b, 0x029a0, 0x029a1,
-/* ED98 */ 0x0, 0x02af5, 0x02a68, 0x02a69, 0x02af7, 0x02af8, 0x02a0a, 0x0213e,
-/* EDA0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDA8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDB0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDB8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDC0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDC8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDD0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDD8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDE0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDE8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDF0 */ 0x0ee82, 0x0ee83, 0x0ee84, 0x0220a, 0x0220d, 0x0ee85, 0x0, 0x0,
-/* EDF8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE00 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE08 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE10 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE18 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE20 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE28 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE30 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE38 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE40 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE48 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE50 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE58 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE60 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE68 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE70 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE78 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE80 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE88 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE90 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE98 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEA0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEA8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEB0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEB8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEC0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEC8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EED0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EED8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEE0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEE8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEF0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEF8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF00 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF08 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF10 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF18 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF20 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF28 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF30 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF38 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF40 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF48 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF50 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF58 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF60 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF68 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF70 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF78 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF80 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF88 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF90 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF98 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFA0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFA8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFB0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFB8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFC0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFC8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFD0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFD8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFE0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFE8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFF0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFF8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F000 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F008 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F010 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F018 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F020 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F028 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F030 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F038 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F040 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F048 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F050 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F058 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F060 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F068 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F070 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F078 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F080 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F088 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F090 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F098 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F100 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F108 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F110 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F118 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F120 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F128 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F130 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F138 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F140 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F148 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F150 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F158 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F160 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F168 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F170 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F178 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F180 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F188 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F190 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F198 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F200 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F208 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F210 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F218 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F220 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F228 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F230 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F238 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F240 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F248 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F250 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F258 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F260 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F268 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F270 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F278 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F280 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F288 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F290 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F298 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F300 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F308 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F310 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F318 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F320 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F328 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F330 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F338 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F340 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F348 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F350 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F358 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F360 */ 0x0, 0x0, 0x0, 0x0, 0x0205f, 0x0, 0x0, 0x0,
-/* F368 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F370 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F378 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F380 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F388 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F390 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F398 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3B0 */ 0x0, 0x0, 0x0ee90, 0x0, 0x0, 0x0, 0x02062, 0x02061,
-/* F3B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F400 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F408 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F410 */ 0x029cf, 0x029d0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F418 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F420 */ 0x0, 0x0, 0x0, 0x0f423, 0x0, 0x0, 0x0, 0x0,
-/* F428 */ 0x0f428, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F430 */ 0x0, 0x02a75, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F438 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F440 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F448 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F450 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F458 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F460 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F468 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F470 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F478 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F480 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F488 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F490 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F498 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F4F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F500 */ 0x0, 0x0, 0x0, 0x02912, 0x02913, 0x0294e, 0x0, 0x02952,
-/* F508 */ 0x02953, 0x0295a, 0x0295b, 0x02950, 0x02956, 0x02957, 0x0295e, 0x0295f,
-/* F510 */ 0x0294f, 0x02954, 0x02955, 0x0295c, 0x0295d, 0x02951, 0x02958, 0x02959,
-/* F518 */ 0x02960, 0x02961, 0x0, 0x0, 0x0, 0x0, 0x0, 0x029f4,
-/* F520 */ 0x0ee05, 0x0, 0x0, 0x0, 0x02970, 0x0, 0x0, 0x0ee06,
-/* F528 */ 0x0ee07, 0x025fe, 0x02191, 0x02193, 0x0, 0x0, 0x0, 0x0,
-/* F530 */ 0x025fd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F538 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F540 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F548 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F550 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F558 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F560 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F568 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F570 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F578 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F580 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F588 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F590 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F598 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F600 */ 0x0, 0x0ee91, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F608 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F610 */ 0x0, 0x0, 0x0, 0x0, 0x00346, 0x0033a, 0x0, 0x0,
-/* F618 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F620 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F628 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F630 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F638 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F640 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F648 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F650 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F658 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F660 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F668 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F670 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F678 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F680 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F688 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F690 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F698 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1d552, 0x1d553,
-/* F6E8 */ 0x1d554, 0x1d555, 0x1d556, 0x1d557, 0x1d558, 0x1d559, 0x1d55a, 0x1d55b,
-/* F6F0 */ 0x1d55c, 0x1d55d, 0x1d55e, 0x1d55f, 0x1d560, 0x1d561, 0x1d562, 0x1d563,
-/* F6F8 */ 0x1d564, 0x1d565, 0x1d566, 0x1d567, 0x1d568, 0x1d569, 0x1d56a, 0x1d56b,
-/* F700 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F708 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F710 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F718 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F720 */ 0x0, 0x0ee92, 0x0ee93, 0x0ee94, 0x0, 0x026a0, 0x0, 0x0,
-/* F728 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F730 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F738 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F740 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F748 */ 0x0, 0x0ee00, 0x0213d, 0x02145, 0x02146, 0x02147, 0x02148, 0x02149,
-/* F750 */ 0x02981, 0x0ee95, 0x0ee96, 0x0ee97, 0x0, 0x0, 0x0ee98, 0x0ee99,
-/* F758 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F760 */ 0x0, 0x0, 0x0, 0x0ee9d, 0x0ee9a, 0x0, 0x0ee9e, 0x0ee9b,
-/* F768 */ 0x0ee9c, 0x0ee9f, 0x0eea0, 0x0eeab, 0x0eeac, 0x0, 0x0, 0x0,
-/* F770 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F778 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F780 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F788 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F790 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F798 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0eea1, 0x0eea2,
-/* F7C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7D0 */ 0x0eea3, 0x0eea4, 0x0eea5, 0x0eea6, 0x0eea7, 0x0eea8, 0x0eea9, 0x0eeaa,
-/* F7D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F800 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F808 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F810 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F818 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F820 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F828 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F830 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F838 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F840 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F848 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F850 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F858 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F860 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F868 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F870 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F878 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F880 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F888 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F890 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F898 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
-};
-
-/* These data are taken from adobe's cid2code.txt for ac14 */
-const int cns14pua[] = { /* Big5 and friends */
-/* E000 */ 0x20547, 0x0, 0x205df, 0x23fc5, 0x0, 0x0, 0x0, 0x0,
-/* E008 */ 0x0, 0x24942, 0x289e4, 0x0, 0x219db, 0x0, 0x23cc8, 0x0,
-/* E010 */ 0x0, 0x0, 0x24933, 0x289aa, 0x202a0, 0x26bb3, 0x21305, 0x0,
-/* E018 */ 0x224ed, 0x0, 0x26d29, 0x27a84, 0x23600, 0x24ab1, 0x22513, 0x0,
-/* E020 */ 0x2037e, 0x0, 0x20380, 0x20347, 0x0, 0x2041f, 0x0, 0x0,
-/* E028 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x249a4, 0x20487, 0x0,
-/* E030 */ 0x233b4, 0x0, 0x20bff, 0x220fc, 0x202e5, 0x22530, 0x2058e, 0x23233,
-/* E038 */ 0x21983, 0x0, 0x0, 0x205b3, 0x23c99, 0x0, 0x0, 0x0,
-/* E040 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x24aa6, 0x0, 0x0,
-/* E048 */ 0x0, 0x0, 0x0, 0x0, 0x2372d, 0x0, 0x0, 0x0,
-/* E050 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E058 */ 0x0, 0x0, 0x26b13, 0x0, 0x28ade, 0x0, 0x0, 0x23f80,
-/* E060 */ 0x20954, 0x23fec, 0x0, 0x0, 0x20be2, 0x0, 0x21726, 0x0,
-/* E068 */ 0x0, 0x0, 0x0, 0x0, 0x216e8, 0x0, 0x0, 0x0,
-/* E070 */ 0x0, 0x286ab, 0x0, 0x0, 0x21596, 0x21613, 0x0, 0x0,
-/* E078 */ 0x28a9b, 0x0, 0x0, 0x0, 0x0, 0x25772, 0x0, 0x0,
-/* E080 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x20b8f,
-/* E088 */ 0x0, 0x23feb, 0x22da3, 0x0, 0x20c77, 0x0, 0x0, 0x0,
-/* E090 */ 0x0, 0x0, 0x0, 0x26b53, 0x20d74, 0x0, 0x0, 0x0,
-/* E098 */ 0x0, 0x2170d, 0x20edd, 0x0, 0x20d4d, 0x289bc, 0x22698, 0x0,
-/* E0A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x218d7, 0x2403a,
-/* E0A8 */ 0x0, 0x24435, 0x0, 0x210b4, 0x0, 0x0, 0x2328a, 0x0,
-/* E0B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0B8 */ 0x0, 0x0, 0x28b66, 0x0, 0x2124f, 0x0, 0x241a5, 0x0,
-/* E0C0 */ 0x0, 0x0, 0x0, 0x26c7e, 0x0, 0x21416, 0x0, 0x21454,
-/* E0C8 */ 0x24363, 0x0, 0x24bf5, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0D0 */ 0x2123c, 0x0, 0x0, 0x0, 0x2a150, 0x24278, 0x0, 0x0,
-/* E0D8 */ 0x0, 0x0, 0x0, 0x0, 0x2163e, 0x0, 0x0, 0x21692,
-/* E0E0 */ 0x0, 0x0, 0x20d4e, 0x26c81, 0x26d2a, 0x217dc, 0x0, 0x217fb,
-/* E0E8 */ 0x217b2, 0x26da6, 0x0, 0x21828, 0x216d5, 0x0, 0x26e45, 0x0,
-/* E0F0 */ 0x0, 0x0, 0x249a9, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E0F8 */ 0x26fa1, 0x22554, 0x0, 0x21911, 0x0, 0x216b8, 0x0, 0x0,
-/* E100 */ 0x0, 0x0, 0x0, 0x27a0e, 0x0, 0x0, 0x20204, 0x0,
-/* E108 */ 0x0, 0x21a34, 0x259cc, 0x205a5, 0x0, 0x0, 0x0, 0x0,
-/* E110 */ 0x21b44, 0x0, 0x0, 0x0, 0x21ca5, 0x26b28, 0x0, 0x0,
-/* E118 */ 0x0, 0x0, 0x0, 0x0, 0x21df9, 0x21e37, 0x0, 0x0,
-/* E120 */ 0x0, 0x21ea4, 0x0, 0x0, 0x0, 0x0, 0x24901, 0x22049,
-/* E128 */ 0x22173, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E130 */ 0x244bc, 0x20cd3, 0x0, 0x0, 0x0, 0x0, 0x21771, 0x0,
-/* E138 */ 0x0, 0x28482, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E140 */ 0x0, 0x201c1, 0x2f894, 0x0, 0x0, 0x2133a, 0x0, 0x26888,
-/* E148 */ 0x223d0, 0x0, 0x22471, 0x0, 0x0, 0x26e6e, 0x0, 0x0,
-/* E150 */ 0x28a36, 0x0, 0x0, 0x0, 0x25250, 0x21f6a, 0x270f8, 0x22668,
-/* E158 */ 0x0, 0x2029e, 0x28a29, 0x0, 0x0, 0x21877, 0x0, 0x0,
-/* E160 */ 0x0, 0x0, 0x227b4, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E168 */ 0x24982, 0x2498f, 0x27a53, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E170 */ 0x0, 0x2f8a6, 0x26ed2, 0x0, 0x0, 0x20656, 0x0, 0x0,
-/* E178 */ 0x23fb7, 0x2285f, 0x0, 0x28b9d, 0x2995d, 0x0, 0x0, 0x22980,
-/* E180 */ 0x228c1, 0x0, 0x0, 0x0, 0x0, 0x20118, 0x0, 0x21770,
-/* E188 */ 0x0, 0x22e0d, 0x0, 0x249df, 0x0, 0x0, 0x0, 0x2138e,
-/* E190 */ 0x217fc, 0x0, 0x0, 0x22e36, 0x0, 0x2408c, 0x2571d, 0x0,
-/* E198 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24a28,
-/* E1A0 */ 0x24a23, 0x0, 0x0, 0x0, 0x2307e, 0x0, 0x24940, 0x0,
-/* E1A8 */ 0x0, 0x0, 0x21829, 0x0, 0x0, 0x0, 0x23400, 0x0,
-/* E1B0 */ 0x231f7, 0x231f8, 0x0, 0x231a4, 0x231a5, 0x0, 0x20e75, 0x0,
-/* E1B8 */ 0x251e6, 0x0, 0x0, 0x21e3d, 0x23231, 0x285f4, 0x231c8, 0x25313,
-/* E1C0 */ 0x0, 0x228f7, 0x0, 0x0, 0x2439c, 0x24a21, 0x0, 0x0,
-/* E1C8 */ 0x237c2, 0x0, 0x0, 0x0, 0x241cd, 0x290ed, 0x0, 0x0,
-/* E1D0 */ 0x0, 0x0, 0x0, 0x0, 0x233e6, 0x26da0, 0x0, 0x2346f,
-/* E1D8 */ 0x0, 0x0, 0x28adf, 0x0, 0x0, 0x235cd, 0x0, 0x0,
-/* E1E0 */ 0x0, 0x0, 0x2363c, 0x0, 0x0, 0x0, 0x28a4a, 0x0,
-/* E1E8 */ 0x0, 0x0, 0x0, 0x203c9, 0x0, 0x0, 0x0, 0x23659,
-/* E1F0 */ 0x2212a, 0x0, 0x23703, 0x0, 0x0, 0x0, 0x0, 0x2919c,
-/* E1F8 */ 0x0, 0x0, 0x20923, 0x0, 0x0, 0x0, 0x227cd, 0x0,
-/* E200 */ 0x23adb, 0x203b5, 0x21958, 0x0, 0x0, 0x23b5a, 0x0, 0x23efc,
-/* E208 */ 0x0, 0x0, 0x2248b, 0x248f1, 0x26b51, 0x0, 0x0, 0x0,
-/* E210 */ 0x23dbc, 0x0, 0x23dbd, 0x241a4, 0x2490c, 0x24900, 0x23cc9, 0x0,
-/* E218 */ 0x0, 0x20d32, 0x0, 0x231f9, 0x22491, 0x0, 0x0, 0x26d25,
-/* E220 */ 0x26da1, 0x26deb, 0x0, 0x0, 0x0, 0x0, 0x2497f, 0x24085,
-/* E228 */ 0x26e72, 0x0, 0x26f74, 0x0, 0x0, 0x0, 0x0, 0x28b21,
-/* E230 */ 0x0, 0x23e2f, 0x0, 0x23f82, 0x0, 0x0, 0x0, 0x2304b,
-/* E238 */ 0x0, 0x0, 0x0, 0x23e30, 0x0, 0x21497, 0x2403d, 0x0,
-/* E240 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x29170, 0x0, 0x0,
-/* E248 */ 0x24144, 0x0, 0x24091, 0x24155, 0x24039, 0x23ff0, 0x23fb4, 0x2413f,
-/* E250 */ 0x0, 0x24156, 0x24157, 0x24140, 0x261dd, 0x0, 0x0, 0x0,
-/* E258 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E260 */ 0x0, 0x24277, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E268 */ 0x24365, 0x0, 0x0, 0x242c1, 0x0, 0x2445a, 0x24a27, 0x24a22,
-/* E270 */ 0x0, 0x28be8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E278 */ 0x0, 0x0, 0x25605, 0x0, 0x0, 0x24974, 0x0, 0x0,
-/* E280 */ 0x0, 0x0, 0x23044, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E288 */ 0x24823, 0x2882b, 0x0, 0x28804, 0x0, 0x0, 0x0, 0x0,
-/* E290 */ 0x20c3a, 0x26a2e, 0x0, 0x0, 0x241e2, 0x216e7, 0x24a24, 0x0,
-/* E298 */ 0x0, 0x249b7, 0x2498d, 0x249fb, 0x0, 0x0, 0x0, 0x24a26,
-/* E2A0 */ 0x0, 0x205c3, 0x0, 0x0, 0x228ad, 0x0, 0x28eb2, 0x0,
-/* E2A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E2B0 */ 0x0, 0x0, 0x24a8c, 0x2415f, 0x24a79, 0x28b8f, 0x0, 0x28c03,
-/* E2B8 */ 0x2189e, 0x0, 0x21988, 0x0, 0x0, 0x0, 0x28ed9, 0x21a4b,
-/* E2C0 */ 0x0, 0x28eac, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24f82,
-/* E2C8 */ 0x0, 0x24d13, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E2D0 */ 0x0, 0x0, 0x0, 0x0, 0x263f5, 0x0, 0x0, 0x0,
-/* E2D8 */ 0x26911, 0x2690e, 0x0, 0x0, 0x0, 0x0, 0x26f9f, 0x0,
-/* E2E0 */ 0x2509d, 0x2517d, 0x21e1c, 0x0, 0x0, 0x0, 0x0, 0x25220,
-/* E2E8 */ 0x0, 0x232ac, 0x0, 0x28964, 0x28968, 0x216c1, 0x0, 0x0,
-/* E2F0 */ 0x21376, 0x24a12, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E2F8 */ 0x255e0, 0x0, 0x0, 0x0, 0x2760c, 0x0, 0x0, 0x28b2b,
-/* E300 */ 0x26083, 0x2261c, 0x0, 0x0, 0x0, 0x0, 0x25857, 0x0,
-/* E308 */ 0x27b39, 0x0, 0x0, 0x0, 0x27126, 0x0, 0x0, 0x2910d,
-/* E310 */ 0x0, 0x23ed7, 0x0, 0x26ed3, 0x0, 0x257e0, 0x0, 0x0,
-/* E318 */ 0x28be9, 0x0, 0x0, 0x258e1, 0x294d9, 0x0, 0x0, 0x259ac,
-/* E320 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x2648d, 0x0, 0x0,
-/* E328 */ 0x0, 0x0, 0x0, 0x0, 0x25c01, 0x0, 0x0, 0x0,
-/* E330 */ 0x2530e, 0x25cfe, 0x0, 0x0, 0x0, 0x25bb4, 0x26c7f, 0x0,
-/* E338 */ 0x0, 0x0, 0x0, 0x25d20, 0x0, 0x25c65, 0x0, 0x0,
-/* E340 */ 0x0, 0x0, 0x25cc1, 0x0, 0x0, 0x24882, 0x0, 0x0,
-/* E348 */ 0x24578, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E350 */ 0x0, 0x0, 0x26e44, 0x0, 0x26ed6, 0x0, 0x0, 0x0,
-/* E358 */ 0x0, 0x0, 0x0, 0x24057, 0x26029, 0x0, 0x0, 0x0,
-/* E360 */ 0x217f9, 0x0, 0x2836d, 0x0, 0x26121, 0x2615a, 0x0, 0x0,
-/* E368 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x262d0,
-/* E370 */ 0x0, 0x0, 0x26351, 0x0, 0x21661, 0x20068, 0x0, 0x23766,
-/* E378 */ 0x0, 0x2833a, 0x0, 0x26489, 0x0, 0x0, 0x0, 0x0,
-/* E380 */ 0x0, 0x2a087, 0x26cc3, 0x0, 0x0, 0x0, 0x22714, 0x0,
-/* E388 */ 0x26626, 0x23de3, 0x266e8, 0x0, 0x0, 0x28a48, 0x0, 0x0,
-/* E390 */ 0x0, 0x226f6, 0x0, 0x26498, 0x24fb8, 0x0, 0x2148a, 0x0,
-/* E398 */ 0x2185e, 0x0, 0x24a65, 0x24a95, 0x0, 0x0, 0x20b0d, 0x26a52,
-/* E3A0 */ 0x23d7e, 0x0, 0x214fd, 0x0, 0x0, 0x26b0a, 0x249a7, 0x23530,
-/* E3A8 */ 0x21773, 0x23df8, 0x0, 0x0, 0x2f994, 0x0, 0x0, 0x0,
-/* E3B0 */ 0x0, 0x20e16, 0x217b4, 0x0, 0x2317d, 0x2355a, 0x0, 0x0,
-/* E3B8 */ 0x0, 0x23e8b, 0x26da3, 0x26b05, 0x26b97, 0x235ce, 0x0, 0x0,
-/* E3C0 */ 0x0, 0x0, 0x0, 0x26da5, 0x0, 0x0, 0x0, 0x0,
-/* E3C8 */ 0x26ed4, 0x0, 0x0, 0x0, 0x26e42, 0x22eef, 0x0, 0x25be4,
-/* E3D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x23cb5, 0x0, 0x0,
-/* E3D8 */ 0x26b96, 0x26e77, 0x26e43, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E3E0 */ 0x0, 0x25c91, 0x0, 0x25cc0, 0x0, 0x0, 0x0, 0x26e99,
-/* E3E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x28625, 0x2863b, 0x0,
-/* E3F0 */ 0x27088, 0x0, 0x21582, 0x270cd, 0x2f9b2, 0x0, 0x0, 0x0,
-/* E3F8 */ 0x218a2, 0x0, 0x2739a, 0x0, 0x0, 0x2a0f8, 0x0, 0x22c27,
-/* E400 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E408 */ 0x0, 0x275e0, 0x23db9, 0x275e4, 0x0, 0x0, 0x0, 0x0,
-/* E410 */ 0x0, 0x0, 0x0, 0x0, 0x2770f, 0x0, 0x0, 0x0,
-/* E418 */ 0x0, 0x0, 0x0, 0x28a25, 0x0, 0x27924, 0x27abd, 0x0,
-/* E420 */ 0x0, 0x0, 0x0, 0x27a59, 0x0, 0x27b3a, 0x23f8f, 0x0,
-/* E428 */ 0x27b38, 0x0, 0x0, 0x0, 0x25430, 0x25565, 0x0, 0x0,
-/* E430 */ 0x0, 0x0, 0x24a7a, 0x0, 0x0, 0x0, 0x216df, 0x0,
-/* E438 */ 0x0, 0x0, 0x27d54, 0x27d8f, 0x2f9d4, 0x0, 0x27d53, 0x0,
-/* E440 */ 0x27d98, 0x27dbd, 0x0, 0x0, 0x21910, 0x0, 0x0, 0x0,
-/* E448 */ 0x24cc9, 0x0, 0x0, 0x0, 0x28002, 0x21014, 0x2498a, 0x0,
-/* E450 */ 0x281bc, 0x2710c, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E458 */ 0x0, 0x28365, 0x28412, 0x0, 0x0, 0x2a29f, 0x20a50, 0x0,
-/* E460 */ 0x0, 0x289de, 0x2853d, 0x23dbb, 0x0, 0x23262, 0x0, 0x2a014,
-/* E468 */ 0x286bc, 0x28501, 0x22325, 0x0, 0x26ed7, 0x0, 0x2853c, 0x27abe,
-/* E470 */ 0x0, 0x2856c, 0x2860b, 0x0, 0x28713, 0x0, 0x286e6, 0x0,
-/* E478 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x28933, 0x21e89,
-/* E480 */ 0x0, 0x0, 0x0, 0x0, 0x255b9, 0x0, 0x28ac6, 0x23c9b,
-/* E488 */ 0x28b0c, 0x255db, 0x20d31, 0x0, 0x0, 0x28ae1, 0x28beb, 0x0,
-/* E490 */ 0x0, 0x28ae2, 0x28ae5, 0x0, 0x0, 0x28bec, 0x28c39, 0x28bff,
-/* E498 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4A0 */ 0x0, 0x2267a, 0x286d8, 0x2127c, 0x23e2e, 0x0, 0x0, 0x0,
-/* E4A8 */ 0x0, 0x0, 0x0, 0x26ed5, 0x0, 0x0, 0x0, 0x28ae0,
-/* E4B0 */ 0x0, 0x0, 0x0, 0x26cb8, 0x20274, 0x26410, 0x290af, 0x290e5,
-/* E4B8 */ 0x24ad1, 0x21915, 0x2330a, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E4C0 */ 0x0, 0x24ae9, 0x0, 0x0, 0x0, 0x0, 0x291d5, 0x0,
-/* E4C8 */ 0x0, 0x291eb, 0x0, 0x0, 0x0, 0x230b7, 0x230bc, 0x0,
-/* E4D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2546c, 0x0,
-/* E4D8 */ 0x0, 0x29433, 0x0, 0x0, 0x2941d, 0x2797a, 0x0, 0x0,
-/* E4E0 */ 0x0, 0x0, 0x0, 0x0, 0x27175, 0x0, 0x20630, 0x2415c,
-/* E4E8 */ 0x25706, 0x0, 0x0, 0x0, 0x0, 0x0, 0x26d27, 0x216d3,
-/* E4F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24a29, 0x0,
-/* E4F8 */ 0x29857, 0x29905, 0x0, 0x0, 0x0, 0x0, 0x0, 0x25725,
-/* E500 */ 0x0, 0x290b1, 0x29bd5, 0x0, 0x0, 0x29b05, 0x0, 0x0,
-/* E508 */ 0x0, 0x0, 0x28600, 0x0, 0x0, 0x269a8, 0x0, 0x2307d,
-/* E510 */ 0x0, 0x0, 0x29d3e, 0x0, 0x21863, 0x0, 0x2424b, 0x0,
-/* E518 */ 0x0, 0x0, 0x29e68, 0x0, 0x29fb7, 0x2a192, 0x2a1ab, 0x2a0e1,
-/* E520 */ 0x2a123, 0x2a1df, 0x0, 0x0, 0x2a134, 0x0, 0x0, 0x0,
-/* E528 */ 0x2215b, 0x2a193, 0x2a220, 0x2193b, 0x2a233, 0x0, 0x2a0b9, 0x2a2b4,
-/* E530 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24364,
-/* E538 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x28c2b, 0x0,
-/* E540 */ 0x0, 0x0, 0x0, 0x26da2, 0x0, 0x0, 0x0, 0x0,
-/* E548 */ 0x0, 0x0, 0x0, 0x2908b, 0x0, 0x0, 0x0, 0x0,
-/* E550 */ 0x0, 0x0, 0x0, 0x0, 0x24975, 0x249bb, 0x0, 0x249f8,
-/* E558 */ 0x24348, 0x24a51, 0x0, 0x28bda, 0x218fa, 0x0, 0x2897e, 0x28e36,
-/* E560 */ 0x0, 0x0, 0x28a44, 0x0, 0x0, 0x0, 0x2896c, 0x244b9,
-/* E568 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x24473, 0x243f8, 0x0,
-/* E570 */ 0x217ef, 0x0, 0x218be, 0x23599, 0x0, 0x21885, 0x2542f, 0x217f8,
-/* E578 */ 0x0, 0x216fb, 0x21839, 0x0, 0x21774, 0x218d1, 0x25f4b, 0x0,
-/* E580 */ 0x216c0, 0x0, 0x24a25, 0x213fe, 0x212a8, 0x213c6, 0x214b6, 0x0,
-/* E588 */ 0x236a6, 0x0, 0x0, 0x24994, 0x27165, 0x23e31, 0x2555c, 0x23efb,
-/* E590 */ 0x27052, 0x0, 0x236ee, 0x2999d, 0x26f26, 0x0, 0x0, 0x0,
-/* E598 */ 0x0, 0x0, 0x21922, 0x0, 0x0, 0x2373f, 0x240e1, 0x2408b,
-/* E5A0 */ 0x2410f, 0x26c21, 0x0, 0x0, 0x266b1, 0x0, 0x20fdf, 0x20ba8,
-/* E5A8 */ 0x20e0d, 0x0, 0x28b13, 0x0, 0x0, 0x0, 0x0, 0x24436,
-/* E5B0 */ 0x0, 0x20465, 0x2037f, 0x0, 0x0, 0x25651, 0x0, 0x201ab,
-/* E5B8 */ 0x203cb, 0x0, 0x2030a, 0x20414, 0x0, 0x0, 0x202c0, 0x28eb3,
-/* E5C0 */ 0x20275, 0x0, 0x2020c, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E5C8 */ 0x24a0e, 0x23e8a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E5D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x23595,
-/* E5D8 */ 0x23e39, 0x23ebf, 0x0, 0x21884, 0x23e89, 0x0, 0x0, 0x205e0,
-/* E5E0 */ 0x0, 0x204a3, 0x20492, 0x20491, 0x0, 0x28a9c, 0x2070e, 0x0,
-/* E5E8 */ 0x0, 0x20873, 0x0, 0x0, 0x0, 0x0, 0x2438c, 0x20c20,
-/* E5F0 */ 0x249ac, 0x210e4, 0x0, 0x20e1d, 0x0, 0x0, 0x0, 0x0,
-/* E5F8 */ 0x0, 0x0, 0x0, 0x24abc, 0x2408d, 0x0, 0x0, 0x0,
-/* E600 */ 0x240c9, 0x0, 0x20345, 0x0, 0x20bc6, 0x0, 0x0, 0x0,
-/* E608 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x28a46,
-/* E610 */ 0x216fa, 0x2176f, 0x21710, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E618 */ 0x0, 0x25946, 0x219f3, 0x21861, 0x24295, 0x0, 0x0, 0x0,
-/* E620 */ 0x0, 0x25e83, 0x0, 0x28bd7, 0x20413, 0x0, 0x0, 0x21303,
-/* E628 */ 0x0, 0x0, 0x0, 0x289fb, 0x0, 0x0, 0x0, 0x0,
-/* E630 */ 0x0, 0x0, 0x21996, 0x2197c, 0x23aee, 0x0, 0x0, 0x21903,
-/* E638 */ 0x21904, 0x0, 0x218a0, 0x0, 0x216fe, 0x0, 0x0, 0x28a47,
-/* E640 */ 0x21dba, 0x23472, 0x289a8, 0x0, 0x0, 0x21927, 0x217ab, 0x0,
-/* E648 */ 0x2173b, 0x0, 0x0, 0x275fd, 0x0, 0x0, 0x22860, 0x2262b,
-/* E650 */ 0x0, 0x0, 0x225af, 0x225be, 0x29088, 0x26f73, 0x0, 0x2003e,
-/* E658 */ 0x20046, 0x2261b, 0x0, 0x0, 0x0, 0x22c9b, 0x22d07, 0x246d4,
-/* E660 */ 0x2914d, 0x0, 0x24665, 0x22b6a, 0x0, 0x22b22, 0x23450, 0x298ea,
-/* E668 */ 0x22e78, 0x0, 0x2a45b, 0x0, 0x0, 0x0, 0x249e3, 0x22d67,
-/* E670 */ 0x0, 0x22ca1, 0x0, 0x0, 0x0, 0x0, 0x2308e, 0x232ad,
-/* E678 */ 0x24989, 0x232ab, 0x0, 0x232e0, 0x218d9, 0x2943f, 0x0, 0x23289,
-/* E680 */ 0x231b3, 0x0, 0x0, 0x25584, 0x28b22, 0x2558f, 0x216fc, 0x2555b,
-/* E688 */ 0x25425, 0x0, 0x23103, 0x2182a, 0x23234, 0x0, 0x2320f, 0x23182,
-/* E690 */ 0x242c9, 0x0, 0x26d24, 0x0, 0x0, 0x0, 0x27870, 0x21deb,
-/* E698 */ 0x0, 0x232d2, 0x232e1, 0x0, 0x25872, 0x0, 0x2383a, 0x237bc,
-/* E6A0 */ 0x0, 0x237a2, 0x233fe, 0x0, 0x0, 0x0, 0x2462a, 0x0,
-/* E6A8 */ 0x0, 0x0, 0x0, 0x0, 0x237d5, 0x24487, 0x0, 0x0,
-/* E6B0 */ 0x0, 0x0, 0x21912, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6B8 */ 0x0, 0x23fc0, 0x23c9a, 0x0, 0x0, 0x28bea, 0x28acb, 0x0,
-/* E6C0 */ 0x2801e, 0x289dc, 0x0, 0x0, 0x0, 0x249ec, 0x0, 0x23f7f,
-/* E6C8 */ 0x0, 0x0, 0x2403c, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E6D0 */ 0x0, 0x2431a, 0x24276, 0x0, 0x0, 0x0, 0x0, 0x2478f,
-/* E6D8 */ 0x24725, 0x0, 0x24aa4, 0x205eb, 0x0, 0x23ef8, 0x2365f, 0x24a4a,
-/* E6E0 */ 0x24917, 0x25fe1, 0x0, 0x0, 0x24adf, 0x28c23, 0x23f35, 0x0,
-/* E6E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x26dea, 0x0,
-/* E6F0 */ 0x0, 0x0, 0x24cd9, 0x24d06, 0x0, 0x0, 0x0, 0x2a5c6,
-/* E6F8 */ 0x0, 0x0, 0x28acc, 0x249ab, 0x2498e, 0x0, 0x0, 0x24a4e,
-/* E700 */ 0x0, 0x249c5, 0x248f3, 0x0, 0x0, 0x0, 0x28ae3, 0x21864,
-/* E708 */ 0x0, 0x25221, 0x251e7, 0x0, 0x23232, 0x0, 0x0, 0x0,
-/* E710 */ 0x24697, 0x23781, 0x0, 0x248f0, 0x0, 0x0, 0x0, 0x24aba,
-/* E718 */ 0x24ac7, 0x0, 0x24a96, 0x261ae, 0x0, 0x25581, 0x0, 0x0,
-/* E720 */ 0x0, 0x0, 0x0, 0x0, 0x27741, 0x256e3, 0x0, 0x0,
-/* E728 */ 0x0, 0x0, 0x0, 0x23efa, 0x0, 0x0, 0x0, 0x216e6,
-/* E730 */ 0x0, 0x0, 0x0, 0x20d4c, 0x2498c, 0x20299, 0x23dba, 0x2176e,
-/* E738 */ 0x0, 0x0, 0x0, 0x0, 0x201d4, 0x20c0d, 0x0, 0x0,
-/* E740 */ 0x226f5, 0x25aaf, 0x25a9c, 0x0, 0x2025b, 0x0, 0x0, 0x25bc6,
-/* E748 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x25bb3, 0x25ebc, 0x25ea6,
-/* E750 */ 0x0, 0x249f9, 0x217b0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E758 */ 0x0, 0x0, 0x0, 0x26261, 0x2615c, 0x27b48, 0x0, 0x25e82,
-/* E760 */ 0x0, 0x26b75, 0x20916, 0x0, 0x2004e, 0x235cf, 0x0, 0x26412,
-/* E768 */ 0x263f8, 0x24962, 0x0, 0x0, 0x2082c, 0x25ae9, 0x25d43, 0x0,
-/* E770 */ 0x25e0e, 0x0, 0x0, 0x0, 0x0, 0x2343f, 0x0, 0x249f7,
-/* E778 */ 0x265ad, 0x0, 0x265a0, 0x0, 0x27127, 0x26cd1, 0x0, 0x0,
-/* E780 */ 0x0, 0x0, 0x0, 0x0, 0x267b4, 0x0, 0x26a42, 0x0,
-/* E788 */ 0x0, 0x26a51, 0x0, 0x26da7, 0x0, 0x2721b, 0x0, 0x0,
-/* E790 */ 0x21840, 0x0, 0x218a1, 0x0, 0x218d8, 0x0, 0x2f9bc, 0x23d8f,
-/* E798 */ 0x0, 0x27422, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7A0 */ 0x0, 0x0, 0x25683, 0x0, 0x27785, 0x27784, 0x28bf5, 0x28bd9,
-/* E7A8 */ 0x28b9c, 0x289f9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7B0 */ 0x0, 0x29448, 0x0, 0x0, 0x24284, 0x0, 0x0, 0x0,
-/* E7B8 */ 0x21845, 0x0, 0x0, 0x0, 0x27ddc, 0x0, 0x0, 0x0,
-/* E7C0 */ 0x0, 0x0, 0x0, 0x0, 0x24c09, 0x0, 0x0, 0x0,
-/* E7C8 */ 0x0, 0x0, 0x22321, 0x0, 0x0, 0x0, 0x217da, 0x0,
-/* E7D0 */ 0x0, 0x2492f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E7D8 */ 0x28a4b, 0x0, 0x28afc, 0x0, 0x28c1d, 0x28c3b, 0x0, 0x0,
-/* E7E0 */ 0x0, 0x0, 0x0, 0x0, 0x28d34, 0x0, 0x0, 0x248ff,
-/* E7E8 */ 0x24a42, 0x243ea, 0x0, 0x23225, 0x0, 0x28ee7, 0x28e66, 0x28e65,
-/* E7F0 */ 0x0, 0x249ed, 0x24a78, 0x23fee, 0x0, 0x0, 0x0, 0x0,
-/* E7F8 */ 0x290b0, 0x0, 0x0, 0x29093, 0x257df, 0x0, 0x0, 0x28989,
-/* E800 */ 0x28c26, 0x28b2f, 0x263be, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E808 */ 0x2421b, 0x0, 0x0, 0x0, 0x20f26, 0x0, 0x28bc5, 0x24ab2,
-/* E810 */ 0x0, 0x294da, 0x0, 0x295d7, 0x0, 0x0, 0x28b50, 0x24a67,
-/* E818 */ 0x28b64, 0x0, 0x28a45, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E820 */ 0x0, 0x27b06, 0x0, 0x0, 0x0, 0x0, 0x0, 0x28b65,
-/* E828 */ 0x258c8, 0x0, 0x0, 0x0, 0x0, 0x298f1, 0x0, 0x29948,
-/* E830 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x21302, 0x0, 0x249b8,
-/* E838 */ 0x214e8, 0x0, 0x2271f, 0x23db8, 0x0, 0x0, 0x0, 0x0,
-/* E840 */ 0x0, 0x22781, 0x2296b, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E848 */ 0x0, 0x0, 0x0, 0x29e2d, 0x0, 0x2a1f5, 0x2a0fe, 0x0,
-/* E850 */ 0x0, 0x24104, 0x0, 0x0, 0x0, 0x2a1b4, 0x2a0ed, 0x2a0f3,
-/* E858 */ 0x2992f, 0x0, 0x0, 0x26e12, 0x26fdf, 0x26b82, 0x0, 0x0,
-/* E860 */ 0x26da4, 0x26e84, 0x26df0, 0x0, 0x0, 0x26e00, 0x237d7, 0x26064,
-/* E868 */ 0x0, 0x2359c, 0x23640, 0x0, 0x249de, 0x0, 0x0, 0x0,
-/* E870 */ 0x0, 0x202bf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E878 */ 0x2555d, 0x0, 0x0, 0x0, 0x0, 0x21757, 0x231c9, 0x24941,
-/* E880 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x241b5,
-/* E888 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x241ac,
-/* E890 */ 0x0, 0x26c40, 0x24f97, 0x0, 0x217b5, 0x28a49, 0x0, 0x0,
-/* E898 */ 0x0, 0x0, 0x24488, 0x0, 0x0, 0x289fc, 0x0, 0x0,
-/* E8A0 */ 0x218d6, 0x20f1d, 0x0, 0x26cc0, 0x21413, 0x242fa, 0x22c26, 0x243c1,
-/* E8A8 */ 0x0, 0x23db7, 0x26741, 0x0, 0x2615b, 0x260a4, 0x249b9, 0x2498b,
-/* E8B0 */ 0x289fa, 0x0, 0x0, 0x0, 0x0, 0x28b63, 0x2189f, 0x0,
-/* E8B8 */ 0x24ab3, 0x0, 0x0, 0x0, 0x0, 0x24a3e, 0x24a94, 0x217d9,
-/* E8C0 */ 0x24a66, 0x203a7, 0x21424, 0x249e5, 0x0, 0x24916, 0x0, 0x24976,
-/* E8C8 */ 0x0, 0x0, 0x0, 0x204fe, 0x0, 0x28ace, 0x28a16, 0x0,
-/* E8D0 */ 0x28be7, 0x255d5, 0x0, 0x28a82, 0x0, 0x24943, 0x20cff, 0x0,
-/* E8D8 */ 0x2061a, 0x20beb, 0x20cb8, 0x0, 0x0, 0x217fa, 0x0, 0x216c2,
-/* E8E0 */ 0x24a50, 0x21852, 0x0, 0x0, 0x0, 0x28ac0, 0x249ad, 0x0,
-/* E8E8 */ 0x218bf, 0x21883, 0x27484, 0x0, 0x0, 0x23d5b, 0x0, 0x0,
-/* E8F0 */ 0x0, 0x28a81, 0x21862, 0x0, 0x0, 0x20ab4, 0x0, 0x0,
-/* E8F8 */ 0x0, 0x0, 0x0, 0x2139c, 0x0, 0x0, 0x28218, 0x0,
-/* E900 */ 0x290e4, 0x0, 0x0, 0x27e4f, 0x0, 0x0, 0x0, 0x23fed,
-/* E908 */ 0x23e2d, 0x0, 0x0, 0x0, 0x203f5, 0x0, 0x0, 0x0,
-/* E910 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x28c1c,
-/* E918 */ 0x26bc0, 0x0, 0x0, 0x0, 0x21452, 0x0, 0x24362, 0x24a71,
-/* E920 */ 0x22fe3, 0x212b0, 0x223bd, 0x0, 0x0, 0x21398, 0x234e5, 0x27bf4,
-/* E928 */ 0x236df, 0x28a83, 0x237d6, 0x233fa, 0x24c9f, 0x0, 0x236ad, 0x26cb7,
-/* E930 */ 0x0, 0x0, 0x0, 0x26d26, 0x26d51, 0x26c82, 0x26fde, 0x0,
-/* E938 */ 0x27109, 0x0, 0x2173a, 0x0, 0x26c80, 0x27053, 0x217db, 0x0,
-/* E940 */ 0x0, 0x217b3, 0x0, 0x0, 0x21905, 0x241fc, 0x0, 0x0,
-/* E948 */ 0x2173c, 0x0, 0x0, 0x0, 0x0, 0x242a5, 0x0, 0x0,
-/* E950 */ 0x24293, 0x0, 0x23ef9, 0x27736, 0x2445b, 0x242ca, 0x0, 0x24259,
-/* E958 */ 0x289e1, 0x0, 0x26d28, 0x0, 0x244ce, 0x27e4d, 0x243bd, 0x0,
-/* E960 */ 0x24256, 0x21304, 0x0, 0x0, 0x243e9, 0x0, 0x0, 0x2f825,
-/* E968 */ 0x24a4f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24a5d, 0x217df,
-/* E970 */ 0x0, 0x0, 0x0, 0x23afa, 0x23300, 0x20214, 0x0, 0x208d5,
-/* E978 */ 0x20619, 0x0, 0x21f9e, 0x2a2b6, 0x0, 0x2915b, 0x0, 0x0,
-/* E980 */ 0x0, 0x28a59, 0x29420, 0x0, 0x0, 0x0, 0x0, 0x27af4,
-/* E988 */ 0x0, 0x0, 0x256f6, 0x0, 0x0, 0x0, 0x27b18, 0x0,
-/* E990 */ 0x0, 0x248f2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E998 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9B0 */ 0x24f5c, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9C8 */ 0x0, 0x0, 0x0, 0x25535, 0x0, 0x0, 0x0, 0x0,
-/* E9D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x20ccf,
-/* E9F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* E9F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA00 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA08 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA10 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA18 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA20 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA28 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA30 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA38 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA40 */ 0x0, 0x0, 0x0, 0x27967, 0x0, 0x0, 0x0, 0x0,
-/* EA48 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA50 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA58 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA60 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA68 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA70 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA78 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA80 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA88 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA90 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EA98 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAA0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAA8 */ 0x0, 0x21bc2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAB0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EAB8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x20094,
-/* EAC0 */ 0x202b7, 0x203a0, 0x0, 0x0, 0x0, 0x204d7, 0x0, 0x0,
-/* EAC8 */ 0x0, 0x205d5, 0x20615, 0x20676, 0x216ba, 0x0, 0x0, 0x20ac2,
-/* EAD0 */ 0x20acd, 0x20bbf, 0x0, 0x2f83b, 0x20bcb, 0x0, 0x20bfb, 0x20c3b,
-/* EAD8 */ 0x20c53, 0x20c65, 0x20c7c, 0x0, 0x20c8d, 0x0, 0x20cb5, 0x20cdd,
-/* EAE0 */ 0x20ced, 0x20d6f, 0x20db2, 0x20dc8, 0x0, 0x0, 0x0, 0x20e04,
-/* EAE8 */ 0x20e0e, 0x20ed7, 0x20f90, 0x20f2d, 0x20e73, 0x0, 0x20fbc, 0x0,
-/* EAF0 */ 0x2105c, 0x2104f, 0x21076, 0x0, 0x2107b, 0x21088, 0x21096, 0x0,
-/* EAF8 */ 0x210bf, 0x210d3, 0x2112f, 0x2113b, 0x0, 0x0, 0x212e3, 0x21375,
-/* EB00 */ 0x21336, 0x0, 0x21577, 0x21619, 0x217c3, 0x217c7, 0x0, 0x0,
-/* EB08 */ 0x2182d, 0x2196a, 0x21a2d, 0x21a45, 0x21c2a, 0x21c70, 0x21cac, 0x21ec8,
-/* EB10 */ 0x0, 0x21ed5, 0x21f15, 0x0, 0x0, 0x22045, 0x0, 0x0,
-/* EB18 */ 0x2227c, 0x223d7, 0x223fa, 0x2272a, 0x22871, 0x2294f, 0x0, 0x22967,
-/* EB20 */ 0x22993, 0x22ad5, 0x0, 0x22ae8, 0x0, 0x22b0e, 0x0, 0x22b3f,
-/* EB28 */ 0x0, 0x0, 0x22c4c, 0x0, 0x22c88, 0x22cb7, 0x25be8, 0x22d08,
-/* EB30 */ 0x22d12, 0x22db7, 0x22d95, 0x22e42, 0x22f74, 0x22fcc, 0x23033, 0x23066,
-/* EB38 */ 0x2331f, 0x233de, 0x0, 0x0, 0x0, 0x27a79, 0x23567, 0x235f3,
-/* EB40 */ 0x0, 0x249ba, 0x0, 0x2361a, 0x23716, 0x0, 0x20346, 0x0,
-/* EB48 */ 0x0, 0x0, 0x23aa7, 0x27657, 0x25fe2, 0x23e11, 0x23eb9, 0x275fe,
-/* EB50 */ 0x2209a, 0x0, 0x0, 0x24119, 0x28a9a, 0x242ee, 0x2430d, 0x2403b,
-/* EB58 */ 0x24334, 0x24396, 0x24a45, 0x205ca, 0x0, 0x20611, 0x0, 0x21ea8,
-/* EB60 */ 0x0, 0x23cff, 0x24404, 0x244d6, 0x0, 0x24674, 0x0, 0x2472f,
-/* EB68 */ 0x285e8, 0x299c9, 0x0, 0x221c3, 0x0, 0x28b4e, 0x0, 0x24812,
-/* EB70 */ 0x248fb, 0x24a15, 0x0, 0x24ac0, 0x20c78, 0x0, 0x24ea5, 0x24f86,
-/* EB78 */ 0x20779, 0x0, 0x2502c, 0x0, 0x0, 0x0, 0x25299, 0x25419,
-/* EB80 */ 0x23f4a, 0x24aa7, 0x0, 0x25446, 0x2546e, 0x26b52, 0x0, 0x0,
-/* EB88 */ 0x2553f, 0x27632, 0x2555e, 0x0, 0x25562, 0x25566, 0x257c7, 0x2493f,
-/* EB90 */ 0x2585d, 0x0, 0x0, 0x233cc, 0x0, 0x25903, 0x0, 0x28948,
-/* EB98 */ 0x25aae, 0x25b89, 0x25c06, 0x21d90, 0x0, 0x0, 0x0, 0x26102,
-/* EBA0 */ 0x27c12, 0x0, 0x261b2, 0x24f9a, 0x0, 0x26402, 0x2644a, 0x0,
-/* EBA8 */ 0x26bf7, 0x0, 0x26484, 0x2191c, 0x0, 0x249f6, 0x26488, 0x23fef,
-/* EBB0 */ 0x26512, 0x0, 0x265bf, 0x266b5, 0x2271b, 0x0, 0x257e1, 0x0,
-/* EBB8 */ 0x0, 0x2f8cd, 0x0, 0x0, 0x24521, 0x266fc, 0x0, 0x24934,
-/* EBC0 */ 0x0, 0x0, 0x26cbd, 0x0, 0x0, 0x26799, 0x2686e, 0x26411,
-/* EBC8 */ 0x2685e, 0x0, 0x268c7, 0x0, 0x290c0, 0x20a11, 0x26926, 0x0,
-/* EBD0 */ 0x26939, 0x0, 0x0, 0x269fa, 0x0, 0x26a2d, 0x0, 0x26469,
-/* EBD8 */ 0x20021, 0x0, 0x26a34, 0x26b5b, 0x0, 0x23519, 0x0, 0x26b9d,
-/* EBE0 */ 0x0, 0x26ca4, 0x0, 0x0, 0x26dae, 0x0, 0x0, 0x2258d,
-/* EBE8 */ 0x2704b, 0x271cd, 0x0, 0x27280, 0x27285, 0x0, 0x2217a, 0x2728b,
-/* EBF0 */ 0x0, 0x272e6, 0x249d0, 0x0, 0x0, 0x27450, 0x20ef8, 0x0,
-/* EBF8 */ 0x0, 0x22926, 0x28473, 0x217b1, 0x0, 0x24a2a, 0x21820, 0x0,
-/* EC00 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x29cad, 0x298a4, 0x0,
-/* EC08 */ 0x277cc, 0x27858, 0x0, 0x0, 0x2160a, 0x0, 0x2372f, 0x280e8,
-/* EC10 */ 0x213c5, 0x0, 0x0, 0x279dd, 0x291a8, 0x0, 0x0, 0x270af,
-/* EC18 */ 0x289ab, 0x279fd, 0x27a0a, 0x27b0b, 0x27d66, 0x2417a, 0x0, 0x0,
-/* EC20 */ 0x28009, 0x0, 0x2a2df, 0x0, 0x28318, 0x0, 0x26e07, 0x0,
-/* EC28 */ 0x0, 0x0, 0x2816f, 0x28023, 0x269b5, 0x213ed, 0x2322f, 0x28048,
-/* EC30 */ 0x0, 0x28c30, 0x28083, 0x0, 0x0, 0x28949, 0x0, 0x24988,
-/* EC38 */ 0x0, 0x0, 0x0, 0x24aa5, 0x23f81, 0x0, 0x0, 0x28090,
-/* EC40 */ 0x280f4, 0x2812e, 0x21fa1, 0x2814f, 0x28189, 0x281af, 0x2821a, 0x28306,
-/* EC48 */ 0x2832f, 0x2838a, 0x0, 0x28468, 0x286aa, 0x0, 0x0, 0x28956,
-/* EC50 */ 0x0, 0x0, 0x289b8, 0x0, 0x289e7, 0x0, 0x289e8, 0x28b46,
-/* EC58 */ 0x28bd4, 0x0, 0x28c09, 0x0, 0x28fc5, 0x290ec, 0x0, 0x29110,
-/* EC60 */ 0x2913c, 0x0, 0x2915e, 0x24aca, 0x0, 0x0, 0x0, 0x294e7,
-/* EC68 */ 0x295e9, 0x295b0, 0x295b8, 0x29732, 0x298d1, 0x29949, 0x2996a, 0x299c3,
-/* EC70 */ 0x29a28, 0x29b0e, 0x29d5a, 0x29d9b, 0x0, 0x29ef8, 0x29f23, 0x0,
-/* EC78 */ 0x0, 0x2a293, 0x0, 0x2a2ff, 0x0, 0x0, 0x2a5cb, 0x0,
-/* EC80 */ 0x20c9c, 0x0, 0x0, 0x0, 0x224b0, 0x0, 0x24a93, 0x0,
-/* EC88 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x28b2c, 0x2789d, 0x0,
-/* EC90 */ 0x0, 0x217f5, 0x28024, 0x28b6c, 0x28b99, 0x27a3e, 0x266af, 0x0,
-/* EC98 */ 0x27655, 0x23cb7, 0x25635, 0x25956, 0x0, 0x25e81, 0x26258, 0x0,
-/* ECA0 */ 0x20e6d, 0x0, 0x0, 0x23e88, 0x24c9e, 0x0, 0x0, 0x217f6,
-/* ECA8 */ 0x2187b, 0x0, 0x0, 0x25c4a, 0x0, 0x25311, 0x0, 0x29d98,
-/* ECB0 */ 0x0, 0x0, 0x0, 0x0, 0x25ed8, 0x0, 0x23d40, 0x0,
-/* ECB8 */ 0x0, 0x20fea, 0x20d49, 0x236ba, 0x0, 0x0, 0x0, 0x0,
-/* ECC0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECC8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x20e9d,
-/* ECD0 */ 0x0, 0x0, 0x0, 0x0, 0x282e2, 0x0, 0x0, 0x0,
-/* ECD8 */ 0x0, 0x0, 0x0, 0x20c41, 0x20c96, 0x0, 0x25148, 0x20e76,
-/* ECE0 */ 0x22c62, 0x20ea2, 0x0, 0x0, 0x0, 0x21075, 0x0, 0x0,
-/* ECE8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ECF0 */ 0x22b43, 0x0, 0x22eb3, 0x0, 0x0, 0x20da7, 0x0, 0x0,
-/* ECF8 */ 0x0, 0x0, 0x0, 0x0, 0x2688a, 0x0, 0x0, 0x0,
-/* ED00 */ 0x0, 0x0, 0x0, 0x0, 0x210c1, 0x0, 0x0, 0x24706,
-/* ED08 */ 0x0, 0x0, 0x26893, 0x0, 0x226f4, 0x27d2f, 0x241a3, 0x27d73,
-/* ED10 */ 0x26ed0, 0x272b6, 0x0, 0x211d9, 0x0, 0x23cfc, 0x2a6a9, 0x20eac,
-/* ED18 */ 0x20ef9, 0x0, 0x21ca2, 0x0, 0x24fc2, 0x27ff9, 0x20feb, 0x0,
-/* ED20 */ 0x0, 0x0, 0x22da0, 0x0, 0x247e0, 0x29d7c, 0x20fec, 0x20e0a,
-/* ED28 */ 0x0, 0x275a3, 0x20fed, 0x0, 0x26048, 0x21187, 0x0, 0x0,
-/* ED30 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED38 */ 0x0, 0x0, 0x0, 0x24618, 0x0, 0x24b6e, 0x0, 0x0,
-/* ED40 */ 0x0, 0x25a95, 0x20979, 0x0, 0x0, 0x22465, 0x0, 0x29eac,
-/* ED48 */ 0x0, 0x0, 0x23cfe, 0x29f30, 0x0, 0x24fa9, 0x2959e, 0x29fde,
-/* ED50 */ 0x0, 0x23db6, 0x272b2, 0x267b3, 0x23720, 0x0, 0x0, 0x23ef7,
-/* ED58 */ 0x23e2c, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2048e,
-/* ED60 */ 0x0, 0x0, 0x20eb6, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED68 */ 0x0, 0x0, 0x0, 0x2a434, 0x0, 0x0, 0x0, 0x0,
-/* ED70 */ 0x0, 0x230da, 0x243f2, 0x0, 0x0, 0x212a9, 0x0, 0x24963,
-/* ED78 */ 0x29e06, 0x0, 0x270ae, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED80 */ 0x0, 0x2176c, 0x0, 0x0, 0x294d0, 0x26335, 0x27164, 0x0,
-/* ED88 */ 0x20d28, 0x26d22, 0x24ae2, 0x20d71, 0x0, 0x0, 0x21f0f, 0x0,
-/* ED90 */ 0x0, 0x21dd1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* ED98 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDA0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2493e, 0x0,
-/* EDA8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDB0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDB8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDC0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2176d, 0x0,
-/* EDC8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x28e97,
-/* EDD0 */ 0x0, 0x26d23, 0x0, 0x0, 0x0, 0x0, 0x0, 0x203fc,
-/* EDD8 */ 0x0, 0x0, 0x25c21, 0x23cfd, 0x0, 0x24919, 0x0, 0x0,
-/* EDE0 */ 0x0, 0x20cd4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDE8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x201f2, 0x0, 0x0,
-/* EDF0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EDF8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE00 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE08 */ 0x2a64a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE10 */ 0x0, 0x2837d, 0x0, 0x0, 0x0, 0x24a77, 0x0, 0x0,
-/* EE18 */ 0x0, 0x0, 0x0, 0x28a5a, 0x0, 0x0, 0x0, 0x0,
-/* EE20 */ 0x2a2b2, 0x0, 0x2f840, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE28 */ 0x0, 0x0, 0x24abb, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE30 */ 0x2183b, 0x26e05, 0x0, 0x0, 0x2251b, 0x0, 0x0, 0x0,
-/* EE38 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE40 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE48 */ 0x26159, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE50 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x233f5, 0x0,
-/* EE58 */ 0x0, 0x0, 0x0, 0x28bc2, 0x0, 0x28e39, 0x0, 0x0,
-/* EE60 */ 0x21d46, 0x0, 0x0, 0x0, 0x20f3b, 0x0, 0x0, 0x0,
-/* EE68 */ 0x0, 0x0, 0x25f1a, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE70 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x27486, 0x0,
-/* EE78 */ 0x0, 0x0, 0x0, 0x0, 0x267cc, 0x0, 0x26ed1, 0x0,
-/* EE80 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE88 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE90 */ 0x0, 0x24011, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EE98 */ 0x0, 0x0, 0x0, 0x0, 0x28b2d, 0x0, 0x0, 0x0,
-/* EEA0 */ 0x0, 0x0, 0x23cc7, 0x25ed7, 0x27656, 0x25531, 0x21944, 0x212fe,
-/* EEA8 */ 0x29903, 0x26ddc, 0x270ad, 0x0, 0x261ad, 0x28a0f, 0x23677, 0x200ee,
-/* EEB0 */ 0x26846, 0x24f0e, 0x0, 0x0, 0x2634c, 0x0, 0x0, 0x2626b,
-/* EEB8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEC0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEC8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EED0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EED8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEE0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEE8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEF0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EEF8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF00 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF08 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF10 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF18 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF20 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF28 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF30 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF38 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF40 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF48 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF50 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF58 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF60 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF68 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF70 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF78 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF80 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF88 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF90 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EF98 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFA0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFA8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFB0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFB8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFC0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFC8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFD0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFD8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFE0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFE8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFF0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* EFF8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F000 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F008 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F010 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F018 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F020 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F028 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F030 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F038 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F040 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F048 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F050 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F058 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F060 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F068 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F070 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F078 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F080 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F088 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F090 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F098 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F0F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F100 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F108 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F110 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F118 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F120 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F128 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F130 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F138 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F140 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F148 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F150 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F158 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F160 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F168 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F170 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F178 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F180 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F188 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F190 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F198 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F1F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F200 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F208 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F210 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F218 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F220 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F228 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F230 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F238 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F240 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F248 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F250 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F258 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F260 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F268 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F270 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F278 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F280 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F288 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F290 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F298 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F2F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F300 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F308 */ 0x2010c, 0x0, 0x200d1, 0x200cd, 0x0, 0x0, 0x200cb, 0x21fe8,
-/* F310 */ 0x0, 0x200ca, 0x0, 0x0, 0x0, 0x0, 0x2010e, 0x0,
-/* F318 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F320 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F328 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F330 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F338 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F340 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F348 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F350 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F358 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F360 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F368 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F370 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F378 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F380 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F388 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F390 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F398 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3A0 */ 0x2a3a9, 0x21145, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3A8 */ 0x0, 0x0, 0x0, 0x0, 0x27735, 0x0, 0x0, 0x0,
-/* F3B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3F0 */ 0x209e7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F3F8 */ 0x0, 0x29df6, 0x2700e, 0x0, 0x2a133, 0x0, 0x0, 0x0,
-/* F400 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F408 */ 0x2846c, 0x21dca, 0x205d0, 0x22ae6, 0x0, 0x0, 0x0, 0x0,
-/* F410 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F418 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F420 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F428 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F430 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F438 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x27d84, 0x0, 0x0,
-/* F440 */ 0x20c42, 0x20d15, 0x2512b, 0x0, 0x22cc6, 0x0, 0x20341, 0x0,
-/* F448 */ 0x24db8, 0x294e5, 0x0, 0x280be, 0x0, 0x22c38, 0x0, 0x0,
-/* F450 */ 0x2815d, 0x269f2, 0x24dea, 0x0, 0x20d7c, 0x20fb4, 0x20cd5, 0x210f4,
-/* F458 */ 0x0, 0x0, 0x20e96, 0x20c0b, 0x20f64, 0x22ca9, 0x28256, 0x244d3,
-/* F460 */ 0x0, 0x20d46, 0x29a4d, 0x280e9, 0x0, 0x24ea7, 0x22cc2, 0x0,
-/* F468 */ 0x0, 0x295f4, 0x0, 0x0, 0x252c7, 0x297d4, 0x278c8, 0x22d44,
-/* F470 */ 0x0, 0x0, 0x0, 0x0, 0x260a5, 0x0, 0x0, 0x22d4c,
-/* F478 */ 0x22bca, 0x21077, 0x0, 0x2106f, 0x266da, 0x26716, 0x279a0, 0x0,
-/* F480 */ 0x25052, 0x20c43, 0x0, 0x221a1, 0x28b4c, 0x20731, 0x0, 0x0,
-/* F488 */ 0x201a9, 0x0, 0x0, 0x22d8d, 0x0, 0x245c8, 0x204fc, 0x26097,
-/* F490 */ 0x20f4c, 0x20d96, 0x0, 0x0, 0x0, 0x0, 0x0, 0x22a66,
-/* F498 */ 0x2109d, 0x0, 0x0, 0x20d9c, 0x0, 0x0, 0x22775, 0x0,
-/* F4A0 */ 0x0, 0x0, 0x0, 0x0, 0x2a601, 0x20e09, 0x22acf, 0x22cc9,
-/* F4A8 */ 0x0, 0x210c8, 0x239c2, 0x0, 0x0, 0x2829b, 0x0, 0x25e49,
-/* F4B0 */ 0x220c7, 0x0, 0x20f31, 0x22cb2, 0x29720, 0x0, 0x0, 0x24e3b,
-/* F4B8 */ 0x0, 0x0, 0x27574, 0x22e8b, 0x22208, 0x2a65b, 0x28ccd, 0x20e7a,
-/* F4C0 */ 0x20c34, 0x2681c, 0x0, 0x210cf, 0x22803, 0x22939, 0x0, 0x251e3,
-/* F4C8 */ 0x20e8c, 0x20f8d, 0x20eaa, 0x0, 0x20f30, 0x20d47, 0x2114f, 0x20e4c,
-/* F4D0 */ 0x0, 0x20eab, 0x20ba9, 0x20d48, 0x210c0, 0x2113d, 0x0, 0x22696,
-/* F4D8 */ 0x0, 0x20fad, 0x233f4, 0x27639, 0x22bce, 0x20d7e, 0x20d7f, 0x22c51,
-/* F4E0 */ 0x22c55, 0x0, 0x20e98, 0x210c7, 0x20f2e, 0x2a632, 0x26b50, 0x28cd2,
-/* F4E8 */ 0x28d99, 0x28cca, 0x0, 0x0, 0x0, 0x0, 0x0, 0x29ec3,
-/* F4F0 */ 0x0, 0x0, 0x2775e, 0x22dee, 0x0, 0x0, 0x0, 0x0,
-/* F4F8 */ 0x26572, 0x0, 0x0, 0x0, 0x280bd, 0x0, 0x20efa, 0x20e0f,
-/* F500 */ 0x20e77, 0x20efb, 0x0, 0x24deb, 0x0, 0x20cd6, 0x0, 0x227b5,
-/* F508 */ 0x210c9, 0x20e10, 0x20e78, 0x21078, 0x21148, 0x28207, 0x21455, 0x20e79,
-/* F510 */ 0x24e50, 0x22da4, 0x0, 0x2101d, 0x2101e, 0x210f5, 0x210f6, 0x0,
-/* F518 */ 0x20e11, 0x27694, 0x282cd, 0x20fb5, 0x20e7b, 0x2517e, 0x0, 0x20fb6,
-/* F520 */ 0x21180, 0x252d8, 0x2a2bd, 0x249da, 0x2183a, 0x24177, 0x2827c, 0x0,
-/* F528 */ 0x0, 0x0, 0x2573d, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F530 */ 0x0, 0x0, 0x0, 0x25b74, 0x2313d, 0x0, 0x0, 0x0,
-/* F538 */ 0x0, 0x0, 0x21bc1, 0x2f878, 0x0, 0x20086, 0x0, 0x0,
-/* F540 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F548 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x248e9, 0x0,
-/* F550 */ 0x0, 0x0, 0x0, 0x2626a, 0x0, 0x0, 0x2634b, 0x0,
-/* F558 */ 0x0, 0x26612, 0x26951, 0x0, 0x0, 0x0, 0x278b2, 0x0,
-/* F560 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x28e0f, 0x0, 0x0,
-/* F568 */ 0x0, 0x0, 0x0, 0x29810, 0x0, 0x0, 0x0, 0x0,
-/* F570 */ 0x0, 0x0, 0x20087, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F578 */ 0x0, 0x29c73, 0x0, 0x0, 0x0, 0x2414e, 0x0, 0x0,
-/* F580 */ 0x0, 0x251cd, 0x0, 0x25d30, 0x0, 0x28a32, 0x0, 0x0,
-/* F588 */ 0x0, 0x0, 0x0, 0x23281, 0x2a107, 0x0, 0x21980, 0x0,
-/* F590 */ 0x0, 0x0, 0x0, 0x2870f, 0x0, 0x0, 0x2a2ba, 0x0,
-/* F598 */ 0x0, 0x0, 0x0, 0x29947, 0x28aea, 0x0, 0x0, 0x0,
-/* F5A0 */ 0x2207e, 0x0, 0x0, 0x289e3, 0x0, 0x0, 0x0, 0x0,
-/* F5A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5B0 */ 0x21db6, 0x0, 0x0, 0x0, 0x22712, 0x0, 0x233f9, 0x0,
-/* F5B8 */ 0x0, 0x23c63, 0x0, 0x0, 0x0, 0x24505, 0x0, 0x0,
-/* F5C0 */ 0x24a13, 0x0, 0x0, 0x0, 0x25ca4, 0x25695, 0x0, 0x0,
-/* F5C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x28db9, 0x2143f,
-/* F5D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5E0 */ 0x0, 0x0, 0x0, 0x0, 0x2497b, 0x0, 0x2710d, 0x0,
-/* F5E8 */ 0x26d74, 0x0, 0x26b15, 0x26fbe, 0x0, 0x0, 0x0, 0x0,
-/* F5F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F5F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F600 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F608 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F610 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F618 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F620 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F628 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F630 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F638 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F640 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F648 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F650 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F658 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F660 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F668 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F670 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F678 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F680 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F688 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F690 */ 0x0, 0x0, 0x0, 0x0, 0x289c0, 0x0, 0x0, 0x0,
-/* F698 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x23f41, 0x0,
-/* F6A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x20325, 0x0, 0x0,
-/* F6B0 */ 0x20ed8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F6F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F700 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F708 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F710 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F718 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F720 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F728 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F730 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F738 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F740 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F748 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F750 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F758 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F760 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F768 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F770 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F778 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F780 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F788 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F790 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F798 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x200cc, 0x0,
-/* F7E8 */ 0x2008a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x27607, 0x0,
-/* F7F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F7F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F800 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F808 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F810 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F818 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F820 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F828 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F830 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F838 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F840 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F848 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F850 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F858 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F860 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F868 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F870 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F878 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F880 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F888 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F890 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F898 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8A0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8A8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8B0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8B8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8C0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8C8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8D0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8D8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8E0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8E8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8F0 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
-/* F8F8 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
-};
-
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/sd.h b/dviware/dvisvgm/libs/ff-woff/fontforge/sd.h
deleted file mode 100644
index 9e9bd56c1d..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/sd.h
+++ /dev/null
@@ -1,168 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _SD_H
-#define _SD_H
-# include <gimage.h>
-
-/* All coordinates are in millimeters */
-/* they will be displayed to the user scaled by the units field of the design */
-
-#include "splinefont.h"
-
-struct epattern {
- struct entity *tile;
- real width, height;
- DBounds bbox;
- real transform[6];
-};
-
-typedef struct entpen {
- Color col;
- struct gradient *grad;
- struct epattern *tile;
- float scale;
- float opacity;
-} Pen;
-
-typedef struct textunit {
- unichar_t *text;
- SplineFont *sf;
- float size; /* in points */
- float kernafter;
- Pen fill;
- struct textunit *next;
-} TextUnit;
-
-struct filledsplines {
- SplineSet *splines;
- unsigned int isfillable: 1; /* All splinesets are closed */
- Pen fill, stroke; /* A value of 0xffffffff means do not fill or stroke */
- float stroke_width;
- enum linejoin join;
- enum linecap cap;
- real transform[6]; /* The stroke may be quite different depending on the transformation (ie. ellipse not circle, rotated, etc) */
-};
-
-struct text {
- TextUnit *text;
- real transform[6];
- struct entity *bound;
-};
-
-struct image {
- GImage *image;
- real transform[6];
- Color col; /* that gets poured into imagemasks */
-};
-
-struct group {
- struct entity *group;
-};
-
-enum entity_type { et_splines, et_text, et_image, et_group };
-
-typedef struct entity {
- enum entity_type type;
- union {
- struct filledsplines splines;
- struct text text;
- struct image image;
- struct group group;
- } u;
- SplineSet *clippath;
- DBounds bb;
- struct entity *next;
-} Entity;
-
-typedef struct entlayer {
- Entity *entities;
- char *name;
- unsigned int isvisible: 1;
-} EntLayer;
-
-typedef struct tile {
- Entity *tile;
- struct tileinstance { real scale; struct gwindow *pixmap; struct tileinstance *next; }
- *instances;
- char *name;
-} Tile;
-
-typedef struct splinedesign {
- int lcnt, lmax, active;
- EntLayer *layers;
-
- real width, height; /* in millimeters */
- int16 hpages, vpages;
- real pwidth, pheight; /* in millimeters */
- real units; /* if user wants to see things in */
- /* centimeters then units will be 10, if inches then 25.4, if points */
- /* then 25.4/72, if 1/1200" then 25.4/1200, etc. */
- struct dview *dvs;
-} SplineDesign, Design;
-
-/* Used for type3 fonts briefly */
-/* This is not a "real" structure. It is a temporary hack that encompasses */
-/* various possibilities, the combination of which won't occur in reality */
-typedef struct entitychar {
- Entity *splines;
- RefChar *refs;
- int width, vwidth;
- SplineChar *sc;
- uint8 fromtype3;
-} EntityChar;
-
-extern SplinePointList *SplinesFromEntityChar(EntityChar *ec,int *flags,int is_stroked);
-
-struct pskeydict {
- int16 cnt, max;
- uint8 is_executable;
- struct pskeyval *entries;
-};
-
-enum pstype { ps_void, ps_num, ps_bool, ps_string, ps_instr, ps_lit,
- ps_mark, ps_array, ps_dict };
-
-union vals {
- real val;
- int tf;
- char *str;
- struct pskeydict dict; /* and for arrays too */
-};
-
-struct pskeyval {
- enum pstype type;
- union vals u;
- char *key;
-};
-
-typedef struct retstack {
- int max;
- int cnt;
- real *stack;
-} RetStack;
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/sfd.c b/dviware/dvisvgm/libs/ff-woff/fontforge/sfd.c
deleted file mode 100644
index 1f6ca428f9..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/sfd.c
+++ /dev/null
@@ -1,4669 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include <utype.h>
-#include <sys/stat.h>
-
-#ifndef NAME_MAX
-# ifndef _POSIX_NAME_MAX
-# define _POSIX_NAME_MAX 512
-# endif
-# define NAME_MAX _POSIX_NAME_MAX
-#endif
-
-static const char *joins[] = { "miter", "round", "bevel", "inher", NULL };
-static const char *caps[] = { "butt", "round", "square", "inher", NULL };
-static const char *spreads[] = { "pad", "reflect", "repeat", NULL };
-
-#define SFD_PTFLAG_TYPE_MASK 0x3
-#define SFD_PTFLAG_IS_SELECTED 0x4
-#define SFD_PTFLAG_NEXTCP_IS_DEFAULT 0x8
-#define SFD_PTFLAG_PREVCP_IS_DEFAULT 0x10
-#define SFD_PTFLAG_ROUND_IN_X 0x20
-#define SFD_PTFLAG_ROUND_IN_Y 0x40
-#define SFD_PTFLAG_INTERPOLATE 0x80
-#define SFD_PTFLAG_INTERPOLATE_NEVER 0x100
-#define SFD_PTFLAG_PREV_EXTREMA_MARKED_ACCEPTABLE 0x200
-#define SFD_PTFLAG_FORCE_OPEN_PATH 0x400
-
-
-
-
-/* I will retain this list in case there are still some really old sfd files */
-/* including numeric encodings. This table maps them to string encodings */
-static const char *charset_names[] = {
- "custom",
- "iso8859-1", "iso8859-2", "iso8859-3", "iso8859-4", "iso8859-5",
- "iso8859-6", "iso8859-7", "iso8859-8", "iso8859-9", "iso8859-10",
- "iso8859-11", "iso8859-13", "iso8859-14", "iso8859-15",
- "koi8-r",
- "jis201",
- "win", "mac", "symbol", "zapfding", "adobestandard",
- "jis208", "jis212", "ksc5601", "gb2312", "big5", "big5hkscs", "johab",
- "unicode", "unicode4", "sjis", "wansung", "gb2312pk", NULL};
-
-static const char *unicode_interp_names[] = { "none", "adobe", "greek",
- "japanese", "tradchinese", "simpchinese", "korean", "ams", NULL };
-
-/* sfdir files and extensions */
-#define FONT_PROPS "font.props"
-#define STRIKE_PROPS "strike.props"
-#define EXT_CHAR '.'
-#define GLYPH_EXT ".glyph"
-#define BITMAP_EXT ".bitmap"
-#define STRIKE_EXT ".strike"
-#define SUBFONT_EXT ".subfont"
-#define INSTANCE_EXT ".instance"
-
-signed char inbase64[256] = {
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, -1, 63,
- 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, -1, -1, -1, -1, -1, -1,
- -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
- 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, -1,
- -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
- 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1
-};
-
-static const char *end_tt_instrs = "EndTTInstrs";
-static RefChar *SFDGetRef(FILE *sfd, int was_enc);
-static AnchorPoint *SFDReadAnchorPoints(FILE *sfd,SplineChar *sc,AnchorPoint** alist, AnchorPoint *lastap);
-static StemInfo *SFDReadHints(FILE *sfd);
-static DStemInfo *SFDReadDHints( SplineFont *sf,FILE *sfd,int old );
-extern uint8 *_IVParse(SplineFont *sf, char *text, int *len, void (*IVError)(void *,char *, int), void *iv);
-
-static int PeekMatch(FILE *stream, const char * target) {
- // This returns 1 if target matches the next characters in the stream.
- int pos1 = 0;
- int lastread = getc(stream);
- while (target[pos1] != '\0' && lastread != EOF && lastread == target[pos1]) {
- pos1 ++; lastread = getc(stream);
- }
-
- int rewind_amount = pos1 + ((lastread == EOF) ? 0 : 1);
- fseek(stream, -rewind_amount, SEEK_CUR);
- return (target[pos1] == '\0');
-}
-
-/* Long lines can be broken by inserting \\\n (backslash newline) */
-/* into the line. I don't think this is ever ambiguous as I don't */
-/* think a line can end with backslash */
-/* UPDATE: it can... that's handled in getquotedeol() below. */
-static int nlgetc(FILE *sfd) {
- int ch, ch2;
-
- ch=getc(sfd);
- if ( ch!='\\' )
-return( ch );
- ch2 = getc(sfd);
- if ( ch2=='\n' )
-return( nlgetc(sfd));
- ungetc(ch2,sfd);
-return( ch );
-}
-
-static char *SFDReadUTF7Str(FILE *sfd) {
- char *buffer = NULL, *pt, *end = NULL;
- int ch1, ch2, ch3, ch4, done, c;
- int prev_cnt=0, prev=0, in=0;
-
- ch1 = nlgetc(sfd);
- while ( isspace(ch1) && ch1!='\n' && ch1!='\r') ch1 = nlgetc(sfd);
- if ( ch1=='\n' || ch1=='\r' )
- ungetc(ch1,sfd);
- if ( ch1!='"' )
-return( NULL );
- pt = 0;
- while ( (ch1=nlgetc(sfd))!=EOF && ch1!='"' ) {
- done = 0;
- if ( !done && !in ) {
- if ( ch1=='+' ) {
- ch1 = nlgetc(sfd);
- if ( ch1=='-' ) {
- ch1 = '+';
- done = true;
- } else {
- in = true;
- prev_cnt = 0;
- }
- } else
- done = true;
- }
- if ( !done ) {
- if ( ch1=='-' ) {
- in = false;
- } else if ( inbase64[ch1]==-1 ) {
- in = false;
- done = true;
- } else {
- ch1 = inbase64[ch1];
- ch2 = inbase64[c = nlgetc(sfd)];
- if ( ch2==-1 ) {
- ungetc(c, sfd);
- ch2 = ch3 = ch4 = 0;
- } else {
- ch3 = inbase64[c = nlgetc(sfd)];
- if ( ch3==-1 ) {
- ungetc(c, sfd);
- ch3 = ch4 = 0;
- } else {
- ch4 = inbase64[c = nlgetc(sfd)];
- if ( ch4==-1 ) {
- ungetc(c, sfd);
- ch4 = 0;
- }
- }
- }
- ch1 = (ch1<<18) | (ch2<<12) | (ch3<<6) | ch4;
- if ( prev_cnt==0 ) {
- prev = ch1&0xff;
- ch1 >>= 8;
- prev_cnt = 1;
- } else /* if ( prev_cnt == 1 ) */ {
- ch1 |= (prev<<24);
- prev = (ch1&0xffff);
- ch1 = (ch1>>16)&0xffff;
- prev_cnt = 2;
- }
- done = true;
- }
- }
- if ( pt+10>=end ) {
- if ( buffer==NULL ) {
- pt = buffer = malloc(400);
- end = buffer+400;
- } else if (pt) {
- char *temp = realloc(buffer,end-buffer+400);
- pt = temp+(pt-buffer);
- end = temp+(end-buffer+400);
- buffer = temp;
- }
- }
- if ( pt && done )
- pt = utf8_idpb(pt,ch1,0);
- if ( prev_cnt==2 ) {
- prev_cnt = 0;
- if ( pt && prev!=0 )
- pt = utf8_idpb(pt,prev,0);
- }
- if ( pt==0 ) {
- free(buffer);
- return( NULL );
- }
- }
- if ( buffer==NULL )
-return( NULL );
- *pt = '\0';
- pt = copy(buffer);
- free(buffer );
-return( pt );
-}
-
-struct enc85 {
- FILE *sfd;
- unsigned char sofar[4];
- int pos;
- int ccnt;
-};
-
-static void *SFDUnPickle(FILE *sfd, int python_data_has_lists) {
- int ch, quoted;
- static int max = 0;
- static char *buf = NULL;
- char *pt, *end;
- int cnt;
-
- pt = buf; end = buf+max;
- while ( (ch=nlgetc(sfd))!='"' && ch!='\n' && ch!=EOF );
- if ( ch!='"' )
-return( NULL );
-
- quoted = false;
- while ( ((ch=nlgetc(sfd))!='"' || quoted) && ch!=EOF ) {
- if ( !quoted && ch=='\\' )
- quoted = true;
- else {
- if ( pt>=end ) {
- cnt = pt-buf;
- buf = realloc(buf,(max+=200)+1);
- pt = buf+cnt;
- end = buf+max;
- }
- *pt++ = ch;
- quoted = false;
- }
- }
- if ( pt==buf )
-return( NULL );
- *pt='\0';
-#ifdef _NO_PYTHON
-return( copy(buf));
-#else
-return( PyFF_UnPickleMeToObjects(buf));
-#endif
- /* buf is a static buffer, I don't free it, I'll reuse it next time */
-}
-
-/* ********************************* INPUT ********************************** */
-#include "sfd1.h"
-
-char *getquotedeol(FILE *sfd) {
- char *pt, *str, *end;
- int ch;
-
- pt = str = malloc(101); end = str+100;
- while ( isspace(ch = nlgetc(sfd)) && ch!='\r' && ch!='\n' );
- while ( ch!='\n' && ch!='\r' && ch!=EOF ) {
- if ( ch=='\\' ) {
- /* We can't use nlgetc() here, because it would misinterpret */
- /* double backslash at the end of line. Multiline strings, */
- /* broken with backslash + newline, are just handled above. */
- ch = getc(sfd);
- if ( ch=='n' ) ch='\n';
- /* else if ( ch=='\\' ) ch=='\\'; */ /* second backslash of '\\' */
-
- /* FontForge doesn't write other escape sequences in this context. */
- /* So any other value of ch is assumed impossible. */
- }
- if ( pt>=end ) {
- pt = realloc(str,end-str+101);
- end = pt+(end-str)+100;
- str = pt;
- pt = end-100;
- }
- *pt++ = ch;
- ch = nlgetc(sfd);
- }
- *pt='\0';
- /* these strings should be in utf8 now, but some old sfd files might have */
- /* latin1. Not a severe problems because they SHOULD be in ASCII. So any */
- /* non-ascii strings are erroneous anyway */
- if ( !utf8_valid(str) ) {
- pt = latin1_2_utf8_copy(str);
- free(str);
- str = pt;
- }
-return( str );
-}
-
-static int geteol(FILE *sfd, char *tokbuf) {
- char *pt=tokbuf, *end = tokbuf+2000-2; int ch;
-
- while ( isspace(ch = nlgetc(sfd)) && ch!='\r' && ch!='\n' );
- while ( ch!='\n' && ch!='\r' && ch!=EOF ) {
- if ( pt<end ) *pt++ = ch;
- ch = nlgetc(sfd);
- }
- *pt='\0';
-return( pt!=tokbuf?1:ch==EOF?-1: 0 );
-}
-
-static int getprotectedname(FILE *sfd, char *tokbuf) {
- char *pt=tokbuf, *end = tokbuf+100-2; int ch;
-
- while ( (ch = nlgetc(sfd))==' ' || ch=='\t' );
- while ( ch!=EOF && !isspace(ch) && ch!='[' && ch!=']' && ch!='{' && ch!='}' && ch!='<' && ch!='%' ) {
- if ( pt<end ) *pt++ = ch;
- ch = nlgetc(sfd);
- }
- if ( pt==tokbuf && ch!=EOF )
- *pt++ = ch;
- else
- ungetc(ch,sfd);
- *pt='\0';
-return( pt!=tokbuf?1:ch==EOF?-1: 0 );
-}
-
-int getname(FILE *sfd, char *tokbuf) {
- int ch;
-
- while ( isspace(ch = nlgetc(sfd)));
- ungetc(ch,sfd);
-return( getprotectedname(sfd,tokbuf));
-}
-
-static uint32 gettag(FILE *sfd) {
- int ch, quoted;
- uint32 tag;
-
- while ( (ch=nlgetc(sfd))==' ' );
- if ( (quoted = (ch=='\'')) ) ch = nlgetc(sfd);
- tag = (ch<<24)|(nlgetc(sfd)<<16);
- tag |= nlgetc(sfd)<<8;
- tag |= nlgetc(sfd);
- if ( quoted ) (void) nlgetc(sfd);
-return( tag );
-}
-
-static int getint(FILE *sfd, int *val) {
- char tokbuf[100]; int ch;
- char *pt=tokbuf, *end = tokbuf+100-2;
-
- while ( isspace(ch = nlgetc(sfd)));
- if ( ch=='-' || ch=='+' ) {
- *pt++ = ch;
- ch = nlgetc(sfd);
- }
- while ( isdigit(ch)) {
- if ( pt<end ) *pt++ = ch;
- ch = nlgetc(sfd);
- }
- *pt='\0';
- ungetc(ch,sfd);
- *val = strtol(tokbuf,NULL,10);
-return( pt!=tokbuf?1:ch==EOF?-1: 0 );
-}
-
-static int getlonglong(FILE *sfd, long long *val) {
- char tokbuf[100]; int ch;
- char *pt=tokbuf, *end = tokbuf+100-2;
-
- while ( isspace(ch = nlgetc(sfd)));
- if ( ch=='-' || ch=='+' ) {
- *pt++ = ch;
- ch = nlgetc(sfd);
- }
- while ( isdigit(ch)) {
- if ( pt<end ) *pt++ = ch;
- ch = nlgetc(sfd);
- }
- *pt='\0';
- ungetc(ch,sfd);
- *val = strtoll(tokbuf,NULL,10);
-return( pt!=tokbuf?1:ch==EOF?-1: 0 );
-}
-
-static int gethex(FILE *sfd, uint32 *val) {
- char tokbuf[100]; int ch;
- char *pt=tokbuf, *end = tokbuf+100-2;
-
- while ( isspace(ch = nlgetc(sfd)));
- if ( ch=='#' )
- ch = nlgetc(sfd);
- if ( ch=='-' || ch=='+' ) {
- *pt++ = ch;
- ch = nlgetc(sfd);
- }
- if ( ch=='0' ) {
- ch = nlgetc(sfd);
- if ( ch=='x' || ch=='X' )
- ch = nlgetc(sfd);
- else {
- ungetc(ch,sfd);
- ch = '0';
- }
- }
- while ( isdigit(ch) || (ch>='a' && ch<='f') || (ch>='A' && ch<='F')) {
- if ( pt<end ) *pt++ = ch;
- ch = nlgetc(sfd);
- }
- *pt='\0';
- ungetc(ch,sfd);
- *val = strtoul(tokbuf,NULL,16);
-return( pt!=tokbuf?1:ch==EOF?-1: 0 );
-}
-
-static int gethexints(FILE *sfd, uint32 *val, int cnt) {
- int i, ch;
-
- for ( i=0; i<cnt; ++i ) {
- if ( i!=0 ) {
- ch = nlgetc(sfd);
- if ( ch!='.' ) ungetc(ch,sfd);
- }
- if ( !gethex(sfd,&val[i]))
-return( false );
- }
-return( true );
-}
-
-static int getsint(FILE *sfd, int16 *val) {
- int val2;
- int ret = getint(sfd,&val2);
- *val = val2;
-return( ret );
-}
-
-static int getusint(FILE *sfd, uint16 *val) {
- int val2;
- int ret = getint(sfd,&val2);
- *val = val2;
-return( ret );
-}
-
-static int getreal(FILE *sfd, real *val) {
- char tokbuf[100];
- int ch;
- char *pt=tokbuf, *end = tokbuf+100-2, *nend;
-
- while ( isspace(ch = nlgetc(sfd)));
- if ( ch!='e' && ch!='E' ) /* real's can't begin with exponants */
- while ( isdigit(ch) || ch=='-' || ch=='+' || ch=='e' || ch=='E' || ch=='.' || ch==',' ) {
- if ( pt<end ) *pt++ = ch;
- ch = nlgetc(sfd);
- }
- *pt='\0';
- ungetc(ch,sfd);
- *val = strtod(tokbuf,&nend);
- /* Beware of different locals! */
- if ( *nend!='\0' ) {
- if ( *nend=='.' )
- *nend = ',';
- else if ( *nend==',' )
- *nend = '.';
- *val = strtod(tokbuf,&nend);
- }
-return( pt!=tokbuf && *nend=='\0'?1:ch==EOF?-1: 0 );
-}
-
-/* Don't use nlgetc here. We carefully control newlines when dumping in 85 */
-/* but backslashes can occur at end of line. */
-static int Dec85(struct enc85 *dec) {
- int ch1, ch2, ch3, ch4, ch5;
- unsigned int val;
-
- if ( dec->pos<0 ) {
- while ( isspace(ch1=getc(dec->sfd)));
- if ( ch1=='z' ) {
- dec->sofar[0] = dec->sofar[1] = dec->sofar[2] = dec->sofar[3] = 0;
- dec->pos = 3;
- } else {
- while ( isspace(ch2=getc(dec->sfd)));
- while ( isspace(ch3=getc(dec->sfd)));
- while ( isspace(ch4=getc(dec->sfd)));
- while ( isspace(ch5=getc(dec->sfd)));
- val = ((((ch1-'!')*85+ ch2-'!')*85 + ch3-'!')*85 + ch4-'!')*85 + ch5-'!';
- dec->sofar[3] = val>>24;
- dec->sofar[2] = val>>16;
- dec->sofar[1] = val>>8;
- dec->sofar[0] = val;
- dec->pos = 3;
- }
- }
-return( dec->sofar[dec->pos--] );
-}
-
-static void SFDGetType1(FILE *sfd) {
- /* We've read the OrigType1 token (this is now obselete, but parse it in case there are any old sfds) */
- int len;
- struct enc85 dec;
-
- memset(&dec,'\0', sizeof(dec)); dec.pos = -1;
- dec.sfd = sfd;
-
- getint(sfd,&len);
- while ( --len >= 0 )
- Dec85(&dec);
-}
-
-static void SFDGetTtfInstrs(FILE *sfd, SplineChar *sc) {
- /* We've read the TtfInstr token, it is followed by a byte count */
- /* and then the instructions in enc85 format */
- int i,len;
- struct enc85 dec;
-
- memset(&dec,'\0', sizeof(dec)); dec.pos = -1;
- dec.sfd = sfd;
-
- getint(sfd,&len);
- sc->ttf_instrs = malloc(len);
- sc->ttf_instrs_len = len;
- for ( i=0; i<len; ++i )
- sc->ttf_instrs[i] = Dec85(&dec);
-}
-
-static void tterr(void *UNUSED(rubbish), char *message, int UNUSED(pos)) {
- LogError(_("When loading tt instrs from sfd: %s\n"), message );
-}
-
-static void SFDGetTtInstrs(FILE *sfd, SplineChar *sc) {
- /* We've read the TtInstr token, it is followed by text versions of */
- /* the instructions, slurp it all into a big buffer, and then parse that */
- char *buf=NULL, *pt=buf, *end=buf;
- int ch;
- int backlen = strlen(end_tt_instrs);
- int instr_len;
-
- while ( (ch=nlgetc(sfd))!=EOF ) {
- if ( pt>=end ) {
- char *newbuf = realloc(buf,(end-buf+200));
- pt = newbuf+(pt-buf);
- end = newbuf+(end+200-buf);
- buf = newbuf;
- }
- *pt++ = ch;
- if ( pt-buf>backlen && strncmp(pt-backlen,end_tt_instrs,backlen)==0 ) {
- pt -= backlen;
- break;
- }
- }
- *pt = '\0';
-
- sc->ttf_instrs = _IVParse(sc->parent,buf,&instr_len,tterr,NULL);
- sc->ttf_instrs_len = instr_len;
-
- free(buf);
-}
-
-static struct ttf_table *SFDGetTtfTable(FILE *sfd, SplineFont *sf,struct ttf_table *lasttab[2]) {
- /* We've read the TtfTable token, it is followed by a tag and a byte count */
- /* and then the instructions in enc85 format */
- int i,len;
- int which;
- struct enc85 dec;
- struct ttf_table *tab = chunkalloc(sizeof(struct ttf_table));
-
- memset(&dec,'\0', sizeof(dec)); dec.pos = -1;
- dec.sfd = sfd;
-
- tab->tag = gettag(sfd);
-
- if ( tab->tag==CHR('f','p','g','m') || tab->tag==CHR('p','r','e','p') ||
- tab->tag==CHR('c','v','t',' ') || tab->tag==CHR('m','a','x','p'))
- which = 0;
- else
- which = 1;
-
- getint(sfd,&len);
- tab->data = malloc(len);
- tab->len = len;
- for ( i=0; i<len; ++i )
- tab->data[i] = Dec85(&dec);
-
- if ( lasttab[which]!=NULL )
- lasttab[which]->next = tab;
- else if ( which==0 )
- sf->ttf_tables = tab;
- else
- sf->ttf_tab_saved = tab;
- lasttab[which] = tab;
-return( tab );
-}
-
-static struct ttf_table *SFDGetShortTable(FILE *sfd, SplineFont *sf,struct ttf_table *lasttab[2]) {
- /* We've read the ShortTable token, it is followed by a tag and a word count */
- /* and then the (text) values of the words that make up the cvt table */
- int i,len, ch;
- uint8 *pt;
- int which, iscvt, started;
- struct ttf_table *tab = chunkalloc(sizeof(struct ttf_table));
-
- tab->tag = gettag(sfd);
-
- if ( tab->tag==CHR('f','p','g','m') || tab->tag==CHR('p','r','e','p') ||
- tab->tag==CHR('c','v','t',' ') || tab->tag==CHR('m','a','x','p'))
- which = 0;
- else
- which = 1;
- iscvt = tab->tag==CHR('c','v','t',' ');
-
- getint(sfd,&len);
- pt = tab->data = malloc(2*len);
- tab->len = 2*len;
- started = false;
- for ( i=0; i<len; ++i ) {
- int num;
- getint(sfd,&num);
- *pt++ = num>>8;
- *pt++ = num&0xff;
- if ( iscvt ) {
- ch = nlgetc(sfd);
- if ( ch==' ' ) {
- if ( !started ) {
- sf->cvt_names = calloc(len+1,sizeof(char *));
- sf->cvt_names[len] = END_CVT_NAMES;
- started = true;
- }
- sf->cvt_names[i] = SFDReadUTF7Str(sfd);
- } else
- ungetc(ch,sfd);
- }
- }
-
- if ( lasttab[which]!=NULL )
- lasttab[which]->next = tab;
- else if ( which==0 )
- sf->ttf_tables = tab;
- else
- sf->ttf_tab_saved = tab;
- lasttab[which] = tab;
-return( tab );
-}
-
-static struct ttf_table *SFDGetTtTable(FILE *sfd, SplineFont *sf,struct ttf_table *lasttab[2]) {
- /* We've read the TtTable token, it is followed by a tag */
- /* and then the instructions in text format */
- int ch;
- int which;
- struct ttf_table *tab = chunkalloc(sizeof(struct ttf_table));
- char *buf=NULL, *pt=buf, *end=buf;
- int backlen = strlen(end_tt_instrs);
-
- tab->tag = gettag(sfd);
-
- if ( tab->tag==CHR('f','p','g','m') || tab->tag==CHR('p','r','e','p') ||
- tab->tag==CHR('c','v','t',' ') || tab->tag==CHR('m','a','x','p'))
- which = 0;
- else
- which = 1;
-
- while ( (ch=nlgetc(sfd))!=EOF ) {
- if ( pt>=end ) {
- char *newbuf = realloc(buf,(end-buf+200));
- pt = newbuf+(pt-buf);
- end = newbuf+(end+200-buf);
- buf = newbuf;
- }
- *pt++ = ch;
- if ( pt-buf>backlen && strncmp(pt-backlen,end_tt_instrs,backlen)==0 ) {
- pt -= backlen;
- break;
- }
- }
- *pt = '\0';
- tab->data = _IVParse(sf,buf,(int*)&tab->len,tterr,NULL);
- free(buf);
-
- if ( lasttab[which]!=NULL )
- lasttab[which]->next = tab;
- else if ( which==0 )
- sf->ttf_tables = tab;
- else
- sf->ttf_tab_saved = tab;
- lasttab[which] = tab;
-return( tab );
-}
-
-static int SFDCloseCheck(SplinePointList *spl,int order2) {
- if ( spl->first!=spl->last &&
- RealNear(spl->first->me.x,spl->last->me.x) &&
- RealNear(spl->first->me.y,spl->last->me.y)) {
- SplinePoint *oldlast = spl->last;
- spl->first->prevcp = oldlast->prevcp;
- spl->first->noprevcp = oldlast->noprevcp;
- oldlast->prev->from->next = NULL;
- spl->last = oldlast->prev->from;
- chunkfree(oldlast->prev,sizeof(*oldlast));
- chunkfree(oldlast->hintmask,sizeof(HintMask));
- chunkfree(oldlast,sizeof(*oldlast));
- SplineMake(spl->last,spl->first,order2);
- spl->last = spl->first;
-return( true );
- }
-return( false );
-}
-
-static void SFDGetHintMask(FILE *sfd,HintMask *hintmask) {
- int nibble = 0, ch;
-
- memset(hintmask,0,sizeof(HintMask));
- for (;;) {
- ch = nlgetc(sfd);
- if ( isdigit(ch))
- ch -= '0';
- else if ( ch>='a' && ch<='f' )
- ch -= 'a'-10;
- else if ( ch>='A' && ch<='F' )
- ch -= 'A'-10;
- else {
- ungetc(ch,sfd);
- break;
- }
- if ( nibble<2*HntMax/8 )
- (*hintmask)[nibble>>1] |= ch<<(4*(1-(nibble&1)));
- ++nibble;
- }
-}
-
-static void SFDGetSpiros(FILE *sfd,SplineSet *cur) {
- int ch;
- spiro_cp cp;
-
- ch = nlgetc(sfd); /* S */
- ch = nlgetc(sfd); /* p */
- ch = nlgetc(sfd); /* i */
- ch = nlgetc(sfd); /* r */
- ch = nlgetc(sfd); /* o */
- while ( fscanf(sfd,"%lg %lg %c", &cp.x, &cp.y, &cp.ty )==3 ) {
- if ( cur!=NULL ) {
- if ( cur->spiro_cnt>=cur->spiro_max )
- cur->spiros = realloc(cur->spiros,(cur->spiro_max+=10)*sizeof(spiro_cp));
- cur->spiros[cur->spiro_cnt++] = cp;
- }
- }
- if ( cur!=NULL && (cur->spiros[cur->spiro_cnt-1].ty&0x7f)!=SPIRO_END ) {
- if ( cur->spiro_cnt>=cur->spiro_max )
- cur->spiros = realloc(cur->spiros,(cur->spiro_max+=1)*sizeof(spiro_cp));
- memset(&cur->spiros[cur->spiro_cnt],0,sizeof(spiro_cp));
- cur->spiros[cur->spiro_cnt++].ty = SPIRO_END;
- }
- ch = nlgetc(sfd);
- if ( ch=='E' ) {
- ch = nlgetc(sfd); /* n */
- ch = nlgetc(sfd); /* d */
- ch = nlgetc(sfd); /* S */
- ch = nlgetc(sfd); /* p */
- ch = nlgetc(sfd); /* i */
- ch = nlgetc(sfd); /* r */
- ch = nlgetc(sfd); /* o */
- } else
- ungetc(ch,sfd);
-}
-
-static SplineSet *SFDGetSplineSet(FILE *sfd,int order2) {
- SplinePointList *cur=NULL, *head=NULL;
- BasePoint current;
- real stack[100];
- int sp=0;
- SplinePoint *pt = NULL;
- int ch;
- int ch2;
- char tok[100];
- int ttfindex = 0;
- int lastacceptable;
-
- current.x = current.y = 0;
- lastacceptable = 0;
- while ( 1 ) {
- int have_read_val = 0;
- int val = 0;
-
- while ( getreal(sfd,&stack[sp])==1 )
- if ( sp<99 )
- ++sp;
- while ( isspace(ch=nlgetc(sfd)));
- if ( ch=='E' || ch=='e' || ch==EOF )
- break;
- if ( ch=='S' ) {
- ungetc(ch,sfd);
- SFDGetSpiros(sfd,cur);
- continue;
- } else if (( ch=='N' ) &&
- nlgetc(sfd)=='a' && /* a */
- nlgetc(sfd)=='m' && /* m */
- nlgetc(sfd)=='e' && /* e */
- nlgetc(sfd)=='d' ) /* d */ {
- ch2 = nlgetc(sfd); /* : */
- // We are either fetching a splineset name (Named:) or a point name (NamedP:).
- if (ch2=='P') { if ((nlgetc(sfd)==':') && (pt!=NULL)) { if (pt->name!=NULL) {free(pt->name);} pt->name = SFDReadUTF7Str(sfd); } }
- else if (ch2==':') { if (cur != NULL) cur->contour_name = SFDReadUTF7Str(sfd); else { char * freetmp = SFDReadUTF7Str(sfd); free(freetmp); freetmp = NULL; } }
- continue;
- } else if ( ch=='P' && PeekMatch(sfd,"ath") ) {
- int flags;
- nlgetc(sfd); /* a */
- nlgetc(sfd); /* t */
- nlgetc(sfd); /* h */
- if (PeekMatch(sfd,"Flags:")) {
- nlgetc(sfd); /* F */
- nlgetc(sfd); /* l */
- nlgetc(sfd); /* a */
- nlgetc(sfd); /* g */
- nlgetc(sfd); /* s */
- nlgetc(sfd); /* : */
- getint(sfd,&flags);
- if (cur != NULL) cur->is_clip_path = flags&1;
- } else if (PeekMatch(sfd,"Start:")) {
- nlgetc(sfd); /* S */
- nlgetc(sfd); /* t */
- nlgetc(sfd); /* a */
- nlgetc(sfd); /* r */
- nlgetc(sfd); /* t */
- nlgetc(sfd); /* : */
- getint(sfd,&flags);
- if (cur != NULL) cur->start_offset = flags;
- }
- }
- pt = NULL;
- if ( ch=='l' || ch=='m' ) {
- if ( sp>=2 ) {
- current.x = stack[sp-2];
- current.y = stack[sp-1];
- sp -= 2;
- pt = chunkalloc(sizeof(SplinePoint));
- pt->me = current;
- pt->noprevcp = true; pt->nonextcp = true;
- if ( ch=='m' ) {
- SplinePointList *spl = chunkalloc(sizeof(SplinePointList));
- spl->first = spl->last = pt;
- spl->start_offset = 0;
- if ( cur!=NULL ) {
- if ( SFDCloseCheck(cur,order2))
- --ttfindex;
- cur->next = spl;
- } else
- head = spl;
- cur = spl;
- } else {
- if ( cur!=NULL && cur->first!=NULL && (cur->first!=cur->last || cur->first->next==NULL) ) {
- if ( cur->last->nextcpindex==0xfffe )
- cur->last->nextcpindex = 0xffff;
- SplineMake(cur->last,pt,order2);
- cur->last->nonextcp = 1;
- pt->noprevcp = 1;
- cur->last = pt;
- }
- }
- } else
- sp = 0;
- } else if ( ch=='c' ) {
- if ( sp>=6 ) {
- getint(sfd,&val);
- have_read_val = 1;
-
-
- current.x = stack[sp-2];
- current.y = stack[sp-1];
- real original_current_x = current.x;
- if( val & SFD_PTFLAG_FORCE_OPEN_PATH )
- {
- // Find somewhere vacant to put the point.x for now
- // we need to do this check in case we choose a point that is already
- // on the spline and this connect back to that point instead of creating
- // an open path
- while( 1 )
- {
- real offset = 0.1;
- current.x += offset;
- if( !cur || !SplinePointListContainsPointAtX( cur, current.x ))
- {
- break;
- }
- }
- }
-
- if ( cur!=NULL && cur->first!=NULL && (cur->first!=cur->last || cur->first->next==NULL) ) {
- cur->last->nextcp.x = stack[sp-6];
- cur->last->nextcp.y = stack[sp-5];
- cur->last->nonextcp = false;
- pt = chunkalloc(sizeof(SplinePoint));
- pt->prevcp.x = stack[sp-4];
- pt->prevcp.y = stack[sp-3];
- pt->me = current;
- pt->nonextcp = true;
- if ( cur->last->nextcpindex==0xfffe )
- cur->last->nextcpindex = ttfindex++;
- else if ( cur->last->nextcpindex!=0xffff )
- ttfindex = cur->last->nextcpindex+1;
- SplineMake(cur->last,pt,order2);
- cur->last = pt;
- // pt->me is a copy of 'current' so we should now move
- // the x coord of pt->me back to where it should be.
- // The whole aim here is that this spline remains an open path
- // when PTFLAG_FORCE_OPEN_PATH is set.
- pt->me.x = original_current_x;
- }
-
- // Move the point back to the same location it was
- // but do not connect it back to the point that is
- // already there.
- if( val & SFD_PTFLAG_FORCE_OPEN_PATH )
- {
- current.x = original_current_x;
- }
-
- sp -= 6;
- } else
- sp = 0;
- }
- if ( pt!=NULL ) {
- if( !have_read_val )
- getint(sfd,&val);
-
- pt->pointtype = (val & SFD_PTFLAG_TYPE_MASK);
- pt->selected = (val & SFD_PTFLAG_IS_SELECTED) > 0;
- pt->nextcpdef = (val & SFD_PTFLAG_NEXTCP_IS_DEFAULT) > 0;
- pt->prevcpdef = (val & SFD_PTFLAG_PREVCP_IS_DEFAULT) > 0;
- pt->roundx = (val & SFD_PTFLAG_ROUND_IN_X) > 0;
- pt->roundy = (val & SFD_PTFLAG_ROUND_IN_Y) > 0;
- pt->dontinterpolate = (val & SFD_PTFLAG_INTERPOLATE_NEVER) > 0;
- if ( pt->prev!=NULL )
- pt->prev->acceptableextrema = (val & SFD_PTFLAG_PREV_EXTREMA_MARKED_ACCEPTABLE) > 0;
- else
- lastacceptable = (val & SFD_PTFLAG_PREV_EXTREMA_MARKED_ACCEPTABLE) > 0;
- if ( val&0x80 )
- pt->ttfindex = 0xffff;
- else
- pt->ttfindex = ttfindex++;
- pt->nextcpindex = 0xfffe;
- ch = nlgetc(sfd);
- if ( ch=='x' ) {
- pt->hintmask = chunkalloc(sizeof(HintMask));
- SFDGetHintMask(sfd,pt->hintmask);
- } else if ( ch!=',' )
- ungetc(ch,sfd);
- else {
- ch = nlgetc(sfd);
- if ( ch==',' )
- pt->ttfindex = 0xfffe;
- else {
- ungetc(ch,sfd);
- getint(sfd,&val);
- pt->ttfindex = val;
- nlgetc(sfd); /* skip comma */
- if ( val!=-1 )
- ttfindex = val+1;
- }
- ch = nlgetc(sfd);
- if ( ch=='\r' || ch=='\n' )
- ungetc(ch,sfd);
- else {
- ungetc(ch,sfd);
- getint(sfd,&val);
- pt->nextcpindex = val;
- if ( val!=-1 )
- ttfindex = val+1;
- }
- }
- }
- }
- if ( cur!=NULL )
- SFDCloseCheck(cur,order2);
- if ( lastacceptable && cur->last->prev!=NULL )
- cur->last->prev->acceptableextrema = true;
- getname(sfd,tok);
-return( head );
-}
-
-static void SFDGetMinimumDistances(FILE *sfd, SplineChar *sc) {
- SplineSet *ss;
- SplinePoint *sp;
- int pt,i, val, err;
- int ch;
- SplinePoint **mapping=NULL;
- MinimumDistance *last, *md, *mdhead=NULL;
-
- for ( i=0; i<2; ++i ) {
- pt = 0;
- for ( ss = sc->layers[ly_fore].splines; ss!=NULL; ss=ss->next ) {
- for ( sp=ss->first; ; ) {
- if ( mapping!=NULL ) mapping[pt] = sp;
- pt++;
- if ( sp->next == NULL )
- break;
- sp = sp->next->to;
- if ( sp==ss->first )
- break;
- }
- }
- if ( mapping==NULL )
- mapping = calloc(pt,sizeof(SplinePoint *));
- }
-
- last = NULL;
- for ( ch=nlgetc(sfd); ch!=EOF && ch!='\n'; ch=nlgetc(sfd)) {
- err = false;
- while ( isspace(ch) && ch!='\n' ) ch=nlgetc(sfd);
- if ( ch=='\n' )
- break;
- md = chunkalloc(sizeof(MinimumDistance));
- if ( ch=='x' ) md->x = true;
- getint(sfd,&val);
- if ( val<-1 || val>=pt ) {
- IError( "Minimum Distance specifies bad point (%d) in sfd file\n", val );
- err = true;
- } else if ( val!=-1 ) {
- md->sp1 = mapping[val];
- md->sp1->dontinterpolate = true;
- }
- ch = nlgetc(sfd);
- if ( ch!=',' ) {
- IError( "Minimum Distance lacks a comma where expected\n" );
- err = true;
- }
- getint(sfd,&val);
- if ( val<-1 || val>=pt ) {
- IError( "Minimum Distance specifies bad point (%d) in sfd file\n", val );
- err = true;
- } else if ( val!=-1 ) {
- md->sp2 = mapping[val];
- md->sp2->dontinterpolate = true;
- }
- if ( !err ) {
- if ( last!=NULL )
- last->next = md;
- last = md;
- } else
- chunkfree(md,sizeof(MinimumDistance));
- }
- free(mapping);
-
- /* Obsolete concept */
- MinimumDistancesFree(mdhead);
-}
-
-static HintInstance *SFDReadHintInstances(FILE *sfd, StemInfo *stem) {
- HintInstance *head=NULL, *last=NULL, *cur;
- real begin, end;
- int ch;
-
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- if ( ch=='G' && stem != NULL ) {
- stem->ghost = true;
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- }
- if ( ch!='<' ) {
- ungetc(ch,sfd);
-return(NULL);
- }
- while ( getreal(sfd,&begin)==1 && getreal(sfd,&end)) {
- cur = chunkalloc(sizeof(HintInstance));
- cur->begin = begin;
- cur->end = end;
- if ( head == NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
- }
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- if ( ch!='>' )
- ungetc(ch,sfd);
-return( head );
-}
-
-static StemInfo *SFDReadHints(FILE *sfd) {
- StemInfo *head=NULL, *last=NULL, *cur;
- real start, width;
-
- while ( getreal(sfd,&start)==1 && getreal(sfd,&width)) {
- cur = chunkalloc(sizeof(StemInfo));
- cur->start = start;
- cur->width = width;
- cur->where = SFDReadHintInstances(sfd,cur);
- if ( head == NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
- }
-return( head );
-}
-
-static DStemInfo *SFDReadDHints( SplineFont *sf,FILE *sfd,int old ) {
- DStemInfo *head=NULL, *last=NULL, *cur;
- int i;
- BasePoint bp[4], *bpref[4], left, right, unit;
- double rstartoff, rendoff, lendoff;
-
- if ( old ) {
- for ( i=0 ; i<4 ; i++ ) bpref[i] = &bp[i];
-
- while ( getreal( sfd,&bp[0].x ) && getreal( sfd,&bp[0].y ) &&
- getreal( sfd,&bp[1].x ) && getreal( sfd,&bp[1].y ) &&
- getreal( sfd,&bp[2].x ) && getreal( sfd,&bp[2].y ) &&
- getreal( sfd,&bp[3].x ) && getreal( sfd,&bp[3].y )) {
-
- /* Ensure point coordinates specified in the sfd file do */
- /* form a diagonal line */
- if ( PointsDiagonalable( sf,bpref,&unit )) {
- cur = chunkalloc( sizeof( DStemInfo ));
- cur->left = *bpref[0];
- cur->right = *bpref[1];
- cur->unit = unit;
- /* Generate a temporary hint instance, so that the hint can */
- /* be visible in charview even if subsequent rebuilding instances */
- /* fails (e. g. for composite characters) */
- cur->where = chunkalloc( sizeof( HintInstance ));
- rstartoff = ( cur->right.x - cur->left.x ) * cur->unit.x +
- ( cur->right.y - cur->left.y ) * cur->unit.y;
- rendoff = ( bpref[2]->x - cur->left.x ) * cur->unit.x +
- ( bpref[2]->y - cur->left.y ) * cur->unit.y;
- lendoff = ( bpref[3]->x - cur->left.x ) * cur->unit.x +
- ( bpref[3]->y - cur->left.y ) * cur->unit.y;
- cur->where->begin = ( rstartoff > 0 ) ? rstartoff : 0;
- cur->where->end = ( rendoff > lendoff ) ? lendoff : rendoff;
- MergeDStemInfo( sf,&head,cur );
- }
- }
- } else {
- while ( getreal( sfd,&left.x ) && getreal( sfd,&left.y ) &&
- getreal( sfd,&right.x ) && getreal( sfd,&right.y ) &&
- getreal( sfd,&unit.x ) && getreal( sfd,&unit.y )) {
- cur = chunkalloc( sizeof( DStemInfo ));
- cur->left = left;
- cur->right = right;
- cur->unit = unit;
- cur->where = SFDReadHintInstances( sfd,NULL );
- if ( head == NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
- }
- }
-return( head );
-}
-
-static DeviceTable *SFDReadDeviceTable(FILE *sfd,DeviceTable *adjust) {
- int i, junk, first, last, ch, len;
-
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='{' ) {
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='}' )
-return(NULL);
- else
- ungetc(ch,sfd);
- getint(sfd,&first);
- ch = nlgetc(sfd); /* Should be '-' */
- getint(sfd,&last);
- len = last-first+1;
- if ( len<=0 ) {
- IError( "Bad device table, invalid length.\n" );
-return(NULL);
- }
- if ( adjust==NULL )
- adjust = chunkalloc(sizeof(DeviceTable));
- adjust->first_pixel_size = first;
- adjust->last_pixel_size = last;
- adjust->corrections = malloc(len);
- for ( i=0; i<len; ++i ) {
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch!=',' ) ungetc(ch,sfd);
- getint(sfd,&junk);
- adjust->corrections[i] = junk;
- }
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch!='}' ) ungetc(ch,sfd);
- } else
- ungetc(ch,sfd);
-return( adjust );
-}
-
-static ValDevTab *SFDReadValDevTab(FILE *sfd) {
- int i, j, ch;
- ValDevTab vdt;
- char buf[4];
-
- memset(&vdt,0,sizeof(vdt));
- buf[3] = '\0';
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='[' ) {
- for ( i=0; i<4; ++i ) {
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch==']' )
- break;
- buf[0]=ch;
- for ( j=1; j<3; ++j ) buf[j]=nlgetc(sfd);
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch!='=' ) ungetc(ch,sfd);
- SFDReadDeviceTable(sfd,
- strcmp(buf,"ddx")==0 ? &vdt.xadjust :
- strcmp(buf,"ddy")==0 ? &vdt.yadjust :
- strcmp(buf,"ddh")==0 ? &vdt.xadv :
- strcmp(buf,"ddv")==0 ? &vdt.yadv :
- (&vdt.xadjust) + i );
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch!=']' ) ungetc(ch,sfd);
- else
- break;
- }
- if ( vdt.xadjust.corrections!=NULL || vdt.yadjust.corrections!=NULL ||
- vdt.xadv.corrections!=NULL || vdt.yadv.corrections!=NULL ) {
- ValDevTab *v = chunkalloc(sizeof(ValDevTab));
- *v = vdt;
-return( v );
- }
- } else
- ungetc(ch,sfd);
-return( NULL );
-}
-
-static AnchorPoint *SFDReadAnchorPoints(FILE *sfd,SplineChar *sc,AnchorPoint** alist, AnchorPoint *lastap)
-{
- AnchorPoint *ap = chunkalloc(sizeof(AnchorPoint));
- AnchorClass *an;
- char *name;
- char tok[200];
- int ch;
-
- name = SFDReadUTF7Str(sfd);
- if ( name==NULL ) {
- LogError(_("Anchor Point with no class name: %s"), sc->name );
- AnchorPointsFree(ap);
-return( lastap );
- }
- for ( an=sc->parent->anchor; an!=NULL && strcmp(an->name,name)!=0; an=an->next );
- free(name);
- ap->anchor = an;
- getreal(sfd,&ap->me.x);
- getreal(sfd,&ap->me.y);
- ap->type = -1;
- if ( getname(sfd,tok)==1 ) {
- if ( strcmp(tok,"mark")==0 )
- ap->type = at_mark;
- else if ( strcmp(tok,"basechar")==0 )
- ap->type = at_basechar;
- else if ( strcmp(tok,"baselig")==0 )
- ap->type = at_baselig;
- else if ( strcmp(tok,"basemark")==0 )
- ap->type = at_basemark;
- else if ( strcmp(tok,"entry")==0 )
- ap->type = at_centry;
- else if ( strcmp(tok,"exit")==0 )
- ap->type = at_cexit;
- }
- getsint(sfd,&ap->lig_index);
- ch = nlgetc(sfd);
- ungetc(ch,sfd);
- if ( ch==' ' ) {
- SFDReadDeviceTable(sfd,&ap->xadjust);
- SFDReadDeviceTable(sfd,&ap->yadjust);
- ch = nlgetc(sfd);
- ungetc(ch,sfd);
- if ( isdigit(ch)) {
- getsint(sfd,(int16 *) &ap->ttf_pt_index);
- ap->has_ttf_pt = true;
- }
- }
- if ( ap->anchor==NULL || ap->type==-1 ) {
- LogError(_("Bad Anchor Point: %s"), sc->name );
- AnchorPointsFree(ap);
-return( lastap );
- }
- if ( lastap==NULL )
- (*alist) = ap;
- else
- lastap->next = ap;
-
- return( ap );
-}
-
-static RefChar *SFDGetRef(FILE *sfd, int was_enc) {
- RefChar *rf;
- int temp=0, ch;
-
- rf = RefCharCreate();
- getint(sfd,&rf->orig_pos);
- rf->encoded = was_enc;
- if ( getint(sfd,&temp))
- rf->unicode_enc = temp;
- while ( isspace(ch=nlgetc(sfd)));
- if ( ch=='S' ) rf->selected = true;
- getreal(sfd,&rf->transform[0]);
- getreal(sfd,&rf->transform[1]);
- getreal(sfd,&rf->transform[2]);
- getreal(sfd,&rf->transform[3]);
- getreal(sfd,&rf->transform[4]);
- getreal(sfd,&rf->transform[5]);
- while ( (ch=nlgetc(sfd))==' ');
- ungetc(ch,sfd);
- if ( isdigit(ch) ) {
- getint(sfd,&temp);
- rf->use_my_metrics = temp&1;
- rf->round_translation_to_grid = (temp&2)?1:0;
- rf->point_match = (temp&4)?1:0;
- if ( rf->point_match ) {
- getsint(sfd,(int16 *) &rf->match_pt_base);
- getsint(sfd,(int16 *) &rf->match_pt_ref);
- while ( (ch=nlgetc(sfd))==' ');
- if ( ch=='O' )
- rf->point_match_out_of_date = true;
- else
- ungetc(ch,sfd);
- }
- }
-return( rf );
-}
-
-/* I used to create multiple ligatures by putting ";" between them */
-/* that is the component string for "ffi" was "ff i ; f f i" */
-/* Now I want to have separate ligature structures for each */
-static PST1 *LigaCreateFromOldStyleMultiple(PST1 *liga) {
- char *pt;
- PST1 *new, *last=liga;
- while ( (pt = strrchr(liga->pst.u.lig.components,';'))!=NULL ) {
- new = chunkalloc(sizeof( PST1 ));
- *new = *liga;
- new->pst.u.lig.components = copy(pt+1);
- last->pst.next = (PST *) new;
- last = new;
- *pt = '\0';
- }
-return( last );
-}
-
-#ifdef FONTFORGE_CONFIG_CVT_OLD_MAC_FEATURES
-static struct { int feature, setting; uint32 tag; } formertags[] = {
- { 1, 6, CHR('M','L','O','G') },
- { 1, 8, CHR('M','R','E','B') },
- { 1, 10, CHR('M','D','L','G') },
- { 1, 12, CHR('M','S','L','G') },
- { 1, 14, CHR('M','A','L','G') },
- { 8, 0, CHR('M','S','W','I') },
- { 8, 2, CHR('M','S','W','F') },
- { 8, 4, CHR('M','S','L','I') },
- { 8, 6, CHR('M','S','L','F') },
- { 8, 8, CHR('M','S','N','F') },
- { 22, 1, CHR('M','W','I','D') },
- { 27, 1, CHR('M','U','C','M') },
- { 103, 2, CHR('M','W','I','D') },
- { -1, -1, 0xffffffff },
-};
-
-static void CvtOldMacFeature(PST1 *pst) {
- int i;
-
- if ( pst->macfeature )
-return;
- for ( i=0; formertags[i].feature!=-1 ; ++i ) {
- if ( pst->tag == formertags[i].tag ) {
- pst->macfeature = true;
- pst->tag = (formertags[i].feature<<16) | formertags[i].setting;
-return;
- }
- }
-}
-#endif
-
-static void SFDSetEncMap(SplineFont *sf,int orig_pos,int enc) {
- EncMap *map = sf->map;
-
- if ( map==NULL )
-return;
-
- if ( orig_pos>=map->backmax ) {
- int old = map->backmax;
- map->backmax = orig_pos+10;
- map->backmap = realloc(map->backmap,map->backmax*sizeof(int));
- memset(map->backmap+old,-1,(map->backmax-old)*sizeof(int));
- }
- if ( map->backmap[orig_pos] == -1 ) /* backmap will not be unique if multiple encodings come from same glyph */
- map->backmap[orig_pos] = enc;
- if ( enc>=map->encmax ) {
- int old = map->encmax;
- map->encmax = enc+10;
- map->map = realloc(map->map,map->encmax*sizeof(int));
- memset(map->map+old,-1,(map->encmax-old)*sizeof(int));
- }
- if ( enc>=map->enccount )
- map->enccount = enc+1;
- if ( enc!=-1 )
- map->map[enc] = orig_pos;
-}
-
-static void SCDefaultInterpolation(SplineChar *sc) {
- SplineSet *cur;
- SplinePoint *sp;
- /* We used not to store the dontinterpolate bit. We used to use the */
- /* presence or absence of instructions as that flag */
-
- if ( sc->ttf_instrs_len!=0 ) {
- for ( cur=sc->layers[ly_fore].splines; cur!=NULL; cur=cur->next ) {
- for ( sp=cur->first; ; ) {
- if ( sp->ttfindex!=0xffff && SPInterpolate(sp))
- sp->dontinterpolate = true;
- if ( sp->next==NULL )
- break;
- sp=sp->next->to;
- if ( sp==cur->first )
- break;
- }
- }
- }
-}
-
-static void SFDParseMathValueRecord(FILE *sfd,int16 *value,DeviceTable **devtab) {
- getsint(sfd,value);
- *devtab = SFDReadDeviceTable(sfd,NULL);
-}
-
-static struct glyphvariants *SFDParseGlyphComposition(FILE *sfd,
- struct glyphvariants *gv, char *tok) {
- int i;
-
- if ( gv==NULL )
- gv = chunkalloc(sizeof(struct glyphvariants));
- getint(sfd,&gv->part_cnt);
- gv->parts = calloc(gv->part_cnt,sizeof(struct gv_part));
- for ( i=0; i<gv->part_cnt; ++i ) {
- int temp, ch;
- getname(sfd,tok);
- gv->parts[i].component = copy(tok);
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch!='%' ) ungetc(ch,sfd);
- getint(sfd,&temp);
- gv->parts[i].is_extender = temp;
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch!=',' ) ungetc(ch,sfd);
- getint(sfd,&temp);
- gv->parts[i].startConnectorLength=temp;
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch!=',' ) ungetc(ch,sfd);
- getint(sfd,&temp);
- gv->parts[i].endConnectorLength = temp;
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch!=',' ) ungetc(ch,sfd);
- getint(sfd,&temp);
- gv->parts[i].fullAdvance = temp;
- }
-return( gv );
-}
-
-static void SFDParseVertexKern(FILE *sfd, struct mathkernvertex *vertex) {
- int i,ch;
-
- getint(sfd,&vertex->cnt);
- vertex->mkd = calloc(vertex->cnt,sizeof(struct mathkerndata));
- for ( i=0; i<vertex->cnt; ++i ) {
- SFDParseMathValueRecord(sfd,&vertex->mkd[i].height,&vertex->mkd[i].height_adjusts);
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch!=EOF && ch!=',' )
- ungetc(ch,sfd);
- SFDParseMathValueRecord(sfd,&vertex->mkd[i].kern,&vertex->mkd[i].kern_adjusts);
- }
-}
-
-static struct gradient *SFDParseGradient(FILE *sfd,char *tok) {
- struct gradient *grad = chunkalloc(sizeof(struct gradient));
- int ch, i;
-
- getreal(sfd,&grad->start.x);
- while ( isspace(ch=nlgetc(sfd)));
- if ( ch!=';' ) ungetc(ch,sfd);
- getreal(sfd,&grad->start.y);
-
- getreal(sfd,&grad->stop.x);
- while ( isspace(ch=nlgetc(sfd)));
- if ( ch!=';' ) ungetc(ch,sfd);
- getreal(sfd,&grad->stop.y);
-
- getreal(sfd,&grad->radius);
-
- getname(sfd,tok);
- for ( i=0; spreads[i]!=NULL; ++i )
- if ( strmatch(spreads[i],tok)==0 )
- break;
- if ( spreads[i]==NULL ) i=0;
- grad->sm = i;
-
- getint(sfd,&grad->stop_cnt);
- grad->grad_stops = calloc(grad->stop_cnt,sizeof(struct grad_stops));
- for ( i=0; i<grad->stop_cnt; ++i ) {
- while ( isspace(ch=nlgetc(sfd)));
- if ( ch!='{' ) ungetc(ch,sfd);
- getreal( sfd, &grad->grad_stops[i].offset );
- gethex( sfd, &grad->grad_stops[i].col );
- getreal( sfd, &grad->grad_stops[i].opacity );
- while ( isspace(ch=nlgetc(sfd)));
- if ( ch!='}' ) ungetc(ch,sfd);
- }
-return( grad );
-}
-
-static struct pattern *SFDParsePattern(FILE *sfd,char *tok) {
- struct pattern *pat = chunkalloc(sizeof(struct pattern));
- int ch;
-
- getname(sfd,tok);
- pat->pattern = copy(tok);
-
- getreal(sfd,&pat->width);
- while ( isspace(ch=nlgetc(sfd)));
- if ( ch!=';' ) ungetc(ch,sfd);
- getreal(sfd,&pat->height);
-
- while ( isspace(ch=nlgetc(sfd)));
- if ( ch!='[' ) ungetc(ch,sfd);
- getreal(sfd,&pat->transform[0]);
- getreal(sfd,&pat->transform[1]);
- getreal(sfd,&pat->transform[2]);
- getreal(sfd,&pat->transform[3]);
- getreal(sfd,&pat->transform[4]);
- getreal(sfd,&pat->transform[5]);
- while ( isspace(ch=nlgetc(sfd)));
- if ( ch!=']' ) ungetc(ch,sfd);
-return( pat );
-}
-
-
-static int orig_pos;
-
-static SplineChar *SFDGetChar(FILE *sfd,SplineFont *sf, int had_sf_layer_cnt) {
- SplineChar *sc;
- char tok[2000], ch;
- RefChar *lastr=NULL, *ref;
- AnchorPoint *lastap = NULL;
- int isliga = 0, ispos, issubs=0, ismult=0, islcar=0, ispair=0, temp, i;
- PST *last = NULL;
- uint32 script = 0;
- int current_layer = ly_fore;
- int had_old_dstems = false;
- SplineFont *sli_sf = sf->cidmaster ? sf->cidmaster : sf;
- struct altuni *altuni;
- int oldback = false;
-
- if ( getname(sfd,tok)!=1 )
-return( NULL );
- if ( strcmp(tok,"StartChar:")!=0 )
-return( NULL );
- while ( isspace(ch=nlgetc(sfd)));
- ungetc(ch,sfd);
- sc = SFSplineCharCreate(sf);
- if ( ch!='"' ) {
- if ( getname(sfd,tok)!=1 ) {
- SplineCharFree(sc);
-return( NULL );
- }
- sc->name = copy(tok);
- } else {
- sc->name = SFDReadUTF7Str(sfd);
- if ( sc->name==NULL ) {
- SplineCharFree(sc);
-return( NULL );
- }
- }
- sc->vwidth = sf->ascent+sf->descent;
- sc->parent = sf;
- while ( 1 ) {
- if ( getname(sfd,tok)!=1 ) {
- SplineCharFree(sc);
-return( NULL );
- }
- if ( strmatch(tok,"Encoding:")==0 ) {
- int enc;
- getint(sfd,&enc);
- getint(sfd,&sc->unicodeenc);
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- ungetc(ch,sfd);
- if ( ch!='\n' && ch!='\r' ) {
- getint(sfd,&sc->orig_pos);
- if ( sc->orig_pos==65535 )
- sc->orig_pos = orig_pos++;
- /* An old mark meaning: "I don't know" */
- if ( sc->orig_pos<sf->glyphcnt && sf->glyphs[sc->orig_pos]!=NULL )
- sc->orig_pos = sf->glyphcnt;
- if ( sc->orig_pos>=sf->glyphcnt ) {
- if ( sc->orig_pos>=sf->glyphmax )
- sf->glyphs = realloc(sf->glyphs,(sf->glyphmax = sc->orig_pos+10)*sizeof(SplineChar *));
- memset(sf->glyphs+sf->glyphcnt,0,(sc->orig_pos+1-sf->glyphcnt)*sizeof(SplineChar *));
- sf->glyphcnt = sc->orig_pos+1;
- }
- if ( sc->orig_pos+1 > orig_pos )
- orig_pos = sc->orig_pos+1;
- } else if ( sf->cidmaster!=NULL ) { /* In cid fonts the orig_pos is just the cid */
- sc->orig_pos = enc;
- } else {
- sc->orig_pos = orig_pos++;
- }
- SFDSetEncMap(sf,sc->orig_pos,enc);
- } else if ( strmatch(tok,"AltUni:")==0 ) {
- int uni;
- while ( getint(sfd,&uni)==1 ) {
- altuni = chunkalloc(sizeof(struct altuni));
- altuni->unienc = uni;
- altuni->vs = -1;
- altuni->fid = 0;
- altuni->next = sc->altuni;
- sc->altuni = altuni;
- }
- } else if ( strmatch(tok,"AltUni2:")==0 ) {
- uint32 uni[3];
- while ( gethexints(sfd,uni,3) ) {
- altuni = chunkalloc(sizeof(struct altuni));
- altuni->unienc = uni[0];
- altuni->vs = uni[1];
- altuni->fid = uni[2];
- altuni->next = sc->altuni;
- sc->altuni = altuni;
- }
- } else if ( strmatch(tok,"OldEncoding:")==0 ) {
- int old_enc; /* Obsolete info */
- getint(sfd,&old_enc);
- } else if ( strmatch(tok,"Script:")==0 ) {
- /* Obsolete. But still used for parsing obsolete ligature/subs tags */
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- if ( ch=='\n' || ch=='\r' )
- script = 0;
- else {
- ungetc(ch,sfd);
- script = gettag(sfd);
- }
- } else if ( strmatch(tok,"GlifName:")==0 ) {
- while ( isspace(ch=nlgetc(sfd)));
- ungetc(ch,sfd);
- if ( ch!='"' ) {
- if ( getname(sfd,tok)!=1 ) {
- LogError(_("Invalid glif name.\n"));
- }
- sc->glif_name = copy(tok);
- } else {
- sc->glif_name = SFDReadUTF7Str(sfd);
- if ( sc->glif_name==NULL ) {
- LogError(_("Invalid glif name.\n"));
- }
- }
- } else if ( strmatch(tok,"Width:")==0 ) {
- getsint(sfd,&sc->width);
- } else if ( strmatch(tok,"VWidth:")==0 ) {
- getsint(sfd,&sc->vwidth);
- } else if ( strmatch(tok,"GlyphClass:")==0 ) {
- getint(sfd,&temp);
- sc->glyph_class = temp;
- } else if ( strmatch(tok,"UnlinkRmOvrlpSave:")==0 ) {
- getint(sfd,&temp);
- sc->unlink_rm_ovrlp_save_undo = temp;
- } else if ( strmatch(tok,"InSpiro:")==0 ) {
- getint(sfd,&temp);
- sc->inspiro = temp;
- } else if ( strmatch(tok,"LigCaretCntFixed:")==0 ) {
- getint(sfd,&temp);
- sc->lig_caret_cnt_fixed = temp;
- } else if ( strmatch(tok,"Flags:")==0 ) {
- while ( isspace(ch=nlgetc(sfd)) && ch!='\n' && ch!='\r');
- while ( ch!='\n' && ch!='\r' ) {
- if ( ch=='H' ) sc->changedsincelasthinted=true;
- else if ( ch=='M' ) sc->manualhints = true;
- else if ( ch=='W' ) sc->widthset = true;
- else if ( ch=='O' ) sc->wasopen = true;
- else if ( ch=='I' ) sc->instructions_out_of_date = true;
- ch = nlgetc(sfd);
- }
- if ( sf->multilayer || sf->strokedfont || sc->layers[ly_fore].order2 )
- sc->changedsincelasthinted = false;
- } else if ( strmatch(tok,"TeX:")==0 ) {
- getsint(sfd,&sc->tex_height);
- getsint(sfd,&sc->tex_depth);
- while ( isspace(ch=nlgetc(sfd)) && ch!='\n' && ch!='\r');
- ungetc(ch,sfd);
- if ( ch!='\n' && ch!='\r' ) {
- int16 old_tex;
- /* Used to store two extra values here */
- getsint(sfd,&old_tex);
- getsint(sfd,&old_tex);
- if ( sc->tex_height==0 && sc->tex_depth==0 ) /* Fixup old bug */
- sc->tex_height = sc->tex_depth = TEX_UNDEF;
- }
- } else if ( strmatch(tok,"ItalicCorrection:")==0 ) {
- SFDParseMathValueRecord(sfd,&sc->italic_correction,&sc->italic_adjusts);
- } else if ( strmatch(tok,"TopAccentHorizontal:")==0 ) {
- SFDParseMathValueRecord(sfd,&sc->top_accent_horiz,&sc->top_accent_adjusts);
- } else if ( strmatch(tok,"GlyphCompositionVerticalIC:")==0 ) {
- if ( sc->vert_variants==NULL )
- sc->vert_variants = chunkalloc(sizeof(struct glyphvariants));
- SFDParseMathValueRecord(sfd,&sc->vert_variants->italic_correction,&sc->vert_variants->italic_adjusts);
- } else if ( strmatch(tok,"GlyphCompositionHorizontalIC:")==0 ) {
- if ( sc->horiz_variants==NULL )
- sc->horiz_variants = chunkalloc(sizeof(struct glyphvariants));
- SFDParseMathValueRecord(sfd,&sc->horiz_variants->italic_correction,&sc->horiz_variants->italic_adjusts);
- } else if ( strmatch(tok,"IsExtendedShape:")==0 ) {
- int temp;
- getint(sfd,&temp);
- sc->is_extended_shape = temp;
- } else if ( strmatch(tok,"GlyphVariantsVertical:")==0 ) {
- if ( sc->vert_variants==NULL )
- sc->vert_variants = chunkalloc(sizeof(struct glyphvariants));
- geteol(sfd,tok);
- sc->vert_variants->variants = copy(tok);
- } else if ( strmatch(tok,"GlyphVariantsHorizontal:")==0 ) {
- if ( sc->horiz_variants==NULL )
- sc->horiz_variants = chunkalloc(sizeof(struct glyphvariants));
- geteol(sfd,tok);
- sc->horiz_variants->variants = copy(tok);
- } else if ( strmatch(tok,"GlyphCompositionVertical:")==0 ) {
- sc->vert_variants = SFDParseGlyphComposition(sfd, sc->vert_variants,tok);
- } else if ( strmatch(tok,"GlyphCompositionHorizontal:")==0 ) {
- sc->horiz_variants = SFDParseGlyphComposition(sfd, sc->horiz_variants,tok);
- } else if ( strmatch(tok,"TopRightVertex:")==0 ) {
- if ( sc->mathkern==NULL )
- sc->mathkern = chunkalloc(sizeof(struct mathkern));
- SFDParseVertexKern(sfd, &sc->mathkern->top_right);
- } else if ( strmatch(tok,"TopLeftVertex:")==0 ) {
- if ( sc->mathkern==NULL )
- sc->mathkern = chunkalloc(sizeof(struct mathkern));
- SFDParseVertexKern(sfd, &sc->mathkern->top_left);
- } else if ( strmatch(tok,"BottomRightVertex:")==0 ) {
- if ( sc->mathkern==NULL )
- sc->mathkern = chunkalloc(sizeof(struct mathkern));
- SFDParseVertexKern(sfd, &sc->mathkern->bottom_right);
- } else if ( strmatch(tok,"BottomLeftVertex:")==0 ) {
- if ( sc->mathkern==NULL )
- sc->mathkern = chunkalloc(sizeof(struct mathkern));
- SFDParseVertexKern(sfd, &sc->mathkern->bottom_left);
-#if HANYANG
- } else if ( strmatch(tok,"CompositionUnit:")==0 ) {
- getsint(sfd,&sc->jamo);
- getsint(sfd,&sc->varient);
- sc->compositionunit = true;
-#endif
- } else if ( strmatch(tok,"HStem:")==0 ) {
- sc->hstem = SFDReadHints(sfd);
- sc->hconflicts = StemListAnyConflicts(sc->hstem);
- } else if ( strmatch(tok,"VStem:")==0 ) {
- sc->vstem = SFDReadHints(sfd);
- sc->vconflicts = StemListAnyConflicts(sc->vstem);
- } else if ( strmatch(tok,"DStem:")==0 ) {
- sc->dstem = SFDReadDHints( sc->parent,sfd,true );
- had_old_dstems = true;
- } else if ( strmatch(tok,"DStem2:")==0 ) {
- sc->dstem = SFDReadDHints( sc->parent,sfd,false );
- } else if ( strmatch(tok,"CounterMasks:")==0 ) {
- getsint(sfd,&sc->countermask_cnt);
- sc->countermasks = calloc(sc->countermask_cnt,sizeof(HintMask));
- for ( i=0; i<sc->countermask_cnt; ++i ) {
- int ch;
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- SFDGetHintMask(sfd,&sc->countermasks[i]);
- }
- } else if ( strmatch(tok,"AnchorPoint:")==0 ) {
- lastap = SFDReadAnchorPoints(sfd,sc,&sc->anchor,lastap);
- } else if ( strmatch(tok,"Fore")==0 ) {
- while ( isspace(ch = nlgetc(sfd)));
- ungetc(ch,sfd);
- if ( ch!='I' && ch!='R' && ch!='S' && ch!='V' && ch!=' ' && ch!='\n' &&
- !PeekMatch(sfd, "Pickled") && !PeekMatch(sfd, "EndChar") &&
- !PeekMatch(sfd, "Fore") && !PeekMatch(sfd, "Back") && !PeekMatch(sfd, "Layer") ) {
- /* Old format, without a SplineSet token */
- sc->layers[ly_fore].splines = SFDGetSplineSet(sfd,sc->layers[ly_fore].order2);
- }
- current_layer = ly_fore;
- } else if ( strmatch(tok,"MinimumDistance:")==0 ) {
- SFDGetMinimumDistances(sfd,sc);
- } else if ( strmatch(tok,"Validated:")==0 ) {
- getsint(sfd,(int16 *) &sc->layers[current_layer].validation_state);
- } else if ( strmatch(tok,"Back")==0 ) {
- while ( isspace(ch=nlgetc(sfd)));
- ungetc(ch,sfd);
- if ( ch!='I' && ch!='R' && ch!='S' && ch!='V' && ch!=' ' && ch!='\n' &&
- !PeekMatch(sfd, "Pickled") && !PeekMatch(sfd, "EndChar") &&
- !PeekMatch(sfd, "Fore") && !PeekMatch(sfd, "Back") && !PeekMatch(sfd, "Layer") ) {
- /* Old format, without a SplineSet token */
- sc->layers[ly_back].splines = SFDGetSplineSet(sfd,sc->layers[ly_back].order2);
- oldback = true;
- }
- current_layer = ly_back;
- } else if ( strmatch(tok,"LayerCount:")==0 ) {
- getint(sfd,&temp);
- if ( temp>sc->layer_cnt ) {
- sc->layers = realloc(sc->layers,temp*sizeof(Layer));
- memset(sc->layers+sc->layer_cnt,0,(temp-sc->layer_cnt)*sizeof(Layer));
- }
- sc->layer_cnt = temp;
- current_layer = ly_fore;
- } else if ( strmatch(tok,"Layer:")==0 ) {
- int layer;
- int dofill, dostroke, fillfirst, linejoin, linecap;
- uint32 fillcol, strokecol;
- real fillopacity, strokeopacity, strokewidth, trans[4];
- DashType dashes[DASH_MAX];
- int i;
- getint(sfd,&layer);
- if ( layer>=sc->layer_cnt ) {
- sc->layers = realloc(sc->layers,(layer+1)*sizeof(Layer));
- memset(sc->layers+sc->layer_cnt,0,(layer+1-sc->layer_cnt)*sizeof(Layer));
- }
- if ( sc->parent->multilayer ) {
- getint(sfd,&dofill);
- getint(sfd,&dostroke);
- getint(sfd,&fillfirst);
- gethex(sfd,&fillcol);
- getreal(sfd,&fillopacity);
- gethex(sfd,&strokecol);
- getreal(sfd,&strokeopacity);
- getreal(sfd,&strokewidth);
- getname(sfd,tok);
- for ( i=0; joins[i]!=NULL; ++i )
- if ( strmatch(joins[i],tok)==0 )
- break;
- if ( joins[i]==NULL ) --i;
- linejoin = i;
- getname(sfd,tok);
- for ( i=0; caps[i]!=NULL; ++i )
- if ( strmatch(caps[i],tok)==0 )
- break;
- if ( caps[i]==NULL ) --i;
- linecap = i;
- while ( (ch=nlgetc(sfd))==' ' || ch=='[' );
- ungetc(ch,sfd);
- getreal(sfd,&trans[0]);
- getreal(sfd,&trans[1]);
- getreal(sfd,&trans[2]);
- getreal(sfd,&trans[3]);
- while ( (ch=nlgetc(sfd))==' ' || ch==']' );
- if ( ch=='[' ) {
- for ( i=0;; ++i ) { int temp;
- if ( !getint(sfd,&temp) )
- break;
- else if ( i<DASH_MAX )
- dashes[i] = temp;
- }
- if ( i<DASH_MAX )
- dashes[i] = 0;
- } else {
- ungetc(ch,sfd);
- memset(dashes,0,sizeof(dashes));
- }
- sc->layers[layer].dofill = dofill;
- sc->layers[layer].dostroke = dostroke;
- sc->layers[layer].fillfirst = fillfirst;
- sc->layers[layer].fill_brush.col = fillcol;
- sc->layers[layer].fill_brush.opacity = fillopacity;
- sc->layers[layer].stroke_pen.brush.col = strokecol;
- sc->layers[layer].stroke_pen.brush.opacity = strokeopacity;
- sc->layers[layer].stroke_pen.width = strokewidth;
- sc->layers[layer].stroke_pen.linejoin = linejoin;
- sc->layers[layer].stroke_pen.linecap = linecap;
- memcpy(sc->layers[layer].stroke_pen.dashes,dashes,sizeof(dashes));
- memcpy(sc->layers[layer].stroke_pen.trans,trans,sizeof(trans));
- }
- current_layer = layer;
- lastr = NULL;
- } else if ( strmatch(tok,"FillGradient:")==0 ) {
- sc->layers[current_layer].fill_brush.gradient = SFDParseGradient(sfd,tok);
- } else if ( strmatch(tok,"FillPattern:")==0 ) {
- sc->layers[current_layer].fill_brush.pattern = SFDParsePattern(sfd,tok);
- } else if ( strmatch(tok,"StrokeGradient:")==0 ) {
- sc->layers[current_layer].stroke_pen.brush.gradient = SFDParseGradient(sfd,tok);
- } else if ( strmatch(tok,"StrokePattern:")==0 ) {
- sc->layers[current_layer].stroke_pen.brush.pattern = SFDParsePattern(sfd,tok);
- } else if ( strmatch(tok,"SplineSet")==0 ) {
- sc->layers[current_layer].splines = SFDGetSplineSet(sfd,sc->layers[current_layer].order2);
- } else if ( strmatch(tok,"Ref:")==0 || strmatch(tok,"Refer:")==0 ) {
- /* I should be depending on the version number here, but I made */
- /* a mistake and bumped the version too late. So the version is */
- /* not an accurate mark, but the presence of a LayerCount keyword*/
- /* in the font is an good mark. Before the LayerCount was added */
- /* (version 2) only the foreground layer could have references */
- /* after that (eventually version 3) any layer could. */
- if ( oldback || !had_sf_layer_cnt ) current_layer = ly_fore;
- ref = SFDGetRef(sfd,strmatch(tok,"Ref:")==0);
- if ( sc->layers[current_layer].refs==NULL )
- sc->layers[current_layer].refs = ref;
- else
- lastr->next = ref;
- lastr = ref;
- } else if ( strmatch(tok,"PickledData:")==0 ) {
- if (current_layer < sc->layer_cnt) {
- sc->layers[current_layer].python_persistent = SFDUnPickle(sfd, 0);
- sc->layers[current_layer].python_persistent_has_lists = 0;
- }
- } else if ( strmatch(tok,"PickledDataWithLists:")==0 ) {
- if (current_layer < sc->layer_cnt) {
- sc->layers[current_layer].python_persistent = SFDUnPickle(sfd, 1);
- sc->layers[current_layer].python_persistent_has_lists = 1;
- }
- } else if ( strmatch(tok,"OrigType1:")==0 ) { /* Accept, slurp, ignore contents */
- SFDGetType1(sfd);
- } else if ( strmatch(tok,"TtfInstrs:")==0 ) { /* Binary format */
- SFDGetTtfInstrs(sfd,sc);
- } else if ( strmatch(tok,"TtInstrs:")==0 ) { /* ASCII format */
- SFDGetTtInstrs(sfd,sc);
- } else if ( strmatch(tok,"Kerns2:")==0 ||
- strmatch(tok,"VKerns2:")==0 ) {
- KernPair *kp, *last=NULL;
- int isv = *tok=='V';
- int off, index;
- struct lookup_subtable *sub;
-
- while ( fscanf(sfd,"%d %d", &index, &off )==2 ) {
- sub = SFFindLookupSubtableAndFreeName(sf,SFDReadUTF7Str(sfd));
- if ( sub==NULL ) {
- LogError(_("KernPair with no subtable name.\n"));
- break;
- }
- kp = chunkalloc(sizeof(KernPair1));
- kp->sc = (SplineChar *) (intpt) index;
- kp->kcid = true;
- kp->off = off;
- kp->subtable = sub;
- kp->next = NULL;
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- if ( ch=='{' ) {
- kp->adjust = SFDReadDeviceTable(sfd, NULL);
- }
- if ( last != NULL )
- last->next = kp;
- else if ( isv )
- sc->vkerns = kp;
- else
- sc->kerns = kp;
- last = kp;
- }
- } else if ( (ispos = (strmatch(tok,"Position:")==0)) ||
- ( ispos = (strmatch(tok,"Position2:")==0)) ||
- ( ispair = (strmatch(tok,"PairPos:")==0)) ||
- ( ispair = (strmatch(tok,"PairPos2:")==0)) ||
- ( islcar = (strmatch(tok,"LCarets:")==0)) ||
- ( islcar = (strmatch(tok,"LCarets2:")==0)) ||
- ( isliga = (strmatch(tok,"Ligature:")==0)) ||
- ( isliga = (strmatch(tok,"Ligature2:")==0)) ||
- ( issubs = (strmatch(tok,"Substitution:")==0)) ||
- ( issubs = (strmatch(tok,"Substitution2:")==0)) ||
- ( ismult = (strmatch(tok,"MultipleSubs:")==0)) ||
- ( ismult = (strmatch(tok,"MultipleSubs2:")==0)) ||
- strmatch(tok,"AlternateSubs:")==0 ||
- strmatch(tok,"AlternateSubs2:")==0 ) {
- PST *pst;
- int old, type;
- type = ispos ? pst_position :
- ispair ? pst_pair :
- islcar ? pst_lcaret :
- isliga ? pst_ligature :
- issubs ? pst_substitution :
- ismult ? pst_multiple :
- pst_alternate;
- if ( strchr(tok,'2')!=NULL ) {
- old = false;
- pst = chunkalloc(sizeof(PST));
- if ( type!=pst_lcaret )
- pst->subtable = SFFindLookupSubtableAndFreeName(sf,SFDReadUTF7Str(sfd));
- } else {
- old = true;
- pst = chunkalloc(sizeof(PST1));
- ((PST1 *) pst)->tag = CHR('l','i','g','a');
- ((PST1 *) pst)->script_lang_index = 0xffff;
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- if ( isdigit(ch)) {
- int temp;
- ungetc(ch,sfd);
- getint(sfd,&temp);
- ((PST1 *) pst)->flags = temp;
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- } else
- ((PST1 *) pst)->flags = 0 /*PSTDefaultFlags(type,sc)*/;
- if ( isdigit(ch)) {
- ungetc(ch,sfd);
- getusint(sfd,&((PST1 *) pst)->script_lang_index);
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- } else
- ((PST1 *) pst)->script_lang_index = SFFindBiggestScriptLangIndex(sf,
- script!=0?script:SCScriptFromUnicode(sc),DEFAULT_LANG);
- if ( ch=='\'' ) {
- ungetc(ch,sfd);
- ((PST1 *) pst)->tag = gettag(sfd);
- } else if ( ch=='<' ) {
- getint(sfd,&temp);
- ((PST1 *) pst)->tag = temp<<16;
- nlgetc(sfd); /* comma */
- getint(sfd,&temp);
- ((PST1 *) pst)->tag |= temp;
- nlgetc(sfd); /* close '>' */
- ((PST1 *) pst)->macfeature = true;
- } else
- ungetc(ch,sfd);
- if ( type==pst_lcaret ) {
- /* These are meaningless for lcarets, set them to innocuous values */
- ((PST1 *) pst)->script_lang_index = SLI_UNKNOWN;
- ((PST1 *) pst)->tag = CHR(' ',' ',' ',' ');
- } else if ( ((PST1 *) pst)->script_lang_index>=((SplineFont1 *) sli_sf)->sli_cnt && ((PST1 *) pst)->script_lang_index!=SLI_NESTED ) {
- static int complained=false;
- if ( !complained )
- IError("'%c%c%c%c' in %s has a script index out of bounds: %d",
- (((PST1 *) pst)->tag>>24), (((PST1 *) pst)->tag>>16)&0xff, (((PST1 *) pst)->tag>>8)&0xff, ((PST1 *) pst)->tag&0xff,
- sc->name, ((PST1 *) pst)->script_lang_index );
- else
- IError( "'%c%c%c%c' in %s has a script index out of bounds: %d\n",
- (((PST1 *) pst)->tag>>24), (((PST1 *) pst)->tag>>16)&0xff, (((PST1 *) pst)->tag>>8)&0xff, ((PST1 *) pst)->tag&0xff,
- sc->name, ((PST1 *) pst)->script_lang_index );
- ((PST1 *) pst)->script_lang_index = SFFindBiggestScriptLangIndex(sli_sf,
- SCScriptFromUnicode(sc),DEFAULT_LANG);
- complained = true;
- }
- }
- if ( (sf->sfd_version<2)!=old ) {
- IError( "Version mixup in PST of sfd file." );
-exit(1);
- }
- if ( last==NULL )
- sc->possub = pst;
- else
- last->next = pst;
- last = pst;
- pst->type = type;
- if ( pst->type==pst_position ) {
- fscanf( sfd, " dx=%hd dy=%hd dh=%hd dv=%hd",
- &pst->u.pos.xoff, &pst->u.pos.yoff,
- &pst->u.pos.h_adv_off, &pst->u.pos.v_adv_off);
- pst->u.pos.adjust = SFDReadValDevTab(sfd);
- ch = nlgetc(sfd); /* Eat new line */
- } else if ( pst->type==pst_pair ) {
- getname(sfd,tok);
- pst->u.pair.paired = copy(tok);
- pst->u.pair.vr = chunkalloc(sizeof(struct vr [2]));
- fscanf( sfd, " dx=%hd dy=%hd dh=%hd dv=%hd",
- &pst->u.pair.vr[0].xoff, &pst->u.pair.vr[0].yoff,
- &pst->u.pair.vr[0].h_adv_off, &pst->u.pair.vr[0].v_adv_off);
- pst->u.pair.vr[0].adjust = SFDReadValDevTab(sfd);
- fscanf( sfd, " dx=%hd dy=%hd dh=%hd dv=%hd",
- &pst->u.pair.vr[1].xoff, &pst->u.pair.vr[1].yoff,
- &pst->u.pair.vr[1].h_adv_off, &pst->u.pair.vr[1].v_adv_off);
- pst->u.pair.vr[0].adjust = SFDReadValDevTab(sfd);
- ch = nlgetc(sfd);
- } else if ( pst->type==pst_lcaret ) {
- int i;
- fscanf( sfd, " %d", &pst->u.lcaret.cnt );
- pst->u.lcaret.carets = malloc(pst->u.lcaret.cnt*sizeof(int16));
- for ( i=0; i<pst->u.lcaret.cnt; ++i )
- fscanf( sfd, " %hd", &pst->u.lcaret.carets[i]);
- geteol(sfd,tok);
- } else {
- geteol(sfd,tok);
- pst->u.lig.components = copy(tok); /* it's in the same place for all formats */
- if ( isliga ) {
- pst->u.lig.lig = sc;
- if ( old )
- last = (PST *) LigaCreateFromOldStyleMultiple((PST1 *) pst);
- }
- }
-#ifdef FONTFORGE_CONFIG_CVT_OLD_MAC_FEATURES
- if ( old )
- CvtOldMacFeature((PST1 *) pst);
-#endif
- } else if ( strmatch(tok,"Colour:")==0 ) {
- uint32 temp;
- gethex(sfd,&temp);
- sc->color = temp;
- } else if ( strmatch(tok,"Comment:")==0 ) {
- sc->comment = SFDReadUTF7Str(sfd);
- } else if ( strmatch(tok,"TileMargin:")==0 ) {
- getreal(sfd,&sc->tile_margin);
- } else if ( strmatch(tok,"TileBounds:")==0 ) {
- getreal(sfd,&sc->tile_bounds.minx);
- getreal(sfd,&sc->tile_bounds.miny);
- getreal(sfd,&sc->tile_bounds.maxx);
- getreal(sfd,&sc->tile_bounds.maxy);
- } else if ( strmatch(tok,"EndChar")==0 ) {
- if ( sc->orig_pos<sf->glyphcnt )
- sf->glyphs[sc->orig_pos] = sc;
- /* Recalculating hint active zones may be needed for old .sfd files. */
- /* Do this when we have finished with other glyph components, */
- /* so that splines are already available */
- if ( had_old_dstems && sc->layers[ly_fore].splines != NULL )
- SCGuessHintInstancesList( sc,ly_fore,NULL,NULL,sc->dstem,false,true );
- if ( sc->layers[ly_fore].order2 )
- SCDefaultInterpolation(sc);
-return( sc );
- } else {
- geteol(sfd,tok);
- }
- }
-}
-
-static void SFDFixupRef(SplineChar *sc,RefChar *ref,int layer) {
- RefChar *rf;
- int ly;
-
- if ( sc->parent->multilayer ) {
- for ( ly=ly_fore; ly<ref->sc->layer_cnt; ++ly ) {
- for ( rf = ref->sc->layers[ly].refs; rf!=NULL; rf=rf->next ) {
- if ( rf->sc==sc ) { /* Huh? */
- ref->sc->layers[ly].refs = NULL;
- break;
- }
- if ( rf->layers[0].splines==NULL )
- SFDFixupRef(ref->sc,rf,layer);
- }
- }
- } else {
- for ( rf = ref->sc->layers[layer].refs; rf!=NULL; rf=rf->next ) {
- if ( rf->sc==sc ) { /* Huh? */
- ref->sc->layers[layer].refs = NULL;
- break;
- }
- if ( rf->layers[0].splines==NULL )
- SFDFixupRef(ref->sc,rf,layer);
- }
- }
- SCReinstanciateRefChar(sc,ref,layer);
- SCMakeDependent(sc,ref->sc);
-}
-
-/* Look for character duplicates, such as might be generated by having the same */
-/* glyph at two encoding slots */
-/* This is an obsolete convention, supported now only in sfd files */
-/* I think it is ok if something depends on this character, because the */
-/* code that handles references will automatically unwrap it down to be base */
-static SplineChar *SCDuplicate(SplineChar *sc) {
- SplineChar *matched = sc;
-
- if ( sc==NULL || sc->parent==NULL || sc->parent->cidmaster!=NULL )
-return( sc ); /* Can't do this in CID keyed fonts */
-
- if ( sc->layer_cnt!=2 )
-return( sc );
-
- while ( sc->layers[ly_fore].refs!=NULL &&
- sc->layers[ly_fore].refs->sc!=NULL && /* Can happen if we are called during font loading before references are fixed up */
- sc->layers[ly_fore].refs->next==NULL &&
- sc->layers[ly_fore].refs->transform[0]==1 && sc->layers[ly_fore].refs->transform[1]==0 &&
- sc->layers[ly_fore].refs->transform[2]==0 && sc->layers[ly_fore].refs->transform[3]==1 &&
- sc->layers[ly_fore].refs->transform[4]==0 && sc->layers[ly_fore].refs->transform[5]==0 ) {
- char *basename = sc->layers[ly_fore].refs->sc->name;
- if ( strcmp(sc->name,basename)!=0 )
- break;
- matched = sc->layers[ly_fore].refs->sc;
- sc = sc->layers[ly_fore].refs->sc;
- }
-return( matched );
-}
-
-
-void SFDFixupRefs(SplineFont *sf) {
- int i, isv;
- RefChar *refs, *rnext, *rprev;
- /*int isautorecovery = sf->changed;*/
- KernPair *kp, *prev, *next;
- EncMap *map = sf->map;
- int layer;
- int k,l;
- SplineFont *cidmaster = sf, *ksf;
-
- k = 1;
- if ( sf->subfontcnt!=0 )
- sf = sf->subfonts[0];
-
- ff_progress_change_line2(_("Interpreting Glyphs"));
- for (;;) {
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- SplineChar *sc = sf->glyphs[i];
- /* A changed character is one that has just been recovered */
- /* unchanged characters will already have been fixed up */
- /* Er... maybe not. If the character being recovered is refered to */
- /* by another character then we need to fix up that other char too*/
- /*if ( isautorecovery && !sc->changed )*/
- /*continue;*/
- for ( layer = 0; layer<sc->layer_cnt; ++layer ) {
- rprev = NULL;
- for ( refs = sc->layers[layer].refs; refs!=NULL; refs=rnext ) {
- rnext = refs->next;
- if ( refs->encoded ) { /* Old sfd format */
- if ( refs->orig_pos<map->encmax && map->map[refs->orig_pos]!=-1 )
- refs->orig_pos = map->map[refs->orig_pos];
- else
- refs->orig_pos = sf->glyphcnt;
- refs->encoded = false;
- }
- if ( refs->orig_pos<sf->glyphcnt && refs->orig_pos>=0 )
- refs->sc = sf->glyphs[refs->orig_pos];
- if ( refs->sc!=NULL ) {
- refs->unicode_enc = refs->sc->unicodeenc;
- refs->adobe_enc = getAdobeEnc(refs->sc->name);
- rprev = refs;
- if ( refs->use_my_metrics ) {
- if ( sc->width != refs->sc->width ) {
- LogError(_("Bad sfd file. Glyph %s has width %d even though it should be\n bound to the width of %s which is %d.\n"),
- sc->name, sc->width, refs->sc->name, refs->sc->width );
- sc->width = refs->sc->width;
- }
- }
- } else {
- RefCharFree(refs);
- if ( rprev!=NULL )
- rprev->next = rnext;
- else
- sc->layers[layer].refs = rnext;
- }
- }
- }
- /* In old sfd files we used a peculiar idiom to represent a multiply */
- /* encoded glyph. Fix it up now. Remove the fake glyph and adjust the*/
- /* map */
- /*if ( isautorecovery && !sc->changed )*/
- /*continue;*/
- for ( isv=0; isv<2; ++isv ) {
- for ( prev = NULL, kp=isv?sc->vkerns : sc->kerns; kp!=NULL; kp=next ) {
- int index = (intpt) (kp->sc);
-
- next = kp->next;
- // be impotent if the reference is already to the correct location
- if ( !kp->kcid ) { /* It's encoded (old sfds), else orig */
- if ( index>=map->encmax || map->map[index]==-1 )
- index = sf->glyphcnt;
- else
- index = map->map[index];
- }
- kp->kcid = false;
- ksf = sf;
- if ( cidmaster!=sf ) {
- for ( l=0; l<cidmaster->subfontcnt; ++l ) {
- ksf = cidmaster->subfonts[l];
- if ( index<ksf->glyphcnt && ksf->glyphs[index]!=NULL )
- break;
- }
- }
- if ( index>=ksf->glyphcnt || ksf->glyphs[index]==NULL ) {
- IError( "Bad kerning information in glyph %s\n", sc->name );
- kp->sc = NULL;
- } else {
- kp->sc = ksf->glyphs[index];
- }
-
- if ( kp->sc!=NULL )
- prev = kp;
- else{
- if ( prev!=NULL )
- prev->next = next;
- else if ( isv )
- sc->vkerns = next;
- else
- sc->kerns = next;
- chunkfree(kp,sizeof(KernPair));
- }
- }
- }
- if ( SCDuplicate(sc)!=sc ) {
- SplineChar *base = SCDuplicate(sc);
- int orig = sc->orig_pos, enc = sf->map->backmap[orig], uni = sc->unicodeenc;
- SplineCharFree(sc);
- sf->glyphs[i]=NULL;
- sf->map->backmap[orig] = -1;
- sf->map->map[enc] = base->orig_pos;
- AltUniAdd(base,uni);
- }
- }
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- SplineChar *sc = sf->glyphs[i];
- for ( layer=0; layer<sc->layer_cnt; ++layer ) {
- for ( refs = sf->glyphs[i]->layers[layer].refs; refs!=NULL; refs=refs->next ) {
- SFDFixupRef(sf->glyphs[i],refs,layer);
- }
- }
- ff_progress_next();
- }
- if ( sf->cidmaster==NULL )
- for ( i=sf->glyphcnt-1; i>=0 && sf->glyphs[i]==NULL; --i )
- sf->glyphcnt = i;
- if ( k>=cidmaster->subfontcnt )
- break;
- sf = cidmaster->subfonts[k++];
- }
-}
-
-static void SFDGetPrivate(FILE *sfd,SplineFont *sf) {
- int i, cnt, len;
- char name[200];
- char *pt, *end;
-
- sf->private = calloc(1,sizeof(struct psdict));
- getint(sfd,&cnt);
- sf->private->next = sf->private->cnt = cnt;
- sf->private->values = calloc(cnt,sizeof(char *));
- sf->private->keys = calloc(cnt,sizeof(char *));
- for ( i=0; i<cnt; ++i ) {
- getname(sfd,name);
- sf->private->keys[i] = copy(name);
- getint(sfd,&len);
- nlgetc(sfd); /* skip space */
- pt = sf->private->values[i] = malloc(len+1);
- for ( end = pt+len; pt<end; ++pt )
- *pt = nlgetc(sfd);
- *pt='\0';
- }
-}
-
-static void SFDGetSubrs(FILE *sfd) {
- /* Obselete, parse it in case there are any old sfds */
- int i, cnt, tot, len;
- struct enc85 dec;
-
- getint(sfd,&cnt);
- tot = 0;
- for ( i=0; i<cnt; ++i ) {
- getint(sfd,&len);
- tot += len;
- }
-
- memset(&dec,'\0', sizeof(dec)); dec.pos = -1;
- dec.sfd = sfd;
- for ( i=0; i<tot; ++i )
- Dec85(&dec);
-}
-
-static struct ttflangname *SFDGetLangName(FILE *sfd,struct ttflangname *old) {
- struct ttflangname *cur = chunkalloc(sizeof(struct ttflangname)), *prev;
- int i;
-
- getint(sfd,&cur->lang);
- for ( i=0; i<ttf_namemax; ++i )
- cur->names[i] = SFDReadUTF7Str(sfd);
- if ( old==NULL )
-return( cur );
- for ( prev = old; prev->next !=NULL; prev = prev->next );
- prev->next = cur;
-return( old );
-}
-
-static void SFDGetGasp(FILE *sfd,SplineFont *sf) {
- int i;
-
- getsint(sfd,(int16 *) &sf->gasp_cnt);
- sf->gasp = malloc(sf->gasp_cnt*sizeof(struct gasp));
- for ( i=0; i<sf->gasp_cnt; ++i ) {
- getsint(sfd,(int16 *) &sf->gasp[i].ppem);
- getsint(sfd,(int16 *) &sf->gasp[i].flags);
- }
- getsint(sfd,(int16 *) &sf->gasp_version);
-}
-
-static void SFDGetDesignSize(FILE *sfd,SplineFont *sf) {
- int ch;
- struct otfname *cur;
-
- getsint(sfd,(int16 *) &sf->design_size);
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- if ( isdigit(ch)) {
- getsint(sfd,(int16 *) &sf->design_range_bottom);
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch!='-' )
- ungetc(ch,sfd);
- getsint(sfd,(int16 *) &sf->design_range_top);
- getsint(sfd,(int16 *) &sf->fontstyle_id);
- for (;;) {
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- if ( !isdigit(ch))
- break;
- cur = chunkalloc(sizeof(struct otfname));
- cur->next = sf->fontstyle_name;
- sf->fontstyle_name = cur;
- getsint(sfd,(int16 *) &cur->lang);
- cur->name = SFDReadUTF7Str(sfd);
- }
- }
-}
-
-static void SFDGetOtfFeatName(FILE *sfd,SplineFont *sf) {
- int ch;
- struct otfname *cur;
- struct otffeatname *fn;
-
- fn = chunkalloc(sizeof(struct otffeatname));
- fn->tag = gettag(sfd);
- for (;;) {
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- if ( !isdigit(ch))
- break;
- cur = chunkalloc(sizeof(struct otfname));
- cur->next = fn->names;
- fn->names = cur;
- getsint(sfd,(int16 *) &cur->lang);
- cur->name = SFDReadUTF7Str(sfd);
- }
- fn->next = sf->feat_names;
- sf->feat_names = fn;
-}
-
-static Encoding *SFDGetEncoding(FILE *sfd, char *tok) {
- Encoding *enc = NULL;
- int encname;
-
- if ( getint(sfd,&encname) ) {
- if ( encname<(int)(sizeof(charset_names)/sizeof(charset_names[0])-1) )
- enc = FindOrMakeEncoding(charset_names[encname]);
- } else {
- geteol(sfd,tok);
- enc = FindOrMakeEncoding(tok);
- }
- if ( enc==NULL )
- enc = &custom;
-return( enc );
-}
-
-static enum uni_interp SFDGetUniInterp(FILE *sfd, char *tok, SplineFont *sf) {
- int uniinterp = ui_none;
- int i;
-
- geteol(sfd,tok);
- for ( i=0; unicode_interp_names[i]!=NULL; ++i )
- if ( strcmp(tok,unicode_interp_names[i])==0 ) {
- uniinterp = i;
- break;
- }
- /* These values are now handled by namelists */
- if ( uniinterp == ui_adobe ) {
- sf->for_new_glyphs = NameListByName("AGL with PUA");
- uniinterp = ui_none;
- } else if ( uniinterp == ui_greek ) {
- sf->for_new_glyphs = NameListByName("Greek small caps");
- uniinterp = ui_none;
- } else if ( uniinterp == ui_ams ) {
- sf->for_new_glyphs = NameListByName("AMS Names");
- uniinterp = ui_none;
- }
-
-return( uniinterp );
-}
-
-static void SFDGetNameList(FILE *sfd, char *tok, SplineFont *sf) {
- NameList *nl;
-
- geteol(sfd,tok);
- nl = NameListByName(tok);
- if ( nl==NULL )
- LogError(_("Failed to find NameList: %s"), tok);
- else
- sf->for_new_glyphs = nl;
-}
-
-
-static OTLookup *SFD_ParseNestedLookup(FILE *sfd, SplineFont *sf, int old) {
- uint32 tag;
- int ch, isgpos;
- OTLookup *otl;
- char *name;
-
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='~' )
-return( NULL );
- else if ( old ) {
- if ( ch!='\'' )
-return( NULL );
-
- ungetc(ch,sfd);
- tag = gettag(sfd);
-return( (OTLookup *) (intpt) tag );
- } else {
- ungetc(ch,sfd);
- name = SFDReadUTF7Str(sfd);
- if ( name==NULL )
-return( NULL );
- for ( isgpos=0; isgpos<2; ++isgpos ) {
- for ( otl=isgpos ? sf->gpos_lookups : sf->gsub_lookups; otl!=NULL; otl=otl->next ) {
- if ( strcmp(name,otl->lookup_name )==0 )
- goto break2;
- }
- }
- break2:
- free(name);
-return( otl );
- }
-}
-
-static void SFDParseChainContext(FILE *sfd,SplineFont *sf,FPST *fpst, char *tok, int old) {
- int ch, i, j, k, temp;
- SplineFont *sli_sf = sf->cidmaster ? sf->cidmaster : sf;
-
- fpst->type = strnmatch(tok,"ContextPos",10)==0 ? pst_contextpos :
- strnmatch(tok,"ContextSub",10)==0 ? pst_contextsub :
- strnmatch(tok,"ChainPos",8)==0 ? pst_chainpos :
- strnmatch(tok,"ChainSub",8)==0 ? pst_chainsub : pst_reversesub;
- getname(sfd,tok);
- fpst->format = strmatch(tok,"glyph")==0 ? pst_glyphs :
- strmatch(tok,"class")==0 ? pst_class :
- strmatch(tok,"coverage")==0 ? pst_coverage : pst_reversecoverage;
- if ( old ) {
- fscanf(sfd, "%hu %hu", &((FPST1 *) fpst)->flags, &((FPST1 *) fpst)->script_lang_index );
- if ( ((FPST1 *) fpst)->script_lang_index>=((SplineFont1 *) sli_sf)->sli_cnt && ((FPST1 *) fpst)->script_lang_index!=SLI_NESTED ) {
- static int complained=false;
- if ( ((SplineFont1 *) sli_sf)->sli_cnt==0 )
- IError("'%c%c%c%c' has a script index out of bounds: %d\nYou MUST fix this manually",
- (((FPST1 *) fpst)->tag>>24), (((FPST1 *) fpst)->tag>>16)&0xff, (((FPST1 *) fpst)->tag>>8)&0xff, ((FPST1 *) fpst)->tag&0xff,
- ((FPST1 *) fpst)->script_lang_index );
- else if ( !complained )
- IError("'%c%c%c%c' has a script index out of bounds: %d",
- (((FPST1 *) fpst)->tag>>24), (((FPST1 *) fpst)->tag>>16)&0xff, (((FPST1 *) fpst)->tag>>8)&0xff, ((FPST1 *) fpst)->tag&0xff,
- ((FPST1 *) fpst)->script_lang_index );
- else
- IError("'%c%c%c%c' has a script index out of bounds: %d\n",
- (((FPST1 *) fpst)->tag>>24), (((FPST1 *) fpst)->tag>>16)&0xff, (((FPST1 *) fpst)->tag>>8)&0xff, ((FPST1 *) fpst)->tag&0xff,
- ((FPST1 *) fpst)->script_lang_index );
- if ( ((SplineFont1 *) sli_sf)->sli_cnt!=0 )
- ((FPST1 *) fpst)->script_lang_index = ((SplineFont1 *) sli_sf)->sli_cnt-1;
- complained = true;
- }
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- if ( ch=='\'' ) {
- ungetc(ch,sfd);
- ((FPST1 *) fpst)->tag = gettag(sfd);
- } else
- ungetc(ch,sfd);
- } else {
- fpst->subtable = SFFindLookupSubtableAndFreeName(sf,SFDReadUTF7Str(sfd));
- if ( !fpst->subtable )
- LogError(_("Missing Subtable definition found in chained context"));
- else
- fpst->subtable->fpst = fpst;
- }
- fscanf(sfd, "%hu %hu %hu %hu", &fpst->nccnt, &fpst->bccnt, &fpst->fccnt, &fpst->rule_cnt );
- if ( fpst->nccnt!=0 || fpst->bccnt!=0 || fpst->fccnt!=0 ) {
- fpst->nclass = malloc(fpst->nccnt*sizeof(char *));
- fpst->nclassnames = calloc(fpst->nccnt,sizeof(char *));
- if ( fpst->nccnt!=0 ) fpst->nclass[0] = NULL;
- if ( fpst->bccnt!=0 || fpst->fccnt!=0 ) {
- fpst->bclass = malloc(fpst->bccnt*sizeof(char *));
- fpst->bclassnames = calloc(fpst->bccnt,sizeof(char *));
- if (fpst->bccnt!=0 ) fpst->bclass[0] = NULL;
- fpst->fclass = malloc(fpst->fccnt*sizeof(char *));
- fpst->fclassnames = calloc(fpst->fccnt,sizeof(char *));
- if (fpst->fccnt!=0 ) fpst->fclass[0] = NULL;
- }
- }
-
- for ( j=0; j<3; ++j ) {
- for ( i=1; i<(&fpst->nccnt)[j]; ++i ) {
- getname(sfd,tok);
- if ( i==1 && j==0 && strcmp(tok,"Class0:")==0 )
- i=0;
- getint(sfd,&temp);
- (&fpst->nclass)[j][i] = malloc(temp+1); (&fpst->nclass)[j][i][temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread((&fpst->nclass)[j][i],1,temp,sfd);
- }
- }
-
- fpst->rules = calloc(fpst->rule_cnt,sizeof(struct fpst_rule));
- for ( i=0; i<fpst->rule_cnt; ++i ) {
- switch ( fpst->format ) {
- case pst_glyphs:
- for ( j=0; j<3; ++j ) {
- getname(sfd,tok);
- getint(sfd,&temp);
- (&fpst->rules[i].u.glyph.names)[j] = malloc(temp+1);
- (&fpst->rules[i].u.glyph.names)[j][temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread((&fpst->rules[i].u.glyph.names)[j],1,temp,sfd);
- }
- break;
- case pst_class:
- fscanf( sfd, "%d %d %d", &fpst->rules[i].u.class.ncnt, &fpst->rules[i].u.class.bcnt, &fpst->rules[i].u.class.fcnt );
- for ( j=0; j<3; ++j ) {
- getname(sfd,tok);
- (&fpst->rules[i].u.class.nclasses)[j] = malloc((&fpst->rules[i].u.class.ncnt)[j]*sizeof(uint16));
- for ( k=0; k<(&fpst->rules[i].u.class.ncnt)[j]; ++k ) {
- getusint(sfd,&(&fpst->rules[i].u.class.nclasses)[j][k]);
- }
- }
- break;
- case pst_coverage:
- case pst_reversecoverage:
- fscanf( sfd, "%d %d %d", &fpst->rules[i].u.coverage.ncnt, &fpst->rules[i].u.coverage.bcnt, &fpst->rules[i].u.coverage.fcnt );
- for ( j=0; j<3; ++j ) {
- (&fpst->rules[i].u.coverage.ncovers)[j] = malloc((&fpst->rules[i].u.coverage.ncnt)[j]*sizeof(char *));
- for ( k=0; k<(&fpst->rules[i].u.coverage.ncnt)[j]; ++k ) {
- getname(sfd,tok);
- getint(sfd,&temp);
- (&fpst->rules[i].u.coverage.ncovers)[j][k] = malloc(temp+1);
- (&fpst->rules[i].u.coverage.ncovers)[j][k][temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread((&fpst->rules[i].u.coverage.ncovers)[j][k],1,temp,sfd);
- }
- }
- break;
- default:
- break;
- }
- switch ( fpst->format ) {
- case pst_glyphs:
- case pst_class:
- case pst_coverage:
- getint(sfd,&fpst->rules[i].lookup_cnt);
- fpst->rules[i].lookups = malloc(fpst->rules[i].lookup_cnt*sizeof(struct seqlookup));
- for ( j=k=0; j<fpst->rules[i].lookup_cnt; ++j ) {
- getname(sfd,tok);
- getint(sfd,&fpst->rules[i].lookups[j].seq);
- fpst->rules[i].lookups[k].lookup = SFD_ParseNestedLookup(sfd,sf,old);
- if ( fpst->rules[i].lookups[k].lookup!=NULL )
- ++k;
- }
- fpst->rules[i].lookup_cnt = k;
- break;
- case pst_reversecoverage:
- getname(sfd,tok);
- getint(sfd,&temp);
- fpst->rules[i].u.rcoverage.replacements = malloc(temp+1);
- fpst->rules[i].u.rcoverage.replacements[temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread(fpst->rules[i].u.rcoverage.replacements,1,temp,sfd);
- break;
- default:
- break;
- }
- }
- getname(sfd,tok); /* EndFPST, or one of the ClassName tokens (in newer sfds) */
- while ( strcmp(tok,"ClassNames:")==0 || strcmp(tok,"BClassNames:")==0 ||
- strcmp(tok,"FClassNames:")==0 ) {
- int which = strcmp(tok,"ClassNames:")==0 ? 0 :
- strcmp(tok,"BClassNames:")==0 ? 1 : 2;
- int cnt = (&fpst->nccnt)[which];
- char **classnames = (&fpst->nclassnames)[which];
- int i;
-
- for ( i=0; i<cnt; ++i )
- classnames[i] = SFDReadUTF7Str(sfd);
- getname(sfd,tok); /* EndFPST, or one of the ClassName tokens (in newer sfds) */
- }
-
-}
-
-static void SFDParseStateMachine(FILE *sfd,SplineFont *sf,ASM *sm, char *tok,int old) {
- int i, temp;
-
- sm->type = strnmatch(tok,"MacIndic",8)==0 ? asm_indic :
- strnmatch(tok,"MacContext",10)==0 ? asm_context :
- strnmatch(tok,"MacLigature",11)==0 ? asm_lig :
- strnmatch(tok,"MacSimple",9)==0 ? asm_simple :
- strnmatch(tok,"MacKern",7)==0 ? asm_kern : asm_insert;
- if ( old ) {
- getusint(sfd,&((ASM1 *) sm)->feature);
- nlgetc(sfd); /* Skip comma */
- getusint(sfd,&((ASM1 *) sm)->setting);
- } else {
- sm->subtable = SFFindLookupSubtableAndFreeName(sf,SFDReadUTF7Str(sfd));
- sm->subtable->sm = sm;
- }
- getusint(sfd,&sm->flags);
- getusint(sfd,&sm->class_cnt);
- getusint(sfd,&sm->state_cnt);
-
- sm->classes = malloc(sm->class_cnt*sizeof(char *));
- sm->classes[0] = sm->classes[1] = sm->classes[2] = sm->classes[3] = NULL;
- for ( i=4; i<sm->class_cnt; ++i ) {
- getname(sfd,tok);
- getint(sfd,&temp);
- sm->classes[i] = malloc(temp+1); sm->classes[i][temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread(sm->classes[i],1,temp,sfd);
- }
-
- sm->state = malloc(sm->class_cnt*sm->state_cnt*sizeof(struct asm_state));
- for ( i=0; i<sm->class_cnt*sm->state_cnt; ++i ) {
- getusint(sfd,&sm->state[i].next_state);
- getusint(sfd,&sm->state[i].flags);
- if ( sm->type == asm_context ) {
- sm->state[i].u.context.mark_lookup = SFD_ParseNestedLookup(sfd,sf,old);
- sm->state[i].u.context.cur_lookup = SFD_ParseNestedLookup(sfd,sf,old);
- } else if ( sm->type == asm_insert ) {
- getint(sfd,&temp);
- if ( temp==0 )
- sm->state[i].u.insert.mark_ins = NULL;
- else {
- sm->state[i].u.insert.mark_ins = malloc(temp+1); sm->state[i].u.insert.mark_ins[temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread(sm->state[i].u.insert.mark_ins,1,temp,sfd);
- }
- getint(sfd,&temp);
- if ( temp==0 )
- sm->state[i].u.insert.cur_ins = NULL;
- else {
- sm->state[i].u.insert.cur_ins = malloc(temp+1); sm->state[i].u.insert.cur_ins[temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread(sm->state[i].u.insert.cur_ins,1,temp,sfd);
- }
- } else if ( sm->type == asm_kern ) {
- int j;
- getint(sfd,&sm->state[i].u.kern.kcnt);
- if ( sm->state[i].u.kern.kcnt!=0 )
- sm->state[i].u.kern.kerns = malloc(sm->state[i].u.kern.kcnt*sizeof(int16));
- for ( j=0; j<sm->state[i].u.kern.kcnt; ++j ) {
- getint(sfd,&temp);
- sm->state[i].u.kern.kerns[j] = temp;
- }
- }
- }
- getname(sfd,tok); /* EndASM */
-}
-
-static struct macname *SFDParseMacNames(FILE *sfd, char *tok) {
- struct macname *head=NULL, *last=NULL, *cur;
- int enc, lang, len;
- char *pt;
- int ch;
-
- while ( strcmp(tok,"MacName:")==0 ) {
- cur = chunkalloc(sizeof(struct macname));
- if ( last==NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
-
- getint(sfd,&enc);
- getint(sfd,&lang);
- getint(sfd,&len);
- cur->enc = enc;
- cur->lang = lang;
- cur->name = pt = malloc(len+1);
-
- while ( (ch=nlgetc(sfd))==' ');
- if ( ch=='"' )
- ch = nlgetc(sfd);
- while ( ch!='"' && ch!=EOF && pt<cur->name+len ) {
- if ( ch=='\\' ) {
- *pt = (nlgetc(sfd)-'0')<<6;
- *pt |= (nlgetc(sfd)-'0')<<3;
- *pt |= (nlgetc(sfd)-'0');
- } else
- *pt++ = ch;
- ch = nlgetc(sfd);
- }
- *pt = '\0';
- getname(sfd,tok);
- }
-return( head );
-}
-
-MacFeat *SFDParseMacFeatures(FILE *sfd, char *tok) {
- MacFeat *cur, *head=NULL, *last=NULL;
- struct macsetting *slast, *scur;
- int feat, ism, def, set;
-
- while ( strcmp(tok,"MacFeat:")==0 ) {
- cur = chunkalloc(sizeof(MacFeat));
- if ( last==NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
-
- getint(sfd,&feat); getint(sfd,&ism); getint(sfd, &def);
- cur->feature = feat; cur->ismutex = ism; cur->default_setting = def;
- getname(sfd,tok);
- cur->featname = SFDParseMacNames(sfd,tok);
- slast = NULL;
- while ( strcmp(tok,"MacSetting:")==0 ) {
- scur = chunkalloc(sizeof(struct macsetting));
- if ( slast==NULL )
- cur->settings = scur;
- else
- slast->next = scur;
- slast = scur;
-
- getint(sfd,&set);
- scur->setting = set;
- getname(sfd,tok);
- scur->setname = SFDParseMacNames(sfd,tok);
- }
- }
-return( head );
-}
-
-static char *SFDParseMMSubroutine(FILE *sfd) {
- char buffer[400], *sofar=calloc(1,1);
- const char *endtok = "EndMMSubroutine";
- int len = 0, blen, first=true;
-
- while ( fgets(buffer,sizeof(buffer),sfd)!=NULL ) {
- if ( strncmp(buffer,endtok,strlen(endtok))==0 )
- break;
- if ( first ) {
- first = false;
- if ( strcmp(buffer,"\n")==0 )
- continue;
- }
- blen = strlen(buffer);
- sofar = realloc(sofar,len+blen+1);
- strcpy(sofar+len,buffer);
- len += blen;
- }
- if ( len>0 && sofar[len-1]=='\n' )
- sofar[len-1] = '\0';
-return( sofar );
-}
-
-static void MMInferStuff(MMSet *mm) {
- int i,j;
-
- if ( mm==NULL )
-return;
- if ( mm->apple ) {
- for ( i=0; i<mm->axis_count; ++i ) {
- for ( j=0; j<mm->axismaps[i].points; ++j ) {
- real val = mm->axismaps[i].blends[j];
- if ( val == -1. )
- mm->axismaps[i].min = mm->axismaps[i].designs[j];
- else if ( val==0 )
- mm->axismaps[i].def = mm->axismaps[i].designs[j];
- else if ( val==1 )
- mm->axismaps[i].max = mm->axismaps[i].designs[j];
- }
- }
- }
-}
-
-static void SFDSizeMap(EncMap *map,int glyphcnt,int enccnt) {
- if ( glyphcnt>map->backmax ) {
- map->backmap = realloc(map->backmap,glyphcnt*sizeof(int));
- memset(map->backmap+map->backmax,-1,(glyphcnt-map->backmax)*sizeof(int));
- map->backmax = glyphcnt;
- }
- if ( enccnt>map->encmax ) {
- map->map = realloc(map->map,enccnt*sizeof(int));
- memset(map->map+map->backmax,-1,(enccnt-map->encmax)*sizeof(int));
- map->encmax = map->enccount = enccnt;
- }
-}
-
-static SplineFont *SFD_GetFont(FILE *sfd,SplineFont *cidmaster,char *tok,
- int fromdir, char *dirname, float sfdversion);
-
-static void SFD_DoAltUnis(SplineFont *sf) {
- int i;
- struct altuni *alt;
- SplineChar *sc;
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( (sc = sf->glyphs[i])!=NULL ) {
- for ( alt = sc->altuni; alt!=NULL; alt = alt->next ) {
- if ( alt->vs==-1 && alt->fid==0 ) {
- int enc = EncFromUni(alt->unienc,sf->map->enc);
- if ( enc!=-1 )
- SFDSetEncMap(sf,sc->orig_pos,enc);
- }
- }
- }
-}
-
-static void SFDParseLookup(FILE *sfd,OTLookup *otl) {
- int ch;
- struct lookup_subtable *sub, *lastsub;
- FeatureScriptLangList *fl, *lastfl;
- struct scriptlanglist *sl, *lastsl;
- int i, lcnt, lmax=0;
- uint32 *langs=NULL;
- char *subname;
-
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='{' ) {
- lastsub = NULL;
- while ( (subname = SFDReadUTF7Str(sfd))!=NULL ) {
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- sub = chunkalloc(sizeof(struct lookup_subtable));
- sub->subtable_name = subname;
- sub->lookup = otl;
- switch ( otl->lookup_type ) {
- case gsub_single:
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='(' ) {
- sub->suffix = SFDReadUTF7Str(sfd);
- while ( (ch=nlgetc(sfd))==' ' );
- /* slurp final paren */
- } else
- ungetc(ch,sfd);
- sub->per_glyph_pst_or_kern = true;
- break;
- case gsub_multiple: case gsub_alternate: case gsub_ligature:
- case gpos_single:
- sub->per_glyph_pst_or_kern = true;
- break;
- case gpos_pair:
- if ( (ch=nlgetc(sfd))=='(' ) {
- ch = nlgetc(sfd);
- sub->vertical_kerning = (ch=='1');
- nlgetc(sfd); /* slurp final paren */
- ch=nlgetc(sfd);
- }
- if ( ch=='[' ) {
- getsint(sfd,&sub->separation);
- nlgetc(sfd); /* slurp comma */
- getsint(sfd,&sub->minkern);
- nlgetc(sfd); /* slurp comma */
- ch = nlgetc(sfd);
- sub->kerning_by_touch = ((ch-'0')&1)?1:0;
- sub->onlyCloser = ((ch-'0')&2)?1:0;
- sub->dontautokern = ((ch-'0')&4)?1:0;
- nlgetc(sfd); /* slurp final bracket */
- } else {
- ungetc(ch,sfd);
- }
- sub->per_glyph_pst_or_kern = true;
- break;
- case gpos_cursive: case gpos_mark2base: case gpos_mark2ligature: case gpos_mark2mark:
- sub->anchor_classes = true;
- break;
- default:
- break;
- }
- if ( lastsub==NULL )
- otl->subtables = sub;
- else
- lastsub->next = sub;
- lastsub = sub;
- }
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='}' )
- ch = nlgetc(sfd);
- }
- while ( ch==' ' )
- ch = nlgetc(sfd);
- if ( ch=='[' ) {
- lastfl = NULL;
- for (;;) {
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch==']' )
- break;
- fl = chunkalloc(sizeof(FeatureScriptLangList));
- if ( lastfl==NULL )
- otl->features = fl;
- else
- lastfl->next = fl;
- lastfl = fl;
- if ( ch=='<' ) {
- int ft=0,fs=0;
- fscanf(sfd,"%d,%d>", &ft, &fs );
- fl->ismac = true;
- fl->featuretag = (ft<<16) | fs;
- } else if ( ch=='\'' ) {
- ungetc(ch,sfd);
- fl->featuretag = gettag(sfd);
- }
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='(' ) {
- lastsl = NULL;
- for (;;) {
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch==')' )
- break;
- sl = chunkalloc(sizeof(struct scriptlanglist));
- if ( lastsl==NULL )
- fl->scripts = sl;
- else
- lastsl->next = sl;
- lastsl = sl;
- if ( ch=='\'' ) {
- ungetc(ch,sfd);
- sl->script = gettag(sfd);
- }
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='<' ) {
- lcnt = 0;
- for (;;) {
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='>' )
- break;
- if ( ch=='\'' ) {
- ungetc(ch,sfd);
- if ( lcnt>=lmax )
- langs = realloc(langs,(lmax+=10)*sizeof(uint32));
- langs[lcnt++] = gettag(sfd);
- }
- }
- sl->lang_cnt = lcnt;
- if ( lcnt>MAX_LANG )
- sl->morelangs = malloc((lcnt-MAX_LANG)*sizeof(uint32));
- for ( i=0; i<lcnt; ++i ) {
- if ( i<MAX_LANG )
- sl->langs[i] = langs[i];
- else
- sl->morelangs[i-MAX_LANG] = langs[i];
- }
- }
- }
- }
- }
- }
- free(langs);
-}
-
-static void SFDParseMathItem(FILE *sfd,SplineFont *sf,char *tok) {
- /* The first five characters of a math item's keyword will be "MATH:" */
- /* the rest will be one of the entries in math_constants_descriptor */
- int i;
- struct MATH *math;
-
- if ( (math = sf->MATH) == NULL )
- math = sf->MATH = calloc(1,sizeof(struct MATH));
- for ( i=0; math_constants_descriptor[i].script_name!=NULL; ++i ) {
- char *name = math_constants_descriptor[i].script_name;
- int len = strlen( name );
- if ( strncmp(tok+5,name,len)==0 && tok[5+len] == ':' && tok[6+len]=='\0' ) {
- int16 *pos = (int16 *) (((char *) (math)) + math_constants_descriptor[i].offset );
- getsint(sfd,pos);
- if ( math_constants_descriptor[i].devtab_offset != -1 ) {
- DeviceTable **devtab = (DeviceTable **) (((char *) (math)) + math_constants_descriptor[i].devtab_offset );
- *devtab = SFDReadDeviceTable(sfd,*devtab);
- break;
- }
- }
- }
-}
-
-static struct baselangextent *ParseBaseLang(FILE *sfd) {
- struct baselangextent *bl;
- struct baselangextent *cur, *last;
- int ch;
-
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='{' ) {
- bl = chunkalloc(sizeof(struct baselangextent));
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- if ( ch=='\'' )
- bl->lang = gettag(sfd); /* Lang or Feature tag, or nothing */
- getsint(sfd,&bl->descent);
- getsint(sfd,&bl->ascent);
- last = NULL;
- while ( (ch=nlgetc(sfd))==' ' );
- while ( ch=='{' ) {
- ungetc(ch,sfd);
- cur = ParseBaseLang(sfd);
- if ( last==NULL )
- bl->features = cur;
- else
- last->next = cur;
- last = cur;
- while ( (ch=nlgetc(sfd))==' ' );
- }
- if ( ch!='}' ) ungetc(ch,sfd);
-return( bl );
- }
-return( NULL );
-}
-
-static struct basescript *SFDParseBaseScript(FILE *sfd,struct Base *base) {
- struct basescript *bs;
- int i, ch;
- struct baselangextent *last, *cur;
-
- if ( base==NULL )
-return(NULL);
-
- bs = chunkalloc(sizeof(struct basescript));
-
- bs->script = gettag(sfd);
- getint(sfd,&bs->def_baseline);
- if ( base->baseline_cnt!=0 ) {
- bs->baseline_pos = calloc(base->baseline_cnt,sizeof(int16));
- for ( i=0; i<base->baseline_cnt; ++i )
- getsint(sfd, &bs->baseline_pos[i]);
- }
- while ( (ch=nlgetc(sfd))==' ' );
- last = NULL;
- while ( ch=='{' ) {
- ungetc(ch,sfd);
- cur = ParseBaseLang(sfd);
- if ( last==NULL )
- bs->langs = cur;
- else
- last->next = cur;
- last = cur;
- while ( (ch=nlgetc(sfd))==' ' );
- }
-return( bs );
-}
-
-static struct Base *SFDParseBase(FILE *sfd) {
- struct Base *base = chunkalloc(sizeof(struct Base));
- int i;
-
- getint(sfd,&base->baseline_cnt);
- if ( base->baseline_cnt!=0 ) {
- base->baseline_tags = malloc(base->baseline_cnt*sizeof(uint32));
- for ( i=0; i<base->baseline_cnt; ++i )
- base->baseline_tags[i] = gettag(sfd);
- }
-return( base );
-}
-
-static OTLookup **SFDLookupList(FILE *sfd,SplineFont *sf) {
- int ch;
- OTLookup *space[100], **buf=space, *otl, **ret;
- int lcnt=0, lmax=100;
- char *name;
-
- for (;;) {
- while ( (ch=nlgetc(sfd))==' ' );
- if ( ch=='\n' || ch==EOF )
- break;
- ungetc(ch,sfd);
- name = SFDReadUTF7Str(sfd);
- otl = SFFindLookup(sf,name);
- free(name);
- if ( otl!=NULL ) {
- if ( lcnt>lmax ) {
- if ( buf==space ) {
- buf = malloc((lmax=lcnt+50)*sizeof(OTLookup *));
- memcpy(buf,space,sizeof(space));
- } else
- buf = realloc(buf,(lmax+=50)*sizeof(OTLookup *));
- }
- buf[lcnt++] = otl;
- }
- }
- if ( lcnt==0 )
-return( NULL );
-
- ret = malloc((lcnt+1)*sizeof(OTLookup *));
- memcpy(ret,buf,lcnt*sizeof(OTLookup *));
- ret[lcnt] = NULL;
-return( ret );
-}
-
-static void SFDParseJustify(FILE *sfd, SplineFont *sf, char *tok) {
- Justify *last=NULL, *cur;
- struct jstf_lang *jlang, *llast;
- int p = 0,ch;
-
- while ( strcmp(tok,"Justify:")==0 ) {
- cur = chunkalloc(sizeof(Justify));
- if ( last==NULL )
- sf->justify = cur;
- else
- last->next = cur;
- last = cur;
- llast = jlang = NULL;
- cur->script = gettag(sfd);
- while ( getname(sfd,tok)>0 ) {
- if ( strcmp(tok,"Justify:")==0 || strcmp(tok,"EndJustify")==0 )
- break;
- if ( strcmp(tok,"JstfExtender:")==0 ) {
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- geteol(sfd,tok);
- cur->extenders = copy(tok);
- } else if ( strcmp(tok,"JstfLang:")==0 ) {
- jlang = chunkalloc(sizeof(struct jstf_lang));
- if ( llast==NULL )
- cur->langs = jlang;
- else
- llast->next = jlang;
- llast = jlang;
- jlang->lang = gettag(sfd);
- p = -1;
- getint(sfd,&jlang->cnt);
- if ( jlang->cnt!=0 )
- jlang->prios = calloc(jlang->cnt,sizeof(struct jstf_prio));
- } else if ( strcmp(tok,"JstfPrio:")==0 ) {
- if ( jlang!=NULL ) {
- ++p;
- if ( p>= jlang->cnt ) {
- jlang->prios = realloc(jlang->prios,(p+1)*sizeof(struct jstf_prio));
- memset(jlang->prios+jlang->cnt,0,(p+1-jlang->cnt)*sizeof(struct jstf_prio));
- jlang->cnt = p+1;
- }
- }
- } else if ( strcmp(tok,"JstfEnableShrink:" )==0 ) {
- if ( p<0 ) p=0;
- if ( jlang!=NULL && p<jlang->cnt )
- jlang->prios[p].enableShrink = SFDLookupList(sfd,sf);
- } else if ( strcmp(tok,"JstfDisableShrink:" )==0 ) {
- if ( p<0 ) p=0;
- if ( jlang!=NULL && p<jlang->cnt )
- jlang->prios[p].disableShrink = SFDLookupList(sfd,sf);
- } else if ( strcmp(tok,"JstfMaxShrink:" )==0 ) {
- if ( p<0 ) p=0;
- if ( jlang!=NULL && p<jlang->cnt )
- jlang->prios[p].maxShrink = SFDLookupList(sfd,sf);
- } else if ( strcmp(tok,"JstfEnableExtend:" )==0 ) {
- if ( p<0 ) p=0;
- if ( jlang!=NULL && p<jlang->cnt )
- jlang->prios[p].enableExtend = SFDLookupList(sfd,sf);
- } else if ( strcmp(tok,"JstfDisableExtend:" )==0 ) {
- if ( p<0 ) p=0;
- if ( jlang!=NULL && p<jlang->cnt )
- jlang->prios[p].disableExtend = SFDLookupList(sfd,sf);
- } else if ( strcmp(tok,"JstfMaxExtend:" )==0 ) {
- if ( p<0 ) p=0;
- if ( jlang!=NULL && p<jlang->cnt )
- jlang->prios[p].maxExtend = SFDLookupList(sfd,sf);
- } else
- geteol(sfd,tok);
- }
- }
-}
-
-
-
-void SFD_GetFontMetaDataData_Init( SFD_GetFontMetaDataData* d )
-{
- memset( d, 0, sizeof(SFD_GetFontMetaDataData));
-}
-
-/**
- *
- * @return true if the function matched the current token. If true
- * is returned the caller should avoid further processing of 'tok'
- * a return of false means that the caller might try
- * to handle the token with another function or drop it.
- */
-bool SFD_GetFontMetaData( FILE *sfd,
- char *tok,
- SplineFont *sf,
- SFD_GetFontMetaDataData* d )
-{
- int ch;
- int i;
- KernClass* kc = 0;
- int old;
- char val[2000];
-
- // This allows us to assume we can dereference d
- // at all times
- static SFD_GetFontMetaDataData my_static_d;
- static int my_static_d_is_virgin = 1;
- if( !d )
- {
- if( my_static_d_is_virgin )
- {
- my_static_d_is_virgin = 0;
- SFD_GetFontMetaDataData_Init( &my_static_d );
- }
- d = &my_static_d;
- }
-
- if ( strmatch(tok,"FontName:")==0 )
- {
- geteol(sfd,val);
- sf->fontname = copy(val);
- }
- else if ( strmatch(tok,"FullName:")==0 )
- {
- geteol(sfd,val);
- sf->fullname = copy(val);
- }
- else if ( strmatch(tok,"FamilyName:")==0 )
- {
- geteol(sfd,val);
- sf->familyname = copy(val);
- }
- else if ( strmatch(tok,"DefaultBaseFilename:")==0 )
- {
- geteol(sfd,val);
- sf->defbasefilename = copy(val);
- }
- else if ( strmatch(tok,"Weight:")==0 )
- {
- getprotectedname(sfd,val);
- sf->weight = copy(val);
- }
- else if ( strmatch(tok,"Copyright:")==0 )
- {
- sf->copyright = getquotedeol(sfd);
- }
- else if ( strmatch(tok,"Comments:")==0 )
- {
- char *temp = getquotedeol(sfd);
- sf->comments = latin1_2_utf8_copy(temp);
- free(temp);
- }
- else if ( strmatch(tok,"UComments:")==0 )
- {
- sf->comments = SFDReadUTF7Str(sfd);
- }
- else if ( strmatch(tok,"FontLog:")==0 )
- {
- sf->fontlog = SFDReadUTF7Str(sfd);
- }
- else if ( strmatch(tok,"Version:")==0 )
- {
- geteol(sfd,val);
- sf->version = copy(val);
- }
- else if ( strmatch(tok,"StyleMapFamilyName:")==0 )
- {
- sf->styleMapFamilyName = SFDReadUTF7Str(sfd);
- }
- /* Legacy attribute for StyleMapFamilyName. Deprecated. */
- else if ( strmatch(tok,"OS2FamilyName:")==0 )
- {
- if (sf->styleMapFamilyName == NULL)
- sf->styleMapFamilyName = SFDReadUTF7Str(sfd);
- }
- else if ( strmatch(tok,"FONDName:")==0 )
- {
- geteol(sfd,val);
- sf->fondname = copy(val);
- }
- else if ( strmatch(tok,"ItalicAngle:")==0 )
- {
- getreal(sfd,&sf->italicangle);
- }
- else if ( strmatch(tok,"StrokeWidth:")==0 )
- {
- getreal(sfd,&sf->strokewidth);
- }
- else if ( strmatch(tok,"UnderlinePosition:")==0 )
- {
- getreal(sfd,&sf->upos);
- }
- else if ( strmatch(tok,"UnderlineWidth:")==0 )
- {
- getreal(sfd,&sf->uwidth);
- }
- else if ( strmatch(tok,"ModificationTime:")==0 )
- {
- getlonglong(sfd,&sf->modificationtime);
- }
- else if ( strmatch(tok,"CreationTime:")==0 )
- {
- getlonglong(sfd,&sf->creationtime);
- d->hadtimes = true;
- }
- else if ( strmatch(tok,"PfmFamily:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->pfminfo.pfmfamily = temp;
- sf->pfminfo.pfmset = true;
- }
- else if ( strmatch(tok,"LangName:")==0 )
- {
- sf->names = SFDGetLangName(sfd,sf->names);
- }
- else if ( strmatch(tok,"GaspTable:")==0 )
- {
- SFDGetGasp(sfd,sf);
- }
- else if ( strmatch(tok,"DesignSize:")==0 )
- {
- SFDGetDesignSize(sfd,sf);
- }
- else if ( strmatch(tok,"OtfFeatName:")==0 )
- {
- SFDGetOtfFeatName(sfd,sf);
- }
- else if ( strmatch(tok,"PfmWeight:")==0 || strmatch(tok,"TTFWeight:")==0 )
- {
- getsint(sfd,&sf->pfminfo.weight);
- sf->pfminfo.pfmset = true;
- }
- else if ( strmatch(tok,"TTFWidth:")==0 )
- {
- getsint(sfd,&sf->pfminfo.width);
- sf->pfminfo.pfmset = true;
- }
- else if ( strmatch(tok,"Panose:")==0 )
- {
- int temp,i;
- for ( i=0; i<10; ++i )
- {
- getint(sfd,&temp);
- sf->pfminfo.panose[i] = temp;
- }
- sf->pfminfo.panose_set = true;
- }
- else if ( strmatch(tok,"LineGap:")==0 )
- {
- getsint(sfd,&sf->pfminfo.linegap);
- sf->pfminfo.pfmset = true;
- }
- else if ( strmatch(tok,"VLineGap:")==0 )
- {
- getsint(sfd,&sf->pfminfo.vlinegap);
- sf->pfminfo.pfmset = true;
- }
- else if ( strmatch(tok,"HheadAscent:")==0 )
- {
- getsint(sfd,&sf->pfminfo.hhead_ascent);
- }
- else if ( strmatch(tok,"HheadAOffset:")==0 )
- {
- int temp;
- getint(sfd,&temp); sf->pfminfo.hheadascent_add = temp;
- }
- else if ( strmatch(tok,"HheadDescent:")==0 )
- {
- getsint(sfd,&sf->pfminfo.hhead_descent);
- }
- else if ( strmatch(tok,"HheadDOffset:")==0 )
- {
- int temp;
- getint(sfd,&temp); sf->pfminfo.hheaddescent_add = temp;
- }
- else if ( strmatch(tok,"OS2TypoLinegap:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_typolinegap);
- }
- else if ( strmatch(tok,"OS2TypoAscent:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_typoascent);
- }
- else if ( strmatch(tok,"OS2TypoAOffset:")==0 )
- {
- int temp;
- getint(sfd,&temp); sf->pfminfo.typoascent_add = temp;
- }
- else if ( strmatch(tok,"OS2TypoDescent:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_typodescent);
- }
- else if ( strmatch(tok,"OS2TypoDOffset:")==0 )
- {
- int temp;
- getint(sfd,&temp); sf->pfminfo.typodescent_add = temp;
- }
- else if ( strmatch(tok,"OS2WinAscent:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_winascent);
- }
- else if ( strmatch(tok,"OS2WinDescent:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_windescent);
- }
- else if ( strmatch(tok,"OS2WinAOffset:")==0 )
- {
- int temp;
- getint(sfd,&temp); sf->pfminfo.winascent_add = temp;
- }
- else if ( strmatch(tok,"OS2WinDOffset:")==0 )
- {
- int temp;
- getint(sfd,&temp); sf->pfminfo.windescent_add = temp;
- }
- else if ( strmatch(tok,"HHeadAscent:")==0 )
- {
- // DUPLICATE OF ABOVE
- getsint(sfd,&sf->pfminfo.hhead_ascent);
- }
- else if ( strmatch(tok,"HHeadDescent:")==0 )
- {
- // DUPLICATE OF ABOVE
- getsint(sfd,&sf->pfminfo.hhead_descent);
- }
-
- else if ( strmatch(tok,"HHeadAOffset:")==0 )
- {
- // DUPLICATE OF ABOVE
- int temp;
- getint(sfd,&temp); sf->pfminfo.hheadascent_add = temp;
- }
- else if ( strmatch(tok,"HHeadDOffset:")==0 )
- {
- // DUPLICATE OF ABOVE
- int temp;
- getint(sfd,&temp); sf->pfminfo.hheaddescent_add = temp;
- }
- else if ( strmatch(tok,"MacStyle:")==0 )
- {
- getsint(sfd,&sf->macstyle);
- }
- else if ( strmatch(tok,"OS2SubXSize:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_subxsize);
- sf->pfminfo.subsuper_set = true;
- }
- else if ( strmatch(tok,"OS2SubYSize:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_subysize);
- }
- else if ( strmatch(tok,"OS2SubXOff:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_subxoff);
- }
- else if ( strmatch(tok,"OS2SubYOff:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_subyoff);
- }
- else if ( strmatch(tok,"OS2SupXSize:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_supxsize);
- }
- else if ( strmatch(tok,"OS2SupYSize:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_supysize);
- }
- else if ( strmatch(tok,"OS2SupXOff:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_supxoff);
- }
- else if ( strmatch(tok,"OS2SupYOff:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_supyoff);
- }
- else if ( strmatch(tok,"OS2StrikeYSize:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_strikeysize);
- }
- else if ( strmatch(tok,"OS2StrikeYPos:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_strikeypos);
- }
- else if ( strmatch(tok,"OS2CapHeight:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_capheight);
- }
- else if ( strmatch(tok,"OS2XHeight:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_xheight);
- }
- else if ( strmatch(tok,"OS2FamilyClass:")==0 )
- {
- getsint(sfd,&sf->pfminfo.os2_family_class);
- }
- else if ( strmatch(tok,"OS2Vendor:")==0 )
- {
- while ( isspace(nlgetc(sfd)));
- sf->pfminfo.os2_vendor[0] = nlgetc(sfd);
- sf->pfminfo.os2_vendor[1] = nlgetc(sfd);
- sf->pfminfo.os2_vendor[2] = nlgetc(sfd);
- sf->pfminfo.os2_vendor[3] = nlgetc(sfd);
- (void) nlgetc(sfd);
- }
- else if ( strmatch(tok,"OS2CodePages:")==0 )
- {
- gethexints(sfd,sf->pfminfo.codepages,2);
- sf->pfminfo.hascodepages = true;
- }
- else if ( strmatch(tok,"OS2UnicodeRanges:")==0 )
- {
- gethexints(sfd,sf->pfminfo.unicoderanges,4);
- sf->pfminfo.hasunicoderanges = true;
- }
- else if ( strmatch(tok,"TopEncoding:")==0 )
- {
- /* Obsolete */
- getint(sfd,&sf->top_enc);
- }
- else if ( strmatch(tok,"Ascent:")==0 )
- {
- getint(sfd,&sf->ascent);
- }
- else if ( strmatch(tok,"Descent:")==0 )
- {
- getint(sfd,&sf->descent);
- }
- else if ( strmatch(tok,"InvalidEm:")==0 )
- {
- getint(sfd,&sf->invalidem);
- }
- else if ( strmatch(tok,"woffMajor:")==0 )
- {
- getint(sfd,&sf->woffMajor);
- }
- else if ( strmatch(tok,"woffMinor:")==0 )
- {
- getint(sfd,&sf->woffMinor);
- }
- else if ( strmatch(tok,"woffMetadata:")==0 )
- {
- sf->woffMetadata = SFDReadUTF7Str(sfd);
- }
- else if ( strmatch(tok,"sfntRevision:")==0 )
- {
- gethex(sfd,(uint32 *)&sf->sfntRevision);
- }
- else if ( strmatch(tok,"LayerCount:")==0 )
- {
- d->had_layer_cnt = true;
- getint(sfd,&sf->layer_cnt);
- if ( sf->layer_cnt>2 ) {
- sf->layers = realloc(sf->layers,sf->layer_cnt*sizeof(LayerInfo));
- memset(sf->layers+2,0,(sf->layer_cnt-2)*sizeof(LayerInfo));
- }
- }
- else if ( strmatch(tok,"Layer:")==0 )
- {
- // TODO: Read the U. F. O. path.
- int layer, o2, bk;
- getint(sfd,&layer);
- if ( layer>=sf->layer_cnt ) {
- sf->layers = realloc(sf->layers,(layer+1)*sizeof(LayerInfo));
- memset(sf->layers+sf->layer_cnt,0,((layer+1)-sf->layer_cnt)*sizeof(LayerInfo));
- sf->layer_cnt = layer+1;
- }
- getint(sfd,&o2);
- sf->layers[layer].order2 = o2;
- sf->layers[layer].background = layer==ly_back;
- /* Used briefly, now background is after layer name */
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- if ( ch!='"' ) {
- getint(sfd,&bk);
- sf->layers[layer].background = bk;
- }
- /* end of section for obsolete format */
- sf->layers[layer].name = SFDReadUTF7Str(sfd);
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- if ( ch!='\n' ) {
- getint(sfd,&bk);
- sf->layers[layer].background = bk;
- }
- while ( (ch=nlgetc(sfd))==' ' );
- ungetc(ch,sfd);
- if ( ch!='\n' ) { sf->layers[layer].ufo_path = SFDReadUTF7Str(sfd); }
- }
- else if ( strmatch(tok,"PreferredKerning:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->preferred_kerning = temp;
- }
- else if ( strmatch(tok,"StrokedFont:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->strokedfont = temp;
- }
- else if ( strmatch(tok,"MultiLayer:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->multilayer = temp;
- }
- else if ( strmatch(tok,"NeedsXUIDChange:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->changed_since_xuidchanged = temp;
- }
- else if ( strmatch(tok,"VerticalOrigin:")==0 )
- {
- // this doesn't seem to be written ever.
- int temp;
- getint(sfd,&temp);
- sf->hasvmetrics = true;
- }
- else if ( strmatch(tok,"HasVMetrics:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->hasvmetrics = temp;
- }
- else if ( strmatch(tok,"Justify:")==0 )
- {
- SFDParseJustify(sfd,sf,tok);
- }
- else if ( strmatch(tok,"BaseHoriz:")==0 )
- {
- sf->horiz_base = SFDParseBase(sfd);
- d->last_base = sf->horiz_base;
- d->last_base_script = NULL;
- }
- else if ( strmatch(tok,"BaseVert:")==0 )
- {
- sf->vert_base = SFDParseBase(sfd);
- d->last_base = sf->vert_base;
- d->last_base_script = NULL;
- }
- else if ( strmatch(tok,"BaseScript:")==0 )
- {
- struct basescript *bs = SFDParseBaseScript(sfd,d->last_base);
- if ( d->last_base==NULL )
- {
- BaseScriptFree(bs);
- bs = NULL;
- }
- else if ( d->last_base_script!=NULL )
- d->last_base_script->next = bs;
- else
- d->last_base->scripts = bs;
- d->last_base_script = bs;
- }
- else if ( strmatch(tok,"StyleMap:")==0 )
- {
- gethex(sfd,(uint32 *)&sf->pfminfo.stylemap);
- }
- /* Legacy attribute for StyleMap. Deprecated. */
- else if ( strmatch(tok,"OS2StyleName:")==0 )
- {
- char* sname = SFDReadUTF7Str(sfd);
- if (sf->pfminfo.stylemap == -1) {
- if (strcmp(sname,"bold italic")==0) sf->pfminfo.stylemap = 0x21;
- else if (strcmp(sname,"bold")==0) sf->pfminfo.stylemap = 0x20;
- else if (strcmp(sname,"italic")==0) sf->pfminfo.stylemap = 0x01;
- else if (strcmp(sname,"regular")==0) sf->pfminfo.stylemap = 0x40;
- }
- free(sname);
- }
- else if ( strmatch(tok,"FSType:")==0 )
- {
- getsint(sfd,&sf->pfminfo.fstype);
- }
- else if ( strmatch(tok,"OS2Version:")==0 )
- {
- getsint(sfd,&sf->os2_version);
- }
- else if ( strmatch(tok,"OS2_WeightWidthSlopeOnly:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->weight_width_slope_only = temp;
- }
- else if ( strmatch(tok,"OS2_UseTypoMetrics:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->use_typo_metrics = temp;
- }
- else if ( strmatch(tok,"UseUniqueID:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->use_uniqueid = temp;
- }
- else if ( strmatch(tok,"UseXUID:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->use_xuid = temp;
- }
- else if ( strmatch(tok,"UniqueID:")==0 )
- {
- getint(sfd,&sf->uniqueid);
- }
- else if ( strmatch(tok,"XUID:")==0 )
- {
- geteol(sfd,tok);
- sf->xuid = copy(tok);
- }
- else if ( strmatch(tok,"Lookup:")==0 )
- {
- OTLookup *otl;
- int temp;
- otl = chunkalloc(sizeof(OTLookup));
- getint(sfd,&temp); otl->lookup_type = temp;
- getint(sfd,&temp); otl->lookup_flags = temp;
- getint(sfd,&temp); otl->store_in_afm = temp;
- otl->lookup_name = SFDReadUTF7Str(sfd);
- if ( otl->lookup_type<gpos_single ) {
- if ( d->lastsotl==NULL )
- sf->gsub_lookups = otl;
- else
- d->lastsotl->next = otl;
- d->lastsotl = otl;
- } else {
- if ( d->lastpotl==NULL )
- sf->gpos_lookups = otl;
- else
- d->lastpotl->next = otl;
- d->lastpotl = otl;
- }
- SFDParseLookup(sfd,otl);
- }
- else if ( strmatch(tok,"MarkAttachClasses:")==0 )
- {
- getint(sfd,&sf->mark_class_cnt);
- sf->mark_classes = malloc(sf->mark_class_cnt*sizeof(char *));
- sf->mark_class_names = malloc(sf->mark_class_cnt*sizeof(char *));
- sf->mark_classes[0] = NULL; sf->mark_class_names[0] = NULL;
- for ( i=1; i<sf->mark_class_cnt; ++i )
- {
- /* Class 0 is unused */
- int temp;
- while ( (temp=nlgetc(sfd))=='\n' || temp=='\r' ); ungetc(temp,sfd);
- sf->mark_class_names[i] = SFDReadUTF7Str(sfd);
- getint(sfd,&temp);
- sf->mark_classes[i] = malloc(temp+1); sf->mark_classes[i][temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread(sf->mark_classes[i],1,temp,sfd);
- }
- }
- else if ( strmatch(tok,"MarkAttachSets:")==0 )
- {
- getint(sfd,&sf->mark_set_cnt);
- sf->mark_sets = malloc(sf->mark_set_cnt*sizeof(char *));
- sf->mark_set_names = malloc(sf->mark_set_cnt*sizeof(char *));
- for ( i=0; i<sf->mark_set_cnt; ++i )
- {
- /* Set 0 is used */
- int temp;
- while ( (temp=nlgetc(sfd))=='\n' || temp=='\r' ); ungetc(temp,sfd);
- sf->mark_set_names[i] = SFDReadUTF7Str(sfd);
- getint(sfd,&temp);
- sf->mark_sets[i] = malloc(temp+1); sf->mark_sets[i][temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread(sf->mark_sets[i],1,temp,sfd);
- }
- }
- else if ( strmatch(tok,"KernClass2:")==0 || strmatch(tok,"VKernClass2:")==0 ||
- strmatch(tok,"KernClass:")==0 || strmatch(tok,"VKernClass:")==0 ||
- strmatch(tok,"KernClass3:")==0 || strmatch(tok,"VKernClass3:")==0 )
- {
- int kernclassversion = 0;
- int isv = tok[0]=='V';
- int kcvoffset = (isv ? 10 : 9); //Offset to read kerning class version
- if (isdigit(tok[kcvoffset])) kernclassversion = tok[kcvoffset] - '0';
- int temp, classstart=1;
- int old = (kernclassversion == 0);
-
- if ( (sf->sfd_version<2)!=old ) {
- IError( "Version mixup in Kerning Classes of sfd file." );
- exit(1);
- }
- kc = chunkalloc(old ? sizeof(KernClass1) : sizeof(KernClass));
- getint(sfd,&kc->first_cnt);
- ch=nlgetc(sfd);
- if ( ch=='+' )
- classstart = 0;
- else
- ungetc(ch,sfd);
- getint(sfd,&kc->second_cnt);
- if ( old ) {
- getint(sfd,&temp); ((KernClass1 *) kc)->sli = temp;
- getint(sfd,&temp); ((KernClass1 *) kc)->flags = temp;
- } else {
- kc->subtable = SFFindLookupSubtableAndFreeName(sf,SFDReadUTF7Str(sfd));
- if ( kc->subtable!=NULL && kc->subtable->kc==NULL )
- kc->subtable->kc = kc;
- else {
- if ( kc->subtable==NULL )
- LogError(_("Bad SFD file, missing subtable in kernclass defn.\n") );
- else
- LogError(_("Bad SFD file, two kerning classes assigned to the same subtable: %s\n"), kc->subtable->subtable_name );
- kc->subtable = NULL;
- }
- }
- kc->firsts = calloc(kc->first_cnt,sizeof(char *));
- kc->seconds = calloc(kc->second_cnt,sizeof(char *));
- kc->offsets = calloc(kc->first_cnt*kc->second_cnt,sizeof(int16));
- kc->adjusts = calloc(kc->first_cnt*kc->second_cnt,sizeof(DeviceTable));
- if (kernclassversion >= 3) {
- kc->firsts_flags = calloc(kc->first_cnt, sizeof(int));
- kc->seconds_flags = calloc(kc->second_cnt, sizeof(int));
- kc->offsets_flags = calloc(kc->first_cnt*kc->second_cnt, sizeof(int));
- kc->firsts_names = calloc(kc->first_cnt, sizeof(char*));
- kc->seconds_names = calloc(kc->second_cnt, sizeof(char*));
- }
- kc->firsts[0] = NULL;
- for ( i=classstart; i<kc->first_cnt; ++i ) {
- if (kernclassversion < 3) {
- getint(sfd,&temp);
- kc->firsts[i] = malloc(temp+1); kc->firsts[i][temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread(kc->firsts[i],1,temp,sfd);
- } else {
- getint(sfd,&kc->firsts_flags[i]);
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd); if (ch == '\n' || ch == EOF) continue;
- kc->firsts_names[i] = SFDReadUTF7Str(sfd);
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd); if (ch == '\n' || ch == EOF) continue;
- kc->firsts[i] = SFDReadUTF7Str(sfd);
- if (kc->firsts[i] == NULL) kc->firsts[i] = copy(""); // In certain places, this must be defined.
- while ((ch=nlgetc(sfd)) == ' ' || ch == '\n'); ungetc(ch, sfd);
- }
- }
- kc->seconds[0] = NULL;
- for ( i=1; i<kc->second_cnt; ++i ) {
- if (kernclassversion < 3) {
- getint(sfd,&temp);
- kc->seconds[i] = malloc(temp+1); kc->seconds[i][temp] = '\0';
- nlgetc(sfd); /* skip space */
- fread(kc->seconds[i],1,temp,sfd);
- } else {
- getint(sfd,&temp);
- kc->seconds_flags[i] = temp;
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd); if (ch == '\n' || ch == EOF) continue;
- kc->seconds_names[i] = SFDReadUTF7Str(sfd);
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd); if (ch == '\n' || ch == EOF) continue;
- kc->seconds[i] = SFDReadUTF7Str(sfd);
- if (kc->seconds[i] == NULL) kc->seconds[i] = copy(""); // In certain places, this must be defined.
- while ((ch=nlgetc(sfd)) == ' ' || ch == '\n'); ungetc(ch, sfd);
- }
- }
- for ( i=0; i<kc->first_cnt*kc->second_cnt; ++i ) {
- if (kernclassversion >= 3) {
- getint(sfd,&temp);
- kc->offsets_flags[i] = temp;
- }
- getint(sfd,&temp);
- kc->offsets[i] = temp;
- SFDReadDeviceTable(sfd,&kc->adjusts[i]);
- }
- if ( !old && kc->subtable == NULL ) {
- /* Error. Ignore it. Free it. Whatever */;
- } else if ( !isv ) {
- if ( d->lastkc==NULL )
- sf->kerns = kc;
- else
- d->lastkc->next = kc;
- d->lastkc = kc;
- } else {
- if ( d->lastvkc==NULL )
- sf->vkerns = kc;
- else
- d->lastvkc->next = kc;
- d->lastvkc = kc;
- }
- }
- else if ( strmatch(tok,"ContextPos2:")==0 || strmatch(tok,"ContextSub2:")==0 ||
- strmatch(tok,"ChainPos2:")==0 || strmatch(tok,"ChainSub2:")==0 ||
- strmatch(tok,"ReverseChain2:")==0 ||
- strmatch(tok,"ContextPos:")==0 || strmatch(tok,"ContextSub:")==0 ||
- strmatch(tok,"ChainPos:")==0 || strmatch(tok,"ChainSub:")==0 ||
- strmatch(tok,"ReverseChain:")==0 )
- {
- FPST *fpst;
- int old;
- if ( strchr(tok,'2')!=NULL ) {
- old = false;
- fpst = chunkalloc(sizeof(FPST));
- } else {
- old = true;
- fpst = chunkalloc(sizeof(FPST1));
- }
- if ( (sf->sfd_version<2)!=old ) {
- IError( "Version mixup in FPST of sfd file." );
- exit(1);
- }
- if ( d->lastfp==NULL )
- sf->possub = fpst;
- else
- d->lastfp->next = fpst;
- d->lastfp = fpst;
- SFDParseChainContext(sfd,sf,fpst,tok,old);
- }
- else if ( strmatch(tok,"Group:")==0 ) {
- struct ff_glyphclasses *grouptmp = calloc(1, sizeof(struct ff_glyphclasses));
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd);
- grouptmp->classname = SFDReadUTF7Str(sfd);
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd);
- grouptmp->glyphs = SFDReadUTF7Str(sfd);
- while ((ch=nlgetc(sfd)) == ' ' || ch == '\n'); ungetc(ch, sfd);
- if (d->lastgroup != NULL) d->lastgroup->next = grouptmp; else sf->groups = grouptmp;
- d->lastgroup = grouptmp;
- }
- else if ( strmatch(tok,"GroupKern:")==0 ) {
- int temp = 0;
- struct ff_rawoffsets *kerntmp = calloc(1, sizeof(struct ff_rawoffsets));
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd);
- kerntmp->left = SFDReadUTF7Str(sfd);
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd);
- kerntmp->right = SFDReadUTF7Str(sfd);
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd);
- getint(sfd,&temp);
- kerntmp->offset = temp;
- while ((ch=nlgetc(sfd)) == ' ' || ch == '\n'); ungetc(ch, sfd);
- if (d->lastgroupkern != NULL) d->lastgroupkern->next = kerntmp; else sf->groupkerns = kerntmp;
- d->lastgroupkern = kerntmp;
- }
- else if ( strmatch(tok,"GroupVKern:")==0 ) {
- int temp = 0;
- struct ff_rawoffsets *kerntmp = calloc(1, sizeof(struct ff_rawoffsets));
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd);
- kerntmp->left = SFDReadUTF7Str(sfd);
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd);
- kerntmp->right = SFDReadUTF7Str(sfd);
- while ((ch=nlgetc(sfd)) == ' '); ungetc(ch, sfd);
- getint(sfd,&temp);
- kerntmp->offset = temp;
- while ((ch=nlgetc(sfd)) == ' ' || ch == '\n'); ungetc(ch, sfd);
- if (d->lastgroupvkern != NULL) d->lastgroupvkern->next = kerntmp; else sf->groupvkerns = kerntmp;
- d->lastgroupvkern = kerntmp;
- }
- else if ( strmatch(tok,"MacIndic2:")==0 || strmatch(tok,"MacContext2:")==0 ||
- strmatch(tok,"MacLigature2:")==0 || strmatch(tok,"MacSimple2:")==0 ||
- strmatch(tok,"MacKern2:")==0 || strmatch(tok,"MacInsert2:")==0 ||
- strmatch(tok,"MacIndic:")==0 || strmatch(tok,"MacContext:")==0 ||
- strmatch(tok,"MacLigature:")==0 || strmatch(tok,"MacSimple:")==0 ||
- strmatch(tok,"MacKern:")==0 || strmatch(tok,"MacInsert:")==0 )
- {
- ASM *sm;
- if ( strchr(tok,'2')!=NULL ) {
- old = false;
- sm = chunkalloc(sizeof(ASM));
- } else {
- old = true;
- sm = chunkalloc(sizeof(ASM1));
- }
- if ( (sf->sfd_version<2)!=old ) {
- IError( "Version mixup in state machine of sfd file." );
- exit(1);
- }
- if ( d->lastsm==NULL )
- sf->sm = sm;
- else
- d->lastsm->next = sm;
- d->lastsm = sm;
- SFDParseStateMachine(sfd,sf,sm,tok,old);
- }
- else if ( strmatch(tok,"MacFeat:")==0 )
- {
- sf->features = SFDParseMacFeatures(sfd,tok);
- }
- else if ( strmatch(tok,"TtfTable:")==0 )
- {
- /* Old, binary format */
- /* still used for maxp and unknown tables */
- SFDGetTtfTable(sfd,sf,d->lastttf);
- }
- else if ( strmatch(tok,"TtTable:")==0 )
- {
- /* text instruction format */
- SFDGetTtTable(sfd,sf,d->lastttf);
- }
-
-
- ///////////////////
-
- else if ( strmatch(tok,"ShortTable:")==0 )
- {
- // only read, not written.
- /* text number format */
- SFDGetShortTable(sfd,sf,d->lastttf);
- }
- else
- {
- //
- // We didn't have a match ourselves.
- //
- return false;
- }
- return true;
-}
-
-static SplineFont *SFD_GetFont( FILE *sfd,SplineFont *cidmaster,char *tok,
- int fromdir, char *dirname, float sfdversion )
-{
- SplineFont *sf;
- int realcnt, i, eof, mappos=-1, ch;
- struct table_ordering *lastord = NULL;
- struct axismap *lastaxismap = NULL;
- struct named_instance *lastnamedinstance = NULL;
- int pushedbacktok = false;
- Encoding *enc = &custom;
- struct remap *remap = NULL;
- int haddupenc;
- int old_style_order2 = false;
- int had_layer_cnt=false;
-
- orig_pos = 0; /* Only used for compatibility with extremely old sfd files */
-
- sf = SplineFontEmpty();
- sf->sfd_version = sfdversion;
- sf->cidmaster = cidmaster;
- sf->uni_interp = ui_unset;
- SFD_GetFontMetaDataData d;
- SFD_GetFontMetaDataData_Init( &d );
- while ( 1 ) {
- if ( pushedbacktok )
- pushedbacktok = false;
- else if ( (eof = getname(sfd,tok))!=1 ) {
- if ( eof==-1 )
- break;
- geteol(sfd,tok);
- continue;
- }
-
-
- bool wasMetadata = SFD_GetFontMetaData( sfd, tok, sf, &d );
- had_layer_cnt = d.had_layer_cnt;
- if( wasMetadata )
- {
- // we have handled the token entirely
- // inside SFD_GetFontMetaData() move to next token.
- continue;
- }
-
-
- if ( strmatch(tok,"DisplaySize:")==0 )
- {
- getint(sfd,&sf->display_size);
- }
- else if ( strmatch(tok,"DisplayLayer:")==0 )
- {
- getint(sfd,&sf->display_layer);
- }
- else if ( strmatch(tok,"ExtremaBound:")==0 )
- {
- getint(sfd,&sf->extrema_bound);
- }
- else if ( strmatch(tok,"WidthSeparation:")==0 )
- {
- getint(sfd,&sf->width_separation);
- }
- else if ( strmatch(tok,"WinInfo:")==0 )
- {
- int temp1, temp2;
- getint(sfd,&sf->top_enc);
- getint(sfd,&temp1);
- getint(sfd,&temp2);
- if ( sf->top_enc<=0 ) sf->top_enc=-1;
- if ( temp1<=0 ) temp1 = 16;
- if ( temp2<=0 ) temp2 = 4;
- sf->desired_col_cnt = temp1;
- sf->desired_row_cnt = temp2;
- }
- else if ( strmatch(tok,"AntiAlias:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->display_antialias = temp;
- }
- else if ( strmatch(tok,"FitToEm:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->display_bbsized = temp;
- }
- else if ( strmatch(tok,"Order2:")==0 )
- {
- getint(sfd,&old_style_order2);
- sf->grid.order2 = old_style_order2;
- sf->layers[ly_back].order2 = old_style_order2;
- sf->layers[ly_fore].order2 = old_style_order2;
- }
- else if ( strmatch(tok,"GridOrder2:")==0 )
- {
- int o2;
- getint(sfd,&o2);
- sf->grid.order2 = o2;
- }
- else if ( strmatch(tok,"Encoding:")==0 )
- {
- enc = SFDGetEncoding(sfd,tok);
- if ( sf->map!=NULL ) sf->map->enc = enc;
- }
- else if ( strmatch(tok,"OldEncoding:")==0 )
- {
- /* old_encname =*/ (void) SFDGetEncoding(sfd,tok);
- }
- else if ( strmatch(tok,"UnicodeInterp:")==0 )
- {
- sf->uni_interp = SFDGetUniInterp(sfd,tok,sf);
- }
- else if ( strmatch(tok,"NameList:")==0 )
- {
- SFDGetNameList(sfd,tok,sf);
- }
- else if ( strmatch(tok,"Compacted:")==0 )
- {
- int temp;
- getint(sfd,&temp);
- sf->compacted = temp;
- }
- else if ( strmatch(tok,"Registry:")==0 )
- {
- geteol(sfd,tok);
- sf->cidregistry = copy(tok);
- }
-
-
- //////////
-
-
- else if ( strmatch(tok,"Ordering:")==0 ) {
- geteol(sfd,tok);
- sf->ordering = copy(tok);
- } else if ( strmatch(tok,"Supplement:")==0 ) {
- getint(sfd,&sf->supplement);
- } else if ( strmatch(tok,"RemapN:")==0 ) {
- int n;
- getint(sfd,&n);
- remap = calloc(n+1,sizeof(struct remap));
- remap[n].infont = -1;
- mappos = 0;
- if ( sf->map!=NULL ) sf->map->remap = remap;
- } else if ( strmatch(tok,"Remap:")==0 ) {
- uint32 f, l; int p;
- gethex(sfd,&f);
- gethex(sfd,&l);
- getint(sfd,&p);
- if ( remap!=NULL && remap[mappos].infont!=-1 ) {
- remap[mappos].firstenc = f;
- remap[mappos].lastenc = l;
- remap[mappos].infont = p;
- mappos++;
- }
- } else if ( strmatch(tok,"CIDVersion:")==0 ) {
- real temp;
- getreal(sfd,&temp);
- sf->cidversion = temp;
- } else if ( strmatch(tok,"Grid")==0 ) {
- sf->grid.splines = SFDGetSplineSet(sfd,sf->grid.order2);
- } else if ( strmatch(tok,"ScriptLang:")==0 ) {
- int i,j,k;
- int imax, jmax, kmax;
- if ( sf->sfd_version==0 || sf->sfd_version>=2 ) {
- IError( "Script lang lists should not happen in version 2 sfd files." );
- SplineFontFree(sf);
- return NULL;
- }
- getint(sfd,&imax);
- ((SplineFont1 *) sf)->sli_cnt = imax;
- ((SplineFont1 *) sf)->script_lang = malloc((imax+1)*sizeof(struct script_record *));
- ((SplineFont1 *) sf)->script_lang[imax] = NULL;
- for ( i=0; i<imax; ++i ) {
- getint(sfd,&jmax);
- ((SplineFont1 *) sf)->script_lang[i] = malloc((jmax+1)*sizeof(struct script_record));
- ((SplineFont1 *) sf)->script_lang[i][jmax].script = 0;
- for ( j=0; j<jmax; ++j ) {
- ((SplineFont1 *) sf)->script_lang[i][j].script = gettag(sfd);
- getint(sfd,&kmax);
- ((SplineFont1 *) sf)->script_lang[i][j].langs = malloc((kmax+1)*sizeof(uint32));
- ((SplineFont1 *) sf)->script_lang[i][j].langs[kmax] = 0;
- for ( k=0; k<kmax; ++k ) {
- ((SplineFont1 *) sf)->script_lang[i][j].langs[k] = gettag(sfd);
- }
- }
- }
- } else if ( strmatch(tok,"TeXData:")==0 ) {
- int temp;
- getint(sfd,&temp);
- sf->texdata.type = temp;
- getint(sfd, &temp);
- if ( sf->design_size==0 ) {
- sf->design_size = (5*temp+(1<<18))>>19;
- }
- for ( i=0; i<22; ++i ) {
- int foo;
- getint(sfd,&foo);
- sf->texdata.params[i]=foo;
- }
- } else if ( strnmatch(tok,"AnchorClass",11)==0 ) {
- char *name;
- AnchorClass *lastan = NULL, *an;
- int old = strchr(tok,'2')==NULL;
- while ( (name=SFDReadUTF7Str(sfd))!=NULL ) {
- an = chunkalloc(old ? sizeof(AnchorClass1) : sizeof(AnchorClass));
- an->name = name;
- if ( old ) {
- getname(sfd,tok);
- if ( tok[0]=='0' && tok[1]=='\0' )
- ((AnchorClass1 *) an)->feature_tag = 0;
- else {
- if ( tok[1]=='\0' ) { tok[1]=' '; tok[2] = 0; }
- if ( tok[2]=='\0' ) { tok[2]=' '; tok[3] = 0; }
- if ( tok[3]=='\0' ) { tok[3]=' '; tok[4] = 0; }
- ((AnchorClass1 *) an)->feature_tag = (tok[0]<<24) | (tok[1]<<16) | (tok[2]<<8) | tok[3];
- }
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- ungetc(ch,sfd);
- if ( isdigit(ch)) {
- int temp;
- getint(sfd,&temp);
- ((AnchorClass1 *) an)->flags = temp;
- }
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- ungetc(ch,sfd);
- if ( isdigit(ch)) {
- int temp;
- getint(sfd,&temp);
- ((AnchorClass1 *) an)->script_lang_index = temp;
- } else
- ((AnchorClass1 *) an)->script_lang_index = 0xffff; /* Will be fixed up later */
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- ungetc(ch,sfd);
- if ( isdigit(ch)) {
- int temp;
- getint(sfd,&temp);
- ((AnchorClass1 *) an)->merge_with = temp;
- } else
- ((AnchorClass1 *) an)->merge_with = 0xffff; /* Will be fixed up later */
- } else {
- char *subtable_name = SFDReadUTF7Str(sfd);
- if ( subtable_name!=NULL) /* subtable is optional */
- an->subtable = SFFindLookupSubtableAndFreeName(sf,subtable_name);
- }
- while ( (ch=nlgetc(sfd))==' ' || ch=='\t' );
- ungetc(ch,sfd);
- if ( isdigit(ch) ) {
- /* Early versions of SfdFormat 2 had a number here */
- int temp;
- getint(sfd,&temp);
- an->type = temp;
- } else if ( old ) {
- if ( ((AnchorClass1 *) an)->feature_tag==CHR('c','u','r','s'))
- an->type = act_curs;
- else if ( ((AnchorClass1 *) an)->feature_tag==CHR('m','k','m','k'))
- an->type = act_mkmk;
- else
- an->type = act_mark;
- } else {
- an->type = act_mark;
- if( an->subtable && an->subtable->lookup )
- {
- switch ( an->subtable->lookup->lookup_type )
- {
- case gpos_cursive:
- an->type = act_curs;
- break;
- case gpos_mark2base:
- an->type = act_mark;
- break;
- case gpos_mark2ligature:
- an->type = act_mklg;
- break;
- case gpos_mark2mark:
- an->type = act_mkmk;
- break;
- default:
- an->type = act_mark;
- break;
- }
- }
- }
- if ( lastan==NULL )
- sf->anchor = an;
- else
- lastan->next = an;
- lastan = an;
- }
- } else if ( strncmp(tok,"MATH:",5)==0 ) {
- SFDParseMathItem(sfd,sf,tok);
- } else if ( strmatch(tok,"TableOrder:")==0 ) {
- int temp;
- struct table_ordering *ord;
- if ( sfdversion==0 || sfdversion>=2 ) {
- IError("Table ordering specified in version 2 sfd file.\n" );
- SplineFontFree(sf);
- return NULL;
- }
- ord = chunkalloc(sizeof(struct table_ordering));
- ord->table_tag = gettag(sfd);
- getint(sfd,&temp);
- ord->ordered_features = malloc((temp+1)*sizeof(uint32));
- ord->ordered_features[temp] = 0;
- for ( i=0; i<temp; ++i ) {
- while ( isspace((ch=nlgetc(sfd))) );
- if ( ch=='\'' ) {
- ungetc(ch,sfd);
- ord->ordered_features[i] = gettag(sfd);
- } else if ( ch=='<' ) {
- int f,s;
- fscanf(sfd,"%d,%d>", &f, &s );
- ord->ordered_features[i] = (f<<16)|s;
- }
- }
- if ( lastord==NULL )
- ((SplineFont1 *) sf)->orders = ord;
- else
- lastord->next = ord;
- lastord = ord;
- } else if ( strmatch(tok,"BeginPrivate:")==0 ) {
- SFDGetPrivate(sfd,sf);
- } else if ( strmatch(tok,"BeginSubrs:")==0 ) { /* leave in so we don't croak on old sfd files */
- SFDGetSubrs(sfd);
- } else if ( strmatch(tok,"PickledData:")==0 ) {
- if (sf->python_persistent != NULL) {
-#if defined(_NO_PYTHON)
- free( sf->python_persistent ); /* It's a string of pickled data which we leave as a string */
-#else
- PyFF_FreePythonPersistent(sf->python_persistent);
-#endif
- sf->python_persistent = NULL;
- }
- sf->python_persistent = SFDUnPickle(sfd, 0);
- sf->python_persistent_has_lists = 0;
- } else if ( strmatch(tok,"PickledDataWithLists:")==0 ) {
- if (sf->python_persistent != NULL) {
-#if defined(_NO_PYTHON)
- free( sf->python_persistent ); /* It's a string of pickled data which we leave as a string */
-#else
- PyFF_FreePythonPersistent(sf->python_persistent);
-#endif
- sf->python_persistent = NULL;
- }
- sf->python_persistent = SFDUnPickle(sfd, 1);
- sf->python_persistent_has_lists = 1;
- } else if ( strmatch(tok,"MMCounts:")==0 ) {
- MMSet *mm = sf->mm = chunkalloc(sizeof(MMSet));
- getint(sfd,&mm->instance_count);
- getint(sfd,&mm->axis_count);
- ch = nlgetc(sfd);
- if ( ch!=' ' )
- ungetc(ch,sfd);
- else { int temp;
- getint(sfd,&temp);
- mm->apple = temp;
- getint(sfd,&mm->named_instance_count);
- }
- mm->instances = calloc(mm->instance_count,sizeof(SplineFont *));
- mm->positions = malloc(mm->instance_count*mm->axis_count*sizeof(real));
- mm->defweights = malloc(mm->instance_count*sizeof(real));
- mm->axismaps = calloc(mm->axis_count,sizeof(struct axismap));
- if ( mm->named_instance_count!=0 )
- mm->named_instances = calloc(mm->named_instance_count,sizeof(struct named_instance));
- } else if ( strmatch(tok,"MMAxis:")==0 ) {
- MMSet *mm = sf->mm;
- if ( mm!=NULL ) {
- for ( i=0; i<mm->axis_count; ++i ) {
- getname(sfd,tok);
- mm->axes[i] = copy(tok);
- }
- }
- } else if ( strmatch(tok,"MMPositions:")==0 ) {
- MMSet *mm = sf->mm;
- if ( mm!=NULL ) {
- for ( i=0; i<mm->axis_count*mm->instance_count; ++i )
- getreal(sfd,&mm->positions[i]);
- }
- } else if ( strmatch(tok,"MMWeights:")==0 ) {
- MMSet *mm = sf->mm;
- if ( mm!=NULL ) {
- for ( i=0; i<mm->instance_count; ++i )
- getreal(sfd,&mm->defweights[i]);
- }
- } else if ( strmatch(tok,"MMAxisMap:")==0 ) {
- MMSet *mm = sf->mm;
- if ( mm!=NULL ) {
- int index, points;
- getint(sfd,&index); getint(sfd,&points);
- mm->axismaps[index].points = points;
- mm->axismaps[index].blends = malloc(points*sizeof(real));
- mm->axismaps[index].designs = malloc(points*sizeof(real));
- for ( i=0; i<points; ++i ) {
- getreal(sfd,&mm->axismaps[index].blends[i]);
- while ( (ch=nlgetc(sfd))!=EOF && isspace(ch));
- ungetc(ch,sfd);
- if ( (ch=nlgetc(sfd))!='=' )
- ungetc(ch,sfd);
- else if ( (ch=nlgetc(sfd))!='>' )
- ungetc(ch,sfd);
- getreal(sfd,&mm->axismaps[index].designs[i]);
- }
- lastaxismap = &mm->axismaps[index];
- lastnamedinstance = NULL;
- }
- } else if ( strmatch(tok,"MMNamedInstance:")==0 ) {
- MMSet *mm = sf->mm;
- if ( mm!=NULL ) {
- int index;
- getint(sfd,&index);
- mm->named_instances[index].coords = malloc(mm->axis_count*sizeof(real));
- for ( i=0; i<mm->axis_count; ++i )
- getreal(sfd,&mm->named_instances[index].coords[i]);
- lastnamedinstance = &mm->named_instances[index];
- lastaxismap = NULL;
- }
- } else if ( strmatch(tok,"MacName:")==0 ) {
- struct macname *names = SFDParseMacNames(sfd,tok);
- if ( lastaxismap!=NULL )
- lastaxismap->axisnames = names;
- else if ( lastnamedinstance !=NULL )
- lastnamedinstance->names = names;
- pushedbacktok = true;
- } else if ( strmatch(tok,"MMCDV:")==0 ) {
- MMSet *mm = sf->mm;
- if ( mm!=NULL )
- mm->cdv = SFDParseMMSubroutine(sfd);
- } else if ( strmatch(tok,"MMNDV:")==0 ) {
- MMSet *mm = sf->mm;
- if ( mm!=NULL )
- mm->ndv = SFDParseMMSubroutine(sfd);
- } else if ( strmatch(tok,"BeginMMFonts:")==0 ) {
- int cnt;
- getint(sfd,&cnt);
- getint(sfd,&realcnt);
- ff_progress_change_stages(cnt);
- ff_progress_change_total(realcnt);
- MMInferStuff(sf->mm);
- break;
- } else if ( strmatch(tok,"BeginSubFonts:")==0 ) {
- getint(sfd,&sf->subfontcnt);
- sf->subfonts = calloc(sf->subfontcnt,sizeof(SplineFont *));
- getint(sfd,&realcnt);
- sf->map = EncMap1to1(realcnt);
- ff_progress_change_stages(2);
- ff_progress_change_total(realcnt);
- break;
- } else if ( strmatch(tok,"BeginChars:")==0 ) {
- int charcnt;
- getint(sfd,&charcnt);
- if (charcnt<enc->char_cnt) {
- IError("SFD file specifies too few slots for its encoding.\n" );
-exit( 1 );
- }
- if ( getint(sfd,&realcnt)!=1 || realcnt==-1 )
- realcnt = charcnt;
- else
- ++realcnt; /* value saved is max glyph, not glyph cnt */
- ff_progress_change_total(realcnt);
- sf->glyphcnt = sf->glyphmax = realcnt;
- sf->glyphs = calloc(realcnt,sizeof(SplineChar *));
- if ( cidmaster!=NULL ) {
- sf->map = cidmaster->map;
- } else {
- sf->map = EncMapNew(charcnt,realcnt,enc);
- sf->map->remap = remap;
- }
- SFDSizeMap(sf->map,sf->glyphcnt,charcnt);
- break;
-#if HANYANG
- } else if ( strmatch(tok,"BeginCompositionRules")==0 ) {
- sf->rules = SFDReadCompositionRules(sfd);
-#endif
- } else {
- /* If we don't understand it, skip it */
- geteol(sfd,tok);
- }
- }
-
- if ( sf->subfontcnt!=0 ) {
- ff_progress_change_stages(2*sf->subfontcnt);
- for ( i=0; i<sf->subfontcnt; ++i ) {
- if ( i!=0 )
- ff_progress_next_stage();
- sf->subfonts[i] = SFD_GetFont(sfd,sf,tok,fromdir,dirname,sfdversion);
- }
- } else if ( sf->mm!=NULL ) {
- MMSet *mm = sf->mm;
- ff_progress_change_stages(2*(mm->instance_count+1));
- for ( i=0; i<mm->instance_count; ++i ) {
- if ( i!=0 )
- ff_progress_next_stage();
- mm->instances[i] = SFD_GetFont(sfd,NULL,tok,fromdir,dirname,sfdversion);
- EncMapFree(mm->instances[i]->map); mm->instances[i]->map=NULL;
- mm->instances[i]->mm = mm;
- }
- ff_progress_next_stage();
- mm->normal = SFD_GetFont(sfd,NULL,tok,fromdir,dirname,sfdversion);
- mm->normal->mm = mm;
- sf->mm = NULL;
- SplineFontFree(sf);
- sf = mm->normal;
- if ( sf->map->enc!=&custom ) {
- EncMap *map;
- MMMatchGlyphs(mm); /* sfd files from before the encoding change can have mismatched orig pos */
- map = EncMapFromEncoding(sf,sf->map->enc);
- EncMapFree(sf->map);
- sf->map = map;
- }
- } else {
- while ( SFDGetChar(sfd,sf,had_layer_cnt)!=NULL ) {
- ff_progress_next();
- }
- ff_progress_next_stage();
- }
- haddupenc = false;
- while ( getname(sfd,tok)==1 ) {
- if ( strcmp(tok,"EndSplineFont")==0 || strcmp(tok,"EndSubSplineFont")==0 )
- break;
- else if ( strmatch(tok,"DupEnc:")==0 ) {
- int enc, orig;
- haddupenc = true;
- if ( getint(sfd,&enc) && getint(sfd,&orig) && sf->map!=NULL ) {
- SFDSetEncMap(sf,orig,enc);
- }
- }
- }
- if ( sf->cidmaster==NULL )
- SFDFixupRefs(sf);
-
- if ( !haddupenc )
- SFD_DoAltUnis(sf);
- else
- AltUniFigure(sf,sf->map,true);
- if ( !d.hadtimes )
- SFTimesFromFile(sf,sfd);
-return( sf );
-}
-
-void SFTimesFromFile(SplineFont *sf,FILE *file) {
- struct stat b;
- if ( fstat(fileno(file),&b)!=-1 ) {
- sf->modificationtime = b.st_mtime;
- sf->creationtime = b.st_mtime;
- }
-}
-
-static double SFDStartsCorrectly(FILE *sfd,char *tok) {
- real dval;
- int ch;
-
- if ( getname(sfd,tok)!=1 )
-return( -1 );
- if ( strcmp(tok,"SplineFontDB:")!=0 )
-return( -1 );
- if ( getreal(sfd,&dval)!=1 )
-return( -1 );
- /* We don't yet generate version 4 of sfd. It will contain backslash */
- /* newline in the middle of very long lines. I've put in code to parse */
- /* this sequence, but I don't yet generate it. I want the parser to */
- /* perculate through to users before I introduce the new format so there */
- /* will be fewer complaints when it happens */
- // MIQ: getreal() can give some funky rounding errors it seems
- if ( dval!=2.0 && dval!=3.0
- && !(dval > 3.09 && dval <= 3.11)
- && dval!=4.0 )
- {
- LogError("Bad SFD Version number %.1f", dval );
-return( -1 );
- }
- ch = nlgetc(sfd); ungetc(ch,sfd);
- if ( ch!='\r' && ch!='\n' )
-return( -1 );
-
-return( dval );
-}
-
-static SplineFont *SFD_Read(char *filename,FILE *sfd, int fromdir) {
- SplineFont *sf=NULL;
- char tok[2000];
- double version;
-
- if ( sfd==NULL ) {
- if ( fromdir ) {
- snprintf(tok,sizeof(tok),"%s/" FONT_PROPS, filename );
- sfd = fopen(tok,"r");
- } else
- sfd = fopen(filename,"r");
- }
- if ( sfd==NULL )
-return( NULL );
- ff_locale_t tmplocale, oldlocale; // Declare temporary locale storage.
- switch_to_c_locale(&tmplocale, &oldlocale); // Switch to the C locale temporarily and cache the old locale.
- ff_progress_change_stages(2);
- if ( (version = SFDStartsCorrectly(sfd,tok))!=-1 )
- sf = SFD_GetFont(sfd,NULL,tok,fromdir,filename,version);
- switch_to_old_locale(&tmplocale, &oldlocale); // Switch to the cached locale.
- if ( sf!=NULL ) {
- sf->filename = copy(filename);
- if ( sf->mm!=NULL ) {
- int i;
- for ( i=0; i<sf->mm->instance_count; ++i )
- sf->mm->instances[i]->filename = copy(filename);
- }
- }
- fclose(sfd);
-return( sf );
-}
-
-SplineFont *SFDRead(char *filename) {
-return( SFD_Read(filename,NULL,false));
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/sfd1.c b/dviware/dvisvgm/libs/ff-woff/fontforge/sfd1.c
deleted file mode 100644
index 159748302a..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/sfd1.c
+++ /dev/null
@@ -1,164 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "fontforge.h"
-#include "sfd1.h"
-
-/* This file contains the routines needed to process an old style sfd file and*/
-/* convert it into the new format */
-
-static void SFGuessScriptList(SplineFont1 *sf) {
- uint32 scripts[32], script;
- int i, scnt=0, j;
-
- for ( i=0; i<sf->sf.glyphcnt; ++i ) if ( sf->sf.glyphs[i]!=NULL ) {
- script = SCScriptFromUnicode(sf->sf.glyphs[i]);
- if ( script!=0 && script!=DEFAULT_SCRIPT ) {
- for ( j=scnt-1; j>=0 ; --j )
- if ( scripts[j]==script )
- break;
- if ( j<0 ) {
- scripts[scnt++] = script;
- if ( scnt>=32 )
- break;
- }
- }
- }
- if ( scnt==0 )
- scripts[scnt++] = CHR('l','a','t','n');
-
- /* order scripts */
- for ( i=0; i<scnt-1; ++i ) for ( j=i+1; j<scnt; ++j ) {
- if ( scripts[i]>scripts[j] ) {
- script = scripts[i];
- scripts[i] = scripts[j];
- scripts[j] = script;
- }
- }
-
- if ( sf->sf.cidmaster ) sf = (SplineFont1 *) sf->sf.cidmaster;
- else if ( sf->sf.mm!=NULL ) sf=(SplineFont1 *) sf->sf.mm->normal;
- if ( sf->script_lang!=NULL )
-return;
- sf->script_lang = calloc(2,sizeof(struct script_record *));
- sf->script_lang[0] = calloc(scnt+1,sizeof(struct script_record));
- sf->sli_cnt = 1;
- for ( j=0; j<scnt; ++j ) {
- sf->script_lang[0][j].script = scripts[j];
- sf->script_lang[0][j].langs = malloc(2*sizeof(uint32));
- sf->script_lang[0][j].langs[0] = DEFAULT_LANG;
- sf->script_lang[0][j].langs[1] = 0;
- }
- sf->script_lang[1] = NULL;
-}
-
-static int SLContains(struct script_record *sr, uint32 script, uint32 lang) {
- int i, j;
-
- if ( script==DEFAULT_SCRIPT || script == 0 )
-return( true );
- for ( i=0; sr[i].script!=0; ++i ) {
- if ( sr[i].script==script ) {
- if ( lang==0 )
-return( true );
- for ( j=0; sr[i].langs[j]!=0; ++j )
- if ( sr[i].langs[j]==lang )
-return( true );
-
-return( false ); /* this script entry didn't contain the language. won't be any other scripts to check */
- }
- }
-return( false ); /* Never found script */
-}
-
-static int SFAddScriptLangIndex(SplineFont *_sf,uint32 script,uint32 lang) {
- int i;
- SplineFont1 *sf;
-
- if ( _sf->cidmaster ) _sf = _sf->cidmaster;
- else if ( _sf->mm!=NULL ) _sf=_sf->mm->normal;
-
- if ( _sf->sfd_version>=2 )
- IError( "SFFindBiggestScriptLangIndex called with bad version number.\n" );
-
- sf = (SplineFont1 *) _sf;
-
- if ( script==0 ) script=DEFAULT_SCRIPT;
- if ( lang==0 ) lang=DEFAULT_LANG;
- if ( sf->script_lang==NULL )
- sf->script_lang = calloc(2,sizeof(struct script_record *));
- for ( i=0; sf->script_lang[i]!=NULL; ++i ) {
- if ( sf->script_lang[i][0].script==script && sf->script_lang[i][1].script==0 &&
- sf->script_lang[i][0].langs[0]==lang &&
- sf->script_lang[i][0].langs[1]==0 )
-return( i );
- }
- sf->script_lang = realloc(sf->script_lang,(i+2)*sizeof(struct script_record *));
- sf->script_lang[i] = calloc(2,sizeof(struct script_record));
- sf->script_lang[i][0].script = script;
- sf->script_lang[i][0].langs = malloc(2*sizeof(uint32));
- sf->script_lang[i][0].langs[0] = lang;
- sf->script_lang[i][0].langs[1] = 0;
- sf->script_lang[i+1] = NULL;
- sf->sli_cnt = i+1;
-return( i );
-}
-
-static int SLCount(struct script_record *sr) {
- int sl_cnt = 0;
- int i,j;
-
- for ( i=0; sr[i].script!=0; ++i ) {
- for ( j=0; sr[i].langs[j]!=0; ++j )
- ++sl_cnt;
- }
-return( sl_cnt );
-}
-
-int SFFindBiggestScriptLangIndex(SplineFont *_sf,uint32 script,uint32 lang) {
- int i, best_sli= -1, best_cnt= -1, cnt;
- SplineFont1 *sf = (SplineFont1 *) _sf;
-
- if ( _sf->sfd_version>=2 )
- IError( "SFFindBiggestScriptLangIndex called with bad version number.\n" );
-
- if ( sf->script_lang==NULL )
- SFGuessScriptList(sf);
- for ( i=0; sf->script_lang[i]!=NULL; ++i ) {
- if ( SLContains(sf->script_lang[i],script,lang)) {
- cnt = SLCount(sf->script_lang[i]);
- if ( cnt>best_cnt ) {
- best_sli = i;
- best_cnt = cnt;
- }
- }
- }
- if ( best_sli==-1 )
-return( SFAddScriptLangIndex(_sf,script,lang) );
-
-return( best_sli );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/sfd1.h b/dviware/dvisvgm/libs/ff-woff/fontforge/sfd1.h
deleted file mode 100644
index a3ce6aa5ec..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/sfd1.h
+++ /dev/null
@@ -1,122 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _SFD1_H
-#define _SFD1_H
-/* This file contains the data structures needed to read in an old sfd file */
-/* features and lookups and scripts are handled differently. That means that */
-/* the KernPair, KernClass, PST, FPST, AnchorClass, StateMachine data structures */
-/* are organized differently. Also we've got a script language list which */
-/* doesn't exist in the new format and we don't have OTLookup */
-
-#include "splinefont.h"
-
-#define SLI_UNKNOWN 0xffff
-#define SLI_NESTED 0xfffe
-
-typedef struct anchorclass1 {
- AnchorClass ac;
- uint32 feature_tag;
- uint16 script_lang_index;
- uint16 flags;
- uint16 merge_with;
- uint8 has_bases;
- uint8 has_ligatures;
-} AnchorClass1;
-
-typedef struct kernpair1 {
- KernPair kp;
- uint16 sli, flags;
-} KernPair1;
-
-typedef struct kernclass1 {
- KernClass kc;
- uint16 sli;
- uint16 flags;
-} KernClass1;
-
-typedef struct generic_pst1 {
- PST pst;
- uint8 macfeature; /* tag should be interpretted as <feature,setting> rather than 'abcd' */
- uint16 flags;
- uint16 script_lang_index; /* 0xffff means none */
- uint32 tag;
-} PST1;
-
-typedef struct generic_fpst1 {
- FPST fpst;
- uint16 script_lang_index;
- uint16 flags;
- uint32 tag;
-} FPST1;
-
-typedef struct generic_asm1 { /* Apple State Machine */
- ASM sm;
- uint16 feature, setting;
- uint32 opentype_tag; /* If converted from opentype */
-} ASM1;
-
-struct table_ordering {
- uint32 table_tag;
- uint32 *ordered_features;
- struct table_ordering *next;
-};
-
-struct script_record {
- uint32 script;
- uint32 *langs;
-};
-
-struct tagtype {
- enum possub_type type;
- uint32 tag;
-};
-
-struct gentagtype {
- uint16 tt_cur, tt_max;
- struct tagtype *tagtype;
-};
-
-typedef struct splinefont1 {
- SplineFont sf;
-
- struct table_ordering *orders;
-
- /* Any GPOS/GSUB entry (PST, AnchorClass, kerns, FPST */
- /* Has an entry saying what scripts/languages it should appear it */
- /* Things like fractions will appear in almost all possible script/lang */
- /* combinations, while alphabetic ligatures will only live in one script */
- /* Rather than store the complete list of possibilities in each PST we */
- /* store all choices used here, and just store an index into this list */
- /* in the PST. All lists are terminated by a 0 entry */
- struct script_record **script_lang;
- int16 sli_cnt;
-
- struct gentagtype gentags;
-} SplineFont1;
-
-extern int SFFindBiggestScriptLangIndex(SplineFont *_sf,uint32 script,uint32 lang);
-#endif /* _SFD1_H */
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/splinechar.c b/dviware/dvisvgm/libs/ff-woff/fontforge/splinechar.c
deleted file mode 100644
index 41cbc0745d..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/splinechar.c
+++ /dev/null
@@ -1,328 +0,0 @@
-/* -*- coding: utf-8 -*- */
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "fontforgevw.h"
-# include <utype.h>
-
-#ifdef HAVE_IEEEFP_H
-# include <ieeefp.h> /* Solaris defines isnan in ieeefp rather than math.h */
-#endif
-
-int adjustwidth = true;
-
-RefChar *HasUseMyMetrics(SplineChar *sc,int layer) {
- RefChar *r;
-
- if ( layer==ly_grid ) layer = ly_fore;
-
- for ( r=sc->layers[layer].refs; r!=NULL; r=r->next )
- if ( r->use_my_metrics )
-return( r );
-
-return( NULL );
-}
-
-/* if they changed the width, then change the width on all bitmap chars of */
-/* ours, and if we are a letter, then change the width on all chars linked */
-/* to us which had the same width that we used to have (so if we change the */
-/* width of A, we'll also change that of À and Ä and ... */
-void SCSynchronizeWidth(SplineChar *sc,real newwidth, real oldwidth) {
- struct splinecharlist *dlist;
- RefChar *r = HasUseMyMetrics(sc,ly_fore);
- int isprobablybase;
-
- sc->widthset = true;
- if( r!=NULL ) {
- if ( oldwidth==r->sc->width ) {
- sc->width = r->sc->width;
-return;
- }
- newwidth = r->sc->width;
- }
- if ( newwidth==oldwidth )
-return;
- sc->width = newwidth;
- if ( !adjustwidth )
-return;
-
- isprobablybase = true;
- if ( sc->unicodeenc==-1 || sc->unicodeenc>=0x10000 ||
- !isalpha(sc->unicodeenc) || iscombining(sc->unicodeenc))
- isprobablybase = false;
-
- for ( dlist=sc->dependents; dlist!=NULL; dlist=dlist->next ) {
- RefChar *metrics = HasUseMyMetrics(dlist->sc,ly_fore);
- if ( metrics!=NULL && metrics->sc!=sc )
- continue;
- else if ( metrics==NULL && !isprobablybase )
- continue;
- if ( dlist->sc->width==oldwidth &&
- (metrics!=NULL)) {
- SCSynchronizeWidth(dlist->sc,newwidth,oldwidth);
- if ( !dlist->sc->changed ) {
- dlist->sc->changed = true;
- }
- }
- }
-}
-
-static int _SCRefNumberPoints2(SplineSet **_rss,SplineChar *sc,int pnum,int layer) {
- SplineSet *ss, *rss = *_rss;
- SplinePoint *sp, *rsp;
- RefChar *r;
- int starts_with_cp, startcnt;
-
- for ( ss=sc->layers[layer].splines; ss!=NULL; ss=ss->next, rss=rss->next ) {
- if ( rss==NULL ) /* Can't happen */
- break;
- starts_with_cp = !ss->first->noprevcp &&
- ((ss->first->ttfindex == pnum+1 && ss->first->prev!=NULL &&
- ss->first->prev->from->nextcpindex==pnum ) ||
- ((ss->first->ttfindex==0xffff || SPInterpolate( ss->first ))));
- startcnt = pnum;
- if ( starts_with_cp ) ++pnum;
- for ( sp = ss->first, rsp=rss->first; ; ) {
- if ( sp->ttfindex==0xffff || SPInterpolate( sp ))
- rsp->ttfindex = 0xffff;
- else
- rsp->ttfindex = pnum++;
- if ( sp->next==NULL )
- break;
- if ( sp->next!=NULL && sp->next->to == ss->first ) {
- if ( sp->nonextcp )
- rsp->nextcpindex = 0xffff;
- else if ( starts_with_cp )
- rsp->nextcpindex = startcnt;
- else
- rsp->nextcpindex = pnum++;
- break;
- }
- if ( sp->nonextcp )
- rsp->nextcpindex = 0xffff;
- else
- rsp->nextcpindex = pnum++;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- rsp = rsp->next->to;
- }
- }
-
- *_rss = rss;
- for ( r = sc->layers[layer].refs; r!=NULL; r=r->next )
- pnum = _SCRefNumberPoints2(_rss,r->sc,pnum,layer);
-return( pnum );
-}
-
-static int SCRefNumberPoints2(RefChar *ref,int pnum,int layer) {
- SplineSet *rss;
-
- rss = ref->layers[0].splines;
-return( _SCRefNumberPoints2(&rss,ref->sc,pnum,layer));
-}
-
-int SSTtfNumberPoints(SplineSet *ss) {
- int pnum=0;
- SplinePoint *sp;
- int starts_with_cp;
-
- for ( ; ss!=NULL; ss=ss->next ) {
- starts_with_cp = !ss->first->noprevcp &&
- ((ss->first->ttfindex == pnum+1 && ss->first->prev!=NULL &&
- ss->first->prev->from->nextcpindex==pnum ) ||
- SPInterpolate( ss->first ));
- if ( starts_with_cp && ss->first->prev!=NULL )
- ss->first->prev->from->nextcpindex = pnum++;
- for ( sp=ss->first; ; ) {
- if ( SPInterpolate(sp) )
- sp->ttfindex = 0xffff;
- else
- sp->ttfindex = pnum++;
- if ( sp->nonextcp && sp->nextcpindex!=pnum )
- sp->nextcpindex = 0xffff;
- else if ( !starts_with_cp || (sp->next!=NULL && sp->next->to!=ss->first) )
- sp->nextcpindex = pnum++;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==ss->first )
- break;
- }
- }
-return( pnum );
-}
-
-static int SSPsNumberPoints(SplineChar *sc, SplineSet *splines,int pnum) {
- SplineSet *ss;
- SplinePoint *sp;
-
- for ( ss = splines; ss!=NULL; ss=ss->next ) {
- for ( sp=ss->first; ; ) {
- sp->ttfindex = pnum++;
- sp->nextcpindex = 0xffff;
- if ( sc->numberpointsbackards ) {
- if ( sp->prev==NULL )
- break;
- if ( !sp->noprevcp || !sp->prev->from->nonextcp )
- pnum += 2;
- sp = sp->prev->from;
- } else {
- if ( sp->next==NULL )
- break;
- if ( !sp->nonextcp || !sp->next->to->noprevcp )
- pnum += 2;
- sp = sp->next->to;
- }
- if ( sp==ss->first )
- break;
- }
- }
-return( pnum );
-}
-
-int SCNumberPoints(SplineChar *sc,int layer) {
- int pnum=0;
- SplineSet *ss;
- SplinePoint *sp;
- RefChar *ref;
-
- if ( layer<0 || layer>=sc->layer_cnt )
- return( pnum );
-
- if ( sc->layers[layer].order2 ) { /* TrueType and its complexities. I ignore svg here */
- if ( sc->layers[layer].refs!=NULL ) {
- /* if there are references there can't be splines. So if we've got*/
- /* splines mark all point numbers on them as meaningless */
- for ( ss = sc->layers[layer].splines; ss!=NULL; ss=ss->next ) {
- for ( sp=ss->first; ; ) {
- sp->ttfindex = 0xfffe;
- if ( !sp->nonextcp )
- sp->nextcpindex = 0xfffe;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==ss->first )
- break;
- }
- }
- for ( ref = sc->layers[layer].refs; ref!=NULL; ref=ref->next )
- pnum = SCRefNumberPoints2(ref,pnum,layer);
- } else {
- pnum = SSTtfNumberPoints(sc->layers[layer].splines);
- }
- } else { /* cubic (PostScript/SVG) splines */
- int first, last;
- if ( sc->parent->multilayer ) {
- first = ly_fore;
- last = sc->layer_cnt-1;
- } else
- first = last = layer;
- for ( layer=first; layer<=last; ++layer ) {
- for ( ref = sc->layers[layer].refs; ref!=NULL; ref=ref->next )
- pnum = SSPsNumberPoints(sc,ref->layers[0].splines,pnum);
- pnum = SSPsNumberPoints(sc,sc->layers[layer].splines,pnum);
- }
- }
-return( pnum );
-}
-
-int SCPointsNumberedProperly(SplineChar *sc,int layer) {
- int pnum=0, skipit;
- SplineSet *ss;
- SplinePoint *sp;
- int starts_with_cp;
- int start_pnum;
-
- if ( sc->layers[layer].splines!=NULL &&
- sc->layers[layer].refs!=NULL )
-return( false ); /* TrueType can't represent this, so always remove instructions. They can't be meaningful */
-
- for ( ss = sc->layers[layer].splines; ss!=NULL; ss=ss->next ) {
- starts_with_cp = (ss->first->ttfindex == pnum+1 || ss->first->ttfindex==0xffff) &&
- !ss->first->noprevcp;
- start_pnum = pnum;
- if ( starts_with_cp ) ++pnum;
- for ( sp=ss->first; ; ) {
- skipit = SPInterpolate(sp);
- if ( sp->nonextcp || sp->noprevcp ) skipit = false;
- if ( sp->ttfindex==0xffff && skipit )
- /* Doesn't count */;
- else if ( sp->ttfindex!=pnum )
-return( false );
- else
- ++pnum;
- if ( sp->nonextcp && sp->nextcpindex==0xffff )
- /* Doesn't count */;
- else if ( sp->nextcpindex==pnum )
- ++pnum;
- else if ( sp->nextcpindex==start_pnum && starts_with_cp &&
- (sp->next!=NULL && sp->next->to==ss->first) )
- /* Ok */;
- else
-return( false );
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==ss->first )
- break;
- }
- /* if ( starts_with_cp ) --pnum; */
- }
-return( true );
-}
-
-void AltUniAdd(SplineChar *sc,int uni) {
- struct altuni *altuni;
-
- if ( sc!=NULL && uni!=-1 && uni!=sc->unicodeenc ) {
- for ( altuni = sc->altuni; altuni!=NULL && (altuni->unienc!=uni ||
- altuni->vs!=-1 ||
- altuni->fid); altuni=altuni->next );
- if ( altuni==NULL ) {
- altuni = chunkalloc(sizeof(struct altuni));
- altuni->next = sc->altuni;
- sc->altuni = altuni;
- altuni->unienc = uni;
- altuni->vs = -1;
- altuni->fid = 0;
- }
- }
-}
-
-void AltUniAdd_DontCheckDups(SplineChar *sc,int uni) {
- struct altuni *altuni;
-
- if ( sc!=NULL && uni!=-1 && uni!=sc->unicodeenc ) {
- altuni = chunkalloc(sizeof(struct altuni));
- altuni->next = sc->altuni;
- sc->altuni = altuni;
- altuni->unienc = uni;
- altuni->vs = -1;
- altuni->fid = 0;
- }
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/splinefont.c b/dviware/dvisvgm/libs/ff-woff/fontforge/splinefont.c
deleted file mode 100644
index cffba73ccf..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/splinefont.c
+++ /dev/null
@@ -1,504 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "fontforgevw.h"
-
-/* Use URW 4 letter abbreviations */
-const char *knownweights[] = { "Demi", "Bold", "Regu", "Medi", "Book", "Thin",
- "Ligh", "Heav", "Blac", "Ultr", "Nord", "Norm", "Gras", "Stan", "Halb",
- "Fett", "Mage", "Mitt", "Buch", NULL };
-const char *realweights[] = { "Demi", "Bold", "Regular", "Medium", "Book", "Thin",
- "Light", "Heavy", "Black", "Ultra", "Nord", "Normal", "Gras", "Standard", "Halbfett",
- "Fett", "Mager", "Mittel", "Buchschrift", NULL};
-
-static const char *modifierlist[] = { "Ital", "Obli", "Kursive", "Cursive", "Slanted",
- "Expa", "Cond", NULL };
-static const char *modifierlistfull[] = { "Italic", "Oblique", "Kursive", "Cursive", "Slanted",
- "Expanded", "Condensed", NULL };
-static const char **mods[] = { knownweights, modifierlist, NULL };
-static const char **fullmods[] = { realweights, modifierlistfull, NULL };
-
-const char *_GetModifiers(const char *fontname, const char *familyname, const char *weight) {
- const char *pt, *fpt;
- static char space[20];
- int i, j;
-
- /* URW fontnames don't match the familyname */
- /* "NimbusSanL-Regu" vs "Nimbus Sans L" (note "San" vs "Sans") */
- /* so look for a '-' if there is one and use that as the break point... */
-
- if ( (fpt=strchr(fontname,'-'))!=NULL ) {
- ++fpt;
- if ( *fpt=='\0' )
- fpt = NULL;
- } else if ( familyname!=NULL ) {
- for ( pt = fontname, fpt=familyname; *fpt!='\0' && *pt!='\0'; ) {
- if ( *fpt == *pt ) {
- ++fpt; ++pt;
- } else if ( *fpt==' ' )
- ++fpt;
- else if ( *pt==' ' )
- ++pt;
- else if ( *fpt=='a' || *fpt=='e' || *fpt=='i' || *fpt=='o' || *fpt=='u' )
- ++fpt; /* allow vowels to be omitted from family when in fontname */
- else
- break;
- }
- if ( *fpt=='\0' && *pt!='\0' )
- fpt = pt;
- else
- fpt = NULL;
- }
-
- if ( fpt == NULL ) {
- for ( i=0; mods[i]!=NULL; ++i ) for ( j=0; mods[i][j]!=NULL; ++j ) {
- pt = strstr(fontname,mods[i][j]);
- if ( pt!=NULL && (fpt==NULL || pt<fpt))
- fpt = pt;
- }
- }
- if ( fpt!=NULL ) {
- for ( i=0; mods[i]!=NULL; ++i ) for ( j=0; mods[i][j]!=NULL; ++j ) {
- if ( strcmp(fpt,mods[i][j])==0 ) {
- strncpy(space,fullmods[i][j],sizeof(space)-1);
-return(space);
- }
- }
- if ( strcmp(fpt,"BoldItal")==0 )
-return( "BoldItalic" );
- else if ( strcmp(fpt,"BoldObli")==0 )
-return( "BoldOblique" );
-
-return( fpt );
- }
-
-return( weight==NULL || *weight=='\0' ? "Regular": weight );
-}
-
-const char *SFGetModifiers(const SplineFont *sf) {
-return( _GetModifiers(sf->fontname,sf->familyname,sf->weight));
-}
-
-enum flatness { mt_flat, mt_round, mt_pointy, mt_unknown };
-
-static bigreal SPLMaxHeight(SplineSet *spl, enum flatness *isflat) {
- enum flatness f = mt_unknown;
- bigreal max = -1.0e23;
- Spline *s, *first;
- extended ts[2];
- int i;
-
- for ( ; spl!=NULL; spl=spl->next ) {
- first = NULL;
- for ( s = spl->first->next; s!=first && s!=NULL; s=s->to->next ) {
- if ( first==NULL ) first = s;
- if ( s->from->me.y >= max ||
- s->to->me.y >= max ||
- s->from->nextcp.y > max ||
- s->to->prevcp.y > max ) {
- if ( !s->knownlinear ) {
- if ( s->from->me.y > max ) {
- f = mt_round;
- max = s->from->me.y;
- }
- if ( s->to->me.y > max ) {
- f = mt_round;
- max = s->to->me.y;
- }
- SplineFindExtrema(&s->splines[1],&ts[0],&ts[1]);
- for ( i=0; i<2; ++i ) if ( ts[i]!=-1 ) {
- bigreal y = ((s->splines[1].a*ts[i]+s->splines[1].b)*ts[i]+s->splines[1].c)*ts[i]+s->splines[1].d;
- if ( y>max ) {
- f = mt_round;
- max = y;
- }
- }
- } else if ( s->from->me.y == s->to->me.y ) {
- if ( s->from->me.y >= max ) {
- max = s->from->me.y;
- f = mt_flat;
- }
- } else {
- if ( s->from->me.y > max ) {
- f = mt_pointy;
- max = s->from->me.y;
- }
- if ( s->to->me.y > max ) {
- f = mt_pointy;
- max = s->to->me.y;
- }
- }
- }
- }
- }
- *isflat = f;
-return( max );
-}
-
-static bigreal SCMaxHeight(SplineChar *sc, int layer, enum flatness *isflat) {
- /* Find the max height of this layer of the glyph. Also find whether that */
- /* max is flat (as in "z", curved as in "o" or pointy as in "A") */
- enum flatness f = mt_unknown, curf;
- bigreal max = -1.0e23, test;
- RefChar *r;
-
- max = SPLMaxHeight(sc->layers[layer].splines,&curf);
- f = curf;
- for ( r = sc->layers[layer].refs; r!=NULL; r=r->next ) {
- test = SPLMaxHeight(r->layers[0].splines,&curf);
- if ( test>max || (test==max && curf==mt_flat)) {
- max = test;
- f = curf;
- }
- }
- *isflat = f;
-return( max );
-}
-
-static bigreal SPLMinHeight(SplineSet *spl, enum flatness *isflat) {
- enum flatness f = mt_unknown;
- bigreal min = 1.0e23;
- Spline *s, *first;
- extended ts[2];
- int i;
-
- for ( ; spl!=NULL; spl=spl->next ) {
- first = NULL;
- for ( s = spl->first->next; s!=first && s!=NULL; s=s->to->next ) {
- if ( first==NULL ) first = s;
- if ( s->from->me.y <= min ||
- s->to->me.y <= min ||
- s->from->nextcp.y < min ||
- s->to->prevcp.y < min ) {
- if ( !s->knownlinear ) {
- if ( s->from->me.y < min ) {
- f = mt_round;
- min = s->from->me.y;
- }
- if ( s->to->me.y < min ) {
- f = mt_round;
- min = s->to->me.y;
- }
- SplineFindExtrema(&s->splines[1],&ts[0],&ts[1]);
- for ( i=0; i<2; ++i ) if ( ts[i]!=-1 ) {
- bigreal y = ((s->splines[1].a*ts[i]+s->splines[1].b)*ts[i]+s->splines[1].c)*ts[i]+s->splines[1].d;
- if ( y<min ) {
- f = mt_round;
- min = y;
- }
- }
- } else if ( s->from->me.y == s->to->me.y ) {
- if ( s->from->me.y <= min ) {
- min = s->from->me.y;
- f = mt_flat;
- }
- } else {
- if ( s->from->me.y < min ) {
- f = mt_pointy;
- min = s->from->me.y;
- }
- if ( s->to->me.y < min ) {
- f = mt_pointy;
- min = s->to->me.y;
- }
- }
- }
- }
- }
- *isflat = f;
-return( min );
-}
-
-static bigreal SCMinHeight(SplineChar *sc, int layer, enum flatness *isflat) {
- /* Find the min height of this layer of the glyph. Also find whether that */
- /* min is flat (as in "z", curved as in "o" or pointy as in "A") */
- enum flatness f = mt_unknown, curf;
- bigreal min = 1.0e23, test;
- RefChar *r;
-
- min = SPLMinHeight(sc->layers[layer].splines,&curf);
- f = curf;
- for ( r = sc->layers[layer].refs; r!=NULL; r=r->next ) {
- test = SPLMinHeight(r->layers[0].splines,&curf);
- if ( test<min || (test==min && curf==mt_flat)) {
- min = test;
- f = curf;
- }
- }
- *isflat = f;
-return( min );
-}
-
-#define RANGE 0x40ffffff
-
-struct dimcnt { bigreal pos; int cnt; };
-
-static int dclist_insert( struct dimcnt *arr, int cnt, bigreal val ) {
- int i;
-
- for ( i=0; i<cnt; ++i ) {
- if ( arr[i].pos == val ) {
- ++arr[i].cnt;
-return( cnt );
- }
- }
- arr[i].pos = val;
- arr[i].cnt = 1;
-return( i+1 );
-}
-
-static bigreal SFStandardHeight(SplineFont *sf, int layer, int do_max, unichar_t *list) {
- struct dimcnt flats[200], curves[200];
- bigreal test;
- enum flatness curf;
- int fcnt=0, ccnt=0, cnt, tot, i, useit;
- unichar_t ch, top;
- bigreal result, bestheight, bestdiff, diff, val;
- char *blues, *end;
-
- while ( *list ) {
- ch = top = *list;
- if ( list[1]==RANGE && list[2]!=0 ) {
- list += 2;
- top = *list;
- }
- for ( ; ch<=top; ++ch ) {
- SplineChar *sc = SFGetChar(sf,ch,NULL);
- if ( sc!=NULL ) {
- if ( do_max )
- test = SCMaxHeight(sc, layer, &curf );
- else
- test = SCMinHeight(sc, layer, &curf );
- if ( curf==mt_flat )
- fcnt = dclist_insert(flats, fcnt, test);
- else if ( curf!=mt_unknown )
- ccnt = dclist_insert(curves, ccnt, test);
- }
- }
- ++list;
- }
-
- /* All flat surfaces at tops of glyphs are at the same level */
- if ( fcnt==1 )
- result = flats[0].pos;
- else if ( fcnt>1 ) {
- cnt = 0;
- for ( i=0; i<fcnt; ++i ) {
- if ( flats[i].cnt>cnt )
- cnt = flats[i].cnt;
- }
- test = 0;
- tot = 0;
- /* find the mode. If multiple values have the same high count, average them */
- for ( i=0; i<fcnt; ++i ) {
- if ( flats[i].cnt==cnt ) {
- test += flats[i].pos;
- ++tot;
- }
- }
- result = test/tot;
- } else if ( ccnt==0 )
-return( do_max ? -1e23 : 1e23 ); /* We didn't find any glyphs */
- else {
- /* Italic fonts will often have no flat surfaces for x-height just wavies */
- test = 0;
- tot = 0;
- /* find the mean */
- for ( i=0; i<ccnt; ++i ) {
- test += curves[i].pos;
- ++tot;
- }
- result = test/tot;
- }
-
- /* Do we have a BlueValues entry? */
- /* If so, snap height to the closest alignment zone (bottom of the zone) */
- if ( sf->private!=NULL && (blues = PSDictHasEntry(sf->private,do_max ? "BlueValues" : "OtherBlues"))!=NULL ) {
- while ( *blues==' ' || *blues=='[' ) ++blues;
- /* Must get at least this close, else we'll just use what we found */
- bestheight = result; bestdiff = (sf->ascent+sf->descent)/100.0;
- useit = true;
- while ( *blues!='\0' && *blues!=']' ) {
- val = strtod(blues,&end);
- if ( blues==end )
- break;
- blues = end;
- while ( *blues==' ' ) ++blues;
- if ( useit ) {
- if ( (diff = val-result)<0 ) diff = -diff;
- if ( diff<bestdiff ) {
- bestheight = val;
- bestdiff = diff;
- }
- }
- useit = !useit; /* Only interested in every other BV entry */
- }
- result = bestheight;
- }
-return( result );
-}
-
-static unichar_t capheight_str[] = { 'A', RANGE, 'Z',
- 0x391, RANGE, 0x3a9,
- 0x402, 0x404, 0x405, 0x406, 0x408, RANGE, 0x40b, 0x40f, RANGE, 0x418, 0x41a, 0x42f,
- 0 };
-static unichar_t xheight_str[] = { 'a', 'c', 'e', 'g', 'm', 'n', 'o', 'p', 'q', 'r', 's', 'u', 'v', 'w', 'x', 'y', 'z', 0x131,
- 0x3b3, 0x3b9, 0x3ba, 0x3bc, 0x3bd, 0x3c0, 0x3c3, 0x3c4, 0x3c5, 0x3c7, 0x3c8, 0x3c9,
- 0x432, 0x433, 0x438, 0x43a, RANGE, 0x43f, 0x442, 0x443, 0x445, 0x44c,0x44f, 0x459, 0x45a,
- 0 };
-
-bigreal SFCapHeight(SplineFont *sf, int layer, int return_error) {
- bigreal result = SFStandardHeight(sf,layer,true,capheight_str);
-
- if ( result==-1e23 && !return_error )
- result = (8*sf->ascent)/10;
-return( result );
-}
-
-bigreal SFXHeight(SplineFont *sf, int layer, int return_error) {
- bigreal result = SFStandardHeight(sf,layer,true,xheight_str);
-
- if ( result==-1e23 && !return_error )
- result = (6*sf->ascent)/10;
-return( result );
-}
-
-void SPLFirstVisitSplines( SplinePoint* splfirst, SPLFirstVisitSplinesVisitor f, void* udata )
-{
- Spline *spline=0;
- Spline *first=0;
- Spline *next=0;
-
- if ( splfirst!=NULL )
- {
- first = NULL;
- for ( spline = splfirst->next; spline!=NULL && spline!=first; spline = next )
- {
- next = spline->to->next;
-
- // callback
- f( splfirst, spline, udata );
-
- if ( first==NULL )
- {
- first = spline;
- }
- }
- }
-}
-
-typedef struct SPLFirstVisitorFoundSoughtXYDataS
-{
- int use_x;
- int use_y;
- real x;
- real y;
-
- // outputs
- int found;
- Spline* spline;
- SplinePoint* sp;
-
-} SPLFirstVisitorFoundSoughtXYData;
-
-static void SPLFirstVisitorFoundSoughtXY(SplinePoint* splfirst, Spline* spline, void* udata )
-{
- SPLFirstVisitorFoundSoughtXYData* d = (SPLFirstVisitorFoundSoughtXYData*)udata;
- int found = 0;
-
- if( d->found )
- return;
-
- // printf("SPLFirstVisitorFoundSoughtXY() %f %f %f\n", d->x, spline->from->me.x, spline->to->me.x );
- if( d->use_x )
- {
- if( spline->from->me.x == d->x )
- {
- found = 1;
- d->spline = spline;
- d->sp = spline->from;
- }
-
- if( spline->to->me.x == d->x )
- {
- found = 1;
- d->spline = spline;
- d->sp = spline->to;
- }
- }
- if( d->use_x && found && d->use_y )
- {
- if( d->sp->me.y != d->y )
- {
- found = 0;
- }
- }
- else if( d->use_y )
- {
- if( spline->from->me.y == d->y )
- {
- found = 1;
- d->spline = spline;
- d->sp = spline->from;
- }
-
- if( spline->to->me.y == d->y )
- {
- found = 1;
- d->spline = spline;
- d->sp = spline->to;
- }
- }
-
- if( found )
- {
- d->found = found;
- d->spline = spline;
- }
- else
- {
- d->sp = 0;
- }
-}
-
-SplinePoint* SplinePointListContainsPointAtX( SplinePointList* container, real x )
-{
- SplinePointList *spl;
- for ( spl = container; spl!=NULL; spl = spl->next )
- {
- SPLFirstVisitorFoundSoughtXYData d;
- d.use_x = 1;
- d.use_y = 0;
- d.x = x;
- d.y = 0;
- d.found = 0;
- SPLFirstVisitSplines( spl->first, SPLFirstVisitorFoundSoughtXY, &d );
- if( d.found )
- return d.sp;
- }
- return 0;
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/splinefont.h b/dviware/dvisvgm/libs/ff-woff/fontforge/splinefont.h
deleted file mode 100644
index 09945f456d..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/splinefont.h
+++ /dev/null
@@ -1,2554 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _SPLINEFONT_H
-#define _SPLINEFONT_H
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-#include <basics.h>
-#include <dlist.h>
-#include "configure-fontforge.h"
-#include "fflocale.h"
-#ifdef HAVE_ICONV
-# include <iconv.h>
-#else
-# include <gwwiconv.h>
-#endif
-#include <gnetwork.h>
-
-#ifdef FONTFORGE_CONFIG_USE_DOUBLE
-# define real double
-# define bigreal double
-#else
-# define real float
-# define bigreal double
-#endif
-
-#define extended double
- /* Solaris wants to define extended to be unsigned [3] unless we do this*/
-#define _EXTENDED
-
-#define CHR(ch1,ch2,ch3,ch4) (((ch1)<<24)|((ch2)<<16)|((ch3)<<8)|(ch4))
-
-#define MmMax 16 /* PS says at most this many instances for type1/2 mm fonts */
-#define AppleMmMax 26 /* Apple sort of has a limit of 4095, but we only support this many */
-
-typedef struct ipoint {
- int x;
- int y;
-} IPoint;
-
-#define IPOINT_EMPTY { 0, 0 }
-
-
-typedef struct basepoint {
- real x;
- real y;
-} BasePoint;
-
-#define BASEPOINT_EMPTY { (real)0.0, (real)0.0 }
-
-
-typedef struct dbasepoint {
- bigreal x;
- bigreal y;
-} DBasePoint;
-
-#define DBASEPOINT_EMPTY { (bigreal)0.0, (bigreal)0.0 }
-
-
-typedef struct tpoint {
- real x;
- real y;
- real t;
-} TPoint;
-
-#define TPOINT_EMPTY { (real)0.0, (real)0.0, (real)0.0 }
-
-
-typedef struct dbounds {
- real minx, maxx;
- real miny, maxy;
-} DBounds;
-
-#define DBOUNDS_EMPTY { (real)0.0, (real)0.0, (real)0.0, (real)0.0 }
-
-
-typedef struct ibounds {
- int minx, maxx;
- int miny, maxy;
-} IBounds;
-
-#define IBOUNDS_EMPTY { 0, 0, 0, 0 }
-
-
-enum val_type { v_int, v_real, v_str, v_unicode, v_lval, v_arr, v_arrfree,
- v_int32pt, v_int16pt, v_int8pt, v_void };
-
-typedef struct val {
- enum val_type type;
- union {
- int ival;
- real fval;
- char *sval;
- struct val *lval;
- struct array *aval;
- uint32 *u32ptval;
- uint16 *u16ptval;
- uint8 *u8ptval;
- } u;
-} Val; /* Used by scripting */
-
-struct psdict {
- int cnt; /* *key[0..cnt] and *values[0..cnt] currently available */
- int next; /* **key[0..next] and **values[0..next] currently used */
- char **keys;
- char **values;
-};
-
-struct pschars {
- int cnt, next;
- char **keys;
- uint8 **values;
- int *lens;
- int bias; /* for type2 strings */
-};
-
-enum linejoin {
- lj_miter, /* Extend lines until they meet */
- lj_round, /* circle centered at the join of expand radius */
- lj_bevel, /* Straight line between the ends of next and prev */
- lj_inherited
-};
-enum linecap {
- lc_butt, /* equiv to lj_bevel, straight line extends from one side to other */
- lc_round, /* semi-circle */
- lc_square, /* Extend lines by radius, then join them */
- lc_inherited
-};
-enum spreadMethod {
- sm_pad, sm_reflect, sm_repeat
-};
-
-#define COLOR_INHERITED 0xfffffffe
-
-struct grad_stops {
- real offset;
- uint32 col;
- real opacity;
-};
-
-struct gradient {
- BasePoint start; /* focal of a radial gradient, start of a linear */
- BasePoint stop; /* center of a radial gradient, end of a linear */
- real radius; /* 0=>linear gradient, else radius of a radial gradient */
- enum spreadMethod sm;
- int stop_cnt;
- struct grad_stops *grad_stops;
-};
-
-struct pattern {
- char *pattern;
- real width, height; /* Pattern is scaled to be repeated every width/height (in user coordinates) */
- real transform[6];
- /* Used during rasterization process */
- struct bdfchar *pat;
- real invtrans[6];
- int bminx, bminy, bwidth, bheight; /* of the pattern at bdfchar scale */
-};
-
-struct brush {
- uint32 col;
- float opacity; /* number between [0,1], only for svg/pdf */
- struct pattern *pattern; /* A pattern to be tiled */
- struct gradient *gradient; /* A gradient fill */
-};
-#define WIDTH_INHERITED (-1)
-#define DASH_INHERITED 255 /* if the dashes[0]==0 && dashes[1]==DASH_INHERITED */
-#define DASH_MAX 8
-typedef unsigned char DashType;
-struct pen {
- struct brush brush;
- uint8 linejoin;
- uint8 linecap;
- float width;
- real trans[4];
- DashType dashes[DASH_MAX];
-};
-
-struct spline;
-enum si_type { si_std, si_caligraphic, si_poly, si_centerline };
-/* If you change this structure you may need to update MakeStrokeDlg */
-/* and cvpalettes.c both contain statically initialized StrokeInfos */
-typedef struct strokeinfo {
- real radius; /* or major axis of pen */
- enum linejoin join;
- enum linecap cap;
- enum si_type stroke_type;
- unsigned int removeinternal: 1;
- unsigned int removeexternal: 1;
- unsigned int leave_users_center: 1; /* Don't move the pen so its center is at the origin */
- real penangle;
- real minorradius;
- struct splinepointlist *poly;
- real resolution;
-/* For freehand tool */
- real radius2;
- int pressure1, pressure2;
-/* End freehand tool */
- void *data;
- bigreal (*factor)(void *data,struct spline *spline,real t);
-} StrokeInfo;
-
-enum PolyType { Poly_Convex, Poly_Concave, Poly_PointOnEdge,
- Poly_TooFewPoints, Poly_Line };
-
-
-enum overlap_type { over_remove, over_rmselected, over_intersect, over_intersel,
- over_exclude, over_findinter, over_fisel };
-
-enum simpify_flags { sf_cleanup=-1, sf_normal=0, sf_ignoreslopes=1,
- sf_ignoreextremum=2, sf_smoothcurves=4, sf_choosehv=8,
- sf_forcelines=0x10, sf_nearlyhvlines=0x20,
- sf_mergelines=0x40, sf_setstart2extremum=0x80,
- sf_rmsingletonpoints=0x100 };
-
-struct hsquash { double lsb_percent, stem_percent, counter_percent, rsb_percent; };
-
-enum serif_type { srf_flat, srf_simpleslant, srf_complexslant };
-/* | | (flat) | | (simple) | | (complex) */
-/* | | | / | / */
-/* | | | / | / */
-/* +----+ |/ \ / */
-
-typedef struct italicinfo {
- double italic_angle;
- double xheight_percent;
- struct hsquash lc, uc, neither;
- enum serif_type secondary_serif;
-
- unsigned int transform_bottom_serifs: 1;
- unsigned int transform_top_xh_serifs: 1; /* Those at x-height */
- unsigned int transform_top_as_serifs: 1; /* Those at ascender-height */
- unsigned int transform_diagon_serifs: 1; /* Those at baseline/xheight */
-
- unsigned int a_from_d: 1; /* replace the "a" glyph with the variant which looks like a "d" without an ascender */
- /* When I say "f" I also mean "f_f" ligature, "longs", cyrillic phi and other things shaped like "f" */
- unsigned int f_long_tail: 1; /* Some Italic fonts have the "f" grow an extension of the main stem below the baseline */
- unsigned int f_rotate_top: 1; /* Most Italic fonts take the top curve of the "f", rotate it 180 and attach to the bottom */
- unsigned int pq_deserif: 1; /* Remove a serif from the descender of p or q and replace with a secondary serif as above */
-
- /* Unsupported */
- /* e becomes rounder, cross bar slightly slanted */
- /* g closed counter at bottom */
- /* k closed counter at top */
- /* v-z diagonal stems become more curvatious */
-
- unsigned int cyrl_phi: 1; /* Gains an "f" like top, bottom treated like "f" */
- unsigned int cyrl_i: 1; /* Turns into a latin u */
- unsigned int cyrl_pi: 1; /* Turns into a latin n */
- unsigned int cyrl_te: 1; /* Turns into a latin m */
- unsigned int cyrl_sha: 1; /* Turns into a latin m rotated 180 */
- unsigned int cyrl_dje: 1; /* Turns into a latin smallcaps T */
- unsigned int cyrl_dzhe: 1; /* Turns into a latin u */
- /* Is there a difference between dzhe and i? both look like u to me */
-
- /* Unsupported */
- /* u432 curved B */
- /* u433 strange gamma */
- /* u434 normal delta */
- /* u436 */
- /* u43b lambda ? */
- /* u43c */
- /* u446 */
- /* u449 */
- /* u449 */
- /* u44a */
-
-/* This half of the structure gets filled in later - see ITALICINFO_REMAINDER */
- double tan_ia;
- double x_height;
- double pq_depth;
- double ascender_height;
- double emsize;
- int order2;
- struct splinefont *sf;
- int layer;
- double serif_extent, serif_height;
- struct splinepoint *f_start, *f_end; /* start has next pointing into the f head and up */
- struct splinepoint *ff_start1, *ff_end1, *ff_start2, *ff_end2;
- double f_height, ff_height;
-} ItalicInfo;
-
-#define ITALICINFO_REMAINDER 0, 0, 0, 0, 0, 0, NULL, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0
-
-
-typedef struct bluedata {
- real xheight, xheighttop; /* height of "x" and "o" (u,v,w,x,y,z) */
- real caph, caphtop; /* height of "I" and "O" */
- real base, basebelow; /* bottom of "I" and "O" */
- real ascent; /* height of "l" */
- real descent; /* depth of "p" */
- real numh, numhtop; /* height of "7" and "8" */ /* numbers with ascenders */
- int bluecnt; /* If the private dica contains bluevalues... */
- real blues[12][2]; /* 7 pairs from bluevalues, 5 from otherblues */
-} BlueData;
-
-#define BLUEDATA_EMPTY { \
- 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0, \
- { { 0.0, 0.0 }, { 0.0, 0.0 }, { 0.0, 0.0 }, { 0.0, 0.0 }, { 0.0, 0.0 }, { 0.0, 0.0 }, \
- { 0.0, 0.0 }, { 0.0, 0.0 }, { 0.0, 0.0 }, { 0.0, 0.0 }, { 0.0, 0.0 }, { 0.0, 0.0 } \
- } \
-}
-
-
-typedef struct bdffloat {
- int16 xmin,xmax,ymin,ymax;
- int16 bytes_per_line;
- unsigned int byte_data:1;
- uint8 depth;
- uint8 *bitmap;
-} BDFFloat;
-
-/* OpenType does not document 'dflt' as a language, but we'll use it anyway. */
-/* (Adobe uses it too) we'll turn it into a default entry when we output it. */
-#define DEFAULT_LANG CHR('d','f','l','t')
-/* The OpenType spec says in one place that the default script is 'dflt' and */
-/* in another that it is 'DFLT'. 'DFLT' is correct */
-#define DEFAULT_SCRIPT CHR('D','F','L','T')
-#define REQUIRED_FEATURE CHR(' ','R','Q','D')
-
-enum otlookup_type {
- ot_undef = 0, /* Not a lookup type */
- gsub_start = 0x000, /* Not a lookup type */
- gsub_single = 0x001,
- gsub_multiple = 0x002,
- gsub_alternate = 0x003,
- gsub_ligature = 0x004,
- gsub_context = 0x005,
- gsub_contextchain = 0x006,
- /* GSUB extension 7 */
- gsub_reversecchain = 0x008,
- /* mac state machines */
- morx_indic = 0x0fd,
- morx_context = 0x0fe,
- morx_insert = 0x0ff,
- /* ********************* */
- gpos_start = 0x100, /* Not a lookup type */
-
- gpos_single = 0x101,
- gpos_pair = 0x102,
- gpos_cursive = 0x103,
- gpos_mark2base = 0x104,
- gpos_mark2ligature = 0x105,
- gpos_mark2mark = 0x106,
- gpos_context = 0x107,
- gpos_contextchain = 0x108,
- /* GPOS extension 9 */
- kern_statemachine = 0x1ff
-
- /* otlookup&0xff == lookup type for the appropriate table */
- /* otlookup>>8: 0=>GSUB, 1=>GPOS */
-};
-
-enum otlookup_typemasks {
- gsub_single_mask = 0x00001,
- gsub_multiple_mask = 0x00002,
- gsub_alternate_mask = 0x00004,
- gsub_ligature_mask = 0x00008,
- gsub_context_mask = 0x00010,
- gsub_contextchain_mask = 0x00020,
- gsub_reversecchain_mask = 0x00040,
- morx_indic_mask = 0x00080,
- morx_context_mask = 0x00100,
- morx_insert_mask = 0x00200,
- /* ********************* */
- gpos_single_mask = 0x00400,
- gpos_pair_mask = 0x00800,
- gpos_cursive_mask = 0x01000,
- gpos_mark2base_mask = 0x02000,
- gpos_mark2ligature_mask = 0x04000,
- gpos_mark2mark_mask = 0x08000,
- gpos_context_mask = 0x10000,
- gpos_contextchain_mask = 0x20000,
- kern_statemachine_mask = 0x40000
-};
-
-#define MAX_LANG 4 /* If more than this we allocate more_langs in chunks of MAX_LANG */
-struct scriptlanglist {
- uint32 script;
- uint32 langs[MAX_LANG];
- uint32 *morelangs;
- int lang_cnt;
- struct scriptlanglist *next;
-};
-
-#define OPENTYPE_FEATURE_FRIENDLYNAMES_EMPTY { 0, NULL, NULL, 0 }
-
-
-typedef struct featurescriptlanglist {
- uint32 featuretag;
- struct scriptlanglist *scripts;
- struct featurescriptlanglist *next;
- unsigned int ismac: 1; /* treat the featuretag as a mac feature/setting */
-} FeatureScriptLangList;
-
-enum pst_flags { pst_r2l=1, pst_ignorebaseglyphs=2, pst_ignoreligatures=4,
- pst_ignorecombiningmarks=8, pst_usemarkfilteringset=0x10,
- pst_markclass=0xff00, pst_markset=0xffff0000 };
-
-struct lookup_subtable {
- char *subtable_name;
- char *suffix; /* for gsub_single, used to find a default replacement */
- int16 separation, minkern; /* for gpos_pair, used to guess default kerning values */
- struct otlookup *lookup;
- unsigned int unused: 1;
- unsigned int per_glyph_pst_or_kern: 1;
- unsigned int anchor_classes: 1;
- unsigned int vertical_kerning: 1;
- unsigned int ticked: 1;
- unsigned int kerning_by_touch: 1; /* for gpos_pair, calculate kerning so that glyphs will touch */
- unsigned int onlyCloser: 1; /* for kerning classes */
- unsigned int dontautokern: 1; /* for kerning classes */
- struct kernclass *kc;
- struct generic_fpst *fpst;
- struct generic_asm *sm;
- /* Each time an item is added to a lookup we must place it into a */
- /* subtable. If it's a kerning class, fpst or state machine it has */
- /* a subtable all to itself. If it's an anchor class it can share */
- /* a subtable with other anchor classes (merge with). If it's a glyph */
- /* PST it may share a subtable with other PSTs */
- /* Note items may only be placed in lookups in which they fit. Can't */
- /* put kerning data in a gpos_single lookup, etc. */
- struct lookup_subtable *next;
- int32 subtable_offset;
- int32 *extra_subtables;
- /* If a kerning subtable has too much stuff in it, we are prepared to */
- /* break it up into several smaller subtables, each of which has */
- /* an offset in this list (extra-subtables[0]==subtable_offset) */
- /* the list is terminated by an entry of -1 */
-};
-
-typedef struct otlookup {
- struct otlookup *next;
- enum otlookup_type lookup_type;
- uint32 lookup_flags; /* Low order: traditional flags, High order: markset index, only meaningful if pst_usemarkfilteringset set */
- char *lookup_name;
- FeatureScriptLangList *features;
- struct lookup_subtable *subtables;
- unsigned int unused: 1; /* No subtable is used (call SFFindUnusedLookups before examining) */
- unsigned int empty: 1; /* No subtable is used, and no anchor classes are used */
- unsigned int store_in_afm: 1; /* Used for ligatures, some get stored */
- /* 'liga' generally does, but 'frac' doesn't */
- unsigned int needs_extension: 1; /* Used during opentype generation */
- unsigned int temporary_kern: 1; /* Used when decomposing kerning classes into kern pairs for older formats */
- unsigned int def_lang_checked: 1;
- unsigned int def_lang_found: 1;
- unsigned int ticked: 1;
- unsigned int in_gpos: 1;
- unsigned int in_jstf: 1;
- unsigned int only_jstf: 1;
- int16 subcnt; /* Actual number of subtables we will output */
- /* Some of our subtables may contain no data */
- /* Some may be too big and need to be broken up.*/
- /* So this field may be different than just counting the subtables */
- int lookup_index; /* used during opentype generation */
- uint32 lookup_offset;
- uint32 lookup_length;
- char *tempname;
-} OTLookup;
-
-#define LOOKUP_SUBTABLE_EMPTY { NULL, NULL, 0, 0, NULL, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL, 0, NULL }
-#define OTLOOKUP_EMPTY { NULL, 0, 0, NULL, NULL, NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL }
-
-
-typedef struct devicetab {
- uint16 first_pixel_size, last_pixel_size; /* A range of point sizes to which this table applies */
- int8 *corrections; /* a set of pixel corrections, one for each point size */
-} DeviceTable;
-
-typedef struct valdev { /* Value records can have four associated device tables */
- DeviceTable xadjust;
- DeviceTable yadjust;
- DeviceTable xadv;
- DeviceTable yadv;
-} ValDevTab;
-
-enum anchorclass_type { act_mark, act_mkmk, act_curs, act_mklg, act_unknown };
-typedef struct anchorclass {
- char *name; /* in utf8 */
- struct lookup_subtable *subtable;
- uint8 type; /* anchorclass_type */
- uint8 has_base;
- uint8 processed, has_mark, matches, ac_num;
- uint8 ticked;
- struct anchorclass *next;
-} AnchorClass;
-
-enum anchor_type { at_mark, at_basechar, at_baselig, at_basemark, at_centry, at_cexit, at_max };
-typedef struct anchorpoint {
- AnchorClass *anchor;
- BasePoint me;
- DeviceTable xadjust, yadjust;
- unsigned int type: 4;
- unsigned int selected: 1;
- unsigned int ticked: 1;
- unsigned int has_ttf_pt: 1;
- uint16 ttf_pt_index;
- int16 lig_index;
- struct anchorpoint *next;
-} AnchorPoint;
-
-typedef struct kernpair {
- // Note that the left character in the pair has the reference to the kerning pair, which in turn references the right character.
- struct lookup_subtable *subtable;
- struct splinechar *sc;
- int16 off;
- uint16 kcid; /* temporary value */
- DeviceTable *adjust; /* Only adjustment in one dimen, if more needed use pst */
- struct kernpair *next;
-} KernPair;
-
-#define FF_KERNCLASS_FLAG_NATIVE 2 // If set, the class goes into groups.plist or kerning.plist.
-#define FF_KERNCLASS_FLAG_FEATURE 4 // If set, the class or rule goes into the feature file. In the present configuration, this ought to be zero always.
-#define FF_KERNCLASS_FLAG_NAMETYPE 8 // If unset (default), the class has a standard name, which translates to a U. F. O. name starting in public.kern, which may be illegal in the feature file. If set, it has a name like @MMK_.
-#define FF_KERNCLASS_FLAG_NAMELEGACY 16 // If set, the class has a U. F. O. name starting in @kc as FontForge liked to do in the past.
-#define FF_KERNCLASS_FLAG_VIRTUAL 32 // If unset (default), the class is a real character class and does not conflict with same-sided classes. If set, FontForge mostly ignores the class except for U. F. O. input/output.
-#define FF_KERNCLASS_FLAG_FLATTEN 64 // If unset (default), the class gets exported as a class. If set, it gets exported as its first member (in order to support class-character kerns).
-#define FF_KERNCLASS_FLAG_SINGLECHAR (FF_KERNCLASS_FLAG_VIRTUAL | FF_KERNCLASS_FLAG_FLATTEN) // We expect to see these used together.
-
-typedef struct kernclass {
- int first_cnt, second_cnt; /* Count of classes for first and second chars */
- char **firsts; /* list of a space separated list of char names */
- char **seconds; /* one entry for each class. Entry 0 is null */
- /* and means everything not specified elsewhere */
- char **firsts_names; // We need to track the names of the classes in order to round-trip U. F. O. data.
- char **seconds_names;
- int *firsts_flags; // This tracks the storage format of the class in U. F. O. (groups.plist or features.fea) and whether it's a single-character class.
- int *seconds_flags; // We also track the name format (@MMK or public.kern).
- struct lookup_subtable *subtable;
- uint16 kcid; /* Temporary value, used for many things briefly */
- int16 *offsets; /* array of first_cnt*second_cnt entries with 0 representing no data */
- int *offsets_flags;
- DeviceTable *adjusts; /* array of first_cnt*second_cnt entries representing resolution-specific adjustments */
- struct kernclass *next; // Note that, in most cases, a typeface needs only one struct kernclass since it can contain all classes.
- int feature; // This indicates whether the kerning class came from a feature file. This is important during export.
-} KernClass;
-
-enum possub_type { pst_null, pst_position, pst_pair,
- pst_substitution, pst_alternate,
- pst_multiple, pst_ligature,
- pst_lcaret /* must be pst_max-1, see charinfo.c*/,
- pst_max,
- /* These are not psts but are related so it's handly to have values for them */
- pst_kerning = pst_max, pst_vkerning, pst_anchors,
- /* And these are fpsts */
- pst_contextpos, pst_contextsub, pst_chainpos, pst_chainsub,
- pst_reversesub, fpst_max,
- /* And these are used to specify a kerning pair where the current */
- /* char is the final glyph rather than the initial one */
- /* A kludge used when cutting and pasting features */
- pst_kernback, pst_vkernback
- };
-
-struct vr {
- int16 xoff, yoff, h_adv_off, v_adv_off;
- ValDevTab *adjust;
-};
-
-typedef struct generic_pst {
- unsigned int ticked: 1;
- unsigned int temporary: 1; /* Used in afm ligature closure */
- /* enum possub_type*/ uint8 type;
- struct lookup_subtable *subtable;
- struct generic_pst *next;
- union {
- struct vr pos;
- struct { char *paired; struct vr *vr; } pair;
- struct { char *variant; } subs;
- struct { char *components; } mult, alt;
- struct { char *components; struct splinechar *lig; } lig;
- struct { int16 *carets; int cnt; } lcaret; /* Ligature caret positions */
- } u;
-} PST;
-
-typedef struct liglist {
- PST *lig;
- struct splinechar *first; /* First component */
- struct splinecharlist *components; /* Other than the first */
- struct liglist *next;
- int ccnt; /* Component count. (includes first component) */
-} LigList;
-
-enum fpossub_format { pst_glyphs, pst_class, pst_coverage,
- pst_reversecoverage, pst_formatmax };
-
-struct seqlookup {
- int seq;
- struct otlookup *lookup;
-};
-
-struct fpg { char *names, *back, *fore; };
-struct fpc { int ncnt, bcnt, fcnt; uint16 *nclasses, *bclasses, *fclasses, *allclasses; };
-struct fpv { int ncnt, bcnt, fcnt; char **ncovers, **bcovers, **fcovers; };
-struct fpr { int always1, bcnt, fcnt; char **ncovers, **bcovers, **fcovers; char *replacements; };
-
-struct fpst_rule {
- union {
- /* Note: Items in backtrack area are in reverse order because that's how the OT wants them */
- /* they need to be reversed again to be displayed to the user */
- struct fpg glyph;
- struct fpc class;
- struct fpv coverage;
- struct fpr rcoverage;
- } u;
- int lookup_cnt;
- struct seqlookup *lookups;
-};
-
-typedef struct generic_fpst {
- uint16 /*enum possub_type*/ type;
- uint16 /*enum fpossub_format*/ format;
- struct lookup_subtable *subtable;
- struct generic_fpst *next;
- uint16 nccnt, bccnt, fccnt;
- uint16 rule_cnt;
- char **nclass, **bclass, **fclass;
- struct fpst_rule *rules;
- uint8 ticked;
- uint8 effectively_by_glyphs;
- char **nclassnames, **bclassnames, **fclassnames;
-} FPST;
-
-enum asm_type { asm_indic, asm_context, asm_lig, asm_simple=4, asm_insert,
- asm_kern=0x11 };
-enum asm_flags { asm_vert=0x8000, asm_descending=0x4000, asm_always=0x2000 };
-
-struct asm_state {
- uint16 next_state;
- uint16 flags;
- union {
- struct {
- struct otlookup *mark_lookup; /* for contextual glyph subs (tag of a nested lookup) */
- struct otlookup *cur_lookup; /* for contextual glyph subs */
- } context;
- struct {
- char *mark_ins;
- char *cur_ins;
- } insert;
- struct {
- int16 *kerns;
- int kcnt;
- } kern;
- } u;
-};
-
-typedef struct generic_asm { /* Apple State Machine */
- struct generic_asm *next;
- uint16 /*enum asm_type*/ type;
- struct lookup_subtable *subtable; /* Lookup contains feature setting info */
- uint16 flags; /* 0x8000=>vert, 0x4000=>r2l, 0x2000=>hor&vert */
- uint8 ticked;
-
- uint16 class_cnt, state_cnt;
- char **classes;
- struct asm_state *state;
-} ASM;
-/* State Flags:
- Indic:
- 0x8000 mark current glyph as first in rearrangement
- 0x4000 don't advance to next glyph
- 0x2000 mark current glyph as last
- 0x000f verb
- 0 = no change 8 = AxCD => CDxA
- 1 = Ax => xA 9 = AxCD => DCxA
- 2 = xD => Dx a = ABxD => DxAB
- 3 = AxD => DxA b = ABxD => DxBA
- 4 = ABx => xAB c = ABxCD => CDxAB
- 5 = ABx => xBA d = ABxCD => CDxBA
- 6 = xCD => CDx e = ABxCD => DCxAB
- 7 = xCD => DCx f = ABxCD => DCxBA
- Contextual:
- 0x8000 mark current glyph
- 0x4000 don't advance to next glyph
- Insert:
- 0x8000 mark current glyph
- 0x4000 don't advance to next glyph
- 0x2000 current is Kashida like
- 0x1000 mark is Kashida like
- 0x0800 current insert before
- 0x0400 mark insert before
- 0x03e0 count of chars to be inserted at current (31 max)
- 0x001f count of chars to be inserted at mark (31 max)
- Kern:
- 0x8000 add current glyph to kerning stack
- 0x4000 don't advance to next glyph
- 0x3fff value offset
-*/
-
-struct jstf_prio {
- OTLookup **enableShrink; /* Points to an array of lookups (GSUB or GPOS)*/
- OTLookup **disableShrink; /* NULL terminated */
- OTLookup **maxShrink; /* Array of GPOS like lookups */
- OTLookup **enableExtend;
- OTLookup **disableExtend;
- OTLookup **maxExtend;
-};
-
-struct jstf_lang {
- uint32 lang;
- struct jstf_lang *next;
- int cnt;
- struct jstf_prio *prios;
-};
-
-typedef struct jstf_script {
- uint32 script;
- struct jstf_script *next;
- char *extenders; /* list of glyph names */
- struct jstf_lang *langs;
-} Justify;
-
-struct macname {
- struct macname *next;
- uint16 enc; /* Platform specific encoding. 0=>mac roman, 1=>sjis, 7=>russian */
- uint16 lang; /* Mac languages 0=>english, 1=>french, 2=>german */
- char *name; /* Not a unicode string, uninterpreted mac encoded string */
-};
-
-/* Wow, the GPOS 'size' feature stores a string in the name table just as mac */
-/* features do */
-/* And now (OTF 1.6) GSUB 'ss01'-'ss20' do too */
-struct otfname {
- struct otfname *next;
- uint16 lang; /* windows language code */
- char *name; /* utf8 */
-};
-
-struct otffeatname {
- uint32 tag; /* Feature tag */
- struct otfname *names;
- struct otffeatname *next;
- uint16 nid; /* temporary value */
-};
-
-struct macsetting {
- struct macsetting *next;
- uint16 setting;
- uint16 strid;
- struct macname *setname;
- unsigned int initially_enabled: 1;
-};
-
-typedef struct macfeat {
- struct macfeat *next;
- uint16 feature;
- uint8 ismutex;
- uint8 default_setting; /* Apple's docs say both that this is a byte and a short. It's a byte */
- uint16 strid; /* Temporary value, used when reading in */
- struct macname *featname;
- struct macsetting *settings;
-} MacFeat;
-
-typedef struct refbdfc {
- unsigned int checked: 1;
- unsigned int selected: 1;
- int8 xoff;
- int8 yoff;
- uint16 gid;
- struct refbdfc *next;
- struct bdfchar *bdfc;
-} BDFRefChar;
-
-struct bdfcharlist {
- struct bdfchar *bc;
- struct bdfcharlist *next;
-};
-
-typedef struct bdfchar {
- struct splinechar *sc;
- int16 xmin,xmax,ymin,ymax;
- int16 width;
- int16 bytes_per_line;
- uint8 *bitmap;
- struct refbdfc *refs;
- int orig_pos;
- int16 pixelsize; /* for undoes */
- struct bitmapview *views;
- struct undoes *undoes;
- struct undoes *redoes;
- unsigned int changed: 1;
- unsigned int byte_data: 1; /* for anti-aliased chars entries are grey-scale bytes not bw bits */
- unsigned int widthgroup: 1; /* for ttf bitmap output */
- unsigned int isreference: 1; /* for ttf bitmap input, */
- unsigned int ticked: 1;
- uint8 depth; /* for ttf bitmap output */
- uint16 vwidth;
- BDFFloat *selection;
- BDFFloat *backup;
- struct bdfcharlist *dependents;
-} BDFChar;
-
-enum undotype { ut_none=0, ut_state, ut_tstate, ut_statehint, ut_statename,
- ut_statelookup,
- ut_anchors,
- ut_width, ut_vwidth, ut_lbearing, ut_rbearing, ut_possub,
- ut_hints, ut_bitmap, ut_bitmapsel, ut_composit, ut_multiple, ut_layers,
- ut_noop };
-
-#define UNDO_LAYER_UNKNOWN -1
-
-
-enum sfundotype
-{
- sfut_none=0,
- sfut_lookups,
- sfut_lookups_kerns,
- sfut_fontinfo,
- sfut_noop
-};
-
-/**
- * A spline font level undo stack. undoes are doubly linked using the
- * 'ln' member and carry some user presentable description of what the
- * undo relates to in 'msg'.
- *
- * The sfdchunk is a pointer to an SFD fragment which will apply the
- * undo to the current state. For example, it might contain
- * information about the old value of kerning pairs which can be used
- * to restore state to how it was. Note that the sfdchunk might only
- * be partial, containing only enough information to restore the state
- * which changed when the undo was created.
- */
-
-typedef struct enc {
- char *enc_name;
- int char_cnt; /* Size of the next two arrays */
- int32 *unicode; /* unicode value for each encoding point */
- char **psnames; /* optional postscript name for each encoding point */
- struct enc *next;
- unsigned int builtin: 1;
- unsigned int hidden: 1;
- unsigned int only_1byte: 1;
- unsigned int has_1byte: 1;
- unsigned int has_2byte: 1;
- unsigned int is_unicodebmp: 1;
- unsigned int is_unicodefull: 1;
- unsigned int is_custom: 1;
- unsigned int is_original: 1;
- unsigned int is_compact: 1;
- unsigned int is_japanese: 1;
- unsigned int is_korean: 1;
- unsigned int is_tradchinese: 1;
- unsigned int is_simplechinese: 1;
- char iso_2022_escape[8];
- int iso_2022_escape_len;
- int low_page, high_page;
- char *iconv_name; /* For compatibility to old versions we might use a different name from that used by iconv. */
- iconv_t *tounicode;
- iconv_t *fromunicode;
- int (*tounicode_func)(int);
- int (*fromunicode_func)(int);
- unsigned int is_temporary: 1; /* freed when the map gets freed */
- int char_max; /* Used by temporary encodings */
-} Encoding;
-
-struct renames { char *from; char *to; };
-
-typedef struct namelist {
- struct namelist *basedon;
- char *title;
- const char ***unicode[17];
- struct namelist *next;
- struct renames *renames;
- int uses_unicode;
- char *a_utf8_name;
-} NameList;
-
-enum uni_interp { ui_unset= -1, ui_none, ui_adobe, ui_greek, ui_japanese,
- ui_trad_chinese, ui_simp_chinese, ui_korean, ui_ams };
-
-struct remap { uint32 firstenc, lastenc; int32 infont; };
-
-typedef struct encmap { /* A per-font map of encoding to glyph id */
- int32 *map; /* Map from encoding to glyphid */
- int32 *backmap; /* Map from glyphid to encoding */
- int enccount; /* used size of the map array */
- /* strictly speaking this might include */
- /* glyphs that are not encoded, but which */
- /* are displayed after the proper encoding */
- int encmax; /* allocated size of the map array */
- int backmax; /* allocated size of the backmap array */
- struct remap *remap;
- Encoding *enc;
- unsigned int ticked: 1;
-} EncMap;
-
-enum property_type { prt_string, prt_atom, prt_int, prt_uint, prt_property=0x10 };
-
-typedef struct bdfprops {
- char *name; /* These include both properties (like SLANT) and non-properties (like FONT) */
- int type;
- union {
- char *str;
- char *atom;
- int val;
- } u;
-} BDFProperties;
-
-typedef struct bdffont {
- struct splinefont *sf;
- int glyphcnt, glyphmax; /* used & allocated sizes of glyphs array */
- BDFChar **glyphs; /* an array of charcnt entries */
- int16 pixelsize;
- int16 ascent, descent;
- int16 layer; /* for piecemeal fonts */
- unsigned int piecemeal: 1;
- unsigned int bbsized: 1;
- unsigned int ticked: 1;
- unsigned int unhinted_freetype: 1;
- unsigned int recontext_freetype: 1;
- struct bdffont *next;
- struct clut *clut;
- char *foundry;
- int res;
- void *freetype_context;
- uint16 truesize; /* for bbsized fonts */
- int16 prop_cnt;
- int16 prop_max; /* only used within bdfinfo dlg */
- BDFProperties *props;
- uint16 ptsize, dpi; /* for piecemeal fonts */
-} BDFFont;
-
-#define HntMax 96 /* PS says at most 96 hints */
-typedef uint8 HintMask[HntMax/8];
-
-enum pointtype { pt_curve, pt_corner, pt_tangent, pt_hvcurve };
-typedef struct splinepoint {
- BasePoint me;
- BasePoint nextcp; /* control point */
- BasePoint prevcp; /* control point */
- unsigned int nonextcp:1;
- unsigned int noprevcp:1;
- unsigned int nextcpdef:1;
- unsigned int prevcpdef:1;
- unsigned int selected:1; /* for UI */
- unsigned int nextcpselected: 2; /* Is the next BCP selected */
- unsigned int prevcpselected: 2; /* Is the prev BCP selected */
- unsigned int pointtype:2;
- unsigned int isintersection: 1;
- unsigned int flexy: 1; /* When "freetype_markup" is on in charview.c:DrawPoint */
- unsigned int flexx: 1; /* flexy means select nextcp, and flexx means draw circle around nextcp */
- unsigned int roundx: 1; /* For true type hinting */
- unsigned int roundy: 1; /* For true type hinting */
- unsigned int dontinterpolate: 1; /* in ttf, don't imply point by interpolating between cps */
- unsigned int ticked: 1;
- unsigned int watched: 1;
- /* 1 bits left... */
- uint16 ptindex; /* Temporary value used by metafont routine */
- uint16 ttfindex; /* Truetype point index */
- /* Special values 0xffff => point implied by averaging control points */
- /* 0xfffe => point created with no real number yet */
- /* (or perhaps point in context where no number is possible as in a glyph with points & refs) */
- uint16 nextcpindex; /* Truetype point index */
- struct spline *next;
- struct spline *prev;
- HintMask *hintmask;
- char* name;
-} SplinePoint;
-
-enum linelist_flags { cvli_onscreen=0x1, cvli_clipped=0x2 };
-
-typedef struct linelist {
- IPoint here;
- struct linelist *next;
- /* The first two fields are constant for the linelist, the next ones */
- /* refer to a particular screen. If some portion of the line from */
- /* this point to the next one is on the screen then set cvli_onscreen */
- /* if this point needs to be clipped then set cvli_clipped */
- /* asend and asstart are the actual screen locations where this point */
- /* intersects the clip edge. */
- enum linelist_flags flags;
- IPoint asend, asstart;
-} LineList;
-
-typedef struct linearapprox {
- real scale;
- unsigned int oneline: 1;
- unsigned int onepoint: 1;
- unsigned int any: 1; /* refers to a particular screen */
- struct linelist *lines;
- struct linearapprox *next;
-} LinearApprox;
-
-typedef struct spline1d {
- real a, b, c, d;
-} Spline1D;
-
-/**
- *
- * 2013Note: If you are altering from->me.x and y then you will
- * probably have to modify splines[] to match your change.
- * eg, moving both ends of a spline up/down by changing their
- * to/from will also probably need an update to splines[ 0 | 1 ].d to
- * match.
- */
-typedef struct spline {
- unsigned int islinear: 1; /* No control points */
- unsigned int isquadratic: 1; /* probably read in from ttf */
- unsigned int isticked: 1;
- unsigned int isneeded: 1; /* Used in remove overlap */
- unsigned int isunneeded: 1; /* Used in remove overlap */
- unsigned int exclude: 1; /* Used in remove overlap varient: exclude */
- unsigned int ishorvert: 1;
- unsigned int knowncurved: 1; /* We know that it curves */
- unsigned int knownlinear: 1; /* it might have control points, but still traces out a line */
- /* If neither knownlinear nor curved then we haven't checked */
- unsigned int order2: 1; /* It's a bezier curve with only one cp */
- unsigned int touched: 1;
- unsigned int leftedge: 1;
- unsigned int rightedge: 1;
- unsigned int acceptableextrema: 1; /* This spline has extrema, but we don't care */
- SplinePoint *from;
- SplinePoint *to;
- Spline1D splines[2]; /* splines[0] is the x spline, splines[1] is y */
- struct linearapprox *approx;
- /* Posible optimizations:
- Precalculate bounding box
- Precalculate min/max/ points of inflection
- */
-} Spline;
-
-#ifndef _NO_LIBSPIRO
-# include "spiroentrypoints.h"
-#else
-# define SPIRO_OPEN_CONTOUR '{'
-# define SPIRO_CORNER 'v'
-# define SPIRO_G4 'o'
-# define SPIRO_G2 'c'
-# define SPIRO_LEFT '['
-# define SPIRO_RIGHT ']'
-# define SPIRO_END 'z'
-typedef struct { /* Taken from spiro.h because I want */
- double x; /* to be able to compile for spiro */
- double y; /* even on a system without it */
- char ty;
-} spiro_cp;
-#endif
-#define SPIRO_SELECTED(cp) ((cp)->ty&0x80)
-#define SPIRO_DESELECT(cp) ((cp)->ty&=~0x80)
-#define SPIRO_SELECT(cp) ((cp)->ty|=0x80)
-#define SPIRO_SPL_OPEN(spl) ((spl)->spiro_cnt>1 && ((spl)->spiros[0].ty&0x7f)==SPIRO_OPEN_CONTOUR)
-
-#define SPIRO_NEXT_CONSTRAINT SPIRO_RIGHT /* The curve is on the next side of the constraint point */
-#define SPIRO_PREV_CONSTRAINT SPIRO_LEFT /* The curve is on the prev side of the constraint point */
-
-typedef struct splinepointlist {
- SplinePoint *first, *last;
- struct splinepointlist *next;
- spiro_cp *spiros;
- uint16 spiro_cnt, spiro_max;
- /* These could be bit fields, but bytes are easier to access and we */
- /* don't need the space (yet) */
- uint8 ticked;
- uint8 beziers_need_optimizer; /* If the spiros have changed in spiro mode, then reverting to bezier mode might, someday, run a simplifier */
- uint8 is_clip_path; /* In type3/svg fonts */
- int start_offset; // This indicates which point is the canonical first for purposes of outputting to U. F. O..
- char *contour_name;
-} SplinePointList, SplineSet;
-
-
-struct reflayer {
- unsigned int background: 1;
- unsigned int order2: 1;
- unsigned int anyflexes: 1;
- unsigned int dofill: 1;
- unsigned int dostroke: 1;
- unsigned int fillfirst: 1;
- struct brush fill_brush;
- struct pen stroke_pen;
- SplinePointList *splines;
-};
-
-typedef struct refchar {
- unsigned int checked: 1;
- unsigned int selected: 1;
- unsigned int point_match: 1; /* match_pt* are point indexes */
- /* and need to be converted to a */
- /* translation after truetype readin */
- unsigned int encoded: 1; /* orig_pos is actually an encoded value, used for old sfd files */
- unsigned int justtranslated: 1; /* The transformation matrix specifies a translation (or is identity) */
- unsigned int use_my_metrics: 1; /* Retain the ttf "use_my_metrics" info. */
- /* important for glyphs with instructions which change the width used */
- /* inside composites */
- unsigned int round_translation_to_grid: 1; /* Retain the ttf "round_to_grid" info. */
- unsigned int point_match_out_of_date: 1; /* Someone has edited a base glyph */
- int16 adobe_enc;
- int orig_pos;
- int unicode_enc; /* used by paste */
- real transform[6]; /* transformation matrix (first 2 rows of a 3x3 matrix, missing row is 0,0,1) */
- struct reflayer *layers;
- int layer_cnt;
- struct refchar *next;
- DBounds bb;
- struct splinechar *sc;
- BasePoint top;
- uint16 match_pt_base, match_pt_ref;
-} RefChar;
-
-/* Some stems may appear, disappear, reapear several times */
-/* Serif stems on I which appear at 0, disappear, reappear at top */
-/* Or the major vertical stems on H which disappear at the cross bar */
-typedef struct hintinstance {
- real begin; /* location in the non-major direction*/
- real end; /* width/height in non-major direction*/
- unsigned int closed: 1;
- short int counternumber;
- struct hintinstance *next;
-} HintInstance;
-
-enum hinttypes { ht_unspecified=0, ht_h, ht_v, ht_d };
-typedef real _MMArray[2][MmMax];
-
-typedef struct steminfo {
- struct steminfo *next;
- unsigned int hinttype: 2; /* Only used by undoes */
- unsigned int ghost: 1; /* this is a ghost stem hint. As such truetype should ignore it, type2 output should negate it, and type1 should use as is */
- /* stored width will be either 20 or 21 */
- /* Type2 says: -20 is "width" of top edge, -21 is "width" of bottom edge, type1 accepts either */
- unsigned int haspointleft:1;
- unsigned int haspointright:1;
- unsigned int hasconflicts:1;/* Does this stem have conflicts within its cluster? */
- unsigned int used: 1; /* Temporary for counter hints or hint substitution */
- unsigned int tobeused: 1; /* Temporary for counter hints or hint substitution */
- unsigned int active: 1; /* Currently active hint in Review Hints dlg */
- /* displayed differently in char display */
- unsigned int enddone: 1; /* Used by ttf instructing, indicates a prev */
- /* hint had the same end as this one (so */
- /* the points on the end line have been */
- /* instructed already */
- unsigned int startdone: 1; /* Used by ttf instructing */
- /*unsigned int backwards: 1;*/ /* If we think this hint is better done with a negative width */
- unsigned int reordered: 1; /* In AutoHinting. Means we changed the start of the hint, need to test for out of order */
- unsigned int pendingpt: 1; /* A pending stem creation, not a true stem */
- unsigned int linearedges: 1;/* If we have a nice rectangle then we aren't */
- /* interested in the orientation which is */
- /* wider than long */
- int16 hintnumber; /* when dumping out hintmasks we need to know */
- /* what bit to set for this hint */
- union {
- int mask; /* Mask of all references that use this hint */
- /* in type2 output */
- _MMArray *unblended /*[2][MmMax]*/; /* Used when reading in type1 mm hints */
- } u;
- real start; /* location at which the stem starts */
- real width; /* or height */
- HintInstance *where; /* location(s) in the other coord */
-} StemInfo;
-
-typedef struct dsteminfo {
- struct dsteminfo *next; /* First two fields match those in steminfo */
- unsigned int hinttype: 2; /* Only used by undoes */
- unsigned int used: 1; /* used only by tottf.c:gendinstrs, metafont.c to mark a hint that has been dealt with */
- BasePoint left, right, unit;
- HintInstance *where; /* location(s) along the unit vector */
-} DStemInfo;
-
-typedef struct minimumdistance {
- /* If either point is NULL it will be assumed to mean either the origin */
- /* or the width point (depending on which is closer). This allows user */
- /* to control metrics... */
- SplinePoint *sp1, *sp2;
- unsigned int x: 1;
- unsigned int done: 1;
- struct minimumdistance *next;
-} MinimumDistance;
-
-typedef struct layer /* : reflayer */{
- unsigned int background: 1;
- unsigned int order2: 1;
- unsigned int anyflexes: 1;
- unsigned int dofill: 1;
- unsigned int dostroke: 1;
- unsigned int fillfirst: 1;
- struct brush fill_brush;
- struct pen stroke_pen;
- SplinePointList *splines;
- RefChar *refs; /* Only in foreground layer(s) */
- uint32 validation_state;
- uint32 old_vs;
- void *python_persistent; /* If python this will hold a python object, if not python this will hold a string containing a pickled object. We do nothing with it (if not python) except save it back out unchanged */
- int python_persistent_has_lists;
-} Layer;
-
-enum layer_type { ly_all=-2, ly_grid= -1, ly_back=0, ly_fore=1,
- /* Possibly other foreground layers for type3 things */
- /* Possibly other background layers for normal fonts */
- ly_none = -3
- };
-
-struct gv_part {
- char *component;
- unsigned int is_extender: 1; /* This component may be skipped or repeated */
- uint16 startConnectorLength;
- uint16 endConnectorLength;
- uint16 fullAdvance;
-};
-
-/* For the 'MATH' table (and for TeX) */
-struct glyphvariants {
- char *variants; /* Space separated list of glyph names */
-/* Glyph assembly */
- int16 italic_correction; /* Of the composed glyph */
- DeviceTable *italic_adjusts;
- int part_cnt;
- struct gv_part *parts;
-};
-
-struct mathkerndata {
- int16 height,kern;
- DeviceTable *height_adjusts;
- DeviceTable *kern_adjusts;
-};
-
-/* For the 'MATH' table */
-struct mathkernvertex {
- int cnt; /* There is one more kern entry than height entry */
- /* So the last mkd should have its height ignored */
- /* The MATH table stores the height count, I think the kern count */
- /* is more useful (and that's what I use here). They differ by 1 */
- struct mathkerndata *mkd;
-};
-
-struct mathkern {
- struct mathkernvertex top_right;
- struct mathkernvertex top_left;
- struct mathkernvertex bottom_right;
- struct mathkernvertex bottom_left;
-};
-
-enum privatedict_state {
- pds_odd = 0x1, /* Odd number of entries */
- pds_outoforder = 0x2, /* Bluevalues should be listed in order */
- pds_toomany = 0x4, /* arrays are of limited sizes */
- pds_tooclose = 0x8, /* adjacent zones must not be within 2*bluefuzz+1 (or 3, if bluefuzz omitted) */
- pds_notintegral= 0x10, /* Must be integers */
- pds_toobig = 0x20, /* within pair difference have some relation to BlueScale but the docs make no sense to me */
- pds_shift = 8, /* BlueValues/OtherBlues, unshifted, FamilyBlues/FamilyOtherBlues shifted once */
-
- pds_missingblue = 0x010000,
- pds_badbluefuzz = 0x020000,
- pds_badbluescale = 0x040000,
- pds_badstdhw = 0x080000,
- pds_badstdvw = 0x100000,
- pds_badstemsnaph = 0x200000,
- pds_badstemsnapv = 0x400000,
- pds_stemsnapnostdh = 0x0800000,
- pds_stemsnapnostdv = 0x1000000,
- pds_badblueshift = 0x2000000
-
-};
-
-enum validation_state { vs_unknown = 0,
- vs_known=0x01, /* It has been validated */
- vs_opencontour=0x02,
- vs_selfintersects=0x04,
- vs_wrongdirection=0x08,
- vs_flippedreferences=0x10, /* special case of wrong direction */
- vs_missingextrema=0x20,
- vs_missingglyphnameingsub=0x40,
- /* Next few are postscript only */
- vs_toomanypoints=0x80,
- vs_toomanyhints=0x100,
- vs_badglyphname=0x200,
- /* Next few are only for fontlint */
- /* These are relative to maxp values which ff would fix on generating a font */
- vs_maxp_toomanypoints =0x400,
- vs_maxp_toomanypaths =0x800,
- vs_maxp_toomanycomppoints=0x1000,
- vs_maxp_toomanycomppaths =0x2000,
- vs_maxp_instrtoolong =0x4000,
- vs_maxp_toomanyrefs =0x8000,
- vs_maxp_refstoodeep =0x10000,
- /* vs_maxp_prepfpgmtoolong=0x20000, */ /* I think I was wrong about this "error" */
- /* Oops, we need another one, two, for the glyphs */
- vs_pointstoofarapart = 0x40000,
- vs_nonintegral = 0x80000, /* This will never be interesting in a real font, but might be in an sfd file */
- vs_missinganchor = 0x100000,
- vs_dupname = 0x200000,
- vs_dupunicode = 0x400000,
- vs_overlappedhints = 0x800000,
-
- vs_last = vs_overlappedhints,
- vs_maskps = 0x3fe | vs_pointstoofarapart | vs_missinganchor | vs_dupname | vs_dupunicode | vs_overlappedhints,
- vs_maskcid = 0x1fe | vs_pointstoofarapart | vs_missinganchor | vs_dupname | vs_overlappedhints,
- vs_maskttf = 0x7e | vs_pointstoofarapart | vs_nonintegral | vs_missinganchor | vs_dupunicode,
- vs_maskfindproblems = 0x1be | vs_pointstoofarapart | vs_nonintegral | vs_missinganchor | vs_overlappedhints
- };
-
-struct splinecharlist { struct splinechar *sc; struct splinecharlist *next;};
-
-struct altuni { struct altuni *next; int32 unienc, vs; uint32 fid; };
- /* vs is the "variation selector" a unicode codepoint which modifieds */
- /* the code point before it. If vs is -1 then unienc is just an */
- /* alternate encoding (greek Alpha and latin A), but if vs is one */
- /* of unicode's variation selectors then this glyph is somehow a */
- /* variant shape. The specifics depend on the selector and script */
- /* fid is currently unused, but may, someday, be used to do ttcs */
- /* NOTE: GlyphInfo displays vs==-1 as vs==0, and fixes things up */
-
-typedef struct splinechar {
- char *name;
- int unicodeenc;
- int orig_pos; /* Original position in the glyph list */
- int16 width, vwidth;
- int16 lsidebearing; /* only used when reading in a type1 font */
- /* Or an otf font where it is the subr number of a refered character */
- /* or a ttf font without bit 1 of head.flags set */
- /* or (once upon a time, but no longer) a ttf font with vert metrics where it is the ymax value when we had a font-wide vertical offset */
- /* or when generating morx where it is the mask of tables in which the glyph occurs */
- /* Always a temporary value */
- int ttf_glyph; /* only used when writing out a ttf or otf font */
- Layer *layers; /* layer[0] is background, layer[1] foreground */
- /* In type3 fonts 2-n are also foreground, otherwise also background */
- int layer_cnt;
- StemInfo *hstem; /* hstem hints have a vertical offset but run horizontally */
- StemInfo *vstem; /* vstem hints have a horizontal offset but run vertically */
- DStemInfo *dstem; /* diagonal hints for ttf */
- MinimumDistance *md;
-
- struct charinfo *charinfo;
- struct splinefont *parent;
- unsigned int changed: 1;
- unsigned int changedsincelasthinted: 1;
- unsigned int manualhints: 1;
- unsigned int ticked: 1; /* For reference character processing */
- /* And fontview processing */
- unsigned int changed_since_autosave: 1;
- unsigned int widthset: 1; /* needed so an emspace char doesn't disappear */
- unsigned int vconflicts: 1; /* Any hint overlaps in the vstem list? */
- unsigned int hconflicts: 1; /* Any hint overlaps in the hstem list? */
- unsigned int searcherdummy: 1;
- unsigned int changed_since_search: 1;
- unsigned int wasopen: 1;
- unsigned int namechanged: 1;
- unsigned int blended: 1; /* An MM blended character */
- unsigned int ticked2: 1;
- unsigned int glyph_class: 3; /* 0=> fontforge determines class automagically, else one more than the class value in gdef so 2+1=>lig, 3+1=>mark */
- unsigned int numberpointsbackards: 1;
- unsigned int instructions_out_of_date: 1;
- unsigned int complained_about_ptnums: 1;
- unsigned int vs_open: 1;
- unsigned int unlink_rm_ovrlp_save_undo: 1;
- unsigned int inspiro: 1;
- unsigned int lig_caret_cnt_fixed: 1;
- unsigned int suspendMetricsViewEventPropagation: 1; /* rect tool might do this while drawing */
- /* 5 bits left (one more if we ignore compositionunit below) */
-#if HANYANG
- unsigned int compositionunit: 1;
- int16 jamo, varient;
-#endif
- struct splinecharlist *dependents;
- /* The dependents list is a list of all characters which refenence*/
- /* the current character directly */
- KernPair *kerns; // Note that the left character in the pair has the reference to the kerning pair, which in turn references the right character.
- KernPair *vkerns;
- PST *possub; /* If we are a ligature then this tells us what */
- /* It may also contain a bunch of other stuff now */
- LigList *ligofme; /* If this is the first character of a ligature then this gives us the list of possible ones */
- /* this field must be regenerated before the font is saved */
- char *comment; /* in utf8 */
- uint32 /*Color*/ color;
- AnchorPoint *anchor;
- uint8 *ttf_instrs;
- int16 ttf_instrs_len;
- int16 countermask_cnt;
- HintMask *countermasks;
- struct altuni *altuni;
-/* for TeX */
- int16 tex_height, tex_depth;
-/* TeX also uses italic_correction and glyph variants below */
-/* For the 'MATH' table (and for TeX) */
- unsigned int is_extended_shape: 1;
- int16 italic_correction;
- int16 top_accent_horiz; /* MATH table allows you to specific a*/
- /* horizontal anchor for accent attachments, vertical */
- /* positioning is done elsewhere */
- DeviceTable *italic_adjusts;
- DeviceTable *top_accent_adjusts;
- struct glyphvariants *vert_variants;
- struct glyphvariants *horiz_variants;
- struct mathkern *mathkern;
-/* End of MATH/TeX fields */
-#ifndef _NO_PYTHON
- void *python_sc_object;
- void *python_temporary;
-#endif
-#if 0
- // Python persistent data is now in the layers.
- void *python_persistent; /* If python this will hold a python object, if not python this will hold a string containing a pickled object. We do nothing with it (if not python) except save it back out unchanged */
- int python_persistent_has_lists;
-#endif // 0
- /* If the glyph is used as a tile pattern, then the next two values */
- /* determine the amount of white space around the tile. If extra is*/
- /* non-zero then we add it to the max components of the bbox and */
- /* subtract it from the min components. If extra is 0 then tile_bounds*/
- /* will be used. If tile_bounds is all zeros then the glyph's bbox */
- /* will be used. */
- real tile_margin; /* If the glyph is used as a tile */
- DBounds tile_bounds;
- char * glif_name; // This stores the base name of the glyph when saved to U. F. O..
-} SplineChar;
-
-#define TEX_UNDEF 0x7fff
-
-enum ttfnames { ttf_copyright=0, ttf_family, ttf_subfamily, ttf_uniqueid,
- ttf_fullname, ttf_version, ttf_postscriptname, ttf_trademark,
- ttf_manufacturer, ttf_designer, ttf_descriptor, ttf_venderurl,
- ttf_designerurl, ttf_license, ttf_licenseurl, ttf_idontknow/*reserved*/,
- ttf_preffamilyname, ttf_prefmodifiers, ttf_compatfull, ttf_sampletext,
- ttf_cidfindfontname, ttf_wwsfamily, ttf_wwssubfamily, ttf_namemax };
-struct ttflangname {
- int lang;
- char *names[ttf_namemax]; /* in utf8 */
- int frommac[(ttf_namemax+31)/32]; /* Used when parsing the 'name' table */
- struct ttflangname *next;
-};
-
-struct MATH {
-/* From the MATH Constants subtable (constants for positioning glyphs. Not PI)*/
- int16 ScriptPercentScaleDown;
- int16 ScriptScriptPercentScaleDown;
- uint16 DelimitedSubFormulaMinHeight;
- uint16 DisplayOperatorMinHeight;
- int16 MathLeading;
- DeviceTable *MathLeading_adjust;
- int16 AxisHeight;
- DeviceTable *AxisHeight_adjust;
- int16 AccentBaseHeight;
- DeviceTable *AccentBaseHeight_adjust;
- int16 FlattenedAccentBaseHeight;
- DeviceTable *FlattenedAccentBaseHeight_adjust;
- int16 SubscriptShiftDown;
- DeviceTable *SubscriptShiftDown_adjust;
- int16 SubscriptTopMax;
- DeviceTable *SubscriptTopMax_adjust;
- int16 SubscriptBaselineDropMin;
- DeviceTable *SubscriptBaselineDropMin_adjust;
- int16 SuperscriptShiftUp;
- DeviceTable *SuperscriptShiftUp_adjust;
- int16 SuperscriptShiftUpCramped;
- DeviceTable *SuperscriptShiftUpCramped_adjust;
- int16 SuperscriptBottomMin;
- DeviceTable *SuperscriptBottomMin_adjust;
- int16 SuperscriptBaselineDropMax;
- DeviceTable *SuperscriptBaselineDropMax_adjust;
- int16 SubSuperscriptGapMin;
- DeviceTable *SubSuperscriptGapMin_adjust;
- int16 SuperscriptBottomMaxWithSubscript;
- DeviceTable *SuperscriptBottomMaxWithSubscript_adjust;
- int16 SpaceAfterScript;
- DeviceTable *SpaceAfterScript_adjust;
- int16 UpperLimitGapMin;
- DeviceTable *UpperLimitGapMin_adjust;
- int16 UpperLimitBaselineRiseMin;
- DeviceTable *UpperLimitBaselineRiseMin_adjust;
- int16 LowerLimitGapMin;
- DeviceTable *LowerLimitGapMin_adjust;
- int16 LowerLimitBaselineDropMin;
- DeviceTable *LowerLimitBaselineDropMin_adjust;
- int16 StackTopShiftUp;
- DeviceTable *StackTopShiftUp_adjust;
- int16 StackTopDisplayStyleShiftUp;
- DeviceTable *StackTopDisplayStyleShiftUp_adjust;
- int16 StackBottomShiftDown;
- DeviceTable *StackBottomShiftDown_adjust;
- int16 StackBottomDisplayStyleShiftDown;
- DeviceTable *StackBottomDisplayStyleShiftDown_adjust;
- int16 StackGapMin;
- DeviceTable *StackGapMin_adjust;
- int16 StackDisplayStyleGapMin;
- DeviceTable *StackDisplayStyleGapMin_adjust;
- int16 StretchStackTopShiftUp;
- DeviceTable *StretchStackTopShiftUp_adjust;
- int16 StretchStackBottomShiftDown;
- DeviceTable *StretchStackBottomShiftDown_adjust;
- int16 StretchStackGapAboveMin;
- DeviceTable *StretchStackGapAboveMin_adjust;
- int16 StretchStackGapBelowMin;
- DeviceTable *StretchStackGapBelowMin_adjust;
- int16 FractionNumeratorShiftUp;
- DeviceTable *FractionNumeratorShiftUp_adjust;
- int16 FractionNumeratorDisplayStyleShiftUp;
- DeviceTable *FractionNumeratorDisplayStyleShiftUp_adjust;
- int16 FractionDenominatorShiftDown;
- DeviceTable *FractionDenominatorShiftDown_adjust;
- int16 FractionDenominatorDisplayStyleShiftDown;
- DeviceTable *FractionDenominatorDisplayStyleShiftDown_adjust;
- int16 FractionNumeratorGapMin;
- DeviceTable *FractionNumeratorGapMin_adjust;
- int16 FractionNumeratorDisplayStyleGapMin;
- DeviceTable *FractionNumeratorDisplayStyleGapMin_adjust;
- int16 FractionRuleThickness;
- DeviceTable *FractionRuleThickness_adjust;
- int16 FractionDenominatorGapMin;
- DeviceTable *FractionDenominatorGapMin_adjust;
- int16 FractionDenominatorDisplayStyleGapMin;
- DeviceTable *FractionDenominatorDisplayStyleGapMin_adjust;
- int16 SkewedFractionHorizontalGap;
- DeviceTable *SkewedFractionHorizontalGap_adjust;
- int16 SkewedFractionVerticalGap;
- DeviceTable *SkewedFractionVerticalGap_adjust;
- int16 OverbarVerticalGap;
- DeviceTable *OverbarVerticalGap_adjust;
- int16 OverbarRuleThickness;
- DeviceTable *OverbarRuleThickness_adjust;
- int16 OverbarExtraAscender;
- DeviceTable *OverbarExtraAscender_adjust;
- int16 UnderbarVerticalGap;
- DeviceTable *UnderbarVerticalGap_adjust;
- int16 UnderbarRuleThickness;
- DeviceTable *UnderbarRuleThickness_adjust;
- int16 UnderbarExtraDescender;
- DeviceTable *UnderbarExtraDescender_adjust;
- int16 RadicalVerticalGap;
- DeviceTable *RadicalVerticalGap_adjust;
- int16 RadicalDisplayStyleVerticalGap;
- DeviceTable *RadicalDisplayStyleVerticalGap_adjust;
- int16 RadicalRuleThickness;
- DeviceTable *RadicalRuleThickness_adjust;
- int16 RadicalExtraAscender;
- DeviceTable *RadicalExtraAscender_adjust;
- int16 RadicalKernBeforeDegree;
- DeviceTable *RadicalKernBeforeDegree_adjust;
- int16 RadicalKernAfterDegree;
- DeviceTable *RadicalKernAfterDegree_adjust;
- uint16 RadicalDegreeBottomRaisePercent;
-/* Global constants from other subtables */
- uint16 MinConnectorOverlap; /* in the math variants sub-table */
-};
-
-enum backedup_state { bs_dontknow=0, bs_not=1, bs_backedup=2 };
-enum loadvalidation_state {
- lvs_bad_ps_fontname = 0x001,
- lvs_bad_glyph_table = 0x002,
- lvs_bad_cff_table = 0x004,
- lvs_bad_metrics_table = 0x008,
- lvs_bad_cmap_table = 0x010,
- lvs_bad_bitmaps_table = 0x020,
- lvs_bad_gx_table = 0x040,
- lvs_bad_ot_table = 0x080,
- lvs_bad_os2_version = 0x100,
- lvs_bad_sfnt_header = 0x200
- };
-
-typedef struct layerinfo {
- char *name;
- unsigned int background: 1; /* Layer is to be treated as background: No width, images, not worth outputting */
- unsigned int order2: 1; /* Layer's data are order 2 bezier splines (truetype) rather than order 3 (postscript) */
- /* In all glyphs in the font */
- unsigned int ticked: 1;
- char * ufo_path;
-} LayerInfo;
-
-/* Baseline data from the 'BASE' table */
-struct baselangextent {
- uint32 lang; /* also used for feature tag */
- struct baselangextent *next;
- int16 ascent, descent;
- struct baselangextent *features;
-};
-
-struct basescript {
- uint32 script;
- struct basescript *next;
- int def_baseline; /* index [0-baseline_cnt) */
- int16 *baseline_pos; /* baseline_cnt of these */
- struct baselangextent *langs; /* Language specific extents (may be NULL) */
- /* The default one has the tag DEFAULT_LANG */
-};
-
-struct Base {
- int baseline_cnt;
- uint32 *baseline_tags;
- /* A font does not need to provide info on all baselines, but if one script */
- /* talks about a baseline, then all must. So the set of baselines is global*/
- struct basescript *scripts;
-};
-
-struct pfminfo { /* A misnomer now. OS/2 info would be more accurate, but that's stuff in here from all over ttf files */
- unsigned int pfmset: 1;
- unsigned int winascent_add: 1;
- unsigned int windescent_add: 1;
- unsigned int hheadascent_add: 1;
- unsigned int hheaddescent_add: 1;
- unsigned int typoascent_add: 1;
- unsigned int typodescent_add: 1;
- unsigned int subsuper_set: 1;
- unsigned int panose_set: 1;
- unsigned int hheadset: 1;
- unsigned int vheadset: 1;
- unsigned int hascodepages: 1;
- unsigned int hasunicoderanges: 1;
- unsigned char pfmfamily;
- int16 weight;
- int16 width;
- char panose[10];
- /* A subset of OS/2 fsSelection, used for style mapping. */
- /* Must agree with macStyle per otspec, takes precedence. */
- /* Can't use macStyle because it doesn't have a "regular" bit unlike the OS/2 component. */
- int16 stylemap;
- int16 fstype;
- int16 linegap; /* from hhea */
- int16 vlinegap; /* from vhea */
- int16 hhead_ascent, hhead_descent;
- int16 os2_typoascent, os2_typodescent, os2_typolinegap;
- int16 os2_winascent, os2_windescent;
- int16 os2_subxsize, os2_subysize, os2_subxoff, os2_subyoff;
- int16 os2_supxsize, os2_supysize, os2_supxoff, os2_supyoff;
- int16 os2_strikeysize, os2_strikeypos;
- int16 os2_capheight, os2_xheight;
- char os2_vendor[4];
- int16 os2_family_class;
- uint32 codepages[2];
- uint32 unicoderanges[4];
-};
-
-struct ttf_table {
- uint32 tag;
- uint32 len, maxlen;
- uint8 *data;
- struct ttf_table *next;
- FILE *temp; /* Temporary storage used during generation */
-};
-
-enum texdata_type { tex_unset, tex_text, tex_math, tex_mathext };
-
-struct texdata {
- enum texdata_type type;
- int32 params[22]; /* param[6] has different meanings in normal and math fonts */
-};
-
-struct gasp {
- uint16 ppem;
- uint16 flags;
-};
-
-struct ff_glyphclasses {
- // This matches struct glyphclasses from featurefile.c for now. We may make the references numeric in the future.
- // There may be a matching entry as a class elsewhere. For now, the output driver is responsible for eliminating duplicates.
- // In the interest of preserving orderings, we shall output from here, checking for value overrides from kerning classes on each kerning group entry.
- char *classname, *glyphs;
- struct ff_glyphclasses *next;
-};
-
-struct ff_rawoffsets {
- // This stores raw offsets as read from kerning.plist.
- // FontForge shall output these after native data and shall output only those for which it has not emitted native data.
- char *left;
- char *right;
- int offset;
- struct ff_rawoffsets *next;
-};
-
-typedef struct splinefont {
- char *fontname, *fullname, *familyname, *weight;
- char *familyname_with_timestamp;
- char *copyright;
- char *filename; /* sfd name. NULL if we open a font, that's origname */
- char *defbasefilename;
- char *version;
- real italicangle, upos, uwidth; /* In font info */
- int ascent, descent, invalidem; // If invalidem, then we use the format-specific ascent and descent on export.
- int uniqueid; /* Not copied when reading in!!!! */
- int glyphcnt, glyphmax; /* allocated size of glyphs array */
- SplineChar **glyphs;
- unsigned int changed: 1;
- unsigned int changed_since_autosave: 1;
- unsigned int changed_since_xuidchanged: 1;
- unsigned int display_antialias: 1;
- unsigned int display_bbsized: 1;
- unsigned int dotlesswarn: 1; /* User warned that font doesn't have a dotless i character */
- unsigned int serifcheck: 1; /* Have we checked to see if we have serifs? */
- unsigned int issans: 1; /* We have no serifs */
- unsigned int isserif: 1; /* We have serifs. If neither set then we don't know. */
- unsigned int hasvmetrics: 1; /* We've got vertical metric data and should output vhea/vmtx/VORG tables */
- unsigned int loading_cid_map: 1;
- unsigned int dupnamewarn: 1; /* Warn about duplicate names when loading bdf font */
- unsigned int encodingchanged: 1; /* Font's encoding has changed since it was loaded */
- unsigned int multilayer: 1; /* only applies if TYPE3 is set, means this font can contain strokes & fills */
- /* I leave it in so as to avoid cluttering up code with #ifdefs */
- unsigned int strokedfont: 1;
- unsigned int new: 1; /* A new and unsaved font */
- unsigned int compacted: 1; /* only used when opening a font */
- unsigned int backedup: 2; /* 0=>don't know, 1=>no, 2=>yes */
- unsigned int use_typo_metrics: 1; /* The standard says to. But MS */
- /* seems to feel that isn't good */
- /* enough and has created a bit */
- /* to mean "really use them" */
- unsigned int weight_width_slope_only: 1; /* This bit seems stupid to me */
- unsigned int save_to_dir: 1; /* Loaded from an sfdir collection rather than a simple sfd file */
- unsigned int head_optimized_for_cleartype: 1;/* Bit in the 'head' flags field, if unset "East Asian fonts in the Windows Presentation Framework (Avalon) will not be hinted" */
- unsigned int ticked: 1;
- unsigned int internal_temp: 1; /* Internal temporary font to be passed to freetype for rasterizing. Don't complain about oddities. Don't generate GPOS/GSUB tables, etc. */
- unsigned int complained_about_spiros: 1;
- unsigned int use_xuid: 1; /* Adobe has deprecated these two */
- unsigned int use_uniqueid: 1; /* fields. Mostly we don't want to use them */
- /* 2 bits left */
- struct metricsview *metrics;
- enum uni_interp uni_interp;
- NameList *for_new_glyphs;
- EncMap *map; /* only used when opening a font to provide original default encoding */
- Layer grid;
- char *origname; /* filename of font file (ie. if not an sfd) */
- char *autosavename;
- int display_size; /* a val <0 => Generate our own images from splines, a value >0 => find a bdf font of that size */
- struct psdict *private; /* read in from type1 file or provided by user */
- char *xuid;
- struct pfminfo pfminfo;
- struct ttflangname *names;
- char *cidregistry, *ordering;
- int supplement;
- int subfontcnt;
- struct splinefont **subfonts;
- struct splinefont *cidmaster; /* Top level cid font */
- float cidversion;
-#if HANYANG
- struct compositionrules *rules;
-#endif
- char *comments; /* Used to be restricted to ASCII, now utf8 */
- char *fontlog;
- int tempuniqueid;
- int top_enc;
- uint16 desired_row_cnt, desired_col_cnt;
- struct glyphnamehash *glyphnames;
- struct ttf_table *ttf_tables, *ttf_tab_saved;
- /* We copy: fpgm, prep, cvt, maxp (into ttf_tables) user can ask for others, into saved*/
- char **cvt_names;
- /* The end of this array is marked by a special entry: */
-#define END_CVT_NAMES ((char *) (~(intpt) 0))
- struct instrdata *instr_dlgs; /* Pointer to all table and character instruction dlgs in this font */
- struct shortview *cvt_dlg;
- struct kernclasslistdlg *kcld, *vkcld;
- struct kernclassdlg *kcd;
- struct texdata texdata;
- OTLookup *gsub_lookups, *gpos_lookups;
- /* Apple morx subtables become gsub, and kern subtables become gpos */
- AnchorClass *anchor;
- KernClass *kerns, *vkerns;
- FPST *possub;
- ASM *sm; /* asm is a keyword */
- MacFeat *features;
- char *chosenname; /* Set for files with multiple fonts in them */
- struct mmset *mm; /* If part of a multiple master set */
- int16 macstyle;
- char *fondname; /* For use in generating mac families */
- /* from the GPOS 'size' feature. design_size, etc. are measured in tenths of a point */
- /* bottom is exclusive, top is inclusive */
- /* if any field is 0, it is undefined. All may be undefined, All may be */
- /* defined, or design_size may be defined without any of the others */
- /* but we can't define the range without defining the other junk */
- /* Name must contain an English language name, may contain others */
- uint16 design_size;
- uint16 fontstyle_id;
- struct otfname *fontstyle_name;
- uint16 design_range_bottom, design_range_top;
- struct otffeatname *feat_names;
- real strokewidth;
-/* For GDEF Mark Attachment Class -- used in lookup flags */
-/* As usual, class 0 is unused */
- int mark_class_cnt;
- char **mark_classes; /* glyph name list */
- char **mark_class_names; /* used within ff, utf8 (the name we've given to this class of marks) */
-/* For GDEF Mark Attachment Sets -- used in lookup flags */
-/* but here, set 0 is meaningful, since pst_usemarkfilteringset tells us */
- int mark_set_cnt;
- char **mark_sets; /* glyph name list */
- char **mark_set_names; /* used within ff, utf8 (the name we've given to this class of marks) */
- struct ff_glyphclasses *groups; // This stores arbitrary named character lists for use in kerning or in the feature file.
- struct ff_rawoffsets *groupkerns;
- struct ff_rawoffsets *groupvkerns;
- long long creationtime; /* seconds since 1970 */
- long long modificationtime;
- short os2_version; /* 0 means default rather than the real version 0 */
- short compression; /* If we opened a compressed sfd file, then save it out compressed too */
- short gasp_version; /* 0/1 currently */
- short gasp_cnt;
- struct gasp *gasp;
- struct MATH *MATH;
- float sfd_version; /* Used only when reading in an sfd file */
- struct gfi_data *fontinfo;
- struct val_data *valwin;
-#if !defined(_NO_PYTHON)
- void *python_temporary;
-#endif
- void *python_persistent; /* If python this will hold a python object, if not python this will hold a string containing a pickled object. We do nothing with it (if not python) except save it back out unchanged */
- int python_persistent_has_lists; // This affects whether arrays exist as tuples or as lists (thus allowing us to use tuples for foreign data).
- enum loadvalidation_state loadvalidation_state;
- LayerInfo *layers;
- int layer_cnt;
- int display_layer;
- struct Base *horiz_base, *vert_base;
- Justify *justify;
- int extrema_bound; /* Splines do not count for extrema complaints when the distance between the endpoints is less than or equal to this */
- int width_separation;
- int sfntRevision;
-#define sfntRevisionUnset 0x44445555
- int woffMajor;
-#define woffUnset 0x4455
- int woffMinor;
- char *woffMetadata;
- real ufo_ascent, ufo_descent; /* I don't know what these mean, they don't seem to correspond to any other ascent/descent pair, but retain them so round-trip ufo input/output leaves them unchanged */
- /* ufo_descent is negative */
- char *styleMapFamilyName;
- struct sfundoes *undoes;
- char collab_uuid[ FF_UUID_STRING_SIZE ];
- int preferred_kerning; // 1 for U. F. O. native, 2 for feature file, 0 undefined. Input functions shall flag 2, I think. This is now in S. F. D. in order to round-trip U. F. O. consistently.
-} SplineFont;
-
-struct axismap {
- int points; /* size of the next two arrays */
- real *blends; /* between [0,1] ordered so that blend[0]<blend[1]<... */
- real *designs; /* between the design ranges for this axis, typically [1,999] or [6,72] */
- real min, def, max; /* For mac */
- struct macname *axisnames; /* For mac */
-};
-
-struct named_instance { /* For mac */
- real *coords; /* array[axis], these are in user units */
- struct macname *names;
-};
-
-/* I am going to simplify my life and not encourage intermediate designs */
-/* this means I can easily calculate ConvertDesignVector, and don't have */
-/* to bother the user with specifying it. */
-/* (NormalizeDesignVector is fairly basic and shouldn't need user help ever) */
-/* (As long as they want piecewise linear) */
-/* I'm not going to support intermediate designs at all for apple var tables */
-typedef struct mmset {
- int axis_count;
- char *axes[4];
- int instance_count;
- SplineFont **instances;
- SplineFont *normal;
- real *positions; /* array[instance][axis] saying where each instance lies on each axis */
- real *defweights; /* array[instance] saying how much of each instance makes the normal font */
- /* for adobe */
- struct axismap *axismaps; /* array[axis] */
- char *cdv, *ndv; /* for adobe */
- int named_instance_count;
- struct named_instance *named_instances;
- unsigned int changed: 1;
- unsigned int apple: 1;
-} MMSet;
-
-/* mac styles. Useful idea we'll just steal it */
-enum style_flags { sf_bold = 1, sf_italic = 2, sf_underline = 4, sf_outline = 8,
- sf_shadow = 0x10, sf_condense = 0x20, sf_extend = 0x40 };
-
-struct sflist {
- SplineFont *sf;
- int32 *sizes;
- FILE *tempttf; /* For ttf */
- int id; /* For ttf */
- int* ids; /* One for each size */
- BDFFont **bdfs; /* Ditto */
- EncMap *map;
- struct sflist *next;
- char **former_names;
- int len;
-};
-
- /* Used for drawing text with mark to base anchors */
-typedef struct anchorpos {
- SplineChar *sc; /* This is the mark being positioned */
- int x,y; /* Its origin should be shifted this much relative to that of the original base char */
- AnchorPoint *apm; /* The anchor point in sc used to position it */
- AnchorPoint *apb; /* The anchor point in the base character against which we are positioned */
- int base_index; /* Index in this array to the base character (-1=> original base char) */
- unsigned int ticked: 1; /* Used as a mark to mark */
-} AnchorPos;
-
-enum ttf_flags { ttf_flag_shortps = 1, ttf_flag_nohints = 2,
- ttf_flag_applemode=4,
- ttf_flag_pfed_comments=8, ttf_flag_pfed_colors=0x10,
- ttf_flag_otmode=0x20,
- ttf_flag_glyphmap=0x40,
- ttf_flag_TeXtable=0x80,
- ttf_flag_ofm=0x100,
- ttf_flag_oldkern=0x200, /* never set in conjunction with applemode */
- ttf_flag_pfed_lookupnames=0x800,
- ttf_flag_pfed_guides=0x1000,
- ttf_flag_pfed_layers=0x2000,
- ttf_flag_symbol=0x4000,
- ttf_flag_dummyDSIG=0x8000,
- ttf_native_kern=0x10000, // This applies mostly to U. F. O. right now.
- ttf_flag_oldkernmappedonly=0x20000000 // Allow only mapped glyphs in the old-style "kern" table, required for Windows compatibility
- };
-enum ttc_flags { ttc_flag_trymerge=0x1, ttc_flag_cff=0x2 };
-enum openflags { of_fstypepermitted=1, of_askcmap=2, of_all_glyphs_in_ttc=4,
- of_fontlint=8, of_hidewindow=0x10, of_all_tables=0x20 };
-enum ps_flags { ps_flag_nohintsubs = 0x10000, ps_flag_noflex=0x20000,
- ps_flag_nohints = 0x40000, ps_flag_restrict256=0x80000,
- ps_flag_afm = 0x100000, ps_flag_pfm = 0x200000,
- ps_flag_tfm = 0x400000,
- ps_flag_round = 0x800000,
-/* CFF fonts are wrapped up in some postscript sugar -- unless they are to */
-/* go into a pdf file or an otf font */
- ps_flag_nocffsugar = 0x1000000,
-/* in type42 cid fonts we sometimes want an identity map from gid to cid */
- ps_flag_identitycidmap = 0x2000000,
- ps_flag_afmwithmarks = 0x4000000,
- ps_flag_noseac = 0x8000000,
- ps_flag_outputfontlog = 0x10000000,
- ps_flag_mask = (ps_flag_nohintsubs|ps_flag_noflex|
- ps_flag_afm|ps_flag_pfm|ps_flag_tfm|ps_flag_round)
- };
-
-struct compressors { char *ext, *decomp, *recomp; };
-#define COMPRESSORS_EMPTY { NULL, NULL, NULL }
-extern struct compressors compressors[];
-
-enum archive_list_style { ars_tar, ars_zip };
-
-#define ARCHIVERS_EMPTY { NULL, NULL, NULL, NULL, NULL, NULL, 0 }
-
-struct fontdict;
-struct pschars;
-struct findsel;
-struct charprocs;
-struct enc;
-
-#define chunkalloc(size) calloc(1,size)
-#define chunkfree(item,size) free(item)
-
-extern int SFOneWidth(SplineFont *sf);
-extern int CIDOneWidth(SplineFont *sf);
-
-enum fontformat { ff_pfa, ff_pfb, ff_pfbmacbin, ff_multiple, ff_mma, ff_mmb,
- ff_ptype3, ff_ptype0, ff_cid, ff_cff, ff_cffcid,
- ff_type42, ff_type42cid,
- ff_ttf, ff_ttfsym, ff_ttfmacbin, ff_ttc, ff_ttfdfont, ff_otf, ff_otfdfont,
- ff_otfcid, ff_otfciddfont, ff_svg, ff_ufo, ff_woff, ff_none };
-struct cidbytes;
-struct fd2data;
-struct ttfinfo;
-struct alltabs;
-
-typedef struct growbuf {
- unsigned char *pt;
- unsigned char *base;
- unsigned char *end;
-} GrowBuf;
-extern void GrowBuffer(GrowBuf *gb);
-
-struct glyphdata;
-extern int UnitsParallel(BasePoint *u1,BasePoint *u2,int strict);
-extern int CvtPsStem3(struct growbuf *gb, SplineChar *scs[MmMax], int instance_count,
- int ishstem, int round);
-extern struct pschars *SplineFont2ChrsSubrs2(SplineFont *sf, int nomwid,
- int defwid, const int *bygid, int cnt, int flags,
- struct pschars **_subrs,int layer);
-extern struct pschars *CID2ChrsSubrs2(SplineFont *cidmaster,struct fd2data *fds,
- int flags, struct pschars **_glbls,int layer);
-enum bitmapformat { bf_bdf, bf_ttf, bf_sfnt_dfont, bf_sfnt_ms, bf_otb,
- bf_nfntmacbin, /*bf_nfntdfont, */bf_fon, bf_fnt, bf_palm,
- bf_ptype3,
- bf_none };
-extern int32 filechecksum(FILE *file);
-extern int _WriteWOFFFont(FILE *ttf,SplineFont *sf, enum fontformat format,
- int32 *bsizes, enum bitmapformat bf,int flags,EncMap *enc,int layer);
-extern int WriteWOFFFont(char *fontname,SplineFont *sf, enum fontformat format,
- int32 *bsizes, enum bitmapformat bf,int flags,EncMap *enc,int layer);
-extern int _WriteTTFFont(FILE *ttf,SplineFont *sf, enum fontformat format,
- int32 *bsizes, enum bitmapformat bf,int flags,EncMap *enc,int layer);
-extern int WriteTTFFont(char *fontname,SplineFont *sf, enum fontformat format,
- int32 *bsizes, enum bitmapformat bf,int flags,EncMap *enc,int layer);
-extern int _WriteType42SFNTS(FILE *type42,SplineFont *sf,enum fontformat format,
- int flags,EncMap *enc,int layer);
-extern int WriteMacTTFFont(char *fontname,SplineFont *sf, enum fontformat format,
- int32 *bsizes, enum bitmapformat bf,int flags,EncMap *enc,int layer);
-extern int WriteMacFamily(char *filename,struct sflist *sfs,enum fontformat format,
- enum bitmapformat bf,int flags,int layer);
-extern int WriteTTC(const char *filename,struct sflist *sfs,enum fontformat format,
- enum bitmapformat bf,int flags,int layer,enum ttc_flags ttcflags);
-extern long mactime(void);
-extern void DefaultTTFEnglishNames(struct ttflangname *dummy, SplineFont *sf);
-extern int AlreadyMSSymbolArea(SplineFont *sf,EncMap *map);
-extern void OS2FigureCodePages(SplineFont *sf, uint32 CodePage[2]);
-extern void OS2FigureUnicodeRanges(SplineFont *sf, uint32 Ranges[4]);
-extern void SFDefaultOS2Info(struct pfminfo *pfminfo,SplineFont *sf,char *fontname);
-extern void SFDefaultOS2Simple(struct pfminfo *pfminfo,SplineFont *sf);
-extern void SFDefaultOS2SubSuper(struct pfminfo *pfminfo,int emsize,double italicangle);
-extern int ScriptIsRightToLeft(uint32 script);
-extern uint32 ScriptFromUnicode(uint32 u,SplineFont *sf);
-extern uint32 SCScriptFromUnicode(SplineChar *sc);
-extern int SCRightToLeft(SplineChar *sc);
-extern void SFMatchGlyphs(SplineFont *sf,SplineFont *target,int addempties);
-extern void MMMatchGlyphs(MMSet *mm);
-extern const char *_GetModifiers(const char *fontname, const char *familyname, const char *weight);
-extern const char *SFGetModifiers(const SplineFont *sf);
-
-extern int Within4RoundingErrors(bigreal v1, bigreal v2);
-extern int Within16RoundingErrors(bigreal v1, bigreal v2);
-extern int RealNear(real a,real b);
-extern int RealNearish(real a,real b);
-extern int RealApprox(real a,real b);
-extern int RealWithin(real a,real b,real fudge);
-
-extern int PointsDiagonalable(SplineFont *sf,BasePoint **bp,BasePoint *unit);
-extern int MergeDStemInfo(SplineFont *sf,DStemInfo **ds, DStemInfo *test);
-
-extern void LineListFree(LineList *ll);
-extern void LinearApproxFree(LinearApprox *la);
-extern void SplineFree(Spline *spline);
-extern SplinePoint *SplinePointCreate(real x, real y);
-extern void SplinePointFree(SplinePoint *sp);
-extern void SplinePointsFree(SplinePointList *spl);
-extern void SplinePointListFree(SplinePointList *spl);
-extern void SplinePointListsFree(SplinePointList *head);
-extern void SplineSetSpirosClear(SplineSet *spl);
-extern void RefCharFree(RefChar *ref);
-extern void RefCharsFree(RefChar *ref);
-extern void StemInfosFree(StemInfo *h);
-extern void StemInfoFree(StemInfo *h);
-extern void DStemInfosFree(DStemInfo *h);
-extern void DStemInfoFree(DStemInfo *h);
-extern void KernPairsFree(KernPair *kp);
-extern void AnchorPointsFree(AnchorPoint *ap);
-extern void AnchorClassesFree(AnchorClass *kp);
-extern void TtfTablesFree(struct ttf_table *tab);
-extern void ValDevFree(ValDevTab *adjust);
-extern void DeviceTableFree(DeviceTable *adjust);
-extern void PSTFree(PST *lig);
-
-struct lookup_cvt { OTLookup *from, *to; int old;};
-struct sub_cvt { struct lookup_subtable *from, *to; int old;};
-struct ac_cvt { AnchorClass *from, *to; int old;};
-
-extern void TTFLangNamesFree(struct ttflangname *l);
-extern void AltUniFree(struct altuni *altuni);
-extern void AltUniFigure(SplineFont *sf,EncMap *map,int check_dups);
-extern void AltUniAdd(SplineChar *sc,int uni);
-extern void AltUniAdd_DontCheckDups(SplineChar *sc,int uni);
-extern void MinimumDistancesFree(MinimumDistance *md);
-extern void LayerDefault(Layer *);
-extern SplineChar *SplineCharCreate(int layer_cnt);
-extern SplineChar *SFSplineCharCreate(SplineFont *sf);
-extern RefChar *RefCharCreate(void);
-extern void KernClassFreeContents(KernClass *kc);
-extern void KernClassClearSpecialContents(KernClass *kc);
-extern void KernClassListFree(KernClass *kc);
-extern void KernClassListClearSpecialContents(KernClass *kc);
-extern void OTLookupFree(OTLookup *lookup);
-extern void OTLookupListFree(OTLookup *lookup );
-extern void FPSTRuleContentsFree(struct fpst_rule *r, enum fpossub_format format);
-extern void FPSTClassesFree(FPST *fpst);
-extern void FPSTFree(FPST *fpst);
-extern void ASMFree(ASM *sm);
-extern void MacNameListFree(struct macname *mn);
-extern void MacSettingListFree(struct macsetting *ms);
-extern void MacFeatListFree(MacFeat *mf);
-extern void GlyphVariantsFree(struct glyphvariants *gv);
-extern void MathKernVContentsFree(struct mathkernvertex *mk);
-extern void MathKernFree(struct mathkern *mk);
-extern void SplineCharListsFree(struct splinecharlist *dlist);
-extern void LayerFreeContents(SplineChar *sc, int layer);
-extern void SplineCharFreeContents(SplineChar *sc);
-extern void SplineCharFree(SplineChar *sc);
-extern void EncMapFree(EncMap *map);
-extern EncMap *EncMapFromEncoding(SplineFont *sf,Encoding *enc);
-extern EncMap *EncMapNew(int encmax, int backmax, Encoding *enc);
-extern EncMap *EncMap1to1(int enccount);
-extern void ScriptLangListFree(struct scriptlanglist *sl);
-extern void FeatureScriptLangListFree(FeatureScriptLangList *fl);
-extern void SFBaseSort(SplineFont *sf);
-extern struct baselangextent *BaseLangCopy(struct baselangextent *extent);
-extern void BaseLangFree(struct baselangextent *extent);
-extern void BaseScriptFree(struct basescript *bs);
-extern void BaseFree(struct Base *base);
-extern void SplineFontFree(SplineFont *sf);
-extern void SplineFontClearSpecial(SplineFont *sf);
-
-#if 1
-// These relate to experimental support for U. F. O. groups.
-#define GROUP_NAME_KERNING_UFO 1
-#define GROUP_NAME_KERNING_FEATURE 2
-#define GROUP_NAME_VERTICAL 4 // Otherwise horizontal.
-#define GROUP_NAME_RIGHT 8 // Otherwise left (or above).
-
-void GlyphGroupFree(struct ff_glyphclasses* group);
-void GlyphGroupsFree(struct ff_glyphclasses* root);
-void GlyphGroupKernFree(struct ff_rawoffsets* groupkern);
-void GlyphGroupKernsFree(struct ff_rawoffsets* root);
-#ifdef FF_UTHASH_GLIF_NAMES
-struct glif_name_index;
-int HashKerningClassNamesFlex(SplineFont *sf, struct glif_name_index * class_name_hash, int capitalize);
-int HashKerningClassNames(SplineFont *sf, struct glif_name_index * class_name_hash);
-int HashKerningClassNamesCaps(SplineFont *sf, struct glif_name_index * class_name_hash);
-#endif
-#endif // 1
-extern void JstfLangFree(struct jstf_lang *jl);
-extern void JustifyFree(Justify *just);
-extern void OtfNameListFree(struct otfname *on);
-extern void OtfFeatNameListFree(struct otffeatname *fn);
-extern struct otffeatname *findotffeatname(uint32 tag,SplineFont *sf);
-extern void MarkSetFree(int cnt,char **classes,char **names);
-extern void MarkClassFree(int cnt,char **classes,char **names);
-extern void MMSetFreeContents(MMSet *mm);
-extern void MMSetFree(MMSet *mm);
-extern void MMSetClearSpecial(MMSet *mm);
-extern void SplineRefigure3(Spline *spline);
-extern void SplineRefigure(Spline *spline);
-extern Spline *SplineMake3(SplinePoint *from, SplinePoint *to);
-extern int SplinePointListIsClockwise(const SplineSet *spl);
-extern void SplineCharLayerFindBounds(SplineChar *sc,int layer,DBounds *bounds);
-extern void SplineCharFindBounds(SplineChar *sc,DBounds *bounds);
-extern void SplineFontLayerFindBounds(SplineFont *sf,int layer,DBounds *bounds);
-extern void SplineFontFindBounds(SplineFont *sf,DBounds *bounds);
-extern void CIDLayerFindBounds(SplineFont *sf,int layer,DBounds *bounds);
-extern void SplineSetQuickBounds(SplineSet *ss,DBounds *b);
-extern void SplineCharLayerQuickBounds(SplineChar *sc,int layer,DBounds *bounds);
-extern void SplineCharQuickBounds(SplineChar *sc, DBounds *b);
-extern void SplinePointCategorize(SplinePoint *sp);
-extern void SPLCategorizePoints(SplinePointList *spl);
-extern SplinePointList *SplinePointListCopy1(const SplinePointList *spl);
-extern SplinePointList *SplinePointListCopy(const SplinePointList *base);
-extern void BpTransform(BasePoint *to, BasePoint *from, real transform[6]);
-/* The order of the enum elements below doesn't make much sense, but it's done*/
-/* this way to preserve binary compatibility */
-enum transformPointType { tpt_OnlySelected, tpt_AllPoints, tpt_OnlySelectedInterpCPs };
-/*
- * As SplinePointListTransform() does a few things, this is a mask to selectively be
- * able to disable some of them.
- */
-enum transformPointMask {
- tpmask_dontFixControlPoints = 1 << 1,
- tpmask_operateOnSelectedBCP = 1 << 2
-};
-extern SplinePointList *SplinePointListTransform(SplinePointList *base, real transform[6], enum transformPointType allpoints );
-extern SplinePointList *SplinePointListTransformExtended(SplinePointList *base, real transform[6],
- enum transformPointType tpt, enum transformPointMask tpmask );
-extern HintMask *HintMaskFromTransformedRef(RefChar *ref,BasePoint *trans,
- SplineChar *basesc,HintMask *hm);
-extern SplinePointList *SPLCopyTranslatedHintMasks(SplinePointList *base,
- SplineChar *basesc, SplineChar *subsc, BasePoint *trans);
-extern SplinePointList *SPLCopyTransformedHintMasks(RefChar *r,
- SplineChar *basesc, BasePoint *trans,int layer);
-extern void RefCharFindBounds(RefChar *rf);
-extern void SCReinstanciateRefChar(SplineChar *sc,RefChar *rf,int layer);
-enum piecemeal_flags { pf_antialias=1, pf_bbsized=2, pf_ft_nohints=4, pf_ft_recontext=8 };
-#define STD_BDF_PROPS_EMPTY { NULL, 0, 0 }
-
-/* Two lines intersect in at most 1 point */
-/* Two quadratics intersect in at most 4 points */
-/* Two cubics intersect in at most 9 points */ /* Plus an extra space for a trailing -1 */
-extern int SplinesIntersect(const Spline *s1, const Spline *s2, BasePoint pts[9],
- extended t1s[10], extended t2s[10]);
-extern int _CubicSolve(const Spline1D *sp,bigreal sought,extended ts[3]);
-extern int CubicSolve(const Spline1D *sp,bigreal sought,extended ts[3]);
-/* Uses an iterative approximation */
-extern extended IterateSplineSolve(const Spline1D *sp, extended tmin, extended tmax, extended sought_y);
-/* Uses an iterative approximation and then tries to fix things up */
-extern extended IterateSplineSolveFixup(const Spline1D *sp, extended tmin, extended tmax, extended sought_y);
-extern void SplineFindExtrema(const Spline1D *sp, extended *_t1, extended *_t2 );
-
-#define CURVATURE_ERROR -1e9
-extern bigreal SplineCurvature(Spline *s, bigreal t);
-
-extern double CheckExtremaForSingleBitErrors(const Spline1D *sp, double t, double othert);
-extern int Spline2DFindExtrema(const Spline *sp, extended extrema[4] );
-extern int Spline2DFindPointsOfInflection(const Spline *sp, extended poi[2] );
-extern void SplineRemoveExtremaTooClose(Spline1D *sp, extended *_t1, extended *_t2 );
-extern void SCMakeDependent(SplineChar *dependent,SplineChar *base);
-extern SplinePoint *SplineBisect(Spline *spline, extended t);
-extern bigreal SplineLength(Spline *spline);
-extern int SplineIsLinear(Spline *spline);
-extern int SPInterpolate(const SplinePoint *sp);
-enum ae_type { ae_all, ae_between_selected, ae_only_good, ae_only_good_rm_later };
-extern int SpIsExtremum(SplinePoint *sp);
-extern int Spline1DCantExtremeX(const Spline *s);
-extern int Spline1DCantExtremeY(const Spline *s);
-extern Spline *SplineAddExtrema(Spline *s,int always,real lenbound,
- real offsetbound,DBounds *b);
-extern SplineFont *SplineFontEmpty(void);
-extern void SFIncrementXUID(SplineFont *sf);
-extern SplineSet *SplineSetReverse(SplineSet *spl);
-extern void BP_HVForce(BasePoint *vector);
-extern void SplineCharDefaultPrevCP(SplinePoint *base);
-extern void SplineCharDefaultNextCP(SplinePoint *base);
-extern void SplineCharTangentNextCP(SplinePoint *sp);
-extern void SplineCharTangentPrevCP(SplinePoint *sp);
-/**
- * This is like SPAdjustControl but you have not wanting to move the
- * BCP at all, but you would like the current location of the passed
- * BCP to reshape the spline through the splinepoint. For example, if
- * you drag the spline between two points then you might like to touch
- * the inside BCP between the two splinepoints to reshape the whole
- * curve through a curve point.
- */
-extern void SPTouchControl(SplinePoint *sp,BasePoint *which, int order2);
-extern void SPAdjustControl(SplinePoint *sp,BasePoint *cp, BasePoint *to,int order2);
-
-extern SplineSet *SSttfApprox(SplineSet *ss);
-extern SplineSet *SSPSApprox(SplineSet *ss);
-extern SplineSet *SplineSetsPSApprox(SplineSet *ss);
-extern void SplineRefigure2(Spline *spline);
-extern void SplineRefigureFixup(Spline *spline);
-extern Spline *SplineMake2(SplinePoint *from, SplinePoint *to);
-extern Spline *SplineMake(SplinePoint *from, SplinePoint *to, int order2);
-extern void SCConvertToOrder2(SplineChar *sc);
-extern void SFConvertToOrder2(SplineFont *sf);
-extern int IntersectLines(BasePoint *inter,
- BasePoint *line1_1, BasePoint *line1_2,
- BasePoint *line2_1, BasePoint *line2_2);
-extern int IntersectLinesClip(BasePoint *inter,
- BasePoint *line1_1, BasePoint *line1_2,
- BasePoint *line2_1, BasePoint *line2_2);
-
-extern double BlueScaleFigureForced(struct psdict *private_,real bluevalues[], real otherblues[]);
-extern double BlueScaleFigure(struct psdict *private_,real bluevalues[], real otherblues[]);
-extern void FindBlues( SplineFont *sf, int layer, real blues[14], real otherblues[10]);
-extern void QuickBlues(SplineFont *sf, int layer, BlueData *bd);
-extern void FindHStems( SplineFont *sf, real snaps[12], real cnt[12]);
-extern void FindVStems( SplineFont *sf, real snaps[12], real cnt[12]);
-extern void SCGuessHintInstancesList(SplineChar *sc,int layer,StemInfo *hstem,StemInfo *vstem,DStemInfo *dstem,int hvforce,int dforce);
-extern real HIlen( StemInfo *stems);
-extern real HIoverlap( HintInstance *mhi, HintInstance *thi);
-extern int StemListAnyConflicts(StemInfo *stems);
-extern HintInstance *HICopyTrans(HintInstance *hi, real mul, real offset);
-
-typedef struct bluezone {
- real base;
- int cvtindex;
- real family_base; /* NaN if none */
- int family_cvtindex;
- real overshoot; /* relative to baseline, NOT to base */
- int highest; /* used in autoinstructing for HStem positioning */
- int lowest; /* as above */
-} BlueZone;
-
-typedef struct stdstem {
- real width; /* -1 if none */
- int cvtindex;
- struct stdstem *snapto;/* NULL means stem isn't snapped to any other */
- int stopat; /* at which ppem stop snapping to snapto */
-} StdStem;
-
-typedef struct globalinstrct {
- SplineFont *sf;
- int layer;
- BlueData *bd;
- double fudge;
-
- /* Did we initialize the tables needed? 'maxp' is skipped because */
- /* its initialization always succeeds. */
- int cvt_done;
- int fpgm_done;
- int prep_done;
-
- /* PS private data with truetype-specific information added */
- BlueZone blues[12]; /* like in BlueData */
- int bluecnt;
- StdStem stdhw;
- StdStem *stemsnaph; /* StdHW excluded */
- int stemsnaphcnt;
- StdStem stdvw;
- StdStem *stemsnapv; /* StdVW excluded */
- int stemsnapvcnt;
-} GlobalInstrCt;
-
-extern void InitGlobalInstrCt( GlobalInstrCt *gic,SplineFont *sf,int layer,
- BlueData *bd );
-extern void FreeGlobalInstrCt( GlobalInstrCt *gic );
-extern void NowakowskiSCAutoInstr( GlobalInstrCt *gic,SplineChar *sc );
-
-extern void SCClearHintMasks(SplineChar *sc,int layer,int counterstoo);
-extern void SCFigureHintMasks(SplineChar *sc,int layer);
-extern void _SplineCharAutoHint( SplineChar *sc, int layer, BlueData *bd, struct glyphdata *gd2, int gen_undoes );
-extern void SplineCharAutoHint( SplineChar *sc,int layer, BlueData *bd);
-extern void SFSCAutoHint( SplineChar *sc,int layer,BlueData *bd);
-extern void SplineFontAutoHint( SplineFont *sf, int layer);
-extern void SplineFontAutoHintRefs( SplineFont *sf, int layer);
-extern int SplineFontIsFlexible(SplineFont *sf,int layer, int flags);
-extern int SCDrawsSomething(SplineChar *sc);
-extern int SCWorthOutputting(SplineChar *sc);
-extern void SFLigaturePrepare(SplineFont *sf);
-extern void SFLigatureCleanup(SplineFont *sf);
-extern void SFKernClassTempDecompose(SplineFont *sf,int isv);
-extern void SFKernCleanup(SplineFont *sf,int isv);
-
-typedef struct sfd_getfontmetadatadata
-{
-
- // these indicate if we saw some metadata or not.
- // perhaps the caller wants to do something special
- // if the metadata was present/missing.
- int hadtimes;
- int had_layer_cnt;
-
- // state that is mostly interesting to SFD_GetFontMetaData() only
- struct Base* last_base;
- struct basescript* last_base_script;
- OTLookup* lastpotl;
- OTLookup* lastsotl;
- KernClass* lastkc;
- KernClass* lastvkc;
- struct ff_glyphclasses* lastgroup;
- struct ff_rawoffsets* lastgroupkern;
- struct ff_rawoffsets* lastgroupvkern;
- FPST* lastfp;
- ASM* lastsm;
- struct ttf_table* lastttf[2];
-
-} SFD_GetFontMetaDataData;
-extern void SFD_GetFontMetaDataData_Init( SFD_GetFontMetaDataData* d );
-extern bool SFD_GetFontMetaData( FILE *sfd,
- char *tok,
- SplineFont *sf,
- SFD_GetFontMetaDataData* d );
-extern const char*FindUnicharName(void);
-extern Encoding *_FindOrMakeEncoding(const char *name,int make_it);
-extern Encoding *FindOrMakeEncoding(const char *name);
-extern MacFeat *SFDParseMacFeatures(FILE *sfd, char *tok);
-extern SplineFont *SFDRead(char *filename);
-extern SplineFont *_SFDRead(char *filename,FILE *sfd);
-enum ttfflags { ttf_onlystrikes=1, ttf_onlyonestrike=2, ttf_onlykerns=4, ttf_onlynames=8 };
-extern uint16 _MacStyleCode( const char *styles, SplineFont *sf, uint16 *psstyle );
-extern uint16 MacStyleCode( SplineFont *sf, uint16 *psstyle );
-
-extern int getAdobeEnc(const char *name);
-
-extern void MatMultiply(real m1[6], real m2[6], real to[6]);
-
-extern void GlyphHashFree(SplineFont *sf);
-extern SplineChar *SFHashName(SplineFont *sf,const char *name);
-extern int SFFindGID(SplineFont *sf, int unienc, const char *name );
-extern int SFCIDFindCID(SplineFont *sf, int unienc, const char *name );
-extern SplineChar *SFGetChar(SplineFont *sf, int unienc, const char *name );
-extern int SFFindExistingSlot(SplineFont *sf, int unienc, const char *name );
-extern int SFHasCID(SplineFont *sf, int cid);
-
-extern void PSCharsFree(struct pschars *chrs);
-extern void PSDictFree(struct psdict *chrs);
-extern char *PSDictHasEntry(struct psdict *dict, const char *key);
-extern int PSDictSame(struct psdict *dict1, struct psdict *dict2);
-
-struct cidmap; /* private structure to encoding.c */
-
-int getushort(FILE *ttf);
-int32 getlong(FILE *ttf);
-void putshort(FILE *file,int sval);
-void putlong(FILE *file,int val);
-void putfixed(FILE *file,real dval);
-int ttfcopyfile(FILE *ttf, FILE *other, int pos, const char *table_name);
-
-extern int UniFromName(const char *name,enum uni_interp interp, Encoding *encname);
-extern NameList *DefaultNameListForNewFonts(void);
-extern NameList *NameListByName(const char *name);
-extern int SSTtfNumberPoints(SplineSet *ss);
-extern int SCNumberPoints(SplineChar *sc,int layer);
-extern int SCPointsNumberedProperly(SplineChar *sc,int layer);
-
-int SFFigureDefWidth(SplineFont *sf, int *_nomwid);
-
-extern int ClassesMatch(int cnt1,char **classes1,int cnt2,char **classes2);
-extern FPST *FPSTGlyphToClass(FPST *fpst);
-
-extern ASM *ASMFromOpenTypeForms(SplineFont *sf,uint32 script);
-extern ASM *ASMFromFPST(SplineFont *sf,FPST *fpst,int ordered);
-
-extern char *utf8_verify_copy(const char *str);
-
-extern char *Utf8ToMacStr(const char *ustr,int macenc,int maclang);
-extern uint8 MacEncFromMacLang(int maclang);
-extern uint16 WinLangToMac(int winlang);
-extern MacFeat *FindMacFeature(SplineFont *sf, int feat,MacFeat **secondary);
-extern struct macsetting *FindMacSetting(SplineFont *sf, int feat, int set,struct macsetting **secondary);
-
-extern int32 UniFromEnc(int enc, Encoding *encname);
-extern int32 EncFromUni(int32 uni, Encoding *encname);
-
-/* Colinear & between */
-
-enum psstrokeflags { /* sf_removeoverlap=2,*/ sf_handle_eraser=4,
- sf_correctdir=8, sf_clearbeforeinput=16 };
-
-extern int MMValid(MMSet *mm,int complain);
-
-enum Compare_Ret { SS_DiffContourCount = 1,
- SS_MismatchOpenClosed = 2,
- SS_DisorderedContours = 4,
- SS_DisorderedStart = 8,
- SS_DisorderedDirection = 16,
- SS_PointsMatch = 32,
- SS_ContourMatch = 64,
- SS_NoMatch = 128,
- SS_RefMismatch = 256,
- SS_WidthMismatch = 512,
- SS_VWidthMismatch = 1024,
- SS_HintMismatch = 2048,
- SS_HintMaskMismatch = 4096,
- SS_LayerCntMismatch = 8192,
- SS_ContourMismatch = 16384,
- SS_UnlinkRefMatch = 32768,
-
- BC_DepthMismatch = 1<<16,
- BC_BoundingBoxMismatch = 2<<16,
- BC_BitmapMismatch = 4<<16,
- BC_NoMatch = 8<<16,
- BC_Match = 16<<16,
-
- SS_RefPtMismatch = 32<<16
- };
-
-enum font_compare_flags { fcf_outlines=1, fcf_exact=2, fcf_warn_not_exact=4,
- fcf_hinting=8, fcf_hintmasks=0x10, fcf_hmonlywithconflicts=0x20,
- fcf_warn_not_ref_exact=0x40,
- fcf_bitmaps=0x80, fcf_names = 0x100, fcf_gpos=0x200, fcf_gsub=0x400,
- fcf_adddiff2sf1=0x800, fcf_addmissing=0x1000 };
-
-# if HANYANG
-extern void SFDDumpCompositionRules(FILE *sfd,struct compositionrules *rules);
-extern struct compositionrules *SFDReadCompositionRules(FILE *sfd);
-extern void SFModifyComposition(SplineFont *sf);
-extern void SFBuildSyllables(SplineFont *sf);
-# endif
-
-extern void SFTimesFromFile(SplineFont *sf,FILE *);
-
-extern int SFHasInstructions(SplineFont *sf);
-extern int RefDepth(RefChar *ref,int layer);
-
-extern uint32 *SFScriptsInLookups(SplineFont *sf,int gpos);
-extern uint32 *SFLangsInScript(SplineFont *sf,int gpos,uint32 script);
-extern uint32 *SFFeaturesInScriptLang(SplineFont *sf,int gpos,uint32 script,uint32 lang);
-extern OTLookup **SFLookupsInScriptLangFeature(SplineFont *sf,int gpos,uint32 script,uint32 lang, uint32 feature);
-extern SplineChar **SFGlyphsWithPSTinSubtable(SplineFont *sf,struct lookup_subtable *subtable);
-extern void SFFindUnusedLookups(SplineFont *sf);
-extern struct lookup_subtable *SFFindLookupSubtable(SplineFont *sf,char *name);
-extern struct lookup_subtable *SFFindLookupSubtableAndFreeName(SplineFont *sf,char *name);
-extern OTLookup *SFFindLookup(SplineFont *sf,char *name);
-struct scriptlanglist *SLCopy(struct scriptlanglist *sl);
-struct scriptlanglist *SListCopy(struct scriptlanglist *sl);
-extern FeatureScriptLangList *FeatureListCopy(FeatureScriptLangList *fl);
-extern int DefaultLangTagInOneScriptList(struct scriptlanglist *sl);
-
-extern RefChar *HasUseMyMetrics(SplineChar *sc,int layer);
-
-extern EncMap *EncMapFromEncoding(SplineFont *sf,Encoding *enc);
-
-extern void InitSimpleStuff(void);
-
-extern struct math_constants_descriptor {
- char *script_name;
- int offset;
- int devtab_offset;
-} math_constants_descriptor[];
-
-#define MATH_CONSTANTS_DESCRIPTOR_EMPTY { NULL, 0, 0}
-
-extern const char *knownweights[], *realweights[], **noticeweights[];
-
-struct lang_frequencies;
-extern struct gradient *GradientCopy(struct gradient *old,real transform[6]);
-extern void GradientFree(struct gradient *grad);
-extern struct pattern *PatternCopy(struct pattern *old,real transform[6]);
-extern void PatternFree(struct pattern *pat);
-extern void BrushCopy(struct brush *into, struct brush *from,real transform[6]);
-extern void PenCopy(struct pen *into, struct pen *from,real transform[6]);
-
-extern bigreal SFCapHeight(SplineFont *sf, int layer, int return_error);
-extern bigreal SFXHeight(SplineFont *sf, int layer, int return_error);
-
-/**
- * Visitor for SPLFirstVisitSplines()
- */
-typedef void (*SPLFirstVisitSplinesVisitor)( SplinePoint* splfirst, Spline* s, void* udata );
-
-/**
- * Visitor Function: print debug information about each spline
- */
-
-/**
- * Given a SplinePointList* that you want to visit each spline in the
- * iteration is not as simple as it could be, so you can call this
- * function passing spl->first as 'splfirst' and a visitor function
- * which will see each spline in the splfirst colleciton.
- *
- * For debug, you can pass SPLFirstVisitorDebug which will print
- * information for each item in the splfirst collection.
- *
- * You can pass any arbitrary data in as udata and SPLFirstVisit()
- * will pass that udata to your visitor function without change. If
- * you want a return value from your visitor, pass a pointer to a
- * struct as udata. eg:
- *
- * typedef struct SPLFirstVisitorFoundSoughtDataS
- * {
- * SplinePoint* sought;
- * int found;
- * } SPLFirstVisitorFoundSoughtData;
- *
- * // ...
- *
- * SPLFirstVisitorFoundSoughtData d;
- * d.sought = sought;
- * d.found = 0;
- * SPLFirstVisit( spl->first, SPLFirstVisitorFoundSought, &d );
- * if( d.found )
- * return 1;
- *
- */
-extern void SPLFirstVisitSplines( SplinePoint* splfirst, SPLFirstVisitSplinesVisitor f, void* udata );
-
-/**
- * Visitor for SPLFirstVisitPoints()
- */
-typedef void (*SPLFirstVisitPointsVisitor)( SplinePoint* splfirst, Spline* s, SplinePoint* sp, void* udata );
-
-
-/**
- * Applies a visitor to the container and returns false if no point in the SPL
- * has an x coordinate of 'x'.
- */
-extern SplinePoint* SplinePointListContainsPointAtX( SplinePointList* container, real x );
-
-
-/**
- * It is like a == b, but also true if a is within
- * tolerence of b.
- */
-extern bool equalWithTolerence( real a, real b, real tolerence );
-
-// The following functions are in splineutil.c at present.
-char * upper_case(const char * input);
-
-#include "ustring.h"
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/splineorder2.c b/dviware/dvisvgm/libs/ff-woff/fontforge/splineorder2.c
deleted file mode 100644
index 2e6ad93bff..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/splineorder2.c
+++ /dev/null
@@ -1,1523 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include <math.h>
-
-#ifdef HAVE_IEEEFP_H
-# include <ieeefp.h> /* Solaris defines isnan in ieeefp rather than math.h */
-#endif
-
-/* This file contains utility routines for second order bezier splines */
-/* (ie. truetype) */
-/* The most interesting thing */
-/* it does is to figure out a quadratic approximation to the cubic splines */
-/* that postscript uses. We do this by looking at each spline and running */
-/* from the end toward the beginning, checking approximately every emunit */
-/* There is only one quadratic spline possible for any given interval of the */
-/* cubic. The start and end points are the interval end points (obviously) */
-/* the control point is where the two slopes (at start and end) intersect. */
-/* If this spline is a close approximation to the cubic spline (doesn't */
-/* deviate from it by more than an emunit or so), then we use this interval */
-/* as one of our quadratic splines. */
-/* It may turn out that the "quadratic" spline above is actually linear. Well */
-/* that's ok. It may also turn out that we can't find a good approximation. */
-/* If that's true then just insert a linear segment for an emunit stretch. */
-/* (actually this failure mode may not be possible), but I'm not sure */
-/* Then we play the same trick for the rest of the cubic spline (if any) */
-
-/* Does the quadratic spline in ttf approximate the cubic spline in ps */
-/* within one pixel between tmin and tmax (on ps. presumably ttf between 0&1 */
-/* dim is the dimension in which there is the greatest change */
-static int comparespline(Spline *ps, Spline *ttf, real tmin, real tmax, real err) {
- int dim=0, other;
- real dx, dy, ddim, dt, t;
- real d, o;
- real ttf_t, sq, val;
- DBounds bb;
- extended ts[3];
- int i;
-
- /* Are all points on ttf near points on ps? */
- /* This doesn't answer that question, but rules out gross errors */
- bb.minx = bb.maxx = ps->from->me.x; bb.miny = bb.maxy = ps->from->me.y;
- if ( ps->from->nextcp.x>bb.maxx ) bb.maxx = ps->from->nextcp.x;
- else bb.minx = ps->from->nextcp.x;
- if ( ps->from->nextcp.y>bb.maxy ) bb.maxy = ps->from->nextcp.y;
- else bb.miny = ps->from->nextcp.y;
- if ( ps->to->prevcp.x>bb.maxx ) bb.maxx = ps->to->prevcp.x;
- else if ( ps->to->prevcp.x<bb.minx ) bb.minx = ps->to->prevcp.x;
- if ( ps->to->prevcp.y>bb.maxy ) bb.maxy = ps->to->prevcp.y;
- else if ( ps->to->prevcp.y<bb.miny ) bb.miny = ps->to->prevcp.y;
- if ( ps->to->me.x>bb.maxx ) bb.maxx = ps->to->me.x;
- else if ( ps->to->me.x<bb.minx ) bb.minx = ps->to->me.x;
- if ( ps->to->me.y>bb.maxy ) bb.maxy = ps->to->me.y;
- else if ( ps->to->me.y<bb.miny ) bb.miny = ps->to->me.y;
- for ( t=.1; t<1; t+= .1 ) {
- d = (ttf->splines[0].b*t+ttf->splines[0].c)*t+ttf->splines[0].d;
- o = (ttf->splines[1].b*t+ttf->splines[1].c)*t+ttf->splines[1].d;
- if ( d<bb.minx || d>bb.maxx || o<bb.miny || o>bb.maxy )
-return( false );
- }
-
- /* Are all points on ps near points on ttf? */
- dx = ((ps->splines[0].a*tmax+ps->splines[0].b)*tmax+ps->splines[0].c)*tmax -
- ((ps->splines[0].a*tmin+ps->splines[0].b)*tmin+ps->splines[0].c)*tmin ;
- dy = ((ps->splines[1].a*tmax+ps->splines[1].b)*tmax+ps->splines[1].c)*tmax -
- ((ps->splines[1].a*tmin+ps->splines[1].b)*tmin+ps->splines[1].c)*tmin ;
- if ( dx<0 ) dx = -dx;
- if ( dy<0 ) dy = -dy;
- if ( dx>dy ) {
- dim = 0;
- ddim = dx;
- } else {
- dim = 1;
- ddim = dy;
- }
- other = !dim;
-
- t = tmin;
- dt = (tmax-tmin)/ddim;
- for ( t=tmin; t<=tmax; t+= dt ) {
- if ( t>tmax-dt/8. ) t = tmax; /* Avoid rounding errors */
- d = ((ps->splines[dim].a*t+ps->splines[dim].b)*t+ps->splines[dim].c)*t+ps->splines[dim].d;
- o = ((ps->splines[other].a*t+ps->splines[other].b)*t+ps->splines[other].c)*t+ps->splines[other].d;
- if ( ttf->splines[dim].b == 0 ) {
- ttf_t = (d-ttf->splines[dim].d)/ttf->splines[dim].c;
- } else {
- sq = ttf->splines[dim].c*ttf->splines[dim].c -
- 4*ttf->splines[dim].b*(ttf->splines[dim].d-d);
- if ( sq<0 )
-return( false );
- sq = sqrt(sq);
- ttf_t = (-ttf->splines[dim].c-sq)/(2*ttf->splines[dim].b);
- if ( ttf_t>=-0.1 && ttf_t<=1.1 ) { /* Optimizer gives us rounding errors */
- /* And tmin/tmax are no longer exact */
- val = (ttf->splines[other].b*ttf_t+ttf->splines[other].c)*ttf_t+
- ttf->splines[other].d;
- if ( val>o-err && val<o+err )
- continue;
- }
- ttf_t = (-ttf->splines[dim].c+sq)/(2*ttf->splines[dim].b);
- }
- if ( ttf_t>=-0.1 && ttf_t<=1.1 ) {
- val = (ttf->splines[other].b*ttf_t+ttf->splines[other].c)*ttf_t+
- ttf->splines[other].d;
- if ( val>o-err && val<o+err )
- continue;
- }
-return( false );
- }
-
- /* Are representative points on ttf near points on ps? */
- for ( t=.125; t<1; t+= .125 ) {
- d = (ttf->splines[dim].b*t+ttf->splines[dim].c)*t+ttf->splines[dim].d;
- o = (ttf->splines[other].b*t+ttf->splines[other].c)*t+ttf->splines[other].d;
- CubicSolve(&ps->splines[dim],d,ts);
- for ( i=0; i<3; ++i ) if ( ts[i]!=-1 ) {
- val = ((ps->splines[other].a*ts[i]+ps->splines[other].b)*ts[i]+ps->splines[other].c)*ts[i]+ps->splines[other].d;
- if ( val>o-err && val<o+err )
- break;
- }
- if ( i==3 )
-return( false );
- }
-
-return( true );
-}
-
-static SplinePoint *MakeQuadSpline(SplinePoint *start,Spline *ttf,real x,
- real y, real tmax,SplinePoint *oldend) {
- Spline *new = chunkalloc(sizeof(Spline));
- SplinePoint *end = chunkalloc(sizeof(SplinePoint));
-
- if ( tmax==1 ) {
- end->roundx = oldend->roundx; end->roundy = oldend->roundy; end->dontinterpolate = oldend->dontinterpolate;
- x = oldend->me.x; y = oldend->me.y; /* Want it to compare exactly */
- }
- end->ttfindex = 0xfffe;
- end->nextcpindex = 0xfffe;
- end->me.x = end->nextcp.x = x;
- end->me.y = end->nextcp.y = y;
- end->nonextcp = true;
-
- *new = *ttf;
- new->from = start; start->next = new;
- new->to = end; end->prev = new;
- if ( new->splines[0].b==0 && new->splines[1].b==0 ) {
- end->noprevcp = true;
- end->prevcp.x = x; end->prevcp.y = y;
- new->islinear = new->knownlinear = true;
- } else {
- end->prevcp.x = start->nextcp.x = ttf->splines[0].c/2+ttf->splines[0].d;
- end->prevcp.y = start->nextcp.y = ttf->splines[1].c/2+ttf->splines[1].d;
- start->nonextcp = end->noprevcp = false;
- new->isquadratic = true;
- }
- new->order2 = true;
-return( end );
-}
-
-static int buildtestquads(Spline *ttf,real xmin,real ymin,real cx,real cy,
- real x,real y,real tmin,real t,real err,Spline *ps, DBounds *psbb) {
- real fudge, normal, para;
- BasePoint segdir, cpdir;
-
- /* test the control points are reasonable */
- fudge = (psbb->maxx-psbb->minx) + (psbb->maxy-psbb->miny);
- if ( cx<psbb->minx-fudge || cx>psbb->maxx+fudge )
-return( false );
- if ( cy<psbb->miny-fudge || cy>psbb->maxy+fudge )
-return( false );
-
- segdir.x = x-xmin; segdir.y = y-ymin;
- cpdir.x = cx-xmin; cpdir.y = cy-ymin;
- para = segdir.x*cpdir.x + segdir.y*cpdir.y;
- if ( (normal = segdir.x*cpdir.y - segdir.y*cpdir.x)<0 )
- normal=-normal;
- if ( para<0 && -para >4*normal )
-return( false );
- cpdir.x = x-cx; cpdir.y = y-cy;
- para = segdir.x*cpdir.x + segdir.y*cpdir.y;
- if ( (normal = segdir.x*cpdir.y - segdir.y*cpdir.x)<0 )
- normal=-normal;
- if ( para<0 && -para >4*normal )
-return( false );
-
- ttf->splines[0].d = xmin;
- ttf->splines[0].c = 2*(cx-xmin);
- ttf->splines[0].b = xmin+x-2*cx;
- ttf->splines[1].d = ymin;
- ttf->splines[1].c = 2*(cy-ymin);
- ttf->splines[1].b = ymin+y-2*cy;
- if ( comparespline(ps,ttf,tmin,t,err) )
-return( true );
-
-return( false );
-}
-
-static SplinePoint *LinearSpline(Spline *ps,SplinePoint *start, real tmax) {
- real x,y;
- Spline *new = chunkalloc(sizeof(Spline));
- SplinePoint *end = chunkalloc(sizeof(SplinePoint));
-
- x = ((ps->splines[0].a*tmax+ps->splines[0].b)*tmax+ps->splines[0].c)*tmax+ps->splines[0].d;
- y = ((ps->splines[1].a*tmax+ps->splines[1].b)*tmax+ps->splines[1].c)*tmax+ps->splines[1].d;
- if ( tmax==1 ) {
- SplinePoint *oldend = ps->to;
- end->roundx = oldend->roundx; end->roundy = oldend->roundy; end->dontinterpolate = oldend->dontinterpolate;
- x = oldend->me.x; y = oldend->me.y; /* Want it to compare exactly */
- }
- end->ttfindex = 0xfffe;
- end->nextcpindex = 0xfffe;
- end->me.x = end->nextcp.x = end->prevcp.x = x;
- end->me.y = end->nextcp.y = end->prevcp.y = y;
- end->nonextcp = end->noprevcp = start->nonextcp = true;
- new->from = start; start->next = new;
- new->to = end; end->prev = new;
- new->splines[0].d = start->me.x;
- new->splines[0].c = (x-start->me.x);
- new->splines[1].d = start->me.y;
- new->splines[1].c = (y-start->me.y);
- new->order2 = true;
- new->islinear = new->knownlinear = true;
-return( end );
-}
-
-static SplinePoint *_ttfapprox(Spline *ps,real tmin, real tmax, SplinePoint *start) {
- real dx, dy, ddim, dt, t, err;
- real x,y, xmin, ymin;
- real dxdtmin, dydtmin, dxdt, dydt;
- SplinePoint *sp;
- real cx, cy;
- Spline ttf;
- int cnt = -1, forceit;
- BasePoint end, rend, dend;
- DBounds bb;
-
- rend.x = ((ps->splines[0].a*tmax+ps->splines[0].b)*tmax+ps->splines[0].c)*tmax + ps->splines[0].d;
- rend.y = ((ps->splines[1].a*tmax+ps->splines[1].b)*tmax+ps->splines[1].c)*tmax + ps->splines[1].d;
- end.x = rint( rend.x );
- end.y = rint( rend.y );
- dend.x = (3*ps->splines[0].a*tmax+2*ps->splines[0].b)*tmax+ps->splines[0].c;
- dend.y = (3*ps->splines[1].a*tmax+2*ps->splines[1].b)*tmax+ps->splines[1].c;
- memset(&ttf,'\0',sizeof(ttf));
-
- bb.minx = bb.maxx = ps->from->me.x;
- if ( ps->from->nextcp.x > bb.maxx ) bb.maxx = ps->from->nextcp.x;
- else if ( ps->from->nextcp.x < bb.minx ) bb.minx = ps->from->nextcp.x;
- if ( ps->to->prevcp.x > bb.maxx ) bb.maxx = ps->to->prevcp.x;
- else if ( ps->to->prevcp.x < bb.minx ) bb.minx = ps->to->prevcp.x;
- if ( ps->to->me.x > bb.maxx ) bb.maxx = ps->to->me.x;
- else if ( ps->to->me.x < bb.minx ) bb.minx = ps->to->me.x;
- bb.miny = bb.maxy = ps->from->me.y;
- if ( ps->from->nextcp.y > bb.maxy ) bb.maxy = ps->from->nextcp.y;
- else if ( ps->from->nextcp.y < bb.miny ) bb.miny = ps->from->nextcp.y;
- if ( ps->to->prevcp.y > bb.maxy ) bb.maxy = ps->to->prevcp.y;
- else if ( ps->to->prevcp.y < bb.miny ) bb.miny = ps->to->prevcp.y;
- if ( ps->to->me.y > bb.maxy ) bb.maxy = ps->to->me.y;
- else if ( ps->to->me.y < bb.miny ) bb.miny = ps->to->me.y;
-
- tail_recursion:
- ++cnt;
-
- xmin = start->me.x;
- ymin = start->me.y;
- dxdtmin = (3*ps->splines[0].a*tmin+2*ps->splines[0].b)*tmin + ps->splines[0].c;
- dydtmin = (3*ps->splines[1].a*tmin+2*ps->splines[1].b)*tmin + ps->splines[1].c;
-
- dx = ((ps->splines[0].a*tmax+ps->splines[0].b)*tmax+ps->splines[0].c)*tmax -
- ((ps->splines[0].a*tmin+ps->splines[0].b)*tmin+ps->splines[0].c)*tmin ;
- dy = ((ps->splines[1].a*tmax+ps->splines[1].b)*tmax+ps->splines[1].c)*tmax -
- ((ps->splines[1].a*tmin+ps->splines[1].b)*tmin+ps->splines[1].c)*tmin ;
- if ( dx<0 ) dx = -dx;
- if ( dy<0 ) dy = -dy;
- if ( dx>dy ) {
- ddim = dx;
- } else {
- ddim = dy;
- }
- if (( err = ddim/3000 )<1 ) err = 1;
-
- if ( ddim<2 ||
- (dend.x==0 && rint(start->me.x)==end.x && dy<=10 && cnt!=0) ||
- (dend.y==0 && rint(start->me.y)==end.y && dx<=10 && cnt!=0) ) {
- if ( cnt==0 || start->noprevcp )
-return( LinearSpline(ps,start,tmax));
- /* If the end point is very close to where we want to be, then just */
- /* pretend it's right */
- start->prev->splines[0].b += ps->to->me.x-start->me.x;
- start->prev->splines[1].b += ps->to->me.y-start->me.y;
- start->prevcp.x += rend.x-start->me.x;
- start->prevcp.y += rend.y-start->me.y;
- if ( start->prev!=NULL && !start->prev->from->nonextcp )
- start->prev->from->nextcp = start->prevcp;
- start->me = rend;
-return( start );
- }
-
- dt = (tmax-tmin)/ddim;
- forceit = false;
-/* force_end: */
- for ( t=tmax; t>tmin+dt/128; t-= dt ) { /* dt/128 is a hack to avoid rounding errors */
- x = ((ps->splines[0].a*t+ps->splines[0].b)*t+ps->splines[0].c)*t+ps->splines[0].d;
- y = ((ps->splines[1].a*t+ps->splines[1].b)*t+ps->splines[1].c)*t+ps->splines[1].d;
- dxdt = (3*ps->splines[0].a*t+2*ps->splines[0].b)*t + ps->splines[0].c;
- dydt = (3*ps->splines[1].a*t+2*ps->splines[1].b)*t + ps->splines[1].c;
- /* if the slopes are parallel at the ends there can be no bezier quadratic */
- /* (control point is where the splines intersect. But if they are */
- /* parallel and colinear then there is a line between 'em */
- if ( ( dxdtmin==0 && dxdt==0 ) || (dydtmin==0 && dydt==0) ||
- ( dxdt!=0 && dxdtmin!=0 &&
- RealNearish(dydt/dxdt,dydtmin/dxdtmin)) )
- continue;
-
- if ( dxdt==0 )
- cx=x;
- else if ( dxdtmin==0 )
- cx=xmin;
- else
- cx = -(ymin-(dydtmin/dxdtmin)*xmin-y+(dydt/dxdt)*x)/(dydtmin/dxdtmin-dydt/dxdt);
- if ( dydt==0 )
- cy=y;
- else if ( dydtmin==0 )
- cy=ymin;
- else
- cy = -(xmin-(dxdtmin/dydtmin)*ymin-x+(dxdt/dydt)*y)/(dxdtmin/dydtmin-dxdt/dydt);
- /* Make the quadratic spline from (xmin,ymin) through (cx,cy) to (x,y)*/
- if ( forceit || buildtestquads(&ttf,xmin,ymin,cx,cy,x,y,tmin,t,err,ps,&bb)) {
- sp = MakeQuadSpline(start,&ttf,x,y,t,ps->to);
- forceit = false;
- if ( t==tmax )
-return( sp );
- tmin = t;
- start = sp;
- goto tail_recursion;
- }
- ttf.splines[0].d = xmin;
- ttf.splines[0].c = x-xmin;
- ttf.splines[0].b = 0;
- ttf.splines[1].d = ymin;
- ttf.splines[1].c = y-ymin;
- ttf.splines[1].b = 0;
- if ( comparespline(ps,&ttf,tmin,t,err) ) {
- sp = LinearSpline(ps,start,t);
- if ( t==tmax )
-return( sp );
- tmin = t;
- start = sp;
- goto tail_recursion;
- }
- }
- tmin += dt;
- start = LinearSpline(ps,start,tmin);
- goto tail_recursion;
-}
-
-static SplinePoint *__ttfApprox(Spline *ps,real tmin, real tmax, SplinePoint *start) {
- extended inflect[2];
- int i=0;
- SplinePoint *end;
- Spline *s, *next;
-
- end = _ttfapprox(ps,tmin,tmax,start);
- if ( ps->knownlinear )
-return( end );
- for ( s=start->next; s!=NULL && !s->islinear; s=s->to->next );
- if ( s==NULL )
-return( end );
- for ( s=start->next; s!=NULL ; s=next ) {
- next = s->to->next;
- SplinePointFree(s->to);
- SplineFree(s);
- }
-/* Hmm. With my algorithem, checking for points of inflection actually makes */
-/* things worse. It uses more points and the splines don't join as nicely */
-/* However if we get a bad match (a line) in the normal approx, then check */
-/* Err... I was computing POI incorrectly. Above statement might not be correct*/
- /* no points of inflection in quad splines */
-
- i = Spline2DFindPointsOfInflection(ps, inflect);
- if ( i==2 ) {
- if ( RealNearish(inflect[0],inflect[1]) )
- --i;
- else if ( inflect[0]>inflect[1] ) {
- real temp = inflect[0];
- inflect[0] = inflect[1];
- inflect[1] = temp;
- }
- }
- if ( i!=0 ) {
- start = _ttfapprox(ps,tmin,inflect[0],start);
- tmin = inflect[0];
- if ( i==2 ) {
- start = _ttfapprox(ps,tmin,inflect[1],start);
- tmin = inflect[1];
- }
- }
-return( _ttfapprox(ps,tmin,tmax,start));
-}
-
-#if !defined(FONTFORGE_CONFIG_NON_SYMMETRIC_QUADRATIC_CONVERSION)
-typedef struct qpoint {
- BasePoint bp;
- BasePoint cp;
- bigreal t;
-} QPoint;
-
-static int comparedata(Spline *ps,QPoint *data,int qfirst,int qlast,
- int round_to_int, int test_level ) {
- Spline ttf;
- int i;
- bigreal err = round_to_int ? 1.5 : 1;
-
- if ( qfirst==qlast ) /* happened (was a bug) */
-return( false );
-
- err *= (test_level+1);
-
- /* Control points diametrically opposed */
- if ( (data[qlast-2].cp.x-ps->to->me.x)*(ps->to->prevcp.x-ps->to->me.x) +
- (data[qlast-2].cp.y-ps->to->me.y)*(ps->to->prevcp.y-ps->to->me.y)<0 )
-return( false );
- if ( (data[qfirst-1].cp.x-ps->from->me.x)*(ps->from->nextcp.x-ps->from->me.x) +
- (data[qfirst-1].cp.y-ps->from->me.y)*(ps->from->nextcp.y-ps->from->me.y)<0 )
-return( false );
-
- memset(&ttf,0,sizeof(ttf));
- for ( i=qfirst; i<qlast; ++i ) {
- ttf.splines[0].d = data[i-1].bp.x;
- ttf.splines[0].c = 2*(data[i-1].cp.x-data[i-1].bp.x);
- ttf.splines[0].b = data[i-1].bp.x+data[i].bp.x-2*data[i-1].cp.x;
- ttf.splines[1].d = data[i-1].bp.y;
- ttf.splines[1].c = 2*(data[i-1].cp.y-data[i-1].bp.y);
- ttf.splines[1].b = data[i-1].bp.y+data[i].bp.y-2*data[i-1].cp.y;
- if ( !comparespline(ps,&ttf,data[i-1].t,data[i].t,err) )
-return( false );
- }
-return( true );
-}
-
-static SplinePoint *CvtDataToSplines(QPoint *data,int qfirst,int qlast,SplinePoint *start) {
- SplinePoint *end;
- int i;
-
- for ( i=qfirst; i<qlast; ++i ) {
- end = SplinePointCreate(data[i].bp.x,data[i].bp.y);
- start->nextcp = end->prevcp = data[i-1].cp;
- start->nonextcp = end->noprevcp = false;
- if (( data[i-1].cp.x == data[i].bp.x && data[i-1].cp.y == data[i].bp.y ) ||
- ( data[i-1].cp.x == start->me.x && data[i-1].cp.y == start->me.y ))
- start->nonextcp = end->noprevcp = true;
- SplineMake2(start,end);
- start = end;
- }
-return( start );
-}
-
-static int SplineWithWellBehavedControlPoints(Spline *ps) {
- BasePoint splineunit;
- bigreal splinelen, npos, ppos;
-
- splineunit.x = ps->to->me.x - ps->from->me.x;
- splineunit.y = ps->to->me.y - ps->from->me.y;
- splinelen = sqrt(splineunit.x*splineunit.x + splineunit.y*splineunit.y);
- if ( splinelen!=0 ) {
- splineunit.x /= splinelen;
- splineunit.y /= splinelen;
- }
-
- npos = (ps->from->nextcp.x-ps->from->me.x) * splineunit.x +
- (ps->from->nextcp.y-ps->from->me.y) * splineunit.y;
- ppos = (ps->to->prevcp.x-ps->from->me.x) * splineunit.x +
- (ps->to->prevcp.y-ps->from->me.y) * splineunit.y;
-return( npos>=0 && /* npos<=ppos &&*/ ppos<=splinelen );
-}
-
-static int PrettyApprox(Spline *ps,bigreal tmin, bigreal tmax,
- QPoint *data, int qcnt, int round_to_int, int test_level ) {
- int ptcnt, q, i;
- bigreal distance, dx, dy, tstart;
- BasePoint end, mid, slopemin, slopemid, slopeend;
- BasePoint splineunit, start;
- bigreal splinelen, midpos, lastpos, lastpos2, cppos;
- int do_good_spline_check;
- QPoint data2[12];
-
- if ( qcnt==-1 )
-return( -1 );
-
- slopemin.x = (3*ps->splines[0].a*tmin+2*ps->splines[0].b)*tmin+ps->splines[0].c;
- slopemin.y = (3*ps->splines[1].a*tmin+2*ps->splines[1].b)*tmin+ps->splines[1].c;
- if ( slopemin.x==0 && slopemin.y==0 ) {
- bigreal t = tmin + (tmax-tmin)/256;
- /* If there is no control point for this end point, then the slope is */
- /* 0/0 at the end point. Which isn't useful, it leads to a quadratic */
- /* control point at the end point, but this one is real because it */
- /* is used to interpolate the next point, but we get all confused */
- /* because we don't expect a real cp to be on the base point. */
- slopemin.x = (3*ps->splines[0].a*t+2*ps->splines[0].b)*t+ps->splines[0].c;
- slopemin.y = (3*ps->splines[1].a*t+2*ps->splines[1].b)*t+ps->splines[1].c;
- }
-
- end.x = ((ps->splines[0].a*tmax+ps->splines[0].b)*tmax+ps->splines[0].c)*tmax+ps->splines[0].d;
- end.y = ((ps->splines[1].a*tmax+ps->splines[1].b)*tmax+ps->splines[1].c)*tmax+ps->splines[1].d;
- slopeend.x = (3*ps->splines[0].a*tmax+2*ps->splines[0].b)*tmax+ps->splines[0].c;
- slopeend.y = (3*ps->splines[1].a*tmax+2*ps->splines[1].b)*tmax+ps->splines[1].c;
- if ( slopemin.x==0 && slopemin.y==0 ) {
- bigreal t = tmax - (tmax-tmin)/256;
- /* Same problem as above, except at the other end */
- slopeend.x = (3*ps->splines[0].a*t+2*ps->splines[0].b)*t+ps->splines[0].c;
- slopeend.y = (3*ps->splines[1].a*t+2*ps->splines[1].b)*t+ps->splines[1].c;
- }
-
- start.x = data[qcnt-1].bp.x;
- start.y = data[qcnt-1].bp.y;
- splineunit.x = end.x - start.x;
- splineunit.y = end.y - start.y;
- splinelen = sqrt(splineunit.x*splineunit.x + splineunit.y*splineunit.y);
- if ( splinelen!=0 ) {
- splineunit.x /= splinelen;
- splineunit.y /= splinelen;
- }
- do_good_spline_check = SplineWithWellBehavedControlPoints(ps);
-
- if ( round_to_int && tmax!=1 ) {
- end.x = rint( end.x );
- end.y = rint( end.y );
- }
-
- dx = end.x-data[qcnt-1].bp.x; dy = end.y-data[qcnt-1].bp.y;
- distance = dx*dx + dy*dy;
-
- if ( distance<.3 ) {
- /* This is meaningless in truetype, use a line */
- data[qcnt-1].cp = data[qcnt-1].bp;
- data[qcnt].bp = end;
- data[qcnt].t = 1;
-return( qcnt+1 );
- }
-
- for ( ptcnt=0; ptcnt<10; ++ptcnt ) {
- if ( ptcnt>1 && distance/(ptcnt*ptcnt)<16 )
-return( -1 ); /* Points too close for a good approx */
- q = qcnt;
- data2[ptcnt+1].bp = end;
- lastpos=0; lastpos2 = splinelen;
- for ( i=0; i<=ptcnt; ++i ) {
- tstart = (tmin*(ptcnt-i) + tmax*(i+1))/(ptcnt+1);
- mid.x = ((ps->splines[0].a*tstart+ps->splines[0].b)*tstart+ps->splines[0].c)*tstart+ps->splines[0].d;
- mid.y = ((ps->splines[1].a*tstart+ps->splines[1].b)*tstart+ps->splines[1].c)*tstart+ps->splines[1].d;
- if ( i==0 ) {
- slopemid.x = (3*ps->splines[0].a*tstart+2*ps->splines[0].b)*tstart+ps->splines[0].c;
- slopemid.y = (3*ps->splines[1].a*tstart+2*ps->splines[1].b)*tstart+ps->splines[1].c;
- if ( slopemid.x==0 )
- data[q-1].cp.x=mid.x;
- else if ( slopemin.x==0 )
- data[q-1].cp.x=data[q-1].bp.x;
- else if ( RealNear(slopemin.y/slopemin.x,slopemid.y/slopemid.x) )
- break;
- else
- data[q-1].cp.x = -(data[q-1].bp.y-(slopemin.y/slopemin.x)*data[q-1].bp.x-mid.y+(slopemid.y/slopemid.x)*mid.x)/(slopemin.y/slopemin.x-slopemid.y/slopemid.x);
- if ( slopemid.y==0 )
- data[q-1].cp.y=mid.y;
- else if ( slopemin.y==0 )
- data[q-1].cp.y=data[q-1].bp.y;
- else if ( RealNear(slopemin.x/slopemin.y,slopemid.x/slopemid.y) )
- break;
- else
- data[q-1].cp.y = -(data[q-1].bp.x-(slopemin.x/slopemin.y)*data[q-1].bp.y-mid.x+(slopemid.x/slopemid.y)*mid.y)/(slopemin.x/slopemin.y-slopemid.x/slopemid.y);
- } else {
- data[q-1].cp.x = 2*data[q-1].bp.x - data[q-2].cp.x;
- data[q-1].cp.y = 2*data[q-1].bp.y - data[q-2].cp.y;
- }
-
- midpos = (mid.x-start.x)*splineunit.x + (mid.y-start.y)*splineunit.y;
- cppos = (data[q-1].cp.x-start.x)*splineunit.x + (data[q-1].cp.y-start.y)*splineunit.y;
-
- if ( ((do_good_spline_check || i!=0 ) && cppos<lastpos) || cppos>midpos ) {
- i = 0; /* Means we failed */
- break;
- }
- lastpos = midpos;
-
- data[q].bp = mid;
- data[q++].t = tstart;
-
- tstart = (tmax*(ptcnt-i) + tmin*(i+1))/(ptcnt+1);
- mid.x = ((ps->splines[0].a*tstart+ps->splines[0].b)*tstart+ps->splines[0].c)*tstart+ps->splines[0].d;
- mid.y = ((ps->splines[1].a*tstart+ps->splines[1].b)*tstart+ps->splines[1].c)*tstart+ps->splines[1].d;
- if ( i==0 ) {
- slopemid.x = (3*ps->splines[0].a*tstart+2*ps->splines[0].b)*tstart+ps->splines[0].c;
- slopemid.y = (3*ps->splines[1].a*tstart+2*ps->splines[1].b)*tstart+ps->splines[1].c;
- if ( slopemid.x==0 )
- data2[ptcnt-i].cp.x=mid.x;
- else if ( slopeend.x==0 )
- data2[ptcnt-i].cp.x=data2[ptcnt-i+1].bp.x;
- else if ( RealNear(slopeend.y/slopeend.x,slopemid.y/slopemid.x) )
- break;
- else
- data2[ptcnt-i].cp.x = -(data2[ptcnt-i+1].bp.y-(slopeend.y/slopeend.x)*data2[ptcnt-i+1].bp.x-mid.y+(slopemid.y/slopemid.x)*mid.x)/(slopeend.y/slopeend.x-slopemid.y/slopemid.x);
- if ( slopemid.y==0 )
- data2[ptcnt-i].cp.y=mid.y;
- else if ( slopeend.y==0 )
- data2[ptcnt-i].cp.y=data2[ptcnt-i+1].bp.y;
- else if ( RealNear(slopeend.x/slopeend.y,slopemid.x/slopemid.y) )
- break;
- else
- data2[ptcnt-i].cp.y = -(data2[ptcnt-i+1].bp.x-(slopeend.x/slopeend.y)*data2[ptcnt-i+1].bp.y-mid.x+(slopemid.x/slopemid.y)*mid.y)/(slopeend.x/slopeend.y-slopemid.x/slopemid.y);
- } else {
- data2[ptcnt-i].cp.x = 2*data2[ptcnt-i+1].bp.x - data2[ptcnt-i+1].cp.x;
- data2[ptcnt-i].cp.y = 2*data2[ptcnt-i+1].bp.y - data2[ptcnt-i+1].cp.y;
- }
- data2[ptcnt-i].bp = mid;
-
- midpos = (mid.x-start.x)*splineunit.x + (mid.y-start.y)*splineunit.y;
- cppos = (data2[ptcnt-i].cp.x-start.x)*splineunit.x + (data2[ptcnt-i].cp.y-start.y)*splineunit.y;
- if ( ((do_good_spline_check || i!=0 ) && cppos>lastpos2) || cppos<midpos ) {
- i = 0; /* Means we failed */
- break;
- }
- lastpos2 = midpos;
-
- }
- if ( i==0 )
- continue;
- if ( (data2[ptcnt+1].bp.x-data2[ptcnt].bp.x)*(data2[ptcnt].cp.x-data2[ptcnt].bp.x)<0 ||
- (data2[ptcnt+1].bp.y-data2[ptcnt].bp.y)*(data2[ptcnt].cp.y-data2[ptcnt].bp.y)<0 ) {
- /* data2 are bad ... don't use them */;
- } else if ( (data[qcnt-1].bp.x-data[qcnt].bp.x)*(data[qcnt-1].cp.x-data[qcnt].bp.x)<0 ||
- (data[qcnt-1].bp.y-data[qcnt].bp.y)*(data[qcnt-1].cp.y-data[qcnt].bp.y)<0 ) {
- /* data are bad */;
- for ( i=0; i<=ptcnt; ++i ) {
- data[qcnt+i-1].cp = data2[i].cp;
- data[qcnt+i-1].bp = data2[i].bp;
- }
- } else {
- for ( i=0; i<=ptcnt; ++i ) {
- if ( ptcnt!=0 ) {
- data[qcnt+i-1].cp.x = (data[qcnt+i-1].cp.x*(ptcnt-i) + data2[i].cp.x*i)/ptcnt;
- data[qcnt+i-1].cp.y = (data[qcnt+i-1].cp.y*(ptcnt-i) + data2[i].cp.y*i)/ptcnt;
- }
- }
- }
- if ( round_to_int ) {
- for ( i=0; i<=ptcnt; ++i ) {
- data[qcnt+i-1].cp.x = rint( data[qcnt+i-1].cp.x );
- data[qcnt+i-1].cp.y = rint( data[qcnt+i-1].cp.y );
- }
- }
- for ( i=0; i<ptcnt; ++i ) {
- data[qcnt+i].bp.x = (data[qcnt+i].cp.x + data[qcnt+i-1].cp.x)/2;
- data[qcnt+i].bp.y = (data[qcnt+i].cp.y + data[qcnt+i-1].cp.y)/2;
- }
- if ( comparedata(ps,data,qcnt,q,round_to_int,test_level))
-return( q );
- }
-return( -1 );
-}
-#endif
-
-static SplinePoint *AlreadyQuadraticCheck(Spline *ps, SplinePoint *start) {
- SplinePoint *sp;
-
- if ( (RealNearish(ps->splines[0].a,0) && RealNearish(ps->splines[1].a,0)) ||
- ((ps->splines[0].b!=0 && RealNearish(ps->splines[0].a/ps->splines[0].b,0)) &&
- (ps->splines[1].b!=0 && RealNearish(ps->splines[1].a/ps->splines[1].b,0))) ) {
- /* Already Quadratic, just need to find the control point */
- /* Or linear, in which case we don't need to do much of anything */
- Spline *spline;
- sp = chunkalloc(sizeof(SplinePoint));
- sp->me.x = ps->to->me.x; sp->me.y = ps->to->me.y;
- sp->roundx = ps->to->roundx; sp->roundy = ps->to->roundy; sp->dontinterpolate = ps->to->dontinterpolate;
- sp->ttfindex = 0xfffe;
- sp->nextcpindex = 0xfffe;
- sp->nonextcp = true;
- spline = chunkalloc(sizeof(Spline));
- spline->order2 = true;
- spline->from = start;
- spline->to = sp;
- spline->splines[0] = ps->splines[0]; spline->splines[1] = ps->splines[1];
- start->next = sp->prev = spline;
- if ( ps->knownlinear ) {
- spline->islinear = spline->knownlinear = true;
- start->nonextcp = sp->noprevcp = true;
- start->nextcp = start->me;
- sp->prevcp = sp->me;
- } else {
- start->nonextcp = sp->noprevcp = false;
- start->nextcp.x = sp->prevcp.x = (ps->splines[0].c+2*ps->splines[0].d)/2;
- start->nextcp.y = sp->prevcp.y = (ps->splines[1].c+2*ps->splines[1].d)/2;
- }
-return( sp );
- }
-return( NULL );
-}
-
-static SplinePoint *ttfApprox(Spline *ps, SplinePoint *start) {
-#if !defined(FONTFORGE_CONFIG_NON_SYMMETRIC_QUADRATIC_CONVERSION)
- extended magicpoints[6], last;
- int cnt, i, j, qcnt, test_level;
- QPoint data[8*10];
- int round_to_int =
- /* The end points are at integer points, or one coord is at half while */
- /* the other is at an integer (ie. condition for ttf interpolated point)*/
- ((ps->from->me.x==rint(ps->from->me.x) &&
- ps->from->me.y==rint(ps->from->me.y)) ||
- (ps->from->me.x==rint(ps->from->me.x) &&
- ps->from->me.x==ps->from->nextcp.x &&
- ps->from->me.y!=ps->from->nextcp.y &&
- 2*ps->from->me.y==rint(2*ps->from->me.y)) ||
- (ps->from->me.y==rint(ps->from->me.y) &&
- ps->from->me.y==ps->from->nextcp.y &&
- ps->from->me.x!=ps->from->nextcp.x &&
- 2*ps->from->me.x==rint(2*ps->from->me.x)) ) &&
- ((ps->to->me.x == rint(ps->to->me.x) &&
- ps->to->me.y == rint(ps->to->me.y)) ||
- (ps->to->me.x==rint(ps->to->me.x) &&
- ps->to->me.x==ps->to->prevcp.x &&
- ps->to->me.y!=ps->to->prevcp.y &&
- 2*ps->to->me.y==rint(2*ps->to->me.y)) ||
- (ps->to->me.y==rint(ps->to->me.y) &&
- ps->to->me.y==ps->to->prevcp.y &&
- ps->to->me.x!=ps->to->prevcp.x &&
- 2*ps->to->me.x==rint(2*ps->to->me.x)) );
-#endif
- SplinePoint *ret;
-/* Divide the spline up at extrema and points of inflection. The first */
-/* because ttf splines should have points at their extrema, the second */
-/* because quadratic splines can't have points of inflection. */
-/* Let's not do the first (extrema) AddExtrema does this better and we */
-/* don't want unneeded extrema. */
-/* And sometimes we don't want to look at the points of inflection either*/
-
- if (( ret = AlreadyQuadraticCheck(ps,start))!=NULL )
-return( ret );
-
-#if !defined(FONTFORGE_CONFIG_NON_SYMMETRIC_QUADRATIC_CONVERSION)
- qcnt = 1;
- data[0].bp = ps->from->me;
- data[0].t = 0;
- qcnt = PrettyApprox(ps,0,1,data,qcnt,round_to_int,0);
- if ( qcnt!=-1 )
-return( CvtDataToSplines(data,1,qcnt,start));
-
- cnt = 0;
- /* cnt = Spline2DFindExtrema(ps,magicpoints);*/
-
- cnt += Spline2DFindPointsOfInflection(ps,magicpoints+cnt);
-
- /* remove points outside range */
- for ( i=0; i<cnt; ++i ) {
- if ( magicpoints[i]<=0 || magicpoints[i]>=1 ) {
- for ( j=i+1; j<cnt; ++j )
- magicpoints[j-1] = magicpoints[j];
- --cnt;
- --i;
- }
- }
- /* sort points */
- for ( i=0; i<cnt; ++i ) for ( j=i+1; j<cnt; ++j ) {
- if ( magicpoints[i]>magicpoints[j] ) {
- bigreal temp = magicpoints[i];
- magicpoints[i] = magicpoints[j];
- magicpoints[j] = temp;
- }
- }
- /* Remove duplicates */
- for ( i=1; i<cnt; ++i ) {
- while ( i<cnt && RealNear(magicpoints[i-1],magicpoints[i])) {
- --cnt;
- for ( j=i ; j<cnt; ++j )
- magicpoints[j] = magicpoints[j+1];
- magicpoints[cnt] = -1;
- }
- }
-
- for ( test_level=0; test_level<3; ++test_level ) {
- qcnt = 1;
- last = 0;
- for ( i=0; i<cnt; ++i ) {
- qcnt = PrettyApprox(ps,last,magicpoints[i],data,qcnt,round_to_int,test_level);
- last = magicpoints[i];
- }
- qcnt = PrettyApprox(ps,last,1,data,qcnt,round_to_int,test_level);
- if ( qcnt!=-1 )
- return( CvtDataToSplines(data,1,qcnt,start));
- }
-#endif
-
-return( __ttfApprox(ps,0,1,start));
-}
-
-static void ttfCleanup(SplinePoint *from) {
- SplinePoint *test, *next;
-
- for ( test = from; test->next!=NULL; test = next ) {
- next = test->next->to;
- /* Too close together to be meaningful when output as ttf */
- if ( rint(test->me.x) == rint(next->me.x) &&
- rint(test->me.y) == rint(next->me.y) ) {
- if ( next->next==NULL || next==from ) {
- if ( test==from )
- break;
- next->prevcp = test->prevcp;
- next->noprevcp = test->noprevcp;
- next->prev = test->prev;
- next->prev->to = next;
- SplineFree(test->next);
- SplinePointFree(test);
- } else {
- test->nextcp = next->nextcp;
- test->nonextcp = next->nonextcp;
- test->next = next->next;
- test->next->from = test;
- SplineFree(next->prev);
- SplinePointFree(next);
- next = test->next->to;
- }
- }
- if ( next==from )
- break;
- }
-}
-
-SplineSet *SSttfApprox(SplineSet *ss) {
- SplineSet *ret = chunkalloc(sizeof(SplineSet));
- Spline *spline, *first;
-
- ret->first = chunkalloc(sizeof(SplinePoint));
- *ret->first = *ss->first;
- if ( ret->first->hintmask != NULL ) {
- ret->first->hintmask = chunkalloc(sizeof(HintMask));
- memcpy(ret->first->hintmask,ss->first->hintmask,sizeof(HintMask));
- }
- ret->last = ret->first;
-
- first = NULL;
- for ( spline=ss->first->next; spline!=NULL && spline!=first; spline=spline->to->next ) {
- ret->last = ttfApprox(spline,ret->last);
- ret->last->ptindex = spline->to->ptindex;
- ret->last->ttfindex = spline->to->ttfindex;
- ret->last->nextcpindex = spline->to->nextcpindex;
- if ( spline->to->hintmask != NULL ) {
- ret->last->hintmask = chunkalloc(sizeof(HintMask));
- memcpy(ret->last->hintmask,spline->to->hintmask,sizeof(HintMask));
- }
- if ( first==NULL ) first = spline;
- }
- if ( ss->first==ss->last ) {
- if ( ret->last!=ret->first ) {
- ret->first->prevcp = ret->last->prevcp;
- ret->first->noprevcp = ret->last->noprevcp;
- ret->first->prev = ret->last->prev;
- ret->last->prev->to = ret->first;
- SplinePointFree(ret->last);
- ret->last = ret->first;
- }
- }
- ttfCleanup(ret->first);
- SPLCategorizePoints(ret);
-return( ret );
-}
-
-SplineSet *SplineSetsTTFApprox(SplineSet *ss) {
- SplineSet *head=NULL, *last, *cur;
-
- while ( ss!=NULL ) {
- cur = SSttfApprox(ss);
- if ( head==NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
- ss = ss->next;
- }
-return( head );
-}
-
-static void ImproveB3CPForQuadratic(real from,real *_ncp,real *_pcp,real to) {
- real ncp = *_ncp, pcp = *_pcp;
- real noff, poff;
- real c,b, best;
- int err, i, besti;
- real offs[9];
-
- if ( (noff=ncp/32768.0)<0 ) noff = -noff;
- if ( (poff=pcp/32768.0)<0 ) poff = -poff;
- if ( noff<1.0/32768.0 ) noff = 1.0/32768.0;
- if ( poff<1.0/32768.0 ) poff = 1.0/32768.0;
-
- c = 3*(ncp-from); b = 3*(pcp-ncp)-c; best = to-from-c-b;
- offs[4] = best;
- if ( best==0 )
-return;
-
- for ( err=0; err<10; ++err, noff/=2.0, poff/=2.0 ) {
- c = 3*(ncp-noff-from); b = 3*(pcp-poff-(ncp-noff))-c; offs[0] = to-from-c-b;
- c = 3*(ncp-noff-from); b = 3*(pcp -(ncp-noff))-c; offs[1] = to-from-c-b;
- c = 3*(ncp-noff-from); b = 3*(pcp+poff-(ncp-noff))-c; offs[2] = to-from-c-b;
- c = 3*(ncp -from); b = 3*(pcp-poff-(ncp ))-c; offs[3] = to-from-c-b;
- c = 3*(ncp -from); b = 3*(pcp+poff-(ncp ))-c; offs[5] = to-from-c-b;
- c = 3*(ncp+noff-from); b = 3*(pcp-poff-(ncp+noff))-c; offs[6] = to-from-c-b;
- c = 3*(ncp+noff-from); b = 3*(pcp -(ncp+noff))-c; offs[7] = to-from-c-b;
- c = 3*(ncp+noff-from); b = 3*(pcp+poff-(ncp+noff))-c; offs[8] = to-from-c-b;
- besti=4;
- for ( i=0; i<9; ++i ) {
- if ( offs[i]<0 ) offs[i]= - offs[i];
- if ( offs[i]<best ) {
- besti = i;
- best = offs[i];
- }
- }
- if ( besti!=4 ) {
- if ( besti<3 ) ncp -= noff;
- else if ( besti>=6 ) ncp += noff;
- if ( besti%3==0 ) pcp -= poff;
- else if ( besti%3==2 ) pcp += poff;
- offs[4] = best;
- if ( best==0 )
- break;
- }
- }
- *_ncp = ncp;
- *_pcp = pcp;
-}
-
-SplineSet *SSPSApprox(SplineSet *ss) {
- SplineSet *ret = chunkalloc(sizeof(SplineSet));
- Spline *spline, *first;
- SplinePoint *to;
-
- ret->first = chunkalloc(sizeof(SplinePoint));
- *ret->first = *ss->first;
- if ( ret->first->hintmask != NULL ) {
- ret->first->hintmask = chunkalloc(sizeof(HintMask));
- memcpy(ret->first->hintmask,ss->first->hintmask,sizeof(HintMask));
- }
- ret->last = ret->first;
-
- first = NULL;
- for ( spline=ss->first->next; spline!=NULL && spline!=first; spline=spline->to->next ) {
- to = chunkalloc(sizeof(SplinePoint));
- *to = *spline->to;
- if ( to->hintmask != NULL ) {
- to->hintmask = chunkalloc(sizeof(HintMask));
- memcpy(to->hintmask,spline->to->hintmask,sizeof(HintMask));
- }
- if ( !spline->knownlinear ) {
- ret->last->nextcp.x = ret->last->me.x + 2*(ret->last->nextcp.x-ret->last->me.x)/3;
- ret->last->nextcp.y = ret->last->me.y + 2*(ret->last->nextcp.y-ret->last->me.y)/3;
- to->prevcp.x = to->me.x + 2*(to->prevcp.x-to->me.x)/3;
- to->prevcp.y = to->me.y + 2*(to->prevcp.y-to->me.y)/3;
- ImproveB3CPForQuadratic(ret->last->me.x,&ret->last->nextcp.x,&to->prevcp.x,to->me.x);
- ImproveB3CPForQuadratic(ret->last->me.y,&ret->last->nextcp.y,&to->prevcp.y,to->me.y);
- }
- SplineMake3(ret->last,to);
- ret->last = to;
- if ( first==NULL ) first = spline;
- }
- if ( ss->first==ss->last ) {
- if ( ret->last!=ret->first ) {
- ret->first->prevcp = ret->last->prevcp;
- ret->first->noprevcp = ret->last->noprevcp;
- ret->first->prev = ret->last->prev;
- ret->last->prev->to = ret->first;
- SplinePointFree(ret->last);
- ret->last = ret->first;
- }
- }
- ret->is_clip_path = ss->is_clip_path;
-return( ret );
-}
-
-SplineSet *SplineSetsPSApprox(SplineSet *ss) {
- SplineSet *head=NULL, *last, *cur;
-
- while ( ss!=NULL ) {
- cur = SSPSApprox(ss);
- if ( head==NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
- ss = ss->next;
- }
-return( head );
-}
-
-
-void SCConvertLayerToOrder2(SplineChar *sc,int layer) {
- SplineSet *new;
-
- if ( sc==NULL )
-return;
-
- new = SplineSetsTTFApprox(sc->layers[layer].splines);
- SplinePointListsFree(sc->layers[layer].splines);
- sc->layers[layer].splines = new;
-
- sc->layers[layer].order2 = true;
-
- MinimumDistancesFree(sc->md); sc->md = NULL;
-}
-
-void SCConvertToOrder2(SplineChar *sc) {
- int layer;
-
- if ( sc==NULL )
-return;
-
- for ( layer=ly_back; layer<sc->layer_cnt; ++layer )
- SCConvertLayerToOrder2(sc,layer);
-}
-
-static void SCConvertRefs(SplineChar *sc,int layer) {
- RefChar *rf;
-
- sc->ticked = true;
- for ( rf=sc->layers[layer].refs; rf!=NULL; rf=rf->next ) {
- if ( !rf->sc->ticked )
- SCConvertRefs(rf->sc,layer);
- SCReinstanciateRefChar(sc,rf,layer); /* Conversion is done by reinstanciating */
- /* Since the base thing will have been converted, all we do is copy its data */
- }
-}
-
-void SFConvertLayerToOrder2(SplineFont *_sf,int layer) {
- int i, k;
- SplineFont *sf;
-
- if ( _sf->cidmaster!=NULL ) _sf=_sf->cidmaster;
- k = 0;
- do {
- sf = _sf->subfonts==NULL ? _sf : _sf->subfonts[k];
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- SCConvertLayerToOrder2(sf->glyphs[i],layer);
- sf->glyphs[i]->ticked = false;
- sf->glyphs[i]->changedsincelasthinted = false;
- }
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL && !sf->glyphs[i]->ticked )
- SCConvertRefs(sf->glyphs[i],layer);
-
- if ( layer!=ly_back )
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL )
- SCNumberPoints(sf->glyphs[i],layer);
- ++k;
- } while ( k<_sf->subfontcnt );
- _sf->layers[layer].order2 = true;
-}
-
-void SFConvertGridToOrder2(SplineFont *_sf) {
- int k;
- SplineSet *new;
- SplineFont *sf;
-
- if ( _sf->cidmaster!=NULL ) _sf=_sf->cidmaster;
- k = 0;
- do {
- sf = _sf->subfonts==NULL ? _sf : _sf->subfonts[k];
-
- new = SplineSetsTTFApprox(sf->grid.splines);
- SplinePointListsFree(sf->grid.splines);
- sf->grid.splines = new;
-
- sf->grid.order2 = true;
- ++k;
- } while ( k<_sf->subfontcnt );
- _sf->grid.order2 = true;
-}
-
-void SFConvertToOrder2(SplineFont *_sf) {
- int layer;
-
- for ( layer=0; layer<_sf->layer_cnt; ++layer )
- SFConvertLayerToOrder2(_sf,layer);
- SFConvertGridToOrder2(_sf);
-}
-
-
-/* ************************************************************************** */
-
-void SplineRefigure2(Spline *spline) {
- SplinePoint *from = spline->from, *to = spline->to;
- Spline1D *xsp = &spline->splines[0], *ysp = &spline->splines[1];
- Spline old;
-
-#ifdef DEBUG
- if ( RealNear(from->me.x,to->me.x) && RealNear(from->me.y,to->me.y))
- IError("Zero length spline created");
-#endif
- if ( spline->acceptableextrema )
- old = *spline;
-
- if ( from->nonextcp || to->noprevcp ||
- ( from->nextcp.x==from->me.x && from->nextcp.y == from->me.y && from->nextcpindex>=0xfffe ) ||
- ( to->prevcp.x==to->me.x && to->prevcp.y == to->me.y && from->nextcpindex>=0xfffe )) {
- from->nonextcp = to->noprevcp = true;
- from->nextcp = from->me;
- to->prevcp = to->me;
- }
-
- if ( from->nonextcp && to->noprevcp )
- /* Ok */;
- else if ( from->nonextcp || to->noprevcp || from->nextcp.x!=to->prevcp.x ||
- from->nextcp.y!=to->prevcp.y ) {
- if ( RealNear(from->nextcp.x,to->prevcp.x) &&
- RealNear(from->nextcp.y,to->prevcp.y)) {
- from->nextcp.x = to->prevcp.x = (from->nextcp.x+to->prevcp.x)/2;
- from->nextcp.y = to->prevcp.y = (from->nextcp.y+to->prevcp.y)/2;
- } else {
- IError("Invalid 2nd order spline in SplineRefigure2" );
-#ifndef GWW_TEST
- /* I don't want these to go away when I'm debugging. I want to */
- /* know how I got them */
- from->nextcp.x = to->prevcp.x = (from->nextcp.x+to->prevcp.x)/2;
- from->nextcp.y = to->prevcp.y = (from->nextcp.y+to->prevcp.y)/2;
-#endif
- }
- }
-
- xsp->d = from->me.x; ysp->d = from->me.y;
- if ( from->nonextcp && to->noprevcp ) {
- spline->islinear = true;
- xsp->c = to->me.x-from->me.x;
- ysp->c = to->me.y-from->me.y;
- xsp->a = xsp->b = 0;
- ysp->a = ysp->b = 0;
- } else {
- /* from p. 393 (Operator Details, curveto) PostScript Lang. Ref. Man. (Red book) */
- xsp->c = 2*(from->nextcp.x-from->me.x);
- ysp->c = 2*(from->nextcp.y-from->me.y);
- xsp->b = to->me.x-from->me.x-xsp->c;
- ysp->b = to->me.y-from->me.y-ysp->c;
- xsp->a = 0;
- ysp->a = 0;
- if ( RealNear(xsp->c,0)) xsp->c=0;
- if ( RealNear(ysp->c,0)) ysp->c=0;
- if ( RealNear(xsp->b,0)) xsp->b=0;
- if ( RealNear(ysp->b,0)) ysp->b=0;
- spline->islinear = false;
- if ( ysp->b==0 && xsp->b==0 )
- spline->islinear = true; /* This seems extremely unlikely... */
- }
- if ( isnan(ysp->b) || isnan(xsp->b) )
- IError("NaN value in spline creation");
- LinearApproxFree(spline->approx);
- spline->approx = NULL;
- spline->knowncurved = false;
- spline->knownlinear = spline->islinear;
- SplineIsLinear(spline);
- spline->isquadratic = !spline->knownlinear;
- spline->order2 = true;
-
- if ( spline->acceptableextrema ) {
- /* I don't check "d", because changes to that reflect simple */
- /* translations which will not affect the shape of the spline */
- /* (I don't check "a" because it is always 0 in a quadratic spline) */
- if ( !RealNear(old.splines[0].b,spline->splines[0].b) ||
- !RealNear(old.splines[0].c,spline->splines[0].c) ||
- !RealNear(old.splines[1].b,spline->splines[1].b) ||
- !RealNear(old.splines[1].c,spline->splines[1].c) )
- spline->acceptableextrema = false;
- }
-}
-
-void SplineRefigure(Spline *spline) {
- if ( spline==NULL )
-return;
- if ( spline->order2 )
- SplineRefigure2(spline);
- else
- SplineRefigure3(spline);
-}
-
-static int IsHV(Spline *spline, int isfrom) {
- SplinePoint *sp;
-
- if ( spline==NULL )
-return( false );
-
- if ( !isfrom ) {
- sp = spline->to;
- if ( sp->noprevcp )
-return( false );
- if ( sp->me.x == sp->prevcp.x )
-return( 2 ); /* Vertical */
- else if ( sp->me.y == sp->prevcp.y )
-return( 1 ); /* Horizontal */
- else
-return( 0 ); /* Neither */
- } else {
- sp = spline->from;
- if ( sp->nonextcp )
-return( false );
- if ( sp->me.x == sp->nextcp.x )
-return( 2 ); /* Vertical */
- else if ( sp->me.y == sp->nextcp.y )
-return( 1 ); /* Horizontal */
- else
-return( 0 ); /* Neither */
- }
-}
-
-void SplineRefigureFixup(Spline *spline) {
- SplinePoint *from, *to, *prev, *next;
- BasePoint foff, toff, unit, new;
- bigreal len;
- enum pointtype fpt, tpt;
- int done = false;
- extern int snaptoint;
-
- if ( !spline->order2 ) {
- SplineRefigure3(spline);
-return;
- }
- from = spline->from; to = spline->to;
- if ( from->pointtype==pt_hvcurve && to->pointtype==pt_hvcurve ) {
- done = true;
- if ( !IsHV(from->prev,0) && !IsHV(to->next,1) ) {
- if ( to->me.x == from->me.x ) {
- from->nextcp.x = to->prevcp.x = to->me.x;
- from->nextcp.y = to->prevcp.y = (from->me.y+from->me.y)/2;
- } else if ( to->me.y==from->me.y ) {
- from->nextcp.y = to->prevcp.y = to->me.y;
- from->nextcp.x = to->prevcp.x = (from->me.x+from->me.x)/2;
- /* Assume they are drawing clockwise */
- } else if (( to->me.x>from->me.x && to->me.y>=from->me.y ) ||
- (to->me.x<from->me.x && to->me.y<=from->me.y )) {
- from->nextcp.x = to->prevcp.x = from->me.x;
- from->nextcp.y = to->prevcp.y = to->me.y;
- } else {
- from->nextcp.x = to->prevcp.x = to->me.x;
- from->nextcp.y = to->prevcp.y = from->me.y;
- }
- } else if ( !IsHV(to->next,1)) {
- if ( IsHV(from->prev,0)==1 ) {
- from->nextcp.x = to->prevcp.x = to->me.x;
- from->nextcp.y = to->prevcp.y = from->me.y;
- } else {
- from->nextcp.x = to->prevcp.x = from->me.x;
- from->nextcp.y = to->prevcp.y = to->me.y;
- }
- } else if ( !IsHV(from->prev,0)) {
- if ( IsHV(to->next,1)==1 ) {
- from->nextcp.x = to->prevcp.x = from->me.x;
- from->nextcp.y = to->prevcp.y = to->me.y;
- } else {
- from->nextcp.x = to->prevcp.x = to->me.x;
- from->nextcp.y = to->prevcp.y = from->me.y;
- }
- } else {
- if ( IsHV(from->prev,0)==1 && IsHV(to->next,1)==2 ) {
- from->nextcp.x = to->prevcp.x = to->me.x;
- from->nextcp.y = to->prevcp.y = from->me.y;
- } else if ( IsHV(from->prev,0)==2 && IsHV(to->next,1)==1 ) {
- from->nextcp.x = to->prevcp.x = from->me.x;
- from->nextcp.y = to->prevcp.y = to->me.y;
- } else
- done = false;
- }
- if ( done )
- to->noprevcp = from->nonextcp = false;
- }
-
- if ( !done ) {
- unit.x = from->nextcp.x-from->me.x;
- unit.y = from->nextcp.y-from->me.y;
- len = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( len!=0 )
- unit.x /= len; unit.y /= len;
-
- if ( (fpt = from->pointtype)==pt_hvcurve ) fpt = pt_curve;
- if ( (tpt = to->pointtype)==pt_hvcurve ) tpt = pt_curve;
- if ( from->nextcpdef && to->prevcpdef ) switch ( fpt*3+tpt ) {
- case pt_corner*3+pt_corner:
- case pt_corner*3+pt_tangent:
- case pt_tangent*3+pt_corner:
- case pt_tangent*3+pt_tangent:
- from->nonextcp = to->noprevcp = true;
- from->nextcp = from->me;
- to->prevcp = to->me;
- break;
- case pt_curve*3+pt_curve:
- case pt_curve*3+pt_corner:
- case pt_corner*3+pt_curve:
- case pt_tangent*3+pt_curve:
- case pt_curve*3+pt_tangent:
- if ( from->prev!=NULL && (from->pointtype==pt_tangent || from->pointtype==pt_hvcurve)) {
- prev = from->prev->from;
- foff.x = prev->me.x;
- foff.y = prev->me.y;
- } else if ( from->prev!=NULL ) {
- prev = from->prev->from;
- foff.x = to->me.x-prev->me.x + from->me.x;
- foff.y = to->me.y-prev->me.y + from->me.y;
- } else {
- foff.x = from->me.x + (to->me.x-from->me.x)-(to->me.y-from->me.y);
- foff.y = from->me.y + (to->me.x-from->me.x)+(to->me.y-from->me.y);
- prev = NULL;
- }
- if ( to->next!=NULL && (to->pointtype==pt_tangent || to->pointtype==pt_hvcurve)) {
- next = to->next->to;
- toff.x = next->me.x;
- toff.y = next->me.y;
- } else if ( to->next!=NULL ) {
- next = to->next->to;
- toff.x = next->me.x-from->me.x + to->me.x;
- toff.y = next->me.y-from->me.y + to->me.y;
- } else {
- toff.x = to->me.x + (to->me.x-from->me.x)+(to->me.y-from->me.y);
- toff.y = to->me.y - (to->me.x-from->me.x)+(to->me.y-from->me.y);
- next = NULL;
- }
- if (( from->pointtype==pt_hvcurve && foff.x!=from->me.x && foff.y!=from->me.y ) ||
- ( to->pointtype==pt_hvcurve && toff.x!=to->me.x && toff.y!=to->me.y )) {
- if ( from->me.x == to->me.x ) {
- if ( from->pointtype==pt_hvcurve )
- foff.x = from->me.x;
- if ( to->pointtype==pt_hvcurve )
- toff.x = to->me.x;
- } else if ( from->me.y == to->me.y ) {
- if ( from->pointtype==pt_hvcurve )
- foff.y = from->me.y;
- if ( to->pointtype==pt_hvcurve )
- toff.y = to->me.y;
- } else {
- if ( from->pointtype==pt_hvcurve && foff.x!=from->me.x && foff.y!=from->me.y ) {
- if ( fabs(foff.x-from->me.x) > fabs(foff.y-from->me.y) )
- foff.y = from->me.y;
- else
- foff.x = from->me.x;
- }
- if ( to->pointtype==pt_hvcurve && toff.x!=to->me.x && toff.y!=to->me.y ) {
- if ( from->pointtype==pt_hvcurve ) {
- if ( from->me.x==foff.x )
- toff.y = to->me.y;
- else
- toff.x = to->me.x;
- } else if ( fabs(toff.x-to->me.x) > fabs(toff.y-to->me.y) )
- toff.y = to->me.y;
- else
- toff.x = to->me.x;
- }
- }
- }
- if ( IntersectLinesClip(&from->nextcp,&foff,&from->me,&toff,&to->me)) {
- from->nonextcp = to->noprevcp = false;
- to->prevcp = from->nextcp;
- if ( (from->pointtype==pt_curve || from->pointtype==pt_hvcurve ) &&
- !from->noprevcp && from->prev!=NULL ) {
- prev = from->prev->from;
- if ( IntersectLinesClip(&from->prevcp,&from->nextcp,&from->me,&prev->nextcp,&prev->me)) {
- prev->nextcp = from->prevcp;
- SplineRefigure2(from->prev);
- }
- }
- if ( (to->pointtype==pt_curve || to->pointtype==pt_hvcurve) &&
- !to->nonextcp && to->next!=NULL ) {
- next = to->next->to;
- if ( IntersectLinesClip(&to->nextcp,&to->prevcp,&to->me,&next->prevcp,&next->me)) {
- next->prevcp = to->nextcp;
- SplineRefigure(to->next);
- }
- }
- }
- break;
- } else {
- /* Can't set things arbetrarily here, but make sure they are consistant */
- if ( (from->pointtype==pt_curve || from->pointtype==pt_hvcurve ) &&
- !from->noprevcp && !from->nonextcp ) {
- unit.x = from->nextcp.x-from->me.x;
- unit.y = from->nextcp.y-from->me.y;
- len = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( len!=0 ) {
- unit.x /= len; unit.y /= len;
- len = sqrt((from->prevcp.x-from->me.x)*(from->prevcp.x-from->me.x) + (from->prevcp.y-from->me.y)*(from->prevcp.y-from->me.y));
- new.x = -len*unit.x + from->me.x; new.y = -len*unit.y + from->me.y;
- if ( new.x-from->prevcp.x<-1 || new.x-from->prevcp.x>1 ||
- new.y-from->prevcp.y<-1 || new.y-from->prevcp.y>1 ) {
- prev = NULL;
- if ( from->prev!=NULL && (prev = from->prev->from)!=NULL &&
- IntersectLinesClip(&from->prevcp,&new,&from->me,&prev->nextcp,&prev->me)) {
- prev->nextcp = from->prevcp;
- SplineRefigure2(from->prev);
- } else {
- from->prevcp = new;
- if ( prev!=NULL )
- prev->nextcp = new;
- }
- }
- }
- } else if ( from->pointtype==pt_tangent ) {
- if ( from->prev!=NULL ) {
- prev = from->prev->from;
- if ( !from->noprevcp && !prev->nonextcp &&
- IntersectLinesClip(&from->prevcp,&to->me,&from->me,&prev->nextcp,&prev->me)) {
- prev->nextcp = from->prevcp;
- SplineRefigure2(from->prev);
- }
- if ( !from->nonextcp && !to->noprevcp &&
- IntersectLinesClip(&from->nextcp,&prev->me,&from->me,&to->prevcp,&to->me))
- to->prevcp = from->nextcp;
- }
- }
- if ( (to->pointtype==pt_curve || to->pointtype==pt_hvcurve ) &&
- !to->noprevcp && !to->nonextcp ) {
- unit.x = to->prevcp.x-to->nextcp.x;
- unit.y = to->prevcp.y-to->nextcp.y;
- len = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( len!=0 ) {
- unit.x /= len; unit.y /= len;
- len = sqrt((to->nextcp.x-to->me.x)*(to->nextcp.x-to->me.x) + (to->nextcp.y-to->me.y)*(to->nextcp.y-to->me.y));
- new.x = -len*unit.x + to->me.x; new.y = -len*unit.y + to->me.y;
- if ( new.x-to->nextcp.x<-1 || new.x-to->nextcp.x>1 ||
- new.y-to->nextcp.y<-1 || new.y-to->nextcp.y>1 ) {
- if ( to->next!=NULL && (next = to->next->to)!=NULL &&
- IntersectLinesClip(&to->nextcp,&new,&to->me,&next->prevcp,&next->me)) {
- next->prevcp = to->nextcp;
- SplineRefigure2(to->next);
- } else {
- to->nextcp = new;
- if ( to->next!=NULL ) {
- to->next->to->prevcp = new;
- SplineRefigure(to->next);
- }
- }
- }
- }
- } else if ( to->pointtype==pt_tangent ) {
- if ( to->next!=NULL ) {
- next = to->next->to;
- if ( !to->nonextcp && !next->noprevcp &&
- IntersectLinesClip(&to->nextcp,&from->me,&to->me,&next->prevcp,&next->me)) {
- next->prevcp = to->nextcp;
- SplineRefigure2(to->next);
- }
- if ( !from->nonextcp && !to->noprevcp &&
- IntersectLinesClip(&from->nextcp,&next->me,&to->me,&from->nextcp,&from->me))
- to->prevcp = from->nextcp;
- }
- }
- }
- if ( from->nonextcp && to->noprevcp )
- /* Ok */;
- else if ( from->nonextcp || to->noprevcp ) {
- from->nonextcp = to->noprevcp = true;
- } else if (( from->nextcp.x==from->me.x && from->nextcp.y==from->me.y ) ||
- ( to->prevcp.x==to->me.x && to->prevcp.y==to->me.y ) ) {
- from->nonextcp = to->noprevcp = true;
- } else if ( from->nonextcp || to->noprevcp || from->nextcp.x!=to->prevcp.x ||
- from->nextcp.y!=to->prevcp.y ) {
- if ( !IntersectLinesClip(&from->nextcp,
- (from->pointtype==pt_tangent && from->prev!=NULL)?&from->prev->from->me:&from->nextcp, &from->me,
- (to->pointtype==pt_tangent && to->next!=NULL)?&to->next->to->me:&to->prevcp, &to->me)) {
- from->nextcp.x = (from->me.x+to->me.x)/2;
- from->nextcp.y = (from->me.y+to->me.y)/2;
- }
- to->prevcp = from->nextcp;
- if (( from->nextcp.x==from->me.x && from->nextcp.y==from->me.y ) ||
- ( to->prevcp.x==to->me.x && to->prevcp.y==to->me.y ) ) {
- from->nonextcp = to->noprevcp = true;
- from->nextcp = from->me;
- to->prevcp = to->me;
- }
- }
- }
- if ( snaptoint && !from->nonextcp ) {
- from->nextcp.x = to->prevcp.x = rint(from->nextcp.x);
- from->nextcp.y = to->prevcp.y = rint(from->nextcp.y);
- }
- SplineRefigure2(spline);
-
- /* Now in order2 splines it is possible to request combinations that are */
- /* mathematically impossible -- two adjacent hv points often don't work */
- if ( to->pointtype==pt_hvcurve &&
- !(to->prevcp.x == to->me.x && to->prevcp.y != to->me.y ) &&
- !(to->prevcp.y == to->me.y && to->prevcp.x != to->me.x ) )
- to->pointtype = pt_curve;
- if ( from->pointtype==pt_hvcurve &&
- !(from->nextcp.x == from->me.x && from->nextcp.y != from->me.y ) &&
- !(from->nextcp.y == from->me.y && from->nextcp.x != from->me.x ) )
- from->pointtype = pt_curve;
-}
-
-Spline *SplineMake2(SplinePoint *from, SplinePoint *to) {
- Spline *spline = chunkalloc(sizeof(Spline));
-
- spline->from = from; spline->to = to;
- from->next = to->prev = spline;
- spline->order2 = true;
- SplineRefigure2(spline);
-return( spline );
-}
-
-Spline *SplineMake(SplinePoint *from, SplinePoint *to, int order2) {
- if (order2 > 0)
-return( SplineMake2(from,to));
- else
-return( SplineMake3(from,to));
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/splineoverlap.c b/dviware/dvisvgm/libs/ff-woff/fontforge/splineoverlap.c
deleted file mode 100644
index 1c1a430b52..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/splineoverlap.c
+++ /dev/null
@@ -1,442 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include "edgelist2.h"
-
-#ifdef HAVE_IEEEFP_H
-# include <ieeefp.h> /* Solaris defines isnan in ieeefp rather than math.h */
-#endif
-
-/* First thing we do is divide each spline into a set of sub-splines each of */
-/* which is monotonic in both x and y (always increasing or decreasing) */
-/* Then we compare each monotonic spline with every other one and see if they*/
-/* intersect. If they do, split each up into sub-sub-segments and create an*/
-/* intersection point (note we need to be a little careful if an intersec- */
-/* tion happens at an end point. We don't need to create a intersection for */
-/* two adjacent splines, there isn't a real intersection... but if a third */
-/* spline crosses that point (or ends there) then all three (four) splines */
-/* need to be joined into an intersection point) */
-/* Nasty things happen if splines are coincident. They will almost never be */
-/* perfectly coincident and will keep crossing and recrossing as rounding */
-/* errors suggest one is before the other. Look for coincident splines and */
-/* treat the places they start and stop being coincident as intersections */
-/* then when we find needed splines below look for these guys and ignore */
-/* recrossings of splines which are close together */
-/* Figure out if each monotonic sub-spline is needed or not */
-/* (Note: It was tempting to split the bits up into real splines rather */
-/* than keeping them as sub-sections of the original. Unfortunately this */
-/* splitting introduced rounding errors which meant that we got more */
-/* intersections, which meant that splines could be both needed and un. */
-/* so I don't do that until later) */
-/* if the spline hasn't been tagged yet: */
-/* does the spline change greater in x or y? */
-/* draw a line parallel to the OTHER axis which hits our spline and doesn't*/
-/* hit any endpoints (or intersections, which are end points too now) */
-/* count the winding number (as we do this we can mark other splines as */
-/* needed or not) and figure out if our spline is needed */
-/* So run through the list of intersections */
-/* At an intersection there should be an even number of needed monos. */
-/* Use this as the basis of a new splineset, trace it around until */
-/* we get back to the start intersection (should happen) */
-/* (Note: We may need to reverse a monotonic sub-spline or two) */
-/* As we go, mark each monotonic as having been used */
-/* Keep doing this until all needed exits from all intersections have been */
-/* used. */
-/* The free up our temporary data structures, merge in any open splinesets */
-/* free the old closed splinesets */
-
-// Frank recommends using the following macro whenever making changes
-// to this code and capturing and diffing output in order to track changes
-// in errors and reports.
-// (The pointers tend to clutter the diff a bit.)
-// #define FF_OVERLAP_VERBOSE
-
-static char *glyphname=NULL;
-
-static void SOError(const char *format,...) {
- va_list ap;
- va_start(ap,format);
- if ( glyphname==NULL )
- fprintf(stderr, "Internal Error (overlap): " );
- else
- fprintf(stderr, "Internal Error (overlap) in %s: ", glyphname );
- vfprintf(stderr,format,ap);
- va_end(ap);
-}
-
-#ifdef FF_OVERLAP_VERBOSE
-#define ValidateMListTs_IF_VERBOSE(input) ValidateMListTs(input);
-#else
-#define ValidateMListTs_IF_VERBOSE(input)
-#endif
-
-static void Validate(Monotonic *ms, Intersection *ilist) {
- MList *ml;
- int mcnt;
-
- while ( ilist!=NULL ) {
- // For each listed intersection, verify that each connected monotonic
- // starts or ends at the intersection (identified by pointer, not geography).
- for ( mcnt=0, ml=ilist->monos; ml!=NULL; ml=ml->next ) {
- if ( ml->m->isneeded ) ++mcnt;
- if ( ml->m->start!=ilist && ml->m->end!=ilist )
- SOError( "Intersection (%g,%g) not on a monotonic which should contain it.\n",
- (double) ilist->inter.x, (double) ilist->inter.y );
- }
- if ( mcnt&1 )
- SOError( "Odd number of needed monotonic sections at intersection. (%g,%g)\n",
- (double) ilist->inter.x,(double) ilist->inter.y );
- ilist = ilist->next;
- }
-
- while ( ms!=NULL ) {
- if ( ms->prev == NULL )
- SOError( "Open monotonic loop.\n" );
- else if ( ms->prev->end!=ms->start )
- SOError( "Mismatched intersection.\n (%g,%g)->(%g,%g) ends at (%g,%g) while (%g,%g)->(%g,%g) starts at (%g,%g)\n",
- (double) ms->prev->s->from->me.x,(double) ms->prev->s->from->me.y,
- (double) ms->prev->s->to->me.x,(double) ms->prev->s->to->me.y,
- (double) (ms->prev->end!=NULL?ms->prev->end->inter.x:-999999), (double) (ms->prev->end!=NULL?ms->prev->end->inter.y:-999999),
- (double) ms->s->from->me.x,(double) ms->s->from->me.y,
- (double) ms->s->to->me.x,(double) ms->s->to->me.y,
- (double) (ms->start!=NULL?ms->start->inter.x:-999999), (double) (ms->start!=NULL?ms->start->inter.y:-999999) );
- ms = ms->linked;
- }
-}
-
-static Monotonic *SplineToMonotonic(Spline *s,extended startt,extended endt,
- Monotonic *last,int exclude) {
- Monotonic *m;
- BasePoint start, end;
-
- if ( startt==0 )
- start = s->from->me;
- else {
- start.x = ((s->splines[0].a*startt+s->splines[0].b)*startt+s->splines[0].c)*startt
- + s->splines[0].d;
- start.y = ((s->splines[1].a*startt+s->splines[1].b)*startt+s->splines[1].c)*startt
- + s->splines[1].d;
- }
- if ( endt==1.0 )
- end = s->to->me;
- else {
- end.x = ((s->splines[0].a*endt+s->splines[0].b)*endt+s->splines[0].c)*endt
- + s->splines[0].d;
- end.y = ((s->splines[1].a*endt+s->splines[1].b)*endt+s->splines[1].c)*endt
- + s->splines[1].d;
- }
- if ( ( (real) (((start.x+end.x)/2)==start.x || (real) ((start.x+end.x)/2)==end.x) &&
- (real) (((start.y+end.y)/2)==start.y || (real) ((start.y+end.y)/2)==end.y) ) ||
- (endt <= startt) || Within4RoundingErrors(startt, endt)) {
- /* The distance between the two extrema is so small */
- /* as to be unobservable. In other words we'd end up with a zero*/
- /* length spline */
- if ( endt==1.0 && last!=NULL && last->s==s )
- last->tend = endt;
-return( last );
- }
-
- m = chunkalloc(sizeof(Monotonic));
- m->s = s;
- m->tstart = startt;
- m->tend = endt;
-#ifdef FF_RELATIONAL_GEOM
- m->otstart = startt;
- m->otend = endt;
-#endif
- m->exclude = exclude;
-
- if ( end.x>start.x ) {
- m->xup = true;
- m->b.minx = start.x;
- m->b.maxx = end.x;
- } else {
- m->b.minx = end.x;
- m->b.maxx = start.x;
- }
- if ( end.y>start.y ) {
- m->yup = true;
- m->b.miny = start.y;
- m->b.maxy = end.y;
- } else {
- m->b.miny = end.y;
- m->b.maxy = start.y;
- }
-
- if ( last!=NULL ) {
- // Validate(last, NULL);
- last->next = m;
- last->linked = m;
- m->prev = last;
- // Validate(last, NULL);
- }
-return( m );
-}
-
-
-static int BpSame(BasePoint *bp1, BasePoint *bp2) {
- BasePoint mid;
-
- mid.x = (bp1->x+bp2->x)/2; mid.y = (bp1->y+bp2->y)/2;
- if ( (bp1->x==mid.x || bp2->x==mid.x) &&
- (bp1->y==mid.y || bp2->y==mid.y))
-return( true );
-
-return( false );
-}
-
-static int SSRmNullSplines(SplineSet *spl) {
- Spline *s, *first, *next;
-
- first = NULL;
- for ( s=spl->first->next ; s!=first; s=next ) {
- next = s->to->next;
- if ( ((s->splines[0].a>-.01 && s->splines[0].a<.01 &&
- s->splines[0].b>-.01 && s->splines[0].b<.01 &&
- s->splines[1].a>-.01 && s->splines[1].a<.01 &&
- s->splines[1].b>-.01 && s->splines[1].b<.01) ||
- /* That describes a null spline (a line between the same end-point) */
- RealNear((s->from->nextcp.x-s->from->me.x)*(s->to->me.y-s->to->prevcp.y)-
- (s->from->nextcp.y-s->from->me.y)*(s->to->me.x-s->to->prevcp.x),0)) &&
- /* And the above describes a point with a spline between it */
- /* and itself where the spline covers no area (the two cps */
- /* point in the same direction) */
- BpSame(&s->from->me,&s->to->me)) {
- if ( next==s )
-return( true );
- if ( next->from->selected ) s->from->selected = true;
- s->from->next = next;
- s->from->nextcp = next->from->nextcp;
- s->from->nonextcp = next->from->nonextcp;
- s->from->nextcpdef = next->from->nextcpdef;
- SplinePointFree(next->from);
- if ( spl->first==next->from )
- spl->last = spl->first = s->from;
- next->from = s->from;
- SplineFree(s);
- } else {
- if ( first==NULL )
- first = s;
- }
- }
-return( false );
-}
-
-static Monotonic *SSToMContour(SplineSet *spl, Monotonic *start,
- Monotonic **end, enum overlap_type ot) {
- extended ts[4];
- Spline *first, *s;
- Monotonic *head=NULL, *last=NULL;
- int cnt, i, selected = false;
- extended lastt;
-
- if ( spl->first->prev==NULL )
-return( start ); /* Open contours have no interior, ignore 'em */
- if ( spl->first->prev->from==spl->first &&
- spl->first->noprevcp && spl->first->nonextcp )
-return( start ); /* Let's just remove single points */
-
- if ( ot==over_rmselected || ot==over_intersel || ot==over_fisel ) {
- if ( !selected )
- return( start );
- }
-
- /* We blow up on zero length splines. And a zero length contour is nasty */
- if ( SSRmNullSplines(spl))
-return( start );
-
- first = NULL;
- for ( s=spl->first->next; s!=first; s=s->to->next ) {
- if ( first==NULL ) first = s;
- cnt = Spline2DFindExtrema(s,ts);
- lastt = 0;
- for ( i=0; i<cnt; ++i ) {
- last = SplineToMonotonic(s,lastt,ts[i],last,selected);
- if ( head==NULL ) head = last;
- lastt=ts[i];
- }
- if ( lastt!=1.0 ) {
- last = SplineToMonotonic(s,lastt,1.0,last,selected);
- if ( head==NULL ) head = last;
- }
- }
- head->prev = last;
- last->next = head;
- if ( start==NULL )
- start = head;
- else
- (*end)->linked = head;
- *end = last;
- Validate(start, NULL);
-return( start );
-}
-
-Monotonic *SSsToMContours(SplineSet *spl, enum overlap_type ot) {
- Monotonic *head=NULL, *last = NULL;
-
- while ( spl!=NULL ) {
- if ( spl->first->prev!=NULL )
- head = SSToMContour(spl,head,&last,ot);
- spl = spl->next;
- }
-return( head );
-}
-
-/* An IEEE double has 52 bits of precision. So one unit of rounding error will be */
-/* the number divided by 2^51 */
-# define BR_RE_Factor (1024.0*1024.0*1024.0*1024.0*1024.0*2.0)
-/* But that's not going to work near 0, so, since the t values we care about */
-/* are [0,1], let's use 1.0/D_RE_Factor */
-
-#ifdef FF_OVERLAP_VERBOSE
-#define FF_DUMP_MONOTONIC_IF_VERBOSE(m) DumpMonotonic(m);
-#else
-#define FF_DUMP_MONOTONIC_IF_VERBOSE(m)
-#endif
-
-static int mcmp(const void *_p1, const void *_p2) {
- const Monotonic * const *mpt1 = _p1, * const *mpt2 = _p2;
- if ( (*mpt1)->other>(*mpt2)->other )
-return( 1 );
- else if ( (*mpt1)->other<(*mpt2)->other )
-return( -1 );
-
-return( 0 );
-}
-
-int CheckMonotonicClosed(struct monotonic *ms) {
- struct monotonic * current;
- if (ms == NULL) return 0;
- current = ms->next;
- while (current != ms && current != NULL) {
- current = current->next;
- }
- if (current == NULL) return 0;
- return 1;
-}
-
-int MonotonicFindAt(Monotonic *ms,int which, extended test, Monotonic **space ) {
- /* Find all monotonic sections which intersect the line (x,y)[which] == test */
- /* find the value of the other coord on that line */
- /* Order them (by the other coord) */
- /* then run along that line figuring out which monotonics are needed */
- extended t;
- Monotonic *m, *mm;
- int i, j, k, cnt;
- int nw = !which;
-
- for ( m=ms, i=0; m!=NULL; m=m->linked ) {
- if (CheckMonotonicClosed(m) == 0) continue; // Open monotonics break things.
- if (( which==0 && test >= m->b.minx && test <= m->b.maxx ) ||
- ( which==1 && test >= m->b.miny && test <= m->b.maxy )) {
- /* Lines parallel to the direction we are testing just get in the */
- /* way and don't add any useful info */
- if ( m->s->knownlinear &&
- (( which==1 && m->s->from->me.y==m->s->to->me.y ) ||
- (which==0 && m->s->from->me.x==m->s->to->me.x)))
- continue;
- t = IterateSplineSolveFixup(&m->s->splines[which],m->tstart,m->tend,test);
- if ( t==-1 ) {
- if ( which==0 ) {
- if (( test-m->b.minx > m->b.maxx-test && m->xup ) ||
- ( test-m->b.minx < m->b.maxx-test && !m->xup ))
- t = m->tstart;
- else
- t = m->tend;
- } else {
- if (( test-m->b.miny > m->b.maxy-test && m->yup ) ||
- ( test-m->b.miny < m->b.maxy-test && !m->yup ))
- t = m->tstart;
- else
- t = m->tend;
- }
- }
- m->t = t;
- if ( t==m->tend ) t -= (m->tend-m->tstart)/100;
- else if ( t==m->tstart ) t += (m->tend-m->tstart)/100;
- m->other = ((m->s->splines[nw].a*t+m->s->splines[nw].b)*t+
- m->s->splines[nw].c)*t+m->s->splines[nw].d;
- space[i++] = m;
- }
- }
- cnt = i;
-
- /* Things get a little tricky at end-points */
- for ( i=0; i<cnt; ++i ) {
- m = space[i];
- if ( m->t==m->tend ) {
- /* Ignore horizontal/vertical lines (as appropriate) */
- for ( mm=m->next; mm!=m && mm !=NULL; mm=mm->next ) {
- if ( !mm->s->knownlinear )
- break;
- if (( which==1 && mm->s->from->me.y!=m->s->to->me.y ) ||
- (which==0 && mm->s->from->me.x!=m->s->to->me.x))
- break;
- }
- } else if ( m->t==m->tstart ) {
- for ( mm=m->prev; mm!=m && mm !=NULL; mm=mm->prev ) {
- if ( !mm->s->knownlinear )
- break;
- if (( which==1 && mm->s->from->me.y!=m->s->to->me.y ) ||
- (which==0 && mm->s->from->me.x!=m->s->to->me.x))
- break;
- }
- } else
- break;
- /* If the next monotonic continues in the same direction, and we found*/
- /* it too, then don't count both. They represent the same intersect */
- /* If they are in oposite directions then they cancel each other out */
- /* and that is correct */
- if ( mm!=m && /* Should always be true */
- (&mm->xup)[which]==(&m->xup)[which] ) {
- for ( j=cnt-1; j>=0; --j )
- if ( space[j]==mm )
- break;
- if ( j!=-1 ) {
- /* remove mm */
- for ( k=j+1; k<cnt; ++k )
- space[k-1] = space[k];
- --cnt;
- if ( i>j ) --i;
- }
- }
- }
-
- space[cnt] = NULL; space[cnt+1] = NULL;
- qsort(space,cnt,sizeof(Monotonic *),mcmp);
-return(cnt);
-}
-
-void FreeMonotonics(Monotonic *m) {
- Monotonic *next;
-
- while ( m!=NULL ) {
- next = m->linked;
- chunkfree(m,sizeof(*m));
- m = next;
- }
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/splinerefigure.c b/dviware/dvisvgm/libs/ff-woff/fontforge/splinerefigure.c
deleted file mode 100644
index 917b94ebd5..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/splinerefigure.c
+++ /dev/null
@@ -1,107 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include <math.h>
-
-#ifdef HAVE_IEEEFP_H
-# include <ieeefp.h> /* Solaris defines isnan in ieeefp rather than math.h */
-#endif
-
-/* The slight errors introduced by the optimizer turn out to have nasty */
-/* side effects. An error on the order of 7e-8 in splines[1].b caused */
-/* the rasterizer to have kaniptions */
-void SplineRefigure3(Spline *spline) {
- SplinePoint *from = spline->from, *to = spline->to;
- Spline1D *xsp = &spline->splines[0], *ysp = &spline->splines[1];
- Spline old;
-
- spline->isquadratic = false;
- if ( spline->acceptableextrema )
- old = *spline;
- xsp->d = from->me.x; ysp->d = from->me.y;
- int nonextcp_effective = 0;
- int noprevcp_effective = 0;
- if ( from->nonextcp ) { from->nextcp = from->me; nonextcp_effective = true; }
- else if ( from->nextcp.x==from->me.x && from->nextcp.y == from->me.y ) { nonextcp_effective = true; }
- if ( to->noprevcp ) { to->prevcp = to->me; noprevcp_effective = true; }
- else if ( to->prevcp.x==to->me.x && to->prevcp.y == to->me.y ) { noprevcp_effective = true; }
- if ( nonextcp_effective && noprevcp_effective ) {
- spline->islinear = true;
- xsp->c = to->me.x-from->me.x;
- ysp->c = to->me.y-from->me.y;
- xsp->a = xsp->b = 0;
- ysp->a = ysp->b = 0;
- } else {
- /* from p. 393 (Operator Details, curveto) PostScript Lang. Ref. Man. (Red book) */
- xsp->c = 3*(from->nextcp.x-from->me.x);
- ysp->c = 3*(from->nextcp.y-from->me.y);
- xsp->b = 3*(to->prevcp.x-from->nextcp.x)-xsp->c;
- ysp->b = 3*(to->prevcp.y-from->nextcp.y)-ysp->c;
- xsp->a = to->me.x-from->me.x-xsp->c-xsp->b;
- ysp->a = to->me.y-from->me.y-ysp->c-ysp->b;
- if ( RealNear(xsp->c,0)) xsp->c=0;
- if ( RealNear(ysp->c,0)) ysp->c=0;
- if ( RealNear(xsp->b,0)) xsp->b=0;
- if ( RealNear(ysp->b,0)) ysp->b=0;
- if ( RealNear(xsp->a,0)) xsp->a=0;
- if ( RealNear(ysp->a,0)) ysp->a=0;
- if ( xsp->a!=0 && ( Within16RoundingErrors(xsp->a+from->me.x,from->me.x) ||
- Within16RoundingErrors(xsp->a+to->me.x,to->me.x)))
- xsp->a = 0;
- if ( ysp->a!=0 && ( Within16RoundingErrors(ysp->a+from->me.y,from->me.y) ||
- Within16RoundingErrors(ysp->a+to->me.y,to->me.y)))
- ysp->a = 0;
- SplineIsLinear(spline);
- spline->islinear = false;
- if ( ysp->a==0 && xsp->a==0 ) {
- if ( ysp->b==0 && xsp->b==0 )
- spline->islinear = true; /* This seems extremely unlikely... */
- else
- spline->isquadratic = true; /* Only likely if we read in a TTF */
- }
- }
- if ( !isfinite(ysp->a) || !isfinite(xsp->a) || !isfinite(ysp->c) || !isfinite(xsp->c) || !isfinite(ysp->d) || !isfinite(xsp->d))
- IError("NaN value in spline creation");
- LinearApproxFree(spline->approx);
- spline->approx = NULL;
- spline->knowncurved = false;
- spline->knownlinear = spline->islinear;
- SplineIsLinear(spline);
- spline->order2 = false;
-
- if ( spline->acceptableextrema ) {
- /* I don't check "d", because changes to that reflect simple */
- /* translations which will not affect the shape of the spline */
- if ( !RealNear(old.splines[0].a,spline->splines[0].a) ||
- !RealNear(old.splines[0].b,spline->splines[0].b) ||
- !RealNear(old.splines[0].c,spline->splines[0].c) ||
- !RealNear(old.splines[1].a,spline->splines[1].a) ||
- !RealNear(old.splines[1].b,spline->splines[1].b) ||
- !RealNear(old.splines[1].c,spline->splines[1].c) )
- spline->acceptableextrema = false;
- }
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/splinesave.c b/dviware/dvisvgm/libs/ff-woff/fontforge/splinesave.c
deleted file mode 100644
index 38ef12534c..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/splinesave.c
+++ /dev/null
@@ -1,2065 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include <math.h>
-#include "psfont.h"
-
-float GenerateHintWidthEqualityTolerance = 0.0;
-int autohint_before_generate = 1;
-
-/* Let's talk about references. */
-/* If we are doing Type1 output, then the obvious way of doing them is seac */
-/* but that's so limitting. It only works for exactly two characters both */
-/* of which are in Adobe's Standard Enc. Only translations allowed. Only */
-/* one reference may be translated and the width of the char must match */
-/* that of the non-translated reference */
-/* The first extension we can make is to allow a single character reference */
-/* by making the other character be a space */
-/* But if we want to do more than that we must use subrs. If we have two */
-/* refs in subrs then we can do translations by preceding the subr calls by */
-/* appropriate rmovetos. Actually the specs say that only one rmoveto should */
-/* precede a path, so that means we can't allow the subroutines to position */
-/* themselves, they must just assume that they are called with the current */
-/* position correct for the first point. But then we need to know where the */
-/* first point should be placed, so we allocate a BasePoint to hold that info*/
-/* and store it into the "keys" array (which the subrs don't use). Similarly */
-/* we need to know where the subr will leave us, so we actually allocate 2 */
-/* BasePoints, one containing the start point, one the end point */
-/* But that's still not good enough, hints are defined in such a way that */
-/* they are not relocateable. So our subrs can't include any hint definitions*/
-/* (or if they do then that subr can't be translated at all). So hints must */
-/* be set outside the subrs, and the subrs can't be for chars that need hint */
-/* substitution. Unless... The subr will never be relocated. */
-/* So we generate two types of reference subrs, one containing no hints, the*/
-/* other containing all the hints, stems and flexes. The first type may be */
-/* translated, the second cannot */
-/* Type2 doesn't allow any seacs */
-/* So everything must go in subrs. We have a slightly different problem here:*/
-/* hintmasks need to know exactly how many stem hints there are in the char */
-/* so we can't include any hintmask operators inside a subr (unless we */
-/* guarantee that all invocations of that subr are done with the same number */
-/* of hints in the character). This again means that no char with hint subs- */
-/* titutions may be put in a subr. UNLESS all the other references in a */
-/* refering character contain no hints */
-
-/* That's very complex. And it doesn't do a very good job. */
-/* Instead let's take all strings bounded by either moveto or hintmask operators */
-/* store these as potential subroutines. So a glyph becomes a sequence of */
-/* potential subroutine calls preceded by the glyph header (width, hint decl,*/
-/* counter declarations, etc.) and intersperced by hintmask/moveto operators */
-/* Each time we get a potential subr we hash it and see if we've used that */
-/* string before. If we have then we merge the two. Otherwise it's a new one.*/
-/* Then at the end we see what strings get used often enough to go into subrs */
-/* we create the subrs array from that. */
-/* Then each glyph. We insert the preamble. We check of the potential subroutine */
-/* became a real subroutine. If so we call it, else we insert the data inline*/
-/* Do the same for the next hintmask/moveto and potential subroutine... */
-
-/* Then, on top of that I tried generating some full glyph subroutines, and */
-/* to my surprise, it just made things worse. */
-
-struct potentialsubrs {
- uint8 *data; /* the charstring of the subr */
- int len; /* the length of the charstring */
- int idx; /* initially index into psubrs array */
- /* then index into subrs array or -1 if none */
- int cnt; /* the usage count */
- int fd; /* Which sub font is it in */
- /* -1 => used in more than one */
- int next;
- int full_glyph_index; /* Into the glyphbits array */
- /* for full references */
- BasePoint *startstop; /* Again for full references */
-};
-
-struct bits {
- uint8 *data;
- int dlen;
- int psub_index;
-};
-
-struct glyphbits {
- SplineChar *sc;
- int fd; /* Which subfont is it in */
- int bcnt;
- struct bits *bits;
- uint8 wasseac;
-};
-
-#define HSH_SIZE 511
-/* In type2 charstrings we divide every character into bits where a bit is */
-/* bounded by a hintmask/moveto. Each of these is a potential subroutine and */
-/* is stored here */
-typedef struct glyphinfo {
- struct potentialsubrs *psubrs;
- int pcnt, pmax;
- int hashed[HSH_SIZE];
- struct glyphbits *gb, *active;
- SplineFont *sf;
- int layer;
- int glyphcnt;
- int subfontcnt;
- int bcnt, bmax;
- struct bits *bits; /* For current glyph */
- const int *bygid;
- int justbroken;
- int instance_count;
-} GlyphInfo;
-
-struct mhlist {
- uint8 mask[HntMax/8];
- int subr;
- struct mhlist *next;
-};
-
-struct hintdb {
- uint8 mask[HntMax/8];
- int cnt; /* number of hints */
- struct mhlist *sublist;
- struct pschars *subrs;
- /*SplineChar *sc;*/
- SplineChar **scs;
- int instance_count;
- unsigned int iscjk: 1; /* If cjk then don't do stem3 hints */
- /* Will be done with counters instead */
- /* actually, most of the time we can't use stem3s, only if those three*/
- /* stems are always active and there are no other stems !(h/v)hasoverlap*/
- unsigned int noconflicts: 1;
- unsigned int startset: 1;
- unsigned int skiphm: 1; /* Set when coming back to the start point of a contour. hintmask should be set the first time, not the second */
- unsigned int donefirsthm: 1;
- int cursub; /* Current subr number */
- DBasePoint current;
- GlyphInfo *gi;
-};
-
-static void GIContentsFree(GlyphInfo *gi,SplineChar *dummynotdef) {
- int i,j;
-
- if ( gi->glyphcnt>0 && gi->gb[0].sc == dummynotdef ) {
- if ( dummynotdef->layers!=NULL ) {
- SplinePointListsFree(dummynotdef->layers[gi->layer].splines);
- dummynotdef->layers[gi->layer].splines = NULL;
- }
- StemInfosFree(dummynotdef->hstem);
- StemInfosFree(dummynotdef->vstem);
- dummynotdef->vstem = dummynotdef->hstem = NULL;
- free(dummynotdef->layers);
- dummynotdef->layers = NULL;
- }
-
- for ( i=0; i<gi->pcnt; ++i ) {
- free(gi->psubrs[i].data);
- free(gi->psubrs[i].startstop);
- gi->psubrs[i].data = NULL;
- gi->psubrs[i].startstop = NULL;
- }
- for ( i=0; i<gi->glyphcnt; ++i ) {
- for ( j=0; j<gi->gb[i].bcnt; ++j )
- free(gi->gb[i].bits[j].data);
- free(gi->gb[i].bits);
- gi->gb[i].bits = NULL;
- gi->gb[i].bcnt = 0;
- }
-
- gi->pcnt = 0;
- gi->bcnt = 0;
- gi->justbroken = 0;
-}
-
-static void GIFree(GlyphInfo *gi,SplineChar *dummynotdef) {
-
- GIContentsFree(gi,dummynotdef);
-
- free(gi->gb);
- free(gi->psubrs);
- free(gi->bits);
-}
-
-static void StartNextSubroutine(GrowBuf *gb,struct hintdb *hdb) {
- GlyphInfo *gi;
-
- if ( hdb==NULL )
-return;
- gi = hdb->gi;
- if ( gi==NULL )
-return;
- /* Store everything in the grow buf into the data/dlen of the next bit */
- if ( gi->bcnt==-1 ) gi->bcnt = 0;
- if ( gi->bcnt>=gi->bmax )
- gi->bits = realloc(gi->bits,(gi->bmax+=20)*sizeof(struct bits));
- gi->bits[gi->bcnt].dlen = gb->pt-gb->base;
- gi->bits[gi->bcnt].data = malloc(gi->bits[gi->bcnt].dlen);
- gi->bits[gi->bcnt].psub_index = -1;
- memcpy(gi->bits[gi->bcnt].data,gb->base,gi->bits[gi->bcnt].dlen);
- gb->pt = gb->base;
- gi->justbroken = false;
-}
-
-static int hashfunc(uint8 *data, int len) {
- uint8 *end = data+len;
- unsigned int hash = 0, r;
-
- while ( data<end ) {
- r = (hash>>30)&3;
- hash <<= 2;
- hash = (hash|r)&0xffffffff;
- hash ^= *data++;
- }
-return( hash%HSH_SIZE );
-}
-
-static void BreakSubroutine(GrowBuf *gb,struct hintdb *hdb) {
- GlyphInfo *gi;
- struct potentialsubrs *ps;
- int hash;
- int pi;
-
- if ( hdb==NULL )
-return;
- gi = hdb->gi;
- if ( gi==NULL )
-return;
- /* The stuff before the first moveto in a glyph (the header that sets */
- /* the width, sets up the hints, counters, etc.) can't go into a subr */
- if ( gi->bcnt==-1 ) {
- gi->bcnt=0;
- gi->justbroken = true;
-return;
- } else if ( gi->justbroken )
-return;
- /* Otherwise stuff everything in the growbuffer into a subr */
- hash = hashfunc(gb->base,gb->pt-gb->base);
- ps = NULL;
- for ( pi=gi->hashed[hash]; pi!=-1; pi=gi->psubrs[pi].next ) {
- ps = &gi->psubrs[pi];
- if ( ps->len==gb->pt-gb->base && memcmp(ps->data,gb->base,gb->pt-gb->base)==0 )
- break;
- }
- if ( pi==-1 ) {
- if ( gi->pcnt>=gi->pmax )
- gi->psubrs = realloc(gi->psubrs,(gi->pmax+=gi->glyphcnt)*sizeof(struct potentialsubrs));
- ps = &gi->psubrs[gi->pcnt];
- memset(ps,0,sizeof(*ps)); /* set cnt to 0 */
- ps->idx = gi->pcnt++;
- ps->len = gb->pt-gb->base;
- ps->data = malloc(ps->len);
- memcpy(ps->data,gb->base,ps->len);
- ps->next = gi->hashed[hash];
- gi->hashed[hash] = ps->idx;
- ps->fd = gi->active->fd;
- ps->full_glyph_index = -1;
- }
- if ( ps->fd!=gi->active->fd )
- ps->fd = -1; /* used in multiple cid sub-fonts */
- gi->bits[gi->bcnt].psub_index = ps->idx;
- ++ps->cnt;
- gb->pt = gb->base;
- ++gi->bcnt;
- gi->justbroken = true;
-}
-
-static void MoveSubrsToChar(GlyphInfo *gi) {
- struct glyphbits *active;
-
- if ( gi==NULL )
-return;
- active = gi->active;
- active->bcnt = gi->bcnt;
- active->bits = malloc(active->bcnt*sizeof(struct bits));
- memcpy(active->bits,gi->bits,active->bcnt*sizeof(struct bits));
- gi->bcnt = 0;
-}
-
-static int NumberHints(SplineChar *scs[MmMax], int instance_count) {
- int i,j, cnt=-1;
- StemInfo *s;
-
- for ( j=0; j<instance_count; ++j ) {
- for ( s=scs[j]->hstem, i=0; s!=NULL; s=s->next ) {
- if ( i<HntMax )
- s->hintnumber = i++;
- else
- s->hintnumber = -1;
- }
- for ( s=scs[j]->vstem; s!=NULL; s=s->next ) {
- if ( i<HntMax )
- s->hintnumber = i++;
- else
- s->hintnumber = -1;
- }
- if ( cnt==-1 )
- cnt = i;
- else if ( cnt!=i )
- IError("MM font with different hint counts");
- }
-return( cnt );
-}
-
-static void MarkTranslationRefs(SplineFont *sf,int layer) {
- int i;
- SplineChar *sc;
- RefChar *r;
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( (sc = sf->glyphs[i])!=NULL ) {
- for ( r = sc->layers[layer].refs; r!=NULL; r=r->next )
- r->justtranslated = (r->transform[0]==1 && r->transform[3]==1 &&
- r->transform[1]==0 && r->transform[2]==0);
- }
-}
-
-/* ************************************************************************** */
-/* ********************** Type1 PostScript CharStrings ********************** */
-/* ************************************************************************** */
-
-
-static void AddNumber(GrowBuf *gb, real pos, int round) {
- int dodiv = 0;
- int val;
- unsigned char *str;
-
- if ( gb->pt+8>=gb->end )
- GrowBuffer(gb);
-
- if ( !round && pos!=floor(pos) ) {
- {
- if ( rint(pos*64)/64 == pos ) {
- pos *= 64;
- dodiv = 64;
- } else {
- pos *= 1024;
- dodiv = 1024;
- }
- }
- }
- pos = rint(pos);
- if ( dodiv>0 && floor(pos)/dodiv == floor(pos/dodiv) ) {
- pos = rint(pos/dodiv);
- dodiv = 0;
- }
- val = pos;
- str = gb->pt;
-
- if ( pos>=-107 && pos<=107 )
- *str++ = val+139;
- else if ( pos>=108 && pos<=1131 ) {
- val -= 108;
- *str++ = (val>>8)+247;
- *str++ = val&0xff;
- } else if ( pos>=-1131 && pos<=-108 ) {
- val = -val;
- val -= 108;
- *str++ = (val>>8)+251;
- *str++ = val&0xff;
- } else {
- *str++ = '\377';
- *str++ = (val>>24)&0xff;
- *str++ = (val>>16)&0xff;
- *str++ = (val>>8)&0xff;
- *str++ = val&0xff;
- }
- if ( dodiv ) {
- if ( dodiv<107 )
- *str++ = dodiv+139;
- else {
- dodiv -= 108;
- *str++ = (dodiv>>8)+247;
- *str++ = dodiv&0xff;
- }
- *str++ = 12; /* div (byte1) */
- *str++ = 12; /* div (byte2) */
- }
- gb->pt = str;
-}
-
-/* When doing a multiple master font we have multiple instances of the same data */
-/* which must all be added, and then a call made to the appropriate blend routine */
-/* This is complicated because all the data may not fit on the stack so we */
-/* may need to make multiple calls */
-static void AddData(GrowBuf *gb, bigreal data[MmMax][6], int instances, int num_coords,
- int round) {
- int allsame = true, alls[6];
- int i,j, chunk,min,max,subr;
-
- for ( j=0; j<num_coords; ++j ) {
- alls[j] = true;
- for ( i=1; i<instances; ++i ) {
- if ( data[i][j]!=data[0][j] ) {
- alls[j] = false;
- allsame = false;
- break;
- }
- }
- }
-
- if ( allsame ) { /* No need for blending */
- /* Probably a normal font, but possible in an mm */
- for ( j=0; j<num_coords; ++j )
- AddNumber(gb,data[0][j],round);
-return;
- }
-
- chunk = 22/instances;
- if ( chunk == 5 ) chunk = 4; /* No subroutine for 5 items */
- min = 0;
- while ( min<num_coords ) {
- while ( min<num_coords && alls[min] ) {
- AddNumber(gb,data[0][min],round);
- ++min;
- }
- max = min+chunk;
- if ( max>num_coords ) max = num_coords;
- while ( max-1>min && alls[max-1] )
- --max;
- if ( max-min==5 ) max=min+4;
- if ( min<max ) {
- for ( j=min; j<max; ++j )
- AddNumber(gb,data[0][j],round);
- for ( j=min; j<max; ++j )
- for ( i=1; i<instances; ++i )
- AddNumber(gb,data[i][j]-data[0][j],round);
- subr = (j-min) + 4;
- if ( j-min==6 ) subr = 9;
- AddNumber(gb,subr,round);
- if ( gb->pt+1>=gb->end )
- GrowBuffer(gb);
- *gb->pt++ = 10; /* callsubr */
- min = j;
- }
- }
-}
-
-int CvtPsStem3(GrowBuf *gb, SplineChar *scs[MmMax], int instance_count,
- int ishstem, int round) {
- StemInfo *h1, *h2, *h3;
- StemInfo _h1, _h2, _h3;
- bigreal data[MmMax][6];
- int i;
- real off;
-
- for ( i=0; i<instance_count; ++i ) {
- if ( (ishstem && scs[i]->hconflicts) || (!ishstem && scs[i]->vconflicts))
-return( false );
- h1 = ishstem ? scs[i]->hstem : scs[i]->vstem;
- if ( h1==NULL || (h2 = h1->next)==NULL || (h3=h2->next)==NULL )
-return( false );
- if ( h3->next!=NULL )
-return( false );
- off = ishstem ? 0 : scs[i]->lsidebearing;
- if ( h1->width<0 ) {
- _h1 = *h1;
- _h1.start += _h1.width;
- _h1.width = -_h1.width;
- h1 = &_h1;
- }
- if ( h2->width<0 ) {
- _h2 = *h2;
- _h2.start += _h2.width;
- _h2.width = -_h2.width;
- h2 = &_h2;
- }
- if ( h3->width<0 ) {
- _h3 = *h3;
- _h3.start += _h3.width;
- _h3.width = -_h3.width;
- h3 = &_h3;
- }
-
- if ( h1->start>h2->start ) {
- StemInfo *ht = h1; h1 = h2; h2 = ht;
- }
- if ( h1->start>h3->start ) {
- StemInfo *ht = h1; h1 = h3; h3 = ht;
- }
- if ( h2->start>h3->start ) {
- StemInfo *ht = h2; h2 = h3; h3 = ht;
- }
- if ( h1->width != h3->width )
-return( false );
- if ( (h2->start+h2->width/2) - (h1->start+h1->width/2) !=
- (h3->start+h3->width/2) - (h2->start+h2->width/2) )
-return( false );
- data[i][0] = h1->start-off;
- data[i][1] = h1->width;
- data[i][2] = h2->start-off;
- data[i][3] = h2->width;
- data[i][4] = h3->start-off;
- data[i][5] = h3->width;
- }
- if ( gb==NULL )
-return( true );
- AddData(gb,data,instance_count,6,round);
- if ( gb->pt+3>=gb->end )
- GrowBuffer(gb);
- *(gb->pt)++ = 12;
- *(gb->pt)++ = ishstem?2:1; /* h/v stem3 */
-return( true );
-}
-
-static int _SCNeedsSubsPts(SplineChar *sc,int layer) {
- RefChar *ref;
-
- if ( sc->hstem==NULL && sc->vstem==NULL )
-return( false );
-
- if ( sc->layers[layer].splines!=NULL )
-return( sc->layers[layer].splines->first->hintmask==NULL );
-
- for ( ref = sc->layers[layer].refs; ref!=NULL; ref=ref->next )
- if ( ref->layers[0].splines!=NULL )
-return( ref->layers[0].splines->first->hintmask==NULL );
-
-return( false ); /* It's empty. that's easy. */
-}
-
-static int SCNeedsSubsPts(SplineChar *sc,enum fontformat format,int layer) {
- if ( (format!=ff_mma && format!=ff_mmb) || sc->parent->mm==NULL ) {
- if ( !sc->hconflicts && !sc->vconflicts )
-return( false ); /* No conflicts, no swap-over points needed */
-return( _SCNeedsSubsPts(sc,layer));
- } else {
- MMSet *mm = sc->parent->mm;
- int i;
- for ( i=0; i<mm->instance_count; ++i ) if ( sc->orig_pos<mm->instances[i]->glyphcnt ) {
- if ( _SCNeedsSubsPts(mm->instances[i]->glyphs[sc->orig_pos],layer) )
-return( true );
- }
-return( false );
- }
-}
-
-#ifdef FONTFORGE_CONFIG_PS_REFS_GET_SUBRS
-static int AlwaysSeacable(SplineChar *sc,int flags) {
- struct splinecharlist *d;
- RefChar *r;
-
- if ( sc->parent->cidmaster!=NULL ) /* Can't use seac in CID fonts, no encoding */
-return( false );
- if ( flags&ps_flag_noseac )
-return( false );
-
- for ( d=sc->dependents; d!=NULL; d = d->next ) {
- if ( d->sc->layers[layer].splines!=NULL ) /* I won't deal with things with both splines and refs. */
- continue; /* skip it */
- for ( r=d->sc->layers[layer].refs; r!=NULL; r=r->next ) {
- if ( !r->justtranslated )
- break; /* Can't deal with it either way */
- }
- if ( r!=NULL ) /* Bad transform matrix */
- continue; /* Can't handle either way, skip */
-
- for ( r=d->sc->layers[layer].refs; r!=NULL; r=r->next ) {
- if ( r->adobe_enc==-1 )
-return( false ); /* not seacable, but could go in subr */
- }
- r = d->sc->layers[layer].refs;
- if ( r->next!=NULL && r->next->next!=NULL )
-return( false ); /* seac only takes 2 glyphs */
- if ( r->next!=NULL &&
- ((r->transform[4]!=0 || r->transform[5]!=0 || r->sc->width!=d->sc->width) &&
- (r->next->transform[4]!=0 || r->next->transform[5]!=0 || r->next->sc->width!=d->sc->width)))
-return( false ); /* seac only allows one to be translated, and the untranslated one must have the right width */
- if ( r->next==NULL &&
- (r->transform[4]!=0 || r->transform[5]!=0 || r->sc->width!=d->sc->width))
-return( false );
- }
- /* Either always can be represented by seac, or sometimes by neither */
-return( true );
-}
-
-/* normally we can't put a character with hint conflicts into a subroutine */
-/* (because when we would have to invoke the hints within the subr and */
-/* hints are expressed as absolute positions, so if the char has been */
-/* translated we can't do the hints right). BUT if the character is not */
-/* translated, and if it has the right lbearing, then the hints in the */
-/* ref will match those in the character and we can use a subroutine for */
-/* both */
-/* If at least one ref fits our requirements then return true */
-/* The same reasoning applies to flex hints. There are absolute expressions */
-/* in them too. */
-static int SpecialCaseConflicts(SplineChar *sc) {
- struct splinecharlist *d;
- RefChar *r;
- DBounds sb, db;
-
- SplineCharFindBounds(sc,&sb);
- for ( d=sc->dependents; d!=NULL; d = d->next ) {
- SplineCharFindBounds(d->sc,&db);
- if ( db.minx != sb.minx )
- continue;
- for ( r=d->sc->layers[layer].refs; r!=NULL; r=r->next )
- if ( r->sc == sc && r->justtranslated &&
- r->transform[4]==0 && r->transform[5]==0 )
-return( true );
- }
-return( false );
-}
-
-static BasePoint *FigureStartStop(SplineChar *sc, GlyphInfo *gi ) {
- int m, didfirst;
- SplineChar *msc;
- SplineSet *spl;
- RefChar *r;
- BasePoint *startstop;
-
- /* We need to know the location of the first point on the */
- /* first path (need to rmoveto it, and the location of the */
- /* last point on the last path (will need to move from it */
- /* for the next component) */
-
- startstop = calloc(2*gi->instance_count,sizeof(BasePoint));
- for ( m=0; m<gi->instance_count; ++m ) {
- if ( gi->instance_count==1 || sc->parent->mm==NULL )
- msc = sc;
- else
- msc = sc->parent->mm->instances[m]->glyphs[sc->orig_pos];
- didfirst = false;
- spl = msc->layers[layer].splines;
- if ( spl!=NULL ) {
- startstop[0] = spl->first->me;
- didfirst = true;
- while ( spl!=NULL ) {
- /* Closepath does NOT set the current point */
- /* Remember we reverse PostScript */
- if ( spl->last==spl->first && spl->first->next!=NULL &&
- spl->first->next->knownlinear )
- startstop[1] = spl->first->next->to->me;
- else
- startstop[1] = spl->last->me;
- spl = spl->next;
- }
- }
- for ( r=msc->layers[layer].refs; r!=NULL; r=r->next ) {
- spl = r->layers[0].splines;
- if ( spl!=NULL ) {
- if ( !didfirst )
- startstop[0] = spl->first->me;
- didfirst = true;
- }
- while ( spl!=NULL ) {
- /* Closepath does NOT set the current point */
- /* Remember we reverse PostScript */
- if ( spl->last==spl->first && spl->first->next!=NULL &&
- spl->first->next->knownlinear )
- startstop[1] = spl->first->next->to->me;
- else
- startstop[1] = spl->last->me;
- spl = spl->next;
- }
- }
- }
-return( startstop );
-}
-#endif /* FONTFORGE_CONFIG_PS_REFS_GET_SUBRS */
-
-int SFOneWidth(SplineFont *sf) {
- int width, i;
-
- width = -2;
- for ( i=0; i<sf->glyphcnt; ++i ) if ( SCWorthOutputting(sf->glyphs[i]) &&
- (strcmp(sf->glyphs[i]->name,".notdef")!=0 || sf->glyphs[i]->layers[ly_fore].splines!=NULL)) {
- /* Only trust the width of notdef if it's got some content */
- /* (at least as far as fixed pitch determination goes) */
- if ( width==-2 ) width = sf->glyphs[i]->width;
- else if ( width!=sf->glyphs[i]->width ) {
- width = -1;
- break;
- }
- }
-return(width);
-}
-
-int CIDOneWidth(SplineFont *_sf) {
- int width, i;
- int k;
- SplineFont *sf;
-
- if ( _sf->cidmaster!=NULL ) _sf = _sf->cidmaster;
- width = -2;
- k=0;
- do {
- sf = _sf->subfonts==NULL? _sf : _sf->subfonts[k];
- for ( i=0; i<sf->glyphcnt; ++i ) if ( SCWorthOutputting(sf->glyphs[i]) &&
- strcmp(sf->glyphs[i]->name,".null")!=0 &&
- strcmp(sf->glyphs[i]->name,"nonmarkingreturn")!=0 &&
- (strcmp(sf->glyphs[i]->name,".notdef")!=0 || sf->glyphs[i]->layers[ly_fore].splines!=NULL)) {
- /* Only trust the width of notdef if it's got some content */
- /* (at least as far as fixed pitch determination goes) */
- if ( width==-2 ) width = sf->glyphs[i]->width;
- else if ( width!=sf->glyphs[i]->width ) {
- width = -1;
- break;
- }
- }
- ++k;
- } while ( k<_sf->subfontcnt );
-return(width);
-}
-
-/* ************************************************************************** */
-/* ********************** Type2 PostScript CharStrings ********************** */
-/* ************************************************************************** */
-
-static real myround2(real pos, int round) {
- if ( round )
-return( rint(pos));
-
-return( rint(65536*pos)/65536 );
-}
-
-static void AddNumber2(GrowBuf *gb, real pos, int round) {
- int val, factor;
- unsigned char *str;
-
- if ( gb->pt+5>=gb->end )
- GrowBuffer(gb);
-
- pos = rint(65536*pos)/65536;
- if ( round )
- pos = rint(pos);
-
- str = gb->pt;
- if ( pos>32767.99 || pos<-32768 ) {
- /* same logic for big ints and reals */
- if ( pos>0x3fffffff || pos<-0x40000000 ) {
- LogError( _("Number out of range: %g in type2 output (must be [-65536,65535])\n"),
- pos );
- if ( pos>0 ) pos = 0x3fffffff; else pos = -0x40000000;
- }
- for ( factor=2; factor<32768; factor<<=2 )
- if ( pos/factor<32767.99 && pos/factor>-32768 )
- break;
- AddNumber2(gb,pos/factor,false);
- AddNumber2(gb,factor,false);
- if ( gb->pt+2>=gb->end )
- GrowBuffer(gb);
- *(gb->pt++) = 0x0c; /* Multiply operator */
- *(gb->pt++) = 0x18;
- } else if ( pos!=floor(pos )) {
- val = pos*65536;
- *str++ = '\377';
- *str++ = (val>>24)&0xff;
- *str++ = (val>>16)&0xff;
- *str++ = (val>>8)&0xff;
- *str++ = val&0xff;
- } else {
- val = rint(pos);
- if ( pos>=-107 && pos<=107 )
- *str++ = val+139;
- else if ( pos>=108 && pos<=1131 ) {
- val -= 108;
- *str++ = (val>>8)+247;
- *str++ = val&0xff;
- } else if ( pos>=-1131 && pos<=-108 ) {
- val = -val;
- val -= 108;
- *str++ = (val>>8)+251;
- *str++ = val&0xff;
- } else {
- *str++ = 28;
- *str++ = (val>>8)&0xff;
- *str++ = val&0xff;
- }
- }
- gb->pt = str;
-}
-
-static void AddMask2(GrowBuf *gb,uint8 mask[12],int cnt, int oper) {
- int i;
-
- if ( gb->pt+1+((cnt+7)>>3)>=gb->end )
- GrowBuffer(gb);
- *gb->pt++ = oper; /* hintmask,cntrmask */
- for ( i=0; i< ((cnt+7)>>3); ++i )
- *gb->pt++ = mask[i];
-}
-
-static void CounterHints2(GrowBuf *gb, SplineChar *sc, int hcnt) {
- int i;
-
- for ( i=0; i<sc->countermask_cnt; ++i )
- AddMask2(gb,sc->countermasks[i],hcnt,20); /* cntrmask */
-}
-
-static int HintSetup2(GrowBuf *gb,struct hintdb *hdb, SplinePoint *to, int break_subr ) {
-
- /* We might get a point with a hintmask in a glyph with no conflicts */
- /* (ie. the initial point when we return to it at the end of the splineset*/
- /* in that case hdb->cnt will be 0 and we should ignore it */
- /* components in subroutines depend on not having any hintmasks */
- if ( to->hintmask==NULL || hdb->cnt==0 || hdb->noconflicts || hdb->skiphm )
-return( false );
-
- if ( memcmp(hdb->mask,*to->hintmask,(hdb->cnt+7)/8)==0 )
-return( false );
-
- if ( break_subr )
- BreakSubroutine(gb,hdb);
-
- AddMask2(gb,*to->hintmask,hdb->cnt,19); /* hintmask */
- memcpy(hdb->mask,*to->hintmask,sizeof(HintMask));
- hdb->donefirsthm = true;
- if ( break_subr )
- StartNextSubroutine(gb,hdb);
-return( true );
-}
-
-static void moveto2(GrowBuf *gb,struct hintdb *hdb,SplinePoint *to, int round) {
- BasePoint temp, *tom;
-
- if ( gb->pt+18 >= gb->end )
- GrowBuffer(gb);
-
- BreakSubroutine(gb,hdb);
- HintSetup2(gb,hdb,to,false);
- tom = &to->me;
- if ( round ) {
- temp.x = rint(tom->x);
- temp.y = rint(tom->y);
- tom = &temp;
- }
- if ( hdb->current.x==tom->x ) {
- AddNumber2(gb,tom->y-hdb->current.y,round);
- *(gb->pt)++ = 4; /* v move to */
- } else if ( hdb->current.y==tom->y ) {
- AddNumber2(gb,tom->x-hdb->current.x,round);
- *(gb->pt)++ = 22; /* h move to */
- } else {
- AddNumber2(gb,tom->x-hdb->current.x,round);
- AddNumber2(gb,tom->y-hdb->current.y,round);
- *(gb->pt)++ = 21; /* r move to */
- }
- hdb->current.x = rint(32768*tom->x)/32768;
- hdb->current.y = rint(32768*tom->y)/32768;
- StartNextSubroutine(gb,hdb);
-}
-
-static Spline *lineto2(GrowBuf *gb,struct hintdb *hdb,Spline *spline, Spline *done, int round) {
- int cnt, hv, hvcnt;
- Spline *test, *lastgood, *lasthvgood;
- BasePoint temp1, temp2, *tom, *fromm;
- int donehm;
-
- lastgood = NULL;
- for ( test=spline, cnt=0; test->knownlinear && cnt<15; ) {
- ++cnt;
- lastgood = test;
- test = test->to->next;
- /* it will be smaller to use a closepath operator so ignore the */
- /* ultimate spline */
- if ( test==done || test==NULL || test->to->next==done )
- break;
- }
-
- HintSetup2(gb,hdb,spline->to,true);
-
- hv = -1; hvcnt=1; lasthvgood = NULL;
- if ( spline->from->me.x==spline->to->me.x )
- hv = 1; /* Vertical */
- else if ( spline->from->me.y==spline->to->me.y )
- hv = 0; /* Horizontal */
- donehm = true;
- if ( hv!=-1 ) {
- lasthvgood = spline; hvcnt = 1;
- if ( cnt!=1 ) {
- for ( test=spline->to->next; test!=NULL ; test = test->to->next ) {
- fromm = &test->from->me;
- if ( round ) {
- temp2.x = rint(fromm->x);
- temp2.y = rint(fromm->y);
- fromm = &temp2;
- }
- tom = &test->to->me;
- if ( round ) {
- temp1.x = rint(tom->x);
- temp1.y = rint(tom->y);
- tom = &temp1;
- }
- if ( hv==1 && tom->y==fromm->y )
- hv = 0;
- else if ( hv==0 && tom->x==fromm->x )
- hv = 1;
- else
- break;
- lasthvgood = test;
- ++hvcnt;
- if ( test==lastgood )
- break;
- }
- }
- donehm = true;
- if ( hvcnt==cnt || hvcnt>=2 ) {
- /* It's more efficient to do some h/v linetos */
- for ( test=spline; ; test = test->to->next ) {
- if ( !donehm && test->to->hintmask!=NULL )
- break;
- donehm = false;
- fromm = &test->from->me;
- if ( round ) {
- temp2.x = rint(fromm->x);
- temp2.y = rint(fromm->y);
- fromm = &temp2;
- }
- tom = &test->to->me;
- if ( round ) {
- temp1.x = rint(tom->x);
- temp1.y = rint(tom->y);
- tom = &temp1;
- }
- if ( fromm->x==tom->x )
- AddNumber2(gb,tom->y-fromm->y,round);
- else
- AddNumber2(gb,tom->x-fromm->x,round);
- hdb->current.x = rint(32768*tom->x)/32768;
- hdb->current.y = rint(32768*tom->y)/32768;
- if ( test==lasthvgood ) {
- test = test->to->next;
- break;
- }
- }
- if ( gb->pt+1 >= gb->end )
- GrowBuffer(gb);
- *(gb->pt)++ = spline->from->me.x==spline->to->me.x? 7 : 6;
-return( test );
- }
- }
-
- for ( test=spline; test!=NULL; test = test->to->next ) {
- if ( !donehm && test->to->hintmask!=NULL )
- break;
- donehm = false;
- fromm = &test->from->me;
- if ( round ) {
- temp2.x = rint(fromm->x);
- temp2.y = rint(fromm->y);
- fromm = &temp2;
- }
- tom = &test->to->me;
- if ( round ) {
- temp1.x = rint(tom->x);
- temp1.y = rint(tom->y);
- tom = &temp1;
- }
- AddNumber2(gb,tom->x-fromm->x,round);
- AddNumber2(gb,tom->y-fromm->y,round);
- hdb->current.x = rint(32768*tom->x)/32768;
- hdb->current.y = rint(32768*tom->y)/32768;
- if ( test==lastgood ) {
- test = test->to->next;
- break;
- }
- }
- if ( gb->pt+1 >= gb->end )
- GrowBuffer(gb);
- *(gb->pt)++ = 5; /* r line to */
-return( test );
-}
-
-static Spline *curveto2(GrowBuf *gb,struct hintdb *hdb,Spline *spline, Spline *done, int round) {
- int cnt=0, hv;
- Spline *first;
- DBasePoint start;
- int donehm;
-
- HintSetup2(gb,hdb,spline->to,true);
-
- hv = -1;
- if ( hdb->current.x==myround2(spline->from->nextcp.x,round) &&
- myround2(spline->to->prevcp.y,round)==myround2(spline->to->me.y,round) )
- hv = 1;
- else if ( hdb->current.y==myround2(spline->from->nextcp.y,round) &&
- myround2(spline->to->prevcp.x,round)==myround2(spline->to->me.x,round) )
- hv = 0;
- donehm = true;
- if ( hv!=-1 ) {
- first = spline; start = hdb->current;
- while (
- (hv==1 && hdb->current.x==myround2(spline->from->nextcp.x,round) &&
- myround2(spline->to->prevcp.y,round)==myround2(spline->to->me.y,round) ) ||
- (hv==0 && hdb->current.y==myround2(spline->from->nextcp.y,round) &&
- myround2(spline->to->prevcp.x,round)==myround2(spline->to->me.x,round) ) ) {
- if ( !donehm && spline->to->hintmask!=NULL )
- break;
- donehm = false;
- if ( hv==1 ) {
- AddNumber2(gb,myround2(spline->from->nextcp.y,round)-hdb->current.y,round);
- AddNumber2(gb,myround2(spline->to->prevcp.x,round)-myround2(spline->from->nextcp.x,round),round);
- AddNumber2(gb,myround2(spline->to->prevcp.y,round)-myround2(spline->from->nextcp.y,round),round);
- AddNumber2(gb,myround2(spline->to->me.x,round)-myround2(spline->to->prevcp.x,round),round);
- hv = 0;
- } else {
- AddNumber2(gb,myround2(spline->from->nextcp.x,round)-hdb->current.x,round);
- AddNumber2(gb,myround2(spline->to->prevcp.x,round)-myround2(spline->from->nextcp.x,round),round);
- AddNumber2(gb,myround2(spline->to->prevcp.y,round)-myround2(spline->from->nextcp.y,round),round);
- AddNumber2(gb,myround2(spline->to->me.y,round)-myround2(spline->to->prevcp.y,round),round);
- hv = 1;
- }
- hdb->current.x = myround2(spline->to->me.x,round);
- hdb->current.y = myround2(spline->to->me.y,round);
- ++cnt;
- spline = spline->to->next;
- if ( spline==done || spline==NULL || cnt>9 || spline->knownlinear )
- break;
- }
- if ( gb->pt+1 >= gb->end )
- GrowBuffer(gb);
- *(gb->pt)++ = ( start.x==myround2(first->from->nextcp.x,round) && myround2(first->to->prevcp.y,round)==myround2(first->to->me.y,round) )?
- 30:31; /* vhcurveto:hvcurveto */
-return( spline );
- }
- while ( cnt<6 ) {
- if ( !donehm && spline->to->hintmask!=NULL )
- break;
- donehm = false;
- hv = -1;
- if ( hdb->current.x==myround2(spline->from->nextcp.x,round) &&
- myround2(spline->to->prevcp.y,round)==myround2(spline->to->me.y,round) &&
- spline->to->next!=NULL &&
- myround2(spline->to->me.y,round)==myround2(spline->to->nextcp.y,round) &&
- myround2(spline->to->next->to->prevcp.x,round)==myround2(spline->to->next->to->me.x,round) )
- break;
- else if ( hdb->current.y==myround2(spline->from->nextcp.y,round) &&
- myround2(spline->to->prevcp.x,round)==myround2(spline->to->me.x,round) &&
- spline->to->next!=NULL &&
- myround2(spline->to->me.x,round)==myround2(spline->to->nextcp.x,round) &&
- myround2(spline->to->next->to->prevcp.y,round)==myround2(spline->to->next->to->me.y,round) )
- break;
- AddNumber2(gb,myround2(spline->from->nextcp.x,round)-hdb->current.x,round);
- AddNumber2(gb,myround2(spline->from->nextcp.y,round)-hdb->current.y,round);
- AddNumber2(gb,myround2(spline->to->prevcp.x,round)-myround2(spline->from->nextcp.x,round),round);
- AddNumber2(gb,myround2(spline->to->prevcp.y,round)-myround2(spline->from->nextcp.y,round),round);
- AddNumber2(gb,myround2(spline->to->me.x,round)-myround2(spline->to->prevcp.x,round),round);
- AddNumber2(gb,myround2(spline->to->me.y,round)-myround2(spline->to->prevcp.y,round),round);
- hdb->current.x = myround2(spline->to->me.x,round);
- hdb->current.y = myround2(spline->to->me.y,round);
- ++cnt;
- spline = spline->to->next;
- if ( spline==done || spline==NULL || spline->knownlinear )
- break;
- }
- if ( gb->pt+1 >= gb->end )
- GrowBuffer(gb);
- *(gb->pt)++ = 8; /* rrcurveto */
-return( spline );
-}
-
-static void flexto2(GrowBuf *gb,struct hintdb *hdb,Spline *pspline,int round) {
- BasePoint *c0, *c1, *mid, *end, *nc0, *nc1;
- Spline *nspline;
-
- c0 = &pspline->from->nextcp;
- c1 = &pspline->to->prevcp;
- mid = &pspline->to->me;
- nspline = pspline->to->next;
- nc0 = &nspline->from->nextcp;
- nc1 = &nspline->to->prevcp;
- end = &nspline->to->me;
-
- HintSetup2(gb,hdb,nspline->to,true);
-
- if ( myround2(c0->y,round)==hdb->current.y && myround2(nc1->y,round)==hdb->current.y &&
- myround2(end->y,round)==hdb->current.y &&
- myround2(c1->y,round)==myround2(mid->y,round) && myround2(nc0->y,round)==myround2(mid->y,round) ) {
- if ( gb->pt+7*6+2 >= gb->end )
- GrowBuffer(gb);
- AddNumber2(gb,myround2(c0->x,round)-hdb->current.x,round);
- AddNumber2(gb,myround2(c1->x,round)-myround2(c0->x,round),round);
- AddNumber2(gb,myround2(c1->y,round)-myround2(c0->y,round),round);
- AddNumber2(gb,myround2(mid->x,round)-myround2(c1->x,round),round);
- AddNumber2(gb,myround2(nc0->x,round)-myround2(mid->x,round),round);
- AddNumber2(gb,myround2(nc1->x,round)-myround2(nc0->x,round),round);
- AddNumber2(gb,myround2(end->x,round)-myround2(nc1->x,round),round);
- *gb->pt++ = 12; *gb->pt++ = 34; /* hflex */
- } else {
- if ( gb->pt+11*6+2 >= gb->end )
- GrowBuffer(gb);
- AddNumber2(gb,myround2(c0->x,round)-hdb->current.x,round);
- AddNumber2(gb,myround2(c0->y,round)-hdb->current.y,round);
- AddNumber2(gb,myround2(c1->x,round)-myround2(c0->x,round),round);
- AddNumber2(gb,myround2(c1->y,round)-myround2(c0->y,round),round);
- AddNumber2(gb,myround2(mid->x,round)-myround2(c1->x,round),round);
- AddNumber2(gb,myround2(mid->y,round)-myround2(c1->y,round),round);
- AddNumber2(gb,myround2(nc0->x,round)-myround2(mid->x,round),round);
- AddNumber2(gb,myround2(nc0->y,round)-myround2(mid->y,round),round);
- AddNumber2(gb,myround2(nc1->x,round)-myround2(nc0->x,round),round);
- AddNumber2(gb,myround2(nc1->y,round)-myround2(nc0->y,round),round);
- if ( hdb->current.y==myround2(end->y,round) )
- AddNumber2(gb,myround2(end->x,round)-myround2(nc1->x,round),round);
- else
- AddNumber2(gb,myround2(end->y,round)-myround2(nc1->y,round),round);
- *gb->pt++ = 12; *gb->pt++ = 37; /* flex1 */
- }
-
- hdb->current.x = rint(32768*end->x)/32768;
- hdb->current.y = rint(32768*end->y)/32768;
-}
-
-static void CvtPsSplineSet2(GrowBuf *gb, SplinePointList *spl,
- struct hintdb *hdb, int is_order2,int round ) {
- Spline *spline, *first;
- SplinePointList temp, *freeme = NULL;
- int unhinted = true;;
-
- if ( is_order2 )
- freeme = spl = SplineSetsPSApprox(spl);
-
- for ( ; spl!=NULL; spl = spl->next ) {
- first = NULL;
- SplineSetReverse(spl);
- /* PostScript and TrueType store their splines in in reverse */
- /* orientations. Annoying. Oh well. I shall adopt TrueType and */
- /* If I reverse the PS splinesets after reading them in, and then */
- /* again when saving them out, all should be well */
- if ( spl->first->flexy || spl->first->flexx ) {
- /* can't handle a flex (mid) point as the first point. rotate the */
- /* list by one, this is possible because only closed paths have */
- /* points marked as flex, and because we can't have two flex mid- */
- /* points in a row */
- if ( spl->first->hintmask==NULL || spl->first->next->to->hintmask!=NULL ) {
- /* But we can't rotate it if we expect it to provide us with */
- /* a hintmask. */
- temp = *spl;
- temp.first = temp.last = spl->first->next->to;
- spl = &temp;
- }
- if ( spl->first->flexy || spl->first->flexx ) {
- /* If we couldn't rotate, or if we rotated to something that */
- /* also is flexible, then just turn off flex. That's safe */
- spl->first->flexx = spl->first->flexy = false;
- }
- }
- if ( unhinted && hdb->cnt>0 && spl->first->hintmask!=NULL ) {
- hdb->mask[0] = ~(*spl->first->hintmask)[0]; /* Make it different */
- unhinted = false;
- }
- moveto2(gb,hdb,spl->first,round);
- for ( spline = spl->first->next; spline!=NULL && spline!=first; ) {
- if ( first==NULL ) first = spline;
- else if ( first->from==spline->to )
- hdb->skiphm = true;
- if ( spline->to->flexx || spline->to->flexy ) {
- flexto2(gb,hdb,spline,round); /* does two adjacent splines */
- spline = spline->to->next->to->next;
- } else if ( spline->knownlinear && spline->to == spl->first )
- /* In Type2 we don't even need a closepath to finish this off */
- /* (which is good, because there isn't a close path) */
- break;
- else if ( spline->knownlinear )
- spline = lineto2(gb,hdb,spline,first,round);
- else
- spline = curveto2(gb,hdb,spline,first,round);
- }
- hdb->skiphm = false;
- /* No closepath oper in type2 fonts, it's implied */
- SplineSetReverse(spl);
- /* Of course, I have to Reverse again to get back to my convention after*/
- /* saving */
- }
- SplinePointListsFree(freeme);
-}
-
-bool equalWithTolerence( real a, real b, real tolerence )
-{
-// printf("equalWithTolerence(1) a:%f b:%f tol:%f\n", a, b, tolerence );
-// printf("equalWithTolerence(2) a:%lf b:%lf tol:%lf\n", a, b, tolerence );
-
- if( tolerence == 0.0 )
- return a == b;
-
- return( (b - tolerence < a)
- && (b + tolerence > a ));
-}
-
-static void DumpHints(GrowBuf *gb,StemInfo *h,int oper,int midoper,int round) {
- real last = 0, cur;
- int cnt;
-
- if ( h==NULL )
-return;
- cnt = 0;
- while ( h && h->hintnumber!=-1 ) {
- /* Type2 hints do not support negative widths except in the case of */
- /* ghost (now called edge) hints */
- if ( cnt>24-2 ) { /* stack max = 48 numbers, => 24 hints, leave a bit of slop for the width */
- if ( gb->pt+1>=gb->end )
- GrowBuffer(gb);
- *gb->pt++ = midoper;
- cnt = 0;
- }
- cur = myround2(h->start,round) + myround2(h->width,round);
- if ( h->width<0 ) {
- AddNumber2(gb,cur-last,round);
- AddNumber2(gb,-myround2(h->width,round),round);
- cur -= myround2(h->width,round);
- } else if ( h->ghost ) {
- if ( equalWithTolerence( h->width, 20, GenerateHintWidthEqualityTolerance )) {
- AddNumber2(gb,myround2(h->start,round)-last+20,round);
- AddNumber2(gb,-20,round);
- cur = myround2(h->start,round);
- } else {
- AddNumber2(gb,myround2(h->start+21,round)-last,round);
- AddNumber2(gb,-21,round);
- cur = myround2(h->start+21,round)-21;
- }
- } else {
- AddNumber2(gb,myround2(h->start,round)-last,round);
- AddNumber2(gb,myround2(h->width,round),round);
- }
- last = cur;
- h = h->next;
- ++cnt;
- }
- if ( oper!=-1 ) {
- if ( gb->pt+1>=gb->end )
- GrowBuffer(gb);
- *gb->pt++ = oper;
- }
-}
-
-static void DumpRefsHints(GrowBuf *gb, struct hintdb *hdb,RefChar *cur,StemInfo *h,StemInfo *v,
- BasePoint *trans, int round,int layer) {
- uint8 masks[12];
- int cnt, sets=0;
- StemInfo *rs;
-
- /* trans has already been rounded (whole char is translated by an integral amount) */
-
- /* If we have a subroutine containing conflicts, then its hints will match*/
- /* ours exactly, and we can use its hintmasks directly */
- if (( cur->sc->hconflicts || cur->sc->vconflicts ) &&
- cur->sc->layers[layer].splines!=NULL &&
- cur->sc->layers[layer].splines->first->hintmask!=NULL ) {
- AddMask2(gb,*cur->sc->layers[layer].splines->first->hintmask,hdb->cnt,19); /* hintmask */
- hdb->donefirsthm = true;
- memcpy(hdb->mask,*cur->sc->layers[layer].splines->first->hintmask,sizeof(HintMask));
-return;
- }
-
- if ( h==NULL && v==NULL )
- IError("hintmask invoked when there are no hints");
- memset(masks,'\0',sizeof(masks));
- cnt = 0;
- while ( h!=NULL && h->hintnumber>=0 ) {
- /* Horizontal stems are defined by vertical bounds */
- real pos = (round ? rint(h->start) : h->start) - trans->y;
- for ( rs = cur->sc->hstem; rs!=NULL; rs=rs->next ) {
- real rpos = round ? rint(rs->start) : rs->start;
- if ( rpos==pos && (round ? (rint(rs->width)==rint(h->width)) : (rs->width==h->width)) ) {
- masks[h->hintnumber>>3] |= 0x80>>(h->hintnumber&7);
- ++sets;
- break;
- } else if ( rpos>pos )
- break;
- }
- h = h->next; ++cnt;
- }
- while ( v!=NULL && v->hintnumber>=0 ) {
- real pos = (round ? rint(v->start) : v->start) - trans->x;
- for ( rs = cur->sc->vstem; rs!=NULL; rs=rs->next ) {
- real rpos = round ? rint(rs->start) : rs->start;
- if ( rpos==pos && (round ? (rint(rs->width)==rint(v->width)) : (rs->width==v->width)) ) {
- masks[v->hintnumber>>3] |= 0x80>>(v->hintnumber&7);
- ++sets;
- break;
- } else if ( rpos>pos )
- break;
- }
- v = v->next; ++cnt;
- }
- BreakSubroutine(gb,hdb);
- hdb->donefirsthm = true;
- /* if ( sets!=0 ) */ /* First ref will need a hintmask even if it has no hints (if there are conflicts) */
- AddMask2(gb,masks,cnt,19); /* hintmask */
-}
-
-static void DummyHintmask(GrowBuf *gb,struct hintdb *hdb) {
- HintMask hm;
-
- memset(hm,0,sizeof(hm));
- if ( hdb->cnt!=0 ) {
- BreakSubroutine(gb,hdb);
- hdb->donefirsthm = true;
- AddMask2(gb,hm,hdb->cnt,19); /* hintmask */
- }
-}
-
-static void SetTransformedHintMask(GrowBuf *gb,struct hintdb *hdb,
- SplineChar *sc, RefChar *ref, BasePoint *trans, int round) {
- HintMask hm;
-
- if ( HintMaskFromTransformedRef(ref,trans,sc,&hm)!=NULL ) {
- BreakSubroutine(gb,hdb);
- hdb->donefirsthm = true;
- AddMask2(gb,hm,hdb->cnt,19); /* hintmask */
- } else if ( !hdb->donefirsthm )
- DummyHintmask(gb,hdb);
-}
-
-static void ExpandRef2(GrowBuf *gb, SplineChar *sc, struct hintdb *hdb,
- RefChar *r, BasePoint *trans,
- struct pschars *subrs, int round,int layer) {
- BasePoint *bpt;
- BasePoint temp, rtrans;
- GlyphInfo *gi;
- /* The only refs I deal with here have no hint conflicts within them */
-
- rtrans.x = r->transform[4]+trans->x;
- rtrans.y = r->transform[5]+trans->y;
- if ( round ) {
- rtrans.x = rint(rtrans.x);
- rtrans.y = rint(rtrans.y);
- }
-
- BreakSubroutine(gb,hdb);
- if ( hdb->cnt>0 && !hdb->noconflicts )
- DumpRefsHints(gb,hdb,r,sc->hstem,sc->vstem,&rtrans,round,layer);
-
- /* Translate from end of last character to where this one should */
- /* start (we must have one moveto operator to start off, none */
- /* in the subr) */
- bpt = hdb->gi->psubrs[r->sc->lsidebearing].startstop;
- temp.x = bpt[0].x+rtrans.x;
- temp.y = bpt[0].y+rtrans.y;
- if ( hdb->current.x!=temp.x )
- AddNumber2(gb,temp.x-hdb->current.x,round);
- if ( hdb->current.y!=temp.y || hdb->current.x==temp.x )
- AddNumber2(gb,temp.y-hdb->current.y,round);
- if ( gb->pt+1>=gb->end )
- GrowBuffer(gb);
- *gb->pt++ = hdb->current.x==temp.x?4: /* vmoveto */
- hdb->current.y==temp.y?22: /* hmoveto */
- 21; /* rmoveto */
- if ( r->sc->lsidebearing==0x7fff )
- IError("Attempt to reference an unreferenceable glyph %s", r->sc->name );
-
- gi = hdb->gi;
- StartNextSubroutine(gb,hdb);
- gi->bits[gi->bcnt].psub_index = r->sc->lsidebearing;
- ++gi->bcnt;
- gi->justbroken = true;
- hdb->current.x = bpt[1].x+rtrans.x;
- hdb->current.y = bpt[1].y+rtrans.y;
-}
-
-static void RSC2PS2(GrowBuf *gb, SplineChar *base,SplineChar *rsc,
- struct hintdb *hdb, BasePoint *trans, struct pschars *subrs,
- int flags, int layer ) {
- BasePoint subtrans;
- int stationary = trans->x==0 && trans->y==0;
- RefChar *r, *unsafe=NULL;
- int unsafecnt=0, allwithouthints=true;
- int round = (flags&ps_flag_round)? true : false;
- StemInfo *oldh, *oldv;
- int hc, vc;
- SplineSet *freeme, *temp;
- int wasntconflicted = hdb->noconflicts;
-
- if ( flags&ps_flag_nohints ) {
- oldh = rsc->hstem; oldv = rsc->vstem;
- hc = rsc->hconflicts; vc = rsc->vconflicts;
- rsc->hstem = NULL; rsc->vstem = NULL;
- rsc->hconflicts = false; rsc->vconflicts = false;
- } else {
- for ( r=rsc->layers[layer].refs; r!=NULL; r=r->next ) {
- /* Ensure hintmask on refs are set correctly */
- if (SCNeedsSubsPts(r->sc, ff_otf, layer))
- SCFigureHintMasks(r->sc, layer);
-
- if ( !r->justtranslated )
- continue;
- if ( r->sc->hconflicts || r->sc->vconflicts ) {
- ++unsafecnt;
- unsafe = r;
- } else if ( r->sc->hstem!=NULL || r->sc->vstem!=NULL )
- allwithouthints = false;
- }
- if ( !stationary )
- allwithouthints = false;
- if ( allwithouthints && unsafe!=NULL && hdb->cnt!=NumberHints(&unsafe->sc,1))
- allwithouthints = false; /* There are other hints elsewhere in the base glyph */
- }
-
- if ( unsafe && allwithouthints ) {
- if ( unsafe->sc->lsidebearing!=0x7fff ) {
- ExpandRef2(gb,base,hdb,unsafe,trans,subrs,round,layer);
- } else if ( unsafe->transform[4]==0 && unsafe->transform[5]==0 )
- RSC2PS2(gb,base,unsafe->sc,hdb,trans,subrs,flags,layer);
- else
- unsafe = NULL;
- } else
- unsafe = NULL;
-
- /* What is the hintmask state here? It should not matter */
- freeme = NULL; temp = rsc->layers[layer].splines;
- if ( base!=rsc )
- temp = freeme = SPLCopyTranslatedHintMasks(temp,base,rsc,trans);
- CvtPsSplineSet2(gb,temp,hdb,rsc->layers[layer].order2,round);
- SplinePointListsFree(freeme);
-
- for ( r = rsc->layers[layer].refs; r!=NULL; r = r->next ) if ( r!=unsafe ) {
- if ( !r->justtranslated ) {
- if ( !r->sc->hconflicts && !r->sc->vconflicts && !hdb->noconflicts &&
- r->transform[1]==0 && r->transform[2]==0 &&
- r->transform[0]>0 && r->transform[3]>0 )
- SetTransformedHintMask(gb,hdb,base,r,trans,round);
- if ( !hdb->donefirsthm )
- DummyHintmask(gb,hdb);
- temp = SPLCopyTransformedHintMasks(r,base,trans,layer);
- CvtPsSplineSet2(gb,temp,hdb,rsc->layers[layer].order2,round);
- SplinePointListsFree(temp);
- } else if ( r->sc->lsidebearing!=0x7fff &&
- ((flags&ps_flag_nohints) ||
- (!r->sc->hconflicts && !r->sc->vconflicts)) ) {
- ExpandRef2(gb,base,hdb,r,trans,subrs,round,layer);
- } else {
- subtrans.x = trans->x + r->transform[4];
- subtrans.y = trans->y + r->transform[5];
- if ( !hdb->noconflicts && !r->sc->hconflicts && !r->sc->vconflicts) {
- SetTransformedHintMask(gb,hdb,base,r,trans,round);
- hdb->noconflicts = true;
- }
- RSC2PS2(gb,base,r->sc,hdb,&subtrans,subrs,flags,layer);
- hdb->noconflicts = wasntconflicted;
- }
- }
-
- if ( flags&ps_flag_nohints ) {
- rsc->hstem = oldh; rsc->vstem = oldv;
- rsc->hconflicts = hc; rsc->vconflicts = vc;
- }
-}
-
-static unsigned char *SplineChar2PS2(SplineChar *sc,int *len, int nomwid,
- int defwid, struct pschars *subrs, int flags,
- GlyphInfo *gi) {
- GrowBuf gb;
- unsigned char *ret;
- struct hintdb hdb;
- StemInfo *oldh, *oldv;
- int hc, vc;
- SplineChar *scs[MmMax];
- int round = (flags&ps_flag_round)? true : false;
- HintMask *hm = NULL;
- BasePoint trans;
-
- if ( autohint_before_generate && sc->changedsincelasthinted &&
- !sc->manualhints && !(flags&ps_flag_nohints))
- SplineCharAutoHint(sc,gi->layer,NULL);
- if ( !(flags&ps_flag_nohints) && SCNeedsSubsPts(sc,ff_otf,gi->layer))
- SCFigureHintMasks(sc,gi->layer);
-
- if ( flags&ps_flag_nohints ) {
- oldh = sc->hstem; oldv = sc->vstem;
- hc = sc->hconflicts; vc = sc->vconflicts;
- sc->hstem = NULL; sc->vstem = NULL;
- sc->hconflicts = false; sc->vconflicts = false;
- } else if ( sc->layers[gi->layer].splines!=NULL && !sc->vconflicts &&
- !sc->hconflicts ) {
- hm = sc->layers[gi->layer].splines->first->hintmask;
- sc->layers[gi->layer].splines->first->hintmask = NULL;
- }
-
- memset(&gb,'\0',sizeof(gb));
-
- GrowBuffer(&gb);
-
- /* store the width on the stack */
- if ( sc->width==defwid )
- /* Don't need to do anything for the width */;
- else
- AddNumber2(&gb,sc->width-nomwid,round);
-
- memset(&trans,'\0',sizeof(trans));
- memset(&hdb,'\0',sizeof(hdb));
- hdb.scs = scs;
- hdb.gi = gi;
- if ( gi!=NULL )
- gi->bcnt = -1;
- scs[0] = sc;
- hdb.noconflicts = !sc->hconflicts && !sc->vconflicts;
- hdb.cnt = NumberHints(hdb.scs,1);
- DumpHints(&gb,sc->hstem,sc->hconflicts || sc->vconflicts?18:1,
- sc->hconflicts || sc->vconflicts?18:1,round);
- DumpHints(&gb,sc->vstem,sc->hconflicts || sc->vconflicts?-1:3,
- sc->hconflicts || sc->vconflicts?23:3,round);
- CounterHints2(&gb, sc, hdb.cnt );
- RSC2PS2(&gb,sc,sc,&hdb,&trans,subrs,flags,gi->layer);
-
- if ( gi->bcnt==-1 ) { /* If it's whitespace */
- gi->bcnt = 0;
- StartNextSubroutine(&gb,&hdb);
- }
- BreakSubroutine(&gb,&hdb);
- MoveSubrsToChar(gi);
- ret = NULL;
-
- free(gb.base);
- if ( flags&ps_flag_nohints ) {
- sc->hstem = oldh; sc->vstem = oldv;
- sc->hconflicts = hc; sc->vconflicts = vc;
- } else if ( hm!=NULL )
- sc->layers[gi->layer].splines->first->hintmask = hm;
-return( ret );
-}
-
-static SplinePoint *LineTo(SplinePoint *last, int x, int y) {
- SplinePoint *sp = SplinePointCreate(x,y);
- SplineMake3(last,sp);
-return( sp );
-}
-
-static void Type2NotDefSplines(SplineFont *sf,SplineChar *sc,int layer) {
- /* I'd always assumed that Type2 notdefs would look like type1 notdefs */
- /* but they don't, they look like truetype notdefs. And Ralf Stubner */
- /* points out that the spec says they should. So make a box here */
- int stem, ymax;
- SplineSet *inner, *ss;
- StemInfo *h, *hints;
-
- stem = (sf->ascent+sf->descent)/20;
- ymax = 2*sf->ascent/3;
-
- ss = chunkalloc(sizeof(SplineSet));
- ss->first = ss->last = SplinePointCreate(stem,0);
- ss->last = LineTo(ss->last,stem,ymax);
- ss->last = LineTo(ss->last,sc->width-stem,ymax);
- ss->last = LineTo(ss->last,sc->width-stem,0);
- SplineMake3(ss->last,ss->first);
- ss->last = ss->first;
-
- ss->next = inner = chunkalloc(sizeof(SplineSet));
- inner->first = inner->last = SplinePointCreate(2*stem,stem);
- inner->last = LineTo(inner->last,sc->width-2*stem,stem);
- inner->last = LineTo(inner->last,sc->width-2*stem,ymax-stem);
- inner->last = LineTo(inner->last,2*stem,ymax-stem);
- SplineMake3(inner->last,inner->first);
- inner->last = inner->first;
-
- sc->layers[layer].splines = ss;
-
- hints = chunkalloc(sizeof(StemInfo));
- hints->start = stem;
- hints->width = stem;
- hints->next = h = chunkalloc(sizeof(StemInfo));
- h->start = sc->width-2*stem;
- h->width = stem;
- sc->vstem = hints;
-
- hints = chunkalloc(sizeof(StemInfo));
- hints->start = 0;
- hints->width = stem;
- hints->next = h = chunkalloc(sizeof(StemInfo));
- h->start = ymax-stem;
- h->width = stem;
- sc->hstem = hints;
-}
-
-#ifdef FONTFORGE_CONFIG_PS_REFS_GET_SUBRS
-/* This char has hint conflicts. Check to see if we can put it into a subr */
-/* in spite of that. If there is at least one dependent character which: */
-/* refers to us without translating us */
-/* and all its other refs contain no hints at all */
-static int Type2SpecialCase(SplineChar *sc) {
- struct splinecharlist *d;
- RefChar *r;
-
- for ( d=sc->dependents; d!=NULL; d=d->next ) {
- for ( r=d->sc->layers[layer].refs; r!=NULL; r = r->next ) {
- if ( autohint_before_generate && r->sc!=NULL &&
- r->sc->changedsincelasthinted && !r->sc->manualhints )
- SplineCharAutoHint(r->sc,NULL);
- if ( r->transform[0]!=1 || r->transform[1]!=0 ||
- r->transform[2]!=0 || r->transform[3]!=1 )
- break;
- if ( r->sc!=sc && (r->sc->hstem!=NULL || r->sc->vstem!=NULL))
- break;
- if ( r->sc==sc && (r->transform[4]!=0 || r->transform[5]!=0))
- break;
- }
- if ( r==NULL )
-return( true );
- }
-return( false );
-}
-#endif /* FONTFORGE_CONFIG_PS_REFS_GET_SUBRS */
-
-/* Mark those glyphs which can live totally in subrs */
-static void SplineFont2FullSubrs2(int flags,GlyphInfo *gi) {
- int i;
- SplineChar *sc;
-#ifdef FONTFORGE_CONFIG_PS_REFS_GET_SUBRS
- int cc;
- RefChar *r;
- struct potentialsubrs *ps;
- SplineSet *spl;
-#endif /* FONTFORGE_CONFIG_PS_REFS_GET_SUBRS */
-
- if ( !autohint_before_generate && !(flags&ps_flag_nohints))
- SplineFontAutoHintRefs(gi->sf,gi->layer);
-
- for ( i=0; i<gi->glyphcnt; ++i ) if ( (sc=gi->gb[i].sc)!=NULL )
- sc->lsidebearing = 0x7fff;
-
-/* This code allows us to put whole glyphs into subroutines */
-/* I found slight improvements in space on some fonts, and large increases */
-/* in others. So I'm disabling it for now */
-#ifdef FONTFORGE_CONFIG_PS_REFS_GET_SUBRS
- /* We don't allow refs to refs. It's too complex */
- for ( i=0; i<gi->glyphcnt; ++i ) if ( (sc=gi->gb[i].sc)!=NULL ) {
- if ( SCWorthOutputting(sc) &&
- (( sc->layers[layer].refs==NULL && sc->dependents!=NULL &&
- ( (!sc->hconflicts && !sc->vconflicts) ||
- Type2SpecialCase(sc)) ) )) {
- /* if the glyph is a single contour with no hintmasks then */
- /* our single contour code will find it. If we do it here too */
- /* we'll get a subr which points to another subr. Very dull and */
- /* a waste of space */
- cc = 0;
- for ( spl=sc->layers[layer].splines; spl!=NULL; spl=spl->next )
- ++cc;
- for ( r= sc->layers[layer].refs; r!=NULL && cc<2 ; r=r->next ) {
- for ( spl=r->layers[0].splines; spl!=NULL; spl=spl->next )
- ++cc;
- }
- if ( cc<2 )
- continue;
- /* Put the */
- /* character into a subr if it is referenced by other characters */
- if ( gi->pcnt>=gi->pmax )
- gi->psubrs = realloc(gi->psubrs,(gi->pmax+=gi->glyphcnt)*sizeof(struct potentialsubrs));
- ps = &gi->psubrs[gi->pcnt];
- memset(ps,0,sizeof(*ps)); /* set cnt to 0 */
- ps->idx = gi->pcnt++;
- ps->full_glyph_index = i;
- sc->lsidebearing = gi->pcnt-1;
- ps->startstop = FigureStartStop(sc,gi);
- }
- }
-#endif /* FONTFORGE_CONFIG_PS_REFS_GET_SUBRS */
-}
-
-struct pschars *SplineFont2ChrsSubrs2(SplineFont *sf, int nomwid, int defwid,
- const int *bygid, int cnt, int flags, struct pschars **_subrs, int layer) {
- struct pschars *subrs, *chrs;
- int i,j,k,scnt;
- SplineChar *sc;
- GlyphInfo gi;
- SplineChar dummynotdef;
-
- if ( !autohint_before_generate && !(flags&ps_flag_nohints))
- SplineFontAutoHintRefs(sf,layer);
-
- memset(&gi,0,sizeof(gi));
- memset(&gi.hashed,-1,sizeof(gi.hashed));
- gi.instance_count = 1;
- gi.sf = sf;
- gi.layer = layer;
- gi.glyphcnt = cnt;
- gi.bygid = bygid;
- gi.gb = calloc(cnt,sizeof(struct glyphbits));
- gi.pmax = 3*cnt;
- gi.psubrs = malloc(gi.pmax*sizeof(struct potentialsubrs));
- for ( i=0; i<cnt; ++i ) {
- int gid = bygid[i];
- if ( i==0 && gid==-1 ) {
- sc = &dummynotdef;
- memset(sc,0,sizeof(dummynotdef));
- dummynotdef.name = ".notdef";
- dummynotdef.parent = sf;
- dummynotdef.layer_cnt = sf->layer_cnt;
- dummynotdef.layers = calloc(sf->layer_cnt,sizeof(Layer));
- dummynotdef.width = SFOneWidth(sf);
- if ( dummynotdef.width==-1 )
- dummynotdef.width = (sf->ascent+sf->descent)/2;
- Type2NotDefSplines(sf,&dummynotdef,layer);
- } else if ( gid!=-1 )
- sc = sf->glyphs[gid];
- else
- continue;
- gi.gb[i].sc = sc;
- if ( autohint_before_generate && sc!=NULL &&
- sc->changedsincelasthinted && !sc->manualhints &&
- !(flags&ps_flag_nohints))
- SplineCharAutoHint(sc,layer,NULL);
- sc->lsidebearing = 0x7fff;
- }
- MarkTranslationRefs(sf,layer);
- SplineFont2FullSubrs2(flags,&gi);
-
- for ( i=0; i<cnt; ++i ) {
- if ( (sc = gi.gb[i].sc)==NULL )
- continue;
- gi.active = &gi.gb[i];
- SplineChar2PS2(sc,NULL,nomwid,defwid,NULL,flags,&gi);
- ff_progress_next();
- }
-
- for ( i=scnt=0; i<gi.pcnt; ++i ) {
- /* A subroutine call takes somewhere between 2 and 4 bytes itself. */
- /* and we must add a return statement to the end. We don't want to */
- /* make things bigger */
- /* if we have more than 65535 subrs a subr call can take 9 bytes */
- if ( gi.psubrs[i].full_glyph_index!=-1 )
- gi.psubrs[i].idx = scnt++;
- else if ( gi.psubrs[i].cnt*gi.psubrs[i].len>(gi.psubrs[i].cnt*4)+gi.psubrs[i].len+1 )
- gi.psubrs[i].idx = scnt++;
- else
- gi.psubrs[i].idx = -1;
- }
- subrs = calloc(1,sizeof(struct pschars));
- subrs->cnt = scnt;
- subrs->next = scnt;
- subrs->lens = malloc(scnt*sizeof(int));
- subrs->values = malloc(scnt*sizeof(unsigned char *));
- subrs->bias = scnt<1240 ? 107 :
- scnt<33900 ? 1131 : 32768;
- for ( i=0; i<gi.pcnt; ++i ) {
- if ( gi.psubrs[i].idx != -1 ) {
- scnt = gi.psubrs[i].idx;
- subrs->lens[scnt] = gi.psubrs[i].len+1;
- subrs->values[scnt] = malloc(subrs->lens[scnt]);
- memcpy(subrs->values[scnt],gi.psubrs[i].data,gi.psubrs[i].len);
- subrs->values[scnt][gi.psubrs[i].len] = 11; /* Add a return to end of subr */
- }
- }
-
- chrs = calloc(1,sizeof(struct pschars));
- chrs->cnt = cnt;
- chrs->next = cnt;
- chrs->lens = malloc(cnt*sizeof(int));
- chrs->values = malloc(cnt*sizeof(unsigned char *));
- chrs->keys = malloc(cnt*sizeof(char *));
- for ( i=0; i<cnt; ++i ) {
- int len=0;
- uint8 *vals;
- struct glyphbits *gb = &gi.gb[i];
- if ( gb->sc==NULL )
- continue;
- chrs->keys[i] = copy(gb->sc->name);
- for ( k=0; k<2; ++k ) if ( k!=0 || gb->sc->lsidebearing!=0x7fff ) {
- for ( j=0; j<gb->bcnt; ++j ) {
- if ( k!=0 || j!=0 )
- len += gb->bits[j].dlen;
- if ( k==1 && gb->sc->lsidebearing!=0x7fff ) {
- int si = gi.psubrs[ gb->sc->lsidebearing ].idx;
- len += 1 + (si<=107 && si>=-107?1:si<=1131 && si>=-1131?2:si>=-32768 && si<32767?3:8);
- break;
- }
- if ( gi.psubrs[ gb->bits[j].psub_index ].idx==-1 )
- len += gi.psubrs[ gb->bits[j].psub_index ].len;
- else {
- int si = gi.psubrs[ gb->bits[j].psub_index ].idx - subrs->bias;
- /* space for the number (subroutine index) */
- if ( si>=-107 && si<=107 )
- ++len;
- else if ( si>=-1131 && si<=1131 )
- len += 2;
- else if ( si>=-32768 && si<=32767 )
- len += 3;
- else
- len += 8;
- /* space for the subroutine operator */
- ++len;
- }
- }
- if ( k==0 ) {
- int si = gi.psubrs[ gb->sc->lsidebearing ].idx;
- subrs->lens[si] = len+1;
- vals = subrs->values[si] = malloc(len+2);
- } else {
- chrs->lens[i] = len+1;
- vals = chrs->values[i] = malloc(len+2); /* space for endchar and a final NUL (which is really meaningless, but makes me feel better) */
- }
-
- len = 0;
- for ( j=0; j<gb->bcnt; ++j ) {
- int si;
- if ( k!=0 || j!=0 ) {
- memcpy(vals+len,gb->bits[j].data,gb->bits[j].dlen);
- len += gb->bits[j].dlen;
- }
- si = 0x80000000;
- if ( k==1 && gb->sc->lsidebearing!=0x7fff )
- si = gi.psubrs[ gb->sc->lsidebearing ].idx - subrs->bias;
- else if ( gi.psubrs[ gb->bits[j].psub_index ].idx==-1 ) {
- memcpy(vals+len,gi.psubrs[ gb->bits[j].psub_index ].data,
- gi.psubrs[ gb->bits[j].psub_index ].len);
- len += gi.psubrs[ gb->bits[j].psub_index ].len;
- } else
- si = gi.psubrs[ gb->bits[j].psub_index ].idx - subrs->bias;
- if ( si!=0x80000000 ) {
- /* space for the number (subroutine index) */
- if ( si>=-107 && si<=107 )
- vals[len++] = si+139;
- else if ( si>0 && si<=1131 ) {
- si-=108;
- vals[len++] = (si>>8)+247;
- vals[len++] = si&0xff;
- } else if ( si>=-1131 && si<0 ) {
- si=(-si)-108;
- vals[len++] = (si>>8)+251;
- vals[len++] = si&0xff;
- } else if ( si>=-32768 && si<=32767 ) {
- vals[len++] = 28;
- vals[len++] = (si>>8)&0xff;
- vals[len++] = si&0xff;
- } else {
- /* store as fixed point, then multiply by 64. Takes 8 bytes */
- si *= (65536/64);
- vals[len++] = '\377';
- vals[len++] = (si>>24)&0xff;
- vals[len++] = (si>>16)&0xff;
- vals[len++] = (si>>8)&0xff;
- vals[len++] = si&0xff;
- vals[len++] = 64 + 139;
- vals[len++] = 0xc; vals[len++] = 0x18; /* Multiply */
- }
-
- /* space for the subroutine operator */
- vals[len++] = 10;
- }
- if ( k==1 && gb->sc->lsidebearing!=0x7fff )
- break;
- }
- if ( k==0 ) {
- vals[len++] = 11; /* return */
- vals[len] = '\0';
- } else {
- vals[len++] = 14; /* endchar */
- vals[len] = '\0';
- }
- }
- }
-
- GIFree(&gi,&dummynotdef);
- *_subrs = subrs;
-return( chrs );
-}
-
-struct pschars *CID2ChrsSubrs2(SplineFont *cidmaster,struct fd2data *fds,
- int flags, struct pschars **_glbls, int layer) {
- struct pschars *chrs, *glbls;
- int i, j, cnt, cid, max, fd;
- int *scnts;
- SplineChar *sc;
- SplineFont *sf = NULL;
- /* In a cid-keyed font, cid 0 is defined to be .notdef so there are no */
- /* special worries. If it is defined we use it. If it is not defined */
- /* we add it. */
- GlyphInfo gi;
- SplineChar dummynotdef;
-
- max = 0;
- for ( i=0; i<cidmaster->subfontcnt; ++i ) {
- if ( max<cidmaster->subfonts[i]->glyphcnt )
- max = cidmaster->subfonts[i]->glyphcnt;
- MarkTranslationRefs(cidmaster->subfonts[i],layer);
- }
- cnt = 1; /* for .notdef */
- for ( cid = 1; cid<max; ++cid ) {
- for ( i=0; i<cidmaster->subfontcnt; ++i ) {
- sf = cidmaster->subfonts[i];
- if ( cid<sf->glyphcnt && (sc=sf->glyphs[cid])!=NULL ) {
- sc->ttf_glyph = -1;
- sc->lsidebearing = 0x7fff;
- if ( SCWorthOutputting(sc))
- ++cnt;
- break;
- }
- }
- }
-
- memset(&gi,0,sizeof(gi));
- memset(&gi.hashed,-1,sizeof(gi.hashed));
- gi.instance_count = 1;
- gi.sf = sf;
- gi.glyphcnt = cnt;
- gi.bygid = NULL;
- gi.gb = calloc(cnt,sizeof(struct glyphbits));
- gi.pmax = 3*cnt;
- gi.psubrs = malloc(gi.pmax*sizeof(struct potentialsubrs));
- gi.layer = layer;
-
- for ( cid = cnt = 0; cid<max; ++cid ) {
- sf = NULL;
- for ( i=0; i<cidmaster->subfontcnt; ++i ) {
- sf = cidmaster->subfonts[i];
- if ( cid<sf->glyphcnt && SCWorthOutputting(sf->glyphs[cid]) )
- break;
- }
- if ( cid!=0 && i==cidmaster->subfontcnt ) {
- sc=NULL;
- } else if ( i==cidmaster->subfontcnt ) {
- /* They didn't define CID 0 */
- sc = &dummynotdef;
- /* Place it in the final subfont (which is what sf points to) */
- memset(sc,0,sizeof(dummynotdef));
- dummynotdef.name = ".notdef";
- dummynotdef.parent = sf;
- dummynotdef.layer_cnt = layer+1;
- dummynotdef.layers = calloc(layer+1,sizeof(Layer));
- dummynotdef.width = SFOneWidth(sf);
- if ( dummynotdef.width==-1 )
- dummynotdef.width = (sf->ascent+sf->descent);
- Type2NotDefSplines(sf,&dummynotdef,layer);
- gi.gb[cnt].sc = sc;
- gi.gb[cnt].fd = i = cidmaster->subfontcnt-1;
- } else {
- gi.gb[cnt].sc = sc = sf->glyphs[cid];
- gi.gb[cnt].fd = i;
- }
- if ( sc!=NULL ) {
- sc->lsidebearing = 0x7fff;
- gi.active = &gi.gb[cnt];
- sc->ttf_glyph = cnt++;
- SplineChar2PS2(sc,NULL,fds[i].nomwid,fds[i].defwid,NULL,flags,&gi);
- }
- ff_progress_next();
- }
-
- scnts = calloc( cidmaster->subfontcnt+1,sizeof(int));
- for ( i=0; i<gi.pcnt; ++i ) {
- gi.psubrs[i].idx = -1;
- if ( gi.psubrs[i].cnt*gi.psubrs[i].len>(gi.psubrs[i].cnt*4)+gi.psubrs[i].len+1 )
- gi.psubrs[i].idx = scnts[gi.psubrs[i].fd+1]++;
- }
-
- glbls = calloc(1,sizeof(struct pschars));
- glbls->cnt = scnts[0];
- glbls->next = scnts[0];
- glbls->lens = malloc(scnts[0]*sizeof(int));
- glbls->values = malloc(scnts[0]*sizeof(unsigned char *));
- glbls->bias = scnts[0]<1240 ? 107 :
- scnts[0]<33900 ? 1131 : 32768;
- for ( fd=0; fd<cidmaster->subfontcnt; ++fd ) {
- fds[fd].subrs = calloc(1,sizeof(struct pschars));
- fds[fd].subrs->cnt = scnts[fd+1];
- fds[fd].subrs->next = scnts[fd+1];
- fds[fd].subrs->lens = malloc(scnts[fd+1]*sizeof(int));
- fds[fd].subrs->values = malloc(scnts[fd+1]*sizeof(unsigned char *));
- fds[fd].subrs->bias = scnts[fd+1]<1240 ? 107 :
- scnts[fd+1]<33900 ? 1131 : 32768;
- }
- free( scnts);
-
- for ( i=0; i<gi.pcnt; ++i ) {
- if ( gi.psubrs[i].idx != -1 ) {
- struct pschars *subrs = gi.psubrs[i].fd==-1 ? glbls : fds[gi.psubrs[i].fd].subrs;
- int scnt = gi.psubrs[i].idx;
- subrs->lens[scnt] = gi.psubrs[i].len+1;
- subrs->values[scnt] = malloc(subrs->lens[scnt]);
- memcpy(subrs->values[scnt],gi.psubrs[i].data,gi.psubrs[i].len);
- subrs->values[scnt][gi.psubrs[i].len] = 11; /* Add a return to end of subr */
- }
- }
-
-
- chrs = calloc(1,sizeof(struct pschars));
- chrs->cnt = cnt;
- chrs->next = cnt;
- chrs->lens = malloc(cnt*sizeof(int));
- chrs->values = malloc(cnt*sizeof(unsigned char *));
- chrs->keys = malloc(cnt*sizeof(char *));
- for ( i=0; i<cnt; ++i ) {
- int len=0;
- struct glyphbits *gb = &gi.gb[i];
- chrs->keys[i] = copy(gb->sc->name);
- for ( j=0; j<gb->bcnt; ++j ) {
- len += gb->bits[j].dlen;
- if ( gi.psubrs[ gb->bits[j].psub_index ].idx==-1 )
- len += gi.psubrs[ gb->bits[j].psub_index ].len;
- else {
- struct pschars *subrs = gi.psubrs[gb->bits[j].psub_index].fd==-1 ? glbls : fds[gi.psubrs[gb->bits[j].psub_index].fd].subrs;
- int si = gi.psubrs[ gb->bits[j].psub_index ].idx - subrs->bias;
- /* space for the number (subroutine index) */
- if ( si>=-107 && si<=107 )
- ++len;
- else if ( si>=-1131 && si<=1131 )
- len += 2;
- else if ( si>=-32768 && si<=32767 )
- len += 3;
- else
- len += 8;
- /* space for the subroutine operator */
- ++len;
- }
- }
- chrs->lens[i] = len+1;
- chrs->values[i] = malloc(len+2); /* space for endchar and a final NUL (which is really meaningless, but makes me feel better) */
-
- len = 0;
- for ( j=0; j<gb->bcnt; ++j ) {
- memcpy(chrs->values[i]+len,gb->bits[j].data,gb->bits[j].dlen);
- len += gb->bits[j].dlen;
- if ( gi.psubrs[ gb->bits[j].psub_index ].idx==-1 ) {
- memcpy(chrs->values[i]+len,gi.psubrs[ gb->bits[j].psub_index ].data,
- gi.psubrs[ gb->bits[j].psub_index ].len);
- len += gi.psubrs[ gb->bits[j].psub_index ].len;
- } else {
- struct pschars *subrs = gi.psubrs[gb->bits[j].psub_index].fd==-1 ? glbls : fds[gi.psubrs[gb->bits[j].psub_index].fd].subrs;
- int si = gi.psubrs[ gb->bits[j].psub_index ].idx - subrs->bias;
- /* space for the number (subroutine index) */
- if ( si>=-107 && si<=107 )
- chrs->values[i][len++] = si+139;
- else if ( si>0 && si<=1131 ) {
- si-=108;
- chrs->values[i][len++] = (si>>8)+247;
- chrs->values[i][len++] = si&0xff;
- } else if ( si>=-1131 && si<0 ) {
- si=(-si)-108;
- chrs->values[i][len++] = (si>>8)+251;
- chrs->values[i][len++] = si&0xff;
- } else if ( si>=-32768 && si<=32767 ) {
- chrs->values[i][len++] = 28;
- chrs->values[i][len++] = (si>>8)&0xff;
- chrs->values[i][len++] = si&0xff;
- } else {
- /* store as fixed point, then multiply by 64. Takes 8 bytes */
- si *= (65536/64);
- chrs->values[i][len++] = '\377';
- chrs->values[i][len++] = (si>>24)&0xff;
- chrs->values[i][len++] = (si>>16)&0xff;
- chrs->values[i][len++] = (si>>8)&0xff;
- chrs->values[i][len++] = si&0xff;
- chrs->values[i][len++] = 64 + 139;
- chrs->values[i][len++] = 0xc; chrs->values[i][len++] = 0x18; /* Multiply */
- }
- /* space for the subroutine operator */
- if ( gi.psubrs[ gb->bits[j].psub_index ].fd==-1 ) {
- chrs->values[i][len++] = 29;
- } else
- chrs->values[i][len++] = 10;
- }
- }
- chrs->values[i][len++] = 14; /* endchar */
- chrs->values[i][len] = '\0';
- }
- GIFree(&gi,&dummynotdef);
- *_glbls = glbls;
-return( chrs );
-}
-
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/splinesaveafm.c b/dviware/dvisvgm/libs/ff-woff/fontforge/splinesaveafm.c
deleted file mode 100644
index 6fc6de1ead..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/splinesaveafm.c
+++ /dev/null
@@ -1,322 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h" /* For Error */
-
-
-/* ************************************************************************** */
-/* **************************** Reading OFM files *************************** */
-/* ************************************************************************** */
-
-#define ExtShort(off) (((ext+2*off)[0]<<8)|(ext+2*off)[1])
-
-/* ************************************************************************** */
-
-int SCDrawsSomething(SplineChar *sc) {
- int layer,l;
- RefChar *ref;
-
- if ( sc==NULL )
-return( false );
- for ( layer = 0; layer<sc->layer_cnt; ++layer ) if ( !sc->layers[layer].background ) {
- if ( sc->layers[layer].splines!=NULL)
-return( true );
- for ( ref = sc->layers[layer].refs; ref!=NULL; ref=ref->next )
- for ( l=0; l<ref->layer_cnt; ++l )
- if ( ref->layers[l].splines!=NULL )
-return( true );
- }
-return( false );
-}
-
-int SCWorthOutputting(SplineChar *sc) {
-return( sc!=NULL &&
- ( SCDrawsSomething(sc) || sc->widthset || sc->anchor!=NULL ||
-#if HANYANG
- sc->compositionunit ||
-#endif
- sc->dependents!=NULL /*||
- sc->width!=sc->parent->ascent+sc->parent->descent*/ ) );
-}
-
-void SFLigatureCleanup(SplineFont *sf) {
- LigList *l, *next;
- struct splinecharlist *scl, *sclnext;
- int j;
-
- if (sf->internal_temp)
-return;
-
- for ( j=0; j<sf->glyphcnt; ++j ) if ( sf->glyphs[j]!=NULL ) {
- for ( l = sf->glyphs[j]->ligofme; l!=NULL; l = next ) {
- next = l->next;
- for ( scl = l->components; scl!=NULL; scl = sclnext ) {
- sclnext = scl->next;
- chunkfree(scl,sizeof(struct splinecharlist));
- }
- if ( l->lig->temporary ) {
- free(l->lig->u.lig.components);
- chunkfree(l->lig,sizeof(PST));
- }
- free( l );
- }
- sf->glyphs[j]->ligofme = NULL;
- }
-}
-
-void SFLigaturePrepare(SplineFont *sf) {
- PST *lig;
- LigList *ll;
- int i,j,k,ch;
- char *pt, *ligstart;
- SplineChar *sc, *tsc;
- struct splinecharlist *head, *last;
- int ccnt, lcnt, lmax=20;
- LigList **all = malloc(lmax*sizeof(LigList *));
-
- /* First clear out any old stuff */
- for ( j=0; j<sf->glyphcnt; ++j ) if ( sf->glyphs[j]!=NULL )
- sf->glyphs[j]->ligofme = NULL;
-
- /* Attach all the ligatures to the first character of their components */
- /* Figure out what the components are, and if they all exist */
- /* we're only interested in the lig if all components are worth outputting */
- for ( i=0 ; i<sf->glyphcnt; ++i ) if ( SCWorthOutputting(sf->glyphs[i]) && sf->glyphs[i]->possub!=NULL ) {
- for ( lig = sf->glyphs[i]->possub; lig!=NULL; lig=lig->next ) if ( lig->type==pst_ligature ) {
- ligstart = lig->u.lig.components;
- last = head = NULL; sc = NULL;
- for ( pt = ligstart; *pt!='\0'; ) {
- char *start = pt;
- for ( ; *pt!='\0' && *pt!=' '; ++pt );
- ch = *pt; *pt = '\0';
- tsc = SFGetChar(sf,-1,start);
- *pt = ch;
- if ( tsc!=NULL ) {
- if ( !SCWorthOutputting(tsc)) {
- sc = NULL;
- break;
- }
- if ( sc==NULL ) {
- sc = tsc;
- ccnt = 1;
- } else {
- struct splinecharlist *cur = chunkalloc(sizeof(struct splinecharlist));
- if ( head==NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
- cur->sc = tsc;
- cur->next = NULL;
- ++ccnt;
- }
- } else {
- sc = NULL;
- break;
- }
- while ( *pt==' ' ) ++pt;
- }
- if ( sc!=NULL ) {
- ll = malloc(sizeof(LigList));
- ll->lig = lig;
- ll->next = sc->ligofme;
- ll->first = sc;
- ll->components = head;
- ll->ccnt = ccnt;
- sc->ligofme = ll;
- } else {
- while ( head!=NULL ) {
- last = head->next;
- chunkfree(head,sizeof(*head));
- head = last;
- }
- }
- }
- }
- for ( i=0 ; i<sf->glyphcnt; ++i ) if ( (sc=sf->glyphs[i])!=NULL && sc->ligofme!=NULL ) {
- for ( ll=sc->ligofme, lcnt=0; ll!=NULL; ll=ll->next, ++lcnt );
- /* Finally, order the list so that the longest ligatures are first */
- if ( lcnt>1 ) {
- if ( lcnt>=lmax )
- all = realloc(all,(lmax=lcnt+30)*sizeof(LigList *));
- for ( ll=sc->ligofme, k=0; ll!=NULL; ll=ll->next, ++k )
- all[k] = ll;
- for ( k=0; k<lcnt-1; ++k ) for ( j=k+1; j<lcnt; ++j )
- if ( all[k]->ccnt<all[j]->ccnt ) {
- ll = all[k];
- all[k] = all[j];
- all[j] = ll;
- }
- sc->ligofme = all[0];
- for ( k=0; k<lcnt-1; ++k )
- all[k]->next = all[k+1];
- all[k]->next = NULL;
- }
- }
- free( all );
-}
-
-void SFKernCleanup(SplineFont *sf,int isv) {
- int i;
- KernPair *kp, *p, *n;
- OTLookup *otl, *otlp, *otln;
-
- if (sf->internal_temp)
-return;
-
- if ( (!isv && sf->kerns==NULL) || (isv && sf->vkerns==NULL) ) /* can't have gotten messed up */
-return;
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- for ( kp = isv ? sf->glyphs[i]->vkerns : sf->glyphs[i]->kerns, p=NULL; kp!=NULL; kp = n ) {
- n = kp->next;
- if ( kp->kcid!=0 ) {
- if ( p!=NULL )
- p->next = n;
- else if ( isv )
- sf->glyphs[i]->vkerns = n;
- else
- sf->glyphs[i]->kerns = n;
- chunkfree(kp,sizeof(*kp));
- } else
- p = kp;
- }
- }
- for ( otl=sf->gpos_lookups, otlp = NULL; otl!=NULL; otl = otln ) {
- otln = otl->next;
- if ( otl->temporary_kern ) {
- if ( otlp!=NULL )
- otlp->next = otln;
- else
- sf->gpos_lookups = otln;
- OTLookupFree(otl);
- } else
- otlp = otl;
- }
-}
-
-static void KCSfree(SplineChar ***scs,int cnt) {
- int i;
- for ( i=1; i<cnt; ++i )
- free( scs[i]);
- free(scs);
-}
-
-static SplineChar ***KernClassToSC(SplineFont *sf, char **classnames, int cnt) {
- SplineChar ***scs, *sc;
- int i,j;
- char *pt, *end, ch;
-
- scs = malloc(cnt*sizeof(SplineChar **));
- for ( i=1; i<cnt; ++i ) {
- for ( pt=classnames[i]-1, j=0; pt!=NULL; pt=strchr(pt+1,' ') )
- ++j;
- scs[i] = malloc((j+1)*sizeof(SplineChar *));
- for ( pt=classnames[i], j=0; *pt!='\0'; pt=end+1 ) {
- end = strchr(pt,' ');
- if ( end==NULL )
- end = pt+strlen(pt);
- ch = *end;
- *end = '\0';
- sc = SFGetChar(sf,-1,pt);
- if ( sc!=NULL )
- scs[i][j++] = sc;
- if ( ch=='\0' )
- break;
- *end = ch;
- }
- scs[i][j] = NULL;
- }
-return( scs );
-}
-
-static void AddTempKP(SplineChar *first,SplineChar *second,
- int16 offset, struct lookup_subtable *sub,uint16 kcid,int isv) {
- KernPair *kp;
-
- for ( kp=first->kerns; kp!=NULL; kp=kp->next )
- if ( kp->sc == second )
- break;
- if ( kp==NULL ) {
- kp = chunkalloc(sizeof(KernPair));
- kp->sc = second;
- kp->off = offset;
- kp->subtable = sub;
- kp->kcid = kcid;
- if ( isv ) {
- kp->next = first->vkerns;
- first->vkerns = kp;
- } else {
- kp->next = first->kerns;
- first->kerns = kp;
- }
- }
-}
-
-void SFKernClassTempDecompose(SplineFont *sf,int isv) {
- KernClass *kc, *head= isv ? sf->vkerns : sf->kerns;
- KernPair *kp;
- SplineChar ***first, ***last;
- int i, j, k, l;
- OTLookup *otl;
-
- /* Make sure the temporary field is cleaned up. Otherwise we may lose kerning data */
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- for ( kp = isv ? sf->glyphs[i]->vkerns : sf->glyphs[i]->kerns; kp!=NULL; kp = kp->next ) {
- kp->kcid = false;
- }
- }
- for ( kc = head, i=0; kc!=NULL; kc = kc->next )
- kc->kcid = ++i;
- for ( kc = head; kc!=NULL; kc = kc->next ) {
-
- otl = chunkalloc(sizeof(OTLookup));
- otl->next = sf->gpos_lookups;
- sf->gpos_lookups = otl;
- otl->lookup_type = gpos_pair;
- otl->lookup_flags = kc->subtable->lookup->lookup_flags;
- otl->features = FeatureListCopy(kc->subtable->lookup->features);
- otl->lookup_name = copy(_("<Temporary kerning>"));
- otl->temporary_kern = otl->store_in_afm = true;
- otl->subtables = chunkalloc(sizeof(struct lookup_subtable));
- otl->subtables->lookup = otl;
- otl->subtables->per_glyph_pst_or_kern = true;
- otl->subtables->subtable_name = copy(_("<Temporary kerning>"));
-
- first = KernClassToSC(sf,kc->firsts,kc->first_cnt);
- last = KernClassToSC(sf,kc->seconds,kc->second_cnt);
- for ( i=1; i<kc->first_cnt; ++i ) for ( j=1; j<kc->second_cnt; ++j ) {
- if ( kc->offsets[i*kc->second_cnt+j]!=0 ) {
- for ( k=0; first[i][k]!=NULL; ++k )
- for ( l=0; last[j][l]!=NULL; ++l )
- AddTempKP(first[i][k],last[j][l],
- kc->offsets[i*kc->second_cnt+j],
- otl->subtables,kc->kcid,isv);
- }
- }
- KCSfree(first,kc->first_cnt);
- KCSfree(last,kc->second_cnt);
- }
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/splineutil.c b/dviware/dvisvgm/libs/ff-woff/fontforge/splineutil.c
deleted file mode 100644
index 4f96e87a30..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/splineutil.c
+++ /dev/null
@@ -1,3579 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-#include "encoding.h"
-#include <math.h>
-
-#ifdef HAVE_IEEEFP_H
-# include <ieeefp.h> /* Solaris defines isnan in ieeefp rather than math.h */
-#endif
-
-#include "sfd1.h" // This has the extended SplineFont type SplineFont1 for old file versions.
-#ifdef FF_UTHASH_GLIF_NAMES
-# include "glif_name_hash.h"
-#endif
-
-
-/*#define DEBUG 1*/
-
-typedef struct quartic {
- bigreal a,b,c,d,e;
-} Quartic;
-
-/* In an attempt to make allocation more efficient I just keep preallocated */
-/* lists of certain common sizes. It doesn't seem to make much difference */
-/* when allocating stuff, but does when freeing. If the extra complexity */
-/* is bad then put: */
-/* #define chunkalloc(size) calloc(1,size) */
-/* #define chunkfree(item,size) free(item) */
-/* into splinefont.h after (or instead of) the definition of chunkalloc()*/
-
-#define ALLOC_CHUNK 100 /* Number of small chunks to malloc at a time */
-#ifndef FONTFORGE_CONFIG_USE_DOUBLE
-# define CHUNK_MAX 100 /* Maximum size (in chunk units) that we are prepared to allocate */
- /* The size of our data structures */
-#else
-# define CHUNK_MAX 129
-#endif
-# define CHUNK_UNIT sizeof(void *) /* will vary with the word size of */
- /* the machine. if pointers are 64 bits*/
- /* we may need twice as much space as for 32 bits */
-
-#ifdef FLAG
-#undef FLAG
-#define FLAG 0xbadcafe
-#endif
-
-#ifdef CHUNKDEBUG
-static int chunkdebug = 0; /* When this is set we never free anything, insuring that each chunk is unique */
-#endif
-
-#if ALLOC_CHUNK>1
-struct chunk { struct chunk *next; };
-struct chunk2 { struct chunk2 *next; int flag; };
-#endif
-
-#if defined(FLAG) && ALLOC_CHUNK>1
-void chunktest(void) {
- int i;
- struct chunk2 *c;
-
- for ( i=2; i<CHUNK_MAX; ++i )
- for ( c=(struct chunk2 *) chunklists[i]; c!=NULL; c=c->next )
- if ( c->flag!=FLAG ) {
- fprintf( stderr, "Chunk memory list has been corrupted\n" );
- abort();
- }
-}
-#endif
-
-void LineListFree(LineList *ll) {
- LineList *next;
-
- while ( ll!=NULL ) {
- next = ll->next;
- chunkfree(ll,sizeof(LineList));
- ll = next;
- }
-}
-
-void LinearApproxFree(LinearApprox *la) {
- LinearApprox *next;
-
- while ( la!=NULL ) {
- next = la->next;
- LineListFree(la->lines);
- chunkfree(la,sizeof(LinearApprox));
- la = next;
- }
-}
-
-void SplineFree(Spline *spline) {
- LinearApproxFree(spline->approx);
- chunkfree(spline,sizeof(Spline));
-}
-
-SplinePoint *SplinePointCreate(real x, real y) {
- SplinePoint *sp;
- if ( (sp=chunkalloc(sizeof(SplinePoint)))!=NULL ) {
- sp->me.x = x; sp->me.y = y;
- sp->nextcp = sp->prevcp = sp->me;
- sp->nonextcp = sp->noprevcp = true;
- sp->nextcpdef = sp->prevcpdef = false;
- sp->ttfindex = sp->nextcpindex = 0xfffe;
- sp->name = NULL;
- }
- return( sp );
-}
-
-Spline *SplineMake3(SplinePoint *from, SplinePoint *to) {
- Spline *spline = chunkalloc(sizeof(Spline));
-
- spline->from = from; spline->to = to;
- from->next = to->prev = spline;
- SplineRefigure3(spline);
-return( spline );
-}
-
-void SplinePointFree(SplinePoint *sp) {
- chunkfree(sp->hintmask,sizeof(HintMask));
- free(sp->name);
- chunkfree(sp,sizeof(SplinePoint));
-}
-
-void SplinePointsFree(SplinePointList *spl) {
- Spline *first, *spline, *next;
- int nonext;
-
- if ( spl==NULL )
- return;
- if ( spl->first!=NULL ) {
- nonext = spl->first->next==NULL; // If there is no spline, we set a flag.
- first = NULL;
- // We start on the first spline if it exists.
- for ( spline = spl->first->next; spline!=NULL && spline!=first; spline = next ) {
- next = spline->to->next; // Cache the location of the next spline.
- SplinePointFree(spline->to); // Free the destination point.
- SplineFree(spline); // Free the spline.
- if ( first==NULL ) first = spline; // We want to avoid repeating the circuit.
- }
- // If the path is open or has no splines, free the starting point.
- if ( spl->last!=spl->first || nonext )
- SplinePointFree(spl->first);
- }
-}
-
-void SplinePointListFree(SplinePointList *spl) {
-
- if ( spl==NULL ) return;
- SplinePointsFree(spl);
- free(spl->spiros);
- free(spl->contour_name);
- chunkfree(spl,sizeof(SplinePointList));
-}
-
-void SplinePointListsFree(SplinePointList *spl) {
- SplinePointList *next;
-
- while ( spl!=NULL ) {
- next = spl->next;
- SplinePointListFree(spl);
- spl = next;
- }
-}
-
-void SplineSetSpirosClear(SplineSet *spl) {
- free(spl->spiros);
- spl->spiros = NULL;
- spl->spiro_cnt = spl->spiro_max = 0;
-}
-
-
-void RefCharFree(RefChar *ref) {
- int i;
-
- if ( ref==NULL )
-return;
- for ( i=0; i<ref->layer_cnt; ++i ) {
- SplinePointListsFree(ref->layers[i].splines);
- GradientFree(ref->layers[i].fill_brush.gradient);
- GradientFree(ref->layers[i].stroke_pen.brush.gradient);
- PatternFree(ref->layers[i].fill_brush.pattern);
- PatternFree(ref->layers[i].stroke_pen.brush.pattern);
- }
- free(ref->layers);
- chunkfree(ref,sizeof(RefChar));
-}
-
-RefChar *RefCharCreate(void) {
- RefChar *ref = chunkalloc(sizeof(RefChar));
- ref->layer_cnt = 1;
- ref->layers = calloc(1,sizeof(struct reflayer));
- ref->layers[0].fill_brush.opacity = ref->layers[0].stroke_pen.brush.opacity = 1.0;
- ref->layers[0].fill_brush.col = ref->layers[0].stroke_pen.brush.col = COLOR_INHERITED;
- ref->layers[0].stroke_pen.width = WIDTH_INHERITED;
- ref->layers[0].stroke_pen.linecap = lc_inherited;
- ref->layers[0].stroke_pen.linejoin = lj_inherited;
- ref->layers[0].dofill = true;
- ref->round_translation_to_grid = true;
-return( ref );
-}
-
-void RefCharsFree(RefChar *ref) {
- RefChar *rnext;
-
- while ( ref!=NULL ) {
- rnext = ref->next;
- RefCharFree(ref);
- ref = rnext;
- }
-}
-
-typedef struct spline1 {
- Spline1D sp;
- real s0, s1;
- real c0, c1;
-} Spline1;
-
-static void FigureSpline1(Spline1 *sp1,bigreal t0, bigreal t1, Spline1D *sp ) {
- bigreal s = (t1-t0);
- if ( sp->a==0 && sp->b==0 ) {
- sp1->sp.d = sp->d + t0*sp->c;
- sp1->sp.c = s*sp->c;
- sp1->sp.b = sp1->sp.a = 0;
- } else {
- sp1->sp.d = sp->d + t0*(sp->c + t0*(sp->b + t0*sp->a));
- sp1->sp.c = s*(sp->c + t0*(2*sp->b + 3*sp->a*t0));
- sp1->sp.b = s*s*(sp->b+3*sp->a*t0);
- sp1->sp.a = s*s*s*sp->a;
- }
- sp1->c0 = sp1->sp.c/3 + sp1->sp.d;
- sp1->c1 = sp1->c0 + (sp1->sp.b+sp1->sp.c)/3;
-}
-
-static void SplineFindBounds(const Spline *sp, DBounds *bounds) {
- real t, b2_fourac, v;
- real min, max;
- const Spline1D *sp1;
- int i;
-
- /* first try the end points */
- for ( i=0; i<2; ++i ) {
- sp1 = &sp->splines[i];
- if ( i==0 ) {
- if ( sp->to->me.x<bounds->minx ) bounds->minx = sp->to->me.x;
- if ( sp->to->me.x>bounds->maxx ) bounds->maxx = sp->to->me.x;
- min = bounds->minx; max = bounds->maxx;
- } else {
- if ( sp->to->me.y<bounds->miny ) bounds->miny = sp->to->me.y;
- if ( sp->to->me.y>bounds->maxy ) bounds->maxy = sp->to->me.y;
- min = bounds->miny; max = bounds->maxy;
- }
-
- /* then try the extrema of the spline (assuming they are between t=(0,1) */
- /* (I don't bother fixing up for tiny rounding errors here. they don't matter */
- /* But we could call CheckExtremaForSingleBitErrors */
- if ( sp1->a!=0 ) {
- b2_fourac = 4*sp1->b*sp1->b - 12*sp1->a*sp1->c;
- if ( b2_fourac>=0 ) {
- b2_fourac = sqrt(b2_fourac);
- t = (-2*sp1->b + b2_fourac) / (6*sp1->a);
- if ( t>0 && t<1 ) {
- v = ((sp1->a*t+sp1->b)*t+sp1->c)*t + sp1->d;
- if ( v<min ) min = v;
- if ( v>max ) max = v;
- }
- t = (-2*sp1->b - b2_fourac) / (6*sp1->a);
- if ( t>0 && t<1 ) {
- v = ((sp1->a*t+sp1->b)*t+sp1->c)*t + sp1->d;
- if ( v<min ) min = v;
- if ( v>max ) max = v;
- }
- }
- } else if ( sp1->b!=0 ) {
- t = -sp1->c/(2.0*sp1->b);
- if ( t>0 && t<1 ) {
- v = (sp1->b*t+sp1->c)*t + sp1->d;
- if ( v<min ) min = v;
- if ( v>max ) max = v;
- }
- }
- if ( i==0 ) {
- bounds->minx = min; bounds->maxx = max;
- } else {
- bounds->miny = min; bounds->maxy = max;
- }
- }
-}
-
-static void _SplineSetFindBounds(const SplinePointList *spl, DBounds *bounds) {
- Spline *spline, *first;
- /* Ignore contours consisting of a single point (used for hinting, anchors */
- /* for mark to base, etc. */
-
- for ( ; spl!=NULL; spl = spl->next ) if ( spl->first->next!=NULL && spl->first->next->to != spl->first ) {
- first = NULL;
- if ( bounds->minx==0 && bounds->maxx==0 && bounds->miny==0 && bounds->maxy == 0 ) {
- bounds->minx = bounds->maxx = spl->first->me.x;
- bounds->miny = bounds->maxy = spl->first->me.y;
- } else {
- if ( spl->first->me.x<bounds->minx ) bounds->minx = spl->first->me.x;
- if ( spl->first->me.x>bounds->maxx ) bounds->maxx = spl->first->me.x;
- if ( spl->first->me.y<bounds->miny ) bounds->miny = spl->first->me.y;
- if ( spl->first->me.y>bounds->maxy ) bounds->maxy = spl->first->me.y;
- }
- for ( spline = spl->first->next; spline!=NULL && spline!=first; spline=spline->to->next ) {
- SplineFindBounds(spline,bounds);
- if ( first==NULL ) first = spline;
- }
- }
-}
-
-static void _SplineSetFindClippedBounds(const SplinePointList *spl, DBounds *bounds,DBounds *clipb) {
- Spline *spline, *first;
- /* Ignore contours consisting of a single point (used for hinting, anchors */
- /* for mark to base, etc. */
-
- for ( ; spl!=NULL; spl = spl->next ) if ( spl->first->next!=NULL && spl->first->next->to != spl->first ) {
- first = NULL;
- if ( !spl->is_clip_path ) {
- if ( bounds->minx==0 && bounds->maxx==0 && bounds->miny==0 && bounds->maxy == 0 ) {
- bounds->minx = bounds->maxx = spl->first->me.x;
- bounds->miny = bounds->maxy = spl->first->me.y;
- } else {
- if ( spl->first->me.x<bounds->minx ) bounds->minx = spl->first->me.x;
- if ( spl->first->me.x>bounds->maxx ) bounds->maxx = spl->first->me.x;
- if ( spl->first->me.y<bounds->miny ) bounds->miny = spl->first->me.y;
- if ( spl->first->me.y>bounds->maxy ) bounds->maxy = spl->first->me.y;
- }
- for ( spline = spl->first->next; spline!=NULL && spline!=first; spline=spline->to->next ) {
- SplineFindBounds(spline,bounds);
- if ( first==NULL ) first = spline;
- }
- } else {
- if ( clipb->minx==0 && clipb->maxx==0 && clipb->miny==0 && clipb->maxy == 0 ) {
- clipb->minx = clipb->maxx = spl->first->me.x;
- clipb->miny = clipb->maxy = spl->first->me.y;
- } else {
- if ( spl->first->me.x<clipb->minx ) clipb->minx = spl->first->me.x;
- if ( spl->first->me.x>clipb->maxx ) clipb->maxx = spl->first->me.x;
- if ( spl->first->me.y<clipb->miny ) clipb->miny = spl->first->me.y;
- if ( spl->first->me.y>clipb->maxy ) clipb->maxy = spl->first->me.y;
- }
- for ( spline = spl->first->next; spline!=NULL && spline!=first; spline=spline->to->next ) {
- SplineFindBounds(spline,clipb);
- if ( first==NULL ) first = spline;
- }
- }
- }
-}
-
-static void _SplineCharLayerFindBounds(SplineChar *sc,int layer, DBounds *bounds) {
- RefChar *rf;
- real e;
- DBounds b, clipb;
-
- for ( rf=sc->layers[layer].refs; rf!=NULL; rf = rf->next ) {
- if ( bounds->minx==0 && bounds->maxx==0 && bounds->miny==0 && bounds->maxy == 0 )
- *bounds = rf->bb;
- else if ( rf->bb.minx!=0 || rf->bb.maxx != 0 || rf->bb.maxy != 0 || rf->bb.miny!=0 ) {
- if ( rf->bb.minx < bounds->minx ) bounds->minx = rf->bb.minx;
- if ( rf->bb.miny < bounds->miny ) bounds->miny = rf->bb.miny;
- if ( rf->bb.maxx > bounds->maxx ) bounds->maxx = rf->bb.maxx;
- if ( rf->bb.maxy > bounds->maxy ) bounds->maxy = rf->bb.maxy;
- }
- }
- memset(&b,0,sizeof(b));
- memset(&clipb,0,sizeof(clipb));
- _SplineSetFindClippedBounds(sc->layers[layer].splines,&b,&clipb);
- if ( sc->layers[layer].dostroke ) {
- if ( sc->layers[layer].stroke_pen.width!=WIDTH_INHERITED )
- e = sc->layers[layer].stroke_pen.width*sc->layers[layer].stroke_pen.trans[0];
- else
- e = sc->layers[layer].stroke_pen.trans[0];
- b.minx -= e; b.maxx += e;
- b.miny -= e; b.maxy += e;
- }
- if ( clipb.minx!=0 || clipb.miny!=0 || clipb.maxx!=0 || clipb.maxy!=0 ) {
- if ( b.minx<clipb.minx ) b.minx = clipb.minx;
- if ( b.miny<clipb.miny ) b.miny = clipb.miny;
- if ( b.maxx>clipb.maxx ) b.maxx = clipb.maxx;
- if ( b.maxy>clipb.maxy ) b.maxy = clipb.maxy;
- }
- if ( bounds->minx==0 && bounds->maxx==0 && bounds->miny==0 && bounds->maxy == 0 )
- *bounds = b;
- else if ( b.minx!=0 || b.maxx != 0 || b.maxy != 0 || b.miny!=0 ) {
- if ( b.minx < bounds->minx ) bounds->minx = b.minx;
- if ( b.miny < bounds->miny ) bounds->miny = b.miny;
- if ( b.maxx > bounds->maxx ) bounds->maxx = b.maxx;
- if ( b.maxy > bounds->maxy ) bounds->maxy = b.maxy;
- }
-
- if ( sc->parent!=NULL && sc->parent->strokedfont &&
- (bounds->minx!=bounds->maxx || bounds->miny!=bounds->maxy)) {
- real sw = sc->parent->strokewidth;
- bounds->minx -= sw; bounds->miny -= sw;
- bounds->maxx += sw; bounds->maxy += sw;
- }
-}
-
-void SplineCharLayerFindBounds(SplineChar *sc,int layer,DBounds *bounds) {
-
- if ( sc->parent!=NULL && sc->parent->multilayer ) {
- SplineCharFindBounds(sc,bounds);
-return;
- }
-
- /* a char with no splines (ie. a space) must have an lbearing of 0 */
- bounds->minx = bounds->maxx = 0;
- bounds->miny = bounds->maxy = 0;
-
- _SplineCharLayerFindBounds(sc,layer,bounds);
-}
-
-void SplineCharFindBounds(SplineChar *sc,DBounds *bounds) {
- int i;
- int first,last;
-
- /* a char with no splines (ie. a space) must have an lbearing of 0 */
- bounds->minx = bounds->maxx = 0;
- bounds->miny = bounds->maxy = 0;
-
- first = last = ly_fore;
- if ( sc->parent!=NULL && sc->parent->multilayer )
- last = sc->layer_cnt-1;
- for ( i=first; i<=last; ++i )
- _SplineCharLayerFindBounds(sc,i,bounds);
-}
-
-void SplineFontLayerFindBounds(SplineFont *sf,int layer,DBounds *bounds) {
- int i, k, first, last;
-
- if ( sf->multilayer ) {
- SplineFontFindBounds(sf,bounds);
-return;
- }
-
- bounds->minx = bounds->maxx = 0;
- bounds->miny = bounds->maxy = 0;
-
- for ( i = 0; i<sf->glyphcnt; ++i ) {
- SplineChar *sc = sf->glyphs[i];
- if ( sc!=NULL ) {
- first = last = ly_fore;
- if ( sc->parent != NULL && sc->parent->multilayer )
- last = sc->layer_cnt-1;
- for ( k=first; k<=last; ++k )
- _SplineCharLayerFindBounds(sc,k,bounds);
- }
- }
-}
-
-void SplineFontFindBounds(SplineFont *sf,DBounds *bounds) {
- int i, k, first, last;
-
- bounds->minx = bounds->maxx = 0;
- bounds->miny = bounds->maxy = 0;
-
- for ( i = 0; i<sf->glyphcnt; ++i ) {
- SplineChar *sc = sf->glyphs[i];
- if ( sc!=NULL ) {
- first = last = ly_fore;
- if ( sf->multilayer )
- last = sc->layer_cnt-1;
- for ( k=first; k<=last; ++k )
- _SplineCharLayerFindBounds(sc,k,bounds);
- }
- }
-}
-
-void CIDLayerFindBounds(SplineFont *cidmaster,int layer,DBounds *bounds) {
- SplineFont *sf;
- int i;
- DBounds b;
- real factor;
-
- if ( cidmaster->cidmaster )
- cidmaster = cidmaster->cidmaster;
- if ( cidmaster->subfonts==NULL ) {
- SplineFontLayerFindBounds(cidmaster,layer,bounds);
-return;
- }
-
- sf = cidmaster->subfonts[0];
- SplineFontLayerFindBounds(sf,layer,bounds);
- factor = 1000.0/(sf->ascent+sf->descent);
- bounds->maxx *= factor; bounds->minx *= factor; bounds->miny *= factor; bounds->maxy *= factor;
- for ( i=1; i<cidmaster->subfontcnt; ++i ) {
- sf = cidmaster->subfonts[i];
- SplineFontLayerFindBounds(sf,layer,&b);
- factor = 1000.0/(sf->ascent+sf->descent);
- b.maxx *= factor; b.minx *= factor; b.miny *= factor; b.maxy *= factor;
- if ( b.maxx>bounds->maxx ) bounds->maxx = b.maxx;
- if ( b.maxy>bounds->maxy ) bounds->maxy = b.maxy;
- if ( b.miny<bounds->miny ) bounds->miny = b.miny;
- if ( b.minx<bounds->minx ) bounds->minx = b.minx;
- }
-}
-
-static void _SplineSetFindTop(SplineSet *ss,BasePoint *top) {
- SplinePoint *sp;
-
- for ( ; ss!=NULL; ss=ss->next ) {
- for ( sp=ss->first; ; ) {
- if ( sp->me.y > top->y ) *top = sp->me;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==ss->first )
- break;
- }
- }
-}
-
-void SplineSetQuickBounds(SplineSet *ss,DBounds *b) {
- SplinePoint *sp;
-
- b->minx = b->miny = 1e10;
- b->maxx = b->maxy = -1e10;
- for ( ; ss!=NULL; ss=ss->next ) {
- for ( sp=ss->first; ; ) {
- if ( sp->me.y < b->miny ) b->miny = sp->me.y;
- if ( sp->me.x < b->minx ) b->minx = sp->me.x;
- if ( sp->me.y > b->maxy ) b->maxy = sp->me.y;
- if ( sp->me.x > b->maxx ) b->maxx = sp->me.x;
- // Frank added the control points to the calculation since,
- // according to Adam Twardoch,
- // the OpenType values that rely upon this function
- // expect control points to be included.
- if ( !sp->noprevcp ) {
- if ( sp->prevcp.y < b->miny ) b->miny = sp->prevcp.y;
- if ( sp->prevcp.x < b->minx ) b->minx = sp->prevcp.x;
- if ( sp->prevcp.y > b->maxy ) b->maxy = sp->prevcp.y;
- if ( sp->prevcp.x > b->maxx ) b->maxx = sp->prevcp.x;
- }
- if ( !sp->nonextcp ) {
- if ( sp->nextcp.y < b->miny ) b->miny = sp->nextcp.y;
- if ( sp->nextcp.x < b->minx ) b->minx = sp->nextcp.x;
- if ( sp->nextcp.y > b->maxy ) b->maxy = sp->nextcp.y;
- if ( sp->nextcp.x > b->maxx ) b->maxx = sp->nextcp.x;
- }
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==ss->first )
- break;
- }
- }
- if ( b->minx>65536 ) b->minx = 0;
- if ( b->miny>65536 ) b->miny = 0;
- if ( b->maxx<-65536 ) b->maxx = 0;
- if ( b->maxy<-65536 ) b->maxy = 0;
-}
-
-void SplineCharQuickBounds(SplineChar *sc, DBounds *b) {
- RefChar *ref;
- int i,first, last;
- DBounds temp;
- real e;
-
- b->minx = b->miny = 1e10;
- b->maxx = b->maxy = -1e10;
- first = last = ly_fore;
- if ( sc->parent!=NULL && sc->parent->multilayer )
- last = sc->layer_cnt-1;
- for ( i=first; i<=last; ++i ) {
- SplineSetQuickBounds(sc->layers[i].splines,&temp);
- if ( sc->layers[i].dostroke && sc->layers[i].splines!=NULL ) {
- if ( sc->layers[i].stroke_pen.width!=WIDTH_INHERITED )
- e = sc->layers[i].stroke_pen.width*sc->layers[i].stroke_pen.trans[0];
- else
- e = sc->layers[i].stroke_pen.trans[0];
- temp.minx -= e; temp.maxx += e;
- temp.miny -= e; temp.maxy += e;
- }
- if ( temp.minx!=0 || temp.maxx != 0 || temp.maxy != 0 || temp.miny!=0 ) {
- if ( temp.minx < b->minx ) b->minx = temp.minx;
- if ( temp.miny < b->miny ) b->miny = temp.miny;
- if ( temp.maxx > b->maxx ) b->maxx = temp.maxx;
- if ( temp.maxy > b->maxy ) b->maxy = temp.maxy;
- }
- for ( ref = sc->layers[i].refs; ref!=NULL; ref = ref->next ) {
- /*SplineSetQuickBounds(ref->layers[0].splines,&temp);*/
- if ( b->minx==0 && b->maxx==0 && b->miny==0 && b->maxy == 0 )
- *b = ref->bb;
- else if ( ref->bb.minx!=0 || ref->bb.maxx != 0 || ref->bb.maxy != 0 || ref->bb.miny!=0 ) {
- if ( ref->bb.minx < b->minx ) b->minx = ref->bb.minx;
- if ( ref->bb.miny < b->miny ) b->miny = ref->bb.miny;
- if ( ref->bb.maxx > b->maxx ) b->maxx = ref->bb.maxx;
- if ( ref->bb.maxy > b->maxy ) b->maxy = ref->bb.maxy;
- }
- }
- }
- if ( sc->parent!=NULL && sc->parent->strokedfont &&
- (b->minx!=b->maxx || b->miny!=b->maxy)) {
- real sw = sc->parent->strokewidth;
- b->minx -= sw; b->miny -= sw;
- b->maxx += sw; b->maxy += sw;
- }
- if ( b->minx>1e9 )
- memset(b,0,sizeof(*b));
-}
-
-void SplineCharLayerQuickBounds(SplineChar *sc,int layer,DBounds *bounds) {
- RefChar *ref;
- DBounds temp;
-
- if ( sc->parent!=NULL && sc->parent->multilayer ) {
- SplineCharQuickBounds(sc,bounds);
-return;
- }
-
- bounds->minx = bounds->miny = 1e10;
- bounds->maxx = bounds->maxy = -1e10;
-
- SplineSetQuickBounds(sc->layers[layer].splines,bounds);
-
- for ( ref = sc->layers[layer].refs; ref!=NULL; ref = ref->next ) {
- SplineSetQuickBounds(ref->layers[0].splines,&temp);
- if ( bounds->minx==0 && bounds->maxx==0 && bounds->miny==0 && bounds->maxy == 0 )
- *bounds = temp;
- else if ( temp.minx!=0 || temp.maxx != 0 || temp.maxy != 0 || temp.miny!=0 ) {
- if ( temp.minx < bounds->minx ) bounds->minx = temp.minx;
- if ( temp.miny < bounds->miny ) bounds->miny = temp.miny;
- if ( temp.maxx > bounds->maxx ) bounds->maxx = temp.maxx;
- if ( temp.maxy > bounds->maxy ) bounds->maxy = temp.maxy;
- }
- }
- /* a char with no splines (ie. a space) must have an lbearing of 0 */
- if ( bounds->minx>1e9 )
- memset(bounds,0,sizeof(*bounds));
-}
-
-void SplinePointCategorize(SplinePoint *sp) {
- int oldpointtype = sp->pointtype;
-
- sp->pointtype = pt_corner;
- if ( sp->next==NULL && sp->prev==NULL )
- ;
- else if ( (sp->next!=NULL && sp->next->to->me.x==sp->me.x && sp->next->to->me.y==sp->me.y) ||
- (sp->prev!=NULL && sp->prev->from->me.x==sp->me.x && sp->prev->from->me.y==sp->me.y ))
- ;
- else if ( sp->next==NULL ) {
- sp->pointtype = sp->noprevcp ? pt_corner : pt_curve;
- } else if ( sp->prev==NULL ) {
- sp->pointtype = sp->nonextcp ? pt_corner : pt_curve;
- } else if ( sp->nonextcp && sp->noprevcp ) {
- ;
- } else {
- BasePoint ndir, ncdir, ncunit, pdir, pcdir, pcunit;
- bigreal nlen, nclen, plen, pclen;
- bigreal cross, bounds;
-
- ncdir.x = sp->nextcp.x - sp->me.x; ncdir.y = sp->nextcp.y - sp->me.y;
- pcdir.x = sp->prevcp.x - sp->me.x; pcdir.y = sp->prevcp.y - sp->me.y;
- ndir.x = ndir.y = pdir.x = pdir.y = 0;
- if ( sp->next!=NULL ) {
- ndir.x = sp->next->to->me.x - sp->me.x; ndir.y = sp->next->to->me.y - sp->me.y;
- }
- if ( sp->prev!=NULL ) {
- pdir.x = sp->prev->from->me.x - sp->me.x; pdir.y = sp->prev->from->me.y - sp->me.y;
- }
- nclen = sqrt(ncdir.x*ncdir.x + ncdir.y*ncdir.y);
- pclen = sqrt(pcdir.x*pcdir.x + pcdir.y*pcdir.y);
- nlen = sqrt(ndir.x*ndir.x + ndir.y*ndir.y);
- plen = sqrt(pdir.x*pdir.x + pdir.y*pdir.y);
- ncunit = ncdir; pcunit = pcdir;
- if ( nclen!=0 ) { ncunit.x /= nclen; ncunit.y /= nclen; }
- if ( pclen!=0 ) { pcunit.x /= pclen; pcunit.y /= pclen; }
- if ( nlen!=0 ) { ndir.x /= nlen; ndir.y /= nlen; }
- if ( plen!=0 ) { pdir.x /= plen; pdir.y /= plen; }
-
- /* find out which side has the shorter control vector. Cross that vector */
- /* with the normal of the unit vector on the other side. If the */
- /* result is less than 1 em-unit then we've got colinear control points */
- /* (within the resolution of the integer grid) */
- /* Not quite... they could point in the same direction */
- if ( oldpointtype==pt_curve )
- bounds = 4.0;
- else
- bounds = 1.0;
- if ( nclen!=0 && pclen!=0 &&
- ((nclen>=pclen && (cross = pcdir.x*ncunit.y - pcdir.y*ncunit.x)<bounds && cross>-bounds ) ||
- (pclen>nclen && (cross = ncdir.x*pcunit.y - ncdir.y*pcunit.x)<bounds && cross>-bounds )) &&
- ncdir.x*pcdir.x + ncdir.y*pcdir.y < 0 )
- sp->pointtype = pt_curve;
- /* Cross product of control point with unit vector normal to line in */
- /* opposite direction should be less than an em-unit for a tangent */
- else if (( nclen==0 && pclen!=0 && (cross = pcdir.x*ndir.y-pcdir.y*ndir.x)<bounds && cross>-bounds ) ||
- ( pclen==0 && nclen!=0 && (cross = ncdir.x*pdir.y-ncdir.y*pdir.x)<bounds && cross>-bounds ))
- sp->pointtype = pt_tangent;
-
- /* If a point started out hv, and could still be hv, them make it so */
- /* but don't make hv points de novo, Alexey doesn't like change */
- /* (this only works because hv isn't a default setting, so if it's */
- /* there it was done intentionally) */
- if ( sp->pointtype == pt_curve && oldpointtype == pt_hvcurve &&
- ((sp->nextcp.x==sp->me.x && sp->prevcp.x==sp->me.x && sp->nextcp.y!=sp->me.y) ||
- (sp->nextcp.y==sp->me.y && sp->prevcp.y==sp->me.y && sp->nextcp.x!=sp->me.x)))
- sp->pointtype = pt_hvcurve;
- }
-}
-
-void SPLCategorizePoints(SplinePointList *spl) {
- Spline *spline, *first, *last=NULL;
-
- for ( ; spl!=NULL; spl = spl->next ) {
- first = NULL;
- for ( spline = spl->first->next; spline!=NULL && spline!=first; spline=spline->to->next ) {
- SplinePointCategorize(spline->from);
- last = spline;
- if ( first==NULL ) first = spline;
- }
- if ( spline==NULL && last!=NULL )
- SplinePointCategorize(last->to);
- }
-}
-
-SplinePointList *SplinePointListCopy1(const SplinePointList *spl) {
- SplinePointList *cur;
- const SplinePoint *pt; SplinePoint *cpt;
- Spline *spline;
-
- cur = chunkalloc(sizeof(SplinePointList));
- cur->is_clip_path = spl->is_clip_path;
- cur->spiro_cnt = cur->spiro_max = 0;
- cur->spiros = 0;
- if (spl->contour_name != NULL) cur->contour_name = copy(spl->contour_name);
- for ( pt=spl->first; ; ) {
- cpt = SplinePointCreate( 0, 0 );
- *cpt = *pt;
- if ( pt->hintmask!=NULL ) {
- cpt->hintmask = chunkalloc(sizeof(HintMask));
- memcpy(cpt->hintmask,pt->hintmask,sizeof(HintMask));
- }
- if ( pt->name!=NULL ) {
- cpt->name = copy(pt->name);
- }
- cpt->next = cpt->prev = NULL;
- if ( cur->first==NULL ) {
- cur->first = cur->last = cpt;
- cur->start_offset = 0;
- } else {
- spline = chunkalloc(sizeof(Spline));
- *spline = *pt->prev;
- spline->from = cur->last;
- cur->last->next = spline;
- cpt->prev = spline;
- spline->to = cpt;
- spline->approx = NULL;
- cur->last = cpt;
- }
- if ( pt->next==NULL )
- break;
- pt = pt->next->to;
- if ( pt==spl->first )
- break;
- }
- if ( spl->first->prev!=NULL ) {
- cpt = cur->first;
- spline = chunkalloc(sizeof(Spline));
- *spline = *pt->prev;
- spline->from = cur->last;
- cur->last->next = spline;
- cpt->prev = spline;
- spline->to = cpt;
- spline->approx = NULL;
- cur->last = cpt;
- }
- if ( spl->spiro_cnt!=0 ) {
- cur->spiro_cnt = cur->spiro_max = spl->spiro_cnt;
- cur->spiros = malloc(cur->spiro_cnt*sizeof(spiro_cp));
- memcpy(cur->spiros,spl->spiros,cur->spiro_cnt*sizeof(spiro_cp));
- }
-return( cur );
-}
-
-SplinePointList *SplinePointListCopy(const SplinePointList *base) {
- SplinePointList *head=NULL, *last=NULL, *cur;
-
- for ( ; base!=NULL; base = base->next ) {
- cur = SplinePointListCopy1(base);
- if ( head==NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
- }
-return( head );
-}
-
-void BpTransform(BasePoint *to, BasePoint *from, real transform[6]) {
- BasePoint p;
- p.x = transform[0]*from->x + transform[2]*from->y + transform[4];
- p.y = transform[1]*from->x + transform[3]*from->y + transform[5];
- to->x = rint(1024*p.x)/1024;
- to->y = rint(1024*p.y)/1024;
-}
-
-static void TransformPointExtended(SplinePoint *sp, real transform[6], enum transformPointMask tpmask )
-{
- /**
- * If we are to transform selected BCP instead of their base splinepoint
- * then lets do that.
- */
- if( tpmask & tpmask_operateOnSelectedBCP
- && (sp->nextcpselected || sp->prevcpselected ))
- {
- if( sp->nextcpselected )
- {
- int order2 = sp->next ? sp->next->order2 : 0;
- BpTransform(&sp->nextcp,&sp->nextcp,transform);
- SPTouchControl( sp, &sp->nextcp, order2 );
- }
- else if( sp->prevcpselected )
- {
- int order2 = sp->next ? sp->next->order2 : 0;
- BpTransform(&sp->prevcp,&sp->prevcp,transform);
- SPTouchControl( sp, &sp->prevcp, order2 );
- }
- }
- else
- {
- /**
- * Transform the base splinepoints.
- */
- BpTransform(&sp->me,&sp->me,transform);
-
- if ( !sp->nonextcp )
- {
- BpTransform(&sp->nextcp,&sp->nextcp,transform);
- }
- else
- {
- sp->nextcp = sp->me;
- }
-
- if ( !sp->noprevcp )
- {
- BpTransform(&sp->prevcp,&sp->prevcp,transform);
- }
- else
- {
- sp->prevcp = sp->me;
- }
- }
-
-
-
- if ( sp->pointtype == pt_hvcurve )
- {
- if(
- ((sp->nextcp.x==sp->me.x && sp->prevcp.x==sp->me.x && sp->nextcp.y!=sp->me.y) ||
- (sp->nextcp.y==sp->me.y && sp->prevcp.y==sp->me.y && sp->nextcp.x!=sp->me.x)))
- {
- /* Do Nothing */;
- }
- else
- {
- sp->pointtype = pt_curve;
- }
- }
-}
-
-static void TransformPoint(SplinePoint *sp, real transform[6])
-{
- TransformPointExtended( sp, transform, 0 );
-}
-
-static void TransformSpiro(spiro_cp *cp, real transform[6]) {
- bigreal x;
-
- x = transform[0]*cp->x + transform[2]*cp->y + transform[4];
- cp->y = transform[1]*cp->x + transform[3]*cp->y + transform[5];
- cp->x = x;
-}
-
-static void TransformPTsInterpolateCPs(BasePoint *fromorig,Spline *spline,
- BasePoint *toorig,real transform[6] ) {
- BasePoint totrans, temp;
- bigreal fraction;
-
- /* Normally the "from" point will already have been translated, and the "to" */
- /* point will need to be. But if we have a closed contour then on the */
- /* last spline both from and to will have been transform. We can detect */
- /* this because toorig will be different from &spline->to->me */
- if ( spline->to->selected && toorig==&spline->to->me )
- BpTransform(&totrans,&spline->to->me,transform);
- else
- totrans = spline->to->me;
-
- /* None of the control points will have been transformed yet */
- if ( fromorig->x!=toorig->x ) {
- fraction = (spline->from->nextcp.x-fromorig->x)/( toorig->x-fromorig->x );
- spline->from->nextcp.x = spline->from->me.x + fraction*( totrans.x-spline->from->me.x );
- fraction = (spline->to->prevcp.x-fromorig->x)/( toorig->x-fromorig->x );
- spline->to->prevcp.x = spline->from->me.x + fraction*( totrans.x-spline->from->me.x );
- } else {
- BpTransform(&temp,&spline->from->nextcp,transform);
- spline->from->nextcp.x = temp.x;
- BpTransform(&temp,&spline->to->prevcp,transform);
- spline->to->prevcp.x = temp.x;
- }
- if ( fromorig->y!=toorig->y ) {
- fraction = (spline->from->nextcp.y-fromorig->y)/( toorig->y-fromorig->y );
- spline->from->nextcp.y = spline->from->me.y + fraction*( totrans.y-spline->from->me.y );
- fraction = (spline->to->prevcp.y-fromorig->y)/( toorig->y-fromorig->y );
- spline->to->prevcp.y = spline->from->me.y + fraction*( totrans.y-spline->from->me.y );
- } else {
- BpTransform(&temp,&spline->from->nextcp,transform);
- spline->from->nextcp.y = temp.y;
- BpTransform(&temp,&spline->to->prevcp,transform);
- spline->to->prevcp.y = temp.y;
- }
-
- if ( spline->to->selected )
- spline->to->me = totrans;
-}
-
-
-SplinePointList *SplinePointListTransformExtended(SplinePointList *base, real transform[6],
- enum transformPointType tpt, enum transformPointMask tpmask ) {
- Spline *spline, *first;
- SplinePointList *spl;
- SplinePoint *spt, *pfirst;
- int allsel, anysel, alldone=true;
- BasePoint lastpointorig, firstpointorig, orig;
-
- for ( spl = base; spl!=NULL; spl = spl->next ) {
- pfirst = NULL; first = NULL;
- allsel = true; anysel=false;
- if ( tpt==tpt_OnlySelectedInterpCPs && spl->first->next!=NULL && !spl->first->next->order2 ) {
- lastpointorig = firstpointorig = spl->first->me;
- printf("SplinePointListTransformExtended() spl->first->selected %d\n", spl->first->selected );
- if ( spl->first->selected ) {
- anysel = true;
- BpTransform(&spl->first->me,&spl->first->me,transform);
- } else
- allsel = false;
- for ( spline = spl->first->next; spline!=NULL && spline!=first; spline=spline->to->next ) {
- if ( first==NULL ) first = spline;
- orig = spline->to->me;
- if ( spline->from->selected || spline->to->selected )
- {
- TransformPTsInterpolateCPs( &lastpointorig, spline,
- spl->first==spline->to? &firstpointorig : &spline->to->me,
- transform );
- }
- lastpointorig = orig;
- if ( spline->to->selected ) anysel = true; else allsel = false;
- }
-
- } else {
- for ( spt = spl->first ; spt!=pfirst; spt = spt->next->to ) {
- if ( pfirst==NULL ) pfirst = spt;
- if ( tpt==tpt_AllPoints || spt->selected ) {
- TransformPointExtended(spt,transform,tpmask);
- if ( tpt!=tpt_AllPoints ) {
- if ( spt->next!=NULL && spt->next->order2 && !spt->next->to->selected && spt->next->to->ttfindex==0xffff ) {
- SplinePoint *to = spt->next->to;
- to->prevcp = spt->nextcp;
- to->me.x = (to->prevcp.x+to->nextcp.x)/2;
- to->me.y = (to->prevcp.y+to->nextcp.y)/2;
- }
- if ( spt->prev!=NULL && spt->prev->order2 && !spt->prev->from->selected && spt->prev->from->ttfindex==0xffff ) {
- SplinePoint *from = spt->prev->from;
- from->nextcp = spt->prevcp;
- from->me.x = (from->prevcp.x+from->nextcp.x)/2;
- from->me.y = (from->prevcp.y+from->nextcp.y)/2;
- }
- }
- anysel = true;
- } else
- allsel = alldone = false;
- if ( spt->next==NULL )
- break;
- }
- }
- if ( !anysel ) /* This splineset had no selected points it's unchanged */
- continue;
-
- /* If we changed all the points, then transform the spiro version too */
- /* otherwise if we just changed some points, throw away the spiro */
- if ( allsel ) {
- int i;
- for ( i=0; i<spl->spiro_cnt-1; ++i )
- TransformSpiro(&spl->spiros[i], transform);
- } else
- SplineSetSpirosClear(spl);
-
- /* if we changed all the points then the control points are right */
- /* otherwise those near the edges may be wonky, fix 'em up */
- /* Figuring out where the edges of the selection are is difficult */
- /* so let's just tweak all points, it shouldn't matter */
- /* It does matter. Let's tweak all default points */
- if( !(tpmask & tpmask_dontFixControlPoints))
- {
- if ( tpt!=tpt_AllPoints && !allsel && spl->first->next!=NULL && !spl->first->next->order2 )
- {
- pfirst = NULL;
- for ( spt = spl->first ; spt!=pfirst; spt = spt->next->to )
- {
- if ( pfirst==NULL ) pfirst = spt;
- if ( spt->selected && spt->prev!=NULL && !spt->prev->from->selected &&
- spt->prev->from->pointtype == pt_tangent )
- SplineCharTangentPrevCP(spt->prev->from);
- if ( spt->selected && spt->next!=NULL && !spt->next->to->selected &&
- spt->next->to->pointtype == pt_tangent )
- SplineCharTangentNextCP(spt->next->to);
- if ( spt->prev!=NULL && spt->prevcpdef && tpt==tpt_OnlySelected )
- SplineCharDefaultPrevCP(spt);
- if ( spt->next==NULL )
- break;
- if ( spt->nextcpdef && tpt==tpt_OnlySelected )
- SplineCharDefaultNextCP(spt);
- }
- }
- }
- first = NULL;
- for ( spline = spl->first->next; spline!=NULL && spline!=first; spline=spline->to->next ) {
- if ( !alldone ) SplineRefigureFixup(spline); else SplineRefigure(spline);
- if ( first==NULL ) first = spline;
- }
- }
-return( base );
-}
-
-SplinePointList *SplinePointListTransform( SplinePointList *base, real transform[6],
- enum transformPointType tpt )
-{
- enum transformPointMask tpmask = 0;
- return SplinePointListTransformExtended( base, transform, tpt, tpmask );
-}
-
-HintMask *HintMaskFromTransformedRef(RefChar *ref,BasePoint *trans,
- SplineChar *basesc,HintMask *hm) {
- StemInfo *st, *st2;
- int hst_cnt, bcnt;
- real start, width;
- int i;
-
- if ( ref->transform[1]!=0 || ref->transform[2]!=0 )
-return(NULL);
-
- memset(hm,0,sizeof(HintMask));
- for ( st = ref->sc->hstem; st!=NULL; st=st->next ) {
- start = st->start*ref->transform[3] + ref->transform[5] + trans->y;
- width = st->width*ref->transform[3];
- for ( st2=basesc->hstem,bcnt=0; st2!=NULL; st2=st2->next, bcnt++ )
- if ( st2->start == start && st2->width == width )
- break;
- if ( st2!=NULL )
- (*hm)[bcnt>>3] |= (0x80>>(bcnt&7));
- }
- for ( st2=basesc->hstem,hst_cnt=0; st2!=NULL; st2=st2->next, hst_cnt++ );
-
- for ( st = ref->sc->vstem; st!=NULL; st=st->next ) {
- start = st->start*ref->transform[0] + ref->transform[4] + trans->x;
- width = st->width*ref->transform[0];
- for ( st2=basesc->vstem,bcnt=hst_cnt; st2!=NULL; st2=st2->next, bcnt++ )
- if ( st2->start == start && st2->width == width )
- break;
- if ( st2!=NULL )
- (*hm)[bcnt>>3] |= (0x80>>(bcnt&7));
- }
- for ( i=0; i<HntMax/8; ++i )
- if ( (*hm)[i]!=0 )
-return( hm );
-
-return( NULL );
-}
-
-static HintMask *HintMaskTransform(HintMask *oldhm,real transform[6],
- SplineChar *basesc,SplineChar *subsc) {
- HintMask *newhm;
- StemInfo *st, *st2;
- int cnt, hst_cnt, bcnt;
- real start, width;
-
- if ( transform[1]!=0 || transform[2]!=0 )
-return( NULL );
-
- newhm = chunkalloc(sizeof(HintMask));
- for ( st = subsc->hstem,cnt = 0; st!=NULL; st=st->next, cnt++ ) {
- if ( (*oldhm)[cnt>>3]&(0x80>>(cnt&7)) ) {
- start = st->start*transform[3] + transform[5];
- width = st->width*transform[3];
- for ( st2=basesc->hstem,bcnt=0; st2!=NULL; st2=st2->next, bcnt++ )
- if ( st2->start == start && st2->width == width )
- break;
- if ( st2!=NULL )
- (*newhm)[bcnt>>3] |= (0x80>>(bcnt&7));
- }
- }
- for ( st2=basesc->hstem,hst_cnt=0; st2!=NULL; st2=st2->next, hst_cnt++ );
-
- for ( st = subsc->vstem; st!=NULL; st=st->next, cnt++ ) {
- if ( (*oldhm)[cnt>>3]&(0x80>>(cnt&7)) ) {
- start = st->start*transform[0] + transform[4];
- width = st->width*transform[0];
- for ( st2=basesc->vstem,bcnt=hst_cnt; st2!=NULL; st2=st2->next, bcnt++ )
- if ( st2->start == start && st2->width == width )
- break;
- if ( st2!=NULL )
- (*newhm)[bcnt>>3] |= (0x80>>(bcnt&7));
- }
- }
-return( newhm );
-}
-
-SplinePointList *SPLCopyTranslatedHintMasks(SplinePointList *base,
- SplineChar *basesc, SplineChar *subsc, BasePoint *trans ) {
- SplinePointList *spl, *spl2, *head;
- SplinePoint *spt, *spt2, *pfirst;
- real transform[6];
- Spline *s, *first;
-
- head = SplinePointListCopy(base);
-
- transform[0] = transform[3] = 1; transform[1] = transform[2] = 0;
- transform[4] = trans->x; transform[5] = trans->y;
-
- for ( spl = head, spl2=base; spl!=NULL; spl = spl->next, spl2 = spl2->next ) {
- pfirst = NULL;
- for ( spt = spl->first, spt2 = spl2->first ; spt!=pfirst; spt = spt->next->to, spt2 = spt2->next->to ) {
- if ( pfirst==NULL ) pfirst = spt;
- TransformPoint(spt,transform);
- if ( spt2->hintmask ) {
- chunkfree(spt->hintmask,sizeof(HintMask));
- spt->hintmask = HintMaskTransform(spt2->hintmask,transform,basesc,subsc);
- }
- if ( spt->next==NULL )
- break;
- }
- first = NULL;
- for ( s = spl->first->next; s!=NULL && s!=first; s=s->to->next ) {
- SplineRefigure(s);
- if ( first==NULL ) first = s;
- }
- }
-return( head );
-}
-
-static SplinePointList *_SPLCopyTransformedHintMasks(SplineChar *subsc,int layer,
- real transform[6], SplineChar *basesc ) {
- SplinePointList *spl, *spl2, *head, *last=NULL, *cur, *base;
- SplinePoint *spt, *spt2, *pfirst;
- Spline *s, *first;
- real trans[6];
- RefChar *rf;
-
- base = subsc->layers[layer].splines;
- head = SplinePointListCopy(base);
- if ( head!=NULL )
- for ( last = head; last->next!=NULL; last=last->next );
-
- for ( spl = head, spl2=base; spl!=NULL; spl = spl->next, spl2=spl2->next ) {
- pfirst = NULL;
- for ( spt = spl->first, spt2 = spl2->first ; spt!=pfirst; spt = spt->next->to, spt2 = spt2->next->to ) {
- if ( pfirst==NULL ) pfirst = spt;
- TransformPoint(spt,transform);
- if ( spt2->hintmask ) {
- chunkfree(spt->hintmask,sizeof(HintMask));
- spt->hintmask = HintMaskTransform(spt2->hintmask,transform,basesc,subsc);
- }
- if ( spt->next==NULL )
- break;
- }
- first = NULL;
- for ( s = spl->first->next; s!=NULL && s!=first; s=s->to->next ) {
- SplineRefigure(s);
- if ( first==NULL ) first = s;
- }
- }
- for ( rf=subsc->layers[layer].refs; rf!=NULL; rf=rf->next ) {
- trans[0] = rf->transform[0]*transform[0] +
- rf->transform[1]*transform[2];
- trans[1] = rf->transform[0]*transform[1] +
- rf->transform[1]*transform[3];
- trans[2] = rf->transform[2]*transform[0] +
- rf->transform[3]*transform[2];
- trans[3] = rf->transform[2]*transform[1] +
- rf->transform[3]*transform[3];
- trans[4] = rf->transform[4]*transform[0] +
- rf->transform[5]*transform[2] +
- transform[4];
- trans[5] = rf->transform[4]*transform[1] +
- rf->transform[5]*transform[3] +
- transform[5];
- cur = _SPLCopyTransformedHintMasks(rf->sc,layer,trans,basesc);
- if ( head==NULL )
- head = cur;
- else
- last->next = cur;
- if ( cur!=NULL ) {
- while ( cur->next!=NULL ) cur = cur->next;
- last = cur;
- }
- }
-return( head );
-}
-
-SplinePointList *SPLCopyTransformedHintMasks(RefChar *r,
- SplineChar *basesc, BasePoint *trans,int layer ) {
- real transform[6];
-
- memcpy(transform,r->transform,sizeof(transform));
- transform[4] += trans->x; transform[5] += trans->y;
-return( _SPLCopyTransformedHintMasks(r->sc,layer,transform,basesc));
-}
-
-void SCMakeDependent(SplineChar *dependent,SplineChar *base) {
- struct splinecharlist *dlist;
-
- if ( dependent->searcherdummy )
-return;
-
- for ( dlist=base->dependents; dlist!=NULL && dlist->sc!=dependent; dlist = dlist->next);
- if ( dlist==NULL ) {
- dlist = chunkalloc(sizeof(struct splinecharlist));
- dlist->sc = dependent;
- dlist->next = base->dependents;
- base->dependents = dlist;
- }
-}
-
-static void LayerToRefLayer(struct reflayer *rl,Layer *layer, real transform[6]) {
- BrushCopy(&rl->fill_brush, &layer->fill_brush,transform);
- PenCopy(&rl->stroke_pen, &layer->stroke_pen,transform);
- rl->dofill = layer->dofill;
- rl->dostroke = layer->dostroke;
- rl->fillfirst = layer->fillfirst;
-}
-
-int RefLayerFindBaseLayerIndex(RefChar *rf, int layer) {
- // Note that most of the logic below is copied and lightly modified from SCReinstanciateRefChar.
- SplineChar *rsc = rf->sc;
- int i = 0, j = 0, cnt = 0;
- RefChar *subref;
- for ( i=ly_fore; i<rsc->layer_cnt; ++i ) {
- if ( rsc->layers[i].splines!=NULL) {
- if (cnt == layer) return i;
- ++cnt;
- }
- for ( subref=rsc->layers[i].refs; subref!=NULL; subref=subref->next ) {
- for ( j=0; j<subref->layer_cnt; ++j ) if ( subref->layers[j].splines!=NULL ) {
- if (cnt == layer) return i;
- ++cnt;
- }
- }
- }
- return -1;
-}
-
-void RefCharFindBounds(RefChar *rf) {
- int i;
- SplineChar *rsc = rf->sc;
- real extra=0,e;
-
- memset(&rf->bb,'\0',sizeof(rf->bb));
- rf->top.y = -1e10;
- for ( i=0; i<rf->layer_cnt; ++i ) {
- _SplineSetFindBounds(rf->layers[i].splines,&rf->bb);
- _SplineSetFindTop(rf->layers[i].splines,&rf->top);
- int baselayer = RefLayerFindBaseLayerIndex(rf, i);
- if ( baselayer >= 0 && rsc->layers[baselayer].dostroke ) {
- if ( rf->layers[i].stroke_pen.width!=WIDTH_INHERITED )
- e = rf->layers[i].stroke_pen.width*rf->layers[i].stroke_pen.trans[0];
- else
- e = rf->layers[i].stroke_pen.trans[0];
- if ( e>extra ) extra = e;
- }
- }
- if ( rf->top.y < -65536 ) rf->top.y = rf->top.x = 0;
- rf->bb.minx -= extra; rf->bb.miny -= extra;
- rf->bb.maxx += extra; rf->bb.maxy += extra;
-}
-
-void SCReinstanciateRefChar(SplineChar *sc,RefChar *rf,int layer) {
- SplinePointList *new, *last;
- RefChar *refs;
- int i,j;
- SplineChar *rsc = rf->sc;
- real extra=0,e;
-
- for ( i=0; i<rf->layer_cnt; ++i ) {
- SplinePointListsFree(rf->layers[i].splines);
- GradientFree(rf->layers[i].fill_brush.gradient);
- PatternFree(rf->layers[i].fill_brush.pattern);
- GradientFree(rf->layers[i].stroke_pen.brush.gradient);
- PatternFree(rf->layers[i].stroke_pen.brush.pattern);
- }
- free( rf->layers );
- rf->layers = NULL;
- rf->layer_cnt = 0;
- if ( rsc==NULL )
-return;
- /* Can be called before sc->parent is set, but only when reading a ttf */
- /* file which won't be multilayer */
- if ( sc->parent!=NULL && sc->parent->multilayer ) {
- int cnt = 0;
- RefChar *subref;
- for ( i=ly_fore; i<rsc->layer_cnt; ++i ) {
- if ( rsc->layers[i].splines!=NULL)
- ++cnt;
- for ( subref=rsc->layers[i].refs; subref!=NULL; subref=subref->next )
- cnt += subref->layer_cnt;
- }
-
- rf->layer_cnt = cnt;
- rf->layers = calloc(cnt,sizeof(struct reflayer));
- cnt = 0;
- for ( i=ly_fore; i<rsc->layer_cnt; ++i ) {
- if ( rsc->layers[i].splines!=NULL ) {
- rf->layers[cnt].splines =
- SplinePointListTransform(
- SplinePointListCopy(rsc->layers[i].splines),rf->transform,tpt_AllPoints);
- LayerToRefLayer(&rf->layers[cnt],&rsc->layers[i],rf->transform);
- ++cnt;
- }
- for ( subref=rsc->layers[i].refs; subref!=NULL; subref=subref->next ) {
- for ( j=0; j<subref->layer_cnt; ++j ) if ( subref->layers[j].splines!=NULL ) {
- rf->layers[cnt] = subref->layers[j];
- rf->layers[cnt].splines =
- SplinePointListTransform(
- SplinePointListCopy(subref->layers[j].splines),rf->transform,tpt_AllPoints);
- ++cnt;
- }
- }
- }
-
- memset(&rf->bb,'\0',sizeof(rf->bb));
- rf->top.y = -1e10;
- for ( i=0; i<rf->layer_cnt; ++i ) {
- _SplineSetFindBounds(rf->layers[i].splines,&rf->bb);
- _SplineSetFindTop(rf->layers[i].splines,&rf->top);
- int baselayer = RefLayerFindBaseLayerIndex(rf, i);
- if ( baselayer >= 0 && rsc->layers[baselayer].dostroke ) {
- if ( rf->layers[i].stroke_pen.width!=WIDTH_INHERITED )
- e = rf->layers[i].stroke_pen.width*rf->layers[i].stroke_pen.trans[0];
- else
- e = rf->layers[i].stroke_pen.trans[0];
- if ( e>extra ) extra = e;
- }
- }
- if ( rf->top.y < -65536 ) rf->top.y = rf->top.x = 0;
- rf->bb.minx -= extra; rf->bb.miny -= extra;
- rf->bb.maxx += extra; rf->bb.maxy += extra;
- } else {
- if ( rf->layer_cnt>0 ) {
- SplinePointListsFree(rf->layers[0].splines);
- rf->layers[0].splines = NULL;
- }
- rf->layers = calloc(1,sizeof(struct reflayer));
- rf->layer_cnt = 1;
- rf->layers[0].dofill = true;
- new = SplinePointListTransform(SplinePointListCopy(rf->sc->layers[layer].splines),rf->transform,tpt_AllPoints);
- rf->layers[0].splines = new;
- last = NULL;
- if ( new!=NULL )
- for ( last = new; last->next!=NULL; last = last->next );
- for ( refs = rf->sc->layers[layer].refs; refs!=NULL; refs = refs->next ) {
- new = SplinePointListTransform(SplinePointListCopy(refs->layers[0].splines),rf->transform,tpt_AllPoints);
- if ( last!=NULL )
- last->next = new;
- else
- rf->layers[0].splines = new;
- if ( new!=NULL )
- for ( last = new; last->next!=NULL; last = last->next );
- }
- }
- RefCharFindBounds(rf);
-}
-
-/* This returns all real solutions, even those out of bounds */
-/* I use -999999 as an error flag, since we're really only interested in */
-/* solns near 0 and 1 that should be ok. -1 is perhaps a little too close */
-/* Sigh. When solutions are near 0, the rounding errors are appalling. */
-int _CubicSolve(const Spline1D *sp,bigreal sought, extended ts[3]) {
- extended d, xN, yN, delta2, temp, delta, h, t2, t3, theta;
- extended sa=sp->a, sb=sp->b, sc=sp->c, sd=sp->d-sought;
- int i=0;
-
- ts[0] = ts[1] = ts[2] = -999999;
- if ( sd==0 && sa!=0 ) {
- /* one of the roots is 0, the other two are the soln of a quadratic */
- ts[0] = 0;
- if ( sc==0 ) {
- ts[1] = -sb/(extended) sa; /* two zero roots */
- } else {
- temp = sb*(extended) sb-4*(extended) sa*sc;
- if ( RealNear(temp,0))
- ts[1] = -sb/(2*(extended) sa);
- else if ( temp>=0 ) {
- temp = sqrt(temp);
- ts[1] = (-sb+temp)/(2*(extended) sa);
- ts[2] = (-sb-temp)/(2*(extended) sa);
- }
- }
- } else if ( sa!=0 ) {
- /* http://www.m-a.org.uk/eb/mg/mg077ch.pdf */
- /* this nifty solution to the cubic neatly avoids complex arithmatic */
- xN = -sb/(3*(extended) sa);
- yN = ((sa*xN + sb)*xN+sc)*xN + sd;
-
- delta2 = (sb*(extended) sb-3*(extended) sa*sc)/(9*(extended) sa*sa);
- /*if ( RealWithin(delta2,0,.00000001) ) delta2 = 0;*/
-
- /* the descriminant is yN^2-h^2, but delta might be <0 so avoid using h */
- d = yN*yN - 4*sa*sa*delta2*delta2*delta2;
- if ( ((yN>.01 || yN<-.01) && RealNear(d/yN,0)) || ((yN<=.01 && yN>=-.01) && RealNear(d,0)) )
- d = 0;
- if ( d>0 ) {
- temp = sqrt(d);
- t2 = (-yN-temp)/(2*sa);
- t2 = (t2==0) ? 0 : (t2<0) ? -pow(-t2,1./3.) : pow(t2,1./3.);
- t3 = (-yN+temp)/(2*sa);
- t3 = t3==0 ? 0 : (t3<0) ? -pow(-t3,1./3.) : pow(t3,1./3.);
- ts[0] = xN + t2 + t3;
- } else if ( d<0 ) {
- if ( delta2>=0 ) {
- delta = sqrt(delta2);
- h = 2*sa*delta2*delta;
- temp = -yN/h;
- if ( temp>=-1.0001 && temp<=1.0001 ) {
- if ( temp<-1 ) temp = -1; else if ( temp>1 ) temp = 1;
- theta = acos(temp)/3;
- ts[i++] = xN+2*delta*cos(theta);
- ts[i++] = xN+2*delta*cos(2.0943951+theta); /* 2*pi/3 */
- ts[i++] = xN+2*delta*cos(4.1887902+theta); /* 4*pi/3 */
- }
- }
- } else if ( /* d==0 && */ delta2!=0 ) {
- delta = yN/(2*sa);
- delta = delta==0 ? 0 : delta>0 ? pow(delta,1./3.) : -pow(-delta,1./3.);
- ts[i++] = xN + delta; /* this root twice, but that's irrelevant to me */
- ts[i++] = xN - 2*delta;
- } else if ( /* d==0 && */ delta2==0 ) {
- if ( xN>=-0.0001 && xN<=1.0001 ) ts[0] = xN;
- }
- } else if ( sb!=0 ) {
- extended d = sc*(extended) sc-4*(extended) sb*sd;
- if ( d<0 && RealNear(d,0)) d=0;
- if ( d<0 )
-return(false); /* All roots imaginary */
- d = sqrt(d);
- ts[0] = (-sc-d)/(2*(extended) sb);
- ts[1] = (-sc+d)/(2*(extended) sb);
- } else if ( sc!=0 ) {
- ts[0] = -sd/(extended) sc;
- } else {
- /* If it's a point then either everything is a solution, or nothing */
- }
-return( ts[0]!=-999999 );
-}
-
-int CubicSolve(const Spline1D *sp,bigreal sought, extended ts[3]) {
- extended t;
- extended ts2[3];
- int i,j;
- /* This routine gives us all solutions between [0,1] with -1 as an error flag */
- /* http://mathforum.org/dr.math/faq/faq.cubic.equations.html */
-
- ts[0] = ts[1] = ts[2] = -1;
- if ( !_CubicSolve(sp,sought,ts2)) {
-return( false );
- }
-
- for ( i=j=0; i<3; ++i ) {
- if ( ts2[i]>-.0001 && ts2[i]<1.0001 ) {
- if ( ts2[i]<0 ) ts[j++] = 0;
- else if ( ts2[i]>1 ) ts[j++] = 1;
- else
- ts[j++] = ts2[i];
- }
- }
- if ( j==0 )
-return( false );
-
- if ( ts[0]>ts[2] && ts[2]!=-1 ) {
- t = ts[0]; ts[0] = ts[2]; ts[2] = t;
- }
- if ( ts[0]>ts[1] && ts[1]!=-1 ) {
- t = ts[0]; ts[0] = ts[1]; ts[1] = t;
- }
- if ( ts[1]>ts[2] && ts[2]!=-1 ) {
- t = ts[1]; ts[1] = ts[2]; ts[2] = t;
- }
-return( true );
-}
-
-/* An IEEE double has 52 bits of precision. So one unit of rounding error will be */
-/* the number divided by 2^51 */
-# define D_RE_Factor (1024.0*1024.0*1024.0*1024.0*1024.0*2.0)
-/* But that's not going to work near 0, so, since the t values we care about */
-/* are [0,1], let's use 1.0/D_RE_Factor */
-
-extended IterateSplineSolve(const Spline1D *sp, extended tmin, extended tmax,
- extended sought) {
- extended t, low, high, test;
- Spline1D temp;
- /* Now the closed form CubicSolver can have rounding errors so if we know */
- /* the spline to be monotonic, an iterative approach is more accurate */
-
- if ( tmin>tmax ) {
- t=tmin; tmin=tmax; tmax=t;
- }
-
- temp = *sp;
- temp.d -= sought;
-
- if ( temp.a==0 && temp.b==0 && temp.c!=0 ) {
- t = -temp.d/(extended) temp.c;
- if ( t<tmin || t>tmax )
-return( -1 );
-return( t );
- }
-
- low = ((temp.a*tmin+temp.b)*tmin+temp.c)*tmin+temp.d;
- high = ((temp.a*tmax+temp.b)*tmax+temp.c)*tmax+temp.d;
- if ( low==0 )
-return(tmin);
- if ( high==0 )
-return(tmax);
- if (( low<0 && high>0 ) ||
- ( low>0 && high<0 )) {
-
- for (;;) {
- t = (tmax+tmin)/2;
- if ( t==tmax || t==tmin )
-return( t );
- test = ((temp.a*t+temp.b)*t+temp.c)*t+temp.d;
- if ( test==0 ) /* someone complained that this test relied on exact arithmetic. In fact this test will almost never be hit, the real exit test is the line above, when tmin/tmax are so close that there is no space between them in the floating representation */
-return( t );
- if ( (low<0 && test<0) || (low>0 && test>0) )
- tmin=t;
- else
- tmax = t;
- }
- } else if ( low<.0001 && low>-.0001 )
-return( tmin ); /* Rounding errors */
- else if ( high<.0001 && high>-.0001 )
-return( tmax );
-
-return( -1 );
-}
-
-extended IterateSplineSolveFixup(const Spline1D *sp, extended tmin, extended tmax,
- extended sought) {
- // Search between tmin and tmax for a t-value at which the spline outputs sought.
- extended t;
- bigreal factor;
- extended val, valp, valm;
-
- if ( tmin>tmax ) {
- t=tmin; tmin=tmax; tmax=t;
- }
-
- t = IterateSplineSolve(sp,tmin,tmax,sought);
-
- if ( t==-1 )
-return( -1 );
-
- if ((val = (((sp->a*t+sp->b)*t+sp->c)*t+sp->d) - sought)<0 )
- val=-val;
- if ( val!=0 ) {
- for ( factor=1024.0*1024.0*1024.0*1024.0*1024.0; factor>.5; factor/=2.0 ) {
- extended tp = t + (factor*t)/D_RE_Factor;
- extended tm = t - (factor*t)/D_RE_Factor;
- if ( tp>tmax ) tp=tmax;
- if ( tm<tmin ) tm=tmin;
- if ( (valp = (((sp->a*tp+sp->b)*tp+sp->c)*tp+sp->d) - sought)<0 )
- valp = -valp;
- if ( (valm = (((sp->a*tm+sp->b)*tm+sp->c)*tm+sp->d) - sought)<0 )
- valm = -valm;
- if ( valp<val && valp<valm ) {
- t = tp;
- val = valp;
- } else if ( valm<val ) {
- t = tm;
- val = valm;
- }
- }
- }
- if ( t==0 && !Within16RoundingErrors(sought,sought+val))
-return( -1 );
- /* if t!=0 then we we get the chance of far worse rounding errors */
- else if ( t==tmax || t==tmin ) {
- if ( Within16RoundingErrors(sought,sought+val) ||
- Within16RoundingErrors(sp->a,sp->a+val) ||
- Within16RoundingErrors(sp->b,sp->b+val) ||
- Within16RoundingErrors(sp->c,sp->c+val) ||
- Within16RoundingErrors(sp->c,sp->c+val) ||
- Within16RoundingErrors(sp->d,sp->d+val))
-return( t );
- else
-return( -1 );
- }
-
- if ( t>=tmin && t<=tmax )
-return( t );
-
- /* I don't think this can happen... */
-return( -1 );
-}
-
-double CheckExtremaForSingleBitErrors(const Spline1D *sp, double t, double othert) {
- double u1, um1;
- double slope, slope1, slopem1;
- int err;
- double diff, factor;
-
- if ( t<0 || t>1 )
-return( t );
-
- factor = t*0x40000/D_RE_Factor;
- if ( (diff = t-othert)<0 ) diff= -diff;
- if ( factor>diff/4 && diff!=0 ) /* This little check is to insure we don't skip beyond the well of this extremum into the next */
- factor = diff/4;
-
- slope = (3*(double) sp->a*t+2*sp->b)*t+sp->c;
- if ( slope<0 ) slope = -slope;
-
- for ( err = 0x40000; err!=0; err>>=1 ) {
- u1 = t+factor;
- slope1 = (3*(double) sp->a*u1+2*sp->b)*u1+sp->c;
- if ( slope1<0 ) slope1 = -slope1;
-
- um1 = t-factor;
- slopem1 = (3*(double) sp->a*um1+2*sp->b)*um1+sp->c;
- if ( slopem1<0 ) slopem1 = -slopem1;
-
- if ( slope1<slope && slope1<=slopem1 && u1<=1.0 ) {
- t = u1;
- } else if ( slopem1<slope && slopem1<=slope1 && um1>=0.0 ) {
- t = um1;
- }
- factor /= 2.0;
- }
- /* that seems as good as it gets */
-
-return( t );
-}
-
-void SplineFindExtrema(const Spline1D *sp, extended *_t1, extended *_t2 ) {
- extended t1= -1, t2= -1;
- extended b2_fourac;
-
- /* Find the extreme points on the curve */
- /* Set to -1 if there are none or if they are outside the range [0,1] */
- /* Order them so that t1<t2 */
- /* If only one valid extremum it will be t1 */
- /* (Does not check the end points unless they have derivative==0) */
- /* (Does not check to see if d/dt==0 points are inflection points (rather than extrema) */
- if ( sp->a!=0 ) {
- /* cubic, possibly 2 extrema (possibly none) */
- b2_fourac = 4*(extended) sp->b*sp->b - 12*(extended) sp->a*sp->c;
- if ( b2_fourac>=0 ) {
- b2_fourac = sqrt(b2_fourac);
- t1 = (-2*sp->b - b2_fourac) / (6*sp->a);
- t2 = (-2*sp->b + b2_fourac) / (6*sp->a);
- t1 = CheckExtremaForSingleBitErrors(sp,t1,t2);
- t2 = CheckExtremaForSingleBitErrors(sp,t2,t1);
- if ( t1>t2 ) { extended temp = t1; t1 = t2; t2 = temp; }
- else if ( t1==t2 ) t2 = -1;
- if ( RealNear(t1,0)) t1=0; else if ( RealNear(t1,1)) t1=1;
- if ( RealNear(t2,0)) t2=0; else if ( RealNear(t2,1)) t2=1;
- if ( t2<=0 || t2>=1 ) t2 = -1;
- if ( t1<=0 || t1>=1 ) { t1 = t2; t2 = -1; }
- }
- } else if ( sp->b!=0 ) {
- /* Quadratic, at most one extremum */
- t1 = -sp->c/(2.0*(extended) sp->b);
- if ( t1<=0 || t1>=1 ) t1 = -1;
- } else /*if ( sp->c!=0 )*/ {
- /* linear, no extrema */
- }
- *_t1 = t1; *_t2 = t2;
-}
-
-bigreal SplineCurvature(Spline *s, bigreal t) {
- /* Kappa = (x'y'' - y'x'') / (x'^2 + y'^2)^(3/2) */
- bigreal dxdt, dydt, d2xdt2, d2ydt2, denom, numer;
-
- if ( s==NULL )
-return( CURVATURE_ERROR );
-
- dxdt = (3*s->splines[0].a*t+2*s->splines[0].b)*t+s->splines[0].c;
- dydt = (3*s->splines[1].a*t+2*s->splines[1].b)*t+s->splines[1].c;
- d2xdt2 = 6*s->splines[0].a*t + 2*s->splines[0].b;
- d2ydt2 = 6*s->splines[1].a*t + 2*s->splines[1].b;
- denom = pow( dxdt*dxdt + dydt*dydt, 3.0/2.0 );
- numer = dxdt*d2ydt2 - dydt*d2xdt2;
-
- if ( numer==0 )
-return( 0 );
- if ( denom==0 )
-return( CURVATURE_ERROR );
-
-return( numer/denom );
-}
-
-int Spline2DFindExtrema(const Spline *sp, extended extrema[4] ) {
- int i,j;
- BasePoint last, cur, mid;
-
- /* If the control points are at the end-points then this (1D) spline is */
- /* basically a line. But rounding errors can give us very faint extrema */
- /* if we look for them */
- if ( !Spline1DCantExtremeX(sp) )
- SplineFindExtrema(&sp->splines[0],&extrema[0],&extrema[1]);
- else
- extrema[0] = extrema[1] = -1;
- if ( !Spline1DCantExtremeY(sp) )
- SplineFindExtrema(&sp->splines[1],&extrema[2],&extrema[3]);
- else
- extrema[2] = extrema[3] = -1;
-
- for ( i=0; i<3; ++i ) for ( j=i+1; j<4; ++j ) {
- if ( (extrema[i]==-1 && extrema[j]!=-1) || (extrema[i]>extrema[j] && extrema[j]!=-1) ) {
- extended temp = extrema[i];
- extrema[i] = extrema[j];
- extrema[j] = temp;
- }
- }
- for ( i=j=0; i<3 && extrema[i]!=-1; ++i ) {
- if ( extrema[i]==extrema[i+1] ) {
- for ( j=i+1; j<3; ++j )
- extrema[j] = extrema[j+1];
- extrema[3] = -1;
- }
- }
-
- /* Extrema which are too close together are not interesting */
- last = sp->from->me;
- for ( i=0; i<4 && extrema[i]!=-1; ++i ) {
- cur.x = ((sp->splines[0].a*extrema[i]+sp->splines[0].b)*extrema[i]+
- sp->splines[0].c)*extrema[i]+sp->splines[0].d;
- cur.y = ((sp->splines[1].a*extrema[i]+sp->splines[1].b)*extrema[i]+
- sp->splines[1].c)*extrema[i]+sp->splines[1].d;
- mid.x = (last.x+cur.x)/2; mid.y = (last.y+cur.y)/2;
- if ( (mid.x==last.x || mid.x==cur.x) &&
- (mid.y==last.y || mid.y==cur.y)) {
- for ( j=i; j<3; ++j )
- extrema[j] = extrema[j+1];
- extrema[3] = -1;
- --i;
- } else
- last = cur;
- }
- if ( extrema[0]!=-1 ) {
- mid.x = (last.x+sp->to->me.x)/2; mid.y = (last.y+sp->to->me.y)/2;
- if ( (mid.x==last.x || mid.x==cur.x) &&
- (mid.y==last.y || mid.y==cur.y))
- extrema[i-1] = -1;
- }
- for ( i=0; i<4 && extrema[i]!=-1; ++i );
- if ( i!=0 ) {
- cur = sp->to->me;
- mid.x = (last.x+cur.x)/2; mid.y = (last.y+cur.y)/2;
- if ( (mid.x==last.x || mid.x==cur.x) &&
- (mid.y==last.y || mid.y==cur.y))
- extrema[--i] = -1;
- }
-
-return( i );
-}
-
-int Spline2DFindPointsOfInflection(const Spline *sp, extended poi[2] ) {
- int cnt=0;
- extended a, b, c, b2_fourac, t;
- /* A POI happens when d2 y/dx2 is zero. This is not the same as d2y/dt2 / d2x/dt2 */
- /* d2 y/dx^2 = d/dt ( dy/dt / dx/dt ) / dx/dt */
- /* = ( (dx/dt) * d2 y/dt2 - ((dy/dt) * d2 x/dt2) )/ (dx/dt)^3 */
- /* (3ax*t^2+2bx*t+cx) * (6ay*t+2by) - (3ay*t^2+2by*t+cy) * (6ax*t+2bx) == 0 */
- /* (3ax*t^2+2bx*t+cx) * (3ay*t+by) - (3ay*t^2+2by*t+cy) * (3ax*t+bx) == 0 */
- /* 9*ax*ay*t^3 + (3ax*by+6bx*ay)*t^2 + (2bx*by+3cx*ay)*t + cx*by */
- /* -(9*ax*ay*t^3 + (3ay*bx+6by*ax)*t^2 + (2by*bx+3cy*ax)*t + cy*bx)==0 */
- /* 3*(ax*by-ay*bx)*t^2 + 3*(cx*ay-cy*ax)*t+ (cx*by-cy*bx) == 0 */
-
- a = 3*((extended) sp->splines[1].a*sp->splines[0].b-(extended) sp->splines[0].a*sp->splines[1].b);
- b = 3*((extended) sp->splines[0].c*sp->splines[1].a - (extended) sp->splines[1].c*sp->splines[0].a);
- c = (extended) sp->splines[0].c*sp->splines[1].b-(extended) sp->splines[1].c*sp->splines[0].b;
- if ( !RealNear(a,0) ) {
- b2_fourac = b*b - 4*a*c;
- poi[0] = poi[1] = -1;
- if ( b2_fourac<0 )
-return( 0 );
- b2_fourac = sqrt( b2_fourac );
- t = (-b+b2_fourac)/(2*a);
- if ( t>=0 && t<=1.0 )
- poi[cnt++] = t;
- t = (-b-b2_fourac)/(2*a);
- if ( t>=0 && t<=1.0 ) {
- if ( cnt==1 && poi[0]>t ) {
- poi[1] = poi[0];
- poi[0] = t;
- ++cnt;
- } else
- poi[cnt++] = t;
- }
- } else if ( !RealNear(b,0) ) {
- t = -c/b;
- if ( t>=0 && t<=1.0 )
- poi[cnt++] = t;
- }
- if ( cnt<2 )
- poi[cnt] = -1;
-
-return( cnt );
-}
-
-/* Ok, if the above routine finds an extremum that less than 1 unit */
-/* from an endpoint or another extremum, then many things are */
-/* just going to skip over it, and other things will be confused by this */
-/* so just remove it. It should be so close the difference won't matter */
-void SplineRemoveExtremaTooClose(Spline1D *sp, extended *_t1, extended *_t2 ) {
- extended last, test;
- extended t1= *_t1, t2 = *_t2;
-
- if ( t1>t2 && t2!=-1 ) {
- t1 = t2;
- t2 = *_t1;
- }
- last = sp->d;
- if ( t1!=-1 ) {
- test = ((sp->a*t1+sp->b)*t1+sp->c)*t1+sp->d;
- if ( (test-last)*(test-last)<1 )
- t1 = -1;
- else
- last = test;
- }
- if ( t2!=-1 ) {
- test = ((sp->a*t2+sp->b)*t2+sp->c)*t2+sp->d;
- if ( (test-last)*(test-last)<1 )
- t2 = -1;
- else
- last = test;
- }
- test = sp->a+sp->b+sp->c+sp->d;
- if ( (test-last)*(test-last)<1 ) {
- if ( t2!=-1 )
- t2 = -1;
- else if ( t1!=-1 )
- t1 = -1;
- else {
- /* Well we should just remove the whole spline? */
- ;
- }
- }
- *_t1 = t1; *_t2 = t2;
-}
-
-int IntersectLines(BasePoint *inter,
- BasePoint *line1_1, BasePoint *line1_2,
- BasePoint *line2_1, BasePoint *line2_2) {
- // A lot of functions call this with the same address as an input and the output.
- // In order to avoid unexpected behavior, we delay writing to the output until the end.
- bigreal s1, s2;
- BasePoint _output;
- BasePoint * output = &_output;
- if ( line1_1->x == line1_2->x ) {
- // Line 1 is vertical.
- output->x = line1_1->x;
- if ( line2_1->x == line2_2->x ) {
- // Line 2 is vertical.
- if ( line2_1->x!=line1_1->x )
- return( false ); /* Parallel vertical lines */
- output->y = (line1_1->y+line2_1->y)/2;
- } else {
- output->y = line2_1->y + (output->x-line2_1->x) * (line2_2->y - line2_1->y)/(line2_2->x - line2_1->x);
- }
- *inter = *output;
- return( true );
- } else if ( line2_1->x == line2_2->x ) {
- // Line 2 is vertical, but we know that line 1 is not.
- output->x = line2_1->x;
- output->y = line1_1->y + (output->x-line1_1->x) * (line1_2->y - line1_1->y)/(line1_2->x - line1_1->x);
- *inter = *output;
- return( true );
- } else {
- // Both lines are oblique.
- s1 = (line1_2->y - line1_1->y)/(line1_2->x - line1_1->x);
- s2 = (line2_2->y - line2_1->y)/(line2_2->x - line2_1->x);
- if ( RealNear(s1,s2)) {
- if ( !RealNear(line1_1->y + (line2_1->x-line1_1->x) * s1,line2_1->y))
- return( false );
- output->x = (line1_2->x+line2_2->x)/2;
- output->y = (line1_2->y+line2_2->y)/2;
- } else {
- output->x = (s1*line1_1->x - s2*line2_1->x - line1_1->y + line2_1->y)/(s1-s2);
- output->y = line1_1->y + (output->x-line1_1->x) * s1;
- }
- *inter = *output;
- return( true );
- }
-}
-
-int IntersectLinesClip(BasePoint *inter,
- BasePoint *line1_1, BasePoint *line1_2,
- BasePoint *line2_1, BasePoint *line2_2) {
- BasePoint old = *inter, unit;
- bigreal len, val;
-
- if ( !IntersectLines(inter,line1_1,line1_2,line2_1,line2_2))
-return( false );
- else {
- unit.x = line2_2->x-line1_2->x;
- unit.y = line2_2->y-line1_2->y;
- len = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( len==0 )
-return( false );
- else {
- unit.x /= len; unit.y /= len;
- val = unit.x*(inter->x-line1_2->x) + unit.y*(inter->y-line1_2->y);
- if ( val<=0 || val>=len ) {
- *inter = old;
-return( false );
- }
- }
- }
-return( true );
-}
-
-static int AddPoint(extended x,extended y,extended t,extended s,BasePoint *pts,
- extended t1s[3],extended t2s[3], int soln) {
- int i;
-
- for ( i=0; i<soln; ++i )
- if ( x==pts[i].x && y==pts[i].y )
-return( soln );
- if ( soln>=9 )
- IError( "Too many solutions!\n" );
- t1s[soln] = t;
- t2s[soln] = s;
- pts[soln].x = x;
- pts[soln].y = y;
-return( soln+1 );
-}
-
-static void IterateSolve(const Spline1D *sp,extended ts[3]) {
- /* The closed form solution has too many rounding errors for my taste... */
- int i,j;
-
- ts[0] = ts[1] = ts[2] = -1;
-
- if ( sp->a!=0 ) {
- extended e[4];
- e[0] = 0; e[1] = e[2] = e[3] = 1.0;
- SplineFindExtrema(sp,&e[1],&e[2]);
- if ( e[1]==-1 ) e[1] = 1;
- if ( e[2]==-1 ) e[2] = 1;
- for ( i=j=0; i<3; ++i ) {
- ts[j] = IterateSplineSolve(sp,e[i],e[i+1],0);
- if ( ts[j]!=-1 ) ++j;
- if ( e[i+1]==1.0 )
- break;
- }
- } else if ( sp->b!=0 ) {
- extended b2_4ac = sp->c*(extended) sp->c - 4*sp->b*(extended) sp->d;
- if ( b2_4ac>=0 ) {
- b2_4ac = sqrt(b2_4ac);
- ts[0] = (-sp->c-b2_4ac)/(2*sp->b);
- ts[1] = (-sp->c+b2_4ac)/(2*sp->b);
- if ( ts[0]>ts[1] ) { bigreal t = ts[0]; ts[0] = ts[1]; ts[1] = t; }
- }
- } else if ( sp->c!=0 ) {
- ts[0] = -sp->d/(extended) sp->c;
- } else {
- /* No solutions, or all solutions */
- ;
- }
-
- for ( i=j=0; i<3; ++i )
- if ( ts[i]>=0 && ts[i]<=1 )
- ts[j++] = ts[i];
- for ( i=0; i<j-1; ++i )
- if ( ts[i]+.0000001>ts[i+1]) {
- ts[i] = (ts[i]+ts[i+1])/2;
- --j;
- for ( ++i; i<j; ++i )
- ts[i] = ts[i+1];
- }
- if ( j!=0 ) {
- if ( ts[0]!=0 ) {
- extended d0 = sp->d;
- extended dt = ((sp->a*ts[0]+sp->b)*ts[0]+sp->c)*ts[0]+sp->d;
- if ( d0<0 ) d0=-d0;
- if ( dt<0 ) dt=-dt;
- if ( d0<dt )
- ts[0] = 0;
- }
- if ( ts[j-1]!=1.0 ) {
- extended d1 = sp->a+(extended) sp->b+sp->c+sp->d;
- extended dt = ((sp->a*ts[j-1]+sp->b)*ts[j-1]+sp->c)*ts[j-1]+sp->d;
- if ( d1<0 ) d1=-d1;
- if ( dt<0 ) dt=-dt;
- if ( d1<dt )
- ts[j-1] = 1;
- }
- }
- for ( ; j<3; ++j )
- ts[j] = -1;
-}
-
-static extended ISolveWithin(const Spline *spline,int major,
- extended val,extended tlow, extended thigh) {
- Spline1D temp;
- extended ts[3];
- const Spline1D *sp = &spline->splines[major];
- int i;
-
- /* Calculation for t=1 can yield rounding errors. Insist on the endpoints */
- /* (the Spline1D is not a perfectly accurate description of the spline, */
- /* but the control points are right -- at least that's my defn.) */
- if ( tlow==0 && val==(&spline->from->me.x)[major] )
-return( 0 );
- if ( thigh==1.0 && val==(&spline->to->me.x)[major] )
-return( 1.0 );
-
- temp = *sp;
- temp.d -= val;
- IterateSolve(&temp,ts);
- if ( tlow<thigh ) {
- for ( i=0; i<3; ++i )
- if ( ts[i]>=tlow && ts[i]<=thigh )
-return( ts[i] );
- for ( i=0; i<3; ++i ) {
- if ( ts[i]>=tlow-1./1024. && ts[i]<=tlow )
-return( tlow );
- if ( ts[i]>=thigh && ts[i]<=thigh+1./1024 )
-return( thigh );
- }
- } else {
- for ( i=0; i<3; ++i )
- if ( ts[i]>=thigh && ts[i]<=tlow )
-return( ts[i] );
- for ( i=0; i<3; ++i ) {
- if ( ts[i]>=thigh-1./1024. && ts[i]<=thigh )
-return( thigh );
- if ( ts[i]>=tlow && ts[i]<=tlow+1./1024 )
-return( tlow );
- }
- }
-return( -1 );
-}
-
-static int ICAddInter(int cnt,BasePoint *foundpos,extended *foundt1,extended *foundt2,
- const Spline *s1,const Spline *s2,extended t1,extended t2, int maxcnt) {
-
- if ( cnt>=maxcnt )
-return( cnt );
-
- foundt1[cnt] = t1;
- foundt2[cnt] = t2;
- foundpos[cnt].x = ((s1->splines[0].a*t1+s1->splines[0].b)*t1+
- s1->splines[0].c)*t1+s1->splines[0].d;
- foundpos[cnt].y = ((s1->splines[1].a*t1+s1->splines[1].b)*t1+
- s1->splines[1].c)*t1+s1->splines[1].d;
-return( cnt+1 );
-}
-
-static int ICBinarySearch(int cnt,BasePoint *foundpos,extended *foundt1,extended *foundt2,
- int other,
- const Spline *s1,const Spline *s2,extended t1low,extended t1high,extended t2low,extended t2high,
- int maxcnt) {
- int major;
- extended t1, t2;
- extended o1o, o2o, o1n, o2n, m;
-
- major = !other;
- o1o = ((s1->splines[other].a*t1low+s1->splines[other].b)*t1low+
- s1->splines[other].c)*t1low+s1->splines[other].d;
- o2o = ((s2->splines[other].a*t2low+s2->splines[other].b)*t2low+
- s2->splines[other].c)*t2low+s2->splines[other].d;
- for (;;) {
- t1 = (t1low+t1high)/2;
- m = ((s1->splines[major].a*t1+s1->splines[major].b)*t1+
- s1->splines[major].c)*t1+s1->splines[major].d;
- t2 = ISolveWithin(s2,major,m,t2low,t2high);
- if ( t2==-1 )
-return( cnt );
-
- o1n = ((s1->splines[other].a*t1+s1->splines[other].b)*t1+
- s1->splines[other].c)*t1+s1->splines[other].d;
- o2n = ((s2->splines[other].a*t2+s2->splines[other].b)*t2+
- s2->splines[other].c)*t2+s2->splines[other].d;
- if (( o1n-o2n<.001 && o1n-o2n>-.001) ||
- (t1-t1low<.0001 && t1-t1low>-.0001))
-return( ICAddInter(cnt,foundpos,foundt1,foundt2,s1,s2,t1,t2,maxcnt));
- if ( (o1o>o2o && o1n<o2n) || (o1o<o2o && o1n>o2n)) {
- t1high = t1;
- t2high = t2;
- } else {
- t1low = t1;
- t2low = t2;
- }
- }
-}
-
-static int CubicsIntersect(const Spline *s1,extended lowt1,extended hight1,BasePoint *min1,BasePoint *max1,
- const Spline *s2,extended lowt2,extended hight2,BasePoint *min2,BasePoint *max2,
- BasePoint *foundpos,extended *foundt1,extended *foundt2,
- int maxcnt) {
- int major, other;
- BasePoint max, min;
- extended t1max, t1min, t2max, t2min, t1, t2, t1diff, oldt2;
- extended o1o, o2o, o1n, o2n, m;
- int cnt=0;
-
- if ( (min.x = min1->x)<min2->x ) min.x = min2->x;
- if ( (min.y = min1->y)<min2->y ) min.y = min2->y;
- if ( (max.x = max1->x)>max2->x ) max.x = max2->x;
- if ( (max.y = max1->y)>max2->y ) max.y = max2->y;
- if ( max.x<min.x || max.y<min.y )
-return( 0 );
- if ( max.x-min.x > max.y-min.y )
- major = 0;
- else
- major = 1;
- other = 1-major;
-
- t1max = ISolveWithin(s1,major,(&max.x)[major],lowt1,hight1);
- t1min = ISolveWithin(s1,major,(&min.x)[major],lowt1,hight1);
- t2max = ISolveWithin(s2,major,(&max.x)[major],lowt2,hight2);
- t2min = ISolveWithin(s2,major,(&min.x)[major],lowt2,hight2);
- if ( t1max==-1 || t1min==-1 || t2max==-1 || t2min==-1 )
-return( 0 );
- t1diff = (t1max-t1min)/64.0;
- if (RealNear(t1diff,0))
-return( 0 );
-
- t1 = t1min; t2 = t2min;
- o1o = t1==0 ? (&s1->from->me.x)[other] :
- t1==1.0 ? (&s1->to->me.x)[other] :
- ((s1->splines[other].a*t1+s1->splines[other].b)*t1+
- s1->splines[other].c)*t1+s1->splines[other].d;
- o2o = t2==0 ? (&s2->from->me.x)[other] :
- t2==1.0 ? (&s2->to->me.x)[other] :
- ((s2->splines[other].a*t2+s2->splines[other].b)*t2+
- s2->splines[other].c)*t2+s2->splines[other].d;
- if ( o1o==o2o )
- cnt = ICAddInter(cnt,foundpos,foundt1,foundt2,s1,s2,t1,t2,maxcnt);
- for (;;) {
- if ( cnt>=maxcnt )
- break;
- t1 += t1diff;
- if (( t1max>t1min && t1>t1max ) || (t1max<t1min && t1<t1max) || cnt>3 )
- break;
- m = t1==0 ? (&s1->from->me.x)[major] :
- t1==1.0 ? (&s1->to->me.x)[major] :
- ((s1->splines[major].a*t1+s1->splines[major].b)*t1+
- s1->splines[major].c)*t1+s1->splines[major].d;
- oldt2 = t2;
- t2 = ISolveWithin(s2,major,m,lowt2,hight2);
- if ( t2==-1 )
- continue;
-
- o1n = t1==0 ? (&s1->from->me.x)[other] :
- t1==1.0 ? (&s1->to->me.x)[other] :
- ((s1->splines[other].a*t1+s1->splines[other].b)*t1+
- s1->splines[other].c)*t1+s1->splines[other].d;
- o2n = t2==0 ? (&s2->from->me.x)[other] :
- t2==1.0 ? (&s2->to->me.x)[other] :
- ((s2->splines[other].a*t2+s2->splines[other].b)*t2+
- s2->splines[other].c)*t2+s2->splines[other].d;
- if ( o1n==o2n )
- cnt = ICAddInter(cnt,foundpos,foundt1,foundt2,s1,s2,t1,t2,maxcnt);
- if ( (o1o>o2o && o1n<o2n) || (o1o<o2o && o1n>o2n))
- cnt = ICBinarySearch(cnt,foundpos,foundt1,foundt2,other,
- s1,s2,t1-t1diff,t1,oldt2,t2,maxcnt);
- o1o = o1n; o2o = o2n;
- }
-return( cnt );
-}
-
-static int Closer(const Spline *s1,const Spline *s2,extended t1,extended t2,extended t1p,extended t2p) {
- bigreal x1 = ((s1->splines[0].a*t1+s1->splines[0].b)*t1+s1->splines[0].c)*t1+s1->splines[0].d;
- bigreal y1 = ((s1->splines[1].a*t1+s1->splines[1].b)*t1+s1->splines[1].c)*t1+s1->splines[1].d;
- bigreal x2 = ((s2->splines[0].a*t2+s2->splines[0].b)*t2+s2->splines[0].c)*t2+s2->splines[0].d;
- bigreal y2 = ((s2->splines[1].a*t2+s2->splines[1].b)*t2+s2->splines[1].c)*t2+s2->splines[1].d;
- bigreal diff = (x1-x2)*(x1-x2) + (y1-y2)*(y1-y2);
- bigreal x1p = ((s1->splines[0].a*t1p+s1->splines[0].b)*t1p+s1->splines[0].c)*t1p+s1->splines[0].d;
- bigreal y1p = ((s1->splines[1].a*t1p+s1->splines[1].b)*t1p+s1->splines[1].c)*t1p+s1->splines[1].d;
- bigreal x2p = ((s2->splines[0].a*t2p+s2->splines[0].b)*t2p+s2->splines[0].c)*t2p+s2->splines[0].d;
- bigreal y2p = ((s2->splines[1].a*t2p+s2->splines[1].b)*t2p+s2->splines[1].c)*t2p+s2->splines[1].d;
- bigreal diffp = (x1p-x2p)*(x1p-x2p) + (y1p-y2p)*(y1p-y2p);
-
- if ( diff<diffp )
-return( false );
-
-return( true );
-}
-
-/* returns 0=>no intersection, 1=>at least one, location in pts, t1s, t2s */
-/* -1 => We couldn't figure it out in a closed form, have to do a numerical */
-/* approximation */
-int SplinesIntersect(const Spline *s1, const Spline *s2, BasePoint pts[9],
- extended t1s[10], extended t2s[10]) { /* One extra for a trailing -1 */
- BasePoint min1, max1, min2, max2;
- int soln = 0;
- extended x,y,t, ac0, ac1;
- int i,j,found;
- Spline1D spline;
- extended tempts[4]; /* 3 solns for cubics, 4 for quartics */
- extended extrema1[6], extrema2[6];
- int ecnt1, ecnt2;
-
- t1s[0] = t1s[1] = t1s[2] = t1s[3] = -1;
- t2s[0] = t2s[1] = t2s[2] = t2s[3] = -1;
-
- if ( s1==s2 && !s1->knownlinear && !s1->isquadratic )
- /* Special case see if it doubles back on itself anywhere */;
- else if ( s1==s2 )
-return( 0 ); /* Linear and quadratics can't double back, can't self-intersect */
- else if ( s1->splines[0].a == s2->splines[0].a &&
- s1->splines[0].b == s2->splines[0].b &&
- s1->splines[0].c == s2->splines[0].c &&
- s1->splines[0].d == s2->splines[0].d &&
- s1->splines[1].a == s2->splines[1].a &&
- s1->splines[1].b == s2->splines[1].b &&
- s1->splines[1].c == s2->splines[1].c &&
- s1->splines[1].d == s2->splines[1].d )
-return( -1 ); /* Same spline. Intersects everywhere */
-
- /* Ignore splines which are just a point */
- if ( s1->knownlinear && s1->splines[0].c==0 && s1->splines[1].c==0 )
-return( 0 );
- if ( s2->knownlinear && s2->splines[0].c==0 && s2->splines[1].c==0 )
-return( 0 );
-
- if ( s1->knownlinear )
- /* Do Nothing */;
- else if ( s2->knownlinear || (!s1->isquadratic && s2->isquadratic)) {
- const Spline *stemp = s1;
- extended *ts = t1s;
- t1s = t2s; t2s = ts;
- s1 = s2; s2 = stemp;
- }
-
- min1 = s1->from->me; max1 = min1;
- min2 = s2->from->me; max2 = min2;
- if ( s1->from->nextcp.x>max1.x ) max1.x = s1->from->nextcp.x;
- else if ( s1->from->nextcp.x<min1.x ) min1.x = s1->from->nextcp.x;
- if ( s1->from->nextcp.y>max1.y ) max1.y = s1->from->nextcp.y;
- else if ( s1->from->nextcp.y<min1.y ) min1.y = s1->from->nextcp.y;
- if ( s1->to->prevcp.x>max1.x ) max1.x = s1->to->prevcp.x;
- else if ( s1->to->prevcp.x<min1.x ) min1.x = s1->to->prevcp.x;
- if ( s1->to->prevcp.y>max1.y ) max1.y = s1->to->prevcp.y;
- else if ( s1->to->prevcp.y<min1.y ) min1.y = s1->to->prevcp.y;
- if ( s1->to->me.x>max1.x ) max1.x = s1->to->me.x;
- else if ( s1->to->me.x<min1.x ) min1.x = s1->to->me.x;
- if ( s1->to->me.y>max1.y ) max1.y = s1->to->me.y;
- else if ( s1->to->me.y<min1.y ) min1.y = s1->to->me.y;
-
- if ( s2->from->nextcp.x>max2.x ) max2.x = s2->from->nextcp.x;
- else if ( s2->from->nextcp.x<min2.x ) min2.x = s2->from->nextcp.x;
- if ( s2->from->nextcp.y>max2.y ) max2.y = s2->from->nextcp.y;
- else if ( s2->from->nextcp.y<min2.y ) min2.y = s2->from->nextcp.y;
- if ( s2->to->prevcp.x>max2.x ) max2.x = s2->to->prevcp.x;
- else if ( s2->to->prevcp.x<min2.x ) min2.x = s2->to->prevcp.x;
- if ( s2->to->prevcp.y>max2.y ) max2.y = s2->to->prevcp.y;
- else if ( s2->to->prevcp.y<min2.y ) min2.y = s2->to->prevcp.y;
- if ( s2->to->me.x>max2.x ) max2.x = s2->to->me.x;
- else if ( s2->to->me.x<min2.x ) min2.x = s2->to->me.x;
- if ( s2->to->me.y>max2.y ) max2.y = s2->to->me.y;
- else if ( s2->to->me.y<min2.y ) min2.y = s2->to->me.y;
- if ( min1.x>max2.x || min2.x>max1.x || min1.y>max2.y || min2.y>max1.y )
-return( false ); /* no intersection of bounding boxes */
-
- if ( s1->knownlinear ) {
- spline.d = s1->splines[1].c*((bigreal) s2->splines[0].d-(bigreal) s1->splines[0].d)-
- s1->splines[0].c*((bigreal) s2->splines[1].d-(bigreal) s1->splines[1].d);
- spline.c = s1->splines[1].c*(bigreal) s2->splines[0].c - s1->splines[0].c*(bigreal) s2->splines[1].c;
- spline.b = s1->splines[1].c*(bigreal) s2->splines[0].b - s1->splines[0].c*(bigreal) s2->splines[1].b;
- spline.a = s1->splines[1].c*(bigreal) s2->splines[0].a - s1->splines[0].c*(bigreal) s2->splines[1].a;
- IterateSolve(&spline,tempts);
- if ( tempts[0]==-1 )
-return( false );
- for ( i = 0; i<3 && tempts[i]!=-1; ++i ) {
- x = ((s2->splines[0].a*tempts[i]+s2->splines[0].b)*tempts[i]+
- s2->splines[0].c)*tempts[i]+s2->splines[0].d;
- y = ((s2->splines[1].a*tempts[i]+s2->splines[1].b)*tempts[i]+
- s2->splines[1].c)*tempts[i]+s2->splines[1].d;
- if ( s1->splines[0].c==0 )
- x = s1->splines[0].d;
- if ( s1->splines[1].c==0 )
- y = s1->splines[1].d;
- if ( (ac0 = s1->splines[0].c)<0 ) ac0 = -ac0;
- if ( (ac1 = s1->splines[1].c)<0 ) ac1 = -ac1;
- if ( ac0>ac1 )
- t = (x-s1->splines[0].d)/s1->splines[0].c;
- else
- t = (y-s1->splines[1].d)/s1->splines[1].c;
- if ( tempts[i]>.99996 && Closer(s1,s2,t,tempts[i],t,1)) {
- tempts[i] = 1;
- x = s2->to->me.x; y = s2->to->me.y;
- } else if ( tempts[i]<.00001 && Closer(s1,s2,t,tempts[i],t,0)) {
- tempts[i] = 0;
- x = s2->from->me.x; y = s2->from->me.y;
- }
- /* I know we just did this, but we might have changed x,y so redo */
- if ( ac0>ac1 )
- t = (x-s1->splines[0].d)/s1->splines[0].c;
- else
- t = (y-s1->splines[1].d)/s1->splines[1].c;
- if ( t>.99996 && t<1.001 && Closer(s1,s2,t,tempts[i],1,tempts[i])) {
- t = 1;
- x = s1->to->me.x; y = s1->to->me.y;
- } else if ( t<.00001 && t>-.001 && Closer(s1,s2,t,tempts[i],0,tempts[i])) {
- t = 0;
- x = s1->from->me.x; y = s1->from->me.y;
- }
- if ( t<-.001 || t>1.001 || x<min1.x-.01 || y<min1.y-.01 || x>max1.x+.01 || y>max1.y+.01 )
- continue;
- if ( t<=0 ) {t=0; x=s1->from->me.x; y = s1->from->me.y; }
- else if ( t>=1 ) { t=1; x=s1->to->me.x; y = s1->to->me.y; }
- if ( s1->from->me.x==s1->to->me.x ) /* Avoid rounding errors */
- x = s1->from->me.x; /* on hor/vert lines */
- else if ( s1->from->me.y==s1->to->me.y )
- y = s1->from->me.y;
- if ( s2->knownlinear ) {
- if ( s2->from->me.x==s2->to->me.x )
- x = s2->from->me.x;
- else if ( s2->from->me.y==s2->to->me.y )
- y = s2->from->me.y;
- }
- soln = AddPoint(x,y,t,tempts[i],pts,t1s,t2s,soln);
- }
-return( soln!=0 );
- }
- /* if one of the splines is quadratic then we can get an expression */
- /* relating c*t+d to poly(s^3), and substituting this back we get */
- /* a poly of degree 6 in s which could be solved iteratively */
- /* however mixed quadratics and cubics are unlikely */
-
- /* but if both splines are degree 3, the t is expressed as the sqrt of */
- /* a third degree poly, which must be substituted into a cubic, and */
- /* then squared to get rid of the sqrts leaving us with an ?18? degree */
- /* poly. Ick. */
-
- /* So let's do it the hard way... we break the splines into little bits */
- /* where they are monotonic in both dimensions, then check these for */
- /* possible intersections */
- extrema1[0] = extrema2[0] = 0;
- ecnt1 = Spline2DFindExtrema(s1,extrema1+1);
- ecnt2 = Spline2DFindExtrema(s2,extrema2+1);
- extrema1[++ecnt1] = 1.0;
- extrema2[++ecnt2] = 1.0;
- found=0;
- for ( i=0; i<ecnt1; ++i ) {
- min1.x = ((s1->splines[0].a*extrema1[i]+s1->splines[0].b)*extrema1[i]+
- s1->splines[0].c)*extrema1[i]+s1->splines[0].d;
- min1.y = ((s1->splines[1].a*extrema1[i]+s1->splines[1].b)*extrema1[i]+
- s1->splines[1].c)*extrema1[i]+s1->splines[1].d;
- max1.x = ((s1->splines[0].a*extrema1[i+1]+s1->splines[0].b)*extrema1[i+1]+
- s1->splines[0].c)*extrema1[i+1]+s1->splines[0].d;
- max1.y = ((s1->splines[1].a*extrema1[i+1]+s1->splines[1].b)*extrema1[i+1]+
- s1->splines[1].c)*extrema1[i+1]+s1->splines[1].d;
- if ( max1.x<min1.x ) { extended temp = max1.x; max1.x = min1.x; min1.x = temp; }
- if ( max1.y<min1.y ) { extended temp = max1.y; max1.y = min1.y; min1.y = temp; }
- for ( j=(s1==s2)?i+1:0; j<ecnt2; ++j ) {
- min2.x = ((s2->splines[0].a*extrema2[j]+s2->splines[0].b)*extrema2[j]+
- s2->splines[0].c)*extrema2[j]+s2->splines[0].d;
- min2.y = ((s2->splines[1].a*extrema2[j]+s2->splines[1].b)*extrema2[j]+
- s2->splines[1].c)*extrema2[j]+s2->splines[1].d;
- max2.x = ((s2->splines[0].a*extrema2[j+1]+s2->splines[0].b)*extrema2[j+1]+
- s2->splines[0].c)*extrema2[j+1]+s2->splines[0].d;
- max2.y = ((s2->splines[1].a*extrema2[j+1]+s2->splines[1].b)*extrema2[j+1]+
- s2->splines[1].c)*extrema2[j+1]+s2->splines[1].d;
- if ( max2.x<min2.x ) { extended temp = max2.x; max2.x = min2.x; min2.x = temp; }
- if ( max2.y<min2.y ) { extended temp = max2.y; max2.y = min2.y; min2.y = temp; }
- if ( min1.x>max2.x || min2.x>max1.x || min1.y>max2.y || min2.y>max1.y )
- /* No possible intersection */;
- else if ( s1!=s2 )
- found += CubicsIntersect(s1,extrema1[i],extrema1[i+1],&min1,&max1,
- s2,extrema2[j],extrema2[j+1],&min2,&max2,
- &pts[found],&t1s[found],&t2s[found],9-found);
- else {
- int k,l;
- int cnt = CubicsIntersect(s1,extrema1[i],extrema1[i+1],&min1,&max1,
- s2,extrema2[j],extrema2[j+1],&min2,&max2,
- &pts[found],&t1s[found],&t2s[found],9-found);
- for ( k=0; k<cnt; ++k ) {
- if ( RealNear(t1s[found+k],t2s[found+k]) ) {
- for ( l=k+1; l<cnt; ++l ) {
- pts[found+l-1] = pts[found+l];
- t1s[found+l-1] = t1s[found+l];
- t2s[found+l-1] = t2s[found+l];
- }
- --cnt; --k;
- }
- }
- found += cnt;
- }
- if ( found>=8 ) {
- /* If the splines are colinear then we might get an unbounded */
- /* number of intersections */
- break;
- }
- }
- }
- t1s[found] = t2s[found] = -1;
-return( found!=0 );
-}
-
-void StemInfoFree(StemInfo *h) {
- HintInstance *hi, *n;
-
- for ( hi=h->where; hi!=NULL; hi=n ) {
- n = hi->next;
- chunkfree(hi,sizeof(HintInstance));
- }
- chunkfree(h,sizeof(StemInfo));
-}
-
-void StemInfosFree(StemInfo *h) {
- StemInfo *hnext;
- HintInstance *hi, *n;
-
- for ( ; h!=NULL; h = hnext ) {
- for ( hi=h->where; hi!=NULL; hi=n ) {
- n = hi->next;
- chunkfree(hi,sizeof(HintInstance));
- }
- hnext = h->next;
- chunkfree(h,sizeof(StemInfo));
- }
-}
-
-void DStemInfoFree(DStemInfo *h) {
- HintInstance *hi, *n;
-
- for ( hi=h->where; hi!=NULL; hi=n ) {
- n = hi->next;
- chunkfree(hi,sizeof(HintInstance));
- }
- chunkfree(h,sizeof(DStemInfo));
-}
-
-void DStemInfosFree(DStemInfo *h) {
- DStemInfo *hnext;
- HintInstance *hi, *n;
-
- for ( ; h!=NULL; h = hnext ) {
- for ( hi=h->where; hi!=NULL; hi=n ) {
- n = hi->next;
- chunkfree(hi,sizeof(HintInstance));
- }
- hnext = h->next;
- chunkfree(h,sizeof(DStemInfo));
- }
-}
-
-void KernPairsFree(KernPair *kp) {
- KernPair *knext;
- for ( ; kp!=NULL; kp = knext ) {
- knext = kp->next;
- if ( kp->adjust!=NULL ) {
- free(kp->adjust->corrections);
- chunkfree(kp->adjust,sizeof(DeviceTable));
- }
- chunkfree(kp,sizeof(KernPair));
- }
-}
-
-void AnchorPointsFree(AnchorPoint *ap) {
- AnchorPoint *anext;
- for ( ; ap!=NULL; ap = anext ) {
- anext = ap->next;
- free(ap->xadjust.corrections);
- free(ap->yadjust.corrections);
- chunkfree(ap,sizeof(AnchorPoint));
- }
-}
-
-void ValDevFree(ValDevTab *adjust) {
- if ( adjust==NULL )
-return;
- free( adjust->xadjust.corrections );
- free( adjust->yadjust.corrections );
- free( adjust->xadv.corrections );
- free( adjust->yadv.corrections );
- chunkfree(adjust,sizeof(ValDevTab));
-}
-
-void DeviceTableFree(DeviceTable *dt) {
-
- if ( dt==NULL )
-return;
-
- free(dt->corrections);
- chunkfree(dt,sizeof(DeviceTable));
-}
-
-void PSTFree(PST *pst) {
- PST *pnext;
- for ( ; pst!=NULL; pst = pnext ) {
- pnext = pst->next;
- if ( pst->type==pst_lcaret )
- free(pst->u.lcaret.carets);
- else if ( pst->type==pst_pair ) {
- free(pst->u.pair.paired);
- ValDevFree(pst->u.pair.vr[0].adjust);
- ValDevFree(pst->u.pair.vr[1].adjust);
- chunkfree(pst->u.pair.vr,sizeof(struct vr [2]));
- } else if ( pst->type!=pst_position ) {
- free(pst->u.subs.variant);
- } else if ( pst->type==pst_position ) {
- ValDevFree(pst->u.pos.adjust);
- }
- chunkfree(pst,sizeof(PST));
- }
-}
-
-void FPSTRuleContentsFree(struct fpst_rule *r, enum fpossub_format format) {
- int j;
-
- switch ( format ) {
- case pst_glyphs:
- free(r->u.glyph.names);
- free(r->u.glyph.back);
- free(r->u.glyph.fore);
- break;
- case pst_class:
- free(r->u.class.nclasses);
- free(r->u.class.bclasses);
- free(r->u.class.fclasses);
- break;
- case pst_reversecoverage:
- free(r->u.rcoverage.replacements);
- case pst_coverage:
- for ( j=0 ; j<r->u.coverage.ncnt ; ++j )
- free(r->u.coverage.ncovers[j]);
- free(r->u.coverage.ncovers);
- for ( j=0 ; j<r->u.coverage.bcnt ; ++j )
- free(r->u.coverage.bcovers[j]);
- free(r->u.coverage.bcovers);
- for ( j=0 ; j<r->u.coverage.fcnt ; ++j )
- free(r->u.coverage.fcovers[j]);
- free(r->u.coverage.fcovers);
- break;
- default:;
- }
- free(r->lookups);
-}
-
-void FPSTClassesFree(FPST *fpst) {
- int i;
-
- for ( i=0; i<fpst->nccnt; ++i ) {
- free(fpst->nclass[i]);
- free(fpst->nclassnames[i]);
- }
- for ( i=0; i<fpst->bccnt; ++i ) {
- free(fpst->bclass[i]);
- free(fpst->bclassnames[i]);
- }
- for ( i=0; i<fpst->fccnt; ++i ) {
- free(fpst->fclass[i]);
- free(fpst->fclassnames[i]);
- }
- free(fpst->nclass); free(fpst->bclass); free(fpst->fclass);
- free(fpst->nclassnames); free(fpst->bclassnames); free(fpst->fclassnames);
-
- fpst->nccnt = fpst->bccnt = fpst->fccnt = 0;
- fpst->nclass = fpst->bclass = fpst->fclass = NULL;
- fpst->nclassnames = fpst->bclassnames = fpst->fclassnames = NULL;
-}
-
-void FPSTFree(FPST *fpst) {
- FPST *next;
- int i;
-
- while ( fpst!=NULL ) {
- next = fpst->next;
- FPSTClassesFree(fpst);
- for ( i=0; i<fpst->rule_cnt; ++i ) {
- FPSTRuleContentsFree( &fpst->rules[i],fpst->format );
- }
- free(fpst->rules);
- chunkfree(fpst,sizeof(FPST));
- fpst = next;
- }
-}
-
-void MinimumDistancesFree(MinimumDistance *md) {
- MinimumDistance *next;
-
- while ( md!=NULL ) {
- next = md->next;
- chunkfree(md,sizeof(MinimumDistance));
- md = next;
- }
-}
-
-void TTFLangNamesFree(struct ttflangname *l) {
- struct ttflangname *next;
- int i;
-
- while ( l!=NULL ) {
- next = l->next;
- for ( i=0; i<ttf_namemax; ++i )
- free(l->names[i]);
- chunkfree(l,sizeof(*l));
- l = next;
- }
-}
-
-void AltUniFree(struct altuni *altuni) {
- struct altuni *next;
-
- while ( altuni ) {
- next = altuni->next;
- chunkfree(altuni,sizeof(struct altuni));
- altuni = next;
- }
-}
-
-void LayerDefault(Layer *layer) {
- memset(layer,0,sizeof(Layer));
- layer->fill_brush.opacity = layer->stroke_pen.brush.opacity = 1.0;
- layer->fill_brush.col = layer->stroke_pen.brush.col = COLOR_INHERITED;
- layer->stroke_pen.width = 10;
- layer->stroke_pen.linecap = lc_round;
- layer->stroke_pen.linejoin = lj_round;
- layer->dofill = true;
- layer->fillfirst = true;
- layer->stroke_pen.trans[0] = layer->stroke_pen.trans[3] = 1.0;
- layer->stroke_pen.trans[1] = layer->stroke_pen.trans[2] = 0.0;
- /* Dashes default to an unbroken line */
-}
-
-SplineChar *SplineCharCreate(int layer_cnt) {
- SplineChar *sc = chunkalloc(sizeof(SplineChar));
- int i;
-
- sc->color = COLOR_DEFAULT;
- sc->orig_pos = 0xffff;
- sc->unicodeenc = -1;
- sc->layer_cnt = layer_cnt;
- sc->layers = calloc(layer_cnt,sizeof(Layer));
- for ( i=0; i<layer_cnt; ++i )
- LayerDefault(&sc->layers[i]);
- sc->tex_height = sc->tex_depth = sc->italic_correction = sc->top_accent_horiz =
- TEX_UNDEF;
-return( sc );
-}
-
-SplineChar *SFSplineCharCreate(SplineFont *sf) {
- SplineChar *sc = SplineCharCreate(sf==NULL?2:sf->layer_cnt);
- int i;
-
- if ( sf==NULL ) {
- sc->layers[ly_back].background = true;
- sc->layers[ly_fore].background = false;
- } else {
- for ( i=0; i<sf->layer_cnt; ++i ) {
- sc->layers[i].background = sf->layers[i].background;
- sc->layers[i].order2 = sf->layers[i].order2;
- }
- sc->parent = sf;
- }
-return( sc );
-}
-
-void GlyphVariantsFree(struct glyphvariants *gv) {
- int i;
-
- if ( gv==NULL )
-return;
- free(gv->variants);
- DeviceTableFree(gv->italic_adjusts);
- for ( i=0; i<gv->part_cnt; ++i )
- free( gv->parts[i].component );
- free(gv->parts);
- chunkfree(gv,sizeof(*gv));
-}
-
-void MathKernVContentsFree(struct mathkernvertex *mk) {
- int i;
- for ( i=0; i<mk->cnt; ++i ) {
- DeviceTableFree(mk->mkd[i].height_adjusts);
- DeviceTableFree(mk->mkd[i].kern_adjusts);
- }
- free(mk->mkd);
-}
-
-void MathKernFree(struct mathkern *mk) {
- int i;
-
- if ( mk==NULL )
-return;
- for ( i=0; i<4; ++i )
- MathKernVContentsFree( &(&mk->top_right)[i] );
- chunkfree(mk,sizeof(*mk));
-}
-
-void SplineCharListsFree(struct splinecharlist *dlist) {
- struct splinecharlist *dnext;
- for ( ; dlist!=NULL; dlist = dnext ) {
- dnext = dlist->next;
- chunkfree(dlist,sizeof(struct splinecharlist));
- }
-}
-
-struct pattern *PatternCopy(struct pattern *old, real transform[6]) {
- struct pattern *pat;
-
- if ( old==NULL )
-return( NULL );
-
- pat = chunkalloc(sizeof(struct pattern));
-
- *pat = *old;
- pat->pattern = copy( old->pattern );
- if ( transform!=NULL )
- MatMultiply(pat->transform,transform,pat->transform);
-return( pat );
-}
-
-void PatternFree(struct pattern *pat) {
- if ( pat==NULL )
-return;
- free(pat->pattern);
- chunkfree(pat,sizeof(struct pattern));
-}
-
-struct gradient *GradientCopy(struct gradient *old,real transform[6]) {
- struct gradient *grad;
-
- if ( old==NULL )
-return( NULL );
-
- grad = chunkalloc(sizeof(struct gradient));
-
- *grad = *old;
- grad->grad_stops = malloc(old->stop_cnt*sizeof(struct grad_stops));
- memcpy(grad->grad_stops,old->grad_stops,old->stop_cnt*sizeof(struct grad_stops));
- if ( transform!=NULL ) {
- BpTransform(&grad->start,&grad->start,transform);
- BpTransform(&grad->stop,&grad->stop,transform);
- }
-return( grad );
-}
-
-void GradientFree(struct gradient *grad) {
- if ( grad==NULL )
-return;
- free(grad->grad_stops);
- chunkfree(grad,sizeof(struct gradient));
-}
-
-void BrushCopy(struct brush *into, struct brush *from, real transform[6]) {
- *into = *from;
- into->gradient = GradientCopy(from->gradient,transform);
- into->pattern = PatternCopy(from->pattern,transform);
-}
-
-void PenCopy(struct pen *into, struct pen *from,real transform[6]) {
- *into = *from;
- into->brush.gradient = GradientCopy(from->brush.gradient,transform);
- into->brush.pattern = PatternCopy(from->brush.pattern,transform);
-}
-
-void LayerFreeContents(SplineChar *sc,int layer) {
- SplinePointListsFree(sc->layers[layer].splines);
- GradientFree(sc->layers[layer].fill_brush.gradient);
- PatternFree(sc->layers[layer].fill_brush.pattern);
- GradientFree(sc->layers[layer].stroke_pen.brush.gradient);
- PatternFree(sc->layers[layer].stroke_pen.brush.pattern);
- RefCharsFree(sc->layers[layer].refs);
- /* image garbage collection????!!!! */
-}
-
-void SplineCharFreeContents(SplineChar *sc) {
- int i;
-
- if ( sc==NULL )
-return;
- if (sc->name != NULL) free(sc->name);
- if (sc->comment != NULL) free(sc->comment);
- for ( i=0; i<sc->layer_cnt; ++i ) {
-#if defined(_NO_PYTHON)
- if (sc->layers[i].python_persistent != NULL) free( sc->layers[i].python_persistent ); /* It's a string of pickled data which we leave as a string */
-#else
- PyFF_FreeSCLayer(sc, i);
-#endif
- LayerFreeContents(sc,i);
- }
- StemInfosFree(sc->hstem);
- StemInfosFree(sc->vstem);
- DStemInfosFree(sc->dstem);
- MinimumDistancesFree(sc->md);
- KernPairsFree(sc->kerns);
- KernPairsFree(sc->vkerns);
- AnchorPointsFree(sc->anchor);
- SplineCharListsFree(sc->dependents);
- PSTFree(sc->possub);
- if (sc->ttf_instrs != NULL) free(sc->ttf_instrs);
- if (sc->countermasks != NULL) free(sc->countermasks);
- if (sc->layers != NULL) free(sc->layers);
- AltUniFree(sc->altuni);
- GlyphVariantsFree(sc->horiz_variants);
- GlyphVariantsFree(sc->vert_variants);
- DeviceTableFree(sc->italic_adjusts);
- DeviceTableFree(sc->top_accent_adjusts);
- MathKernFree(sc->mathkern);
- if (sc->glif_name != NULL) { free(sc->glif_name); sc->glif_name = NULL; }
-}
-
-void SplineCharFree(SplineChar *sc) {
-
- if ( sc==NULL )
-return;
- SplineCharFreeContents(sc);
- chunkfree(sc,sizeof(SplineChar));
-}
-
-void AnchorClassesFree(AnchorClass *an) {
- AnchorClass *anext;
- for ( ; an!=NULL; an = anext ) {
- anext = an->next;
- free(an->name);
- chunkfree(an,sizeof(AnchorClass));
- }
-}
-
-void TtfTablesFree(struct ttf_table *tab) {
- struct ttf_table *next;
-
- for ( ; tab!=NULL; tab = next ) {
- next = tab->next;
- free(tab->data);
- chunkfree(tab,sizeof(struct ttf_table));
- }
-}
-
-void ScriptLangListFree(struct scriptlanglist *sl) {
- struct scriptlanglist *next;
-
- while ( sl!=NULL ) {
- next = sl->next;
- free(sl->morelangs);
- chunkfree(sl,sizeof(*sl));
- sl = next;
- }
-}
-
-void FeatureScriptLangListFree(FeatureScriptLangList *fl) {
- FeatureScriptLangList *next;
-
- while ( fl!=NULL ) {
- next = fl->next;
- ScriptLangListFree(fl->scripts);
- chunkfree(fl,sizeof(*fl));
- fl = next;
- }
-}
-
-void OTLookupFree(OTLookup *lookup) {
- struct lookup_subtable *st, *stnext;
-
- free(lookup->lookup_name);
- FeatureScriptLangListFree(lookup->features);
- for ( st=lookup->subtables; st!=NULL; st=stnext ) {
- stnext = st->next;
- free(st->subtable_name);
- free(st->suffix);
- chunkfree(st,sizeof(struct lookup_subtable));
- }
- chunkfree( lookup,sizeof(OTLookup) );
-}
-
-void OTLookupListFree(OTLookup *lookup ) {
- OTLookup *next;
-
- for ( ; lookup!=NULL; lookup = next ) {
- next = lookup->next;
- OTLookupFree(lookup);
- }
-}
-
-void KernClassFreeContents(KernClass *kc) {
- int i;
- for ( i=1; i<kc->first_cnt; ++i )
- free(kc->firsts[i]);
- for ( i=1; i<kc->second_cnt; ++i )
- free(kc->seconds[i]);
- free(kc->firsts);
- free(kc->seconds);
- free(kc->offsets);
- for ( i=kc->first_cnt*kc->second_cnt-1; i>=0 ; --i )
- free(kc->adjusts[i].corrections);
- free(kc->adjusts);
- if (kc->firsts_flags) free(kc->firsts_flags);
- if (kc->seconds_flags) free(kc->seconds_flags);
- if (kc->offsets_flags) free(kc->offsets_flags);
- if (kc->firsts_names) {
- for ( i=kc->first_cnt-1; i>=0 ; --i )
- free(kc->firsts_names[i]);
- free(kc->firsts_names);
- }
- if (kc->seconds_names) {
- for ( i=kc->second_cnt-1; i>=0 ; --i )
- free(kc->seconds_names[i]);
- free(kc->seconds_names);
- }
-}
-
-void KernClassClearSpecialContents(KernClass *kc) {
- // This frees and zeros special data not handled by the FontForge GUI,
- // most of which comes from U. F. O..
- int i;
- if (kc->firsts_flags) { free(kc->firsts_flags); kc->firsts_flags = NULL; }
- if (kc->seconds_flags) { free(kc->seconds_flags); kc->seconds_flags = NULL; }
- if (kc->offsets_flags) { free(kc->offsets_flags); kc->offsets_flags = NULL; }
- if (kc->firsts_names) {
- for ( i=kc->first_cnt-1; i>=0 ; --i )
- free(kc->firsts_names[i]);
- free(kc->firsts_names);
- kc->firsts_names = NULL;
- }
- if (kc->seconds_names) {
- for ( i=kc->second_cnt-1; i>=0 ; --i )
- free(kc->seconds_names[i]);
- free(kc->seconds_names);
- kc->seconds_names = NULL;
- }
-}
-
-void KernClassListFree(KernClass *kc) {
- KernClass *n;
-
- while ( kc ) {
- KernClassFreeContents(kc);
- n = kc->next;
- chunkfree(kc,sizeof(KernClass));
- kc = n;
- }
-}
-
-void KernClassListClearSpecialContents(KernClass *kc) {
- KernClass *n;
-
- while ( kc ) {
- KernClassClearSpecialContents(kc);
- n = kc->next;
- kc = n;
- }
-}
-
-void MacNameListFree(struct macname *mn) {
- struct macname *next;
-
- while ( mn!=NULL ) {
- next = mn->next;
- free(mn->name);
- chunkfree(mn,sizeof(struct macname));
- mn = next;
- }
-}
-
-void MacSettingListFree(struct macsetting *ms) {
- struct macsetting *next;
-
- while ( ms!=NULL ) {
- next = ms->next;
- MacNameListFree(ms->setname);
- chunkfree(ms,sizeof(struct macsetting));
- ms = next;
- }
-}
-
-void MacFeatListFree(MacFeat *mf) {
- MacFeat *next;
-
- while ( mf!=NULL ) {
- next = mf->next;
- MacNameListFree(mf->featname);
- MacSettingListFree(mf->settings);
- chunkfree(mf,sizeof(MacFeat));
- mf = next;
- }
-}
-
-void ASMFree(ASM *sm) {
- ASM *next;
- int i;
-
- while ( sm!=NULL ) {
- next = sm->next;
- if ( sm->type==asm_insert ) {
- for ( i=0; i<sm->class_cnt*sm->state_cnt; ++i ) {
- free( sm->state[i].u.insert.mark_ins );
- free( sm->state[i].u.insert.cur_ins );
- }
- } else if ( sm->type==asm_kern ) {
- for ( i=0; i<sm->class_cnt*sm->state_cnt; ++i ) {
- free( sm->state[i].u.kern.kerns );
- }
- }
- for ( i=4; i<sm->class_cnt; ++i )
- free(sm->classes[i]);
- free(sm->state);
- free(sm->classes);
- chunkfree(sm,sizeof(ASM));
- sm = next;
- }
-}
-
-void OtfNameListFree(struct otfname *on) {
- struct otfname *on_next;
-
- for ( ; on!=NULL; on = on_next ) {
- on_next = on->next;
- free(on->name);
- chunkfree(on,sizeof(*on));
- }
-}
-
-void OtfFeatNameListFree(struct otffeatname *fn) {
- struct otffeatname *fn_next;
-
- for ( ; fn!=NULL; fn = fn_next ) {
- fn_next = fn->next;
- OtfNameListFree(fn->names);
- chunkfree(fn,sizeof(*fn));
- }
-}
-
-EncMap *EncMapNew(int enccount,int backmax,Encoding *enc) {
-/* NOTE: 'enccount' and 'backmax' can sometimes be different map sizes */
- EncMap *map;
-
- /* Ensure all memory available, otherwise cleanup and exit as NULL */
- if ( (map=chunkalloc(sizeof(EncMap)))!=NULL ) {
- if ( (map->map=malloc(enccount*sizeof(int32)))!=NULL ) {
- if ( (map->backmap=malloc(backmax*sizeof(int32)))!=NULL ) {
- map->enccount = map->encmax = enccount;
- map->backmax = backmax;
- memset(map->map,-1,enccount*sizeof(int32));
- memset(map->backmap,-1,backmax*sizeof(int32));
- map->enc = enc;
- return( map );
- }
- free(map->map);
- }
- free(map);
- }
- return( NULL );
-}
-
-EncMap *EncMap1to1(int enccount) {
-/* Used for CID fonts where CID is same as orig_pos */
-/* NOTE: map-enc point to a global variable custom. */
-/* TODO: avoid global custom and use passed pointer */
- EncMap *map;
- int i;
-
- if ( (map=EncMapNew(enccount,enccount,&custom))!=NULL ) {
- for ( i=0; i<enccount; ++i )
- map->map[i] = map->backmap[i] = i;
- }
- return( map );
-}
-
-void EncMapFree(EncMap *map) {
- if ( map==NULL )
-return;
-
- if ( map->enc->is_temporary )
- EncodingFree(map->enc);
- free(map->map);
- free(map->backmap);
- free(map->remap);
- chunkfree(map,sizeof(EncMap));
-}
-
-void MarkClassFree(int cnt,char **classes,char **names) {
- int i;
-
- for ( i=1; i<cnt; ++i ) {
- free( classes[i] );
- free( names[i] );
- }
- free( classes );
- free( names );
-}
-
-void MarkSetFree(int cnt,char **classes,char **names) {
- int i;
-
- for ( i=0; i<cnt; ++i ) {
- free( classes[i] );
- free( names[i] );
- }
- free( classes );
- free( names );
-}
-
-struct baselangextent *BaseLangCopy(struct baselangextent *extent) {
- struct baselangextent *head, *last, *cur;
-
- last = head = NULL;
- for ( ; extent!=NULL; extent = extent->next ) {
- cur = chunkalloc(sizeof(struct baselangextent));
- *cur = *extent;
- cur->features = BaseLangCopy(cur->features);
- if ( head==NULL )
- head = cur;
- else
- last->next = cur;
- last = cur;
- }
-return( head );
-}
-
-void BaseLangFree(struct baselangextent *extent) {
- struct baselangextent *next;
-
- while ( extent!=NULL ) {
- next = extent->next;
- BaseLangFree(extent->features);
- chunkfree(extent,sizeof(struct baselangextent));
- extent = next;
- }
-}
-
-void BaseScriptFree(struct basescript *bs) {
- struct basescript *next;
-
- while ( bs!=NULL ) {
- next = bs->next;
- if ( bs->baseline_pos )
- free(bs->baseline_pos);
- BaseLangFree(bs->langs);
- chunkfree(bs,sizeof(struct basescript));
- bs = next;
- }
-}
-
-void BaseFree(struct Base *base) {
- if ( base==NULL )
-return;
-
- free(base->baseline_tags);
- BaseScriptFree(base->scripts);
- chunkfree(base,sizeof(struct Base));
-}
-
-void JstfLangFree(struct jstf_lang *jl) {
- struct jstf_lang *next;
- int i;
-
- while ( jl!=NULL ) {
- next = jl->next;
- for ( i=0; i<jl->cnt; ++i ) {
- struct jstf_prio *jp = &jl->prios[i];
- free(jp->enableShrink);
- free(jp->disableShrink);
- free(jp->maxShrink);
- free(jp->enableExtend);
- free(jp->disableExtend);
- free(jp->maxExtend);
- }
- free(jl->prios);
- chunkfree(jl,sizeof(*jl));
- jl = next;
- }
-}
-
-void JustifyFree(Justify *just) {
- Justify *next;
-
- while ( just!=NULL ) {
- next = just->next;
- free(just->extenders);
- JstfLangFree(just->langs);
- chunkfree(just,sizeof(*just));
- just = next;
- }
-}
-
-void SplineFontFree(SplineFont *sf) {
- int i;
-
- if ( sf==NULL )
-return;
- if ( sf->mm!=NULL ) {
- MMSetFree(sf->mm);
-return;
- }
- if ( sf->sfd_version>0 && sf->sfd_version<2 ) {
- // Free special data.
- SplineFont1* oldsf = (SplineFont1*)sf;
- // First the script language lists.
- if (oldsf->script_lang != NULL) {
- int scripti;
- for (scripti = 0; oldsf->script_lang[scripti] != NULL; scripti ++) {
- int scriptj;
- for (scriptj = 0; oldsf->script_lang[scripti][scriptj].script != 0; scriptj ++) {
- if (oldsf->script_lang[scripti][scriptj].langs != NULL) free(oldsf->script_lang[scripti][scriptj].langs);
- }
- free(oldsf->script_lang[scripti]); oldsf->script_lang[scripti] = NULL;
- }
- free(oldsf->script_lang); oldsf->script_lang = NULL;
- }
- // Then the table orderings.
- {
- struct table_ordering *ord = oldsf->orders;
- while (ord != NULL) {
- struct table_ordering *ordtofree = ord;
- if (ord->ordered_features != NULL) free(ord->ordered_features);
- ord = ord->next;
- chunkfree(ordtofree, sizeof(struct table_ordering));
- }
- oldsf->orders = NULL;
- }
- }
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL )
- SplineCharFree(sf->glyphs[i]);
- free(sf->glyphs);
- free(sf->fontname);
- free(sf->fullname);
- free(sf->familyname);
- free(sf->weight);
- free(sf->copyright);
- free(sf->comments);
- free(sf->filename);
- free(sf->origname);
- free(sf->autosavename);
- free(sf->version);
- free(sf->xuid);
- free(sf->cidregistry);
- free(sf->ordering);
- if (sf->map != 0)
- EncMapFree(sf->map);
- if (sf->MATH)
- free(sf->MATH);
- if ( sf->styleMapFamilyName && sf->styleMapFamilyName[0]!='\0' ) { free(sf->styleMapFamilyName); sf->styleMapFamilyName = NULL; }
- MacFeatListFree(sf->features);
- /* We don't free the EncMap. That field is only a temporary pointer. Let the FontViewBase free it, that's where it really lives */
- // TODO: But that doesn't always get freed. The statement below causes double-frees, so we need to come up with better conditions.
- #if 0
- if (sf->cidmaster == NULL || sf->cidmaster == sf)
- if (sf->map != NULL) { free(sf->map); sf->map = NULL; }
- #endif // 0
- SplinePointListsFree(sf->grid.splines);
- AnchorClassesFree(sf->anchor);
- TtfTablesFree(sf->ttf_tables);
- TtfTablesFree(sf->ttf_tab_saved);
- PSDictFree(sf->private);
- TTFLangNamesFree(sf->names);
- for ( i=0; i<sf->subfontcnt; ++i )
- SplineFontFree(sf->subfonts[i]);
- free(sf->subfonts);
- GlyphHashFree(sf);
- OTLookupListFree(sf->gpos_lookups);
- OTLookupListFree(sf->gsub_lookups);
- KernClassListFree(sf->kerns);
- KernClassListFree(sf->vkerns);
- FPSTFree(sf->possub);
- ASMFree(sf->sm);
- OtfNameListFree(sf->fontstyle_name);
- OtfFeatNameListFree(sf->feat_names);
- MarkClassFree(sf->mark_class_cnt,sf->mark_classes,sf->mark_class_names);
- MarkSetFree(sf->mark_set_cnt,sf->mark_sets,sf->mark_set_names);
- GlyphGroupsFree(sf->groups);
- GlyphGroupKernsFree(sf->groupkerns);
- GlyphGroupKernsFree(sf->groupvkerns);
- free( sf->gasp );
-#if defined(_NO_PYTHON)
- free( sf->python_persistent ); /* It's a string of pickled data which we leave as a string */
-#else
- PyFF_FreeSF(sf);
-#endif
- BaseFree(sf->horiz_base);
- BaseFree(sf->vert_base);
- JustifyFree(sf->justify);
- if (sf->layers != NULL) {
- int layer;
- for (layer = 0; layer < sf->layer_cnt; layer ++) {
- if (sf->layers[layer].name != NULL) {
- free(sf->layers[layer].name);
- sf->layers[layer].name = NULL;
- }
- if (sf->layers[layer].ufo_path != NULL) {
- free(sf->layers[layer].ufo_path);
- sf->layers[layer].ufo_path = NULL;
- }
- }
- free(sf->layers); sf->layers = NULL;
- }
- free(sf);
-}
-
-void SplineFontClearSpecial(SplineFont *sf) {
- int i;
-
- if ( sf==NULL )
-return;
- if ( sf->mm!=NULL ) {
- MMSetClearSpecial(sf->mm);
-return;
- }
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- struct splinechar *sc = sf->glyphs[i];
- if (sc->glif_name != NULL) { free(sc->glif_name); sc->glif_name = NULL; }
- }
- for ( i=0; i<sf->subfontcnt; ++i )
- SplineFontClearSpecial(sf->subfonts[i]);
- KernClassListClearSpecialContents(sf->kerns);
- KernClassListClearSpecialContents(sf->vkerns);
- if (sf->groups) { GlyphGroupsFree(sf->groups); sf->groups = NULL; }
- if (sf->groupkerns) { GlyphGroupKernsFree(sf->groupkerns); sf->groupkerns = NULL; }
- if (sf->groupvkerns) { GlyphGroupKernsFree(sf->groupvkerns); sf->groupvkerns = NULL; }
- if (sf->python_persistent) {
-#if defined(_NO_PYTHON)
- free( sf->python_persistent ); /* It's a string of pickled data which we leave as a string */
-#else
- PyFF_FreeSF(sf);
-#endif
- sf->python_persistent = NULL;
- }
- if (sf->layers != NULL) {
- int layer;
- for (layer = 0; layer < sf->layer_cnt; layer ++) {
- if (sf->layers[layer].ufo_path != NULL) {
- free(sf->layers[layer].ufo_path);
- sf->layers[layer].ufo_path = NULL;
- }
- }
- }
-}
-
-#if 0
-// These are in splinefont.h.
-#define GROUP_NAME_KERNING_UFO 1
-#define GROUP_NAME_KERNING_FEATURE 2
-#define GROUP_NAME_VERTICAL 4 // Otherwise horizontal.
-#define GROUP_NAME_RIGHT 8 // Otherwise left (or above).
-#endif // 0
-
-
-void GlyphGroupFree(struct ff_glyphclasses* group) {
- if (group->classname != NULL) free(group->classname);
- if (group->glyphs != NULL) free(group->glyphs);
- free(group);
-}
-
-void GlyphGroupsFree(struct ff_glyphclasses* root) {
- struct ff_glyphclasses* current = root;
- struct ff_glyphclasses* next;
- while (current != NULL) {
- next = current->next;
- GlyphGroupFree(current);
- current = next;
- }
-}
-
-void GlyphGroupKernFree(struct ff_rawoffsets* groupkern) {
- if (groupkern->left != NULL) free(groupkern->left);
- if (groupkern->right != NULL) free(groupkern->right);
- free(groupkern);
-}
-
-void GlyphGroupKernsFree(struct ff_rawoffsets* root) {
- struct ff_rawoffsets* current = root;
- struct ff_rawoffsets* next;
- while (current != NULL) {
- next = current->next;
- GlyphGroupKernFree(current);
- current = next;
- }
-}
-
-
-#ifdef FF_UTHASH_GLIF_NAMES
-int HashKerningClassNamesFlex(SplineFont *sf, struct glif_name_index * class_name_hash, int capitalize) {
- struct kernclass *current_kernclass;
- int isv;
- int isr;
- int i;
- int absolute_index = 0; // This gives us a unique index for each kerning class.
- // First we catch the existing names.
- absolute_index = 0;
- for (isv = 0; isv < 2; isv++)
- for (current_kernclass = (isv ? sf->vkerns : sf->kerns); current_kernclass != NULL; current_kernclass = current_kernclass->next)
- for (isr = 0; isr < 2; isr++) if ( (isr ? current_kernclass->seconds_names : current_kernclass->firsts_names) != NULL ) {
- for ( i=0; i < (isr ? current_kernclass->second_cnt : current_kernclass->first_cnt); ++i )
- if ( (isr ? current_kernclass->seconds_names[i] : current_kernclass->firsts_names[i]) != NULL ) {
- // Add it to the hash table with its index.
- if (capitalize) {
- char * cap_name = upper_case(isr ? current_kernclass->seconds_names[i] : current_kernclass->firsts_names[i]);
- glif_name_track_new(class_name_hash, absolute_index + i, cap_name);
- free(cap_name); cap_name = NULL;
- } else {
- glif_name_track_new(class_name_hash, absolute_index + i, (isr ? current_kernclass->seconds_names[i] : current_kernclass->firsts_names[i]));
- }
- }
- absolute_index +=i;
- }
- return absolute_index;
-}
-int HashKerningClassNames(SplineFont *sf, struct glif_name_index * class_name_hash) {
- return HashKerningClassNamesFlex(sf, class_name_hash, 0);
-}
-int HashKerningClassNamesCaps(SplineFont *sf, struct glif_name_index * class_name_hash) {
- return HashKerningClassNamesFlex(sf, class_name_hash, 1);
-}
-#endif
-
-void MMSetFreeContents(MMSet *mm) {
- int i;
-
- free(mm->instances);
-
- free(mm->positions);
- free(mm->defweights);
-
- for ( i=0; i<mm->axis_count; ++i ) {
- free(mm->axes[i]);
- free(mm->axismaps[i].blends);
- free(mm->axismaps[i].designs);
- MacNameListFree(mm->axismaps[i].axisnames);
- }
- free(mm->axismaps);
- free(mm->cdv);
- free(mm->ndv);
- for ( i=0; i<mm->named_instance_count; ++i ) {
- free(mm->named_instances[i].coords);
- MacNameListFree(mm->named_instances[i].names);
- }
- free(mm->named_instances);
-}
-
-void MMSetFree(MMSet *mm) {
- int i;
-
- for ( i=0; i<mm->instance_count; ++i ) {
- mm->instances[i]->mm = NULL;
- mm->instances[i]->map = NULL;
- SplineFontFree(mm->instances[i]);
- }
- mm->normal->mm = NULL;
- SplineFontFree(mm->normal); /* EncMap gets freed here */
- MMSetFreeContents(mm);
-
- chunkfree(mm,sizeof(*mm));
-}
-
-void MMSetClearSpecial(MMSet *mm) {
- int i;
-
- for ( i=0; i<mm->instance_count; ++i ) {
- SplineFontClearSpecial(mm->instances[i]);
- }
- SplineFontClearSpecial(mm->normal);
-}
-
-SplinePoint *SplineBisect(Spline *spline, extended t) {
- Spline1 xstart, xend;
- Spline1 ystart, yend;
- Spline *spline1, *spline2;
- SplinePoint *mid;
- SplinePoint *old0, *old1;
- Spline1D *xsp = &spline->splines[0], *ysp = &spline->splines[1];
- int order2 = spline->order2;
-
-#ifdef DEBUG
- if ( t<=1e-3 || t>=1-1e-3 )
- IError("Bisection to create a zero length spline");
-#endif
- xstart.s0 = xsp->d; ystart.s0 = ysp->d;
- xend.s1 = (extended) xsp->a+xsp->b+xsp->c+xsp->d;
- yend.s1 = (extended) ysp->a+ysp->b+ysp->c+ysp->d;
- xstart.s1 = xend.s0 = ((xsp->a*t+xsp->b)*t+xsp->c)*t + xsp->d;
- ystart.s1 = yend.s0 = ((ysp->a*t+ysp->b)*t+ysp->c)*t + ysp->d;
- FigureSpline1(&xstart,0,t,xsp);
- FigureSpline1(&xend,t,1,xsp);
- FigureSpline1(&ystart,0,t,ysp);
- FigureSpline1(&yend,t,1,ysp);
-
- mid = chunkalloc(sizeof(SplinePoint));
- mid->me.x = xstart.s1; mid->me.y = ystart.s1;
- if ( order2 ) {
- mid->nextcp.x = xend.sp.d + xend.sp.c/2;
- mid->nextcp.y = yend.sp.d + yend.sp.c/2;
- mid->prevcp.x = xstart.sp.d + xstart.sp.c/2;
- mid->prevcp.y = ystart.sp.d + ystart.sp.c/2;
- } else {
- mid->nextcp.x = xend.c0; mid->nextcp.y = yend.c0;
- mid->prevcp.x = xstart.c1; mid->prevcp.y = ystart.c1;
- }
- if ( mid->me.x==mid->nextcp.x && mid->me.y==mid->nextcp.y )
- mid->nonextcp = true;
- if ( mid->me.x==mid->prevcp.x && mid->me.y==mid->prevcp.y )
- mid->noprevcp = true;
-
- old0 = spline->from; old1 = spline->to;
- if ( order2 ) {
- old0->nextcp = mid->prevcp;
- old1->prevcp = mid->nextcp;
- } else {
- old0->nextcp.x = xstart.c0; old0->nextcp.y = ystart.c0;
- old1->prevcp.x = xend.c1; old1->prevcp.y = yend.c1;
- }
- old0->nonextcp = (old0->nextcp.x==old0->me.x && old0->nextcp.y==old0->me.y);
- old1->noprevcp = (old1->prevcp.x==old1->me.x && old1->prevcp.y==old1->me.y);
- old0->nextcpdef = false;
- old1->prevcpdef = false;
- SplineFree(spline);
-
- spline1 = chunkalloc(sizeof(Spline));
- spline1->splines[0] = xstart.sp; spline1->splines[1] = ystart.sp;
- spline1->from = old0;
- spline1->to = mid;
- spline1->order2 = order2;
- old0->next = spline1;
- mid->prev = spline1;
- if ( SplineIsLinear(spline1)) {
- spline1->islinear = spline1->from->nonextcp = spline1->to->noprevcp = true;
- spline1->from->nextcp = spline1->from->me;
- spline1->to->prevcp = spline1->to->me;
- }
- SplineRefigure(spline1);
-
- spline2 = chunkalloc(sizeof(Spline));
- spline2->splines[0] = xend.sp; spline2->splines[1] = xend.sp;
- spline2->from = mid;
- spline2->to = old1;
- spline2->order2 = order2;
- mid->next = spline2;
- old1->prev = spline2;
- if ( SplineIsLinear(spline2)) {
- spline2->islinear = spline2->from->nonextcp = spline2->to->noprevcp = true;
- spline2->from->nextcp = spline2->from->me;
- spline2->to->prevcp = spline2->to->me;
- }
- SplineRefigure(spline2);
-return( mid );
-}
-
-void GrowBuffer(GrowBuf *gb) {
- if ( gb->base==NULL ) {
- gb->base = gb->pt = malloc(200);
- gb->end = gb->base + 200;
- } else {
- int len = (gb->end-gb->base) + 400;
- int off = gb->pt-gb->base;
- gb->base = realloc(gb->base,len);
- gb->end = gb->base + len;
- gb->pt = gb->base+off;
- }
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/splineutil2.c b/dviware/dvisvgm/libs/ff-woff/fontforge/splineutil2.c
deleted file mode 100644
index 2f18829852..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/splineutil2.c
+++ /dev/null
@@ -1,1518 +0,0 @@
-/* -*- coding: utf-8 -*- */
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include <math.h>
-#include <time.h>
-
-int new_em_size = 1000;
-int new_fonts_are_order2 = false;
-int loaded_fonts_same_as_new = false;
-int default_fv_row_count = 4;
-int default_fv_col_count = 16;
-int default_fv_font_size = 48;
-int default_fv_antialias=true;
-int default_fv_bbsized=false;
-int snaptoint=0;
-
-/*#define DEBUG 1*/
-
-#if defined( FONTFORGE_CONFIG_USE_DOUBLE )
-# define RE_NearZero .00000001
-# define RE_Factor (1024.0*1024.0*1024.0*1024.0*1024.0*2.0) /* 52 bits => divide by 2^51 */
-#else
-# define RE_NearZero .00001
-# define RE_Factor (1024.0*1024.0*4.0) /* 23 bits => divide by 2^22 */
-#endif
-
-int Within4RoundingErrors(bigreal v1, bigreal v2) {
- bigreal temp=v1*v2;
- bigreal re;
-
- if ( temp<0 ) /* Ok, if the two values are on different sides of 0 there */
-return( false ); /* is no way they can be within a rounding error of each other */
- else if ( temp==0 ) {
- if ( v1==0 )
-return( v2<RE_NearZero && v2>-RE_NearZero );
- else
-return( v1<RE_NearZero && v1>-RE_NearZero );
- } else if ( v1>0 ) {
- if ( v1>v2 ) { /* Rounding error from the biggest absolute value */
- re = v1/ (RE_Factor/4);
-return( v1-v2 < re );
- } else {
- re = v2/ (RE_Factor/4);
-return( v2-v1 < re );
- }
- } else {
- if ( v1<v2 ) {
- re = v1/ (RE_Factor/4); /* This will be a negative number */
-return( v1-v2 > re );
- } else {
- re = v2/ (RE_Factor/4);
-return( v2-v1 > re );
- }
- }
-}
-
-int Within16RoundingErrors(bigreal v1, bigreal v2) {
- bigreal temp=v1*v2;
- bigreal re;
-
- if ( temp<0 ) /* Ok, if the two values are on different sides of 0 there */
-return( false ); /* is no way they can be within a rounding error of each other */
- else if ( temp==0 ) {
- if ( v1==0 )
-return( v2<RE_NearZero && v2>-RE_NearZero );
- else
-return( v1<RE_NearZero && v1>-RE_NearZero );
- } else if ( v1>0 ) {
- if ( v1>v2 ) { /* Rounding error from the biggest absolute value */
- re = v1/ (RE_Factor/16);
-return( v1-v2 < re );
- } else {
- re = v2/ (RE_Factor/16);
-return( v2-v1 < re );
- }
- } else {
- if ( v1<v2 ) {
- re = v1/ (RE_Factor/16); /* This will be a negative number */
-return( v1-v2 > re );
- } else {
- re = v2/ (RE_Factor/16);
-return( v2-v1 > re );
- }
- }
-}
-
-int RealNear(real a,real b) {
- real d;
-
-#ifdef FONTFORGE_CONFIG_USE_DOUBLE
- if ( a==0 )
-return( b>-1e-8 && b<1e-8 );
- if ( b==0 )
-return( a>-1e-8 && a<1e-8 );
-
- d = a/(1024*1024.);
-#else /* For floats */
- if ( a==0 )
-return( b>-1e-5 && b<1e-5 );
- if ( b==0 )
-return( a>-1e-5 && a<1e-5 );
-
- d = a/(1024*64.);
-#endif
- a-=b;
- if ( d<0 )
-return( a>d && a<-d );
- else
-return( a>-d && a<d );
-}
-
-int RealNearish(real a,real b) {
-
- a-=b;
-return( a<.001 && a>-.001 );
-}
-
-int RealApprox(real a,real b) {
-
- if ( a==0 ) {
- if ( b<.0001 && b>-.0001 )
-return( true );
- } else if ( b==0 ) {
- if ( a<.0001 && a>-.0001 )
-return( true );
- } else {
- a /= b;
- if ( a>=.95 && a<=1.05 )
-return( true );
- }
-return( false );
-}
-
-int RealWithin(real a,real b,real fudge) {
-
-return( b>=a-fudge && b<=a+fudge );
-}
-
-static int MinMaxWithin(Spline *spline) {
- extended dx, dy;
- int which;
- extended t1, t2;
- extended w;
- /* We know that this "spline" is basically one dimensional. As long as its*/
- /* extrema are between the start and end points on that line then we can */
- /* treat it as a line. If the extrema are way outside the line segment */
- /* then it's a line that backtracks on itself */
-
- if ( (dx = spline->to->me.x - spline->from->me.x)<0 ) dx = -dx;
- if ( (dy = spline->to->me.y - spline->from->me.y)<0 ) dy = -dy;
- which = dx<dy;
- SplineFindExtrema(&spline->splines[which],&t1,&t2);
- if ( t1==-1 )
-return( true );
- w = ((spline->splines[which].a*t1 + spline->splines[which].b)*t1
- + spline->splines[which].c)*t1 + spline->splines[which].d;
- if ( RealNear(w, (&spline->to->me.x)[which]) || RealNear(w, (&spline->from->me.x)[which]) )
- /* Close enough */;
- else if ( (w<(&spline->to->me.x)[which] && w<(&spline->from->me.x)[which]) ||
- (w>(&spline->to->me.x)[which] && w>(&spline->from->me.x)[which]) )
-return( false ); /* Outside */
-
- w = ((spline->splines[which].a*t2 + spline->splines[which].b)*t2
- + spline->splines[which].c)*t2 + spline->splines[which].d;
- if ( RealNear(w, (&spline->to->me.x)[which]) || RealNear(w, (&spline->from->me.x)[which]) )
- /* Close enough */;
- else if ( (w<(&spline->to->me.x)[which] && w<(&spline->from->me.x)[which]) ||
- (w>(&spline->to->me.x)[which] && w>(&spline->from->me.x)[which]) )
-return( false ); /* Outside */
-
-return( true );
-}
-
-int SplineIsLinear(Spline *spline) {
- bigreal t1,t2, t3,t4;
- int ret;
-
- if ( spline->knownlinear )
-return( true );
- if ( spline->knowncurved )
-return( false );
-
- if ( spline->splines[0].a==0 && spline->splines[0].b==0 &&
- spline->splines[1].a==0 && spline->splines[1].b==0 )
-return( true );
-
- /* Something is linear if the control points lie on the line between the */
- /* two base points */
-
- /* Vertical lines */
- if ( RealNear(spline->from->me.x,spline->to->me.x) ) {
- ret = RealNear(spline->from->me.x,spline->from->nextcp.x) &&
- RealNear(spline->from->me.x,spline->to->prevcp.x);
- if ( ! ((spline->from->nextcp.y >= spline->from->me.y &&
- spline->from->nextcp.y <= spline->to->me.y &&
- spline->to->prevcp.y >= spline->from->me.y &&
- spline->to->prevcp.y <= spline->to->me.y ) ||
- (spline->from->nextcp.y <= spline->from->me.y &&
- spline->from->nextcp.y >= spline->to->me.y &&
- spline->to->prevcp.y <= spline->from->me.y &&
- spline->to->prevcp.y >= spline->to->me.y )) )
- ret = MinMaxWithin(spline);
- /* Horizontal lines */
- } else if ( RealNear(spline->from->me.y,spline->to->me.y) ) {
- ret = RealNear(spline->from->me.y,spline->from->nextcp.y) &&
- RealNear(spline->from->me.y,spline->to->prevcp.y);
- if ( ! ((spline->from->nextcp.x >= spline->from->me.x &&
- spline->from->nextcp.x <= spline->to->me.x &&
- spline->to->prevcp.x >= spline->from->me.x &&
- spline->to->prevcp.x <= spline->to->me.x) ||
- (spline->from->nextcp.x <= spline->from->me.x &&
- spline->from->nextcp.x >= spline->to->me.x &&
- spline->to->prevcp.x <= spline->from->me.x &&
- spline->to->prevcp.x >= spline->to->me.x)) )
- ret = MinMaxWithin(spline);
- } else {
- ret = true;
- t1 = (spline->from->nextcp.y-spline->from->me.y)/(spline->to->me.y-spline->from->me.y);
- t2 = (spline->from->nextcp.x-spline->from->me.x)/(spline->to->me.x-spline->from->me.x);
- t3 = (spline->to->me.y-spline->to->prevcp.y)/(spline->to->me.y-spline->from->me.y);
- t4 = (spline->to->me.x-spline->to->prevcp.x)/(spline->to->me.x-spline->from->me.x);
- ret = (Within16RoundingErrors(t1,t2) || (RealApprox(t1,0) && RealApprox(t2,0))) &&
- (Within16RoundingErrors(t3,t4) || (RealApprox(t3,0) && RealApprox(t4,0)));
- if ( ret ) {
- if ( t1<0 || t2<0 || t3<0 || t4<0 ||
- t1>1 || t2>1 || t3>1 || t4>1 )
- ret = MinMaxWithin(spline);
- }
- }
- spline->knowncurved = !ret;
- spline->knownlinear = ret;
- if ( ret ) {
- /* A few places that if the spline is knownlinear then its splines[?] */
- /* are linear. So give the linear version and not that suggested by */
- /* the control points */
- spline->splines[0].a = spline->splines[0].b = 0;
- spline->splines[0].d = spline->from->me.x;
- spline->splines[0].c = spline->to->me.x-spline->from->me.x;
- spline->splines[1].a = spline->splines[1].b = 0;
- spline->splines[1].d = spline->from->me.y;
- spline->splines[1].c = spline->to->me.y-spline->from->me.y;
- }
-return( ret );
-}
-
-/* This routine should almost never be called now. It uses a flawed algorithm */
-/* which won't produce the best results. It gets called only when the better */
-/* approach doesn't work (singular matrices, etc.) */
-/* Old comment, back when I was confused... */
-/* Least squares tells us that:
- | S(xi*ti^3) | | S(ti^6) S(ti^5) S(ti^4) S(ti^3) | | a |
- | S(xi*ti^2) | = | S(ti^5) S(ti^4) S(ti^3) S(ti^2) | * | b |
- | S(xi*ti) | | S(ti^4) S(ti^3) S(ti^2) S(ti) | | c |
- | S(xi) | | S(ti^3) S(ti^2) S(ti) n | | d |
- and the definition of a spline tells us:
- | x1 | = | 1 1 1 1 | * (a b c d)
- | x0 | = | 0 0 0 1 | * (a b c d)
-So we're a bit over specified. Let's use the last two lines of least squares
-and the 2 from the spline defn. So d==x0. Now we've got three unknowns
-and only three equations...
-
-For order2 splines we've got
- | S(xi*ti^2) | | S(ti^4) S(ti^3) S(ti^2) | | b |
- | S(xi*ti) | = | S(ti^3) S(ti^2) S(ti) | * | c |
- | S(xi) | | S(ti^2) S(ti) n | | d |
- and the definition of a spline tells us:
- | x1 | = | 1 1 1 | * (b c d)
- | x0 | = | 0 0 1 | * (b c d)
-=>
- d = x0
- b+c = x1-x0
- S(ti^2)*b + S(ti)*c = S(xi)-n*x0
- S(ti^2)*b + S(ti)*(x1-x0-b) = S(xi)-n*x0
- [ S(ti^2)-S(ti) ]*b = S(xi)-S(ti)*(x1-x0) - n*x0
-*/
-
-static int GoodCurve(SplinePoint *sp, int check_prev ) {
- bigreal dx, dy, lenx, leny;
-
- if ( sp->pointtype!=pt_curve && sp->pointtype!=pt_hvcurve )
-return( false );
- if ( check_prev ) {
- dx = sp->me.x - sp->prevcp.x;
- dy = sp->me.y - sp->prevcp.y;
- } else {
- dx = sp->me.x - sp->nextcp.x;
- dy = sp->me.y - sp->nextcp.y;
- }
- /* If the cp is very close to the base point the point might as well be a corner */
- if ( dx<0 ) dx = -dx;
- if ( dy<0 ) dy = -dy;
- if ( dx+dy<1 )
-return( false );
-
- if ( check_prev ) {
- if ( sp->prev==NULL )
-return( true );
- lenx = sp->me.x - sp->prev->from->me.x;
- leny = sp->me.y - sp->prev->from->me.y;
- } else {
- if ( sp->next==NULL )
-return( true );
- lenx = sp->me.x - sp->next->to->me.x;
- leny = sp->me.y - sp->next->to->me.y;
- }
- if ( lenx<0 ) lenx = -lenx;
- if ( leny<0 ) leny = -leny;
- if ( 50*(dx+dy) < lenx+leny )
-return( false );
-
-return( true );
-}
-
-/* pf == point from (start point) */
-/* Δf == slope from (cp(from) - from) */
-/* pt == point to (end point, t==1) */
-/* Δt == slope to (cp(to) - to) */
-
-/* A spline from pf to pt with slope vectors rf*Δf, rt*Δt is: */
-/* p(t) = pf + [ 3*rf*Δf ]*t + 3*[pt-pf+rt*Δt-2*rf*Δf] *t^2 + */
-/* [2*pf-2*pt+3*rf*Δf-3*rt*Δt]*t^3 */
-
-/* So I want */
-/* d Σ (p(t(i))-p(i))^2/ d rf == 0 */
-/* d Σ (p(t(i))-p(i))^2/ d rt == 0 */
-/* now... */
-/* d Σ (p(t(i))-p(i))^2/ d rf == 0 */
-/* => Σ 3*t*Δf*(1-2*t+t^2)*
- * [pf-pi+ 3*(pt-pf)*t^2 + 2*(pf-pt)*t^3] +
- * 3*[t - 2*t^2 + t^3]*Δf*rf +
- * 3*[t^2-t^3]*Δt*rt */
-/* and... */
-/* d Σ (p(t(i))-p(i))^2/ d rt == 0 */
-/* => Σ 3*t^2*Δt*(1-t)*
- * [pf-pi+ 3*(pt-pf)*t^2 + 2*(pf-pt)*t^3] +
- * 3*[t - 2*t^2 + t^3]*Δf*rf +
- * 3*[t^2-t^3]*Δt*rt */
-
-/* Now for a long time I looked at that and saw four equations and two unknowns*/
-/* That was I was trying to solve for x and y separately, and that doesn't work. */
-/* There are really just two equations and each sums over both x and y components */
-
-/* Old comment: */
-/* I used to do a least squares aproach adding two more to the above set of equations */
-/* which held the slopes constant. But that didn't work very well. So instead*/
-/* Then I tried doing the approximation, and then forcing the control points */
-/* to be in line (witht the original slopes), getting a better approximation */
-/* to "t" for each data point and then calculating an error array, approximating*/
-/* it, and using that to fix up the final result */
-/* Then I tried checking various possible cp lengths in the desired directions*/
-/* finding the best one or two, and doing a 2D binary search using that as a */
-/* starting point. */
-/* And sometimes a least squares approach will give us the right answer, so */
-/* try that too. */
-/* This still isn't as good as I'd like it... But I haven't been able to */
-/* improve it further yet */
-
-bigreal SplineLength(Spline *spline) {
- /* I ignore the constant term. It's just an unneeded addition */
- bigreal len, t;
- bigreal lastx = 0, lasty = 0;
- bigreal curx, cury;
-
- len = 0;
- for ( t=1.0/128; t<=1.0001 ; t+=1.0/128 ) {
- curx = ((spline->splines[0].a*t+spline->splines[0].b)*t+spline->splines[0].c)*t;
- cury = ((spline->splines[1].a*t+spline->splines[1].b)*t+spline->splines[1].c)*t;
- len += sqrt( (curx-lastx)*(curx-lastx) + (cury-lasty)*(cury-lasty) );
- lastx = curx; lasty = cury;
- }
-return( len );
-}
-
-int SPInterpolate(const SplinePoint *sp) {
- /* Using truetype rules, can we interpolate this point? */
-return( !sp->dontinterpolate && !sp->nonextcp && !sp->noprevcp &&
- !sp->roundx && !sp->roundy &&
- (RealWithin(sp->me.x,(sp->nextcp.x+sp->prevcp.x)/2,.1) &&
- RealWithin(sp->me.y,(sp->nextcp.y+sp->prevcp.y)/2,.1)) );
-}
-
-int SpIsExtremum(SplinePoint *sp) {
- BasePoint *ncp, *pcp;
- BasePoint *nncp, *ppcp;
- if ( sp->next==NULL || sp->prev==NULL )
-return( true );
- nncp = &sp->next->to->me;
- if ( !sp->nonextcp ) {
- ncp = &sp->nextcp;
- if ( !sp->next->to->noprevcp )
- nncp = &sp->next->to->prevcp;
- } else if ( !sp->next->to->noprevcp )
- ncp = &sp->next->to->prevcp;
- else
- ncp = nncp;
- ppcp = &sp->prev->from->me;
- if ( !sp->noprevcp ) {
- pcp = &sp->prevcp;
- if ( !sp->prev->from->nonextcp )
- ppcp = &sp->prev->from->nextcp;
- } else if ( !sp->prev->from->nonextcp )
- pcp = &sp->prev->from->nextcp;
- else
- pcp = ppcp;
- if ((( ncp->x<sp->me.x || (ncp->x==sp->me.x && nncp->x<sp->me.x)) &&
- (pcp->x<sp->me.x || (pcp->x==sp->me.x && ppcp->x<sp->me.x))) ||
- ((ncp->x>sp->me.x || (ncp->x==sp->me.x && nncp->x>sp->me.x)) &&
- (pcp->x>sp->me.x || (pcp->x==sp->me.x && ppcp->x>sp->me.x))) ||
- (( ncp->y<sp->me.y || (ncp->y==sp->me.y && nncp->y<sp->me.y)) &&
- (pcp->y<sp->me.y || (pcp->y==sp->me.y && ppcp->y<sp->me.y))) ||
- ((ncp->y>sp->me.y || (ncp->y==sp->me.y && nncp->y>sp->me.y)) &&
- (pcp->y>sp->me.y || (pcp->y==sp->me.y && ppcp->y>sp->me.y))))
-return( true );
-
- /* These aren't true points of extrema, but they probably should be treated */
- /* as if they were */
- if ( !sp->nonextcp && !sp->noprevcp &&
- ((sp->me.x==sp->nextcp.x && sp->me.x==sp->prevcp.x) ||
- (sp->me.y==sp->nextcp.y && sp->me.y==sp->prevcp.y)) )
-return( true );
-
-return( false );
-}
-
-/* An extremum is very close to the end-point. So close that we don't want */
-/* to add a new point. Instead try moving the control points around */
-/* Options: */
-/* o if the control point is very close to the base point then remove it */
-/* o if the slope at the endpoint is in the opposite direction from */
-/* what we expect, then subtract off the components we don't like */
-/* o make the slope at the end point horizontal/vertical */
-static int ForceEndPointExtrema(Spline *s,int isto) {
- SplinePoint *end;
- BasePoint *cp, to, unitslope, othercpunit, myslope;
- bigreal xdiff, ydiff, mylen, cplen, mydot, cpdot, len;
- /* To get here we know that the extremum is extremely close to the end */
- /* point, and adjusting the slope at the end-point may be all we need */
- /* to do. We won't need to adjust it by much, because it is so close. */
-
- if ( isto ) {
- end = s->to; cp = &end->prevcp;
- othercpunit.x = s->from->nextcp.x - s->from->me.x;
- othercpunit.y = s->from->nextcp.y - s->from->me.y;
- } else {
- end = s->from; cp = &end->nextcp;
- othercpunit.x = s->to->prevcp.x-s->to->me.x;
- othercpunit.y = s->to->prevcp.y-s->to->me.y;
- }
- cplen = othercpunit.x*othercpunit.x + othercpunit.y*othercpunit.y;
- cplen = sqrt(cplen);
- myslope.x = cp->x - end->me.x;
- myslope.y = cp->y - end->me.y;
- mylen = sqrt(myslope.x*myslope.x + myslope.y*myslope.y);
-
- unitslope.x = s->to->me.x - s->from->me.x;
- unitslope.y = s->to->me.y - s->from->me.y;
- len = unitslope.x*unitslope.x + unitslope.y*unitslope.y;
- if ( len==0 )
-return( -1 );
- len = sqrt(len);
- if ( mylen<30*len && mylen<cplen && mylen<1 ) {
- if ( isto ) {
- s->to->noprevcp = true;
- s->to->prevcp = s->to->me;
- } else {
- s->from->nonextcp = true;
- s->from->nextcp = s->from->me;
- }
- end->pointtype = pt_corner;
- SplineRefigure(s);
-return( true ); /* We changed the slope */
- }
- unitslope.x /= len; unitslope.y /= len;
-
- mydot = myslope.x*unitslope.y - myslope.y*unitslope.x;
- cpdot = othercpunit.x*unitslope.y - othercpunit.y*unitslope.y;
- if ( mydot*cpdot<0 && mylen<cplen ) {
- /* The two control points are in opposite directions with respect to */
- /* the main spline, and ours isn't very big, so make it point along */
- /* the spline */
- end->pointtype = pt_corner;
- if ( isto ) {
- s->to->prevcp.x = s->to->me.x - mydot*unitslope.x;
- s->to->prevcp.y = s->to->me.y - mydot*unitslope.y;
- } else {
- s->from->nextcp.x = s->from->me.x + mydot*unitslope.x;
- s->from->nextcp.y = s->from->me.y + mydot*unitslope.y;
- }
- SplineRefigure(s);
-return( true ); /* We changed the slope */
- }
-
- if ( (xdiff = cp->x - end->me.x)<0 ) xdiff = -xdiff;
- if ( (ydiff = cp->y - end->me.y)<0 ) ydiff = -ydiff;
-
- to = *cp;
- if ( xdiff<ydiff/10.0 && xdiff>0 ) {
- to.x = end->me.x;
- end->pointtype = pt_corner;
- SPAdjustControl(end,cp,&to,s->order2);
-return( true ); /* We changed the slope */
- } else if ( ydiff<xdiff/10 && ydiff>0 ) {
- to.y = end->me.y;
- end->pointtype = pt_corner;
- SPAdjustControl(end,cp,&to,s->order2);
-return( true ); /* We changed the slope */
- }
-
-return( -1 ); /* Didn't do anything */
-}
-
-int Spline1DCantExtremeX(const Spline *s) {
- /* Sometimes we get rounding errors when converting from control points */
- /* to spline coordinates. These rounding errors can give us false */
- /* extrema. So do a sanity check to make sure it is possible to get */
- /* any extrema before actually looking for them */
-
- if ( s->from->me.x>=s->from->nextcp.x &&
- s->from->nextcp.x>=s->to->prevcp.x &&
- s->to->prevcp.x>=s->to->me.x )
-return( true );
- if ( s->from->me.x<=s->from->nextcp.x &&
- s->from->nextcp.x<=s->to->prevcp.x &&
- s->to->prevcp.x<=s->to->me.x )
-return( true );
-
-return( false );
-}
-
-int Spline1DCantExtremeY(const Spline *s) {
- /* Sometimes we get rounding errors when converting from control points */
- /* to spline coordinates. These rounding errors can give us false */
- /* extrema. So do a sanity check to make sure it is possible to get */
- /* any extrema before actually looking for them */
-
- if ( s->from->me.y>=s->from->nextcp.y &&
- s->from->nextcp.y>=s->to->prevcp.y &&
- s->to->prevcp.y>=s->to->me.y )
-return( true );
- if ( s->from->me.y<=s->from->nextcp.y &&
- s->from->nextcp.y<=s->to->prevcp.y &&
- s->to->prevcp.y<=s->to->me.y )
-return( true );
-
-return( false );
-}
-
-Spline *SplineAddExtrema(Spline *s,int always,real lenbound, real offsetbound,
- DBounds *b) {
- /* First find the extrema, if any */
- bigreal t[4], min;
- uint8 rmfrom[4], rmto[4];
- int p, i,j, p_s, mini, restart, forced;
- SplinePoint *sp;
- real len;
-
- if ( !always ) {
- real xlen, ylen;
- xlen = (s->from->me.x-s->to->me.x);
- ylen = (s->from->me.y-s->to->me.y);
- len = xlen*xlen + ylen*ylen;
- lenbound *= lenbound;
- if ( len < lenbound ) {
- len = SplineLength(s);
- len *= len;
- }
- }
-
- memset(rmfrom,0,sizeof(rmfrom));
- memset(rmto,0,sizeof(rmto));
-
- for (;;) {
- if ( s->knownlinear )
-return(s);
- p = 0;
- if ( Spline1DCantExtremeX(s) ) {
- /* If the control points are at the end-points then this (1D) spline is */
- /* basically a line. But rounding errors can give us very faint extrema */
- /* if we look for them */
- } else if ( s->splines[0].a!=0 ) {
- bigreal d = 4*s->splines[0].b*s->splines[0].b-4*3*s->splines[0].a*s->splines[0].c;
- if ( d>0 ) {
- extended t1, t2;
- d = sqrt(d);
- t1 = (-2*s->splines[0].b+d)/(2*3*s->splines[0].a);
- t2 = (-2*s->splines[0].b-d)/(2*3*s->splines[0].a);
- t[p++] = CheckExtremaForSingleBitErrors(&s->splines[0],t1,t2);
- t[p++] = CheckExtremaForSingleBitErrors(&s->splines[0],t2,t1);
- }
- } else if ( s->splines[0].b!=0 )
- t[p++] = -s->splines[0].c/(2*s->splines[0].b);
- if ( !always ) {
- /* Generally we are only interested in extrema on long splines, or */
- /* extrema which are extrema for the entire contour, not just this */
- /* spline */
- /* Also extrema which are very close to one of the end-points can */
- /* be ignored. */
- /* No they can't. But we need to remove the original point in this*/
- /* case */
- for ( i=0; i<p; ++i ) {
- real x = ((s->splines[0].a*t[i]+s->splines[0].b)*t[i]+s->splines[0].c)*t[i]+s->splines[0].d;
- real y = ((s->splines[1].a*t[i]+s->splines[1].b)*t[i]+s->splines[1].c)*t[i]+s->splines[1].d;
- int close_from = ( x-s->from->me.x<offsetbound && x-s->from->me.x>-offsetbound) &&
- ( y-s->from->me.y<10*offsetbound && y-s->from->me.y>-10*offsetbound );
- int close_to = ( x-s->to->me.x<offsetbound && x-s->to->me.x>-offsetbound) &&
- ( y-s->to->me.y<10*offsetbound && y-s->to->me.y>-10*offsetbound );
- int remove_from = close_from && GoodCurve(s->from,true) && !SpIsExtremum(s->from);
- int remove_to = close_to && GoodCurve(s->to,false) && !SpIsExtremum(s->to);
- if (( x>b->minx && x<b->maxx && len<lenbound ) ||
- (close_from && !remove_from) || (close_to && !remove_to) ) {
- --p;
- for ( j=i; j<p; ++j )
- t[j] = t[j+1];
- --i;
- } else {
- rmfrom[i] = remove_from;
- rmto[i] = remove_to;
- }
- }
- }
-
- p_s = p;
- if ( Spline1DCantExtremeY(s) ) {
- /* If the control points are at the end-points then this (1D) spline is */
- /* basically a line. But rounding errors can give us very faint extrema */
- /* if we look for them */
- } else if ( s->splines[1].a!=0 ) {
- bigreal d = 4*s->splines[1].b*s->splines[1].b-4*3*s->splines[1].a*s->splines[1].c;
- if ( d>0 ) {
- extended t1,t2;
- d = sqrt(d);
- t1 = (-2*s->splines[1].b+d)/(2*3*s->splines[1].a);
- t2 = (-2*s->splines[1].b-d)/(2*3*s->splines[1].a);
- t[p++] = CheckExtremaForSingleBitErrors(&s->splines[1],t1,t2);
- t[p++] = CheckExtremaForSingleBitErrors(&s->splines[1],t2,t1);
- }
- } else if ( s->splines[1].b!=0 )
- t[p++] = -s->splines[1].c/(2*s->splines[1].b);
- if ( !always ) {
- for ( i=p_s; i<p; ++i ) {
- real x = ((s->splines[0].a*t[i]+s->splines[0].b)*t[i]+s->splines[0].c)*t[i]+s->splines[0].d;
- real y = ((s->splines[1].a*t[i]+s->splines[1].b)*t[i]+s->splines[1].c)*t[i]+s->splines[1].d;
- int close_from =( y-s->from->me.y<offsetbound && y-s->from->me.y>-offsetbound ) &&
- ( x-s->from->me.x<offsetbound && x-s->from->me.x>-offsetbound);
- int close_to = ( y-s->to->me.y<offsetbound && y-s->to->me.y>-offsetbound ) &&
- ( x-s->to->me.x<offsetbound && x-s->to->me.x>-offsetbound);
- int remove_from = close_from && GoodCurve(s->from,true) && !SpIsExtremum(s->from);
- int remove_to = close_to && GoodCurve(s->to,false) && !SpIsExtremum(s->to);
- if (( y>b->miny && y<b->maxy && len<lenbound ) ||
- (close_from && !remove_from) || (close_to && !remove_to) ) {
- --p;
- for ( j=i; j<p; ++j )
- t[j] = t[j+1];
- --i;
- } else {
- rmfrom[i] = remove_from;
- rmto[i] = remove_to;
- }
- }
- }
-
- /* Throw out any t values which are not between 0 and 1 */
- /* (we do a little fudging near the endpoints so we don't get confused */
- /* by rounding errors) */
- restart = false;
- for ( i=0; i<p; ++i ) {
- if ( t[i]>0 && t[i]<.05 ) {
- BasePoint test;
- /* Expand stroke gets very confused on zero-length splines so */
- /* don't let that happen */
- test.x = ((s->splines[0].a*t[i]+s->splines[0].b)*t[i]+s->splines[0].c)*t[i]+s->splines[0].d - s->from->me.x;
- test.y = ((s->splines[1].a*t[i]+s->splines[1].b)*t[i]+s->splines[1].c)*t[i]+s->splines[1].d - s->from->me.y;
- if (( test.x*test.x + test.y*test.y<1e-7 ) && ( test.x*test.x + test.y*test.y>0.0 )) {
- if ( (forced = ForceEndPointExtrema(s,0))>=0 ) {
- if ( forced && s->from->prev!=NULL )
- SplineAddExtrema(s->from->prev,always,lenbound,offsetbound,b);
- restart = true;
- break;
- }
- }
- }
- if ( t[i]<1 && t[i]>.95 ) {
- BasePoint test;
- test.x = ((s->splines[0].a*t[i]+s->splines[0].b)*t[i]+s->splines[0].c)*t[i]+s->splines[0].d - s->to->me.x;
- test.y = ((s->splines[1].a*t[i]+s->splines[1].b)*t[i]+s->splines[1].c)*t[i]+s->splines[1].d - s->to->me.y;
- if (( test.x*test.x + test.y*test.y < 1e-7 ) && ( test.x*test.x + test.y*test.y>0.0 )) {
- if ( ForceEndPointExtrema(s,1)>=0 ) {
- /* don't need to fix up next, because splinesetaddextrema will do that soon */
- restart = true;
- break;
- }
- }
- }
-
- if ( t[i]<=0 || t[i]>=1.0 ) {
- --p;
- for ( j=i; j<p; ++j ) {
- t[j] = t[j+1];
- rmfrom[j] = rmfrom[j+1];
- rmto[j] = rmto[j+1];
- }
- --i;
- }
- }
- if ( restart )
- continue;
-
- if ( p==0 )
-return(s);
-
- /* Find the smallest of all the interesting points */
- min = t[0]; mini = 0;
- for ( i=1; i<p; ++i ) {
- if ( t[i]<min ) {
- min=t[i];
- mini = i;
- }
- }
- sp = SplineBisect(s,min);
-/* On the mac we get rounding errors in the bisect routine */
- { bigreal dx, dy;
- if ( (dx = sp->me.x - sp->prevcp.x)<0 ) dx=-dx;
- if ( (dy = sp->me.y - sp->prevcp.y)<0 ) dy=-dy;
- if ( dx!=0 && dy!=0 ) {
- if ( dx<dy )
- sp->prevcp.x = sp->me.x;
- else
- sp->prevcp.y = sp->me.y;
- }
- if ( (dx = sp->me.x - sp->nextcp.x)<0 ) dx=-dx;
- if ( (dy = sp->me.y - sp->nextcp.y)<0 ) dy=-dy;
- if ( dx!=0 && dy!=0 ) {
- if ( dx<dy )
- sp->nextcp.x = sp->me.x;
- else
- sp->nextcp.y = sp->me.y;
- }
- }
-
- if ( rmfrom[mini] ) sp->prev->from->ticked = true;
- if ( rmto[mini] ) sp->next->to->ticked = true;
- s = sp->next;
- if ( p==1 )
-return( s );
- /* Don't try to use any other computed t values, it is easier to */
- /* recompute them than to try and figure out what they map to on the */
- /* new spline */
- }
-}
-
-SplineFont *SplineFontEmpty(void) {
- extern int default_fv_row_count, default_fv_col_count;
- time_t now;
- SplineFont *sf;
-
- sf = calloc(1,sizeof(SplineFont));
- sf->pfminfo.fstype = -1;
- sf->pfminfo.stylemap = -1;
- sf->top_enc = -1;
- sf->map = NULL;
- sf->macstyle = -1;
- sf->desired_row_cnt = default_fv_row_count; sf->desired_col_cnt = default_fv_col_count;
- sf->display_antialias = default_fv_antialias;
- sf->display_bbsized = default_fv_bbsized;
- sf->display_size = -default_fv_font_size;
- sf->display_layer = ly_fore;
- sf->sfntRevision = sfntRevisionUnset;
- sf->woffMajor = woffUnset;
- sf->woffMinor = woffUnset;
- sf->pfminfo.winascent_add = sf->pfminfo.windescent_add = true;
- sf->pfminfo.hheadascent_add = sf->pfminfo.hheaddescent_add = true;
- sf->pfminfo.typoascent_add = sf->pfminfo.typodescent_add = true;
- if ( TTFFoundry!=NULL )
- strncpy(sf->pfminfo.os2_vendor,TTFFoundry,4);
- else
- memcpy(sf->pfminfo.os2_vendor,"PfEd",4);
- sf->for_new_glyphs = DefaultNameListForNewFonts();
- time(&now);
- sf->creationtime = sf->modificationtime = now;
-
- sf->layer_cnt = 2;
- sf->layers = calloc(2,sizeof(LayerInfo));
- sf->layers[ly_back].name = copy(_("Back"));
- sf->layers[ly_back].background = true;
- sf->layers[ly_fore].name = copy(_("Fore"));
- sf->layers[ly_fore].background = false;
- sf->grid.background = true;
-
-return( sf );
-}
-
-static void SFChangeXUID(SplineFont *sf, int random) {
- char *pt, *new, *npt;
- int val;
-
- if ( sf->xuid==NULL )
-return;
- pt = strrchr(sf->xuid,' ');
- if ( pt==NULL )
- pt = strchr(sf->xuid,'[');
- if ( pt==NULL )
- pt = sf->xuid;
- else
- ++pt;
- if ( random )
- val = rand()&0xffffff;
- else {
- val = strtol(pt,NULL,10);
- val = (val+1)&0xffffff;
- }
-
- new = malloc(pt-sf->xuid+12);
- strncpy(new,sf->xuid,pt-sf->xuid);
- npt = new + (pt-sf->xuid);
- if ( npt==new ) *npt++ = '[';
- sprintf(npt, "%d]", val );
- free(sf->xuid); sf->xuid = new;
- sf->changed = true;
- sf->changed_since_xuidchanged = false;
-}
-
-void SFIncrementXUID(SplineFont *sf) {
- SFChangeXUID(sf,false);
-}
-
-void SplineCharTangentNextCP(SplinePoint *sp) {
- bigreal len;
- BasePoint *bp, unit;
- extern int snaptoint;
-
- if ( sp->prev==NULL )
-return;
- bp = &sp->prev->from->me;
-
- unit.y = sp->me.y-bp->y; unit.x = sp->me.x-bp->x;
- len = sqrt( unit.x*unit.x + unit.y*unit.y );
- if ( len!=0 ) {
- unit.x /= len;
- unit.y /= len;
- }
- len = sqrt((sp->nextcp.y-sp->me.y)*(sp->nextcp.y-sp->me.y) + (sp->nextcp.x-sp->me.x)*(sp->nextcp.x-sp->me.x));
- sp->nextcp.x = sp->me.x + len*unit.x;
- sp->nextcp.y = sp->me.y + len*unit.y;
- if ( snaptoint ) {
- sp->nextcp.x = rint(sp->nextcp.x);
- sp->nextcp.y = rint(sp->nextcp.y);
- } else {
- sp->nextcp.x = rint(sp->nextcp.x*1024)/1024;
- sp->nextcp.y = rint(sp->nextcp.y*1024)/1024;
- }
- if ( sp->next!=NULL && sp->next->order2 )
- sp->next->to->prevcp = sp->nextcp;
-}
-
-void SplineCharTangentPrevCP(SplinePoint *sp) {
- bigreal len;
- BasePoint *bp, unit;
- extern int snaptoint;
-
- if ( sp->next==NULL )
-return;
- bp = &sp->next->to->me;
-
- unit.y = sp->me.y-bp->y; unit.x = sp->me.x-bp->x;
- len = sqrt( unit.x*unit.x + unit.y*unit.y );
- if ( len!=0 ) {
- unit.x /= len;
- unit.y /= len;
- }
- len = sqrt((sp->prevcp.y-sp->me.y)*(sp->prevcp.y-sp->me.y) + (sp->prevcp.x-sp->me.x)*(sp->prevcp.x-sp->me.x));
- sp->prevcp.x = sp->me.x + len*unit.x;
- sp->prevcp.y = sp->me.y + len*unit.y;
- if ( snaptoint ) {
- sp->prevcp.x = rint(sp->prevcp.x);
- sp->prevcp.y = rint(sp->prevcp.y);
- } else {
- sp->prevcp.x = rint(sp->prevcp.x*1024)/1024;
- sp->prevcp.y = rint(sp->prevcp.y*1024)/1024;
- }
- if ( sp->prev!=NULL && sp->prev->order2 )
- sp->prev->from->nextcp = sp->prevcp;
-}
-
-void BP_HVForce(BasePoint *vector) {
- /* Force vector to be horizontal/vertical */
- bigreal dx, dy, len;
-
- if ( (dx= vector->x)<0 ) dx = -dx;
- if ( (dy= vector->y)<0 ) dy = -dy;
- if ( dx==0 || dy==0 )
-return;
- len = sqrt(dx*dx + dy*dy);
- if ( dx>dy ) {
- vector->x = vector->x<0 ? -len : len;
- vector->y = 0;
- } else {
- vector->y = vector->y<0 ? -len : len;
- vector->x = 0;
- }
-}
-
-#define NICE_PROPORTION .39
-void SplineCharDefaultNextCP(SplinePoint *base) {
- SplinePoint *prev=NULL, *next;
- bigreal len, plen, ulen;
- BasePoint unit;
- extern int snaptoint;
-
- if ( base->next==NULL )
-return;
- if ( base->next->order2 ) {
- SplineRefigureFixup(base->next);
-return;
- }
- if ( !base->nextcpdef ) {
- if ( base->pointtype==pt_tangent )
- SplineCharTangentNextCP(base);
-return;
- }
- next = base->next->to;
- if ( base->prev!=NULL )
- prev = base->prev->from;
-
- len = NICE_PROPORTION * sqrt((base->me.x-next->me.x)*(base->me.x-next->me.x) +
- (base->me.y-next->me.y)*(base->me.y-next->me.y));
- unit.x = next->me.x - base->me.x;
- unit.y = next->me.y - base->me.y;
- ulen = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( ulen!=0 )
- unit.x /= ulen, unit.y /= ulen;
- base->nonextcp = false;
-
- if ( base->pointtype == pt_curve || base->pointtype == pt_hvcurve ) {
- if ( prev!=NULL && (base->prevcpdef || base->noprevcp)) {
- unit.x = next->me.x - prev->me.x;
- unit.y = next->me.y - prev->me.y;
- ulen = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( ulen!=0 )
- unit.x /= ulen, unit.y /= ulen;
- if ( base->pointtype == pt_hvcurve )
- BP_HVForce(&unit);
- plen = sqrt((base->prevcp.x-base->me.x)*(base->prevcp.x-base->me.x) +
- (base->prevcp.y-base->me.y)*(base->prevcp.y-base->me.y));
- base->prevcp.x = base->me.x - plen*unit.x;
- base->prevcp.y = base->me.y - plen*unit.y;
- if ( snaptoint ) {
- base->prevcp.x = rint(base->prevcp.x);
- base->prevcp.y = rint(base->prevcp.y);
- }
- SplineRefigureFixup(base->prev);
- } else if ( prev!=NULL ) {
- /* The prev control point is fixed. So we've got to use the same */
- /* angle it uses */
- unit.x = base->me.x-base->prevcp.x;
- unit.y = base->me.y-base->prevcp.y;
- ulen = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( ulen!=0 )
- unit.x /= ulen, unit.y /= ulen;
- } else {
- base->prevcp = base->me;
- base->noprevcp = true;
- base->prevcpdef = true;
- }
- if ( base->pointtype == pt_hvcurve )
- BP_HVForce(&unit);
- } else if ( base->pointtype == pt_corner ) {
- if ( next->pointtype != pt_curve && next->pointtype != pt_hvcurve ) {
- base->nonextcp = true;
- }
- } else /* tangent */ {
- if ( next->pointtype != pt_curve ) {
- base->nonextcp = true;
- } else {
- if ( prev!=NULL ) {
- if ( !base->noprevcp ) {
- plen = sqrt((base->prevcp.x-base->me.x)*(base->prevcp.x-base->me.x) +
- (base->prevcp.y-base->me.y)*(base->prevcp.y-base->me.y));
- base->prevcp.x = base->me.x - plen*unit.x;
- base->prevcp.y = base->me.y - plen*unit.y;
- SplineRefigureFixup(base->prev);
- }
- unit.x = base->me.x-prev->me.x;
- unit.y = base->me.y-prev->me.y;
- ulen = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( ulen!=0 )
- unit.x /= ulen, unit.y /= ulen;
- }
- }
- }
- if ( base->nonextcp )
- base->nextcp = base->me;
- else {
- base->nextcp.x = base->me.x + len*unit.x;
- base->nextcp.y = base->me.y + len*unit.y;
- if ( snaptoint ) {
- base->nextcp.x = rint(base->nextcp.x);
- base->nextcp.y = rint(base->nextcp.y);
- } else {
- base->nextcp.x = rint(base->nextcp.x*1024)/1024;
- base->nextcp.y = rint(base->nextcp.y*1024)/1024;
- }
- if ( base->next != NULL )
- SplineRefigureFixup(base->next);
- }
-}
-
-void SplineCharDefaultPrevCP(SplinePoint *base) {
- SplinePoint *next=NULL, *prev;
- bigreal len, nlen, ulen;
- BasePoint unit;
- extern int snaptoint;
-
- if ( base->prev==NULL )
-return;
- if ( base->prev->order2 ) {
- SplineRefigureFixup(base->prev);
-return;
- }
- if ( !base->prevcpdef ) {
- if ( base->pointtype==pt_tangent )
- SplineCharTangentPrevCP(base);
-return;
- }
- prev = base->prev->from;
- if ( base->next!=NULL )
- next = base->next->to;
-
- len = NICE_PROPORTION * sqrt((base->me.x-prev->me.x)*(base->me.x-prev->me.x) +
- (base->me.y-prev->me.y)*(base->me.y-prev->me.y));
- unit.x = prev->me.x - base->me.x;
- unit.y = prev->me.y - base->me.y;
- ulen = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( ulen!=0 )
- unit.x /= ulen, unit.y /= ulen;
- base->noprevcp = false;
-
- if ( base->pointtype == pt_curve || base->pointtype == pt_hvcurve ) {
- if ( next!=NULL && (base->nextcpdef || base->nonextcp)) {
- unit.x = prev->me.x - next->me.x;
- unit.y = prev->me.y - next->me.y;
- ulen = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( ulen!=0 )
- unit.x /= ulen, unit.y /= ulen;
- if ( base->pointtype == pt_hvcurve )
- BP_HVForce(&unit);
- nlen = sqrt((base->nextcp.x-base->me.x)*(base->nextcp.x-base->me.x) +
- (base->nextcp.y-base->me.y)*(base->nextcp.y-base->me.y));
- base->nextcp.x = base->me.x - nlen*unit.x;
- base->nextcp.y = base->me.y - nlen*unit.y;
- if ( snaptoint ) {
- base->nextcp.x = rint(base->nextcp.x);
- base->nextcp.y = rint(base->nextcp.y);
- }
- SplineRefigureFixup(base->next);
- } else if ( next!=NULL ) {
- /* The next control point is fixed. So we got to use the same */
- /* angle it uses */
- unit.x = base->me.x-base->nextcp.x;
- unit.y = base->me.y-base->nextcp.y;
- ulen = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( ulen!=0 )
- unit.x /= ulen, unit.y /= ulen;
- } else {
- base->nextcp = base->me;
- base->nonextcp = true;
- base->nextcpdef = true;
- }
- if ( base->pointtype == pt_hvcurve )
- BP_HVForce(&unit);
- } else if ( base->pointtype == pt_corner ) {
- if ( prev->pointtype != pt_curve && prev->pointtype != pt_hvcurve ) {
- base->noprevcp = true;
- }
- } else /* tangent */ {
- if ( prev->pointtype != pt_curve ) {
- base->noprevcp = true;
- } else {
- if ( next!=NULL ) {
- if ( !base->nonextcp ) {
- nlen = sqrt((base->nextcp.x-base->me.x)*(base->nextcp.x-base->me.x) +
- (base->nextcp.y-base->me.y)*(base->nextcp.y-base->me.y));
- base->nextcp.x = base->me.x - nlen*unit.x;
- base->nextcp.y = base->me.y - nlen*unit.y;
- SplineRefigureFixup(base->next);
- }
- unit.x = base->me.x-next->me.x;
- unit.y = base->me.y-next->me.y;
- ulen = sqrt(unit.x*unit.x + unit.y*unit.y);
- if ( ulen!=0 )
- unit.x /= ulen, unit.y /= ulen;
- }
- }
- }
- if ( base->noprevcp )
- base->prevcp = base->me;
- else {
- base->prevcp.x = base->me.x + len*unit.x;
- base->prevcp.y = base->me.y + len*unit.y;
- if ( snaptoint ) {
- base->prevcp.x = rint(base->prevcp.x);
- base->prevcp.y = rint(base->prevcp.y);
- } else {
- base->prevcp.x = rint(base->prevcp.x*1024)/1024;
- base->prevcp.y = rint(base->prevcp.y*1024)/1024;
- }
- if ( base->prev!=NULL )
- SplineRefigureFixup(base->prev);
- }
-}
-
-void SPTouchControl(SplinePoint *sp,BasePoint *which, int order2)
-{
- BasePoint to = *which;
- SPAdjustControl( sp, which, &to, order2 );
-}
-
-void SPAdjustControl(SplinePoint *sp,BasePoint *cp, BasePoint *to,int order2) {
- BasePoint *othercp = cp==&sp->nextcp?&sp->prevcp:&sp->nextcp;
- int refig = false, otherchanged = false;
-
- if ( sp->ttfindex==0xffff && order2 ) {
- /* If the point itself is implied, then it's the control points that */
- /* are fixed. Moving a CP should move the implied point so that it */
- /* continues to be in the right place */
- sp->me.x = (to->x+othercp->x)/2;
- sp->me.y = (to->y+othercp->y)/2;
- *cp = *to;
- refig = true;
- } else if ( sp->pointtype==pt_corner ) {
- *cp = *to;
- } else if ( sp->pointtype==pt_curve || sp->pointtype==pt_hvcurve ) {
- if ( sp->pointtype==pt_hvcurve ) {
- BasePoint diff;
- diff.x = to->x - sp->me.x;
- diff.y = to->y - sp->me.y;
- BP_HVForce(&diff);
- cp->x = sp->me.x + diff.x;
- cp->y = sp->me.y + diff.y;
- } else {
- *cp = *to;
- }
- if (( cp->x!=sp->me.x || cp->y!=sp->me.y ) &&
- (!order2 ||
- (cp==&sp->nextcp && sp->next!=NULL && sp->next->to->ttfindex==0xffff) ||
- (cp==&sp->prevcp && sp->prev!=NULL && sp->prev->from->ttfindex==0xffff)) ) {
- bigreal len1, len2;
- len1 = sqrt((cp->x-sp->me.x)*(cp->x-sp->me.x) +
- (cp->y-sp->me.y)*(cp->y-sp->me.y));
- len2 = sqrt((othercp->x-sp->me.x)*(othercp->x-sp->me.x) +
- (othercp->y-sp->me.y)*(othercp->y-sp->me.y));
- len2 /= len1;
- othercp->x = len2 * (sp->me.x-cp->x) + sp->me.x;
- othercp->y = len2 * (sp->me.y-cp->y) + sp->me.y;
- otherchanged = true;
- if ( sp->next!=NULL && othercp==&sp->nextcp ) {
- if ( order2 ) sp->next->to->prevcp = *othercp;
- SplineRefigure(sp->next);
- } else if ( sp->prev!=NULL && othercp==&sp->prevcp ) {
- if ( order2 ) sp->prev->from->nextcp = *othercp;
- SplineRefigure(sp->prev);
- }
- }
- if ( cp==&sp->nextcp ) sp->prevcpdef = false;
- else sp->nextcpdef = false;
- } else {
- BasePoint *bp;
- if ( cp==&sp->prevcp && sp->next!=NULL )
- bp = &sp->next->to->me;
- else if ( cp==&sp->nextcp && sp->prev!=NULL )
- bp = &sp->prev->from->me;
- else
- bp = NULL;
- if ( bp!=NULL ) {
- real angle = atan2(bp->y-sp->me.y,bp->x-sp->me.x);
- real len = sqrt((bp->x-sp->me.x)*(bp->x-sp->me.x) + (bp->y-sp->me.y)*(bp->y-sp->me.y));
- real dotprod =
- ((to->x-sp->me.x)*(bp->x-sp->me.x) +
- (to->y-sp->me.y)*(bp->y-sp->me.y));
- if ( len!=0 ) {
- dotprod /= len;
- if ( dotprod>0 ) dotprod = 0;
- cp->x = sp->me.x + dotprod*cos(angle);
- cp->y = sp->me.y + dotprod*sin(angle);
- }
- }
- }
-
- if ( order2 ) {
- if ( (cp==&sp->nextcp || otherchanged) && sp->next!=NULL ) {
- SplinePoint *osp = sp->next->to;
- if ( osp->ttfindex==0xffff ) {
- osp->prevcp = sp->nextcp;
- osp->me.x = (osp->prevcp.x+osp->nextcp.x)/2;
- osp->me.y = (osp->prevcp.y+osp->nextcp.y)/2;
- SplineRefigure(osp->next);
- }
- }
- if ( (cp==&sp->prevcp || otherchanged) && sp->prev!=NULL ) {
- SplinePoint *osp = sp->prev->from;
- if ( osp->ttfindex==0xffff ) {
- osp->nextcp = sp->prevcp;
- osp->me.x = (osp->prevcp.x+osp->nextcp.x)/2;
- osp->me.y = (osp->prevcp.y+osp->nextcp.y)/2;
- SplineRefigure(osp->prev);
- }
- }
- }
-
- if ( cp->x==sp->me.x && cp->y==sp->me.y ) {
- if ( cp==&sp->nextcp ) sp->nonextcp = true;
- else sp->noprevcp = true;
- } else {
- if ( cp==&sp->nextcp ) sp->nonextcp = false;
- else sp->noprevcp = false;
- }
- if ( cp==&sp->nextcp ) sp->nextcpdef = false;
- else sp->prevcpdef = false;
-
- if ( sp->next!=NULL && cp==&sp->nextcp ) {
- if ( order2 && !sp->nonextcp ) {
- sp->next->to->prevcp = *cp;
- sp->next->to->noprevcp = false;
- }
- SplineRefigureFixup(sp->next);
- }
- if ( sp->prev!=NULL && cp==&sp->prevcp ) {
- if ( order2 && !sp->noprevcp ) {
- sp->prev->from->nextcp = *cp;
- sp->prev->from->nonextcp = false;
- }
- SplineRefigureFixup(sp->prev);
- }
- if ( refig ) {
- SplineRefigure(sp->prev);
- SplineRefigure(sp->next);
- }
-}
-
-SplineSet *SplineSetReverse(SplineSet *spl) {
- Spline *spline, *first, *next;
- BasePoint tp;
- SplinePoint *temp;
- int flag;
- int i;
- /* reverse the splineset so that what was the start point becomes the end */
- /* and vice versa. This entails reversing every individual spline, and */
- /* each point */
-
- first = NULL;
- spline = spl->first->next;
- if ( spline==NULL )
-return( spl ); /* Only one point, reversal is meaningless */
-
- tp = spline->from->nextcp;
- spline->from->nextcp = spline->from->prevcp;
- spline->from->prevcp = tp;
- flag = spline->from->nonextcp;
- spline->from->nonextcp = spline->from->noprevcp;
- spline->from->noprevcp = flag;
- flag = spline->from->nextcpdef;
- spline->from->nextcpdef = spline->from->prevcpdef;
- spline->from->prevcpdef = flag;
-
- for ( ; spline!=NULL && spline!=first; spline=next ) {
- next = spline->to->next;
-
- if ( spline->to!=spl->first ) { /* On a closed spline don't want to reverse the first point twice */
- tp = spline->to->nextcp;
- spline->to->nextcp = spline->to->prevcp;
- spline->to->prevcp = tp;
- flag = spline->to->nonextcp;
- spline->to->nonextcp = spline->to->noprevcp;
- spline->to->noprevcp = flag;
- flag = spline->to->nextcpdef;
- spline->to->nextcpdef = spline->to->prevcpdef;
- spline->to->prevcpdef = flag;
- }
-
- temp = spline->to;
- spline->to = spline->from;
- spline->from = temp;
- spline->from->next = spline;
- spline->to->prev = spline;
- SplineRefigure(spline);
- if ( first==NULL ) first = spline;
- }
-
- if ( spl->first!=spl->last ) {
- temp = spl->first;
- spl->first = spl->last;
- spl->start_offset = 0;
- spl->last = temp;
- spl->first->prev = NULL;
- spl->last->next = NULL;
- }
-
- if ( spl->spiro_cnt>2 ) {
- for ( i=(spl->spiro_cnt-1)/2-1; i>=0; --i ) {
- spiro_cp temp_cp = spl->spiros[i];
- spl->spiros[i] = spl->spiros[spl->spiro_cnt-2-i];
- spl->spiros[spl->spiro_cnt-2-i] = temp_cp;
- }
- if ( (spl->spiros[spl->spiro_cnt-2].ty&0x7f)==SPIRO_OPEN_CONTOUR ) {
- spl->spiros[spl->spiro_cnt-2].ty = (spl->spiros[0].ty&0x7f) | (spl->spiros[spl->spiro_cnt-2].ty&0x80);
- spl->spiros[0].ty = SPIRO_OPEN_CONTOUR | (spl->spiros[0].ty&0x80);
- }
- for ( i=spl->spiro_cnt-2; i>=0; --i ) {
- if ( (spl->spiros[i].ty&0x7f) == SPIRO_LEFT )
- spl->spiros[i].ty = SPIRO_RIGHT | (spl->spiros[i].ty&0x80);
- else if ( (spl->spiros[i].ty&0x7f) == SPIRO_RIGHT )
- spl->spiros[i].ty = SPIRO_LEFT | (spl->spiros[i].ty&0x80);
- }
- }
-return( spl );
-}
-
-#include "edgelist.h"
-
-int SplinePointListIsClockwise(const SplineSet *spl) {
- EIList el;
- EI *active=NULL, *apt, *pr, *e;
- int i, winding,change,waschange, cnt;
- SplineChar dummy;
- SplineSet *next;
- Layer layers[2];
- int cw_cnt=0, ccw_cnt=0;
-
- memset(&el,'\0',sizeof(el));
- memset(&dummy,'\0',sizeof(dummy));
- memset(layers,0,sizeof(layers));
- el.layer = ly_fore;
- dummy.layers = layers;
- dummy.layer_cnt = 2;
- dummy.layers[ly_fore].splines = (SplineSet *) spl;
- dummy.name = "Clockwise Test";
- next = spl->next; ((SplineSet *) spl)->next = NULL;
- ELFindEdges(&dummy,&el);
- if ( el.coordmax[1]-el.coordmin[1] > 1.e6 ) {
- LogError( _("Warning: Unreasonably big splines. They will be ignored.\n") );
- ((SplineSet *) spl)->next = next;
-return( -1 );
- }
- el.major = 1;
- ELOrder(&el,el.major);
-
- waschange = false;
- for ( i=0; i<el.cnt ; ++i ) {
- active = EIActiveEdgesRefigure(&el,active,i,1,&change);
- for ( apt=active, cnt=0; apt!=NULL; apt = apt->aenext , ++cnt );
- if ( el.ordered[i]!=NULL || el.ends[i] || cnt&1 ||
- waschange || change ||
- (i!=el.cnt-1 && (el.ends[i+1] || el.ordered[i+1])) ) {
- waschange = change;
- continue; /* Just too hard to get the edges sorted when we are at a start vertex */
- }
- waschange = change;
- for ( apt=active; apt!=NULL; apt = e) {
- if ( EISkipExtremum(apt,i+el.low,1)) {
- e = apt->aenext->aenext;
- continue;
- }
- if ( apt->up )
- ++cw_cnt;
- else
- ++ccw_cnt;
- if ( cw_cnt!=0 && ccw_cnt!=0 ) {
- ((SplineSet *) spl)->next = next;
-return( -1 );
- }
- winding = apt->up?1:-1;
- for ( pr=apt, e=apt->aenext; e!=NULL && winding!=0; pr=e, e=e->aenext ) {
- if ( EISkipExtremum(e,i+el.low,1)) {
- e = e->aenext;
- continue;
- }
- if ( pr->up!=e->up ) {
- if ( (winding<=0 && !e->up) || (winding>0 && e->up )) {
-/* return( -1 );*/ /* This is an erroneous condition... but I don't think*/
- /* it can actually happen with a single contour. I */
- /* think it is more likely this means a rounding error*/
- /* and a problem in my algorithm */
- fprintf( stderr, "SplinePointListIsClockwise: Found error\n" );
- }
- winding += (e->up?1:-1);
- } else if ( EISameLine(pr,e,i+el.low,1) )
- /* This just continues the line and doesn't change count */;
- else {
- if ( (winding<=0 && !e->up) || (winding>0 && e->up )) {
- fprintf( stderr, "SplinePointListIsClockwise: Found error\n" );
-/*return( -1 );*/
- }
- winding += (e->up?1:-1);
- }
- }
- }
- }
- free(el.ordered);
- free(el.ends);
- ElFreeEI(&el);
- ((SplineSet *) spl)->next = next;
-
- if ( cw_cnt!=0 )
-return( true );
- else if ( ccw_cnt!=0 )
-return( false );
-
-return( -1 );
-}
-
-/* Since this function now deals with 4 arbitrarily selected points, */
-/* it has to try to combine them by different ways in order to see */
-/* if they actually can specify a diagonal stem. The reordered points */
-/* are placed back to array passed to the function.*/
-int PointsDiagonalable( SplineFont *sf,BasePoint **bp,BasePoint *unit ) {
- BasePoint *line1[2], *line2[2], *temp, *base;
- BasePoint unit1, unit2;
- int i, j, k;
- bigreal dist_error_diag, len1, len2, width, dot;
- bigreal off1, off2;
-
- for ( i=0; i<4; i++ ) {
- if ( bp[i] == NULL )
-return( false );
- }
-
- dist_error_diag = 0.0065 * ( sf->ascent + sf->descent );
- /* Assume that the first point passed to the function is the starting */
- /* point of the first of two vectors. Then try all possible combinations */
- /* (there are 3), ensure the vectors are consistantly ordered, and */
- /* check if they are parallel.*/
- base = bp[0];
- for ( i=1; i<4; i++ ) {
- line1[0] = base; line1[1] = bp[i];
-
- k=0;
- for ( j=1; j<4; j++ ) {
- if ( j != i )
- line2[k++] = bp[j];
- }
- unit1.x = line1[1]->x - line1[0]->x;
- unit1.y = line1[1]->y - line1[0]->y;
- unit2.x = line2[1]->x - line2[0]->x;
- unit2.y = line2[1]->y - line2[0]->y;
- /* No horizontal, vertical edges */
- if ( unit1.x == 0 || unit1.y == 0 || unit2.x == 0 || unit2.y == 0 )
- continue;
- len1 = sqrt( pow( unit1.x,2 ) + pow( unit1.y,2 ));
- len2 = sqrt( pow( unit2.x,2 ) + pow( unit2.y,2 ));
- unit1.x /= len1; unit1.y /= len1;
- unit2.x /= len2; unit2.y /= len2;
- dot = unit1.x * unit2.y - unit1.y * unit2.x;
- /* Units parallel */
- if ( dot <= -.05 || dot >= .05 )
- continue;
- /* Ensure vectors point by such a way that the angle is between 90 and 270 degrees */
- if ( unit1.x < 0 ) {
- temp = line1[0]; line1[0] = line1[1]; line1[1] = temp;
- unit1.x = -unit1.x; unit1.y = -unit1.y;
- }
- if ( unit2.x < 0 ) {
- temp = line2[0]; line2[0] = line2[1]; line2[1] = temp;
- unit2.x = -unit2.x; unit2.y = -unit2.y;
- }
- off1 = ( line1[1]->x - line1[0]->x ) * unit2.y -
- ( line1[1]->y - line1[0]->y ) * unit2.x;
- off2 = ( line2[1]->x - line2[0]->x ) * unit1.y -
- ( line2[1]->y - line2[0]->y ) * unit1.x;
- if ( len1 > len2 && fabs( off2 ) < 2*dist_error_diag ) *unit = unit1;
- else if ( fabs( off1 ) < 2*dist_error_diag ) *unit = unit2;
- else
- continue;
- width = ( line2[0]->x - line1[0]->x ) * unit->y -
- ( line2[0]->y - line1[0]->y ) * unit->x;
- /* Make sure this is a real line, rather than just two */
- /* short spline segments which occasionally have happened to be */
- /* parallel. This is necessary to correctly handle things which may */
- /* be "diagonalable" in 2 different directions (like slash in some */
- /* designs). */
- if ( fabs( width ) > len1 || fabs( width ) > len2 )
- continue;
- /* Make sure line2 is further right than line1 */
- if ( width < 0 ) {
- temp = line1[0]; line1[0] = line2[0]; line2[0] = temp;
- temp = line1[1]; line1[1] = line2[1]; line2[1] = temp;
- }
- bp[0] = line1[0];
- bp[1] = line2[0];
- bp[2] = line1[1];
- bp[3] = line2[1];
-return( true );
- }
-return( false );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/start.c b/dviware/dvisvgm/libs/ff-woff/fontforge/start.c
deleted file mode 100644
index 2127d5c761..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/start.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-
-#ifdef __Mac
-# include <stdlib.h> /* getenv,setenv */
-#endif
-
-#include "psfont.h"
-
-int32 unicode_from_adobestd[256];
-
-static void initadobeenc(void) {
- int i,j;
-
- for ( i=0; i<0x100; ++i ) {
- if ( strcmp(AdobeStandardEncoding[i],".notdef")==0 )
- unicode_from_adobestd[i] = 0xfffd;
- else {
- j = UniFromName(AdobeStandardEncoding[i],ui_none,&custom);
- if ( j==-1 ) j = 0xfffd;
- unicode_from_adobestd[i] = j;
- }
- }
-}
-
-void InitSimpleStuff(void) {
- initadobeenc();
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/stemdb.c b/dviware/dvisvgm/libs/ff-woff/fontforge/stemdb.c
deleted file mode 100644
index bdded86c22..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/stemdb.c
+++ /dev/null
@@ -1,6068 +0,0 @@
-/* Copyright (C) 2005-2012 by George Williams and Alexey Kryukov */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include "edgelist2.h"
-#include "stemdb.h"
-
-#include <math.h>
-#include <utype.h>
-
-#define GLYPH_DATA_DEBUG 0
-#define PI 3.14159265358979323846264338327
-
-/* A diagonal end is like the top or bottom of a slash. Should we add a vertical stem at the end? */
-/* A diagonal corner is like the bottom of circumflex. Should we add a horizontal stem? */
-int hint_diagonal_ends = 0,
- hint_diagonal_intersections = 0,
- hint_bounding_boxes = 1,
- detect_diagonal_stems = 0;
-
-float stem_slope_error = .05061454830783555773, /* 2.9 degrees */
- stub_slope_error = .317649923862967983; /* 18.2 degrees */
-
-static double dist_error_hv = 3.5;
-static double dist_error_diag = 5.5;
-/* It's easy to get horizontal/vertical lines aligned properly */
-/* it is more difficult to get diagonal ones done */
-/* The "A" glyph in Apple's Times.dfont(Roman) is off by 6 in one spot */
-static double dist_error_curve = 22;
-/* The maximum possible distance between the edge of an active zone for */
-/* a curved spline segment and the spline itself */
-
-struct st {
- Spline *s;
- double st, lt;
-};
-
-static int GetBlueFuzz(SplineFont *sf) {
- char *str, *end;
-
- if ( sf == NULL || sf->private == NULL ||
- (str=PSDictHasEntry( sf->private,"BlueFuzz" )) == NULL || !isdigit( str[0] ))
-return 1;
-return strtod( str, &end );
-}
-
-static int IsUnitHV( BasePoint *unit,int strict ) {
- double angle = atan2( unit->y,unit->x );
- double deviation = ( strict ) ? stem_slope_error : stub_slope_error;
-
- if ( fabs( angle ) >= PI/2 - deviation && fabs( angle ) <= PI/2 + deviation )
-return( 2 );
- else if ( fabs( angle ) <= deviation || fabs( angle ) >= PI - deviation )
-return( 1 );
-
-return( 0 );
-}
-
-static int UnitCloserToHV( BasePoint *u1,BasePoint *u2 ) {
- double adiff1, adiff2;
-
- adiff1 = fabs( atan2( u1->y,u1->x ));
- adiff2 = fabs( atan2( u2->y,u2->x ));
-
- if ( adiff1 > PI*.25 && adiff1 < PI*.75 )
- adiff1 = fabs( adiff1 - PI*.5 );
- else if ( adiff1 >= PI*.75 )
- adiff1 = PI - adiff1;
-
- if ( adiff2 > PI*.25 && adiff2 < PI*.75 )
- adiff2 = fabs( adiff2 - PI*.5 );
- else if ( adiff2 >= PI*.75 )
- adiff2 = PI - adiff2;
-
- if ( adiff1 < adiff2 )
-return( 1 );
- else if ( adiff1 > adiff2 )
-return( -1 );
- else
-return( 0 );
-}
-
-static double GetUnitAngle( BasePoint *u1,BasePoint *u2 ) {
- double dx, dy;
-
- dy = u1->x*u2->y - u1->y*u2->x;
- dx = u1->x*u2->x + u1->y*u2->y;
-return( atan2( dy,dx ));
-}
-
-static int UnitsOrthogonal( BasePoint *u1,BasePoint *u2,int strict ) {
- double angle, deviation = ( strict ) ? stem_slope_error : stub_slope_error;
-
- angle = GetUnitAngle( u1,u2 );
-
-return( fabs( angle ) >= PI/2 - deviation && fabs( angle ) <= PI/2 + deviation );
-}
-
-int UnitsParallel( BasePoint *u1,BasePoint *u2,int strict ) {
- double angle, deviation = ( strict ) ? stem_slope_error : stub_slope_error;
-
- angle = GetUnitAngle( u1,u2 );
-
-return( fabs( angle ) <= deviation || fabs( angle ) >= PI - deviation );
-}
-
-static int IsInflectionPoint( struct glyphdata *gd,struct pointdata *pd ) {
- SplinePoint *sp = pd->sp;
- double CURVATURE_THRESHOLD = 1e-9;
- struct spline *prev, *next;
- double in, out;
-
- if ( sp->prev == NULL || sp->next == NULL || !pd->colinear )
-return( false );
-
- /* point of a single-point contour can't be an inflection point. */
- if ( sp->prev->from == sp )
-return( false );
-
- prev = sp->prev;
- in = 0;
- while ( prev != NULL && fabs(in) < CURVATURE_THRESHOLD ) {
- in = SplineCurvature( prev,1 );
- if ( fabs( in ) < CURVATURE_THRESHOLD ) in = SplineCurvature( prev, 0 );
- if ( fabs( in ) < CURVATURE_THRESHOLD ) prev = prev->from->prev;
- if ( gd->points[prev->to->ptindex].colinear )
- break;
- }
-
- next = sp->next;
- out = 0;
- while ( next != NULL && fabs( out ) < CURVATURE_THRESHOLD ) {
- out = SplineCurvature( next,0 );
- if ( fabs( out ) < CURVATURE_THRESHOLD ) out = SplineCurvature( next, 1 );
- if ( fabs( out ) < CURVATURE_THRESHOLD ) next = next->to->next;
- if ( gd->points[next->from->ptindex].colinear )
- break;
- }
-
- if ( in==0 || out==0 || ( prev != sp->prev && next != sp->next ))
-return( false );
-
- in/=fabs(in);
- out/=fabs(out);
-
-return ( in*out < 0 );
-}
-
-static int SplineFigureOpticalSlope(Spline *s,int start_at_from,BasePoint *dir) {
- /* Sometimes splines have tiny control points, and to the eye the slope */
- /* of the spline has nothing to do with that specified by the cps. */
- /* So see if the spline is straightish and figure the slope based on */
- /* some average direction */
- /* dir is a input output parameter. */
- /* it should be initialized to the unit vector determined by the appropriate cp */
- /* if the function returns true, it will be set to a unit vector in the average direction */
- BasePoint pos, *base, average_dir, normal;
- double t, len, incr, off;
- double dx, dy, ax, ay, d, a;
-
- /* The vector is already nearly vertical/horizontal, no need to modify*/
- if ( IsUnitHV( dir,true ))
-return( false );
-
- if ( start_at_from ) {
- incr = -.1;
- base = &s->from->me;
- } else {
- incr = .1;
- base = &s->to->me;
- }
-
- t = .5-incr;
- memset(&average_dir,0,sizeof(average_dir));
- while ( t>0 && t<1.0 ) {
- pos.x = ((s->splines[0].a*t+s->splines[0].b)*t+s->splines[0].c)*t+s->splines[0].d;
- pos.y = ((s->splines[1].a*t+s->splines[1].b)*t+s->splines[1].c)*t+s->splines[1].d;
-
- average_dir.x += (pos.x-base->x); average_dir.y += (pos.y-base->y);
- t += incr;
- }
-
- len = sqrt( pow( average_dir.x,2 ) + pow( average_dir.y,2 ));
- if ( len==0 )
-return( false );
- average_dir.x /= len; average_dir.y /= len;
- normal.x = average_dir.y; normal.y = - average_dir.x;
-
- t = .5-incr;
- while ( t>0 && t<1.0 ) {
- pos.x = ((s->splines[0].a*t+s->splines[0].b)*t+s->splines[0].c)*t+s->splines[0].d;
- pos.y = ((s->splines[1].a*t+s->splines[1].b)*t+s->splines[1].c)*t+s->splines[1].d;
- off = (pos.x-base->x)*normal.x + (pos.y-base->y)*normal.y;
- if ( off<-dist_error_hv || off>dist_error_hv )
-return( false );
- t += incr;
- }
-
- if ( UnitsParallel( dir,&normal,true )) {
- /* prefer the direction which is closer to horizontal/vertical */
- if ( (dx=dir->x)<0 ) dx = -dx;
- if ( (dy=dir->y)<0 ) dy = -dy;
- d = (dx<dy) ? dx : dy;
- if ( (ax=average_dir.x)<0 ) ax = -ax;
- if ( (ay=average_dir.y)<0 ) ay = -ay;
- a = (ax<ay) ? ax : ay;
- if ( d<a )
-return( false );
- }
-
- *dir = average_dir;
-return( true );
-}
-
-static int IsSplinePeak( struct glyphdata *gd,struct pointdata *pd,int outer,int is_x,int flags );
-
-static void PointInit( struct glyphdata *gd,SplinePoint *sp, SplineSet *ss ) {
- struct pointdata *pd, *prevpd=NULL, *nextpd=NULL;
- double len, same;
- int hv;
-
- if ( sp->ptindex >= gd->pcnt )
-return;
- pd = &gd->points[sp->ptindex];
- pd->sp = sp;
- pd->ss = ss;
- pd->x_extr = pd->y_extr = 0;
- pd->base = sp->me;
- pd->ttfindex = sp->ttfindex;
- pd->nextcnt = pd->prevcnt = 0;
- pd->nextstems = pd->prevstems = NULL;
- pd->next_is_l = pd->prev_is_l = NULL;
-
- if ( !sp->nonextcp && gd->order2 && sp->nextcpindex < gd->realcnt ) {
-
- nextpd = &gd->points[sp->nextcpindex];
- nextpd->ss = ss;
- nextpd->x_extr = nextpd->y_extr = 0;
- nextpd->base = sp->nextcp;
- nextpd->ttfindex = sp->nextcpindex;
- }
- if ( !sp->noprevcp && gd->order2 && sp->prev != NULL &&
- sp->prev->from->nextcpindex < gd->realcnt ) {
-
- nextpd = &gd->points[sp->prev->from->nextcpindex];
- nextpd->ss = ss;
- nextpd->x_extr = nextpd->y_extr = 0;
- nextpd->base = sp->prevcp;
- nextpd->ttfindex = sp->prev->from->nextcpindex;
- }
-
- if ( sp->next==NULL ) {
- pd->nextunit.x = ss->first->me.x - sp->me.x;
- pd->nextunit.y = ss->first->me.y - sp->me.y;
- pd->nextlinear = true;
- } else if ( sp->next->knownlinear ) {
- pd->nextunit.x = sp->next->to->me.x - sp->me.x;
- pd->nextunit.y = sp->next->to->me.y - sp->me.y;
- pd->nextlinear = true;
- } else if ( sp->nonextcp ) {
- pd->nextunit.x = sp->next->to->prevcp.x - sp->me.x;
- pd->nextunit.y = sp->next->to->prevcp.y - sp->me.y;
- } else {
- pd->nextunit.x = sp->nextcp.x - sp->me.x;
- pd->nextunit.y = sp->nextcp.y - sp->me.y;
- }
- len = sqrt( pow( pd->nextunit.x,2 ) + pow( pd->nextunit.y,2 ));
- if ( len==0 )
- pd->nextzero = true;
- else {
- pd->nextlen = len;
- pd->nextunit.x /= len;
- pd->nextunit.y /= len;
- if ( sp->next!=NULL && !sp->next->knownlinear )
- SplineFigureOpticalSlope(sp->next,true,&pd->nextunit);
- hv = IsUnitHV( &pd->nextunit,true );
- if ( hv == 2 ) {
- pd->nextunit.x = 0; pd->nextunit.y = pd->nextunit.y>0 ? 1 : -1;
- } else if ( hv == 1 ) {
- pd->nextunit.y = 0; pd->nextunit.x = pd->nextunit.x>0 ? 1 : -1;
- }
- if ( pd->nextunit.y==0 ) pd->next_hor = true;
- else if ( pd->nextunit.x==0 ) pd->next_ver = true;
-
- if ( nextpd != NULL ) {
- nextpd->prevunit.x = -pd->nextunit.x;
- nextpd->prevunit.y = -pd->nextunit.y;
- }
- }
-
- if ( sp->prev==NULL ) {
- pd->prevunit.x = ss->last->me.x - sp->me.x;
- pd->prevunit.y = ss->last->me.y - sp->me.y;
- pd->prevlinear = true;
- } else if ( sp->prev->knownlinear ) {
- pd->prevunit.x = sp->prev->from->me.x - sp->me.x;
- pd->prevunit.y = sp->prev->from->me.y - sp->me.y;
- pd->prevlinear = true;
- } else if ( sp->noprevcp ) {
- pd->prevunit.x = sp->prev->from->nextcp.x - sp->me.x;
- pd->prevunit.y = sp->prev->from->nextcp.y - sp->me.y;
- } else {
- pd->prevunit.x = sp->prevcp.x - sp->me.x;
- pd->prevunit.y = sp->prevcp.y - sp->me.y;
- }
- len = sqrt( pow( pd->prevunit.x,2 ) + pow( pd->prevunit.y,2 ));
- if ( len==0 )
- pd->prevzero = true;
- else {
- pd->prevlen = len;
- pd->prevunit.x /= len;
- pd->prevunit.y /= len;
- if ( sp->prev!=NULL && !sp->prev->knownlinear )
- SplineFigureOpticalSlope(sp->prev,false,&pd->prevunit);
- hv = IsUnitHV( &pd->prevunit,true );
- if ( hv == 2 ) {
- pd->prevunit.x = 0; pd->prevunit.y = pd->prevunit.y>0 ? 1 : -1;
- } else if ( hv == 1 ) {
- pd->prevunit.y = 0; pd->prevunit.x = pd->prevunit.x>0 ? 1 : -1;
- }
- if ( pd->prevunit.y==0 ) pd->prev_hor = true;
- else if ( pd->prevunit.x==0 ) pd->prev_ver = true;
-
- if ( prevpd != NULL ) {
- prevpd->nextunit.x = -pd->prevunit.x;
- prevpd->nextunit.y = -pd->prevunit.y;
- }
- }
- {
- same = pd->prevunit.x*pd->nextunit.x + pd->prevunit.y*pd->nextunit.y;
- if ( same<-.95 )
- pd->colinear = true;
- }
- if (( pd->prev_hor || pd->next_hor ) && pd->colinear ) {
- if ( IsSplinePeak( gd,pd,false,false,1 )) pd->y_extr = 1;
- else if ( IsSplinePeak( gd,pd,true,false,1 )) pd->y_extr = 2;
- } else if (( pd->prev_ver || pd->next_ver ) && pd->colinear ) {
- if ( IsSplinePeak( gd,pd,true,true,1 )) pd->x_extr = 1;
- else if ( IsSplinePeak( gd,pd,false,true,1 )) pd->x_extr = 2;
- } else {
- if (( pd->nextunit.y < 0 && pd->prevunit.y < 0 ) || ( pd->nextunit.y > 0 && pd->prevunit.y > 0 )) {
- if ( IsSplinePeak( gd,pd,false,false,2 )) pd->y_corner = 1;
- else if ( IsSplinePeak( gd,pd,true,false,2 )) pd->y_corner = 2;
- }
- if (( pd->nextunit.x < 0 && pd->prevunit.x < 0 ) || ( pd->nextunit.x > 0 && pd->prevunit.x > 0 )) {
- if ( IsSplinePeak( gd,pd,true,true,2 )) pd->x_corner = 1;
- else if ( IsSplinePeak( gd,pd,false,true,2 )) pd->x_corner = 2;
- }
- }
- if ( hint_diagonal_intersections ) {
- if (( pd->y_corner || pd->y_extr ) &&
- RealNear( pd->nextunit.x,-pd->prevunit.x ) &&
- RealNear( pd->nextunit.y,pd->prevunit.y ) && !pd->nextzero)
- pd->symetrical_h = true;
- else if (( pd->x_corner || pd->x_extr ) &&
- RealNear( pd->nextunit.y,-pd->prevunit.y ) &&
- RealNear( pd->nextunit.x,pd->prevunit.x ) && !pd->nextzero)
- pd->symetrical_v = true;
- }
-}
-
-static int BBoxIntersectsLine(Spline *s,Spline *line) {
- double t,x,y;
- DBounds b;
-
- b.minx = b.maxx = s->from->me.x;
- b.miny = b.maxy = s->from->me.y;
- if ( s->to->me.x<b.minx ) b.minx = s->to->me.x;
- else if ( s->to->me.x>b.maxx ) b.maxx = s->to->me.x;
- if ( s->to->me.y<b.miny ) b.miny = s->to->me.y;
- else if ( s->to->me.y>b.maxy ) b.maxy = s->to->me.y;
- if ( s->to->prevcp.x<b.minx ) b.minx = s->to->prevcp.x;
- else if ( s->to->prevcp.x>b.maxx ) b.maxx = s->to->prevcp.x;
- if ( s->to->prevcp.y<b.miny ) b.miny = s->to->prevcp.y;
- else if ( s->to->prevcp.y>b.maxy ) b.maxy = s->to->prevcp.y;
- if ( s->from->nextcp.x<b.minx ) b.minx = s->from->nextcp.x;
- else if ( s->from->nextcp.x>b.maxx ) b.maxx = s->from->nextcp.x;
- if ( s->from->nextcp.y<b.miny ) b.miny = s->from->nextcp.y;
- else if ( s->from->nextcp.y>b.maxy ) b.maxy = s->from->nextcp.y;
-
- if ( line->splines[0].c!=0 ) {
- t = (b.minx-line->splines[0].d)/line->splines[0].c;
- y = line->splines[1].c*t+line->splines[1].d;
- if ( y>=b.miny && y<=b.maxy )
-return( true );
- t = (b.maxx-line->splines[0].d)/line->splines[0].c;
- y = line->splines[1].c*t+line->splines[1].d;
- if ( y>=b.miny && y<=b.maxy )
-return( true );
- }
- if ( line->splines[1].c!=0 ) {
- t = (b.miny-line->splines[1].d)/line->splines[1].c;
- x = line->splines[0].c*t+line->splines[0].d;
- if ( x>=b.minx && x<=b.maxx )
-return( true );
- t = (b.maxy-line->splines[1].d)/line->splines[1].c;
- x = line->splines[0].c*t+line->splines[0].d;
- if ( x>=b.minx && x<=b.maxx )
-return( true );
- }
-return( false );
-}
-
-static int stcmp(const void *_p1, const void *_p2) {
- const struct st *stpt1 = _p1, *stpt2 = _p2;
- if ( stpt1->lt>stpt2->lt )
-return( 1 );
- else if ( stpt1->lt<stpt2->lt )
-return( -1 );
-
-return( 0 );
-}
-
-static int line_pt_cmp( const void *_p1, const void *_p2 ) {
- struct pointdata * const *pd1 = _p1, * const *pd2 = _p2;
- struct linedata *line;
- double ppos1=0,ppos2=0;
-
- if ( (*pd1)->prevline != NULL &&
- ( (*pd1)->prevline == (*pd2)->prevline || (*pd1)->prevline == (*pd2)->nextline ))
- line = (*pd1)->prevline;
- else if ( (*pd1)->nextline != NULL &&
- ( (*pd1)->nextline == (*pd2)->prevline || (*pd1)->nextline == (*pd2)->nextline ))
- line = (*pd1)->nextline;
- else
-return( 0 );
-
- ppos1 = ( (*pd1)->sp->me.x - line->online.x ) * line->unit.x +
- ( (*pd1)->sp->me.y - line->online.y ) * line->unit.y;
- ppos2 = ( (*pd2)->sp->me.x - line->online.x ) * line->unit.x +
- ( (*pd2)->sp->me.y - line->online.y ) * line->unit.y;
-
- if ( ppos1>ppos2 )
-return( 1 );
- else if ( ppos1<ppos2 )
-return( -1 );
- else
-return( 0 );
-}
-
-static int segment_cmp(const void *_s1, const void *_s2) {
- const struct segment *s1 = _s1, *s2 = _s2;
- if ( s1->start<s2->start )
-return( -1 );
- else if ( s1->start>s2->start )
-return( 1 );
-
-return( 0 );
-}
-
-static int proj_cmp(const void *_p1, const void *_p2) {
- struct pointdata * const *p1 = _p1, * const *p2 = _p2;
- if ( (*p1)->projection<(*p2)->projection )
-return( -1 );
- else if ( (*p1)->projection>(*p2)->projection )
-return( 1 );
-
-return( 0 );
-}
-
-static void AssignStemToPoint( struct pointdata *pd,struct stemdata *stem,int is_next, int left ) {
- struct stemdata ***stems;
- int i, *stemcnt, **is_l;
-
- stems = ( is_next ) ? &pd->nextstems : &pd->prevstems;
- stemcnt = ( is_next ) ? &pd->nextcnt : &pd->prevcnt;
- is_l = ( is_next ) ? &pd->next_is_l : &pd->prev_is_l;
- for ( i=0; i<*stemcnt; i++ ) {
- if ((*stems)[i] == stem )
-return;
- }
-
- *stems = realloc( *stems,( *stemcnt+1 )*sizeof( struct stemdata *));
- *is_l = realloc( *is_l, ( *stemcnt+1 )*sizeof( int ));
- (*stems)[*stemcnt] = stem;
- (*is_l )[*stemcnt] = left;
- (*stemcnt)++;
-}
-
-int IsStemAssignedToPoint( struct pointdata *pd,struct stemdata *stem,int is_next ) {
- struct stemdata **stems;
- int i, stemcnt;
-
- stems = ( is_next ) ? pd->nextstems : pd->prevstems;
- stemcnt = ( is_next ) ? pd->nextcnt : pd->prevcnt;
-
- for ( i=0; i<stemcnt; i++ ) {
- if ( stems[i] == stem )
-return( i );
- }
-return( -1 );
-}
-
-static int GetValidPointDataIndex( struct glyphdata *gd,SplinePoint *sp,
- struct stemdata *stem ) {
-
- struct pointdata *tpd;
-
- if ( sp == NULL )
-return( -1 );
- if ( sp->ttfindex < gd->realcnt )
-return( sp->ttfindex );
- if ( !sp->nonextcp && sp->nextcpindex < gd->realcnt ) {
- tpd = &gd->points[sp->nextcpindex];
- if ( IsStemAssignedToPoint( tpd,stem,false ) != -1 )
-return( sp->nextcpindex );
- }
- if ( !sp->noprevcp && sp->prev != NULL &&
- sp->prev->from->nextcpindex < gd->realcnt ) {
- tpd = &gd->points[sp->prev->from->nextcpindex];
- if ( IsStemAssignedToPoint( tpd,stem,true ) != -1 )
-return( sp->prev->from->nextcpindex );
- }
-return( -1 );
-}
-
-static int LineType(struct st *st,int i, int cnt,Spline *line) {
- SplinePoint *sp;
- BasePoint nextcp, prevcp, here;
- double dn, dp;
-
- if ( st[i].st>.01 && st[i].st<.99 )
-return( 0 ); /* Not near an end-point, just a normal line */
- if ( i+1>=cnt )
-return( 0 ); /* No following spline */
- if ( st[i+1].st>.01 && st[i+1].st<.99 )
-return( 0 ); /* Following spline not near an end-point, can't */
- /* match to this one, just a normal line */
- if ( st[i].st<.5 && st[i+1].st>.5 ) {
- if ( st[i+1].s->to->next!=st[i].s )
-return( 0 );
- sp = st[i].s->from;
- } else if ( st[i].st>.5 && st[i+1].st<.5 ) {
- if ( st[i].s->to->next!=st[i+1].s )
-return( 0 );
- sp = st[i].s->to;
- } else
-return( 0 );
-
- if ( !sp->nonextcp )
- nextcp = sp->nextcp;
- else
- nextcp = sp->next->to->me;
- if ( !sp->noprevcp )
- prevcp = sp->prevcp;
- else
- prevcp = sp->prev->from->me;
- here.x = line->splines[0].c*(st[i].st+st[i+1].st)/2 + line->splines[0].d;
- here.y = line->splines[1].c*(st[i].st+st[i+1].st)/2 + line->splines[1].d;
-
- nextcp.x -= here.x; nextcp.y -= here.y;
- prevcp.x -= here.x; prevcp.y -= here.y;
-
- dn = nextcp.x*line->splines[1].c - nextcp.y*line->splines[0].c;
- dp = prevcp.x*line->splines[1].c - prevcp.y*line->splines[0].c;
- if ( dn*dp<0 ) /* splines away move on opposite sides of the line */
-return( 1 ); /* Treat this line and the next as one */
- /* We assume that a rounding error gave us one erroneous intersection (or we went directly through the endpoint) */
- else
-return( 2 ); /* Ignore both this line and the next */
- /* Intersects both in a normal fashion */
-}
-
-static int MonotonicOrder(Spline **sspace,Spline *line,struct st *stspace) {
- Spline *s;
- int i,j,k,cnt;
- BasePoint pts[9];
- extended lts[10], sts[10];
-
- for ( i=j=0; (s=sspace[j])!=NULL; ++j ) {
- if ( BBoxIntersectsLine(s,line) ) {
- /* Lines parallel to the direction we are testing just get in the */
- /* way and don't add any useful info */
- if ( s->islinear &&
- RealNear(line->splines[0].c*s->splines[1].c,
- line->splines[1].c*s->splines[0].c))
- continue;
- if ( SplinesIntersect(line,s,pts,lts,sts)<=0 )
- continue;
- for ( k=0; sts[k]!=-1; ++k ) {
- if ( sts[k]>=0 && sts[k]<=1 ) {
- stspace[i].s = s;
- stspace[i].lt = lts[k];
- stspace[i++].st = sts[k];
- }
- }
- }
- }
- stspace[i].s = NULL;
- cnt = i;
- qsort(stspace,cnt,sizeof(struct st),stcmp);
-return( cnt );
-}
-
-static Spline *MonotonicFindAlong(Spline *line,struct st *stspace,int cnt,
- Spline *findme, double *other_t) {
- Spline *s;
- int i;
- int eo; /* I do horizontal/vertical by winding number */
- /* But figuring winding number with respect to a */
- /* diagonal line is hard. So I use even-odd */
- /* instead. */
-
- eo = 0;
- for ( i=0; i<cnt; ++i ) {
- s = stspace[i].s;
- if ( s==findme ) {
- if ( (eo&1) && i>0 ) {
- *other_t = stspace[i-1].st;
-return( stspace[i-1].s );
- } else if ( !(eo&1) && i+1<cnt ) {
- *other_t = stspace[i+1].st;
-return( stspace[i+1].s );
- }
- fprintf( stderr, "MonotonicFindAlong: Ran out of intersections.\n" );
-return( NULL );
- }
- if ( i+1<cnt && stspace[i+1].s==findme )
- ++eo;
- else switch ( LineType(stspace,i,cnt,line) ) {
- case 0: /* Normal spline */
- ++eo;
- break;
- case 1: /* Intersects at end-point & next entry is other side */
- ++eo; /* And the two sides continue in approximately the */
- ++i; /* same direction */
- break;
- case 2: /* Intersects at end-point & next entry is other side */
- ++i; /* And the two sides go in opposite directions */
- break;
- default:
- break;
-}
- }
- fprintf( stderr, "MonotonicFindAlong: Never found our spline.\n" );
-return( NULL );
-}
-
-static int MonotonicFindStemBounds(Spline *line,struct st *stspace,int cnt,
- double fudge,struct stemdata *stem ) {
- int i,j;
- int eo; /* I do horizontal/vertical by winding number */
- /* But figuring winding number with respect to a */
- /* diagonal line is hard. So I use even-odd */
- /* instead. */
- double pos, npos;
- double lmin = ( stem->lmin < -fudge ) ? stem->lmin : -fudge;
- double lmax = ( stem->lmax > fudge ) ? stem->lmax : fudge;
- double rmin = ( stem->rmin < -fudge ) ? stem->rmin : -fudge;
- double rmax = ( stem->rmax > fudge ) ? stem->rmax : fudge;
- lmin -= .0001; lmax += .0001; rmin -= .0001; rmax += .0001;
-
- eo = 0;
- for ( i=0; i<cnt; ++i ) {
- pos = (line->splines[0].c*stspace[i].lt + line->splines[0].d - stem->left.x)*stem->l_to_r.x +
- (line->splines[1].c*stspace[i].lt + line->splines[1].d - stem->left.y)*stem->l_to_r.y;
- npos = 1e4;
- if ( i+1<cnt )
- npos = (line->splines[0].c*stspace[i+1].lt + line->splines[0].d - stem->left.x)*stem->l_to_r.x +
- (line->splines[1].c*stspace[i+1].lt + line->splines[1].d - stem->left.y)*stem->l_to_r.y;
-
- if ( pos>=lmin && pos<=lmax ) {
- if ( (eo&1) && i>0 )
- j = i-1;
- else if ( !(eo&1) && i+1<cnt )
- j = i+1;
- else
-return( false );
- pos = (line->splines[0].c*stspace[j].lt + line->splines[0].d - stem->right.x)*stem->l_to_r.x +
- (line->splines[1].c*stspace[j].lt + line->splines[1].d - stem->right.y)*stem->l_to_r.y;
- if ( pos >= rmin && pos <= rmax )
-return( true );
- }
- if ( i+1 < cnt && npos >= lmin && npos <= lmax )
- ++eo;
- else switch ( LineType(stspace,i,cnt,line) ) {
- case 0: /* Normal spline */
- ++eo;
- break;
- case 1: /* Intersects at end-point & next entry is other side */
- ++eo; /* And the two sides continue in approximately the */
- ++i; /* same direction */
- break;
- case 2: /* Intersects at end-point & next entry is other side */
- ++i; /* And the two sides go in opposite directions */
- break;
- default:
- break;
- }
- }
-return( false );
-}
-
-static int MatchWinding(struct monotonic ** space,int i,int nw,int winding,int which,int idx) {
- struct monotonic *m;
- int j,cnt=0;
-
- if (( nw<0 && winding>0 ) || (nw>0 && winding<0)) {
- winding = nw;
- for ( j=i-1; j>=0; --j ) {
- m = space[j];
- winding += ((&m->xup)[which] ? 1 : -1 );
- if ( winding==0 ) {
- if ( cnt == idx )
-return( j );
- cnt++;
- }
- }
- } else {
- winding = nw;
- for ( j=i+1; space[j]!=NULL; ++j ) {
- m = space[j];
- winding += ((&m->xup)[which] ? 1 : -1 );
- if ( winding==0 ) {
- if ( cnt == idx )
-return( j );
- cnt++;
- }
- }
- }
-return( -1 );
-}
-
-static int FindMatchingHVEdge( struct glyphdata *gd,struct pointdata *pd,
- int is_next,Spline **edges,double *other_t,double *dist ) {
-
- double test, t, start, end;
- int which;
- Spline *s;
- Monotonic *m;
- int winding, nw, i, j, ret=0;
- struct monotonic **space;
- BasePoint *dir, d, hv;
-
- /* Things are difficult if we go exactly through the point. Move off */
- /* to the side a tiny bit and hope that doesn't matter */
- if ( is_next==2 ) {
- /* Consider the case of the bottom of the circumflex (or a chevron) */
- /* Think of it as a flattend breve. It is symetrical and we want to */
- /* note the vertical distance between the two points that define */
- /* the bottom, so treat them as a funky stem */
- /* \ \ / / */
- /* \ \ / / */
- /* \ \ / / */
- /* \ + / */
- /* \ / */
- /* + */
- hv.x = pd->symetrical_h ? 1.0 : 0.0;
- hv.y = pd->symetrical_v ? 1.0 : 0.0;
- dir = &hv;
- t = .001;
- s = pd->sp->next; /* Could just as easily be prev */
- } else if ( is_next ) {
- s = pd->sp->next;
- t = .001;
- dir = &pd->nextunit;
- } else {
- s = pd->sp->prev;
- t = .999;
- dir = &pd->prevunit;
- }
- if (( d.x = dir->x )<0 ) d.x = -d.x;
- if (( d.y = dir->y )<0 ) d.y = -d.y;
- which = d.x<d.y; /* closer to vertical */
-
- if ( s==NULL ) /* Somehow we got an open contour? */
-return( 0 );
-
- test = ((s->splines[which].a*t+s->splines[which].b)*t+s->splines[which].c)*t+s->splines[which].d;
- MonotonicFindAt(gd->ms,which,test,space = gd->space);
-
- winding = 0;
- for ( i=0; space[i]!=NULL; ++i ) {
- m = space[i];
- nw = ((&m->xup)[which] ? 1 : -1 );
- if ( m->s == s && t>=m->tstart && t<=m->tend ) {
- start = m->other;
- break;
- }
- winding += nw;
- }
- if ( space[i]==NULL ) {
- fprintf( stderr, "FindMatchinHVEdge didn't\n" );
-return( 0 );
- }
-
- j = MatchWinding(space,i,nw,winding,which,0);
- if ( j!=-1 ) {
- other_t[0] = space[j]->t;
- end = space[j]->other;
- dist[0] = end - start;
- if ( dist[0] < 0 ) dist[0] = -dist[0];
- edges[0] = space[j]->s;
- ret++;
- }
- if ( ret > 0 && is_next != 2 && ( pd->x_extr == 1 || pd->y_extr == 1 )) {
- j = MatchWinding(space,i,nw,winding,which,1);
- if ( j!=-1 ) {
- other_t[ret] = space[j]->t;
- end = space[j]->other;
- dist[ret] = end - start;
- if ( dist[ret] < 0 ) dist[ret] = -dist[ret];
- edges[ret] = space[j]->s;
- ret++;
- }
- }
-return( ret );
-}
-
-static BasePoint PerturbAlongSpline( Spline *s,BasePoint *bp,double t ) {
- BasePoint perturbed;
-
- for (;;) {
- perturbed.x = ((s->splines[0].a*t+s->splines[0].b)*t+s->splines[0].c)*t+s->splines[0].d;
- perturbed.y = ((s->splines[1].a*t+s->splines[1].b)*t+s->splines[1].c)*t+s->splines[1].d;
- if ( !RealWithin( perturbed.x,bp->x,.01 ) || !RealWithin( perturbed.y,bp->y,.01 ))
- break;
- if ( t<.5 ) {
- t *= 2;
- if ( t>.5 )
- break;
- } else {
- t = 1- 2*(1-t);
- if ( t<.5 )
- break;
- }
- }
-return( perturbed );
-}
-
-static void MakeVirtualLine(struct glyphdata *gd,BasePoint *perturbed,
- BasePoint *dir,Spline *myline,SplinePoint *end1, SplinePoint *end2) {
-
- BasePoint norm, absnorm;
- SplineSet *spl;
- Spline *s, *first;
- double t1, t2;
- int i, cnt;
-
- if ( gd->stspace==NULL ) {
- for ( i=0; i<2; ++i ) {
- cnt = 0;
- for ( spl=gd->sc->layers[gd->layer].splines; spl!=NULL; spl=spl->next ) {
- first = NULL;
- if ( spl->first->prev!=NULL ) {
- for ( s=spl->first->next; s!=first; s=s->to->next ) {
- if ( first==NULL ) first = s;
- if ( i )
- gd->sspace[cnt] = s;
- ++cnt;
- }
- }
- }
- if ( !i ) {
- gd->scnt = cnt;
- gd->sspace = malloc((cnt+1)*sizeof(Spline *));
- } else
- gd->sspace[cnt] = NULL;
- }
- gd->stspace = malloc((3*cnt+2)*sizeof(struct st));
- SplineCharFindBounds(gd->sc,&gd->size);
- gd->size.minx -= 10; gd->size.miny -= 10;
- gd->size.maxx += 10; gd->size.maxy += 10;
- }
-
- norm.x = -dir->y;
- norm.y = dir->x;
- absnorm = norm;
- if ( absnorm.x<0 ) absnorm.x = -absnorm.x;
- if ( absnorm.y<0 ) absnorm.y = -absnorm.y;
-
- memset(myline,0,sizeof(*myline));
- memset(end1,0,sizeof(*end1));
- memset(end2,0,sizeof(*end2));
- myline->knownlinear = myline->islinear = true;
-
- if ( absnorm.x > absnorm.y ) {
- /* Greater change in x than in y */
- t1 = (gd->size.minx-perturbed->x)/norm.x;
- t2 = (gd->size.maxx-perturbed->x)/norm.x;
- myline->splines[0].d = gd->size.minx;
- myline->splines[0].c = gd->size.maxx-gd->size.minx;
- myline->splines[1].d = perturbed->y+t1*norm.y;
- myline->splines[1].c = (t2-t1)*norm.y;
- } else {
- t1 = (gd->size.miny-perturbed->y)/norm.y;
- t2 = (gd->size.maxy-perturbed->y)/norm.y;
- myline->splines[1].d = gd->size.miny;
- myline->splines[1].c = gd->size.maxy-gd->size.miny;
- myline->splines[0].d = perturbed->x+t1*norm.x;
- myline->splines[0].c = (t2-t1)*norm.x;
- }
- end1->me.x = myline->splines[0].d;
- end2->me.x = myline->splines[0].d + myline->splines[0].c;
- end1->me.y = myline->splines[1].d;
- end2->me.y = myline->splines[1].d + myline->splines[1].c;
- end1->nextcp = end1->prevcp = end1->me;
- end2->nextcp = end2->prevcp = end2->me;
- end1->nonextcp = end1->noprevcp = end2->nonextcp = end2->noprevcp = true;
- end1->next = myline; end2->prev = myline;
- myline->from = end1; myline->to = end2;
-}
-
-static int FindMatchingEdge( struct glyphdata *gd, struct pointdata *pd,
- int is_next,Spline **edges ) {
-
- BasePoint *dir, vert, perturbed, diff;
- Spline myline;
- SplinePoint end1, end2;
- double *other_t = is_next==2 ? &pd->both_e_t : is_next ? pd->next_e_t : pd->prev_e_t;
- double *dist = is_next ? pd->next_dist : pd->prev_dist;
- double t ;
- Spline *s;
- int cnt;
-
- dist[0] = 0; dist[1] = 0;
- if (( is_next && ( pd->next_hor || pd->next_ver )) ||
- ( !is_next && ( pd->prev_hor || pd->prev_ver )) ||
- is_next == 2 )
-return( FindMatchingHVEdge(gd,pd,is_next,edges,other_t,dist));
-
- if ( is_next ) {
- dir = &pd->nextunit;
- t = .001;
- s = pd->sp->next;
- } else {
- dir = &pd->prevunit;
- t = .999;
- s = pd->sp->prev;
- }
- /* For spline segments which have slope close enough to the font's italic */
- /* slant look for an opposite edge along the horizontal direction, rather */
- /* than along the normal for the point's next/previous unit. This allows */
- /* us e. g. to detect serifs in italic fonts */
- if ( gd->has_slant ) {
- if ( UnitsParallel( dir,&gd->slant_unit,true )) {
- vert.x = 0; vert.y = 1;
- dir = &vert;
- }
- }
-
- if ( s==NULL || ( gd->only_hv && !IsUnitHV( dir,false )))
-return( 0 );
-
- diff.x = s->to->me.x-s->from->me.x; diff.y = s->to->me.y-s->from->me.y;
- if ( diff.x<.03 && diff.x>-.03 && diff.y<.03 && diff.y>-.03 )
-return( 0 );
-
- /* Don't base the line on the current point, we run into rounding errors */
- /* where lines that should intersect it don't. Instead perturb it a tiny*/
- /* bit in the direction along the spline */
- perturbed = PerturbAlongSpline( s,&pd->sp->me,t );
-
- MakeVirtualLine(gd,&perturbed,dir,&myline,&end1,&end2);
- /* prev_e_t = next_e_t = both_e_t =. This is where these guys are set */
- cnt = MonotonicOrder(gd->sspace,&myline,gd->stspace);
- edges[0] = MonotonicFindAlong(&myline,gd->stspace,cnt,s,other_t);
-return( edges[0] != NULL );
-}
-
-static int StillStem(struct glyphdata *gd,double fudge,BasePoint *pos,struct stemdata *stem ) {
- Spline myline;
- SplinePoint end1, end2;
- int cnt, ret;
-
- MakeVirtualLine( gd,pos,&stem->unit,&myline,&end1,&end2 );
- cnt = MonotonicOrder( gd->sspace,&myline,gd->stspace );
- ret = MonotonicFindStemBounds( &myline,gd->stspace,cnt,fudge,stem );
-return( ret );
-}
-
-static int CornerCorrectSide( struct pointdata *pd,int x_dir,int is_l ) {
- int corner = ( x_dir ) ? pd->x_corner : pd->y_corner;
- int start = (( x_dir && is_l ) || ( !x_dir && !is_l ));
- double unit_p, unit_n;
-
- unit_p = (&pd->prevunit.x)[!x_dir];
- unit_n = (&pd->nextunit.x)[!x_dir];
-return( ( start && (
- ( corner == 1 && unit_p > 0 && unit_n > 0 ) ||
- ( corner == 2 && unit_p < 0 && unit_n < 0 ))) ||
- ( !start && (
- ( corner == 1 && unit_p < 0 && unit_n < 0 ) ||
- ( corner == 2 && unit_p > 0 && unit_n > 0 ))));
-}
-
-static int IsCorrectSide( struct glyphdata *gd,struct pointdata *pd,
- int is_next,int is_l,BasePoint *dir ) {
-
- Spline *sbase, myline;
- SplinePoint *sp = pd->sp, end1, end2;
- BasePoint perturbed;
- int i, hv, is_x, ret = false, winding = 0, cnt, eo;
- double t, test;
- struct monotonic **space, *m;
-
- hv = IsUnitHV( dir,true );
- if (( hv == 2 && pd->x_corner ) || ( hv == 1 && pd->y_corner ))
-return( CornerCorrectSide( pd,( hv == 2 ),is_l ));
-
- sbase = ( is_next ) ? sp->next : sp->prev;
- t = ( is_next ) ? 0.001 : 0.999;
- perturbed = PerturbAlongSpline( sbase,&sp->me,t );
-
- if ( hv ) {
- is_x = ( hv == 2 );
- test = ( is_x ) ? perturbed.y : perturbed.x;
- MonotonicFindAt( gd->ms,is_x,test,space = gd->space );
- for ( i=0; space[i]!=NULL; ++i ) {
- m = space[i];
- winding = ((&m->xup)[is_x] ? 1 : -1 );
- if ( m->s == sbase )
- break;
- }
- if ( space[i]!=NULL )
- ret = (( is_l && winding == 1 ) || ( !is_l && winding == -1 ));
- } else {
- MakeVirtualLine( gd,&perturbed,dir,&myline,&end1,&end2 );
- cnt = MonotonicOrder( gd->sspace,&myline,gd->stspace );
- eo = -1;
- is_x = fabs( dir->y ) > fabs( dir->x );
- /* If a diagonal stem is more vertical than horizontal, then our */
- /* virtual line will go from left to right. It will first intersect */
- /* the left side of the stem, if the stem also points north-east. */
- /* In any other case the virtual line will first intersect the right */
- /* side. */
- i = ( is_x && dir->y > 0 ) ? 0 : cnt-1;
- while ( i >= 0 && i <= cnt-1 ) {
- eo = ( eo != 1 ) ? 1 : 0;
- if ( gd->stspace[i].s == sbase )
- break;
- if ( is_x && dir->y > 0 ) i++;
- else i--;
- }
- ret = ( is_l == eo );
- }
-return( ret );
-}
-
-/* In TrueType I want to make sure that everything on a diagonal line remains */
-/* on the same line. Hence we compute the line. Also we are interested in */
-/* points that are on the intersection of two lines */
-static struct linedata *BuildLine(struct glyphdata *gd,struct pointdata *pd,int is_next ) {
- int i;
- BasePoint *dir, *base, *start, *end;
- struct pointdata **pspace = gd->pspace, *pd2;
- int pcnt=0, is_l, hv;
- double dist_error;
- struct linedata *line;
- double off, firstoff, lastoff, lmin=0, lmax=0;
-
- dir = is_next ? &pd->nextunit : &pd->prevunit;
- is_l = IsCorrectSide( gd,pd,is_next,true,dir );
- dist_error = ( IsUnitHV( dir,true )) ? dist_error_hv : dist_error_diag ; /* Diagonals are harder to align */
- if ( dir->x==0 && dir->y==0 )
-return( NULL );
- base = &pd->sp->me;
-
- for ( i= (pd - gd->points)+1; i<gd->pcnt; ++i ) if ( gd->points[i].sp!=NULL ) {
- pd2 = &gd->points[i];
- off = ( pd2->sp->me.x - base->x )*dir->y -
- ( pd2->sp->me.y - base->y )*dir->x;
- if ( off <= lmax - 2*dist_error || off >= lmin + 2*dist_error )
- continue;
- if ( off < 0 && off < lmin ) lmin = off;
- else if ( off > 0 && off > lmax ) lmax = off;
-
- if ((( UnitsParallel( dir,&pd2->nextunit,true ) && pd2->nextline==NULL ) &&
- IsCorrectSide( gd,pd2,true,is_l,dir )) ||
- (( UnitsParallel( dir,&pd2->prevunit,true ) && pd2->prevline==NULL ) &&
- IsCorrectSide( gd,pd2,false,is_l,dir )))
- pspace[pcnt++] = pd2;
- }
-
- if ( pcnt==0 )
-return( NULL );
- if ( pcnt==1 ) {
- /* if the line consists of just these two points, only count it as */
- /* a true line if the two immediately follow each other */
- if (( pd->sp->next->to != pspace[0]->sp || !pd->sp->next->knownlinear ) &&
- ( pd->sp->prev->from != pspace[0]->sp || !pd->sp->prev->knownlinear ))
-return( NULL );
- }
-
- line = &gd->lines[gd->linecnt++];
- line->pcnt = pcnt+1;
- line->points = malloc((pcnt+1)*sizeof(struct pointdata *));
- line->points[0] = pd;
- line->unit = *dir;
- line->is_left = is_l;
- if ( dir->x < 0 || dir->y == -1 ) {
- line->unit.x = -line->unit.x;
- line->unit.y = -line->unit.y;
- }
- line->online = *base;
- if ( is_next ) {
- pd->nextline = line;
- if ( pd->colinear ) pd->prevline = line;
- } else {
- pd->prevline = line;
- if ( pd->colinear ) pd->nextline = line;
- }
- for ( i=0; i<pcnt; ++i ) {
- if ( UnitsParallel( dir,&pspace[i]->nextunit,true ) && pspace[i]->nextline==NULL ) {
- pspace[i]->nextline = line;
- if ( pspace[i]->colinear )
- pspace[i]->prevline = line;
- }
- if ( UnitsParallel( dir,&pspace[i]->prevunit,true ) && pspace[i]->prevline==NULL ) {
- pspace[i]->prevline = line;
- if ( pspace[i]->colinear )
- pspace[i]->nextline = line;
- }
- line->points[i+1] = pspace[i];
- }
- qsort( line->points,line->pcnt,sizeof( struct pointdata * ),line_pt_cmp );
- start = &line->points[0]->sp->me;
- end = &line->points[pcnt]->sp->me;
- /* Now recalculate the line unit vector basing on its starting and */
- /* terminal points */
- line->unit.x = ( end->x - start->x );
- line->unit.y = ( end->y - start->y );
- line->length = sqrt( pow( line->unit.x,2 ) + pow( line->unit.y,2 ));
- line->unit.x /= line->length;
- line->unit.y /= line->length;
- hv = IsUnitHV( &line->unit,true );
- if ( hv == 2 ) {
- line->unit.x = 0; line->unit.y = 1;
- } else if ( hv == 1 ) {
- line->unit.x = 1; line->unit.y = 0;
- } else if ( gd->has_slant && UnitsParallel( &line->unit,&gd->slant_unit,true )) {
- firstoff = ( start->x - base->x )*gd->slant_unit.y -
- ( start->y - base->y )*gd->slant_unit.x;
- lastoff = ( end->x - base->x )*gd->slant_unit.y -
- ( end->y - base->y )*gd->slant_unit.x;
- if ( fabs( firstoff ) < 2*dist_error && fabs( lastoff ) < 2*dist_error )
- line->unit = gd->slant_unit;
- }
-return( line );
-}
-
-static BasePoint MiddleUnit( BasePoint *unit1, BasePoint *unit2 ) {
- BasePoint u1, u2, ret;
- double hyp;
- int hv;
-
- u1 = *unit1; u2 = *unit2;
- if ( u1.x*u2.x + u1.y*u2.y < 0 ) {
- u2.x = -u2.x; u2.y = -u2.y;
- }
- ret.x = ( u1.x + u2.x )/2;
- ret.y = ( u1.y + u2.y )/2;
- hyp = sqrt( pow( ret.x,2 ) + pow( ret.y,2 ));
- ret.x /= hyp;
- ret.y /= hyp;
-
- hv = IsUnitHV( &ret,true );
- if ( hv ) {
- ret.x = ( hv == 1 ) ? 1 : 0;
- ret.y = ( hv == 1 ) ? 0 : 1;
- }
-return( ret );
-}
-
-static uint8 IsStubOrIntersection( struct glyphdata *gd, BasePoint *dir1,
- struct pointdata *pd1, struct pointdata *pd2, int is_next1, int is_next2 ) {
- int i;
- int exc=0;
- double dist, off, ext, norm1, norm2, opp, angle;
- double mid_err = ( stem_slope_error + stub_slope_error )/2;
- SplinePoint *sp1, *sp2, *nsp;
- BasePoint hvdir, *dir2, *odir1, *odir2;
- struct pointdata *npd;
- struct linedata *line;
-
- sp1 = pd1->sp; sp2 = pd2->sp;
- dir2 = ( is_next2 ) ? &pd2->nextunit : &pd2->prevunit;
- hvdir.x = ( int ) rint( dir1->x );
- hvdir.y = ( int ) rint( dir1->y );
-
- line = is_next2 ? pd2->nextline : pd2->prevline;
- if ( !IsUnitHV( dir2,true ) && line != NULL )
- dir2 = &line->unit;
-
- odir1 = ( is_next1 ) ? &pd1->prevunit : &pd1->nextunit;
- odir2 = ( is_next2 ) ? &pd2->prevunit : &pd2->nextunit;
-
- angle = fabs( GetUnitAngle( dir1,dir2 ));
- if ( angle > (double)stub_slope_error*1.5 && angle < PI - (double)stub_slope_error*1.5 )
-return( 0 );
-
- /* First check if it is a slightly slanted line or a curve which joins */
- /* a straight line under an angle close to 90 degrees. There are many */
- /* glyphs where circles or curved features are intersected by or */
- /* connected to vertical or horizontal straight stems (the most obvious */
- /* cases are Greek Psi and Cyrillic Yu), and usually it is highly desired to */
- /* mark such an intersection with a hint */
- norm1 = ( sp1->me.x - sp2->me.x ) * odir2->x +
- ( sp1->me.y - sp2->me.y ) * odir2->y;
- norm2 = ( sp2->me.x - sp1->me.x ) * odir1->x +
- ( sp2->me.y - sp1->me.y ) * odir1->y;
- /* if this is a real stub or intersection, then vectors on both sides */
- /* of out going-to-be stem should point in the same direction. So */
- /* the following value should be positive */
- opp = dir1->x * dir2->x + dir1->y * dir2->y;
- if (( angle <= mid_err || angle >= PI - mid_err ) &&
- opp > 0 && norm1 < 0 && norm2 < 0 && UnitsParallel( odir1,odir2,true ) &&
- ( UnitsOrthogonal( dir1,odir1,false ) || UnitsOrthogonal( dir2,odir1,false )))
-return( 2 );
- if (( angle <= mid_err || angle >= PI - mid_err ) &&
- opp > 0 && (( norm1 < 0 && pd1->colinear &&
- IsUnitHV( dir1,true ) && UnitsOrthogonal( dir1,odir2,false )) ||
- ( norm2 < 0 && pd2->colinear &&
- IsUnitHV( dir2,true ) && UnitsOrthogonal( dir2,odir1,false ))))
-return( 4 );
-
- /* Now check if our 2 points form a serif termination or a feature stub */
- /* The check is pretty dumb: it returns 'true' if all the following */
- /* conditions are met: */
- /* - both the points belong to the same contour; */
- /* - there are no more than 3 other points between them; */
- /* - anyone of those intermediate points is positioned by such a way */
- /* that it falls inside the stem formed by our 2 base point and */
- /* the vector we are checking and its distance from the first point */
- /* along that vector is not larger than the stem width; */
- /* - none of the intermediate points is parallel to the vector direction */
- /* (otherwise we should have checked against that point instead) */
- if ( !UnitsParallel( dir1,&hvdir,false ))
-return( 0 );
-
- dist = ( sp1->me.x - sp2->me.x ) * dir1->y -
- ( sp1->me.y - sp2->me.y ) * dir1->x;
- nsp = sp1;
-
- for ( i=0; i<4; i++ ) {
- if (( is_next1 && nsp->prev == NULL ) || ( !is_next1 && nsp->next == NULL ))
-return( 0 );
-
- nsp = ( is_next1 ) ? nsp->prev->from : nsp->next->to;
- if ( ( i>0 && nsp == sp1 ) || nsp == sp2 )
- break;
-
- npd = &gd->points[nsp->ptindex];
- if (UnitsParallel( &npd->nextunit,&hvdir,false ) ||
- UnitsParallel( &npd->prevunit,&hvdir,false ))
- break;
-
- ext = ( sp1->me.x - nsp->me.x ) * hvdir.x +
- ( sp1->me.y - nsp->me.y ) * hvdir.y;
- if ( ext < 0 ) ext = -ext;
- if (( dist > 0 && ext > dist ) || ( dist < 0 && ext < dist ))
- break;
-
- off = ( sp1->me.x - nsp->me.x ) * hvdir.y -
- ( sp1->me.y - nsp->me.y ) * hvdir.x;
- if (( dist > 0 && ( off <= 0 || off >= dist )) ||
- ( dist < 0 && ( off >= 0 || off <= dist )))
- exc++;
- }
-
- if ( nsp == sp2 && exc == 0 )
-return( 1 );
-
-return( 0 );
-}
-
-/* We normalize all stem unit vectors so that they point between 90 and 270 */
-/* degrees, as this range is optimal for sorting diagonal stems. This means */
-/* that vertical stems will normally point top to bottom, but for diagonal */
-/* stems (even if their angle is actually very close to vertical) the opposite */
-/* direction is also possible. Sometimes we "normalize" such stems converting */
-/* them to vertical. In such a case we have to swap their edges too. */
-static void SwapEdges( struct glyphdata *gd,struct stemdata *stem ) {
- BasePoint tpos;
- struct pointdata *tpd;
- struct linedata *tl;
- struct stem_chunk *chunk;
- double toff;
- int i, j, temp;
-
- tpos = stem->left; stem->left = stem->right; stem->right = tpos;
- toff = stem->lmin; stem->lmin = stem->rmax; stem->rmax = toff;
- toff = stem->rmin; stem->rmin = stem->lmax; stem->lmax = toff;
- tl = stem->leftline; stem->leftline = stem->rightline; stem->rightline = tl;
-
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
- tpd = chunk->l; chunk->l = chunk->r; chunk->r = tpd;
- temp = chunk->lpotential; chunk->lpotential = chunk->rpotential; chunk->rpotential = temp;
- temp = chunk->lnext; chunk->lnext = chunk->rnext; chunk->rnext = temp;
- temp = chunk->ltick; chunk->ltick = chunk->rtick; chunk->rtick = temp;
-
- tpd = chunk->l;
- if ( tpd != NULL ) {
- for ( j=0; j<tpd->nextcnt; j++ )
- if ( tpd->nextstems[j] == stem )
- tpd->next_is_l[j] = true;
- for ( j=0; j<tpd->prevcnt; j++ )
- if ( tpd->prevstems[j] == stem )
- tpd->prev_is_l[j] = true;
- }
-
- tpd = chunk->r;
- if ( tpd != NULL ) {
- for ( j=0; j<tpd->nextcnt; j++ )
- if ( tpd->nextstems[j] == stem )
- tpd->next_is_l[j] = false;
- for ( j=0; j<tpd->prevcnt; j++ )
- if ( tpd->prevstems[j] == stem )
- tpd->prev_is_l[j] = false;
- }
- }
-
- /* In case of a quadratic contour invert assignments to stem sides */
- /* also for off-curve points */
- if ( gd->order2 ) {
- for ( i=0; i<gd->realcnt; i++ ) if ( gd->points[i].sp == NULL ) {
- tpd = &gd->points[i];
- for ( j=0; j<tpd->nextcnt; j++ )
- if ( tpd->nextstems[j] == stem )
- tpd->next_is_l[j] = !tpd->next_is_l[j];
- for ( j=0; j<tpd->prevcnt; j++ )
- if ( tpd->prevstems[j] == stem )
- tpd->prev_is_l[j] = !tpd->prev_is_l[j];
- }
- }
-}
-
-static int StemFitsHV( struct stemdata *stem,int is_x,uint8 mask ) {
- int i,cnt;
- double loff,roff;
- double lmin=0,lmax=0,rmin=0,rmax=0;
- struct stem_chunk *chunk;
-
- cnt = stem->chunk_cnt;
-
- for ( i=0 ; i<stem->chunk_cnt; i++ ) {
- if( stem->chunks[i].stub & mask )
- break;
- }
- if ( i == stem->chunk_cnt )
-return( false );
- if ( stem->chunk_cnt == 1 )
-return( true );
-
- for ( i=0;i<cnt;i++ ) {
- chunk = &stem->chunks[i];
-
- if ( chunk->l != NULL ) {
- loff = ( chunk->l->sp->me.x - stem->left.x ) * !is_x -
- ( chunk->l->sp->me.y - stem->left.y ) * is_x;
- if ( loff < lmin ) lmin = loff;
- else if ( loff > lmax ) lmax = loff;
- }
- if ( chunk->r != NULL ) {
- roff = ( chunk->r->sp->me.x - stem->right.x ) * !is_x -
- ( chunk->r->sp->me.y - stem->right.y ) * is_x;
- if ( roff < rmin ) rmin = roff;
- else if ( roff > rmax ) rmax = roff;
- }
- }
- if ((( lmax - lmin ) < 2*dist_error_hv ) && (( rmax - rmin ) < 2*dist_error_hv ))
-return( true );
-return( false );
-}
-
-static int LineFitsHV( struct linedata *line ) {
- int i,cnt,is_x,hv;
- double off,min=0,max=0;
- struct pointdata *pd;
-
- cnt = line->pcnt;
- hv = IsUnitHV( &line->unit,true );
- if ( hv )
-return( true );
-
- hv = IsUnitHV( &line->unit,false );
- if ( !hv )
-return( false );
-
- is_x = ( hv == 1 ) ? 1 : 0;
- for ( i=0;i<cnt;i++ ) {
- pd = line->points[i];
-
- off = ( pd->base.x - line->online.x ) * !is_x -
- ( pd->base.y - line->online.y ) * is_x;
- if ( off < min ) min = off;
- else if ( off > max ) max = off;
- }
- if (( max - min ) < 2*dist_error_hv )
-return( true );
-return( false );
-}
-
-static int OnStem( struct stemdata *stem,BasePoint *test,int left ) {
- double dist_error, off;
- BasePoint *dir = &stem->unit;
- double max=0, min=0;
-
- /* Diagonals are harder to align */
- dist_error = IsUnitHV( dir,true ) ? dist_error_hv : dist_error_diag;
- if ( !stem->positioned ) dist_error = dist_error * 2;
- if ( dist_error > stem->width/2 ) dist_error = stem->width/2;
- if ( left ) {
- off = (test->x - stem->left.x)*dir->y - (test->y - stem->left.y)*dir->x;
- max = stem->lmax; min = stem->lmin;
- } else {
- off = (test->x - stem->right.x)*dir->y - (test->y - stem->right.y)*dir->x;
- max = stem->rmax; min = stem->rmin;
- }
-
- if ( off > ( max - dist_error ) && off < ( min + dist_error ) )
-return( true );
-
-return( false );
-}
-
-static int BothOnStem( struct stemdata *stem,BasePoint *test1,BasePoint *test2,
- int force_hv,int strict,int cove ) {
- double dist_error, off1, off2;
- BasePoint dir = stem->unit;
- int hv, hv_strict;
- double lmax=0, lmin=0, rmax=0, rmin=0;
-
- hv = ( force_hv ) ? IsUnitHV( &dir,false ) : IsUnitHV( &dir,true );
- hv_strict = ( force_hv ) ? IsUnitHV( &dir,true ) : hv;
- if ( force_hv ) {
- if ( force_hv != hv )
-return( false );
- if ( !hv_strict && !StemFitsHV( stem,( hv == 1 ),7 ))
-return( false );
- if ( !hv_strict ) {
- dir.x = ( force_hv == 2 ) ? 0 : 1;
- dir.y = ( force_hv == 2 ) ? 1 : 0;
- }
- }
- /* Diagonals are harder to align */
- dist_error = ( hv ) ? dist_error_hv : dist_error_diag;
- if ( !strict ) {
- dist_error = dist_error * 2;
- lmax = stem->lmax; lmin = stem->lmin;
- rmax = stem->rmax; rmin = stem->rmin;
- }
- if ( dist_error > stem->width/2 ) dist_error = stem->width/2;
-
- off1 = (test1->x-stem->left.x)*dir.y - (test1->y-stem->left.y)*dir.x;
- off2 = (test2->x-stem->right.x)*dir.y - (test2->y-stem->right.y)*dir.x;
- if (off1 > ( lmax - dist_error ) && off1 < ( lmin + dist_error ) &&
- off2 > ( rmax - dist_error ) && off2 < ( rmin + dist_error )) {
- /* For some reasons in my patch from Feb 24 2008 I prohibited snapping */
- /* to stems point pairs which together form a bend, if at least */
- /* one point from the pair doesn't have exactly the same position as */
- /* the stem edge. Unfortunately I don't remember why I did this, but */
- /* this behavior has at least one obviously negative effect: it */
- /* prevents building a stem from chunks which describe an ark */
- /* intersected by some straight lines, even if the intersections lie */
- /* closely enough to the ark extremum. So don't apply this test */
- /* at least if the force_hv flag is on (which means either the */
- /* chunk or the stem itself is not exactly horizontal/vertical) */
- if ( !cove || force_hv || off1 == 0 || off2 == 0 )
-return( true );
- }
-
- off2 = (test2->x-stem->left.x)*dir.y - (test2->y-stem->left.y)*dir.x;
- off1 = (test1->x-stem->right.x)*dir.y - (test1->y-stem->right.y)*dir.x;
- if (off2 > ( lmax - dist_error ) && off2 < ( lmin + dist_error ) &&
- off1 > ( rmax - dist_error ) && off1 < ( rmin + dist_error )) {
- if ( !cove || force_hv || off1 == 0 || off2 == 0 )
-return( true );
- }
-
-return( false );
-}
-
-static int RecalcStemOffsets( struct stemdata *stem,BasePoint *dir,int left,int right ) {
- double off, err;
- double lmin=0, lmax=0, rmin=0, rmax=0;
- struct stem_chunk *chunk;
- int i;
-
- if ( !left && !right )
-return( false );
- err = ( IsUnitHV( dir,true )) ? dist_error_hv : dist_error_diag;
-
- if ( stem->chunk_cnt > 1 ) for ( i=0; i<stem->chunk_cnt; i++ ) {
- chunk = &stem->chunks[i];
- if ( left && chunk->l != NULL ) {
- off = ( chunk->l->sp->me.x - stem->left.x )*dir->y -
- ( chunk->l->sp->me.y - stem->left.y )*dir->x;
- if ( off < lmin ) lmin = off;
- else if ( off > lmax ) lmax = off;
- }
- if ( right && chunk->r != NULL ) {
- off = ( chunk->r->sp->me.x - stem->right.x )*dir->y +
- ( chunk->r->sp->me.y - stem->right.y )*dir->x;
- if ( off < rmin ) rmin = off;
- else if ( off > rmax ) rmax = off;
- }
- }
- if ( lmax - lmin < 2*err && rmax - rmin < 2*err ) {
- stem->lmin = lmin; stem->lmax = lmax;
- stem->rmin = rmin; stem->rmax = rmax;
-return( true );
- }
-return( false );
-}
-
-static void SetStemUnit( struct stemdata *stem,BasePoint dir ) {
- double width;
-
- width = ( stem->right.x - stem->left.x ) * dir.y -
- ( stem->right.y - stem->left.y ) * dir.x;
- if ( width < 0 ) {
- width = -width;
- dir.x = -dir.x;
- dir.y = -dir.y;
- }
- stem->unit = dir;
- stem->width = width;
-
- /* Guess at which normal we want */
- stem->l_to_r.x = dir.y; stem->l_to_r.y = -dir.x;
- /* If we guessed wrong, use the other */
- if (( stem->right.x-stem->left.x )*stem->l_to_r.x +
- ( stem->right.y-stem->left.y )*stem->l_to_r.y < 0 ) {
- stem->l_to_r.x = -stem->l_to_r.x;
- stem->l_to_r.y = -stem->l_to_r.y;
- }
-
- /* Recalculate left/right offsets relatively to new vectors */
- RecalcStemOffsets( stem,&dir,true,true );
-}
-
-static struct stem_chunk *AddToStem( struct glyphdata *gd,struct stemdata *stem,
- struct pointdata *pd1,struct pointdata *pd2,int is_next1, int is_next2, int cheat ) {
-
- int is_potential1 = false, is_potential2 = true;
- struct stem_chunk *chunk=NULL;
- BasePoint *dir = &stem->unit;
- BasePoint *test;
- int lincr = 1, rincr = 1;
- double off, dist_error;
- double loff = 0, roff = 0;
- double min = 0, max = 0;
- int i, in, ip, cpidx;
- struct pointdata *pd, *npd, *ppd;
-
- if ( cheat || stem->positioned ) is_potential2 = false;
- /* Diagonals are harder to align */
- dist_error = IsUnitHV( dir,true ) ? 2*dist_error_hv : 2*dist_error_diag;
- if ( dist_error > stem->width/2 ) dist_error = stem->width/2;
- max = stem->lmax;
- min = stem->lmin;
-
- /* The following swaps "left" and "right" points in case we have */
- /* started checking relatively to a wrong edge */
- if ( pd1 != NULL ) {
- test = &pd1->base;
- off = ( test->x - stem->left.x )*dir->y -
- ( test->y - stem->left.y )*dir->x;
- if (( !stem->ghost &&
- ( off < ( max - dist_error ) || off > ( min + dist_error ))) ||
- ( RealNear( stem->unit.x, 1) && stem->ghost && stem->width == 21 ) ||
- ( RealNear( stem->unit.x,0 ) && stem->ghost && stem->width == 20 )) {
- pd = pd1; pd1 = pd2; pd2 = pd;
- in = is_next1; is_next1 = is_next2; is_next2 = in;
- ip = is_potential1; is_potential1 = is_potential2; is_potential2 = ip;
- }
- }
-
- if ( pd1 == NULL ) lincr = 0;
- if ( pd2 == NULL ) rincr = 0;
- /* Now run through existing stem chunks and see if the chunk we are */
- /* going to add doesn't duplicate an existing one.*/
- for ( i=stem->chunk_cnt-1; i>=0; --i ) {
- chunk = &stem->chunks[i];
- if ( chunk->l == pd1 ) lincr = 0;
- if ( chunk->r == pd2 ) rincr = 0;
-
- if (( chunk->l == pd1 || pd1 == NULL ) && ( chunk->r == pd2 || pd2 == NULL )) {
- if ( !is_potential1 ) chunk->lpotential = false;
- if ( !is_potential2 ) chunk->rpotential = false;
- break;
- } else if (( chunk->l == pd1 && chunk->r == NULL ) || ( chunk->r == pd2 && chunk->l == NULL )) {
- if ( chunk->l == NULL ) {
- chunk->l = pd1;
- chunk->lpotential = is_potential1;
- chunk->lnext = is_next1;
- chunk->ltick = lincr;
- } else if ( chunk->r == NULL ) {
- chunk->r = pd2;
- chunk->rpotential = is_potential2;
- chunk->rnext = is_next2;
- chunk->rtick = rincr;
- }
- break;
- }
- }
-
- if ( i<0 ) {
- stem->chunks = realloc(stem->chunks,(stem->chunk_cnt+1)*sizeof(struct stem_chunk));
- chunk = &stem->chunks[stem->chunk_cnt++];
- chunk->parent = stem;
-
- chunk->l = pd1; chunk->lpotential = is_potential1;
- chunk->r = pd2; chunk->rpotential = is_potential2;
- chunk->ltick = lincr; chunk->rtick = rincr;
-
- chunk->lnext = is_next1;
- chunk->rnext = is_next2;
- chunk->stemcheat = cheat;
- chunk->stub = chunk->is_ball = false;
- chunk->l_e_idx = chunk->r_e_idx = 0;
- }
-
- if ( pd1!=NULL ) {
- loff = ( pd1->base.x - stem->left.x ) * stem->l_to_r.x +
- ( pd1->base.y - stem->left.y ) * stem->l_to_r.y;
- if ( is_next1==1 || is_next1==2 || pd1->colinear ) {
- AssignStemToPoint( pd1,stem,true,true );
- /* For quadratic layers assign the stem not only to */
- /* spline points, but to their control points as well */
- /* (this may be important for TTF instructions */
- if ( gd->order2 && !pd1->sp->nonextcp && pd1->sp->nextcpindex < gd->realcnt ) {
- cpidx = pd1->sp->nextcpindex;
- npd = &gd->points[cpidx];
- if ( OnStem( stem,&npd->base,true ))
- AssignStemToPoint( npd,stem,false,true );
- }
- }
- if ( is_next1==0 || is_next1==2 || pd1->colinear ) {
- AssignStemToPoint( pd1,stem,false,true );
- if ( gd->order2 && !pd1->sp->noprevcp && pd1->sp->prev != NULL &&
- pd1->sp->prev->from->nextcpindex < gd->realcnt ) {
- cpidx = pd1->sp->prev->from->nextcpindex;
- ppd = &gd->points[cpidx];
- if ( OnStem( stem,&ppd->base,true ))
- AssignStemToPoint( ppd,stem,true,true );
- }
- }
- }
- if ( pd2!=NULL ) {
- roff = ( pd2->base.x - stem->right.x ) * stem->l_to_r.x +
- ( pd2->base.y - stem->right.y ) * stem->l_to_r.y;
- if ( is_next2==1 || is_next2==2 || pd2->colinear ) {
- AssignStemToPoint( pd2,stem,true,false );
- if ( gd->order2 && !pd2->sp->nonextcp && pd2->sp->nextcpindex < gd->realcnt ) {
- cpidx = pd2->sp->nextcpindex;
- npd = &gd->points[cpidx];
- if ( OnStem( stem,&npd->base,false ))
- AssignStemToPoint( npd,stem,false,false );
- }
- }
- if ( is_next2==0 || is_next2==2 || pd2->colinear ) {
- AssignStemToPoint( pd2,stem,false,false );
- if ( gd->order2 && !pd2->sp->noprevcp && pd2->sp->prev != NULL &&
- pd2->sp->prev->from->nextcpindex < gd->realcnt ) {
- cpidx = pd2->sp->prev->from->nextcpindex;
- ppd = &gd->points[cpidx];
- if ( OnStem( stem,&ppd->base,false ))
- AssignStemToPoint( ppd,stem,true,false );
- }
- }
- }
- if ( loff < stem->lmin ) stem->lmin = loff;
- else if ( loff > stem->lmax ) stem->lmax = loff;
- if ( roff < stem->rmin ) stem->rmin = roff;
- else if ( roff > stem->rmax ) stem->rmax = roff;
- stem->lpcnt += lincr; stem->rpcnt += rincr;
-return( chunk );
-}
-
-static struct stemdata *FindStem( struct glyphdata *gd,struct pointdata *pd,
- struct pointdata *pd2,BasePoint *dir,int is_next2,int de ) {
-
- int i, cove, test_left, hv, stemcnt;
- struct stemdata *stem;
- BasePoint newdir;
-
- stemcnt = ( is_next2 ) ? pd2->nextcnt : pd2->prevcnt;
-
- for ( i=0; i<stemcnt; i++ ) {
- stem = ( is_next2 ) ? pd2->nextstems[i] : pd2->prevstems[i];
- test_left = ( is_next2 ) ? !pd2->next_is_l[i] : !pd2->prev_is_l[i];
-
- if (UnitsParallel( &stem->unit,dir,true ) &&
- OnStem( stem,&pd->sp->me,test_left ))
-return( stem );
- }
-
- cove = ( dir->x == 0 && pd->x_extr + pd2->x_extr == 3 ) ||
- ( dir->y == 0 && pd->y_extr + pd2->y_extr == 3 );
-
- /* First pass to check for strict matches */
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- /* Ghost hints and BBox hits are usually generated after all other */
- /* hint types, but we can get them here in case we are generating */
- /* glyph data for a predefined hint layout. In this case they should */
- /* be excluded from the following tests */
- if ( stem->ghost || stem->bbox )
- continue;
-
- if ( UnitsParallel( &stem->unit,dir,true ) &&
- BothOnStem( stem,&pd->sp->me,&pd2->sp->me,false,true,cove )) {
- return( stem );
- }
- }
- /* One more pass. At this stage larger deviations are allowed */
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( stem->ghost || stem->bbox )
- continue;
-
- if ( UnitsParallel( &stem->unit,dir,true ) &&
- BothOnStem( stem,&pd->sp->me,&pd2->sp->me,false,false,cove )) {
-return( stem );
- }
- }
- if ( de )
-return( NULL );
-
- hv = IsUnitHV( dir,false );
- if ( !hv )
-return( NULL );
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( stem->ghost || stem->bbox )
- continue;
- if ( hv && BothOnStem( stem,&pd->base,&pd2->base,hv,false,cove )) {
- newdir.x = ( hv == 2 ) ? 0 : 1;
- newdir.y = ( hv == 2 ) ? 1 : 0;
- if ( hv == 2 && stem->unit.y < 0 )
- SwapEdges( gd,stem );
- if ( stem->unit.x != newdir.x )
- SetStemUnit( stem,newdir );
-return( stem );
- }
- }
-return( NULL );
-}
-
-static struct stemdata *NewStem( struct glyphdata *gd,BasePoint *dir,
- BasePoint *pos1, BasePoint *pos2 ) {
-
- struct stemdata * stem = &gd->stems[gd->stemcnt++];
- double width;
-
- stem->unit = *dir;
- if ( dir->x < 0 || dir->y == -1 ) {
- stem->unit.x = -stem->unit.x;
- stem->unit.y = -stem->unit.y;
- }
- width = ( pos2->x - pos1->x ) * stem->unit.y -
- ( pos2->y - pos1->y ) * stem->unit.x;
- if ( width > 0 ) {
- stem->left = *pos1;
- stem->right = *pos2;
- stem->width = width;
- } else {
- stem->left = *pos2;
- stem->right = *pos1;
- stem->width = -width;
- }
- /* Guess at which normal we want */
- stem->l_to_r.x = dir->y; stem->l_to_r.y = -dir->x;
- /* If we guessed wrong, use the other */
- if (( stem->right.x-stem->left.x )*stem->l_to_r.x +
- ( stem->right.y-stem->left.y )*stem->l_to_r.y < 0 ) {
- stem->l_to_r.x = -stem->l_to_r.x;
- stem->l_to_r.y = -stem->l_to_r.y;
- }
- stem->leftidx = stem->rightidx = -1;
- stem->leftline = stem->rightline = NULL;
- stem->lmin = stem->lmax = 0;
- stem->rmin = stem->rmax = 0;
- stem->ldone = stem->rdone = false;
- stem->lpcnt = stem->rpcnt = 0;
- stem->chunks = NULL;
- stem->chunk_cnt = 0;
- stem->ghost = stem->bbox = false;
- stem->positioned = false;
- stem->blue = -1;
-return( stem );
-}
-
-static int ParallelToDir( struct pointdata *pd,int checknext,BasePoint *dir,
- BasePoint *opposite,SplinePoint *basesp,uint8 is_stub ) {
-
- BasePoint n, o, *base = &basesp->me;
- SplinePoint *sp;
- double angle, mid_err = ( stem_slope_error + stub_slope_error )/2;
-
- sp = pd->sp;
- n = ( checknext ) ? pd->nextunit : pd->prevunit;
-
- angle = fabs( GetUnitAngle( dir,&n ));
- if (( !is_stub && angle > stem_slope_error && angle < PI - stem_slope_error ) ||
- ( is_stub & 1 && angle > stub_slope_error*1.5 && angle < PI - stub_slope_error*1.5 ) ||
- ( is_stub & 6 && angle > mid_err && angle < PI - mid_err ))
-return( false );
-
- /* Now sp must be on the same side of the spline as opposite */
- o.x = opposite->x-base->x; o.y = opposite->y-base->y;
- n.x = sp->me.x-base->x; n.y = sp->me.y-base->y;
- if ( ( o.x*dir->y - o.y*dir->x )*( n.x*dir->y - n.y*dir->x ) < 0 )
-return( false );
-
-return( true );
-}
-
-static int NearlyParallel( BasePoint *dir,Spline *other, double t ) {
- BasePoint odir;
- double olen;
-
- odir.x = (3*other->splines[0].a*t+2*other->splines[0].b)*t+other->splines[0].c;
- odir.y = (3*other->splines[1].a*t+2*other->splines[1].b)*t+other->splines[1].c;
- olen = sqrt( pow( odir.x,2 ) + pow( odir.y,2 ));
- if ( olen==0 )
-return( false );
- odir.x /= olen; odir.y /= olen;
-return( UnitsParallel( dir,&odir,false ));
-}
-
-static double NormalDist( BasePoint *to, BasePoint *from, BasePoint *perp ) {
- double len = (to->x-from->x)*perp->y - (to->y-from->y)*perp->x;
- if ( len<0 ) len = -len;
-return( len );
-}
-
-static struct stemdata *FindOrMakeHVStem( struct glyphdata *gd,
- struct pointdata *pd,struct pointdata *pd2,int is_h,int require_existing ) {
- int i,cove = false;
- struct stemdata *stem;
- BasePoint dir;
-
- dir.x = ( is_h ) ? 1 : 0;
- dir.y = ( is_h ) ? 0 : 1;
- if ( pd2 != NULL )
- cove = ( dir.x == 0 && pd->x_extr + pd2->x_extr == 3 ) ||
- ( dir.y == 0 && pd->y_extr + pd2->y_extr == 3 );
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( IsUnitHV( &stem->unit,true ) &&
- ( pd2 != NULL && BothOnStem( stem,&pd->sp->me,&pd2->sp->me,false,false,cove )))
- break;
- }
- if ( i==gd->stemcnt ) stem=NULL;
-
- if ( stem == NULL && pd2 != NULL && !require_existing )
- stem = NewStem( gd,&dir,&pd->sp->me,&pd2->sp->me );
-return( stem );
-}
-
-static int IsDiagonalEnd( struct glyphdata *gd,
- struct pointdata *pd1,struct pointdata *pd2,int is_next,int require_existing ) {
- /* suppose we have something like */
- /* *--* */
- /* \ \ */
- /* \ \ */
- /* Then let's create a vertical stem between the two points */
- /* (and a horizontal stem if the thing is rotated 90 degrees) */
- double width, length1, length2, dist1, dist2;
- BasePoint *pt1, *pt2, *dir1, *dir2, *prevdir1, *prevdir2;
- SplinePoint *prevsp1, *prevsp2;
- struct pointdata *prevpd1, *prevpd2;
- int hv;
-
- if ( pd1->colinear || pd2->colinear )
-return( false );
- pt1 = &pd1->sp->me; pt2 = &pd2->sp->me;
- /* Both key points of a diagonal end stem should have nearly the same */
- /* coordinate by x or y (otherwise we can't determine by which axis */
- /* it should be hinted) */
- if ( pt1->x >= pt2->x - dist_error_hv && pt1->x <= pt2->x + dist_error_hv ) {
- width = pd1->sp->me.y - pd2->sp->me.y;
- hv = 1;
- } else if ( pt1->y >= pt2->y - dist_error_hv && pt1->y <= pt2->y + dist_error_hv ) {
- width = pd1->sp->me.x - pd2->sp->me.x;
- hv = 2;
- } else
-return( false );
-
- dir1 = ( is_next ) ? &pd1->nextunit : &pd1->prevunit;
- dir2 = ( is_next ) ? &pd2->prevunit : &pd2->nextunit;
- if ( IsUnitHV( dir1,true )) /* Must be diagonal */
-return( false );
- prevsp1 = ( is_next ) ? pd1->sp->next->to : pd1->sp->prev->from;
- prevsp2 = ( is_next ) ? pd2->sp->prev->from : pd2->sp->next->to;
- prevpd1 = &gd->points[prevsp1->ptindex];
- prevpd2 = &gd->points[prevsp2->ptindex];
- prevdir1 = ( is_next ) ? &prevpd1->prevunit : &prevpd1->nextunit;
- prevdir2 = ( is_next ) ? &prevpd2->nextunit : &prevpd2->prevunit;
- /* Ensure we have got a real diagonal, i. e. its sides are parallel */
- if ( !UnitsParallel( dir1,dir2,true ) || !UnitsParallel( prevdir1,prevdir2,true ))
-return( false );
-
- /* Diagonal width should be smaller than its length */
- length1 = pow(( prevsp1->me.x - pt1->x ),2 ) + pow(( prevsp1->me.y - pt1->y ),2 );
- length2 = pow(( prevsp2->me.x - pt2->x ),2 ) + pow(( prevsp2->me.y - pt2->y ),2 );
- if ( length2 < length1 ) length1 = length2;
- if ( pow( width,2 ) > length1 )
-return( false );
-
- /* Finally exclude too short diagonals where the distance between key */
- /* points of one edge at the direction orthogonal to the unit vector */
- /* of the stem we are about to add is smaller than normal HV stem */
- /* fudge. Such diagonals may be later turned into HV stems, and we will */
- /* result into getting two coincident hints */
- dist1 = ( hv == 1 ) ? prevsp1->me.y - pt1->y : prevsp1->me.x - pt1->x;
- dist2 = ( hv == 1 ) ? prevsp2->me.y - pt2->y : prevsp2->me.x - pt2->x;
- if ( dist1 < 0 ) dist1 = -dist1;
- if ( dist2 < 0 ) dist2 = -dist2;
- if ( dist1 < 2*dist_error_hv && dist2 < 2*dist_error_hv )
-return( false );
-
-return( hv );
-}
-
-static struct stemdata *TestStem( struct glyphdata *gd,struct pointdata *pd,
- BasePoint *dir,SplinePoint *match,int is_next,int is_next2,int require_existing,uint8 is_stub,int eidx ) {
- struct pointdata *pd2;
- struct stemdata *stem, *destem;
- struct stem_chunk *chunk;
- struct linedata *otherline;
- double width;
- struct linedata *line, *line2;
- BasePoint *mdir, middle;
- int de=false, hv, l_changed;
-
- width = ( match->me.x - pd->sp->me.x )*dir->y -
- ( match->me.y - pd->sp->me.y )*dir->x;
- if ( width < 0 ) width = -width;
- if ( width < .5 )
-return( NULL ); /* Zero width stems aren't interesting */
- if (( is_next && pd->sp->next->to==match ) || ( !is_next && pd->sp->prev->from==match ))
-return( NULL ); /* Don't want a stem between two splines that intersect */
-
- pd2 = &gd->points[match->ptindex];
-
- line = is_next ? pd->nextline : pd->prevline;
- mdir = is_next2 ? &pd2->nextunit : &pd2->prevunit;
- line2 = is_next2 ? pd2->nextline : pd2->prevline;
- if ( !IsUnitHV( mdir,true ) && line2 != NULL )
- mdir = &line2->unit;
- if ( mdir->x==0 && mdir->y==0 )
-return( NULL ); /* cannot determine the opposite point's direction */
-
- if ( !UnitsParallel( mdir,dir,true ) && !is_stub )
-return( NULL ); /* Cannot make a stem if edges are not parallel (unless it is a serif) */
-
- if ( is_stub & 1 && !IsUnitHV( dir,true )) {
- /* For serifs we prefer the vector which is closer to horizontal/vertical */
- middle = MiddleUnit( dir,mdir );
- if ( UnitCloserToHV( &middle,dir ) == 1 && UnitCloserToHV( &middle,mdir ) == 1 )
- dir = &middle;
- else if ( UnitCloserToHV( mdir,dir ) == 1 )
- dir = mdir;
- if ( !IsUnitHV( dir,true ) &&
- ( hint_diagonal_ends || require_existing ))
- de = IsDiagonalEnd( gd,pd,pd2,is_next,require_existing );
- }
-
- stem = FindStem( gd,pd,pd2,dir,is_next2,de );
- destem = NULL;
- if ( de )
- destem = FindOrMakeHVStem( gd,pd,pd2,( de == 1 ),require_existing );
-
- if ( stem == NULL && !require_existing )
- stem = NewStem( gd,dir,&pd->sp->me,&match->me );
- if ( stem != NULL ) {
- chunk = AddToStem( gd,stem,pd,pd2,is_next,is_next2,false );
- if ( chunk != NULL ) {
- chunk->stub = is_stub;
- chunk->l_e_idx = chunk->r_e_idx = eidx;
- }
-
- if ( chunk != NULL && gd->linecnt > 0 ) {
- hv = IsUnitHV( &stem->unit,true );
- /* For HV stems allow assigning a line to a stem edge only */
- /* if that line also has an exactly HV vector */
- if ( line != NULL && (( !hv &&
- UnitsParallel( &stem->unit,&line->unit,true ) &&
- RecalcStemOffsets( stem,&line->unit,true,true )) ||
- ( hv && line->unit.x == stem->unit.x && line->unit.y == stem->unit.y ))) {
-
- otherline = NULL; l_changed = false;
- if (( stem->leftline == NULL ||
- stem->leftline->length < line->length ) && chunk->l == pd ) {
-
- stem->leftline = line;
- l_changed = true;
- otherline = stem->rightline;
- } else if (( stem->rightline == NULL ||
- stem->rightline->length < line->length ) && chunk->r == pd ) {
-
- stem->rightline = line;
- l_changed = true;
- otherline = stem->leftline;
- }
- /* If lines are attached to both sides of a diagonal stem, */
- /* then prefer the longer line */
- if ( !hv && l_changed && !stem->positioned &&
- ( otherline == NULL || ( otherline->length < line->length )))
- SetStemUnit( stem,line->unit );
- }
- if ( line2 != NULL && (( !hv &&
- UnitsParallel( &stem->unit,&line2->unit,true ) &&
- RecalcStemOffsets( stem,&line2->unit,true,true )) ||
- ( hv && line2->unit.x == stem->unit.x && line2->unit.y == stem->unit.y ))) {
-
- otherline = NULL; l_changed = false;
- if (( stem->leftline == NULL ||
- stem->leftline->length < line2->length ) && chunk->l == pd2 ) {
-
- stem->leftline = line2;
- l_changed = true;
- otherline = stem->rightline;
- } else if (( stem->rightline == NULL ||
- stem->rightline->length < line2->length ) && chunk->r == pd2 ) {
-
- stem->rightline = line2;
- l_changed = true;
- otherline = stem->leftline;
- }
- if ( !hv && l_changed && !stem->positioned &&
- ( otherline == NULL || ( otherline->length < line2->length )))
- SetStemUnit( stem,line2->unit );
- }
- }
- }
-
- if ( destem != NULL )
- AddToStem( gd,destem,pd,pd2,is_next,!is_next,1 );
-return( stem );
-}
-
-static double FindSameSlope(Spline *s,BasePoint *dir,double close_to) {
- double a, b, c, desc;
- double t1, t2;
- double d1, d2;
-
- if ( s==NULL )
-return( -1e4 );
-
- a = dir->x*s->splines[1].a*3 - dir->y*s->splines[0].a*3;
- b = dir->x*s->splines[1].b*2 - dir->y*s->splines[0].b*2;
- c = dir->x*s->splines[1].c - dir->y*s->splines[0].c ;
- if ( a!=0 ) {
- desc = b*b - 4*a*c;
- if ( desc<0 )
-return( -1e4 );
- desc = sqrt(desc);
- t1 = (-b+desc)/(2*a);
- t2 = (-b-desc)/(2*a);
- if ( (d1=t1-close_to)<0 ) d1 = -d1;
- if ( (d2=t2-close_to)<0 ) d2 = -d2;
- if ( d2<d1 && t2>=-.001 && t2<=1.001 )
- t1 = t2;
- } else if ( b!=0 )
- t1 = -c/b;
- else
-return( -1e4 );
-
-return( t1 );
-}
-
-/* This function is used when generating stem data for preexisting */
-/* stem hints. If we already know the desired hint position, then we */
-/* can safely assign to this hint any points which meet other conditions */
-/* but have no corresponding position at the opposite edge. */
-static int HalfStemNoOpposite( struct glyphdata *gd,struct pointdata *pd,
- struct stemdata *stem,BasePoint *dir,int is_next ) {
- int i, ret=0, allowleft, allowright, hv, corner;
- struct stemdata *tstem;
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- tstem = &gd->stems[i];
- if ( tstem->bbox || !tstem->positioned || tstem == stem )
- continue;
- allowleft = ( !tstem->ghost || tstem->width == 20 );
- allowright = ( !tstem->ghost || tstem->width == 21 );
- hv = IsUnitHV( &tstem->unit,true );
- corner = (( pd->x_corner && hv == 2 ) || ( pd->y_corner && hv == 1 ));
-
- if ( UnitsParallel( &tstem->unit,dir,true ) || tstem->ghost || corner ) {
- if ( OnStem( tstem,&pd->sp->me,true ) && allowleft ) {
- if ( IsCorrectSide( gd,pd,is_next,true,&tstem->unit )) {
- AddToStem( gd,tstem,pd,NULL,is_next,false,false );
- ret++;
- }
- } else if ( OnStem( tstem,&pd->sp->me,false ) && allowright ) {
- if ( IsCorrectSide( gd,pd,is_next,false,&tstem->unit )) {
- AddToStem( gd,tstem,NULL,pd,false,is_next,false );
- ret++;
- }
- }
- }
- }
-return( ret );
-}
-
-static struct stemdata *HalfStem( struct glyphdata *gd,struct pointdata *pd,
- BasePoint *dir,Spline *other,double other_t,int is_next,int eidx ) {
- /* Find the spot on other where the slope is the same as dir */
- double t1;
- double width;
- BasePoint match;
- struct stemdata *stem = NULL, *tstem;
- struct pointdata *pd2 = NULL, *tpd;
- int i;
-
- t1 = FindSameSlope( other,dir,other_t );
- if ( t1==-1e4 )
-return( NULL );
- if ( t1<0 && other->from->prev!=NULL && gd->points[other->from->ptindex].colinear ) {
- other = other->from->prev;
- t1 = FindSameSlope(other,dir,1.0);
- } else if ( t1>1 && other->to->next!=NULL && gd->points[other->to->ptindex].colinear ) {
- other = other->to->next;
- t1 = FindSameSlope(other,dir,0.0);
- }
-
- if ( t1<-.001 || t1>1.001 )
-return( NULL );
-
- /* Ok. the opposite edge has the right slope at t1 */
- /* Now see if we can make a one sided stem out of these two */
- match.x = ((other->splines[0].a*t1+other->splines[0].b)*t1+other->splines[0].c)*t1+other->splines[0].d;
- match.y = ((other->splines[1].a*t1+other->splines[1].b)*t1+other->splines[1].c)*t1+other->splines[1].d;
-
- width = (match.x-pd->sp->me.x)*dir->y - (match.y-pd->sp->me.y)*dir->x;
- /* offset = (match.x-pd->sp->me.x)*dir->x + (match.y-pd->sp->me.y)*dir->y;*/
- if ( width<.5 && width>-.5 )
-return( NULL ); /* Zero width stems aren't interesting */
-
- if ( isnan(t1))
- IError( "NaN value in HalfStem" );
-
- if ( is_next ) {
- pd->nextedges[eidx] = other;
- pd->next_e_t[eidx] = t1;
- } else {
- pd->prevedges[eidx] = other;
- pd->prev_e_t[eidx] = t1;
- }
-
- /* In my experience the only case where this function may be useful */
- /* is when it occasionally finds a real spline point which for some */
- /* reasons has been neglected by other tests and yet forms a valid */
- /* pair for the first point. So run through points and see if we */
- /* have actually got just a position on spline midway between to points, */
- /* or it is a normal point allowing to make a normal stem chunk */
- for ( i=0; i<gd->pcnt; ++i ) {
- tpd = &gd->points[i];
- if ( tpd->sp != NULL && tpd->sp->me.x == match.x && tpd->sp->me.y == match.y ) {
- pd2 = tpd;
- break;
- }
- }
- for ( i=0; i<gd->stemcnt; ++i ) {
- tstem = &gd->stems[i];
- if ( UnitsParallel( &tstem->unit,dir,true ) &&
- BothOnStem( tstem,&pd->base,&match,false,false,false )) {
- stem = tstem;
- break;
- }
- }
- if ( stem == NULL )
- stem = NewStem(gd,dir,&pd->sp->me,&match);
-
- AddToStem( gd,stem,pd,pd2,is_next,false,false );
-return( stem );
-}
-
-static int ConnectsAcross( struct glyphdata *gd,SplinePoint *sp,
- int is_next,Spline *findme,int eidx ) {
- struct pointdata *pd = &gd->points[sp->ptindex];
- Spline *other, *test;
- BasePoint dir;
-
- other = ( is_next ) ? pd->nextedges[eidx] : pd->prevedges[eidx];
-
- if ( other==findme )
-return( true );
- if ( other==NULL )
-return( false );
-
- dir.x = ( is_next ) ? -pd->nextunit.x : pd->prevunit.x;
- dir.y = ( is_next ) ? -pd->nextunit.y : pd->prevunit.y;
- test = other->to->next;
- while ( test!=NULL && test != other &&
- gd->points[test->from->ptindex].nextunit.x * dir.x +
- gd->points[test->from->ptindex].nextunit.y * dir.y > 0 ) {
- if ( test==findme )
-return( true );
- test = test->to->next;
- }
-
- dir.x = ( is_next ) ? pd->nextunit.x : -pd->prevunit.x;
- dir.y = ( is_next ) ? pd->nextunit.y : -pd->prevunit.y;
- test = other->from->prev;
- while ( test!=NULL && test != other &&
- gd->points[test->to->ptindex].prevunit.x * dir.x +
- gd->points[test->to->ptindex].prevunit.y * dir.y > 0 ) {
- if ( test==findme )
-return( true );
- test = test->from->prev;
- }
-return( false );
-}
-
-static int ConnectsAcrossToStem( struct glyphdata *gd,struct pointdata *pd,
- int is_next,struct stemdata *target,int is_l,int eidx ) {
-
- Spline *other, *test;
- BasePoint dir;
- struct pointdata *tpd;
- int ecnt, stemidx;
-
- ecnt = ( is_next ) ? pd->next_e_cnt : pd->prev_e_cnt;
- if ( ecnt < eidx + 1 )
-return( false );
- other = ( is_next ) ? pd->nextedges[eidx] : pd->prevedges[eidx];
-
- test = other;
- dir.x = ( is_next ) ? pd->nextunit.x : -pd->prevunit.x;
- dir.y = ( is_next ) ? pd->nextunit.y : -pd->prevunit.y;
- do {
- tpd = &gd->points[test->to->ptindex];
- stemidx = IsStemAssignedToPoint( tpd,target,false );
- if ( stemidx != -1 && tpd->prev_is_l[stemidx] == !is_l &&
- IsSplinePeak( gd,tpd,rint( target->unit.y ),rint( target->unit.y ),7 ))
-return( true );
-
- test = test->to->next;
- } while ( test!=NULL && test != other && stemidx == -1 &&
- ( tpd->prevunit.x * dir.x + tpd->prevunit.y * dir.y >= 0 ));
-
- test = other;
- dir.x = ( is_next ) ? -pd->nextunit.x : pd->prevunit.x;
- dir.y = ( is_next ) ? -pd->nextunit.y : pd->prevunit.y;
- do {
- tpd = &gd->points[test->from->ptindex];
- stemidx = IsStemAssignedToPoint( tpd,target,true );
- if ( stemidx != -1 && tpd->next_is_l[stemidx] == !is_l &&
- IsSplinePeak( gd,tpd,rint( target->unit.y ),rint( target->unit.y ),7 ))
-return( true );
-
- test = test->from->prev;
- } while ( test!=NULL && test != other && stemidx == -1 &&
- ( tpd->nextunit.x * dir.x + tpd->nextunit.y * dir.y >= 0 ));
-return( false );
-}
-
-static double RecalcT( Spline *base,SplinePoint *from, SplinePoint *to, double curt ) {
- double baselen, fromlen, tolen, ret;
- Spline *cur;
-
- baselen = SplineLength( base );
- fromlen = baselen * curt;
- tolen = baselen * ( 1 - curt );
-
- cur = base->from->prev;
- while ( cur != NULL && cur->to != from ) {
- fromlen += SplineLength( cur );
- cur = cur->from->prev;
- }
- cur = base->to->next;
- while ( cur!= NULL && cur->from != to ) {
- tolen += SplineLength( cur );
- cur = cur->to->next;
- }
- ret = fromlen/( fromlen + tolen );
-return( ret );
-}
-
-static int BuildStem( struct glyphdata *gd,struct pointdata *pd,int is_next,
- int require_existing,int has_existing,int eidx ) {
- BasePoint *dir;
- Spline *other, *cur;
- double t;
- double tod, fromd, dist;
- SplinePoint *testpt, *topt, *frompt;
- struct linedata *line;
- struct pointdata *testpd, *topd, *frompd;
- int tp, fp, t_needs_recalc=false, ret=0;
- uint8 tstub=0, fstub=0;
- BasePoint opposite;
- struct stemdata *stem=NULL;
-
- if ( is_next ) {
- dir = &pd->nextunit;
- other = pd->nextedges[eidx];
- cur = pd->sp->next;
- t = pd->next_e_t[eidx];
- dist = pd->next_dist[eidx];
- } else {
- dir = &pd->prevunit;
- other = pd->prevedges[eidx];
- cur = pd->sp->prev;
- t = pd->prev_e_t[eidx];
- dist = pd->prev_dist[eidx];
- }
- topt = other->to; frompt = other->from;
- topd = &gd->points[topt->ptindex];
- frompd = &gd->points[frompt->ptindex];
-
- line = is_next ? pd->nextline : pd->prevline;
- if ( !IsUnitHV( dir,true ) && line != NULL)
- dir = &line->unit;
-
- if ( other==NULL )
-return( 0 );
-
- opposite.x = ((other->splines[0].a*t+other->splines[0].b)*t+other->splines[0].c)*t+other->splines[0].d;
- opposite.y = ((other->splines[1].a*t+other->splines[1].b)*t+other->splines[1].c)*t+other->splines[1].d;
-
- if ( eidx == 0 ) tstub = IsStubOrIntersection( gd,dir,pd,topd,is_next,false );
- if ( eidx == 0 ) fstub = IsStubOrIntersection( gd,dir,pd,frompd,is_next,true );
- tp = ParallelToDir( topd,false,dir,&opposite,pd->sp,tstub );
- fp = ParallelToDir( frompd,true,dir,&opposite,pd->sp,fstub );
-
- /* if none of the opposite points is parallel to the needed vector, then */
- /* give it one more chance by skipping those points and looking at the next */
- /* and previous one. This can be useful in situations where the opposite */
- /* edge cannot be correctly detected just because there are too many points */
- /* on the spline (which is a very common situation for poorly designed */
- /* fonts or fonts with quadratic splines). */
- /* But do that only for colinear spline segments and ensure that there are */
- /* no bends between two splines. */
- if ( !tp && ( !fp || t > 0.5 ) &&
- topd->colinear && &other->to->next != NULL ) {
- testpt = topt->next->to;
- testpd = &gd->points[testpt->ptindex];
- BasePoint *initdir = &topd->prevunit;
- while ( !tp && topd->colinear && pd->sp != testpt && other->from != testpt && (
- testpd->prevunit.x * initdir->x +
- testpd->prevunit.y * initdir->y > 0 )) {
-
- topt = testpt; topd = testpd;
- tp = ParallelToDir( topd,false,dir,&opposite,pd->sp,false );
- testpt = topt->next->to;
- testpd = &gd->points[testpt->ptindex];
- }
- if ( tp ) t_needs_recalc = true;
- }
- if ( !fp && ( !fp || t < 0.5 ) &&
- frompd->colinear && &other->from->prev != NULL ) {
- testpt = frompt->prev->from;
- testpd = &gd->points[testpt->ptindex];
- BasePoint *initdir = &frompd->prevunit;
- while ( !fp && frompd->colinear && pd->sp != testpt && other->to != testpt && (
- testpd->prevunit.x * initdir->x +
- testpd->prevunit.y * initdir->y > 0 )) {
-
- frompt = testpt; frompd = testpd;
- fp = ParallelToDir( frompd,true,dir,&opposite,pd->sp,false );
- testpt = frompt->prev->from;
- testpd = &gd->points[testpt->ptindex];
- }
- if ( fp ) t_needs_recalc = true;
- }
- if ( t_needs_recalc )
- t = RecalcT( other,frompt,topt,t );
- if ( !tp && !fp ) {
- if ( has_existing )
- ret = HalfStemNoOpposite( gd,pd,NULL,dir,is_next );
-return( ret );
- }
-
- /* We have several conflicting metrics for getting the "better" stem */
- /* Generally we prefer the stem with the smaller width (but not always. See tilde) */
- /* Generally we prefer the stem formed by the point closer to the intersection */
- tod = (1-t)*NormalDist( &topt->me,&pd->sp->me,dir );
- fromd = t*NormalDist( &frompt->me,&pd->sp->me,dir );
-
- if ( tp && (( tod<fromd ) ||
- ( !fp && ( tod<2*fromd || dist < topd->prev_dist[eidx] ||
- ConnectsAcross( gd,frompt,true,cur,eidx ) || NearlyParallel( dir,other,t ))))) {
- stem = TestStem( gd,pd,dir,topt,is_next,false,require_existing,tstub,eidx );
- }
- if ( stem == NULL && fp && (( fromd<tod ) ||
- ( !tp && ( fromd<2*tod || dist < frompd->next_dist[eidx] ||
- ConnectsAcross( gd,topt,false,cur,eidx ) || NearlyParallel( dir,other,t ))))) {
- stem = TestStem( gd,pd,dir,frompt,is_next,true,require_existing,fstub,eidx );
- }
- if ( eidx == 0 && stem == NULL && !require_existing && cur!=NULL &&
- !other->knownlinear && !cur->knownlinear )
- stem = HalfStem( gd,pd,dir,other,t,is_next,eidx );
- if ( stem != NULL ) ret = 1;
- if ( has_existing )
- ret += HalfStemNoOpposite( gd,pd,stem,dir,is_next );
-return( ret );
-}
-
-static void AssignLinePointsToStems( struct glyphdata *gd ) {
- struct pointdata *pd;
- struct stemdata *stem;
- struct linedata *line;
- struct stem_chunk *chunk;
- int i, j, stem_hv, line_hv, needs_hv=false;
-
- for ( i=0; i<gd->stemcnt; ++i ) if ( !gd->stems[i].toobig ) {
- stem = &gd->stems[i];
- stem_hv = IsUnitHV( &stem->unit,true );
- needs_hv = ( stem_hv || ( stem->chunk_cnt == 1 &&
- stem->chunks[0].stub && IsUnitHV( &stem->unit,false )));
-
- if ( stem->leftline != NULL ) {
- line = stem->leftline;
- line_hv = ( needs_hv && LineFitsHV( line ));
-
- if ( needs_hv && !line_hv )
- stem->leftline = NULL;
- else {
- for ( j=0; j<line->pcnt; j++ ) {
- pd = line->points[j];
- if ( pd->prevline == line && OnStem( stem,&pd->base,true ) &&
- IsStemAssignedToPoint( pd,stem,false ) == -1) {
- chunk = AddToStem( gd,stem,pd,NULL,false,false,false );
- chunk->lpotential = true;
- } if ( pd->nextline == line && OnStem( stem,&pd->base,true ) &&
- IsStemAssignedToPoint( pd,stem,true ) == -1 ) {
- chunk = AddToStem( gd,stem,pd,NULL,true,false,false );
- chunk->lpotential = true;
- }
- }
- }
- }
- if ( stem->rightline != NULL ) {
- line = stem->rightline;
- line_hv = ( needs_hv && LineFitsHV( line ));
-
- if ( needs_hv && !line_hv )
- stem->rightline = NULL;
- else {
- for ( j=0; j<line->pcnt; j++ ) {
- pd = line->points[j];
- if ( pd->prevline == line && OnStem( stem,&pd->base,false ) &&
- IsStemAssignedToPoint( pd,stem,false ) == -1 ) {
- chunk = AddToStem( gd,stem,NULL,pd,false,false,false );
- chunk->rpotential = true;
- } if ( pd->nextline == line && OnStem( stem,&pd->base,false ) &&
- IsStemAssignedToPoint( pd,stem,true ) == -1 ) {
- chunk = AddToStem( gd,stem,NULL,pd,false,true,false );
- chunk->rpotential = true;
- }
- }
- }
- }
- }
-}
-
-static struct stemdata *DiagonalCornerStem( struct glyphdata *gd,
- struct pointdata *pd,int require_existing ) {
- Spline *other = pd->bothedge;
- struct pointdata *pfrom = NULL, *pto = NULL, *pd2 = NULL;
- double width, length;
- struct stemdata *stem;
-
- pfrom = &gd->points[other->from->ptindex];
- pto = &gd->points[other->to->ptindex];
- if ( pd->symetrical_h && pto->symetrical_h && pd->both_e_t>.9 )
- pd2 = pto;
- else if ( pd->symetrical_h && pfrom->symetrical_h && pd->both_e_t<.1 )
- pd2 = pfrom;
- else if ( pd->symetrical_v && pto->symetrical_v && pd->both_e_t>.9 )
- pd2 = pto;
- else if ( pd->symetrical_v && pfrom->symetrical_v && pd->both_e_t<.1 )
- pd2 = pfrom;
- else if ( pd->symetrical_h && other->islinear && other->splines[1].c==0 ) {
- pd2 = pfrom;
- } else if ( pd->symetrical_v && other->islinear && other->splines[0].c==0 ) {
- pd2 = pfrom;
- } else
-return( NULL );
-
- if ( pd->symetrical_v )
- width = (pd->sp->me.x-pd2->sp->me.x);
- else
- width = (pd->sp->me.y-pd2->sp->me.y);
- length = (pd->sp->next->to->me.x-pd->sp->me.x)*(pd->sp->next->to->me.x-pd->sp->me.x) +
- (pd->sp->next->to->me.y-pd->sp->me.y)*(pd->sp->next->to->me.y-pd->sp->me.y);
- if ( width*width>length )
-return( NULL );
-
- stem = FindOrMakeHVStem(gd,pd,pd2,pd->symetrical_h,require_existing);
-return( stem );
-}
-
-static int chunk_cmp( const void *_p1, const void *_p2 ) {
- const struct stem_chunk *ch1 = _p1, *ch2 = _p2;
-
- struct stemdata *stem;
- double loff1=0,roff1=0,loff2=0,roff2=0;
-
- stem = ch1->parent;
- if ( stem==NULL )
-return( 0 );
-
- if ( ch1->l != NULL )
- loff1 = ( ch1->l->sp->me.x - stem->left.x ) * stem->unit.x +
- ( ch1->l->sp->me.y - stem->left.y ) * stem->unit.y;
- if ( ch1->r != NULL )
- roff1 = ( ch1->r->sp->me.x - stem->right.x ) * stem->unit.x +
- ( ch1->r->sp->me.y - stem->right.y ) * stem->unit.y;
- if ( ch2->l != NULL )
- loff2 = ( ch2->l->sp->me.x - stem->left.x ) * stem->unit.x +
- ( ch2->l->sp->me.y - stem->left.y ) * stem->unit.y;
- if ( ch2->r != NULL )
- roff2 = ( ch2->r->sp->me.x - stem->right.x ) * stem->unit.x +
- ( ch2->r->sp->me.y - stem->right.y ) * stem->unit.y;
-
- if ( loff1>loff2 )
-return( 1 );
- else if ( loff1<loff2 )
-return( -1 );
- else {
- if ( roff1>roff2 )
-return( 1 );
- else if ( roff1<roff2 )
-return( -1 );
- else
-return( 0 );
- }
-}
-
-static int stem_cmp( const void *_p1, const void *_p2 ) {
- struct stemdata * const *st1 = _p1, * const *st2 = _p2;
- double start1, end1, start2, end2;
-
- if ( fabs( (*st1)->unit.x ) > fabs( (*st1)->unit.y )) {
- start1 = (*st1)->right.y; end1 = (*st1)->left.y;
- start2 = (*st2)->right.y; end2 = (*st2)->left.y;
- } else {
- start1 = (*st1)->left.x; end1 = (*st1)->right.x;
- start2 = (*st2)->left.x; end2 = (*st2)->right.x;
- }
-
- if ( start1 > start2 )
-return( 1 );
- else if ( start1 < start2 )
-return( -1 );
- else {
- if ( end1 > end2 )
-return( 1 );
- else if ( end1 < end2 )
-return( -1 );
- else
-return( 0 );
- }
-}
-
-static void FixupT( struct pointdata *pd,int stemidx,int isnext, int eidx ) {
- /* When we calculated "next/prev_e_t" we deliberately did not use pd1->me */
- /* (because things get hard at intersections) so our t is only an approx-*/
- /* imation. We can do a lot better now */
- Spline *s;
- Spline myline;
- SplinePoint end1, end2;
- double width,t,sign, len, dot;
- BasePoint pts[9];
- extended lts[10], sts[10];
- BasePoint diff;
- struct stemdata *stem ;
-
- if ( pd == NULL || stemidx == -1 )
-return;
- stem = ( isnext ) ? pd->nextstems[stemidx] : pd->prevstems[stemidx];
- width = ( stem->right.x - stem->left.x )*stem->unit.y -
- ( stem->right.y-stem->left.y )*stem->unit.x;
- s = ( isnext ) ? pd->nextedges[eidx] : pd->prevedges[eidx];
- if ( s==NULL )
-return;
- diff.x = s->to->me.x-s->from->me.x;
- diff.y = s->to->me.y-s->from->me.y;
- if ( diff.x<.001 && diff.x>-.001 && diff.y<.001 && diff.y>-.001 )
-return; /* Zero length splines give us NaNs */
- len = sqrt( pow( diff.x,2 ) + pow( diff.y,2 ));
- dot = ( diff.x*stem->unit.x + diff.y*stem->unit.y )/len;
- if ( dot < .0004 && dot > -.0004 )
-return; /* It's orthogonal to our stem */
-
- if (( stem->unit.x==1 || stem->unit.x==-1 ) && s->knownlinear )
- t = (pd->sp->me.x-s->from->me.x)/(s->to->me.x-s->from->me.x);
- else if (( stem->unit.y==1 || stem->unit.y==-1 ) && s->knownlinear )
- t = (pd->sp->me.y-s->from->me.y)/(s->to->me.y-s->from->me.y);
- else {
- memset(&myline,0,sizeof(myline));
- memset(&end1,0,sizeof(end1));
- memset(&end2,0,sizeof(end2));
- sign = (( isnext && pd->next_is_l[stemidx] ) || ( !isnext && pd->prev_is_l[stemidx] )) ? 1 : -1;
- myline.knownlinear = myline.islinear = true;
- end1.me = pd->sp->me;
- end2.me.x = pd->sp->me.x+1.1*sign*width*stem->l_to_r.x;
- end2.me.y = pd->sp->me.y+1.1*sign*width*stem->l_to_r.y;
- end1.nextcp = end1.prevcp = end1.me;
- end2.nextcp = end2.prevcp = end2.me;
- end1.nonextcp = end1.noprevcp = end2.nonextcp = end2.noprevcp = true;
- end1.next = &myline; end2.prev = &myline;
- myline.from = &end1; myline.to = &end2;
- myline.splines[0].d = end1.me.x;
- myline.splines[0].c = end2.me.x-end1.me.x;
- myline.splines[1].d = end1.me.y;
- myline.splines[1].c = end2.me.y-end1.me.y;
- if ( SplinesIntersect(&myline,s,pts,lts,sts)<=0 )
-return;
- t = sts[0];
- }
- if ( isnan(t))
- IError( "NaN value in FixupT" );
- if ( isnext )
- pd->next_e_t[eidx] = t;
- else
- pd->prev_e_t[eidx] = t;
-}
-
-/* flags: 1 -- accept curved extrema, 2 -- accept angles, */
-/* 4 -- analyze segments (not just single points) */
-static int IsSplinePeak( struct glyphdata *gd,struct pointdata *pd,
- int outer,int is_x,int flags ) {
-
- double base, next, prev, nextctl, prevctl, unit_p, unit_n;
- Spline *s, *snext, *sprev;
- struct monotonic **space, *m;
- int wprev, wnext, i, desired;
- SplinePoint *sp = pd->sp;
-
- base = ((real *) &sp->me.x)[!is_x];
- nextctl = sp->nonextcp ? base : ((real *) &sp->nextcp.x)[!is_x];
- prevctl = sp->noprevcp ? base : ((real *) &sp->prevcp.x)[!is_x];
- next = prev = base;
- snext = sp->next; sprev = sp->prev;
-
- if ( snext->to == NULL || sprev->from == NULL )
-return( false );
- if (!( flags & 2) && ( sp->nonextcp || sp->noprevcp ))
-return( false );
- else if (!( flags & 1 ) && ( pd->colinear ))
-return( false );
-
- if ( flags & 4 ) {
- while ( snext->to->next != NULL && snext->to != sp && next == base ) {
- next = ((real *) &snext->to->me.x)[!is_x];
- snext = snext->to->next;
- }
-
- while ( sprev->from->prev != NULL && sprev->from != sp && prev == base ) {
- prev = ((real *) &sprev->from->me.x)[!is_x];
- sprev = sprev->from->prev;
- }
- } else {
- next = ((real *) &snext->to->me.x)[!is_x];
- prev = ((real *) &sprev->from->me.x)[!is_x];
- }
-
- if ( prev<base && next<base && nextctl<=base && prevctl<=base )
- desired = ( outer ) ? -1 : 1;
- else if ( prev>base && next>base && prevctl>=base && nextctl>=base )
- desired = ( outer ) ? 1 : -1;
- else
-return( false );
-
- MonotonicFindAt( gd->ms,is_x,((real *) &sp->me.x)[is_x],space = gd->space );
- wprev = wnext = 0;
- for ( i=0; space[i]!=NULL; ++i ) {
- m = space[i];
- s = m->s;
-
- if ( s->from == sp )
- wnext = ((&m->xup)[is_x] ? 1 : -1 );
- else if ( s->to == sp )
- wprev = ((&m->xup)[is_x] ? 1 : -1 );
- }
-
- if ( wnext != 0 && wprev != 0 && wnext != wprev ) {
- unit_p = (&pd->prevunit.x)[!is_x];
- unit_n = (&pd->nextunit.x)[!is_x];
- if ( unit_p < unit_n && (
- ( outer && wprev == 1 ) || ( !outer && wprev == -1 )))
-return( desired );
- else if ( unit_p > unit_n && (
- ( outer && wnext == 1 ) || ( !outer && wnext == -1 )))
-return( desired );
- } else {
- if ( wnext == desired || wprev == desired )
-return( desired );
- }
-
-return( false );
-}
-
-static struct pointdata *FindClosestOpposite(
- struct stemdata *stem,struct stem_chunk **chunk,SplinePoint *sp,int *next ) {
-
- struct pointdata *pd, *ret=NULL;
- struct stem_chunk *testchunk;
- double test, proj=1e4;
- int i, is_l;
-
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- testchunk = &stem->chunks[i];
- pd = NULL;
- if ( testchunk->l != NULL && testchunk->l->sp==sp ) {
- pd = testchunk->r;
- is_l = false;
- } else if ( testchunk->r != NULL && testchunk->r->sp==sp ) {
- pd = testchunk->l;
- is_l = true;
- }
-
- if ( pd != NULL ) {
- test = ( pd->sp->me.x-sp->me.x ) * stem->unit.x +
- ( pd->sp->me.y-sp->me.y ) * stem->unit.y;
- if ( test < 0 ) test = -test;
- if ( test < proj ) {
- ret = pd;
- proj = test;
- *chunk = testchunk;
- }
- }
- }
- if ( ret != NULL )
- *next = ( is_l ) ? (*chunk)->lnext : (*chunk)->rnext;
-return( ret );
-}
-
-static int ValueChunk( struct glyphdata *gd,struct vchunk *vchunks,
- int chcnt,int idx,int l_base ) {
-
- int peak1=0, peak2=0, val=0;
- int i, is_x, base_next, opp_next;
- struct pointdata *base, *opp, *frompd, *topd;
- struct stem_chunk *chunk = vchunks[idx].chunk, *tchunk;
- struct stemdata *stem = chunk->parent;
- double norm, dist;
- Spline *sbase, *sopp, *other;
-
- /* If a stem was already present before generating glyph data, */
- /* then it should always be preferred in case of a conflict */
- if ( stem->positioned || chunk->stemcheat ) val++;
-
- if ( l_base ) {
- base = chunk->l; opp = chunk->r;
- base_next = chunk->lnext; opp_next = chunk->rnext;
- } else {
- base = chunk->r; opp = chunk->l;
- base_next = chunk->rnext; opp_next = chunk->lnext;
- }
- sbase = ( base_next ) ? base->sp->next : base->sp->prev;
- sopp = ( opp_next ) ? opp->sp->next : opp->sp->prev;
- other = ( opp_next ) ? opp->nextedges[0] : opp->prevedges[0];
-
- /* If there are 2 conflicting chunks belonging to different stems but */
- /* based on the same point, then we have to decide which stem is "better" */
- /* for that point. We compare stems (or rather chunks) by assigning a */
- /* value to each of them and then prefer the stem whose value is positive. */
- /* A chunk gets a +1 value bonus in the following cases: */
- /* - The stem is vertical/horizontal and splines are curved in the same */
- /* direction at both sides of the chunk; */
- /* - A stem has both its width and the distance between the opposite points */
- /* smaller than another stem; */
- /* - The common side of two stems is a straight line formed by two points */
- /* and the opposite point can be projected to line segment between those */
- /* two points. */
- if ( IsUnitHV( &stem->unit,true ) && !sbase->knownlinear ) {
- is_x = (int) rint( stem->unit.y );
- peak1 = ( is_x ) ? base->x_extr : base->y_extr;
- peak2 = ( is_x ) ? opp->x_extr : opp->y_extr;
-
- dist = ( base->base.x - opp->base.x )*stem->unit.x +
- ( base->base.y - opp->base.y )*stem->unit.y;
-
- /* Are there any stems attached to the same base point which */
- /* are narrower than the distance between two points forming the */
- /* given chunk? */
- for ( i=0; i<chcnt; i++ ) {
- tchunk = vchunks[i].chunk;
- if ( tchunk == NULL || tchunk == chunk || chunk->l == NULL || chunk->r == NULL )
- continue;
- norm = tchunk->parent->width;
- if ( norm < fabs( dist ))
- break;
- }
-
- /* If both points are curved in the same direction, then check also */
- /* the "line of sight" between those points (if there are interventing */
- /* splines, then it is not a real feature bend)*/
- if ( i == chcnt && peak1 + peak2 == 3 && ConnectsAcross( gd,base->sp,opp_next,sopp,0 ))
- val++;
- }
-
- frompd = &gd->points[sbase->from->ptindex];
- topd = &gd->points[sbase->to->ptindex];
-
- if (IsStemAssignedToPoint( frompd,stem,true ) != -1 &&
- IsStemAssignedToPoint( topd,stem,false ) != -1 )
- if ( other == sbase ) val++;
-
- dist = vchunks[idx].dist;
- for ( i=0; i<chcnt; i++ ) {
- tchunk = vchunks[i].chunk;
- if ( tchunk == NULL || tchunk == chunk ||
- ( vchunks[idx].parallel && !vchunks[i].parallel ))
- continue;
- if ( vchunks[i].dist <= dist || tchunk->parent->width <= stem->width )
- break;
- }
- if ( i==chcnt ) val++;
-
- /* If just one of the checked chunks has both its sides parallel */
- /* to the stem direction, then we consider it is always worth to be output. */
- /* This check was introduced to avoid situations where a stem marking */
- /* a feature termination can be preferred to another stem which controls */
- /* the main part of the same feature */
- if ( vchunks[idx].parallel ) {
- for ( i=0; i<chcnt; i++ ) {
- if ( vchunks[i].chunk == NULL || vchunks[i].chunk == chunk )
- continue;
- if ( vchunks[i].parallel )
- break;
- }
- if ( i == chcnt ) val++;
- }
-
-return( val );
-}
-
-static void CheckPotential( struct glyphdata *gd,struct pointdata *pd,int is_next ) {
- int i, j, is_l, next1, stemcnt, val;
- int val_cnt=0;
- BasePoint *lunit, *runit;
- struct stemdata **stems;
- struct vchunk *vchunks;
- struct stem_chunk *cur;
-
- stemcnt = ( is_next ) ? pd->nextcnt : pd->prevcnt;
- stems = ( is_next ) ? pd->nextstems : pd->prevstems;
- vchunks = calloc( stemcnt,sizeof( VChunk ));
-
- for ( i=0; i<stemcnt; i++ ) {
- is_l = ( is_next ) ? pd->next_is_l[i] : pd->prev_is_l[i];
- FindClosestOpposite( stems[i],&vchunks[i].chunk,pd->sp,&next1 );
- if ( vchunks[i].chunk == NULL )
- continue;
- cur = vchunks[i].chunk;
- if ( vchunks[i].value > 0 ) val_cnt++;
- vchunks[i].dist = pow( cur->l->base.x - cur->r->base.x,2 ) +
- pow( cur->l->base.y - cur->r->base.y,2 );
- lunit = ( cur->lnext ) ? &cur->l->nextunit : &cur->l->prevunit;
- runit = ( cur->rnext ) ? &cur->r->nextunit : &cur->r->prevunit;
- vchunks[i].parallel = UnitsParallel( lunit,&stems[i]->unit,2 ) &&
- UnitsParallel( runit,&stems[i]->unit,2 );
- }
-
- for ( i=0; i<stemcnt; i++ ) if ( vchunks[i].chunk != NULL ) {
- vchunks[i].value = ValueChunk( gd,vchunks,stemcnt,i,is_l );
- if ( vchunks[i].value ) val_cnt++;
- }
-
- /* If we was unable to figure out any reasons for which at least */
- /* one of the checked chunks should really be output, then keep */
- /* all the 'potential' flags as they are and do nothing */
- if ( val_cnt > 0 ) {
- for ( i=0; i<stemcnt; i++ ) if ( vchunks[i].chunk != NULL ) {
- is_l = ( is_next ) ? pd->next_is_l[i] : pd->prev_is_l[i];
- val = vchunks[i].value;
- for ( j=0; j<stems[i]->chunk_cnt; j++ ) {
- cur = &stems[i]->chunks[j];
- if ( is_l && cur->l == pd ) {
- if ( val > 0 ) cur->lpotential = false;
- else cur->lpotential = true;
- } else if ( !is_l && cur->r == pd ) {
- if ( val > 0 ) cur->rpotential = false;
- else cur->rpotential = true;
- }
- }
- }
- }
- free( vchunks );
-}
-
-static int StemIsActiveAt( struct glyphdata *gd,struct stemdata *stem,double stempos ) {
- BasePoint pos,cpos,mpos;
- int which;
- double test;
- double lmin, lmax, rmin, rmax, loff, roff, minoff, maxoff;
- struct monotonic **space, *m;
- int winding, nw, closest, i, j;
-
- pos.x = stem->left.x + stempos*stem->unit.x;
- pos.y = stem->left.y + stempos*stem->unit.y;
-
- if ( IsUnitHV( &stem->unit,true )) {
- which = stem->unit.x==0;
- MonotonicFindAt(gd->ms,which,((real *) &pos.x)[which],space = gd->space);
- test = ((real *) &pos.x)[!which];
-
- lmin = ( stem->lmax - 2*dist_error_hv < -dist_error_hv ) ?
- stem->lmax - 2*dist_error_hv : -dist_error_hv;
- lmax = ( stem->lmin + 2*dist_error_hv > dist_error_hv ) ?
- stem->lmin + 2*dist_error_hv : dist_error_hv;
- rmin = ( stem->rmax - 2*dist_error_hv < -dist_error_hv ) ?
- stem->rmax - 2*dist_error_hv : -dist_error_hv;
- rmax = ( stem->rmin + 2*dist_error_hv > dist_error_hv ) ?
- stem->rmin + 2*dist_error_hv : dist_error_hv;
- minoff = test + ( lmin * stem->unit.y - lmax * stem->unit.x );
- maxoff = test + ( lmax * stem->unit.y - lmin * stem->unit.x );
-
- winding = 0; closest = -1;
- for ( i=0; space[i]!=NULL; ++i ) {
- m = space[i];
- nw = ((&m->xup)[which] ? 1 : -1 );
- if ( m->other >= minoff && m->other <= maxoff && nw == 1 ) {
- closest = i;
- break;
- } else if ( m->other > maxoff )
- break;
- winding += nw;
- }
- if ( closest < 0 )
-return( false );
-
- cpos.x = ( which ) ? m->other : pos.x ;
- cpos.y = ( which ) ? pos.y : m->other ;
- loff = ( cpos.x - stem->left.x ) * stem->unit.y -
- ( cpos.y - stem->left.y ) * stem->unit.x;
- if ( loff > lmax || loff < lmin )
-return( false );
-
- j = MatchWinding(space,i,nw,winding,which,0);
- if ( j==-1 )
-return( false );
- m = space[j];
-
- mpos.x = ( which ) ? m->other : pos.x ;
- mpos.y = ( which ) ? pos.y : m->other ;
- roff = ( mpos.x - stem->right.x ) * stem->unit.y -
- ( mpos.y - stem->right.y ) * stem->unit.x;
- if ( roff >= rmin && roff <= rmax )
-return( true );
-return( false );
- } else {
-return( StillStem( gd,dist_error_diag,&pos,stem ));
- }
-}
-
-/* This function is used to check the distance between a hint's edge */
-/* and a spline and determine the extet where this hint can be */
-/* considered "active". */
-static int WalkSpline( struct glyphdata *gd, struct pointdata *pd,int gonext,
- struct stemdata *stem,int is_l,int force_ac,BasePoint *res ) {
-
- int i, curved;
- double off, dist, min, max;
- double incr, err;
- double t, ratio, width;
- Spline *s;
- BasePoint *base, *nunit, pos, good;
- SplinePoint *sp, *nsp;
- struct pointdata *npd;
-
- err = ( IsUnitHV( &stem->unit,true )) ? dist_error_hv : dist_error_diag;
- width = stem->width;
- ratio = gd->emsize/( 6 * width );
- if ( err > width/2) err = width/2;
-
- sp = pd->sp;
- base = ( is_l ) ? &stem->left : &stem->right;
- min = ( is_l ) ? stem->lmax - 2*err : stem->rmax - 2*err;
- max = ( is_l ) ? stem->lmin + 2*err : stem->rmin + 2*err;
-
- s = ( gonext ) ? sp->next : sp->prev;
- nsp = ( gonext ) ? s->to : s->from;
- npd = &gd->points[nsp->ptindex];
- nunit = ( gonext ) ? &npd->prevunit : &npd->nextunit;
- good = sp->me;
-
- off = ( nsp->me.x - base->x )*stem->l_to_r.x +
- ( nsp->me.y - base->y )*stem->l_to_r.y;
- /* Some splines have tiny control points and are almost flat */
- /* think of them as lines then rather than treating them as curves */
- /* figure out how long they remain within a few orthoganal units of */
- /* the point */
- /* We used to check the distance between a control point and a spline */
- /* and consider the segment "flat" if this distance is smaller than */
- /* the normal allowed "error" value. However this method doesn't produce */
- /* consistent results if the spline is not long enough (as usual for */
- /* fonts with quadratic splines). So now we consider a spline "flat" */
- /* only if it never deviates too far from the hint's edge and both */
- /* its terminal points are snappable to the same hint */
- curved = ( IsStemAssignedToPoint( npd,stem,gonext ) == -1 &&
- ( off < min || off > max || !UnitsParallel( &stem->unit,nunit,true )));
-
- /* If a spline does deviate from the edge too far to consider it flat, */
- /* then we calculate the extent where the spline and the edge are still */
- /* close enough to consider the hint active at this zone. If the hint is */
- /* still active at the end of the spline, we can check some subsequent splines */
- /* too. This method produces better effect than any "magic" manipulations */
- /* with control point coordinates, because it takes into account just the */
- /* spline configuration rather than point positions */
- if ( curved ) {
- max = err = dist_error_curve;
- min = -dist_error_curve;
- /* The following statement forces our code to detect an active zone */
- /* even if all checks actually fail. This makes sense for stems */
- /* marking arks and bends */
- if ( force_ac )
- good = ( gonext ) ? sp->nextcp : sp->prevcp;
- /* If a spline is closer to the opposite stem edge than to the current edge, then we */
- /* can no longer consider the stem active at this point */
- if ( err > width/2 ) err = width/2;
-
- t = ( gonext ) ? 0.9999 : 0.0001;
- for ( ; ; s = ( gonext ) ? s->to->next : s->from->prev ) {
- pos.x = ((s->splines[0].a*t+s->splines[0].b)*t+s->splines[0].c)*t+s->splines[0].d;
- pos.y = ((s->splines[1].a*t+s->splines[1].b)*t+s->splines[1].c)*t+s->splines[1].d;
- off = ( pos.x - base->x )*stem->l_to_r.x +
- ( pos.y - base->y )*stem->l_to_r.y;
- dist = ( pos.x - sp->me.x )*stem->unit.x +
- ( pos.y - sp->me.y )*stem->unit.y;
- nsp = ( gonext ) ? s->to : s->from;
- npd = &gd->points[nsp->ptindex];
- if (fabs( off ) < max && fabs( dist ) <= ( width + width * ratio ) &&
- nsp != sp && npd->colinear && !npd->x_extr && !npd->y_extr &&
- StillStem( gd,err,&pos,stem ))
- good = pos;
- else
- break;
- }
- }
- t = .5;
- incr = ( gonext ) ? .25 : -.25;
- for ( i=0; i<6; ++i ) {
- pos.x = ((s->splines[0].a*t+s->splines[0].b)*t+s->splines[0].c)*t+s->splines[0].d;
- pos.y = ((s->splines[1].a*t+s->splines[1].b)*t+s->splines[1].c)*t+s->splines[1].d;
- off = ( pos.x - base->x )*stem->l_to_r.x +
- ( pos.y - base->y )*stem->l_to_r.y;
- dist = ( pos.x - sp->me.x )*stem->unit.x +
- ( pos.y - sp->me.y )*stem->unit.y;
- /* Don't check StillStem for non-curved segments, as they are subject */
- /* to further projection-related tests anyway */
- if ( off > min && off < max && ( !curved ||
- ( fabs( dist ) < ( width + width * ratio ) &&
- StillStem( gd,err,&pos,stem )))) {
-
- good = pos;
- t += incr;
- } else
- t -= incr;
- incr/=2;
- }
- *res = good;
-return( curved );
-}
-
-static int AdjustForImperfectSlopeMatch( SplinePoint *sp,BasePoint *pos,
- BasePoint *newpos,struct stemdata *stem,int is_l ) {
-
- double poff, err, min, max;
- BasePoint *base;
-
- base = ( is_l ) ? &stem->left : &stem->right;
- err = ( IsUnitHV( &stem->unit,true )) ? dist_error_hv : dist_error_diag;
- min = ( is_l ) ? stem->lmax - 2*err : stem->rmax - 2*err;
- max = ( is_l ) ? stem->lmin + 2*err : stem->rmin + 2*err;
-
- /* Possible if the stem unit has been attached to a line. It is */
- /* hard to prevent this */
- if ( min > max ) {
- min = stem->lmin; max = stem->lmax;
- }
-
- poff = ( pos->x - base->x )*stem->l_to_r.x +
- ( pos->y - base->y )*stem->l_to_r.y;
- if ( poff > min && poff < max ) {
- *newpos = *pos;
-return( false );
- } else if ( poff <= min )
- err = fabs( min );
- else if ( poff >= max )
- err = fabs( max );
-
- newpos->x = sp->me.x + err*( pos->x - sp->me.x )/fabs( poff );
- newpos->y = sp->me.y + err*( pos->y - sp->me.y )/fabs( poff );
-return( true );
-}
-
-static int AddLineSegment( struct stemdata *stem,struct segment *space,int cnt,
- int is_l,struct pointdata *pd,int base_next,struct glyphdata *gd ) {
-
- double s, e, t, dot;
- BasePoint stemp, etemp;
- BasePoint *start, *end, *par_unit;
- int same_dir, corner = 0, par;
- int scurved = false, ecurved = false, c, hv;
- SplinePoint *sp, *psp, *nsp;
- double b;
- uint8 extr;
-
- if ( pd==NULL || (sp = pd->sp)==NULL || sp->ticked ||
- sp->next==NULL || sp->prev==NULL )
-return( cnt );
- end = &sp->me;
- start = &sp->me;
- par_unit = ( base_next ) ? &pd->nextunit : &pd->prevunit;
- /* Do the spline and the stem unit point in the same direction ? */
- dot = ( stem->unit.x * par_unit->x ) +
- ( stem->unit.y * par_unit->y );
- same_dir = (( dot > 0 && base_next ) || ( dot < 0 && !base_next ));
- if ( stem->unit.x == 1 ) corner = pd->y_corner;
- else if ( stem->unit.y == 1 ) corner = pd->x_corner;
-
- dot = ( stem->unit.x * pd->nextunit.x ) +
- ( stem->unit.y * pd->nextunit.y );
- /* We used to apply normal checks only if the point's unit vector pointing */
- /* in the direction we are going to check is nearly parallel to the stem unit. */
- /* But this is not the best method, because a spline, "parallel" to our */
- /* stem, may actually have filled space at a wrong side. On the other hand, */
- /* sometimes it makes sense to calculate active space even for splines */
- /* connected to our base point under an angle which is too large to consider */
- /* the direction "parallel". So now we check the units' direction first */
- /* and then (just for straight splines) also their parallelity. */
- if (( dot > 0 && same_dir ) || ( dot < 0 && !same_dir )) {
- /* If the segment sp-start doesn't have exactly the right slope, then */
- /* we can only use that bit of it which is less than a standard error */
- par = UnitsParallel( &stem->unit,&pd->nextunit,0 );
- if ( !sp->next->knownlinear ) {
- ecurved = WalkSpline( gd,pd,true,stem,is_l,par,&etemp );
- /* Can merge, but treat as curved relatively to projections */
- if ( !ecurved ) ecurved = 2;
- end = &etemp;
- } else if ( par || corner ) {
- nsp = sp->next->to;
- ecurved = AdjustForImperfectSlopeMatch( sp,&nsp->me,&etemp,stem,is_l );
- end = &etemp;
- }
- }
- dot = ( stem->unit.x * pd->prevunit.x ) +
- ( stem->unit.y * pd->prevunit.y );
- if (( dot < 0 && same_dir ) || ( dot > 0 && !same_dir )) {
- par = UnitsParallel( &stem->unit,&pd->prevunit,0 );
- if ( !sp->prev->knownlinear ) {
- scurved = WalkSpline( gd,pd,false,stem,is_l,par,&stemp );
- if ( !scurved ) scurved = 2;
- start = &stemp;
- } else if ( par || corner ) {
- psp = sp->prev->from;
- scurved = AdjustForImperfectSlopeMatch( sp,&psp->me,&stemp,stem,is_l );
- start = &stemp;
- }
- }
- sp->ticked = true;
-
- s = (start->x-stem->left.x)*stem->unit.x +
- (start->y-stem->left.y)*stem->unit.y;
- e = ( end->x-stem->left.x)*stem->unit.x +
- ( end->y-stem->left.y)*stem->unit.y;
- b = (sp->me.x-stem->left.x)*stem->unit.x +
- (sp->me.y-stem->left.y)*stem->unit.y;
-
- if ( s == e )
-return( cnt );
- if ( s > e ) {
- t = s; c = scurved;
- s = e; e = t;
- scurved = ecurved; ecurved = c;
- }
- space[cnt].start = s;
- space[cnt].end = e;
- space[cnt].sbase = space[cnt].ebase = b;
- space[cnt].scurved = scurved;
- space[cnt].ecurved = ecurved;
-
- hv = IsUnitHV( &stem->unit,true );
- if ( hv ) {
- /* For vertical/horizontal stems we assign a special meaning to */
- /* the 'curved' field. It will be non-zero if the key point of */
- /* this segment is positioned on a prominent curve: */
- /* 1 if the inner side of that curve is inside of the contour */
- /* and 2 otherwise. */
- /* Later, if we get a pair of "inner" and "outer" curves, then */
- /* we are probably dealing with a feature's bend which should be */
- /* necessarily marked with a hint. Checks we apply for this type */
- /* of curved segments should be less strict than in other cases. */
- extr = ( hv == 1 ) ? pd->y_extr : pd->x_extr;
- space[cnt].curved = extr;
- } else {
- /* For diagonal stems we consider a segment "curved" if both its */
- /* start and end are curved. Curved segments usually cannot be */
- /* merged (unless scurved or ecurved is equal to 2) and are not */
- /* checked for "projections". */
- space[cnt].curved = scurved && ecurved;
- }
-return( cnt+1 );
-}
-
-static int InActive(double projection,struct segment *segments, int cnt) {
- int i;
-
- for ( i=0; i<cnt; ++i ) {
- if ( projection>=segments[i].start && projection<=segments[i].end )
-return( true );
- }
-return( false );
-}
-
-static int MergeSegments(struct segment *space, int cnt) {
- int i,j;
- double middle;
-
- for ( i=j=0; i<cnt; ++i, ++j ) {
- if ( i!=j )
- space[j] = space[i];
- while ( i+1<cnt && space[i+1].start<space[j].end ) {
- if ( space[i+1].end >= space[j].end ) {
-
- /* If there are 2 overlapping segments and neither the */
- /* end of the first segment nor the start of the second */
- /* one are curved we can merge them. Otherwise we have */
- /* to preserve them both, but modify their start/end properties */
- /* so that the overlap is removed */
- if ( space[j].ecurved != 1 && space[i+1].scurved != 1 ) {
- space[j].end = space[i+1].end;
- space[j].ebase = space[i+1].ebase;
- space[j].ecurved = space[i+1].ecurved;
- space[j].curved = false;
- } else if ( space[j].ecurved != 1 && space[i+1].scurved == 1 ) {
- space[i+1].start = space[j].end;
- --i;
- } else if ( space[j].ecurved == 1 && space[i+1].scurved != 1 ) {
- space[j].end = space[i+1].start;
- --i;
- } else {
- middle = (space[j].end + space[i+1].start)/2;
- space[j].end = space[i+1].start = middle;
- --i;
- }
- }
- ++i;
- }
- }
-return( j );
-}
-
-static int MergeSegmentsFinal( struct segment *space, int cnt ) {
- int i,j;
-
- for ( i=j=0; i<cnt; ++i, ++j ) {
- if ( i!=j )
- space[j] = space[i];
- while ( i+1<cnt && space[i+1].start<=space[j].end ) {
- if ( space[i+1].end>space[j].end ) {
- space[j].end = space[i+1].end;
- space[j].ebase = space[i+1].ebase;
- space[j].ecurved = space[i+1].ecurved;
- space[j].curved = false;
- }
- ++i;
- }
- }
-return( j );
-}
-
-static void FigureStemActive( struct glyphdata *gd, struct stemdata *stem ) {
- int i, j, pcnt=0;
- struct pointdata *pd, **pspace = gd->pspace;
- struct stem_chunk *chunk;
- struct segment *lspace = gd->lspace, *rspace = gd->rspace;
- struct segment *bothspace = gd->bothspace, *activespace = gd->activespace;
- int lcnt, rcnt, bcnt, bpos, acnt, cove, startset, endset;
- double middle, width, len, clen, gap, lseg, rseg;
- double err, lmin, rmax, loff, roff, last, s, e, sbase, ebase;
- double proj, proj2, proj3, orig_proj, ptemp;
-
- width = stem->width;
-
- for ( i=0; i<gd->pcnt; ++i ) if ( gd->points[i].sp!=NULL )
- gd->points[i].sp->ticked = false;
-
- lcnt = rcnt = 0;
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
- if ( chunk->stemcheat )
- continue;
- lcnt = AddLineSegment( stem,lspace,lcnt,true ,chunk->l,chunk->lnext,gd );
- rcnt = AddLineSegment( stem,rspace,rcnt,false,chunk->r,chunk->rnext,gd );
- }
- bcnt = 0;
- if ( lcnt!=0 && rcnt!=0 ) {
- /* For curved segments we can extend left and right active segments */
- /* a bit to ensure that they do overlap and thus can be marked with an */
- /* active zone */
- if ( rcnt == lcnt && stem->chunk_cnt == lcnt ) {
- for ( i=0; i<lcnt; i++ ) {
- /* If it's a feature bend, then our tests should be more liberal */
- cove = (( rspace[i].curved + lspace[i].curved ) == 3 );
- gap = 0;
- if ( lspace[i].start>rspace[i].end && lspace[i].scurved && rspace[i].ecurved )
- gap = lspace[i].start-rspace[i].end;
- else if ( rspace[i].start>lspace[i].end && rspace[i].scurved && lspace[i].ecurved )
- gap = rspace[i].start-lspace[i].end;
- else if ( !cove )
- continue;
-
- lseg = lspace[i].end - lspace[i].start;
- rseg = rspace[i].end - rspace[i].start;
- if (( cove && gap < (lseg > rseg ? lseg : rseg )) ||
- ( gap < ( lseg + rseg )/2 && !stem->chunks[i].stub )) {
- if ( lspace[i].ebase<rspace[i].start )
- rspace[i].start = lspace[i].ebase;
- else if ( lspace[i].sbase>rspace[i].end )
- rspace[i].end = lspace[i].sbase;
- if ( rspace[i].ebase<lspace[i].start )
- lspace[i].start = rspace[i].ebase;
- else if ( rspace[i].sbase>lspace[i].end )
- lspace[i].end = rspace[i].sbase;
- }
- }
- }
- qsort(lspace,lcnt,sizeof(struct segment),segment_cmp);
- qsort(rspace,rcnt,sizeof(struct segment),segment_cmp);
- lcnt = MergeSegments( lspace,lcnt );
- rcnt = MergeSegments( rspace,rcnt );
- for ( i=j=bcnt=0; i<lcnt && j<rcnt; ++i ) {
- while ( j<rcnt && rspace[j].end<=lspace[i].start )
- ++j;
- while ( j<rcnt && rspace[j].start<=lspace[i].end ) {
- cove = (( rspace[j].curved + lspace[i].curved ) == 3 );
-
- s = ( rspace[j].start > lspace[i].start ) ?
- rspace[j].start : lspace[i].start;
- e = ( rspace[j].end < lspace[i].end ) ?
- rspace[j].end : lspace[i].end;
- sbase = ( rspace[j].start > lspace[i].start ) ?
- lspace[i].sbase : rspace[j].sbase;
- ebase = ( rspace[j].end < lspace[i].end ) ?
- lspace[i].ebase : rspace[j].ebase;
-
- middle = ( lspace[i].start + rspace[j].start )/2;
- bothspace[bcnt].start = ( cove && middle < s ) ? middle : s;
- if ( rspace[j].start > lspace[i].start )
- bothspace[bcnt].scurved = ( rspace[j].scurved || sbase < s ) ?
- rspace[j].scurved : lspace[i].scurved;
- else
- bothspace[bcnt].scurved = ( lspace[i].scurved || sbase < s ) ?
- lspace[i].scurved : rspace[j].scurved;
-
- middle = ( lspace[i].end + rspace[j].end )/2;
- bothspace[bcnt].end = ( cove && middle > e ) ? middle : e;
- if ( rspace[j].end < lspace[i].end )
- bothspace[bcnt].ecurved = ( rspace[j].ecurved || ebase > e ) ?
- rspace[j].ecurved : lspace[i].ecurved;
- else
- bothspace[bcnt].ecurved = ( lspace[i].ecurved || ebase > e ) ?
- lspace[i].ecurved : rspace[j].ecurved;
-
- sbase = ( rspace[j].sbase > lspace[i].sbase ) ?
- rspace[j].sbase : lspace[i].sbase;
- ebase = ( rspace[j].ebase < lspace[i].ebase ) ?
- rspace[j].ebase : lspace[i].ebase;
- if ( sbase > bothspace[bcnt].end )
- sbase = ebase = bothspace[bcnt].end;
- else if ( ebase < bothspace[bcnt].start )
- sbase = ebase = bothspace[bcnt].start;
- else if ( ebase < sbase )
- ebase = sbase = ( ebase + sbase )/2;
- bothspace[bcnt].sbase = sbase;
- bothspace[bcnt].ebase = ebase;
-
- bothspace[bcnt++].curved = rspace[j].curved || lspace[i].curved;
-
- if ( rspace[j].end>lspace[i].end )
- break;
- ++j;
- }
- }
- }
-#if GLYPH_DATA_DEBUG
- fprintf( stderr, "Active zones for stem l=%.2f,%.2f r=%.2f,%.2f dir=%.2f,%.2f:\n",
- stem->left.x,stem->left.y,stem->right.x,stem->right.y,stem->unit.x,stem->unit.y );
- for ( i=0; i<lcnt; i++ ) {
- fprintf( stderr, "\tleft space curved=%d\n",lspace[i].curved );
- fprintf( stderr, "\t\tstart=%.2f,base=%.2f,curved=%d\n",
- lspace[i].start,lspace[i].sbase,lspace[i].scurved );
- fprintf( stderr, "\t\tend=%.2f,base=%.2f,curved=%d\n",
- lspace[i].end,lspace[i].ebase,lspace[i].ecurved );
- }
- for ( i=0; i<rcnt; i++ ) {
- fprintf( stderr, "\tright space curved=%d\n",rspace[i].curved );
- fprintf( stderr, "\t\tstart=%.2f,base=%.2f,curved=%d\n",
- rspace[i].start,rspace[i].sbase,rspace[i].scurved );
- fprintf( stderr, "\t\tend=%.2f,base=%.2f,curved=%d\n",
- rspace[i].end,rspace[i].ebase,rspace[i].ecurved );
- }
- for ( i=0; i<bcnt; i++ ) {
- fprintf( stderr, "\tboth space\n" );
- fprintf( stderr, "\t\tstart=%.2f,base=%.2f,curved=%d\n",
- bothspace[i].start,bothspace[i].sbase,bothspace[i].scurved );
- fprintf( stderr, "\t\tend=%.2f,base=%.2f,curved=%d\n",
- bothspace[i].end,bothspace[i].ebase,bothspace[i].ecurved );
- }
- fprintf( stderr,"\n" );
-#endif
-
- err = ( stem->unit.x == 0 || stem->unit.y == 0 ) ?
- dist_error_hv : dist_error_diag;
- lmin = ( stem->lmin < -err ) ? stem->lmin : -err;
- rmax = ( stem->rmax > err ) ? stem->rmax : err;
- acnt = 0;
- if ( bcnt!=0 ) {
- for ( i=0; i<gd->pcnt; ++i ) if ( (pd = &gd->points[i])->sp!=NULL ) {
- /* Let's say we have a stem. And then inside that stem we have */
- /* another rectangle. So our first stem isn't really a stem any */
- /* more (because we hit another edge first), yet it's still reasonable*/
- /* to align the original stem */
- /* Now suppose the rectangle is rotated a bit so we can't make */
- /* a stem from it. What do we do here? */
- loff = ( pd->sp->me.x - stem->left.x ) * stem->unit.y -
- ( pd->sp->me.y - stem->left.y ) * stem->unit.x;
- roff = ( pd->sp->me.x - stem->right.x ) * stem->unit.y -
- ( pd->sp->me.y - stem->right.y ) * stem->unit.x;
-
- if ( loff >= lmin && roff <= rmax ) {
- pd->projection = (pd->sp->me.x - stem->left.x)*stem->unit.x +
- (pd->sp->me.y - stem->left.y)*stem->unit.y;
- if ( InActive(pd->projection,bothspace,bcnt) )
- pspace[pcnt++] = pd;
- }
- }
- qsort(pspace,pcnt,sizeof(struct pointdata *),proj_cmp);
-
- bpos = i = 0;
- while ( bpos<bcnt ) {
- if ( bothspace[bpos].curved || pcnt==0 ) {
- activespace[acnt++] = bothspace[bpos++];
- } else {
- last = bothspace[bpos].start;
- startset = false; endset = false;
-
- if ( bothspace[bpos].scurved ||
- StemIsActiveAt( gd,stem,bothspace[bpos].start+0.0015 )) {
-
- activespace[acnt].scurved = bothspace[bpos].scurved;
- activespace[acnt].start = bothspace[bpos].start;
- startset = true;
- }
-
- /* If the stem is preceded by a curved segment, then skip */
- /* the first point position and start from the next one. */
- /* (Otherwise StemIsActiveAt() may consider the stem is */
- /* "inactive" at the fragment between the start of the active */
- /* space and the first point actually belonging to this stem) */
- if ( bothspace[bpos].scurved ) {
- while ( pcnt>i && pspace[i]->projection < bothspace[bpos].sbase ) i++;
-
- if ( pcnt > i && pspace[i]->projection >= bothspace[bpos].sbase ) {
- last = activespace[acnt].end = pspace[i]->projection;
- activespace[acnt].ecurved = false;
- activespace[acnt].curved = false;
- endset=true;
- }
- }
-
- while ( i<pcnt && (
- ( !bothspace[bpos].ecurved && pspace[i]->projection<bothspace[bpos].end ) ||
- ( bothspace[bpos].ecurved && pspace[i]->projection<=bothspace[bpos].ebase ))) {
- if ( last==activespace[acnt].start && pspace[i]->projection >= last ) {
-
- if ( !StemIsActiveAt( gd,stem,last+(( 1.001*pspace[i]->projection-last )/2.001 ))) {
- last = activespace[acnt].start = pspace[i]->projection;
- activespace[acnt].scurved = false;
- startset = true; endset = false;
- } else {
- last = activespace[acnt].end = pspace[i]->projection;
- activespace[acnt].ecurved = false;
- activespace[acnt].curved = false;
- endset = true;
- }
- } else if (( last==activespace[acnt].end || !startset )
- && pspace[i]->projection >= last) {
-
- if ( !StemIsActiveAt( gd,stem,last+(( 1.001*pspace[i]->projection-last )/2.001 )) ||
- !startset ) {
-
- if ( startset ) acnt++;
- last = activespace[acnt].start = pspace[i]->projection;
- activespace[acnt].scurved = false;
- startset = true; endset = false;
- } else {
- last = activespace[acnt].end = pspace[i]->projection;
- activespace[acnt].ecurved = false;
- activespace[acnt].curved = false;
- endset = true;
- }
- }
- ++i;
- }
-
- if (( bothspace[bpos].ecurved ||
- StemIsActiveAt( gd,stem,bothspace[bpos].end-0.0015 )) &&
- startset ) {
-
- activespace[acnt].end = bothspace[bpos].end;
- activespace[acnt].ecurved = bothspace[bpos].ecurved;
- activespace[acnt].curved = bothspace[bpos].curved;
- endset = true;
- }
- ++bpos;
- if ( endset ) ++acnt;
- }
- }
- }
-
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
- /* stemcheat 1 -- diagonal edge stem;
- * 2 -- diagonal corner stem with a sharp top;
- * 3 -- diagonal corner stem with a flat top;
- * 4 -- bounding box hint */
- if ( chunk->stemcheat==3 && chunk->l!=NULL && chunk->r!=NULL &&
- i+1<stem->chunk_cnt &&
- stem->chunks[i+1].stemcheat==3 &&
- ( chunk->l==stem->chunks[i+1].l ||
- chunk->r==stem->chunks[i+1].r )) {
-
- SplinePoint *sp = chunk->l==stem->chunks[i+1].l ?
- chunk->l->sp : chunk->r->sp;
- proj = (sp->me.x - stem->left.x) *stem->unit.x +
- (sp->me.y - stem->left.y) *stem->unit.y;
-
- SplinePoint *sp2 = chunk->l==stem->chunks[i+1].l ?
- chunk->r->sp : chunk->l->sp;
- SplinePoint *sp3 = chunk->l==stem->chunks[i+1].l ?
- stem->chunks[i+1].r->sp : stem->chunks[i+1].l->sp;
- proj2 = (sp2->me.x - stem->left.x) *stem->unit.x +
- (sp2->me.y - stem->left.y) *stem->unit.y;
- proj3 = (sp3->me.x - stem->left.x) *stem->unit.x +
- (sp3->me.y - stem->left.y) *stem->unit.y;
-
- if ( proj2>proj3 ) {
- ptemp = proj2; proj2 = proj3; proj3 = ptemp;
- }
-
- if ( (proj3-proj2) < width ) {
- activespace[acnt ].curved = true;
- proj2 -= width/2;
- proj3 += width/2;
- } else {
- activespace[acnt ].curved = false;
- }
-
- activespace[acnt].start = proj2;
- activespace[acnt].end = proj3;
- activespace[acnt].sbase = activespace[acnt].ebase = proj;
- acnt++;
- ++i;
- } else if ( chunk->stemcheat && chunk->l!=NULL && chunk->r!=NULL ) {
- SplinePoint *sp = chunk->l->sp;
- proj = ( sp->me.x - stem->left.x ) * stem->unit.x +
- ( sp->me.y - stem->left.y ) * stem->unit.y;
- orig_proj = proj;
- SplinePoint *other = chunk->lnext ? sp->next->to : sp->prev->from;
- len = (other->me.x - sp->me.x) * stem->unit.x +
- (other->me.y - sp->me.y) * stem->unit.y;
- if ( chunk->stemcheat == 2 )
- proj -= width/2;
- else if ( len<0 )
- proj -= width;
- activespace[acnt].curved = true;
- activespace[acnt].start = proj;
- activespace[acnt].end = proj+width;
- activespace[acnt].sbase = activespace[acnt].ebase = orig_proj;
- acnt++;
- }
- }
-
- if ( acnt!=0 ) {
- stem->activecnt = MergeSegmentsFinal( activespace,acnt );
- stem->active = malloc(acnt*sizeof(struct segment));
- memcpy(stem->active,activespace,acnt*sizeof(struct segment));
- }
-
- len = clen = 0;
- for ( i=0; i<acnt; ++i ) {
- if ( stem->active[i].curved )
- clen += stem->active[i].end-stem->active[i].start;
- else
- len += stem->active[i].end-stem->active[i].start;
- }
- stem->len = len; stem->clen = len+clen;
-}
-
-static void GDStemsFixupIntersects(struct glyphdata *gd) {
- int i, j, stemidx;
- struct stemdata *stem;
- struct stem_chunk *chunk;
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- for ( j=0; j<stem->chunk_cnt; ++j ) {
- chunk = &stem->chunks[j];
- if ( chunk->l!=NULL ) {
- stemidx = IsStemAssignedToPoint( chunk->l,stem,true );
- FixupT( chunk->l,stemidx,true,chunk->l_e_idx );
- stemidx = IsStemAssignedToPoint( chunk->l,stem,false );
- FixupT( chunk->l,stemidx,false,chunk->l_e_idx );
- }
- if ( chunk->r!=NULL ) {
- stemidx = IsStemAssignedToPoint( chunk->r,stem,true );
- FixupT( chunk->r,stemidx,true,chunk->r_e_idx );
- stemidx = IsStemAssignedToPoint( chunk->r,stem,false );
- FixupT( chunk->r,stemidx,false,chunk->r_e_idx );
- }
- }
- }
-}
-
-static int StemsWouldConflict( struct stemdata *stem1,struct stemdata *stem2 ) {
- double loff, roff, s1, s2, e1, e2;
- int acnt1, acnt2;
-
- if ( stem1 == stem2 || !UnitsParallel( &stem1->unit,&stem2->unit,true ))
-return( false );
-
- loff = ( stem2->left.x - stem1->left.x ) * stem1->unit.y -
- ( stem2->left.y - stem1->left.y ) * stem1->unit.x;
- roff = ( stem2->right.x - stem1->right.x ) * stem1->unit.y -
- ( stem2->right.y - stem1->right.y ) * stem1->unit.x;
- loff = fabs( loff ); roff = fabs( roff );
- if ( loff > stem1->width || roff > stem1->width )
-return( false );
-
- acnt1 = stem1->activecnt;
- acnt2 = stem2->activecnt;
- if ( acnt1 == 0 || acnt2 == 0 )
-return( false );
- s1 = stem1->active[0].start; e1 = stem1->active[acnt1-1].end;
- s2 = stem2->active[0].start; e2 = stem2->active[acnt2-1].end;
-
- loff = ( stem2->left.x - stem1->left.x ) * stem1->unit.x +
- ( stem2->left.y - stem1->left.y ) * stem1->unit.y;
- if (( s2+loff >= s1 && s2+loff <= e1 ) || ( e2+loff >= s1 && e2+loff <= e1 ) ||
- ( s2+loff <= s1 && e2+loff >= e1 ) || ( e2+loff <= s1 && s2+loff >= e1 ))
-return( true );
-
-return( false );
-}
-
-/* Convert diagonal stems generated for stubs and intersections to horizontal */
-/* or vertical, if they have just one chunk. This should be done before calculating */
-/* active zones, as they are calculated against each stem's unit vector */
-static void GDNormalizeStubs( struct glyphdata *gd ) {
- int i, j, hv;
- struct stemdata *stem;
- struct stem_chunk *chunk;
- BasePoint newdir;
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( stem->positioned )
- continue;
-
- if ( !IsUnitHV( &stem->unit,true )) {
- hv = IsUnitHV( &stem->unit,false );
- if ( hv && StemFitsHV( stem,( hv == 1 ),3 )) {
- if ( hv == 2 && stem->unit.y < 0 )
- SwapEdges( gd,stem );
-
- newdir.x = fabs( rint( stem->unit.x ));
- newdir.y = fabs( rint( stem->unit.y ));
- SetStemUnit( stem,newdir );
-
- for ( j=0; j<stem->chunk_cnt && stem->leftidx == -1 && stem->rightidx == -1; j++ ) {
- chunk = &stem->chunks[j];
-
- if ( stem->leftidx == -1 && chunk->l != NULL )
- stem->leftidx = GetValidPointDataIndex( gd,chunk->l->sp,stem );
- if ( stem->rightidx == -1 && chunk->r != NULL )
- stem->rightidx = GetValidPointDataIndex( gd,chunk->r->sp,stem );
- }
- }
- }
- }
-}
-
-static void GDFindUnlikelyStems( struct glyphdata *gd ) {
- double width, minl, ratio;
- int i, j, k, stem_cnt, ls_cnt, rs_cnt, ltick, rtick;
- struct pointdata *lpd, *rpd;
- Spline *ls, *rs;
- SplinePoint *lsp, *rsp;
- BasePoint *lunit, *runit, *slunit, *srunit, *sunit;
- struct stemdata *stem, *stem1, *tstem;
- struct stemdata **tstems, **lstems, **rstems;
- struct stem_chunk *chunk;
-
- GDStemsFixupIntersects( gd );
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
-
- /* If stem had been already present in the spline char before we */
- /* started generating glyph data, then it should never be */
- /* considered "too big" */
- if ( stem->positioned )
- continue;
-
- /* If a stem has straight edges, and it is wider than tall */
- /* then it is unlikely to be a real stem */
- width = stem->width;
- ratio = IsUnitHV( &stem->unit,true ) ? gd->emsize/( 6 * width ) : -0.25;
- stem->toobig = ( stem->clen + stem->clen * ratio < width );
- }
-
- /* One more check for curved stems. If a stem has just one active */
- /* segment, this segment is curved and the stem has no conflicts, */
- /* then select the active segment length which allows us to consider */
- /* this stem suitable for PS output by such a way, that stems connecting */
- /* the opposite sides of a circle are always accepted */
- for ( i=0; i<gd->stemcnt; ++i ) if ( gd->stems[i].toobig ) {
- stem = &gd->stems[i];
- width = stem->width;
-
- if ( IsUnitHV( &stem->unit,true ) && stem->activecnt == 1 &&
- stem->active[0].curved && width/2 > dist_error_curve ) {
-
- for ( j=0; j<gd->stemcnt; ++j) {
- stem1 = &gd->stems[j];
-
- if ( !stem1->toobig && StemsWouldConflict( stem,stem1 ))
- break;
- }
-
- if ( j == gd->stemcnt ) {
- minl = sqrt( pow( width/2,2 ) - pow( width/2 - dist_error_curve,2 ));
- if ( stem->clen >= minl ) stem->toobig = false;
- }
- }
- }
-
- /* And finally a check for stubs and feature terminations. We don't */
- /* want such things to be controlled by any special hints, if there */
- /* is already a hint controlling the middle of the same feature */
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( stem->positioned )
- continue;
-
- if ( stem->chunk_cnt == 1 && stem->chunks[0].stub & 3 ) {
- chunk = &stem->chunks[0];
- slunit = chunk->lnext ? &chunk->l->nextunit : &chunk->l->prevunit;
- srunit = chunk->rnext ? &chunk->r->nextunit : &chunk->r->prevunit;
-
- /* This test is valid only for features which are not exactly horizontal/ */
- /* vertical. But we can't check this using the stem unit, as it may have */
- /* already beeen reset to HV. So we use the units of this stem's base points */
- /* instead. */
- if ( IsUnitHV( slunit,true ) && IsUnitHV( srunit,true ))
- continue;
- if ( UnitCloserToHV( srunit,slunit ) > 0 ) sunit = srunit;
- else sunit = slunit;
-
- lpd = chunk->l; lsp = lpd->sp; lstems = tstems = NULL;
- ls_cnt = 0;
- do {
- stem_cnt = (( chunk->lnext && lpd == chunk->l ) ||
- ( !chunk->lnext && lpd != chunk->l )) ? lpd->nextcnt : lpd->prevcnt;
- for ( j=0; j<stem_cnt; j++ ) {
- tstems= (( chunk->lnext && lpd == chunk->l ) ||
- ( !chunk->lnext && lpd != chunk->l )) ? lpd->nextstems : lpd->prevstems;
- tstem = tstems[j];
- if ( tstem != stem ) {
- lstems = tstems;
- ls_cnt = stem_cnt;
- break;
- }
- }
- if( lstems != NULL )
- break;
- ls = ( chunk->lnext ) ? lsp->next : lsp->prev;
- if ( ls == NULL )
- break;
- lsp = ( chunk->lnext ) ? ls->to : ls->from;
- lpd = &gd->points[lsp->ptindex];
- lunit = ( chunk->lnext ) ? &lpd->prevunit : &lpd->nextunit;
- } while ( lpd != chunk->l && lpd != chunk->r &&
- UnitsParallel( lunit,sunit,false ));
-
- rpd = chunk->r; rsp = rpd->sp; rstems = tstems = NULL;
- rs_cnt = 0;
- do {
- stem_cnt = (( chunk->rnext && rpd == chunk->r ) ||
- ( !chunk->rnext && rpd != chunk->r )) ? rpd->nextcnt : rpd->prevcnt;
- for ( j=0; j<stem_cnt; j++ ) {
- tstems= (( chunk->rnext && rpd == chunk->r ) ||
- ( !chunk->rnext && rpd != chunk->r )) ? rpd->nextstems : rpd->prevstems;
- tstem = tstems[j];
- if ( tstem != stem ) {
- rstems = tstems;
- rs_cnt = stem_cnt;
- break;
- }
- }
- if( rstems != NULL )
- break;
- rs = ( chunk->rnext ) ? rsp->next : rsp->prev;
- if ( rs == NULL )
- break;
- rsp = ( chunk->rnext ) ? rs->to : rs->from;
- rpd = &gd->points[rsp->ptindex];
- runit = ( chunk->rnext ) ? &rpd->prevunit : &rpd->nextunit;
- } while ( rpd != chunk->r && rpd != chunk->l &&
- UnitsParallel( runit,sunit,false ));
-
- if ( lstems != NULL && rstems !=NULL ) {
- for ( j=0; j<ls_cnt && !stem->toobig; j++ ) {
- for ( k=0; k<rs_cnt && !stem->toobig; k++ ) {
- if ( lstems[j] == rstems[k] && IsUnitHV( &lstems[j]->unit,true )) {
- stem->toobig = true;
- }
- }
- }
- }
- }
-
- /* One more check for intersections between a curved segment and a */
- /* straight feature. Imagine a curve intersected by two bars, like in a Euro */
- /* glyph. Very probably we will get two chunks, one controlling the uppest */
- /* two points of intersection, and another the lowest two, and most probably */
- /* these two chunks will get merged into a single stem (so this stem will */
- /* even get an exactly vertical vector). Yet we don't need this stem because */
- /* there is already a stem controlling the middle of the curve (between two */
- /* bars).*/
- else if ( stem->chunk_cnt == 2 &&
- (( stem->chunks[0].stub & 7 && stem->chunks[1].stub & 6 ) ||
- ( stem->chunks[0].stub & 6 && stem->chunks[1].stub & 7 ))) {
- for ( j=0; j<gd->stemcnt; ++j) {
- stem1 = &gd->stems[j];
- if ( !stem1->toobig && StemsWouldConflict( stem,stem1 ))
- break;
- }
-
- if ( j < gd->stemcnt )
- stem->toobig = true;
- }
- }
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( IsUnitHV( &stem->unit,true ))
- continue;
-
- /* If a diagonal stem doesn't have at least 2 points assigned to */
- /* each edge, then we probably can't instruct it. However we don't */
- /* disable stems which have just one point on each side, if those */
- /* points are inflection points, as such stems may be useful for */
- /* metafont routines */
- if ( stem->lpcnt < 2 || stem->rpcnt < 2 ) {
- lpd = rpd = NULL;
- for ( j=0; j<stem->chunk_cnt && lpd == NULL && rpd == NULL; j++ ) {
- chunk = &stem->chunks[j];
- if ( chunk->l != NULL ) lpd = chunk->l;
- if ( chunk->r != NULL ) rpd = chunk->r;
- }
- if (lpd == NULL || rpd == NULL ||
- !IsInflectionPoint( gd,lpd ) || !IsInflectionPoint( gd,rpd ) || stem->clen < stem->width )
- stem->toobig = 2;
- } else if ( stem->activecnt >= stem->chunk_cnt )
- stem->toobig = 2;
- }
-
- /* When using preexisting stem data, occasionally we can get two slightly */
- /* different stems (one predefined, another recently detected) with nearly */
- /* parallel vectors, sharing some points at both sides. Attempting to instruct */
- /* them both would lead to very odd effects. So we must disable one */
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( !stem->positioned || IsUnitHV( &stem->unit,true ))
- continue;
-
- for ( j=0; j<gd->stemcnt; ++j ) {
- tstem = &gd->stems[j];
- if ( tstem == stem || tstem->toobig || !UnitsParallel( &stem->unit,&tstem->unit,false ))
- continue;
-
- ltick = false; rtick = false;
- for ( k=0; k<stem->chunk_cnt && ( !ltick || !rtick ); k++ ) {
- chunk = &stem->chunks[k];
-
- if ( chunk->l != NULL &&
- IsStemAssignedToPoint( chunk->l,stem ,chunk->lnext ) != -1 &&
- IsStemAssignedToPoint( chunk->l,tstem,chunk->lnext ) != -1 )
- ltick = true;
- if ( chunk->r != NULL &&
- IsStemAssignedToPoint( chunk->r,stem ,chunk->rnext ) != -1 &&
- IsStemAssignedToPoint( chunk->r,tstem,chunk->rnext ) != -1 )
- rtick = true;
- }
- if ( ltick && rtick ) tstem->toobig = 2;
- }
- }
-}
-
-static int StemPointOnDiag( struct glyphdata *gd,struct stemdata *stem,
- struct pointdata *pd ) {
-
- struct stemdata *tstem;
- int i, is_next, stemcnt;
-
- if ( gd->only_hv || pd->colinear )
-return( false );
-
- is_next = IsStemAssignedToPoint( pd,stem,false ) != -1;
- stemcnt = ( is_next ) ? pd->nextcnt : pd->prevcnt;
-
- for ( i=0; i<stemcnt; i++ ) {
- tstem = ( is_next ) ? pd->nextstems[i] : pd->prevstems[i];
- if ( !IsUnitHV( &tstem->unit,true ) &&
- tstem->lpcnt >= 2 && tstem->rpcnt >=2 )
-return( true );
- }
-return( false );
-}
-
-static void FindRefPointsExisting( struct glyphdata *gd,struct stemdata *stem ) {
- int i;
- int pos, lbase, rbase, is_x;
- struct stem_chunk *chunk;
- struct pointdata *pd;
-
- is_x = (int) rint( stem->unit.y );
- lbase = ((real *) &stem->left.x)[!is_x];
- rbase = ((real *) &stem->right.x)[!is_x];
-
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
-
- if ( chunk->ltick ) {
- pd = chunk->l;
- pos = ((real *) &pd->sp->me.x)[!is_x];
- if ( pos == lbase ) {
- pd->value++;
- if ( pd->sp->ptindex < gd->realcnt )
- pd->value++;
- if ( StemPointOnDiag( gd,stem,pd ))
- pd->value++;
- }
- }
-
- if ( chunk->rtick ) {
- pd = chunk->r;
- pos = ((real *) &pd->sp->me.x)[!is_x];
- if ( pos == rbase ) {
- pd->value++;
- if ( pd->sp->ptindex < gd->realcnt )
- pd->value++;
- if ( StemPointOnDiag( gd,stem,pd ))
- pd->value++;
- }
- }
- }
-}
-
-static void FindRefPointsNew( struct glyphdata *gd,struct stemdata *stem ) {
- int i, j;
- int pos, lpos, rpos, testpos, is_x;
- int lval, rval;
- struct stem_chunk *chunk;
- struct pointdata *lmost1, *lmost2, *rmost1, *rmost2;
- double llen, prevllen, rlen, prevrlen;
- SplinePoint *sp, *tsp;
- uint8 *lextr, *rextr;
-
- is_x = (int) rint( stem->unit.y );
- lpos = ((real *) &stem->left.x)[!is_x];
- rpos = ((real *) &stem->right.x)[!is_x];
-
- lmost1 = rmost1 = lmost2 = rmost2 = NULL;
- llen = prevllen = rlen = prevrlen = 0;
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
-
- if ( chunk->ltick ) {
- sp = chunk->l->sp;
- pos = ((real *) &sp->me.x)[!is_x];
- lval = 0;
- for ( j=0; j<i; j++ ) if ( stem->chunks[j].ltick ) {
- tsp = stem->chunks[j].l->sp;
- testpos = ((real *) &tsp->me.x)[!is_x];
- if ( pos == testpos ) {
- lval = stem->chunks[j].l->value;
- stem->chunks[j].l->value++;
- /* An additional bonus for points which form together */
- /* a longer stem segment */
- if ( sp->next->to == tsp || sp->prev->from == tsp ) {
- llen = fabs(( sp->me.x - tsp->me.x )*stem->unit.x +
- ( sp->me.y - tsp->me.y )*stem->unit.y );
- if ( llen > prevllen ) {
- lmost1 = stem->chunks[j].l;
- lmost2 = chunk->l;
- prevllen = llen;
- }
- }
- }
- }
- chunk->l->value = lval+1;
-
- if ( lval == 0 &&
- ( stem->lmin - ( pos - lpos ) > -dist_error_hv ) &&
- ( stem->lmax - ( pos - lpos ) < dist_error_hv ))
- chunk->l->value++;
- }
-
- if ( chunk->rtick ) {
- sp = chunk->r->sp;
- pos = ((real *) &sp->me.x)[!is_x];
- rval = 0;
- for ( j=0; j<i; j++ ) if ( stem->chunks[j].rtick ) {
- tsp = stem->chunks[j].r->sp;
- testpos = ((real *) &tsp->me.x)[!is_x];
- if ( pos == testpos ) {
- rval = stem->chunks[j].r->value;
- stem->chunks[j].r->value++;
- if ( sp->next->to == tsp || sp->prev->from == tsp ) {
- rlen = fabs(( sp->me.x - tsp->me.x )*stem->unit.x +
- ( sp->me.y - tsp->me.y )*stem->unit.y );
- if ( rlen > prevrlen ) {
- rmost1 = stem->chunks[j].r;
- rmost2 = chunk->r;
- prevrlen = rlen;
- }
- }
- }
- }
- chunk->r->value = rval+1;
-
- if ( rval == 0 &&
- ( stem->rmin - ( pos - rpos ) > -dist_error_hv ) &&
- ( stem->rmax - ( pos - rpos ) < dist_error_hv ))
- chunk->r->value++;
- }
- }
- if ( lmost1 != NULL && lmost2 != NULL ) {
- lmost1->value++; lmost2->value++;
- }
- if ( rmost1 != NULL && rmost2 != NULL ) {
- rmost1->value++; rmost2->value++;
- }
-
- /* Extrema points get an additional value bonus. This should */
- /* prevent us from preferring wrong points for stems controlling */
- /* curved segments */
- /* Third pass to assign bonuses to extrema points (especially */
- /* to those extrema which are opposed to another extremum point) */
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
- if ( chunk->ltick ) {
- lextr = ( is_x ) ? &chunk->l->x_extr : &chunk->l->y_extr;
- if ( *lextr ) chunk->l->value++;
- }
- if ( chunk->rtick ) {
- rextr = ( is_x ) ? &chunk->r->x_extr : &chunk->r->y_extr;
- if ( *rextr ) chunk->r->value++;
- }
-
- if ( chunk->ltick && chunk->rtick ) {
- lextr = ( is_x ) ? &chunk->l->x_extr : &chunk->l->y_extr;
- rextr = ( is_x ) ? &chunk->r->x_extr : &chunk->r->y_extr;
- if ( *lextr && *rextr ) {
- chunk->l->value++;
- chunk->r->value++;
- }
- }
- }
-}
-
-static void NormalizeStem( struct glyphdata *gd,struct stemdata *stem ) {
- int i;
- int lval, rval, val, lset, rset, best;
- double loff=0, roff=0;
- BasePoint lold, rold;
- SplinePoint *lbest, *rbest;
- struct stem_chunk *chunk;
-
- /* First sort the stem chunks by their coordinates */
- if ( IsUnitHV( &stem->unit,true )) {
- qsort( stem->chunks,stem->chunk_cnt,sizeof( struct stem_chunk ),chunk_cmp );
-
- /* For HV stems we have to check all chunks once more in order */
- /* to figure out "left" and "right" positions most typical */
- /* for this stem. We perform this by assigning a value to */
- /* left and right side of this chunk. */
-
- /* First pass to determine some point properties necessary */
- /* for subsequent operations */
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
- if ( chunk->ltick )
- /* reset the point's "value" to zero */
- chunk->l->value = 0;
- if ( chunk->rtick )
- chunk->r->value = 0;
- }
-
- /* Second pass to check which positions relative to stem edges are */
- /* most common for this stem. Each position which repeats */
- /* more than once gets a plus 1 value bonus */
- if ( stem->positioned ) FindRefPointsExisting( gd,stem );
- else FindRefPointsNew( gd,stem );
-
- best = -1; val = 0;
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
- lval = ( chunk->l != NULL ) ? chunk->l->value : 0;
- rval = ( chunk->r != NULL ) ? chunk->r->value : 0;
- if ((( chunk->l != NULL && chunk->l->value > 0 &&
- GetValidPointDataIndex( gd,chunk->l->sp,stem ) != -1 ) ||
- ( stem->ghost && stem->width == 21 )) &&
- (( chunk->r != NULL && chunk->r->value > 0 &&
- GetValidPointDataIndex( gd,chunk->r->sp,stem ) != -1 ) ||
- ( stem->ghost && stem->width == 20 )) && lval + rval > val ) {
-
- best = i;
- val = lval + rval;
- }
- }
- if ( best > -1 ) {
- if ( !stem->ghost || stem->width == 20 ) {
- lold = stem->left;
- lbest = stem->chunks[best].l->sp;
- stem->left = lbest->me;
- stem->leftidx = GetValidPointDataIndex( gd,lbest,stem );
-
- /* Now assign "left" and "right" properties of the stem */
- /* to point coordinates taken from the most "typical" chunk */
- /* of this stem. We also have to recalculate stem width and */
- /* left/right offset values */
- loff = ( stem->left.x - lold.x ) * stem->unit.y -
- ( stem->left.y - lold.y ) * stem->unit.x;
- stem->lmin -= loff; stem->lmax -= loff;
- }
- if ( !stem->ghost || stem->width == 21 ) {
- rold = stem->right;
- rbest = stem->chunks[best].r->sp;
- stem->right = rbest->me;
- stem->rightidx = GetValidPointDataIndex( gd,rbest,stem );
- roff = ( stem->right.x - rold.x ) * stem->unit.y -
- ( stem->right.y - rold.y ) * stem->unit.x;
- stem->rmin -= roff; stem->rmax -= roff;
- }
- if ( !stem->ghost )
- stem->width = ( stem->right.x - stem->left.x ) * stem->unit.y -
- ( stem->right.y - stem->left.y ) * stem->unit.x;
- } else {
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
- if ( chunk->l != NULL && ( !stem->ghost || stem->width == 20 )) {
- stem->leftidx = GetValidPointDataIndex( gd,chunk->l->sp,stem );
- }
- if ( chunk->r != NULL && ( !stem->ghost || stem->width == 21 )) {
- stem->rightidx = GetValidPointDataIndex( gd,chunk->r->sp,stem );
- }
- }
- }
- } else {
- qsort( stem->chunks,stem->chunk_cnt,sizeof( struct stem_chunk ),chunk_cmp );
- lset = false; rset = false;
- /* Search for a pair of points whose vectors are really parallel. */
- /* This check is necessary because a diagonal stem can start from */
- /* a feature termination, and our checks for such terminations */
- /* are more "liberal" than in other cases. However we don't want */
- /* considering such a pair of points basic for this stem */
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
- BasePoint *lu, *ru;
- if ( chunk->l != NULL && chunk->r != NULL ) {
- lu = chunk->lnext ? &chunk->l->nextunit : &chunk->l->prevunit;
- ru = chunk->rnext ? &chunk->r->nextunit : &chunk->r->prevunit;
- if ( UnitsParallel( lu,ru,true )) {
- loff = ( chunk->l->sp->me.x - stem->left.x )*stem->l_to_r.x +
- ( chunk->l->sp->me.y - stem->left.y )*stem->l_to_r.y;
- roff = ( chunk->r->sp->me.x - stem->right.x )*stem->l_to_r.x +
- ( chunk->r->sp->me.y - stem->right.y )*stem->l_to_r.y;
- stem->left = chunk->l->sp->me;
- stem->right = chunk->r->sp->me;
- RecalcStemOffsets( stem,&stem->unit,loff != 0,roff != 0 );
- break;
- }
- }
- }
- /* If the above check fails, just select the first point (relatively) */
- /* to the stem direction both at the left and the right edge */
- if ( i == stem->chunk_cnt ) for ( i=0; i<stem->chunk_cnt; ++i ) {
- chunk = &stem->chunks[i];
- if ( !lset && chunk->l != NULL ) {
- loff = ( chunk->l->sp->me.x - stem->left.x )*stem->l_to_r.x +
- ( chunk->l->sp->me.y - stem->left.y )*stem->l_to_r.y;
- stem->left = chunk->l->sp->me;
- lset = true;
- }
- if ( !rset && chunk->r != NULL ) {
- roff = ( chunk->r->sp->me.x - stem->right.x )*stem->l_to_r.x +
- ( chunk->r->sp->me.y - stem->right.y )*stem->l_to_r.y;
- stem->right = chunk->r->sp->me;
- rset = true;
- }
- if ( lset && rset ) {
- RecalcStemOffsets( stem,&stem->unit,loff != 0,roff != 0 );
- break;
- }
- }
- }
-}
-
-static void AssignPointsToBBoxHint( struct glyphdata *gd,DBounds *bounds,
- struct stemdata *stem,int is_v ) {
-
- double min, max, test, left, right;
- double dist, prevdist;
- int i, j;
- int lcnt=0, rcnt=0, closest;
- BasePoint dir;
- SplinePoint **lpoints, **rpoints;
- struct pointdata *pd, *pd1, *pd2;
-
- lpoints = calloc( gd->pcnt,sizeof( SplinePoint *));
- rpoints = calloc( gd->pcnt,sizeof( SplinePoint *));
- dir.x = !is_v; dir.y = is_v;
- for ( i=0; i<gd->pcnt; ++i ) if ( gd->points[i].sp!=NULL ) {
- pd = &gd->points[i];
- min = ( is_v ) ? bounds->minx : bounds->miny;
- max = ( is_v ) ? bounds->maxx : bounds->maxy;
- test = ( is_v ) ? pd->base.x : pd->base.y;
- if ( test >= min && test < min + dist_error_hv && (
- IsCorrectSide( gd,pd,true,is_v,&dir ) || IsCorrectSide( gd,pd,false,is_v,&dir )))
- lpoints[lcnt++] = pd->sp;
- else if ( test > max - dist_error_hv && test <= max && (
- IsCorrectSide( gd,pd,true,!is_v,&dir ) || IsCorrectSide( gd,pd,false,!is_v,&dir )))
- rpoints[rcnt++] = pd->sp;
- }
- if ( lcnt > 0 && rcnt > 0 ) {
- if ( stem == NULL ) {
- stem = NewStem( gd,&dir,&lpoints[0]->me,&rpoints[0]->me );
- stem->bbox = true;
- stem->len = stem->width;
- stem->leftidx = GetValidPointDataIndex( gd,lpoints[0],stem );
- stem->rightidx = GetValidPointDataIndex( gd,rpoints[0],stem );
- }
- for ( i=0; i<lcnt; ++i ) {
- closest = -1;
- dist = 1e4; prevdist = 1e4;
- for ( j=0; j<rcnt; ++j ) {
- left = ( is_v ) ? lpoints[i]->me.y : lpoints[i]->me.x;
- right = ( is_v ) ? rpoints[j]->me.y : rpoints[j]->me.x;
- dist = fabs( left - right );
- if ( dist < prevdist ) {
- closest = j;
- prevdist = dist;
- }
- }
- pd1 = &gd->points[lpoints[i]->ptindex];
- pd2 = &gd->points[rpoints[closest]->ptindex];
- AddToStem( gd,stem,pd1,pd2,false,true,4 );
- }
- qsort( stem->chunks,stem->chunk_cnt,sizeof( struct stem_chunk ),chunk_cmp );
- }
- free( lpoints );
- free( rpoints );
-}
-
-static void CheckForBoundingBoxHints( struct glyphdata *gd ) {
- /* Adobe seems to add hints at the bounding boxes of glyphs with no hints */
- int i, hv;
- int hcnt=0, vcnt=0;
- double cw, ch;
- struct stemdata *stem, *hstem=NULL,*vstem=NULL;
- DBounds bounds;
-
- SplineCharFindBounds( gd->sc,&bounds );
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- hv = IsUnitHV( &stem->unit,true );
- if ( !hv )
- continue;
- if ( stem->toobig ) {
- if ( stem->left.x == bounds.minx && stem->right.x == bounds.maxx )
- vstem = stem;
- else if ( stem->right.y == bounds.miny && stem->left.y == bounds.maxy )
- hstem = stem;
- continue;
- }
- if ( hv == 1 ) {
- if ( stem->bbox ) hstem = stem;
- else ++hcnt;
- } else if ( hv == 2 ) {
- if ( stem->bbox ) vstem = stem;
- else ++vcnt;
- }
- }
- if ( hcnt!=0 && vcnt!=0 &&
- ( hstem == NULL || !hstem->positioned ) &&
- ( vstem == NULL || !vstem->positioned ))
-return;
-
- ch = bounds.maxy - bounds.miny;
- cw = bounds.maxx - bounds.minx;
-
- if ( ch > 0 && (( hstem != NULL && hstem->positioned ) ||
- ( hcnt == 0 && ch < gd->emsize/3 ))) {
- if ( hstem != NULL && hstem->toobig ) hstem->toobig = false;
- AssignPointsToBBoxHint( gd,&bounds,hstem,false );
- if ( hstem != NULL ) NormalizeStem( gd,hstem );
- }
- if ( cw > 0 && (( vstem != NULL && vstem->positioned ) ||
- ( vcnt == 0 && cw < gd->emsize/3 ))) {
- if ( vstem != NULL && vstem->toobig ) vstem->toobig = false;
- AssignPointsToBBoxHint( gd,&bounds,vstem,true );
- if ( vstem != NULL ) NormalizeStem( gd,vstem );
- }
-}
-
-static struct stemdata *FindOrMakeGhostStem( struct glyphdata *gd,
- SplinePoint *sp,int blue,double width ) {
- int i, j, hasl, hasr;
- struct stemdata *stem=NULL, *tstem;
- struct stem_chunk *chunk;
- BasePoint dir,left,right;
- double min, max;
-
- dir.x = 1; dir.y = 0;
- for ( i=0; i<gd->stemcnt; ++i ) {
- tstem = &gd->stems[i];
- if ( tstem->blue == blue && tstem->ghost && tstem->width == width ) {
- stem = tstem;
- break;
- /* If the stem controlling this blue zone is not for a ghost hint, */
- /* then we check if it has both left and right points, to ensure that */
- /* we don't occasionally assign an additional point to a stem which */
- /* has already been rejected in favor of another stem */
- } else if ( tstem->blue == blue && !tstem->ghost && !tstem->toobig ) {
- min = ( width == 20 ) ? tstem->left.y - tstem->lmin - 2*dist_error_hv :
- tstem->right.y - tstem->rmin - 2*dist_error_hv;
- max = ( width == 20 ) ? tstem->left.y - tstem->lmax + 2*dist_error_hv :
- tstem->right.y - tstem->rmax + 2*dist_error_hv;
-
- if ( sp->me.y <= min || sp->me.y >= max )
- continue;
-
- hasl = false; hasr = false; j = 0;
- while ( j < tstem->chunk_cnt && ( !hasl || !hasr )) {
- chunk = &tstem->chunks[j];
- if ( chunk->l != NULL && !chunk->lpotential )
- hasl = true;
- if ( chunk->r != NULL && !chunk->rpotential )
- hasr = true;
- j++;
- }
- if ( hasl && hasr ) {
- stem = tstem;
- break;
- }
- }
- }
-
- if ( stem == NULL ) {
- left.x = right.x = sp->me.x;
- left.y = ( width == 21 ) ? sp->me.y + 21 : sp->me.y;
- right.y = ( width == 21 ) ? sp->me.y : sp->me.y - 20;
-
- stem = NewStem( gd,&dir,&left,&right );
- stem->ghost = true;
- stem->width = width;
- stem->blue = blue;
- }
-return( stem );
-}
-
-static int AddGhostSegment( struct pointdata *pd,int cnt,double base,struct segment *space ) {
- double s, e, temp, pos, spos, epos;
- SplinePoint *sp, *nsp, *nsp2, *psp, *psp2;
-
- sp = nsp = psp = pd->sp;
- pos = pd->sp->me.y;
-
- /* First check if there are points on the same line lying further */
- /* in the desired direction */
- if (( sp->next != NULL ) && ( sp->next->to->me.y == pos ))
- nsp = sp->next->to;
- if (( sp->prev != NULL ) && ( sp->prev->from->me.y == pos ))
- psp = sp->prev->from;
-
- if ( psp != sp ) {
- s = psp->me.x;
- } else if ( psp->noprevcp ) {
- psp2 = psp->prev->from;
- if ( psp2->me.y != psp->me.y ) {
- s = ( psp->me.x - psp2->me.x )/( psp->me.y - psp2->me.y )*20.0;
- if ( s < 0 ) s = -s;
- if ( psp2->me.x<psp->me.x )
- s = ( psp->me.x-psp2->me.x < s ) ? psp2->me.x : psp->me.x-s;
- else
- s = ( psp2->me.x-psp->me.x < s ) ? psp2->me.x : psp->me.x+s;
- } else
- s = psp->me.x;
- } else {
- s = ( pd->sp->me.x + psp->prevcp.x )/2;
- }
-
- if ( nsp != sp ) {
- e = nsp->me.x;
- } else if ( nsp->nonextcp ) {
- nsp2 = nsp->next->to;
- if ( nsp2->me.y != nsp->me.y ) {
- e = ( nsp->me.x - nsp2->me.x )/( nsp->me.y - nsp2->me.y )*20.0;
- if ( e < 0 ) e = -e;
- if ( nsp2->me.x<nsp->me.x )
- e = ( nsp->me.x-nsp2->me.x < e ) ? nsp2->me.x : nsp->me.x-e;
- else
- e = ( nsp2->me.x-nsp->me.x < e ) ? nsp2->me.x : nsp->me.x+e;
- } else
- e = nsp->me.x;
- } else {
- e = ( pd->sp->me.x + nsp->nextcp.x )/2;
- }
-
- spos = psp->me.x; epos = nsp->me.x;
- if ( s>e ) {
- temp = s; s = e; e = temp;
- temp = spos; spos = epos; epos = temp;
- }
-
- space[cnt].start = s - base;
- space[cnt].end = e - base;
- space[cnt].sbase = spos - base;
- space[cnt].ebase = epos - base;
- space[cnt].ecurved = space[cnt].scurved = space[cnt].curved = ( false );
-
- return( cnt+1 );
-}
-
-static void FigureGhostActive( struct glyphdata *gd,struct stemdata *stem ) {
- int acnt, i;
- real len = 0;
- struct segment *activespace = gd->activespace;
- struct pointdata *valid;
-
- if ( !stem->ghost )
-return;
-
- acnt = 0;
- for ( i=0; i<stem->chunk_cnt; ++i ) {
- valid = ( stem->chunks[i].l != NULL) ?
- stem->chunks[i].l : stem->chunks[i].r;
- acnt = AddGhostSegment( valid,acnt,stem->left.x,activespace );
- }
- qsort(activespace,acnt,sizeof(struct segment),segment_cmp);
- acnt = MergeSegments( activespace,acnt );
- stem->activecnt = acnt;
- if ( acnt!=0 ) {
- stem->active = malloc(acnt*sizeof(struct segment));
- memcpy( stem->active,activespace,acnt*sizeof( struct segment ));
- }
-
- for ( i=0; i<acnt; ++i ) {
- len += stem->active[i].end-stem->active[i].start;
- }
- stem->clen = stem->len = len;
-}
-
-static void CheckForGhostHints( struct glyphdata *gd ) {
- /* PostScript doesn't allow a hint to stretch from one alignment zone to */
- /* another. (Alignment zones are the things in bluevalues). */
- /* Oops, I got this wrong. PS doesn't allow a hint to start in a bottom */
- /* zone and stretch to a top zone. Everything in OtherBlues is a bottom */
- /* zone. The baseline entry in BlueValues is also a bottom zone. Every- */
- /* thing else in BlueValues is a top-zone. */
- /* This means */
- /* that we can't define a horizontal stem hint which stretches from */
- /* the baseline to the top of a capital I, or the x-height of lower i */
- /* If we find any such hints we must remove them, and replace them with */
- /* ghost hints. The bottom hint has height -21, and the top -20 */
- BlueData *bd = &gd->bd;
- struct stemdata *stem;
- struct pointdata *pd;
- real base;
- int i, j, leftfound, rightfound, has_h, peak, fuzz;
-
- fuzz = gd->fuzz;
-
- /* look for any stems stretching from one zone to another and remove them */
- /* (I used to turn them into ghost hints here, but that didn't work (for */
- /* example on "E" where we don't need any ghosts from the big stem because*/
- /* the narrow stems provide the hints that PS needs */
- /* However, there are counter-examples. in Garamond-Pro the "T" character */
- /* has a horizontal stem at the top which stretches between two adjacent */
- /* bluezones. Removing it is wrong. Um... Thanks Adobe */
- /* I misunderstood. Both of these were top-zones */
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( IsUnitHV( &stem->unit,true ) != 1)
- continue;
-
- leftfound = rightfound = -1;
- for ( j=0; j<bd->bluecnt; ++j ) {
- if ( stem->left.y>=bd->blues[j][0]-fuzz && stem->left.y<=bd->blues[j][1]+fuzz )
- leftfound = j;
- else if ( stem->right.y>=bd->blues[j][0]-fuzz && stem->right.y<=bd->blues[j][1]+fuzz )
- rightfound = j;
- }
- /* Assign value 2 to indicate this stem should be ignored also for TTF instrs */
- if ( leftfound !=-1 && rightfound !=-1 &&
- ( stem->left.y > 0 && stem->right.y <= 0 ))
- stem->toobig = 2;
- /* Otherwise mark the stem as controlling a specific blue zone */
- else if ( leftfound != -1 && ( rightfound == -1 || stem->left.y > 0 ))
- stem->blue = leftfound;
- else if ( rightfound != -1 && ( leftfound == -1 || stem->right.y <= 0 ))
- stem->blue = rightfound;
- }
-
- /* Now look and see if we can find any edges which lie in */
- /* these zones. Edges which are not currently in hints */
- /* Use the winding number to determine top or bottom */
- for ( i=0; i<gd->pcnt; ++i ) if ( gd->points[i].sp!=NULL ) {
- has_h = false;
- for ( j=0; j<gd->points[i].prevcnt; j++ ) {
- stem = gd->points[i].prevstems[j];
- if ( !stem->toobig && IsUnitHV( &stem->unit,true ) == 1 ) {
- has_h = true;
- break;
- }
- }
- for ( j=0; j<gd->points[i].nextcnt; j++ ) {
- stem = gd->points[i].nextstems[j];
- if ( !stem->toobig && IsUnitHV( &stem->unit,true ) == 1 ) {
- has_h = true;
- break;
- }
- }
- if ( has_h )
- continue;
-
- pd = &gd->points[i];
- base = pd->sp->me.y;
- for ( j=0; j<bd->bluecnt; ++j ) {
- if ( base>=bd->blues[j][0]-fuzz && base<=bd->blues[j][1]+fuzz ) {
- peak = IsSplinePeak( gd,pd,false,false,7 );
- if ( peak > 0 ) {
- stem = FindOrMakeGhostStem( gd,pd->sp,j,20 );
- AddToStem( gd,stem,pd,NULL,2,false,false );
- } else if ( peak < 0 ) {
- stem = FindOrMakeGhostStem( gd,pd->sp,j,21 );
- AddToStem( gd,stem,NULL,pd,2,false,false );
- }
- }
- }
- }
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( !stem->ghost )
- continue;
- NormalizeStem( gd,stem );
- FigureGhostActive( gd,stem );
- }
-}
-
-static void MarkDStemCorner( struct glyphdata *gd,struct pointdata *pd ) {
- int x_dir = pd->x_corner;
- int hv, is_l, i, peak, has_stem = false;
- struct stemdata *stem;
- BasePoint left,right,unit;
-
- for ( i=0; i<pd->prevcnt && !has_stem; i++ ) {
- stem = pd->prevstems[i];
- hv = IsUnitHV( &stem->unit,true );
- if ( !stem->toobig && (
- ( x_dir && hv == 1 ) ||
- ( !x_dir && hv == 2 )))
- has_stem = true;
- }
- for ( i=0; i<pd->nextcnt && !has_stem; i++ ) {
- stem = pd->nextstems[i];
- hv = IsUnitHV( &stem->unit,true );
- if ( !stem->toobig && (
- ( x_dir && hv == 1 ) ||
- ( !x_dir && hv == 2 )))
- has_stem = true;
- }
- if ( has_stem )
-return;
-
- peak = IsSplinePeak( gd,pd,x_dir,x_dir,2 );
- unit.x = !x_dir; unit.y = x_dir;
-
- if ( peak > 0 ) {
- left.x = x_dir ? pd->sp->me.x + 21 : pd->sp->me.x;
- right.x = x_dir ? pd->sp->me.x : pd->sp->me.x;
- left.y = x_dir ? pd->sp->me.y : pd->sp->me.y;
- right.y = x_dir ? pd->sp->me.y : pd->sp->me.y - 20;
-
- } else if ( peak < 0 ) {
- left.x = x_dir ? pd->sp->me.x : pd->sp->me.x;
- right.x = x_dir ? pd->sp->me.x - 20 : pd->sp->me.x;
- left.y = x_dir ? pd->sp->me.y : pd->sp->me.y + 21;
- right.y = x_dir ? pd->sp->me.y : pd->sp->me.y;
- }
- is_l = IsCorrectSide( gd,pd,true,true,&unit );
- for ( i=0; i<gd->stemcnt; i++ ) {
- stem = &gd->stems[i];
- if (!stem->toobig && UnitsParallel( &unit,&stem->unit,true ) &&
- OnStem( stem,&pd->sp->me,is_l ))
- break;
- }
- if ( i == gd->stemcnt ) {
- stem = NewStem( gd,&unit,&left,&right );
- stem->ghost = 2;
- }
- AddToStem( gd,stem,pd,NULL,2,false,false );
-}
-
-static void MarkDStemCorners( struct glyphdata *gd ) {
- struct stemdata *stem;
- struct stem_chunk *schunk, *echunk;
- int i;
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( stem->toobig || IsUnitHV( &stem->unit,true ))
- continue;
-
- schunk = &stem->chunks[0];
- echunk = &stem->chunks[stem->chunk_cnt - 1];
-
- if ( schunk->l != NULL && schunk->r != NULL &&
- fabs( schunk->l->base.x - schunk->r->base.x ) > dist_error_hv &&
- fabs( schunk->l->base.y - schunk->r->base.y ) > dist_error_hv && (
- ( schunk->l->x_corner == 1 && schunk->r->y_corner == 1 ) ||
- ( schunk->l->y_corner == 1 && schunk->r->x_corner == 1 ))) {
- MarkDStemCorner( gd,schunk->l );
- MarkDStemCorner( gd,schunk->r );
- }
- if ( echunk->l != NULL && echunk->r != NULL &&
- fabs( echunk->l->base.x - echunk->r->base.x ) > dist_error_hv &&
- fabs( echunk->l->base.y - echunk->r->base.y ) > dist_error_hv && (
- ( echunk->l->x_corner == 1 && echunk->r->y_corner == 1 ) ||
- ( echunk->l->y_corner == 1 && echunk->r->x_corner == 1 ))) {
- MarkDStemCorner( gd,echunk->l );
- MarkDStemCorner( gd,echunk->r );
- }
- }
-}
-
-#if GLYPH_DATA_DEBUG
-static void DumpGlyphData( struct glyphdata *gd ) {
- int i, j;
- struct stemdata *stem;
- struct linedata *line;
- struct stem_chunk *chunk;
-
- if ( gd->linecnt > 0 )
- fprintf( stderr, "\nDumping line data for %s\n",gd->sc->name );
- for ( i=0; i<gd->linecnt; ++i ) {
- line = &gd->lines[i];
- fprintf( stderr, "line vector=%.4f,%.4f base=%.2f,%.2f length=%.4f\n",
- line->unit.x,line->unit.y,line->online.x,line->online.y,line->length );
- for( j=0; j<line->pcnt;++j ) {
- fprintf( stderr, "\tpoint num=%d, x=%.2f, y=%.2f, prev=%d, next=%d\n",
- line->points[j]->sp->ttfindex, line->points[j]->sp->me.x,
- line->points[j]->sp->me.y,
- line->points[j]->prevline==line, line->points[j]->nextline==line );
- }
- fprintf( stderr, "\n" );
- }
-
- if ( gd->stemcnt > 0 )
- fprintf( stderr, "\nDumping stem data for %s\n",gd->sc->name );
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- fprintf( stderr, "stem l=%.2f,%.2f idx=%d r=%.2f,%.2f idx=%d vector=%.4f,%.4f\n\twidth=%.2f chunk_cnt=%d len=%.4f clen=%.4f ghost=%d blue=%d toobig=%d\n\tlmin=%.2f,lmax=%.2f,rmin=%.2f,rmax=%.2f,lpcnt=%d,rpcnt=%d\n",
- stem->left.x,stem->left.y,stem->leftidx,
- stem->right.x,stem->right.y,stem->rightidx,
- stem->unit.x,stem->unit.y,stem->width,
- stem->chunk_cnt,stem->len,stem->clen,stem->ghost,stem->blue,stem->toobig,
- stem->lmin,stem->lmax,stem->rmin,stem->rmax,stem->lpcnt,stem->rpcnt );
- for ( j=0; j<stem->chunk_cnt; ++j ) {
- chunk = &stem->chunks[j];
- if ( chunk->l!=NULL && chunk->r!=NULL )
- fprintf (stderr, "\tchunk l=%.2f,%.2f potential=%d r=%.2f,%.2f potential=%d stub=%d\n",
- chunk->l->sp->me.x, chunk->l->sp->me.y, chunk->lpotential,
- chunk->r->sp->me.x, chunk->r->sp->me.y, chunk->rpotential, chunk->stub );
- else if ( chunk->l!=NULL )
- fprintf (stderr, "\tchunk l=%.2f,%.2f potential=%d\n",
- chunk->l->sp->me.x, chunk->l->sp->me.y, chunk->lpotential);
- else if ( chunk->r!=NULL )
- fprintf (stderr, "\tchunk r=%.2f,%.2f potential=%d\n",
- chunk->r->sp->me.x, chunk->r->sp->me.y, chunk->rpotential);
- }
- fprintf( stderr, "\n" );
- }
-
- if ( gd->hbundle != NULL || gd->vbundle != NULL )
- fprintf( stderr, "\nDumping HV stem bundles for %s\n",gd->sc->name );
- if ( gd->hbundle != NULL ) for ( i=0; i<gd->hbundle->cnt; i++ ) {
- stem = gd->hbundle->stemlist[i];
- fprintf( stderr, "H stem l=%.2f,%.2f r=%.2f,%.2f slave=%d\n",
- stem->left.x,stem->left.y,stem->right.x,stem->right.y,stem->master!=NULL );
- if ( stem->dep_cnt > 0 ) for ( j=0; j<stem->dep_cnt; j++ ) {
- fprintf( stderr, "\tslave l=%.2f,%.2f r=%.2f,%.2f mode=%c left=%d\n",
- stem->dependent[j].stem->left.x,stem->dependent[j].stem->left.y,
- stem->dependent[j].stem->right.x,stem->dependent[j].stem->right.y,
- stem->dependent[j].dep_type,stem->dependent[j].lbase );
- }
- if ( stem->serif_cnt > 0 ) for ( j=0; j<stem->serif_cnt; j++ ) {
- fprintf( stderr, "\tserif l=%.2f,%.2f r=%.2f,%.2f ball=%d left=%d\n",
- stem->serifs[j].stem->left.x,stem->serifs[j].stem->left.y,
- stem->serifs[j].stem->right.x,stem->serifs[j].stem->right.y,
- stem->serifs[j].is_ball,stem->serifs[j].lbase );
- }
- }
- fprintf( stderr, "\n" );
- if ( gd->vbundle != NULL ) for ( i=0; i<gd->vbundle->cnt; i++ ) {
- stem = gd->vbundle->stemlist[i];
- fprintf( stderr, "V stem l=%.2f,%.2f r=%.2f,%.2f slave=%d\n",
- stem->left.x,stem->left.y,stem->right.x,stem->right.y,stem->master!=NULL );
- if ( stem->dep_cnt > 0 ) for ( j=0; j<stem->dep_cnt; j++ ) {
- fprintf( stderr, "\tslave l=%.2f,%.2f r=%.2f,%.2f mode=%c left=%d\n",
- stem->dependent[j].stem->left.x,stem->dependent[j].stem->left.y,
- stem->dependent[j].stem->right.x,stem->dependent[j].stem->right.y,
- stem->dependent[j].dep_type,stem->dependent[j].lbase );
- }
- if ( stem->serif_cnt > 0 ) for ( j=0; j<stem->serif_cnt; j++ ) {
- fprintf( stderr, "\tserif l=%.2f,%.2f r=%.2f,%.2f ball=%d left=%d\n",
- stem->serifs[j].stem->left.x,stem->serifs[j].stem->left.y,
- stem->serifs[j].stem->right.x,stem->serifs[j].stem->right.y,
- stem->serifs[j].is_ball,stem->serifs[j].lbase );
- }
- if ( stem->prev_c_m != NULL ) {
- fprintf( stderr,"\tprev counter master: l=%.2f r=%.2f\n",
- stem->prev_c_m->left.x,stem->prev_c_m->right.x );
- }
- if ( stem->next_c_m != NULL ) {
- fprintf( stderr,"\tnext counter master: l=%.2f r=%.2f\n",
- stem->next_c_m->left.x,stem->next_c_m->right.x );
- }
- }
- fprintf( stderr, "\n" );
-
- if ( gd->ibundle != NULL ) for ( i=0; i<gd->ibundle->cnt; i++ ) {
- stem = gd->ibundle->stemlist[i];
- fprintf( stderr, "I stem l=%.2f,%.2f r=%.2f,%.2f slave=%d\n",
- stem->left.x,stem->left.y,stem->right.x,stem->right.y,stem->master!=NULL );
- if ( stem->dep_cnt > 0 ) for ( j=0; j<stem->dep_cnt; j++ ) {
- fprintf( stderr, "\tslave l=%.2f,%.2f r=%.2f,%.2f mode=%c left=%d\n",
- stem->dependent[j].stem->left.x,stem->dependent[j].stem->left.y,
- stem->dependent[j].stem->right.x,stem->dependent[j].stem->right.y,
- stem->dependent[j].dep_type,stem->dependent[j].lbase );
- }
- if ( stem->serif_cnt > 0 ) for ( j=0; j<stem->serif_cnt; j++ ) {
- fprintf( stderr, "\tserif l=%.2f,%.2f r=%.2f,%.2f ball=%d left=%d\n",
- stem->serifs[j].stem->left.x,stem->serifs[j].stem->left.y,
- stem->serifs[j].stem->right.x,stem->serifs[j].stem->right.y,
- stem->serifs[j].is_ball,stem->serifs[j].lbase );
- }
- }
- fprintf( stderr, "\n" );
-}
-#endif
-
-static void AssignPointsToStems( struct glyphdata *gd,int startnum,DBounds *bounds ) {
- int i;
- struct pointdata *pd;
- struct stemdata *stem = NULL;
- BasePoint dir;
-
- for ( i=0; i<gd->pcnt; ++i ) if ( gd->points[i].sp!=NULL ) {
- pd = &gd->points[i];
- if ( pd->prev_e_cnt > 0 )
- BuildStem( gd,pd,false,true,true,0 );
- else
- HalfStemNoOpposite( gd,pd,stem,&pd->prevunit,false );
-
- if ( pd->next_e_cnt > 0 )
- BuildStem( gd,pd,true,true,true,0 );
- else
- HalfStemNoOpposite( gd,pd,stem,&pd->nextunit,true );
-
- if ( pd->x_corner ) {
- if ( pd->bothedge!=NULL )
- stem = DiagonalCornerStem( gd,pd,true );
- dir.x = 0; dir.y = 1;
- HalfStemNoOpposite( gd,pd,stem,&dir,2 );
- } else if ( pd->y_corner ) {
- if ( pd->bothedge!=NULL )
- stem = DiagonalCornerStem( gd,pd,true );
- dir.x = 1; dir.y = 0;
- HalfStemNoOpposite( gd,pd,stem,&dir,2 );
- }
- }
- gd->lspace = malloc(gd->pcnt*sizeof(struct segment));
- gd->rspace = malloc(gd->pcnt*sizeof(struct segment));
- gd->bothspace = malloc(3*gd->pcnt*sizeof(struct segment));
- gd->activespace = malloc(3*gd->pcnt*sizeof(struct segment));
-#if GLYPH_DATA_DEBUG
- fprintf( stderr,"Going to calculate stem active zones for %s\n",gd->sc->name );
-#endif
- for ( i=startnum; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- NormalizeStem( gd,stem );
- if ( gd->stems[i].ghost )
- FigureGhostActive( gd,stem );
- else if ( gd->stems[i].bbox )
- AssignPointsToBBoxHint( gd,bounds,stem,( stem->unit.y == 1 ));
- else
- FigureStemActive( gd,&gd->stems[i] );
- }
-#if GLYPH_DATA_DEBUG
- DumpGlyphData( gd );
-#endif
-
- free(gd->lspace); gd->lspace = NULL;
- free(gd->rspace); gd->rspace = NULL;
- free(gd->bothspace); gd->bothspace = NULL;
- free(gd->activespace); gd->activespace = NULL;
-}
-
-static void _DStemInfoToStemData( struct glyphdata *gd,DStemInfo *dsi,int *startcnt ) {
- struct stemdata *stem;
-
- if ( gd->stems == NULL ) {
- gd->stems = calloc( 2*gd->pcnt,sizeof( struct stemdata ));
- gd->stemcnt = 0;
- }
- *startcnt = gd->stemcnt;
- while ( dsi != NULL ) {
- stem = NewStem( gd,&dsi->unit,&dsi->left,&dsi->right );
- stem->positioned = true;
- dsi = dsi->next;
- }
-}
-
-struct glyphdata *DStemInfoToStemData( struct glyphdata *gd,DStemInfo *dsi ) {
- int startcnt;
-
- if ( dsi == NULL )
-return( gd );
-
- _DStemInfoToStemData( gd,dsi,&startcnt );
- AssignPointsToStems( gd,startcnt,NULL );
-return( gd );
-}
-
-static void _StemInfoToStemData( struct glyphdata *gd,StemInfo *si,DBounds *bounds,int is_v,int *startcnt ) {
- struct stemdata *stem;
- BasePoint dir,left,right;
-
- dir.x = !is_v; dir.y = is_v;
- if ( gd->stems == NULL ) {
- gd->stems = calloc( 2*gd->pcnt,sizeof( struct stemdata ));
- gd->stemcnt = 0;
- }
- *startcnt = gd->stemcnt;
-
- while ( si != NULL ) {
- left.x = ( is_v ) ? si->start : 0;
- left.y = ( is_v ) ? 0 : si->start + si->width;
- right.x = ( is_v ) ? si->start + si->width : 0;
- right.y = ( is_v ) ? 0 : si->start;
- stem = NewStem( gd,&dir,&left,&right );
- stem->ghost = si->ghost;
- if (( is_v &&
- left.x >= bounds->minx && left.x < bounds->minx + dist_error_hv &&
- right.x > bounds->maxx - dist_error_hv && right.x <= bounds->maxx ) ||
- ( !is_v &&
- right.y >= bounds->miny && right.y < bounds->miny + dist_error_hv &&
- left.y > bounds->maxy - dist_error_hv && left.y <= bounds->maxy ))
- stem->bbox = true;
- stem->positioned = true;
- si = si->next;
- }
-}
-
-struct glyphdata *StemInfoToStemData( struct glyphdata *gd,StemInfo *si,int is_v ) {
- DBounds bounds;
- int startcnt;
-
- if ( si == NULL )
-return( gd );
-
- SplineCharFindBounds( gd->sc,&bounds );
- _StemInfoToStemData( gd,si,&bounds,is_v,&startcnt );
-
- AssignPointsToStems( gd,startcnt,&bounds );
-return( gd );
-}
-
-static int ValidConflictingStem( struct stemdata *stem1,struct stemdata *stem2 ) {
- int x_dir = fabs( stem1->unit.y ) > fabs( stem1->unit.x );
- double s1, e1, s2, e2, temp;
-
- s1 = (&stem1->left.x)[!x_dir] -
- ((&stem1->left.x)[x_dir] * (&stem1->unit.x)[!x_dir] )/(&stem1->unit.x)[x_dir];
- e1 = (&stem1->right.x)[!x_dir] -
- ((&stem1->right.x)[x_dir] * (&stem1->unit.x)[!x_dir] )/(&stem1->unit.x)[x_dir];
- s2 = (&stem2->left.x)[!x_dir] -
- ((&stem2->left.x)[x_dir] * (&stem2->unit.x)[!x_dir] )/(&stem2->unit.x)[x_dir];
- e2 = (&stem2->right.x)[!x_dir] -
- ((&stem2->right.x)[x_dir] * (&stem2->unit.x)[!x_dir] )/(&stem2->unit.x)[x_dir];
-
- if ( s1 > e1 ) {
- temp = s1; s1 = e1; e1 = temp;
- }
- if ( s2 > e2 ) {
- temp = s2; s2 = e2; e2 = temp;
- }
- /* If stems don't overlap, then there is no conflict here */
- if ( s2 >= e1 || s1 >= e2 )
-return( false );
-
- /* Stems which have no points assigned cannot be valid masters for */
- /* other stems (however there is a notable exception for ghost hints) */
- if (( stem1->lpcnt > 0 || stem1->rpcnt > 0 ) &&
- stem2->lpcnt == 0 && stem2->rpcnt == 0 && !stem2->ghost )
-return( false );
-
- /* Bounding box stems are always preferred */
- if ( stem1->bbox && !stem2->bbox )
-return( false );
-
- /* Stems associated with blue zones always preferred to any other stems */
- if ( stem1->blue >=0 && stem2->blue < 0 )
-return( false );
- /* Don't attempt to handle together stems, linked to different zones */
- if ( stem1->blue >=0 && stem2->blue >= 0 && stem1->blue != stem2->blue )
-return( false );
- /* If both stems are associated with a blue zone, but one of them is for */
- /* a ghost hint, then that stem is preferred */
- if ( stem1->ghost && !stem2->ghost )
-return( false );
-
-return( true );
-}
-
-static int HasDependentStem( struct stemdata *master,struct stemdata *slave ) {
- int i;
- struct stemdata *tstem;
-
- if ( slave->master != NULL && master->dep_cnt > 0 ) {
- for ( i=0; i<master->dep_cnt; i++ ) {
- tstem = master->dependent[i].stem;
- if ( tstem == slave || HasDependentStem( tstem,slave ))
-return( true );
- }
- }
-return( false );
-}
-
-static int PreferEndDep( struct stemdata *stem,
- struct stemdata *smaster,struct stemdata *emaster,char s_type,char e_type ) {
-
- int hv = IsUnitHV( &stem->unit,true );
- double sdist, edist;
-
- if ( !hv )
-return( false );
-
- if (( s_type == 'a' && e_type != 'a' ) || ( s_type == 'm' && e_type == 'i' ))
-return( false );
- else if (( e_type == 'a' && s_type != 'a' ) || ( e_type == 'm' && s_type == 'i' ))
-return( true );
-
- if ( s_type == 'm' && s_type == e_type ) {
- sdist = ( hv==1 ) ?
- fabs( smaster->right.y - stem->right.y ) :
- fabs( smaster->left.x - stem->left.x );
- edist = ( hv==1 ) ?
- fabs( emaster->left.y - stem->left.y ) :
- fabs( emaster->right.x - stem->right.x );
-return( edist < sdist );
- } else
-return( emaster->clen > smaster->clen );
-}
-
-static void LookForMasterHVStem( struct stemdata *stem,BlueData *bd ) {
- struct stemdata *tstem, *smaster=NULL, *emaster=NULL;
- struct stembundle *bundle = stem->bundle;
- double start, end, tstart, tend;
- double ssdist, sedist, esdist, eedist;
- double smin, smax, emin, emax, tsmin, tsmax, temin, temax;
- int is_x, i, link_to_s, stype, etype, allow_s, allow_e;
-
- is_x = ( bundle->unit.x == 1 );
- if ( is_x ) {
- start = stem->right.y; end = stem->left.y;
- smin = start - stem->rmin - 2*dist_error_hv;
- smax = start - stem->rmax + 2*dist_error_hv;
- emin = end - stem->lmin - 2*dist_error_hv;
- emax = end - stem->lmax + 2* dist_error_hv;
- } else {
- start = stem->left.x; end = stem->right.x;
- smin = start + stem->lmax - 2*dist_error_hv;
- smax = start + stem->lmin + 2*dist_error_hv;
- emin = end + stem->rmax - 2*dist_error_hv;
- emax = end + stem->rmin + 2*dist_error_hv;
- }
- start = ( is_x ) ? stem->right.y : stem->left.x;
- end = ( is_x ) ? stem->left.y : stem->right.x;
- stype = etype = '\0';
-
- for ( i=0; i<bundle->cnt; i++ ) {
- tstem = bundle->stemlist[i];
- if ( is_x ) {
- tstart = tstem->right.y; tend = tstem->left.y;
- tsmin = tstart - tstem->rmin - 2*dist_error_hv;
- tsmax = tstart - tstem->rmax + 2*dist_error_hv;
- temin = tend - tstem->lmin - 2*dist_error_hv;
- temax = tend - tstem->lmax + 2* dist_error_hv;
- } else {
- tstart = tstem->left.x; tend = tstem->right.x;
- tsmin = tstart + tstem->lmax - 2*dist_error_hv;
- tsmax = tstart + tstem->lmin + 2*dist_error_hv;
- temin = tend + tstem->rmax - 2*dist_error_hv;
- temax = tend + tstem->rmin + 2*dist_error_hv;
- }
- tstart = ( is_x ) ? tstem->right.y : tstem->left.x;
- tend = ( is_x ) ? tstem->left.y : tstem->right.x;
-
- /* In this loop we are looking if the given stem has conflicts with */
- /* other stems and if anyone of those conflicting stems should */
- /* take precedence over it */
- if ( stem == tstem || tend < start || tstart > end ||
- !ValidConflictingStem( stem,tstem ) || HasDependentStem( stem,tstem ))
- continue;
- /* Usually in case of conflicts we prefer the stem with longer active */
- /* zones. However a stem linked to a blue zone is always preferred to */
- /* a stem which is not, and ghost hints are preferred to any other */
- /* stems */
- if ( stem->clen > tstem->clen && ValidConflictingStem( tstem,stem ))
- continue;
-
- stem->confl_cnt++;
-
- /* If the master stem is for a ghost hint or both the stems are */
- /* linked to the same blue zone, then we can link only to the edge */
- /* which fall into the blue zone */
- allow_s = ( !tstem->ghost || tstem->width == 21 ) &&
- ( stem->blue == -1 || stem->blue != tstem->blue || bd->blues[stem->blue][0] < 0 );
- allow_e = ( !tstem->ghost || tstem->width == 20 ) &&
- ( stem->blue == -1 || stem->blue != tstem->blue || bd->blues[stem->blue][0] > 0 );
-
- /* Assume there are two stems which have (almost) coincident left edges. */
- /* The hinting technique for this case is to merge all points found on */
- /* those coincident edges together, position them, and then link to the */
- /* opposite edges. */
- /* However we don't allow merging if both stems can be snapped to a blue */
- /* zone, unless their edges are _exactly_ coincident, as shifting features */
- /* relatively to each other instead of snapping them to the same zone would */
- /* obviously be wrong */
- if ( allow_s && tstart > smin && tstart < smax && start > tsmin && start < tsmax &&
- ( stem->blue == -1 || RealNear( tstart,start ))) {
-
- if ( smaster == NULL || stype != 'a' || smaster->clen < tstem->clen ) {
- smaster = tstem;
- stype = 'a';
- }
- /* The same case for right edges */
- } else if ( allow_e && tend > emin && tend < emax && end > temin && end < temax &&
- ( stem->blue == -1 || RealNear( tend,end ))) {
-
- if ( emaster == NULL || etype != 'a' || emaster->clen < tstem->clen ) {
- emaster = tstem;
- etype = 'a';
- }
-
- /* Nested stems. I first planned to handle them by positioning the */
- /* narrower stem first, and then linking its edges to the opposed edges */
- /* of the nesting stem. But this works well only in those cases where */
- /* maintaining the dependent stem width is not important. So now the */
- /* situations where a narrower or a wider stem can be preferred */
- /* (because it has longer active zones) are equally possible. In the */
- /* first case I link to the master stem just one edge of the secondary */
- /* stem, just like with overlapping stems */
- } else if ( tstart > start && tend < end ) {
- if ( allow_s && ( smaster == NULL || stype == 'i' ||
- ( stype == 'm' && smaster->clen < tstem->clen ))) {
-
- smaster = tstem;
- stype = 'm';
- }
- if ( allow_e && ( emaster == NULL || etype == 'i' ||
- ( etype == 'm' && emaster->clen < tstem->clen ))) {
-
- emaster = tstem;
- etype = 'm';
- }
- /* However if we have to prefer the nesting stem, we do as with */
- /* overlapping stems which require interpolations, i. e. interpolate */
- /* one edge and link to another */
- } else if ( tstart < start && tend > end ) {
- link_to_s = ( allow_s && ( start - tstart < tend - end ));
- if ( link_to_s && ( smaster == NULL ||
- ( stype == 'i' && smaster->clen < tstem->clen ))) {
- smaster = tstem;
- stype = 'i';
- } else if ( !link_to_s && ( emaster == NULL ||
- ( etype == 'i' && emaster->clen < tstem->clen ))) {
- emaster = tstem;
- etype = 'i';
- }
- /* Overlapping stems. Here we first check all 4 distances between */
- /* 4 stem edges. If the closest distance is between left or right */
- /* edges, then the normal technique (in TrueType) is linking them */
- /* with MDRP without maintaining a minimum distance. Otherwise */
- /* we interpolate an edge of the "slave" stem between already */
- /* positioned edges of the "master" stem, and then gridfit it */
- } else if (( tstart < start && start < tend && tend < end ) ||
- ( start < tstart && tstart < end && end < tend )) {
-
- ssdist = fabs( start - tstart );
- sedist = fabs( start - tend );
- esdist = fabs( end - tstart );
- eedist = fabs( end - tend );
-
- if ( allow_s && ( !allow_e ||
- ( stem->width < tstem->width/3 && ssdist < eedist ) ||
- ( ssdist <= eedist && ssdist <= sedist && ssdist <= esdist )) &&
- ( smaster == NULL || ( stype == 'i' ||
- ( stype == 'm' && smaster->clen < tstem->clen )))) {
-
- smaster = tstem;
- stype = 'm';
- } else if ( allow_e && ( !allow_s ||
- ( stem->width < tstem->width/3 && eedist < ssdist ) ||
- ( eedist <= ssdist && eedist <= sedist && eedist <= esdist )) &&
- ( emaster == NULL || ( etype == 'i' ||
- ( etype == 'm' && emaster->clen < tstem->clen )))) {
-
- emaster = tstem;
- etype = 'm';
- } else if ( allow_s && allow_e && ( smaster == NULL ||
- ( stype == 'i' && smaster->clen < tstem->clen )) &&
- sedist <= esdist && sedist <= ssdist && sedist <= eedist ) {
-
- smaster = tstem;
- stype = 'i';
- } else if ( allow_s && allow_e && ( emaster == NULL ||
- ( etype == 'i' && emaster->clen < tstem->clen )) &&
- esdist <= sedist && esdist <= ssdist && esdist <= eedist ) {
-
- emaster = tstem;
- etype = 'i';
- }
- }
- }
- if ( smaster != NULL && emaster != NULL ) {
- if ( PreferEndDep( stem,smaster,emaster,stype,etype ))
- smaster = NULL;
- else
- emaster = NULL;
- }
-
- if ( smaster != NULL ) {
- stem->master = smaster;
- if ( smaster->dependent == NULL )
- smaster->dependent = calloc( bundle->cnt*2,sizeof( struct dependent_stem ));
- smaster->dependent[smaster->dep_cnt].stem = stem;
- smaster->dependent[smaster->dep_cnt].dep_type = stype;
- smaster->dependent[smaster->dep_cnt++].lbase = !is_x;
- } else if ( emaster != NULL ) {
- stem->master = emaster;
- if ( emaster->dependent == NULL )
- emaster->dependent = calloc( bundle->cnt*2,sizeof( struct dependent_stem ));
- emaster->dependent[emaster->dep_cnt ].stem = stem;
- emaster->dependent[emaster->dep_cnt ].dep_type = etype;
- emaster->dependent[emaster->dep_cnt++].lbase = is_x;
- }
-}
-
-/* If a stem has been considered depending from another stem which in */
-/* its turn has its own "master", and the first stem doesn't conflict */
-/* with the "master" of the stem it overlaps (or any other stems), then */
-/* this dependency is unneeded and processing it in the autoinstructor */
-/* can even lead to undesired effects. Unfortunately we can't prevent */
-/* detecting such dependecies in LookForMasterHVStem(), because we */
-/* need to know the whole stem hierarchy first. So look for undesired */
-/* dependencies and clean them now */
-static void ClearUnneededDeps( struct stemdata *stem ) {
- struct stemdata *master;
- int i, j;
-
- if ( stem->confl_cnt == 1 &&
- ( master = stem->master ) != NULL && master->master != NULL ) {
-
- stem->master = NULL;
- for ( i=j=0; i<master->dep_cnt; i++ ) {
- if ( j<i )
- memcpy( &master->dependent[i-1],&master->dependent[i],
- sizeof( struct dependent_stem ));
- if ( master->dependent[i].stem != stem ) j++;
- }
- (master->dep_cnt)--;
- }
-}
-
-static void GDBundleStems( struct glyphdata *gd, int maxtoobig, int needs_deps ) {
- struct stemdata *stem, *tstem;
- int i, j, k, hv, hasl, hasr, stem_cnt;
- struct pointdata *lpd, *rpd;
- double dmove;
- DBounds bounds;
-
- /* Some checks for undesired stems which we couldn't do earlier */
-
- /* First filter out HV stems which have only "potential" points */
- /* on their left or right edge. Such stems aren't supposed to be */
- /* used for PS hinting, so we mark them as "too big" */
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- hasl = false; hasr = false;
-
- if ( IsUnitHV( &stem->unit,true ) &&
- !stem->toobig && !stem->ghost && !stem->positioned ) {
- for ( j=0; j<stem->chunk_cnt && ( !hasl || !hasr ); ++j ) {
- if ( stem->chunks[j].l!=NULL && !stem->chunks[j].lpotential )
- hasl = true;
- if ( stem->chunks[j].r!=NULL && !stem->chunks[j].rpotential )
- hasr = true;
- }
- if ( !hasl || !hasr )
- stem->toobig = true;
- }
- }
-
- /* Filter out HV stems which have both their edges controlled by */
- /* other, narrower HV stems */
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- hv = IsUnitHV( &stem->unit,true );
-
- if ( IsUnitHV( &stem->unit,true )) {
- hasl = hasr = false;
- for ( j=0; j<stem->chunk_cnt; ++j ) {
- lpd = stem->chunks[j].l;
- rpd = stem->chunks[j].r;
- if ( lpd != NULL ) {
- stem_cnt = ( stem->chunks[j].lnext ) ? lpd->nextcnt : lpd->prevcnt;
- for ( k=0; k<stem_cnt; k++ ) {
- tstem = ( stem->chunks[j].lnext ) ?
- lpd->nextstems[k] : lpd->prevstems[k];
- /* Used to test tstem->toobig <= stem->toobig, but got into troubles with */
- /* a weird terminal stem preventing a ball terminal from being properly detected, */
- /* because both the stems initially have toobig == 1. */
- /* See the "f" from Heuristica-Italic */
- if ( tstem != stem &&
- !tstem->toobig && tstem->positioned >= stem->positioned &&
- tstem->width < stem->width && hv == IsUnitHV( &tstem->unit,true )) {
- hasl = true;
- break;
- }
- }
- }
- if ( rpd != NULL ) {
- stem_cnt = ( stem->chunks[j].rnext ) ? rpd->nextcnt : rpd->prevcnt;
- for ( k=0; k<stem_cnt; k++ ) {
- tstem = ( stem->chunks[j].rnext ) ?
- rpd->nextstems[k] : rpd->prevstems[k];
- if ( tstem != stem &&
- !tstem->toobig && tstem->positioned >= stem->positioned &&
- tstem->width < stem->width && hv == IsUnitHV( &tstem->unit,true )) {
- hasr = true;
- break;
- }
- }
- }
- if ( hasl && hasr ) {
- stem->toobig = 2;
- break;
- }
- }
- }
- }
-
- gd->hbundle = calloc( 1,sizeof( struct stembundle ));
- gd->hbundle->stemlist = calloc( gd->stemcnt,sizeof( struct stemdata *));
- gd->hbundle->unit.x = 1; gd->hbundle->unit.y = 0;
- gd->hbundle->l_to_r.x = 0; gd->hbundle->l_to_r.y = -1;
-
- gd->vbundle = calloc( 1,sizeof( struct stembundle ));
- gd->vbundle->stemlist = calloc( gd->stemcnt,sizeof( struct stemdata *));
- gd->vbundle->unit.x = 0; gd->vbundle->unit.y = 1;
- gd->vbundle->l_to_r.x = 1; gd->vbundle->l_to_r.y = 0;
-
- if ( gd->has_slant && !gd->only_hv ) {
- SplineCharFindBounds( gd->sc,&bounds );
-
- gd->ibundle = calloc( 1,sizeof( struct stembundle ));
- gd->ibundle->stemlist = calloc( gd->stemcnt,sizeof( struct stemdata *));
- gd->ibundle->unit.x = gd->slant_unit.x;
- gd->ibundle->unit.y = gd->slant_unit.y;
- gd->ibundle->l_to_r.x = -gd->ibundle->unit.y;
- gd->ibundle->l_to_r.y = gd->ibundle->unit.x;
- }
-
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( stem->toobig > maxtoobig )
- continue;
- hv = IsUnitHV( &stem->unit,true );
-
- if ( hv == 1 ) {
- gd->hbundle->stemlist[(gd->hbundle->cnt)++] = stem;
- stem->bundle = gd->hbundle;
- } else if ( hv == 2 ) {
- gd->vbundle->stemlist[(gd->vbundle->cnt)++] = stem;
- stem->bundle = gd->vbundle;
- } else if ( gd->has_slant && !gd->only_hv &&
- RealNear( stem->unit.x,gd->slant_unit.x ) &&
- RealNear( stem->unit.y,gd->slant_unit.y )) {
-
- /* Move base point coordinates to the baseline to simplify */
- /* stem ordering and positioning relatively to each other */
- stem->left.x -= (( stem->left.y - bounds.miny ) * stem->unit.x )/stem->unit.y;
- stem->right.x -= (( stem->right.y - bounds.miny ) * stem->unit.x )/stem->unit.y;
- dmove = ( stem->left.y - bounds.miny ) / stem->unit.y;
- stem->left.y = stem->right.y = bounds.miny;
- for ( j=0; j<stem->activecnt; j++ ) {
- stem->active[j].start += dmove;
- stem->active[j].end += dmove;
- }
-
- gd->ibundle->stemlist[(gd->ibundle->cnt)++] = stem;
- stem->bundle = gd->ibundle;
- stem->italic = true;
- }
- }
- qsort( gd->hbundle->stemlist,gd->hbundle->cnt,sizeof( struct stemdata *),stem_cmp );
- qsort( gd->vbundle->stemlist,gd->vbundle->cnt,sizeof( struct stemdata *),stem_cmp );
- if ( gd->has_slant && !gd->only_hv )
- qsort( gd->ibundle->stemlist,gd->ibundle->cnt,sizeof( struct stemdata *),stem_cmp );
-
- if ( !needs_deps )
-return;
- for ( i=0; i<gd->hbundle->cnt; i++ )
- LookForMasterHVStem( gd->hbundle->stemlist[i],&gd->bd );
- for ( i=0; i<gd->hbundle->cnt; i++ )
- ClearUnneededDeps( gd->hbundle->stemlist[i] );
- for ( i=0; i<gd->vbundle->cnt; i++ )
- LookForMasterHVStem( gd->vbundle->stemlist[i],&gd->bd );
- for ( i=0; i<gd->vbundle->cnt; i++ )
- ClearUnneededDeps( gd->vbundle->stemlist[i] );
-}
-
-static void AddSerifOrBall( struct glyphdata *gd,
- struct stemdata *master,struct stemdata *slave,int lbase,int is_ball ) {
-
- struct dependent_serif *tserif;
- struct pointdata *spd;
- double width, min, max;
- int i, j, scnt, next;
-
- if ( lbase ) {
- width = fabs(
- ( slave->right.x - master->left.x ) * master->unit.y -
- ( slave->right.y - master->left.y ) * master->unit.x );
- max = width + slave->rmin + 2*dist_error_hv;
- min = width + slave->rmax - 2*dist_error_hv;
- } else {
- width = fabs(
- ( master->right.x - slave->left.x ) * master->unit.y -
- ( master->right.y - slave->left.y ) * master->unit.x );
- max = width - slave->lmax + 2*dist_error_hv;
- min = width - slave->lmin - 2*dist_error_hv;
- }
-
- scnt = master->serif_cnt;
- for ( i=0; i<scnt; i++ ) {
- tserif = &master->serifs[i];
- if ( tserif->stem == slave && tserif->lbase == lbase )
- break;
- else if ( tserif->width > min && tserif->width < max && tserif->lbase == lbase ) {
- for ( j=0; j<slave->chunk_cnt; j++ ) {
- spd = ( lbase ) ? slave->chunks[j].r : slave->chunks[j].l;
- next = ( lbase ) ? slave->chunks[j].rnext : slave->chunks[j].lnext;
- if ( spd != NULL && IsStemAssignedToPoint( spd,tserif->stem,next ) == -1 )
- AddToStem( gd,tserif->stem,spd,NULL,next,false,false );
- }
- break;
- }
- }
- if ( i<master->serif_cnt )
-return;
-
- master->serifs = realloc(
- master->serifs,( scnt+1 )*sizeof( struct dependent_serif ));
- master->serifs[scnt].stem = slave;
- master->serifs[scnt].width = width;
- master->serifs[scnt].lbase = lbase;
- master->serifs[scnt].is_ball = is_ball;
- master->serif_cnt++;
-
- /* Mark the dependent stem as related with a bundle, although it */
- /* is not listed in that bundle itself */
- slave->bundle = master->bundle;
-}
-
-static int IsBall( struct glyphdata *gd,
- struct pointdata *pd,struct stemdata *master,int lbase ) {
-
- double max, min, dot, coord;
- BasePoint *lbp, *rbp, *dir;
- Spline *test;
- struct pointdata *nbase, *pbase, *tpd;
- struct stem_chunk *chunk;
- int i, is_x, peak_passed;
-
- if ( pd == NULL || ( pd->x_extr != 1 && pd->y_extr != 1 ))
-return( false );
-
- is_x = ( IsUnitHV( &master->unit,true ) == 1 );
- lbp = ( lbase ) ? &master->left : &pd->base;
- rbp = ( lbase ) ? &pd->base : &master->right;
- min = ( is_x ) ? rbp->y : lbp->x;
- max = ( is_x ) ? lbp->y : rbp->x;
-
- peak_passed = false;
- nbase = pbase = NULL;
- test = pd->sp->next;
- dir = &pd->nextunit;
-
- if ( test != NULL ) do {
- tpd = &gd->points[test->to->ptindex];
- if ( IsStemAssignedToPoint( tpd,master,true ) != -1 ) {
- nbase = tpd;
- break;
- }
- coord = ( is_x ) ? tpd->base.y : tpd->base.x;
- dot = tpd->nextunit.x * dir->x + tpd->nextunit.y * dir->y;
- if ( dot == 0 && !peak_passed ) {
- dir = &tpd->nextunit;
- dot = 1.0;
- peak_passed = true;
- }
- test = test->to->next;
- } while ( test != NULL && test != pd->sp->next && dot > 0 &&
- coord >= min && coord <= max );
-
- peak_passed = false;
- test = pd->sp->prev;
- dir = &pd->prevunit;
- if ( test != NULL ) do {
- tpd = &gd->points[test->from->ptindex];
- if ( IsStemAssignedToPoint( tpd,master,false ) != -1 ) {
- pbase = tpd;
- break;
- }
- coord = ( is_x ) ? tpd->base.y : tpd->base.x;
- dot = tpd->prevunit.x * dir->x + tpd->prevunit.y * dir->y;
- if ( dot == 0 && !peak_passed ) {
- dir = &tpd->prevunit;
- dot = 1.0;
- peak_passed = true;
- }
- test = test->from->prev;
- } while ( test != NULL && test != pd->sp->prev && dot > 0 &&
- coord >= min && coord <= max );
-
- if ( nbase != NULL && pbase != NULL ) {
- for ( i=0; i<master->chunk_cnt; i++ ) {
- chunk = &master->chunks[i];
- if (( chunk->l == nbase && chunk->r == pbase ) ||
- ( chunk->l == pbase && chunk->r == nbase ))
-return( true );
- }
- }
-return( false );
-}
-
-static void GetSerifData( struct glyphdata *gd,struct stemdata *stem ) {
- int i, j, is_x, stem_cnt;
- int snext, enext, eidx, allow_s, allow_e, s_ball, e_ball;
- struct stem_chunk *chunk;
- struct stemdata *tstem, *smaster=NULL, *emaster=NULL;
- struct pointdata *spd, *epd;
- struct stembundle *bundle;
- double start, end, tstart, tend, smend, emstart;
-
- is_x = ( IsUnitHV( &stem->unit,true ) == 1 );
- bundle = ( is_x ) ? gd->hbundle : gd->vbundle;
- start = ( is_x ) ? stem->right.y : stem->left.x;
- end = ( is_x ) ? stem->left.y : stem->right.x;
-
- allow_s = allow_e = true;
- s_ball = e_ball = 0;
- for ( i=0; i<stem->chunk_cnt && ( allow_s == true || allow_e == true ); i++ ) {
- chunk = &stem->chunks[i];
- spd = ( is_x ) ? chunk->r : chunk->l;
- snext = ( is_x ) ? chunk->rnext : chunk->lnext;
- epd = ( is_x ) ? chunk->l : chunk->r;
- enext = ( is_x ) ? chunk->lnext : chunk->rnext;
-
- if ( spd != NULL && allow_e ) {
- stem_cnt = ( snext ) ? spd->nextcnt : spd->prevcnt;
- for ( j=0; j<stem_cnt; j++ ) {
- tstem = ( snext ) ? spd->nextstems[j] : spd->prevstems[j];
- if (RealNear( tstem->unit.x,stem->unit.x ) && RealNear( tstem->unit.y,stem->unit.y ) &&
- !tstem->toobig ) {
- chunk->is_ball = e_ball = IsBall( gd,epd,tstem,!is_x );
- if ( e_ball ) {
- chunk->ball_m = tstem;
- emaster = tstem;
- emstart = ( is_x ) ? tstem->right.y : tstem->left.x;
- }
- allow_s = false;
- }
- }
-
- }
- if ( epd != NULL && allow_s ) {
- stem_cnt = ( enext ) ? epd->nextcnt : epd->prevcnt;
- for ( j=0; j<stem_cnt; j++ ) {
- tstem = ( enext ) ? epd->nextstems[j] : epd->prevstems[j];
- if (tstem->unit.x == stem->unit.x && tstem->unit.y == stem->unit.y &&
- !tstem->toobig ) {
- chunk->is_ball = s_ball = IsBall( gd,spd,tstem,is_x );
- if ( s_ball ) {
- chunk->ball_m = tstem;
- smaster = tstem;
- smend = ( is_x ) ? tstem->left.y : tstem->right.x;
- }
- allow_e = false;
- }
- }
-
- }
- }
-
- for ( i=0; i<bundle->cnt; i++ ) {
- tstem = bundle->stemlist[i];
- if (tstem->unit.x != stem->unit.x || tstem->unit.y != stem->unit.y ||
- tstem->toobig || tstem->width >= stem->width )
- continue;
-
- tstart = ( is_x ) ? tstem->right.y : tstem->left.x;
- tend = ( is_x ) ? tstem->left.y : tstem->right.x;
-
- if ( tstart >= start && tend <= end ) {
- if ( allow_s && tstart > start ) {
- for ( j=0; j<tstem->chunk_cnt && smaster != tstem; j++ ) {
- if ( is_x ) {
- spd = tstem->chunks[j].l;
- snext = tstem->chunks[j].lnext;
- eidx = tstem->chunks[j].l_e_idx;
- } else {
- spd = tstem->chunks[j].r;
- snext = tstem->chunks[j].rnext;
- eidx = tstem->chunks[j].r_e_idx;
- }
- if ( spd != NULL && ConnectsAcrossToStem( gd,spd,snext,stem,is_x,eidx ) &&
- ( smaster == NULL || smend - start > tend - start )) {
- smaster = tstem;
- smend = tend;
- }
- }
- }
- if ( allow_e && tend < end ) {
- for ( j=0; j<tstem->chunk_cnt && emaster != tstem; j++ ) {
- if ( is_x ) {
- epd = tstem->chunks[j].r;
- enext = tstem->chunks[j].rnext;
- eidx = tstem->chunks[j].r_e_idx;
- } else {
- epd = tstem->chunks[j].l;
- enext = tstem->chunks[j].lnext;
- eidx = tstem->chunks[j].l_e_idx;
- }
- if ( epd != NULL && ConnectsAcrossToStem( gd,epd,enext,stem,!is_x,eidx ) &&
- ( emaster == NULL || end - emstart > end - tstart )) {
- emaster = tstem;
- emstart = tstart;
- }
- }
- }
- }
- }
- if ( smaster != NULL )
- AddSerifOrBall( gd,smaster,stem,is_x,s_ball );
- if ( emaster != NULL )
- AddSerifOrBall( gd,emaster,stem,!is_x,e_ball );
-}
-
-static double ActiveOverlap( struct stemdata *stem1,struct stemdata *stem2 ) {
- int is_x, i, j = 0;
- double base1, base2, s1, e1, s2, e2, s, e, len = 0;
-
- is_x = ( IsUnitHV( &stem1->unit,true ) == 2 );
- base1 = ( &stem1->left.x )[is_x];
- base2 = ( &stem2->left.x )[is_x];
-
- for ( i=0; i<stem1->activecnt; i++ ) {
- s1 = base1 + stem1->active[i].start;
- e1 = base1 + stem1->active[i].end;
- for ( ; j<stem2->activecnt; j++ ) {
- s2 = base2 + stem2->active[j].start;
- e2 = base2 + stem2->active[j].end;
- if ( s2 > e1 )
- break;
-
- if ( e2 < s1 )
- continue;
-
- s = s2 < s1 ? s1 : s2;
- e = e2 > e1 ? e1 : e2;
- if ( e<s )
- continue; /* Shouldn't happen */
- len += e - s;
- }
- }
-return( len );
-}
-
-static int StemPairsSimilar( struct stemdata *s1, struct stemdata *s2,
- struct stemdata *ts1, struct stemdata *ts2 ) {
-
- int normal, reversed, ret = 0;
- double olen1, olen2;
-
- /* Stem widths in the second pair should be nearly the same as */
- /* stem widths in the first pair */
- normal = ( ts1->width >= s1->width - dist_error_hv &&
- ts1->width <= s1->width + dist_error_hv &&
- ts2->width >= s2->width - dist_error_hv &&
- ts2->width <= s2->width + dist_error_hv );
- reversed = (ts1->width >= s2->width - dist_error_hv &&
- ts1->width <= s2->width + dist_error_hv &&
- ts2->width >= s1->width - dist_error_hv &&
- ts2->width <= s1->width + dist_error_hv );
-
- if ( !normal && !reversed )
-return( false );
-
- if ( normal ) {
- olen1 = ActiveOverlap( s1, ts1 );
- olen2 = ActiveOverlap( s2, ts2 );
- ret = olen1 > s1->clen/3 && olen1 > ts1->clen/3 &&
- olen2 > s2->clen/3 && olen2 > ts2->clen/3;
- } else if ( reversed ) {
- olen1 = ActiveOverlap( s1, ts2 );
- olen2 = ActiveOverlap( s2, ts1 );
- ret = olen1 > s1->clen/3 && olen1 > ts2->clen/3 &&
- olen2 > s2->clen/3 && olen2 > ts1->clen/3;
- }
-return( ret );
-}
-
-static void FindCounterGroups( struct glyphdata *gd,int is_v ) {
- struct stembundle *bundle = is_v ? gd->vbundle : gd->hbundle;
- struct stemdata *curm, *prevm, *cur, *prev;
- int i, j;
- double mdist, dist;
-
- prevm = NULL;
- for ( i=0; i<bundle->cnt; i++ ) {
- curm = prev = bundle->stemlist[i];
- if ( curm->master != NULL )
- continue;
- if ( prevm == NULL || curm->prev_c_m != NULL ) {
- prevm = curm;
- continue;
- }
- mdist = is_v ? curm->left.x - prevm->right.x : curm->right.y - prevm->left.y;
- for ( j=i+1; j<bundle->cnt; j++ ) {
- cur = bundle->stemlist[j];
- if ( cur->master != NULL )
- continue;
- if ( cur->prev_c_m != NULL ) {
- prev = cur;
- continue;
- }
-
- dist = is_v ? cur->left.x - prev->right.x : cur->right.y - prev->left.y;
- if ( mdist > dist - dist_error_hv && mdist < dist + dist_error_hv &&
- StemPairsSimilar( prevm,curm,prev,cur )) {
- prev->next_c_m = prevm;
- cur->prev_c_m = curm;
- }
- prev = cur;
- }
- prevm = curm;
- }
-}
-
-/* Normally we use the DetectDiagonalStems flag (set via the Preferences dialog) to determine */
-/* if diagonal stems should be generated. However, sometimes it makes sense to reduce the */
-/* processing time, deliberately turning the diagonal stem detection off: in particular we */
-/* don't need any diagonal stems if we only want to assign points to some preexisting HV */
-/* hints. For thisreason the only_hv argument still can be passed to this function. */
-struct glyphdata *GlyphDataInit( SplineChar *sc,int layer,double em_size,int only_hv ) {
- struct glyphdata *gd;
- struct pointdata *pd;
- int i;
- SplineSet *ss;
- SplinePoint *sp;
- Monotonic *m;
- int cnt;
- double iangle;
-
- if ( layer<0 || layer>=sc->layer_cnt )
- return( NULL );
-
- /* We only hint one layer at a time */
- /* We shan't try to hint references yet */
- if ( sc->layers[layer].splines==NULL )
-return( NULL );
-
- gd = calloc( 1,sizeof( struct glyphdata ));
- gd->only_hv = only_hv;
- gd->layer = layer;
-
- gd->sc = sc;
- gd->sf = sc->parent;
- gd->emsize = em_size;
- gd->order2 = ( sc->parent != NULL ) ? sc->parent->layers[layer].order2 : false;
- gd->fuzz = GetBlueFuzz( sc->parent );
-
- dist_error_hv = .0035*gd->emsize;
- dist_error_diag = .0065*gd->emsize;
- dist_error_curve = .022*gd->emsize;
-
- if ( sc->parent != NULL && sc->parent->italicangle ) {
- iangle = ( 90 + sc->parent->italicangle );
- gd->has_slant = true;
- gd->slant_unit.x = cos( iangle * ( PI/180 ));
- gd->slant_unit.y = sin( iangle * ( PI/180 ));
- } else {
- gd->has_slant = false;
- gd->slant_unit.x = 0; gd->slant_unit.y = 1;
- }
-
- /* SSToMContours can clean up the splinesets (remove 0 length splines) */
- /* so it must be called BEFORE everything else (even though logically */
- /* that doesn't make much sense). Otherwise we might have a pointer */
- /* to something since freed */
- gd->ms = SSsToMContours(sc->layers[layer].splines,over_remove); /* second argument is meaningless here */
-
- gd->realcnt = gd->pcnt = SCNumberPoints( sc, layer );
- for ( i=0, ss=sc->layers[layer].splines; ss!=NULL; ss=ss->next, ++i );
- gd->ccnt = i;
- gd->contourends = malloc((i+1)*sizeof(int));
- for ( i=0, ss=sc->layers[layer].splines; ss!=NULL; ss=ss->next, ++i ) {
- SplinePoint *last;
- if ( ss->first->prev!=NULL )
- last = ss->first->prev->from;
- else
- last = ss->last;
- if ( last->ttfindex==0xffff )
- gd->contourends[i] = last->nextcpindex;
- else
- gd->contourends[i] = last->ttfindex;
- }
- gd->contourends[i] = -1;
-
- /* Create temporary point numbers for the implied points. We need this */
- /* for metafont if nothing else */
- for ( ss= sc->layers[layer].splines; ss!=NULL; ss = ss->next ) {
- for ( sp = ss->first; ; ) {
- if ( sp->ttfindex < gd->realcnt )
- sp->ptindex = sp->ttfindex;
- else if ( sp->ttfindex == 0xffff )
- sp->ptindex = gd->pcnt++;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==ss->first )
- break;
- }
- }
- gd->norefpcnt = gd->pcnt;
- /* And for 0xfffe points such as those used in glyphs with order2 glyphs */
- /* with references. */
- for ( ss = sc->layers[layer].splines; ss!=NULL; ss = ss->next ) {
- for ( sp = ss->first; ; ) {
- if ( sp->ttfindex == 0xfffe )
- sp->ptindex = gd->pcnt++;
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==ss->first )
- break;
- }
- }
- gd->pspace = malloc( gd->pcnt*sizeof( struct pointdata *));
-
- /*gd->ms = SSsToMContours(sc->layers[layer].splines,over_remove);*/ /* second argument is meaningless here */
- for ( m=gd->ms, cnt=0; m!=NULL; m=m->linked, ++cnt );
- gd->space = malloc((cnt+2)*sizeof(Monotonic*));
- gd->mcnt = cnt;
-
- gd->points = calloc(gd->pcnt,sizeof(struct pointdata));
- for ( ss=sc->layers[layer].splines; ss!=NULL; ss=ss->next ) if ( ss->first->prev!=NULL ) {
- for ( sp=ss->first; ; ) {
- PointInit( gd,sp,ss );
- if ( sp->next==NULL )
- break;
- sp = sp->next->to;
- if ( sp==ss->first )
- break;
- }
- }
-
- for ( i=0; i<gd->pcnt; ++i ) if ( gd->points[i].sp!=NULL ) {
- pd = &gd->points[i];
- if ( !pd->nextzero )
- pd->next_e_cnt = FindMatchingEdge(gd,pd,true,pd->nextedges);
- if ( !pd->prevzero )
- pd->prev_e_cnt = FindMatchingEdge(gd,pd,false,pd->prevedges);
- if (( pd->symetrical_h || pd->symetrical_v ) && ( pd->x_corner || pd->y_corner))
- FindMatchingEdge(gd,pd,2,&pd->bothedge);
- }
-
-return( gd );
-}
-
-struct glyphdata *GlyphDataBuild( SplineChar *sc,int layer, BlueData *bd,int use_existing ) {
- struct glyphdata *gd;
- struct pointdata *pd;
- struct stemdata *stem;
- BasePoint dir;
- struct stem_chunk *chunk;
- int i, j, only_hv, startcnt, stemcnt, ecnt, hv, has_h, has_v;
- double em_size;
- DBounds bounds;
-
- only_hv = ( !detect_diagonal_stems && ( !use_existing || sc->dstem == NULL ));
- em_size = ( sc->parent != NULL ) ? sc->parent->ascent + sc->parent->descent : 1000;
-
- gd = GlyphDataInit( sc,layer,em_size,only_hv );
- if ( gd == NULL )
-return( gd );
- /* Get the alignment zones */
- if ( bd == NULL )
- QuickBlues( gd->sf,gd->layer,&gd->bd );
- else
- memcpy( &gd->bd,bd,sizeof( BlueData ));
-
- /* There will never be more lines than there are points (counting next/prev as separate) */
- gd->lines = malloc( 2*gd->pcnt*sizeof( struct linedata ));
- gd->linecnt = 0;
- for ( i=0; i<gd->pcnt; ++i ) if ( gd->points[i].sp!=NULL ) {
- pd = &gd->points[i];
- if (( !gd->only_hv || pd->next_hor || pd->next_ver ) && pd->nextline==NULL ) {
- pd->nextline = BuildLine(gd,pd,true);
- if ( pd->colinear )
- pd->prevline = pd->nextline;
- }
- if (( !gd->only_hv || pd->prev_hor || pd->prev_ver ) && pd->prevline==NULL ) {
- pd->prevline = BuildLine(gd,pd,false);
- if ( pd->colinear && pd->nextline == NULL )
- pd->nextline = pd->prevline;
- }
- }
-
- /* There will never be more stems than there are points (counting next/prev as separate) */
- gd->stems = calloc( 2*gd->pcnt,sizeof( struct stemdata ));
- gd->stemcnt = 0; /* None used so far */
-
- if ( use_existing ) {
- SplineCharFindBounds( gd->sc,&bounds );
- if ( sc->vstem != NULL )
- _StemInfoToStemData( gd,sc->vstem,&bounds,true,&startcnt );
- if ( sc->hstem != NULL )
- _StemInfoToStemData( gd,sc->hstem,&bounds,false,&startcnt );
- if ( sc->dstem != NULL )
- _DStemInfoToStemData( gd,sc->dstem,&startcnt );
- }
-
- for ( i=0; i<gd->pcnt; ++i ) if ( gd->points[i].sp!=NULL ) {
- pd = &gd->points[i];
- if ( pd->prev_e_cnt > 0 ) {
- ecnt = BuildStem( gd,pd,false,false,use_existing,0 );
- if ( ecnt == 0 && pd->prev_e_cnt > 1 )
- BuildStem( gd,pd,false,false,false,1 );
- }
- if ( pd->next_e_cnt > 0 ) {
- ecnt = BuildStem( gd,pd,true,false,use_existing,0 );
- if ( ecnt == 0 && pd->next_e_cnt > 1 )
- BuildStem( gd,pd,true,false,false,1 );
- }
- if ( pd->bothedge!=NULL ) {
- DiagonalCornerStem( gd,pd,false );
- }
-
- /* Snap corner extrema to preexisting hints if they have not */
- /* already been. This is currently done only when preparing */
- /* glyph data for the autoinstructor */
- if ( use_existing && ( pd->x_corner || pd->y_corner )) {
- has_h = has_v = false;
- for ( j=0; j<pd->prevcnt && (( pd->x_corner && !has_v ) || ( pd->y_corner && !has_h )); j++ ) {
- hv = IsUnitHV( &pd->prevstems[j]->unit,true );
- if ( hv == 1 ) has_h = true;
- else if ( hv == 2 ) has_v = true;
- }
- for ( j=0; j<pd->nextcnt && (( pd->x_corner && !has_v ) || ( pd->y_corner && !has_h )); j++ ) {
- hv = IsUnitHV( &pd->nextstems[j]->unit,true );
- if ( hv == 1 ) has_h = true;
- else if ( hv == 2 ) has_v = true;
- }
- if ( pd->x_corner && !has_v ) {
- dir.x = 0; dir.y = 1;
- HalfStemNoOpposite( gd,pd,NULL,&dir,2 );
- } else if ( pd->y_corner && !has_h ) {
- dir.x = 1; dir.y = 0;
- HalfStemNoOpposite( gd,pd,NULL,&dir,2 );
- }
- }
- }
- AssignLinePointsToStems( gd );
-
- /* Normalize stems before calculating active zones (as otherwise */
- /* we don't know exact positions of stem edges */
- for ( i=0; i<gd->stemcnt; ++i )
- NormalizeStem( gd,&gd->stems[i] );
- GDNormalizeStubs( gd );
-
- /* Figure out active zones at the first order (as they are needed to */
- /* determine which stems are undesired and they don't depend from */
- /* the "potential" state of left/right points in chunks */
- gd->lspace = malloc(gd->pcnt*sizeof(struct segment));
- gd->rspace = malloc(gd->pcnt*sizeof(struct segment));
- gd->bothspace = malloc(3*gd->pcnt*sizeof(struct segment));
- gd->activespace = malloc(3*gd->pcnt*sizeof(struct segment));
-#if GLYPH_DATA_DEBUG
- fprintf( stderr,"Going to calculate stem active zones for %s\n",gd->sc->name );
-#endif
- for ( i=0; i<gd->stemcnt; ++i )
- FigureStemActive( gd,&gd->stems[i] );
-
- /* Check this before resolving stem conflicts, as otherwise we can */
- /* occasionally prefer a stem which should be excluded from the list */
- /* for some other reasons */
- GDFindUnlikelyStems( gd );
-
- /* we were cautious about assigning points to stems, go back now and see */
- /* if there are any low-quality matches which remain unassigned, and if */
- /* so then assign them to the stem they almost fit on. */
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- for ( j=0; j<stem->chunk_cnt; ++j ) {
- chunk = &stem->chunks[j];
- if ( chunk->l!=NULL && chunk->lpotential ) {
- stemcnt = ( chunk->lnext ) ? chunk->l->nextcnt : chunk->l->prevcnt;
- if ( stemcnt == 1 ) chunk->lpotential = false;
- }
- if ( chunk->r!=NULL && chunk->rpotential ) {
- stemcnt = ( chunk->rnext ) ? chunk->r->nextcnt : chunk->r->prevcnt;
- if ( stemcnt == 1 ) chunk->rpotential = false;
- }
- }
- }
- /* If there are multiple stems, find the one which is closest to this point */
- for ( i=0; i<gd->pcnt; ++i ) if ( gd->points[i].sp != NULL ) {
- pd = &gd->points[i];
- if ( pd->prevcnt > 1 ) CheckPotential( gd,pd,false );
- if ( pd->nextcnt > 1 ) CheckPotential( gd,pd,true );
- }
-
- if ( hint_bounding_boxes )
- CheckForBoundingBoxHints( gd );
- CheckForGhostHints( gd );
- if ( use_existing )
- MarkDStemCorners( gd );
-
- GDBundleStems( gd,0,use_existing );
- if ( use_existing ) {
- for ( i=0; i<gd->stemcnt; ++i ) {
- stem = &gd->stems[i];
- if ( stem->toobig == 1 && IsUnitHV( &stem->unit,true ))
- GetSerifData( gd,stem );
- }
- FindCounterGroups( gd,true );
- }
-
-#if GLYPH_DATA_DEBUG
- DumpGlyphData( gd );
-#endif
- free(gd->lspace); gd->lspace = NULL;
- free(gd->rspace); gd->rspace = NULL;
- free(gd->bothspace); gd->bothspace = NULL;
- free(gd->activespace); gd->activespace = NULL;
-
-return( gd );
-}
-
-void GlyphDataFree(struct glyphdata *gd) {
- int i;
- if ( gd == NULL )
-return;
-
- FreeMonotonics( gd->ms ); gd->ms = NULL;
- free( gd->space ); gd->space = NULL;
- free( gd->sspace ); gd->sspace = NULL;
- free( gd->stspace ); gd->stspace = NULL;
- free( gd->pspace ); gd->pspace = NULL;
-
- /* Clean up temporary point numbers */
- for ( i=0; i<gd->pcnt; ++i ) if ( gd->points[i].sp != NULL )
- gd->points[i].sp->ptindex = 0;
-
- if ( gd->hbundle != NULL ) {
- free( gd->hbundle->stemlist );
- free( gd->hbundle );
- }
- if ( gd->vbundle != NULL ) {
- free( gd->vbundle->stemlist );
- free( gd->vbundle );
- }
- if ( gd->ibundle != NULL ) {
- free( gd->ibundle->stemlist );
- free( gd->ibundle );
- }
-
- for ( i=0; i<gd->linecnt; ++i )
- free( gd->lines[i].points );
- for ( i=0; i<gd->stemcnt; ++i ) {
- free( gd->stems[i].chunks );
- free( gd->stems[i].dependent );
- free( gd->stems[i].serifs );
- free( gd->stems[i].active );
- }
- for ( i=0; i<gd->pcnt; ++i ) {
- free( gd->points[i].nextstems );
- free( gd->points[i].next_is_l );
- free( gd->points[i].prevstems );
- free( gd->points[i].prev_is_l );
- }
- free( gd->lines );
- free( gd->stems );
- free( gd->contourends );
- free( gd->points );
- free( gd );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/stemdb.h b/dviware/dvisvgm/libs/ff-woff/fontforge/stemdb.h
deleted file mode 100644
index 8e47572411..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/stemdb.h
+++ /dev/null
@@ -1,214 +0,0 @@
-/* Copyright (C) 2005-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _STEMDB_H_
-# define _STEMDB_H_
-
-# include "fontforge.h"
-
-struct segment {
- double start, end, sbase, ebase;
- int curved, scurved, ecurved;
-};
-
-typedef struct glyphdata {
- SplineFont *sf;
- BlueData bd;
- int fuzz;
- SplineChar *sc;
- int layer;
- int emsize;
- int order2;
- int has_slant;
- BasePoint slant_unit;
- int ccnt;
- int *contourends;
- int realcnt; /* Includes control points, excludes implied points */
- int norefpcnt; /* Does not include points in glyphs with references */
- int pcnt; /* Includes control points, includes implied points */
- struct pointdata *points; /* Entries corresponding to control points are empty */
- int stemcnt;
- struct stemdata *stems;
- int linecnt;
- struct linedata *lines;
- struct stembundle *hbundle;
- struct stembundle *vbundle;
- struct stembundle *ibundle;
-
- /* Temporary values, quickly freed */
- int mcnt;
- struct monotonic *ms;
- struct monotonic **space;
- int scnt;
- Spline **sspace;
- struct st *stspace;
- DBounds size;
- struct pointdata **pspace;
- struct segment *lspace, *rspace, *bothspace, *activespace;
-
- int only_hv;
-} GlyphData;
-
-typedef struct pointdata {
- SplinePoint *sp;
- SplineSet *ss;
- int ttfindex; /* normally same as sp->ttfindex, but needed for offcurve points */
- BasePoint base; /* normally same as sp->me, but needed for offcurve points */
- BasePoint nextunit, prevunit; /* unit vectors pointing in the next/prev directions */
- struct linedata *nextline, *prevline; /* any other points lying on approximately the same line */
- Spline *nextedges[2], *prevedges[2]; /* There should always be a matching spline, which may end up as part of a stem, and may not */
- Spline *bothedge;
- double next_e_t[2], prev_e_t[2]; /* Location on other edge where our normal hits it */
- double both_e_t;
- int next_e_cnt, prev_e_cnt;
- double next_dist[2], prev_dist[2]; /* Distance from the point to the matching edge */
- struct stemdata **nextstems, **prevstems;
- int *next_is_l, *prev_is_l;
- int nextcnt, prevcnt;
- double nextlen, prevlen;
- int value; /* Temporary value, used to compare points assigned to the same edge and determine which one can be used as a reference point*/
- unsigned int nextlinear: 1;
- unsigned int nextzero: 1;
- unsigned int prevlinear: 1;
- unsigned int prevzero: 1;
- unsigned int colinear: 1;
- unsigned int symetrical_h: 1; /* Are next & prev symetrical? */
- unsigned int symetrical_v: 1; /* Are next & prev symetrical? */
- unsigned int next_hor: 1;
- unsigned int next_ver: 1;
- unsigned int prev_hor: 1;
- unsigned int prev_ver: 1;
- unsigned int ticked: 1;
- uint8 touched, affected;
- uint8 x_extr, y_extr;
- uint8 x_corner, y_corner;
- BasePoint newpos;
- BasePoint newnext, newprev;
- BasePoint posdir; /* If point has been positioned in 1 direction, this is that direction */
- double projection; /* temporary value */
-} PointData;
-
-typedef struct linedata {
- BasePoint unit;
- BasePoint online;
- uint8 is_left;
- int pcnt;
- double length;
- struct pointdata **points;
-} LineData;
-
-struct stem_chunk {
- struct stemdata *parent;
- struct pointdata *l;
- struct pointdata *r;
- uint8 lpotential, rpotential;
- uint8 lnext, rnext; /* are we using the next/prev side of the left/right points */
- uint8 ltick, rtick;
- uint8 stub;
- uint8 stemcheat; /* It's not a real stem, but it's something we'd like PostScript to hint for us */
- uint8 is_ball; /* Specifies if this chunk marks the opposite sides of a ball terminal (useful for TTF instructions) */
- struct stemdata *ball_m;
- int l_e_idx, r_e_idx; /* Which of the opposed edges assigned to the left and right points corresponds to this chunk */
-};
-
-struct dependent_stem {
- struct stemdata *stem;
- uint8 lbase;
- char dep_type; /* can be 'a' (align), 'i' (interpolate), 'm' (move) or 's' (serif) */
-};
-
-struct dependent_serif {
- struct stemdata *stem;
- double width; /* The distance from an edge of the main stem to the opposite edge of the serif stem */
- uint8 lbase;
- uint8 is_ball;
-};
-
-typedef struct stemdata {
- BasePoint unit; /* Unit vector pointing in direction of stem */
- BasePoint l_to_r; /* Unit vector pointing from left to right (across stem) */
- BasePoint left; /* a point on one side of the stem (not necissarily left, even for vertical stems) */
- BasePoint right; /* and one on the other */
- BasePoint newunit; /* Unit vector after repositioning (e. g. in Metafont routines) */
- BasePoint newleft, newright;/* Left and right edges after repositioning */
- int leftidx, rightidx; /* TTF indices of the left and right key points */
- struct pointdata *keypts[4];/* Uppest and lowest points on left and right edges. Used for positioning diagonal stems */
- double lmin, lmax, rmin, rmax;
- double width;
- int chunk_cnt; /* number of separate point-pairs on this stem */
- struct stem_chunk *chunks;
- int activecnt;
- struct segment *active;
- uint8 toobig; /* Stem is fatter than tall, unlikely to be a real stem */
- uint8 positioned;
- uint8 ticked;
- uint8 ghost;
- uint8 bbox;
- uint8 ldone, rdone;
- uint8 italic;
- int blue; /* Blue zone a ghost hint is attached to */
- double len, clen; /* Length of linear segments. clen adds "length" of curved bits */
- struct stembundle *bundle;
- int lpcnt, rpcnt; /* Count of points assigned to left and right edges of this stem */
- struct linedata *leftline, *rightline;
- struct stemdata *master, *next_c_m, *prev_c_m;
- int confl_cnt;
- int dep_cnt;
- int serif_cnt;
- struct dependent_stem *dependent; /* Lists other stems dependent from the given stem */
- struct dependent_serif *serifs; /* Lists serifs and other elements protruding from the base stem */
-} StemData;
-
-typedef struct vchunk {
- struct stem_chunk *chunk;
- double dist;
- int parallel;
- int value;
-} VChunk;
-
-struct stembounds {
- struct stembounds *next;
- struct stemdata *stem;
- double tstart, tend;
- uint8 isr;
-};
-
-typedef struct stembundle {
- BasePoint unit; /* All these stems are parallel, pointing in unit direction */
- BasePoint l_to_r; /* Axis along which these stems are ordered (normal to unit) */
- BasePoint bp; /* Base point for measuring by l_to_r (stem->lpos,rpos) */
- int cnt; /* Number of stems in the bundle */
- struct stemdata **stemlist;
-} StemBundle;
-
-extern struct glyphdata *GlyphDataBuild(SplineChar *sc, int layer, BlueData *bd, int use_existing);
-extern struct glyphdata *GlyphDataInit(SplineChar *sc, int layer, double em_size, int only_hv);
-extern struct glyphdata *StemInfoToStemData( struct glyphdata *gd,StemInfo *si,int is_v );
-extern struct glyphdata *DStemInfoToStemData( struct glyphdata *gd,DStemInfo *dsi );
-extern int IsStemAssignedToPoint( struct pointdata *pd,struct stemdata *stem,int is_next );
-extern void GlyphDataFree(struct glyphdata *gd);
-
-#endif /* _STEMDB_H_ */
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/tables.h b/dviware/dvisvgm/libs/ff-woff/fontforge/tables.h
deleted file mode 100644
index 4933835e6d..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/tables.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* Declarations for data tables */
-
-extern const int amspua[], cns14pua[];
-extern const char (*SaveTablesPref[]);
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/tmpfile2.cpp b/dviware/dvisvgm/libs/ff-woff/fontforge/tmpfile2.cpp
deleted file mode 100644
index d22d03bc3c..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/tmpfile2.cpp
+++ /dev/null
@@ -1,75 +0,0 @@
-/* This file is part of ff-woff, a reduced version of the FontForge library.
-* It provides the function tmpfile2() with the functionality of tmpfile() but
-* works on POSIX and Windows systems.
-* License: Revised BSD license used by FontForge
-* https://github.com/fontforge/fontforge/blob/master/LICENSE
-* (C) 2017-2022 Martin Gieseking <martin.gieseking@uos.de> */
-
-#include <cstdio>
-#include <cstdlib>
-#include <exception>
-#include <iostream>
-#include <string>
-
-#if _WIN32
-#include <fcntl.h>
-#include <sys/stat.h>
-#include <windows.h>
-#ifdef _MSC_VER
-#include <io.h>
-#endif
-#endif
-
-using namespace std;
-
-class TmpFileException : public exception {
- public:
- TmpFileException (const char *msg) : _message(msg) {}
- const char* what () const noexcept override {return _message.c_str();}
-
- private:
- string _message;
-};
-
-
-static inline void tmpfile_error (const char *msg) {
-#if defined(_MSC_VER) || defined(__MINGW32__)
- // Visual C++ and MinGW support exception handling
- // between extern "C" and C++ functions.
- throw TmpFileException(msg);
-#else
- cerr << msg << endl;
- exit(EXIT_FAILURE);
-#endif
-}
-
-
-/* Creates a temporary binary file in the system's temp folder and returns
-* its file pointer. The file is automatically removed when closing it.
-* If the temp file can't be created for some reason, the function calls
-* exit() or throws a TmpFileException (depending on OS and compiler). */
-extern "C" FILE* tmpfile2 () {
-#ifndef _WIN32
- if (FILE *fp = std::tmpfile())
- return fp;
-#else
- char tmpdir[MAX_PATH+1];
- DWORD len = GetTempPath(MAX_PATH+1, tmpdir);
- if (len > 0) {
- if (len >= MAX_PATH-14)
- tmpfile_error("path to temp folder too long");
- char fname[MAX_PATH];
- if (GetTempFileName(tmpdir, "tmp", 0, fname)) {
- int fd = _open(fname, _O_CREAT | _O_TEMPORARY | _O_RDWR | _O_BINARY, _S_IREAD | _S_IWRITE);
- if (fd >= 0) {
- if (FILE *fp = _fdopen(fd, "w+b"))
- return fp;
- int saved_errno = errno;
- _close(fd);
- errno = saved_errno;
- }
- }
- }
-#endif
- tmpfile_error("failed to create temporary file");
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/tottf.c b/dviware/dvisvgm/libs/ff-woff/fontforge/tottf.c
deleted file mode 100644
index 57c61c0cc2..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/tottf.c
+++ /dev/null
@@ -1,6757 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include <math.h>
-#include <time.h>
-#include <utype.h>
-
-#ifdef __CygWin
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <unistd.h>
-#endif
-
-#include "ttf.h"
-
-char *TTFFoundry=NULL;
-
-/* This file produces a ttf file given a splinefont. */
-
-/* ************************************************************************** */
-
-/* Required tables:
- cmap encoding
- head header data
- hhea horizontal metrics header data
- hmtx horizontal metrics (widths, lsidebearing)
- maxp various maxima in the font
- name various names associated with the font
- post postscript names and other stuff
-Required by windows but not mac
- OS/2 bleah.
-Required for TrueType
- loca pointers to the glyphs
- glyf character shapes
-Required for OpenType (PostScript)
- CFF A complete postscript CFF font here with all its internal tables
-Required for bitmaps
- bdat/EBDT bitmap data
- bloc/EBLC pointers to bitmaps
- bhed for apple bitmap only fonts, replaces head
-Optional for bitmaps
- EBSC bitmap scaling table (used in windows "bitmap-only" fonts)
-"Advanced Typograpy"
- Apple
- feat (mapping between morx features and 'name' names)
- kern (if data are present)
- lcar (ligature caret, if data present)
- morx (substitutions, if data present)
- prop (glyph properties, if data present)
- opbd (optical bounds, if data present)
- OpenType
- GPOS (opentype, if kern,anchor data are present)
- GSUB (opentype, if ligature (other subs) data are present)
- GDEF (opentype, if anchor data are present)
-MATH
- MATH (MS proposal, if math data present)
-Apple variation tables (for distortable (multiple master type) fonts)
- fvar (font variations)
- gvar (glyph variations)
- cvar (cvt variations)
- avar (axis variations)
-additional tables
- cvt for hinting
- gasp to control when things should be hinted
- fpgm for hinting (currently only copied and dumped verbatim)
- prep for hinting (currently only copied and dumped verbatim)
-FontForge
- PfEd My own table
-TeX
- TeX TeX specific info (stuff that used to live in tfm files)
-*/
-
-const char *ttfstandardnames[258] = {
-".notdef",
-".null",
-"nonmarkingreturn",
-"space",
-"exclam",
-"quotedbl",
-"numbersign",
-"dollar",
-"percent",
-"ampersand",
-"quotesingle",
-"parenleft",
-"parenright",
-"asterisk",
-"plus",
-"comma",
-"hyphen",
-"period",
-"slash",
-"zero",
-"one",
-"two",
-"three",
-"four",
-"five",
-"six",
-"seven",
-"eight",
-"nine",
-"colon",
-"semicolon",
-"less",
-"equal",
-"greater",
-"question",
-"at",
-"A",
-"B",
-"C",
-"D",
-"E",
-"F",
-"G",
-"H",
-"I",
-"J",
-"K",
-"L",
-"M",
-"N",
-"O",
-"P",
-"Q",
-"R",
-"S",
-"T",
-"U",
-"V",
-"W",
-"X",
-"Y",
-"Z",
-"bracketleft",
-"backslash",
-"bracketright",
-"asciicircum",
-"underscore",
-"grave",
-"a",
-"b",
-"c",
-"d",
-"e",
-"f",
-"g",
-"h",
-"i",
-"j",
-"k",
-"l",
-"m",
-"n",
-"o",
-"p",
-"q",
-"r",
-"s",
-"t",
-"u",
-"v",
-"w",
-"x",
-"y",
-"z",
-"braceleft",
-"bar",
-"braceright",
-"asciitilde",
-"Adieresis",
-"Aring",
-"Ccedilla",
-"Eacute",
-"Ntilde",
-"Odieresis",
-"Udieresis",
-"aacute",
-"agrave",
-"acircumflex",
-"adieresis",
-"atilde",
-"aring",
-"ccedilla",
-"eacute",
-"egrave",
-"ecircumflex",
-"edieresis",
-"iacute",
-"igrave",
-"icircumflex",
-"idieresis",
-"ntilde",
-"oacute",
-"ograve",
-"ocircumflex",
-"odieresis",
-"otilde",
-"uacute",
-"ugrave",
-"ucircumflex",
-"udieresis",
-"dagger",
-"degree",
-"cent",
-"sterling",
-"section",
-"bullet",
-"paragraph",
-"germandbls",
-"registered",
-"copyright",
-"trademark",
-"acute",
-"dieresis",
-"notequal",
-"AE",
-"Oslash",
-"infinity",
-"plusminus",
-"lessequal",
-"greaterequal",
-"yen",
-"mu",
-"partialdiff",
-"summation",
-"product",
-"pi",
-"integral",
-"ordfeminine",
-"ordmasculine",
-"Omega",
-"ae",
-"oslash",
-"questiondown",
-"exclamdown",
-"logicalnot",
-"radical",
-"florin",
-"approxequal",
-"Delta",
-"guillemotleft",
-"guillemotright",
-"ellipsis",
-"nonbreakingspace",
-"Agrave",
-"Atilde",
-"Otilde",
-"OE",
-"oe",
-"endash",
-"emdash",
-"quotedblleft",
-"quotedblright",
-"quoteleft",
-"quoteright",
-"divide",
-"lozenge",
-"ydieresis",
-"Ydieresis",
-"fraction",
-"currency",
-"guilsinglleft",
-"guilsinglright",
-"fi",
-"fl",
-"daggerdbl",
-"periodcentered",
-"quotesinglbase",
-"quotedblbase",
-"perthousand",
-"Acircumflex",
-"Ecircumflex",
-"Aacute",
-"Edieresis",
-"Egrave",
-"Iacute",
-"Icircumflex",
-"Idieresis",
-"Igrave",
-"Oacute",
-"Ocircumflex",
-"apple",
-"Ograve",
-"Uacute",
-"Ucircumflex",
-"Ugrave",
-"dotlessi",
-"circumflex",
-"tilde",
-"macron",
-"breve",
-"dotaccent",
-"ring",
-"cedilla",
-"hungarumlaut",
-"ogonek",
-"caron",
-"Lslash",
-"lslash",
-"Scaron",
-"scaron",
-"Zcaron",
-"zcaron",
-"brokenbar",
-"Eth",
-"eth",
-"Yacute",
-"yacute",
-"Thorn",
-"thorn",
-"minus",
-"multiply",
-"onesuperior",
-"twosuperior",
-"threesuperior",
-"onehalf",
-"onequarter",
-"threequarters",
-"franc",
-"Gbreve",
-"gbreve",
-"Idotaccent",
-"Scedilla",
-"scedilla",
-"Cacute",
-"cacute",
-"Ccaron",
-"ccaron",
-"dcroat"
-};
-/* Relates Unicode blocks as in
- http://unicode.org/Public/UNIDATA/Blocks.txt
- to bit positions in the OpenType standard Unicode Character Range
- field 'ulUnicodeRange'.
- Note that the OpenType standard specifies bits for a subset
- of the Unicode blocks.
- */
-static int uniranges[][3] = {
- { 0x20, 0x7e, 0 }, /* Basic Latin */
- { 0xa0, 0xff, 1 }, /* Latin-1 Supplement */
- { 0x100, 0x17f, 2 }, /* Latin Extended-A */
- { 0x180, 0x24f, 3 }, /* Latin Extended-B */
- { 0x250, 0x2af, 4 }, /* IPA Extensions */
- { 0x2b0, 0x2ff, 5 }, /* Spacing Modifier Letters */
- { 0x300, 0x36f, 6 }, /* Combining Diacritical Marks */
- { 0x370, 0x3ff, 7 }, /* Greek and Coptic */
- { 0x400, 0x52f, 9 }, /* Cyrillic / Cyrillic Supplement */
- { 0x530, 0x58f, 10 }, /* Armenian */
- { 0x590, 0x5ff, 11 }, /* Hebrew */
- { 0x600, 0x6ff, 13 }, /* Arabic */
- { 0x700, 0x74f, 71 }, /* Syriac */
- { 0x750, 0x77f, 13 }, /* Arabic Supplement */
- { 0x780, 0x7bf, 72 }, /* Thaana */
- { 0x7c0, 0x7ff, 14 }, /* N'Ko */
- /* { 0x800, 0x83f, ? }, Samaritan */
- /* { 0x840, 0x85f, ? }, Mandaic */
- { 0x900, 0x97f, 15 }, /* Devanagari */
- { 0x980, 0x9ff, 16 }, /* Bengali */
- { 0xa00, 0xa7f, 17 }, /* Gurmukhi */
- { 0xa80, 0xaff, 18 }, /* Gujarati */
- { 0xb00, 0xb7f, 19 }, /* Oriya */
- { 0xb80, 0xbff, 20 }, /* Tamil */
- { 0xc00, 0xc7f, 21 }, /* Telugu */
- { 0xc80, 0xcff, 22 }, /* Kannada */
- { 0xd00, 0xd7f, 23 }, /* Malayalam */
- { 0xd80, 0xdff, 73 }, /* Sinhala */
- { 0xe00, 0xe7f, 24 }, /* Thai */
- { 0xe80, 0xeff, 25 }, /* Lao */
- { 0xf00, 0xfbf, 70 }, /* Tibetan */
- { 0x1000, 0x109f, 74 }, /* Myanmar */
- { 0x10a0, 0x10ff, 26 }, /* Georgian */
- { 0x1100, 0x11ff, 28 }, /* Hangul Jamo */
- { 0x1200, 0x137f, 75 }, /* Ethiopic */
- { 0x1380, 0x139f, 75 }, /* Ethiopic Supplement */
- { 0x13a0, 0x13ff, 76 }, /* Cherokee */
- { 0x1400, 0x167f, 77 }, /* Unified Canadian Aboriginal Symbols */
- { 0x1680, 0x169f, 78 }, /* Ogham */
- { 0x16a0, 0x16ff, 79 }, /* Runic */
- { 0x1700, 0x1714, 84 }, /* Tagalog */
- { 0x1720, 0x1736, 84 }, /* Harunoo */
- { 0x1740, 0x1753, 84 }, /* Buhid */
- { 0x1750, 0x1773, 84 }, /* Tagbanwa */
- { 0x1780, 0x17ff, 80 }, /* Khmer */
- { 0x1800, 0x18af, 81 }, /* Mongolian */
- { 0x18B0, 0x18f5, 77 }, /* Unified Canadian Aboriginal Symbols Extended */
- { 0x1900, 0x194f, 93 }, /* Limbu */
- { 0x1950, 0x197f, 94 }, /* Tai Le */
- { 0x1980, 0x19DF, 95 }, /* New Tai Lue */
- { 0x19e0, 0x19ff, 80 }, /* Khmer Symbols */
- { 0x1A00, 0x1A1F, 96 }, /* Buginese */
- { 0x1B00, 0x1B7f, 27 }, /* Balinese */
- { 0x1B80, 0x1BB9, 112 }, /* Sudanese */
- /*{ 0x1bc0, 0x1bff, ? }, Batak */
- { 0x1C00, 0x1C4F, 113 }, /* Lepcha */
- { 0x1C50, 0x1C7F, 114 }, /* Ol Chiki */
- /*{ 0x1cd0, 0x1cff, ? }, Vedic Extensions */
- { 0x1d00, 0x1dbf, 4 }, /* Phonetic Extensions & Supplement */
- { 0x1d80, 0x1dff, 6 }, /* Combining Diacritical Marks Supplement */
- { 0x1e00, 0x1eff, 29 }, /* Latin Extended Additional */
- { 0x1f00, 0x1fff, 30 }, /* Greek Extended */
- { 0x2000, 0x206f, 31 }, /* General Punctuation */
- { 0x2070, 0x209f, 32 }, /* Superscripts and Subscripts */
- { 0x20a0, 0x20cf, 33 }, /* Currency Symbols */
- { 0x20d0, 0x20ff, 34 }, /* Combining Marks for Symbols */
- { 0x2100, 0x214f, 35 }, /* Letterlike Symbols */
- { 0x2150, 0x218f, 36 }, /* Number Forms */
- { 0x2190, 0x21ff, 37 }, /* Arrows */
- { 0x2200, 0x22ff, 38 }, /* Mathematical Operators */
- { 0x2300, 0x237f, 39 }, /* Miscellaneous Technical */
- { 0x2400, 0x243f, 40 }, /* Control Pictures */
- { 0x2440, 0x245f, 41 }, /* Optical Character Recognition */
- { 0x2460, 0x24ff, 42 }, /* Enclosed Alphanumerics */
- { 0x2500, 0x257f, 43 }, /* Box Drawing */
- { 0x2580, 0x259f, 44 }, /* Block Elements */
- { 0x25a0, 0x25ff, 45 }, /* Geometric Shapes */
- { 0x2600, 0x267f, 46 }, /* Miscellaneous Symbols */
- { 0x2700, 0x27bf, 47 }, /* Dingbats */
- { 0x27c0, 0x27ef, 38 }, /* Miscellaneous Mathematical Symbols-A */
- { 0x27f0, 0x27ff, 37 }, /* Supplementary Arrows-A */
- { 0x2800, 0x28ff, 82 }, /* Braille Patterns */
- { 0x2900, 0x297f, 37 }, /* Supplementary Arrows-B */
- { 0x2980, 0x2aff, 38 }, /* Miscellaneous Mathematical Symbols-B /
- Supplemental Mathematical Operators */
- { 0x2b00, 0x2bff, 37 }, /* Miscellaneous Symbols and Arrows */
- { 0x2C00, 0x2C5E, 97 }, /* Glagolitic */
- { 0x2c60, 0x2c7f, 29 }, /* Latin Extended-C */
- { 0x2c80, 0x2cff, 8 }, /* Coptic */
- { 0x2D00, 0x2D25, 26 }, /* Georgian Supplement */
- { 0x2D30, 0x2D6F, 98 }, /* Tifinagh */
- { 0x2d80, 0x2ddf, 75 }, /* Ethiopic Extended */
- { 0x2de0, 0x2dff, 9 }, /* Cyrillic Extended-A */
- { 0x2e00, 0x2e7f, 31 }, /* Supplemental Punctuation */
- { 0x2e80, 0x2fff, 59 }, /* CJK Radicals Supplement / Kangxi Radicals /
- Ideographic Description Characters */
- { 0x3000, 0x303f, 48 }, /* CJK Symbols and Punctuation */
- { 0x3040, 0x309f, 49 }, /* Hiragana */
- { 0x30a0, 0x30ff, 50 }, /* Katakana */
- { 0x3100, 0x312f, 51 }, /* Bopomofo */
- { 0x3130, 0x318f, 52 }, /* Hangul Compatibility Jamo */
- { 0x3190, 0x319f, 59 }, /* Kanbun */
- { 0x31a0, 0x31bf, 51 }, /* Bopomofo Extended */
- { 0x31f0, 0x31ff, 50 }, /* Katakana Phonetic Extensions */
- { 0x3200, 0x32ff, 54 }, /* Enclosed CJK Letters and Months */
- { 0x3300, 0x33ff, 55 }, /* CJK compatability */
- { 0x3400, 0x4dbf, 59 }, /* CJK Unified Ideographs Extension A */
- { 0x4dc0, 0x4dff, 99 }, /* Yijing Hexagram Symbols */
- { 0x4e00, 0x9fff, 59 }, /* CJK Unified Ideographs */
- { 0xa000, 0xa4cf, 81 }, /* Yi Syllables / Yi Radicals */
- /*{ 0xA4d0, 0xA4ff, ? }, Lisu */
- { 0xA500, 0xA62b, 12 }, /* Vai */
- { 0xa640, 0xa69f, 9 }, /* Cyrillic Extended-B */
- /*{ 0xa6a0, 0xa6ff, ? }, Bamum */
- { 0xa700, 0xa71f, 5 }, /* Modifier Tone Letters */
- { 0xa720, 0xa7ff, 29 }, /* Latin Extended-D */
- { 0xA800, 0xA82F, 100 }, /* Syloti Nagri */
- /*{ 0xa830, 0xa83f, ? }, Common Indic Number Forms */
- { 0xa840, 0xa87f, 53 }, /* Phags-pa */
- { 0xA880, 0xA8D9, 115 }, /* Saurashtra */
- /*{ 0xA8E0, 0xA8FF, ? }, Devanagari Extended */
- { 0xA900, 0xA92F, 116 }, /* Kayah Li */
- { 0xA930, 0xA95F, 117 }, /* Rejang */
- /*{ 0xA960, 0xA97F, 28? }, Hangul Jamo Extended-A */
- /*{ 0xA980, 0xA9DF, ? }, Javanese */
- { 0xAA00, 0xAA5F, 118 }, /* Cham */
- /*{ 0xAA60, 0xAA7F, 74? }, Myanmar Extended-A */
- /*{ 0xAA80, 0xAADF, ? }, Tai Viet */
- /*{ 0xab00, 0xab2f, 75? }, Ethiopic Extended-A */
- /*{ 0xabc0, 0xabff, ? }, Meetei Mayek */
- { 0xac00, 0xd7af, 56 }, /* Hangul Syllables */
- { 0xd800, 0xdfff, 57 }, /* Non-Plane 0 */
- { 0xe000, 0xf8ff, 60 }, /* Private Use Area */
-
- { 0xf900, 0xfaff, 61 }, /* CJK Compatibility Ideographs */
- /* 12 ideographs in The IBM 32 Compatibility Additions are CJK unified
- ideographs despite their names: see The Unicode Standard 4.0, p.475 */
- { 0xfa0e, 0xfa0f, 59 },
- { 0xfa10, 0xfa10, 61 },
- { 0xfa11, 0xfa11, 59 },
- { 0xfa12, 0xfa12, 61 },
- { 0xfa13, 0xfa14, 59 },
- { 0xfa15, 0xfa1e, 61 },
- { 0xfa1f, 0xfa1f, 59 },
- { 0xfa20, 0xfa20, 61 },
- { 0xfa21, 0xfa21, 59 },
- { 0xfa22, 0xfa22, 61 },
- { 0xfa23, 0xfa24, 59 },
- { 0xfa25, 0xfa26, 61 },
- { 0xfa27, 0xfa29, 59 },
- { 0xfa2a, 0xfaff, 61 }, /* CJK Compatibility Ideographs */
-
- { 0xfb00, 0xfb4f, 62 }, /* Alphabetic Presentation Forms */
- { 0xfb50, 0xfdff, 63 }, /* Arabic Presentation Forms-A */
- { 0xfe00, 0xfe0f, 91 }, /* Variation Selectors */
- { 0xfe20, 0xfe2f, 64 }, /* Combining Half Marks */
- { 0xfe30, 0xfe4f, 65 }, /* CJK Compatibility Forms */
- { 0xfe50, 0xfe6f, 66 }, /* Small Form Variants */
- { 0xfe70, 0xfeef, 67 }, /* Arabic Presentation Forms-B */
- { 0xff00, 0xffef, 68 }, /* Halfwidth and Fullwidth Forms */
- { 0xfff0, 0xffff, 69 }, /* Specials */
-
- { 0x10000, 0x1007f, 101 }, /* Linear B Syllabary */
- { 0x10080, 0x100ff, 101 }, /* Linear B Ideograms */
- { 0x10100, 0x1013f, 101 }, /* Aegean Numbers */
- { 0x10140, 0x1018F, 102 }, /* Ancient Greek Numbers */
- { 0x10190, 0x101CF, 119 }, /* Ancient Symbols */
- { 0x101D0, 0x101FF, 120 }, /* Phaistos Disc */
- { 0x102A0, 0x102D0, 121 }, /* Carian */
- { 0x10280, 0x1029C, 121 }, /* Lycian */
- { 0x10300, 0x1032f, 85 }, /* Old Italic */
- { 0x10330, 0x1034f, 86 }, /* Gothic */
- { 0x10380, 0x1039F, 103 }, /* Ugaritic */
- { 0x103A0, 0x103D6, 104 }, /* Old Persian */
- { 0x10400, 0x1044f, 87 }, /* Deseret */
- { 0x10450, 0x1047f, 105 }, /* Shavian */
- { 0x10480, 0x104af, 106 }, /* Osmanya */
- { 0x10800, 0x1083f, 107 }, /* Cypriot Syllabary */
- /*{ 0x10840, 0x1085f, ? }, Imperial Aramaic */
- { 0x10900, 0x1091f, 58 }, /* Phoenician */
- { 0x10920, 0x10939, 121 }, /* Lydian */
- { 0x10A00, 0x10A5F, 108 }, /* Kharoshthi */
- /*{ 0x10A60, 0x10A7F, ? }, Old South Arabian */
- /*{ 0x10B00, 0x10B3F, ? }, Avestan */
- /*{ 0x10B40, 0x10B5F, ? }, Inscriptional Parthian */
- /*{ 0x10B60, 0x10B7F, ? }, Inscriptional Pahlavi */
- /*{ 0x10C00, 0x10C4F, ? }, Old Turkic */
- /*{ 0x10E60, 0x10E7F, ? }, Rumi Numeral Symbols */
- /*{ 0x11000, 0x1107F, ? }, Brahmi */
- /*{ 0x11000, 0x1107F, ? }, Kaithi */
- { 0x12000, 0x1247F, 110 }, /* Cuneiform; Numbers & Punctuation */
- /*{ 0x13000, 0x1342F, ? }, Egyptian Hieroglyphs */
- /*{ 0x16800, 0x16A3F, ? }, Bamum Supplement */
- /*{ 0x1B000, 0x1B0FF, ? }, Kana Supplement */
- { 0x1d000, 0x1d1ff, 88 }, /* Byzantine Musical Symbols / Musical Symbols */
- /*{ 0x1D200, 0x1D24F, ? }, Ancient Greek Musical Notation */
- { 0x1d300, 0x1d35f, 109 }, /* Tai Xuan Jing Symbols */
- { 0x1D360, 0x1D37F, 111 }, /* Counting Rod Numerals */
- { 0x1d400, 0x1d7ff, 89 }, /* Mathematical Alphanumeric Symbols */
- { 0x1F000, 0x1F02B, 122 }, /* Mahjong Tiles */
- { 0x1F030, 0x1F093, 122 }, /* Dominos */
- /*{ 0x1F0A0, 0x1F0FF, ? }, Playing Cards */
- /*{ 0x1F100, 0x1F1FF, ? }, Enclosed Alphanumeric Supplement */
- /*{ 0x1F200, 0x1F2FF, ? }, Enclosed Ideographic Supplement */
- /*{ 0x1F300, 0x1F5FF, ? }, Miscellaneous Symbols And Pictographs */
- /*{ 0x1F600, 0x1F64F, ? }, Emoticons */
- /*{ 0x1F680, 0x1F6FF, ? }, Transport And Map Symbols */
- /*{ 0x1F700, 0x1F77F, ? }, Alchemical Symbols */
- { 0x20000, 0x2a6df, 59 }, /* CJK Unified Ideographs Extension B */
- /*{ 0x2A700, 0x2B73F, 59? }, CJK Unified Ideographs Extension C */
- /*{ 0x2B740, 0x2B81F, 59? }, CJK Unified Ideographs Extension D */
- { 0x2f800, 0x2fa1f, 61 }, /* CJK Compatibility Ideographs Supplement */
- { 0xe0000, 0xe007f, 92 }, /* Tags */
- { 0xe0100, 0xe01ef, 91 }, /* Variation Selectors Supplement */
- { 0xf0000, 0xffffd, 90 }, /* Supplementary Private Use Area-A */
- { 0x100000, 0x10fffd, 90 }, /* Supplementary Private Use Area-B */
-};
-
-static int32 getuint32(FILE *ttf) {
- int ch1 = getc(ttf);
- int ch2 = getc(ttf);
- int ch3 = getc(ttf);
- int ch4 = getc(ttf);
- if ( ch4==EOF )
-return( EOF );
-return( (ch1<<24)|(ch2<<16)|(ch3<<8)|ch4 );
-}
-
-static int short_too_long_warned = 0;
-
-void putshort(FILE *file,int sval) {
- if ( sval<-32768 || sval>65535 )
- if (!short_too_long_warned) {
- IError(_("Attempt to output %d into a 16-bit field. It will be truncated and the file may not be useful."), sval );
- short_too_long_warned = 1;
- }
- putc((sval>>8)&0xff,file);
- putc(sval&0xff,file);
-}
-
-static void putu24(FILE *file,int val) {
- putc((val>>16)&0xff,file);
- putc((val>>8)&0xff,file);
- putc(val&0xff,file);
-}
-
-void putlong(FILE *file,int val) {
- putc((val>>24)&0xff,file);
- putc((val>>16)&0xff,file);
- putc((val>>8)&0xff,file);
- putc(val&0xff,file);
-}
-#define dumpabsoffset putlong
-
-static void dumpoffset(FILE *file,int offsize,int val) {
- if ( offsize==1 )
- putc(val,file);
- else if ( offsize==2 )
- putshort(file,val);
- else if ( offsize==3 ) {
- putc((val>>16)&0xff,file);
- putc((val>>8)&0xff,file);
- putc(val&0xff,file);
- } else
- putlong(file,val);
-}
-
-static void put2d14(FILE *file,real dval) {
- int val;
- int mant;
-
- val = floor(dval);
- mant = floor(16384.*(dval-val));
- val = (val<<14) | mant;
- putshort(file,val);
-}
-
-void putfixed(FILE *file,real dval) {
- int val;
- int mant;
-
- val = floor(dval);
- mant = floor(65536.*(dval-val));
- val = (val<<16) | mant;
- putlong(file,val);
-}
-
-int ttfcopyfile(FILE *ttf, FILE *other, int pos, const char *tab_name) {
- int ch;
- int ret = 1;
-
- if ( ferror(ttf) || ferror(other)) {
- IError("Disk error of some nature. Perhaps no space on device?\nGenerated font will be unusable" );
- } else if ( pos!=ftell(ttf)) {
- IError("File Offset wrong for ttf table (%s), %d expected %d", tab_name, ftell(ttf), pos );
- }
- rewind(other);
- while (( ch = getc(other))!=EOF )
- putc(ch,ttf);
- if ( ferror(other)) ret = 0;
- if ( fclose(other)) ret = 0;
-return( ret );
-}
-
-static void FigureFullMetricsEnd(SplineFont *sf,struct glyphinfo *gi, int istt ) {
- /* We can reduce the size of the width array by removing a run at the end */
- /* of the same width. So start at the end, find the width of the last */
- /* character we'll output, then run backwards as long as we've got the */
- /* same width */
- /* (do same thing for vertical metrics too */
- int i, lasti, lastv, lastdefault = istt ? 3 : 1;
- int width, vwidth;
-
- lasti = lastv = gi->gcnt-1;
- for ( i=gi->gcnt-1; i>lastdefault && gi->bygid[i]==-1; --i );
- if ( i>=lastdefault ) {
- width = sf->glyphs[gi->bygid[i]]->width;
- vwidth = sf->glyphs[gi->bygid[i]]->vwidth;
- lasti = lastv = i;
- for ( i=lasti-1; i>=lastdefault; --i ) {
- if ( SCWorthOutputting(sf->glyphs[gi->bygid[i]]) ) {
- if ( sf->glyphs[gi->bygid[i]]->width!=width )
- break;
- else
- lasti = i;
- }
- }
- gi->lasthwidth = lasti;
- if ( sf->hasvmetrics ) {
- for ( i=lastv-1; i>=lastdefault; --i ) {
- if ( SCWorthOutputting(sf->glyphs[gi->bygid[i]]) ) {
- if ( sf->glyphs[gi->bygid[i]]->vwidth!=vwidth )
- break;
- else
- lastv = i;
- }
- }
- gi->lastvwidth = lastv;
- }
- } else {
- gi->lasthwidth = 0;
- gi->lastvwidth = 0;
- }
-}
-
-static void dumpghstruct(struct glyphinfo *gi,struct glyphhead *gh) {
-
- putshort(gi->glyphs,gh->numContours);
- putshort(gi->glyphs,gh->xmin);
- putshort(gi->glyphs,gh->ymin);
- putshort(gi->glyphs,gh->xmax);
- putshort(gi->glyphs,gh->ymax);
- if ( gh->xmin<gi->xmin ) gi->xmin = gh->xmin;
- if ( gh->ymin<gi->ymin ) gi->ymin = gh->ymin;
- if ( gh->xmax>gi->xmax ) gi->xmax = gh->xmax;
- if ( gh->ymax>gi->ymax ) gi->ymax = gh->ymax;
-}
-
-static void ttfdumpmetrics(SplineChar *sc,struct glyphinfo *gi,DBounds *b) {
- int width=sc->width;
- int vwidth=sc->vwidth;
-
- if ( width<0 ) width=0;
- if ( vwidth<0 ) vwidth=0;
-
- if ( sc->ttf_glyph<=gi->lasthwidth )
- putshort(gi->hmtx,width);
- putshort(gi->hmtx,b->minx);
- if ( sc->parent->hasvmetrics ) {
- if ( sc->ttf_glyph<=gi->lastvwidth )
- putshort(gi->vmtx,vwidth);
- putshort(gi->vmtx, sc->parent->ascent - b->maxy);
- }
- if ( sc->ttf_glyph==gi->lasthwidth )
- gi->hfullcnt = sc->ttf_glyph+1;
- if ( sc->ttf_glyph==gi->lastvwidth )
- gi->vfullcnt = sc->ttf_glyph+1;
-}
-
-static SplineSet *SCttfApprox(SplineChar *sc,int layer) {
- SplineSet *head=NULL, *last, *ss, *tss;
- RefChar *ref;
-
- for ( ss=sc->layers[layer].splines; ss!=NULL; ss=ss->next ) {
- tss = sc->layers[layer].order2 ? SplinePointListCopy1(ss) : SSttfApprox(ss);
- if ( head==NULL ) head = tss;
- else last->next = tss;
- last = tss;
- }
- for ( ref=sc->layers[layer].refs; ref!=NULL; ref=ref->next ) {
- for ( ss=ref->layers[0].splines; ss!=NULL; ss=ss->next ) {
- tss = sc->layers[layer].order2 ? SplinePointListCopy1(ss) : SSttfApprox(ss);
- if ( head==NULL ) head = tss;
- else last->next = tss;
- last = tss;
- }
- }
-return( head );
-}
-
-#define _On_Curve 1
-#define _X_Short 2
-#define _Y_Short 4
-#define _Repeat 8
-#define _X_Same 0x10
-#define _Y_Same 0x20
-
-int SSAddPoints(SplineSet *ss,int ptcnt,BasePoint *bp, char *flags) {
- SplinePoint *sp, *first, *nextsp;
- int startcnt = ptcnt;
-
- if ( ss->first->prev!=NULL &&
- ss->first->prev->from->nextcpindex==startcnt ) {
- if ( flags!=NULL ) flags[ptcnt] = 0;
- bp[ptcnt].x = rint(ss->first->prevcp.x);
- bp[ptcnt++].y = rint(ss->first->prevcp.y);
- } else if ( ss->first->ttfindex!=ptcnt && ss->first->ttfindex!=0xfffe )
- IError("Unexpected point count in SSAddPoints" );
-
- first = NULL;
- for ( sp=ss->first; sp!=first ; ) {
- if ( sp->ttfindex!=0xffff ) {
- if ( flags!=NULL ) flags[ptcnt] = _On_Curve;
- bp[ptcnt].x = rint(sp->me.x);
- bp[ptcnt].y = rint(sp->me.y);
- sp->ttfindex = ptcnt++;
- } else if ( !SPInterpolate( sp ) ) {
- /* If an on curve point is midway between two off curve points*/
- /* it may be omitted and will be interpolated on read in */
- if ( flags!=NULL ) flags[ptcnt] = _On_Curve;
- bp[ptcnt].x = rint(sp->me.x);
- bp[ptcnt].y = rint(sp->me.y);
- sp->ttfindex = ptcnt++;
- }
- nextsp = sp->next!=NULL ? sp->next->to : NULL;
- if ( sp->nextcpindex == startcnt )
- /* This control point is actually our first point, not our last */
- break;
- if ( (sp->nextcpindex !=0xffff && sp->nextcpindex!=0xfffe ) ||
- !sp->nonextcp ) {
- if ( flags!=NULL ) flags[ptcnt] = 0;
- bp[ptcnt].x = rint(sp->nextcp.x);
- bp[ptcnt++].y = rint(sp->nextcp.y);
- }
- if ( nextsp==NULL )
- break;
- if ( first==NULL ) first = sp;
- sp = nextsp;
- }
-return( ptcnt );
-}
-
-static void dumppointarrays(struct glyphinfo *gi,BasePoint *bp, char *fs, int pc) {
- BasePoint last;
- int i,flags;
- int lastflag, flagcnt;
-
- if ( gi->maxp->maxPoints<pc )
- gi->maxp->maxPoints = pc;
-
- /* flags */
- last.x = last.y = 0;
- lastflag = -1; flagcnt = 0;
- for ( i=0; i<pc; ++i ) {
- flags = 0;
- if ( fs==NULL || fs[i] )
- flags = _On_Curve; /* points are on curve */
- if ( last.x==bp[i].x )
- flags |= _X_Same;
- else if ( bp[i].x-last.x>-256 && bp[i].x-last.x<255 ) {
- flags |= _X_Short;
- if ( bp[i].x>=last.x )
- flags |= _X_Same; /* In this context it means positive */
- }
- if ( last.y==bp[i].y )
- flags |= _Y_Same;
- else if ( bp[i].y-last.y>-256 && bp[i].y-last.y<255 ) {
- flags |= _Y_Short;
- if ( bp[i].y>=last.y )
- flags |= _Y_Same; /* In this context it means positive */
- }
- last = bp[i];
- if ( lastflag==-1 ) {
- lastflag = flags;
- flagcnt = 0;
- } else if ( flags!=lastflag ) {
- if ( flagcnt!=0 )
- lastflag |= _Repeat;
- putc(lastflag,gi->glyphs);
- if ( flagcnt!=0 )
- putc(flagcnt,gi->glyphs);
- lastflag = flags;
- flagcnt = 0;
- } else {
- if ( ++flagcnt == 255 ) {
- putc(lastflag|_Repeat,gi->glyphs);
- putc(255,gi->glyphs);
- lastflag = -1;
- flagcnt = 0;
- }
- }
- }
- if ( lastflag!=-1 ) {
- if ( flagcnt!=0 )
- lastflag |= _Repeat;
- putc(lastflag,gi->glyphs);
- if ( flagcnt!=0 )
- putc(flagcnt,gi->glyphs);
- }
-
- /* xcoords */
- last.x = 0;
- for ( i=0; i<pc; ++i ) {
- if ( last.x==bp[i].x )
- /* Do Nothing */;
- else if ( bp[i].x-last.x>-256 && bp[i].x-last.x<255 ) {
- if ( bp[i].x>=last.x )
- putc(bp[i].x-last.x,gi->glyphs);
- else
- putc(last.x-bp[i].x,gi->glyphs);
- } else
- putshort(gi->glyphs,bp[i].x-last.x);
- last.x = bp[i].x;
- }
- /* ycoords */
- last.y = 0;
- for ( i=0; i<pc; ++i ) {
- if ( last.y==bp[i].y )
- /* Do Nothing */;
- else if ( bp[i].y-last.y>-256 && bp[i].y-last.y<255 ) {
- if ( bp[i].y>=last.y )
- putc(bp[i].y-last.y,gi->glyphs);
- else
- putc(last.y-bp[i].y,gi->glyphs);
- } else
- putshort(gi->glyphs,bp[i].y-last.y);
- last.y = bp[i].y;
- }
- if ( ftell(gi->glyphs)&1 ) /* Pad the file so that the next glyph */
- putc('\0',gi->glyphs); /* on a word boundary */
-}
-
-static void dumpinstrs(struct glyphinfo *gi,uint8 *instrs,int cnt) {
- int i;
-
- if ( (gi->flags&ttf_flag_nohints) ) {
- putshort(gi->glyphs,0);
-return;
- }
- /* Do we ever want to call AutoHint and AutoInst here? I think not. */
-
- if ( gi->maxp->maxglyphInstr<cnt ) gi->maxp->maxglyphInstr=cnt;
- putshort(gi->glyphs,cnt);
- for ( i=0; i<cnt; ++i )
- putc( instrs[i],gi->glyphs );
-}
-
-static void dumpmissingglyph(SplineFont *sf,struct glyphinfo *gi,int fixedwidth) {
- /* Or .notdef */
- struct glyphhead gh;
- BasePoint bp[10];
- uint8 instrs[50];
- int stemcvt, stem;
- char *stempt;
-
- stem = 0;
- if ( sf->private!=NULL && (stempt=PSDictHasEntry(sf->private,"StdVW"))!=NULL )
- stem = strtod(stempt,NULL);
- else if ( sf->private!=NULL && (stempt=PSDictHasEntry(sf->private,"StdHW"))!=NULL )
- stem = strtod(stempt,NULL);
- if ( stem<=0 )
- stem = (sf->ascent+sf->descent)/30;
-
- gi->pointcounts[gi->next_glyph] = 8;
- gi->loca[gi->next_glyph++] = ftell(gi->glyphs);
- gi->maxp->maxContours = 2;
-
- gh.numContours = 2;
- gh.ymin = 0;
- gh.ymax = 2*(sf->ascent+sf->descent)/3;
- gh.xmax = 5*stem+(sf->ascent+sf->descent)/10;
- gh.xmin = stem;
- gh.xmax += stem;
- if ( gh.ymax>sf->ascent ) gh.ymax = sf->ascent;
- dumpghstruct(gi,&gh);
-
- bp[0].x = stem; bp[0].y = 0;
- bp[1].x = stem; bp[1].y = gh.ymax;
- bp[2].x = gh.xmax; bp[2].y = gh.ymax;
- bp[3].x = gh.xmax; bp[3].y = 0;
-
- bp[4].x = 2*stem; bp[4].y = stem;
- bp[5].x = gh.xmax-stem; bp[5].y = stem;
- bp[6].x = gh.xmax-stem; bp[6].y = gh.ymax-stem;
- bp[7].x = 2*stem; bp[7].y = gh.ymax-stem;
-
- if ( !gi->ttc_composite_font ) {
- stemcvt = TTF_getcvtval(gi->sf,stem);
-
- instrs[0] = 0xb1; /* Pushb, 2byte */
- instrs[1] = 1; /* Point 1 */
- instrs[2] = 0; /* Point 0 */
- instrs[3] = 0x2f; /* MDAP, rounded (pt0) */
- instrs[4] = 0x3c; /* ALIGNRP, (pt1 same pos as pt0)*/
- instrs[5] = 0xb2; /* Pushb, 3byte */
- instrs[6] = 7; /* Point 7 */
- instrs[7] = 4; /* Point 4 */
- instrs[8] = stemcvt; /* CVT entry for our stem width */
- instrs[9] = 0xe0+0x0d; /* MIRP, don't set rp0, minimum, rounded, black */
- instrs[10] = 0x32; /* SHP[rp2] (pt7 same pos as pt4) */
- instrs[11] = 0xb1; /* Pushb, 2byte */
- instrs[12] = 6; /* Point 6 */
- instrs[13] = 5; /* Point 5 */
- instrs[14] = 0xc0+0x1c; /* MDRP, set rp0, minimum, rounded, grey */
- instrs[15] = 0x3c; /* ALIGNRP, (pt6 same pos as pt5)*/
- instrs[16] = 0xb2; /* Pushb, 3byte */
- instrs[17] = 3; /* Point 3 */
- instrs[18] = 2; /* Point 2 */
- instrs[19] = stemcvt; /* CVT entry for our stem width */
- instrs[20] = 0xe0+0x0d; /* MIRP, dont set rp0, minimum, rounded, black */
- instrs[21] = 0x32; /* SHP[rp2] (pt3 same pos as pt2) */
-
- instrs[22] = 0x00; /* SVTCA, y axis */
-
- instrs[23] = 0xb1; /* Pushb, 2byte */
- instrs[24] = 3; /* Point 3 */
- instrs[25] = 0; /* Point 0 */
- instrs[26] = 0x2f; /* MDAP, rounded */
- instrs[27] = 0x3c; /* ALIGNRP, (pt3 same height as pt0)*/
- instrs[28] = 0xb2; /* Pushb, 3byte */
- instrs[29] = 5; /* Point 5 */
- instrs[30] = 4; /* Point 4 */
- instrs[31] = stemcvt; /* CVT entry for our stem width */
- instrs[32] = 0xe0+0x0d; /* MIRP, don't set rp0, minimum, rounded, black */
- instrs[33] = 0x32; /* SHP[rp2] (pt5 same height as pt4) */
- instrs[34] = 0xb2; /* Pushb, 3byte */
- instrs[35] = 7; /* Point 7 */
- instrs[36] = 6; /* Point 6 */
- instrs[37] = TTF_getcvtval(gi->sf,bp[6].y); /* CVT entry for top height */
- instrs[38] = 0xe0+0x1c; /* MIRP, set rp0, minimum, rounded, grey */
- instrs[39] = 0x3c; /* ALIGNRP (pt7 same height as pt6) */
- instrs[40] = 0xb2; /* Pushb, 3byte */
- instrs[41] = 1; /* Point 1 */
- instrs[42] = 2; /* Point 2 */
- instrs[43] = stemcvt; /* CVT entry for our stem width */
- instrs[44] = 0xe0+0x0d; /* MIRP, dont set rp0, minimum, rounded, black */
- instrs[45] = 0x32; /* SHP[rp2] (pt1 same height as pt2) */
-
- /* We've touched all points in all dimensions */
- /* Don't need any IUP */
- }
-
- /* end contours array */
- putshort(gi->glyphs,4-1);
- putshort(gi->glyphs,8-1);
- /* instruction length&instructions */
- if ( !gi->ttc_composite_font )
- dumpinstrs(gi,instrs,46);
- else
- dumpinstrs(gi,NULL,0);
-
- dumppointarrays(gi,bp,NULL,8);
-
- if ( fixedwidth<=0 )
- putshort(gi->hmtx,gh.xmax + 2*stem);
- else
- putshort(gi->hmtx,fixedwidth);
- putshort(gi->hmtx,stem);
- if ( sf->hasvmetrics ) {
- putshort(gi->vmtx,sf->ascent+sf->descent);
- putshort(gi->vmtx,/*sf->vertical_origin-*/gh.ymax);
- }
-}
-
-static void dumpblankglyph(struct glyphinfo *gi,SplineFont *sf,int fixedwidth) {
- int advance = gi->next_glyph==1?0:fixedwidth<=0?(sf->ascent+sf->descent)/3:
- fixedwidth;
- /* For reasons quite obscure to me, glyph 1 has an advance width of 0 */
- /* even in a mono-spaced font like CourierNew.ttf */
-
- /* These don't get a glyph header, because there are no contours */
- gi->pointcounts[gi->next_glyph] = 0;
- gi->loca[gi->next_glyph++] = ftell(gi->glyphs);
- putshort(gi->hmtx,advance);
- putshort(gi->hmtx,0);
- if ( sf->hasvmetrics ) {
- putshort(gi->vmtx,gi->next_glyph==2?0:(sf->ascent+sf->descent));
- putshort(gi->vmtx,0);
- }
-}
-
-static void dumpspace(SplineChar *sc, struct glyphinfo *gi) {
- /* These don't get a glyph header, because there are no contours */
- DBounds b;
- gi->pointcounts[gi->next_glyph] = 0;
- gi->loca[gi->next_glyph++] = ftell(gi->glyphs);
- memset(&b,0,sizeof(b));
- ttfdumpmetrics(sc,gi,&b);
-}
-
-static int IsTTFRefable(SplineChar *sc,int layer) {
- RefChar *ref;
-
- if ( sc->layers[layer].refs==NULL || sc->layers[layer].splines!=NULL )
-return( false );
-
- for ( ref=sc->layers[layer].refs; ref!=NULL; ref=ref->next ) {
- if ( ref->transform[0]<-2 || ref->transform[0]>1.999939 ||
- ref->transform[1]<-2 || ref->transform[1]>1.999939 ||
- ref->transform[2]<-2 || ref->transform[2]>1.999939 ||
- ref->transform[3]<-2 || ref->transform[3]>1.999939 )
-return( false );
- }
-return( true );
-}
-
-int RefDepth(RefChar *ref,int layer) {
- int rd, temp;
- SplineChar *sc = ref->sc;
-
- if ( sc->layers[layer].refs==NULL || sc->layers[layer].splines!=NULL )
-return( 1 );
- rd = 0;
- for ( ref = sc->layers[layer].refs; ref!=NULL; ref=ref->next ) {
- if ( ref->transform[0]>=-2 || ref->transform[0]<=1.999939 ||
- ref->transform[1]>=-2 || ref->transform[1]<=1.999939 ||
- ref->transform[2]>=-2 || ref->transform[2]<=1.999939 ||
- ref->transform[3]>=-2 || ref->transform[3]<=1.999939 ) {
- temp = RefDepth(ref,layer);
- if ( temp>rd ) rd = temp;
- }
- }
-return( rd+1 );
-}
-
-static void CountCompositeMaxPts(SplineChar *sc,struct glyphinfo *gi) {
- RefChar *ref;
- int ptcnt = 0, index;
-
- for ( ref=sc->layers[gi->layer].refs; ref!=NULL; ref=ref->next ) {
- if ( ref->sc->ttf_glyph==-1 )
- continue;
- index = ref->sc->ttf_glyph;
- if ( gi->pointcounts[index]==-1 )
- CountCompositeMaxPts(ref->sc,gi);
- ptcnt += gi->pointcounts[index];
- }
- gi->pointcounts[sc->ttf_glyph] = ptcnt;
- if ( gi->maxp->maxCompositPts<ptcnt ) gi->maxp->maxCompositPts=ptcnt;
-}
-
-/* In order3 fonts we figure out the composite point counts at the end */
-/* when we know how many points are in each sub-glyph */
-static void RefigureCompositeMaxPts(SplineFont *sf,struct glyphinfo *gi) {
- int i;
-
- for ( i=0; i<gi->gcnt; ++i ) if ( gi->bygid[i]!=-1 && sf->glyphs[gi->bygid[i]]->ttf_glyph!=-1 ) {
- if ( sf->glyphs[gi->bygid[i]]->layers[gi->layer].splines==NULL &&
- sf->glyphs[gi->bygid[i]]->layers[gi->layer].refs!=NULL &&
- gi->pointcounts[i]== -1 )
- CountCompositeMaxPts(sf->glyphs[gi->bygid[i]],gi);
- }
-}
-
-static void dumpcomposite(SplineChar *sc, struct glyphinfo *gi) {
- struct glyphhead gh;
- DBounds bb;
- int i, ptcnt, ctcnt, flags, sptcnt, rd;
- SplineSet *ss;
- RefChar *ref;
- SplineChar *isc = sc->ttf_instrs==NULL && sc->parent->mm!=NULL && sc->parent->mm->apple ?
- sc->parent->mm->normal->glyphs[sc->orig_pos] : sc;
- int arg1, arg2;
-
- if ( gi->next_glyph!=sc->ttf_glyph )
- IError("Glyph count wrong in ttf output");
- if ( gi->next_glyph>=gi->maxp->numGlyphs )
- IError("max glyph count wrong in ttf output");
- gi->loca[gi->next_glyph] = ftell(gi->glyphs);
-
- SplineCharLayerQuickBounds(sc,gi->layer,&bb);
- gh.numContours = -1;
- gh.xmin = floor(bb.minx); gh.ymin = floor(bb.miny);
- gh.xmax = ceil(bb.maxx); gh.ymax = ceil(bb.maxy);
- dumpghstruct(gi,&gh);
-
- i=ptcnt=ctcnt=0;
- for ( ref=sc->layers[gi->layer].refs; ref!=NULL; ref=ref->next, ++i ) {
- if ( ref->sc->ttf_glyph==-1 ) {
- /*if ( sc->layers[gi->layer].refs->next==NULL || any )*/
- continue;
- }
- flags = 0;
- if ( ref->round_translation_to_grid )
- flags |= _ROUND;
- if ( ref->use_my_metrics )
- flags |= _USE_MY_METRICS;
- if ( ref->next!=NULL )
- flags |= _MORE; /* More components */
- else if ( isc->ttf_instrs_len!=0 ) /* Composits also inherit instructions */
- flags |= _INSTR; /* Instructions appear after last ref */
- if ( ref->transform[1]!=0 || ref->transform[2]!=0 )
- flags |= _MATRIX; /* Need a full matrix */
- else if ( ref->transform[0]!=ref->transform[3] )
- flags |= _XY_SCALE; /* different xy scales */
- else if ( ref->transform[0]!=1. )
- flags |= _SCALE; /* xy scale is same */
- if ( ref->point_match ) {
- arg1 = ref->match_pt_base;
- arg2 = ref->match_pt_ref;
- } else {
- arg1 = rint(ref->transform[4]);
- arg2 = rint(ref->transform[5]);
- flags |= _ARGS_ARE_XY|_UNSCALED_OFFSETS;
- /* The values I output are the values I want to see */
- /* There is some very strange stuff wrongly-documented on the apple*/
- /* site about how these should be interpretted when there are */
- /* scale factors, or rotations */
- /* That description does not match the behavior of their rasterizer*/
- /* I've reverse engineered something else (see parsettf.c) */
- /* http://fonts.apple.com/TTRefMan/RM06/Chap6glyf.html */
- /* Adobe says that setting bit 12 means that this will not happen */
- /* Apple doesn't mention bit 12 though...(but they do support it) */
- }
- if ( arg1<-128 || arg1>127 ||
- arg2<-128 || arg2>127 )
- flags |= _ARGS_ARE_WORDS;
- putshort(gi->glyphs,flags);
- putshort(gi->glyphs,ref->sc->ttf_glyph==-1?0:ref->sc->ttf_glyph);
- if ( flags&_ARGS_ARE_WORDS ) {
- putshort(gi->glyphs,(short)arg1);
- putshort(gi->glyphs,(short)arg2);
- } else {
- putc((char) arg1,gi->glyphs);
- putc((char) arg2,gi->glyphs);
- }
- if ( flags&_MATRIX ) {
- put2d14(gi->glyphs,ref->transform[0]);
- put2d14(gi->glyphs,ref->transform[1]);
- put2d14(gi->glyphs,ref->transform[2]);
- put2d14(gi->glyphs,ref->transform[3]);
- } else if ( flags&_XY_SCALE ) {
- put2d14(gi->glyphs,ref->transform[0]);
- put2d14(gi->glyphs,ref->transform[3]);
- } else if ( flags&_SCALE ) {
- put2d14(gi->glyphs,ref->transform[0]);
- }
- sptcnt = SSTtfNumberPoints(ref->layers[0].splines);
- for ( ss=ref->layers[0].splines; ss!=NULL ; ss=ss->next ) {
- ++ctcnt;
- }
- if ( sc->layers[gi->layer].order2 )
- ptcnt += sptcnt;
- else if ( ptcnt>=0 && gi->pointcounts[ref->sc->ttf_glyph==-1?0:ref->sc->ttf_glyph]>=0 )
- ptcnt += gi->pointcounts[ref->sc->ttf_glyph==-1?0:ref->sc->ttf_glyph];
- else
- ptcnt = -1;
- rd = RefDepth(ref,gi->layer);
- if ( rd>gi->maxp->maxcomponentdepth )
- gi->maxp->maxcomponentdepth = rd;
- }
-
- if ( isc->ttf_instrs_len!=0 )
- dumpinstrs(gi,isc->ttf_instrs,isc->ttf_instrs_len);
-
- gi->pointcounts[gi->next_glyph++] = ptcnt;
- if ( gi->maxp->maxnumcomponents<i ) gi->maxp->maxnumcomponents = i;
- if ( gi->maxp->maxCompositPts<ptcnt ) gi->maxp->maxCompositPts=ptcnt;
- if ( gi->maxp->maxCompositCtrs<ctcnt ) gi->maxp->maxCompositCtrs=ctcnt;
-
- ttfdumpmetrics(sc,gi,&bb);
- if ( ftell(gi->glyphs)&1 ) /* Pad the file so that the next glyph */
- putc('\0',gi->glyphs); /* on a word boundary, can only happen if odd number of instrs */
-}
-
-static void dumpglyph(SplineChar *sc, struct glyphinfo *gi) {
- struct glyphhead gh;
- DBounds bb;
- SplineSet *ss, *ttfss;
- int contourcnt, ptcnt, origptcnt;
- BasePoint *bp;
- char *fs;
- SplineChar *isc = sc->ttf_instrs==NULL && sc->parent->mm!=NULL && sc->parent->mm->apple ?
- sc->parent->mm->normal->glyphs[sc->orig_pos] : sc;
-
- /* This must have been an error on my part, can't just remove points */
- /* they might be matched to anchors or something */
-/* I haven't seen this documented, but ttf rasterizers are unhappy with a */
-/* glyph that consists of a single point. Glyphs containing two single points*/
-/* are ok, glyphs with a single point and anything else are ok, glyphs with */
-/* a line are ok. But a single point is not ok. Dunno why */
- if ( sc->layers[gi->layer].splines==NULL && sc->layers[gi->layer].refs==NULL ) {
- dumpspace(sc,gi);
-return;
- }
-
- if ( gi->next_glyph!=sc->ttf_glyph )
- IError("Glyph count wrong in ttf output");
- if ( gi->next_glyph>=gi->maxp->numGlyphs )
- IError("max glyph count wrong in ttf output");
- gi->loca[gi->next_glyph] = ftell(gi->glyphs);
-
- ttfss = SCttfApprox(sc,gi->layer);
- ptcnt = SSTtfNumberPoints(ttfss);
- for ( ss=ttfss, contourcnt=0; ss!=NULL; ss=ss->next ) {
- ++contourcnt;
- }
- origptcnt = ptcnt;
-
- SplineSetQuickBounds(ttfss,&bb);
- gh.numContours = contourcnt;
- gh.xmin = floor(bb.minx); gh.ymin = floor(bb.miny);
- gh.xmax = ceil(bb.maxx); gh.ymax = ceil(bb.maxy);
- dumpghstruct(gi,&gh);
- if ( contourcnt>gi->maxp->maxContours ) gi->maxp->maxContours = contourcnt;
- if ( ptcnt>gi->maxp->maxPoints ) gi->maxp->maxPoints = ptcnt;
-
- bp = malloc(ptcnt*sizeof(BasePoint));
- fs = malloc(ptcnt);
- ptcnt = contourcnt = 0;
- for ( ss=ttfss; ss!=NULL; ss=ss->next ) {
- ptcnt = SSAddPoints(ss,ptcnt,bp,fs);
- putshort(gi->glyphs,ptcnt-1);
- }
- if ( ptcnt!=origptcnt )
- IError( "Point count wrong calculated=%d, actual=%d in %.20s", origptcnt, ptcnt, sc->name );
- gi->pointcounts[gi->next_glyph++] = ptcnt;
-
- dumpinstrs(gi,isc->ttf_instrs,isc->ttf_instrs_len);
-
- dumppointarrays(gi,bp,fs,ptcnt);
- SplinePointListsFree(ttfss);
- free(bp);
- free(fs);
-
- ttfdumpmetrics(sc,gi,&bb);
-}
-
-void SFDummyUpCIDs(struct glyphinfo *gi,SplineFont *sf) {
- int i,j,k,max;
- int *bygid;
-
- max = 0;
- for ( k=0; k<sf->subfontcnt; ++k )
- if ( sf->subfonts[k]->glyphcnt>max ) max = sf->subfonts[k]->glyphcnt;
- if ( max == 0 )
-return;
-
- sf->glyphs = calloc(max,sizeof(SplineChar *));
- sf->glyphcnt = sf->glyphmax = max;
- for ( k=0; k<sf->subfontcnt; ++k )
- for ( i=0; i<sf->subfonts[k]->glyphcnt; ++i ) if ( sf->subfonts[k]->glyphs[i]!=NULL )
- sf->glyphs[i] = sf->subfonts[k]->glyphs[i];
-
- if ( gi==NULL )
-return;
-
- bygid = malloc((sf->glyphcnt+3)*sizeof(int));
- memset(bygid,0xff, (sf->glyphcnt+3)*sizeof(int));
-
- j=1;
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- if ( bygid[0]== -1 && strcmp(sf->glyphs[i]->name,".notdef")==0 ) {
- sf->glyphs[i]->ttf_glyph = 0;
- bygid[0] = i;
- } else if ( SCWorthOutputting(sf->glyphs[i])) {
- sf->glyphs[i]->ttf_glyph = j;
- bygid[j++] = i;
- }
- }
- gi->bygid = bygid;
- gi->gcnt = j;
-}
-
-static void AssignNotdefNull(SplineFont *sf,int *bygid, int iscff) {
- int i;
-
- /* The first three glyphs are magic, glyph 0 is .notdef */
- /* glyph 1 is .null and glyph 2 is nonmarking return */
- /* We may generate them automagically */
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- if ( bygid[0]== -1 && strcmp(sf->glyphs[i]->name,".notdef")==0 ) {
- sf->glyphs[i]->ttf_glyph = 0;
- bygid[0] = i;
- } else if ( !iscff && bygid[1]== -1 &&
- (strcmp(sf->glyphs[i]->name,".null")==0 ||
- strcmp(sf->glyphs[i]->name,"uni0000")==0 ||
- (i==1 && strcmp(sf->glyphs[1]->name,"glyph1")==0)) ) {
- sf->glyphs[i]->ttf_glyph = 1;
- bygid[1] = i;
- } else if ( !iscff && bygid[2]== -1 &&
- (strcmp(sf->glyphs[i]->name,"nonmarkingreturn")==0 ||
- strcmp(sf->glyphs[i]->name,"uni000D")==0 ||
- (i==2 && strcmp(sf->glyphs[2]->name,"glyph2")==0)) ) {
- sf->glyphs[i]->ttf_glyph = 2;
- bygid[2] = i;
- }
- }
-}
-
-static int AssignTTFGlyph(struct glyphinfo *gi,SplineFont *sf,EncMap *map,int iscff) {
- int *bygid = malloc((sf->glyphcnt+3)*sizeof(int));
- int i,j;
-
- memset(bygid,0xff, (sf->glyphcnt+3)*sizeof(int));
-
- AssignNotdefNull(sf,bygid,iscff);
-
- j = iscff ? 1 : 3;
- for ( i=0; i<map->enccount; ++i ) if ( map->map[i]!=-1 ) {
- SplineChar *sc = sf->glyphs[map->map[i]];
- if ( SCWorthOutputting(sc) && sc->ttf_glyph==-1
-#if HANYANG
- && (!iscff || !sc->compositionunit)
-#endif
- ) {
- sc->ttf_glyph = j;
- bygid[j++] = sc->orig_pos;
- }
- }
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- SplineChar *sc = sf->glyphs[i];
- if ( SCWorthOutputting(sc) && sc->ttf_glyph==-1
-#if HANYANG
- && (!iscff || !sc->compositionunit)
-#endif
- ) {
- sc->ttf_glyph = j;
- bygid[j++] = i;
- }
- }
- gi->bygid = bygid;
- gi->gcnt = j;
-return j;
-}
-
-static int dumpglyphs(SplineFont *sf,struct glyphinfo *gi) {
- int i;
- int fixed = gi->fixed_width;
-
- ff_progress_change_stages(2+gi->strikecnt);
- QuickBlues(sf,gi->layer,&gi->bd);
- /*FindBlues(sf,gi->blues,NULL);*/
- ff_progress_next_stage();
-
- if ( !gi->onlybitmaps ) {
- if ( sf->layers[gi->layer].order2 )
- for ( i=0; i<sf->glyphcnt; ++i ) {
- SplineChar *sc = sf->glyphs[i];
- if ( SCWorthOutputting(sc) )
- if ( !SCPointsNumberedProperly(sc,gi->layer)) {
- free(sc->ttf_instrs); sc->ttf_instrs = NULL;
- sc->ttf_instrs_len = 0;
- SCNumberPoints(sc,gi->layer);
- }
- }
- }
-
- gi->maxp->numGlyphs = gi->gcnt;
- gi->loca = malloc((gi->maxp->numGlyphs+1)*sizeof(uint32));
- gi->pointcounts = malloc((gi->maxp->numGlyphs+1)*sizeof(int32));
- memset(gi->pointcounts,-1,(gi->maxp->numGlyphs+1)*sizeof(int32));
- gi->next_glyph = 0;
- gi->glyphs = tmpfile2();
- gi->hmtx = tmpfile2();
- if ( sf->hasvmetrics )
- gi->vmtx = tmpfile2();
- FigureFullMetricsEnd(sf,gi,true);
-
- if ( fixed>0 ) {
- gi->lasthwidth = 3;
- gi->hfullcnt = 3;
- }
- for ( i=0; i<gi->gcnt; ++i ) {
- if ( i==0 ) {
- if ( gi->bygid[0]!=-1 && (fixed<=0 || sf->glyphs[gi->bygid[0]]->width==fixed))
- dumpglyph(sf->glyphs[gi->bygid[0]],gi);
- else
- dumpmissingglyph(sf,gi,fixed);
- } else if ( i<=2 && gi->bygid[i]==-1 )
- dumpblankglyph(gi,sf,fixed);
- else if ( gi->onlybitmaps ) {
- if ( gi->bygid[i]!=-1 && sf->glyphs[gi->bygid[i]]->ttf_glyph>0 )
- dumpspace(sf->glyphs[gi->bygid[i]],gi);
- } else {
- if ( gi->bygid[i]!=-1 && sf->glyphs[gi->bygid[i]]->ttf_glyph>0 ) {
- if ( IsTTFRefable(sf->glyphs[gi->bygid[i]],gi->layer) )
- dumpcomposite(sf->glyphs[gi->bygid[i]],gi);
- else
- dumpglyph(sf->glyphs[gi->bygid[i]],gi);
- }
- }
- if ( (ftell(gi->glyphs)&3) != 0 ) {
- /* Apple says glyphs must be 16bit aligned */
- if ( ftell(gi->glyphs)&1 )
- putc('\0',gi->glyphs);
- /* MS says glyphs should be 32bit aligned */
- if ( ftell(gi->glyphs)&2 )
- putshort(gi->glyphs,0);
- }
- if ( !ff_progress_next())
-return( false );
- }
-
- /* extra location entry points to end of last glyph */
- gi->loca[gi->next_glyph] = ftell(gi->glyphs);
- /* Microsoft's Font Validator wants the last loca entry to point into the */
- /* glyph table. I think that's an error on their part, but it's so easy */
- /* to fix, I might as well (instead of pointing to right after the table)*/
- /* Sigh. But if I do that, it complains that there's extra stuff in the */
- /* glyph table. There's just no pleasing them */
- /* putlong(gi->glyphs,0);*/
- gi->glyph_len = ftell(gi->glyphs);
- gi->hmtxlen = ftell(gi->hmtx);
- /* pad out to four bytes */
- if ( gi->hmtxlen&2 ) putshort(gi->hmtx,0);
- if ( gi->loca[gi->next_glyph]&3 ) {
- for ( i=4-(gi->loca[gi->next_glyph]&3); i>0; --i )
- putc('\0',gi->glyphs);
- }
- if ( sf->hasvmetrics ) {
- gi->vmtxlen = ftell(gi->vmtx);
- if ( gi->vmtxlen&2 ) putshort(gi->vmtx,0);
- }
- if ( !sf->layers[gi->layer].order2 )
- RefigureCompositeMaxPts(sf,gi);
- free(gi->pointcounts);
-
-return( true );
-}
-
-static int storesid(struct alltabs *at,const char *str) {
- int i;
- FILE *news;
- const char *pt;
- long pos;
-
- if ( str!=NULL ) { /* NULL is the magic string at end of array */
- for ( i=0; cffnames[i]!=NULL; ++i ) {
- if ( strcmp(cffnames[i],str)==0 )
-return( i );
- }
- }
-
- pos = ftell(at->sidf)+1;
- if ( pos>=65536 && !at->sidlongoffset ) {
- at->sidlongoffset = true;
- news = tmpfile2();
- rewind(at->sidh);
- for ( i=0; i<at->sidcnt; ++i )
- putlong(news,getushort(at->sidh));
- fclose(at->sidh);
- at->sidh = news;
- }
- if ( at->sidlongoffset )
- putlong(at->sidh,pos);
- else
- putshort(at->sidh,pos);
-
- if ( str!=NULL ) {
- for ( pt=str; *pt; ++pt )
- putc(*pt,at->sidf);
- }
-return( at->sidcnt++ + nStdStrings );
-}
-
-static void dumpint(FILE *cfff,int num) {
-
- if ( num>=-107 && num<=107 )
- putc(num+139,cfff);
- else if ( num>=108 && num<=1131 ) {
- num -= 108;
- putc((num>>8)+247,cfff);
- putc(num&0xff,cfff);
- } else if ( num>=-1131 && num<=-108 ) {
- num = -num;
- num -= 108;
- putc((num>>8)+251,cfff);
- putc(num&0xff,cfff);
- } else if ( num>=-32768 && num<32768 ) {
- putc(28,cfff);
- putc(num>>8,cfff);
- putc(num&0xff,cfff);
- } else { /* In dict data we have 4 byte ints, in type2 strings we don't */
- putc(29,cfff);
- putc((num>>24)&0xff,cfff);
- putc((num>>16)&0xff,cfff);
- putc((num>>8)&0xff,cfff);
- putc(num&0xff,cfff);
- }
-}
-
-static void dumpdbl(FILE *cfff,double d) {
- if ( d-rint(d)>-.00001 && d-rint(d)<.00001 )
- dumpint(cfff,(int) d);
- else {
- /* The type2 strings have a fixed format, but the dict data does not */
- char buffer[20], *pt;
- int sofar,n,odd;
- sprintf( buffer, "%g", d);
- sofar = 0; odd=true;
- putc(30,cfff); /* Start a double */
- for ( pt=buffer; *pt; ++pt ) {
- if ( isdigit(*pt) )
- n = *pt-'0';
- else if ( *pt=='.' )
- n = 0xa;
- else if ( *pt=='-' )
- n = 0xe;
- else if (( *pt=='E' || *pt=='e') && pt[1]=='-' ) {
- n = 0xc;
- ++pt;
- } else if ( *pt=='E' || *pt=='e')
- n = 0xb;
- else
- n = 0; /* Should never happen */
- if ( odd ) {
- sofar = n<<4;
- odd = false;
- } else {
- putc(sofar|n,cfff);
- sofar=0;
- odd = true;
- }
- }
- if ( sofar==0 )
- putc(0xff,cfff);
- else
- putc(sofar|0xf,cfff);
- }
-}
-
-static void dumpoper(FILE *cfff,int oper ) {
- if ( oper!=-1 ) {
- if ( oper>=256 )
- putc(oper>>8,cfff);
- putc(oper&0xff,cfff);
- }
-}
-
-static void dumpdbloper(FILE *cfff,double d, int oper ) {
- dumpdbl(cfff,d);
- dumpoper(cfff,oper);
-}
-
-static void dumpintoper(FILE *cfff,int v, int oper ) {
- dumpint(cfff,v);
- dumpoper(cfff,oper);
-}
-
-static void dumpsizedint(FILE *cfff,int big,int num, int oper ) {
- if ( big ) {
- putc(29,cfff);
- putc((num>>24)&0xff,cfff);
- putc((num>>16)&0xff,cfff);
- putc((num>>8)&0xff,cfff);
- putc(num&0xff,cfff);
- } else {
- putc(28,cfff);
- putc(num>>8,cfff);
- putc(num&0xff,cfff);
- }
- dumpoper(cfff,oper);
-}
-
-static void dumpsid(FILE *cfff,struct alltabs *at,char *str,int oper) {
- if ( str==NULL )
-return;
- dumpint(cfff,storesid(at,str));
- dumpoper(cfff,oper);
-}
-
-static void DumpStrDouble(char *pt,FILE *cfff,int oper) {
- real d;
- if ( *pt=='[' ) ++pt; /* For StdHW, StdVW */
- d = strtod(pt,NULL);
- dumpdbloper(cfff,d,oper);
-}
-
-static void DumpDblArray(real *arr,int n,FILE *cfff, int oper) {
- int mi,i;
-
- for ( mi=n-1; mi>=0 && arr[mi]==0; --mi );
- if ( mi<0 )
-return;
- dumpdbl(cfff,arr[0]);
- for ( i=1; i<=mi; ++i )
- dumpdbl(cfff,arr[i]-arr[i-1]);
- dumpoper(cfff,oper);
-}
-
-static void DumpStrArray(char *pt,FILE *cfff,int oper) {
- real d, last=0;
- char *end;
-
- while ( *pt==' ' ) ++pt;
- if ( *pt=='\0' )
-return;
- if ( *pt=='[' ) ++pt;
- while ( *pt==' ' ) ++pt;
- while ( *pt!=']' && *pt!='\0' ) {
- d = strtod(pt,&end);
- if ( pt==end ) /* User screwed up. Should be a number */
- break;
- dumpdbl(cfff,d-last);
- last = d;
- pt = end;
- while ( *pt==' ' ) ++pt;
- }
- dumpoper(cfff,oper);
-}
-
-static void dumpcffheader(FILE *cfff) {
- putc('\1',cfff); /* Major version: 1 */
- putc('\0',cfff); /* Minor version: 0 */
- putc('\4',cfff); /* Header size in bytes */
- putc('\4',cfff); /* Absolute Offset size. */
- /* I don't think there are any absolute offsets that aren't encoded */
- /* in a dict as numbers (ie. inherently variable sized items) */
-}
-
-static void dumpcffnames(SplineFont *sf,FILE *cfff) {
- char *pt;
-
- putshort(cfff,1); /* One font name */
- putc('\1',cfff); /* Offset size */
- putc('\1',cfff); /* Offset to first name */
- putc('\1'+strlen(sf->fontname),cfff);
- for ( pt=sf->fontname; *pt; ++pt )
- putc(*pt,cfff);
-}
-
-static void dumpcffcharset(SplineFont *sf,struct alltabs *at) {
- int i;
-
- at->gn_sid = calloc(at->gi.gcnt,sizeof(uint32));
- putc(0,at->charset);
- /* I always use a format 0 charset. ie. an array of SIDs in random order */
-
- /* First element must be ".notdef" and is omitted */
-
- for ( i=1; i<at->gi.gcnt; ++i )
- if ( at->gi.bygid[i]!=-1 && SCWorthOutputting(sf->glyphs[at->gi.bygid[i]])) {
- at->gn_sid[i] = storesid(at,sf->glyphs[at->gi.bygid[i]]->name);
- putshort(at->charset,at->gn_sid[i]);
- }
-}
-
-static void dumpcffcidset(struct alltabs *at) {
- int gid, start;
-
- putc(2,at->charset);
-
- start = -1; /* Glyph 0 always maps to CID 0, and is omitted */
- for ( gid = 1; gid<at->gi.gcnt; ++gid ) {
- if ( start==-1 )
- start = gid;
- else if ( at->gi.bygid[gid]-at->gi.bygid[start]!=gid-start ) {
- putshort(at->charset,at->gi.bygid[start]);
- putshort(at->charset,at->gi.bygid[gid-1]-at->gi.bygid[start]);
- start = gid;
- }
- }
- if ( start!=-1 ) {
- putshort(at->charset,at->gi.bygid[start]);
- putshort(at->charset,at->gi.bygid[gid-1]-at->gi.bygid[start]);
- }
-}
-
-static void dumpcfffdselect(SplineFont *sf,struct alltabs *at) {
- int cid, k, lastfd, cnt;
- int gid;
-
- putc(3,at->fdselect);
- putshort(at->fdselect,0); /* number of ranges, fill in later */
-
- for ( k=0; k<sf->subfontcnt; ++k )
- if ( SCWorthOutputting(sf->subfonts[k]->glyphs[0]))
- break;
- if ( k==sf->subfontcnt ) --k; /* If CID 0 not defined, put it in last font */
- putshort(at->fdselect,0);
- putc(k,at->fdselect);
- lastfd = k;
- cnt = 1;
- for ( gid = 1; gid<at->gi.gcnt; ++gid ) {
- cid = at->gi.bygid[gid];
- for ( k=0; k<sf->subfontcnt; ++k ) {
- if ( cid<sf->subfonts[k]->glyphcnt &&
- SCWorthOutputting(sf->subfonts[k]->glyphs[cid]) )
- break;
- }
- if ( k==sf->subfontcnt )
- /* Doesn't map to a glyph, irrelevant */;
- else {
- if ( k!=lastfd ) {
- putshort(at->fdselect,gid);
- putc(k,at->fdselect);
- lastfd = k;
- ++cnt;
- }
- }
- }
- putshort(at->fdselect,gid);
- fseek(at->fdselect,1,SEEK_SET);
- putshort(at->fdselect,cnt);
- fseek(at->fdselect,0,SEEK_END);
-}
-
-static void dumpcffencoding(SplineFont *sf,struct alltabs *at) {
- int i, cnt, anydups;
- uint32 start_pos = ftell(at->encoding);
- SplineChar *sc;
- EncMap *map = at->map;
-
- putc(0,at->encoding);
- /* I always use a format 0 encoding. ie. an array of glyph indexes */
- putc(0xff,at->encoding); /* fixup later */
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL )
- sf->glyphs[i]->ticked = false;
-
- cnt = 0;
- anydups = 0;
- for ( i=0; i<256 && i<map->enccount; ++i ) if ( map->map[i]!=-1 && (sc=sf->glyphs[map->map[i]])!=NULL ) {
- if ( sc->ttf_glyph>255 )
- continue;
- if ( sc->ticked ) {
- ++anydups;
- } else if ( sc->ttf_glyph>0 ) {
- if ( cnt>=255 )
- break;
- putc(i,at->encoding);
- ++cnt;
- sc->ticked = true;
- }
- }
- if ( anydups ) {
- fseek(at->encoding,start_pos,SEEK_SET);
- putc(0x80,at->encoding);
- putc(cnt,at->encoding);
- fseek(at->encoding,0,SEEK_END);
- putc(anydups,at->encoding);
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL )
- sf->glyphs[i]->ticked = false;
- for ( i=0; i<256 && i<map->enccount; ++i ) if ( map->map[i]!=-1 && (sc=sf->glyphs[map->map[i]])!=NULL ) {
- if ( sc->ttf_glyph>255 )
- continue;
- if ( sc->ticked ) {
- putc(i,at->encoding);
- putshort(at->encoding,at->gn_sid[sc->ttf_glyph]);
- }
- sc->ticked = true;
- }
- } else {
- fseek(at->encoding,start_pos+1,SEEK_SET);
- putc(cnt,at->encoding);
- fseek(at->encoding,0,SEEK_END);
- }
- free( at->gn_sid );
- at->gn_sid = NULL;
-}
-
-static void _dumpcffstrings(FILE *file, struct pschars *strs) {
- int i, len, offsize;
-
- /* First figure out the offset size */
- len = 1;
- for ( i=0; i<strs->next; ++i )
- len += strs->lens[i];
-
- /* Then output the index size and offsets */
- putshort( file, strs->next );
- if ( strs->next!=0 ) {
- /* presumably offsets are unsigned. But the docs don't state this in the obvious place */
- offsize = len<=255?1:len<=65535?2:len<=0xffffff?3:4;
- putc(offsize,file);
- len = 1;
- for ( i=0; i<strs->next; ++i ) {
- dumpoffset(file,offsize,len);
- len += strs->lens[i];
- }
- dumpoffset(file,offsize,len);
-
- /* last of all the strings */
- for ( i=0; i<strs->next; ++i ) {
- uint8 *pt = strs->values[i], *end = pt+strs->lens[i];
- while ( pt<end ) {
- putc( *pt++, file );
- }
- }
- }
-}
-
-static FILE *dumpcffstrings(struct pschars *strs) {
- FILE *file = tmpfile2();
- _dumpcffstrings(file,strs);
- PSCharsFree(strs);
-return( file );
-}
-
-int SFFigureDefWidth(SplineFont *sf, int *_nomwid) {
- uint16 *widths; uint32 *cumwid;
- int nomwid, defwid, i, j, sameval=(int) 0x80000000, maxw=0, allsame=true;
- unsigned cnt;
-
- for ( i=0; i<sf->glyphcnt; ++i )
- if ( SCWorthOutputting(sf->glyphs[i]) ) {
- if ( maxw<sf->glyphs[i]->width ) maxw = sf->glyphs[i]->width;
- if ( sameval == 0x8000000 )
- sameval = sf->glyphs[i]->width;
- else if ( sameval!=sf->glyphs[i]->width )
- allsame = false;
- }
- if ( allsame ) {
- nomwid = defwid = sameval;
- } else {
- ++maxw;
- if ( maxw>65535 ) maxw = 3*(sf->ascent+sf->descent);
- widths = calloc(maxw,sizeof(uint16));
- cumwid = calloc(maxw,sizeof(uint32));
- defwid = 0; cnt=0;
- for ( i=0; i<sf->glyphcnt; ++i )
- if ( SCWorthOutputting(sf->glyphs[i]) &&
- sf->glyphs[i]->width>=0 &&
- sf->glyphs[i]->width<maxw )
- if ( ++widths[sf->glyphs[i]->width] > cnt ) {
- defwid = sf->glyphs[i]->width;
- cnt = widths[defwid];
- }
- widths[defwid] = 0;
- for ( i=0; i<maxw; ++i )
- for ( j=-107; j<=107; ++j )
- if ( i+j>=0 && i+j<maxw )
- cumwid[i] += widths[i+j];
- cnt = 0; nomwid = 0;
- for ( i=0; i<maxw; ++i )
- if ( cnt<cumwid[i] ) {
- cnt = cumwid[i];
- nomwid = i;
- }
- free(widths); free(cumwid);
- }
- if ( _nomwid!=NULL )
- *_nomwid = nomwid;
-return( defwid );
-}
-
-static void ATFigureDefWidth(SplineFont *sf, struct alltabs *at, int subfont) {
- int nomwid, defwid;
-
- defwid = SFFigureDefWidth(sf,&nomwid);
- if ( subfont==-1 )
- at->defwid = defwid;
- else
- at->fds[subfont].defwid = defwid;
- if ( subfont==-1 )
- at->nomwid = nomwid;
- else
- at->fds[subfont].nomwid = nomwid;
-}
-
-static void dumpcffprivate(SplineFont *sf,struct alltabs *at,int subfont,
- int subrcnt) {
- char *pt;
- FILE *private = subfont==-1?at->private:at->fds[subfont].private;
- int mi,i;
- real bluevalues[14], otherblues[10];
- real snapcnt[12];
- real stemsnaph[12], stemsnapv[12];
- real stdhw[1], stdvw[1];
- int hasblue=0, hash=0, hasv=0, bs;
- int nomwid, defwid;
- EncMap *map = at->map;
- double bluescale;
-
- /* The private dict is not in an index, so no index header. Just the data */
-
- if ( subfont==-1 )
- defwid = at->defwid;
- else
- defwid = at->fds[subfont].defwid;
- dumpintoper(private,defwid,20); /* Default Width */
- if ( subfont==-1 )
- nomwid = at->nomwid;
- else
- nomwid = at->fds[subfont].nomwid;
- dumpintoper(private,nomwid,21); /* Nominative Width */
-
- bs = SplineFontIsFlexible(sf,at->gi.layer,at->gi.flags);
- hasblue = PSDictHasEntry(sf->private,"BlueValues")!=NULL;
- hash = PSDictHasEntry(sf->private,"StdHW")!=NULL;
- hasv = PSDictHasEntry(sf->private,"StdVW")!=NULL;
- ff_progress_change_stages(2+autohint_before_generate+!hasblue);
- if ( autohint_before_generate ) {
- ff_progress_change_line1(_("Auto Hinting Font..."));
- SplineFontAutoHint(sf,at->gi.layer);
- ff_progress_next_stage();
- }
-
- otherblues[0] = otherblues[1] = bluevalues[0] = bluevalues[1] = 0;
- if ( !hasblue ) {
- FindBlues(sf,at->gi.layer,bluevalues,otherblues);
- ff_progress_next_stage();
- }
-
- stdhw[0] = stdvw[0] = 0;
- if ( !hash ) {
- FindHStems(sf,stemsnaph,snapcnt);
- mi = -1;
- for ( i=0; i<12 && stemsnaph[i]!=0; ++i )
- if ( mi==-1 ) mi = i;
- else if ( snapcnt[i]>snapcnt[mi] ) mi = i;
- if ( mi!=-1 ) stdhw[0] = stemsnaph[mi];
- }
-
- if ( !hasv ) {
- FindVStems(sf,stemsnapv,snapcnt);
- mi = -1;
- for ( i=0; i<12 && stemsnapv[i]!=0; ++i )
- if ( mi==-1 ) mi = i;
- else if ( snapcnt[i]>snapcnt[mi] ) mi = i;
- if ( mi!=-1 ) stdvw[0] = stemsnapv[mi];
- }
- ff_progress_change_line1(_("Saving OpenType Font"));
-
- if ( hasblue )
- DumpStrArray(PSDictHasEntry(sf->private,"BlueValues"),private,6);
- else
- DumpDblArray(bluevalues,sizeof(bluevalues)/sizeof(bluevalues[0]),private,6);
- if ( (pt=PSDictHasEntry(sf->private,"OtherBlues"))!=NULL )
- DumpStrArray(pt,private,7);
- else if ( !hasblue )
- DumpDblArray(otherblues,sizeof(otherblues)/sizeof(otherblues[0]),private,7);
- if ( (pt=PSDictHasEntry(sf->private,"FamilyBlues"))!=NULL )
- DumpStrArray(pt,private,8);
- bluescale = BlueScaleFigure(sf->private,bluevalues,otherblues);
- if ( (pt=PSDictHasEntry(sf->private,"FamilyOtherBlues"))!=NULL )
- DumpStrArray(pt,private,9);
- if ( (pt=PSDictHasEntry(sf->private,"BlueScale"))!=NULL )
- DumpStrDouble(pt,private,(12<<8)+9);
- else if ( bluescale!=-1 )
- dumpdbloper(private,bluescale,(12<<8)+9);
- if ( (pt=PSDictHasEntry(sf->private,"BlueShift"))!=NULL )
- DumpStrDouble(pt,private,(12<<8)+10);
- else
- dumpintoper(private,bs,(12<<8)+10);
- if ( (pt=PSDictHasEntry(sf->private,"BlueFuzz"))!=NULL )
- DumpStrDouble(pt,private,(12<<8)+11);
- if ( hash ) {
- DumpStrDouble(PSDictHasEntry(sf->private,"StdHW"),private,10);
- if ( (pt=PSDictHasEntry(sf->private,"StemSnapH"))!=NULL )
- DumpStrArray(pt,private,(12<<8)|12);
- } else {
- if ( stdhw[0]!=0 )
- dumpdbloper(private,stdhw[0],10);
- DumpDblArray(stemsnaph,sizeof(stemsnaph)/sizeof(stemsnaph[0]),private,(12<<8)|12);
- }
- if ( hasv ) {
- DumpStrDouble(PSDictHasEntry(sf->private,"StdVW"),private,11);
- if ( (pt=PSDictHasEntry(sf->private,"StemSnapV"))!=NULL )
- DumpStrArray(pt,private,(12<<8)|13);
- } else {
- if ( stdvw[0]!=0 )
- dumpdbloper(private,stdvw[0],11);
- DumpDblArray(stemsnapv,sizeof(stemsnapv)/sizeof(stemsnapv[0]),private,(12<<8)|13);
- }
- if ( (pt=PSDictHasEntry(sf->private,"ForceBold"))!=NULL ) {
- dumpintoper(private,*pt=='t'||*pt=='T',(12<<8)|14);
- } else if ( sf->weight!=NULL &&
- (strstrmatch(sf->weight,"Bold")!=NULL ||
- strstrmatch(sf->weight,"Demi")!=NULL ||
- strstrmatch(sf->weight,"Fett")!=NULL ||
- strstrmatch(sf->weight,"Gras")!=NULL ||
- strstrmatch(sf->weight,"Heavy")!=NULL ||
- strstrmatch(sf->weight,"Black")!=NULL))
- dumpintoper(private,1,(12<<8)|14);
- if ( (pt=PSDictHasEntry(sf->private,"LanguageGroup"))!=NULL )
- DumpStrDouble(pt,private,(12<<8)+17);
- else if ( map==NULL )
- /* Do Nothing */;
- else if ( map->enc->is_japanese ||
- map->enc->is_korean ||
- map->enc->is_tradchinese ||
- map->enc->is_simplechinese )
- dumpintoper(private,1,(12<<8)|17);
- if ( (pt=PSDictHasEntry(sf->private,"ExpansionFactor"))!=NULL )
- DumpStrDouble(pt,private,(12<<8)+18);
- if ( subrcnt!=0 )
- dumpsizedint(private,false,ftell(private)+3+1,19); /* Subrs */
-
- if ( subfont==-1 )
- at->privatelen = ftell(private);
- else
- at->fds[subfont].privatelen = ftell(private);
-}
-
-/* When we exit this the topdict is not complete, we still need to fill in */
-/* values for charset,encoding,charstrings and private. Then we need to go */
-/* back and fill in the table length (at lenpos) */
-static void dumpcfftopdict(SplineFont *sf,struct alltabs *at) {
- char *pt, *end;
- FILE *cfff = at->cfff;
- DBounds b;
-
- putshort(cfff,1); /* One top dict */
- putc('\2',cfff); /* Offset size */
- putshort(cfff,1); /* Offset to topdict */
- at->lenpos = ftell(cfff);
- putshort(cfff,0); /* placeholder for final position (final offset in index points beyond last element) */
- dumpsid(cfff,at,sf->version,0);
- dumpsid(cfff,at,sf->copyright,1);
- dumpsid(cfff,at,sf->fullname?sf->fullname:sf->fontname,2);
- dumpsid(cfff,at,sf->familyname,3);
- dumpsid(cfff,at,sf->weight,4);
- if ( at->gi.fixed_width>0 ) dumpintoper(cfff,1,(12<<8)|1);
- if ( sf->italicangle!=0 ) dumpdbloper(cfff,sf->italicangle,(12<<8)|2);
- if ( sf->upos!=-100 ) dumpdbloper(cfff,sf->upos,(12<<8)|3);
- if ( sf->uwidth!=50 ) dumpdbloper(cfff,sf->uwidth,(12<<8)|4);
- if ( sf->strokedfont ) {
- dumpintoper(cfff,2,(12<<8)|5);
- dumpdbloper(cfff,sf->strokewidth,(12<<8)|8);
- }
- /* We'll never set CharstringType */
- if ( sf->ascent+sf->descent!=1000 ) {
- dumpdbl(cfff,1.0/(sf->ascent+sf->descent));
- dumpint(cfff,0);
- dumpint(cfff,0);
- dumpdbl(cfff,1.0/(sf->ascent+sf->descent));
- dumpint(cfff,0);
- dumpintoper(cfff,0,(12<<8)|7);
- }
- if ( sf->uniqueid!=-1 && sf->use_uniqueid )
- dumpintoper(cfff, sf->uniqueid?sf->uniqueid:4000000 + (rand()&0x3ffff), 13 );
- SplineFontLayerFindBounds(sf,at->gi.layer,&b);
- at->gi.xmin = b.minx;
- at->gi.ymin = b.miny;
- at->gi.xmax = b.maxx;
- at->gi.ymax = b.maxy;
- dumpdbl(cfff,floor(b.minx));
- dumpdbl(cfff,floor(b.miny));
- dumpdbl(cfff,ceil(b.maxx));
- dumpdbloper(cfff,ceil(b.maxy),5);
- /* We'll never set StrokeWidth */
- if ( sf->xuid!=NULL && sf->use_xuid ) {
- pt = sf->xuid; if ( *pt=='[' ) ++pt;
- while ( *pt && *pt!=']' ) {
- dumpint(cfff,strtol(pt,&end,10));
- if ( pt==end ) /* garbage in XUID */
- break;
- for ( pt = end; *pt==' '; ++pt );
- }
- putc(14,cfff);
- if ( sf->changed_since_xuidchanged )
- SFIncrementXUID(sf);
- }
- /* Offset to charset (oper=15) needed here */
- /* Offset to encoding (oper=16) needed here (not for CID )*/
- /* Offset to charstrings (oper=17) needed here */
- /* Length of, and Offset to private (oper=18) needed here (not for CID )*/
-}
-
-static int dumpcffdict(SplineFont *sf,struct alltabs *at) {
- FILE *fdarray = at->fdarray;
- int pstart;
- /* according to the PSRef Man v3, only fontname, fontmatrix and private */
- /* appear in this dictionary */
-
- dumpsid(fdarray,at,sf->fontname,(12<<8)|38);
- if ( sf->ascent+sf->descent!=1000 ) {
- dumpdbl(fdarray,1.0/(sf->ascent+sf->descent));
- dumpint(fdarray,0);
- dumpint(fdarray,0);
- dumpdbl(fdarray,1.0/(sf->ascent+sf->descent));
- dumpint(fdarray,0);
- dumpintoper(fdarray,0,(12<<8)|7);
- }
- pstart = ftell(fdarray);
- dumpsizedint(fdarray,false,0,-1); /* private length */
- dumpsizedint(fdarray,true,0,18); /* private offset */
-return( pstart );
-}
-
-static void dumpcffdictindex(SplineFont *sf,struct alltabs *at) {
- int i;
- int pos;
-
- putshort(at->fdarray,sf->subfontcnt);
- putc('\2',at->fdarray); /* DICTs aren't very big, and there are at most 255 */
- putshort(at->fdarray,1); /* Offset to first dict */
- for ( i=0; i<sf->subfontcnt; ++i )
- putshort(at->fdarray,0); /* Dump offset placeholders (note there's one extra to mark the end) */
- pos = ftell(at->fdarray)-1;
- for ( i=0; i<sf->subfontcnt; ++i ) {
- at->fds[i].fillindictmark = dumpcffdict(sf->subfonts[i],at);
- at->fds[i].eodictmark = ftell(at->fdarray);
- if ( at->fds[i].eodictmark>65536 )
- IError("The DICT INDEX got too big, result won't work");
- }
- fseek(at->fdarray,2*sizeof(short)+sizeof(char),SEEK_SET);
- for ( i=0; i<sf->subfontcnt; ++i )
- putshort(at->fdarray,at->fds[i].eodictmark-pos);
- fseek(at->fdarray,0,SEEK_END);
-}
-
-static void dumpcffcidtopdict(SplineFont *sf,struct alltabs *at) {
- char *pt, *end;
- FILE *cfff = at->cfff;
- DBounds b;
- int cidcnt=0, k;
-
- for ( k=0; k<sf->subfontcnt; ++k )
- if ( sf->subfonts[k]->glyphcnt>cidcnt ) cidcnt = sf->subfonts[k]->glyphcnt;
-
- putshort(cfff,1); /* One top dict */
- putc('\2',cfff); /* Offset size */
- putshort(cfff,1); /* Offset to topdict */
- at->lenpos = ftell(cfff);
- putshort(cfff,0); /* placeholder for final position */
- dumpsid(cfff,at,sf->cidregistry,-1);
- dumpsid(cfff,at,sf->ordering,-1);
- dumpintoper(cfff,sf->supplement,(12<<8)|30); /* ROS operator must be first */
- dumpdbloper(cfff,sf->cidversion,(12<<8)|31);
- dumpintoper(cfff,cidcnt,(12<<8)|34);
- if ( sf->use_uniqueid )
- dumpintoper(cfff, sf->uniqueid?sf->uniqueid:4000000 + (rand()&0x3ffff), (12<<8)|35 );
-
- dumpsid(cfff,at,sf->copyright,1);
- dumpsid(cfff,at,sf->fullname?sf->fullname:sf->fontname,2);
- dumpsid(cfff,at,sf->familyname,3);
- dumpsid(cfff,at,sf->weight,4);
- /* FontMatrix (identity here, real ones in sub fonts)*/
- /* Actually there is no fontmatrix in the adobe cid font I'm looking at */
- /* which means it should default to [.001...] but it doesn't so the */
- /* docs aren't completely accurate */
- /* I now see I've no idea what the FontMatrix means in a CID keyed font */
- /* it seems to be ignored everywhere, so we omit it */
-
- CIDLayerFindBounds(sf,at->gi.layer,&b);
- at->gi.xmin = b.minx;
- at->gi.ymin = b.miny;
- at->gi.xmax = b.maxx;
- at->gi.ymax = b.maxy;
- dumpdbl(cfff,floor(b.minx));
- dumpdbl(cfff,floor(b.miny));
- dumpdbl(cfff,ceil(b.maxx));
- dumpdbloper(cfff,ceil(b.maxy),5);
- /* We'll never set StrokeWidth */
- if ( sf->xuid!=NULL && sf->use_xuid ) {
- pt = sf->xuid; if ( *pt=='[' ) ++pt;
- while ( *pt && *pt!=']' ) {
- dumpint(cfff,strtol(pt,&end,10));
- for ( pt = end; *pt==' '; ++pt );
- }
- putc(14,cfff);
- if ( sf->changed_since_xuidchanged )
- SFIncrementXUID(sf);
- }
- /* Acrobat doesn't seem to care about a private dict here. Ghostscript */
- /* dies. Tech Note: 5176.CFF.PDF, top of page 23 says: */
- /* A Private DICT is required, but may be specified as having */
- /* a length of 0 if there are no non-default values to be stored*/
- /* No indication >where< it is required. I assumed everywhere. Perhaps */
- /* just in basefonts? */
- /* Omit it. */
-
- /* Offset to charset (oper=15) needed here */
- /* Offset to charstrings (oper=17) needed here */
- /* Offset to FDArray (oper=12,36) needed here */
- /* Offset to FDSelect (oper=12,37) needed here */
-}
-
-static int isStdEncoding(SplineFont *sf,EncMap *map) {
- int i;
-
- for ( i=0; i<256 && i<map->enccount; ++i ) if ( map->map[i]!=-1 && sf->glyphs[map->map[i]]!=NULL )
- if ( sf->glyphs[map->map[i]]->unicodeenc!=-1 )
- if ( sf->glyphs[map->map[i]]->unicodeenc!=unicode_from_adobestd[i] )
-return( 0 );
-
-return( 1 );
-}
-
-static void finishup(SplineFont *sf,struct alltabs *at) {
- int strlen, shlen, glen,enclen,csetlen,cstrlen,prvlen;
- int base, eotop, strhead;
- int output_enc = ( at->format==ff_cff && !isStdEncoding(sf,at->map));
-
- storesid(at,NULL); /* end the strings index */
- strlen = ftell(at->sidf) + (shlen = ftell(at->sidh));
- glen = sizeof(short); /* Single entry: 0, no globals */
- enclen = ftell(at->encoding);
- csetlen = ftell(at->charset);
- cstrlen = ftell(at->charstrings);
- prvlen = ftell(at->private);
- base = ftell(at->cfff);
- if ( base+6*3+strlen+glen+enclen+csetlen+cstrlen+prvlen > 32767 ) {
- at->cfflongoffset = true;
- base += 5*5+4;
- } else
- base += 5*3+4;
- strhead = 2+(at->sidcnt>1);
- base += strhead;
-
- dumpsizedint(at->cfff,at->cfflongoffset,base+strlen+glen,15); /* Charset */
- if ( output_enc ) /* encoding offset */
- dumpsizedint(at->cfff,at->cfflongoffset,base+strlen+glen+csetlen,16); /* encoding offset */
- else {
- dumpsizedint(at->cfff,at->cfflongoffset,0,16);
- enclen = 0;
- }
- dumpsizedint(at->cfff,at->cfflongoffset,base+strlen+glen+csetlen+enclen,17);/* charstrings */
- dumpsizedint(at->cfff,at->cfflongoffset,at->privatelen,-1);
- dumpsizedint(at->cfff,at->cfflongoffset,base+strlen+glen+csetlen+enclen+cstrlen,18); /* private size */
- eotop = base-strhead-at->lenpos-1;
- if ( at->cfflongoffset ) {
- fseek(at->cfff,3,SEEK_SET);
- putc(4,at->cfff);
- }
- fseek(at->cfff,at->lenpos,SEEK_SET);
- putshort(at->cfff,eotop);
- fseek(at->cfff,0,SEEK_END);
-
- /* String Index */
- putshort(at->cfff,at->sidcnt-1);
- if ( at->sidcnt!=1 ) { /* Everybody gets an added NULL */
- putc(at->sidlongoffset?4:2,at->cfff);
- if ( !ttfcopyfile(at->cfff,at->sidh,base,"CFF-StringBase")) at->error = true;
- if ( !ttfcopyfile(at->cfff,at->sidf,base+shlen,"CFF-StringData")) at->error = true;
- }
-
- /* Global Subrs */
- putshort(at->cfff,0);
-
- /* Charset */
- if ( !ttfcopyfile(at->cfff,at->charset,base+strlen+glen,"CFF-Charset")) at->error = true;
-
- /* Encoding */
- if ( !ttfcopyfile(at->cfff,at->encoding,base+strlen+glen+csetlen,"CFF-Encoding")) at->error = true;
-
- /* Char Strings */
- if ( !ttfcopyfile(at->cfff,at->charstrings,base+strlen+glen+csetlen+enclen,"CFF-CharStrings")) at->error = true;
-
- /* Private & Subrs */
- if ( !ttfcopyfile(at->cfff,at->private,base+strlen+glen+csetlen+enclen+cstrlen,"CFF-Private")) at->error = true;
-}
-
-static void finishupcid(SplineFont *sf,struct alltabs *at) {
- int strlen, shlen, glen,csetlen,cstrlen,fdsellen,fdarrlen,prvlen;
- int base, eotop, strhead;
- int i;
-
- storesid(at,NULL); /* end the strings index */
- strlen = ftell(at->sidf) + (shlen = ftell(at->sidh));
- glen = ftell(at->globalsubrs);
- /* No encodings */
- csetlen = ftell(at->charset);
- fdsellen = ftell(at->fdselect);
- cstrlen = ftell(at->charstrings);
- fdarrlen = ftell(at->fdarray);
- base = ftell(at->cfff);
-
- at->cfflongoffset = true;
- base += 5*4+4+2; /* two of the opers below are two byte opers */
- strhead = 2+(at->sidcnt>1);
- base += strhead;
-
- prvlen = 0;
- for ( i=0; i<sf->subfontcnt; ++i ) {
- fseek(at->fdarray,at->fds[i].fillindictmark,SEEK_SET);
- dumpsizedint(at->fdarray,false,at->fds[i].privatelen,-1); /* Private len */
- dumpsizedint(at->fdarray,true,base+strlen+glen+csetlen+fdsellen+cstrlen+fdarrlen+prvlen,18); /* Private offset */
- prvlen += ftell(at->fds[i].private); /* private & subrs */
- }
-
- dumpsizedint(at->cfff,at->cfflongoffset,base+strlen+glen,15); /* charset */
- dumpsizedint(at->cfff,at->cfflongoffset,base+strlen+glen+csetlen,(12<<8)|37); /* fdselect */
- dumpsizedint(at->cfff,at->cfflongoffset,base+strlen+glen+csetlen+fdsellen,17); /* charstrings */
- dumpsizedint(at->cfff,at->cfflongoffset,base+strlen+glen+csetlen+fdsellen+cstrlen,(12<<8)|36); /* fdarray */
- eotop = base-strhead-at->lenpos-1;
- fseek(at->cfff,at->lenpos,SEEK_SET);
- putshort(at->cfff,eotop);
- fseek(at->cfff,0,SEEK_END);
-
- /* String Index */
- putshort(at->cfff,at->sidcnt-1);
- if ( at->sidcnt!=1 ) { /* Everybody gets an added NULL */
- putc(at->sidlongoffset?4:2,at->cfff);
- if ( !ttfcopyfile(at->cfff,at->sidh,base,"CFF-StringBase")) at->error = true;
- if ( !ttfcopyfile(at->cfff,at->sidf,base+shlen,"CFF-StringData")) at->error = true;
- }
-
- /* Global Subrs */
- if ( !ttfcopyfile(at->cfff,at->globalsubrs,base+strlen,"CFF-GlobalSubrs")) at->error = true;
-
- /* Charset */
- if ( !ttfcopyfile(at->cfff,at->charset,base+strlen+glen,"CFF-Charset")) at->error = true;
-
- /* FDSelect */
- if ( !ttfcopyfile(at->cfff,at->fdselect,base+strlen+glen+csetlen,"CFF-FDSelect")) at->error = true;
-
- /* Char Strings */
- if ( !ttfcopyfile(at->cfff,at->charstrings,base+strlen+glen+csetlen+fdsellen,"CFF-CharStrings")) at->error = true;
-
- /* FDArray (DICT Index) */
- if ( !ttfcopyfile(at->cfff,at->fdarray,base+strlen+glen+csetlen+fdsellen+cstrlen,"CFF-FDArray")) at->error = true;
-
- /* Private & Subrs */
- prvlen = 0;
- for ( i=0; i<sf->subfontcnt; ++i ) {
- int temp = ftell(at->fds[i].private);
- if ( !ttfcopyfile(at->cfff,at->fds[i].private,
- base+strlen+glen+csetlen+fdsellen+cstrlen+fdarrlen+prvlen,"CFF-PrivateSubrs")) at->error = true;
- prvlen += temp;
- }
-
- free(at->fds);
-}
-
-static int dumpcffhmtx(struct alltabs *at,SplineFont *sf,int bitmaps) {
- DBounds b;
- SplineChar *sc;
- int i,cnt;
- int dovmetrics = sf->hasvmetrics;
- int width = at->gi.fixed_width;
-
- at->gi.hmtx = tmpfile2();
- if ( dovmetrics )
- at->gi.vmtx = tmpfile2();
- FigureFullMetricsEnd(sf,&at->gi,bitmaps); /* Bitmap fonts use ttf convention of 3 magic glyphs */
- if ( at->gi.bygid[0]!=-1 && (sf->glyphs[at->gi.bygid[0]]->width==width || width<=0 )) {
- putshort(at->gi.hmtx,sf->glyphs[at->gi.bygid[0]]->width);
- SplineCharLayerFindBounds(sf->glyphs[at->gi.bygid[0]],at->gi.layer,&b);
- putshort(at->gi.hmtx,b.minx);
- if ( dovmetrics ) {
- putshort(at->gi.vmtx,sf->glyphs[at->gi.bygid[0]]->vwidth);
- putshort(at->gi.vmtx,/*sf->vertical_origin-*/b.miny);
- }
- } else {
- putshort(at->gi.hmtx,width<=0?(sf->ascent+sf->descent)/2:width);
- putshort(at->gi.hmtx,0);
- if ( dovmetrics ) {
- putshort(at->gi.vmtx,sf->ascent+sf->descent);
- putshort(at->gi.vmtx,0);
- }
- }
- cnt = 1;
- if ( bitmaps ) {
- if ( width<=0 ) width = (sf->ascent+sf->descent)/3;
- putshort(at->gi.hmtx,width);
- putshort(at->gi.hmtx,0);
- if ( dovmetrics ) {
- putshort(at->gi.vmtx,sf->ascent+sf->descent);
- putshort(at->gi.vmtx,0);
- }
- putshort(at->gi.hmtx,width);
- putshort(at->gi.hmtx,0);
- if ( dovmetrics ) {
- putshort(at->gi.vmtx,sf->ascent+sf->descent);
- putshort(at->gi.vmtx,0);
- }
- cnt = 3;
- }
-
- for ( i=cnt; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- sc = sf->glyphs[at->gi.bygid[i]];
- if ( SCWorthOutputting(sc) ) {
- if ( i<=at->gi.lasthwidth )
- putshort(at->gi.hmtx,sc->width);
- SplineCharLayerFindBounds(sc,at->gi.layer,&b);
- putshort(at->gi.hmtx,b.minx);
- if ( dovmetrics ) {
- if ( i<=at->gi.lastvwidth )
- putshort(at->gi.vmtx,sc->vwidth);
- putshort(at->gi.vmtx,/*sf->vertical_origin-*/b.maxy);
- }
- ++cnt;
- if ( i==at->gi.lasthwidth )
- at->gi.hfullcnt = cnt;
- if ( i==at->gi.lastvwidth )
- at->gi.vfullcnt = cnt;
- }
- }
- at->gi.hmtxlen = ftell(at->gi.hmtx);
- if ( at->gi.hmtxlen&2 ) putshort(at->gi.hmtx,0);
- if ( dovmetrics ) {
- at->gi.vmtxlen = ftell(at->gi.vmtx);
- if ( at->gi.vmtxlen&2 ) putshort(at->gi.vmtx,0);
- }
-
- at->gi.maxp->numGlyphs = cnt;
-return( true );
-}
-
-static void dumpcffcidhmtx(struct alltabs *at,SplineFont *_sf) {
- DBounds b;
- SplineChar *sc;
- int cid,i,cnt=0,max;
- SplineFont *sf;
- int dovmetrics = _sf->hasvmetrics;
-
- at->gi.hmtx = tmpfile2();
- if ( dovmetrics )
- at->gi.vmtx = tmpfile2();
- FigureFullMetricsEnd(_sf,&at->gi,false);
-
- max = 0;
- for ( i=0; i<_sf->subfontcnt; ++i )
- if ( max<_sf->subfonts[i]->glyphcnt )
- max = _sf->subfonts[i]->glyphcnt;
- for ( cid = 0; cid<max; ++cid ) {
- for ( i=0; i<_sf->subfontcnt; ++i ) {
- sf = _sf->subfonts[i];
- if ( cid<sf->glyphcnt && SCWorthOutputting(sf->glyphs[cid]))
- break;
- }
- if ( i!=_sf->subfontcnt ) {
- sc = sf->glyphs[cid];
- if ( sc->ttf_glyph<=at->gi.lasthwidth )
- putshort(at->gi.hmtx,sc->width);
- SplineCharLayerFindBounds(sc,at->gi.layer,&b);
- putshort(at->gi.hmtx,b.minx);
- if ( dovmetrics ) {
- if ( sc->ttf_glyph<=at->gi.lastvwidth )
- putshort(at->gi.vmtx,sc->vwidth);
- putshort(at->gi.vmtx,/*sf->vertical_origin-*/b.maxy);
- }
- ++cnt;
- if ( sc->ttf_glyph==at->gi.lasthwidth )
- at->gi.hfullcnt = cnt;
- if ( sc->ttf_glyph==at->gi.lastvwidth )
- at->gi.vfullcnt = cnt;
- } else if ( cid==0 ) {
- /* Create a dummy entry for .notdef */
- sf = _sf->subfonts[0];
- putshort(at->gi.hmtx,sf->ascent+sf->descent);
- putshort(at->gi.hmtx,0);
- ++cnt;
- if ( dovmetrics ) {
- putshort(at->gi.vmtx,sf->ascent+sf->descent);
- putshort(at->gi.vmtx,0);
- }
- }
- }
- at->gi.hmtxlen = ftell(at->gi.hmtx);
- if ( at->gi.hmtxlen&2 ) putshort(at->gi.hmtx,0);
- if ( dovmetrics ) {
- at->gi.vmtxlen = ftell(at->gi.vmtx);
- if ( at->gi.vmtxlen&2 ) putshort(at->gi.vmtx,0);
- }
-
- at->gi.maxp->numGlyphs = cnt;
-}
-
-static int dumptype2glyphs(SplineFont *sf,struct alltabs *at) {
- int i;
- struct pschars *subrs, *chrs;
-
- at->cfff = tmpfile2();
- at->sidf = tmpfile2();
- at->sidh = tmpfile2();
- at->charset = tmpfile2();
- at->encoding = tmpfile2();
- at->private = tmpfile2();
-
- dumpcffheader(at->cfff);
- dumpcffnames(sf,at->cfff);
- dumpcffcharset(sf,at);
- ff_progress_change_stages(2+at->gi.strikecnt);
-
- ATFigureDefWidth(sf,at,-1);
- if ((chrs =SplineFont2ChrsSubrs2(sf,at->nomwid,at->defwid,at->gi.bygid,at->gi.gcnt,at->gi.flags,&subrs,at->gi.layer))==NULL )
-return( false );
- dumpcffprivate(sf,at,-1,subrs->next);
- if ( subrs->next!=0 )
- _dumpcffstrings(at->private,subrs);
- ff_progress_next_stage();
- at->charstrings = dumpcffstrings(chrs);
- PSCharsFree(subrs);
- if ( at->charstrings == NULL )
-return( false );
- if ( at->format==ff_cff && !isStdEncoding(sf,at->map))
- dumpcffencoding(sf,at); /* Do this after we've assigned glyph ids */
- dumpcfftopdict(sf,at);
- finishup(sf,at);
-
- at->cfflen = ftell(at->cfff);
- if ( at->cfflen&3 ) {
- for ( i=4-(at->cfflen&3); i>0; --i )
- putc('\0',at->cfff);
- }
-
- if ( at->format!=ff_cff )
- dumpcffhmtx(at,sf,false);
- free(at->gn_sid); at->gn_sid=NULL;
-return( true );
-}
-
-static int dumpcidglyphs(SplineFont *sf,struct alltabs *at) {
- int i;
- struct pschars *glbls = NULL, *chrs;
-
- at->cfff = tmpfile2();
- at->sidf = tmpfile2();
- at->sidh = tmpfile2();
- at->charset = tmpfile2();
- at->fdselect = tmpfile2();
- at->fdarray = tmpfile2();
- at->globalsubrs = tmpfile2();
-
- at->fds = calloc(sf->subfontcnt,sizeof(struct fd2data));
- for ( i=0; i<sf->subfontcnt; ++i ) {
- at->fds[i].private = tmpfile2();
- ATFigureDefWidth(sf->subfonts[i],at,i);
- }
- if ( (chrs = CID2ChrsSubrs2(sf,at->fds,at->gi.flags,&glbls,at->gi.layer))==NULL )
-return( false );
- for ( i=0; i<sf->subfontcnt; ++i ) {
- dumpcffprivate(sf->subfonts[i],at,i,at->fds[i].subrs->next);
- if ( at->fds[i].subrs->next!=0 )
- _dumpcffstrings(at->fds[i].private,at->fds[i].subrs);
- PSCharsFree(at->fds[i].subrs);
- }
- _dumpcffstrings(at->globalsubrs,glbls);
- PSCharsFree(glbls);
-
- dumpcffheader(at->cfff);
- dumpcffnames(sf,at->cfff);
- dumpcffcidset(at);
- dumpcfffdselect(sf,at);
- dumpcffdictindex(sf,at);
- if ( (at->charstrings = dumpcffstrings(chrs))==NULL )
-return( false );
- dumpcffcidtopdict(sf,at);
- finishupcid(sf,at);
-
- at->cfflen = ftell(at->cfff);
- if ( at->cfflen&3 ) {
- for ( i=4-(at->cfflen&3); i>0; --i )
- putc('\0',at->cfff);
- }
-
- if ( at->format!=ff_cffcid )
- dumpcffcidhmtx(at,sf);
-return( true );
-}
-
-static int AnyInstructions(SplineFont *sf) {
- int i;
-
- if ( sf->subfontcnt!=0 ) {
- for ( i=0; i<sf->subfontcnt; ++i )
- if ( AnyInstructions(sf->subfonts[i]))
-return( true );
- } else {
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- if ( sf->glyphs[i]->ttf_instrs_len!=0 )
-return( true );
- }
- }
-return( false );
-}
-
-void cvt_unix_to_1904( long long time, int32 result[2]) {
- uint32 date1970[4], tm[4];
- uint32 year[2];
- int i;
-
- tm[0] = time &0xffff;
- tm[1] = (time>>16)&0xffff;
- tm[2] = (time>>32)&0xffff;
- tm[3] = (time>>48)&0xffff;
- memset(date1970,0,sizeof(date1970));
- year[0] = (60*60*24*365L)&0xffff;
- year[1] = (60*60*24*365L)>>16;
- for ( i=1904; i<1970; ++i ) {
- date1970[0] += year[0];
- date1970[1] += year[1];
- if ( (i&3)==0 && (i%100!=0 || i%400==0))
- date1970[0] += 24*60*60L; /* Leap year */
- date1970[1] += (date1970[0]>>16);
- date1970[0] &= 0xffff;
- date1970[2] += date1970[1]>>16;
- date1970[1] &= 0xffff;
- date1970[3] += date1970[2]>>16;
- date1970[2] &= 0xffff;
- }
-
- for ( i=0; i<3; ++i ) {
- tm[i] += date1970[i];
- tm[i+1] += tm[i]>>16;
- tm[i] &= 0xffff;
- }
- tm[3] -= date1970[3];
-
- result[0] = (tm[1]<<16) | tm[0];
- result[1] = (tm[3]<<16) | tm[2];
-}
-
-static void sethead(struct head *head,SplineFont *sf,struct alltabs *at,
- enum fontformat format, int32 *bsizes) {
- int i, lr, rl, indic_rearrange, arabic;
- ASM *sm;
- struct ttflangname *useng;
- float vn;
-
- if ( at->gi.xmin==15000 ) at->gi.xmin = 0;
- if ( at->gi.ymin==15000 ) at->gi.ymin = 0;
- if ( bsizes!=NULL && format==ff_none ) {
- if ( sf->ascent >at->gi.ymax ) at->gi.ymax = sf->ascent;
- if ( -sf->descent<at->gi.ymin ) at->gi.ymin = -sf->descent;
- }
- head->xmin = at->gi.xmin;
- head->ymin = at->gi.ymin;
- head->xmax = at->gi.xmax;
- head->ymax = at->gi.ymax;
-
- lr = rl = arabic = 0;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- SplineChar *sc = sf->glyphs[at->gi.bygid[i]];
- int uni = sc->unicodeenc ;
- if ( SCRightToLeft(sc) )
- rl = 1;
- else if (( uni!=-1 && uni<0x10000 && islefttoright(uni)) ||
- (uni>=0x10300 && uni<0x107ff))
- lr = 1;
- if ( SCScriptFromUnicode(sc)==CHR('a','r','a','b') )
- arabic = 1;
- }
-
- head->version = 0x00010000;
- head->revision = sf->sfntRevision;
- if ( sf->sfntRevision==sfntRevisionUnset ) {
- head->revision = 0x00010000;
- for ( useng=sf->names; useng!=NULL; useng=useng->next )
- if ( useng->lang==0x409 )
- break;
- if ( useng!=NULL && useng->names[ttf_version]!=NULL &&
- sscanf(useng->names[ttf_version], "Version %f", &vn)==1 ) {
- head->revision = vn*65536;
- } else if ( sf->subfontcnt!=0 ) {
- int val, mant;
- val = floor(sf->cidversion);
- mant = floor(65536.*((double)sf->cidversion-val));
- head->revision = (val<<16) | mant;
- } else if ( sf->version!=NULL ) {
- char *pt=sf->version;
- double dval;
- int val, mant;
- while ( *pt && !isdigit(*pt) && *pt!='.' ) ++pt;
- if ( *pt ) {
- dval = strtod(pt,NULL);
- val = floor(dval);
- mant = floor(65536.*(dval-val));
- head->revision = (val<<16) | mant;
- }
- }
- }
- head->checksumAdj = 0;
- head->magicNum = 0x5f0f3cf5;
- head->flags = 8|2|1; /* baseline at 0, lsbline at 0, round ppem */
- if ( format>=ff_ttf && format<=ff_ttfdfont ) {
- if ( AnyInstructions(sf) )
- head->flags = 0x10|8|4|2|1; /* baseline at 0, lsbline at 0, round ppem, instructions may depend on point size, instructions change metrics */
- }
- /* If a font contains embedded bitmaps, and if some of those bitmaps have */
- /* a different advance width from that expected by scaling, then windows */
- /* will only notice the fact if the 0x10 bit is set (even though this has*/
- /* nothing to do with instructions) */
-/* Apple flags */
- if ( sf->hasvmetrics )
- head->flags |= (1<<5); /* designed to be layed out vertically */
- /* Bit 6 must be zero */
- if ( arabic )
- head->flags |= (1<<7);
- if ( sf->sm )
- head->flags |= (1<<8); /* has metamorphesis effects */
- if ( rl )
- head->flags |= (1<<9);
- indic_rearrange = 0;
- for ( sm = sf->sm; sm!=NULL; sm=sm->next )
- if ( sm->type == asm_indic )
- indic_rearrange = true;
- if ( indic_rearrange )
- head->flags |= (1<<10);
-/* End apple flags */
- if ( sf->head_optimized_for_cleartype )
- head->flags |= (1<<13);
- head->emunits = sf->ascent+sf->descent;
- head->macstyle = MacStyleCode(sf,NULL);
- head->lowestreadable = 8;
- head->locais32 = 1;
- if ( at->gi.glyph_len<0x20000 )
- head->locais32 = 0;
-
- /* I assume we've always got some neutrals (spaces, punctuation) */
- if ( lr && rl )
- head->dirhint = 0;
- else if ( rl )
- head->dirhint = -2;
- else
- head->dirhint = 2;
- if ( rl )
- head->flags |= (1<<9); /* Apple documents this */
- /* if there are any indic characters, set bit 10 */
-
- cvt_unix_to_1904(sf->creationtime,head->createtime);
- cvt_unix_to_1904(sf->modificationtime,head->modtime);
-}
-
-static void sethhead(struct hhead *hhead,struct hhead *vhead,struct alltabs *at, SplineFont *sf) {
- int i, width, rbearing, height, bbearing;
- int ymax, ymin, xmax, xmin, off;
- DBounds bb;
- /* Might as well fill in the vhead even if we don't use it */
- /* we just won't dump it out if we don't want it */
-
- width = 0x80000000; rbearing = 0x7fffffff; height = 0x80000000; bbearing=0x7fffffff;
- xmax = ymax = 0x80000000; xmin = ymin = 0x7fffffff;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- SplineChar *sc = sf->glyphs[at->gi.bygid[i]];
- SplineCharLayerFindBounds(sc,at->gi.layer,&bb);
- if ( sc->width>width ) width = sc->width;
- if ( sc->vwidth>height ) height = sc->vwidth;
- if ( sc->width-bb.maxx < rbearing ) rbearing = sc->width-bb.maxx;
- if ( sc->vwidth-bb.maxy < bbearing ) bbearing = sc->vwidth-bb.maxy;
- if ( bb.maxy > ymax ) ymax = bb.maxy;
- if ( bb.miny < ymin ) ymin = bb.miny;
- if ( bb.maxx > xmax ) xmax = bb.maxx;
- if ( bb.minx < xmin ) xmin = bb.minx;
- }
-
- if ( at->head.ymax>ymax ) ymax = at->head.ymax; /* If generated .notdef glyph is bigger than real glyphs */
- if ( at->head.ymin<ymin ) ymin = at->head.ymin;
-
- if ( ymax==0 && ymin==0 ) {
- /* this can happen in a bitmap only font */
- ymax = sf->ascent;
- ymin = -sf->descent;
- }
- hhead->version = 0x00010000;
- if ( sf->pfminfo.hheadascent_add )
- hhead->ascender = ymax + sf->pfminfo.hhead_ascent;
- else
- hhead->ascender = sf->pfminfo.hhead_ascent;
- if ( sf->pfminfo.hheaddescent_add )
- hhead->descender = ymin + sf->pfminfo.hhead_descent;
- else
- hhead->descender = sf->pfminfo.hhead_descent;
- hhead->linegap = sf->pfminfo.linegap;
-
- vhead->version = 0x00011000;
- off = (sf->ascent+sf->descent)/2;
- vhead->ascender = xmax-off;
- vhead->descender = xmin-off;
- vhead->linegap = sf->pfminfo.linegap;
-
- at->isfixed = at->gi.fixed_width>0;
- hhead->maxwidth = width;
- hhead->minlsb = at->head.xmin;
- hhead->minrsb = rbearing;
- /* Apple's ftxvalidator says the min sidebearing should be 0 even if it isn't */
- if ( hhead->minlsb>0 ) hhead->minlsb = 0;
- if ( hhead->minrsb>0 ) hhead->minrsb = 0;
- hhead->maxextent = at->head.xmax;
- if ( sf->italicangle==0 )
- hhead->caretSlopeRise = 1;
- else {
- hhead->caretSlopeRise = 100;
- hhead->caretSlopeRun = (int) rint(100*tan(-sf->italicangle*3.1415926535897/180.));
- }
-
- vhead->maxwidth = height;
- vhead->minlsb = at->head.ymin;
- vhead->minrsb = bbearing;
- vhead->maxextent = at->head.ymax;
- vhead->caretSlopeRise = 0;
- vhead->caretSlopeRun = 1;
- /* Are there vertical oblique fonts? */
-
- hhead->numMetrics = at->gi.hfullcnt;
- vhead->numMetrics = at->gi.vfullcnt;
-}
-
-static void OS2WeightCheck(struct pfminfo *pfminfo,char *weight) {
- if ( weight==NULL ) {
- /* default it */
- } else if ( strstrmatch(weight,"medi")!=NULL ) {
- pfminfo->weight = 500;
- pfminfo->panose[2] = 6;
- } else if ( strstrmatch(weight,"demi")!=NULL ||
- strstrmatch(weight,"halb")!=NULL ||
- (strstrmatch(weight,"semi")!=NULL &&
- strstrmatch(weight,"bold")!=NULL) ) {
- pfminfo->weight = 600;
- pfminfo->panose[2] = 7;
- } else if ( strstrmatch(weight,"bold")!=NULL ||
- strstrmatch(weight,"fett")!=NULL ||
- strstrmatch(weight,"gras")!=NULL ) {
- pfminfo->weight = 700;
- pfminfo->panose[2] = 8;
- } else if ( strstrmatch(weight,"heavy")!=NULL ) {
- pfminfo->weight = 800;
- pfminfo->panose[2] = 9;
- } else if ( strstrmatch(weight,"black")!=NULL ) {
- pfminfo->weight = 900;
- pfminfo->panose[2] = 10;
- } else if ( strstrmatch(weight,"nord")!=NULL ) {
- pfminfo->weight = 950;
- pfminfo->panose[2] = 11;
- } else if ( strstrmatch(weight,"thin")!=NULL ) {
- pfminfo->weight = 100;
- pfminfo->panose[2] = 2;
- } else if ( strstrmatch(weight,"extra")!=NULL ||
- strstrmatch(weight,"light")!=NULL ) {
- pfminfo->weight = 200;
- pfminfo->panose[2] = 3;
- } else if ( strstrmatch(weight,"light")!=NULL ) {
- pfminfo->weight = 300;
- pfminfo->panose[2] = 4;
- }
-}
-
-void SFDefaultOS2Simple(struct pfminfo *pfminfo,SplineFont *sf) {
- pfminfo->pfmfamily = 0x11;
- pfminfo->panose[0] = 2;
- pfminfo->weight = 400;
- pfminfo->panose[2] = 5;
- pfminfo->width = 5;
- pfminfo->panose[3] = 3;
- pfminfo->winascent_add = pfminfo->windescent_add = true;
- pfminfo->hheadascent_add = pfminfo->hheaddescent_add = true;
- pfminfo->typoascent_add = pfminfo->typodescent_add = true;
- pfminfo->os2_winascent = pfminfo->os2_windescent = 0;
-
- if ( sf->subfonts!=NULL ) sf = sf->subfonts[0];
- pfminfo->linegap = pfminfo->vlinegap = pfminfo->os2_typolinegap =
- rint(.09*(sf->ascent+sf->descent));
-}
-
-void SFDefaultOS2SubSuper(struct pfminfo *pfminfo,int emsize,double italic_angle) {
- double s = sin(italic_angle*3.1415926535897932/180.0);
- pfminfo->os2_supysize = pfminfo->os2_subysize = .7*emsize;
- pfminfo->os2_supxsize = pfminfo->os2_subxsize = .65*emsize;
- pfminfo->os2_subyoff = .14*emsize;
- pfminfo->os2_supyoff = .48*emsize;
- pfminfo->os2_supxoff = s*pfminfo->os2_supyoff;
- pfminfo->os2_subxoff = -s*pfminfo->os2_subyoff;
- pfminfo->os2_strikeysize = 102*emsize/2048;
- pfminfo->os2_strikeypos = 530*emsize/2048;
-}
-
-void SFDefaultOS2Info(struct pfminfo *pfminfo,SplineFont *sf,char *fontname) {
- int samewid= -1;
- char *weight = sf->cidmaster==NULL ? sf->weight : sf->cidmaster->weight;
-
- if ( sf->pfminfo.pfmset ) {
- if ( pfminfo!=&sf->pfminfo )
- *pfminfo = sf->pfminfo;
- if ( !pfminfo->panose_set ) {
- struct pfminfo info;
- memset(&info,0,sizeof(info));
- sf->pfminfo.pfmset = false;
- SFDefaultOS2Info(&info,sf,fontname);
- sf->pfminfo.pfmset = true;
- memcpy(pfminfo->panose,info.panose,sizeof(info.panose));
- }
- } else {
- struct pfminfo hold;
- if ( pfminfo->hheadset || pfminfo->vheadset )
- hold = *pfminfo;
- else
- hold.hheadset = hold.vheadset = false;
- memset(pfminfo,'\0',sizeof(*pfminfo));
- SFDefaultOS2Simple(pfminfo,sf);
- samewid = CIDOneWidth(sf);
-
- pfminfo->pfmfamily = 0x10;
- if ( samewid>0 ) {
- pfminfo->pfmfamily = 0x30;
- /* pfminfo->panose[3] = 9; */ /* This is done later */
- } else if ( strstrmatch(fontname,"sans")!=NULL )
- pfminfo->pfmfamily = 0x20;
- else if ( strstrmatch(fontname,"script")!=NULL ) {
- pfminfo->pfmfamily = 0x40;
- pfminfo->panose[0] = 3;
- }
- if ( samewid==-1 )
- pfminfo->pfmfamily |= 0x1; /* Else it assumes monospace */
-
-/* urw uses 4 character abreviations */
- if ( weight!=NULL )
- OS2WeightCheck(pfminfo,weight);
- OS2WeightCheck(pfminfo,fontname);
-
- if ( strstrmatch(fontname,"ultra")!=NULL &&
- strstrmatch(fontname,"condensed")!=NULL ) {
- pfminfo->width = 1;
- pfminfo->panose[3] = 8;
- } else if ( strstrmatch(fontname,"extra")!=NULL &&
- strstrmatch(fontname,"condensed")!=NULL ) {
- pfminfo->width = 2;
- pfminfo->panose[3] = 8;
- } else if ( strstrmatch(fontname,"semi")!=NULL &&
- strstrmatch(fontname,"condensed")!=NULL ) {
- pfminfo->width = 4;
- pfminfo->panose[3] = 6;
- } else if ( strstrmatch(fontname,"condensed")!=NULL ||
- strstrmatch(fontname,"narrow")!=NULL ) {
- pfminfo->width = 3;
- pfminfo->panose[3] = 6;
- } else if ( strstrmatch(fontname,"ultra")!=NULL &&
- strstrmatch(fontname,"expanded")!=NULL ) {
- pfminfo->width = 9;
- pfminfo->panose[3] = 7;
- } else if ( strstrmatch(fontname,"extra")!=NULL &&
- strstrmatch(fontname,"expanded")!=NULL ) {
- pfminfo->width = 8;
- pfminfo->panose[3] = 7;
- } else if ( strstrmatch(fontname,"semi")!=NULL &&
- strstrmatch(fontname,"expanded")!=NULL ) {
- pfminfo->width = 6;
- pfminfo->panose[3] = 5;
- } else if ( strstrmatch(fontname,"expanded")!=NULL ) {
- pfminfo->width = 7;
- pfminfo->panose[3] = 5;
- }
- if ( samewid>0 )
- pfminfo->panose[3] = 9;
- if ( hold.hheadset ) {
- pfminfo->hheadset = true;
- pfminfo->hheadascent_add = hold.hheadascent_add;
- pfminfo->hheaddescent_add = hold.hheaddescent_add;
- pfminfo->hhead_ascent = hold.hhead_ascent;
- pfminfo->hhead_descent = hold.hhead_descent;
- pfminfo->linegap = hold.linegap;
- }
- if ( hold.vheadset ) {
- pfminfo->vheadset = true;
- pfminfo->vlinegap = hold.vlinegap;
- }
- }
- if ( !pfminfo->subsuper_set )
- SFDefaultOS2SubSuper(pfminfo,sf->ascent+sf->descent,sf->italicangle);
-}
-
-int AlreadyMSSymbolArea(SplineFont *sf,EncMap *map) {
- int i;
- int acnt=0, pcnt=0;
-
- for ( i=0; i<map->enccount && i<0xffff; ++i ) {
- if ( map->map[i]!=-1 && sf->glyphs[map->map[i]]!=NULL &&
- sf->glyphs[map->map[i]]->ttf_glyph!=-1 ) {
- if ( i>=0xf000 && i<=0xf0ff )
- ++pcnt;
- else if ( i>=0x20 && i<=0xff )
- ++acnt;
- }
- }
-return( pcnt>acnt );
-}
-
-void OS2FigureCodePages(SplineFont *sf, uint32 CodePage[2]) {
- int i;
- uint32 latin1[8];
- int has_ascii, has_lineart=0, has_radical=0, has_summation=0;
- int cp852=0, cp775=0, cp861=0, cp860=0, cp857=0, cp855=0, cp862=0, cp863=0;
- int cp864=0, cp865=0, cp866=0, cp869=0, cp737=0, cp708=0, mac=0;
- int k;
- SplineChar *sc;
- SplineFont *sub;
-
- memset(latin1,0,sizeof(latin1));
- k=0;
- do {
- sub = k<sf->subfontcnt? sf->subfonts[k] : sf;
- for ( i=0; i<sub->glyphcnt; ++i ) if ( (sc = sub->glyphs[i])!=NULL ) {
- if ( sc->unicodeenc<256 && sc->unicodeenc>=0 )
- latin1[(sc->unicodeenc>>5)] |= 1<<(sc->unicodeenc&31);
- }
- ++k;
- } while ( k<sf->subfontcnt );
-
- has_ascii = latin1[1]==0xffffffff && latin1[2]==0xffffffff &&
- (latin1[3]&0x7fffffff)==0x7fffffff; /* DEL is not a char */
- CodePage[0] = CodePage[1] = 0;
-
- k=0;
- do {
- sub = k<sf->subfontcnt? sf->subfonts[k] : sf;
- for ( i=0; i<sub->glyphcnt; ++i ) if ( (sc = sub->glyphs[i])!=NULL ) {
- int uni = sc->unicodeenc;
- if ( uni==0xde && has_ascii )
- CodePage[0] |= 1<<0; /* (ANSI) Latin1 */
- else if ( uni==0x255a && has_ascii ) {
- CodePage[1] |= 1U<<30; /* WE/latin1 */ /* Not latin1 at all */
- CodePage[1] |= 1U<<31; /* US */
- } else if ( uni==0x13d && has_ascii ) {
- CodePage[0] |= 1<<1; /* latin2 */
- ++cp852;
- } else if ( uni==0x411 ) {
- CodePage[0] |= 1<<2; /* cyrillic */
- ++cp866;
- ++cp855;
- } else if ( uni==0x405 ) {
- ++cp855;
- } else if ( uni==0x386 ) {
- CodePage[0] |= 1<<3; /* greek */
- ++cp869;
- ++cp737;
- } else if ( uni==0x130 && has_ascii ) {
- CodePage[0] |= 1<<4; /* turkish */
- ++cp857;
- } else if ( uni==0x5d0 ) {
- CodePage[0] |= 1<<5; /* hebrew */
- ++cp862;
- } else if ( uni==0x631 ) {
- CodePage[0] |= 1<<6; /* arabic */
- ++cp864;
- ++cp708;
- } else if ( uni==0x157 && has_ascii ) {
- CodePage[0] |= 1<<7; /* baltic */
- ++cp775;
- } else if ( uni==0x20AB && has_ascii ) {
- CodePage[0] |= 1<<8; /* vietnamese */
- } else if ( uni==0xe45 )
- CodePage[0] |= 1<<16; /* thai */
- else if ( uni==0x30a8 )
- CodePage[0] |= 1<<17; /* japanese */
- else if ( uni==0x3105 )
- CodePage[0] |= 1<<18; /* simplified chinese */
- else if ( uni==0x3131 )
- CodePage[0] |= 1<<19; /* korean wansung */
- else if ( uni==0x592E )
- CodePage[0] |= 1<<20; /* traditional chinese */
- else if ( uni==0xacf4 )
- CodePage[0] |= 1<<21; /* korean Johab */
- else if ( uni==0x2030 && has_ascii )
- ++mac;
- else if ( uni==0x2665 && has_ascii )
- CodePage[0] |= 1U<<30; /* OEM */
- /* the symbol bit doesn't mean it contains the glyphs in symbol */
- /* rather that one is using a symbol encoding. Or that there are */
- /* glyphs with unicode encoding between 0xf000 and 0xf0ff, in which */
- /* case those guys should be given a symbol encoding */
- /* There's a bug in the way otf fonts handle this (but not ttf) and */
- /* they only seem to list the symbol glyphs. */
- /* Hence we don't test uni==0x21d4 */
- /* This doesn't work well either. In ttf fonts the bit is ignored */
- /* in otf fonts the bit means "ignore all other bits" */
- else if ( uni>=0xf000 && uni<=0xf0ff )
- CodePage[0] |= 1U<<31; /* symbol */
- else if ( uni==0xc5 && has_ascii )
- ++cp865;
- else if ( uni==0xe9 && has_ascii )
- ++cp863;
- else if ( uni==0xf5 && has_ascii )
- ++cp860;
- else if ( uni==0xfe && has_ascii )
- ++cp861;
- else if ( uni==0x2524 )
- ++has_lineart;
- else if ( uni==0x255c )
- ++cp866;
- else if ( uni==0xbd )
- ++cp869;
- else if ( uni==0x221A )
- has_radical=true;
- else if ( uni==0x2211 )
- has_summation=true;
- }
- ++k;
- } while ( k<sf->subfontcnt );
- if ( cp852 && has_lineart )
- CodePage[1] |= 1<<26; /* latin2 */
- if ( cp775 && has_lineart )
- CodePage[1] |= 1<<27; /* baltic */
- if ( cp861 && has_lineart )
- CodePage[1] |= 1<<22; /* MS-DOS Icelandic */
- if ( cp866==2 && has_lineart )
- CodePage[1] |= 1<<17; /* MS DOS Russian */
- if ( cp855==2 && has_lineart )
- CodePage[1] |= 1<<25; /* IBM Cyrillic */
- if ( cp869==2 && has_lineart )
- CodePage[1] |= 1<<16; /* IBM Greek */
- if ( cp737 && has_lineart && has_radical )
- CodePage[1] |= 1<<28; /* Greek, former 437 G */
- if ( cp857 && has_lineart )
- CodePage[1] |= 1<<24; /* IBM turkish */
- if ( cp862 && has_lineart && has_radical )
- CodePage[1] |= 1<<21; /* hebrew */
- if ( cp864 && has_radical )
- CodePage[1] |= 1<<19; /* arabic */
- if ( cp708 && has_lineart)
- CodePage[1] |= 1<<29; /* arabic; ASMO 708 */
- if ( cp863 && has_lineart && has_radical )
- CodePage[1] |= 1<<20; /* MS-DOS Canadian French */
- if ( cp865 && has_lineart && has_radical )
- CodePage[1] |= 1<<18; /* MS-DOS Nordic */
- if ( cp860 && has_lineart && has_radical )
- CodePage[1] |= 1<<23; /* MS-DOS Portuguese */
- if ( mac && has_summation )
- CodePage[0] |= 1U<<29; /* mac roman */
-}
-
-void OS2FigureUnicodeRanges(SplineFont *sf, uint32 Ranges[4]) {
- int i, k;
- unsigned j;
- SplineChar *sc;
- SplineFont *sub;
-
- memset(Ranges,0,4*sizeof(uint32));
- k=0;
- do {
- sub = k<sf->subfontcnt? sf->subfonts[k] : sf;
- for ( i=0; i<sub->glyphcnt; ++i ) if ( (sc = sub->glyphs[i])!=NULL ) {
- if ( SCWorthOutputting(sc) && sc->unicodeenc!=-1 ) {
- if ( sc->unicodeenc > 0xffff )
- Ranges[57>>5] |= (1<<(57&31));
- for ( j=0; j<sizeof(uniranges)/sizeof(uniranges[0]); ++j )
- if ( sc->unicodeenc>=uniranges[j][0] &&
- sc->unicodeenc<=uniranges[j][1] ) {
- int bit = uniranges[j][2];
- Ranges[bit>>5] |= (1<<(bit&31));
- break;
- }
- }
- }
- ++k;
- } while ( k<sf->subfontcnt );
-}
-
-static void WinBB(SplineFont *sf,uint16 *winascent,uint16 *windescent,struct alltabs *at) {
- /* The windows ascent/descent is calculated on the ymin/max of the */
- /* glyphs in the so called ANSI character set. I'm going to pretend */
- /* that's Latin1 with a few additions */
- /* Well, that's what is documented, but the documentation says contradictory */
- /* things. I believe that winAscent should be the same as hhea.ascent */
-
- *winascent = at->head.ymax;
- *windescent = -at->head.ymin; /* Should be positive */
- if ( sf->cidmaster!=NULL )
- sf = sf->cidmaster;
-
- if ( sf->pfminfo.winascent_add )
- *winascent += sf->pfminfo.os2_winascent;
- else
- *winascent = sf->pfminfo.os2_winascent;
- if ( sf->pfminfo.windescent_add )
- *windescent += sf->pfminfo.os2_windescent;
- else
- *windescent = sf->pfminfo.os2_windescent;
-}
-
-static void redohead(struct alltabs *at);
-
-static void setos2(struct os2 *os2,struct alltabs *at, SplineFont *sf,
- enum fontformat format) {
- int i,cnt1,cnt2,first,last,avg1,avg2,gid;
- char *pt;
- static int const weightFactors[26] = { 64, 14, 27, 35, 100, 20, 14, 42, 63,
- 3, 6, 35, 20, 56, 56, 17, 4, 49, 56, 71, 31, 10, 18, 3, 18, 2 };
- EncMap *map;
- SplineChar *sc;
- int modformat = format;
-
- os2->version = 1;
- if ( format==ff_otf || format==ff_otfcid )
- os2->version = 3;
- if ( sf->use_typo_metrics || sf->weight_width_slope_only )
- os2->version = 4;
- if ( sf->os2_version > os2->version )
- os2->version = sf->os2_version;
- if (( format>=ff_ttf && format<=ff_otfdfont) && (at->gi.flags&ttf_flag_symbol))
- modformat = ff_ttfsym;
-
- os2->weightClass = sf->pfminfo.weight;
- os2->widthClass = sf->pfminfo.width;
- os2->fstype = 0x8;
- if ( sf->pfminfo.fstype!=-1 )
- os2->fstype = sf->pfminfo.fstype;
- if ( !sf->pfminfo.subsuper_set )
- SFDefaultOS2SubSuper(&sf->pfminfo,sf->ascent+sf->descent,sf->italicangle);
- os2->ysupYSize = sf->pfminfo.os2_supysize;
- os2->ysubXSize = sf->pfminfo.os2_subxsize;
- os2->ysubYSize = sf->pfminfo.os2_subysize;
- os2->ysupXSize = sf->pfminfo.os2_supxsize;
- os2->ysubYOff = sf->pfminfo.os2_subyoff;
- os2->ysubXOff = sf->pfminfo.os2_subxoff;
- os2->ysupXOff = sf->pfminfo.os2_supxoff;
- os2->ysupYOff = sf->pfminfo.os2_supyoff;
- os2->yStrikeoutSize = sf->pfminfo.os2_strikeysize;
- os2->yStrikeoutPos = sf->pfminfo.os2_strikeypos;
- if ( sf->pfminfo.stylemap!=-1 ) {
- int changed = 0;
- os2->fsSel = sf->pfminfo.stylemap;
- /* Make sure fsSel and macStyle don't contradict */
- if (at->head.macstyle&1 && !(os2->fsSel&32)) {at->head.macstyle &= 0x7E; changed=1;}
- if (at->head.macstyle&2 && !(os2->fsSel&1)) {at->head.macstyle &= 0x7D; changed=1;}
- if (changed) redohead(at);
- } else {
- os2->fsSel = (at->head.macstyle&1?32:0)|(at->head.macstyle&2?1:0);
- if ( os2->fsSel==0 && sf->pfminfo.weight==400 )
- os2->fsSel = 64; /* Regular */
- }
- if ( sf->fullname!=NULL && strstrmatch(sf->fullname,"outline")!=NULL )
- os2->fsSel |= 8;
- if ( os2->version>=4 ) {
- if ( strstrmatch(sf->fontname,"Obli")!=NULL ) {
- os2->fsSel &= ~1; /* Turn off Italic */
- os2->fsSel |= 512; /* Turn on Oblique */
- }
- if ( sf->use_typo_metrics )
- os2->fsSel |= 128; /* Don't use win ascent/descent for line spacing */
- if ( sf->weight_width_slope_only )
- os2->fsSel |= 256;
- }
-/* David Lemon @Adobe.COM
-1) The sTypoAscender and sTypoDescender values should sum to 2048 in
-a 2048-unit font. They indicate the position of the em square
-relative to the baseline.
-GWW: Almost, sTypoAscender-sTypoDescender == EmSize
-
-2) The usWinAscent and usWinDescent values represent the maximum
-height and depth of specific glyphs within the font, and some
-applications will treat them as the top and bottom of the font
-bounding box. (the "ANSI" glyphs)
-GWW: That's what's documented. But it means non-ANSI glyphs get clipped. So the
-docs are wrong.
-*/
- if ( sf->pfminfo.typoascent_add )
- os2->ascender = sf->ascent + sf->pfminfo.os2_typoascent;
- else
- os2->ascender = sf->pfminfo.os2_typoascent;
- if ( sf->pfminfo.typodescent_add )
- os2->descender = -sf->descent + sf->pfminfo.os2_typodescent; /* Should be neg */
- else
- os2->descender = sf->pfminfo.os2_typodescent;
- WinBB(sf,&os2->winascent,&os2->windescent,at);
- os2->linegap = sf->pfminfo.os2_typolinegap;
- os2->sFamilyClass = sf->pfminfo.os2_family_class;
-
- avg1 = avg2 = last = 0; first = 0xffff;
- cnt1 = cnt2 = 0;
- for ( i=0; i<sf->glyphcnt; ++i ) if ( (sc = sf->glyphs[i])!=NULL ) {
- if ( SCWorthOutputting(sc) && sc->unicodeenc!=-1 ) {
- /* Don't include the dummy glyphs (.notdef, .null, etc.) they aren't */
- /* really encoded. Don't include glyphs out of BMP, OS/2 uses shorts */
- /* for the first/last char and can't represent them. */
- /* If no BMP glyphs, then first should be 0xffff. If any outside */
- /* BMP then last is 0xffff */
- /* sc->ttf_glyph>2 is to skip the first few truetype glyphs but */
- /* that doesn't work for cff files which only have .notdef to ignore */
- if ( ( format>=ff_ttf && format<=ff_otfdfont && sc->ttf_glyph>2) ||
- ( format>=ff_ttf && format<=ff_otfdfont && sc->ttf_glyph>0) ) {
- if ( sc->unicodeenc<=0xffff ) {
- if ( sc->unicodeenc<first ) first = sc->unicodeenc;
- if ( sc->unicodeenc>last ) last = sc->unicodeenc;
- } else {
- last = 0xffff;
- }
- }
- if ( sc->width!=0 ) {
- avg2 += sc->width; ++cnt2;
- }
- if ( sc->unicodeenc==' ') {
- avg1 += sc->width * 166; ++cnt1;
- } else if (sc->unicodeenc>='a' && sc->unicodeenc<='z') {
- avg1 += sc->width * weightFactors[sc->unicodeenc-'a']; ++cnt1;
- }
- }
- }
- if ( sf->pfminfo.hasunicoderanges )
- memcpy(os2->unicoderange,sf->pfminfo.unicoderanges,sizeof(os2->unicoderange));
- else
- OS2FigureUnicodeRanges(sf,os2->unicoderange);
- if ( modformat==ff_ttfsym ) /* MS Symbol font has this set to zero. Does it matter? */
- memset(os2->unicoderange,0,sizeof(os2->unicoderange));
-
- if ( sf->pfminfo.pfmset )
- strncpy(os2->achVendID,sf->pfminfo.os2_vendor,4);
- else if ( TTFFoundry!=NULL )
- strncpy(os2->achVendID,TTFFoundry,4);
- else
- memcpy(os2->achVendID,"PfEd",4);
- for ( pt=os2->achVendID; pt<os2->achVendID && *pt!='\0'; ++pt );
- while ( pt<os2->achVendID ) *pt++ = ' '; /* Pad with spaces not NUL */
-
- /* v1,2 & v3,4 have different ways of calculating avgCharWid. */
- /* but I'm told that using the v3 way breaks display of CJK fonts in windows */
- os2->avgCharWid = 500;
- os2->v1_avgCharWid = os2->v3_avgCharWid = 0;
- if ( cnt1==27 )
- os2->v1_avgCharWid = avg1/1000;
- if ( cnt2!=0 )
- os2->v3_avgCharWid = avg2/cnt2;
- memcpy(os2->panose,sf->pfminfo.panose,sizeof(os2->panose));
- map = at->map;
- if ( modformat==ff_ttfsym ) {
- if ( sf->pfminfo.hascodepages )
- memcpy(os2->ulCodePage,sf->pfminfo.codepages,sizeof(os2->ulCodePage));
- else {
- os2->ulCodePage[0] = 0x80000000;
- os2->ulCodePage[1] = 0;
- }
- if ( AlreadyMSSymbolArea(sf,map)) {
- first = 0xf0ff; last = 0;
- for ( i=0xf020; i<map->enccount && i<=0xf0ff; ++i )
- if ( (gid=map->map[i])!=-1 && sf->glyphs[gid]!=NULL &&
- sf->glyphs[gid]->ttf_glyph!=-1 ) {
- if ( i<first ) first = i;
- if ( i>last ) last = i;
- }
- for ( i=0; i<map->enccount && i<=255; ++i )
- if ( (gid=map->map[i])!=-1 && sf->glyphs[gid]!=NULL &&
- sf->glyphs[gid]->ttf_glyph!=-1 ) {
- if ( i+0xf000<first ) first = i+0xf000;
- if ( i+0xf000>last ) last = i+0xf000;
- }
- os2->firstcharindex = first; /* This gets mapped to space */
- os2->lastcharindex = last;
- } else {
- first = 255; last = 0;
- for ( i=0; i<map->enccount && i<=255; ++i )
- if ( (gid=map->map[i])!=-1 && sf->glyphs[gid]!=NULL &&
- sf->glyphs[gid]->ttf_glyph!=-1 ) {
- if ( i<first ) first = i;
- if ( i>last ) last = i;
- }
- for ( i=0xf020; i<map->enccount && i<=0xf0ff; ++i )
- if ( (gid=map->map[i])!=-1 && sf->glyphs[gid]!=NULL &&
- sf->glyphs[gid]->ttf_glyph!=-1 ) {
- if ( i-0xf000<first ) first = i-0xf000;
- if ( i-0xf000>last ) last = i-0xf000;
- }
- if ( first<' ' ) first = ' ';
- os2->firstcharindex = 0xf000 + first; /* This gets mapped to space */
- os2->lastcharindex = 0xf000 + last;
- }
- } else {
- os2->firstcharindex = first;
- os2->lastcharindex = last;
- if ( sf->pfminfo.hascodepages )
- memcpy(os2->ulCodePage,sf->pfminfo.codepages,sizeof(os2->ulCodePage));
- else
- OS2FigureCodePages(sf, os2->ulCodePage);
- /* Herbert Duerr: */
- /* Some old versions of Windows do not provide access to all */
- /* glyphs in a font if the fonts contains non-PUA symbols */
- /* and thus only has sets the codepage flag for symbol */
- /* => a workaround for this problem on Windows legacy versions */
- /* is to use an OS2-table version without codepage flags */
- /* GWW: */
- /* This sounds to me like a windows bug rather than one in ff */
- /* and this is a work-around for windows. As far as I can tell */
- /* ff is setting the codepage field properly, it's just that */
- /* windows doesn't interpret that bit correctly */
- /* GWW: Things get worse. Windows no longer accepts a version 0 */
- /* for OS/2. FontLab simply lies and says we have a latin1 */
- /* code page when we don't. */
- if( !sf->pfminfo.hascodepages )
- if( (os2->ulCodePage[0]&~(1U<<31))==0 && os2->ulCodePage[1]==0 )
- os2->ulCodePage[0] |= 1;
- }
-
- if ( os2->version>=2 ) {
- if ( sf->pfminfo.os2_xheight!=0 )
- os2->xHeight = sf->pfminfo.os2_xheight;
- else {
- double xh = SFXHeight(sf,at->gi.layer,true);
- os2->xHeight = (xh >= 0.0 ? xh : 0);
- }
- if ( sf->pfminfo.os2_capheight!=0 )
- os2->capHeight = sf->pfminfo.os2_capheight;
- else {
- double caph = SFCapHeight(sf,at->gi.layer,true);
- os2->capHeight = (caph >= 0.0 ? caph : 0);
- }
- os2->defChar = 0;
- if ( format==ff_otf || format==ff_otfcid )
- os2->defChar = ' ';
- os2->breakChar = ' ';
- os2->maxContext = 1; /* Kerning will set this to 2, ligature to whatever */
- }
-
- if ( os2->version>=3 && os2->v3_avgCharWid!=0 )
- os2->avgCharWid = os2->v3_avgCharWid;
- else if ( os2->v1_avgCharWid!=0 )
- os2->avgCharWid = os2->v1_avgCharWid;
- else if ( os2->v3_avgCharWid!=0 )
- os2->avgCharWid = os2->v3_avgCharWid;
-}
-
-static void redoloca(struct alltabs *at) {
- int i;
-
- at->loca = tmpfile2();
- if ( at->head.locais32 ) {
- for ( i=0; i<=at->maxp.numGlyphs; ++i )
- putlong(at->loca,at->gi.loca[i]);
- at->localen = sizeof(int32)*(at->maxp.numGlyphs+1);
- } else {
- for ( i=0; i<=at->maxp.numGlyphs; ++i )
- putshort(at->loca,at->gi.loca[i]/2);
- at->localen = sizeof(int16)*(at->maxp.numGlyphs+1);
- if ( ftell(at->loca)&2 )
- putshort(at->loca,0);
- }
- if ( at->format!=ff_type42 && at->format!=ff_type42cid ) {
- free(at->gi.loca);
- at->gi.loca = NULL;
- }
-}
-
-static void dummyloca(struct alltabs *at) {
-
- at->loca = tmpfile2();
- if ( at->head.locais32 ) {
- putlong(at->loca,0);
- at->localen = sizeof(int32);
- } else {
- putshort(at->loca,0);
- at->localen = sizeof(int16);
- putshort(at->loca,0); /* pad it */
- }
-}
-
-static void redohead(struct alltabs *at) {
- at->headf = tmpfile2();
-
- putlong(at->headf,at->head.version);
- putlong(at->headf,at->head.revision);
- putlong(at->headf,at->head.checksumAdj);
- putlong(at->headf,at->head.magicNum);
- putshort(at->headf,at->head.flags);
- putshort(at->headf,at->head.emunits);
- putlong(at->headf,at->head.createtime[1]);
- putlong(at->headf,at->head.createtime[0]);
- putlong(at->headf,at->head.modtime[1]);
- putlong(at->headf,at->head.modtime[0]);
- putshort(at->headf,at->head.xmin);
- putshort(at->headf,at->head.ymin);
- putshort(at->headf,at->head.xmax);
- putshort(at->headf,at->head.ymax);
- putshort(at->headf,at->head.macstyle);
- putshort(at->headf,at->head.lowestreadable);
- putshort(at->headf,at->head.dirhint);
- putshort(at->headf,at->head.locais32);
- putshort(at->headf,at->head.glyphformat);
-
- at->headlen = ftell(at->headf);
- if ( (at->headlen&2)!=0 )
- putshort(at->headf,0);
-}
-
-static void redohhead(struct alltabs *at,int isv) {
- int i;
- struct hhead *head;
- FILE *f;
-
- if ( !isv ) {
- f = at->hheadf = tmpfile2();
- head = &at->hhead;
- } else {
- f = at->vheadf = tmpfile2();
- head = &at->vhead;
- }
-
- putlong(f,head->version);
- putshort(f,head->ascender);
- putshort(f,head->descender);
- putshort(f,head->linegap);
- putshort(f,head->maxwidth);
- putshort(f,head->minlsb);
- putshort(f,head->minrsb);
- putshort(f,head->maxextent);
- putshort(f,head->caretSlopeRise);
- putshort(f,head->caretSlopeRun);
- for ( i=0; i<5; ++i )
- putshort(f,head->mbz[i]);
- putshort(f,head->metricformat);
- putshort(f,head->numMetrics);
-
- if ( !isv ) {
- at->hheadlen = ftell(f);
- if ( (at->hheadlen&2)!=0 )
- putshort(f,0);
- } else {
- at->vheadlen = ftell(f);
- if ( (at->vheadlen&2)!=0 )
- putshort(f,0);
- }
-}
-
-static void redomaxp(struct alltabs *at,enum fontformat format) {
- at->maxpf = tmpfile2();
-
- putlong(at->maxpf,at->maxp.version);
- putshort(at->maxpf,at->maxp.numGlyphs);
- if ( format!=ff_otf && format!=ff_otfcid ) {
- putshort(at->maxpf,at->maxp.maxPoints);
- putshort(at->maxpf,at->maxp.maxContours);
- putshort(at->maxpf,at->maxp.maxCompositPts);
- putshort(at->maxpf,at->maxp.maxCompositCtrs);
- putshort(at->maxpf,at->maxp.maxZones);
- putshort(at->maxpf,at->maxp.maxTwilightPts);
- putshort(at->maxpf,at->maxp.maxStorage);
- putshort(at->maxpf,at->maxp.maxFDEFs);
- putshort(at->maxpf,at->maxp.maxIDEFs);
- putshort(at->maxpf,at->maxp.maxStack);
- putshort(at->maxpf,at->maxp.maxglyphInstr);
- putshort(at->maxpf,at->maxp.maxnumcomponents);
- putshort(at->maxpf,at->maxp.maxcomponentdepth);
- }
-
- at->maxplen = ftell(at->maxpf);
- if ( (at->maxplen&2)!=0 )
- putshort(at->maxpf,0);
-}
-
-static void redoos2(struct alltabs *at) {
- int i;
- at->os2f = tmpfile2();
-
- putshort(at->os2f,at->os2.version);
- putshort(at->os2f,at->os2.avgCharWid);
- putshort(at->os2f,at->os2.weightClass);
- putshort(at->os2f,at->os2.widthClass);
- putshort(at->os2f,at->os2.fstype);
- putshort(at->os2f,at->os2.ysubXSize);
- putshort(at->os2f,at->os2.ysubYSize);
- putshort(at->os2f,at->os2.ysubXOff);
- putshort(at->os2f,at->os2.ysubYOff);
- putshort(at->os2f,at->os2.ysupXSize);
- putshort(at->os2f,at->os2.ysupYSize);
- putshort(at->os2f,at->os2.ysupXOff);
- putshort(at->os2f,at->os2.ysupYOff);
- putshort(at->os2f,at->os2.yStrikeoutSize);
- putshort(at->os2f,at->os2.yStrikeoutPos);
- putshort(at->os2f,at->os2.sFamilyClass);
- for ( i=0; i<10; ++i )
- putc(at->os2.panose[i],at->os2f);
- for ( i=0; i<4; ++i )
- putlong(at->os2f,at->os2.unicoderange[i]);
- for ( i=0; i<4; ++i )
- putc(at->os2.achVendID[i],at->os2f);
- putshort(at->os2f,at->os2.fsSel);
- putshort(at->os2f,at->os2.firstcharindex);
- putshort(at->os2f,at->os2.lastcharindex);
- putshort(at->os2f,at->os2.ascender);
- putshort(at->os2f,at->os2.descender);
- putshort(at->os2f,at->os2.linegap);
- putshort(at->os2f,at->os2.winascent);
- putshort(at->os2f,at->os2.windescent);
- if ( at->os2.version>=1 ) {
- putlong(at->os2f,at->os2.ulCodePage[0]);
- putlong(at->os2f,at->os2.ulCodePage[1]);
- }
-
- if ( at->os2.version>=2 ) {
- putshort(at->os2f,at->os2.xHeight);
- putshort(at->os2f,at->os2.capHeight);
- putshort(at->os2f,at->os2.defChar);
- putshort(at->os2f,at->os2.breakChar);
- putshort(at->os2f,at->os2.maxContext);
- }
-
- at->os2len = ftell(at->os2f);
- if ( (at->os2len&2)!=0 )
- putshort(at->os2f,0);
-}
-
-static void dumpgasp(struct alltabs *at, SplineFont *sf) {
- int i;
-
- at->gaspf = tmpfile2();
- if ( sf->gasp_cnt==0 ) {
- putshort(at->gaspf,0); /* Old version number */
- /* For fonts with no instructions always dump a gasp table which */
- /* asks for grey and no grid fit */
- putshort(at->gaspf,1);
- putshort(at->gaspf,0xffff); /* Upper bound on pixels/em for this range */
- putshort(at->gaspf,0x2); /* Grey scale, no gridfitting */
- /* No hints, so no grids to fit */
- } else {
- putshort(at->gaspf,sf->gasp_version); /* New version number, with clear type info */
- putshort(at->gaspf,sf->gasp_cnt);
- for ( i=0; i<sf->gasp_cnt; ++i ) {
- putshort(at->gaspf,sf->gasp[i].ppem);
- putshort(at->gaspf,sf->gasp[i].flags);
- }
- }
- at->gasplen = ftell(at->gaspf);
- /* This table is always 32 bit aligned */
-}
-
-static void dumpstr(FILE *file,char *str) {
- do {
- putc(*str,file);
- } while ( *str++!='\0' );
-}
-
-static void dumpustr(FILE *file,char *utf8_str) {
- unichar_t *ustr = utf82u_copy(utf8_str), *pt=ustr;
- do {
- putc(*pt>>8,file);
- putc(*pt&0xff,file);
- } while ( *pt++!='\0' );
- free(ustr);
-}
-
-static void dumppstr(FILE *file,const char *str) {
- putc(strlen(str),file);
- fwrite(str,sizeof(char),strlen(str),file);
-}
-
-char *utf8_verify_copy(const char *str) {
- /* When given a postscript string it SHOULD be in ASCII. But it will often*/
- /* contain a copyright symbol (sometimes in latin1, sometimes in macroman)*/
- /* unfortunately both encodings use 0xa9 for copyright so we can't distinguish */
- /* guess that it's latin1 (or that copyright is the only odd char which */
- /* means a latin1 conversion will work for macs too). */
-
- if ( str==NULL )
-return( NULL );
-
- if ( utf8_valid(str))
-return( copy(str)); /* Either in ASCII (good) or appears to be utf8*/
-return( latin1_2_utf8_copy(str));
-}
-
-/* Oh. If the encoding is symbol (platform=3, specific=0) then Windows won't */
-/* accept the font unless the name table also has entries for (3,0). I'm not */
-/* sure if this is the case for the CJK encodings (docs don't mention that) */
-/* but let's do it just in case */
-void DefaultTTFEnglishNames(struct ttflangname *dummy, SplineFont *sf) {
- time_t now;
- struct tm *tm;
- char buffer[200];
-
- if ( dummy->names[ttf_copyright]==NULL || *dummy->names[ttf_copyright]=='\0' )
- dummy->names[ttf_copyright] = utf8_verify_copy(sf->copyright);
- if ( dummy->names[ttf_family]==NULL || *dummy->names[ttf_family]=='\0' )
- dummy->names[ttf_family] = utf8_verify_copy(sf->familyname);
- if ( dummy->names[ttf_subfamily]==NULL || *dummy->names[ttf_subfamily]=='\0' )
- dummy->names[ttf_subfamily] = utf8_verify_copy(SFGetModifiers(sf));
- if ( dummy->names[ttf_uniqueid]==NULL || *dummy->names[ttf_uniqueid]=='\0' ) {
- time(&now);
- tm = localtime(&now);
- sprintf( buffer, "%s : %s : %d-%d-%d",
- TTFFoundry?TTFFoundry:"FontForge 2.0",
- sf->fullname!=NULL?sf->fullname:sf->fontname,
- tm->tm_mday, tm->tm_mon+1, tm->tm_year+1900 );
- dummy->names[ttf_uniqueid] = copy(buffer);
- }
- if ( dummy->names[ttf_fullname]==NULL || *dummy->names[ttf_fullname]=='\0' )
- dummy->names[ttf_fullname] = utf8_verify_copy(sf->fullname);
- if ( dummy->names[ttf_version]==NULL || *dummy->names[ttf_version]=='\0' ) {
- if ( sf->subfontcnt!=0 )
- sprintf( buffer, "Version %f ", (double)sf->cidversion );
- else if ( sf->version!=NULL )
- sprintf(buffer,"Version %.20s ", sf->version);
- else
- strcpy(buffer,"Version 1.0" );
- dummy->names[ttf_version] = copy(buffer);
- }
- if ( dummy->names[ttf_postscriptname]==NULL || *dummy->names[ttf_postscriptname]=='\0' )
- dummy->names[ttf_postscriptname] = utf8_verify_copy(sf->fontname);
-}
-
-typedef struct {
- uint16 platform;
- uint16 specific;
- uint16 lang;
- uint16 strid;
- uint16 len;
- uint16 offset;
-} NameEntry;
-
-typedef struct {
- FILE *strings;
- int cur, max;
- enum fontformat format;
- Encoding *encoding_name;
- NameEntry *entries;
- int applemode;
-} NamTab;
-
-static int compare_entry(const void *_mn1, const void *_mn2) {
- const NameEntry *mn1 = _mn1, *mn2 = _mn2;
-
- if ( mn1->platform!=mn2->platform )
-return( mn1->platform - mn2->platform );
- if ( mn1->specific!=mn2->specific )
-return( mn1->specific - mn2->specific );
- if ( mn1->lang!=mn2->lang )
-return( mn1->lang - mn2->lang );
-
-return( mn1->strid-mn2->strid );
-}
-
-static void AddEncodedName(NamTab *nt,char *utf8name,uint16 lang,uint16 strid) {
- NameEntry *ne;
- int maclang, macenc= -1, specific;
- char *macname = NULL;
-
- if ( strid==ttf_postscriptname && lang!=0x409 )
-return; /* Should not happen, but it did */
-
- if ( nt->cur+6>=nt->max ) {
- if ( nt->cur==0 )
- nt->entries = malloc((nt->max=100)*sizeof(NameEntry));
- else
- nt->entries = realloc(nt->entries,(nt->max+=100)*sizeof(NameEntry));
- }
-
- ne = nt->entries + nt->cur;
-
- ne->platform = 3; /* Windows */
- ne->specific = 1; /* unicode */
- ne->lang = lang;
- ne->strid = strid;
- ne->offset = ftell(nt->strings);
- ne->len = 2*utf82u_strlen(utf8name);
- dumpustr(nt->strings,utf8name);
- ++ne;
-
- if ( nt->format==ff_ttfsym ) {
- *ne = ne[-1];
- ne->specific = 0; /* Windows "symbol" */
- ++ne;
- }
-
- maclang = WinLangToMac(lang);
- if ( !nt->applemode && lang!=0x409 )
- maclang = 0xffff;
- if ( maclang!=0xffff ) {
-#ifdef FONTFORGE_CONFIG_APPLE_UNICODE_NAMES
- if ( strid!=ttf_postscriptname ) {
- *ne = ne[-1];
- ne->platform = 0; /* Mac unicode */
- ne->specific = 0; /* 3 => Unicode 2.0 semantics */ /* 0 ("default") is also a reasonable value */
- ne->lang = maclang;
- ++ne;
- }
-#endif
-
- macenc = MacEncFromMacLang(maclang);
- macname = Utf8ToMacStr(utf8name,macenc,maclang);
- if ( macname!=NULL ) {
- ne->platform = 1; /* apple non-unicode encoding */
- ne->specific = macenc; /* whatever */
- ne->lang = maclang;
- ne->strid = strid;
- ne->offset = ftell(nt->strings);
- ne->len = strlen(macname);
- dumpstr(nt->strings,macname);
- ++ne;
- free(macname);
- }
- }
-
- specific = nt->encoding_name->is_korean ? 5 : /* Wansung, korean */
- nt->encoding_name->is_japanese ? 2 : /* SJIS */
- nt->encoding_name->is_simplechinese ? 3 :/* packed gb2312, don't know the real name */
- strmatch(nt->encoding_name->enc_name,"EUC-GB12345")==0 ? 3 :/* Lie */
- nt->encoding_name->is_tradchinese ? 4 : /* Big5, traditional Chinese */
- -1;
- if ( specific != -1 ) {
- ne->platform = 3; /* windows */
- ne->specific = specific; /* whatever */
- ne->lang = lang;
- ne->strid = strid;
- if ( macname!=NULL &&
- (( specific== 2 && macenc==1 ) || /* Japanese */
- ( specific== 3 && macenc==25 ) || /* simplified chinese */
- ( specific== 4 && macenc==2 ) || /* traditional chinese */
- ( specific== 5 && macenc==3 )) ) { /* wansung korean */
- ne->offset = ne[-1].offset;
- ne->len = ne[-1].len;
- } else {
- char *space, *out;
- const char *encname;
- ICONV_CONST char *in;
- Encoding *enc;
- size_t inlen, outlen;
- ne->offset = ftell(nt->strings);
- encname = nt->encoding_name->is_japanese ? "SJIS" :
- strmatch(nt->encoding_name->enc_name,"JOHAB")==0 ? "JOHAB" :
- nt->encoding_name->is_korean ? "EUC-KR" :
- nt->encoding_name->is_simplechinese ? "EUC-CN" :
- nt->encoding_name->enc_name;
- enc = FindOrMakeEncoding(encname);
- if ( enc==NULL )
- --ne;
- else {
- unichar_t *uin = utf82u_copy(utf8name);
- outlen = 3*strlen(utf8name)+10;
- out = space = malloc(outlen+2);
- in = (char *) uin; inlen = 2*u_strlen(uin);
- iconv(enc->fromunicode,NULL,NULL,NULL,NULL); /* should not be needed, but just in case */
- iconv(enc->fromunicode,&in,&inlen,&out,&outlen);
- out[0] = '\0'; out[1] = '\0';
- ne->offset = ftell(nt->strings);
- ne->len = strlen(space);
- dumpstr(nt->strings,space);
- free(space); free(uin);
- }
- }
- ++ne;
- }
- nt->cur = ne - nt->entries;
-}
-
-static void AddMacName(NamTab *nt,struct macname *mn, int strid) {
- NameEntry *ne;
-
- if ( nt->cur+1>=nt->max ) {
- if ( nt->cur==0 )
- nt->entries = malloc((nt->max=100)*sizeof(NameEntry));
- else
- nt->entries = realloc(nt->entries,(nt->max+=100)*sizeof(NameEntry));
- }
-
- ne = nt->entries + nt->cur;
-
- ne->platform = 1; /* apple non-unicode encoding */
- ne->specific = mn->enc; /* whatever */
- ne->lang = mn->lang;
- ne->strid = strid;
- ne->offset = ftell(nt->strings);
- ne->len = strlen(mn->name);
- dumpstr(nt->strings,mn->name);
-
- ++nt->cur;
-}
-
-/* There's an inconsistancy here. Apple's docs say there most be only one */
-/* nameid==6 and that name must be ascii (presumably plat=1, spec=0, lang=0) */
-/* The opentype docs say there must be two (psl=1,0,0 & psl=3,1,0x409) any */
-/* others are to be ignored */
-/* A representative from Apple says they will change their spec to accept */
-/* the opentype version, and tells me that they don't currently care */
-/* So ignore this */
-/* Undocumented fact: Windows insists on having a UniqueID string 3,1 */
-static void dumpnames(struct alltabs *at, SplineFont *sf,enum fontformat format) {
- int i,j;
- struct ttflangname dummy, *cur, *useng = NULL;
- struct macname *mn;
- struct other_names *on, *onn;
- NamTab nt;
- struct otfname *otfn;
- struct otffeatname *fn;
-
- memset(&nt,0,sizeof(nt));
- nt.encoding_name = at->map->enc;
- nt.format = format;
- nt.applemode = at->applemode;
- nt.strings = tmpfile2();
- if (( format>=ff_ttf && format<=ff_otfdfont) && (at->gi.flags&ttf_flag_symbol))
- nt.format = ff_ttfsym;
-
- memset(&dummy,0,sizeof(dummy));
- for ( cur=sf->names; cur!=NULL; cur=cur->next ) {
- if ( cur->lang==0x409 ) {
- dummy = *cur;
- useng = cur;
- break;
- }
- }
- DefaultTTFEnglishNames(&dummy, sf);
-
- for ( i=0; i<ttf_namemax; ++i ) if ( dummy.names[i]!=NULL )
- AddEncodedName(&nt,dummy.names[i],0x409,i);
- for ( cur=sf->names; cur!=NULL; cur=cur->next ) {
- if ( cur->lang!=0x409 )
- for ( i=0; i<ttf_namemax; ++i )
- if ( cur->names[i]!=NULL )
- AddEncodedName(&nt,cur->names[i],cur->lang,i);
- }
-
- /* The examples I've seen of the feature table only contain platform==mac */
- /* so I'm not including apple unicode */
- if ( at->feat_name!=NULL ) {
- for ( i=0; at->feat_name[i].strid!=0; ++i ) {
- for ( mn=at->feat_name[i].mn; mn!=NULL; mn=mn->next )
- AddMacName(&nt,mn,at->feat_name[i].strid);
- /* I'm not sure why I keep track of these alternates (feat_name[i].smn) */
- /* Dumping them out is a bad idea. It might be worth */
- /* something if we searched through the alternate sets for languages */
- /* not found in the main set, but at the moment I don't think so */
- /* What happens now if I do it is that I get duplicate names output. */
- }
- }
- /* And the names used by the fvar table aren't mac unicode either */
- for ( on = at->other_names; on!=NULL; on=onn ) {
- for ( mn = on->mn; mn!=NULL ; mn = mn->next )
- AddMacName(&nt,mn,on->strid);
- onn = on->next;
- chunkfree(on,sizeof(*on));
- }
- /* Wow, the GPOS 'size' feature uses the name table in a very mac-like way*/
- if ( at->fontstyle_name_strid!=0 && sf->fontstyle_name!=NULL ) {
- for ( otfn = sf->fontstyle_name; otfn!=NULL; otfn = otfn->next )
- AddEncodedName(&nt,otfn->name,otfn->lang,at->fontstyle_name_strid);
- }
- /* As do some other features now */
- for ( fn = sf->feat_names; fn!=NULL; fn=fn->next ) {
- for ( otfn = fn->names; otfn!=NULL; otfn = otfn->next )
- AddEncodedName(&nt,otfn->name,otfn->lang,fn->nid);
- }
-
- qsort(nt.entries,nt.cur,sizeof(NameEntry),compare_entry);
-
- at->name = tmpfile2();
- putshort(at->name,0); /* format */
- putshort(at->name,nt.cur); /* numrec */
- putshort(at->name,(3+nt.cur*6)*sizeof(int16)); /* offset to strings */
-
- for ( i=0; i<nt.cur; ++i ) {
- putshort(at->name,nt.entries[i].platform);
- putshort(at->name,nt.entries[i].specific);
- putshort(at->name,nt.entries[i].lang);
- putshort(at->name,nt.entries[i].strid);
- putshort(at->name,nt.entries[i].len);
- putshort(at->name,nt.entries[i].offset);
- }
- if ( !ttfcopyfile(at->name,nt.strings,(3+nt.cur*6)*sizeof(int16),"name-data"))
- at->error = true;
-
- at->namelen = ftell(at->name);
- if ( (at->namelen&3)!=0 )
- for ( j= 4-(at->namelen&3); j>0; --j )
- putc('\0',at->name);
-
- for ( i=0; i<ttf_namemax; ++i )
- if ( useng==NULL || dummy.names[i]!=useng->names[i] )
- free( dummy.names[i]);
- free( nt.entries );
- free( at->feat_name );
-
- /* Windows at one point refused to load fonts with 'name' tables bigger than 5K (decided they were insecure). */
-}
-
-static void dumppost(struct alltabs *at, SplineFont *sf, enum fontformat format) {
- int pos, i,j, shouldbe;
- int shorttable = (format==ff_otf || format==ff_otfcid ||
- (at->gi.flags&ttf_flag_shortps));
- uint32 here;
-
- at->post = tmpfile2();
-
- putlong(at->post,shorttable?0x00030000:0x00020000); /* formattype */
- putfixed(at->post,sf->italicangle);
- putshort(at->post,sf->upos-sf->uwidth/2); /* 'post' defn says top of rect, while FontInfo def says center of rect */
- putshort(at->post,sf->uwidth);
- putlong(at->post,at->isfixed);
- putlong(at->post,0); /* no idea about memory */
- putlong(at->post,0); /* no idea about memory */
- putlong(at->post,0); /* no idea about memory */
- putlong(at->post,0); /* no idea about memory */
- if ( !shorttable ) {
- here = ftell(at->post);
- putshort(at->post,at->maxp.numGlyphs);
-
- shouldbe = 0;
- for ( i=0, pos=0; i<at->maxp.numGlyphs; ++i ) {
- if ( at->gi.bygid[i]!=-1 && sf->glyphs[at->gi.bygid[i]]!=NULL ) {
- SplineChar *sc = sf->glyphs[at->gi.bygid[i]];
- while ( i>shouldbe ) {
- if ( shouldbe==0 )
- putshort(at->post,0); /* glyph 0 is named .notdef */
- else if ( shouldbe==1 )
- putshort(at->post,1); /* glyphs 1&2 are .null and cr */
- else if ( shouldbe==2 )
- putshort(at->post,2); /* or something */
- else
- putshort(at->post,0);
- ++shouldbe;
- }
- if ( strcmp(sc->name,".notdef")==0 )
- putshort(at->post,0);
- else {
- for ( j=0; j<258; ++j )
- if ( strcmp(sc->name,ttfstandardnames[j])==0 )
- break;
- if ( j!=258 )
- putshort(at->post,j);
- else {
- putshort(at->post,pos+258);
- ++pos;
- }
- }
- ++shouldbe;
- }
- }
-
- if ( shouldbe!=at->maxp.numGlyphs ) {
- fseek(at->post,here,SEEK_SET);
- putshort(at->post,shouldbe);
- fseek(at->post,0,SEEK_END);
- }
- if ( pos!=0 ) {
- for ( i=0; i<at->maxp.numGlyphs; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- SplineChar *sc = sf->glyphs[at->gi.bygid[i]];
- if ( strcmp(sc->name,".notdef")==0 )
- /* Do Nothing */;
- else {
- for ( j=0; j<258; ++j )
- if ( strcmp(sc->name,ttfstandardnames[j])==0 )
- break;
- if ( j!=258 )
- /* Do Nothing */;
- else
- dumppstr(at->post,sc->name);
- }
- }
- }
- }
- at->postlen = ftell(at->post);
- if ( (at->postlen&3)!=0 )
- for ( j= 4-(at->postlen&3); j>0; --j )
- putc('\0',at->post);
-}
-
-static FILE *_Gen816Enc(SplineFont *sf,int *tlen,EncMap *map) {
- int i, j, complained, pos, k, subheadindex, jj, isbig5=false;
- uint16 table[256];
- struct subhead subheads[128];
- uint16 *glyphs;
- uint16 tempglyphs[256];
- int base, lbase, basebound, subheadcnt, planesize, plane0size;
- int base2, base2bound;
- FILE *sub;
- const char *encname = map->enc->iconv_name!=NULL ? map->enc->iconv_name : map->enc->enc_name;
-
- *tlen = 0;
-
- base2 = -1; base2bound = -2;
- if ( map->enc->is_tradchinese && strstrmatch(encname,"hkscs")!=NULL ) {
- base = 0x81;
- basebound = 0xfe;
- subheadcnt = basebound-base+1;
- lbase = 0x40;
- planesize = 191;
- } else if ( map->enc->is_tradchinese || sf->uni_interp==ui_trad_chinese) {
- base = 0xa1;
- basebound = 0xf9; /* wcl-02.ttf's cmap claims to go up to fc, but everything after f9 is invalid (according to what I know of big5, f9 should be the end) */
- subheadcnt = basebound-base+1;
- lbase = 0x40;
- planesize = 191;
- isbig5 = true;
- } else if ( strstrmatch(encname,"euc")!=NULL ) {
- base = 0xa1;
- basebound = 0xfd;
- lbase = 0xa1;
- subheadcnt = basebound-base+1;
- planesize = 0xfe - lbase +1;
- } else if ( strstrmatch(encname,"johab")!=NULL ) {
- base = 0x84;
- basebound = 0xf9;
- lbase = 0x31;
- subheadcnt = basebound-base+1;
- planesize = 0xfe -0x31+1; /* Stupid gcc bug, thinks 0xfe- is ambiguous (exponant) */
- } else if ( strstrmatch(encname,"sjis")!=NULL || strstrmatch(encname,"cp932")!=NULL ) {
- base = 129;
- basebound = 159;
- lbase = 64;
- planesize = 252 - lbase +1;
- base2 = 0xe0;
- /* SJIS supports "user defined characters" between 0xf040 and 0xfcfc */
- /* there probably won't be any, but allow space for them if there are*/
- for ( base2bound=0xfc00; base2bound>0xefff; --base2bound )
- if ( base2bound<map->enccount && map->map[base2bound]!=-1 &&
- SCWorthOutputting(sf->glyphs[map->map[base2bound]]))
- break;
- base2bound >>= 8;
- subheadcnt = basebound-base + 1 + base2bound-base2 + 1;
- } else {
- IError( "Unsupported 8/16 encoding %s\n", map->enc->enc_name );
-return( NULL );
- }
- plane0size = base2==-1? base : base2;
- i=0;
- if ( base2!=-1 ) {
- for ( i=basebound; i<base2 && i<map->enccount; ++i )
- if ( map->map[i]==-1 )
- continue;
- else if ( SCWorthOutputting(sf->glyphs[map->map[i]]))
- break;
- if ( i==base2 || i==map->enccount )
- i = 0;
- }
- if ( i==0 ) {
- for ( i=0; i<base && i<map->enccount; ++i )
- if ( map->map[i]==-1 )
- continue;
- else if ( SCWorthOutputting(sf->glyphs[map->map[i]]))
- break;
- }
- if ( base2!=-1 ) {
- for ( i=base; i<=basebound && i<map->enccount; ++i )
- if ( map->map[i]!=-1 && SCWorthOutputting(sf->glyphs[map->map[i]])) {
- ff_post_error(_("Bad Encoding"),_("There is a single byte character (%d) using one of the slots needed for double byte characters"),i);
- break;
- }
- if ( i==basebound+1 )
- for ( i=base2; i<256 && i<map->enccount; ++i )
- if ( map->map[i]!=-1 && SCWorthOutputting(sf->glyphs[map->map[i]])) {
- ff_post_error(_("Bad Encoding"),_("There is a single byte character (%d) using one of the slots needed for double byte characters"),i);
- break;
- }
- } else {
- for ( i=base; i<=256 && i<map->enccount; ++i )
- if ( map->map[i]!=-1 && SCWorthOutputting(sf->glyphs[map->map[i]])) {
- ff_post_error(_("Bad Encoding"),_("There is a single byte character (%d) using one of the slots needed for double byte characters"),i);
- break;
- }
- }
- for ( i=256; i<(base<<8) && i<map->enccount; ++i )
- if ( map->map[i]!=-1 && SCWorthOutputting(sf->glyphs[map->map[i]])) {
- ff_post_error(_("Bad Encoding"),_("There is a character (%d) which cannot be encoded"),i);
- break;
- }
- if ( i==(base<<8) && base2==-1 )
- for ( i=((basebound+1)<<8); i<0x10000 && i<map->enccount; ++i )
- if ( map->map[i]!=-1 && SCWorthOutputting(sf->glyphs[map->map[i]])) {
- ff_post_error(_("Bad Encoding"),_("There is a character (%d) which cannot be encoded"),i);
- break;
- }
-
- memset(table,'\0',sizeof(table));
- for ( i=base; i<=basebound; ++i )
- table[i] = 8*(i-base+1);
- for ( i=base2; i<=base2bound; ++i )
- table[i] = 8*(i-base2+basebound-base+1+1);
- memset(subheads,'\0',sizeof(subheads));
- subheads[0].first = 0; subheads[0].cnt = plane0size;
- for ( i=1; i<subheadcnt+1; ++i ) {
- subheads[i].first = lbase;
- subheads[i].cnt = planesize;
- }
- glyphs = calloc(subheadcnt*planesize+plane0size,sizeof(uint16));
- subheads[0].rangeoff = 0;
- for ( i=0; i<plane0size && i<map->enccount; ++i )
- if ( map->map[i]!=-1 && sf->glyphs[map->map[i]]!=NULL &&
- sf->glyphs[map->map[i]]->ttf_glyph!=-1 )
- glyphs[i] = sf->glyphs[map->map[i]]->ttf_glyph;
-
- pos = 1;
-
- complained = false;
- subheadindex = 1;
- for ( jj=0; jj<2 || (base2==-1 && jj<1); ++jj )
- for ( j=((jj==0?base:base2)<<8); j<=((jj==0?basebound:base2bound)<<8); j+= 0x100 ) {
- for ( i=0; i<lbase; ++i )
- if ( !complained && map->map[i+j]!=-1 &&
- SCWorthOutputting(sf->glyphs[map->map[i+j]])) {
- ff_post_error(_("Bad Encoding"),_("There is a character (%d) which is not normally in the encoding"),i+j);
- complained = true;
- }
- if ( isbig5 ) {
- /* big5 has a gap here. Does johab? */
- for ( i=0x7f; i<0xa1; ++i )
- if ( !complained && map->map[i+j]!=-1 &&
- SCWorthOutputting(sf->glyphs[map->map[i+j]])) {
- ff_post_error(_("Bad Encoding"),_("There is a character (%d) which is not normally in the encoding"),i+j);
- complained = true;
- }
- }
- memset(tempglyphs,0,sizeof(tempglyphs));
- for ( i=0; i<planesize; ++i )
- if ( map->map[j+lbase+i]!=-1 && sf->glyphs[map->map[j+lbase+i]]!=NULL &&
- sf->glyphs[map->map[j+lbase+i]]->ttf_glyph!=-1 )
- tempglyphs[i] = sf->glyphs[map->map[j+lbase+i]]->ttf_glyph;
- for ( i=1; i<pos; ++i ) {
- int delta = 0;
- for ( k=0; k<planesize; ++k )
- if ( tempglyphs[k]==0 && glyphs[plane0size+(i-1)*planesize+k]==0 )
- /* Still matches */;
- else if ( tempglyphs[k]==0 || glyphs[plane0size+(i-1)*planesize+k]==0 )
- break; /* Doesn't match */
- else if ( delta==0 )
- delta = (uint16) (tempglyphs[k]-glyphs[plane0size+(i-1)*planesize+k]);
- else if ( tempglyphs[k]==(uint16) (glyphs[plane0size+(i-1)*planesize+k]+delta) )
- /* Still matches */;
- else
- break;
- if ( k==planesize ) {
- subheads[subheadindex].delta = delta;
- subheads[subheadindex].rangeoff = plane0size+(i-1)*planesize;
- break;
- }
- }
- if ( subheads[subheadindex].rangeoff==0 ) {
- memcpy(glyphs+(pos-1)*planesize+plane0size,tempglyphs,planesize*sizeof(uint16));
- subheads[subheadindex].rangeoff = plane0size+(pos++-1)*planesize ;
- }
- ++subheadindex;
- }
-
- /* fixup offsets */
- /* my rangeoffsets are indexes into the glyph array. That's nice and */
- /* simple. Unfortunately ttf says they are offsets from the current */
- /* location in the file (sort of) so we now fix them up. */
- for ( i=0; i<subheadcnt+1; ++i )
- subheads[i].rangeoff = subheads[i].rangeoff*sizeof(uint16) +
- (subheadcnt-i)*sizeof(struct subhead) + sizeof(uint16);
-
- sub = tmpfile2();
- if ( sub==NULL )
-return( NULL );
-
- putshort(sub,2); /* 8/16 format */
- putshort(sub,0); /* Subtable length, we'll come back and fix this */
- putshort(sub,0); /* version/language, not meaningful in ms systems */
- for ( i=0; i<256; ++i )
- putshort(sub,table[i]);
- for ( i=0; i<subheadcnt+1; ++i ) {
- putshort(sub,subheads[i].first);
- putshort(sub,subheads[i].cnt);
- putshort(sub,subheads[i].delta);
- putshort(sub,subheads[i].rangeoff);
- }
- for ( i=0; i<(pos-1)*planesize+plane0size; ++i )
- putshort(sub,glyphs[i]);
- free(glyphs);
-
- *tlen = ftell(sub);
- fseek(sub,2,SEEK_SET);
- putshort(sub,*tlen); /* Length, I said we'd come back to it */
- rewind( sub );
-return( sub );
-}
-
-static FILE *Needs816Enc(SplineFont *sf,int *tlen,EncMap *map, FILE **apple, int *appletlen) {
- FILE *sub;
- const char *encname = map->enc->iconv_name!=NULL ? map->enc->iconv_name : map->enc->enc_name;
- EncMap *oldmap = map;
- EncMap *applemap = NULL;
- Encoding *enc;
-
- *tlen = 0;
- if ( apple!=NULL ) {
- *apple = NULL;
- *appletlen = 0;
- }
- if ( sf->cidmaster!=NULL || sf->subfontcnt!=0 )
-return( NULL );
- if ( (strstrmatch(encname,"big")!=NULL && strchr(encname,'5')!=NULL) ||
- strstrmatch(encname,"johab")!=NULL ||
- strstrmatch(encname,"sjis")!=NULL ||
- strstrmatch(encname,"cp932")!=NULL ||
- strstrmatch(encname,"euc-kr")!=NULL ||
- strstrmatch(encname,"euc-cn")!=NULL )
- /* Already properly encoded */;
- else if ( strstrmatch(encname,"2022")!=NULL &&
- (strstrmatch(encname,"JP2")!=NULL ||
- strstrmatch(encname,"JP-2")!=NULL ||
- strstrmatch(encname,"JP-3")!=NULL ))
-return( NULL ); /* No 8/16 encoding for JP2 nor JP3 */
- else if ( sf->uni_interp>=ui_japanese && sf->uni_interp<=ui_korean ) {
- enc = FindOrMakeEncoding(
- sf->uni_interp==ui_japanese ? "sjis" :
- sf->uni_interp==ui_trad_chinese ? "big5" :
- sf->uni_interp==ui_simp_chinese ? "euc-cn" :
- "euc-kr");
- if ( map->enc!=enc ) {
- map = EncMapFromEncoding(sf,enc);
- encname = map->enc->iconv_name!=NULL ? map->enc->iconv_name : map->enc->enc_name;
- }
- } else
-return( NULL );
-
- /* Both MS and Apple extend sjis. I don't know how to get iconv to give me*/
- /* apple's encoding though. So I generate one 8/16 table for MS based on */
- /* their extension (cp932), and another table based on plain sjis for Apple*/
- /* Don't know if this is true of other cjk encodings... for the moment I */
- /* will just use standard encodings for them */
- if ( strstrmatch(encname,"sjis")!=NULL ) {
- enc = FindOrMakeEncoding("cp932");
- if ( enc!=NULL ) {
- applemap = map;
- map = EncMapFromEncoding(sf,enc);
- }
- } else if ( strstrmatch(encname,"cp932")!=NULL )
- applemap = EncMapFromEncoding(sf,FindOrMakeEncoding("sjis"));
-
- if ( applemap!=NULL )
- *apple = _Gen816Enc(sf,appletlen,applemap);
- sub = _Gen816Enc(sf,tlen,map);
-
- if ( applemap!=NULL && applemap!=oldmap )
- EncMapFree(applemap);
- if ( map!=oldmap )
- EncMapFree(map);
-return( sub );
-}
-
-static FILE *NeedsUCS4Table(SplineFont *sf,int *ucs4len,EncMap *map) {
- int i=0,j,group;
- FILE *format12;
- SplineChar *sc;
- EncMap *freeme = NULL;
- struct altuni *altuni;
-
- if ( map->enc->is_unicodefull )
- i=0x10000;
- else if ( map->enc->is_custom )
- i = 0;
- else
- i = map->enc->char_cnt;
- for ( ; i<map->enccount; ++i ) {
- if ( map->map[i]!=-1 && SCWorthOutputting(sf->glyphs[map->map[i]]) ) {
- if ( sf->glyphs[map->map[i]]->unicodeenc>=0x10000 )
- break;
- for ( altuni=sf->glyphs[map->map[i]]->altuni; altuni!=NULL && (altuni->unienc<0x10000 || altuni->vs!=-1 || altuni->fid!=0);
- altuni=altuni->next );
- if ( altuni!=NULL )
- break;
- }
- }
-
- if ( i>=map->enccount )
-return(NULL);
-
- if ( !map->enc->is_unicodefull )
- map = freeme = EncMapFromEncoding(sf,FindOrMakeEncoding("ucs4"));
-
- format12 = tmpfile2();
- if ( format12==NULL )
-return( NULL );
-
- putshort(format12,12); /* Subtable format */
- putshort(format12,0); /* padding */
- putlong(format12,0); /* Length, we'll come back to this */
- putlong(format12,0); /* language */
- putlong(format12,0); /* Number of groups, we'll come back to this */
-
- group = 0;
- for ( i=0; i<map->enccount; ++i ) if ( map->map[i]!=-1 && SCWorthOutputting(sf->glyphs[map->map[i]]) && sf->glyphs[map->map[i]]->unicodeenc!=-1 ) {
- sc = sf->glyphs[map->map[i]];
- for ( j=i+1; j<map->enccount && map->map[j]!=-1 &&
- SCWorthOutputting(sf->glyphs[map->map[j]]) &&
- sf->glyphs[map->map[j]]->unicodeenc!=-1 &&
- sf->glyphs[map->map[j]]->ttf_glyph==sc->ttf_glyph+j-i; ++j );
- --j;
- putlong(format12,i); /* start char code */
- putlong(format12,j); /* end char code */
- putlong(format12,sc->ttf_glyph);
- ++group;
- i=j; /* move to the start of the next group */
- }
- *ucs4len = ftell(format12);
- fseek(format12,4,SEEK_SET);
- putlong(format12,*ucs4len); /* Length, I said we'd come back to it */
- putlong(format12,0); /* language */
- putlong(format12,group); /* Number of groups */
- rewind( format12 );
-
- if ( freeme!=NULL )
- EncMapFree(freeme);
-return( format12 );
-}
-
-static FILE *NeedsUCS2Table(SplineFont *sf,int *ucs2len,EncMap *map,int issymbol) {
- /* We always want a format 4 2byte unicode encoding map */
- /* But if it's symbol, only include encodings 0xff20 - 0xffff */
- uint32 *avail = malloc(65536*sizeof(uint32));
- int i,j,l;
- int segcnt, cnt=0, delta, rpos;
- struct cmapseg { uint16 start, end; uint16 delta; uint16 rangeoff; } *cmapseg;
- uint16 *ranges;
- SplineChar *sc;
- FILE *format4 = tmpfile2();
-
- memset(avail,0xff,65536*sizeof(uint32));
- if ( map->enc->is_unicodebmp || map->enc->is_unicodefull ) { int gid;
- for ( i=0; i<65536 && i<map->enccount; ++i ) if ( (gid=map->map[i])!=-1 && sf->glyphs[gid]!=NULL && sf->glyphs[gid]->ttf_glyph!=-1 ) {
- avail[i] = gid;
- ++cnt;
- }
- } else {
- struct altuni *altuni;
- for ( i=0; i<sf->glyphcnt; ++i ) {
- if ( (sc=sf->glyphs[i])!=NULL && sc->ttf_glyph!=-1 ) {
- if ( sc->unicodeenc>=0 && sc->unicodeenc<=0xffff ) {
- avail[sc->unicodeenc] = i;
- ++cnt;
- }
- for ( altuni=sc->altuni; altuni!=NULL; altuni = altuni->next ) {
- if ( altuni->unienc<=0xffff && altuni->vs==-1 && altuni->fid==0 ) {
- avail[altuni->unienc] = i;
- ++cnt;
- }
- }
- }
- }
- }
- if ( issymbol ) {
- /* Clear out all entries we don't want */
- memset(avail ,0xff,0xf020*sizeof(uint32));
- memset(avail+0xf100,0xff,0x0eff*sizeof(uint32));
- }
-
- j = -1;
- for ( i=segcnt=0; i<65536; ++i ) {
- if ( avail[i]!=0xffffffff && j==-1 ) {
- j=i;
- ++segcnt;
- } else if ( j!=-1 && avail[i]==0xffffffff )
- j = -1;
- }
- cmapseg = calloc(segcnt+1,sizeof(struct cmapseg));
- ranges = malloc(cnt*sizeof(int16));
- j = -1;
- for ( i=segcnt=0; i<65536; ++i ) {
- if ( avail[i]!=0xffffffff && j==-1 ) {
- j=i;
- cmapseg[segcnt].start = j;
- ++segcnt;
- } else if ( j!=-1 && avail[i]==0xffffffff ) {
- cmapseg[segcnt-1].end = i-1;
- j = -1;
- }
- }
- if ( j!=-1 )
- cmapseg[segcnt-1].end = i-1;
- /* create a dummy segment to mark the end of the table */
- cmapseg[segcnt].start = cmapseg[segcnt].end = 0xffff;
- cmapseg[segcnt++].delta = 1;
- rpos = 0;
- for ( i=0; i<segcnt-1; ++i ) {
- l = avail[cmapseg[i].start];
- sc = sf->glyphs[l];
- delta = sc->ttf_glyph-cmapseg[i].start;
- for ( j=cmapseg[i].start; j<=cmapseg[i].end; ++j ) {
- l = avail[j];
- sc = sf->glyphs[l];
- if ( delta != sc->ttf_glyph-j )
- break;
- }
- if ( j>cmapseg[i].end )
- cmapseg[i].delta = delta;
- else {
- cmapseg[i].rangeoff = (rpos + (segcnt-i)) * sizeof(int16);
- for ( j=cmapseg[i].start; j<=cmapseg[i].end; ++j ) {
- l = avail[j];
- sc = sf->glyphs[l];
- ranges[rpos++] = sc->ttf_glyph;
- }
- }
- }
- free(avail);
-
-
- putshort(format4,4); /* format */
- putshort(format4,(8+4*segcnt+rpos)*sizeof(int16));
- putshort(format4,0); /* language/version */
- putshort(format4,2*segcnt); /* segcnt */
- for ( j=0,i=1; i<=segcnt; i<<=1, ++j );
- putshort(format4,i); /* 2*2^floor(log2(segcnt)) */
- putshort(format4,j-1);
- putshort(format4,2*segcnt-i);
- for ( i=0; i<segcnt; ++i )
- putshort(format4,cmapseg[i].end);
- putshort(format4,0);
- for ( i=0; i<segcnt; ++i )
- putshort(format4,cmapseg[i].start);
- for ( i=0; i<segcnt; ++i )
- putshort(format4,cmapseg[i].delta);
- for ( i=0; i<segcnt; ++i )
- putshort(format4,cmapseg[i].rangeoff);
- for ( i=0; i<rpos; ++i )
- putshort(format4,ranges[i]);
- free(ranges);
- free(cmapseg);
- *ucs2len = ftell(format4);
-return( format4 );
-}
-
-static FILE *NeedsVariationSequenceTable(SplineFont *sf,int *vslen) {
- /* Do we need a format 14 (unicode variation sequence) subtable? */
- int gid, vs_cnt=0, vs_max=512, i, j, k, cnt, mingid, maxgid;
- struct altuni *altuni, *au;
- int32 vsbuf[512], *vses = vsbuf;
- FILE *format14;
- uint32 *avail = NULL;
- enum vs_type {vs_default=(1<<24), vs_nondefault=(2<<24) };
- SplineChar *sc;
- uint32 here;
- int any;
-
- mingid = maxgid = -1;
- for ( gid=0; gid<sf->glyphcnt; ++gid ) if ( (sc = sf->glyphs[gid])!=NULL ) {
- for ( altuni = sc->altuni; altuni!=NULL; altuni=altuni->next ) {
- if ( altuni->unienc!=-1 && (uint32)altuni->unienc<unicode4_size &&
- altuni->vs!=-1 && altuni->fid==0 ) {
- for ( i=0; i<vs_cnt; ++i )
- if ( vses[i]==altuni->vs )
- break;
- if ( i>=vs_cnt ) {
- if ( i>=vs_max ) {
- if ( vses==vsbuf ) {
- vses = malloc((vs_max*=2)*sizeof(uint32));
- memcpy(vses,vsbuf,sizeof(vsbuf));
- } else
- vses = realloc(vses,(vs_max+=512)*sizeof(uint32));
- }
- vses[vs_cnt++] = altuni->vs;
- }
- if ( mingid==-1 )
- mingid = maxgid = gid;
- else
- maxgid = gid;
- }
- }
- }
- if ( vs_cnt==0 ) {
- *vslen = 0;
-return( NULL ); /* No variation selectors */
- }
-
- /* Sort the variation selectors */
- for ( i=0; i<vs_cnt; ++i ) for ( j=i+1; j<vs_cnt; ++j ) {
- if ( vses[i]>vses[j] ) {
- int temp = vses[i];
- vses[i] = vses[j];
- vses[j] = temp;
- }
- }
-
- avail = malloc(unicode4_size*sizeof(uint32));
-
- format14 = tmpfile2();
- putshort(format14,14);
- putlong(format14,0); /* Length, fixup later */
- putlong(format14,vs_cnt); /* number of selectors */
-
- /* Variation selector records */
- for ( i=0; i<vs_cnt; ++i ) {
- putu24(format14,vses[i]);
- putlong(format14,0);
- putlong(format14,0);
- }
-
- for ( i=0; i<vs_cnt; ++i ) {
- memset(avail,0,unicode4_size*sizeof(uint32));
- any = 0;
- for ( gid=mingid; gid<=maxgid; ++gid ) if ( (sc=sf->glyphs[gid])!=NULL ) {
- for ( altuni = sc->altuni; altuni!=NULL; altuni=altuni->next ) {
- if ( altuni->unienc!=-1 && altuni->unienc < (int)unicode4_size &&
- altuni->vs==vses[i] && altuni->fid==0 ) {
- for ( au=sc->altuni; au!=NULL; au=au->next )
- if ( au->unienc==altuni->unienc && au->vs==-1 && au->fid==0 )
- break;
- if ( altuni->unienc==sc->unicodeenc || au!=NULL ) {
- avail[altuni->unienc] = gid | vs_default;
- any |= vs_default;
- } else {
- avail[altuni->unienc] = gid | vs_nondefault;
- any |= vs_nondefault;
- }
- }
- }
- }
- if ( any&vs_default ) {
- here = ftell(format14);
- fseek(format14,10+ i*11 + 3, SEEK_SET); /* Seek to defaultUVSOffset */
- putlong(format14,here);
- fseek(format14,0,SEEK_END);
- cnt = 0;
- for ( j=0; (unsigned)j<unicode4_size; ++j ) if ( avail[j]&vs_default ) {
- for ( k=j+1; (unsigned)k<unicode4_size && (avail[k]&vs_default); ++k );
- if ( k-j>256 ) k=j+256; /* Each range is limited to 255 code points, as the count is a byte */
- ++cnt;
- j = k-1;
- }
- putlong(format14,cnt);
- for ( j=0; (unsigned)j<unicode4_size; ++j ) if ( avail[j]&vs_default ) {
- for ( k=j+1; (unsigned)k<unicode4_size && (avail[k]&vs_default); ++k );
- if ( k-j>256 ) k=j+256;
- putu24(format14,j);
- putc(k-j-1,format14);
- j = k-1;
- }
- }
- if ( any&vs_nondefault ) {
- here = ftell(format14);
- fseek(format14,10+ i*11 + 7, SEEK_SET); /* Seek to nonDefaultUVSOffset */
- putlong(format14,here);
- fseek(format14,0,SEEK_END);
- cnt = 0;
- for ( j=0; (unsigned)j<unicode4_size; ++j ) if ( avail[j]&vs_nondefault )
- ++cnt;
- putlong(format14,cnt);
- for ( j=0; (unsigned)j<unicode4_size; ++j ) if ( avail[j]&vs_nondefault ) {
- putu24(format14,j);
- putshort(format14,sf->glyphs[avail[j]&0xffff]->ttf_glyph);
- }
- }
- }
-
- here = ftell(format14);
- fseek(format14,2,SEEK_SET);
- putlong(format14,here);
- fseek(format14,0,SEEK_END);
- if ( here&1 ) {
- putc('\0',format14);
- ++here;
- }
- if ( here&2 ) {
- putshort(format14,0);
- here += 2;
- }
- *vslen = here;
-
- free(avail);
- if ( vses!=vsbuf )
- free(vses);
-
-return( format14 );
-}
-
-extern unichar_t MacRomanEnc[];
-static void dumpcmap(struct alltabs *at, SplineFont *sf,enum fontformat format) {
- int i,enccnt, issmall, hasmac;
- uint16 table[256];
- SplineChar *sc;
- int alreadyprivate = false;
- int wasotf = format==ff_otf || format==ff_otfcid;
- EncMap *map = at->map;
- int ucs4len=0, ucs2len=0, cjklen=0, applecjklen=0, vslen=0;
- FILE *format12, *format4, *format2, *apple2, *format14;
- int mspos, ucs4pos, cjkpos, applecjkpos, vspos, start_of_macroman;
- int modformat = format;
-
- if (( format>=ff_ttf && format<=ff_otfdfont) && (at->gi.flags&ttf_flag_symbol))
- modformat = ff_ttfsym;
-
- at->cmap = tmpfile2();
-
- /* MacRoman encoding table */ /* Not going to bother with making this work for cid fonts */
- /* I now see that Apple doesn't restrict us to format 0 sub-tables (as */
- /* the docs imply) but instead also uses format 6 tables. Wildly in- */
- /* appropriate as they are for 2byte encodings, but Apple uses them */
- /* for one byte ones too */
- memset(table,'\0',sizeof(table));
- if ( !wasotf ) {
- table[29] = table[8] = table[0] = 1;
- table[9] = table[13] = 2;
- }
- for ( i=0; i<256 ; ++i ) {
- sc = SFGetChar(sf,MacRomanEnc[i],NULL);
- if ( sc!=NULL && sc->ttf_glyph!=-1 )
- table[i] = sc->ttf_glyph;
- }
- if ( table[0]==0 ) table[0] = 1;
-
- if ( modformat==ff_ttfsym ) {
- alreadyprivate = AlreadyMSSymbolArea(sf,map);
- memset(table,'\0',sizeof(table));
- if ( !wasotf ) {
- table[29] = table[8] = table[0] = 1;
- table[9] = table[13] = 2;
- }
- if ( !alreadyprivate ) {
- for ( i=0; i<map->enccount && i<256; ++i ) {
- if ( map->map[i]!=-1 && (sc = sf->glyphs[map->map[i]])!=NULL &&
- sc->ttf_glyph!=-1 )
- table[i] = sc->ttf_glyph;
- }
- for ( i=0xf020; i<=0xf0ff && i<sf->glyphcnt; ++i ) {
- if ( map->map[i]!=-1 && (sc = sf->glyphs[map->map[i]])!=NULL &&
- sc->ttf_glyph!=-1 && table[i-0xf000]==0 )
- table[i-0xf000] = sc->ttf_glyph;
- }
- } else {
- for ( i=0xf020; i<=0xf0ff && i<sf->glyphcnt; ++i ) {
- if ( map->map[i]!=-1 && (sc = sf->glyphs[map->map[i]])!=NULL &&
- sc->ttf_glyph!=-1 )
- table[i-0xf000] = sc->ttf_glyph;
- }
- for ( i=0; i<map->enccount && i<256; ++i ) {
- if ( map->map[i]!=-1 && (sc = sf->glyphs[map->map[i]])!=NULL &&
- sc->ttf_glyph!=-1 && table[i]==0 )
- table[i] = sc->ttf_glyph;
- }
- }
- /* if the user has read in a ttf symbol file then it will already have */
- /* the right private use encoding, and we don't want to mess it up. */
- /* The alreadyprivate flag should detect this case */
- if ( !alreadyprivate ) {
- for ( i=0; i<map->enccount && i<256; ++i ) {
- if ( map->map[i]!=-1 && (sc = sf->glyphs[map->map[i]])!=NULL ) {
- sc->orig_pos = sc->unicodeenc;
- sc->unicodeenc = 0xf000 + i;
- }
- }
- for ( ; i<map->enccount; ++i ) {
- if ( map->map[i]!=-1 && (sc = sf->glyphs[map->map[i]])!=NULL ) {
- sc->orig_pos = sc->unicodeenc;
- sc->unicodeenc = -1;
- }
- }
- }
- }
-
- format4 = NeedsUCS2Table(sf,&ucs2len,map,modformat==ff_ttfsym);
- apple2 = NULL;
- if ( modformat!=ff_ttfsym ) {
- format12 = NeedsUCS4Table(sf,&ucs4len,map);
- format2 = Needs816Enc(sf,&cjklen,map,&apple2,&applecjklen);
- format14 = NeedsVariationSequenceTable(sf,&vslen);
- } else
- format12 = format2 = format14 = apple2 = NULL;
-
- /* Two/Three/Four encoding table pointers, one for ms, one for mac */
- /* usually one for mac big, just a copy of ms */
- /* plus we may have a format12 encoding for ucs4, mac doesn't support */
- /* plus we may have a format2 encoding for cjk, sometimes I know the codes for the mac... */
- /* sometimes the mac will have a slightly different cjk table */
- /* Sometimes we want a variation sequence subtable (format=14) for */
- /* unicode platform */
- if ( modformat==ff_ttfsym ) {
- enccnt = 2;
- hasmac = 0;
- } else {
- hasmac = 1;
- enccnt = 3;
- if ( format12!=NULL )
- enccnt = 5;
- if ( format2!=NULL ) {
- if ( strstrmatch(map->enc->enc_name,"johab")!=NULL ) {
- ++enccnt;
- } else {
- enccnt+=2;
- hasmac=3;
- }
- }
- if ( format14!=NULL )
- ++enccnt;
- }
-
- putshort(at->cmap,0); /* version */
- putshort(at->cmap,enccnt); /* num tables */
-
- mspos = 2*sizeof(uint16)+enccnt*(2*sizeof(uint16)+sizeof(uint32));
- ucs4pos = mspos+ucs2len;
- cjkpos = ucs4pos+ucs4len;
- if ( apple2==NULL ) {
- applecjkpos = cjkpos;
- applecjklen = cjklen;
- } else
- applecjkpos = cjkpos + cjklen;
- /* applecjklen set above */
- vspos = applecjkpos + applecjklen;
- start_of_macroman = vspos + vslen;
-
- if ( hasmac&1 ) {
- /* big mac table, just a copy of the ms table */
- putshort(at->cmap,0); /* mac unicode platform */
- putshort(at->cmap,3); /* Unicode 2.0 */
- putlong(at->cmap,mspos);
- }
- if ( format12!=NULL ) {
- /* full unicode mac table, just a copy of the ms table */
- putshort(at->cmap,0); /* mac unicode platform */
- if( map->enc->is_unicodefull ) {
- putshort(at->cmap,10); /* Unicode 2.0, unicode beyond BMP */
- } else {
- putshort(at->cmap,4); /* Unicode 2.0, unicode BMP */
- }
- putlong(at->cmap,ucs4pos);
- }
- if ( format14!=NULL ) {
- /* variation sequence subtable. Only for platform 0. */
- putshort(at->cmap,0); /* mac unicode platform */
- putshort(at->cmap,5); /* Variation sequence table */
- putlong(at->cmap,vspos);
- }
- putshort(at->cmap,1); /* mac platform */
- putshort(at->cmap,0); /* plat specific enc, script=roman */
- /* Even the symbol font on the mac claims a mac roman encoding */
- /* although it actually contains a symbol encoding. There is an*/
- /* "RSymbol" language listed for Mac (specific=8) but it isn't used*/
- putlong(at->cmap,start_of_macroman); /* offset from tab start to sub tab start */
- if ( format2!=NULL && (hasmac&2) ) {
- /* mac cjk table, often a copy of the ms table */
- putshort(at->cmap,1); /* mac platform */
- putshort(at->cmap,
- map->enc->is_japanese || sf->uni_interp==ui_japanese ? 1 : /* SJIS */
- map->enc->is_korean || sf->uni_interp==ui_korean ? 3 : /* Korean */
- map->enc->is_simplechinese || sf->uni_interp==ui_simp_chinese ? 25 :/* Simplified Chinese */
- 2 ); /* Big5 */
- putlong(at->cmap,applecjkpos);
- }
-
- putshort(at->cmap,3); /* ms platform */
- putshort(at->cmap, /* plat specific enc */
- modformat==ff_ttfsym ? 0 : /* Symbol */
- 1 ); /* Unicode */
- putlong(at->cmap,mspos); /* offset from tab start to sub tab start */
-
- if ( format2!=NULL ) {
- putshort(at->cmap,3); /* ms platform */
- putshort(at->cmap, /* plat specific enc */
- strstrmatch(map->enc->enc_name,"johab")!=NULL ? 6 :
- map->enc->is_korean || sf->uni_interp==ui_korean ? 5 :
- map->enc->is_japanese || sf->uni_interp==ui_japanese ? 2 :
- map->enc->is_simplechinese || sf->uni_interp==ui_simp_chinese ? 3 :
- 4); /* Big5 */
- putlong(at->cmap,cjkpos); /* offset from tab start to sub tab start */
- }
-
- if ( format12!=NULL ) {
- putshort(at->cmap,3); /* ms platform */
- putshort(at->cmap,10); /* plat specific enc, ucs4 */
- putlong(at->cmap,ucs4pos); /* offset from tab start to sub tab start */
- }
- if ( format4!=NULL ) {
- if ( !ttfcopyfile(at->cmap,format4,mspos,"cmap-Unicode16")) at->error = true;
- }
- if ( format12!=NULL ) {
- if ( !ttfcopyfile(at->cmap,format12,ucs4pos,"cmap-Unicode32")) at->error = true;
- }
- if ( format2!=NULL ) {
- if ( !ttfcopyfile(at->cmap,format2,cjkpos,"cmap-cjk")) at->error = true;
- }
- if ( apple2!=NULL ) {
- if ( !ttfcopyfile(at->cmap,apple2,applecjkpos,"cmap-applecjk")) at->error = true;
- }
- if ( format14!=NULL ) {
- if ( !ttfcopyfile(at->cmap,format14,vspos,"cmap-uniVariations")) at->error = true;
- }
-
- /* Mac table */
- issmall = true;
- for ( i=0; i<256; ++i )
- if ( table[i]>=256 ) {
- issmall = false;
- break;
- }
- if ( issmall ) {
- putshort(at->cmap,0); /* format */
- putshort(at->cmap,262); /* length = 256bytes + 6 header bytes */
- putshort(at->cmap,0); /* language = english */
- for ( i=0; i<256; ++i )
- putc(table[i],at->cmap);
- } else {
- putshort(at->cmap,6); /* format 6 */
- putshort(at->cmap,522); /* length = 256short +10 header bytes */
- putshort(at->cmap,0); /* language = english */
- putshort(at->cmap,0); /* first code */
- putshort(at->cmap,256); /* entry count */
- for ( i=0; i<256; ++i )
- putshort(at->cmap,table[i]);
- }
-
- at->cmaplen = ftell(at->cmap);
- if ( (at->cmaplen&2)!=0 )
- putshort(at->cmap,0);
-
- if ( modformat==ff_ttfsym ) {
- if ( !alreadyprivate ) {
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- sf->glyphs[i]->unicodeenc = sf->glyphs[i]->orig_pos;
- sf->glyphs[i]->orig_pos = i;
- }
- }
- }
-}
-
-int32 filechecksum(FILE *file) {
- uint32 sum = 0, chunk;
-
- rewind(file);
- while ( 1 ) {
- chunk = getuint32(file);
- if ( feof(file) || ferror(file))
- break;
- sum += chunk;
- }
-return( sum );
-}
-
-static void AbortTTF(struct alltabs *at, SplineFont *sf) {
- int i;
-
- if ( at->loca!=NULL )
- fclose(at->loca);
- if ( at->name!=NULL )
- fclose(at->name);
- if ( at->post!=NULL )
- fclose(at->post);
- if ( at->gpos!=NULL )
- fclose(at->gpos);
- if ( at->gsub!=NULL )
- fclose(at->gsub);
- if ( at->gdef!=NULL )
- fclose(at->gdef);
- if ( at->kern!=NULL )
- fclose(at->kern);
- if ( at->cmap!=NULL )
- fclose(at->cmap);
- if ( at->headf!=NULL )
- fclose(at->headf);
- if ( at->hheadf!=NULL )
- fclose(at->hheadf);
- if ( at->maxpf!=NULL )
- fclose(at->maxpf);
- if ( at->os2f!=NULL )
- fclose(at->os2f);
- if ( at->cvtf!=NULL )
- fclose(at->cvtf);
- if ( at->vheadf!=NULL )
- fclose(at->vheadf);
- if ( at->vorgf!=NULL )
- fclose(at->vorgf);
- if ( at->cfff!=NULL )
- fclose(at->cfff);
-
- if ( at->gi.glyphs!=NULL )
- fclose(at->gi.glyphs);
- if ( at->gi.hmtx!=NULL )
- fclose(at->gi.hmtx);
- if ( at->gi.vmtx!=NULL )
- fclose(at->gi.vmtx);
- if ( at->fpgmf!=NULL )
- fclose(at->fpgmf);
- if ( at->prepf!=NULL )
- fclose(at->prepf);
- if ( at->gaspf!=NULL )
- fclose(at->gaspf);
-
- if ( at->sidf!=NULL )
- fclose(at->sidf);
- if ( at->sidh!=NULL )
- fclose(at->sidh);
- if ( at->charset!=NULL )
- fclose(at->charset);
- if ( at->encoding!=NULL )
- fclose(at->encoding);
- if ( at->private!=NULL )
- fclose(at->private);
- if ( at->charstrings!=NULL )
- fclose(at->charstrings);
- if ( at->fdselect!=NULL )
- fclose(at->fdselect);
- if ( at->fdarray!=NULL )
- fclose(at->fdarray);
- if ( at->bdat!=NULL )
- fclose(at->bdat);
- if ( at->bloc!=NULL )
- fclose(at->bloc);
- if ( at->ebsc!=NULL )
- fclose(at->ebsc);
-
- if ( at->prop!=NULL )
- fclose(at->prop);
- if ( at->opbd!=NULL )
- fclose(at->opbd);
- if ( at->acnt!=NULL )
- fclose(at->acnt);
- if ( at->lcar!=NULL )
- fclose(at->lcar);
- if ( at->feat!=NULL )
- fclose(at->feat);
- if ( at->morx!=NULL )
- fclose(at->morx);
-
- if ( at->pfed!=NULL )
- fclose(at->pfed);
- if ( at->tex!=NULL )
- fclose(at->tex);
-
- if ( at->gvar!=NULL )
- fclose(at->gvar);
- if ( at->fvar!=NULL )
- fclose(at->fvar);
- if ( at->cvar!=NULL )
- fclose(at->cvar);
- if ( at->avar!=NULL )
- fclose(at->avar);
-
- for ( i=0; i<sf->subfontcnt; ++i ) {
- if ( at->fds[i].private!=NULL )
- fclose(at->fds[i].private);
- }
- if ( sf->subfontcnt!=0 ) {
- free(sf->glyphs);
- sf->glyphs = NULL;
- sf->glyphcnt = sf->glyphmax = 0;
- }
- free( at->fds );
- free( at->gi.bygid );
-}
-
-int SFHasInstructions(SplineFont *sf) {
- int i;
-
- if ( sf->mm!=NULL && sf->mm->apple )
- sf = sf->mm->normal;
-
- if ( sf->subfontcnt!=0 )
-return( false ); /* Truetype doesn't support cid keyed fonts */
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL ) {
- if ( strcmp(sf->glyphs[i]->name,".notdef")==0 )
- continue; /* ff produces fonts with instructions in .notdef & not elsewhere. Ignore these */
- if ( sf->glyphs[i]->ttf_instrs!=NULL )
-return( true );
- }
-return( false );
-}
-
-static void MaxpFromTable(struct alltabs *at,SplineFont *sf) {
- struct ttf_table *maxp;
-
- maxp = SFFindTable(sf,CHR('m','a','x','p'));
- if ( maxp==NULL && sf->mm!=NULL && sf->mm->apple )
- maxp = SFFindTable(sf->mm->normal,CHR('m','a','x','p'));
- if ( maxp==NULL || maxp->len<13*sizeof(uint16) )
-return;
- /* We can figure out the others ourselves, but these depend on the contents */
- /* of uninterpretted tables */
- at->maxp.maxZones = memushort(maxp->data,maxp->len, 7*sizeof(uint16));
- at->maxp.maxTwilightPts = memushort(maxp->data,maxp->len, 8*sizeof(uint16));
- at->maxp.maxStorage = memushort(maxp->data,maxp->len, 9*sizeof(uint16));
- at->maxp.maxFDEFs = memushort(maxp->data,maxp->len, 10*sizeof(uint16));
- at->maxp.maxIDEFs = memushort(maxp->data,maxp->len, 11*sizeof(uint16));
- at->maxp.maxStack = memushort(maxp->data,maxp->len, 12*sizeof(uint16));
-}
-
-static FILE *dumpstoredtable(SplineFont *sf,uint32 tag,int *len) {
- struct ttf_table *tab = SFFindTable(sf,tag);
- FILE *out;
-
- if ( tab==NULL && sf->mm!=NULL && sf->mm->apple )
- tab = SFFindTable(sf->mm->normal,tag);
- if ( tab==NULL ) {
- *len = 0;
-return( NULL );
- }
-
- out = tmpfile2();
- fwrite(tab->data,1,tab->len,out);
- if ( (tab->len&1))
- putc('\0',out);
- if ( (tab->len+1)&2 )
- putshort(out,0);
- *len = tab->len;
-return( out );
-}
-
-static FILE *dumpsavedtable(struct ttf_table *tab) {
- FILE *out;
-
- if ( tab==NULL )
-return( NULL );
-
- out = tmpfile2();
- fwrite(tab->data,1,tab->len,out);
- if ( (tab->len&1))
- putc('\0',out);
- if ( (tab->len+1)&2 )
- putshort(out,0);
-return( out );
-}
-
-static int tagcomp(const void *_t1, const void *_t2) {
- struct taboff *t1 = *((struct taboff **) _t1), *t2 = *((struct taboff **) _t2);
-return( (int) (t1->tag - t2->tag) );
-}
-
-static int tcomp(const void *_t1, const void *_t2) {
- struct taboff *t1 = *((struct taboff **) _t1), *t2 = *((struct taboff **) _t2);
-return( t1->orderingval - t2->orderingval );
-}
-
-static void ATmaxpInit(struct alltabs *at,SplineFont *sf, enum fontformat format) {
-
- at->maxp.version = 0x00010000;
- if ( format==ff_otf || format==ff_otfcid || (format==ff_none && at->applemode) )
- at->maxp.version = 0x00005000;
- at->maxp.maxnumcomponents = 0;
- at->maxp.maxcomponentdepth = 0;
- at->maxp.maxZones = 2; /* 1 would probably do, don't use twilight */
- at->maxp.maxFDEFs = 1; /* Not even 1 */
- at->maxp.maxStorage = 1; /* Not even 1 */
- at->maxp.maxStack = 64; /* A guess, it's probably more like 8 */
- if ( format==ff_otf || format==ff_otfcid || (format==ff_none && at->applemode) )
- at->maxp.version = 0x00005000;
- else
- MaxpFromTable(at,sf);
- at->gi.maxp = &at->maxp;
-}
-
-static void initATTables(struct alltabs *at, SplineFont *sf, enum fontformat format) {
- setos2(&at->os2,at,sf,format); /* should precede kern/ligature output */
- if ( at->opentypemode ) {
- SFFindUnusedLookups(sf);
- otf_dumpgpos(at,sf);
- otf_dumpgsub(at,sf);
- otf_dumpgdef(at,sf);
- otf_dumpjstf(at,sf);
- otf_dumpbase(at,sf);
- otf_dump_math(at,sf); /* Not strictly OpenType yet */
- if ( at->gi.flags & ttf_flag_dummyDSIG )
- otf_dump_dummydsig(at,sf);
- }
- if ( at->dovariations )
- ttf_dumpvariations(at,sf);
- if ( at->applemode ) {
- if ( !at->opentypemode )
- SFFindUnusedLookups(sf);
- ttf_dumpkerns(at,sf);
- aat_dumplcar(at,sf);
- aat_dumpmorx(at,sf); /* Sets the feat table too */
- aat_dumpopbd(at,sf);
- aat_dumpprop(at,sf);
- aat_dumpbsln(at,sf);
- }
- if ( !at->applemode && (!at->opentypemode || (at->gi.flags&ttf_flag_oldkern)) )
- ttf_dumpkerns(at,sf); /* everybody supports a mimimal kern table */
-
- dumpnames(at,sf,format); /* Must be after dumpmorx which may create extra names */
- /* GPOS 'size' can also create names (so must be after that too) */
- redoos2(at);
-}
-
-static struct taboff *findtabindir(struct tabdir *td, uint32 tag ) {
- int i;
-
- for ( i=0; i<td->numtab; ++i )
- if ( td->tabs[i].tag == tag )
-return( &td->tabs[i] );
-
-return( NULL );
-}
-
-static void buildtablestructures(struct alltabs *at, SplineFont *sf,
- enum fontformat format) {
- int i;
- int ebdtpos, eblcpos;
- struct ttf_table *tab;
-
- if ( format==ff_otf || format==ff_otfcid ) {
- at->tabdir.version = CHR('O','T','T','O');
-#ifdef FONTFORGE_CONFIG_APPLE_ONLY_TTF /* This means that Windows will reject the font. In general not a good idea */
- } else if ( at->applemode && !at->opentypemode ) {
- at->tabdir.version = CHR('t','r','u','e');
-#endif
- } else {
- at->tabdir.version = 0x00010000;
- }
-
- i = 0;
-
- if ( at->base!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('B','A','S','E');
- at->tabdir.tabs[i].data = at->base;
- at->tabdir.tabs[i++].length = at->baselen;
- }
-
- if ( at->bsln!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('b','s','l','n');
- at->tabdir.tabs[i].data = at->bsln;
- at->tabdir.tabs[i++].length = at->bslnlen;
- }
-
- if ( at->bdf!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('B','D','F',' ');
- at->tabdir.tabs[i].data = at->bdf;
- at->tabdir.tabs[i++].length = at->bdflen;
- }
-
- if ( format==ff_otf || format==ff_otfcid ) {
- at->tabdir.tabs[i].tag = CHR('C','F','F',' ');
- at->tabdir.tabs[i].length = at->cfflen;
- at->tabdir.tabs[i++].data = at->cfff;
- }
-
- if ( at->dsigf!=NULL ) {
- ebdtpos = i;
- at->tabdir.tabs[i].tag = CHR('D','S','I','G');
- at->tabdir.tabs[i].length = at->dsiglen;
- at->tabdir.tabs[i++].data = at->dsigf;
- }
-
- if ( at->bdat!=NULL && (at->msbitmaps || at->otbbitmaps)) {
- ebdtpos = i;
- at->tabdir.tabs[i].tag = CHR('E','B','D','T');
- at->tabdir.tabs[i].length = at->bdatlen;
- at->tabdir.tabs[i++].data = at->bdat;
- }
-
- if ( at->bloc!=NULL && (at->msbitmaps || at->otbbitmaps)) {
- eblcpos = i;
- at->tabdir.tabs[i].tag = CHR('E','B','L','C');
- at->tabdir.tabs[i].data = at->bloc;
- at->tabdir.tabs[i++].length = at->bloclen;
- }
-
- if ( at->ebsc!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('E','B','S','C');
- at->tabdir.tabs[i].data = at->ebsc;
- at->tabdir.tabs[i++].length = at->ebsclen;
- }
-
- if ( at->fftmf!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('F','F','T','M');
- at->tabdir.tabs[i].data = at->fftmf;
- at->tabdir.tabs[i++].length = at->fftmlen;
- }
-
- if ( at->gdef!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('G','D','E','F');
- at->tabdir.tabs[i].data = at->gdef;
- at->tabdir.tabs[i++].length = at->gdeflen;
- }
-
- if ( at->gpos!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('G','P','O','S');
- at->tabdir.tabs[i].data = at->gpos;
- at->tabdir.tabs[i++].length = at->gposlen;
- }
-
- if ( at->gsub!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('G','S','U','B');
- at->tabdir.tabs[i].data = at->gsub;
- at->tabdir.tabs[i++].length = at->gsublen;
- }
-
- if ( at->jstf!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('J','S','T','F');
- at->tabdir.tabs[i].data = at->jstf;
- at->tabdir.tabs[i++].length = at->jstflen;
- }
-
- if ( at->os2f!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('O','S','/','2');
- at->tabdir.tabs[i].data = at->os2f;
- at->tabdir.tabs[i++].length = at->os2len;
- }
-
- if ( at->pfed!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('P','f','E','d');
- at->tabdir.tabs[i].data = at->pfed;
- at->tabdir.tabs[i++].length = at->pfedlen;
- }
-
- if ( at->tex!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('T','e','X',' ');
- at->tabdir.tabs[i].data = at->tex;
- at->tabdir.tabs[i++].length = at->texlen;
- }
-
- if ( at->math!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('M','A','T','H');
- at->tabdir.tabs[i].data = at->math;
- at->tabdir.tabs[i++].length = at->mathlen;
- }
-
- if ( at->vorgf!=NULL ) { /* No longer generated */
- at->tabdir.tabs[i].tag = CHR('V','O','R','G');
- at->tabdir.tabs[i].data = at->vorgf;
- at->tabdir.tabs[i++].length = at->vorglen;
- }
-
- if ( at->acnt!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('a','c','n','t');
- at->tabdir.tabs[i].data = at->acnt;
- at->tabdir.tabs[i++].length = at->acntlen;
- }
-
- if ( at->bdat!=NULL && at->applebitmaps ) {
- at->tabdir.tabs[i].tag = CHR('b','d','a','t');
- if ( !at->msbitmaps ) {
- at->tabdir.tabs[i].data = at->bdat;
- at->tabdir.tabs[i++].length = at->bdatlen;
- } else {
- at->tabdir.tabs[i].data = NULL;
- at->tabdir.tabs[i].dup_of = ebdtpos;
- at->tabdir.tabs[i++].length = at->tabdir.tabs[ebdtpos].length;
- }
- }
-
- if ( format==ff_none && at->applebitmaps ) {
- /* Bitmap only fonts get a bhed table rather than a head */
- at->tabdir.tabs[i].tag = CHR('b','h','e','d');
- at->tabdir.tabs[i].data = at->headf;
- at->tabdir.tabs[i++].length = at->headlen;
- }
-
- if ( at->bloc!=NULL && at->applebitmaps ) {
- at->tabdir.tabs[i].tag = CHR('b','l','o','c');
- if ( !at->msbitmaps ) {
- at->tabdir.tabs[i].data = at->bloc;
- at->tabdir.tabs[i++].length = at->bloclen;
- } else {
- at->tabdir.tabs[i].data = NULL;
- at->tabdir.tabs[i].dup_of = eblcpos;
- at->tabdir.tabs[i++].length = at->tabdir.tabs[eblcpos].length;
- }
- }
-
- if ( at->cmap!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('c','m','a','p');
- at->tabdir.tabs[i].data = at->cmap;
- at->tabdir.tabs[i++].length = at->cmaplen;
- }
-
- if ( format!=ff_otf && format!=ff_otfcid && format!=ff_none ) {
- if ( at->cvtf!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('c','v','t',' ');
- at->tabdir.tabs[i].data = at->cvtf;
- at->tabdir.tabs[i++].length = at->cvtlen;
- }
- }
-
- if ( at->feat!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('f','e','a','t');
- at->tabdir.tabs[i].data = at->feat;
- at->tabdir.tabs[i++].length = at->featlen;
- }
-
- if ( at->fpgmf!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('f','p','g','m');
- at->tabdir.tabs[i].data = at->fpgmf;
- at->tabdir.tabs[i++].length = at->fpgmlen;
- }
-
- if ( at->gaspf!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('g','a','s','p');
- at->tabdir.tabs[i].data = at->gaspf;
- at->tabdir.tabs[i++].length = at->gasplen;
- }
-
- if ( at->gi.glyphs!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('g','l','y','f');
- at->tabdir.tabs[i].data = at->gi.glyphs;
- at->tabdir.tabs[i++].length = at->gi.glyph_len;
- }
-
- if ( at->hdmxf!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('h','d','m','x');
- at->tabdir.tabs[i].data = at->hdmxf;
- at->tabdir.tabs[i++].length = at->hdmxlen;
- }
-
- if ( format!=ff_none || !at->applebitmaps ) {
- at->tabdir.tabs[i].tag = CHR('h','e','a','d');
- at->tabdir.tabs[i].data = at->headf;
- at->tabdir.tabs[i++].length = at->headlen;
- }
-
- if ( format!=ff_none || !at->applemode ) {
- at->tabdir.tabs[i].tag = CHR('h','h','e','a');
- at->tabdir.tabs[i].data = at->hheadf;
- at->tabdir.tabs[i++].length = at->hheadlen;
- } else if ( at->hheadf!=NULL ) {
- fclose(at->hheadf);
- at->hheadf = NULL;
- }
-
- if ( format!=ff_none || !at->applemode ) {
- at->tabdir.tabs[i].tag = CHR('h','m','t','x');
- at->tabdir.tabs[i].data = at->gi.hmtx;
- at->tabdir.tabs[i++].length = at->gi.hmtxlen;
- }
-
- if ( at->kern!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('k','e','r','n');
- at->tabdir.tabs[i].data = at->kern;
- at->tabdir.tabs[i++].length = at->kernlen;
- }
-
- if ( at->lcar!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('l','c','a','r');
- at->tabdir.tabs[i].data = at->lcar;
- at->tabdir.tabs[i++].length = at->lcarlen;
- }
-
- if ( at->loca!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('l','o','c','a');
- at->tabdir.tabs[i].data = at->loca;
- at->tabdir.tabs[i++].length = at->localen;
- }
-
- at->tabdir.tabs[i].tag = CHR('m','a','x','p');
- at->tabdir.tabs[i].data = at->maxpf;
- at->tabdir.tabs[i++].length = at->maxplen;
-
- if ( at->morx!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('m','o','r','x');
- at->tabdir.tabs[i].data = at->morx;
- at->tabdir.tabs[i++].length = at->morxlen;
- }
-
- if ( at->name!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('n','a','m','e');
- at->tabdir.tabs[i].data = at->name;
- at->tabdir.tabs[i++].length = at->namelen;
- }
-
- if ( at->opbd!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('o','p','b','d');
- at->tabdir.tabs[i].data = at->opbd;
- at->tabdir.tabs[i++].length = at->opbdlen;
- }
-
- if ( at->post!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('p','o','s','t');
- at->tabdir.tabs[i].data = at->post;
- at->tabdir.tabs[i++].length = at->postlen;
- }
-
- if ( format!=ff_otf && format!=ff_otfcid && format!=ff_none ) {
- if ( at->prepf!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('p','r','e','p');
- at->tabdir.tabs[i].data = at->prepf;
- at->tabdir.tabs[i++].length = at->preplen;
- }
- }
-
- if ( at->prop!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('p','r','o','p');
- at->tabdir.tabs[i].data = at->prop;
- at->tabdir.tabs[i++].length = at->proplen;
- }
-
- if ( at->vheadf!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('v','h','e','a');
- at->tabdir.tabs[i].data = at->vheadf;
- at->tabdir.tabs[i++].length = at->vheadlen;
-
- at->tabdir.tabs[i].tag = CHR('v','m','t','x');
- at->tabdir.tabs[i].data = at->gi.vmtx;
- at->tabdir.tabs[i++].length = at->gi.vmtxlen;
- }
-
- if ( at->fvar!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('f','v','a','r');
- at->tabdir.tabs[i].data = at->fvar;
- at->tabdir.tabs[i++].length = at->fvarlen;
- }
- if ( at->gvar!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('g','v','a','r');
- at->tabdir.tabs[i].data = at->gvar;
- at->tabdir.tabs[i++].length = at->gvarlen;
- }
- if ( at->cvar!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('c','v','a','r');
- at->tabdir.tabs[i].data = at->cvar;
- at->tabdir.tabs[i++].length = at->cvarlen;
- }
- if ( at->avar!=NULL ) {
- at->tabdir.tabs[i].tag = CHR('a','v','a','r');
- at->tabdir.tabs[i].data = at->avar;
- at->tabdir.tabs[i++].length = at->avarlen;
- }
-
- if ( i>=MAX_TAB )
- IError("Miscalculation of number of tables needed. Up sizeof tabs array in struct tabdir in ttf.h" );
-
- for ( tab=sf->ttf_tab_saved; tab!=NULL && i<MAX_TAB; tab=tab->next ) {
- at->tabdir.tabs[i].tag = tab->tag;
- at->tabdir.tabs[i].data = tab->temp;
- at->tabdir.tabs[i++].length = tab->len;
- }
- if ( tab!=NULL )
- IError("Some user supplied tables omitted. Up sizeof tabs array in struct tabdir in ttf.h" );
-
- at->tabdir.numtab = i;
- at->tabdir.searchRange = (i<16?8:i<32?16:i<64?32:64)*16;
- at->tabdir.entrySel = (i<16?3:i<32?4:i<64?5:6);
- at->tabdir.rangeShift = at->tabdir.numtab*16-at->tabdir.searchRange;
-}
-
-static int initTables(struct alltabs *at, SplineFont *sf, enum fontformat format,
- int32 *bsizes, enum bitmapformat bf) {
- int i, aborted, offset;
- struct ttf_table *tab;
-
- if (strmatch(at->map->enc->enc_name, "symbol") == 0 && format == ff_ttf)
- format = ff_ttfsym;
-
- tab = SFFindTable(sf, CHR('c', 'v', 't', ' '));
- if (tab != NULL) {
- at->oldcvt = tab;
- at->oldcvtlen = tab->len;
- }
-
- SFDefaultOS2Info(&sf->pfminfo, sf, sf->fontname);
-
- at->gi.xmin = at->gi.ymin = 15000;
- at->gi.sf = sf;
- bsizes = NULL;
-
- if (sf->subfonts != NULL) {
- SFDummyUpCIDs(&at->gi, sf); /* life is easier if we ignore the separate fonts of a cid keyed fonts and treat it as flat */
- } else if (format != ff_none)
- AssignTTFGlyph(&at->gi, sf, at->map, format == ff_otf);
- else {
- if (bsizes == NULL) {
- ff_post_error(_("No bitmap strikes"), _("No bitmap strikes"));
- AbortTTF(at, sf);
- return ( false);
- }
-// AssignTTFBitGlyph(&at->gi, sf, at->map, bsizes);
- }
- if (at->gi.gcnt > 65535) {
- ff_post_error(_("Too many glyphs"), _("The 'sfnt' format is currently limited to 65535 glyphs, and your font has %d of them."),
- at->gi.gcnt);
- AbortTTF(at, sf);
- return ( false);
- } else if (at->gi.gcnt == 65535) {
- /* GID 65535 is used as a "No Glyph" mark in many places (cmap tables, mac substitutions to delete a glyph */
- LogError(_("Your font has exactly 65535 glyphs. Encoding 65535 is the limit and is often used as a magic \
- value, so it may cause quirks.\n"));
- }
-
-
- ATmaxpInit(at,sf,format);
- if ( format==ff_otf )
- aborted = !dumptype2glyphs(sf,at);
- else if ( format==ff_otfcid )
- aborted = !dumpcidglyphs(sf,at);
- else {
- /* if format==ff_none the following will put out lots of space glyphs */
- aborted = !dumpglyphs(sf,&at->gi);
- }
- if ( aborted ) {
- AbortTTF(at,sf);
-return( false );
- }
-
- sethead(&at->head,sf,at,format,bsizes);
- sethhead(&at->hhead,&at->vhead,at,sf);
- if ( format==ff_none && at->otbbitmaps )
- dummyloca(at);
- else if ( format!=ff_otf && format!=ff_otfcid && bf!=bf_sfnt_dfont &&
- (format!=ff_none || (bsizes!=NULL && !at->applemode && at->opentypemode)) )
- redoloca(at);
- redohead(at);
- if ( format!=ff_none || !at->applemode ) /* No 'hhea' table for apple bitmap-only fonts */
- redohhead(at,false);
- if ( sf->hasvmetrics ) {
- redohhead(at,true);
- }
- ttf_fftm_dump(sf,at);
-
- if ( format!=ff_type42 && format!=ff_type42cid && !sf->internal_temp ) {
- initATTables(at, sf, format);
- }
- redomaxp(at,format);
- if ( format!=ff_otf && format!=ff_otfcid && format!=ff_none ) {
- if (( sf->gasp_cnt!=0 || !SFHasInstructions(sf))
- && format!=ff_type42 && format!=ff_type42cid )
- dumpgasp(at, sf);
- at->fpgmf = dumpstoredtable(sf,CHR('f','p','g','m'),&at->fpgmlen);
- at->prepf = dumpstoredtable(sf,CHR('p','r','e','p'),&at->preplen);
- at->cvtf = dumpstoredtable(sf,CHR('c','v','t',' '),&at->cvtlen);
- }
- for ( tab=sf->ttf_tab_saved; tab!=NULL; tab=tab->next )
- tab->temp = dumpsavedtable(tab);
- if ( format!=ff_type42 && format!=ff_type42cid ) {
- dumppost(at,sf,format);
- dumpcmap(at,sf,format);
-
- pfed_dump(at,sf);
- tex_dump(at,sf);
- }
- if ( sf->subfonts!=NULL ) {
- free(sf->glyphs); sf->glyphs = NULL;
- sf->glyphcnt = sf->glyphmax = 0;
- }
- free( at->gi.bygid );
- at->gi.gcnt = 0;
-
- buildtablestructures(at,sf,format);
- for ( i=0; i<at->tabdir.numtab; ++i ) {
- struct taboff *tab = &at->tabdir.tabs[i];
- at->tabdir.ordered[i] = tab;
- at->tabdir.alpha[i] = tab;
-/* This is the ordering of tables in ARIAL. I've no idea why it makes a */
-/* difference to order them, time to do a seek seems likely to be small, but */
-/* other people make a big thing about ordering them so I'll do it. */
-/* I got bored after glyph. Adobe follows the same scheme for their otf fonts */
-/* so at least the world is consistant */
-/* On the other hand, MS Font validator has a different idea. Oh well */
-/* From: http://partners.adobe.com/asn/tech/type/opentype/recom.jsp */
-/* TrueType Ordering */
-/* head, hhea, maxp, OS/2, hmtx, LTSH, VDMX, hdmx, cmap, fpgm, prep, cvt, */
-/* loca, glyf, kern, name, post, gasp, PCLT, DSIG */
-/* CFF in OpenType Ordering */
-/* head, hhea, maxp, OS/2, name, cmap, post, CFF, (other tables, as convenient) */
- if ( format==ff_otf || format==ff_otfcid ) {
- tab->orderingval = tab->tag==CHR('h','e','a','d')? 1 :
- tab->tag==CHR('h','h','e','a')? 2 :
- tab->tag==CHR('m','a','x','p')? 3 :
- tab->tag==CHR('O','S','/','2')? 4 :
- tab->tag==CHR('n','a','m','e')? 5 :
- tab->tag==CHR('c','m','a','p')? 6 :
- tab->tag==CHR('p','o','s','t')? 7 :
- tab->tag==CHR('C','F','F',' ')? 8 :
- tab->tag==CHR('G','D','E','F')? 17 :
- tab->tag==CHR('G','S','U','B')? 18 :
- tab->tag==CHR('G','P','O','S')? 19 :
- 20;
- } else {
- tab->orderingval = tab->tag==CHR('h','e','a','d')? 1 :
- tab->tag==CHR('h','h','e','a')? 2 :
- tab->tag==CHR('m','a','x','p')? 3 :
- tab->tag==CHR('O','S','/','2')? 4 :
- tab->tag==CHR('h','m','t','x')? 5 :
- tab->tag==CHR('L','T','S','H')? 6 :
- tab->tag==CHR('V','D','M','X')? 7 :
- tab->tag==CHR('h','d','m','x')? 8 :
- tab->tag==CHR('c','m','a','p')? 9 :
- tab->tag==CHR('f','p','g','m')? 10 :
- tab->tag==CHR('p','r','e','p')? 11 :
- tab->tag==CHR('c','v','t',' ')? 12 :
- tab->tag==CHR('l','o','c','a')? 13 :
- tab->tag==CHR('g','l','y','f')? 14 :
- tab->tag==CHR('k','e','r','n')? 15 :
- tab->tag==CHR('n','a','m','e')? 16 :
- tab->tag==CHR('p','o','s','t')? 17 :
- tab->tag==CHR('g','a','s','p')? 18 :
- tab->tag==CHR('P','C','L','T')? 19 :
- tab->tag==CHR('D','S','I','G')? 20 :
- tab->tag==CHR('G','D','E','F')? 21 :
- tab->tag==CHR('G','S','U','B')? 22 :
- tab->tag==CHR('G','P','O','S')? 23 :
- 24;
- }
- }
-
- qsort(at->tabdir.ordered,at->tabdir.numtab,sizeof(struct taboff *),tcomp);
- qsort(at->tabdir.alpha,i,sizeof(struct taboff *),tagcomp);
-
- offset = sizeof(int32)+4*sizeof(int16) + at->tabdir.numtab*4*sizeof(int32);
- for ( i=0; i<at->tabdir.numtab; ++i ) if ( at->tabdir.ordered[i]->data!=NULL ) {
- at->tabdir.ordered[i]->offset = offset;
- offset += ((at->tabdir.ordered[i]->length+3)>>2)<<2;
- at->tabdir.ordered[i]->checksum = filechecksum(at->tabdir.ordered[i]->data);
- }
- for ( i=0; i<at->tabdir.numtab; ++i ) if ( at->tabdir.ordered[i]->data==NULL ) {
- struct taboff *tab = &at->tabdir.tabs[at->tabdir.ordered[i]->dup_of];
- at->tabdir.ordered[i]->offset = tab->offset;
- at->tabdir.ordered[i]->checksum = tab->checksum;
- }
-
- tab = SFFindTable(sf,CHR('c','v','t',' '));
- if ( tab!=NULL ) {
- if ( at->oldcvt!=NULL && at->oldcvtlen<tab->len )
- tab->len = at->oldcvtlen;
- else if ( at->oldcvt==NULL ) {
- /* We created a cvt table when we output the .notdef glyph */
- /* now that means AutoInstr thinks it no longer has a blank */
- /* slate to work with, and will complain, much to the user's */
- /* surprise. So get rid of it */
- struct ttf_table *prev = NULL;
- for ( tab = sf->ttf_tables; tab!=NULL ; prev = tab, tab=tab->next )
- if ( tab->tag==CHR('c','v','t',' ') )
- break;
- if ( tab!=NULL ) {
- if ( prev==NULL )
- sf->ttf_tables = tab->next;
- else
- prev->next = tab->next;
- tab->next = NULL;
- TtfTablesFree(tab);
- }
- }
- }
-return( true );
-}
-
-static char *Tag2String(uint32 tag) {
- static char buffer[8];
-
- buffer[0] = tag>>24;
- buffer[1] = tag>>16;
- buffer[2] = tag>>8;
- buffer[3] = tag;
- buffer[4] = 0;
-return( buffer );
-}
-
-static void dumpttf(FILE *ttf,struct alltabs *at) {
- int32 checksum;
- int i, head_index=-1;
- /* I can't use fwrite because I (may) have to byte swap everything */
-
- putlong(ttf,at->tabdir.version);
- putshort(ttf,at->tabdir.numtab);
- putshort(ttf,at->tabdir.searchRange);
- putshort(ttf,at->tabdir.entrySel);
- putshort(ttf,at->tabdir.rangeShift);
- for ( i=0; i<at->tabdir.numtab; ++i ) {
- if ( at->tabdir.alpha[i]->tag==CHR('h','e','a','d') || at->tabdir.alpha[i]->tag==CHR('b','h','e','d') )
- head_index = i;
- putlong(ttf,at->tabdir.alpha[i]->tag);
- putlong(ttf,at->tabdir.alpha[i]->checksum);
- putlong(ttf,at->tabdir.alpha[i]->offset);
- putlong(ttf,at->tabdir.alpha[i]->length);
- }
-
- for ( i=0; i<at->tabdir.numtab; ++i ) if ( at->tabdir.ordered[i]->data!=NULL ) {
- if ( !ttfcopyfile(ttf,at->tabdir.ordered[i]->data,
- at->tabdir.ordered[i]->offset,Tag2String(at->tabdir.ordered[i]->tag)))
- at->error = true;
- }
-
- if ( head_index!=-1 ) {
- checksum = filechecksum(ttf);
- checksum = 0xb1b0afba-checksum;
- fseek(ttf,at->tabdir.alpha[head_index]->offset+2*sizeof(int32),SEEK_SET);
- putlong(ttf,checksum);
- }
-
- /* ttfcopyfile closed all the files (except ttf) */
-}
-
-static void DumpGlyphToNameMap(char *fontname,SplineFont *sf) {
- char *d, *e;
- char *newname = malloc(strlen(fontname)+10);
- FILE *file;
- int i,k,max;
- SplineChar *sc;
-
- strcpy(newname,fontname);
- d = strrchr(newname,'/');
- if ( d==NULL ) d=newname;
- e = strrchr(d,'.');
- if ( e==NULL ) e = newname+strlen(newname);
- strcpy(e,".g2n");
-
- file = fopen(newname,"wb");
- if ( file==NULL ) {
- LogError( _("Failed to open glyph to name map file for writing: %s\n"), newname );
- free(newname);
-return;
- }
-
- if ( sf->subfontcnt==0 )
- max = sf->glyphcnt;
- else {
- for ( k=max=0; k<sf->subfontcnt; ++k )
- if ( sf->subfonts[k]->glyphcnt > max )
- max = sf->subfonts[k]->glyphcnt;
- }
- for ( i=0; i<max; ++i ) {
- sc = NULL;
- if ( sf->subfontcnt==0 )
- sc = sf->glyphs[i];
- else {
- for ( k=0; k<sf->subfontcnt; ++k ) if ( i<sf->subfonts[k]->glyphcnt )
- if ( (sc=sf->subfonts[k]->glyphs[i])!=NULL )
- break;
- }
- if ( sc!=NULL && sc->ttf_glyph!=-1 ) {
- fprintf( file, "GLYPHID %d\tPSNAME %s", sc->ttf_glyph, sc->name );
- if ( sc->unicodeenc!=-1 )
- fprintf( file, "\tUNICODE %04X", sc->unicodeenc );
- putc('\n',file);
- }
- }
- fclose(file);
- free(newname);
-}
-
-static int dumpcff(struct alltabs *at,SplineFont *sf,enum fontformat format,
- FILE *cff) {
- int ret;
-
- if ( format==ff_cff ) {
- AssignTTFGlyph(&at->gi,sf,at->map,true);
- ret = dumptype2glyphs(sf,at);
- } else {
- SFDummyUpCIDs(&at->gi,sf); /* life is easier if we ignore the separate fonts of a cid keyed fonts and treat it as flat */
- ret = dumpcidglyphs(sf,at);
- free(sf->glyphs); sf->glyphs = NULL;
- sf->glyphcnt = sf->glyphmax = 0;
- }
- free( at->gi.bygid );
-
- if ( !ret )
- at->error = true;
- else if ( at->gi.flags & ps_flag_nocffsugar ) {
- if ( !ttfcopyfile(cff,at->cfff,0,"CFF"))
- at->error = true;
- } else {
- long len;
- char buffer[80];
- fprintf(cff,"%%!PS-Adobe-3.0 Resource-FontSet\n");
- fprintf(cff,"%%%%DocumentNeedResources:ProcSet (FontSetInit)\n");
- fprintf(cff,"%%%%Title: (FontSet/%s)\n", sf->fontname);
- fprintf(cff,"%%%%EndComments\n" );
- fprintf(cff,"%%%%IncludeResource: ProcSet(FontSetInit)\n" );
- fprintf(cff,"%%%%BeginResource: FontSet(%s)\n", sf->fontname );
- fprintf(cff,"/FontSetInit /ProcSet findresource begin\n" );
- fseek(at->cfff,0,SEEK_END);
- len = ftell(at->cfff);
- rewind(at->cfff);
- sprintf( buffer, "/%s %ld StartData\n", sf->fontname, len );
- fprintf(cff,"%%%%BeginData: %ld Binary Bytes\n", (long) (len+strlen(buffer)) );
- fputs(buffer,cff);
- if ( !ttfcopyfile(cff,at->cfff,ftell(cff),"CFF"))
- at->error = true;
- fprintf(cff,"\n%%%%EndData\n" );
- fprintf(cff,"%%%%EndResource\n" );
- fprintf(cff,"%%%%EOF\n" );
- }
-return( !at->error );
-}
-
-static void ATinit(struct alltabs *at,SplineFont *sf,EncMap *map,int flags, int layer,
- enum fontformat format, enum bitmapformat bf,int *bsizes) {
-
- at->gi.flags = flags;
- at->gi.layer = layer;
- at->gi.is_ttf = format == ff_ttf || format==ff_ttfsym || format==ff_ttfmacbin || format==ff_ttfdfont;
- at->gi.sf = sf;
- at->applemode = (flags&ttf_flag_applemode)?1:0;
- at->opentypemode = (flags&ttf_flag_otmode)?1:0;
- at->msbitmaps = bsizes!=NULL && at->opentypemode;
- at->applebitmaps = bsizes!=NULL && at->applemode;
- at->gi.onlybitmaps = format==ff_none;
-
- if ( bf==bf_sfnt_dfont ) { at->msbitmaps = false; at->applebitmaps=true; at->opentypemode=false; at->gi.onlybitmaps=true;}
- if ( bf==bf_sfnt_ms ) { at->msbitmaps = true; at->applebitmaps=false; at->applemode=false; at->gi.onlybitmaps=true;}
- if ( bf==bf_otb ) { at->otbbitmaps = true; at->applebitmaps=at->msbitmaps=false; at->applemode=false; at->gi.onlybitmaps=true;}
-
- if ( bsizes!=NULL && !at->applebitmaps && !at->otbbitmaps && !at->msbitmaps )
- at->msbitmaps = true; /* They asked for bitmaps, but no bitmap type selected */
- at->gi.bsizes = bsizes;
- at->gi.fixed_width = CIDOneWidth(sf);
- at->isotf = format==ff_otf || format==ff_otfcid;
- at->format = format;
- at->next_strid = 256;
- if ( at->applemode && sf->mm!=NULL && sf->mm->apple &&
- (format==ff_ttf || format==ff_ttfsym || format==ff_ttfmacbin ||
- format==ff_ttfdfont) &&
- MMValid(sf->mm,false)) {
- at->dovariations = true;
- at->gi.dovariations = true;
- sf = sf->mm->normal;
- }
- at->sf = sf;
- at->map = map;
-}
-
-int _WriteTTFFont(FILE *ttf,SplineFont *sf,enum fontformat format,
- int32 *bsizes, enum bitmapformat bf,int flags,EncMap *map, int layer) {
- struct alltabs at;
- int i, anyglyphs;
-
- short_too_long_warned = 0; // This is a static variable defined for putshort.
- /* TrueType probably doesn't need this, but OpenType does for floats in dictionaries */
- ff_locale_t tmplocale, oldlocale; // Declare temporary locale storage.
- switch_to_c_locale(&tmplocale, &oldlocale); // Switch to the C locale temporarily and cache the old locale.
-
- if ( format==ff_otfcid || format== ff_cffcid ) {
- if ( sf->cidmaster ) sf = sf->cidmaster;
- } else {
- if ( sf->subfontcnt!=0 ) sf = sf->subfonts[0];
- }
-
- if ( sf->subfontcnt==0 ) {
- anyglyphs = false;
- for ( i=sf->glyphcnt-1; i>=0 ; --i ) {
- if ( SCWorthOutputting(sf->glyphs[i])) {
- anyglyphs = true;
- if ( sf->glyphs[i]->unicodeenc!=-1 )
- break;
- }
- }
- if ( !anyglyphs && !sf->internal_temp ) {
- ff_post_error(_("No Encoded Glyphs"),_("Warning: Font contained no glyphs"));
- }
- if ( format!=ff_ttfsym && !(flags&ttf_flag_symbol) && !sf->internal_temp ) {
- if ( i<0 && anyglyphs ) {
- if ( map->enccount<=256 ) {
- char *buts[3];
- buts[0] = _("_Yes"); buts[1] = _("_No"); buts[2] = NULL;
- if ( ff_ask(_("No Encoded Glyphs"),(const char **) buts,0,1,_("This font contains no glyphs with unicode encodings.\nWould you like to use a \"Symbol\" encoding instead of Unicode?"))==0 )
- flags |= ttf_flag_symbol;
- } else
- ff_post_error(_("No Encoded Glyphs"),_("This font contains no glyphs with unicode encodings.\nYou will probably not be able to use the output."));
- }
- }
- }
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL )
- sf->glyphs[i]->ttf_glyph = -1;
-
- memset(&at,'\0',sizeof(struct alltabs));
- ATinit(&at,sf,map,flags,layer,format,bf,bsizes);
-
- if ( format==ff_cff || format==ff_cffcid ) {
- dumpcff(&at,sf,format,ttf);
- } else {
- if ( initTables(&at,sf,format,bsizes,bf))
- dumpttf(ttf,&at);
- }
- switch_to_old_locale(&tmplocale, &oldlocale); // Switch to the cached locale.
- if ( at.error || ferror(ttf))
-return( 0 );
-
-#ifdef __CygWin
- /* Modern versions of windows want the execute bit set on a ttf file */
- /* I've no idea what this corresponds to in windows, nor any idea on */
- /* how to set it from the windows UI, but this seems to work */
- {
- struct stat buf;
- fstat(fileno(ttf),&buf);
- fchmod(fileno(ttf),S_IXUSR | buf.st_mode );
- }
-#endif
-
-return( 1 );
-}
-
-int WriteTTFFont(char *fontname,SplineFont *sf,enum fontformat format,
- int32 *bsizes, enum bitmapformat bf,int flags,EncMap *map, int layer) {
- FILE *ttf;
- int ret;
-
- if ( strstr(fontname,"://")!=NULL ) {
- if (( ttf = tmpfile2())==NULL )
-return( 0 );
- } else {
- if (( ttf=fopen(fontname,"wb+"))==NULL )
-return( 0 );
- }
- ret = _WriteTTFFont(ttf,sf,format,bsizes,bf,flags,map,layer);
- if ( ret && (flags&ttf_flag_glyphmap) )
- DumpGlyphToNameMap(fontname,sf);
- if ( fclose(ttf)==-1 )
-return( 0 );
-return( ret );
-}
-
-/* ************************************************************************** */
-/* ****************************** Type42 stuff ****************************** */
-
-/* ************************************************************************** */
-/* ******************************* TTC stuff ******************************** */
-/* ************************************************************************** */
-
-typedef struct splinecharlist *UHash[65536];
-typedef struct splinecharlist *NHash[257];
-
-static unsigned int hashname(const char *name) {
- unsigned int hash = 0;
-
- while ( *name ) {
- unsigned int extra = (hash>>27);
- hash<<=5;
- hash += *name&0x1f;
- hash ^= extra;
- ++name;
- }
-return( hash % 257 );
-}
-
-static int glyphmatches(SplineChar *sc,SplineChar *sc2,int layer) {
- RefChar *r, *r2;
- SplineSet *ss, *ss2;
- SplinePoint *sp, *sp2;
-
- if ( sc->width!=sc2->width )
-return( false );
- if ( sc->ttf_instrs_len != sc2->ttf_instrs_len )
-return( false );
- if ( sc->ttf_instrs_len!=0 && memcmp(sc->ttf_instrs,sc2->ttf_instrs,sc->ttf_instrs_len)!=0 )
-return( false );
-
- for ( r=sc->layers[layer].refs, r2=sc2->layers[layer].refs;
- r!=NULL && r2!=NULL;
- r = r->next, r2 = r2->next ) {
- if ( r->transform[0] != r2->transform[0] ||
- r->transform[1] != r2->transform[1] ||
- r->transform[2] != r2->transform[2] ||
- r->transform[3] != r2->transform[3] ||
- r->transform[4] != r2->transform[4] ||
- r->transform[5] != r2->transform[5] )
-return( false );
- if ( r->sc->unicodeenc!=r2->sc->unicodeenc )
-return( false );
- if ( r->sc->unicodeenc==-1 && strcmp(r->sc->name,r2->sc->name)!=0 )
-return( false );
- }
- if ( r!=NULL || r2!=NULL )
-return( false );
-
- for ( ss=sc->layers[layer].splines, ss2=sc2->layers[layer].splines;
- ss!=NULL && ss2!=NULL;
- ss = ss->next, ss2 = ss2->next ) {
- for ( sp=ss->first, sp2=ss2->first; sp!=NULL && sp2!=NULL; ) {
- if ( sp->me.x != sp2->me.x ||
- sp->me.y != sp2->me.y ||
- sp->nextcp.x != sp2->nextcp.x ||
- sp->nextcp.y != sp2->nextcp.y ||
- sp->prevcp.x != sp2->prevcp.x ||
- sp->prevcp.y != sp2->prevcp.y )
-return( false );
- sp = (sp->next ? sp->next->to : NULL);
- sp2 = (sp2->next ? sp2->next->to : NULL);
- if ( sp==ss->first ) {
- if ( sp2==ss2->first )
- break;
-return( false );
- } else if ( sp2==ss2->first )
-return( false );
- }
- if (( sp==NULL && sp2!=NULL ) || ( sp!=NULL && sp2==NULL ))
-return( false );
- }
- if ( ss==NULL && ss2==NULL )
-return( true );
-
-return( false );
-}
-
-static SplineChar *hashglyphfound(SplineChar *sc,UHash *uhash,NHash *nhash,int layer) {
- int hash;
- struct splinecharlist *test;
- struct altuni *alt;
-
- /* the unicodeenc might be unset and we might still have altunis if the */
- /* glyph is controlled by a variant selector */
- if ( sc->unicodeenc==-1 && sc->altuni==NULL ) {
- hash = hashname(sc->name);
- for ( test=(*nhash)[hash]; test!=NULL; test=test->next )
- if ( strcmp(test->sc->name,sc->name)==0 && glyphmatches(sc,test->sc,layer))
-return( test->sc );
- } else if ( sc->unicodeenc!=-1 ) {
- hash = sc->unicodeenc&0xffff;
- for ( test=(*uhash)[hash]; test!=NULL; test=test->next )
- if ( glyphmatches(sc,test->sc,layer))
-return( test->sc );
- }
- for ( alt=sc->altuni; alt!=NULL; alt=alt->next ) {
- hash = alt->unienc&0xffff;
- for ( test=(*uhash)[hash]; test!=NULL; test=test->next )
- if ( glyphmatches(sc,test->sc,layer))
-return( test->sc );
- }
-return( NULL );
-}
-
-static void hashglyphadd(SplineChar *sc,UHash *uhash,NHash *nhash) {
- int hash;
- struct splinecharlist *test;
- struct altuni *alt;
-
- if ( sc->unicodeenc==-1 && sc->altuni==NULL ) {
- hash = hashname(sc->name);
- test = chunkalloc(sizeof(struct splinecharlist));
- test->sc = sc;
- test->next = (*nhash)[hash];
- (*nhash)[hash] = test;
- } else if ( sc->unicodeenc!=-1 ) {
- hash = sc->unicodeenc&0xffff;
- test = chunkalloc(sizeof(struct splinecharlist));
- test->sc = sc;
- test->next = (*uhash)[hash];
- (*uhash)[hash] = test;
- }
- for ( alt=sc->altuni; alt!=NULL; alt=alt->next ) {
- hash = alt->unienc&0xffff;
- test = chunkalloc(sizeof(struct splinecharlist));
- test->sc = sc;
- test->next = (*uhash)[hash];
- (*uhash)[hash] = test;
- }
-}
-
-static struct alltabs *ttc_prep(struct sflist *sfs, enum fontformat format,
- enum bitmapformat bf,int flags, int layer,SplineFont *dummysf) {
- struct alltabs *ret;
- int fcnt, cnt, gcnt=3;
- struct sflist *sfitem;
- int emsize = -1;
- UHash *uhash; /* hash glyphs by unicode */
- NHash *nhash; /* hash glyphs by name if no unicode */
- int anyvmetrics = false;
- int *bygid;
- SplineFont *sf;
- SplineChar *sc, *test;
- int i, aborted;
-
- for ( sfitem= sfs, cnt=0; sfitem!=NULL; sfitem=sfitem->next, ++cnt ) {
- sf = sfitem->sf;
- /* to share the same 'head' table all must be the same emsize */
- if ( emsize==-1 )
- emsize = sf->ascent + sf->descent;
- else if ( emsize != sf->ascent + sf->descent )
-return( NULL );
- if ( format==ff_otf && !PSDictSame(sf->private,sfs->sf->private))
-return( NULL );
- if ( sf->hasvmetrics ) anyvmetrics = true;
- for ( i=0; i<sf->glyphcnt; ++i ) if ( (sc = sf->glyphs[i])!=NULL )
- sc->ttf_glyph = -1;
- gcnt += sf->glyphcnt;
- }
- if ( cnt==0 )
-return( NULL );
- fcnt = cnt;
-
- uhash = calloc(1,sizeof(UHash));
- nhash = calloc(1,sizeof(NHash));
-
- *dummysf = *sfs->sf;
- dummysf->glyphmax = gcnt;
- dummysf->glyphs = calloc(gcnt,sizeof(SplineChar *));
- dummysf->glyphcnt = 0;
- dummysf->hasvmetrics = anyvmetrics;
-
- bygid = malloc((gcnt+3)*sizeof(int));
- memset(bygid,0xff, (gcnt+3)*sizeof(int));
- for ( sfitem= sfs; sfitem!=NULL; sfitem=sfitem->next ) {
- AssignNotdefNull(sfitem->sf,bygid,false);
- if ( bygid[0]!=-1 && dummysf->glyphs[0]==NULL ) {
- dummysf->glyphs[0] = sfitem->sf->glyphs[bygid[0]];
- bygid[0]=0;
- }
- if ( format==ff_ttf ) {
- if ( bygid[1]!=-1 && dummysf->glyphs[1]==NULL ) {
- dummysf->glyphs[1] = sfitem->sf->glyphs[bygid[1]];
- bygid[1]=1;
- }
- if ( bygid[2]!=-1 && dummysf->glyphs[2]==NULL ) {
- dummysf->glyphs[2] = sfitem->sf->glyphs[bygid[2]];
- bygid[2]=2;
- }
- if ( bygid[0]!=-1 && bygid[1]!=-1 && bygid[2]!=-1 )
- break;
- } else {
- if ( bygid[0]!=-1 )
- break;
- }
- }
- dummysf->glyphcnt = format==ff_ttf ? 3 : 1;
-
- ret = calloc(fcnt+2,sizeof(struct alltabs));
- ATinit(&ret[fcnt],dummysf,sfs->map,flags&~ttf_flag_dummyDSIG,
- layer,format,bf,NULL);
- ret[fcnt].gi.ttc_composite_font = true;
- ATmaxpInit(&ret[fcnt],dummysf,format);
-
- for ( sfitem= sfs, cnt=0; sfitem!=NULL; sfitem=sfitem->next, ++cnt ) {
- sf = sfitem->sf;
- ATinit(&ret[cnt],sf,sfitem->map,flags&~ttf_flag_dummyDSIG,
- layer,format,bf,sfitem->sizes);
- ret[cnt].gi.bygid = malloc((gcnt+3)*sizeof(int));
- memset(ret[cnt].gi.bygid,-1,(gcnt+3)*sizeof(int));
- for ( i=0; i<sf->glyphcnt; ++i ) {
- if ( SCWorthOutputting(sc = sf->glyphs[i])) {
- if ( sc->ttf_glyph==-1 ) {
- if ( strcmp(sc->name,".notdef")==0 )
- sc->ttf_glyph = bygid[0];
- else if ( format==ff_ttf &&
- (strcmp(sf->glyphs[i]->name,".null")==0 ||
- strcmp(sf->glyphs[i]->name,"uni0000")==0 ||
- (i==1 && strcmp(sf->glyphs[1]->name,"glyph1")==0)) )
- sc->ttf_glyph = bygid[1];
- else if ( format==ff_ttf &&
- (strcmp(sf->glyphs[i]->name,"nonmarkingreturn")==0 ||
- strcmp(sf->glyphs[i]->name,"uni000D")==0 ||
- (i==2 && strcmp(sf->glyphs[2]->name,"glyph2")==0)))
- sc->ttf_glyph = bygid[2];
- else {
- test = hashglyphfound(sc,uhash,nhash,layer);
- if ( test!=NULL )
- sc->ttf_glyph = test->ttf_glyph;
- else {
- sc->ttf_glyph = dummysf->glyphcnt++;
- bygid[sc->ttf_glyph] = sc->ttf_glyph;
- dummysf->glyphs[sc->ttf_glyph] = sc;
- hashglyphadd(sc,uhash,nhash);
- }
- }
- }
- if ( sc->ttf_glyph!=-1 ) {
- ret[cnt].gi.bygid[sc->ttf_glyph] = i;
- if ( sc->ttf_glyph>=ret[cnt].gi.gcnt )
- ret[cnt].gi.gcnt = sc->ttf_glyph+1;
- }
- }
- if ( sc!=NULL )
- sc->lsidebearing = 0x7fff;
- }
-
- MaxpFromTable(&ret[cnt],sf);
-
- if ( ret[cnt].maxp.maxZones > ret[fcnt].maxp.maxZones )
- ret[fcnt].maxp.maxZones = ret[cnt].maxp.maxZones;
- if ( ret[cnt].maxp.maxTwilightPts > ret[fcnt].maxp.maxTwilightPts )
- ret[fcnt].maxp.maxTwilightPts = ret[cnt].maxp.maxTwilightPts;
- if ( ret[cnt].maxp.maxStorage > ret[fcnt].maxp.maxStorage )
- ret[fcnt].maxp.maxStorage = ret[cnt].maxp.maxStorage;
- if ( ret[cnt].maxp.maxFDEFs > ret[fcnt].maxp.maxFDEFs )
- ret[fcnt].maxp.maxFDEFs = ret[cnt].maxp.maxFDEFs;
- if ( ret[cnt].maxp.maxIDEFs > ret[fcnt].maxp.maxIDEFs )
- ret[fcnt].maxp.maxIDEFs = ret[cnt].maxp.maxIDEFs;
- if ( ret[cnt].maxp.maxStack > ret[fcnt].maxp.maxStack )
- ret[fcnt].maxp.maxStack = ret[cnt].maxp.maxStack;
- }
- free(uhash);
- free(nhash);
-
- if ( dummysf->glyphcnt>0xffff ) {
- free(dummysf->glyphs);
- free(bygid);
- for ( sfitem= sfs, cnt=0; sfitem!=NULL; sfitem=sfitem->next, ++cnt )
- free(ret[cnt].gi.bygid);
- free(ret);
-return( NULL );
- }
-
- ret[fcnt].gi.fixed_width = CIDOneWidth(sf);
- ret[fcnt].gi.bygid = bygid;
- ret[fcnt].gi.gcnt = ret[fcnt].maxp.numGlyphs = dummysf->glyphcnt;
- if ( format==ff_ttf )
- aborted = !dumpglyphs(dummysf,&ret[cnt].gi);
- else
- aborted = !dumptype2glyphs(dummysf,&ret[cnt]);
- if ( aborted ) {
- free(dummysf->glyphs);
- free(bygid);
- for ( sfitem= sfs, cnt=0; sfitem!=NULL; sfitem=sfitem->next, ++cnt )
- free(ret[cnt].gi.bygid);
- free(ret);
-return( NULL );
- }
- sethhead(&ret[fcnt].hhead,&ret[fcnt].vhead,&ret[fcnt],dummysf);
- for ( sfitem= sfs, cnt=0; sfitem!=NULL; sfitem=sfitem->next, ++cnt )
- ret[cnt].maxp = ret[fcnt].maxp;
-
- /* Just to get a timestamp for all other heads */
- /* and to figure out whether 'loca' is 4byte or 2 */
- sethead(&ret[fcnt].head,dummysf,&ret[fcnt],format,NULL);
- if ( format==ff_ttf )
- redoloca(&ret[fcnt]);
- redohhead(&ret[fcnt],false);
- if ( dummysf->hasvmetrics )
- redohhead(&ret[fcnt],true);
- ttf_fftm_dump(dummysf,&ret[fcnt]);
-
-return( ret );
-}
-
-static FILE *checkdupstoredtable(SplineFont *sf,uint32 tag,int *len,
- struct alltabs *all, int me) {
- int i;
- struct ttf_table *tab = SFFindTable(sf,tag), *test;
-
- if ( tab==NULL ) {
- *len = 0;
-return( NULL );
- }
- for ( i=0; i<me; ++i ) {
- test = SFFindTable(all[i].sf,tag);
- if ( test!=NULL && test->len==tab->len &&
- memcmp(test->data,tab->data,tab->len)==0 ) {
- *len = i;
-return( (FILE *) (intpt) -1 );
- }
- }
-return( dumpstoredtable(sf,tag,len));
-}
-
-static void ttc_perfonttables(struct alltabs *all, int me, int mainpos,
- enum fontformat format ) {
- struct alltabs *at = &all[me];
- struct alltabs *tabsmain = &all[mainpos];
- SplineFont *sf = at->sf;
- struct ttf_table *tab;
-
- at->gi.xmin = tabsmain->gi.xmin; at->gi.xmax = tabsmain->gi.xmax;
- at->gi.ymin = tabsmain->gi.ymin; at->gi.ymax = tabsmain->gi.ymax;
- at->gi.glyph_len = tabsmain->gi.glyph_len;
- at->gi.gcnt = tabsmain->maxp.numGlyphs;
- sethead(&at->head,sf,at,format,NULL);
- memcpy(at->head.modtime,tabsmain->head.modtime,sizeof(at->head.modtime));
- memcpy(at->head.createtime,at->head.modtime,sizeof(at->head.modtime));
- initATTables(at, sf, format); /* also name and OS/2 */
-
- if ( format==ff_ttf ) {
- if ( sf->gasp_cnt!=0 || !SFHasInstructions(sf) )
- dumpgasp(at, sf);
- at->fpgmf = checkdupstoredtable(sf,CHR('f','p','g','m'),&at->fpgmlen, all, me);
- at->prepf = checkdupstoredtable(sf,CHR('p','r','e','p'),&at->preplen, all, me);
- at->cvtf = checkdupstoredtable(sf,CHR('c','v','t',' '),&at->cvtlen, all, me);
- }
-
- for ( tab=sf->ttf_tab_saved; tab!=NULL; tab=tab->next )
- tab->temp = dumpsavedtable(tab);
- {
- /* post table is expected to have names for every glyph (or none) even*/
- /* those not used in this font. Now it might seem we could just share*/
- /* the post table, but it also contains a few font specific things */
- /* (italic angle, etc.) so dump one for each font and hope that we'll*/
- /* be able to coalesce them later when we check if any tables are the*/
- /* same across fonts */
- int cnt = sf->glyphcnt;
- SplineChar **g = sf->glyphs;
- int *bygid = at->gi.bygid;
- sf->glyphcnt = tabsmain->sf->glyphcnt;
- sf->glyphs = tabsmain->sf->glyphs;
- at->gi.bygid = tabsmain->gi.bygid;
- dumppost(at,sf,format);
- sf->glyphcnt = cnt;
- sf->glyphs = g;
- at->gi.bygid = bygid;
- }
- dumpcmap(at,sf,format);
- redohead(at);
-
- pfed_dump(at,sf);
- tex_dump(at,sf);
-
- /* These tables are always to be shared and are found in the extra structure */
- /* called main */
- if ( format==ff_ttf ) {
- at->loca = (void *) (intpt) -1; at->localen = mainpos;
- at->gi.glyphs = (void *) (intpt) -1; at->gi.glyph_len = mainpos;
- } else {
- at->cfff = (void *) (intpt) -1; at->cfflen = mainpos;
- }
- at->fftmf = (void *) (intpt) -1; at->fftmlen = mainpos;
- at->hheadf = (void *) (intpt) -1; at->hheadlen = mainpos;
- at->gi.hmtx = (void *) (intpt) -1; at->gi.hmtxlen = mainpos;
- at->maxpf = (void *) (intpt) -1; at->maxplen = mainpos;
- if ( all[mainpos].vheadf!=NULL ) {
- at->vheadf = (void *) (intpt) -1; at->vheadlen = mainpos;
- at->gi.vmtx = (void *) (intpt) -1; at->gi.vmtxlen = mainpos;
- }
-
- free(at->gi.bygid);
-}
-
-static int tablefilematch(struct taboff *tab,FILE *ttc,struct alltabs *all,int pos) {
- int i, ch1, ch2;
- struct taboff *test;
- unsigned len;
-
- /* See if this table (which lives in its own file) matches any tables */
- /* with the same tag in an earlier font */
-
- for ( i=0; i<pos; ++i ) {
- test = findtabindir(&all[i].tabdir,tab->tag);
- if ( test==NULL || test->data==(void *) (intpt) -1 ||
- test->length!=tab->length )
- continue;
- rewind(tab->data);
- fseek(ttc,test->offset,SEEK_SET);
- for ( len=0; len<tab->length && (ch1=getc(tab->data))!=EOF && (ch2=getc(ttc))!=EOF; ++len ) {
- if ( ch1!=ch2 )
- break;
- }
- if ( len==tab->length ) {
- rewind(tab->data);
- fseek(ttc,0,SEEK_END);
-return( i );
- }
- }
- rewind(tab->data);
- fseek(ttc,0,SEEK_END);
-return( -1 );
-}
-
-static void ttc_dump(FILE *ttc,struct alltabs *all, enum fontformat format,
- int flags, enum ttc_flags ttc_flags ) {
- int i,j,cnt,tot,ch,dup;
- int offset, startoffset;
- struct taboff *tab;
-
- for ( cnt=0; all[cnt].sf!=NULL; ++cnt );
- --cnt; /* Last one is dummysf */
-
- putlong(ttc,CHR('t','t','c','f'));
- if ( flags&ttf_flag_dummyDSIG ) {
- putlong(ttc,0x00020000);
- startoffset = 4*(3+cnt+4);
- } else {
- putlong(ttc,0x00010000);
- startoffset = 4*(3+cnt);
- }
- putlong(ttc,cnt);
- offset = startoffset;
- for ( i=0; i<cnt; ++i ) {
- putlong(ttc,offset); /* Pointer to font header */
- offset += (8+16*MAX_TAB); /* Explained below */
- }
- if ( flags&ttf_flag_dummyDSIG ) {
- putlong(ttc,CHR('D','S','I','G'));
- putlong(ttc,8); /* Length of dummy DSIG table */
- putlong(ttc,0x00000001); /* Standard DSIG version */
- putlong(ttc,0); /* No Signatures, no flags */
- }
-
- /* Now a font header contains 8 bytes of header and 16 bytes/table */
- /* Reserve space for cnt fonts. Don't know how many tables they'll */
- /* have, so reserve MAX_TAB */
- tot = cnt*(8+16*MAX_TAB);
- for ( i=0; i<tot; ++i )
- putc('\0', ttc);
-
- /* Build, but don't output. This is so we can lookup tables by tag later */
- buildtablestructures(&all[cnt],all[cnt].sf,format);
-
- /* Output some of the smaller tables now, near the head of the file */
- /* I have my doubts about this being a significant savings... but */
- /* it doesn't hurt */
- tab = findtabindir(&all[cnt].tabdir,CHR('h','h','e','a'));
- tab->offset = ftell(ttc);
- tab->checksum = filechecksum(tab->data);
- if ( !ttfcopyfile(ttc,tab->data, tab->offset,Tag2String(tab->tag)))
- all[cnt].error = true;
- tab = findtabindir(&all[cnt].tabdir,CHR('v','h','e','a'));
- if ( tab!=NULL ) {
- tab->offset = ftell(ttc);
- tab->checksum = filechecksum(tab->data);
- if ( !ttfcopyfile(ttc,tab->data, tab->offset,Tag2String(tab->tag)))
- all[cnt].error = true;
- }
- tab = findtabindir(&all[cnt].tabdir,CHR('m','a','x','p'));
- tab->offset = ftell(ttc);
- for ( i=0; i<64; ++i ) /* maxp table is 64 bytes, fill in later */
- putc('\0', ttc);
- tab = findtabindir(&all[cnt].tabdir,CHR('F','F','T','M'));
- tab->offset = ftell(ttc);
- tab->checksum = filechecksum(tab->data);
- if ( !ttfcopyfile(ttc,tab->data, tab->offset,Tag2String(tab->tag)))
- all[cnt].error = true;
-
- for ( i=0; i<cnt; ++i ) {
- /* Now generate all tables unique to this font */
- ttc_perfonttables(all, i, cnt, format );
- buildtablestructures(&all[i],all[i].sf,format);
- /* Check for any tables which match those of a previous font */
- for ( j=0 ; j<all[i].tabdir.numtab; ++j ) {
- if ( all[i].tabdir.tabs[j].data!=(void *) (intpt) -1 &&
- (dup = tablefilematch(&all[i].tabdir.tabs[j],ttc,all,i))!=-1 ) {
- fclose(all[i].tabdir.tabs[j].data);
- all[i].tabdir.tabs[j].data = (void *) (intpt) -1;
- all[i].tabdir.tabs[j].length = dup;
- }
- }
-
- /* And now dump those tables into the file. I don't see how I could */
- /* order them meaningfully */
- for ( j=0 ; j<all[i].tabdir.numtab; ++j ) {
- if ( all[i].tabdir.tabs[j].data!=(void *) (intpt) -1 ) {
- all[i].tabdir.tabs[j].offset = ftell(ttc);
- all[i].tabdir.tabs[j].checksum = filechecksum(all[i].tabdir.tabs[j].data);
- if ( !ttfcopyfile(ttc,all[i].tabdir.tabs[j].data, all[i].tabdir.tabs[j].offset,Tag2String(all[i].tabdir.tabs[j].tag)))
- all[cnt].error = true;
- }
- }
- }
-
- free(all[cnt].sf->glyphs);
- free(all[cnt].gi.bygid);
-
- /* Now dump the big shared tables */
- tab = findtabindir(&all[cnt].tabdir,CHR('h','m','t','x'));
- tab->offset = ftell(ttc);
- tab->checksum = filechecksum(tab->data);
- if ( !ttfcopyfile(ttc,tab->data, tab->offset,Tag2String(tab->tag)))
- all[cnt].error = true;
- tab = findtabindir(&all[cnt].tabdir,CHR('v','m','t','x'));
- if ( tab!=NULL ) {
- tab->offset = ftell(ttc);
- tab->checksum = filechecksum(tab->data);
- if ( !ttfcopyfile(ttc,tab->data, tab->offset,Tag2String(tab->tag)))
- all[cnt].error = true;
- }
- if ( format==ff_ttf ) {
- tab = findtabindir(&all[cnt].tabdir,CHR('l','o','c','a'));
- tab->offset = ftell(ttc);
- tab->checksum = filechecksum(tab->data);
- if ( !ttfcopyfile(ttc,tab->data, tab->offset,Tag2String(tab->tag)))
- all[cnt].error = true;
- tab = findtabindir(&all[cnt].tabdir,CHR('g','l','y','f'));
- tab->offset = ftell(ttc);
- tab->checksum = filechecksum(tab->data);
- if ( !ttfcopyfile(ttc,tab->data, tab->offset,Tag2String(tab->tag)))
- all[cnt].error = true;
- } else {
- tab = findtabindir(&all[cnt].tabdir,CHR('C','F','F',' '));
- tab->offset = ftell(ttc);
- tab->checksum = filechecksum(tab->data);
- if ( !ttfcopyfile(ttc,tab->data, tab->offset,Tag2String(tab->tag)))
- all[cnt].error = true;
- }
-
- /* Do maxp last, in case generating other tables changed it */
- redomaxp(&all[cnt],format);
- tab = findtabindir(&all[cnt].tabdir,CHR('m','a','x','p'));
- fseek(ttc,tab->offset,SEEK_SET);
- tab->checksum = filechecksum(all[cnt].maxpf);
- tab->length = all[cnt].maxplen;
- rewind(all[cnt].maxpf);
- while ( (ch=getc(all[cnt].maxpf))!=EOF )
- putc(ch,ttc);
-
- /* Now output the font headers */
- for ( offset=startoffset, i=0; i<cnt; ++i, offset += (8+16*MAX_TAB)) {
- struct alltabs *at = &all[i];
- /* Find the location of any shared tables */
- for ( j=0; j<at->tabdir.numtab; ++j ) {
- struct taboff *curtab = &at->tabdir.tabs[j];
- if ( curtab->data == (void *) (intpt) -1 ) {
- tab = findtabindir(&all[curtab->length].tabdir,curtab->tag);
- if ( tab==NULL ) {
- IError("Failed to find tab");
- curtab->length = 0;
- curtab->offset = 0;
- curtab->checksum = 0;
- } else {
- curtab->offset = tab->offset;
- curtab->length = tab->length;
- curtab->checksum = tab->checksum;
- }
- }
- }
- fseek(ttc,offset,SEEK_SET);
-
- /* Put in alphabetic order */
- for ( j=0; j<at->tabdir.numtab; ++j )
- at->tabdir.alpha[j] = &at->tabdir.tabs[j];
- qsort(at->tabdir.alpha,at->tabdir.numtab,sizeof(struct taboff *),tagcomp);
-
- putlong(ttc,at->tabdir.version);
- putshort(ttc,at->tabdir.numtab);
- putshort(ttc,at->tabdir.searchRange);
- putshort(ttc,at->tabdir.entrySel);
- putshort(ttc,at->tabdir.rangeShift);
- for ( j=0; j<at->tabdir.numtab; ++j ) {
- putlong(ttc,at->tabdir.alpha[j]->tag);
- putlong(ttc,at->tabdir.alpha[j]->checksum);
- putlong(ttc,at->tabdir.alpha[j]->offset);
- putlong(ttc,at->tabdir.alpha[j]->length);
- }
- }
-
- tab = findtabindir(&all[0].tabdir,CHR('h','e','a','d'));
- if ( tab!=NULL ) {
- /* As far as I can tell the file checksum is ignored */
- int checksum;
- checksum = filechecksum(ttc);
- checksum = 0xb1b0afba-checksum;
- fseek(ttc,tab->offset+2*sizeof(int32),SEEK_SET);
- putlong(ttc,checksum);
- }
-}
-
-static void CopySFNTAndFixup(FILE *ttc,FILE *ttf) {
- /* ttf contains a truetype file which we want to copy into ttc */
- /* Mostly this is just a dump copy, but the offset table at the */
- /* start of the file must be adjusted to reflect the absolute */
- /* locations of the tables in the ttc */
- int offset = ftell(ttc);
- int val, table_cnt, i;
-
- fseek(ttf,0,SEEK_SET);
- val = getlong(ttf);
- putlong(ttc,val); /* sfnt version */
- table_cnt = getushort(ttf);
- putshort(ttc,table_cnt);
- val = getushort(ttf);
- putshort(ttc,val);
- val = getushort(ttf);
- putshort(ttc,val);
- val = getushort(ttf);
- putshort(ttc,val);
-
- for ( i=0; i<table_cnt; ++i ) {
- val = getlong(ttf);
- putlong(ttc,val); /* tag */
- val = getlong(ttf);
- putlong(ttc,val); /* checkSum */
- val = getlong(ttf);
- putlong(ttc,val+offset); /* offset */
- val = getlong(ttf);
- putlong(ttc,val); /* length */
- }
-
- while ( (val=getc(ttf))!=EOF )
- putc(val,ttc);
-
- fclose(ttf);
-
- if ( ftell(ttc)&1 )
- putc('\0',ttc);
- if ( ftell(ttc)&2 )
- putshort(ttc,0);
-}
-
-int WriteTTC(const char *filename,struct sflist *sfs,enum fontformat format,
- enum bitmapformat bf,int flags, int layer, enum ttc_flags ttcflags) {
- struct sflist *sfitem, *sfi2;
- int ok=1;
- FILE *ttc;
- int cnt, offset;
- int dobruteforce;
- struct alltabs *ret;
- SplineFont dummysf;
-
- if ( strstr(filename,"://")!=NULL ) {
- if (( ttc = tmpfile2())==NULL )
-return( 0 );
- } else {
- if (( ttc=fopen(filename,"wb+"))==NULL )
-return( 0 );
- }
-
- format = (ttcflags & ttc_flag_cff) ? ff_otf : ff_ttf;
-
- dobruteforce = true;
- if ( (ttcflags & ttc_flag_trymerge) && bf==bf_none ) {
- dobruteforce = false;
- ret = ttc_prep(sfs,format,bf,flags,layer,&dummysf);
- if ( ret==NULL )
- dobruteforce = true;
- else
- ttc_dump(ttc,ret,format,flags,ttcflags);
- free(ret);
- }
- if ( dobruteforce ) {
- /* Create a trivial ttc where each font is its own entity and there */
- /* are no common tables */
- /* Generate all the fonts (don't generate DSIGs, there's one DSIG for */
- /* the ttc as a whole) */
- for ( sfitem= sfs, cnt=0; sfitem!=NULL; sfitem=sfitem->next, ++cnt ) {
- sfitem->tempttf = tmpfile2();
- if ( sfitem->tempttf==NULL )
- ok=0;
- else
- ok = _WriteTTFFont(sfitem->tempttf,sfitem->sf,format,sfitem->sizes,
- bf,flags&~ttf_flag_dummyDSIG,sfitem->map,layer);
- if ( !ok ) {
- for ( sfi2=sfs; sfi2!=NULL; sfi2 = sfi2->next )
- if ( sfi2->tempttf!=NULL )
- fclose(sfi2->tempttf );
- fclose(ttc);
-return( true );
- }
- fseek(sfitem->tempttf,0,SEEK_END);
- sfitem->len = ftell(sfitem->tempttf);
- }
-
- putlong(ttc,CHR('t','t','c','f'));
- if ( flags&ttf_flag_dummyDSIG ) {
- putlong(ttc,0x00020000);
- offset = 4*(3+cnt+4);
- } else {
- putlong(ttc,0x00010000);
- offset = 4*(3+cnt);
- }
- putlong(ttc,cnt);
- for ( sfitem= sfs; sfitem!=NULL; sfitem=sfitem->next ) {
- putlong(ttc,offset);
- offset += ((sfitem->len+3)>>2)<<2; /* Align on 4 byte boundary */
- }
- if ( flags&ttf_flag_dummyDSIG ) {
- putlong(ttc,CHR('D','S','I','G'));
- putlong(ttc,8); /* Length of dummy DSIG table */
- putlong(ttc,0x00000001); /* Standard DSIG version */
- putlong(ttc,0); /* No Signatures, no flags */
- }
- for ( sfitem= sfs; sfitem!=NULL; sfitem=sfitem->next )
- CopySFNTAndFixup(ttc,sfitem->tempttf);
- if ( ftell(ttc)!=offset )
- IError("Miscalculated offsets in ttc");
- } else
-
- if ( ferror(ttc))
- ok = false;
- if ( fclose(ttc)==-1 )
- ok = false;
- if ( !ok )
- LogError(_("Something went wrong"));
-return( ok );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/tottfaat.c b/dviware/dvisvgm/libs/ff-woff/fontforge/tottfaat.c
deleted file mode 100644
index 1383022448..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/tottfaat.c
+++ /dev/null
@@ -1,2526 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include <utype.h>
-
-#include "ttf.h"
-
-/* This file contains routines to create some of the Apple Advanced Typography Tables */
-/* (or GX fonts) */
-
-/* ************************************************************************** */
-/* ************************* The 'kern' table ************************* */
-/* ************************************************************************** */
-
-
-/* Apple's docs imply that kerning info is always provided left to right, even*/
-/* for right to left scripts. If that be so then we need code in here to reverse */
-/* the order of the characters for right to left since pfaedit's convention */
-/* is to follow writing order rather than to go left to right */
-
-
-static void DumpKernClass(FILE *file, uint16 *class,int cnt,int add,int mul) {
- int i, first=-1, last=-1;
-
- for ( i=0; i<cnt; ++i ) {
- if ( class[i] ) last = i;
- if ( class[i] && first==-1 ) first = i;
- }
- putshort(file,first);
- putshort(file,last-first+1);
- for ( i=first; i<=last; ++i )
- putshort(file,class[i]*mul+add);
-}
-
-static int morx_dumpASM(FILE *temp,ASM *sm, struct alltabs *at, SplineFont *sf );
-
-struct kerncounts {
- int cnt;
- int vcnt;
- int mh, mv;
- int kccnt;
- int vkccnt;
- int ksm;
- int hsubs;
- int *hbreaks;
- int vsubs;
- int *vbreaks;
-};
-
-static int CountKerns(struct alltabs *at, SplineFont *sf, struct kerncounts *kcnt) {
- int i, cnt, vcnt, j, kccnt=0, vkccnt=0, ksm=0, mh, mv;
- KernPair *kp;
- KernClass *kc;
- ASM *sm;
-
- cnt = mh = vcnt = mv = 0;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- j = 0;
- for ( kp = sf->glyphs[at->gi.bygid[i]]->kerns; kp!=NULL; kp=kp->next )
- if ( kp->off!=0 && kp->sc->ttf_glyph!=-1 &&
- LookupHasDefault(kp->subtable->lookup ))
- ++cnt, ++j;
- if ( j>mh ) mh=j;
- j=0;
- for ( kp = sf->glyphs[at->gi.bygid[i]]->vkerns; kp!=NULL; kp=kp->next )
- if ( kp->off!=0 && kp->sc->ttf_glyph!=-1 &&
- LookupHasDefault(kp->subtable->lookup ))
- ++vcnt, ++j;
- if ( j>mv ) mv=j;
- }
- kcnt->cnt = cnt;
- kcnt->vcnt = vcnt;
- kcnt->mh = mh;
- kcnt->mv = mv;
- kcnt->hbreaks = kcnt->vbreaks = NULL;
- if ( cnt>=10000 ) {
- /* the sub-table size is 6*cnt+14 or so and needs to be less 65535 */
- /* so break it up into little bits */
- /* We might not need this when applemode is set because the subtable */
- /* length is a long. BUT... there's a damn binsearch header with */
- /* shorts in it still */
- int b=0;
- kcnt->hbreaks = malloc((at->gi.gcnt+1)*sizeof(int));
- cnt = 0;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- j = 0;
- for ( kp = sf->glyphs[at->gi.bygid[i]]->kerns; kp!=NULL; kp=kp->next )
- if ( kp->off!=0 && LookupHasDefault(kp->subtable->lookup ))
- ++j;
- if ( (cnt+j)*6>64000L && cnt!=0 ) {
- kcnt->hbreaks[b++] = cnt;
- cnt = 0;
- }
- cnt += j;
- }
- kcnt->hbreaks[b++] = cnt;
- kcnt->hsubs = b;
- } else if ( cnt!=0 )
- kcnt->hsubs = 1;
- else
- kcnt->hsubs = 0;
- if ( vcnt>=10000 ) {
- int b=0;
- kcnt->vbreaks = malloc((at->gi.gcnt+1)*sizeof(int));
- vcnt = 0;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- j = 0;
- for ( kp = sf->glyphs[at->gi.bygid[i]]->vkerns; kp!=NULL; kp=kp->next )
- if ( kp->off!=0 && LookupHasDefault(kp->subtable->lookup))
- ++j;
- if ( (vcnt+j)*6>64000L && vcnt!=0 ) {
- kcnt->vbreaks[b++] = vcnt;
- vcnt = 0;
- }
- vcnt += j;
- }
- kcnt->vbreaks[b++] = vcnt;
- kcnt->vsubs = b;
- } else if ( vcnt!=0 )
- kcnt->vsubs = 1;
- else
- kcnt->vsubs = 0;
-
- if ( at->applemode ) { /* if we aren't outputting Apple's extensions to kerning (by classes, and by state machine) then don't check for those extensions */
- for ( kc=sf->kerns; kc!=NULL; kc = kc->next ) if ( LookupHasDefault(kc->subtable->lookup) )
- ++kccnt;
- for ( kc=sf->vkerns; kc!=NULL; kc = kc->next ) if ( LookupHasDefault(kc->subtable->lookup) )
- ++vkccnt;
- for ( sm=sf->sm; sm!=NULL; sm=sm->next )
- if ( sm->type == asm_kern )
- ++ksm;
- }
- kcnt->kccnt = kccnt;
- kcnt->vkccnt = vkccnt;
- kcnt->ksm = ksm;
-return( kcnt->hsubs + kcnt->vsubs + kccnt + vkccnt + ksm );
-}
-
-static void ttf_dumpsfkerns(struct alltabs *at, SplineFont *sf, int tupleIndex, int version) {
- struct kerncounts kcnt;
- int i, j, k, m, c, gid, tot, km;
- KernPair *kp;
- KernClass *kc;
- ASM *sm;
- uint16 *glnum, *offsets;
- int isv;
- int tupleMask = tupleIndex==-1 ? 0 : 0x2000;
- int b, bmax;
- int *breaks;
- int winfail=0;
- int subtableBeginPos,subtableEndPos;
-
- if ( CountKerns(at,sf,&kcnt)==0 )
-return;
-
- if ( tupleIndex==-1 ) tupleIndex = 0;
-
- for ( isv=0; isv<2; ++isv ) {
- c = isv ? kcnt.vcnt : kcnt.cnt;
- bmax = isv ? kcnt.vsubs : kcnt.hsubs;
- breaks = isv ? kcnt.vbreaks : kcnt.hbreaks;
- if ( c!=0 ) {
- km = isv ? kcnt.mv : kcnt.mh;
- glnum = malloc(km*sizeof(uint16));
- offsets = malloc(km*sizeof(uint16));
- gid = 0;
- for ( b=0; b<bmax; ++b ) {
- c = bmax==1 ? c : breaks[b];
-
- // skip subtable header because we don't know the number of kern pairs yet
- subtableBeginPos=ftell(at->kern);
- if(version==0) fseek(at->kern,7*sizeof(uint16),SEEK_CUR);
- else fseek(at->kern,8*sizeof(uint16),SEEK_CUR);
-
- for ( tot = 0; gid<at->gi.gcnt && tot<c; ++gid ) if ( at->gi.bygid[gid]!=-1 ) {
- SplineChar *sc = sf->glyphs[at->gi.bygid[gid]];
- // if requested, omit kern pairs with unmapped glyphs
- // (required for compatibility with non-OpenType-aware Windows applications)
- if( (at->gi.flags&ttf_flag_oldkernmappedonly) && (unsigned)(sc->unicodeenc)>0xFFFF ) continue;
- m = 0;
- for ( kp = isv ? sc->vkerns : sc->kerns; kp!=NULL; kp=kp->next ) {
- // if requested, omit kern pairs with unmapped glyphs
- // (required for compatibility with non-OpenType-aware Windows applications)
- if( (at->gi.flags&ttf_flag_oldkernmappedonly) && (unsigned)(kp->sc->unicodeenc)>0xFFFF ) continue;
- if ( kp->off!=0 && kp->sc->ttf_glyph!=-1 &&
- LookupHasDefault(kp->subtable->lookup)) {
- /* order the pairs */
- for ( j=0; j<m; ++j )
- if ( kp->sc->ttf_glyph<glnum[j] )
- break;
- for ( k=m; k>j; --k ) {
- glnum[k] = glnum[k-1];
- offsets[k] = offsets[k-1];
- }
- glnum[j] = kp->sc->ttf_glyph;
- offsets[j] = kp->off;
- ++m;
- /* check if a pair will cause problems on Windows */
- /* If the glyph is outside BMP, so either unicode >0xffff */
- /* or -1. Cast to unsigned catches both */
- if( (unsigned)(sf->glyphs[at->gi.bygid[gid]]->unicodeenc)>0xFFFF ||
- (unsigned)(sf->glyphs[at->gi.bygid[glnum[j]]]->unicodeenc)>0xFFFF )
- winfail++;
- }
- }
- for ( j=0; j<m; ++j ) {
- putshort(at->kern,gid);
- putshort(at->kern,glnum[j]);
- putshort(at->kern,offsets[j]);
- }
- tot += m;
- }
-
- // now we can fill the subtable header
- c=tot;
- subtableEndPos=ftell(at->kern);
- fseek(at->kern,subtableBeginPos,SEEK_SET);
- if ( version==0 ) {
- putshort(at->kern,0); /* subtable version */
- if ( c>10920 )
- ff_post_error(_("Too many kern pairs"),_("The 'kern' table supports at most 10920 kern pairs in a subtable"));
- putshort(at->kern,(7+3*c)*sizeof(uint16)); /* subtable length */
- putshort(at->kern,!isv); /* coverage, flags=hor/vert&format=0 */
- } else {
- putlong(at->kern,(8+3*c)*sizeof(uint16)); /* subtable length */
- /* Apple's new format has a completely different coverage format */
- putshort(at->kern,(isv?0x8000:0)| /* format 0, horizontal/vertical flags (coverage) */
- tupleMask);
- putshort(at->kern,tupleIndex);
- }
- putshort(at->kern,c);
- for ( i=1,j=0; i<=c; i<<=1, ++j );
- i>>=1; --j;
- putshort(at->kern,i*6); /* binary search headers */
- putshort(at->kern,j);
- putshort(at->kern,6*(c-i));
- fseek(at->kern,subtableEndPos,SEEK_SET);
- }
- free(offsets);
- free(glnum);
- }
- }
- free(kcnt.hbreaks); free(kcnt.vbreaks);
-
- if( winfail > 0 )
- ff_post_error(_("Kerning is likely to fail on Windows"),_(
- "Note: On Windows many apps can have problems with this font's kerning, because %d of its glyph kern pairs cannot be mapped to unicode-BMP kern pairs (eg, they have a Unicode value of -1) To avoid this, go to Generate, Options, and check the \"Windows-compatible \'kern\'\" option."),
- winfail);
-
- if ( at->applemode ) for ( isv=0; isv<2; ++isv ) {
- for ( kc=isv ? sf->vkerns : sf->kerns; kc!=NULL; kc=kc->next ) if ( LookupHasDefault(kc->subtable->lookup) ) {
- /* If we are here, we must be using version 1 */
- uint32 len_pos = ftell(at->kern), pos;
- uint16 *class1, *class2;
- int first_cnt = kc->first_cnt;
-
- /* OpenType fonts can actually have a set of glyphs in class[0] of*/
- /* the first class. This happens when there are glyphs in the */
- /* coverage table which are not in any of the classes. Otherwise */
- /* class 0 is sort of useless in opentype */
- if ( kc->firsts[0]!=NULL )
- ++first_cnt;
-
- putlong(at->kern,0); /* subtable length */
- putshort(at->kern,(isv?0x8002:2)| /* format 2, horizontal/vertical flags (coverage) */
- tupleMask);
- putshort(at->kern,tupleIndex);
-
- putshort(at->kern,sizeof(uint16)*kc->second_cnt);
- putshort(at->kern,0); /* left classes */
- putshort(at->kern,0); /* right classes */
- putshort(at->kern,16); /* Offset to array, next byte */
-
- if ( kc->firsts[0]!=NULL ) {
- /* Create a dummy class to correspond to the mac's class 0 */
- /* all entries will be 0 */
- for ( i=0 ; i<kc->second_cnt; ++i )
- putshort(at->kern,0);
- }
- for ( i=0; i<kc->first_cnt*kc->second_cnt; ++i )
- putshort(at->kern,kc->offsets[i]);
-
- pos = ftell(at->kern);
- fseek(at->kern,len_pos+10,SEEK_SET);
- putshort(at->kern,pos-len_pos);
- fseek(at->kern,pos,SEEK_SET);
- class1 = ClassesFromNames(sf,kc->firsts,kc->first_cnt,at->maxp.numGlyphs,NULL,true);
- DumpKernClass(at->kern,class1,at->maxp.numGlyphs,16,sizeof(uint16)*kc->second_cnt);
- free(class1);
-
- pos = ftell(at->kern);
- fseek(at->kern,len_pos+12,SEEK_SET);
- putshort(at->kern,pos-len_pos);
- fseek(at->kern,pos,SEEK_SET);
- class2 = ClassesFromNames(sf,kc->seconds,kc->second_cnt,at->maxp.numGlyphs,NULL,true);
- DumpKernClass(at->kern,class2,at->maxp.numGlyphs,0,sizeof(uint16));
- free(class2);
-
- pos = ftell(at->kern);
- fseek(at->kern,len_pos,SEEK_SET);
- putlong(at->kern,pos-len_pos);
- fseek(at->kern,pos,SEEK_SET);
- }
- }
-
- if ( at->applemode ) if ( kcnt.ksm!=0 ) {
- for ( sm=sf->sm; sm!=NULL; sm=sm->next ) if ( sm->type == asm_kern ) {
- uint32 len_pos = ftell(at->kern), pos;
-
- putlong(at->kern,0); /* subtable length */
- putshort(at->kern,((sm->flags&0x8000)?0x8001:1)| /* format 1, horizontal/vertical flags (coverage) */
- tupleMask);
- putshort(at->kern,tupleIndex);
- morx_dumpASM(at->kern,sm,at,sf);
-
- pos = ftell(at->kern);
- fseek(at->kern,len_pos,SEEK_SET);
- putlong(at->kern,pos-len_pos);
- fseek(at->kern,pos,SEEK_SET);
- }
- }
-}
-
-void ttf_dumpkerns(struct alltabs *at, SplineFont *sf) {
- int i, mmcnt=0, sum;
- int version;
- MMSet *mm = at->dovariations ? sf->mm : NULL;
- struct kerncounts kcnt;
- int must_use_old_style = 0;
-
- if ( !at->applemode && (!at->opentypemode || (at->gi.flags&ttf_flag_oldkern)) ) {
- must_use_old_style = true;
- SFKernClassTempDecompose(sf,false);
- mm = NULL;
- } else {
- if ( mm!=NULL ) {
- for ( i=0; i<mm->instance_count; ++i ) {
- mmcnt += CountKerns(at,mm->instances[i],&kcnt);
- free(kcnt.hbreaks); free(kcnt.vbreaks);
- }
- sf = mm->normal;
- }
- }
-
- sum = CountKerns(at,sf,&kcnt);
- free(kcnt.hbreaks); free(kcnt.vbreaks);
- if ( sum==0 && mmcnt==0 ) {
- if ( must_use_old_style )
- SFKernCleanup(sf,false);
-return;
- }
-
- /* Old kerning format (version 0) uses 16 bit quantities */
- /* Apple's new format (version 0x00010000) uses 32 bit quantities */
- at->kern = tmpfile2();
- if ( must_use_old_style ||
- ( kcnt.kccnt==0 && kcnt.vkccnt==0 && kcnt.ksm==0 && mmcnt==0 )) {
- /* MS does not support format 1,2,3 kern sub-tables so if we have them */
- /* we might as well admit that this table is for apple only and use */
- /* the new format apple recommends. Otherwise, use the old format */
- /* If we might need to store tuple data, use the new format */
- putshort(at->kern,0); /* version */
- putshort(at->kern,sum); /* number of subtables */
- version = 0;
- } else {
- putlong(at->kern,0x00010000); /* version */
- putlong(at->kern,sum+mmcnt); /* number of subtables */
- version = 1;
- }
-
- ttf_dumpsfkerns(at, sf, -1, version);
- if ( mm!=NULL ) {
- for ( i=0; i<mm->instance_count; ++i )
- ttf_dumpsfkerns(at, mm->instances[i], i, version);
- }
- if ( must_use_old_style )
- SFKernCleanup(sf,false);
-
- at->kernlen = ftell(at->kern);
- if ( at->kernlen&2 )
- putshort(at->kern,0); /* pad it */
-}
-
-/* ************************************************************************** */
-/* ************************* The 'lcar' table ************************* */
-/* ************************************************************************** */
-
-static PST *haslcaret(SplineChar *sc) {
- PST *pst; int j;
-
- for ( pst=sc->possub; pst!=NULL && pst->type!=pst_lcaret; pst=pst->next );
- if ( pst!=NULL ) {
- if ( !sc->lig_caret_cnt_fixed ) {
- for ( j=pst->u.lcaret.cnt-1; j>=0 && pst->u.lcaret.carets[j]==0; --j );
- if ( j==-1 )
- pst = NULL;
- } else {
- if ( pst->u.lcaret.cnt==0 )
- pst = NULL;
- }
- }
-return( pst );
-}
-
-void aat_dumplcar(struct alltabs *at, SplineFont *sf) {
- int i, j, k, l, seg_cnt, tot, last, offset;
- PST *pst;
- FILE *lcar=NULL;
- SplineChar *sc;
- /* We do four passes. The first just calculates how much space we will need */
- /* the second provides the top-level lookup table structure */
- /* the third provides the arrays of offsets needed for type 4 lookup tables */
- /* the fourth provides the actual data on the ligature carets */
-
- for ( k=0; k<4; ++k ) {
- for ( i=seg_cnt=tot=0; i<at->gi.gcnt; ++i )
- if ( at->gi.bygid[i]!=-1 &&
- (pst = haslcaret(sc = sf->glyphs[at->gi.bygid[i]]))!=NULL ) {
- if ( k==1 )
- tot = 0;
- else if ( k==2 ) {
- putshort(lcar,offset);
- offset += 2 + 2*LigCaretCnt(sc);
- } else if ( k==3 ) {
- putshort(lcar,LigCaretCnt(sc));
- for ( l=0; l<pst->u.lcaret.cnt; ++l )
- if ( pst->u.lcaret.carets[l]!=0 || sc->lig_caret_cnt_fixed )
- putshort(lcar,pst->u.lcaret.carets[l]);
- }
- last = i;
- for ( j=i+1, ++tot; j<at->gi.gcnt && at->gi.bygid[j]!=-1; ++j ) {
- if ( (pst = haslcaret(sc = sf->glyphs[at->gi.bygid[j]]))== NULL )
- break;
- ++tot;
- last = j;
- if ( k==2 ) {
- putshort(lcar,offset);
- offset += 2 + 2*LigCaretCnt(sc);
- } else if ( k==3 ) {
- putshort(lcar,LigCaretCnt(sc));
- for ( l=0; l<pst->u.lcaret.cnt; ++l )
- if ( pst->u.lcaret.carets[l]!=0 || sc->lig_caret_cnt_fixed )
- putshort(lcar,pst->u.lcaret.carets[l]);
- }
- }
- if ( k==1 ) {
- putshort(lcar,last);
- putshort(lcar,i);
- putshort(lcar,offset);
- offset += 2*tot;
- }
- ++seg_cnt;
- i = j-1;
- }
- if ( k==0 ) {
- if ( seg_cnt==0 )
-return;
- lcar = tmpfile2();
- putlong(lcar, 0x00010000); /* version */
- putshort(lcar,0); /* data are distances (not points) */
-
- putshort(lcar,4); /* Lookup table format 4 */
- /* Binary search header */
- putshort(lcar,6); /* Entry size */
- putshort(lcar,seg_cnt); /* Number of segments */
- for ( j=0,l=1; l<=seg_cnt; l<<=1, ++j );
- --j; l>>=1;
- putshort(lcar,6*l);
- putshort(lcar,j);
- putshort(lcar,6*(seg_cnt-l));
- offset = /*4+2+*/6*2 + seg_cnt*6 + 6 /* fake segment at end */;
- /* Offset relative to lookup table, not to lcar_start */
- /* Or, that's true while we build the lookup table. Once we */
- /* start working on the data offsets they are relative to */
- /* lcar_start */
- } else if ( k==1 ) { /* flag entry */
- putshort(lcar,0xffff);
- putshort(lcar,0xffff);
- putshort(lcar,0);
-
- offset += 6; /* Now offsets are relative to lcar_start */
- }
- }
- at->lcar = lcar;
- at->lcarlen = ftell(at->lcar);
- if ( at->lcarlen&2 )
- putshort(at->lcar,0);
-}
-
-/* ************************************************************************** */
-/* ************************* The 'morx' table ************************* */
-/* ************************* (and 'feat') ************************* */
-/* ************************************************************************** */
-
-/* Each lookup gets its own subtable, so there may be multiple subtables */
-/* with the same feature/setting. The subtables will be ordered the same */
-/* way the lookups are, which might lead to awkwardness if there are many */
-/* chains and the same feature occurs in several of them */
-/* (only the default language will be used) */
-struct feature {
- int16 featureType, featureSetting;
- MacFeat *mf, *smf;
- struct macsetting *ms, *sms;
- unsigned int vertOnly: 1;
- unsigned int r2l: 1; /* I think this is the "descending" flag */
- unsigned int needsOff: 1;
- unsigned int singleMutex: 1;
- unsigned int dummyOff: 1;
- uint8 subtable_type;
- int chain;
- int32 flag, offFlags;
- uint32 feature_start;
- uint32 feature_len; /* Does not include header yet */
- struct feature *next; /* features in output order */
- struct feature *nexttype; /* features in feature/setting order */
- struct feature *nextsame; /* all features with the same feature/setting */
- int setting_cnt, setting_index, real_index;
-};
-
-static struct feature *featureFromSubtable(SplineFont *sf, struct lookup_subtable *sub );
-static int PSTHasTag(PST *pst, uint32 tag);
-
-static void morxfeaturesfree(struct feature *features) {
- struct feature *n;
-
- for ( ; features!=NULL; features=n ) {
- n = features->next;
- chunkfree( features,sizeof(*features) );
- }
-}
-
-static void mort_classes(FILE *temp,SplineFont *sf,struct glyphinfo *gi) {
- int first, last, i, cnt;
- /* Mort tables just have a trimmed byte array for the classes */
-
- for ( first=0; first<gi->gcnt; ++first )
- if ( gi->bygid[first]!=-1 && sf->glyphs[gi->bygid[first]]->lsidebearing!=1 )
- break;
- for ( last=gi->gcnt-1; last>first; --last )
- if ( gi->bygid[last]!=-1 && sf->glyphs[gi->bygid[last]]->lsidebearing!=1 )
- break;
- cnt = last-first+1;
-
- putshort(temp,first);
- putshort(temp,cnt);
- for ( i=first; i<=last; ++i )
- if ( gi->bygid[i]==-1 )
- putc(1,temp);
- else
- putc(sf->glyphs[gi->bygid[i]]->lsidebearing,temp);
- if ( cnt&1 )
- putc(1,temp); /* Pad to a word boundary */
-}
-
-static void morx_lookupmap(FILE *temp,SplineChar **glyphs,uint16 *maps,int gcnt) {
- int i, j, k, l, seg_cnt, tot, last, offset;
- /* We do four passes. The first just calculates how much space we will need (if any) */
- /* the second provides the top-level lookup table structure */
- /* the third provides the arrays of offsets needed for type 4 lookup tables */
-
- for ( k=0; k<3; ++k ) {
- for ( i=seg_cnt=tot=0; i<gcnt; ++i ) {
- if ( glyphs[i]==NULL )
- continue;
- if ( k==1 )
- tot = 0;
- else if ( k==2 ) {
- putshort(temp,maps[i]);
- }
- last = i;
- for ( j=i+1, ++tot; j<gcnt && glyphs[j]!=NULL && glyphs[j]->ttf_glyph==glyphs[i]->ttf_glyph+j-i; ++j ) {
- ++tot;
- last = j;
- if ( k==2 ) {
- putshort(temp,maps[j]);
- }
- }
- if ( k==1 ) {
- putshort(temp,glyphs[last]->ttf_glyph);
- putshort(temp,glyphs[i]->ttf_glyph);
- putshort(temp,offset);
- offset += 2*tot;
- }
- ++seg_cnt;
- i = j-1;
- }
- if ( k==0 ) {
- putshort(temp,4); /* Lookup table format 4 */
- /* Binary search header */
- putshort(temp,6); /* Entry size */
- putshort(temp,seg_cnt); /* Number of segments */
- for ( j=0,l=1; l<=seg_cnt; l<<=1, ++j );
- --j; l>>=1;
- putshort(temp,6*l);
- putshort(temp,j);
- putshort(temp,6*(seg_cnt-l));
- if ( seg_cnt==0 )
-return;
- offset = 6*2 + seg_cnt*6 + 6;
- } else if ( k==1 ) { /* flag entry */
- putshort(temp,0xffff);
- putshort(temp,0xffff);
- putshort(temp,0);
- }
- }
-}
-
-static void morx_dumpSubsFeature(FILE *temp,SplineChar **glyphs,uint16 *maps,int gcnt) {
- morx_lookupmap(temp,glyphs,maps,gcnt);
-}
-
-static struct feature *aat_dumpmorx_substitutions(struct alltabs *at, SplineFont *sf,
- FILE *temp, struct feature *features, struct lookup_subtable *sub) {
- int i, k, gcnt;
- SplineChar *sc, *msc, **glyphs;
- uint16 *maps;
- struct feature *cur;
- PST *pst;
-
- for ( k=0; k<2; ++k ) {
- gcnt = 0;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- sc = sf->glyphs[at->gi.bygid[i]];
- for ( pst=sc->possub; pst!=NULL && pst->subtable!=sub; pst=pst->next );
- if ( pst!=NULL ) {
- if ( k==1 ) {
- msc = SFGetChar(sf,-1,pst->u.subs.variant);
- glyphs[gcnt] = sc;
- if ( msc!=NULL && msc->ttf_glyph!=-1 ) {
- maps[gcnt++] = msc->ttf_glyph;
- } else if ( msc==NULL &&
- strcmp(pst->u.subs.variant,MAC_DELETED_GLYPH_NAME)==0 ) {
- maps[gcnt++] = 0xffff;
- }
- } else
- ++gcnt;
- }
- }
- if ( k==0 ) {
- if ( gcnt==0 )
-return( features );
- glyphs = malloc((gcnt+1)*sizeof(SplineChar *));
- maps = malloc((gcnt+1)*sizeof(uint16));
- } else {
- glyphs[gcnt] = NULL; maps[gcnt] = 0;
- }
- }
-
- cur = featureFromSubtable(sf,sub);
- cur->next = features;
- cur->r2l = sub->lookup->lookup_flags&pst_r2l ? true : false;
- features = cur;
- cur->subtable_type = 4;
- cur->feature_start = ftell(temp);
- morx_dumpSubsFeature(temp,glyphs,maps,gcnt);
- if ( (ftell(temp)-cur->feature_start)&1 )
- putc('\0',temp);
- if ( (ftell(temp)-cur->feature_start)&2 )
- putshort(temp,0);
- cur->feature_len = ftell(temp)-cur->feature_start;
- free(glyphs); free(maps);
-return( features);
-}
-
-static LigList *LigListMatchSubtable(SplineFont *sf,LigList *ligs,
- struct lookup_subtable *sub) {
- LigList *l;
-
- for ( l=ligs; l!=NULL; l=l->next )
- if ( l->lig->subtable==sub )
-return( l );
-return( NULL );
-}
-
-static int IsMarkChar( SplineChar *sc ) {
- AnchorPoint *ap;
-
- ap=sc->anchor;
- while ( ap!=NULL && (ap->type==at_centry || ap->type==at_cexit) )
- ap = ap->next;
- if ( ap!=NULL && (ap->type==at_mark || ap->type==at_basemark) )
-return( true );
-
-return( false );
-}
-
-struct transition { uint16 next_state, dontconsume, ismark, trans_ent; LigList *l; };
-struct trans_entries { uint16 next_state, flags, act_index; LigList *l; };
-static void morx_dumpLigaFeature(FILE *temp,SplineChar **glyphs,int gcnt,
- struct lookup_subtable *sub, struct alltabs *at, SplineFont *sf,
- int ignoremarks) {
- LigList *l;
- struct splinecharlist *comp;
- uint16 *used = calloc(at->maxp.numGlyphs,sizeof(uint16));
- SplineChar **cglyphs;
- uint16 *map;
- int i,j,k,class, state_max, state_cnt, base, last;
- uint32 start;
- struct transition **states;
- struct trans_entries *trans;
- int trans_cnt;
- int maxccnt=0;
- int acnt, lcnt, charcnt;
- uint32 *actions;
- uint16 *components, *lig_glyphs;
- uint32 here;
- struct splinecharlist *scl;
- int anymarks;
-
- /* figure out the classes (one for each character used to make a lig) */
- for ( i=0; i<gcnt; ++i ) {
- used[glyphs[i]->ttf_glyph] = true;
- for ( l=glyphs[i]->ligofme; l!=NULL; l=l->next ) if ( l->lig->subtable==sub ) {
- for ( comp = l->components; comp!=NULL; comp=comp->next )
- used[comp->sc->ttf_glyph] = true;
- }
- }
- class = 4;
- for ( i=0; i<at->maxp.numGlyphs; ++i ) if ( used[i] )
- used[i] = class++;
- anymarks = false;
- charcnt = class;
- if ( ignoremarks ) {
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- if ( IsMarkChar(sf->glyphs[at->gi.bygid[i]])) {
- anymarks = true;
- ++charcnt;
- used[i] = class;
- }
- }
- if ( anymarks )
- ++class;
- }
- cglyphs = malloc((charcnt+1)*sizeof(SplineChar *));
- map = malloc((charcnt+1)*sizeof(uint16));
- j=0;
- for ( i=k=0; i<at->maxp.numGlyphs; ++i ) if ( used[i] ) {
- j = at->gi.bygid[i];
- if ( j!=-1 ) {
- cglyphs[k] = sf->glyphs[j];
- map[k++] = used[i];
- }
- }
- cglyphs[k] = NULL;
-
- start = ftell(temp);
- putlong(temp,class);
- putlong(temp,7*sizeof(uint32));
- putlong(temp,0); /* Fill in later */
- putlong(temp,0);
- putlong(temp,0);
- putlong(temp,0);
- putlong(temp,0);
- morx_lookupmap(temp,cglyphs,map,k); /* dump the class lookup table */
- free( cglyphs ); free( map );
- here = ftell(temp);
- fseek(temp,start+2*sizeof(uint32),SEEK_SET);
- putlong(temp,here-start); /* Point to start of state arrays */
- fseek(temp,0,SEEK_END);
-
- /* Now build the state machine */
- /* Note: the ligofme list is so ordered that the longest ligatures come first */
- /* we will depend on that in the case of "ffl", "ffi", "ff" */
- state_max = 40; state_cnt = 2;
- states = malloc(state_max*sizeof(struct transition *));
- states[0] = calloc(class,sizeof(struct transition)); /* Initial state */
- states[1] = calloc(class,sizeof(struct transition)); /* other Initial state */
- for ( i=0; i<gcnt; ++i ) {
- if ( state_cnt>=state_max )
- states = realloc(states,(state_max += 40)*sizeof(struct transition *));
- base = state_cnt;
- states[0][used[glyphs[i]->ttf_glyph]].next_state = state_cnt;
- states[1][used[glyphs[i]->ttf_glyph]].next_state = state_cnt;
- states[state_cnt++] = calloc(class,sizeof(struct transition));
- for ( l=glyphs[i]->ligofme; l!=NULL; l=l->next ) if ( l->lig->subtable==sub ) {
- if ( l->ccnt > maxccnt ) maxccnt = l->ccnt;
- last = base;
- for ( comp = l->components; comp!=NULL; comp=comp->next ) {
- if ( states[last][used[comp->sc->ttf_glyph]].next_state==0 ) {
- if ( comp->next==NULL )
- states[last][used[comp->sc->ttf_glyph]].l = l;
- else {
- states[last][used[comp->sc->ttf_glyph]].next_state = state_cnt;
- if ( state_cnt>=state_max )
- states = realloc(states,(state_max += 40)*sizeof(struct transition *));
- last = state_cnt;
- states[state_cnt++] = calloc(class,sizeof(struct transition));
- }
- } else {
- last = states[last][used[comp->sc->ttf_glyph]].next_state;
- if ( comp->next==NULL ) {
- /* this is where we depend on the ordering */
- for ( j=0; j<class; ++j )
- if ( states[last][j].next_state==0 && states[last][j].l==NULL ) {
- states[last][j].l = l;
- states[last][j].dontconsume = true;
- /* the next state should continue to be 0 (initial) */
- }
- }
- }
- }
- }
- }
- if ( anymarks ) {
- /* behavior for a mark is the same everywhere: stay in current state */
- /* do no operations. consume the mark */
- for ( i=0; i<state_cnt; ++i ) {
- states[i][class-1].next_state = i;
- states[i][class-1].ismark = true;
- }
- }
- /* Ok, we've got the state machine now. Convert it into apple's wierd */
- /* (space saving) format */
- trans = malloc(class*state_cnt*sizeof(struct trans_entries));
- trans_cnt = 0;
- for ( i=0; i<state_cnt; ++i ) for ( j=0; j<class; ++j ) {
- if ( states[i][j].ismark )
- k = trans_cnt;
- else for ( k=0; k<trans_cnt; ++k ) {
- if ( trans[k].next_state==states[i][j].next_state &&
- (trans[k].flags&0x4000?1:0) == states[i][j].dontconsume &&
- trans[k].l ==states[i][j].l )
- break;
- }
- states[i][j].trans_ent = k;
- if ( k==trans_cnt ) {
- trans[k].next_state = states[i][j].next_state;
- trans[k].l = states[i][j].l;
- trans[k].flags = 0;
- if ( states[i][j].dontconsume )
- trans[k].flags = 0x4000;
- else if ( states[i][j].ismark )
- /* Do nothing */;
- else if ( trans[k].next_state!=0 || trans[k].l!=NULL )
- trans[k].flags = 0x8000;
- if ( trans[k].l!=NULL )
- trans[k].flags |= 0x2000;
- trans[k].act_index = 0;
- ++trans_cnt;
- }
- }
- /* Oops. Bug. */
- /* Suppose we have two ligatures f+l=>fl & s+t->st. */
- /* Suppose we get input "fst" */
- /* Now the state machine we've built so far will go to the f branch, see */
- /* the "s" and go back to state 0 */
- /* Obviously that's wrong, we've lost the st. So either we go back to 0 */
- /* but don't advance the glyph, or we take the transition from state 0 */
- /* and copy it to here. The second is easier for me just now */
- for ( i=2; i<state_cnt; ++i ) for ( j=4; j<class; ++j ) {
- if ( states[i][j].trans_ent == 0 && states[0][j].trans_ent != 0 )
- states[i][j].trans_ent = states[0][j].trans_ent;
- }
-
- /* Dump out the state machine */
- for ( i=0; i<state_cnt; ++i ) for ( j=0; j<class; ++j )
- putshort( temp, states[i][j].trans_ent );
-
- /* Now figure out the ligature actions (and all the other tables) */
- actions = malloc(trans_cnt*maxccnt*sizeof(uint32));
- components = malloc(trans_cnt*maxccnt*sizeof(uint16));
- lig_glyphs = malloc(trans_cnt*sizeof(uint16));
- acnt = lcnt = 0;
- for ( i=0; i<trans_cnt; ++i ) if ( trans[i].l!=NULL ) {
- lig_glyphs[lcnt] = trans[i].l->lig->u.lig.lig->ttf_glyph;
- /* component Glyphs get popped off the stack in the reverse order */
- /* so we must built our tables backwards */
- components[acnt+trans[i].l->ccnt-1] = lcnt;
- actions[acnt+trans[i].l->ccnt-1] = 0x80000000 |
- ((acnt+trans[i].l->ccnt-1 - trans[i].l->first->ttf_glyph)&0x3fffffff);
- for ( scl=trans[i].l->components,j=trans[i].l->ccnt-2; scl!=NULL; scl=scl->next, --j ) {
- components[acnt+j] = 0;
- actions[acnt+j] = (acnt+j - scl->sc->ttf_glyph)&0x3fffffff;
- }
- trans[i].act_index = acnt;
- ++lcnt;
- acnt += trans[i].l->ccnt;
- }
-
- /* Now we know how big all the tables will be. Dump out their locations */
- here = ftell(temp);
- fseek(temp,start+3*sizeof(uint32),SEEK_SET);
- putlong(temp,here-start); /* Point to start of entry array */
- putlong(temp,here-start+6*trans_cnt); /* Point to start of actions */
- putlong(temp,here-start+6*trans_cnt+4*acnt);/* Point to start of components */
- putlong(temp,here-start+6*trans_cnt+6*acnt);/* Point to start of ligatures */
- fseek(temp,0,SEEK_END);
-
- /* Now dump the transitions */
- for ( i=0; i<trans_cnt; ++i ) {
- putshort(temp,trans[i].next_state);
- putshort(temp,trans[i].flags);
- putshort(temp,trans[i].act_index);
- }
- /* And the actions */
- for ( i=0; i<acnt; ++i )
- putlong(temp,actions[i]);
- /* And the components */
- for ( i=0; i<acnt; ++i )
- putshort(temp,components[i]);
- /* Do A simple check on the validity of what we've done */
- if ( here+6*trans_cnt+6*acnt != ftell(temp) )
- IError( "Offset wrong in morx ligature table\n" );
- /* And finally the ligature glyph indeces */
- for ( i=0; i<lcnt; ++i )
- putshort(temp,lig_glyphs[i]);
-
- /* clean up */
- free(actions); free(components); free(lig_glyphs);
- free(trans);
- for ( i=0; i<state_cnt; ++i )
- free(states[i]);
- free(states);
- free(used);
-}
-
-static struct feature *aat_dumpmorx_ligatures(struct alltabs *at, SplineFont *sf,
- FILE *temp, struct feature *features, struct lookup_subtable *sub) {
- int i, k, gcnt;
- SplineChar *sc, *ssc, **glyphs;
- struct feature *cur;
- LigList *l;
-
- glyphs = malloc((at->maxp.numGlyphs+1)*sizeof(SplineChar *));
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL )
- sf->glyphs[i]->ticked = false;
-
- for ( i=0; i<at->gi.gcnt; ++i )
- if ( at->gi.bygid[i]!=-1 && !(sc=sf->glyphs[at->gi.bygid[i]])->ticked &&
- (l = LigListMatchSubtable(sf,sc->ligofme,sub))!=NULL ) {
- int ignoremarks = sub->lookup->lookup_flags & pst_ignorecombiningmarks ? 1 : 0 ;
- for ( k=i, gcnt=0; k<at->gi.gcnt; ++k )
- if ( at->gi.bygid[k]!=-1 &&
- (ssc=sf->glyphs[at->gi.bygid[k]])!=NULL && !ssc->ticked &&
- LigListMatchSubtable(sf,ssc->ligofme,sub)) {
- glyphs[gcnt++] = ssc;
- ssc->ticked = true;
- }
- glyphs[gcnt] = NULL;
- cur = featureFromSubtable(sf,sub);
- cur->next = features;
- features = cur;
- cur->subtable_type = 2; /* ligature */
- cur->feature_start = ftell(temp);
- morx_dumpLigaFeature(temp,glyphs,gcnt,sub,at,sf,ignoremarks);
- if ( (ftell(temp)-cur->feature_start)&1 )
- putc('\0',temp);
- if ( (ftell(temp)-cur->feature_start)&2 )
- putshort(temp,0);
- cur->feature_len = ftell(temp)-cur->feature_start;
- cur->r2l = sub->lookup->lookup_flags&pst_r2l ? true : false;
- }
-
- free(glyphs);
-return( features);
-}
-
-static void morx_dumpnestedsubs(FILE *temp,SplineFont *sf,OTLookup *otl,struct glyphinfo *gi) {
- int i, j, gcnt;
- PST *pst;
- SplineChar **glyphs, *sc;
- uint16 *map;
- struct lookup_subtable *sub = otl->subtables; /* Mac can't have more than one subtable/lookup */
-
- for ( j=0; j<2; ++j ) {
- gcnt = 0;
- for ( i = 0; i<gi->gcnt; ++i ) if ( gi->bygid[i]!=-1 ) {
- for ( pst=sf->glyphs[gi->bygid[i]]->possub;
- pst!=NULL && pst->subtable!=sub; pst=pst->next );
- if ( pst!=NULL && pst->type==pst_substitution &&
- (sc=SFGetChar(sf,-1,pst->u.subs.variant))!=NULL &&
- sc->ttf_glyph!=-1 ) {
- if ( j ) {
- glyphs[gcnt] = sf->glyphs[gi->bygid[i]];
- map[gcnt] = sc->ttf_glyph;
- }
- ++gcnt;
- }
- }
- if ( !j ) {
- glyphs = malloc((gcnt+1)*sizeof(SplineChar *));
- map = malloc(gcnt*sizeof(uint16));
- glyphs[gcnt] = NULL;
- }
- }
- morx_lookupmap(temp,glyphs,map,gcnt);
- free(glyphs);
- free(map);
-}
-
-static uint16 *NamesToGlyphs(SplineFont *sf,char *names,uint16 *cnt) {
- char *pt, *start;
- int c, ch;
- uint16 *ret;
- SplineChar *sc;
-
- for ( c=0, pt=names; *pt; ++pt )
- if ( *pt==' ' ) ++c;
- ret = malloc((c+1)*sizeof(uint16));
-
- for ( c=0, pt=names; *pt; ) {
- while ( *pt==' ' ) ++pt;
- if ( *pt=='\0' )
- break;
- start = pt;
- while ( *pt!=' ' && *pt!='\0' ) ++pt;
- ch = *pt; *pt='\0';
- sc = SFGetChar(sf,-1,start);
- *pt = ch;
- if ( sc!=NULL && sc->ttf_glyph!=-1 )
- ret[c++] = sc->ttf_glyph;
- }
- *cnt = c;
-return( ret );
-}
-
-static int morx_dumpASM(FILE *temp,ASM *sm, struct alltabs *at, SplineFont *sf ) {
- int i, j, k, gcnt, ch;
- char *pt, *end;
- uint16 *map;
- SplineChar **glyphs, *sc;
- int stcnt, tcnt;
- struct ins { char *names; uint16 len,pos; uint16 *glyphs; } *subsins=NULL;
- OTLookup **subslookups=NULL;
- uint32 start, here, substable_pos, state_offset;
- struct transdata { uint16 transition, mark_index, cur_index; } *transdata;
- struct trans { uint16 ns, flags, mi, ci; } *trans;
- int ismort = sm->type == asm_kern;
- FILE *kernvalues;
-
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i]!=NULL )
- sf->glyphs[i]->lsidebearing = 1;
-
- gcnt = 0;
- for ( i=4; i<sm->class_cnt; ++i ) {
- for ( pt = sm->classes[i]; ; pt=end ) {
- while ( *pt==' ' ) ++pt;
- if ( *pt=='\0' )
- break;
- for ( end=pt; *end!='\0' && *end!=' '; ++end );
- ch = *end; *end = '\0';
- sc = SFGetChar(sf,-1,pt);
- *end = ch;
- if ( sc!=NULL ) {
- sc->lsidebearing = i;
- ++gcnt;
- }
- }
- }
- glyphs = malloc((gcnt+1)*sizeof(SplineChar *));
- map = malloc((gcnt+1)*sizeof(uint16));
- gcnt = 0;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 && sf->glyphs[at->gi.bygid[i]]->lsidebearing!=1 ) {
- glyphs[gcnt] = sf->glyphs[at->gi.bygid[i]];
- map[gcnt++] = sf->glyphs[at->gi.bygid[i]]->lsidebearing;
- }
- glyphs[gcnt] = NULL;
-
- /* Give each subs tab an index into the mac's substitution lookups */
- transdata = calloc(sm->state_cnt*sm->class_cnt,sizeof(struct transdata));
- stcnt = 0;
- subslookups = NULL; subsins = NULL;
- if ( sm->type==asm_context ) {
- subslookups = malloc(2*sm->state_cnt*sm->class_cnt*sizeof(OTLookup));
- for ( j=0; j<sm->state_cnt*sm->class_cnt; ++j ) {
- struct asm_state *this = &sm->state[j];
- transdata[j].mark_index = transdata[j].cur_index = 0xffff;
- if ( this->u.context.mark_lookup!=NULL ) {
- for ( i=0; i<stcnt; ++i )
- if ( subslookups[i]==this->u.context.mark_lookup )
- break;
- if ( i==stcnt )
- subslookups[stcnt++] = this->u.context.mark_lookup;
- transdata[j].mark_index = i;
- }
- if ( this->u.context.cur_lookup!=NULL ) {
- for ( i=0; i<stcnt; ++i )
- if ( subslookups[i]==this->u.context.cur_lookup )
- break;
- if ( i==stcnt )
- subslookups[stcnt++] = this->u.context.cur_lookup;
- transdata[j].cur_index = i;
- }
- }
- } else if ( sm->type==asm_insert ) {
- subsins = malloc(2*sm->state_cnt*sm->class_cnt*sizeof(struct ins));
- for ( j=0; j<sm->state_cnt*sm->class_cnt; ++j ) {
- struct asm_state *this = &sm->state[j];
- transdata[j].mark_index = transdata[j].cur_index = 0xffff;
- if ( this->u.insert.mark_ins!=0 ) {
- for ( i=0; i<stcnt; ++i )
- if ( strcmp(subsins[i].names,this->u.insert.mark_ins)==0 )
- break;
- if ( i==stcnt ) {
- subsins[stcnt].pos = stcnt==0 ? 0 : subsins[stcnt-1].pos +
- subsins[stcnt-1].len;
- subsins[stcnt].names = this->u.insert.mark_ins;
- subsins[stcnt].glyphs = NamesToGlyphs(sf,subsins[stcnt].names,&subsins[stcnt].len);
- ++stcnt;
- }
- transdata[j].mark_index = subsins[i].pos;
- }
- if ( this->u.insert.cur_ins!=0 ) {
- for ( i=0; i<stcnt; ++i )
- if ( strcmp(subsins[i].names,this->u.insert.cur_ins)==0 )
- break;
- if ( i==stcnt ) {
- subsins[stcnt].pos = stcnt==0 ? 0 : subsins[stcnt-1].pos +
- subsins[stcnt-1].len;
- subsins[stcnt].names = this->u.insert.cur_ins;
- subsins[stcnt].glyphs = NamesToGlyphs(sf,subsins[stcnt].names,&subsins[stcnt].len);
- ++stcnt;
- }
- transdata[j].cur_index = subsins[i].pos;
- }
- }
- } else if ( sm->type==asm_kern ) {
- int off=0;
- kernvalues = tmpfile2();
- for ( j=0; j<sm->state_cnt*sm->class_cnt; ++j ) {
- struct asm_state *this = &sm->state[j];
- transdata[j].mark_index = 0xffff;
- if ( this->u.kern.kcnt!=0 ) {
- for ( k=0; k<j; ++k )
- if ( sm->state[k].u.kern.kcnt==this->u.kern.kcnt &&
- memcmp(sm->state[k].u.kern.kerns,this->u.kern.kerns,
- this->u.kern.kcnt*sizeof(int16))==0 )
- break;
- if ( k!=j )
- transdata[j].mark_index = transdata[k].mark_index;
- else {
- transdata[j].mark_index = off;
- off += this->u.kern.kcnt*sizeof(int16);
- /* kerning values must be output backwards */
- for ( k=this->u.kern.kcnt-1; k>=1; --k )
- putshort(kernvalues,this->u.kern.kerns[k]&~1);
- /* And the last one must be odd */
- putshort(kernvalues,this->u.kern.kerns[0]|1);
- }
- }
- }
- }
-
- trans = malloc(sm->state_cnt*sm->class_cnt*sizeof(struct trans));
- tcnt = 0;
- for ( j=0; j<sm->state_cnt*sm->class_cnt; ++j ) {
- struct asm_state *this = &sm->state[j];
- for ( i=0; i<tcnt; ++i )
- if ( trans[i].ns==this->next_state && trans[i].flags==this->flags &&
- trans[i].mi==transdata[j].mark_index &&
- trans[i].ci==transdata[j].cur_index )
- break;
- if ( i==tcnt ) {
- trans[tcnt].ns = this->next_state;
- trans[tcnt].flags = this->flags;
- trans[tcnt].mi = transdata[j].mark_index;
- trans[tcnt++].ci = transdata[j].cur_index;
- }
- transdata[j].transition = i;
- }
-
-
- /* Output the header */
- start = ftell(temp);
- if ( ismort /* old format still used for kerning */ ) {
- putshort(temp,sm->class_cnt);
- putshort(temp,5*sizeof(uint16)); /* class offset */
- putshort(temp,0); /* state offset */
- putshort(temp,0); /* transition entry offset */
- putshort(temp,0); /* kerning values offset */
- mort_classes(temp,sf,&at->gi); /* dump the class table */
- } else {
- putlong(temp,sm->class_cnt);
- if ( sm->type==asm_indic ) {
- putlong(temp,4*sizeof(uint32)); /* class offset */
- putlong(temp,0); /* state offset */
- putlong(temp,0); /* transition entry offset */
- } else {
- putlong(temp,5*sizeof(uint32)); /* class offset */
- putlong(temp,0); /* state offset */
- putlong(temp,0); /* transition entry offset */
- putlong(temp,0); /* substitution/insertion table offset */
- }
- morx_lookupmap(temp,glyphs,map,gcnt);/* dump the class lookup table */
- }
- free(glyphs); free(map);
-
-
- state_offset = ftell(temp)-start;
- if ( ismort ) {
- fseek(temp,start+2*sizeof(uint16),SEEK_SET);
- putshort(temp,state_offset); /* Point to start of state arrays */
- } else {
- fseek(temp,start+2*sizeof(uint32),SEEK_SET);
- putlong(temp,state_offset); /* Point to start of state arrays */
- }
- fseek(temp,0,SEEK_END);
-
- if ( ismort ) {
- for ( j=0; j<sm->state_cnt*sm->class_cnt; ++j )
- putc(transdata[j].transition,temp);
- if ( ftell(temp)&1 )
- putc(0,temp); /* Pad to a word boundry */
- } else {
- for ( j=0; j<sm->state_cnt*sm->class_cnt; ++j )
- putshort(temp,transdata[j].transition);
- }
- free(transdata);
-
- here = ftell(temp);
- if ( ismort ) {
- fseek(temp,start+3*sizeof(uint16),SEEK_SET);
- putshort(temp,here-start); /* Point to start of transition arrays */
- } else {
- fseek(temp,start+3*sizeof(uint32),SEEK_SET);
- putlong(temp,here-start); /* Point to start of transition arrays */
- }
- fseek(temp,0,SEEK_END);
-
- /* Now the transitions */
- if ( sm->type==asm_kern ) {
- substable_pos = here+tcnt*2*sizeof(int16);
- for ( i=0; i<tcnt; ++i ) {
- /* mort tables use an offset rather than the state number */
- putshort(temp,trans[i].ns*sm->class_cnt+state_offset);
- if ( trans[i].mi!=0xffff )
- trans[i].flags |= substable_pos-start+trans[i].mi;
- putshort(temp,trans[i].flags);
- }
- } else {
- for ( i=0; i<tcnt; ++i ) {
- putshort(temp,trans[i].ns);
- putshort(temp,trans[i].flags);
- if ( sm->type!=asm_indic && sm->type!=asm_kern ) {
- putshort(temp,trans[i].mi );
- putshort(temp,trans[i].ci );
- }
- }
- }
- free(trans);
-
- if ( sm->type==asm_context ) {
- substable_pos = ftell(temp);
- fseek(temp,start+4*sizeof(uint32),SEEK_SET);
- putlong(temp,substable_pos-start); /* Point to start of substitution lookup offsets */
- fseek(temp,0,SEEK_END);
-
- /* And finally the substitutions */
- for ( i=0; i<stcnt; ++i )
- putlong(temp,0); /* offsets to the substitutions */
- for ( i=0; i<stcnt; ++i ) {
- here = ftell(temp);
- fseek(temp,substable_pos+i*sizeof(uint32),SEEK_SET);
- putlong(temp,here-substable_pos);
- fseek(temp,0,SEEK_END);
- morx_dumpnestedsubs(temp,sf,subslookups[i],&at->gi);
- }
- free(subslookups);
- } else if ( sm->type==asm_insert ) {
- substable_pos = ftell(temp);
- fseek(temp,start+4*sizeof(uint32),SEEK_SET);
- putlong(temp,substable_pos-start); /* Point to start of insertions */
- fseek(temp,0,SEEK_END);
-
- for ( i=0; i<stcnt; ++i ) {
- for ( j=0; j<subsins[i].len; ++j )
- putshort(temp,subsins[i].glyphs[j]);
- free(subsins[i].glyphs);
- }
- free(subsins);
- } else if ( sm->type==asm_kern ) {
- if ( substable_pos!=ftell(temp) )
- IError( "Kern Values table in wrong place.\n" );
- fseek(temp,start+4*sizeof(uint16),SEEK_SET);
- putshort(temp,substable_pos-start); /* Point to start of insertions */
- fseek(temp,0,SEEK_END);
- if ( !ttfcopyfile(temp,kernvalues,substable_pos,"kern-subtable")) at->error = true;
- }
-return( true );
-}
-
-static struct feature *aat_dumpmorx_asm(struct alltabs *at, SplineFont *sf,
- FILE *temp, struct feature *features, ASM *sm) {
- struct feature *cur;
-
- cur = featureFromSubtable(sf,sm->subtable);
- cur->vertOnly = sm->flags&0x8000?1:0;
- cur->r2l = sm->flags&0x4000?1:0;
- cur->subtable_type = sm->type; /* contextual glyph subs */
- cur->feature_start = ftell(temp);
- if ( morx_dumpASM(temp,sm,at,sf)) {
- cur->next = features;
- features = cur;
- if ( (ftell(temp)-cur->feature_start)&1 )
- putc('\0',temp);
- if ( (ftell(temp)-cur->feature_start)&2 )
- putshort(temp,0);
- cur->feature_len = ftell(temp)-cur->feature_start;
- } else
- chunkfree(cur,sizeof(struct feature));
-return( features);
-}
-
-static struct feature *aat_dumpmorx_cvtopentype(struct alltabs *at, SplineFont *sf,
- FILE *temp, struct feature *features, struct lookup_subtable *sub) {
- ASM *sm;
-
- if ( FPSTisMacable(sf,sub->fpst)) {
- sm = ASMFromFPST(sf,sub->fpst,true);
- if ( sm!=NULL ) {
- features = aat_dumpmorx_asm(at,sf,temp,features,sm);
- ASMFree(sm);
- }
- }
-return( features );
-}
-
-static int IsOtfArabicFormFeature(OTLookup *otl) {
- FeatureScriptLangList *fl;
-
- for ( fl=otl->features; fl!=NULL; fl=fl->next ) {
- if (( fl->featuretag == CHR('i','n','i','t') ||
- fl->featuretag==CHR('m','e','d','i') ||
- fl->featuretag==CHR('f','i','n','a') ||
- fl->featuretag==CHR('i','s','o','l') ) &&
- scriptsHaveDefault(fl->scripts))
-return( true );
- }
-return( false );
-}
-
-static int HasCursiveConnectionSM(SplineFont *sf) {
- int featureType, featureSetting;
- uint32 tag;
- ASM *sm;
-
- if ( OTTagToMacFeature(CHR('i','s','o','l'),&featureType,&featureSetting) ) {
- tag = (featureType<<16) | featureSetting;
- for ( sm = sf->sm; sm!=NULL; sm=sm->next ) {
- if ( sm->subtable->lookup->features->featuretag==tag )
-return( true );
- }
- }
- for ( sm = sf->sm; sm!=NULL; sm=sm->next ) {
- if ( sm->subtable->lookup->features->featuretag==CHR('i','s','o','l') )
-return( true );
- }
-return( false );
-}
-
-static uint32 *FormedScripts(SplineFont *sf) {
- OTLookup *otl;
- uint32 *ret = NULL;
- int scnt=0, smax=0;
- FeatureScriptLangList *fl;
- struct scriptlanglist *sl;
- int i;
-
- for ( otl= sf->gsub_lookups; otl!=NULL; otl=otl->next ) {
- if ( otl->lookup_type == gsub_single ) {
- for ( fl=otl->features; fl!=NULL; fl=fl->next ) {
- if ( fl->featuretag == CHR('i','n','i','t') ||
- fl->featuretag==CHR('m','e','d','i') ||
- fl->featuretag==CHR('f','i','n','a') ||
- fl->featuretag==CHR('i','s','o','l') ) {
- for ( sl=fl->scripts; sl!=NULL; sl=sl->next ) {
- for ( i=0; i<sl->lang_cnt; ++i ) {
- if ( (i<MAX_LANG ? sl->langs[i] : sl->morelangs[i-MAX_LANG])==DEFAULT_LANG ) {
- if ( scnt<=smax )
- ret = realloc(ret,(smax+=5)*sizeof(uint32));
- ret[scnt++] = sl->script;
- }
- }
- }
- }
- }
- }
- }
- if ( scnt==0 )
-return( NULL );
- if ( scnt<=smax )
- ret = realloc(ret,(smax+=1)*sizeof(uint32));
- ret[scnt] = 0;
-return( ret );
-}
-
-int Macable(SplineFont *sf, OTLookup *otl) {
- int ft, fs;
- FeatureScriptLangList *features;
-
- switch ( otl->lookup_type ) {
- /* These lookup types are mac only */
- case kern_statemachine: case morx_indic: case morx_context: case morx_insert:
- return( true );
- /* These lookup types or OpenType only */
- case gsub_multiple: case gsub_alternate:
- case gpos_single: case gpos_cursive: case gpos_mark2base:
- case gpos_mark2ligature: case gpos_mark2mark:
- return( false );
- /* These are OpenType only, but they might be convertable to a state */
- /* machine */
- case gsub_context:
- case gsub_contextchain: case gsub_reversecchain:
- case gpos_context: case gpos_contextchain:
- if ( sf==NULL || sf->sm!=NULL )
- return( false );
- /* Else fall through into the test on the feature tag */;
- /* These two can be expressed in both, and might be either */
- case gsub_single: case gsub_ligature: case gpos_pair:
- for ( features = otl->features; features!=NULL; features = features->next ) {
- if ( features->ismac || OTTagToMacFeature(features->featuretag,&ft,&fs))
- return( true );
- }
- default:;
- }
- return( false );
-}
-
-static struct feature *aat_dumpmorx_cvtopentypeforms(struct alltabs *at, SplineFont *sf,
- FILE *temp, struct feature *features) {
- ASM *sm;
- uint32 *scripts;
- int featureType, featureSetting;
- int i;
- OTLookup *otl;
-
- if ( sf->cidmaster!=NULL )
- sf = sf->cidmaster;
- else if ( sf->mm!=NULL ) sf=sf->mm->normal;
-
- for ( otl=sf->gsub_lookups; otl!=NULL; otl=otl->next )
- if ( Macable(sf,otl) && otl->lookup_type==gsub_single && IsOtfArabicFormFeature(otl))
- otl->ticked = true;
-
- if ( OTTagToMacFeature(CHR('i','s','o','l'),&featureType,&featureSetting) ) {
- scripts = FormedScripts(sf);
- for ( i=0; scripts[i]!=0; ++i ) {
- sm = ASMFromOpenTypeForms(sf,scripts[i]);
- if ( sm!=NULL ) {
- features = aat_dumpmorx_asm(at,sf,temp,features,sm);
- ASMFree(sf->sm);
- }
- }
- free(scripts);
- }
-return( features );
-}
-
-static struct feature *featuresReverse(struct feature *features) {
- struct feature *p, *n;
-
- p = NULL;
- while ( features!=NULL ) {
- n = features->next;
- features->next = p;
- p = features;
- features = n;
- }
-return( p );
-}
-
-static struct feature *featuresOrderByType(struct feature *features) {
- struct feature *f, **all;
- int i, j, cnt/*, saw_default*/;
-
- for ( cnt=0, f=features; f!=NULL; f=f->next, ++cnt );
- if ( cnt==1 ) {
-return( features );
- }
- all = malloc(cnt*sizeof(struct feature *));
- for ( i=0, f=features; f!=NULL; f=f->next, ++i )
- all[i] = f;
- for ( i=0; i<cnt-1; ++i ) for ( j=i+1; j<cnt; ++j ) {
- if ( all[i]->featureType>all[j]->featureType ||
- (all[i]->featureType==all[j]->featureType && all[i]->featureSetting>all[j]->featureSetting )) {
- f = all[i];
- all[i] = all[j];
- all[j] = f;
- }
- }
- for ( i=0; i<cnt-1; ++i )
- all[i]->nexttype = all[i+1];
- all[cnt-1]->nexttype = NULL;
- features = all[0];
- free( all );
-return( features );
-}
-
-static struct feature *AddExclusiveNoops(SplineFont *sf, struct feature *features) {
- struct feature *f, *n, *def, *p, *t;
- /* mutually exclusive features need to have a setting which does nothing */
-
- for ( f=features; f!=NULL; f=n ) {
- n= f->nexttype;
- if ( f->mf!=NULL && f->mf->ismutex ) {
- def = NULL;
- for ( n=f; n!=NULL && n->featureType==f->featureType; n=n->nexttype ) {
- if ( n->featureSetting==f->mf->default_setting )
- def = n;
- }
- if ( def==NULL ) {
- t = chunkalloc(sizeof(struct feature));
- *t = *f;
- t->feature_start = 0; t->feature_len=0; t->next = NULL;
- t->featureSetting = f->mf->default_setting;
- t->ms = FindMacSetting(sf,t->featureType,f->mf->default_setting,&t->sms);
- t->flag = 0;
- t->dummyOff = true;
- if ( f==features )
- p = NULL;
- else
- for ( p=features; p->nexttype!=f; p=p->nexttype );
- n = f;
- while ( n!=NULL && n->featureType==t->featureType && n->featureSetting<t->featureSetting ) {
- p = n;
- n = n->nexttype;
- }
- t->nexttype = n;
- if ( p==NULL )
- features = t;
- else
- p->nexttype = t;
- while ( n!=NULL && n->featureType==t->featureType )
- n=n->nexttype;
- }
- }
- }
-return( features );
-}
-
-static void SetExclusiveOffs(struct feature *features) {
- struct feature *f, *n;
- int offFlags;
- /* mutually exclusive features need to have a setting which does nothing */
-
- for ( f=features; f!=NULL; f=n ) {
- n= f->nexttype;
- if ( f->mf!=NULL && f->mf->ismutex ) {
- offFlags=0;
- for ( n=f; n!=NULL && n->featureType==f->featureType; n=n->nexttype ) {
- offFlags |= n->flag;
- }
- for ( n=f; n!=NULL && n->featureType==f->featureType; n=n->nexttype )
- n->offFlags = ~(offFlags&~n->flag);
- }
- }
-return;
-}
-
-static void aat_dumpfeat(struct alltabs *at, SplineFont *sf, struct feature *feature) {
- int scnt, fcnt, cnt;
- struct feature *f, *n, *p;
- int k;
- uint32 offset;
- int strid = at->next_strid;
- int fn=0;
- MacFeat *mf, *smf;
- struct macsetting *ms, *sms;
- /* Dump the 'feat' table which is a connection between morx features and */
- /* the name table */
- /* We do three passes. The first just calculates how much space we will need */
- /* the second provides names for the feature types */
- /* and the third provides names for the feature settings */
- /* As we fill up the feat table we also create an array of strings */
- /* (strid, char *pointer) which will be used by the 'name' table to */
- /* give names to the features and their settings */
- /* The mac documentation says that the features should be sorted by feature type */
- /* This is a lie. Features should appear in the same order they appear */
- /* in the morx table, otherwise WorldText goes blooie */
- /* WorldText doesn't exist any more. Perhaps the morx table needs to be */
- /* sorted by feature id too? No, it can't be. Feature 0 must come last */
-
- if ( feature==NULL )
-return;
-
- fcnt = scnt = 0;
- for ( k=0; k<3; ++k ) {
- if ( k==1 ) {
- /* FeatureName entry for All Typographics */
- mf = FindMacFeature(sf,0,&smf);
- if ( (mf!=NULL && mf->featname!=NULL) || (smf!=NULL && smf->featname!=NULL)) {
- at->feat_name[fn].mn = mf!=NULL ? mf->featname : NULL;
- at->feat_name[fn].smn = smf!=NULL ? smf->featname : NULL;
- at->feat_name[fn++].strid = strid;
- }
- putshort(at->feat,0);
- putshort(at->feat,1);
- putlong(at->feat,offset);
- putshort(at->feat,0x0000); /* non exclusive */
- putshort(at->feat,strid++);
- offset += 1*4; /* (1 setting, 4 bytes) All Features */
- } else if ( k==2 ) {
- /* Setting Name Array for All Typographic Features */
- ms = FindMacSetting(sf,0,0,&sms);
- if ( (ms!=NULL && ms->setname!=NULL) || (sms!=NULL && sms->setname!=NULL)) {
- at->feat_name[fn].mn = ms!=NULL ? ms->setname: NULL;
- at->feat_name[fn].smn = sms!=NULL ? sms->setname: NULL;
- at->feat_name[fn++].strid = strid;
- }
- putshort(at->feat,0);
- putshort(at->feat,strid++);
- }
- for ( f=feature; f!=NULL; f=n ) {
- cnt=1;
- if ( k!=2 ) {
- p = f;
- for ( n=f->nexttype; n!=NULL && n->featureType==f->featureType; n = n->nexttype ) {
- if ( p->featureSetting!=n->featureSetting ) {
- ++cnt;
- p = n;
- }
- }
- } else {
- p = f;
- for ( n=f; n!=NULL && n->featureType==f->featureType; n = n->nexttype ) {
- if ( n==f || p->featureSetting!=n->featureSetting ) {
- if (( n->ms!=NULL && n->ms->setname!=NULL ) ||
- ( n->sms!=NULL && n->sms->setname!=NULL)) {
- at->feat_name[fn].mn = n->ms!=NULL ? n->ms->setname : NULL;
- at->feat_name[fn].smn = n->sms!=NULL ? n->sms->setname : NULL;
- at->feat_name[fn++].strid = strid;
- }
- putshort(at->feat,n->featureSetting);
- putshort(at->feat,strid++);
- p = n;
- }
- }
- }
- if ( k==0 ) {
- ++fcnt;
- scnt += cnt;
- } else if ( k==1 ) {
- if ( (f->mf!=NULL && f->mf->featname!=NULL) || (f->smf!=NULL && f->smf->featname!=NULL) ) {
- at->feat_name[fn].mn = f->mf!=NULL ? f->mf->featname : NULL;
- at->feat_name[fn].smn = f->smf!=NULL ? f->smf->featname : NULL;
- at->feat_name[fn++].strid = strid;
- }
- putshort(at->feat,f->featureType);
- putshort(at->feat,cnt);
- putlong(at->feat,offset);
- putshort(at->feat,f->mf!=NULL && f->mf->ismutex?(0xc000|f->mf->default_setting):
- 0);
- putshort(at->feat,strid++);
- offset += 4*cnt;
- }
- }
- if ( k==0 ) {
- ++fcnt; /* Add one for "All Typographic Features" */
- ++scnt; /* Add one for All Features */
- at->feat = tmpfile2();
- at->feat_name = malloc((fcnt+scnt+1)*sizeof(struct feat_name));
- putlong(at->feat,0x00010000);
- putshort(at->feat,fcnt);
- putshort(at->feat,0);
- putlong(at->feat,0);
- offset = 12 /* header */ + fcnt*12;
- }
- }
- memset( &at->feat_name[fn],0,sizeof(struct feat_name));
- at->next_strid = strid;
-
- at->featlen = ftell(at->feat);
- if ( at->featlen&2 )
- putshort(at->feat,0);
-}
-
-static int featuresAssignFlagsChains(struct feature *features, struct feature *feature_by_type) {
- int bit, cnt, chain, fcnt, i, mybit;
- struct feature *f, *n, *p;
- uint16 chains_features[32];
- uint32 chains_bitindex[32]; /* Index for bit of first setting of this feature */
-
- if ( features==NULL )
-return( 0 );
-
- /* A feature may have several subtables which need not be contiguous in */
- /* the feature list */
- /* Indeed we could have a feature in several different chains */
- /* Sigh */
- /* we figure out how many possible settings there are for each feature */
- /* and reserve that many bits for the feature in all chains in which it */
- /* occurs */
- /* Note that here we count dummy settings (they need turn off bits) */
- /* so we use feature_by_type */
- for ( f=feature_by_type; f!=NULL; f=n ) {
- cnt=0;
- p = NULL;
- for ( n=f; n!=NULL && n->featureType==f->featureType; n=n->nexttype ) {
- if ( p==NULL || n->featureSetting != p->featureSetting ) {
- ++cnt;
- p = n;
- }
- n->setting_index = cnt-1;
- }
- for ( n=f; n!=NULL && n->featureType==f->featureType; n=n->nexttype )
- n->setting_cnt = cnt;
- }
- /* When we counted flags we need to count the dummy features for turning */
- /* things off. Those features live in features_by_type. When we put */
- /* things in chains we want only the meaningful features, and we want */
- /* them to be properly ordered. That we get from the "features" list */
- fcnt = 0; chain = 0; bit=0;
- for ( f=features; f!=NULL; f=f->next ) {
- for ( i=0; i<fcnt && chains_features[i]!=f->featureType; ++i );
- if ( i==fcnt ) {
- if ( bit+f->setting_cnt>=32 ) {
- ++chain;
- bit = 0;
- fcnt = 0;
- }
- chains_features[fcnt] = f->featureType;
- chains_bitindex[fcnt++] = bit;
- mybit = bit;
- bit += f->setting_cnt;
- } else
- mybit = chains_bitindex[i];
- f->real_index = mybit+f->setting_index;
- f->flag = 1<<f->real_index;
- if ( f->mf!=NULL && f->mf->ismutex ) {
- int off = (~((~0)<<f->setting_cnt))<<mybit;
- off &= !f->flag;
- f->offFlags = off;
- } else {
- if ( f->featureSetting&1 ) {
- for ( n=feature_by_type; n!=NULL &&
- (n->featureType!=f->featureType || n->featureSetting!=f->featureSetting+1);
- n=n->next );
- } else {
- for ( n=feature_by_type; n!=NULL &&
- (n->featureType!=f->featureType || n->featureSetting!=f->featureSetting+1);
- n=n->next );
- }
- if ( n!=NULL )
- f->offFlags = 1<<(mybit+n->setting_index);
- else
- f->offFlags = ~0;
- }
- f->chain = chain;
- }
-return( chain+1 );
-}
-
-static void morxDumpChain(struct alltabs *at,struct feature *features,
- struct feature *features_by_type, int chain, FILE *temp) {
- uint32 def_flags=0;
- struct feature *f, *n;
- uint32 chain_start, end;
- char *buf;
- int len, tot, fs_cnt, sub_cnt;
- struct feature *all[32];
- int i,offFlags, last_ri=-1, last_f=-1, ri;
-
- memset(all,0,sizeof(all));
- for ( f=features, fs_cnt=sub_cnt=0; f!=NULL; f=f->next ) {
- if ( f->chain==chain ) {
- if ( all[f->real_index]==NULL ) {
- int base = f->real_index-f->setting_index;
- /* Note we use features_by_type here. It will have the default*/
- /* settings for features, and will be ordered nicely */
- for ( n=features_by_type; n!=NULL; n=n->nexttype ) {
- if ( n->featureType==f->featureType && n->chain==chain ) {
- n->nextsame = all[base+n->setting_index];
- all[base+n->setting_index] = n;
- if ( n->ms!=NULL && n->ms->initially_enabled )
- def_flags |= n->flag;
- }
- }
- }
- ++sub_cnt;
- }
- }
-
- /* Chain header */
- chain_start = ftell(at->morx);
- putlong(at->morx,def_flags);
- putlong(at->morx,0); /* Fix up length later */
- putlong(at->morx,0); /* fix up feature count */
- putlong(at->morx,sub_cnt); /* subtable cnt */
-
- /* Features */
- fs_cnt = 0;
- for ( i=0; i<32; ++i ) if ( all[i]!=NULL ) {
- putshort(at->morx,all[i]->featureType);
- putshort(at->morx,all[i]->featureSetting);
- if ( all[i]->dummyOff ) {
- putlong(at->morx,0);
- if ( last_f==all[i]->featureType )
- ri = last_ri;
- else if ( i<31 && all[i+1]!=NULL && all[i+1]->featureType == all[i]->featureType )
- ri = i+1 - all[i+1]->real_index;
- else
- ri = 0; /* This can't happen */
- } else {
- putlong(at->morx,1<<i);
- ri = i-all[i]->real_index;
- last_ri = ri; last_f = all[i]->featureType;
- }
- offFlags = all[i]->offFlags;
- if ( ri>0 )
- offFlags<<=(ri);
- else if ( ri<0 )
- offFlags>>=(-ri);
- putlong(at->morx,offFlags);
- ++fs_cnt;
-
- if ( all[i]->needsOff && (i==31 || all[i+1]==NULL ||
- all[i+1]->featureType!=all[i]->featureType ||
- all[i+1]->featureSetting!=all[i]->featureSetting+1 )) {
- putshort(at->morx,all[i]->featureType);
- putshort(at->morx,all[i]->featureSetting+1);
- putlong(at->morx,0);
- putlong(at->morx,all[i]->offFlags & ~all[i]->flag );
- ++fs_cnt;
- }
- /* I used to have code to output the default setting of a mutex */
- /* but I should already have put that in the feature list */
- }
- /* The feature list of every chain must end with these two features */
- putshort(at->morx,0); /* All Typo Features */
- putshort(at->morx,0); /* All Features */
- putlong(at->morx,0xffffffff); /* enable */
- putlong(at->morx,0xffffffff); /* disable */
- putshort(at->morx,0); /* All Typo Features */
- putshort(at->morx,1); /* No Features */
- putlong(at->morx,0); /* enable */
- putlong(at->morx,0); /* disable */
- fs_cnt += 2;
-
- buf = malloc(16*1024);
- /* Subtables */
- for ( f=features; f!=NULL; f=f->next ) if ( f->chain==chain ) {
- putlong(at->morx,f->feature_len+12); /* Size of header needs to be added */
- putlong(at->morx,(f->vertOnly?0x80000000:f->r2l?0x40000000:0) | f->subtable_type);
- putlong(at->morx,f->flag);
- tot = f->feature_len;
- fseek(temp, f->feature_start, SEEK_SET);
- while ( tot!=0 ) {
- len = tot;
- if ( len>16*1024 ) len = 16*1024;
- len = fread(buf,1,len,temp);
- len = fwrite(buf,1,len,at->morx);
- if ( len<=0 ) {
- IError( "Disk error\n" );
- break;
- }
- tot -= len;
- }
- }
- free(buf);
-
- /* Pad chain to a multiple of four */
- if ( (ftell(at->morx)-chain_start)&1 )
- putc('\0',at->morx);
- if ( (ftell(at->morx)-chain_start)&2 )
- putshort(at->morx,0);
- end = ftell(at->morx);
- fseek(at->morx,chain_start+4,SEEK_SET);
- putlong(at->morx,end-chain_start);
- putlong(at->morx,fs_cnt);
- fseek(at->morx,0,SEEK_END);
-}
-
-void aat_dumpmorx(struct alltabs *at, SplineFont *sf) {
- FILE *temp = tmpfile2();
- struct feature *features = NULL, *features_by_type;
- int nchains, i;
- OTLookup *otl;
- struct lookup_subtable *sub;
-
- /* Arabic Form features all need to be merged together and formed into */
- /* a cursive connection state machine. So the first time we see one of */
- /* we handle all of them. After that we ignore all of them. Note: if */
- /* OpenType has them happening in different orders, that information */
- /* will be lost. All will be processed at once. */
- for ( otl = sf->gsub_lookups; otl!=NULL; otl=otl->next )
- otl->ticked = false;
-
- SFLigaturePrepare(sf);
-
- /* Retain the same lookup ordering */
- for ( otl = sf->gsub_lookups; otl!=NULL; otl=otl->next ) {
- if ( !Macable(sf,otl))
- continue;
- if ( otl->lookup_type==gsub_single && IsOtfArabicFormFeature(otl) ) {
- if ( otl->ticked )
- /* Already processed */;
- else if ( HasCursiveConnectionSM(sf) )
- /* Skip the OpenType conversion and use the native state machine */;
- else
- features = aat_dumpmorx_cvtopentypeforms(at,sf,temp,features);
- } else {
- for ( sub=otl->subtables; sub!=NULL; sub=sub->next ) {
- switch ( otl->lookup_type ) {
- case gsub_single:
- features = aat_dumpmorx_substitutions(at,sf,temp,features,sub);
- break;
- case gsub_ligature:
- features = aat_dumpmorx_ligatures(at,sf,temp,features,sub);
- break;
- case morx_indic: case morx_context: case morx_insert:
- features = aat_dumpmorx_asm(at,sf,temp,features,sub->sm);
- break;
- default:
- if ( sf->sm==NULL )
- features = aat_dumpmorx_cvtopentype(at,sf,temp,features,sub);
- }
- }
- }
- }
-
- SFLigatureCleanup(sf);
-
- if ( features==NULL ) {
- fclose(temp);
-return;
- }
- /* The features are in reverse execution order */
- features = featuresReverse(features);
- /* But the feature table requires them in numeric order */
- features_by_type = featuresOrderByType(features);
- features_by_type = AddExclusiveNoops(sf,features_by_type);
- aat_dumpfeat(at, sf, features_by_type);
- nchains = featuresAssignFlagsChains(features,features_by_type);
- SetExclusiveOffs(features_by_type);
-
- at->morx = tmpfile2();
- putlong(at->morx,0x00020000);
- putlong(at->morx,nchains);
- for ( i=0; i<nchains; ++i )
- morxDumpChain(at,features,features_by_type,i,temp);
- fclose(temp);
- morxfeaturesfree(features_by_type);
-
- at->morxlen = ftell(at->morx);
- if ( at->morxlen&1 )
- putc('\0',at->morx);
- if ( (at->morxlen+1)&2 )
- putshort(at->morx,0);
-}
-
-/* ************************************************************************** */
-/* ************************* The 'opbd' table ************************* */
-/* ************************************************************************** */
-
-int haslrbounds(SplineChar *sc, PST **left, PST **right) {
- PST *pst;
-
- *left = *right = NULL;
- for ( pst=sc->possub; pst!=NULL ; pst=pst->next ) {
- if ( pst->type == pst_position ) {
- if ( PSTHasTag(pst,CHR('l','f','b','d')) ) {
- *left = pst;
- if ( *right )
-return( true );
- } else if ( PSTHasTag(pst,CHR('r','t','b','d')) ) {
- *right = pst;
- if ( *left )
-return( true );
- }
- }
- }
-return( *left!=NULL || *right!=NULL );
-}
-
-void aat_dumpopbd(struct alltabs *at, SplineFont *_sf) {
- int i, j, k, l, seg_cnt, tot, last, offset;
- PST *left, *right;
- FILE *opbd=NULL;
- /* We do four passes. The first just calculates how much space we will need (if any) */
- /* the second provides the top-level lookup table structure */
- /* the third provides the arrays of offsets needed for type 4 lookup tables */
- /* the fourth provides the actual data on the optical bounds */
- SplineChar *sc;
-
- for ( k=0; k<4; ++k ) {
- for ( i=seg_cnt=tot=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- l = 0;
- sc = _sf->glyphs[at->gi.bygid[i]];
- if ( haslrbounds(sc,&left,&right) ) {
- if ( k==1 )
- tot = 0;
- else if ( k==2 ) {
- putshort(opbd,offset);
- offset += 8;
- } else if ( k==3 ) {
- putshort(opbd,left!=NULL?-left->u.pos.xoff:0);
- putshort(opbd,0); /* top */
- putshort(opbd,right!=NULL?-right->u.pos.h_adv_off:0);
- putshort(opbd,0); /* bottom */
- }
- last = i;
- for ( j=i+1, ++tot; j<at->gi.gcnt; ++j ) {
- if ( at->gi.bygid[i]==-1 || !haslrbounds(_sf->glyphs[at->gi.bygid[j]],&left,&right) )
- break;
- ++tot;
- last = j;
- if ( k==2 ) {
- putshort(opbd,offset);
- offset += 8;
- } else if ( k==3 ) {
- putshort(opbd,left!=NULL?-left->u.pos.xoff:0);
- putshort(opbd,0); /* top */
- putshort(opbd,right!=NULL?-right->u.pos.h_adv_off:0);
- putshort(opbd,0); /* bottom */
- }
- }
- if ( k==1 ) {
- putshort(opbd,last);
- putshort(opbd,i);
- putshort(opbd,offset);
- offset += 2*tot;
- }
- ++seg_cnt;
- i = j-1;
- }
- }
- if ( k==0 ) {
- if ( seg_cnt==0 )
-return;
- opbd = tmpfile2();
- putlong(opbd, 0x00010000); /* version */
- putshort(opbd,0); /* data are distances (not control points) */
-
- putshort(opbd,4); /* Lookup table format 4 */
- /* Binary search header */
- putshort(opbd,6); /* Entry size */
- putshort(opbd,seg_cnt); /* Number of segments */
- for ( j=0,l=1; l<=seg_cnt; l<<=1, ++j );
- --j; l>>=1;
- putshort(opbd,6*l);
- putshort(opbd,j);
- putshort(opbd,6*(seg_cnt-l));
- /* offset from start of lookup, not table */
- offset = 6*2/* format, binsearch*/ + seg_cnt*6 +6 /*flag entry */;
- } else if ( k==1 ) { /* flag entry */
- putshort(opbd,0xffff);
- putshort(opbd,0xffff);
- putshort(opbd,0);
- }
- }
- at->opbd = opbd;
- at->opbdlen = ftell(at->opbd);
- if ( at->opbdlen&2 )
- putshort(at->opbd,0);
-}
-
-/* ************************************************************************** */
-/* ************************* The 'prop' table ************************* */
-/* ************************************************************************** */
-
-uint16 *props_array(SplineFont *sf,struct glyphinfo *gi) {
- uint16 *props;
- int i;
- SplineChar *sc, *bsc;
- int dir, isfloat, isbracket, offset, doit=false;
- AnchorPoint *ap;
- PST *pst;
- int p;
-
- props = calloc(gi->gcnt+1,sizeof(uint16));
- props[gi->gcnt] = -1;
-
- for ( i=0; i<gi->gcnt; ++i ) if ( (p = gi->bygid==NULL ? i : gi->bygid[i])!=-1 ) {
- sc = sf->glyphs[p];
- if ( sc!=NULL && (gi->bygid==NULL || sc->ttf_glyph!=-1 )) {
- dir = 0;
- if ( sc->unicodeenc>=0x10300 && sc->unicodeenc<=0x103ff )
- dir = 0;
- else if ( sc->unicodeenc>=0x10800 && sc->unicodeenc<=0x10fff )
- dir = 1;
- else if ( sc->unicodeenc!=-1 && sc->unicodeenc<0x10fff ) {
- if ( iseuronumeric(sc->unicodeenc) )
- dir = 3;
- else if ( iseuronumsep(sc->unicodeenc))
- dir = 4;
- else if ( iseuronumterm(sc->unicodeenc))
- dir = 5;
- else if ( isarabnumeric(sc->unicodeenc))
- dir = 6;
- else if ( iscommonsep(sc->unicodeenc))
- dir = 7;
- else if ( isspace(sc->unicodeenc))
- dir = 10;
- else if ( islefttoright(sc->unicodeenc) )
- dir = 0;
- else if ( isrighttoleft(sc->unicodeenc) )
- dir = 1;
- else if ( SCScriptFromUnicode(sc)==CHR('a','r','a','b') )
- dir = 2;
- else if ( SCScriptFromUnicode(sc)==CHR('h','e','b','r') )
- dir = 1;
- else
- dir = 11; /* Other neutrals */
- /* Not dealing with unicode 3 classes */
- /* nor block seperator/ segment seperator */
- } else if ( SCScriptFromUnicode(sc)==CHR('a','r','a','b') )
- dir = 2;
- else if ( SCScriptFromUnicode(sc)==CHR('h','e','b','r') )
- dir = 1;
-
- if ( dir==1 || dir==2 ) doit = true;
- isfloat = false;
- if ( sc->width==0 &&
- ((sc->anchor!=NULL && sc->anchor->type==at_mark) ||
- (sc->unicodeenc!=-1 && sc->unicodeenc<0x10000 && iscombining(sc->unicodeenc))))
- isfloat = doit = true;
- isbracket = offset = 0;
- if ( sc->unicodeenc!=-1 && sc->unicodeenc<0x10000 && tomirror(sc->unicodeenc)!=0 ) {
- bsc = SFGetChar(sf,tomirror(sc->unicodeenc),NULL);
- if ( bsc!=NULL && bsc->ttf_glyph-sc->ttf_glyph>-8 && bsc->ttf_glyph-sc->ttf_glyph<8 ) {
- isbracket = true;
- offset = bsc->ttf_glyph-sc->ttf_glyph;
- }
- }
- if ( !isbracket ) {
- for ( pst=sc->possub; pst!=NULL && PSTHasTag(pst,CHR('r','t','l','a')); pst=pst->next );
- if ( pst!=NULL && pst->type==pst_substitution &&
- (bsc=SFGetChar(sf,-1,pst->u.subs.variant))!=NULL &&
- bsc->ttf_glyph!=-1 && bsc->ttf_glyph-sc->ttf_glyph>-8 && bsc->ttf_glyph-sc->ttf_glyph<8 ) {
- isbracket = true;
- offset = bsc->ttf_glyph-sc->ttf_glyph;
- doit = true;
- }
- }
- if ( SCRightToLeft(sc) ) {
- /* Apple docs say attached right. So for r2l scripts we look for */
- /* a cursive entry, and for l2r a cursive exit */
- for ( ap=sc->anchor; ap!=NULL && ap->type!=at_centry; ap=ap->next );
- } else {
- for ( ap=sc->anchor; ap!=NULL && ap->type!=at_cexit; ap=ap->next );
- }
- props[sc->ttf_glyph] = dir |
- (isfloat ? 0x8000 : 0 ) |
- (isbracket ? 0x1000 : 0 ) |
- (ap!=NULL ? 0x80 : 0 ) |
- ((offset&0xf)<<8);
- /* not dealing with */
- /* hang left 0x4000 */
- /* hang right 0x2000 */
- }
- }
-
- if ( !doit ) {
- free(props);
-return( NULL );
- }
-
-return( props );
-}
-
-void aat_dumpprop(struct alltabs *at, SplineFont *sf) {
- uint16 *props = props_array(sf,&at->gi);
- uint32 bin_srch_header;
- int i, j, cnt;
-
- if ( props==NULL )
-return;
-
- at->prop = tmpfile2();
- putlong(at->prop,0x00020000);
- putshort(at->prop,1); /* Lookup data */
- putshort(at->prop,0); /* default property is simple l2r */
- putshort(at->prop,2); /* lookup format 2 => segment single value */
- /* Binsearch header */
- bin_srch_header = ftell(at->prop);
- putshort(at->prop,6); /* Entry size */
- putshort(at->prop,0); /* fill in later */
- putshort(at->prop,0);
- putshort(at->prop,0);
- putshort(at->prop,0);
-
- cnt = 0;
- for ( i=0; i<at->gi.gcnt; ++i ) {
- while ( i<at->gi.gcnt && props[i]==0 ) ++i; /* skip default entries */
- if ( i>=at->gi.gcnt )
- break;
- for ( j=i+1; j<at->gi.gcnt && props[j]==props[i]; ++j );
- putshort(at->prop,j-1);
- putshort(at->prop,i);
- putshort(at->prop,props[i]);
- i = j-1;
- ++cnt;
- }
- putshort(at->prop,0xffff); /* Final eof marker */
- putshort(at->prop,0xffff);
- putshort(at->prop,0x0000);
-
- fseek(at->prop,bin_srch_header,SEEK_SET);
- putshort(at->prop,6); /* Entry size */
- putshort(at->prop,cnt); /* Number of segments */
- for ( j=0,i=1; i<=cnt; i<<=1, ++j );
- --j; i>>=1;
- putshort(at->prop,6*i);
- putshort(at->prop,j);
- putshort(at->prop,6*(cnt-i));
-
- fseek(at->prop,0,SEEK_END);
- at->proplen = ftell(at->prop);
- if ( at->proplen&2 )
- putshort(at->prop,0);
- free(props);
-}
-
-/* ************************************************************************** */
-/* ************************* The 'bsln' table ************************* */
-/* ************************************************************************** */
-
-static int BslnFromTag(uint32 tag) {
- switch ( tag ) {
- case CHR('r','o','m','n'):
-return( 0 );
- /* Apple has a centered ideographic baseline, while OT has a top ideo bsln*/
- /* no way to get Apple's baseline #1 */
- case CHR('i','d','e','o'):
-return( 2 );
- case CHR('h','a','n','g'):
-return( 3 );
- case CHR('m','a','t','h'):
-return( 4 );
- default:
-return( 0xffff );
- }
-}
-
-int16 *PerGlyphDefBaseline(SplineFont *sf,int *def_baseline) {
- int16 *baselines = malloc(sf->glyphcnt*sizeof(int16));
- int gid, bsln, i, any;
- SplineChar *sc;
- int counts[32]; /* Apple supports a max of 32 baselines, but only 5 are defined */
- struct Base *base = sf->horiz_base;
- struct basescript *bs;
- int bestbsln, bestcnt;
-
- memset(counts,0,sizeof(counts));
-
- for ( gid = 0; gid<sf->glyphcnt; ++gid ) if ( (sc = sf->glyphs[gid])!=NULL ) {
- uint32 script = SCScriptFromUnicode(sc);
- for ( bs= base->scripts; bs!=NULL; bs=bs->next )
- if ( bs->script==script )
- break;
- if ( bs==NULL )
- bsln = 0xffff;
- else
- bsln = BslnFromTag( base->baseline_tags[bs->def_baseline] );
-/* This if is duplicated (almost) in basedlg.c:Base_FinishEdit */
- if ( bsln==0xffff ) {
- if ( script==CHR('k','a','n','a') || script==CHR('h','a','n','g') ||
- script==CHR('h','a','n','i') || script==CHR('b','o','p','o') ||
- script==CHR('j','a','m','o') || script==CHR('y','i',' ',' '))
- bsln = 2;
- else if ( script==CHR('t','i','b','t' ) ||
- script == CHR('b','e','n','g' ) || script == CHR('b','n','g','2') ||
- script == CHR('d','e','v','a' ) || script == CHR('d','e','v','2') ||
- script == CHR('g','u','j','r' ) || script == CHR('g','j','r','2') ||
- script == CHR('g','u','r','u' ) || script == CHR('g','u','r','2') ||
- script == CHR('k','n','d','a' ) || script == CHR('k','n','d','2') ||
- script == CHR('m','l','y','m' ) || script == CHR('m','l','m','2') ||
- script == CHR('o','r','y','a' ) || script == CHR('o','r','y','2') ||
- script == CHR('t','a','m','l' ) || script == CHR('t','m','l','2') ||
- script == CHR('t','e','l','u' ) || script == CHR('t','e','l','2'))
- bsln = 3;
- else if ( script==CHR('m','a','t','h') )
- bsln = 4;
- else
- bsln = 0;
- }
- baselines[gid] = bsln;
- if ( bsln!=0xffff )
- ++counts[bsln];
- }
-
- bestbsln = 0;
- bestcnt = 0;
- any = 0;
- for ( i=0; i<32 ; ++i ) {
- if ( counts[i]>bestcnt ) {
- bestbsln = i;
- bestcnt = counts[i];
- ++any;
- }
- }
- *def_baseline = bestbsln | (any<=1 ? 0x100 : 0 );
-return( baselines );
-}
-
-void FigureBaseOffsets(SplineFont *sf,int def_bsln,int offsets[32]) {
- struct Base *base = sf->horiz_base;
- struct basescript *bs = base->scripts;
- int i;
-
- memset( offsets,0xff,32*sizeof(int));
- for ( i=0; i<base->baseline_cnt; ++i ) {
- int bsln = BslnFromTag(base->baseline_tags[i]);
- if ( bsln!=0xffff )
- offsets[bsln] = bs->baseline_pos[i];
- }
- if ( offsets[def_bsln]!=-1 ) {
- for ( i=0; i<32; ++i ) {
- if ( offsets[i]!=-1 )
- offsets[i] -= offsets[def_bsln];
- }
- }
- /* I suspect baseline 1 is the standard baseline for CJK glyphs on the mac*/
- /* (because baseline 2 is often the same as baseline 1, which is wrong for 2) */
- /* OT doesn't have a centered ideographic baseline, so guestimate */
- /* And I don't want to base it on the actual ideo baseline (go up half an em?) */
- /* because in my small sample of 'bsln' tables baseline 2 has been wrong */
- /* most of the time, and it is wrong in the example in the docs. */
- /* (I know it is wrong because it has the same value as baseline 1, but */
- /* is supposed to be below baseline 1 ) */
- if ( offsets[1]==-1 ) {
- if ( offsets[2]!=-1 )
- offsets[1] = offsets[2]+(sf->ascent+sf->descent)/2;
- else
- offsets[1] = (sf->ascent+sf->descent)/2 - sf->descent;
- }
- for ( i=0; i<32; ++i )
- if ( offsets[i]==-1 )
- offsets[i] = 0;
-}
-
-void aat_dumpbsln(struct alltabs *at, SplineFont *sf) {
- int def_baseline;
- int offsets[32];
- int16 *baselines;
- int i, gid, j, bsln, cnt;
-
- if ( sf->horiz_base==NULL || sf->horiz_base->baseline_cnt==0 ||
- sf->horiz_base->scripts==NULL )
-return;
-
- baselines = PerGlyphDefBaseline(sf,&def_baseline);
-
- at->bsln = tmpfile2();
- putlong(at->bsln,0x00010000); /* Version */
- if ( def_baseline & 0x100 ) /* Only one baseline in the font */
- putshort(at->bsln,0); /* distanced based (no control point), no per-glyph info */
- else
- putshort(at->bsln,1); /* distanced based (no cp info) with per-glyph info */
- putshort(at->bsln,def_baseline&0x1f);/* Default baseline when no info specified for glyphs */
-
- /* table of 32 int16 (the docs say uint16, but that must be wrong) giving */
- /* the offset of the nth baseline from the default baseline. */
- /* 0 => Roman, 1=> centered ideo, 2=>low ideo (same as OTF ideo) 3=>hang, 4=>Math */
- /* values 5-31 undefined, set to 0 */
- FigureBaseOffsets(sf,def_baseline&0x1f,offsets);
-
- for ( i=0; i<32; ++i )
- putshort(at->bsln,offsets[i]);
-
- if ( !(def_baseline&0x100) ) {
- def_baseline &= 0x1f;
-
- putshort(at->bsln,2); /* Lookup format 2, segmented array w/ single value */
-
- cnt = 0;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( (gid=at->gi.bygid[i])!=-1 ) {
- if ( baselines[gid]!=-1 && baselines[gid]!=def_baseline ) {
- bsln = baselines[gid];
- for ( j=i; j<at->gi.gcnt && baselines[at->gi.bygid[i]]==bsln; ++j );
- i = j-1;
- ++cnt;
- }
- }
-
- /* Dump out a binary search header */
- putshort(at->bsln,6); /* size of each item */
- putshort(at->bsln,cnt); /* number of items */
- for ( j=1, i=0; cnt<=j; j<<=1, ++i );
- putshort(at->bsln,6*j/2); /* j is a power of 2 too big */
- putshort(at->bsln,i-1);
- putshort(at->bsln,6*(cnt-(j>>1)) );
-
- for ( i=0; i<at->gi.gcnt; ++i ) if ( (gid=at->gi.bygid[i])!=-1 ) {
- if ( baselines[gid]!=-1 && baselines[gid]!=def_baseline ) {
- bsln = baselines[gid];
- for ( j=i; j<at->gi.gcnt && baselines[at->gi.bygid[i]]==bsln; ++j );
- putshort(at->bsln,j-1);
- putshort(at->bsln,i);
- putshort(at->bsln,bsln);
- i = j-1;
- }
- }
-
- putshort(at->bsln,0xffff); /* Final eof marker */
- putshort(at->bsln,0xffff);
- putshort(at->bsln,0x0000);
- }
-
- at->bslnlen = ftell(at->bsln);
- /* Only contains 2 & 4 byte quantities, can't have an odd number of bytes */
- if ( at->bslnlen&2 )
- putshort(at->bsln,0);
- free(baselines);
-}
-
-/* ************************************************************************** */
-/* ************************* utility routines ************************* */
-/* ************************************************************************** */
-
-int OTTagToMacFeature(uint32 tag, int *featureType,int *featureSetting) {
- int i;
- struct macsettingname *msn = user_macfeat_otftag ? user_macfeat_otftag : macfeat_otftag;
-
- for ( i=0; msn[i].otf_tag!=0; ++i )
- if ( msn[i].otf_tag == tag ) {
- *featureType = msn[i].mac_feature_type;
- *featureSetting = msn[i].mac_feature_setting;
-return( true );
- }
- *featureType = (tag >> 16);
- *featureSetting = (tag & 0xFFFF);
- /* Ranges taken from Apple Font Registry. An OT tag without a
- corresponding mac feature should fail this test.*/
- if (*featureType >= 0 && *featureType < 105 && *featureSetting < 16)
- return ( true );
-
- *featureType = 0;
- *featureSetting = 0;
-return( false );
-}
-
-static struct feature *featureFromTag(SplineFont *sf, uint32 tag ) {
- int ft, fs;
- struct feature *feat;
-
- feat = chunkalloc(sizeof(struct feature));
- if (OTTagToMacFeature(tag, &ft, &fs)) {
- feat->featureType = ft;
- feat->featureSetting = fs;
- feat->mf = FindMacFeature(sf,feat->featureType,&feat->smf);
- feat->ms = FindMacSetting(sf,feat->featureType,feat->featureSetting,&feat->sms);
- feat->needsOff = feat->mf!=NULL && !feat->mf->ismutex;
- feat->vertOnly = tag==CHR('v','r','t','2') || tag==CHR('v','k','n','a');
- }
-
- return( feat );
-}
-
-static struct feature *featureFromSubtable(SplineFont *sf, struct lookup_subtable *sub ) {
- FeatureScriptLangList *fl;
- int ft, fs;
-
- for ( fl=sub->lookup->features; fl!=NULL; fl=fl->next ) {
- if ( fl->ismac )
- break;
- }
- if ( fl==NULL ) {
- for ( fl=sub->lookup->features; fl!=NULL; fl=fl->next ) {
- if ( OTTagToMacFeature(fl->featuretag,&ft,&fs) )
- break;
- }
- if ( fl==NULL ) {
- IError("Could not find a mac feature");
- return NULL;
- }
- }
- return( featureFromTag(sf,fl->featuretag));
-}
-
-static int PSTHasTag(PST *pst, uint32 tag) {
- FeatureScriptLangList *fl;
-
- if ( pst->subtable==NULL )
-return( false );
- for ( fl=pst->subtable->lookup->features; fl!=NULL; fl=fl->next )
- if ( fl->featuretag == tag )
-return( true );
-
-return( false );
-}
-
-int scriptsHaveDefault(struct scriptlanglist *sl) {
- int i;
-
- for ( ; sl!=NULL; sl=sl->next ) {
- for ( i=0; i<sl->lang_cnt; ++i ) {
- if ( (i<MAX_LANG && sl->langs[i]==DEFAULT_LANG) ||
- (i>=MAX_LANG && sl->morelangs[i-MAX_LANG]==DEFAULT_LANG)) {
-return( true );
- }
- }
- }
-return( false );
-}
-
-int LookupHasDefault(OTLookup *otl) {
- FeatureScriptLangList *feats;
-
- if ( otl->def_lang_checked )
-return( otl->def_lang_found );
-
- otl->def_lang_checked = true;
- for ( feats=otl->features; feats!=NULL; feats = feats->next ) {
- if ( scriptsHaveDefault(feats->scripts) ) {
- otl->def_lang_found = true;
-return( true );
- }
- }
- otl->def_lang_found = false;
-return( false );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/tottfgpos.c b/dviware/dvisvgm/libs/ff-woff/fontforge/tottfgpos.c
deleted file mode 100644
index 607214a7ef..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/tottfgpos.c
+++ /dev/null
@@ -1,4613 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-#include <utype.h>
-
-int coverageformatsallowed=3;
-int use_second_indic_scripts = false;
-
-#include "ttf.h"
-
-/* This file contains routines to create the otf gpos and gsub tables and their */
-/* attendant subtables */
-
-/* Undocumented fact: ATM (which does kerning for otf fonts in Word) can't handle features with multiple lookups */
-
-/* Undocumented fact: Only one feature with a given tag allowed per script/lang */
-/* So if we have multiple lookups with the same tag they must be merged into */
-/* one feature with many lookups */
-
-/* scripts (for opentype) that I understand */
- /* see also list in lookups.c mapping script tags to friendly names */
-
-static uint32 scripts[][15] = {
-/* Arabic */ { CHR('a','r','a','b'), 0x0600, 0x06ff, 0xfb50, 0xfdff, 0xfe70, 0xfefe },
-/* Aramaic */ { CHR('a','r','a','m'), 0x820, 0x83f },
-/* Armenian */ { CHR('a','r','m','n'), 0x0530, 0x058f, 0xfb13, 0xfb17 },
-/* Balinese */ { CHR('b','a','l','i'), 0x1b00, 0x1b7f },
-/* Bengali */ { CHR('b','e','n','g'), 0x0980, 0x09ff },
-/* Bliss symb */{ CHR('b','l','i','s'), 0x12200, 0x124ff },
-/* Bopomofo */ { CHR('b','o','p','o'), 0x3100, 0x312f, 0x31a0, 0x31bf },
-/* Braille */ { CHR('b','r','a','i'), 0x2800, 0x28ff },
-/* Buginese */ { CHR('b','u','g','i'), 0x1a00, 0x1a1f },
-/* Buhid */ { CHR('b','u','h','d'), 0x1740, 0x1753 },
-/* Byzantine M*/{ CHR('b','y','z','m'), 0x1d000, 0x1d0ff },
-/* Canadian Syl*/{CHR('c','a','n','s'), 0x1400, 0x167f },
-/* Carian */ {CHR('c','a','r','i'), 0x0, 0x0 },
-/* Cham */ {CHR('c','h','a','m'), 0x0, 0x0 },
-/* Cherokee */ { CHR('c','h','e','r'), 0x13a0, 0x13ff },
-/* Cirth */ { CHR('c','i','r','t'), 0x12080, 0x120ff },
-/* CJKIdeogra */{ CHR('h','a','n','i'), 0x3300, 0x9fff, 0xf900, 0xfaff, 0x020000, 0x02ffff },
-/* Coptic */ { CHR('c','o','p','t'), 0x2c80, 0x2cff },
-/* Cypriot */ { CHR('c','p','m','n'), 0x10800, 0x1083f },
-/* Cyrillic */ { CHR('c','y','r','l'), 0x0400, 0x052f, 0x1d2b, 0x1d2b, 0x1d78, 0x1d78,
- 0x2de0, 0x2dff, 0xa640, 0xa6ff },
-/* Deseret */ { CHR('d','s','r','t'), 0x10400, 0x1044f },
-/* Devanagari */{ CHR('d','e','v','a'), 0x0900, 0x097f },
-/* Ethiopic */ { CHR('e','t','h','i'), 0x1200, 0x139f },
-/* Georgian */ { CHR('g','e','o','r'), 0x1080, 0x10ff },
-/* Glagolitic */{ CHR('g','l','a','g'), 0x1080, 0x10ff },
-/* Gothic */ { CHR('g','o','t','h'), 0x10330, 0x1034a },
-/* Greek */ { CHR('g','r','e','k'), 0x0370, 0x03ff, 0x1f00, 0x1fff },
-/* Gujarati */ { CHR('g','u','j','r'), 0x0a80, 0x0aff },
-/* Gurmukhi */ { CHR('g','u','r','u'), 0x0a00, 0x0a7f },
-/* Hangul */ { CHR('h','a','n','g'), 0xac00, 0xd7af, 0x3130, 0x319f, 0xffa0, 0xff9f },
-/* Hanunoo */ { CHR('h','a','n','o'), 0x1720, 0x1734 },
- /* I'm not sure what the difference is between the 'hang' tag and the 'jamo' */
- /* tag. 'Jamo' is said to be the precomposed forms, but what's 'hang'? */
-/* Hebrew */ { CHR('h','e','b','r'), 0x0590, 0x05ff, 0xfb1e, 0xfb4f },
-/* Hiragana used to have its own tag 'hira', but has since been merged with katakana */
-/* Hangul Jamo*/{ CHR('j','a','m','o'), 0x1100, 0x11ff, 0x3130, 0x319f, 0xffa0, 0xffdf },
-/* Javanese */ { CHR('j','a','v','a'), 0 }, /* MS has a tag, but there is no unicode range */
-/* Katakana */ { CHR('k','a','n','a'), 0x3040, 0x30ff, 0xff60, 0xff9f },
-/* Kayah Li */ { CHR('k','a','l','i'), 0 },
-/* Kannada */ { CHR('k','n','d','a'), 0x0c80, 0x0cff },
-/* Kharosthi */ { CHR('k','h','a','r'), 0x10a00, 0x10a5f },
-/* Khmer */ { CHR('k','h','m','r'), 0x1780, 0x17ff },
-/* Latin */ { CHR('l','a','t','n'), 0x0041, 0x005a, 0x0061, 0x007a,
- 0x00c0, 0x02af, 0x1d00, 0x1eff, 0xfb00, 0xfb0f, 0xff00, 0xff5f, 0xa770, 0xa7ff },
-/* Lao */ { CHR('l','a','o',' '), 0x0e80, 0x0eff },
-/* Lepcha */ { CHR('l','e','p','c'), 0 },
-/* Limbu */ { CHR('l','i','m','b'), 0x1900, 0x194f },
-/* Linear A */ /*{ CHR('l','i','n','a'), 0x10180, 0x102cf },*/ /* What happened to linear A? */
-/* Linear B */ { CHR('l','i','n','b'), 0x10000, 0x100fa },
-/* Lycian */ { CHR('l','y','c','i'), 0 },
-/* Lydian */ { CHR('l','y','d','i'), 0 },
-/* Malayalam */ { CHR('m','l','y','m'), 0x0d00, 0x0d7f },
-/* Mathematical Alphanumeric Symbols */
- { CHR('m','a','t','h'), 0x1d400, 0x1d7ff },
-/* Mongolian */ { CHR('m','o','n','g'), 0x1800, 0x18af },
-/* Musical */ { CHR('m','u','s','c'), 0x1d100, 0x1d1ff },
-/* Myanmar */ { CHR('m','y','m','r'), 0x1000, 0x107f },
-/* New Tai Lue*/{ CHR('t','a','l','u'), 0 },
-/* N'Ko */ { CHR('n','k','o',' '), 0x07c0, 0x07fa },
-/* Ogham */ { CHR('o','g','a','m'), 0x1680, 0x169f },
-/* Ol Chiki */ { CHR('o','l','c','k'), 0 },
-/* Old Italic */{ CHR('i','t','a','l'), 0x10300, 0x1031e },
-/* Old Permic */{ CHR('p','e','r','m'), 0x10350, 0x1037f },
-/* Old Persian cuneiform */
- { CHR('x','p','e','o'), 0x103a0, 0x103df },
-/* Oriya */ { CHR('o','r','y','a'), 0x0b00, 0x0b7f },
-/* Osmanya */ { CHR('o','s','m','a'), 0x10480, 0x104a9 },
-/* Phags-pa */ { CHR('p','h','a','g'), 0xa840, 0xa87f },
-/* Phoenician */{ CHR('p','h','n','x'), 0x10900, 0x1091f },
-/* Pollard */ { CHR('p','l','r','d'), 0x104b0, 0x104d9 },
-/* Rejang */ { CHR('r','j','n','g'), 0 },
-/* Rongorongo */{ CHR('r','o','r','o'), 0 },
-/* Runic */ { CHR('r','u','n','r'), 0x16a0, 0x16ff },
-/* Saurashtra*/ { CHR('s','a','u','r'), 0 },
-/* Shavian */ { CHR('s','h','a','w'), 0x10450, 0x1047f },
-/* Sinhala */ { CHR('s','i','n','h'), 0x0d80, 0x0dff },
-/* Sumero-Akkadian Cuneiform */
- { CHR('x','s','u','x'), 0x12000, 0x1236e },
-/* Sundanese */ { CHR('s','u','n','d'), 0 },
-/* Syloti Nagri */
- { CHR('s','y','l','o'), 0xa800, 0xa82f },
-/* Syriac */ { CHR('s','y','r','c'), 0x0700, 0x074f },
-/* Tagalog */ { CHR('t','a','g','l'), 0x1700, 0x1714 },
-/* Tagbanwa */ { CHR('t','a','g','b'), 0x1760, 0x1773 },
-/* Tai Le */ { CHR('t','a','l','e'), 0x1950, 0x1974 },
-/* Tai Lu */ { CHR('t','a','l','u'), 0x1980, 0x19df },
-/* Tamil */ { CHR('t','a','m','l'), 0x0b80, 0x0bff },
-/* Telugu */ { CHR('t','e','l','u'), 0x0c00, 0x0c7f },
-/* Tengwar */ { CHR('t','e','n','g'), 0x12000, 0x1207f },
-/* Thaana */ { CHR('t','h','a','a'), 0x0780, 0x07bf },
-/* Thai */ { CHR('t','h','a','i'), 0x0e00, 0x0e7f },
-/* Tibetan */ { CHR('t','i','b','t'), 0x0f00, 0x0fff },
-/* Tifinagh */ { CHR('t','f','n','g'), 0x2d30, 0x2d7f },
-/* Ugaritic */ { CHR('u','g','a','r'), 0x10380, 0x1039d },
-/* Yi */ { CHR('y','i',' ',' '), 0xa000, 0xa4c6 },
- { 0 }
-};
-
-static SplineChar **SFOrderedGlyphs(SplineChar **glyphs);
-
-int ScriptIsRightToLeft(uint32 script) {
- if ( script==CHR('a','r','a','b') || script==CHR('h','e','b','r') ||
- script==CHR('c','p','m','n') || script==CHR('k','h','a','r') ||
- script==CHR('s','y','r','c') || script==CHR('t','h','a','a') ||
- script==CHR('n','k','o',' '))
-return( true );
-
-return( false );
-}
-
-uint32 ScriptFromUnicode(uint32 u,SplineFont *sf) {
- int s, k;
-
- if ( (int32)u!=-1 ) {
- for ( s=0; scripts[s][0]!=0; ++s ) {
- for ( k=1; scripts[s][k+1]!=0; k += 2 )
- if ( u>=scripts[s][k] && u<=scripts[s][k+1] )
- break;
- if ( scripts[s][k+1]!=0 )
- break;
- }
- if ( scripts[s][0]!=0 ) {
- uint32 script = scripts[s][0];
- if ( use_second_indic_scripts ) {
- /* MS has a parallel set of script tags for their new */
- /* Indic font shaper */
- if ( script == CHR('b','e','n','g' )) script = CHR('b','n','g','2');
- else if ( script == CHR('d','e','v','a' )) script = CHR('d','e','v','2');
- else if ( script == CHR('g','u','j','r' )) script = CHR('g','j','r','2');
- else if ( script == CHR('g','u','r','u' )) script = CHR('g','u','r','2');
- else if ( script == CHR('k','n','d','a' )) script = CHR('k','n','d','2');
- else if ( script == CHR('m','l','y','m' )) script = CHR('m','l','m','2');
- else if ( script == CHR('o','r','y','a' )) script = CHR('o','r','y','2');
- else if ( script == CHR('t','a','m','l' )) script = CHR('t','m','l','2');
- else if ( script == CHR('t','e','l','u' )) script = CHR('t','e','l','2');
- }
-return( script );
- }
- } else if ( sf!=NULL ) {
- if ( sf->cidmaster!=NULL || sf->subfontcnt!=0 ) {
- if ( sf->cidmaster!=NULL ) sf = sf->cidmaster;
- if ( strmatch(sf->ordering,"Identity")==0 )
-return( DEFAULT_SCRIPT );
- else if ( strmatch(sf->ordering,"Korean")==0 )
-return( CHR('h','a','n','g'));
- else
-return( CHR('h','a','n','i') );
- }
- }
-
-return( DEFAULT_SCRIPT );
-}
-
-uint32 SCScriptFromUnicode(SplineChar *sc) {
- const char *pt;
- PST *pst;
- SplineFont *sf;
- int i; unsigned uni;
- FeatureScriptLangList *features;
-
- if ( sc==NULL )
-return( DEFAULT_SCRIPT );
-
- sf = sc->parent;
- if ( sc->unicodeenc!=-1 &&
- !(sc->unicodeenc>=0xe000 && sc->unicodeenc<0xf8ff) &&
- !(sc->unicodeenc>=0xf0000 && sc->unicodeenc<0x10ffff))
-return( ScriptFromUnicode( sc->unicodeenc,sf ));
-
- pt = sc->name;
- if ( *pt ) for ( ++pt; *pt!='\0' && *pt!='_' && *pt!='.'; ++pt );
- if ( *pt!='\0' ) {
- char *str = copyn(sc->name,pt-sc->name);
- int uni = UniFromName(str,ui_none,&custom);
- free(str);
- if ( uni!=-1 )
-return( ScriptFromUnicode( uni,sf ));
- }
- /* Adobe ligature uniXXXXXXXX */
- if ( strncmp(sc->name,"uni",3)==0 && sscanf(sc->name+3,"%4x", &uni)==1 )
-return( ScriptFromUnicode( uni,sf ));
-
- if ( sf==NULL )
-return( DEFAULT_SCRIPT );
-
- if ( sf->cidmaster ) sf=sf->cidmaster;
- else if ( sf->mm!=NULL ) sf=sf->mm->normal;
- for ( i=0; i<2; ++i ) {
- for ( pst=sc->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->type == pst_lcaret )
- continue;
- for ( features = pst->subtable->lookup->features; features!=NULL; features=features->next ) {
- if ( features->scripts!=NULL )
-return( features->scripts->script );
- }
- }
- }
-return( ScriptFromUnicode( sc->unicodeenc,sf ));
-}
-
-int SCRightToLeft(SplineChar *sc) {
-
- if ( sc->unicodeenc>=0x10800 && sc->unicodeenc<=0x10fff )
-return( true ); /* Supplemental Multilingual Plane, RTL scripts */
- if ( sc->unicodeenc!=-1 && sc->unicodeenc<0x10000 )
-return( isrighttoleft(sc->unicodeenc ));
-
-return( ScriptIsRightToLeft(SCScriptFromUnicode(sc)));
-}
-
-static void GlyphMapFree(SplineChar ***map) {
- int i;
-
- if ( map==NULL )
- return;
- for ( i=0; map[i]!=NULL; ++i )
- free(map[i]);
- free(map);
-}
-
-static SplineChar **FindSubs(SplineChar *sc,struct lookup_subtable *sub) {
- SplineChar *spc[30], **space = spc;
- int max = sizeof(spc)/sizeof(spc[0]);
- int cnt=0;
- char *pt, *start;
- SplineChar *subssc, **ret;
- PST *pst;
-
- for ( pst=sc->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->subtable==sub ) {
- pt = pst->u.subs.variant;
- while ( 1 ) {
- while ( *pt==' ' ) ++pt; // Burn leading spaces.
- // Start tokenizing the space-delimited list of references.
- start = pt; // Note the beginning of the current item.
- pt = strchr(start,' '); // Find the end of the current item.
- if ( pt!=NULL )
- *pt = '\0'; // Temporarily terminate the item.
- subssc = SFGetChar(sc->parent,-1,start); // Find the corresponding SplineChar.
- if ( subssc!=NULL && subssc->ttf_glyph!=-1 ) {
- // Extend the list if necessary.
- if ( cnt>=max ) {
- if ( spc==space ) {
- space = malloc((max+=30)*sizeof(SplineChar *));
- memcpy(space,spc,(max-30)*sizeof(SplineChar *));
- } else
- space = realloc(space,(max+=30)*sizeof(SplineChar *));
- }
- // Write the SplineChar to the list.
- space[cnt++] = subssc;
- }
- if ( pt==NULL )
- break; // No more items.
- *pt=' '; // Repair the string from the tokenization process.
- }
- }
- }
- // Returning NULL causes problems and seems to be unnecessary for now.
- ret = malloc((cnt+1)*sizeof(SplineChar *));
- memcpy(ret,space,cnt*sizeof(SplineChar *));
- ret[cnt] = NULL;
- if ( space!=spc )
- free(space); // Free the temp space only if it is dynamically allocated.
- return( ret );
-}
-
-static SplineChar ***generateMapList(SplineChar **glyphs, struct lookup_subtable *sub) {
- int cnt;
- SplineChar *sc;
- int i;
- SplineChar ***maps=NULL;
-
- for ( cnt=0; glyphs[cnt]!=NULL; ++cnt );
- maps = malloc((cnt+1)*sizeof(SplineChar **));
- for ( i=0; i<cnt; ++i ) {
- sc = glyphs[i];
- maps[i] = FindSubs(sc,sub);
- if (maps[i] == NULL) {
- fprintf( stderr, "maps[%d] is null; glyphs[%d] is \"%s\"; lookup name is \"%s\".\n" , i , i , (glyphs[i]->name ? glyphs[i]->name : ""), sub->subtable_name) ;
- }
- }
- maps[cnt] = NULL;
-return( maps );
-}
-
-void AnchorClassDecompose(SplineFont *sf,AnchorClass *_ac, int classcnt, int *subcnts,
- SplineChar ***marks,SplineChar ***base,
- SplineChar ***lig,SplineChar ***mkmk,
- struct glyphinfo *gi) {
- /* Run through the font finding all characters with this anchor class */
- /* (and the cnt-1 classes after it) */
- /* and distributing in the four possible anchor types */
- int i,j,k,gid, gmax;
- struct sclist { int cnt; SplineChar **glyphs; } heads[at_max];
- AnchorPoint *test;
- AnchorClass *ac;
-
- memset(heads,0,sizeof(heads));
- memset(subcnts,0,classcnt*sizeof(int));
- memset(marks,0,classcnt*sizeof(SplineChar **));
- gmax = gi==NULL ? sf->glyphcnt : gi->gcnt;
- for ( j=0; j<2; ++j ) {
- for ( i=0; i<gmax; ++i ) if ( (gid = gi==NULL ? i : gi->bygid[i])!=-1 && gid < sf->glyphcnt && sf->glyphs[gid]!=NULL ) {
- for ( ac = _ac, k=0; k<classcnt; ac=ac->next ) if ( ac->matches ) {
- for ( test=sf->glyphs[gid]->anchor; test!=NULL ; test=test->next ) {
- if ( test->anchor==ac ) {
- if ( test->type==at_mark ) {
- if ( j )
- marks[k][subcnts[k]] = sf->glyphs[gid];
- ++subcnts[k];
- if ( ac->type!=act_mkmk )
- break;
- } else if ( test->type!=at_centry && test->type!=at_cexit ) {
- if ( heads[test->type].glyphs!=NULL ) {
- /* If we have multiple mark classes, we may use the same base glyph */
- /* with more than one mark class. But it should only appear once in */
- /* the output */
- if ( heads[test->type].cnt==0 ||
- heads[test->type].glyphs[heads[test->type].cnt-1]!=sf->glyphs[gid] ) {
- heads[test->type].glyphs[heads[test->type].cnt] = sf->glyphs[gid];
- ++heads[test->type].cnt;
- }
- } else
- ++heads[test->type].cnt;
- if ( ac->type!=act_mkmk )
- break;
- }
- }
- }
- ++k;
- }
- }
- if ( j==1 )
- break;
- for ( i=0; i<4; ++i )
- if ( heads[i].cnt!=0 ) {
- heads[i].glyphs = malloc((heads[i].cnt+1)*sizeof(SplineChar *));
- /* I used to set glyphs[cnt] to NULL here. But it turns out */
- /* cnt may be an overestimate on the first pass. So we can */
- /* only set it at the end of the second pass */
- heads[i].cnt = 0;
- }
- for ( k=0; k<classcnt; ++k ) if ( subcnts[k]!=0 ) {
- marks[k] = malloc((subcnts[k]+1)*sizeof(SplineChar *));
- marks[k][subcnts[k]] = NULL;
- subcnts[k] = 0;
- }
- }
- for ( i=0; i<4; ++i ) {
- if ( heads[i].glyphs!=NULL )
- heads[i].glyphs[heads[i].cnt] = NULL;
- }
- for ( i=0; i<classcnt; ++i ) {
- if ( subcnts[k]!=0 )
- SFOrderedGlyphs(marks[i]);
- }
-
- *base = SFOrderedGlyphs(heads[at_basechar].glyphs);
- *lig = SFOrderedGlyphs(heads[at_baselig].glyphs);
- *mkmk = SFOrderedGlyphs(heads[at_basemark].glyphs);
-}
-
-SplineChar **EntryExitDecompose(SplineFont *sf,AnchorClass *ac,struct glyphinfo *gi) {
- /* Run through the font finding all characters with this anchor class */
- int i,j, cnt, gmax, gid;
- SplineChar **array;
- AnchorPoint *test;
-
- array=NULL;
- gmax = gi==NULL ? sf->glyphcnt : gi->gcnt;
- for ( j=0; j<2; ++j ) {
- cnt = 0;
- for ( i=0; i<gmax; ++i ) if ( (gid = gi==NULL ? i : gi->bygid[i])!=-1 && sf->glyphs[gid]!=NULL ) {
- for ( test=sf->glyphs[gid]->anchor; test!=NULL && test->anchor!=ac; test=test->next );
- if ( test!=NULL && (test->type==at_centry || test->type==at_cexit )) {
- if ( array!=NULL )
- array[cnt] = sf->glyphs[gid];
- ++cnt;
- }
- }
- if ( cnt==0 )
-return( NULL );
- if ( j==1 )
- break;
- array = malloc((cnt+1)*sizeof(SplineChar *));
- array[cnt] = NULL;
- }
-return( array );
-}
-
-static void AnchorGuessContext(SplineFont *sf,struct alltabs *at) {
- int i;
- int maxbase=0, maxmark=0, basec, markc;
- AnchorPoint *ap;
- int hascursive = 0;
-
- /* the order in which we examine the glyphs does not matter here, so */
- /* we needn't add the complexity running though in gid order */
- for ( i=0; i<sf->glyphcnt; ++i ) if ( sf->glyphs[i] ) {
- basec = markc = 0;
- for ( ap = sf->glyphs[i]->anchor; ap!=NULL; ap=ap->next )
- if ( ap->type==at_basemark )
- ++markc;
- else if ( ap->type==at_basechar || ap->type==at_baselig )
- ++basec;
- else if ( ap->type==at_centry )
- hascursive = true;
- if ( basec>maxbase ) maxbase = basec;
- if ( markc>maxmark ) maxmark = markc;
- }
-
- if ( maxbase*(maxmark+1)>at->os2.maxContext )
- at->os2.maxContext = maxbase*(maxmark+1);
- if ( hascursive && at->os2.maxContext<2 )
- at->os2.maxContext=2;
-}
-
-static void dumpcoveragetable(FILE *gpos,SplineChar **glyphs) {
- int i, last = -2, range_cnt=0, start, r;
- /* the glyph list should already be sorted */
- /* figure out whether it is better (smaller) to use an array of glyph ids */
- /* or a set of glyph id ranges */
-
- for ( i=0; glyphs[i]!=NULL; ++i ) {
- if ( glyphs[i]->ttf_glyph<=last )
- IError("Glyphs must be ordered when creating coverage table");
- if ( glyphs[i]->ttf_glyph!=last+1 )
- ++range_cnt;
- last = glyphs[i]->ttf_glyph;
- }
- /* I think Windows will only accept format 2 coverage tables? */
- if ( !(coverageformatsallowed&2) || ((coverageformatsallowed&1) && i<=3*range_cnt )) {
- /* We use less space with a list of glyphs than with a set of ranges */
- putshort(gpos,1); /* Coverage format=1 => glyph list */
- putshort(gpos,i); /* count of glyphs */
- for ( i=0; glyphs[i]!=NULL; ++i )
- putshort(gpos,glyphs[i]->ttf_glyph); /* array of glyph IDs */
- } else {
- putshort(gpos,2); /* Coverage format=2 => range list */
- putshort(gpos,range_cnt); /* count of ranges */
- last = -2; start = -2; /* start is a index in our glyph array, last is ttf_glyph */
- r = 0;
- for ( i=0; glyphs[i]!=NULL; ++i ) {
- if ( glyphs[i]->ttf_glyph!=last+1 ) {
- if ( last!=-2 ) {
- putshort(gpos,glyphs[start]->ttf_glyph); /* start glyph ID */
- putshort(gpos,last); /* end glyph ID */
- putshort(gpos,start); /* coverage index of start glyph */
- ++r;
- }
- start = i;
- }
- last = glyphs[i]->ttf_glyph;
- }
- if ( last!=-2 ) {
- putshort(gpos,glyphs[start]->ttf_glyph); /* start glyph ID */
- putshort(gpos,last); /* end glyph ID */
- putshort(gpos,start); /* coverage index of start glyph */
- ++r;
- }
- if ( r!=range_cnt )
- IError("Miscounted ranges in format 2 coverage table output");
- }
-}
-
-static int sc_ttf_order( const void *_sc1, const void *_sc2) {
- const SplineChar *sc1 = *(const SplineChar **) _sc1, *sc2 = *(const SplineChar **) _sc2;
-return( sc1->ttf_glyph - sc2->ttf_glyph );
-}
-
-static SplineChar **SFOrderedGlyphs(SplineChar **glyphs) {
- int cnt, i, k;
- if ( glyphs==NULL )
-return( NULL );
- for ( cnt=0; glyphs[cnt]!=NULL; ++cnt);
- qsort(glyphs,cnt,sizeof(SplineChar *),sc_ttf_order);
- if ( glyphs[0]->ttf_glyph==-1 ) {
- /* Not sure if this can happen, but it's easy to fix */
- for ( k=0; k<cnt && glyphs[k]->ttf_glyph==-1; ++k);
- for ( i=0; i<=cnt-k; ++i )
- glyphs[i] = glyphs[i+k];
- }
- for ( i=0; i<cnt-1; ++i )
- if (glyphs[i]->ttf_glyph==glyphs[i+1]->ttf_glyph) {
- memmove(glyphs+i, glyphs+i+1, (cnt-i)*sizeof(SplineChar *));
- --cnt;
- }
-return( glyphs );
-}
-
-static SplineChar **SFOrderedGlyphsWithPSTinSubtable(SplineFont *sf,struct lookup_subtable *sub) {
- SplineChar **glyphs = SFGlyphsWithPSTinSubtable(sf,sub);
- return SFOrderedGlyphs(glyphs);
-}
-
-SplineChar **SFGlyphsFromNames(SplineFont *sf,char *names) {
- int cnt, ch;
- char *pt, *end;
- SplineChar *sc, **glyphs;
-
- if ( names==NULL )
-return( calloc(1,sizeof(SplineChar *)) );
-
- cnt = 0;
- for ( pt = names; *pt; pt = end+1 ) {
- ++cnt;
- end = strchr(pt,' ');
- if ( end==NULL )
- break;
- }
-
- glyphs = malloc((cnt+1)*sizeof(SplineChar *));
- cnt = 0;
- for ( pt = names; *pt; pt = end+1 ) {
- end = strchr(pt,' ');
- if ( end==NULL )
- end = pt+strlen(pt);
- ch = *end;
- *end = '\0';
- sc = SFGetChar(sf,-1,pt);
- if ( sc!=NULL && sc->ttf_glyph!=-1 )
- glyphs[cnt++] = sc;
- *end = ch;
- if ( ch=='\0' )
- break;
- }
- glyphs[cnt] = NULL;
-return( glyphs );
-}
-
-static SplineChar **OrderedGlyphsFromNames(SplineFont *sf,char *names) {
- SplineChar **glyphs = SFGlyphsFromNames(sf,names);
- int i,j;
-
- if ( glyphs==NULL || glyphs[0]==NULL )
-return( glyphs );
-
- for ( i=0; glyphs[i+1]!=NULL; ++i ) for ( j=i+1; glyphs[j]!=NULL; ++j ) {
- if ( glyphs[i]->ttf_glyph > glyphs[j]->ttf_glyph ) {
- SplineChar *sc = glyphs[i];
- glyphs[i] = glyphs[j];
- glyphs[j] = sc;
- }
- }
- if ( glyphs[0]!=NULL ) { /* Glyphs should not appear twice in the name list, just just in case they do... */
- for ( i=0; glyphs[i+1]!=NULL; ++i ) {
- if ( glyphs[i]==glyphs[i+1] ) {
- for ( j=i+1; glyphs[j]!=NULL; ++j )
- glyphs[j] = glyphs[j+1];
- }
- }
- }
-return( glyphs );
-}
-
-static void gposvrmaskeddump(FILE *gpos,int vf1,int mask,int offset) {
- if ( vf1&1 ) putshort(gpos,mask&1 ? offset : 0 );
- if ( vf1&2 ) putshort(gpos,mask&2 ? offset : 0 );
- if ( vf1&4 ) putshort(gpos,mask&4 ? offset : 0 );
- if ( vf1&8 ) putshort(gpos,mask&8 ? offset : 0 );
-}
-
-static int devtaboffsetsize(DeviceTable *dt) {
- int type = 1, i;
-
- for ( i=dt->last_pixel_size-dt->first_pixel_size; i>=0; --i ) {
- if ( dt->corrections[i]>=8 || dt->corrections[i]<-8 )
-return( 3 );
- else if ( dt->corrections[i]>=2 || dt->corrections[i]<-2 )
- type = 2;
- }
-return( type );
-}
-
-static void dumpgposdevicetable(FILE *gpos,DeviceTable *dt) {
- int type;
- int i,cnt,b;
-
- if ( dt==NULL || dt->corrections==NULL )
-return;
- type = devtaboffsetsize(dt);
- putshort(gpos,dt->first_pixel_size);
- putshort(gpos,dt->last_pixel_size );
- putshort(gpos,type);
- cnt = dt->last_pixel_size - dt->first_pixel_size + 1;
- if ( type==3 ) {
- for ( i=0; i<cnt; ++i )
- putc(dt->corrections[i],gpos);
- if ( cnt&1 )
- putc(0,gpos);
- } else if ( type==2 ) {
- for ( i=0; i<cnt; i+=4 ) {
- int val = 0;
- for ( b=0; b<4 && i+b<cnt; ++b )
- val |= (dt->corrections[i+b]&0x000f)<<(12-b*4);
- putshort(gpos,val);
- }
- } else {
- for ( i=0; i<cnt; i+=8 ) {
- int val = 0;
- for ( b=0; b<8 && i+b<cnt; ++b )
- val |= (dt->corrections[i+b]&0x0003)<<(14-b*2);
- putshort(gpos,val);
- }
- }
-}
-
-static int DevTabLen(DeviceTable *dt) {
- int type;
- int cnt;
-
- if ( dt==NULL || dt->corrections==NULL )
-return( 0 );
- cnt = dt->last_pixel_size - dt->first_pixel_size + 1;
- type = devtaboffsetsize(dt);
- if ( type==3 )
- cnt = (cnt+1)/2;
- else if ( type==2 )
- cnt = (cnt+3)/4;
- else
- cnt = (cnt+7)/8;
- cnt += 3; /* first, last, type */
-return( sizeof(uint16)*cnt );
-}
-
-static int ValDevTabLen(ValDevTab *vdt) {
-
- if ( vdt==NULL )
-return( 0 );
-
-return( DevTabLen(&vdt->xadjust) + DevTabLen(&vdt->yadjust) +
- DevTabLen(&vdt->xadv) + DevTabLen(&vdt->yadv) );
-}
-
-static int gposdumpvaldevtab(FILE *gpos,ValDevTab *vdt,int bits,int next_dev_tab ) {
-
- if ( bits&0x10 ) {
- if ( vdt==NULL || vdt->xadjust.corrections==NULL )
- putshort(gpos,0);
- else {
- putshort(gpos,next_dev_tab);
- next_dev_tab += DevTabLen(&vdt->xadjust);
- }
- }
- if ( bits&0x20 ) {
- if ( vdt==NULL || vdt->yadjust.corrections==NULL )
- putshort(gpos,0);
- else {
- putshort(gpos,next_dev_tab);
- next_dev_tab += DevTabLen(&vdt->yadjust);
- }
- }
- if ( bits&0x40 ) {
- if ( vdt==NULL || vdt->xadv.corrections==NULL )
- putshort(gpos,0);
- else {
- putshort(gpos,next_dev_tab);
- next_dev_tab += DevTabLen(&vdt->xadv);
- }
- }
- if ( bits&0x80 ) {
- if ( vdt==NULL || vdt->yadv.corrections==NULL )
- putshort(gpos,0);
- else {
- putshort(gpos,next_dev_tab);
- next_dev_tab += DevTabLen(&vdt->yadv);
- }
- }
-return( next_dev_tab );
-}
-
-static int gposmaskeddumpdevtab(FILE *gpos,DeviceTable *dt,int bits,int mask,
- int next_dev_tab ) {
-
- if ( bits&0x10 ) {
- if ( !(mask&0x10) || dt==NULL )
- putshort(gpos,0);
- else {
- putshort(gpos,next_dev_tab);
- next_dev_tab += DevTabLen(dt);
- }
- }
- if ( bits&0x20 ) {
- if ( !(mask&0x20) || dt==NULL )
- putshort(gpos,0);
- else {
- putshort(gpos,next_dev_tab);
- next_dev_tab += DevTabLen(dt);
- }
- }
- if ( bits&0x40 ) {
- if ( !(mask&0x40) || dt==NULL )
- putshort(gpos,0);
- else {
- putshort(gpos,next_dev_tab);
- next_dev_tab += DevTabLen(dt);
- }
- }
- if ( bits&0x80 ) {
- if ( !(mask&0x80) || dt==NULL )
- putshort(gpos,0);
- else {
- putshort(gpos,next_dev_tab);
- next_dev_tab += DevTabLen(dt);
- }
- }
-return( next_dev_tab );
-}
-
-static int DevTabsSame(DeviceTable *dt1, DeviceTable *dt2) {
- DeviceTable _dt;
- int i;
-
- if ( dt1==NULL && dt2==NULL )
-return( true );
- if ( dt1==NULL ) {
- memset(&_dt,0,sizeof(_dt));
- dt1 = &_dt;
- }
- if ( dt2==NULL ) {
- memset(&_dt,0,sizeof(_dt));
- dt2 = &_dt;
- }
- if ( dt1->corrections==NULL && dt2->corrections==NULL )
-return( true );
- if ( dt1->corrections==NULL || dt2->corrections==NULL )
-return( false );
- if ( dt1->first_pixel_size!=dt2->first_pixel_size ||
- dt1->last_pixel_size!=dt2->last_pixel_size )
-return( false );
- for ( i=dt2->last_pixel_size-dt1->first_pixel_size; i>=0; --i )
- if ( dt1->corrections[i]!=dt2->corrections[i] )
-return( false );
-
-return( true );
-}
-
-static int ValDevTabsSame(ValDevTab *vdt1, ValDevTab *vdt2) {
- ValDevTab _vdt;
-
- if ( vdt1==NULL && vdt2==NULL )
-return( true );
- if ( vdt1==NULL ) {
- memset(&_vdt,0,sizeof(_vdt));
- vdt1 = &_vdt;
- }
- if ( vdt2==NULL ) {
- memset(&_vdt,0,sizeof(_vdt));
- vdt2 = &_vdt;
- }
-return( DevTabsSame(&vdt1->xadjust,&vdt2->xadjust) &&
- DevTabsSame(&vdt1->yadjust,&vdt2->yadjust) &&
- DevTabsSame(&vdt1->xadv,&vdt2->xadv) &&
- DevTabsSame(&vdt1->yadv,&vdt2->yadv) );
-}
-
-static void dumpGPOSsimplepos(FILE *gpos,SplineFont *sf,struct lookup_subtable *sub ) {
- int cnt, cnt2;
- int32 coverage_pos, end;
- PST *pst, *first=NULL;
- int bits = 0, same=true;
- SplineChar **glyphs;
-
- glyphs = SFOrderedGlyphsWithPSTinSubtable(sf,sub);
- for ( cnt=cnt2=0; glyphs[cnt]!=NULL; ++cnt) {
- for ( pst=glyphs[cnt]->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->subtable==sub && pst->type==pst_position ) {
- if ( first==NULL ) first = pst;
- else if ( same ) {
- if ( first->u.pos.xoff!=pst->u.pos.xoff ||
- first->u.pos.yoff!=pst->u.pos.yoff ||
- first->u.pos.h_adv_off!=pst->u.pos.h_adv_off ||
- first->u.pos.v_adv_off!=pst->u.pos.v_adv_off )
- same = false;
- if ( !ValDevTabsSame(pst->u.pos.adjust,first->u.pos.adjust))
- same = false;
- }
- if ( pst->u.pos.xoff!=0 ) bits |= 1;
- if ( pst->u.pos.yoff!=0 ) bits |= 2;
- if ( pst->u.pos.h_adv_off!=0 ) bits |= 4;
- if ( pst->u.pos.v_adv_off!=0 ) bits |= 8;
- if ( pst->u.pos.adjust!=NULL ) {
- if ( pst->u.pos.adjust->xadjust.corrections!=NULL ) bits |= 0x10;
- if ( pst->u.pos.adjust->yadjust.corrections!=NULL ) bits |= 0x20;
- if ( pst->u.pos.adjust->xadv.corrections!=NULL ) bits |= 0x40;
- if ( pst->u.pos.adjust->yadv.corrections!=NULL ) bits |= 0x80;
- }
- ++cnt2;
- break;
- }
- }
- }
- if ( bits==0 ) bits=1;
- if ( cnt!=cnt2 )
- IError( "Count mismatch in dumpGPOSsimplepos#1 %d vs %d\n", cnt, cnt2 );
-
- putshort(gpos,same?1:2); /* 1 means all value records same */
- coverage_pos = ftell(gpos);
- putshort(gpos,0); /* offset to coverage table */
- putshort(gpos,bits);
- if ( same ) {
- if ( bits&1 ) putshort(gpos,first->u.pos.xoff);
- if ( bits&2 ) putshort(gpos,first->u.pos.yoff);
- if ( bits&4 ) putshort(gpos,first->u.pos.h_adv_off);
- if ( bits&8 ) putshort(gpos,first->u.pos.v_adv_off);
- if ( bits&0xf0 ) {
- int next_dev_tab = ftell(gpos)-coverage_pos+2+
- sizeof(int16)*((bits&0x10?1:0) + (bits&0x20?1:0) + (bits&0x40?1:0) + (bits&0x80?1:0));
- if ( bits&0x10 ) { putshort(gpos,next_dev_tab); next_dev_tab += DevTabLen(&first->u.pos.adjust->xadjust); }
- if ( bits&0x20 ) { putshort(gpos,next_dev_tab); next_dev_tab += DevTabLen(&first->u.pos.adjust->yadjust); }
- if ( bits&0x40 ) { putshort(gpos,next_dev_tab); next_dev_tab += DevTabLen(&first->u.pos.adjust->xadv); }
- if ( bits&0x80 ) { putshort(gpos,next_dev_tab); next_dev_tab += DevTabLen(&first->u.pos.adjust->yadv); }
- if ( bits&0x10 ) dumpgposdevicetable(gpos,&first->u.pos.adjust->xadjust);
- if ( bits&0x20 ) dumpgposdevicetable(gpos,&first->u.pos.adjust->yadjust);
- if ( bits&0x40 ) dumpgposdevicetable(gpos,&first->u.pos.adjust->xadv);
- if ( bits&0x80 ) dumpgposdevicetable(gpos,&first->u.pos.adjust->yadv);
- if ( next_dev_tab!=ftell(gpos)-coverage_pos+2 )
- IError( "Device Table offsets wrong in simple positioning 2");
- }
- } else {
- int vr_size =
- sizeof(int16)*((bits&0x1?1:0) + (bits&0x2?1:0) + (bits&0x4?1:0) + (bits&0x8?1:0) +
- (bits&0x10?1:0) + (bits&0x20?1:0) + (bits&0x40?1:0) + (bits&0x80?1:0));
- int next_dev_tab = ftell(gpos)-coverage_pos+2+2+vr_size*cnt;
- putshort(gpos,cnt);
- for ( cnt2 = 0; glyphs[cnt2]!=NULL; ++cnt2 ) {
- for ( pst=glyphs[cnt2]->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->subtable==sub && pst->type==pst_position ) {
- if ( bits&1 ) putshort(gpos,pst->u.pos.xoff);
- if ( bits&2 ) putshort(gpos,pst->u.pos.yoff);
- if ( bits&4 ) putshort(gpos,pst->u.pos.h_adv_off);
- if ( bits&8 ) putshort(gpos,pst->u.pos.v_adv_off);
- next_dev_tab = gposdumpvaldevtab(gpos,pst->u.pos.adjust,bits,
- next_dev_tab);
- break;
- }
- }
- }
- if ( cnt!=cnt2 )
- IError( "Count mismatch in dumpGPOSsimplepos#3 %d vs %d\n", cnt, cnt2 );
- if ( bits&0xf0 ) {
- for ( cnt2 = 0; glyphs[cnt2]!=NULL; ++cnt2 ) {
- for ( pst=glyphs[cnt2]->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->subtable==sub && pst->type==pst_position ) {
- if ( bits&0x10 ) dumpgposdevicetable(gpos,&first->u.pos.adjust->xadjust);
- if ( bits&0x20 ) dumpgposdevicetable(gpos,&first->u.pos.adjust->yadjust);
- if ( bits&0x40 ) dumpgposdevicetable(gpos,&first->u.pos.adjust->xadv);
- if ( bits&0x80 ) dumpgposdevicetable(gpos,&first->u.pos.adjust->yadv);
- }
- }
- }
- }
- if ( next_dev_tab!=ftell(gpos)-coverage_pos+2 )
- IError( "Device Table offsets wrong in simple positioning 2");
- }
- end = ftell(gpos);
- fseek(gpos,coverage_pos,SEEK_SET);
- putshort(gpos,end-coverage_pos+2);
- fseek(gpos,end,SEEK_SET);
- dumpcoveragetable(gpos,glyphs);
- fseek(gpos,0,SEEK_END);
- free(glyphs);
-}
-
-struct sckppst {
- uint16 samewas;
- uint16 devtablen;
- uint16 tot;
- uint8 isv;
- uint8 subtable_too_big;
-/* The first few fields are only meaningful in the first structure in the array*/
-/* and provide information about the entire rest of the array */
- uint16 other_gid;
- SplineChar *sc;
- KernPair *kp;
- PST *pst;
-};
-
-static int cmp_gid( const void *_s1, const void *_s2 ) {
- const struct sckppst *s1 = _s1, *s2 = _s2;
-return( ((int) s1->other_gid) - ((int) s2->other_gid) );
-}
-
-static void dumpGPOSpairpos(FILE *gpos,SplineFont *sf,struct lookup_subtable *sub) {
- int cnt;
- int32 coverage_pos, offset_pos, end, start, pos;
- PST *pst;
- KernPair *kp;
- int vf1 = 0, vf2=0, i, j, k, tot, bit_cnt, v;
- int start_cnt, end_cnt;
- int chunk_cnt, chunk_max;
- SplineChar *sc, **glyphs, *gtemp;
- struct sckppst **seconds;
- int devtablen;
- int next_dev_tab;
-
- /* Figure out all the data we need. First the glyphs with kerning info */
- /* then the glyphs to which they kern, and by how much */
- glyphs = SFOrderedGlyphsWithPSTinSubtable(sf,sub);
- for ( cnt=0; glyphs[cnt]!=NULL; ++cnt);
- seconds = malloc(cnt*sizeof(struct sckppst *));
- for ( cnt=0; glyphs[cnt]!=NULL; ++cnt) {
- for ( k=0; k<2; ++k ) {
- devtablen = 0;
- tot = 0;
- for ( pst=glyphs[cnt]->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->subtable==sub && pst->type==pst_pair &&
- (sc = SFGetChar(sf,-1,pst->u.pair.paired))!=NULL &&
- sc->ttf_glyph!=-1 ) {
- if ( k ) {
- seconds[cnt][tot].sc = sc;
- seconds[cnt][tot].other_gid = sc->ttf_glyph;
- seconds[cnt][tot].pst = pst;
- devtablen += ValDevTabLen(pst->u.pair.vr[0].adjust) +
- ValDevTabLen(pst->u.pair.vr[1].adjust);
-
- }
- ++tot;
- }
- }
- for ( v=0; v<2; ++v ) {
- for ( kp = v ? glyphs[cnt]->vkerns : glyphs[cnt]->kerns; kp!=NULL; kp=kp->next ) {
- if( kp->subtable!=sub ) continue; // process only glyphs from the current subtable
- if ( kp->sc->ttf_glyph!=-1 ) {
- if ( k ) {
- seconds[cnt][tot].other_gid = kp->sc->ttf_glyph;
- seconds[cnt][tot].sc = kp->sc;
- seconds[cnt][tot].kp = kp;
- seconds[cnt][tot].isv = v;
- devtablen += DevTabLen(kp->adjust);
- }
- ++tot;
- }
- }
- }
- if ( k==0 ) {
- seconds[cnt] = calloc(tot+1,sizeof(struct sckppst));
- } else {
- qsort(seconds[cnt],tot,sizeof(struct sckppst),cmp_gid);
- seconds[cnt][0].tot = tot;
- /* Devtablen is 0 unless we are configured for device tables */
- seconds[cnt][0].devtablen = devtablen;
- seconds[cnt][0].samewas = 0xffff;
- }
- }
- }
-
- /* Some fonts do a primitive form of class based kerning, several glyphs */
- /* can share the same list of second glyphs & offsets */
- for ( cnt=0; glyphs[cnt]!=NULL; ++cnt) {
- struct sckppst *test = seconds[cnt], *test2;
- for ( i=cnt-1; i>=0; --i ) {
- test2 = seconds[i];
- if ( test[0].tot != test2[0].tot || test2[0].samewas!=0xffff )
- continue;
- for ( j=test[0].tot-1; j>=0; --j ) {
- if ( test[j].other_gid != test2[j].other_gid )
- break;
- if ( test[j].kp!=NULL && test2[j].kp!=NULL &&
- test[j].kp->off == test2[j].kp->off
- && DevTabsSame(test[j].kp->adjust,test2[j].kp->adjust)
- )
- /* So far, so good */;
- else if ( test[j].pst!=NULL && test2[j].pst!=NULL &&
- test[j].pst->u.pair.vr[0].xoff == test2[j].pst->u.pair.vr[0].xoff &&
- test[j].pst->u.pair.vr[0].yoff == test2[j].pst->u.pair.vr[0].yoff &&
- test[j].pst->u.pair.vr[0].h_adv_off == test2[j].pst->u.pair.vr[0].h_adv_off &&
- test[j].pst->u.pair.vr[0].v_adv_off == test2[j].pst->u.pair.vr[0].v_adv_off &&
- test[j].pst->u.pair.vr[1].xoff == test2[j].pst->u.pair.vr[1].xoff &&
- test[j].pst->u.pair.vr[1].yoff == test2[j].pst->u.pair.vr[1].yoff &&
- test[j].pst->u.pair.vr[1].h_adv_off == test2[j].pst->u.pair.vr[1].h_adv_off &&
- test[j].pst->u.pair.vr[1].v_adv_off == test2[j].pst->u.pair.vr[1].v_adv_off
- && ValDevTabsSame(test[j].pst->u.pair.vr[0].adjust,test2[j].pst->u.pair.vr[0].adjust)
- && ValDevTabsSame(test[j].pst->u.pair.vr[1].adjust,test2[j].pst->u.pair.vr[1].adjust)
- )
- /* That's ok too. */;
- else
- break;
- }
- if ( j>=0 )
- continue;
- test[0].samewas = i;
- break;
- }
- }
-
- /* Ok, how many offsets must we output? Normal kerning will just use */
- /* one offset (with perhaps a device table), but the standard allows */
- /* us to adjust 8 different values (with 8 different device tables) */
- /* Find out which we need */
- for ( cnt=0; glyphs[cnt]!=NULL; ++cnt) {
- for ( tot=0 ; tot<seconds[cnt][0].tot; ++tot ) {
- if ( (pst=seconds[cnt][tot].pst)!=NULL ) {
- if ( pst->subtable==sub && pst->type==pst_pair ) {
- if ( pst->u.pair.vr[0].xoff!=0 ) vf1 |= 1;
- if ( pst->u.pair.vr[0].yoff!=0 ) vf1 |= 2;
- if ( pst->u.pair.vr[0].h_adv_off!=0 ) vf1 |= 4;
- if ( pst->u.pair.vr[0].v_adv_off!=0 ) vf1 |= 8;
- if ( pst->u.pair.vr[0].adjust!=NULL ) {
- if ( pst->u.pair.vr[0].adjust->xadjust.corrections!=NULL ) vf1 |= 0x10;
- if ( pst->u.pair.vr[0].adjust->yadjust.corrections!=NULL ) vf1 |= 0x20;
- if ( pst->u.pair.vr[0].adjust->xadv.corrections!=NULL ) vf1 |= 0x40;
- if ( pst->u.pair.vr[0].adjust->yadv.corrections!=NULL ) vf1 |= 0x80;
- }
- if ( pst->u.pair.vr[1].xoff!=0 ) vf2 |= 1;
- if ( pst->u.pair.vr[1].yoff!=0 ) vf2 |= 2;
- if ( pst->u.pair.vr[1].h_adv_off!=0 ) vf2 |= 4;
- if ( pst->u.pair.vr[1].v_adv_off!=0 ) vf2 |= 8;
- if ( pst->u.pair.vr[1].adjust!=NULL ) {
- if ( pst->u.pair.vr[1].adjust->xadjust.corrections!=NULL ) vf2 |= 0x10;
- if ( pst->u.pair.vr[1].adjust->yadjust.corrections!=NULL ) vf2 |= 0x20;
- if ( pst->u.pair.vr[1].adjust->xadv.corrections!=NULL ) vf2 |= 0x40;
- if ( pst->u.pair.vr[1].adjust->yadv.corrections!=NULL ) vf2 |= 0x80;
- }
- }
- }
- if ( (kp = seconds[cnt][tot].kp)!=NULL ) {
- int mask = 0, mask2=0;
- if ( seconds[cnt][tot].isv )
- mask = 0x0008;
- else
- mask = 0x0004;
- if ( kp->adjust!=NULL ) {
- mask |= mask<<4;
- mask2 |= mask2<<4;
- }
- vf1 |= mask;
- vf2 |= mask2;
- }
- }
- }
- if ( vf1==0 && vf2==0 ) vf1=1;
- bit_cnt = 0;
- for ( i=0; i<8; ++i ) {
- if ( vf1&(1<<i) ) ++bit_cnt;
- if ( vf2&(1<<i) ) ++bit_cnt;
- }
-
- chunk_max = chunk_cnt = 0;
- for ( start_cnt=0; start_cnt<cnt; start_cnt=end_cnt ) {
- int len = 5*2; /* Subtable header */
- for ( end_cnt=start_cnt; end_cnt<cnt; ++end_cnt ) {
- int glyph_len = 2; /* For the glyph's offset */
- if ( seconds[end_cnt][0].samewas==0xffff || seconds[end_cnt][0].samewas<start_cnt )
- glyph_len += (bit_cnt*2+2)*seconds[end_cnt][0].tot +
- seconds[end_cnt][0].devtablen +
- 2; /* Number of secondary glyphs */
- if ( glyph_len>65535 && end_cnt==start_cnt ) {
- LogError(_("Lookup subtable %s contains a glyph %s whose kerning information takes up more than 64k bytes\n"),
- sub->subtable_name, glyphs[start_cnt]->name );
- len += glyph_len;
- } else if ( len+glyph_len>65535 ) {
- if( start_cnt==0 )
- LogError(_("Lookup subtable %s had to be split into several subtables\nbecause it was too big.\n"),
- sub->subtable_name );
- break;
- } else
- len += glyph_len;
- }
- if ( start_cnt!=0 || end_cnt!=cnt ) {
- if ( chunk_cnt>=chunk_max )
- sub->extra_subtables = realloc(sub->extra_subtables,((chunk_max+=10)+1)*sizeof(uint32));
- sub->extra_subtables[chunk_cnt++] = ftell(gpos);
- sub->extra_subtables[chunk_cnt] = -1;
- }
-
- start = ftell(gpos);
- putshort(gpos,1); /* 1 means char pairs (ie. not classes) */
- coverage_pos = ftell(gpos);
- putshort(gpos,0); /* offset to coverage table */
- putshort(gpos,vf1);
- putshort(gpos,vf2);
- putshort(gpos,end_cnt-start_cnt);
- offset_pos = ftell(gpos);
- for ( i=start_cnt; i<end_cnt; ++i )
- putshort(gpos,0); /* Fill in later */
- for ( i=start_cnt; i<end_cnt; ++i ) {
- if ( seconds[i][0].samewas>= start_cnt && seconds[i][0].samewas!=0xffff ) {
- /* It's the same as the glyph at samewas, so just copy the */
- /* offset from there. We don't need to do anything else */
- int offset;
- fseek(gpos,offset_pos+(seconds[i][0].samewas-start_cnt)*sizeof(uint16),SEEK_SET);
- offset = getushort(gpos);
- fseek(gpos,offset_pos+(i-start_cnt)*sizeof(uint16),SEEK_SET);
- putshort(gpos,offset);
- fseek(gpos,0,SEEK_END);
- continue;
- }
- next_dev_tab = ftell(gpos)-start;
- if ( (vf1&0xf0) || (vf2&0xf0) ) {
- for ( tot=0 ; tot<seconds[i][0].tot; ++tot ) {
- if ( (pst=seconds[i][tot].pst)!=NULL ) {
- if ( pst->u.pair.vr[0].adjust!=NULL ) {
- dumpgposdevicetable(gpos,&pst->u.pair.vr[0].adjust->xadjust);
- dumpgposdevicetable(gpos,&pst->u.pair.vr[0].adjust->yadjust);
- dumpgposdevicetable(gpos,&pst->u.pair.vr[0].adjust->xadv);
- dumpgposdevicetable(gpos,&pst->u.pair.vr[0].adjust->yadv);
- }
- if ( pst->u.pair.vr[1].adjust!=NULL ) {
- dumpgposdevicetable(gpos,&pst->u.pair.vr[1].adjust->xadjust);
- dumpgposdevicetable(gpos,&pst->u.pair.vr[1].adjust->yadjust);
- dumpgposdevicetable(gpos,&pst->u.pair.vr[1].adjust->xadv);
- dumpgposdevicetable(gpos,&pst->u.pair.vr[1].adjust->yadv);
- }
- }
- if ( (kp=seconds[i][tot].kp)!=NULL && kp->adjust!=NULL )
- dumpgposdevicetable(gpos,kp->adjust);
- }
- }
- pos = ftell(gpos);
- fseek(gpos,offset_pos+(i-start_cnt)*sizeof(uint16),SEEK_SET);
- putshort(gpos,pos-start);
- fseek(gpos,pos,SEEK_SET);
-
- putshort(gpos,seconds[i][0].tot);
- for ( tot=0 ; tot<seconds[i][0].tot; ++tot ) {
- putshort(gpos,seconds[i][tot].other_gid);
- if ( (pst=seconds[i][tot].pst)!=NULL ) {
- if ( vf1&1 ) putshort(gpos,pst->u.pair.vr[0].xoff);
- if ( vf1&2 ) putshort(gpos,pst->u.pair.vr[0].yoff);
- if ( vf1&4 ) putshort(gpos,pst->u.pair.vr[0].h_adv_off);
- if ( vf1&8 ) putshort(gpos,pst->u.pair.vr[0].v_adv_off);
- next_dev_tab = gposdumpvaldevtab(gpos,pst->u.pair.vr[0].adjust,vf1,
- next_dev_tab);
- if ( vf2&1 ) putshort(gpos,pst->u.pair.vr[1].xoff);
- if ( vf2&2 ) putshort(gpos,pst->u.pair.vr[1].yoff);
- if ( vf2&4 ) putshort(gpos,pst->u.pair.vr[1].h_adv_off);
- if ( vf2&8 ) putshort(gpos,pst->u.pair.vr[1].v_adv_off);
- next_dev_tab = gposdumpvaldevtab(gpos,pst->u.pair.vr[1].adjust,vf2,
- next_dev_tab);
- } else if ( (kp=seconds[i][tot].kp)!=NULL ) {
- int mask=0, mask2=0;
- if ( seconds[i][tot].isv )
- mask = 0x8;
- else
- mask = 0x4;
- gposvrmaskeddump(gpos,vf1,mask,kp->off);
- next_dev_tab = gposmaskeddumpdevtab(gpos,kp->adjust,vf1,mask<<4,
- next_dev_tab);
- gposvrmaskeddump(gpos,vf2,mask2,kp->off);
- next_dev_tab = gposmaskeddumpdevtab(gpos,kp->adjust,vf2,mask2<<4,
- next_dev_tab);
- }
- }
- }
- end = ftell(gpos);
- fseek(gpos,coverage_pos,SEEK_SET);
- if ( end-start>65535 )
- IError(_("I miscalculated the size of subtable %s, this means the kerning output is wrong."), sub->subtable_name );
- putshort(gpos,end-start);
- fseek(gpos,end,SEEK_SET);
- gtemp = glyphs[end_cnt]; glyphs[end_cnt] = NULL;
- dumpcoveragetable(gpos,glyphs+start_cnt);
- glyphs[end_cnt] = gtemp;
- }
- for ( i=0; i<cnt; ++i )
- free(seconds[i]);
- free(seconds);
- free(glyphs);
-}
-
-uint16 *ClassesFromNames(SplineFont *sf,char **classnames,int class_cnt,
- int numGlyphs, SplineChar ***glyphs, int apple_kc) {
- uint16 *class;
- int i;
- char *pt, *end, ch;
- SplineChar *sc, **gs=NULL;
- int offset = (apple_kc && classnames[0]!=NULL);
-
- class = calloc(numGlyphs,sizeof(uint16));
- if ( glyphs ) *glyphs = gs = calloc(numGlyphs,sizeof(SplineChar *));
- for ( i=0; i<class_cnt; ++i ) {
- if ( i==0 && classnames[0]==NULL )
- continue;
- for ( pt = classnames[i]; *pt; pt = end+1 ) {
- while ( *pt==' ' ) ++pt;
- if ( *pt=='\0' )
- break;
- end = strchr(pt,' ');
- if ( end==NULL )
- end = pt+strlen(pt);
- ch = *end;
- *end = '\0';
- sc = SFGetChar(sf,-1,pt);
- if ( sc!=NULL && sc->ttf_glyph!=-1 ) {
- class[sc->ttf_glyph] = i+offset;
- if ( gs!=NULL )
- gs[sc->ttf_glyph] = sc;
- }
- *end = ch;
- if ( ch=='\0' )
- break;
- }
- }
-return( class );
-}
-
-static SplineChar **GlyphsFromClasses(SplineChar **gs, int numGlyphs) {
- int i, cnt;
- SplineChar **glyphs;
-
- for ( i=cnt=0; i<numGlyphs; ++i )
- if ( gs[i]!=NULL ) ++cnt;
- glyphs = malloc((cnt+1)*sizeof(SplineChar *));
- for ( i=cnt=0; i<numGlyphs; ++i )
- if ( gs[i]!=NULL )
- glyphs[cnt++] = gs[i];
- glyphs[cnt++] = NULL;
- free(gs);
-return( glyphs );
-}
-
-static SplineChar **GlyphsFromInitialClasses(SplineChar **gs, int numGlyphs, uint16 *classes, uint16 *initial) {
- int i, j, cnt;
- SplineChar **glyphs;
-
- for ( i=cnt=0; i<numGlyphs; ++i ) {
- for ( j=0; initial[j]!=0xffff; ++j )
- if ( initial[j]==classes[i])
- break;
- if ( initial[j]!=0xffff && gs[i]!=NULL ) ++cnt;
- }
- glyphs = malloc((cnt+1)*sizeof(SplineChar *));
- for ( i=cnt=0; i<numGlyphs; ++i ) {
- for ( j=0; initial[j]!=0xffff; ++j )
- if ( initial[j]==classes[i])
- break;
- if ( initial[j]!=0xffff && gs[i]!=NULL )
- glyphs[cnt++] = gs[i];
- }
- glyphs[cnt++] = NULL;
-return( glyphs );
-}
-
-static void DumpClass(FILE *gpos,uint16 *class,int numGlyphs) {
- int ranges, i, cur, first= -1, last=-1, istart;
-
- for ( i=ranges=0; i<numGlyphs; ) {
- istart = i;
- cur = class[i];
- while ( i<numGlyphs && class[i]==cur )
- ++i;
- if ( cur!=0 ) {
- ++ranges;
- if ( first==-1 ) first = istart;
- last = i-1;
- }
- }
- if ( ranges*3+1>last-first+1+2 || first==-1 ) {
- if ( first==-1 ) first = last = 0;
- putshort(gpos,1); /* Format 1, list of all posibilities */
- putshort(gpos,first);
- putshort(gpos,last-first+1);
- for ( i=first; i<=last ; ++i )
- putshort(gpos,class[i]);
- } else {
- putshort(gpos,2); /* Format 2, series of ranges */
- putshort(gpos,ranges);
- for ( i=0; i<numGlyphs; ) {
- istart = i;
- cur = class[i];
- while ( i<numGlyphs && class[i]==cur )
- ++i;
- if ( cur!=0 ) {
- putshort(gpos,istart);
- putshort(gpos,i-1);
- putshort(gpos,cur);
- }
- }
- }
-}
-
-static void dumpgposkernclass(FILE *gpos,SplineFont *sf,
- struct lookup_subtable *sub, struct alltabs *at) {
- uint32 begin_off = ftell(gpos), pos;
- uint16 *class1, *class2;
- KernClass *kc = sub->kc, *test;
- SplineChar **glyphs;
- int i, isv;
- int anydevtab = false;
- int next_devtab;
-
- putshort(gpos,2); /* format 2 of the pair adjustment subtable */
- putshort(gpos,0); /* offset to coverage table */
- for ( i=0; i<kc->first_cnt*kc->second_cnt; ++i ) {
- if ( kc->adjusts[i].corrections!=NULL ) {
- anydevtab = true;
- break;
- }
- }
-
- for ( test=sf->vkerns; test!=NULL && test!=kc; test=test->next );
- isv = test==kc;
-
- if ( isv ) {
- /* As far as I know there is no "bottom to top" writing direction */
- /* Oh. There is. Ogham, Runic */
- putshort(gpos,anydevtab?0x0088:0x0008); /* Alter YAdvance of first character */
- putshort(gpos,0x0000); /* leave second char alone */
- } else {
- putshort(gpos,anydevtab?0x0044:0x0004); /* Alter XAdvance of first character */
- putshort(gpos,0x0000); /* leave second char alone */
- }
- class1 = ClassesFromNames(sf,kc->firsts,kc->first_cnt,at->maxp.numGlyphs,&glyphs,false);
- glyphs = GlyphsFromClasses(glyphs,at->maxp.numGlyphs);
- class2 = ClassesFromNames(sf,kc->seconds,kc->second_cnt,at->maxp.numGlyphs,NULL,false);
- putshort(gpos,0); /* offset to first glyph classes */
- putshort(gpos,0); /* offset to second glyph classes */
- putshort(gpos,kc->first_cnt);
- putshort(gpos,kc->second_cnt);
- next_devtab = ftell(gpos)-begin_off + kc->first_cnt*kc->second_cnt*2*sizeof(uint16);
- for ( i=0; i<kc->first_cnt*kc->second_cnt; ++i ) {
- putshort(gpos,kc->offsets[i]);
- if ( anydevtab && kc->adjusts[i].corrections!=NULL ) {
- putshort(gpos,next_devtab);
- next_devtab += DevTabLen(&kc->adjusts[i]);
- } else if ( anydevtab )
- putshort(gpos,0);
- }
- if ( anydevtab ) {
- for ( i=0; i<kc->first_cnt*kc->second_cnt; ++i ) {
- if ( kc->adjusts[i].corrections!=NULL )
- dumpgposdevicetable(gpos,&kc->adjusts[i]);
- }
- if ( next_devtab!=ftell(gpos)-begin_off )
- IError("Device table offsets screwed up in kerning class");
- }
- pos = ftell(gpos);
- fseek(gpos,begin_off+4*sizeof(uint16),SEEK_SET);
- putshort(gpos,pos-begin_off);
- fseek(gpos,pos,SEEK_SET);
- DumpClass(gpos,class1,at->maxp.numGlyphs);
-
- pos = ftell(gpos);
- fseek(gpos,begin_off+5*sizeof(uint16),SEEK_SET);
- putshort(gpos,pos-begin_off);
- fseek(gpos,pos,SEEK_SET);
- DumpClass(gpos,class2,at->maxp.numGlyphs);
-
- pos = ftell(gpos);
- fseek(gpos,begin_off+sizeof(uint16),SEEK_SET);
- putshort(gpos,pos-begin_off);
- fseek(gpos,pos,SEEK_SET);
- dumpcoveragetable(gpos,glyphs);
-
- free(glyphs);
- free(class1);
- free(class2);
-}
-
-static void dumpanchor(FILE *gpos,AnchorPoint *ap, int is_ttf ) {
- int base = ftell(gpos);
-
- if ( ap->xadjust.corrections!=NULL || ap->yadjust.corrections!=NULL )
- putshort(gpos,3); /* format 3 w/ device tables */
- else
- if ( ap->has_ttf_pt && is_ttf )
- putshort(gpos,2); /* format 2 w/ a matching ttf point index */
- else
- putshort(gpos,1); /* Anchor format 1 just location*/
- putshort(gpos,ap->me.x); /* X coord of attachment */
- putshort(gpos,ap->me.y); /* Y coord of attachment */
- if ( ap->xadjust.corrections!=NULL || ap->yadjust.corrections!=NULL ) {
- putshort(gpos,ap->xadjust.corrections==NULL?0:
- ftell(gpos)-base+4);
- putshort(gpos,ap->yadjust.corrections==NULL?0:
- ftell(gpos)-base+2+DevTabLen(&ap->xadjust));
- dumpgposdevicetable(gpos,&ap->xadjust);
- dumpgposdevicetable(gpos,&ap->yadjust);
- } else
- if ( ap->has_ttf_pt && is_ttf )
- putshort(gpos,ap->ttf_pt_index);
-}
-
-static void dumpgposCursiveAttach(FILE *gpos, SplineFont *sf,
- struct lookup_subtable *sub,struct glyphinfo *gi) {
- AnchorClass *ac, *testac;
- SplineChar **entryexit;
- int cnt, offset,j;
- AnchorPoint *ap, *entry, *exit;
- uint32 coverage_offset, start;
-
- ac = NULL;
- for ( testac=sf->anchor; testac!=NULL; testac = testac->next ) {
- if ( testac->subtable == sub ) {
- if ( ac==NULL )
- ac = testac;
- else {
- ff_post_error(_("Two cursive anchor classes"),_("Two cursive anchor classes in the same subtable, %s"),
- sub->subtable_name);
- break;
- }
- }
- }
- if ( ac==NULL ) {
- IError( "Missing anchor class for %s", sub->subtable_name );
-return;
- }
- entryexit = EntryExitDecompose(sf,ac,gi);
- if ( entryexit==NULL )
-return;
-
- for ( cnt=0; entryexit[cnt]!=NULL; ++cnt );
-
- start = ftell(gpos);
- putshort(gpos,1); /* format 1 for this subtable */
- putshort(gpos,0); /* Fill in later, offset to coverage table */
- putshort(gpos,cnt); /* number of glyphs */
-
- offset = 6+2*2*cnt;
- for ( j=0; j<cnt; ++j ) {
- entry = exit = NULL;
- for ( ap=entryexit[j]->anchor; ap!=NULL; ap=ap->next ) {
- if ( ap->anchor==ac && ap->type==at_centry ) entry = ap;
- if ( ap->anchor==ac && ap->type==at_cexit ) exit = ap;
- }
- if ( entry!=NULL ) {
- putshort(gpos,offset);
- offset += 6;
- if ( entry->xadjust.corrections!=NULL || entry->yadjust.corrections!=NULL )
- offset += 4 + DevTabLen(&entry->xadjust) + DevTabLen(&entry->yadjust);
- if ( gi->is_ttf && entry->has_ttf_pt )
- offset += 2;
- } else
- putshort(gpos,0);
- if ( exit!=NULL ) {
- putshort(gpos,offset);
- offset += 6;
- if ( exit->xadjust.corrections!=NULL || exit->yadjust.corrections!=NULL )
- offset += 4 + DevTabLen(&exit->xadjust) + DevTabLen(&exit->yadjust);
- else
- if ( gi->is_ttf && exit->has_ttf_pt )
- offset += 2;
- } else
- putshort(gpos,0);
- }
- for ( j=0; j<cnt; ++j ) {
- entry = exit = NULL;
- for ( ap=entryexit[j]->anchor; ap!=NULL; ap=ap->next ) {
- if ( ap->anchor==ac && ap->type==at_centry ) entry = ap;
- if ( ap->anchor==ac && ap->type==at_cexit ) exit = ap;
- }
- if ( entry!=NULL )
- dumpanchor(gpos,entry,gi->is_ttf);
- if ( exit!=NULL )
- dumpanchor(gpos,exit,gi->is_ttf);
- }
- coverage_offset = ftell(gpos);
- dumpcoveragetable(gpos,entryexit);
- fseek(gpos,start+2,SEEK_SET);
- putshort(gpos,coverage_offset-start);
- fseek(gpos,0,SEEK_END);
-
- free(entryexit);
-}
-
-static int orderglyph(const void *_sc1,const void *_sc2) {
- SplineChar * const *sc1 = _sc1, * const *sc2 = _sc2;
-
-return( (*sc1)->ttf_glyph - (*sc2)->ttf_glyph );
-}
-
-static SplineChar **allmarkglyphs(SplineChar ***glyphlist, int classcnt) {
- SplineChar **glyphs;
- int i, tot, k;
-
- if ( classcnt==1 )
-return( SFOrderedGlyphs(glyphlist[0]));
-
- for ( i=tot=0; i<classcnt; ++i ) {
- for ( k=0; glyphlist[i][k]!=NULL; ++k );
- tot += k;
- }
- glyphs = malloc((tot+1)*sizeof(SplineChar *));
- for ( i=tot=0; i<classcnt; ++i ) {
- for ( k=0; glyphlist[i][k]!=NULL; ++k )
- glyphs[tot++] = glyphlist[i][k];
- }
- qsort(glyphs,tot,sizeof(SplineChar *),orderglyph);
- for ( i=k=0; i<tot; ++i ) {
- while ( i+1<tot && glyphs[i]==glyphs[i+1]) ++i;
- glyphs[k++] = glyphs[i];
- }
- glyphs[k] = NULL;
-return( glyphs );
-}
-
-static void dumpgposAnchorData(FILE *gpos,AnchorClass *_ac,
- enum anchor_type at,
- SplineChar ***marks,SplineChar **base,
- int classcnt, struct glyphinfo *gi) {
- AnchorClass *ac=NULL;
- int j,cnt,k,l, pos, offset, tot, max;
- uint32 coverage_offset, markarray_offset, subtable_start;
- AnchorPoint *ap, **aps;
- SplineChar **markglyphs;
-
- for ( cnt=0; base[cnt]!=NULL; ++cnt );
-
- subtable_start = ftell(gpos);
- putshort(gpos,1); /* format 1 for this subtable */
- putshort(gpos,0); /* Fill in later, offset to mark coverage table */
- putshort(gpos,0); /* Fill in later, offset to base coverage table */
- putshort(gpos,classcnt);
- putshort(gpos,0); /* Fill in later, offset to mark array */
- putshort(gpos,12); /* Offset to base array */
- /* Base array */
- putshort(gpos,cnt); /* Number of entries in array */
- if ( at==at_basechar || at==at_basemark ) {
- offset = 2;
- for ( l=0; l<3; ++l ) {
- for ( j=0; j<cnt; ++j ) {
- for ( k=0, ac=_ac; k<classcnt; ac=ac->next ) if ( ac->matches ) {
- if ( !ac->has_mark || !ac->has_base )
- continue;
- for ( ap=base[j]->anchor; ap!=NULL && (ap->anchor!=ac || ap->type!=at);
- ap=ap->next );
- switch ( l ) {
- case 0:
- offset += 2;
- break;
- case 1:
- if ( ap==NULL )
- putshort(gpos,0);
- else {
- putshort(gpos,offset);
- offset += 6;
- if ( ap->xadjust.corrections!=NULL || ap->yadjust.corrections!=NULL )
- offset += 4 + DevTabLen(&ap->xadjust) + DevTabLen(&ap->yadjust);
- else
- if ( gi->is_ttf && ap->has_ttf_pt )
- offset += 2;
- }
- break;
- case 2:
- if ( ap!=NULL )
- dumpanchor(gpos,ap,gi->is_ttf);
- break;
- }
- ++k;
- }
- }
- }
- } else {
- offset = 2+2*cnt;
- max = 0;
- for ( j=0; j<cnt; ++j ) {
- putshort(gpos,offset);
- pos = tot = 0;
- for ( ap=base[j]->anchor; ap!=NULL ; ap=ap->next )
- for ( k=0, ac=_ac; k<classcnt; ac=ac->next ) if ( ac->matches ) {
- if ( ap->anchor==ac ) {
- if ( ap->lig_index>pos ) pos = ap->lig_index;
- ++tot;
- }
- ++k;
- }
- if ( pos>max ) max = pos;
- offset += 2+(pos+1)*classcnt*2+tot*6;
- /* 2 for component count, for each component an offset to an offset to an anchor record */
- }
- ++max;
- int special_ceiling = classcnt*max;
- aps = malloc((classcnt*max+max)*sizeof(AnchorPoint *));
- for ( j=0; j<cnt; ++j ) {
- memset(aps,0,(classcnt*max+max)*sizeof(AnchorPoint *));
- pos = 0;
- for ( ap=base[j]->anchor; ap!=NULL ; ap=ap->next )
- for ( k=0, ac=_ac; k<classcnt; ac=ac->next ) if ( ac->matches ) {
- if ( ap->anchor==ac ) {
- if ( ap->lig_index>pos ) pos = ap->lig_index;
- if (k*max+ap->lig_index > special_ceiling || k*max+ap->lig_index < 0) {
- fprintf(stderr, "A ligature index is invalid.\n");
- } else {
- aps[k*max+ap->lig_index] = ap;
- }
- }
- ++k;
- }
- ++pos;
- putshort(gpos,pos);
- offset = 2+2*pos*classcnt;
- for ( l=0; l<pos; ++l ) {
- for ( k=0; k<classcnt; ++k ) {
- if ( aps[k*max+l]==NULL )
- putshort(gpos,0);
- else {
- putshort(gpos,offset);
- offset += 6;
- if ( aps[k*max+l]->xadjust.corrections!=NULL || aps[k*max+l]->yadjust.corrections!=NULL )
- offset += 4 + DevTabLen(&aps[k*max+l]->xadjust) +
- DevTabLen(&aps[k*max+l]->yadjust);
- else
- if ( gi->is_ttf && aps[k*max+l]->has_ttf_pt )
- offset += 2;
- }
- }
- }
- for ( l=0; l<pos; ++l ) {
- for ( k=0; k<classcnt; ++k ) {
- if ( aps[k*max+l]!=NULL ) {
- dumpanchor(gpos,aps[k*max+l],gi->is_ttf);
- }
- }
- }
- }
- free(aps); aps = NULL;
- }
- coverage_offset = ftell(gpos);
- fseek(gpos,subtable_start+4,SEEK_SET);
- putshort(gpos,coverage_offset-subtable_start);
- fseek(gpos,0,SEEK_END);
- dumpcoveragetable(gpos,base);
-
- /* We tried sharing the mark table, (among all these sub-tables) but */
- /* that doesn't work because we need to be able to reorder the sub-tables */
- markglyphs = allmarkglyphs(marks,classcnt);
- coverage_offset = ftell(gpos);
- dumpcoveragetable(gpos,markglyphs);
- markarray_offset = ftell(gpos);
- for ( cnt=0; markglyphs[cnt]!=NULL; ++cnt );
- putshort(gpos,cnt);
- offset = 2+4*cnt;
- for ( j=0; j<cnt; ++j ) {
- if ( classcnt==0 ) {
- putshort(gpos,0); /* Only one class */
- ap = NULL;
- } else {
- for ( k=0, ac=_ac; k<classcnt; ac=ac->next ) {
- if ( ac->matches ) {
- for ( ap = markglyphs[j]->anchor; ap!=NULL && (ap->anchor!=ac || ap->type!=at_mark);
- ap=ap->next );
- if ( ap!=NULL )
- break;
- ++k;
- }
- }
- putshort(gpos,k);
- }
- putshort(gpos,offset);
- offset += 6;
- if ( ap!=NULL && (ap->xadjust.corrections!=NULL || ap->yadjust.corrections!=NULL ))
- offset += 4 + DevTabLen(&ap->xadjust) + DevTabLen(&ap->yadjust);
- else
- if ( gi->is_ttf && ap->has_ttf_pt )
- offset += 2;
- }
- for ( j=0; j<cnt; ++j ) {
- for ( k=0, ac=_ac; k<classcnt; ac=ac->next ) {
- if ( ac->matches ) {
- for ( ap = markglyphs[j]->anchor; ap!=NULL && (ap->anchor!=ac || ap->type!=at_mark);
- ap=ap->next );
- if ( ap!=NULL )
- break;
- ++k;
- }
- }
- dumpanchor(gpos,ap,gi->is_ttf);
- }
- if ( markglyphs!=marks[0] )
- free(markglyphs);
-
- fseek(gpos,subtable_start+2,SEEK_SET); /* mark coverage table offset */
- putshort(gpos,coverage_offset-subtable_start);
- fseek(gpos,4,SEEK_CUR);
- putshort(gpos,markarray_offset-subtable_start);
-
- fseek(gpos,0,SEEK_END);
-}
-
-static void dumpGSUBsimplesubs(FILE *gsub,SplineFont *sf,struct lookup_subtable *sub) {
- int cnt, diff, ok = true;
- int32 coverage_pos, end;
- SplineChar **glyphs, ***maps;
-
- glyphs = SFOrderedGlyphsWithPSTinSubtable(sf,sub);
- maps = generateMapList(glyphs,sub);
-
- diff = (*maps[0])->ttf_glyph - glyphs[0]->ttf_glyph;
- for ( cnt=0; glyphs[cnt]!=NULL; ++cnt)
- if ( diff!= maps[cnt][0]->ttf_glyph-glyphs[cnt]->ttf_glyph ) ok = false;
-
- if ( ok ) {
- putshort(gsub,1); /* delta format */
- coverage_pos = ftell(gsub);
- putshort(gsub,0); /* offset to coverage table */
- putshort(gsub,diff);
- } else {
- putshort(gsub,2); /* glyph list format */
- coverage_pos = ftell(gsub);
- putshort(gsub,0); /* offset to coverage table */
- putshort(gsub,cnt);
- for ( cnt = 0; glyphs[cnt]!=NULL; ++cnt )
- putshort(gsub,(*maps[cnt])->ttf_glyph);
- }
- end = ftell(gsub);
- fseek(gsub,coverage_pos,SEEK_SET);
- putshort(gsub,end-coverage_pos+2);
- fseek(gsub,end,SEEK_SET);
- dumpcoveragetable(gsub,glyphs);
-
- free(glyphs);
- GlyphMapFree(maps);
-}
-
-static void dumpGSUBmultiplesubs(FILE *gsub,SplineFont *sf,struct lookup_subtable *sub) {
- int cnt, offset;
- int32 coverage_pos, end;
- int gc;
- SplineChar **glyphs, ***maps;
-
- glyphs = SFOrderedGlyphsWithPSTinSubtable(sf,sub);
- maps = generateMapList(glyphs,sub);
- for ( cnt=0; glyphs[cnt]!=NULL; ++cnt);
-
- putshort(gsub,1); /* glyph list format */
- coverage_pos = ftell(gsub);
- putshort(gsub,0); /* offset to coverage table */
- putshort(gsub,cnt);
- offset = 6+2*cnt;
- for ( cnt = 0; glyphs[cnt]!=NULL; ++cnt ) {
- putshort(gsub,offset);
- if (maps[cnt] == NULL) {
- fprintf( stderr, "maps[%d] is null; glyphs[%d] is \"%s\"; lookup name is \"%s\".\n" , cnt , cnt , (glyphs[cnt]->name ? glyphs[cnt]->name : ""), sub->subtable_name) ;
- }
- for ( gc=0; maps[cnt][gc]!=NULL; ++gc );
- offset += 2+2*gc;
- }
- for ( cnt = 0; glyphs[cnt]!=NULL; ++cnt ) {
- for ( gc=0; maps[cnt][gc]!=NULL; ++gc );
- putshort(gsub,gc);
- for ( gc=0; maps[cnt][gc]!=NULL; ++gc )
- putshort(gsub,maps[cnt][gc]->ttf_glyph);
- }
- end = ftell(gsub);
- fseek(gsub,coverage_pos,SEEK_SET);
- putshort(gsub,end-coverage_pos+2);
- fseek(gsub,end,SEEK_SET);
- dumpcoveragetable(gsub,glyphs);
-
- free(glyphs);
- GlyphMapFree(maps);
-}
-
-static int AllToBeOutput(LigList *lig) {
- struct splinecharlist *cmp;
-
- if ( lig->lig->u.lig.lig->ttf_glyph==-1 ||
- lig->first->ttf_glyph==-1 )
-return( 0 );
- for ( cmp=lig->components; cmp!=NULL; cmp=cmp->next )
- if ( cmp->sc->ttf_glyph==-1 )
-return( 0 );
-return( true );
-}
-
-static void dumpGSUBligdata(FILE *gsub,SplineFont *sf,
- struct lookup_subtable *sub, struct alltabs *at) {
- int32 coverage_pos, next_val_pos, here, lig_list_start;
- int cnt, i, pcnt, lcnt, max=100, j;
- uint16 *offsets=NULL, *ligoffsets=malloc(max*sizeof(uint16));
- SplineChar **glyphs;
- LigList *ll;
- struct splinecharlist *scl;
-
- glyphs = SFOrderedGlyphsWithPSTinSubtable(sf,sub);
- cnt=0;
- if ( glyphs!=NULL ) for ( ; glyphs[cnt]!=NULL; ++cnt );
-
- putshort(gsub,1); /* only one format for ligatures */
- coverage_pos = ftell(gsub);
- putshort(gsub,0); /* offset to coverage table */
- putshort(gsub,cnt);
- next_val_pos = ftell(gsub);
- if ( glyphs!=NULL )
- offsets = malloc(cnt*sizeof(int16));
- for ( i=0; i<cnt; ++i )
- putshort(gsub,0);
- for ( i=0; i<cnt; ++i ) {
- offsets[i] = ftell(gsub)-coverage_pos+2;
- for ( pcnt = 0, ll = glyphs[i]->ligofme; ll!=NULL; ll=ll->next )
- if ( ll->lig->subtable==sub && AllToBeOutput(ll))
- ++pcnt;
- putshort(gsub,pcnt);
- if ( pcnt>=max ) {
- max = pcnt+100;
- ligoffsets = realloc(ligoffsets,max*sizeof(int));
- }
- lig_list_start = ftell(gsub);
- for ( j=0; j<pcnt; ++j )
- putshort(gsub,0); /* Place holders */
- for ( pcnt=0, ll = glyphs[i]->ligofme; ll!=NULL; ll=ll->next ) {
- if ( ll->lig->subtable==sub && AllToBeOutput(ll)) {
- ligoffsets[pcnt] = ftell(gsub)-lig_list_start+2;
- putshort(gsub,ll->lig->u.lig.lig->ttf_glyph);
- for ( lcnt=0, scl=ll->components; scl!=NULL; scl=scl->next ) ++lcnt;
- putshort(gsub, lcnt+1);
- if ( lcnt+1>at->os2.maxContext )
- at->os2.maxContext = lcnt+1;
- for ( scl=ll->components; scl!=NULL; scl=scl->next )
- putshort(gsub, scl->sc->ttf_glyph );
- ++pcnt;
- }
- }
- fseek(gsub,lig_list_start,SEEK_SET);
- for ( j=0; j<pcnt; ++j )
- putshort(gsub,ligoffsets[j]);
- fseek(gsub,0,SEEK_END);
- }
- free(ligoffsets);
- if ( glyphs!=NULL ) {
- here = ftell(gsub);
- fseek(gsub,coverage_pos,SEEK_SET);
- putshort(gsub,here-coverage_pos+2);
- fseek(gsub,next_val_pos,SEEK_SET);
- for ( i=0; i<cnt; ++i )
- putshort(gsub,offsets[i]);
- fseek(gsub,here,SEEK_SET);
- dumpcoveragetable(gsub,glyphs);
- free(glyphs);
- free(offsets);
- }
-}
-
-static int ui16cmp(const void *_i1, const void *_i2) {
- if ( *(const uint16 *) _i1 > *(const uint16 *) _i2 )
-return( 1 );
- if ( *(const uint16 *) _i1 < *(const uint16 *) _i2 )
-return( -1 );
-
-return( 0 );
-}
-
-static uint16 *FigureInitialClasses(FPST *fpst) {
- uint16 *initial = malloc((fpst->nccnt+1)*sizeof(uint16));
- int i, cnt, j;
-
- initial[fpst->nccnt] = 0xffff;
- for ( i=cnt=0; i<fpst->rule_cnt; ++i ) {
- for ( j=0; j<cnt ; ++j )
- if ( initial[j] == fpst->rules[i].u.class.nclasses[0] )
- break;
- if ( j==cnt )
- initial[cnt++] = fpst->rules[i].u.class.nclasses[0];
- }
- qsort(initial,cnt,sizeof(uint16),ui16cmp);
- initial[cnt] = 0xffff;
-return( initial );
-}
-
-static SplineChar **OrderedInitialGlyphs(SplineFont *sf,FPST *fpst) {
- SplineChar **glyphs, *sc;
- int i, j, cnt, ch;
- char *pt, *names;
-
- glyphs = malloc((fpst->rule_cnt+1)*sizeof(SplineChar *));
- for ( i=cnt=0; i<fpst->rule_cnt; ++i ) {
- names = fpst->rules[i].u.glyph.names;
- pt = strchr(names,' ');
- if ( pt==NULL ) pt = names+strlen(names);
- ch = *pt; *pt = '\0';
- sc = SFGetChar(sf,-1,names);
- *pt = ch;
- for ( j=0; j<cnt; ++j )
- if ( glyphs[j]==sc )
- break;
- if ( j==cnt && sc!=NULL )
- glyphs[cnt++] = sc;
- }
- glyphs[cnt] = NULL;
- if ( cnt==0 )
-return( glyphs );
-
- for ( i=0; glyphs[i+1]!=NULL; ++i ) for ( j=i+1; glyphs[j]!=NULL; ++j ) {
- if ( glyphs[i]->ttf_glyph > glyphs[j]->ttf_glyph ) {
- sc = glyphs[i];
- glyphs[i] = glyphs[j];
- glyphs[j] = sc;
- }
- }
-return( glyphs );
-}
-
-static int NamesStartWith(SplineChar *sc,char *names ) {
- char *pt;
-
- pt = strchr(names,' ');
- if ( pt==NULL ) pt = names+strlen(names);
- if ( pt-names!=strlen(sc->name))
-return( false );
-
-return( strncmp(sc->name,names,pt-names)==0 );
-}
-
-static int CntRulesStartingWith(FPST *fpst,SplineChar *sc) {
- int i, cnt;
-
- for ( i=cnt=0; i<fpst->rule_cnt; ++i ) {
- if ( NamesStartWith(sc,fpst->rules[i].u.glyph.names))
- ++cnt;
- }
-return( cnt );
-}
-
-static int CntRulesStartingWithClass(FPST *fpst,uint16 cval) {
- int i, cnt;
-
- for ( i=cnt=0; i<fpst->rule_cnt; ++i ) {
- if ( fpst->rules[i].u.class.nclasses[0]==cval )
- ++cnt;
- }
-return( cnt );
-}
-
-static void dumpg___ContextChainGlyphs(FILE *lfile,SplineFont *sf,
- struct lookup_subtable *sub, struct alltabs *at) {
- FPST *fpst = sub->fpst;
- int iscontext = fpst->type==pst_contextpos || fpst->type==pst_contextsub;
- uint32 base = ftell(lfile);
- int i,cnt, subcnt, j,k,l, maxcontext,curcontext;
- SplineChar **glyphs, **subglyphs;
- int lc;
-
- glyphs = OrderedInitialGlyphs(sf,fpst);
- for ( cnt=0; glyphs[cnt]!=NULL; ++cnt );
-
- putshort(lfile,1); /* Sub format 1 => glyph lists */
- putshort(lfile,(3+cnt)*sizeof(short)); /* offset to coverage */
- putshort(lfile,cnt);
- for ( i=0; i<cnt; ++i )
- putshort(lfile,0); /* Offset to rule */
- dumpcoveragetable(lfile,glyphs);
-
- maxcontext = 0;
-
- for ( i=0; i<cnt; ++i ) {
- uint32 pos = ftell(lfile);
- fseek(lfile,base+(3+i)*sizeof(short),SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,pos,SEEK_SET);
- subcnt = CntRulesStartingWith(fpst,glyphs[i]);
- putshort(lfile,subcnt);
- for ( j=0; j<subcnt; ++j )
- putshort(lfile,0);
- for ( j=k=0; k<fpst->rule_cnt; ++k ) if ( NamesStartWith(glyphs[i],fpst->rules[k].u.glyph.names )) {
- uint32 subpos = ftell(lfile);
- fseek(lfile,pos+(1+j)*sizeof(short),SEEK_SET);
- putshort(lfile,subpos-pos);
- fseek(lfile,subpos,SEEK_SET);
-
- for ( l=lc=0; l<fpst->rules[k].lookup_cnt; ++l )
- if ( fpst->rules[k].lookups[l].lookup->lookup_index!=-1 )
- ++lc;
- if ( iscontext ) {
- subglyphs = SFGlyphsFromNames(sf,fpst->rules[k].u.glyph.names);
- for ( l=0; subglyphs[l]!=NULL; ++l );
- putshort(lfile,l);
- curcontext = l;
- putshort(lfile,lc);
- for ( l=1; subglyphs[l]!=NULL; ++l )
- putshort(lfile,subglyphs[l]->ttf_glyph);
- free(subglyphs);
- } else {
- subglyphs = SFGlyphsFromNames(sf,fpst->rules[k].u.glyph.back);
- for ( l=0; subglyphs[l]!=NULL; ++l );
- putshort(lfile,l);
- curcontext = l;
- for ( l=0; subglyphs[l]!=NULL; ++l )
- putshort(lfile,subglyphs[l]->ttf_glyph);
- free(subglyphs);
- subglyphs = SFGlyphsFromNames(sf,fpst->rules[k].u.glyph.names);
- for ( l=0; subglyphs[l]!=NULL; ++l );
- putshort(lfile,l);
- curcontext += l;
- for ( l=1; subglyphs[l]!=NULL; ++l )
- putshort(lfile,subglyphs[l]->ttf_glyph);
- free(subglyphs);
- subglyphs = SFGlyphsFromNames(sf,fpst->rules[k].u.glyph.fore);
- for ( l=0; subglyphs[l]!=NULL; ++l );
- putshort(lfile,l);
- curcontext += l;
- for ( l=0; subglyphs[l]!=NULL; ++l )
- putshort(lfile,subglyphs[l]->ttf_glyph);
- free(subglyphs);
- putshort(lfile,lc);
- }
- for ( l=0; l<fpst->rules[k].lookup_cnt; ++l )
- if ( fpst->rules[k].lookups[l].lookup->lookup_index!=-1 ) {
- putshort(lfile,fpst->rules[k].lookups[l].seq);
- putshort(lfile,fpst->rules[k].lookups[l].lookup->lookup_index);
- }
- ++j;
- if ( curcontext>maxcontext ) maxcontext = curcontext;
- }
- }
- free(glyphs);
-
- if ( maxcontext>at->os2.maxContext )
- at->os2.maxContext = maxcontext;
-}
-
-static void dumpg___ContextChainClass(FILE *lfile,SplineFont *sf,
- struct lookup_subtable *sub, struct alltabs *at) {
- FPST *fpst = sub->fpst;
- int iscontext = fpst->type==pst_contextpos || fpst->type==pst_contextsub;
- uint32 base = ftell(lfile), rulebase, pos, subpos, npos;
- uint16 *initialclasses, *iclass, *bclass, *lclass;
- SplineChar **iglyphs, **bglyphs, **lglyphs, **glyphs;
- int i,ii,cnt, subcnt, j,k,l , maxcontext,curcontext;
- int lc;
-
- putshort(lfile,2); /* Sub format 2 => class */
- putshort(lfile,0); /* offset to coverage table */
- if ( iscontext )
- putshort(lfile,0); /* offset to input classdef */
- else {
- putshort(lfile,0); /* offset to backtrack classdef */
- putshort(lfile,0); /* offset to input classdef */
- putshort(lfile,0); /* offset to lookahead classdef */
- }
- initialclasses = FigureInitialClasses(fpst);
- putshort(lfile,fpst->nccnt);
- rulebase = ftell(lfile);
- for ( cnt=0; cnt<fpst->nccnt; ++cnt )
- putshort(lfile,0);
-
- iclass = ClassesFromNames(sf,fpst->nclass,fpst->nccnt,at->maxp.numGlyphs,&iglyphs,false);
- lglyphs = bglyphs = NULL; bclass = lclass = NULL;
- if ( !iscontext ) {
- bclass = ClassesFromNames(sf,fpst->bclass,fpst->bccnt,at->maxp.numGlyphs,&bglyphs,false);
- lclass = ClassesFromNames(sf,fpst->fclass,fpst->fccnt,at->maxp.numGlyphs,&lglyphs,false);
- }
- pos = ftell(lfile);
- fseek(lfile,base+sizeof(uint16),SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,pos,SEEK_SET);
- glyphs = GlyphsFromInitialClasses(iglyphs,at->maxp.numGlyphs,iclass,initialclasses);
- dumpcoveragetable(lfile,glyphs);
- free(glyphs);
- free(iglyphs); free(bglyphs); free(lglyphs);
-
- if ( iscontext ) {
- pos = ftell(lfile);
- fseek(lfile,base+2*sizeof(uint16),SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,pos,SEEK_SET);
- DumpClass(lfile,iclass,at->maxp.numGlyphs);
- free(iclass);
- } else {
- pos = ftell(lfile);
- fseek(lfile,base+2*sizeof(uint16),SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,pos,SEEK_SET);
- DumpClass(lfile,bclass,at->maxp.numGlyphs);
- if ( ClassesMatch(fpst->bccnt,fpst->bclass,fpst->nccnt,fpst->nclass)) {
- npos = pos;
- fseek(lfile,base+3*sizeof(uint16),SEEK_SET);
- putshort(lfile,npos-base);
- fseek(lfile,0,SEEK_END);
- } else {
- npos = ftell(lfile);
- fseek(lfile,base+3*sizeof(uint16),SEEK_SET);
- putshort(lfile,npos-base);
- fseek(lfile,npos,SEEK_SET);
- DumpClass(lfile,iclass,at->maxp.numGlyphs);
- }
- if ( ClassesMatch(fpst->fccnt,fpst->fclass,fpst->bccnt,fpst->bclass)) {
- fseek(lfile,base+4*sizeof(uint16),SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,0,SEEK_END);
- } else if ( ClassesMatch(fpst->fccnt,fpst->fclass,fpst->nccnt,fpst->nclass)) {
- fseek(lfile,base+4*sizeof(uint16),SEEK_SET);
- putshort(lfile,npos-base);
- fseek(lfile,0,SEEK_END);
- } else {
- pos = ftell(lfile);
- fseek(lfile,base+4*sizeof(uint16),SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,pos,SEEK_SET);
- DumpClass(lfile,lclass,at->maxp.numGlyphs);
- }
- free(iclass); free(bclass); free(lclass);
- }
-
- ii=0;
- for ( i=0; i<fpst->nccnt; ++i ) {
- if ( initialclasses[ii]!=i ) {
- /* This class isn't an initial one, so leave it's rule pointer NULL */
- } else {
- ++ii;
- pos = ftell(lfile);
- fseek(lfile,rulebase+i*sizeof(short),SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,pos,SEEK_SET);
- subcnt = CntRulesStartingWithClass(fpst,i);
- putshort(lfile,subcnt);
- for ( j=0; j<subcnt; ++j )
- putshort(lfile,0);
- for ( j=k=0; k<fpst->rule_cnt; ++k ) if ( i==fpst->rules[k].u.class.nclasses[0] ) {
- subpos = ftell(lfile);
- fseek(lfile,pos+(1+j)*sizeof(short),SEEK_SET);
- putshort(lfile,subpos-pos);
- fseek(lfile,subpos,SEEK_SET);
-
- for ( l=lc=0; l<fpst->rules[k].lookup_cnt; ++l )
- if ( fpst->rules[k].lookups[l].lookup->lookup_index!=-1 )
- ++lc;
- if ( iscontext ) {
- putshort(lfile,fpst->rules[k].u.class.ncnt);
- putshort(lfile,lc);
- for ( l=1; l<fpst->rules[k].u.class.ncnt; ++l )
- putshort(lfile,fpst->rules[k].u.class.nclasses[l]);
- } else {
- putshort(lfile,fpst->rules[k].u.class.bcnt);
- for ( l=0; l<fpst->rules[k].u.class.bcnt; ++l )
- putshort(lfile,fpst->rules[k].u.class.bclasses[l]);
- putshort(lfile,fpst->rules[k].u.class.ncnt);
- for ( l=1; l<fpst->rules[k].u.class.ncnt; ++l )
- putshort(lfile,fpst->rules[k].u.class.nclasses[l]);
- putshort(lfile,fpst->rules[k].u.class.fcnt);
- for ( l=0; l<fpst->rules[k].u.class.fcnt; ++l )
- putshort(lfile,fpst->rules[k].u.class.fclasses[l]);
- putshort(lfile,lc);
- }
- for ( l=0; l<fpst->rules[k].lookup_cnt; ++l )
- if ( fpst->rules[k].lookups[l].lookup->lookup_index!=-1 ) {
- putshort(lfile,fpst->rules[k].lookups[l].seq);
- putshort(lfile,fpst->rules[k].lookups[l].lookup->lookup_index);
- }
- ++j;
- }
- }
- }
- free(initialclasses);
-
- maxcontext = 0;
- for ( i=0; i<fpst->rule_cnt; ++i ) {
- curcontext = fpst->rules[i].u.class.ncnt+fpst->rules[i].u.class.bcnt+fpst->rules[i].u.class.fcnt;
- if ( curcontext>maxcontext ) maxcontext = curcontext;
- }
- if ( maxcontext>at->os2.maxContext )
- at->os2.maxContext = maxcontext;
-}
-
-static void dumpg___ContextChainCoverage(FILE *lfile,SplineFont *sf,
- struct lookup_subtable *sub, struct alltabs *at) {
- FPST *fpst = sub->fpst;
- int iscontext = fpst->type==pst_contextpos || fpst->type==pst_contextsub;
- uint32 base = ftell(lfile), ibase, lbase, bbase;
- int i, l;
- SplineChar **glyphs;
- int curcontext;
- int lc;
-
- if ( fpst->rule_cnt!=1 )
- IError("Bad rule cnt in coverage context lookup");
- if ( fpst->format==pst_reversecoverage && fpst->rules[0].u.rcoverage.always1!=1 )
- IError("Bad input count in reverse coverage lookup" );
-
- putshort(lfile,3); /* Sub format 3 => coverage */
- for ( l=lc=0; l<fpst->rules[0].lookup_cnt; ++l )
- if ( fpst->rules[0].lookups[l].lookup->lookup_index!=-1 )
- ++lc;
- if ( iscontext ) {
- putshort(lfile,fpst->rules[0].u.coverage.ncnt);
- putshort(lfile,lc);
- for ( i=0; i<fpst->rules[0].u.coverage.ncnt; ++i )
- putshort(lfile,0);
- for ( i=0; i<fpst->rules[0].lookup_cnt; ++i )
- if ( fpst->rules[0].lookups[i].lookup->lookup_index!=-1 ) {
- putshort(lfile,fpst->rules[0].lookups[i].seq);
- putshort(lfile,fpst->rules[0].lookups[i].lookup->lookup_index);
- }
- for ( i=0; i<fpst->rules[0].u.coverage.ncnt; ++i ) {
- uint32 pos = ftell(lfile);
- fseek(lfile,base+6+2*i,SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,pos,SEEK_SET);
- glyphs = OrderedGlyphsFromNames(sf,fpst->rules[0].u.coverage.ncovers[i]);
- dumpcoveragetable(lfile,glyphs);
- free(glyphs);
- }
- } else {
- if ( fpst->format==pst_reversecoverage ) {
- ibase = ftell(lfile);
- putshort(lfile,0);
- }
- putshort(lfile,fpst->rules[0].u.coverage.bcnt);
- bbase = ftell(lfile);
- for ( i=0; i<fpst->rules[0].u.coverage.bcnt; ++i )
- putshort(lfile,0);
- if ( fpst->format==pst_coverage ) {
- putshort(lfile,fpst->rules[0].u.coverage.ncnt);
- ibase = ftell(lfile);
- for ( i=0; i<fpst->rules[0].u.coverage.ncnt; ++i )
- putshort(lfile,0);
- }
- putshort(lfile,fpst->rules[0].u.coverage.fcnt);
- lbase = ftell(lfile);
- for ( i=0; i<fpst->rules[0].u.coverage.fcnt; ++i )
- putshort(lfile,0);
- if ( fpst->format==pst_coverage ) {
- putshort(lfile,lc);
- for ( i=0; i<fpst->rules[0].lookup_cnt; ++i )
- if ( fpst->rules[0].lookups[i].lookup->lookup_index!=-1 ) {
- putshort(lfile,fpst->rules[0].lookups[i].seq);
- putshort(lfile,fpst->rules[0].lookups[i].lookup->lookup_index);
- }
- } else { /* reverse coverage */
- glyphs = SFGlyphsFromNames(sf,fpst->rules[0].u.rcoverage.replacements);
- for ( i=0; glyphs[i]!=0; ++i );
- putshort(lfile,i);
- for ( i=0; glyphs[i]!=0; ++i )
- putshort(lfile,glyphs[i]->ttf_glyph);
- }
- for ( i=0; i<fpst->rules[0].u.coverage.ncnt; ++i ) {
- uint32 pos = ftell(lfile);
- fseek(lfile,ibase+2*i,SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,pos,SEEK_SET);
- glyphs = OrderedGlyphsFromNames(sf,fpst->rules[0].u.coverage.ncovers[i]);
- dumpcoveragetable(lfile,glyphs);
- free(glyphs);
- }
- for ( i=0; i<fpst->rules[0].u.coverage.bcnt; ++i ) {
- uint32 pos = ftell(lfile);
- fseek(lfile,bbase+2*i,SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,pos,SEEK_SET);
- glyphs = OrderedGlyphsFromNames(sf,fpst->rules[0].u.coverage.bcovers[i]);
- dumpcoveragetable(lfile,glyphs);
- free(glyphs);
- }
- for ( i=0; i<fpst->rules[0].u.coverage.fcnt; ++i ) {
- uint32 pos = ftell(lfile);
- fseek(lfile,lbase+2*i,SEEK_SET);
- putshort(lfile,pos-base);
- fseek(lfile,pos,SEEK_SET);
- glyphs = OrderedGlyphsFromNames(sf,fpst->rules[0].u.coverage.fcovers[i]);
- dumpcoveragetable(lfile,glyphs);
- free(glyphs);
- }
- }
-
- curcontext = fpst->rules[0].u.coverage.ncnt+fpst->rules[0].u.coverage.bcnt+fpst->rules[0].u.coverage.fcnt;
- if ( curcontext>at->os2.maxContext )
- at->os2.maxContext = curcontext;
-}
-
-static void dumpg___ContextChain(FILE *lfile,SplineFont *sf,
- struct lookup_subtable *sub, struct alltabs *at) {
- FPST *fpst = sub->fpst;
-
- switch ( fpst->format ) {
- case pst_glyphs:
- dumpg___ContextChainGlyphs(lfile,sf,sub,at);
- break;
- case pst_class:
- dumpg___ContextChainClass(lfile,sf,sub,at);
- break;
- case pst_coverage:
- case pst_reversecoverage:
- dumpg___ContextChainCoverage(lfile,sf,sub,at);
- break;
- }
-
- fseek(lfile,0,SEEK_END);
-
-}
-
-static void AnchorsAway(FILE *lfile,SplineFont *sf,
- struct lookup_subtable *sub, struct glyphinfo *gi ) {
- SplineChar **base, **lig, **mkmk;
- AnchorClass *ac, *acfirst;
- SplineChar ***marks;
- int *subcnts;
- int cmax, classcnt;
- int i;
-
- marks = malloc((cmax=20)*sizeof(SplineChar **));
- subcnts = malloc(cmax*sizeof(int));
-
- classcnt = 0;
- acfirst = NULL;
- for ( ac=sf->anchor; ac!=NULL; ac = ac->next ) {
- ac->matches = false;
- if ( ac->subtable==sub && !ac->processed ) {
- if ( acfirst == NULL )
- acfirst = ac;
- if ( ac->type==act_curs )
- continue;
- else if ( ac->has_mark && ac->has_base ) {
- ac->matches = ac->processed = true;
- ++classcnt;
- }
- }
- }
- if ( classcnt>cmax ) {
- marks = realloc(marks,(cmax=classcnt+10)*sizeof(SplineChar **));
- subcnts = realloc(subcnts,cmax*sizeof(int));
- }
- AnchorClassDecompose(sf,acfirst,classcnt,subcnts,marks,&base,&lig,&mkmk,gi);
- switch ( sub->lookup->lookup_type ) {
- case gpos_mark2base:
- if ( marks[0]!=NULL && base!=NULL )
- dumpgposAnchorData(lfile,acfirst,at_basechar,marks,base,classcnt,gi);
- break;
- case gpos_mark2ligature:
- if ( marks[0]!=NULL && lig!=NULL )
- dumpgposAnchorData(lfile,acfirst,at_baselig,marks,lig,classcnt,gi);
- break;
- case gpos_mark2mark:
- if ( marks[0]!=NULL && mkmk!=NULL )
- dumpgposAnchorData(lfile,acfirst,at_basemark,marks,mkmk,classcnt,gi);
- break;
- default:;
- }
- for ( i=0; i<classcnt; ++i )
- free(marks[i]);
- free(base);
- free(lig);
- free(mkmk);
- free(marks);
- free(subcnts);
-}
-
-static int lookup_size_cmp(const void *_l1, const void *_l2) {
- const OTLookup *l1 = *(OTLookup **) _l1, *l2 = *(OTLookup **) _l2;
-return( l1->lookup_length-l2->lookup_length );
-}
-
-static int FPSTRefersToOTL(FPST *fpst,OTLookup *otl) {
- int i, j;
-
- if ( fpst==NULL || fpst->type == pst_reversesub )
-return( false );
- for ( i=0; i<fpst->rule_cnt; ++i ) {
- for ( j=0; j< fpst->rules[i].lookup_cnt; ++j )
- if ( fpst->rules[i].lookups[j].lookup == otl )
-return( true );
- }
-return( false );
-}
-
-static int OnlyMac(OTLookup *otl, OTLookup *all) {
- FeatureScriptLangList *features = otl->features;
- int anymac = 0;
- struct lookup_subtable *sub;
-
- switch ( otl->lookup_type ) {
- /* These two lookup types are mac only */
- case kern_statemachine: case morx_indic: case morx_context: case morx_insert:
- return( true );
- /* These lookup types are OpenType only */
- case gsub_multiple: case gsub_alternate: case gsub_context:
- case gsub_contextchain: case gsub_reversecchain:
- case gpos_single: case gpos_cursive: case gpos_mark2base:
- case gpos_mark2ligature: case gpos_mark2mark:
- case gpos_context: case gpos_contextchain:
- return( false );
- /* These two can be expressed in both, and might be either */
- case gpos_pair: case gsub_single: case gsub_ligature:
- for ( features = otl->features; features!=NULL; features = features->next ) {
- if ( !features->ismac )
- return( false );
- else
- anymac = true;
- }
- /* Either it has no features at all (nested), or all its features */
- /* are mac feature settings. Even if all are mac feature settings it */
- /* might still be used as under control of a contextual feature */
- /* so in both cases check for nested */
- while ( all!=NULL ) {
- if ( all!=otl && !all->unused &&
- (all->lookup_type==gpos_context ||
- all->lookup_type==gpos_contextchain ||
- all->lookup_type==gsub_context ||
- all->lookup_type==gsub_contextchain /*||
- all->lookup_type==gsub_reversecchain*/ )) {
- for ( sub=all->subtables; sub!=NULL; sub=sub->next ) if ( !sub->unused && sub->fpst!=NULL ) {
- if ( FPSTRefersToOTL(sub->fpst,otl) )
- return( false );
- }
- }
- all = all->next;
- }
- if ( anymac )
- return( true );
- /* As far as I can tell, this lookup isn't used at all */
- /* Let's output it anyway, just in case we ever support some other */
- /* table that uses GPOS/GSUB lookups (I think JUST) */
- return( false );
- default:;
- }
- /* Should never get here, but gcc probably thinks we might */
-return( true );
-}
-
-static void otf_dumpALookup(FILE *lfile, OTLookup *otl, SplineFont *sf,
- struct alltabs *at) {
- struct lookup_subtable *sub;
- int lookup_sub_table_contains_no_data_count = 0;
- int lookup_sub_table_is_too_big_count = 0;
-
- otl->lookup_offset = ftell(lfile);
- for ( sub = otl->subtables; sub!=NULL; sub=sub->next ) {
- sub->extra_subtables = NULL;
- if ( sub->unused )
- sub->subtable_offset = -1;
- else {
- sub->subtable_offset = ftell(lfile);
- switch ( otl->lookup_type ) {
- /* GPOS lookup types */
- case gpos_single:
- dumpGPOSsimplepos(lfile,sf,sub);
- break;
-
- case gpos_pair:
- if ( at->os2.maxContext<2 )
- at->os2.maxContext = 2;
- if ( sub->kc!=NULL )
- dumpgposkernclass(lfile,sf,sub,at);
- else
- dumpGPOSpairpos(lfile,sf,sub);
- break;
-
- case gpos_cursive:
- dumpgposCursiveAttach(lfile,sf,sub,&at->gi);
- break;
-
- case gpos_mark2base:
- case gpos_mark2ligature:
- case gpos_mark2mark:
- AnchorsAway(lfile,sf,sub,&at->gi);
- break;
-
- case gpos_contextchain:
- case gpos_context:
- dumpg___ContextChain(lfile,sf,sub,at);
- break;
-
- /* GSUB lookup types */
- case gsub_single:
- dumpGSUBsimplesubs(lfile,sf,sub);
- break;
-
- case gsub_multiple:
- case gsub_alternate:
- dumpGSUBmultiplesubs(lfile,sf,sub);
- break;
-
- case gsub_ligature:
- dumpGSUBligdata(lfile,sf,sub,at);
- break;
-
- case gsub_contextchain:
- case gsub_context:
- case gsub_reversecchain:
- dumpg___ContextChain(lfile,sf,sub,at);
- break;
- default:;
- }
- if ( ftell(lfile)-sub->subtable_offset==0 ) {
- if ( lookup_sub_table_contains_no_data_count < 32 ) {
- IError( "Lookup sub table, %s in %s, contains no data.\n",
- sub->subtable_name, sub->lookup->lookup_name );
- lookup_sub_table_contains_no_data_count ++;
- }
- sub->unused = true;
- sub->subtable_offset = -1;
- } else if ( sub->extra_subtables==NULL &&
- ftell(lfile)-sub->subtable_offset>65535 )
- if ( lookup_sub_table_is_too_big_count < 32 ) {
- IError( "Lookup sub table, %s in %s, is too big. Will not be useable.\n",
- sub->subtable_name, sub->lookup->lookup_name );
- lookup_sub_table_is_too_big_count ++;
- }
- }
- }
- otl->lookup_length = ftell(lfile)-otl->lookup_offset;
-}
-
-static FILE *G___figureLookups(SplineFont *sf,int is_gpos,
- struct alltabs *at) {
- OTLookup *otl;
- struct lookup_subtable *sub;
- int index, i,j;
- FILE *final;
- FILE *lfile = tmpfile2();
- OTLookup **sizeordered;
- OTLookup *all = is_gpos ? sf->gpos_lookups : sf->gsub_lookups;
- char *buffer;
- int len;
-
- index = 0;
- for ( otl=all; otl!=NULL; otl=otl->next ) {
- if ( otl->unused || OnlyMac(otl,all) || otl->only_jstf || otl->temporary_kern )
- otl->lookup_index = -1;
- else
- otl->lookup_index = index++;
- }
- for ( otl=all; otl!=NULL; otl=otl->next ) {
- if ( otl->lookup_index!=-1 ) {
- otf_dumpALookup(lfile, otl, sf, at );
- }
- }
- if ( is_gpos )
- AnchorGuessContext(sf,at);
-
- /* We don't need to reorder short files */
- if ( ftell(lfile)<65536 )
-return( lfile );
-
- /* Order the lookups so that the smallest ones come first */
- /* thus we are less likely to need extension tables */
- /* I think it's better to order the entire lookup rather than ordering the*/
- /* subtables -- since the extension subtable would be required for all */
- /* subtables in the lookup, so might as well keep them all together */
- sizeordered = malloc(index*sizeof(OTLookup *));
- for ( otl=is_gpos ? sf->gpos_lookups : sf->gsub_lookups; otl!=NULL; otl=otl->next )
- if ( otl->lookup_index!=-1 )
- sizeordered[ otl->lookup_index ] = otl;
- qsort(sizeordered,index,sizeof(OTLookup *),lookup_size_cmp);
-
- final = tmpfile2();
- buffer = malloc(32768);
- for ( i=0; i<index; ++i ) {
- uint32 diff;
- otl = sizeordered[i];
- fseek(lfile,otl->lookup_offset,SEEK_SET);
- diff = ftell(final) - otl->lookup_offset;
- otl->lookup_offset = ftell(final);
- len = otl->lookup_length;
- while ( len>=32768 ) {
- int done = fread(buffer,1,32768,lfile);
- if ( done==0 ) /* fread returns 0 on error, not EOF */
- break;
- fwrite(buffer,1,done,final);
- len -= done;
- }
- if ( len>0 && len<=32768 ) {
- int done = fread(buffer,1,len,lfile);
- if ( done==0 )
- break;
- fwrite(buffer,1,done,final);
- }
- for ( sub = otl->subtables; sub!=NULL; sub=sub->next ) {
- if ( !sub->unused ) {
- sub->subtable_offset += diff;
- if ( sub->extra_subtables!=NULL ) {
- for ( j=0; sub->extra_subtables[j]!=-1; ++j )
- sub->extra_subtables[j] += diff;
- }
- }
- }
- }
- free(buffer);
- free(sizeordered);
- fclose(lfile);
-return( final );
-}
-
-struct feat_lookups {
- uint32 tag;
- int lcnt;
- OTLookup **lookups;
- int feature_id; /* Initially consecutive, but may be rearranged by sorting */
- uint32 name_param_ptr;
-};
-
-struct langsys {
- uint32 lang;
- int fc;
- int *feature_id;
- int same_as;
- int32 offset;
-};
-
-struct scriptset {
- uint32 script;
- int lc;
- struct langsys *langsys;
-};
-
-struct ginfo {
- int fmax, fcnt;
- struct feat_lookups *feat_lookups;
- int sc;
- struct scriptset *scripts;
-};
-
-static int FindOrMakeNewFeatureLookup(struct ginfo *ginfo,OTLookup **lookups,
- uint32 tag) {
- int i, j;
-
- for ( i=0; i<ginfo->fcnt; ++i ) {
- if ( ginfo->feat_lookups[i].tag!= tag )
- continue;
- if ( lookups==NULL && ginfo->feat_lookups[i].lookups==NULL ) /* 'size' feature */
-return( i );
- if ( lookups==NULL || ginfo->feat_lookups[i].lookups==NULL )
- continue;
- for ( j=0; lookups[j]!=NULL && ginfo->feat_lookups[i].lookups[j]!=NULL; ++j )
- if ( ginfo->feat_lookups[i].lookups[j]!=lookups[j] )
- break;
- if ( ginfo->feat_lookups[i].lookups[j]==lookups[j] ) {
- free(lookups);
-return( i );
- }
- }
- if ( ginfo->fcnt>=ginfo->fmax )
- ginfo->feat_lookups = realloc(ginfo->feat_lookups,(ginfo->fmax+=20)*sizeof(struct feat_lookups));
- ginfo->feat_lookups[i].feature_id = i;
- ginfo->feat_lookups[i].tag = tag;
- ginfo->feat_lookups[i].lookups = lookups;
- j=0;
- if ( lookups!=NULL ) for ( ; lookups[j]!=NULL; ++j );
- ginfo->feat_lookups[i].lcnt = j;
- ++ginfo->fcnt;
-return( i );
-}
-
-static int feat_alphabetize(const void *_fl1, const void *_fl2) {
- const struct feat_lookups *fl1 = _fl1, *fl2 = _fl2;
-
- if ( fl1->tag<fl2->tag )
-return( -1 );
- if ( fl1->tag>fl2->tag )
-return( 1 );
-
-return( 0 );
-}
-
-static int numeric_order(const void *_i1, const void *_i2) {
- int i1 = *(const int *) _i1, i2 = *(const int *) _i2;
-
- if ( i1<i2 )
-return( -1 );
- if ( i1>i2 )
-return( 1 );
-
-return( 0 );
-}
-
-static int LangSysMatch(struct scriptset *s,int ils1, int ils2 ) {
- struct langsys *ls1 = &s->langsys[ils1], *ls2 = &s->langsys[ils2];
- int i;
-
- if ( ls1->fc!=ls2->fc )
-return( false );
- for ( i=0; i<ls1->fc; ++i )
- if ( ls1->feature_id[i]!=ls2->feature_id[i] )
-return( false );
-
-return( true );
-}
-
-static void FindFeatures(SplineFont *sf,int is_gpos,struct ginfo *ginfo) {
- uint32 *scripts, *langs, *features;
- OTLookup **lookups;
- int sc, lc, fc, j;
-
- memset(ginfo,0,sizeof(struct ginfo));
-
- scripts = SFScriptsInLookups(sf,is_gpos);
- if ( scripts==NULL ) /* All lookups unused */
-return;
- for ( sc=0; scripts[sc]!=0; ++sc );
- ginfo->scripts = malloc(sc*sizeof(struct scriptset));
- ginfo->sc = sc;
- for ( sc=0; scripts[sc]!=0; ++sc ) {
- langs = SFLangsInScript(sf,is_gpos,scripts[sc]);
- for ( lc=0; langs[lc]!=0; ++lc );
- ginfo->scripts[sc].script = scripts[sc];
- ginfo->scripts[sc].lc = lc;
- ginfo->scripts[sc].langsys = malloc(lc*sizeof(struct langsys));
- for ( lc=0; langs[lc]!=0; ++lc ) {
- features = SFFeaturesInScriptLang(sf,is_gpos,scripts[sc],langs[lc]);
- for ( fc=0; features[fc]!=0; ++fc );
- ginfo->scripts[sc].langsys[lc].lang = langs[lc];
- ginfo->scripts[sc].langsys[lc].fc = fc;
- ginfo->scripts[sc].langsys[lc].feature_id = malloc(fc*sizeof(int));
- ginfo->scripts[sc].langsys[lc].same_as = -1;
- for ( fc=0; features[fc]!=0; ++fc ) {
- lookups = SFLookupsInScriptLangFeature(sf,is_gpos,scripts[sc],langs[lc],features[fc]);
- ginfo->scripts[sc].langsys[lc].feature_id[fc] =
- FindOrMakeNewFeatureLookup(ginfo,lookups,features[fc]);
- /* lookups is freed or used by FindOrMakeNewFeatureLookup */
- }
- free(features);
- }
- free(langs);
- }
- free(scripts);
-
- qsort(ginfo->feat_lookups,ginfo->fcnt,sizeof(struct feat_lookups),feat_alphabetize);
-
- /* Now we've disordered the features. Find each feature_id and turn it back*/
- /* into a feature number */
- for ( sc=0; sc<ginfo->sc; ++sc ) {
- for ( lc=0; lc<ginfo->scripts[sc].lc; ++lc ) {
- int fcmax = ginfo->scripts[sc].langsys[lc].fc;
- int *feature_id = ginfo->scripts[sc].langsys[lc].feature_id;
- for ( fc=0; fc<fcmax; ++fc ) {
- int id = feature_id[fc];
- for ( j=0; j<ginfo->fcnt; ++j )
- if ( id==ginfo->feat_lookups[j].feature_id )
- break;
- feature_id[fc] = j;
- }
- qsort(feature_id,fcmax,sizeof(int),numeric_order);
- }
- /* See if there are langsys tables which use exactly the same features*/
- /* They can use the same entry in the file. This optimization seems */
- /* to be required for Japanese vertical writing to work in Uniscribe.*/
- for ( lc=0; lc<ginfo->scripts[sc].lc; ++lc ) {
- for ( j=0; j<lc; ++j )
- if ( LangSysMatch(&ginfo->scripts[sc],j,lc) ) {
- ginfo->scripts[sc].langsys[lc].same_as = j;
- break;
- }
- }
- }
-}
-
-
-static void dump_script_table(FILE *g___,struct scriptset *ss,struct ginfo *ginfo) {
- int i, lcnt, dflt_lang = -1;
- uint32 base;
- int j, req_index;
- uint32 offset;
-
- /* Count the languages, and find default */
- for ( lcnt=0; lcnt<ss->lc; ++lcnt )
- if ( ss->langsys[lcnt].lang==DEFAULT_LANG )
- dflt_lang = lcnt;
- if ( dflt_lang != -1 )
- --lcnt;
-
- base = ftell(g___);
- putshort(g___, 0 ); /* fill in later, Default Lang Sys */
- putshort(g___,lcnt);
- for ( i=0; i<ss->lc; ++i ) if ( i!=dflt_lang ) {
- putlong(g___,ss->langsys[i].lang); /* Language tag */
- putshort(g___,0); /* Fill in later, offset to langsys */
- }
-
- for ( lcnt=0; lcnt<ss->lc; ++lcnt ) {
- if ( ss->langsys[lcnt].same_as!=-1 )
- offset = ss->langsys[ ss->langsys[lcnt].same_as ].offset;
- else {
- offset = ftell(g___);
- ss->langsys[lcnt].offset = offset;
- }
- fseek(g___,lcnt==dflt_lang ? base :
- lcnt<dflt_lang || dflt_lang==-1 ? base + 4 + lcnt*6 +4 :
- base + 4 + (lcnt-1)*6 +4 ,
- SEEK_SET );
- putshort(g___,offset-base);
- fseek(g___,0,SEEK_END);
- if ( ss->langsys[lcnt].same_as==-1 ) {
- req_index = -1;
- for ( j=0; j<ss->langsys[lcnt].fc; ++j ) {
- if ( ginfo->feat_lookups[ ss->langsys[lcnt].feature_id[j] ].tag == REQUIRED_FEATURE ) {
- req_index = ss->langsys[lcnt].feature_id[j];
- break;
- }
- }
- putshort(g___,0); /* LookupOrder, always NULL */
- putshort(g___,req_index); /* index of required feature, if any */
- putshort(g___,ss->langsys[lcnt].fc - (req_index!=-1));
- /* count of non-required features */
- for ( j=0; j<ss->langsys[lcnt].fc; ++j ) if (ss->langsys[lcnt].feature_id[j]!=req_index )
- putshort(g___,ss->langsys[lcnt].feature_id[j]);
- }
- }
-}
-
-static FILE *g___FigureExtensionSubTables(OTLookup *all,int startoffset,int is_gpos) {
- OTLookup *otf;
- struct lookup_subtable *sub;
- int len, len2, gotmore;
- FILE *efile;
- int i, offset, cnt;
- int any= false;
-
- if ( all==NULL )
-return( NULL );
- gotmore = true; cnt=len=0;
- while ( gotmore ) {
- gotmore = false;
- offset = startoffset + 8*cnt;
- for ( otf=all; otf!=NULL; otf=otf->next ) if ( otf->lookup_index!=-1 ) {
- if ( otf->needs_extension )
- continue;
- for ( sub = otf->subtables; sub!=NULL; sub=sub->next ) {
- if ( sub->subtable_offset==-1 )
- continue;
- if ( sub->extra_subtables!=NULL ) {
- for ( i=0; sub->extra_subtables[i]!=-1; ++i ) {
- if ( sub->extra_subtables[i]+offset>65535 )
- break;
- }
- if ( sub->extra_subtables[i]!=-1 )
- break;
- } else if ( sub->subtable_offset+offset>65535 )
- break;
- }
- if ( sub!=NULL ) {
- if ( !any ) {
- ff_post_notice(_("Lookup potentially too big"),
- _("Lookup %s has an\noffset bigger than 65535 bytes. This means\nFontForge must use an extension lookup to output it.\nNot all applications support extension lookups."),
- otf->lookup_name );
- any = true;
- }
- otf->needs_extension = true;
- gotmore = true;
- len += 8*otf->subcnt;
- ++cnt;
- }
- offset -= 6+2*otf->subcnt;
- }
- }
-
- if ( cnt==0 ) /* No offset overflows */
-return( NULL );
-
- /* Now we've worked out which lookups need extension tables and marked them*/
- /* Generate the extension tables, and update the offsets to reflect the size */
- /* of the extensions */
- efile = tmpfile2();
-
- len2 = 0;
- for ( otf=all; otf!=NULL; otf=otf->next ) if ( otf->lookup_index!=-1 ) {
- for ( sub = otf->subtables; sub!=NULL; sub=sub->next ) {
- if ( sub->subtable_offset==-1 )
- continue;
- if ( sub->extra_subtables!=NULL ) {
- for ( i=0; sub->extra_subtables[i]!=-1; ++i ) {
- sub->extra_subtables[i] += len;
- if ( otf->needs_extension ) {
- int off = ftell(efile);
- putshort(efile,1); /* exten subtable format (there's only one) */
- putshort(efile,otf->lookup_type&0xff);
- putlong(efile,sub->extra_subtables[i]-len2);
- sub->extra_subtables[i] = off;
- len2+=8;
- }
- }
- } else {
- sub->subtable_offset += len;
- if ( otf->needs_extension ) {
- int off = ftell(efile);
- putshort(efile,1); /* exten subtable format (there's only one) */
- putshort(efile,otf->lookup_type&0xff);
- putlong(efile,sub->subtable_offset-len2);
- sub->subtable_offset = off;
- len2+=8;
- }
- }
- }
- }
-
-return( efile );
-}
-
-struct otffeatname *findotffeatname(uint32 tag,SplineFont *sf) {
- struct otffeatname *fn;
-
- for ( fn=sf->feat_names; fn!=NULL && fn->tag!=tag; fn=fn->next );
-return( fn );
-}
-
-static FILE *dumpg___info(struct alltabs *at, SplineFont *sf,int is_gpos) {
- /* Dump out either a gpos or a gsub table. gpos handles kerns, gsub ligs */
- /* we assume that SFFindUnusedLookups has been called */
- FILE *lfile, *g___, *efile;
- uint32 lookup_list_table_start, feature_list_table_start, here, scripts_start_offset;
- struct ginfo ginfo;
- int32 size_params_loc, size_params_ptr;
- int i,j, cnt, scnt, offset;
- OTLookup *otf, *all;
- struct lookup_subtable *sub;
- char *buf;
- struct otffeatname *fn;
-
- for ( fn=sf->feat_names; fn!=NULL; fn=fn->next )
- fn->nid = 0;
-
- FindFeatures(sf,is_gpos,&ginfo);
- if ( ginfo.sc==0 )
-return( NULL );
- lfile = G___figureLookups(sf,is_gpos,at);
-
- if ( ginfo.sc==0 && ftell(lfile)==0 ) {
- /* ftell(lfile)==0 => There are no lookups for this table */
- /* ginfo.sc==0 => There are no scripts. */
- /* If both are true then we don't need to output the table */
- /* It is perfectly possible to have lookups without scripts */
- /* (if some other table refered to them -- we don't currently */
- /* support this, but we might some day). */
- /* It is also possible to have scripts without lookups (to get */
- /* around a bug in Uniscribe which only processes some scripts */
- /* if both GPOS and GSUB entries are present. So we share scripts */
- /* between the two tables */
- fclose(lfile);
- /* if ginfo.sc==0 then there will be nothing to free in the ginfo struct*/
-return( NULL );
- }
-
- g___ = tmpfile2();
-
- putlong(g___,0x10000); /* version number */
- putshort(g___,10); /* offset to script table */
- putshort(g___,0); /* offset to features. Come back for this */
- putshort(g___,0); /* offset to lookups. Come back for this */
-/* Now the scripts */
- scripts_start_offset = ftell(g___);
- putshort(g___,ginfo.sc);
- for ( i=0; i<ginfo.sc; ++i ) {
- putlong(g___,ginfo.scripts[i].script);
- putshort(g___,0); /* fix up later */
- }
-
- /* Ok, that was the script_list_table which gives each script an offset */
- /* Now for each script we provide a Script table which contains an */
- /* offset to a bunch of features for the default language, and a */
- /* a more complex situation for non-default languages. */
- offset=2+4; /* To the script pointer at the start of table */
- for ( i=0; i<ginfo.sc; ++i ) {
- here = ftell(g___);
- fseek(g___,scripts_start_offset+offset,SEEK_SET);
- putshort(g___,here-scripts_start_offset);
- offset+=6;
- fseek(g___,here,SEEK_SET);
- dump_script_table(g___,&ginfo.scripts[i],&ginfo);
- }
- /* And that should finish all the scripts/languages */
-
- /* so free the ginfo script/lang data */
- for ( i=0; i<ginfo.sc; ++i ) {
- for ( j=0; j<ginfo.scripts[i].lc; ++j ) {
- free( ginfo.scripts[i].langsys[j].feature_id );
- }
- free( ginfo.scripts[i].langsys );
- }
- free( ginfo.scripts );
-
-/* Now the features */
- feature_list_table_start = ftell(g___);
- fseek(g___,6,SEEK_SET);
- putshort(g___,feature_list_table_start);
- fseek(g___,0,SEEK_END);
- putshort(g___,ginfo.fcnt); /* Number of features */
- offset = 2+6*ginfo.fcnt; /* Offset to start of first feature table from beginning of feature_list */
- for ( i=0; i<ginfo.fcnt; ++i ) {
- putlong(g___,ginfo.feat_lookups[i].tag);
- putshort(g___,offset);
- offset += 4+2*ginfo.feat_lookups[i].lcnt;
- }
- /* for each feature, one feature table */
- size_params_ptr = 0;
- for ( i=0; i<ginfo.fcnt; ++i ) {
- ginfo.feat_lookups[i].name_param_ptr = 0;
- if ( ginfo.feat_lookups[i].tag==CHR('s','i','z','e') )
- size_params_ptr = ftell(g___);
- else if ( ginfo.feat_lookups[i].tag>=CHR('s','s','0','1') && ginfo.feat_lookups[i].tag<=CHR('s','s','2','0'))
- ginfo.feat_lookups[i].name_param_ptr = ftell(g___);
- putshort(g___,0); /* No feature params (we'll come back for 'size') */
- putshort(g___,ginfo.feat_lookups[i].lcnt);/* this many lookups */
- for ( j=0; j<ginfo.feat_lookups[i].lcnt; ++j )
- putshort(g___,ginfo.feat_lookups[i].lookups[j]->lookup_index );
- /* index of each lookup */
- }
- if ( size_params_ptr!=0 ) {
- size_params_loc = ftell(g___);
- fseek(g___,size_params_ptr,SEEK_SET);
- putshort(g___,size_params_loc-size_params_ptr);
- fseek(g___,size_params_loc,SEEK_SET);
- putshort(g___,sf->design_size);
- if ( sf->fontstyle_id!=0 || sf->fontstyle_name!=NULL ) {
- putshort(g___,sf->fontstyle_id);
- at->fontstyle_name_strid = at->next_strid++;
- putshort(g___,at->fontstyle_name_strid);
- } else {
- putshort(g___,0);
- putshort(g___,0);
- }
- putshort(g___,sf->design_range_bottom);
- putshort(g___,sf->design_range_top);
- }
- for ( i=0; i<ginfo.fcnt; ++i ) {
- if ( ginfo.feat_lookups[i].name_param_ptr!=0 &&
- (fn = findotffeatname(ginfo.feat_lookups[i].tag,sf))!=NULL ) {
- if ( fn->nid==0 )
- fn->nid = at->next_strid++;
- uint32 name_param_loc = ftell(g___);
- fseek(g___,ginfo.feat_lookups[i].name_param_ptr,SEEK_SET);
- putshort(g___,name_param_loc-ginfo.feat_lookups[i].name_param_ptr);
- fseek(g___,name_param_loc,SEEK_SET);
- putshort(g___,0); /* Minor version number */
- putshort(g___,fn->nid);
- }
- }
- /* And that should finish all the features */
-
- /* so free the ginfo feature data */
- for ( i=0; i<ginfo.fcnt; ++i )
- free( ginfo.feat_lookups[i].lookups );
- free( ginfo.feat_lookups );
-
-/* Now the lookups */
- all = is_gpos ? sf->gpos_lookups : sf->gsub_lookups;
- for ( cnt=0, otf = all; otf!=NULL; otf=otf->next ) {
- if ( otf->lookup_index!=-1 )
- ++cnt;
- }
- lookup_list_table_start = ftell(g___);
- fseek(g___,8,SEEK_SET);
- putshort(g___,lookup_list_table_start);
- fseek(g___,0,SEEK_END);
- putshort(g___,cnt);
- offset = 2+2*cnt; /* Offset to start of first lookup table from beginning of lookup list */
- for ( otf = all; otf!=NULL; otf=otf->next ) if ( otf->lookup_index!=-1 ) {
- putshort(g___,offset);
- for ( scnt=0, sub = otf->subtables; sub!=NULL; sub=sub->next ) {
- if ( sub->subtable_offset==-1 )
- continue;
- else if ( sub->extra_subtables!=NULL ) {
- for ( i=0; sub->extra_subtables[i]!=-1; ++i )
- ++scnt;
- } else
- ++scnt;
- }
- otf->subcnt = scnt;
- offset += 6+2*scnt; /* 6 bytes header +2 per lookup */
- if ( otf->lookup_flags & pst_usemarkfilteringset )
- offset += 2; /* For mark filtering set, if used */
- }
- offset -= 2+2*cnt;
- /* now the lookup tables */
- /* do we need any extension sub-tables? */
- efile=g___FigureExtensionSubTables(all,offset,is_gpos);
- for ( otf = all; otf!=NULL; otf=otf->next ) if ( otf->lookup_index!=-1 ) {
- putshort(g___,!otf->needs_extension ? (otf->lookup_type&0xff)
- : is_gpos ? 9 : 7);
- putshort(g___,(otf->lookup_flags&0xffff));
- putshort(g___,otf->subcnt);
- for ( sub = otf->subtables; sub!=NULL; sub=sub->next ) {
- if ( sub->subtable_offset==-1 )
- continue;
- else if ( sub->extra_subtables!=NULL ) {
- for ( i=0; sub->extra_subtables[i]!=-1; ++i )
- putshort(g___,offset+sub->extra_subtables[i]);
- } else
- putshort(g___,offset+sub->subtable_offset);
-
- /* Offset to lookup data which is in the temp file */
- /* we keep adjusting offset so it reflects the distance between */
- /* here and the place where the temp file will start, and then */
- /* we need to skip l->offset bytes in the temp file */
- /* If it's a big GPOS/SUB table we may also need some extension */
- /* pointers, but FigureExtension will adjust for that */
- }
- offset -= 6+2*otf->subcnt;
- if ( otf->lookup_flags & pst_usemarkfilteringset ) {
- putshort(g___,otf->lookup_flags>>16);
- offset -= 2;
- }
- }
-
- buf = malloc(8096);
- if ( efile!=NULL ) {
- rewind(efile);
- while ( (i=fread(buf,1,8096,efile))>0 )
- fwrite(buf,1,i,g___);
- fclose(efile);
- }
- rewind(lfile);
- while ( (i=fread(buf,1,8096,lfile))>0 )
- fwrite(buf,1,i,g___);
- fclose(lfile);
- free(buf);
- for ( otf = all; otf!=NULL; otf=otf->next ) if ( otf->lookup_index!=-1 ) {
- for ( sub = otf->subtables; sub!=NULL; sub=sub->next ) {
- free(sub->extra_subtables);
- sub->extra_subtables = NULL;
- }
- otf->needs_extension = false;
- }
-return( g___ );
-}
-
-void otf_dumpgpos(struct alltabs *at, SplineFont *sf) {
- /* Open Type, bless its annoying little heart, doesn't store kern info */
- /* in the kern table. Of course not, how silly of me to think it might */
- /* be consistent. It stores it in the much more complicated gpos table */
- AnchorClass *ac;
-
- for ( ac=sf->anchor; ac!=NULL; ac=ac->next )
- ac->processed = false;
-
- at->gpos = dumpg___info(at, sf,true);
- if ( at->gpos!=NULL ) {
- at->gposlen = ftell(at->gpos);
- if ( at->gposlen&1 ) putc('\0',at->gpos);
- if ( (at->gposlen+1)&2 ) putshort(at->gpos,0);
- }
-}
-
-void otf_dumpgsub(struct alltabs *at, SplineFont *sf) {
- /* substitutions such as: Ligatures, cjk vertical rotation replacement, */
- /* arabic forms, small caps, ... */
- SFLigaturePrepare(sf);
- at->gsub = dumpg___info(at, sf, false);
- if ( at->gsub!=NULL ) {
- at->gsublen = ftell(at->gsub);
- if ( at->gsublen&1 ) putc('\0',at->gsub);
- if ( (at->gsublen+1)&2 ) putshort(at->gsub,0);
- }
- SFLigatureCleanup(sf);
-}
-
-int LigCaretCnt(SplineChar *sc) {
- PST *pst;
- int j, cnt;
-
- for ( pst=sc->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->type == pst_lcaret ) {
- if ( sc->lig_caret_cnt_fixed )
-return( pst->u.lcaret.cnt );
- else {
- /* only output non-zero carets */
- cnt=0;
- for ( j=pst->u.lcaret.cnt-1; j>=0 ; --j )
- if ( pst->u.lcaret.carets[j]!=0 )
- ++cnt;
-return( cnt );
- }
- }
- }
-return( 0 );
-}
-
-static void DumpLigCarets(FILE *gdef,SplineChar *sc) {
- PST *pst;
- int i, j, offset, cnt;
-
- for ( pst=sc->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->type == pst_lcaret )
- break;
- }
- if ( pst==NULL )
-return;
- cnt = LigCaretCnt(sc);
- if ( cnt==0 )
-return;
-
- if ( SCRightToLeft(sc) ) {
- for ( i=0; i<pst->u.lcaret.cnt-1; ++i )
- for ( j=i+1; j<pst->u.lcaret.cnt; ++j )
- if ( pst->u.lcaret.carets[i]<pst->u.lcaret.carets[j] ) {
- int16 temp = pst->u.lcaret.carets[i];
- pst->u.lcaret.carets[i] = pst->u.lcaret.carets[j];
- pst->u.lcaret.carets[j] = temp;
- }
- } else {
- for ( i=0; i<pst->u.lcaret.cnt-1; ++i )
- for ( j=i+1; j<pst->u.lcaret.cnt; ++j )
- if ( pst->u.lcaret.carets[i]>pst->u.lcaret.carets[j] ) {
- int16 temp = pst->u.lcaret.carets[i];
- pst->u.lcaret.carets[i] = pst->u.lcaret.carets[j];
- pst->u.lcaret.carets[j] = temp;
- }
- }
-
- putshort(gdef,cnt); /* this many carets */
- offset = sizeof(uint16) + sizeof(uint16)*cnt;
- for ( i=0; i<cnt; ++i ) {
- putshort(gdef,offset);
- offset+=4;
- }
- for ( i=0; i<pst->u.lcaret.cnt; ++i ) {
- if ( sc->lig_caret_cnt_fixed || pst->u.lcaret.carets[i]!=0 ) {
- putshort(gdef,1); /* Format 1 */
- putshort(gdef,pst->u.lcaret.carets[i]);
- }
- }
-}
-
-static int glyphnameinlist(char *haystack,char *name) {
- char *start, *pt;
- int ch, match, slen = strlen(name);
-
- for ( pt=haystack ; ; ) {
- while ( *pt==' ' ) ++pt;
- if ( *pt=='\0' )
-return( false );
- start=pt;
- while ( *pt!=' ' && *pt!='\0' ) ++pt;
- if ( pt-start==slen ) {
- ch = *pt; *pt='\0';
- match = strcmp(start,name);
- *pt = ch;
- if ( match==0 )
-return( true );
- }
- }
-}
-
-static int ReferencedByGSUB(SplineChar *sc) {
- PST *pst;
- SplineFont *sf = sc->parent;
- int gid;
- SplineChar *testsc;
- char *name = sc->name;
-
- /* If it is itself a ligature it will be referenced by GSUB */
- /* (because we store ligatures on the glyph generated) */
- for ( pst=sc->possub; pst!=NULL; pst=pst->next )
- if ( pst->type == pst_ligature )
-return( true );
-
- for ( gid=0; gid<sf->glyphcnt; ++gid ) if ( (testsc=sf->glyphs[gid])!=NULL ) {
- for ( pst=testsc->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->type==pst_substitution || pst->type==pst_alternate ||
- pst->type==pst_multiple ) {
- if ( glyphnameinlist(pst->u.mult.components,name) )
-return( true );
- }
- }
- }
-return( false );
-}
-
-int gdefclass(SplineChar *sc) {
- PST *pst;
- AnchorPoint *ap;
-
- if ( sc->glyph_class!=0 )
-return( sc->glyph_class-1 );
-
- if ( strcmp(sc->name,".notdef")==0 )
-return( 0 );
-
- /* It isn't clear to me what should be done if a glyph is both a ligature */
- /* and a mark (There are some greek accent ligatures, it is probably more*/
- /* important that they be indicated as marks). Here I chose mark rather */
- /* than ligature as the mark class is far more likely to be used */
- ap=sc->anchor;
- while ( ap!=NULL && (ap->type==at_centry || ap->type==at_cexit) )
- ap = ap->next;
- if ( ap!=NULL && (ap->type==at_mark || ap->type==at_basemark) )
-return( 3 );
-
- for ( pst=sc->possub; pst!=NULL; pst=pst->next ) {
- if ( pst->type == pst_ligature )
-return( 2 ); /* Ligature */
- }
-
- /* I not quite sure what a componant glyph is. Probably something */
- /* that is not in the cmap table and is referenced in other glyphs */
- /* (I've never seen it used by others) */
- /* (Note: No glyph in a CID font can be components as all CIDs mean */
- /* something) (I think) */
- if ( sc->unicodeenc==-1 && sc->dependents!=NULL &&
- sc->parent->cidmaster!=NULL && !ReferencedByGSUB(sc))
-return( 4 );
- else
-return( 1 );
-}
-
-void otf_dumpgdef(struct alltabs *at, SplineFont *sf) {
- /* In spite of what the open type docs say, this table does appear to be */
- /* required (at least the glyph class def table) if we do mark to base */
- /* positioning */
- /* I was wondering at the apperant contradiction: something can be both a */
- /* base glyph and a ligature component, but it appears that the component*/
- /* class is unused and everything is a base unless it is a ligature or */
- /* mark */
- /* All my example fonts ignore the attachment list subtable and the mark */
- /* attach class def subtable, so I shall too */
- /* Ah. Some indic fonts need the mark attach class subtable for greater */
- /* control of lookup flags */
- /* All my example fonts contain a ligature caret list subtable, which is */
- /* empty. Odd, but perhaps important */
- int i,j,k, lcnt, needsclass;
- int pos, offset;
- int cnt, start, last, lastval;
- SplineChar **glyphs, *sc;
-
- /* Don't look in the cidmaster if we are only dumping one subfont */
- if ( sf->cidmaster && sf->cidmaster->glyphs!=NULL ) sf = sf->cidmaster;
- else if ( sf->mm!=NULL ) sf=sf->mm->normal;
-
- glyphs = NULL;
- for ( k=0; k<2; ++k ) {
- lcnt = 0;
- needsclass = false;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- SplineChar *sc = sf->glyphs[at->gi.bygid[i]];
- if ( sc->glyph_class!=0 || gdefclass(sc)!=1 )
- needsclass = true;
- if ( LigCaretCnt(sc)!=0 ) {
- if ( glyphs!=NULL ) glyphs[lcnt] = sc;
- ++lcnt;
- }
- }
- if ( lcnt==0 )
- break;
- if ( glyphs!=NULL )
- break;
- glyphs = malloc((lcnt+1)*sizeof(SplineChar *));
- glyphs[lcnt] = NULL;
- }
- if ( !needsclass && lcnt==0 && sf->mark_class_cnt==0 && sf->mark_set_cnt==0 )
-return; /* No anchor positioning, no ligature carets */
-
- at->gdef = tmpfile2();
- if ( sf->mark_set_cnt==0 ) {
- putlong(at->gdef,0x00010000); /* Version */
- putshort(at->gdef, needsclass ? 12 : 0 ); /* glyph class defn table */
- } else {
- putlong(at->gdef,0x00010002); /* Version with mark sets */
- putshort(at->gdef, needsclass ? 14 : 0 ); /* glyph class defn table */
- }
- putshort(at->gdef, 0 ); /* attachment list table */
- putshort(at->gdef, 0 ); /* ligature caret table (come back and fix up later) */
- putshort(at->gdef, 0 ); /* mark attachment class table */
- if ( sf->mark_set_cnt>0 ) {
- putshort(at->gdef, 0 ); /* mark attachment set table only meaningful if version is 0x10002*/
- }
-
- /* Glyph class subtable */
- if ( needsclass ) {
- /* Mark shouldn't conflict with anything */
- /* Ligature is more important than Base */
- /* Component is not used */
- /* ttx can't seem to support class format type 1 so let's output type 2 */
- for ( j=0; j<2; ++j ) {
- cnt = 0;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- sc = sf->glyphs[at->gi.bygid[i]];
- if ( sc!=NULL && sc->ttf_glyph!=-1 ) {
- lastval = gdefclass(sc);
- start = last = i;
- for ( ; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- sc = sf->glyphs[at->gi.bygid[i]];
- if ( gdefclass(sc)!=lastval )
- break;
- last = i;
- }
- --i;
- if ( lastval!=0 ) {
- if ( j==1 ) {
- putshort(at->gdef,start);
- putshort(at->gdef,last);
- putshort(at->gdef,lastval);
- }
- ++cnt;
- }
- }
- }
- if ( j==0 ) {
- putshort(at->gdef,2); /* class format 2, range list by class */
- putshort(at->gdef,cnt);
- }
- }
- }
-
- /* Ligature caret subtable. Always include this if we have a GDEF */
- pos = ftell(at->gdef);
- fseek(at->gdef,8,SEEK_SET); /* location of lig caret table offset */
- putshort(at->gdef,pos);
- fseek(at->gdef,0,SEEK_END);
- if ( lcnt==0 ) {
- /* It always seems to be present, even if empty */
- putshort(at->gdef,4); /* Offset to (empty) coverage table */
- putshort(at->gdef,0); /* no ligatures */
- putshort(at->gdef,2); /* coverage table format 2 */
- putshort(at->gdef,0); /* no ranges in coverage table */
- } else {
- pos = ftell(at->gdef); /* coverage location */
- putshort(at->gdef,0); /* Offset to coverage table (fix up later) */
- putshort(at->gdef,lcnt);
- offset = 2*lcnt+4;
- for ( i=0; i<lcnt; ++i ) {
- putshort(at->gdef,offset);
- offset+=2+6*LigCaretCnt(glyphs[i]);
- }
- for ( i=0; i<lcnt; ++i )
- DumpLigCarets(at->gdef,glyphs[i]);
- offset = ftell(at->gdef);
- fseek(at->gdef,pos,SEEK_SET);
- putshort(at->gdef,offset-pos);
- fseek(at->gdef,0,SEEK_END);
- dumpcoveragetable(at->gdef,glyphs);
- }
-
- /* Mark Attachment Class Subtable */
- if ( sf->mark_class_cnt>0 ) {
- uint16 *mclasses = ClassesFromNames(sf,sf->mark_classes,sf->mark_class_cnt,at->maxp.numGlyphs,NULL,false);
- pos = ftell(at->gdef);
- fseek(at->gdef,10,SEEK_SET); /* location of mark attach table offset */
- putshort(at->gdef,pos);
- fseek(at->gdef,0,SEEK_END);
- DumpClass(at->gdef,mclasses,at->maxp.numGlyphs);
- free(mclasses);
- }
-
- /* Mark Attachment Class Subtable */
- if ( sf->mark_set_cnt>0 ) {
- pos = ftell(at->gdef);
- fseek(at->gdef,12,SEEK_SET); /* location of mark attach table offset */
- putshort(at->gdef,pos);
- fseek(at->gdef,0,SEEK_END);
- putshort(at->gdef,1); /* Version number */
- putshort(at->gdef,sf->mark_set_cnt);
- for ( i=0; i<sf->mark_set_cnt; ++i )
- putlong(at->gdef,0);
- for ( i=0; i<sf->mark_set_cnt; ++i ) {
- int here = ftell(at->gdef);
- fseek(at->gdef,pos+4+4*i,SEEK_SET);
- putlong(at->gdef,here-pos);
- fseek(at->gdef,0,SEEK_END);
- glyphs = OrderedGlyphsFromNames(sf,sf->mark_sets[i]);
- dumpcoveragetable(at->gdef,glyphs);
- free(glyphs);
- }
- }
-
- at->gdeflen = ftell(at->gdef);
- if ( at->gdeflen&1 ) putc('\0',at->gdef);
- if ( (at->gdeflen+1)&2 ) putshort(at->gdef,0);
-}
-
-/******************************************************************************/
-/* ******************************* MATH Table ******************************* */
-/* ********************** (Not strictly OpenType yet) *********************** */
-/******************************************************************************/
-enum math_bits { mb_constants=0x01, mb_italic=0x02, mb_topaccent=0x04,
- mb_extended=0x08, mb_mathkern=0x10, mb_vertvariant=0x20,
- mb_horizvariant=0x40,
- mb_all = 0x7f,
- mb_gi=(mb_italic|mb_topaccent|mb_extended|mb_mathkern),
- mb_gv=(mb_vertvariant|mb_horizvariant) };
-
-static int MathBits(struct alltabs *at, SplineFont *sf) {
- int i, gid, ret;
- SplineChar *sc;
-
- ret = sf->MATH ? mb_constants : 0;
-
- for ( i=0; i<at->gi.gcnt; ++i ) {
- if ( (gid=at->gi.bygid[i])!=-1 && (sc=sf->glyphs[gid])!=NULL ) {
- if ( sc->italic_correction!=TEX_UNDEF )
- ret |= mb_italic;
- if ( sc->top_accent_horiz!=TEX_UNDEF )
- ret |= mb_topaccent;
- if ( sc->is_extended_shape )
- ret |= mb_extended;
- if ( sc->mathkern!=NULL )
- ret |= mb_mathkern;
- if ( sc->vert_variants!=NULL )
- ret |= mb_vertvariant;
- if ( sc->horiz_variants!=NULL )
- ret |= mb_horizvariant;
- if ( ret==mb_all )
-return( mb_all );
- }
- }
-return( ret );
-}
-
-static void ttf_math_dump_italic_top(FILE *mathf,struct alltabs *at, SplineFont *sf, int is_italic) {
- int i, gid, len;
- SplineChar *sc, **glyphs;
- uint32 coverage_pos, coverage_table;
- uint32 devtab_offset;
- DeviceTable *devtab;
-
- /* Figure out our glyph list (and count) */
- for ( i=len=0; i<at->gi.gcnt; ++i )
- if ( (gid=at->gi.bygid[i])!=-1 && (sc=sf->glyphs[gid])!=NULL )
- if ( (is_italic && sc->italic_correction!=TEX_UNDEF) || (!is_italic && sc->top_accent_horiz!=TEX_UNDEF))
- ++len;
- glyphs = malloc((len+1)*sizeof(SplineChar *));
- for ( i=len=0; i<at->gi.gcnt; ++i )
- if ( (gid=at->gi.bygid[i])!=-1 && (sc=sf->glyphs[gid])!=NULL )
- if ( (is_italic && sc->italic_correction!=TEX_UNDEF) || (!is_italic && sc->top_accent_horiz!=TEX_UNDEF))
- glyphs[len++] = sc;
- glyphs[len] = NULL;
-
- coverage_pos = ftell(mathf);
- putshort(mathf,0); /* Coverage table, return to this */
- putshort(mathf,len);
- devtab_offset = 4 + 4*len;
- for ( i=0; i<len; ++i ) {
- putshort(mathf,is_italic ? glyphs[i]->italic_correction : glyphs[i]->top_accent_horiz );
- devtab = is_italic ? glyphs[i]->italic_adjusts : glyphs[i]->top_accent_adjusts;
- if ( devtab!=NULL ) {
- putshort(mathf,devtab_offset);
- devtab_offset += DevTabLen(devtab);
- } else
- putshort(mathf,0);
- }
- for ( i=0; i<len; ++i ) {
- devtab = is_italic ? glyphs[i]->italic_adjusts : glyphs[i]->top_accent_adjusts;
- if ( devtab!=NULL )
- dumpgposdevicetable(mathf,devtab);
- }
- if ( devtab_offset!=ftell(mathf)-coverage_pos )
- IError("Actual end did not match expected end in %s table, expected=%d, actual=%d",
- is_italic ? "italic" : "top accent", devtab_offset, ftell(mathf)-coverage_pos );
- coverage_table = ftell(mathf);
- fseek( mathf, coverage_pos, SEEK_SET);
- putshort(mathf,coverage_table-coverage_pos);
- fseek(mathf,coverage_table,SEEK_SET);
- dumpcoveragetable(mathf,glyphs);
- free(glyphs);
-}
-
-static void ttf_math_dump_extended(FILE *mathf,struct alltabs *at, SplineFont *sf) {
- int i, gid, len;
- SplineChar *sc, **glyphs;
-
- for ( i=len=0; i<at->gi.gcnt; ++i )
- if ( (gid=at->gi.bygid[i])!=-1 && (sc=sf->glyphs[gid])!=NULL )
- if ( sc->is_extended_shape )
- ++len;
- glyphs = malloc((len+1)*sizeof(SplineChar *));
- for ( i=len=0; i<at->gi.gcnt; ++i )
- if ( (gid=at->gi.bygid[i])!=-1 && (sc=sf->glyphs[gid])!=NULL )
- if ( sc->is_extended_shape )
- glyphs[len++] = sc;
- glyphs[len] = NULL;
- dumpcoveragetable(mathf,glyphs);
- free(glyphs);
-}
-
-static int mkv_len(struct mathkernvertex *mkv) {
-return( 2+8*mkv->cnt-4 );
-}
-
-static int ttf_math_dump_mathkernvertex(FILE *mathf,struct mathkernvertex *mkv,
- int devtab_pos) {
- int i;
- uint32 here = ftell(mathf);
-
- putshort(mathf,mkv->cnt-1);
-
- for ( i=0; i<mkv->cnt-1; ++i ) {
- putshort(mathf,mkv->mkd[i].height);
- if ( mkv->mkd[i].height_adjusts!=NULL ) {
- putshort(mathf,devtab_pos-here);
- devtab_pos += DevTabLen(mkv->mkd[i].height_adjusts);
- } else
- putshort(mathf,0);
- }
- for ( i=0; i<mkv->cnt; ++i ) {
- putshort(mathf,mkv->mkd[i].kern);
- if ( mkv->mkd[i].kern_adjusts!=NULL ) {
- putshort(mathf,devtab_pos-here);
- devtab_pos += DevTabLen(mkv->mkd[i].kern_adjusts);
- } else
- putshort(mathf,0);
- }
-return( devtab_pos );
-}
-
-static void ttf_math_dump_mathkerndevtab(FILE *mathf,struct mathkernvertex *mkv) {
- int i;
-
- for ( i=0; i<mkv->cnt-1; ++i )
- if ( mkv->mkd[i].height_adjusts!=NULL )
- dumpgposdevicetable(mathf,mkv->mkd[i].height_adjusts);
- for ( i=0; i<mkv->cnt; ++i )
- if ( mkv->mkd[i].kern_adjusts!=NULL )
- dumpgposdevicetable(mathf,mkv->mkd[i].kern_adjusts);
-}
-
-static void ttf_math_dump_mathkern(FILE *mathf,struct alltabs *at, SplineFont *sf) {
- int i, gid, len;
- SplineChar *sc, **glyphs;
- uint32 coverage_pos, coverage_table, kr_pos, midpos2;
-
- /* Figure out our glyph list (and count) */
- for ( i=len=0; i<at->gi.gcnt; ++i )
- if ( (gid=at->gi.bygid[i])!=-1 && (sc=sf->glyphs[gid])!=NULL )
- if ( sc->mathkern!=NULL )
- ++len;
- glyphs = malloc((len+1)*sizeof(SplineChar *));
- for ( i=len=0; i<at->gi.gcnt; ++i )
- if ( (gid=at->gi.bygid[i])!=-1 && (sc=sf->glyphs[gid])!=NULL )
- if ( sc->mathkern!=NULL )
- glyphs[len++] = sc;
- glyphs[len] = NULL;
-
- coverage_pos = ftell(mathf);
- putshort(mathf,0); /* Coverage table, return to this */
- putshort(mathf,len);
- kr_pos = coverage_pos + 4 + 8*len;
- for ( i=0; i<len; ++i ) {
- struct mathkern *mk = glyphs[i]->mathkern;
- if ( mk->top_right.cnt==0 )
- putshort(mathf,0);
- else {
- putshort(mathf,kr_pos-coverage_pos);
- kr_pos += mkv_len(&mk->top_right);
- }
- if ( mk->top_left.cnt==0 )
- putshort(mathf,0);
- else {
- putshort(mathf,kr_pos-coverage_pos);
- kr_pos += mkv_len(&mk->top_left);
- }
- if ( mk->bottom_right.cnt==0 )
- putshort(mathf,0);
- else {
- putshort(mathf,kr_pos-coverage_pos);
- kr_pos += mkv_len(&mk->bottom_right);
- }
- if ( mk->bottom_left.cnt==0 )
- putshort(mathf,0);
- else {
- putshort(mathf,kr_pos-coverage_pos);
- kr_pos += mkv_len(&mk->bottom_left);
- }
- }
- if ( ftell(mathf)!=coverage_pos + 4 + 8*len )
- IError("Actual midpoint1 did not match expected midpoint1 in mathkern table, expected=%d, actual=%d",
- coverage_pos + 4 + 8*len, ftell(mathf) );
-
- midpos2 = kr_pos;
- for ( i=0; i<len; ++i ) {
- struct mathkern *mk = glyphs[i]->mathkern;
- if ( mk->top_right.cnt!=0 )
- kr_pos = ttf_math_dump_mathkernvertex(mathf,&mk->top_right,kr_pos);
- if ( mk->top_left.cnt!=0 )
- kr_pos = ttf_math_dump_mathkernvertex(mathf,&mk->top_left,kr_pos);
- if ( mk->bottom_right.cnt!=0 )
- kr_pos = ttf_math_dump_mathkernvertex(mathf,&mk->bottom_right,kr_pos);
- if ( mk->bottom_left.cnt!=0 )
- kr_pos = ttf_math_dump_mathkernvertex(mathf,&mk->bottom_left,kr_pos);
- }
- if ( ftell(mathf)!=midpos2)
- IError("Actual midpoint2 did not match expected midpoint2 in mathkern table, expected=%d, actual=%d",
- midpos2, ftell(mathf) );
-
- for ( i=0; i<len; ++i ) {
- struct mathkern *mk = glyphs[i]->mathkern;
- if ( mk->top_right.cnt!=0 )
- ttf_math_dump_mathkerndevtab(mathf,&mk->top_right);
- if ( mk->top_left.cnt!=0 )
- ttf_math_dump_mathkerndevtab(mathf,&mk->top_left);
- if ( mk->bottom_right.cnt!=0 )
- ttf_math_dump_mathkerndevtab(mathf,&mk->bottom_right);
- if ( mk->bottom_left.cnt!=0 )
- ttf_math_dump_mathkerndevtab(mathf,&mk->bottom_left);
- }
- if ( kr_pos!=ftell(mathf) )
- IError("Actual end did not match expected end in mathkern table, expected=%d, actual=%d",
- kr_pos, ftell(mathf) );
-
- coverage_table = ftell(mathf);
- fseek( mathf, coverage_pos, SEEK_SET);
- putshort(mathf,coverage_table-coverage_pos);
- fseek(mathf,coverage_table,SEEK_SET);
- dumpcoveragetable(mathf,glyphs);
- free(glyphs);
-}
-
-static int gv_len(SplineFont *sf, struct glyphvariants *gv) {
- char *pt, *start;
- int ch, cnt;
- SplineChar *sc;
-
- if ( gv==NULL || (gv->variants==NULL && gv->part_cnt==0))
-return( 0 );
- if ( gv->variants==NULL )
-return( 4 ); /* No variants, but we've got parts to assemble */
- cnt = 0;
- for ( start=gv->variants ;; ) {
- while ( *start==' ' ) ++start;
- if ( *start=='\0' )
-return( 4+4*cnt ); /* MathGlyphConstructionTable */
- for ( pt = start ; *pt!=' ' && *pt!='\0'; ++pt );
- ch = *pt; *pt = '\0';
- sc = SFGetChar(sf,-1,start);
- *pt = ch;
- if ( sc!=NULL )
- ++cnt;
- start = pt;
- }
-}
-
-static int gvc_len(struct glyphvariants *gv) {
- if ( gv->part_cnt==0 )
-return( 0 );
-
-return( 6+10*gv->part_cnt );
-}
-
-static uint32 ttf_math_dump_mathglyphconstructiontable(FILE *mathf,
- struct glyphvariants *gv,SplineFont *sf, uint32 pos,int is_v) {
- char *pt, *start;
- int ch, cnt;
- SplineChar *sc;
- uint32 here = ftell(mathf);
- DBounds b;
-
- putshort(mathf,gv->part_cnt==0? 0 : pos-here);
- if ( gv->variants==NULL ) {
- putshort(mathf,0);
- } else {
- cnt = 0;
- for ( start=gv->variants ;; ) {
- while ( *start==' ' ) ++start;
- if ( *start=='\0' )
- break;
- for ( pt = start ; *pt!=' ' && *pt!='\0'; ++pt );
- ch = *pt; *pt = '\0';
- sc = SFGetChar(sf,-1,start);
- *pt = ch;
- if ( sc!=NULL )
- ++cnt;
- start = pt;
- }
- putshort(mathf,cnt);
- for ( start=gv->variants ;; ) {
- while ( *start==' ' ) ++start;
- if ( *start=='\0' )
- break;
- for ( pt = start ; *pt!=' ' && *pt!='\0'; ++pt );
- ch = *pt; *pt = '\0';
- sc = SFGetChar(sf,-1,start);
- *pt = ch;
- if ( sc!=NULL ) {
- putshort(mathf,sc->ttf_glyph);
- SplineCharFindBounds(sc,&b);
- /* Don't ask me why I have a plus one here. In the MS font */
- /* CambriaMath all of these values are one more than I would */
- /* expect */
- if ( is_v )
- putshort(mathf,b.maxy-b.miny +1);
- else
- putshort(mathf,b.maxx-b.minx +1);
- }
- start=pt;
- }
- }
-return( pos + gvc_len(gv));
-}
-
-static uint32 ttf_math_dump_mathglyphassemblytable(FILE *mathf,
- struct glyphvariants *gv,SplineFont *sf, uint32 devtab_pos) {
- SplineChar *sc;
- uint32 here = ftell(mathf);
- int i;
-
- if ( gv->part_cnt==0 )
-return( devtab_pos );
- putshort(mathf,gv->italic_correction);
- if ( gv->italic_adjusts!=NULL ) {
- putshort(mathf,devtab_pos-here);
- devtab_pos += DevTabLen(gv->italic_adjusts);
- } else
- putshort(mathf,0);
- putshort(mathf,gv->part_cnt);
- for ( i=0; i<gv->part_cnt; ++i ) {
- sc = SFGetChar(sf,-1,gv->parts[i].component);
- if ( sc==NULL )
- putshort(mathf,0); /* .notdef */
- else
- putshort(mathf,sc->ttf_glyph);
- putshort(mathf,gv->parts[i].startConnectorLength);
- putshort(mathf,gv->parts[i].endConnectorLength);
- putshort(mathf,gv->parts[i].fullAdvance);
- putshort(mathf,gv->parts[i].is_extender);
- }
-return(devtab_pos);
-}
-
-static void ttf_math_dump_glyphvariant(FILE *mathf,struct alltabs *at, SplineFont *sf) {
- int i, gid, vlen, hlen;
- SplineChar *sc, **vglyphs, **hglyphs;
- uint32 coverage_pos, coverage_table, offset, pos, assembly_pos;
-
- /* Figure out our glyph list (and count) */
- for ( i=vlen=hlen=0; i<at->gi.gcnt; ++i )
- if ( (gid=at->gi.bygid[i])!=-1 && (sc=sf->glyphs[gid])!=NULL ) {
- if ( sc->vert_variants!=NULL )
- ++vlen;
- if ( sc->horiz_variants!=NULL )
- ++hlen;
- }
-
- vglyphs = malloc((vlen+1)*sizeof(SplineChar *));
- hglyphs = malloc((hlen+1)*sizeof(SplineChar *));
- for ( i=vlen=hlen=0; i<at->gi.gcnt; ++i )
- if ( (gid=at->gi.bygid[i])!=-1 && (sc=sf->glyphs[gid])!=NULL ) {
- if ( sc->vert_variants!=NULL )
- vglyphs[vlen++] = sc;
- if ( sc->horiz_variants!=NULL )
- hglyphs[hlen++] = sc;
- }
- vglyphs[vlen] = NULL;
- hglyphs[hlen] = NULL;
-
- putshort(mathf,sf->MATH==NULL?(sf->ascent+sf->descent)/50 : sf->MATH->MinConnectorOverlap );
- coverage_pos = ftell(mathf);
- putshort(mathf,0); /* Vertical Coverage table, return to this */
- putshort(mathf,0); /* Horizontal Coverage table, return to this */
- putshort(mathf,vlen);
- putshort(mathf,hlen);
- offset = 5*2+vlen*2+hlen*2;
- for ( i=0; i<vlen; ++i ) {
- putshort(mathf,offset);
- offset += gv_len(sf,vglyphs[i]->vert_variants);
- }
- for ( i=0; i<hlen; ++i ) {
- putshort(mathf,offset);
- offset += gv_len(sf,hglyphs[i]->horiz_variants);
- }
- assembly_pos = pos = (coverage_pos-2)+offset;
- for ( i=0; i<vlen; ++i ) {
- /*uint32 start = ftell(mathf);*/
- pos = ttf_math_dump_mathglyphconstructiontable(mathf,
- vglyphs[i]->vert_variants,sf,pos,true);
- /*if ( ftell(mathf)-start != gv_len(sf,vglyphs[i]->vert_variants))*/
- /*IError("v gv_len incorrect");*/
- }
- for ( i=0; i<hlen; ++i ) {
- /*uint32 start = ftell(mathf);*/
- pos = ttf_math_dump_mathglyphconstructiontable(mathf,
- hglyphs[i]->horiz_variants,sf,pos,false);
- /*if ( ftell(mathf)-start != gv_len(sf,hglyphs[i]->horiz_variants))*/
- /*IError("h gv_len incorrect: %s", hglyphs[i]->name);*/
- }
- if ( ftell(mathf)!=assembly_pos )
- IError("assembly tables at wrong place");
-
- for ( i=0; i<vlen; ++i )
- pos = ttf_math_dump_mathglyphassemblytable(mathf,
- vglyphs[i]->vert_variants,sf,pos);
- for ( i=0; i<hlen; ++i )
- pos = ttf_math_dump_mathglyphassemblytable(mathf,
- hglyphs[i]->horiz_variants,sf,pos);
- for ( i=0; i<vlen; ++i )
- if ( vglyphs[i]->vert_variants->part_cnt!=0 &&
- vglyphs[i]->vert_variants->italic_adjusts!=NULL )
- dumpgposdevicetable(mathf,vglyphs[i]->vert_variants->italic_adjusts);
- for ( i=0; i<hlen; ++i )
- if ( hglyphs[i]->horiz_variants->part_cnt!=0 &&
- hglyphs[i]->horiz_variants->italic_adjusts!=NULL )
- dumpgposdevicetable(mathf,hglyphs[i]->horiz_variants->italic_adjusts);
- if ( vlen!=0 ) {
- coverage_table = ftell(mathf);
- fseek( mathf, coverage_pos, SEEK_SET);
- putshort(mathf,coverage_table-(coverage_pos-2));
- fseek(mathf,coverage_table,SEEK_SET);
- dumpcoveragetable(mathf,vglyphs);
- }
- free(vglyphs);
- if ( hlen!=0 ) {
- coverage_table = ftell(mathf);
- fseek( mathf, coverage_pos+2, SEEK_SET);
- putshort(mathf,coverage_table-(coverage_pos-2));
- fseek(mathf,coverage_table,SEEK_SET);
- dumpcoveragetable(mathf,hglyphs);
- }
- free(hglyphs);
-}
-
-void otf_dump_math(struct alltabs *at, SplineFont *sf) {
- FILE *mathf;
- int i;
- uint32 devtab_offsets[60], const_start, gi_start, v_start;
- int bits = MathBits(at,sf);
-
- if ( sf->MATH==NULL )
-return;
-
- at->math = mathf = tmpfile2();
-
- putlong(mathf, 0x00010000 ); /* Version 1 */
- putshort(mathf, 10); /* Offset to constants */
- putshort(mathf, 0); /* GlyphInfo, fix later */
- putshort(mathf, 0); /* Variants, fix later */
-
- /* Start on constants */
- memset(devtab_offsets,0,sizeof(devtab_offsets));
- const_start = ftell(mathf);
- for ( i=0; math_constants_descriptor[i].script_name!=NULL; ++i ) {
- int16 *pos = (int16 *) (((char *) (sf->MATH)) + math_constants_descriptor[i].offset );
- if ( pos == (int16 *) &sf->MATH->MinConnectorOverlap )
- continue; /* Actually lives in the Variant table, not here */
- putshort(mathf, *pos);
- if ( math_constants_descriptor[i].devtab_offset != -1 ) {
- devtab_offsets[i] = ftell(mathf);
- putshort(mathf, 0); /* Fix up later if we support device tables */
- }
- }
- for ( i=0; math_constants_descriptor[i].script_name!=NULL; ++i ) {
- int16 *pos = (int16 *) (((char *) (sf->MATH)) + math_constants_descriptor[i].offset );
- DeviceTable **devtab = (DeviceTable **) (((char *) (sf->MATH)) + math_constants_descriptor[i].devtab_offset );
- if ( pos == (int16 *) &sf->MATH->MinConnectorOverlap )
- continue; /* Actually lives in the Variant table, not here */
- if ( math_constants_descriptor[i].devtab_offset >= 0 && *devtab!=NULL ) {
- uint32 here = ftell(mathf);
- fseek(mathf,devtab_offsets[i],SEEK_SET);
- putshort(mathf, here-const_start);
- fseek(mathf,here,SEEK_SET);
- dumpgposdevicetable(mathf,*devtab);
- }
- }
-
- /* The spec does not say this can be NULL */
- if ( 1 /* bits&mb_gi*/ ) {
- gi_start = ftell(mathf);
- fseek(mathf,6,SEEK_SET);
- putshort(mathf,gi_start);
- fseek(mathf,gi_start,SEEK_SET);
-
- putshort(mathf,0); /* Italics correction */
- putshort(mathf,0); /* top accent */
- putshort(mathf,0); /* is extended shape */
- putshort(mathf,0); /* math kern info */
-
- if ( bits&mb_italic ) {
- v_start = ftell(mathf);
- fseek(mathf,gi_start,SEEK_SET);
- putshort(mathf,v_start-gi_start);
- fseek(mathf,v_start,SEEK_SET);
-
- ttf_math_dump_italic_top(mathf,at,sf,true);
- }
-
- if ( bits&mb_topaccent ) {
- v_start = ftell(mathf);
- fseek(mathf,gi_start+2,SEEK_SET);
- putshort(mathf,v_start-gi_start);
- fseek(mathf,v_start,SEEK_SET);
-
- ttf_math_dump_italic_top(mathf,at,sf,false);
- }
-
- if ( bits&mb_extended ) {
- v_start = ftell(mathf);
- fseek(mathf,gi_start+4,SEEK_SET);
- putshort(mathf,v_start-gi_start);
- fseek(mathf,v_start,SEEK_SET);
-
- ttf_math_dump_extended(mathf,at,sf);
- }
-
- if ( bits&mb_mathkern ) {
- v_start = ftell(mathf);
- fseek(mathf,gi_start+6,SEEK_SET);
- putshort(mathf,v_start-gi_start);
- fseek(mathf,v_start,SEEK_SET);
-
- ttf_math_dump_mathkern(mathf,at,sf);
- }
- }
-
- /* The spec does not say this can be NULL */
- if ( 1 /* bits&mb_gv*/ ) {
- v_start = ftell(mathf);
- fseek(mathf,8,SEEK_SET);
- putshort(mathf,v_start);
- fseek(mathf,v_start,SEEK_SET);
-
- ttf_math_dump_glyphvariant(mathf,at,sf);
- }
-
- at->mathlen = ftell(mathf);
- if ( ftell(mathf)&1 )
- putc('\0',mathf);
- if ( ftell(mathf)&2 )
- putshort(mathf,0);
-}
-
-struct taglist {
- uint32 tag;
- struct taglist *next;
-};
-
-static int taglistcompar(const void *_cv1, const void *_cv2) {
- const struct taglist *const *tl1 = _cv1, *const *tl2 = _cv2;
-
- if ( (*tl1)->tag==(*tl2)->tag )
-return( 0 );
- if ( (*tl1)->tag>(*tl2)->tag )
-return( 1 );
-
-return( -1 );
-}
-
-static int langlistcompar(const void *_cv1, const void *_cv2) {
- const struct taglist *const *tl1 = _cv1, *const *tl2 = _cv2;
-
- if ( (*tl1)->tag==(*tl2)->tag )
-return( 0 );
- if ( (*tl1)->tag == DEFAULT_LANG )
-return( -1 );
- if ( (*tl2)->tag == DEFAULT_LANG )
-return( 1 );
- if ( (*tl1)->tag>(*tl2)->tag )
-return( 1 );
-
-return( -1 );
-}
-
-static struct taglist *sorttaglist(struct taglist *list,int (*compar)(const void *,const void*)) {
- struct taglist *t, **array;
- int i,cnt;
-
- if ( list==NULL || list->next==NULL )
-return( list );
-
- for ( t=list, cnt=0; t!=NULL; t=t->next, ++cnt );
- array = malloc(cnt*sizeof(struct taglist *));
- for ( t=list, cnt=0; t!=NULL; t=t->next, ++cnt )
- array[cnt] = t;
- qsort(array,cnt,sizeof(struct taglist *),compar);
- for ( i=1; i<cnt; ++i )
- array[i-1]->next = array[i];
- array[cnt-1]->next = NULL;
- list = array[0];
- free( array );
-return( list );
-}
-
-static void _base_sort(struct Base *base) {
- /* Sort the base lines. Which can reorder the def_baseline index in the */
- /* script, and the baseline_pos lists */
- /* Sort the script list */
- /* Sort the language lists in each script */
- /* Sort the feature lists in each language */
- int i,j,pos, tag;
- struct basescript *bs;
- struct baselangextent *langs;
-
- if ( base==NULL )
-return;
-
- if ( base->baseline_cnt!=0 ) {
- for ( i=0; i<base->baseline_cnt; ++i )
- for ( j=i+1; j<base->baseline_cnt; ++j ) {
- if ( base->baseline_tags[i]>base->baseline_tags[j] ) {
- tag = base->baseline_tags[i];
- base->baseline_tags[i] = base->baseline_tags[j];
- base->baseline_tags[j] = tag;
- for ( bs=base->scripts ; bs!=NULL; bs=bs->next ) {
- if ( bs->def_baseline==i )
- bs->def_baseline = j;
- else if ( bs->def_baseline==j )
- bs->def_baseline = i;
- pos = bs->baseline_pos[i];
- bs->baseline_pos[i] = bs->baseline_pos[j];
- bs->baseline_pos[j] = pos;
- }
- }
- }
- }
- base->scripts = (struct basescript *) sorttaglist((struct taglist *) base->scripts,taglistcompar);
- for ( bs=base->scripts ; bs!=NULL; bs=bs->next ) {
- bs->langs = (struct baselangextent *) sorttaglist((struct taglist *) bs->langs,langlistcompar);
- for ( langs = bs->langs; langs!=NULL; langs = langs->next )
- langs->features = (struct baselangextent *) sorttaglist((struct taglist *) langs->features,taglistcompar);
- }
-}
-
-void SFBaseSort(SplineFont *sf) {
- _base_sort(sf->horiz_base);
- _base_sort(sf->vert_base);
-}
-
-static void dump_minmax(FILE *basef,struct baselangextent *bl) {
- struct baselangextent *fl;
- int fcnt;
-
- putshort(basef,bl->descent);
- putshort(basef,bl->ascent);
- for ( fl=bl->features, fcnt=0; fl!=NULL; fl=fl->next, ++fcnt );
- putshort(basef,fcnt);
- for ( fl=bl->features; fl!=NULL; fl=fl->next ) {
- putlong(basef,fl->lang); /* feature tag really */
- putshort(basef,fl->descent);
- putshort(basef,fl->ascent);
- }
-}
-
-void otf_dumpbase(struct alltabs *at, SplineFont *sf) {
- FILE *basef;
- int i,j, cnt, lcnt;
- uint32 here, bsl;
- struct basescript *bs;
- struct baselangextent *bl, *dflt;
- int offset;
-
- if ( sf->horiz_base==NULL && sf->vert_base==NULL )
-return;
-
- SFBaseSort(sf);
-
- at->base = basef = tmpfile2();
-
- putlong(basef, 0x00010000 ); /* Version 1 */
- putshort(basef, 0 ); /* offset to horizontal baselines, fill in later */
- putshort(basef, 0 ); /* offset to vertical baselines, fill in later */
-
- for ( i=0; i<2; ++i ) {
- struct Base *base = i==0 ? sf->horiz_base : sf->vert_base;
- if ( base==NULL )
- continue;
- here = ftell(basef);
- fseek(basef,4+2*i,SEEK_SET);
- putshort(basef,here-0);
- fseek(basef,here,SEEK_SET);
-
- /* axis table */
- putshort(basef,base->baseline_cnt==0 ? 0 : 4 );
- putshort(basef,base->baseline_cnt==0 ? 4 :
- 4+2+4*base->baseline_cnt );
-
- if ( base->baseline_cnt!=0 ) {
- /* BaseTagList table */
- putshort(basef,base->baseline_cnt);
- for ( j=0; j<base->baseline_cnt; ++j )
- putlong(basef,base->baseline_tags[j]);
- }
-
- /* BaseScriptList table */
- bsl = ftell(basef);
- for ( bs=base->scripts, cnt=0; bs!=NULL; bs=bs->next, ++cnt );
- putshort(basef,cnt);
- for ( bs=base->scripts; bs!=NULL; bs=bs->next ) {
- putlong(basef,bs->script);
- putshort(basef,0);
- }
-
- /* BaseScript table */
- for ( bs=base->scripts, cnt=0; bs!=NULL; bs=bs->next, ++cnt ) {
- uint32 bst = ftell(basef);
- fseek(basef,bsl+2+6*cnt+4,SEEK_SET);
- putshort(basef,bst-bsl);
- fseek(basef,bst,SEEK_SET);
-
- for ( bl=bs->langs, dflt=NULL, lcnt=0; bl!=NULL; bl=bl->next ) {
- if ( bl->lang==DEFAULT_LANG )
- dflt = bl;
- else
- ++lcnt;
- }
- offset = 6+6*lcnt;
- putshort(basef,base->baseline_cnt==0?0:offset);
- if ( base->baseline_cnt!=0 )
- offset += 4+2*base->baseline_cnt+4*base->baseline_cnt;
- putshort(basef,dflt==NULL ? 0 : offset);
- putshort(basef,lcnt);
- for ( bl=bs->langs; bl!=NULL; bl=bl->next ) if ( bl->lang!=DEFAULT_LANG ) {
- putlong(basef,bl->lang);
- putshort(basef,0);
- }
-
- /* Base Values table */
- if ( base->baseline_cnt!=0 ) {
- offset = 4+2*base->baseline_cnt;
- putshort(basef,bs->def_baseline);
- putshort(basef,base->baseline_cnt);
- for ( j=0; j<base->baseline_cnt; ++j ) {
- putshort(basef,offset);
- offset += 2*2;
- }
- for ( j=0; j<base->baseline_cnt; ++j ) {
- putshort(basef,1); /* format 1 */
- putshort(basef,bs->baseline_pos[j]);
- }
- }
-
- if ( dflt!=NULL )
- dump_minmax(basef,dflt);
- for ( bl=bs->langs, dflt=NULL, lcnt=0; bl!=NULL; bl=bl->next ) if ( bl->lang!=DEFAULT_LANG ) {
- uint32 here = ftell(basef);
- fseek(basef,bst+6+6*lcnt+4,SEEK_SET);
- putshort(basef,here-bst);
- fseek(basef,here,SEEK_SET);
- dump_minmax(basef,bl);
- }
- }
- }
-
- at->baselen = ftell(basef);
- if ( ftell(basef)&1 )
- putc('\0',basef);
- if ( ftell(basef)&2 )
- putshort(basef,0);
-}
-
-static int jscriptsort(const void *_s1,const void *_s2) {
- const Justify * const * __s1 = (const Justify * const *) _s1;
- const Justify * const * __s2 = (const Justify * const *) _s2;
- const Justify *s1 = *__s1;
- const Justify *s2 = *__s2;
-
- if ( s1->script>s2->script )
-return( 1 );
- else if ( s1->script<s2->script )
-return( -1 );
- else
-return( 0 );
-}
-
-static int jlangsort(const void *_s1,const void *_s2) {
- const struct jstf_lang * const * __s1 = (const struct jstf_lang * const *) _s1;
- const struct jstf_lang * const * __s2 = (const struct jstf_lang * const *) _s2;
- const struct jstf_lang *s1 = *__s1;
- const struct jstf_lang *s2 = *__s2;
-
- if ( s1->lang==s2->lang )
-return( 0 );
-
- if ( s1->lang==DEFAULT_LANG )
-return( -1 );
- if ( s2->lang==DEFAULT_LANG )
-return( 1 );
-
- if ( s1->lang>s2->lang )
-return( 1 );
- else
-return( -1 );
-}
-
-static int lookup_order(const void *_s1,const void *_s2) {
- const OTLookup * const * __s1 = (const OTLookup * const *) _s1;
- const OTLookup * const * __s2 = (const OTLookup * const *) _s2;
- const OTLookup *s1 = *__s1;
- const OTLookup *s2 = *__s2;
-
- if ( s1->lookup_index>s2->lookup_index )
-return( 1 );
- else if ( s1->lookup_index<s2->lookup_index )
-return( -1 );
- else
-return( 0 );
-}
-
-static void SFJstfSort(SplineFont *sf) {
- /* scripts must be ordered */
- /* languages must be ordered within scripts */
- /* lookup lists must be ordered */
- Justify *jscript, **scripts;
- int i,cnt,lmax;
- struct jstf_lang **langs;
-
- for ( cnt=0, jscript= sf->justify; jscript!=NULL; ++cnt, jscript=jscript->next );
- if ( cnt>1 ) {
- scripts = malloc(cnt*sizeof(Justify *));
- for ( i=0, jscript= sf->justify; jscript!=NULL; ++i, jscript=jscript->next )
- scripts[i] = jscript;
- qsort(scripts,cnt,sizeof(Justify *),jscriptsort);
- for ( i=1; i<cnt; ++i )
- scripts[i-1]->next = scripts[i];
- scripts[cnt-1]->next = NULL;
- sf->justify = scripts[0];
- free(scripts);
- }
-
- langs = NULL; lmax=0;
- for ( jscript= sf->justify; jscript!=NULL; jscript=jscript->next ) {
- struct jstf_lang *jlang;
- for ( cnt=0, jlang=jscript->langs; jlang!=NULL; ++cnt, jlang=jlang->next );
- if ( cnt>1 ) {
- if ( cnt>lmax )
- langs = realloc(langs,(lmax=cnt+10)*sizeof(struct jstf_lang *));
- for ( i=0, jlang=jscript->langs; jlang!=NULL; ++i, jlang=jlang->next )
- langs[i] = jlang;
- qsort(langs,cnt,sizeof(Justify *),jlangsort);
- for ( i=1; i<cnt; ++i )
- langs[i-1]->next = langs[i];
- langs[cnt-1]->next = NULL;
- jscript->langs = langs[0];
- }
- }
- free(langs);
-
- /* don't bother to sort the lookup lists yet. We need to separate them into*/
- /* GPOS/GSUB first, might as well do it all at once later */
-}
-
-static void jstf_SplitTables(OTLookup **mixed,OTLookup ***_SUB,OTLookup ***_POS) {
- /* (later is now, see comment above) */
- /* mixed contains both gsub and gpos lookups. put them into their own */
- /* lists, and then sort them */
- int cnt, s, p;
- OTLookup **SUB, **POS;
-
- if ( mixed==NULL || mixed[0]==NULL ) {
- *_SUB = NULL;
- *_POS = NULL;
-return;
- }
-
- for ( cnt=0; mixed[cnt]!=NULL; ++cnt);
- SUB = malloc((cnt+1)*sizeof(OTLookup *));
- POS = malloc((cnt+1)*sizeof(OTLookup *));
- for ( cnt=s=p=0; mixed[cnt]!=NULL; ++cnt) {
- if ( mixed[cnt]->lookup_index==-1 ) /* Not actually used */
- continue;
- if ( mixed[cnt]->lookup_type>=gpos_start )
- POS[p++] = mixed[cnt];
- else
- SUB[s++] = mixed[cnt];
- }
- POS[p] = SUB[s] = NULL;
-
- if ( p>1 )
- qsort(POS,p,sizeof(OTLookup *),lookup_order);
- if ( s>1 )
- qsort(SUB,s,sizeof(OTLookup *),lookup_order);
- if ( p==0 ) {
- free(POS);
- POS=NULL;
- }
- if ( s==0 ) {
- free(SUB);
- SUB=NULL;
- }
- *_SUB = SUB;
- *_POS = POS;
-}
-
-static uint32 jstf_dumplklist(FILE *jstf,OTLookup **PS,uint32 base) {
- uint32 here;
- int i;
-
- if ( PS==NULL )
-return( 0 );
-
- here = ftell(jstf);
- for ( i=0; PS[i]!=NULL; ++i );
- putshort(jstf,i); /* Lookup cnt */
- for ( i=0; PS[i]!=NULL; ++i )
- putshort( jstf, PS[i]->lookup_index );
- free(PS);
-return( here - base );
-}
-
-static uint32 jstf_dumpmaxlookups(FILE *jstf,SplineFont *sf,struct alltabs *at,
- OTLookup **maxes,uint32 base) {
- uint32 here, lbase;
- int cnt,i;
- int scnt, j;
- struct lookup_subtable *sub;
-
- if ( maxes==NULL )
-return( 0 );
-
- for ( cnt=i=0; maxes[i]!=NULL; ++i )
- if ( !maxes[i]->unused )
- ++cnt;
- if ( cnt==0 )
-return( 0 );
-
- if ( (here=ftell(jstf))<0 )
-return( 0 );
-
- putshort( jstf,cnt );
- for ( i=0; maxes[i]!=NULL; ++i ) if ( !maxes[i]->unused )
- putshort( jstf,0 );
- for ( cnt=i=0; maxes[i]!=NULL; ++i ) if ( !maxes[i]->unused ) {
- if ( (lbase=ftell(jstf))<0 )
-return( 0 );
- fseek(jstf,here+2+2*cnt,SEEK_SET);
- putshort(jstf,lbase-here);
- fseek(jstf,lbase,SEEK_SET);
-
- putshort(jstf,maxes[i]->lookup_type - gpos_start );
- putshort(jstf,maxes[i]->lookup_flags);
-
- for ( scnt=0, sub=maxes[i]->subtables; sub!=NULL; sub=sub->next )
- if ( !sub->unused )
- ++scnt;
- putshort( jstf,scnt );
- for ( j=0; j<scnt; ++j )
- putshort( jstf,0 );
- /* I don't think extension lookups get a MarkAttachmentType, I guess */
- /* that inherits from the parent? */
-
- otf_dumpALookup(jstf, maxes[i], sf, at);
- fseek(jstf,lbase+6,SEEK_SET);
- for ( sub=maxes[i]->subtables; sub!=NULL; sub=sub->next )
- if ( !sub->unused )
- putshort(jstf,sub->subtable_offset-lbase);
- ++cnt;
- }
-
-return( here - base );
-}
-
-void otf_dumpjstf(struct alltabs *at, SplineFont *sf) {
- FILE *jstf;
- int i, cnt, lcnt, offset;
- uint32 here, base;
- Justify *jscript;
- struct jstf_lang *jlang;
-
- if ( sf->justify==NULL )
-return;
-
- SFJstfSort(sf);
- for ( jscript=sf->justify, cnt=0; jscript!=NULL; jscript=jscript->next, ++cnt );
-
- at->jstf = jstf = tmpfile2();
-
- putlong(jstf, 0x00010000 ); /* Version 1 */
- putshort(jstf, cnt ); /* script count */
- for ( jscript=sf->justify; jscript!=NULL; jscript=jscript->next ) {
- putlong(jstf, jscript->script);
- putshort(jstf, 0); /* Come back to this later */
- }
- for ( jscript=sf->justify, cnt=0; jscript!=NULL; jscript=jscript->next, ++cnt ) {
- base = ftell(jstf);
- if ( base>0xffff )
- ff_post_error(_("Failure"),_("Offset in JSTF table is too big. The resultant font will not work."));
- fseek(jstf, 6+6*cnt+4,SEEK_SET);
- putshort(jstf,base);
- fseek(jstf, base, SEEK_SET);
-
- putshort(jstf,0); /* extender glyphs */
- putshort(jstf,0); /* default lang */
- for ( jlang=jscript->langs, lcnt=0; jlang!=NULL; jlang=jlang->next, ++lcnt );
- if ( lcnt>0 && jscript->langs->lang==DEFAULT_LANG )
- --lcnt;
- putshort(jstf,lcnt); /* count of non-default languages */
- jlang = jscript->langs;
- if ( jlang!=NULL && jlang->lang==DEFAULT_LANG )
- jlang=jlang->next;
- for ( ; jlang!=NULL; jlang=jlang->next ) {
- putlong(jstf, jlang->lang);
- putshort(jstf, 0); /* Come back to this later */
- }
-
- if ( jscript->extenders!=NULL ) {
- SplineChar **glyphs;
- int gcnt,g;
-
- here = ftell(jstf);
- fseek(jstf,base,SEEK_SET);
- putshort(jstf,here-base);
- fseek(jstf,here,SEEK_SET);
-
- glyphs = OrderedGlyphsFromNames(sf,jscript->extenders);
- if ( glyphs==NULL )
- gcnt=0;
- else
- for ( gcnt=0; glyphs[gcnt]!=NULL; ++gcnt);
- putshort(jstf,gcnt);
- for ( g=0; g<gcnt; ++g )
- putshort(jstf,glyphs[g]->ttf_glyph);
- free(glyphs);
- }
-
- offset=0;
- for ( jlang=jscript->langs, lcnt=0; jlang!=NULL; jlang=jlang->next, ++lcnt ) {
- here = ftell(jstf);
- if ( jlang->lang==DEFAULT_LANG ) {
- fseek(jstf,base+2,SEEK_SET);
- offset = -6;
- } else
- fseek(jstf,base+offset+10+lcnt*6,SEEK_SET);
- putshort(jstf,here-base);
- fseek(jstf,here,SEEK_SET);
-
- putshort(jstf,jlang->cnt);
- for ( i=0; i<jlang->cnt; ++i )
- putshort(jstf,0);
- for ( i=0; i<jlang->cnt; ++i ) {
- OTLookup **enSUB, **enPOS, **disSUB, **disPOS;
- uint32 enSUBoff, enPOSoff, disSUBoff, disPOSoff, maxOff;
- uint32 pbase;
- pbase = ftell(jstf);
- fseek(jstf,here+2+i*2,SEEK_SET);
- putshort(jstf,pbase-here);
- fseek(jstf,pbase,SEEK_SET);
-
- putshort(jstf,0);
- putshort(jstf,0);
- putshort(jstf,0);
- putshort(jstf,0);
- putshort(jstf,0);
- putshort(jstf,0);
- putshort(jstf,0);
- putshort(jstf,0);
- putshort(jstf,0);
- putshort(jstf,0);
-
- jstf_SplitTables(jlang->prios[i].enableShrink,&enSUB,&enPOS);
- jstf_SplitTables(jlang->prios[i].disableShrink,&disSUB,&disPOS);
- enSUBoff = jstf_dumplklist(jstf,enSUB, pbase);
- disSUBoff = jstf_dumplklist(jstf,disSUB,pbase);
- enPOSoff = jstf_dumplklist(jstf,enPOS, pbase);
- disPOSoff = jstf_dumplklist(jstf,disPOS,pbase);
- maxOff = jstf_dumpmaxlookups(jstf,sf,at,jlang->prios[i].maxShrink,pbase);
-
- fseek(jstf,pbase,SEEK_SET);
- putshort(jstf,enSUBoff);
- putshort(jstf,disSUBoff);
- putshort(jstf,enPOSoff);
- putshort(jstf,disPOSoff);
- putshort(jstf,maxOff);
-
- fseek(jstf,0,SEEK_END);
- jstf_SplitTables(jlang->prios[i].enableExtend,&enSUB,&enPOS);
- jstf_SplitTables(jlang->prios[i].disableExtend,&disSUB,&disPOS);
- enSUBoff = jstf_dumplklist(jstf,enSUB, pbase);
- disSUBoff = jstf_dumplklist(jstf,disSUB,pbase);
- enPOSoff = jstf_dumplklist(jstf,enPOS, pbase);
- disPOSoff = jstf_dumplklist(jstf,disPOS,pbase);
- maxOff = jstf_dumpmaxlookups(jstf,sf,at,jlang->prios[i].maxExtend,pbase);
-
- fseek(jstf,pbase+10,SEEK_SET);
- putshort(jstf,enSUBoff);
- putshort(jstf,disSUBoff);
- putshort(jstf,enPOSoff);
- putshort(jstf,disPOSoff);
- putshort(jstf,maxOff);
- fseek(jstf,0,SEEK_END);
- }
- }
- }
-
- fseek(jstf,0,SEEK_END);
- at->jstflen = ftell(jstf);
- if ( ftell(jstf)&1 )
- putc('\0',jstf);
- if ( ftell(jstf)&2 )
- putshort(jstf,0);
-}
-
-void otf_dump_dummydsig(struct alltabs *at, SplineFont *sf) {
- FILE *dsigf;
-
- /* I think the DSIG table is a big crock. At best the most it can do is */
- /* tell you that the font hasn't changed since it was signed. It gives */
- /* no guarantee that the data are reasonable. I think it's stupid. */
- /* I think it is even more stupid that MS choses this useless table as a*/
- /* mark of whether a ttf font is OpenType or not. */
- /* But users want their fonts to show up as OpenType under MS. And I'm */
- /* told an empty DSIG table works for that. So... a truely pointless */
- /* instance of a pointless table. I suppose that's a bit ironic. */
-
- at->dsigf = dsigf = tmpfile2();
- putlong(dsigf,0x00000001); /* Standard version (and why isn't it 0x10000 like everything else?) */
- putshort(dsigf,0); /* No signatures in my signature table*/
- putshort(dsigf,0); /* No flags */
-
- at->dsiglen = ftell(dsigf);
- if ( ftell(dsigf)&1 )
- putc('\0',dsigf);
- if ( ftell(dsigf)&2 )
- putshort(dsigf,0);
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/tottfvar.c b/dviware/dvisvgm/libs/ff-woff/fontforge/tottfvar.c
deleted file mode 100644
index 436ab39f42..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/tottfvar.c
+++ /dev/null
@@ -1,820 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include "ttf.h"
-#include <math.h>
-
-static int PtNumbersAreSet(SplineChar *sc) {
- struct splinecharlist *dep;
-
- if ( sc==NULL )
-return( false );
-
- if ( sc->ttf_instrs!=NULL )
-return( true );
- for ( dep= sc->dependents; dep!=NULL ; dep=dep->next )
- if ( dep->sc->ttf_instrs!=NULL )
-return( true );
-
-return( false );
-}
-
-static int AssignPtNumbers(MMSet *mm,int gid) {
- /* None of the instances has fixed point numbers. Make them match */
- int cnt=0;
- SplineSet **ss;
- SplinePoint **sp;
- int i;
- int allavg, alllines, stillmore, ret=true;
-
- ss = malloc((mm->instance_count+1)*sizeof(SplineSet *));
- sp = malloc((mm->instance_count+1)*sizeof(SplinePoint *));
- for ( i=0; i<mm->instance_count; ++i )
- ss[i] = mm->instances[i]->glyphs[gid]->layers[ly_fore].splines;
- ss[i] = mm->normal->glyphs[gid]->layers[ly_fore].splines;
-
- if ( ss[0]==NULL ) {
- stillmore = false;
- for ( i=0; i<=mm->instance_count; ++i )
- if ( ss[i]!=NULL ) stillmore = true;
- free(ss);
- free(sp);
- if ( stillmore )
-return( false );
-return( true );
- } else {
- stillmore = true;
- for ( i=0; i<=mm->instance_count; ++i )
- if ( ss[i]==NULL ) stillmore = false;
- if ( !stillmore )
-{
-free(ss);
-free(sp);
-return( false );
-}
- }
-
- for (;;) {
- for ( i=0; i<=mm->instance_count; ++i )
- sp[i] = ss[i]->first;
- for (;;) {
- allavg = alllines = true;
- for ( i=0; i<=mm->instance_count; ++i ) {
- if ( !RealNear(sp[i]->me.x,(sp[i]->nextcp.x+sp[i]->prevcp.x)/2) ||
- !RealNear(sp[i]->me.y,(sp[i]->nextcp.y+sp[i]->prevcp.y)/2) )
- allavg = false;
- if ( !sp[i]->nonextcp )
- alllines = false;
- }
- if ( sp[0] == ss[0]->first )
- allavg = false;
- for ( i=0; i<=mm->instance_count; ++i ) {
- if ( allavg )
- sp[i]->ttfindex = 0xffff;
- else
- sp[i]->ttfindex = cnt;
- }
- if ( !allavg )
- ++cnt;
- for ( i=0; i<=mm->instance_count; ++i ) {
- if ( alllines )
- sp[i]->nextcpindex = 0xffff;
- else
- sp[i]->nextcpindex = cnt;
- }
- if ( !alllines )
- ++cnt;
-
- if ( sp[0]->next==NULL ) {
- stillmore = false;
- for ( i=1; i<=mm->instance_count; ++i )
- if ( sp[i]->next!=NULL )
- stillmore = true;
- if ( stillmore )
- ret = false;
- break;
- }
- for ( i=1; i<=mm->instance_count; ++i )
- if ( sp[i]->next==NULL )
- stillmore = false;
- if ( !stillmore ) {
- ret = false;
- break;
- }
- sp[0] = sp[0]->next->to;
- for ( i=1; i<=mm->instance_count; ++i )
- sp[i] = sp[i]->next->to;
- if ( sp[0]==ss[0]->first ) {
- stillmore = false;
- for ( i=1; i<=mm->instance_count; ++i )
- if ( sp[i]!=ss[i]->first )
- stillmore = true;
- if ( stillmore )
- ret = false;
- break;
- }
- for ( i=1; i<=mm->instance_count; ++i ) {
- if ( sp[i]==ss[i]->first )
- stillmore = false;
- }
- if ( !stillmore ) {
- ret = false;
- break;
- }
- }
- if ( !ret )
- break;
- stillmore = true;
- for ( i=0; i<=mm->instance_count; ++i )
- ss[i] = ss[i]->next;
- if ( ss[0]==NULL ) {
- stillmore=false;
- for ( i=1; i<=mm->instance_count; ++i )
- if ( ss[i]!=NULL )
- stillmore = true;
- if ( stillmore )
- ret = true;
- break;
- }
- for ( i=1; i<=mm->instance_count; ++i )
- if ( ss[i]==NULL )
- stillmore = false;
- if ( !stillmore ) {
- ret = true;
- break;
- }
- }
- free(ss);
- free(sp);
-return( ret );
-}
-
-static int MatchPoints(SplineFont *sffixed, SplineFont *sfother, int gid) {
- SplineChar *fixed, *other;
- SplineSet *ss1, *ss2;
- SplinePoint *sp1, *sp2;
-
- fixed = sffixed->glyphs[gid]; other = sfother->glyphs[gid];
-
- if ( PtNumbersAreSet(other)) {
- /* Point numbers must match exactly, both are fixed */
- for ( ss1=fixed->layers[ly_fore].splines,
- ss2=other->layers[ly_fore].splines;
- ss1!=NULL && ss2!=NULL ;
- ss1 = ss1->next, ss2=ss2->next ) {
- for ( sp1=ss1->first, sp2=ss2->first; ; ) {
- if ( sp1->ttfindex!=sp2->ttfindex ||
- sp1->nextcpindex!=sp2->nextcpindex )
-return( false );
- if ( sp1->next==NULL || sp2->next==NULL ) {
- if ( sp1->next!=NULL || sp2->next!=NULL )
-return( false );
- break;
- }
- sp1 = sp1->next->to; sp2=sp2->next->to;
- if ( sp1==ss1->first || sp2==ss2->first ) {
- if ( sp1!=ss1->first || sp2!=ss2->first )
-return( false );
- break;
- }
- }
- }
-return( ss1==NULL && ss2==NULL );
- } else {
- for ( ss1=fixed->layers[ly_fore].splines,
- ss2=other->layers[ly_fore].splines;
- ss1!=NULL && ss2!=NULL ;
- ss1 = ss1->next, ss2=ss2->next ) {
- for ( sp1=ss1->first, sp2=ss2->first; ; ) {
- if ( sp1->ttfindex!=0xffff )
- sp2->ttfindex = sp1->ttfindex;
- else if ( !RealNear(sp2->me.x,(sp2->nextcp.x+sp2->prevcp.x)/2) ||
- !RealNear(sp2->me.y,(sp2->nextcp.y+sp2->prevcp.y)/2) )
-return( false );
- else
- sp2->ttfindex = 0xffff;
- if ( sp1->nextcpindex!=0xffff )
- sp2->nextcpindex = sp1->nextcpindex;
- else if ( !sp2->nonextcp )
-return( false );
- else
- sp2->nextcpindex = 0xffff;
- if ( sp1->next==NULL || sp2->next==NULL ) {
- if ( sp1->next!=NULL || sp2->next!=NULL )
-return( false );
- break;
- }
- sp1 = sp1->next->to; sp2=sp2->next->to;
- if ( sp1==ss1->first || sp2==ss2->first ) {
- if ( sp1!=ss1->first || sp2!=ss2->first )
-return( false );
- break;
- }
- }
- }
-return( ss1==NULL && ss2==NULL );
- }
-}
-
-int ContourPtNumMatch(MMSet *mm, int gid) {
- SplineFont *sf;
- int i;
-
- if ( !mm->apple )
-return( false );
-
- if ( gid>=mm->normal->glyphcnt )
-return( false );
- if ( !SCWorthOutputting(mm->normal->glyphs[gid] ) ) {
- for ( i=0; i<mm->instance_count; ++i ) {
- if ( gid>=mm->instances[i]->glyphcnt )
-return( false );
- if ( SCWorthOutputting(mm->instances[i]->glyphs[gid]))
-return( false );
- }
-return( true ); /* None is not worth outputting, and that's ok, they match */
- } else {
- for ( i=0; i<mm->instance_count; ++i ) {
- if ( gid>=mm->instances[i]->glyphcnt )
-return( false );
- if ( !SCWorthOutputting(mm->instances[i]->glyphs[gid]))
-return( false );
- }
- /* All are worth outputting */
- }
-
- if ( mm->normal->glyphs[gid]->layers[ly_fore].refs!=NULL && mm->normal->glyphs[gid]->layers[ly_fore].splines!=NULL )
-return( false );
- for ( i=0; i<mm->instance_count; ++i ) {
- if ( mm->instances[i]->glyphs[gid]->layers[ly_fore].refs!=NULL && mm->instances[i]->glyphs[gid]->layers[ly_fore].splines!=NULL )
-return( false );
- }
- if ( mm->normal->glyphs[gid]->layers[ly_fore].refs!=NULL ) {
- RefChar *r;
- int cnt, c;
- for ( r=mm->normal->glyphs[gid]->layers[ly_fore].refs, cnt=0; r!=NULL; r=r->next )
- ++cnt;
- for ( i=0; i<mm->instance_count; ++i ) {
- for ( r=mm->instances[i]->glyphs[gid]->layers[ly_fore].refs, c=0; r!=NULL; r=r->next )
- ++c;
- if ( c!=cnt )
-return( false );
- }
- }
-
- sf = NULL;
- if ( PtNumbersAreSet(mm->normal->glyphs[gid]) )
- sf = mm->normal;
- else {
- for ( i=0; i<mm->instance_count; ++i ) {
- if ( PtNumbersAreSet(mm->instances[i]->glyphs[gid])) {
- sf = mm->instances[i];
- break;
- }
- }
- }
- if ( sf==NULL )
- /* No instance has fixed points. Make sure all fonts are consistent */
-return( AssignPtNumbers(mm,gid));
-
- if ( sf!=mm->normal && !MatchPoints(sf,mm->normal,gid))
-return( false );
- for ( i=0; i<mm->instance_count; ++i ) if ( sf!=mm->instances[i] ) {
- if ( !MatchPoints(sf, mm->instances[i],gid) )
-return( false );
- }
-return( true );
-}
-
-static int SCPointCount(SplineChar *sc) {
- int ptcnt=0;
- RefChar *r;
-
- ptcnt = SSTtfNumberPoints(sc->layers[ly_fore].splines);
- for ( r=sc->layers[ly_fore].refs; r!=NULL ; r=r->next )
- ++ptcnt;
-return( ptcnt );
-}
-
-int16 **SCFindDeltas(MMSet *mm, int gid, int *_ptcnt) {
- /* When figuring out the deltas the first thing we must do is figure */
- /* out each point's number */
- int i, j, k, l, cnt, ptcnt;
- int16 **deltas;
- SplineSet *ss1, *ss2;
- SplinePoint *sp1, *sp2;
- RefChar *r1, *r2;
-
- if ( !ContourPtNumMatch(mm,gid))
-return( NULL );
- if ( !SCWorthOutputting(mm->normal->glyphs[gid]))
-return( NULL );
-
- *_ptcnt = ptcnt = SCPointCount(mm->normal->glyphs[gid])+4;
- deltas = malloc(2*mm->instance_count*sizeof(int16 *));
- for ( i=0; i<2*mm->instance_count; ++i )
- deltas[i] = calloc(ptcnt,sizeof(int16));
- for ( i=0; i<mm->instance_count; ++i ) {
- for ( ss1=mm->normal->glyphs[gid]->layers[ly_fore].splines,
- ss2=mm->instances[i]->glyphs[gid]->layers[ly_fore].splines;
- ss1!=NULL && ss2!=NULL ;
- ss1 = ss1->next, ss2=ss2->next ) {
- for ( sp1=ss1->first, sp2=ss2->first; ; ) {
- if ( sp1->ttfindex!=0xffff ) {
- deltas[2*i][sp1->ttfindex] = rint(sp2->me.x)-rint(sp1->me.x);
- deltas[2*i+1][sp1->ttfindex] = rint(sp2->me.y)-rint(sp1->me.y);
- }
- if ( sp1->nextcpindex != 0xffff ) {
- deltas[2*i][sp1->nextcpindex] = rint(sp2->nextcp.x)-rint(sp1->nextcp.x);
- deltas[2*i+1][sp1->nextcpindex] = rint(sp2->nextcp.y)-rint(sp1->nextcp.y);
- }
- if ( sp1->next==NULL )
- break;
- sp1 = sp1->next->to; sp2 = sp2->next->to;
- if ( sp1==ss1->first )
- break;
- }
- }
- for ( cnt=0,
- r1=mm->normal->glyphs[gid]->layers[ly_fore].refs,
- r2=mm->instances[i]->glyphs[gid]->layers[ly_fore].refs;
- r1!=NULL && r2!=NULL;
- r1=r1->next, r2=r2->next, ++cnt ) {
- deltas[2*i][cnt] = r2->transform[4]-r1->transform[4];
- deltas[2*i+1][cnt] = r2->transform[5]-r1->transform[5];
- }
- /* Phantom points */
- deltas[2*i][ptcnt-4] = 0; deltas[2*i+1][ptcnt-4] = 0; /* lbearing */
- deltas[2*i][ptcnt-3] = mm->instances[i]->glyphs[gid]->width -mm->normal->glyphs[gid]->width;
- deltas[2*i+1][ptcnt-3] = 0; /* horizontal advance */
- deltas[2*i][ptcnt-2] = 0; deltas[2*i+1][ptcnt-2] = 0; /* top bearing */
- deltas[2*i][ptcnt-1] = 0; /* vertical advance */
- deltas[2*i+1][ptcnt-1] = mm->instances[i]->glyphs[gid]->vwidth -mm->normal->glyphs[gid]->vwidth; /* horizontal advance */
- }
-
- /* Ok, each delta now contains the difference between the instance[i] points */
- /* and the base points. But that isn't good enough. We must subtract */
- /* [0,1] and [1,0] from [1,1], and then subtract [1,1,0] [1,0,1] [0,1,1] */
- /* from [1,1,1] and so on (also [-1,0] from [-1,1], etc.) */
- for ( j=1; j<mm->axis_count; ++j ) {
- for ( i=0; i<mm->instance_count; ++i ) {
- for ( k=cnt=0; k<mm->axis_count; ++k )
- if ( mm->positions[i*mm->axis_count+k]!=0 )
- ++cnt;
- if ( cnt==j ) {
- for ( l = 0; l<mm->instance_count; ++l ) if ( l!=i ) {
- for ( k=0; k<mm->axis_count; ++k )
- if ( mm->positions[i*mm->axis_count+k]!=0 &&
- mm->positions[l*mm->axis_count+k]!=mm->positions[i*mm->axis_count+k])
- break;
- if ( k==mm->axis_count ) {
- for ( k=0; k<ptcnt; ++k ) {
- deltas[2*l][k] -= deltas[2*i][k];
- deltas[2*l+1][k] -= deltas[2*i+1][k];
- }
- }
- }
- }
- }
- }
-
- /* If all variants of the glyph are the same, no point in having a gvar */
- /* entry for it */
- for ( i=0 ; i<mm->instance_count; ++i ) {
- for ( j=0; j<ptcnt; ++j )
- if ( deltas[i][j]!=0 )
- break;
- if ( j!=ptcnt )
- break;
- }
- if ( i==mm->instance_count ) {
- /* All zeros */
- for ( i=0 ; i<mm->instance_count; ++i )
- free(deltas[i]);
- free(deltas);
-return( NULL );
- }
-
-return( deltas );
-}
-
-int16 **CvtFindDeltas(MMSet *mm, int *_ptcnt) {
- int i, j, k, l, cnt, ptcnt;
- int16 **deltas;
- struct ttf_table *cvt, *icvt;
- for ( cvt = mm->normal->ttf_tables; cvt!=NULL && cvt->tag!=CHR('c','v','t',' '); cvt=cvt->next );
-
- if ( cvt==NULL )
-return( NULL );
-
- icvt = NULL;
- for ( i=0; i<mm->instance_count; ++i )
- if ( (icvt=mm->instances[i]->ttf_tables)!=NULL )
- break;
- if ( icvt==NULL ) /* No other cvt tables => no variation */
-return( NULL );
-
- *_ptcnt = ptcnt = cvt->len/2;
- deltas = calloc(mm->instance_count,sizeof(int16 *));
- for ( i=0; i<mm->instance_count; ++i ) if ( (icvt=mm->instances[i]->ttf_tables)!=NULL ) {
- deltas[i] = calloc(ptcnt,sizeof(int16));
- for ( j=0; j<ptcnt; ++j )
- deltas[i][j] = memushort(icvt->data,icvt->len, sizeof(uint16)*j)-
- memushort(cvt->data,cvt->len, sizeof(uint16)*j);
- }
-
- /* Ok, each delta now contains the difference between the instance[i] points */
- /* and the base points. But that isn't good enough. We must subtract */
- /* [0,1] and [1,0] from [1,1], and then subtract [1,1,0] [1,0,1] [0,1,1] */
- /* from [1,1,1] and so on (also [-1,0] from [-1,1], etc.) */
- for ( j=1; j<mm->axis_count; ++j ) {
- for ( i=0; i<mm->instance_count; ++i ) if ( deltas[i]!=NULL ) {
- for ( k=cnt=0; k<mm->axis_count; ++k )
- if ( mm->positions[i*mm->axis_count+k]!=0 )
- ++cnt;
- if ( cnt==j ) {
- for ( l = 0; l<mm->instance_count; ++l ) if ( l!=i && deltas[l]!=NULL ) {
- for ( k=0; k<mm->axis_count; ++k )
- if ( mm->positions[i*mm->axis_count+k]!=0 &&
- mm->positions[l*mm->axis_count+k]!=mm->positions[i*mm->axis_count+k])
- break;
- if ( k==mm->axis_count ) {
- for ( k=0; k<ptcnt; ++k )
- deltas[l][k] -= deltas[i][k];
- }
- }
- }
- }
- }
-
- /* If all variants of the cvt are the same, no point in having a gvar */
- /* entry for it */
- for ( i=0 ; i<mm->instance_count; ++i ) if ( deltas[i]!=NULL ) {
- for ( j=0; j<ptcnt; ++j )
- if ( deltas[i][j]!=0 )
- break;
- if ( j==ptcnt ) {
- free(deltas[i]);
- deltas[i] = NULL;
- }
- }
- for ( i=0 ; i<mm->instance_count; ++i )
- if ( deltas[i]!=NULL )
- break;
- if ( i==mm->instance_count ) {
- /* All zeros */
- free(deltas);
-return( NULL );
- }
-
-return( deltas );
-}
-
-static void ttf_dumpcvar(struct alltabs *at, MMSet *mm) {
- int16 **deltas;
- int ptcnt, cnt, pcnt;
- int i,j,rj,big;
- int tuple_size;
- uint32 start, end;
- uint16 *pts;
-
- deltas = CvtFindDeltas(mm,&ptcnt);
- if ( deltas == NULL ) return;
- for ( i=cnt=0; i<mm->instance_count; ++i )
- if ( deltas[i]!=NULL )
- ++cnt;
- if ( cnt==0 ) {
- free(deltas);
-return;
- }
-
- tuple_size = 4+2*mm->axis_count;
- at->cvar = tmpfile2();
- putlong( at->cvar, 0x00010000 ); /* Format */
- putshort( at->cvar, cnt ); /* Number of instances with cvt tables (tuple count of interesting tuples) */
- putshort( at->cvar, 8+cnt*tuple_size ); /* Offset to data */
-
- for ( i=0; i<mm->instance_count; ++i ) if ( deltas[i]!=NULL ) {
- putshort( at->cvar, 0 ); /* tuple data size, figure out later */
- putshort( at->cvar, 0xa000 ); /* tuple coords follow, private points in data */
- for ( j=0; j<mm->axis_count; ++j )
- putshort( at->cvar, rint(16384*mm->positions[i*mm->axis_count+j]) );
- }
- if ( ftell( at->cvar )!=8+cnt*tuple_size )
- IError( "Data offset wrong" );
-
- for ( i=cnt=0; i<mm->instance_count; ++i ) if ( deltas[i]!=NULL ) {
- start = ftell(at->cvar);
- for ( j=pcnt=0; j<ptcnt; ++j )
- if ( deltas[i][j]!=0 )
- ++pcnt;
- pts = malloc(pcnt*sizeof(uint16));
- for ( j=pcnt=0; j<ptcnt; ++j )
- if ( deltas[i][j]!=0 )
- pts[pcnt++]=j;
-
- if ( pcnt>0x7f ) {
- putc(0x80|(pcnt>>8), at->cvar );
- putc(pcnt&0xff, at->cvar);
- } else
- putc(pcnt, at->cvar);
- for ( j=0; j<pcnt; ) {
- big = pts[j]>=0x80 ? 0x80 : 0;
- for ( rj=j+1 ; rj<j+0x80 && rj<pcnt && !big; ++rj )
- if ( pts[rj]-pts[rj-1]>=0x80 )
- big = 0x80;
-
- putc((rj-j-1)|big,at->cvar);
- if ( big ) {
- putshort(at->cvar,pts[j]);
- for ( ++j; j<rj; ++j )
- putshort(at->cvar,pts[j]-pts[j-1]);
- } else {
- putc(pts[j],at->cvar);
- for ( ++j; j<rj; ++j )
- putc(pts[j]-pts[j-1],at->cvar);
- }
- }
- /* Now output the corresponding deltas for those points */
- for ( j=0; j<pcnt; ) {
- if ( deltas[i][j]>0x7f || deltas[i][j]<0x80 ) {
- for ( rj=j+1; rj<j+0x40 && rj<pcnt; ++rj ) {
- if ( deltas[i][pts[rj]]>0x7f || deltas[i][pts[rj]]<0x80 ||
- (rj+1<j+0x40 && rj+1<pcnt && (deltas[i][pts[rj+1]]>0x7f || deltas[i][pts[rj+1]]<0x80)) )
- /* Keep going with a big run */;
- else
- break;
- }
- putc( (rj-j-1)|0x40,at->cvar );
- for ( ; j<rj ; ++j )
- putshort( at->cvar, deltas[i][pts[j]] );
- } else {
- for ( rj=j+1; rj<j+0x40 && rj<pcnt; ++rj ) {
- if ( deltas[i][pts[rj]]>0x7f || deltas[i][pts[rj]]<0x80 )
- break;
- }
- putc( rj-j-1,at->cvar );
- for ( ; j<rj ; ++j )
- putc( deltas[i][pts[j]], at->cvar );
- }
- }
- free(pts);
- end = ftell(at->cvar);
- fseek(at->cvar, 8+cnt*tuple_size, SEEK_SET);
- putshort(at->cvar,end-start);
- fseek(at->cvar, end, SEEK_SET);
- ++cnt;
- }
-
- for ( i=0; i<mm->instance_count; ++i )
- free( deltas[i] );
- free(deltas);
-
- at->cvarlen = ftell(at->cvar);
- if ( at->cvarlen&1 )
- putc('\0',at->cvar );
- if ( ftell(at->cvar)&2 )
- putshort(at->cvar,0);
-}
-
-static void dumpdeltas(struct alltabs *at,int16 *deltas,int ptcnt) {
- int j,rj;
-
- for ( j=0; j<ptcnt; ) {
- for ( rj=j; rj<ptcnt && rj<j+0x40 && deltas[rj]==0; ++rj );
- if ( rj!=j ) {
- putc((rj-j-1)|0x80,at->gvar);
- j = rj;
- continue;
- }
- if ( deltas[j]>0x7f || deltas[j]<0x80 ) {
- for ( rj=j+1; rj<j+0x40 && rj<ptcnt; ++rj ) {
- if ( deltas[rj]>0x7f || deltas[rj]<0x80 ||
- (rj+1<j+0x40 && rj+1<ptcnt && (deltas[rj+1]>0x7f || deltas[rj+1]<0x80)) )
- /* Keep going with a big run */;
- else
- break;
- }
- putc( (rj-j-1)|0x40,at->gvar );
- for ( ; j<rj ; ++j )
- putshort( at->gvar, deltas[j] );
- } else {
- for ( rj=j+1; rj<j+0x40 && rj<ptcnt; ++rj ) {
- if ( deltas[rj]>0x7f || deltas[rj]<0x80 ||
- (deltas[rj]==0 && rj+1<j+0x40 && rj+1<ptcnt &&
- deltas[rj+1]<=0x7f && deltas[rj+1]>=0x80 && deltas[rj+1]!=0 ))
- break;
- }
- putc( rj-j-1,at->gvar );
- for ( ; j<rj ; ++j )
- putc( deltas[j], at->gvar );
- }
- }
-}
-
-static void ttf_dumpgvar(struct alltabs *at, MMSet *mm) {
- int i,j, last;
- uint32 gcoordoff, glyphoffs, start, here, tupledataend, tupledatastart;
- int16 **deltas;
- int ptcnt;
-
- at->gvar = tmpfile2();
- putlong( at->gvar, 0x00010000 ); /* Format */
- putshort( at->gvar, mm->axis_count );
- putshort( at->gvar, mm->instance_count ); /* Number of global tuples */
- gcoordoff = ftell(at->gvar);
- putlong( at->gvar, 0 ); /* Offset to global tuples, fix later */
- putshort( at->gvar,at->maxp.numGlyphs );
- putshort( at->gvar, 1 ); /* always output 32bit offsets */
- putlong( at->gvar, ftell(at->gvar)+4 + (at->maxp.numGlyphs+1)*4);
- glyphoffs = ftell(at->gvar);
- for ( i=0; i<=at->maxp.numGlyphs; ++i )
- putlong( at->gvar,0 );
-
- start = ftell( at->gvar );
- last = -1;
- for ( i=0; i<at->gi.gcnt; ++i ) if ( at->gi.bygid[i]!=-1 ) {
- deltas = SCFindDeltas(mm,at->gi.bygid[i],&ptcnt);
- if ( deltas==NULL )
- continue;
- here = ftell(at->gvar);
- fseek(at->gvar,glyphoffs+(last+1)*4,SEEK_SET);
- for ( ; last< i; ++last )
- putlong(at->gvar,here-start);
- fseek(at->gvar,here,SEEK_SET);
- putshort(at->gvar,mm->instance_count);
- putshort(at->gvar,4+4*mm->instance_count); /* offset to data */
- for ( j=0; j<mm->instance_count; ++j ) {
- putshort(at->gvar,0); /* tuple data size, fix later */
- putshort(at->gvar,0x2000|j); /* private points, tuple i */
- }
- for ( j=0; j<mm->instance_count; ++j ) {
- tupledatastart = ftell(at->gvar);
- putc('\0',at->gvar); /* Point list, all points */
- dumpdeltas(at,deltas[2*j],ptcnt);
- dumpdeltas(at,deltas[2*j+1],ptcnt);
- tupledataend = ftell(at->gvar);
- fseek(at->gvar,here+4+4*j,SEEK_SET);
- putshort( at->gvar,tupledataend-tupledatastart);
- fseek(at->gvar,tupledataend,SEEK_SET);
- free(deltas[2*j]); free(deltas[2*j+1]);
- }
- free(deltas);
- }
- here = ftell(at->gvar);
- fseek(at->gvar,glyphoffs+(last+1)*4,SEEK_SET);
- for ( ; last< at->maxp.numGlyphs; ++last )
- putlong(at->gvar,here-start);
- fseek(at->gvar,gcoordoff,SEEK_SET);
- putlong(at->gvar,here);
- fseek(at->gvar,here,SEEK_SET);
- for ( j=0; j<mm->instance_count; ++j ) {
- for ( i=0; i<mm->axis_count; ++i )
- putshort(at->gvar,rint(16384*mm->positions[j*mm->axis_count+i]));
- }
-
- at->gvarlen = ftell(at->gvar);
- if ( at->gvarlen&1 )
- putc('\0',at->gvar );
- if ( ftell(at->gvar)&2 )
- putshort(at->gvar,0);
-}
-
-
-static void ttf_dumpavar(struct alltabs *at, MMSet *mm) {
- int i,j;
-
- for ( i=0; i<mm->axis_count; ++i ) {
- if ( mm->axismaps[i].points>3 )
- break;
- }
- if ( i==mm->axis_count ) /* We only have simple axes */
-return; /* No need for a variation table */
-
- at->avar = tmpfile2();
- putlong( at->avar, 0x00010000 ); /* Format */
- putlong( at->avar, mm->axis_count );
- for ( i=0; i<mm->axis_count; ++i ) {
- putshort( at->avar, mm->axismaps[i].points );
- for ( j=0; j<mm->axismaps[i].points; ++j ) {
- if ( mm->axismaps[i].designs[j]<mm->axismaps[i].def )
- putshort( at->avar, (mm->axismaps[i].designs[j]-mm->axismaps[i].def)*16384/
- (mm->axismaps[i].def-mm->axismaps[i].min));
- else
- putshort( at->avar, (mm->axismaps[i].designs[j]-mm->axismaps[i].def)*16384/
- (mm->axismaps[i].max-mm->axismaps[i].def));
- putshort( at->avar, mm->axismaps[i].blends[j]*16384);
- }
- }
-
- at->avarlen = ftell(at->avar);
- if ( at->avarlen&2 )
- putshort(at->avar,0);
-}
-
-static uint32 AxisNameToTag(char *name) {
- char buf[4];
- int i;
-
- if ( strmatch(name,"Weight")==0 )
-return( CHR('w','g','h','t'));
- if ( strmatch(name,"Width")==0 )
-return( CHR('w','d','t','h'));
- if ( strmatch(name,"OpticalSize")==0 )
-return( CHR('o','p','s','z'));
- if ( strmatch(name,"Slant")==0 )
-return( CHR('s','l','n','t'));
-
- memset(buf,0,sizeof(buf));
- for ( i=0; i<4 && name[i]!='\0'; ++i )
- buf[i] = name[i];
-return( CHR(buf[0],buf[1],buf[2],buf[3]));
-}
-
-static int AllocateStrId(struct alltabs *at,struct macname *mn) {
- struct other_names *on;
-
- if ( mn==NULL )
-return( 0 );
-
- on = chunkalloc(sizeof(struct other_names));
- on->strid = at->next_strid++;
- on->mn = mn;
- on->next = at->other_names;
- at->other_names = on;
-return( on->strid );
-}
-
-static void ttf_dumpfvar(struct alltabs *at, MMSet *mm) {
- int i,j;
-
- at->fvar = tmpfile2();
- putlong( at->fvar, 0x00010000 ); /* Format */
- putshort( at->fvar, 16 ); /* Offset to first axis data */
- putshort( at->fvar, 2 ); /* Size count pairs */
- putshort( at->fvar, mm->axis_count );
- putshort( at->fvar, 20 ); /* Size of each axis record */
- putshort( at->fvar, mm->named_instance_count );
- putshort( at->fvar, 4+4*mm->axis_count );
-
- /* For each axis ... */
- for ( i=0; i<mm->axis_count; ++i ) {
- putlong( at->fvar, AxisNameToTag(mm->axes[i]) );
- putlong( at->fvar, rint(mm->axismaps[i].min*65536));
- putlong( at->fvar, rint(mm->axismaps[i].def*65536));
- putlong( at->fvar, rint(mm->axismaps[i].max*65536));
- putshort(at->fvar, 0 ); /* No flags defined for axes */
- putshort(at->fvar, AllocateStrId(at,mm->axismaps[i].axisnames));
- }
-
- /* For each named font ... */
- for ( i=0; i<mm->named_instance_count; ++i ) {
- putshort(at->fvar, AllocateStrId(at,mm->named_instances[i].names));
- putshort(at->fvar, 0 ); /* No flags here either */
- for ( j=0; j<mm->axis_count; ++j )
- putlong(at->fvar, rint(65536*mm->named_instances[i].coords[j]));
- }
-
- at->fvarlen = ftell(at->fvar);
- if ( at->fvarlen&2 ) /* I don't think this is ever hit */
- putshort(at->fvar,0);
-}
-
-void ttf_dumpvariations(struct alltabs *at, SplineFont *sf) {
- MMSet *mm = sf->mm;
- int i,j;
-
- for ( j=0; j<sf->glyphcnt; ++j ) if ( sf->glyphs[j]!=NULL ) {
- for ( i=0; i<mm->instance_count; ++i ) if ( mm->instances[i]->glyphs[j]!=NULL )
- mm->instances[i]->glyphs[j]->ttf_glyph = sf->glyphs[j]->ttf_glyph;
- }
-
- ttf_dumpfvar(at,mm);
- ttf_dumpgvar(at,mm);
- ttf_dumpcvar(at,mm);
- ttf_dumpavar(at,mm);
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/ttf.h b/dviware/dvisvgm/libs/ff-woff/fontforge/ttf.h
deleted file mode 100644
index db19f5dc86..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/ttf.h
+++ /dev/null
@@ -1,871 +0,0 @@
-/* Copyright (C) 2001-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "psfont.h" /* for struct fddata */
-
-#define MAC_DELETED_GLYPH_NAME "<Delete>"
-
-struct taxis {
- uint32 tag;
- real min, def, max; /* in user design space */
- int nameid;
- int paircount;
- real *mapfrom; /* after conversion from [-1,1] */
- real *mapto; /* secondary conversiont to [-1,1] */
-};
-
-struct tinstance {
- int nameid;
- real *coords; /* Location along axes array[axis_count] */
-};
-
-struct tuples {
- real *coords; /* Location along axes array[axis_count] */
- SplineChar **chars; /* Varied glyphs, array parallels one in info */
- struct ttf_table *cvt;
- KernClass *khead, *klast, *vkhead, *vklast; /* Varied kern classes */
-};
-
-struct variations {
- int axis_count;
- struct taxis *axes; /* Array of axis_count entries */
- int instance_count; /* Not master designs, but named interpolations in design space */
- struct tinstance *instances;
- int tuple_count;
- struct tuples *tuples;
-};
-
-enum gsub_inusetype { git_normal, git_justinuse, git_findnames };
-
-struct macidname {
- int id;
- struct macname *head, *last;
- struct macidname *next;
-};
-
-struct savetab {
- uint32 tag;
- uint32 offset;
- int len;
-};
-
-struct ttfinfo {
- int emsize; /* ascent + descent? from the head table */
- int ascent, descent; /* from the hhea table */
- /* not the usWinAscent from the OS/2 table */
- int vertical_origin; /* if vmetrics are present */
- int width_cnt; /* from the hhea table, in the hmtx table */
- int glyph_cnt; /* from maxp table (or cff table) */
- unsigned int index_to_loc_is_long:1; /* in head table */
- unsigned int is_ttc:1; /* Is it a font collection? */
- unsigned int is_onebyte:1; /* Is it a one byte encoding? */
- unsigned int twobytesymbol:1; /* it had a symbol encoding which we converted to unicode */
- unsigned int complainedbeyondglyfend:1; /* Don't complain about this more than once */
- unsigned int extensionrequested:1; /* Only ask once for a copy of a font containing extension subtables */
- unsigned int to_order2:1; /* We are to leave the font as truetype (order2) splines, else convert to ps */
- unsigned int complainedmultname:1; /* Don't complain about this more than once */
- unsigned int strokedfont: 1; /* painttype==2 for otf */
- unsigned int use_typo_metrics: 1;
- unsigned int weight_width_slope_only: 1;
- unsigned int optimized_for_cleartype: 1;
- unsigned int apply_lsb: 1;
- int sfntRevision;
- enum openflags openflags;
- /* Mac fonts platform=0/1, platform specific enc id, roman=0, english is lang code 0 */
- /* iso platform=2, platform specific enc id, latin1=0/2, no language */
- /* microsoft platform=3, platform specific enc id, 1, english is lang code 0x??09 */
- char *copyright; /* from the name table, nameid=0 */
- char *familyname; /* nameid=1 */
- char *fullname; /* nameid=4 */
- char *weight;
- char *version; /* nameid=5 */
- char *fontname; /* postscript font name, nameid=6 */
- char *xuid; /* Only for open type cff fonts */
- int uniqueid;
- real italicAngle; /* from post table */
- int upos, uwidth; /* underline pos, width from post table */
- real strokewidth;
- int fstype;
- struct psdict *private; /* Only for open type cff fonts */
- EncMap *map;
- enum uni_interp uni_interp;
- struct pfminfo pfminfo;
- short os2_version;
- short gasp_version;
- int dupnamestate;
- struct ttflangname *names;
- char *fontcomments, *fontlog;
- char **cvt_names;
- SplineChar **chars; /* from all over, glyf table for contours */
- /* cmap table for encodings */
- /* hmtx table for widths */
- /* post table for names */
- /* Or from CFF table for everything in opentype */
- LayerInfo *layers;
- int layer_cnt;
- BDFFont *bitmaps;
- char *cidregistry, *ordering;
- int supplement;
- real cidfontversion;
- int subfontcnt;
- SplineFont **subfonts;
- char *inuse; /* What glyphs are used by this font in the ttc */
-
- int numtables;
- /* BASE */
- uint32 base_start; /* Offset from sof to start of 'BASE' table */
- /* CFF */
- uint32 cff_start; /* Offset from sof to start of postscript compact font format */
- uint32 cff_length;
- /* cmap */
- uint32 encoding_start; /* Offset from sof to start of encoding table */
- uint32 vs_start; /* Offset within 'cmap' to variant selector table */
- /* gasp */
- uint32 gasp_start;
- /* glyf */
- uint32 glyph_start; /* Offset from sof to start of glyph table */
- uint32 glyph_length;
- /* GDEF */
- uint32 gdef_start; /* Offset from sof to start of GDEF table (glyph class defn, ligature carets) */
- uint32 gdef_length;
- /* GPOS */
- uint32 gpos_start; /* Offset from sof to start of GPOS table */
- uint32 gpos_length;
- /* GSUB */
- uint32 gsub_start; /* Offset from sof to start of GSUB table */
- uint32 gsub_length;
- uint32 g_bounds; /* Filled in with g???_start+g???_length */
- /* EBDT, bdat */
- uint32 bitmapdata_start; /* Offset to start of bitmap data */
- uint32 bitmapdata_length;
- /* EBLT, bloc */
- uint32 bitmaploc_start; /* Offset to start of bitmap locator data */
- uint32 bitmaploc_length;
- /* gvar, etc. */
- uint32 gvar_start, gvar_len;
- uint32 fvar_start, fvar_len;
- uint32 avar_start, avar_len;
- uint32 cvar_start, cvar_len;
- /* head */
- uint32 head_start;
- /* hhea */
- uint32 hhea_start;
- /* hmtx */
- uint32 hmetrics_start;
- /* JSTF */
- uint32 jstf_start;
- uint32 jstf_length;
- /* kern */
- uint32 kern_start;
- /* loca */
- uint32 glyphlocations_start;/* there are glyph_cnt of these, from maxp tab */
- uint32 loca_length; /* actually glypn_cnt is wrong. Use the table length (divided by size) instead */
- /* maxp */
- uint32 maxp_start; /* maximum number of glyphs */
- uint32 maxp_len;
- /* name */
- uint32 copyright_start; /* copyright and fontname */
- /* post */
- uint32 postscript_start; /* names for the glyphs, italic angle, etc. */
- /* OS/2 */
- uint32 os2_start;
- /* TYP1 */
- uint32 typ1_start; /* For Adobe's? Apple's? attempt to stuff a type1 font into an sfnt wrapper */
- uint32 typ1_length;
- /* vhea */
- uint32 vhea_start;
- /* vmtx */
- uint32 vmetrics_start;
- /* VORG */
- uint32 vorg_start;
-
- /* PfEd -- FontForge/PfaEdit specific info */
- uint32 pfed_start;
- /* TeX -- TeX table, also non-standard */
- uint32 tex_start;
- /* BDF -- BDF properties, also non-standard */
- uint32 bdf_start;
- /* FFTM -- FontForge timestamps */
- uint32 fftm_start;
-
- /* Apple Advanced Typography Tables */
- uint32 prop_start;
- uint32 lcar_start;
- uint32 opbd_start;
- uint32 acnt_start;
- uint32 feat_start;
- uint32 mort_start;
- uint32 morx_start;
- uint32 bsln_start;
-
- /* MATH Table */
- uint32 math_start;
- uint32 math_length;
-
- /* Info for instructions */
- uint32 cvt_start, cvt_len;
- uint32 prep_start, prep_len;
- uint32 fpgm_start, fpgm_len;
-
- unsigned int one_of_many: 1; /* A TTCF file, or a opentype font with multiple fonts */
- unsigned int obscomplain: 1; /* We've complained about obsolete format 3 in EBDT table */
- unsigned int cmpcomplain: 1; /* We've complained about compressed format 4 in EBDT */
- unsigned int unkcomplain: 1; /* We've complained about unknown formats in EBDT */
- unsigned int comcomplain: 1; /* We've complained about composit formats in EBDT */
- unsigned int onlystrikes: 1; /* Only read in the bitmaps, not the outlines */
- unsigned int onlyonestrike: 1; /* Only read in one bitmap (strike) */
- unsigned int barecff: 1; /* pay attention to the encoding in the cff file, we won't have a cmap */
- unsigned int wdthcomplain: 1; /* We've complained about advance widths exceding the max */
- unsigned int bbcomplain: 1; /* We've complained about glyphs being outside the bounding box */
- unsigned int gbbcomplain: 1; /* We've complained about points being outside the bounding box */
-
- int platform, specific; /* values of the encoding we chose to use */
-
- int anchor_class_cnt; /* For GPOS */
- int anchor_merge_cnt;
- AnchorClass *ahead, *alast;
-
- KernClass *khead, *klast, *vkhead, *vklast;
-
- OTLookup *gpos_lookups, *gsub_lookups, *cur_lookups;
-
- OTLookup *mort_subs_lookup, *mort_pos_lookup2;
- int mort_r2l, mort_tag_mac, mort_feat, mort_setting, mort_is_nested;
- uint16 *morx_classes;
- uint16 *bsln_values;
-
- int mort_max;
-
- struct ttf_table *tabs;
- FPST *possub;
- ASM *sm;
- MacFeat *features;
- char *chosenname;
- int macstyle;
- int lookup_cnt; /* Max lookup in current GPOS/GSUB table */
- int feature_cnt; /* Max feature in current GPOS/GSUB table */
- struct variations *variations;
- struct macidname *macstrids;
- struct fontdict *fd; /* For reading in Type42 fonts. Glyph names in postscript section must be associated with glyphs in TTF section */
- int savecnt;
- struct savetab *savetab;
- int32 last_size_pos;
- uint16 design_size;
- uint16 fontstyle_id;
- struct otfname *fontstyle_name;
- uint16 design_range_bottom, design_range_top;
- struct texdata texdata;
- int mark_class_cnt;
- char **mark_classes; /* glyph name list */
- char **mark_class_names; /* used within ff (utf8) */
- int mark_set_cnt;
- char **mark_sets; /* glyph name list */
- char **mark_set_names; /* used within ff (utf8) */
- uint8 warned_morx_out_of_bounds_glyph;
- int badgid_cnt, badgid_max; /* Used when parsing apple morx tables*/
- SplineChar **badgids; /* which use out of range glyph IDs as temporary flags */
- long long creationtime; /* seconds since 1970 */
- long long modificationtime;
- int gasp_cnt;
- struct gasp *gasp;
- struct MATH *math;
- /* Set of errors we found when loading the font */
- unsigned int bad_ps_fontname: 1;
- unsigned int bad_glyph_data: 1;
- unsigned int bad_cff: 1;
- unsigned int bad_metrics: 1;
- unsigned int bad_cmap: 1;
- unsigned int bad_embedded_bitmap: 1;
- unsigned int bad_gx: 1;
- unsigned int bad_ot: 1;
- unsigned int bad_os2_version: 1;
- unsigned int bad_sfnt_header: 1;
- Layer guidelines;
- struct Base *horiz_base, *vert_base;
- Justify *justify;
-
- int advanceWidthMax;
- int fbb[4]; /* x,yMin x,yMax*/
- int isFixedPitch;
-
- uint32 jstf_script;
- uint32 jstf_lang;
- int16 jstf_isShrink, jstf_prio, jstf_lcnt;
- struct otffeatname *feat_names;
- enum gsub_inusetype justinuse;
- long ttfFileSize;
-};
-
-struct taboff {
- uint32 tag; /* Table name */
- uint32 checksum;/* for table */
- uint32 offset; /* to start of table in file */
- uint32 length;
- FILE *data;
- uint16 dup_of;
- uint16 orderingval;
-};
-
-#define MAX_TAB 48
-struct tabdir {
- int32 version; /* 0x00010000 */
- uint16 numtab;
- uint16 searchRange; /* (Max power of 2 <= numtab) *16 */
- uint16 entrySel; /* Log2(Max power of 2 <= numtab ) */
- uint16 rangeShift; /* numtab*16 - searchRange */
- struct taboff tabs[MAX_TAB];/* room for all the tables */
- /* Not in any particular order. */
- struct taboff *ordered[MAX_TAB]; /* Ordered the way the tables should be output in file */
- struct taboff *alpha[MAX_TAB]; /* Ordered alphabetically by tag for the ttf header */
-};
-
-struct glyphhead {
- int16 numContours;
- int16 xmin;
- int16 ymin;
- int16 xmax;
- int16 ymax;
-};
-
-struct head {
- int32 version; /* 0x00010000 */
- int32 revision; /* 0 */
- uint32 checksumAdj; /* set to 0, sum entire font, store 0xb1b0afba-sum */
- uint32 magicNum; /* 0x5f0f3cf5 */
- uint16 flags; /* 1 */
- uint16 emunits; /* sf->ascent+sf->descent */
- int32 createtime[2];/* number of seconds since 1904 */
- int32 modtime[2];
- int16 xmin; /* min for entire font */
- int16 ymin;
- int16 xmax;
- int16 ymax;
- uint16 macstyle; /* 1=>Bold, 2=>Italic */
- uint16 lowestreadable; /* size in pixels. Say about 10? */
- int16 dirhint; /* 0=>mixed directional characters, */
- int16 locais32; /* is the location table 32bits or 16, 0=>16, 1=>32 */
- int16 glyphformat; /* 0 */
- uint16 mbz; /* padding */
-};
-
-struct hhead {
- int32 version; /* 0x00010000 */
- int16 ascender; /* sf->ascender */
- int16 descender; /* -sf->descender */
- int16 linegap; /* 0 */
- int16 maxwidth; /* of all characters */
- int16 minlsb; /* How is this different from xmin above? */
- int16 minrsb;
- int16 maxextent; /* How is this different from xmax above? */
- int16 caretSlopeRise;/* Uh... let's say 1? */
- int16 caretSlopeRun;/* Uh... let's say 0 */
- /* not exactly specified, but FontValidator wants this to match italicangle */
- int16 mbz[5];
- int16 metricformat; /* 0 */
- uint16 numMetrics; /* just set to glyph count */
-};
-
-struct kp {
- uint16 left; /* left glyph num */
- uint16 right; /* right glyph num */
- /* table is ordered by these two above treated as uint32 */
- int16 offset; /* kern amount */
-};
-
-struct kern {
- uint16 version; /* 0 */
- uint16 ntab; /* 1, number of subtables */
- /* first (and only) subtable */
- uint16 stversion; /* 0 */
- uint16 length; /* length of subtable beginning at &stversion */
- uint16 coverage; /* 1, (set of flags&format) */
- uint16 nPairs; /* number of kern pairs */
- uint16 searchRange; /* (Max power of 2 <= nPairs) *6 */
- uint16 entrySel; /* Log2(Max power of 2 <= nPairs ) */
- uint16 rangeShift; /* numtab*6 - searchRange */
- struct kp *kerns; /* Array should be nPairs big */
-};
-
-struct maxp {
- int32 version; /* 0x00010000 */
- uint16 numGlyphs;
- uint16 maxPoints; /* max number of points in a simple glyph */
- uint16 maxContours; /* max number of paths in a simple glyph */
- uint16 maxCompositPts;
- uint16 maxCompositCtrs;
- uint16 maxZones; /* 1 */
- uint16 maxTwilightPts; /* 0 */
- uint16 maxStorage; /* 0 */
- uint16 maxFDEFs; /* 0 */
- uint16 maxIDEFs; /* 0 */
- uint16 maxStack; /* 0 */
- uint16 maxglyphInstr;/* 0 */
- uint16 maxnumcomponents; /* Maximum number of refs in any composit */
- uint16 maxcomponentdepth;
- /* Apple docs say: 0 (if no composits), maximum value 1 (one level of composit) */
- /* OpenType docs say: 1 (if no composits), any depth allowed */
-};
-
-struct namerec {
- uint16 platform; /* 3 => MS */
- uint16 specific; /* 1 */
- uint16 language; /* 0x0409 */
- uint16 nameid; /* 0=>copyright, 1=>family, 2=>weight, 4=>fullname */
- /* 5=>version, 6=>postscript name */
- uint16 strlen;
- uint16 stroff;
-};
-
-struct os2 {
- uint16 version; /* 1 */
- int16 avgCharWid; /* average all chars (v3) see v2 definition below */
- uint16 weightClass; /* 100=>thin, 200=>extra-light, 300=>light, 400=>normal, */
- /* 500=>Medium, 600=>semi-bold, 700=>bold, 800=>extra-bold, */
- /* 900=>black */
- uint16 widthClass; /* 75=>condensed, 100, 125=>expanded */
- int16 fstype; /* 0x0008 => allow embedded editing */
- int16 ysubXSize; /* emsize/5 */
- int16 ysubYSize; /* emsize/5 */
- int16 ysubXOff; /* 0 */
- int16 ysubYOff; /* emsize/5 */
- int16 ysupXSize; /* emsize/5 */
- int16 ysupYSize; /* emsize/5 */
- int16 ysupXOff; /* 0 */
- int16 ysupYOff; /* emsize/5 */
- int16 yStrikeoutSize; /* 102/2048 *emsize */
- int16 yStrikeoutPos; /* 530/2048 *emsize */
- int16 sFamilyClass; /* ??? 0 */
- /* high order byte is the "class", low order byte the sub class */
- /* class = 0 => no classification */
- /* class = 1 => old style serifs */
- /* subclass 0, no class; 1 ibm rounded; 2 garalde; 3 venetian; 4 mod venitian; 5 dutch modern; 6 dutch trad; 7 contemporary; 8 caligraphic; 15 misc */
- /* class = 2 => transitional serifs */
- /* subclass 0, no class; 1 drect line; 2 script; 15 misc */
- /* class = 3 => modern serifs */
- /* subclass: 1, italian; 2, script */
- /* class = 4 => clarendon serifs */
- /* subclass: 1, clarendon; 2, modern; 3 trad; 4 newspaper; 5 stub; 6 monotone; 7 typewriter */
- /* class = 5 => slab serifs */
- /* subclass: 1, monotone; 2, humanist; 3 geometric; 4 swiss; 5 typewriter */
- /* class = 7 => freeform serifs */
- /* subclass: 1, modern */
- /* class = 8 => sans serif */
- /* subclass: 1, ibm neogrotesque; 2 humanist; 3 low-x rounded; 4 high-x rounded; 5 neo-grotesque; 6 mod neo-grot; 9 typewriter; 10 matrix */
- /* class = 9 => ornamentals */
- /* subclass: 1, engraver; 2 black letter; 3 decorative; 4 3D */
- /* class = 10 => scripts */
- /* subclass: 1, uncial; 2 brush joined; 3 formal joined; 4 monotone joined; 5 calligraphic; 6 brush unjoined; 7 formal unjoined; 8 monotone unjoined */
- /* class = 12 => symbolic */
- /* subclass: 3 mixed serif; 6 old style serif; 7 neo-grotesque sans; */
- char panose[10]; /* can be set to zero */
- uint32 unicoderange[4];
- /* 1<<0=>ascii, 1<<1 => latin1, 2=>100-17f, 3=>180-24f, 4=>250-2af */
- /* 5=> 2b0-2ff, 6=>300-36f, ... */
- char achVendID[4]; /* can be zero */
- uint16 fsSel; /* 1=> italic, 32=>bold, 64 => regular */
- /* 2=>underscore, 4=>negative, 8->outlined, 16=>strikeout */
- /* version 4 of OS/2 */
- /* 128->don't use win_ascent/descent for line spacing */
- /* 256=>family varies on weight width slope only */
- /* 512=>oblique (as opposed to italic) */
- uint16 firstcharindex; /* minimum unicode encoding */
- uint16 lastcharindex; /* maximum unicode encoding */
- uint16 ascender; /* font ascender height (not ascent) */
- uint16 descender; /* font descender height */
- uint16 linegap; /* 0 */
- uint16 winascent; /* ymax */
- uint16 windescent; /* ymin */
- uint32 ulCodePage[2];
- /* 1<<0 => latin1, 1<<1=>latin2, cyrillic, greek, turkish, hebrew, arabic */
- /* 1<<30 => mac, 1<<31 => symbol */
- /* OTF stuff (version 2 of OS/2) */
- short xHeight;
- short capHeight;
- short defChar;
- short breakChar;
- short maxContext;
- /* V3 of OS/2 has no additional data */
- /* V4 of OS/2 has no additional data */
-
- int v1_avgCharWid; /* 1&2 Weighted average of the lower case letters and space */
- int v3_avgCharWid; /* 3&4 average over all non-zero width glyphs */
-};
-
-struct glyphinfo {
- struct maxp *maxp; /* this one is given to dumpglyphs, rest blank */
- uint32 *loca;
- FILE *glyphs;
- FILE *hmtx;
- int hmtxlen;
- FILE *vmtx;
- int vmtxlen;
- int next_glyph;
- int glyph_len;
- int xmin, ymin, xmax, ymax;
- BlueData bd;
- int strikecnt; /* number of bitmaps to dump */
- int lasthwidth, lastvwidth; /* encoding of last glyph for which we generate a full metrics entry */
- int hfullcnt, vfullcnt;
- int flags;
- int fixed_width;
- int32 *bsizes;
- unsigned int dovariations: 1;
- unsigned int onlybitmaps: 1;
- unsigned int has_instrs: 1;
- unsigned int is_ttf: 1;
- unsigned int ttc_composite_font: 1;
- SplineFont *sf;
- int32 *pointcounts;
- int *bygid; /* glyph list */
- int gcnt;
- int layer;
-};
-
-struct vorg {
- uint16 majorVersion; /* 1 */
- uint16 minorVersion; /* 0 */
- short defaultVertOriginY; /* Y coord of default vertical origin in the design coordinate system */
- uint16 numVertOriginYMetrics; /* exceptions to the above, elements in following array */
-};
-
-struct feat_name {
- int strid;
- struct macname *mn, *smn;
-};
-
-struct other_names {
- int strid;
- struct macname *mn;
- struct other_names *next;
-};
-
-struct alltabs {
- struct tabdir tabdir;
- struct head head;
- struct hhead hhead;
- struct hhead vhead;
- struct maxp maxp;
- struct os2 os2;
- struct vorg vorg;
- FILE *loca;
- int localen;
- FILE *name;
- int namelen;
- FILE *post;
- int postlen;
- FILE *gpos; /* Used instead of kern for opentype (and other glyph positioning) */
- int gposlen;
- FILE *gsub; /* Used for ligatures and other substitutions */
- int gsublen;
- FILE *gdef; /* If we use mark to base we need this to tell the text processor what things are marks (the opentype docs say it is optional. They are wrong) */
- int gdeflen;
- FILE *kern;
- int kernlen;
- FILE *cmap;
- int cmaplen;
- FILE *headf;
- int headlen;
- FILE *hheadf;
- int hheadlen;
- FILE *maxpf;
- int maxplen;
- FILE *os2f;
- int os2len;
- FILE *math;
- int mathlen;
- FILE *base;
- int baselen;
- FILE *jstf;
- int jstflen;
- FILE *cvtf;
- int cvtlen;
- FILE *fpgmf; /* Copied from an original ttf file and dumped out. Never generated */
- int fpgmlen;
- FILE *prepf; /* Copied from an original ttf file and dumped out. Never generated */
- int preplen;
- FILE *vheadf;
- int vheadlen;
- FILE *vorgf;
- int vorglen;
- FILE *gaspf;
- int gasplen;
- FILE *cfff;
- int cfflen;
- FILE *sidf;
- FILE *sidh;
- FILE *charset;
- FILE *encoding;
- FILE *globalsubrs;
- FILE *private;
- FILE *charstrings;
- FILE *fdselect;
- FILE *fdarray;
- FILE *bdat; /* might be EBDT */
- int bdatlen;
- FILE *bloc; /* might be EBLC */
- int bloclen;
- FILE *ebsc;
- int ebsclen;
- FILE *prop;
- int proplen;
- FILE *opbd;
- int opbdlen;
- FILE *acnt;
- int acntlen;
- FILE *lcar;
- int lcarlen;
- FILE *feat;
- int featlen;
- FILE *morx;
- int morxlen;
- FILE *bsln;
- int bslnlen;
- FILE *pfed;
- int pfedlen;
- FILE *tex;
- int texlen;
- FILE *bdf;
- int bdflen;
- FILE *gvar;
- int gvarlen;
- FILE *fvar;
- int fvarlen;
- FILE *cvar;
- int cvarlen;
- FILE *avar;
- int avarlen;
- FILE *fftmf;
- int fftmlen;
- FILE *dsigf;
- int dsiglen;
- FILE *hdmxf;
- int hdmxlen;
- int defwid, nomwid;
- int sidcnt;
- int lenpos;
- int privatelen;
- unsigned int sidlongoffset: 1;
- unsigned int cfflongoffset: 1;
- unsigned int applemode: 1; /* Where apple & ms differ do things apple's way (bitmaps, name table PostScript) */
- unsigned int opentypemode: 1; /* Where apple & ms differ do things opentype's way (bitmaps, name table PostScript) */
- /* If both are set then try to generate both types of tables. Some things can't be fudged though (name table postscript) */
- unsigned int msbitmaps: 1;
- unsigned int applebitmaps: 1;
- unsigned int otbbitmaps: 1;
- unsigned int isotf: 1;
- unsigned int dovariations: 1; /* Output Apple *var tables (for mm fonts) */
- unsigned int error: 1;
- struct glyphinfo gi;
- int isfixed;
- struct fd2data *fds;
- int next_strid;
-
- struct feat_name *feat_name;
- struct other_names *other_names;
- struct macname2 *ordered_feat;
-
- int next_lookup; /* for doing nested lookups in contextual features */
- short *gn_sid;
- enum fontformat format;
- int fontstyle_name_strid; /* For GPOS 'size' */
- SplineFont *sf;
- EncMap *map;
- struct ttf_table *oldcvt;
- unsigned oldcvtlen;
-};
-
-struct subhead { uint16 first, cnt, delta, rangeoff; }; /* a sub header in 8/16 cmap table */
-
-enum touchflags { tf_x=1, tf_y=2, tf_d=4, tf_endcontour=0x80, tf_startcontour=0x40 };
-
-struct ct_branch {
- uint16 classnum;
- struct contexttree *branch;
-};
-
-struct ct_subs {
- struct fpst_rule *rule;
- struct contexttree *branch;/* if the rule ends here this will be null */
- uint16 thisclassnum;
-};
-
-struct contexttree {
- int depth;
- int branch_cnt; /* count of subbranches of this node */
- struct ct_branch *branches;
- struct fpst_rule *ends_here;
- int rule_cnt; /* count of rules which are active here */
- struct ct_subs *rules;
- int pending_pos;
- OTLookup *applymarkedsubs;
- OTLookup *applycursubs;
- uint16 marked_index, cur_index;
- uint8 markme;
- int state, next_state;
- struct contexttree *parent;
-};
-
- /* TrueType Composite glyph flags */
-#define _ARGS_ARE_WORDS 1
-#define _ARGS_ARE_XY 2
-#define _ROUND 4 /* round offsets so componant is on grid */
-#define _SCALE 8
-/* 0x10 is reserved */
-#define _MORE 0x20
-#define _XY_SCALE 0x40
-#define _MATRIX 0x80
-#define _INSTR 0x100
-#define _USE_MY_METRICS 0x200
-#define _OVERLAP_COMPOUND 0x400 /* Used in Apple GX fonts */
- /* Means the components overlap (which? this one and what other?) */
-/* Described in OpenType specs, not by Apple */
-/* amusingly, Apple supports but MS does not */
-/* MS says they support this after Win 2000 */
-#define _SCALED_OFFSETS 0x800 /* Use Apple definition of offset interpretation */
-#define _UNSCALED_OFFSETS 0x1000 /* Use MS definition */
-
-extern int ttfFixupRef(SplineChar **chars,int i);
-extern const char *cffnames[];
-extern const int nStdStrings;
-
- /* Open type Advanced Typography Tables */
-extern void otf_dumpgpos(struct alltabs *at, SplineFont *sf);
-extern void otf_dumpgsub(struct alltabs *at, SplineFont *sf);
-extern void otf_dumpgdef(struct alltabs *at, SplineFont *sf);
-extern void otf_dumpbase(struct alltabs *at, SplineFont *sf);
-extern void otf_dumpjstf(struct alltabs *at, SplineFont *sf);
-extern void otf_dump_dummydsig(struct alltabs *at, SplineFont *sf);
-extern int gdefclass(SplineChar *sc);
-
-extern void ttf_dumpkerns(struct alltabs *at, SplineFont *sf);
-extern void aat_dumplcar(struct alltabs *at, SplineFont *sf);
-extern void aat_dumpmorx(struct alltabs *at, SplineFont *sf);
-extern void aat_dumpopbd(struct alltabs *at, SplineFont *sf);
-extern void aat_dumpprop(struct alltabs *at, SplineFont *sf);
-extern void aat_dumpbsln(struct alltabs *at, SplineFont *sf);
-extern int LookupHasDefault(OTLookup *otl);
-extern int scriptsHaveDefault(struct scriptlanglist *sl);
-extern int FPSTisMacable(SplineFont *sf, FPST *fpst);
-
-extern int OTTagToMacFeature(uint32 tag, int *featureType,int *featureSetting);
-extern uint16 *props_array(SplineFont *sf,struct glyphinfo *gi);
-extern int haslrbounds(SplineChar *sc, PST **left, PST **right);
-extern int16 *PerGlyphDefBaseline(SplineFont *sf,int *def_baseline);
-extern void FigureBaseOffsets(SplineFont *sf,int def_bsln,int offsets[32]);
-
- /* Apple variation tables */
-extern int ContourPtNumMatch(MMSet *mm, int gid);
-extern int16 **SCFindDeltas(MMSet *mm, int gid, int *_ptcnt);
-extern int16 **CvtFindDeltas(MMSet *mm, int *_ptcnt);
-extern void ttf_dumpvariations(struct alltabs *at, SplineFont *sf);
-
-extern struct macsettingname {
- int mac_feature_type;
- int mac_feature_setting;
- uint32 otf_tag;
-} macfeat_otftag[], *user_macfeat_otftag;
-
- /* TrueType instructions */
-extern struct ttf_table *SFFindTable(SplineFont *sf,uint32 tag);
-
-extern int memushort(uint8 *data,int table_len, int offset);
-extern void memputshort(uint8 *data,int offset,uint16 val);
-extern int TTF__getcvtval(SplineFont *sf,int val);
-extern int TTF_getcvtval(SplineFont *sf,int val);
-
-extern int SSAddPoints(SplineSet *ss,int ptcnt,BasePoint *bp, char *flags);
-extern int Macable(SplineFont *sf, OTLookup *otl);
-
- /* Used by both otf and apple */
-extern int LigCaretCnt(SplineChar *sc);
-extern uint16 *ClassesFromNames(SplineFont *sf,char **classnames,int class_cnt,
- int numGlyphs, SplineChar ***glyphs, int apple_kc);
-extern SplineChar **SFGlyphsFromNames(SplineFont *sf,char *names);
-
-
-extern SplineChar **EntryExitDecompose(SplineFont *sf,AnchorClass *ac,
- struct glyphinfo *gi);
-extern void AnchorClassDecompose(SplineFont *sf,AnchorClass *_ac, int classcnt, int *subcnts,
- SplineChar ***marks,SplineChar ***base,
- SplineChar ***lig,SplineChar ***mkmk,
- struct glyphinfo *gi);
-
-extern void cvt_unix_to_1904( long long time, int32 result[2]);
-
-
- /* Non-standard tables */
- /* My PfEd table for FontForge/PfaEdit specific info */
-extern void pfed_dump(struct alltabs *at, SplineFont *sf);
-extern void pfed_read(FILE *ttf,struct ttfinfo *info);
- /* The TeX table, to contain stuff the TeX people want */
-extern void tex_dump(struct alltabs *at, SplineFont *sf);
-extern void tex_read(FILE *ttf,struct ttfinfo *info);
-
-extern void ttf_bdf_read(FILE *ttf,struct ttfinfo *info);
- /* The FFTM table, to some timestamps I'd like */
-extern int ttf_fftm_dump(SplineFont *sf,struct alltabs *at);
-
- /* The MATH table */
-extern void otf_dump_math(struct alltabs *at, SplineFont *sf);
-
-/* Known font parameters for 'TeX ' table (fontdims, spacing params, whatever you want to call them) */
- /* Used by all fonts */
-#define TeX_Slant CHR('S','l','n','t')
-#define TeX_Space CHR('S','p','a','c')
-#define TeX_Stretch CHR('S','t','r','e')
-#define TeX_Shrink CHR('S','h','n','k')
-#define TeX_XHeight CHR('X','H','g','t')
-#define TeX_Quad CHR('Q','u','a','d')
- /* Used by text fonts */
-#define TeX_ExtraSp CHR('E','x','S','p')
- /* Used by all math fonts */
-#define TeX_MathSp CHR('M','t','S','p')
- /* Used by math fonts */
-#define TeX_Num1 CHR('N','u','m','1')
-#define TeX_Num2 CHR('N','u','m','2')
-#define TeX_Num3 CHR('N','u','m','3')
-#define TeX_Denom1 CHR('D','n','m','1')
-#define TeX_Denom2 CHR('D','n','m','2')
-#define TeX_Sup1 CHR('S','u','p','1')
-#define TeX_Sup2 CHR('S','u','p','2')
-#define TeX_Sup3 CHR('S','u','p','3')
-#define TeX_Sub1 CHR('S','u','b','1')
-#define TeX_Sub2 CHR('S','u','b','2')
-#define TeX_SupDrop CHR('S','p','D','p')
-#define TeX_SubDrop CHR('S','b','D','p')
-#define TeX_Delim1 CHR('D','l','m','1')
-#define TeX_Delim2 CHR('D','l','m','2')
-#define TeX_AxisHeight CHR('A','x','H','t')
- /* Used by math extension fonts */
-#define TeX_DefRuleThick CHR('R','l','T','k')
-#define TeX_BigOpSpace1 CHR('B','O','S','1')
-#define TeX_BigOpSpace2 CHR('B','O','S','2')
-#define TeX_BigOpSpace3 CHR('B','O','S','3')
-#define TeX_BigOpSpace4 CHR('B','O','S','4')
-#define TeX_BigOpSpace5 CHR('B','O','S','5')
-
-extern void SFDummyUpCIDs(struct glyphinfo *gi,SplineFont *sf);
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/ttfinstrs.c b/dviware/dvisvgm/libs/ff-woff/fontforge/ttfinstrs.c
deleted file mode 100644
index 727ac28538..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/ttfinstrs.c
+++ /dev/null
@@ -1,473 +0,0 @@
-/* Copyright (C) 2001-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforgevw.h"
-#include <utype.h>
-#include "ttf.h"
-#include "ttfinstrs.h"
-
-const char *ff_ttf_instrnames[] = {
- "SVTCA[y-axis]",
- "SVTCA[x-axis]",
- "SPVTCA[y-axis]",
- "SPVTCA[x-axis]",
- "SFVTCA[y-axis]",
- "SFVTCA[x-axis]",
- "SPVTL[parallel]",
- "SPVTL[orthog]",
- "SFVTL[parallel]",
- "SFVTL[orthog]",
- "SPVFS",
- "SFVFS",
- "GPV",
- "GFV",
- "SFVTPV",
- "ISECT",
- "SRP0",
- "SRP1",
- "SRP2",
- "SZP0",
- "SZP1",
- "SZP2",
- "SZPS",
- "SLOOP",
- "RTG",
- "RTHG",
- "SMD",
- "ELSE",
- "JMPR",
- "SCVTCI",
- "SSWCI",
- "SSW",
- "DUP",
- "POP",
- "CLEAR",
- "SWAP",
- "DEPTH",
- "CINDEX",
- "MINDEX",
- "ALIGNPTS",
- "Unknown28",
- "UTP",
- "LOOPCALL",
- "CALL",
- "FDEF",
- "ENDF",
- "MDAP[no-rnd]",
- "MDAP[rnd]",
- "IUP[y]",
- "IUP[x]",
- "SHP[rp2]",
- "SHP[rp1]",
- "SHC[rp2]",
- "SHC[rp1]",
- "SHZ[rp2]",
- "SHZ[rp1]",
- "SHPIX",
- "IP",
- "MSIRP[no-rp0]",
- "MSIRP[rp0]",
- "ALIGNRP",
- "RTDG",
- "MIAP[no-rnd]",
- "MIAP[rnd]",
- "NPUSHB",
- "NPUSHW",
- "WS",
- "RS",
- "WCVTP",
- "RCVT",
- "GC[cur]",
- "GC[orig]",
- "SCFS",
- "MD[grid]",
- "MD[orig]",
- "MPPEM",
- "MPS",
- "FLIPON",
- "FLIPOFF",
- "DEBUG",
- "LT",
- "LTEQ",
- "GT",
- "GTEQ",
- "EQ",
- "NEQ",
- "ODD",
- "EVEN",
- "IF",
- "EIF",
- "AND",
- "OR",
- "NOT",
- "DELTAP1",
- "SDB",
- "SDS",
- "ADD",
- "SUB",
- "DIV",
- "MUL",
- "ABS",
- "NEG",
- "FLOOR",
- "CEILING",
- "ROUND[Grey]",
- "ROUND[Black]",
- "ROUND[White]",
- "ROUND[Undef4]",
- "NROUND[Grey]",
- "NROUND[Black]",
- "NROUND[White]",
- "NROUND[Undef4]",
- "WCVTF",
- "DELTAP2",
- "DELTAP3",
- "DELTAC1",
- "DELTAC2",
- "DELTAC3",
- "SROUND",
- "S45ROUND",
- "JROT",
- "JROF",
- "ROFF",
- "Unknown7B",
- "RUTG",
- "RDTG",
- "SANGW",
- "AA",
- "FLIPPT",
- "FLIPRGON",
- "FLIPRGOFF",
- "Unknown83",
- "Unknown84",
- "SCANCTRL",
- "SDPVTL[parallel]",
- "SDPVTL[orthog]",
- "GETINFO",
- "IDEF",
- "ROLL",
- "MAX",
- "MIN",
- "SCANTYPE",
- "INSTCTRL",
- "Unknown8F",
- "Unknown90",
- "Unknown91",
- "Unknown92",
- "Unknown93",
- "Unknown94",
- "Unknown95",
- "Unknown96",
- "Unknown97",
- "Unknown98",
- "Unknown99",
- "Unknown9A",
- "Unknown9B",
- "Unknown9C",
- "Unknown9D",
- "Unknown9E",
- "Unknown9F",
- "UnknownA0",
- "UnknownA1",
- "UnknownA2",
- "UnknownA3",
- "UnknownA4",
- "UnknownA5",
- "UnknownA6",
- "UnknownA7",
- "UnknownA8",
- "UnknownA9",
- "UnknownAA",
- "UnknownAB",
- "UnknownAC",
- "UnknownAD",
- "UnknownAE",
- "UnknownAF",
- "PUSHB_1",
- "PUSHB_2",
- "PUSHB_3",
- "PUSHB_4",
- "PUSHB_5",
- "PUSHB_6",
- "PUSHB_7",
- "PUSHB_8",
- "PUSHW_1",
- "PUSHW_2",
- "PUSHW_3",
- "PUSHW_4",
- "PUSHW_5",
- "PUSHW_6",
- "PUSHW_7",
- "PUSHW_8",
- "MDRP[grey]",
- "MDRP[black]",
- "MDRP[white]",
- "MDRP03",
- "MDRP[rnd,grey]",
- "MDRP[rnd,black]",
- "MDRP[rnd,white]",
- "MDRP07",
- "MDRP[min,grey]",
- "MDRP[min,black]",
- "MDRP[min,white]",
- "MDRP0b",
- "MDRP[min,rnd,grey]",
- "MDRP[min,rnd,black]",
- "MDRP[min,rnd,white]",
- "MDRP0f",
- "MDRP[rp0,grey]",
- "MDRP[rp0,black]",
- "MDRP[rp0,white]",
- "MDRP13",
- "MDRP[rp0,rnd,grey]",
- "MDRP[rp0,rnd,black]",
- "MDRP[rp0,rnd,white]",
- "MDRP17",
- "MDRP[rp0,min,grey]",
- "MDRP[rp0,min,black]",
- "MDRP[rp0,min,white]",
- "MDRP1b",
- "MDRP[rp0,min,rnd,grey]",
- "MDRP[rp0,min,rnd,black]",
- "MDRP[rp0,min,rnd,white]",
- "MDRP1f",
- "MIRP[grey]",
- "MIRP[black]",
- "MIRP[white]",
- "MIRP03",
- "MIRP[rnd,grey]",
- "MIRP[rnd,black]",
- "MIRP[rnd,white]",
- "MIRP07",
- "MIRP[min,grey]",
- "MIRP[min,black]",
- "MIRP[min,white]",
- "MIRP0b",
- "MIRP[min,rnd,grey]",
- "MIRP[min,rnd,black]",
- "MIRP[min,rnd,white]",
- "MIRP0f",
- "MIRP[rp0,grey]",
- "MIRP[rp0,black]",
- "MIRP[rp0,white]",
- "MIRP13",
- "MIRP[rp0,rnd,grey]",
- "MIRP[rp0,rnd,black]",
- "MIRP[rp0,rnd,white]",
- "MIRP17",
- "MIRP[rp0,min,grey]",
- "MIRP[rp0,min,black]",
- "MIRP[rp0,min,white]",
- "MIRP1b",
- "MIRP[rp0,min,rnd,grey]",
- "MIRP[rp0,min,rnd,black]",
- "MIRP[rp0,min,rnd,white]",
- "MIRP1f"
-};
-
-enum byte_types { bt_instr, bt_cnt, bt_byte, bt_wordhi, bt_wordlo, bt_impliedreturn };
-
-
-uint8 *_IVParse(SplineFont *sf, char *text, int *len,
- void (*IVError)(void *,char *, int), void *iv) {
- short numberstack[256];
- int npos=0, nread, i;
- int push_left= 0, push_size=0;
- char *pt;
- char *end, *bend, *brack;
- int icnt=0, imax=strlen(text)/2, val, temp;
- uint8 *instrs = malloc(imax);
-
- for ( pt = text; *pt ; ++pt ) {
- npos = 0;
- while ( npos<256 ) {
- while ( *pt==' ' || *pt=='\t' ) ++pt;
- if ( isdigit( *pt ) || *pt=='-' ) {
- val = strtol(pt,&end,0);
- if ( val>32767 || val<-32768 ) {
- IVError(iv,_("A value must be between [-32768,32767]"),pt-text);
-return( NULL );
- }
-
- pt = end;
-
- if ( *pt == '@' ) { /* a delta control byte */
- if ( val>8 || val<-8 || val==0 ) {
- IVError(iv,_("A value must be between [-8,-1] or [1,8]"),pt-text);
-return( NULL );
- }
-
- pt++;
-
- if ( !isdigit( *pt ) ) {
- IVError(iv,_("Number expected"),pt-text);
-return( NULL );
- }
-
- temp = val;
- val = strtol(pt,&end,0);
-
- if ( val>15 || val<0 ) {
- IVError(iv,_("A value must be between [0,15]"),pt-text);
-return( NULL );
- }
-
- val *= 16;
- if (temp < 0) temp += 8;
- else temp += 7;
- val += temp;
- pt = end;
- }
-
- numberstack[npos++] = val;
- } else if ( strnmatch(pt,"cvt",3)==0 ) {
- pt += 3;
- while ( *pt==' ' || *pt=='\t' ) ++pt;
- if ( *pt!='(' ) {
- IVError(iv,_("Missing left parenthesis in command to get a cvt index"),pt-text);
-return( NULL );
- }
- temp = strtol(pt+1,&end,0);
- pt = end;
- while ( *pt==' ' || *pt=='\t' ) ++pt;
- if ( *pt!=')' ) {
- IVError(iv,_("Missing right paren in command to get a cvt index"),pt-text);
-return( NULL );
- }
- numberstack[npos++] = TTF__getcvtval(sf,temp);
- ++pt;
- } else
- break;
- }
- while ( *pt==' ' || *pt=='\t' ) ++pt;
- if ( npos==0 && (*pt=='\r' || *pt=='\n' || *pt=='\0') )
- continue;
- nread = 0;
- if ( push_left==-1 ) {
- /* we need a push count */
- if ( npos==0 )
- IVError(iv,_("Expected a number for a push count"),pt-text);
- else if ( numberstack[0]>255 || numberstack[0]<=0 ) {
- IVError(iv,_("The push count must be a number between 0 and 255"),pt-text);
-return( NULL );
- } else {
- nread = 1;
- instrs[icnt++] = numberstack[0];
- push_left = numberstack[0];
- }
- }
- if ( push_left!=0 && push_left<npos-nread && (*pt=='\r' || *pt=='\n' || *pt=='\0') ) {
- IVError(iv,_("More pushes specified than needed"),pt-text);
-return( NULL );
- }
- while ( push_left>0 && nread<npos ) {
- if ( push_size==2 ) {
- instrs[icnt++] = numberstack[nread]>>8;
- instrs[icnt++] = numberstack[nread++]&0xff;
- } else if ( numberstack[0]>255 || numberstack[0]<0 ) {
- IVError(iv,_("A value to be pushed by a byte push must be between 0 and 255"),pt-text);
-return( NULL );
- } else
- instrs[icnt++] = numberstack[nread++];
- --push_left;
- }
- if ( nread<npos && push_left==0 && (*pt=='\r' || *pt=='\n' || *pt=='\0')) {
- IVError(iv,_("Unexpected number"),pt-text);
-return( NULL );
- }
- if ( *pt=='\r' || *pt=='\n' || *pt=='\0' )
- continue;
- if ( push_left>0 ) {
- IVError(iv,_("Missing pushes"),pt-text);
-return( NULL );
- }
- while ( nread<npos ) {
- i = nread;
- if ( numberstack[nread]>=0 && numberstack[nread]<=255 ) {
- while ( i<npos && numberstack[i]>=0 && numberstack[i]<=255 )
- ++i;
- if ( i-nread<=8 )
- instrs[icnt++] = ttf_pushb+(i-nread)-1;
- else {
- instrs[icnt++] = ttf_npushb;
- instrs[icnt++] = i-nread;
- }
- while ( nread<i )
- instrs[icnt++] = numberstack[nread++];
- } else {
- while ( i<npos && (numberstack[i]<0 || numberstack[i]>255) )
- ++i;
- if ( i-nread<=8 )
- instrs[icnt++] = ttf_pushw+(i-nread)-1;
- else {
- instrs[icnt++] = ttf_npushw;
- instrs[icnt++] = i-nread;
- }
- while ( nread<i ) {
- instrs[icnt++] = numberstack[nread]>>8;
- instrs[icnt++] = numberstack[nread++]&0xff;
- }
- }
- }
- brack = NULL;
- for ( end= pt; *end!='\r' && *end!='\n' && *end!=' ' && *end!='\0'; ++end )
- if ( *end=='[' || *end=='_' ) brack=end;
- for ( i=0; i<256; ++i )
- if ( strnmatch(pt,ff_ttf_instrnames[i],end-pt)==0 && end-pt==strlen(ff_ttf_instrnames[i]))
- break;
- if ( i==256 && brack!=NULL ) {
- for ( i=0; i<256; ++i )
- if ( strnmatch(pt,ff_ttf_instrnames[i],brack-pt+1)==0 )
- break;
- val = strtol(brack+1,&bend,2); /* Stuff in brackets should be in binary */
- while ( *bend==' ' || *bend=='\t' ) ++bend;
- if ( *bend!=']' ) {
- IVError(iv,_("Missing right bracket in command (or bad binary value in bracket)"),pt-text);
-return( NULL );
- }
- if ( val>=32 ) {
- IVError(iv,_("Bracketted value is too large"),pt-text);
-return( NULL );
- }
- i += val;
- }
- pt = end;
- instrs[icnt++] = i;
- if ( i==ttf_npushb || i==ttf_npushw || (i>=ttf_pushb && i<=ttf_pushw+7)) {
- push_size = (i==ttf_npushb || (i>=ttf_pushb && i<=ttf_pushb+7))? 1 : 2;
- if ( i==ttf_npushb || i==ttf_npushw )
- push_left = -1;
- else if ( i>=ttf_pushb && i<=ttf_pushb+7 )
- push_left = i-ttf_pushb+1;
- else
- push_left = i-ttf_pushw+1;
- }
- if ( *pt=='\0' )
- break;
- }
- *len = icnt;
-return( realloc(instrs,icnt==0?1:icnt)); /* some versions of realloc abort on 0 */
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/ttfinstrs.h b/dviware/dvisvgm/libs/ff-woff/fontforge/ttfinstrs.h
deleted file mode 100644
index 9f52eb9fde..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/ttfinstrs.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright (C) 2001-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-enum ttf_instructions {
- ttf_npushb=0x40, ttf_npushw=0x41, ttf_pushb=0xb0, ttf_pushw=0xb8,
- ttf_aa=0x7f, ttf_abs=0x64, ttf_add=0x60, ttf_alignpts=0x27, ttf_alignrp=0x3c,
- ttf_and=0x5a, ttf_call=0x2b, ttf_ceiling=0x67, ttf_cindex=0x25, ttf_clear=0x22,
- ttf_debug=0x4f, ttf_deltac1=0x73, ttf_deltac2=0x74, ttf_deltac3=0x75,
- ttf_deltap1=0x5d, ttf_deltap2=0x71, ttf_deltap3=0x72, ttf_depth=0x24,
- ttf_div=0x62, ttf_dup=0x20, ttf_eif=0x59, ttf_else=0x1b, ttf_endf=0x2d,
- ttf_eq=0x54, ttf_even=0x57, ttf_fdef=0x2c, ttf_flipoff=0x4e, ttf_flipon=0x4d,
- ttf_flippt=0x80, ttf_fliprgoff=0x82, ttf_fliprgon=0x81, ttf_floor=0x66,
- ttf_gc=0x46, ttf_getinfo=0x88, ttf_gfv=0x0d, ttf_gpv=0x0c, ttf_gt=0x52,
- ttf_gteq=0x53, ttf_idef=0x89, ttf_if=0x58, ttf_instctrl=0x8e, ttf_ip=0x39,
- ttf_isect=0x0f, ttf_iup=0x30, ttf_jmpr=0x1c, ttf_jrof=0x79, ttf_jrot=0x78,
- ttf_loopcall=0x2a, ttf_lt=0x50, ttf_lteq=0x51, ttf_max=0x8b, ttf_md=0x49,
- ttf_mdap=0x2e, ttf_mdrp=0xc0, ttf_miap=0x3e, ttf_min=0x8c, ttf_mindex=0x26,
- ttf_mirp=0xe0, ttf_mppem=0x4b, ttf_mps=0x4c, ttf_msirp=0x3a, ttf_mul=0x63,
- ttf_neg=0x65, ttf_neq=0x55, ttf_not=0x5c, ttf_nround=0x6c, ttf_odd=0x56,
- ttf_or=0x5b, ttf_pop=0x21, ttf_rcvt=0x45, ttf_rdtg=0x7d, ttf_roff=0x7a,
- ttf_roll=0x8a, ttf_round=0x68, ttf_rs=0x43, ttf_rtdg=0x3d, ttf_rtg=0x18,
- ttf_rthg=0x19, ttf_rutg=0x7c, ttf_s45round=0x77, ttf_sangw=0x7e,
- ttf_scanctrl=0x85, ttf_scantype=0x8d, ttf_scfs=0x48, ttf_scvtci=0x1d,
- ttf_sdb=0x5e, ttf_sdpvtl=0x86, ttf_sds=0x5f, ttf_sfvfs=0x0b, ttf_sfvtca=0x04,
- ttf_sfvtl=0x08, ttf_sfvtpv=0x0e, ttf_shc=0x34, ttf_shp=0x32, ttf_shpix=0x38,
- ttf_shz=0x36, ttf_sloop=0x17, ttf_smd=0x1a, ttf_spvfs=0x0a, ttf_spvtca=0x02,
- ttf_spvtl=0x06, ttf_sround=0x76, ttf_srp0=0x10, ttf_srp1=0x11, ttf_srp2=0x12,
- ttf_ssw=0x1f, ttf_sswci=0x1e, ttf_sub=0x61, ttf_svtca=0x00, ttf_swap=0x23,
- ttf_szp0=0x13, ttf_szp1=0x14, ttf_szp2=0x15, ttf_szps=0x16, ttf_utp=0x29,
- ttf_wcvtf=0x70, ttf_wcvtp=0x44, ttf_ws=0x42
-};
-
-extern const char *ff_ttf_instrnames[];
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/ttfspecial.c b/dviware/dvisvgm/libs/ff-woff/fontforge/ttfspecial.c
deleted file mode 100644
index 24bd2d5e05..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/ttfspecial.c
+++ /dev/null
@@ -1,2095 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include "fontforge.h"
-#include <math.h>
-#include <gimage.h> /* For COLOR_DEFAULT */
-
-#include "ttf.h"
-
-/* This file contains routines to generate non-standard true/opentype tables */
-/* The first is the 'PfEd' table containing PfaEdit specific information */
-/* glyph comments & colours ... perhaps other info later */
-
-/* ************************************************************************** */
-/* ************************* The 'PfEd' table ************************* */
-/* ************************* Output ************************* */
-/* ************************************************************************** */
-
-#include "PfEd.h" /* This describes the format of the 'PfEd' table */
- /* and its many subtables. */
-
-#define MAX_SUBTABLE_TYPES 20
-
-struct PfEd_subtabs {
- int next;
- struct {
- FILE *data;
- uint32 tag;
- uint32 offset;
- } subtabs[MAX_SUBTABLE_TYPES];
-};
-
-static void PfEd_FontComment(SplineFont *sf, struct PfEd_subtabs *pfed, uint32 tag ) {
- FILE *fcmt;
- char *pt;
- char *text = tag==fcmt_TAG ? sf->comments : sf->fontlog;
-
- if ( text==NULL || *text=='\0' )
-return;
- pfed->subtabs[pfed->next].tag = tag;
- pfed->subtabs[pfed->next++].data = fcmt = tmpfile2();
-
- putshort(fcmt,1); /* sub-table version number */
- putshort(fcmt,strlen(text));
- for ( pt = text; *pt; ++pt )
- putc(*pt,fcmt);
- putshort(fcmt,0);
- if ( ftell(fcmt)&1 ) putc(0,fcmt);
- if ( ftell(fcmt)&2 ) putshort(fcmt,0);
-}
-
-static void PfEd_GlyphComments(SplineFont *sf, struct PfEd_subtabs *pfed,
- struct glyphinfo *gi ) {
- int i, j, k, any, cnt, last, skipped;
- uint32 offset;
- SplineChar *sc, *sc2;
- FILE *cmnt;
-
- any = 0;
- /* We don't need to check in bygid order. We just want to know existance */
- for ( i=0; i<sf->glyphcnt; ++i ) {
- if ( sf->glyphs[i]!=NULL && sf->glyphs[i]->ttf_glyph!=-1 &&
- sf->glyphs[i]->comment!=NULL ) {
- any = true;
- break;
- }
- }
-
- if ( !any )
-return;
-
- pfed->subtabs[pfed->next].tag = cmnt_TAG;
- pfed->subtabs[pfed->next++].data = cmnt = tmpfile2();
-
- putshort(cmnt,1); /* sub-table version number */
- /* Version 0 used ucs2, version 1 uses utf8 */
-
- offset = 0;
- for ( j=0; j<4; ++j ) {
- cnt = 0;
- for ( i=0; i<gi->gcnt; ++i ) if ( gi->bygid[i]!=-1 ) {
- sc=sf->glyphs[gi->bygid[i]];
- if ( sc!=NULL && sc->comment!=NULL ) {
- last = i; skipped = false;
- for ( k=i+1; k<gi->gcnt; ++k ) {
- if ( gi->bygid[k]!=-1 )
- sc2 = sf->glyphs[gi->bygid[k]];
- if ( (gi->bygid[k]==-1 || sc2->comment==NULL) && skipped )
- break;
- if ( gi->bygid[k]!=-1 && sc2->comment!=NULL ) {
- last = k;
- skipped = false;
- } else
- skipped = true;
- }
- ++cnt;
- if ( j==1 ) {
- putshort(cmnt,i);
- putshort(cmnt,last);
- putlong(cmnt,offset);
- offset += sizeof(uint32)*(last-i+2);
- } else if ( j==2 ) {
- for ( ; i<=last; ++i ) {
- if ( gi->bygid[i]==-1 || (sc=sf->glyphs[gi->bygid[i]])->comment==NULL )
- putlong(cmnt,0);
- else {
- putlong(cmnt,offset);
- offset += strlen(sc->comment)+1;
- }
- }
- putlong(cmnt,offset); /* Guard data, to let us calculate the string lengths */
- } else if ( j==3 ) {
- for ( ; i<=last; ++i ) {
- if ( gi->bygid[i]==-1 || (sc=sf->glyphs[gi->bygid[i]])->comment==NULL )
- continue;
- fputs(sc->comment,cmnt);
- putc('\0',cmnt);
- }
- }
- i = last;
- }
- }
- if ( j==0 ) {
- putshort(cmnt,cnt);
- offset = 2*sizeof(short) + cnt*(2*sizeof(short)+sizeof(uint32));
- }
- }
- if ( ftell(cmnt) & 1 )
- putc('\0',cmnt);
- if ( ftell(cmnt) & 2 )
- putshort(cmnt,0);
-}
-
-static void PfEd_CvtComments(SplineFont *sf, struct PfEd_subtabs *pfed ) {
- FILE *cvtcmt;
- int i, offset;
-
- if ( sf->cvt_names==NULL )
-return;
- pfed->subtabs[pfed->next].tag = cvtc_TAG;
- pfed->subtabs[pfed->next++].data = cvtcmt = tmpfile2();
-
- for ( i=0; sf->cvt_names[i]!=END_CVT_NAMES; ++i);
-
- putshort(cvtcmt,0); /* sub-table version number */
- putshort(cvtcmt,i);
- offset = 2*2 + i*2;
- for ( i=0; sf->cvt_names[i]!=END_CVT_NAMES; ++i) {
- if ( sf->cvt_names[i]==NULL )
- putshort(cvtcmt,0);
- else {
- putshort(cvtcmt,offset);
- offset += strlen(sf->cvt_names[i])+1;
- }
- }
- for ( i=0; sf->cvt_names[i]!=END_CVT_NAMES; ++i) {
- if ( sf->cvt_names[i]!=NULL ) {
- fputs(sf->cvt_names[i],cvtcmt);
- putc('\0',cvtcmt);
- }
- }
- if ( ftell(cvtcmt)&1 ) putc(0,cvtcmt);
- if ( ftell(cvtcmt)&2 ) putshort(cvtcmt,0);
-}
-
-static void PfEd_Colours(SplineFont *sf, struct PfEd_subtabs *pfed, struct glyphinfo *gi ) {
- int i, j, k, any, cnt, last;
- SplineChar *sc, *sc2;
- FILE *colr;
-
- any = 0;
- for ( i=0; i<sf->glyphcnt; ++i ) {
- if ( sf->glyphs[i]!=NULL && sf->glyphs[i]->ttf_glyph!=-1 &&
- sf->glyphs[i]->color!=COLOR_DEFAULT ) {
- any = true;
- break;
- }
- }
-
- if ( !any )
-return;
-
- pfed->subtabs[pfed->next].tag = colr_TAG;
- pfed->subtabs[pfed->next++].data = colr = tmpfile2();
-
- putshort(colr,0); /* sub-table version number */
- for ( j=0; j<2; ++j ) {
- cnt = 0;
- for ( i=0; i<gi->gcnt; ++i ) if ( gi->bygid[i]!=-1 ) {
- sc = sf->glyphs[gi->bygid[i]];
- if ( sc!=NULL && sc->color!=COLOR_DEFAULT ) {
- last = i;
- for ( k=i+1; k<gi->gcnt; ++k ) {
- if ( gi->bygid[k]==-1 )
- break;
- sc2 = sf->glyphs[gi->bygid[k]];
- if ( sc2->color != sc->color )
- break;
- last = k;
- }
- ++cnt;
- if ( j==1 ) {
- putshort(colr,i);
- putshort(colr,last);
- putlong(colr,sc->color);
- }
- i = last;
- }
- }
- if ( j==0 )
- putshort(colr,cnt);
- }
- if ( ftell(colr) & 2 )
- putshort(colr,0);
-}
-
-static void PfEd_Lookups(SplineFont *sf, struct PfEd_subtabs *pfed,
- OTLookup *lookups, uint32 tag) {
- OTLookup *otl;
- int lcnt, scnt, ascnt, acnt, s, a;
- FILE *lkf;
- struct lookup_subtable *subs;
- AnchorClass *ac;
- int sub_info, ac_info, name_info;
-
- if ( lookups==NULL )
-return;
- for ( otl=lookups, lcnt=scnt=acnt=ascnt=0; otl!=NULL; otl=otl->next ) if ( !otl->unused ) {
- ++lcnt;
- for ( subs = otl->subtables; subs!=NULL; subs=subs->next ) if ( !subs->unused ) {
- ++scnt;
- if ( subs->anchor_classes ) {
- ++ascnt;
- for ( ac=sf->anchor; ac!=NULL; ac=ac->next )
- if ( ac->subtable==subs && ac->has_base && ac->has_mark )
- ++acnt;
- }
- }
- }
-
- pfed->subtabs[pfed->next].tag = tag;
- pfed->subtabs[pfed->next++].data = lkf = tmpfile2();
-
- putshort(lkf,0); /* Subtable version */
- putshort(lkf,lcnt);
-
- sub_info = 4 + 4*lcnt;
- ac_info = sub_info + 2*lcnt + 4*scnt;
- name_info = ac_info + 2*ascnt + 2*acnt;
- for ( otl=lookups; otl!=NULL; otl=otl->next ) if ( !otl->unused ) {
- putshort(lkf,name_info);
- name_info += strlen(otl->lookup_name)+1;
- putshort(lkf,sub_info);
- for ( subs = otl->subtables, s=0; subs!=NULL; subs=subs->next ) if ( !subs->unused ) ++s;
- sub_info += 2 + 4*s;
- }
- if ( sub_info!=ac_info )
- IError("Lookup name data didn't behave as expected");
- for ( otl=lookups; otl!=NULL; otl=otl->next ) if ( !otl->unused ) {
- for ( subs = otl->subtables, s=0; subs!=NULL; subs=subs->next ) if ( !subs->unused ) ++s;
- putshort(lkf,s); /* Subtable count */
- for ( subs = otl->subtables, s=0; subs!=NULL; subs=subs->next ) if ( !subs->unused ) {
- putshort(lkf,name_info);
- name_info += strlen(subs->subtable_name)+1;
- if ( subs->anchor_classes ) {
- putshort(lkf,ac_info);
- for ( ac=sf->anchor, a=0; ac!=NULL; ac=ac->next )
- if ( ac->subtable==subs && ac->has_base && ac->has_mark )
- ++a;
- ac_info += 2 + 2*a;
- } else
- putshort(lkf,0);
- }
- }
- for ( otl=lookups; otl!=NULL; otl=otl->next ) if ( !otl->unused ) {
- for ( subs = otl->subtables, s=0; subs!=NULL; subs=subs->next ) if ( !subs->unused ) {
- if ( subs->anchor_classes ) {
- for ( ac=sf->anchor, a=0; ac!=NULL; ac=ac->next )
- if ( ac->subtable==subs && ac->has_base && ac->has_mark )
- ++a;
- putshort(lkf,a);
- for ( ac=sf->anchor, a=0; ac!=NULL; ac=ac->next )
- if ( ac->subtable==subs && ac->has_base && ac->has_mark ) {
- putshort(lkf,name_info);
- name_info += strlen(ac->name)+1;
- }
- }
- }
- }
- for ( otl=lookups; otl!=NULL; otl=otl->next ) if ( !otl->unused ) {
- fputs(otl->lookup_name,lkf);
- putc('\0',lkf);
- }
- for ( otl=lookups; otl!=NULL; otl=otl->next ) if ( !otl->unused ) {
- for ( subs = otl->subtables, s=0; subs!=NULL; subs=subs->next ) if ( !subs->unused ) {
- fputs(subs->subtable_name,lkf);
- putc('\0',lkf);
- }
- }
- for ( otl=lookups; otl!=NULL; otl=otl->next ) if ( !otl->unused ) {
- for ( subs = otl->subtables, s=0; subs!=NULL; subs=subs->next ) if ( !subs->unused ) {
- for ( ac=sf->anchor, a=0; ac!=NULL; ac=ac->next )
- if ( ac->subtable==subs && ac->has_base && ac->has_mark ) {
- fputs(ac->name,lkf);
- putc('\0',lkf);
- }
- }
- }
- if ( ftell(lkf) & 1 )
- putc('\0',lkf);
- if ( ftell(lkf) & 2 )
- putshort(lkf,0);
-}
-
-static int pfed_mod_type(float val,int last_mod) {
- float ival;
-
- if ( last_mod==V_F )
-return( V_F );
- ival = rint(val);
- if ( ival!=val || ival<-32768 || ival>32767 )
-return( V_F );
- if ( last_mod==V_S || ival<-128 || ival>127 )
-return( V_S );
-
-return( V_B );
-}
-
-static void pfed_write_data(FILE *ttf, float val, int mod) {
- if ( mod==V_F )
- putlong(ttf,(int) rint(val*256.0f));
- else if ( mod==V_S )
- putshort(ttf,(int) rint(val));
- else
- putc(((int) rint(val)), ttf);
-}
-
-static void pfed_glyph_layer(FILE *layr,Layer *layer, int do_spiro) {
- int contour_cnt, image_cnt, ref_cnt, name_off, i,j;
- SplineSet *ss;
- SplinePoint *sp;
- uint32 base;
- int mod, was_implicit;
- RefChar *ref;
-
- contour_cnt = 0;
- for ( ss=layer->splines; ss!=NULL; ss=ss->next )
- ++contour_cnt;
- image_cnt = 0;
- /* I'm not doing images yet (if ever) but I leave space for them */
- ref_cnt = 0;
- for ( ref=layer->refs; ref!=NULL; ref=ref->next )
- ++ref_cnt;
-
- base = ftell(layr);
- putshort(layr,contour_cnt);
- putshort(layr,ref_cnt);
- putshort(layr,image_cnt);
-
- name_off = 2*3 + 4 * contour_cnt + (4*7+2)* ref_cnt;
- for ( ss=layer->splines; ss!=NULL; ss=ss->next ) {
- putshort(layr,0); /* fill in later */
- if ( ss->contour_name!=NULL ) {
- putshort(layr,name_off);
- name_off += strlen(ss->contour_name)+1;
- } else {
- putshort(layr,0);
- }
- }
- for ( ref=layer->refs; ref!=NULL; ref=ref->next ) {
- for ( j=0; j<6; ++j )
- putlong(layr, (int) rint(ref->transform[j]*32768));
- putshort(layr,ref->sc->ttf_glyph);
- }
- for ( ss=layer->splines; ss!=NULL; ss=ss->next ) {
- if ( ss->contour_name!=NULL ) {
- fputs(ss->contour_name,layr);
- putc('\0',layr);
- }
- }
-
- contour_cnt=0;
- for ( ss=layer->splines; ss!=NULL; ss=ss->next, ++contour_cnt ) {
- uint32 pos = ftell(layr);
- fseek( layr, base + 6 + 4*contour_cnt, SEEK_SET);
- putshort( layr, pos-base);
- fseek( layr, pos, SEEK_SET );
-
- if ( !do_spiro ) {
- sp = ss->first;
- mod = pfed_mod_type(sp->me.x, pfed_mod_type(sp->me.y,V_B));
- putc( (V_MoveTo|mod),layr);
- pfed_write_data(layr,sp->me.x,mod);
- pfed_write_data(layr,sp->me.y,mod);
- was_implicit = false;
-
- while ( sp->next!=NULL ) {
- SplinePoint *nsp = sp->next->to;
- float offx = nsp->me.x - sp->me.x;
- float offy = nsp->me.y - sp->me.y;
- if ( offx==0 && offy==0 )
- /* Do Nothing */;
- else if ( sp->next->knownlinear ) {
- mod = pfed_mod_type(offx, pfed_mod_type(offy,V_B));
- if ( offx==0 ) {
- putc( (V_VLineTo|mod), layr);
- pfed_write_data(layr,offy,mod);
- } else if ( offy==0 ) {
- putc( (V_HLineTo|mod), layr);
- pfed_write_data(layr,offx,mod);
- } else {
- putc( (V_LineTo|mod), layr);
- pfed_write_data(layr,offx,mod);
- pfed_write_data(layr,offy,mod);
- }
- } else if ( sp->next->order2 ) {
- float offx1, offx2, offy1, offy2;
- BasePoint *base = was_implicit ? &sp->prevcp : &sp->me;
- offx1 = sp->nextcp.x - base->x;
- offy1 = sp->nextcp.y - base->y;
- mod = pfed_mod_type(offx1, pfed_mod_type(offy1,V_B));
- if ( SPInterpolate(nsp) && nsp!=ss->first ) {
- was_implicit = true;
- if ( offx1==0 ) {
- putc( (V_QVImplicit|mod), layr);
- pfed_write_data(layr,offy1,mod);
- } else if ( offy1==0 ) {
- putc( (V_QHImplicit|mod), layr);
- pfed_write_data(layr,offx1,mod);
- } else {
- putc( (V_QImplicit|mod), layr);
- pfed_write_data(layr,offx1,mod);
- pfed_write_data(layr,offy1,mod);
- }
- } else {
- offx2 = nsp->me.x - sp->nextcp.x;
- offy2 = nsp->me.y - sp->nextcp.y;
- mod = pfed_mod_type(offx2, pfed_mod_type(offy2,mod));
- was_implicit = false;
- putc( (V_QCurveTo|mod), layr);
- pfed_write_data(layr,offx1,mod);
- pfed_write_data(layr,offy1,mod);
- pfed_write_data(layr,offx2,mod);
- pfed_write_data(layr,offy2,mod);
- }
- } else {
- float offx1 = sp->nextcp.x - sp->me.x;
- float offy1 = sp->nextcp.y - sp->me.y;
- float offx2 = nsp->prevcp.x - sp->nextcp.x;
- float offy2 = nsp->prevcp.y - sp->nextcp.y;
- float offx3 = nsp->me.x - nsp->prevcp.x;
- float offy3 = nsp->me.y - nsp->prevcp.y;
- mod = pfed_mod_type(offx1, pfed_mod_type(offy1,V_B));
- mod = pfed_mod_type(offx2, pfed_mod_type(offy2,mod));
- mod = pfed_mod_type(offx3, pfed_mod_type(offy3,mod));
- if ( offx1==0 && offy3==0 ) {
- putc((V_VHCurveTo|mod),layr);
- pfed_write_data(layr,offy1,mod);
- pfed_write_data(layr,offx2,mod);
- pfed_write_data(layr,offy2,mod);
- pfed_write_data(layr,offx3,mod);
- } else if ( offy1==0 && offx3==0 ) {
- putc((V_HVCurveTo|mod),layr);
- pfed_write_data(layr,offx1,mod);
- pfed_write_data(layr,offx2,mod);
- pfed_write_data(layr,offy2,mod);
- pfed_write_data(layr,offy3,mod);
- } else {
- putc((V_CurveTo|mod),layr);
- pfed_write_data(layr,offx1,mod);
- pfed_write_data(layr,offy1,mod);
- pfed_write_data(layr,offx2,mod);
- pfed_write_data(layr,offy2,mod);
- pfed_write_data(layr,offx3,mod);
- pfed_write_data(layr,offy3,mod);
- }
- }
- if ( nsp == ss->first )
- break;
- if ( nsp->next!=NULL && nsp->next->to==ss->first && nsp->next->knownlinear )
- break;
- sp = nsp;
- }
- if ( sp->next==NULL )
- putc(V_End,layr);
- else
- putc(V_Close,layr);
- } else if ( ss->spiro_cnt==0 )
- putc(SPIRO_CLOSE_CONTOUR,layr); /* Mark for an empty spiro contour */
- else {
- for ( i=0; i<ss->spiro_cnt; ++i ) {
- if ( i==ss->spiro_cnt-1 && ss->first->prev==NULL )
- putc(SPIRO_CLOSE_CONTOUR,layr);
- else if ( i==0 && ss->first->prev==NULL ) /* Open */
- putc(SPIRO_OPEN_CONTOUR,layr);
- else
- putc(ss->spiros[i].ty&0x7f,layr);
- putlong(layr,rint(ss->spiros[i].x*256.0));
- putlong(layr,rint(ss->spiros[i].y*256.0));
- }
- putc(SPIRO_END,layr); /* Add the z whether open or not. Might as well */
- }
- }
-}
-
-struct pos_name {
- real pos;
- char *name;
-};
-
-static int pfed_guide_real_comp(const void *_r1, const void *_r2) {
- const struct pos_name *r1 = _r1, *r2 = _r2;
-
- if ( r1->pos>r2->pos )
-return( 1 );
- else if ( r1->pos<r2->pos )
-return( -1 );
- else
-return( 0 );
-}
-
-static int pfed_guide_sortuniq( struct pos_name *array, int cnt) {
- int i,j;
-
- qsort(array,cnt,sizeof(struct pos_name),pfed_guide_real_comp);
- for ( i=j=0; i<cnt; ++i ) {
- if ( array[i].pos<-32768 || array[i].pos>32767 )
- /* Out of bounds, ignore it */;
- else if ( i!=0 && array[i].pos == array[i-1].pos )
- /* Duplicate, ignore it */;
- else
- array[j++] = array[i];
- }
-return( j );
-}
-
-static int pfed_guide_dump_pos_name(FILE *guid, struct pos_name *pn, int namestart ) {
- putshort(guid,(short) rint(pn->pos));
- if ( pn->name!=NULL ) {
- putshort(guid,namestart);
- namestart += strlen(pn->name)+1;
- } else {
- putshort(guid,0);
- }
-return( namestart );
-}
-
-static void PfEd_Guides(SplineFont *sf, struct PfEd_subtabs *pfed ) {
- int h,v, i;
- SplineSet *ss;
- Spline *s, *first;
- FILE *guid;
- struct pos_name hs[100], vs[100];
- int nameoff, namelen;
-
- if ( sf->grid.splines==NULL )
-return;
-
- h=v=0;
- for ( ss=sf->grid.splines; ss!=NULL; ss=ss->next ) {
- first = NULL;
- for ( s=ss->first->next; s!=NULL && s!=first; s=s->to->next ) {
- if ( first==NULL ) first = s;
- if ( s->from->me.x==s->to->me.x ) {
- if ( s->from->me.y!=s->to->me.y && v<100 ) {
- vs[v].name = ss->contour_name;
- vs[v++].pos = s->from->me.x;
- }
- } else if ( s->from->me.y==s->to->me.y ) {
- if ( h<100 ) {
- hs[h].name = ss->contour_name;
- hs[h++].pos = s->from->me.y;
- }
- }
- }
- }
-
- v = pfed_guide_sortuniq(vs,v);
- h = pfed_guide_sortuniq(hs,h);
-
- pfed->subtabs[pfed->next].tag = guid_TAG;
- pfed->subtabs[pfed->next++].data = guid = tmpfile2();
-
- nameoff = 5*2 + (h+v) * 4;
- namelen = 0;
- for ( i=0; i<v; ++i ) if ( vs[i].name!=NULL )
- namelen += strlen( vs[i].name )+1;
- for ( i=0; i<h; ++i ) if ( hs[i].name!=NULL )
- namelen += strlen( hs[i].name )+1;
-
- putshort(guid,1); /* sub-table version number */
- putshort(guid,v);
- putshort(guid,h);
- putshort(guid,0); /* Diagonal lines someday? nothing for now */
- putshort(guid,nameoff+namelen); /* full spline output */
- for ( i=0; i<v; ++i )
- nameoff = pfed_guide_dump_pos_name(guid, &vs[i], nameoff );
- for ( i=0; i<h; ++i )
- nameoff = pfed_guide_dump_pos_name(guid, &hs[i], nameoff );
-
- for ( i=0; i<v; ++i ) if ( vs[i].name!=NULL ) {
- fputs(vs[i].name,guid);
- putc('\0',guid);
- }
- for ( i=0; i<h; ++i ) if ( hs[i].name!=NULL ) {
- fputs(hs[i].name,guid);
- putc('\0',guid);
- }
-
- pfed_glyph_layer(guid,&sf->grid,false);
-
- if ( ftell(guid) & 1 )
- putc('\0',guid);
- if ( ftell(guid) & 2 )
- putshort(guid,0);
-}
-
-static int pfed_has_spiros(Layer *layer) {
- SplineSet *ss;
-
- for ( ss=layer->splines; ss!=NULL; ss=ss->next ) {
- if ( ss->spiro_cnt>1 )
-return( true );
- }
-return( false );
-}
-
-static void PfEd_Layer(SplineFont *sf, struct glyphinfo *gi, int layer, int dospiro,
- FILE *layr) {
- int i, j, k, gid, cnt, last, skipped;
- SplineChar *sc, *sc2;
- uint32 offset;
- uint32 *glyph_data_offset_location;
-
- for ( i=0; i<gi->gcnt; ++i ) if ( gi->bygid[i]!=-1 )
- if ( (sc=sf->glyphs[gi->bygid[i]])!=NULL ) {
- sc->ticked = false;
- if ( (!dospiro && (sc->layers[layer].splines!=NULL || sc->layers[layer].refs!=NULL) ) ||
- (dospiro && pfed_has_spiros(&sc->layers[layer])) )
- sc->ticked=true;
- }
-
- offset = ftell(layr);
- glyph_data_offset_location = calloc(gi->gcnt,sizeof(uint32));
- for ( j=0; j<4; ++j ) {
- cnt = 0;
- for ( i=0; i<gi->gcnt; ++i ) if ( (gid=gi->bygid[i])!=-1 && (sc=sf->glyphs[gid])!=NULL ) {
- if ( sc->ticked ) {
- last = i; skipped = false;
- for ( k=i+1; k<gi->gcnt; ++k ) {
- sc2 = NULL;
- if ( gi->bygid[k]!=-1 )
- sc2 = sf->glyphs[gi->bygid[k]];
- if ( skipped && (sc2==NULL || !sc2->ticked))
- break;
- if ( sc2!=NULL && sc2->ticked ) {
- last = k;
- skipped = false;
- } else
- skipped = true;
- }
- ++cnt;
- if ( j==1 ) {
- putshort(layr,i);
- putshort(layr,last);
- putlong(layr,offset);
- offset += sizeof(uint32)*(last-i+1);
- } else if ( j==2 ) {
- for ( ; i<=last; ++i ) {
- if ( gi->bygid[i]==-1 || !sf->glyphs[gi->bygid[i]]->ticked )
- putlong(layr,0);
- else {
- glyph_data_offset_location[i] = ftell(layr);
- putlong(layr,0);
- }
- }
- } else if ( j==3 ) {
- for ( ; i<=last; ++i ) {
- if ( gi->bygid[i]!=-1 && (sc=sf->glyphs[gi->bygid[i]])->ticked ) {
- uint32 pos = ftell(layr);
- fseek(layr,glyph_data_offset_location[i],SEEK_SET);
- putlong(layr,pos); /* Offset relative to start of subtable==start of file */
- fseek(layr,pos,SEEK_SET);
- pfed_glyph_layer(layr,&sc->layers[layer],dospiro);
- }
- }
- }
- i = last;
- }
- }
- if ( j==0 ) {
- offset += sizeof(short) + cnt*(2*sizeof(short)+sizeof(uint32));
- putshort(layr,cnt);
- }
- }
- free(glyph_data_offset_location);
-}
-
-static void PfEd_Layers(SplineFont *sf, struct PfEd_subtabs *pfed,
- struct glyphinfo *gi ) {
- /* currently we output the following: */
- /* The background layer */
- /* And the spiro representation of the foreground */
- /* if the foreground is cubic and output is quad then the foreground */
- /* Any other layers */
- /* Check if any of these data exist */
- uint8 has_spiro=0;
- uint8 *otherlayers;
- int i, name_off, l, cnt, sofar;
- SplineChar *sc;
- FILE *layr;
-
- otherlayers = calloc(sf->layer_cnt,sizeof(uint8));
-
- /* We don't need to check in bygid order. We just want to know existance */
- /* We don't check for refs because a reference to an empty glyph is empty too */
- for ( i=0; i<sf->glyphcnt; ++i ) {
- if ( (sc=sf->glyphs[i])!=NULL && sc->ttf_glyph!=-1 ) {
- if ( pfed_has_spiros(&sc->layers[ly_fore]))
- has_spiro = true;
- for ( l=ly_back ; l<sf->layer_cnt; ++l )
- if ( sc->layers[l].splines!=NULL )
- otherlayers[l] = true;
- }
- }
- otherlayers[gi->layer] = (!sf->layers[gi->layer].order2 && gi->is_ttf) ||
- ( sf->layers[gi->layer].order2 && !gi->is_ttf);
-
- for ( l=cnt=0; l<sf->layer_cnt; ++l )
- if ( otherlayers[l] )
- ++cnt;
- cnt += has_spiro;
- if ( cnt==0 ) {
- free(otherlayers);
-return;
- }
-
- pfed->subtabs[pfed->next].tag = layr_TAG;
- pfed->subtabs[pfed->next++].data = layr = tmpfile2();
-
- putshort(layr,1); /* sub-table version */
- putshort(layr,cnt); /* layer count */
-
- name_off = 4 + 8 * cnt;
- if ( has_spiro ) {
- putshort(layr,1); /* spiros */
- putshort(layr,name_off);
- name_off += strlen("Spiro")+1;
- putlong(layr,0); /* Fill in later */
- }
- for ( l=0; l<sf->layer_cnt; ++l ) if ( otherlayers[l]) {
- putshort(layr,(sf->layers[l].order2?2:3) | /* Quadratic/cubic */
- (sf->layers[l].background?0:0x100)); /* Fore/Back */
- putshort(layr,name_off);
- if ( l==ly_fore ) name_off += strlen("Old_");
- name_off += strlen(sf->layers[l].name)+1;
- putlong(layr,0); /* Fill in later */
- }
- if ( has_spiro ) {
- fputs("Spiro",layr);
- putc('\0',layr);
- }
- for ( l=0; l<sf->layer_cnt; ++l ) if ( otherlayers[l]) {
- if ( l==ly_fore ) fputs("Old_",layr);
- fputs(sf->layers[l].name,layr);
- putc('\0',layr);
- }
-
- sofar = 0;
- if ( has_spiro ) {
- uint32 pos = ftell(layr);
- fseek(layr, 4 + 0*8 + 4, SEEK_SET);
- putlong(layr,pos);
- fseek(layr, 0, SEEK_END);
- PfEd_Layer(sf, gi, ly_fore, true, layr);
- ++sofar;
- }
- for ( l=0; l<sf->layer_cnt; ++l ) if ( otherlayers[l]) {
- uint32 pos = ftell(layr);
- fseek(layr, 4 + sofar*8 + 4, SEEK_SET);
- putlong(layr,pos);
- fseek(layr, 0, SEEK_END);
- PfEd_Layer(sf, gi, l, false, layr);
- ++sofar;
- }
-
- if ( ftell(layr) & 1 )
- putc('\0',layr);
- if ( ftell(layr) & 2 )
- putshort(layr,0);
- free(otherlayers);
-}
-
-void pfed_dump(struct alltabs *at, SplineFont *sf) {
- struct PfEd_subtabs pfed;
- FILE *file;
- int i;
- uint32 offset;
-
- memset(&pfed,0,sizeof(pfed));
- if ( at->gi.flags & ttf_flag_pfed_comments ) {
- PfEd_FontComment(sf, &pfed, fcmt_TAG );
- PfEd_FontComment(sf, &pfed, flog_TAG );
- PfEd_GlyphComments(sf, &pfed, &at->gi );
- PfEd_CvtComments(sf, &pfed );
- }
- if ( at->gi.flags & ttf_flag_pfed_colors )
- PfEd_Colours(sf, &pfed, &at->gi );
- if ( (at->gi.flags & ttf_flag_pfed_lookupnames) && at->opentypemode ) {
- PfEd_Lookups(sf, &pfed, sf->gsub_lookups, GSUB_TAG );
- PfEd_Lookups(sf, &pfed, sf->gpos_lookups, GPOS_TAG );
- }
- if ( at->gi.flags & ttf_flag_pfed_guides )
- PfEd_Guides(sf, &pfed);
- if ( at->gi.flags & ttf_flag_pfed_layers )
- PfEd_Layers(sf, &pfed, &at->gi);
-
- if ( pfed.next==0 )
-return; /* No subtables */
-
- at->pfed = file = tmpfile2();
- putlong(file, 0x00010000); /* Version number */
- putlong(file, pfed.next); /* sub-table count */
- offset = 2*sizeof(uint32) + 2*pfed.next*sizeof(uint32);
- for ( i=0; i<pfed.next; ++i ) {
- putlong(file,pfed.subtabs[i].tag);
- putlong(file,offset);
- fseek(pfed.subtabs[i].data,0,SEEK_END);
- pfed.subtabs[i].offset = offset;
- offset += ftell(pfed.subtabs[i].data);
- }
- for ( i=0; i<pfed.next; ++i ) {
- fseek(pfed.subtabs[i].data,0,SEEK_SET);
- ttfcopyfile(file,pfed.subtabs[i].data,pfed.subtabs[i].offset,"PfEd-subtable");
- }
- if ( ftell(file)&3 )
- IError("'PfEd' table not properly aligned");
- at->pfedlen = ftell(file);
-}
-
-/* ************************* The 'PfEd' table ************************* */
-/* ************************* Input ************************* */
-
-static void pfed_readfontcomment(FILE *ttf,struct ttfinfo *info,uint32 base,
- uint32 tag) {
- int len;
- char *start, *pt, *end;
- int use_utf8;
-
- fseek(ttf,base,SEEK_SET);
- use_utf8 = getushort(ttf);
- if ( use_utf8!=0 && use_utf8!=1 )
-return; /* Bad version number */
- len = getushort(ttf);
- start = pt = malloc(len+1);
-
- end = pt+len;
- if ( use_utf8 ) {
- while ( pt<end )
- *pt++ = getc(ttf);
- } else {
- while ( pt<end )
- *pt++ = getushort(ttf);
- }
- *pt = '\0';
- if ( !use_utf8 ) {
- pt = latin1_2_utf8_copy(info->fontcomments);
- free(start);
- start = pt;
- }
- if ( tag==flog_TAG )
- info->fontlog = start;
- else
- info->fontcomments = start;
-}
-
-static char *pfed_read_utf8(FILE *ttf, uint32 start) {
- int ch, len;
- char *str, *pt;
-
- fseek( ttf, start, SEEK_SET);
- len = 0;
- while ( (ch=getc(ttf))!='\0' && ch!=EOF )
- ++len;
- fseek( ttf, start, SEEK_SET);
- str = pt = malloc(len+1);
- while ( (ch=getc(ttf))!='\0' && ch!=EOF )
- *pt++ = ch;
- *pt = '\0';
-return( str );
-}
-
-static char *pfed_read_ucs2_len(FILE *ttf,uint32 offset,int len) {
- char *pt, *str;
- uint32 uch, uch2;
- int i;
-
- if ( len<0 )
-return( NULL );
-
- len>>=1;
- if ( (pt=str=malloc(len>0 ? 3*len:1))==NULL )
- return( NULL );
- fseek(ttf,offset,SEEK_SET);
- for ( i=0; i<len; ++i ) {
- uch = getushort(ttf);
- if ( uch>=0xd800 && uch<0xdc00 ) {
- /* Is this a possible utf16 surrogate value? */
- uch2 = getushort(ttf);
- if ( uch2>=0xdc00 && uch2<0xe000 )
- uch = ((uch-0xd800)<<10) | (uch2&0x3ff);
- else {
- pt = utf8_idpb(pt,uch,0);
- uch = uch2;
- }
- }
- pt = utf8_idpb(pt,uch,0);
- }
- *pt++ = 0;
-return( realloc(str,pt-str) );
-}
-
-static char *pfed_read_utf8_len(FILE *ttf,uint32 offset,int len) {
- char *pt, *str;
- int i;
-
- if ( len<0 )
-return( NULL );
-
- pt = str = malloc(len+1);
- fseek(ttf,offset,SEEK_SET);
- for ( i=0; i<len; ++i )
- *pt++ = getc(ttf);
- *pt = '\0';
-return( str );
-}
-
-static void pfed_readcvtcomments(FILE *ttf,struct ttfinfo *info,uint32 base ) {
- int count, i;
- uint16 *offsets;
-
- fseek(ttf,base,SEEK_SET);
- if ( getushort(ttf)!=0 )
-return; /* Bad version number */
- count = getushort(ttf);
-
- offsets = malloc(count*sizeof(uint16));
- info->cvt_names = malloc((count+1)*sizeof(char *));
- for ( i=0; i<count; ++i )
- offsets[i] = getushort(ttf);
- for ( i=0; i<count; ++i ) {
- if ( offsets[i]==0 )
- info->cvt_names[i] = NULL;
- else
- info->cvt_names[i] = pfed_read_utf8(ttf,base+offsets[i]);
- }
- free(offsets);
-}
-
-static void pfed_readglyphcomments(FILE *ttf,struct ttfinfo *info,uint32 base) {
- int n, i, j;
- struct grange { int start, end; uint32 offset; } *grange;
- uint32 offset, next;
- int use_utf8;
-
- fseek(ttf,base,SEEK_SET);
- use_utf8 = getushort(ttf);
- if ( use_utf8!=0 && use_utf8!=1 )
-return; /* Bad version number */
- n = getushort(ttf);
- grange = malloc(n*sizeof(struct grange));
- for ( i=0; i<n; ++i ) {
- grange[i].start = getushort(ttf);
- grange[i].end = getushort(ttf);
- grange[i].offset = getlong(ttf);
- if ( grange[i].start>grange[i].end || grange[i].end>info->glyph_cnt ) {
- LogError( _("Bad glyph range specified in glyph comment subtable of PfEd table\n") );
- grange[i].start = 1; grange[i].end = 0;
- }
- }
- for ( i=0; i<n; ++i ) {
- for ( j=grange[i].start; j<=grange[i].end; ++j ) {
- fseek( ttf,base+grange[i].offset+(j-grange[i].start)*sizeof(uint32),SEEK_SET);
- offset = getlong(ttf);
- next = getlong(ttf);
- if ( use_utf8 )
- info->chars[j]->comment = pfed_read_utf8_len(ttf,base+offset,next-offset);
- else
- info->chars[j]->comment = pfed_read_ucs2_len(ttf,base+offset,next-offset);
- if ( info->chars[j]->comment == NULL )
- LogError(_("Invalid comment string (negative length?) in 'PfEd' table for glyph %s."),
- info->chars[j]->name );
- }
- }
- free(grange);
-}
-
-static void pfed_readcolours(FILE *ttf,struct ttfinfo *info,uint32 base) {
- int n, i, j, start, end;
- uint32 col;
-
- fseek(ttf,base,SEEK_SET);
- if ( getushort(ttf)!=0 )
-return; /* Bad version number */
- n = getushort(ttf);
- for ( i=0; i<n; ++i ) {
- start = getushort(ttf);
- end = getushort(ttf);
- col = getlong(ttf);
- if ( start>end || end>info->glyph_cnt )
- LogError( _("Bad glyph range specified in color subtable of PfEd table\n") );
- else {
- for ( j=start; j<=end; ++j )
- info->chars[j]->color = col;
- }
- }
-}
-
-static void pfed_readlookupnames(FILE *ttf,struct ttfinfo *info,uint32 base,
- OTLookup *lookups) {
- OTLookup *otl;
- struct lookup_subtable *sub;
- AnchorClass *ac;
- int i, j, k, n, s, a;
- struct lstruct { int name_off, subs_off; } *ls, *ss, *as;
-
- fseek(ttf,base,SEEK_SET);
- if ( getushort(ttf)!=0 )
-return; /* Bad version number */
- n = getushort(ttf);
- ls = malloc(n*sizeof(struct lstruct));
- for ( i=0; i<n; ++i ) {
- ls[i].name_off = getushort(ttf);
- ls[i].subs_off = getushort(ttf);
- }
- for ( i=0, otl=lookups; i<n && otl!=NULL; ++i, otl=otl->next ) {
- if ( ls[i].name_off!=0 ) {
- free( otl->lookup_name );
- otl->lookup_name = pfed_read_utf8(ttf,base+ls[i].name_off);
- }
- if ( ls[i].subs_off!=0 ) {
- fseek(ttf,base+ls[i].subs_off,SEEK_SET);
- s = getushort(ttf);
- ss = malloc(s*sizeof(struct lstruct));
- for ( j=0; j<s; ++j ) {
- ss[j].name_off = getushort(ttf);
- ss[j].subs_off = getushort(ttf);
- }
- for ( j=0, sub=otl->subtables; j<s && sub!=NULL; ++j, sub=sub->next ) {
- if ( ss[j].name_off!=0 ) {
- free( sub->subtable_name );
- sub->subtable_name = pfed_read_utf8(ttf,base+ss[j].name_off);
- }
- if ( ss[j].subs_off!=0 ) {
- if ( !sub->anchor_classes )
- LogError(_("Whoops, attempt to name anchors in a subtable which doesn't contain any\n"));
- else {
- fseek(ttf,base+ss[j].subs_off,SEEK_SET);
- a = getushort(ttf);
- as = malloc(a*sizeof(struct lstruct));
- for ( k=0; k<a; ++k ) {
- as[k].name_off = getushort(ttf);
- }
- k=0;
- for ( ac=info->ahead; ac!=NULL; ac=ac->next ) {
- if ( ac->subtable==sub ) {
- if ( as[k].name_off!=0 ) {
- free( ac->name );
- ac->name = pfed_read_utf8(ttf,base+as[k].name_off);
- }
- ++k;
- }
- }
- free(as);
- }
- }
- }
- /* I guess it's ok for some subtables to be unnamed, so no check for sub!=NULL */
- if ( j<s )
- LogError(_("Whoops, more names than subtables of lookup %s\n"), otl->lookup_name );
- free(ss);
- }
- }
- /* I guess it's ok for some lookups to be unnamed, so no check for otf!=NULL */
- if ( i<n )
- LogError(_("Whoops, more names than lookups\n") );
- free(ls);
-}
-
-static float pfed_get_coord(FILE *ttf,int mod) {
- if ( mod==V_B )
-return( (float) (signed char) getc(ttf) );
- else if ( mod==V_S )
-return( (float) (short) getushort(ttf));
- else if ( mod==V_F )
-return( getlong(ttf)/256.0 );
- else {
- LogError(_("Bad data type in contour verb in 'PfEd'\n"));
-return( 0 );
- }
-}
-
-static void pfed_read_normal_contour(FILE *ttf,SplineSet *ss,
- uint32 base, int type) {
- SplinePoint *sp, *current;
- int verb, v, m;
- float offx, offy, offx1, offy1, offx2, offy2;
- int was_implicit=false;
-
- fseek(ttf,base,SEEK_SET);
-
- verb = getc(ttf);
- if ( COM_VERB(verb)!=V_MoveTo ) {
- LogError(_("Whoops, contours must begin with a move to\n") );
- ss->first = ss->last = SplinePointCreate(0,0);
- ss->start_offset = 0;
-return;
- }
- offx = pfed_get_coord(ttf,COM_MOD(verb));
- offy = pfed_get_coord(ttf,COM_MOD(verb));
- ss->first = current = SplinePointCreate(offx,offy);
- ss->start_offset = 0;
- for (;;) {
- verb = getc(ttf);
- v = COM_VERB(verb); m = COM_MOD(verb);
- if ( m==3 ) {
- LogError(_("Bad data modifier in contour command in 'PfEd'\n") );
- break;
- }
- if ( verb==V_Close || verb==V_End )
- break;
- else if ( v>=V_LineTo && v<=V_VLineTo ) {
- offx = offy = 0;
- if ( v==V_LineTo ) {
- offx = pfed_get_coord(ttf,m);
- offy = pfed_get_coord(ttf,m);
- } else if ( v==V_HLineTo )
- offx = pfed_get_coord(ttf,m);
- else if ( v==V_VLineTo )
- offy = pfed_get_coord(ttf,m);
- sp = SplinePointCreate(current->me.x+offx,current->me.y+offy);
- } else if ( v>=V_QCurveTo && v<=V_QVImplicit ) {
- int will_be_implicit = true;
- offx = offy = 0; offx1 = offy1 = 1; /* else implicit points become straight lines too soon */
- if ( v==V_QCurveTo ) {
- offx = pfed_get_coord(ttf,m);
- offy = pfed_get_coord(ttf,m);
- offx1 = pfed_get_coord(ttf,m);
- offy1 = pfed_get_coord(ttf,m);
- will_be_implicit = false;
- } else if ( v==V_QImplicit ) {
- offx = pfed_get_coord(ttf,m);
- offy = pfed_get_coord(ttf,m);
- } else if ( v==V_QHImplicit ) {
- offx = pfed_get_coord(ttf,m);
- } else if ( v==V_QVImplicit ) {
- offy = pfed_get_coord(ttf,m);
- }
-
- current->nextcp.x = current->me.x+offx;
- current->nextcp.y = current->me.y+offy;
- current->nonextcp = false;
- sp = SplinePointCreate(current->nextcp.x+offx1,current->nextcp.y+offy1);
- sp->prevcp = current->nextcp;
- sp->noprevcp = false;
- if ( was_implicit ) {
- current->me.x = (current->prevcp.x + current->nextcp.x)/2;
- current->me.y = (current->prevcp.y + current->nextcp.y)/2;
- SplineRefigure(current->prev);
- }
- was_implicit = will_be_implicit;
- } else if ( v>=V_CurveTo && v<=V_HVCurveTo ) {
- offx=offy=offx2=offy2=0;
- if ( v==V_CurveTo ) {
- offx = pfed_get_coord(ttf,m);
- offy = pfed_get_coord(ttf,m);
- offx1 = pfed_get_coord(ttf,m);
- offy1 = pfed_get_coord(ttf,m);
- offx2 = pfed_get_coord(ttf,m);
- offy2 = pfed_get_coord(ttf,m);
- } else if ( v==V_VHCurveTo ) {
- offy = pfed_get_coord(ttf,m);
- offx1 = pfed_get_coord(ttf,m);
- offy1 = pfed_get_coord(ttf,m);
- offx2 = pfed_get_coord(ttf,m);
- } else if ( v==V_HVCurveTo ) {
- offx = pfed_get_coord(ttf,m);
- offx1 = pfed_get_coord(ttf,m);
- offy1 = pfed_get_coord(ttf,m);
- offy2 = pfed_get_coord(ttf,m);
- }
- current->nextcp.x = current->me.x+offx;
- current->nextcp.y = current->me.y+offy;
- current->nonextcp = false;
- sp = SplinePointCreate(current->nextcp.x+offx1+offx2,current->nextcp.y+offy1+offy2);
- sp->prevcp.x = current->nextcp.x+offx1;
- sp->prevcp.y = current->nextcp.y+offy1;
- sp->noprevcp = false;
- } else {
- LogError(_("Whoops, unexpected verb in contour %d.%d\n"), v, m );
- break;
- }
- SplineMake(current,sp,type==2);
- current = sp;
- }
- if ( verb==V_Close ) {
- if ( was_implicit ) {
- current->me.x = (current->prevcp.x + ss->first->nextcp.x)/2;
- current->me.y = (current->prevcp.y + ss->first->nextcp.y)/2;
- }
- if ( current->me.x==ss->first->me.x && current->me.y==ss->first->me.y ) {
- current->prev->to = ss->first;
- ss->first->prev = current->prev;
- ss->first->prevcp = current->prevcp;
- ss->first->noprevcp = current->noprevcp;
- SplinePointFree(current);
- } else
- SplineMake(current,ss->first,type==2);
- ss->last = ss->first;
- } else {
- ss->last = current;
- }
- SPLCategorizePoints(ss);
-}
-
-static void pfed_read_spiro_contour(FILE *ttf,SplineSet *ss,
- uint32 base, int type) {
- int ch;
-
- fseek(ttf,base,SEEK_SET);
-
- for (; ; ) {
- ch = getc(ttf);
- if ( ch!=SPIRO_OPEN_CONTOUR && ch!=SPIRO_CORNER && ch!=SPIRO_G4 &&
- ch!=SPIRO_G2 && ch!=SPIRO_LEFT && ch!=SPIRO_RIGHT &&
- ch!=SPIRO_END && ch!=SPIRO_CLOSE_CONTOUR ) {
- LogError(_("Whoops, bad spiro command %d\n"), ch);
- break;
- }
- if ( ss->spiro_cnt>=ss->spiro_max )
- ss->spiros = realloc(ss->spiros,(ss->spiro_max+=10)*sizeof(spiro_cp));
- ss->spiros[ss->spiro_cnt].ty = ch;
- if ( ch!=SPIRO_END ) {
- ss->spiros[ss->spiro_cnt].x = getlong(ttf)/256.0;
- ss->spiros[ss->spiro_cnt].y = getlong(ttf)/256.0;
- } else {
- ss->spiros[ss->spiro_cnt].x = 0;
- ss->spiros[ss->spiro_cnt].y = 0;
- }
- ++(ss->spiro_cnt);
- if ( ch==SPIRO_END || ch=='}' )
- break;
- }
- if ( ss->spiro_cnt!=0 && ss->spiros[ss->spiro_cnt-1].ty!= SPIRO_END ) {
- if ( ss->spiros[ss->spiro_cnt-1].ty==SPIRO_CLOSE_CONTOUR )
- ss->spiros[ss->spiro_cnt-1].ty = SPIRO_G4;
- if ( ss->spiro_cnt>=ss->spiro_max )
- ss->spiros = realloc(ss->spiros,(ss->spiro_max+=2)*sizeof(spiro_cp));
- ss->spiros[ss->spiro_cnt].ty = SPIRO_END;
- ss->spiros[ss->spiro_cnt].x = 0;
- ss->spiros[ss->spiro_cnt].y = 0;
- }
-}
-
-static void pfed_read_glyph_layer(FILE *ttf,struct ttfinfo *info,Layer *ly,
- uint32 base, int type, int version) {
- int cc, rc, i, j;
- SplineSet *ss;
- struct contours { int data_off, name_off; SplineSet *ss; } *contours;
- int gid;
- RefChar *last, *cur;
-
- fseek(ttf,base,SEEK_SET);
- cc = getushort(ttf); /* Contours */
- rc = 0;
- if ( version==1 )
- rc = getushort(ttf); /* References */
- contours = malloc(cc*sizeof(struct contours));
- for ( i=0; i<cc; ++i ) {
- contours[i].data_off = getushort(ttf);
- contours[i].name_off = getushort(ttf);
- }
- last = NULL;
- for ( i=0; i<rc; ++i ) {
- cur = RefCharCreate();
- for ( j=0; j<6; ++j )
- cur->transform[j] = getlong(ttf)/32768.0;
- gid = getushort(ttf);
- if ( gid>=info->glyph_cnt ) {
- LogError(_("Bad glyph reference in layer info.\n"));
- break;
- }
- cur->sc = info->chars[gid];
- cur->orig_pos = gid;
- cur->unicode_enc = cur->sc->unicodeenc;
- if ( last==NULL )
- ly->refs = cur;
- else
- last->next = cur;
- last = cur;
- }
-
- ss = ly->splines; /* Only relevant for spiros where they live in someone else's layer */
- for ( i=0; i<cc; ++i ) {
- if ( type!=1 ) { /* Not spiros */
- contours[i].ss = chunkalloc(sizeof(SplineSet));
- if ( i==0 )
- ly->splines = contours[i].ss;
- else
- contours[i-1].ss->next = contours[i].ss;
- if ( contours[i].name_off!=0 )
- contours[i].ss->contour_name = pfed_read_utf8(ttf,base+contours[i].name_off);
- pfed_read_normal_contour(ttf,contours[i].ss,base+contours[i].data_off,type);
- } else { /* Spiros are actually bound to an already existing layer and don't have an independent existance yet */
- contours[i].ss = ss;
- if ( ss!=NULL ) {
- pfed_read_spiro_contour(ttf,ss,base+contours[i].data_off,type);
- ss = ss->next;
- } else
- LogError(_("Whoops, Ran out of spiros\n"));
- }
- }
- free(contours);
-}
-
-static void pfed_readguidelines(FILE *ttf,struct ttfinfo *info,uint32 base) {
- int i,v,h,off;
- int version;
- SplinePoint *sp, *nsp;
- SplineSet *ss;
-
- fseek(ttf,base,SEEK_SET);
- version = getushort(ttf);
- if ( version>1 )
-return; /* Bad version number */
- v = getushort(ttf);
- h = getushort(ttf);
- (void) getushort(ttf);
- off = getushort(ttf);
-
- if ( off!=0 ) {
- pfed_read_glyph_layer(ttf,info,&info->guidelines,base+off,info->to_order2?2:3,version);
- } else {
- struct npos { int pos; int offset; } *vs, *hs;
- vs = malloc(v*sizeof(struct npos));
- hs = malloc(h*sizeof(struct npos));
- for ( i=0; i<v; ++i ) {
- vs[i].pos = (short) getushort(ttf);
- vs[i].offset = getushort(ttf);
- }
- for ( i=0; i<h; ++i ) {
- hs[i].pos = (short) getushort(ttf);
- hs[i].offset = getushort(ttf);
- }
- for ( i=0; i<v; ++i ) {
- sp = SplinePointCreate(vs[i].pos,-info->emsize);
- nsp = SplinePointCreate(vs[i].pos,2*info->emsize);
- SplineMake(sp,nsp,info->to_order2);
- ss = chunkalloc(sizeof(SplineSet));
- ss->first = sp; ss->last = nsp;
- if ( vs[i].offset!=0 )
- ss->contour_name = pfed_read_utf8(ttf,base+vs[i].offset);
- ss->next = info->guidelines.splines;
- info->guidelines.splines = ss;
- }
- for ( i=0; i<h; ++i ) {
- sp = SplinePointCreate(-info->emsize,hs[i].pos);
- nsp = SplinePointCreate(2*info->emsize,hs[i].pos);
- SplineMake(sp,nsp,info->to_order2);
- ss = chunkalloc(sizeof(SplineSet));
- ss->first = sp; ss->last = nsp;
- if ( hs[i].offset!=0 )
- ss->contour_name = pfed_read_utf8(ttf,base+hs[i].offset);
- ss->next = info->guidelines.splines;
- info->guidelines.splines = ss;
- }
- SPLCategorizePoints(info->guidelines.splines);
- free(vs); free(hs);
- }
-}
-
-static void pfed_redo_refs(SplineChar *sc,int layer) {
- RefChar *refs;
-
- sc->ticked = true;
- for ( refs=sc->layers[layer].refs; refs!=NULL; refs=refs->next ) {
- if ( layer==1 && refs->sc==NULL ) /* If main layer has spiros attached, then we'll get here. Any refs will come from the main ttf reading routines and won't be fixed up yet */
- continue;
- if ( !refs->sc->ticked )
- pfed_redo_refs(refs->sc,layer);
- SCReinstanciateRefChar(sc,refs,layer);
- }
-}
-
-static void pfed_read_layer(FILE *ttf,struct ttfinfo *info,int layer,int type, uint32 base,
- uint32 start,int version) {
- uint32 *loca = calloc(info->glyph_cnt,sizeof(uint32));
- int i,j;
- SplineChar *sc;
- int rcnt;
- struct range { int start, last; uint32 offset; } *ranges;
-
- fseek(ttf,start,SEEK_SET);
- rcnt = getushort(ttf);
- ranges = malloc(rcnt*sizeof(struct range));
- for ( i=0; i<rcnt; ++i ) {
- ranges[i].start = getushort(ttf);
- ranges[i].last = getushort(ttf);
- ranges[i].offset = getlong(ttf);
- }
- for ( i=0; i<rcnt; ++i ) {
- fseek(ttf,base+ranges[i].offset,SEEK_SET);
- for ( j=ranges[i].start; j<=ranges[i].last; ++j )
- loca[j] = getlong(ttf);
- for ( j=ranges[i].start; j<=ranges[i].last; ++j ) {
- Layer *ly;
- sc = info->chars[j];
- ly = &sc->layers[layer];
- if ( loca[j]!=0 )
- pfed_read_glyph_layer(ttf,info,ly,base+loca[j],type,version);
- }
- }
- free(ranges); free(loca);
-
- for ( i=0; i<info->glyph_cnt; ++i ) if ( info->chars[i]!=NULL )
- info->chars[i]->ticked = false;
- for ( i=0; i<info->glyph_cnt; ++i ) if ( info->chars[i]!=NULL )
- pfed_redo_refs(info->chars[i],layer);
-}
-
-static void pfed_readotherlayers(FILE *ttf,struct ttfinfo *info,uint32 base) {
- int i, l, lcnt, spiro_index, gid;
- int version;
- struct layer_info { int type, name_off, data_off, sf_layer; char *name; } *layers;
- int non_spiro_cnt=0;
- SplineChar *sc;
-
- fseek(ttf,base,SEEK_SET);
- version = getushort(ttf);
- if ( version>1 )
-return; /* Bad version number */
- lcnt = getushort(ttf);
- layers = malloc(lcnt*sizeof(struct layer_info));
- for ( i=0; i<lcnt; ++i ) {
- layers[i].type = getushort(ttf);
- layers[i].name_off = getushort(ttf);
- layers[i].data_off = getlong(ttf);
- layers[i].sf_layer = -1;
- }
- spiro_index = -1;
- non_spiro_cnt = 0;
- for ( i=0; i<lcnt; ++i ) {
- if ( layers[i].name_off==0 )
- layers[i].name = copy("Unnamed");
- else {
- layers[i].name = pfed_read_utf8(ttf,base+layers[i].name_off);
- if ( layers[i].type==1 && strcmp(layers[i].name,"Spiro")==0 )
- spiro_index = i;
- }
- if ( layers[i].type==2 || layers[i].type==3 || layers[i].type==0x102 || layers[i].type==0x103 )
- ++non_spiro_cnt;
- }
- if ( spiro_index==-1 ) {
- for ( i=0; i<lcnt; ++i )
- if ( layers[i].type==1 ) {
- spiro_index=i;
- break;
- }
- }
-
- if ( non_spiro_cnt!=0 ) {
- info->layer_cnt = non_spiro_cnt+1;
- info->layers = calloc(info->layer_cnt+1,sizeof(LayerInfo));
- info->layers[ly_back].background = true;
- info->layers[ly_fore].order2 = info->to_order2;
- info->layers[ly_fore].background = false;
- l = i = 0;
- if ( (layers[i].type&0xff)==1 )
- ++i;
- if ( layers[i].type&0x100 ) {
- /* first layer output is foreground, so it can't replace the background layer */
- ++info->layer_cnt;
- l = 2;
- info->layers[ly_back].order2 = info->to_order2;
- }
- for ( ; i<lcnt; ++i ) if ( (layers[i].type&0xff)==2 || (layers[i].type&0xff)==3 ) {
- info->layers[l].name = layers[i].name;
- layers[i].name = NULL;
- layers[i].sf_layer = l;
- info->layers[l].order2 = (layers[i].type&0xff)==2;
- info->layers[l].background = (layers[i].type&0x100)?0:1;
- if ( l==0 ) l=2; else ++l;
- }
- if ( info->layer_cnt!=2 ) {
- for ( gid = 0; gid<info->glyph_cnt; ++gid ) if ((sc=info->chars[gid])!=NULL ) {
- sc->layers = realloc(sc->layers,info->layer_cnt*sizeof(Layer));
- memset(sc->layers+2,0,(info->layer_cnt-2)*sizeof(Layer));
- sc->layer_cnt = info->layer_cnt;
- }
- }
- }
- if ( spiro_index!=-1 )
- pfed_read_layer(ttf,info,ly_fore,layers[spiro_index].type,base,base+layers[spiro_index].data_off,version);
- for ( i=0; i<lcnt; ++i ) if ( layers[i].sf_layer!=-1 ) {
- pfed_read_layer(ttf,info,layers[i].sf_layer,layers[i].type&0xff,
- base,base+layers[i].data_off,version);
- }
- for ( i=0; i<lcnt; ++i )
- free( layers[i].name );
- free( layers );
-}
-
-void pfed_read(FILE *ttf,struct ttfinfo *info) {
- int n,i;
- struct tagoff { uint32 tag, offset; } tagoff[MAX_SUBTABLE_TYPES+30];
-
- fseek(ttf,info->pfed_start,SEEK_SET);
-
- if ( getlong(ttf)!=0x00010000 )
-return;
- n = getlong(ttf);
- if ( n>=MAX_SUBTABLE_TYPES+30 )
- n = MAX_SUBTABLE_TYPES+30;
- for ( i=0; i<n; ++i ) {
- tagoff[i].tag = getlong(ttf);
- tagoff[i].offset = getlong(ttf);
- }
- for ( i=0; i<n; ++i ) switch ( tagoff[i].tag ) {
- case fcmt_TAG: case flog_TAG:
- pfed_readfontcomment(ttf,info,info->pfed_start+tagoff[i].offset, tagoff[i].tag);
- break;
- case cvtc_TAG:
- pfed_readcvtcomments(ttf,info,info->pfed_start+tagoff[i].offset);
- break;
- case cmnt_TAG:
- pfed_readglyphcomments(ttf,info,info->pfed_start+tagoff[i].offset);
- break;
- case colr_TAG:
- pfed_readcolours(ttf,info,info->pfed_start+tagoff[i].offset);
- break;
- case GPOS_TAG:
- pfed_readlookupnames(ttf,info,info->pfed_start+tagoff[i].offset,info->gpos_lookups);
- break;
- case GSUB_TAG:
- pfed_readlookupnames(ttf,info,info->pfed_start+tagoff[i].offset,info->gsub_lookups);
- break;
- case layr_TAG:
- pfed_readotherlayers(ttf,info,info->pfed_start+tagoff[i].offset);
- break;
- case guid_TAG:
- pfed_readguidelines(ttf,info,info->pfed_start+tagoff[i].offset);
- break;
- default:
- LogError( _("Unknown subtable '%c%c%c%c' in 'PfEd' table, ignored\n"),
- tagoff[i].tag>>24, (tagoff[i].tag>>16)&0xff, (tagoff[i].tag>>8)&0xff, tagoff[i].tag&0xff );
- break;
- }
-}
-
-/* 'TeX ' table format is as follows... */
-/* uint32 version number 0x00010000 */
-/* uint32 subtable count */
-/* struct { uint32 tab, offset } tag/offset for first subtable */
-/* struct { uint32 tab, offset } tag/offset for second subtable */
-/* ... */
-
-/* 'TeX ' 'ftpm' font parameter subtable format */
-/* short version number 0 */
-/* parameter count */
-/* array of { 4chr tag, value } */
-
-/* 'TeX ' 'htdp' per-glyph height/depth subtable format */
-/* short version number 0 */
-/* short glyph-count */
-/* array[glyph-count] of { int16 height,depth } */
-
-/* 'TeX ' 'itlc' per-glyph italic correction subtable */
-/* short version number 0 */
-/* short glyph-count */
-/* array[glyph-count] of int16 italic_correction */
-
-/* !!!!!!!!!!! OBSOLETE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
-/* 'TeX ' 'sbsp' per-glyph sub/super script positioning subtable */
-/* short version number 0 */
-/* short glyph-count */
-/* array[glyph-count] of { int16 sub,super } */
-
-#undef MAX_SUBTABLE_TYPES
-#define MAX_SUBTABLE_TYPES 4
-
-struct TeX_subtabs {
- int next;
- struct {
- FILE *data;
- uint32 tag;
- uint32 offset;
- } subtabs[MAX_SUBTABLE_TYPES];
-};
-
-static uint32 tex_text_params[] = {
- TeX_Slant,
- TeX_Space,
- TeX_Stretch,
- TeX_Shrink,
- TeX_XHeight,
- TeX_Quad,
- TeX_ExtraSp,
- 0
-};
-static uint32 tex_math_params[] = {
- TeX_Slant,
- TeX_Space,
- TeX_Stretch,
- TeX_Shrink,
- TeX_XHeight,
- TeX_Quad,
- TeX_MathSp,
- TeX_Num1,
- TeX_Num2,
- TeX_Num3,
- TeX_Denom1,
- TeX_Denom2,
- TeX_Sup1,
- TeX_Sup2,
- TeX_Sup3,
- TeX_Sub1,
- TeX_Sub2,
- TeX_SupDrop,
- TeX_SubDrop,
- TeX_Delim1,
- TeX_Delim2,
- TeX_AxisHeight,
- 0};
-static uint32 tex_mathext_params[] = {
- TeX_Slant,
- TeX_Space,
- TeX_Stretch,
- TeX_Shrink,
- TeX_XHeight,
- TeX_Quad,
- TeX_MathSp,
- TeX_DefRuleThick,
- TeX_BigOpSpace1,
- TeX_BigOpSpace2,
- TeX_BigOpSpace3,
- TeX_BigOpSpace4,
- TeX_BigOpSpace5,
- 0};
-
-/* ************************************************************************** */
-/* ************************* The 'TeX ' table ************************* */
-/* ************************* Output ************************* */
-/* ************************************************************************** */
-
-static void TeX_dumpFontParams(SplineFont *sf, struct TeX_subtabs *tex, struct alltabs *at ) {
- FILE *fprm;
- int i,pcnt;
- uint32 *tags;
-
- if ( sf->texdata.type==tex_unset )
-return;
- tex->subtabs[tex->next].tag = CHR('f','t','p','m');
- tex->subtabs[tex->next++].data = fprm = tmpfile2();
-
- putshort(fprm,0); /* sub-table version number */
- pcnt = sf->texdata.type==tex_math ? 22 : sf->texdata.type==tex_mathext ? 13 : 7;
- tags = sf->texdata.type==tex_math ? tex_math_params :
- sf->texdata.type==tex_mathext ? tex_mathext_params :
- tex_text_params;
- putshort(fprm,pcnt);
- for ( i=0; i<pcnt; ++i ) {
- putlong(fprm,tags[i]);
- putlong(fprm,sf->texdata.params[i]);
- }
- /* always aligned */
-}
-
-static void TeX_dumpHeightDepth(SplineFont *sf, struct TeX_subtabs *tex, struct alltabs *at ) {
- FILE *htdp;
- int i,j,k,last_g, gid;
- DBounds b;
-
- for ( i=at->gi.gcnt-1; i>=0; --i ) {
- gid = at->gi.bygid[i];
- if ( gid!=-1 && sf->glyphs[gid]!=NULL &&
- (sf->glyphs[gid]->tex_height!=TEX_UNDEF || sf->glyphs[gid]->tex_depth!=TEX_UNDEF))
- break;
- }
- if ( i<0 ) /* No height/depth info */
-return;
-
- tex->subtabs[tex->next].tag = CHR('h','t','d','p');
- tex->subtabs[tex->next++].data = htdp = tmpfile2();
-
- putshort(htdp,0); /* sub-table version number */
- putshort(htdp,sf->glyphs[gid]->ttf_glyph+1);/* data for this many glyphs */
-
- last_g = -1;
- for ( j=0; j<=i; ++j ) {
- gid = at->gi.bygid[j];
- if ( gid!=-1 && sf->glyphs[gid]!=NULL ) {
- SplineChar *sc = sf->glyphs[gid];
- for ( k=last_g+1; k<sc->ttf_glyph; ++k ) {
- putshort(htdp,0);
- putshort(htdp,0);
- }
- if ( sc->tex_depth==TEX_UNDEF || sc->tex_height==TEX_UNDEF )
- SplineCharFindBounds(sc,&b);
- putshort( htdp, sc->tex_height==TEX_UNDEF ? b.maxy : sc->tex_height );
- putshort( htdp, sc->tex_depth==TEX_UNDEF ? -b.miny : sc->tex_depth );
- last_g = sc->ttf_glyph;
- }
- }
- /* always aligned */
-}
-
-static void TeX_dumpItalicCorr(SplineFont *sf, struct TeX_subtabs *tex, struct alltabs *at ) {
- FILE *itlc;
- int i,j,k,last_g, gid;
-
- for ( i=at->gi.gcnt-1; i>=0; --i ) {
- gid = at->gi.bygid[i];
- if ( gid!=-1 && sf->glyphs[gid]!=NULL &&
- sf->glyphs[gid]->italic_correction!=TEX_UNDEF )
- break;
- }
- if ( i<0 ) /* No italic_correction info */
-return;
-
- tex->subtabs[tex->next].tag = CHR('i','t','l','c');
- tex->subtabs[tex->next++].data = itlc = tmpfile2();
-
- putshort(itlc,0); /* sub-table version number */
- putshort(itlc,sf->glyphs[gid]->ttf_glyph+1);/* data for this many glyphs */
-
- last_g = -1;
- for ( j=0; j<=i; ++j ) {
- gid = at->gi.bygid[j];
- if ( gid!=-1 && sf->glyphs[gid]!=NULL ) {
- SplineChar *sc = sf->glyphs[gid];
- for ( k=last_g+1; k<sc->ttf_glyph; ++k ) {
- putshort(itlc,0);
- putshort(itlc,0);
- }
- putshort( itlc, sc->italic_correction!=TEX_UNDEF ? sc->italic_correction :
- 0 );
- last_g = sc->ttf_glyph;
- }
- }
- /* always aligned */
-}
-
-void tex_dump(struct alltabs *at, SplineFont *sf) {
- struct TeX_subtabs tex;
- FILE *file;
- int i;
- uint32 offset;
-
- if ( !(at->gi.flags & ttf_flag_TeXtable ))
-return;
-
- memset(&tex,0,sizeof(tex));
- TeX_dumpFontParams(sf,&tex,at);
- TeX_dumpHeightDepth(sf,&tex,at);
- TeX_dumpItalicCorr(sf,&tex,at);
-
- if ( tex.next==0 )
-return; /* No subtables */
-
- at->tex = file = tmpfile2();
- putlong(file, 0x00010000); /* Version number */
- putlong(file, tex.next); /* sub-table count */
- offset = 2*sizeof(uint32) + 2*tex.next*sizeof(uint32);
- for ( i=0; i<tex.next; ++i ) {
- putlong(file,tex.subtabs[i].tag);
- putlong(file,offset);
- fseek(tex.subtabs[i].data,0,SEEK_END);
- tex.subtabs[i].offset = offset;
- offset += ftell(tex.subtabs[i].data);
- }
- for ( i=0; i<tex.next; ++i ) {
- fseek(tex.subtabs[i].data,0,SEEK_SET);
- ttfcopyfile(file,tex.subtabs[i].data,tex.subtabs[i].offset,"TeX-subtable");
- }
- if ( ftell(file)&2 )
- putshort(file,0);
- if ( ftell(file)&3 )
- IError("'TeX ' table not properly aligned");
- at->texlen = ftell(file);
-}
-
-/* ************************* The 'TeX ' table ************************* */
-/* ************************* Input ************************* */
-
-static void TeX_readFontParams(FILE *ttf,struct ttfinfo *info,uint32 base) {
- int i,pcnt;
- static uint32 *alltags[] = { tex_text_params, tex_math_params, tex_mathext_params };
- int j,k;
- uint32 tag;
- int32 val;
-
- fseek(ttf,base,SEEK_SET);
- if ( getushort(ttf)!=0 ) /* Don't know how to read this version of the subtable */
-return;
- pcnt = getushort(ttf);
- if ( pcnt==22 ) info->texdata.type = tex_math;
- else if ( pcnt==13 ) info->texdata.type = tex_mathext;
- else if ( pcnt>=7 ) info->texdata.type = tex_text;
- for ( i=0; i<pcnt; ++i ) {
- tag = getlong(ttf);
- val = getlong(ttf);
- for ( j=0; j<3; ++j ) {
- for ( k=0; alltags[j][k]!=0; ++k )
- if ( alltags[j][k]==tag )
- break;
- if ( alltags[j][k]==tag )
- break;
- }
- if ( j<3 )
- info->texdata.params[k] = val;
- }
-}
-
-static void TeX_readHeightDepth(FILE *ttf,struct ttfinfo *info,uint32 base) {
- int i,gcnt;
-
- fseek(ttf,base,SEEK_SET);
- if ( getushort(ttf)!=0 ) /* Don't know how to read this version of the subtable */
-return;
- gcnt = getushort(ttf);
- for ( i=0; i<gcnt && i<info->glyph_cnt; ++i ) {
- int h, d;
- h = getushort(ttf);
- d = getushort(ttf);
- if ( info->chars[i]!=NULL ) {
- info->chars[i]->tex_height = h;
- info->chars[i]->tex_depth = d;
- }
- }
-}
-
-static void TeX_readItalicCorr(FILE *ttf,struct ttfinfo *info,uint32 base) {
- int i,gcnt;
-
- fseek(ttf,base,SEEK_SET);
- if ( getushort(ttf)!=0 ) /* Don't know how to read this version of the subtable */
-return;
- gcnt = getushort(ttf);
- for ( i=0; i<gcnt && i<info->glyph_cnt; ++i ) {
- int ital;
- ital = getushort(ttf);
- if ( info->chars[i]!=NULL ) {
- info->chars[i]->italic_correction = ital;
- }
- }
-}
-
-void tex_read(FILE *ttf,struct ttfinfo *info) {
- int n,i;
- struct tagoff { uint32 tag, offset; } tagoff[MAX_SUBTABLE_TYPES+30];
-
- fseek(ttf,info->tex_start,SEEK_SET);
-
- if ( getlong(ttf)!=0x00010000 )
-return;
- n = getlong(ttf);
- if ( n>=MAX_SUBTABLE_TYPES+30 )
- n = MAX_SUBTABLE_TYPES+30;
- for ( i=0; i<n; ++i ) {
- tagoff[i].tag = getlong(ttf);
- tagoff[i].offset = getlong(ttf);
- }
- for ( i=0; i<n; ++i ) switch ( tagoff[i].tag ) {
- case CHR('f','t','p','m'):
- TeX_readFontParams(ttf,info,info->tex_start+tagoff[i].offset);
- break;
- case CHR('h','t','d','p'):
- TeX_readHeightDepth(ttf,info,info->tex_start+tagoff[i].offset);
- break;
- case CHR('i','t','l','c'):
- TeX_readItalicCorr(ttf,info,info->tex_start+tagoff[i].offset);
- break;
- default:
- LogError( _("Unknown subtable '%c%c%c%c' in 'TeX ' table, ignored\n"),
- tagoff[i].tag>>24, (tagoff[i].tag>>16)&0xff, (tagoff[i].tag>>8)&0xff, tagoff[i].tag&0xff );
- break;
- }
-}
-
-/* ************************************************************************** */
-/* ************************* The 'BDF ' table ************************* */
-/* ************************* Output ************************* */
-/* ************************************************************************** */
-
-/* the BDF table is used to store BDF properties so that we can do round trip */
-/* conversion from BDF->otb->BDF without losing anything. */
-/* Format:
- USHORT version : 'BDF' table version number, must be 0x0001
- USHORT strikeCount : number of strikes in table
- ULONG stringTable : offset (from start of BDF table) to string table
-
-followed by an array of 'strikeCount' descriptors that look like:
- USHORT ppem : vertical pixels-per-EM for this strike
- USHORT num_items : number of items (properties and atoms), max is 255
-
-this array is followed by 'strikeCount' value sets. Each "value set" is
-an array of (num_items) items that look like:
- ULONG item_name : offset in string table to item name
- USHORT item_type : item type: 0 => non-property string (e.g. COMMENT)
- 1 => non-property atom (e.g. FONT)
- 2 => non-property int32
- 3 => non-property uint32
- 0x10 => flag for a property, ored
- with above value types)
- ULONG item_value : item value.
- strings => an offset into the string table
- to the corresponding string,
- without the surrending double-quotes
-
- atoms => an offset into the string table
-
- integers => the corresponding 32-bit value
-Then the string table of null terminated strings. These strings should be in
-ASCII.
-*/
-
-/* ************************* The 'BDF ' table ************************* */
-/* ************************* Input ************************* */
-
-static char *getstring(FILE *ttf,long start) {
- long here = ftell(ttf);
- int len, ch;
- char *str, *pt;
-
- if ( here<0 ) return( NULL );
- fseek(ttf,start,SEEK_SET);
- for ( len=1; (ch=getc(ttf))>0 ; ++len );
- fseek(ttf,start,SEEK_SET);
- pt = str = malloc(len);
- while ( (ch=getc(ttf))>0 )
- *pt++ = ch;
- *pt = '\0';
- fseek(ttf,here,SEEK_SET);
-return( str );
-}
-
-/* COMMENTS get stored all in one lump by freetype. De-lump them */
-static int CheckForNewlines(BDFFont *bdf,int k) {
- char *pt, *start;
- int cnt, i;
-
- for ( cnt=0, pt = bdf->props[k].u.atom; *pt; ++pt )
- if ( *pt=='\n' )
- ++cnt;
- if ( cnt==0 )
-return( k );
-
- bdf->prop_cnt += cnt;
- bdf->props = realloc(bdf->props, bdf->prop_cnt*sizeof( BDFProperties ));
-
- pt = strchr(bdf->props[k].u.atom,'\n');
- *pt = '\0'; ++pt;
- for ( i=1; i<=cnt; ++i ) {
- start = pt;
- while ( *pt!='\n' && *pt!='\0' ) ++pt;
- bdf->props[k+i].name = copy(bdf->props[k].name);
- bdf->props[k+i].type = bdf->props[k].type;
- bdf->props[k+i].u.atom = copyn(start,pt-start);
- if ( *pt=='\n' ) ++pt;
- }
- pt = copy( bdf->props[k].u.atom );
- free( bdf->props[k].u.atom );
- bdf->props[k].u.atom = pt;
-return( k+cnt );
-}
-
-void ttf_bdf_read(FILE *ttf,struct ttfinfo *info) {
- int strike_cnt, i,j,k;
- long string_start;
- struct bdfinfo { BDFFont *bdf; int cnt; } *bdfinfo;
- BDFFont *bdf;
-
- if ( info->bdf_start==0 )
-return;
- fseek(ttf,info->bdf_start,SEEK_SET);
- if ( getushort(ttf)!=1 )
-return;
- strike_cnt = getushort(ttf);
- string_start = getlong(ttf) + info->bdf_start;
-
- bdfinfo = malloc(strike_cnt*sizeof(struct bdfinfo));
- for ( i=0; i<strike_cnt; ++i ) {
- int ppem, num_items;
- ppem = getushort(ttf);
- num_items = getushort(ttf);
- for ( bdf=info->bitmaps; bdf!=NULL; bdf=bdf->next )
- if ( bdf->pixelsize==ppem )
- break;
- bdfinfo[i].bdf = bdf;
- bdfinfo[i].cnt = num_items;
- }
-
- for ( i=0; i<strike_cnt; ++i ) {
- if ( (bdf = bdfinfo[i].bdf) ==NULL )
- fseek(ttf,10*bdfinfo[i].cnt,SEEK_CUR);
- else {
- bdf->prop_cnt = bdfinfo[i].cnt;
- bdf->props = malloc(bdf->prop_cnt*sizeof(BDFProperties));
- for ( j=k=0; j<bdfinfo[i].cnt; ++j, ++k ) {
- long name = getlong(ttf);
- int type = getushort(ttf);
- long value = getlong(ttf);
- bdf->props[k].type = type;
- bdf->props[k].name = getstring(ttf,string_start+name);
- switch ( type&~prt_property ) {
- case prt_int: case prt_uint:
- bdf->props[k].u.val = value;
- if ( strcmp(bdf->props[k].name,"FONT_ASCENT")==0 &&
- value<=bdf->pixelsize ) {
- bdf->ascent = value;
- bdf->descent = bdf->pixelsize-value;
- }
- break;
- case prt_string: case prt_atom:
- bdf->props[k].u.str = getstring(ttf,string_start+value);
- k = CheckForNewlines(bdf,k);
- break;
- }
- }
- }
- }
- free(bdfinfo);
-}
-
-
-/* ************************************************************************** */
-/* ************************* The 'FFTM' table ************************* */
-/* ************************* Output ************************* */
-/* ************************************************************************** */
-
-/* FontForge timestamp table */
-/* Contains: */
-/* date of fontforge sources */
-/* date of font's (not file's) creation */
-/* date of font's modification */
-int ttf_fftm_dump(SplineFont *sf,struct alltabs *at) {
- int32 results[2];
-
- at->fftmf = tmpfile2();
-
- putlong(at->fftmf,0x00000001); /* Version */
-
- cvt_unix_to_1904(LibFF_ModTime,results);
- putlong(at->fftmf,results[1]);
- putlong(at->fftmf,results[0]);
-
- cvt_unix_to_1904(sf->creationtime,results);
- putlong(at->fftmf,results[1]);
- putlong(at->fftmf,results[0]);
-
- cvt_unix_to_1904(sf->modificationtime,results);
- putlong(at->fftmf,results[1]);
- putlong(at->fftmf,results[0]);
-
- at->fftmlen = ftell(at->fftmf); /* had better be 7*4 */
- /* It will never be misaligned */
- if ( (at->fftmlen&1)!=0 )
- putc(0,at->fftmf);
- if ( ((at->fftmlen+1)&2)!=0 )
- putshort(at->fftmf,0);
-return( true );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/uiinterface.h b/dviware/dvisvgm/libs/ff-woff/fontforge/uiinterface.h
deleted file mode 100644
index c965de0fbc..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/uiinterface.h
+++ /dev/null
@@ -1,159 +0,0 @@
-/* Copyright (C) 2007-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _UIINTERFACE_H
-#define _UIINTERFACE_H
-# include <basics.h>
-#include <fontforge-config.h>
-
-/* This encapsulates a set of callbacks and stubs. The callbacks get activated*/
-/* when an event happens (a glyph in a font changes for example, then all */
-/* charviews looking at it must be updated), and the stubs provide some simple*/
-/* UI routines: Post an error, etc. */
-
-/* ************************************************************************** */
-/* Basic, low-level UI routines for events we discover deep inside script code*/
-/* ************************************************************************** */
-
-struct ui_interface {
- /* The following is used to post a fontforge internal error */
- /* currently it puts up a dlg displaying the error text */
- void (*ierror)(const char *fmt,...);
-
- /* The following is a simple dialog to alert the user that s/he has */
- /* made an error. Currently it posts a modal dlg and waits for the */
- /* user to dismiss it */
- /* The title argument is the window's title. The error argument is the */
- /* text of the message. It may contain printf formatting. It may contain */
- /* newlines to force line breaks -- even if it doesn't contain new lines */
- /* the routine will wrap the text if a line is too long */
- void (*post_error)(const char *title,const char *error,...);
-
- /* The following is used to post a warning message in such a way that it */
- /* will not impede the user. Currently it creates a little window at the */
- /* bottom right of the screen and writes successive messages there */
- void (*logwarning)(const char *fmt,...);
-
- /* The following is another way to post a warning message in such a way */
- /* that it will not impede the user. Currently it pops up a little */
- /* non-modal dlg which vanishes after a minute or two (or if the user */
- /* dismisses it, of course */
- void (*post_warning)(const char *title,const char *statement,...);
-
- /* Occasionally we we be deep in a non-ui routine and we find we must ask */
- /* the user a question. In this routine the choices are displayed as */
- /* buttons, one button is the default, another is a cancel choice */
- int (*ask)(const char *title, const char **answers,
- int def, int cancel,const char *question,...);
-
- /* Similar to the above, except here the choices are presented as a */
- /* scrolled list. Return -1 if the user cancels */
- int (*choose)(const char *title, const char **answers,
- int def, int cancel,const char *question,...);
-
- /* Multiple things can be selected, sel is an in/out parameter, one byte */
- /* per entry in the choice array. 0=> not selected, 1=>selected */
- int (*choose_multiple)(char *title, const char **choices,char *sel,
- int cnt, char *buts[2], const char *question,...);
-
- /* Here we want a string. We are passed a default answer (or NULL) */
- /* The return is NULL on cancel, otherwise a string which must be freed */
- char *(*ask_string)(const char *title,
- const char *def,const char *question,...);
- /* Same as above, except for entering a password */
- char *(*ask_password)(const char *title,
- const char *def,const char *question,...);
-
- /* The next two routines are only used in the python interface to provide */
- /* a python script running in ff a way to open a file */
- /* Arguments are a window title for the dlg, a default file (or NULL), and */
- /* an initial filter (unix wildcards) or NULL */
- char *(*open_file)(const char *title, const char *defaultfile,
- const char *initial_filter);
- char *(*saveas_file)(const char *title, const char *defaultfile,
- const char *initial_filter);
-
- /* These routines are for a progress indicator */
- void (*progress_start)(int delay, const char *title, const char *line1,
- const char *line2, int tot, int stages);
- void (*progress_end)(void);
- void (*progress_show)(void);
- void (*progress_enable_stop)(int);
- int (*progress_next)(void);
- int (*progress_next_stage)(void);
- int (*progress_increment)(int);
- void (*progress_change_line1)(const char *);
- void (*progress_change_line2)(const char *);
- void (*progress_pause)(void);
- void (*progress_resume)(void);
- void (*progress_change_stages)(int);
- void (*progress_change_total)(int);
- int (*progress_reset)(void);
-
- void (*allow_events)(void);
-
- /* pops up a dlg asking user whether to do remove overlap (and other stuff)*/
- /* when loading an eps file with strokes, etc. */
- int (*stroke_flags)(void);
-};
-extern struct ui_interface *ui_interface;
-
-#define IError (ui_interface->ierror)
-#define LogError (ui_interface->logwarning)
-#define ff_post_notice (ui_interface->post_warning)
-#define ff_post_error (ui_interface->post_error)
-#define ff_ask (ui_interface->ask)
-#define ff_choose (ui_interface->choose)
-#define ff_choose_multiple (ui_interface->choose_multiple)
-#define ff_ask_string (ui_interface->ask_string)
-#define ff_ask_password (ui_interface->ask_password)
-
-#define ff_open_filename (ui_interface->open_file)
-#define ff_save_filename (ui_interface->saveas_file)
-
-#define ff_progress_start_indicator (ui_interface->progress_start)
-#define ff_progress_end_indicator (ui_interface->progress_end)
-#define ff_progress_show (ui_interface->progress_show)
-#define ff_progress_enable_stop (ui_interface->progress_enable_stop)
-#define ff_progress_next (ui_interface->progress_next)
-#define ff_progress_next_stage (ui_interface->progress_next_stage)
-#define ff_progress_increment (ui_interface->progress_increment)
-#define ff_progress_change_line1 (ui_interface->progress_change_line1)
-#define ff_progress_change_line2 (ui_interface->progress_change_line2)
-#define ff_progress_pause_timer (ui_interface->progress_pause)
-#define ff_progress_resume_timer (ui_interface->progress_resume)
-#define ff_progress_change_stages (ui_interface->progress_change_stages)
-#define ff_progress_change_total (ui_interface->progress_change_total)
-#define ff_progress_reset (ui_interface->progress_reset)
-
-#define ff_progress_allow_events (ui_interface->allow_events)
-
-#define TTFNameIds (ui_interface->strid)
-#define MSLangString (ui_interface->mslang)
-
-#define PsStrokeFlagsDlg (ui_interface->stroke_flags)
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/unialt.c b/dviware/dvisvgm/libs/ff-woff/fontforge/unialt.c
deleted file mode 100644
index 1718338d63..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/unialt.c
+++ /dev/null
@@ -1,8937 +0,0 @@
-#include <chardata.h>
-
-/* This file was generated using the program 'makeutype' */
-
-static const unichar_t str_a0[] = { 0x0020, 0 };
-static const unichar_t str_a8[] = { 0x0020, 0x0308, 0 };
-static const unichar_t str_aa[] = { 0x0061, 0 };
-static const unichar_t str_af[] = { 0x0020, 0x0304, 0 };
-static const unichar_t str_b2[] = { 0x0032, 0 };
-static const unichar_t str_b3[] = { 0x0033, 0 };
-static const unichar_t str_b4[] = { 0x0020, 0x0301, 0 };
-static const unichar_t str_b5[] = { 0x03bc, 0 };
-static const unichar_t str_b8[] = { 0x0020, 0x0327, 0 };
-static const unichar_t str_b9[] = { 0x0031, 0 };
-static const unichar_t str_ba[] = { 0x006f, 0 };
-static const unichar_t str_bc[] = { 0x0031, 0x2044, 0x0034, 0 };
-static const unichar_t str_bd[] = { 0x0031, 0x2044, 0x0032, 0 };
-static const unichar_t str_be[] = { 0x0033, 0x2044, 0x0034, 0 };
-static const unichar_t str_c0[] = { 0x0041, 0x0300, 0 };
-static const unichar_t str_c1[] = { 0x0041, 0x0301, 0 };
-static const unichar_t str_c2[] = { 0x0041, 0x0302, 0 };
-static const unichar_t str_c3[] = { 0x0041, 0x0303, 0 };
-static const unichar_t str_c4[] = { 0x0041, 0x0308, 0 };
-static const unichar_t str_c5[] = { 0x0041, 0x030a, 0 };
-static const unichar_t str_c7[] = { 0x0043, 0x0327, 0 };
-static const unichar_t str_c8[] = { 0x0045, 0x0300, 0 };
-static const unichar_t str_c9[] = { 0x0045, 0x0301, 0 };
-static const unichar_t str_ca[] = { 0x0045, 0x0302, 0 };
-static const unichar_t str_cb[] = { 0x0045, 0x0308, 0 };
-static const unichar_t str_cc[] = { 0x0049, 0x0300, 0 };
-static const unichar_t str_cd[] = { 0x0049, 0x0301, 0 };
-static const unichar_t str_ce[] = { 0x0049, 0x0302, 0 };
-static const unichar_t str_cf[] = { 0x0049, 0x0308, 0 };
-static const unichar_t str_d1[] = { 0x004e, 0x0303, 0 };
-static const unichar_t str_d2[] = { 0x004f, 0x0300, 0 };
-static const unichar_t str_d3[] = { 0x004f, 0x0301, 0 };
-static const unichar_t str_d4[] = { 0x004f, 0x0302, 0 };
-static const unichar_t str_d5[] = { 0x004f, 0x0303, 0 };
-static const unichar_t str_d6[] = { 0x004f, 0x0308, 0 };
-static const unichar_t str_d9[] = { 0x0055, 0x0300, 0 };
-static const unichar_t str_da[] = { 0x0055, 0x0301, 0 };
-static const unichar_t str_db[] = { 0x0055, 0x0302, 0 };
-static const unichar_t str_dc[] = { 0x0055, 0x0308, 0 };
-static const unichar_t str_dd[] = { 0x0059, 0x0301, 0 };
-static const unichar_t str_e0[] = { 0x0061, 0x0300, 0 };
-static const unichar_t str_e1[] = { 0x0061, 0x0301, 0 };
-static const unichar_t str_e2[] = { 0x0061, 0x0302, 0 };
-static const unichar_t str_e3[] = { 0x0061, 0x0303, 0 };
-static const unichar_t str_e4[] = { 0x0061, 0x0308, 0 };
-static const unichar_t str_e5[] = { 0x0061, 0x030a, 0 };
-static const unichar_t str_e7[] = { 0x0063, 0x0327, 0 };
-static const unichar_t str_e8[] = { 0x0065, 0x0300, 0 };
-static const unichar_t str_e9[] = { 0x0065, 0x0301, 0 };
-static const unichar_t str_ea[] = { 0x0065, 0x0302, 0 };
-static const unichar_t str_eb[] = { 0x0065, 0x0308, 0 };
-static const unichar_t str_ec[] = { 0x0069, 0x0300, 0 };
-static const unichar_t str_ed[] = { 0x0069, 0x0301, 0 };
-static const unichar_t str_ee[] = { 0x0069, 0x0302, 0 };
-static const unichar_t str_ef[] = { 0x0069, 0x0308, 0 };
-static const unichar_t str_f1[] = { 0x006e, 0x0303, 0 };
-static const unichar_t str_f2[] = { 0x006f, 0x0300, 0 };
-static const unichar_t str_f3[] = { 0x006f, 0x0301, 0 };
-static const unichar_t str_f4[] = { 0x006f, 0x0302, 0 };
-static const unichar_t str_f5[] = { 0x006f, 0x0303, 0 };
-static const unichar_t str_f6[] = { 0x006f, 0x0308, 0 };
-static const unichar_t str_f9[] = { 0x0075, 0x0300, 0 };
-static const unichar_t str_fa[] = { 0x0075, 0x0301, 0 };
-static const unichar_t str_fb[] = { 0x0075, 0x0302, 0 };
-static const unichar_t str_fc[] = { 0x0075, 0x0308, 0 };
-static const unichar_t str_fd[] = { 0x0079, 0x0301, 0 };
-static const unichar_t str_ff[] = { 0x0079, 0x0308, 0 };
-static const unichar_t str_100[] = { 0x0041, 0x0304, 0 };
-static const unichar_t str_101[] = { 0x0061, 0x0304, 0 };
-static const unichar_t str_102[] = { 0x0041, 0x0306, 0 };
-static const unichar_t str_103[] = { 0x0061, 0x0306, 0 };
-static const unichar_t str_104[] = { 0x0041, 0x0328, 0 };
-static const unichar_t str_105[] = { 0x0061, 0x0328, 0 };
-static const unichar_t str_106[] = { 0x0043, 0x0301, 0 };
-static const unichar_t str_107[] = { 0x0063, 0x0301, 0 };
-static const unichar_t str_108[] = { 0x0043, 0x0302, 0 };
-static const unichar_t str_109[] = { 0x0063, 0x0302, 0 };
-static const unichar_t str_10a[] = { 0x0043, 0x0307, 0 };
-static const unichar_t str_10b[] = { 0x0063, 0x0307, 0 };
-static const unichar_t str_10c[] = { 0x0043, 0x030c, 0 };
-static const unichar_t str_10d[] = { 0x0063, 0x030c, 0 };
-static const unichar_t str_10e[] = { 0x0044, 0x030c, 0 };
-static const unichar_t str_10f[] = { 0x0064, 0x030c, 0 };
-static const unichar_t str_110[] = { 0x00d0, 0 };
-static const unichar_t str_112[] = { 0x0045, 0x0304, 0 };
-static const unichar_t str_113[] = { 0x0065, 0x0304, 0 };
-static const unichar_t str_114[] = { 0x0045, 0x0306, 0 };
-static const unichar_t str_115[] = { 0x0065, 0x0306, 0 };
-static const unichar_t str_116[] = { 0x0045, 0x0307, 0 };
-static const unichar_t str_117[] = { 0x0065, 0x0307, 0 };
-static const unichar_t str_118[] = { 0x0045, 0x0328, 0 };
-static const unichar_t str_119[] = { 0x0065, 0x0328, 0 };
-static const unichar_t str_11a[] = { 0x0045, 0x030c, 0 };
-static const unichar_t str_11b[] = { 0x0065, 0x030c, 0 };
-static const unichar_t str_11c[] = { 0x0047, 0x0302, 0 };
-static const unichar_t str_11d[] = { 0x0067, 0x0302, 0 };
-static const unichar_t str_11e[] = { 0x0047, 0x0306, 0 };
-static const unichar_t str_11f[] = { 0x0067, 0x0306, 0 };
-static const unichar_t str_120[] = { 0x0047, 0x0307, 0 };
-static const unichar_t str_121[] = { 0x0067, 0x0307, 0 };
-static const unichar_t str_122[] = { 0x0047, 0x0327, 0 };
-static const unichar_t str_123[] = { 0x0067, 0x0327, 0 };
-static const unichar_t str_124[] = { 0x0048, 0x0302, 0 };
-static const unichar_t str_125[] = { 0x0068, 0x0302, 0 };
-static const unichar_t str_128[] = { 0x0049, 0x0303, 0 };
-static const unichar_t str_129[] = { 0x0069, 0x0303, 0 };
-static const unichar_t str_12a[] = { 0x0049, 0x0304, 0 };
-static const unichar_t str_12b[] = { 0x0069, 0x0304, 0 };
-static const unichar_t str_12c[] = { 0x0049, 0x0306, 0 };
-static const unichar_t str_12d[] = { 0x0069, 0x0306, 0 };
-static const unichar_t str_12e[] = { 0x0049, 0x0328, 0 };
-static const unichar_t str_12f[] = { 0x0069, 0x0328, 0 };
-static const unichar_t str_130[] = { 0x0049, 0x0307, 0 };
-static const unichar_t str_132[] = { 0x0049, 0x004a, 0 };
-static const unichar_t str_133[] = { 0x0069, 0x006a, 0 };
-static const unichar_t str_134[] = { 0x004a, 0x0302, 0 };
-static const unichar_t str_135[] = { 0x006a, 0x0302, 0 };
-static const unichar_t str_136[] = { 0x004b, 0x0327, 0 };
-static const unichar_t str_137[] = { 0x006b, 0x0327, 0 };
-static const unichar_t str_138[] = { 0x03ba, 0 };
-static const unichar_t str_139[] = { 0x004c, 0x0301, 0 };
-static const unichar_t str_13a[] = { 0x006c, 0x0301, 0 };
-static const unichar_t str_13b[] = { 0x004c, 0x0327, 0 };
-static const unichar_t str_13c[] = { 0x006c, 0x0327, 0 };
-static const unichar_t str_13d[] = { 0x004c, 0x030c, 0 };
-static const unichar_t str_13e[] = { 0x006c, 0x030c, 0 };
-static const unichar_t str_13f[] = { 0x004c, 0x00b7, 0 };
-static const unichar_t str_140[] = { 0x006c, 0x00b7, 0 };
-static const unichar_t str_143[] = { 0x004e, 0x0301, 0 };
-static const unichar_t str_144[] = { 0x006e, 0x0301, 0 };
-static const unichar_t str_145[] = { 0x004e, 0x0327, 0 };
-static const unichar_t str_146[] = { 0x006e, 0x0327, 0 };
-static const unichar_t str_147[] = { 0x004e, 0x030c, 0 };
-static const unichar_t str_148[] = { 0x006e, 0x030c, 0 };
-static const unichar_t str_149[] = { 0x02bc, 0x006e, 0 };
-static const unichar_t str_14c[] = { 0x004f, 0x0304, 0 };
-static const unichar_t str_14d[] = { 0x006f, 0x0304, 0 };
-static const unichar_t str_14e[] = { 0x004f, 0x0306, 0 };
-static const unichar_t str_14f[] = { 0x006f, 0x0306, 0 };
-static const unichar_t str_150[] = { 0x004f, 0x030b, 0 };
-static const unichar_t str_151[] = { 0x006f, 0x030b, 0 };
-static const unichar_t str_152[] = { 0x004f, 0x0045, 0 };
-static const unichar_t str_153[] = { 0x006f, 0x0065, 0 };
-static const unichar_t str_154[] = { 0x0052, 0x0301, 0 };
-static const unichar_t str_155[] = { 0x0072, 0x0301, 0 };
-static const unichar_t str_156[] = { 0x0052, 0x0327, 0 };
-static const unichar_t str_157[] = { 0x0072, 0x0327, 0 };
-static const unichar_t str_158[] = { 0x0052, 0x030c, 0 };
-static const unichar_t str_159[] = { 0x0072, 0x030c, 0 };
-static const unichar_t str_15a[] = { 0x0053, 0x0301, 0 };
-static const unichar_t str_15b[] = { 0x0073, 0x0301, 0 };
-static const unichar_t str_15c[] = { 0x0053, 0x0302, 0 };
-static const unichar_t str_15d[] = { 0x0073, 0x0302, 0 };
-static const unichar_t str_15e[] = { 0x0053, 0x0327, 0 };
-static const unichar_t str_15f[] = { 0x0073, 0x0327, 0 };
-static const unichar_t str_160[] = { 0x0053, 0x030c, 0 };
-static const unichar_t str_161[] = { 0x0073, 0x030c, 0 };
-static const unichar_t str_162[] = { 0x0054, 0x0327, 0 };
-static const unichar_t str_163[] = { 0x0074, 0x0327, 0 };
-static const unichar_t str_164[] = { 0x0054, 0x030c, 0 };
-static const unichar_t str_165[] = { 0x0074, 0x030c, 0 };
-static const unichar_t str_168[] = { 0x0055, 0x0303, 0 };
-static const unichar_t str_169[] = { 0x0075, 0x0303, 0 };
-static const unichar_t str_16a[] = { 0x0055, 0x0304, 0 };
-static const unichar_t str_16b[] = { 0x0075, 0x0304, 0 };
-static const unichar_t str_16c[] = { 0x0055, 0x0306, 0 };
-static const unichar_t str_16d[] = { 0x0075, 0x0306, 0 };
-static const unichar_t str_16e[] = { 0x0055, 0x030a, 0 };
-static const unichar_t str_16f[] = { 0x0075, 0x030a, 0 };
-static const unichar_t str_170[] = { 0x0055, 0x030b, 0 };
-static const unichar_t str_171[] = { 0x0075, 0x030b, 0 };
-static const unichar_t str_172[] = { 0x0055, 0x0328, 0 };
-static const unichar_t str_173[] = { 0x0075, 0x0328, 0 };
-static const unichar_t str_174[] = { 0x0057, 0x0302, 0 };
-static const unichar_t str_175[] = { 0x0077, 0x0302, 0 };
-static const unichar_t str_176[] = { 0x0059, 0x0302, 0 };
-static const unichar_t str_177[] = { 0x0079, 0x0302, 0 };
-static const unichar_t str_178[] = { 0x0059, 0x0308, 0 };
-static const unichar_t str_179[] = { 0x005a, 0x0301, 0 };
-static const unichar_t str_17a[] = { 0x007a, 0x0301, 0 };
-static const unichar_t str_17b[] = { 0x005a, 0x0307, 0 };
-static const unichar_t str_17c[] = { 0x007a, 0x0307, 0 };
-static const unichar_t str_17d[] = { 0x005a, 0x030c, 0 };
-static const unichar_t str_17e[] = { 0x007a, 0x030c, 0 };
-static const unichar_t str_17f[] = { 0x0073, 0 };
-static const unichar_t str_182[] = { 0x0402, 0 };
-static const unichar_t str_189[] = { 0x00d0, 0 };
-static const unichar_t str_19e[] = { 0x03b7, 0 };
-static const unichar_t str_19f[] = { 0x0398, 0 };
-static const unichar_t str_1a0[] = { 0x004f, 0x031b, 0 };
-static const unichar_t str_1a1[] = { 0x006f, 0x031b, 0 };
-static const unichar_t str_1a9[] = { 0x03a3, 0 };
-static const unichar_t str_1af[] = { 0x0055, 0x031b, 0 };
-static const unichar_t str_1b0[] = { 0x0075, 0x031b, 0 };
-static const unichar_t str_1c0[] = { 0x007c, 0 };
-static const unichar_t str_1c1[] = { 0x007c, 0x007c, 0 };
-static const unichar_t str_1c4[] = { 0x0044, 0x017d, 0 };
-static const unichar_t str_1c5[] = { 0x0044, 0x017e, 0 };
-static const unichar_t str_1c6[] = { 0x0064, 0x017e, 0 };
-static const unichar_t str_1c7[] = { 0x004c, 0x004a, 0 };
-static const unichar_t str_1c8[] = { 0x004c, 0x006a, 0 };
-static const unichar_t str_1c9[] = { 0x006c, 0x006a, 0 };
-static const unichar_t str_1ca[] = { 0x004e, 0x004a, 0 };
-static const unichar_t str_1cb[] = { 0x004e, 0x006a, 0 };
-static const unichar_t str_1cc[] = { 0x006e, 0x006a, 0 };
-static const unichar_t str_1cd[] = { 0x0041, 0x030c, 0 };
-static const unichar_t str_1ce[] = { 0x0061, 0x030c, 0 };
-static const unichar_t str_1cf[] = { 0x0049, 0x030c, 0 };
-static const unichar_t str_1d0[] = { 0x0069, 0x030c, 0 };
-static const unichar_t str_1d1[] = { 0x004f, 0x030c, 0 };
-static const unichar_t str_1d2[] = { 0x006f, 0x030c, 0 };
-static const unichar_t str_1d3[] = { 0x0055, 0x030c, 0 };
-static const unichar_t str_1d4[] = { 0x0075, 0x030c, 0 };
-static const unichar_t str_1d5[] = { 0x00dc, 0x0304, 0 };
-static const unichar_t str_1d6[] = { 0x00fc, 0x0304, 0 };
-static const unichar_t str_1d7[] = { 0x00dc, 0x0301, 0 };
-static const unichar_t str_1d8[] = { 0x00fc, 0x0301, 0 };
-static const unichar_t str_1d9[] = { 0x00dc, 0x030c, 0 };
-static const unichar_t str_1da[] = { 0x00fc, 0x030c, 0 };
-static const unichar_t str_1db[] = { 0x00dc, 0x0300, 0 };
-static const unichar_t str_1dc[] = { 0x00fc, 0x0300, 0 };
-static const unichar_t str_1de[] = { 0x00c4, 0x0304, 0 };
-static const unichar_t str_1df[] = { 0x00e4, 0x0304, 0 };
-static const unichar_t str_1e0[] = { 0x0226, 0x0304, 0 };
-static const unichar_t str_1e1[] = { 0x0227, 0x0304, 0 };
-static const unichar_t str_1e2[] = { 0x00c6, 0x0304, 0 };
-static const unichar_t str_1e3[] = { 0x00e6, 0x0304, 0 };
-static const unichar_t str_1e6[] = { 0x0047, 0x030c, 0 };
-static const unichar_t str_1e7[] = { 0x0067, 0x030c, 0 };
-static const unichar_t str_1e8[] = { 0x004b, 0x030c, 0 };
-static const unichar_t str_1e9[] = { 0x006b, 0x030c, 0 };
-static const unichar_t str_1ea[] = { 0x004f, 0x0328, 0 };
-static const unichar_t str_1eb[] = { 0x006f, 0x0328, 0 };
-static const unichar_t str_1ec[] = { 0x01ea, 0x0304, 0 };
-static const unichar_t str_1ed[] = { 0x01eb, 0x0304, 0 };
-static const unichar_t str_1ee[] = { 0x01b7, 0x030c, 0 };
-static const unichar_t str_1ef[] = { 0x0292, 0x030c, 0 };
-static const unichar_t str_1f0[] = { 0x006a, 0x030c, 0 };
-static const unichar_t str_1f1[] = { 0x0044, 0x005a, 0 };
-static const unichar_t str_1f2[] = { 0x0044, 0x007a, 0 };
-static const unichar_t str_1f3[] = { 0x0064, 0x007a, 0 };
-static const unichar_t str_1f4[] = { 0x0047, 0x0301, 0 };
-static const unichar_t str_1f5[] = { 0x0067, 0x0301, 0 };
-static const unichar_t str_1f8[] = { 0x004e, 0x0300, 0 };
-static const unichar_t str_1f9[] = { 0x006e, 0x0300, 0 };
-static const unichar_t str_1fa[] = { 0x00c5, 0x0301, 0 };
-static const unichar_t str_1fb[] = { 0x00e5, 0x0301, 0 };
-static const unichar_t str_1fc[] = { 0x00c6, 0x0301, 0 };
-static const unichar_t str_1fd[] = { 0x00e6, 0x0301, 0 };
-static const unichar_t str_1fe[] = { 0x00d8, 0x0301, 0 };
-static const unichar_t str_1ff[] = { 0x00f8, 0x0301, 0 };
-static const unichar_t str_200[] = { 0x0041, 0x030f, 0 };
-static const unichar_t str_201[] = { 0x0061, 0x030f, 0 };
-static const unichar_t str_202[] = { 0x0041, 0x0311, 0 };
-static const unichar_t str_203[] = { 0x0061, 0x0311, 0 };
-static const unichar_t str_204[] = { 0x0045, 0x030f, 0 };
-static const unichar_t str_205[] = { 0x0065, 0x030f, 0 };
-static const unichar_t str_206[] = { 0x0045, 0x0311, 0 };
-static const unichar_t str_207[] = { 0x0065, 0x0311, 0 };
-static const unichar_t str_208[] = { 0x0049, 0x030f, 0 };
-static const unichar_t str_209[] = { 0x0069, 0x030f, 0 };
-static const unichar_t str_20a[] = { 0x0049, 0x0311, 0 };
-static const unichar_t str_20b[] = { 0x0069, 0x0311, 0 };
-static const unichar_t str_20c[] = { 0x004f, 0x030f, 0 };
-static const unichar_t str_20d[] = { 0x006f, 0x030f, 0 };
-static const unichar_t str_20e[] = { 0x004f, 0x0311, 0 };
-static const unichar_t str_20f[] = { 0x006f, 0x0311, 0 };
-static const unichar_t str_210[] = { 0x0052, 0x030f, 0 };
-static const unichar_t str_211[] = { 0x0072, 0x030f, 0 };
-static const unichar_t str_212[] = { 0x0052, 0x0311, 0 };
-static const unichar_t str_213[] = { 0x0072, 0x0311, 0 };
-static const unichar_t str_214[] = { 0x0055, 0x030f, 0 };
-static const unichar_t str_215[] = { 0x0075, 0x030f, 0 };
-static const unichar_t str_216[] = { 0x0055, 0x0311, 0 };
-static const unichar_t str_217[] = { 0x0075, 0x0311, 0 };
-static const unichar_t str_218[] = { 0x0053, 0x0326, 0 };
-static const unichar_t str_219[] = { 0x0073, 0x0326, 0 };
-static const unichar_t str_21a[] = { 0x0054, 0x0326, 0 };
-static const unichar_t str_21b[] = { 0x0074, 0x0326, 0 };
-static const unichar_t str_21e[] = { 0x0048, 0x030c, 0 };
-static const unichar_t str_21f[] = { 0x0068, 0x030c, 0 };
-static const unichar_t str_226[] = { 0x0041, 0x0307, 0 };
-static const unichar_t str_227[] = { 0x0061, 0x0307, 0 };
-static const unichar_t str_228[] = { 0x0045, 0x0327, 0 };
-static const unichar_t str_229[] = { 0x0065, 0x0327, 0 };
-static const unichar_t str_22a[] = { 0x00d6, 0x0304, 0 };
-static const unichar_t str_22b[] = { 0x00f6, 0x0304, 0 };
-static const unichar_t str_22c[] = { 0x00d5, 0x0304, 0 };
-static const unichar_t str_22d[] = { 0x00f5, 0x0304, 0 };
-static const unichar_t str_22e[] = { 0x004f, 0x0307, 0 };
-static const unichar_t str_22f[] = { 0x006f, 0x0307, 0 };
-static const unichar_t str_230[] = { 0x022e, 0x0304, 0 };
-static const unichar_t str_231[] = { 0x022f, 0x0304, 0 };
-static const unichar_t str_232[] = { 0x0059, 0x0304, 0 };
-static const unichar_t str_233[] = { 0x0079, 0x0304, 0 };
-static const unichar_t str_269[] = { 0x03b9, 0 };
-static const unichar_t str_278[] = { 0x03a6, 0 };
-static const unichar_t str_292[] = { 0x01b7, 0 };
-static const unichar_t str_299[] = { 0x0432, 0 };
-static const unichar_t str_29c[] = { 0x043d, 0 };
-static const unichar_t str_2b0[] = { 0x0068, 0 };
-static const unichar_t str_2b1[] = { 0x0266, 0 };
-static const unichar_t str_2b2[] = { 0x006a, 0 };
-static const unichar_t str_2b3[] = { 0x0072, 0 };
-static const unichar_t str_2b4[] = { 0x0279, 0 };
-static const unichar_t str_2b5[] = { 0x027b, 0 };
-static const unichar_t str_2b6[] = { 0x0281, 0 };
-static const unichar_t str_2b7[] = { 0x0077, 0 };
-static const unichar_t str_2b8[] = { 0x0079, 0 };
-static const unichar_t str_2b9[] = { 0x0027, 0 };
-static const unichar_t str_2ba[] = { 0x0022, 0 };
-static const unichar_t str_2bc[] = { 0x0027, 0 };
-static const unichar_t str_2c4[] = { 0x005e, 0 };
-static const unichar_t str_2c6[] = { 0x005e, 0 };
-static const unichar_t str_2c8[] = { 0x0027, 0 };
-static const unichar_t str_2d8[] = { 0x0020, 0x0306, 0 };
-static const unichar_t str_2d9[] = { 0x0020, 0x0307, 0 };
-static const unichar_t str_2da[] = { 0x0020, 0x030a, 0 };
-static const unichar_t str_2db[] = { 0x0020, 0x0328, 0 };
-static const unichar_t str_2dc[] = { 0x0020, 0x0303, 0 };
-static const unichar_t str_2dd[] = { 0x0020, 0x030b, 0 };
-static const unichar_t str_2e0[] = { 0x0263, 0 };
-static const unichar_t str_2e1[] = { 0x006c, 0 };
-static const unichar_t str_2e2[] = { 0x0073, 0 };
-static const unichar_t str_2e3[] = { 0x0078, 0 };
-static const unichar_t str_2e4[] = { 0x0295, 0 };
-static const unichar_t str_301[] = { 0x00b4, 0 };
-static const unichar_t str_302[] = { 0x005e, 0 };
-static const unichar_t str_303[] = { 0x007e, 0 };
-static const unichar_t str_308[] = { 0x00a8, 0 };
-static const unichar_t str_30a[] = { 0x00b0, 0 };
-static const unichar_t str_30b[] = { 0x0022, 0 };
-static const unichar_t str_30e[] = { 0x0022, 0 };
-static const unichar_t str_327[] = { 0x00b8, 0 };
-static const unichar_t str_340[] = { 0x0300, 0 };
-static const unichar_t str_341[] = { 0x0301, 0 };
-static const unichar_t str_343[] = { 0x0313, 0 };
-static const unichar_t str_344[] = { 0x0308, 0x0301, 0 };
-static const unichar_t str_374[] = { 0x02b9, 0 };
-static const unichar_t str_375[] = { 0x02cf, 0 };
-static const unichar_t str_37a[] = { 0x0020, 0x0345, 0 };
-static const unichar_t str_37e[] = { 0x003b, 0 };
-static const unichar_t str_384[] = { 0x0020, 0x0301, 0 };
-static const unichar_t str_385[] = { 0x00a8, 0x0301, 0 };
-static const unichar_t str_386[] = { 0x0391, 0x0301, 0 };
-static const unichar_t str_387[] = { 0x00b7, 0 };
-static const unichar_t str_388[] = { 0x0395, 0x0301, 0 };
-static const unichar_t str_389[] = { 0x0397, 0x0301, 0 };
-static const unichar_t str_38a[] = { 0x0399, 0x0301, 0 };
-static const unichar_t str_38c[] = { 0x039f, 0x0301, 0 };
-static const unichar_t str_38e[] = { 0x03a5, 0x0301, 0 };
-static const unichar_t str_38f[] = { 0x03a9, 0x0301, 0 };
-static const unichar_t str_390[] = { 0x03ca, 0x0301, 0 };
-static const unichar_t str_391[] = { 0x0041, 0 };
-static const unichar_t str_392[] = { 0x0042, 0 };
-static const unichar_t str_393[] = { 0x0413, 0 };
-static const unichar_t str_395[] = { 0x0045, 0 };
-static const unichar_t str_396[] = { 0x005a, 0 };
-static const unichar_t str_397[] = { 0x0048, 0 };
-static const unichar_t str_399[] = { 0x0049, 0 };
-static const unichar_t str_39a[] = { 0x004b, 0 };
-static const unichar_t str_39c[] = { 0x004d, 0 };
-static const unichar_t str_39d[] = { 0x004e, 0 };
-static const unichar_t str_39f[] = { 0x004f, 0 };
-static const unichar_t str_3a1[] = { 0x0050, 0 };
-static const unichar_t str_3a4[] = { 0x0054, 0 };
-static const unichar_t str_3a5[] = { 0x0059, 0 };
-static const unichar_t str_3a7[] = { 0x0058, 0 };
-static const unichar_t str_3aa[] = { 0x0399, 0x0308, 0 };
-static const unichar_t str_3ab[] = { 0x03a5, 0x0308, 0 };
-static const unichar_t str_3ac[] = { 0x03b1, 0x0301, 0 };
-static const unichar_t str_3ad[] = { 0x03b5, 0x0301, 0 };
-static const unichar_t str_3ae[] = { 0x03b7, 0x0301, 0 };
-static const unichar_t str_3af[] = { 0x03b9, 0x0301, 0 };
-static const unichar_t str_3b0[] = { 0x03cb, 0x0301, 0 };
-static const unichar_t str_3ba[] = { 0x0138, 0 };
-static const unichar_t str_3bf[] = { 0x006f, 0 };
-static const unichar_t str_3c1[] = { 0x0070, 0 };
-static const unichar_t str_3c7[] = { 0x0078, 0 };
-static const unichar_t str_3ca[] = { 0x03b9, 0x0308, 0 };
-static const unichar_t str_3cb[] = { 0x03c5, 0x0308, 0 };
-static const unichar_t str_3cc[] = { 0x03bf, 0x0301, 0 };
-static const unichar_t str_3cd[] = { 0x03c5, 0x0301, 0 };
-static const unichar_t str_3ce[] = { 0x03c9, 0x0301, 0 };
-static const unichar_t str_3d0[] = { 0x03b2, 0 };
-static const unichar_t str_3d1[] = { 0x03b8, 0 };
-static const unichar_t str_3d2[] = { 0x03a5, 0 };
-static const unichar_t str_3d3[] = { 0x03d2, 0x0301, 0 };
-static const unichar_t str_3d4[] = { 0x03d2, 0x0308, 0 };
-static const unichar_t str_3d5[] = { 0x03c6, 0 };
-static const unichar_t str_3d6[] = { 0x03c0, 0 };
-static const unichar_t str_3f0[] = { 0x03ba, 0 };
-static const unichar_t str_3f1[] = { 0x03c1, 0 };
-static const unichar_t str_3f2[] = { 0x03c2, 0 };
-static const unichar_t str_3f4[] = { 0x0398, 0 };
-static const unichar_t str_3f5[] = { 0x03b5, 0 };
-static const unichar_t str_3f9[] = { 0x03a3, 0 };
-static const unichar_t str_400[] = { 0x0415, 0x0300, 0 };
-static const unichar_t str_401[] = { 0x0415, 0x0308, 0 };
-static const unichar_t str_403[] = { 0x0413, 0x0301, 0 };
-static const unichar_t str_405[] = { 0x0053, 0 };
-static const unichar_t str_406[] = { 0x0049, 0 };
-static const unichar_t str_407[] = { 0x0406, 0x0308, 0 };
-static const unichar_t str_408[] = { 0x004a, 0 };
-static const unichar_t str_40c[] = { 0x041a, 0x0301, 0 };
-static const unichar_t str_40d[] = { 0x0418, 0x0300, 0 };
-static const unichar_t str_40e[] = { 0x0423, 0x0306, 0 };
-static const unichar_t str_410[] = { 0x0041, 0 };
-static const unichar_t str_412[] = { 0x0042, 0 };
-static const unichar_t str_413[] = { 0x0393, 0 };
-static const unichar_t str_415[] = { 0x0045, 0 };
-static const unichar_t str_419[] = { 0x0418, 0x0306, 0 };
-static const unichar_t str_41a[] = { 0x004b, 0 };
-static const unichar_t str_41c[] = { 0x004d, 0 };
-static const unichar_t str_41d[] = { 0x0048, 0 };
-static const unichar_t str_41e[] = { 0x004f, 0 };
-static const unichar_t str_41f[] = { 0x03a0, 0 };
-static const unichar_t str_420[] = { 0x0050, 0 };
-static const unichar_t str_421[] = { 0x0043, 0 };
-static const unichar_t str_422[] = { 0x0054, 0 };
-static const unichar_t str_424[] = { 0x03a6, 0 };
-static const unichar_t str_425[] = { 0x0058, 0 };
-static const unichar_t str_430[] = { 0x0061, 0 };
-static const unichar_t str_435[] = { 0x0065, 0 };
-static const unichar_t str_439[] = { 0x0438, 0x0306, 0 };
-static const unichar_t str_43a[] = { 0x03ba, 0 };
-static const unichar_t str_43e[] = { 0x006f, 0 };
-static const unichar_t str_43f[] = { 0x03c0, 0 };
-static const unichar_t str_440[] = { 0x0070, 0 };
-static const unichar_t str_441[] = { 0x0063, 0 };
-static const unichar_t str_443[] = { 0x0079, 0 };
-static const unichar_t str_445[] = { 0x0078, 0 };
-static const unichar_t str_450[] = { 0x0435, 0x0300, 0 };
-static const unichar_t str_451[] = { 0x0435, 0x0308, 0 };
-static const unichar_t str_453[] = { 0x0433, 0x0301, 0 };
-static const unichar_t str_455[] = { 0x0073, 0 };
-static const unichar_t str_456[] = { 0x0069, 0 };
-static const unichar_t str_457[] = { 0x0456, 0x0308, 0 };
-static const unichar_t str_458[] = { 0x006a, 0 };
-static const unichar_t str_45c[] = { 0x043a, 0x0301, 0 };
-static const unichar_t str_45d[] = { 0x0438, 0x0300, 0 };
-static const unichar_t str_45e[] = { 0x0443, 0x0306, 0 };
-static const unichar_t str_470[] = { 0x03a8, 0 };
-static const unichar_t str_471[] = { 0x03c8, 0 };
-static const unichar_t str_476[] = { 0x0474, 0x030f, 0 };
-static const unichar_t str_477[] = { 0x0475, 0x030f, 0 };
-static const unichar_t str_4ae[] = { 0x0059, 0 };
-static const unichar_t str_4c0[] = { 0x0049, 0 };
-static const unichar_t str_4c1[] = { 0x0416, 0x0306, 0 };
-static const unichar_t str_4c2[] = { 0x0436, 0x0306, 0 };
-static const unichar_t str_4d0[] = { 0x0410, 0x0306, 0 };
-static const unichar_t str_4d1[] = { 0x0430, 0x0306, 0 };
-static const unichar_t str_4d2[] = { 0x0410, 0x0308, 0 };
-static const unichar_t str_4d3[] = { 0x0430, 0x0308, 0 };
-static const unichar_t str_4d4[] = { 0x00c6, 0 };
-static const unichar_t str_4d5[] = { 0x00e6, 0 };
-static const unichar_t str_4d6[] = { 0x0415, 0x0306, 0 };
-static const unichar_t str_4d7[] = { 0x0435, 0x0306, 0 };
-static const unichar_t str_4da[] = { 0x04d8, 0x0308, 0 };
-static const unichar_t str_4db[] = { 0x04d9, 0x0308, 0 };
-static const unichar_t str_4dc[] = { 0x0416, 0x0308, 0 };
-static const unichar_t str_4dd[] = { 0x0436, 0x0308, 0 };
-static const unichar_t str_4de[] = { 0x0417, 0x0308, 0 };
-static const unichar_t str_4df[] = { 0x0437, 0x0308, 0 };
-static const unichar_t str_4e0[] = { 0x01b7, 0 };
-static const unichar_t str_4e1[] = { 0x0292, 0 };
-static const unichar_t str_4e2[] = { 0x0418, 0x0304, 0 };
-static const unichar_t str_4e3[] = { 0x0438, 0x0304, 0 };
-static const unichar_t str_4e4[] = { 0x0418, 0x0308, 0 };
-static const unichar_t str_4e5[] = { 0x0438, 0x0308, 0 };
-static const unichar_t str_4e6[] = { 0x041e, 0x0308, 0 };
-static const unichar_t str_4e7[] = { 0x043e, 0x0308, 0 };
-static const unichar_t str_4e8[] = { 0x0398, 0 };
-static const unichar_t str_4e9[] = { 0x03b8, 0 };
-static const unichar_t str_4ea[] = { 0x04e8, 0x0308, 0 };
-static const unichar_t str_4eb[] = { 0x04e9, 0x0308, 0 };
-static const unichar_t str_4ec[] = { 0x042d, 0x0308, 0 };
-static const unichar_t str_4ed[] = { 0x044d, 0x0308, 0 };
-static const unichar_t str_4ee[] = { 0x0423, 0x0304, 0 };
-static const unichar_t str_4ef[] = { 0x0443, 0x0304, 0 };
-static const unichar_t str_4f0[] = { 0x0423, 0x0308, 0 };
-static const unichar_t str_4f1[] = { 0x0443, 0x0308, 0 };
-static const unichar_t str_4f2[] = { 0x0423, 0x030b, 0 };
-static const unichar_t str_4f3[] = { 0x0443, 0x030b, 0 };
-static const unichar_t str_4f4[] = { 0x0427, 0x0308, 0 };
-static const unichar_t str_4f5[] = { 0x0447, 0x0308, 0 };
-static const unichar_t str_4f8[] = { 0x042b, 0x0308, 0 };
-static const unichar_t str_4f9[] = { 0x044b, 0x0308, 0 };
-static const unichar_t str_54f[] = { 0x0053, 0 };
-static const unichar_t str_555[] = { 0x004f, 0 };
-static const unichar_t str_570[] = { 0x0068, 0 };
-static const unichar_t str_578[] = { 0x006e, 0 };
-static const unichar_t str_57a[] = { 0x0270, 0 };
-static const unichar_t str_57d[] = { 0x0075, 0 };
-static const unichar_t str_581[] = { 0x0261, 0 };
-static const unichar_t str_582[] = { 0x0269, 0 };
-static const unichar_t str_584[] = { 0x0066, 0 };
-static const unichar_t str_585[] = { 0x006f, 0 };
-static const unichar_t str_587[] = { 0x0565, 0x0582, 0 };
-static const unichar_t str_589[] = { 0x003a, 0 };
-static const unichar_t str_5f0[] = { 0x05d5, 0x05d5, 0 };
-static const unichar_t str_5f1[] = { 0x05d5, 0x05d9, 0 };
-static const unichar_t str_5f2[] = { 0x05d9, 0x05d9, 0 };
-static const unichar_t str_60c[] = { 0x2018, 0 };
-static const unichar_t str_621[] = { 0xfe80, 0 };
-static const unichar_t str_622[] = { 0x0627, 0x0653, 0 };
-static const unichar_t str_623[] = { 0x0627, 0x0654, 0 };
-static const unichar_t str_624[] = { 0x0648, 0x0654, 0 };
-static const unichar_t str_625[] = { 0x0627, 0x0655, 0 };
-static const unichar_t str_626[] = { 0x064a, 0x0654, 0 };
-static const unichar_t str_627[] = { 0xfe8d, 0 };
-static const unichar_t str_628[] = { 0xfe8f, 0 };
-static const unichar_t str_629[] = { 0xfe93, 0 };
-static const unichar_t str_62a[] = { 0xfe95, 0 };
-static const unichar_t str_62b[] = { 0xfe99, 0 };
-static const unichar_t str_62c[] = { 0xfe9d, 0 };
-static const unichar_t str_62d[] = { 0xfea1, 0 };
-static const unichar_t str_62e[] = { 0xfea5, 0 };
-static const unichar_t str_62f[] = { 0xfea9, 0 };
-static const unichar_t str_630[] = { 0xfeab, 0 };
-static const unichar_t str_631[] = { 0xfead, 0 };
-static const unichar_t str_632[] = { 0xfeaf, 0 };
-static const unichar_t str_633[] = { 0xfeb1, 0 };
-static const unichar_t str_634[] = { 0xfeb5, 0 };
-static const unichar_t str_635[] = { 0xfeb9, 0 };
-static const unichar_t str_636[] = { 0xfebd, 0 };
-static const unichar_t str_637[] = { 0xfec1, 0 };
-static const unichar_t str_638[] = { 0xfec5, 0 };
-static const unichar_t str_639[] = { 0xfec9, 0 };
-static const unichar_t str_63a[] = { 0xfecd, 0 };
-static const unichar_t str_641[] = { 0xfed1, 0 };
-static const unichar_t str_642[] = { 0xfed5, 0 };
-static const unichar_t str_643[] = { 0xfed9, 0 };
-static const unichar_t str_644[] = { 0xfedd, 0 };
-static const unichar_t str_645[] = { 0xfee1, 0 };
-static const unichar_t str_646[] = { 0xfee5, 0 };
-static const unichar_t str_647[] = { 0xfee9, 0 };
-static const unichar_t str_648[] = { 0xfeed, 0 };
-static const unichar_t str_649[] = { 0xfeef, 0 };
-static const unichar_t str_64a[] = { 0xfef1, 0 };
-static const unichar_t str_66a[] = { 0x0025, 0 };
-static const unichar_t str_66c[] = { 0x002c, 0 };
-static const unichar_t str_66d[] = { 0x22c6, 0 };
-static const unichar_t str_671[] = { 0xfb50, 0 };
-static const unichar_t str_675[] = { 0x0627, 0x0674, 0 };
-static const unichar_t str_676[] = { 0x0648, 0x0674, 0 };
-static const unichar_t str_677[] = { 0x06c7, 0x0674, 0 };
-static const unichar_t str_678[] = { 0x064a, 0x0674, 0 };
-static const unichar_t str_679[] = { 0xfb66, 0 };
-static const unichar_t str_67a[] = { 0xfb5e, 0 };
-static const unichar_t str_67b[] = { 0xfb52, 0 };
-static const unichar_t str_67e[] = { 0xfb56, 0 };
-static const unichar_t str_67f[] = { 0xfb62, 0 };
-static const unichar_t str_680[] = { 0xfb5a, 0 };
-static const unichar_t str_683[] = { 0xfb76, 0 };
-static const unichar_t str_684[] = { 0xfb72, 0 };
-static const unichar_t str_686[] = { 0xfb7a, 0 };
-static const unichar_t str_687[] = { 0xfb7e, 0 };
-static const unichar_t str_688[] = { 0xfb88, 0 };
-static const unichar_t str_68c[] = { 0xfb84, 0 };
-static const unichar_t str_68d[] = { 0xfb82, 0 };
-static const unichar_t str_68e[] = { 0xfb86, 0 };
-static const unichar_t str_691[] = { 0xfb8c, 0 };
-static const unichar_t str_698[] = { 0xfb8a, 0 };
-static const unichar_t str_6a4[] = { 0xfb6a, 0 };
-static const unichar_t str_6a6[] = { 0xfb6e, 0 };
-static const unichar_t str_6a9[] = { 0xfb8e, 0 };
-static const unichar_t str_6ad[] = { 0xfbd3, 0 };
-static const unichar_t str_6af[] = { 0xfb92, 0 };
-static const unichar_t str_6b1[] = { 0xfb9a, 0 };
-static const unichar_t str_6b3[] = { 0xfb96, 0 };
-static const unichar_t str_6ba[] = { 0xfb9e, 0 };
-static const unichar_t str_6bb[] = { 0xfba0, 0 };
-static const unichar_t str_6be[] = { 0xfbaa, 0 };
-static const unichar_t str_6c0[] = { 0x06d5, 0x0654, 0 };
-static const unichar_t str_6c1[] = { 0xfba6, 0 };
-static const unichar_t str_6c2[] = { 0x06c1, 0x0654, 0 };
-static const unichar_t str_6c5[] = { 0xfbe0, 0 };
-static const unichar_t str_6c6[] = { 0xfbd9, 0 };
-static const unichar_t str_6c7[] = { 0xfbd7, 0 };
-static const unichar_t str_6c8[] = { 0xfbdb, 0 };
-static const unichar_t str_6c9[] = { 0xfbe2, 0 };
-static const unichar_t str_6cb[] = { 0xfbde, 0 };
-static const unichar_t str_6cc[] = { 0xfbfc, 0 };
-static const unichar_t str_6d0[] = { 0xfbe4, 0 };
-static const unichar_t str_6d2[] = { 0xfbae, 0 };
-static const unichar_t str_6d3[] = { 0x06d2, 0x0654, 0 };
-static const unichar_t str_6d4[] = { 0x00b7, 0 };
-static const unichar_t str_929[] = { 0x0928, 0x093c, 0 };
-static const unichar_t str_931[] = { 0x0930, 0x093c, 0 };
-static const unichar_t str_934[] = { 0x0933, 0x093c, 0 };
-static const unichar_t str_958[] = { 0x0915, 0x093c, 0 };
-static const unichar_t str_959[] = { 0x0916, 0x093c, 0 };
-static const unichar_t str_95a[] = { 0x0917, 0x093c, 0 };
-static const unichar_t str_95b[] = { 0x091c, 0x093c, 0 };
-static const unichar_t str_95c[] = { 0x0921, 0x093c, 0 };
-static const unichar_t str_95d[] = { 0x0922, 0x093c, 0 };
-static const unichar_t str_95e[] = { 0x092b, 0x093c, 0 };
-static const unichar_t str_95f[] = { 0x092f, 0x093c, 0 };
-static const unichar_t str_9cb[] = { 0x09c7, 0x09be, 0 };
-static const unichar_t str_9cc[] = { 0x09c7, 0x09d7, 0 };
-static const unichar_t str_9dc[] = { 0x09a1, 0x09bc, 0 };
-static const unichar_t str_9dd[] = { 0x09a2, 0x09bc, 0 };
-static const unichar_t str_9df[] = { 0x09af, 0x09bc, 0 };
-static const unichar_t str_a33[] = { 0x0a32, 0x0a3c, 0 };
-static const unichar_t str_a36[] = { 0x0a38, 0x0a3c, 0 };
-static const unichar_t str_a59[] = { 0x0a16, 0x0a3c, 0 };
-static const unichar_t str_a5a[] = { 0x0a17, 0x0a3c, 0 };
-static const unichar_t str_a5b[] = { 0x0a1c, 0x0a3c, 0 };
-static const unichar_t str_a5e[] = { 0x0a2b, 0x0a3c, 0 };
-static const unichar_t str_b48[] = { 0x0b47, 0x0b56, 0 };
-static const unichar_t str_b4b[] = { 0x0b47, 0x0b3e, 0 };
-static const unichar_t str_b4c[] = { 0x0b47, 0x0b57, 0 };
-static const unichar_t str_b5c[] = { 0x0b21, 0x0b3c, 0 };
-static const unichar_t str_b5d[] = { 0x0b22, 0x0b3c, 0 };
-static const unichar_t str_b94[] = { 0x0b92, 0x0bd7, 0 };
-static const unichar_t str_bca[] = { 0x0bc6, 0x0bbe, 0 };
-static const unichar_t str_bcb[] = { 0x0bc7, 0x0bbe, 0 };
-static const unichar_t str_bcc[] = { 0x0bc6, 0x0bd7, 0 };
-static const unichar_t str_c48[] = { 0x0c46, 0x0c56, 0 };
-static const unichar_t str_cc0[] = { 0x0cbf, 0x0cd5, 0 };
-static const unichar_t str_cc7[] = { 0x0cc6, 0x0cd5, 0 };
-static const unichar_t str_cc8[] = { 0x0cc6, 0x0cd6, 0 };
-static const unichar_t str_cca[] = { 0x0cc6, 0x0cc2, 0 };
-static const unichar_t str_ccb[] = { 0x0cca, 0x0cd5, 0 };
-static const unichar_t str_d4a[] = { 0x0d46, 0x0d3e, 0 };
-static const unichar_t str_d4b[] = { 0x0d47, 0x0d3e, 0 };
-static const unichar_t str_d4c[] = { 0x0d46, 0x0d57, 0 };
-static const unichar_t str_dda[] = { 0x0dd9, 0x0dca, 0 };
-static const unichar_t str_ddc[] = { 0x0dd9, 0x0dcf, 0 };
-static const unichar_t str_ddd[] = { 0x0ddc, 0x0dca, 0 };
-static const unichar_t str_dde[] = { 0x0dd9, 0x0ddf, 0 };
-static const unichar_t str_e33[] = { 0x0e4d, 0x0e32, 0 };
-static const unichar_t str_eb3[] = { 0x0ecd, 0x0eb2, 0 };
-static const unichar_t str_edc[] = { 0x0eab, 0x0e99, 0 };
-static const unichar_t str_edd[] = { 0x0eab, 0x0ea1, 0 };
-static const unichar_t str_f0c[] = { 0x0f0b, 0 };
-static const unichar_t str_f43[] = { 0x0f42, 0x0fb7, 0 };
-static const unichar_t str_f4d[] = { 0x0f4c, 0x0fb7, 0 };
-static const unichar_t str_f52[] = { 0x0f51, 0x0fb7, 0 };
-static const unichar_t str_f57[] = { 0x0f56, 0x0fb7, 0 };
-static const unichar_t str_f5c[] = { 0x0f5b, 0x0fb7, 0 };
-static const unichar_t str_f69[] = { 0x0f40, 0x0fb5, 0 };
-static const unichar_t str_f73[] = { 0x0f71, 0x0f72, 0 };
-static const unichar_t str_f75[] = { 0x0f71, 0x0f74, 0 };
-static const unichar_t str_f76[] = { 0x0fb2, 0x0f80, 0 };
-static const unichar_t str_f77[] = { 0x0fb2, 0x0f81, 0 };
-static const unichar_t str_f78[] = { 0x0fb3, 0x0f80, 0 };
-static const unichar_t str_f79[] = { 0x0fb3, 0x0f81, 0 };
-static const unichar_t str_f81[] = { 0x0f71, 0x0f80, 0 };
-static const unichar_t str_f93[] = { 0x0f92, 0x0fb7, 0 };
-static const unichar_t str_f9d[] = { 0x0f9c, 0x0fb7, 0 };
-static const unichar_t str_fa2[] = { 0x0fa1, 0x0fb7, 0 };
-static const unichar_t str_fa7[] = { 0x0fa6, 0x0fb7, 0 };
-static const unichar_t str_fac[] = { 0x0fab, 0x0fb7, 0 };
-static const unichar_t str_fb9[] = { 0x0f90, 0x0fb5, 0 };
-static const unichar_t str_1026[] = { 0x1025, 0x102e, 0 };
-static const unichar_t str_10fc[] = { 0x10dc, 0 };
-static const unichar_t str_1101[] = { 0x1100, 0x1100, 0 };
-static const unichar_t str_1104[] = { 0x1103, 0x1103, 0 };
-static const unichar_t str_1108[] = { 0x1107, 0x1107, 0 };
-static const unichar_t str_110a[] = { 0x1109, 0x1109, 0 };
-static const unichar_t str_110d[] = { 0x110c, 0x110c, 0 };
-static const unichar_t str_1113[] = { 0x1102, 0x1100, 0 };
-static const unichar_t str_1114[] = { 0x1102, 0x1102, 0 };
-static const unichar_t str_1115[] = { 0x1102, 0x1103, 0 };
-static const unichar_t str_1116[] = { 0x1102, 0x1107, 0 };
-static const unichar_t str_1117[] = { 0x1103, 0x1100, 0 };
-static const unichar_t str_1118[] = { 0x1105, 0x1102, 0 };
-static const unichar_t str_1119[] = { 0x1105, 0x1105, 0 };
-static const unichar_t str_111a[] = { 0x1105, 0x1112, 0 };
-static const unichar_t str_111b[] = { 0x1105, 0x110b, 0 };
-static const unichar_t str_111c[] = { 0x1106, 0x1107, 0 };
-static const unichar_t str_111d[] = { 0x1106, 0x110b, 0 };
-static const unichar_t str_111e[] = { 0x1107, 0x1100, 0 };
-static const unichar_t str_111f[] = { 0x1107, 0x1102, 0 };
-static const unichar_t str_1120[] = { 0x1107, 0x1103, 0 };
-static const unichar_t str_1121[] = { 0x1107, 0x1109, 0 };
-static const unichar_t str_1122[] = { 0x1107, 0x1109, 0x1100, 0 };
-static const unichar_t str_1123[] = { 0x1107, 0x1109, 0x1103, 0 };
-static const unichar_t str_1124[] = { 0x1107, 0x1109, 0x1107, 0 };
-static const unichar_t str_1125[] = { 0x1107, 0x1109, 0x1109, 0 };
-static const unichar_t str_1126[] = { 0x1107, 0x1109, 0x110c, 0 };
-static const unichar_t str_1127[] = { 0x1107, 0x110c, 0 };
-static const unichar_t str_1128[] = { 0x1107, 0x110e, 0 };
-static const unichar_t str_1129[] = { 0x1107, 0x1110, 0 };
-static const unichar_t str_112a[] = { 0x1107, 0x1111, 0 };
-static const unichar_t str_112b[] = { 0x1107, 0x110b, 0 };
-static const unichar_t str_112c[] = { 0x1107, 0x1107, 0x110b, 0 };
-static const unichar_t str_112d[] = { 0x1109, 0x1100, 0 };
-static const unichar_t str_112e[] = { 0x1109, 0x1102, 0 };
-static const unichar_t str_112f[] = { 0x1109, 0x1103, 0 };
-static const unichar_t str_1130[] = { 0x1109, 0x1105, 0 };
-static const unichar_t str_1131[] = { 0x1109, 0x1106, 0 };
-static const unichar_t str_1132[] = { 0x1109, 0x1107, 0 };
-static const unichar_t str_1133[] = { 0x1109, 0x1107, 0x1100, 0 };
-static const unichar_t str_1134[] = { 0x1109, 0x1109, 0x1109, 0 };
-static const unichar_t str_1135[] = { 0x1109, 0x110b, 0 };
-static const unichar_t str_1136[] = { 0x1109, 0x110c, 0 };
-static const unichar_t str_1137[] = { 0x1109, 0x110e, 0 };
-static const unichar_t str_1138[] = { 0x1109, 0x110f, 0 };
-static const unichar_t str_1139[] = { 0x1109, 0x1110, 0 };
-static const unichar_t str_113a[] = { 0x1109, 0x1111, 0 };
-static const unichar_t str_113b[] = { 0x1109, 0x1112, 0 };
-static const unichar_t str_113d[] = { 0x113c, 0x113c, 0 };
-static const unichar_t str_113f[] = { 0x113e, 0x113e, 0 };
-static const unichar_t str_1141[] = { 0x110b, 0x1100, 0 };
-static const unichar_t str_1142[] = { 0x110b, 0x1103, 0 };
-static const unichar_t str_1143[] = { 0x110b, 0x1106, 0 };
-static const unichar_t str_1144[] = { 0x110b, 0x1107, 0 };
-static const unichar_t str_1145[] = { 0x110b, 0x1109, 0 };
-static const unichar_t str_1146[] = { 0x110b, 0x1140, 0 };
-static const unichar_t str_1147[] = { 0x110b, 0x110b, 0 };
-static const unichar_t str_1148[] = { 0x110b, 0x110c, 0 };
-static const unichar_t str_1149[] = { 0x110b, 0x110e, 0 };
-static const unichar_t str_114a[] = { 0x110b, 0x1110, 0 };
-static const unichar_t str_114b[] = { 0x110b, 0x1111, 0 };
-static const unichar_t str_114d[] = { 0x110c, 0x110b, 0 };
-static const unichar_t str_114f[] = { 0x114e, 0x114e, 0 };
-static const unichar_t str_1151[] = { 0x1150, 0x1150, 0 };
-static const unichar_t str_1152[] = { 0x110e, 0x110f, 0 };
-static const unichar_t str_1153[] = { 0x110e, 0x1112, 0 };
-static const unichar_t str_1156[] = { 0x1111, 0x1107, 0 };
-static const unichar_t str_1157[] = { 0x1111, 0x110b, 0 };
-static const unichar_t str_1158[] = { 0x1112, 0x1112, 0 };
-static const unichar_t str_1162[] = { 0x1161, 0x1175, 0 };
-static const unichar_t str_1164[] = { 0x1163, 0x1175, 0 };
-static const unichar_t str_1166[] = { 0x1165, 0x1175, 0 };
-static const unichar_t str_1168[] = { 0x1167, 0x1175, 0 };
-static const unichar_t str_116a[] = { 0x1169, 0x1161, 0 };
-static const unichar_t str_116b[] = { 0x1169, 0x1162, 0 };
-static const unichar_t str_116c[] = { 0x1169, 0x1175, 0 };
-static const unichar_t str_116f[] = { 0x116e, 0x1165, 0 };
-static const unichar_t str_1170[] = { 0x116e, 0x1166, 0 };
-static const unichar_t str_1171[] = { 0x116e, 0x1175, 0 };
-static const unichar_t str_1174[] = { 0x1173, 0x1175, 0 };
-static const unichar_t str_1176[] = { 0x1161, 0x1169, 0 };
-static const unichar_t str_1177[] = { 0x1161, 0x116e, 0 };
-static const unichar_t str_1178[] = { 0x1163, 0x1169, 0 };
-static const unichar_t str_1179[] = { 0x1163, 0x116d, 0 };
-static const unichar_t str_117a[] = { 0x1165, 0x1169, 0 };
-static const unichar_t str_117b[] = { 0x1165, 0x116e, 0 };
-static const unichar_t str_117c[] = { 0x1165, 0x1173, 0 };
-static const unichar_t str_117d[] = { 0x1167, 0x1169, 0 };
-static const unichar_t str_117e[] = { 0x1167, 0x116e, 0 };
-static const unichar_t str_117f[] = { 0x1169, 0x1165, 0 };
-static const unichar_t str_1180[] = { 0x1169, 0x1166, 0 };
-static const unichar_t str_1181[] = { 0x1169, 0x1168, 0 };
-static const unichar_t str_1182[] = { 0x1169, 0x1169, 0 };
-static const unichar_t str_1183[] = { 0x1169, 0x116e, 0 };
-static const unichar_t str_1184[] = { 0x116d, 0x1163, 0 };
-static const unichar_t str_1185[] = { 0x116d, 0x1164, 0 };
-static const unichar_t str_1186[] = { 0x116d, 0x1167, 0 };
-static const unichar_t str_1187[] = { 0x116d, 0x1169, 0 };
-static const unichar_t str_1188[] = { 0x116d, 0x1175, 0 };
-static const unichar_t str_1189[] = { 0x116e, 0x1161, 0 };
-static const unichar_t str_118a[] = { 0x116e, 0x1162, 0 };
-static const unichar_t str_118b[] = { 0x116e, 0x1165, 0x1173, 0 };
-static const unichar_t str_118c[] = { 0x116e, 0x1168, 0 };
-static const unichar_t str_118d[] = { 0x116e, 0x116e, 0 };
-static const unichar_t str_118e[] = { 0x1172, 0x1161, 0 };
-static const unichar_t str_118f[] = { 0x1172, 0x1165, 0 };
-static const unichar_t str_1190[] = { 0x1172, 0x1166, 0 };
-static const unichar_t str_1191[] = { 0x1172, 0x1167, 0 };
-static const unichar_t str_1192[] = { 0x1172, 0x1168, 0 };
-static const unichar_t str_1193[] = { 0x1172, 0x116e, 0 };
-static const unichar_t str_1194[] = { 0x1172, 0x1175, 0 };
-static const unichar_t str_1195[] = { 0x1173, 0x116e, 0 };
-static const unichar_t str_1196[] = { 0x1173, 0x1173, 0 };
-static const unichar_t str_1197[] = { 0x1174, 0x116e, 0 };
-static const unichar_t str_1198[] = { 0x1175, 0x1161, 0 };
-static const unichar_t str_1199[] = { 0x1175, 0x1163, 0 };
-static const unichar_t str_119a[] = { 0x1175, 0x1169, 0 };
-static const unichar_t str_119b[] = { 0x1175, 0x116e, 0 };
-static const unichar_t str_119c[] = { 0x1175, 0x1173, 0 };
-static const unichar_t str_119d[] = { 0x1175, 0x119e, 0 };
-static const unichar_t str_119f[] = { 0x119e, 0x1165, 0 };
-static const unichar_t str_11a0[] = { 0x119e, 0x116e, 0 };
-static const unichar_t str_11a1[] = { 0x119e, 0x1175, 0 };
-static const unichar_t str_11a2[] = { 0x119e, 0x119e, 0 };
-static const unichar_t str_11a8[] = { 0x1100, 0 };
-static const unichar_t str_11a9[] = { 0x11a8, 0x11a8, 0 };
-static const unichar_t str_11aa[] = { 0x11a8, 0x11ba, 0 };
-static const unichar_t str_11ab[] = { 0x1102, 0 };
-static const unichar_t str_11ac[] = { 0x11ab, 0x11bd, 0 };
-static const unichar_t str_11ad[] = { 0x11ab, 0x11c2, 0 };
-static const unichar_t str_11ae[] = { 0x1103, 0 };
-static const unichar_t str_11af[] = { 0x1105, 0 };
-static const unichar_t str_11b0[] = { 0x11af, 0x11a8, 0 };
-static const unichar_t str_11b1[] = { 0x11af, 0x11b7, 0 };
-static const unichar_t str_11b2[] = { 0x11af, 0x11b8, 0 };
-static const unichar_t str_11b3[] = { 0x11af, 0x11ba, 0 };
-static const unichar_t str_11b4[] = { 0x11af, 0x11c0, 0 };
-static const unichar_t str_11b5[] = { 0x11af, 0x11c1, 0 };
-static const unichar_t str_11b6[] = { 0x11af, 0x11c2, 0 };
-static const unichar_t str_11b7[] = { 0x1106, 0 };
-static const unichar_t str_11b8[] = { 0x1107, 0 };
-static const unichar_t str_11b9[] = { 0x11b8, 0x11ba, 0 };
-static const unichar_t str_11ba[] = { 0x1109, 0 };
-static const unichar_t str_11bb[] = { 0x11ba, 0x11ba, 0 };
-static const unichar_t str_11bc[] = { 0x110b, 0 };
-static const unichar_t str_11bd[] = { 0x110c, 0 };
-static const unichar_t str_11be[] = { 0x110e, 0 };
-static const unichar_t str_11bf[] = { 0x110f, 0 };
-static const unichar_t str_11c0[] = { 0x1110, 0 };
-static const unichar_t str_11c1[] = { 0x1111, 0 };
-static const unichar_t str_11c2[] = { 0x1112, 0 };
-static const unichar_t str_11c3[] = { 0x11a8, 0x11af, 0 };
-static const unichar_t str_11c4[] = { 0x11a8, 0x11ba, 0x11a8, 0 };
-static const unichar_t str_11c5[] = { 0x11ab, 0x11a8, 0 };
-static const unichar_t str_11c6[] = { 0x11ab, 0x11ae, 0 };
-static const unichar_t str_11c7[] = { 0x11ab, 0x11ba, 0 };
-static const unichar_t str_11c8[] = { 0x11ab, 0x11eb, 0 };
-static const unichar_t str_11c9[] = { 0x11ab, 0x11c0, 0 };
-static const unichar_t str_11ca[] = { 0x11ae, 0x11a8, 0 };
-static const unichar_t str_11cb[] = { 0x11ae, 0x11af, 0 };
-static const unichar_t str_11cc[] = { 0x11af, 0x11a8, 0x11ba, 0 };
-static const unichar_t str_11cd[] = { 0x11af, 0x11ab, 0 };
-static const unichar_t str_11ce[] = { 0x11af, 0x11ae, 0 };
-static const unichar_t str_11cf[] = { 0x11af, 0x11ae, 0x11c2, 0 };
-static const unichar_t str_11d0[] = { 0x11af, 0x11af, 0 };
-static const unichar_t str_11d1[] = { 0x11af, 0x11b7, 0x11a8, 0 };
-static const unichar_t str_11d2[] = { 0x11af, 0x11b7, 0x11ba, 0 };
-static const unichar_t str_11d3[] = { 0x11af, 0x11b8, 0x11ba, 0 };
-static const unichar_t str_11d4[] = { 0x11af, 0x11b8, 0x11c2, 0 };
-static const unichar_t str_11d5[] = { 0x11af, 0x11e6, 0 };
-static const unichar_t str_11d6[] = { 0x11af, 0x11ba, 0x11ba, 0 };
-static const unichar_t str_11d7[] = { 0x11af, 0x11eb, 0 };
-static const unichar_t str_11d8[] = { 0x11af, 0x11bf, 0 };
-static const unichar_t str_11d9[] = { 0x11af, 0x11f9, 0 };
-static const unichar_t str_11da[] = { 0x11b7, 0x11a8, 0 };
-static const unichar_t str_11db[] = { 0x11b7, 0x11af, 0 };
-static const unichar_t str_11dc[] = { 0x11b7, 0x11b8, 0 };
-static const unichar_t str_11dd[] = { 0x11b7, 0x11ba, 0 };
-static const unichar_t str_11de[] = { 0x11b7, 0x11ba, 0x11ba, 0 };
-static const unichar_t str_11df[] = { 0x11b7, 0x11eb, 0 };
-static const unichar_t str_11e0[] = { 0x11b7, 0x11be, 0 };
-static const unichar_t str_11e1[] = { 0x11b7, 0x11c2, 0 };
-static const unichar_t str_11e2[] = { 0x11b7, 0x11bc, 0 };
-static const unichar_t str_11e3[] = { 0x11b8, 0x11af, 0 };
-static const unichar_t str_11e4[] = { 0x11b8, 0x11c1, 0 };
-static const unichar_t str_11e5[] = { 0x11b8, 0x11c2, 0 };
-static const unichar_t str_11e6[] = { 0x11b8, 0x11bc, 0 };
-static const unichar_t str_11e7[] = { 0x11ba, 0x11a8, 0 };
-static const unichar_t str_11e8[] = { 0x11ba, 0x11ae, 0 };
-static const unichar_t str_11e9[] = { 0x11ba, 0x11af, 0 };
-static const unichar_t str_11ea[] = { 0x11ba, 0x11b8, 0 };
-static const unichar_t str_11eb[] = { 0x1140, 0 };
-static const unichar_t str_11ec[] = { 0x11bc, 0x11a8, 0 };
-static const unichar_t str_11ed[] = { 0x11bc, 0x11a8, 0x11a8, 0 };
-static const unichar_t str_11ee[] = { 0x11bc, 0x11bc, 0 };
-static const unichar_t str_11ef[] = { 0x11bc, 0x11bf, 0 };
-static const unichar_t str_11f0[] = { 0x114c, 0 };
-static const unichar_t str_11f1[] = { 0x11f0, 0x11ba, 0 };
-static const unichar_t str_11f2[] = { 0x11f0, 0x11eb, 0 };
-static const unichar_t str_11f3[] = { 0x11c1, 0x11b8, 0 };
-static const unichar_t str_11f4[] = { 0x11c1, 0x11bc, 0 };
-static const unichar_t str_11f5[] = { 0x11c2, 0x11ab, 0 };
-static const unichar_t str_11f6[] = { 0x11c2, 0x11af, 0 };
-static const unichar_t str_11f7[] = { 0x11c2, 0x11b7, 0 };
-static const unichar_t str_11f8[] = { 0x11c2, 0x11b8, 0 };
-static const unichar_t str_11f9[] = { 0x1159, 0 };
-static const unichar_t str_13a0[] = { 0x0044, 0 };
-static const unichar_t str_13a1[] = { 0x0052, 0 };
-static const unichar_t str_13a2[] = { 0x0054, 0 };
-static const unichar_t str_13a9[] = { 0x0423, 0 };
-static const unichar_t str_13aa[] = { 0x0041, 0 };
-static const unichar_t str_13ab[] = { 0x004a, 0 };
-static const unichar_t str_13ac[] = { 0x0045, 0 };
-static const unichar_t str_13b1[] = { 0x0393, 0 };
-static const unichar_t str_13b3[] = { 0x0057, 0 };
-static const unichar_t str_13b7[] = { 0x004d, 0 };
-static const unichar_t str_13bb[] = { 0x0048, 0 };
-static const unichar_t str_13be[] = { 0x0398, 0 };
-static const unichar_t str_13c0[] = { 0x0047, 0 };
-static const unichar_t str_13c2[] = { 0x0068, 0 };
-static const unichar_t str_13c3[] = { 0x005a, 0 };
-static const unichar_t str_13cf[] = { 0x042c, 0 };
-static const unichar_t str_13d9[] = { 0x0056, 0 };
-static const unichar_t str_13da[] = { 0x0053, 0 };
-static const unichar_t str_13de[] = { 0x004c, 0 };
-static const unichar_t str_13df[] = { 0x0043, 0 };
-static const unichar_t str_13e2[] = { 0x0050, 0 };
-static const unichar_t str_13e6[] = { 0x004b, 0 };
-static const unichar_t str_13f4[] = { 0x0042, 0 };
-static const unichar_t str_1b06[] = { 0x1b05, 0x1b35, 0 };
-static const unichar_t str_1b08[] = { 0x1b07, 0x1b35, 0 };
-static const unichar_t str_1b0a[] = { 0x1b09, 0x1b35, 0 };
-static const unichar_t str_1b0c[] = { 0x1b0b, 0x1b35, 0 };
-static const unichar_t str_1b0e[] = { 0x1b0d, 0x1b35, 0 };
-static const unichar_t str_1b12[] = { 0x1b11, 0x1b35, 0 };
-static const unichar_t str_1b3b[] = { 0x1b3a, 0x1b35, 0 };
-static const unichar_t str_1b3d[] = { 0x1b3c, 0x1b35, 0 };
-static const unichar_t str_1b40[] = { 0x1b3e, 0x1b35, 0 };
-static const unichar_t str_1b41[] = { 0x1b3f, 0x1b35, 0 };
-static const unichar_t str_1b43[] = { 0x1b42, 0x1b35, 0 };
-static const unichar_t str_1d2c[] = { 0x0041, 0 };
-static const unichar_t str_1d2d[] = { 0x00c6, 0 };
-static const unichar_t str_1d2e[] = { 0x0042, 0 };
-static const unichar_t str_1d30[] = { 0x0044, 0 };
-static const unichar_t str_1d31[] = { 0x0045, 0 };
-static const unichar_t str_1d32[] = { 0x018e, 0 };
-static const unichar_t str_1d33[] = { 0x0047, 0 };
-static const unichar_t str_1d34[] = { 0x0048, 0 };
-static const unichar_t str_1d35[] = { 0x0049, 0 };
-static const unichar_t str_1d36[] = { 0x004a, 0 };
-static const unichar_t str_1d37[] = { 0x004b, 0 };
-static const unichar_t str_1d38[] = { 0x004c, 0 };
-static const unichar_t str_1d39[] = { 0x004d, 0 };
-static const unichar_t str_1d3a[] = { 0x004e, 0 };
-static const unichar_t str_1d3c[] = { 0x004f, 0 };
-static const unichar_t str_1d3d[] = { 0x0222, 0 };
-static const unichar_t str_1d3e[] = { 0x0050, 0 };
-static const unichar_t str_1d3f[] = { 0x0052, 0 };
-static const unichar_t str_1d40[] = { 0x0054, 0 };
-static const unichar_t str_1d41[] = { 0x0055, 0 };
-static const unichar_t str_1d42[] = { 0x0057, 0 };
-static const unichar_t str_1d43[] = { 0x0061, 0 };
-static const unichar_t str_1d44[] = { 0x0250, 0 };
-static const unichar_t str_1d45[] = { 0x0251, 0 };
-static const unichar_t str_1d46[] = { 0x1d02, 0 };
-static const unichar_t str_1d47[] = { 0x0062, 0 };
-static const unichar_t str_1d48[] = { 0x0064, 0 };
-static const unichar_t str_1d49[] = { 0x0065, 0 };
-static const unichar_t str_1d4a[] = { 0x0259, 0 };
-static const unichar_t str_1d4b[] = { 0x025b, 0 };
-static const unichar_t str_1d4c[] = { 0x025c, 0 };
-static const unichar_t str_1d4d[] = { 0x0067, 0 };
-static const unichar_t str_1d4f[] = { 0x006b, 0 };
-static const unichar_t str_1d50[] = { 0x006d, 0 };
-static const unichar_t str_1d51[] = { 0x014b, 0 };
-static const unichar_t str_1d52[] = { 0x006f, 0 };
-static const unichar_t str_1d53[] = { 0x0254, 0 };
-static const unichar_t str_1d54[] = { 0x1d16, 0 };
-static const unichar_t str_1d55[] = { 0x1d17, 0 };
-static const unichar_t str_1d56[] = { 0x0070, 0 };
-static const unichar_t str_1d57[] = { 0x0074, 0 };
-static const unichar_t str_1d58[] = { 0x0075, 0 };
-static const unichar_t str_1d59[] = { 0x1d1d, 0 };
-static const unichar_t str_1d5a[] = { 0x026f, 0 };
-static const unichar_t str_1d5b[] = { 0x0076, 0 };
-static const unichar_t str_1d5c[] = { 0x1d25, 0 };
-static const unichar_t str_1d5d[] = { 0x03b2, 0 };
-static const unichar_t str_1d5e[] = { 0x03b3, 0 };
-static const unichar_t str_1d5f[] = { 0x03b4, 0 };
-static const unichar_t str_1d60[] = { 0x03c6, 0 };
-static const unichar_t str_1d61[] = { 0x03c7, 0 };
-static const unichar_t str_1d62[] = { 0x0069, 0 };
-static const unichar_t str_1d63[] = { 0x0072, 0 };
-static const unichar_t str_1d64[] = { 0x0075, 0 };
-static const unichar_t str_1d65[] = { 0x0076, 0 };
-static const unichar_t str_1d66[] = { 0x03b2, 0 };
-static const unichar_t str_1d67[] = { 0x03b3, 0 };
-static const unichar_t str_1d68[] = { 0x03c1, 0 };
-static const unichar_t str_1d69[] = { 0x03c6, 0 };
-static const unichar_t str_1d6a[] = { 0x03c7, 0 };
-static const unichar_t str_1d78[] = { 0x043d, 0 };
-static const unichar_t str_1d9b[] = { 0x0252, 0 };
-static const unichar_t str_1d9c[] = { 0x0063, 0 };
-static const unichar_t str_1d9d[] = { 0x0255, 0 };
-static const unichar_t str_1d9e[] = { 0x00f0, 0 };
-static const unichar_t str_1d9f[] = { 0x025c, 0 };
-static const unichar_t str_1da0[] = { 0x0066, 0 };
-static const unichar_t str_1da1[] = { 0x025f, 0 };
-static const unichar_t str_1da2[] = { 0x0261, 0 };
-static const unichar_t str_1da3[] = { 0x0265, 0 };
-static const unichar_t str_1da4[] = { 0x0268, 0 };
-static const unichar_t str_1da5[] = { 0x0269, 0 };
-static const unichar_t str_1da6[] = { 0x026a, 0 };
-static const unichar_t str_1da7[] = { 0x1d7b, 0 };
-static const unichar_t str_1da8[] = { 0x029d, 0 };
-static const unichar_t str_1da9[] = { 0x026d, 0 };
-static const unichar_t str_1daa[] = { 0x1d85, 0 };
-static const unichar_t str_1dab[] = { 0x029f, 0 };
-static const unichar_t str_1dac[] = { 0x0271, 0 };
-static const unichar_t str_1dad[] = { 0x0270, 0 };
-static const unichar_t str_1dae[] = { 0x0272, 0 };
-static const unichar_t str_1daf[] = { 0x0273, 0 };
-static const unichar_t str_1db0[] = { 0x0274, 0 };
-static const unichar_t str_1db1[] = { 0x0275, 0 };
-static const unichar_t str_1db2[] = { 0x0278, 0 };
-static const unichar_t str_1db3[] = { 0x0282, 0 };
-static const unichar_t str_1db4[] = { 0x0283, 0 };
-static const unichar_t str_1db5[] = { 0x01ab, 0 };
-static const unichar_t str_1db6[] = { 0x0289, 0 };
-static const unichar_t str_1db7[] = { 0x028a, 0 };
-static const unichar_t str_1db8[] = { 0x1d1c, 0 };
-static const unichar_t str_1db9[] = { 0x028b, 0 };
-static const unichar_t str_1dba[] = { 0x028c, 0 };
-static const unichar_t str_1dbb[] = { 0x007a, 0 };
-static const unichar_t str_1dbc[] = { 0x0290, 0 };
-static const unichar_t str_1dbd[] = { 0x0291, 0 };
-static const unichar_t str_1dbe[] = { 0x0292, 0 };
-static const unichar_t str_1dbf[] = { 0x03b8, 0 };
-static const unichar_t str_1e00[] = { 0x0041, 0x0325, 0 };
-static const unichar_t str_1e01[] = { 0x0061, 0x0325, 0 };
-static const unichar_t str_1e02[] = { 0x0042, 0x0307, 0 };
-static const unichar_t str_1e03[] = { 0x0062, 0x0307, 0 };
-static const unichar_t str_1e04[] = { 0x0042, 0x0323, 0 };
-static const unichar_t str_1e05[] = { 0x0062, 0x0323, 0 };
-static const unichar_t str_1e06[] = { 0x0042, 0x0331, 0 };
-static const unichar_t str_1e07[] = { 0x0062, 0x0331, 0 };
-static const unichar_t str_1e08[] = { 0x00c7, 0x0301, 0 };
-static const unichar_t str_1e09[] = { 0x00e7, 0x0301, 0 };
-static const unichar_t str_1e0a[] = { 0x0044, 0x0307, 0 };
-static const unichar_t str_1e0b[] = { 0x0064, 0x0307, 0 };
-static const unichar_t str_1e0c[] = { 0x0044, 0x0323, 0 };
-static const unichar_t str_1e0d[] = { 0x0064, 0x0323, 0 };
-static const unichar_t str_1e0e[] = { 0x0044, 0x0331, 0 };
-static const unichar_t str_1e0f[] = { 0x0064, 0x0331, 0 };
-static const unichar_t str_1e10[] = { 0x0044, 0x0327, 0 };
-static const unichar_t str_1e11[] = { 0x0064, 0x0327, 0 };
-static const unichar_t str_1e12[] = { 0x0044, 0x032d, 0 };
-static const unichar_t str_1e13[] = { 0x0064, 0x032d, 0 };
-static const unichar_t str_1e14[] = { 0x0112, 0x0300, 0 };
-static const unichar_t str_1e15[] = { 0x0113, 0x0300, 0 };
-static const unichar_t str_1e16[] = { 0x0112, 0x0301, 0 };
-static const unichar_t str_1e17[] = { 0x0113, 0x0301, 0 };
-static const unichar_t str_1e18[] = { 0x0045, 0x032d, 0 };
-static const unichar_t str_1e19[] = { 0x0065, 0x032d, 0 };
-static const unichar_t str_1e1a[] = { 0x0045, 0x0330, 0 };
-static const unichar_t str_1e1b[] = { 0x0065, 0x0330, 0 };
-static const unichar_t str_1e1c[] = { 0x0228, 0x0306, 0 };
-static const unichar_t str_1e1d[] = { 0x0229, 0x0306, 0 };
-static const unichar_t str_1e1e[] = { 0x0046, 0x0307, 0 };
-static const unichar_t str_1e1f[] = { 0x0066, 0x0307, 0 };
-static const unichar_t str_1e20[] = { 0x0047, 0x0304, 0 };
-static const unichar_t str_1e21[] = { 0x0067, 0x0304, 0 };
-static const unichar_t str_1e22[] = { 0x0048, 0x0307, 0 };
-static const unichar_t str_1e23[] = { 0x0068, 0x0307, 0 };
-static const unichar_t str_1e24[] = { 0x0048, 0x0323, 0 };
-static const unichar_t str_1e25[] = { 0x0068, 0x0323, 0 };
-static const unichar_t str_1e26[] = { 0x0048, 0x0308, 0 };
-static const unichar_t str_1e27[] = { 0x0068, 0x0308, 0 };
-static const unichar_t str_1e28[] = { 0x0048, 0x0327, 0 };
-static const unichar_t str_1e29[] = { 0x0068, 0x0327, 0 };
-static const unichar_t str_1e2a[] = { 0x0048, 0x032e, 0 };
-static const unichar_t str_1e2b[] = { 0x0068, 0x032e, 0 };
-static const unichar_t str_1e2c[] = { 0x0049, 0x0330, 0 };
-static const unichar_t str_1e2d[] = { 0x0069, 0x0330, 0 };
-static const unichar_t str_1e2e[] = { 0x00cf, 0x0301, 0 };
-static const unichar_t str_1e2f[] = { 0x00ef, 0x0301, 0 };
-static const unichar_t str_1e30[] = { 0x004b, 0x0301, 0 };
-static const unichar_t str_1e31[] = { 0x006b, 0x0301, 0 };
-static const unichar_t str_1e32[] = { 0x004b, 0x0323, 0 };
-static const unichar_t str_1e33[] = { 0x006b, 0x0323, 0 };
-static const unichar_t str_1e34[] = { 0x004b, 0x0331, 0 };
-static const unichar_t str_1e35[] = { 0x006b, 0x0331, 0 };
-static const unichar_t str_1e36[] = { 0x004c, 0x0323, 0 };
-static const unichar_t str_1e37[] = { 0x006c, 0x0323, 0 };
-static const unichar_t str_1e38[] = { 0x1e36, 0x0304, 0 };
-static const unichar_t str_1e39[] = { 0x1e37, 0x0304, 0 };
-static const unichar_t str_1e3a[] = { 0x004c, 0x0331, 0 };
-static const unichar_t str_1e3b[] = { 0x006c, 0x0331, 0 };
-static const unichar_t str_1e3c[] = { 0x004c, 0x032d, 0 };
-static const unichar_t str_1e3d[] = { 0x006c, 0x032d, 0 };
-static const unichar_t str_1e3e[] = { 0x004d, 0x0301, 0 };
-static const unichar_t str_1e3f[] = { 0x006d, 0x0301, 0 };
-static const unichar_t str_1e40[] = { 0x004d, 0x0307, 0 };
-static const unichar_t str_1e41[] = { 0x006d, 0x0307, 0 };
-static const unichar_t str_1e42[] = { 0x004d, 0x0323, 0 };
-static const unichar_t str_1e43[] = { 0x006d, 0x0323, 0 };
-static const unichar_t str_1e44[] = { 0x004e, 0x0307, 0 };
-static const unichar_t str_1e45[] = { 0x006e, 0x0307, 0 };
-static const unichar_t str_1e46[] = { 0x004e, 0x0323, 0 };
-static const unichar_t str_1e47[] = { 0x006e, 0x0323, 0 };
-static const unichar_t str_1e48[] = { 0x004e, 0x0331, 0 };
-static const unichar_t str_1e49[] = { 0x006e, 0x0331, 0 };
-static const unichar_t str_1e4a[] = { 0x004e, 0x032d, 0 };
-static const unichar_t str_1e4b[] = { 0x006e, 0x032d, 0 };
-static const unichar_t str_1e4c[] = { 0x00d5, 0x0301, 0 };
-static const unichar_t str_1e4d[] = { 0x00f5, 0x0301, 0 };
-static const unichar_t str_1e4e[] = { 0x00d5, 0x0308, 0 };
-static const unichar_t str_1e4f[] = { 0x00f5, 0x0308, 0 };
-static const unichar_t str_1e50[] = { 0x014c, 0x0300, 0 };
-static const unichar_t str_1e51[] = { 0x014d, 0x0300, 0 };
-static const unichar_t str_1e52[] = { 0x014c, 0x0301, 0 };
-static const unichar_t str_1e53[] = { 0x014d, 0x0301, 0 };
-static const unichar_t str_1e54[] = { 0x0050, 0x0301, 0 };
-static const unichar_t str_1e55[] = { 0x0070, 0x0301, 0 };
-static const unichar_t str_1e56[] = { 0x0050, 0x0307, 0 };
-static const unichar_t str_1e57[] = { 0x0070, 0x0307, 0 };
-static const unichar_t str_1e58[] = { 0x0052, 0x0307, 0 };
-static const unichar_t str_1e59[] = { 0x0072, 0x0307, 0 };
-static const unichar_t str_1e5a[] = { 0x0052, 0x0323, 0 };
-static const unichar_t str_1e5b[] = { 0x0072, 0x0323, 0 };
-static const unichar_t str_1e5c[] = { 0x1e5a, 0x0304, 0 };
-static const unichar_t str_1e5d[] = { 0x1e5b, 0x0304, 0 };
-static const unichar_t str_1e5e[] = { 0x0052, 0x0331, 0 };
-static const unichar_t str_1e5f[] = { 0x0072, 0x0331, 0 };
-static const unichar_t str_1e60[] = { 0x0053, 0x0307, 0 };
-static const unichar_t str_1e61[] = { 0x0073, 0x0307, 0 };
-static const unichar_t str_1e62[] = { 0x0053, 0x0323, 0 };
-static const unichar_t str_1e63[] = { 0x0073, 0x0323, 0 };
-static const unichar_t str_1e64[] = { 0x015a, 0x0307, 0 };
-static const unichar_t str_1e65[] = { 0x015b, 0x0307, 0 };
-static const unichar_t str_1e66[] = { 0x0160, 0x0307, 0 };
-static const unichar_t str_1e67[] = { 0x0161, 0x0307, 0 };
-static const unichar_t str_1e68[] = { 0x1e62, 0x0307, 0 };
-static const unichar_t str_1e69[] = { 0x1e63, 0x0307, 0 };
-static const unichar_t str_1e6a[] = { 0x0054, 0x0307, 0 };
-static const unichar_t str_1e6b[] = { 0x0074, 0x0307, 0 };
-static const unichar_t str_1e6c[] = { 0x0054, 0x0323, 0 };
-static const unichar_t str_1e6d[] = { 0x0074, 0x0323, 0 };
-static const unichar_t str_1e6e[] = { 0x0054, 0x0331, 0 };
-static const unichar_t str_1e6f[] = { 0x0074, 0x0331, 0 };
-static const unichar_t str_1e70[] = { 0x0054, 0x032d, 0 };
-static const unichar_t str_1e71[] = { 0x0074, 0x032d, 0 };
-static const unichar_t str_1e72[] = { 0x0055, 0x0324, 0 };
-static const unichar_t str_1e73[] = { 0x0075, 0x0324, 0 };
-static const unichar_t str_1e74[] = { 0x0055, 0x0330, 0 };
-static const unichar_t str_1e75[] = { 0x0075, 0x0330, 0 };
-static const unichar_t str_1e76[] = { 0x0055, 0x032d, 0 };
-static const unichar_t str_1e77[] = { 0x0075, 0x032d, 0 };
-static const unichar_t str_1e78[] = { 0x0168, 0x0301, 0 };
-static const unichar_t str_1e79[] = { 0x0169, 0x0301, 0 };
-static const unichar_t str_1e7a[] = { 0x016a, 0x0308, 0 };
-static const unichar_t str_1e7b[] = { 0x016b, 0x0308, 0 };
-static const unichar_t str_1e7c[] = { 0x0056, 0x0303, 0 };
-static const unichar_t str_1e7d[] = { 0x0076, 0x0303, 0 };
-static const unichar_t str_1e7e[] = { 0x0056, 0x0323, 0 };
-static const unichar_t str_1e7f[] = { 0x0076, 0x0323, 0 };
-static const unichar_t str_1e80[] = { 0x0057, 0x0300, 0 };
-static const unichar_t str_1e81[] = { 0x0077, 0x0300, 0 };
-static const unichar_t str_1e82[] = { 0x0057, 0x0301, 0 };
-static const unichar_t str_1e83[] = { 0x0077, 0x0301, 0 };
-static const unichar_t str_1e84[] = { 0x0057, 0x0308, 0 };
-static const unichar_t str_1e85[] = { 0x0077, 0x0308, 0 };
-static const unichar_t str_1e86[] = { 0x0057, 0x0307, 0 };
-static const unichar_t str_1e87[] = { 0x0077, 0x0307, 0 };
-static const unichar_t str_1e88[] = { 0x0057, 0x0323, 0 };
-static const unichar_t str_1e89[] = { 0x0077, 0x0323, 0 };
-static const unichar_t str_1e8a[] = { 0x0058, 0x0307, 0 };
-static const unichar_t str_1e8b[] = { 0x0078, 0x0307, 0 };
-static const unichar_t str_1e8c[] = { 0x0058, 0x0308, 0 };
-static const unichar_t str_1e8d[] = { 0x0078, 0x0308, 0 };
-static const unichar_t str_1e8e[] = { 0x0059, 0x0307, 0 };
-static const unichar_t str_1e8f[] = { 0x0079, 0x0307, 0 };
-static const unichar_t str_1e90[] = { 0x005a, 0x0302, 0 };
-static const unichar_t str_1e91[] = { 0x007a, 0x0302, 0 };
-static const unichar_t str_1e92[] = { 0x005a, 0x0323, 0 };
-static const unichar_t str_1e93[] = { 0x007a, 0x0323, 0 };
-static const unichar_t str_1e94[] = { 0x005a, 0x0331, 0 };
-static const unichar_t str_1e95[] = { 0x007a, 0x0331, 0 };
-static const unichar_t str_1e96[] = { 0x0068, 0x0331, 0 };
-static const unichar_t str_1e97[] = { 0x0074, 0x0308, 0 };
-static const unichar_t str_1e98[] = { 0x0077, 0x030a, 0 };
-static const unichar_t str_1e99[] = { 0x0079, 0x030a, 0 };
-static const unichar_t str_1e9a[] = { 0x0061, 0x02be, 0 };
-static const unichar_t str_1e9b[] = { 0x017f, 0x0307, 0 };
-static const unichar_t str_1ea0[] = { 0x0041, 0x0323, 0 };
-static const unichar_t str_1ea1[] = { 0x0061, 0x0323, 0 };
-static const unichar_t str_1ea2[] = { 0x0041, 0x0309, 0 };
-static const unichar_t str_1ea3[] = { 0x0061, 0x0309, 0 };
-static const unichar_t str_1ea4[] = { 0x00c2, 0x0301, 0 };
-static const unichar_t str_1ea5[] = { 0x00e2, 0x0301, 0 };
-static const unichar_t str_1ea6[] = { 0x00c2, 0x0300, 0 };
-static const unichar_t str_1ea7[] = { 0x00e2, 0x0300, 0 };
-static const unichar_t str_1ea8[] = { 0x00c2, 0x0309, 0 };
-static const unichar_t str_1ea9[] = { 0x00e2, 0x0309, 0 };
-static const unichar_t str_1eaa[] = { 0x00c2, 0x0303, 0 };
-static const unichar_t str_1eab[] = { 0x00e2, 0x0303, 0 };
-static const unichar_t str_1eac[] = { 0x1ea0, 0x0302, 0 };
-static const unichar_t str_1ead[] = { 0x1ea1, 0x0302, 0 };
-static const unichar_t str_1eae[] = { 0x0102, 0x0301, 0 };
-static const unichar_t str_1eaf[] = { 0x0103, 0x0301, 0 };
-static const unichar_t str_1eb0[] = { 0x0102, 0x0300, 0 };
-static const unichar_t str_1eb1[] = { 0x0103, 0x0300, 0 };
-static const unichar_t str_1eb2[] = { 0x0102, 0x0309, 0 };
-static const unichar_t str_1eb3[] = { 0x0103, 0x0309, 0 };
-static const unichar_t str_1eb4[] = { 0x0102, 0x0303, 0 };
-static const unichar_t str_1eb5[] = { 0x0103, 0x0303, 0 };
-static const unichar_t str_1eb6[] = { 0x1ea0, 0x0306, 0 };
-static const unichar_t str_1eb7[] = { 0x1ea1, 0x0306, 0 };
-static const unichar_t str_1eb8[] = { 0x0045, 0x0323, 0 };
-static const unichar_t str_1eb9[] = { 0x0065, 0x0323, 0 };
-static const unichar_t str_1eba[] = { 0x0045, 0x0309, 0 };
-static const unichar_t str_1ebb[] = { 0x0065, 0x0309, 0 };
-static const unichar_t str_1ebc[] = { 0x0045, 0x0303, 0 };
-static const unichar_t str_1ebd[] = { 0x0065, 0x0303, 0 };
-static const unichar_t str_1ebe[] = { 0x00ca, 0x0301, 0 };
-static const unichar_t str_1ebf[] = { 0x00ea, 0x0301, 0 };
-static const unichar_t str_1ec0[] = { 0x00ca, 0x0300, 0 };
-static const unichar_t str_1ec1[] = { 0x00ea, 0x0300, 0 };
-static const unichar_t str_1ec2[] = { 0x00ca, 0x0309, 0 };
-static const unichar_t str_1ec3[] = { 0x00ea, 0x0309, 0 };
-static const unichar_t str_1ec4[] = { 0x00ca, 0x0303, 0 };
-static const unichar_t str_1ec5[] = { 0x00ea, 0x0303, 0 };
-static const unichar_t str_1ec6[] = { 0x1eb8, 0x0302, 0 };
-static const unichar_t str_1ec7[] = { 0x1eb9, 0x0302, 0 };
-static const unichar_t str_1ec8[] = { 0x0049, 0x0309, 0 };
-static const unichar_t str_1ec9[] = { 0x0069, 0x0309, 0 };
-static const unichar_t str_1eca[] = { 0x0049, 0x0323, 0 };
-static const unichar_t str_1ecb[] = { 0x0069, 0x0323, 0 };
-static const unichar_t str_1ecc[] = { 0x004f, 0x0323, 0 };
-static const unichar_t str_1ecd[] = { 0x006f, 0x0323, 0 };
-static const unichar_t str_1ece[] = { 0x004f, 0x0309, 0 };
-static const unichar_t str_1ecf[] = { 0x006f, 0x0309, 0 };
-static const unichar_t str_1ed0[] = { 0x00d4, 0x0301, 0 };
-static const unichar_t str_1ed1[] = { 0x00f4, 0x0301, 0 };
-static const unichar_t str_1ed2[] = { 0x00d4, 0x0300, 0 };
-static const unichar_t str_1ed3[] = { 0x00f4, 0x0300, 0 };
-static const unichar_t str_1ed4[] = { 0x00d4, 0x0309, 0 };
-static const unichar_t str_1ed5[] = { 0x00f4, 0x0309, 0 };
-static const unichar_t str_1ed6[] = { 0x00d4, 0x0303, 0 };
-static const unichar_t str_1ed7[] = { 0x00f4, 0x0303, 0 };
-static const unichar_t str_1ed8[] = { 0x1ecc, 0x0302, 0 };
-static const unichar_t str_1ed9[] = { 0x1ecd, 0x0302, 0 };
-static const unichar_t str_1eda[] = { 0x01a0, 0x0301, 0 };
-static const unichar_t str_1edb[] = { 0x01a1, 0x0301, 0 };
-static const unichar_t str_1edc[] = { 0x01a0, 0x0300, 0 };
-static const unichar_t str_1edd[] = { 0x01a1, 0x0300, 0 };
-static const unichar_t str_1ede[] = { 0x01a0, 0x0309, 0 };
-static const unichar_t str_1edf[] = { 0x01a1, 0x0309, 0 };
-static const unichar_t str_1ee0[] = { 0x01a0, 0x0303, 0 };
-static const unichar_t str_1ee1[] = { 0x01a1, 0x0303, 0 };
-static const unichar_t str_1ee2[] = { 0x01a0, 0x0323, 0 };
-static const unichar_t str_1ee3[] = { 0x01a1, 0x0323, 0 };
-static const unichar_t str_1ee4[] = { 0x0055, 0x0323, 0 };
-static const unichar_t str_1ee5[] = { 0x0075, 0x0323, 0 };
-static const unichar_t str_1ee6[] = { 0x0055, 0x0309, 0 };
-static const unichar_t str_1ee7[] = { 0x0075, 0x0309, 0 };
-static const unichar_t str_1ee8[] = { 0x01af, 0x0301, 0 };
-static const unichar_t str_1ee9[] = { 0x01b0, 0x0301, 0 };
-static const unichar_t str_1eea[] = { 0x01af, 0x0300, 0 };
-static const unichar_t str_1eeb[] = { 0x01b0, 0x0300, 0 };
-static const unichar_t str_1eec[] = { 0x01af, 0x0309, 0 };
-static const unichar_t str_1eed[] = { 0x01b0, 0x0309, 0 };
-static const unichar_t str_1eee[] = { 0x01af, 0x0303, 0 };
-static const unichar_t str_1eef[] = { 0x01b0, 0x0303, 0 };
-static const unichar_t str_1ef0[] = { 0x01af, 0x0323, 0 };
-static const unichar_t str_1ef1[] = { 0x01b0, 0x0323, 0 };
-static const unichar_t str_1ef2[] = { 0x0059, 0x0300, 0 };
-static const unichar_t str_1ef3[] = { 0x0079, 0x0300, 0 };
-static const unichar_t str_1ef4[] = { 0x0059, 0x0323, 0 };
-static const unichar_t str_1ef5[] = { 0x0079, 0x0323, 0 };
-static const unichar_t str_1ef6[] = { 0x0059, 0x0309, 0 };
-static const unichar_t str_1ef7[] = { 0x0079, 0x0309, 0 };
-static const unichar_t str_1ef8[] = { 0x0059, 0x0303, 0 };
-static const unichar_t str_1ef9[] = { 0x0079, 0x0303, 0 };
-static const unichar_t str_1f00[] = { 0x03b1, 0x0313, 0 };
-static const unichar_t str_1f01[] = { 0x03b1, 0x0314, 0 };
-static const unichar_t str_1f02[] = { 0x1f00, 0x0300, 0 };
-static const unichar_t str_1f03[] = { 0x1f01, 0x0300, 0 };
-static const unichar_t str_1f04[] = { 0x1f00, 0x0301, 0 };
-static const unichar_t str_1f05[] = { 0x1f01, 0x0301, 0 };
-static const unichar_t str_1f06[] = { 0x1f00, 0x0342, 0 };
-static const unichar_t str_1f07[] = { 0x1f01, 0x0342, 0 };
-static const unichar_t str_1f08[] = { 0x0391, 0x0313, 0 };
-static const unichar_t str_1f09[] = { 0x0391, 0x0314, 0 };
-static const unichar_t str_1f0a[] = { 0x1f08, 0x0300, 0 };
-static const unichar_t str_1f0b[] = { 0x1f09, 0x0300, 0 };
-static const unichar_t str_1f0c[] = { 0x1f08, 0x0301, 0 };
-static const unichar_t str_1f0d[] = { 0x1f09, 0x0301, 0 };
-static const unichar_t str_1f0e[] = { 0x1f08, 0x0342, 0 };
-static const unichar_t str_1f0f[] = { 0x1f09, 0x0342, 0 };
-static const unichar_t str_1f10[] = { 0x03b5, 0x0313, 0 };
-static const unichar_t str_1f11[] = { 0x03b5, 0x0314, 0 };
-static const unichar_t str_1f12[] = { 0x1f10, 0x0300, 0 };
-static const unichar_t str_1f13[] = { 0x1f11, 0x0300, 0 };
-static const unichar_t str_1f14[] = { 0x1f10, 0x0301, 0 };
-static const unichar_t str_1f15[] = { 0x1f11, 0x0301, 0 };
-static const unichar_t str_1f18[] = { 0x0395, 0x0313, 0 };
-static const unichar_t str_1f19[] = { 0x0395, 0x0314, 0 };
-static const unichar_t str_1f1a[] = { 0x1f18, 0x0300, 0 };
-static const unichar_t str_1f1b[] = { 0x1f19, 0x0300, 0 };
-static const unichar_t str_1f1c[] = { 0x1f18, 0x0301, 0 };
-static const unichar_t str_1f1d[] = { 0x1f19, 0x0301, 0 };
-static const unichar_t str_1f20[] = { 0x03b7, 0x0313, 0 };
-static const unichar_t str_1f21[] = { 0x03b7, 0x0314, 0 };
-static const unichar_t str_1f22[] = { 0x1f20, 0x0300, 0 };
-static const unichar_t str_1f23[] = { 0x1f21, 0x0300, 0 };
-static const unichar_t str_1f24[] = { 0x1f20, 0x0301, 0 };
-static const unichar_t str_1f25[] = { 0x1f21, 0x0301, 0 };
-static const unichar_t str_1f26[] = { 0x1f20, 0x0342, 0 };
-static const unichar_t str_1f27[] = { 0x1f21, 0x0342, 0 };
-static const unichar_t str_1f28[] = { 0x0397, 0x0313, 0 };
-static const unichar_t str_1f29[] = { 0x0397, 0x0314, 0 };
-static const unichar_t str_1f2a[] = { 0x1f28, 0x0300, 0 };
-static const unichar_t str_1f2b[] = { 0x1f29, 0x0300, 0 };
-static const unichar_t str_1f2c[] = { 0x1f28, 0x0301, 0 };
-static const unichar_t str_1f2d[] = { 0x1f29, 0x0301, 0 };
-static const unichar_t str_1f2e[] = { 0x1f28, 0x0342, 0 };
-static const unichar_t str_1f2f[] = { 0x1f29, 0x0342, 0 };
-static const unichar_t str_1f30[] = { 0x03b9, 0x0313, 0 };
-static const unichar_t str_1f31[] = { 0x03b9, 0x0314, 0 };
-static const unichar_t str_1f32[] = { 0x1f30, 0x0300, 0 };
-static const unichar_t str_1f33[] = { 0x1f31, 0x0300, 0 };
-static const unichar_t str_1f34[] = { 0x1f30, 0x0301, 0 };
-static const unichar_t str_1f35[] = { 0x1f31, 0x0301, 0 };
-static const unichar_t str_1f36[] = { 0x1f30, 0x0342, 0 };
-static const unichar_t str_1f37[] = { 0x1f31, 0x0342, 0 };
-static const unichar_t str_1f38[] = { 0x0399, 0x0313, 0 };
-static const unichar_t str_1f39[] = { 0x0399, 0x0314, 0 };
-static const unichar_t str_1f3a[] = { 0x1f38, 0x0300, 0 };
-static const unichar_t str_1f3b[] = { 0x1f39, 0x0300, 0 };
-static const unichar_t str_1f3c[] = { 0x1f38, 0x0301, 0 };
-static const unichar_t str_1f3d[] = { 0x1f39, 0x0301, 0 };
-static const unichar_t str_1f3e[] = { 0x1f38, 0x0342, 0 };
-static const unichar_t str_1f3f[] = { 0x1f39, 0x0342, 0 };
-static const unichar_t str_1f40[] = { 0x03bf, 0x0313, 0 };
-static const unichar_t str_1f41[] = { 0x03bf, 0x0314, 0 };
-static const unichar_t str_1f42[] = { 0x1f40, 0x0300, 0 };
-static const unichar_t str_1f43[] = { 0x1f41, 0x0300, 0 };
-static const unichar_t str_1f44[] = { 0x1f40, 0x0301, 0 };
-static const unichar_t str_1f45[] = { 0x1f41, 0x0301, 0 };
-static const unichar_t str_1f48[] = { 0x039f, 0x0313, 0 };
-static const unichar_t str_1f49[] = { 0x039f, 0x0314, 0 };
-static const unichar_t str_1f4a[] = { 0x1f48, 0x0300, 0 };
-static const unichar_t str_1f4b[] = { 0x1f49, 0x0300, 0 };
-static const unichar_t str_1f4c[] = { 0x1f48, 0x0301, 0 };
-static const unichar_t str_1f4d[] = { 0x1f49, 0x0301, 0 };
-static const unichar_t str_1f50[] = { 0x03c5, 0x0313, 0 };
-static const unichar_t str_1f51[] = { 0x03c5, 0x0314, 0 };
-static const unichar_t str_1f52[] = { 0x1f50, 0x0300, 0 };
-static const unichar_t str_1f53[] = { 0x1f51, 0x0300, 0 };
-static const unichar_t str_1f54[] = { 0x1f50, 0x0301, 0 };
-static const unichar_t str_1f55[] = { 0x1f51, 0x0301, 0 };
-static const unichar_t str_1f56[] = { 0x1f50, 0x0342, 0 };
-static const unichar_t str_1f57[] = { 0x1f51, 0x0342, 0 };
-static const unichar_t str_1f59[] = { 0x03a5, 0x0314, 0 };
-static const unichar_t str_1f5b[] = { 0x1f59, 0x0300, 0 };
-static const unichar_t str_1f5d[] = { 0x1f59, 0x0301, 0 };
-static const unichar_t str_1f5f[] = { 0x1f59, 0x0342, 0 };
-static const unichar_t str_1f60[] = { 0x03c9, 0x0313, 0 };
-static const unichar_t str_1f61[] = { 0x03c9, 0x0314, 0 };
-static const unichar_t str_1f62[] = { 0x1f60, 0x0300, 0 };
-static const unichar_t str_1f63[] = { 0x1f61, 0x0300, 0 };
-static const unichar_t str_1f64[] = { 0x1f60, 0x0301, 0 };
-static const unichar_t str_1f65[] = { 0x1f61, 0x0301, 0 };
-static const unichar_t str_1f66[] = { 0x1f60, 0x0342, 0 };
-static const unichar_t str_1f67[] = { 0x1f61, 0x0342, 0 };
-static const unichar_t str_1f68[] = { 0x03a9, 0x0313, 0 };
-static const unichar_t str_1f69[] = { 0x03a9, 0x0314, 0 };
-static const unichar_t str_1f6a[] = { 0x1f68, 0x0300, 0 };
-static const unichar_t str_1f6b[] = { 0x1f69, 0x0300, 0 };
-static const unichar_t str_1f6c[] = { 0x1f68, 0x0301, 0 };
-static const unichar_t str_1f6d[] = { 0x1f69, 0x0301, 0 };
-static const unichar_t str_1f6e[] = { 0x1f68, 0x0342, 0 };
-static const unichar_t str_1f6f[] = { 0x1f69, 0x0342, 0 };
-static const unichar_t str_1f70[] = { 0x03b1, 0x0300, 0 };
-static const unichar_t str_1f71[] = { 0x03ac, 0 };
-static const unichar_t str_1f72[] = { 0x03b5, 0x0300, 0 };
-static const unichar_t str_1f73[] = { 0x03ad, 0 };
-static const unichar_t str_1f74[] = { 0x03b7, 0x0300, 0 };
-static const unichar_t str_1f75[] = { 0x03ae, 0 };
-static const unichar_t str_1f76[] = { 0x03b9, 0x0300, 0 };
-static const unichar_t str_1f77[] = { 0x03af, 0 };
-static const unichar_t str_1f78[] = { 0x03bf, 0x0300, 0 };
-static const unichar_t str_1f79[] = { 0x03cc, 0 };
-static const unichar_t str_1f7a[] = { 0x03c5, 0x0300, 0 };
-static const unichar_t str_1f7b[] = { 0x03cd, 0 };
-static const unichar_t str_1f7c[] = { 0x03c9, 0x0300, 0 };
-static const unichar_t str_1f7d[] = { 0x03ce, 0 };
-static const unichar_t str_1f80[] = { 0x1f00, 0x0345, 0 };
-static const unichar_t str_1f81[] = { 0x1f01, 0x0345, 0 };
-static const unichar_t str_1f82[] = { 0x1f02, 0x0345, 0 };
-static const unichar_t str_1f83[] = { 0x1f03, 0x0345, 0 };
-static const unichar_t str_1f84[] = { 0x1f04, 0x0345, 0 };
-static const unichar_t str_1f85[] = { 0x1f05, 0x0345, 0 };
-static const unichar_t str_1f86[] = { 0x1f06, 0x0345, 0 };
-static const unichar_t str_1f87[] = { 0x1f07, 0x0345, 0 };
-static const unichar_t str_1f88[] = { 0x1f08, 0x0345, 0 };
-static const unichar_t str_1f89[] = { 0x1f09, 0x0345, 0 };
-static const unichar_t str_1f8a[] = { 0x1f0a, 0x0345, 0 };
-static const unichar_t str_1f8b[] = { 0x1f0b, 0x0345, 0 };
-static const unichar_t str_1f8c[] = { 0x1f0c, 0x0345, 0 };
-static const unichar_t str_1f8d[] = { 0x1f0d, 0x0345, 0 };
-static const unichar_t str_1f8e[] = { 0x1f0e, 0x0345, 0 };
-static const unichar_t str_1f8f[] = { 0x1f0f, 0x0345, 0 };
-static const unichar_t str_1f90[] = { 0x1f20, 0x0345, 0 };
-static const unichar_t str_1f91[] = { 0x1f21, 0x0345, 0 };
-static const unichar_t str_1f92[] = { 0x1f22, 0x0345, 0 };
-static const unichar_t str_1f93[] = { 0x1f23, 0x0345, 0 };
-static const unichar_t str_1f94[] = { 0x1f24, 0x0345, 0 };
-static const unichar_t str_1f95[] = { 0x1f25, 0x0345, 0 };
-static const unichar_t str_1f96[] = { 0x1f26, 0x0345, 0 };
-static const unichar_t str_1f97[] = { 0x1f27, 0x0345, 0 };
-static const unichar_t str_1f98[] = { 0x1f28, 0x0345, 0 };
-static const unichar_t str_1f99[] = { 0x1f29, 0x0345, 0 };
-static const unichar_t str_1f9a[] = { 0x1f2a, 0x0345, 0 };
-static const unichar_t str_1f9b[] = { 0x1f2b, 0x0345, 0 };
-static const unichar_t str_1f9c[] = { 0x1f2c, 0x0345, 0 };
-static const unichar_t str_1f9d[] = { 0x1f2d, 0x0345, 0 };
-static const unichar_t str_1f9e[] = { 0x1f2e, 0x0345, 0 };
-static const unichar_t str_1f9f[] = { 0x1f2f, 0x0345, 0 };
-static const unichar_t str_1fa0[] = { 0x1f60, 0x0345, 0 };
-static const unichar_t str_1fa1[] = { 0x1f61, 0x0345, 0 };
-static const unichar_t str_1fa2[] = { 0x1f62, 0x0345, 0 };
-static const unichar_t str_1fa3[] = { 0x1f63, 0x0345, 0 };
-static const unichar_t str_1fa4[] = { 0x1f64, 0x0345, 0 };
-static const unichar_t str_1fa5[] = { 0x1f65, 0x0345, 0 };
-static const unichar_t str_1fa6[] = { 0x1f66, 0x0345, 0 };
-static const unichar_t str_1fa7[] = { 0x1f67, 0x0345, 0 };
-static const unichar_t str_1fa8[] = { 0x1f68, 0x0345, 0 };
-static const unichar_t str_1fa9[] = { 0x1f69, 0x0345, 0 };
-static const unichar_t str_1faa[] = { 0x1f6a, 0x0345, 0 };
-static const unichar_t str_1fab[] = { 0x1f6b, 0x0345, 0 };
-static const unichar_t str_1fac[] = { 0x1f6c, 0x0345, 0 };
-static const unichar_t str_1fad[] = { 0x1f6d, 0x0345, 0 };
-static const unichar_t str_1fae[] = { 0x1f6e, 0x0345, 0 };
-static const unichar_t str_1faf[] = { 0x1f6f, 0x0345, 0 };
-static const unichar_t str_1fb0[] = { 0x03b1, 0x0306, 0 };
-static const unichar_t str_1fb1[] = { 0x03b1, 0x0304, 0 };
-static const unichar_t str_1fb2[] = { 0x1f70, 0x0345, 0 };
-static const unichar_t str_1fb3[] = { 0x03b1, 0x0345, 0 };
-static const unichar_t str_1fb4[] = { 0x03ac, 0x0345, 0 };
-static const unichar_t str_1fb6[] = { 0x03b1, 0x0342, 0 };
-static const unichar_t str_1fb7[] = { 0x1fb6, 0x0345, 0 };
-static const unichar_t str_1fb8[] = { 0x0391, 0x0306, 0 };
-static const unichar_t str_1fb9[] = { 0x0391, 0x0304, 0 };
-static const unichar_t str_1fba[] = { 0x0391, 0x0300, 0 };
-static const unichar_t str_1fbb[] = { 0x0386, 0 };
-static const unichar_t str_1fbc[] = { 0x0391, 0x0345, 0 };
-static const unichar_t str_1fbd[] = { 0x0020, 0x0313, 0 };
-static const unichar_t str_1fbe[] = { 0x03b9, 0 };
-static const unichar_t str_1fbf[] = { 0x0020, 0x0313, 0 };
-static const unichar_t str_1fc0[] = { 0x0020, 0x0342, 0 };
-static const unichar_t str_1fc1[] = { 0x00a8, 0x0342, 0 };
-static const unichar_t str_1fc2[] = { 0x1f74, 0x0345, 0 };
-static const unichar_t str_1fc3[] = { 0x03b7, 0x0345, 0 };
-static const unichar_t str_1fc4[] = { 0x03ae, 0x0345, 0 };
-static const unichar_t str_1fc6[] = { 0x03b7, 0x0342, 0 };
-static const unichar_t str_1fc7[] = { 0x1fc6, 0x0345, 0 };
-static const unichar_t str_1fc8[] = { 0x0395, 0x0300, 0 };
-static const unichar_t str_1fc9[] = { 0x0388, 0 };
-static const unichar_t str_1fca[] = { 0x0397, 0x0300, 0 };
-static const unichar_t str_1fcb[] = { 0x0389, 0 };
-static const unichar_t str_1fcc[] = { 0x0397, 0x0345, 0 };
-static const unichar_t str_1fcd[] = { 0x1fbf, 0x0300, 0 };
-static const unichar_t str_1fce[] = { 0x1fbf, 0x0301, 0 };
-static const unichar_t str_1fcf[] = { 0x1fbf, 0x0342, 0 };
-static const unichar_t str_1fd0[] = { 0x03b9, 0x0306, 0 };
-static const unichar_t str_1fd1[] = { 0x03b9, 0x0304, 0 };
-static const unichar_t str_1fd2[] = { 0x03ca, 0x0300, 0 };
-static const unichar_t str_1fd3[] = { 0x0390, 0 };
-static const unichar_t str_1fd6[] = { 0x03b9, 0x0342, 0 };
-static const unichar_t str_1fd7[] = { 0x03ca, 0x0342, 0 };
-static const unichar_t str_1fd8[] = { 0x0399, 0x0306, 0 };
-static const unichar_t str_1fd9[] = { 0x0399, 0x0304, 0 };
-static const unichar_t str_1fda[] = { 0x0399, 0x0300, 0 };
-static const unichar_t str_1fdb[] = { 0x038a, 0 };
-static const unichar_t str_1fdd[] = { 0x1ffe, 0x0300, 0 };
-static const unichar_t str_1fde[] = { 0x1ffe, 0x0301, 0 };
-static const unichar_t str_1fdf[] = { 0x1ffe, 0x0342, 0 };
-static const unichar_t str_1fe0[] = { 0x03c5, 0x0306, 0 };
-static const unichar_t str_1fe1[] = { 0x03c5, 0x0304, 0 };
-static const unichar_t str_1fe2[] = { 0x03cb, 0x0300, 0 };
-static const unichar_t str_1fe3[] = { 0x03b0, 0 };
-static const unichar_t str_1fe4[] = { 0x03c1, 0x0313, 0 };
-static const unichar_t str_1fe5[] = { 0x03c1, 0x0314, 0 };
-static const unichar_t str_1fe6[] = { 0x03c5, 0x0342, 0 };
-static const unichar_t str_1fe7[] = { 0x03cb, 0x0342, 0 };
-static const unichar_t str_1fe8[] = { 0x03a5, 0x0306, 0 };
-static const unichar_t str_1fe9[] = { 0x03a5, 0x0304, 0 };
-static const unichar_t str_1fea[] = { 0x03a5, 0x0300, 0 };
-static const unichar_t str_1feb[] = { 0x038e, 0 };
-static const unichar_t str_1fec[] = { 0x03a1, 0x0314, 0 };
-static const unichar_t str_1fed[] = { 0x00a8, 0x0300, 0 };
-static const unichar_t str_1fee[] = { 0x0385, 0 };
-static const unichar_t str_1fef[] = { 0x0060, 0 };
-static const unichar_t str_1ff2[] = { 0x1f7c, 0x0345, 0 };
-static const unichar_t str_1ff3[] = { 0x03c9, 0x0345, 0 };
-static const unichar_t str_1ff4[] = { 0x03ce, 0x0345, 0 };
-static const unichar_t str_1ff6[] = { 0x03c9, 0x0342, 0 };
-static const unichar_t str_1ff7[] = { 0x1ff6, 0x0345, 0 };
-static const unichar_t str_1ff8[] = { 0x039f, 0x0300, 0 };
-static const unichar_t str_1ff9[] = { 0x038c, 0 };
-static const unichar_t str_1ffa[] = { 0x03a9, 0x0300, 0 };
-static const unichar_t str_1ffb[] = { 0x038f, 0 };
-static const unichar_t str_1ffc[] = { 0x03a9, 0x0345, 0 };
-static const unichar_t str_1ffd[] = { 0x00b4, 0 };
-static const unichar_t str_1ffe[] = { 0x0020, 0x0314, 0 };
-static const unichar_t str_2000[] = { 0x2002, 0 };
-static const unichar_t str_2001[] = { 0x2003, 0 };
-static const unichar_t str_2002[] = { 0x0020, 0 };
-static const unichar_t str_2003[] = { 0x0020, 0 };
-static const unichar_t str_2004[] = { 0x0020, 0 };
-static const unichar_t str_2005[] = { 0x0020, 0 };
-static const unichar_t str_2006[] = { 0x0020, 0 };
-static const unichar_t str_2007[] = { 0x0020, 0 };
-static const unichar_t str_2008[] = { 0x0020, 0 };
-static const unichar_t str_2009[] = { 0x0020, 0 };
-static const unichar_t str_200a[] = { 0x0020, 0 };
-static const unichar_t str_2010[] = { 0x002d, 0 };
-static const unichar_t str_2011[] = { 0x2010, 0 };
-static const unichar_t str_2012[] = { 0x002d, 0 };
-static const unichar_t str_2013[] = { 0x002d, 0 };
-static const unichar_t str_2014[] = { 0x002d, 0 };
-static const unichar_t str_2015[] = { 0x002d, 0 };
-static const unichar_t str_2016[] = { 0x007c, 0x007c, 0 };
-static const unichar_t str_2017[] = { 0x0020, 0x0333, 0 };
-static const unichar_t str_2018[] = { 0x0060, 0 };
-static const unichar_t str_2019[] = { 0x0027, 0 };
-static const unichar_t str_201c[] = { 0x0022, 0 };
-static const unichar_t str_201d[] = { 0x0022, 0 };
-static const unichar_t str_2024[] = { 0x002e, 0 };
-static const unichar_t str_2025[] = { 0x002e, 0x002e, 0 };
-static const unichar_t str_2026[] = { 0x002e, 0x002e, 0x002e, 0 };
-static const unichar_t str_202f[] = { 0x0020, 0 };
-static const unichar_t str_2032[] = { 0x0027, 0 };
-static const unichar_t str_2033[] = { 0x2032, 0x2032, 0 };
-static const unichar_t str_2034[] = { 0x2032, 0x2032, 0x2032, 0 };
-static const unichar_t str_2035[] = { 0x0060, 0 };
-static const unichar_t str_2036[] = { 0x2035, 0x2035, 0 };
-static const unichar_t str_2037[] = { 0x2035, 0x2035, 0x2035, 0 };
-static const unichar_t str_2039[] = { 0x003c, 0 };
-static const unichar_t str_203a[] = { 0x003e, 0 };
-static const unichar_t str_203c[] = { 0x0021, 0x0021, 0 };
-static const unichar_t str_203e[] = { 0x0020, 0x0305, 0 };
-static const unichar_t str_2047[] = { 0x003f, 0x003f, 0 };
-static const unichar_t str_2048[] = { 0x003f, 0x0021, 0 };
-static const unichar_t str_2049[] = { 0x0021, 0x003f, 0 };
-static const unichar_t str_2057[] = { 0x2032, 0x2032, 0x2032, 0x2032, 0 };
-static const unichar_t str_205f[] = { 0x0020, 0 };
-static const unichar_t str_2070[] = { 0x0030, 0 };
-static const unichar_t str_2071[] = { 0x0069, 0 };
-static const unichar_t str_2074[] = { 0x0034, 0 };
-static const unichar_t str_2075[] = { 0x0035, 0 };
-static const unichar_t str_2076[] = { 0x0036, 0 };
-static const unichar_t str_2077[] = { 0x0037, 0 };
-static const unichar_t str_2078[] = { 0x0038, 0 };
-static const unichar_t str_2079[] = { 0x0039, 0 };
-static const unichar_t str_207a[] = { 0x002b, 0 };
-static const unichar_t str_207b[] = { 0x2212, 0 };
-static const unichar_t str_207c[] = { 0x003d, 0 };
-static const unichar_t str_207d[] = { 0x0028, 0 };
-static const unichar_t str_207e[] = { 0x0029, 0 };
-static const unichar_t str_207f[] = { 0x006e, 0 };
-static const unichar_t str_2080[] = { 0x0030, 0 };
-static const unichar_t str_2081[] = { 0x0031, 0 };
-static const unichar_t str_2082[] = { 0x0032, 0 };
-static const unichar_t str_2083[] = { 0x0033, 0 };
-static const unichar_t str_2084[] = { 0x0034, 0 };
-static const unichar_t str_2085[] = { 0x0035, 0 };
-static const unichar_t str_2086[] = { 0x0036, 0 };
-static const unichar_t str_2087[] = { 0x0037, 0 };
-static const unichar_t str_2088[] = { 0x0038, 0 };
-static const unichar_t str_2089[] = { 0x0039, 0 };
-static const unichar_t str_208a[] = { 0x002b, 0 };
-static const unichar_t str_208b[] = { 0x2212, 0 };
-static const unichar_t str_208c[] = { 0x003d, 0 };
-static const unichar_t str_208d[] = { 0x0028, 0 };
-static const unichar_t str_208e[] = { 0x0029, 0 };
-static const unichar_t str_2090[] = { 0x0061, 0 };
-static const unichar_t str_2091[] = { 0x0065, 0 };
-static const unichar_t str_2092[] = { 0x006f, 0 };
-static const unichar_t str_2093[] = { 0x0078, 0 };
-static const unichar_t str_2094[] = { 0x0259, 0 };
-static const unichar_t str_2095[] = { 0x0068, 0 };
-static const unichar_t str_2096[] = { 0x006b, 0 };
-static const unichar_t str_2097[] = { 0x006c, 0 };
-static const unichar_t str_2098[] = { 0x006d, 0 };
-static const unichar_t str_2099[] = { 0x006e, 0 };
-static const unichar_t str_209a[] = { 0x0070, 0 };
-static const unichar_t str_209b[] = { 0x0073, 0 };
-static const unichar_t str_209c[] = { 0x0074, 0 };
-static const unichar_t str_20a8[] = { 0x0052, 0x0073, 0 };
-static const unichar_t str_2100[] = { 0x0061, 0x002f, 0x0063, 0 };
-static const unichar_t str_2101[] = { 0x0061, 0x002f, 0x0073, 0 };
-static const unichar_t str_2102[] = { 0x0043, 0 };
-static const unichar_t str_2103[] = { 0x00b0, 0x0043, 0 };
-static const unichar_t str_2105[] = { 0x0063, 0x002f, 0x006f, 0 };
-static const unichar_t str_2106[] = { 0x0063, 0x002f, 0x0075, 0 };
-static const unichar_t str_2107[] = { 0x0190, 0 };
-static const unichar_t str_2109[] = { 0x00b0, 0x0046, 0 };
-static const unichar_t str_210a[] = { 0x0067, 0 };
-static const unichar_t str_210b[] = { 0x0048, 0 };
-static const unichar_t str_210c[] = { 0x0048, 0 };
-static const unichar_t str_210d[] = { 0x0048, 0 };
-static const unichar_t str_210e[] = { 0x0068, 0 };
-static const unichar_t str_210f[] = { 0x0127, 0 };
-static const unichar_t str_2110[] = { 0x0049, 0 };
-static const unichar_t str_2111[] = { 0x0049, 0 };
-static const unichar_t str_2112[] = { 0x004c, 0 };
-static const unichar_t str_2113[] = { 0x006c, 0 };
-static const unichar_t str_2115[] = { 0x004e, 0 };
-static const unichar_t str_2116[] = { 0x004e, 0x006f, 0 };
-static const unichar_t str_2119[] = { 0x0050, 0 };
-static const unichar_t str_211a[] = { 0x0051, 0 };
-static const unichar_t str_211b[] = { 0x0052, 0 };
-static const unichar_t str_211c[] = { 0x0052, 0 };
-static const unichar_t str_211d[] = { 0x0052, 0 };
-static const unichar_t str_2120[] = { 0x0053, 0x004d, 0 };
-static const unichar_t str_2121[] = { 0x0054, 0x0045, 0x004c, 0 };
-static const unichar_t str_2122[] = { 0x0054, 0x004d, 0 };
-static const unichar_t str_2124[] = { 0x005a, 0 };
-static const unichar_t str_2126[] = { 0x03a9, 0 };
-static const unichar_t str_2128[] = { 0x005a, 0 };
-static const unichar_t str_212a[] = { 0x004b, 0 };
-static const unichar_t str_212b[] = { 0x00c5, 0 };
-static const unichar_t str_212c[] = { 0x0042, 0 };
-static const unichar_t str_212d[] = { 0x0043, 0 };
-static const unichar_t str_212f[] = { 0x0065, 0 };
-static const unichar_t str_2130[] = { 0x0045, 0 };
-static const unichar_t str_2131[] = { 0x0046, 0 };
-static const unichar_t str_2133[] = { 0x004d, 0 };
-static const unichar_t str_2134[] = { 0x006f, 0 };
-static const unichar_t str_2135[] = { 0x05d0, 0 };
-static const unichar_t str_2136[] = { 0x05d1, 0 };
-static const unichar_t str_2137[] = { 0x05d2, 0 };
-static const unichar_t str_2138[] = { 0x05d3, 0 };
-static const unichar_t str_2139[] = { 0x0069, 0 };
-static const unichar_t str_213b[] = { 0x0046, 0x0041, 0x0058, 0 };
-static const unichar_t str_213c[] = { 0x03c0, 0 };
-static const unichar_t str_213d[] = { 0x03b3, 0 };
-static const unichar_t str_213e[] = { 0x0393, 0 };
-static const unichar_t str_213f[] = { 0x03a0, 0 };
-static const unichar_t str_2140[] = { 0x2211, 0 };
-static const unichar_t str_2145[] = { 0x0044, 0 };
-static const unichar_t str_2146[] = { 0x0064, 0 };
-static const unichar_t str_2147[] = { 0x0065, 0 };
-static const unichar_t str_2148[] = { 0x0069, 0 };
-static const unichar_t str_2149[] = { 0x006a, 0 };
-static const unichar_t str_2150[] = { 0x0031, 0x2044, 0x0037, 0 };
-static const unichar_t str_2151[] = { 0x0031, 0x2044, 0x0039, 0 };
-static const unichar_t str_2152[] = { 0x0031, 0x2044, 0x0031, 0x0030, 0 };
-static const unichar_t str_2153[] = { 0x0031, 0x2044, 0x0033, 0 };
-static const unichar_t str_2154[] = { 0x0032, 0x2044, 0x0033, 0 };
-static const unichar_t str_2155[] = { 0x0031, 0x2044, 0x0035, 0 };
-static const unichar_t str_2156[] = { 0x0032, 0x2044, 0x0035, 0 };
-static const unichar_t str_2157[] = { 0x0033, 0x2044, 0x0035, 0 };
-static const unichar_t str_2158[] = { 0x0034, 0x2044, 0x0035, 0 };
-static const unichar_t str_2159[] = { 0x0031, 0x2044, 0x0036, 0 };
-static const unichar_t str_215a[] = { 0x0035, 0x2044, 0x0036, 0 };
-static const unichar_t str_215b[] = { 0x0031, 0x2044, 0x0038, 0 };
-static const unichar_t str_215c[] = { 0x0033, 0x2044, 0x0038, 0 };
-static const unichar_t str_215d[] = { 0x0035, 0x2044, 0x0038, 0 };
-static const unichar_t str_215e[] = { 0x0037, 0x2044, 0x0038, 0 };
-static const unichar_t str_215f[] = { 0x0031, 0x2044, 0 };
-static const unichar_t str_2160[] = { 0x0049, 0 };
-static const unichar_t str_2161[] = { 0x0049, 0x0049, 0 };
-static const unichar_t str_2162[] = { 0x0049, 0x0049, 0x0049, 0 };
-static const unichar_t str_2163[] = { 0x0049, 0x0056, 0 };
-static const unichar_t str_2164[] = { 0x0056, 0 };
-static const unichar_t str_2165[] = { 0x0056, 0x0049, 0 };
-static const unichar_t str_2166[] = { 0x0056, 0x0049, 0x0049, 0 };
-static const unichar_t str_2167[] = { 0x0056, 0x0049, 0x0049, 0x0049, 0 };
-static const unichar_t str_2168[] = { 0x0049, 0x0058, 0 };
-static const unichar_t str_2169[] = { 0x0058, 0 };
-static const unichar_t str_216a[] = { 0x0058, 0x0049, 0 };
-static const unichar_t str_216b[] = { 0x0058, 0x0049, 0x0049, 0 };
-static const unichar_t str_216c[] = { 0x004c, 0 };
-static const unichar_t str_216d[] = { 0x0043, 0 };
-static const unichar_t str_216e[] = { 0x0044, 0 };
-static const unichar_t str_216f[] = { 0x004d, 0 };
-static const unichar_t str_2170[] = { 0x0069, 0 };
-static const unichar_t str_2171[] = { 0x0069, 0x0069, 0 };
-static const unichar_t str_2172[] = { 0x0069, 0x0069, 0x0069, 0 };
-static const unichar_t str_2173[] = { 0x0069, 0x0076, 0 };
-static const unichar_t str_2174[] = { 0x0076, 0 };
-static const unichar_t str_2175[] = { 0x0076, 0x0069, 0 };
-static const unichar_t str_2176[] = { 0x0076, 0x0069, 0x0069, 0 };
-static const unichar_t str_2177[] = { 0x0076, 0x0069, 0x0069, 0x0069, 0 };
-static const unichar_t str_2178[] = { 0x0069, 0x0078, 0 };
-static const unichar_t str_2179[] = { 0x0078, 0 };
-static const unichar_t str_217a[] = { 0x0078, 0x0069, 0 };
-static const unichar_t str_217b[] = { 0x0078, 0x0069, 0x0069, 0 };
-static const unichar_t str_217c[] = { 0x006c, 0 };
-static const unichar_t str_217d[] = { 0x0063, 0 };
-static const unichar_t str_217e[] = { 0x0064, 0 };
-static const unichar_t str_217f[] = { 0x006d, 0 };
-static const unichar_t str_2189[] = { 0x0030, 0x2044, 0x0033, 0 };
-static const unichar_t str_219a[] = { 0x2190, 0x0338, 0 };
-static const unichar_t str_219b[] = { 0x2192, 0x0338, 0 };
-static const unichar_t str_21ae[] = { 0x2194, 0x0338, 0 };
-static const unichar_t str_21cd[] = { 0x21d0, 0x0338, 0 };
-static const unichar_t str_21ce[] = { 0x21d4, 0x0338, 0 };
-static const unichar_t str_21cf[] = { 0x21d2, 0x0338, 0 };
-static const unichar_t str_2204[] = { 0x2203, 0x0338, 0 };
-static const unichar_t str_2205[] = { 0x00d8, 0 };
-static const unichar_t str_2206[] = { 0x0394, 0 };
-static const unichar_t str_2209[] = { 0x2208, 0x0338, 0 };
-static const unichar_t str_220c[] = { 0x220b, 0x0338, 0 };
-static const unichar_t str_220f[] = { 0x03a0, 0 };
-static const unichar_t str_2211[] = { 0x03a3, 0 };
-static const unichar_t str_2212[] = { 0x002d, 0 };
-static const unichar_t str_2215[] = { 0x002f, 0 };
-static const unichar_t str_2216[] = { 0x005c, 0 };
-static const unichar_t str_2217[] = { 0x002a, 0 };
-static const unichar_t str_2218[] = { 0x00b0, 0 };
-static const unichar_t str_2219[] = { 0x00b7, 0 };
-static const unichar_t str_2223[] = { 0x007c, 0 };
-static const unichar_t str_2224[] = { 0x2223, 0x0338, 0 };
-static const unichar_t str_2225[] = { 0x007c, 0x007c, 0 };
-static const unichar_t str_2226[] = { 0x2225, 0x0338, 0 };
-static const unichar_t str_222c[] = { 0x222b, 0x222b, 0 };
-static const unichar_t str_222d[] = { 0x222b, 0x222b, 0x222b, 0 };
-static const unichar_t str_222f[] = { 0x222e, 0x222e, 0 };
-static const unichar_t str_2230[] = { 0x222e, 0x222e, 0x222e, 0 };
-static const unichar_t str_2236[] = { 0x003a, 0 };
-static const unichar_t str_223c[] = { 0x007e, 0 };
-static const unichar_t str_2241[] = { 0x223c, 0x0338, 0 };
-static const unichar_t str_2244[] = { 0x2243, 0x0338, 0 };
-static const unichar_t str_2247[] = { 0x2245, 0x0338, 0 };
-static const unichar_t str_2249[] = { 0x2248, 0x0338, 0 };
-static const unichar_t str_2260[] = { 0x003d, 0x0338, 0 };
-static const unichar_t str_2262[] = { 0x2261, 0x0338, 0 };
-static const unichar_t str_226a[] = { 0x00ab, 0 };
-static const unichar_t str_226b[] = { 0x00bb, 0 };
-static const unichar_t str_226d[] = { 0x224d, 0x0338, 0 };
-static const unichar_t str_226e[] = { 0x003c, 0x0338, 0 };
-static const unichar_t str_226f[] = { 0x003e, 0x0338, 0 };
-static const unichar_t str_2270[] = { 0x2264, 0x0338, 0 };
-static const unichar_t str_2271[] = { 0x2265, 0x0338, 0 };
-static const unichar_t str_2274[] = { 0x2272, 0x0338, 0 };
-static const unichar_t str_2275[] = { 0x2273, 0x0338, 0 };
-static const unichar_t str_2278[] = { 0x2276, 0x0338, 0 };
-static const unichar_t str_2279[] = { 0x2277, 0x0338, 0 };
-static const unichar_t str_2280[] = { 0x227a, 0x0338, 0 };
-static const unichar_t str_2281[] = { 0x227b, 0x0338, 0 };
-static const unichar_t str_2284[] = { 0x2282, 0x0338, 0 };
-static const unichar_t str_2285[] = { 0x2283, 0x0338, 0 };
-static const unichar_t str_2288[] = { 0x2286, 0x0338, 0 };
-static const unichar_t str_2289[] = { 0x2287, 0x0338, 0 };
-static const unichar_t str_2299[] = { 0x0298, 0 };
-static const unichar_t str_22ac[] = { 0x22a2, 0x0338, 0 };
-static const unichar_t str_22ad[] = { 0x22a8, 0x0338, 0 };
-static const unichar_t str_22ae[] = { 0x22a9, 0x0338, 0 };
-static const unichar_t str_22af[] = { 0x22ab, 0x0338, 0 };
-static const unichar_t str_22c4[] = { 0x25ca, 0 };
-static const unichar_t str_22c5[] = { 0x00b7, 0 };
-static const unichar_t str_22e0[] = { 0x227c, 0x0338, 0 };
-static const unichar_t str_22e1[] = { 0x227d, 0x0338, 0 };
-static const unichar_t str_22e2[] = { 0x2291, 0x0338, 0 };
-static const unichar_t str_22e3[] = { 0x2292, 0x0338, 0 };
-static const unichar_t str_22ea[] = { 0x22b2, 0x0338, 0 };
-static const unichar_t str_22eb[] = { 0x22b3, 0x0338, 0 };
-static const unichar_t str_22ec[] = { 0x22b4, 0x0338, 0 };
-static const unichar_t str_22ed[] = { 0x22b5, 0x0338, 0 };
-static const unichar_t str_22ef[] = { 0x00b7, 0x00b7, 0x00b7, 0 };
-static const unichar_t str_2303[] = { 0x005e, 0 };
-static const unichar_t str_2329[] = { 0x3008, 0 };
-static const unichar_t str_232a[] = { 0x3009, 0 };
-static const unichar_t str_2373[] = { 0x03b9, 0 };
-static const unichar_t str_2374[] = { 0x03c1, 0 };
-static const unichar_t str_2375[] = { 0x03c9, 0 };
-static const unichar_t str_237a[] = { 0x03b1, 0 };
-static const unichar_t str_2400[] = { 0x004e, 0x0055, 0x004c, 0 };
-static const unichar_t str_2401[] = { 0x0053, 0x004f, 0x0048, 0 };
-static const unichar_t str_2402[] = { 0x0053, 0x0054, 0x0058, 0 };
-static const unichar_t str_2403[] = { 0x0045, 0x0054, 0x0058, 0 };
-static const unichar_t str_2404[] = { 0x0045, 0x004f, 0x0054, 0 };
-static const unichar_t str_2405[] = { 0x0045, 0x004e, 0x0041, 0 };
-static const unichar_t str_2406[] = { 0x0041, 0x0043, 0x004b, 0 };
-static const unichar_t str_2407[] = { 0x0042, 0x0045, 0x004c, 0 };
-static const unichar_t str_2408[] = { 0x0042, 0x0053, 0 };
-static const unichar_t str_2409[] = { 0x0048, 0x0054, 0 };
-static const unichar_t str_240a[] = { 0x004c, 0x0046, 0 };
-static const unichar_t str_240b[] = { 0x0056, 0x0054, 0 };
-static const unichar_t str_240c[] = { 0x0046, 0x0046, 0 };
-static const unichar_t str_240d[] = { 0x0043, 0x0052, 0 };
-static const unichar_t str_240e[] = { 0x0053, 0x004f, 0 };
-static const unichar_t str_240f[] = { 0x0053, 0x0049, 0 };
-static const unichar_t str_2410[] = { 0x0044, 0x004c, 0x0045, 0 };
-static const unichar_t str_2411[] = { 0x0044, 0x0043, 0x0031, 0 };
-static const unichar_t str_2412[] = { 0x0044, 0x0043, 0x0032, 0 };
-static const unichar_t str_2413[] = { 0x0044, 0x0043, 0x0033, 0 };
-static const unichar_t str_2414[] = { 0x0044, 0x0043, 0x0034, 0 };
-static const unichar_t str_2415[] = { 0x004e, 0x0041, 0x004b, 0 };
-static const unichar_t str_2416[] = { 0x0053, 0x0059, 0x004e, 0 };
-static const unichar_t str_2417[] = { 0x0045, 0x0054, 0x0042, 0 };
-static const unichar_t str_2418[] = { 0x0043, 0x0041, 0x004e, 0 };
-static const unichar_t str_2419[] = { 0x0045, 0x004d, 0 };
-static const unichar_t str_241a[] = { 0x0053, 0x0055, 0x0042, 0 };
-static const unichar_t str_241b[] = { 0x0045, 0x0053, 0x0043, 0 };
-static const unichar_t str_241c[] = { 0x0046, 0x0053, 0 };
-static const unichar_t str_241d[] = { 0x0047, 0x0053, 0 };
-static const unichar_t str_241e[] = { 0x0052, 0x0053, 0 };
-static const unichar_t str_241f[] = { 0x0055, 0x0053, 0 };
-static const unichar_t str_2420[] = { 0x0053, 0x0050, 0 };
-static const unichar_t str_2421[] = { 0x0044, 0x0045, 0x004c, 0 };
-static const unichar_t str_2422[] = { 0x0180, 0 };
-static const unichar_t str_2460[] = { 0x0031, 0x20dd, 0 };
-static const unichar_t str_2461[] = { 0x0032, 0x20dd, 0 };
-static const unichar_t str_2462[] = { 0x0033, 0x20dd, 0 };
-static const unichar_t str_2463[] = { 0x0034, 0x20dd, 0 };
-static const unichar_t str_2464[] = { 0x0035, 0x20dd, 0 };
-static const unichar_t str_2465[] = { 0x0036, 0x20dd, 0 };
-static const unichar_t str_2466[] = { 0x0037, 0x20dd, 0 };
-static const unichar_t str_2467[] = { 0x0038, 0x20dd, 0 };
-static const unichar_t str_2468[] = { 0x0039, 0x20dd, 0 };
-static const unichar_t str_2469[] = { 0x0031, 0x0030, 0x20dd, 0 };
-static const unichar_t str_246a[] = { 0x0031, 0x0031, 0x20dd, 0 };
-static const unichar_t str_246b[] = { 0x0031, 0x0032, 0x20dd, 0 };
-static const unichar_t str_246c[] = { 0x0031, 0x0033, 0x20dd, 0 };
-static const unichar_t str_246d[] = { 0x0031, 0x0034, 0x20dd, 0 };
-static const unichar_t str_246e[] = { 0x0031, 0x0035, 0x20dd, 0 };
-static const unichar_t str_246f[] = { 0x0031, 0x0036, 0x20dd, 0 };
-static const unichar_t str_2470[] = { 0x0031, 0x0037, 0x20dd, 0 };
-static const unichar_t str_2471[] = { 0x0031, 0x0038, 0x20dd, 0 };
-static const unichar_t str_2472[] = { 0x0031, 0x0039, 0x20dd, 0 };
-static const unichar_t str_2473[] = { 0x0032, 0x0030, 0x20dd, 0 };
-static const unichar_t str_2474[] = { 0x0028, 0x0031, 0x0029, 0 };
-static const unichar_t str_2475[] = { 0x0028, 0x0032, 0x0029, 0 };
-static const unichar_t str_2476[] = { 0x0028, 0x0033, 0x0029, 0 };
-static const unichar_t str_2477[] = { 0x0028, 0x0034, 0x0029, 0 };
-static const unichar_t str_2478[] = { 0x0028, 0x0035, 0x0029, 0 };
-static const unichar_t str_2479[] = { 0x0028, 0x0036, 0x0029, 0 };
-static const unichar_t str_247a[] = { 0x0028, 0x0037, 0x0029, 0 };
-static const unichar_t str_247b[] = { 0x0028, 0x0038, 0x0029, 0 };
-static const unichar_t str_247c[] = { 0x0028, 0x0039, 0x0029, 0 };
-static const unichar_t str_247d[] = { 0x0028, 0x0031, 0x0030, 0x0029, 0 };
-static const unichar_t str_247e[] = { 0x0028, 0x0031, 0x0031, 0x0029, 0 };
-static const unichar_t str_247f[] = { 0x0028, 0x0031, 0x0032, 0x0029, 0 };
-static const unichar_t str_2480[] = { 0x0028, 0x0031, 0x0033, 0x0029, 0 };
-static const unichar_t str_2481[] = { 0x0028, 0x0031, 0x0034, 0x0029, 0 };
-static const unichar_t str_2482[] = { 0x0028, 0x0031, 0x0035, 0x0029, 0 };
-static const unichar_t str_2483[] = { 0x0028, 0x0031, 0x0036, 0x0029, 0 };
-static const unichar_t str_2484[] = { 0x0028, 0x0031, 0x0037, 0x0029, 0 };
-static const unichar_t str_2485[] = { 0x0028, 0x0031, 0x0038, 0x0029, 0 };
-static const unichar_t str_2486[] = { 0x0028, 0x0031, 0x0039, 0x0029, 0 };
-static const unichar_t str_2487[] = { 0x0028, 0x0032, 0x0030, 0x0029, 0 };
-static const unichar_t str_2488[] = { 0x0031, 0x002e, 0 };
-static const unichar_t str_2489[] = { 0x0032, 0x002e, 0 };
-static const unichar_t str_248a[] = { 0x0033, 0x002e, 0 };
-static const unichar_t str_248b[] = { 0x0034, 0x002e, 0 };
-static const unichar_t str_248c[] = { 0x0035, 0x002e, 0 };
-static const unichar_t str_248d[] = { 0x0036, 0x002e, 0 };
-static const unichar_t str_248e[] = { 0x0037, 0x002e, 0 };
-static const unichar_t str_248f[] = { 0x0038, 0x002e, 0 };
-static const unichar_t str_2490[] = { 0x0039, 0x002e, 0 };
-static const unichar_t str_2491[] = { 0x0031, 0x0030, 0x002e, 0 };
-static const unichar_t str_2492[] = { 0x0031, 0x0031, 0x002e, 0 };
-static const unichar_t str_2493[] = { 0x0031, 0x0032, 0x002e, 0 };
-static const unichar_t str_2494[] = { 0x0031, 0x0033, 0x002e, 0 };
-static const unichar_t str_2495[] = { 0x0031, 0x0034, 0x002e, 0 };
-static const unichar_t str_2496[] = { 0x0031, 0x0035, 0x002e, 0 };
-static const unichar_t str_2497[] = { 0x0031, 0x0036, 0x002e, 0 };
-static const unichar_t str_2498[] = { 0x0031, 0x0037, 0x002e, 0 };
-static const unichar_t str_2499[] = { 0x0031, 0x0038, 0x002e, 0 };
-static const unichar_t str_249a[] = { 0x0031, 0x0039, 0x002e, 0 };
-static const unichar_t str_249b[] = { 0x0032, 0x0030, 0x002e, 0 };
-static const unichar_t str_249c[] = { 0x0028, 0x0061, 0x0029, 0 };
-static const unichar_t str_249d[] = { 0x0028, 0x0062, 0x0029, 0 };
-static const unichar_t str_249e[] = { 0x0028, 0x0063, 0x0029, 0 };
-static const unichar_t str_249f[] = { 0x0028, 0x0064, 0x0029, 0 };
-static const unichar_t str_24a0[] = { 0x0028, 0x0065, 0x0029, 0 };
-static const unichar_t str_24a1[] = { 0x0028, 0x0066, 0x0029, 0 };
-static const unichar_t str_24a2[] = { 0x0028, 0x0067, 0x0029, 0 };
-static const unichar_t str_24a3[] = { 0x0028, 0x0068, 0x0029, 0 };
-static const unichar_t str_24a4[] = { 0x0028, 0x0069, 0x0029, 0 };
-static const unichar_t str_24a5[] = { 0x0028, 0x006a, 0x0029, 0 };
-static const unichar_t str_24a6[] = { 0x0028, 0x006b, 0x0029, 0 };
-static const unichar_t str_24a7[] = { 0x0028, 0x006c, 0x0029, 0 };
-static const unichar_t str_24a8[] = { 0x0028, 0x006d, 0x0029, 0 };
-static const unichar_t str_24a9[] = { 0x0028, 0x006e, 0x0029, 0 };
-static const unichar_t str_24aa[] = { 0x0028, 0x006f, 0x0029, 0 };
-static const unichar_t str_24ab[] = { 0x0028, 0x0070, 0x0029, 0 };
-static const unichar_t str_24ac[] = { 0x0028, 0x0071, 0x0029, 0 };
-static const unichar_t str_24ad[] = { 0x0028, 0x0072, 0x0029, 0 };
-static const unichar_t str_24ae[] = { 0x0028, 0x0073, 0x0029, 0 };
-static const unichar_t str_24af[] = { 0x0028, 0x0074, 0x0029, 0 };
-static const unichar_t str_24b0[] = { 0x0028, 0x0075, 0x0029, 0 };
-static const unichar_t str_24b1[] = { 0x0028, 0x0076, 0x0029, 0 };
-static const unichar_t str_24b2[] = { 0x0028, 0x0077, 0x0029, 0 };
-static const unichar_t str_24b3[] = { 0x0028, 0x0078, 0x0029, 0 };
-static const unichar_t str_24b4[] = { 0x0028, 0x0079, 0x0029, 0 };
-static const unichar_t str_24b5[] = { 0x0028, 0x007a, 0x0029, 0 };
-static const unichar_t str_24b6[] = { 0x0041, 0x20dd, 0 };
-static const unichar_t str_24b7[] = { 0x0042, 0x20dd, 0 };
-static const unichar_t str_24b8[] = { 0x0043, 0x20dd, 0 };
-static const unichar_t str_24b9[] = { 0x0044, 0x20dd, 0 };
-static const unichar_t str_24ba[] = { 0x0045, 0x20dd, 0 };
-static const unichar_t str_24bb[] = { 0x0046, 0x20dd, 0 };
-static const unichar_t str_24bc[] = { 0x0047, 0x20dd, 0 };
-static const unichar_t str_24bd[] = { 0x0048, 0x20dd, 0 };
-static const unichar_t str_24be[] = { 0x0049, 0x20dd, 0 };
-static const unichar_t str_24bf[] = { 0x004a, 0x20dd, 0 };
-static const unichar_t str_24c0[] = { 0x004b, 0x20dd, 0 };
-static const unichar_t str_24c1[] = { 0x004c, 0x20dd, 0 };
-static const unichar_t str_24c2[] = { 0x004d, 0x20dd, 0 };
-static const unichar_t str_24c3[] = { 0x004e, 0x20dd, 0 };
-static const unichar_t str_24c4[] = { 0x004f, 0x20dd, 0 };
-static const unichar_t str_24c5[] = { 0x0050, 0x20dd, 0 };
-static const unichar_t str_24c6[] = { 0x0051, 0x20dd, 0 };
-static const unichar_t str_24c7[] = { 0x0052, 0x20dd, 0 };
-static const unichar_t str_24c8[] = { 0x0053, 0x20dd, 0 };
-static const unichar_t str_24c9[] = { 0x0054, 0x20dd, 0 };
-static const unichar_t str_24ca[] = { 0x0055, 0x20dd, 0 };
-static const unichar_t str_24cb[] = { 0x0056, 0x20dd, 0 };
-static const unichar_t str_24cc[] = { 0x0057, 0x20dd, 0 };
-static const unichar_t str_24cd[] = { 0x0058, 0x20dd, 0 };
-static const unichar_t str_24ce[] = { 0x0059, 0x20dd, 0 };
-static const unichar_t str_24cf[] = { 0x005a, 0x20dd, 0 };
-static const unichar_t str_24d0[] = { 0x0061, 0x20dd, 0 };
-static const unichar_t str_24d1[] = { 0x0062, 0x20dd, 0 };
-static const unichar_t str_24d2[] = { 0x0063, 0x20dd, 0 };
-static const unichar_t str_24d3[] = { 0x0064, 0x20dd, 0 };
-static const unichar_t str_24d4[] = { 0x0065, 0x20dd, 0 };
-static const unichar_t str_24d5[] = { 0x0066, 0x20dd, 0 };
-static const unichar_t str_24d6[] = { 0x0067, 0x20dd, 0 };
-static const unichar_t str_24d7[] = { 0x0068, 0x20dd, 0 };
-static const unichar_t str_24d8[] = { 0x0069, 0x20dd, 0 };
-static const unichar_t str_24d9[] = { 0x006a, 0x20dd, 0 };
-static const unichar_t str_24da[] = { 0x006b, 0x20dd, 0 };
-static const unichar_t str_24db[] = { 0x006c, 0x20dd, 0 };
-static const unichar_t str_24dc[] = { 0x006d, 0x20dd, 0 };
-static const unichar_t str_24dd[] = { 0x006e, 0x20dd, 0 };
-static const unichar_t str_24de[] = { 0x006f, 0x20dd, 0 };
-static const unichar_t str_24df[] = { 0x0070, 0x20dd, 0 };
-static const unichar_t str_24e0[] = { 0x0071, 0x20dd, 0 };
-static const unichar_t str_24e1[] = { 0x0072, 0x20dd, 0 };
-static const unichar_t str_24e2[] = { 0x0073, 0x20dd, 0 };
-static const unichar_t str_24e3[] = { 0x0074, 0x20dd, 0 };
-static const unichar_t str_24e4[] = { 0x0075, 0x20dd, 0 };
-static const unichar_t str_24e5[] = { 0x0076, 0x20dd, 0 };
-static const unichar_t str_24e6[] = { 0x0077, 0x20dd, 0 };
-static const unichar_t str_24e7[] = { 0x0078, 0x20dd, 0 };
-static const unichar_t str_24e8[] = { 0x0079, 0x20dd, 0 };
-static const unichar_t str_24e9[] = { 0x007a, 0x20dd, 0 };
-static const unichar_t str_24ea[] = { 0x0030, 0x20dd, 0 };
-static const unichar_t str_2500[] = { 0x2014, 0 };
-static const unichar_t str_2502[] = { 0x007c, 0 };
-static const unichar_t str_25b3[] = { 0x2206, 0 };
-static const unichar_t str_25b8[] = { 0x2023, 0 };
-static const unichar_t str_25bd[] = { 0x2207, 0 };
-static const unichar_t str_25c7[] = { 0x25ca, 0 };
-static const unichar_t str_25e6[] = { 0x00b0, 0 };
-static const unichar_t str_2662[] = { 0x25ca, 0 };
-static const unichar_t str_2731[] = { 0x002a, 0 };
-static const unichar_t str_2758[] = { 0x007c, 0 };
-static const unichar_t str_2762[] = { 0x0021, 0 };
-static const unichar_t str_2a0c[] = { 0x222b, 0x222b, 0x222b, 0x222b, 0 };
-static const unichar_t str_2a74[] = { 0x003a, 0x003a, 0x003d, 0 };
-static const unichar_t str_2a75[] = { 0x003d, 0x003d, 0 };
-static const unichar_t str_2a76[] = { 0x003d, 0x003d, 0x003d, 0 };
-static const unichar_t str_2adc[] = { 0x2add, 0x0338, 0 };
-static const unichar_t str_2c7c[] = { 0x006a, 0 };
-static const unichar_t str_2c7d[] = { 0x0056, 0 };
-static const unichar_t str_2d6f[] = { 0x2d61, 0 };
-static const unichar_t str_2e28[] = { 0xff5f, 0 };
-static const unichar_t str_2e29[] = { 0xff60, 0 };
-static const unichar_t str_2e9f[] = { 0x6bcd, 0 };
-static const unichar_t str_2ef3[] = { 0x9f9f, 0 };
-static const unichar_t str_2f00[] = { 0x4e00, 0 };
-static const unichar_t str_2f01[] = { 0x4e28, 0 };
-static const unichar_t str_2f02[] = { 0x4e36, 0 };
-static const unichar_t str_2f03[] = { 0x4e3f, 0 };
-static const unichar_t str_2f04[] = { 0x4e59, 0 };
-static const unichar_t str_2f05[] = { 0x4e85, 0 };
-static const unichar_t str_2f06[] = { 0x4e8c, 0 };
-static const unichar_t str_2f07[] = { 0x4ea0, 0 };
-static const unichar_t str_2f08[] = { 0x4eba, 0 };
-static const unichar_t str_2f09[] = { 0x513f, 0 };
-static const unichar_t str_2f0a[] = { 0x5165, 0 };
-static const unichar_t str_2f0b[] = { 0x516b, 0 };
-static const unichar_t str_2f0c[] = { 0x5182, 0 };
-static const unichar_t str_2f0d[] = { 0x5196, 0 };
-static const unichar_t str_2f0e[] = { 0x51ab, 0 };
-static const unichar_t str_2f0f[] = { 0x51e0, 0 };
-static const unichar_t str_2f10[] = { 0x51f5, 0 };
-static const unichar_t str_2f11[] = { 0x5200, 0 };
-static const unichar_t str_2f12[] = { 0x529b, 0 };
-static const unichar_t str_2f13[] = { 0x52f9, 0 };
-static const unichar_t str_2f14[] = { 0x5315, 0 };
-static const unichar_t str_2f15[] = { 0x531a, 0 };
-static const unichar_t str_2f16[] = { 0x5338, 0 };
-static const unichar_t str_2f17[] = { 0x5341, 0 };
-static const unichar_t str_2f18[] = { 0x535c, 0 };
-static const unichar_t str_2f19[] = { 0x5369, 0 };
-static const unichar_t str_2f1a[] = { 0x5382, 0 };
-static const unichar_t str_2f1b[] = { 0x53b6, 0 };
-static const unichar_t str_2f1c[] = { 0x53c8, 0 };
-static const unichar_t str_2f1d[] = { 0x53e3, 0 };
-static const unichar_t str_2f1e[] = { 0x56d7, 0 };
-static const unichar_t str_2f1f[] = { 0x571f, 0 };
-static const unichar_t str_2f20[] = { 0x58eb, 0 };
-static const unichar_t str_2f21[] = { 0x5902, 0 };
-static const unichar_t str_2f22[] = { 0x590a, 0 };
-static const unichar_t str_2f23[] = { 0x5915, 0 };
-static const unichar_t str_2f24[] = { 0x5927, 0 };
-static const unichar_t str_2f25[] = { 0x5973, 0 };
-static const unichar_t str_2f26[] = { 0x5b50, 0 };
-static const unichar_t str_2f27[] = { 0x5b80, 0 };
-static const unichar_t str_2f28[] = { 0x5bf8, 0 };
-static const unichar_t str_2f29[] = { 0x5c0f, 0 };
-static const unichar_t str_2f2a[] = { 0x5c22, 0 };
-static const unichar_t str_2f2b[] = { 0x5c38, 0 };
-static const unichar_t str_2f2c[] = { 0x5c6e, 0 };
-static const unichar_t str_2f2d[] = { 0x5c71, 0 };
-static const unichar_t str_2f2e[] = { 0x5ddb, 0 };
-static const unichar_t str_2f2f[] = { 0x5de5, 0 };
-static const unichar_t str_2f30[] = { 0x5df1, 0 };
-static const unichar_t str_2f31[] = { 0x5dfe, 0 };
-static const unichar_t str_2f32[] = { 0x5e72, 0 };
-static const unichar_t str_2f33[] = { 0x5e7a, 0 };
-static const unichar_t str_2f34[] = { 0x5e7f, 0 };
-static const unichar_t str_2f35[] = { 0x5ef4, 0 };
-static const unichar_t str_2f36[] = { 0x5efe, 0 };
-static const unichar_t str_2f37[] = { 0x5f0b, 0 };
-static const unichar_t str_2f38[] = { 0x5f13, 0 };
-static const unichar_t str_2f39[] = { 0x5f50, 0 };
-static const unichar_t str_2f3a[] = { 0x5f61, 0 };
-static const unichar_t str_2f3b[] = { 0x5f73, 0 };
-static const unichar_t str_2f3c[] = { 0x5fc3, 0 };
-static const unichar_t str_2f3d[] = { 0x6208, 0 };
-static const unichar_t str_2f3e[] = { 0x6236, 0 };
-static const unichar_t str_2f3f[] = { 0x624b, 0 };
-static const unichar_t str_2f40[] = { 0x652f, 0 };
-static const unichar_t str_2f41[] = { 0x6534, 0 };
-static const unichar_t str_2f42[] = { 0x6587, 0 };
-static const unichar_t str_2f43[] = { 0x6597, 0 };
-static const unichar_t str_2f44[] = { 0x65a4, 0 };
-static const unichar_t str_2f45[] = { 0x65b9, 0 };
-static const unichar_t str_2f46[] = { 0x65e0, 0 };
-static const unichar_t str_2f47[] = { 0x65e5, 0 };
-static const unichar_t str_2f48[] = { 0x66f0, 0 };
-static const unichar_t str_2f49[] = { 0x6708, 0 };
-static const unichar_t str_2f4a[] = { 0x6728, 0 };
-static const unichar_t str_2f4b[] = { 0x6b20, 0 };
-static const unichar_t str_2f4c[] = { 0x6b62, 0 };
-static const unichar_t str_2f4d[] = { 0x6b79, 0 };
-static const unichar_t str_2f4e[] = { 0x6bb3, 0 };
-static const unichar_t str_2f4f[] = { 0x6bcb, 0 };
-static const unichar_t str_2f50[] = { 0x6bd4, 0 };
-static const unichar_t str_2f51[] = { 0x6bdb, 0 };
-static const unichar_t str_2f52[] = { 0x6c0f, 0 };
-static const unichar_t str_2f53[] = { 0x6c14, 0 };
-static const unichar_t str_2f54[] = { 0x6c34, 0 };
-static const unichar_t str_2f55[] = { 0x706b, 0 };
-static const unichar_t str_2f56[] = { 0x722a, 0 };
-static const unichar_t str_2f57[] = { 0x7236, 0 };
-static const unichar_t str_2f58[] = { 0x723b, 0 };
-static const unichar_t str_2f59[] = { 0x723f, 0 };
-static const unichar_t str_2f5a[] = { 0x7247, 0 };
-static const unichar_t str_2f5b[] = { 0x7259, 0 };
-static const unichar_t str_2f5c[] = { 0x725b, 0 };
-static const unichar_t str_2f5d[] = { 0x72ac, 0 };
-static const unichar_t str_2f5e[] = { 0x7384, 0 };
-static const unichar_t str_2f5f[] = { 0x7389, 0 };
-static const unichar_t str_2f60[] = { 0x74dc, 0 };
-static const unichar_t str_2f61[] = { 0x74e6, 0 };
-static const unichar_t str_2f62[] = { 0x7518, 0 };
-static const unichar_t str_2f63[] = { 0x751f, 0 };
-static const unichar_t str_2f64[] = { 0x7528, 0 };
-static const unichar_t str_2f65[] = { 0x7530, 0 };
-static const unichar_t str_2f66[] = { 0x758b, 0 };
-static const unichar_t str_2f67[] = { 0x7592, 0 };
-static const unichar_t str_2f68[] = { 0x7676, 0 };
-static const unichar_t str_2f69[] = { 0x767d, 0 };
-static const unichar_t str_2f6a[] = { 0x76ae, 0 };
-static const unichar_t str_2f6b[] = { 0x76bf, 0 };
-static const unichar_t str_2f6c[] = { 0x76ee, 0 };
-static const unichar_t str_2f6d[] = { 0x77db, 0 };
-static const unichar_t str_2f6e[] = { 0x77e2, 0 };
-static const unichar_t str_2f6f[] = { 0x77f3, 0 };
-static const unichar_t str_2f70[] = { 0x793a, 0 };
-static const unichar_t str_2f71[] = { 0x79b8, 0 };
-static const unichar_t str_2f72[] = { 0x79be, 0 };
-static const unichar_t str_2f73[] = { 0x7a74, 0 };
-static const unichar_t str_2f74[] = { 0x7acb, 0 };
-static const unichar_t str_2f75[] = { 0x7af9, 0 };
-static const unichar_t str_2f76[] = { 0x7c73, 0 };
-static const unichar_t str_2f77[] = { 0x7cf8, 0 };
-static const unichar_t str_2f78[] = { 0x7f36, 0 };
-static const unichar_t str_2f79[] = { 0x7f51, 0 };
-static const unichar_t str_2f7a[] = { 0x7f8a, 0 };
-static const unichar_t str_2f7b[] = { 0x7fbd, 0 };
-static const unichar_t str_2f7c[] = { 0x8001, 0 };
-static const unichar_t str_2f7d[] = { 0x800c, 0 };
-static const unichar_t str_2f7e[] = { 0x8012, 0 };
-static const unichar_t str_2f7f[] = { 0x8033, 0 };
-static const unichar_t str_2f80[] = { 0x807f, 0 };
-static const unichar_t str_2f81[] = { 0x8089, 0 };
-static const unichar_t str_2f82[] = { 0x81e3, 0 };
-static const unichar_t str_2f83[] = { 0x81ea, 0 };
-static const unichar_t str_2f84[] = { 0x81f3, 0 };
-static const unichar_t str_2f85[] = { 0x81fc, 0 };
-static const unichar_t str_2f86[] = { 0x820c, 0 };
-static const unichar_t str_2f87[] = { 0x821b, 0 };
-static const unichar_t str_2f88[] = { 0x821f, 0 };
-static const unichar_t str_2f89[] = { 0x826e, 0 };
-static const unichar_t str_2f8a[] = { 0x8272, 0 };
-static const unichar_t str_2f8b[] = { 0x8278, 0 };
-static const unichar_t str_2f8c[] = { 0x864d, 0 };
-static const unichar_t str_2f8d[] = { 0x866b, 0 };
-static const unichar_t str_2f8e[] = { 0x8840, 0 };
-static const unichar_t str_2f8f[] = { 0x884c, 0 };
-static const unichar_t str_2f90[] = { 0x8863, 0 };
-static const unichar_t str_2f91[] = { 0x897e, 0 };
-static const unichar_t str_2f92[] = { 0x898b, 0 };
-static const unichar_t str_2f93[] = { 0x89d2, 0 };
-static const unichar_t str_2f94[] = { 0x8a00, 0 };
-static const unichar_t str_2f95[] = { 0x8c37, 0 };
-static const unichar_t str_2f96[] = { 0x8c46, 0 };
-static const unichar_t str_2f97[] = { 0x8c55, 0 };
-static const unichar_t str_2f98[] = { 0x8c78, 0 };
-static const unichar_t str_2f99[] = { 0x8c9d, 0 };
-static const unichar_t str_2f9a[] = { 0x8d64, 0 };
-static const unichar_t str_2f9b[] = { 0x8d70, 0 };
-static const unichar_t str_2f9c[] = { 0x8db3, 0 };
-static const unichar_t str_2f9d[] = { 0x8eab, 0 };
-static const unichar_t str_2f9e[] = { 0x8eca, 0 };
-static const unichar_t str_2f9f[] = { 0x8f9b, 0 };
-static const unichar_t str_2fa0[] = { 0x8fb0, 0 };
-static const unichar_t str_2fa1[] = { 0x8fb5, 0 };
-static const unichar_t str_2fa2[] = { 0x9091, 0 };
-static const unichar_t str_2fa3[] = { 0x9149, 0 };
-static const unichar_t str_2fa4[] = { 0x91c6, 0 };
-static const unichar_t str_2fa5[] = { 0x91cc, 0 };
-static const unichar_t str_2fa6[] = { 0x91d1, 0 };
-static const unichar_t str_2fa7[] = { 0x9577, 0 };
-static const unichar_t str_2fa8[] = { 0x9580, 0 };
-static const unichar_t str_2fa9[] = { 0x961c, 0 };
-static const unichar_t str_2faa[] = { 0x96b6, 0 };
-static const unichar_t str_2fab[] = { 0x96b9, 0 };
-static const unichar_t str_2fac[] = { 0x96e8, 0 };
-static const unichar_t str_2fad[] = { 0x9751, 0 };
-static const unichar_t str_2fae[] = { 0x975e, 0 };
-static const unichar_t str_2faf[] = { 0x9762, 0 };
-static const unichar_t str_2fb0[] = { 0x9769, 0 };
-static const unichar_t str_2fb1[] = { 0x97cb, 0 };
-static const unichar_t str_2fb2[] = { 0x97ed, 0 };
-static const unichar_t str_2fb3[] = { 0x97f3, 0 };
-static const unichar_t str_2fb4[] = { 0x9801, 0 };
-static const unichar_t str_2fb5[] = { 0x98a8, 0 };
-static const unichar_t str_2fb6[] = { 0x98db, 0 };
-static const unichar_t str_2fb7[] = { 0x98df, 0 };
-static const unichar_t str_2fb8[] = { 0x9996, 0 };
-static const unichar_t str_2fb9[] = { 0x9999, 0 };
-static const unichar_t str_2fba[] = { 0x99ac, 0 };
-static const unichar_t str_2fbb[] = { 0x9aa8, 0 };
-static const unichar_t str_2fbc[] = { 0x9ad8, 0 };
-static const unichar_t str_2fbd[] = { 0x9adf, 0 };
-static const unichar_t str_2fbe[] = { 0x9b25, 0 };
-static const unichar_t str_2fbf[] = { 0x9b2f, 0 };
-static const unichar_t str_2fc0[] = { 0x9b32, 0 };
-static const unichar_t str_2fc1[] = { 0x9b3c, 0 };
-static const unichar_t str_2fc2[] = { 0x9b5a, 0 };
-static const unichar_t str_2fc3[] = { 0x9ce5, 0 };
-static const unichar_t str_2fc4[] = { 0x9e75, 0 };
-static const unichar_t str_2fc5[] = { 0x9e7f, 0 };
-static const unichar_t str_2fc6[] = { 0x9ea5, 0 };
-static const unichar_t str_2fc7[] = { 0x9ebb, 0 };
-static const unichar_t str_2fc8[] = { 0x9ec3, 0 };
-static const unichar_t str_2fc9[] = { 0x9ecd, 0 };
-static const unichar_t str_2fca[] = { 0x9ed1, 0 };
-static const unichar_t str_2fcb[] = { 0x9ef9, 0 };
-static const unichar_t str_2fcc[] = { 0x9efd, 0 };
-static const unichar_t str_2fcd[] = { 0x9f0e, 0 };
-static const unichar_t str_2fce[] = { 0x9f13, 0 };
-static const unichar_t str_2fcf[] = { 0x9f20, 0 };
-static const unichar_t str_2fd0[] = { 0x9f3b, 0 };
-static const unichar_t str_2fd1[] = { 0x9f4a, 0 };
-static const unichar_t str_2fd2[] = { 0x9f52, 0 };
-static const unichar_t str_2fd3[] = { 0x9f8d, 0 };
-static const unichar_t str_2fd4[] = { 0x9f9c, 0 };
-static const unichar_t str_2fd5[] = { 0x9fa0, 0 };
-static const unichar_t str_3000[] = { 0x0020, 0 };
-static const unichar_t str_3001[] = { 0x002c, 0 };
-static const unichar_t str_3008[] = { 0x003c, 0 };
-static const unichar_t str_3009[] = { 0x003e, 0 };
-static const unichar_t str_300a[] = { 0x00ab, 0 };
-static const unichar_t str_300b[] = { 0x00bb, 0 };
-static const unichar_t str_3036[] = { 0x3012, 0 };
-static const unichar_t str_3038[] = { 0x5341, 0 };
-static const unichar_t str_3039[] = { 0x5344, 0 };
-static const unichar_t str_303a[] = { 0x5345, 0 };
-static const unichar_t str_304c[] = { 0x304b, 0x3099, 0 };
-static const unichar_t str_304e[] = { 0x304d, 0x3099, 0 };
-static const unichar_t str_3050[] = { 0x304f, 0x3099, 0 };
-static const unichar_t str_3052[] = { 0x3051, 0x3099, 0 };
-static const unichar_t str_3054[] = { 0x3053, 0x3099, 0 };
-static const unichar_t str_3056[] = { 0x3055, 0x3099, 0 };
-static const unichar_t str_3058[] = { 0x3057, 0x3099, 0 };
-static const unichar_t str_305a[] = { 0x3059, 0x3099, 0 };
-static const unichar_t str_305c[] = { 0x305b, 0x3099, 0 };
-static const unichar_t str_305e[] = { 0x305d, 0x3099, 0 };
-static const unichar_t str_3060[] = { 0x305f, 0x3099, 0 };
-static const unichar_t str_3062[] = { 0x3061, 0x3099, 0 };
-static const unichar_t str_3065[] = { 0x3064, 0x3099, 0 };
-static const unichar_t str_3067[] = { 0x3066, 0x3099, 0 };
-static const unichar_t str_3069[] = { 0x3068, 0x3099, 0 };
-static const unichar_t str_3070[] = { 0x306f, 0x3099, 0 };
-static const unichar_t str_3071[] = { 0x306f, 0x309a, 0 };
-static const unichar_t str_3073[] = { 0x3072, 0x3099, 0 };
-static const unichar_t str_3074[] = { 0x3072, 0x309a, 0 };
-static const unichar_t str_3076[] = { 0x3075, 0x3099, 0 };
-static const unichar_t str_3077[] = { 0x3075, 0x309a, 0 };
-static const unichar_t str_3079[] = { 0x3078, 0x3099, 0 };
-static const unichar_t str_307a[] = { 0x3078, 0x309a, 0 };
-static const unichar_t str_307c[] = { 0x307b, 0x3099, 0 };
-static const unichar_t str_307d[] = { 0x307b, 0x309a, 0 };
-static const unichar_t str_3094[] = { 0x3046, 0x3099, 0 };
-static const unichar_t str_309b[] = { 0x0020, 0x3099, 0 };
-static const unichar_t str_309c[] = { 0x0020, 0x309a, 0 };
-static const unichar_t str_309e[] = { 0x309d, 0x3099, 0 };
-static const unichar_t str_309f[] = { 0x3088, 0x308a, 0 };
-static const unichar_t str_30ac[] = { 0x30ab, 0x3099, 0 };
-static const unichar_t str_30ae[] = { 0x30ad, 0x3099, 0 };
-static const unichar_t str_30b0[] = { 0x30af, 0x3099, 0 };
-static const unichar_t str_30b2[] = { 0x30b1, 0x3099, 0 };
-static const unichar_t str_30b4[] = { 0x30b3, 0x3099, 0 };
-static const unichar_t str_30b6[] = { 0x30b5, 0x3099, 0 };
-static const unichar_t str_30b8[] = { 0x30b7, 0x3099, 0 };
-static const unichar_t str_30ba[] = { 0x30b9, 0x3099, 0 };
-static const unichar_t str_30bc[] = { 0x30bb, 0x3099, 0 };
-static const unichar_t str_30be[] = { 0x30bd, 0x3099, 0 };
-static const unichar_t str_30c0[] = { 0x30bf, 0x3099, 0 };
-static const unichar_t str_30c2[] = { 0x30c1, 0x3099, 0 };
-static const unichar_t str_30c5[] = { 0x30c4, 0x3099, 0 };
-static const unichar_t str_30c7[] = { 0x30c6, 0x3099, 0 };
-static const unichar_t str_30c9[] = { 0x30c8, 0x3099, 0 };
-static const unichar_t str_30d0[] = { 0x30cf, 0x3099, 0 };
-static const unichar_t str_30d1[] = { 0x30cf, 0x309a, 0 };
-static const unichar_t str_30d3[] = { 0x30d2, 0x3099, 0 };
-static const unichar_t str_30d4[] = { 0x30d2, 0x309a, 0 };
-static const unichar_t str_30d6[] = { 0x30d5, 0x3099, 0 };
-static const unichar_t str_30d7[] = { 0x30d5, 0x309a, 0 };
-static const unichar_t str_30d9[] = { 0x30d8, 0x3099, 0 };
-static const unichar_t str_30da[] = { 0x30d8, 0x309a, 0 };
-static const unichar_t str_30dc[] = { 0x30db, 0x3099, 0 };
-static const unichar_t str_30dd[] = { 0x30db, 0x309a, 0 };
-static const unichar_t str_30f4[] = { 0x30a6, 0x3099, 0 };
-static const unichar_t str_30f7[] = { 0x30ef, 0x3099, 0 };
-static const unichar_t str_30f8[] = { 0x30f0, 0x3099, 0 };
-static const unichar_t str_30f9[] = { 0x30f1, 0x3099, 0 };
-static const unichar_t str_30fa[] = { 0x30f2, 0x3099, 0 };
-static const unichar_t str_30fe[] = { 0x30fd, 0x3099, 0 };
-static const unichar_t str_30ff[] = { 0x30b3, 0x30c8, 0 };
-static const unichar_t str_3131[] = { 0x1100, 0 };
-static const unichar_t str_3132[] = { 0x1101, 0 };
-static const unichar_t str_3133[] = { 0x11aa, 0 };
-static const unichar_t str_3134[] = { 0x1102, 0 };
-static const unichar_t str_3135[] = { 0x11ac, 0 };
-static const unichar_t str_3136[] = { 0x11ad, 0 };
-static const unichar_t str_3137[] = { 0x1103, 0 };
-static const unichar_t str_3138[] = { 0x1104, 0 };
-static const unichar_t str_3139[] = { 0x1105, 0 };
-static const unichar_t str_313a[] = { 0x11b0, 0 };
-static const unichar_t str_313b[] = { 0x11b1, 0 };
-static const unichar_t str_313c[] = { 0x11b2, 0 };
-static const unichar_t str_313d[] = { 0x11b3, 0 };
-static const unichar_t str_313e[] = { 0x11b4, 0 };
-static const unichar_t str_313f[] = { 0x11b5, 0 };
-static const unichar_t str_3140[] = { 0x111a, 0 };
-static const unichar_t str_3141[] = { 0x1106, 0 };
-static const unichar_t str_3142[] = { 0x1107, 0 };
-static const unichar_t str_3143[] = { 0x1108, 0 };
-static const unichar_t str_3144[] = { 0x1121, 0 };
-static const unichar_t str_3145[] = { 0x1109, 0 };
-static const unichar_t str_3146[] = { 0x110a, 0 };
-static const unichar_t str_3147[] = { 0x110b, 0 };
-static const unichar_t str_3148[] = { 0x110c, 0 };
-static const unichar_t str_3149[] = { 0x110d, 0 };
-static const unichar_t str_314a[] = { 0x110e, 0 };
-static const unichar_t str_314b[] = { 0x110f, 0 };
-static const unichar_t str_314c[] = { 0x1110, 0 };
-static const unichar_t str_314d[] = { 0x1111, 0 };
-static const unichar_t str_314e[] = { 0x1112, 0 };
-static const unichar_t str_314f[] = { 0x1161, 0 };
-static const unichar_t str_3150[] = { 0x1162, 0 };
-static const unichar_t str_3151[] = { 0x1163, 0 };
-static const unichar_t str_3152[] = { 0x1164, 0 };
-static const unichar_t str_3153[] = { 0x1165, 0 };
-static const unichar_t str_3154[] = { 0x1166, 0 };
-static const unichar_t str_3155[] = { 0x1167, 0 };
-static const unichar_t str_3156[] = { 0x1168, 0 };
-static const unichar_t str_3157[] = { 0x1169, 0 };
-static const unichar_t str_3158[] = { 0x116a, 0 };
-static const unichar_t str_3159[] = { 0x116b, 0 };
-static const unichar_t str_315a[] = { 0x116c, 0 };
-static const unichar_t str_315b[] = { 0x116d, 0 };
-static const unichar_t str_315c[] = { 0x116e, 0 };
-static const unichar_t str_315d[] = { 0x116f, 0 };
-static const unichar_t str_315e[] = { 0x1170, 0 };
-static const unichar_t str_315f[] = { 0x1171, 0 };
-static const unichar_t str_3160[] = { 0x1172, 0 };
-static const unichar_t str_3161[] = { 0x1173, 0 };
-static const unichar_t str_3162[] = { 0x1174, 0 };
-static const unichar_t str_3163[] = { 0x1175, 0 };
-static const unichar_t str_3164[] = { 0x1160, 0 };
-static const unichar_t str_3165[] = { 0x1114, 0 };
-static const unichar_t str_3166[] = { 0x1115, 0 };
-static const unichar_t str_3167[] = { 0x11c7, 0 };
-static const unichar_t str_3168[] = { 0x11c8, 0 };
-static const unichar_t str_3169[] = { 0x11cc, 0 };
-static const unichar_t str_316a[] = { 0x11ce, 0 };
-static const unichar_t str_316b[] = { 0x11d3, 0 };
-static const unichar_t str_316c[] = { 0x11d7, 0 };
-static const unichar_t str_316d[] = { 0x11d9, 0 };
-static const unichar_t str_316e[] = { 0x111c, 0 };
-static const unichar_t str_316f[] = { 0x11dd, 0 };
-static const unichar_t str_3170[] = { 0x11df, 0 };
-static const unichar_t str_3171[] = { 0x111d, 0 };
-static const unichar_t str_3172[] = { 0x111e, 0 };
-static const unichar_t str_3173[] = { 0x1120, 0 };
-static const unichar_t str_3174[] = { 0x1122, 0 };
-static const unichar_t str_3175[] = { 0x1123, 0 };
-static const unichar_t str_3176[] = { 0x1127, 0 };
-static const unichar_t str_3177[] = { 0x1129, 0 };
-static const unichar_t str_3178[] = { 0x112b, 0 };
-static const unichar_t str_3179[] = { 0x112c, 0 };
-static const unichar_t str_317a[] = { 0x112d, 0 };
-static const unichar_t str_317b[] = { 0x112e, 0 };
-static const unichar_t str_317c[] = { 0x112f, 0 };
-static const unichar_t str_317d[] = { 0x1132, 0 };
-static const unichar_t str_317e[] = { 0x1136, 0 };
-static const unichar_t str_317f[] = { 0x1140, 0 };
-static const unichar_t str_3180[] = { 0x1147, 0 };
-static const unichar_t str_3181[] = { 0x114c, 0 };
-static const unichar_t str_3182[] = { 0x11f1, 0 };
-static const unichar_t str_3183[] = { 0x11f2, 0 };
-static const unichar_t str_3184[] = { 0x1157, 0 };
-static const unichar_t str_3185[] = { 0x1158, 0 };
-static const unichar_t str_3186[] = { 0x1159, 0 };
-static const unichar_t str_3187[] = { 0x1184, 0 };
-static const unichar_t str_3188[] = { 0x1185, 0 };
-static const unichar_t str_3189[] = { 0x1188, 0 };
-static const unichar_t str_318a[] = { 0x1191, 0 };
-static const unichar_t str_318b[] = { 0x1192, 0 };
-static const unichar_t str_318c[] = { 0x1194, 0 };
-static const unichar_t str_318d[] = { 0x119e, 0 };
-static const unichar_t str_318e[] = { 0x11a1, 0 };
-static const unichar_t str_3192[] = { 0x4e00, 0 };
-static const unichar_t str_3193[] = { 0x4e8c, 0 };
-static const unichar_t str_3194[] = { 0x4e09, 0 };
-static const unichar_t str_3195[] = { 0x56db, 0 };
-static const unichar_t str_3196[] = { 0x4e0a, 0 };
-static const unichar_t str_3197[] = { 0x4e2d, 0 };
-static const unichar_t str_3198[] = { 0x4e0b, 0 };
-static const unichar_t str_3199[] = { 0x7532, 0 };
-static const unichar_t str_319a[] = { 0x4e59, 0 };
-static const unichar_t str_319b[] = { 0x4e19, 0 };
-static const unichar_t str_319c[] = { 0x4e01, 0 };
-static const unichar_t str_319d[] = { 0x5929, 0 };
-static const unichar_t str_319e[] = { 0x5730, 0 };
-static const unichar_t str_319f[] = { 0x4eba, 0 };
-static const unichar_t str_3200[] = { 0x0028, 0x1100, 0x0029, 0 };
-static const unichar_t str_3201[] = { 0x0028, 0x1102, 0x0029, 0 };
-static const unichar_t str_3202[] = { 0x0028, 0x1103, 0x0029, 0 };
-static const unichar_t str_3203[] = { 0x0028, 0x1105, 0x0029, 0 };
-static const unichar_t str_3204[] = { 0x0028, 0x1106, 0x0029, 0 };
-static const unichar_t str_3205[] = { 0x0028, 0x1107, 0x0029, 0 };
-static const unichar_t str_3206[] = { 0x0028, 0x1109, 0x0029, 0 };
-static const unichar_t str_3207[] = { 0x0028, 0x110b, 0x0029, 0 };
-static const unichar_t str_3208[] = { 0x0028, 0x110c, 0x0029, 0 };
-static const unichar_t str_3209[] = { 0x0028, 0x110e, 0x0029, 0 };
-static const unichar_t str_320a[] = { 0x0028, 0x110f, 0x0029, 0 };
-static const unichar_t str_320b[] = { 0x0028, 0x1110, 0x0029, 0 };
-static const unichar_t str_320c[] = { 0x0028, 0x1111, 0x0029, 0 };
-static const unichar_t str_320d[] = { 0x0028, 0x1112, 0x0029, 0 };
-static const unichar_t str_320e[] = { 0x0028, 0x1100, 0x1161, 0x0029, 0 };
-static const unichar_t str_320f[] = { 0x0028, 0x1102, 0x1161, 0x0029, 0 };
-static const unichar_t str_3210[] = { 0x0028, 0x1103, 0x1161, 0x0029, 0 };
-static const unichar_t str_3211[] = { 0x0028, 0x1105, 0x1161, 0x0029, 0 };
-static const unichar_t str_3212[] = { 0x0028, 0x1106, 0x1161, 0x0029, 0 };
-static const unichar_t str_3213[] = { 0x0028, 0x1107, 0x1161, 0x0029, 0 };
-static const unichar_t str_3214[] = { 0x0028, 0x1109, 0x1161, 0x0029, 0 };
-static const unichar_t str_3215[] = { 0x0028, 0x110b, 0x1161, 0x0029, 0 };
-static const unichar_t str_3216[] = { 0x0028, 0x110c, 0x1161, 0x0029, 0 };
-static const unichar_t str_3217[] = { 0x0028, 0x110e, 0x1161, 0x0029, 0 };
-static const unichar_t str_3218[] = { 0x0028, 0x110f, 0x1161, 0x0029, 0 };
-static const unichar_t str_3219[] = { 0x0028, 0x1110, 0x1161, 0x0029, 0 };
-static const unichar_t str_321a[] = { 0x0028, 0x1111, 0x1161, 0x0029, 0 };
-static const unichar_t str_321b[] = { 0x0028, 0x1112, 0x1161, 0x0029, 0 };
-static const unichar_t str_321c[] = { 0x0028, 0x110c, 0x116e, 0x0029, 0 };
-static const unichar_t str_321d[] = { 0x0028, 0x110b, 0x1169, 0x110c, 0x1165, 0x11ab, 0x0029, 0 };
-static const unichar_t str_321e[] = { 0x0028, 0x110b, 0x1169, 0x1112, 0x116e, 0x0029, 0 };
-static const unichar_t str_3220[] = { 0x0028, 0x4e00, 0x0029, 0 };
-static const unichar_t str_3221[] = { 0x0028, 0x4e8c, 0x0029, 0 };
-static const unichar_t str_3222[] = { 0x0028, 0x4e09, 0x0029, 0 };
-static const unichar_t str_3223[] = { 0x0028, 0x56db, 0x0029, 0 };
-static const unichar_t str_3224[] = { 0x0028, 0x4e94, 0x0029, 0 };
-static const unichar_t str_3225[] = { 0x0028, 0x516d, 0x0029, 0 };
-static const unichar_t str_3226[] = { 0x0028, 0x4e03, 0x0029, 0 };
-static const unichar_t str_3227[] = { 0x0028, 0x516b, 0x0029, 0 };
-static const unichar_t str_3228[] = { 0x0028, 0x4e5d, 0x0029, 0 };
-static const unichar_t str_3229[] = { 0x0028, 0x5341, 0x0029, 0 };
-static const unichar_t str_322a[] = { 0x0028, 0x6708, 0x0029, 0 };
-static const unichar_t str_322b[] = { 0x0028, 0x706b, 0x0029, 0 };
-static const unichar_t str_322c[] = { 0x0028, 0x6c34, 0x0029, 0 };
-static const unichar_t str_322d[] = { 0x0028, 0x6728, 0x0029, 0 };
-static const unichar_t str_322e[] = { 0x0028, 0x91d1, 0x0029, 0 };
-static const unichar_t str_322f[] = { 0x0028, 0x571f, 0x0029, 0 };
-static const unichar_t str_3230[] = { 0x0028, 0x65e5, 0x0029, 0 };
-static const unichar_t str_3231[] = { 0x0028, 0x682a, 0x0029, 0 };
-static const unichar_t str_3232[] = { 0x0028, 0x6709, 0x0029, 0 };
-static const unichar_t str_3233[] = { 0x0028, 0x793e, 0x0029, 0 };
-static const unichar_t str_3234[] = { 0x0028, 0x540d, 0x0029, 0 };
-static const unichar_t str_3235[] = { 0x0028, 0x7279, 0x0029, 0 };
-static const unichar_t str_3236[] = { 0x0028, 0x8ca1, 0x0029, 0 };
-static const unichar_t str_3237[] = { 0x0028, 0x795d, 0x0029, 0 };
-static const unichar_t str_3238[] = { 0x0028, 0x52b4, 0x0029, 0 };
-static const unichar_t str_3239[] = { 0x0028, 0x4ee3, 0x0029, 0 };
-static const unichar_t str_323a[] = { 0x0028, 0x547c, 0x0029, 0 };
-static const unichar_t str_323b[] = { 0x0028, 0x5b66, 0x0029, 0 };
-static const unichar_t str_323c[] = { 0x0028, 0x76e3, 0x0029, 0 };
-static const unichar_t str_323d[] = { 0x0028, 0x4f01, 0x0029, 0 };
-static const unichar_t str_323e[] = { 0x0028, 0x8cc7, 0x0029, 0 };
-static const unichar_t str_323f[] = { 0x0028, 0x5354, 0x0029, 0 };
-static const unichar_t str_3240[] = { 0x0028, 0x796d, 0x0029, 0 };
-static const unichar_t str_3241[] = { 0x0028, 0x4f11, 0x0029, 0 };
-static const unichar_t str_3242[] = { 0x0028, 0x81ea, 0x0029, 0 };
-static const unichar_t str_3243[] = { 0x0028, 0x81f3, 0x0029, 0 };
-static const unichar_t str_3244[] = { 0x554f, 0x20dd, 0 };
-static const unichar_t str_3245[] = { 0x5e7c, 0x20dd, 0 };
-static const unichar_t str_3246[] = { 0x6587, 0x20dd, 0 };
-static const unichar_t str_3247[] = { 0x7b8f, 0x20dd, 0 };
-static const unichar_t str_3250[] = { 0x0050, 0x0054, 0x0045, 0 };
-static const unichar_t str_3251[] = { 0x0032, 0x0031, 0x20dd, 0 };
-static const unichar_t str_3252[] = { 0x0032, 0x0032, 0x20dd, 0 };
-static const unichar_t str_3253[] = { 0x0032, 0x0033, 0x20dd, 0 };
-static const unichar_t str_3254[] = { 0x0032, 0x0034, 0x20dd, 0 };
-static const unichar_t str_3255[] = { 0x0032, 0x0035, 0x20dd, 0 };
-static const unichar_t str_3256[] = { 0x0032, 0x0036, 0x20dd, 0 };
-static const unichar_t str_3257[] = { 0x0032, 0x0037, 0x20dd, 0 };
-static const unichar_t str_3258[] = { 0x0032, 0x0038, 0x20dd, 0 };
-static const unichar_t str_3259[] = { 0x0032, 0x0039, 0x20dd, 0 };
-static const unichar_t str_325a[] = { 0x0033, 0x0030, 0x20dd, 0 };
-static const unichar_t str_325b[] = { 0x0033, 0x0031, 0x20dd, 0 };
-static const unichar_t str_325c[] = { 0x0033, 0x0032, 0x20dd, 0 };
-static const unichar_t str_325d[] = { 0x0033, 0x0033, 0x20dd, 0 };
-static const unichar_t str_325e[] = { 0x0033, 0x0034, 0x20dd, 0 };
-static const unichar_t str_325f[] = { 0x0033, 0x0035, 0x20dd, 0 };
-static const unichar_t str_3260[] = { 0x1100, 0x20dd, 0 };
-static const unichar_t str_3261[] = { 0x1102, 0x20dd, 0 };
-static const unichar_t str_3262[] = { 0x1103, 0x20dd, 0 };
-static const unichar_t str_3263[] = { 0x1105, 0x20dd, 0 };
-static const unichar_t str_3264[] = { 0x1106, 0x20dd, 0 };
-static const unichar_t str_3265[] = { 0x1107, 0x20dd, 0 };
-static const unichar_t str_3266[] = { 0x1109, 0x20dd, 0 };
-static const unichar_t str_3267[] = { 0x110b, 0x20dd, 0 };
-static const unichar_t str_3268[] = { 0x110c, 0x20dd, 0 };
-static const unichar_t str_3269[] = { 0x110e, 0x20dd, 0 };
-static const unichar_t str_326a[] = { 0x110f, 0x20dd, 0 };
-static const unichar_t str_326b[] = { 0x1110, 0x20dd, 0 };
-static const unichar_t str_326c[] = { 0x1111, 0x20dd, 0 };
-static const unichar_t str_326d[] = { 0x1112, 0x20dd, 0 };
-static const unichar_t str_326e[] = { 0x1100, 0x1161, 0x20dd, 0 };
-static const unichar_t str_326f[] = { 0x1102, 0x1161, 0x20dd, 0 };
-static const unichar_t str_3270[] = { 0x1103, 0x1161, 0x20dd, 0 };
-static const unichar_t str_3271[] = { 0x1105, 0x1161, 0x20dd, 0 };
-static const unichar_t str_3272[] = { 0x1106, 0x1161, 0x20dd, 0 };
-static const unichar_t str_3273[] = { 0x1107, 0x1161, 0x20dd, 0 };
-static const unichar_t str_3274[] = { 0x1109, 0x1161, 0x20dd, 0 };
-static const unichar_t str_3275[] = { 0x110b, 0x1161, 0x20dd, 0 };
-static const unichar_t str_3276[] = { 0x110c, 0x1161, 0x20dd, 0 };
-static const unichar_t str_3277[] = { 0x110e, 0x1161, 0x20dd, 0 };
-static const unichar_t str_3278[] = { 0x110f, 0x1161, 0x20dd, 0 };
-static const unichar_t str_3279[] = { 0x1110, 0x1161, 0x20dd, 0 };
-static const unichar_t str_327a[] = { 0x1111, 0x1161, 0x20dd, 0 };
-static const unichar_t str_327b[] = { 0x1112, 0x1161, 0x20dd, 0 };
-static const unichar_t str_327c[] = { 0x110e, 0x1161, 0x11b7, 0x1100, 0x1169, 0x20dd, 0 };
-static const unichar_t str_327d[] = { 0x110c, 0x116e, 0x110b, 0x1174, 0x20dd, 0 };
-static const unichar_t str_327e[] = { 0x110b, 0x116e, 0x20dd, 0 };
-static const unichar_t str_3280[] = { 0x4e00, 0x20dd, 0 };
-static const unichar_t str_3281[] = { 0x4e8c, 0x20dd, 0 };
-static const unichar_t str_3282[] = { 0x4e09, 0x20dd, 0 };
-static const unichar_t str_3283[] = { 0x56db, 0x20dd, 0 };
-static const unichar_t str_3284[] = { 0x4e94, 0x20dd, 0 };
-static const unichar_t str_3285[] = { 0x516d, 0x20dd, 0 };
-static const unichar_t str_3286[] = { 0x4e03, 0x20dd, 0 };
-static const unichar_t str_3287[] = { 0x516b, 0x20dd, 0 };
-static const unichar_t str_3288[] = { 0x4e5d, 0x20dd, 0 };
-static const unichar_t str_3289[] = { 0x5341, 0x20dd, 0 };
-static const unichar_t str_328a[] = { 0x6708, 0x20dd, 0 };
-static const unichar_t str_328b[] = { 0x706b, 0x20dd, 0 };
-static const unichar_t str_328c[] = { 0x6c34, 0x20dd, 0 };
-static const unichar_t str_328d[] = { 0x6728, 0x20dd, 0 };
-static const unichar_t str_328e[] = { 0x91d1, 0x20dd, 0 };
-static const unichar_t str_328f[] = { 0x571f, 0x20dd, 0 };
-static const unichar_t str_3290[] = { 0x65e5, 0x20dd, 0 };
-static const unichar_t str_3291[] = { 0x682a, 0x20dd, 0 };
-static const unichar_t str_3292[] = { 0x6709, 0x20dd, 0 };
-static const unichar_t str_3293[] = { 0x793e, 0x20dd, 0 };
-static const unichar_t str_3294[] = { 0x540d, 0x20dd, 0 };
-static const unichar_t str_3295[] = { 0x7279, 0x20dd, 0 };
-static const unichar_t str_3296[] = { 0x8ca1, 0x20dd, 0 };
-static const unichar_t str_3297[] = { 0x795d, 0x20dd, 0 };
-static const unichar_t str_3298[] = { 0x52b4, 0x20dd, 0 };
-static const unichar_t str_3299[] = { 0x79d8, 0x20dd, 0 };
-static const unichar_t str_329a[] = { 0x7537, 0x20dd, 0 };
-static const unichar_t str_329b[] = { 0x5973, 0x20dd, 0 };
-static const unichar_t str_329c[] = { 0x9069, 0x20dd, 0 };
-static const unichar_t str_329d[] = { 0x512a, 0x20dd, 0 };
-static const unichar_t str_329e[] = { 0x5370, 0x20dd, 0 };
-static const unichar_t str_329f[] = { 0x6ce8, 0x20dd, 0 };
-static const unichar_t str_32a0[] = { 0x9805, 0x20dd, 0 };
-static const unichar_t str_32a1[] = { 0x4f11, 0x20dd, 0 };
-static const unichar_t str_32a2[] = { 0x5199, 0x20dd, 0 };
-static const unichar_t str_32a3[] = { 0x6b63, 0x20dd, 0 };
-static const unichar_t str_32a4[] = { 0x4e0a, 0x20dd, 0 };
-static const unichar_t str_32a5[] = { 0x4e2d, 0x20dd, 0 };
-static const unichar_t str_32a6[] = { 0x4e0b, 0x20dd, 0 };
-static const unichar_t str_32a7[] = { 0x5de6, 0x20dd, 0 };
-static const unichar_t str_32a8[] = { 0x53f3, 0x20dd, 0 };
-static const unichar_t str_32a9[] = { 0x533b, 0x20dd, 0 };
-static const unichar_t str_32aa[] = { 0x5b97, 0x20dd, 0 };
-static const unichar_t str_32ab[] = { 0x5b66, 0x20dd, 0 };
-static const unichar_t str_32ac[] = { 0x76e3, 0x20dd, 0 };
-static const unichar_t str_32ad[] = { 0x4f01, 0x20dd, 0 };
-static const unichar_t str_32ae[] = { 0x8cc7, 0x20dd, 0 };
-static const unichar_t str_32af[] = { 0x5354, 0x20dd, 0 };
-static const unichar_t str_32b0[] = { 0x591c, 0x20dd, 0 };
-static const unichar_t str_32b1[] = { 0x0033, 0x0036, 0x20dd, 0 };
-static const unichar_t str_32b2[] = { 0x0033, 0x0037, 0x20dd, 0 };
-static const unichar_t str_32b3[] = { 0x0033, 0x0038, 0x20dd, 0 };
-static const unichar_t str_32b4[] = { 0x0033, 0x0039, 0x20dd, 0 };
-static const unichar_t str_32b5[] = { 0x0034, 0x0030, 0x20dd, 0 };
-static const unichar_t str_32b6[] = { 0x0034, 0x0031, 0x20dd, 0 };
-static const unichar_t str_32b7[] = { 0x0034, 0x0032, 0x20dd, 0 };
-static const unichar_t str_32b8[] = { 0x0034, 0x0033, 0x20dd, 0 };
-static const unichar_t str_32b9[] = { 0x0034, 0x0034, 0x20dd, 0 };
-static const unichar_t str_32ba[] = { 0x0034, 0x0035, 0x20dd, 0 };
-static const unichar_t str_32bb[] = { 0x0034, 0x0036, 0x20dd, 0 };
-static const unichar_t str_32bc[] = { 0x0034, 0x0037, 0x20dd, 0 };
-static const unichar_t str_32bd[] = { 0x0034, 0x0038, 0x20dd, 0 };
-static const unichar_t str_32be[] = { 0x0034, 0x0039, 0x20dd, 0 };
-static const unichar_t str_32bf[] = { 0x0035, 0x0030, 0x20dd, 0 };
-static const unichar_t str_32c0[] = { 0x0031, 0x6708, 0 };
-static const unichar_t str_32c1[] = { 0x0032, 0x6708, 0 };
-static const unichar_t str_32c2[] = { 0x0033, 0x6708, 0 };
-static const unichar_t str_32c3[] = { 0x0034, 0x6708, 0 };
-static const unichar_t str_32c4[] = { 0x0035, 0x6708, 0 };
-static const unichar_t str_32c5[] = { 0x0036, 0x6708, 0 };
-static const unichar_t str_32c6[] = { 0x0037, 0x6708, 0 };
-static const unichar_t str_32c7[] = { 0x0038, 0x6708, 0 };
-static const unichar_t str_32c8[] = { 0x0039, 0x6708, 0 };
-static const unichar_t str_32c9[] = { 0x0031, 0x0030, 0x6708, 0 };
-static const unichar_t str_32ca[] = { 0x0031, 0x0031, 0x6708, 0 };
-static const unichar_t str_32cb[] = { 0x0031, 0x0032, 0x6708, 0 };
-static const unichar_t str_32cc[] = { 0x0048, 0x0067, 0 };
-static const unichar_t str_32cd[] = { 0x0065, 0x0072, 0x0067, 0 };
-static const unichar_t str_32ce[] = { 0x0065, 0x0056, 0 };
-static const unichar_t str_32cf[] = { 0x004c, 0x0054, 0x0044, 0 };
-static const unichar_t str_32d0[] = { 0x30a2, 0x20dd, 0 };
-static const unichar_t str_32d1[] = { 0x30a4, 0x20dd, 0 };
-static const unichar_t str_32d2[] = { 0x30a6, 0x20dd, 0 };
-static const unichar_t str_32d3[] = { 0x30a8, 0x20dd, 0 };
-static const unichar_t str_32d4[] = { 0x30aa, 0x20dd, 0 };
-static const unichar_t str_32d5[] = { 0x30ab, 0x20dd, 0 };
-static const unichar_t str_32d6[] = { 0x30ad, 0x20dd, 0 };
-static const unichar_t str_32d7[] = { 0x30af, 0x20dd, 0 };
-static const unichar_t str_32d8[] = { 0x30b1, 0x20dd, 0 };
-static const unichar_t str_32d9[] = { 0x30b3, 0x20dd, 0 };
-static const unichar_t str_32da[] = { 0x30b5, 0x20dd, 0 };
-static const unichar_t str_32db[] = { 0x30b7, 0x20dd, 0 };
-static const unichar_t str_32dc[] = { 0x30b9, 0x20dd, 0 };
-static const unichar_t str_32dd[] = { 0x30bb, 0x20dd, 0 };
-static const unichar_t str_32de[] = { 0x30bd, 0x20dd, 0 };
-static const unichar_t str_32df[] = { 0x30bf, 0x20dd, 0 };
-static const unichar_t str_32e0[] = { 0x30c1, 0x20dd, 0 };
-static const unichar_t str_32e1[] = { 0x30c4, 0x20dd, 0 };
-static const unichar_t str_32e2[] = { 0x30c6, 0x20dd, 0 };
-static const unichar_t str_32e3[] = { 0x30c8, 0x20dd, 0 };
-static const unichar_t str_32e4[] = { 0x30ca, 0x20dd, 0 };
-static const unichar_t str_32e5[] = { 0x30cb, 0x20dd, 0 };
-static const unichar_t str_32e6[] = { 0x30cc, 0x20dd, 0 };
-static const unichar_t str_32e7[] = { 0x30cd, 0x20dd, 0 };
-static const unichar_t str_32e8[] = { 0x30ce, 0x20dd, 0 };
-static const unichar_t str_32e9[] = { 0x30cf, 0x20dd, 0 };
-static const unichar_t str_32ea[] = { 0x30d2, 0x20dd, 0 };
-static const unichar_t str_32eb[] = { 0x30d5, 0x20dd, 0 };
-static const unichar_t str_32ec[] = { 0x30d8, 0x20dd, 0 };
-static const unichar_t str_32ed[] = { 0x30db, 0x20dd, 0 };
-static const unichar_t str_32ee[] = { 0x30de, 0x20dd, 0 };
-static const unichar_t str_32ef[] = { 0x30df, 0x20dd, 0 };
-static const unichar_t str_32f0[] = { 0x30e0, 0x20dd, 0 };
-static const unichar_t str_32f1[] = { 0x30e1, 0x20dd, 0 };
-static const unichar_t str_32f2[] = { 0x30e2, 0x20dd, 0 };
-static const unichar_t str_32f3[] = { 0x30e4, 0x20dd, 0 };
-static const unichar_t str_32f4[] = { 0x30e6, 0x20dd, 0 };
-static const unichar_t str_32f5[] = { 0x30e8, 0x20dd, 0 };
-static const unichar_t str_32f6[] = { 0x30e9, 0x20dd, 0 };
-static const unichar_t str_32f7[] = { 0x30ea, 0x20dd, 0 };
-static const unichar_t str_32f8[] = { 0x30eb, 0x20dd, 0 };
-static const unichar_t str_32f9[] = { 0x30ec, 0x20dd, 0 };
-static const unichar_t str_32fa[] = { 0x30ed, 0x20dd, 0 };
-static const unichar_t str_32fb[] = { 0x30ef, 0x20dd, 0 };
-static const unichar_t str_32fc[] = { 0x30f0, 0x20dd, 0 };
-static const unichar_t str_32fd[] = { 0x30f1, 0x20dd, 0 };
-static const unichar_t str_32fe[] = { 0x30f2, 0x20dd, 0 };
-static const unichar_t str_3300[] = { 0x30a2, 0x30d1, 0x30fc, 0x30c8, 0 };
-static const unichar_t str_3301[] = { 0x30a2, 0x30eb, 0x30d5, 0x30a1, 0 };
-static const unichar_t str_3302[] = { 0x30a2, 0x30f3, 0x30da, 0x30a2, 0 };
-static const unichar_t str_3303[] = { 0x30a2, 0x30fc, 0x30eb, 0 };
-static const unichar_t str_3304[] = { 0x30a4, 0x30cb, 0x30f3, 0x30b0, 0 };
-static const unichar_t str_3305[] = { 0x30a4, 0x30f3, 0x30c1, 0 };
-static const unichar_t str_3306[] = { 0x30a6, 0x30a9, 0x30f3, 0 };
-static const unichar_t str_3307[] = { 0x30a8, 0x30b9, 0x30af, 0x30fc, 0x30c9, 0 };
-static const unichar_t str_3308[] = { 0x30a8, 0x30fc, 0x30ab, 0x30fc, 0 };
-static const unichar_t str_3309[] = { 0x30aa, 0x30f3, 0x30b9, 0 };
-static const unichar_t str_330a[] = { 0x30aa, 0x30fc, 0x30e0, 0 };
-static const unichar_t str_330b[] = { 0x30ab, 0x30a4, 0x30ea, 0 };
-static const unichar_t str_330c[] = { 0x30ab, 0x30e9, 0x30c3, 0x30c8, 0 };
-static const unichar_t str_330d[] = { 0x30ab, 0x30ed, 0x30ea, 0x30fc, 0 };
-static const unichar_t str_330e[] = { 0x30ac, 0x30ed, 0x30f3, 0 };
-static const unichar_t str_330f[] = { 0x30ac, 0x30f3, 0x30de, 0 };
-static const unichar_t str_3310[] = { 0x30ae, 0x30ac, 0 };
-static const unichar_t str_3311[] = { 0x30ae, 0x30cb, 0x30fc, 0 };
-static const unichar_t str_3312[] = { 0x30ad, 0x30e5, 0x30ea, 0x30fc, 0 };
-static const unichar_t str_3313[] = { 0x30ae, 0x30eb, 0x30c0, 0x30fc, 0 };
-static const unichar_t str_3314[] = { 0x30ad, 0x30ed, 0 };
-static const unichar_t str_3315[] = { 0x30ad, 0x30ed, 0x30b0, 0x30e9, 0x30e0, 0 };
-static const unichar_t str_3316[] = { 0x30ad, 0x30ed, 0x30e1, 0x30fc, 0x30c8, 0x30eb, 0 };
-static const unichar_t str_3317[] = { 0x30ad, 0x30ed, 0x30ef, 0x30c3, 0x30c8, 0 };
-static const unichar_t str_3318[] = { 0x30b0, 0x30e9, 0x30e0, 0 };
-static const unichar_t str_3319[] = { 0x30b0, 0x30e9, 0x30e0, 0x30c8, 0x30f3, 0 };
-static const unichar_t str_331a[] = { 0x30af, 0x30eb, 0x30bc, 0x30a4, 0x30ed, 0 };
-static const unichar_t str_331b[] = { 0x30af, 0x30ed, 0x30fc, 0x30cd, 0 };
-static const unichar_t str_331c[] = { 0x30b1, 0x30fc, 0x30b9, 0 };
-static const unichar_t str_331d[] = { 0x30b3, 0x30eb, 0x30ca, 0 };
-static const unichar_t str_331e[] = { 0x30b3, 0x30fc, 0x30dd, 0 };
-static const unichar_t str_331f[] = { 0x30b5, 0x30a4, 0x30af, 0x30eb, 0 };
-static const unichar_t str_3320[] = { 0x30b5, 0x30f3, 0x30c1, 0x30fc, 0x30e0, 0 };
-static const unichar_t str_3321[] = { 0x30b7, 0x30ea, 0x30f3, 0x30b0, 0 };
-static const unichar_t str_3322[] = { 0x30bb, 0x30f3, 0x30c1, 0 };
-static const unichar_t str_3323[] = { 0x30bb, 0x30f3, 0x30c8, 0 };
-static const unichar_t str_3324[] = { 0x30c0, 0x30fc, 0x30b9, 0 };
-static const unichar_t str_3325[] = { 0x30c7, 0x30b7, 0 };
-static const unichar_t str_3326[] = { 0x30c9, 0x30eb, 0 };
-static const unichar_t str_3327[] = { 0x30c8, 0x30f3, 0 };
-static const unichar_t str_3328[] = { 0x30ca, 0x30ce, 0 };
-static const unichar_t str_3329[] = { 0x30ce, 0x30c3, 0x30c8, 0 };
-static const unichar_t str_332a[] = { 0x30cf, 0x30a4, 0x30c4, 0 };
-static const unichar_t str_332b[] = { 0x30d1, 0x30fc, 0x30bb, 0x30f3, 0x30c8, 0 };
-static const unichar_t str_332c[] = { 0x30d1, 0x30fc, 0x30c4, 0 };
-static const unichar_t str_332d[] = { 0x30d0, 0x30fc, 0x30ec, 0x30eb, 0 };
-static const unichar_t str_332e[] = { 0x30d4, 0x30a2, 0x30b9, 0x30c8, 0x30eb, 0 };
-static const unichar_t str_332f[] = { 0x30d4, 0x30af, 0x30eb, 0 };
-static const unichar_t str_3330[] = { 0x30d4, 0x30b3, 0 };
-static const unichar_t str_3331[] = { 0x30d3, 0x30eb, 0 };
-static const unichar_t str_3332[] = { 0x30d5, 0x30a1, 0x30e9, 0x30c3, 0x30c9, 0 };
-static const unichar_t str_3333[] = { 0x30d5, 0x30a3, 0x30fc, 0x30c8, 0 };
-static const unichar_t str_3334[] = { 0x30d6, 0x30c3, 0x30b7, 0x30a7, 0x30eb, 0 };
-static const unichar_t str_3335[] = { 0x30d5, 0x30e9, 0x30f3, 0 };
-static const unichar_t str_3336[] = { 0x30d8, 0x30af, 0x30bf, 0x30fc, 0x30eb, 0 };
-static const unichar_t str_3337[] = { 0x30da, 0x30bd, 0 };
-static const unichar_t str_3338[] = { 0x30da, 0x30cb, 0x30d2, 0 };
-static const unichar_t str_3339[] = { 0x30d8, 0x30eb, 0x30c4, 0 };
-static const unichar_t str_333a[] = { 0x30da, 0x30f3, 0x30b9, 0 };
-static const unichar_t str_333b[] = { 0x30da, 0x30fc, 0x30b8, 0 };
-static const unichar_t str_333c[] = { 0x30d9, 0x30fc, 0x30bf, 0 };
-static const unichar_t str_333d[] = { 0x30dd, 0x30a4, 0x30f3, 0x30c8, 0 };
-static const unichar_t str_333e[] = { 0x30dc, 0x30eb, 0x30c8, 0 };
-static const unichar_t str_333f[] = { 0x30db, 0x30f3, 0 };
-static const unichar_t str_3340[] = { 0x30dd, 0x30f3, 0x30c9, 0 };
-static const unichar_t str_3341[] = { 0x30db, 0x30fc, 0x30eb, 0 };
-static const unichar_t str_3342[] = { 0x30db, 0x30fc, 0x30f3, 0 };
-static const unichar_t str_3343[] = { 0x30de, 0x30a4, 0x30af, 0x30ed, 0 };
-static const unichar_t str_3344[] = { 0x30de, 0x30a4, 0x30eb, 0 };
-static const unichar_t str_3345[] = { 0x30de, 0x30c3, 0x30cf, 0 };
-static const unichar_t str_3346[] = { 0x30de, 0x30eb, 0x30af, 0 };
-static const unichar_t str_3347[] = { 0x30de, 0x30f3, 0x30b7, 0x30e7, 0x30f3, 0 };
-static const unichar_t str_3348[] = { 0x30df, 0x30af, 0x30ed, 0x30f3, 0 };
-static const unichar_t str_3349[] = { 0x30df, 0x30ea, 0 };
-static const unichar_t str_334a[] = { 0x30df, 0x30ea, 0x30d0, 0x30fc, 0x30eb, 0 };
-static const unichar_t str_334b[] = { 0x30e1, 0x30ac, 0 };
-static const unichar_t str_334c[] = { 0x30e1, 0x30ac, 0x30c8, 0x30f3, 0 };
-static const unichar_t str_334d[] = { 0x30e1, 0x30fc, 0x30c8, 0x30eb, 0 };
-static const unichar_t str_334e[] = { 0x30e4, 0x30fc, 0x30c9, 0 };
-static const unichar_t str_334f[] = { 0x30e4, 0x30fc, 0x30eb, 0 };
-static const unichar_t str_3350[] = { 0x30e6, 0x30a2, 0x30f3, 0 };
-static const unichar_t str_3351[] = { 0x30ea, 0x30c3, 0x30c8, 0x30eb, 0 };
-static const unichar_t str_3352[] = { 0x30ea, 0x30e9, 0 };
-static const unichar_t str_3353[] = { 0x30eb, 0x30d4, 0x30fc, 0 };
-static const unichar_t str_3354[] = { 0x30eb, 0x30fc, 0x30d6, 0x30eb, 0 };
-static const unichar_t str_3355[] = { 0x30ec, 0x30e0, 0 };
-static const unichar_t str_3356[] = { 0x30ec, 0x30f3, 0x30c8, 0x30b2, 0x30f3, 0 };
-static const unichar_t str_3357[] = { 0x30ef, 0x30c3, 0x30c8, 0 };
-static const unichar_t str_3358[] = { 0x0030, 0x70b9, 0 };
-static const unichar_t str_3359[] = { 0x0031, 0x70b9, 0 };
-static const unichar_t str_335a[] = { 0x0032, 0x70b9, 0 };
-static const unichar_t str_335b[] = { 0x0033, 0x70b9, 0 };
-static const unichar_t str_335c[] = { 0x0034, 0x70b9, 0 };
-static const unichar_t str_335d[] = { 0x0035, 0x70b9, 0 };
-static const unichar_t str_335e[] = { 0x0036, 0x70b9, 0 };
-static const unichar_t str_335f[] = { 0x0037, 0x70b9, 0 };
-static const unichar_t str_3360[] = { 0x0038, 0x70b9, 0 };
-static const unichar_t str_3361[] = { 0x0039, 0x70b9, 0 };
-static const unichar_t str_3362[] = { 0x0031, 0x0030, 0x70b9, 0 };
-static const unichar_t str_3363[] = { 0x0031, 0x0031, 0x70b9, 0 };
-static const unichar_t str_3364[] = { 0x0031, 0x0032, 0x70b9, 0 };
-static const unichar_t str_3365[] = { 0x0031, 0x0033, 0x70b9, 0 };
-static const unichar_t str_3366[] = { 0x0031, 0x0034, 0x70b9, 0 };
-static const unichar_t str_3367[] = { 0x0031, 0x0035, 0x70b9, 0 };
-static const unichar_t str_3368[] = { 0x0031, 0x0036, 0x70b9, 0 };
-static const unichar_t str_3369[] = { 0x0031, 0x0037, 0x70b9, 0 };
-static const unichar_t str_336a[] = { 0x0031, 0x0038, 0x70b9, 0 };
-static const unichar_t str_336b[] = { 0x0031, 0x0039, 0x70b9, 0 };
-static const unichar_t str_336c[] = { 0x0032, 0x0030, 0x70b9, 0 };
-static const unichar_t str_336d[] = { 0x0032, 0x0031, 0x70b9, 0 };
-static const unichar_t str_336e[] = { 0x0032, 0x0032, 0x70b9, 0 };
-static const unichar_t str_336f[] = { 0x0032, 0x0033, 0x70b9, 0 };
-static const unichar_t str_3370[] = { 0x0032, 0x0034, 0x70b9, 0 };
-static const unichar_t str_3371[] = { 0x0068, 0x0050, 0x0061, 0 };
-static const unichar_t str_3372[] = { 0x0064, 0x0061, 0 };
-static const unichar_t str_3373[] = { 0x0041, 0x0055, 0 };
-static const unichar_t str_3374[] = { 0x0062, 0x0061, 0x0072, 0 };
-static const unichar_t str_3375[] = { 0x006f, 0x0056, 0 };
-static const unichar_t str_3376[] = { 0x0070, 0x0063, 0 };
-static const unichar_t str_3377[] = { 0x0064, 0x006d, 0 };
-static const unichar_t str_3378[] = { 0x0064, 0x006d, 0x00b2, 0 };
-static const unichar_t str_3379[] = { 0x0064, 0x006d, 0x00b3, 0 };
-static const unichar_t str_337a[] = { 0x0049, 0x0055, 0 };
-static const unichar_t str_337b[] = { 0x5e73, 0x6210, 0 };
-static const unichar_t str_337c[] = { 0x662d, 0x548c, 0 };
-static const unichar_t str_337d[] = { 0x5927, 0x6b63, 0 };
-static const unichar_t str_337e[] = { 0x660e, 0x6cbb, 0 };
-static const unichar_t str_337f[] = { 0x682a, 0x5f0f, 0x4f1a, 0x793e, 0 };
-static const unichar_t str_3380[] = { 0x0070, 0x0041, 0 };
-static const unichar_t str_3381[] = { 0x006e, 0x0041, 0 };
-static const unichar_t str_3382[] = { 0x03bc, 0x0041, 0 };
-static const unichar_t str_3383[] = { 0x006d, 0x0041, 0 };
-static const unichar_t str_3384[] = { 0x006b, 0x0041, 0 };
-static const unichar_t str_3385[] = { 0x004b, 0x0042, 0 };
-static const unichar_t str_3386[] = { 0x004d, 0x0042, 0 };
-static const unichar_t str_3387[] = { 0x0047, 0x0042, 0 };
-static const unichar_t str_3388[] = { 0x0063, 0x0061, 0x006c, 0 };
-static const unichar_t str_3389[] = { 0x006b, 0x0063, 0x0061, 0x006c, 0 };
-static const unichar_t str_338a[] = { 0x0070, 0x0046, 0 };
-static const unichar_t str_338b[] = { 0x006e, 0x0046, 0 };
-static const unichar_t str_338c[] = { 0x03bc, 0x0046, 0 };
-static const unichar_t str_338d[] = { 0x03bc, 0x0067, 0 };
-static const unichar_t str_338e[] = { 0x006d, 0x0067, 0 };
-static const unichar_t str_338f[] = { 0x006b, 0x0067, 0 };
-static const unichar_t str_3390[] = { 0x0048, 0x007a, 0 };
-static const unichar_t str_3391[] = { 0x006b, 0x0048, 0x007a, 0 };
-static const unichar_t str_3392[] = { 0x004d, 0x0048, 0x007a, 0 };
-static const unichar_t str_3393[] = { 0x0047, 0x0048, 0x007a, 0 };
-static const unichar_t str_3394[] = { 0x0054, 0x0048, 0x007a, 0 };
-static const unichar_t str_3395[] = { 0x03bc, 0x2113, 0 };
-static const unichar_t str_3396[] = { 0x006d, 0x2113, 0 };
-static const unichar_t str_3397[] = { 0x0064, 0x2113, 0 };
-static const unichar_t str_3398[] = { 0x006b, 0x2113, 0 };
-static const unichar_t str_3399[] = { 0x0066, 0x006d, 0 };
-static const unichar_t str_339a[] = { 0x006e, 0x006d, 0 };
-static const unichar_t str_339b[] = { 0x03bc, 0x006d, 0 };
-static const unichar_t str_339c[] = { 0x006d, 0x006d, 0 };
-static const unichar_t str_339d[] = { 0x0063, 0x006d, 0 };
-static const unichar_t str_339e[] = { 0x006b, 0x006d, 0 };
-static const unichar_t str_339f[] = { 0x006d, 0x006d, 0x00b2, 0 };
-static const unichar_t str_33a0[] = { 0x0063, 0x006d, 0x00b2, 0 };
-static const unichar_t str_33a1[] = { 0x006d, 0x00b2, 0 };
-static const unichar_t str_33a2[] = { 0x006b, 0x006d, 0x00b2, 0 };
-static const unichar_t str_33a3[] = { 0x006d, 0x006d, 0x00b3, 0 };
-static const unichar_t str_33a4[] = { 0x0063, 0x006d, 0x00b3, 0 };
-static const unichar_t str_33a5[] = { 0x006d, 0x00b3, 0 };
-static const unichar_t str_33a6[] = { 0x006b, 0x006d, 0x00b3, 0 };
-static const unichar_t str_33a7[] = { 0x006d, 0x2215, 0x0073, 0 };
-static const unichar_t str_33a8[] = { 0x006d, 0x2215, 0x0073, 0x00b2, 0 };
-static const unichar_t str_33a9[] = { 0x0050, 0x0061, 0 };
-static const unichar_t str_33aa[] = { 0x006b, 0x0050, 0x0061, 0 };
-static const unichar_t str_33ab[] = { 0x004d, 0x0050, 0x0061, 0 };
-static const unichar_t str_33ac[] = { 0x0047, 0x0050, 0x0061, 0 };
-static const unichar_t str_33ad[] = { 0x0072, 0x0061, 0x0064, 0 };
-static const unichar_t str_33ae[] = { 0x0072, 0x0061, 0x0064, 0x2215, 0x0073, 0 };
-static const unichar_t str_33af[] = { 0x0072, 0x0061, 0x0064, 0x2215, 0x0073, 0x00b2, 0 };
-static const unichar_t str_33b0[] = { 0x0070, 0x0073, 0 };
-static const unichar_t str_33b1[] = { 0x006e, 0x0073, 0 };
-static const unichar_t str_33b2[] = { 0x03bc, 0x0073, 0 };
-static const unichar_t str_33b3[] = { 0x006d, 0x0073, 0 };
-static const unichar_t str_33b4[] = { 0x0070, 0x0056, 0 };
-static const unichar_t str_33b5[] = { 0x006e, 0x0056, 0 };
-static const unichar_t str_33b6[] = { 0x03bc, 0x0056, 0 };
-static const unichar_t str_33b7[] = { 0x006d, 0x0056, 0 };
-static const unichar_t str_33b8[] = { 0x006b, 0x0056, 0 };
-static const unichar_t str_33b9[] = { 0x004d, 0x0056, 0 };
-static const unichar_t str_33ba[] = { 0x0070, 0x0057, 0 };
-static const unichar_t str_33bb[] = { 0x006e, 0x0057, 0 };
-static const unichar_t str_33bc[] = { 0x03bc, 0x0057, 0 };
-static const unichar_t str_33bd[] = { 0x006d, 0x0057, 0 };
-static const unichar_t str_33be[] = { 0x006b, 0x0057, 0 };
-static const unichar_t str_33bf[] = { 0x004d, 0x0057, 0 };
-static const unichar_t str_33c0[] = { 0x006b, 0x03a9, 0 };
-static const unichar_t str_33c1[] = { 0x004d, 0x03a9, 0 };
-static const unichar_t str_33c2[] = { 0x0061, 0x002e, 0x006d, 0x002e, 0 };
-static const unichar_t str_33c3[] = { 0x0042, 0x0071, 0 };
-static const unichar_t str_33c4[] = { 0x0063, 0x0063, 0 };
-static const unichar_t str_33c5[] = { 0x0063, 0x0064, 0 };
-static const unichar_t str_33c6[] = { 0x0043, 0x2215, 0x006b, 0x0067, 0 };
-static const unichar_t str_33c7[] = { 0x0043, 0x006f, 0x002e, 0 };
-static const unichar_t str_33c8[] = { 0x0064, 0x0042, 0 };
-static const unichar_t str_33c9[] = { 0x0047, 0x0079, 0 };
-static const unichar_t str_33ca[] = { 0x0068, 0x0061, 0 };
-static const unichar_t str_33cb[] = { 0x0048, 0x0050, 0 };
-static const unichar_t str_33cc[] = { 0x0069, 0x006e, 0 };
-static const unichar_t str_33cd[] = { 0x004b, 0x004b, 0 };
-static const unichar_t str_33ce[] = { 0x004b, 0x004d, 0 };
-static const unichar_t str_33cf[] = { 0x006b, 0x0074, 0 };
-static const unichar_t str_33d0[] = { 0x006c, 0x006d, 0 };
-static const unichar_t str_33d1[] = { 0x006c, 0x006e, 0 };
-static const unichar_t str_33d2[] = { 0x006c, 0x006f, 0x0067, 0 };
-static const unichar_t str_33d3[] = { 0x006c, 0x0078, 0 };
-static const unichar_t str_33d4[] = { 0x006d, 0x0062, 0 };
-static const unichar_t str_33d5[] = { 0x006d, 0x0069, 0x006c, 0 };
-static const unichar_t str_33d6[] = { 0x006d, 0x006f, 0x006c, 0 };
-static const unichar_t str_33d7[] = { 0x0050, 0x0048, 0 };
-static const unichar_t str_33d8[] = { 0x0070, 0x002e, 0x006d, 0x002e, 0 };
-static const unichar_t str_33d9[] = { 0x0050, 0x0050, 0x004d, 0 };
-static const unichar_t str_33da[] = { 0x0050, 0x0052, 0 };
-static const unichar_t str_33db[] = { 0x0073, 0x0072, 0 };
-static const unichar_t str_33dc[] = { 0x0053, 0x0076, 0 };
-static const unichar_t str_33dd[] = { 0x0057, 0x0062, 0 };
-static const unichar_t str_33de[] = { 0x0056, 0x2215, 0x006d, 0 };
-static const unichar_t str_33df[] = { 0x0041, 0x2215, 0x006d, 0 };
-static const unichar_t str_33e0[] = { 0x0031, 0x65e5, 0 };
-static const unichar_t str_33e1[] = { 0x0032, 0x65e5, 0 };
-static const unichar_t str_33e2[] = { 0x0033, 0x65e5, 0 };
-static const unichar_t str_33e3[] = { 0x0034, 0x65e5, 0 };
-static const unichar_t str_33e4[] = { 0x0035, 0x65e5, 0 };
-static const unichar_t str_33e5[] = { 0x0036, 0x65e5, 0 };
-static const unichar_t str_33e6[] = { 0x0037, 0x65e5, 0 };
-static const unichar_t str_33e7[] = { 0x0038, 0x65e5, 0 };
-static const unichar_t str_33e8[] = { 0x0039, 0x65e5, 0 };
-static const unichar_t str_33e9[] = { 0x0031, 0x0030, 0x65e5, 0 };
-static const unichar_t str_33ea[] = { 0x0031, 0x0031, 0x65e5, 0 };
-static const unichar_t str_33eb[] = { 0x0031, 0x0032, 0x65e5, 0 };
-static const unichar_t str_33ec[] = { 0x0031, 0x0033, 0x65e5, 0 };
-static const unichar_t str_33ed[] = { 0x0031, 0x0034, 0x65e5, 0 };
-static const unichar_t str_33ee[] = { 0x0031, 0x0035, 0x65e5, 0 };
-static const unichar_t str_33ef[] = { 0x0031, 0x0036, 0x65e5, 0 };
-static const unichar_t str_33f0[] = { 0x0031, 0x0037, 0x65e5, 0 };
-static const unichar_t str_33f1[] = { 0x0031, 0x0038, 0x65e5, 0 };
-static const unichar_t str_33f2[] = { 0x0031, 0x0039, 0x65e5, 0 };
-static const unichar_t str_33f3[] = { 0x0032, 0x0030, 0x65e5, 0 };
-static const unichar_t str_33f4[] = { 0x0032, 0x0031, 0x65e5, 0 };
-static const unichar_t str_33f5[] = { 0x0032, 0x0032, 0x65e5, 0 };
-static const unichar_t str_33f6[] = { 0x0032, 0x0033, 0x65e5, 0 };
-static const unichar_t str_33f7[] = { 0x0032, 0x0034, 0x65e5, 0 };
-static const unichar_t str_33f8[] = { 0x0032, 0x0035, 0x65e5, 0 };
-static const unichar_t str_33f9[] = { 0x0032, 0x0036, 0x65e5, 0 };
-static const unichar_t str_33fa[] = { 0x0032, 0x0037, 0x65e5, 0 };
-static const unichar_t str_33fb[] = { 0x0032, 0x0038, 0x65e5, 0 };
-static const unichar_t str_33fc[] = { 0x0032, 0x0039, 0x65e5, 0 };
-static const unichar_t str_33fd[] = { 0x0033, 0x0030, 0x65e5, 0 };
-static const unichar_t str_33fe[] = { 0x0033, 0x0031, 0x65e5, 0 };
-static const unichar_t str_33ff[] = { 0x0067, 0x0061, 0x006c, 0 };
-static const unichar_t str_a770[] = { 0xa76f, 0 };
-static const unichar_t str_a7f8[] = { 0x0126, 0 };
-static const unichar_t str_a7f9[] = { 0x0153, 0 };
-static const unichar_t str_f900[] = { 0x8c48, 0 };
-static const unichar_t str_f901[] = { 0x66f4, 0 };
-static const unichar_t str_f902[] = { 0x8eca, 0 };
-static const unichar_t str_f903[] = { 0x8cc8, 0 };
-static const unichar_t str_f904[] = { 0x6ed1, 0 };
-static const unichar_t str_f905[] = { 0x4e32, 0 };
-static const unichar_t str_f906[] = { 0x53e5, 0 };
-static const unichar_t str_f907[] = { 0x9f9c, 0 };
-static const unichar_t str_f908[] = { 0x9f9c, 0 };
-static const unichar_t str_f909[] = { 0x5951, 0 };
-static const unichar_t str_f90a[] = { 0x91d1, 0 };
-static const unichar_t str_f90b[] = { 0x5587, 0 };
-static const unichar_t str_f90c[] = { 0x5948, 0 };
-static const unichar_t str_f90d[] = { 0x61f6, 0 };
-static const unichar_t str_f90e[] = { 0x7669, 0 };
-static const unichar_t str_f90f[] = { 0x7f85, 0 };
-static const unichar_t str_f910[] = { 0x863f, 0 };
-static const unichar_t str_f911[] = { 0x87ba, 0 };
-static const unichar_t str_f912[] = { 0x88f8, 0 };
-static const unichar_t str_f913[] = { 0x908f, 0 };
-static const unichar_t str_f914[] = { 0x6a02, 0 };
-static const unichar_t str_f915[] = { 0x6d1b, 0 };
-static const unichar_t str_f916[] = { 0x70d9, 0 };
-static const unichar_t str_f917[] = { 0x73de, 0 };
-static const unichar_t str_f918[] = { 0x843d, 0 };
-static const unichar_t str_f919[] = { 0x916a, 0 };
-static const unichar_t str_f91a[] = { 0x99f1, 0 };
-static const unichar_t str_f91b[] = { 0x4e82, 0 };
-static const unichar_t str_f91c[] = { 0x5375, 0 };
-static const unichar_t str_f91d[] = { 0x6b04, 0 };
-static const unichar_t str_f91e[] = { 0x721b, 0 };
-static const unichar_t str_f91f[] = { 0x862d, 0 };
-static const unichar_t str_f920[] = { 0x9e1e, 0 };
-static const unichar_t str_f921[] = { 0x5d50, 0 };
-static const unichar_t str_f922[] = { 0x6feb, 0 };
-static const unichar_t str_f923[] = { 0x85cd, 0 };
-static const unichar_t str_f924[] = { 0x8964, 0 };
-static const unichar_t str_f925[] = { 0x62c9, 0 };
-static const unichar_t str_f926[] = { 0x81d8, 0 };
-static const unichar_t str_f927[] = { 0x881f, 0 };
-static const unichar_t str_f928[] = { 0x5eca, 0 };
-static const unichar_t str_f929[] = { 0x6717, 0 };
-static const unichar_t str_f92a[] = { 0x6d6a, 0 };
-static const unichar_t str_f92b[] = { 0x72fc, 0 };
-static const unichar_t str_f92c[] = { 0x90ce, 0 };
-static const unichar_t str_f92d[] = { 0x4f86, 0 };
-static const unichar_t str_f92e[] = { 0x51b7, 0 };
-static const unichar_t str_f92f[] = { 0x52de, 0 };
-static const unichar_t str_f930[] = { 0x64c4, 0 };
-static const unichar_t str_f931[] = { 0x6ad3, 0 };
-static const unichar_t str_f932[] = { 0x7210, 0 };
-static const unichar_t str_f933[] = { 0x76e7, 0 };
-static const unichar_t str_f934[] = { 0x8001, 0 };
-static const unichar_t str_f935[] = { 0x8606, 0 };
-static const unichar_t str_f936[] = { 0x865c, 0 };
-static const unichar_t str_f937[] = { 0x8def, 0 };
-static const unichar_t str_f938[] = { 0x9732, 0 };
-static const unichar_t str_f939[] = { 0x9b6f, 0 };
-static const unichar_t str_f93a[] = { 0x9dfa, 0 };
-static const unichar_t str_f93b[] = { 0x788c, 0 };
-static const unichar_t str_f93c[] = { 0x797f, 0 };
-static const unichar_t str_f93d[] = { 0x7da0, 0 };
-static const unichar_t str_f93e[] = { 0x83c9, 0 };
-static const unichar_t str_f93f[] = { 0x9304, 0 };
-static const unichar_t str_f940[] = { 0x9e7f, 0 };
-static const unichar_t str_f941[] = { 0x8ad6, 0 };
-static const unichar_t str_f942[] = { 0x58df, 0 };
-static const unichar_t str_f943[] = { 0x5f04, 0 };
-static const unichar_t str_f944[] = { 0x7c60, 0 };
-static const unichar_t str_f945[] = { 0x807e, 0 };
-static const unichar_t str_f946[] = { 0x7262, 0 };
-static const unichar_t str_f947[] = { 0x78ca, 0 };
-static const unichar_t str_f948[] = { 0x8cc2, 0 };
-static const unichar_t str_f949[] = { 0x96f7, 0 };
-static const unichar_t str_f94a[] = { 0x58d8, 0 };
-static const unichar_t str_f94b[] = { 0x5c62, 0 };
-static const unichar_t str_f94c[] = { 0x6a13, 0 };
-static const unichar_t str_f94d[] = { 0x6dda, 0 };
-static const unichar_t str_f94e[] = { 0x6f0f, 0 };
-static const unichar_t str_f94f[] = { 0x7d2f, 0 };
-static const unichar_t str_f950[] = { 0x7e37, 0 };
-static const unichar_t str_f951[] = { 0x964b, 0 };
-static const unichar_t str_f952[] = { 0x52d2, 0 };
-static const unichar_t str_f953[] = { 0x808b, 0 };
-static const unichar_t str_f954[] = { 0x51dc, 0 };
-static const unichar_t str_f955[] = { 0x51cc, 0 };
-static const unichar_t str_f956[] = { 0x7a1c, 0 };
-static const unichar_t str_f957[] = { 0x7dbe, 0 };
-static const unichar_t str_f958[] = { 0x83f1, 0 };
-static const unichar_t str_f959[] = { 0x9675, 0 };
-static const unichar_t str_f95a[] = { 0x8b80, 0 };
-static const unichar_t str_f95b[] = { 0x62cf, 0 };
-static const unichar_t str_f95c[] = { 0x6a02, 0 };
-static const unichar_t str_f95d[] = { 0x8afe, 0 };
-static const unichar_t str_f95e[] = { 0x4e39, 0 };
-static const unichar_t str_f95f[] = { 0x5be7, 0 };
-static const unichar_t str_f960[] = { 0x6012, 0 };
-static const unichar_t str_f961[] = { 0x7387, 0 };
-static const unichar_t str_f962[] = { 0x7570, 0 };
-static const unichar_t str_f963[] = { 0x5317, 0 };
-static const unichar_t str_f964[] = { 0x78fb, 0 };
-static const unichar_t str_f965[] = { 0x4fbf, 0 };
-static const unichar_t str_f966[] = { 0x5fa9, 0 };
-static const unichar_t str_f967[] = { 0x4e0d, 0 };
-static const unichar_t str_f968[] = { 0x6ccc, 0 };
-static const unichar_t str_f969[] = { 0x6578, 0 };
-static const unichar_t str_f96a[] = { 0x7d22, 0 };
-static const unichar_t str_f96b[] = { 0x53c3, 0 };
-static const unichar_t str_f96c[] = { 0x585e, 0 };
-static const unichar_t str_f96d[] = { 0x7701, 0 };
-static const unichar_t str_f96e[] = { 0x8449, 0 };
-static const unichar_t str_f96f[] = { 0x8aaa, 0 };
-static const unichar_t str_f970[] = { 0x6bba, 0 };
-static const unichar_t str_f971[] = { 0x8fb0, 0 };
-static const unichar_t str_f972[] = { 0x6c88, 0 };
-static const unichar_t str_f973[] = { 0x62fe, 0 };
-static const unichar_t str_f974[] = { 0x82e5, 0 };
-static const unichar_t str_f975[] = { 0x63a0, 0 };
-static const unichar_t str_f976[] = { 0x7565, 0 };
-static const unichar_t str_f977[] = { 0x4eae, 0 };
-static const unichar_t str_f978[] = { 0x5169, 0 };
-static const unichar_t str_f979[] = { 0x51c9, 0 };
-static const unichar_t str_f97a[] = { 0x6881, 0 };
-static const unichar_t str_f97b[] = { 0x7ce7, 0 };
-static const unichar_t str_f97c[] = { 0x826f, 0 };
-static const unichar_t str_f97d[] = { 0x8ad2, 0 };
-static const unichar_t str_f97e[] = { 0x91cf, 0 };
-static const unichar_t str_f97f[] = { 0x52f5, 0 };
-static const unichar_t str_f980[] = { 0x5442, 0 };
-static const unichar_t str_f981[] = { 0x5973, 0 };
-static const unichar_t str_f982[] = { 0x5eec, 0 };
-static const unichar_t str_f983[] = { 0x65c5, 0 };
-static const unichar_t str_f984[] = { 0x6ffe, 0 };
-static const unichar_t str_f985[] = { 0x792a, 0 };
-static const unichar_t str_f986[] = { 0x95ad, 0 };
-static const unichar_t str_f987[] = { 0x9a6a, 0 };
-static const unichar_t str_f988[] = { 0x9e97, 0 };
-static const unichar_t str_f989[] = { 0x9ece, 0 };
-static const unichar_t str_f98a[] = { 0x529b, 0 };
-static const unichar_t str_f98b[] = { 0x66c6, 0 };
-static const unichar_t str_f98c[] = { 0x6b77, 0 };
-static const unichar_t str_f98d[] = { 0x8f62, 0 };
-static const unichar_t str_f98e[] = { 0x5e74, 0 };
-static const unichar_t str_f98f[] = { 0x6190, 0 };
-static const unichar_t str_f990[] = { 0x6200, 0 };
-static const unichar_t str_f991[] = { 0x649a, 0 };
-static const unichar_t str_f992[] = { 0x6f23, 0 };
-static const unichar_t str_f993[] = { 0x7149, 0 };
-static const unichar_t str_f994[] = { 0x7489, 0 };
-static const unichar_t str_f995[] = { 0x79ca, 0 };
-static const unichar_t str_f996[] = { 0x7df4, 0 };
-static const unichar_t str_f997[] = { 0x806f, 0 };
-static const unichar_t str_f998[] = { 0x8f26, 0 };
-static const unichar_t str_f999[] = { 0x84ee, 0 };
-static const unichar_t str_f99a[] = { 0x9023, 0 };
-static const unichar_t str_f99b[] = { 0x934a, 0 };
-static const unichar_t str_f99c[] = { 0x5217, 0 };
-static const unichar_t str_f99d[] = { 0x52a3, 0 };
-static const unichar_t str_f99e[] = { 0x54bd, 0 };
-static const unichar_t str_f99f[] = { 0x70c8, 0 };
-static const unichar_t str_f9a0[] = { 0x88c2, 0 };
-static const unichar_t str_f9a1[] = { 0x8aaa, 0 };
-static const unichar_t str_f9a2[] = { 0x5ec9, 0 };
-static const unichar_t str_f9a3[] = { 0x5ff5, 0 };
-static const unichar_t str_f9a4[] = { 0x637b, 0 };
-static const unichar_t str_f9a5[] = { 0x6bae, 0 };
-static const unichar_t str_f9a6[] = { 0x7c3e, 0 };
-static const unichar_t str_f9a7[] = { 0x7375, 0 };
-static const unichar_t str_f9a8[] = { 0x4ee4, 0 };
-static const unichar_t str_f9a9[] = { 0x56f9, 0 };
-static const unichar_t str_f9aa[] = { 0x5be7, 0 };
-static const unichar_t str_f9ab[] = { 0x5dba, 0 };
-static const unichar_t str_f9ac[] = { 0x601c, 0 };
-static const unichar_t str_f9ad[] = { 0x73b2, 0 };
-static const unichar_t str_f9ae[] = { 0x7469, 0 };
-static const unichar_t str_f9af[] = { 0x7f9a, 0 };
-static const unichar_t str_f9b0[] = { 0x8046, 0 };
-static const unichar_t str_f9b1[] = { 0x9234, 0 };
-static const unichar_t str_f9b2[] = { 0x96f6, 0 };
-static const unichar_t str_f9b3[] = { 0x9748, 0 };
-static const unichar_t str_f9b4[] = { 0x9818, 0 };
-static const unichar_t str_f9b5[] = { 0x4f8b, 0 };
-static const unichar_t str_f9b6[] = { 0x79ae, 0 };
-static const unichar_t str_f9b7[] = { 0x91b4, 0 };
-static const unichar_t str_f9b8[] = { 0x96b8, 0 };
-static const unichar_t str_f9b9[] = { 0x60e1, 0 };
-static const unichar_t str_f9ba[] = { 0x4e86, 0 };
-static const unichar_t str_f9bb[] = { 0x50da, 0 };
-static const unichar_t str_f9bc[] = { 0x5bee, 0 };
-static const unichar_t str_f9bd[] = { 0x5c3f, 0 };
-static const unichar_t str_f9be[] = { 0x6599, 0 };
-static const unichar_t str_f9bf[] = { 0x6a02, 0 };
-static const unichar_t str_f9c0[] = { 0x71ce, 0 };
-static const unichar_t str_f9c1[] = { 0x7642, 0 };
-static const unichar_t str_f9c2[] = { 0x84fc, 0 };
-static const unichar_t str_f9c3[] = { 0x907c, 0 };
-static const unichar_t str_f9c4[] = { 0x9f8d, 0 };
-static const unichar_t str_f9c5[] = { 0x6688, 0 };
-static const unichar_t str_f9c6[] = { 0x962e, 0 };
-static const unichar_t str_f9c7[] = { 0x5289, 0 };
-static const unichar_t str_f9c8[] = { 0x677b, 0 };
-static const unichar_t str_f9c9[] = { 0x67f3, 0 };
-static const unichar_t str_f9ca[] = { 0x6d41, 0 };
-static const unichar_t str_f9cb[] = { 0x6e9c, 0 };
-static const unichar_t str_f9cc[] = { 0x7409, 0 };
-static const unichar_t str_f9cd[] = { 0x7559, 0 };
-static const unichar_t str_f9ce[] = { 0x786b, 0 };
-static const unichar_t str_f9cf[] = { 0x7d10, 0 };
-static const unichar_t str_f9d0[] = { 0x985e, 0 };
-static const unichar_t str_f9d1[] = { 0x516d, 0 };
-static const unichar_t str_f9d2[] = { 0x622e, 0 };
-static const unichar_t str_f9d3[] = { 0x9678, 0 };
-static const unichar_t str_f9d4[] = { 0x502b, 0 };
-static const unichar_t str_f9d5[] = { 0x5d19, 0 };
-static const unichar_t str_f9d6[] = { 0x6dea, 0 };
-static const unichar_t str_f9d7[] = { 0x8f2a, 0 };
-static const unichar_t str_f9d8[] = { 0x5f8b, 0 };
-static const unichar_t str_f9d9[] = { 0x6144, 0 };
-static const unichar_t str_f9da[] = { 0x6817, 0 };
-static const unichar_t str_f9db[] = { 0x7387, 0 };
-static const unichar_t str_f9dc[] = { 0x9686, 0 };
-static const unichar_t str_f9dd[] = { 0x5229, 0 };
-static const unichar_t str_f9de[] = { 0x540f, 0 };
-static const unichar_t str_f9df[] = { 0x5c65, 0 };
-static const unichar_t str_f9e0[] = { 0x6613, 0 };
-static const unichar_t str_f9e1[] = { 0x674e, 0 };
-static const unichar_t str_f9e2[] = { 0x68a8, 0 };
-static const unichar_t str_f9e3[] = { 0x6ce5, 0 };
-static const unichar_t str_f9e4[] = { 0x7406, 0 };
-static const unichar_t str_f9e5[] = { 0x75e2, 0 };
-static const unichar_t str_f9e6[] = { 0x7f79, 0 };
-static const unichar_t str_f9e7[] = { 0x88cf, 0 };
-static const unichar_t str_f9e8[] = { 0x88e1, 0 };
-static const unichar_t str_f9e9[] = { 0x91cc, 0 };
-static const unichar_t str_f9ea[] = { 0x96e2, 0 };
-static const unichar_t str_f9eb[] = { 0x533f, 0 };
-static const unichar_t str_f9ec[] = { 0x6eba, 0 };
-static const unichar_t str_f9ed[] = { 0x541d, 0 };
-static const unichar_t str_f9ee[] = { 0x71d0, 0 };
-static const unichar_t str_f9ef[] = { 0x7498, 0 };
-static const unichar_t str_f9f0[] = { 0x85fa, 0 };
-static const unichar_t str_f9f1[] = { 0x96a3, 0 };
-static const unichar_t str_f9f2[] = { 0x9c57, 0 };
-static const unichar_t str_f9f3[] = { 0x9e9f, 0 };
-static const unichar_t str_f9f4[] = { 0x6797, 0 };
-static const unichar_t str_f9f5[] = { 0x6dcb, 0 };
-static const unichar_t str_f9f6[] = { 0x81e8, 0 };
-static const unichar_t str_f9f7[] = { 0x7acb, 0 };
-static const unichar_t str_f9f8[] = { 0x7b20, 0 };
-static const unichar_t str_f9f9[] = { 0x7c92, 0 };
-static const unichar_t str_f9fa[] = { 0x72c0, 0 };
-static const unichar_t str_f9fb[] = { 0x7099, 0 };
-static const unichar_t str_f9fc[] = { 0x8b58, 0 };
-static const unichar_t str_f9fd[] = { 0x4ec0, 0 };
-static const unichar_t str_f9fe[] = { 0x8336, 0 };
-static const unichar_t str_f9ff[] = { 0x523a, 0 };
-static const unichar_t str_fa00[] = { 0x5207, 0 };
-static const unichar_t str_fa01[] = { 0x5ea6, 0 };
-static const unichar_t str_fa02[] = { 0x62d3, 0 };
-static const unichar_t str_fa03[] = { 0x7cd6, 0 };
-static const unichar_t str_fa04[] = { 0x5b85, 0 };
-static const unichar_t str_fa05[] = { 0x6d1e, 0 };
-static const unichar_t str_fa06[] = { 0x66b4, 0 };
-static const unichar_t str_fa07[] = { 0x8f3b, 0 };
-static const unichar_t str_fa08[] = { 0x884c, 0 };
-static const unichar_t str_fa09[] = { 0x964d, 0 };
-static const unichar_t str_fa0a[] = { 0x898b, 0 };
-static const unichar_t str_fa0b[] = { 0x5ed3, 0 };
-static const unichar_t str_fa0c[] = { 0x5140, 0 };
-static const unichar_t str_fa0d[] = { 0x55c0, 0 };
-static const unichar_t str_fa10[] = { 0x585a, 0 };
-static const unichar_t str_fa12[] = { 0x6674, 0 };
-static const unichar_t str_fa15[] = { 0x51de, 0 };
-static const unichar_t str_fa16[] = { 0x732a, 0 };
-static const unichar_t str_fa17[] = { 0x76ca, 0 };
-static const unichar_t str_fa18[] = { 0x793c, 0 };
-static const unichar_t str_fa19[] = { 0x795e, 0 };
-static const unichar_t str_fa1a[] = { 0x7965, 0 };
-static const unichar_t str_fa1b[] = { 0x798f, 0 };
-static const unichar_t str_fa1c[] = { 0x9756, 0 };
-static const unichar_t str_fa1d[] = { 0x7cbe, 0 };
-static const unichar_t str_fa1e[] = { 0x7fbd, 0 };
-static const unichar_t str_fa20[] = { 0x8612, 0 };
-static const unichar_t str_fa22[] = { 0x8af8, 0 };
-static const unichar_t str_fa25[] = { 0x9038, 0 };
-static const unichar_t str_fa26[] = { 0x90fd, 0 };
-static const unichar_t str_fa2a[] = { 0x98ef, 0 };
-static const unichar_t str_fa2b[] = { 0x98fc, 0 };
-static const unichar_t str_fa2c[] = { 0x9928, 0 };
-static const unichar_t str_fa2d[] = { 0x9db4, 0 };
-static const unichar_t str_fa2e[] = { 0x90de, 0 };
-static const unichar_t str_fa2f[] = { 0x96b7, 0 };
-static const unichar_t str_fa30[] = { 0x4fae, 0 };
-static const unichar_t str_fa31[] = { 0x50e7, 0 };
-static const unichar_t str_fa32[] = { 0x514d, 0 };
-static const unichar_t str_fa33[] = { 0x52c9, 0 };
-static const unichar_t str_fa34[] = { 0x52e4, 0 };
-static const unichar_t str_fa35[] = { 0x5351, 0 };
-static const unichar_t str_fa36[] = { 0x559d, 0 };
-static const unichar_t str_fa37[] = { 0x5606, 0 };
-static const unichar_t str_fa38[] = { 0x5668, 0 };
-static const unichar_t str_fa39[] = { 0x5840, 0 };
-static const unichar_t str_fa3a[] = { 0x58a8, 0 };
-static const unichar_t str_fa3b[] = { 0x5c64, 0 };
-static const unichar_t str_fa3c[] = { 0x5c6e, 0 };
-static const unichar_t str_fa3d[] = { 0x6094, 0 };
-static const unichar_t str_fa3e[] = { 0x6168, 0 };
-static const unichar_t str_fa3f[] = { 0x618e, 0 };
-static const unichar_t str_fa40[] = { 0x61f2, 0 };
-static const unichar_t str_fa41[] = { 0x654f, 0 };
-static const unichar_t str_fa42[] = { 0x65e2, 0 };
-static const unichar_t str_fa43[] = { 0x6691, 0 };
-static const unichar_t str_fa44[] = { 0x6885, 0 };
-static const unichar_t str_fa45[] = { 0x6d77, 0 };
-static const unichar_t str_fa46[] = { 0x6e1a, 0 };
-static const unichar_t str_fa47[] = { 0x6f22, 0 };
-static const unichar_t str_fa48[] = { 0x716e, 0 };
-static const unichar_t str_fa49[] = { 0x722b, 0 };
-static const unichar_t str_fa4a[] = { 0x7422, 0 };
-static const unichar_t str_fa4b[] = { 0x7891, 0 };
-static const unichar_t str_fa4c[] = { 0x793e, 0 };
-static const unichar_t str_fa4d[] = { 0x7949, 0 };
-static const unichar_t str_fa4e[] = { 0x7948, 0 };
-static const unichar_t str_fa4f[] = { 0x7950, 0 };
-static const unichar_t str_fa50[] = { 0x7956, 0 };
-static const unichar_t str_fa51[] = { 0x795d, 0 };
-static const unichar_t str_fa52[] = { 0x798d, 0 };
-static const unichar_t str_fa53[] = { 0x798e, 0 };
-static const unichar_t str_fa54[] = { 0x7a40, 0 };
-static const unichar_t str_fa55[] = { 0x7a81, 0 };
-static const unichar_t str_fa56[] = { 0x7bc0, 0 };
-static const unichar_t str_fa57[] = { 0x7df4, 0 };
-static const unichar_t str_fa58[] = { 0x7e09, 0 };
-static const unichar_t str_fa59[] = { 0x7e41, 0 };
-static const unichar_t str_fa5a[] = { 0x7f72, 0 };
-static const unichar_t str_fa5b[] = { 0x8005, 0 };
-static const unichar_t str_fa5c[] = { 0x81ed, 0 };
-static const unichar_t str_fa5d[] = { 0x8279, 0 };
-static const unichar_t str_fa5e[] = { 0x8279, 0 };
-static const unichar_t str_fa5f[] = { 0x8457, 0 };
-static const unichar_t str_fa60[] = { 0x8910, 0 };
-static const unichar_t str_fa61[] = { 0x8996, 0 };
-static const unichar_t str_fa62[] = { 0x8b01, 0 };
-static const unichar_t str_fa63[] = { 0x8b39, 0 };
-static const unichar_t str_fa64[] = { 0x8cd3, 0 };
-static const unichar_t str_fa65[] = { 0x8d08, 0 };
-static const unichar_t str_fa66[] = { 0x8fb6, 0 };
-static const unichar_t str_fa67[] = { 0x9038, 0 };
-static const unichar_t str_fa68[] = { 0x96e3, 0 };
-static const unichar_t str_fa69[] = { 0x97ff, 0 };
-static const unichar_t str_fa6a[] = { 0x983b, 0 };
-static const unichar_t str_fa6b[] = { 0x6075, 0 };
-static const unichar_t str_fa6c[] = { 0x242ee, 0 };
-static const unichar_t str_fa6d[] = { 0x8218, 0 };
-static const unichar_t str_fa70[] = { 0x4e26, 0 };
-static const unichar_t str_fa71[] = { 0x51b5, 0 };
-static const unichar_t str_fa72[] = { 0x5168, 0 };
-static const unichar_t str_fa73[] = { 0x4f80, 0 };
-static const unichar_t str_fa74[] = { 0x5145, 0 };
-static const unichar_t str_fa75[] = { 0x5180, 0 };
-static const unichar_t str_fa76[] = { 0x52c7, 0 };
-static const unichar_t str_fa77[] = { 0x52fa, 0 };
-static const unichar_t str_fa78[] = { 0x559d, 0 };
-static const unichar_t str_fa79[] = { 0x5555, 0 };
-static const unichar_t str_fa7a[] = { 0x5599, 0 };
-static const unichar_t str_fa7b[] = { 0x55e2, 0 };
-static const unichar_t str_fa7c[] = { 0x585a, 0 };
-static const unichar_t str_fa7d[] = { 0x58b3, 0 };
-static const unichar_t str_fa7e[] = { 0x5944, 0 };
-static const unichar_t str_fa7f[] = { 0x5954, 0 };
-static const unichar_t str_fa80[] = { 0x5a62, 0 };
-static const unichar_t str_fa81[] = { 0x5b28, 0 };
-static const unichar_t str_fa82[] = { 0x5ed2, 0 };
-static const unichar_t str_fa83[] = { 0x5ed9, 0 };
-static const unichar_t str_fa84[] = { 0x5f69, 0 };
-static const unichar_t str_fa85[] = { 0x5fad, 0 };
-static const unichar_t str_fa86[] = { 0x60d8, 0 };
-static const unichar_t str_fa87[] = { 0x614e, 0 };
-static const unichar_t str_fa88[] = { 0x6108, 0 };
-static const unichar_t str_fa89[] = { 0x618e, 0 };
-static const unichar_t str_fa8a[] = { 0x6160, 0 };
-static const unichar_t str_fa8b[] = { 0x61f2, 0 };
-static const unichar_t str_fa8c[] = { 0x6234, 0 };
-static const unichar_t str_fa8d[] = { 0x63c4, 0 };
-static const unichar_t str_fa8e[] = { 0x641c, 0 };
-static const unichar_t str_fa8f[] = { 0x6452, 0 };
-static const unichar_t str_fa90[] = { 0x6556, 0 };
-static const unichar_t str_fa91[] = { 0x6674, 0 };
-static const unichar_t str_fa92[] = { 0x6717, 0 };
-static const unichar_t str_fa93[] = { 0x671b, 0 };
-static const unichar_t str_fa94[] = { 0x6756, 0 };
-static const unichar_t str_fa95[] = { 0x6b79, 0 };
-static const unichar_t str_fa96[] = { 0x6bba, 0 };
-static const unichar_t str_fa97[] = { 0x6d41, 0 };
-static const unichar_t str_fa98[] = { 0x6edb, 0 };
-static const unichar_t str_fa99[] = { 0x6ecb, 0 };
-static const unichar_t str_fa9a[] = { 0x6f22, 0 };
-static const unichar_t str_fa9b[] = { 0x701e, 0 };
-static const unichar_t str_fa9c[] = { 0x716e, 0 };
-static const unichar_t str_fa9d[] = { 0x77a7, 0 };
-static const unichar_t str_fa9e[] = { 0x7235, 0 };
-static const unichar_t str_fa9f[] = { 0x72af, 0 };
-static const unichar_t str_faa0[] = { 0x732a, 0 };
-static const unichar_t str_faa1[] = { 0x7471, 0 };
-static const unichar_t str_faa2[] = { 0x7506, 0 };
-static const unichar_t str_faa3[] = { 0x753b, 0 };
-static const unichar_t str_faa4[] = { 0x761d, 0 };
-static const unichar_t str_faa5[] = { 0x761f, 0 };
-static const unichar_t str_faa6[] = { 0x76ca, 0 };
-static const unichar_t str_faa7[] = { 0x76db, 0 };
-static const unichar_t str_faa8[] = { 0x76f4, 0 };
-static const unichar_t str_faa9[] = { 0x774a, 0 };
-static const unichar_t str_faaa[] = { 0x7740, 0 };
-static const unichar_t str_faab[] = { 0x78cc, 0 };
-static const unichar_t str_faac[] = { 0x7ab1, 0 };
-static const unichar_t str_faad[] = { 0x7bc0, 0 };
-static const unichar_t str_faae[] = { 0x7c7b, 0 };
-static const unichar_t str_faaf[] = { 0x7d5b, 0 };
-static const unichar_t str_fab0[] = { 0x7df4, 0 };
-static const unichar_t str_fab1[] = { 0x7f3e, 0 };
-static const unichar_t str_fab2[] = { 0x8005, 0 };
-static const unichar_t str_fab3[] = { 0x8352, 0 };
-static const unichar_t str_fab4[] = { 0x83ef, 0 };
-static const unichar_t str_fab5[] = { 0x8779, 0 };
-static const unichar_t str_fab6[] = { 0x8941, 0 };
-static const unichar_t str_fab7[] = { 0x8986, 0 };
-static const unichar_t str_fab8[] = { 0x8996, 0 };
-static const unichar_t str_fab9[] = { 0x8abf, 0 };
-static const unichar_t str_faba[] = { 0x8af8, 0 };
-static const unichar_t str_fabb[] = { 0x8acb, 0 };
-static const unichar_t str_fabc[] = { 0x8b01, 0 };
-static const unichar_t str_fabd[] = { 0x8afe, 0 };
-static const unichar_t str_fabe[] = { 0x8aed, 0 };
-static const unichar_t str_fabf[] = { 0x8b39, 0 };
-static const unichar_t str_fac0[] = { 0x8b8a, 0 };
-static const unichar_t str_fac1[] = { 0x8d08, 0 };
-static const unichar_t str_fac2[] = { 0x8f38, 0 };
-static const unichar_t str_fac3[] = { 0x9072, 0 };
-static const unichar_t str_fac4[] = { 0x9199, 0 };
-static const unichar_t str_fac5[] = { 0x9276, 0 };
-static const unichar_t str_fac6[] = { 0x967c, 0 };
-static const unichar_t str_fac7[] = { 0x96e3, 0 };
-static const unichar_t str_fac8[] = { 0x9756, 0 };
-static const unichar_t str_fac9[] = { 0x97db, 0 };
-static const unichar_t str_faca[] = { 0x97ff, 0 };
-static const unichar_t str_facb[] = { 0x980b, 0 };
-static const unichar_t str_facc[] = { 0x983b, 0 };
-static const unichar_t str_facd[] = { 0x9b12, 0 };
-static const unichar_t str_face[] = { 0x9f9c, 0 };
-static const unichar_t str_facf[] = { 0x2284a, 0 };
-static const unichar_t str_fad0[] = { 0x22844, 0 };
-static const unichar_t str_fad1[] = { 0x233d5, 0 };
-static const unichar_t str_fad2[] = { 0x3b9d, 0 };
-static const unichar_t str_fad3[] = { 0x4018, 0 };
-static const unichar_t str_fad4[] = { 0x4039, 0 };
-static const unichar_t str_fad5[] = { 0x25249, 0 };
-static const unichar_t str_fad6[] = { 0x25cd0, 0 };
-static const unichar_t str_fad7[] = { 0x27ed3, 0 };
-static const unichar_t str_fad8[] = { 0x9f43, 0 };
-static const unichar_t str_fad9[] = { 0x9f8e, 0 };
-static const unichar_t str_fb00[] = { 0x0066, 0x0066, 0 };
-static const unichar_t str_fb01[] = { 0x0066, 0x0069, 0 };
-static const unichar_t str_fb02[] = { 0x0066, 0x006c, 0 };
-static const unichar_t str_fb03[] = { 0x0066, 0x0066, 0x0069, 0 };
-static const unichar_t str_fb04[] = { 0x0066, 0x0066, 0x006c, 0 };
-static const unichar_t str_fb05[] = { 0x017f, 0x0074, 0 };
-static const unichar_t str_fb06[] = { 0x0073, 0x0074, 0 };
-static const unichar_t str_fb13[] = { 0x0574, 0x0576, 0 };
-static const unichar_t str_fb14[] = { 0x0574, 0x0565, 0 };
-static const unichar_t str_fb15[] = { 0x0574, 0x056b, 0 };
-static const unichar_t str_fb16[] = { 0x057e, 0x0576, 0 };
-static const unichar_t str_fb17[] = { 0x0574, 0x056d, 0 };
-static const unichar_t str_fb1d[] = { 0x05d9, 0x05b4, 0 };
-static const unichar_t str_fb1f[] = { 0x05f2, 0x05b7, 0 };
-static const unichar_t str_fb20[] = { 0x05e2, 0 };
-static const unichar_t str_fb21[] = { 0x05d0, 0 };
-static const unichar_t str_fb22[] = { 0x05d3, 0 };
-static const unichar_t str_fb23[] = { 0x05d4, 0 };
-static const unichar_t str_fb24[] = { 0x05db, 0 };
-static const unichar_t str_fb25[] = { 0x05dc, 0 };
-static const unichar_t str_fb26[] = { 0x05dd, 0 };
-static const unichar_t str_fb27[] = { 0x05e8, 0 };
-static const unichar_t str_fb28[] = { 0x05ea, 0 };
-static const unichar_t str_fb29[] = { 0x002b, 0 };
-static const unichar_t str_fb2a[] = { 0x05e9, 0x05c1, 0 };
-static const unichar_t str_fb2b[] = { 0x05e9, 0x05c2, 0 };
-static const unichar_t str_fb2c[] = { 0xfb49, 0x05c1, 0 };
-static const unichar_t str_fb2d[] = { 0xfb49, 0x05c2, 0 };
-static const unichar_t str_fb2e[] = { 0x05d0, 0x05b7, 0 };
-static const unichar_t str_fb2f[] = { 0x05d0, 0x05b8, 0 };
-static const unichar_t str_fb30[] = { 0x05d0, 0x05bc, 0 };
-static const unichar_t str_fb31[] = { 0x05d1, 0x05bc, 0 };
-static const unichar_t str_fb32[] = { 0x05d2, 0x05bc, 0 };
-static const unichar_t str_fb33[] = { 0x05d3, 0x05bc, 0 };
-static const unichar_t str_fb34[] = { 0x05d4, 0x05bc, 0 };
-static const unichar_t str_fb35[] = { 0x05d5, 0x05bc, 0 };
-static const unichar_t str_fb36[] = { 0x05d6, 0x05bc, 0 };
-static const unichar_t str_fb38[] = { 0x05d8, 0x05bc, 0 };
-static const unichar_t str_fb39[] = { 0x05d9, 0x05bc, 0 };
-static const unichar_t str_fb3a[] = { 0x05da, 0x05bc, 0 };
-static const unichar_t str_fb3b[] = { 0x05db, 0x05bc, 0 };
-static const unichar_t str_fb3c[] = { 0x05dc, 0x05bc, 0 };
-static const unichar_t str_fb3e[] = { 0x05de, 0x05bc, 0 };
-static const unichar_t str_fb40[] = { 0x05e0, 0x05bc, 0 };
-static const unichar_t str_fb41[] = { 0x05e1, 0x05bc, 0 };
-static const unichar_t str_fb43[] = { 0x05e3, 0x05bc, 0 };
-static const unichar_t str_fb44[] = { 0x05e4, 0x05bc, 0 };
-static const unichar_t str_fb46[] = { 0x05e6, 0x05bc, 0 };
-static const unichar_t str_fb47[] = { 0x05e7, 0x05bc, 0 };
-static const unichar_t str_fb48[] = { 0x05e8, 0x05bc, 0 };
-static const unichar_t str_fb49[] = { 0x05e9, 0x05bc, 0 };
-static const unichar_t str_fb4a[] = { 0x05ea, 0x05bc, 0 };
-static const unichar_t str_fb4b[] = { 0x05d5, 0x05b9, 0 };
-static const unichar_t str_fb4c[] = { 0x05d1, 0x05bf, 0 };
-static const unichar_t str_fb4d[] = { 0x05db, 0x05bf, 0 };
-static const unichar_t str_fb4e[] = { 0x05e4, 0x05bf, 0 };
-static const unichar_t str_fb4f[] = { 0x05d0, 0x05dc, 0 };
-static const unichar_t str_fb50[] = { 0x0671, 0 };
-static const unichar_t str_fb51[] = { 0x0671, 0 };
-static const unichar_t str_fb52[] = { 0x067b, 0 };
-static const unichar_t str_fb53[] = { 0x067b, 0 };
-static const unichar_t str_fb54[] = { 0x067b, 0 };
-static const unichar_t str_fb55[] = { 0x067b, 0 };
-static const unichar_t str_fb56[] = { 0x067e, 0 };
-static const unichar_t str_fb57[] = { 0x067e, 0 };
-static const unichar_t str_fb58[] = { 0x067e, 0 };
-static const unichar_t str_fb59[] = { 0x067e, 0 };
-static const unichar_t str_fb5a[] = { 0x0680, 0 };
-static const unichar_t str_fb5b[] = { 0x0680, 0 };
-static const unichar_t str_fb5c[] = { 0x0680, 0 };
-static const unichar_t str_fb5d[] = { 0x0680, 0 };
-static const unichar_t str_fb5e[] = { 0x067a, 0 };
-static const unichar_t str_fb5f[] = { 0x067a, 0 };
-static const unichar_t str_fb60[] = { 0x067a, 0 };
-static const unichar_t str_fb61[] = { 0x067a, 0 };
-static const unichar_t str_fb62[] = { 0x067f, 0 };
-static const unichar_t str_fb63[] = { 0x067f, 0 };
-static const unichar_t str_fb64[] = { 0x067f, 0 };
-static const unichar_t str_fb65[] = { 0x067f, 0 };
-static const unichar_t str_fb66[] = { 0x0679, 0 };
-static const unichar_t str_fb67[] = { 0x0679, 0 };
-static const unichar_t str_fb68[] = { 0x0679, 0 };
-static const unichar_t str_fb69[] = { 0x0679, 0 };
-static const unichar_t str_fb6a[] = { 0x06a4, 0 };
-static const unichar_t str_fb6b[] = { 0x06a4, 0 };
-static const unichar_t str_fb6c[] = { 0x06a4, 0 };
-static const unichar_t str_fb6d[] = { 0x06a4, 0 };
-static const unichar_t str_fb6e[] = { 0x06a6, 0 };
-static const unichar_t str_fb6f[] = { 0x06a6, 0 };
-static const unichar_t str_fb70[] = { 0x06a6, 0 };
-static const unichar_t str_fb71[] = { 0x06a6, 0 };
-static const unichar_t str_fb72[] = { 0x0684, 0 };
-static const unichar_t str_fb73[] = { 0x0684, 0 };
-static const unichar_t str_fb74[] = { 0x0684, 0 };
-static const unichar_t str_fb75[] = { 0x0684, 0 };
-static const unichar_t str_fb76[] = { 0x0683, 0 };
-static const unichar_t str_fb77[] = { 0x0683, 0 };
-static const unichar_t str_fb78[] = { 0x0683, 0 };
-static const unichar_t str_fb79[] = { 0x0683, 0 };
-static const unichar_t str_fb7a[] = { 0x0686, 0 };
-static const unichar_t str_fb7b[] = { 0x0686, 0 };
-static const unichar_t str_fb7c[] = { 0x0686, 0 };
-static const unichar_t str_fb7d[] = { 0x0686, 0 };
-static const unichar_t str_fb7e[] = { 0x0687, 0 };
-static const unichar_t str_fb7f[] = { 0x0687, 0 };
-static const unichar_t str_fb80[] = { 0x0687, 0 };
-static const unichar_t str_fb81[] = { 0x0687, 0 };
-static const unichar_t str_fb82[] = { 0x068d, 0 };
-static const unichar_t str_fb83[] = { 0x068d, 0 };
-static const unichar_t str_fb84[] = { 0x068c, 0 };
-static const unichar_t str_fb85[] = { 0x068c, 0 };
-static const unichar_t str_fb86[] = { 0x068e, 0 };
-static const unichar_t str_fb87[] = { 0x068e, 0 };
-static const unichar_t str_fb88[] = { 0x0688, 0 };
-static const unichar_t str_fb89[] = { 0x0688, 0 };
-static const unichar_t str_fb8a[] = { 0x0698, 0 };
-static const unichar_t str_fb8b[] = { 0x0698, 0 };
-static const unichar_t str_fb8c[] = { 0x0691, 0 };
-static const unichar_t str_fb8d[] = { 0x0691, 0 };
-static const unichar_t str_fb8e[] = { 0x06a9, 0 };
-static const unichar_t str_fb8f[] = { 0x06a9, 0 };
-static const unichar_t str_fb90[] = { 0x06a9, 0 };
-static const unichar_t str_fb91[] = { 0x06a9, 0 };
-static const unichar_t str_fb92[] = { 0x06af, 0 };
-static const unichar_t str_fb93[] = { 0x06af, 0 };
-static const unichar_t str_fb94[] = { 0x06af, 0 };
-static const unichar_t str_fb95[] = { 0x06af, 0 };
-static const unichar_t str_fb96[] = { 0x06b3, 0 };
-static const unichar_t str_fb97[] = { 0x06b3, 0 };
-static const unichar_t str_fb98[] = { 0x06b3, 0 };
-static const unichar_t str_fb99[] = { 0x06b3, 0 };
-static const unichar_t str_fb9a[] = { 0x06b1, 0 };
-static const unichar_t str_fb9b[] = { 0x06b1, 0 };
-static const unichar_t str_fb9c[] = { 0x06b1, 0 };
-static const unichar_t str_fb9d[] = { 0x06b1, 0 };
-static const unichar_t str_fb9e[] = { 0x06ba, 0 };
-static const unichar_t str_fb9f[] = { 0x06ba, 0 };
-static const unichar_t str_fba0[] = { 0x06bb, 0 };
-static const unichar_t str_fba1[] = { 0x06bb, 0 };
-static const unichar_t str_fba2[] = { 0x06bb, 0 };
-static const unichar_t str_fba3[] = { 0x06bb, 0 };
-static const unichar_t str_fba4[] = { 0x06c0, 0 };
-static const unichar_t str_fba5[] = { 0x06c0, 0 };
-static const unichar_t str_fba6[] = { 0x06c1, 0 };
-static const unichar_t str_fba7[] = { 0x06c1, 0 };
-static const unichar_t str_fba8[] = { 0x06c1, 0 };
-static const unichar_t str_fba9[] = { 0x06c1, 0 };
-static const unichar_t str_fbaa[] = { 0x06be, 0 };
-static const unichar_t str_fbab[] = { 0x06be, 0 };
-static const unichar_t str_fbac[] = { 0x06be, 0 };
-static const unichar_t str_fbad[] = { 0x06be, 0 };
-static const unichar_t str_fbae[] = { 0x06d2, 0 };
-static const unichar_t str_fbaf[] = { 0x06d2, 0 };
-static const unichar_t str_fbb0[] = { 0x06d3, 0 };
-static const unichar_t str_fbb1[] = { 0x06d3, 0 };
-static const unichar_t str_fbd3[] = { 0x06ad, 0 };
-static const unichar_t str_fbd4[] = { 0x06ad, 0 };
-static const unichar_t str_fbd5[] = { 0x06ad, 0 };
-static const unichar_t str_fbd6[] = { 0x06ad, 0 };
-static const unichar_t str_fbd7[] = { 0x06c7, 0 };
-static const unichar_t str_fbd8[] = { 0x06c7, 0 };
-static const unichar_t str_fbd9[] = { 0x06c6, 0 };
-static const unichar_t str_fbda[] = { 0x06c6, 0 };
-static const unichar_t str_fbdb[] = { 0x06c8, 0 };
-static const unichar_t str_fbdc[] = { 0x06c8, 0 };
-static const unichar_t str_fbdd[] = { 0x0677, 0 };
-static const unichar_t str_fbde[] = { 0x06cb, 0 };
-static const unichar_t str_fbdf[] = { 0x06cb, 0 };
-static const unichar_t str_fbe0[] = { 0x06c5, 0 };
-static const unichar_t str_fbe1[] = { 0x06c5, 0 };
-static const unichar_t str_fbe2[] = { 0x06c9, 0 };
-static const unichar_t str_fbe3[] = { 0x06c9, 0 };
-static const unichar_t str_fbe4[] = { 0x06d0, 0 };
-static const unichar_t str_fbe5[] = { 0x06d0, 0 };
-static const unichar_t str_fbe6[] = { 0x06d0, 0 };
-static const unichar_t str_fbe7[] = { 0x06d0, 0 };
-static const unichar_t str_fbe8[] = { 0x0649, 0 };
-static const unichar_t str_fbe9[] = { 0x0649, 0 };
-static const unichar_t str_fbea[] = { 0x0626, 0x0627, 0 };
-static const unichar_t str_fbeb[] = { 0x0626, 0x0627, 0 };
-static const unichar_t str_fbec[] = { 0x0626, 0x06d5, 0 };
-static const unichar_t str_fbed[] = { 0x0626, 0x06d5, 0 };
-static const unichar_t str_fbee[] = { 0x0626, 0x0648, 0 };
-static const unichar_t str_fbef[] = { 0x0626, 0x0648, 0 };
-static const unichar_t str_fbf0[] = { 0x0626, 0x06c7, 0 };
-static const unichar_t str_fbf1[] = { 0x0626, 0x06c7, 0 };
-static const unichar_t str_fbf2[] = { 0x0626, 0x06c6, 0 };
-static const unichar_t str_fbf3[] = { 0x0626, 0x06c6, 0 };
-static const unichar_t str_fbf4[] = { 0x0626, 0x06c8, 0 };
-static const unichar_t str_fbf5[] = { 0x0626, 0x06c8, 0 };
-static const unichar_t str_fbf6[] = { 0x0626, 0x06d0, 0 };
-static const unichar_t str_fbf7[] = { 0x0626, 0x06d0, 0 };
-static const unichar_t str_fbf8[] = { 0x0626, 0x06d0, 0 };
-static const unichar_t str_fbf9[] = { 0x0626, 0x0649, 0 };
-static const unichar_t str_fbfa[] = { 0x0626, 0x0649, 0 };
-static const unichar_t str_fbfb[] = { 0x0626, 0x0649, 0 };
-static const unichar_t str_fbfc[] = { 0x06cc, 0 };
-static const unichar_t str_fbfd[] = { 0x06cc, 0 };
-static const unichar_t str_fbfe[] = { 0x06cc, 0 };
-static const unichar_t str_fbff[] = { 0x06cc, 0 };
-static const unichar_t str_fc00[] = { 0x0626, 0x062c, 0 };
-static const unichar_t str_fc01[] = { 0x0626, 0x062d, 0 };
-static const unichar_t str_fc02[] = { 0x0626, 0x0645, 0 };
-static const unichar_t str_fc03[] = { 0x0626, 0x0649, 0 };
-static const unichar_t str_fc04[] = { 0x0626, 0x064a, 0 };
-static const unichar_t str_fc05[] = { 0x0628, 0x062c, 0 };
-static const unichar_t str_fc06[] = { 0x0628, 0x062d, 0 };
-static const unichar_t str_fc07[] = { 0x0628, 0x062e, 0 };
-static const unichar_t str_fc08[] = { 0x0628, 0x0645, 0 };
-static const unichar_t str_fc09[] = { 0x0628, 0x0649, 0 };
-static const unichar_t str_fc0a[] = { 0x0628, 0x064a, 0 };
-static const unichar_t str_fc0b[] = { 0x062a, 0x062c, 0 };
-static const unichar_t str_fc0c[] = { 0x062a, 0x062d, 0 };
-static const unichar_t str_fc0d[] = { 0x062a, 0x062e, 0 };
-static const unichar_t str_fc0e[] = { 0x062a, 0x0645, 0 };
-static const unichar_t str_fc0f[] = { 0x062a, 0x0649, 0 };
-static const unichar_t str_fc10[] = { 0x062a, 0x064a, 0 };
-static const unichar_t str_fc11[] = { 0x062b, 0x062c, 0 };
-static const unichar_t str_fc12[] = { 0x062b, 0x0645, 0 };
-static const unichar_t str_fc13[] = { 0x062b, 0x0649, 0 };
-static const unichar_t str_fc14[] = { 0x062b, 0x064a, 0 };
-static const unichar_t str_fc15[] = { 0x062c, 0x062d, 0 };
-static const unichar_t str_fc16[] = { 0x062c, 0x0645, 0 };
-static const unichar_t str_fc17[] = { 0x062d, 0x062c, 0 };
-static const unichar_t str_fc18[] = { 0x062d, 0x0645, 0 };
-static const unichar_t str_fc19[] = { 0x062e, 0x062c, 0 };
-static const unichar_t str_fc1a[] = { 0x062e, 0x062d, 0 };
-static const unichar_t str_fc1b[] = { 0x062e, 0x0645, 0 };
-static const unichar_t str_fc1c[] = { 0x0633, 0x062c, 0 };
-static const unichar_t str_fc1d[] = { 0x0633, 0x062d, 0 };
-static const unichar_t str_fc1e[] = { 0x0633, 0x062e, 0 };
-static const unichar_t str_fc1f[] = { 0x0633, 0x0645, 0 };
-static const unichar_t str_fc20[] = { 0x0635, 0x062d, 0 };
-static const unichar_t str_fc21[] = { 0x0635, 0x0645, 0 };
-static const unichar_t str_fc22[] = { 0x0636, 0x062c, 0 };
-static const unichar_t str_fc23[] = { 0x0636, 0x062d, 0 };
-static const unichar_t str_fc24[] = { 0x0636, 0x062e, 0 };
-static const unichar_t str_fc25[] = { 0x0636, 0x0645, 0 };
-static const unichar_t str_fc26[] = { 0x0637, 0x062d, 0 };
-static const unichar_t str_fc27[] = { 0x0637, 0x0645, 0 };
-static const unichar_t str_fc28[] = { 0x0638, 0x0645, 0 };
-static const unichar_t str_fc29[] = { 0x0639, 0x062c, 0 };
-static const unichar_t str_fc2a[] = { 0x0639, 0x0645, 0 };
-static const unichar_t str_fc2b[] = { 0x063a, 0x062c, 0 };
-static const unichar_t str_fc2c[] = { 0x063a, 0x0645, 0 };
-static const unichar_t str_fc2d[] = { 0x0641, 0x062c, 0 };
-static const unichar_t str_fc2e[] = { 0x0641, 0x062d, 0 };
-static const unichar_t str_fc2f[] = { 0x0641, 0x062e, 0 };
-static const unichar_t str_fc30[] = { 0x0641, 0x0645, 0 };
-static const unichar_t str_fc31[] = { 0x0641, 0x0649, 0 };
-static const unichar_t str_fc32[] = { 0x0641, 0x064a, 0 };
-static const unichar_t str_fc33[] = { 0x0642, 0x062d, 0 };
-static const unichar_t str_fc34[] = { 0x0642, 0x0645, 0 };
-static const unichar_t str_fc35[] = { 0x0642, 0x0649, 0 };
-static const unichar_t str_fc36[] = { 0x0642, 0x064a, 0 };
-static const unichar_t str_fc37[] = { 0x0643, 0x0627, 0 };
-static const unichar_t str_fc38[] = { 0x0643, 0x062c, 0 };
-static const unichar_t str_fc39[] = { 0x0643, 0x062d, 0 };
-static const unichar_t str_fc3a[] = { 0x0643, 0x062e, 0 };
-static const unichar_t str_fc3b[] = { 0x0643, 0x0644, 0 };
-static const unichar_t str_fc3c[] = { 0x0643, 0x0645, 0 };
-static const unichar_t str_fc3d[] = { 0x0643, 0x0649, 0 };
-static const unichar_t str_fc3e[] = { 0x0643, 0x064a, 0 };
-static const unichar_t str_fc3f[] = { 0x0644, 0x062c, 0 };
-static const unichar_t str_fc40[] = { 0x0644, 0x062d, 0 };
-static const unichar_t str_fc41[] = { 0x0644, 0x062e, 0 };
-static const unichar_t str_fc42[] = { 0x0644, 0x0645, 0 };
-static const unichar_t str_fc43[] = { 0x0644, 0x0649, 0 };
-static const unichar_t str_fc44[] = { 0x0644, 0x064a, 0 };
-static const unichar_t str_fc45[] = { 0x0645, 0x062c, 0 };
-static const unichar_t str_fc46[] = { 0x0645, 0x062d, 0 };
-static const unichar_t str_fc47[] = { 0x0645, 0x062e, 0 };
-static const unichar_t str_fc48[] = { 0x0645, 0x0645, 0 };
-static const unichar_t str_fc49[] = { 0x0645, 0x0649, 0 };
-static const unichar_t str_fc4a[] = { 0x0645, 0x064a, 0 };
-static const unichar_t str_fc4b[] = { 0x0646, 0x062c, 0 };
-static const unichar_t str_fc4c[] = { 0x0646, 0x062d, 0 };
-static const unichar_t str_fc4d[] = { 0x0646, 0x062e, 0 };
-static const unichar_t str_fc4e[] = { 0x0646, 0x0645, 0 };
-static const unichar_t str_fc4f[] = { 0x0646, 0x0649, 0 };
-static const unichar_t str_fc50[] = { 0x0646, 0x064a, 0 };
-static const unichar_t str_fc51[] = { 0x0647, 0x062c, 0 };
-static const unichar_t str_fc52[] = { 0x0647, 0x0645, 0 };
-static const unichar_t str_fc53[] = { 0x0647, 0x0649, 0 };
-static const unichar_t str_fc54[] = { 0x0647, 0x064a, 0 };
-static const unichar_t str_fc55[] = { 0x064a, 0x062c, 0 };
-static const unichar_t str_fc56[] = { 0x064a, 0x062d, 0 };
-static const unichar_t str_fc57[] = { 0x064a, 0x062e, 0 };
-static const unichar_t str_fc58[] = { 0x064a, 0x0645, 0 };
-static const unichar_t str_fc59[] = { 0x064a, 0x0649, 0 };
-static const unichar_t str_fc5a[] = { 0x064a, 0x064a, 0 };
-static const unichar_t str_fc5b[] = { 0x0630, 0x0670, 0 };
-static const unichar_t str_fc5c[] = { 0x0631, 0x0670, 0 };
-static const unichar_t str_fc5d[] = { 0x0649, 0x0670, 0 };
-static const unichar_t str_fc5e[] = { 0x0020, 0x064c, 0x0651, 0 };
-static const unichar_t str_fc5f[] = { 0x0020, 0x064d, 0x0651, 0 };
-static const unichar_t str_fc60[] = { 0x0020, 0x064e, 0x0651, 0 };
-static const unichar_t str_fc61[] = { 0x0020, 0x064f, 0x0651, 0 };
-static const unichar_t str_fc62[] = { 0x0020, 0x0650, 0x0651, 0 };
-static const unichar_t str_fc63[] = { 0x0020, 0x0651, 0x0670, 0 };
-static const unichar_t str_fc64[] = { 0x0626, 0x0631, 0 };
-static const unichar_t str_fc65[] = { 0x0626, 0x0632, 0 };
-static const unichar_t str_fc66[] = { 0x0626, 0x0645, 0 };
-static const unichar_t str_fc67[] = { 0x0626, 0x0646, 0 };
-static const unichar_t str_fc68[] = { 0x0626, 0x0649, 0 };
-static const unichar_t str_fc69[] = { 0x0626, 0x064a, 0 };
-static const unichar_t str_fc6a[] = { 0x0628, 0x0631, 0 };
-static const unichar_t str_fc6b[] = { 0x0628, 0x0632, 0 };
-static const unichar_t str_fc6c[] = { 0x0628, 0x0645, 0 };
-static const unichar_t str_fc6d[] = { 0x0628, 0x0646, 0 };
-static const unichar_t str_fc6e[] = { 0x0628, 0x0649, 0 };
-static const unichar_t str_fc6f[] = { 0x0628, 0x064a, 0 };
-static const unichar_t str_fc70[] = { 0x062a, 0x0631, 0 };
-static const unichar_t str_fc71[] = { 0x062a, 0x0632, 0 };
-static const unichar_t str_fc72[] = { 0x062a, 0x0645, 0 };
-static const unichar_t str_fc73[] = { 0x062a, 0x0646, 0 };
-static const unichar_t str_fc74[] = { 0x062a, 0x0649, 0 };
-static const unichar_t str_fc75[] = { 0x062a, 0x064a, 0 };
-static const unichar_t str_fc76[] = { 0x062b, 0x0631, 0 };
-static const unichar_t str_fc77[] = { 0x062b, 0x0632, 0 };
-static const unichar_t str_fc78[] = { 0x062b, 0x0645, 0 };
-static const unichar_t str_fc79[] = { 0x062b, 0x0646, 0 };
-static const unichar_t str_fc7a[] = { 0x062b, 0x0649, 0 };
-static const unichar_t str_fc7b[] = { 0x062b, 0x064a, 0 };
-static const unichar_t str_fc7c[] = { 0x0641, 0x0649, 0 };
-static const unichar_t str_fc7d[] = { 0x0641, 0x064a, 0 };
-static const unichar_t str_fc7e[] = { 0x0642, 0x0649, 0 };
-static const unichar_t str_fc7f[] = { 0x0642, 0x064a, 0 };
-static const unichar_t str_fc80[] = { 0x0643, 0x0627, 0 };
-static const unichar_t str_fc81[] = { 0x0643, 0x0644, 0 };
-static const unichar_t str_fc82[] = { 0x0643, 0x0645, 0 };
-static const unichar_t str_fc83[] = { 0x0643, 0x0649, 0 };
-static const unichar_t str_fc84[] = { 0x0643, 0x064a, 0 };
-static const unichar_t str_fc85[] = { 0x0644, 0x0645, 0 };
-static const unichar_t str_fc86[] = { 0x0644, 0x0649, 0 };
-static const unichar_t str_fc87[] = { 0x0644, 0x064a, 0 };
-static const unichar_t str_fc88[] = { 0x0645, 0x0627, 0 };
-static const unichar_t str_fc89[] = { 0x0645, 0x0645, 0 };
-static const unichar_t str_fc8a[] = { 0x0646, 0x0631, 0 };
-static const unichar_t str_fc8b[] = { 0x0646, 0x0632, 0 };
-static const unichar_t str_fc8c[] = { 0x0646, 0x0645, 0 };
-static const unichar_t str_fc8d[] = { 0x0646, 0x0646, 0 };
-static const unichar_t str_fc8e[] = { 0x0646, 0x0649, 0 };
-static const unichar_t str_fc8f[] = { 0x0646, 0x064a, 0 };
-static const unichar_t str_fc90[] = { 0x0649, 0x0670, 0 };
-static const unichar_t str_fc91[] = { 0x064a, 0x0631, 0 };
-static const unichar_t str_fc92[] = { 0x064a, 0x0632, 0 };
-static const unichar_t str_fc93[] = { 0x064a, 0x0645, 0 };
-static const unichar_t str_fc94[] = { 0x064a, 0x0646, 0 };
-static const unichar_t str_fc95[] = { 0x064a, 0x0649, 0 };
-static const unichar_t str_fc96[] = { 0x064a, 0x064a, 0 };
-static const unichar_t str_fc97[] = { 0x0626, 0x062c, 0 };
-static const unichar_t str_fc98[] = { 0x0626, 0x062d, 0 };
-static const unichar_t str_fc99[] = { 0x0626, 0x062e, 0 };
-static const unichar_t str_fc9a[] = { 0x0626, 0x0645, 0 };
-static const unichar_t str_fc9b[] = { 0x0626, 0x0647, 0 };
-static const unichar_t str_fc9c[] = { 0x0628, 0x062c, 0 };
-static const unichar_t str_fc9d[] = { 0x0628, 0x062d, 0 };
-static const unichar_t str_fc9e[] = { 0x0628, 0x062e, 0 };
-static const unichar_t str_fc9f[] = { 0x0628, 0x0645, 0 };
-static const unichar_t str_fca0[] = { 0x0628, 0x0647, 0 };
-static const unichar_t str_fca1[] = { 0x062a, 0x062c, 0 };
-static const unichar_t str_fca2[] = { 0x062a, 0x062d, 0 };
-static const unichar_t str_fca3[] = { 0x062a, 0x062e, 0 };
-static const unichar_t str_fca4[] = { 0x062a, 0x0645, 0 };
-static const unichar_t str_fca5[] = { 0x062a, 0x0647, 0 };
-static const unichar_t str_fca6[] = { 0x062b, 0x0645, 0 };
-static const unichar_t str_fca7[] = { 0x062c, 0x062d, 0 };
-static const unichar_t str_fca8[] = { 0x062c, 0x0645, 0 };
-static const unichar_t str_fca9[] = { 0x062d, 0x062c, 0 };
-static const unichar_t str_fcaa[] = { 0x062d, 0x0645, 0 };
-static const unichar_t str_fcab[] = { 0x062e, 0x062c, 0 };
-static const unichar_t str_fcac[] = { 0x062e, 0x0645, 0 };
-static const unichar_t str_fcad[] = { 0x0633, 0x062c, 0 };
-static const unichar_t str_fcae[] = { 0x0633, 0x062d, 0 };
-static const unichar_t str_fcaf[] = { 0x0633, 0x062e, 0 };
-static const unichar_t str_fcb0[] = { 0x0633, 0x0645, 0 };
-static const unichar_t str_fcb1[] = { 0x0635, 0x062d, 0 };
-static const unichar_t str_fcb2[] = { 0x0635, 0x062e, 0 };
-static const unichar_t str_fcb3[] = { 0x0635, 0x0645, 0 };
-static const unichar_t str_fcb4[] = { 0x0636, 0x062c, 0 };
-static const unichar_t str_fcb5[] = { 0x0636, 0x062d, 0 };
-static const unichar_t str_fcb6[] = { 0x0636, 0x062e, 0 };
-static const unichar_t str_fcb7[] = { 0x0636, 0x0645, 0 };
-static const unichar_t str_fcb8[] = { 0x0637, 0x062d, 0 };
-static const unichar_t str_fcb9[] = { 0x0638, 0x0645, 0 };
-static const unichar_t str_fcba[] = { 0x0639, 0x062c, 0 };
-static const unichar_t str_fcbb[] = { 0x0639, 0x0645, 0 };
-static const unichar_t str_fcbc[] = { 0x063a, 0x062c, 0 };
-static const unichar_t str_fcbd[] = { 0x063a, 0x0645, 0 };
-static const unichar_t str_fcbe[] = { 0x0641, 0x062c, 0 };
-static const unichar_t str_fcbf[] = { 0x0641, 0x062d, 0 };
-static const unichar_t str_fcc0[] = { 0x0641, 0x062e, 0 };
-static const unichar_t str_fcc1[] = { 0x0641, 0x0645, 0 };
-static const unichar_t str_fcc2[] = { 0x0642, 0x062d, 0 };
-static const unichar_t str_fcc3[] = { 0x0642, 0x0645, 0 };
-static const unichar_t str_fcc4[] = { 0x0643, 0x062c, 0 };
-static const unichar_t str_fcc5[] = { 0x0643, 0x062d, 0 };
-static const unichar_t str_fcc6[] = { 0x0643, 0x062e, 0 };
-static const unichar_t str_fcc7[] = { 0x0643, 0x0644, 0 };
-static const unichar_t str_fcc8[] = { 0x0643, 0x0645, 0 };
-static const unichar_t str_fcc9[] = { 0x0644, 0x062c, 0 };
-static const unichar_t str_fcca[] = { 0x0644, 0x062d, 0 };
-static const unichar_t str_fccb[] = { 0x0644, 0x062e, 0 };
-static const unichar_t str_fccc[] = { 0x0644, 0x0645, 0 };
-static const unichar_t str_fccd[] = { 0x0644, 0x0647, 0 };
-static const unichar_t str_fcce[] = { 0x0645, 0x062c, 0 };
-static const unichar_t str_fccf[] = { 0x0645, 0x062d, 0 };
-static const unichar_t str_fcd0[] = { 0x0645, 0x062e, 0 };
-static const unichar_t str_fcd1[] = { 0x0645, 0x0645, 0 };
-static const unichar_t str_fcd2[] = { 0x0646, 0x062c, 0 };
-static const unichar_t str_fcd3[] = { 0x0646, 0x062d, 0 };
-static const unichar_t str_fcd4[] = { 0x0646, 0x062e, 0 };
-static const unichar_t str_fcd5[] = { 0x0646, 0x0645, 0 };
-static const unichar_t str_fcd6[] = { 0x0646, 0x0647, 0 };
-static const unichar_t str_fcd7[] = { 0x0647, 0x062c, 0 };
-static const unichar_t str_fcd8[] = { 0x0647, 0x0645, 0 };
-static const unichar_t str_fcd9[] = { 0x0647, 0x0670, 0 };
-static const unichar_t str_fcda[] = { 0x064a, 0x062c, 0 };
-static const unichar_t str_fcdb[] = { 0x064a, 0x062d, 0 };
-static const unichar_t str_fcdc[] = { 0x064a, 0x062e, 0 };
-static const unichar_t str_fcdd[] = { 0x064a, 0x0645, 0 };
-static const unichar_t str_fcde[] = { 0x064a, 0x0647, 0 };
-static const unichar_t str_fcdf[] = { 0x0626, 0x0645, 0 };
-static const unichar_t str_fce0[] = { 0x0626, 0x0647, 0 };
-static const unichar_t str_fce1[] = { 0x0628, 0x0645, 0 };
-static const unichar_t str_fce2[] = { 0x0628, 0x0647, 0 };
-static const unichar_t str_fce3[] = { 0x062a, 0x0645, 0 };
-static const unichar_t str_fce4[] = { 0x062a, 0x0647, 0 };
-static const unichar_t str_fce5[] = { 0x062b, 0x0645, 0 };
-static const unichar_t str_fce6[] = { 0x062b, 0x0647, 0 };
-static const unichar_t str_fce7[] = { 0x0633, 0x0645, 0 };
-static const unichar_t str_fce8[] = { 0x0633, 0x0647, 0 };
-static const unichar_t str_fce9[] = { 0x0634, 0x0645, 0 };
-static const unichar_t str_fcea[] = { 0x0634, 0x0647, 0 };
-static const unichar_t str_fceb[] = { 0x0643, 0x0644, 0 };
-static const unichar_t str_fcec[] = { 0x0643, 0x0645, 0 };
-static const unichar_t str_fced[] = { 0x0644, 0x0645, 0 };
-static const unichar_t str_fcee[] = { 0x0646, 0x0645, 0 };
-static const unichar_t str_fcef[] = { 0x0646, 0x0647, 0 };
-static const unichar_t str_fcf0[] = { 0x064a, 0x0645, 0 };
-static const unichar_t str_fcf1[] = { 0x064a, 0x0647, 0 };
-static const unichar_t str_fcf2[] = { 0x0640, 0x064e, 0x0651, 0 };
-static const unichar_t str_fcf3[] = { 0x0640, 0x064f, 0x0651, 0 };
-static const unichar_t str_fcf4[] = { 0x0640, 0x0650, 0x0651, 0 };
-static const unichar_t str_fcf5[] = { 0x0637, 0x0649, 0 };
-static const unichar_t str_fcf6[] = { 0x0637, 0x064a, 0 };
-static const unichar_t str_fcf7[] = { 0x0639, 0x0649, 0 };
-static const unichar_t str_fcf8[] = { 0x0639, 0x064a, 0 };
-static const unichar_t str_fcf9[] = { 0x063a, 0x0649, 0 };
-static const unichar_t str_fcfa[] = { 0x063a, 0x064a, 0 };
-static const unichar_t str_fcfb[] = { 0x0633, 0x0649, 0 };
-static const unichar_t str_fcfc[] = { 0x0633, 0x064a, 0 };
-static const unichar_t str_fcfd[] = { 0x0634, 0x0649, 0 };
-static const unichar_t str_fcfe[] = { 0x0634, 0x064a, 0 };
-static const unichar_t str_fcff[] = { 0x062d, 0x0649, 0 };
-static const unichar_t str_fd00[] = { 0x062d, 0x064a, 0 };
-static const unichar_t str_fd01[] = { 0x062c, 0x0649, 0 };
-static const unichar_t str_fd02[] = { 0x062c, 0x064a, 0 };
-static const unichar_t str_fd03[] = { 0x062e, 0x0649, 0 };
-static const unichar_t str_fd04[] = { 0x062e, 0x064a, 0 };
-static const unichar_t str_fd05[] = { 0x0635, 0x0649, 0 };
-static const unichar_t str_fd06[] = { 0x0635, 0x064a, 0 };
-static const unichar_t str_fd07[] = { 0x0636, 0x0649, 0 };
-static const unichar_t str_fd08[] = { 0x0636, 0x064a, 0 };
-static const unichar_t str_fd09[] = { 0x0634, 0x062c, 0 };
-static const unichar_t str_fd0a[] = { 0x0634, 0x062d, 0 };
-static const unichar_t str_fd0b[] = { 0x0634, 0x062e, 0 };
-static const unichar_t str_fd0c[] = { 0x0634, 0x0645, 0 };
-static const unichar_t str_fd0d[] = { 0x0634, 0x0631, 0 };
-static const unichar_t str_fd0e[] = { 0x0633, 0x0631, 0 };
-static const unichar_t str_fd0f[] = { 0x0635, 0x0631, 0 };
-static const unichar_t str_fd10[] = { 0x0636, 0x0631, 0 };
-static const unichar_t str_fd11[] = { 0x0637, 0x0649, 0 };
-static const unichar_t str_fd12[] = { 0x0637, 0x064a, 0 };
-static const unichar_t str_fd13[] = { 0x0639, 0x0649, 0 };
-static const unichar_t str_fd14[] = { 0x0639, 0x064a, 0 };
-static const unichar_t str_fd15[] = { 0x063a, 0x0649, 0 };
-static const unichar_t str_fd16[] = { 0x063a, 0x064a, 0 };
-static const unichar_t str_fd17[] = { 0x0633, 0x0649, 0 };
-static const unichar_t str_fd18[] = { 0x0633, 0x064a, 0 };
-static const unichar_t str_fd19[] = { 0x0634, 0x0649, 0 };
-static const unichar_t str_fd1a[] = { 0x0634, 0x064a, 0 };
-static const unichar_t str_fd1b[] = { 0x062d, 0x0649, 0 };
-static const unichar_t str_fd1c[] = { 0x062d, 0x064a, 0 };
-static const unichar_t str_fd1d[] = { 0x062c, 0x0649, 0 };
-static const unichar_t str_fd1e[] = { 0x062c, 0x064a, 0 };
-static const unichar_t str_fd1f[] = { 0x062e, 0x0649, 0 };
-static const unichar_t str_fd20[] = { 0x062e, 0x064a, 0 };
-static const unichar_t str_fd21[] = { 0x0635, 0x0649, 0 };
-static const unichar_t str_fd22[] = { 0x0635, 0x064a, 0 };
-static const unichar_t str_fd23[] = { 0x0636, 0x0649, 0 };
-static const unichar_t str_fd24[] = { 0x0636, 0x064a, 0 };
-static const unichar_t str_fd25[] = { 0x0634, 0x062c, 0 };
-static const unichar_t str_fd26[] = { 0x0634, 0x062d, 0 };
-static const unichar_t str_fd27[] = { 0x0634, 0x062e, 0 };
-static const unichar_t str_fd28[] = { 0x0634, 0x0645, 0 };
-static const unichar_t str_fd29[] = { 0x0634, 0x0631, 0 };
-static const unichar_t str_fd2a[] = { 0x0633, 0x0631, 0 };
-static const unichar_t str_fd2b[] = { 0x0635, 0x0631, 0 };
-static const unichar_t str_fd2c[] = { 0x0636, 0x0631, 0 };
-static const unichar_t str_fd2d[] = { 0x0634, 0x062c, 0 };
-static const unichar_t str_fd2e[] = { 0x0634, 0x062d, 0 };
-static const unichar_t str_fd2f[] = { 0x0634, 0x062e, 0 };
-static const unichar_t str_fd30[] = { 0x0634, 0x0645, 0 };
-static const unichar_t str_fd31[] = { 0x0633, 0x0647, 0 };
-static const unichar_t str_fd32[] = { 0x0634, 0x0647, 0 };
-static const unichar_t str_fd33[] = { 0x0637, 0x0645, 0 };
-static const unichar_t str_fd34[] = { 0x0633, 0x062c, 0 };
-static const unichar_t str_fd35[] = { 0x0633, 0x062d, 0 };
-static const unichar_t str_fd36[] = { 0x0633, 0x062e, 0 };
-static const unichar_t str_fd37[] = { 0x0634, 0x062c, 0 };
-static const unichar_t str_fd38[] = { 0x0634, 0x062d, 0 };
-static const unichar_t str_fd39[] = { 0x0634, 0x062e, 0 };
-static const unichar_t str_fd3a[] = { 0x0637, 0x0645, 0 };
-static const unichar_t str_fd3b[] = { 0x0638, 0x0645, 0 };
-static const unichar_t str_fd3c[] = { 0x0627, 0x064b, 0 };
-static const unichar_t str_fd3d[] = { 0x0627, 0x064b, 0 };
-static const unichar_t str_fd50[] = { 0x062a, 0x062c, 0x0645, 0 };
-static const unichar_t str_fd51[] = { 0x062a, 0x062d, 0x062c, 0 };
-static const unichar_t str_fd52[] = { 0x062a, 0x062d, 0x062c, 0 };
-static const unichar_t str_fd53[] = { 0x062a, 0x062d, 0x0645, 0 };
-static const unichar_t str_fd54[] = { 0x062a, 0x062e, 0x0645, 0 };
-static const unichar_t str_fd55[] = { 0x062a, 0x0645, 0x062c, 0 };
-static const unichar_t str_fd56[] = { 0x062a, 0x0645, 0x062d, 0 };
-static const unichar_t str_fd57[] = { 0x062a, 0x0645, 0x062e, 0 };
-static const unichar_t str_fd58[] = { 0x062c, 0x0645, 0x062d, 0 };
-static const unichar_t str_fd59[] = { 0x062c, 0x0645, 0x062d, 0 };
-static const unichar_t str_fd5a[] = { 0x062d, 0x0645, 0x064a, 0 };
-static const unichar_t str_fd5b[] = { 0x062d, 0x0645, 0x0649, 0 };
-static const unichar_t str_fd5c[] = { 0x0633, 0x062d, 0x062c, 0 };
-static const unichar_t str_fd5d[] = { 0x0633, 0x062c, 0x062d, 0 };
-static const unichar_t str_fd5e[] = { 0x0633, 0x062c, 0x0649, 0 };
-static const unichar_t str_fd5f[] = { 0x0633, 0x0645, 0x062d, 0 };
-static const unichar_t str_fd60[] = { 0x0633, 0x0645, 0x062d, 0 };
-static const unichar_t str_fd61[] = { 0x0633, 0x0645, 0x062c, 0 };
-static const unichar_t str_fd62[] = { 0x0633, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd63[] = { 0x0633, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd64[] = { 0x0635, 0x062d, 0x062d, 0 };
-static const unichar_t str_fd65[] = { 0x0635, 0x062d, 0x062d, 0 };
-static const unichar_t str_fd66[] = { 0x0635, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd67[] = { 0x0634, 0x062d, 0x0645, 0 };
-static const unichar_t str_fd68[] = { 0x0634, 0x062d, 0x0645, 0 };
-static const unichar_t str_fd69[] = { 0x0634, 0x062c, 0x064a, 0 };
-static const unichar_t str_fd6a[] = { 0x0634, 0x0645, 0x062e, 0 };
-static const unichar_t str_fd6b[] = { 0x0634, 0x0645, 0x062e, 0 };
-static const unichar_t str_fd6c[] = { 0x0634, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd6d[] = { 0x0634, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd6e[] = { 0x0636, 0x062d, 0x0649, 0 };
-static const unichar_t str_fd6f[] = { 0x0636, 0x062e, 0x0645, 0 };
-static const unichar_t str_fd70[] = { 0x0636, 0x062e, 0x0645, 0 };
-static const unichar_t str_fd71[] = { 0x0637, 0x0645, 0x062d, 0 };
-static const unichar_t str_fd72[] = { 0x0637, 0x0645, 0x062d, 0 };
-static const unichar_t str_fd73[] = { 0x0637, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd74[] = { 0x0637, 0x0645, 0x064a, 0 };
-static const unichar_t str_fd75[] = { 0x0639, 0x062c, 0x0645, 0 };
-static const unichar_t str_fd76[] = { 0x0639, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd77[] = { 0x0639, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd78[] = { 0x0639, 0x0645, 0x0649, 0 };
-static const unichar_t str_fd79[] = { 0x063a, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd7a[] = { 0x063a, 0x0645, 0x064a, 0 };
-static const unichar_t str_fd7b[] = { 0x063a, 0x0645, 0x0649, 0 };
-static const unichar_t str_fd7c[] = { 0x0641, 0x062e, 0x0645, 0 };
-static const unichar_t str_fd7d[] = { 0x0641, 0x062e, 0x0645, 0 };
-static const unichar_t str_fd7e[] = { 0x0642, 0x0645, 0x062d, 0 };
-static const unichar_t str_fd7f[] = { 0x0642, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd80[] = { 0x0644, 0x062d, 0x0645, 0 };
-static const unichar_t str_fd81[] = { 0x0644, 0x062d, 0x064a, 0 };
-static const unichar_t str_fd82[] = { 0x0644, 0x062d, 0x0649, 0 };
-static const unichar_t str_fd83[] = { 0x0644, 0x062c, 0x062c, 0 };
-static const unichar_t str_fd84[] = { 0x0644, 0x062c, 0x062c, 0 };
-static const unichar_t str_fd85[] = { 0x0644, 0x062e, 0x0645, 0 };
-static const unichar_t str_fd86[] = { 0x0644, 0x062e, 0x0645, 0 };
-static const unichar_t str_fd87[] = { 0x0644, 0x0645, 0x062d, 0 };
-static const unichar_t str_fd88[] = { 0x0644, 0x0645, 0x062d, 0 };
-static const unichar_t str_fd89[] = { 0x0645, 0x062d, 0x062c, 0 };
-static const unichar_t str_fd8a[] = { 0x0645, 0x062d, 0x0645, 0 };
-static const unichar_t str_fd8b[] = { 0x0645, 0x062d, 0x064a, 0 };
-static const unichar_t str_fd8c[] = { 0x0645, 0x062c, 0x062d, 0 };
-static const unichar_t str_fd8d[] = { 0x0645, 0x062c, 0x0645, 0 };
-static const unichar_t str_fd8e[] = { 0x0645, 0x062e, 0x062c, 0 };
-static const unichar_t str_fd8f[] = { 0x0645, 0x062e, 0x0645, 0 };
-static const unichar_t str_fd92[] = { 0x0645, 0x062c, 0x062e, 0 };
-static const unichar_t str_fd93[] = { 0x0647, 0x0645, 0x062c, 0 };
-static const unichar_t str_fd94[] = { 0x0647, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd95[] = { 0x0646, 0x062d, 0x0645, 0 };
-static const unichar_t str_fd96[] = { 0x0646, 0x062d, 0x0649, 0 };
-static const unichar_t str_fd97[] = { 0x0646, 0x062c, 0x0645, 0 };
-static const unichar_t str_fd98[] = { 0x0646, 0x062c, 0x0645, 0 };
-static const unichar_t str_fd99[] = { 0x0646, 0x062c, 0x0649, 0 };
-static const unichar_t str_fd9a[] = { 0x0646, 0x0645, 0x064a, 0 };
-static const unichar_t str_fd9b[] = { 0x0646, 0x0645, 0x0649, 0 };
-static const unichar_t str_fd9c[] = { 0x064a, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd9d[] = { 0x064a, 0x0645, 0x0645, 0 };
-static const unichar_t str_fd9e[] = { 0x0628, 0x062e, 0x064a, 0 };
-static const unichar_t str_fd9f[] = { 0x062a, 0x062c, 0x064a, 0 };
-static const unichar_t str_fda0[] = { 0x062a, 0x062c, 0x0649, 0 };
-static const unichar_t str_fda1[] = { 0x062a, 0x062e, 0x064a, 0 };
-static const unichar_t str_fda2[] = { 0x062a, 0x062e, 0x0649, 0 };
-static const unichar_t str_fda3[] = { 0x062a, 0x0645, 0x064a, 0 };
-static const unichar_t str_fda4[] = { 0x062a, 0x0645, 0x0649, 0 };
-static const unichar_t str_fda5[] = { 0x062c, 0x0645, 0x064a, 0 };
-static const unichar_t str_fda6[] = { 0x062c, 0x062d, 0x0649, 0 };
-static const unichar_t str_fda7[] = { 0x062c, 0x0645, 0x0649, 0 };
-static const unichar_t str_fda8[] = { 0x0633, 0x062e, 0x0649, 0 };
-static const unichar_t str_fda9[] = { 0x0635, 0x062d, 0x064a, 0 };
-static const unichar_t str_fdaa[] = { 0x0634, 0x062d, 0x064a, 0 };
-static const unichar_t str_fdab[] = { 0x0636, 0x062d, 0x064a, 0 };
-static const unichar_t str_fdac[] = { 0x0644, 0x062c, 0x064a, 0 };
-static const unichar_t str_fdad[] = { 0x0644, 0x0645, 0x064a, 0 };
-static const unichar_t str_fdae[] = { 0x064a, 0x062d, 0x064a, 0 };
-static const unichar_t str_fdaf[] = { 0x064a, 0x062c, 0x064a, 0 };
-static const unichar_t str_fdb0[] = { 0x064a, 0x0645, 0x064a, 0 };
-static const unichar_t str_fdb1[] = { 0x0645, 0x0645, 0x064a, 0 };
-static const unichar_t str_fdb2[] = { 0x0642, 0x0645, 0x064a, 0 };
-static const unichar_t str_fdb3[] = { 0x0646, 0x062d, 0x064a, 0 };
-static const unichar_t str_fdb4[] = { 0x0642, 0x0645, 0x062d, 0 };
-static const unichar_t str_fdb5[] = { 0x0644, 0x062d, 0x0645, 0 };
-static const unichar_t str_fdb6[] = { 0x0639, 0x0645, 0x064a, 0 };
-static const unichar_t str_fdb7[] = { 0x0643, 0x0645, 0x064a, 0 };
-static const unichar_t str_fdb8[] = { 0x0646, 0x062c, 0x062d, 0 };
-static const unichar_t str_fdb9[] = { 0x0645, 0x062e, 0x064a, 0 };
-static const unichar_t str_fdba[] = { 0x0644, 0x062c, 0x0645, 0 };
-static const unichar_t str_fdbb[] = { 0x0643, 0x0645, 0x0645, 0 };
-static const unichar_t str_fdbc[] = { 0x0644, 0x062c, 0x0645, 0 };
-static const unichar_t str_fdbd[] = { 0x0646, 0x062c, 0x062d, 0 };
-static const unichar_t str_fdbe[] = { 0x062c, 0x062d, 0x064a, 0 };
-static const unichar_t str_fdbf[] = { 0x062d, 0x062c, 0x064a, 0 };
-static const unichar_t str_fdc0[] = { 0x0645, 0x062c, 0x064a, 0 };
-static const unichar_t str_fdc1[] = { 0x0641, 0x0645, 0x064a, 0 };
-static const unichar_t str_fdc2[] = { 0x0628, 0x062d, 0x064a, 0 };
-static const unichar_t str_fdc3[] = { 0x0643, 0x0645, 0x0645, 0 };
-static const unichar_t str_fdc4[] = { 0x0639, 0x062c, 0x0645, 0 };
-static const unichar_t str_fdc5[] = { 0x0635, 0x0645, 0x0645, 0 };
-static const unichar_t str_fdc6[] = { 0x0633, 0x062e, 0x064a, 0 };
-static const unichar_t str_fdc7[] = { 0x0646, 0x062c, 0x064a, 0 };
-static const unichar_t str_fdf0[] = { 0x0635, 0x0644, 0x06d2, 0 };
-static const unichar_t str_fdf1[] = { 0x0642, 0x0644, 0x06d2, 0 };
-static const unichar_t str_fdf2[] = { 0x0627, 0x0644, 0x0644, 0x0647, 0 };
-static const unichar_t str_fdf3[] = { 0x0627, 0x0643, 0x0628, 0x0631, 0 };
-static const unichar_t str_fdf4[] = { 0x0645, 0x062d, 0x0645, 0x062f, 0 };
-static const unichar_t str_fdf5[] = { 0x0635, 0x0644, 0x0639, 0x0645, 0 };
-static const unichar_t str_fdf6[] = { 0x0631, 0x0633, 0x0648, 0x0644, 0 };
-static const unichar_t str_fdf7[] = { 0x0639, 0x0644, 0x064a, 0x0647, 0 };
-static const unichar_t str_fdf8[] = { 0x0648, 0x0633, 0x0644, 0x0645, 0 };
-static const unichar_t str_fdf9[] = { 0x0635, 0x0644, 0x0649, 0 };
-static const unichar_t str_fdfa[] = { 0x0635, 0x0644, 0x0649, 0x0020, 0x0627, 0x0644, 0x0644, 0x0647, 0x0020, 0x0639, 0x0644, 0x064a, 0x0647, 0x0020, 0x0648, 0x0633, 0x0644, 0x0645, 0 };
-static const unichar_t str_fdfb[] = { 0x062c, 0x0644, 0x0020, 0x062c, 0x0644, 0x0627, 0x0644, 0x0647, 0 };
-static const unichar_t str_fdfc[] = { 0x0631, 0x06cc, 0x0627, 0x0644, 0 };
-static const unichar_t str_fe10[] = { 0x002c, 0 };
-static const unichar_t str_fe11[] = { 0x3001, 0 };
-static const unichar_t str_fe12[] = { 0x3002, 0 };
-static const unichar_t str_fe13[] = { 0x003a, 0 };
-static const unichar_t str_fe14[] = { 0x003b, 0 };
-static const unichar_t str_fe15[] = { 0x0021, 0 };
-static const unichar_t str_fe16[] = { 0x003f, 0 };
-static const unichar_t str_fe17[] = { 0x3016, 0 };
-static const unichar_t str_fe18[] = { 0x3017, 0 };
-static const unichar_t str_fe19[] = { 0x2026, 0 };
-static const unichar_t str_fe30[] = { 0x2025, 0 };
-static const unichar_t str_fe31[] = { 0x2014, 0 };
-static const unichar_t str_fe32[] = { 0x2013, 0 };
-static const unichar_t str_fe33[] = { 0x005f, 0 };
-static const unichar_t str_fe34[] = { 0x005f, 0 };
-static const unichar_t str_fe35[] = { 0x0028, 0 };
-static const unichar_t str_fe36[] = { 0x0029, 0 };
-static const unichar_t str_fe37[] = { 0x007b, 0 };
-static const unichar_t str_fe38[] = { 0x007d, 0 };
-static const unichar_t str_fe39[] = { 0x3014, 0 };
-static const unichar_t str_fe3a[] = { 0x3015, 0 };
-static const unichar_t str_fe3b[] = { 0x3010, 0 };
-static const unichar_t str_fe3c[] = { 0x3011, 0 };
-static const unichar_t str_fe3d[] = { 0x300a, 0 };
-static const unichar_t str_fe3e[] = { 0x300b, 0 };
-static const unichar_t str_fe3f[] = { 0x3008, 0 };
-static const unichar_t str_fe40[] = { 0x3009, 0 };
-static const unichar_t str_fe41[] = { 0x300c, 0 };
-static const unichar_t str_fe42[] = { 0x300d, 0 };
-static const unichar_t str_fe43[] = { 0x300e, 0 };
-static const unichar_t str_fe44[] = { 0x300f, 0 };
-static const unichar_t str_fe47[] = { 0x005b, 0 };
-static const unichar_t str_fe48[] = { 0x005d, 0 };
-static const unichar_t str_fe49[] = { 0x203e, 0 };
-static const unichar_t str_fe4a[] = { 0x203e, 0 };
-static const unichar_t str_fe4b[] = { 0x203e, 0 };
-static const unichar_t str_fe4c[] = { 0x203e, 0 };
-static const unichar_t str_fe4d[] = { 0x005f, 0 };
-static const unichar_t str_fe4e[] = { 0x005f, 0 };
-static const unichar_t str_fe4f[] = { 0x005f, 0 };
-static const unichar_t str_fe50[] = { 0x002c, 0 };
-static const unichar_t str_fe51[] = { 0x3001, 0 };
-static const unichar_t str_fe52[] = { 0x002e, 0 };
-static const unichar_t str_fe54[] = { 0x003b, 0 };
-static const unichar_t str_fe55[] = { 0x003a, 0 };
-static const unichar_t str_fe56[] = { 0x003f, 0 };
-static const unichar_t str_fe57[] = { 0x0021, 0 };
-static const unichar_t str_fe58[] = { 0x2014, 0 };
-static const unichar_t str_fe59[] = { 0x0028, 0 };
-static const unichar_t str_fe5a[] = { 0x0029, 0 };
-static const unichar_t str_fe5b[] = { 0x007b, 0 };
-static const unichar_t str_fe5c[] = { 0x007d, 0 };
-static const unichar_t str_fe5d[] = { 0x3014, 0 };
-static const unichar_t str_fe5e[] = { 0x3015, 0 };
-static const unichar_t str_fe5f[] = { 0x0023, 0 };
-static const unichar_t str_fe60[] = { 0x0026, 0 };
-static const unichar_t str_fe61[] = { 0x002a, 0 };
-static const unichar_t str_fe62[] = { 0x002b, 0 };
-static const unichar_t str_fe63[] = { 0x002d, 0 };
-static const unichar_t str_fe64[] = { 0x003c, 0 };
-static const unichar_t str_fe65[] = { 0x003e, 0 };
-static const unichar_t str_fe66[] = { 0x003d, 0 };
-static const unichar_t str_fe68[] = { 0x005c, 0 };
-static const unichar_t str_fe69[] = { 0x0024, 0 };
-static const unichar_t str_fe6a[] = { 0x0025, 0 };
-static const unichar_t str_fe6b[] = { 0x0040, 0 };
-static const unichar_t str_fe70[] = { 0x0020, 0x064b, 0 };
-static const unichar_t str_fe71[] = { 0x0640, 0x064b, 0 };
-static const unichar_t str_fe72[] = { 0x0020, 0x064c, 0 };
-static const unichar_t str_fe74[] = { 0x0020, 0x064d, 0 };
-static const unichar_t str_fe76[] = { 0x0020, 0x064e, 0 };
-static const unichar_t str_fe77[] = { 0x0640, 0x064e, 0 };
-static const unichar_t str_fe78[] = { 0x0020, 0x064f, 0 };
-static const unichar_t str_fe79[] = { 0x0640, 0x064f, 0 };
-static const unichar_t str_fe7a[] = { 0x0020, 0x0650, 0 };
-static const unichar_t str_fe7b[] = { 0x0640, 0x0650, 0 };
-static const unichar_t str_fe7c[] = { 0x0020, 0x0651, 0 };
-static const unichar_t str_fe7d[] = { 0x0640, 0x0651, 0 };
-static const unichar_t str_fe7e[] = { 0x0020, 0x0652, 0 };
-static const unichar_t str_fe7f[] = { 0x0640, 0x0652, 0 };
-static const unichar_t str_fe80[] = { 0x0621, 0 };
-static const unichar_t str_fe81[] = { 0x0622, 0 };
-static const unichar_t str_fe82[] = { 0x0622, 0 };
-static const unichar_t str_fe83[] = { 0x0623, 0 };
-static const unichar_t str_fe84[] = { 0x0623, 0 };
-static const unichar_t str_fe85[] = { 0x0624, 0 };
-static const unichar_t str_fe86[] = { 0x0624, 0 };
-static const unichar_t str_fe87[] = { 0x0625, 0 };
-static const unichar_t str_fe88[] = { 0x0625, 0 };
-static const unichar_t str_fe89[] = { 0x0626, 0 };
-static const unichar_t str_fe8a[] = { 0x0626, 0 };
-static const unichar_t str_fe8b[] = { 0x0626, 0 };
-static const unichar_t str_fe8c[] = { 0x0626, 0 };
-static const unichar_t str_fe8d[] = { 0x0627, 0 };
-static const unichar_t str_fe8e[] = { 0x0627, 0 };
-static const unichar_t str_fe8f[] = { 0x0628, 0 };
-static const unichar_t str_fe90[] = { 0x0628, 0 };
-static const unichar_t str_fe91[] = { 0x0628, 0 };
-static const unichar_t str_fe92[] = { 0x0628, 0 };
-static const unichar_t str_fe93[] = { 0x0629, 0 };
-static const unichar_t str_fe94[] = { 0x0629, 0 };
-static const unichar_t str_fe95[] = { 0x062a, 0 };
-static const unichar_t str_fe96[] = { 0x062a, 0 };
-static const unichar_t str_fe97[] = { 0x062a, 0 };
-static const unichar_t str_fe98[] = { 0x062a, 0 };
-static const unichar_t str_fe99[] = { 0x062b, 0 };
-static const unichar_t str_fe9a[] = { 0x062b, 0 };
-static const unichar_t str_fe9b[] = { 0x062b, 0 };
-static const unichar_t str_fe9c[] = { 0x062b, 0 };
-static const unichar_t str_fe9d[] = { 0x062c, 0 };
-static const unichar_t str_fe9e[] = { 0x062c, 0 };
-static const unichar_t str_fe9f[] = { 0x062c, 0 };
-static const unichar_t str_fea0[] = { 0x062c, 0 };
-static const unichar_t str_fea1[] = { 0x062d, 0 };
-static const unichar_t str_fea2[] = { 0x062d, 0 };
-static const unichar_t str_fea3[] = { 0x062d, 0 };
-static const unichar_t str_fea4[] = { 0x062d, 0 };
-static const unichar_t str_fea5[] = { 0x062e, 0 };
-static const unichar_t str_fea6[] = { 0x062e, 0 };
-static const unichar_t str_fea7[] = { 0x062e, 0 };
-static const unichar_t str_fea8[] = { 0x062e, 0 };
-static const unichar_t str_fea9[] = { 0x062f, 0 };
-static const unichar_t str_feaa[] = { 0x062f, 0 };
-static const unichar_t str_feab[] = { 0x0630, 0 };
-static const unichar_t str_feac[] = { 0x0630, 0 };
-static const unichar_t str_fead[] = { 0x0631, 0 };
-static const unichar_t str_feae[] = { 0x0631, 0 };
-static const unichar_t str_feaf[] = { 0x0632, 0 };
-static const unichar_t str_feb0[] = { 0x0632, 0 };
-static const unichar_t str_feb1[] = { 0x0633, 0 };
-static const unichar_t str_feb2[] = { 0x0633, 0 };
-static const unichar_t str_feb3[] = { 0x0633, 0 };
-static const unichar_t str_feb4[] = { 0x0633, 0 };
-static const unichar_t str_feb5[] = { 0x0634, 0 };
-static const unichar_t str_feb6[] = { 0x0634, 0 };
-static const unichar_t str_feb7[] = { 0x0634, 0 };
-static const unichar_t str_feb8[] = { 0x0634, 0 };
-static const unichar_t str_feb9[] = { 0x0635, 0 };
-static const unichar_t str_feba[] = { 0x0635, 0 };
-static const unichar_t str_febb[] = { 0x0635, 0 };
-static const unichar_t str_febc[] = { 0x0635, 0 };
-static const unichar_t str_febd[] = { 0x0636, 0 };
-static const unichar_t str_febe[] = { 0x0636, 0 };
-static const unichar_t str_febf[] = { 0x0636, 0 };
-static const unichar_t str_fec0[] = { 0x0636, 0 };
-static const unichar_t str_fec1[] = { 0x0637, 0 };
-static const unichar_t str_fec2[] = { 0x0637, 0 };
-static const unichar_t str_fec3[] = { 0x0637, 0 };
-static const unichar_t str_fec4[] = { 0x0637, 0 };
-static const unichar_t str_fec5[] = { 0x0638, 0 };
-static const unichar_t str_fec6[] = { 0x0638, 0 };
-static const unichar_t str_fec7[] = { 0x0638, 0 };
-static const unichar_t str_fec8[] = { 0x0638, 0 };
-static const unichar_t str_fec9[] = { 0x0639, 0 };
-static const unichar_t str_feca[] = { 0x0639, 0 };
-static const unichar_t str_fecb[] = { 0x0639, 0 };
-static const unichar_t str_fecc[] = { 0x0639, 0 };
-static const unichar_t str_fecd[] = { 0x063a, 0 };
-static const unichar_t str_fece[] = { 0x063a, 0 };
-static const unichar_t str_fecf[] = { 0x063a, 0 };
-static const unichar_t str_fed0[] = { 0x063a, 0 };
-static const unichar_t str_fed1[] = { 0x0641, 0 };
-static const unichar_t str_fed2[] = { 0x0641, 0 };
-static const unichar_t str_fed3[] = { 0x0641, 0 };
-static const unichar_t str_fed4[] = { 0x0641, 0 };
-static const unichar_t str_fed5[] = { 0x0642, 0 };
-static const unichar_t str_fed6[] = { 0x0642, 0 };
-static const unichar_t str_fed7[] = { 0x0642, 0 };
-static const unichar_t str_fed8[] = { 0x0642, 0 };
-static const unichar_t str_fed9[] = { 0x0643, 0 };
-static const unichar_t str_feda[] = { 0x0643, 0 };
-static const unichar_t str_fedb[] = { 0x0643, 0 };
-static const unichar_t str_fedc[] = { 0x0643, 0 };
-static const unichar_t str_fedd[] = { 0x0644, 0 };
-static const unichar_t str_fede[] = { 0x0644, 0 };
-static const unichar_t str_fedf[] = { 0x0644, 0 };
-static const unichar_t str_fee0[] = { 0x0644, 0 };
-static const unichar_t str_fee1[] = { 0x0645, 0 };
-static const unichar_t str_fee2[] = { 0x0645, 0 };
-static const unichar_t str_fee3[] = { 0x0645, 0 };
-static const unichar_t str_fee4[] = { 0x0645, 0 };
-static const unichar_t str_fee5[] = { 0x0646, 0 };
-static const unichar_t str_fee6[] = { 0x0646, 0 };
-static const unichar_t str_fee7[] = { 0x0646, 0 };
-static const unichar_t str_fee8[] = { 0x0646, 0 };
-static const unichar_t str_fee9[] = { 0x0647, 0 };
-static const unichar_t str_feea[] = { 0x0647, 0 };
-static const unichar_t str_feeb[] = { 0x0647, 0 };
-static const unichar_t str_feec[] = { 0x0647, 0 };
-static const unichar_t str_feed[] = { 0x0648, 0 };
-static const unichar_t str_feee[] = { 0x0648, 0 };
-static const unichar_t str_feef[] = { 0x0649, 0 };
-static const unichar_t str_fef0[] = { 0x0649, 0 };
-static const unichar_t str_fef1[] = { 0x064a, 0 };
-static const unichar_t str_fef2[] = { 0x064a, 0 };
-static const unichar_t str_fef3[] = { 0x064a, 0 };
-static const unichar_t str_fef4[] = { 0x064a, 0 };
-static const unichar_t str_fef5[] = { 0x0644, 0x0622, 0 };
-static const unichar_t str_fef6[] = { 0x0644, 0x0622, 0 };
-static const unichar_t str_fef7[] = { 0x0644, 0x0623, 0 };
-static const unichar_t str_fef8[] = { 0x0644, 0x0623, 0 };
-static const unichar_t str_fef9[] = { 0x0644, 0x0625, 0 };
-static const unichar_t str_fefa[] = { 0x0644, 0x0625, 0 };
-static const unichar_t str_fefb[] = { 0x0644, 0x0627, 0 };
-static const unichar_t str_fefc[] = { 0x0644, 0x0627, 0 };
-static const unichar_t str_ff01[] = { 0x0021, 0 };
-static const unichar_t str_ff02[] = { 0x0022, 0 };
-static const unichar_t str_ff03[] = { 0x0023, 0 };
-static const unichar_t str_ff04[] = { 0x0024, 0 };
-static const unichar_t str_ff05[] = { 0x0025, 0 };
-static const unichar_t str_ff06[] = { 0x0026, 0 };
-static const unichar_t str_ff07[] = { 0x0027, 0 };
-static const unichar_t str_ff08[] = { 0x0028, 0 };
-static const unichar_t str_ff09[] = { 0x0029, 0 };
-static const unichar_t str_ff0a[] = { 0x002a, 0 };
-static const unichar_t str_ff0b[] = { 0x002b, 0 };
-static const unichar_t str_ff0c[] = { 0x002c, 0 };
-static const unichar_t str_ff0d[] = { 0x002d, 0 };
-static const unichar_t str_ff0e[] = { 0x002e, 0 };
-static const unichar_t str_ff0f[] = { 0x002f, 0 };
-static const unichar_t str_ff10[] = { 0x0030, 0 };
-static const unichar_t str_ff11[] = { 0x0031, 0 };
-static const unichar_t str_ff12[] = { 0x0032, 0 };
-static const unichar_t str_ff13[] = { 0x0033, 0 };
-static const unichar_t str_ff14[] = { 0x0034, 0 };
-static const unichar_t str_ff15[] = { 0x0035, 0 };
-static const unichar_t str_ff16[] = { 0x0036, 0 };
-static const unichar_t str_ff17[] = { 0x0037, 0 };
-static const unichar_t str_ff18[] = { 0x0038, 0 };
-static const unichar_t str_ff19[] = { 0x0039, 0 };
-static const unichar_t str_ff1a[] = { 0x003a, 0 };
-static const unichar_t str_ff1b[] = { 0x003b, 0 };
-static const unichar_t str_ff1c[] = { 0x003c, 0 };
-static const unichar_t str_ff1d[] = { 0x003d, 0 };
-static const unichar_t str_ff1e[] = { 0x003e, 0 };
-static const unichar_t str_ff1f[] = { 0x003f, 0 };
-static const unichar_t str_ff20[] = { 0x0040, 0 };
-static const unichar_t str_ff21[] = { 0x0041, 0 };
-static const unichar_t str_ff22[] = { 0x0042, 0 };
-static const unichar_t str_ff23[] = { 0x0043, 0 };
-static const unichar_t str_ff24[] = { 0x0044, 0 };
-static const unichar_t str_ff25[] = { 0x0045, 0 };
-static const unichar_t str_ff26[] = { 0x0046, 0 };
-static const unichar_t str_ff27[] = { 0x0047, 0 };
-static const unichar_t str_ff28[] = { 0x0048, 0 };
-static const unichar_t str_ff29[] = { 0x0049, 0 };
-static const unichar_t str_ff2a[] = { 0x004a, 0 };
-static const unichar_t str_ff2b[] = { 0x004b, 0 };
-static const unichar_t str_ff2c[] = { 0x004c, 0 };
-static const unichar_t str_ff2d[] = { 0x004d, 0 };
-static const unichar_t str_ff2e[] = { 0x004e, 0 };
-static const unichar_t str_ff2f[] = { 0x004f, 0 };
-static const unichar_t str_ff30[] = { 0x0050, 0 };
-static const unichar_t str_ff31[] = { 0x0051, 0 };
-static const unichar_t str_ff32[] = { 0x0052, 0 };
-static const unichar_t str_ff33[] = { 0x0053, 0 };
-static const unichar_t str_ff34[] = { 0x0054, 0 };
-static const unichar_t str_ff35[] = { 0x0055, 0 };
-static const unichar_t str_ff36[] = { 0x0056, 0 };
-static const unichar_t str_ff37[] = { 0x0057, 0 };
-static const unichar_t str_ff38[] = { 0x0058, 0 };
-static const unichar_t str_ff39[] = { 0x0059, 0 };
-static const unichar_t str_ff3a[] = { 0x005a, 0 };
-static const unichar_t str_ff3b[] = { 0x005b, 0 };
-static const unichar_t str_ff3c[] = { 0x005c, 0 };
-static const unichar_t str_ff3d[] = { 0x005d, 0 };
-static const unichar_t str_ff3e[] = { 0x005e, 0 };
-static const unichar_t str_ff3f[] = { 0x005f, 0 };
-static const unichar_t str_ff40[] = { 0x0060, 0 };
-static const unichar_t str_ff41[] = { 0x0061, 0 };
-static const unichar_t str_ff42[] = { 0x0062, 0 };
-static const unichar_t str_ff43[] = { 0x0063, 0 };
-static const unichar_t str_ff44[] = { 0x0064, 0 };
-static const unichar_t str_ff45[] = { 0x0065, 0 };
-static const unichar_t str_ff46[] = { 0x0066, 0 };
-static const unichar_t str_ff47[] = { 0x0067, 0 };
-static const unichar_t str_ff48[] = { 0x0068, 0 };
-static const unichar_t str_ff49[] = { 0x0069, 0 };
-static const unichar_t str_ff4a[] = { 0x006a, 0 };
-static const unichar_t str_ff4b[] = { 0x006b, 0 };
-static const unichar_t str_ff4c[] = { 0x006c, 0 };
-static const unichar_t str_ff4d[] = { 0x006d, 0 };
-static const unichar_t str_ff4e[] = { 0x006e, 0 };
-static const unichar_t str_ff4f[] = { 0x006f, 0 };
-static const unichar_t str_ff50[] = { 0x0070, 0 };
-static const unichar_t str_ff51[] = { 0x0071, 0 };
-static const unichar_t str_ff52[] = { 0x0072, 0 };
-static const unichar_t str_ff53[] = { 0x0073, 0 };
-static const unichar_t str_ff54[] = { 0x0074, 0 };
-static const unichar_t str_ff55[] = { 0x0075, 0 };
-static const unichar_t str_ff56[] = { 0x0076, 0 };
-static const unichar_t str_ff57[] = { 0x0077, 0 };
-static const unichar_t str_ff58[] = { 0x0078, 0 };
-static const unichar_t str_ff59[] = { 0x0079, 0 };
-static const unichar_t str_ff5a[] = { 0x007a, 0 };
-static const unichar_t str_ff5b[] = { 0x007b, 0 };
-static const unichar_t str_ff5c[] = { 0x007c, 0 };
-static const unichar_t str_ff5d[] = { 0x007d, 0 };
-static const unichar_t str_ff5e[] = { 0x007e, 0 };
-static const unichar_t str_ff5f[] = { 0x2985, 0 };
-static const unichar_t str_ff60[] = { 0x2986, 0 };
-static const unichar_t str_ff61[] = { 0x3002, 0 };
-static const unichar_t str_ff62[] = { 0x300c, 0 };
-static const unichar_t str_ff63[] = { 0x300d, 0 };
-static const unichar_t str_ff64[] = { 0x3001, 0 };
-static const unichar_t str_ff65[] = { 0x30fb, 0 };
-static const unichar_t str_ff66[] = { 0x30f2, 0 };
-static const unichar_t str_ff67[] = { 0x30a1, 0 };
-static const unichar_t str_ff68[] = { 0x30a3, 0 };
-static const unichar_t str_ff69[] = { 0x30a5, 0 };
-static const unichar_t str_ff6a[] = { 0x30a7, 0 };
-static const unichar_t str_ff6b[] = { 0x30a9, 0 };
-static const unichar_t str_ff6c[] = { 0x30e3, 0 };
-static const unichar_t str_ff6d[] = { 0x30e5, 0 };
-static const unichar_t str_ff6e[] = { 0x30e7, 0 };
-static const unichar_t str_ff6f[] = { 0x30c3, 0 };
-static const unichar_t str_ff70[] = { 0x30fc, 0 };
-static const unichar_t str_ff71[] = { 0x30a2, 0 };
-static const unichar_t str_ff72[] = { 0x30a4, 0 };
-static const unichar_t str_ff73[] = { 0x30a6, 0 };
-static const unichar_t str_ff74[] = { 0x30a8, 0 };
-static const unichar_t str_ff75[] = { 0x30aa, 0 };
-static const unichar_t str_ff76[] = { 0x30ab, 0 };
-static const unichar_t str_ff77[] = { 0x30ad, 0 };
-static const unichar_t str_ff78[] = { 0x30af, 0 };
-static const unichar_t str_ff79[] = { 0x30b1, 0 };
-static const unichar_t str_ff7a[] = { 0x30b3, 0 };
-static const unichar_t str_ff7b[] = { 0x30b5, 0 };
-static const unichar_t str_ff7c[] = { 0x30b7, 0 };
-static const unichar_t str_ff7d[] = { 0x30b9, 0 };
-static const unichar_t str_ff7e[] = { 0x30bb, 0 };
-static const unichar_t str_ff7f[] = { 0x30bd, 0 };
-static const unichar_t str_ff80[] = { 0x30bf, 0 };
-static const unichar_t str_ff81[] = { 0x30c1, 0 };
-static const unichar_t str_ff82[] = { 0x30c4, 0 };
-static const unichar_t str_ff83[] = { 0x30c6, 0 };
-static const unichar_t str_ff84[] = { 0x30c8, 0 };
-static const unichar_t str_ff85[] = { 0x30ca, 0 };
-static const unichar_t str_ff86[] = { 0x30cb, 0 };
-static const unichar_t str_ff87[] = { 0x30cc, 0 };
-static const unichar_t str_ff88[] = { 0x30cd, 0 };
-static const unichar_t str_ff89[] = { 0x30ce, 0 };
-static const unichar_t str_ff8a[] = { 0x30cf, 0 };
-static const unichar_t str_ff8b[] = { 0x30d2, 0 };
-static const unichar_t str_ff8c[] = { 0x30d5, 0 };
-static const unichar_t str_ff8d[] = { 0x30d8, 0 };
-static const unichar_t str_ff8e[] = { 0x30db, 0 };
-static const unichar_t str_ff8f[] = { 0x30de, 0 };
-static const unichar_t str_ff90[] = { 0x30df, 0 };
-static const unichar_t str_ff91[] = { 0x30e0, 0 };
-static const unichar_t str_ff92[] = { 0x30e1, 0 };
-static const unichar_t str_ff93[] = { 0x30e2, 0 };
-static const unichar_t str_ff94[] = { 0x30e4, 0 };
-static const unichar_t str_ff95[] = { 0x30e6, 0 };
-static const unichar_t str_ff96[] = { 0x30e8, 0 };
-static const unichar_t str_ff97[] = { 0x30e9, 0 };
-static const unichar_t str_ff98[] = { 0x30ea, 0 };
-static const unichar_t str_ff99[] = { 0x30eb, 0 };
-static const unichar_t str_ff9a[] = { 0x30ec, 0 };
-static const unichar_t str_ff9b[] = { 0x30ed, 0 };
-static const unichar_t str_ff9c[] = { 0x30ef, 0 };
-static const unichar_t str_ff9d[] = { 0x30f3, 0 };
-static const unichar_t str_ff9e[] = { 0x3099, 0 };
-static const unichar_t str_ff9f[] = { 0x309a, 0 };
-static const unichar_t str_ffa0[] = { 0x3164, 0 };
-static const unichar_t str_ffa1[] = { 0x3131, 0 };
-static const unichar_t str_ffa2[] = { 0x3132, 0 };
-static const unichar_t str_ffa3[] = { 0x3133, 0 };
-static const unichar_t str_ffa4[] = { 0x3134, 0 };
-static const unichar_t str_ffa5[] = { 0x3135, 0 };
-static const unichar_t str_ffa6[] = { 0x3136, 0 };
-static const unichar_t str_ffa7[] = { 0x3137, 0 };
-static const unichar_t str_ffa8[] = { 0x3138, 0 };
-static const unichar_t str_ffa9[] = { 0x3139, 0 };
-static const unichar_t str_ffaa[] = { 0x313a, 0 };
-static const unichar_t str_ffab[] = { 0x313b, 0 };
-static const unichar_t str_ffac[] = { 0x313c, 0 };
-static const unichar_t str_ffad[] = { 0x313d, 0 };
-static const unichar_t str_ffae[] = { 0x313e, 0 };
-static const unichar_t str_ffaf[] = { 0x313f, 0 };
-static const unichar_t str_ffb0[] = { 0x3140, 0 };
-static const unichar_t str_ffb1[] = { 0x3141, 0 };
-static const unichar_t str_ffb2[] = { 0x3142, 0 };
-static const unichar_t str_ffb3[] = { 0x3143, 0 };
-static const unichar_t str_ffb4[] = { 0x3144, 0 };
-static const unichar_t str_ffb5[] = { 0x3145, 0 };
-static const unichar_t str_ffb6[] = { 0x3146, 0 };
-static const unichar_t str_ffb7[] = { 0x3147, 0 };
-static const unichar_t str_ffb8[] = { 0x3148, 0 };
-static const unichar_t str_ffb9[] = { 0x3149, 0 };
-static const unichar_t str_ffba[] = { 0x314a, 0 };
-static const unichar_t str_ffbb[] = { 0x314b, 0 };
-static const unichar_t str_ffbc[] = { 0x314c, 0 };
-static const unichar_t str_ffbd[] = { 0x314d, 0 };
-static const unichar_t str_ffbe[] = { 0x314e, 0 };
-static const unichar_t str_ffc2[] = { 0x314f, 0 };
-static const unichar_t str_ffc3[] = { 0x3150, 0 };
-static const unichar_t str_ffc4[] = { 0x3151, 0 };
-static const unichar_t str_ffc5[] = { 0x3152, 0 };
-static const unichar_t str_ffc6[] = { 0x3153, 0 };
-static const unichar_t str_ffc7[] = { 0x3154, 0 };
-static const unichar_t str_ffca[] = { 0x3155, 0 };
-static const unichar_t str_ffcb[] = { 0x3156, 0 };
-static const unichar_t str_ffcc[] = { 0x3157, 0 };
-static const unichar_t str_ffcd[] = { 0x3158, 0 };
-static const unichar_t str_ffce[] = { 0x3159, 0 };
-static const unichar_t str_ffcf[] = { 0x315a, 0 };
-static const unichar_t str_ffd2[] = { 0x315b, 0 };
-static const unichar_t str_ffd3[] = { 0x315c, 0 };
-static const unichar_t str_ffd4[] = { 0x315d, 0 };
-static const unichar_t str_ffd5[] = { 0x315e, 0 };
-static const unichar_t str_ffd6[] = { 0x315f, 0 };
-static const unichar_t str_ffd7[] = { 0x3160, 0 };
-static const unichar_t str_ffda[] = { 0x3161, 0 };
-static const unichar_t str_ffdb[] = { 0x3162, 0 };
-static const unichar_t str_ffdc[] = { 0x3163, 0 };
-static const unichar_t str_ffe0[] = { 0x00a2, 0 };
-static const unichar_t str_ffe1[] = { 0x00a3, 0 };
-static const unichar_t str_ffe2[] = { 0x00ac, 0 };
-static const unichar_t str_ffe3[] = { 0x00af, 0 };
-static const unichar_t str_ffe4[] = { 0x00a6, 0 };
-static const unichar_t str_ffe5[] = { 0x00a5, 0 };
-static const unichar_t str_ffe6[] = { 0x20a9, 0 };
-static const unichar_t str_ffe8[] = { 0x2502, 0 };
-static const unichar_t str_ffe9[] = { 0x2190, 0 };
-static const unichar_t str_ffea[] = { 0x2191, 0 };
-static const unichar_t str_ffeb[] = { 0x2192, 0 };
-static const unichar_t str_ffec[] = { 0x2193, 0 };
-static const unichar_t str_ffed[] = { 0x25a0, 0 };
-static const unichar_t str_ffee[] = { 0x25cb, 0 };
-
-static const unichar_t *const up_allzeros[256] = { NULL };
-
-static const unichar_t * const tab_0[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_a0,
-0, 0, 0, 0, 0, 0, 0, str_a8,
-0, str_aa,
-0, 0, 0, 0, str_af,
-0, 0, str_b2,
-str_b3,
-str_b4,
-str_b5,
-0, 0, str_b8,
-str_b9,
-str_ba,
-0, str_bc,
-str_bd,
-str_be,
-0, str_c0,
-str_c1,
-str_c2,
-str_c3,
-str_c4,
-str_c5,
-0, str_c7,
-str_c8,
-str_c9,
-str_ca,
-str_cb,
-str_cc,
-str_cd,
-str_ce,
-str_cf,
-0, str_d1,
-str_d2,
-str_d3,
-str_d4,
-str_d5,
-str_d6,
-0, 0, str_d9,
-str_da,
-str_db,
-str_dc,
-str_dd,
-0, 0, str_e0,
-str_e1,
-str_e2,
-str_e3,
-str_e4,
-str_e5,
-0, str_e7,
-str_e8,
-str_e9,
-str_ea,
-str_eb,
-str_ec,
-str_ed,
-str_ee,
-str_ef,
-0, str_f1,
-str_f2,
-str_f3,
-str_f4,
-str_f5,
-str_f6,
-0, 0, str_f9,
-str_fa,
-str_fb,
-str_fc,
-str_fd,
-0, str_ff,
-0};
-
-static const unichar_t * const tab_1[] = {
-str_100,
-str_101,
-str_102,
-str_103,
-str_104,
-str_105,
-str_106,
-str_107,
-str_108,
-str_109,
-str_10a,
-str_10b,
-str_10c,
-str_10d,
-str_10e,
-str_10f,
-str_110,
-0, str_112,
-str_113,
-str_114,
-str_115,
-str_116,
-str_117,
-str_118,
-str_119,
-str_11a,
-str_11b,
-str_11c,
-str_11d,
-str_11e,
-str_11f,
-str_120,
-str_121,
-str_122,
-str_123,
-str_124,
-str_125,
-0, 0, str_128,
-str_129,
-str_12a,
-str_12b,
-str_12c,
-str_12d,
-str_12e,
-str_12f,
-str_130,
-0, str_132,
-str_133,
-str_134,
-str_135,
-str_136,
-str_137,
-str_138,
-str_139,
-str_13a,
-str_13b,
-str_13c,
-str_13d,
-str_13e,
-str_13f,
-str_140,
-0, 0, str_143,
-str_144,
-str_145,
-str_146,
-str_147,
-str_148,
-str_149,
-0, 0, str_14c,
-str_14d,
-str_14e,
-str_14f,
-str_150,
-str_151,
-str_152,
-str_153,
-str_154,
-str_155,
-str_156,
-str_157,
-str_158,
-str_159,
-str_15a,
-str_15b,
-str_15c,
-str_15d,
-str_15e,
-str_15f,
-str_160,
-str_161,
-str_162,
-str_163,
-str_164,
-str_165,
-0, 0, str_168,
-str_169,
-str_16a,
-str_16b,
-str_16c,
-str_16d,
-str_16e,
-str_16f,
-str_170,
-str_171,
-str_172,
-str_173,
-str_174,
-str_175,
-str_176,
-str_177,
-str_178,
-str_179,
-str_17a,
-str_17b,
-str_17c,
-str_17d,
-str_17e,
-str_17f,
-0, 0, str_182,
-0, 0, 0, 0, 0, 0, str_189,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_19e,
-str_19f,
-str_1a0,
-str_1a1,
-0, 0, 0, 0, 0, 0, 0, str_1a9,
-0, 0, 0, 0, 0, str_1af,
-str_1b0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_1c0,
-str_1c1,
-0, 0, str_1c4,
-str_1c5,
-str_1c6,
-str_1c7,
-str_1c8,
-str_1c9,
-str_1ca,
-str_1cb,
-str_1cc,
-str_1cd,
-str_1ce,
-str_1cf,
-str_1d0,
-str_1d1,
-str_1d2,
-str_1d3,
-str_1d4,
-str_1d5,
-str_1d6,
-str_1d7,
-str_1d8,
-str_1d9,
-str_1da,
-str_1db,
-str_1dc,
-0, str_1de,
-str_1df,
-str_1e0,
-str_1e1,
-str_1e2,
-str_1e3,
-0, 0, str_1e6,
-str_1e7,
-str_1e8,
-str_1e9,
-str_1ea,
-str_1eb,
-str_1ec,
-str_1ed,
-str_1ee,
-str_1ef,
-str_1f0,
-str_1f1,
-str_1f2,
-str_1f3,
-str_1f4,
-str_1f5,
-0, 0, str_1f8,
-str_1f9,
-str_1fa,
-str_1fb,
-str_1fc,
-str_1fd,
-str_1fe,
-str_1ff,
-0};
-
-static const unichar_t * const tab_2[] = {
-str_200,
-str_201,
-str_202,
-str_203,
-str_204,
-str_205,
-str_206,
-str_207,
-str_208,
-str_209,
-str_20a,
-str_20b,
-str_20c,
-str_20d,
-str_20e,
-str_20f,
-str_210,
-str_211,
-str_212,
-str_213,
-str_214,
-str_215,
-str_216,
-str_217,
-str_218,
-str_219,
-str_21a,
-str_21b,
-0, 0, str_21e,
-str_21f,
-0, 0, 0, 0, 0, 0, str_226,
-str_227,
-str_228,
-str_229,
-str_22a,
-str_22b,
-str_22c,
-str_22d,
-str_22e,
-str_22f,
-str_230,
-str_231,
-str_232,
-str_233,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_269,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_278,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_292,
-0, 0, 0, 0, 0, 0, str_299,
-0, 0, str_29c,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2b0,
-str_2b1,
-str_2b2,
-str_2b3,
-str_2b4,
-str_2b5,
-str_2b6,
-str_2b7,
-str_2b8,
-str_2b9,
-str_2ba,
-0, str_2bc,
-0, 0, 0, 0, 0, 0, 0, str_2c4,
-0, str_2c6,
-0, str_2c8,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2d8,
-str_2d9,
-str_2da,
-str_2db,
-str_2dc,
-str_2dd,
-0, 0, str_2e0,
-str_2e1,
-str_2e2,
-str_2e3,
-str_2e4,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_3[] = {
-0, str_301,
-str_302,
-str_303,
-0, 0, 0, 0, str_308,
-0, str_30a,
-str_30b,
-0, 0, str_30e,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_327,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_340,
-str_341,
-0, str_343,
-str_344,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_374,
-str_375,
-0, 0, 0, 0, str_37a,
-0, 0, 0, str_37e,
-0, 0, 0, 0, 0, str_384,
-str_385,
-str_386,
-str_387,
-str_388,
-str_389,
-str_38a,
-0, str_38c,
-0, str_38e,
-str_38f,
-str_390,
-str_391,
-str_392,
-str_393,
-0, str_395,
-str_396,
-str_397,
-0, str_399,
-str_39a,
-0, str_39c,
-str_39d,
-0, str_39f,
-0, str_3a1,
-0, 0, str_3a4,
-str_3a5,
-0, str_3a7,
-0, 0, str_3aa,
-str_3ab,
-str_3ac,
-str_3ad,
-str_3ae,
-str_3af,
-str_3b0,
-0, 0, 0, 0, 0, 0, 0, 0, 0, str_3ba,
-0, 0, 0, 0, str_3bf,
-0, str_3c1,
-0, 0, 0, 0, 0, str_3c7,
-0, 0, str_3ca,
-str_3cb,
-str_3cc,
-str_3cd,
-str_3ce,
-0, str_3d0,
-str_3d1,
-str_3d2,
-str_3d3,
-str_3d4,
-str_3d5,
-str_3d6,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_3f0,
-str_3f1,
-str_3f2,
-0, str_3f4,
-str_3f5,
-0, 0, 0, str_3f9,
-0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_4[] = {
-str_400,
-str_401,
-0, str_403,
-0, str_405,
-str_406,
-str_407,
-str_408,
-0, 0, 0, str_40c,
-str_40d,
-str_40e,
-0, str_410,
-0, str_412,
-str_413,
-0, str_415,
-0, 0, 0, str_419,
-str_41a,
-0, str_41c,
-str_41d,
-str_41e,
-str_41f,
-str_420,
-str_421,
-str_422,
-0, str_424,
-str_425,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_430,
-0, 0, 0, 0, str_435,
-0, 0, 0, str_439,
-str_43a,
-0, 0, 0, str_43e,
-str_43f,
-str_440,
-str_441,
-0, str_443,
-0, str_445,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_450,
-str_451,
-0, str_453,
-0, str_455,
-str_456,
-str_457,
-str_458,
-0, 0, 0, str_45c,
-str_45d,
-str_45e,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_470,
-str_471,
-0, 0, 0, 0, str_476,
-str_477,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_4ae,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_4c0,
-str_4c1,
-str_4c2,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_4d0,
-str_4d1,
-str_4d2,
-str_4d3,
-str_4d4,
-str_4d5,
-str_4d6,
-str_4d7,
-0, 0, str_4da,
-str_4db,
-str_4dc,
-str_4dd,
-str_4de,
-str_4df,
-str_4e0,
-str_4e1,
-str_4e2,
-str_4e3,
-str_4e4,
-str_4e5,
-str_4e6,
-str_4e7,
-str_4e8,
-str_4e9,
-str_4ea,
-str_4eb,
-str_4ec,
-str_4ed,
-str_4ee,
-str_4ef,
-str_4f0,
-str_4f1,
-str_4f2,
-str_4f3,
-str_4f4,
-str_4f5,
-0, 0, str_4f8,
-str_4f9,
-0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_5[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_54f,
-0, 0, 0, 0, 0, str_555,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_570,
-0, 0, 0, 0, 0, 0, 0, str_578,
-0, str_57a,
-0, 0, str_57d,
-0, 0, 0, str_581,
-str_582,
-0, str_584,
-str_585,
-0, str_587,
-0, str_589,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_5f0,
-str_5f1,
-str_5f2,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_6[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_60c,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_621,
-str_622,
-str_623,
-str_624,
-str_625,
-str_626,
-str_627,
-str_628,
-str_629,
-str_62a,
-str_62b,
-str_62c,
-str_62d,
-str_62e,
-str_62f,
-str_630,
-str_631,
-str_632,
-str_633,
-str_634,
-str_635,
-str_636,
-str_637,
-str_638,
-str_639,
-str_63a,
-0, 0, 0, 0, 0, 0, str_641,
-str_642,
-str_643,
-str_644,
-str_645,
-str_646,
-str_647,
-str_648,
-str_649,
-str_64a,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_66a,
-0, str_66c,
-str_66d,
-0, 0, 0, str_671,
-0, 0, 0, str_675,
-str_676,
-str_677,
-str_678,
-str_679,
-str_67a,
-str_67b,
-0, 0, str_67e,
-str_67f,
-str_680,
-0, 0, str_683,
-str_684,
-0, str_686,
-str_687,
-str_688,
-0, 0, 0, str_68c,
-str_68d,
-str_68e,
-0, 0, str_691,
-0, 0, 0, 0, 0, 0, str_698,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_6a4,
-0, str_6a6,
-0, 0, str_6a9,
-0, 0, 0, str_6ad,
-0, str_6af,
-0, str_6b1,
-0, str_6b3,
-0, 0, 0, 0, 0, 0, str_6ba,
-str_6bb,
-0, 0, str_6be,
-0, str_6c0,
-str_6c1,
-str_6c2,
-0, 0, str_6c5,
-str_6c6,
-str_6c7,
-str_6c8,
-str_6c9,
-0, str_6cb,
-str_6cc,
-0, 0, 0, str_6d0,
-0, str_6d2,
-str_6d3,
-str_6d4,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_9[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_929,
-0, 0, 0, 0, 0, 0, 0, str_931,
-0, 0, str_934,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_958,
-str_959,
-str_95a,
-str_95b,
-str_95c,
-str_95d,
-str_95e,
-str_95f,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_9cb,
-str_9cc,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_9dc,
-str_9dd,
-0, str_9df,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_a[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_a33,
-0, 0, str_a36,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_a59,
-str_a5a,
-str_a5b,
-0, 0, str_a5e,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_b[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_b48,
-0, 0, str_b4b,
-str_b4c,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_b5c,
-str_b5d,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_b94,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_bca,
-str_bcb,
-str_bcc,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_c[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_c48,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_cc0,
-0, 0, 0, 0, 0, 0, str_cc7,
-str_cc8,
-0, str_cca,
-str_ccb,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_d[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_d4a,
-str_d4b,
-str_d4c,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_dda,
-0, str_ddc,
-str_ddd,
-str_dde,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_e[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_e33,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_eb3,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_edc,
-str_edd,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_f[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_f0c,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_f43,
-0, 0, 0, 0, 0, 0, 0, 0, 0, str_f4d,
-0, 0, 0, 0, str_f52,
-0, 0, 0, 0, str_f57,
-0, 0, 0, 0, str_f5c,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_f69,
-0, 0, 0, 0, 0, 0, 0, 0, 0, str_f73,
-0, str_f75,
-str_f76,
-str_f77,
-str_f78,
-str_f79,
-0, 0, 0, 0, 0, 0, 0, str_f81,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_f93,
-0, 0, 0, 0, 0, 0, 0, 0, 0, str_f9d,
-0, 0, 0, 0, str_fa2,
-0, 0, 0, 0, str_fa7,
-0, 0, 0, 0, str_fac,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_fb9,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_10[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_1026,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_10fc,
-0, 0, 0, 0};
-
-static const unichar_t * const tab_11[] = {
-0, str_1101,
-0, 0, str_1104,
-0, 0, 0, str_1108,
-0, str_110a,
-0, 0, str_110d,
-0, 0, 0, 0, 0, str_1113,
-str_1114,
-str_1115,
-str_1116,
-str_1117,
-str_1118,
-str_1119,
-str_111a,
-str_111b,
-str_111c,
-str_111d,
-str_111e,
-str_111f,
-str_1120,
-str_1121,
-str_1122,
-str_1123,
-str_1124,
-str_1125,
-str_1126,
-str_1127,
-str_1128,
-str_1129,
-str_112a,
-str_112b,
-str_112c,
-str_112d,
-str_112e,
-str_112f,
-str_1130,
-str_1131,
-str_1132,
-str_1133,
-str_1134,
-str_1135,
-str_1136,
-str_1137,
-str_1138,
-str_1139,
-str_113a,
-str_113b,
-0, str_113d,
-0, str_113f,
-0, str_1141,
-str_1142,
-str_1143,
-str_1144,
-str_1145,
-str_1146,
-str_1147,
-str_1148,
-str_1149,
-str_114a,
-str_114b,
-0, str_114d,
-0, str_114f,
-0, str_1151,
-str_1152,
-str_1153,
-0, 0, str_1156,
-str_1157,
-str_1158,
-0, 0, 0, 0, 0, 0, 0, 0, 0, str_1162,
-0, str_1164,
-0, str_1166,
-0, str_1168,
-0, str_116a,
-str_116b,
-str_116c,
-0, 0, str_116f,
-str_1170,
-str_1171,
-0, 0, str_1174,
-0, str_1176,
-str_1177,
-str_1178,
-str_1179,
-str_117a,
-str_117b,
-str_117c,
-str_117d,
-str_117e,
-str_117f,
-str_1180,
-str_1181,
-str_1182,
-str_1183,
-str_1184,
-str_1185,
-str_1186,
-str_1187,
-str_1188,
-str_1189,
-str_118a,
-str_118b,
-str_118c,
-str_118d,
-str_118e,
-str_118f,
-str_1190,
-str_1191,
-str_1192,
-str_1193,
-str_1194,
-str_1195,
-str_1196,
-str_1197,
-str_1198,
-str_1199,
-str_119a,
-str_119b,
-str_119c,
-str_119d,
-0, str_119f,
-str_11a0,
-str_11a1,
-str_11a2,
-0, 0, 0, 0, 0, str_11a8,
-str_11a9,
-str_11aa,
-str_11ab,
-str_11ac,
-str_11ad,
-str_11ae,
-str_11af,
-str_11b0,
-str_11b1,
-str_11b2,
-str_11b3,
-str_11b4,
-str_11b5,
-str_11b6,
-str_11b7,
-str_11b8,
-str_11b9,
-str_11ba,
-str_11bb,
-str_11bc,
-str_11bd,
-str_11be,
-str_11bf,
-str_11c0,
-str_11c1,
-str_11c2,
-str_11c3,
-str_11c4,
-str_11c5,
-str_11c6,
-str_11c7,
-str_11c8,
-str_11c9,
-str_11ca,
-str_11cb,
-str_11cc,
-str_11cd,
-str_11ce,
-str_11cf,
-str_11d0,
-str_11d1,
-str_11d2,
-str_11d3,
-str_11d4,
-str_11d5,
-str_11d6,
-str_11d7,
-str_11d8,
-str_11d9,
-str_11da,
-str_11db,
-str_11dc,
-str_11dd,
-str_11de,
-str_11df,
-str_11e0,
-str_11e1,
-str_11e2,
-str_11e3,
-str_11e4,
-str_11e5,
-str_11e6,
-str_11e7,
-str_11e8,
-str_11e9,
-str_11ea,
-str_11eb,
-str_11ec,
-str_11ed,
-str_11ee,
-str_11ef,
-str_11f0,
-str_11f1,
-str_11f2,
-str_11f3,
-str_11f4,
-str_11f5,
-str_11f6,
-str_11f7,
-str_11f8,
-str_11f9,
-0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_13[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_13a0,
-str_13a1,
-str_13a2,
-0, 0, 0, 0, 0, 0, str_13a9,
-str_13aa,
-str_13ab,
-str_13ac,
-0, 0, 0, 0, str_13b1,
-0, str_13b3,
-0, 0, 0, str_13b7,
-0, 0, 0, str_13bb,
-0, 0, str_13be,
-0, str_13c0,
-0, str_13c2,
-str_13c3,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_13cf,
-0, 0, 0, 0, 0, 0, 0, 0, 0, str_13d9,
-str_13da,
-0, 0, 0, str_13de,
-str_13df,
-0, 0, str_13e2,
-0, 0, 0, str_13e6,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_13f4,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_1b[] = {
-0, 0, 0, 0, 0, 0, str_1b06,
-0, str_1b08,
-0, str_1b0a,
-0, str_1b0c,
-0, str_1b0e,
-0, 0, 0, str_1b12,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_1b3b,
-0, str_1b3d,
-0, 0, str_1b40,
-str_1b41,
-0, str_1b43,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_1d[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_1d2c,
-str_1d2d,
-str_1d2e,
-0, str_1d30,
-str_1d31,
-str_1d32,
-str_1d33,
-str_1d34,
-str_1d35,
-str_1d36,
-str_1d37,
-str_1d38,
-str_1d39,
-str_1d3a,
-0, str_1d3c,
-str_1d3d,
-str_1d3e,
-str_1d3f,
-str_1d40,
-str_1d41,
-str_1d42,
-str_1d43,
-str_1d44,
-str_1d45,
-str_1d46,
-str_1d47,
-str_1d48,
-str_1d49,
-str_1d4a,
-str_1d4b,
-str_1d4c,
-str_1d4d,
-0, str_1d4f,
-str_1d50,
-str_1d51,
-str_1d52,
-str_1d53,
-str_1d54,
-str_1d55,
-str_1d56,
-str_1d57,
-str_1d58,
-str_1d59,
-str_1d5a,
-str_1d5b,
-str_1d5c,
-str_1d5d,
-str_1d5e,
-str_1d5f,
-str_1d60,
-str_1d61,
-str_1d62,
-str_1d63,
-str_1d64,
-str_1d65,
-str_1d66,
-str_1d67,
-str_1d68,
-str_1d69,
-str_1d6a,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_1d78,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_1d9b,
-str_1d9c,
-str_1d9d,
-str_1d9e,
-str_1d9f,
-str_1da0,
-str_1da1,
-str_1da2,
-str_1da3,
-str_1da4,
-str_1da5,
-str_1da6,
-str_1da7,
-str_1da8,
-str_1da9,
-str_1daa,
-str_1dab,
-str_1dac,
-str_1dad,
-str_1dae,
-str_1daf,
-str_1db0,
-str_1db1,
-str_1db2,
-str_1db3,
-str_1db4,
-str_1db5,
-str_1db6,
-str_1db7,
-str_1db8,
-str_1db9,
-str_1dba,
-str_1dbb,
-str_1dbc,
-str_1dbd,
-str_1dbe,
-str_1dbf,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_1e[] = {
-str_1e00,
-str_1e01,
-str_1e02,
-str_1e03,
-str_1e04,
-str_1e05,
-str_1e06,
-str_1e07,
-str_1e08,
-str_1e09,
-str_1e0a,
-str_1e0b,
-str_1e0c,
-str_1e0d,
-str_1e0e,
-str_1e0f,
-str_1e10,
-str_1e11,
-str_1e12,
-str_1e13,
-str_1e14,
-str_1e15,
-str_1e16,
-str_1e17,
-str_1e18,
-str_1e19,
-str_1e1a,
-str_1e1b,
-str_1e1c,
-str_1e1d,
-str_1e1e,
-str_1e1f,
-str_1e20,
-str_1e21,
-str_1e22,
-str_1e23,
-str_1e24,
-str_1e25,
-str_1e26,
-str_1e27,
-str_1e28,
-str_1e29,
-str_1e2a,
-str_1e2b,
-str_1e2c,
-str_1e2d,
-str_1e2e,
-str_1e2f,
-str_1e30,
-str_1e31,
-str_1e32,
-str_1e33,
-str_1e34,
-str_1e35,
-str_1e36,
-str_1e37,
-str_1e38,
-str_1e39,
-str_1e3a,
-str_1e3b,
-str_1e3c,
-str_1e3d,
-str_1e3e,
-str_1e3f,
-str_1e40,
-str_1e41,
-str_1e42,
-str_1e43,
-str_1e44,
-str_1e45,
-str_1e46,
-str_1e47,
-str_1e48,
-str_1e49,
-str_1e4a,
-str_1e4b,
-str_1e4c,
-str_1e4d,
-str_1e4e,
-str_1e4f,
-str_1e50,
-str_1e51,
-str_1e52,
-str_1e53,
-str_1e54,
-str_1e55,
-str_1e56,
-str_1e57,
-str_1e58,
-str_1e59,
-str_1e5a,
-str_1e5b,
-str_1e5c,
-str_1e5d,
-str_1e5e,
-str_1e5f,
-str_1e60,
-str_1e61,
-str_1e62,
-str_1e63,
-str_1e64,
-str_1e65,
-str_1e66,
-str_1e67,
-str_1e68,
-str_1e69,
-str_1e6a,
-str_1e6b,
-str_1e6c,
-str_1e6d,
-str_1e6e,
-str_1e6f,
-str_1e70,
-str_1e71,
-str_1e72,
-str_1e73,
-str_1e74,
-str_1e75,
-str_1e76,
-str_1e77,
-str_1e78,
-str_1e79,
-str_1e7a,
-str_1e7b,
-str_1e7c,
-str_1e7d,
-str_1e7e,
-str_1e7f,
-str_1e80,
-str_1e81,
-str_1e82,
-str_1e83,
-str_1e84,
-str_1e85,
-str_1e86,
-str_1e87,
-str_1e88,
-str_1e89,
-str_1e8a,
-str_1e8b,
-str_1e8c,
-str_1e8d,
-str_1e8e,
-str_1e8f,
-str_1e90,
-str_1e91,
-str_1e92,
-str_1e93,
-str_1e94,
-str_1e95,
-str_1e96,
-str_1e97,
-str_1e98,
-str_1e99,
-str_1e9a,
-str_1e9b,
-0, 0, 0, 0, str_1ea0,
-str_1ea1,
-str_1ea2,
-str_1ea3,
-str_1ea4,
-str_1ea5,
-str_1ea6,
-str_1ea7,
-str_1ea8,
-str_1ea9,
-str_1eaa,
-str_1eab,
-str_1eac,
-str_1ead,
-str_1eae,
-str_1eaf,
-str_1eb0,
-str_1eb1,
-str_1eb2,
-str_1eb3,
-str_1eb4,
-str_1eb5,
-str_1eb6,
-str_1eb7,
-str_1eb8,
-str_1eb9,
-str_1eba,
-str_1ebb,
-str_1ebc,
-str_1ebd,
-str_1ebe,
-str_1ebf,
-str_1ec0,
-str_1ec1,
-str_1ec2,
-str_1ec3,
-str_1ec4,
-str_1ec5,
-str_1ec6,
-str_1ec7,
-str_1ec8,
-str_1ec9,
-str_1eca,
-str_1ecb,
-str_1ecc,
-str_1ecd,
-str_1ece,
-str_1ecf,
-str_1ed0,
-str_1ed1,
-str_1ed2,
-str_1ed3,
-str_1ed4,
-str_1ed5,
-str_1ed6,
-str_1ed7,
-str_1ed8,
-str_1ed9,
-str_1eda,
-str_1edb,
-str_1edc,
-str_1edd,
-str_1ede,
-str_1edf,
-str_1ee0,
-str_1ee1,
-str_1ee2,
-str_1ee3,
-str_1ee4,
-str_1ee5,
-str_1ee6,
-str_1ee7,
-str_1ee8,
-str_1ee9,
-str_1eea,
-str_1eeb,
-str_1eec,
-str_1eed,
-str_1eee,
-str_1eef,
-str_1ef0,
-str_1ef1,
-str_1ef2,
-str_1ef3,
-str_1ef4,
-str_1ef5,
-str_1ef6,
-str_1ef7,
-str_1ef8,
-str_1ef9,
-0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_1f[] = {
-str_1f00,
-str_1f01,
-str_1f02,
-str_1f03,
-str_1f04,
-str_1f05,
-str_1f06,
-str_1f07,
-str_1f08,
-str_1f09,
-str_1f0a,
-str_1f0b,
-str_1f0c,
-str_1f0d,
-str_1f0e,
-str_1f0f,
-str_1f10,
-str_1f11,
-str_1f12,
-str_1f13,
-str_1f14,
-str_1f15,
-0, 0, str_1f18,
-str_1f19,
-str_1f1a,
-str_1f1b,
-str_1f1c,
-str_1f1d,
-0, 0, str_1f20,
-str_1f21,
-str_1f22,
-str_1f23,
-str_1f24,
-str_1f25,
-str_1f26,
-str_1f27,
-str_1f28,
-str_1f29,
-str_1f2a,
-str_1f2b,
-str_1f2c,
-str_1f2d,
-str_1f2e,
-str_1f2f,
-str_1f30,
-str_1f31,
-str_1f32,
-str_1f33,
-str_1f34,
-str_1f35,
-str_1f36,
-str_1f37,
-str_1f38,
-str_1f39,
-str_1f3a,
-str_1f3b,
-str_1f3c,
-str_1f3d,
-str_1f3e,
-str_1f3f,
-str_1f40,
-str_1f41,
-str_1f42,
-str_1f43,
-str_1f44,
-str_1f45,
-0, 0, str_1f48,
-str_1f49,
-str_1f4a,
-str_1f4b,
-str_1f4c,
-str_1f4d,
-0, 0, str_1f50,
-str_1f51,
-str_1f52,
-str_1f53,
-str_1f54,
-str_1f55,
-str_1f56,
-str_1f57,
-0, str_1f59,
-0, str_1f5b,
-0, str_1f5d,
-0, str_1f5f,
-str_1f60,
-str_1f61,
-str_1f62,
-str_1f63,
-str_1f64,
-str_1f65,
-str_1f66,
-str_1f67,
-str_1f68,
-str_1f69,
-str_1f6a,
-str_1f6b,
-str_1f6c,
-str_1f6d,
-str_1f6e,
-str_1f6f,
-str_1f70,
-str_1f71,
-str_1f72,
-str_1f73,
-str_1f74,
-str_1f75,
-str_1f76,
-str_1f77,
-str_1f78,
-str_1f79,
-str_1f7a,
-str_1f7b,
-str_1f7c,
-str_1f7d,
-0, 0, str_1f80,
-str_1f81,
-str_1f82,
-str_1f83,
-str_1f84,
-str_1f85,
-str_1f86,
-str_1f87,
-str_1f88,
-str_1f89,
-str_1f8a,
-str_1f8b,
-str_1f8c,
-str_1f8d,
-str_1f8e,
-str_1f8f,
-str_1f90,
-str_1f91,
-str_1f92,
-str_1f93,
-str_1f94,
-str_1f95,
-str_1f96,
-str_1f97,
-str_1f98,
-str_1f99,
-str_1f9a,
-str_1f9b,
-str_1f9c,
-str_1f9d,
-str_1f9e,
-str_1f9f,
-str_1fa0,
-str_1fa1,
-str_1fa2,
-str_1fa3,
-str_1fa4,
-str_1fa5,
-str_1fa6,
-str_1fa7,
-str_1fa8,
-str_1fa9,
-str_1faa,
-str_1fab,
-str_1fac,
-str_1fad,
-str_1fae,
-str_1faf,
-str_1fb0,
-str_1fb1,
-str_1fb2,
-str_1fb3,
-str_1fb4,
-0, str_1fb6,
-str_1fb7,
-str_1fb8,
-str_1fb9,
-str_1fba,
-str_1fbb,
-str_1fbc,
-str_1fbd,
-str_1fbe,
-str_1fbf,
-str_1fc0,
-str_1fc1,
-str_1fc2,
-str_1fc3,
-str_1fc4,
-0, str_1fc6,
-str_1fc7,
-str_1fc8,
-str_1fc9,
-str_1fca,
-str_1fcb,
-str_1fcc,
-str_1fcd,
-str_1fce,
-str_1fcf,
-str_1fd0,
-str_1fd1,
-str_1fd2,
-str_1fd3,
-0, 0, str_1fd6,
-str_1fd7,
-str_1fd8,
-str_1fd9,
-str_1fda,
-str_1fdb,
-0, str_1fdd,
-str_1fde,
-str_1fdf,
-str_1fe0,
-str_1fe1,
-str_1fe2,
-str_1fe3,
-str_1fe4,
-str_1fe5,
-str_1fe6,
-str_1fe7,
-str_1fe8,
-str_1fe9,
-str_1fea,
-str_1feb,
-str_1fec,
-str_1fed,
-str_1fee,
-str_1fef,
-0, 0, str_1ff2,
-str_1ff3,
-str_1ff4,
-0, str_1ff6,
-str_1ff7,
-str_1ff8,
-str_1ff9,
-str_1ffa,
-str_1ffb,
-str_1ffc,
-str_1ffd,
-str_1ffe,
-0, 0};
-
-static const unichar_t * const tab_20[] = {
-str_2000,
-str_2001,
-str_2002,
-str_2003,
-str_2004,
-str_2005,
-str_2006,
-str_2007,
-str_2008,
-str_2009,
-str_200a,
-0, 0, 0, 0, 0, str_2010,
-str_2011,
-str_2012,
-str_2013,
-str_2014,
-str_2015,
-str_2016,
-str_2017,
-str_2018,
-str_2019,
-0, 0, str_201c,
-str_201d,
-0, 0, 0, 0, 0, 0, str_2024,
-str_2025,
-str_2026,
-0, 0, 0, 0, 0, 0, 0, 0, str_202f,
-0, 0, str_2032,
-str_2033,
-str_2034,
-str_2035,
-str_2036,
-str_2037,
-0, str_2039,
-str_203a,
-0, str_203c,
-0, str_203e,
-0, 0, 0, 0, 0, 0, 0, 0, str_2047,
-str_2048,
-str_2049,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2057,
-0, 0, 0, 0, 0, 0, 0, str_205f,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2070,
-str_2071,
-0, 0, str_2074,
-str_2075,
-str_2076,
-str_2077,
-str_2078,
-str_2079,
-str_207a,
-str_207b,
-str_207c,
-str_207d,
-str_207e,
-str_207f,
-str_2080,
-str_2081,
-str_2082,
-str_2083,
-str_2084,
-str_2085,
-str_2086,
-str_2087,
-str_2088,
-str_2089,
-str_208a,
-str_208b,
-str_208c,
-str_208d,
-str_208e,
-0, str_2090,
-str_2091,
-str_2092,
-str_2093,
-str_2094,
-str_2095,
-str_2096,
-str_2097,
-str_2098,
-str_2099,
-str_209a,
-str_209b,
-str_209c,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_20a8,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_21[] = {
-str_2100,
-str_2101,
-str_2102,
-str_2103,
-0, str_2105,
-str_2106,
-str_2107,
-0, str_2109,
-str_210a,
-str_210b,
-str_210c,
-str_210d,
-str_210e,
-str_210f,
-str_2110,
-str_2111,
-str_2112,
-str_2113,
-0, str_2115,
-str_2116,
-0, 0, str_2119,
-str_211a,
-str_211b,
-str_211c,
-str_211d,
-0, 0, str_2120,
-str_2121,
-str_2122,
-0, str_2124,
-0, str_2126,
-0, str_2128,
-0, str_212a,
-str_212b,
-str_212c,
-str_212d,
-0, str_212f,
-str_2130,
-str_2131,
-0, str_2133,
-str_2134,
-str_2135,
-str_2136,
-str_2137,
-str_2138,
-str_2139,
-0, str_213b,
-str_213c,
-str_213d,
-str_213e,
-str_213f,
-str_2140,
-0, 0, 0, 0, str_2145,
-str_2146,
-str_2147,
-str_2148,
-str_2149,
-0, 0, 0, 0, 0, 0, str_2150,
-str_2151,
-str_2152,
-str_2153,
-str_2154,
-str_2155,
-str_2156,
-str_2157,
-str_2158,
-str_2159,
-str_215a,
-str_215b,
-str_215c,
-str_215d,
-str_215e,
-str_215f,
-str_2160,
-str_2161,
-str_2162,
-str_2163,
-str_2164,
-str_2165,
-str_2166,
-str_2167,
-str_2168,
-str_2169,
-str_216a,
-str_216b,
-str_216c,
-str_216d,
-str_216e,
-str_216f,
-str_2170,
-str_2171,
-str_2172,
-str_2173,
-str_2174,
-str_2175,
-str_2176,
-str_2177,
-str_2178,
-str_2179,
-str_217a,
-str_217b,
-str_217c,
-str_217d,
-str_217e,
-str_217f,
-0, 0, 0, 0, 0, 0, 0, 0, 0, str_2189,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_219a,
-str_219b,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_21ae,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_21cd,
-str_21ce,
-str_21cf,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_22[] = {
-0, 0, 0, 0, str_2204,
-str_2205,
-str_2206,
-0, 0, str_2209,
-0, 0, str_220c,
-0, 0, str_220f,
-0, str_2211,
-str_2212,
-0, 0, str_2215,
-str_2216,
-str_2217,
-str_2218,
-str_2219,
-0, 0, 0, 0, 0, 0, 0, 0, 0, str_2223,
-str_2224,
-str_2225,
-str_2226,
-0, 0, 0, 0, 0, str_222c,
-str_222d,
-0, str_222f,
-str_2230,
-0, 0, 0, 0, 0, str_2236,
-0, 0, 0, 0, 0, str_223c,
-0, 0, 0, 0, str_2241,
-0, 0, str_2244,
-0, 0, str_2247,
-0, str_2249,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2260,
-0, str_2262,
-0, 0, 0, 0, 0, 0, 0, str_226a,
-str_226b,
-0, str_226d,
-str_226e,
-str_226f,
-str_2270,
-str_2271,
-0, 0, str_2274,
-str_2275,
-0, 0, str_2278,
-str_2279,
-0, 0, 0, 0, 0, 0, str_2280,
-str_2281,
-0, 0, str_2284,
-str_2285,
-0, 0, str_2288,
-str_2289,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2299,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_22ac,
-str_22ad,
-str_22ae,
-str_22af,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_22c4,
-str_22c5,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_22e0,
-str_22e1,
-str_22e2,
-str_22e3,
-0, 0, 0, 0, 0, 0, str_22ea,
-str_22eb,
-str_22ec,
-str_22ed,
-0, str_22ef,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_23[] = {
-0, 0, 0, str_2303,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2329,
-str_232a,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2373,
-str_2374,
-str_2375,
-0, 0, 0, 0, str_237a,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_24[] = {
-str_2400,
-str_2401,
-str_2402,
-str_2403,
-str_2404,
-str_2405,
-str_2406,
-str_2407,
-str_2408,
-str_2409,
-str_240a,
-str_240b,
-str_240c,
-str_240d,
-str_240e,
-str_240f,
-str_2410,
-str_2411,
-str_2412,
-str_2413,
-str_2414,
-str_2415,
-str_2416,
-str_2417,
-str_2418,
-str_2419,
-str_241a,
-str_241b,
-str_241c,
-str_241d,
-str_241e,
-str_241f,
-str_2420,
-str_2421,
-str_2422,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2460,
-str_2461,
-str_2462,
-str_2463,
-str_2464,
-str_2465,
-str_2466,
-str_2467,
-str_2468,
-str_2469,
-str_246a,
-str_246b,
-str_246c,
-str_246d,
-str_246e,
-str_246f,
-str_2470,
-str_2471,
-str_2472,
-str_2473,
-str_2474,
-str_2475,
-str_2476,
-str_2477,
-str_2478,
-str_2479,
-str_247a,
-str_247b,
-str_247c,
-str_247d,
-str_247e,
-str_247f,
-str_2480,
-str_2481,
-str_2482,
-str_2483,
-str_2484,
-str_2485,
-str_2486,
-str_2487,
-str_2488,
-str_2489,
-str_248a,
-str_248b,
-str_248c,
-str_248d,
-str_248e,
-str_248f,
-str_2490,
-str_2491,
-str_2492,
-str_2493,
-str_2494,
-str_2495,
-str_2496,
-str_2497,
-str_2498,
-str_2499,
-str_249a,
-str_249b,
-str_249c,
-str_249d,
-str_249e,
-str_249f,
-str_24a0,
-str_24a1,
-str_24a2,
-str_24a3,
-str_24a4,
-str_24a5,
-str_24a6,
-str_24a7,
-str_24a8,
-str_24a9,
-str_24aa,
-str_24ab,
-str_24ac,
-str_24ad,
-str_24ae,
-str_24af,
-str_24b0,
-str_24b1,
-str_24b2,
-str_24b3,
-str_24b4,
-str_24b5,
-str_24b6,
-str_24b7,
-str_24b8,
-str_24b9,
-str_24ba,
-str_24bb,
-str_24bc,
-str_24bd,
-str_24be,
-str_24bf,
-str_24c0,
-str_24c1,
-str_24c2,
-str_24c3,
-str_24c4,
-str_24c5,
-str_24c6,
-str_24c7,
-str_24c8,
-str_24c9,
-str_24ca,
-str_24cb,
-str_24cc,
-str_24cd,
-str_24ce,
-str_24cf,
-str_24d0,
-str_24d1,
-str_24d2,
-str_24d3,
-str_24d4,
-str_24d5,
-str_24d6,
-str_24d7,
-str_24d8,
-str_24d9,
-str_24da,
-str_24db,
-str_24dc,
-str_24dd,
-str_24de,
-str_24df,
-str_24e0,
-str_24e1,
-str_24e2,
-str_24e3,
-str_24e4,
-str_24e5,
-str_24e6,
-str_24e7,
-str_24e8,
-str_24e9,
-str_24ea,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_25[] = {
-str_2500,
-0, str_2502,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_25b3,
-0, 0, 0, 0, str_25b8,
-0, 0, 0, 0, str_25bd,
-0, 0, 0, 0, 0, 0, 0, 0, 0, str_25c7,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_25e6,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_26[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2662,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_27[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2731,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2758,
-0, 0, 0, 0, 0, 0, 0, 0, 0, str_2762,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_2a[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2a0c,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2a74,
-str_2a75,
-str_2a76,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2adc,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_2c[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2c7c,
-str_2c7d,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_2d[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2d6f,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_2e[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2e28,
-str_2e29,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2e9f,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_2ef3,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_2f[] = {
-str_2f00,
-str_2f01,
-str_2f02,
-str_2f03,
-str_2f04,
-str_2f05,
-str_2f06,
-str_2f07,
-str_2f08,
-str_2f09,
-str_2f0a,
-str_2f0b,
-str_2f0c,
-str_2f0d,
-str_2f0e,
-str_2f0f,
-str_2f10,
-str_2f11,
-str_2f12,
-str_2f13,
-str_2f14,
-str_2f15,
-str_2f16,
-str_2f17,
-str_2f18,
-str_2f19,
-str_2f1a,
-str_2f1b,
-str_2f1c,
-str_2f1d,
-str_2f1e,
-str_2f1f,
-str_2f20,
-str_2f21,
-str_2f22,
-str_2f23,
-str_2f24,
-str_2f25,
-str_2f26,
-str_2f27,
-str_2f28,
-str_2f29,
-str_2f2a,
-str_2f2b,
-str_2f2c,
-str_2f2d,
-str_2f2e,
-str_2f2f,
-str_2f30,
-str_2f31,
-str_2f32,
-str_2f33,
-str_2f34,
-str_2f35,
-str_2f36,
-str_2f37,
-str_2f38,
-str_2f39,
-str_2f3a,
-str_2f3b,
-str_2f3c,
-str_2f3d,
-str_2f3e,
-str_2f3f,
-str_2f40,
-str_2f41,
-str_2f42,
-str_2f43,
-str_2f44,
-str_2f45,
-str_2f46,
-str_2f47,
-str_2f48,
-str_2f49,
-str_2f4a,
-str_2f4b,
-str_2f4c,
-str_2f4d,
-str_2f4e,
-str_2f4f,
-str_2f50,
-str_2f51,
-str_2f52,
-str_2f53,
-str_2f54,
-str_2f55,
-str_2f56,
-str_2f57,
-str_2f58,
-str_2f59,
-str_2f5a,
-str_2f5b,
-str_2f5c,
-str_2f5d,
-str_2f5e,
-str_2f5f,
-str_2f60,
-str_2f61,
-str_2f62,
-str_2f63,
-str_2f64,
-str_2f65,
-str_2f66,
-str_2f67,
-str_2f68,
-str_2f69,
-str_2f6a,
-str_2f6b,
-str_2f6c,
-str_2f6d,
-str_2f6e,
-str_2f6f,
-str_2f70,
-str_2f71,
-str_2f72,
-str_2f73,
-str_2f74,
-str_2f75,
-str_2f76,
-str_2f77,
-str_2f78,
-str_2f79,
-str_2f7a,
-str_2f7b,
-str_2f7c,
-str_2f7d,
-str_2f7e,
-str_2f7f,
-str_2f80,
-str_2f81,
-str_2f82,
-str_2f83,
-str_2f84,
-str_2f85,
-str_2f86,
-str_2f87,
-str_2f88,
-str_2f89,
-str_2f8a,
-str_2f8b,
-str_2f8c,
-str_2f8d,
-str_2f8e,
-str_2f8f,
-str_2f90,
-str_2f91,
-str_2f92,
-str_2f93,
-str_2f94,
-str_2f95,
-str_2f96,
-str_2f97,
-str_2f98,
-str_2f99,
-str_2f9a,
-str_2f9b,
-str_2f9c,
-str_2f9d,
-str_2f9e,
-str_2f9f,
-str_2fa0,
-str_2fa1,
-str_2fa2,
-str_2fa3,
-str_2fa4,
-str_2fa5,
-str_2fa6,
-str_2fa7,
-str_2fa8,
-str_2fa9,
-str_2faa,
-str_2fab,
-str_2fac,
-str_2fad,
-str_2fae,
-str_2faf,
-str_2fb0,
-str_2fb1,
-str_2fb2,
-str_2fb3,
-str_2fb4,
-str_2fb5,
-str_2fb6,
-str_2fb7,
-str_2fb8,
-str_2fb9,
-str_2fba,
-str_2fbb,
-str_2fbc,
-str_2fbd,
-str_2fbe,
-str_2fbf,
-str_2fc0,
-str_2fc1,
-str_2fc2,
-str_2fc3,
-str_2fc4,
-str_2fc5,
-str_2fc6,
-str_2fc7,
-str_2fc8,
-str_2fc9,
-str_2fca,
-str_2fcb,
-str_2fcc,
-str_2fcd,
-str_2fce,
-str_2fcf,
-str_2fd0,
-str_2fd1,
-str_2fd2,
-str_2fd3,
-str_2fd4,
-str_2fd5,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_30[] = {
-str_3000,
-str_3001,
-0, 0, 0, 0, 0, 0, str_3008,
-str_3009,
-str_300a,
-str_300b,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_3036,
-0, str_3038,
-str_3039,
-str_303a,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_304c,
-0, str_304e,
-0, str_3050,
-0, str_3052,
-0, str_3054,
-0, str_3056,
-0, str_3058,
-0, str_305a,
-0, str_305c,
-0, str_305e,
-0, str_3060,
-0, str_3062,
-0, 0, str_3065,
-0, str_3067,
-0, str_3069,
-0, 0, 0, 0, 0, 0, str_3070,
-str_3071,
-0, str_3073,
-str_3074,
-0, str_3076,
-str_3077,
-0, str_3079,
-str_307a,
-0, str_307c,
-str_307d,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_3094,
-0, 0, 0, 0, 0, 0, str_309b,
-str_309c,
-0, str_309e,
-str_309f,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_30ac,
-0, str_30ae,
-0, str_30b0,
-0, str_30b2,
-0, str_30b4,
-0, str_30b6,
-0, str_30b8,
-0, str_30ba,
-0, str_30bc,
-0, str_30be,
-0, str_30c0,
-0, str_30c2,
-0, 0, str_30c5,
-0, str_30c7,
-0, str_30c9,
-0, 0, 0, 0, 0, 0, str_30d0,
-str_30d1,
-0, str_30d3,
-str_30d4,
-0, str_30d6,
-str_30d7,
-0, str_30d9,
-str_30da,
-0, str_30dc,
-str_30dd,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_30f4,
-0, 0, str_30f7,
-str_30f8,
-str_30f9,
-str_30fa,
-0, 0, 0, str_30fe,
-str_30ff,
-0};
-
-static const unichar_t * const tab_31[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_3131,
-str_3132,
-str_3133,
-str_3134,
-str_3135,
-str_3136,
-str_3137,
-str_3138,
-str_3139,
-str_313a,
-str_313b,
-str_313c,
-str_313d,
-str_313e,
-str_313f,
-str_3140,
-str_3141,
-str_3142,
-str_3143,
-str_3144,
-str_3145,
-str_3146,
-str_3147,
-str_3148,
-str_3149,
-str_314a,
-str_314b,
-str_314c,
-str_314d,
-str_314e,
-str_314f,
-str_3150,
-str_3151,
-str_3152,
-str_3153,
-str_3154,
-str_3155,
-str_3156,
-str_3157,
-str_3158,
-str_3159,
-str_315a,
-str_315b,
-str_315c,
-str_315d,
-str_315e,
-str_315f,
-str_3160,
-str_3161,
-str_3162,
-str_3163,
-str_3164,
-str_3165,
-str_3166,
-str_3167,
-str_3168,
-str_3169,
-str_316a,
-str_316b,
-str_316c,
-str_316d,
-str_316e,
-str_316f,
-str_3170,
-str_3171,
-str_3172,
-str_3173,
-str_3174,
-str_3175,
-str_3176,
-str_3177,
-str_3178,
-str_3179,
-str_317a,
-str_317b,
-str_317c,
-str_317d,
-str_317e,
-str_317f,
-str_3180,
-str_3181,
-str_3182,
-str_3183,
-str_3184,
-str_3185,
-str_3186,
-str_3187,
-str_3188,
-str_3189,
-str_318a,
-str_318b,
-str_318c,
-str_318d,
-str_318e,
-0, 0, 0, str_3192,
-str_3193,
-str_3194,
-str_3195,
-str_3196,
-str_3197,
-str_3198,
-str_3199,
-str_319a,
-str_319b,
-str_319c,
-str_319d,
-str_319e,
-str_319f,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_32[] = {
-str_3200,
-str_3201,
-str_3202,
-str_3203,
-str_3204,
-str_3205,
-str_3206,
-str_3207,
-str_3208,
-str_3209,
-str_320a,
-str_320b,
-str_320c,
-str_320d,
-str_320e,
-str_320f,
-str_3210,
-str_3211,
-str_3212,
-str_3213,
-str_3214,
-str_3215,
-str_3216,
-str_3217,
-str_3218,
-str_3219,
-str_321a,
-str_321b,
-str_321c,
-str_321d,
-str_321e,
-0, str_3220,
-str_3221,
-str_3222,
-str_3223,
-str_3224,
-str_3225,
-str_3226,
-str_3227,
-str_3228,
-str_3229,
-str_322a,
-str_322b,
-str_322c,
-str_322d,
-str_322e,
-str_322f,
-str_3230,
-str_3231,
-str_3232,
-str_3233,
-str_3234,
-str_3235,
-str_3236,
-str_3237,
-str_3238,
-str_3239,
-str_323a,
-str_323b,
-str_323c,
-str_323d,
-str_323e,
-str_323f,
-str_3240,
-str_3241,
-str_3242,
-str_3243,
-str_3244,
-str_3245,
-str_3246,
-str_3247,
-0, 0, 0, 0, 0, 0, 0, 0, str_3250,
-str_3251,
-str_3252,
-str_3253,
-str_3254,
-str_3255,
-str_3256,
-str_3257,
-str_3258,
-str_3259,
-str_325a,
-str_325b,
-str_325c,
-str_325d,
-str_325e,
-str_325f,
-str_3260,
-str_3261,
-str_3262,
-str_3263,
-str_3264,
-str_3265,
-str_3266,
-str_3267,
-str_3268,
-str_3269,
-str_326a,
-str_326b,
-str_326c,
-str_326d,
-str_326e,
-str_326f,
-str_3270,
-str_3271,
-str_3272,
-str_3273,
-str_3274,
-str_3275,
-str_3276,
-str_3277,
-str_3278,
-str_3279,
-str_327a,
-str_327b,
-str_327c,
-str_327d,
-str_327e,
-0, str_3280,
-str_3281,
-str_3282,
-str_3283,
-str_3284,
-str_3285,
-str_3286,
-str_3287,
-str_3288,
-str_3289,
-str_328a,
-str_328b,
-str_328c,
-str_328d,
-str_328e,
-str_328f,
-str_3290,
-str_3291,
-str_3292,
-str_3293,
-str_3294,
-str_3295,
-str_3296,
-str_3297,
-str_3298,
-str_3299,
-str_329a,
-str_329b,
-str_329c,
-str_329d,
-str_329e,
-str_329f,
-str_32a0,
-str_32a1,
-str_32a2,
-str_32a3,
-str_32a4,
-str_32a5,
-str_32a6,
-str_32a7,
-str_32a8,
-str_32a9,
-str_32aa,
-str_32ab,
-str_32ac,
-str_32ad,
-str_32ae,
-str_32af,
-str_32b0,
-str_32b1,
-str_32b2,
-str_32b3,
-str_32b4,
-str_32b5,
-str_32b6,
-str_32b7,
-str_32b8,
-str_32b9,
-str_32ba,
-str_32bb,
-str_32bc,
-str_32bd,
-str_32be,
-str_32bf,
-str_32c0,
-str_32c1,
-str_32c2,
-str_32c3,
-str_32c4,
-str_32c5,
-str_32c6,
-str_32c7,
-str_32c8,
-str_32c9,
-str_32ca,
-str_32cb,
-str_32cc,
-str_32cd,
-str_32ce,
-str_32cf,
-str_32d0,
-str_32d1,
-str_32d2,
-str_32d3,
-str_32d4,
-str_32d5,
-str_32d6,
-str_32d7,
-str_32d8,
-str_32d9,
-str_32da,
-str_32db,
-str_32dc,
-str_32dd,
-str_32de,
-str_32df,
-str_32e0,
-str_32e1,
-str_32e2,
-str_32e3,
-str_32e4,
-str_32e5,
-str_32e6,
-str_32e7,
-str_32e8,
-str_32e9,
-str_32ea,
-str_32eb,
-str_32ec,
-str_32ed,
-str_32ee,
-str_32ef,
-str_32f0,
-str_32f1,
-str_32f2,
-str_32f3,
-str_32f4,
-str_32f5,
-str_32f6,
-str_32f7,
-str_32f8,
-str_32f9,
-str_32fa,
-str_32fb,
-str_32fc,
-str_32fd,
-str_32fe,
-0, 0};
-
-static const unichar_t * const tab_33[] = {
-str_3300,
-str_3301,
-str_3302,
-str_3303,
-str_3304,
-str_3305,
-str_3306,
-str_3307,
-str_3308,
-str_3309,
-str_330a,
-str_330b,
-str_330c,
-str_330d,
-str_330e,
-str_330f,
-str_3310,
-str_3311,
-str_3312,
-str_3313,
-str_3314,
-str_3315,
-str_3316,
-str_3317,
-str_3318,
-str_3319,
-str_331a,
-str_331b,
-str_331c,
-str_331d,
-str_331e,
-str_331f,
-str_3320,
-str_3321,
-str_3322,
-str_3323,
-str_3324,
-str_3325,
-str_3326,
-str_3327,
-str_3328,
-str_3329,
-str_332a,
-str_332b,
-str_332c,
-str_332d,
-str_332e,
-str_332f,
-str_3330,
-str_3331,
-str_3332,
-str_3333,
-str_3334,
-str_3335,
-str_3336,
-str_3337,
-str_3338,
-str_3339,
-str_333a,
-str_333b,
-str_333c,
-str_333d,
-str_333e,
-str_333f,
-str_3340,
-str_3341,
-str_3342,
-str_3343,
-str_3344,
-str_3345,
-str_3346,
-str_3347,
-str_3348,
-str_3349,
-str_334a,
-str_334b,
-str_334c,
-str_334d,
-str_334e,
-str_334f,
-str_3350,
-str_3351,
-str_3352,
-str_3353,
-str_3354,
-str_3355,
-str_3356,
-str_3357,
-str_3358,
-str_3359,
-str_335a,
-str_335b,
-str_335c,
-str_335d,
-str_335e,
-str_335f,
-str_3360,
-str_3361,
-str_3362,
-str_3363,
-str_3364,
-str_3365,
-str_3366,
-str_3367,
-str_3368,
-str_3369,
-str_336a,
-str_336b,
-str_336c,
-str_336d,
-str_336e,
-str_336f,
-str_3370,
-str_3371,
-str_3372,
-str_3373,
-str_3374,
-str_3375,
-str_3376,
-str_3377,
-str_3378,
-str_3379,
-str_337a,
-str_337b,
-str_337c,
-str_337d,
-str_337e,
-str_337f,
-str_3380,
-str_3381,
-str_3382,
-str_3383,
-str_3384,
-str_3385,
-str_3386,
-str_3387,
-str_3388,
-str_3389,
-str_338a,
-str_338b,
-str_338c,
-str_338d,
-str_338e,
-str_338f,
-str_3390,
-str_3391,
-str_3392,
-str_3393,
-str_3394,
-str_3395,
-str_3396,
-str_3397,
-str_3398,
-str_3399,
-str_339a,
-str_339b,
-str_339c,
-str_339d,
-str_339e,
-str_339f,
-str_33a0,
-str_33a1,
-str_33a2,
-str_33a3,
-str_33a4,
-str_33a5,
-str_33a6,
-str_33a7,
-str_33a8,
-str_33a9,
-str_33aa,
-str_33ab,
-str_33ac,
-str_33ad,
-str_33ae,
-str_33af,
-str_33b0,
-str_33b1,
-str_33b2,
-str_33b3,
-str_33b4,
-str_33b5,
-str_33b6,
-str_33b7,
-str_33b8,
-str_33b9,
-str_33ba,
-str_33bb,
-str_33bc,
-str_33bd,
-str_33be,
-str_33bf,
-str_33c0,
-str_33c1,
-str_33c2,
-str_33c3,
-str_33c4,
-str_33c5,
-str_33c6,
-str_33c7,
-str_33c8,
-str_33c9,
-str_33ca,
-str_33cb,
-str_33cc,
-str_33cd,
-str_33ce,
-str_33cf,
-str_33d0,
-str_33d1,
-str_33d2,
-str_33d3,
-str_33d4,
-str_33d5,
-str_33d6,
-str_33d7,
-str_33d8,
-str_33d9,
-str_33da,
-str_33db,
-str_33dc,
-str_33dd,
-str_33de,
-str_33df,
-str_33e0,
-str_33e1,
-str_33e2,
-str_33e3,
-str_33e4,
-str_33e5,
-str_33e6,
-str_33e7,
-str_33e8,
-str_33e9,
-str_33ea,
-str_33eb,
-str_33ec,
-str_33ed,
-str_33ee,
-str_33ef,
-str_33f0,
-str_33f1,
-str_33f2,
-str_33f3,
-str_33f4,
-str_33f5,
-str_33f6,
-str_33f7,
-str_33f8,
-str_33f9,
-str_33fa,
-str_33fb,
-str_33fc,
-str_33fd,
-str_33fe,
-str_33ff,
-0};
-
-static const unichar_t * const tab_a7[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_a770,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_a7f8,
-str_a7f9,
-0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_f9[] = {
-str_f900,
-str_f901,
-str_f902,
-str_f903,
-str_f904,
-str_f905,
-str_f906,
-str_f907,
-str_f908,
-str_f909,
-str_f90a,
-str_f90b,
-str_f90c,
-str_f90d,
-str_f90e,
-str_f90f,
-str_f910,
-str_f911,
-str_f912,
-str_f913,
-str_f914,
-str_f915,
-str_f916,
-str_f917,
-str_f918,
-str_f919,
-str_f91a,
-str_f91b,
-str_f91c,
-str_f91d,
-str_f91e,
-str_f91f,
-str_f920,
-str_f921,
-str_f922,
-str_f923,
-str_f924,
-str_f925,
-str_f926,
-str_f927,
-str_f928,
-str_f929,
-str_f92a,
-str_f92b,
-str_f92c,
-str_f92d,
-str_f92e,
-str_f92f,
-str_f930,
-str_f931,
-str_f932,
-str_f933,
-str_f934,
-str_f935,
-str_f936,
-str_f937,
-str_f938,
-str_f939,
-str_f93a,
-str_f93b,
-str_f93c,
-str_f93d,
-str_f93e,
-str_f93f,
-str_f940,
-str_f941,
-str_f942,
-str_f943,
-str_f944,
-str_f945,
-str_f946,
-str_f947,
-str_f948,
-str_f949,
-str_f94a,
-str_f94b,
-str_f94c,
-str_f94d,
-str_f94e,
-str_f94f,
-str_f950,
-str_f951,
-str_f952,
-str_f953,
-str_f954,
-str_f955,
-str_f956,
-str_f957,
-str_f958,
-str_f959,
-str_f95a,
-str_f95b,
-str_f95c,
-str_f95d,
-str_f95e,
-str_f95f,
-str_f960,
-str_f961,
-str_f962,
-str_f963,
-str_f964,
-str_f965,
-str_f966,
-str_f967,
-str_f968,
-str_f969,
-str_f96a,
-str_f96b,
-str_f96c,
-str_f96d,
-str_f96e,
-str_f96f,
-str_f970,
-str_f971,
-str_f972,
-str_f973,
-str_f974,
-str_f975,
-str_f976,
-str_f977,
-str_f978,
-str_f979,
-str_f97a,
-str_f97b,
-str_f97c,
-str_f97d,
-str_f97e,
-str_f97f,
-str_f980,
-str_f981,
-str_f982,
-str_f983,
-str_f984,
-str_f985,
-str_f986,
-str_f987,
-str_f988,
-str_f989,
-str_f98a,
-str_f98b,
-str_f98c,
-str_f98d,
-str_f98e,
-str_f98f,
-str_f990,
-str_f991,
-str_f992,
-str_f993,
-str_f994,
-str_f995,
-str_f996,
-str_f997,
-str_f998,
-str_f999,
-str_f99a,
-str_f99b,
-str_f99c,
-str_f99d,
-str_f99e,
-str_f99f,
-str_f9a0,
-str_f9a1,
-str_f9a2,
-str_f9a3,
-str_f9a4,
-str_f9a5,
-str_f9a6,
-str_f9a7,
-str_f9a8,
-str_f9a9,
-str_f9aa,
-str_f9ab,
-str_f9ac,
-str_f9ad,
-str_f9ae,
-str_f9af,
-str_f9b0,
-str_f9b1,
-str_f9b2,
-str_f9b3,
-str_f9b4,
-str_f9b5,
-str_f9b6,
-str_f9b7,
-str_f9b8,
-str_f9b9,
-str_f9ba,
-str_f9bb,
-str_f9bc,
-str_f9bd,
-str_f9be,
-str_f9bf,
-str_f9c0,
-str_f9c1,
-str_f9c2,
-str_f9c3,
-str_f9c4,
-str_f9c5,
-str_f9c6,
-str_f9c7,
-str_f9c8,
-str_f9c9,
-str_f9ca,
-str_f9cb,
-str_f9cc,
-str_f9cd,
-str_f9ce,
-str_f9cf,
-str_f9d0,
-str_f9d1,
-str_f9d2,
-str_f9d3,
-str_f9d4,
-str_f9d5,
-str_f9d6,
-str_f9d7,
-str_f9d8,
-str_f9d9,
-str_f9da,
-str_f9db,
-str_f9dc,
-str_f9dd,
-str_f9de,
-str_f9df,
-str_f9e0,
-str_f9e1,
-str_f9e2,
-str_f9e3,
-str_f9e4,
-str_f9e5,
-str_f9e6,
-str_f9e7,
-str_f9e8,
-str_f9e9,
-str_f9ea,
-str_f9eb,
-str_f9ec,
-str_f9ed,
-str_f9ee,
-str_f9ef,
-str_f9f0,
-str_f9f1,
-str_f9f2,
-str_f9f3,
-str_f9f4,
-str_f9f5,
-str_f9f6,
-str_f9f7,
-str_f9f8,
-str_f9f9,
-str_f9fa,
-str_f9fb,
-str_f9fc,
-str_f9fd,
-str_f9fe,
-str_f9ff,
-0};
-
-static const unichar_t * const tab_fa[] = {
-str_fa00,
-str_fa01,
-str_fa02,
-str_fa03,
-str_fa04,
-str_fa05,
-str_fa06,
-str_fa07,
-str_fa08,
-str_fa09,
-str_fa0a,
-str_fa0b,
-str_fa0c,
-str_fa0d,
-0, 0, str_fa10,
-0, str_fa12,
-0, 0, str_fa15,
-str_fa16,
-str_fa17,
-str_fa18,
-str_fa19,
-str_fa1a,
-str_fa1b,
-str_fa1c,
-str_fa1d,
-str_fa1e,
-0, str_fa20,
-0, str_fa22,
-0, 0, str_fa25,
-str_fa26,
-0, 0, 0, str_fa2a,
-str_fa2b,
-str_fa2c,
-str_fa2d,
-str_fa2e,
-str_fa2f,
-str_fa30,
-str_fa31,
-str_fa32,
-str_fa33,
-str_fa34,
-str_fa35,
-str_fa36,
-str_fa37,
-str_fa38,
-str_fa39,
-str_fa3a,
-str_fa3b,
-str_fa3c,
-str_fa3d,
-str_fa3e,
-str_fa3f,
-str_fa40,
-str_fa41,
-str_fa42,
-str_fa43,
-str_fa44,
-str_fa45,
-str_fa46,
-str_fa47,
-str_fa48,
-str_fa49,
-str_fa4a,
-str_fa4b,
-str_fa4c,
-str_fa4d,
-str_fa4e,
-str_fa4f,
-str_fa50,
-str_fa51,
-str_fa52,
-str_fa53,
-str_fa54,
-str_fa55,
-str_fa56,
-str_fa57,
-str_fa58,
-str_fa59,
-str_fa5a,
-str_fa5b,
-str_fa5c,
-str_fa5d,
-str_fa5e,
-str_fa5f,
-str_fa60,
-str_fa61,
-str_fa62,
-str_fa63,
-str_fa64,
-str_fa65,
-str_fa66,
-str_fa67,
-str_fa68,
-str_fa69,
-str_fa6a,
-str_fa6b,
-str_fa6c,
-str_fa6d,
-0, 0, str_fa70,
-str_fa71,
-str_fa72,
-str_fa73,
-str_fa74,
-str_fa75,
-str_fa76,
-str_fa77,
-str_fa78,
-str_fa79,
-str_fa7a,
-str_fa7b,
-str_fa7c,
-str_fa7d,
-str_fa7e,
-str_fa7f,
-str_fa80,
-str_fa81,
-str_fa82,
-str_fa83,
-str_fa84,
-str_fa85,
-str_fa86,
-str_fa87,
-str_fa88,
-str_fa89,
-str_fa8a,
-str_fa8b,
-str_fa8c,
-str_fa8d,
-str_fa8e,
-str_fa8f,
-str_fa90,
-str_fa91,
-str_fa92,
-str_fa93,
-str_fa94,
-str_fa95,
-str_fa96,
-str_fa97,
-str_fa98,
-str_fa99,
-str_fa9a,
-str_fa9b,
-str_fa9c,
-str_fa9d,
-str_fa9e,
-str_fa9f,
-str_faa0,
-str_faa1,
-str_faa2,
-str_faa3,
-str_faa4,
-str_faa5,
-str_faa6,
-str_faa7,
-str_faa8,
-str_faa9,
-str_faaa,
-str_faab,
-str_faac,
-str_faad,
-str_faae,
-str_faaf,
-str_fab0,
-str_fab1,
-str_fab2,
-str_fab3,
-str_fab4,
-str_fab5,
-str_fab6,
-str_fab7,
-str_fab8,
-str_fab9,
-str_faba,
-str_fabb,
-str_fabc,
-str_fabd,
-str_fabe,
-str_fabf,
-str_fac0,
-str_fac1,
-str_fac2,
-str_fac3,
-str_fac4,
-str_fac5,
-str_fac6,
-str_fac7,
-str_fac8,
-str_fac9,
-str_faca,
-str_facb,
-str_facc,
-str_facd,
-str_face,
-str_facf,
-str_fad0,
-str_fad1,
-str_fad2,
-str_fad3,
-str_fad4,
-str_fad5,
-str_fad6,
-str_fad7,
-str_fad8,
-str_fad9,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-static const unichar_t * const tab_fb[] = {
-str_fb00,
-str_fb01,
-str_fb02,
-str_fb03,
-str_fb04,
-str_fb05,
-str_fb06,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_fb13,
-str_fb14,
-str_fb15,
-str_fb16,
-str_fb17,
-0, 0, 0, 0, 0, str_fb1d,
-0, str_fb1f,
-str_fb20,
-str_fb21,
-str_fb22,
-str_fb23,
-str_fb24,
-str_fb25,
-str_fb26,
-str_fb27,
-str_fb28,
-str_fb29,
-str_fb2a,
-str_fb2b,
-str_fb2c,
-str_fb2d,
-str_fb2e,
-str_fb2f,
-str_fb30,
-str_fb31,
-str_fb32,
-str_fb33,
-str_fb34,
-str_fb35,
-str_fb36,
-0, str_fb38,
-str_fb39,
-str_fb3a,
-str_fb3b,
-str_fb3c,
-0, str_fb3e,
-0, str_fb40,
-str_fb41,
-0, str_fb43,
-str_fb44,
-0, str_fb46,
-str_fb47,
-str_fb48,
-str_fb49,
-str_fb4a,
-str_fb4b,
-str_fb4c,
-str_fb4d,
-str_fb4e,
-str_fb4f,
-str_fb50,
-str_fb51,
-str_fb52,
-str_fb53,
-str_fb54,
-str_fb55,
-str_fb56,
-str_fb57,
-str_fb58,
-str_fb59,
-str_fb5a,
-str_fb5b,
-str_fb5c,
-str_fb5d,
-str_fb5e,
-str_fb5f,
-str_fb60,
-str_fb61,
-str_fb62,
-str_fb63,
-str_fb64,
-str_fb65,
-str_fb66,
-str_fb67,
-str_fb68,
-str_fb69,
-str_fb6a,
-str_fb6b,
-str_fb6c,
-str_fb6d,
-str_fb6e,
-str_fb6f,
-str_fb70,
-str_fb71,
-str_fb72,
-str_fb73,
-str_fb74,
-str_fb75,
-str_fb76,
-str_fb77,
-str_fb78,
-str_fb79,
-str_fb7a,
-str_fb7b,
-str_fb7c,
-str_fb7d,
-str_fb7e,
-str_fb7f,
-str_fb80,
-str_fb81,
-str_fb82,
-str_fb83,
-str_fb84,
-str_fb85,
-str_fb86,
-str_fb87,
-str_fb88,
-str_fb89,
-str_fb8a,
-str_fb8b,
-str_fb8c,
-str_fb8d,
-str_fb8e,
-str_fb8f,
-str_fb90,
-str_fb91,
-str_fb92,
-str_fb93,
-str_fb94,
-str_fb95,
-str_fb96,
-str_fb97,
-str_fb98,
-str_fb99,
-str_fb9a,
-str_fb9b,
-str_fb9c,
-str_fb9d,
-str_fb9e,
-str_fb9f,
-str_fba0,
-str_fba1,
-str_fba2,
-str_fba3,
-str_fba4,
-str_fba5,
-str_fba6,
-str_fba7,
-str_fba8,
-str_fba9,
-str_fbaa,
-str_fbab,
-str_fbac,
-str_fbad,
-str_fbae,
-str_fbaf,
-str_fbb0,
-str_fbb1,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_fbd3,
-str_fbd4,
-str_fbd5,
-str_fbd6,
-str_fbd7,
-str_fbd8,
-str_fbd9,
-str_fbda,
-str_fbdb,
-str_fbdc,
-str_fbdd,
-str_fbde,
-str_fbdf,
-str_fbe0,
-str_fbe1,
-str_fbe2,
-str_fbe3,
-str_fbe4,
-str_fbe5,
-str_fbe6,
-str_fbe7,
-str_fbe8,
-str_fbe9,
-str_fbea,
-str_fbeb,
-str_fbec,
-str_fbed,
-str_fbee,
-str_fbef,
-str_fbf0,
-str_fbf1,
-str_fbf2,
-str_fbf3,
-str_fbf4,
-str_fbf5,
-str_fbf6,
-str_fbf7,
-str_fbf8,
-str_fbf9,
-str_fbfa,
-str_fbfb,
-str_fbfc,
-str_fbfd,
-str_fbfe,
-str_fbff,
-0};
-
-static const unichar_t * const tab_fc[] = {
-str_fc00,
-str_fc01,
-str_fc02,
-str_fc03,
-str_fc04,
-str_fc05,
-str_fc06,
-str_fc07,
-str_fc08,
-str_fc09,
-str_fc0a,
-str_fc0b,
-str_fc0c,
-str_fc0d,
-str_fc0e,
-str_fc0f,
-str_fc10,
-str_fc11,
-str_fc12,
-str_fc13,
-str_fc14,
-str_fc15,
-str_fc16,
-str_fc17,
-str_fc18,
-str_fc19,
-str_fc1a,
-str_fc1b,
-str_fc1c,
-str_fc1d,
-str_fc1e,
-str_fc1f,
-str_fc20,
-str_fc21,
-str_fc22,
-str_fc23,
-str_fc24,
-str_fc25,
-str_fc26,
-str_fc27,
-str_fc28,
-str_fc29,
-str_fc2a,
-str_fc2b,
-str_fc2c,
-str_fc2d,
-str_fc2e,
-str_fc2f,
-str_fc30,
-str_fc31,
-str_fc32,
-str_fc33,
-str_fc34,
-str_fc35,
-str_fc36,
-str_fc37,
-str_fc38,
-str_fc39,
-str_fc3a,
-str_fc3b,
-str_fc3c,
-str_fc3d,
-str_fc3e,
-str_fc3f,
-str_fc40,
-str_fc41,
-str_fc42,
-str_fc43,
-str_fc44,
-str_fc45,
-str_fc46,
-str_fc47,
-str_fc48,
-str_fc49,
-str_fc4a,
-str_fc4b,
-str_fc4c,
-str_fc4d,
-str_fc4e,
-str_fc4f,
-str_fc50,
-str_fc51,
-str_fc52,
-str_fc53,
-str_fc54,
-str_fc55,
-str_fc56,
-str_fc57,
-str_fc58,
-str_fc59,
-str_fc5a,
-str_fc5b,
-str_fc5c,
-str_fc5d,
-str_fc5e,
-str_fc5f,
-str_fc60,
-str_fc61,
-str_fc62,
-str_fc63,
-str_fc64,
-str_fc65,
-str_fc66,
-str_fc67,
-str_fc68,
-str_fc69,
-str_fc6a,
-str_fc6b,
-str_fc6c,
-str_fc6d,
-str_fc6e,
-str_fc6f,
-str_fc70,
-str_fc71,
-str_fc72,
-str_fc73,
-str_fc74,
-str_fc75,
-str_fc76,
-str_fc77,
-str_fc78,
-str_fc79,
-str_fc7a,
-str_fc7b,
-str_fc7c,
-str_fc7d,
-str_fc7e,
-str_fc7f,
-str_fc80,
-str_fc81,
-str_fc82,
-str_fc83,
-str_fc84,
-str_fc85,
-str_fc86,
-str_fc87,
-str_fc88,
-str_fc89,
-str_fc8a,
-str_fc8b,
-str_fc8c,
-str_fc8d,
-str_fc8e,
-str_fc8f,
-str_fc90,
-str_fc91,
-str_fc92,
-str_fc93,
-str_fc94,
-str_fc95,
-str_fc96,
-str_fc97,
-str_fc98,
-str_fc99,
-str_fc9a,
-str_fc9b,
-str_fc9c,
-str_fc9d,
-str_fc9e,
-str_fc9f,
-str_fca0,
-str_fca1,
-str_fca2,
-str_fca3,
-str_fca4,
-str_fca5,
-str_fca6,
-str_fca7,
-str_fca8,
-str_fca9,
-str_fcaa,
-str_fcab,
-str_fcac,
-str_fcad,
-str_fcae,
-str_fcaf,
-str_fcb0,
-str_fcb1,
-str_fcb2,
-str_fcb3,
-str_fcb4,
-str_fcb5,
-str_fcb6,
-str_fcb7,
-str_fcb8,
-str_fcb9,
-str_fcba,
-str_fcbb,
-str_fcbc,
-str_fcbd,
-str_fcbe,
-str_fcbf,
-str_fcc0,
-str_fcc1,
-str_fcc2,
-str_fcc3,
-str_fcc4,
-str_fcc5,
-str_fcc6,
-str_fcc7,
-str_fcc8,
-str_fcc9,
-str_fcca,
-str_fccb,
-str_fccc,
-str_fccd,
-str_fcce,
-str_fccf,
-str_fcd0,
-str_fcd1,
-str_fcd2,
-str_fcd3,
-str_fcd4,
-str_fcd5,
-str_fcd6,
-str_fcd7,
-str_fcd8,
-str_fcd9,
-str_fcda,
-str_fcdb,
-str_fcdc,
-str_fcdd,
-str_fcde,
-str_fcdf,
-str_fce0,
-str_fce1,
-str_fce2,
-str_fce3,
-str_fce4,
-str_fce5,
-str_fce6,
-str_fce7,
-str_fce8,
-str_fce9,
-str_fcea,
-str_fceb,
-str_fcec,
-str_fced,
-str_fcee,
-str_fcef,
-str_fcf0,
-str_fcf1,
-str_fcf2,
-str_fcf3,
-str_fcf4,
-str_fcf5,
-str_fcf6,
-str_fcf7,
-str_fcf8,
-str_fcf9,
-str_fcfa,
-str_fcfb,
-str_fcfc,
-str_fcfd,
-str_fcfe,
-str_fcff,
-0};
-
-static const unichar_t * const tab_fd[] = {
-str_fd00,
-str_fd01,
-str_fd02,
-str_fd03,
-str_fd04,
-str_fd05,
-str_fd06,
-str_fd07,
-str_fd08,
-str_fd09,
-str_fd0a,
-str_fd0b,
-str_fd0c,
-str_fd0d,
-str_fd0e,
-str_fd0f,
-str_fd10,
-str_fd11,
-str_fd12,
-str_fd13,
-str_fd14,
-str_fd15,
-str_fd16,
-str_fd17,
-str_fd18,
-str_fd19,
-str_fd1a,
-str_fd1b,
-str_fd1c,
-str_fd1d,
-str_fd1e,
-str_fd1f,
-str_fd20,
-str_fd21,
-str_fd22,
-str_fd23,
-str_fd24,
-str_fd25,
-str_fd26,
-str_fd27,
-str_fd28,
-str_fd29,
-str_fd2a,
-str_fd2b,
-str_fd2c,
-str_fd2d,
-str_fd2e,
-str_fd2f,
-str_fd30,
-str_fd31,
-str_fd32,
-str_fd33,
-str_fd34,
-str_fd35,
-str_fd36,
-str_fd37,
-str_fd38,
-str_fd39,
-str_fd3a,
-str_fd3b,
-str_fd3c,
-str_fd3d,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_fd50,
-str_fd51,
-str_fd52,
-str_fd53,
-str_fd54,
-str_fd55,
-str_fd56,
-str_fd57,
-str_fd58,
-str_fd59,
-str_fd5a,
-str_fd5b,
-str_fd5c,
-str_fd5d,
-str_fd5e,
-str_fd5f,
-str_fd60,
-str_fd61,
-str_fd62,
-str_fd63,
-str_fd64,
-str_fd65,
-str_fd66,
-str_fd67,
-str_fd68,
-str_fd69,
-str_fd6a,
-str_fd6b,
-str_fd6c,
-str_fd6d,
-str_fd6e,
-str_fd6f,
-str_fd70,
-str_fd71,
-str_fd72,
-str_fd73,
-str_fd74,
-str_fd75,
-str_fd76,
-str_fd77,
-str_fd78,
-str_fd79,
-str_fd7a,
-str_fd7b,
-str_fd7c,
-str_fd7d,
-str_fd7e,
-str_fd7f,
-str_fd80,
-str_fd81,
-str_fd82,
-str_fd83,
-str_fd84,
-str_fd85,
-str_fd86,
-str_fd87,
-str_fd88,
-str_fd89,
-str_fd8a,
-str_fd8b,
-str_fd8c,
-str_fd8d,
-str_fd8e,
-str_fd8f,
-0, 0, str_fd92,
-str_fd93,
-str_fd94,
-str_fd95,
-str_fd96,
-str_fd97,
-str_fd98,
-str_fd99,
-str_fd9a,
-str_fd9b,
-str_fd9c,
-str_fd9d,
-str_fd9e,
-str_fd9f,
-str_fda0,
-str_fda1,
-str_fda2,
-str_fda3,
-str_fda4,
-str_fda5,
-str_fda6,
-str_fda7,
-str_fda8,
-str_fda9,
-str_fdaa,
-str_fdab,
-str_fdac,
-str_fdad,
-str_fdae,
-str_fdaf,
-str_fdb0,
-str_fdb1,
-str_fdb2,
-str_fdb3,
-str_fdb4,
-str_fdb5,
-str_fdb6,
-str_fdb7,
-str_fdb8,
-str_fdb9,
-str_fdba,
-str_fdbb,
-str_fdbc,
-str_fdbd,
-str_fdbe,
-str_fdbf,
-str_fdc0,
-str_fdc1,
-str_fdc2,
-str_fdc3,
-str_fdc4,
-str_fdc5,
-str_fdc6,
-str_fdc7,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_fdf0,
-str_fdf1,
-str_fdf2,
-str_fdf3,
-str_fdf4,
-str_fdf5,
-str_fdf6,
-str_fdf7,
-str_fdf8,
-str_fdf9,
-str_fdfa,
-str_fdfb,
-str_fdfc,
-0, 0, 0, 0};
-
-static const unichar_t * const tab_fe[] = {
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_fe10,
-str_fe11,
-str_fe12,
-str_fe13,
-str_fe14,
-str_fe15,
-str_fe16,
-str_fe17,
-str_fe18,
-str_fe19,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, str_fe30,
-str_fe31,
-str_fe32,
-str_fe33,
-str_fe34,
-str_fe35,
-str_fe36,
-str_fe37,
-str_fe38,
-str_fe39,
-str_fe3a,
-str_fe3b,
-str_fe3c,
-str_fe3d,
-str_fe3e,
-str_fe3f,
-str_fe40,
-str_fe41,
-str_fe42,
-str_fe43,
-str_fe44,
-0, 0, str_fe47,
-str_fe48,
-str_fe49,
-str_fe4a,
-str_fe4b,
-str_fe4c,
-str_fe4d,
-str_fe4e,
-str_fe4f,
-str_fe50,
-str_fe51,
-str_fe52,
-0, str_fe54,
-str_fe55,
-str_fe56,
-str_fe57,
-str_fe58,
-str_fe59,
-str_fe5a,
-str_fe5b,
-str_fe5c,
-str_fe5d,
-str_fe5e,
-str_fe5f,
-str_fe60,
-str_fe61,
-str_fe62,
-str_fe63,
-str_fe64,
-str_fe65,
-str_fe66,
-0, str_fe68,
-str_fe69,
-str_fe6a,
-str_fe6b,
-0, 0, 0, 0, str_fe70,
-str_fe71,
-str_fe72,
-0, str_fe74,
-0, str_fe76,
-str_fe77,
-str_fe78,
-str_fe79,
-str_fe7a,
-str_fe7b,
-str_fe7c,
-str_fe7d,
-str_fe7e,
-str_fe7f,
-str_fe80,
-str_fe81,
-str_fe82,
-str_fe83,
-str_fe84,
-str_fe85,
-str_fe86,
-str_fe87,
-str_fe88,
-str_fe89,
-str_fe8a,
-str_fe8b,
-str_fe8c,
-str_fe8d,
-str_fe8e,
-str_fe8f,
-str_fe90,
-str_fe91,
-str_fe92,
-str_fe93,
-str_fe94,
-str_fe95,
-str_fe96,
-str_fe97,
-str_fe98,
-str_fe99,
-str_fe9a,
-str_fe9b,
-str_fe9c,
-str_fe9d,
-str_fe9e,
-str_fe9f,
-str_fea0,
-str_fea1,
-str_fea2,
-str_fea3,
-str_fea4,
-str_fea5,
-str_fea6,
-str_fea7,
-str_fea8,
-str_fea9,
-str_feaa,
-str_feab,
-str_feac,
-str_fead,
-str_feae,
-str_feaf,
-str_feb0,
-str_feb1,
-str_feb2,
-str_feb3,
-str_feb4,
-str_feb5,
-str_feb6,
-str_feb7,
-str_feb8,
-str_feb9,
-str_feba,
-str_febb,
-str_febc,
-str_febd,
-str_febe,
-str_febf,
-str_fec0,
-str_fec1,
-str_fec2,
-str_fec3,
-str_fec4,
-str_fec5,
-str_fec6,
-str_fec7,
-str_fec8,
-str_fec9,
-str_feca,
-str_fecb,
-str_fecc,
-str_fecd,
-str_fece,
-str_fecf,
-str_fed0,
-str_fed1,
-str_fed2,
-str_fed3,
-str_fed4,
-str_fed5,
-str_fed6,
-str_fed7,
-str_fed8,
-str_fed9,
-str_feda,
-str_fedb,
-str_fedc,
-str_fedd,
-str_fede,
-str_fedf,
-str_fee0,
-str_fee1,
-str_fee2,
-str_fee3,
-str_fee4,
-str_fee5,
-str_fee6,
-str_fee7,
-str_fee8,
-str_fee9,
-str_feea,
-str_feeb,
-str_feec,
-str_feed,
-str_feee,
-str_feef,
-str_fef0,
-str_fef1,
-str_fef2,
-str_fef3,
-str_fef4,
-str_fef5,
-str_fef6,
-str_fef7,
-str_fef8,
-str_fef9,
-str_fefa,
-str_fefb,
-str_fefc,
-0, 0, 0, 0};
-
-static const unichar_t * const tab_ff[] = {
-0, str_ff01,
-str_ff02,
-str_ff03,
-str_ff04,
-str_ff05,
-str_ff06,
-str_ff07,
-str_ff08,
-str_ff09,
-str_ff0a,
-str_ff0b,
-str_ff0c,
-str_ff0d,
-str_ff0e,
-str_ff0f,
-str_ff10,
-str_ff11,
-str_ff12,
-str_ff13,
-str_ff14,
-str_ff15,
-str_ff16,
-str_ff17,
-str_ff18,
-str_ff19,
-str_ff1a,
-str_ff1b,
-str_ff1c,
-str_ff1d,
-str_ff1e,
-str_ff1f,
-str_ff20,
-str_ff21,
-str_ff22,
-str_ff23,
-str_ff24,
-str_ff25,
-str_ff26,
-str_ff27,
-str_ff28,
-str_ff29,
-str_ff2a,
-str_ff2b,
-str_ff2c,
-str_ff2d,
-str_ff2e,
-str_ff2f,
-str_ff30,
-str_ff31,
-str_ff32,
-str_ff33,
-str_ff34,
-str_ff35,
-str_ff36,
-str_ff37,
-str_ff38,
-str_ff39,
-str_ff3a,
-str_ff3b,
-str_ff3c,
-str_ff3d,
-str_ff3e,
-str_ff3f,
-str_ff40,
-str_ff41,
-str_ff42,
-str_ff43,
-str_ff44,
-str_ff45,
-str_ff46,
-str_ff47,
-str_ff48,
-str_ff49,
-str_ff4a,
-str_ff4b,
-str_ff4c,
-str_ff4d,
-str_ff4e,
-str_ff4f,
-str_ff50,
-str_ff51,
-str_ff52,
-str_ff53,
-str_ff54,
-str_ff55,
-str_ff56,
-str_ff57,
-str_ff58,
-str_ff59,
-str_ff5a,
-str_ff5b,
-str_ff5c,
-str_ff5d,
-str_ff5e,
-str_ff5f,
-str_ff60,
-str_ff61,
-str_ff62,
-str_ff63,
-str_ff64,
-str_ff65,
-str_ff66,
-str_ff67,
-str_ff68,
-str_ff69,
-str_ff6a,
-str_ff6b,
-str_ff6c,
-str_ff6d,
-str_ff6e,
-str_ff6f,
-str_ff70,
-str_ff71,
-str_ff72,
-str_ff73,
-str_ff74,
-str_ff75,
-str_ff76,
-str_ff77,
-str_ff78,
-str_ff79,
-str_ff7a,
-str_ff7b,
-str_ff7c,
-str_ff7d,
-str_ff7e,
-str_ff7f,
-str_ff80,
-str_ff81,
-str_ff82,
-str_ff83,
-str_ff84,
-str_ff85,
-str_ff86,
-str_ff87,
-str_ff88,
-str_ff89,
-str_ff8a,
-str_ff8b,
-str_ff8c,
-str_ff8d,
-str_ff8e,
-str_ff8f,
-str_ff90,
-str_ff91,
-str_ff92,
-str_ff93,
-str_ff94,
-str_ff95,
-str_ff96,
-str_ff97,
-str_ff98,
-str_ff99,
-str_ff9a,
-str_ff9b,
-str_ff9c,
-str_ff9d,
-str_ff9e,
-str_ff9f,
-str_ffa0,
-str_ffa1,
-str_ffa2,
-str_ffa3,
-str_ffa4,
-str_ffa5,
-str_ffa6,
-str_ffa7,
-str_ffa8,
-str_ffa9,
-str_ffaa,
-str_ffab,
-str_ffac,
-str_ffad,
-str_ffae,
-str_ffaf,
-str_ffb0,
-str_ffb1,
-str_ffb2,
-str_ffb3,
-str_ffb4,
-str_ffb5,
-str_ffb6,
-str_ffb7,
-str_ffb8,
-str_ffb9,
-str_ffba,
-str_ffbb,
-str_ffbc,
-str_ffbd,
-str_ffbe,
-0, 0, 0, str_ffc2,
-str_ffc3,
-str_ffc4,
-str_ffc5,
-str_ffc6,
-str_ffc7,
-0, 0, str_ffca,
-str_ffcb,
-str_ffcc,
-str_ffcd,
-str_ffce,
-str_ffcf,
-0, 0, str_ffd2,
-str_ffd3,
-str_ffd4,
-str_ffd5,
-str_ffd6,
-str_ffd7,
-0, 0, str_ffda,
-str_ffdb,
-str_ffdc,
-0, 0, 0, str_ffe0,
-str_ffe1,
-str_ffe2,
-str_ffe3,
-str_ffe4,
-str_ffe5,
-str_ffe6,
-0, str_ffe8,
-str_ffe9,
-str_ffea,
-str_ffeb,
-str_ffec,
-str_ffed,
-str_ffee,
-0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-const unichar_t *const * const unicode_alternates[] = {
-tab_0,
-tab_1,
-tab_2,
-tab_3,
-tab_4,
-tab_5,
-tab_6,
-up_allzeros, up_allzeros, tab_9,
-tab_a,
-tab_b,
-tab_c,
-tab_d,
-tab_e,
-tab_f,
-tab_10,
-tab_11,
-up_allzeros, tab_13,
-up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, tab_1b,
-up_allzeros, tab_1d,
-tab_1e,
-tab_1f,
-tab_20,
-tab_21,
-tab_22,
-tab_23,
-tab_24,
-tab_25,
-tab_26,
-tab_27,
-up_allzeros, up_allzeros, tab_2a,
-up_allzeros, tab_2c,
-tab_2d,
-tab_2e,
-tab_2f,
-tab_30,
-tab_31,
-tab_32,
-tab_33,
-up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, tab_a7,
-up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, up_allzeros, tab_f9,
-tab_fa,
-tab_fb,
-tab_fc,
-tab_fd,
-tab_fe,
-tab_ff,
-0};
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/ustring.c b/dviware/dvisvgm/libs/ff-woff/fontforge/ustring.c
deleted file mode 100644
index c67cffe25c..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/ustring.c
+++ /dev/null
@@ -1,225 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#include <fontforge-config.h>
-
-#include "ustring.h"
-
-int u_strlen(register const unichar_t *str) {
- register int len = 0;
-
- while ( *str++!='\0' )
- ++len;
-return( len );
-}
-
-unichar_t *utf82u_strncpy(unichar_t *ubuf,const char *utf8buf,int len) {
- unichar_t *upt=ubuf, *uend=ubuf+len-1;
- const uint8 *pt = (const uint8 *) utf8buf, *end = pt+strlen(utf8buf);
- int w, w2;
-
- while ( pt<end && *pt!='\0' && upt<uend ) {
- if ( *pt<=127 )
- *upt = *pt++;
- else if ( *pt<=0xdf ) {
- *upt = ((*pt&0x1f)<<6) | (pt[1]&0x3f);
- pt += 2;
- } else if ( *pt<=0xef ) {
- *upt = ((*pt&0xf)<<12) | ((pt[1]&0x3f)<<6) | (pt[2]&0x3f);
- pt += 3;
- } else {
- w = ( ((*pt&0x7)<<2) | ((pt[1]&0x30)>>4) )-1;
- w = (w<<6) | ((pt[1]&0xf)<<2) | ((pt[2]&0x30)>>4);
- w2 = ((pt[2]&0xf)<<6) | (pt[3]&0x3f);
- *upt = w*0x400 + w2 + 0x10000;
- pt += 4;
- }
- ++upt;
- }
- *upt = '\0';
-return( ubuf );
-}
-
-unichar_t *utf82u_copy(const char *utf8buf) {
- int len;
- unichar_t *ubuf;
-
- if ( utf8buf==NULL )
-return( NULL );
-
- len = strlen(utf8buf);
- ubuf = (unichar_t *) malloc((len+1)*sizeof(unichar_t));
-return( utf82u_strncpy(ubuf,utf8buf,len+1));
-}
-
-char *latin1_2_utf8_strcpy(char *utf8buf,const char *lbuf) {
- char *pt = utf8buf;
- const unsigned char *lpt = (const unsigned char *) lbuf;
-
- while ( *lpt ) {
- if ( *lpt<0x80 )
- *pt++ = *lpt;
- else {
- *pt++ = 0xc0 | (*lpt>>6);
- *pt++ = 0x80 | (*lpt&0x3f);
- }
- ++lpt;
- }
- *pt = '\0';
-return( utf8buf );
-}
-
-char *latin1_2_utf8_copy(const char *lbuf) {
- int len;
- char *utf8buf;
-
- if ( lbuf==NULL )
-return( NULL );
-
- len = strlen(lbuf);
- utf8buf = (char *) malloc(2*len+1);
-return( latin1_2_utf8_strcpy(utf8buf,lbuf));
-}
-
-int32 utf8_ildb(const char **_text) {
- int32 val= -1;
- int ch;
- const uint8 *text = (const uint8 *) *_text;
- /* Increment and load character */
-
- if ( text==NULL )
- return( val );
- else if ( (ch = *text++)<0x80 ) {
- val = ch;
- } else if ( ch<=0xbf ) {
- /* error */
- } else if ( ch<=0xdf ) {
- if ( *text>=0x80 && *text<0xc0 )
- val = ((ch&0x1f)<<6) | (*text++&0x3f);
- } else if ( ch<=0xef ) {
- if ( *text>=0x80 && *text<0xc0 && text[1]>=0x80 && text[1]<0xc0 ) {
- val = ((ch&0xf)<<12) | ((text[0]&0x3f)<<6) | (text[1]&0x3f);
- text += 2;
- }
- } else {
- int w = ( ((ch&0x7)<<2) | ((text[0]&0x30)>>4) )-1, w2;
- w = (w<<6) | ((text[0]&0xf)<<2) | ((text[1]&0x30)>>4);
- w2 = ((text[1]&0xf)<<6) | (text[2]&0x3f);
- val = w*0x400 + w2 + 0x10000;
- if ( *text<0x80 || text[1]<0x80 || text[2]<0x80 ||
- *text>=0xc0 || text[1]>=0xc0 || text[2]>=0xc0 )
- val = -1;
- else
- text += 3;
- }
- *_text = (const char *) text;
-return( val );
-}
-
-char *utf8_idpb(char *utf8_text,uint32 ch,int flags) {
-/* Increment and deposit character, no '\0' appended */
-/* NOTE: Unicode only needs range of 17x65535 values */
-/* and strings must be long enough to hold +4 chars. */
-/* ISO/IEC 10646 description of UTF8 allows encoding */
-/* character values up to U+7FFFFFFF before RFC3629. */
-
- if ( ch>0x7fffffff || \
- (!(flags&UTF8IDPB_OLDLIMIT) && ((ch>=0xd800 && ch<=0xdfff) || ch>=17*65536)) )
- return( 0 ); /* Error, ch is out of range */
-
- if ( (flags&(UTF8IDPB_UCS2|UTF8IDPB_UTF16|UTF8IDPB_UTF32)) ) {
- if ( (flags&UTF8IDPB_UCS2) && ch>0xffff )
- return( 0 ); /* Error, ch is out of range */
- if ( (flags&UTF8IDPB_UTF32) ) {
- *utf8_text++ = ((ch>>24)&0xff);
- *utf8_text++ = ((ch>>16)&0xff);
- ch &= 0xffff;
- }
- if ( ch>0xffff ) {
- /* ...here if a utf16 encoded value */
- unsigned long us;
- ch -= 0x10000;
- us = (ch>>10)+0xd800;
- *utf8_text++ = us>>8;
- *utf8_text++ = us&0xff;
- ch = (ch&0x3ff)+0xdc00;
- }
- *utf8_text++ = ch>>8;
- ch &= 0xff;
- } else if ( ch>127 || (ch==0 && (flags&UTF8IDPB_NOZERO)) ) {
- if ( ch<=0x7ff )
- /* ch>=0x80 && ch<=0x7ff */
- *utf8_text++ = 0xc0 | (ch>>6);
- else {
- if ( ch<=0xffff )
- /* ch>=0x800 && ch<=0xffff */
- *utf8_text++ = 0xe0 | (ch>>12);
- else {
- if ( ch<=0x1fffff )
- /* ch>=0x10000 && ch<=0x1fffff */
- *utf8_text++ = 0xf0 | (ch>>18);
- else {
- if ( ch<=0x3ffffff )
- /* ch>=0x200000 && ch<=0x3ffffff */
- *utf8_text++ = 0xf8 | (ch>>24);
- else {
- /* ch>=0x4000000 && ch<=0x7fffffff */
- *utf8_text++ = 0xfc | (ch>>30);
- *utf8_text++ = 0x80 | ((ch>>24)&0x3f);
- }
- *utf8_text++ = 0x80 | ((ch>>18)&0x3f);
- }
- *utf8_text++ = 0x80 | ((ch>>12)&0x3f);
- }
- *utf8_text++ = 0x80 | ((ch>>6)&0x3f);
- }
- ch = 0x80 | (ch&0x3f);
- }
- *utf8_text++ = ch;
- return( utf8_text );
-}
-
-int utf8_valid(const char *str) {
- /* Is this a valid utf8 string? */
- int ch;
-
- while ( (ch=utf8_ildb(&str))!='\0' )
- if ( ch==-1 )
-return( false );
-
-return( true );
-}
-
-long utf82u_strlen(const char *utf8_str) {
-/* Count how many shorts needed to represent in UCS2 */
- int32 ch;
- long len = 0;
-
- while ( (ch = utf8_ildb(&utf8_str))>0 && ++len>0 )
- if ( ch>=0x10000 )
- ++len;
- return( len );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/utype.c b/dviware/dvisvgm/libs/ff-woff/fontforge/utype.c
deleted file mode 100644
index a438d4536a..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/utype.c
+++ /dev/null
@@ -1,24592 +0,0 @@
-/* Copyright: 2001 George Williams */
-/* License: BSD-3-clause */
-/* Contributions: Werner Lemberg, Khaled Hosny, Joe Da Silva */
-
-#include "utype.h"
-
-/* This file was generated using the program 'makeutype' */
-
-const unsigned short ____tolower[]= { 0,
- 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007, /* 0x0000 */
- 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
- 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
- 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
- 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
- 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
- 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
- 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
- 0x0040, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, /* 0x0040 */
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
- 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
- 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
- 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
- 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
- 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087, /* 0x0080 */
- 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
- 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
- 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
- 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
- 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
- 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
- 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
- 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7, /* 0x00c0 */
- 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00d7,
- 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00df,
- 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
- 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
- 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
- 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff,
- 0x0101, 0x0101, 0x0103, 0x0103, 0x0105, 0x0105, 0x0107, 0x0107, /* 0x0100 */
- 0x0109, 0x0109, 0x010b, 0x010b, 0x010d, 0x010d, 0x010f, 0x010f,
- 0x0111, 0x0111, 0x0113, 0x0113, 0x0115, 0x0115, 0x0117, 0x0117,
- 0x0119, 0x0119, 0x011b, 0x011b, 0x011d, 0x011d, 0x011f, 0x011f,
- 0x0121, 0x0121, 0x0123, 0x0123, 0x0125, 0x0125, 0x0127, 0x0127,
- 0x0129, 0x0129, 0x012b, 0x012b, 0x012d, 0x012d, 0x012f, 0x012f,
- 0x0069, 0x0131, 0x0133, 0x0133, 0x0135, 0x0135, 0x0137, 0x0137,
- 0x0138, 0x013a, 0x013a, 0x013c, 0x013c, 0x013e, 0x013e, 0x0140,
- 0x0140, 0x0142, 0x0142, 0x0144, 0x0144, 0x0146, 0x0146, 0x0148, /* 0x0140 */
- 0x0148, 0x0149, 0x014b, 0x014b, 0x014d, 0x014d, 0x014f, 0x014f,
- 0x0151, 0x0151, 0x0153, 0x0153, 0x0155, 0x0155, 0x0157, 0x0157,
- 0x0159, 0x0159, 0x015b, 0x015b, 0x015d, 0x015d, 0x015f, 0x015f,
- 0x0161, 0x0161, 0x0163, 0x0163, 0x0165, 0x0165, 0x0167, 0x0167,
- 0x0169, 0x0169, 0x016b, 0x016b, 0x016d, 0x016d, 0x016f, 0x016f,
- 0x0171, 0x0171, 0x0173, 0x0173, 0x0175, 0x0175, 0x0177, 0x0177,
- 0x00ff, 0x017a, 0x017a, 0x017c, 0x017c, 0x017e, 0x017e, 0x017f,
- 0x0180, 0x0253, 0x0183, 0x0183, 0x0185, 0x0185, 0x0254, 0x0188, /* 0x0180 */
- 0x0188, 0x0256, 0x0257, 0x018c, 0x018c, 0x018d, 0x01dd, 0x0259,
- 0x025b, 0x0192, 0x0192, 0x0260, 0x0263, 0x0195, 0x0269, 0x0268,
- 0x0199, 0x0199, 0x019a, 0x019b, 0x026f, 0x0272, 0x019e, 0x0275,
- 0x01a1, 0x01a1, 0x01a3, 0x01a3, 0x01a5, 0x01a5, 0x0280, 0x01a8,
- 0x01a8, 0x0283, 0x01aa, 0x01ab, 0x01ad, 0x01ad, 0x0288, 0x01b0,
- 0x01b0, 0x028a, 0x028b, 0x01b4, 0x01b4, 0x01b6, 0x01b6, 0x0292,
- 0x01b9, 0x01b9, 0x01ba, 0x01bb, 0x01bd, 0x01bd, 0x01be, 0x01bf,
- 0x01c0, 0x01c1, 0x01c2, 0x01c3, 0x01c6, 0x01c6, 0x01c6, 0x01c9, /* 0x01c0 */
- 0x01c9, 0x01c9, 0x01cc, 0x01cc, 0x01cc, 0x01ce, 0x01ce, 0x01d0,
- 0x01d0, 0x01d2, 0x01d2, 0x01d4, 0x01d4, 0x01d6, 0x01d6, 0x01d8,
- 0x01d8, 0x01da, 0x01da, 0x01dc, 0x01dc, 0x01dd, 0x01df, 0x01df,
- 0x01e1, 0x01e1, 0x01e3, 0x01e3, 0x01e5, 0x01e5, 0x01e7, 0x01e7,
- 0x01e9, 0x01e9, 0x01eb, 0x01eb, 0x01ed, 0x01ed, 0x01ef, 0x01ef,
- 0x01f0, 0x01f3, 0x01f3, 0x01f3, 0x01f5, 0x01f5, 0x0195, 0x01bf,
- 0x01f9, 0x01f9, 0x01fb, 0x01fb, 0x01fd, 0x01fd, 0x01ff, 0x01ff,
- 0x0201, 0x0201, 0x0203, 0x0203, 0x0205, 0x0205, 0x0207, 0x0207, /* 0x0200 */
- 0x0209, 0x0209, 0x020b, 0x020b, 0x020d, 0x020d, 0x020f, 0x020f,
- 0x0211, 0x0211, 0x0213, 0x0213, 0x0215, 0x0215, 0x0217, 0x0217,
- 0x0219, 0x0219, 0x021b, 0x021b, 0x021d, 0x021d, 0x021f, 0x021f,
- 0x019e, 0x0221, 0x0223, 0x0223, 0x0225, 0x0225, 0x0227, 0x0227,
- 0x0229, 0x0229, 0x022b, 0x022b, 0x022d, 0x022d, 0x022f, 0x022f,
- 0x0231, 0x0231, 0x0233, 0x0233, 0x0234, 0x0235, 0x0236, 0x0237,
- 0x0238, 0x0239, 0x2c65, 0x023c, 0x023c, 0x019a, 0x2c66, 0x023f,
- 0x0240, 0x0242, 0x0242, 0x0180, 0x0289, 0x028c, 0x0247, 0x0247, /* 0x0240 */
- 0x0249, 0x0249, 0x024b, 0x024b, 0x024d, 0x024d, 0x024f, 0x024f,
- 0x0250, 0x0251, 0x0252, 0x0253, 0x0254, 0x0255, 0x0256, 0x0257,
- 0x0258, 0x0259, 0x025a, 0x025b, 0x025c, 0x025d, 0x025e, 0x025f,
- 0x0260, 0x0261, 0x0262, 0x0263, 0x0264, 0x0265, 0x0266, 0x0267,
- 0x0268, 0x0269, 0x026a, 0x026b, 0x026c, 0x026d, 0x026e, 0x026f,
- 0x0270, 0x0271, 0x0272, 0x0273, 0x0274, 0x0275, 0x0276, 0x0277,
- 0x0278, 0x0279, 0x027a, 0x027b, 0x027c, 0x027d, 0x027e, 0x027f,
- 0x0280, 0x0281, 0x0282, 0x0283, 0x0284, 0x0285, 0x0286, 0x0287, /* 0x0280 */
- 0x0288, 0x0289, 0x028a, 0x028b, 0x028c, 0x028d, 0x028e, 0x028f,
- 0x0290, 0x0291, 0x0292, 0x0293, 0x0294, 0x0295, 0x0296, 0x0297,
- 0x0298, 0x0299, 0x029a, 0x029b, 0x029c, 0x029d, 0x029e, 0x029f,
- 0x02a0, 0x02a1, 0x02a2, 0x02a3, 0x02a4, 0x02a5, 0x02a6, 0x02a7,
- 0x02a8, 0x02a9, 0x02aa, 0x02ab, 0x02ac, 0x02ad, 0x02ae, 0x02af,
- 0x02b0, 0x02b1, 0x02b2, 0x02b3, 0x02b4, 0x02b5, 0x02b6, 0x02b7,
- 0x02b8, 0x02b9, 0x02ba, 0x02bb, 0x02bc, 0x02bd, 0x02be, 0x02bf,
- 0x02c0, 0x02c1, 0x02c2, 0x02c3, 0x02c4, 0x02c5, 0x02c6, 0x02c7, /* 0x02c0 */
- 0x02c8, 0x02c9, 0x02ca, 0x02cb, 0x02cc, 0x02cd, 0x02ce, 0x02cf,
- 0x02d0, 0x02d1, 0x02d2, 0x02d3, 0x02d4, 0x02d5, 0x02d6, 0x02d7,
- 0x02d8, 0x02d9, 0x02da, 0x02db, 0x02dc, 0x02dd, 0x02de, 0x02df,
- 0x02e0, 0x02e1, 0x02e2, 0x02e3, 0x02e4, 0x02e5, 0x02e6, 0x02e7,
- 0x02e8, 0x02e9, 0x02ea, 0x02eb, 0x02ec, 0x02ed, 0x02ee, 0x02ef,
- 0x02f0, 0x02f1, 0x02f2, 0x02f3, 0x02f4, 0x02f5, 0x02f6, 0x02f7,
- 0x02f8, 0x02f9, 0x02fa, 0x02fb, 0x02fc, 0x02fd, 0x02fe, 0x02ff,
- 0x0300, 0x0301, 0x0302, 0x0303, 0x0304, 0x0305, 0x0306, 0x0307, /* 0x0300 */
- 0x0308, 0x0309, 0x030a, 0x030b, 0x030c, 0x030d, 0x030e, 0x030f,
- 0x0310, 0x0311, 0x0312, 0x0313, 0x0314, 0x0315, 0x0316, 0x0317,
- 0x0318, 0x0319, 0x031a, 0x031b, 0x031c, 0x031d, 0x031e, 0x031f,
- 0x0320, 0x0321, 0x0322, 0x0323, 0x0324, 0x0325, 0x0326, 0x0327,
- 0x0328, 0x0329, 0x032a, 0x032b, 0x032c, 0x032d, 0x032e, 0x032f,
- 0x0330, 0x0331, 0x0332, 0x0333, 0x0334, 0x0335, 0x0336, 0x0337,
- 0x0338, 0x0339, 0x033a, 0x033b, 0x033c, 0x033d, 0x033e, 0x033f,
- 0x0340, 0x0341, 0x0342, 0x0343, 0x0344, 0x0345, 0x0346, 0x0347, /* 0x0340 */
- 0x0348, 0x0349, 0x034a, 0x034b, 0x034c, 0x034d, 0x034e, 0x034f,
- 0x0350, 0x0351, 0x0352, 0x0353, 0x0354, 0x0355, 0x0356, 0x0357,
- 0x0358, 0x0359, 0x035a, 0x035b, 0x035c, 0x035d, 0x035e, 0x035f,
- 0x0360, 0x0361, 0x0362, 0x0363, 0x0364, 0x0365, 0x0366, 0x0367,
- 0x0368, 0x0369, 0x036a, 0x036b, 0x036c, 0x036d, 0x036e, 0x036f,
- 0x0371, 0x0371, 0x0373, 0x0373, 0x0374, 0x0375, 0x0377, 0x0377,
- 0x0000, 0x0000, 0x037a, 0x037b, 0x037c, 0x037d, 0x037e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0384, 0x0385, 0x03ac, 0x0387, /* 0x0380 */
- 0x03ad, 0x03ae, 0x03af, 0x0000, 0x03cc, 0x0000, 0x03cd, 0x03ce,
- 0x0390, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
- 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf,
- 0x03c0, 0x03c1, 0x0000, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7,
- 0x03c8, 0x03c9, 0x03ca, 0x03cb, 0x03ac, 0x03ad, 0x03ae, 0x03af,
- 0x03b0, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
- 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf,
- 0x03c0, 0x03c1, 0x03c2, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7, /* 0x03c0 */
- 0x03c8, 0x03c9, 0x03ca, 0x03cb, 0x03cc, 0x03cd, 0x03ce, 0x03d7,
- 0x03d0, 0x03d1, 0x03d2, 0x03d3, 0x03d4, 0x03d5, 0x03d6, 0x03d7,
- 0x03d9, 0x03d9, 0x03db, 0x03db, 0x03dd, 0x03dd, 0x03df, 0x03df,
- 0x03e1, 0x03e1, 0x03e3, 0x03e3, 0x03e5, 0x03e5, 0x03e7, 0x03e7,
- 0x03e9, 0x03e9, 0x03eb, 0x03eb, 0x03ed, 0x03ed, 0x03ef, 0x03ef,
- 0x03f0, 0x03f1, 0x03f2, 0x03f3, 0x03b8, 0x03f5, 0x03f6, 0x03f8,
- 0x03f8, 0x03f2, 0x03fb, 0x03fb, 0x03fc, 0x037b, 0x037c, 0x037d,
- 0x0450, 0x0451, 0x0452, 0x0453, 0x0454, 0x0455, 0x0456, 0x0457, /* 0x0400 */
- 0x0458, 0x0459, 0x045a, 0x045b, 0x045c, 0x045d, 0x045e, 0x045f,
- 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
- 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
- 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
- 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
- 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
- 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
- 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, /* 0x0440 */
- 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
- 0x0450, 0x0451, 0x0452, 0x0453, 0x0454, 0x0455, 0x0456, 0x0457,
- 0x0458, 0x0459, 0x045a, 0x045b, 0x045c, 0x045d, 0x045e, 0x045f,
- 0x0461, 0x0461, 0x0463, 0x0463, 0x0465, 0x0465, 0x0467, 0x0467,
- 0x0469, 0x0469, 0x046b, 0x046b, 0x046d, 0x046d, 0x046f, 0x046f,
- 0x0471, 0x0471, 0x0473, 0x0473, 0x0475, 0x0475, 0x0477, 0x0477,
- 0x0479, 0x0479, 0x047b, 0x047b, 0x047d, 0x047d, 0x047f, 0x047f,
- 0x0481, 0x0481, 0x0482, 0x0483, 0x0484, 0x0485, 0x0486, 0x0487, /* 0x0480 */
- 0x0488, 0x0489, 0x048b, 0x048b, 0x048d, 0x048d, 0x048f, 0x048f,
- 0x0491, 0x0491, 0x0493, 0x0493, 0x0495, 0x0495, 0x0497, 0x0497,
- 0x0499, 0x0499, 0x049b, 0x049b, 0x049d, 0x049d, 0x049f, 0x049f,
- 0x04a1, 0x04a1, 0x04a3, 0x04a3, 0x04a5, 0x04a5, 0x04a7, 0x04a7,
- 0x04a9, 0x04a9, 0x04ab, 0x04ab, 0x04ad, 0x04ad, 0x04af, 0x04af,
- 0x04b1, 0x04b1, 0x04b3, 0x04b3, 0x04b5, 0x04b5, 0x04b7, 0x04b7,
- 0x04b9, 0x04b9, 0x04bb, 0x04bb, 0x04bd, 0x04bd, 0x04bf, 0x04bf,
- 0x04cf, 0x04c2, 0x04c2, 0x04c4, 0x04c4, 0x04c6, 0x04c6, 0x04c8, /* 0x04c0 */
- 0x04c8, 0x04ca, 0x04ca, 0x04cc, 0x04cc, 0x04ce, 0x04ce, 0x04cf,
- 0x04d1, 0x04d1, 0x04d3, 0x04d3, 0x04d5, 0x04d5, 0x04d7, 0x04d7,
- 0x04d9, 0x04d9, 0x04db, 0x04db, 0x04dd, 0x04dd, 0x04df, 0x04df,
- 0x04e1, 0x04e1, 0x04e3, 0x04e3, 0x04e5, 0x04e5, 0x04e7, 0x04e7,
- 0x04e9, 0x04e9, 0x04eb, 0x04eb, 0x04ed, 0x04ed, 0x04ef, 0x04ef,
- 0x04f1, 0x04f1, 0x04f3, 0x04f3, 0x04f5, 0x04f5, 0x04f7, 0x04f7,
- 0x04f9, 0x04f9, 0x04fb, 0x04fb, 0x04fd, 0x04fd, 0x04ff, 0x04ff,
- 0x0501, 0x0501, 0x0503, 0x0503, 0x0505, 0x0505, 0x0507, 0x0507, /* 0x0500 */
- 0x0509, 0x0509, 0x050b, 0x050b, 0x050d, 0x050d, 0x050f, 0x050f,
- 0x0511, 0x0511, 0x0513, 0x0513, 0x0515, 0x0515, 0x0517, 0x0517,
- 0x0519, 0x0519, 0x051b, 0x051b, 0x051d, 0x051d, 0x051f, 0x051f,
- 0x0521, 0x0521, 0x0523, 0x0523, 0x0525, 0x0525, 0x0527, 0x0527,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0561, 0x0562, 0x0563, 0x0564, 0x0565, 0x0566, 0x0567,
- 0x0568, 0x0569, 0x056a, 0x056b, 0x056c, 0x056d, 0x056e, 0x056f,
- 0x0570, 0x0571, 0x0572, 0x0573, 0x0574, 0x0575, 0x0576, 0x0577, /* 0x0540 */
- 0x0578, 0x0579, 0x057a, 0x057b, 0x057c, 0x057d, 0x057e, 0x057f,
- 0x0580, 0x0581, 0x0582, 0x0583, 0x0584, 0x0585, 0x0586, 0x0000,
- 0x0000, 0x0559, 0x055a, 0x055b, 0x055c, 0x055d, 0x055e, 0x055f,
- 0x0000, 0x0561, 0x0562, 0x0563, 0x0564, 0x0565, 0x0566, 0x0567,
- 0x0568, 0x0569, 0x056a, 0x056b, 0x056c, 0x056d, 0x056e, 0x056f,
- 0x0570, 0x0571, 0x0572, 0x0573, 0x0574, 0x0575, 0x0576, 0x0577,
- 0x0578, 0x0579, 0x057a, 0x057b, 0x057c, 0x057d, 0x057e, 0x057f,
- 0x0580, 0x0581, 0x0582, 0x0583, 0x0584, 0x0585, 0x0586, 0x0587, /* 0x0580 */
- 0x0000, 0x0589, 0x058a, 0x0000, 0x0000, 0x0000, 0x0000, 0x058f,
- 0x0000, 0x0591, 0x0592, 0x0593, 0x0594, 0x0595, 0x0596, 0x0597,
- 0x0598, 0x0599, 0x059a, 0x059b, 0x059c, 0x059d, 0x059e, 0x059f,
- 0x05a0, 0x05a1, 0x05a2, 0x05a3, 0x05a4, 0x05a5, 0x05a6, 0x05a7,
- 0x05a8, 0x05a9, 0x05aa, 0x05ab, 0x05ac, 0x05ad, 0x05ae, 0x05af,
- 0x05b0, 0x05b1, 0x05b2, 0x05b3, 0x05b4, 0x05b5, 0x05b6, 0x05b7,
- 0x05b8, 0x05b9, 0x05ba, 0x05bb, 0x05bc, 0x05bd, 0x05be, 0x05bf,
- 0x05c0, 0x05c1, 0x05c2, 0x05c3, 0x05c4, 0x05c5, 0x05c6, 0x05c7, /* 0x05c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
- 0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
- 0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
- 0x05e8, 0x05e9, 0x05ea, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x05f0, 0x05f1, 0x05f2, 0x05f3, 0x05f4, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0600, 0x0601, 0x0602, 0x0603, 0x0604, 0x0000, 0x0606, 0x0607, /* 0x0600 */
- 0x0608, 0x0609, 0x060a, 0x060b, 0x060c, 0x060d, 0x060e, 0x060f,
- 0x0610, 0x0611, 0x0612, 0x0613, 0x0614, 0x0615, 0x0616, 0x0617,
- 0x0618, 0x0619, 0x061a, 0x061b, 0x061c, 0x0000, 0x061e, 0x061f,
- 0x0620, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
- 0x0628, 0x0629, 0x062a, 0x062b, 0x062c, 0x062d, 0x062e, 0x062f,
- 0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637,
- 0x0638, 0x0639, 0x063a, 0x063b, 0x063c, 0x063d, 0x063e, 0x063f,
- 0x0640, 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647, /* 0x0640 */
- 0x0648, 0x0649, 0x064a, 0x064b, 0x064c, 0x064d, 0x064e, 0x064f,
- 0x0650, 0x0651, 0x0652, 0x0653, 0x0654, 0x0655, 0x0656, 0x0657,
- 0x0658, 0x0659, 0x065a, 0x065b, 0x065c, 0x065d, 0x065e, 0x065f,
- 0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667,
- 0x0668, 0x0669, 0x066a, 0x066b, 0x066c, 0x066d, 0x066e, 0x066f,
- 0x0670, 0x0671, 0x0672, 0x0673, 0x0674, 0x0675, 0x0676, 0x0677,
- 0x0678, 0x0679, 0x067a, 0x067b, 0x067c, 0x067d, 0x067e, 0x067f,
- 0x0680, 0x0681, 0x0682, 0x0683, 0x0684, 0x0685, 0x0686, 0x0687, /* 0x0680 */
- 0x0688, 0x0689, 0x068a, 0x068b, 0x068c, 0x068d, 0x068e, 0x068f,
- 0x0690, 0x0691, 0x0692, 0x0693, 0x0694, 0x0695, 0x0696, 0x0697,
- 0x0698, 0x0699, 0x069a, 0x069b, 0x069c, 0x069d, 0x069e, 0x069f,
- 0x06a0, 0x06a1, 0x06a2, 0x06a3, 0x06a4, 0x06a5, 0x06a6, 0x06a7,
- 0x06a8, 0x06a9, 0x06aa, 0x06ab, 0x06ac, 0x06ad, 0x06ae, 0x06af,
- 0x06b0, 0x06b1, 0x06b2, 0x06b3, 0x06b4, 0x06b5, 0x06b6, 0x06b7,
- 0x06b8, 0x06b9, 0x06ba, 0x06bb, 0x06bc, 0x06bd, 0x06be, 0x06bf,
- 0x06c0, 0x06c1, 0x06c2, 0x06c3, 0x06c4, 0x06c5, 0x06c6, 0x06c7, /* 0x06c0 */
- 0x06c8, 0x06c9, 0x06ca, 0x06cb, 0x06cc, 0x06cd, 0x06ce, 0x06cf,
- 0x06d0, 0x06d1, 0x06d2, 0x06d3, 0x06d4, 0x06d5, 0x06d6, 0x06d7,
- 0x06d8, 0x06d9, 0x06da, 0x06db, 0x06dc, 0x06dd, 0x06de, 0x06df,
- 0x06e0, 0x06e1, 0x06e2, 0x06e3, 0x06e4, 0x06e5, 0x06e6, 0x06e7,
- 0x06e8, 0x06e9, 0x06ea, 0x06eb, 0x06ec, 0x06ed, 0x06ee, 0x06ef,
- 0x06f0, 0x06f1, 0x06f2, 0x06f3, 0x06f4, 0x06f5, 0x06f6, 0x06f7,
- 0x06f8, 0x06f9, 0x06fa, 0x06fb, 0x06fc, 0x06fd, 0x06fe, 0x06ff,
- 0x0700, 0x0701, 0x0702, 0x0703, 0x0704, 0x0705, 0x0706, 0x0707, /* 0x0700 */
- 0x0708, 0x0709, 0x070a, 0x070b, 0x070c, 0x070d, 0x0000, 0x070f,
- 0x0710, 0x0711, 0x0712, 0x0713, 0x0714, 0x0715, 0x0716, 0x0717,
- 0x0718, 0x0719, 0x071a, 0x071b, 0x071c, 0x071d, 0x071e, 0x071f,
- 0x0720, 0x0721, 0x0722, 0x0723, 0x0724, 0x0725, 0x0726, 0x0727,
- 0x0728, 0x0729, 0x072a, 0x072b, 0x072c, 0x072d, 0x072e, 0x072f,
- 0x0730, 0x0731, 0x0732, 0x0733, 0x0734, 0x0735, 0x0736, 0x0737,
- 0x0738, 0x0739, 0x073a, 0x073b, 0x073c, 0x073d, 0x073e, 0x073f,
- 0x0740, 0x0741, 0x0742, 0x0743, 0x0744, 0x0745, 0x0746, 0x0747, /* 0x0740 */
- 0x0748, 0x0749, 0x074a, 0x0000, 0x0000, 0x074d, 0x074e, 0x074f,
- 0x0750, 0x0751, 0x0752, 0x0753, 0x0754, 0x0755, 0x0756, 0x0757,
- 0x0758, 0x0759, 0x075a, 0x075b, 0x075c, 0x075d, 0x075e, 0x075f,
- 0x0760, 0x0761, 0x0762, 0x0763, 0x0764, 0x0765, 0x0766, 0x0767,
- 0x0768, 0x0769, 0x076a, 0x076b, 0x076c, 0x076d, 0x076e, 0x076f,
- 0x0770, 0x0771, 0x0772, 0x0773, 0x0774, 0x0775, 0x0776, 0x0777,
- 0x0778, 0x0779, 0x077a, 0x077b, 0x077c, 0x077d, 0x077e, 0x077f,
- 0x0780, 0x0781, 0x0782, 0x0783, 0x0784, 0x0785, 0x0786, 0x0787, /* 0x0780 */
- 0x0788, 0x0789, 0x078a, 0x078b, 0x078c, 0x078d, 0x078e, 0x078f,
- 0x0790, 0x0791, 0x0792, 0x0793, 0x0794, 0x0795, 0x0796, 0x0797,
- 0x0798, 0x0799, 0x079a, 0x079b, 0x079c, 0x079d, 0x079e, 0x079f,
- 0x07a0, 0x07a1, 0x07a2, 0x07a3, 0x07a4, 0x07a5, 0x07a6, 0x07a7,
- 0x07a8, 0x07a9, 0x07aa, 0x07ab, 0x07ac, 0x07ad, 0x07ae, 0x07af,
- 0x07b0, 0x07b1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x07c0, 0x07c1, 0x07c2, 0x07c3, 0x07c4, 0x07c5, 0x07c6, 0x07c7, /* 0x07c0 */
- 0x07c8, 0x07c9, 0x07ca, 0x07cb, 0x07cc, 0x07cd, 0x07ce, 0x07cf,
- 0x07d0, 0x07d1, 0x07d2, 0x07d3, 0x07d4, 0x07d5, 0x07d6, 0x07d7,
- 0x07d8, 0x07d9, 0x07da, 0x07db, 0x07dc, 0x07dd, 0x07de, 0x07df,
- 0x07e0, 0x07e1, 0x07e2, 0x07e3, 0x07e4, 0x07e5, 0x07e6, 0x07e7,
- 0x07e8, 0x07e9, 0x07ea, 0x07eb, 0x07ec, 0x07ed, 0x07ee, 0x07ef,
- 0x07f0, 0x07f1, 0x07f2, 0x07f3, 0x07f4, 0x07f5, 0x07f6, 0x07f7,
- 0x07f8, 0x07f9, 0x07fa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0800, 0x0801, 0x0802, 0x0803, 0x0804, 0x0805, 0x0806, 0x0807, /* 0x0800 */
- 0x0808, 0x0809, 0x080a, 0x080b, 0x080c, 0x080d, 0x080e, 0x080f,
- 0x0810, 0x0811, 0x0812, 0x0813, 0x0814, 0x0815, 0x0816, 0x0817,
- 0x0818, 0x0819, 0x081a, 0x081b, 0x081c, 0x081d, 0x081e, 0x081f,
- 0x0820, 0x0821, 0x0822, 0x0823, 0x0824, 0x0825, 0x0826, 0x0827,
- 0x0828, 0x0829, 0x082a, 0x082b, 0x082c, 0x082d, 0x0000, 0x0000,
- 0x0830, 0x0831, 0x0832, 0x0833, 0x0834, 0x0835, 0x0836, 0x0837,
- 0x0838, 0x0839, 0x083a, 0x083b, 0x083c, 0x083d, 0x083e, 0x0000,
- 0x0840, 0x0841, 0x0842, 0x0843, 0x0844, 0x0845, 0x0846, 0x0847, /* 0x0840 */
- 0x0848, 0x0849, 0x084a, 0x084b, 0x084c, 0x084d, 0x084e, 0x084f,
- 0x0850, 0x0851, 0x0852, 0x0853, 0x0854, 0x0855, 0x0856, 0x0857,
- 0x0858, 0x0859, 0x085a, 0x085b, 0x0000, 0x0000, 0x085e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x08a0, 0x0000, 0x08a2, 0x08a3, 0x08a4, 0x08a5, 0x08a6, 0x08a7,
- 0x08a8, 0x08a9, 0x08aa, 0x08ab, 0x08ac, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x08c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x08e4, 0x08e5, 0x08e6, 0x08e7,
- 0x08e8, 0x08e9, 0x08ea, 0x08eb, 0x08ec, 0x08ed, 0x08ee, 0x08ef,
- 0x08f0, 0x08f1, 0x08f2, 0x08f3, 0x08f4, 0x08f5, 0x08f6, 0x08f7,
- 0x08f8, 0x08f9, 0x08fa, 0x08fb, 0x08fc, 0x08fd, 0x08fe, 0x0000,
- 0x0900, 0x0901, 0x0902, 0x0903, 0x0904, 0x0905, 0x0906, 0x0907, /* 0x0900 */
- 0x0908, 0x0909, 0x090a, 0x090b, 0x090c, 0x090d, 0x090e, 0x090f,
- 0x0910, 0x0911, 0x0912, 0x0913, 0x0914, 0x0915, 0x0916, 0x0917,
- 0x0918, 0x0919, 0x091a, 0x091b, 0x091c, 0x091d, 0x091e, 0x091f,
- 0x0920, 0x0921, 0x0922, 0x0923, 0x0924, 0x0925, 0x0926, 0x0927,
- 0x0928, 0x0929, 0x092a, 0x092b, 0x092c, 0x092d, 0x092e, 0x092f,
- 0x0930, 0x0931, 0x0932, 0x0933, 0x0934, 0x0935, 0x0936, 0x0937,
- 0x0938, 0x0939, 0x093a, 0x093b, 0x093c, 0x093d, 0x093e, 0x093f,
- 0x0940, 0x0941, 0x0942, 0x0943, 0x0944, 0x0945, 0x0946, 0x0947, /* 0x0940 */
- 0x0948, 0x0949, 0x094a, 0x094b, 0x094c, 0x094d, 0x094e, 0x094f,
- 0x0950, 0x0951, 0x0952, 0x0953, 0x0954, 0x0955, 0x0956, 0x0957,
- 0x0958, 0x0959, 0x095a, 0x095b, 0x095c, 0x095d, 0x095e, 0x095f,
- 0x0960, 0x0961, 0x0962, 0x0963, 0x0964, 0x0965, 0x0966, 0x0967,
- 0x0968, 0x0969, 0x096a, 0x096b, 0x096c, 0x096d, 0x096e, 0x096f,
- 0x0970, 0x0971, 0x0972, 0x0973, 0x0974, 0x0975, 0x0976, 0x0977,
- 0x0000, 0x0979, 0x097a, 0x097b, 0x097c, 0x097d, 0x097e, 0x097f,
- 0x0000, 0x0981, 0x0982, 0x0983, 0x0000, 0x0985, 0x0986, 0x0987, /* 0x0980 */
- 0x0988, 0x0989, 0x098a, 0x098b, 0x098c, 0x0000, 0x0000, 0x098f,
- 0x0990, 0x0000, 0x0000, 0x0993, 0x0994, 0x0995, 0x0996, 0x0997,
- 0x0998, 0x0999, 0x099a, 0x099b, 0x099c, 0x099d, 0x099e, 0x099f,
- 0x09a0, 0x09a1, 0x09a2, 0x09a3, 0x09a4, 0x09a5, 0x09a6, 0x09a7,
- 0x09a8, 0x0000, 0x09aa, 0x09ab, 0x09ac, 0x09ad, 0x09ae, 0x09af,
- 0x09b0, 0x0000, 0x09b2, 0x0000, 0x0000, 0x0000, 0x09b6, 0x09b7,
- 0x09b8, 0x09b9, 0x0000, 0x0000, 0x09bc, 0x09bd, 0x09be, 0x09bf,
- 0x09c0, 0x09c1, 0x09c2, 0x09c3, 0x09c4, 0x0000, 0x0000, 0x09c7, /* 0x09c0 */
- 0x09c8, 0x0000, 0x0000, 0x09cb, 0x09cc, 0x09cd, 0x09ce, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x09d7,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x09dc, 0x09dd, 0x0000, 0x09df,
- 0x09e0, 0x09e1, 0x09e2, 0x09e3, 0x0000, 0x0000, 0x09e6, 0x09e7,
- 0x09e8, 0x09e9, 0x09ea, 0x09eb, 0x09ec, 0x09ed, 0x09ee, 0x09ef,
- 0x09f0, 0x09f1, 0x09f2, 0x09f3, 0x09f4, 0x09f5, 0x09f6, 0x09f7,
- 0x09f8, 0x09f9, 0x09fa, 0x09fb, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0a01, 0x0a02, 0x0a03, 0x0000, 0x0a05, 0x0a06, 0x0a07, /* 0x0a00 */
- 0x0a08, 0x0a09, 0x0a0a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0a0f,
- 0x0a10, 0x0000, 0x0000, 0x0a13, 0x0a14, 0x0a15, 0x0a16, 0x0a17,
- 0x0a18, 0x0a19, 0x0a1a, 0x0a1b, 0x0a1c, 0x0a1d, 0x0a1e, 0x0a1f,
- 0x0a20, 0x0a21, 0x0a22, 0x0a23, 0x0a24, 0x0a25, 0x0a26, 0x0a27,
- 0x0a28, 0x0000, 0x0a2a, 0x0a2b, 0x0a2c, 0x0a2d, 0x0a2e, 0x0a2f,
- 0x0a30, 0x0000, 0x0a32, 0x0a33, 0x0000, 0x0a35, 0x0a36, 0x0000,
- 0x0a38, 0x0a39, 0x0000, 0x0000, 0x0a3c, 0x0000, 0x0a3e, 0x0a3f,
- 0x0a40, 0x0a41, 0x0a42, 0x0000, 0x0000, 0x0000, 0x0000, 0x0a47, /* 0x0a40 */
- 0x0a48, 0x0000, 0x0000, 0x0a4b, 0x0a4c, 0x0a4d, 0x0000, 0x0000,
- 0x0000, 0x0a51, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0a59, 0x0a5a, 0x0a5b, 0x0a5c, 0x0000, 0x0a5e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0a66, 0x0a67,
- 0x0a68, 0x0a69, 0x0a6a, 0x0a6b, 0x0a6c, 0x0a6d, 0x0a6e, 0x0a6f,
- 0x0a70, 0x0a71, 0x0a72, 0x0a73, 0x0a74, 0x0a75, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0a81, 0x0a82, 0x0a83, 0x0000, 0x0a85, 0x0a86, 0x0a87, /* 0x0a80 */
- 0x0a88, 0x0a89, 0x0a8a, 0x0a8b, 0x0a8c, 0x0a8d, 0x0000, 0x0a8f,
- 0x0a90, 0x0a91, 0x0000, 0x0a93, 0x0a94, 0x0a95, 0x0a96, 0x0a97,
- 0x0a98, 0x0a99, 0x0a9a, 0x0a9b, 0x0a9c, 0x0a9d, 0x0a9e, 0x0a9f,
- 0x0aa0, 0x0aa1, 0x0aa2, 0x0aa3, 0x0aa4, 0x0aa5, 0x0aa6, 0x0aa7,
- 0x0aa8, 0x0000, 0x0aaa, 0x0aab, 0x0aac, 0x0aad, 0x0aae, 0x0aaf,
- 0x0ab0, 0x0000, 0x0ab2, 0x0ab3, 0x0000, 0x0ab5, 0x0ab6, 0x0ab7,
- 0x0ab8, 0x0ab9, 0x0000, 0x0000, 0x0abc, 0x0abd, 0x0abe, 0x0abf,
- 0x0ac0, 0x0ac1, 0x0ac2, 0x0ac3, 0x0ac4, 0x0ac5, 0x0000, 0x0ac7, /* 0x0ac0 */
- 0x0ac8, 0x0ac9, 0x0000, 0x0acb, 0x0acc, 0x0acd, 0x0000, 0x0000,
- 0x0ad0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0ae0, 0x0ae1, 0x0ae2, 0x0ae3, 0x0000, 0x0000, 0x0ae6, 0x0ae7,
- 0x0ae8, 0x0ae9, 0x0aea, 0x0aeb, 0x0aec, 0x0aed, 0x0aee, 0x0aef,
- 0x0af0, 0x0af1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0b01, 0x0b02, 0x0b03, 0x0000, 0x0b05, 0x0b06, 0x0b07, /* 0x0b00 */
- 0x0b08, 0x0b09, 0x0b0a, 0x0b0b, 0x0b0c, 0x0000, 0x0000, 0x0b0f,
- 0x0b10, 0x0000, 0x0000, 0x0b13, 0x0b14, 0x0b15, 0x0b16, 0x0b17,
- 0x0b18, 0x0b19, 0x0b1a, 0x0b1b, 0x0b1c, 0x0b1d, 0x0b1e, 0x0b1f,
- 0x0b20, 0x0b21, 0x0b22, 0x0b23, 0x0b24, 0x0b25, 0x0b26, 0x0b27,
- 0x0b28, 0x0000, 0x0b2a, 0x0b2b, 0x0b2c, 0x0b2d, 0x0b2e, 0x0b2f,
- 0x0b30, 0x0000, 0x0b32, 0x0b33, 0x0000, 0x0b35, 0x0b36, 0x0b37,
- 0x0b38, 0x0b39, 0x0000, 0x0000, 0x0b3c, 0x0b3d, 0x0b3e, 0x0b3f,
- 0x0b40, 0x0b41, 0x0b42, 0x0b43, 0x0b44, 0x0000, 0x0000, 0x0b47, /* 0x0b40 */
- 0x0b48, 0x0000, 0x0000, 0x0b4b, 0x0b4c, 0x0b4d, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0b56, 0x0b57,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0b5c, 0x0b5d, 0x0000, 0x0b5f,
- 0x0b60, 0x0b61, 0x0b62, 0x0b63, 0x0000, 0x0000, 0x0b66, 0x0b67,
- 0x0b68, 0x0b69, 0x0b6a, 0x0b6b, 0x0b6c, 0x0b6d, 0x0b6e, 0x0b6f,
- 0x0b70, 0x0b71, 0x0b72, 0x0b73, 0x0b74, 0x0b75, 0x0b76, 0x0b77,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0b82, 0x0b83, 0x0000, 0x0b85, 0x0b86, 0x0b87, /* 0x0b80 */
- 0x0b88, 0x0b89, 0x0b8a, 0x0000, 0x0000, 0x0000, 0x0b8e, 0x0b8f,
- 0x0b90, 0x0000, 0x0b92, 0x0b93, 0x0b94, 0x0b95, 0x0000, 0x0000,
- 0x0000, 0x0b99, 0x0b9a, 0x0000, 0x0b9c, 0x0000, 0x0b9e, 0x0b9f,
- 0x0000, 0x0000, 0x0000, 0x0ba3, 0x0ba4, 0x0000, 0x0000, 0x0000,
- 0x0ba8, 0x0ba9, 0x0baa, 0x0000, 0x0000, 0x0000, 0x0bae, 0x0baf,
- 0x0bb0, 0x0bb1, 0x0bb2, 0x0bb3, 0x0bb4, 0x0bb5, 0x0bb6, 0x0bb7,
- 0x0bb8, 0x0bb9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0bbe, 0x0bbf,
- 0x0bc0, 0x0bc1, 0x0bc2, 0x0000, 0x0000, 0x0000, 0x0bc6, 0x0bc7, /* 0x0bc0 */
- 0x0bc8, 0x0000, 0x0bca, 0x0bcb, 0x0bcc, 0x0bcd, 0x0000, 0x0000,
- 0x0bd0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0bd7,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0be6, 0x0be7,
- 0x0be8, 0x0be9, 0x0bea, 0x0beb, 0x0bec, 0x0bed, 0x0bee, 0x0bef,
- 0x0bf0, 0x0bf1, 0x0bf2, 0x0bf3, 0x0bf4, 0x0bf5, 0x0bf6, 0x0bf7,
- 0x0bf8, 0x0bf9, 0x0bfa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0c01, 0x0c02, 0x0c03, 0x0000, 0x0c05, 0x0c06, 0x0c07, /* 0x0c00 */
- 0x0c08, 0x0c09, 0x0c0a, 0x0c0b, 0x0c0c, 0x0000, 0x0c0e, 0x0c0f,
- 0x0c10, 0x0000, 0x0c12, 0x0c13, 0x0c14, 0x0c15, 0x0c16, 0x0c17,
- 0x0c18, 0x0c19, 0x0c1a, 0x0c1b, 0x0c1c, 0x0c1d, 0x0c1e, 0x0c1f,
- 0x0c20, 0x0c21, 0x0c22, 0x0c23, 0x0c24, 0x0c25, 0x0c26, 0x0c27,
- 0x0c28, 0x0000, 0x0c2a, 0x0c2b, 0x0c2c, 0x0c2d, 0x0c2e, 0x0c2f,
- 0x0c30, 0x0c31, 0x0c32, 0x0c33, 0x0000, 0x0c35, 0x0c36, 0x0c37,
- 0x0c38, 0x0c39, 0x0000, 0x0000, 0x0000, 0x0c3d, 0x0c3e, 0x0c3f,
- 0x0c40, 0x0c41, 0x0c42, 0x0c43, 0x0c44, 0x0000, 0x0c46, 0x0c47, /* 0x0c40 */
- 0x0c48, 0x0000, 0x0c4a, 0x0c4b, 0x0c4c, 0x0c4d, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0c55, 0x0c56, 0x0000,
- 0x0c58, 0x0c59, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0c60, 0x0c61, 0x0c62, 0x0c63, 0x0000, 0x0000, 0x0c66, 0x0c67,
- 0x0c68, 0x0c69, 0x0c6a, 0x0c6b, 0x0c6c, 0x0c6d, 0x0c6e, 0x0c6f,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0c78, 0x0c79, 0x0c7a, 0x0c7b, 0x0c7c, 0x0c7d, 0x0c7e, 0x0c7f,
- 0x0000, 0x0000, 0x0c82, 0x0c83, 0x0000, 0x0c85, 0x0c86, 0x0c87, /* 0x0c80 */
- 0x0c88, 0x0c89, 0x0c8a, 0x0c8b, 0x0c8c, 0x0000, 0x0c8e, 0x0c8f,
- 0x0c90, 0x0000, 0x0c92, 0x0c93, 0x0c94, 0x0c95, 0x0c96, 0x0c97,
- 0x0c98, 0x0c99, 0x0c9a, 0x0c9b, 0x0c9c, 0x0c9d, 0x0c9e, 0x0c9f,
- 0x0ca0, 0x0ca1, 0x0ca2, 0x0ca3, 0x0ca4, 0x0ca5, 0x0ca6, 0x0ca7,
- 0x0ca8, 0x0000, 0x0caa, 0x0cab, 0x0cac, 0x0cad, 0x0cae, 0x0caf,
- 0x0cb0, 0x0cb1, 0x0cb2, 0x0cb3, 0x0000, 0x0cb5, 0x0cb6, 0x0cb7,
- 0x0cb8, 0x0cb9, 0x0000, 0x0000, 0x0cbc, 0x0cbd, 0x0cbe, 0x0cbf,
- 0x0cc0, 0x0cc1, 0x0cc2, 0x0cc3, 0x0cc4, 0x0000, 0x0cc6, 0x0cc7, /* 0x0cc0 */
- 0x0cc8, 0x0000, 0x0cca, 0x0ccb, 0x0ccc, 0x0ccd, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0cd5, 0x0cd6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0cde, 0x0000,
- 0x0ce0, 0x0ce1, 0x0ce2, 0x0ce3, 0x0000, 0x0000, 0x0ce6, 0x0ce7,
- 0x0ce8, 0x0ce9, 0x0cea, 0x0ceb, 0x0cec, 0x0ced, 0x0cee, 0x0cef,
- 0x0000, 0x0cf1, 0x0cf2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0d02, 0x0d03, 0x0000, 0x0d05, 0x0d06, 0x0d07, /* 0x0d00 */
- 0x0d08, 0x0d09, 0x0d0a, 0x0d0b, 0x0d0c, 0x0000, 0x0d0e, 0x0d0f,
- 0x0d10, 0x0000, 0x0d12, 0x0d13, 0x0d14, 0x0d15, 0x0d16, 0x0d17,
- 0x0d18, 0x0d19, 0x0d1a, 0x0d1b, 0x0d1c, 0x0d1d, 0x0d1e, 0x0d1f,
- 0x0d20, 0x0d21, 0x0d22, 0x0d23, 0x0d24, 0x0d25, 0x0d26, 0x0d27,
- 0x0d28, 0x0d29, 0x0d2a, 0x0d2b, 0x0d2c, 0x0d2d, 0x0d2e, 0x0d2f,
- 0x0d30, 0x0d31, 0x0d32, 0x0d33, 0x0d34, 0x0d35, 0x0d36, 0x0d37,
- 0x0d38, 0x0d39, 0x0d3a, 0x0000, 0x0000, 0x0d3d, 0x0d3e, 0x0d3f,
- 0x0d40, 0x0d41, 0x0d42, 0x0d43, 0x0d44, 0x0000, 0x0d46, 0x0d47, /* 0x0d40 */
- 0x0d48, 0x0000, 0x0d4a, 0x0d4b, 0x0d4c, 0x0d4d, 0x0d4e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0d57,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0d60, 0x0d61, 0x0d62, 0x0d63, 0x0000, 0x0000, 0x0d66, 0x0d67,
- 0x0d68, 0x0d69, 0x0d6a, 0x0d6b, 0x0d6c, 0x0d6d, 0x0d6e, 0x0d6f,
- 0x0d70, 0x0d71, 0x0d72, 0x0d73, 0x0d74, 0x0d75, 0x0000, 0x0000,
- 0x0000, 0x0d79, 0x0d7a, 0x0d7b, 0x0d7c, 0x0d7d, 0x0d7e, 0x0d7f,
- 0x0000, 0x0000, 0x0d82, 0x0d83, 0x0000, 0x0d85, 0x0d86, 0x0d87, /* 0x0d80 */
- 0x0d88, 0x0d89, 0x0d8a, 0x0d8b, 0x0d8c, 0x0d8d, 0x0d8e, 0x0d8f,
- 0x0d90, 0x0d91, 0x0d92, 0x0d93, 0x0d94, 0x0d95, 0x0d96, 0x0000,
- 0x0000, 0x0000, 0x0d9a, 0x0d9b, 0x0d9c, 0x0d9d, 0x0d9e, 0x0d9f,
- 0x0da0, 0x0da1, 0x0da2, 0x0da3, 0x0da4, 0x0da5, 0x0da6, 0x0da7,
- 0x0da8, 0x0da9, 0x0daa, 0x0dab, 0x0dac, 0x0dad, 0x0dae, 0x0daf,
- 0x0db0, 0x0db1, 0x0000, 0x0db3, 0x0db4, 0x0db5, 0x0db6, 0x0db7,
- 0x0db8, 0x0db9, 0x0dba, 0x0dbb, 0x0000, 0x0dbd, 0x0000, 0x0000,
- 0x0dc0, 0x0dc1, 0x0dc2, 0x0dc3, 0x0dc4, 0x0dc5, 0x0dc6, 0x0000, /* 0x0dc0 */
- 0x0000, 0x0000, 0x0dca, 0x0000, 0x0000, 0x0000, 0x0000, 0x0dcf,
- 0x0dd0, 0x0dd1, 0x0dd2, 0x0dd3, 0x0dd4, 0x0000, 0x0dd6, 0x0000,
- 0x0dd8, 0x0dd9, 0x0dda, 0x0ddb, 0x0ddc, 0x0ddd, 0x0dde, 0x0ddf,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0df2, 0x0df3, 0x0df4, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0e01, 0x0e02, 0x0e03, 0x0e04, 0x0e05, 0x0e06, 0x0e07, /* 0x0e00 */
- 0x0e08, 0x0e09, 0x0e0a, 0x0e0b, 0x0e0c, 0x0e0d, 0x0e0e, 0x0e0f,
- 0x0e10, 0x0e11, 0x0e12, 0x0e13, 0x0e14, 0x0e15, 0x0e16, 0x0e17,
- 0x0e18, 0x0e19, 0x0e1a, 0x0e1b, 0x0e1c, 0x0e1d, 0x0e1e, 0x0e1f,
- 0x0e20, 0x0e21, 0x0e22, 0x0e23, 0x0e24, 0x0e25, 0x0e26, 0x0e27,
- 0x0e28, 0x0e29, 0x0e2a, 0x0e2b, 0x0e2c, 0x0e2d, 0x0e2e, 0x0e2f,
- 0x0e30, 0x0e31, 0x0e32, 0x0e33, 0x0e34, 0x0e35, 0x0e36, 0x0e37,
- 0x0e38, 0x0e39, 0x0e3a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0e3f,
- 0x0e40, 0x0e41, 0x0e42, 0x0e43, 0x0e44, 0x0e45, 0x0e46, 0x0e47, /* 0x0e40 */
- 0x0e48, 0x0e49, 0x0e4a, 0x0e4b, 0x0e4c, 0x0e4d, 0x0e4e, 0x0e4f,
- 0x0e50, 0x0e51, 0x0e52, 0x0e53, 0x0e54, 0x0e55, 0x0e56, 0x0e57,
- 0x0e58, 0x0e59, 0x0e5a, 0x0e5b, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0e81, 0x0e82, 0x0000, 0x0e84, 0x0000, 0x0000, 0x0e87, /* 0x0e80 */
- 0x0e88, 0x0000, 0x0e8a, 0x0000, 0x0000, 0x0e8d, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0e94, 0x0e95, 0x0e96, 0x0e97,
- 0x0000, 0x0e99, 0x0e9a, 0x0e9b, 0x0e9c, 0x0e9d, 0x0e9e, 0x0e9f,
- 0x0000, 0x0ea1, 0x0ea2, 0x0ea3, 0x0000, 0x0ea5, 0x0000, 0x0ea7,
- 0x0000, 0x0000, 0x0eaa, 0x0eab, 0x0000, 0x0ead, 0x0eae, 0x0eaf,
- 0x0eb0, 0x0eb1, 0x0eb2, 0x0eb3, 0x0eb4, 0x0eb5, 0x0eb6, 0x0eb7,
- 0x0eb8, 0x0eb9, 0x0000, 0x0ebb, 0x0ebc, 0x0ebd, 0x0000, 0x0000,
- 0x0ec0, 0x0ec1, 0x0ec2, 0x0ec3, 0x0ec4, 0x0000, 0x0ec6, 0x0000, /* 0x0ec0 */
- 0x0ec8, 0x0ec9, 0x0eca, 0x0ecb, 0x0ecc, 0x0ecd, 0x0000, 0x0000,
- 0x0ed0, 0x0ed1, 0x0ed2, 0x0ed3, 0x0ed4, 0x0ed5, 0x0ed6, 0x0ed7,
- 0x0ed8, 0x0ed9, 0x0000, 0x0000, 0x0edc, 0x0edd, 0x0ede, 0x0edf,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0f00, 0x0f01, 0x0f02, 0x0f03, 0x0f04, 0x0f05, 0x0f06, 0x0f07, /* 0x0f00 */
- 0x0f08, 0x0f09, 0x0f0a, 0x0f0b, 0x0f0c, 0x0f0d, 0x0f0e, 0x0f0f,
- 0x0f10, 0x0f11, 0x0f12, 0x0f13, 0x0f14, 0x0f15, 0x0f16, 0x0f17,
- 0x0f18, 0x0f19, 0x0f1a, 0x0f1b, 0x0f1c, 0x0f1d, 0x0f1e, 0x0f1f,
- 0x0f20, 0x0f21, 0x0f22, 0x0f23, 0x0f24, 0x0f25, 0x0f26, 0x0f27,
- 0x0f28, 0x0f29, 0x0f2a, 0x0f2b, 0x0f2c, 0x0f2d, 0x0f2e, 0x0f2f,
- 0x0f30, 0x0f31, 0x0f32, 0x0f33, 0x0f34, 0x0f35, 0x0f36, 0x0f37,
- 0x0f38, 0x0f39, 0x0f3a, 0x0f3b, 0x0f3c, 0x0f3d, 0x0f3e, 0x0f3f,
- 0x0f40, 0x0f41, 0x0f42, 0x0f43, 0x0f44, 0x0f45, 0x0f46, 0x0f47, /* 0x0f40 */
- 0x0000, 0x0f49, 0x0f4a, 0x0f4b, 0x0f4c, 0x0f4d, 0x0f4e, 0x0f4f,
- 0x0f50, 0x0f51, 0x0f52, 0x0f53, 0x0f54, 0x0f55, 0x0f56, 0x0f57,
- 0x0f58, 0x0f59, 0x0f5a, 0x0f5b, 0x0f5c, 0x0f5d, 0x0f5e, 0x0f5f,
- 0x0f60, 0x0f61, 0x0f62, 0x0f63, 0x0f64, 0x0f65, 0x0f66, 0x0f67,
- 0x0f68, 0x0f69, 0x0f6a, 0x0f6b, 0x0f6c, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0f71, 0x0f72, 0x0f73, 0x0f74, 0x0f75, 0x0f76, 0x0f77,
- 0x0f78, 0x0f79, 0x0f7a, 0x0f7b, 0x0f7c, 0x0f7d, 0x0f7e, 0x0f7f,
- 0x0f80, 0x0f81, 0x0f82, 0x0f83, 0x0f84, 0x0f85, 0x0f86, 0x0f87, /* 0x0f80 */
- 0x0f88, 0x0f89, 0x0f8a, 0x0f8b, 0x0f8c, 0x0f8d, 0x0f8e, 0x0f8f,
- 0x0f90, 0x0f91, 0x0f92, 0x0f93, 0x0f94, 0x0f95, 0x0f96, 0x0f97,
- 0x0000, 0x0f99, 0x0f9a, 0x0f9b, 0x0f9c, 0x0f9d, 0x0f9e, 0x0f9f,
- 0x0fa0, 0x0fa1, 0x0fa2, 0x0fa3, 0x0fa4, 0x0fa5, 0x0fa6, 0x0fa7,
- 0x0fa8, 0x0fa9, 0x0faa, 0x0fab, 0x0fac, 0x0fad, 0x0fae, 0x0faf,
- 0x0fb0, 0x0fb1, 0x0fb2, 0x0fb3, 0x0fb4, 0x0fb5, 0x0fb6, 0x0fb7,
- 0x0fb8, 0x0fb9, 0x0fba, 0x0fbb, 0x0fbc, 0x0000, 0x0fbe, 0x0fbf,
- 0x0fc0, 0x0fc1, 0x0fc2, 0x0fc3, 0x0fc4, 0x0fc5, 0x0fc6, 0x0fc7, /* 0x0fc0 */
- 0x0fc8, 0x0fc9, 0x0fca, 0x0fcb, 0x0fcc, 0x0000, 0x0fce, 0x0fcf,
- 0x0fd0, 0x0fd1, 0x0fd2, 0x0fd3, 0x0fd4, 0x0fd5, 0x0fd6, 0x0fd7,
- 0x0fd8, 0x0fd9, 0x0fda, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1000, 0x1001, 0x1002, 0x1003, 0x1004, 0x1005, 0x1006, 0x1007, /* 0x1000 */
- 0x1008, 0x1009, 0x100a, 0x100b, 0x100c, 0x100d, 0x100e, 0x100f,
- 0x1010, 0x1011, 0x1012, 0x1013, 0x1014, 0x1015, 0x1016, 0x1017,
- 0x1018, 0x1019, 0x101a, 0x101b, 0x101c, 0x101d, 0x101e, 0x101f,
- 0x1020, 0x1021, 0x1022, 0x1023, 0x1024, 0x1025, 0x1026, 0x1027,
- 0x1028, 0x1029, 0x102a, 0x102b, 0x102c, 0x102d, 0x102e, 0x102f,
- 0x1030, 0x1031, 0x1032, 0x1033, 0x1034, 0x1035, 0x1036, 0x1037,
- 0x1038, 0x1039, 0x103a, 0x103b, 0x103c, 0x103d, 0x103e, 0x103f,
- 0x1040, 0x1041, 0x1042, 0x1043, 0x1044, 0x1045, 0x1046, 0x1047, /* 0x1040 */
- 0x1048, 0x1049, 0x104a, 0x104b, 0x104c, 0x104d, 0x104e, 0x104f,
- 0x1050, 0x1051, 0x1052, 0x1053, 0x1054, 0x1055, 0x1056, 0x1057,
- 0x1058, 0x1059, 0x105a, 0x105b, 0x105c, 0x105d, 0x105e, 0x105f,
- 0x1060, 0x1061, 0x1062, 0x1063, 0x1064, 0x1065, 0x1066, 0x1067,
- 0x1068, 0x1069, 0x106a, 0x106b, 0x106c, 0x106d, 0x106e, 0x106f,
- 0x1070, 0x1071, 0x1072, 0x1073, 0x1074, 0x1075, 0x1076, 0x1077,
- 0x1078, 0x1079, 0x107a, 0x107b, 0x107c, 0x107d, 0x107e, 0x107f,
- 0x1080, 0x1081, 0x1082, 0x1083, 0x1084, 0x1085, 0x1086, 0x1087, /* 0x1080 */
- 0x1088, 0x1089, 0x108a, 0x108b, 0x108c, 0x108d, 0x108e, 0x108f,
- 0x1090, 0x1091, 0x1092, 0x1093, 0x1094, 0x1095, 0x1096, 0x1097,
- 0x1098, 0x1099, 0x109a, 0x109b, 0x109c, 0x109d, 0x109e, 0x109f,
- 0x2d00, 0x2d01, 0x2d02, 0x2d03, 0x2d04, 0x2d05, 0x2d06, 0x2d07,
- 0x2d08, 0x2d09, 0x2d0a, 0x2d0b, 0x2d0c, 0x2d0d, 0x2d0e, 0x2d0f,
- 0x2d10, 0x2d11, 0x2d12, 0x2d13, 0x2d14, 0x2d15, 0x2d16, 0x2d17,
- 0x2d18, 0x2d19, 0x2d1a, 0x2d1b, 0x2d1c, 0x2d1d, 0x2d1e, 0x2d1f,
- 0x2d20, 0x2d21, 0x2d22, 0x2d23, 0x2d24, 0x2d25, 0x0000, 0x2d27, /* 0x10c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d2d, 0x0000, 0x0000,
- 0x10d0, 0x10d1, 0x10d2, 0x10d3, 0x10d4, 0x10d5, 0x10d6, 0x10d7,
- 0x10d8, 0x10d9, 0x10da, 0x10db, 0x10dc, 0x10dd, 0x10de, 0x10df,
- 0x10e0, 0x10e1, 0x10e2, 0x10e3, 0x10e4, 0x10e5, 0x10e6, 0x10e7,
- 0x10e8, 0x10e9, 0x10ea, 0x10eb, 0x10ec, 0x10ed, 0x10ee, 0x10ef,
- 0x10f0, 0x10f1, 0x10f2, 0x10f3, 0x10f4, 0x10f5, 0x10f6, 0x10f7,
- 0x10f8, 0x10f9, 0x10fa, 0x10fb, 0x10fc, 0x10fd, 0x10fe, 0x10ff,
- 0x1100, 0x1101, 0x1102, 0x1103, 0x1104, 0x1105, 0x1106, 0x1107, /* 0x1100 */
- 0x1108, 0x1109, 0x110a, 0x110b, 0x110c, 0x110d, 0x110e, 0x110f,
- 0x1110, 0x1111, 0x1112, 0x1113, 0x1114, 0x1115, 0x1116, 0x1117,
- 0x1118, 0x1119, 0x111a, 0x111b, 0x111c, 0x111d, 0x111e, 0x111f,
- 0x1120, 0x1121, 0x1122, 0x1123, 0x1124, 0x1125, 0x1126, 0x1127,
- 0x1128, 0x1129, 0x112a, 0x112b, 0x112c, 0x112d, 0x112e, 0x112f,
- 0x1130, 0x1131, 0x1132, 0x1133, 0x1134, 0x1135, 0x1136, 0x1137,
- 0x1138, 0x1139, 0x113a, 0x113b, 0x113c, 0x113d, 0x113e, 0x113f,
- 0x1140, 0x1141, 0x1142, 0x1143, 0x1144, 0x1145, 0x1146, 0x1147, /* 0x1140 */
- 0x1148, 0x1149, 0x114a, 0x114b, 0x114c, 0x114d, 0x114e, 0x114f,
- 0x1150, 0x1151, 0x1152, 0x1153, 0x1154, 0x1155, 0x1156, 0x1157,
- 0x1158, 0x1159, 0x115a, 0x115b, 0x115c, 0x115d, 0x115e, 0x115f,
- 0x1160, 0x1161, 0x1162, 0x1163, 0x1164, 0x1165, 0x1166, 0x1167,
- 0x1168, 0x1169, 0x116a, 0x116b, 0x116c, 0x116d, 0x116e, 0x116f,
- 0x1170, 0x1171, 0x1172, 0x1173, 0x1174, 0x1175, 0x1176, 0x1177,
- 0x1178, 0x1179, 0x117a, 0x117b, 0x117c, 0x117d, 0x117e, 0x117f,
- 0x1180, 0x1181, 0x1182, 0x1183, 0x1184, 0x1185, 0x1186, 0x1187, /* 0x1180 */
- 0x1188, 0x1189, 0x118a, 0x118b, 0x118c, 0x118d, 0x118e, 0x118f,
- 0x1190, 0x1191, 0x1192, 0x1193, 0x1194, 0x1195, 0x1196, 0x1197,
- 0x1198, 0x1199, 0x119a, 0x119b, 0x119c, 0x119d, 0x119e, 0x119f,
- 0x11a0, 0x11a1, 0x11a2, 0x11a3, 0x11a4, 0x11a5, 0x11a6, 0x11a7,
- 0x11a8, 0x11a9, 0x11aa, 0x11ab, 0x11ac, 0x11ad, 0x11ae, 0x11af,
- 0x11b0, 0x11b1, 0x11b2, 0x11b3, 0x11b4, 0x11b5, 0x11b6, 0x11b7,
- 0x11b8, 0x11b9, 0x11ba, 0x11bb, 0x11bc, 0x11bd, 0x11be, 0x11bf,
- 0x11c0, 0x11c1, 0x11c2, 0x11c3, 0x11c4, 0x11c5, 0x11c6, 0x11c7, /* 0x11c0 */
- 0x11c8, 0x11c9, 0x11ca, 0x11cb, 0x11cc, 0x11cd, 0x11ce, 0x11cf,
- 0x11d0, 0x11d1, 0x11d2, 0x11d3, 0x11d4, 0x11d5, 0x11d6, 0x11d7,
- 0x11d8, 0x11d9, 0x11da, 0x11db, 0x11dc, 0x11dd, 0x11de, 0x11df,
- 0x11e0, 0x11e1, 0x11e2, 0x11e3, 0x11e4, 0x11e5, 0x11e6, 0x11e7,
- 0x11e8, 0x11e9, 0x11ea, 0x11eb, 0x11ec, 0x11ed, 0x11ee, 0x11ef,
- 0x11f0, 0x11f1, 0x11f2, 0x11f3, 0x11f4, 0x11f5, 0x11f6, 0x11f7,
- 0x11f8, 0x11f9, 0x11fa, 0x11fb, 0x11fc, 0x11fd, 0x11fe, 0x11ff,
- 0x1200, 0x1201, 0x1202, 0x1203, 0x1204, 0x1205, 0x1206, 0x1207, /* 0x1200 */
- 0x1208, 0x1209, 0x120a, 0x120b, 0x120c, 0x120d, 0x120e, 0x120f,
- 0x1210, 0x1211, 0x1212, 0x1213, 0x1214, 0x1215, 0x1216, 0x1217,
- 0x1218, 0x1219, 0x121a, 0x121b, 0x121c, 0x121d, 0x121e, 0x121f,
- 0x1220, 0x1221, 0x1222, 0x1223, 0x1224, 0x1225, 0x1226, 0x1227,
- 0x1228, 0x1229, 0x122a, 0x122b, 0x122c, 0x122d, 0x122e, 0x122f,
- 0x1230, 0x1231, 0x1232, 0x1233, 0x1234, 0x1235, 0x1236, 0x1237,
- 0x1238, 0x1239, 0x123a, 0x123b, 0x123c, 0x123d, 0x123e, 0x123f,
- 0x1240, 0x1241, 0x1242, 0x1243, 0x1244, 0x1245, 0x1246, 0x1247, /* 0x1240 */
- 0x1248, 0x0000, 0x124a, 0x124b, 0x124c, 0x124d, 0x0000, 0x0000,
- 0x1250, 0x1251, 0x1252, 0x1253, 0x1254, 0x1255, 0x1256, 0x0000,
- 0x1258, 0x0000, 0x125a, 0x125b, 0x125c, 0x125d, 0x0000, 0x0000,
- 0x1260, 0x1261, 0x1262, 0x1263, 0x1264, 0x1265, 0x1266, 0x1267,
- 0x1268, 0x1269, 0x126a, 0x126b, 0x126c, 0x126d, 0x126e, 0x126f,
- 0x1270, 0x1271, 0x1272, 0x1273, 0x1274, 0x1275, 0x1276, 0x1277,
- 0x1278, 0x1279, 0x127a, 0x127b, 0x127c, 0x127d, 0x127e, 0x127f,
- 0x1280, 0x1281, 0x1282, 0x1283, 0x1284, 0x1285, 0x1286, 0x1287, /* 0x1280 */
- 0x1288, 0x0000, 0x128a, 0x128b, 0x128c, 0x128d, 0x0000, 0x0000,
- 0x1290, 0x1291, 0x1292, 0x1293, 0x1294, 0x1295, 0x1296, 0x1297,
- 0x1298, 0x1299, 0x129a, 0x129b, 0x129c, 0x129d, 0x129e, 0x129f,
- 0x12a0, 0x12a1, 0x12a2, 0x12a3, 0x12a4, 0x12a5, 0x12a6, 0x12a7,
- 0x12a8, 0x12a9, 0x12aa, 0x12ab, 0x12ac, 0x12ad, 0x12ae, 0x12af,
- 0x12b0, 0x0000, 0x12b2, 0x12b3, 0x12b4, 0x12b5, 0x0000, 0x0000,
- 0x12b8, 0x12b9, 0x12ba, 0x12bb, 0x12bc, 0x12bd, 0x12be, 0x0000,
- 0x12c0, 0x0000, 0x12c2, 0x12c3, 0x12c4, 0x12c5, 0x0000, 0x0000, /* 0x12c0 */
- 0x12c8, 0x12c9, 0x12ca, 0x12cb, 0x12cc, 0x12cd, 0x12ce, 0x12cf,
- 0x12d0, 0x12d1, 0x12d2, 0x12d3, 0x12d4, 0x12d5, 0x12d6, 0x0000,
- 0x12d8, 0x12d9, 0x12da, 0x12db, 0x12dc, 0x12dd, 0x12de, 0x12df,
- 0x12e0, 0x12e1, 0x12e2, 0x12e3, 0x12e4, 0x12e5, 0x12e6, 0x12e7,
- 0x12e8, 0x12e9, 0x12ea, 0x12eb, 0x12ec, 0x12ed, 0x12ee, 0x12ef,
- 0x12f0, 0x12f1, 0x12f2, 0x12f3, 0x12f4, 0x12f5, 0x12f6, 0x12f7,
- 0x12f8, 0x12f9, 0x12fa, 0x12fb, 0x12fc, 0x12fd, 0x12fe, 0x12ff,
- 0x1300, 0x1301, 0x1302, 0x1303, 0x1304, 0x1305, 0x1306, 0x1307, /* 0x1300 */
- 0x1308, 0x1309, 0x130a, 0x130b, 0x130c, 0x130d, 0x130e, 0x130f,
- 0x1310, 0x0000, 0x1312, 0x1313, 0x1314, 0x1315, 0x0000, 0x0000,
- 0x1318, 0x1319, 0x131a, 0x131b, 0x131c, 0x131d, 0x131e, 0x131f,
- 0x1320, 0x1321, 0x1322, 0x1323, 0x1324, 0x1325, 0x1326, 0x1327,
- 0x1328, 0x1329, 0x132a, 0x132b, 0x132c, 0x132d, 0x132e, 0x132f,
- 0x1330, 0x1331, 0x1332, 0x1333, 0x1334, 0x1335, 0x1336, 0x1337,
- 0x1338, 0x1339, 0x133a, 0x133b, 0x133c, 0x133d, 0x133e, 0x133f,
- 0x1340, 0x1341, 0x1342, 0x1343, 0x1344, 0x1345, 0x1346, 0x1347, /* 0x1340 */
- 0x1348, 0x1349, 0x134a, 0x134b, 0x134c, 0x134d, 0x134e, 0x134f,
- 0x1350, 0x1351, 0x1352, 0x1353, 0x1354, 0x1355, 0x1356, 0x1357,
- 0x1358, 0x1359, 0x135a, 0x0000, 0x0000, 0x135d, 0x135e, 0x135f,
- 0x1360, 0x1361, 0x1362, 0x1363, 0x1364, 0x1365, 0x1366, 0x1367,
- 0x1368, 0x1369, 0x136a, 0x136b, 0x136c, 0x136d, 0x136e, 0x136f,
- 0x1370, 0x1371, 0x1372, 0x1373, 0x1374, 0x1375, 0x1376, 0x1377,
- 0x1378, 0x1379, 0x137a, 0x137b, 0x137c, 0x0000, 0x0000, 0x0000,
- 0x1380, 0x1381, 0x1382, 0x1383, 0x1384, 0x1385, 0x1386, 0x1387, /* 0x1380 */
- 0x1388, 0x1389, 0x138a, 0x138b, 0x138c, 0x138d, 0x138e, 0x138f,
- 0x1390, 0x1391, 0x1392, 0x1393, 0x1394, 0x1395, 0x1396, 0x1397,
- 0x1398, 0x1399, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x13a0, 0x13a1, 0x13a2, 0x13a3, 0x13a4, 0x13a5, 0x13a6, 0x13a7,
- 0x13a8, 0x13a9, 0x13aa, 0x13ab, 0x13ac, 0x13ad, 0x13ae, 0x13af,
- 0x13b0, 0x13b1, 0x13b2, 0x13b3, 0x13b4, 0x13b5, 0x13b6, 0x13b7,
- 0x13b8, 0x13b9, 0x13ba, 0x13bb, 0x13bc, 0x13bd, 0x13be, 0x13bf,
- 0x13c0, 0x13c1, 0x13c2, 0x13c3, 0x13c4, 0x13c5, 0x13c6, 0x13c7, /* 0x13c0 */
- 0x13c8, 0x13c9, 0x13ca, 0x13cb, 0x13cc, 0x13cd, 0x13ce, 0x13cf,
- 0x13d0, 0x13d1, 0x13d2, 0x13d3, 0x13d4, 0x13d5, 0x13d6, 0x13d7,
- 0x13d8, 0x13d9, 0x13da, 0x13db, 0x13dc, 0x13dd, 0x13de, 0x13df,
- 0x13e0, 0x13e1, 0x13e2, 0x13e3, 0x13e4, 0x13e5, 0x13e6, 0x13e7,
- 0x13e8, 0x13e9, 0x13ea, 0x13eb, 0x13ec, 0x13ed, 0x13ee, 0x13ef,
- 0x13f0, 0x13f1, 0x13f2, 0x13f3, 0x13f4, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1400, 0x1401, 0x1402, 0x1403, 0x1404, 0x1405, 0x1406, 0x1407, /* 0x1400 */
- 0x1408, 0x1409, 0x140a, 0x140b, 0x140c, 0x140d, 0x140e, 0x140f,
- 0x1410, 0x1411, 0x1412, 0x1413, 0x1414, 0x1415, 0x1416, 0x1417,
- 0x1418, 0x1419, 0x141a, 0x141b, 0x141c, 0x141d, 0x141e, 0x141f,
- 0x1420, 0x1421, 0x1422, 0x1423, 0x1424, 0x1425, 0x1426, 0x1427,
- 0x1428, 0x1429, 0x142a, 0x142b, 0x142c, 0x142d, 0x142e, 0x142f,
- 0x1430, 0x1431, 0x1432, 0x1433, 0x1434, 0x1435, 0x1436, 0x1437,
- 0x1438, 0x1439, 0x143a, 0x143b, 0x143c, 0x143d, 0x143e, 0x143f,
- 0x1440, 0x1441, 0x1442, 0x1443, 0x1444, 0x1445, 0x1446, 0x1447, /* 0x1440 */
- 0x1448, 0x1449, 0x144a, 0x144b, 0x144c, 0x144d, 0x144e, 0x144f,
- 0x1450, 0x1451, 0x1452, 0x1453, 0x1454, 0x1455, 0x1456, 0x1457,
- 0x1458, 0x1459, 0x145a, 0x145b, 0x145c, 0x145d, 0x145e, 0x145f,
- 0x1460, 0x1461, 0x1462, 0x1463, 0x1464, 0x1465, 0x1466, 0x1467,
- 0x1468, 0x1469, 0x146a, 0x146b, 0x146c, 0x146d, 0x146e, 0x146f,
- 0x1470, 0x1471, 0x1472, 0x1473, 0x1474, 0x1475, 0x1476, 0x1477,
- 0x1478, 0x1479, 0x147a, 0x147b, 0x147c, 0x147d, 0x147e, 0x147f,
- 0x1480, 0x1481, 0x1482, 0x1483, 0x1484, 0x1485, 0x1486, 0x1487, /* 0x1480 */
- 0x1488, 0x1489, 0x148a, 0x148b, 0x148c, 0x148d, 0x148e, 0x148f,
- 0x1490, 0x1491, 0x1492, 0x1493, 0x1494, 0x1495, 0x1496, 0x1497,
- 0x1498, 0x1499, 0x149a, 0x149b, 0x149c, 0x149d, 0x149e, 0x149f,
- 0x14a0, 0x14a1, 0x14a2, 0x14a3, 0x14a4, 0x14a5, 0x14a6, 0x14a7,
- 0x14a8, 0x14a9, 0x14aa, 0x14ab, 0x14ac, 0x14ad, 0x14ae, 0x14af,
- 0x14b0, 0x14b1, 0x14b2, 0x14b3, 0x14b4, 0x14b5, 0x14b6, 0x14b7,
- 0x14b8, 0x14b9, 0x14ba, 0x14bb, 0x14bc, 0x14bd, 0x14be, 0x14bf,
- 0x14c0, 0x14c1, 0x14c2, 0x14c3, 0x14c4, 0x14c5, 0x14c6, 0x14c7, /* 0x14c0 */
- 0x14c8, 0x14c9, 0x14ca, 0x14cb, 0x14cc, 0x14cd, 0x14ce, 0x14cf,
- 0x14d0, 0x14d1, 0x14d2, 0x14d3, 0x14d4, 0x14d5, 0x14d6, 0x14d7,
- 0x14d8, 0x14d9, 0x14da, 0x14db, 0x14dc, 0x14dd, 0x14de, 0x14df,
- 0x14e0, 0x14e1, 0x14e2, 0x14e3, 0x14e4, 0x14e5, 0x14e6, 0x14e7,
- 0x14e8, 0x14e9, 0x14ea, 0x14eb, 0x14ec, 0x14ed, 0x14ee, 0x14ef,
- 0x14f0, 0x14f1, 0x14f2, 0x14f3, 0x14f4, 0x14f5, 0x14f6, 0x14f7,
- 0x14f8, 0x14f9, 0x14fa, 0x14fb, 0x14fc, 0x14fd, 0x14fe, 0x14ff,
- 0x1500, 0x1501, 0x1502, 0x1503, 0x1504, 0x1505, 0x1506, 0x1507, /* 0x1500 */
- 0x1508, 0x1509, 0x150a, 0x150b, 0x150c, 0x150d, 0x150e, 0x150f,
- 0x1510, 0x1511, 0x1512, 0x1513, 0x1514, 0x1515, 0x1516, 0x1517,
- 0x1518, 0x1519, 0x151a, 0x151b, 0x151c, 0x151d, 0x151e, 0x151f,
- 0x1520, 0x1521, 0x1522, 0x1523, 0x1524, 0x1525, 0x1526, 0x1527,
- 0x1528, 0x1529, 0x152a, 0x152b, 0x152c, 0x152d, 0x152e, 0x152f,
- 0x1530, 0x1531, 0x1532, 0x1533, 0x1534, 0x1535, 0x1536, 0x1537,
- 0x1538, 0x1539, 0x153a, 0x153b, 0x153c, 0x153d, 0x153e, 0x153f,
- 0x1540, 0x1541, 0x1542, 0x1543, 0x1544, 0x1545, 0x1546, 0x1547, /* 0x1540 */
- 0x1548, 0x1549, 0x154a, 0x154b, 0x154c, 0x154d, 0x154e, 0x154f,
- 0x1550, 0x1551, 0x1552, 0x1553, 0x1554, 0x1555, 0x1556, 0x1557,
- 0x1558, 0x1559, 0x155a, 0x155b, 0x155c, 0x155d, 0x155e, 0x155f,
- 0x1560, 0x1561, 0x1562, 0x1563, 0x1564, 0x1565, 0x1566, 0x1567,
- 0x1568, 0x1569, 0x156a, 0x156b, 0x156c, 0x156d, 0x156e, 0x156f,
- 0x1570, 0x1571, 0x1572, 0x1573, 0x1574, 0x1575, 0x1576, 0x1577,
- 0x1578, 0x1579, 0x157a, 0x157b, 0x157c, 0x157d, 0x157e, 0x157f,
- 0x1580, 0x1581, 0x1582, 0x1583, 0x1584, 0x1585, 0x1586, 0x1587, /* 0x1580 */
- 0x1588, 0x1589, 0x158a, 0x158b, 0x158c, 0x158d, 0x158e, 0x158f,
- 0x1590, 0x1591, 0x1592, 0x1593, 0x1594, 0x1595, 0x1596, 0x1597,
- 0x1598, 0x1599, 0x159a, 0x159b, 0x159c, 0x159d, 0x159e, 0x159f,
- 0x15a0, 0x15a1, 0x15a2, 0x15a3, 0x15a4, 0x15a5, 0x15a6, 0x15a7,
- 0x15a8, 0x15a9, 0x15aa, 0x15ab, 0x15ac, 0x15ad, 0x15ae, 0x15af,
- 0x15b0, 0x15b1, 0x15b2, 0x15b3, 0x15b4, 0x15b5, 0x15b6, 0x15b7,
- 0x15b8, 0x15b9, 0x15ba, 0x15bb, 0x15bc, 0x15bd, 0x15be, 0x15bf,
- 0x15c0, 0x15c1, 0x15c2, 0x15c3, 0x15c4, 0x15c5, 0x15c6, 0x15c7, /* 0x15c0 */
- 0x15c8, 0x15c9, 0x15ca, 0x15cb, 0x15cc, 0x15cd, 0x15ce, 0x15cf,
- 0x15d0, 0x15d1, 0x15d2, 0x15d3, 0x15d4, 0x15d5, 0x15d6, 0x15d7,
- 0x15d8, 0x15d9, 0x15da, 0x15db, 0x15dc, 0x15dd, 0x15de, 0x15df,
- 0x15e0, 0x15e1, 0x15e2, 0x15e3, 0x15e4, 0x15e5, 0x15e6, 0x15e7,
- 0x15e8, 0x15e9, 0x15ea, 0x15eb, 0x15ec, 0x15ed, 0x15ee, 0x15ef,
- 0x15f0, 0x15f1, 0x15f2, 0x15f3, 0x15f4, 0x15f5, 0x15f6, 0x15f7,
- 0x15f8, 0x15f9, 0x15fa, 0x15fb, 0x15fc, 0x15fd, 0x15fe, 0x15ff,
- 0x1600, 0x1601, 0x1602, 0x1603, 0x1604, 0x1605, 0x1606, 0x1607, /* 0x1600 */
- 0x1608, 0x1609, 0x160a, 0x160b, 0x160c, 0x160d, 0x160e, 0x160f,
- 0x1610, 0x1611, 0x1612, 0x1613, 0x1614, 0x1615, 0x1616, 0x1617,
- 0x1618, 0x1619, 0x161a, 0x161b, 0x161c, 0x161d, 0x161e, 0x161f,
- 0x1620, 0x1621, 0x1622, 0x1623, 0x1624, 0x1625, 0x1626, 0x1627,
- 0x1628, 0x1629, 0x162a, 0x162b, 0x162c, 0x162d, 0x162e, 0x162f,
- 0x1630, 0x1631, 0x1632, 0x1633, 0x1634, 0x1635, 0x1636, 0x1637,
- 0x1638, 0x1639, 0x163a, 0x163b, 0x163c, 0x163d, 0x163e, 0x163f,
- 0x1640, 0x1641, 0x1642, 0x1643, 0x1644, 0x1645, 0x1646, 0x1647, /* 0x1640 */
- 0x1648, 0x1649, 0x164a, 0x164b, 0x164c, 0x164d, 0x164e, 0x164f,
- 0x1650, 0x1651, 0x1652, 0x1653, 0x1654, 0x1655, 0x1656, 0x1657,
- 0x1658, 0x1659, 0x165a, 0x165b, 0x165c, 0x165d, 0x165e, 0x165f,
- 0x1660, 0x1661, 0x1662, 0x1663, 0x1664, 0x1665, 0x1666, 0x1667,
- 0x1668, 0x1669, 0x166a, 0x166b, 0x166c, 0x166d, 0x166e, 0x166f,
- 0x1670, 0x1671, 0x1672, 0x1673, 0x1674, 0x1675, 0x1676, 0x1677,
- 0x1678, 0x1679, 0x167a, 0x167b, 0x167c, 0x167d, 0x167e, 0x167f,
- 0x1680, 0x1681, 0x1682, 0x1683, 0x1684, 0x1685, 0x1686, 0x1687, /* 0x1680 */
- 0x1688, 0x1689, 0x168a, 0x168b, 0x168c, 0x168d, 0x168e, 0x168f,
- 0x1690, 0x1691, 0x1692, 0x1693, 0x1694, 0x1695, 0x1696, 0x1697,
- 0x1698, 0x1699, 0x169a, 0x169b, 0x169c, 0x0000, 0x0000, 0x0000,
- 0x16a0, 0x16a1, 0x16a2, 0x16a3, 0x16a4, 0x16a5, 0x16a6, 0x16a7,
- 0x16a8, 0x16a9, 0x16aa, 0x16ab, 0x16ac, 0x16ad, 0x16ae, 0x16af,
- 0x16b0, 0x16b1, 0x16b2, 0x16b3, 0x16b4, 0x16b5, 0x16b6, 0x16b7,
- 0x16b8, 0x16b9, 0x16ba, 0x16bb, 0x16bc, 0x16bd, 0x16be, 0x16bf,
- 0x16c0, 0x16c1, 0x16c2, 0x16c3, 0x16c4, 0x16c5, 0x16c6, 0x16c7, /* 0x16c0 */
- 0x16c8, 0x16c9, 0x16ca, 0x16cb, 0x16cc, 0x16cd, 0x16ce, 0x16cf,
- 0x16d0, 0x16d1, 0x16d2, 0x16d3, 0x16d4, 0x16d5, 0x16d6, 0x16d7,
- 0x16d8, 0x16d9, 0x16da, 0x16db, 0x16dc, 0x16dd, 0x16de, 0x16df,
- 0x16e0, 0x16e1, 0x16e2, 0x16e3, 0x16e4, 0x16e5, 0x16e6, 0x16e7,
- 0x16e8, 0x16e9, 0x16ea, 0x16eb, 0x16ec, 0x16ed, 0x16ee, 0x16ef,
- 0x16f0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1700, 0x1701, 0x1702, 0x1703, 0x1704, 0x1705, 0x1706, 0x1707, /* 0x1700 */
- 0x1708, 0x1709, 0x170a, 0x170b, 0x170c, 0x0000, 0x170e, 0x170f,
- 0x1710, 0x1711, 0x1712, 0x1713, 0x1714, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1720, 0x1721, 0x1722, 0x1723, 0x1724, 0x1725, 0x1726, 0x1727,
- 0x1728, 0x1729, 0x172a, 0x172b, 0x172c, 0x172d, 0x172e, 0x172f,
- 0x1730, 0x1731, 0x1732, 0x1733, 0x1734, 0x1735, 0x1736, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1740, 0x1741, 0x1742, 0x1743, 0x1744, 0x1745, 0x1746, 0x1747, /* 0x1740 */
- 0x1748, 0x1749, 0x174a, 0x174b, 0x174c, 0x174d, 0x174e, 0x174f,
- 0x1750, 0x1751, 0x1752, 0x1753, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1760, 0x1761, 0x1762, 0x1763, 0x1764, 0x1765, 0x1766, 0x1767,
- 0x1768, 0x1769, 0x176a, 0x176b, 0x176c, 0x0000, 0x176e, 0x176f,
- 0x1770, 0x0000, 0x1772, 0x1773, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1780, 0x1781, 0x1782, 0x1783, 0x1784, 0x1785, 0x1786, 0x1787, /* 0x1780 */
- 0x1788, 0x1789, 0x178a, 0x178b, 0x178c, 0x178d, 0x178e, 0x178f,
- 0x1790, 0x1791, 0x1792, 0x1793, 0x1794, 0x1795, 0x1796, 0x1797,
- 0x1798, 0x1799, 0x179a, 0x179b, 0x179c, 0x179d, 0x179e, 0x179f,
- 0x17a0, 0x17a1, 0x17a2, 0x17a3, 0x17a4, 0x17a5, 0x17a6, 0x17a7,
- 0x17a8, 0x17a9, 0x17aa, 0x17ab, 0x17ac, 0x17ad, 0x17ae, 0x17af,
- 0x17b0, 0x17b1, 0x17b2, 0x17b3, 0x17b4, 0x17b5, 0x17b6, 0x17b7,
- 0x17b8, 0x17b9, 0x17ba, 0x17bb, 0x17bc, 0x17bd, 0x17be, 0x17bf,
- 0x17c0, 0x17c1, 0x17c2, 0x17c3, 0x17c4, 0x17c5, 0x17c6, 0x17c7, /* 0x17c0 */
- 0x17c8, 0x17c9, 0x17ca, 0x17cb, 0x17cc, 0x17cd, 0x17ce, 0x17cf,
- 0x17d0, 0x17d1, 0x17d2, 0x17d3, 0x17d4, 0x17d5, 0x17d6, 0x17d7,
- 0x17d8, 0x17d9, 0x17da, 0x17db, 0x17dc, 0x17dd, 0x0000, 0x0000,
- 0x17e0, 0x17e1, 0x17e2, 0x17e3, 0x17e4, 0x17e5, 0x17e6, 0x17e7,
- 0x17e8, 0x17e9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x17f0, 0x17f1, 0x17f2, 0x17f3, 0x17f4, 0x17f5, 0x17f6, 0x17f7,
- 0x17f8, 0x17f9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1800, 0x1801, 0x1802, 0x1803, 0x1804, 0x1805, 0x1806, 0x1807, /* 0x1800 */
- 0x1808, 0x1809, 0x180a, 0x180b, 0x180c, 0x180d, 0x180e, 0x0000,
- 0x1810, 0x1811, 0x1812, 0x1813, 0x1814, 0x1815, 0x1816, 0x1817,
- 0x1818, 0x1819, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1820, 0x1821, 0x1822, 0x1823, 0x1824, 0x1825, 0x1826, 0x1827,
- 0x1828, 0x1829, 0x182a, 0x182b, 0x182c, 0x182d, 0x182e, 0x182f,
- 0x1830, 0x1831, 0x1832, 0x1833, 0x1834, 0x1835, 0x1836, 0x1837,
- 0x1838, 0x1839, 0x183a, 0x183b, 0x183c, 0x183d, 0x183e, 0x183f,
- 0x1840, 0x1841, 0x1842, 0x1843, 0x1844, 0x1845, 0x1846, 0x1847, /* 0x1840 */
- 0x1848, 0x1849, 0x184a, 0x184b, 0x184c, 0x184d, 0x184e, 0x184f,
- 0x1850, 0x1851, 0x1852, 0x1853, 0x1854, 0x1855, 0x1856, 0x1857,
- 0x1858, 0x1859, 0x185a, 0x185b, 0x185c, 0x185d, 0x185e, 0x185f,
- 0x1860, 0x1861, 0x1862, 0x1863, 0x1864, 0x1865, 0x1866, 0x1867,
- 0x1868, 0x1869, 0x186a, 0x186b, 0x186c, 0x186d, 0x186e, 0x186f,
- 0x1870, 0x1871, 0x1872, 0x1873, 0x1874, 0x1875, 0x1876, 0x1877,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1880, 0x1881, 0x1882, 0x1883, 0x1884, 0x1885, 0x1886, 0x1887, /* 0x1880 */
- 0x1888, 0x1889, 0x188a, 0x188b, 0x188c, 0x188d, 0x188e, 0x188f,
- 0x1890, 0x1891, 0x1892, 0x1893, 0x1894, 0x1895, 0x1896, 0x1897,
- 0x1898, 0x1899, 0x189a, 0x189b, 0x189c, 0x189d, 0x189e, 0x189f,
- 0x18a0, 0x18a1, 0x18a2, 0x18a3, 0x18a4, 0x18a5, 0x18a6, 0x18a7,
- 0x18a8, 0x18a9, 0x18aa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x18b0, 0x18b1, 0x18b2, 0x18b3, 0x18b4, 0x18b5, 0x18b6, 0x18b7,
- 0x18b8, 0x18b9, 0x18ba, 0x18bb, 0x18bc, 0x18bd, 0x18be, 0x18bf,
- 0x18c0, 0x18c1, 0x18c2, 0x18c3, 0x18c4, 0x18c5, 0x18c6, 0x18c7, /* 0x18c0 */
- 0x18c8, 0x18c9, 0x18ca, 0x18cb, 0x18cc, 0x18cd, 0x18ce, 0x18cf,
- 0x18d0, 0x18d1, 0x18d2, 0x18d3, 0x18d4, 0x18d5, 0x18d6, 0x18d7,
- 0x18d8, 0x18d9, 0x18da, 0x18db, 0x18dc, 0x18dd, 0x18de, 0x18df,
- 0x18e0, 0x18e1, 0x18e2, 0x18e3, 0x18e4, 0x18e5, 0x18e6, 0x18e7,
- 0x18e8, 0x18e9, 0x18ea, 0x18eb, 0x18ec, 0x18ed, 0x18ee, 0x18ef,
- 0x18f0, 0x18f1, 0x18f2, 0x18f3, 0x18f4, 0x18f5, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1900, 0x1901, 0x1902, 0x1903, 0x1904, 0x1905, 0x1906, 0x1907, /* 0x1900 */
- 0x1908, 0x1909, 0x190a, 0x190b, 0x190c, 0x190d, 0x190e, 0x190f,
- 0x1910, 0x1911, 0x1912, 0x1913, 0x1914, 0x1915, 0x1916, 0x1917,
- 0x1918, 0x1919, 0x191a, 0x191b, 0x191c, 0x0000, 0x0000, 0x0000,
- 0x1920, 0x1921, 0x1922, 0x1923, 0x1924, 0x1925, 0x1926, 0x1927,
- 0x1928, 0x1929, 0x192a, 0x192b, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1930, 0x1931, 0x1932, 0x1933, 0x1934, 0x1935, 0x1936, 0x1937,
- 0x1938, 0x1939, 0x193a, 0x193b, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1940, 0x0000, 0x0000, 0x0000, 0x1944, 0x1945, 0x1946, 0x1947, /* 0x1940 */
- 0x1948, 0x1949, 0x194a, 0x194b, 0x194c, 0x194d, 0x194e, 0x194f,
- 0x1950, 0x1951, 0x1952, 0x1953, 0x1954, 0x1955, 0x1956, 0x1957,
- 0x1958, 0x1959, 0x195a, 0x195b, 0x195c, 0x195d, 0x195e, 0x195f,
- 0x1960, 0x1961, 0x1962, 0x1963, 0x1964, 0x1965, 0x1966, 0x1967,
- 0x1968, 0x1969, 0x196a, 0x196b, 0x196c, 0x196d, 0x0000, 0x0000,
- 0x1970, 0x1971, 0x1972, 0x1973, 0x1974, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1980, 0x1981, 0x1982, 0x1983, 0x1984, 0x1985, 0x1986, 0x1987, /* 0x1980 */
- 0x1988, 0x1989, 0x198a, 0x198b, 0x198c, 0x198d, 0x198e, 0x198f,
- 0x1990, 0x1991, 0x1992, 0x1993, 0x1994, 0x1995, 0x1996, 0x1997,
- 0x1998, 0x1999, 0x199a, 0x199b, 0x199c, 0x199d, 0x199e, 0x199f,
- 0x19a0, 0x19a1, 0x19a2, 0x19a3, 0x19a4, 0x19a5, 0x19a6, 0x19a7,
- 0x19a8, 0x19a9, 0x19aa, 0x19ab, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x19b0, 0x19b1, 0x19b2, 0x19b3, 0x19b4, 0x19b5, 0x19b6, 0x19b7,
- 0x19b8, 0x19b9, 0x19ba, 0x19bb, 0x19bc, 0x19bd, 0x19be, 0x19bf,
- 0x19c0, 0x19c1, 0x19c2, 0x19c3, 0x19c4, 0x19c5, 0x19c6, 0x19c7, /* 0x19c0 */
- 0x19c8, 0x19c9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x19d0, 0x19d1, 0x19d2, 0x19d3, 0x19d4, 0x19d5, 0x19d6, 0x19d7,
- 0x19d8, 0x19d9, 0x19da, 0x0000, 0x0000, 0x0000, 0x19de, 0x19df,
- 0x19e0, 0x19e1, 0x19e2, 0x19e3, 0x19e4, 0x19e5, 0x19e6, 0x19e7,
- 0x19e8, 0x19e9, 0x19ea, 0x19eb, 0x19ec, 0x19ed, 0x19ee, 0x19ef,
- 0x19f0, 0x19f1, 0x19f2, 0x19f3, 0x19f4, 0x19f5, 0x19f6, 0x19f7,
- 0x19f8, 0x19f9, 0x19fa, 0x19fb, 0x19fc, 0x19fd, 0x19fe, 0x19ff,
- 0x1a00, 0x1a01, 0x1a02, 0x1a03, 0x1a04, 0x1a05, 0x1a06, 0x1a07, /* 0x1a00 */
- 0x1a08, 0x1a09, 0x1a0a, 0x1a0b, 0x1a0c, 0x1a0d, 0x1a0e, 0x1a0f,
- 0x1a10, 0x1a11, 0x1a12, 0x1a13, 0x1a14, 0x1a15, 0x1a16, 0x1a17,
- 0x1a18, 0x1a19, 0x1a1a, 0x1a1b, 0x0000, 0x0000, 0x1a1e, 0x1a1f,
- 0x1a20, 0x1a21, 0x1a22, 0x1a23, 0x1a24, 0x1a25, 0x1a26, 0x1a27,
- 0x1a28, 0x1a29, 0x1a2a, 0x1a2b, 0x1a2c, 0x1a2d, 0x1a2e, 0x1a2f,
- 0x1a30, 0x1a31, 0x1a32, 0x1a33, 0x1a34, 0x1a35, 0x1a36, 0x1a37,
- 0x1a38, 0x1a39, 0x1a3a, 0x1a3b, 0x1a3c, 0x1a3d, 0x1a3e, 0x1a3f,
- 0x1a40, 0x1a41, 0x1a42, 0x1a43, 0x1a44, 0x1a45, 0x1a46, 0x1a47, /* 0x1a40 */
- 0x1a48, 0x1a49, 0x1a4a, 0x1a4b, 0x1a4c, 0x1a4d, 0x1a4e, 0x1a4f,
- 0x1a50, 0x1a51, 0x1a52, 0x1a53, 0x1a54, 0x1a55, 0x1a56, 0x1a57,
- 0x1a58, 0x1a59, 0x1a5a, 0x1a5b, 0x1a5c, 0x1a5d, 0x1a5e, 0x0000,
- 0x1a60, 0x1a61, 0x1a62, 0x1a63, 0x1a64, 0x1a65, 0x1a66, 0x1a67,
- 0x1a68, 0x1a69, 0x1a6a, 0x1a6b, 0x1a6c, 0x1a6d, 0x1a6e, 0x1a6f,
- 0x1a70, 0x1a71, 0x1a72, 0x1a73, 0x1a74, 0x1a75, 0x1a76, 0x1a77,
- 0x1a78, 0x1a79, 0x1a7a, 0x1a7b, 0x1a7c, 0x0000, 0x0000, 0x1a7f,
- 0x1a80, 0x1a81, 0x1a82, 0x1a83, 0x1a84, 0x1a85, 0x1a86, 0x1a87, /* 0x1a80 */
- 0x1a88, 0x1a89, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1a90, 0x1a91, 0x1a92, 0x1a93, 0x1a94, 0x1a95, 0x1a96, 0x1a97,
- 0x1a98, 0x1a99, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1aa0, 0x1aa1, 0x1aa2, 0x1aa3, 0x1aa4, 0x1aa5, 0x1aa6, 0x1aa7,
- 0x1aa8, 0x1aa9, 0x1aaa, 0x1aab, 0x1aac, 0x1aad, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1b00, 0x1b01, 0x1b02, 0x1b03, 0x1b04, 0x1b05, 0x1b06, 0x1b07, /* 0x1b00 */
- 0x1b08, 0x1b09, 0x1b0a, 0x1b0b, 0x1b0c, 0x1b0d, 0x1b0e, 0x1b0f,
- 0x1b10, 0x1b11, 0x1b12, 0x1b13, 0x1b14, 0x1b15, 0x1b16, 0x1b17,
- 0x1b18, 0x1b19, 0x1b1a, 0x1b1b, 0x1b1c, 0x1b1d, 0x1b1e, 0x1b1f,
- 0x1b20, 0x1b21, 0x1b22, 0x1b23, 0x1b24, 0x1b25, 0x1b26, 0x1b27,
- 0x1b28, 0x1b29, 0x1b2a, 0x1b2b, 0x1b2c, 0x1b2d, 0x1b2e, 0x1b2f,
- 0x1b30, 0x1b31, 0x1b32, 0x1b33, 0x1b34, 0x1b35, 0x1b36, 0x1b37,
- 0x1b38, 0x1b39, 0x1b3a, 0x1b3b, 0x1b3c, 0x1b3d, 0x1b3e, 0x1b3f,
- 0x1b40, 0x1b41, 0x1b42, 0x1b43, 0x1b44, 0x1b45, 0x1b46, 0x1b47, /* 0x1b40 */
- 0x1b48, 0x1b49, 0x1b4a, 0x1b4b, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1b50, 0x1b51, 0x1b52, 0x1b53, 0x1b54, 0x1b55, 0x1b56, 0x1b57,
- 0x1b58, 0x1b59, 0x1b5a, 0x1b5b, 0x1b5c, 0x1b5d, 0x1b5e, 0x1b5f,
- 0x1b60, 0x1b61, 0x1b62, 0x1b63, 0x1b64, 0x1b65, 0x1b66, 0x1b67,
- 0x1b68, 0x1b69, 0x1b6a, 0x1b6b, 0x1b6c, 0x1b6d, 0x1b6e, 0x1b6f,
- 0x1b70, 0x1b71, 0x1b72, 0x1b73, 0x1b74, 0x1b75, 0x1b76, 0x1b77,
- 0x1b78, 0x1b79, 0x1b7a, 0x1b7b, 0x1b7c, 0x0000, 0x0000, 0x0000,
- 0x1b80, 0x1b81, 0x1b82, 0x1b83, 0x1b84, 0x1b85, 0x1b86, 0x1b87, /* 0x1b80 */
- 0x1b88, 0x1b89, 0x1b8a, 0x1b8b, 0x1b8c, 0x1b8d, 0x1b8e, 0x1b8f,
- 0x1b90, 0x1b91, 0x1b92, 0x1b93, 0x1b94, 0x1b95, 0x1b96, 0x1b97,
- 0x1b98, 0x1b99, 0x1b9a, 0x1b9b, 0x1b9c, 0x1b9d, 0x1b9e, 0x1b9f,
- 0x1ba0, 0x1ba1, 0x1ba2, 0x1ba3, 0x1ba4, 0x1ba5, 0x1ba6, 0x1ba7,
- 0x1ba8, 0x1ba9, 0x1baa, 0x1bab, 0x1bac, 0x1bad, 0x1bae, 0x1baf,
- 0x1bb0, 0x1bb1, 0x1bb2, 0x1bb3, 0x1bb4, 0x1bb5, 0x1bb6, 0x1bb7,
- 0x1bb8, 0x1bb9, 0x1bba, 0x1bbb, 0x1bbc, 0x1bbd, 0x1bbe, 0x1bbf,
- 0x1bc0, 0x1bc1, 0x1bc2, 0x1bc3, 0x1bc4, 0x1bc5, 0x1bc6, 0x1bc7, /* 0x1bc0 */
- 0x1bc8, 0x1bc9, 0x1bca, 0x1bcb, 0x1bcc, 0x1bcd, 0x1bce, 0x1bcf,
- 0x1bd0, 0x1bd1, 0x1bd2, 0x1bd3, 0x1bd4, 0x1bd5, 0x1bd6, 0x1bd7,
- 0x1bd8, 0x1bd9, 0x1bda, 0x1bdb, 0x1bdc, 0x1bdd, 0x1bde, 0x1bdf,
- 0x1be0, 0x1be1, 0x1be2, 0x1be3, 0x1be4, 0x1be5, 0x1be6, 0x1be7,
- 0x1be8, 0x1be9, 0x1bea, 0x1beb, 0x1bec, 0x1bed, 0x1bee, 0x1bef,
- 0x1bf0, 0x1bf1, 0x1bf2, 0x1bf3, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x1bfc, 0x1bfd, 0x1bfe, 0x1bff,
- 0x1c00, 0x1c01, 0x1c02, 0x1c03, 0x1c04, 0x1c05, 0x1c06, 0x1c07, /* 0x1c00 */
- 0x1c08, 0x1c09, 0x1c0a, 0x1c0b, 0x1c0c, 0x1c0d, 0x1c0e, 0x1c0f,
- 0x1c10, 0x1c11, 0x1c12, 0x1c13, 0x1c14, 0x1c15, 0x1c16, 0x1c17,
- 0x1c18, 0x1c19, 0x1c1a, 0x1c1b, 0x1c1c, 0x1c1d, 0x1c1e, 0x1c1f,
- 0x1c20, 0x1c21, 0x1c22, 0x1c23, 0x1c24, 0x1c25, 0x1c26, 0x1c27,
- 0x1c28, 0x1c29, 0x1c2a, 0x1c2b, 0x1c2c, 0x1c2d, 0x1c2e, 0x1c2f,
- 0x1c30, 0x1c31, 0x1c32, 0x1c33, 0x1c34, 0x1c35, 0x1c36, 0x1c37,
- 0x0000, 0x0000, 0x0000, 0x1c3b, 0x1c3c, 0x1c3d, 0x1c3e, 0x1c3f,
- 0x1c40, 0x1c41, 0x1c42, 0x1c43, 0x1c44, 0x1c45, 0x1c46, 0x1c47, /* 0x1c40 */
- 0x1c48, 0x1c49, 0x0000, 0x0000, 0x0000, 0x1c4d, 0x1c4e, 0x1c4f,
- 0x1c50, 0x1c51, 0x1c52, 0x1c53, 0x1c54, 0x1c55, 0x1c56, 0x1c57,
- 0x1c58, 0x1c59, 0x1c5a, 0x1c5b, 0x1c5c, 0x1c5d, 0x1c5e, 0x1c5f,
- 0x1c60, 0x1c61, 0x1c62, 0x1c63, 0x1c64, 0x1c65, 0x1c66, 0x1c67,
- 0x1c68, 0x1c69, 0x1c6a, 0x1c6b, 0x1c6c, 0x1c6d, 0x1c6e, 0x1c6f,
- 0x1c70, 0x1c71, 0x1c72, 0x1c73, 0x1c74, 0x1c75, 0x1c76, 0x1c77,
- 0x1c78, 0x1c79, 0x1c7a, 0x1c7b, 0x1c7c, 0x1c7d, 0x1c7e, 0x1c7f,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1cc0, 0x1cc1, 0x1cc2, 0x1cc3, 0x1cc4, 0x1cc5, 0x1cc6, 0x1cc7, /* 0x1cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1cd0, 0x1cd1, 0x1cd2, 0x1cd3, 0x1cd4, 0x1cd5, 0x1cd6, 0x1cd7,
- 0x1cd8, 0x1cd9, 0x1cda, 0x1cdb, 0x1cdc, 0x1cdd, 0x1cde, 0x1cdf,
- 0x1ce0, 0x1ce1, 0x1ce2, 0x1ce3, 0x1ce4, 0x1ce5, 0x1ce6, 0x1ce7,
- 0x1ce8, 0x1ce9, 0x1cea, 0x1ceb, 0x1cec, 0x1ced, 0x1cee, 0x1cef,
- 0x1cf0, 0x1cf1, 0x1cf2, 0x1cf3, 0x1cf4, 0x1cf5, 0x1cf6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x1d00, 0x1d01, 0x1d02, 0x1d03, 0x1d04, 0x1d05, 0x1d06, 0x1d07, /* 0x1d00 */
- 0x1d08, 0x1d09, 0x1d0a, 0x1d0b, 0x1d0c, 0x1d0d, 0x1d0e, 0x1d0f,
- 0x1d10, 0x1d11, 0x1d12, 0x1d13, 0x1d14, 0x1d15, 0x1d16, 0x1d17,
- 0x1d18, 0x1d19, 0x1d1a, 0x1d1b, 0x1d1c, 0x1d1d, 0x1d1e, 0x1d1f,
- 0x1d20, 0x1d21, 0x1d22, 0x1d23, 0x1d24, 0x1d25, 0x1d26, 0x1d27,
- 0x1d28, 0x1d29, 0x1d2a, 0x1d2b, 0x1d2c, 0x1d2d, 0x1d2e, 0x1d2f,
- 0x1d30, 0x1d31, 0x1d32, 0x1d33, 0x1d34, 0x1d35, 0x1d36, 0x1d37,
- 0x1d38, 0x1d39, 0x1d3a, 0x1d3b, 0x1d3c, 0x1d3d, 0x1d3e, 0x1d3f,
- 0x1d40, 0x1d41, 0x1d42, 0x1d43, 0x1d44, 0x1d45, 0x1d46, 0x1d47, /* 0x1d40 */
- 0x1d48, 0x1d49, 0x1d4a, 0x1d4b, 0x1d4c, 0x1d4d, 0x1d4e, 0x1d4f,
- 0x1d50, 0x1d51, 0x1d52, 0x1d53, 0x1d54, 0x1d55, 0x1d56, 0x1d57,
- 0x1d58, 0x1d59, 0x1d5a, 0x1d5b, 0x1d5c, 0x1d5d, 0x1d5e, 0x1d5f,
- 0x1d60, 0x1d61, 0x1d62, 0x1d63, 0x1d64, 0x1d65, 0x1d66, 0x1d67,
- 0x1d68, 0x1d69, 0x1d6a, 0x1d6b, 0x1d6c, 0x1d6d, 0x1d6e, 0x1d6f,
- 0x1d70, 0x1d71, 0x1d72, 0x1d73, 0x1d74, 0x1d75, 0x1d76, 0x1d77,
- 0x1d78, 0x1d79, 0x1d7a, 0x1d7b, 0x1d7c, 0x1d7d, 0x1d7e, 0x1d7f,
- 0x1d80, 0x1d81, 0x1d82, 0x1d83, 0x1d84, 0x1d85, 0x1d86, 0x1d87, /* 0x1d80 */
- 0x1d88, 0x1d89, 0x1d8a, 0x1d8b, 0x1d8c, 0x1d8d, 0x1d8e, 0x1d8f,
- 0x1d90, 0x1d91, 0x1d92, 0x1d93, 0x1d94, 0x1d95, 0x1d96, 0x1d97,
- 0x1d98, 0x1d99, 0x1d9a, 0x1d9b, 0x1d9c, 0x1d9d, 0x1d9e, 0x1d9f,
- 0x1da0, 0x1da1, 0x1da2, 0x1da3, 0x1da4, 0x1da5, 0x1da6, 0x1da7,
- 0x1da8, 0x1da9, 0x1daa, 0x1dab, 0x1dac, 0x1dad, 0x1dae, 0x1daf,
- 0x1db0, 0x1db1, 0x1db2, 0x1db3, 0x1db4, 0x1db5, 0x1db6, 0x1db7,
- 0x1db8, 0x1db9, 0x1dba, 0x1dbb, 0x1dbc, 0x1dbd, 0x1dbe, 0x1dbf,
- 0x1dc0, 0x1dc1, 0x1dc2, 0x1dc3, 0x1dc4, 0x1dc5, 0x1dc6, 0x1dc7, /* 0x1dc0 */
- 0x1dc8, 0x1dc9, 0x1dca, 0x1dcb, 0x1dcc, 0x1dcd, 0x1dce, 0x1dcf,
- 0x1dd0, 0x1dd1, 0x1dd2, 0x1dd3, 0x1dd4, 0x1dd5, 0x1dd6, 0x1dd7,
- 0x1dd8, 0x1dd9, 0x1dda, 0x1ddb, 0x1ddc, 0x1ddd, 0x1dde, 0x1ddf,
- 0x1de0, 0x1de1, 0x1de2, 0x1de3, 0x1de4, 0x1de5, 0x1de6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x1dfc, 0x1dfd, 0x1dfe, 0x1dff,
- 0x1e01, 0x1e01, 0x1e03, 0x1e03, 0x1e05, 0x1e05, 0x1e07, 0x1e07, /* 0x1e00 */
- 0x1e09, 0x1e09, 0x1e0b, 0x1e0b, 0x1e0d, 0x1e0d, 0x1e0f, 0x1e0f,
- 0x1e11, 0x1e11, 0x1e13, 0x1e13, 0x1e15, 0x1e15, 0x1e17, 0x1e17,
- 0x1e19, 0x1e19, 0x1e1b, 0x1e1b, 0x1e1d, 0x1e1d, 0x1e1f, 0x1e1f,
- 0x1e21, 0x1e21, 0x1e23, 0x1e23, 0x1e25, 0x1e25, 0x1e27, 0x1e27,
- 0x1e29, 0x1e29, 0x1e2b, 0x1e2b, 0x1e2d, 0x1e2d, 0x1e2f, 0x1e2f,
- 0x1e31, 0x1e31, 0x1e33, 0x1e33, 0x1e35, 0x1e35, 0x1e37, 0x1e37,
- 0x1e39, 0x1e39, 0x1e3b, 0x1e3b, 0x1e3d, 0x1e3d, 0x1e3f, 0x1e3f,
- 0x1e41, 0x1e41, 0x1e43, 0x1e43, 0x1e45, 0x1e45, 0x1e47, 0x1e47, /* 0x1e40 */
- 0x1e49, 0x1e49, 0x1e4b, 0x1e4b, 0x1e4d, 0x1e4d, 0x1e4f, 0x1e4f,
- 0x1e51, 0x1e51, 0x1e53, 0x1e53, 0x1e55, 0x1e55, 0x1e57, 0x1e57,
- 0x1e59, 0x1e59, 0x1e5b, 0x1e5b, 0x1e5d, 0x1e5d, 0x1e5f, 0x1e5f,
- 0x1e61, 0x1e61, 0x1e63, 0x1e63, 0x1e65, 0x1e65, 0x1e67, 0x1e67,
- 0x1e69, 0x1e69, 0x1e6b, 0x1e6b, 0x1e6d, 0x1e6d, 0x1e6f, 0x1e6f,
- 0x1e71, 0x1e71, 0x1e73, 0x1e73, 0x1e75, 0x1e75, 0x1e77, 0x1e77,
- 0x1e79, 0x1e79, 0x1e7b, 0x1e7b, 0x1e7d, 0x1e7d, 0x1e7f, 0x1e7f,
- 0x1e81, 0x1e81, 0x1e83, 0x1e83, 0x1e85, 0x1e85, 0x1e87, 0x1e87, /* 0x1e80 */
- 0x1e89, 0x1e89, 0x1e8b, 0x1e8b, 0x1e8d, 0x1e8d, 0x1e8f, 0x1e8f,
- 0x1e91, 0x1e91, 0x1e93, 0x1e93, 0x1e95, 0x1e95, 0x1e96, 0x1e97,
- 0x1e98, 0x1e99, 0x1e9a, 0x1e9b, 0x1e9c, 0x1e9d, 0x00df, 0x1e9f,
- 0x1ea1, 0x1ea1, 0x1ea3, 0x1ea3, 0x1ea5, 0x1ea5, 0x1ea7, 0x1ea7,
- 0x1ea9, 0x1ea9, 0x1eab, 0x1eab, 0x1ead, 0x1ead, 0x1eaf, 0x1eaf,
- 0x1eb1, 0x1eb1, 0x1eb3, 0x1eb3, 0x1eb5, 0x1eb5, 0x1eb7, 0x1eb7,
- 0x1eb9, 0x1eb9, 0x1ebb, 0x1ebb, 0x1ebd, 0x1ebd, 0x1ebf, 0x1ebf,
- 0x1ec1, 0x1ec1, 0x1ec3, 0x1ec3, 0x1ec5, 0x1ec5, 0x1ec7, 0x1ec7, /* 0x1ec0 */
- 0x1ec9, 0x1ec9, 0x1ecb, 0x1ecb, 0x1ecd, 0x1ecd, 0x1ecf, 0x1ecf,
- 0x1ed1, 0x1ed1, 0x1ed3, 0x1ed3, 0x1ed5, 0x1ed5, 0x1ed7, 0x1ed7,
- 0x1ed9, 0x1ed9, 0x1edb, 0x1edb, 0x1edd, 0x1edd, 0x1edf, 0x1edf,
- 0x1ee1, 0x1ee1, 0x1ee3, 0x1ee3, 0x1ee5, 0x1ee5, 0x1ee7, 0x1ee7,
- 0x1ee9, 0x1ee9, 0x1eeb, 0x1eeb, 0x1eed, 0x1eed, 0x1eef, 0x1eef,
- 0x1ef1, 0x1ef1, 0x1ef3, 0x1ef3, 0x1ef5, 0x1ef5, 0x1ef7, 0x1ef7,
- 0x1ef9, 0x1ef9, 0x1efb, 0x1efb, 0x1efd, 0x1efd, 0x1eff, 0x1eff,
- 0x1f00, 0x1f01, 0x1f02, 0x1f03, 0x1f04, 0x1f05, 0x1f06, 0x1f07, /* 0x1f00 */
- 0x1f00, 0x1f01, 0x1f02, 0x1f03, 0x1f04, 0x1f05, 0x1f06, 0x1f07,
- 0x1f10, 0x1f11, 0x1f12, 0x1f13, 0x1f14, 0x1f15, 0x0000, 0x0000,
- 0x1f10, 0x1f11, 0x1f12, 0x1f13, 0x1f14, 0x1f15, 0x0000, 0x0000,
- 0x1f20, 0x1f21, 0x1f22, 0x1f23, 0x1f24, 0x1f25, 0x1f26, 0x1f27,
- 0x1f20, 0x1f21, 0x1f22, 0x1f23, 0x1f24, 0x1f25, 0x1f26, 0x1f27,
- 0x1f30, 0x1f31, 0x1f32, 0x1f33, 0x1f34, 0x1f35, 0x1f36, 0x1f37,
- 0x1f30, 0x1f31, 0x1f32, 0x1f33, 0x1f34, 0x1f35, 0x1f36, 0x1f37,
- 0x1f40, 0x1f41, 0x1f42, 0x1f43, 0x1f44, 0x1f45, 0x0000, 0x0000, /* 0x1f40 */
- 0x1f40, 0x1f41, 0x1f42, 0x1f43, 0x1f44, 0x1f45, 0x0000, 0x0000,
- 0x1f50, 0x1f51, 0x1f52, 0x1f53, 0x1f54, 0x1f55, 0x1f56, 0x1f57,
- 0x0000, 0x1f51, 0x0000, 0x1f53, 0x0000, 0x1f55, 0x0000, 0x1f57,
- 0x1f60, 0x1f61, 0x1f62, 0x1f63, 0x1f64, 0x1f65, 0x1f66, 0x1f67,
- 0x1f60, 0x1f61, 0x1f62, 0x1f63, 0x1f64, 0x1f65, 0x1f66, 0x1f67,
- 0x1f70, 0x1f71, 0x1f72, 0x1f73, 0x1f74, 0x1f75, 0x1f76, 0x1f77,
- 0x1f78, 0x1f79, 0x1f7a, 0x1f7b, 0x1f7c, 0x1f7d, 0x0000, 0x0000,
- 0x1f80, 0x1f81, 0x1f82, 0x1f83, 0x1f84, 0x1f85, 0x1f86, 0x1f87, /* 0x1f80 */
- 0x1f80, 0x1f81, 0x1f82, 0x1f83, 0x1f84, 0x1f85, 0x1f86, 0x1f87,
- 0x1f90, 0x1f91, 0x1f92, 0x1f93, 0x1f94, 0x1f95, 0x1f96, 0x1f97,
- 0x1f90, 0x1f91, 0x1f92, 0x1f93, 0x1f94, 0x1f95, 0x1f96, 0x1f97,
- 0x1fa0, 0x1fa1, 0x1fa2, 0x1fa3, 0x1fa4, 0x1fa5, 0x1fa6, 0x1fa7,
- 0x1fa0, 0x1fa1, 0x1fa2, 0x1fa3, 0x1fa4, 0x1fa5, 0x1fa6, 0x1fa7,
- 0x1fb0, 0x1fb1, 0x1fb2, 0x1fb3, 0x1fb4, 0x0000, 0x1fb6, 0x1fb7,
- 0x1fb0, 0x1fb1, 0x1f70, 0x1f71, 0x1fb3, 0x1fbd, 0x1fbe, 0x1fbf,
- 0x1fc0, 0x1fc1, 0x1fc2, 0x1fc3, 0x1fc4, 0x0000, 0x1fc6, 0x1fc7, /* 0x1fc0 */
- 0x1f72, 0x1f73, 0x1f74, 0x1f75, 0x1fc3, 0x1fcd, 0x1fce, 0x1fcf,
- 0x1fd0, 0x1fd1, 0x1fd2, 0x1fd3, 0x0000, 0x0000, 0x1fd6, 0x1fd7,
- 0x1fd0, 0x1fd1, 0x1f76, 0x1f77, 0x0000, 0x1fdd, 0x1fde, 0x1fdf,
- 0x1fe0, 0x1fe1, 0x1fe2, 0x1fe3, 0x1fe4, 0x1fe5, 0x1fe6, 0x1fe7,
- 0x1fe0, 0x1fe1, 0x1f7a, 0x1f7b, 0x1fe5, 0x1fed, 0x1fee, 0x1fef,
- 0x0000, 0x0000, 0x1ff2, 0x1ff3, 0x1ff4, 0x0000, 0x1ff6, 0x1ff7,
- 0x1f78, 0x1f79, 0x1f7c, 0x1f7d, 0x1ff3, 0x1ffd, 0x1ffe, 0x0000,
- 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006, 0x2007, /* 0x2000 */
- 0x2008, 0x2009, 0x200a, 0x200b, 0x200c, 0x200d, 0x200e, 0x200f,
- 0x2010, 0x2011, 0x2012, 0x2013, 0x2014, 0x2015, 0x2016, 0x2017,
- 0x2018, 0x2019, 0x201a, 0x201b, 0x201c, 0x201d, 0x201e, 0x201f,
- 0x2020, 0x2021, 0x2022, 0x2023, 0x2024, 0x2025, 0x2026, 0x2027,
- 0x2028, 0x2029, 0x202a, 0x202b, 0x202c, 0x202d, 0x202e, 0x202f,
- 0x2030, 0x2031, 0x2032, 0x2033, 0x2034, 0x2035, 0x2036, 0x2037,
- 0x2038, 0x2039, 0x203a, 0x203b, 0x203c, 0x203d, 0x203e, 0x203f,
- 0x2040, 0x2041, 0x2042, 0x2043, 0x2044, 0x2045, 0x2046, 0x2047, /* 0x2040 */
- 0x2048, 0x2049, 0x204a, 0x204b, 0x204c, 0x204d, 0x204e, 0x204f,
- 0x2050, 0x2051, 0x2052, 0x2053, 0x2054, 0x2055, 0x2056, 0x2057,
- 0x2058, 0x2059, 0x205a, 0x205b, 0x205c, 0x205d, 0x205e, 0x205f,
- 0x2060, 0x2061, 0x2062, 0x2063, 0x2064, 0x0000, 0x2066, 0x2067,
- 0x2068, 0x2069, 0x206a, 0x206b, 0x206c, 0x206d, 0x206e, 0x206f,
- 0x2070, 0x2071, 0x0000, 0x0000, 0x2074, 0x2075, 0x2076, 0x2077,
- 0x2078, 0x2079, 0x207a, 0x207b, 0x207c, 0x207d, 0x207e, 0x207f,
- 0x2080, 0x2081, 0x2082, 0x2083, 0x2084, 0x2085, 0x2086, 0x2087, /* 0x2080 */
- 0x2088, 0x2089, 0x208a, 0x208b, 0x208c, 0x208d, 0x208e, 0x0000,
- 0x2090, 0x2091, 0x2092, 0x2093, 0x2094, 0x2095, 0x2096, 0x2097,
- 0x2098, 0x2099, 0x209a, 0x209b, 0x209c, 0x0000, 0x0000, 0x0000,
- 0x20a0, 0x20a1, 0x20a2, 0x20a3, 0x20a4, 0x20a5, 0x20a6, 0x20a7,
- 0x20a8, 0x20a9, 0x20aa, 0x20ab, 0x20ac, 0x20ad, 0x20ae, 0x20af,
- 0x20b0, 0x20b1, 0x20b2, 0x20b3, 0x20b4, 0x20b5, 0x20b6, 0x20b7,
- 0x20b8, 0x20b9, 0x20ba, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x20c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x20d0, 0x20d1, 0x20d2, 0x20d3, 0x20d4, 0x20d5, 0x20d6, 0x20d7,
- 0x20d8, 0x20d9, 0x20da, 0x20db, 0x20dc, 0x20dd, 0x20de, 0x20df,
- 0x20e0, 0x20e1, 0x20e2, 0x20e3, 0x20e4, 0x20e5, 0x20e6, 0x20e7,
- 0x20e8, 0x20e9, 0x20ea, 0x20eb, 0x20ec, 0x20ed, 0x20ee, 0x20ef,
- 0x20f0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2100, 0x2101, 0x2102, 0x2103, 0x2104, 0x2105, 0x2106, 0x2107, /* 0x2100 */
- 0x2108, 0x2109, 0x210a, 0x210b, 0x210c, 0x210d, 0x210e, 0x210f,
- 0x2110, 0x2111, 0x2112, 0x2113, 0x2114, 0x2115, 0x2116, 0x2117,
- 0x2118, 0x2119, 0x211a, 0x211b, 0x211c, 0x211d, 0x211e, 0x211f,
- 0x2120, 0x2121, 0x2122, 0x2123, 0x2124, 0x2125, 0x03c9, 0x2127,
- 0x2128, 0x2129, 0x006b, 0x00e5, 0x212c, 0x212d, 0x212e, 0x212f,
- 0x2130, 0x2131, 0x214e, 0x2133, 0x2134, 0x2135, 0x2136, 0x2137,
- 0x2138, 0x2139, 0x213a, 0x213b, 0x213c, 0x213d, 0x213e, 0x213f,
- 0x2140, 0x2141, 0x2142, 0x2143, 0x2144, 0x2145, 0x2146, 0x2147, /* 0x2140 */
- 0x2148, 0x2149, 0x214a, 0x214b, 0x214c, 0x214d, 0x214e, 0x214f,
- 0x2150, 0x2151, 0x2152, 0x2153, 0x2154, 0x2155, 0x2156, 0x2157,
- 0x2158, 0x2159, 0x215a, 0x215b, 0x215c, 0x215d, 0x215e, 0x215f,
- 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177,
- 0x2178, 0x2179, 0x217a, 0x217b, 0x217c, 0x217d, 0x217e, 0x217f,
- 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177,
- 0x2178, 0x2179, 0x217a, 0x217b, 0x217c, 0x217d, 0x217e, 0x217f,
- 0x2180, 0x2181, 0x2182, 0x2184, 0x2184, 0x2185, 0x2186, 0x2187, /* 0x2180 */
- 0x2188, 0x2189, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2190, 0x2191, 0x2192, 0x2193, 0x2194, 0x2195, 0x2196, 0x2197,
- 0x2198, 0x2199, 0x219a, 0x219b, 0x219c, 0x219d, 0x219e, 0x219f,
- 0x21a0, 0x21a1, 0x21a2, 0x21a3, 0x21a4, 0x21a5, 0x21a6, 0x21a7,
- 0x21a8, 0x21a9, 0x21aa, 0x21ab, 0x21ac, 0x21ad, 0x21ae, 0x21af,
- 0x21b0, 0x21b1, 0x21b2, 0x21b3, 0x21b4, 0x21b5, 0x21b6, 0x21b7,
- 0x21b8, 0x21b9, 0x21ba, 0x21bb, 0x21bc, 0x21bd, 0x21be, 0x21bf,
- 0x21c0, 0x21c1, 0x21c2, 0x21c3, 0x21c4, 0x21c5, 0x21c6, 0x21c7, /* 0x21c0 */
- 0x21c8, 0x21c9, 0x21ca, 0x21cb, 0x21cc, 0x21cd, 0x21ce, 0x21cf,
- 0x21d0, 0x21d1, 0x21d2, 0x21d3, 0x21d4, 0x21d5, 0x21d6, 0x21d7,
- 0x21d8, 0x21d9, 0x21da, 0x21db, 0x21dc, 0x21dd, 0x21de, 0x21df,
- 0x21e0, 0x21e1, 0x21e2, 0x21e3, 0x21e4, 0x21e5, 0x21e6, 0x21e7,
- 0x21e8, 0x21e9, 0x21ea, 0x21eb, 0x21ec, 0x21ed, 0x21ee, 0x21ef,
- 0x21f0, 0x21f1, 0x21f2, 0x21f3, 0x21f4, 0x21f5, 0x21f6, 0x21f7,
- 0x21f8, 0x21f9, 0x21fa, 0x21fb, 0x21fc, 0x21fd, 0x21fe, 0x21ff,
- 0x2200, 0x2201, 0x2202, 0x2203, 0x2204, 0x2205, 0x2206, 0x2207, /* 0x2200 */
- 0x2208, 0x2209, 0x220a, 0x220b, 0x220c, 0x220d, 0x220e, 0x220f,
- 0x2210, 0x2211, 0x2212, 0x2213, 0x2214, 0x2215, 0x2216, 0x2217,
- 0x2218, 0x2219, 0x221a, 0x221b, 0x221c, 0x221d, 0x221e, 0x221f,
- 0x2220, 0x2221, 0x2222, 0x2223, 0x2224, 0x2225, 0x2226, 0x2227,
- 0x2228, 0x2229, 0x222a, 0x222b, 0x222c, 0x222d, 0x222e, 0x222f,
- 0x2230, 0x2231, 0x2232, 0x2233, 0x2234, 0x2235, 0x2236, 0x2237,
- 0x2238, 0x2239, 0x223a, 0x223b, 0x223c, 0x223d, 0x223e, 0x223f,
- 0x2240, 0x2241, 0x2242, 0x2243, 0x2244, 0x2245, 0x2246, 0x2247, /* 0x2240 */
- 0x2248, 0x2249, 0x224a, 0x224b, 0x224c, 0x224d, 0x224e, 0x224f,
- 0x2250, 0x2251, 0x2252, 0x2253, 0x2254, 0x2255, 0x2256, 0x2257,
- 0x2258, 0x2259, 0x225a, 0x225b, 0x225c, 0x225d, 0x225e, 0x225f,
- 0x2260, 0x2261, 0x2262, 0x2263, 0x2264, 0x2265, 0x2266, 0x2267,
- 0x2268, 0x2269, 0x226a, 0x226b, 0x226c, 0x226d, 0x226e, 0x226f,
- 0x2270, 0x2271, 0x2272, 0x2273, 0x2274, 0x2275, 0x2276, 0x2277,
- 0x2278, 0x2279, 0x227a, 0x227b, 0x227c, 0x227d, 0x227e, 0x227f,
- 0x2280, 0x2281, 0x2282, 0x2283, 0x2284, 0x2285, 0x2286, 0x2287, /* 0x2280 */
- 0x2288, 0x2289, 0x228a, 0x228b, 0x228c, 0x228d, 0x228e, 0x228f,
- 0x2290, 0x2291, 0x2292, 0x2293, 0x2294, 0x2295, 0x2296, 0x2297,
- 0x2298, 0x2299, 0x229a, 0x229b, 0x229c, 0x229d, 0x229e, 0x229f,
- 0x22a0, 0x22a1, 0x22a2, 0x22a3, 0x22a4, 0x22a5, 0x22a6, 0x22a7,
- 0x22a8, 0x22a9, 0x22aa, 0x22ab, 0x22ac, 0x22ad, 0x22ae, 0x22af,
- 0x22b0, 0x22b1, 0x22b2, 0x22b3, 0x22b4, 0x22b5, 0x22b6, 0x22b7,
- 0x22b8, 0x22b9, 0x22ba, 0x22bb, 0x22bc, 0x22bd, 0x22be, 0x22bf,
- 0x22c0, 0x22c1, 0x22c2, 0x22c3, 0x22c4, 0x22c5, 0x22c6, 0x22c7, /* 0x22c0 */
- 0x22c8, 0x22c9, 0x22ca, 0x22cb, 0x22cc, 0x22cd, 0x22ce, 0x22cf,
- 0x22d0, 0x22d1, 0x22d2, 0x22d3, 0x22d4, 0x22d5, 0x22d6, 0x22d7,
- 0x22d8, 0x22d9, 0x22da, 0x22db, 0x22dc, 0x22dd, 0x22de, 0x22df,
- 0x22e0, 0x22e1, 0x22e2, 0x22e3, 0x22e4, 0x22e5, 0x22e6, 0x22e7,
- 0x22e8, 0x22e9, 0x22ea, 0x22eb, 0x22ec, 0x22ed, 0x22ee, 0x22ef,
- 0x22f0, 0x22f1, 0x22f2, 0x22f3, 0x22f4, 0x22f5, 0x22f6, 0x22f7,
- 0x22f8, 0x22f9, 0x22fa, 0x22fb, 0x22fc, 0x22fd, 0x22fe, 0x22ff,
- 0x2300, 0x2301, 0x2302, 0x2303, 0x2304, 0x2305, 0x2306, 0x2307, /* 0x2300 */
- 0x2308, 0x2309, 0x230a, 0x230b, 0x230c, 0x230d, 0x230e, 0x230f,
- 0x2310, 0x2311, 0x2312, 0x2313, 0x2314, 0x2315, 0x2316, 0x2317,
- 0x2318, 0x2319, 0x231a, 0x231b, 0x231c, 0x231d, 0x231e, 0x231f,
- 0x2320, 0x2321, 0x2322, 0x2323, 0x2324, 0x2325, 0x2326, 0x2327,
- 0x2328, 0x2329, 0x232a, 0x232b, 0x232c, 0x232d, 0x232e, 0x232f,
- 0x2330, 0x2331, 0x2332, 0x2333, 0x2334, 0x2335, 0x2336, 0x2337,
- 0x2338, 0x2339, 0x233a, 0x233b, 0x233c, 0x233d, 0x233e, 0x233f,
- 0x2340, 0x2341, 0x2342, 0x2343, 0x2344, 0x2345, 0x2346, 0x2347, /* 0x2340 */
- 0x2348, 0x2349, 0x234a, 0x234b, 0x234c, 0x234d, 0x234e, 0x234f,
- 0x2350, 0x2351, 0x2352, 0x2353, 0x2354, 0x2355, 0x2356, 0x2357,
- 0x2358, 0x2359, 0x235a, 0x235b, 0x235c, 0x235d, 0x235e, 0x235f,
- 0x2360, 0x2361, 0x2362, 0x2363, 0x2364, 0x2365, 0x2366, 0x2367,
- 0x2368, 0x2369, 0x236a, 0x236b, 0x236c, 0x236d, 0x236e, 0x236f,
- 0x2370, 0x2371, 0x2372, 0x2373, 0x2374, 0x2375, 0x2376, 0x2377,
- 0x2378, 0x2379, 0x237a, 0x237b, 0x237c, 0x237d, 0x237e, 0x237f,
- 0x2380, 0x2381, 0x2382, 0x2383, 0x2384, 0x2385, 0x2386, 0x2387, /* 0x2380 */
- 0x2388, 0x2389, 0x238a, 0x238b, 0x238c, 0x238d, 0x238e, 0x238f,
- 0x2390, 0x2391, 0x2392, 0x2393, 0x2394, 0x2395, 0x2396, 0x2397,
- 0x2398, 0x2399, 0x239a, 0x239b, 0x239c, 0x239d, 0x239e, 0x239f,
- 0x23a0, 0x23a1, 0x23a2, 0x23a3, 0x23a4, 0x23a5, 0x23a6, 0x23a7,
- 0x23a8, 0x23a9, 0x23aa, 0x23ab, 0x23ac, 0x23ad, 0x23ae, 0x23af,
- 0x23b0, 0x23b1, 0x23b2, 0x23b3, 0x23b4, 0x23b5, 0x23b6, 0x23b7,
- 0x23b8, 0x23b9, 0x23ba, 0x23bb, 0x23bc, 0x23bd, 0x23be, 0x23bf,
- 0x23c0, 0x23c1, 0x23c2, 0x23c3, 0x23c4, 0x23c5, 0x23c6, 0x23c7, /* 0x23c0 */
- 0x23c8, 0x23c9, 0x23ca, 0x23cb, 0x23cc, 0x23cd, 0x23ce, 0x23cf,
- 0x23d0, 0x23d1, 0x23d2, 0x23d3, 0x23d4, 0x23d5, 0x23d6, 0x23d7,
- 0x23d8, 0x23d9, 0x23da, 0x23db, 0x23dc, 0x23dd, 0x23de, 0x23df,
- 0x23e0, 0x23e1, 0x23e2, 0x23e3, 0x23e4, 0x23e5, 0x23e6, 0x23e7,
- 0x23e8, 0x23e9, 0x23ea, 0x23eb, 0x23ec, 0x23ed, 0x23ee, 0x23ef,
- 0x23f0, 0x23f1, 0x23f2, 0x23f3, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2400, 0x2401, 0x2402, 0x2403, 0x2404, 0x2405, 0x2406, 0x2407, /* 0x2400 */
- 0x2408, 0x2409, 0x240a, 0x240b, 0x240c, 0x240d, 0x240e, 0x240f,
- 0x2410, 0x2411, 0x2412, 0x2413, 0x2414, 0x2415, 0x2416, 0x2417,
- 0x2418, 0x2419, 0x241a, 0x241b, 0x241c, 0x241d, 0x241e, 0x241f,
- 0x2420, 0x2421, 0x2422, 0x2423, 0x2424, 0x2425, 0x2426, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2440, 0x2441, 0x2442, 0x2443, 0x2444, 0x2445, 0x2446, 0x2447, /* 0x2440 */
- 0x2448, 0x2449, 0x244a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467,
- 0x2468, 0x2469, 0x246a, 0x246b, 0x246c, 0x246d, 0x246e, 0x246f,
- 0x2470, 0x2471, 0x2472, 0x2473, 0x2474, 0x2475, 0x2476, 0x2477,
- 0x2478, 0x2479, 0x247a, 0x247b, 0x247c, 0x247d, 0x247e, 0x247f,
- 0x2480, 0x2481, 0x2482, 0x2483, 0x2484, 0x2485, 0x2486, 0x2487, /* 0x2480 */
- 0x2488, 0x2489, 0x248a, 0x248b, 0x248c, 0x248d, 0x248e, 0x248f,
- 0x2490, 0x2491, 0x2492, 0x2493, 0x2494, 0x2495, 0x2496, 0x2497,
- 0x2498, 0x2499, 0x249a, 0x249b, 0x249c, 0x249d, 0x249e, 0x249f,
- 0x24a0, 0x24a1, 0x24a2, 0x24a3, 0x24a4, 0x24a5, 0x24a6, 0x24a7,
- 0x24a8, 0x24a9, 0x24aa, 0x24ab, 0x24ac, 0x24ad, 0x24ae, 0x24af,
- 0x24b0, 0x24b1, 0x24b2, 0x24b3, 0x24b4, 0x24b5, 0x24d0, 0x24d1,
- 0x24d2, 0x24d3, 0x24d4, 0x24d5, 0x24d6, 0x24d7, 0x24d8, 0x24d9,
- 0x24da, 0x24db, 0x24dc, 0x24dd, 0x24de, 0x24df, 0x24e0, 0x24e1, /* 0x24c0 */
- 0x24e2, 0x24e3, 0x24e4, 0x24e5, 0x24e6, 0x24e7, 0x24e8, 0x24e9,
- 0x24d0, 0x24d1, 0x24d2, 0x24d3, 0x24d4, 0x24d5, 0x24d6, 0x24d7,
- 0x24d8, 0x24d9, 0x24da, 0x24db, 0x24dc, 0x24dd, 0x24de, 0x24df,
- 0x24e0, 0x24e1, 0x24e2, 0x24e3, 0x24e4, 0x24e5, 0x24e6, 0x24e7,
- 0x24e8, 0x24e9, 0x24ea, 0x24eb, 0x24ec, 0x24ed, 0x24ee, 0x24ef,
- 0x24f0, 0x24f1, 0x24f2, 0x24f3, 0x24f4, 0x24f5, 0x24f6, 0x24f7,
- 0x24f8, 0x24f9, 0x24fa, 0x24fb, 0x24fc, 0x24fd, 0x24fe, 0x24ff,
- 0x2500, 0x2501, 0x2502, 0x2503, 0x2504, 0x2505, 0x2506, 0x2507, /* 0x2500 */
- 0x2508, 0x2509, 0x250a, 0x250b, 0x250c, 0x250d, 0x250e, 0x250f,
- 0x2510, 0x2511, 0x2512, 0x2513, 0x2514, 0x2515, 0x2516, 0x2517,
- 0x2518, 0x2519, 0x251a, 0x251b, 0x251c, 0x251d, 0x251e, 0x251f,
- 0x2520, 0x2521, 0x2522, 0x2523, 0x2524, 0x2525, 0x2526, 0x2527,
- 0x2528, 0x2529, 0x252a, 0x252b, 0x252c, 0x252d, 0x252e, 0x252f,
- 0x2530, 0x2531, 0x2532, 0x2533, 0x2534, 0x2535, 0x2536, 0x2537,
- 0x2538, 0x2539, 0x253a, 0x253b, 0x253c, 0x253d, 0x253e, 0x253f,
- 0x2540, 0x2541, 0x2542, 0x2543, 0x2544, 0x2545, 0x2546, 0x2547, /* 0x2540 */
- 0x2548, 0x2549, 0x254a, 0x254b, 0x254c, 0x254d, 0x254e, 0x254f,
- 0x2550, 0x2551, 0x2552, 0x2553, 0x2554, 0x2555, 0x2556, 0x2557,
- 0x2558, 0x2559, 0x255a, 0x255b, 0x255c, 0x255d, 0x255e, 0x255f,
- 0x2560, 0x2561, 0x2562, 0x2563, 0x2564, 0x2565, 0x2566, 0x2567,
- 0x2568, 0x2569, 0x256a, 0x256b, 0x256c, 0x256d, 0x256e, 0x256f,
- 0x2570, 0x2571, 0x2572, 0x2573, 0x2574, 0x2575, 0x2576, 0x2577,
- 0x2578, 0x2579, 0x257a, 0x257b, 0x257c, 0x257d, 0x257e, 0x257f,
- 0x2580, 0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586, 0x2587, /* 0x2580 */
- 0x2588, 0x2589, 0x258a, 0x258b, 0x258c, 0x258d, 0x258e, 0x258f,
- 0x2590, 0x2591, 0x2592, 0x2593, 0x2594, 0x2595, 0x2596, 0x2597,
- 0x2598, 0x2599, 0x259a, 0x259b, 0x259c, 0x259d, 0x259e, 0x259f,
- 0x25a0, 0x25a1, 0x25a2, 0x25a3, 0x25a4, 0x25a5, 0x25a6, 0x25a7,
- 0x25a8, 0x25a9, 0x25aa, 0x25ab, 0x25ac, 0x25ad, 0x25ae, 0x25af,
- 0x25b0, 0x25b1, 0x25b2, 0x25b3, 0x25b4, 0x25b5, 0x25b6, 0x25b7,
- 0x25b8, 0x25b9, 0x25ba, 0x25bb, 0x25bc, 0x25bd, 0x25be, 0x25bf,
- 0x25c0, 0x25c1, 0x25c2, 0x25c3, 0x25c4, 0x25c5, 0x25c6, 0x25c7, /* 0x25c0 */
- 0x25c8, 0x25c9, 0x25ca, 0x25cb, 0x25cc, 0x25cd, 0x25ce, 0x25cf,
- 0x25d0, 0x25d1, 0x25d2, 0x25d3, 0x25d4, 0x25d5, 0x25d6, 0x25d7,
- 0x25d8, 0x25d9, 0x25da, 0x25db, 0x25dc, 0x25dd, 0x25de, 0x25df,
- 0x25e0, 0x25e1, 0x25e2, 0x25e3, 0x25e4, 0x25e5, 0x25e6, 0x25e7,
- 0x25e8, 0x25e9, 0x25ea, 0x25eb, 0x25ec, 0x25ed, 0x25ee, 0x25ef,
- 0x25f0, 0x25f1, 0x25f2, 0x25f3, 0x25f4, 0x25f5, 0x25f6, 0x25f7,
- 0x25f8, 0x25f9, 0x25fa, 0x25fb, 0x25fc, 0x25fd, 0x25fe, 0x25ff,
- 0x2600, 0x2601, 0x2602, 0x2603, 0x2604, 0x2605, 0x2606, 0x2607, /* 0x2600 */
- 0x2608, 0x2609, 0x260a, 0x260b, 0x260c, 0x260d, 0x260e, 0x260f,
- 0x2610, 0x2611, 0x2612, 0x2613, 0x2614, 0x2615, 0x2616, 0x2617,
- 0x2618, 0x2619, 0x261a, 0x261b, 0x261c, 0x261d, 0x261e, 0x261f,
- 0x2620, 0x2621, 0x2622, 0x2623, 0x2624, 0x2625, 0x2626, 0x2627,
- 0x2628, 0x2629, 0x262a, 0x262b, 0x262c, 0x262d, 0x262e, 0x262f,
- 0x2630, 0x2631, 0x2632, 0x2633, 0x2634, 0x2635, 0x2636, 0x2637,
- 0x2638, 0x2639, 0x263a, 0x263b, 0x263c, 0x263d, 0x263e, 0x263f,
- 0x2640, 0x2641, 0x2642, 0x2643, 0x2644, 0x2645, 0x2646, 0x2647, /* 0x2640 */
- 0x2648, 0x2649, 0x264a, 0x264b, 0x264c, 0x264d, 0x264e, 0x264f,
- 0x2650, 0x2651, 0x2652, 0x2653, 0x2654, 0x2655, 0x2656, 0x2657,
- 0x2658, 0x2659, 0x265a, 0x265b, 0x265c, 0x265d, 0x265e, 0x265f,
- 0x2660, 0x2661, 0x2662, 0x2663, 0x2664, 0x2665, 0x2666, 0x2667,
- 0x2668, 0x2669, 0x266a, 0x266b, 0x266c, 0x266d, 0x266e, 0x266f,
- 0x2670, 0x2671, 0x2672, 0x2673, 0x2674, 0x2675, 0x2676, 0x2677,
- 0x2678, 0x2679, 0x267a, 0x267b, 0x267c, 0x267d, 0x267e, 0x267f,
- 0x2680, 0x2681, 0x2682, 0x2683, 0x2684, 0x2685, 0x2686, 0x2687, /* 0x2680 */
- 0x2688, 0x2689, 0x268a, 0x268b, 0x268c, 0x268d, 0x268e, 0x268f,
- 0x2690, 0x2691, 0x2692, 0x2693, 0x2694, 0x2695, 0x2696, 0x2697,
- 0x2698, 0x2699, 0x269a, 0x269b, 0x269c, 0x269d, 0x269e, 0x269f,
- 0x26a0, 0x26a1, 0x26a2, 0x26a3, 0x26a4, 0x26a5, 0x26a6, 0x26a7,
- 0x26a8, 0x26a9, 0x26aa, 0x26ab, 0x26ac, 0x26ad, 0x26ae, 0x26af,
- 0x26b0, 0x26b1, 0x26b2, 0x26b3, 0x26b4, 0x26b5, 0x26b6, 0x26b7,
- 0x26b8, 0x26b9, 0x26ba, 0x26bb, 0x26bc, 0x26bd, 0x26be, 0x26bf,
- 0x26c0, 0x26c1, 0x26c2, 0x26c3, 0x26c4, 0x26c5, 0x26c6, 0x26c7, /* 0x26c0 */
- 0x26c8, 0x26c9, 0x26ca, 0x26cb, 0x26cc, 0x26cd, 0x26ce, 0x26cf,
- 0x26d0, 0x26d1, 0x26d2, 0x26d3, 0x26d4, 0x26d5, 0x26d6, 0x26d7,
- 0x26d8, 0x26d9, 0x26da, 0x26db, 0x26dc, 0x26dd, 0x26de, 0x26df,
- 0x26e0, 0x26e1, 0x26e2, 0x26e3, 0x26e4, 0x26e5, 0x26e6, 0x26e7,
- 0x26e8, 0x26e9, 0x26ea, 0x26eb, 0x26ec, 0x26ed, 0x26ee, 0x26ef,
- 0x26f0, 0x26f1, 0x26f2, 0x26f3, 0x26f4, 0x26f5, 0x26f6, 0x26f7,
- 0x26f8, 0x26f9, 0x26fa, 0x26fb, 0x26fc, 0x26fd, 0x26fe, 0x26ff,
- 0x0000, 0x2701, 0x2702, 0x2703, 0x2704, 0x2705, 0x2706, 0x2707, /* 0x2700 */
- 0x2708, 0x2709, 0x270a, 0x270b, 0x270c, 0x270d, 0x270e, 0x270f,
- 0x2710, 0x2711, 0x2712, 0x2713, 0x2714, 0x2715, 0x2716, 0x2717,
- 0x2718, 0x2719, 0x271a, 0x271b, 0x271c, 0x271d, 0x271e, 0x271f,
- 0x2720, 0x2721, 0x2722, 0x2723, 0x2724, 0x2725, 0x2726, 0x2727,
- 0x2728, 0x2729, 0x272a, 0x272b, 0x272c, 0x272d, 0x272e, 0x272f,
- 0x2730, 0x2731, 0x2732, 0x2733, 0x2734, 0x2735, 0x2736, 0x2737,
- 0x2738, 0x2739, 0x273a, 0x273b, 0x273c, 0x273d, 0x273e, 0x273f,
- 0x2740, 0x2741, 0x2742, 0x2743, 0x2744, 0x2745, 0x2746, 0x2747, /* 0x2740 */
- 0x2748, 0x2749, 0x274a, 0x274b, 0x274c, 0x274d, 0x274e, 0x274f,
- 0x2750, 0x2751, 0x2752, 0x2753, 0x2754, 0x2755, 0x2756, 0x2757,
- 0x2758, 0x2759, 0x275a, 0x275b, 0x275c, 0x275d, 0x275e, 0x275f,
- 0x2760, 0x2761, 0x2762, 0x2763, 0x2764, 0x2765, 0x2766, 0x2767,
- 0x2768, 0x2769, 0x276a, 0x276b, 0x276c, 0x276d, 0x276e, 0x276f,
- 0x2770, 0x2771, 0x2772, 0x2773, 0x2774, 0x2775, 0x2776, 0x2777,
- 0x2778, 0x2779, 0x277a, 0x277b, 0x277c, 0x277d, 0x277e, 0x277f,
- 0x2780, 0x2781, 0x2782, 0x2783, 0x2784, 0x2785, 0x2786, 0x2787, /* 0x2780 */
- 0x2788, 0x2789, 0x278a, 0x278b, 0x278c, 0x278d, 0x278e, 0x278f,
- 0x2790, 0x2791, 0x2792, 0x2793, 0x2794, 0x2795, 0x2796, 0x2797,
- 0x2798, 0x2799, 0x279a, 0x279b, 0x279c, 0x279d, 0x279e, 0x279f,
- 0x27a0, 0x27a1, 0x27a2, 0x27a3, 0x27a4, 0x27a5, 0x27a6, 0x27a7,
- 0x27a8, 0x27a9, 0x27aa, 0x27ab, 0x27ac, 0x27ad, 0x27ae, 0x27af,
- 0x27b0, 0x27b1, 0x27b2, 0x27b3, 0x27b4, 0x27b5, 0x27b6, 0x27b7,
- 0x27b8, 0x27b9, 0x27ba, 0x27bb, 0x27bc, 0x27bd, 0x27be, 0x27bf,
- 0x27c0, 0x27c1, 0x27c2, 0x27c3, 0x27c4, 0x27c5, 0x27c6, 0x27c7, /* 0x27c0 */
- 0x27c8, 0x27c9, 0x27ca, 0x27cb, 0x27cc, 0x27cd, 0x27ce, 0x27cf,
- 0x27d0, 0x27d1, 0x27d2, 0x27d3, 0x27d4, 0x27d5, 0x27d6, 0x27d7,
- 0x27d8, 0x27d9, 0x27da, 0x27db, 0x27dc, 0x27dd, 0x27de, 0x27df,
- 0x27e0, 0x27e1, 0x27e2, 0x27e3, 0x27e4, 0x27e5, 0x27e6, 0x27e7,
- 0x27e8, 0x27e9, 0x27ea, 0x27eb, 0x27ec, 0x27ed, 0x27ee, 0x27ef,
- 0x27f0, 0x27f1, 0x27f2, 0x27f3, 0x27f4, 0x27f5, 0x27f6, 0x27f7,
- 0x27f8, 0x27f9, 0x27fa, 0x27fb, 0x27fc, 0x27fd, 0x27fe, 0x27ff,
- 0x2800, 0x2801, 0x2802, 0x2803, 0x2804, 0x2805, 0x2806, 0x2807, /* 0x2800 */
- 0x2808, 0x2809, 0x280a, 0x280b, 0x280c, 0x280d, 0x280e, 0x280f,
- 0x2810, 0x2811, 0x2812, 0x2813, 0x2814, 0x2815, 0x2816, 0x2817,
- 0x2818, 0x2819, 0x281a, 0x281b, 0x281c, 0x281d, 0x281e, 0x281f,
- 0x2820, 0x2821, 0x2822, 0x2823, 0x2824, 0x2825, 0x2826, 0x2827,
- 0x2828, 0x2829, 0x282a, 0x282b, 0x282c, 0x282d, 0x282e, 0x282f,
- 0x2830, 0x2831, 0x2832, 0x2833, 0x2834, 0x2835, 0x2836, 0x2837,
- 0x2838, 0x2839, 0x283a, 0x283b, 0x283c, 0x283d, 0x283e, 0x283f,
- 0x2840, 0x2841, 0x2842, 0x2843, 0x2844, 0x2845, 0x2846, 0x2847, /* 0x2840 */
- 0x2848, 0x2849, 0x284a, 0x284b, 0x284c, 0x284d, 0x284e, 0x284f,
- 0x2850, 0x2851, 0x2852, 0x2853, 0x2854, 0x2855, 0x2856, 0x2857,
- 0x2858, 0x2859, 0x285a, 0x285b, 0x285c, 0x285d, 0x285e, 0x285f,
- 0x2860, 0x2861, 0x2862, 0x2863, 0x2864, 0x2865, 0x2866, 0x2867,
- 0x2868, 0x2869, 0x286a, 0x286b, 0x286c, 0x286d, 0x286e, 0x286f,
- 0x2870, 0x2871, 0x2872, 0x2873, 0x2874, 0x2875, 0x2876, 0x2877,
- 0x2878, 0x2879, 0x287a, 0x287b, 0x287c, 0x287d, 0x287e, 0x287f,
- 0x2880, 0x2881, 0x2882, 0x2883, 0x2884, 0x2885, 0x2886, 0x2887, /* 0x2880 */
- 0x2888, 0x2889, 0x288a, 0x288b, 0x288c, 0x288d, 0x288e, 0x288f,
- 0x2890, 0x2891, 0x2892, 0x2893, 0x2894, 0x2895, 0x2896, 0x2897,
- 0x2898, 0x2899, 0x289a, 0x289b, 0x289c, 0x289d, 0x289e, 0x289f,
- 0x28a0, 0x28a1, 0x28a2, 0x28a3, 0x28a4, 0x28a5, 0x28a6, 0x28a7,
- 0x28a8, 0x28a9, 0x28aa, 0x28ab, 0x28ac, 0x28ad, 0x28ae, 0x28af,
- 0x28b0, 0x28b1, 0x28b2, 0x28b3, 0x28b4, 0x28b5, 0x28b6, 0x28b7,
- 0x28b8, 0x28b9, 0x28ba, 0x28bb, 0x28bc, 0x28bd, 0x28be, 0x28bf,
- 0x28c0, 0x28c1, 0x28c2, 0x28c3, 0x28c4, 0x28c5, 0x28c6, 0x28c7, /* 0x28c0 */
- 0x28c8, 0x28c9, 0x28ca, 0x28cb, 0x28cc, 0x28cd, 0x28ce, 0x28cf,
- 0x28d0, 0x28d1, 0x28d2, 0x28d3, 0x28d4, 0x28d5, 0x28d6, 0x28d7,
- 0x28d8, 0x28d9, 0x28da, 0x28db, 0x28dc, 0x28dd, 0x28de, 0x28df,
- 0x28e0, 0x28e1, 0x28e2, 0x28e3, 0x28e4, 0x28e5, 0x28e6, 0x28e7,
- 0x28e8, 0x28e9, 0x28ea, 0x28eb, 0x28ec, 0x28ed, 0x28ee, 0x28ef,
- 0x28f0, 0x28f1, 0x28f2, 0x28f3, 0x28f4, 0x28f5, 0x28f6, 0x28f7,
- 0x28f8, 0x28f9, 0x28fa, 0x28fb, 0x28fc, 0x28fd, 0x28fe, 0x28ff,
- 0x2900, 0x2901, 0x2902, 0x2903, 0x2904, 0x2905, 0x2906, 0x2907, /* 0x2900 */
- 0x2908, 0x2909, 0x290a, 0x290b, 0x290c, 0x290d, 0x290e, 0x290f,
- 0x2910, 0x2911, 0x2912, 0x2913, 0x2914, 0x2915, 0x2916, 0x2917,
- 0x2918, 0x2919, 0x291a, 0x291b, 0x291c, 0x291d, 0x291e, 0x291f,
- 0x2920, 0x2921, 0x2922, 0x2923, 0x2924, 0x2925, 0x2926, 0x2927,
- 0x2928, 0x2929, 0x292a, 0x292b, 0x292c, 0x292d, 0x292e, 0x292f,
- 0x2930, 0x2931, 0x2932, 0x2933, 0x2934, 0x2935, 0x2936, 0x2937,
- 0x2938, 0x2939, 0x293a, 0x293b, 0x293c, 0x293d, 0x293e, 0x293f,
- 0x2940, 0x2941, 0x2942, 0x2943, 0x2944, 0x2945, 0x2946, 0x2947, /* 0x2940 */
- 0x2948, 0x2949, 0x294a, 0x294b, 0x294c, 0x294d, 0x294e, 0x294f,
- 0x2950, 0x2951, 0x2952, 0x2953, 0x2954, 0x2955, 0x2956, 0x2957,
- 0x2958, 0x2959, 0x295a, 0x295b, 0x295c, 0x295d, 0x295e, 0x295f,
- 0x2960, 0x2961, 0x2962, 0x2963, 0x2964, 0x2965, 0x2966, 0x2967,
- 0x2968, 0x2969, 0x296a, 0x296b, 0x296c, 0x296d, 0x296e, 0x296f,
- 0x2970, 0x2971, 0x2972, 0x2973, 0x2974, 0x2975, 0x2976, 0x2977,
- 0x2978, 0x2979, 0x297a, 0x297b, 0x297c, 0x297d, 0x297e, 0x297f,
- 0x2980, 0x2981, 0x2982, 0x2983, 0x2984, 0x2985, 0x2986, 0x2987, /* 0x2980 */
- 0x2988, 0x2989, 0x298a, 0x298b, 0x298c, 0x298d, 0x298e, 0x298f,
- 0x2990, 0x2991, 0x2992, 0x2993, 0x2994, 0x2995, 0x2996, 0x2997,
- 0x2998, 0x2999, 0x299a, 0x299b, 0x299c, 0x299d, 0x299e, 0x299f,
- 0x29a0, 0x29a1, 0x29a2, 0x29a3, 0x29a4, 0x29a5, 0x29a6, 0x29a7,
- 0x29a8, 0x29a9, 0x29aa, 0x29ab, 0x29ac, 0x29ad, 0x29ae, 0x29af,
- 0x29b0, 0x29b1, 0x29b2, 0x29b3, 0x29b4, 0x29b5, 0x29b6, 0x29b7,
- 0x29b8, 0x29b9, 0x29ba, 0x29bb, 0x29bc, 0x29bd, 0x29be, 0x29bf,
- 0x29c0, 0x29c1, 0x29c2, 0x29c3, 0x29c4, 0x29c5, 0x29c6, 0x29c7, /* 0x29c0 */
- 0x29c8, 0x29c9, 0x29ca, 0x29cb, 0x29cc, 0x29cd, 0x29ce, 0x29cf,
- 0x29d0, 0x29d1, 0x29d2, 0x29d3, 0x29d4, 0x29d5, 0x29d6, 0x29d7,
- 0x29d8, 0x29d9, 0x29da, 0x29db, 0x29dc, 0x29dd, 0x29de, 0x29df,
- 0x29e0, 0x29e1, 0x29e2, 0x29e3, 0x29e4, 0x29e5, 0x29e6, 0x29e7,
- 0x29e8, 0x29e9, 0x29ea, 0x29eb, 0x29ec, 0x29ed, 0x29ee, 0x29ef,
- 0x29f0, 0x29f1, 0x29f2, 0x29f3, 0x29f4, 0x29f5, 0x29f6, 0x29f7,
- 0x29f8, 0x29f9, 0x29fa, 0x29fb, 0x29fc, 0x29fd, 0x29fe, 0x29ff,
- 0x2a00, 0x2a01, 0x2a02, 0x2a03, 0x2a04, 0x2a05, 0x2a06, 0x2a07, /* 0x2a00 */
- 0x2a08, 0x2a09, 0x2a0a, 0x2a0b, 0x2a0c, 0x2a0d, 0x2a0e, 0x2a0f,
- 0x2a10, 0x2a11, 0x2a12, 0x2a13, 0x2a14, 0x2a15, 0x2a16, 0x2a17,
- 0x2a18, 0x2a19, 0x2a1a, 0x2a1b, 0x2a1c, 0x2a1d, 0x2a1e, 0x2a1f,
- 0x2a20, 0x2a21, 0x2a22, 0x2a23, 0x2a24, 0x2a25, 0x2a26, 0x2a27,
- 0x2a28, 0x2a29, 0x2a2a, 0x2a2b, 0x2a2c, 0x2a2d, 0x2a2e, 0x2a2f,
- 0x2a30, 0x2a31, 0x2a32, 0x2a33, 0x2a34, 0x2a35, 0x2a36, 0x2a37,
- 0x2a38, 0x2a39, 0x2a3a, 0x2a3b, 0x2a3c, 0x2a3d, 0x2a3e, 0x2a3f,
- 0x2a40, 0x2a41, 0x2a42, 0x2a43, 0x2a44, 0x2a45, 0x2a46, 0x2a47, /* 0x2a40 */
- 0x2a48, 0x2a49, 0x2a4a, 0x2a4b, 0x2a4c, 0x2a4d, 0x2a4e, 0x2a4f,
- 0x2a50, 0x2a51, 0x2a52, 0x2a53, 0x2a54, 0x2a55, 0x2a56, 0x2a57,
- 0x2a58, 0x2a59, 0x2a5a, 0x2a5b, 0x2a5c, 0x2a5d, 0x2a5e, 0x2a5f,
- 0x2a60, 0x2a61, 0x2a62, 0x2a63, 0x2a64, 0x2a65, 0x2a66, 0x2a67,
- 0x2a68, 0x2a69, 0x2a6a, 0x2a6b, 0x2a6c, 0x2a6d, 0x2a6e, 0x2a6f,
- 0x2a70, 0x2a71, 0x2a72, 0x2a73, 0x2a74, 0x2a75, 0x2a76, 0x2a77,
- 0x2a78, 0x2a79, 0x2a7a, 0x2a7b, 0x2a7c, 0x2a7d, 0x2a7e, 0x2a7f,
- 0x2a80, 0x2a81, 0x2a82, 0x2a83, 0x2a84, 0x2a85, 0x2a86, 0x2a87, /* 0x2a80 */
- 0x2a88, 0x2a89, 0x2a8a, 0x2a8b, 0x2a8c, 0x2a8d, 0x2a8e, 0x2a8f,
- 0x2a90, 0x2a91, 0x2a92, 0x2a93, 0x2a94, 0x2a95, 0x2a96, 0x2a97,
- 0x2a98, 0x2a99, 0x2a9a, 0x2a9b, 0x2a9c, 0x2a9d, 0x2a9e, 0x2a9f,
- 0x2aa0, 0x2aa1, 0x2aa2, 0x2aa3, 0x2aa4, 0x2aa5, 0x2aa6, 0x2aa7,
- 0x2aa8, 0x2aa9, 0x2aaa, 0x2aab, 0x2aac, 0x2aad, 0x2aae, 0x2aaf,
- 0x2ab0, 0x2ab1, 0x2ab2, 0x2ab3, 0x2ab4, 0x2ab5, 0x2ab6, 0x2ab7,
- 0x2ab8, 0x2ab9, 0x2aba, 0x2abb, 0x2abc, 0x2abd, 0x2abe, 0x2abf,
- 0x2ac0, 0x2ac1, 0x2ac2, 0x2ac3, 0x2ac4, 0x2ac5, 0x2ac6, 0x2ac7, /* 0x2ac0 */
- 0x2ac8, 0x2ac9, 0x2aca, 0x2acb, 0x2acc, 0x2acd, 0x2ace, 0x2acf,
- 0x2ad0, 0x2ad1, 0x2ad2, 0x2ad3, 0x2ad4, 0x2ad5, 0x2ad6, 0x2ad7,
- 0x2ad8, 0x2ad9, 0x2ada, 0x2adb, 0x2adc, 0x2add, 0x2ade, 0x2adf,
- 0x2ae0, 0x2ae1, 0x2ae2, 0x2ae3, 0x2ae4, 0x2ae5, 0x2ae6, 0x2ae7,
- 0x2ae8, 0x2ae9, 0x2aea, 0x2aeb, 0x2aec, 0x2aed, 0x2aee, 0x2aef,
- 0x2af0, 0x2af1, 0x2af2, 0x2af3, 0x2af4, 0x2af5, 0x2af6, 0x2af7,
- 0x2af8, 0x2af9, 0x2afa, 0x2afb, 0x2afc, 0x2afd, 0x2afe, 0x2aff,
- 0x2b00, 0x2b01, 0x2b02, 0x2b03, 0x2b04, 0x2b05, 0x2b06, 0x2b07, /* 0x2b00 */
- 0x2b08, 0x2b09, 0x2b0a, 0x2b0b, 0x2b0c, 0x2b0d, 0x2b0e, 0x2b0f,
- 0x2b10, 0x2b11, 0x2b12, 0x2b13, 0x2b14, 0x2b15, 0x2b16, 0x2b17,
- 0x2b18, 0x2b19, 0x2b1a, 0x2b1b, 0x2b1c, 0x2b1d, 0x2b1e, 0x2b1f,
- 0x2b20, 0x2b21, 0x2b22, 0x2b23, 0x2b24, 0x2b25, 0x2b26, 0x2b27,
- 0x2b28, 0x2b29, 0x2b2a, 0x2b2b, 0x2b2c, 0x2b2d, 0x2b2e, 0x2b2f,
- 0x2b30, 0x2b31, 0x2b32, 0x2b33, 0x2b34, 0x2b35, 0x2b36, 0x2b37,
- 0x2b38, 0x2b39, 0x2b3a, 0x2b3b, 0x2b3c, 0x2b3d, 0x2b3e, 0x2b3f,
- 0x2b40, 0x2b41, 0x2b42, 0x2b43, 0x2b44, 0x2b45, 0x2b46, 0x2b47, /* 0x2b40 */
- 0x2b48, 0x2b49, 0x2b4a, 0x2b4b, 0x2b4c, 0x0000, 0x0000, 0x0000,
- 0x2b50, 0x2b51, 0x2b52, 0x2b53, 0x2b54, 0x2b55, 0x2b56, 0x2b57,
- 0x2b58, 0x2b59, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2c30, 0x2c31, 0x2c32, 0x2c33, 0x2c34, 0x2c35, 0x2c36, 0x2c37, /* 0x2c00 */
- 0x2c38, 0x2c39, 0x2c3a, 0x2c3b, 0x2c3c, 0x2c3d, 0x2c3e, 0x2c3f,
- 0x2c40, 0x2c41, 0x2c42, 0x2c43, 0x2c44, 0x2c45, 0x2c46, 0x2c47,
- 0x2c48, 0x2c49, 0x2c4a, 0x2c4b, 0x2c4c, 0x2c4d, 0x2c4e, 0x2c4f,
- 0x2c50, 0x2c51, 0x2c52, 0x2c53, 0x2c54, 0x2c55, 0x2c56, 0x2c57,
- 0x2c58, 0x2c59, 0x2c5a, 0x2c5b, 0x2c5c, 0x2c5d, 0x2c5e, 0x0000,
- 0x2c30, 0x2c31, 0x2c32, 0x2c33, 0x2c34, 0x2c35, 0x2c36, 0x2c37,
- 0x2c38, 0x2c39, 0x2c3a, 0x2c3b, 0x2c3c, 0x2c3d, 0x2c3e, 0x2c3f,
- 0x2c40, 0x2c41, 0x2c42, 0x2c43, 0x2c44, 0x2c45, 0x2c46, 0x2c47, /* 0x2c40 */
- 0x2c48, 0x2c49, 0x2c4a, 0x2c4b, 0x2c4c, 0x2c4d, 0x2c4e, 0x2c4f,
- 0x2c50, 0x2c51, 0x2c52, 0x2c53, 0x2c54, 0x2c55, 0x2c56, 0x2c57,
- 0x2c58, 0x2c59, 0x2c5a, 0x2c5b, 0x2c5c, 0x2c5d, 0x2c5e, 0x0000,
- 0x2c61, 0x2c61, 0x026b, 0x1d7d, 0x027d, 0x2c65, 0x2c66, 0x2c68,
- 0x2c68, 0x2c6a, 0x2c6a, 0x2c6c, 0x2c6c, 0x0251, 0x0271, 0x0250,
- 0x0252, 0x2c71, 0x2c73, 0x2c73, 0x2c74, 0x2c76, 0x2c76, 0x2c77,
- 0x2c78, 0x2c79, 0x2c7a, 0x2c7b, 0x2c7c, 0x2c7d, 0x023f, 0x0240,
- 0x2c81, 0x2c81, 0x2c83, 0x2c83, 0x2c85, 0x2c85, 0x2c87, 0x2c87, /* 0x2c80 */
- 0x2c89, 0x2c89, 0x2c8b, 0x2c8b, 0x2c8d, 0x2c8d, 0x2c8f, 0x2c8f,
- 0x2c91, 0x2c91, 0x2c93, 0x2c93, 0x2c95, 0x2c95, 0x2c97, 0x2c97,
- 0x2c99, 0x2c99, 0x2c9b, 0x2c9b, 0x2c9d, 0x2c9d, 0x2c9f, 0x2c9f,
- 0x2ca1, 0x2ca1, 0x2ca3, 0x2ca3, 0x2ca5, 0x2ca5, 0x2ca7, 0x2ca7,
- 0x2ca9, 0x2ca9, 0x2cab, 0x2cab, 0x2cad, 0x2cad, 0x2caf, 0x2caf,
- 0x2cb1, 0x2cb1, 0x2cb3, 0x2cb3, 0x2cb5, 0x2cb5, 0x2cb7, 0x2cb7,
- 0x2cb9, 0x2cb9, 0x2cbb, 0x2cbb, 0x2cbd, 0x2cbd, 0x2cbf, 0x2cbf,
- 0x2cc1, 0x2cc1, 0x2cc3, 0x2cc3, 0x2cc5, 0x2cc5, 0x2cc7, 0x2cc7, /* 0x2cc0 */
- 0x2cc9, 0x2cc9, 0x2ccb, 0x2ccb, 0x2ccd, 0x2ccd, 0x2ccf, 0x2ccf,
- 0x2cd1, 0x2cd1, 0x2cd3, 0x2cd3, 0x2cd5, 0x2cd5, 0x2cd7, 0x2cd7,
- 0x2cd9, 0x2cd9, 0x2cdb, 0x2cdb, 0x2cdd, 0x2cdd, 0x2cdf, 0x2cdf,
- 0x2ce1, 0x2ce1, 0x2ce3, 0x2ce3, 0x2ce4, 0x2ce5, 0x2ce6, 0x2ce7,
- 0x2ce8, 0x2ce9, 0x2cea, 0x2cec, 0x2cec, 0x2cee, 0x2cee, 0x2cef,
- 0x2cf0, 0x2cf1, 0x2cf3, 0x2cf3, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x2cf9, 0x2cfa, 0x2cfb, 0x2cfc, 0x2cfd, 0x2cfe, 0x2cff,
- 0x2d00, 0x2d01, 0x2d02, 0x2d03, 0x2d04, 0x2d05, 0x2d06, 0x2d07, /* 0x2d00 */
- 0x2d08, 0x2d09, 0x2d0a, 0x2d0b, 0x2d0c, 0x2d0d, 0x2d0e, 0x2d0f,
- 0x2d10, 0x2d11, 0x2d12, 0x2d13, 0x2d14, 0x2d15, 0x2d16, 0x2d17,
- 0x2d18, 0x2d19, 0x2d1a, 0x2d1b, 0x2d1c, 0x2d1d, 0x2d1e, 0x2d1f,
- 0x2d20, 0x2d21, 0x2d22, 0x2d23, 0x2d24, 0x2d25, 0x0000, 0x2d27,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d2d, 0x0000, 0x0000,
- 0x2d30, 0x2d31, 0x2d32, 0x2d33, 0x2d34, 0x2d35, 0x2d36, 0x2d37,
- 0x2d38, 0x2d39, 0x2d3a, 0x2d3b, 0x2d3c, 0x2d3d, 0x2d3e, 0x2d3f,
- 0x2d40, 0x2d41, 0x2d42, 0x2d43, 0x2d44, 0x2d45, 0x2d46, 0x2d47, /* 0x2d40 */
- 0x2d48, 0x2d49, 0x2d4a, 0x2d4b, 0x2d4c, 0x2d4d, 0x2d4e, 0x2d4f,
- 0x2d50, 0x2d51, 0x2d52, 0x2d53, 0x2d54, 0x2d55, 0x2d56, 0x2d57,
- 0x2d58, 0x2d59, 0x2d5a, 0x2d5b, 0x2d5c, 0x2d5d, 0x2d5e, 0x2d5f,
- 0x2d60, 0x2d61, 0x2d62, 0x2d63, 0x2d64, 0x2d65, 0x2d66, 0x2d67,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d6f,
- 0x2d70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d7f,
- 0x2d80, 0x2d81, 0x2d82, 0x2d83, 0x2d84, 0x2d85, 0x2d86, 0x2d87, /* 0x2d80 */
- 0x2d88, 0x2d89, 0x2d8a, 0x2d8b, 0x2d8c, 0x2d8d, 0x2d8e, 0x2d8f,
- 0x2d90, 0x2d91, 0x2d92, 0x2d93, 0x2d94, 0x2d95, 0x2d96, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2da0, 0x2da1, 0x2da2, 0x2da3, 0x2da4, 0x2da5, 0x2da6, 0x0000,
- 0x2da8, 0x2da9, 0x2daa, 0x2dab, 0x2dac, 0x2dad, 0x2dae, 0x0000,
- 0x2db0, 0x2db1, 0x2db2, 0x2db3, 0x2db4, 0x2db5, 0x2db6, 0x0000,
- 0x2db8, 0x2db9, 0x2dba, 0x2dbb, 0x2dbc, 0x2dbd, 0x2dbe, 0x0000,
- 0x2dc0, 0x2dc1, 0x2dc2, 0x2dc3, 0x2dc4, 0x2dc5, 0x2dc6, 0x0000, /* 0x2dc0 */
- 0x2dc8, 0x2dc9, 0x2dca, 0x2dcb, 0x2dcc, 0x2dcd, 0x2dce, 0x0000,
- 0x2dd0, 0x2dd1, 0x2dd2, 0x2dd3, 0x2dd4, 0x2dd5, 0x2dd6, 0x0000,
- 0x2dd8, 0x2dd9, 0x2dda, 0x2ddb, 0x2ddc, 0x2ddd, 0x2dde, 0x0000,
- 0x2de0, 0x2de1, 0x2de2, 0x2de3, 0x2de4, 0x2de5, 0x2de6, 0x2de7,
- 0x2de8, 0x2de9, 0x2dea, 0x2deb, 0x2dec, 0x2ded, 0x2dee, 0x2def,
- 0x2df0, 0x2df1, 0x2df2, 0x2df3, 0x2df4, 0x2df5, 0x2df6, 0x2df7,
- 0x2df8, 0x2df9, 0x2dfa, 0x2dfb, 0x2dfc, 0x2dfd, 0x2dfe, 0x2dff,
- 0x2e00, 0x2e01, 0x2e02, 0x2e03, 0x2e04, 0x2e05, 0x2e06, 0x2e07, /* 0x2e00 */
- 0x2e08, 0x2e09, 0x2e0a, 0x2e0b, 0x2e0c, 0x2e0d, 0x2e0e, 0x2e0f,
- 0x2e10, 0x2e11, 0x2e12, 0x2e13, 0x2e14, 0x2e15, 0x2e16, 0x2e17,
- 0x2e18, 0x2e19, 0x2e1a, 0x2e1b, 0x2e1c, 0x2e1d, 0x2e1e, 0x2e1f,
- 0x2e20, 0x2e21, 0x2e22, 0x2e23, 0x2e24, 0x2e25, 0x2e26, 0x2e27,
- 0x2e28, 0x2e29, 0x2e2a, 0x2e2b, 0x2e2c, 0x2e2d, 0x2e2e, 0x2e2f,
- 0x2e30, 0x2e31, 0x2e32, 0x2e33, 0x2e34, 0x2e35, 0x2e36, 0x2e37,
- 0x2e38, 0x2e39, 0x2e3a, 0x2e3b, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2e80, 0x2e81, 0x2e82, 0x2e83, 0x2e84, 0x2e85, 0x2e86, 0x2e87, /* 0x2e80 */
- 0x2e88, 0x2e89, 0x2e8a, 0x2e8b, 0x2e8c, 0x2e8d, 0x2e8e, 0x2e8f,
- 0x2e90, 0x2e91, 0x2e92, 0x2e93, 0x2e94, 0x2e95, 0x2e96, 0x2e97,
- 0x2e98, 0x2e99, 0x0000, 0x2e9b, 0x2e9c, 0x2e9d, 0x2e9e, 0x2e9f,
- 0x2ea0, 0x2ea1, 0x2ea2, 0x2ea3, 0x2ea4, 0x2ea5, 0x2ea6, 0x2ea7,
- 0x2ea8, 0x2ea9, 0x2eaa, 0x2eab, 0x2eac, 0x2ead, 0x2eae, 0x2eaf,
- 0x2eb0, 0x2eb1, 0x2eb2, 0x2eb3, 0x2eb4, 0x2eb5, 0x2eb6, 0x2eb7,
- 0x2eb8, 0x2eb9, 0x2eba, 0x2ebb, 0x2ebc, 0x2ebd, 0x2ebe, 0x2ebf,
- 0x2ec0, 0x2ec1, 0x2ec2, 0x2ec3, 0x2ec4, 0x2ec5, 0x2ec6, 0x2ec7, /* 0x2ec0 */
- 0x2ec8, 0x2ec9, 0x2eca, 0x2ecb, 0x2ecc, 0x2ecd, 0x2ece, 0x2ecf,
- 0x2ed0, 0x2ed1, 0x2ed2, 0x2ed3, 0x2ed4, 0x2ed5, 0x2ed6, 0x2ed7,
- 0x2ed8, 0x2ed9, 0x2eda, 0x2edb, 0x2edc, 0x2edd, 0x2ede, 0x2edf,
- 0x2ee0, 0x2ee1, 0x2ee2, 0x2ee3, 0x2ee4, 0x2ee5, 0x2ee6, 0x2ee7,
- 0x2ee8, 0x2ee9, 0x2eea, 0x2eeb, 0x2eec, 0x2eed, 0x2eee, 0x2eef,
- 0x2ef0, 0x2ef1, 0x2ef2, 0x2ef3, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2f00, 0x2f01, 0x2f02, 0x2f03, 0x2f04, 0x2f05, 0x2f06, 0x2f07, /* 0x2f00 */
- 0x2f08, 0x2f09, 0x2f0a, 0x2f0b, 0x2f0c, 0x2f0d, 0x2f0e, 0x2f0f,
- 0x2f10, 0x2f11, 0x2f12, 0x2f13, 0x2f14, 0x2f15, 0x2f16, 0x2f17,
- 0x2f18, 0x2f19, 0x2f1a, 0x2f1b, 0x2f1c, 0x2f1d, 0x2f1e, 0x2f1f,
- 0x2f20, 0x2f21, 0x2f22, 0x2f23, 0x2f24, 0x2f25, 0x2f26, 0x2f27,
- 0x2f28, 0x2f29, 0x2f2a, 0x2f2b, 0x2f2c, 0x2f2d, 0x2f2e, 0x2f2f,
- 0x2f30, 0x2f31, 0x2f32, 0x2f33, 0x2f34, 0x2f35, 0x2f36, 0x2f37,
- 0x2f38, 0x2f39, 0x2f3a, 0x2f3b, 0x2f3c, 0x2f3d, 0x2f3e, 0x2f3f,
- 0x2f40, 0x2f41, 0x2f42, 0x2f43, 0x2f44, 0x2f45, 0x2f46, 0x2f47, /* 0x2f40 */
- 0x2f48, 0x2f49, 0x2f4a, 0x2f4b, 0x2f4c, 0x2f4d, 0x2f4e, 0x2f4f,
- 0x2f50, 0x2f51, 0x2f52, 0x2f53, 0x2f54, 0x2f55, 0x2f56, 0x2f57,
- 0x2f58, 0x2f59, 0x2f5a, 0x2f5b, 0x2f5c, 0x2f5d, 0x2f5e, 0x2f5f,
- 0x2f60, 0x2f61, 0x2f62, 0x2f63, 0x2f64, 0x2f65, 0x2f66, 0x2f67,
- 0x2f68, 0x2f69, 0x2f6a, 0x2f6b, 0x2f6c, 0x2f6d, 0x2f6e, 0x2f6f,
- 0x2f70, 0x2f71, 0x2f72, 0x2f73, 0x2f74, 0x2f75, 0x2f76, 0x2f77,
- 0x2f78, 0x2f79, 0x2f7a, 0x2f7b, 0x2f7c, 0x2f7d, 0x2f7e, 0x2f7f,
- 0x2f80, 0x2f81, 0x2f82, 0x2f83, 0x2f84, 0x2f85, 0x2f86, 0x2f87, /* 0x2f80 */
- 0x2f88, 0x2f89, 0x2f8a, 0x2f8b, 0x2f8c, 0x2f8d, 0x2f8e, 0x2f8f,
- 0x2f90, 0x2f91, 0x2f92, 0x2f93, 0x2f94, 0x2f95, 0x2f96, 0x2f97,
- 0x2f98, 0x2f99, 0x2f9a, 0x2f9b, 0x2f9c, 0x2f9d, 0x2f9e, 0x2f9f,
- 0x2fa0, 0x2fa1, 0x2fa2, 0x2fa3, 0x2fa4, 0x2fa5, 0x2fa6, 0x2fa7,
- 0x2fa8, 0x2fa9, 0x2faa, 0x2fab, 0x2fac, 0x2fad, 0x2fae, 0x2faf,
- 0x2fb0, 0x2fb1, 0x2fb2, 0x2fb3, 0x2fb4, 0x2fb5, 0x2fb6, 0x2fb7,
- 0x2fb8, 0x2fb9, 0x2fba, 0x2fbb, 0x2fbc, 0x2fbd, 0x2fbe, 0x2fbf,
- 0x2fc0, 0x2fc1, 0x2fc2, 0x2fc3, 0x2fc4, 0x2fc5, 0x2fc6, 0x2fc7, /* 0x2fc0 */
- 0x2fc8, 0x2fc9, 0x2fca, 0x2fcb, 0x2fcc, 0x2fcd, 0x2fce, 0x2fcf,
- 0x2fd0, 0x2fd1, 0x2fd2, 0x2fd3, 0x2fd4, 0x2fd5, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x2ff0, 0x2ff1, 0x2ff2, 0x2ff3, 0x2ff4, 0x2ff5, 0x2ff6, 0x2ff7,
- 0x2ff8, 0x2ff9, 0x2ffa, 0x2ffb, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x3000, 0x3001, 0x3002, 0x3003, 0x3004, 0x3005, 0x3006, 0x3007, /* 0x3000 */
- 0x3008, 0x3009, 0x300a, 0x300b, 0x300c, 0x300d, 0x300e, 0x300f,
- 0x3010, 0x3011, 0x3012, 0x3013, 0x3014, 0x3015, 0x3016, 0x3017,
- 0x3018, 0x3019, 0x301a, 0x301b, 0x301c, 0x301d, 0x301e, 0x301f,
- 0x3020, 0x3021, 0x3022, 0x3023, 0x3024, 0x3025, 0x3026, 0x3027,
- 0x3028, 0x3029, 0x302a, 0x302b, 0x302c, 0x302d, 0x302e, 0x302f,
- 0x3030, 0x3031, 0x3032, 0x3033, 0x3034, 0x3035, 0x3036, 0x3037,
- 0x3038, 0x3039, 0x303a, 0x303b, 0x303c, 0x303d, 0x303e, 0x303f,
- 0x0000, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, 0x3047, /* 0x3040 */
- 0x3048, 0x3049, 0x304a, 0x304b, 0x304c, 0x304d, 0x304e, 0x304f,
- 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, 0x3057,
- 0x3058, 0x3059, 0x305a, 0x305b, 0x305c, 0x305d, 0x305e, 0x305f,
- 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, 0x3067,
- 0x3068, 0x3069, 0x306a, 0x306b, 0x306c, 0x306d, 0x306e, 0x306f,
- 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, 0x3077,
- 0x3078, 0x3079, 0x307a, 0x307b, 0x307c, 0x307d, 0x307e, 0x307f,
- 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, 0x3087, /* 0x3080 */
- 0x3088, 0x3089, 0x308a, 0x308b, 0x308c, 0x308d, 0x308e, 0x308f,
- 0x3090, 0x3091, 0x3092, 0x3093, 0x3094, 0x3095, 0x3096, 0x0000,
- 0x0000, 0x3099, 0x309a, 0x309b, 0x309c, 0x309d, 0x309e, 0x309f,
- 0x30a0, 0x30a1, 0x30a2, 0x30a3, 0x30a4, 0x30a5, 0x30a6, 0x30a7,
- 0x30a8, 0x30a9, 0x30aa, 0x30ab, 0x30ac, 0x30ad, 0x30ae, 0x30af,
- 0x30b0, 0x30b1, 0x30b2, 0x30b3, 0x30b4, 0x30b5, 0x30b6, 0x30b7,
- 0x30b8, 0x30b9, 0x30ba, 0x30bb, 0x30bc, 0x30bd, 0x30be, 0x30bf,
- 0x30c0, 0x30c1, 0x30c2, 0x30c3, 0x30c4, 0x30c5, 0x30c6, 0x30c7, /* 0x30c0 */
- 0x30c8, 0x30c9, 0x30ca, 0x30cb, 0x30cc, 0x30cd, 0x30ce, 0x30cf,
- 0x30d0, 0x30d1, 0x30d2, 0x30d3, 0x30d4, 0x30d5, 0x30d6, 0x30d7,
- 0x30d8, 0x30d9, 0x30da, 0x30db, 0x30dc, 0x30dd, 0x30de, 0x30df,
- 0x30e0, 0x30e1, 0x30e2, 0x30e3, 0x30e4, 0x30e5, 0x30e6, 0x30e7,
- 0x30e8, 0x30e9, 0x30ea, 0x30eb, 0x30ec, 0x30ed, 0x30ee, 0x30ef,
- 0x30f0, 0x30f1, 0x30f2, 0x30f3, 0x30f4, 0x30f5, 0x30f6, 0x30f7,
- 0x30f8, 0x30f9, 0x30fa, 0x30fb, 0x30fc, 0x30fd, 0x30fe, 0x30ff,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3105, 0x3106, 0x3107, /* 0x3100 */
- 0x3108, 0x3109, 0x310a, 0x310b, 0x310c, 0x310d, 0x310e, 0x310f,
- 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116, 0x3117,
- 0x3118, 0x3119, 0x311a, 0x311b, 0x311c, 0x311d, 0x311e, 0x311f,
- 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126, 0x3127,
- 0x3128, 0x3129, 0x312a, 0x312b, 0x312c, 0x312d, 0x0000, 0x0000,
- 0x0000, 0x3131, 0x3132, 0x3133, 0x3134, 0x3135, 0x3136, 0x3137,
- 0x3138, 0x3139, 0x313a, 0x313b, 0x313c, 0x313d, 0x313e, 0x313f,
- 0x3140, 0x3141, 0x3142, 0x3143, 0x3144, 0x3145, 0x3146, 0x3147, /* 0x3140 */
- 0x3148, 0x3149, 0x314a, 0x314b, 0x314c, 0x314d, 0x314e, 0x314f,
- 0x3150, 0x3151, 0x3152, 0x3153, 0x3154, 0x3155, 0x3156, 0x3157,
- 0x3158, 0x3159, 0x315a, 0x315b, 0x315c, 0x315d, 0x315e, 0x315f,
- 0x3160, 0x3161, 0x3162, 0x3163, 0x3164, 0x3165, 0x3166, 0x3167,
- 0x3168, 0x3169, 0x316a, 0x316b, 0x316c, 0x316d, 0x316e, 0x316f,
- 0x3170, 0x3171, 0x3172, 0x3173, 0x3174, 0x3175, 0x3176, 0x3177,
- 0x3178, 0x3179, 0x317a, 0x317b, 0x317c, 0x317d, 0x317e, 0x317f,
- 0x3180, 0x3181, 0x3182, 0x3183, 0x3184, 0x3185, 0x3186, 0x3187, /* 0x3180 */
- 0x3188, 0x3189, 0x318a, 0x318b, 0x318c, 0x318d, 0x318e, 0x0000,
- 0x3190, 0x3191, 0x3192, 0x3193, 0x3194, 0x3195, 0x3196, 0x3197,
- 0x3198, 0x3199, 0x319a, 0x319b, 0x319c, 0x319d, 0x319e, 0x319f,
- 0x31a0, 0x31a1, 0x31a2, 0x31a3, 0x31a4, 0x31a5, 0x31a6, 0x31a7,
- 0x31a8, 0x31a9, 0x31aa, 0x31ab, 0x31ac, 0x31ad, 0x31ae, 0x31af,
- 0x31b0, 0x31b1, 0x31b2, 0x31b3, 0x31b4, 0x31b5, 0x31b6, 0x31b7,
- 0x31b8, 0x31b9, 0x31ba, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x31c0, 0x31c1, 0x31c2, 0x31c3, 0x31c4, 0x31c5, 0x31c6, 0x31c7, /* 0x31c0 */
- 0x31c8, 0x31c9, 0x31ca, 0x31cb, 0x31cc, 0x31cd, 0x31ce, 0x31cf,
- 0x31d0, 0x31d1, 0x31d2, 0x31d3, 0x31d4, 0x31d5, 0x31d6, 0x31d7,
- 0x31d8, 0x31d9, 0x31da, 0x31db, 0x31dc, 0x31dd, 0x31de, 0x31df,
- 0x31e0, 0x31e1, 0x31e2, 0x31e3, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x31f0, 0x31f1, 0x31f2, 0x31f3, 0x31f4, 0x31f5, 0x31f6, 0x31f7,
- 0x31f8, 0x31f9, 0x31fa, 0x31fb, 0x31fc, 0x31fd, 0x31fe, 0x31ff,
- 0x3200, 0x3201, 0x3202, 0x3203, 0x3204, 0x3205, 0x3206, 0x3207, /* 0x3200 */
- 0x3208, 0x3209, 0x320a, 0x320b, 0x320c, 0x320d, 0x320e, 0x320f,
- 0x3210, 0x3211, 0x3212, 0x3213, 0x3214, 0x3215, 0x3216, 0x3217,
- 0x3218, 0x3219, 0x321a, 0x321b, 0x321c, 0x321d, 0x321e, 0x0000,
- 0x3220, 0x3221, 0x3222, 0x3223, 0x3224, 0x3225, 0x3226, 0x3227,
- 0x3228, 0x3229, 0x322a, 0x322b, 0x322c, 0x322d, 0x322e, 0x322f,
- 0x3230, 0x3231, 0x3232, 0x3233, 0x3234, 0x3235, 0x3236, 0x3237,
- 0x3238, 0x3239, 0x323a, 0x323b, 0x323c, 0x323d, 0x323e, 0x323f,
- 0x3240, 0x3241, 0x3242, 0x3243, 0x3244, 0x3245, 0x3246, 0x3247, /* 0x3240 */
- 0x3248, 0x3249, 0x324a, 0x324b, 0x324c, 0x324d, 0x324e, 0x324f,
- 0x3250, 0x3251, 0x3252, 0x3253, 0x3254, 0x3255, 0x3256, 0x3257,
- 0x3258, 0x3259, 0x325a, 0x325b, 0x325c, 0x325d, 0x325e, 0x325f,
- 0x3260, 0x3261, 0x3262, 0x3263, 0x3264, 0x3265, 0x3266, 0x3267,
- 0x3268, 0x3269, 0x326a, 0x326b, 0x326c, 0x326d, 0x326e, 0x326f,
- 0x3270, 0x3271, 0x3272, 0x3273, 0x3274, 0x3275, 0x3276, 0x3277,
- 0x3278, 0x3279, 0x327a, 0x327b, 0x327c, 0x327d, 0x327e, 0x327f,
- 0x3280, 0x3281, 0x3282, 0x3283, 0x3284, 0x3285, 0x3286, 0x3287, /* 0x3280 */
- 0x3288, 0x3289, 0x328a, 0x328b, 0x328c, 0x328d, 0x328e, 0x328f,
- 0x3290, 0x3291, 0x3292, 0x3293, 0x3294, 0x3295, 0x3296, 0x3297,
- 0x3298, 0x3299, 0x329a, 0x329b, 0x329c, 0x329d, 0x329e, 0x329f,
- 0x32a0, 0x32a1, 0x32a2, 0x32a3, 0x32a4, 0x32a5, 0x32a6, 0x32a7,
- 0x32a8, 0x32a9, 0x32aa, 0x32ab, 0x32ac, 0x32ad, 0x32ae, 0x32af,
- 0x32b0, 0x32b1, 0x32b2, 0x32b3, 0x32b4, 0x32b5, 0x32b6, 0x32b7,
- 0x32b8, 0x32b9, 0x32ba, 0x32bb, 0x32bc, 0x32bd, 0x32be, 0x32bf,
- 0x32c0, 0x32c1, 0x32c2, 0x32c3, 0x32c4, 0x32c5, 0x32c6, 0x32c7, /* 0x32c0 */
- 0x32c8, 0x32c9, 0x32ca, 0x32cb, 0x32cc, 0x32cd, 0x32ce, 0x32cf,
- 0x32d0, 0x32d1, 0x32d2, 0x32d3, 0x32d4, 0x32d5, 0x32d6, 0x32d7,
- 0x32d8, 0x32d9, 0x32da, 0x32db, 0x32dc, 0x32dd, 0x32de, 0x32df,
- 0x32e0, 0x32e1, 0x32e2, 0x32e3, 0x32e4, 0x32e5, 0x32e6, 0x32e7,
- 0x32e8, 0x32e9, 0x32ea, 0x32eb, 0x32ec, 0x32ed, 0x32ee, 0x32ef,
- 0x32f0, 0x32f1, 0x32f2, 0x32f3, 0x32f4, 0x32f5, 0x32f6, 0x32f7,
- 0x32f8, 0x32f9, 0x32fa, 0x32fb, 0x32fc, 0x32fd, 0x32fe, 0x0000,
- 0x3300, 0x3301, 0x3302, 0x3303, 0x3304, 0x3305, 0x3306, 0x3307, /* 0x3300 */
- 0x3308, 0x3309, 0x330a, 0x330b, 0x330c, 0x330d, 0x330e, 0x330f,
- 0x3310, 0x3311, 0x3312, 0x3313, 0x3314, 0x3315, 0x3316, 0x3317,
- 0x3318, 0x3319, 0x331a, 0x331b, 0x331c, 0x331d, 0x331e, 0x331f,
- 0x3320, 0x3321, 0x3322, 0x3323, 0x3324, 0x3325, 0x3326, 0x3327,
- 0x3328, 0x3329, 0x332a, 0x332b, 0x332c, 0x332d, 0x332e, 0x332f,
- 0x3330, 0x3331, 0x3332, 0x3333, 0x3334, 0x3335, 0x3336, 0x3337,
- 0x3338, 0x3339, 0x333a, 0x333b, 0x333c, 0x333d, 0x333e, 0x333f,
- 0x3340, 0x3341, 0x3342, 0x3343, 0x3344, 0x3345, 0x3346, 0x3347, /* 0x3340 */
- 0x3348, 0x3349, 0x334a, 0x334b, 0x334c, 0x334d, 0x334e, 0x334f,
- 0x3350, 0x3351, 0x3352, 0x3353, 0x3354, 0x3355, 0x3356, 0x3357,
- 0x3358, 0x3359, 0x335a, 0x335b, 0x335c, 0x335d, 0x335e, 0x335f,
- 0x3360, 0x3361, 0x3362, 0x3363, 0x3364, 0x3365, 0x3366, 0x3367,
- 0x3368, 0x3369, 0x336a, 0x336b, 0x336c, 0x336d, 0x336e, 0x336f,
- 0x3370, 0x3371, 0x3372, 0x3373, 0x3374, 0x3375, 0x3376, 0x3377,
- 0x3378, 0x3379, 0x337a, 0x337b, 0x337c, 0x337d, 0x337e, 0x337f,
- 0x3380, 0x3381, 0x3382, 0x3383, 0x3384, 0x3385, 0x3386, 0x3387, /* 0x3380 */
- 0x3388, 0x3389, 0x338a, 0x338b, 0x338c, 0x338d, 0x338e, 0x338f,
- 0x3390, 0x3391, 0x3392, 0x3393, 0x3394, 0x3395, 0x3396, 0x3397,
- 0x3398, 0x3399, 0x339a, 0x339b, 0x339c, 0x339d, 0x339e, 0x339f,
- 0x33a0, 0x33a1, 0x33a2, 0x33a3, 0x33a4, 0x33a5, 0x33a6, 0x33a7,
- 0x33a8, 0x33a9, 0x33aa, 0x33ab, 0x33ac, 0x33ad, 0x33ae, 0x33af,
- 0x33b0, 0x33b1, 0x33b2, 0x33b3, 0x33b4, 0x33b5, 0x33b6, 0x33b7,
- 0x33b8, 0x33b9, 0x33ba, 0x33bb, 0x33bc, 0x33bd, 0x33be, 0x33bf,
- 0x33c0, 0x33c1, 0x33c2, 0x33c3, 0x33c4, 0x33c5, 0x33c6, 0x33c7, /* 0x33c0 */
- 0x33c8, 0x33c9, 0x33ca, 0x33cb, 0x33cc, 0x33cd, 0x33ce, 0x33cf,
- 0x33d0, 0x33d1, 0x33d2, 0x33d3, 0x33d4, 0x33d5, 0x33d6, 0x33d7,
- 0x33d8, 0x33d9, 0x33da, 0x33db, 0x33dc, 0x33dd, 0x33de, 0x33df,
- 0x33e0, 0x33e1, 0x33e2, 0x33e3, 0x33e4, 0x33e5, 0x33e6, 0x33e7,
- 0x33e8, 0x33e9, 0x33ea, 0x33eb, 0x33ec, 0x33ed, 0x33ee, 0x33ef,
- 0x33f0, 0x33f1, 0x33f2, 0x33f3, 0x33f4, 0x33f5, 0x33f6, 0x33f7,
- 0x33f8, 0x33f9, 0x33fa, 0x33fb, 0x33fc, 0x33fd, 0x33fe, 0x33ff,
- 0x3400, 0x3401, 0x3402, 0x3403, 0x3404, 0x3405, 0x3406, 0x3407, /* 0x3400 */
- 0x3408, 0x3409, 0x340a, 0x340b, 0x340c, 0x340d, 0x340e, 0x340f,
- 0x3410, 0x3411, 0x3412, 0x3413, 0x3414, 0x3415, 0x3416, 0x3417,
- 0x3418, 0x3419, 0x341a, 0x341b, 0x341c, 0x341d, 0x341e, 0x341f,
- 0x3420, 0x3421, 0x3422, 0x3423, 0x3424, 0x3425, 0x3426, 0x3427,
- 0x3428, 0x3429, 0x342a, 0x342b, 0x342c, 0x342d, 0x342e, 0x342f,
- 0x3430, 0x3431, 0x3432, 0x3433, 0x3434, 0x3435, 0x3436, 0x3437,
- 0x3438, 0x3439, 0x343a, 0x343b, 0x343c, 0x343d, 0x343e, 0x343f,
- 0x3440, 0x3441, 0x3442, 0x3443, 0x3444, 0x3445, 0x3446, 0x3447, /* 0x3440 */
- 0x3448, 0x3449, 0x344a, 0x344b, 0x344c, 0x344d, 0x344e, 0x344f,
- 0x3450, 0x3451, 0x3452, 0x3453, 0x3454, 0x3455, 0x3456, 0x3457,
- 0x3458, 0x3459, 0x345a, 0x345b, 0x345c, 0x345d, 0x345e, 0x345f,
- 0x3460, 0x3461, 0x3462, 0x3463, 0x3464, 0x3465, 0x3466, 0x3467,
- 0x3468, 0x3469, 0x346a, 0x346b, 0x346c, 0x346d, 0x346e, 0x346f,
- 0x3470, 0x3471, 0x3472, 0x3473, 0x3474, 0x3475, 0x3476, 0x3477,
- 0x3478, 0x3479, 0x347a, 0x347b, 0x347c, 0x347d, 0x347e, 0x347f,
- 0x3480, 0x3481, 0x3482, 0x3483, 0x3484, 0x3485, 0x3486, 0x3487, /* 0x3480 */
- 0x3488, 0x3489, 0x348a, 0x348b, 0x348c, 0x348d, 0x348e, 0x348f,
- 0x3490, 0x3491, 0x3492, 0x3493, 0x3494, 0x3495, 0x3496, 0x3497,
- 0x3498, 0x3499, 0x349a, 0x349b, 0x349c, 0x349d, 0x349e, 0x349f,
- 0x34a0, 0x34a1, 0x34a2, 0x34a3, 0x34a4, 0x34a5, 0x34a6, 0x34a7,
- 0x34a8, 0x34a9, 0x34aa, 0x34ab, 0x34ac, 0x34ad, 0x34ae, 0x34af,
- 0x34b0, 0x34b1, 0x34b2, 0x34b3, 0x34b4, 0x34b5, 0x34b6, 0x34b7,
- 0x34b8, 0x34b9, 0x34ba, 0x34bb, 0x34bc, 0x34bd, 0x34be, 0x34bf,
- 0x34c0, 0x34c1, 0x34c2, 0x34c3, 0x34c4, 0x34c5, 0x34c6, 0x34c7, /* 0x34c0 */
- 0x34c8, 0x34c9, 0x34ca, 0x34cb, 0x34cc, 0x34cd, 0x34ce, 0x34cf,
- 0x34d0, 0x34d1, 0x34d2, 0x34d3, 0x34d4, 0x34d5, 0x34d6, 0x34d7,
- 0x34d8, 0x34d9, 0x34da, 0x34db, 0x34dc, 0x34dd, 0x34de, 0x34df,
- 0x34e0, 0x34e1, 0x34e2, 0x34e3, 0x34e4, 0x34e5, 0x34e6, 0x34e7,
- 0x34e8, 0x34e9, 0x34ea, 0x34eb, 0x34ec, 0x34ed, 0x34ee, 0x34ef,
- 0x34f0, 0x34f1, 0x34f2, 0x34f3, 0x34f4, 0x34f5, 0x34f6, 0x34f7,
- 0x34f8, 0x34f9, 0x34fa, 0x34fb, 0x34fc, 0x34fd, 0x34fe, 0x34ff,
- 0x3500, 0x3501, 0x3502, 0x3503, 0x3504, 0x3505, 0x3506, 0x3507, /* 0x3500 */
- 0x3508, 0x3509, 0x350a, 0x350b, 0x350c, 0x350d, 0x350e, 0x350f,
- 0x3510, 0x3511, 0x3512, 0x3513, 0x3514, 0x3515, 0x3516, 0x3517,
- 0x3518, 0x3519, 0x351a, 0x351b, 0x351c, 0x351d, 0x351e, 0x351f,
- 0x3520, 0x3521, 0x3522, 0x3523, 0x3524, 0x3525, 0x3526, 0x3527,
- 0x3528, 0x3529, 0x352a, 0x352b, 0x352c, 0x352d, 0x352e, 0x352f,
- 0x3530, 0x3531, 0x3532, 0x3533, 0x3534, 0x3535, 0x3536, 0x3537,
- 0x3538, 0x3539, 0x353a, 0x353b, 0x353c, 0x353d, 0x353e, 0x353f,
- 0x3540, 0x3541, 0x3542, 0x3543, 0x3544, 0x3545, 0x3546, 0x3547, /* 0x3540 */
- 0x3548, 0x3549, 0x354a, 0x354b, 0x354c, 0x354d, 0x354e, 0x354f,
- 0x3550, 0x3551, 0x3552, 0x3553, 0x3554, 0x3555, 0x3556, 0x3557,
- 0x3558, 0x3559, 0x355a, 0x355b, 0x355c, 0x355d, 0x355e, 0x355f,
- 0x3560, 0x3561, 0x3562, 0x3563, 0x3564, 0x3565, 0x3566, 0x3567,
- 0x3568, 0x3569, 0x356a, 0x356b, 0x356c, 0x356d, 0x356e, 0x356f,
- 0x3570, 0x3571, 0x3572, 0x3573, 0x3574, 0x3575, 0x3576, 0x3577,
- 0x3578, 0x3579, 0x357a, 0x357b, 0x357c, 0x357d, 0x357e, 0x357f,
- 0x3580, 0x3581, 0x3582, 0x3583, 0x3584, 0x3585, 0x3586, 0x3587, /* 0x3580 */
- 0x3588, 0x3589, 0x358a, 0x358b, 0x358c, 0x358d, 0x358e, 0x358f,
- 0x3590, 0x3591, 0x3592, 0x3593, 0x3594, 0x3595, 0x3596, 0x3597,
- 0x3598, 0x3599, 0x359a, 0x359b, 0x359c, 0x359d, 0x359e, 0x359f,
- 0x35a0, 0x35a1, 0x35a2, 0x35a3, 0x35a4, 0x35a5, 0x35a6, 0x35a7,
- 0x35a8, 0x35a9, 0x35aa, 0x35ab, 0x35ac, 0x35ad, 0x35ae, 0x35af,
- 0x35b0, 0x35b1, 0x35b2, 0x35b3, 0x35b4, 0x35b5, 0x35b6, 0x35b7,
- 0x35b8, 0x35b9, 0x35ba, 0x35bb, 0x35bc, 0x35bd, 0x35be, 0x35bf,
- 0x35c0, 0x35c1, 0x35c2, 0x35c3, 0x35c4, 0x35c5, 0x35c6, 0x35c7, /* 0x35c0 */
- 0x35c8, 0x35c9, 0x35ca, 0x35cb, 0x35cc, 0x35cd, 0x35ce, 0x35cf,
- 0x35d0, 0x35d1, 0x35d2, 0x35d3, 0x35d4, 0x35d5, 0x35d6, 0x35d7,
- 0x35d8, 0x35d9, 0x35da, 0x35db, 0x35dc, 0x35dd, 0x35de, 0x35df,
- 0x35e0, 0x35e1, 0x35e2, 0x35e3, 0x35e4, 0x35e5, 0x35e6, 0x35e7,
- 0x35e8, 0x35e9, 0x35ea, 0x35eb, 0x35ec, 0x35ed, 0x35ee, 0x35ef,
- 0x35f0, 0x35f1, 0x35f2, 0x35f3, 0x35f4, 0x35f5, 0x35f6, 0x35f7,
- 0x35f8, 0x35f9, 0x35fa, 0x35fb, 0x35fc, 0x35fd, 0x35fe, 0x35ff,
- 0x3600, 0x3601, 0x3602, 0x3603, 0x3604, 0x3605, 0x3606, 0x3607, /* 0x3600 */
- 0x3608, 0x3609, 0x360a, 0x360b, 0x360c, 0x360d, 0x360e, 0x360f,
- 0x3610, 0x3611, 0x3612, 0x3613, 0x3614, 0x3615, 0x3616, 0x3617,
- 0x3618, 0x3619, 0x361a, 0x361b, 0x361c, 0x361d, 0x361e, 0x361f,
- 0x3620, 0x3621, 0x3622, 0x3623, 0x3624, 0x3625, 0x3626, 0x3627,
- 0x3628, 0x3629, 0x362a, 0x362b, 0x362c, 0x362d, 0x362e, 0x362f,
- 0x3630, 0x3631, 0x3632, 0x3633, 0x3634, 0x3635, 0x3636, 0x3637,
- 0x3638, 0x3639, 0x363a, 0x363b, 0x363c, 0x363d, 0x363e, 0x363f,
- 0x3640, 0x3641, 0x3642, 0x3643, 0x3644, 0x3645, 0x3646, 0x3647, /* 0x3640 */
- 0x3648, 0x3649, 0x364a, 0x364b, 0x364c, 0x364d, 0x364e, 0x364f,
- 0x3650, 0x3651, 0x3652, 0x3653, 0x3654, 0x3655, 0x3656, 0x3657,
- 0x3658, 0x3659, 0x365a, 0x365b, 0x365c, 0x365d, 0x365e, 0x365f,
- 0x3660, 0x3661, 0x3662, 0x3663, 0x3664, 0x3665, 0x3666, 0x3667,
- 0x3668, 0x3669, 0x366a, 0x366b, 0x366c, 0x366d, 0x366e, 0x366f,
- 0x3670, 0x3671, 0x3672, 0x3673, 0x3674, 0x3675, 0x3676, 0x3677,
- 0x3678, 0x3679, 0x367a, 0x367b, 0x367c, 0x367d, 0x367e, 0x367f,
- 0x3680, 0x3681, 0x3682, 0x3683, 0x3684, 0x3685, 0x3686, 0x3687, /* 0x3680 */
- 0x3688, 0x3689, 0x368a, 0x368b, 0x368c, 0x368d, 0x368e, 0x368f,
- 0x3690, 0x3691, 0x3692, 0x3693, 0x3694, 0x3695, 0x3696, 0x3697,
- 0x3698, 0x3699, 0x369a, 0x369b, 0x369c, 0x369d, 0x369e, 0x369f,
- 0x36a0, 0x36a1, 0x36a2, 0x36a3, 0x36a4, 0x36a5, 0x36a6, 0x36a7,
- 0x36a8, 0x36a9, 0x36aa, 0x36ab, 0x36ac, 0x36ad, 0x36ae, 0x36af,
- 0x36b0, 0x36b1, 0x36b2, 0x36b3, 0x36b4, 0x36b5, 0x36b6, 0x36b7,
- 0x36b8, 0x36b9, 0x36ba, 0x36bb, 0x36bc, 0x36bd, 0x36be, 0x36bf,
- 0x36c0, 0x36c1, 0x36c2, 0x36c3, 0x36c4, 0x36c5, 0x36c6, 0x36c7, /* 0x36c0 */
- 0x36c8, 0x36c9, 0x36ca, 0x36cb, 0x36cc, 0x36cd, 0x36ce, 0x36cf,
- 0x36d0, 0x36d1, 0x36d2, 0x36d3, 0x36d4, 0x36d5, 0x36d6, 0x36d7,
- 0x36d8, 0x36d9, 0x36da, 0x36db, 0x36dc, 0x36dd, 0x36de, 0x36df,
- 0x36e0, 0x36e1, 0x36e2, 0x36e3, 0x36e4, 0x36e5, 0x36e6, 0x36e7,
- 0x36e8, 0x36e9, 0x36ea, 0x36eb, 0x36ec, 0x36ed, 0x36ee, 0x36ef,
- 0x36f0, 0x36f1, 0x36f2, 0x36f3, 0x36f4, 0x36f5, 0x36f6, 0x36f7,
- 0x36f8, 0x36f9, 0x36fa, 0x36fb, 0x36fc, 0x36fd, 0x36fe, 0x36ff,
- 0x3700, 0x3701, 0x3702, 0x3703, 0x3704, 0x3705, 0x3706, 0x3707, /* 0x3700 */
- 0x3708, 0x3709, 0x370a, 0x370b, 0x370c, 0x370d, 0x370e, 0x370f,
- 0x3710, 0x3711, 0x3712, 0x3713, 0x3714, 0x3715, 0x3716, 0x3717,
- 0x3718, 0x3719, 0x371a, 0x371b, 0x371c, 0x371d, 0x371e, 0x371f,
- 0x3720, 0x3721, 0x3722, 0x3723, 0x3724, 0x3725, 0x3726, 0x3727,
- 0x3728, 0x3729, 0x372a, 0x372b, 0x372c, 0x372d, 0x372e, 0x372f,
- 0x3730, 0x3731, 0x3732, 0x3733, 0x3734, 0x3735, 0x3736, 0x3737,
- 0x3738, 0x3739, 0x373a, 0x373b, 0x373c, 0x373d, 0x373e, 0x373f,
- 0x3740, 0x3741, 0x3742, 0x3743, 0x3744, 0x3745, 0x3746, 0x3747, /* 0x3740 */
- 0x3748, 0x3749, 0x374a, 0x374b, 0x374c, 0x374d, 0x374e, 0x374f,
- 0x3750, 0x3751, 0x3752, 0x3753, 0x3754, 0x3755, 0x3756, 0x3757,
- 0x3758, 0x3759, 0x375a, 0x375b, 0x375c, 0x375d, 0x375e, 0x375f,
- 0x3760, 0x3761, 0x3762, 0x3763, 0x3764, 0x3765, 0x3766, 0x3767,
- 0x3768, 0x3769, 0x376a, 0x376b, 0x376c, 0x376d, 0x376e, 0x376f,
- 0x3770, 0x3771, 0x3772, 0x3773, 0x3774, 0x3775, 0x3776, 0x3777,
- 0x3778, 0x3779, 0x377a, 0x377b, 0x377c, 0x377d, 0x377e, 0x377f,
- 0x3780, 0x3781, 0x3782, 0x3783, 0x3784, 0x3785, 0x3786, 0x3787, /* 0x3780 */
- 0x3788, 0x3789, 0x378a, 0x378b, 0x378c, 0x378d, 0x378e, 0x378f,
- 0x3790, 0x3791, 0x3792, 0x3793, 0x3794, 0x3795, 0x3796, 0x3797,
- 0x3798, 0x3799, 0x379a, 0x379b, 0x379c, 0x379d, 0x379e, 0x379f,
- 0x37a0, 0x37a1, 0x37a2, 0x37a3, 0x37a4, 0x37a5, 0x37a6, 0x37a7,
- 0x37a8, 0x37a9, 0x37aa, 0x37ab, 0x37ac, 0x37ad, 0x37ae, 0x37af,
- 0x37b0, 0x37b1, 0x37b2, 0x37b3, 0x37b4, 0x37b5, 0x37b6, 0x37b7,
- 0x37b8, 0x37b9, 0x37ba, 0x37bb, 0x37bc, 0x37bd, 0x37be, 0x37bf,
- 0x37c0, 0x37c1, 0x37c2, 0x37c3, 0x37c4, 0x37c5, 0x37c6, 0x37c7, /* 0x37c0 */
- 0x37c8, 0x37c9, 0x37ca, 0x37cb, 0x37cc, 0x37cd, 0x37ce, 0x37cf,
- 0x37d0, 0x37d1, 0x37d2, 0x37d3, 0x37d4, 0x37d5, 0x37d6, 0x37d7,
- 0x37d8, 0x37d9, 0x37da, 0x37db, 0x37dc, 0x37dd, 0x37de, 0x37df,
- 0x37e0, 0x37e1, 0x37e2, 0x37e3, 0x37e4, 0x37e5, 0x37e6, 0x37e7,
- 0x37e8, 0x37e9, 0x37ea, 0x37eb, 0x37ec, 0x37ed, 0x37ee, 0x37ef,
- 0x37f0, 0x37f1, 0x37f2, 0x37f3, 0x37f4, 0x37f5, 0x37f6, 0x37f7,
- 0x37f8, 0x37f9, 0x37fa, 0x37fb, 0x37fc, 0x37fd, 0x37fe, 0x37ff,
- 0x3800, 0x3801, 0x3802, 0x3803, 0x3804, 0x3805, 0x3806, 0x3807, /* 0x3800 */
- 0x3808, 0x3809, 0x380a, 0x380b, 0x380c, 0x380d, 0x380e, 0x380f,
- 0x3810, 0x3811, 0x3812, 0x3813, 0x3814, 0x3815, 0x3816, 0x3817,
- 0x3818, 0x3819, 0x381a, 0x381b, 0x381c, 0x381d, 0x381e, 0x381f,
- 0x3820, 0x3821, 0x3822, 0x3823, 0x3824, 0x3825, 0x3826, 0x3827,
- 0x3828, 0x3829, 0x382a, 0x382b, 0x382c, 0x382d, 0x382e, 0x382f,
- 0x3830, 0x3831, 0x3832, 0x3833, 0x3834, 0x3835, 0x3836, 0x3837,
- 0x3838, 0x3839, 0x383a, 0x383b, 0x383c, 0x383d, 0x383e, 0x383f,
- 0x3840, 0x3841, 0x3842, 0x3843, 0x3844, 0x3845, 0x3846, 0x3847, /* 0x3840 */
- 0x3848, 0x3849, 0x384a, 0x384b, 0x384c, 0x384d, 0x384e, 0x384f,
- 0x3850, 0x3851, 0x3852, 0x3853, 0x3854, 0x3855, 0x3856, 0x3857,
- 0x3858, 0x3859, 0x385a, 0x385b, 0x385c, 0x385d, 0x385e, 0x385f,
- 0x3860, 0x3861, 0x3862, 0x3863, 0x3864, 0x3865, 0x3866, 0x3867,
- 0x3868, 0x3869, 0x386a, 0x386b, 0x386c, 0x386d, 0x386e, 0x386f,
- 0x3870, 0x3871, 0x3872, 0x3873, 0x3874, 0x3875, 0x3876, 0x3877,
- 0x3878, 0x3879, 0x387a, 0x387b, 0x387c, 0x387d, 0x387e, 0x387f,
- 0x3880, 0x3881, 0x3882, 0x3883, 0x3884, 0x3885, 0x3886, 0x3887, /* 0x3880 */
- 0x3888, 0x3889, 0x388a, 0x388b, 0x388c, 0x388d, 0x388e, 0x388f,
- 0x3890, 0x3891, 0x3892, 0x3893, 0x3894, 0x3895, 0x3896, 0x3897,
- 0x3898, 0x3899, 0x389a, 0x389b, 0x389c, 0x389d, 0x389e, 0x389f,
- 0x38a0, 0x38a1, 0x38a2, 0x38a3, 0x38a4, 0x38a5, 0x38a6, 0x38a7,
- 0x38a8, 0x38a9, 0x38aa, 0x38ab, 0x38ac, 0x38ad, 0x38ae, 0x38af,
- 0x38b0, 0x38b1, 0x38b2, 0x38b3, 0x38b4, 0x38b5, 0x38b6, 0x38b7,
- 0x38b8, 0x38b9, 0x38ba, 0x38bb, 0x38bc, 0x38bd, 0x38be, 0x38bf,
- 0x38c0, 0x38c1, 0x38c2, 0x38c3, 0x38c4, 0x38c5, 0x38c6, 0x38c7, /* 0x38c0 */
- 0x38c8, 0x38c9, 0x38ca, 0x38cb, 0x38cc, 0x38cd, 0x38ce, 0x38cf,
- 0x38d0, 0x38d1, 0x38d2, 0x38d3, 0x38d4, 0x38d5, 0x38d6, 0x38d7,
- 0x38d8, 0x38d9, 0x38da, 0x38db, 0x38dc, 0x38dd, 0x38de, 0x38df,
- 0x38e0, 0x38e1, 0x38e2, 0x38e3, 0x38e4, 0x38e5, 0x38e6, 0x38e7,
- 0x38e8, 0x38e9, 0x38ea, 0x38eb, 0x38ec, 0x38ed, 0x38ee, 0x38ef,
- 0x38f0, 0x38f1, 0x38f2, 0x38f3, 0x38f4, 0x38f5, 0x38f6, 0x38f7,
- 0x38f8, 0x38f9, 0x38fa, 0x38fb, 0x38fc, 0x38fd, 0x38fe, 0x38ff,
- 0x3900, 0x3901, 0x3902, 0x3903, 0x3904, 0x3905, 0x3906, 0x3907, /* 0x3900 */
- 0x3908, 0x3909, 0x390a, 0x390b, 0x390c, 0x390d, 0x390e, 0x390f,
- 0x3910, 0x3911, 0x3912, 0x3913, 0x3914, 0x3915, 0x3916, 0x3917,
- 0x3918, 0x3919, 0x391a, 0x391b, 0x391c, 0x391d, 0x391e, 0x391f,
- 0x3920, 0x3921, 0x3922, 0x3923, 0x3924, 0x3925, 0x3926, 0x3927,
- 0x3928, 0x3929, 0x392a, 0x392b, 0x392c, 0x392d, 0x392e, 0x392f,
- 0x3930, 0x3931, 0x3932, 0x3933, 0x3934, 0x3935, 0x3936, 0x3937,
- 0x3938, 0x3939, 0x393a, 0x393b, 0x393c, 0x393d, 0x393e, 0x393f,
- 0x3940, 0x3941, 0x3942, 0x3943, 0x3944, 0x3945, 0x3946, 0x3947, /* 0x3940 */
- 0x3948, 0x3949, 0x394a, 0x394b, 0x394c, 0x394d, 0x394e, 0x394f,
- 0x3950, 0x3951, 0x3952, 0x3953, 0x3954, 0x3955, 0x3956, 0x3957,
- 0x3958, 0x3959, 0x395a, 0x395b, 0x395c, 0x395d, 0x395e, 0x395f,
- 0x3960, 0x3961, 0x3962, 0x3963, 0x3964, 0x3965, 0x3966, 0x3967,
- 0x3968, 0x3969, 0x396a, 0x396b, 0x396c, 0x396d, 0x396e, 0x396f,
- 0x3970, 0x3971, 0x3972, 0x3973, 0x3974, 0x3975, 0x3976, 0x3977,
- 0x3978, 0x3979, 0x397a, 0x397b, 0x397c, 0x397d, 0x397e, 0x397f,
- 0x3980, 0x3981, 0x3982, 0x3983, 0x3984, 0x3985, 0x3986, 0x3987, /* 0x3980 */
- 0x3988, 0x3989, 0x398a, 0x398b, 0x398c, 0x398d, 0x398e, 0x398f,
- 0x3990, 0x3991, 0x3992, 0x3993, 0x3994, 0x3995, 0x3996, 0x3997,
- 0x3998, 0x3999, 0x399a, 0x399b, 0x399c, 0x399d, 0x399e, 0x399f,
- 0x39a0, 0x39a1, 0x39a2, 0x39a3, 0x39a4, 0x39a5, 0x39a6, 0x39a7,
- 0x39a8, 0x39a9, 0x39aa, 0x39ab, 0x39ac, 0x39ad, 0x39ae, 0x39af,
- 0x39b0, 0x39b1, 0x39b2, 0x39b3, 0x39b4, 0x39b5, 0x39b6, 0x39b7,
- 0x39b8, 0x39b9, 0x39ba, 0x39bb, 0x39bc, 0x39bd, 0x39be, 0x39bf,
- 0x39c0, 0x39c1, 0x39c2, 0x39c3, 0x39c4, 0x39c5, 0x39c6, 0x39c7, /* 0x39c0 */
- 0x39c8, 0x39c9, 0x39ca, 0x39cb, 0x39cc, 0x39cd, 0x39ce, 0x39cf,
- 0x39d0, 0x39d1, 0x39d2, 0x39d3, 0x39d4, 0x39d5, 0x39d6, 0x39d7,
- 0x39d8, 0x39d9, 0x39da, 0x39db, 0x39dc, 0x39dd, 0x39de, 0x39df,
- 0x39e0, 0x39e1, 0x39e2, 0x39e3, 0x39e4, 0x39e5, 0x39e6, 0x39e7,
- 0x39e8, 0x39e9, 0x39ea, 0x39eb, 0x39ec, 0x39ed, 0x39ee, 0x39ef,
- 0x39f0, 0x39f1, 0x39f2, 0x39f3, 0x39f4, 0x39f5, 0x39f6, 0x39f7,
- 0x39f8, 0x39f9, 0x39fa, 0x39fb, 0x39fc, 0x39fd, 0x39fe, 0x39ff,
- 0x3a00, 0x3a01, 0x3a02, 0x3a03, 0x3a04, 0x3a05, 0x3a06, 0x3a07, /* 0x3a00 */
- 0x3a08, 0x3a09, 0x3a0a, 0x3a0b, 0x3a0c, 0x3a0d, 0x3a0e, 0x3a0f,
- 0x3a10, 0x3a11, 0x3a12, 0x3a13, 0x3a14, 0x3a15, 0x3a16, 0x3a17,
- 0x3a18, 0x3a19, 0x3a1a, 0x3a1b, 0x3a1c, 0x3a1d, 0x3a1e, 0x3a1f,
- 0x3a20, 0x3a21, 0x3a22, 0x3a23, 0x3a24, 0x3a25, 0x3a26, 0x3a27,
- 0x3a28, 0x3a29, 0x3a2a, 0x3a2b, 0x3a2c, 0x3a2d, 0x3a2e, 0x3a2f,
- 0x3a30, 0x3a31, 0x3a32, 0x3a33, 0x3a34, 0x3a35, 0x3a36, 0x3a37,
- 0x3a38, 0x3a39, 0x3a3a, 0x3a3b, 0x3a3c, 0x3a3d, 0x3a3e, 0x3a3f,
- 0x3a40, 0x3a41, 0x3a42, 0x3a43, 0x3a44, 0x3a45, 0x3a46, 0x3a47, /* 0x3a40 */
- 0x3a48, 0x3a49, 0x3a4a, 0x3a4b, 0x3a4c, 0x3a4d, 0x3a4e, 0x3a4f,
- 0x3a50, 0x3a51, 0x3a52, 0x3a53, 0x3a54, 0x3a55, 0x3a56, 0x3a57,
- 0x3a58, 0x3a59, 0x3a5a, 0x3a5b, 0x3a5c, 0x3a5d, 0x3a5e, 0x3a5f,
- 0x3a60, 0x3a61, 0x3a62, 0x3a63, 0x3a64, 0x3a65, 0x3a66, 0x3a67,
- 0x3a68, 0x3a69, 0x3a6a, 0x3a6b, 0x3a6c, 0x3a6d, 0x3a6e, 0x3a6f,
- 0x3a70, 0x3a71, 0x3a72, 0x3a73, 0x3a74, 0x3a75, 0x3a76, 0x3a77,
- 0x3a78, 0x3a79, 0x3a7a, 0x3a7b, 0x3a7c, 0x3a7d, 0x3a7e, 0x3a7f,
- 0x3a80, 0x3a81, 0x3a82, 0x3a83, 0x3a84, 0x3a85, 0x3a86, 0x3a87, /* 0x3a80 */
- 0x3a88, 0x3a89, 0x3a8a, 0x3a8b, 0x3a8c, 0x3a8d, 0x3a8e, 0x3a8f,
- 0x3a90, 0x3a91, 0x3a92, 0x3a93, 0x3a94, 0x3a95, 0x3a96, 0x3a97,
- 0x3a98, 0x3a99, 0x3a9a, 0x3a9b, 0x3a9c, 0x3a9d, 0x3a9e, 0x3a9f,
- 0x3aa0, 0x3aa1, 0x3aa2, 0x3aa3, 0x3aa4, 0x3aa5, 0x3aa6, 0x3aa7,
- 0x3aa8, 0x3aa9, 0x3aaa, 0x3aab, 0x3aac, 0x3aad, 0x3aae, 0x3aaf,
- 0x3ab0, 0x3ab1, 0x3ab2, 0x3ab3, 0x3ab4, 0x3ab5, 0x3ab6, 0x3ab7,
- 0x3ab8, 0x3ab9, 0x3aba, 0x3abb, 0x3abc, 0x3abd, 0x3abe, 0x3abf,
- 0x3ac0, 0x3ac1, 0x3ac2, 0x3ac3, 0x3ac4, 0x3ac5, 0x3ac6, 0x3ac7, /* 0x3ac0 */
- 0x3ac8, 0x3ac9, 0x3aca, 0x3acb, 0x3acc, 0x3acd, 0x3ace, 0x3acf,
- 0x3ad0, 0x3ad1, 0x3ad2, 0x3ad3, 0x3ad4, 0x3ad5, 0x3ad6, 0x3ad7,
- 0x3ad8, 0x3ad9, 0x3ada, 0x3adb, 0x3adc, 0x3add, 0x3ade, 0x3adf,
- 0x3ae0, 0x3ae1, 0x3ae2, 0x3ae3, 0x3ae4, 0x3ae5, 0x3ae6, 0x3ae7,
- 0x3ae8, 0x3ae9, 0x3aea, 0x3aeb, 0x3aec, 0x3aed, 0x3aee, 0x3aef,
- 0x3af0, 0x3af1, 0x3af2, 0x3af3, 0x3af4, 0x3af5, 0x3af6, 0x3af7,
- 0x3af8, 0x3af9, 0x3afa, 0x3afb, 0x3afc, 0x3afd, 0x3afe, 0x3aff,
- 0x3b00, 0x3b01, 0x3b02, 0x3b03, 0x3b04, 0x3b05, 0x3b06, 0x3b07, /* 0x3b00 */
- 0x3b08, 0x3b09, 0x3b0a, 0x3b0b, 0x3b0c, 0x3b0d, 0x3b0e, 0x3b0f,
- 0x3b10, 0x3b11, 0x3b12, 0x3b13, 0x3b14, 0x3b15, 0x3b16, 0x3b17,
- 0x3b18, 0x3b19, 0x3b1a, 0x3b1b, 0x3b1c, 0x3b1d, 0x3b1e, 0x3b1f,
- 0x3b20, 0x3b21, 0x3b22, 0x3b23, 0x3b24, 0x3b25, 0x3b26, 0x3b27,
- 0x3b28, 0x3b29, 0x3b2a, 0x3b2b, 0x3b2c, 0x3b2d, 0x3b2e, 0x3b2f,
- 0x3b30, 0x3b31, 0x3b32, 0x3b33, 0x3b34, 0x3b35, 0x3b36, 0x3b37,
- 0x3b38, 0x3b39, 0x3b3a, 0x3b3b, 0x3b3c, 0x3b3d, 0x3b3e, 0x3b3f,
- 0x3b40, 0x3b41, 0x3b42, 0x3b43, 0x3b44, 0x3b45, 0x3b46, 0x3b47, /* 0x3b40 */
- 0x3b48, 0x3b49, 0x3b4a, 0x3b4b, 0x3b4c, 0x3b4d, 0x3b4e, 0x3b4f,
- 0x3b50, 0x3b51, 0x3b52, 0x3b53, 0x3b54, 0x3b55, 0x3b56, 0x3b57,
- 0x3b58, 0x3b59, 0x3b5a, 0x3b5b, 0x3b5c, 0x3b5d, 0x3b5e, 0x3b5f,
- 0x3b60, 0x3b61, 0x3b62, 0x3b63, 0x3b64, 0x3b65, 0x3b66, 0x3b67,
- 0x3b68, 0x3b69, 0x3b6a, 0x3b6b, 0x3b6c, 0x3b6d, 0x3b6e, 0x3b6f,
- 0x3b70, 0x3b71, 0x3b72, 0x3b73, 0x3b74, 0x3b75, 0x3b76, 0x3b77,
- 0x3b78, 0x3b79, 0x3b7a, 0x3b7b, 0x3b7c, 0x3b7d, 0x3b7e, 0x3b7f,
- 0x3b80, 0x3b81, 0x3b82, 0x3b83, 0x3b84, 0x3b85, 0x3b86, 0x3b87, /* 0x3b80 */
- 0x3b88, 0x3b89, 0x3b8a, 0x3b8b, 0x3b8c, 0x3b8d, 0x3b8e, 0x3b8f,
- 0x3b90, 0x3b91, 0x3b92, 0x3b93, 0x3b94, 0x3b95, 0x3b96, 0x3b97,
- 0x3b98, 0x3b99, 0x3b9a, 0x3b9b, 0x3b9c, 0x3b9d, 0x3b9e, 0x3b9f,
- 0x3ba0, 0x3ba1, 0x3ba2, 0x3ba3, 0x3ba4, 0x3ba5, 0x3ba6, 0x3ba7,
- 0x3ba8, 0x3ba9, 0x3baa, 0x3bab, 0x3bac, 0x3bad, 0x3bae, 0x3baf,
- 0x3bb0, 0x3bb1, 0x3bb2, 0x3bb3, 0x3bb4, 0x3bb5, 0x3bb6, 0x3bb7,
- 0x3bb8, 0x3bb9, 0x3bba, 0x3bbb, 0x3bbc, 0x3bbd, 0x3bbe, 0x3bbf,
- 0x3bc0, 0x3bc1, 0x3bc2, 0x3bc3, 0x3bc4, 0x3bc5, 0x3bc6, 0x3bc7, /* 0x3bc0 */
- 0x3bc8, 0x3bc9, 0x3bca, 0x3bcb, 0x3bcc, 0x3bcd, 0x3bce, 0x3bcf,
- 0x3bd0, 0x3bd1, 0x3bd2, 0x3bd3, 0x3bd4, 0x3bd5, 0x3bd6, 0x3bd7,
- 0x3bd8, 0x3bd9, 0x3bda, 0x3bdb, 0x3bdc, 0x3bdd, 0x3bde, 0x3bdf,
- 0x3be0, 0x3be1, 0x3be2, 0x3be3, 0x3be4, 0x3be5, 0x3be6, 0x3be7,
- 0x3be8, 0x3be9, 0x3bea, 0x3beb, 0x3bec, 0x3bed, 0x3bee, 0x3bef,
- 0x3bf0, 0x3bf1, 0x3bf2, 0x3bf3, 0x3bf4, 0x3bf5, 0x3bf6, 0x3bf7,
- 0x3bf8, 0x3bf9, 0x3bfa, 0x3bfb, 0x3bfc, 0x3bfd, 0x3bfe, 0x3bff,
- 0x3c00, 0x3c01, 0x3c02, 0x3c03, 0x3c04, 0x3c05, 0x3c06, 0x3c07, /* 0x3c00 */
- 0x3c08, 0x3c09, 0x3c0a, 0x3c0b, 0x3c0c, 0x3c0d, 0x3c0e, 0x3c0f,
- 0x3c10, 0x3c11, 0x3c12, 0x3c13, 0x3c14, 0x3c15, 0x3c16, 0x3c17,
- 0x3c18, 0x3c19, 0x3c1a, 0x3c1b, 0x3c1c, 0x3c1d, 0x3c1e, 0x3c1f,
- 0x3c20, 0x3c21, 0x3c22, 0x3c23, 0x3c24, 0x3c25, 0x3c26, 0x3c27,
- 0x3c28, 0x3c29, 0x3c2a, 0x3c2b, 0x3c2c, 0x3c2d, 0x3c2e, 0x3c2f,
- 0x3c30, 0x3c31, 0x3c32, 0x3c33, 0x3c34, 0x3c35, 0x3c36, 0x3c37,
- 0x3c38, 0x3c39, 0x3c3a, 0x3c3b, 0x3c3c, 0x3c3d, 0x3c3e, 0x3c3f,
- 0x3c40, 0x3c41, 0x3c42, 0x3c43, 0x3c44, 0x3c45, 0x3c46, 0x3c47, /* 0x3c40 */
- 0x3c48, 0x3c49, 0x3c4a, 0x3c4b, 0x3c4c, 0x3c4d, 0x3c4e, 0x3c4f,
- 0x3c50, 0x3c51, 0x3c52, 0x3c53, 0x3c54, 0x3c55, 0x3c56, 0x3c57,
- 0x3c58, 0x3c59, 0x3c5a, 0x3c5b, 0x3c5c, 0x3c5d, 0x3c5e, 0x3c5f,
- 0x3c60, 0x3c61, 0x3c62, 0x3c63, 0x3c64, 0x3c65, 0x3c66, 0x3c67,
- 0x3c68, 0x3c69, 0x3c6a, 0x3c6b, 0x3c6c, 0x3c6d, 0x3c6e, 0x3c6f,
- 0x3c70, 0x3c71, 0x3c72, 0x3c73, 0x3c74, 0x3c75, 0x3c76, 0x3c77,
- 0x3c78, 0x3c79, 0x3c7a, 0x3c7b, 0x3c7c, 0x3c7d, 0x3c7e, 0x3c7f,
- 0x3c80, 0x3c81, 0x3c82, 0x3c83, 0x3c84, 0x3c85, 0x3c86, 0x3c87, /* 0x3c80 */
- 0x3c88, 0x3c89, 0x3c8a, 0x3c8b, 0x3c8c, 0x3c8d, 0x3c8e, 0x3c8f,
- 0x3c90, 0x3c91, 0x3c92, 0x3c93, 0x3c94, 0x3c95, 0x3c96, 0x3c97,
- 0x3c98, 0x3c99, 0x3c9a, 0x3c9b, 0x3c9c, 0x3c9d, 0x3c9e, 0x3c9f,
- 0x3ca0, 0x3ca1, 0x3ca2, 0x3ca3, 0x3ca4, 0x3ca5, 0x3ca6, 0x3ca7,
- 0x3ca8, 0x3ca9, 0x3caa, 0x3cab, 0x3cac, 0x3cad, 0x3cae, 0x3caf,
- 0x3cb0, 0x3cb1, 0x3cb2, 0x3cb3, 0x3cb4, 0x3cb5, 0x3cb6, 0x3cb7,
- 0x3cb8, 0x3cb9, 0x3cba, 0x3cbb, 0x3cbc, 0x3cbd, 0x3cbe, 0x3cbf,
- 0x3cc0, 0x3cc1, 0x3cc2, 0x3cc3, 0x3cc4, 0x3cc5, 0x3cc6, 0x3cc7, /* 0x3cc0 */
- 0x3cc8, 0x3cc9, 0x3cca, 0x3ccb, 0x3ccc, 0x3ccd, 0x3cce, 0x3ccf,
- 0x3cd0, 0x3cd1, 0x3cd2, 0x3cd3, 0x3cd4, 0x3cd5, 0x3cd6, 0x3cd7,
- 0x3cd8, 0x3cd9, 0x3cda, 0x3cdb, 0x3cdc, 0x3cdd, 0x3cde, 0x3cdf,
- 0x3ce0, 0x3ce1, 0x3ce2, 0x3ce3, 0x3ce4, 0x3ce5, 0x3ce6, 0x3ce7,
- 0x3ce8, 0x3ce9, 0x3cea, 0x3ceb, 0x3cec, 0x3ced, 0x3cee, 0x3cef,
- 0x3cf0, 0x3cf1, 0x3cf2, 0x3cf3, 0x3cf4, 0x3cf5, 0x3cf6, 0x3cf7,
- 0x3cf8, 0x3cf9, 0x3cfa, 0x3cfb, 0x3cfc, 0x3cfd, 0x3cfe, 0x3cff,
- 0x3d00, 0x3d01, 0x3d02, 0x3d03, 0x3d04, 0x3d05, 0x3d06, 0x3d07, /* 0x3d00 */
- 0x3d08, 0x3d09, 0x3d0a, 0x3d0b, 0x3d0c, 0x3d0d, 0x3d0e, 0x3d0f,
- 0x3d10, 0x3d11, 0x3d12, 0x3d13, 0x3d14, 0x3d15, 0x3d16, 0x3d17,
- 0x3d18, 0x3d19, 0x3d1a, 0x3d1b, 0x3d1c, 0x3d1d, 0x3d1e, 0x3d1f,
- 0x3d20, 0x3d21, 0x3d22, 0x3d23, 0x3d24, 0x3d25, 0x3d26, 0x3d27,
- 0x3d28, 0x3d29, 0x3d2a, 0x3d2b, 0x3d2c, 0x3d2d, 0x3d2e, 0x3d2f,
- 0x3d30, 0x3d31, 0x3d32, 0x3d33, 0x3d34, 0x3d35, 0x3d36, 0x3d37,
- 0x3d38, 0x3d39, 0x3d3a, 0x3d3b, 0x3d3c, 0x3d3d, 0x3d3e, 0x3d3f,
- 0x3d40, 0x3d41, 0x3d42, 0x3d43, 0x3d44, 0x3d45, 0x3d46, 0x3d47, /* 0x3d40 */
- 0x3d48, 0x3d49, 0x3d4a, 0x3d4b, 0x3d4c, 0x3d4d, 0x3d4e, 0x3d4f,
- 0x3d50, 0x3d51, 0x3d52, 0x3d53, 0x3d54, 0x3d55, 0x3d56, 0x3d57,
- 0x3d58, 0x3d59, 0x3d5a, 0x3d5b, 0x3d5c, 0x3d5d, 0x3d5e, 0x3d5f,
- 0x3d60, 0x3d61, 0x3d62, 0x3d63, 0x3d64, 0x3d65, 0x3d66, 0x3d67,
- 0x3d68, 0x3d69, 0x3d6a, 0x3d6b, 0x3d6c, 0x3d6d, 0x3d6e, 0x3d6f,
- 0x3d70, 0x3d71, 0x3d72, 0x3d73, 0x3d74, 0x3d75, 0x3d76, 0x3d77,
- 0x3d78, 0x3d79, 0x3d7a, 0x3d7b, 0x3d7c, 0x3d7d, 0x3d7e, 0x3d7f,
- 0x3d80, 0x3d81, 0x3d82, 0x3d83, 0x3d84, 0x3d85, 0x3d86, 0x3d87, /* 0x3d80 */
- 0x3d88, 0x3d89, 0x3d8a, 0x3d8b, 0x3d8c, 0x3d8d, 0x3d8e, 0x3d8f,
- 0x3d90, 0x3d91, 0x3d92, 0x3d93, 0x3d94, 0x3d95, 0x3d96, 0x3d97,
- 0x3d98, 0x3d99, 0x3d9a, 0x3d9b, 0x3d9c, 0x3d9d, 0x3d9e, 0x3d9f,
- 0x3da0, 0x3da1, 0x3da2, 0x3da3, 0x3da4, 0x3da5, 0x3da6, 0x3da7,
- 0x3da8, 0x3da9, 0x3daa, 0x3dab, 0x3dac, 0x3dad, 0x3dae, 0x3daf,
- 0x3db0, 0x3db1, 0x3db2, 0x3db3, 0x3db4, 0x3db5, 0x3db6, 0x3db7,
- 0x3db8, 0x3db9, 0x3dba, 0x3dbb, 0x3dbc, 0x3dbd, 0x3dbe, 0x3dbf,
- 0x3dc0, 0x3dc1, 0x3dc2, 0x3dc3, 0x3dc4, 0x3dc5, 0x3dc6, 0x3dc7, /* 0x3dc0 */
- 0x3dc8, 0x3dc9, 0x3dca, 0x3dcb, 0x3dcc, 0x3dcd, 0x3dce, 0x3dcf,
- 0x3dd0, 0x3dd1, 0x3dd2, 0x3dd3, 0x3dd4, 0x3dd5, 0x3dd6, 0x3dd7,
- 0x3dd8, 0x3dd9, 0x3dda, 0x3ddb, 0x3ddc, 0x3ddd, 0x3dde, 0x3ddf,
- 0x3de0, 0x3de1, 0x3de2, 0x3de3, 0x3de4, 0x3de5, 0x3de6, 0x3de7,
- 0x3de8, 0x3de9, 0x3dea, 0x3deb, 0x3dec, 0x3ded, 0x3dee, 0x3def,
- 0x3df0, 0x3df1, 0x3df2, 0x3df3, 0x3df4, 0x3df5, 0x3df6, 0x3df7,
- 0x3df8, 0x3df9, 0x3dfa, 0x3dfb, 0x3dfc, 0x3dfd, 0x3dfe, 0x3dff,
- 0x3e00, 0x3e01, 0x3e02, 0x3e03, 0x3e04, 0x3e05, 0x3e06, 0x3e07, /* 0x3e00 */
- 0x3e08, 0x3e09, 0x3e0a, 0x3e0b, 0x3e0c, 0x3e0d, 0x3e0e, 0x3e0f,
- 0x3e10, 0x3e11, 0x3e12, 0x3e13, 0x3e14, 0x3e15, 0x3e16, 0x3e17,
- 0x3e18, 0x3e19, 0x3e1a, 0x3e1b, 0x3e1c, 0x3e1d, 0x3e1e, 0x3e1f,
- 0x3e20, 0x3e21, 0x3e22, 0x3e23, 0x3e24, 0x3e25, 0x3e26, 0x3e27,
- 0x3e28, 0x3e29, 0x3e2a, 0x3e2b, 0x3e2c, 0x3e2d, 0x3e2e, 0x3e2f,
- 0x3e30, 0x3e31, 0x3e32, 0x3e33, 0x3e34, 0x3e35, 0x3e36, 0x3e37,
- 0x3e38, 0x3e39, 0x3e3a, 0x3e3b, 0x3e3c, 0x3e3d, 0x3e3e, 0x3e3f,
- 0x3e40, 0x3e41, 0x3e42, 0x3e43, 0x3e44, 0x3e45, 0x3e46, 0x3e47, /* 0x3e40 */
- 0x3e48, 0x3e49, 0x3e4a, 0x3e4b, 0x3e4c, 0x3e4d, 0x3e4e, 0x3e4f,
- 0x3e50, 0x3e51, 0x3e52, 0x3e53, 0x3e54, 0x3e55, 0x3e56, 0x3e57,
- 0x3e58, 0x3e59, 0x3e5a, 0x3e5b, 0x3e5c, 0x3e5d, 0x3e5e, 0x3e5f,
- 0x3e60, 0x3e61, 0x3e62, 0x3e63, 0x3e64, 0x3e65, 0x3e66, 0x3e67,
- 0x3e68, 0x3e69, 0x3e6a, 0x3e6b, 0x3e6c, 0x3e6d, 0x3e6e, 0x3e6f,
- 0x3e70, 0x3e71, 0x3e72, 0x3e73, 0x3e74, 0x3e75, 0x3e76, 0x3e77,
- 0x3e78, 0x3e79, 0x3e7a, 0x3e7b, 0x3e7c, 0x3e7d, 0x3e7e, 0x3e7f,
- 0x3e80, 0x3e81, 0x3e82, 0x3e83, 0x3e84, 0x3e85, 0x3e86, 0x3e87, /* 0x3e80 */
- 0x3e88, 0x3e89, 0x3e8a, 0x3e8b, 0x3e8c, 0x3e8d, 0x3e8e, 0x3e8f,
- 0x3e90, 0x3e91, 0x3e92, 0x3e93, 0x3e94, 0x3e95, 0x3e96, 0x3e97,
- 0x3e98, 0x3e99, 0x3e9a, 0x3e9b, 0x3e9c, 0x3e9d, 0x3e9e, 0x3e9f,
- 0x3ea0, 0x3ea1, 0x3ea2, 0x3ea3, 0x3ea4, 0x3ea5, 0x3ea6, 0x3ea7,
- 0x3ea8, 0x3ea9, 0x3eaa, 0x3eab, 0x3eac, 0x3ead, 0x3eae, 0x3eaf,
- 0x3eb0, 0x3eb1, 0x3eb2, 0x3eb3, 0x3eb4, 0x3eb5, 0x3eb6, 0x3eb7,
- 0x3eb8, 0x3eb9, 0x3eba, 0x3ebb, 0x3ebc, 0x3ebd, 0x3ebe, 0x3ebf,
- 0x3ec0, 0x3ec1, 0x3ec2, 0x3ec3, 0x3ec4, 0x3ec5, 0x3ec6, 0x3ec7, /* 0x3ec0 */
- 0x3ec8, 0x3ec9, 0x3eca, 0x3ecb, 0x3ecc, 0x3ecd, 0x3ece, 0x3ecf,
- 0x3ed0, 0x3ed1, 0x3ed2, 0x3ed3, 0x3ed4, 0x3ed5, 0x3ed6, 0x3ed7,
- 0x3ed8, 0x3ed9, 0x3eda, 0x3edb, 0x3edc, 0x3edd, 0x3ede, 0x3edf,
- 0x3ee0, 0x3ee1, 0x3ee2, 0x3ee3, 0x3ee4, 0x3ee5, 0x3ee6, 0x3ee7,
- 0x3ee8, 0x3ee9, 0x3eea, 0x3eeb, 0x3eec, 0x3eed, 0x3eee, 0x3eef,
- 0x3ef0, 0x3ef1, 0x3ef2, 0x3ef3, 0x3ef4, 0x3ef5, 0x3ef6, 0x3ef7,
- 0x3ef8, 0x3ef9, 0x3efa, 0x3efb, 0x3efc, 0x3efd, 0x3efe, 0x3eff,
- 0x3f00, 0x3f01, 0x3f02, 0x3f03, 0x3f04, 0x3f05, 0x3f06, 0x3f07, /* 0x3f00 */
- 0x3f08, 0x3f09, 0x3f0a, 0x3f0b, 0x3f0c, 0x3f0d, 0x3f0e, 0x3f0f,
- 0x3f10, 0x3f11, 0x3f12, 0x3f13, 0x3f14, 0x3f15, 0x3f16, 0x3f17,
- 0x3f18, 0x3f19, 0x3f1a, 0x3f1b, 0x3f1c, 0x3f1d, 0x3f1e, 0x3f1f,
- 0x3f20, 0x3f21, 0x3f22, 0x3f23, 0x3f24, 0x3f25, 0x3f26, 0x3f27,
- 0x3f28, 0x3f29, 0x3f2a, 0x3f2b, 0x3f2c, 0x3f2d, 0x3f2e, 0x3f2f,
- 0x3f30, 0x3f31, 0x3f32, 0x3f33, 0x3f34, 0x3f35, 0x3f36, 0x3f37,
- 0x3f38, 0x3f39, 0x3f3a, 0x3f3b, 0x3f3c, 0x3f3d, 0x3f3e, 0x3f3f,
- 0x3f40, 0x3f41, 0x3f42, 0x3f43, 0x3f44, 0x3f45, 0x3f46, 0x3f47, /* 0x3f40 */
- 0x3f48, 0x3f49, 0x3f4a, 0x3f4b, 0x3f4c, 0x3f4d, 0x3f4e, 0x3f4f,
- 0x3f50, 0x3f51, 0x3f52, 0x3f53, 0x3f54, 0x3f55, 0x3f56, 0x3f57,
- 0x3f58, 0x3f59, 0x3f5a, 0x3f5b, 0x3f5c, 0x3f5d, 0x3f5e, 0x3f5f,
- 0x3f60, 0x3f61, 0x3f62, 0x3f63, 0x3f64, 0x3f65, 0x3f66, 0x3f67,
- 0x3f68, 0x3f69, 0x3f6a, 0x3f6b, 0x3f6c, 0x3f6d, 0x3f6e, 0x3f6f,
- 0x3f70, 0x3f71, 0x3f72, 0x3f73, 0x3f74, 0x3f75, 0x3f76, 0x3f77,
- 0x3f78, 0x3f79, 0x3f7a, 0x3f7b, 0x3f7c, 0x3f7d, 0x3f7e, 0x3f7f,
- 0x3f80, 0x3f81, 0x3f82, 0x3f83, 0x3f84, 0x3f85, 0x3f86, 0x3f87, /* 0x3f80 */
- 0x3f88, 0x3f89, 0x3f8a, 0x3f8b, 0x3f8c, 0x3f8d, 0x3f8e, 0x3f8f,
- 0x3f90, 0x3f91, 0x3f92, 0x3f93, 0x3f94, 0x3f95, 0x3f96, 0x3f97,
- 0x3f98, 0x3f99, 0x3f9a, 0x3f9b, 0x3f9c, 0x3f9d, 0x3f9e, 0x3f9f,
- 0x3fa0, 0x3fa1, 0x3fa2, 0x3fa3, 0x3fa4, 0x3fa5, 0x3fa6, 0x3fa7,
- 0x3fa8, 0x3fa9, 0x3faa, 0x3fab, 0x3fac, 0x3fad, 0x3fae, 0x3faf,
- 0x3fb0, 0x3fb1, 0x3fb2, 0x3fb3, 0x3fb4, 0x3fb5, 0x3fb6, 0x3fb7,
- 0x3fb8, 0x3fb9, 0x3fba, 0x3fbb, 0x3fbc, 0x3fbd, 0x3fbe, 0x3fbf,
- 0x3fc0, 0x3fc1, 0x3fc2, 0x3fc3, 0x3fc4, 0x3fc5, 0x3fc6, 0x3fc7, /* 0x3fc0 */
- 0x3fc8, 0x3fc9, 0x3fca, 0x3fcb, 0x3fcc, 0x3fcd, 0x3fce, 0x3fcf,
- 0x3fd0, 0x3fd1, 0x3fd2, 0x3fd3, 0x3fd4, 0x3fd5, 0x3fd6, 0x3fd7,
- 0x3fd8, 0x3fd9, 0x3fda, 0x3fdb, 0x3fdc, 0x3fdd, 0x3fde, 0x3fdf,
- 0x3fe0, 0x3fe1, 0x3fe2, 0x3fe3, 0x3fe4, 0x3fe5, 0x3fe6, 0x3fe7,
- 0x3fe8, 0x3fe9, 0x3fea, 0x3feb, 0x3fec, 0x3fed, 0x3fee, 0x3fef,
- 0x3ff0, 0x3ff1, 0x3ff2, 0x3ff3, 0x3ff4, 0x3ff5, 0x3ff6, 0x3ff7,
- 0x3ff8, 0x3ff9, 0x3ffa, 0x3ffb, 0x3ffc, 0x3ffd, 0x3ffe, 0x3fff,
- 0x4000, 0x4001, 0x4002, 0x4003, 0x4004, 0x4005, 0x4006, 0x4007, /* 0x4000 */
- 0x4008, 0x4009, 0x400a, 0x400b, 0x400c, 0x400d, 0x400e, 0x400f,
- 0x4010, 0x4011, 0x4012, 0x4013, 0x4014, 0x4015, 0x4016, 0x4017,
- 0x4018, 0x4019, 0x401a, 0x401b, 0x401c, 0x401d, 0x401e, 0x401f,
- 0x4020, 0x4021, 0x4022, 0x4023, 0x4024, 0x4025, 0x4026, 0x4027,
- 0x4028, 0x4029, 0x402a, 0x402b, 0x402c, 0x402d, 0x402e, 0x402f,
- 0x4030, 0x4031, 0x4032, 0x4033, 0x4034, 0x4035, 0x4036, 0x4037,
- 0x4038, 0x4039, 0x403a, 0x403b, 0x403c, 0x403d, 0x403e, 0x403f,
- 0x4040, 0x4041, 0x4042, 0x4043, 0x4044, 0x4045, 0x4046, 0x4047, /* 0x4040 */
- 0x4048, 0x4049, 0x404a, 0x404b, 0x404c, 0x404d, 0x404e, 0x404f,
- 0x4050, 0x4051, 0x4052, 0x4053, 0x4054, 0x4055, 0x4056, 0x4057,
- 0x4058, 0x4059, 0x405a, 0x405b, 0x405c, 0x405d, 0x405e, 0x405f,
- 0x4060, 0x4061, 0x4062, 0x4063, 0x4064, 0x4065, 0x4066, 0x4067,
- 0x4068, 0x4069, 0x406a, 0x406b, 0x406c, 0x406d, 0x406e, 0x406f,
- 0x4070, 0x4071, 0x4072, 0x4073, 0x4074, 0x4075, 0x4076, 0x4077,
- 0x4078, 0x4079, 0x407a, 0x407b, 0x407c, 0x407d, 0x407e, 0x407f,
- 0x4080, 0x4081, 0x4082, 0x4083, 0x4084, 0x4085, 0x4086, 0x4087, /* 0x4080 */
- 0x4088, 0x4089, 0x408a, 0x408b, 0x408c, 0x408d, 0x408e, 0x408f,
- 0x4090, 0x4091, 0x4092, 0x4093, 0x4094, 0x4095, 0x4096, 0x4097,
- 0x4098, 0x4099, 0x409a, 0x409b, 0x409c, 0x409d, 0x409e, 0x409f,
- 0x40a0, 0x40a1, 0x40a2, 0x40a3, 0x40a4, 0x40a5, 0x40a6, 0x40a7,
- 0x40a8, 0x40a9, 0x40aa, 0x40ab, 0x40ac, 0x40ad, 0x40ae, 0x40af,
- 0x40b0, 0x40b1, 0x40b2, 0x40b3, 0x40b4, 0x40b5, 0x40b6, 0x40b7,
- 0x40b8, 0x40b9, 0x40ba, 0x40bb, 0x40bc, 0x40bd, 0x40be, 0x40bf,
- 0x40c0, 0x40c1, 0x40c2, 0x40c3, 0x40c4, 0x40c5, 0x40c6, 0x40c7, /* 0x40c0 */
- 0x40c8, 0x40c9, 0x40ca, 0x40cb, 0x40cc, 0x40cd, 0x40ce, 0x40cf,
- 0x40d0, 0x40d1, 0x40d2, 0x40d3, 0x40d4, 0x40d5, 0x40d6, 0x40d7,
- 0x40d8, 0x40d9, 0x40da, 0x40db, 0x40dc, 0x40dd, 0x40de, 0x40df,
- 0x40e0, 0x40e1, 0x40e2, 0x40e3, 0x40e4, 0x40e5, 0x40e6, 0x40e7,
- 0x40e8, 0x40e9, 0x40ea, 0x40eb, 0x40ec, 0x40ed, 0x40ee, 0x40ef,
- 0x40f0, 0x40f1, 0x40f2, 0x40f3, 0x40f4, 0x40f5, 0x40f6, 0x40f7,
- 0x40f8, 0x40f9, 0x40fa, 0x40fb, 0x40fc, 0x40fd, 0x40fe, 0x40ff,
- 0x4100, 0x4101, 0x4102, 0x4103, 0x4104, 0x4105, 0x4106, 0x4107, /* 0x4100 */
- 0x4108, 0x4109, 0x410a, 0x410b, 0x410c, 0x410d, 0x410e, 0x410f,
- 0x4110, 0x4111, 0x4112, 0x4113, 0x4114, 0x4115, 0x4116, 0x4117,
- 0x4118, 0x4119, 0x411a, 0x411b, 0x411c, 0x411d, 0x411e, 0x411f,
- 0x4120, 0x4121, 0x4122, 0x4123, 0x4124, 0x4125, 0x4126, 0x4127,
- 0x4128, 0x4129, 0x412a, 0x412b, 0x412c, 0x412d, 0x412e, 0x412f,
- 0x4130, 0x4131, 0x4132, 0x4133, 0x4134, 0x4135, 0x4136, 0x4137,
- 0x4138, 0x4139, 0x413a, 0x413b, 0x413c, 0x413d, 0x413e, 0x413f,
- 0x4140, 0x4141, 0x4142, 0x4143, 0x4144, 0x4145, 0x4146, 0x4147, /* 0x4140 */
- 0x4148, 0x4149, 0x414a, 0x414b, 0x414c, 0x414d, 0x414e, 0x414f,
- 0x4150, 0x4151, 0x4152, 0x4153, 0x4154, 0x4155, 0x4156, 0x4157,
- 0x4158, 0x4159, 0x415a, 0x415b, 0x415c, 0x415d, 0x415e, 0x415f,
- 0x4160, 0x4161, 0x4162, 0x4163, 0x4164, 0x4165, 0x4166, 0x4167,
- 0x4168, 0x4169, 0x416a, 0x416b, 0x416c, 0x416d, 0x416e, 0x416f,
- 0x4170, 0x4171, 0x4172, 0x4173, 0x4174, 0x4175, 0x4176, 0x4177,
- 0x4178, 0x4179, 0x417a, 0x417b, 0x417c, 0x417d, 0x417e, 0x417f,
- 0x4180, 0x4181, 0x4182, 0x4183, 0x4184, 0x4185, 0x4186, 0x4187, /* 0x4180 */
- 0x4188, 0x4189, 0x418a, 0x418b, 0x418c, 0x418d, 0x418e, 0x418f,
- 0x4190, 0x4191, 0x4192, 0x4193, 0x4194, 0x4195, 0x4196, 0x4197,
- 0x4198, 0x4199, 0x419a, 0x419b, 0x419c, 0x419d, 0x419e, 0x419f,
- 0x41a0, 0x41a1, 0x41a2, 0x41a3, 0x41a4, 0x41a5, 0x41a6, 0x41a7,
- 0x41a8, 0x41a9, 0x41aa, 0x41ab, 0x41ac, 0x41ad, 0x41ae, 0x41af,
- 0x41b0, 0x41b1, 0x41b2, 0x41b3, 0x41b4, 0x41b5, 0x41b6, 0x41b7,
- 0x41b8, 0x41b9, 0x41ba, 0x41bb, 0x41bc, 0x41bd, 0x41be, 0x41bf,
- 0x41c0, 0x41c1, 0x41c2, 0x41c3, 0x41c4, 0x41c5, 0x41c6, 0x41c7, /* 0x41c0 */
- 0x41c8, 0x41c9, 0x41ca, 0x41cb, 0x41cc, 0x41cd, 0x41ce, 0x41cf,
- 0x41d0, 0x41d1, 0x41d2, 0x41d3, 0x41d4, 0x41d5, 0x41d6, 0x41d7,
- 0x41d8, 0x41d9, 0x41da, 0x41db, 0x41dc, 0x41dd, 0x41de, 0x41df,
- 0x41e0, 0x41e1, 0x41e2, 0x41e3, 0x41e4, 0x41e5, 0x41e6, 0x41e7,
- 0x41e8, 0x41e9, 0x41ea, 0x41eb, 0x41ec, 0x41ed, 0x41ee, 0x41ef,
- 0x41f0, 0x41f1, 0x41f2, 0x41f3, 0x41f4, 0x41f5, 0x41f6, 0x41f7,
- 0x41f8, 0x41f9, 0x41fa, 0x41fb, 0x41fc, 0x41fd, 0x41fe, 0x41ff,
- 0x4200, 0x4201, 0x4202, 0x4203, 0x4204, 0x4205, 0x4206, 0x4207, /* 0x4200 */
- 0x4208, 0x4209, 0x420a, 0x420b, 0x420c, 0x420d, 0x420e, 0x420f,
- 0x4210, 0x4211, 0x4212, 0x4213, 0x4214, 0x4215, 0x4216, 0x4217,
- 0x4218, 0x4219, 0x421a, 0x421b, 0x421c, 0x421d, 0x421e, 0x421f,
- 0x4220, 0x4221, 0x4222, 0x4223, 0x4224, 0x4225, 0x4226, 0x4227,
- 0x4228, 0x4229, 0x422a, 0x422b, 0x422c, 0x422d, 0x422e, 0x422f,
- 0x4230, 0x4231, 0x4232, 0x4233, 0x4234, 0x4235, 0x4236, 0x4237,
- 0x4238, 0x4239, 0x423a, 0x423b, 0x423c, 0x423d, 0x423e, 0x423f,
- 0x4240, 0x4241, 0x4242, 0x4243, 0x4244, 0x4245, 0x4246, 0x4247, /* 0x4240 */
- 0x4248, 0x4249, 0x424a, 0x424b, 0x424c, 0x424d, 0x424e, 0x424f,
- 0x4250, 0x4251, 0x4252, 0x4253, 0x4254, 0x4255, 0x4256, 0x4257,
- 0x4258, 0x4259, 0x425a, 0x425b, 0x425c, 0x425d, 0x425e, 0x425f,
- 0x4260, 0x4261, 0x4262, 0x4263, 0x4264, 0x4265, 0x4266, 0x4267,
- 0x4268, 0x4269, 0x426a, 0x426b, 0x426c, 0x426d, 0x426e, 0x426f,
- 0x4270, 0x4271, 0x4272, 0x4273, 0x4274, 0x4275, 0x4276, 0x4277,
- 0x4278, 0x4279, 0x427a, 0x427b, 0x427c, 0x427d, 0x427e, 0x427f,
- 0x4280, 0x4281, 0x4282, 0x4283, 0x4284, 0x4285, 0x4286, 0x4287, /* 0x4280 */
- 0x4288, 0x4289, 0x428a, 0x428b, 0x428c, 0x428d, 0x428e, 0x428f,
- 0x4290, 0x4291, 0x4292, 0x4293, 0x4294, 0x4295, 0x4296, 0x4297,
- 0x4298, 0x4299, 0x429a, 0x429b, 0x429c, 0x429d, 0x429e, 0x429f,
- 0x42a0, 0x42a1, 0x42a2, 0x42a3, 0x42a4, 0x42a5, 0x42a6, 0x42a7,
- 0x42a8, 0x42a9, 0x42aa, 0x42ab, 0x42ac, 0x42ad, 0x42ae, 0x42af,
- 0x42b0, 0x42b1, 0x42b2, 0x42b3, 0x42b4, 0x42b5, 0x42b6, 0x42b7,
- 0x42b8, 0x42b9, 0x42ba, 0x42bb, 0x42bc, 0x42bd, 0x42be, 0x42bf,
- 0x42c0, 0x42c1, 0x42c2, 0x42c3, 0x42c4, 0x42c5, 0x42c6, 0x42c7, /* 0x42c0 */
- 0x42c8, 0x42c9, 0x42ca, 0x42cb, 0x42cc, 0x42cd, 0x42ce, 0x42cf,
- 0x42d0, 0x42d1, 0x42d2, 0x42d3, 0x42d4, 0x42d5, 0x42d6, 0x42d7,
- 0x42d8, 0x42d9, 0x42da, 0x42db, 0x42dc, 0x42dd, 0x42de, 0x42df,
- 0x42e0, 0x42e1, 0x42e2, 0x42e3, 0x42e4, 0x42e5, 0x42e6, 0x42e7,
- 0x42e8, 0x42e9, 0x42ea, 0x42eb, 0x42ec, 0x42ed, 0x42ee, 0x42ef,
- 0x42f0, 0x42f1, 0x42f2, 0x42f3, 0x42f4, 0x42f5, 0x42f6, 0x42f7,
- 0x42f8, 0x42f9, 0x42fa, 0x42fb, 0x42fc, 0x42fd, 0x42fe, 0x42ff,
- 0x4300, 0x4301, 0x4302, 0x4303, 0x4304, 0x4305, 0x4306, 0x4307, /* 0x4300 */
- 0x4308, 0x4309, 0x430a, 0x430b, 0x430c, 0x430d, 0x430e, 0x430f,
- 0x4310, 0x4311, 0x4312, 0x4313, 0x4314, 0x4315, 0x4316, 0x4317,
- 0x4318, 0x4319, 0x431a, 0x431b, 0x431c, 0x431d, 0x431e, 0x431f,
- 0x4320, 0x4321, 0x4322, 0x4323, 0x4324, 0x4325, 0x4326, 0x4327,
- 0x4328, 0x4329, 0x432a, 0x432b, 0x432c, 0x432d, 0x432e, 0x432f,
- 0x4330, 0x4331, 0x4332, 0x4333, 0x4334, 0x4335, 0x4336, 0x4337,
- 0x4338, 0x4339, 0x433a, 0x433b, 0x433c, 0x433d, 0x433e, 0x433f,
- 0x4340, 0x4341, 0x4342, 0x4343, 0x4344, 0x4345, 0x4346, 0x4347, /* 0x4340 */
- 0x4348, 0x4349, 0x434a, 0x434b, 0x434c, 0x434d, 0x434e, 0x434f,
- 0x4350, 0x4351, 0x4352, 0x4353, 0x4354, 0x4355, 0x4356, 0x4357,
- 0x4358, 0x4359, 0x435a, 0x435b, 0x435c, 0x435d, 0x435e, 0x435f,
- 0x4360, 0x4361, 0x4362, 0x4363, 0x4364, 0x4365, 0x4366, 0x4367,
- 0x4368, 0x4369, 0x436a, 0x436b, 0x436c, 0x436d, 0x436e, 0x436f,
- 0x4370, 0x4371, 0x4372, 0x4373, 0x4374, 0x4375, 0x4376, 0x4377,
- 0x4378, 0x4379, 0x437a, 0x437b, 0x437c, 0x437d, 0x437e, 0x437f,
- 0x4380, 0x4381, 0x4382, 0x4383, 0x4384, 0x4385, 0x4386, 0x4387, /* 0x4380 */
- 0x4388, 0x4389, 0x438a, 0x438b, 0x438c, 0x438d, 0x438e, 0x438f,
- 0x4390, 0x4391, 0x4392, 0x4393, 0x4394, 0x4395, 0x4396, 0x4397,
- 0x4398, 0x4399, 0x439a, 0x439b, 0x439c, 0x439d, 0x439e, 0x439f,
- 0x43a0, 0x43a1, 0x43a2, 0x43a3, 0x43a4, 0x43a5, 0x43a6, 0x43a7,
- 0x43a8, 0x43a9, 0x43aa, 0x43ab, 0x43ac, 0x43ad, 0x43ae, 0x43af,
- 0x43b0, 0x43b1, 0x43b2, 0x43b3, 0x43b4, 0x43b5, 0x43b6, 0x43b7,
- 0x43b8, 0x43b9, 0x43ba, 0x43bb, 0x43bc, 0x43bd, 0x43be, 0x43bf,
- 0x43c0, 0x43c1, 0x43c2, 0x43c3, 0x43c4, 0x43c5, 0x43c6, 0x43c7, /* 0x43c0 */
- 0x43c8, 0x43c9, 0x43ca, 0x43cb, 0x43cc, 0x43cd, 0x43ce, 0x43cf,
- 0x43d0, 0x43d1, 0x43d2, 0x43d3, 0x43d4, 0x43d5, 0x43d6, 0x43d7,
- 0x43d8, 0x43d9, 0x43da, 0x43db, 0x43dc, 0x43dd, 0x43de, 0x43df,
- 0x43e0, 0x43e1, 0x43e2, 0x43e3, 0x43e4, 0x43e5, 0x43e6, 0x43e7,
- 0x43e8, 0x43e9, 0x43ea, 0x43eb, 0x43ec, 0x43ed, 0x43ee, 0x43ef,
- 0x43f0, 0x43f1, 0x43f2, 0x43f3, 0x43f4, 0x43f5, 0x43f6, 0x43f7,
- 0x43f8, 0x43f9, 0x43fa, 0x43fb, 0x43fc, 0x43fd, 0x43fe, 0x43ff,
- 0x4400, 0x4401, 0x4402, 0x4403, 0x4404, 0x4405, 0x4406, 0x4407, /* 0x4400 */
- 0x4408, 0x4409, 0x440a, 0x440b, 0x440c, 0x440d, 0x440e, 0x440f,
- 0x4410, 0x4411, 0x4412, 0x4413, 0x4414, 0x4415, 0x4416, 0x4417,
- 0x4418, 0x4419, 0x441a, 0x441b, 0x441c, 0x441d, 0x441e, 0x441f,
- 0x4420, 0x4421, 0x4422, 0x4423, 0x4424, 0x4425, 0x4426, 0x4427,
- 0x4428, 0x4429, 0x442a, 0x442b, 0x442c, 0x442d, 0x442e, 0x442f,
- 0x4430, 0x4431, 0x4432, 0x4433, 0x4434, 0x4435, 0x4436, 0x4437,
- 0x4438, 0x4439, 0x443a, 0x443b, 0x443c, 0x443d, 0x443e, 0x443f,
- 0x4440, 0x4441, 0x4442, 0x4443, 0x4444, 0x4445, 0x4446, 0x4447, /* 0x4440 */
- 0x4448, 0x4449, 0x444a, 0x444b, 0x444c, 0x444d, 0x444e, 0x444f,
- 0x4450, 0x4451, 0x4452, 0x4453, 0x4454, 0x4455, 0x4456, 0x4457,
- 0x4458, 0x4459, 0x445a, 0x445b, 0x445c, 0x445d, 0x445e, 0x445f,
- 0x4460, 0x4461, 0x4462, 0x4463, 0x4464, 0x4465, 0x4466, 0x4467,
- 0x4468, 0x4469, 0x446a, 0x446b, 0x446c, 0x446d, 0x446e, 0x446f,
- 0x4470, 0x4471, 0x4472, 0x4473, 0x4474, 0x4475, 0x4476, 0x4477,
- 0x4478, 0x4479, 0x447a, 0x447b, 0x447c, 0x447d, 0x447e, 0x447f,
- 0x4480, 0x4481, 0x4482, 0x4483, 0x4484, 0x4485, 0x4486, 0x4487, /* 0x4480 */
- 0x4488, 0x4489, 0x448a, 0x448b, 0x448c, 0x448d, 0x448e, 0x448f,
- 0x4490, 0x4491, 0x4492, 0x4493, 0x4494, 0x4495, 0x4496, 0x4497,
- 0x4498, 0x4499, 0x449a, 0x449b, 0x449c, 0x449d, 0x449e, 0x449f,
- 0x44a0, 0x44a1, 0x44a2, 0x44a3, 0x44a4, 0x44a5, 0x44a6, 0x44a7,
- 0x44a8, 0x44a9, 0x44aa, 0x44ab, 0x44ac, 0x44ad, 0x44ae, 0x44af,
- 0x44b0, 0x44b1, 0x44b2, 0x44b3, 0x44b4, 0x44b5, 0x44b6, 0x44b7,
- 0x44b8, 0x44b9, 0x44ba, 0x44bb, 0x44bc, 0x44bd, 0x44be, 0x44bf,
- 0x44c0, 0x44c1, 0x44c2, 0x44c3, 0x44c4, 0x44c5, 0x44c6, 0x44c7, /* 0x44c0 */
- 0x44c8, 0x44c9, 0x44ca, 0x44cb, 0x44cc, 0x44cd, 0x44ce, 0x44cf,
- 0x44d0, 0x44d1, 0x44d2, 0x44d3, 0x44d4, 0x44d5, 0x44d6, 0x44d7,
- 0x44d8, 0x44d9, 0x44da, 0x44db, 0x44dc, 0x44dd, 0x44de, 0x44df,
- 0x44e0, 0x44e1, 0x44e2, 0x44e3, 0x44e4, 0x44e5, 0x44e6, 0x44e7,
- 0x44e8, 0x44e9, 0x44ea, 0x44eb, 0x44ec, 0x44ed, 0x44ee, 0x44ef,
- 0x44f0, 0x44f1, 0x44f2, 0x44f3, 0x44f4, 0x44f5, 0x44f6, 0x44f7,
- 0x44f8, 0x44f9, 0x44fa, 0x44fb, 0x44fc, 0x44fd, 0x44fe, 0x44ff,
- 0x4500, 0x4501, 0x4502, 0x4503, 0x4504, 0x4505, 0x4506, 0x4507, /* 0x4500 */
- 0x4508, 0x4509, 0x450a, 0x450b, 0x450c, 0x450d, 0x450e, 0x450f,
- 0x4510, 0x4511, 0x4512, 0x4513, 0x4514, 0x4515, 0x4516, 0x4517,
- 0x4518, 0x4519, 0x451a, 0x451b, 0x451c, 0x451d, 0x451e, 0x451f,
- 0x4520, 0x4521, 0x4522, 0x4523, 0x4524, 0x4525, 0x4526, 0x4527,
- 0x4528, 0x4529, 0x452a, 0x452b, 0x452c, 0x452d, 0x452e, 0x452f,
- 0x4530, 0x4531, 0x4532, 0x4533, 0x4534, 0x4535, 0x4536, 0x4537,
- 0x4538, 0x4539, 0x453a, 0x453b, 0x453c, 0x453d, 0x453e, 0x453f,
- 0x4540, 0x4541, 0x4542, 0x4543, 0x4544, 0x4545, 0x4546, 0x4547, /* 0x4540 */
- 0x4548, 0x4549, 0x454a, 0x454b, 0x454c, 0x454d, 0x454e, 0x454f,
- 0x4550, 0x4551, 0x4552, 0x4553, 0x4554, 0x4555, 0x4556, 0x4557,
- 0x4558, 0x4559, 0x455a, 0x455b, 0x455c, 0x455d, 0x455e, 0x455f,
- 0x4560, 0x4561, 0x4562, 0x4563, 0x4564, 0x4565, 0x4566, 0x4567,
- 0x4568, 0x4569, 0x456a, 0x456b, 0x456c, 0x456d, 0x456e, 0x456f,
- 0x4570, 0x4571, 0x4572, 0x4573, 0x4574, 0x4575, 0x4576, 0x4577,
- 0x4578, 0x4579, 0x457a, 0x457b, 0x457c, 0x457d, 0x457e, 0x457f,
- 0x4580, 0x4581, 0x4582, 0x4583, 0x4584, 0x4585, 0x4586, 0x4587, /* 0x4580 */
- 0x4588, 0x4589, 0x458a, 0x458b, 0x458c, 0x458d, 0x458e, 0x458f,
- 0x4590, 0x4591, 0x4592, 0x4593, 0x4594, 0x4595, 0x4596, 0x4597,
- 0x4598, 0x4599, 0x459a, 0x459b, 0x459c, 0x459d, 0x459e, 0x459f,
- 0x45a0, 0x45a1, 0x45a2, 0x45a3, 0x45a4, 0x45a5, 0x45a6, 0x45a7,
- 0x45a8, 0x45a9, 0x45aa, 0x45ab, 0x45ac, 0x45ad, 0x45ae, 0x45af,
- 0x45b0, 0x45b1, 0x45b2, 0x45b3, 0x45b4, 0x45b5, 0x45b6, 0x45b7,
- 0x45b8, 0x45b9, 0x45ba, 0x45bb, 0x45bc, 0x45bd, 0x45be, 0x45bf,
- 0x45c0, 0x45c1, 0x45c2, 0x45c3, 0x45c4, 0x45c5, 0x45c6, 0x45c7, /* 0x45c0 */
- 0x45c8, 0x45c9, 0x45ca, 0x45cb, 0x45cc, 0x45cd, 0x45ce, 0x45cf,
- 0x45d0, 0x45d1, 0x45d2, 0x45d3, 0x45d4, 0x45d5, 0x45d6, 0x45d7,
- 0x45d8, 0x45d9, 0x45da, 0x45db, 0x45dc, 0x45dd, 0x45de, 0x45df,
- 0x45e0, 0x45e1, 0x45e2, 0x45e3, 0x45e4, 0x45e5, 0x45e6, 0x45e7,
- 0x45e8, 0x45e9, 0x45ea, 0x45eb, 0x45ec, 0x45ed, 0x45ee, 0x45ef,
- 0x45f0, 0x45f1, 0x45f2, 0x45f3, 0x45f4, 0x45f5, 0x45f6, 0x45f7,
- 0x45f8, 0x45f9, 0x45fa, 0x45fb, 0x45fc, 0x45fd, 0x45fe, 0x45ff,
- 0x4600, 0x4601, 0x4602, 0x4603, 0x4604, 0x4605, 0x4606, 0x4607, /* 0x4600 */
- 0x4608, 0x4609, 0x460a, 0x460b, 0x460c, 0x460d, 0x460e, 0x460f,
- 0x4610, 0x4611, 0x4612, 0x4613, 0x4614, 0x4615, 0x4616, 0x4617,
- 0x4618, 0x4619, 0x461a, 0x461b, 0x461c, 0x461d, 0x461e, 0x461f,
- 0x4620, 0x4621, 0x4622, 0x4623, 0x4624, 0x4625, 0x4626, 0x4627,
- 0x4628, 0x4629, 0x462a, 0x462b, 0x462c, 0x462d, 0x462e, 0x462f,
- 0x4630, 0x4631, 0x4632, 0x4633, 0x4634, 0x4635, 0x4636, 0x4637,
- 0x4638, 0x4639, 0x463a, 0x463b, 0x463c, 0x463d, 0x463e, 0x463f,
- 0x4640, 0x4641, 0x4642, 0x4643, 0x4644, 0x4645, 0x4646, 0x4647, /* 0x4640 */
- 0x4648, 0x4649, 0x464a, 0x464b, 0x464c, 0x464d, 0x464e, 0x464f,
- 0x4650, 0x4651, 0x4652, 0x4653, 0x4654, 0x4655, 0x4656, 0x4657,
- 0x4658, 0x4659, 0x465a, 0x465b, 0x465c, 0x465d, 0x465e, 0x465f,
- 0x4660, 0x4661, 0x4662, 0x4663, 0x4664, 0x4665, 0x4666, 0x4667,
- 0x4668, 0x4669, 0x466a, 0x466b, 0x466c, 0x466d, 0x466e, 0x466f,
- 0x4670, 0x4671, 0x4672, 0x4673, 0x4674, 0x4675, 0x4676, 0x4677,
- 0x4678, 0x4679, 0x467a, 0x467b, 0x467c, 0x467d, 0x467e, 0x467f,
- 0x4680, 0x4681, 0x4682, 0x4683, 0x4684, 0x4685, 0x4686, 0x4687, /* 0x4680 */
- 0x4688, 0x4689, 0x468a, 0x468b, 0x468c, 0x468d, 0x468e, 0x468f,
- 0x4690, 0x4691, 0x4692, 0x4693, 0x4694, 0x4695, 0x4696, 0x4697,
- 0x4698, 0x4699, 0x469a, 0x469b, 0x469c, 0x469d, 0x469e, 0x469f,
- 0x46a0, 0x46a1, 0x46a2, 0x46a3, 0x46a4, 0x46a5, 0x46a6, 0x46a7,
- 0x46a8, 0x46a9, 0x46aa, 0x46ab, 0x46ac, 0x46ad, 0x46ae, 0x46af,
- 0x46b0, 0x46b1, 0x46b2, 0x46b3, 0x46b4, 0x46b5, 0x46b6, 0x46b7,
- 0x46b8, 0x46b9, 0x46ba, 0x46bb, 0x46bc, 0x46bd, 0x46be, 0x46bf,
- 0x46c0, 0x46c1, 0x46c2, 0x46c3, 0x46c4, 0x46c5, 0x46c6, 0x46c7, /* 0x46c0 */
- 0x46c8, 0x46c9, 0x46ca, 0x46cb, 0x46cc, 0x46cd, 0x46ce, 0x46cf,
- 0x46d0, 0x46d1, 0x46d2, 0x46d3, 0x46d4, 0x46d5, 0x46d6, 0x46d7,
- 0x46d8, 0x46d9, 0x46da, 0x46db, 0x46dc, 0x46dd, 0x46de, 0x46df,
- 0x46e0, 0x46e1, 0x46e2, 0x46e3, 0x46e4, 0x46e5, 0x46e6, 0x46e7,
- 0x46e8, 0x46e9, 0x46ea, 0x46eb, 0x46ec, 0x46ed, 0x46ee, 0x46ef,
- 0x46f0, 0x46f1, 0x46f2, 0x46f3, 0x46f4, 0x46f5, 0x46f6, 0x46f7,
- 0x46f8, 0x46f9, 0x46fa, 0x46fb, 0x46fc, 0x46fd, 0x46fe, 0x46ff,
- 0x4700, 0x4701, 0x4702, 0x4703, 0x4704, 0x4705, 0x4706, 0x4707, /* 0x4700 */
- 0x4708, 0x4709, 0x470a, 0x470b, 0x470c, 0x470d, 0x470e, 0x470f,
- 0x4710, 0x4711, 0x4712, 0x4713, 0x4714, 0x4715, 0x4716, 0x4717,
- 0x4718, 0x4719, 0x471a, 0x471b, 0x471c, 0x471d, 0x471e, 0x471f,
- 0x4720, 0x4721, 0x4722, 0x4723, 0x4724, 0x4725, 0x4726, 0x4727,
- 0x4728, 0x4729, 0x472a, 0x472b, 0x472c, 0x472d, 0x472e, 0x472f,
- 0x4730, 0x4731, 0x4732, 0x4733, 0x4734, 0x4735, 0x4736, 0x4737,
- 0x4738, 0x4739, 0x473a, 0x473b, 0x473c, 0x473d, 0x473e, 0x473f,
- 0x4740, 0x4741, 0x4742, 0x4743, 0x4744, 0x4745, 0x4746, 0x4747, /* 0x4740 */
- 0x4748, 0x4749, 0x474a, 0x474b, 0x474c, 0x474d, 0x474e, 0x474f,
- 0x4750, 0x4751, 0x4752, 0x4753, 0x4754, 0x4755, 0x4756, 0x4757,
- 0x4758, 0x4759, 0x475a, 0x475b, 0x475c, 0x475d, 0x475e, 0x475f,
- 0x4760, 0x4761, 0x4762, 0x4763, 0x4764, 0x4765, 0x4766, 0x4767,
- 0x4768, 0x4769, 0x476a, 0x476b, 0x476c, 0x476d, 0x476e, 0x476f,
- 0x4770, 0x4771, 0x4772, 0x4773, 0x4774, 0x4775, 0x4776, 0x4777,
- 0x4778, 0x4779, 0x477a, 0x477b, 0x477c, 0x477d, 0x477e, 0x477f,
- 0x4780, 0x4781, 0x4782, 0x4783, 0x4784, 0x4785, 0x4786, 0x4787, /* 0x4780 */
- 0x4788, 0x4789, 0x478a, 0x478b, 0x478c, 0x478d, 0x478e, 0x478f,
- 0x4790, 0x4791, 0x4792, 0x4793, 0x4794, 0x4795, 0x4796, 0x4797,
- 0x4798, 0x4799, 0x479a, 0x479b, 0x479c, 0x479d, 0x479e, 0x479f,
- 0x47a0, 0x47a1, 0x47a2, 0x47a3, 0x47a4, 0x47a5, 0x47a6, 0x47a7,
- 0x47a8, 0x47a9, 0x47aa, 0x47ab, 0x47ac, 0x47ad, 0x47ae, 0x47af,
- 0x47b0, 0x47b1, 0x47b2, 0x47b3, 0x47b4, 0x47b5, 0x47b6, 0x47b7,
- 0x47b8, 0x47b9, 0x47ba, 0x47bb, 0x47bc, 0x47bd, 0x47be, 0x47bf,
- 0x47c0, 0x47c1, 0x47c2, 0x47c3, 0x47c4, 0x47c5, 0x47c6, 0x47c7, /* 0x47c0 */
- 0x47c8, 0x47c9, 0x47ca, 0x47cb, 0x47cc, 0x47cd, 0x47ce, 0x47cf,
- 0x47d0, 0x47d1, 0x47d2, 0x47d3, 0x47d4, 0x47d5, 0x47d6, 0x47d7,
- 0x47d8, 0x47d9, 0x47da, 0x47db, 0x47dc, 0x47dd, 0x47de, 0x47df,
- 0x47e0, 0x47e1, 0x47e2, 0x47e3, 0x47e4, 0x47e5, 0x47e6, 0x47e7,
- 0x47e8, 0x47e9, 0x47ea, 0x47eb, 0x47ec, 0x47ed, 0x47ee, 0x47ef,
- 0x47f0, 0x47f1, 0x47f2, 0x47f3, 0x47f4, 0x47f5, 0x47f6, 0x47f7,
- 0x47f8, 0x47f9, 0x47fa, 0x47fb, 0x47fc, 0x47fd, 0x47fe, 0x47ff,
- 0x4800, 0x4801, 0x4802, 0x4803, 0x4804, 0x4805, 0x4806, 0x4807, /* 0x4800 */
- 0x4808, 0x4809, 0x480a, 0x480b, 0x480c, 0x480d, 0x480e, 0x480f,
- 0x4810, 0x4811, 0x4812, 0x4813, 0x4814, 0x4815, 0x4816, 0x4817,
- 0x4818, 0x4819, 0x481a, 0x481b, 0x481c, 0x481d, 0x481e, 0x481f,
- 0x4820, 0x4821, 0x4822, 0x4823, 0x4824, 0x4825, 0x4826, 0x4827,
- 0x4828, 0x4829, 0x482a, 0x482b, 0x482c, 0x482d, 0x482e, 0x482f,
- 0x4830, 0x4831, 0x4832, 0x4833, 0x4834, 0x4835, 0x4836, 0x4837,
- 0x4838, 0x4839, 0x483a, 0x483b, 0x483c, 0x483d, 0x483e, 0x483f,
- 0x4840, 0x4841, 0x4842, 0x4843, 0x4844, 0x4845, 0x4846, 0x4847, /* 0x4840 */
- 0x4848, 0x4849, 0x484a, 0x484b, 0x484c, 0x484d, 0x484e, 0x484f,
- 0x4850, 0x4851, 0x4852, 0x4853, 0x4854, 0x4855, 0x4856, 0x4857,
- 0x4858, 0x4859, 0x485a, 0x485b, 0x485c, 0x485d, 0x485e, 0x485f,
- 0x4860, 0x4861, 0x4862, 0x4863, 0x4864, 0x4865, 0x4866, 0x4867,
- 0x4868, 0x4869, 0x486a, 0x486b, 0x486c, 0x486d, 0x486e, 0x486f,
- 0x4870, 0x4871, 0x4872, 0x4873, 0x4874, 0x4875, 0x4876, 0x4877,
- 0x4878, 0x4879, 0x487a, 0x487b, 0x487c, 0x487d, 0x487e, 0x487f,
- 0x4880, 0x4881, 0x4882, 0x4883, 0x4884, 0x4885, 0x4886, 0x4887, /* 0x4880 */
- 0x4888, 0x4889, 0x488a, 0x488b, 0x488c, 0x488d, 0x488e, 0x488f,
- 0x4890, 0x4891, 0x4892, 0x4893, 0x4894, 0x4895, 0x4896, 0x4897,
- 0x4898, 0x4899, 0x489a, 0x489b, 0x489c, 0x489d, 0x489e, 0x489f,
- 0x48a0, 0x48a1, 0x48a2, 0x48a3, 0x48a4, 0x48a5, 0x48a6, 0x48a7,
- 0x48a8, 0x48a9, 0x48aa, 0x48ab, 0x48ac, 0x48ad, 0x48ae, 0x48af,
- 0x48b0, 0x48b1, 0x48b2, 0x48b3, 0x48b4, 0x48b5, 0x48b6, 0x48b7,
- 0x48b8, 0x48b9, 0x48ba, 0x48bb, 0x48bc, 0x48bd, 0x48be, 0x48bf,
- 0x48c0, 0x48c1, 0x48c2, 0x48c3, 0x48c4, 0x48c5, 0x48c6, 0x48c7, /* 0x48c0 */
- 0x48c8, 0x48c9, 0x48ca, 0x48cb, 0x48cc, 0x48cd, 0x48ce, 0x48cf,
- 0x48d0, 0x48d1, 0x48d2, 0x48d3, 0x48d4, 0x48d5, 0x48d6, 0x48d7,
- 0x48d8, 0x48d9, 0x48da, 0x48db, 0x48dc, 0x48dd, 0x48de, 0x48df,
- 0x48e0, 0x48e1, 0x48e2, 0x48e3, 0x48e4, 0x48e5, 0x48e6, 0x48e7,
- 0x48e8, 0x48e9, 0x48ea, 0x48eb, 0x48ec, 0x48ed, 0x48ee, 0x48ef,
- 0x48f0, 0x48f1, 0x48f2, 0x48f3, 0x48f4, 0x48f5, 0x48f6, 0x48f7,
- 0x48f8, 0x48f9, 0x48fa, 0x48fb, 0x48fc, 0x48fd, 0x48fe, 0x48ff,
- 0x4900, 0x4901, 0x4902, 0x4903, 0x4904, 0x4905, 0x4906, 0x4907, /* 0x4900 */
- 0x4908, 0x4909, 0x490a, 0x490b, 0x490c, 0x490d, 0x490e, 0x490f,
- 0x4910, 0x4911, 0x4912, 0x4913, 0x4914, 0x4915, 0x4916, 0x4917,
- 0x4918, 0x4919, 0x491a, 0x491b, 0x491c, 0x491d, 0x491e, 0x491f,
- 0x4920, 0x4921, 0x4922, 0x4923, 0x4924, 0x4925, 0x4926, 0x4927,
- 0x4928, 0x4929, 0x492a, 0x492b, 0x492c, 0x492d, 0x492e, 0x492f,
- 0x4930, 0x4931, 0x4932, 0x4933, 0x4934, 0x4935, 0x4936, 0x4937,
- 0x4938, 0x4939, 0x493a, 0x493b, 0x493c, 0x493d, 0x493e, 0x493f,
- 0x4940, 0x4941, 0x4942, 0x4943, 0x4944, 0x4945, 0x4946, 0x4947, /* 0x4940 */
- 0x4948, 0x4949, 0x494a, 0x494b, 0x494c, 0x494d, 0x494e, 0x494f,
- 0x4950, 0x4951, 0x4952, 0x4953, 0x4954, 0x4955, 0x4956, 0x4957,
- 0x4958, 0x4959, 0x495a, 0x495b, 0x495c, 0x495d, 0x495e, 0x495f,
- 0x4960, 0x4961, 0x4962, 0x4963, 0x4964, 0x4965, 0x4966, 0x4967,
- 0x4968, 0x4969, 0x496a, 0x496b, 0x496c, 0x496d, 0x496e, 0x496f,
- 0x4970, 0x4971, 0x4972, 0x4973, 0x4974, 0x4975, 0x4976, 0x4977,
- 0x4978, 0x4979, 0x497a, 0x497b, 0x497c, 0x497d, 0x497e, 0x497f,
- 0x4980, 0x4981, 0x4982, 0x4983, 0x4984, 0x4985, 0x4986, 0x4987, /* 0x4980 */
- 0x4988, 0x4989, 0x498a, 0x498b, 0x498c, 0x498d, 0x498e, 0x498f,
- 0x4990, 0x4991, 0x4992, 0x4993, 0x4994, 0x4995, 0x4996, 0x4997,
- 0x4998, 0x4999, 0x499a, 0x499b, 0x499c, 0x499d, 0x499e, 0x499f,
- 0x49a0, 0x49a1, 0x49a2, 0x49a3, 0x49a4, 0x49a5, 0x49a6, 0x49a7,
- 0x49a8, 0x49a9, 0x49aa, 0x49ab, 0x49ac, 0x49ad, 0x49ae, 0x49af,
- 0x49b0, 0x49b1, 0x49b2, 0x49b3, 0x49b4, 0x49b5, 0x49b6, 0x49b7,
- 0x49b8, 0x49b9, 0x49ba, 0x49bb, 0x49bc, 0x49bd, 0x49be, 0x49bf,
- 0x49c0, 0x49c1, 0x49c2, 0x49c3, 0x49c4, 0x49c5, 0x49c6, 0x49c7, /* 0x49c0 */
- 0x49c8, 0x49c9, 0x49ca, 0x49cb, 0x49cc, 0x49cd, 0x49ce, 0x49cf,
- 0x49d0, 0x49d1, 0x49d2, 0x49d3, 0x49d4, 0x49d5, 0x49d6, 0x49d7,
- 0x49d8, 0x49d9, 0x49da, 0x49db, 0x49dc, 0x49dd, 0x49de, 0x49df,
- 0x49e0, 0x49e1, 0x49e2, 0x49e3, 0x49e4, 0x49e5, 0x49e6, 0x49e7,
- 0x49e8, 0x49e9, 0x49ea, 0x49eb, 0x49ec, 0x49ed, 0x49ee, 0x49ef,
- 0x49f0, 0x49f1, 0x49f2, 0x49f3, 0x49f4, 0x49f5, 0x49f6, 0x49f7,
- 0x49f8, 0x49f9, 0x49fa, 0x49fb, 0x49fc, 0x49fd, 0x49fe, 0x49ff,
- 0x4a00, 0x4a01, 0x4a02, 0x4a03, 0x4a04, 0x4a05, 0x4a06, 0x4a07, /* 0x4a00 */
- 0x4a08, 0x4a09, 0x4a0a, 0x4a0b, 0x4a0c, 0x4a0d, 0x4a0e, 0x4a0f,
- 0x4a10, 0x4a11, 0x4a12, 0x4a13, 0x4a14, 0x4a15, 0x4a16, 0x4a17,
- 0x4a18, 0x4a19, 0x4a1a, 0x4a1b, 0x4a1c, 0x4a1d, 0x4a1e, 0x4a1f,
- 0x4a20, 0x4a21, 0x4a22, 0x4a23, 0x4a24, 0x4a25, 0x4a26, 0x4a27,
- 0x4a28, 0x4a29, 0x4a2a, 0x4a2b, 0x4a2c, 0x4a2d, 0x4a2e, 0x4a2f,
- 0x4a30, 0x4a31, 0x4a32, 0x4a33, 0x4a34, 0x4a35, 0x4a36, 0x4a37,
- 0x4a38, 0x4a39, 0x4a3a, 0x4a3b, 0x4a3c, 0x4a3d, 0x4a3e, 0x4a3f,
- 0x4a40, 0x4a41, 0x4a42, 0x4a43, 0x4a44, 0x4a45, 0x4a46, 0x4a47, /* 0x4a40 */
- 0x4a48, 0x4a49, 0x4a4a, 0x4a4b, 0x4a4c, 0x4a4d, 0x4a4e, 0x4a4f,
- 0x4a50, 0x4a51, 0x4a52, 0x4a53, 0x4a54, 0x4a55, 0x4a56, 0x4a57,
- 0x4a58, 0x4a59, 0x4a5a, 0x4a5b, 0x4a5c, 0x4a5d, 0x4a5e, 0x4a5f,
- 0x4a60, 0x4a61, 0x4a62, 0x4a63, 0x4a64, 0x4a65, 0x4a66, 0x4a67,
- 0x4a68, 0x4a69, 0x4a6a, 0x4a6b, 0x4a6c, 0x4a6d, 0x4a6e, 0x4a6f,
- 0x4a70, 0x4a71, 0x4a72, 0x4a73, 0x4a74, 0x4a75, 0x4a76, 0x4a77,
- 0x4a78, 0x4a79, 0x4a7a, 0x4a7b, 0x4a7c, 0x4a7d, 0x4a7e, 0x4a7f,
- 0x4a80, 0x4a81, 0x4a82, 0x4a83, 0x4a84, 0x4a85, 0x4a86, 0x4a87, /* 0x4a80 */
- 0x4a88, 0x4a89, 0x4a8a, 0x4a8b, 0x4a8c, 0x4a8d, 0x4a8e, 0x4a8f,
- 0x4a90, 0x4a91, 0x4a92, 0x4a93, 0x4a94, 0x4a95, 0x4a96, 0x4a97,
- 0x4a98, 0x4a99, 0x4a9a, 0x4a9b, 0x4a9c, 0x4a9d, 0x4a9e, 0x4a9f,
- 0x4aa0, 0x4aa1, 0x4aa2, 0x4aa3, 0x4aa4, 0x4aa5, 0x4aa6, 0x4aa7,
- 0x4aa8, 0x4aa9, 0x4aaa, 0x4aab, 0x4aac, 0x4aad, 0x4aae, 0x4aaf,
- 0x4ab0, 0x4ab1, 0x4ab2, 0x4ab3, 0x4ab4, 0x4ab5, 0x4ab6, 0x4ab7,
- 0x4ab8, 0x4ab9, 0x4aba, 0x4abb, 0x4abc, 0x4abd, 0x4abe, 0x4abf,
- 0x4ac0, 0x4ac1, 0x4ac2, 0x4ac3, 0x4ac4, 0x4ac5, 0x4ac6, 0x4ac7, /* 0x4ac0 */
- 0x4ac8, 0x4ac9, 0x4aca, 0x4acb, 0x4acc, 0x4acd, 0x4ace, 0x4acf,
- 0x4ad0, 0x4ad1, 0x4ad2, 0x4ad3, 0x4ad4, 0x4ad5, 0x4ad6, 0x4ad7,
- 0x4ad8, 0x4ad9, 0x4ada, 0x4adb, 0x4adc, 0x4add, 0x4ade, 0x4adf,
- 0x4ae0, 0x4ae1, 0x4ae2, 0x4ae3, 0x4ae4, 0x4ae5, 0x4ae6, 0x4ae7,
- 0x4ae8, 0x4ae9, 0x4aea, 0x4aeb, 0x4aec, 0x4aed, 0x4aee, 0x4aef,
- 0x4af0, 0x4af1, 0x4af2, 0x4af3, 0x4af4, 0x4af5, 0x4af6, 0x4af7,
- 0x4af8, 0x4af9, 0x4afa, 0x4afb, 0x4afc, 0x4afd, 0x4afe, 0x4aff,
- 0x4b00, 0x4b01, 0x4b02, 0x4b03, 0x4b04, 0x4b05, 0x4b06, 0x4b07, /* 0x4b00 */
- 0x4b08, 0x4b09, 0x4b0a, 0x4b0b, 0x4b0c, 0x4b0d, 0x4b0e, 0x4b0f,
- 0x4b10, 0x4b11, 0x4b12, 0x4b13, 0x4b14, 0x4b15, 0x4b16, 0x4b17,
- 0x4b18, 0x4b19, 0x4b1a, 0x4b1b, 0x4b1c, 0x4b1d, 0x4b1e, 0x4b1f,
- 0x4b20, 0x4b21, 0x4b22, 0x4b23, 0x4b24, 0x4b25, 0x4b26, 0x4b27,
- 0x4b28, 0x4b29, 0x4b2a, 0x4b2b, 0x4b2c, 0x4b2d, 0x4b2e, 0x4b2f,
- 0x4b30, 0x4b31, 0x4b32, 0x4b33, 0x4b34, 0x4b35, 0x4b36, 0x4b37,
- 0x4b38, 0x4b39, 0x4b3a, 0x4b3b, 0x4b3c, 0x4b3d, 0x4b3e, 0x4b3f,
- 0x4b40, 0x4b41, 0x4b42, 0x4b43, 0x4b44, 0x4b45, 0x4b46, 0x4b47, /* 0x4b40 */
- 0x4b48, 0x4b49, 0x4b4a, 0x4b4b, 0x4b4c, 0x4b4d, 0x4b4e, 0x4b4f,
- 0x4b50, 0x4b51, 0x4b52, 0x4b53, 0x4b54, 0x4b55, 0x4b56, 0x4b57,
- 0x4b58, 0x4b59, 0x4b5a, 0x4b5b, 0x4b5c, 0x4b5d, 0x4b5e, 0x4b5f,
- 0x4b60, 0x4b61, 0x4b62, 0x4b63, 0x4b64, 0x4b65, 0x4b66, 0x4b67,
- 0x4b68, 0x4b69, 0x4b6a, 0x4b6b, 0x4b6c, 0x4b6d, 0x4b6e, 0x4b6f,
- 0x4b70, 0x4b71, 0x4b72, 0x4b73, 0x4b74, 0x4b75, 0x4b76, 0x4b77,
- 0x4b78, 0x4b79, 0x4b7a, 0x4b7b, 0x4b7c, 0x4b7d, 0x4b7e, 0x4b7f,
- 0x4b80, 0x4b81, 0x4b82, 0x4b83, 0x4b84, 0x4b85, 0x4b86, 0x4b87, /* 0x4b80 */
- 0x4b88, 0x4b89, 0x4b8a, 0x4b8b, 0x4b8c, 0x4b8d, 0x4b8e, 0x4b8f,
- 0x4b90, 0x4b91, 0x4b92, 0x4b93, 0x4b94, 0x4b95, 0x4b96, 0x4b97,
- 0x4b98, 0x4b99, 0x4b9a, 0x4b9b, 0x4b9c, 0x4b9d, 0x4b9e, 0x4b9f,
- 0x4ba0, 0x4ba1, 0x4ba2, 0x4ba3, 0x4ba4, 0x4ba5, 0x4ba6, 0x4ba7,
- 0x4ba8, 0x4ba9, 0x4baa, 0x4bab, 0x4bac, 0x4bad, 0x4bae, 0x4baf,
- 0x4bb0, 0x4bb1, 0x4bb2, 0x4bb3, 0x4bb4, 0x4bb5, 0x4bb6, 0x4bb7,
- 0x4bb8, 0x4bb9, 0x4bba, 0x4bbb, 0x4bbc, 0x4bbd, 0x4bbe, 0x4bbf,
- 0x4bc0, 0x4bc1, 0x4bc2, 0x4bc3, 0x4bc4, 0x4bc5, 0x4bc6, 0x4bc7, /* 0x4bc0 */
- 0x4bc8, 0x4bc9, 0x4bca, 0x4bcb, 0x4bcc, 0x4bcd, 0x4bce, 0x4bcf,
- 0x4bd0, 0x4bd1, 0x4bd2, 0x4bd3, 0x4bd4, 0x4bd5, 0x4bd6, 0x4bd7,
- 0x4bd8, 0x4bd9, 0x4bda, 0x4bdb, 0x4bdc, 0x4bdd, 0x4bde, 0x4bdf,
- 0x4be0, 0x4be1, 0x4be2, 0x4be3, 0x4be4, 0x4be5, 0x4be6, 0x4be7,
- 0x4be8, 0x4be9, 0x4bea, 0x4beb, 0x4bec, 0x4bed, 0x4bee, 0x4bef,
- 0x4bf0, 0x4bf1, 0x4bf2, 0x4bf3, 0x4bf4, 0x4bf5, 0x4bf6, 0x4bf7,
- 0x4bf8, 0x4bf9, 0x4bfa, 0x4bfb, 0x4bfc, 0x4bfd, 0x4bfe, 0x4bff,
- 0x4c00, 0x4c01, 0x4c02, 0x4c03, 0x4c04, 0x4c05, 0x4c06, 0x4c07, /* 0x4c00 */
- 0x4c08, 0x4c09, 0x4c0a, 0x4c0b, 0x4c0c, 0x4c0d, 0x4c0e, 0x4c0f,
- 0x4c10, 0x4c11, 0x4c12, 0x4c13, 0x4c14, 0x4c15, 0x4c16, 0x4c17,
- 0x4c18, 0x4c19, 0x4c1a, 0x4c1b, 0x4c1c, 0x4c1d, 0x4c1e, 0x4c1f,
- 0x4c20, 0x4c21, 0x4c22, 0x4c23, 0x4c24, 0x4c25, 0x4c26, 0x4c27,
- 0x4c28, 0x4c29, 0x4c2a, 0x4c2b, 0x4c2c, 0x4c2d, 0x4c2e, 0x4c2f,
- 0x4c30, 0x4c31, 0x4c32, 0x4c33, 0x4c34, 0x4c35, 0x4c36, 0x4c37,
- 0x4c38, 0x4c39, 0x4c3a, 0x4c3b, 0x4c3c, 0x4c3d, 0x4c3e, 0x4c3f,
- 0x4c40, 0x4c41, 0x4c42, 0x4c43, 0x4c44, 0x4c45, 0x4c46, 0x4c47, /* 0x4c40 */
- 0x4c48, 0x4c49, 0x4c4a, 0x4c4b, 0x4c4c, 0x4c4d, 0x4c4e, 0x4c4f,
- 0x4c50, 0x4c51, 0x4c52, 0x4c53, 0x4c54, 0x4c55, 0x4c56, 0x4c57,
- 0x4c58, 0x4c59, 0x4c5a, 0x4c5b, 0x4c5c, 0x4c5d, 0x4c5e, 0x4c5f,
- 0x4c60, 0x4c61, 0x4c62, 0x4c63, 0x4c64, 0x4c65, 0x4c66, 0x4c67,
- 0x4c68, 0x4c69, 0x4c6a, 0x4c6b, 0x4c6c, 0x4c6d, 0x4c6e, 0x4c6f,
- 0x4c70, 0x4c71, 0x4c72, 0x4c73, 0x4c74, 0x4c75, 0x4c76, 0x4c77,
- 0x4c78, 0x4c79, 0x4c7a, 0x4c7b, 0x4c7c, 0x4c7d, 0x4c7e, 0x4c7f,
- 0x4c80, 0x4c81, 0x4c82, 0x4c83, 0x4c84, 0x4c85, 0x4c86, 0x4c87, /* 0x4c80 */
- 0x4c88, 0x4c89, 0x4c8a, 0x4c8b, 0x4c8c, 0x4c8d, 0x4c8e, 0x4c8f,
- 0x4c90, 0x4c91, 0x4c92, 0x4c93, 0x4c94, 0x4c95, 0x4c96, 0x4c97,
- 0x4c98, 0x4c99, 0x4c9a, 0x4c9b, 0x4c9c, 0x4c9d, 0x4c9e, 0x4c9f,
- 0x4ca0, 0x4ca1, 0x4ca2, 0x4ca3, 0x4ca4, 0x4ca5, 0x4ca6, 0x4ca7,
- 0x4ca8, 0x4ca9, 0x4caa, 0x4cab, 0x4cac, 0x4cad, 0x4cae, 0x4caf,
- 0x4cb0, 0x4cb1, 0x4cb2, 0x4cb3, 0x4cb4, 0x4cb5, 0x4cb6, 0x4cb7,
- 0x4cb8, 0x4cb9, 0x4cba, 0x4cbb, 0x4cbc, 0x4cbd, 0x4cbe, 0x4cbf,
- 0x4cc0, 0x4cc1, 0x4cc2, 0x4cc3, 0x4cc4, 0x4cc5, 0x4cc6, 0x4cc7, /* 0x4cc0 */
- 0x4cc8, 0x4cc9, 0x4cca, 0x4ccb, 0x4ccc, 0x4ccd, 0x4cce, 0x4ccf,
- 0x4cd0, 0x4cd1, 0x4cd2, 0x4cd3, 0x4cd4, 0x4cd5, 0x4cd6, 0x4cd7,
- 0x4cd8, 0x4cd9, 0x4cda, 0x4cdb, 0x4cdc, 0x4cdd, 0x4cde, 0x4cdf,
- 0x4ce0, 0x4ce1, 0x4ce2, 0x4ce3, 0x4ce4, 0x4ce5, 0x4ce6, 0x4ce7,
- 0x4ce8, 0x4ce9, 0x4cea, 0x4ceb, 0x4cec, 0x4ced, 0x4cee, 0x4cef,
- 0x4cf0, 0x4cf1, 0x4cf2, 0x4cf3, 0x4cf4, 0x4cf5, 0x4cf6, 0x4cf7,
- 0x4cf8, 0x4cf9, 0x4cfa, 0x4cfb, 0x4cfc, 0x4cfd, 0x4cfe, 0x4cff,
- 0x4d00, 0x4d01, 0x4d02, 0x4d03, 0x4d04, 0x4d05, 0x4d06, 0x4d07, /* 0x4d00 */
- 0x4d08, 0x4d09, 0x4d0a, 0x4d0b, 0x4d0c, 0x4d0d, 0x4d0e, 0x4d0f,
- 0x4d10, 0x4d11, 0x4d12, 0x4d13, 0x4d14, 0x4d15, 0x4d16, 0x4d17,
- 0x4d18, 0x4d19, 0x4d1a, 0x4d1b, 0x4d1c, 0x4d1d, 0x4d1e, 0x4d1f,
- 0x4d20, 0x4d21, 0x4d22, 0x4d23, 0x4d24, 0x4d25, 0x4d26, 0x4d27,
- 0x4d28, 0x4d29, 0x4d2a, 0x4d2b, 0x4d2c, 0x4d2d, 0x4d2e, 0x4d2f,
- 0x4d30, 0x4d31, 0x4d32, 0x4d33, 0x4d34, 0x4d35, 0x4d36, 0x4d37,
- 0x4d38, 0x4d39, 0x4d3a, 0x4d3b, 0x4d3c, 0x4d3d, 0x4d3e, 0x4d3f,
- 0x4d40, 0x4d41, 0x4d42, 0x4d43, 0x4d44, 0x4d45, 0x4d46, 0x4d47, /* 0x4d40 */
- 0x4d48, 0x4d49, 0x4d4a, 0x4d4b, 0x4d4c, 0x4d4d, 0x4d4e, 0x4d4f,
- 0x4d50, 0x4d51, 0x4d52, 0x4d53, 0x4d54, 0x4d55, 0x4d56, 0x4d57,
- 0x4d58, 0x4d59, 0x4d5a, 0x4d5b, 0x4d5c, 0x4d5d, 0x4d5e, 0x4d5f,
- 0x4d60, 0x4d61, 0x4d62, 0x4d63, 0x4d64, 0x4d65, 0x4d66, 0x4d67,
- 0x4d68, 0x4d69, 0x4d6a, 0x4d6b, 0x4d6c, 0x4d6d, 0x4d6e, 0x4d6f,
- 0x4d70, 0x4d71, 0x4d72, 0x4d73, 0x4d74, 0x4d75, 0x4d76, 0x4d77,
- 0x4d78, 0x4d79, 0x4d7a, 0x4d7b, 0x4d7c, 0x4d7d, 0x4d7e, 0x4d7f,
- 0x4d80, 0x4d81, 0x4d82, 0x4d83, 0x4d84, 0x4d85, 0x4d86, 0x4d87, /* 0x4d80 */
- 0x4d88, 0x4d89, 0x4d8a, 0x4d8b, 0x4d8c, 0x4d8d, 0x4d8e, 0x4d8f,
- 0x4d90, 0x4d91, 0x4d92, 0x4d93, 0x4d94, 0x4d95, 0x4d96, 0x4d97,
- 0x4d98, 0x4d99, 0x4d9a, 0x4d9b, 0x4d9c, 0x4d9d, 0x4d9e, 0x4d9f,
- 0x4da0, 0x4da1, 0x4da2, 0x4da3, 0x4da4, 0x4da5, 0x4da6, 0x4da7,
- 0x4da8, 0x4da9, 0x4daa, 0x4dab, 0x4dac, 0x4dad, 0x4dae, 0x4daf,
- 0x4db0, 0x4db1, 0x4db2, 0x4db3, 0x4db4, 0x4db5, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4dc0, 0x4dc1, 0x4dc2, 0x4dc3, 0x4dc4, 0x4dc5, 0x4dc6, 0x4dc7, /* 0x4dc0 */
- 0x4dc8, 0x4dc9, 0x4dca, 0x4dcb, 0x4dcc, 0x4dcd, 0x4dce, 0x4dcf,
- 0x4dd0, 0x4dd1, 0x4dd2, 0x4dd3, 0x4dd4, 0x4dd5, 0x4dd6, 0x4dd7,
- 0x4dd8, 0x4dd9, 0x4dda, 0x4ddb, 0x4ddc, 0x4ddd, 0x4dde, 0x4ddf,
- 0x4de0, 0x4de1, 0x4de2, 0x4de3, 0x4de4, 0x4de5, 0x4de6, 0x4de7,
- 0x4de8, 0x4de9, 0x4dea, 0x4deb, 0x4dec, 0x4ded, 0x4dee, 0x4def,
- 0x4df0, 0x4df1, 0x4df2, 0x4df3, 0x4df4, 0x4df5, 0x4df6, 0x4df7,
- 0x4df8, 0x4df9, 0x4dfa, 0x4dfb, 0x4dfc, 0x4dfd, 0x4dfe, 0x4dff,
- 0x4e00, 0x4e01, 0x4e02, 0x4e03, 0x4e04, 0x4e05, 0x4e06, 0x4e07, /* 0x4e00 */
- 0x4e08, 0x4e09, 0x4e0a, 0x4e0b, 0x4e0c, 0x4e0d, 0x4e0e, 0x4e0f,
- 0x4e10, 0x4e11, 0x4e12, 0x4e13, 0x4e14, 0x4e15, 0x4e16, 0x4e17,
- 0x4e18, 0x4e19, 0x4e1a, 0x4e1b, 0x4e1c, 0x4e1d, 0x4e1e, 0x4e1f,
- 0x4e20, 0x4e21, 0x4e22, 0x4e23, 0x4e24, 0x4e25, 0x4e26, 0x4e27,
- 0x4e28, 0x4e29, 0x4e2a, 0x4e2b, 0x4e2c, 0x4e2d, 0x4e2e, 0x4e2f,
- 0x4e30, 0x4e31, 0x4e32, 0x4e33, 0x4e34, 0x4e35, 0x4e36, 0x4e37,
- 0x4e38, 0x4e39, 0x4e3a, 0x4e3b, 0x4e3c, 0x4e3d, 0x4e3e, 0x4e3f,
- 0x4e40, 0x4e41, 0x4e42, 0x4e43, 0x4e44, 0x4e45, 0x4e46, 0x4e47, /* 0x4e40 */
- 0x4e48, 0x4e49, 0x4e4a, 0x4e4b, 0x4e4c, 0x4e4d, 0x4e4e, 0x4e4f,
- 0x4e50, 0x4e51, 0x4e52, 0x4e53, 0x4e54, 0x4e55, 0x4e56, 0x4e57,
- 0x4e58, 0x4e59, 0x4e5a, 0x4e5b, 0x4e5c, 0x4e5d, 0x4e5e, 0x4e5f,
- 0x4e60, 0x4e61, 0x4e62, 0x4e63, 0x4e64, 0x4e65, 0x4e66, 0x4e67,
- 0x4e68, 0x4e69, 0x4e6a, 0x4e6b, 0x4e6c, 0x4e6d, 0x4e6e, 0x4e6f,
- 0x4e70, 0x4e71, 0x4e72, 0x4e73, 0x4e74, 0x4e75, 0x4e76, 0x4e77,
- 0x4e78, 0x4e79, 0x4e7a, 0x4e7b, 0x4e7c, 0x4e7d, 0x4e7e, 0x4e7f,
- 0x4e80, 0x4e81, 0x4e82, 0x4e83, 0x4e84, 0x4e85, 0x4e86, 0x4e87, /* 0x4e80 */
- 0x4e88, 0x4e89, 0x4e8a, 0x4e8b, 0x4e8c, 0x4e8d, 0x4e8e, 0x4e8f,
- 0x4e90, 0x4e91, 0x4e92, 0x4e93, 0x4e94, 0x4e95, 0x4e96, 0x4e97,
- 0x4e98, 0x4e99, 0x4e9a, 0x4e9b, 0x4e9c, 0x4e9d, 0x4e9e, 0x4e9f,
- 0x4ea0, 0x4ea1, 0x4ea2, 0x4ea3, 0x4ea4, 0x4ea5, 0x4ea6, 0x4ea7,
- 0x4ea8, 0x4ea9, 0x4eaa, 0x4eab, 0x4eac, 0x4ead, 0x4eae, 0x4eaf,
- 0x4eb0, 0x4eb1, 0x4eb2, 0x4eb3, 0x4eb4, 0x4eb5, 0x4eb6, 0x4eb7,
- 0x4eb8, 0x4eb9, 0x4eba, 0x4ebb, 0x4ebc, 0x4ebd, 0x4ebe, 0x4ebf,
- 0x4ec0, 0x4ec1, 0x4ec2, 0x4ec3, 0x4ec4, 0x4ec5, 0x4ec6, 0x4ec7, /* 0x4ec0 */
- 0x4ec8, 0x4ec9, 0x4eca, 0x4ecb, 0x4ecc, 0x4ecd, 0x4ece, 0x4ecf,
- 0x4ed0, 0x4ed1, 0x4ed2, 0x4ed3, 0x4ed4, 0x4ed5, 0x4ed6, 0x4ed7,
- 0x4ed8, 0x4ed9, 0x4eda, 0x4edb, 0x4edc, 0x4edd, 0x4ede, 0x4edf,
- 0x4ee0, 0x4ee1, 0x4ee2, 0x4ee3, 0x4ee4, 0x4ee5, 0x4ee6, 0x4ee7,
- 0x4ee8, 0x4ee9, 0x4eea, 0x4eeb, 0x4eec, 0x4eed, 0x4eee, 0x4eef,
- 0x4ef0, 0x4ef1, 0x4ef2, 0x4ef3, 0x4ef4, 0x4ef5, 0x4ef6, 0x4ef7,
- 0x4ef8, 0x4ef9, 0x4efa, 0x4efb, 0x4efc, 0x4efd, 0x4efe, 0x4eff,
- 0x4f00, 0x4f01, 0x4f02, 0x4f03, 0x4f04, 0x4f05, 0x4f06, 0x4f07, /* 0x4f00 */
- 0x4f08, 0x4f09, 0x4f0a, 0x4f0b, 0x4f0c, 0x4f0d, 0x4f0e, 0x4f0f,
- 0x4f10, 0x4f11, 0x4f12, 0x4f13, 0x4f14, 0x4f15, 0x4f16, 0x4f17,
- 0x4f18, 0x4f19, 0x4f1a, 0x4f1b, 0x4f1c, 0x4f1d, 0x4f1e, 0x4f1f,
- 0x4f20, 0x4f21, 0x4f22, 0x4f23, 0x4f24, 0x4f25, 0x4f26, 0x4f27,
- 0x4f28, 0x4f29, 0x4f2a, 0x4f2b, 0x4f2c, 0x4f2d, 0x4f2e, 0x4f2f,
- 0x4f30, 0x4f31, 0x4f32, 0x4f33, 0x4f34, 0x4f35, 0x4f36, 0x4f37,
- 0x4f38, 0x4f39, 0x4f3a, 0x4f3b, 0x4f3c, 0x4f3d, 0x4f3e, 0x4f3f,
- 0x4f40, 0x4f41, 0x4f42, 0x4f43, 0x4f44, 0x4f45, 0x4f46, 0x4f47, /* 0x4f40 */
- 0x4f48, 0x4f49, 0x4f4a, 0x4f4b, 0x4f4c, 0x4f4d, 0x4f4e, 0x4f4f,
- 0x4f50, 0x4f51, 0x4f52, 0x4f53, 0x4f54, 0x4f55, 0x4f56, 0x4f57,
- 0x4f58, 0x4f59, 0x4f5a, 0x4f5b, 0x4f5c, 0x4f5d, 0x4f5e, 0x4f5f,
- 0x4f60, 0x4f61, 0x4f62, 0x4f63, 0x4f64, 0x4f65, 0x4f66, 0x4f67,
- 0x4f68, 0x4f69, 0x4f6a, 0x4f6b, 0x4f6c, 0x4f6d, 0x4f6e, 0x4f6f,
- 0x4f70, 0x4f71, 0x4f72, 0x4f73, 0x4f74, 0x4f75, 0x4f76, 0x4f77,
- 0x4f78, 0x4f79, 0x4f7a, 0x4f7b, 0x4f7c, 0x4f7d, 0x4f7e, 0x4f7f,
- 0x4f80, 0x4f81, 0x4f82, 0x4f83, 0x4f84, 0x4f85, 0x4f86, 0x4f87, /* 0x4f80 */
- 0x4f88, 0x4f89, 0x4f8a, 0x4f8b, 0x4f8c, 0x4f8d, 0x4f8e, 0x4f8f,
- 0x4f90, 0x4f91, 0x4f92, 0x4f93, 0x4f94, 0x4f95, 0x4f96, 0x4f97,
- 0x4f98, 0x4f99, 0x4f9a, 0x4f9b, 0x4f9c, 0x4f9d, 0x4f9e, 0x4f9f,
- 0x4fa0, 0x4fa1, 0x4fa2, 0x4fa3, 0x4fa4, 0x4fa5, 0x4fa6, 0x4fa7,
- 0x4fa8, 0x4fa9, 0x4faa, 0x4fab, 0x4fac, 0x4fad, 0x4fae, 0x4faf,
- 0x4fb0, 0x4fb1, 0x4fb2, 0x4fb3, 0x4fb4, 0x4fb5, 0x4fb6, 0x4fb7,
- 0x4fb8, 0x4fb9, 0x4fba, 0x4fbb, 0x4fbc, 0x4fbd, 0x4fbe, 0x4fbf,
- 0x4fc0, 0x4fc1, 0x4fc2, 0x4fc3, 0x4fc4, 0x4fc5, 0x4fc6, 0x4fc7, /* 0x4fc0 */
- 0x4fc8, 0x4fc9, 0x4fca, 0x4fcb, 0x4fcc, 0x4fcd, 0x4fce, 0x4fcf,
- 0x4fd0, 0x4fd1, 0x4fd2, 0x4fd3, 0x4fd4, 0x4fd5, 0x4fd6, 0x4fd7,
- 0x4fd8, 0x4fd9, 0x4fda, 0x4fdb, 0x4fdc, 0x4fdd, 0x4fde, 0x4fdf,
- 0x4fe0, 0x4fe1, 0x4fe2, 0x4fe3, 0x4fe4, 0x4fe5, 0x4fe6, 0x4fe7,
- 0x4fe8, 0x4fe9, 0x4fea, 0x4feb, 0x4fec, 0x4fed, 0x4fee, 0x4fef,
- 0x4ff0, 0x4ff1, 0x4ff2, 0x4ff3, 0x4ff4, 0x4ff5, 0x4ff6, 0x4ff7,
- 0x4ff8, 0x4ff9, 0x4ffa, 0x4ffb, 0x4ffc, 0x4ffd, 0x4ffe, 0x4fff,
- 0x5000, 0x5001, 0x5002, 0x5003, 0x5004, 0x5005, 0x5006, 0x5007, /* 0x5000 */
- 0x5008, 0x5009, 0x500a, 0x500b, 0x500c, 0x500d, 0x500e, 0x500f,
- 0x5010, 0x5011, 0x5012, 0x5013, 0x5014, 0x5015, 0x5016, 0x5017,
- 0x5018, 0x5019, 0x501a, 0x501b, 0x501c, 0x501d, 0x501e, 0x501f,
- 0x5020, 0x5021, 0x5022, 0x5023, 0x5024, 0x5025, 0x5026, 0x5027,
- 0x5028, 0x5029, 0x502a, 0x502b, 0x502c, 0x502d, 0x502e, 0x502f,
- 0x5030, 0x5031, 0x5032, 0x5033, 0x5034, 0x5035, 0x5036, 0x5037,
- 0x5038, 0x5039, 0x503a, 0x503b, 0x503c, 0x503d, 0x503e, 0x503f,
- 0x5040, 0x5041, 0x5042, 0x5043, 0x5044, 0x5045, 0x5046, 0x5047, /* 0x5040 */
- 0x5048, 0x5049, 0x504a, 0x504b, 0x504c, 0x504d, 0x504e, 0x504f,
- 0x5050, 0x5051, 0x5052, 0x5053, 0x5054, 0x5055, 0x5056, 0x5057,
- 0x5058, 0x5059, 0x505a, 0x505b, 0x505c, 0x505d, 0x505e, 0x505f,
- 0x5060, 0x5061, 0x5062, 0x5063, 0x5064, 0x5065, 0x5066, 0x5067,
- 0x5068, 0x5069, 0x506a, 0x506b, 0x506c, 0x506d, 0x506e, 0x506f,
- 0x5070, 0x5071, 0x5072, 0x5073, 0x5074, 0x5075, 0x5076, 0x5077,
- 0x5078, 0x5079, 0x507a, 0x507b, 0x507c, 0x507d, 0x507e, 0x507f,
- 0x5080, 0x5081, 0x5082, 0x5083, 0x5084, 0x5085, 0x5086, 0x5087, /* 0x5080 */
- 0x5088, 0x5089, 0x508a, 0x508b, 0x508c, 0x508d, 0x508e, 0x508f,
- 0x5090, 0x5091, 0x5092, 0x5093, 0x5094, 0x5095, 0x5096, 0x5097,
- 0x5098, 0x5099, 0x509a, 0x509b, 0x509c, 0x509d, 0x509e, 0x509f,
- 0x50a0, 0x50a1, 0x50a2, 0x50a3, 0x50a4, 0x50a5, 0x50a6, 0x50a7,
- 0x50a8, 0x50a9, 0x50aa, 0x50ab, 0x50ac, 0x50ad, 0x50ae, 0x50af,
- 0x50b0, 0x50b1, 0x50b2, 0x50b3, 0x50b4, 0x50b5, 0x50b6, 0x50b7,
- 0x50b8, 0x50b9, 0x50ba, 0x50bb, 0x50bc, 0x50bd, 0x50be, 0x50bf,
- 0x50c0, 0x50c1, 0x50c2, 0x50c3, 0x50c4, 0x50c5, 0x50c6, 0x50c7, /* 0x50c0 */
- 0x50c8, 0x50c9, 0x50ca, 0x50cb, 0x50cc, 0x50cd, 0x50ce, 0x50cf,
- 0x50d0, 0x50d1, 0x50d2, 0x50d3, 0x50d4, 0x50d5, 0x50d6, 0x50d7,
- 0x50d8, 0x50d9, 0x50da, 0x50db, 0x50dc, 0x50dd, 0x50de, 0x50df,
- 0x50e0, 0x50e1, 0x50e2, 0x50e3, 0x50e4, 0x50e5, 0x50e6, 0x50e7,
- 0x50e8, 0x50e9, 0x50ea, 0x50eb, 0x50ec, 0x50ed, 0x50ee, 0x50ef,
- 0x50f0, 0x50f1, 0x50f2, 0x50f3, 0x50f4, 0x50f5, 0x50f6, 0x50f7,
- 0x50f8, 0x50f9, 0x50fa, 0x50fb, 0x50fc, 0x50fd, 0x50fe, 0x50ff,
- 0x5100, 0x5101, 0x5102, 0x5103, 0x5104, 0x5105, 0x5106, 0x5107, /* 0x5100 */
- 0x5108, 0x5109, 0x510a, 0x510b, 0x510c, 0x510d, 0x510e, 0x510f,
- 0x5110, 0x5111, 0x5112, 0x5113, 0x5114, 0x5115, 0x5116, 0x5117,
- 0x5118, 0x5119, 0x511a, 0x511b, 0x511c, 0x511d, 0x511e, 0x511f,
- 0x5120, 0x5121, 0x5122, 0x5123, 0x5124, 0x5125, 0x5126, 0x5127,
- 0x5128, 0x5129, 0x512a, 0x512b, 0x512c, 0x512d, 0x512e, 0x512f,
- 0x5130, 0x5131, 0x5132, 0x5133, 0x5134, 0x5135, 0x5136, 0x5137,
- 0x5138, 0x5139, 0x513a, 0x513b, 0x513c, 0x513d, 0x513e, 0x513f,
- 0x5140, 0x5141, 0x5142, 0x5143, 0x5144, 0x5145, 0x5146, 0x5147, /* 0x5140 */
- 0x5148, 0x5149, 0x514a, 0x514b, 0x514c, 0x514d, 0x514e, 0x514f,
- 0x5150, 0x5151, 0x5152, 0x5153, 0x5154, 0x5155, 0x5156, 0x5157,
- 0x5158, 0x5159, 0x515a, 0x515b, 0x515c, 0x515d, 0x515e, 0x515f,
- 0x5160, 0x5161, 0x5162, 0x5163, 0x5164, 0x5165, 0x5166, 0x5167,
- 0x5168, 0x5169, 0x516a, 0x516b, 0x516c, 0x516d, 0x516e, 0x516f,
- 0x5170, 0x5171, 0x5172, 0x5173, 0x5174, 0x5175, 0x5176, 0x5177,
- 0x5178, 0x5179, 0x517a, 0x517b, 0x517c, 0x517d, 0x517e, 0x517f,
- 0x5180, 0x5181, 0x5182, 0x5183, 0x5184, 0x5185, 0x5186, 0x5187, /* 0x5180 */
- 0x5188, 0x5189, 0x518a, 0x518b, 0x518c, 0x518d, 0x518e, 0x518f,
- 0x5190, 0x5191, 0x5192, 0x5193, 0x5194, 0x5195, 0x5196, 0x5197,
- 0x5198, 0x5199, 0x519a, 0x519b, 0x519c, 0x519d, 0x519e, 0x519f,
- 0x51a0, 0x51a1, 0x51a2, 0x51a3, 0x51a4, 0x51a5, 0x51a6, 0x51a7,
- 0x51a8, 0x51a9, 0x51aa, 0x51ab, 0x51ac, 0x51ad, 0x51ae, 0x51af,
- 0x51b0, 0x51b1, 0x51b2, 0x51b3, 0x51b4, 0x51b5, 0x51b6, 0x51b7,
- 0x51b8, 0x51b9, 0x51ba, 0x51bb, 0x51bc, 0x51bd, 0x51be, 0x51bf,
- 0x51c0, 0x51c1, 0x51c2, 0x51c3, 0x51c4, 0x51c5, 0x51c6, 0x51c7, /* 0x51c0 */
- 0x51c8, 0x51c9, 0x51ca, 0x51cb, 0x51cc, 0x51cd, 0x51ce, 0x51cf,
- 0x51d0, 0x51d1, 0x51d2, 0x51d3, 0x51d4, 0x51d5, 0x51d6, 0x51d7,
- 0x51d8, 0x51d9, 0x51da, 0x51db, 0x51dc, 0x51dd, 0x51de, 0x51df,
- 0x51e0, 0x51e1, 0x51e2, 0x51e3, 0x51e4, 0x51e5, 0x51e6, 0x51e7,
- 0x51e8, 0x51e9, 0x51ea, 0x51eb, 0x51ec, 0x51ed, 0x51ee, 0x51ef,
- 0x51f0, 0x51f1, 0x51f2, 0x51f3, 0x51f4, 0x51f5, 0x51f6, 0x51f7,
- 0x51f8, 0x51f9, 0x51fa, 0x51fb, 0x51fc, 0x51fd, 0x51fe, 0x51ff,
- 0x5200, 0x5201, 0x5202, 0x5203, 0x5204, 0x5205, 0x5206, 0x5207, /* 0x5200 */
- 0x5208, 0x5209, 0x520a, 0x520b, 0x520c, 0x520d, 0x520e, 0x520f,
- 0x5210, 0x5211, 0x5212, 0x5213, 0x5214, 0x5215, 0x5216, 0x5217,
- 0x5218, 0x5219, 0x521a, 0x521b, 0x521c, 0x521d, 0x521e, 0x521f,
- 0x5220, 0x5221, 0x5222, 0x5223, 0x5224, 0x5225, 0x5226, 0x5227,
- 0x5228, 0x5229, 0x522a, 0x522b, 0x522c, 0x522d, 0x522e, 0x522f,
- 0x5230, 0x5231, 0x5232, 0x5233, 0x5234, 0x5235, 0x5236, 0x5237,
- 0x5238, 0x5239, 0x523a, 0x523b, 0x523c, 0x523d, 0x523e, 0x523f,
- 0x5240, 0x5241, 0x5242, 0x5243, 0x5244, 0x5245, 0x5246, 0x5247, /* 0x5240 */
- 0x5248, 0x5249, 0x524a, 0x524b, 0x524c, 0x524d, 0x524e, 0x524f,
- 0x5250, 0x5251, 0x5252, 0x5253, 0x5254, 0x5255, 0x5256, 0x5257,
- 0x5258, 0x5259, 0x525a, 0x525b, 0x525c, 0x525d, 0x525e, 0x525f,
- 0x5260, 0x5261, 0x5262, 0x5263, 0x5264, 0x5265, 0x5266, 0x5267,
- 0x5268, 0x5269, 0x526a, 0x526b, 0x526c, 0x526d, 0x526e, 0x526f,
- 0x5270, 0x5271, 0x5272, 0x5273, 0x5274, 0x5275, 0x5276, 0x5277,
- 0x5278, 0x5279, 0x527a, 0x527b, 0x527c, 0x527d, 0x527e, 0x527f,
- 0x5280, 0x5281, 0x5282, 0x5283, 0x5284, 0x5285, 0x5286, 0x5287, /* 0x5280 */
- 0x5288, 0x5289, 0x528a, 0x528b, 0x528c, 0x528d, 0x528e, 0x528f,
- 0x5290, 0x5291, 0x5292, 0x5293, 0x5294, 0x5295, 0x5296, 0x5297,
- 0x5298, 0x5299, 0x529a, 0x529b, 0x529c, 0x529d, 0x529e, 0x529f,
- 0x52a0, 0x52a1, 0x52a2, 0x52a3, 0x52a4, 0x52a5, 0x52a6, 0x52a7,
- 0x52a8, 0x52a9, 0x52aa, 0x52ab, 0x52ac, 0x52ad, 0x52ae, 0x52af,
- 0x52b0, 0x52b1, 0x52b2, 0x52b3, 0x52b4, 0x52b5, 0x52b6, 0x52b7,
- 0x52b8, 0x52b9, 0x52ba, 0x52bb, 0x52bc, 0x52bd, 0x52be, 0x52bf,
- 0x52c0, 0x52c1, 0x52c2, 0x52c3, 0x52c4, 0x52c5, 0x52c6, 0x52c7, /* 0x52c0 */
- 0x52c8, 0x52c9, 0x52ca, 0x52cb, 0x52cc, 0x52cd, 0x52ce, 0x52cf,
- 0x52d0, 0x52d1, 0x52d2, 0x52d3, 0x52d4, 0x52d5, 0x52d6, 0x52d7,
- 0x52d8, 0x52d9, 0x52da, 0x52db, 0x52dc, 0x52dd, 0x52de, 0x52df,
- 0x52e0, 0x52e1, 0x52e2, 0x52e3, 0x52e4, 0x52e5, 0x52e6, 0x52e7,
- 0x52e8, 0x52e9, 0x52ea, 0x52eb, 0x52ec, 0x52ed, 0x52ee, 0x52ef,
- 0x52f0, 0x52f1, 0x52f2, 0x52f3, 0x52f4, 0x52f5, 0x52f6, 0x52f7,
- 0x52f8, 0x52f9, 0x52fa, 0x52fb, 0x52fc, 0x52fd, 0x52fe, 0x52ff,
- 0x5300, 0x5301, 0x5302, 0x5303, 0x5304, 0x5305, 0x5306, 0x5307, /* 0x5300 */
- 0x5308, 0x5309, 0x530a, 0x530b, 0x530c, 0x530d, 0x530e, 0x530f,
- 0x5310, 0x5311, 0x5312, 0x5313, 0x5314, 0x5315, 0x5316, 0x5317,
- 0x5318, 0x5319, 0x531a, 0x531b, 0x531c, 0x531d, 0x531e, 0x531f,
- 0x5320, 0x5321, 0x5322, 0x5323, 0x5324, 0x5325, 0x5326, 0x5327,
- 0x5328, 0x5329, 0x532a, 0x532b, 0x532c, 0x532d, 0x532e, 0x532f,
- 0x5330, 0x5331, 0x5332, 0x5333, 0x5334, 0x5335, 0x5336, 0x5337,
- 0x5338, 0x5339, 0x533a, 0x533b, 0x533c, 0x533d, 0x533e, 0x533f,
- 0x5340, 0x5341, 0x5342, 0x5343, 0x5344, 0x5345, 0x5346, 0x5347, /* 0x5340 */
- 0x5348, 0x5349, 0x534a, 0x534b, 0x534c, 0x534d, 0x534e, 0x534f,
- 0x5350, 0x5351, 0x5352, 0x5353, 0x5354, 0x5355, 0x5356, 0x5357,
- 0x5358, 0x5359, 0x535a, 0x535b, 0x535c, 0x535d, 0x535e, 0x535f,
- 0x5360, 0x5361, 0x5362, 0x5363, 0x5364, 0x5365, 0x5366, 0x5367,
- 0x5368, 0x5369, 0x536a, 0x536b, 0x536c, 0x536d, 0x536e, 0x536f,
- 0x5370, 0x5371, 0x5372, 0x5373, 0x5374, 0x5375, 0x5376, 0x5377,
- 0x5378, 0x5379, 0x537a, 0x537b, 0x537c, 0x537d, 0x537e, 0x537f,
- 0x5380, 0x5381, 0x5382, 0x5383, 0x5384, 0x5385, 0x5386, 0x5387, /* 0x5380 */
- 0x5388, 0x5389, 0x538a, 0x538b, 0x538c, 0x538d, 0x538e, 0x538f,
- 0x5390, 0x5391, 0x5392, 0x5393, 0x5394, 0x5395, 0x5396, 0x5397,
- 0x5398, 0x5399, 0x539a, 0x539b, 0x539c, 0x539d, 0x539e, 0x539f,
- 0x53a0, 0x53a1, 0x53a2, 0x53a3, 0x53a4, 0x53a5, 0x53a6, 0x53a7,
- 0x53a8, 0x53a9, 0x53aa, 0x53ab, 0x53ac, 0x53ad, 0x53ae, 0x53af,
- 0x53b0, 0x53b1, 0x53b2, 0x53b3, 0x53b4, 0x53b5, 0x53b6, 0x53b7,
- 0x53b8, 0x53b9, 0x53ba, 0x53bb, 0x53bc, 0x53bd, 0x53be, 0x53bf,
- 0x53c0, 0x53c1, 0x53c2, 0x53c3, 0x53c4, 0x53c5, 0x53c6, 0x53c7, /* 0x53c0 */
- 0x53c8, 0x53c9, 0x53ca, 0x53cb, 0x53cc, 0x53cd, 0x53ce, 0x53cf,
- 0x53d0, 0x53d1, 0x53d2, 0x53d3, 0x53d4, 0x53d5, 0x53d6, 0x53d7,
- 0x53d8, 0x53d9, 0x53da, 0x53db, 0x53dc, 0x53dd, 0x53de, 0x53df,
- 0x53e0, 0x53e1, 0x53e2, 0x53e3, 0x53e4, 0x53e5, 0x53e6, 0x53e7,
- 0x53e8, 0x53e9, 0x53ea, 0x53eb, 0x53ec, 0x53ed, 0x53ee, 0x53ef,
- 0x53f0, 0x53f1, 0x53f2, 0x53f3, 0x53f4, 0x53f5, 0x53f6, 0x53f7,
- 0x53f8, 0x53f9, 0x53fa, 0x53fb, 0x53fc, 0x53fd, 0x53fe, 0x53ff,
- 0x5400, 0x5401, 0x5402, 0x5403, 0x5404, 0x5405, 0x5406, 0x5407, /* 0x5400 */
- 0x5408, 0x5409, 0x540a, 0x540b, 0x540c, 0x540d, 0x540e, 0x540f,
- 0x5410, 0x5411, 0x5412, 0x5413, 0x5414, 0x5415, 0x5416, 0x5417,
- 0x5418, 0x5419, 0x541a, 0x541b, 0x541c, 0x541d, 0x541e, 0x541f,
- 0x5420, 0x5421, 0x5422, 0x5423, 0x5424, 0x5425, 0x5426, 0x5427,
- 0x5428, 0x5429, 0x542a, 0x542b, 0x542c, 0x542d, 0x542e, 0x542f,
- 0x5430, 0x5431, 0x5432, 0x5433, 0x5434, 0x5435, 0x5436, 0x5437,
- 0x5438, 0x5439, 0x543a, 0x543b, 0x543c, 0x543d, 0x543e, 0x543f,
- 0x5440, 0x5441, 0x5442, 0x5443, 0x5444, 0x5445, 0x5446, 0x5447, /* 0x5440 */
- 0x5448, 0x5449, 0x544a, 0x544b, 0x544c, 0x544d, 0x544e, 0x544f,
- 0x5450, 0x5451, 0x5452, 0x5453, 0x5454, 0x5455, 0x5456, 0x5457,
- 0x5458, 0x5459, 0x545a, 0x545b, 0x545c, 0x545d, 0x545e, 0x545f,
- 0x5460, 0x5461, 0x5462, 0x5463, 0x5464, 0x5465, 0x5466, 0x5467,
- 0x5468, 0x5469, 0x546a, 0x546b, 0x546c, 0x546d, 0x546e, 0x546f,
- 0x5470, 0x5471, 0x5472, 0x5473, 0x5474, 0x5475, 0x5476, 0x5477,
- 0x5478, 0x5479, 0x547a, 0x547b, 0x547c, 0x547d, 0x547e, 0x547f,
- 0x5480, 0x5481, 0x5482, 0x5483, 0x5484, 0x5485, 0x5486, 0x5487, /* 0x5480 */
- 0x5488, 0x5489, 0x548a, 0x548b, 0x548c, 0x548d, 0x548e, 0x548f,
- 0x5490, 0x5491, 0x5492, 0x5493, 0x5494, 0x5495, 0x5496, 0x5497,
- 0x5498, 0x5499, 0x549a, 0x549b, 0x549c, 0x549d, 0x549e, 0x549f,
- 0x54a0, 0x54a1, 0x54a2, 0x54a3, 0x54a4, 0x54a5, 0x54a6, 0x54a7,
- 0x54a8, 0x54a9, 0x54aa, 0x54ab, 0x54ac, 0x54ad, 0x54ae, 0x54af,
- 0x54b0, 0x54b1, 0x54b2, 0x54b3, 0x54b4, 0x54b5, 0x54b6, 0x54b7,
- 0x54b8, 0x54b9, 0x54ba, 0x54bb, 0x54bc, 0x54bd, 0x54be, 0x54bf,
- 0x54c0, 0x54c1, 0x54c2, 0x54c3, 0x54c4, 0x54c5, 0x54c6, 0x54c7, /* 0x54c0 */
- 0x54c8, 0x54c9, 0x54ca, 0x54cb, 0x54cc, 0x54cd, 0x54ce, 0x54cf,
- 0x54d0, 0x54d1, 0x54d2, 0x54d3, 0x54d4, 0x54d5, 0x54d6, 0x54d7,
- 0x54d8, 0x54d9, 0x54da, 0x54db, 0x54dc, 0x54dd, 0x54de, 0x54df,
- 0x54e0, 0x54e1, 0x54e2, 0x54e3, 0x54e4, 0x54e5, 0x54e6, 0x54e7,
- 0x54e8, 0x54e9, 0x54ea, 0x54eb, 0x54ec, 0x54ed, 0x54ee, 0x54ef,
- 0x54f0, 0x54f1, 0x54f2, 0x54f3, 0x54f4, 0x54f5, 0x54f6, 0x54f7,
- 0x54f8, 0x54f9, 0x54fa, 0x54fb, 0x54fc, 0x54fd, 0x54fe, 0x54ff,
- 0x5500, 0x5501, 0x5502, 0x5503, 0x5504, 0x5505, 0x5506, 0x5507, /* 0x5500 */
- 0x5508, 0x5509, 0x550a, 0x550b, 0x550c, 0x550d, 0x550e, 0x550f,
- 0x5510, 0x5511, 0x5512, 0x5513, 0x5514, 0x5515, 0x5516, 0x5517,
- 0x5518, 0x5519, 0x551a, 0x551b, 0x551c, 0x551d, 0x551e, 0x551f,
- 0x5520, 0x5521, 0x5522, 0x5523, 0x5524, 0x5525, 0x5526, 0x5527,
- 0x5528, 0x5529, 0x552a, 0x552b, 0x552c, 0x552d, 0x552e, 0x552f,
- 0x5530, 0x5531, 0x5532, 0x5533, 0x5534, 0x5535, 0x5536, 0x5537,
- 0x5538, 0x5539, 0x553a, 0x553b, 0x553c, 0x553d, 0x553e, 0x553f,
- 0x5540, 0x5541, 0x5542, 0x5543, 0x5544, 0x5545, 0x5546, 0x5547, /* 0x5540 */
- 0x5548, 0x5549, 0x554a, 0x554b, 0x554c, 0x554d, 0x554e, 0x554f,
- 0x5550, 0x5551, 0x5552, 0x5553, 0x5554, 0x5555, 0x5556, 0x5557,
- 0x5558, 0x5559, 0x555a, 0x555b, 0x555c, 0x555d, 0x555e, 0x555f,
- 0x5560, 0x5561, 0x5562, 0x5563, 0x5564, 0x5565, 0x5566, 0x5567,
- 0x5568, 0x5569, 0x556a, 0x556b, 0x556c, 0x556d, 0x556e, 0x556f,
- 0x5570, 0x5571, 0x5572, 0x5573, 0x5574, 0x5575, 0x5576, 0x5577,
- 0x5578, 0x5579, 0x557a, 0x557b, 0x557c, 0x557d, 0x557e, 0x557f,
- 0x5580, 0x5581, 0x5582, 0x5583, 0x5584, 0x5585, 0x5586, 0x5587, /* 0x5580 */
- 0x5588, 0x5589, 0x558a, 0x558b, 0x558c, 0x558d, 0x558e, 0x558f,
- 0x5590, 0x5591, 0x5592, 0x5593, 0x5594, 0x5595, 0x5596, 0x5597,
- 0x5598, 0x5599, 0x559a, 0x559b, 0x559c, 0x559d, 0x559e, 0x559f,
- 0x55a0, 0x55a1, 0x55a2, 0x55a3, 0x55a4, 0x55a5, 0x55a6, 0x55a7,
- 0x55a8, 0x55a9, 0x55aa, 0x55ab, 0x55ac, 0x55ad, 0x55ae, 0x55af,
- 0x55b0, 0x55b1, 0x55b2, 0x55b3, 0x55b4, 0x55b5, 0x55b6, 0x55b7,
- 0x55b8, 0x55b9, 0x55ba, 0x55bb, 0x55bc, 0x55bd, 0x55be, 0x55bf,
- 0x55c0, 0x55c1, 0x55c2, 0x55c3, 0x55c4, 0x55c5, 0x55c6, 0x55c7, /* 0x55c0 */
- 0x55c8, 0x55c9, 0x55ca, 0x55cb, 0x55cc, 0x55cd, 0x55ce, 0x55cf,
- 0x55d0, 0x55d1, 0x55d2, 0x55d3, 0x55d4, 0x55d5, 0x55d6, 0x55d7,
- 0x55d8, 0x55d9, 0x55da, 0x55db, 0x55dc, 0x55dd, 0x55de, 0x55df,
- 0x55e0, 0x55e1, 0x55e2, 0x55e3, 0x55e4, 0x55e5, 0x55e6, 0x55e7,
- 0x55e8, 0x55e9, 0x55ea, 0x55eb, 0x55ec, 0x55ed, 0x55ee, 0x55ef,
- 0x55f0, 0x55f1, 0x55f2, 0x55f3, 0x55f4, 0x55f5, 0x55f6, 0x55f7,
- 0x55f8, 0x55f9, 0x55fa, 0x55fb, 0x55fc, 0x55fd, 0x55fe, 0x55ff,
- 0x5600, 0x5601, 0x5602, 0x5603, 0x5604, 0x5605, 0x5606, 0x5607, /* 0x5600 */
- 0x5608, 0x5609, 0x560a, 0x560b, 0x560c, 0x560d, 0x560e, 0x560f,
- 0x5610, 0x5611, 0x5612, 0x5613, 0x5614, 0x5615, 0x5616, 0x5617,
- 0x5618, 0x5619, 0x561a, 0x561b, 0x561c, 0x561d, 0x561e, 0x561f,
- 0x5620, 0x5621, 0x5622, 0x5623, 0x5624, 0x5625, 0x5626, 0x5627,
- 0x5628, 0x5629, 0x562a, 0x562b, 0x562c, 0x562d, 0x562e, 0x562f,
- 0x5630, 0x5631, 0x5632, 0x5633, 0x5634, 0x5635, 0x5636, 0x5637,
- 0x5638, 0x5639, 0x563a, 0x563b, 0x563c, 0x563d, 0x563e, 0x563f,
- 0x5640, 0x5641, 0x5642, 0x5643, 0x5644, 0x5645, 0x5646, 0x5647, /* 0x5640 */
- 0x5648, 0x5649, 0x564a, 0x564b, 0x564c, 0x564d, 0x564e, 0x564f,
- 0x5650, 0x5651, 0x5652, 0x5653, 0x5654, 0x5655, 0x5656, 0x5657,
- 0x5658, 0x5659, 0x565a, 0x565b, 0x565c, 0x565d, 0x565e, 0x565f,
- 0x5660, 0x5661, 0x5662, 0x5663, 0x5664, 0x5665, 0x5666, 0x5667,
- 0x5668, 0x5669, 0x566a, 0x566b, 0x566c, 0x566d, 0x566e, 0x566f,
- 0x5670, 0x5671, 0x5672, 0x5673, 0x5674, 0x5675, 0x5676, 0x5677,
- 0x5678, 0x5679, 0x567a, 0x567b, 0x567c, 0x567d, 0x567e, 0x567f,
- 0x5680, 0x5681, 0x5682, 0x5683, 0x5684, 0x5685, 0x5686, 0x5687, /* 0x5680 */
- 0x5688, 0x5689, 0x568a, 0x568b, 0x568c, 0x568d, 0x568e, 0x568f,
- 0x5690, 0x5691, 0x5692, 0x5693, 0x5694, 0x5695, 0x5696, 0x5697,
- 0x5698, 0x5699, 0x569a, 0x569b, 0x569c, 0x569d, 0x569e, 0x569f,
- 0x56a0, 0x56a1, 0x56a2, 0x56a3, 0x56a4, 0x56a5, 0x56a6, 0x56a7,
- 0x56a8, 0x56a9, 0x56aa, 0x56ab, 0x56ac, 0x56ad, 0x56ae, 0x56af,
- 0x56b0, 0x56b1, 0x56b2, 0x56b3, 0x56b4, 0x56b5, 0x56b6, 0x56b7,
- 0x56b8, 0x56b9, 0x56ba, 0x56bb, 0x56bc, 0x56bd, 0x56be, 0x56bf,
- 0x56c0, 0x56c1, 0x56c2, 0x56c3, 0x56c4, 0x56c5, 0x56c6, 0x56c7, /* 0x56c0 */
- 0x56c8, 0x56c9, 0x56ca, 0x56cb, 0x56cc, 0x56cd, 0x56ce, 0x56cf,
- 0x56d0, 0x56d1, 0x56d2, 0x56d3, 0x56d4, 0x56d5, 0x56d6, 0x56d7,
- 0x56d8, 0x56d9, 0x56da, 0x56db, 0x56dc, 0x56dd, 0x56de, 0x56df,
- 0x56e0, 0x56e1, 0x56e2, 0x56e3, 0x56e4, 0x56e5, 0x56e6, 0x56e7,
- 0x56e8, 0x56e9, 0x56ea, 0x56eb, 0x56ec, 0x56ed, 0x56ee, 0x56ef,
- 0x56f0, 0x56f1, 0x56f2, 0x56f3, 0x56f4, 0x56f5, 0x56f6, 0x56f7,
- 0x56f8, 0x56f9, 0x56fa, 0x56fb, 0x56fc, 0x56fd, 0x56fe, 0x56ff,
- 0x5700, 0x5701, 0x5702, 0x5703, 0x5704, 0x5705, 0x5706, 0x5707, /* 0x5700 */
- 0x5708, 0x5709, 0x570a, 0x570b, 0x570c, 0x570d, 0x570e, 0x570f,
- 0x5710, 0x5711, 0x5712, 0x5713, 0x5714, 0x5715, 0x5716, 0x5717,
- 0x5718, 0x5719, 0x571a, 0x571b, 0x571c, 0x571d, 0x571e, 0x571f,
- 0x5720, 0x5721, 0x5722, 0x5723, 0x5724, 0x5725, 0x5726, 0x5727,
- 0x5728, 0x5729, 0x572a, 0x572b, 0x572c, 0x572d, 0x572e, 0x572f,
- 0x5730, 0x5731, 0x5732, 0x5733, 0x5734, 0x5735, 0x5736, 0x5737,
- 0x5738, 0x5739, 0x573a, 0x573b, 0x573c, 0x573d, 0x573e, 0x573f,
- 0x5740, 0x5741, 0x5742, 0x5743, 0x5744, 0x5745, 0x5746, 0x5747, /* 0x5740 */
- 0x5748, 0x5749, 0x574a, 0x574b, 0x574c, 0x574d, 0x574e, 0x574f,
- 0x5750, 0x5751, 0x5752, 0x5753, 0x5754, 0x5755, 0x5756, 0x5757,
- 0x5758, 0x5759, 0x575a, 0x575b, 0x575c, 0x575d, 0x575e, 0x575f,
- 0x5760, 0x5761, 0x5762, 0x5763, 0x5764, 0x5765, 0x5766, 0x5767,
- 0x5768, 0x5769, 0x576a, 0x576b, 0x576c, 0x576d, 0x576e, 0x576f,
- 0x5770, 0x5771, 0x5772, 0x5773, 0x5774, 0x5775, 0x5776, 0x5777,
- 0x5778, 0x5779, 0x577a, 0x577b, 0x577c, 0x577d, 0x577e, 0x577f,
- 0x5780, 0x5781, 0x5782, 0x5783, 0x5784, 0x5785, 0x5786, 0x5787, /* 0x5780 */
- 0x5788, 0x5789, 0x578a, 0x578b, 0x578c, 0x578d, 0x578e, 0x578f,
- 0x5790, 0x5791, 0x5792, 0x5793, 0x5794, 0x5795, 0x5796, 0x5797,
- 0x5798, 0x5799, 0x579a, 0x579b, 0x579c, 0x579d, 0x579e, 0x579f,
- 0x57a0, 0x57a1, 0x57a2, 0x57a3, 0x57a4, 0x57a5, 0x57a6, 0x57a7,
- 0x57a8, 0x57a9, 0x57aa, 0x57ab, 0x57ac, 0x57ad, 0x57ae, 0x57af,
- 0x57b0, 0x57b1, 0x57b2, 0x57b3, 0x57b4, 0x57b5, 0x57b6, 0x57b7,
- 0x57b8, 0x57b9, 0x57ba, 0x57bb, 0x57bc, 0x57bd, 0x57be, 0x57bf,
- 0x57c0, 0x57c1, 0x57c2, 0x57c3, 0x57c4, 0x57c5, 0x57c6, 0x57c7, /* 0x57c0 */
- 0x57c8, 0x57c9, 0x57ca, 0x57cb, 0x57cc, 0x57cd, 0x57ce, 0x57cf,
- 0x57d0, 0x57d1, 0x57d2, 0x57d3, 0x57d4, 0x57d5, 0x57d6, 0x57d7,
- 0x57d8, 0x57d9, 0x57da, 0x57db, 0x57dc, 0x57dd, 0x57de, 0x57df,
- 0x57e0, 0x57e1, 0x57e2, 0x57e3, 0x57e4, 0x57e5, 0x57e6, 0x57e7,
- 0x57e8, 0x57e9, 0x57ea, 0x57eb, 0x57ec, 0x57ed, 0x57ee, 0x57ef,
- 0x57f0, 0x57f1, 0x57f2, 0x57f3, 0x57f4, 0x57f5, 0x57f6, 0x57f7,
- 0x57f8, 0x57f9, 0x57fa, 0x57fb, 0x57fc, 0x57fd, 0x57fe, 0x57ff,
- 0x5800, 0x5801, 0x5802, 0x5803, 0x5804, 0x5805, 0x5806, 0x5807, /* 0x5800 */
- 0x5808, 0x5809, 0x580a, 0x580b, 0x580c, 0x580d, 0x580e, 0x580f,
- 0x5810, 0x5811, 0x5812, 0x5813, 0x5814, 0x5815, 0x5816, 0x5817,
- 0x5818, 0x5819, 0x581a, 0x581b, 0x581c, 0x581d, 0x581e, 0x581f,
- 0x5820, 0x5821, 0x5822, 0x5823, 0x5824, 0x5825, 0x5826, 0x5827,
- 0x5828, 0x5829, 0x582a, 0x582b, 0x582c, 0x582d, 0x582e, 0x582f,
- 0x5830, 0x5831, 0x5832, 0x5833, 0x5834, 0x5835, 0x5836, 0x5837,
- 0x5838, 0x5839, 0x583a, 0x583b, 0x583c, 0x583d, 0x583e, 0x583f,
- 0x5840, 0x5841, 0x5842, 0x5843, 0x5844, 0x5845, 0x5846, 0x5847, /* 0x5840 */
- 0x5848, 0x5849, 0x584a, 0x584b, 0x584c, 0x584d, 0x584e, 0x584f,
- 0x5850, 0x5851, 0x5852, 0x5853, 0x5854, 0x5855, 0x5856, 0x5857,
- 0x5858, 0x5859, 0x585a, 0x585b, 0x585c, 0x585d, 0x585e, 0x585f,
- 0x5860, 0x5861, 0x5862, 0x5863, 0x5864, 0x5865, 0x5866, 0x5867,
- 0x5868, 0x5869, 0x586a, 0x586b, 0x586c, 0x586d, 0x586e, 0x586f,
- 0x5870, 0x5871, 0x5872, 0x5873, 0x5874, 0x5875, 0x5876, 0x5877,
- 0x5878, 0x5879, 0x587a, 0x587b, 0x587c, 0x587d, 0x587e, 0x587f,
- 0x5880, 0x5881, 0x5882, 0x5883, 0x5884, 0x5885, 0x5886, 0x5887, /* 0x5880 */
- 0x5888, 0x5889, 0x588a, 0x588b, 0x588c, 0x588d, 0x588e, 0x588f,
- 0x5890, 0x5891, 0x5892, 0x5893, 0x5894, 0x5895, 0x5896, 0x5897,
- 0x5898, 0x5899, 0x589a, 0x589b, 0x589c, 0x589d, 0x589e, 0x589f,
- 0x58a0, 0x58a1, 0x58a2, 0x58a3, 0x58a4, 0x58a5, 0x58a6, 0x58a7,
- 0x58a8, 0x58a9, 0x58aa, 0x58ab, 0x58ac, 0x58ad, 0x58ae, 0x58af,
- 0x58b0, 0x58b1, 0x58b2, 0x58b3, 0x58b4, 0x58b5, 0x58b6, 0x58b7,
- 0x58b8, 0x58b9, 0x58ba, 0x58bb, 0x58bc, 0x58bd, 0x58be, 0x58bf,
- 0x58c0, 0x58c1, 0x58c2, 0x58c3, 0x58c4, 0x58c5, 0x58c6, 0x58c7, /* 0x58c0 */
- 0x58c8, 0x58c9, 0x58ca, 0x58cb, 0x58cc, 0x58cd, 0x58ce, 0x58cf,
- 0x58d0, 0x58d1, 0x58d2, 0x58d3, 0x58d4, 0x58d5, 0x58d6, 0x58d7,
- 0x58d8, 0x58d9, 0x58da, 0x58db, 0x58dc, 0x58dd, 0x58de, 0x58df,
- 0x58e0, 0x58e1, 0x58e2, 0x58e3, 0x58e4, 0x58e5, 0x58e6, 0x58e7,
- 0x58e8, 0x58e9, 0x58ea, 0x58eb, 0x58ec, 0x58ed, 0x58ee, 0x58ef,
- 0x58f0, 0x58f1, 0x58f2, 0x58f3, 0x58f4, 0x58f5, 0x58f6, 0x58f7,
- 0x58f8, 0x58f9, 0x58fa, 0x58fb, 0x58fc, 0x58fd, 0x58fe, 0x58ff,
- 0x5900, 0x5901, 0x5902, 0x5903, 0x5904, 0x5905, 0x5906, 0x5907, /* 0x5900 */
- 0x5908, 0x5909, 0x590a, 0x590b, 0x590c, 0x590d, 0x590e, 0x590f,
- 0x5910, 0x5911, 0x5912, 0x5913, 0x5914, 0x5915, 0x5916, 0x5917,
- 0x5918, 0x5919, 0x591a, 0x591b, 0x591c, 0x591d, 0x591e, 0x591f,
- 0x5920, 0x5921, 0x5922, 0x5923, 0x5924, 0x5925, 0x5926, 0x5927,
- 0x5928, 0x5929, 0x592a, 0x592b, 0x592c, 0x592d, 0x592e, 0x592f,
- 0x5930, 0x5931, 0x5932, 0x5933, 0x5934, 0x5935, 0x5936, 0x5937,
- 0x5938, 0x5939, 0x593a, 0x593b, 0x593c, 0x593d, 0x593e, 0x593f,
- 0x5940, 0x5941, 0x5942, 0x5943, 0x5944, 0x5945, 0x5946, 0x5947, /* 0x5940 */
- 0x5948, 0x5949, 0x594a, 0x594b, 0x594c, 0x594d, 0x594e, 0x594f,
- 0x5950, 0x5951, 0x5952, 0x5953, 0x5954, 0x5955, 0x5956, 0x5957,
- 0x5958, 0x5959, 0x595a, 0x595b, 0x595c, 0x595d, 0x595e, 0x595f,
- 0x5960, 0x5961, 0x5962, 0x5963, 0x5964, 0x5965, 0x5966, 0x5967,
- 0x5968, 0x5969, 0x596a, 0x596b, 0x596c, 0x596d, 0x596e, 0x596f,
- 0x5970, 0x5971, 0x5972, 0x5973, 0x5974, 0x5975, 0x5976, 0x5977,
- 0x5978, 0x5979, 0x597a, 0x597b, 0x597c, 0x597d, 0x597e, 0x597f,
- 0x5980, 0x5981, 0x5982, 0x5983, 0x5984, 0x5985, 0x5986, 0x5987, /* 0x5980 */
- 0x5988, 0x5989, 0x598a, 0x598b, 0x598c, 0x598d, 0x598e, 0x598f,
- 0x5990, 0x5991, 0x5992, 0x5993, 0x5994, 0x5995, 0x5996, 0x5997,
- 0x5998, 0x5999, 0x599a, 0x599b, 0x599c, 0x599d, 0x599e, 0x599f,
- 0x59a0, 0x59a1, 0x59a2, 0x59a3, 0x59a4, 0x59a5, 0x59a6, 0x59a7,
- 0x59a8, 0x59a9, 0x59aa, 0x59ab, 0x59ac, 0x59ad, 0x59ae, 0x59af,
- 0x59b0, 0x59b1, 0x59b2, 0x59b3, 0x59b4, 0x59b5, 0x59b6, 0x59b7,
- 0x59b8, 0x59b9, 0x59ba, 0x59bb, 0x59bc, 0x59bd, 0x59be, 0x59bf,
- 0x59c0, 0x59c1, 0x59c2, 0x59c3, 0x59c4, 0x59c5, 0x59c6, 0x59c7, /* 0x59c0 */
- 0x59c8, 0x59c9, 0x59ca, 0x59cb, 0x59cc, 0x59cd, 0x59ce, 0x59cf,
- 0x59d0, 0x59d1, 0x59d2, 0x59d3, 0x59d4, 0x59d5, 0x59d6, 0x59d7,
- 0x59d8, 0x59d9, 0x59da, 0x59db, 0x59dc, 0x59dd, 0x59de, 0x59df,
- 0x59e0, 0x59e1, 0x59e2, 0x59e3, 0x59e4, 0x59e5, 0x59e6, 0x59e7,
- 0x59e8, 0x59e9, 0x59ea, 0x59eb, 0x59ec, 0x59ed, 0x59ee, 0x59ef,
- 0x59f0, 0x59f1, 0x59f2, 0x59f3, 0x59f4, 0x59f5, 0x59f6, 0x59f7,
- 0x59f8, 0x59f9, 0x59fa, 0x59fb, 0x59fc, 0x59fd, 0x59fe, 0x59ff,
- 0x5a00, 0x5a01, 0x5a02, 0x5a03, 0x5a04, 0x5a05, 0x5a06, 0x5a07, /* 0x5a00 */
- 0x5a08, 0x5a09, 0x5a0a, 0x5a0b, 0x5a0c, 0x5a0d, 0x5a0e, 0x5a0f,
- 0x5a10, 0x5a11, 0x5a12, 0x5a13, 0x5a14, 0x5a15, 0x5a16, 0x5a17,
- 0x5a18, 0x5a19, 0x5a1a, 0x5a1b, 0x5a1c, 0x5a1d, 0x5a1e, 0x5a1f,
- 0x5a20, 0x5a21, 0x5a22, 0x5a23, 0x5a24, 0x5a25, 0x5a26, 0x5a27,
- 0x5a28, 0x5a29, 0x5a2a, 0x5a2b, 0x5a2c, 0x5a2d, 0x5a2e, 0x5a2f,
- 0x5a30, 0x5a31, 0x5a32, 0x5a33, 0x5a34, 0x5a35, 0x5a36, 0x5a37,
- 0x5a38, 0x5a39, 0x5a3a, 0x5a3b, 0x5a3c, 0x5a3d, 0x5a3e, 0x5a3f,
- 0x5a40, 0x5a41, 0x5a42, 0x5a43, 0x5a44, 0x5a45, 0x5a46, 0x5a47, /* 0x5a40 */
- 0x5a48, 0x5a49, 0x5a4a, 0x5a4b, 0x5a4c, 0x5a4d, 0x5a4e, 0x5a4f,
- 0x5a50, 0x5a51, 0x5a52, 0x5a53, 0x5a54, 0x5a55, 0x5a56, 0x5a57,
- 0x5a58, 0x5a59, 0x5a5a, 0x5a5b, 0x5a5c, 0x5a5d, 0x5a5e, 0x5a5f,
- 0x5a60, 0x5a61, 0x5a62, 0x5a63, 0x5a64, 0x5a65, 0x5a66, 0x5a67,
- 0x5a68, 0x5a69, 0x5a6a, 0x5a6b, 0x5a6c, 0x5a6d, 0x5a6e, 0x5a6f,
- 0x5a70, 0x5a71, 0x5a72, 0x5a73, 0x5a74, 0x5a75, 0x5a76, 0x5a77,
- 0x5a78, 0x5a79, 0x5a7a, 0x5a7b, 0x5a7c, 0x5a7d, 0x5a7e, 0x5a7f,
- 0x5a80, 0x5a81, 0x5a82, 0x5a83, 0x5a84, 0x5a85, 0x5a86, 0x5a87, /* 0x5a80 */
- 0x5a88, 0x5a89, 0x5a8a, 0x5a8b, 0x5a8c, 0x5a8d, 0x5a8e, 0x5a8f,
- 0x5a90, 0x5a91, 0x5a92, 0x5a93, 0x5a94, 0x5a95, 0x5a96, 0x5a97,
- 0x5a98, 0x5a99, 0x5a9a, 0x5a9b, 0x5a9c, 0x5a9d, 0x5a9e, 0x5a9f,
- 0x5aa0, 0x5aa1, 0x5aa2, 0x5aa3, 0x5aa4, 0x5aa5, 0x5aa6, 0x5aa7,
- 0x5aa8, 0x5aa9, 0x5aaa, 0x5aab, 0x5aac, 0x5aad, 0x5aae, 0x5aaf,
- 0x5ab0, 0x5ab1, 0x5ab2, 0x5ab3, 0x5ab4, 0x5ab5, 0x5ab6, 0x5ab7,
- 0x5ab8, 0x5ab9, 0x5aba, 0x5abb, 0x5abc, 0x5abd, 0x5abe, 0x5abf,
- 0x5ac0, 0x5ac1, 0x5ac2, 0x5ac3, 0x5ac4, 0x5ac5, 0x5ac6, 0x5ac7, /* 0x5ac0 */
- 0x5ac8, 0x5ac9, 0x5aca, 0x5acb, 0x5acc, 0x5acd, 0x5ace, 0x5acf,
- 0x5ad0, 0x5ad1, 0x5ad2, 0x5ad3, 0x5ad4, 0x5ad5, 0x5ad6, 0x5ad7,
- 0x5ad8, 0x5ad9, 0x5ada, 0x5adb, 0x5adc, 0x5add, 0x5ade, 0x5adf,
- 0x5ae0, 0x5ae1, 0x5ae2, 0x5ae3, 0x5ae4, 0x5ae5, 0x5ae6, 0x5ae7,
- 0x5ae8, 0x5ae9, 0x5aea, 0x5aeb, 0x5aec, 0x5aed, 0x5aee, 0x5aef,
- 0x5af0, 0x5af1, 0x5af2, 0x5af3, 0x5af4, 0x5af5, 0x5af6, 0x5af7,
- 0x5af8, 0x5af9, 0x5afa, 0x5afb, 0x5afc, 0x5afd, 0x5afe, 0x5aff,
- 0x5b00, 0x5b01, 0x5b02, 0x5b03, 0x5b04, 0x5b05, 0x5b06, 0x5b07, /* 0x5b00 */
- 0x5b08, 0x5b09, 0x5b0a, 0x5b0b, 0x5b0c, 0x5b0d, 0x5b0e, 0x5b0f,
- 0x5b10, 0x5b11, 0x5b12, 0x5b13, 0x5b14, 0x5b15, 0x5b16, 0x5b17,
- 0x5b18, 0x5b19, 0x5b1a, 0x5b1b, 0x5b1c, 0x5b1d, 0x5b1e, 0x5b1f,
- 0x5b20, 0x5b21, 0x5b22, 0x5b23, 0x5b24, 0x5b25, 0x5b26, 0x5b27,
- 0x5b28, 0x5b29, 0x5b2a, 0x5b2b, 0x5b2c, 0x5b2d, 0x5b2e, 0x5b2f,
- 0x5b30, 0x5b31, 0x5b32, 0x5b33, 0x5b34, 0x5b35, 0x5b36, 0x5b37,
- 0x5b38, 0x5b39, 0x5b3a, 0x5b3b, 0x5b3c, 0x5b3d, 0x5b3e, 0x5b3f,
- 0x5b40, 0x5b41, 0x5b42, 0x5b43, 0x5b44, 0x5b45, 0x5b46, 0x5b47, /* 0x5b40 */
- 0x5b48, 0x5b49, 0x5b4a, 0x5b4b, 0x5b4c, 0x5b4d, 0x5b4e, 0x5b4f,
- 0x5b50, 0x5b51, 0x5b52, 0x5b53, 0x5b54, 0x5b55, 0x5b56, 0x5b57,
- 0x5b58, 0x5b59, 0x5b5a, 0x5b5b, 0x5b5c, 0x5b5d, 0x5b5e, 0x5b5f,
- 0x5b60, 0x5b61, 0x5b62, 0x5b63, 0x5b64, 0x5b65, 0x5b66, 0x5b67,
- 0x5b68, 0x5b69, 0x5b6a, 0x5b6b, 0x5b6c, 0x5b6d, 0x5b6e, 0x5b6f,
- 0x5b70, 0x5b71, 0x5b72, 0x5b73, 0x5b74, 0x5b75, 0x5b76, 0x5b77,
- 0x5b78, 0x5b79, 0x5b7a, 0x5b7b, 0x5b7c, 0x5b7d, 0x5b7e, 0x5b7f,
- 0x5b80, 0x5b81, 0x5b82, 0x5b83, 0x5b84, 0x5b85, 0x5b86, 0x5b87, /* 0x5b80 */
- 0x5b88, 0x5b89, 0x5b8a, 0x5b8b, 0x5b8c, 0x5b8d, 0x5b8e, 0x5b8f,
- 0x5b90, 0x5b91, 0x5b92, 0x5b93, 0x5b94, 0x5b95, 0x5b96, 0x5b97,
- 0x5b98, 0x5b99, 0x5b9a, 0x5b9b, 0x5b9c, 0x5b9d, 0x5b9e, 0x5b9f,
- 0x5ba0, 0x5ba1, 0x5ba2, 0x5ba3, 0x5ba4, 0x5ba5, 0x5ba6, 0x5ba7,
- 0x5ba8, 0x5ba9, 0x5baa, 0x5bab, 0x5bac, 0x5bad, 0x5bae, 0x5baf,
- 0x5bb0, 0x5bb1, 0x5bb2, 0x5bb3, 0x5bb4, 0x5bb5, 0x5bb6, 0x5bb7,
- 0x5bb8, 0x5bb9, 0x5bba, 0x5bbb, 0x5bbc, 0x5bbd, 0x5bbe, 0x5bbf,
- 0x5bc0, 0x5bc1, 0x5bc2, 0x5bc3, 0x5bc4, 0x5bc5, 0x5bc6, 0x5bc7, /* 0x5bc0 */
- 0x5bc8, 0x5bc9, 0x5bca, 0x5bcb, 0x5bcc, 0x5bcd, 0x5bce, 0x5bcf,
- 0x5bd0, 0x5bd1, 0x5bd2, 0x5bd3, 0x5bd4, 0x5bd5, 0x5bd6, 0x5bd7,
- 0x5bd8, 0x5bd9, 0x5bda, 0x5bdb, 0x5bdc, 0x5bdd, 0x5bde, 0x5bdf,
- 0x5be0, 0x5be1, 0x5be2, 0x5be3, 0x5be4, 0x5be5, 0x5be6, 0x5be7,
- 0x5be8, 0x5be9, 0x5bea, 0x5beb, 0x5bec, 0x5bed, 0x5bee, 0x5bef,
- 0x5bf0, 0x5bf1, 0x5bf2, 0x5bf3, 0x5bf4, 0x5bf5, 0x5bf6, 0x5bf7,
- 0x5bf8, 0x5bf9, 0x5bfa, 0x5bfb, 0x5bfc, 0x5bfd, 0x5bfe, 0x5bff,
- 0x5c00, 0x5c01, 0x5c02, 0x5c03, 0x5c04, 0x5c05, 0x5c06, 0x5c07, /* 0x5c00 */
- 0x5c08, 0x5c09, 0x5c0a, 0x5c0b, 0x5c0c, 0x5c0d, 0x5c0e, 0x5c0f,
- 0x5c10, 0x5c11, 0x5c12, 0x5c13, 0x5c14, 0x5c15, 0x5c16, 0x5c17,
- 0x5c18, 0x5c19, 0x5c1a, 0x5c1b, 0x5c1c, 0x5c1d, 0x5c1e, 0x5c1f,
- 0x5c20, 0x5c21, 0x5c22, 0x5c23, 0x5c24, 0x5c25, 0x5c26, 0x5c27,
- 0x5c28, 0x5c29, 0x5c2a, 0x5c2b, 0x5c2c, 0x5c2d, 0x5c2e, 0x5c2f,
- 0x5c30, 0x5c31, 0x5c32, 0x5c33, 0x5c34, 0x5c35, 0x5c36, 0x5c37,
- 0x5c38, 0x5c39, 0x5c3a, 0x5c3b, 0x5c3c, 0x5c3d, 0x5c3e, 0x5c3f,
- 0x5c40, 0x5c41, 0x5c42, 0x5c43, 0x5c44, 0x5c45, 0x5c46, 0x5c47, /* 0x5c40 */
- 0x5c48, 0x5c49, 0x5c4a, 0x5c4b, 0x5c4c, 0x5c4d, 0x5c4e, 0x5c4f,
- 0x5c50, 0x5c51, 0x5c52, 0x5c53, 0x5c54, 0x5c55, 0x5c56, 0x5c57,
- 0x5c58, 0x5c59, 0x5c5a, 0x5c5b, 0x5c5c, 0x5c5d, 0x5c5e, 0x5c5f,
- 0x5c60, 0x5c61, 0x5c62, 0x5c63, 0x5c64, 0x5c65, 0x5c66, 0x5c67,
- 0x5c68, 0x5c69, 0x5c6a, 0x5c6b, 0x5c6c, 0x5c6d, 0x5c6e, 0x5c6f,
- 0x5c70, 0x5c71, 0x5c72, 0x5c73, 0x5c74, 0x5c75, 0x5c76, 0x5c77,
- 0x5c78, 0x5c79, 0x5c7a, 0x5c7b, 0x5c7c, 0x5c7d, 0x5c7e, 0x5c7f,
- 0x5c80, 0x5c81, 0x5c82, 0x5c83, 0x5c84, 0x5c85, 0x5c86, 0x5c87, /* 0x5c80 */
- 0x5c88, 0x5c89, 0x5c8a, 0x5c8b, 0x5c8c, 0x5c8d, 0x5c8e, 0x5c8f,
- 0x5c90, 0x5c91, 0x5c92, 0x5c93, 0x5c94, 0x5c95, 0x5c96, 0x5c97,
- 0x5c98, 0x5c99, 0x5c9a, 0x5c9b, 0x5c9c, 0x5c9d, 0x5c9e, 0x5c9f,
- 0x5ca0, 0x5ca1, 0x5ca2, 0x5ca3, 0x5ca4, 0x5ca5, 0x5ca6, 0x5ca7,
- 0x5ca8, 0x5ca9, 0x5caa, 0x5cab, 0x5cac, 0x5cad, 0x5cae, 0x5caf,
- 0x5cb0, 0x5cb1, 0x5cb2, 0x5cb3, 0x5cb4, 0x5cb5, 0x5cb6, 0x5cb7,
- 0x5cb8, 0x5cb9, 0x5cba, 0x5cbb, 0x5cbc, 0x5cbd, 0x5cbe, 0x5cbf,
- 0x5cc0, 0x5cc1, 0x5cc2, 0x5cc3, 0x5cc4, 0x5cc5, 0x5cc6, 0x5cc7, /* 0x5cc0 */
- 0x5cc8, 0x5cc9, 0x5cca, 0x5ccb, 0x5ccc, 0x5ccd, 0x5cce, 0x5ccf,
- 0x5cd0, 0x5cd1, 0x5cd2, 0x5cd3, 0x5cd4, 0x5cd5, 0x5cd6, 0x5cd7,
- 0x5cd8, 0x5cd9, 0x5cda, 0x5cdb, 0x5cdc, 0x5cdd, 0x5cde, 0x5cdf,
- 0x5ce0, 0x5ce1, 0x5ce2, 0x5ce3, 0x5ce4, 0x5ce5, 0x5ce6, 0x5ce7,
- 0x5ce8, 0x5ce9, 0x5cea, 0x5ceb, 0x5cec, 0x5ced, 0x5cee, 0x5cef,
- 0x5cf0, 0x5cf1, 0x5cf2, 0x5cf3, 0x5cf4, 0x5cf5, 0x5cf6, 0x5cf7,
- 0x5cf8, 0x5cf9, 0x5cfa, 0x5cfb, 0x5cfc, 0x5cfd, 0x5cfe, 0x5cff,
- 0x5d00, 0x5d01, 0x5d02, 0x5d03, 0x5d04, 0x5d05, 0x5d06, 0x5d07, /* 0x5d00 */
- 0x5d08, 0x5d09, 0x5d0a, 0x5d0b, 0x5d0c, 0x5d0d, 0x5d0e, 0x5d0f,
- 0x5d10, 0x5d11, 0x5d12, 0x5d13, 0x5d14, 0x5d15, 0x5d16, 0x5d17,
- 0x5d18, 0x5d19, 0x5d1a, 0x5d1b, 0x5d1c, 0x5d1d, 0x5d1e, 0x5d1f,
- 0x5d20, 0x5d21, 0x5d22, 0x5d23, 0x5d24, 0x5d25, 0x5d26, 0x5d27,
- 0x5d28, 0x5d29, 0x5d2a, 0x5d2b, 0x5d2c, 0x5d2d, 0x5d2e, 0x5d2f,
- 0x5d30, 0x5d31, 0x5d32, 0x5d33, 0x5d34, 0x5d35, 0x5d36, 0x5d37,
- 0x5d38, 0x5d39, 0x5d3a, 0x5d3b, 0x5d3c, 0x5d3d, 0x5d3e, 0x5d3f,
- 0x5d40, 0x5d41, 0x5d42, 0x5d43, 0x5d44, 0x5d45, 0x5d46, 0x5d47, /* 0x5d40 */
- 0x5d48, 0x5d49, 0x5d4a, 0x5d4b, 0x5d4c, 0x5d4d, 0x5d4e, 0x5d4f,
- 0x5d50, 0x5d51, 0x5d52, 0x5d53, 0x5d54, 0x5d55, 0x5d56, 0x5d57,
- 0x5d58, 0x5d59, 0x5d5a, 0x5d5b, 0x5d5c, 0x5d5d, 0x5d5e, 0x5d5f,
- 0x5d60, 0x5d61, 0x5d62, 0x5d63, 0x5d64, 0x5d65, 0x5d66, 0x5d67,
- 0x5d68, 0x5d69, 0x5d6a, 0x5d6b, 0x5d6c, 0x5d6d, 0x5d6e, 0x5d6f,
- 0x5d70, 0x5d71, 0x5d72, 0x5d73, 0x5d74, 0x5d75, 0x5d76, 0x5d77,
- 0x5d78, 0x5d79, 0x5d7a, 0x5d7b, 0x5d7c, 0x5d7d, 0x5d7e, 0x5d7f,
- 0x5d80, 0x5d81, 0x5d82, 0x5d83, 0x5d84, 0x5d85, 0x5d86, 0x5d87, /* 0x5d80 */
- 0x5d88, 0x5d89, 0x5d8a, 0x5d8b, 0x5d8c, 0x5d8d, 0x5d8e, 0x5d8f,
- 0x5d90, 0x5d91, 0x5d92, 0x5d93, 0x5d94, 0x5d95, 0x5d96, 0x5d97,
- 0x5d98, 0x5d99, 0x5d9a, 0x5d9b, 0x5d9c, 0x5d9d, 0x5d9e, 0x5d9f,
- 0x5da0, 0x5da1, 0x5da2, 0x5da3, 0x5da4, 0x5da5, 0x5da6, 0x5da7,
- 0x5da8, 0x5da9, 0x5daa, 0x5dab, 0x5dac, 0x5dad, 0x5dae, 0x5daf,
- 0x5db0, 0x5db1, 0x5db2, 0x5db3, 0x5db4, 0x5db5, 0x5db6, 0x5db7,
- 0x5db8, 0x5db9, 0x5dba, 0x5dbb, 0x5dbc, 0x5dbd, 0x5dbe, 0x5dbf,
- 0x5dc0, 0x5dc1, 0x5dc2, 0x5dc3, 0x5dc4, 0x5dc5, 0x5dc6, 0x5dc7, /* 0x5dc0 */
- 0x5dc8, 0x5dc9, 0x5dca, 0x5dcb, 0x5dcc, 0x5dcd, 0x5dce, 0x5dcf,
- 0x5dd0, 0x5dd1, 0x5dd2, 0x5dd3, 0x5dd4, 0x5dd5, 0x5dd6, 0x5dd7,
- 0x5dd8, 0x5dd9, 0x5dda, 0x5ddb, 0x5ddc, 0x5ddd, 0x5dde, 0x5ddf,
- 0x5de0, 0x5de1, 0x5de2, 0x5de3, 0x5de4, 0x5de5, 0x5de6, 0x5de7,
- 0x5de8, 0x5de9, 0x5dea, 0x5deb, 0x5dec, 0x5ded, 0x5dee, 0x5def,
- 0x5df0, 0x5df1, 0x5df2, 0x5df3, 0x5df4, 0x5df5, 0x5df6, 0x5df7,
- 0x5df8, 0x5df9, 0x5dfa, 0x5dfb, 0x5dfc, 0x5dfd, 0x5dfe, 0x5dff,
- 0x5e00, 0x5e01, 0x5e02, 0x5e03, 0x5e04, 0x5e05, 0x5e06, 0x5e07, /* 0x5e00 */
- 0x5e08, 0x5e09, 0x5e0a, 0x5e0b, 0x5e0c, 0x5e0d, 0x5e0e, 0x5e0f,
- 0x5e10, 0x5e11, 0x5e12, 0x5e13, 0x5e14, 0x5e15, 0x5e16, 0x5e17,
- 0x5e18, 0x5e19, 0x5e1a, 0x5e1b, 0x5e1c, 0x5e1d, 0x5e1e, 0x5e1f,
- 0x5e20, 0x5e21, 0x5e22, 0x5e23, 0x5e24, 0x5e25, 0x5e26, 0x5e27,
- 0x5e28, 0x5e29, 0x5e2a, 0x5e2b, 0x5e2c, 0x5e2d, 0x5e2e, 0x5e2f,
- 0x5e30, 0x5e31, 0x5e32, 0x5e33, 0x5e34, 0x5e35, 0x5e36, 0x5e37,
- 0x5e38, 0x5e39, 0x5e3a, 0x5e3b, 0x5e3c, 0x5e3d, 0x5e3e, 0x5e3f,
- 0x5e40, 0x5e41, 0x5e42, 0x5e43, 0x5e44, 0x5e45, 0x5e46, 0x5e47, /* 0x5e40 */
- 0x5e48, 0x5e49, 0x5e4a, 0x5e4b, 0x5e4c, 0x5e4d, 0x5e4e, 0x5e4f,
- 0x5e50, 0x5e51, 0x5e52, 0x5e53, 0x5e54, 0x5e55, 0x5e56, 0x5e57,
- 0x5e58, 0x5e59, 0x5e5a, 0x5e5b, 0x5e5c, 0x5e5d, 0x5e5e, 0x5e5f,
- 0x5e60, 0x5e61, 0x5e62, 0x5e63, 0x5e64, 0x5e65, 0x5e66, 0x5e67,
- 0x5e68, 0x5e69, 0x5e6a, 0x5e6b, 0x5e6c, 0x5e6d, 0x5e6e, 0x5e6f,
- 0x5e70, 0x5e71, 0x5e72, 0x5e73, 0x5e74, 0x5e75, 0x5e76, 0x5e77,
- 0x5e78, 0x5e79, 0x5e7a, 0x5e7b, 0x5e7c, 0x5e7d, 0x5e7e, 0x5e7f,
- 0x5e80, 0x5e81, 0x5e82, 0x5e83, 0x5e84, 0x5e85, 0x5e86, 0x5e87, /* 0x5e80 */
- 0x5e88, 0x5e89, 0x5e8a, 0x5e8b, 0x5e8c, 0x5e8d, 0x5e8e, 0x5e8f,
- 0x5e90, 0x5e91, 0x5e92, 0x5e93, 0x5e94, 0x5e95, 0x5e96, 0x5e97,
- 0x5e98, 0x5e99, 0x5e9a, 0x5e9b, 0x5e9c, 0x5e9d, 0x5e9e, 0x5e9f,
- 0x5ea0, 0x5ea1, 0x5ea2, 0x5ea3, 0x5ea4, 0x5ea5, 0x5ea6, 0x5ea7,
- 0x5ea8, 0x5ea9, 0x5eaa, 0x5eab, 0x5eac, 0x5ead, 0x5eae, 0x5eaf,
- 0x5eb0, 0x5eb1, 0x5eb2, 0x5eb3, 0x5eb4, 0x5eb5, 0x5eb6, 0x5eb7,
- 0x5eb8, 0x5eb9, 0x5eba, 0x5ebb, 0x5ebc, 0x5ebd, 0x5ebe, 0x5ebf,
- 0x5ec0, 0x5ec1, 0x5ec2, 0x5ec3, 0x5ec4, 0x5ec5, 0x5ec6, 0x5ec7, /* 0x5ec0 */
- 0x5ec8, 0x5ec9, 0x5eca, 0x5ecb, 0x5ecc, 0x5ecd, 0x5ece, 0x5ecf,
- 0x5ed0, 0x5ed1, 0x5ed2, 0x5ed3, 0x5ed4, 0x5ed5, 0x5ed6, 0x5ed7,
- 0x5ed8, 0x5ed9, 0x5eda, 0x5edb, 0x5edc, 0x5edd, 0x5ede, 0x5edf,
- 0x5ee0, 0x5ee1, 0x5ee2, 0x5ee3, 0x5ee4, 0x5ee5, 0x5ee6, 0x5ee7,
- 0x5ee8, 0x5ee9, 0x5eea, 0x5eeb, 0x5eec, 0x5eed, 0x5eee, 0x5eef,
- 0x5ef0, 0x5ef1, 0x5ef2, 0x5ef3, 0x5ef4, 0x5ef5, 0x5ef6, 0x5ef7,
- 0x5ef8, 0x5ef9, 0x5efa, 0x5efb, 0x5efc, 0x5efd, 0x5efe, 0x5eff,
- 0x5f00, 0x5f01, 0x5f02, 0x5f03, 0x5f04, 0x5f05, 0x5f06, 0x5f07, /* 0x5f00 */
- 0x5f08, 0x5f09, 0x5f0a, 0x5f0b, 0x5f0c, 0x5f0d, 0x5f0e, 0x5f0f,
- 0x5f10, 0x5f11, 0x5f12, 0x5f13, 0x5f14, 0x5f15, 0x5f16, 0x5f17,
- 0x5f18, 0x5f19, 0x5f1a, 0x5f1b, 0x5f1c, 0x5f1d, 0x5f1e, 0x5f1f,
- 0x5f20, 0x5f21, 0x5f22, 0x5f23, 0x5f24, 0x5f25, 0x5f26, 0x5f27,
- 0x5f28, 0x5f29, 0x5f2a, 0x5f2b, 0x5f2c, 0x5f2d, 0x5f2e, 0x5f2f,
- 0x5f30, 0x5f31, 0x5f32, 0x5f33, 0x5f34, 0x5f35, 0x5f36, 0x5f37,
- 0x5f38, 0x5f39, 0x5f3a, 0x5f3b, 0x5f3c, 0x5f3d, 0x5f3e, 0x5f3f,
- 0x5f40, 0x5f41, 0x5f42, 0x5f43, 0x5f44, 0x5f45, 0x5f46, 0x5f47, /* 0x5f40 */
- 0x5f48, 0x5f49, 0x5f4a, 0x5f4b, 0x5f4c, 0x5f4d, 0x5f4e, 0x5f4f,
- 0x5f50, 0x5f51, 0x5f52, 0x5f53, 0x5f54, 0x5f55, 0x5f56, 0x5f57,
- 0x5f58, 0x5f59, 0x5f5a, 0x5f5b, 0x5f5c, 0x5f5d, 0x5f5e, 0x5f5f,
- 0x5f60, 0x5f61, 0x5f62, 0x5f63, 0x5f64, 0x5f65, 0x5f66, 0x5f67,
- 0x5f68, 0x5f69, 0x5f6a, 0x5f6b, 0x5f6c, 0x5f6d, 0x5f6e, 0x5f6f,
- 0x5f70, 0x5f71, 0x5f72, 0x5f73, 0x5f74, 0x5f75, 0x5f76, 0x5f77,
- 0x5f78, 0x5f79, 0x5f7a, 0x5f7b, 0x5f7c, 0x5f7d, 0x5f7e, 0x5f7f,
- 0x5f80, 0x5f81, 0x5f82, 0x5f83, 0x5f84, 0x5f85, 0x5f86, 0x5f87, /* 0x5f80 */
- 0x5f88, 0x5f89, 0x5f8a, 0x5f8b, 0x5f8c, 0x5f8d, 0x5f8e, 0x5f8f,
- 0x5f90, 0x5f91, 0x5f92, 0x5f93, 0x5f94, 0x5f95, 0x5f96, 0x5f97,
- 0x5f98, 0x5f99, 0x5f9a, 0x5f9b, 0x5f9c, 0x5f9d, 0x5f9e, 0x5f9f,
- 0x5fa0, 0x5fa1, 0x5fa2, 0x5fa3, 0x5fa4, 0x5fa5, 0x5fa6, 0x5fa7,
- 0x5fa8, 0x5fa9, 0x5faa, 0x5fab, 0x5fac, 0x5fad, 0x5fae, 0x5faf,
- 0x5fb0, 0x5fb1, 0x5fb2, 0x5fb3, 0x5fb4, 0x5fb5, 0x5fb6, 0x5fb7,
- 0x5fb8, 0x5fb9, 0x5fba, 0x5fbb, 0x5fbc, 0x5fbd, 0x5fbe, 0x5fbf,
- 0x5fc0, 0x5fc1, 0x5fc2, 0x5fc3, 0x5fc4, 0x5fc5, 0x5fc6, 0x5fc7, /* 0x5fc0 */
- 0x5fc8, 0x5fc9, 0x5fca, 0x5fcb, 0x5fcc, 0x5fcd, 0x5fce, 0x5fcf,
- 0x5fd0, 0x5fd1, 0x5fd2, 0x5fd3, 0x5fd4, 0x5fd5, 0x5fd6, 0x5fd7,
- 0x5fd8, 0x5fd9, 0x5fda, 0x5fdb, 0x5fdc, 0x5fdd, 0x5fde, 0x5fdf,
- 0x5fe0, 0x5fe1, 0x5fe2, 0x5fe3, 0x5fe4, 0x5fe5, 0x5fe6, 0x5fe7,
- 0x5fe8, 0x5fe9, 0x5fea, 0x5feb, 0x5fec, 0x5fed, 0x5fee, 0x5fef,
- 0x5ff0, 0x5ff1, 0x5ff2, 0x5ff3, 0x5ff4, 0x5ff5, 0x5ff6, 0x5ff7,
- 0x5ff8, 0x5ff9, 0x5ffa, 0x5ffb, 0x5ffc, 0x5ffd, 0x5ffe, 0x5fff,
- 0x6000, 0x6001, 0x6002, 0x6003, 0x6004, 0x6005, 0x6006, 0x6007, /* 0x6000 */
- 0x6008, 0x6009, 0x600a, 0x600b, 0x600c, 0x600d, 0x600e, 0x600f,
- 0x6010, 0x6011, 0x6012, 0x6013, 0x6014, 0x6015, 0x6016, 0x6017,
- 0x6018, 0x6019, 0x601a, 0x601b, 0x601c, 0x601d, 0x601e, 0x601f,
- 0x6020, 0x6021, 0x6022, 0x6023, 0x6024, 0x6025, 0x6026, 0x6027,
- 0x6028, 0x6029, 0x602a, 0x602b, 0x602c, 0x602d, 0x602e, 0x602f,
- 0x6030, 0x6031, 0x6032, 0x6033, 0x6034, 0x6035, 0x6036, 0x6037,
- 0x6038, 0x6039, 0x603a, 0x603b, 0x603c, 0x603d, 0x603e, 0x603f,
- 0x6040, 0x6041, 0x6042, 0x6043, 0x6044, 0x6045, 0x6046, 0x6047, /* 0x6040 */
- 0x6048, 0x6049, 0x604a, 0x604b, 0x604c, 0x604d, 0x604e, 0x604f,
- 0x6050, 0x6051, 0x6052, 0x6053, 0x6054, 0x6055, 0x6056, 0x6057,
- 0x6058, 0x6059, 0x605a, 0x605b, 0x605c, 0x605d, 0x605e, 0x605f,
- 0x6060, 0x6061, 0x6062, 0x6063, 0x6064, 0x6065, 0x6066, 0x6067,
- 0x6068, 0x6069, 0x606a, 0x606b, 0x606c, 0x606d, 0x606e, 0x606f,
- 0x6070, 0x6071, 0x6072, 0x6073, 0x6074, 0x6075, 0x6076, 0x6077,
- 0x6078, 0x6079, 0x607a, 0x607b, 0x607c, 0x607d, 0x607e, 0x607f,
- 0x6080, 0x6081, 0x6082, 0x6083, 0x6084, 0x6085, 0x6086, 0x6087, /* 0x6080 */
- 0x6088, 0x6089, 0x608a, 0x608b, 0x608c, 0x608d, 0x608e, 0x608f,
- 0x6090, 0x6091, 0x6092, 0x6093, 0x6094, 0x6095, 0x6096, 0x6097,
- 0x6098, 0x6099, 0x609a, 0x609b, 0x609c, 0x609d, 0x609e, 0x609f,
- 0x60a0, 0x60a1, 0x60a2, 0x60a3, 0x60a4, 0x60a5, 0x60a6, 0x60a7,
- 0x60a8, 0x60a9, 0x60aa, 0x60ab, 0x60ac, 0x60ad, 0x60ae, 0x60af,
- 0x60b0, 0x60b1, 0x60b2, 0x60b3, 0x60b4, 0x60b5, 0x60b6, 0x60b7,
- 0x60b8, 0x60b9, 0x60ba, 0x60bb, 0x60bc, 0x60bd, 0x60be, 0x60bf,
- 0x60c0, 0x60c1, 0x60c2, 0x60c3, 0x60c4, 0x60c5, 0x60c6, 0x60c7, /* 0x60c0 */
- 0x60c8, 0x60c9, 0x60ca, 0x60cb, 0x60cc, 0x60cd, 0x60ce, 0x60cf,
- 0x60d0, 0x60d1, 0x60d2, 0x60d3, 0x60d4, 0x60d5, 0x60d6, 0x60d7,
- 0x60d8, 0x60d9, 0x60da, 0x60db, 0x60dc, 0x60dd, 0x60de, 0x60df,
- 0x60e0, 0x60e1, 0x60e2, 0x60e3, 0x60e4, 0x60e5, 0x60e6, 0x60e7,
- 0x60e8, 0x60e9, 0x60ea, 0x60eb, 0x60ec, 0x60ed, 0x60ee, 0x60ef,
- 0x60f0, 0x60f1, 0x60f2, 0x60f3, 0x60f4, 0x60f5, 0x60f6, 0x60f7,
- 0x60f8, 0x60f9, 0x60fa, 0x60fb, 0x60fc, 0x60fd, 0x60fe, 0x60ff,
- 0x6100, 0x6101, 0x6102, 0x6103, 0x6104, 0x6105, 0x6106, 0x6107, /* 0x6100 */
- 0x6108, 0x6109, 0x610a, 0x610b, 0x610c, 0x610d, 0x610e, 0x610f,
- 0x6110, 0x6111, 0x6112, 0x6113, 0x6114, 0x6115, 0x6116, 0x6117,
- 0x6118, 0x6119, 0x611a, 0x611b, 0x611c, 0x611d, 0x611e, 0x611f,
- 0x6120, 0x6121, 0x6122, 0x6123, 0x6124, 0x6125, 0x6126, 0x6127,
- 0x6128, 0x6129, 0x612a, 0x612b, 0x612c, 0x612d, 0x612e, 0x612f,
- 0x6130, 0x6131, 0x6132, 0x6133, 0x6134, 0x6135, 0x6136, 0x6137,
- 0x6138, 0x6139, 0x613a, 0x613b, 0x613c, 0x613d, 0x613e, 0x613f,
- 0x6140, 0x6141, 0x6142, 0x6143, 0x6144, 0x6145, 0x6146, 0x6147, /* 0x6140 */
- 0x6148, 0x6149, 0x614a, 0x614b, 0x614c, 0x614d, 0x614e, 0x614f,
- 0x6150, 0x6151, 0x6152, 0x6153, 0x6154, 0x6155, 0x6156, 0x6157,
- 0x6158, 0x6159, 0x615a, 0x615b, 0x615c, 0x615d, 0x615e, 0x615f,
- 0x6160, 0x6161, 0x6162, 0x6163, 0x6164, 0x6165, 0x6166, 0x6167,
- 0x6168, 0x6169, 0x616a, 0x616b, 0x616c, 0x616d, 0x616e, 0x616f,
- 0x6170, 0x6171, 0x6172, 0x6173, 0x6174, 0x6175, 0x6176, 0x6177,
- 0x6178, 0x6179, 0x617a, 0x617b, 0x617c, 0x617d, 0x617e, 0x617f,
- 0x6180, 0x6181, 0x6182, 0x6183, 0x6184, 0x6185, 0x6186, 0x6187, /* 0x6180 */
- 0x6188, 0x6189, 0x618a, 0x618b, 0x618c, 0x618d, 0x618e, 0x618f,
- 0x6190, 0x6191, 0x6192, 0x6193, 0x6194, 0x6195, 0x6196, 0x6197,
- 0x6198, 0x6199, 0x619a, 0x619b, 0x619c, 0x619d, 0x619e, 0x619f,
- 0x61a0, 0x61a1, 0x61a2, 0x61a3, 0x61a4, 0x61a5, 0x61a6, 0x61a7,
- 0x61a8, 0x61a9, 0x61aa, 0x61ab, 0x61ac, 0x61ad, 0x61ae, 0x61af,
- 0x61b0, 0x61b1, 0x61b2, 0x61b3, 0x61b4, 0x61b5, 0x61b6, 0x61b7,
- 0x61b8, 0x61b9, 0x61ba, 0x61bb, 0x61bc, 0x61bd, 0x61be, 0x61bf,
- 0x61c0, 0x61c1, 0x61c2, 0x61c3, 0x61c4, 0x61c5, 0x61c6, 0x61c7, /* 0x61c0 */
- 0x61c8, 0x61c9, 0x61ca, 0x61cb, 0x61cc, 0x61cd, 0x61ce, 0x61cf,
- 0x61d0, 0x61d1, 0x61d2, 0x61d3, 0x61d4, 0x61d5, 0x61d6, 0x61d7,
- 0x61d8, 0x61d9, 0x61da, 0x61db, 0x61dc, 0x61dd, 0x61de, 0x61df,
- 0x61e0, 0x61e1, 0x61e2, 0x61e3, 0x61e4, 0x61e5, 0x61e6, 0x61e7,
- 0x61e8, 0x61e9, 0x61ea, 0x61eb, 0x61ec, 0x61ed, 0x61ee, 0x61ef,
- 0x61f0, 0x61f1, 0x61f2, 0x61f3, 0x61f4, 0x61f5, 0x61f6, 0x61f7,
- 0x61f8, 0x61f9, 0x61fa, 0x61fb, 0x61fc, 0x61fd, 0x61fe, 0x61ff,
- 0x6200, 0x6201, 0x6202, 0x6203, 0x6204, 0x6205, 0x6206, 0x6207, /* 0x6200 */
- 0x6208, 0x6209, 0x620a, 0x620b, 0x620c, 0x620d, 0x620e, 0x620f,
- 0x6210, 0x6211, 0x6212, 0x6213, 0x6214, 0x6215, 0x6216, 0x6217,
- 0x6218, 0x6219, 0x621a, 0x621b, 0x621c, 0x621d, 0x621e, 0x621f,
- 0x6220, 0x6221, 0x6222, 0x6223, 0x6224, 0x6225, 0x6226, 0x6227,
- 0x6228, 0x6229, 0x622a, 0x622b, 0x622c, 0x622d, 0x622e, 0x622f,
- 0x6230, 0x6231, 0x6232, 0x6233, 0x6234, 0x6235, 0x6236, 0x6237,
- 0x6238, 0x6239, 0x623a, 0x623b, 0x623c, 0x623d, 0x623e, 0x623f,
- 0x6240, 0x6241, 0x6242, 0x6243, 0x6244, 0x6245, 0x6246, 0x6247, /* 0x6240 */
- 0x6248, 0x6249, 0x624a, 0x624b, 0x624c, 0x624d, 0x624e, 0x624f,
- 0x6250, 0x6251, 0x6252, 0x6253, 0x6254, 0x6255, 0x6256, 0x6257,
- 0x6258, 0x6259, 0x625a, 0x625b, 0x625c, 0x625d, 0x625e, 0x625f,
- 0x6260, 0x6261, 0x6262, 0x6263, 0x6264, 0x6265, 0x6266, 0x6267,
- 0x6268, 0x6269, 0x626a, 0x626b, 0x626c, 0x626d, 0x626e, 0x626f,
- 0x6270, 0x6271, 0x6272, 0x6273, 0x6274, 0x6275, 0x6276, 0x6277,
- 0x6278, 0x6279, 0x627a, 0x627b, 0x627c, 0x627d, 0x627e, 0x627f,
- 0x6280, 0x6281, 0x6282, 0x6283, 0x6284, 0x6285, 0x6286, 0x6287, /* 0x6280 */
- 0x6288, 0x6289, 0x628a, 0x628b, 0x628c, 0x628d, 0x628e, 0x628f,
- 0x6290, 0x6291, 0x6292, 0x6293, 0x6294, 0x6295, 0x6296, 0x6297,
- 0x6298, 0x6299, 0x629a, 0x629b, 0x629c, 0x629d, 0x629e, 0x629f,
- 0x62a0, 0x62a1, 0x62a2, 0x62a3, 0x62a4, 0x62a5, 0x62a6, 0x62a7,
- 0x62a8, 0x62a9, 0x62aa, 0x62ab, 0x62ac, 0x62ad, 0x62ae, 0x62af,
- 0x62b0, 0x62b1, 0x62b2, 0x62b3, 0x62b4, 0x62b5, 0x62b6, 0x62b7,
- 0x62b8, 0x62b9, 0x62ba, 0x62bb, 0x62bc, 0x62bd, 0x62be, 0x62bf,
- 0x62c0, 0x62c1, 0x62c2, 0x62c3, 0x62c4, 0x62c5, 0x62c6, 0x62c7, /* 0x62c0 */
- 0x62c8, 0x62c9, 0x62ca, 0x62cb, 0x62cc, 0x62cd, 0x62ce, 0x62cf,
- 0x62d0, 0x62d1, 0x62d2, 0x62d3, 0x62d4, 0x62d5, 0x62d6, 0x62d7,
- 0x62d8, 0x62d9, 0x62da, 0x62db, 0x62dc, 0x62dd, 0x62de, 0x62df,
- 0x62e0, 0x62e1, 0x62e2, 0x62e3, 0x62e4, 0x62e5, 0x62e6, 0x62e7,
- 0x62e8, 0x62e9, 0x62ea, 0x62eb, 0x62ec, 0x62ed, 0x62ee, 0x62ef,
- 0x62f0, 0x62f1, 0x62f2, 0x62f3, 0x62f4, 0x62f5, 0x62f6, 0x62f7,
- 0x62f8, 0x62f9, 0x62fa, 0x62fb, 0x62fc, 0x62fd, 0x62fe, 0x62ff,
- 0x6300, 0x6301, 0x6302, 0x6303, 0x6304, 0x6305, 0x6306, 0x6307, /* 0x6300 */
- 0x6308, 0x6309, 0x630a, 0x630b, 0x630c, 0x630d, 0x630e, 0x630f,
- 0x6310, 0x6311, 0x6312, 0x6313, 0x6314, 0x6315, 0x6316, 0x6317,
- 0x6318, 0x6319, 0x631a, 0x631b, 0x631c, 0x631d, 0x631e, 0x631f,
- 0x6320, 0x6321, 0x6322, 0x6323, 0x6324, 0x6325, 0x6326, 0x6327,
- 0x6328, 0x6329, 0x632a, 0x632b, 0x632c, 0x632d, 0x632e, 0x632f,
- 0x6330, 0x6331, 0x6332, 0x6333, 0x6334, 0x6335, 0x6336, 0x6337,
- 0x6338, 0x6339, 0x633a, 0x633b, 0x633c, 0x633d, 0x633e, 0x633f,
- 0x6340, 0x6341, 0x6342, 0x6343, 0x6344, 0x6345, 0x6346, 0x6347, /* 0x6340 */
- 0x6348, 0x6349, 0x634a, 0x634b, 0x634c, 0x634d, 0x634e, 0x634f,
- 0x6350, 0x6351, 0x6352, 0x6353, 0x6354, 0x6355, 0x6356, 0x6357,
- 0x6358, 0x6359, 0x635a, 0x635b, 0x635c, 0x635d, 0x635e, 0x635f,
- 0x6360, 0x6361, 0x6362, 0x6363, 0x6364, 0x6365, 0x6366, 0x6367,
- 0x6368, 0x6369, 0x636a, 0x636b, 0x636c, 0x636d, 0x636e, 0x636f,
- 0x6370, 0x6371, 0x6372, 0x6373, 0x6374, 0x6375, 0x6376, 0x6377,
- 0x6378, 0x6379, 0x637a, 0x637b, 0x637c, 0x637d, 0x637e, 0x637f,
- 0x6380, 0x6381, 0x6382, 0x6383, 0x6384, 0x6385, 0x6386, 0x6387, /* 0x6380 */
- 0x6388, 0x6389, 0x638a, 0x638b, 0x638c, 0x638d, 0x638e, 0x638f,
- 0x6390, 0x6391, 0x6392, 0x6393, 0x6394, 0x6395, 0x6396, 0x6397,
- 0x6398, 0x6399, 0x639a, 0x639b, 0x639c, 0x639d, 0x639e, 0x639f,
- 0x63a0, 0x63a1, 0x63a2, 0x63a3, 0x63a4, 0x63a5, 0x63a6, 0x63a7,
- 0x63a8, 0x63a9, 0x63aa, 0x63ab, 0x63ac, 0x63ad, 0x63ae, 0x63af,
- 0x63b0, 0x63b1, 0x63b2, 0x63b3, 0x63b4, 0x63b5, 0x63b6, 0x63b7,
- 0x63b8, 0x63b9, 0x63ba, 0x63bb, 0x63bc, 0x63bd, 0x63be, 0x63bf,
- 0x63c0, 0x63c1, 0x63c2, 0x63c3, 0x63c4, 0x63c5, 0x63c6, 0x63c7, /* 0x63c0 */
- 0x63c8, 0x63c9, 0x63ca, 0x63cb, 0x63cc, 0x63cd, 0x63ce, 0x63cf,
- 0x63d0, 0x63d1, 0x63d2, 0x63d3, 0x63d4, 0x63d5, 0x63d6, 0x63d7,
- 0x63d8, 0x63d9, 0x63da, 0x63db, 0x63dc, 0x63dd, 0x63de, 0x63df,
- 0x63e0, 0x63e1, 0x63e2, 0x63e3, 0x63e4, 0x63e5, 0x63e6, 0x63e7,
- 0x63e8, 0x63e9, 0x63ea, 0x63eb, 0x63ec, 0x63ed, 0x63ee, 0x63ef,
- 0x63f0, 0x63f1, 0x63f2, 0x63f3, 0x63f4, 0x63f5, 0x63f6, 0x63f7,
- 0x63f8, 0x63f9, 0x63fa, 0x63fb, 0x63fc, 0x63fd, 0x63fe, 0x63ff,
- 0x6400, 0x6401, 0x6402, 0x6403, 0x6404, 0x6405, 0x6406, 0x6407, /* 0x6400 */
- 0x6408, 0x6409, 0x640a, 0x640b, 0x640c, 0x640d, 0x640e, 0x640f,
- 0x6410, 0x6411, 0x6412, 0x6413, 0x6414, 0x6415, 0x6416, 0x6417,
- 0x6418, 0x6419, 0x641a, 0x641b, 0x641c, 0x641d, 0x641e, 0x641f,
- 0x6420, 0x6421, 0x6422, 0x6423, 0x6424, 0x6425, 0x6426, 0x6427,
- 0x6428, 0x6429, 0x642a, 0x642b, 0x642c, 0x642d, 0x642e, 0x642f,
- 0x6430, 0x6431, 0x6432, 0x6433, 0x6434, 0x6435, 0x6436, 0x6437,
- 0x6438, 0x6439, 0x643a, 0x643b, 0x643c, 0x643d, 0x643e, 0x643f,
- 0x6440, 0x6441, 0x6442, 0x6443, 0x6444, 0x6445, 0x6446, 0x6447, /* 0x6440 */
- 0x6448, 0x6449, 0x644a, 0x644b, 0x644c, 0x644d, 0x644e, 0x644f,
- 0x6450, 0x6451, 0x6452, 0x6453, 0x6454, 0x6455, 0x6456, 0x6457,
- 0x6458, 0x6459, 0x645a, 0x645b, 0x645c, 0x645d, 0x645e, 0x645f,
- 0x6460, 0x6461, 0x6462, 0x6463, 0x6464, 0x6465, 0x6466, 0x6467,
- 0x6468, 0x6469, 0x646a, 0x646b, 0x646c, 0x646d, 0x646e, 0x646f,
- 0x6470, 0x6471, 0x6472, 0x6473, 0x6474, 0x6475, 0x6476, 0x6477,
- 0x6478, 0x6479, 0x647a, 0x647b, 0x647c, 0x647d, 0x647e, 0x647f,
- 0x6480, 0x6481, 0x6482, 0x6483, 0x6484, 0x6485, 0x6486, 0x6487, /* 0x6480 */
- 0x6488, 0x6489, 0x648a, 0x648b, 0x648c, 0x648d, 0x648e, 0x648f,
- 0x6490, 0x6491, 0x6492, 0x6493, 0x6494, 0x6495, 0x6496, 0x6497,
- 0x6498, 0x6499, 0x649a, 0x649b, 0x649c, 0x649d, 0x649e, 0x649f,
- 0x64a0, 0x64a1, 0x64a2, 0x64a3, 0x64a4, 0x64a5, 0x64a6, 0x64a7,
- 0x64a8, 0x64a9, 0x64aa, 0x64ab, 0x64ac, 0x64ad, 0x64ae, 0x64af,
- 0x64b0, 0x64b1, 0x64b2, 0x64b3, 0x64b4, 0x64b5, 0x64b6, 0x64b7,
- 0x64b8, 0x64b9, 0x64ba, 0x64bb, 0x64bc, 0x64bd, 0x64be, 0x64bf,
- 0x64c0, 0x64c1, 0x64c2, 0x64c3, 0x64c4, 0x64c5, 0x64c6, 0x64c7, /* 0x64c0 */
- 0x64c8, 0x64c9, 0x64ca, 0x64cb, 0x64cc, 0x64cd, 0x64ce, 0x64cf,
- 0x64d0, 0x64d1, 0x64d2, 0x64d3, 0x64d4, 0x64d5, 0x64d6, 0x64d7,
- 0x64d8, 0x64d9, 0x64da, 0x64db, 0x64dc, 0x64dd, 0x64de, 0x64df,
- 0x64e0, 0x64e1, 0x64e2, 0x64e3, 0x64e4, 0x64e5, 0x64e6, 0x64e7,
- 0x64e8, 0x64e9, 0x64ea, 0x64eb, 0x64ec, 0x64ed, 0x64ee, 0x64ef,
- 0x64f0, 0x64f1, 0x64f2, 0x64f3, 0x64f4, 0x64f5, 0x64f6, 0x64f7,
- 0x64f8, 0x64f9, 0x64fa, 0x64fb, 0x64fc, 0x64fd, 0x64fe, 0x64ff,
- 0x6500, 0x6501, 0x6502, 0x6503, 0x6504, 0x6505, 0x6506, 0x6507, /* 0x6500 */
- 0x6508, 0x6509, 0x650a, 0x650b, 0x650c, 0x650d, 0x650e, 0x650f,
- 0x6510, 0x6511, 0x6512, 0x6513, 0x6514, 0x6515, 0x6516, 0x6517,
- 0x6518, 0x6519, 0x651a, 0x651b, 0x651c, 0x651d, 0x651e, 0x651f,
- 0x6520, 0x6521, 0x6522, 0x6523, 0x6524, 0x6525, 0x6526, 0x6527,
- 0x6528, 0x6529, 0x652a, 0x652b, 0x652c, 0x652d, 0x652e, 0x652f,
- 0x6530, 0x6531, 0x6532, 0x6533, 0x6534, 0x6535, 0x6536, 0x6537,
- 0x6538, 0x6539, 0x653a, 0x653b, 0x653c, 0x653d, 0x653e, 0x653f,
- 0x6540, 0x6541, 0x6542, 0x6543, 0x6544, 0x6545, 0x6546, 0x6547, /* 0x6540 */
- 0x6548, 0x6549, 0x654a, 0x654b, 0x654c, 0x654d, 0x654e, 0x654f,
- 0x6550, 0x6551, 0x6552, 0x6553, 0x6554, 0x6555, 0x6556, 0x6557,
- 0x6558, 0x6559, 0x655a, 0x655b, 0x655c, 0x655d, 0x655e, 0x655f,
- 0x6560, 0x6561, 0x6562, 0x6563, 0x6564, 0x6565, 0x6566, 0x6567,
- 0x6568, 0x6569, 0x656a, 0x656b, 0x656c, 0x656d, 0x656e, 0x656f,
- 0x6570, 0x6571, 0x6572, 0x6573, 0x6574, 0x6575, 0x6576, 0x6577,
- 0x6578, 0x6579, 0x657a, 0x657b, 0x657c, 0x657d, 0x657e, 0x657f,
- 0x6580, 0x6581, 0x6582, 0x6583, 0x6584, 0x6585, 0x6586, 0x6587, /* 0x6580 */
- 0x6588, 0x6589, 0x658a, 0x658b, 0x658c, 0x658d, 0x658e, 0x658f,
- 0x6590, 0x6591, 0x6592, 0x6593, 0x6594, 0x6595, 0x6596, 0x6597,
- 0x6598, 0x6599, 0x659a, 0x659b, 0x659c, 0x659d, 0x659e, 0x659f,
- 0x65a0, 0x65a1, 0x65a2, 0x65a3, 0x65a4, 0x65a5, 0x65a6, 0x65a7,
- 0x65a8, 0x65a9, 0x65aa, 0x65ab, 0x65ac, 0x65ad, 0x65ae, 0x65af,
- 0x65b0, 0x65b1, 0x65b2, 0x65b3, 0x65b4, 0x65b5, 0x65b6, 0x65b7,
- 0x65b8, 0x65b9, 0x65ba, 0x65bb, 0x65bc, 0x65bd, 0x65be, 0x65bf,
- 0x65c0, 0x65c1, 0x65c2, 0x65c3, 0x65c4, 0x65c5, 0x65c6, 0x65c7, /* 0x65c0 */
- 0x65c8, 0x65c9, 0x65ca, 0x65cb, 0x65cc, 0x65cd, 0x65ce, 0x65cf,
- 0x65d0, 0x65d1, 0x65d2, 0x65d3, 0x65d4, 0x65d5, 0x65d6, 0x65d7,
- 0x65d8, 0x65d9, 0x65da, 0x65db, 0x65dc, 0x65dd, 0x65de, 0x65df,
- 0x65e0, 0x65e1, 0x65e2, 0x65e3, 0x65e4, 0x65e5, 0x65e6, 0x65e7,
- 0x65e8, 0x65e9, 0x65ea, 0x65eb, 0x65ec, 0x65ed, 0x65ee, 0x65ef,
- 0x65f0, 0x65f1, 0x65f2, 0x65f3, 0x65f4, 0x65f5, 0x65f6, 0x65f7,
- 0x65f8, 0x65f9, 0x65fa, 0x65fb, 0x65fc, 0x65fd, 0x65fe, 0x65ff,
- 0x6600, 0x6601, 0x6602, 0x6603, 0x6604, 0x6605, 0x6606, 0x6607, /* 0x6600 */
- 0x6608, 0x6609, 0x660a, 0x660b, 0x660c, 0x660d, 0x660e, 0x660f,
- 0x6610, 0x6611, 0x6612, 0x6613, 0x6614, 0x6615, 0x6616, 0x6617,
- 0x6618, 0x6619, 0x661a, 0x661b, 0x661c, 0x661d, 0x661e, 0x661f,
- 0x6620, 0x6621, 0x6622, 0x6623, 0x6624, 0x6625, 0x6626, 0x6627,
- 0x6628, 0x6629, 0x662a, 0x662b, 0x662c, 0x662d, 0x662e, 0x662f,
- 0x6630, 0x6631, 0x6632, 0x6633, 0x6634, 0x6635, 0x6636, 0x6637,
- 0x6638, 0x6639, 0x663a, 0x663b, 0x663c, 0x663d, 0x663e, 0x663f,
- 0x6640, 0x6641, 0x6642, 0x6643, 0x6644, 0x6645, 0x6646, 0x6647, /* 0x6640 */
- 0x6648, 0x6649, 0x664a, 0x664b, 0x664c, 0x664d, 0x664e, 0x664f,
- 0x6650, 0x6651, 0x6652, 0x6653, 0x6654, 0x6655, 0x6656, 0x6657,
- 0x6658, 0x6659, 0x665a, 0x665b, 0x665c, 0x665d, 0x665e, 0x665f,
- 0x6660, 0x6661, 0x6662, 0x6663, 0x6664, 0x6665, 0x6666, 0x6667,
- 0x6668, 0x6669, 0x666a, 0x666b, 0x666c, 0x666d, 0x666e, 0x666f,
- 0x6670, 0x6671, 0x6672, 0x6673, 0x6674, 0x6675, 0x6676, 0x6677,
- 0x6678, 0x6679, 0x667a, 0x667b, 0x667c, 0x667d, 0x667e, 0x667f,
- 0x6680, 0x6681, 0x6682, 0x6683, 0x6684, 0x6685, 0x6686, 0x6687, /* 0x6680 */
- 0x6688, 0x6689, 0x668a, 0x668b, 0x668c, 0x668d, 0x668e, 0x668f,
- 0x6690, 0x6691, 0x6692, 0x6693, 0x6694, 0x6695, 0x6696, 0x6697,
- 0x6698, 0x6699, 0x669a, 0x669b, 0x669c, 0x669d, 0x669e, 0x669f,
- 0x66a0, 0x66a1, 0x66a2, 0x66a3, 0x66a4, 0x66a5, 0x66a6, 0x66a7,
- 0x66a8, 0x66a9, 0x66aa, 0x66ab, 0x66ac, 0x66ad, 0x66ae, 0x66af,
- 0x66b0, 0x66b1, 0x66b2, 0x66b3, 0x66b4, 0x66b5, 0x66b6, 0x66b7,
- 0x66b8, 0x66b9, 0x66ba, 0x66bb, 0x66bc, 0x66bd, 0x66be, 0x66bf,
- 0x66c0, 0x66c1, 0x66c2, 0x66c3, 0x66c4, 0x66c5, 0x66c6, 0x66c7, /* 0x66c0 */
- 0x66c8, 0x66c9, 0x66ca, 0x66cb, 0x66cc, 0x66cd, 0x66ce, 0x66cf,
- 0x66d0, 0x66d1, 0x66d2, 0x66d3, 0x66d4, 0x66d5, 0x66d6, 0x66d7,
- 0x66d8, 0x66d9, 0x66da, 0x66db, 0x66dc, 0x66dd, 0x66de, 0x66df,
- 0x66e0, 0x66e1, 0x66e2, 0x66e3, 0x66e4, 0x66e5, 0x66e6, 0x66e7,
- 0x66e8, 0x66e9, 0x66ea, 0x66eb, 0x66ec, 0x66ed, 0x66ee, 0x66ef,
- 0x66f0, 0x66f1, 0x66f2, 0x66f3, 0x66f4, 0x66f5, 0x66f6, 0x66f7,
- 0x66f8, 0x66f9, 0x66fa, 0x66fb, 0x66fc, 0x66fd, 0x66fe, 0x66ff,
- 0x6700, 0x6701, 0x6702, 0x6703, 0x6704, 0x6705, 0x6706, 0x6707, /* 0x6700 */
- 0x6708, 0x6709, 0x670a, 0x670b, 0x670c, 0x670d, 0x670e, 0x670f,
- 0x6710, 0x6711, 0x6712, 0x6713, 0x6714, 0x6715, 0x6716, 0x6717,
- 0x6718, 0x6719, 0x671a, 0x671b, 0x671c, 0x671d, 0x671e, 0x671f,
- 0x6720, 0x6721, 0x6722, 0x6723, 0x6724, 0x6725, 0x6726, 0x6727,
- 0x6728, 0x6729, 0x672a, 0x672b, 0x672c, 0x672d, 0x672e, 0x672f,
- 0x6730, 0x6731, 0x6732, 0x6733, 0x6734, 0x6735, 0x6736, 0x6737,
- 0x6738, 0x6739, 0x673a, 0x673b, 0x673c, 0x673d, 0x673e, 0x673f,
- 0x6740, 0x6741, 0x6742, 0x6743, 0x6744, 0x6745, 0x6746, 0x6747, /* 0x6740 */
- 0x6748, 0x6749, 0x674a, 0x674b, 0x674c, 0x674d, 0x674e, 0x674f,
- 0x6750, 0x6751, 0x6752, 0x6753, 0x6754, 0x6755, 0x6756, 0x6757,
- 0x6758, 0x6759, 0x675a, 0x675b, 0x675c, 0x675d, 0x675e, 0x675f,
- 0x6760, 0x6761, 0x6762, 0x6763, 0x6764, 0x6765, 0x6766, 0x6767,
- 0x6768, 0x6769, 0x676a, 0x676b, 0x676c, 0x676d, 0x676e, 0x676f,
- 0x6770, 0x6771, 0x6772, 0x6773, 0x6774, 0x6775, 0x6776, 0x6777,
- 0x6778, 0x6779, 0x677a, 0x677b, 0x677c, 0x677d, 0x677e, 0x677f,
- 0x6780, 0x6781, 0x6782, 0x6783, 0x6784, 0x6785, 0x6786, 0x6787, /* 0x6780 */
- 0x6788, 0x6789, 0x678a, 0x678b, 0x678c, 0x678d, 0x678e, 0x678f,
- 0x6790, 0x6791, 0x6792, 0x6793, 0x6794, 0x6795, 0x6796, 0x6797,
- 0x6798, 0x6799, 0x679a, 0x679b, 0x679c, 0x679d, 0x679e, 0x679f,
- 0x67a0, 0x67a1, 0x67a2, 0x67a3, 0x67a4, 0x67a5, 0x67a6, 0x67a7,
- 0x67a8, 0x67a9, 0x67aa, 0x67ab, 0x67ac, 0x67ad, 0x67ae, 0x67af,
- 0x67b0, 0x67b1, 0x67b2, 0x67b3, 0x67b4, 0x67b5, 0x67b6, 0x67b7,
- 0x67b8, 0x67b9, 0x67ba, 0x67bb, 0x67bc, 0x67bd, 0x67be, 0x67bf,
- 0x67c0, 0x67c1, 0x67c2, 0x67c3, 0x67c4, 0x67c5, 0x67c6, 0x67c7, /* 0x67c0 */
- 0x67c8, 0x67c9, 0x67ca, 0x67cb, 0x67cc, 0x67cd, 0x67ce, 0x67cf,
- 0x67d0, 0x67d1, 0x67d2, 0x67d3, 0x67d4, 0x67d5, 0x67d6, 0x67d7,
- 0x67d8, 0x67d9, 0x67da, 0x67db, 0x67dc, 0x67dd, 0x67de, 0x67df,
- 0x67e0, 0x67e1, 0x67e2, 0x67e3, 0x67e4, 0x67e5, 0x67e6, 0x67e7,
- 0x67e8, 0x67e9, 0x67ea, 0x67eb, 0x67ec, 0x67ed, 0x67ee, 0x67ef,
- 0x67f0, 0x67f1, 0x67f2, 0x67f3, 0x67f4, 0x67f5, 0x67f6, 0x67f7,
- 0x67f8, 0x67f9, 0x67fa, 0x67fb, 0x67fc, 0x67fd, 0x67fe, 0x67ff,
- 0x6800, 0x6801, 0x6802, 0x6803, 0x6804, 0x6805, 0x6806, 0x6807, /* 0x6800 */
- 0x6808, 0x6809, 0x680a, 0x680b, 0x680c, 0x680d, 0x680e, 0x680f,
- 0x6810, 0x6811, 0x6812, 0x6813, 0x6814, 0x6815, 0x6816, 0x6817,
- 0x6818, 0x6819, 0x681a, 0x681b, 0x681c, 0x681d, 0x681e, 0x681f,
- 0x6820, 0x6821, 0x6822, 0x6823, 0x6824, 0x6825, 0x6826, 0x6827,
- 0x6828, 0x6829, 0x682a, 0x682b, 0x682c, 0x682d, 0x682e, 0x682f,
- 0x6830, 0x6831, 0x6832, 0x6833, 0x6834, 0x6835, 0x6836, 0x6837,
- 0x6838, 0x6839, 0x683a, 0x683b, 0x683c, 0x683d, 0x683e, 0x683f,
- 0x6840, 0x6841, 0x6842, 0x6843, 0x6844, 0x6845, 0x6846, 0x6847, /* 0x6840 */
- 0x6848, 0x6849, 0x684a, 0x684b, 0x684c, 0x684d, 0x684e, 0x684f,
- 0x6850, 0x6851, 0x6852, 0x6853, 0x6854, 0x6855, 0x6856, 0x6857,
- 0x6858, 0x6859, 0x685a, 0x685b, 0x685c, 0x685d, 0x685e, 0x685f,
- 0x6860, 0x6861, 0x6862, 0x6863, 0x6864, 0x6865, 0x6866, 0x6867,
- 0x6868, 0x6869, 0x686a, 0x686b, 0x686c, 0x686d, 0x686e, 0x686f,
- 0x6870, 0x6871, 0x6872, 0x6873, 0x6874, 0x6875, 0x6876, 0x6877,
- 0x6878, 0x6879, 0x687a, 0x687b, 0x687c, 0x687d, 0x687e, 0x687f,
- 0x6880, 0x6881, 0x6882, 0x6883, 0x6884, 0x6885, 0x6886, 0x6887, /* 0x6880 */
- 0x6888, 0x6889, 0x688a, 0x688b, 0x688c, 0x688d, 0x688e, 0x688f,
- 0x6890, 0x6891, 0x6892, 0x6893, 0x6894, 0x6895, 0x6896, 0x6897,
- 0x6898, 0x6899, 0x689a, 0x689b, 0x689c, 0x689d, 0x689e, 0x689f,
- 0x68a0, 0x68a1, 0x68a2, 0x68a3, 0x68a4, 0x68a5, 0x68a6, 0x68a7,
- 0x68a8, 0x68a9, 0x68aa, 0x68ab, 0x68ac, 0x68ad, 0x68ae, 0x68af,
- 0x68b0, 0x68b1, 0x68b2, 0x68b3, 0x68b4, 0x68b5, 0x68b6, 0x68b7,
- 0x68b8, 0x68b9, 0x68ba, 0x68bb, 0x68bc, 0x68bd, 0x68be, 0x68bf,
- 0x68c0, 0x68c1, 0x68c2, 0x68c3, 0x68c4, 0x68c5, 0x68c6, 0x68c7, /* 0x68c0 */
- 0x68c8, 0x68c9, 0x68ca, 0x68cb, 0x68cc, 0x68cd, 0x68ce, 0x68cf,
- 0x68d0, 0x68d1, 0x68d2, 0x68d3, 0x68d4, 0x68d5, 0x68d6, 0x68d7,
- 0x68d8, 0x68d9, 0x68da, 0x68db, 0x68dc, 0x68dd, 0x68de, 0x68df,
- 0x68e0, 0x68e1, 0x68e2, 0x68e3, 0x68e4, 0x68e5, 0x68e6, 0x68e7,
- 0x68e8, 0x68e9, 0x68ea, 0x68eb, 0x68ec, 0x68ed, 0x68ee, 0x68ef,
- 0x68f0, 0x68f1, 0x68f2, 0x68f3, 0x68f4, 0x68f5, 0x68f6, 0x68f7,
- 0x68f8, 0x68f9, 0x68fa, 0x68fb, 0x68fc, 0x68fd, 0x68fe, 0x68ff,
- 0x6900, 0x6901, 0x6902, 0x6903, 0x6904, 0x6905, 0x6906, 0x6907, /* 0x6900 */
- 0x6908, 0x6909, 0x690a, 0x690b, 0x690c, 0x690d, 0x690e, 0x690f,
- 0x6910, 0x6911, 0x6912, 0x6913, 0x6914, 0x6915, 0x6916, 0x6917,
- 0x6918, 0x6919, 0x691a, 0x691b, 0x691c, 0x691d, 0x691e, 0x691f,
- 0x6920, 0x6921, 0x6922, 0x6923, 0x6924, 0x6925, 0x6926, 0x6927,
- 0x6928, 0x6929, 0x692a, 0x692b, 0x692c, 0x692d, 0x692e, 0x692f,
- 0x6930, 0x6931, 0x6932, 0x6933, 0x6934, 0x6935, 0x6936, 0x6937,
- 0x6938, 0x6939, 0x693a, 0x693b, 0x693c, 0x693d, 0x693e, 0x693f,
- 0x6940, 0x6941, 0x6942, 0x6943, 0x6944, 0x6945, 0x6946, 0x6947, /* 0x6940 */
- 0x6948, 0x6949, 0x694a, 0x694b, 0x694c, 0x694d, 0x694e, 0x694f,
- 0x6950, 0x6951, 0x6952, 0x6953, 0x6954, 0x6955, 0x6956, 0x6957,
- 0x6958, 0x6959, 0x695a, 0x695b, 0x695c, 0x695d, 0x695e, 0x695f,
- 0x6960, 0x6961, 0x6962, 0x6963, 0x6964, 0x6965, 0x6966, 0x6967,
- 0x6968, 0x6969, 0x696a, 0x696b, 0x696c, 0x696d, 0x696e, 0x696f,
- 0x6970, 0x6971, 0x6972, 0x6973, 0x6974, 0x6975, 0x6976, 0x6977,
- 0x6978, 0x6979, 0x697a, 0x697b, 0x697c, 0x697d, 0x697e, 0x697f,
- 0x6980, 0x6981, 0x6982, 0x6983, 0x6984, 0x6985, 0x6986, 0x6987, /* 0x6980 */
- 0x6988, 0x6989, 0x698a, 0x698b, 0x698c, 0x698d, 0x698e, 0x698f,
- 0x6990, 0x6991, 0x6992, 0x6993, 0x6994, 0x6995, 0x6996, 0x6997,
- 0x6998, 0x6999, 0x699a, 0x699b, 0x699c, 0x699d, 0x699e, 0x699f,
- 0x69a0, 0x69a1, 0x69a2, 0x69a3, 0x69a4, 0x69a5, 0x69a6, 0x69a7,
- 0x69a8, 0x69a9, 0x69aa, 0x69ab, 0x69ac, 0x69ad, 0x69ae, 0x69af,
- 0x69b0, 0x69b1, 0x69b2, 0x69b3, 0x69b4, 0x69b5, 0x69b6, 0x69b7,
- 0x69b8, 0x69b9, 0x69ba, 0x69bb, 0x69bc, 0x69bd, 0x69be, 0x69bf,
- 0x69c0, 0x69c1, 0x69c2, 0x69c3, 0x69c4, 0x69c5, 0x69c6, 0x69c7, /* 0x69c0 */
- 0x69c8, 0x69c9, 0x69ca, 0x69cb, 0x69cc, 0x69cd, 0x69ce, 0x69cf,
- 0x69d0, 0x69d1, 0x69d2, 0x69d3, 0x69d4, 0x69d5, 0x69d6, 0x69d7,
- 0x69d8, 0x69d9, 0x69da, 0x69db, 0x69dc, 0x69dd, 0x69de, 0x69df,
- 0x69e0, 0x69e1, 0x69e2, 0x69e3, 0x69e4, 0x69e5, 0x69e6, 0x69e7,
- 0x69e8, 0x69e9, 0x69ea, 0x69eb, 0x69ec, 0x69ed, 0x69ee, 0x69ef,
- 0x69f0, 0x69f1, 0x69f2, 0x69f3, 0x69f4, 0x69f5, 0x69f6, 0x69f7,
- 0x69f8, 0x69f9, 0x69fa, 0x69fb, 0x69fc, 0x69fd, 0x69fe, 0x69ff,
- 0x6a00, 0x6a01, 0x6a02, 0x6a03, 0x6a04, 0x6a05, 0x6a06, 0x6a07, /* 0x6a00 */
- 0x6a08, 0x6a09, 0x6a0a, 0x6a0b, 0x6a0c, 0x6a0d, 0x6a0e, 0x6a0f,
- 0x6a10, 0x6a11, 0x6a12, 0x6a13, 0x6a14, 0x6a15, 0x6a16, 0x6a17,
- 0x6a18, 0x6a19, 0x6a1a, 0x6a1b, 0x6a1c, 0x6a1d, 0x6a1e, 0x6a1f,
- 0x6a20, 0x6a21, 0x6a22, 0x6a23, 0x6a24, 0x6a25, 0x6a26, 0x6a27,
- 0x6a28, 0x6a29, 0x6a2a, 0x6a2b, 0x6a2c, 0x6a2d, 0x6a2e, 0x6a2f,
- 0x6a30, 0x6a31, 0x6a32, 0x6a33, 0x6a34, 0x6a35, 0x6a36, 0x6a37,
- 0x6a38, 0x6a39, 0x6a3a, 0x6a3b, 0x6a3c, 0x6a3d, 0x6a3e, 0x6a3f,
- 0x6a40, 0x6a41, 0x6a42, 0x6a43, 0x6a44, 0x6a45, 0x6a46, 0x6a47, /* 0x6a40 */
- 0x6a48, 0x6a49, 0x6a4a, 0x6a4b, 0x6a4c, 0x6a4d, 0x6a4e, 0x6a4f,
- 0x6a50, 0x6a51, 0x6a52, 0x6a53, 0x6a54, 0x6a55, 0x6a56, 0x6a57,
- 0x6a58, 0x6a59, 0x6a5a, 0x6a5b, 0x6a5c, 0x6a5d, 0x6a5e, 0x6a5f,
- 0x6a60, 0x6a61, 0x6a62, 0x6a63, 0x6a64, 0x6a65, 0x6a66, 0x6a67,
- 0x6a68, 0x6a69, 0x6a6a, 0x6a6b, 0x6a6c, 0x6a6d, 0x6a6e, 0x6a6f,
- 0x6a70, 0x6a71, 0x6a72, 0x6a73, 0x6a74, 0x6a75, 0x6a76, 0x6a77,
- 0x6a78, 0x6a79, 0x6a7a, 0x6a7b, 0x6a7c, 0x6a7d, 0x6a7e, 0x6a7f,
- 0x6a80, 0x6a81, 0x6a82, 0x6a83, 0x6a84, 0x6a85, 0x6a86, 0x6a87, /* 0x6a80 */
- 0x6a88, 0x6a89, 0x6a8a, 0x6a8b, 0x6a8c, 0x6a8d, 0x6a8e, 0x6a8f,
- 0x6a90, 0x6a91, 0x6a92, 0x6a93, 0x6a94, 0x6a95, 0x6a96, 0x6a97,
- 0x6a98, 0x6a99, 0x6a9a, 0x6a9b, 0x6a9c, 0x6a9d, 0x6a9e, 0x6a9f,
- 0x6aa0, 0x6aa1, 0x6aa2, 0x6aa3, 0x6aa4, 0x6aa5, 0x6aa6, 0x6aa7,
- 0x6aa8, 0x6aa9, 0x6aaa, 0x6aab, 0x6aac, 0x6aad, 0x6aae, 0x6aaf,
- 0x6ab0, 0x6ab1, 0x6ab2, 0x6ab3, 0x6ab4, 0x6ab5, 0x6ab6, 0x6ab7,
- 0x6ab8, 0x6ab9, 0x6aba, 0x6abb, 0x6abc, 0x6abd, 0x6abe, 0x6abf,
- 0x6ac0, 0x6ac1, 0x6ac2, 0x6ac3, 0x6ac4, 0x6ac5, 0x6ac6, 0x6ac7, /* 0x6ac0 */
- 0x6ac8, 0x6ac9, 0x6aca, 0x6acb, 0x6acc, 0x6acd, 0x6ace, 0x6acf,
- 0x6ad0, 0x6ad1, 0x6ad2, 0x6ad3, 0x6ad4, 0x6ad5, 0x6ad6, 0x6ad7,
- 0x6ad8, 0x6ad9, 0x6ada, 0x6adb, 0x6adc, 0x6add, 0x6ade, 0x6adf,
- 0x6ae0, 0x6ae1, 0x6ae2, 0x6ae3, 0x6ae4, 0x6ae5, 0x6ae6, 0x6ae7,
- 0x6ae8, 0x6ae9, 0x6aea, 0x6aeb, 0x6aec, 0x6aed, 0x6aee, 0x6aef,
- 0x6af0, 0x6af1, 0x6af2, 0x6af3, 0x6af4, 0x6af5, 0x6af6, 0x6af7,
- 0x6af8, 0x6af9, 0x6afa, 0x6afb, 0x6afc, 0x6afd, 0x6afe, 0x6aff,
- 0x6b00, 0x6b01, 0x6b02, 0x6b03, 0x6b04, 0x6b05, 0x6b06, 0x6b07, /* 0x6b00 */
- 0x6b08, 0x6b09, 0x6b0a, 0x6b0b, 0x6b0c, 0x6b0d, 0x6b0e, 0x6b0f,
- 0x6b10, 0x6b11, 0x6b12, 0x6b13, 0x6b14, 0x6b15, 0x6b16, 0x6b17,
- 0x6b18, 0x6b19, 0x6b1a, 0x6b1b, 0x6b1c, 0x6b1d, 0x6b1e, 0x6b1f,
- 0x6b20, 0x6b21, 0x6b22, 0x6b23, 0x6b24, 0x6b25, 0x6b26, 0x6b27,
- 0x6b28, 0x6b29, 0x6b2a, 0x6b2b, 0x6b2c, 0x6b2d, 0x6b2e, 0x6b2f,
- 0x6b30, 0x6b31, 0x6b32, 0x6b33, 0x6b34, 0x6b35, 0x6b36, 0x6b37,
- 0x6b38, 0x6b39, 0x6b3a, 0x6b3b, 0x6b3c, 0x6b3d, 0x6b3e, 0x6b3f,
- 0x6b40, 0x6b41, 0x6b42, 0x6b43, 0x6b44, 0x6b45, 0x6b46, 0x6b47, /* 0x6b40 */
- 0x6b48, 0x6b49, 0x6b4a, 0x6b4b, 0x6b4c, 0x6b4d, 0x6b4e, 0x6b4f,
- 0x6b50, 0x6b51, 0x6b52, 0x6b53, 0x6b54, 0x6b55, 0x6b56, 0x6b57,
- 0x6b58, 0x6b59, 0x6b5a, 0x6b5b, 0x6b5c, 0x6b5d, 0x6b5e, 0x6b5f,
- 0x6b60, 0x6b61, 0x6b62, 0x6b63, 0x6b64, 0x6b65, 0x6b66, 0x6b67,
- 0x6b68, 0x6b69, 0x6b6a, 0x6b6b, 0x6b6c, 0x6b6d, 0x6b6e, 0x6b6f,
- 0x6b70, 0x6b71, 0x6b72, 0x6b73, 0x6b74, 0x6b75, 0x6b76, 0x6b77,
- 0x6b78, 0x6b79, 0x6b7a, 0x6b7b, 0x6b7c, 0x6b7d, 0x6b7e, 0x6b7f,
- 0x6b80, 0x6b81, 0x6b82, 0x6b83, 0x6b84, 0x6b85, 0x6b86, 0x6b87, /* 0x6b80 */
- 0x6b88, 0x6b89, 0x6b8a, 0x6b8b, 0x6b8c, 0x6b8d, 0x6b8e, 0x6b8f,
- 0x6b90, 0x6b91, 0x6b92, 0x6b93, 0x6b94, 0x6b95, 0x6b96, 0x6b97,
- 0x6b98, 0x6b99, 0x6b9a, 0x6b9b, 0x6b9c, 0x6b9d, 0x6b9e, 0x6b9f,
- 0x6ba0, 0x6ba1, 0x6ba2, 0x6ba3, 0x6ba4, 0x6ba5, 0x6ba6, 0x6ba7,
- 0x6ba8, 0x6ba9, 0x6baa, 0x6bab, 0x6bac, 0x6bad, 0x6bae, 0x6baf,
- 0x6bb0, 0x6bb1, 0x6bb2, 0x6bb3, 0x6bb4, 0x6bb5, 0x6bb6, 0x6bb7,
- 0x6bb8, 0x6bb9, 0x6bba, 0x6bbb, 0x6bbc, 0x6bbd, 0x6bbe, 0x6bbf,
- 0x6bc0, 0x6bc1, 0x6bc2, 0x6bc3, 0x6bc4, 0x6bc5, 0x6bc6, 0x6bc7, /* 0x6bc0 */
- 0x6bc8, 0x6bc9, 0x6bca, 0x6bcb, 0x6bcc, 0x6bcd, 0x6bce, 0x6bcf,
- 0x6bd0, 0x6bd1, 0x6bd2, 0x6bd3, 0x6bd4, 0x6bd5, 0x6bd6, 0x6bd7,
- 0x6bd8, 0x6bd9, 0x6bda, 0x6bdb, 0x6bdc, 0x6bdd, 0x6bde, 0x6bdf,
- 0x6be0, 0x6be1, 0x6be2, 0x6be3, 0x6be4, 0x6be5, 0x6be6, 0x6be7,
- 0x6be8, 0x6be9, 0x6bea, 0x6beb, 0x6bec, 0x6bed, 0x6bee, 0x6bef,
- 0x6bf0, 0x6bf1, 0x6bf2, 0x6bf3, 0x6bf4, 0x6bf5, 0x6bf6, 0x6bf7,
- 0x6bf8, 0x6bf9, 0x6bfa, 0x6bfb, 0x6bfc, 0x6bfd, 0x6bfe, 0x6bff,
- 0x6c00, 0x6c01, 0x6c02, 0x6c03, 0x6c04, 0x6c05, 0x6c06, 0x6c07, /* 0x6c00 */
- 0x6c08, 0x6c09, 0x6c0a, 0x6c0b, 0x6c0c, 0x6c0d, 0x6c0e, 0x6c0f,
- 0x6c10, 0x6c11, 0x6c12, 0x6c13, 0x6c14, 0x6c15, 0x6c16, 0x6c17,
- 0x6c18, 0x6c19, 0x6c1a, 0x6c1b, 0x6c1c, 0x6c1d, 0x6c1e, 0x6c1f,
- 0x6c20, 0x6c21, 0x6c22, 0x6c23, 0x6c24, 0x6c25, 0x6c26, 0x6c27,
- 0x6c28, 0x6c29, 0x6c2a, 0x6c2b, 0x6c2c, 0x6c2d, 0x6c2e, 0x6c2f,
- 0x6c30, 0x6c31, 0x6c32, 0x6c33, 0x6c34, 0x6c35, 0x6c36, 0x6c37,
- 0x6c38, 0x6c39, 0x6c3a, 0x6c3b, 0x6c3c, 0x6c3d, 0x6c3e, 0x6c3f,
- 0x6c40, 0x6c41, 0x6c42, 0x6c43, 0x6c44, 0x6c45, 0x6c46, 0x6c47, /* 0x6c40 */
- 0x6c48, 0x6c49, 0x6c4a, 0x6c4b, 0x6c4c, 0x6c4d, 0x6c4e, 0x6c4f,
- 0x6c50, 0x6c51, 0x6c52, 0x6c53, 0x6c54, 0x6c55, 0x6c56, 0x6c57,
- 0x6c58, 0x6c59, 0x6c5a, 0x6c5b, 0x6c5c, 0x6c5d, 0x6c5e, 0x6c5f,
- 0x6c60, 0x6c61, 0x6c62, 0x6c63, 0x6c64, 0x6c65, 0x6c66, 0x6c67,
- 0x6c68, 0x6c69, 0x6c6a, 0x6c6b, 0x6c6c, 0x6c6d, 0x6c6e, 0x6c6f,
- 0x6c70, 0x6c71, 0x6c72, 0x6c73, 0x6c74, 0x6c75, 0x6c76, 0x6c77,
- 0x6c78, 0x6c79, 0x6c7a, 0x6c7b, 0x6c7c, 0x6c7d, 0x6c7e, 0x6c7f,
- 0x6c80, 0x6c81, 0x6c82, 0x6c83, 0x6c84, 0x6c85, 0x6c86, 0x6c87, /* 0x6c80 */
- 0x6c88, 0x6c89, 0x6c8a, 0x6c8b, 0x6c8c, 0x6c8d, 0x6c8e, 0x6c8f,
- 0x6c90, 0x6c91, 0x6c92, 0x6c93, 0x6c94, 0x6c95, 0x6c96, 0x6c97,
- 0x6c98, 0x6c99, 0x6c9a, 0x6c9b, 0x6c9c, 0x6c9d, 0x6c9e, 0x6c9f,
- 0x6ca0, 0x6ca1, 0x6ca2, 0x6ca3, 0x6ca4, 0x6ca5, 0x6ca6, 0x6ca7,
- 0x6ca8, 0x6ca9, 0x6caa, 0x6cab, 0x6cac, 0x6cad, 0x6cae, 0x6caf,
- 0x6cb0, 0x6cb1, 0x6cb2, 0x6cb3, 0x6cb4, 0x6cb5, 0x6cb6, 0x6cb7,
- 0x6cb8, 0x6cb9, 0x6cba, 0x6cbb, 0x6cbc, 0x6cbd, 0x6cbe, 0x6cbf,
- 0x6cc0, 0x6cc1, 0x6cc2, 0x6cc3, 0x6cc4, 0x6cc5, 0x6cc6, 0x6cc7, /* 0x6cc0 */
- 0x6cc8, 0x6cc9, 0x6cca, 0x6ccb, 0x6ccc, 0x6ccd, 0x6cce, 0x6ccf,
- 0x6cd0, 0x6cd1, 0x6cd2, 0x6cd3, 0x6cd4, 0x6cd5, 0x6cd6, 0x6cd7,
- 0x6cd8, 0x6cd9, 0x6cda, 0x6cdb, 0x6cdc, 0x6cdd, 0x6cde, 0x6cdf,
- 0x6ce0, 0x6ce1, 0x6ce2, 0x6ce3, 0x6ce4, 0x6ce5, 0x6ce6, 0x6ce7,
- 0x6ce8, 0x6ce9, 0x6cea, 0x6ceb, 0x6cec, 0x6ced, 0x6cee, 0x6cef,
- 0x6cf0, 0x6cf1, 0x6cf2, 0x6cf3, 0x6cf4, 0x6cf5, 0x6cf6, 0x6cf7,
- 0x6cf8, 0x6cf9, 0x6cfa, 0x6cfb, 0x6cfc, 0x6cfd, 0x6cfe, 0x6cff,
- 0x6d00, 0x6d01, 0x6d02, 0x6d03, 0x6d04, 0x6d05, 0x6d06, 0x6d07, /* 0x6d00 */
- 0x6d08, 0x6d09, 0x6d0a, 0x6d0b, 0x6d0c, 0x6d0d, 0x6d0e, 0x6d0f,
- 0x6d10, 0x6d11, 0x6d12, 0x6d13, 0x6d14, 0x6d15, 0x6d16, 0x6d17,
- 0x6d18, 0x6d19, 0x6d1a, 0x6d1b, 0x6d1c, 0x6d1d, 0x6d1e, 0x6d1f,
- 0x6d20, 0x6d21, 0x6d22, 0x6d23, 0x6d24, 0x6d25, 0x6d26, 0x6d27,
- 0x6d28, 0x6d29, 0x6d2a, 0x6d2b, 0x6d2c, 0x6d2d, 0x6d2e, 0x6d2f,
- 0x6d30, 0x6d31, 0x6d32, 0x6d33, 0x6d34, 0x6d35, 0x6d36, 0x6d37,
- 0x6d38, 0x6d39, 0x6d3a, 0x6d3b, 0x6d3c, 0x6d3d, 0x6d3e, 0x6d3f,
- 0x6d40, 0x6d41, 0x6d42, 0x6d43, 0x6d44, 0x6d45, 0x6d46, 0x6d47, /* 0x6d40 */
- 0x6d48, 0x6d49, 0x6d4a, 0x6d4b, 0x6d4c, 0x6d4d, 0x6d4e, 0x6d4f,
- 0x6d50, 0x6d51, 0x6d52, 0x6d53, 0x6d54, 0x6d55, 0x6d56, 0x6d57,
- 0x6d58, 0x6d59, 0x6d5a, 0x6d5b, 0x6d5c, 0x6d5d, 0x6d5e, 0x6d5f,
- 0x6d60, 0x6d61, 0x6d62, 0x6d63, 0x6d64, 0x6d65, 0x6d66, 0x6d67,
- 0x6d68, 0x6d69, 0x6d6a, 0x6d6b, 0x6d6c, 0x6d6d, 0x6d6e, 0x6d6f,
- 0x6d70, 0x6d71, 0x6d72, 0x6d73, 0x6d74, 0x6d75, 0x6d76, 0x6d77,
- 0x6d78, 0x6d79, 0x6d7a, 0x6d7b, 0x6d7c, 0x6d7d, 0x6d7e, 0x6d7f,
- 0x6d80, 0x6d81, 0x6d82, 0x6d83, 0x6d84, 0x6d85, 0x6d86, 0x6d87, /* 0x6d80 */
- 0x6d88, 0x6d89, 0x6d8a, 0x6d8b, 0x6d8c, 0x6d8d, 0x6d8e, 0x6d8f,
- 0x6d90, 0x6d91, 0x6d92, 0x6d93, 0x6d94, 0x6d95, 0x6d96, 0x6d97,
- 0x6d98, 0x6d99, 0x6d9a, 0x6d9b, 0x6d9c, 0x6d9d, 0x6d9e, 0x6d9f,
- 0x6da0, 0x6da1, 0x6da2, 0x6da3, 0x6da4, 0x6da5, 0x6da6, 0x6da7,
- 0x6da8, 0x6da9, 0x6daa, 0x6dab, 0x6dac, 0x6dad, 0x6dae, 0x6daf,
- 0x6db0, 0x6db1, 0x6db2, 0x6db3, 0x6db4, 0x6db5, 0x6db6, 0x6db7,
- 0x6db8, 0x6db9, 0x6dba, 0x6dbb, 0x6dbc, 0x6dbd, 0x6dbe, 0x6dbf,
- 0x6dc0, 0x6dc1, 0x6dc2, 0x6dc3, 0x6dc4, 0x6dc5, 0x6dc6, 0x6dc7, /* 0x6dc0 */
- 0x6dc8, 0x6dc9, 0x6dca, 0x6dcb, 0x6dcc, 0x6dcd, 0x6dce, 0x6dcf,
- 0x6dd0, 0x6dd1, 0x6dd2, 0x6dd3, 0x6dd4, 0x6dd5, 0x6dd6, 0x6dd7,
- 0x6dd8, 0x6dd9, 0x6dda, 0x6ddb, 0x6ddc, 0x6ddd, 0x6dde, 0x6ddf,
- 0x6de0, 0x6de1, 0x6de2, 0x6de3, 0x6de4, 0x6de5, 0x6de6, 0x6de7,
- 0x6de8, 0x6de9, 0x6dea, 0x6deb, 0x6dec, 0x6ded, 0x6dee, 0x6def,
- 0x6df0, 0x6df1, 0x6df2, 0x6df3, 0x6df4, 0x6df5, 0x6df6, 0x6df7,
- 0x6df8, 0x6df9, 0x6dfa, 0x6dfb, 0x6dfc, 0x6dfd, 0x6dfe, 0x6dff,
- 0x6e00, 0x6e01, 0x6e02, 0x6e03, 0x6e04, 0x6e05, 0x6e06, 0x6e07, /* 0x6e00 */
- 0x6e08, 0x6e09, 0x6e0a, 0x6e0b, 0x6e0c, 0x6e0d, 0x6e0e, 0x6e0f,
- 0x6e10, 0x6e11, 0x6e12, 0x6e13, 0x6e14, 0x6e15, 0x6e16, 0x6e17,
- 0x6e18, 0x6e19, 0x6e1a, 0x6e1b, 0x6e1c, 0x6e1d, 0x6e1e, 0x6e1f,
- 0x6e20, 0x6e21, 0x6e22, 0x6e23, 0x6e24, 0x6e25, 0x6e26, 0x6e27,
- 0x6e28, 0x6e29, 0x6e2a, 0x6e2b, 0x6e2c, 0x6e2d, 0x6e2e, 0x6e2f,
- 0x6e30, 0x6e31, 0x6e32, 0x6e33, 0x6e34, 0x6e35, 0x6e36, 0x6e37,
- 0x6e38, 0x6e39, 0x6e3a, 0x6e3b, 0x6e3c, 0x6e3d, 0x6e3e, 0x6e3f,
- 0x6e40, 0x6e41, 0x6e42, 0x6e43, 0x6e44, 0x6e45, 0x6e46, 0x6e47, /* 0x6e40 */
- 0x6e48, 0x6e49, 0x6e4a, 0x6e4b, 0x6e4c, 0x6e4d, 0x6e4e, 0x6e4f,
- 0x6e50, 0x6e51, 0x6e52, 0x6e53, 0x6e54, 0x6e55, 0x6e56, 0x6e57,
- 0x6e58, 0x6e59, 0x6e5a, 0x6e5b, 0x6e5c, 0x6e5d, 0x6e5e, 0x6e5f,
- 0x6e60, 0x6e61, 0x6e62, 0x6e63, 0x6e64, 0x6e65, 0x6e66, 0x6e67,
- 0x6e68, 0x6e69, 0x6e6a, 0x6e6b, 0x6e6c, 0x6e6d, 0x6e6e, 0x6e6f,
- 0x6e70, 0x6e71, 0x6e72, 0x6e73, 0x6e74, 0x6e75, 0x6e76, 0x6e77,
- 0x6e78, 0x6e79, 0x6e7a, 0x6e7b, 0x6e7c, 0x6e7d, 0x6e7e, 0x6e7f,
- 0x6e80, 0x6e81, 0x6e82, 0x6e83, 0x6e84, 0x6e85, 0x6e86, 0x6e87, /* 0x6e80 */
- 0x6e88, 0x6e89, 0x6e8a, 0x6e8b, 0x6e8c, 0x6e8d, 0x6e8e, 0x6e8f,
- 0x6e90, 0x6e91, 0x6e92, 0x6e93, 0x6e94, 0x6e95, 0x6e96, 0x6e97,
- 0x6e98, 0x6e99, 0x6e9a, 0x6e9b, 0x6e9c, 0x6e9d, 0x6e9e, 0x6e9f,
- 0x6ea0, 0x6ea1, 0x6ea2, 0x6ea3, 0x6ea4, 0x6ea5, 0x6ea6, 0x6ea7,
- 0x6ea8, 0x6ea9, 0x6eaa, 0x6eab, 0x6eac, 0x6ead, 0x6eae, 0x6eaf,
- 0x6eb0, 0x6eb1, 0x6eb2, 0x6eb3, 0x6eb4, 0x6eb5, 0x6eb6, 0x6eb7,
- 0x6eb8, 0x6eb9, 0x6eba, 0x6ebb, 0x6ebc, 0x6ebd, 0x6ebe, 0x6ebf,
- 0x6ec0, 0x6ec1, 0x6ec2, 0x6ec3, 0x6ec4, 0x6ec5, 0x6ec6, 0x6ec7, /* 0x6ec0 */
- 0x6ec8, 0x6ec9, 0x6eca, 0x6ecb, 0x6ecc, 0x6ecd, 0x6ece, 0x6ecf,
- 0x6ed0, 0x6ed1, 0x6ed2, 0x6ed3, 0x6ed4, 0x6ed5, 0x6ed6, 0x6ed7,
- 0x6ed8, 0x6ed9, 0x6eda, 0x6edb, 0x6edc, 0x6edd, 0x6ede, 0x6edf,
- 0x6ee0, 0x6ee1, 0x6ee2, 0x6ee3, 0x6ee4, 0x6ee5, 0x6ee6, 0x6ee7,
- 0x6ee8, 0x6ee9, 0x6eea, 0x6eeb, 0x6eec, 0x6eed, 0x6eee, 0x6eef,
- 0x6ef0, 0x6ef1, 0x6ef2, 0x6ef3, 0x6ef4, 0x6ef5, 0x6ef6, 0x6ef7,
- 0x6ef8, 0x6ef9, 0x6efa, 0x6efb, 0x6efc, 0x6efd, 0x6efe, 0x6eff,
- 0x6f00, 0x6f01, 0x6f02, 0x6f03, 0x6f04, 0x6f05, 0x6f06, 0x6f07, /* 0x6f00 */
- 0x6f08, 0x6f09, 0x6f0a, 0x6f0b, 0x6f0c, 0x6f0d, 0x6f0e, 0x6f0f,
- 0x6f10, 0x6f11, 0x6f12, 0x6f13, 0x6f14, 0x6f15, 0x6f16, 0x6f17,
- 0x6f18, 0x6f19, 0x6f1a, 0x6f1b, 0x6f1c, 0x6f1d, 0x6f1e, 0x6f1f,
- 0x6f20, 0x6f21, 0x6f22, 0x6f23, 0x6f24, 0x6f25, 0x6f26, 0x6f27,
- 0x6f28, 0x6f29, 0x6f2a, 0x6f2b, 0x6f2c, 0x6f2d, 0x6f2e, 0x6f2f,
- 0x6f30, 0x6f31, 0x6f32, 0x6f33, 0x6f34, 0x6f35, 0x6f36, 0x6f37,
- 0x6f38, 0x6f39, 0x6f3a, 0x6f3b, 0x6f3c, 0x6f3d, 0x6f3e, 0x6f3f,
- 0x6f40, 0x6f41, 0x6f42, 0x6f43, 0x6f44, 0x6f45, 0x6f46, 0x6f47, /* 0x6f40 */
- 0x6f48, 0x6f49, 0x6f4a, 0x6f4b, 0x6f4c, 0x6f4d, 0x6f4e, 0x6f4f,
- 0x6f50, 0x6f51, 0x6f52, 0x6f53, 0x6f54, 0x6f55, 0x6f56, 0x6f57,
- 0x6f58, 0x6f59, 0x6f5a, 0x6f5b, 0x6f5c, 0x6f5d, 0x6f5e, 0x6f5f,
- 0x6f60, 0x6f61, 0x6f62, 0x6f63, 0x6f64, 0x6f65, 0x6f66, 0x6f67,
- 0x6f68, 0x6f69, 0x6f6a, 0x6f6b, 0x6f6c, 0x6f6d, 0x6f6e, 0x6f6f,
- 0x6f70, 0x6f71, 0x6f72, 0x6f73, 0x6f74, 0x6f75, 0x6f76, 0x6f77,
- 0x6f78, 0x6f79, 0x6f7a, 0x6f7b, 0x6f7c, 0x6f7d, 0x6f7e, 0x6f7f,
- 0x6f80, 0x6f81, 0x6f82, 0x6f83, 0x6f84, 0x6f85, 0x6f86, 0x6f87, /* 0x6f80 */
- 0x6f88, 0x6f89, 0x6f8a, 0x6f8b, 0x6f8c, 0x6f8d, 0x6f8e, 0x6f8f,
- 0x6f90, 0x6f91, 0x6f92, 0x6f93, 0x6f94, 0x6f95, 0x6f96, 0x6f97,
- 0x6f98, 0x6f99, 0x6f9a, 0x6f9b, 0x6f9c, 0x6f9d, 0x6f9e, 0x6f9f,
- 0x6fa0, 0x6fa1, 0x6fa2, 0x6fa3, 0x6fa4, 0x6fa5, 0x6fa6, 0x6fa7,
- 0x6fa8, 0x6fa9, 0x6faa, 0x6fab, 0x6fac, 0x6fad, 0x6fae, 0x6faf,
- 0x6fb0, 0x6fb1, 0x6fb2, 0x6fb3, 0x6fb4, 0x6fb5, 0x6fb6, 0x6fb7,
- 0x6fb8, 0x6fb9, 0x6fba, 0x6fbb, 0x6fbc, 0x6fbd, 0x6fbe, 0x6fbf,
- 0x6fc0, 0x6fc1, 0x6fc2, 0x6fc3, 0x6fc4, 0x6fc5, 0x6fc6, 0x6fc7, /* 0x6fc0 */
- 0x6fc8, 0x6fc9, 0x6fca, 0x6fcb, 0x6fcc, 0x6fcd, 0x6fce, 0x6fcf,
- 0x6fd0, 0x6fd1, 0x6fd2, 0x6fd3, 0x6fd4, 0x6fd5, 0x6fd6, 0x6fd7,
- 0x6fd8, 0x6fd9, 0x6fda, 0x6fdb, 0x6fdc, 0x6fdd, 0x6fde, 0x6fdf,
- 0x6fe0, 0x6fe1, 0x6fe2, 0x6fe3, 0x6fe4, 0x6fe5, 0x6fe6, 0x6fe7,
- 0x6fe8, 0x6fe9, 0x6fea, 0x6feb, 0x6fec, 0x6fed, 0x6fee, 0x6fef,
- 0x6ff0, 0x6ff1, 0x6ff2, 0x6ff3, 0x6ff4, 0x6ff5, 0x6ff6, 0x6ff7,
- 0x6ff8, 0x6ff9, 0x6ffa, 0x6ffb, 0x6ffc, 0x6ffd, 0x6ffe, 0x6fff,
- 0x7000, 0x7001, 0x7002, 0x7003, 0x7004, 0x7005, 0x7006, 0x7007, /* 0x7000 */
- 0x7008, 0x7009, 0x700a, 0x700b, 0x700c, 0x700d, 0x700e, 0x700f,
- 0x7010, 0x7011, 0x7012, 0x7013, 0x7014, 0x7015, 0x7016, 0x7017,
- 0x7018, 0x7019, 0x701a, 0x701b, 0x701c, 0x701d, 0x701e, 0x701f,
- 0x7020, 0x7021, 0x7022, 0x7023, 0x7024, 0x7025, 0x7026, 0x7027,
- 0x7028, 0x7029, 0x702a, 0x702b, 0x702c, 0x702d, 0x702e, 0x702f,
- 0x7030, 0x7031, 0x7032, 0x7033, 0x7034, 0x7035, 0x7036, 0x7037,
- 0x7038, 0x7039, 0x703a, 0x703b, 0x703c, 0x703d, 0x703e, 0x703f,
- 0x7040, 0x7041, 0x7042, 0x7043, 0x7044, 0x7045, 0x7046, 0x7047, /* 0x7040 */
- 0x7048, 0x7049, 0x704a, 0x704b, 0x704c, 0x704d, 0x704e, 0x704f,
- 0x7050, 0x7051, 0x7052, 0x7053, 0x7054, 0x7055, 0x7056, 0x7057,
- 0x7058, 0x7059, 0x705a, 0x705b, 0x705c, 0x705d, 0x705e, 0x705f,
- 0x7060, 0x7061, 0x7062, 0x7063, 0x7064, 0x7065, 0x7066, 0x7067,
- 0x7068, 0x7069, 0x706a, 0x706b, 0x706c, 0x706d, 0x706e, 0x706f,
- 0x7070, 0x7071, 0x7072, 0x7073, 0x7074, 0x7075, 0x7076, 0x7077,
- 0x7078, 0x7079, 0x707a, 0x707b, 0x707c, 0x707d, 0x707e, 0x707f,
- 0x7080, 0x7081, 0x7082, 0x7083, 0x7084, 0x7085, 0x7086, 0x7087, /* 0x7080 */
- 0x7088, 0x7089, 0x708a, 0x708b, 0x708c, 0x708d, 0x708e, 0x708f,
- 0x7090, 0x7091, 0x7092, 0x7093, 0x7094, 0x7095, 0x7096, 0x7097,
- 0x7098, 0x7099, 0x709a, 0x709b, 0x709c, 0x709d, 0x709e, 0x709f,
- 0x70a0, 0x70a1, 0x70a2, 0x70a3, 0x70a4, 0x70a5, 0x70a6, 0x70a7,
- 0x70a8, 0x70a9, 0x70aa, 0x70ab, 0x70ac, 0x70ad, 0x70ae, 0x70af,
- 0x70b0, 0x70b1, 0x70b2, 0x70b3, 0x70b4, 0x70b5, 0x70b6, 0x70b7,
- 0x70b8, 0x70b9, 0x70ba, 0x70bb, 0x70bc, 0x70bd, 0x70be, 0x70bf,
- 0x70c0, 0x70c1, 0x70c2, 0x70c3, 0x70c4, 0x70c5, 0x70c6, 0x70c7, /* 0x70c0 */
- 0x70c8, 0x70c9, 0x70ca, 0x70cb, 0x70cc, 0x70cd, 0x70ce, 0x70cf,
- 0x70d0, 0x70d1, 0x70d2, 0x70d3, 0x70d4, 0x70d5, 0x70d6, 0x70d7,
- 0x70d8, 0x70d9, 0x70da, 0x70db, 0x70dc, 0x70dd, 0x70de, 0x70df,
- 0x70e0, 0x70e1, 0x70e2, 0x70e3, 0x70e4, 0x70e5, 0x70e6, 0x70e7,
- 0x70e8, 0x70e9, 0x70ea, 0x70eb, 0x70ec, 0x70ed, 0x70ee, 0x70ef,
- 0x70f0, 0x70f1, 0x70f2, 0x70f3, 0x70f4, 0x70f5, 0x70f6, 0x70f7,
- 0x70f8, 0x70f9, 0x70fa, 0x70fb, 0x70fc, 0x70fd, 0x70fe, 0x70ff,
- 0x7100, 0x7101, 0x7102, 0x7103, 0x7104, 0x7105, 0x7106, 0x7107, /* 0x7100 */
- 0x7108, 0x7109, 0x710a, 0x710b, 0x710c, 0x710d, 0x710e, 0x710f,
- 0x7110, 0x7111, 0x7112, 0x7113, 0x7114, 0x7115, 0x7116, 0x7117,
- 0x7118, 0x7119, 0x711a, 0x711b, 0x711c, 0x711d, 0x711e, 0x711f,
- 0x7120, 0x7121, 0x7122, 0x7123, 0x7124, 0x7125, 0x7126, 0x7127,
- 0x7128, 0x7129, 0x712a, 0x712b, 0x712c, 0x712d, 0x712e, 0x712f,
- 0x7130, 0x7131, 0x7132, 0x7133, 0x7134, 0x7135, 0x7136, 0x7137,
- 0x7138, 0x7139, 0x713a, 0x713b, 0x713c, 0x713d, 0x713e, 0x713f,
- 0x7140, 0x7141, 0x7142, 0x7143, 0x7144, 0x7145, 0x7146, 0x7147, /* 0x7140 */
- 0x7148, 0x7149, 0x714a, 0x714b, 0x714c, 0x714d, 0x714e, 0x714f,
- 0x7150, 0x7151, 0x7152, 0x7153, 0x7154, 0x7155, 0x7156, 0x7157,
- 0x7158, 0x7159, 0x715a, 0x715b, 0x715c, 0x715d, 0x715e, 0x715f,
- 0x7160, 0x7161, 0x7162, 0x7163, 0x7164, 0x7165, 0x7166, 0x7167,
- 0x7168, 0x7169, 0x716a, 0x716b, 0x716c, 0x716d, 0x716e, 0x716f,
- 0x7170, 0x7171, 0x7172, 0x7173, 0x7174, 0x7175, 0x7176, 0x7177,
- 0x7178, 0x7179, 0x717a, 0x717b, 0x717c, 0x717d, 0x717e, 0x717f,
- 0x7180, 0x7181, 0x7182, 0x7183, 0x7184, 0x7185, 0x7186, 0x7187, /* 0x7180 */
- 0x7188, 0x7189, 0x718a, 0x718b, 0x718c, 0x718d, 0x718e, 0x718f,
- 0x7190, 0x7191, 0x7192, 0x7193, 0x7194, 0x7195, 0x7196, 0x7197,
- 0x7198, 0x7199, 0x719a, 0x719b, 0x719c, 0x719d, 0x719e, 0x719f,
- 0x71a0, 0x71a1, 0x71a2, 0x71a3, 0x71a4, 0x71a5, 0x71a6, 0x71a7,
- 0x71a8, 0x71a9, 0x71aa, 0x71ab, 0x71ac, 0x71ad, 0x71ae, 0x71af,
- 0x71b0, 0x71b1, 0x71b2, 0x71b3, 0x71b4, 0x71b5, 0x71b6, 0x71b7,
- 0x71b8, 0x71b9, 0x71ba, 0x71bb, 0x71bc, 0x71bd, 0x71be, 0x71bf,
- 0x71c0, 0x71c1, 0x71c2, 0x71c3, 0x71c4, 0x71c5, 0x71c6, 0x71c7, /* 0x71c0 */
- 0x71c8, 0x71c9, 0x71ca, 0x71cb, 0x71cc, 0x71cd, 0x71ce, 0x71cf,
- 0x71d0, 0x71d1, 0x71d2, 0x71d3, 0x71d4, 0x71d5, 0x71d6, 0x71d7,
- 0x71d8, 0x71d9, 0x71da, 0x71db, 0x71dc, 0x71dd, 0x71de, 0x71df,
- 0x71e0, 0x71e1, 0x71e2, 0x71e3, 0x71e4, 0x71e5, 0x71e6, 0x71e7,
- 0x71e8, 0x71e9, 0x71ea, 0x71eb, 0x71ec, 0x71ed, 0x71ee, 0x71ef,
- 0x71f0, 0x71f1, 0x71f2, 0x71f3, 0x71f4, 0x71f5, 0x71f6, 0x71f7,
- 0x71f8, 0x71f9, 0x71fa, 0x71fb, 0x71fc, 0x71fd, 0x71fe, 0x71ff,
- 0x7200, 0x7201, 0x7202, 0x7203, 0x7204, 0x7205, 0x7206, 0x7207, /* 0x7200 */
- 0x7208, 0x7209, 0x720a, 0x720b, 0x720c, 0x720d, 0x720e, 0x720f,
- 0x7210, 0x7211, 0x7212, 0x7213, 0x7214, 0x7215, 0x7216, 0x7217,
- 0x7218, 0x7219, 0x721a, 0x721b, 0x721c, 0x721d, 0x721e, 0x721f,
- 0x7220, 0x7221, 0x7222, 0x7223, 0x7224, 0x7225, 0x7226, 0x7227,
- 0x7228, 0x7229, 0x722a, 0x722b, 0x722c, 0x722d, 0x722e, 0x722f,
- 0x7230, 0x7231, 0x7232, 0x7233, 0x7234, 0x7235, 0x7236, 0x7237,
- 0x7238, 0x7239, 0x723a, 0x723b, 0x723c, 0x723d, 0x723e, 0x723f,
- 0x7240, 0x7241, 0x7242, 0x7243, 0x7244, 0x7245, 0x7246, 0x7247, /* 0x7240 */
- 0x7248, 0x7249, 0x724a, 0x724b, 0x724c, 0x724d, 0x724e, 0x724f,
- 0x7250, 0x7251, 0x7252, 0x7253, 0x7254, 0x7255, 0x7256, 0x7257,
- 0x7258, 0x7259, 0x725a, 0x725b, 0x725c, 0x725d, 0x725e, 0x725f,
- 0x7260, 0x7261, 0x7262, 0x7263, 0x7264, 0x7265, 0x7266, 0x7267,
- 0x7268, 0x7269, 0x726a, 0x726b, 0x726c, 0x726d, 0x726e, 0x726f,
- 0x7270, 0x7271, 0x7272, 0x7273, 0x7274, 0x7275, 0x7276, 0x7277,
- 0x7278, 0x7279, 0x727a, 0x727b, 0x727c, 0x727d, 0x727e, 0x727f,
- 0x7280, 0x7281, 0x7282, 0x7283, 0x7284, 0x7285, 0x7286, 0x7287, /* 0x7280 */
- 0x7288, 0x7289, 0x728a, 0x728b, 0x728c, 0x728d, 0x728e, 0x728f,
- 0x7290, 0x7291, 0x7292, 0x7293, 0x7294, 0x7295, 0x7296, 0x7297,
- 0x7298, 0x7299, 0x729a, 0x729b, 0x729c, 0x729d, 0x729e, 0x729f,
- 0x72a0, 0x72a1, 0x72a2, 0x72a3, 0x72a4, 0x72a5, 0x72a6, 0x72a7,
- 0x72a8, 0x72a9, 0x72aa, 0x72ab, 0x72ac, 0x72ad, 0x72ae, 0x72af,
- 0x72b0, 0x72b1, 0x72b2, 0x72b3, 0x72b4, 0x72b5, 0x72b6, 0x72b7,
- 0x72b8, 0x72b9, 0x72ba, 0x72bb, 0x72bc, 0x72bd, 0x72be, 0x72bf,
- 0x72c0, 0x72c1, 0x72c2, 0x72c3, 0x72c4, 0x72c5, 0x72c6, 0x72c7, /* 0x72c0 */
- 0x72c8, 0x72c9, 0x72ca, 0x72cb, 0x72cc, 0x72cd, 0x72ce, 0x72cf,
- 0x72d0, 0x72d1, 0x72d2, 0x72d3, 0x72d4, 0x72d5, 0x72d6, 0x72d7,
- 0x72d8, 0x72d9, 0x72da, 0x72db, 0x72dc, 0x72dd, 0x72de, 0x72df,
- 0x72e0, 0x72e1, 0x72e2, 0x72e3, 0x72e4, 0x72e5, 0x72e6, 0x72e7,
- 0x72e8, 0x72e9, 0x72ea, 0x72eb, 0x72ec, 0x72ed, 0x72ee, 0x72ef,
- 0x72f0, 0x72f1, 0x72f2, 0x72f3, 0x72f4, 0x72f5, 0x72f6, 0x72f7,
- 0x72f8, 0x72f9, 0x72fa, 0x72fb, 0x72fc, 0x72fd, 0x72fe, 0x72ff,
- 0x7300, 0x7301, 0x7302, 0x7303, 0x7304, 0x7305, 0x7306, 0x7307, /* 0x7300 */
- 0x7308, 0x7309, 0x730a, 0x730b, 0x730c, 0x730d, 0x730e, 0x730f,
- 0x7310, 0x7311, 0x7312, 0x7313, 0x7314, 0x7315, 0x7316, 0x7317,
- 0x7318, 0x7319, 0x731a, 0x731b, 0x731c, 0x731d, 0x731e, 0x731f,
- 0x7320, 0x7321, 0x7322, 0x7323, 0x7324, 0x7325, 0x7326, 0x7327,
- 0x7328, 0x7329, 0x732a, 0x732b, 0x732c, 0x732d, 0x732e, 0x732f,
- 0x7330, 0x7331, 0x7332, 0x7333, 0x7334, 0x7335, 0x7336, 0x7337,
- 0x7338, 0x7339, 0x733a, 0x733b, 0x733c, 0x733d, 0x733e, 0x733f,
- 0x7340, 0x7341, 0x7342, 0x7343, 0x7344, 0x7345, 0x7346, 0x7347, /* 0x7340 */
- 0x7348, 0x7349, 0x734a, 0x734b, 0x734c, 0x734d, 0x734e, 0x734f,
- 0x7350, 0x7351, 0x7352, 0x7353, 0x7354, 0x7355, 0x7356, 0x7357,
- 0x7358, 0x7359, 0x735a, 0x735b, 0x735c, 0x735d, 0x735e, 0x735f,
- 0x7360, 0x7361, 0x7362, 0x7363, 0x7364, 0x7365, 0x7366, 0x7367,
- 0x7368, 0x7369, 0x736a, 0x736b, 0x736c, 0x736d, 0x736e, 0x736f,
- 0x7370, 0x7371, 0x7372, 0x7373, 0x7374, 0x7375, 0x7376, 0x7377,
- 0x7378, 0x7379, 0x737a, 0x737b, 0x737c, 0x737d, 0x737e, 0x737f,
- 0x7380, 0x7381, 0x7382, 0x7383, 0x7384, 0x7385, 0x7386, 0x7387, /* 0x7380 */
- 0x7388, 0x7389, 0x738a, 0x738b, 0x738c, 0x738d, 0x738e, 0x738f,
- 0x7390, 0x7391, 0x7392, 0x7393, 0x7394, 0x7395, 0x7396, 0x7397,
- 0x7398, 0x7399, 0x739a, 0x739b, 0x739c, 0x739d, 0x739e, 0x739f,
- 0x73a0, 0x73a1, 0x73a2, 0x73a3, 0x73a4, 0x73a5, 0x73a6, 0x73a7,
- 0x73a8, 0x73a9, 0x73aa, 0x73ab, 0x73ac, 0x73ad, 0x73ae, 0x73af,
- 0x73b0, 0x73b1, 0x73b2, 0x73b3, 0x73b4, 0x73b5, 0x73b6, 0x73b7,
- 0x73b8, 0x73b9, 0x73ba, 0x73bb, 0x73bc, 0x73bd, 0x73be, 0x73bf,
- 0x73c0, 0x73c1, 0x73c2, 0x73c3, 0x73c4, 0x73c5, 0x73c6, 0x73c7, /* 0x73c0 */
- 0x73c8, 0x73c9, 0x73ca, 0x73cb, 0x73cc, 0x73cd, 0x73ce, 0x73cf,
- 0x73d0, 0x73d1, 0x73d2, 0x73d3, 0x73d4, 0x73d5, 0x73d6, 0x73d7,
- 0x73d8, 0x73d9, 0x73da, 0x73db, 0x73dc, 0x73dd, 0x73de, 0x73df,
- 0x73e0, 0x73e1, 0x73e2, 0x73e3, 0x73e4, 0x73e5, 0x73e6, 0x73e7,
- 0x73e8, 0x73e9, 0x73ea, 0x73eb, 0x73ec, 0x73ed, 0x73ee, 0x73ef,
- 0x73f0, 0x73f1, 0x73f2, 0x73f3, 0x73f4, 0x73f5, 0x73f6, 0x73f7,
- 0x73f8, 0x73f9, 0x73fa, 0x73fb, 0x73fc, 0x73fd, 0x73fe, 0x73ff,
- 0x7400, 0x7401, 0x7402, 0x7403, 0x7404, 0x7405, 0x7406, 0x7407, /* 0x7400 */
- 0x7408, 0x7409, 0x740a, 0x740b, 0x740c, 0x740d, 0x740e, 0x740f,
- 0x7410, 0x7411, 0x7412, 0x7413, 0x7414, 0x7415, 0x7416, 0x7417,
- 0x7418, 0x7419, 0x741a, 0x741b, 0x741c, 0x741d, 0x741e, 0x741f,
- 0x7420, 0x7421, 0x7422, 0x7423, 0x7424, 0x7425, 0x7426, 0x7427,
- 0x7428, 0x7429, 0x742a, 0x742b, 0x742c, 0x742d, 0x742e, 0x742f,
- 0x7430, 0x7431, 0x7432, 0x7433, 0x7434, 0x7435, 0x7436, 0x7437,
- 0x7438, 0x7439, 0x743a, 0x743b, 0x743c, 0x743d, 0x743e, 0x743f,
- 0x7440, 0x7441, 0x7442, 0x7443, 0x7444, 0x7445, 0x7446, 0x7447, /* 0x7440 */
- 0x7448, 0x7449, 0x744a, 0x744b, 0x744c, 0x744d, 0x744e, 0x744f,
- 0x7450, 0x7451, 0x7452, 0x7453, 0x7454, 0x7455, 0x7456, 0x7457,
- 0x7458, 0x7459, 0x745a, 0x745b, 0x745c, 0x745d, 0x745e, 0x745f,
- 0x7460, 0x7461, 0x7462, 0x7463, 0x7464, 0x7465, 0x7466, 0x7467,
- 0x7468, 0x7469, 0x746a, 0x746b, 0x746c, 0x746d, 0x746e, 0x746f,
- 0x7470, 0x7471, 0x7472, 0x7473, 0x7474, 0x7475, 0x7476, 0x7477,
- 0x7478, 0x7479, 0x747a, 0x747b, 0x747c, 0x747d, 0x747e, 0x747f,
- 0x7480, 0x7481, 0x7482, 0x7483, 0x7484, 0x7485, 0x7486, 0x7487, /* 0x7480 */
- 0x7488, 0x7489, 0x748a, 0x748b, 0x748c, 0x748d, 0x748e, 0x748f,
- 0x7490, 0x7491, 0x7492, 0x7493, 0x7494, 0x7495, 0x7496, 0x7497,
- 0x7498, 0x7499, 0x749a, 0x749b, 0x749c, 0x749d, 0x749e, 0x749f,
- 0x74a0, 0x74a1, 0x74a2, 0x74a3, 0x74a4, 0x74a5, 0x74a6, 0x74a7,
- 0x74a8, 0x74a9, 0x74aa, 0x74ab, 0x74ac, 0x74ad, 0x74ae, 0x74af,
- 0x74b0, 0x74b1, 0x74b2, 0x74b3, 0x74b4, 0x74b5, 0x74b6, 0x74b7,
- 0x74b8, 0x74b9, 0x74ba, 0x74bb, 0x74bc, 0x74bd, 0x74be, 0x74bf,
- 0x74c0, 0x74c1, 0x74c2, 0x74c3, 0x74c4, 0x74c5, 0x74c6, 0x74c7, /* 0x74c0 */
- 0x74c8, 0x74c9, 0x74ca, 0x74cb, 0x74cc, 0x74cd, 0x74ce, 0x74cf,
- 0x74d0, 0x74d1, 0x74d2, 0x74d3, 0x74d4, 0x74d5, 0x74d6, 0x74d7,
- 0x74d8, 0x74d9, 0x74da, 0x74db, 0x74dc, 0x74dd, 0x74de, 0x74df,
- 0x74e0, 0x74e1, 0x74e2, 0x74e3, 0x74e4, 0x74e5, 0x74e6, 0x74e7,
- 0x74e8, 0x74e9, 0x74ea, 0x74eb, 0x74ec, 0x74ed, 0x74ee, 0x74ef,
- 0x74f0, 0x74f1, 0x74f2, 0x74f3, 0x74f4, 0x74f5, 0x74f6, 0x74f7,
- 0x74f8, 0x74f9, 0x74fa, 0x74fb, 0x74fc, 0x74fd, 0x74fe, 0x74ff,
- 0x7500, 0x7501, 0x7502, 0x7503, 0x7504, 0x7505, 0x7506, 0x7507, /* 0x7500 */
- 0x7508, 0x7509, 0x750a, 0x750b, 0x750c, 0x750d, 0x750e, 0x750f,
- 0x7510, 0x7511, 0x7512, 0x7513, 0x7514, 0x7515, 0x7516, 0x7517,
- 0x7518, 0x7519, 0x751a, 0x751b, 0x751c, 0x751d, 0x751e, 0x751f,
- 0x7520, 0x7521, 0x7522, 0x7523, 0x7524, 0x7525, 0x7526, 0x7527,
- 0x7528, 0x7529, 0x752a, 0x752b, 0x752c, 0x752d, 0x752e, 0x752f,
- 0x7530, 0x7531, 0x7532, 0x7533, 0x7534, 0x7535, 0x7536, 0x7537,
- 0x7538, 0x7539, 0x753a, 0x753b, 0x753c, 0x753d, 0x753e, 0x753f,
- 0x7540, 0x7541, 0x7542, 0x7543, 0x7544, 0x7545, 0x7546, 0x7547, /* 0x7540 */
- 0x7548, 0x7549, 0x754a, 0x754b, 0x754c, 0x754d, 0x754e, 0x754f,
- 0x7550, 0x7551, 0x7552, 0x7553, 0x7554, 0x7555, 0x7556, 0x7557,
- 0x7558, 0x7559, 0x755a, 0x755b, 0x755c, 0x755d, 0x755e, 0x755f,
- 0x7560, 0x7561, 0x7562, 0x7563, 0x7564, 0x7565, 0x7566, 0x7567,
- 0x7568, 0x7569, 0x756a, 0x756b, 0x756c, 0x756d, 0x756e, 0x756f,
- 0x7570, 0x7571, 0x7572, 0x7573, 0x7574, 0x7575, 0x7576, 0x7577,
- 0x7578, 0x7579, 0x757a, 0x757b, 0x757c, 0x757d, 0x757e, 0x757f,
- 0x7580, 0x7581, 0x7582, 0x7583, 0x7584, 0x7585, 0x7586, 0x7587, /* 0x7580 */
- 0x7588, 0x7589, 0x758a, 0x758b, 0x758c, 0x758d, 0x758e, 0x758f,
- 0x7590, 0x7591, 0x7592, 0x7593, 0x7594, 0x7595, 0x7596, 0x7597,
- 0x7598, 0x7599, 0x759a, 0x759b, 0x759c, 0x759d, 0x759e, 0x759f,
- 0x75a0, 0x75a1, 0x75a2, 0x75a3, 0x75a4, 0x75a5, 0x75a6, 0x75a7,
- 0x75a8, 0x75a9, 0x75aa, 0x75ab, 0x75ac, 0x75ad, 0x75ae, 0x75af,
- 0x75b0, 0x75b1, 0x75b2, 0x75b3, 0x75b4, 0x75b5, 0x75b6, 0x75b7,
- 0x75b8, 0x75b9, 0x75ba, 0x75bb, 0x75bc, 0x75bd, 0x75be, 0x75bf,
- 0x75c0, 0x75c1, 0x75c2, 0x75c3, 0x75c4, 0x75c5, 0x75c6, 0x75c7, /* 0x75c0 */
- 0x75c8, 0x75c9, 0x75ca, 0x75cb, 0x75cc, 0x75cd, 0x75ce, 0x75cf,
- 0x75d0, 0x75d1, 0x75d2, 0x75d3, 0x75d4, 0x75d5, 0x75d6, 0x75d7,
- 0x75d8, 0x75d9, 0x75da, 0x75db, 0x75dc, 0x75dd, 0x75de, 0x75df,
- 0x75e0, 0x75e1, 0x75e2, 0x75e3, 0x75e4, 0x75e5, 0x75e6, 0x75e7,
- 0x75e8, 0x75e9, 0x75ea, 0x75eb, 0x75ec, 0x75ed, 0x75ee, 0x75ef,
- 0x75f0, 0x75f1, 0x75f2, 0x75f3, 0x75f4, 0x75f5, 0x75f6, 0x75f7,
- 0x75f8, 0x75f9, 0x75fa, 0x75fb, 0x75fc, 0x75fd, 0x75fe, 0x75ff,
- 0x7600, 0x7601, 0x7602, 0x7603, 0x7604, 0x7605, 0x7606, 0x7607, /* 0x7600 */
- 0x7608, 0x7609, 0x760a, 0x760b, 0x760c, 0x760d, 0x760e, 0x760f,
- 0x7610, 0x7611, 0x7612, 0x7613, 0x7614, 0x7615, 0x7616, 0x7617,
- 0x7618, 0x7619, 0x761a, 0x761b, 0x761c, 0x761d, 0x761e, 0x761f,
- 0x7620, 0x7621, 0x7622, 0x7623, 0x7624, 0x7625, 0x7626, 0x7627,
- 0x7628, 0x7629, 0x762a, 0x762b, 0x762c, 0x762d, 0x762e, 0x762f,
- 0x7630, 0x7631, 0x7632, 0x7633, 0x7634, 0x7635, 0x7636, 0x7637,
- 0x7638, 0x7639, 0x763a, 0x763b, 0x763c, 0x763d, 0x763e, 0x763f,
- 0x7640, 0x7641, 0x7642, 0x7643, 0x7644, 0x7645, 0x7646, 0x7647, /* 0x7640 */
- 0x7648, 0x7649, 0x764a, 0x764b, 0x764c, 0x764d, 0x764e, 0x764f,
- 0x7650, 0x7651, 0x7652, 0x7653, 0x7654, 0x7655, 0x7656, 0x7657,
- 0x7658, 0x7659, 0x765a, 0x765b, 0x765c, 0x765d, 0x765e, 0x765f,
- 0x7660, 0x7661, 0x7662, 0x7663, 0x7664, 0x7665, 0x7666, 0x7667,
- 0x7668, 0x7669, 0x766a, 0x766b, 0x766c, 0x766d, 0x766e, 0x766f,
- 0x7670, 0x7671, 0x7672, 0x7673, 0x7674, 0x7675, 0x7676, 0x7677,
- 0x7678, 0x7679, 0x767a, 0x767b, 0x767c, 0x767d, 0x767e, 0x767f,
- 0x7680, 0x7681, 0x7682, 0x7683, 0x7684, 0x7685, 0x7686, 0x7687, /* 0x7680 */
- 0x7688, 0x7689, 0x768a, 0x768b, 0x768c, 0x768d, 0x768e, 0x768f,
- 0x7690, 0x7691, 0x7692, 0x7693, 0x7694, 0x7695, 0x7696, 0x7697,
- 0x7698, 0x7699, 0x769a, 0x769b, 0x769c, 0x769d, 0x769e, 0x769f,
- 0x76a0, 0x76a1, 0x76a2, 0x76a3, 0x76a4, 0x76a5, 0x76a6, 0x76a7,
- 0x76a8, 0x76a9, 0x76aa, 0x76ab, 0x76ac, 0x76ad, 0x76ae, 0x76af,
- 0x76b0, 0x76b1, 0x76b2, 0x76b3, 0x76b4, 0x76b5, 0x76b6, 0x76b7,
- 0x76b8, 0x76b9, 0x76ba, 0x76bb, 0x76bc, 0x76bd, 0x76be, 0x76bf,
- 0x76c0, 0x76c1, 0x76c2, 0x76c3, 0x76c4, 0x76c5, 0x76c6, 0x76c7, /* 0x76c0 */
- 0x76c8, 0x76c9, 0x76ca, 0x76cb, 0x76cc, 0x76cd, 0x76ce, 0x76cf,
- 0x76d0, 0x76d1, 0x76d2, 0x76d3, 0x76d4, 0x76d5, 0x76d6, 0x76d7,
- 0x76d8, 0x76d9, 0x76da, 0x76db, 0x76dc, 0x76dd, 0x76de, 0x76df,
- 0x76e0, 0x76e1, 0x76e2, 0x76e3, 0x76e4, 0x76e5, 0x76e6, 0x76e7,
- 0x76e8, 0x76e9, 0x76ea, 0x76eb, 0x76ec, 0x76ed, 0x76ee, 0x76ef,
- 0x76f0, 0x76f1, 0x76f2, 0x76f3, 0x76f4, 0x76f5, 0x76f6, 0x76f7,
- 0x76f8, 0x76f9, 0x76fa, 0x76fb, 0x76fc, 0x76fd, 0x76fe, 0x76ff,
- 0x7700, 0x7701, 0x7702, 0x7703, 0x7704, 0x7705, 0x7706, 0x7707, /* 0x7700 */
- 0x7708, 0x7709, 0x770a, 0x770b, 0x770c, 0x770d, 0x770e, 0x770f,
- 0x7710, 0x7711, 0x7712, 0x7713, 0x7714, 0x7715, 0x7716, 0x7717,
- 0x7718, 0x7719, 0x771a, 0x771b, 0x771c, 0x771d, 0x771e, 0x771f,
- 0x7720, 0x7721, 0x7722, 0x7723, 0x7724, 0x7725, 0x7726, 0x7727,
- 0x7728, 0x7729, 0x772a, 0x772b, 0x772c, 0x772d, 0x772e, 0x772f,
- 0x7730, 0x7731, 0x7732, 0x7733, 0x7734, 0x7735, 0x7736, 0x7737,
- 0x7738, 0x7739, 0x773a, 0x773b, 0x773c, 0x773d, 0x773e, 0x773f,
- 0x7740, 0x7741, 0x7742, 0x7743, 0x7744, 0x7745, 0x7746, 0x7747, /* 0x7740 */
- 0x7748, 0x7749, 0x774a, 0x774b, 0x774c, 0x774d, 0x774e, 0x774f,
- 0x7750, 0x7751, 0x7752, 0x7753, 0x7754, 0x7755, 0x7756, 0x7757,
- 0x7758, 0x7759, 0x775a, 0x775b, 0x775c, 0x775d, 0x775e, 0x775f,
- 0x7760, 0x7761, 0x7762, 0x7763, 0x7764, 0x7765, 0x7766, 0x7767,
- 0x7768, 0x7769, 0x776a, 0x776b, 0x776c, 0x776d, 0x776e, 0x776f,
- 0x7770, 0x7771, 0x7772, 0x7773, 0x7774, 0x7775, 0x7776, 0x7777,
- 0x7778, 0x7779, 0x777a, 0x777b, 0x777c, 0x777d, 0x777e, 0x777f,
- 0x7780, 0x7781, 0x7782, 0x7783, 0x7784, 0x7785, 0x7786, 0x7787, /* 0x7780 */
- 0x7788, 0x7789, 0x778a, 0x778b, 0x778c, 0x778d, 0x778e, 0x778f,
- 0x7790, 0x7791, 0x7792, 0x7793, 0x7794, 0x7795, 0x7796, 0x7797,
- 0x7798, 0x7799, 0x779a, 0x779b, 0x779c, 0x779d, 0x779e, 0x779f,
- 0x77a0, 0x77a1, 0x77a2, 0x77a3, 0x77a4, 0x77a5, 0x77a6, 0x77a7,
- 0x77a8, 0x77a9, 0x77aa, 0x77ab, 0x77ac, 0x77ad, 0x77ae, 0x77af,
- 0x77b0, 0x77b1, 0x77b2, 0x77b3, 0x77b4, 0x77b5, 0x77b6, 0x77b7,
- 0x77b8, 0x77b9, 0x77ba, 0x77bb, 0x77bc, 0x77bd, 0x77be, 0x77bf,
- 0x77c0, 0x77c1, 0x77c2, 0x77c3, 0x77c4, 0x77c5, 0x77c6, 0x77c7, /* 0x77c0 */
- 0x77c8, 0x77c9, 0x77ca, 0x77cb, 0x77cc, 0x77cd, 0x77ce, 0x77cf,
- 0x77d0, 0x77d1, 0x77d2, 0x77d3, 0x77d4, 0x77d5, 0x77d6, 0x77d7,
- 0x77d8, 0x77d9, 0x77da, 0x77db, 0x77dc, 0x77dd, 0x77de, 0x77df,
- 0x77e0, 0x77e1, 0x77e2, 0x77e3, 0x77e4, 0x77e5, 0x77e6, 0x77e7,
- 0x77e8, 0x77e9, 0x77ea, 0x77eb, 0x77ec, 0x77ed, 0x77ee, 0x77ef,
- 0x77f0, 0x77f1, 0x77f2, 0x77f3, 0x77f4, 0x77f5, 0x77f6, 0x77f7,
- 0x77f8, 0x77f9, 0x77fa, 0x77fb, 0x77fc, 0x77fd, 0x77fe, 0x77ff,
- 0x7800, 0x7801, 0x7802, 0x7803, 0x7804, 0x7805, 0x7806, 0x7807, /* 0x7800 */
- 0x7808, 0x7809, 0x780a, 0x780b, 0x780c, 0x780d, 0x780e, 0x780f,
- 0x7810, 0x7811, 0x7812, 0x7813, 0x7814, 0x7815, 0x7816, 0x7817,
- 0x7818, 0x7819, 0x781a, 0x781b, 0x781c, 0x781d, 0x781e, 0x781f,
- 0x7820, 0x7821, 0x7822, 0x7823, 0x7824, 0x7825, 0x7826, 0x7827,
- 0x7828, 0x7829, 0x782a, 0x782b, 0x782c, 0x782d, 0x782e, 0x782f,
- 0x7830, 0x7831, 0x7832, 0x7833, 0x7834, 0x7835, 0x7836, 0x7837,
- 0x7838, 0x7839, 0x783a, 0x783b, 0x783c, 0x783d, 0x783e, 0x783f,
- 0x7840, 0x7841, 0x7842, 0x7843, 0x7844, 0x7845, 0x7846, 0x7847, /* 0x7840 */
- 0x7848, 0x7849, 0x784a, 0x784b, 0x784c, 0x784d, 0x784e, 0x784f,
- 0x7850, 0x7851, 0x7852, 0x7853, 0x7854, 0x7855, 0x7856, 0x7857,
- 0x7858, 0x7859, 0x785a, 0x785b, 0x785c, 0x785d, 0x785e, 0x785f,
- 0x7860, 0x7861, 0x7862, 0x7863, 0x7864, 0x7865, 0x7866, 0x7867,
- 0x7868, 0x7869, 0x786a, 0x786b, 0x786c, 0x786d, 0x786e, 0x786f,
- 0x7870, 0x7871, 0x7872, 0x7873, 0x7874, 0x7875, 0x7876, 0x7877,
- 0x7878, 0x7879, 0x787a, 0x787b, 0x787c, 0x787d, 0x787e, 0x787f,
- 0x7880, 0x7881, 0x7882, 0x7883, 0x7884, 0x7885, 0x7886, 0x7887, /* 0x7880 */
- 0x7888, 0x7889, 0x788a, 0x788b, 0x788c, 0x788d, 0x788e, 0x788f,
- 0x7890, 0x7891, 0x7892, 0x7893, 0x7894, 0x7895, 0x7896, 0x7897,
- 0x7898, 0x7899, 0x789a, 0x789b, 0x789c, 0x789d, 0x789e, 0x789f,
- 0x78a0, 0x78a1, 0x78a2, 0x78a3, 0x78a4, 0x78a5, 0x78a6, 0x78a7,
- 0x78a8, 0x78a9, 0x78aa, 0x78ab, 0x78ac, 0x78ad, 0x78ae, 0x78af,
- 0x78b0, 0x78b1, 0x78b2, 0x78b3, 0x78b4, 0x78b5, 0x78b6, 0x78b7,
- 0x78b8, 0x78b9, 0x78ba, 0x78bb, 0x78bc, 0x78bd, 0x78be, 0x78bf,
- 0x78c0, 0x78c1, 0x78c2, 0x78c3, 0x78c4, 0x78c5, 0x78c6, 0x78c7, /* 0x78c0 */
- 0x78c8, 0x78c9, 0x78ca, 0x78cb, 0x78cc, 0x78cd, 0x78ce, 0x78cf,
- 0x78d0, 0x78d1, 0x78d2, 0x78d3, 0x78d4, 0x78d5, 0x78d6, 0x78d7,
- 0x78d8, 0x78d9, 0x78da, 0x78db, 0x78dc, 0x78dd, 0x78de, 0x78df,
- 0x78e0, 0x78e1, 0x78e2, 0x78e3, 0x78e4, 0x78e5, 0x78e6, 0x78e7,
- 0x78e8, 0x78e9, 0x78ea, 0x78eb, 0x78ec, 0x78ed, 0x78ee, 0x78ef,
- 0x78f0, 0x78f1, 0x78f2, 0x78f3, 0x78f4, 0x78f5, 0x78f6, 0x78f7,
- 0x78f8, 0x78f9, 0x78fa, 0x78fb, 0x78fc, 0x78fd, 0x78fe, 0x78ff,
- 0x7900, 0x7901, 0x7902, 0x7903, 0x7904, 0x7905, 0x7906, 0x7907, /* 0x7900 */
- 0x7908, 0x7909, 0x790a, 0x790b, 0x790c, 0x790d, 0x790e, 0x790f,
- 0x7910, 0x7911, 0x7912, 0x7913, 0x7914, 0x7915, 0x7916, 0x7917,
- 0x7918, 0x7919, 0x791a, 0x791b, 0x791c, 0x791d, 0x791e, 0x791f,
- 0x7920, 0x7921, 0x7922, 0x7923, 0x7924, 0x7925, 0x7926, 0x7927,
- 0x7928, 0x7929, 0x792a, 0x792b, 0x792c, 0x792d, 0x792e, 0x792f,
- 0x7930, 0x7931, 0x7932, 0x7933, 0x7934, 0x7935, 0x7936, 0x7937,
- 0x7938, 0x7939, 0x793a, 0x793b, 0x793c, 0x793d, 0x793e, 0x793f,
- 0x7940, 0x7941, 0x7942, 0x7943, 0x7944, 0x7945, 0x7946, 0x7947, /* 0x7940 */
- 0x7948, 0x7949, 0x794a, 0x794b, 0x794c, 0x794d, 0x794e, 0x794f,
- 0x7950, 0x7951, 0x7952, 0x7953, 0x7954, 0x7955, 0x7956, 0x7957,
- 0x7958, 0x7959, 0x795a, 0x795b, 0x795c, 0x795d, 0x795e, 0x795f,
- 0x7960, 0x7961, 0x7962, 0x7963, 0x7964, 0x7965, 0x7966, 0x7967,
- 0x7968, 0x7969, 0x796a, 0x796b, 0x796c, 0x796d, 0x796e, 0x796f,
- 0x7970, 0x7971, 0x7972, 0x7973, 0x7974, 0x7975, 0x7976, 0x7977,
- 0x7978, 0x7979, 0x797a, 0x797b, 0x797c, 0x797d, 0x797e, 0x797f,
- 0x7980, 0x7981, 0x7982, 0x7983, 0x7984, 0x7985, 0x7986, 0x7987, /* 0x7980 */
- 0x7988, 0x7989, 0x798a, 0x798b, 0x798c, 0x798d, 0x798e, 0x798f,
- 0x7990, 0x7991, 0x7992, 0x7993, 0x7994, 0x7995, 0x7996, 0x7997,
- 0x7998, 0x7999, 0x799a, 0x799b, 0x799c, 0x799d, 0x799e, 0x799f,
- 0x79a0, 0x79a1, 0x79a2, 0x79a3, 0x79a4, 0x79a5, 0x79a6, 0x79a7,
- 0x79a8, 0x79a9, 0x79aa, 0x79ab, 0x79ac, 0x79ad, 0x79ae, 0x79af,
- 0x79b0, 0x79b1, 0x79b2, 0x79b3, 0x79b4, 0x79b5, 0x79b6, 0x79b7,
- 0x79b8, 0x79b9, 0x79ba, 0x79bb, 0x79bc, 0x79bd, 0x79be, 0x79bf,
- 0x79c0, 0x79c1, 0x79c2, 0x79c3, 0x79c4, 0x79c5, 0x79c6, 0x79c7, /* 0x79c0 */
- 0x79c8, 0x79c9, 0x79ca, 0x79cb, 0x79cc, 0x79cd, 0x79ce, 0x79cf,
- 0x79d0, 0x79d1, 0x79d2, 0x79d3, 0x79d4, 0x79d5, 0x79d6, 0x79d7,
- 0x79d8, 0x79d9, 0x79da, 0x79db, 0x79dc, 0x79dd, 0x79de, 0x79df,
- 0x79e0, 0x79e1, 0x79e2, 0x79e3, 0x79e4, 0x79e5, 0x79e6, 0x79e7,
- 0x79e8, 0x79e9, 0x79ea, 0x79eb, 0x79ec, 0x79ed, 0x79ee, 0x79ef,
- 0x79f0, 0x79f1, 0x79f2, 0x79f3, 0x79f4, 0x79f5, 0x79f6, 0x79f7,
- 0x79f8, 0x79f9, 0x79fa, 0x79fb, 0x79fc, 0x79fd, 0x79fe, 0x79ff,
- 0x7a00, 0x7a01, 0x7a02, 0x7a03, 0x7a04, 0x7a05, 0x7a06, 0x7a07, /* 0x7a00 */
- 0x7a08, 0x7a09, 0x7a0a, 0x7a0b, 0x7a0c, 0x7a0d, 0x7a0e, 0x7a0f,
- 0x7a10, 0x7a11, 0x7a12, 0x7a13, 0x7a14, 0x7a15, 0x7a16, 0x7a17,
- 0x7a18, 0x7a19, 0x7a1a, 0x7a1b, 0x7a1c, 0x7a1d, 0x7a1e, 0x7a1f,
- 0x7a20, 0x7a21, 0x7a22, 0x7a23, 0x7a24, 0x7a25, 0x7a26, 0x7a27,
- 0x7a28, 0x7a29, 0x7a2a, 0x7a2b, 0x7a2c, 0x7a2d, 0x7a2e, 0x7a2f,
- 0x7a30, 0x7a31, 0x7a32, 0x7a33, 0x7a34, 0x7a35, 0x7a36, 0x7a37,
- 0x7a38, 0x7a39, 0x7a3a, 0x7a3b, 0x7a3c, 0x7a3d, 0x7a3e, 0x7a3f,
- 0x7a40, 0x7a41, 0x7a42, 0x7a43, 0x7a44, 0x7a45, 0x7a46, 0x7a47, /* 0x7a40 */
- 0x7a48, 0x7a49, 0x7a4a, 0x7a4b, 0x7a4c, 0x7a4d, 0x7a4e, 0x7a4f,
- 0x7a50, 0x7a51, 0x7a52, 0x7a53, 0x7a54, 0x7a55, 0x7a56, 0x7a57,
- 0x7a58, 0x7a59, 0x7a5a, 0x7a5b, 0x7a5c, 0x7a5d, 0x7a5e, 0x7a5f,
- 0x7a60, 0x7a61, 0x7a62, 0x7a63, 0x7a64, 0x7a65, 0x7a66, 0x7a67,
- 0x7a68, 0x7a69, 0x7a6a, 0x7a6b, 0x7a6c, 0x7a6d, 0x7a6e, 0x7a6f,
- 0x7a70, 0x7a71, 0x7a72, 0x7a73, 0x7a74, 0x7a75, 0x7a76, 0x7a77,
- 0x7a78, 0x7a79, 0x7a7a, 0x7a7b, 0x7a7c, 0x7a7d, 0x7a7e, 0x7a7f,
- 0x7a80, 0x7a81, 0x7a82, 0x7a83, 0x7a84, 0x7a85, 0x7a86, 0x7a87, /* 0x7a80 */
- 0x7a88, 0x7a89, 0x7a8a, 0x7a8b, 0x7a8c, 0x7a8d, 0x7a8e, 0x7a8f,
- 0x7a90, 0x7a91, 0x7a92, 0x7a93, 0x7a94, 0x7a95, 0x7a96, 0x7a97,
- 0x7a98, 0x7a99, 0x7a9a, 0x7a9b, 0x7a9c, 0x7a9d, 0x7a9e, 0x7a9f,
- 0x7aa0, 0x7aa1, 0x7aa2, 0x7aa3, 0x7aa4, 0x7aa5, 0x7aa6, 0x7aa7,
- 0x7aa8, 0x7aa9, 0x7aaa, 0x7aab, 0x7aac, 0x7aad, 0x7aae, 0x7aaf,
- 0x7ab0, 0x7ab1, 0x7ab2, 0x7ab3, 0x7ab4, 0x7ab5, 0x7ab6, 0x7ab7,
- 0x7ab8, 0x7ab9, 0x7aba, 0x7abb, 0x7abc, 0x7abd, 0x7abe, 0x7abf,
- 0x7ac0, 0x7ac1, 0x7ac2, 0x7ac3, 0x7ac4, 0x7ac5, 0x7ac6, 0x7ac7, /* 0x7ac0 */
- 0x7ac8, 0x7ac9, 0x7aca, 0x7acb, 0x7acc, 0x7acd, 0x7ace, 0x7acf,
- 0x7ad0, 0x7ad1, 0x7ad2, 0x7ad3, 0x7ad4, 0x7ad5, 0x7ad6, 0x7ad7,
- 0x7ad8, 0x7ad9, 0x7ada, 0x7adb, 0x7adc, 0x7add, 0x7ade, 0x7adf,
- 0x7ae0, 0x7ae1, 0x7ae2, 0x7ae3, 0x7ae4, 0x7ae5, 0x7ae6, 0x7ae7,
- 0x7ae8, 0x7ae9, 0x7aea, 0x7aeb, 0x7aec, 0x7aed, 0x7aee, 0x7aef,
- 0x7af0, 0x7af1, 0x7af2, 0x7af3, 0x7af4, 0x7af5, 0x7af6, 0x7af7,
- 0x7af8, 0x7af9, 0x7afa, 0x7afb, 0x7afc, 0x7afd, 0x7afe, 0x7aff,
- 0x7b00, 0x7b01, 0x7b02, 0x7b03, 0x7b04, 0x7b05, 0x7b06, 0x7b07, /* 0x7b00 */
- 0x7b08, 0x7b09, 0x7b0a, 0x7b0b, 0x7b0c, 0x7b0d, 0x7b0e, 0x7b0f,
- 0x7b10, 0x7b11, 0x7b12, 0x7b13, 0x7b14, 0x7b15, 0x7b16, 0x7b17,
- 0x7b18, 0x7b19, 0x7b1a, 0x7b1b, 0x7b1c, 0x7b1d, 0x7b1e, 0x7b1f,
- 0x7b20, 0x7b21, 0x7b22, 0x7b23, 0x7b24, 0x7b25, 0x7b26, 0x7b27,
- 0x7b28, 0x7b29, 0x7b2a, 0x7b2b, 0x7b2c, 0x7b2d, 0x7b2e, 0x7b2f,
- 0x7b30, 0x7b31, 0x7b32, 0x7b33, 0x7b34, 0x7b35, 0x7b36, 0x7b37,
- 0x7b38, 0x7b39, 0x7b3a, 0x7b3b, 0x7b3c, 0x7b3d, 0x7b3e, 0x7b3f,
- 0x7b40, 0x7b41, 0x7b42, 0x7b43, 0x7b44, 0x7b45, 0x7b46, 0x7b47, /* 0x7b40 */
- 0x7b48, 0x7b49, 0x7b4a, 0x7b4b, 0x7b4c, 0x7b4d, 0x7b4e, 0x7b4f,
- 0x7b50, 0x7b51, 0x7b52, 0x7b53, 0x7b54, 0x7b55, 0x7b56, 0x7b57,
- 0x7b58, 0x7b59, 0x7b5a, 0x7b5b, 0x7b5c, 0x7b5d, 0x7b5e, 0x7b5f,
- 0x7b60, 0x7b61, 0x7b62, 0x7b63, 0x7b64, 0x7b65, 0x7b66, 0x7b67,
- 0x7b68, 0x7b69, 0x7b6a, 0x7b6b, 0x7b6c, 0x7b6d, 0x7b6e, 0x7b6f,
- 0x7b70, 0x7b71, 0x7b72, 0x7b73, 0x7b74, 0x7b75, 0x7b76, 0x7b77,
- 0x7b78, 0x7b79, 0x7b7a, 0x7b7b, 0x7b7c, 0x7b7d, 0x7b7e, 0x7b7f,
- 0x7b80, 0x7b81, 0x7b82, 0x7b83, 0x7b84, 0x7b85, 0x7b86, 0x7b87, /* 0x7b80 */
- 0x7b88, 0x7b89, 0x7b8a, 0x7b8b, 0x7b8c, 0x7b8d, 0x7b8e, 0x7b8f,
- 0x7b90, 0x7b91, 0x7b92, 0x7b93, 0x7b94, 0x7b95, 0x7b96, 0x7b97,
- 0x7b98, 0x7b99, 0x7b9a, 0x7b9b, 0x7b9c, 0x7b9d, 0x7b9e, 0x7b9f,
- 0x7ba0, 0x7ba1, 0x7ba2, 0x7ba3, 0x7ba4, 0x7ba5, 0x7ba6, 0x7ba7,
- 0x7ba8, 0x7ba9, 0x7baa, 0x7bab, 0x7bac, 0x7bad, 0x7bae, 0x7baf,
- 0x7bb0, 0x7bb1, 0x7bb2, 0x7bb3, 0x7bb4, 0x7bb5, 0x7bb6, 0x7bb7,
- 0x7bb8, 0x7bb9, 0x7bba, 0x7bbb, 0x7bbc, 0x7bbd, 0x7bbe, 0x7bbf,
- 0x7bc0, 0x7bc1, 0x7bc2, 0x7bc3, 0x7bc4, 0x7bc5, 0x7bc6, 0x7bc7, /* 0x7bc0 */
- 0x7bc8, 0x7bc9, 0x7bca, 0x7bcb, 0x7bcc, 0x7bcd, 0x7bce, 0x7bcf,
- 0x7bd0, 0x7bd1, 0x7bd2, 0x7bd3, 0x7bd4, 0x7bd5, 0x7bd6, 0x7bd7,
- 0x7bd8, 0x7bd9, 0x7bda, 0x7bdb, 0x7bdc, 0x7bdd, 0x7bde, 0x7bdf,
- 0x7be0, 0x7be1, 0x7be2, 0x7be3, 0x7be4, 0x7be5, 0x7be6, 0x7be7,
- 0x7be8, 0x7be9, 0x7bea, 0x7beb, 0x7bec, 0x7bed, 0x7bee, 0x7bef,
- 0x7bf0, 0x7bf1, 0x7bf2, 0x7bf3, 0x7bf4, 0x7bf5, 0x7bf6, 0x7bf7,
- 0x7bf8, 0x7bf9, 0x7bfa, 0x7bfb, 0x7bfc, 0x7bfd, 0x7bfe, 0x7bff,
- 0x7c00, 0x7c01, 0x7c02, 0x7c03, 0x7c04, 0x7c05, 0x7c06, 0x7c07, /* 0x7c00 */
- 0x7c08, 0x7c09, 0x7c0a, 0x7c0b, 0x7c0c, 0x7c0d, 0x7c0e, 0x7c0f,
- 0x7c10, 0x7c11, 0x7c12, 0x7c13, 0x7c14, 0x7c15, 0x7c16, 0x7c17,
- 0x7c18, 0x7c19, 0x7c1a, 0x7c1b, 0x7c1c, 0x7c1d, 0x7c1e, 0x7c1f,
- 0x7c20, 0x7c21, 0x7c22, 0x7c23, 0x7c24, 0x7c25, 0x7c26, 0x7c27,
- 0x7c28, 0x7c29, 0x7c2a, 0x7c2b, 0x7c2c, 0x7c2d, 0x7c2e, 0x7c2f,
- 0x7c30, 0x7c31, 0x7c32, 0x7c33, 0x7c34, 0x7c35, 0x7c36, 0x7c37,
- 0x7c38, 0x7c39, 0x7c3a, 0x7c3b, 0x7c3c, 0x7c3d, 0x7c3e, 0x7c3f,
- 0x7c40, 0x7c41, 0x7c42, 0x7c43, 0x7c44, 0x7c45, 0x7c46, 0x7c47, /* 0x7c40 */
- 0x7c48, 0x7c49, 0x7c4a, 0x7c4b, 0x7c4c, 0x7c4d, 0x7c4e, 0x7c4f,
- 0x7c50, 0x7c51, 0x7c52, 0x7c53, 0x7c54, 0x7c55, 0x7c56, 0x7c57,
- 0x7c58, 0x7c59, 0x7c5a, 0x7c5b, 0x7c5c, 0x7c5d, 0x7c5e, 0x7c5f,
- 0x7c60, 0x7c61, 0x7c62, 0x7c63, 0x7c64, 0x7c65, 0x7c66, 0x7c67,
- 0x7c68, 0x7c69, 0x7c6a, 0x7c6b, 0x7c6c, 0x7c6d, 0x7c6e, 0x7c6f,
- 0x7c70, 0x7c71, 0x7c72, 0x7c73, 0x7c74, 0x7c75, 0x7c76, 0x7c77,
- 0x7c78, 0x7c79, 0x7c7a, 0x7c7b, 0x7c7c, 0x7c7d, 0x7c7e, 0x7c7f,
- 0x7c80, 0x7c81, 0x7c82, 0x7c83, 0x7c84, 0x7c85, 0x7c86, 0x7c87, /* 0x7c80 */
- 0x7c88, 0x7c89, 0x7c8a, 0x7c8b, 0x7c8c, 0x7c8d, 0x7c8e, 0x7c8f,
- 0x7c90, 0x7c91, 0x7c92, 0x7c93, 0x7c94, 0x7c95, 0x7c96, 0x7c97,
- 0x7c98, 0x7c99, 0x7c9a, 0x7c9b, 0x7c9c, 0x7c9d, 0x7c9e, 0x7c9f,
- 0x7ca0, 0x7ca1, 0x7ca2, 0x7ca3, 0x7ca4, 0x7ca5, 0x7ca6, 0x7ca7,
- 0x7ca8, 0x7ca9, 0x7caa, 0x7cab, 0x7cac, 0x7cad, 0x7cae, 0x7caf,
- 0x7cb0, 0x7cb1, 0x7cb2, 0x7cb3, 0x7cb4, 0x7cb5, 0x7cb6, 0x7cb7,
- 0x7cb8, 0x7cb9, 0x7cba, 0x7cbb, 0x7cbc, 0x7cbd, 0x7cbe, 0x7cbf,
- 0x7cc0, 0x7cc1, 0x7cc2, 0x7cc3, 0x7cc4, 0x7cc5, 0x7cc6, 0x7cc7, /* 0x7cc0 */
- 0x7cc8, 0x7cc9, 0x7cca, 0x7ccb, 0x7ccc, 0x7ccd, 0x7cce, 0x7ccf,
- 0x7cd0, 0x7cd1, 0x7cd2, 0x7cd3, 0x7cd4, 0x7cd5, 0x7cd6, 0x7cd7,
- 0x7cd8, 0x7cd9, 0x7cda, 0x7cdb, 0x7cdc, 0x7cdd, 0x7cde, 0x7cdf,
- 0x7ce0, 0x7ce1, 0x7ce2, 0x7ce3, 0x7ce4, 0x7ce5, 0x7ce6, 0x7ce7,
- 0x7ce8, 0x7ce9, 0x7cea, 0x7ceb, 0x7cec, 0x7ced, 0x7cee, 0x7cef,
- 0x7cf0, 0x7cf1, 0x7cf2, 0x7cf3, 0x7cf4, 0x7cf5, 0x7cf6, 0x7cf7,
- 0x7cf8, 0x7cf9, 0x7cfa, 0x7cfb, 0x7cfc, 0x7cfd, 0x7cfe, 0x7cff,
- 0x7d00, 0x7d01, 0x7d02, 0x7d03, 0x7d04, 0x7d05, 0x7d06, 0x7d07, /* 0x7d00 */
- 0x7d08, 0x7d09, 0x7d0a, 0x7d0b, 0x7d0c, 0x7d0d, 0x7d0e, 0x7d0f,
- 0x7d10, 0x7d11, 0x7d12, 0x7d13, 0x7d14, 0x7d15, 0x7d16, 0x7d17,
- 0x7d18, 0x7d19, 0x7d1a, 0x7d1b, 0x7d1c, 0x7d1d, 0x7d1e, 0x7d1f,
- 0x7d20, 0x7d21, 0x7d22, 0x7d23, 0x7d24, 0x7d25, 0x7d26, 0x7d27,
- 0x7d28, 0x7d29, 0x7d2a, 0x7d2b, 0x7d2c, 0x7d2d, 0x7d2e, 0x7d2f,
- 0x7d30, 0x7d31, 0x7d32, 0x7d33, 0x7d34, 0x7d35, 0x7d36, 0x7d37,
- 0x7d38, 0x7d39, 0x7d3a, 0x7d3b, 0x7d3c, 0x7d3d, 0x7d3e, 0x7d3f,
- 0x7d40, 0x7d41, 0x7d42, 0x7d43, 0x7d44, 0x7d45, 0x7d46, 0x7d47, /* 0x7d40 */
- 0x7d48, 0x7d49, 0x7d4a, 0x7d4b, 0x7d4c, 0x7d4d, 0x7d4e, 0x7d4f,
- 0x7d50, 0x7d51, 0x7d52, 0x7d53, 0x7d54, 0x7d55, 0x7d56, 0x7d57,
- 0x7d58, 0x7d59, 0x7d5a, 0x7d5b, 0x7d5c, 0x7d5d, 0x7d5e, 0x7d5f,
- 0x7d60, 0x7d61, 0x7d62, 0x7d63, 0x7d64, 0x7d65, 0x7d66, 0x7d67,
- 0x7d68, 0x7d69, 0x7d6a, 0x7d6b, 0x7d6c, 0x7d6d, 0x7d6e, 0x7d6f,
- 0x7d70, 0x7d71, 0x7d72, 0x7d73, 0x7d74, 0x7d75, 0x7d76, 0x7d77,
- 0x7d78, 0x7d79, 0x7d7a, 0x7d7b, 0x7d7c, 0x7d7d, 0x7d7e, 0x7d7f,
- 0x7d80, 0x7d81, 0x7d82, 0x7d83, 0x7d84, 0x7d85, 0x7d86, 0x7d87, /* 0x7d80 */
- 0x7d88, 0x7d89, 0x7d8a, 0x7d8b, 0x7d8c, 0x7d8d, 0x7d8e, 0x7d8f,
- 0x7d90, 0x7d91, 0x7d92, 0x7d93, 0x7d94, 0x7d95, 0x7d96, 0x7d97,
- 0x7d98, 0x7d99, 0x7d9a, 0x7d9b, 0x7d9c, 0x7d9d, 0x7d9e, 0x7d9f,
- 0x7da0, 0x7da1, 0x7da2, 0x7da3, 0x7da4, 0x7da5, 0x7da6, 0x7da7,
- 0x7da8, 0x7da9, 0x7daa, 0x7dab, 0x7dac, 0x7dad, 0x7dae, 0x7daf,
- 0x7db0, 0x7db1, 0x7db2, 0x7db3, 0x7db4, 0x7db5, 0x7db6, 0x7db7,
- 0x7db8, 0x7db9, 0x7dba, 0x7dbb, 0x7dbc, 0x7dbd, 0x7dbe, 0x7dbf,
- 0x7dc0, 0x7dc1, 0x7dc2, 0x7dc3, 0x7dc4, 0x7dc5, 0x7dc6, 0x7dc7, /* 0x7dc0 */
- 0x7dc8, 0x7dc9, 0x7dca, 0x7dcb, 0x7dcc, 0x7dcd, 0x7dce, 0x7dcf,
- 0x7dd0, 0x7dd1, 0x7dd2, 0x7dd3, 0x7dd4, 0x7dd5, 0x7dd6, 0x7dd7,
- 0x7dd8, 0x7dd9, 0x7dda, 0x7ddb, 0x7ddc, 0x7ddd, 0x7dde, 0x7ddf,
- 0x7de0, 0x7de1, 0x7de2, 0x7de3, 0x7de4, 0x7de5, 0x7de6, 0x7de7,
- 0x7de8, 0x7de9, 0x7dea, 0x7deb, 0x7dec, 0x7ded, 0x7dee, 0x7def,
- 0x7df0, 0x7df1, 0x7df2, 0x7df3, 0x7df4, 0x7df5, 0x7df6, 0x7df7,
- 0x7df8, 0x7df9, 0x7dfa, 0x7dfb, 0x7dfc, 0x7dfd, 0x7dfe, 0x7dff,
- 0x7e00, 0x7e01, 0x7e02, 0x7e03, 0x7e04, 0x7e05, 0x7e06, 0x7e07, /* 0x7e00 */
- 0x7e08, 0x7e09, 0x7e0a, 0x7e0b, 0x7e0c, 0x7e0d, 0x7e0e, 0x7e0f,
- 0x7e10, 0x7e11, 0x7e12, 0x7e13, 0x7e14, 0x7e15, 0x7e16, 0x7e17,
- 0x7e18, 0x7e19, 0x7e1a, 0x7e1b, 0x7e1c, 0x7e1d, 0x7e1e, 0x7e1f,
- 0x7e20, 0x7e21, 0x7e22, 0x7e23, 0x7e24, 0x7e25, 0x7e26, 0x7e27,
- 0x7e28, 0x7e29, 0x7e2a, 0x7e2b, 0x7e2c, 0x7e2d, 0x7e2e, 0x7e2f,
- 0x7e30, 0x7e31, 0x7e32, 0x7e33, 0x7e34, 0x7e35, 0x7e36, 0x7e37,
- 0x7e38, 0x7e39, 0x7e3a, 0x7e3b, 0x7e3c, 0x7e3d, 0x7e3e, 0x7e3f,
- 0x7e40, 0x7e41, 0x7e42, 0x7e43, 0x7e44, 0x7e45, 0x7e46, 0x7e47, /* 0x7e40 */
- 0x7e48, 0x7e49, 0x7e4a, 0x7e4b, 0x7e4c, 0x7e4d, 0x7e4e, 0x7e4f,
- 0x7e50, 0x7e51, 0x7e52, 0x7e53, 0x7e54, 0x7e55, 0x7e56, 0x7e57,
- 0x7e58, 0x7e59, 0x7e5a, 0x7e5b, 0x7e5c, 0x7e5d, 0x7e5e, 0x7e5f,
- 0x7e60, 0x7e61, 0x7e62, 0x7e63, 0x7e64, 0x7e65, 0x7e66, 0x7e67,
- 0x7e68, 0x7e69, 0x7e6a, 0x7e6b, 0x7e6c, 0x7e6d, 0x7e6e, 0x7e6f,
- 0x7e70, 0x7e71, 0x7e72, 0x7e73, 0x7e74, 0x7e75, 0x7e76, 0x7e77,
- 0x7e78, 0x7e79, 0x7e7a, 0x7e7b, 0x7e7c, 0x7e7d, 0x7e7e, 0x7e7f,
- 0x7e80, 0x7e81, 0x7e82, 0x7e83, 0x7e84, 0x7e85, 0x7e86, 0x7e87, /* 0x7e80 */
- 0x7e88, 0x7e89, 0x7e8a, 0x7e8b, 0x7e8c, 0x7e8d, 0x7e8e, 0x7e8f,
- 0x7e90, 0x7e91, 0x7e92, 0x7e93, 0x7e94, 0x7e95, 0x7e96, 0x7e97,
- 0x7e98, 0x7e99, 0x7e9a, 0x7e9b, 0x7e9c, 0x7e9d, 0x7e9e, 0x7e9f,
- 0x7ea0, 0x7ea1, 0x7ea2, 0x7ea3, 0x7ea4, 0x7ea5, 0x7ea6, 0x7ea7,
- 0x7ea8, 0x7ea9, 0x7eaa, 0x7eab, 0x7eac, 0x7ead, 0x7eae, 0x7eaf,
- 0x7eb0, 0x7eb1, 0x7eb2, 0x7eb3, 0x7eb4, 0x7eb5, 0x7eb6, 0x7eb7,
- 0x7eb8, 0x7eb9, 0x7eba, 0x7ebb, 0x7ebc, 0x7ebd, 0x7ebe, 0x7ebf,
- 0x7ec0, 0x7ec1, 0x7ec2, 0x7ec3, 0x7ec4, 0x7ec5, 0x7ec6, 0x7ec7, /* 0x7ec0 */
- 0x7ec8, 0x7ec9, 0x7eca, 0x7ecb, 0x7ecc, 0x7ecd, 0x7ece, 0x7ecf,
- 0x7ed0, 0x7ed1, 0x7ed2, 0x7ed3, 0x7ed4, 0x7ed5, 0x7ed6, 0x7ed7,
- 0x7ed8, 0x7ed9, 0x7eda, 0x7edb, 0x7edc, 0x7edd, 0x7ede, 0x7edf,
- 0x7ee0, 0x7ee1, 0x7ee2, 0x7ee3, 0x7ee4, 0x7ee5, 0x7ee6, 0x7ee7,
- 0x7ee8, 0x7ee9, 0x7eea, 0x7eeb, 0x7eec, 0x7eed, 0x7eee, 0x7eef,
- 0x7ef0, 0x7ef1, 0x7ef2, 0x7ef3, 0x7ef4, 0x7ef5, 0x7ef6, 0x7ef7,
- 0x7ef8, 0x7ef9, 0x7efa, 0x7efb, 0x7efc, 0x7efd, 0x7efe, 0x7eff,
- 0x7f00, 0x7f01, 0x7f02, 0x7f03, 0x7f04, 0x7f05, 0x7f06, 0x7f07, /* 0x7f00 */
- 0x7f08, 0x7f09, 0x7f0a, 0x7f0b, 0x7f0c, 0x7f0d, 0x7f0e, 0x7f0f,
- 0x7f10, 0x7f11, 0x7f12, 0x7f13, 0x7f14, 0x7f15, 0x7f16, 0x7f17,
- 0x7f18, 0x7f19, 0x7f1a, 0x7f1b, 0x7f1c, 0x7f1d, 0x7f1e, 0x7f1f,
- 0x7f20, 0x7f21, 0x7f22, 0x7f23, 0x7f24, 0x7f25, 0x7f26, 0x7f27,
- 0x7f28, 0x7f29, 0x7f2a, 0x7f2b, 0x7f2c, 0x7f2d, 0x7f2e, 0x7f2f,
- 0x7f30, 0x7f31, 0x7f32, 0x7f33, 0x7f34, 0x7f35, 0x7f36, 0x7f37,
- 0x7f38, 0x7f39, 0x7f3a, 0x7f3b, 0x7f3c, 0x7f3d, 0x7f3e, 0x7f3f,
- 0x7f40, 0x7f41, 0x7f42, 0x7f43, 0x7f44, 0x7f45, 0x7f46, 0x7f47, /* 0x7f40 */
- 0x7f48, 0x7f49, 0x7f4a, 0x7f4b, 0x7f4c, 0x7f4d, 0x7f4e, 0x7f4f,
- 0x7f50, 0x7f51, 0x7f52, 0x7f53, 0x7f54, 0x7f55, 0x7f56, 0x7f57,
- 0x7f58, 0x7f59, 0x7f5a, 0x7f5b, 0x7f5c, 0x7f5d, 0x7f5e, 0x7f5f,
- 0x7f60, 0x7f61, 0x7f62, 0x7f63, 0x7f64, 0x7f65, 0x7f66, 0x7f67,
- 0x7f68, 0x7f69, 0x7f6a, 0x7f6b, 0x7f6c, 0x7f6d, 0x7f6e, 0x7f6f,
- 0x7f70, 0x7f71, 0x7f72, 0x7f73, 0x7f74, 0x7f75, 0x7f76, 0x7f77,
- 0x7f78, 0x7f79, 0x7f7a, 0x7f7b, 0x7f7c, 0x7f7d, 0x7f7e, 0x7f7f,
- 0x7f80, 0x7f81, 0x7f82, 0x7f83, 0x7f84, 0x7f85, 0x7f86, 0x7f87, /* 0x7f80 */
- 0x7f88, 0x7f89, 0x7f8a, 0x7f8b, 0x7f8c, 0x7f8d, 0x7f8e, 0x7f8f,
- 0x7f90, 0x7f91, 0x7f92, 0x7f93, 0x7f94, 0x7f95, 0x7f96, 0x7f97,
- 0x7f98, 0x7f99, 0x7f9a, 0x7f9b, 0x7f9c, 0x7f9d, 0x7f9e, 0x7f9f,
- 0x7fa0, 0x7fa1, 0x7fa2, 0x7fa3, 0x7fa4, 0x7fa5, 0x7fa6, 0x7fa7,
- 0x7fa8, 0x7fa9, 0x7faa, 0x7fab, 0x7fac, 0x7fad, 0x7fae, 0x7faf,
- 0x7fb0, 0x7fb1, 0x7fb2, 0x7fb3, 0x7fb4, 0x7fb5, 0x7fb6, 0x7fb7,
- 0x7fb8, 0x7fb9, 0x7fba, 0x7fbb, 0x7fbc, 0x7fbd, 0x7fbe, 0x7fbf,
- 0x7fc0, 0x7fc1, 0x7fc2, 0x7fc3, 0x7fc4, 0x7fc5, 0x7fc6, 0x7fc7, /* 0x7fc0 */
- 0x7fc8, 0x7fc9, 0x7fca, 0x7fcb, 0x7fcc, 0x7fcd, 0x7fce, 0x7fcf,
- 0x7fd0, 0x7fd1, 0x7fd2, 0x7fd3, 0x7fd4, 0x7fd5, 0x7fd6, 0x7fd7,
- 0x7fd8, 0x7fd9, 0x7fda, 0x7fdb, 0x7fdc, 0x7fdd, 0x7fde, 0x7fdf,
- 0x7fe0, 0x7fe1, 0x7fe2, 0x7fe3, 0x7fe4, 0x7fe5, 0x7fe6, 0x7fe7,
- 0x7fe8, 0x7fe9, 0x7fea, 0x7feb, 0x7fec, 0x7fed, 0x7fee, 0x7fef,
- 0x7ff0, 0x7ff1, 0x7ff2, 0x7ff3, 0x7ff4, 0x7ff5, 0x7ff6, 0x7ff7,
- 0x7ff8, 0x7ff9, 0x7ffa, 0x7ffb, 0x7ffc, 0x7ffd, 0x7ffe, 0x7fff,
- 0x8000, 0x8001, 0x8002, 0x8003, 0x8004, 0x8005, 0x8006, 0x8007, /* 0x8000 */
- 0x8008, 0x8009, 0x800a, 0x800b, 0x800c, 0x800d, 0x800e, 0x800f,
- 0x8010, 0x8011, 0x8012, 0x8013, 0x8014, 0x8015, 0x8016, 0x8017,
- 0x8018, 0x8019, 0x801a, 0x801b, 0x801c, 0x801d, 0x801e, 0x801f,
- 0x8020, 0x8021, 0x8022, 0x8023, 0x8024, 0x8025, 0x8026, 0x8027,
- 0x8028, 0x8029, 0x802a, 0x802b, 0x802c, 0x802d, 0x802e, 0x802f,
- 0x8030, 0x8031, 0x8032, 0x8033, 0x8034, 0x8035, 0x8036, 0x8037,
- 0x8038, 0x8039, 0x803a, 0x803b, 0x803c, 0x803d, 0x803e, 0x803f,
- 0x8040, 0x8041, 0x8042, 0x8043, 0x8044, 0x8045, 0x8046, 0x8047, /* 0x8040 */
- 0x8048, 0x8049, 0x804a, 0x804b, 0x804c, 0x804d, 0x804e, 0x804f,
- 0x8050, 0x8051, 0x8052, 0x8053, 0x8054, 0x8055, 0x8056, 0x8057,
- 0x8058, 0x8059, 0x805a, 0x805b, 0x805c, 0x805d, 0x805e, 0x805f,
- 0x8060, 0x8061, 0x8062, 0x8063, 0x8064, 0x8065, 0x8066, 0x8067,
- 0x8068, 0x8069, 0x806a, 0x806b, 0x806c, 0x806d, 0x806e, 0x806f,
- 0x8070, 0x8071, 0x8072, 0x8073, 0x8074, 0x8075, 0x8076, 0x8077,
- 0x8078, 0x8079, 0x807a, 0x807b, 0x807c, 0x807d, 0x807e, 0x807f,
- 0x8080, 0x8081, 0x8082, 0x8083, 0x8084, 0x8085, 0x8086, 0x8087, /* 0x8080 */
- 0x8088, 0x8089, 0x808a, 0x808b, 0x808c, 0x808d, 0x808e, 0x808f,
- 0x8090, 0x8091, 0x8092, 0x8093, 0x8094, 0x8095, 0x8096, 0x8097,
- 0x8098, 0x8099, 0x809a, 0x809b, 0x809c, 0x809d, 0x809e, 0x809f,
- 0x80a0, 0x80a1, 0x80a2, 0x80a3, 0x80a4, 0x80a5, 0x80a6, 0x80a7,
- 0x80a8, 0x80a9, 0x80aa, 0x80ab, 0x80ac, 0x80ad, 0x80ae, 0x80af,
- 0x80b0, 0x80b1, 0x80b2, 0x80b3, 0x80b4, 0x80b5, 0x80b6, 0x80b7,
- 0x80b8, 0x80b9, 0x80ba, 0x80bb, 0x80bc, 0x80bd, 0x80be, 0x80bf,
- 0x80c0, 0x80c1, 0x80c2, 0x80c3, 0x80c4, 0x80c5, 0x80c6, 0x80c7, /* 0x80c0 */
- 0x80c8, 0x80c9, 0x80ca, 0x80cb, 0x80cc, 0x80cd, 0x80ce, 0x80cf,
- 0x80d0, 0x80d1, 0x80d2, 0x80d3, 0x80d4, 0x80d5, 0x80d6, 0x80d7,
- 0x80d8, 0x80d9, 0x80da, 0x80db, 0x80dc, 0x80dd, 0x80de, 0x80df,
- 0x80e0, 0x80e1, 0x80e2, 0x80e3, 0x80e4, 0x80e5, 0x80e6, 0x80e7,
- 0x80e8, 0x80e9, 0x80ea, 0x80eb, 0x80ec, 0x80ed, 0x80ee, 0x80ef,
- 0x80f0, 0x80f1, 0x80f2, 0x80f3, 0x80f4, 0x80f5, 0x80f6, 0x80f7,
- 0x80f8, 0x80f9, 0x80fa, 0x80fb, 0x80fc, 0x80fd, 0x80fe, 0x80ff,
- 0x8100, 0x8101, 0x8102, 0x8103, 0x8104, 0x8105, 0x8106, 0x8107, /* 0x8100 */
- 0x8108, 0x8109, 0x810a, 0x810b, 0x810c, 0x810d, 0x810e, 0x810f,
- 0x8110, 0x8111, 0x8112, 0x8113, 0x8114, 0x8115, 0x8116, 0x8117,
- 0x8118, 0x8119, 0x811a, 0x811b, 0x811c, 0x811d, 0x811e, 0x811f,
- 0x8120, 0x8121, 0x8122, 0x8123, 0x8124, 0x8125, 0x8126, 0x8127,
- 0x8128, 0x8129, 0x812a, 0x812b, 0x812c, 0x812d, 0x812e, 0x812f,
- 0x8130, 0x8131, 0x8132, 0x8133, 0x8134, 0x8135, 0x8136, 0x8137,
- 0x8138, 0x8139, 0x813a, 0x813b, 0x813c, 0x813d, 0x813e, 0x813f,
- 0x8140, 0x8141, 0x8142, 0x8143, 0x8144, 0x8145, 0x8146, 0x8147, /* 0x8140 */
- 0x8148, 0x8149, 0x814a, 0x814b, 0x814c, 0x814d, 0x814e, 0x814f,
- 0x8150, 0x8151, 0x8152, 0x8153, 0x8154, 0x8155, 0x8156, 0x8157,
- 0x8158, 0x8159, 0x815a, 0x815b, 0x815c, 0x815d, 0x815e, 0x815f,
- 0x8160, 0x8161, 0x8162, 0x8163, 0x8164, 0x8165, 0x8166, 0x8167,
- 0x8168, 0x8169, 0x816a, 0x816b, 0x816c, 0x816d, 0x816e, 0x816f,
- 0x8170, 0x8171, 0x8172, 0x8173, 0x8174, 0x8175, 0x8176, 0x8177,
- 0x8178, 0x8179, 0x817a, 0x817b, 0x817c, 0x817d, 0x817e, 0x817f,
- 0x8180, 0x8181, 0x8182, 0x8183, 0x8184, 0x8185, 0x8186, 0x8187, /* 0x8180 */
- 0x8188, 0x8189, 0x818a, 0x818b, 0x818c, 0x818d, 0x818e, 0x818f,
- 0x8190, 0x8191, 0x8192, 0x8193, 0x8194, 0x8195, 0x8196, 0x8197,
- 0x8198, 0x8199, 0x819a, 0x819b, 0x819c, 0x819d, 0x819e, 0x819f,
- 0x81a0, 0x81a1, 0x81a2, 0x81a3, 0x81a4, 0x81a5, 0x81a6, 0x81a7,
- 0x81a8, 0x81a9, 0x81aa, 0x81ab, 0x81ac, 0x81ad, 0x81ae, 0x81af,
- 0x81b0, 0x81b1, 0x81b2, 0x81b3, 0x81b4, 0x81b5, 0x81b6, 0x81b7,
- 0x81b8, 0x81b9, 0x81ba, 0x81bb, 0x81bc, 0x81bd, 0x81be, 0x81bf,
- 0x81c0, 0x81c1, 0x81c2, 0x81c3, 0x81c4, 0x81c5, 0x81c6, 0x81c7, /* 0x81c0 */
- 0x81c8, 0x81c9, 0x81ca, 0x81cb, 0x81cc, 0x81cd, 0x81ce, 0x81cf,
- 0x81d0, 0x81d1, 0x81d2, 0x81d3, 0x81d4, 0x81d5, 0x81d6, 0x81d7,
- 0x81d8, 0x81d9, 0x81da, 0x81db, 0x81dc, 0x81dd, 0x81de, 0x81df,
- 0x81e0, 0x81e1, 0x81e2, 0x81e3, 0x81e4, 0x81e5, 0x81e6, 0x81e7,
- 0x81e8, 0x81e9, 0x81ea, 0x81eb, 0x81ec, 0x81ed, 0x81ee, 0x81ef,
- 0x81f0, 0x81f1, 0x81f2, 0x81f3, 0x81f4, 0x81f5, 0x81f6, 0x81f7,
- 0x81f8, 0x81f9, 0x81fa, 0x81fb, 0x81fc, 0x81fd, 0x81fe, 0x81ff,
- 0x8200, 0x8201, 0x8202, 0x8203, 0x8204, 0x8205, 0x8206, 0x8207, /* 0x8200 */
- 0x8208, 0x8209, 0x820a, 0x820b, 0x820c, 0x820d, 0x820e, 0x820f,
- 0x8210, 0x8211, 0x8212, 0x8213, 0x8214, 0x8215, 0x8216, 0x8217,
- 0x8218, 0x8219, 0x821a, 0x821b, 0x821c, 0x821d, 0x821e, 0x821f,
- 0x8220, 0x8221, 0x8222, 0x8223, 0x8224, 0x8225, 0x8226, 0x8227,
- 0x8228, 0x8229, 0x822a, 0x822b, 0x822c, 0x822d, 0x822e, 0x822f,
- 0x8230, 0x8231, 0x8232, 0x8233, 0x8234, 0x8235, 0x8236, 0x8237,
- 0x8238, 0x8239, 0x823a, 0x823b, 0x823c, 0x823d, 0x823e, 0x823f,
- 0x8240, 0x8241, 0x8242, 0x8243, 0x8244, 0x8245, 0x8246, 0x8247, /* 0x8240 */
- 0x8248, 0x8249, 0x824a, 0x824b, 0x824c, 0x824d, 0x824e, 0x824f,
- 0x8250, 0x8251, 0x8252, 0x8253, 0x8254, 0x8255, 0x8256, 0x8257,
- 0x8258, 0x8259, 0x825a, 0x825b, 0x825c, 0x825d, 0x825e, 0x825f,
- 0x8260, 0x8261, 0x8262, 0x8263, 0x8264, 0x8265, 0x8266, 0x8267,
- 0x8268, 0x8269, 0x826a, 0x826b, 0x826c, 0x826d, 0x826e, 0x826f,
- 0x8270, 0x8271, 0x8272, 0x8273, 0x8274, 0x8275, 0x8276, 0x8277,
- 0x8278, 0x8279, 0x827a, 0x827b, 0x827c, 0x827d, 0x827e, 0x827f,
- 0x8280, 0x8281, 0x8282, 0x8283, 0x8284, 0x8285, 0x8286, 0x8287, /* 0x8280 */
- 0x8288, 0x8289, 0x828a, 0x828b, 0x828c, 0x828d, 0x828e, 0x828f,
- 0x8290, 0x8291, 0x8292, 0x8293, 0x8294, 0x8295, 0x8296, 0x8297,
- 0x8298, 0x8299, 0x829a, 0x829b, 0x829c, 0x829d, 0x829e, 0x829f,
- 0x82a0, 0x82a1, 0x82a2, 0x82a3, 0x82a4, 0x82a5, 0x82a6, 0x82a7,
- 0x82a8, 0x82a9, 0x82aa, 0x82ab, 0x82ac, 0x82ad, 0x82ae, 0x82af,
- 0x82b0, 0x82b1, 0x82b2, 0x82b3, 0x82b4, 0x82b5, 0x82b6, 0x82b7,
- 0x82b8, 0x82b9, 0x82ba, 0x82bb, 0x82bc, 0x82bd, 0x82be, 0x82bf,
- 0x82c0, 0x82c1, 0x82c2, 0x82c3, 0x82c4, 0x82c5, 0x82c6, 0x82c7, /* 0x82c0 */
- 0x82c8, 0x82c9, 0x82ca, 0x82cb, 0x82cc, 0x82cd, 0x82ce, 0x82cf,
- 0x82d0, 0x82d1, 0x82d2, 0x82d3, 0x82d4, 0x82d5, 0x82d6, 0x82d7,
- 0x82d8, 0x82d9, 0x82da, 0x82db, 0x82dc, 0x82dd, 0x82de, 0x82df,
- 0x82e0, 0x82e1, 0x82e2, 0x82e3, 0x82e4, 0x82e5, 0x82e6, 0x82e7,
- 0x82e8, 0x82e9, 0x82ea, 0x82eb, 0x82ec, 0x82ed, 0x82ee, 0x82ef,
- 0x82f0, 0x82f1, 0x82f2, 0x82f3, 0x82f4, 0x82f5, 0x82f6, 0x82f7,
- 0x82f8, 0x82f9, 0x82fa, 0x82fb, 0x82fc, 0x82fd, 0x82fe, 0x82ff,
- 0x8300, 0x8301, 0x8302, 0x8303, 0x8304, 0x8305, 0x8306, 0x8307, /* 0x8300 */
- 0x8308, 0x8309, 0x830a, 0x830b, 0x830c, 0x830d, 0x830e, 0x830f,
- 0x8310, 0x8311, 0x8312, 0x8313, 0x8314, 0x8315, 0x8316, 0x8317,
- 0x8318, 0x8319, 0x831a, 0x831b, 0x831c, 0x831d, 0x831e, 0x831f,
- 0x8320, 0x8321, 0x8322, 0x8323, 0x8324, 0x8325, 0x8326, 0x8327,
- 0x8328, 0x8329, 0x832a, 0x832b, 0x832c, 0x832d, 0x832e, 0x832f,
- 0x8330, 0x8331, 0x8332, 0x8333, 0x8334, 0x8335, 0x8336, 0x8337,
- 0x8338, 0x8339, 0x833a, 0x833b, 0x833c, 0x833d, 0x833e, 0x833f,
- 0x8340, 0x8341, 0x8342, 0x8343, 0x8344, 0x8345, 0x8346, 0x8347, /* 0x8340 */
- 0x8348, 0x8349, 0x834a, 0x834b, 0x834c, 0x834d, 0x834e, 0x834f,
- 0x8350, 0x8351, 0x8352, 0x8353, 0x8354, 0x8355, 0x8356, 0x8357,
- 0x8358, 0x8359, 0x835a, 0x835b, 0x835c, 0x835d, 0x835e, 0x835f,
- 0x8360, 0x8361, 0x8362, 0x8363, 0x8364, 0x8365, 0x8366, 0x8367,
- 0x8368, 0x8369, 0x836a, 0x836b, 0x836c, 0x836d, 0x836e, 0x836f,
- 0x8370, 0x8371, 0x8372, 0x8373, 0x8374, 0x8375, 0x8376, 0x8377,
- 0x8378, 0x8379, 0x837a, 0x837b, 0x837c, 0x837d, 0x837e, 0x837f,
- 0x8380, 0x8381, 0x8382, 0x8383, 0x8384, 0x8385, 0x8386, 0x8387, /* 0x8380 */
- 0x8388, 0x8389, 0x838a, 0x838b, 0x838c, 0x838d, 0x838e, 0x838f,
- 0x8390, 0x8391, 0x8392, 0x8393, 0x8394, 0x8395, 0x8396, 0x8397,
- 0x8398, 0x8399, 0x839a, 0x839b, 0x839c, 0x839d, 0x839e, 0x839f,
- 0x83a0, 0x83a1, 0x83a2, 0x83a3, 0x83a4, 0x83a5, 0x83a6, 0x83a7,
- 0x83a8, 0x83a9, 0x83aa, 0x83ab, 0x83ac, 0x83ad, 0x83ae, 0x83af,
- 0x83b0, 0x83b1, 0x83b2, 0x83b3, 0x83b4, 0x83b5, 0x83b6, 0x83b7,
- 0x83b8, 0x83b9, 0x83ba, 0x83bb, 0x83bc, 0x83bd, 0x83be, 0x83bf,
- 0x83c0, 0x83c1, 0x83c2, 0x83c3, 0x83c4, 0x83c5, 0x83c6, 0x83c7, /* 0x83c0 */
- 0x83c8, 0x83c9, 0x83ca, 0x83cb, 0x83cc, 0x83cd, 0x83ce, 0x83cf,
- 0x83d0, 0x83d1, 0x83d2, 0x83d3, 0x83d4, 0x83d5, 0x83d6, 0x83d7,
- 0x83d8, 0x83d9, 0x83da, 0x83db, 0x83dc, 0x83dd, 0x83de, 0x83df,
- 0x83e0, 0x83e1, 0x83e2, 0x83e3, 0x83e4, 0x83e5, 0x83e6, 0x83e7,
- 0x83e8, 0x83e9, 0x83ea, 0x83eb, 0x83ec, 0x83ed, 0x83ee, 0x83ef,
- 0x83f0, 0x83f1, 0x83f2, 0x83f3, 0x83f4, 0x83f5, 0x83f6, 0x83f7,
- 0x83f8, 0x83f9, 0x83fa, 0x83fb, 0x83fc, 0x83fd, 0x83fe, 0x83ff,
- 0x8400, 0x8401, 0x8402, 0x8403, 0x8404, 0x8405, 0x8406, 0x8407, /* 0x8400 */
- 0x8408, 0x8409, 0x840a, 0x840b, 0x840c, 0x840d, 0x840e, 0x840f,
- 0x8410, 0x8411, 0x8412, 0x8413, 0x8414, 0x8415, 0x8416, 0x8417,
- 0x8418, 0x8419, 0x841a, 0x841b, 0x841c, 0x841d, 0x841e, 0x841f,
- 0x8420, 0x8421, 0x8422, 0x8423, 0x8424, 0x8425, 0x8426, 0x8427,
- 0x8428, 0x8429, 0x842a, 0x842b, 0x842c, 0x842d, 0x842e, 0x842f,
- 0x8430, 0x8431, 0x8432, 0x8433, 0x8434, 0x8435, 0x8436, 0x8437,
- 0x8438, 0x8439, 0x843a, 0x843b, 0x843c, 0x843d, 0x843e, 0x843f,
- 0x8440, 0x8441, 0x8442, 0x8443, 0x8444, 0x8445, 0x8446, 0x8447, /* 0x8440 */
- 0x8448, 0x8449, 0x844a, 0x844b, 0x844c, 0x844d, 0x844e, 0x844f,
- 0x8450, 0x8451, 0x8452, 0x8453, 0x8454, 0x8455, 0x8456, 0x8457,
- 0x8458, 0x8459, 0x845a, 0x845b, 0x845c, 0x845d, 0x845e, 0x845f,
- 0x8460, 0x8461, 0x8462, 0x8463, 0x8464, 0x8465, 0x8466, 0x8467,
- 0x8468, 0x8469, 0x846a, 0x846b, 0x846c, 0x846d, 0x846e, 0x846f,
- 0x8470, 0x8471, 0x8472, 0x8473, 0x8474, 0x8475, 0x8476, 0x8477,
- 0x8478, 0x8479, 0x847a, 0x847b, 0x847c, 0x847d, 0x847e, 0x847f,
- 0x8480, 0x8481, 0x8482, 0x8483, 0x8484, 0x8485, 0x8486, 0x8487, /* 0x8480 */
- 0x8488, 0x8489, 0x848a, 0x848b, 0x848c, 0x848d, 0x848e, 0x848f,
- 0x8490, 0x8491, 0x8492, 0x8493, 0x8494, 0x8495, 0x8496, 0x8497,
- 0x8498, 0x8499, 0x849a, 0x849b, 0x849c, 0x849d, 0x849e, 0x849f,
- 0x84a0, 0x84a1, 0x84a2, 0x84a3, 0x84a4, 0x84a5, 0x84a6, 0x84a7,
- 0x84a8, 0x84a9, 0x84aa, 0x84ab, 0x84ac, 0x84ad, 0x84ae, 0x84af,
- 0x84b0, 0x84b1, 0x84b2, 0x84b3, 0x84b4, 0x84b5, 0x84b6, 0x84b7,
- 0x84b8, 0x84b9, 0x84ba, 0x84bb, 0x84bc, 0x84bd, 0x84be, 0x84bf,
- 0x84c0, 0x84c1, 0x84c2, 0x84c3, 0x84c4, 0x84c5, 0x84c6, 0x84c7, /* 0x84c0 */
- 0x84c8, 0x84c9, 0x84ca, 0x84cb, 0x84cc, 0x84cd, 0x84ce, 0x84cf,
- 0x84d0, 0x84d1, 0x84d2, 0x84d3, 0x84d4, 0x84d5, 0x84d6, 0x84d7,
- 0x84d8, 0x84d9, 0x84da, 0x84db, 0x84dc, 0x84dd, 0x84de, 0x84df,
- 0x84e0, 0x84e1, 0x84e2, 0x84e3, 0x84e4, 0x84e5, 0x84e6, 0x84e7,
- 0x84e8, 0x84e9, 0x84ea, 0x84eb, 0x84ec, 0x84ed, 0x84ee, 0x84ef,
- 0x84f0, 0x84f1, 0x84f2, 0x84f3, 0x84f4, 0x84f5, 0x84f6, 0x84f7,
- 0x84f8, 0x84f9, 0x84fa, 0x84fb, 0x84fc, 0x84fd, 0x84fe, 0x84ff,
- 0x8500, 0x8501, 0x8502, 0x8503, 0x8504, 0x8505, 0x8506, 0x8507, /* 0x8500 */
- 0x8508, 0x8509, 0x850a, 0x850b, 0x850c, 0x850d, 0x850e, 0x850f,
- 0x8510, 0x8511, 0x8512, 0x8513, 0x8514, 0x8515, 0x8516, 0x8517,
- 0x8518, 0x8519, 0x851a, 0x851b, 0x851c, 0x851d, 0x851e, 0x851f,
- 0x8520, 0x8521, 0x8522, 0x8523, 0x8524, 0x8525, 0x8526, 0x8527,
- 0x8528, 0x8529, 0x852a, 0x852b, 0x852c, 0x852d, 0x852e, 0x852f,
- 0x8530, 0x8531, 0x8532, 0x8533, 0x8534, 0x8535, 0x8536, 0x8537,
- 0x8538, 0x8539, 0x853a, 0x853b, 0x853c, 0x853d, 0x853e, 0x853f,
- 0x8540, 0x8541, 0x8542, 0x8543, 0x8544, 0x8545, 0x8546, 0x8547, /* 0x8540 */
- 0x8548, 0x8549, 0x854a, 0x854b, 0x854c, 0x854d, 0x854e, 0x854f,
- 0x8550, 0x8551, 0x8552, 0x8553, 0x8554, 0x8555, 0x8556, 0x8557,
- 0x8558, 0x8559, 0x855a, 0x855b, 0x855c, 0x855d, 0x855e, 0x855f,
- 0x8560, 0x8561, 0x8562, 0x8563, 0x8564, 0x8565, 0x8566, 0x8567,
- 0x8568, 0x8569, 0x856a, 0x856b, 0x856c, 0x856d, 0x856e, 0x856f,
- 0x8570, 0x8571, 0x8572, 0x8573, 0x8574, 0x8575, 0x8576, 0x8577,
- 0x8578, 0x8579, 0x857a, 0x857b, 0x857c, 0x857d, 0x857e, 0x857f,
- 0x8580, 0x8581, 0x8582, 0x8583, 0x8584, 0x8585, 0x8586, 0x8587, /* 0x8580 */
- 0x8588, 0x8589, 0x858a, 0x858b, 0x858c, 0x858d, 0x858e, 0x858f,
- 0x8590, 0x8591, 0x8592, 0x8593, 0x8594, 0x8595, 0x8596, 0x8597,
- 0x8598, 0x8599, 0x859a, 0x859b, 0x859c, 0x859d, 0x859e, 0x859f,
- 0x85a0, 0x85a1, 0x85a2, 0x85a3, 0x85a4, 0x85a5, 0x85a6, 0x85a7,
- 0x85a8, 0x85a9, 0x85aa, 0x85ab, 0x85ac, 0x85ad, 0x85ae, 0x85af,
- 0x85b0, 0x85b1, 0x85b2, 0x85b3, 0x85b4, 0x85b5, 0x85b6, 0x85b7,
- 0x85b8, 0x85b9, 0x85ba, 0x85bb, 0x85bc, 0x85bd, 0x85be, 0x85bf,
- 0x85c0, 0x85c1, 0x85c2, 0x85c3, 0x85c4, 0x85c5, 0x85c6, 0x85c7, /* 0x85c0 */
- 0x85c8, 0x85c9, 0x85ca, 0x85cb, 0x85cc, 0x85cd, 0x85ce, 0x85cf,
- 0x85d0, 0x85d1, 0x85d2, 0x85d3, 0x85d4, 0x85d5, 0x85d6, 0x85d7,
- 0x85d8, 0x85d9, 0x85da, 0x85db, 0x85dc, 0x85dd, 0x85de, 0x85df,
- 0x85e0, 0x85e1, 0x85e2, 0x85e3, 0x85e4, 0x85e5, 0x85e6, 0x85e7,
- 0x85e8, 0x85e9, 0x85ea, 0x85eb, 0x85ec, 0x85ed, 0x85ee, 0x85ef,
- 0x85f0, 0x85f1, 0x85f2, 0x85f3, 0x85f4, 0x85f5, 0x85f6, 0x85f7,
- 0x85f8, 0x85f9, 0x85fa, 0x85fb, 0x85fc, 0x85fd, 0x85fe, 0x85ff,
- 0x8600, 0x8601, 0x8602, 0x8603, 0x8604, 0x8605, 0x8606, 0x8607, /* 0x8600 */
- 0x8608, 0x8609, 0x860a, 0x860b, 0x860c, 0x860d, 0x860e, 0x860f,
- 0x8610, 0x8611, 0x8612, 0x8613, 0x8614, 0x8615, 0x8616, 0x8617,
- 0x8618, 0x8619, 0x861a, 0x861b, 0x861c, 0x861d, 0x861e, 0x861f,
- 0x8620, 0x8621, 0x8622, 0x8623, 0x8624, 0x8625, 0x8626, 0x8627,
- 0x8628, 0x8629, 0x862a, 0x862b, 0x862c, 0x862d, 0x862e, 0x862f,
- 0x8630, 0x8631, 0x8632, 0x8633, 0x8634, 0x8635, 0x8636, 0x8637,
- 0x8638, 0x8639, 0x863a, 0x863b, 0x863c, 0x863d, 0x863e, 0x863f,
- 0x8640, 0x8641, 0x8642, 0x8643, 0x8644, 0x8645, 0x8646, 0x8647, /* 0x8640 */
- 0x8648, 0x8649, 0x864a, 0x864b, 0x864c, 0x864d, 0x864e, 0x864f,
- 0x8650, 0x8651, 0x8652, 0x8653, 0x8654, 0x8655, 0x8656, 0x8657,
- 0x8658, 0x8659, 0x865a, 0x865b, 0x865c, 0x865d, 0x865e, 0x865f,
- 0x8660, 0x8661, 0x8662, 0x8663, 0x8664, 0x8665, 0x8666, 0x8667,
- 0x8668, 0x8669, 0x866a, 0x866b, 0x866c, 0x866d, 0x866e, 0x866f,
- 0x8670, 0x8671, 0x8672, 0x8673, 0x8674, 0x8675, 0x8676, 0x8677,
- 0x8678, 0x8679, 0x867a, 0x867b, 0x867c, 0x867d, 0x867e, 0x867f,
- 0x8680, 0x8681, 0x8682, 0x8683, 0x8684, 0x8685, 0x8686, 0x8687, /* 0x8680 */
- 0x8688, 0x8689, 0x868a, 0x868b, 0x868c, 0x868d, 0x868e, 0x868f,
- 0x8690, 0x8691, 0x8692, 0x8693, 0x8694, 0x8695, 0x8696, 0x8697,
- 0x8698, 0x8699, 0x869a, 0x869b, 0x869c, 0x869d, 0x869e, 0x869f,
- 0x86a0, 0x86a1, 0x86a2, 0x86a3, 0x86a4, 0x86a5, 0x86a6, 0x86a7,
- 0x86a8, 0x86a9, 0x86aa, 0x86ab, 0x86ac, 0x86ad, 0x86ae, 0x86af,
- 0x86b0, 0x86b1, 0x86b2, 0x86b3, 0x86b4, 0x86b5, 0x86b6, 0x86b7,
- 0x86b8, 0x86b9, 0x86ba, 0x86bb, 0x86bc, 0x86bd, 0x86be, 0x86bf,
- 0x86c0, 0x86c1, 0x86c2, 0x86c3, 0x86c4, 0x86c5, 0x86c6, 0x86c7, /* 0x86c0 */
- 0x86c8, 0x86c9, 0x86ca, 0x86cb, 0x86cc, 0x86cd, 0x86ce, 0x86cf,
- 0x86d0, 0x86d1, 0x86d2, 0x86d3, 0x86d4, 0x86d5, 0x86d6, 0x86d7,
- 0x86d8, 0x86d9, 0x86da, 0x86db, 0x86dc, 0x86dd, 0x86de, 0x86df,
- 0x86e0, 0x86e1, 0x86e2, 0x86e3, 0x86e4, 0x86e5, 0x86e6, 0x86e7,
- 0x86e8, 0x86e9, 0x86ea, 0x86eb, 0x86ec, 0x86ed, 0x86ee, 0x86ef,
- 0x86f0, 0x86f1, 0x86f2, 0x86f3, 0x86f4, 0x86f5, 0x86f6, 0x86f7,
- 0x86f8, 0x86f9, 0x86fa, 0x86fb, 0x86fc, 0x86fd, 0x86fe, 0x86ff,
- 0x8700, 0x8701, 0x8702, 0x8703, 0x8704, 0x8705, 0x8706, 0x8707, /* 0x8700 */
- 0x8708, 0x8709, 0x870a, 0x870b, 0x870c, 0x870d, 0x870e, 0x870f,
- 0x8710, 0x8711, 0x8712, 0x8713, 0x8714, 0x8715, 0x8716, 0x8717,
- 0x8718, 0x8719, 0x871a, 0x871b, 0x871c, 0x871d, 0x871e, 0x871f,
- 0x8720, 0x8721, 0x8722, 0x8723, 0x8724, 0x8725, 0x8726, 0x8727,
- 0x8728, 0x8729, 0x872a, 0x872b, 0x872c, 0x872d, 0x872e, 0x872f,
- 0x8730, 0x8731, 0x8732, 0x8733, 0x8734, 0x8735, 0x8736, 0x8737,
- 0x8738, 0x8739, 0x873a, 0x873b, 0x873c, 0x873d, 0x873e, 0x873f,
- 0x8740, 0x8741, 0x8742, 0x8743, 0x8744, 0x8745, 0x8746, 0x8747, /* 0x8740 */
- 0x8748, 0x8749, 0x874a, 0x874b, 0x874c, 0x874d, 0x874e, 0x874f,
- 0x8750, 0x8751, 0x8752, 0x8753, 0x8754, 0x8755, 0x8756, 0x8757,
- 0x8758, 0x8759, 0x875a, 0x875b, 0x875c, 0x875d, 0x875e, 0x875f,
- 0x8760, 0x8761, 0x8762, 0x8763, 0x8764, 0x8765, 0x8766, 0x8767,
- 0x8768, 0x8769, 0x876a, 0x876b, 0x876c, 0x876d, 0x876e, 0x876f,
- 0x8770, 0x8771, 0x8772, 0x8773, 0x8774, 0x8775, 0x8776, 0x8777,
- 0x8778, 0x8779, 0x877a, 0x877b, 0x877c, 0x877d, 0x877e, 0x877f,
- 0x8780, 0x8781, 0x8782, 0x8783, 0x8784, 0x8785, 0x8786, 0x8787, /* 0x8780 */
- 0x8788, 0x8789, 0x878a, 0x878b, 0x878c, 0x878d, 0x878e, 0x878f,
- 0x8790, 0x8791, 0x8792, 0x8793, 0x8794, 0x8795, 0x8796, 0x8797,
- 0x8798, 0x8799, 0x879a, 0x879b, 0x879c, 0x879d, 0x879e, 0x879f,
- 0x87a0, 0x87a1, 0x87a2, 0x87a3, 0x87a4, 0x87a5, 0x87a6, 0x87a7,
- 0x87a8, 0x87a9, 0x87aa, 0x87ab, 0x87ac, 0x87ad, 0x87ae, 0x87af,
- 0x87b0, 0x87b1, 0x87b2, 0x87b3, 0x87b4, 0x87b5, 0x87b6, 0x87b7,
- 0x87b8, 0x87b9, 0x87ba, 0x87bb, 0x87bc, 0x87bd, 0x87be, 0x87bf,
- 0x87c0, 0x87c1, 0x87c2, 0x87c3, 0x87c4, 0x87c5, 0x87c6, 0x87c7, /* 0x87c0 */
- 0x87c8, 0x87c9, 0x87ca, 0x87cb, 0x87cc, 0x87cd, 0x87ce, 0x87cf,
- 0x87d0, 0x87d1, 0x87d2, 0x87d3, 0x87d4, 0x87d5, 0x87d6, 0x87d7,
- 0x87d8, 0x87d9, 0x87da, 0x87db, 0x87dc, 0x87dd, 0x87de, 0x87df,
- 0x87e0, 0x87e1, 0x87e2, 0x87e3, 0x87e4, 0x87e5, 0x87e6, 0x87e7,
- 0x87e8, 0x87e9, 0x87ea, 0x87eb, 0x87ec, 0x87ed, 0x87ee, 0x87ef,
- 0x87f0, 0x87f1, 0x87f2, 0x87f3, 0x87f4, 0x87f5, 0x87f6, 0x87f7,
- 0x87f8, 0x87f9, 0x87fa, 0x87fb, 0x87fc, 0x87fd, 0x87fe, 0x87ff,
- 0x8800, 0x8801, 0x8802, 0x8803, 0x8804, 0x8805, 0x8806, 0x8807, /* 0x8800 */
- 0x8808, 0x8809, 0x880a, 0x880b, 0x880c, 0x880d, 0x880e, 0x880f,
- 0x8810, 0x8811, 0x8812, 0x8813, 0x8814, 0x8815, 0x8816, 0x8817,
- 0x8818, 0x8819, 0x881a, 0x881b, 0x881c, 0x881d, 0x881e, 0x881f,
- 0x8820, 0x8821, 0x8822, 0x8823, 0x8824, 0x8825, 0x8826, 0x8827,
- 0x8828, 0x8829, 0x882a, 0x882b, 0x882c, 0x882d, 0x882e, 0x882f,
- 0x8830, 0x8831, 0x8832, 0x8833, 0x8834, 0x8835, 0x8836, 0x8837,
- 0x8838, 0x8839, 0x883a, 0x883b, 0x883c, 0x883d, 0x883e, 0x883f,
- 0x8840, 0x8841, 0x8842, 0x8843, 0x8844, 0x8845, 0x8846, 0x8847, /* 0x8840 */
- 0x8848, 0x8849, 0x884a, 0x884b, 0x884c, 0x884d, 0x884e, 0x884f,
- 0x8850, 0x8851, 0x8852, 0x8853, 0x8854, 0x8855, 0x8856, 0x8857,
- 0x8858, 0x8859, 0x885a, 0x885b, 0x885c, 0x885d, 0x885e, 0x885f,
- 0x8860, 0x8861, 0x8862, 0x8863, 0x8864, 0x8865, 0x8866, 0x8867,
- 0x8868, 0x8869, 0x886a, 0x886b, 0x886c, 0x886d, 0x886e, 0x886f,
- 0x8870, 0x8871, 0x8872, 0x8873, 0x8874, 0x8875, 0x8876, 0x8877,
- 0x8878, 0x8879, 0x887a, 0x887b, 0x887c, 0x887d, 0x887e, 0x887f,
- 0x8880, 0x8881, 0x8882, 0x8883, 0x8884, 0x8885, 0x8886, 0x8887, /* 0x8880 */
- 0x8888, 0x8889, 0x888a, 0x888b, 0x888c, 0x888d, 0x888e, 0x888f,
- 0x8890, 0x8891, 0x8892, 0x8893, 0x8894, 0x8895, 0x8896, 0x8897,
- 0x8898, 0x8899, 0x889a, 0x889b, 0x889c, 0x889d, 0x889e, 0x889f,
- 0x88a0, 0x88a1, 0x88a2, 0x88a3, 0x88a4, 0x88a5, 0x88a6, 0x88a7,
- 0x88a8, 0x88a9, 0x88aa, 0x88ab, 0x88ac, 0x88ad, 0x88ae, 0x88af,
- 0x88b0, 0x88b1, 0x88b2, 0x88b3, 0x88b4, 0x88b5, 0x88b6, 0x88b7,
- 0x88b8, 0x88b9, 0x88ba, 0x88bb, 0x88bc, 0x88bd, 0x88be, 0x88bf,
- 0x88c0, 0x88c1, 0x88c2, 0x88c3, 0x88c4, 0x88c5, 0x88c6, 0x88c7, /* 0x88c0 */
- 0x88c8, 0x88c9, 0x88ca, 0x88cb, 0x88cc, 0x88cd, 0x88ce, 0x88cf,
- 0x88d0, 0x88d1, 0x88d2, 0x88d3, 0x88d4, 0x88d5, 0x88d6, 0x88d7,
- 0x88d8, 0x88d9, 0x88da, 0x88db, 0x88dc, 0x88dd, 0x88de, 0x88df,
- 0x88e0, 0x88e1, 0x88e2, 0x88e3, 0x88e4, 0x88e5, 0x88e6, 0x88e7,
- 0x88e8, 0x88e9, 0x88ea, 0x88eb, 0x88ec, 0x88ed, 0x88ee, 0x88ef,
- 0x88f0, 0x88f1, 0x88f2, 0x88f3, 0x88f4, 0x88f5, 0x88f6, 0x88f7,
- 0x88f8, 0x88f9, 0x88fa, 0x88fb, 0x88fc, 0x88fd, 0x88fe, 0x88ff,
- 0x8900, 0x8901, 0x8902, 0x8903, 0x8904, 0x8905, 0x8906, 0x8907, /* 0x8900 */
- 0x8908, 0x8909, 0x890a, 0x890b, 0x890c, 0x890d, 0x890e, 0x890f,
- 0x8910, 0x8911, 0x8912, 0x8913, 0x8914, 0x8915, 0x8916, 0x8917,
- 0x8918, 0x8919, 0x891a, 0x891b, 0x891c, 0x891d, 0x891e, 0x891f,
- 0x8920, 0x8921, 0x8922, 0x8923, 0x8924, 0x8925, 0x8926, 0x8927,
- 0x8928, 0x8929, 0x892a, 0x892b, 0x892c, 0x892d, 0x892e, 0x892f,
- 0x8930, 0x8931, 0x8932, 0x8933, 0x8934, 0x8935, 0x8936, 0x8937,
- 0x8938, 0x8939, 0x893a, 0x893b, 0x893c, 0x893d, 0x893e, 0x893f,
- 0x8940, 0x8941, 0x8942, 0x8943, 0x8944, 0x8945, 0x8946, 0x8947, /* 0x8940 */
- 0x8948, 0x8949, 0x894a, 0x894b, 0x894c, 0x894d, 0x894e, 0x894f,
- 0x8950, 0x8951, 0x8952, 0x8953, 0x8954, 0x8955, 0x8956, 0x8957,
- 0x8958, 0x8959, 0x895a, 0x895b, 0x895c, 0x895d, 0x895e, 0x895f,
- 0x8960, 0x8961, 0x8962, 0x8963, 0x8964, 0x8965, 0x8966, 0x8967,
- 0x8968, 0x8969, 0x896a, 0x896b, 0x896c, 0x896d, 0x896e, 0x896f,
- 0x8970, 0x8971, 0x8972, 0x8973, 0x8974, 0x8975, 0x8976, 0x8977,
- 0x8978, 0x8979, 0x897a, 0x897b, 0x897c, 0x897d, 0x897e, 0x897f,
- 0x8980, 0x8981, 0x8982, 0x8983, 0x8984, 0x8985, 0x8986, 0x8987, /* 0x8980 */
- 0x8988, 0x8989, 0x898a, 0x898b, 0x898c, 0x898d, 0x898e, 0x898f,
- 0x8990, 0x8991, 0x8992, 0x8993, 0x8994, 0x8995, 0x8996, 0x8997,
- 0x8998, 0x8999, 0x899a, 0x899b, 0x899c, 0x899d, 0x899e, 0x899f,
- 0x89a0, 0x89a1, 0x89a2, 0x89a3, 0x89a4, 0x89a5, 0x89a6, 0x89a7,
- 0x89a8, 0x89a9, 0x89aa, 0x89ab, 0x89ac, 0x89ad, 0x89ae, 0x89af,
- 0x89b0, 0x89b1, 0x89b2, 0x89b3, 0x89b4, 0x89b5, 0x89b6, 0x89b7,
- 0x89b8, 0x89b9, 0x89ba, 0x89bb, 0x89bc, 0x89bd, 0x89be, 0x89bf,
- 0x89c0, 0x89c1, 0x89c2, 0x89c3, 0x89c4, 0x89c5, 0x89c6, 0x89c7, /* 0x89c0 */
- 0x89c8, 0x89c9, 0x89ca, 0x89cb, 0x89cc, 0x89cd, 0x89ce, 0x89cf,
- 0x89d0, 0x89d1, 0x89d2, 0x89d3, 0x89d4, 0x89d5, 0x89d6, 0x89d7,
- 0x89d8, 0x89d9, 0x89da, 0x89db, 0x89dc, 0x89dd, 0x89de, 0x89df,
- 0x89e0, 0x89e1, 0x89e2, 0x89e3, 0x89e4, 0x89e5, 0x89e6, 0x89e7,
- 0x89e8, 0x89e9, 0x89ea, 0x89eb, 0x89ec, 0x89ed, 0x89ee, 0x89ef,
- 0x89f0, 0x89f1, 0x89f2, 0x89f3, 0x89f4, 0x89f5, 0x89f6, 0x89f7,
- 0x89f8, 0x89f9, 0x89fa, 0x89fb, 0x89fc, 0x89fd, 0x89fe, 0x89ff,
- 0x8a00, 0x8a01, 0x8a02, 0x8a03, 0x8a04, 0x8a05, 0x8a06, 0x8a07, /* 0x8a00 */
- 0x8a08, 0x8a09, 0x8a0a, 0x8a0b, 0x8a0c, 0x8a0d, 0x8a0e, 0x8a0f,
- 0x8a10, 0x8a11, 0x8a12, 0x8a13, 0x8a14, 0x8a15, 0x8a16, 0x8a17,
- 0x8a18, 0x8a19, 0x8a1a, 0x8a1b, 0x8a1c, 0x8a1d, 0x8a1e, 0x8a1f,
- 0x8a20, 0x8a21, 0x8a22, 0x8a23, 0x8a24, 0x8a25, 0x8a26, 0x8a27,
- 0x8a28, 0x8a29, 0x8a2a, 0x8a2b, 0x8a2c, 0x8a2d, 0x8a2e, 0x8a2f,
- 0x8a30, 0x8a31, 0x8a32, 0x8a33, 0x8a34, 0x8a35, 0x8a36, 0x8a37,
- 0x8a38, 0x8a39, 0x8a3a, 0x8a3b, 0x8a3c, 0x8a3d, 0x8a3e, 0x8a3f,
- 0x8a40, 0x8a41, 0x8a42, 0x8a43, 0x8a44, 0x8a45, 0x8a46, 0x8a47, /* 0x8a40 */
- 0x8a48, 0x8a49, 0x8a4a, 0x8a4b, 0x8a4c, 0x8a4d, 0x8a4e, 0x8a4f,
- 0x8a50, 0x8a51, 0x8a52, 0x8a53, 0x8a54, 0x8a55, 0x8a56, 0x8a57,
- 0x8a58, 0x8a59, 0x8a5a, 0x8a5b, 0x8a5c, 0x8a5d, 0x8a5e, 0x8a5f,
- 0x8a60, 0x8a61, 0x8a62, 0x8a63, 0x8a64, 0x8a65, 0x8a66, 0x8a67,
- 0x8a68, 0x8a69, 0x8a6a, 0x8a6b, 0x8a6c, 0x8a6d, 0x8a6e, 0x8a6f,
- 0x8a70, 0x8a71, 0x8a72, 0x8a73, 0x8a74, 0x8a75, 0x8a76, 0x8a77,
- 0x8a78, 0x8a79, 0x8a7a, 0x8a7b, 0x8a7c, 0x8a7d, 0x8a7e, 0x8a7f,
- 0x8a80, 0x8a81, 0x8a82, 0x8a83, 0x8a84, 0x8a85, 0x8a86, 0x8a87, /* 0x8a80 */
- 0x8a88, 0x8a89, 0x8a8a, 0x8a8b, 0x8a8c, 0x8a8d, 0x8a8e, 0x8a8f,
- 0x8a90, 0x8a91, 0x8a92, 0x8a93, 0x8a94, 0x8a95, 0x8a96, 0x8a97,
- 0x8a98, 0x8a99, 0x8a9a, 0x8a9b, 0x8a9c, 0x8a9d, 0x8a9e, 0x8a9f,
- 0x8aa0, 0x8aa1, 0x8aa2, 0x8aa3, 0x8aa4, 0x8aa5, 0x8aa6, 0x8aa7,
- 0x8aa8, 0x8aa9, 0x8aaa, 0x8aab, 0x8aac, 0x8aad, 0x8aae, 0x8aaf,
- 0x8ab0, 0x8ab1, 0x8ab2, 0x8ab3, 0x8ab4, 0x8ab5, 0x8ab6, 0x8ab7,
- 0x8ab8, 0x8ab9, 0x8aba, 0x8abb, 0x8abc, 0x8abd, 0x8abe, 0x8abf,
- 0x8ac0, 0x8ac1, 0x8ac2, 0x8ac3, 0x8ac4, 0x8ac5, 0x8ac6, 0x8ac7, /* 0x8ac0 */
- 0x8ac8, 0x8ac9, 0x8aca, 0x8acb, 0x8acc, 0x8acd, 0x8ace, 0x8acf,
- 0x8ad0, 0x8ad1, 0x8ad2, 0x8ad3, 0x8ad4, 0x8ad5, 0x8ad6, 0x8ad7,
- 0x8ad8, 0x8ad9, 0x8ada, 0x8adb, 0x8adc, 0x8add, 0x8ade, 0x8adf,
- 0x8ae0, 0x8ae1, 0x8ae2, 0x8ae3, 0x8ae4, 0x8ae5, 0x8ae6, 0x8ae7,
- 0x8ae8, 0x8ae9, 0x8aea, 0x8aeb, 0x8aec, 0x8aed, 0x8aee, 0x8aef,
- 0x8af0, 0x8af1, 0x8af2, 0x8af3, 0x8af4, 0x8af5, 0x8af6, 0x8af7,
- 0x8af8, 0x8af9, 0x8afa, 0x8afb, 0x8afc, 0x8afd, 0x8afe, 0x8aff,
- 0x8b00, 0x8b01, 0x8b02, 0x8b03, 0x8b04, 0x8b05, 0x8b06, 0x8b07, /* 0x8b00 */
- 0x8b08, 0x8b09, 0x8b0a, 0x8b0b, 0x8b0c, 0x8b0d, 0x8b0e, 0x8b0f,
- 0x8b10, 0x8b11, 0x8b12, 0x8b13, 0x8b14, 0x8b15, 0x8b16, 0x8b17,
- 0x8b18, 0x8b19, 0x8b1a, 0x8b1b, 0x8b1c, 0x8b1d, 0x8b1e, 0x8b1f,
- 0x8b20, 0x8b21, 0x8b22, 0x8b23, 0x8b24, 0x8b25, 0x8b26, 0x8b27,
- 0x8b28, 0x8b29, 0x8b2a, 0x8b2b, 0x8b2c, 0x8b2d, 0x8b2e, 0x8b2f,
- 0x8b30, 0x8b31, 0x8b32, 0x8b33, 0x8b34, 0x8b35, 0x8b36, 0x8b37,
- 0x8b38, 0x8b39, 0x8b3a, 0x8b3b, 0x8b3c, 0x8b3d, 0x8b3e, 0x8b3f,
- 0x8b40, 0x8b41, 0x8b42, 0x8b43, 0x8b44, 0x8b45, 0x8b46, 0x8b47, /* 0x8b40 */
- 0x8b48, 0x8b49, 0x8b4a, 0x8b4b, 0x8b4c, 0x8b4d, 0x8b4e, 0x8b4f,
- 0x8b50, 0x8b51, 0x8b52, 0x8b53, 0x8b54, 0x8b55, 0x8b56, 0x8b57,
- 0x8b58, 0x8b59, 0x8b5a, 0x8b5b, 0x8b5c, 0x8b5d, 0x8b5e, 0x8b5f,
- 0x8b60, 0x8b61, 0x8b62, 0x8b63, 0x8b64, 0x8b65, 0x8b66, 0x8b67,
- 0x8b68, 0x8b69, 0x8b6a, 0x8b6b, 0x8b6c, 0x8b6d, 0x8b6e, 0x8b6f,
- 0x8b70, 0x8b71, 0x8b72, 0x8b73, 0x8b74, 0x8b75, 0x8b76, 0x8b77,
- 0x8b78, 0x8b79, 0x8b7a, 0x8b7b, 0x8b7c, 0x8b7d, 0x8b7e, 0x8b7f,
- 0x8b80, 0x8b81, 0x8b82, 0x8b83, 0x8b84, 0x8b85, 0x8b86, 0x8b87, /* 0x8b80 */
- 0x8b88, 0x8b89, 0x8b8a, 0x8b8b, 0x8b8c, 0x8b8d, 0x8b8e, 0x8b8f,
- 0x8b90, 0x8b91, 0x8b92, 0x8b93, 0x8b94, 0x8b95, 0x8b96, 0x8b97,
- 0x8b98, 0x8b99, 0x8b9a, 0x8b9b, 0x8b9c, 0x8b9d, 0x8b9e, 0x8b9f,
- 0x8ba0, 0x8ba1, 0x8ba2, 0x8ba3, 0x8ba4, 0x8ba5, 0x8ba6, 0x8ba7,
- 0x8ba8, 0x8ba9, 0x8baa, 0x8bab, 0x8bac, 0x8bad, 0x8bae, 0x8baf,
- 0x8bb0, 0x8bb1, 0x8bb2, 0x8bb3, 0x8bb4, 0x8bb5, 0x8bb6, 0x8bb7,
- 0x8bb8, 0x8bb9, 0x8bba, 0x8bbb, 0x8bbc, 0x8bbd, 0x8bbe, 0x8bbf,
- 0x8bc0, 0x8bc1, 0x8bc2, 0x8bc3, 0x8bc4, 0x8bc5, 0x8bc6, 0x8bc7, /* 0x8bc0 */
- 0x8bc8, 0x8bc9, 0x8bca, 0x8bcb, 0x8bcc, 0x8bcd, 0x8bce, 0x8bcf,
- 0x8bd0, 0x8bd1, 0x8bd2, 0x8bd3, 0x8bd4, 0x8bd5, 0x8bd6, 0x8bd7,
- 0x8bd8, 0x8bd9, 0x8bda, 0x8bdb, 0x8bdc, 0x8bdd, 0x8bde, 0x8bdf,
- 0x8be0, 0x8be1, 0x8be2, 0x8be3, 0x8be4, 0x8be5, 0x8be6, 0x8be7,
- 0x8be8, 0x8be9, 0x8bea, 0x8beb, 0x8bec, 0x8bed, 0x8bee, 0x8bef,
- 0x8bf0, 0x8bf1, 0x8bf2, 0x8bf3, 0x8bf4, 0x8bf5, 0x8bf6, 0x8bf7,
- 0x8bf8, 0x8bf9, 0x8bfa, 0x8bfb, 0x8bfc, 0x8bfd, 0x8bfe, 0x8bff,
- 0x8c00, 0x8c01, 0x8c02, 0x8c03, 0x8c04, 0x8c05, 0x8c06, 0x8c07, /* 0x8c00 */
- 0x8c08, 0x8c09, 0x8c0a, 0x8c0b, 0x8c0c, 0x8c0d, 0x8c0e, 0x8c0f,
- 0x8c10, 0x8c11, 0x8c12, 0x8c13, 0x8c14, 0x8c15, 0x8c16, 0x8c17,
- 0x8c18, 0x8c19, 0x8c1a, 0x8c1b, 0x8c1c, 0x8c1d, 0x8c1e, 0x8c1f,
- 0x8c20, 0x8c21, 0x8c22, 0x8c23, 0x8c24, 0x8c25, 0x8c26, 0x8c27,
- 0x8c28, 0x8c29, 0x8c2a, 0x8c2b, 0x8c2c, 0x8c2d, 0x8c2e, 0x8c2f,
- 0x8c30, 0x8c31, 0x8c32, 0x8c33, 0x8c34, 0x8c35, 0x8c36, 0x8c37,
- 0x8c38, 0x8c39, 0x8c3a, 0x8c3b, 0x8c3c, 0x8c3d, 0x8c3e, 0x8c3f,
- 0x8c40, 0x8c41, 0x8c42, 0x8c43, 0x8c44, 0x8c45, 0x8c46, 0x8c47, /* 0x8c40 */
- 0x8c48, 0x8c49, 0x8c4a, 0x8c4b, 0x8c4c, 0x8c4d, 0x8c4e, 0x8c4f,
- 0x8c50, 0x8c51, 0x8c52, 0x8c53, 0x8c54, 0x8c55, 0x8c56, 0x8c57,
- 0x8c58, 0x8c59, 0x8c5a, 0x8c5b, 0x8c5c, 0x8c5d, 0x8c5e, 0x8c5f,
- 0x8c60, 0x8c61, 0x8c62, 0x8c63, 0x8c64, 0x8c65, 0x8c66, 0x8c67,
- 0x8c68, 0x8c69, 0x8c6a, 0x8c6b, 0x8c6c, 0x8c6d, 0x8c6e, 0x8c6f,
- 0x8c70, 0x8c71, 0x8c72, 0x8c73, 0x8c74, 0x8c75, 0x8c76, 0x8c77,
- 0x8c78, 0x8c79, 0x8c7a, 0x8c7b, 0x8c7c, 0x8c7d, 0x8c7e, 0x8c7f,
- 0x8c80, 0x8c81, 0x8c82, 0x8c83, 0x8c84, 0x8c85, 0x8c86, 0x8c87, /* 0x8c80 */
- 0x8c88, 0x8c89, 0x8c8a, 0x8c8b, 0x8c8c, 0x8c8d, 0x8c8e, 0x8c8f,
- 0x8c90, 0x8c91, 0x8c92, 0x8c93, 0x8c94, 0x8c95, 0x8c96, 0x8c97,
- 0x8c98, 0x8c99, 0x8c9a, 0x8c9b, 0x8c9c, 0x8c9d, 0x8c9e, 0x8c9f,
- 0x8ca0, 0x8ca1, 0x8ca2, 0x8ca3, 0x8ca4, 0x8ca5, 0x8ca6, 0x8ca7,
- 0x8ca8, 0x8ca9, 0x8caa, 0x8cab, 0x8cac, 0x8cad, 0x8cae, 0x8caf,
- 0x8cb0, 0x8cb1, 0x8cb2, 0x8cb3, 0x8cb4, 0x8cb5, 0x8cb6, 0x8cb7,
- 0x8cb8, 0x8cb9, 0x8cba, 0x8cbb, 0x8cbc, 0x8cbd, 0x8cbe, 0x8cbf,
- 0x8cc0, 0x8cc1, 0x8cc2, 0x8cc3, 0x8cc4, 0x8cc5, 0x8cc6, 0x8cc7, /* 0x8cc0 */
- 0x8cc8, 0x8cc9, 0x8cca, 0x8ccb, 0x8ccc, 0x8ccd, 0x8cce, 0x8ccf,
- 0x8cd0, 0x8cd1, 0x8cd2, 0x8cd3, 0x8cd4, 0x8cd5, 0x8cd6, 0x8cd7,
- 0x8cd8, 0x8cd9, 0x8cda, 0x8cdb, 0x8cdc, 0x8cdd, 0x8cde, 0x8cdf,
- 0x8ce0, 0x8ce1, 0x8ce2, 0x8ce3, 0x8ce4, 0x8ce5, 0x8ce6, 0x8ce7,
- 0x8ce8, 0x8ce9, 0x8cea, 0x8ceb, 0x8cec, 0x8ced, 0x8cee, 0x8cef,
- 0x8cf0, 0x8cf1, 0x8cf2, 0x8cf3, 0x8cf4, 0x8cf5, 0x8cf6, 0x8cf7,
- 0x8cf8, 0x8cf9, 0x8cfa, 0x8cfb, 0x8cfc, 0x8cfd, 0x8cfe, 0x8cff,
- 0x8d00, 0x8d01, 0x8d02, 0x8d03, 0x8d04, 0x8d05, 0x8d06, 0x8d07, /* 0x8d00 */
- 0x8d08, 0x8d09, 0x8d0a, 0x8d0b, 0x8d0c, 0x8d0d, 0x8d0e, 0x8d0f,
- 0x8d10, 0x8d11, 0x8d12, 0x8d13, 0x8d14, 0x8d15, 0x8d16, 0x8d17,
- 0x8d18, 0x8d19, 0x8d1a, 0x8d1b, 0x8d1c, 0x8d1d, 0x8d1e, 0x8d1f,
- 0x8d20, 0x8d21, 0x8d22, 0x8d23, 0x8d24, 0x8d25, 0x8d26, 0x8d27,
- 0x8d28, 0x8d29, 0x8d2a, 0x8d2b, 0x8d2c, 0x8d2d, 0x8d2e, 0x8d2f,
- 0x8d30, 0x8d31, 0x8d32, 0x8d33, 0x8d34, 0x8d35, 0x8d36, 0x8d37,
- 0x8d38, 0x8d39, 0x8d3a, 0x8d3b, 0x8d3c, 0x8d3d, 0x8d3e, 0x8d3f,
- 0x8d40, 0x8d41, 0x8d42, 0x8d43, 0x8d44, 0x8d45, 0x8d46, 0x8d47, /* 0x8d40 */
- 0x8d48, 0x8d49, 0x8d4a, 0x8d4b, 0x8d4c, 0x8d4d, 0x8d4e, 0x8d4f,
- 0x8d50, 0x8d51, 0x8d52, 0x8d53, 0x8d54, 0x8d55, 0x8d56, 0x8d57,
- 0x8d58, 0x8d59, 0x8d5a, 0x8d5b, 0x8d5c, 0x8d5d, 0x8d5e, 0x8d5f,
- 0x8d60, 0x8d61, 0x8d62, 0x8d63, 0x8d64, 0x8d65, 0x8d66, 0x8d67,
- 0x8d68, 0x8d69, 0x8d6a, 0x8d6b, 0x8d6c, 0x8d6d, 0x8d6e, 0x8d6f,
- 0x8d70, 0x8d71, 0x8d72, 0x8d73, 0x8d74, 0x8d75, 0x8d76, 0x8d77,
- 0x8d78, 0x8d79, 0x8d7a, 0x8d7b, 0x8d7c, 0x8d7d, 0x8d7e, 0x8d7f,
- 0x8d80, 0x8d81, 0x8d82, 0x8d83, 0x8d84, 0x8d85, 0x8d86, 0x8d87, /* 0x8d80 */
- 0x8d88, 0x8d89, 0x8d8a, 0x8d8b, 0x8d8c, 0x8d8d, 0x8d8e, 0x8d8f,
- 0x8d90, 0x8d91, 0x8d92, 0x8d93, 0x8d94, 0x8d95, 0x8d96, 0x8d97,
- 0x8d98, 0x8d99, 0x8d9a, 0x8d9b, 0x8d9c, 0x8d9d, 0x8d9e, 0x8d9f,
- 0x8da0, 0x8da1, 0x8da2, 0x8da3, 0x8da4, 0x8da5, 0x8da6, 0x8da7,
- 0x8da8, 0x8da9, 0x8daa, 0x8dab, 0x8dac, 0x8dad, 0x8dae, 0x8daf,
- 0x8db0, 0x8db1, 0x8db2, 0x8db3, 0x8db4, 0x8db5, 0x8db6, 0x8db7,
- 0x8db8, 0x8db9, 0x8dba, 0x8dbb, 0x8dbc, 0x8dbd, 0x8dbe, 0x8dbf,
- 0x8dc0, 0x8dc1, 0x8dc2, 0x8dc3, 0x8dc4, 0x8dc5, 0x8dc6, 0x8dc7, /* 0x8dc0 */
- 0x8dc8, 0x8dc9, 0x8dca, 0x8dcb, 0x8dcc, 0x8dcd, 0x8dce, 0x8dcf,
- 0x8dd0, 0x8dd1, 0x8dd2, 0x8dd3, 0x8dd4, 0x8dd5, 0x8dd6, 0x8dd7,
- 0x8dd8, 0x8dd9, 0x8dda, 0x8ddb, 0x8ddc, 0x8ddd, 0x8dde, 0x8ddf,
- 0x8de0, 0x8de1, 0x8de2, 0x8de3, 0x8de4, 0x8de5, 0x8de6, 0x8de7,
- 0x8de8, 0x8de9, 0x8dea, 0x8deb, 0x8dec, 0x8ded, 0x8dee, 0x8def,
- 0x8df0, 0x8df1, 0x8df2, 0x8df3, 0x8df4, 0x8df5, 0x8df6, 0x8df7,
- 0x8df8, 0x8df9, 0x8dfa, 0x8dfb, 0x8dfc, 0x8dfd, 0x8dfe, 0x8dff,
- 0x8e00, 0x8e01, 0x8e02, 0x8e03, 0x8e04, 0x8e05, 0x8e06, 0x8e07, /* 0x8e00 */
- 0x8e08, 0x8e09, 0x8e0a, 0x8e0b, 0x8e0c, 0x8e0d, 0x8e0e, 0x8e0f,
- 0x8e10, 0x8e11, 0x8e12, 0x8e13, 0x8e14, 0x8e15, 0x8e16, 0x8e17,
- 0x8e18, 0x8e19, 0x8e1a, 0x8e1b, 0x8e1c, 0x8e1d, 0x8e1e, 0x8e1f,
- 0x8e20, 0x8e21, 0x8e22, 0x8e23, 0x8e24, 0x8e25, 0x8e26, 0x8e27,
- 0x8e28, 0x8e29, 0x8e2a, 0x8e2b, 0x8e2c, 0x8e2d, 0x8e2e, 0x8e2f,
- 0x8e30, 0x8e31, 0x8e32, 0x8e33, 0x8e34, 0x8e35, 0x8e36, 0x8e37,
- 0x8e38, 0x8e39, 0x8e3a, 0x8e3b, 0x8e3c, 0x8e3d, 0x8e3e, 0x8e3f,
- 0x8e40, 0x8e41, 0x8e42, 0x8e43, 0x8e44, 0x8e45, 0x8e46, 0x8e47, /* 0x8e40 */
- 0x8e48, 0x8e49, 0x8e4a, 0x8e4b, 0x8e4c, 0x8e4d, 0x8e4e, 0x8e4f,
- 0x8e50, 0x8e51, 0x8e52, 0x8e53, 0x8e54, 0x8e55, 0x8e56, 0x8e57,
- 0x8e58, 0x8e59, 0x8e5a, 0x8e5b, 0x8e5c, 0x8e5d, 0x8e5e, 0x8e5f,
- 0x8e60, 0x8e61, 0x8e62, 0x8e63, 0x8e64, 0x8e65, 0x8e66, 0x8e67,
- 0x8e68, 0x8e69, 0x8e6a, 0x8e6b, 0x8e6c, 0x8e6d, 0x8e6e, 0x8e6f,
- 0x8e70, 0x8e71, 0x8e72, 0x8e73, 0x8e74, 0x8e75, 0x8e76, 0x8e77,
- 0x8e78, 0x8e79, 0x8e7a, 0x8e7b, 0x8e7c, 0x8e7d, 0x8e7e, 0x8e7f,
- 0x8e80, 0x8e81, 0x8e82, 0x8e83, 0x8e84, 0x8e85, 0x8e86, 0x8e87, /* 0x8e80 */
- 0x8e88, 0x8e89, 0x8e8a, 0x8e8b, 0x8e8c, 0x8e8d, 0x8e8e, 0x8e8f,
- 0x8e90, 0x8e91, 0x8e92, 0x8e93, 0x8e94, 0x8e95, 0x8e96, 0x8e97,
- 0x8e98, 0x8e99, 0x8e9a, 0x8e9b, 0x8e9c, 0x8e9d, 0x8e9e, 0x8e9f,
- 0x8ea0, 0x8ea1, 0x8ea2, 0x8ea3, 0x8ea4, 0x8ea5, 0x8ea6, 0x8ea7,
- 0x8ea8, 0x8ea9, 0x8eaa, 0x8eab, 0x8eac, 0x8ead, 0x8eae, 0x8eaf,
- 0x8eb0, 0x8eb1, 0x8eb2, 0x8eb3, 0x8eb4, 0x8eb5, 0x8eb6, 0x8eb7,
- 0x8eb8, 0x8eb9, 0x8eba, 0x8ebb, 0x8ebc, 0x8ebd, 0x8ebe, 0x8ebf,
- 0x8ec0, 0x8ec1, 0x8ec2, 0x8ec3, 0x8ec4, 0x8ec5, 0x8ec6, 0x8ec7, /* 0x8ec0 */
- 0x8ec8, 0x8ec9, 0x8eca, 0x8ecb, 0x8ecc, 0x8ecd, 0x8ece, 0x8ecf,
- 0x8ed0, 0x8ed1, 0x8ed2, 0x8ed3, 0x8ed4, 0x8ed5, 0x8ed6, 0x8ed7,
- 0x8ed8, 0x8ed9, 0x8eda, 0x8edb, 0x8edc, 0x8edd, 0x8ede, 0x8edf,
- 0x8ee0, 0x8ee1, 0x8ee2, 0x8ee3, 0x8ee4, 0x8ee5, 0x8ee6, 0x8ee7,
- 0x8ee8, 0x8ee9, 0x8eea, 0x8eeb, 0x8eec, 0x8eed, 0x8eee, 0x8eef,
- 0x8ef0, 0x8ef1, 0x8ef2, 0x8ef3, 0x8ef4, 0x8ef5, 0x8ef6, 0x8ef7,
- 0x8ef8, 0x8ef9, 0x8efa, 0x8efb, 0x8efc, 0x8efd, 0x8efe, 0x8eff,
- 0x8f00, 0x8f01, 0x8f02, 0x8f03, 0x8f04, 0x8f05, 0x8f06, 0x8f07, /* 0x8f00 */
- 0x8f08, 0x8f09, 0x8f0a, 0x8f0b, 0x8f0c, 0x8f0d, 0x8f0e, 0x8f0f,
- 0x8f10, 0x8f11, 0x8f12, 0x8f13, 0x8f14, 0x8f15, 0x8f16, 0x8f17,
- 0x8f18, 0x8f19, 0x8f1a, 0x8f1b, 0x8f1c, 0x8f1d, 0x8f1e, 0x8f1f,
- 0x8f20, 0x8f21, 0x8f22, 0x8f23, 0x8f24, 0x8f25, 0x8f26, 0x8f27,
- 0x8f28, 0x8f29, 0x8f2a, 0x8f2b, 0x8f2c, 0x8f2d, 0x8f2e, 0x8f2f,
- 0x8f30, 0x8f31, 0x8f32, 0x8f33, 0x8f34, 0x8f35, 0x8f36, 0x8f37,
- 0x8f38, 0x8f39, 0x8f3a, 0x8f3b, 0x8f3c, 0x8f3d, 0x8f3e, 0x8f3f,
- 0x8f40, 0x8f41, 0x8f42, 0x8f43, 0x8f44, 0x8f45, 0x8f46, 0x8f47, /* 0x8f40 */
- 0x8f48, 0x8f49, 0x8f4a, 0x8f4b, 0x8f4c, 0x8f4d, 0x8f4e, 0x8f4f,
- 0x8f50, 0x8f51, 0x8f52, 0x8f53, 0x8f54, 0x8f55, 0x8f56, 0x8f57,
- 0x8f58, 0x8f59, 0x8f5a, 0x8f5b, 0x8f5c, 0x8f5d, 0x8f5e, 0x8f5f,
- 0x8f60, 0x8f61, 0x8f62, 0x8f63, 0x8f64, 0x8f65, 0x8f66, 0x8f67,
- 0x8f68, 0x8f69, 0x8f6a, 0x8f6b, 0x8f6c, 0x8f6d, 0x8f6e, 0x8f6f,
- 0x8f70, 0x8f71, 0x8f72, 0x8f73, 0x8f74, 0x8f75, 0x8f76, 0x8f77,
- 0x8f78, 0x8f79, 0x8f7a, 0x8f7b, 0x8f7c, 0x8f7d, 0x8f7e, 0x8f7f,
- 0x8f80, 0x8f81, 0x8f82, 0x8f83, 0x8f84, 0x8f85, 0x8f86, 0x8f87, /* 0x8f80 */
- 0x8f88, 0x8f89, 0x8f8a, 0x8f8b, 0x8f8c, 0x8f8d, 0x8f8e, 0x8f8f,
- 0x8f90, 0x8f91, 0x8f92, 0x8f93, 0x8f94, 0x8f95, 0x8f96, 0x8f97,
- 0x8f98, 0x8f99, 0x8f9a, 0x8f9b, 0x8f9c, 0x8f9d, 0x8f9e, 0x8f9f,
- 0x8fa0, 0x8fa1, 0x8fa2, 0x8fa3, 0x8fa4, 0x8fa5, 0x8fa6, 0x8fa7,
- 0x8fa8, 0x8fa9, 0x8faa, 0x8fab, 0x8fac, 0x8fad, 0x8fae, 0x8faf,
- 0x8fb0, 0x8fb1, 0x8fb2, 0x8fb3, 0x8fb4, 0x8fb5, 0x8fb6, 0x8fb7,
- 0x8fb8, 0x8fb9, 0x8fba, 0x8fbb, 0x8fbc, 0x8fbd, 0x8fbe, 0x8fbf,
- 0x8fc0, 0x8fc1, 0x8fc2, 0x8fc3, 0x8fc4, 0x8fc5, 0x8fc6, 0x8fc7, /* 0x8fc0 */
- 0x8fc8, 0x8fc9, 0x8fca, 0x8fcb, 0x8fcc, 0x8fcd, 0x8fce, 0x8fcf,
- 0x8fd0, 0x8fd1, 0x8fd2, 0x8fd3, 0x8fd4, 0x8fd5, 0x8fd6, 0x8fd7,
- 0x8fd8, 0x8fd9, 0x8fda, 0x8fdb, 0x8fdc, 0x8fdd, 0x8fde, 0x8fdf,
- 0x8fe0, 0x8fe1, 0x8fe2, 0x8fe3, 0x8fe4, 0x8fe5, 0x8fe6, 0x8fe7,
- 0x8fe8, 0x8fe9, 0x8fea, 0x8feb, 0x8fec, 0x8fed, 0x8fee, 0x8fef,
- 0x8ff0, 0x8ff1, 0x8ff2, 0x8ff3, 0x8ff4, 0x8ff5, 0x8ff6, 0x8ff7,
- 0x8ff8, 0x8ff9, 0x8ffa, 0x8ffb, 0x8ffc, 0x8ffd, 0x8ffe, 0x8fff,
- 0x9000, 0x9001, 0x9002, 0x9003, 0x9004, 0x9005, 0x9006, 0x9007, /* 0x9000 */
- 0x9008, 0x9009, 0x900a, 0x900b, 0x900c, 0x900d, 0x900e, 0x900f,
- 0x9010, 0x9011, 0x9012, 0x9013, 0x9014, 0x9015, 0x9016, 0x9017,
- 0x9018, 0x9019, 0x901a, 0x901b, 0x901c, 0x901d, 0x901e, 0x901f,
- 0x9020, 0x9021, 0x9022, 0x9023, 0x9024, 0x9025, 0x9026, 0x9027,
- 0x9028, 0x9029, 0x902a, 0x902b, 0x902c, 0x902d, 0x902e, 0x902f,
- 0x9030, 0x9031, 0x9032, 0x9033, 0x9034, 0x9035, 0x9036, 0x9037,
- 0x9038, 0x9039, 0x903a, 0x903b, 0x903c, 0x903d, 0x903e, 0x903f,
- 0x9040, 0x9041, 0x9042, 0x9043, 0x9044, 0x9045, 0x9046, 0x9047, /* 0x9040 */
- 0x9048, 0x9049, 0x904a, 0x904b, 0x904c, 0x904d, 0x904e, 0x904f,
- 0x9050, 0x9051, 0x9052, 0x9053, 0x9054, 0x9055, 0x9056, 0x9057,
- 0x9058, 0x9059, 0x905a, 0x905b, 0x905c, 0x905d, 0x905e, 0x905f,
- 0x9060, 0x9061, 0x9062, 0x9063, 0x9064, 0x9065, 0x9066, 0x9067,
- 0x9068, 0x9069, 0x906a, 0x906b, 0x906c, 0x906d, 0x906e, 0x906f,
- 0x9070, 0x9071, 0x9072, 0x9073, 0x9074, 0x9075, 0x9076, 0x9077,
- 0x9078, 0x9079, 0x907a, 0x907b, 0x907c, 0x907d, 0x907e, 0x907f,
- 0x9080, 0x9081, 0x9082, 0x9083, 0x9084, 0x9085, 0x9086, 0x9087, /* 0x9080 */
- 0x9088, 0x9089, 0x908a, 0x908b, 0x908c, 0x908d, 0x908e, 0x908f,
- 0x9090, 0x9091, 0x9092, 0x9093, 0x9094, 0x9095, 0x9096, 0x9097,
- 0x9098, 0x9099, 0x909a, 0x909b, 0x909c, 0x909d, 0x909e, 0x909f,
- 0x90a0, 0x90a1, 0x90a2, 0x90a3, 0x90a4, 0x90a5, 0x90a6, 0x90a7,
- 0x90a8, 0x90a9, 0x90aa, 0x90ab, 0x90ac, 0x90ad, 0x90ae, 0x90af,
- 0x90b0, 0x90b1, 0x90b2, 0x90b3, 0x90b4, 0x90b5, 0x90b6, 0x90b7,
- 0x90b8, 0x90b9, 0x90ba, 0x90bb, 0x90bc, 0x90bd, 0x90be, 0x90bf,
- 0x90c0, 0x90c1, 0x90c2, 0x90c3, 0x90c4, 0x90c5, 0x90c6, 0x90c7, /* 0x90c0 */
- 0x90c8, 0x90c9, 0x90ca, 0x90cb, 0x90cc, 0x90cd, 0x90ce, 0x90cf,
- 0x90d0, 0x90d1, 0x90d2, 0x90d3, 0x90d4, 0x90d5, 0x90d6, 0x90d7,
- 0x90d8, 0x90d9, 0x90da, 0x90db, 0x90dc, 0x90dd, 0x90de, 0x90df,
- 0x90e0, 0x90e1, 0x90e2, 0x90e3, 0x90e4, 0x90e5, 0x90e6, 0x90e7,
- 0x90e8, 0x90e9, 0x90ea, 0x90eb, 0x90ec, 0x90ed, 0x90ee, 0x90ef,
- 0x90f0, 0x90f1, 0x90f2, 0x90f3, 0x90f4, 0x90f5, 0x90f6, 0x90f7,
- 0x90f8, 0x90f9, 0x90fa, 0x90fb, 0x90fc, 0x90fd, 0x90fe, 0x90ff,
- 0x9100, 0x9101, 0x9102, 0x9103, 0x9104, 0x9105, 0x9106, 0x9107, /* 0x9100 */
- 0x9108, 0x9109, 0x910a, 0x910b, 0x910c, 0x910d, 0x910e, 0x910f,
- 0x9110, 0x9111, 0x9112, 0x9113, 0x9114, 0x9115, 0x9116, 0x9117,
- 0x9118, 0x9119, 0x911a, 0x911b, 0x911c, 0x911d, 0x911e, 0x911f,
- 0x9120, 0x9121, 0x9122, 0x9123, 0x9124, 0x9125, 0x9126, 0x9127,
- 0x9128, 0x9129, 0x912a, 0x912b, 0x912c, 0x912d, 0x912e, 0x912f,
- 0x9130, 0x9131, 0x9132, 0x9133, 0x9134, 0x9135, 0x9136, 0x9137,
- 0x9138, 0x9139, 0x913a, 0x913b, 0x913c, 0x913d, 0x913e, 0x913f,
- 0x9140, 0x9141, 0x9142, 0x9143, 0x9144, 0x9145, 0x9146, 0x9147, /* 0x9140 */
- 0x9148, 0x9149, 0x914a, 0x914b, 0x914c, 0x914d, 0x914e, 0x914f,
- 0x9150, 0x9151, 0x9152, 0x9153, 0x9154, 0x9155, 0x9156, 0x9157,
- 0x9158, 0x9159, 0x915a, 0x915b, 0x915c, 0x915d, 0x915e, 0x915f,
- 0x9160, 0x9161, 0x9162, 0x9163, 0x9164, 0x9165, 0x9166, 0x9167,
- 0x9168, 0x9169, 0x916a, 0x916b, 0x916c, 0x916d, 0x916e, 0x916f,
- 0x9170, 0x9171, 0x9172, 0x9173, 0x9174, 0x9175, 0x9176, 0x9177,
- 0x9178, 0x9179, 0x917a, 0x917b, 0x917c, 0x917d, 0x917e, 0x917f,
- 0x9180, 0x9181, 0x9182, 0x9183, 0x9184, 0x9185, 0x9186, 0x9187, /* 0x9180 */
- 0x9188, 0x9189, 0x918a, 0x918b, 0x918c, 0x918d, 0x918e, 0x918f,
- 0x9190, 0x9191, 0x9192, 0x9193, 0x9194, 0x9195, 0x9196, 0x9197,
- 0x9198, 0x9199, 0x919a, 0x919b, 0x919c, 0x919d, 0x919e, 0x919f,
- 0x91a0, 0x91a1, 0x91a2, 0x91a3, 0x91a4, 0x91a5, 0x91a6, 0x91a7,
- 0x91a8, 0x91a9, 0x91aa, 0x91ab, 0x91ac, 0x91ad, 0x91ae, 0x91af,
- 0x91b0, 0x91b1, 0x91b2, 0x91b3, 0x91b4, 0x91b5, 0x91b6, 0x91b7,
- 0x91b8, 0x91b9, 0x91ba, 0x91bb, 0x91bc, 0x91bd, 0x91be, 0x91bf,
- 0x91c0, 0x91c1, 0x91c2, 0x91c3, 0x91c4, 0x91c5, 0x91c6, 0x91c7, /* 0x91c0 */
- 0x91c8, 0x91c9, 0x91ca, 0x91cb, 0x91cc, 0x91cd, 0x91ce, 0x91cf,
- 0x91d0, 0x91d1, 0x91d2, 0x91d3, 0x91d4, 0x91d5, 0x91d6, 0x91d7,
- 0x91d8, 0x91d9, 0x91da, 0x91db, 0x91dc, 0x91dd, 0x91de, 0x91df,
- 0x91e0, 0x91e1, 0x91e2, 0x91e3, 0x91e4, 0x91e5, 0x91e6, 0x91e7,
- 0x91e8, 0x91e9, 0x91ea, 0x91eb, 0x91ec, 0x91ed, 0x91ee, 0x91ef,
- 0x91f0, 0x91f1, 0x91f2, 0x91f3, 0x91f4, 0x91f5, 0x91f6, 0x91f7,
- 0x91f8, 0x91f9, 0x91fa, 0x91fb, 0x91fc, 0x91fd, 0x91fe, 0x91ff,
- 0x9200, 0x9201, 0x9202, 0x9203, 0x9204, 0x9205, 0x9206, 0x9207, /* 0x9200 */
- 0x9208, 0x9209, 0x920a, 0x920b, 0x920c, 0x920d, 0x920e, 0x920f,
- 0x9210, 0x9211, 0x9212, 0x9213, 0x9214, 0x9215, 0x9216, 0x9217,
- 0x9218, 0x9219, 0x921a, 0x921b, 0x921c, 0x921d, 0x921e, 0x921f,
- 0x9220, 0x9221, 0x9222, 0x9223, 0x9224, 0x9225, 0x9226, 0x9227,
- 0x9228, 0x9229, 0x922a, 0x922b, 0x922c, 0x922d, 0x922e, 0x922f,
- 0x9230, 0x9231, 0x9232, 0x9233, 0x9234, 0x9235, 0x9236, 0x9237,
- 0x9238, 0x9239, 0x923a, 0x923b, 0x923c, 0x923d, 0x923e, 0x923f,
- 0x9240, 0x9241, 0x9242, 0x9243, 0x9244, 0x9245, 0x9246, 0x9247, /* 0x9240 */
- 0x9248, 0x9249, 0x924a, 0x924b, 0x924c, 0x924d, 0x924e, 0x924f,
- 0x9250, 0x9251, 0x9252, 0x9253, 0x9254, 0x9255, 0x9256, 0x9257,
- 0x9258, 0x9259, 0x925a, 0x925b, 0x925c, 0x925d, 0x925e, 0x925f,
- 0x9260, 0x9261, 0x9262, 0x9263, 0x9264, 0x9265, 0x9266, 0x9267,
- 0x9268, 0x9269, 0x926a, 0x926b, 0x926c, 0x926d, 0x926e, 0x926f,
- 0x9270, 0x9271, 0x9272, 0x9273, 0x9274, 0x9275, 0x9276, 0x9277,
- 0x9278, 0x9279, 0x927a, 0x927b, 0x927c, 0x927d, 0x927e, 0x927f,
- 0x9280, 0x9281, 0x9282, 0x9283, 0x9284, 0x9285, 0x9286, 0x9287, /* 0x9280 */
- 0x9288, 0x9289, 0x928a, 0x928b, 0x928c, 0x928d, 0x928e, 0x928f,
- 0x9290, 0x9291, 0x9292, 0x9293, 0x9294, 0x9295, 0x9296, 0x9297,
- 0x9298, 0x9299, 0x929a, 0x929b, 0x929c, 0x929d, 0x929e, 0x929f,
- 0x92a0, 0x92a1, 0x92a2, 0x92a3, 0x92a4, 0x92a5, 0x92a6, 0x92a7,
- 0x92a8, 0x92a9, 0x92aa, 0x92ab, 0x92ac, 0x92ad, 0x92ae, 0x92af,
- 0x92b0, 0x92b1, 0x92b2, 0x92b3, 0x92b4, 0x92b5, 0x92b6, 0x92b7,
- 0x92b8, 0x92b9, 0x92ba, 0x92bb, 0x92bc, 0x92bd, 0x92be, 0x92bf,
- 0x92c0, 0x92c1, 0x92c2, 0x92c3, 0x92c4, 0x92c5, 0x92c6, 0x92c7, /* 0x92c0 */
- 0x92c8, 0x92c9, 0x92ca, 0x92cb, 0x92cc, 0x92cd, 0x92ce, 0x92cf,
- 0x92d0, 0x92d1, 0x92d2, 0x92d3, 0x92d4, 0x92d5, 0x92d6, 0x92d7,
- 0x92d8, 0x92d9, 0x92da, 0x92db, 0x92dc, 0x92dd, 0x92de, 0x92df,
- 0x92e0, 0x92e1, 0x92e2, 0x92e3, 0x92e4, 0x92e5, 0x92e6, 0x92e7,
- 0x92e8, 0x92e9, 0x92ea, 0x92eb, 0x92ec, 0x92ed, 0x92ee, 0x92ef,
- 0x92f0, 0x92f1, 0x92f2, 0x92f3, 0x92f4, 0x92f5, 0x92f6, 0x92f7,
- 0x92f8, 0x92f9, 0x92fa, 0x92fb, 0x92fc, 0x92fd, 0x92fe, 0x92ff,
- 0x9300, 0x9301, 0x9302, 0x9303, 0x9304, 0x9305, 0x9306, 0x9307, /* 0x9300 */
- 0x9308, 0x9309, 0x930a, 0x930b, 0x930c, 0x930d, 0x930e, 0x930f,
- 0x9310, 0x9311, 0x9312, 0x9313, 0x9314, 0x9315, 0x9316, 0x9317,
- 0x9318, 0x9319, 0x931a, 0x931b, 0x931c, 0x931d, 0x931e, 0x931f,
- 0x9320, 0x9321, 0x9322, 0x9323, 0x9324, 0x9325, 0x9326, 0x9327,
- 0x9328, 0x9329, 0x932a, 0x932b, 0x932c, 0x932d, 0x932e, 0x932f,
- 0x9330, 0x9331, 0x9332, 0x9333, 0x9334, 0x9335, 0x9336, 0x9337,
- 0x9338, 0x9339, 0x933a, 0x933b, 0x933c, 0x933d, 0x933e, 0x933f,
- 0x9340, 0x9341, 0x9342, 0x9343, 0x9344, 0x9345, 0x9346, 0x9347, /* 0x9340 */
- 0x9348, 0x9349, 0x934a, 0x934b, 0x934c, 0x934d, 0x934e, 0x934f,
- 0x9350, 0x9351, 0x9352, 0x9353, 0x9354, 0x9355, 0x9356, 0x9357,
- 0x9358, 0x9359, 0x935a, 0x935b, 0x935c, 0x935d, 0x935e, 0x935f,
- 0x9360, 0x9361, 0x9362, 0x9363, 0x9364, 0x9365, 0x9366, 0x9367,
- 0x9368, 0x9369, 0x936a, 0x936b, 0x936c, 0x936d, 0x936e, 0x936f,
- 0x9370, 0x9371, 0x9372, 0x9373, 0x9374, 0x9375, 0x9376, 0x9377,
- 0x9378, 0x9379, 0x937a, 0x937b, 0x937c, 0x937d, 0x937e, 0x937f,
- 0x9380, 0x9381, 0x9382, 0x9383, 0x9384, 0x9385, 0x9386, 0x9387, /* 0x9380 */
- 0x9388, 0x9389, 0x938a, 0x938b, 0x938c, 0x938d, 0x938e, 0x938f,
- 0x9390, 0x9391, 0x9392, 0x9393, 0x9394, 0x9395, 0x9396, 0x9397,
- 0x9398, 0x9399, 0x939a, 0x939b, 0x939c, 0x939d, 0x939e, 0x939f,
- 0x93a0, 0x93a1, 0x93a2, 0x93a3, 0x93a4, 0x93a5, 0x93a6, 0x93a7,
- 0x93a8, 0x93a9, 0x93aa, 0x93ab, 0x93ac, 0x93ad, 0x93ae, 0x93af,
- 0x93b0, 0x93b1, 0x93b2, 0x93b3, 0x93b4, 0x93b5, 0x93b6, 0x93b7,
- 0x93b8, 0x93b9, 0x93ba, 0x93bb, 0x93bc, 0x93bd, 0x93be, 0x93bf,
- 0x93c0, 0x93c1, 0x93c2, 0x93c3, 0x93c4, 0x93c5, 0x93c6, 0x93c7, /* 0x93c0 */
- 0x93c8, 0x93c9, 0x93ca, 0x93cb, 0x93cc, 0x93cd, 0x93ce, 0x93cf,
- 0x93d0, 0x93d1, 0x93d2, 0x93d3, 0x93d4, 0x93d5, 0x93d6, 0x93d7,
- 0x93d8, 0x93d9, 0x93da, 0x93db, 0x93dc, 0x93dd, 0x93de, 0x93df,
- 0x93e0, 0x93e1, 0x93e2, 0x93e3, 0x93e4, 0x93e5, 0x93e6, 0x93e7,
- 0x93e8, 0x93e9, 0x93ea, 0x93eb, 0x93ec, 0x93ed, 0x93ee, 0x93ef,
- 0x93f0, 0x93f1, 0x93f2, 0x93f3, 0x93f4, 0x93f5, 0x93f6, 0x93f7,
- 0x93f8, 0x93f9, 0x93fa, 0x93fb, 0x93fc, 0x93fd, 0x93fe, 0x93ff,
- 0x9400, 0x9401, 0x9402, 0x9403, 0x9404, 0x9405, 0x9406, 0x9407, /* 0x9400 */
- 0x9408, 0x9409, 0x940a, 0x940b, 0x940c, 0x940d, 0x940e, 0x940f,
- 0x9410, 0x9411, 0x9412, 0x9413, 0x9414, 0x9415, 0x9416, 0x9417,
- 0x9418, 0x9419, 0x941a, 0x941b, 0x941c, 0x941d, 0x941e, 0x941f,
- 0x9420, 0x9421, 0x9422, 0x9423, 0x9424, 0x9425, 0x9426, 0x9427,
- 0x9428, 0x9429, 0x942a, 0x942b, 0x942c, 0x942d, 0x942e, 0x942f,
- 0x9430, 0x9431, 0x9432, 0x9433, 0x9434, 0x9435, 0x9436, 0x9437,
- 0x9438, 0x9439, 0x943a, 0x943b, 0x943c, 0x943d, 0x943e, 0x943f,
- 0x9440, 0x9441, 0x9442, 0x9443, 0x9444, 0x9445, 0x9446, 0x9447, /* 0x9440 */
- 0x9448, 0x9449, 0x944a, 0x944b, 0x944c, 0x944d, 0x944e, 0x944f,
- 0x9450, 0x9451, 0x9452, 0x9453, 0x9454, 0x9455, 0x9456, 0x9457,
- 0x9458, 0x9459, 0x945a, 0x945b, 0x945c, 0x945d, 0x945e, 0x945f,
- 0x9460, 0x9461, 0x9462, 0x9463, 0x9464, 0x9465, 0x9466, 0x9467,
- 0x9468, 0x9469, 0x946a, 0x946b, 0x946c, 0x946d, 0x946e, 0x946f,
- 0x9470, 0x9471, 0x9472, 0x9473, 0x9474, 0x9475, 0x9476, 0x9477,
- 0x9478, 0x9479, 0x947a, 0x947b, 0x947c, 0x947d, 0x947e, 0x947f,
- 0x9480, 0x9481, 0x9482, 0x9483, 0x9484, 0x9485, 0x9486, 0x9487, /* 0x9480 */
- 0x9488, 0x9489, 0x948a, 0x948b, 0x948c, 0x948d, 0x948e, 0x948f,
- 0x9490, 0x9491, 0x9492, 0x9493, 0x9494, 0x9495, 0x9496, 0x9497,
- 0x9498, 0x9499, 0x949a, 0x949b, 0x949c, 0x949d, 0x949e, 0x949f,
- 0x94a0, 0x94a1, 0x94a2, 0x94a3, 0x94a4, 0x94a5, 0x94a6, 0x94a7,
- 0x94a8, 0x94a9, 0x94aa, 0x94ab, 0x94ac, 0x94ad, 0x94ae, 0x94af,
- 0x94b0, 0x94b1, 0x94b2, 0x94b3, 0x94b4, 0x94b5, 0x94b6, 0x94b7,
- 0x94b8, 0x94b9, 0x94ba, 0x94bb, 0x94bc, 0x94bd, 0x94be, 0x94bf,
- 0x94c0, 0x94c1, 0x94c2, 0x94c3, 0x94c4, 0x94c5, 0x94c6, 0x94c7, /* 0x94c0 */
- 0x94c8, 0x94c9, 0x94ca, 0x94cb, 0x94cc, 0x94cd, 0x94ce, 0x94cf,
- 0x94d0, 0x94d1, 0x94d2, 0x94d3, 0x94d4, 0x94d5, 0x94d6, 0x94d7,
- 0x94d8, 0x94d9, 0x94da, 0x94db, 0x94dc, 0x94dd, 0x94de, 0x94df,
- 0x94e0, 0x94e1, 0x94e2, 0x94e3, 0x94e4, 0x94e5, 0x94e6, 0x94e7,
- 0x94e8, 0x94e9, 0x94ea, 0x94eb, 0x94ec, 0x94ed, 0x94ee, 0x94ef,
- 0x94f0, 0x94f1, 0x94f2, 0x94f3, 0x94f4, 0x94f5, 0x94f6, 0x94f7,
- 0x94f8, 0x94f9, 0x94fa, 0x94fb, 0x94fc, 0x94fd, 0x94fe, 0x94ff,
- 0x9500, 0x9501, 0x9502, 0x9503, 0x9504, 0x9505, 0x9506, 0x9507, /* 0x9500 */
- 0x9508, 0x9509, 0x950a, 0x950b, 0x950c, 0x950d, 0x950e, 0x950f,
- 0x9510, 0x9511, 0x9512, 0x9513, 0x9514, 0x9515, 0x9516, 0x9517,
- 0x9518, 0x9519, 0x951a, 0x951b, 0x951c, 0x951d, 0x951e, 0x951f,
- 0x9520, 0x9521, 0x9522, 0x9523, 0x9524, 0x9525, 0x9526, 0x9527,
- 0x9528, 0x9529, 0x952a, 0x952b, 0x952c, 0x952d, 0x952e, 0x952f,
- 0x9530, 0x9531, 0x9532, 0x9533, 0x9534, 0x9535, 0x9536, 0x9537,
- 0x9538, 0x9539, 0x953a, 0x953b, 0x953c, 0x953d, 0x953e, 0x953f,
- 0x9540, 0x9541, 0x9542, 0x9543, 0x9544, 0x9545, 0x9546, 0x9547, /* 0x9540 */
- 0x9548, 0x9549, 0x954a, 0x954b, 0x954c, 0x954d, 0x954e, 0x954f,
- 0x9550, 0x9551, 0x9552, 0x9553, 0x9554, 0x9555, 0x9556, 0x9557,
- 0x9558, 0x9559, 0x955a, 0x955b, 0x955c, 0x955d, 0x955e, 0x955f,
- 0x9560, 0x9561, 0x9562, 0x9563, 0x9564, 0x9565, 0x9566, 0x9567,
- 0x9568, 0x9569, 0x956a, 0x956b, 0x956c, 0x956d, 0x956e, 0x956f,
- 0x9570, 0x9571, 0x9572, 0x9573, 0x9574, 0x9575, 0x9576, 0x9577,
- 0x9578, 0x9579, 0x957a, 0x957b, 0x957c, 0x957d, 0x957e, 0x957f,
- 0x9580, 0x9581, 0x9582, 0x9583, 0x9584, 0x9585, 0x9586, 0x9587, /* 0x9580 */
- 0x9588, 0x9589, 0x958a, 0x958b, 0x958c, 0x958d, 0x958e, 0x958f,
- 0x9590, 0x9591, 0x9592, 0x9593, 0x9594, 0x9595, 0x9596, 0x9597,
- 0x9598, 0x9599, 0x959a, 0x959b, 0x959c, 0x959d, 0x959e, 0x959f,
- 0x95a0, 0x95a1, 0x95a2, 0x95a3, 0x95a4, 0x95a5, 0x95a6, 0x95a7,
- 0x95a8, 0x95a9, 0x95aa, 0x95ab, 0x95ac, 0x95ad, 0x95ae, 0x95af,
- 0x95b0, 0x95b1, 0x95b2, 0x95b3, 0x95b4, 0x95b5, 0x95b6, 0x95b7,
- 0x95b8, 0x95b9, 0x95ba, 0x95bb, 0x95bc, 0x95bd, 0x95be, 0x95bf,
- 0x95c0, 0x95c1, 0x95c2, 0x95c3, 0x95c4, 0x95c5, 0x95c6, 0x95c7, /* 0x95c0 */
- 0x95c8, 0x95c9, 0x95ca, 0x95cb, 0x95cc, 0x95cd, 0x95ce, 0x95cf,
- 0x95d0, 0x95d1, 0x95d2, 0x95d3, 0x95d4, 0x95d5, 0x95d6, 0x95d7,
- 0x95d8, 0x95d9, 0x95da, 0x95db, 0x95dc, 0x95dd, 0x95de, 0x95df,
- 0x95e0, 0x95e1, 0x95e2, 0x95e3, 0x95e4, 0x95e5, 0x95e6, 0x95e7,
- 0x95e8, 0x95e9, 0x95ea, 0x95eb, 0x95ec, 0x95ed, 0x95ee, 0x95ef,
- 0x95f0, 0x95f1, 0x95f2, 0x95f3, 0x95f4, 0x95f5, 0x95f6, 0x95f7,
- 0x95f8, 0x95f9, 0x95fa, 0x95fb, 0x95fc, 0x95fd, 0x95fe, 0x95ff,
- 0x9600, 0x9601, 0x9602, 0x9603, 0x9604, 0x9605, 0x9606, 0x9607, /* 0x9600 */
- 0x9608, 0x9609, 0x960a, 0x960b, 0x960c, 0x960d, 0x960e, 0x960f,
- 0x9610, 0x9611, 0x9612, 0x9613, 0x9614, 0x9615, 0x9616, 0x9617,
- 0x9618, 0x9619, 0x961a, 0x961b, 0x961c, 0x961d, 0x961e, 0x961f,
- 0x9620, 0x9621, 0x9622, 0x9623, 0x9624, 0x9625, 0x9626, 0x9627,
- 0x9628, 0x9629, 0x962a, 0x962b, 0x962c, 0x962d, 0x962e, 0x962f,
- 0x9630, 0x9631, 0x9632, 0x9633, 0x9634, 0x9635, 0x9636, 0x9637,
- 0x9638, 0x9639, 0x963a, 0x963b, 0x963c, 0x963d, 0x963e, 0x963f,
- 0x9640, 0x9641, 0x9642, 0x9643, 0x9644, 0x9645, 0x9646, 0x9647, /* 0x9640 */
- 0x9648, 0x9649, 0x964a, 0x964b, 0x964c, 0x964d, 0x964e, 0x964f,
- 0x9650, 0x9651, 0x9652, 0x9653, 0x9654, 0x9655, 0x9656, 0x9657,
- 0x9658, 0x9659, 0x965a, 0x965b, 0x965c, 0x965d, 0x965e, 0x965f,
- 0x9660, 0x9661, 0x9662, 0x9663, 0x9664, 0x9665, 0x9666, 0x9667,
- 0x9668, 0x9669, 0x966a, 0x966b, 0x966c, 0x966d, 0x966e, 0x966f,
- 0x9670, 0x9671, 0x9672, 0x9673, 0x9674, 0x9675, 0x9676, 0x9677,
- 0x9678, 0x9679, 0x967a, 0x967b, 0x967c, 0x967d, 0x967e, 0x967f,
- 0x9680, 0x9681, 0x9682, 0x9683, 0x9684, 0x9685, 0x9686, 0x9687, /* 0x9680 */
- 0x9688, 0x9689, 0x968a, 0x968b, 0x968c, 0x968d, 0x968e, 0x968f,
- 0x9690, 0x9691, 0x9692, 0x9693, 0x9694, 0x9695, 0x9696, 0x9697,
- 0x9698, 0x9699, 0x969a, 0x969b, 0x969c, 0x969d, 0x969e, 0x969f,
- 0x96a0, 0x96a1, 0x96a2, 0x96a3, 0x96a4, 0x96a5, 0x96a6, 0x96a7,
- 0x96a8, 0x96a9, 0x96aa, 0x96ab, 0x96ac, 0x96ad, 0x96ae, 0x96af,
- 0x96b0, 0x96b1, 0x96b2, 0x96b3, 0x96b4, 0x96b5, 0x96b6, 0x96b7,
- 0x96b8, 0x96b9, 0x96ba, 0x96bb, 0x96bc, 0x96bd, 0x96be, 0x96bf,
- 0x96c0, 0x96c1, 0x96c2, 0x96c3, 0x96c4, 0x96c5, 0x96c6, 0x96c7, /* 0x96c0 */
- 0x96c8, 0x96c9, 0x96ca, 0x96cb, 0x96cc, 0x96cd, 0x96ce, 0x96cf,
- 0x96d0, 0x96d1, 0x96d2, 0x96d3, 0x96d4, 0x96d5, 0x96d6, 0x96d7,
- 0x96d8, 0x96d9, 0x96da, 0x96db, 0x96dc, 0x96dd, 0x96de, 0x96df,
- 0x96e0, 0x96e1, 0x96e2, 0x96e3, 0x96e4, 0x96e5, 0x96e6, 0x96e7,
- 0x96e8, 0x96e9, 0x96ea, 0x96eb, 0x96ec, 0x96ed, 0x96ee, 0x96ef,
- 0x96f0, 0x96f1, 0x96f2, 0x96f3, 0x96f4, 0x96f5, 0x96f6, 0x96f7,
- 0x96f8, 0x96f9, 0x96fa, 0x96fb, 0x96fc, 0x96fd, 0x96fe, 0x96ff,
- 0x9700, 0x9701, 0x9702, 0x9703, 0x9704, 0x9705, 0x9706, 0x9707, /* 0x9700 */
- 0x9708, 0x9709, 0x970a, 0x970b, 0x970c, 0x970d, 0x970e, 0x970f,
- 0x9710, 0x9711, 0x9712, 0x9713, 0x9714, 0x9715, 0x9716, 0x9717,
- 0x9718, 0x9719, 0x971a, 0x971b, 0x971c, 0x971d, 0x971e, 0x971f,
- 0x9720, 0x9721, 0x9722, 0x9723, 0x9724, 0x9725, 0x9726, 0x9727,
- 0x9728, 0x9729, 0x972a, 0x972b, 0x972c, 0x972d, 0x972e, 0x972f,
- 0x9730, 0x9731, 0x9732, 0x9733, 0x9734, 0x9735, 0x9736, 0x9737,
- 0x9738, 0x9739, 0x973a, 0x973b, 0x973c, 0x973d, 0x973e, 0x973f,
- 0x9740, 0x9741, 0x9742, 0x9743, 0x9744, 0x9745, 0x9746, 0x9747, /* 0x9740 */
- 0x9748, 0x9749, 0x974a, 0x974b, 0x974c, 0x974d, 0x974e, 0x974f,
- 0x9750, 0x9751, 0x9752, 0x9753, 0x9754, 0x9755, 0x9756, 0x9757,
- 0x9758, 0x9759, 0x975a, 0x975b, 0x975c, 0x975d, 0x975e, 0x975f,
- 0x9760, 0x9761, 0x9762, 0x9763, 0x9764, 0x9765, 0x9766, 0x9767,
- 0x9768, 0x9769, 0x976a, 0x976b, 0x976c, 0x976d, 0x976e, 0x976f,
- 0x9770, 0x9771, 0x9772, 0x9773, 0x9774, 0x9775, 0x9776, 0x9777,
- 0x9778, 0x9779, 0x977a, 0x977b, 0x977c, 0x977d, 0x977e, 0x977f,
- 0x9780, 0x9781, 0x9782, 0x9783, 0x9784, 0x9785, 0x9786, 0x9787, /* 0x9780 */
- 0x9788, 0x9789, 0x978a, 0x978b, 0x978c, 0x978d, 0x978e, 0x978f,
- 0x9790, 0x9791, 0x9792, 0x9793, 0x9794, 0x9795, 0x9796, 0x9797,
- 0x9798, 0x9799, 0x979a, 0x979b, 0x979c, 0x979d, 0x979e, 0x979f,
- 0x97a0, 0x97a1, 0x97a2, 0x97a3, 0x97a4, 0x97a5, 0x97a6, 0x97a7,
- 0x97a8, 0x97a9, 0x97aa, 0x97ab, 0x97ac, 0x97ad, 0x97ae, 0x97af,
- 0x97b0, 0x97b1, 0x97b2, 0x97b3, 0x97b4, 0x97b5, 0x97b6, 0x97b7,
- 0x97b8, 0x97b9, 0x97ba, 0x97bb, 0x97bc, 0x97bd, 0x97be, 0x97bf,
- 0x97c0, 0x97c1, 0x97c2, 0x97c3, 0x97c4, 0x97c5, 0x97c6, 0x97c7, /* 0x97c0 */
- 0x97c8, 0x97c9, 0x97ca, 0x97cb, 0x97cc, 0x97cd, 0x97ce, 0x97cf,
- 0x97d0, 0x97d1, 0x97d2, 0x97d3, 0x97d4, 0x97d5, 0x97d6, 0x97d7,
- 0x97d8, 0x97d9, 0x97da, 0x97db, 0x97dc, 0x97dd, 0x97de, 0x97df,
- 0x97e0, 0x97e1, 0x97e2, 0x97e3, 0x97e4, 0x97e5, 0x97e6, 0x97e7,
- 0x97e8, 0x97e9, 0x97ea, 0x97eb, 0x97ec, 0x97ed, 0x97ee, 0x97ef,
- 0x97f0, 0x97f1, 0x97f2, 0x97f3, 0x97f4, 0x97f5, 0x97f6, 0x97f7,
- 0x97f8, 0x97f9, 0x97fa, 0x97fb, 0x97fc, 0x97fd, 0x97fe, 0x97ff,
- 0x9800, 0x9801, 0x9802, 0x9803, 0x9804, 0x9805, 0x9806, 0x9807, /* 0x9800 */
- 0x9808, 0x9809, 0x980a, 0x980b, 0x980c, 0x980d, 0x980e, 0x980f,
- 0x9810, 0x9811, 0x9812, 0x9813, 0x9814, 0x9815, 0x9816, 0x9817,
- 0x9818, 0x9819, 0x981a, 0x981b, 0x981c, 0x981d, 0x981e, 0x981f,
- 0x9820, 0x9821, 0x9822, 0x9823, 0x9824, 0x9825, 0x9826, 0x9827,
- 0x9828, 0x9829, 0x982a, 0x982b, 0x982c, 0x982d, 0x982e, 0x982f,
- 0x9830, 0x9831, 0x9832, 0x9833, 0x9834, 0x9835, 0x9836, 0x9837,
- 0x9838, 0x9839, 0x983a, 0x983b, 0x983c, 0x983d, 0x983e, 0x983f,
- 0x9840, 0x9841, 0x9842, 0x9843, 0x9844, 0x9845, 0x9846, 0x9847, /* 0x9840 */
- 0x9848, 0x9849, 0x984a, 0x984b, 0x984c, 0x984d, 0x984e, 0x984f,
- 0x9850, 0x9851, 0x9852, 0x9853, 0x9854, 0x9855, 0x9856, 0x9857,
- 0x9858, 0x9859, 0x985a, 0x985b, 0x985c, 0x985d, 0x985e, 0x985f,
- 0x9860, 0x9861, 0x9862, 0x9863, 0x9864, 0x9865, 0x9866, 0x9867,
- 0x9868, 0x9869, 0x986a, 0x986b, 0x986c, 0x986d, 0x986e, 0x986f,
- 0x9870, 0x9871, 0x9872, 0x9873, 0x9874, 0x9875, 0x9876, 0x9877,
- 0x9878, 0x9879, 0x987a, 0x987b, 0x987c, 0x987d, 0x987e, 0x987f,
- 0x9880, 0x9881, 0x9882, 0x9883, 0x9884, 0x9885, 0x9886, 0x9887, /* 0x9880 */
- 0x9888, 0x9889, 0x988a, 0x988b, 0x988c, 0x988d, 0x988e, 0x988f,
- 0x9890, 0x9891, 0x9892, 0x9893, 0x9894, 0x9895, 0x9896, 0x9897,
- 0x9898, 0x9899, 0x989a, 0x989b, 0x989c, 0x989d, 0x989e, 0x989f,
- 0x98a0, 0x98a1, 0x98a2, 0x98a3, 0x98a4, 0x98a5, 0x98a6, 0x98a7,
- 0x98a8, 0x98a9, 0x98aa, 0x98ab, 0x98ac, 0x98ad, 0x98ae, 0x98af,
- 0x98b0, 0x98b1, 0x98b2, 0x98b3, 0x98b4, 0x98b5, 0x98b6, 0x98b7,
- 0x98b8, 0x98b9, 0x98ba, 0x98bb, 0x98bc, 0x98bd, 0x98be, 0x98bf,
- 0x98c0, 0x98c1, 0x98c2, 0x98c3, 0x98c4, 0x98c5, 0x98c6, 0x98c7, /* 0x98c0 */
- 0x98c8, 0x98c9, 0x98ca, 0x98cb, 0x98cc, 0x98cd, 0x98ce, 0x98cf,
- 0x98d0, 0x98d1, 0x98d2, 0x98d3, 0x98d4, 0x98d5, 0x98d6, 0x98d7,
- 0x98d8, 0x98d9, 0x98da, 0x98db, 0x98dc, 0x98dd, 0x98de, 0x98df,
- 0x98e0, 0x98e1, 0x98e2, 0x98e3, 0x98e4, 0x98e5, 0x98e6, 0x98e7,
- 0x98e8, 0x98e9, 0x98ea, 0x98eb, 0x98ec, 0x98ed, 0x98ee, 0x98ef,
- 0x98f0, 0x98f1, 0x98f2, 0x98f3, 0x98f4, 0x98f5, 0x98f6, 0x98f7,
- 0x98f8, 0x98f9, 0x98fa, 0x98fb, 0x98fc, 0x98fd, 0x98fe, 0x98ff,
- 0x9900, 0x9901, 0x9902, 0x9903, 0x9904, 0x9905, 0x9906, 0x9907, /* 0x9900 */
- 0x9908, 0x9909, 0x990a, 0x990b, 0x990c, 0x990d, 0x990e, 0x990f,
- 0x9910, 0x9911, 0x9912, 0x9913, 0x9914, 0x9915, 0x9916, 0x9917,
- 0x9918, 0x9919, 0x991a, 0x991b, 0x991c, 0x991d, 0x991e, 0x991f,
- 0x9920, 0x9921, 0x9922, 0x9923, 0x9924, 0x9925, 0x9926, 0x9927,
- 0x9928, 0x9929, 0x992a, 0x992b, 0x992c, 0x992d, 0x992e, 0x992f,
- 0x9930, 0x9931, 0x9932, 0x9933, 0x9934, 0x9935, 0x9936, 0x9937,
- 0x9938, 0x9939, 0x993a, 0x993b, 0x993c, 0x993d, 0x993e, 0x993f,
- 0x9940, 0x9941, 0x9942, 0x9943, 0x9944, 0x9945, 0x9946, 0x9947, /* 0x9940 */
- 0x9948, 0x9949, 0x994a, 0x994b, 0x994c, 0x994d, 0x994e, 0x994f,
- 0x9950, 0x9951, 0x9952, 0x9953, 0x9954, 0x9955, 0x9956, 0x9957,
- 0x9958, 0x9959, 0x995a, 0x995b, 0x995c, 0x995d, 0x995e, 0x995f,
- 0x9960, 0x9961, 0x9962, 0x9963, 0x9964, 0x9965, 0x9966, 0x9967,
- 0x9968, 0x9969, 0x996a, 0x996b, 0x996c, 0x996d, 0x996e, 0x996f,
- 0x9970, 0x9971, 0x9972, 0x9973, 0x9974, 0x9975, 0x9976, 0x9977,
- 0x9978, 0x9979, 0x997a, 0x997b, 0x997c, 0x997d, 0x997e, 0x997f,
- 0x9980, 0x9981, 0x9982, 0x9983, 0x9984, 0x9985, 0x9986, 0x9987, /* 0x9980 */
- 0x9988, 0x9989, 0x998a, 0x998b, 0x998c, 0x998d, 0x998e, 0x998f,
- 0x9990, 0x9991, 0x9992, 0x9993, 0x9994, 0x9995, 0x9996, 0x9997,
- 0x9998, 0x9999, 0x999a, 0x999b, 0x999c, 0x999d, 0x999e, 0x999f,
- 0x99a0, 0x99a1, 0x99a2, 0x99a3, 0x99a4, 0x99a5, 0x99a6, 0x99a7,
- 0x99a8, 0x99a9, 0x99aa, 0x99ab, 0x99ac, 0x99ad, 0x99ae, 0x99af,
- 0x99b0, 0x99b1, 0x99b2, 0x99b3, 0x99b4, 0x99b5, 0x99b6, 0x99b7,
- 0x99b8, 0x99b9, 0x99ba, 0x99bb, 0x99bc, 0x99bd, 0x99be, 0x99bf,
- 0x99c0, 0x99c1, 0x99c2, 0x99c3, 0x99c4, 0x99c5, 0x99c6, 0x99c7, /* 0x99c0 */
- 0x99c8, 0x99c9, 0x99ca, 0x99cb, 0x99cc, 0x99cd, 0x99ce, 0x99cf,
- 0x99d0, 0x99d1, 0x99d2, 0x99d3, 0x99d4, 0x99d5, 0x99d6, 0x99d7,
- 0x99d8, 0x99d9, 0x99da, 0x99db, 0x99dc, 0x99dd, 0x99de, 0x99df,
- 0x99e0, 0x99e1, 0x99e2, 0x99e3, 0x99e4, 0x99e5, 0x99e6, 0x99e7,
- 0x99e8, 0x99e9, 0x99ea, 0x99eb, 0x99ec, 0x99ed, 0x99ee, 0x99ef,
- 0x99f0, 0x99f1, 0x99f2, 0x99f3, 0x99f4, 0x99f5, 0x99f6, 0x99f7,
- 0x99f8, 0x99f9, 0x99fa, 0x99fb, 0x99fc, 0x99fd, 0x99fe, 0x99ff,
- 0x9a00, 0x9a01, 0x9a02, 0x9a03, 0x9a04, 0x9a05, 0x9a06, 0x9a07, /* 0x9a00 */
- 0x9a08, 0x9a09, 0x9a0a, 0x9a0b, 0x9a0c, 0x9a0d, 0x9a0e, 0x9a0f,
- 0x9a10, 0x9a11, 0x9a12, 0x9a13, 0x9a14, 0x9a15, 0x9a16, 0x9a17,
- 0x9a18, 0x9a19, 0x9a1a, 0x9a1b, 0x9a1c, 0x9a1d, 0x9a1e, 0x9a1f,
- 0x9a20, 0x9a21, 0x9a22, 0x9a23, 0x9a24, 0x9a25, 0x9a26, 0x9a27,
- 0x9a28, 0x9a29, 0x9a2a, 0x9a2b, 0x9a2c, 0x9a2d, 0x9a2e, 0x9a2f,
- 0x9a30, 0x9a31, 0x9a32, 0x9a33, 0x9a34, 0x9a35, 0x9a36, 0x9a37,
- 0x9a38, 0x9a39, 0x9a3a, 0x9a3b, 0x9a3c, 0x9a3d, 0x9a3e, 0x9a3f,
- 0x9a40, 0x9a41, 0x9a42, 0x9a43, 0x9a44, 0x9a45, 0x9a46, 0x9a47, /* 0x9a40 */
- 0x9a48, 0x9a49, 0x9a4a, 0x9a4b, 0x9a4c, 0x9a4d, 0x9a4e, 0x9a4f,
- 0x9a50, 0x9a51, 0x9a52, 0x9a53, 0x9a54, 0x9a55, 0x9a56, 0x9a57,
- 0x9a58, 0x9a59, 0x9a5a, 0x9a5b, 0x9a5c, 0x9a5d, 0x9a5e, 0x9a5f,
- 0x9a60, 0x9a61, 0x9a62, 0x9a63, 0x9a64, 0x9a65, 0x9a66, 0x9a67,
- 0x9a68, 0x9a69, 0x9a6a, 0x9a6b, 0x9a6c, 0x9a6d, 0x9a6e, 0x9a6f,
- 0x9a70, 0x9a71, 0x9a72, 0x9a73, 0x9a74, 0x9a75, 0x9a76, 0x9a77,
- 0x9a78, 0x9a79, 0x9a7a, 0x9a7b, 0x9a7c, 0x9a7d, 0x9a7e, 0x9a7f,
- 0x9a80, 0x9a81, 0x9a82, 0x9a83, 0x9a84, 0x9a85, 0x9a86, 0x9a87, /* 0x9a80 */
- 0x9a88, 0x9a89, 0x9a8a, 0x9a8b, 0x9a8c, 0x9a8d, 0x9a8e, 0x9a8f,
- 0x9a90, 0x9a91, 0x9a92, 0x9a93, 0x9a94, 0x9a95, 0x9a96, 0x9a97,
- 0x9a98, 0x9a99, 0x9a9a, 0x9a9b, 0x9a9c, 0x9a9d, 0x9a9e, 0x9a9f,
- 0x9aa0, 0x9aa1, 0x9aa2, 0x9aa3, 0x9aa4, 0x9aa5, 0x9aa6, 0x9aa7,
- 0x9aa8, 0x9aa9, 0x9aaa, 0x9aab, 0x9aac, 0x9aad, 0x9aae, 0x9aaf,
- 0x9ab0, 0x9ab1, 0x9ab2, 0x9ab3, 0x9ab4, 0x9ab5, 0x9ab6, 0x9ab7,
- 0x9ab8, 0x9ab9, 0x9aba, 0x9abb, 0x9abc, 0x9abd, 0x9abe, 0x9abf,
- 0x9ac0, 0x9ac1, 0x9ac2, 0x9ac3, 0x9ac4, 0x9ac5, 0x9ac6, 0x9ac7, /* 0x9ac0 */
- 0x9ac8, 0x9ac9, 0x9aca, 0x9acb, 0x9acc, 0x9acd, 0x9ace, 0x9acf,
- 0x9ad0, 0x9ad1, 0x9ad2, 0x9ad3, 0x9ad4, 0x9ad5, 0x9ad6, 0x9ad7,
- 0x9ad8, 0x9ad9, 0x9ada, 0x9adb, 0x9adc, 0x9add, 0x9ade, 0x9adf,
- 0x9ae0, 0x9ae1, 0x9ae2, 0x9ae3, 0x9ae4, 0x9ae5, 0x9ae6, 0x9ae7,
- 0x9ae8, 0x9ae9, 0x9aea, 0x9aeb, 0x9aec, 0x9aed, 0x9aee, 0x9aef,
- 0x9af0, 0x9af1, 0x9af2, 0x9af3, 0x9af4, 0x9af5, 0x9af6, 0x9af7,
- 0x9af8, 0x9af9, 0x9afa, 0x9afb, 0x9afc, 0x9afd, 0x9afe, 0x9aff,
- 0x9b00, 0x9b01, 0x9b02, 0x9b03, 0x9b04, 0x9b05, 0x9b06, 0x9b07, /* 0x9b00 */
- 0x9b08, 0x9b09, 0x9b0a, 0x9b0b, 0x9b0c, 0x9b0d, 0x9b0e, 0x9b0f,
- 0x9b10, 0x9b11, 0x9b12, 0x9b13, 0x9b14, 0x9b15, 0x9b16, 0x9b17,
- 0x9b18, 0x9b19, 0x9b1a, 0x9b1b, 0x9b1c, 0x9b1d, 0x9b1e, 0x9b1f,
- 0x9b20, 0x9b21, 0x9b22, 0x9b23, 0x9b24, 0x9b25, 0x9b26, 0x9b27,
- 0x9b28, 0x9b29, 0x9b2a, 0x9b2b, 0x9b2c, 0x9b2d, 0x9b2e, 0x9b2f,
- 0x9b30, 0x9b31, 0x9b32, 0x9b33, 0x9b34, 0x9b35, 0x9b36, 0x9b37,
- 0x9b38, 0x9b39, 0x9b3a, 0x9b3b, 0x9b3c, 0x9b3d, 0x9b3e, 0x9b3f,
- 0x9b40, 0x9b41, 0x9b42, 0x9b43, 0x9b44, 0x9b45, 0x9b46, 0x9b47, /* 0x9b40 */
- 0x9b48, 0x9b49, 0x9b4a, 0x9b4b, 0x9b4c, 0x9b4d, 0x9b4e, 0x9b4f,
- 0x9b50, 0x9b51, 0x9b52, 0x9b53, 0x9b54, 0x9b55, 0x9b56, 0x9b57,
- 0x9b58, 0x9b59, 0x9b5a, 0x9b5b, 0x9b5c, 0x9b5d, 0x9b5e, 0x9b5f,
- 0x9b60, 0x9b61, 0x9b62, 0x9b63, 0x9b64, 0x9b65, 0x9b66, 0x9b67,
- 0x9b68, 0x9b69, 0x9b6a, 0x9b6b, 0x9b6c, 0x9b6d, 0x9b6e, 0x9b6f,
- 0x9b70, 0x9b71, 0x9b72, 0x9b73, 0x9b74, 0x9b75, 0x9b76, 0x9b77,
- 0x9b78, 0x9b79, 0x9b7a, 0x9b7b, 0x9b7c, 0x9b7d, 0x9b7e, 0x9b7f,
- 0x9b80, 0x9b81, 0x9b82, 0x9b83, 0x9b84, 0x9b85, 0x9b86, 0x9b87, /* 0x9b80 */
- 0x9b88, 0x9b89, 0x9b8a, 0x9b8b, 0x9b8c, 0x9b8d, 0x9b8e, 0x9b8f,
- 0x9b90, 0x9b91, 0x9b92, 0x9b93, 0x9b94, 0x9b95, 0x9b96, 0x9b97,
- 0x9b98, 0x9b99, 0x9b9a, 0x9b9b, 0x9b9c, 0x9b9d, 0x9b9e, 0x9b9f,
- 0x9ba0, 0x9ba1, 0x9ba2, 0x9ba3, 0x9ba4, 0x9ba5, 0x9ba6, 0x9ba7,
- 0x9ba8, 0x9ba9, 0x9baa, 0x9bab, 0x9bac, 0x9bad, 0x9bae, 0x9baf,
- 0x9bb0, 0x9bb1, 0x9bb2, 0x9bb3, 0x9bb4, 0x9bb5, 0x9bb6, 0x9bb7,
- 0x9bb8, 0x9bb9, 0x9bba, 0x9bbb, 0x9bbc, 0x9bbd, 0x9bbe, 0x9bbf,
- 0x9bc0, 0x9bc1, 0x9bc2, 0x9bc3, 0x9bc4, 0x9bc5, 0x9bc6, 0x9bc7, /* 0x9bc0 */
- 0x9bc8, 0x9bc9, 0x9bca, 0x9bcb, 0x9bcc, 0x9bcd, 0x9bce, 0x9bcf,
- 0x9bd0, 0x9bd1, 0x9bd2, 0x9bd3, 0x9bd4, 0x9bd5, 0x9bd6, 0x9bd7,
- 0x9bd8, 0x9bd9, 0x9bda, 0x9bdb, 0x9bdc, 0x9bdd, 0x9bde, 0x9bdf,
- 0x9be0, 0x9be1, 0x9be2, 0x9be3, 0x9be4, 0x9be5, 0x9be6, 0x9be7,
- 0x9be8, 0x9be9, 0x9bea, 0x9beb, 0x9bec, 0x9bed, 0x9bee, 0x9bef,
- 0x9bf0, 0x9bf1, 0x9bf2, 0x9bf3, 0x9bf4, 0x9bf5, 0x9bf6, 0x9bf7,
- 0x9bf8, 0x9bf9, 0x9bfa, 0x9bfb, 0x9bfc, 0x9bfd, 0x9bfe, 0x9bff,
- 0x9c00, 0x9c01, 0x9c02, 0x9c03, 0x9c04, 0x9c05, 0x9c06, 0x9c07, /* 0x9c00 */
- 0x9c08, 0x9c09, 0x9c0a, 0x9c0b, 0x9c0c, 0x9c0d, 0x9c0e, 0x9c0f,
- 0x9c10, 0x9c11, 0x9c12, 0x9c13, 0x9c14, 0x9c15, 0x9c16, 0x9c17,
- 0x9c18, 0x9c19, 0x9c1a, 0x9c1b, 0x9c1c, 0x9c1d, 0x9c1e, 0x9c1f,
- 0x9c20, 0x9c21, 0x9c22, 0x9c23, 0x9c24, 0x9c25, 0x9c26, 0x9c27,
- 0x9c28, 0x9c29, 0x9c2a, 0x9c2b, 0x9c2c, 0x9c2d, 0x9c2e, 0x9c2f,
- 0x9c30, 0x9c31, 0x9c32, 0x9c33, 0x9c34, 0x9c35, 0x9c36, 0x9c37,
- 0x9c38, 0x9c39, 0x9c3a, 0x9c3b, 0x9c3c, 0x9c3d, 0x9c3e, 0x9c3f,
- 0x9c40, 0x9c41, 0x9c42, 0x9c43, 0x9c44, 0x9c45, 0x9c46, 0x9c47, /* 0x9c40 */
- 0x9c48, 0x9c49, 0x9c4a, 0x9c4b, 0x9c4c, 0x9c4d, 0x9c4e, 0x9c4f,
- 0x9c50, 0x9c51, 0x9c52, 0x9c53, 0x9c54, 0x9c55, 0x9c56, 0x9c57,
- 0x9c58, 0x9c59, 0x9c5a, 0x9c5b, 0x9c5c, 0x9c5d, 0x9c5e, 0x9c5f,
- 0x9c60, 0x9c61, 0x9c62, 0x9c63, 0x9c64, 0x9c65, 0x9c66, 0x9c67,
- 0x9c68, 0x9c69, 0x9c6a, 0x9c6b, 0x9c6c, 0x9c6d, 0x9c6e, 0x9c6f,
- 0x9c70, 0x9c71, 0x9c72, 0x9c73, 0x9c74, 0x9c75, 0x9c76, 0x9c77,
- 0x9c78, 0x9c79, 0x9c7a, 0x9c7b, 0x9c7c, 0x9c7d, 0x9c7e, 0x9c7f,
- 0x9c80, 0x9c81, 0x9c82, 0x9c83, 0x9c84, 0x9c85, 0x9c86, 0x9c87, /* 0x9c80 */
- 0x9c88, 0x9c89, 0x9c8a, 0x9c8b, 0x9c8c, 0x9c8d, 0x9c8e, 0x9c8f,
- 0x9c90, 0x9c91, 0x9c92, 0x9c93, 0x9c94, 0x9c95, 0x9c96, 0x9c97,
- 0x9c98, 0x9c99, 0x9c9a, 0x9c9b, 0x9c9c, 0x9c9d, 0x9c9e, 0x9c9f,
- 0x9ca0, 0x9ca1, 0x9ca2, 0x9ca3, 0x9ca4, 0x9ca5, 0x9ca6, 0x9ca7,
- 0x9ca8, 0x9ca9, 0x9caa, 0x9cab, 0x9cac, 0x9cad, 0x9cae, 0x9caf,
- 0x9cb0, 0x9cb1, 0x9cb2, 0x9cb3, 0x9cb4, 0x9cb5, 0x9cb6, 0x9cb7,
- 0x9cb8, 0x9cb9, 0x9cba, 0x9cbb, 0x9cbc, 0x9cbd, 0x9cbe, 0x9cbf,
- 0x9cc0, 0x9cc1, 0x9cc2, 0x9cc3, 0x9cc4, 0x9cc5, 0x9cc6, 0x9cc7, /* 0x9cc0 */
- 0x9cc8, 0x9cc9, 0x9cca, 0x9ccb, 0x9ccc, 0x9ccd, 0x9cce, 0x9ccf,
- 0x9cd0, 0x9cd1, 0x9cd2, 0x9cd3, 0x9cd4, 0x9cd5, 0x9cd6, 0x9cd7,
- 0x9cd8, 0x9cd9, 0x9cda, 0x9cdb, 0x9cdc, 0x9cdd, 0x9cde, 0x9cdf,
- 0x9ce0, 0x9ce1, 0x9ce2, 0x9ce3, 0x9ce4, 0x9ce5, 0x9ce6, 0x9ce7,
- 0x9ce8, 0x9ce9, 0x9cea, 0x9ceb, 0x9cec, 0x9ced, 0x9cee, 0x9cef,
- 0x9cf0, 0x9cf1, 0x9cf2, 0x9cf3, 0x9cf4, 0x9cf5, 0x9cf6, 0x9cf7,
- 0x9cf8, 0x9cf9, 0x9cfa, 0x9cfb, 0x9cfc, 0x9cfd, 0x9cfe, 0x9cff,
- 0x9d00, 0x9d01, 0x9d02, 0x9d03, 0x9d04, 0x9d05, 0x9d06, 0x9d07, /* 0x9d00 */
- 0x9d08, 0x9d09, 0x9d0a, 0x9d0b, 0x9d0c, 0x9d0d, 0x9d0e, 0x9d0f,
- 0x9d10, 0x9d11, 0x9d12, 0x9d13, 0x9d14, 0x9d15, 0x9d16, 0x9d17,
- 0x9d18, 0x9d19, 0x9d1a, 0x9d1b, 0x9d1c, 0x9d1d, 0x9d1e, 0x9d1f,
- 0x9d20, 0x9d21, 0x9d22, 0x9d23, 0x9d24, 0x9d25, 0x9d26, 0x9d27,
- 0x9d28, 0x9d29, 0x9d2a, 0x9d2b, 0x9d2c, 0x9d2d, 0x9d2e, 0x9d2f,
- 0x9d30, 0x9d31, 0x9d32, 0x9d33, 0x9d34, 0x9d35, 0x9d36, 0x9d37,
- 0x9d38, 0x9d39, 0x9d3a, 0x9d3b, 0x9d3c, 0x9d3d, 0x9d3e, 0x9d3f,
- 0x9d40, 0x9d41, 0x9d42, 0x9d43, 0x9d44, 0x9d45, 0x9d46, 0x9d47, /* 0x9d40 */
- 0x9d48, 0x9d49, 0x9d4a, 0x9d4b, 0x9d4c, 0x9d4d, 0x9d4e, 0x9d4f,
- 0x9d50, 0x9d51, 0x9d52, 0x9d53, 0x9d54, 0x9d55, 0x9d56, 0x9d57,
- 0x9d58, 0x9d59, 0x9d5a, 0x9d5b, 0x9d5c, 0x9d5d, 0x9d5e, 0x9d5f,
- 0x9d60, 0x9d61, 0x9d62, 0x9d63, 0x9d64, 0x9d65, 0x9d66, 0x9d67,
- 0x9d68, 0x9d69, 0x9d6a, 0x9d6b, 0x9d6c, 0x9d6d, 0x9d6e, 0x9d6f,
- 0x9d70, 0x9d71, 0x9d72, 0x9d73, 0x9d74, 0x9d75, 0x9d76, 0x9d77,
- 0x9d78, 0x9d79, 0x9d7a, 0x9d7b, 0x9d7c, 0x9d7d, 0x9d7e, 0x9d7f,
- 0x9d80, 0x9d81, 0x9d82, 0x9d83, 0x9d84, 0x9d85, 0x9d86, 0x9d87, /* 0x9d80 */
- 0x9d88, 0x9d89, 0x9d8a, 0x9d8b, 0x9d8c, 0x9d8d, 0x9d8e, 0x9d8f,
- 0x9d90, 0x9d91, 0x9d92, 0x9d93, 0x9d94, 0x9d95, 0x9d96, 0x9d97,
- 0x9d98, 0x9d99, 0x9d9a, 0x9d9b, 0x9d9c, 0x9d9d, 0x9d9e, 0x9d9f,
- 0x9da0, 0x9da1, 0x9da2, 0x9da3, 0x9da4, 0x9da5, 0x9da6, 0x9da7,
- 0x9da8, 0x9da9, 0x9daa, 0x9dab, 0x9dac, 0x9dad, 0x9dae, 0x9daf,
- 0x9db0, 0x9db1, 0x9db2, 0x9db3, 0x9db4, 0x9db5, 0x9db6, 0x9db7,
- 0x9db8, 0x9db9, 0x9dba, 0x9dbb, 0x9dbc, 0x9dbd, 0x9dbe, 0x9dbf,
- 0x9dc0, 0x9dc1, 0x9dc2, 0x9dc3, 0x9dc4, 0x9dc5, 0x9dc6, 0x9dc7, /* 0x9dc0 */
- 0x9dc8, 0x9dc9, 0x9dca, 0x9dcb, 0x9dcc, 0x9dcd, 0x9dce, 0x9dcf,
- 0x9dd0, 0x9dd1, 0x9dd2, 0x9dd3, 0x9dd4, 0x9dd5, 0x9dd6, 0x9dd7,
- 0x9dd8, 0x9dd9, 0x9dda, 0x9ddb, 0x9ddc, 0x9ddd, 0x9dde, 0x9ddf,
- 0x9de0, 0x9de1, 0x9de2, 0x9de3, 0x9de4, 0x9de5, 0x9de6, 0x9de7,
- 0x9de8, 0x9de9, 0x9dea, 0x9deb, 0x9dec, 0x9ded, 0x9dee, 0x9def,
- 0x9df0, 0x9df1, 0x9df2, 0x9df3, 0x9df4, 0x9df5, 0x9df6, 0x9df7,
- 0x9df8, 0x9df9, 0x9dfa, 0x9dfb, 0x9dfc, 0x9dfd, 0x9dfe, 0x9dff,
- 0x9e00, 0x9e01, 0x9e02, 0x9e03, 0x9e04, 0x9e05, 0x9e06, 0x9e07, /* 0x9e00 */
- 0x9e08, 0x9e09, 0x9e0a, 0x9e0b, 0x9e0c, 0x9e0d, 0x9e0e, 0x9e0f,
- 0x9e10, 0x9e11, 0x9e12, 0x9e13, 0x9e14, 0x9e15, 0x9e16, 0x9e17,
- 0x9e18, 0x9e19, 0x9e1a, 0x9e1b, 0x9e1c, 0x9e1d, 0x9e1e, 0x9e1f,
- 0x9e20, 0x9e21, 0x9e22, 0x9e23, 0x9e24, 0x9e25, 0x9e26, 0x9e27,
- 0x9e28, 0x9e29, 0x9e2a, 0x9e2b, 0x9e2c, 0x9e2d, 0x9e2e, 0x9e2f,
- 0x9e30, 0x9e31, 0x9e32, 0x9e33, 0x9e34, 0x9e35, 0x9e36, 0x9e37,
- 0x9e38, 0x9e39, 0x9e3a, 0x9e3b, 0x9e3c, 0x9e3d, 0x9e3e, 0x9e3f,
- 0x9e40, 0x9e41, 0x9e42, 0x9e43, 0x9e44, 0x9e45, 0x9e46, 0x9e47, /* 0x9e40 */
- 0x9e48, 0x9e49, 0x9e4a, 0x9e4b, 0x9e4c, 0x9e4d, 0x9e4e, 0x9e4f,
- 0x9e50, 0x9e51, 0x9e52, 0x9e53, 0x9e54, 0x9e55, 0x9e56, 0x9e57,
- 0x9e58, 0x9e59, 0x9e5a, 0x9e5b, 0x9e5c, 0x9e5d, 0x9e5e, 0x9e5f,
- 0x9e60, 0x9e61, 0x9e62, 0x9e63, 0x9e64, 0x9e65, 0x9e66, 0x9e67,
- 0x9e68, 0x9e69, 0x9e6a, 0x9e6b, 0x9e6c, 0x9e6d, 0x9e6e, 0x9e6f,
- 0x9e70, 0x9e71, 0x9e72, 0x9e73, 0x9e74, 0x9e75, 0x9e76, 0x9e77,
- 0x9e78, 0x9e79, 0x9e7a, 0x9e7b, 0x9e7c, 0x9e7d, 0x9e7e, 0x9e7f,
- 0x9e80, 0x9e81, 0x9e82, 0x9e83, 0x9e84, 0x9e85, 0x9e86, 0x9e87, /* 0x9e80 */
- 0x9e88, 0x9e89, 0x9e8a, 0x9e8b, 0x9e8c, 0x9e8d, 0x9e8e, 0x9e8f,
- 0x9e90, 0x9e91, 0x9e92, 0x9e93, 0x9e94, 0x9e95, 0x9e96, 0x9e97,
- 0x9e98, 0x9e99, 0x9e9a, 0x9e9b, 0x9e9c, 0x9e9d, 0x9e9e, 0x9e9f,
- 0x9ea0, 0x9ea1, 0x9ea2, 0x9ea3, 0x9ea4, 0x9ea5, 0x9ea6, 0x9ea7,
- 0x9ea8, 0x9ea9, 0x9eaa, 0x9eab, 0x9eac, 0x9ead, 0x9eae, 0x9eaf,
- 0x9eb0, 0x9eb1, 0x9eb2, 0x9eb3, 0x9eb4, 0x9eb5, 0x9eb6, 0x9eb7,
- 0x9eb8, 0x9eb9, 0x9eba, 0x9ebb, 0x9ebc, 0x9ebd, 0x9ebe, 0x9ebf,
- 0x9ec0, 0x9ec1, 0x9ec2, 0x9ec3, 0x9ec4, 0x9ec5, 0x9ec6, 0x9ec7, /* 0x9ec0 */
- 0x9ec8, 0x9ec9, 0x9eca, 0x9ecb, 0x9ecc, 0x9ecd, 0x9ece, 0x9ecf,
- 0x9ed0, 0x9ed1, 0x9ed2, 0x9ed3, 0x9ed4, 0x9ed5, 0x9ed6, 0x9ed7,
- 0x9ed8, 0x9ed9, 0x9eda, 0x9edb, 0x9edc, 0x9edd, 0x9ede, 0x9edf,
- 0x9ee0, 0x9ee1, 0x9ee2, 0x9ee3, 0x9ee4, 0x9ee5, 0x9ee6, 0x9ee7,
- 0x9ee8, 0x9ee9, 0x9eea, 0x9eeb, 0x9eec, 0x9eed, 0x9eee, 0x9eef,
- 0x9ef0, 0x9ef1, 0x9ef2, 0x9ef3, 0x9ef4, 0x9ef5, 0x9ef6, 0x9ef7,
- 0x9ef8, 0x9ef9, 0x9efa, 0x9efb, 0x9efc, 0x9efd, 0x9efe, 0x9eff,
- 0x9f00, 0x9f01, 0x9f02, 0x9f03, 0x9f04, 0x9f05, 0x9f06, 0x9f07, /* 0x9f00 */
- 0x9f08, 0x9f09, 0x9f0a, 0x9f0b, 0x9f0c, 0x9f0d, 0x9f0e, 0x9f0f,
- 0x9f10, 0x9f11, 0x9f12, 0x9f13, 0x9f14, 0x9f15, 0x9f16, 0x9f17,
- 0x9f18, 0x9f19, 0x9f1a, 0x9f1b, 0x9f1c, 0x9f1d, 0x9f1e, 0x9f1f,
- 0x9f20, 0x9f21, 0x9f22, 0x9f23, 0x9f24, 0x9f25, 0x9f26, 0x9f27,
- 0x9f28, 0x9f29, 0x9f2a, 0x9f2b, 0x9f2c, 0x9f2d, 0x9f2e, 0x9f2f,
- 0x9f30, 0x9f31, 0x9f32, 0x9f33, 0x9f34, 0x9f35, 0x9f36, 0x9f37,
- 0x9f38, 0x9f39, 0x9f3a, 0x9f3b, 0x9f3c, 0x9f3d, 0x9f3e, 0x9f3f,
- 0x9f40, 0x9f41, 0x9f42, 0x9f43, 0x9f44, 0x9f45, 0x9f46, 0x9f47, /* 0x9f40 */
- 0x9f48, 0x9f49, 0x9f4a, 0x9f4b, 0x9f4c, 0x9f4d, 0x9f4e, 0x9f4f,
- 0x9f50, 0x9f51, 0x9f52, 0x9f53, 0x9f54, 0x9f55, 0x9f56, 0x9f57,
- 0x9f58, 0x9f59, 0x9f5a, 0x9f5b, 0x9f5c, 0x9f5d, 0x9f5e, 0x9f5f,
- 0x9f60, 0x9f61, 0x9f62, 0x9f63, 0x9f64, 0x9f65, 0x9f66, 0x9f67,
- 0x9f68, 0x9f69, 0x9f6a, 0x9f6b, 0x9f6c, 0x9f6d, 0x9f6e, 0x9f6f,
- 0x9f70, 0x9f71, 0x9f72, 0x9f73, 0x9f74, 0x9f75, 0x9f76, 0x9f77,
- 0x9f78, 0x9f79, 0x9f7a, 0x9f7b, 0x9f7c, 0x9f7d, 0x9f7e, 0x9f7f,
- 0x9f80, 0x9f81, 0x9f82, 0x9f83, 0x9f84, 0x9f85, 0x9f86, 0x9f87, /* 0x9f80 */
- 0x9f88, 0x9f89, 0x9f8a, 0x9f8b, 0x9f8c, 0x9f8d, 0x9f8e, 0x9f8f,
- 0x9f90, 0x9f91, 0x9f92, 0x9f93, 0x9f94, 0x9f95, 0x9f96, 0x9f97,
- 0x9f98, 0x9f99, 0x9f9a, 0x9f9b, 0x9f9c, 0x9f9d, 0x9f9e, 0x9f9f,
- 0x9fa0, 0x9fa1, 0x9fa2, 0x9fa3, 0x9fa4, 0x9fa5, 0x9fa6, 0x9fa7,
- 0x9fa8, 0x9fa9, 0x9faa, 0x9fab, 0x9fac, 0x9fad, 0x9fae, 0x9faf,
- 0x9fb0, 0x9fb1, 0x9fb2, 0x9fb3, 0x9fb4, 0x9fb5, 0x9fb6, 0x9fb7,
- 0x9fb8, 0x9fb9, 0x9fba, 0x9fbb, 0x9fbc, 0x9fbd, 0x9fbe, 0x9fbf,
- 0x9fc0, 0x9fc1, 0x9fc2, 0x9fc3, 0x9fc4, 0x9fc5, 0x9fc6, 0x9fc7, /* 0x9fc0 */
- 0x9fc8, 0x9fc9, 0x9fca, 0x9fcb, 0x9fcc, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa000, 0xa001, 0xa002, 0xa003, 0xa004, 0xa005, 0xa006, 0xa007, /* 0xa000 */
- 0xa008, 0xa009, 0xa00a, 0xa00b, 0xa00c, 0xa00d, 0xa00e, 0xa00f,
- 0xa010, 0xa011, 0xa012, 0xa013, 0xa014, 0xa015, 0xa016, 0xa017,
- 0xa018, 0xa019, 0xa01a, 0xa01b, 0xa01c, 0xa01d, 0xa01e, 0xa01f,
- 0xa020, 0xa021, 0xa022, 0xa023, 0xa024, 0xa025, 0xa026, 0xa027,
- 0xa028, 0xa029, 0xa02a, 0xa02b, 0xa02c, 0xa02d, 0xa02e, 0xa02f,
- 0xa030, 0xa031, 0xa032, 0xa033, 0xa034, 0xa035, 0xa036, 0xa037,
- 0xa038, 0xa039, 0xa03a, 0xa03b, 0xa03c, 0xa03d, 0xa03e, 0xa03f,
- 0xa040, 0xa041, 0xa042, 0xa043, 0xa044, 0xa045, 0xa046, 0xa047, /* 0xa040 */
- 0xa048, 0xa049, 0xa04a, 0xa04b, 0xa04c, 0xa04d, 0xa04e, 0xa04f,
- 0xa050, 0xa051, 0xa052, 0xa053, 0xa054, 0xa055, 0xa056, 0xa057,
- 0xa058, 0xa059, 0xa05a, 0xa05b, 0xa05c, 0xa05d, 0xa05e, 0xa05f,
- 0xa060, 0xa061, 0xa062, 0xa063, 0xa064, 0xa065, 0xa066, 0xa067,
- 0xa068, 0xa069, 0xa06a, 0xa06b, 0xa06c, 0xa06d, 0xa06e, 0xa06f,
- 0xa070, 0xa071, 0xa072, 0xa073, 0xa074, 0xa075, 0xa076, 0xa077,
- 0xa078, 0xa079, 0xa07a, 0xa07b, 0xa07c, 0xa07d, 0xa07e, 0xa07f,
- 0xa080, 0xa081, 0xa082, 0xa083, 0xa084, 0xa085, 0xa086, 0xa087, /* 0xa080 */
- 0xa088, 0xa089, 0xa08a, 0xa08b, 0xa08c, 0xa08d, 0xa08e, 0xa08f,
- 0xa090, 0xa091, 0xa092, 0xa093, 0xa094, 0xa095, 0xa096, 0xa097,
- 0xa098, 0xa099, 0xa09a, 0xa09b, 0xa09c, 0xa09d, 0xa09e, 0xa09f,
- 0xa0a0, 0xa0a1, 0xa0a2, 0xa0a3, 0xa0a4, 0xa0a5, 0xa0a6, 0xa0a7,
- 0xa0a8, 0xa0a9, 0xa0aa, 0xa0ab, 0xa0ac, 0xa0ad, 0xa0ae, 0xa0af,
- 0xa0b0, 0xa0b1, 0xa0b2, 0xa0b3, 0xa0b4, 0xa0b5, 0xa0b6, 0xa0b7,
- 0xa0b8, 0xa0b9, 0xa0ba, 0xa0bb, 0xa0bc, 0xa0bd, 0xa0be, 0xa0bf,
- 0xa0c0, 0xa0c1, 0xa0c2, 0xa0c3, 0xa0c4, 0xa0c5, 0xa0c6, 0xa0c7, /* 0xa0c0 */
- 0xa0c8, 0xa0c9, 0xa0ca, 0xa0cb, 0xa0cc, 0xa0cd, 0xa0ce, 0xa0cf,
- 0xa0d0, 0xa0d1, 0xa0d2, 0xa0d3, 0xa0d4, 0xa0d5, 0xa0d6, 0xa0d7,
- 0xa0d8, 0xa0d9, 0xa0da, 0xa0db, 0xa0dc, 0xa0dd, 0xa0de, 0xa0df,
- 0xa0e0, 0xa0e1, 0xa0e2, 0xa0e3, 0xa0e4, 0xa0e5, 0xa0e6, 0xa0e7,
- 0xa0e8, 0xa0e9, 0xa0ea, 0xa0eb, 0xa0ec, 0xa0ed, 0xa0ee, 0xa0ef,
- 0xa0f0, 0xa0f1, 0xa0f2, 0xa0f3, 0xa0f4, 0xa0f5, 0xa0f6, 0xa0f7,
- 0xa0f8, 0xa0f9, 0xa0fa, 0xa0fb, 0xa0fc, 0xa0fd, 0xa0fe, 0xa0ff,
- 0xa100, 0xa101, 0xa102, 0xa103, 0xa104, 0xa105, 0xa106, 0xa107, /* 0xa100 */
- 0xa108, 0xa109, 0xa10a, 0xa10b, 0xa10c, 0xa10d, 0xa10e, 0xa10f,
- 0xa110, 0xa111, 0xa112, 0xa113, 0xa114, 0xa115, 0xa116, 0xa117,
- 0xa118, 0xa119, 0xa11a, 0xa11b, 0xa11c, 0xa11d, 0xa11e, 0xa11f,
- 0xa120, 0xa121, 0xa122, 0xa123, 0xa124, 0xa125, 0xa126, 0xa127,
- 0xa128, 0xa129, 0xa12a, 0xa12b, 0xa12c, 0xa12d, 0xa12e, 0xa12f,
- 0xa130, 0xa131, 0xa132, 0xa133, 0xa134, 0xa135, 0xa136, 0xa137,
- 0xa138, 0xa139, 0xa13a, 0xa13b, 0xa13c, 0xa13d, 0xa13e, 0xa13f,
- 0xa140, 0xa141, 0xa142, 0xa143, 0xa144, 0xa145, 0xa146, 0xa147, /* 0xa140 */
- 0xa148, 0xa149, 0xa14a, 0xa14b, 0xa14c, 0xa14d, 0xa14e, 0xa14f,
- 0xa150, 0xa151, 0xa152, 0xa153, 0xa154, 0xa155, 0xa156, 0xa157,
- 0xa158, 0xa159, 0xa15a, 0xa15b, 0xa15c, 0xa15d, 0xa15e, 0xa15f,
- 0xa160, 0xa161, 0xa162, 0xa163, 0xa164, 0xa165, 0xa166, 0xa167,
- 0xa168, 0xa169, 0xa16a, 0xa16b, 0xa16c, 0xa16d, 0xa16e, 0xa16f,
- 0xa170, 0xa171, 0xa172, 0xa173, 0xa174, 0xa175, 0xa176, 0xa177,
- 0xa178, 0xa179, 0xa17a, 0xa17b, 0xa17c, 0xa17d, 0xa17e, 0xa17f,
- 0xa180, 0xa181, 0xa182, 0xa183, 0xa184, 0xa185, 0xa186, 0xa187, /* 0xa180 */
- 0xa188, 0xa189, 0xa18a, 0xa18b, 0xa18c, 0xa18d, 0xa18e, 0xa18f,
- 0xa190, 0xa191, 0xa192, 0xa193, 0xa194, 0xa195, 0xa196, 0xa197,
- 0xa198, 0xa199, 0xa19a, 0xa19b, 0xa19c, 0xa19d, 0xa19e, 0xa19f,
- 0xa1a0, 0xa1a1, 0xa1a2, 0xa1a3, 0xa1a4, 0xa1a5, 0xa1a6, 0xa1a7,
- 0xa1a8, 0xa1a9, 0xa1aa, 0xa1ab, 0xa1ac, 0xa1ad, 0xa1ae, 0xa1af,
- 0xa1b0, 0xa1b1, 0xa1b2, 0xa1b3, 0xa1b4, 0xa1b5, 0xa1b6, 0xa1b7,
- 0xa1b8, 0xa1b9, 0xa1ba, 0xa1bb, 0xa1bc, 0xa1bd, 0xa1be, 0xa1bf,
- 0xa1c0, 0xa1c1, 0xa1c2, 0xa1c3, 0xa1c4, 0xa1c5, 0xa1c6, 0xa1c7, /* 0xa1c0 */
- 0xa1c8, 0xa1c9, 0xa1ca, 0xa1cb, 0xa1cc, 0xa1cd, 0xa1ce, 0xa1cf,
- 0xa1d0, 0xa1d1, 0xa1d2, 0xa1d3, 0xa1d4, 0xa1d5, 0xa1d6, 0xa1d7,
- 0xa1d8, 0xa1d9, 0xa1da, 0xa1db, 0xa1dc, 0xa1dd, 0xa1de, 0xa1df,
- 0xa1e0, 0xa1e1, 0xa1e2, 0xa1e3, 0xa1e4, 0xa1e5, 0xa1e6, 0xa1e7,
- 0xa1e8, 0xa1e9, 0xa1ea, 0xa1eb, 0xa1ec, 0xa1ed, 0xa1ee, 0xa1ef,
- 0xa1f0, 0xa1f1, 0xa1f2, 0xa1f3, 0xa1f4, 0xa1f5, 0xa1f6, 0xa1f7,
- 0xa1f8, 0xa1f9, 0xa1fa, 0xa1fb, 0xa1fc, 0xa1fd, 0xa1fe, 0xa1ff,
- 0xa200, 0xa201, 0xa202, 0xa203, 0xa204, 0xa205, 0xa206, 0xa207, /* 0xa200 */
- 0xa208, 0xa209, 0xa20a, 0xa20b, 0xa20c, 0xa20d, 0xa20e, 0xa20f,
- 0xa210, 0xa211, 0xa212, 0xa213, 0xa214, 0xa215, 0xa216, 0xa217,
- 0xa218, 0xa219, 0xa21a, 0xa21b, 0xa21c, 0xa21d, 0xa21e, 0xa21f,
- 0xa220, 0xa221, 0xa222, 0xa223, 0xa224, 0xa225, 0xa226, 0xa227,
- 0xa228, 0xa229, 0xa22a, 0xa22b, 0xa22c, 0xa22d, 0xa22e, 0xa22f,
- 0xa230, 0xa231, 0xa232, 0xa233, 0xa234, 0xa235, 0xa236, 0xa237,
- 0xa238, 0xa239, 0xa23a, 0xa23b, 0xa23c, 0xa23d, 0xa23e, 0xa23f,
- 0xa240, 0xa241, 0xa242, 0xa243, 0xa244, 0xa245, 0xa246, 0xa247, /* 0xa240 */
- 0xa248, 0xa249, 0xa24a, 0xa24b, 0xa24c, 0xa24d, 0xa24e, 0xa24f,
- 0xa250, 0xa251, 0xa252, 0xa253, 0xa254, 0xa255, 0xa256, 0xa257,
- 0xa258, 0xa259, 0xa25a, 0xa25b, 0xa25c, 0xa25d, 0xa25e, 0xa25f,
- 0xa260, 0xa261, 0xa262, 0xa263, 0xa264, 0xa265, 0xa266, 0xa267,
- 0xa268, 0xa269, 0xa26a, 0xa26b, 0xa26c, 0xa26d, 0xa26e, 0xa26f,
- 0xa270, 0xa271, 0xa272, 0xa273, 0xa274, 0xa275, 0xa276, 0xa277,
- 0xa278, 0xa279, 0xa27a, 0xa27b, 0xa27c, 0xa27d, 0xa27e, 0xa27f,
- 0xa280, 0xa281, 0xa282, 0xa283, 0xa284, 0xa285, 0xa286, 0xa287, /* 0xa280 */
- 0xa288, 0xa289, 0xa28a, 0xa28b, 0xa28c, 0xa28d, 0xa28e, 0xa28f,
- 0xa290, 0xa291, 0xa292, 0xa293, 0xa294, 0xa295, 0xa296, 0xa297,
- 0xa298, 0xa299, 0xa29a, 0xa29b, 0xa29c, 0xa29d, 0xa29e, 0xa29f,
- 0xa2a0, 0xa2a1, 0xa2a2, 0xa2a3, 0xa2a4, 0xa2a5, 0xa2a6, 0xa2a7,
- 0xa2a8, 0xa2a9, 0xa2aa, 0xa2ab, 0xa2ac, 0xa2ad, 0xa2ae, 0xa2af,
- 0xa2b0, 0xa2b1, 0xa2b2, 0xa2b3, 0xa2b4, 0xa2b5, 0xa2b6, 0xa2b7,
- 0xa2b8, 0xa2b9, 0xa2ba, 0xa2bb, 0xa2bc, 0xa2bd, 0xa2be, 0xa2bf,
- 0xa2c0, 0xa2c1, 0xa2c2, 0xa2c3, 0xa2c4, 0xa2c5, 0xa2c6, 0xa2c7, /* 0xa2c0 */
- 0xa2c8, 0xa2c9, 0xa2ca, 0xa2cb, 0xa2cc, 0xa2cd, 0xa2ce, 0xa2cf,
- 0xa2d0, 0xa2d1, 0xa2d2, 0xa2d3, 0xa2d4, 0xa2d5, 0xa2d6, 0xa2d7,
- 0xa2d8, 0xa2d9, 0xa2da, 0xa2db, 0xa2dc, 0xa2dd, 0xa2de, 0xa2df,
- 0xa2e0, 0xa2e1, 0xa2e2, 0xa2e3, 0xa2e4, 0xa2e5, 0xa2e6, 0xa2e7,
- 0xa2e8, 0xa2e9, 0xa2ea, 0xa2eb, 0xa2ec, 0xa2ed, 0xa2ee, 0xa2ef,
- 0xa2f0, 0xa2f1, 0xa2f2, 0xa2f3, 0xa2f4, 0xa2f5, 0xa2f6, 0xa2f7,
- 0xa2f8, 0xa2f9, 0xa2fa, 0xa2fb, 0xa2fc, 0xa2fd, 0xa2fe, 0xa2ff,
- 0xa300, 0xa301, 0xa302, 0xa303, 0xa304, 0xa305, 0xa306, 0xa307, /* 0xa300 */
- 0xa308, 0xa309, 0xa30a, 0xa30b, 0xa30c, 0xa30d, 0xa30e, 0xa30f,
- 0xa310, 0xa311, 0xa312, 0xa313, 0xa314, 0xa315, 0xa316, 0xa317,
- 0xa318, 0xa319, 0xa31a, 0xa31b, 0xa31c, 0xa31d, 0xa31e, 0xa31f,
- 0xa320, 0xa321, 0xa322, 0xa323, 0xa324, 0xa325, 0xa326, 0xa327,
- 0xa328, 0xa329, 0xa32a, 0xa32b, 0xa32c, 0xa32d, 0xa32e, 0xa32f,
- 0xa330, 0xa331, 0xa332, 0xa333, 0xa334, 0xa335, 0xa336, 0xa337,
- 0xa338, 0xa339, 0xa33a, 0xa33b, 0xa33c, 0xa33d, 0xa33e, 0xa33f,
- 0xa340, 0xa341, 0xa342, 0xa343, 0xa344, 0xa345, 0xa346, 0xa347, /* 0xa340 */
- 0xa348, 0xa349, 0xa34a, 0xa34b, 0xa34c, 0xa34d, 0xa34e, 0xa34f,
- 0xa350, 0xa351, 0xa352, 0xa353, 0xa354, 0xa355, 0xa356, 0xa357,
- 0xa358, 0xa359, 0xa35a, 0xa35b, 0xa35c, 0xa35d, 0xa35e, 0xa35f,
- 0xa360, 0xa361, 0xa362, 0xa363, 0xa364, 0xa365, 0xa366, 0xa367,
- 0xa368, 0xa369, 0xa36a, 0xa36b, 0xa36c, 0xa36d, 0xa36e, 0xa36f,
- 0xa370, 0xa371, 0xa372, 0xa373, 0xa374, 0xa375, 0xa376, 0xa377,
- 0xa378, 0xa379, 0xa37a, 0xa37b, 0xa37c, 0xa37d, 0xa37e, 0xa37f,
- 0xa380, 0xa381, 0xa382, 0xa383, 0xa384, 0xa385, 0xa386, 0xa387, /* 0xa380 */
- 0xa388, 0xa389, 0xa38a, 0xa38b, 0xa38c, 0xa38d, 0xa38e, 0xa38f,
- 0xa390, 0xa391, 0xa392, 0xa393, 0xa394, 0xa395, 0xa396, 0xa397,
- 0xa398, 0xa399, 0xa39a, 0xa39b, 0xa39c, 0xa39d, 0xa39e, 0xa39f,
- 0xa3a0, 0xa3a1, 0xa3a2, 0xa3a3, 0xa3a4, 0xa3a5, 0xa3a6, 0xa3a7,
- 0xa3a8, 0xa3a9, 0xa3aa, 0xa3ab, 0xa3ac, 0xa3ad, 0xa3ae, 0xa3af,
- 0xa3b0, 0xa3b1, 0xa3b2, 0xa3b3, 0xa3b4, 0xa3b5, 0xa3b6, 0xa3b7,
- 0xa3b8, 0xa3b9, 0xa3ba, 0xa3bb, 0xa3bc, 0xa3bd, 0xa3be, 0xa3bf,
- 0xa3c0, 0xa3c1, 0xa3c2, 0xa3c3, 0xa3c4, 0xa3c5, 0xa3c6, 0xa3c7, /* 0xa3c0 */
- 0xa3c8, 0xa3c9, 0xa3ca, 0xa3cb, 0xa3cc, 0xa3cd, 0xa3ce, 0xa3cf,
- 0xa3d0, 0xa3d1, 0xa3d2, 0xa3d3, 0xa3d4, 0xa3d5, 0xa3d6, 0xa3d7,
- 0xa3d8, 0xa3d9, 0xa3da, 0xa3db, 0xa3dc, 0xa3dd, 0xa3de, 0xa3df,
- 0xa3e0, 0xa3e1, 0xa3e2, 0xa3e3, 0xa3e4, 0xa3e5, 0xa3e6, 0xa3e7,
- 0xa3e8, 0xa3e9, 0xa3ea, 0xa3eb, 0xa3ec, 0xa3ed, 0xa3ee, 0xa3ef,
- 0xa3f0, 0xa3f1, 0xa3f2, 0xa3f3, 0xa3f4, 0xa3f5, 0xa3f6, 0xa3f7,
- 0xa3f8, 0xa3f9, 0xa3fa, 0xa3fb, 0xa3fc, 0xa3fd, 0xa3fe, 0xa3ff,
- 0xa400, 0xa401, 0xa402, 0xa403, 0xa404, 0xa405, 0xa406, 0xa407, /* 0xa400 */
- 0xa408, 0xa409, 0xa40a, 0xa40b, 0xa40c, 0xa40d, 0xa40e, 0xa40f,
- 0xa410, 0xa411, 0xa412, 0xa413, 0xa414, 0xa415, 0xa416, 0xa417,
- 0xa418, 0xa419, 0xa41a, 0xa41b, 0xa41c, 0xa41d, 0xa41e, 0xa41f,
- 0xa420, 0xa421, 0xa422, 0xa423, 0xa424, 0xa425, 0xa426, 0xa427,
- 0xa428, 0xa429, 0xa42a, 0xa42b, 0xa42c, 0xa42d, 0xa42e, 0xa42f,
- 0xa430, 0xa431, 0xa432, 0xa433, 0xa434, 0xa435, 0xa436, 0xa437,
- 0xa438, 0xa439, 0xa43a, 0xa43b, 0xa43c, 0xa43d, 0xa43e, 0xa43f,
- 0xa440, 0xa441, 0xa442, 0xa443, 0xa444, 0xa445, 0xa446, 0xa447, /* 0xa440 */
- 0xa448, 0xa449, 0xa44a, 0xa44b, 0xa44c, 0xa44d, 0xa44e, 0xa44f,
- 0xa450, 0xa451, 0xa452, 0xa453, 0xa454, 0xa455, 0xa456, 0xa457,
- 0xa458, 0xa459, 0xa45a, 0xa45b, 0xa45c, 0xa45d, 0xa45e, 0xa45f,
- 0xa460, 0xa461, 0xa462, 0xa463, 0xa464, 0xa465, 0xa466, 0xa467,
- 0xa468, 0xa469, 0xa46a, 0xa46b, 0xa46c, 0xa46d, 0xa46e, 0xa46f,
- 0xa470, 0xa471, 0xa472, 0xa473, 0xa474, 0xa475, 0xa476, 0xa477,
- 0xa478, 0xa479, 0xa47a, 0xa47b, 0xa47c, 0xa47d, 0xa47e, 0xa47f,
- 0xa480, 0xa481, 0xa482, 0xa483, 0xa484, 0xa485, 0xa486, 0xa487, /* 0xa480 */
- 0xa488, 0xa489, 0xa48a, 0xa48b, 0xa48c, 0x0000, 0x0000, 0x0000,
- 0xa490, 0xa491, 0xa492, 0xa493, 0xa494, 0xa495, 0xa496, 0xa497,
- 0xa498, 0xa499, 0xa49a, 0xa49b, 0xa49c, 0xa49d, 0xa49e, 0xa49f,
- 0xa4a0, 0xa4a1, 0xa4a2, 0xa4a3, 0xa4a4, 0xa4a5, 0xa4a6, 0xa4a7,
- 0xa4a8, 0xa4a9, 0xa4aa, 0xa4ab, 0xa4ac, 0xa4ad, 0xa4ae, 0xa4af,
- 0xa4b0, 0xa4b1, 0xa4b2, 0xa4b3, 0xa4b4, 0xa4b5, 0xa4b6, 0xa4b7,
- 0xa4b8, 0xa4b9, 0xa4ba, 0xa4bb, 0xa4bc, 0xa4bd, 0xa4be, 0xa4bf,
- 0xa4c0, 0xa4c1, 0xa4c2, 0xa4c3, 0xa4c4, 0xa4c5, 0xa4c6, 0x0000, /* 0xa4c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa4d0, 0xa4d1, 0xa4d2, 0xa4d3, 0xa4d4, 0xa4d5, 0xa4d6, 0xa4d7,
- 0xa4d8, 0xa4d9, 0xa4da, 0xa4db, 0xa4dc, 0xa4dd, 0xa4de, 0xa4df,
- 0xa4e0, 0xa4e1, 0xa4e2, 0xa4e3, 0xa4e4, 0xa4e5, 0xa4e6, 0xa4e7,
- 0xa4e8, 0xa4e9, 0xa4ea, 0xa4eb, 0xa4ec, 0xa4ed, 0xa4ee, 0xa4ef,
- 0xa4f0, 0xa4f1, 0xa4f2, 0xa4f3, 0xa4f4, 0xa4f5, 0xa4f6, 0xa4f7,
- 0xa4f8, 0xa4f9, 0xa4fa, 0xa4fb, 0xa4fc, 0xa4fd, 0xa4fe, 0xa4ff,
- 0xa500, 0xa501, 0xa502, 0xa503, 0xa504, 0xa505, 0xa506, 0xa507, /* 0xa500 */
- 0xa508, 0xa509, 0xa50a, 0xa50b, 0xa50c, 0xa50d, 0xa50e, 0xa50f,
- 0xa510, 0xa511, 0xa512, 0xa513, 0xa514, 0xa515, 0xa516, 0xa517,
- 0xa518, 0xa519, 0xa51a, 0xa51b, 0xa51c, 0xa51d, 0xa51e, 0xa51f,
- 0xa520, 0xa521, 0xa522, 0xa523, 0xa524, 0xa525, 0xa526, 0xa527,
- 0xa528, 0xa529, 0xa52a, 0xa52b, 0xa52c, 0xa52d, 0xa52e, 0xa52f,
- 0xa530, 0xa531, 0xa532, 0xa533, 0xa534, 0xa535, 0xa536, 0xa537,
- 0xa538, 0xa539, 0xa53a, 0xa53b, 0xa53c, 0xa53d, 0xa53e, 0xa53f,
- 0xa540, 0xa541, 0xa542, 0xa543, 0xa544, 0xa545, 0xa546, 0xa547, /* 0xa540 */
- 0xa548, 0xa549, 0xa54a, 0xa54b, 0xa54c, 0xa54d, 0xa54e, 0xa54f,
- 0xa550, 0xa551, 0xa552, 0xa553, 0xa554, 0xa555, 0xa556, 0xa557,
- 0xa558, 0xa559, 0xa55a, 0xa55b, 0xa55c, 0xa55d, 0xa55e, 0xa55f,
- 0xa560, 0xa561, 0xa562, 0xa563, 0xa564, 0xa565, 0xa566, 0xa567,
- 0xa568, 0xa569, 0xa56a, 0xa56b, 0xa56c, 0xa56d, 0xa56e, 0xa56f,
- 0xa570, 0xa571, 0xa572, 0xa573, 0xa574, 0xa575, 0xa576, 0xa577,
- 0xa578, 0xa579, 0xa57a, 0xa57b, 0xa57c, 0xa57d, 0xa57e, 0xa57f,
- 0xa580, 0xa581, 0xa582, 0xa583, 0xa584, 0xa585, 0xa586, 0xa587, /* 0xa580 */
- 0xa588, 0xa589, 0xa58a, 0xa58b, 0xa58c, 0xa58d, 0xa58e, 0xa58f,
- 0xa590, 0xa591, 0xa592, 0xa593, 0xa594, 0xa595, 0xa596, 0xa597,
- 0xa598, 0xa599, 0xa59a, 0xa59b, 0xa59c, 0xa59d, 0xa59e, 0xa59f,
- 0xa5a0, 0xa5a1, 0xa5a2, 0xa5a3, 0xa5a4, 0xa5a5, 0xa5a6, 0xa5a7,
- 0xa5a8, 0xa5a9, 0xa5aa, 0xa5ab, 0xa5ac, 0xa5ad, 0xa5ae, 0xa5af,
- 0xa5b0, 0xa5b1, 0xa5b2, 0xa5b3, 0xa5b4, 0xa5b5, 0xa5b6, 0xa5b7,
- 0xa5b8, 0xa5b9, 0xa5ba, 0xa5bb, 0xa5bc, 0xa5bd, 0xa5be, 0xa5bf,
- 0xa5c0, 0xa5c1, 0xa5c2, 0xa5c3, 0xa5c4, 0xa5c5, 0xa5c6, 0xa5c7, /* 0xa5c0 */
- 0xa5c8, 0xa5c9, 0xa5ca, 0xa5cb, 0xa5cc, 0xa5cd, 0xa5ce, 0xa5cf,
- 0xa5d0, 0xa5d1, 0xa5d2, 0xa5d3, 0xa5d4, 0xa5d5, 0xa5d6, 0xa5d7,
- 0xa5d8, 0xa5d9, 0xa5da, 0xa5db, 0xa5dc, 0xa5dd, 0xa5de, 0xa5df,
- 0xa5e0, 0xa5e1, 0xa5e2, 0xa5e3, 0xa5e4, 0xa5e5, 0xa5e6, 0xa5e7,
- 0xa5e8, 0xa5e9, 0xa5ea, 0xa5eb, 0xa5ec, 0xa5ed, 0xa5ee, 0xa5ef,
- 0xa5f0, 0xa5f1, 0xa5f2, 0xa5f3, 0xa5f4, 0xa5f5, 0xa5f6, 0xa5f7,
- 0xa5f8, 0xa5f9, 0xa5fa, 0xa5fb, 0xa5fc, 0xa5fd, 0xa5fe, 0xa5ff,
- 0xa600, 0xa601, 0xa602, 0xa603, 0xa604, 0xa605, 0xa606, 0xa607, /* 0xa600 */
- 0xa608, 0xa609, 0xa60a, 0xa60b, 0xa60c, 0xa60d, 0xa60e, 0xa60f,
- 0xa610, 0xa611, 0xa612, 0xa613, 0xa614, 0xa615, 0xa616, 0xa617,
- 0xa618, 0xa619, 0xa61a, 0xa61b, 0xa61c, 0xa61d, 0xa61e, 0xa61f,
- 0xa620, 0xa621, 0xa622, 0xa623, 0xa624, 0xa625, 0xa626, 0xa627,
- 0xa628, 0xa629, 0xa62a, 0xa62b, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa641, 0xa641, 0xa643, 0xa643, 0xa645, 0xa645, 0xa647, 0xa647, /* 0xa640 */
- 0xa649, 0xa649, 0xa64b, 0xa64b, 0xa64d, 0xa64d, 0xa64f, 0xa64f,
- 0xa651, 0xa651, 0xa653, 0xa653, 0xa655, 0xa655, 0xa657, 0xa657,
- 0xa659, 0xa659, 0xa65b, 0xa65b, 0xa65d, 0xa65d, 0xa65f, 0xa65f,
- 0xa661, 0xa661, 0xa663, 0xa663, 0xa665, 0xa665, 0xa667, 0xa667,
- 0xa669, 0xa669, 0xa66b, 0xa66b, 0xa66d, 0xa66d, 0xa66e, 0xa66f,
- 0xa670, 0xa671, 0xa672, 0xa673, 0xa674, 0xa675, 0xa676, 0xa677,
- 0xa678, 0xa679, 0xa67a, 0xa67b, 0xa67c, 0xa67d, 0xa67e, 0xa67f,
- 0xa681, 0xa681, 0xa683, 0xa683, 0xa685, 0xa685, 0xa687, 0xa687, /* 0xa680 */
- 0xa689, 0xa689, 0xa68b, 0xa68b, 0xa68d, 0xa68d, 0xa68f, 0xa68f,
- 0xa691, 0xa691, 0xa693, 0xa693, 0xa695, 0xa695, 0xa697, 0xa697,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa69f,
- 0xa6a0, 0xa6a1, 0xa6a2, 0xa6a3, 0xa6a4, 0xa6a5, 0xa6a6, 0xa6a7,
- 0xa6a8, 0xa6a9, 0xa6aa, 0xa6ab, 0xa6ac, 0xa6ad, 0xa6ae, 0xa6af,
- 0xa6b0, 0xa6b1, 0xa6b2, 0xa6b3, 0xa6b4, 0xa6b5, 0xa6b6, 0xa6b7,
- 0xa6b8, 0xa6b9, 0xa6ba, 0xa6bb, 0xa6bc, 0xa6bd, 0xa6be, 0xa6bf,
- 0xa6c0, 0xa6c1, 0xa6c2, 0xa6c3, 0xa6c4, 0xa6c5, 0xa6c6, 0xa6c7, /* 0xa6c0 */
- 0xa6c8, 0xa6c9, 0xa6ca, 0xa6cb, 0xa6cc, 0xa6cd, 0xa6ce, 0xa6cf,
- 0xa6d0, 0xa6d1, 0xa6d2, 0xa6d3, 0xa6d4, 0xa6d5, 0xa6d6, 0xa6d7,
- 0xa6d8, 0xa6d9, 0xa6da, 0xa6db, 0xa6dc, 0xa6dd, 0xa6de, 0xa6df,
- 0xa6e0, 0xa6e1, 0xa6e2, 0xa6e3, 0xa6e4, 0xa6e5, 0xa6e6, 0xa6e7,
- 0xa6e8, 0xa6e9, 0xa6ea, 0xa6eb, 0xa6ec, 0xa6ed, 0xa6ee, 0xa6ef,
- 0xa6f0, 0xa6f1, 0xa6f2, 0xa6f3, 0xa6f4, 0xa6f5, 0xa6f6, 0xa6f7,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa700, 0xa701, 0xa702, 0xa703, 0xa704, 0xa705, 0xa706, 0xa707, /* 0xa700 */
- 0xa708, 0xa709, 0xa70a, 0xa70b, 0xa70c, 0xa70d, 0xa70e, 0xa70f,
- 0xa710, 0xa711, 0xa712, 0xa713, 0xa714, 0xa715, 0xa716, 0xa717,
- 0xa718, 0xa719, 0xa71a, 0xa71b, 0xa71c, 0xa71d, 0xa71e, 0xa71f,
- 0xa720, 0xa721, 0xa723, 0xa723, 0xa725, 0xa725, 0xa727, 0xa727,
- 0xa729, 0xa729, 0xa72b, 0xa72b, 0xa72d, 0xa72d, 0xa72f, 0xa72f,
- 0xa730, 0xa731, 0xa733, 0xa733, 0xa735, 0xa735, 0xa737, 0xa737,
- 0xa739, 0xa739, 0xa73b, 0xa73b, 0xa73d, 0xa73d, 0xa73f, 0xa73f,
- 0xa741, 0xa741, 0xa743, 0xa743, 0xa745, 0xa745, 0xa747, 0xa747, /* 0xa740 */
- 0xa749, 0xa749, 0xa74b, 0xa74b, 0xa74d, 0xa74d, 0xa74f, 0xa74f,
- 0xa751, 0xa751, 0xa753, 0xa753, 0xa755, 0xa755, 0xa757, 0xa757,
- 0xa759, 0xa759, 0xa75b, 0xa75b, 0xa75d, 0xa75d, 0xa75f, 0xa75f,
- 0xa761, 0xa761, 0xa763, 0xa763, 0xa765, 0xa765, 0xa767, 0xa767,
- 0xa769, 0xa769, 0xa76b, 0xa76b, 0xa76d, 0xa76d, 0xa76f, 0xa76f,
- 0xa770, 0xa771, 0xa772, 0xa773, 0xa774, 0xa775, 0xa776, 0xa777,
- 0xa778, 0xa77a, 0xa77a, 0xa77c, 0xa77c, 0x1d79, 0xa77f, 0xa77f,
- 0xa781, 0xa781, 0xa783, 0xa783, 0xa785, 0xa785, 0xa787, 0xa787, /* 0xa780 */
- 0xa788, 0xa789, 0xa78a, 0xa78c, 0xa78c, 0x0265, 0xa78e, 0x0000,
- 0xa791, 0xa791, 0xa793, 0xa793, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa7a1, 0xa7a1, 0xa7a3, 0xa7a3, 0xa7a5, 0xa7a5, 0xa7a7, 0xa7a7,
- 0xa7a9, 0xa7a9, 0x0266, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa7c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa7f8, 0xa7f9, 0xa7fa, 0xa7fb, 0xa7fc, 0xa7fd, 0xa7fe, 0xa7ff,
- 0xa800, 0xa801, 0xa802, 0xa803, 0xa804, 0xa805, 0xa806, 0xa807, /* 0xa800 */
- 0xa808, 0xa809, 0xa80a, 0xa80b, 0xa80c, 0xa80d, 0xa80e, 0xa80f,
- 0xa810, 0xa811, 0xa812, 0xa813, 0xa814, 0xa815, 0xa816, 0xa817,
- 0xa818, 0xa819, 0xa81a, 0xa81b, 0xa81c, 0xa81d, 0xa81e, 0xa81f,
- 0xa820, 0xa821, 0xa822, 0xa823, 0xa824, 0xa825, 0xa826, 0xa827,
- 0xa828, 0xa829, 0xa82a, 0xa82b, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa830, 0xa831, 0xa832, 0xa833, 0xa834, 0xa835, 0xa836, 0xa837,
- 0xa838, 0xa839, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa840, 0xa841, 0xa842, 0xa843, 0xa844, 0xa845, 0xa846, 0xa847, /* 0xa840 */
- 0xa848, 0xa849, 0xa84a, 0xa84b, 0xa84c, 0xa84d, 0xa84e, 0xa84f,
- 0xa850, 0xa851, 0xa852, 0xa853, 0xa854, 0xa855, 0xa856, 0xa857,
- 0xa858, 0xa859, 0xa85a, 0xa85b, 0xa85c, 0xa85d, 0xa85e, 0xa85f,
- 0xa860, 0xa861, 0xa862, 0xa863, 0xa864, 0xa865, 0xa866, 0xa867,
- 0xa868, 0xa869, 0xa86a, 0xa86b, 0xa86c, 0xa86d, 0xa86e, 0xa86f,
- 0xa870, 0xa871, 0xa872, 0xa873, 0xa874, 0xa875, 0xa876, 0xa877,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa880, 0xa881, 0xa882, 0xa883, 0xa884, 0xa885, 0xa886, 0xa887, /* 0xa880 */
- 0xa888, 0xa889, 0xa88a, 0xa88b, 0xa88c, 0xa88d, 0xa88e, 0xa88f,
- 0xa890, 0xa891, 0xa892, 0xa893, 0xa894, 0xa895, 0xa896, 0xa897,
- 0xa898, 0xa899, 0xa89a, 0xa89b, 0xa89c, 0xa89d, 0xa89e, 0xa89f,
- 0xa8a0, 0xa8a1, 0xa8a2, 0xa8a3, 0xa8a4, 0xa8a5, 0xa8a6, 0xa8a7,
- 0xa8a8, 0xa8a9, 0xa8aa, 0xa8ab, 0xa8ac, 0xa8ad, 0xa8ae, 0xa8af,
- 0xa8b0, 0xa8b1, 0xa8b2, 0xa8b3, 0xa8b4, 0xa8b5, 0xa8b6, 0xa8b7,
- 0xa8b8, 0xa8b9, 0xa8ba, 0xa8bb, 0xa8bc, 0xa8bd, 0xa8be, 0xa8bf,
- 0xa8c0, 0xa8c1, 0xa8c2, 0xa8c3, 0xa8c4, 0x0000, 0x0000, 0x0000, /* 0xa8c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa8ce, 0xa8cf,
- 0xa8d0, 0xa8d1, 0xa8d2, 0xa8d3, 0xa8d4, 0xa8d5, 0xa8d6, 0xa8d7,
- 0xa8d8, 0xa8d9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa8e0, 0xa8e1, 0xa8e2, 0xa8e3, 0xa8e4, 0xa8e5, 0xa8e6, 0xa8e7,
- 0xa8e8, 0xa8e9, 0xa8ea, 0xa8eb, 0xa8ec, 0xa8ed, 0xa8ee, 0xa8ef,
- 0xa8f0, 0xa8f1, 0xa8f2, 0xa8f3, 0xa8f4, 0xa8f5, 0xa8f6, 0xa8f7,
- 0xa8f8, 0xa8f9, 0xa8fa, 0xa8fb, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xa900, 0xa901, 0xa902, 0xa903, 0xa904, 0xa905, 0xa906, 0xa907, /* 0xa900 */
- 0xa908, 0xa909, 0xa90a, 0xa90b, 0xa90c, 0xa90d, 0xa90e, 0xa90f,
- 0xa910, 0xa911, 0xa912, 0xa913, 0xa914, 0xa915, 0xa916, 0xa917,
- 0xa918, 0xa919, 0xa91a, 0xa91b, 0xa91c, 0xa91d, 0xa91e, 0xa91f,
- 0xa920, 0xa921, 0xa922, 0xa923, 0xa924, 0xa925, 0xa926, 0xa927,
- 0xa928, 0xa929, 0xa92a, 0xa92b, 0xa92c, 0xa92d, 0xa92e, 0xa92f,
- 0xa930, 0xa931, 0xa932, 0xa933, 0xa934, 0xa935, 0xa936, 0xa937,
- 0xa938, 0xa939, 0xa93a, 0xa93b, 0xa93c, 0xa93d, 0xa93e, 0xa93f,
- 0xa940, 0xa941, 0xa942, 0xa943, 0xa944, 0xa945, 0xa946, 0xa947, /* 0xa940 */
- 0xa948, 0xa949, 0xa94a, 0xa94b, 0xa94c, 0xa94d, 0xa94e, 0xa94f,
- 0xa950, 0xa951, 0xa952, 0xa953, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa95f,
- 0xa960, 0xa961, 0xa962, 0xa963, 0xa964, 0xa965, 0xa966, 0xa967,
- 0xa968, 0xa969, 0xa96a, 0xa96b, 0xa96c, 0xa96d, 0xa96e, 0xa96f,
- 0xa970, 0xa971, 0xa972, 0xa973, 0xa974, 0xa975, 0xa976, 0xa977,
- 0xa978, 0xa979, 0xa97a, 0xa97b, 0xa97c, 0x0000, 0x0000, 0x0000,
- 0xa980, 0xa981, 0xa982, 0xa983, 0xa984, 0xa985, 0xa986, 0xa987, /* 0xa980 */
- 0xa988, 0xa989, 0xa98a, 0xa98b, 0xa98c, 0xa98d, 0xa98e, 0xa98f,
- 0xa990, 0xa991, 0xa992, 0xa993, 0xa994, 0xa995, 0xa996, 0xa997,
- 0xa998, 0xa999, 0xa99a, 0xa99b, 0xa99c, 0xa99d, 0xa99e, 0xa99f,
- 0xa9a0, 0xa9a1, 0xa9a2, 0xa9a3, 0xa9a4, 0xa9a5, 0xa9a6, 0xa9a7,
- 0xa9a8, 0xa9a9, 0xa9aa, 0xa9ab, 0xa9ac, 0xa9ad, 0xa9ae, 0xa9af,
- 0xa9b0, 0xa9b1, 0xa9b2, 0xa9b3, 0xa9b4, 0xa9b5, 0xa9b6, 0xa9b7,
- 0xa9b8, 0xa9b9, 0xa9ba, 0xa9bb, 0xa9bc, 0xa9bd, 0xa9be, 0xa9bf,
- 0xa9c0, 0xa9c1, 0xa9c2, 0xa9c3, 0xa9c4, 0xa9c5, 0xa9c6, 0xa9c7, /* 0xa9c0 */
- 0xa9c8, 0xa9c9, 0xa9ca, 0xa9cb, 0xa9cc, 0xa9cd, 0x0000, 0xa9cf,
- 0xa9d0, 0xa9d1, 0xa9d2, 0xa9d3, 0xa9d4, 0xa9d5, 0xa9d6, 0xa9d7,
- 0xa9d8, 0xa9d9, 0x0000, 0x0000, 0x0000, 0x0000, 0xa9de, 0xa9df,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xaa00, 0xaa01, 0xaa02, 0xaa03, 0xaa04, 0xaa05, 0xaa06, 0xaa07, /* 0xaa00 */
- 0xaa08, 0xaa09, 0xaa0a, 0xaa0b, 0xaa0c, 0xaa0d, 0xaa0e, 0xaa0f,
- 0xaa10, 0xaa11, 0xaa12, 0xaa13, 0xaa14, 0xaa15, 0xaa16, 0xaa17,
- 0xaa18, 0xaa19, 0xaa1a, 0xaa1b, 0xaa1c, 0xaa1d, 0xaa1e, 0xaa1f,
- 0xaa20, 0xaa21, 0xaa22, 0xaa23, 0xaa24, 0xaa25, 0xaa26, 0xaa27,
- 0xaa28, 0xaa29, 0xaa2a, 0xaa2b, 0xaa2c, 0xaa2d, 0xaa2e, 0xaa2f,
- 0xaa30, 0xaa31, 0xaa32, 0xaa33, 0xaa34, 0xaa35, 0xaa36, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xaa40, 0xaa41, 0xaa42, 0xaa43, 0xaa44, 0xaa45, 0xaa46, 0xaa47, /* 0xaa40 */
- 0xaa48, 0xaa49, 0xaa4a, 0xaa4b, 0xaa4c, 0xaa4d, 0x0000, 0x0000,
- 0xaa50, 0xaa51, 0xaa52, 0xaa53, 0xaa54, 0xaa55, 0xaa56, 0xaa57,
- 0xaa58, 0xaa59, 0x0000, 0x0000, 0xaa5c, 0xaa5d, 0xaa5e, 0xaa5f,
- 0xaa60, 0xaa61, 0xaa62, 0xaa63, 0xaa64, 0xaa65, 0xaa66, 0xaa67,
- 0xaa68, 0xaa69, 0xaa6a, 0xaa6b, 0xaa6c, 0xaa6d, 0xaa6e, 0xaa6f,
- 0xaa70, 0xaa71, 0xaa72, 0xaa73, 0xaa74, 0xaa75, 0xaa76, 0xaa77,
- 0xaa78, 0xaa79, 0xaa7a, 0xaa7b, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xaa80, 0xaa81, 0xaa82, 0xaa83, 0xaa84, 0xaa85, 0xaa86, 0xaa87, /* 0xaa80 */
- 0xaa88, 0xaa89, 0xaa8a, 0xaa8b, 0xaa8c, 0xaa8d, 0xaa8e, 0xaa8f,
- 0xaa90, 0xaa91, 0xaa92, 0xaa93, 0xaa94, 0xaa95, 0xaa96, 0xaa97,
- 0xaa98, 0xaa99, 0xaa9a, 0xaa9b, 0xaa9c, 0xaa9d, 0xaa9e, 0xaa9f,
- 0xaaa0, 0xaaa1, 0xaaa2, 0xaaa3, 0xaaa4, 0xaaa5, 0xaaa6, 0xaaa7,
- 0xaaa8, 0xaaa9, 0xaaaa, 0xaaab, 0xaaac, 0xaaad, 0xaaae, 0xaaaf,
- 0xaab0, 0xaab1, 0xaab2, 0xaab3, 0xaab4, 0xaab5, 0xaab6, 0xaab7,
- 0xaab8, 0xaab9, 0xaaba, 0xaabb, 0xaabc, 0xaabd, 0xaabe, 0xaabf,
- 0xaac0, 0xaac1, 0xaac2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xaac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0xaadb, 0xaadc, 0xaadd, 0xaade, 0xaadf,
- 0xaae0, 0xaae1, 0xaae2, 0xaae3, 0xaae4, 0xaae5, 0xaae6, 0xaae7,
- 0xaae8, 0xaae9, 0xaaea, 0xaaeb, 0xaaec, 0xaaed, 0xaaee, 0xaaef,
- 0xaaf0, 0xaaf1, 0xaaf2, 0xaaf3, 0xaaf4, 0xaaf5, 0xaaf6, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xab01, 0xab02, 0xab03, 0xab04, 0xab05, 0xab06, 0x0000, /* 0xab00 */
- 0x0000, 0xab09, 0xab0a, 0xab0b, 0xab0c, 0xab0d, 0xab0e, 0x0000,
- 0x0000, 0xab11, 0xab12, 0xab13, 0xab14, 0xab15, 0xab16, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xab20, 0xab21, 0xab22, 0xab23, 0xab24, 0xab25, 0xab26, 0x0000,
- 0xab28, 0xab29, 0xab2a, 0xab2b, 0xab2c, 0xab2d, 0xab2e, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xab40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xab80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xabc0, 0xabc1, 0xabc2, 0xabc3, 0xabc4, 0xabc5, 0xabc6, 0xabc7, /* 0xabc0 */
- 0xabc8, 0xabc9, 0xabca, 0xabcb, 0xabcc, 0xabcd, 0xabce, 0xabcf,
- 0xabd0, 0xabd1, 0xabd2, 0xabd3, 0xabd4, 0xabd5, 0xabd6, 0xabd7,
- 0xabd8, 0xabd9, 0xabda, 0xabdb, 0xabdc, 0xabdd, 0xabde, 0xabdf,
- 0xabe0, 0xabe1, 0xabe2, 0xabe3, 0xabe4, 0xabe5, 0xabe6, 0xabe7,
- 0xabe8, 0xabe9, 0xabea, 0xabeb, 0xabec, 0xabed, 0x0000, 0x0000,
- 0xabf0, 0xabf1, 0xabf2, 0xabf3, 0xabf4, 0xabf5, 0xabf6, 0xabf7,
- 0xabf8, 0xabf9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xac00, 0xac01, 0xac02, 0xac03, 0xac04, 0xac05, 0xac06, 0xac07, /* 0xac00 */
- 0xac08, 0xac09, 0xac0a, 0xac0b, 0xac0c, 0xac0d, 0xac0e, 0xac0f,
- 0xac10, 0xac11, 0xac12, 0xac13, 0xac14, 0xac15, 0xac16, 0xac17,
- 0xac18, 0xac19, 0xac1a, 0xac1b, 0xac1c, 0xac1d, 0xac1e, 0xac1f,
- 0xac20, 0xac21, 0xac22, 0xac23, 0xac24, 0xac25, 0xac26, 0xac27,
- 0xac28, 0xac29, 0xac2a, 0xac2b, 0xac2c, 0xac2d, 0xac2e, 0xac2f,
- 0xac30, 0xac31, 0xac32, 0xac33, 0xac34, 0xac35, 0xac36, 0xac37,
- 0xac38, 0xac39, 0xac3a, 0xac3b, 0xac3c, 0xac3d, 0xac3e, 0xac3f,
- 0xac40, 0xac41, 0xac42, 0xac43, 0xac44, 0xac45, 0xac46, 0xac47, /* 0xac40 */
- 0xac48, 0xac49, 0xac4a, 0xac4b, 0xac4c, 0xac4d, 0xac4e, 0xac4f,
- 0xac50, 0xac51, 0xac52, 0xac53, 0xac54, 0xac55, 0xac56, 0xac57,
- 0xac58, 0xac59, 0xac5a, 0xac5b, 0xac5c, 0xac5d, 0xac5e, 0xac5f,
- 0xac60, 0xac61, 0xac62, 0xac63, 0xac64, 0xac65, 0xac66, 0xac67,
- 0xac68, 0xac69, 0xac6a, 0xac6b, 0xac6c, 0xac6d, 0xac6e, 0xac6f,
- 0xac70, 0xac71, 0xac72, 0xac73, 0xac74, 0xac75, 0xac76, 0xac77,
- 0xac78, 0xac79, 0xac7a, 0xac7b, 0xac7c, 0xac7d, 0xac7e, 0xac7f,
- 0xac80, 0xac81, 0xac82, 0xac83, 0xac84, 0xac85, 0xac86, 0xac87, /* 0xac80 */
- 0xac88, 0xac89, 0xac8a, 0xac8b, 0xac8c, 0xac8d, 0xac8e, 0xac8f,
- 0xac90, 0xac91, 0xac92, 0xac93, 0xac94, 0xac95, 0xac96, 0xac97,
- 0xac98, 0xac99, 0xac9a, 0xac9b, 0xac9c, 0xac9d, 0xac9e, 0xac9f,
- 0xaca0, 0xaca1, 0xaca2, 0xaca3, 0xaca4, 0xaca5, 0xaca6, 0xaca7,
- 0xaca8, 0xaca9, 0xacaa, 0xacab, 0xacac, 0xacad, 0xacae, 0xacaf,
- 0xacb0, 0xacb1, 0xacb2, 0xacb3, 0xacb4, 0xacb5, 0xacb6, 0xacb7,
- 0xacb8, 0xacb9, 0xacba, 0xacbb, 0xacbc, 0xacbd, 0xacbe, 0xacbf,
- 0xacc0, 0xacc1, 0xacc2, 0xacc3, 0xacc4, 0xacc5, 0xacc6, 0xacc7, /* 0xacc0 */
- 0xacc8, 0xacc9, 0xacca, 0xaccb, 0xaccc, 0xaccd, 0xacce, 0xaccf,
- 0xacd0, 0xacd1, 0xacd2, 0xacd3, 0xacd4, 0xacd5, 0xacd6, 0xacd7,
- 0xacd8, 0xacd9, 0xacda, 0xacdb, 0xacdc, 0xacdd, 0xacde, 0xacdf,
- 0xace0, 0xace1, 0xace2, 0xace3, 0xace4, 0xace5, 0xace6, 0xace7,
- 0xace8, 0xace9, 0xacea, 0xaceb, 0xacec, 0xaced, 0xacee, 0xacef,
- 0xacf0, 0xacf1, 0xacf2, 0xacf3, 0xacf4, 0xacf5, 0xacf6, 0xacf7,
- 0xacf8, 0xacf9, 0xacfa, 0xacfb, 0xacfc, 0xacfd, 0xacfe, 0xacff,
- 0xad00, 0xad01, 0xad02, 0xad03, 0xad04, 0xad05, 0xad06, 0xad07, /* 0xad00 */
- 0xad08, 0xad09, 0xad0a, 0xad0b, 0xad0c, 0xad0d, 0xad0e, 0xad0f,
- 0xad10, 0xad11, 0xad12, 0xad13, 0xad14, 0xad15, 0xad16, 0xad17,
- 0xad18, 0xad19, 0xad1a, 0xad1b, 0xad1c, 0xad1d, 0xad1e, 0xad1f,
- 0xad20, 0xad21, 0xad22, 0xad23, 0xad24, 0xad25, 0xad26, 0xad27,
- 0xad28, 0xad29, 0xad2a, 0xad2b, 0xad2c, 0xad2d, 0xad2e, 0xad2f,
- 0xad30, 0xad31, 0xad32, 0xad33, 0xad34, 0xad35, 0xad36, 0xad37,
- 0xad38, 0xad39, 0xad3a, 0xad3b, 0xad3c, 0xad3d, 0xad3e, 0xad3f,
- 0xad40, 0xad41, 0xad42, 0xad43, 0xad44, 0xad45, 0xad46, 0xad47, /* 0xad40 */
- 0xad48, 0xad49, 0xad4a, 0xad4b, 0xad4c, 0xad4d, 0xad4e, 0xad4f,
- 0xad50, 0xad51, 0xad52, 0xad53, 0xad54, 0xad55, 0xad56, 0xad57,
- 0xad58, 0xad59, 0xad5a, 0xad5b, 0xad5c, 0xad5d, 0xad5e, 0xad5f,
- 0xad60, 0xad61, 0xad62, 0xad63, 0xad64, 0xad65, 0xad66, 0xad67,
- 0xad68, 0xad69, 0xad6a, 0xad6b, 0xad6c, 0xad6d, 0xad6e, 0xad6f,
- 0xad70, 0xad71, 0xad72, 0xad73, 0xad74, 0xad75, 0xad76, 0xad77,
- 0xad78, 0xad79, 0xad7a, 0xad7b, 0xad7c, 0xad7d, 0xad7e, 0xad7f,
- 0xad80, 0xad81, 0xad82, 0xad83, 0xad84, 0xad85, 0xad86, 0xad87, /* 0xad80 */
- 0xad88, 0xad89, 0xad8a, 0xad8b, 0xad8c, 0xad8d, 0xad8e, 0xad8f,
- 0xad90, 0xad91, 0xad92, 0xad93, 0xad94, 0xad95, 0xad96, 0xad97,
- 0xad98, 0xad99, 0xad9a, 0xad9b, 0xad9c, 0xad9d, 0xad9e, 0xad9f,
- 0xada0, 0xada1, 0xada2, 0xada3, 0xada4, 0xada5, 0xada6, 0xada7,
- 0xada8, 0xada9, 0xadaa, 0xadab, 0xadac, 0xadad, 0xadae, 0xadaf,
- 0xadb0, 0xadb1, 0xadb2, 0xadb3, 0xadb4, 0xadb5, 0xadb6, 0xadb7,
- 0xadb8, 0xadb9, 0xadba, 0xadbb, 0xadbc, 0xadbd, 0xadbe, 0xadbf,
- 0xadc0, 0xadc1, 0xadc2, 0xadc3, 0xadc4, 0xadc5, 0xadc6, 0xadc7, /* 0xadc0 */
- 0xadc8, 0xadc9, 0xadca, 0xadcb, 0xadcc, 0xadcd, 0xadce, 0xadcf,
- 0xadd0, 0xadd1, 0xadd2, 0xadd3, 0xadd4, 0xadd5, 0xadd6, 0xadd7,
- 0xadd8, 0xadd9, 0xadda, 0xaddb, 0xaddc, 0xaddd, 0xadde, 0xaddf,
- 0xade0, 0xade1, 0xade2, 0xade3, 0xade4, 0xade5, 0xade6, 0xade7,
- 0xade8, 0xade9, 0xadea, 0xadeb, 0xadec, 0xaded, 0xadee, 0xadef,
- 0xadf0, 0xadf1, 0xadf2, 0xadf3, 0xadf4, 0xadf5, 0xadf6, 0xadf7,
- 0xadf8, 0xadf9, 0xadfa, 0xadfb, 0xadfc, 0xadfd, 0xadfe, 0xadff,
- 0xae00, 0xae01, 0xae02, 0xae03, 0xae04, 0xae05, 0xae06, 0xae07, /* 0xae00 */
- 0xae08, 0xae09, 0xae0a, 0xae0b, 0xae0c, 0xae0d, 0xae0e, 0xae0f,
- 0xae10, 0xae11, 0xae12, 0xae13, 0xae14, 0xae15, 0xae16, 0xae17,
- 0xae18, 0xae19, 0xae1a, 0xae1b, 0xae1c, 0xae1d, 0xae1e, 0xae1f,
- 0xae20, 0xae21, 0xae22, 0xae23, 0xae24, 0xae25, 0xae26, 0xae27,
- 0xae28, 0xae29, 0xae2a, 0xae2b, 0xae2c, 0xae2d, 0xae2e, 0xae2f,
- 0xae30, 0xae31, 0xae32, 0xae33, 0xae34, 0xae35, 0xae36, 0xae37,
- 0xae38, 0xae39, 0xae3a, 0xae3b, 0xae3c, 0xae3d, 0xae3e, 0xae3f,
- 0xae40, 0xae41, 0xae42, 0xae43, 0xae44, 0xae45, 0xae46, 0xae47, /* 0xae40 */
- 0xae48, 0xae49, 0xae4a, 0xae4b, 0xae4c, 0xae4d, 0xae4e, 0xae4f,
- 0xae50, 0xae51, 0xae52, 0xae53, 0xae54, 0xae55, 0xae56, 0xae57,
- 0xae58, 0xae59, 0xae5a, 0xae5b, 0xae5c, 0xae5d, 0xae5e, 0xae5f,
- 0xae60, 0xae61, 0xae62, 0xae63, 0xae64, 0xae65, 0xae66, 0xae67,
- 0xae68, 0xae69, 0xae6a, 0xae6b, 0xae6c, 0xae6d, 0xae6e, 0xae6f,
- 0xae70, 0xae71, 0xae72, 0xae73, 0xae74, 0xae75, 0xae76, 0xae77,
- 0xae78, 0xae79, 0xae7a, 0xae7b, 0xae7c, 0xae7d, 0xae7e, 0xae7f,
- 0xae80, 0xae81, 0xae82, 0xae83, 0xae84, 0xae85, 0xae86, 0xae87, /* 0xae80 */
- 0xae88, 0xae89, 0xae8a, 0xae8b, 0xae8c, 0xae8d, 0xae8e, 0xae8f,
- 0xae90, 0xae91, 0xae92, 0xae93, 0xae94, 0xae95, 0xae96, 0xae97,
- 0xae98, 0xae99, 0xae9a, 0xae9b, 0xae9c, 0xae9d, 0xae9e, 0xae9f,
- 0xaea0, 0xaea1, 0xaea2, 0xaea3, 0xaea4, 0xaea5, 0xaea6, 0xaea7,
- 0xaea8, 0xaea9, 0xaeaa, 0xaeab, 0xaeac, 0xaead, 0xaeae, 0xaeaf,
- 0xaeb0, 0xaeb1, 0xaeb2, 0xaeb3, 0xaeb4, 0xaeb5, 0xaeb6, 0xaeb7,
- 0xaeb8, 0xaeb9, 0xaeba, 0xaebb, 0xaebc, 0xaebd, 0xaebe, 0xaebf,
- 0xaec0, 0xaec1, 0xaec2, 0xaec3, 0xaec4, 0xaec5, 0xaec6, 0xaec7, /* 0xaec0 */
- 0xaec8, 0xaec9, 0xaeca, 0xaecb, 0xaecc, 0xaecd, 0xaece, 0xaecf,
- 0xaed0, 0xaed1, 0xaed2, 0xaed3, 0xaed4, 0xaed5, 0xaed6, 0xaed7,
- 0xaed8, 0xaed9, 0xaeda, 0xaedb, 0xaedc, 0xaedd, 0xaede, 0xaedf,
- 0xaee0, 0xaee1, 0xaee2, 0xaee3, 0xaee4, 0xaee5, 0xaee6, 0xaee7,
- 0xaee8, 0xaee9, 0xaeea, 0xaeeb, 0xaeec, 0xaeed, 0xaeee, 0xaeef,
- 0xaef0, 0xaef1, 0xaef2, 0xaef3, 0xaef4, 0xaef5, 0xaef6, 0xaef7,
- 0xaef8, 0xaef9, 0xaefa, 0xaefb, 0xaefc, 0xaefd, 0xaefe, 0xaeff,
- 0xaf00, 0xaf01, 0xaf02, 0xaf03, 0xaf04, 0xaf05, 0xaf06, 0xaf07, /* 0xaf00 */
- 0xaf08, 0xaf09, 0xaf0a, 0xaf0b, 0xaf0c, 0xaf0d, 0xaf0e, 0xaf0f,
- 0xaf10, 0xaf11, 0xaf12, 0xaf13, 0xaf14, 0xaf15, 0xaf16, 0xaf17,
- 0xaf18, 0xaf19, 0xaf1a, 0xaf1b, 0xaf1c, 0xaf1d, 0xaf1e, 0xaf1f,
- 0xaf20, 0xaf21, 0xaf22, 0xaf23, 0xaf24, 0xaf25, 0xaf26, 0xaf27,
- 0xaf28, 0xaf29, 0xaf2a, 0xaf2b, 0xaf2c, 0xaf2d, 0xaf2e, 0xaf2f,
- 0xaf30, 0xaf31, 0xaf32, 0xaf33, 0xaf34, 0xaf35, 0xaf36, 0xaf37,
- 0xaf38, 0xaf39, 0xaf3a, 0xaf3b, 0xaf3c, 0xaf3d, 0xaf3e, 0xaf3f,
- 0xaf40, 0xaf41, 0xaf42, 0xaf43, 0xaf44, 0xaf45, 0xaf46, 0xaf47, /* 0xaf40 */
- 0xaf48, 0xaf49, 0xaf4a, 0xaf4b, 0xaf4c, 0xaf4d, 0xaf4e, 0xaf4f,
- 0xaf50, 0xaf51, 0xaf52, 0xaf53, 0xaf54, 0xaf55, 0xaf56, 0xaf57,
- 0xaf58, 0xaf59, 0xaf5a, 0xaf5b, 0xaf5c, 0xaf5d, 0xaf5e, 0xaf5f,
- 0xaf60, 0xaf61, 0xaf62, 0xaf63, 0xaf64, 0xaf65, 0xaf66, 0xaf67,
- 0xaf68, 0xaf69, 0xaf6a, 0xaf6b, 0xaf6c, 0xaf6d, 0xaf6e, 0xaf6f,
- 0xaf70, 0xaf71, 0xaf72, 0xaf73, 0xaf74, 0xaf75, 0xaf76, 0xaf77,
- 0xaf78, 0xaf79, 0xaf7a, 0xaf7b, 0xaf7c, 0xaf7d, 0xaf7e, 0xaf7f,
- 0xaf80, 0xaf81, 0xaf82, 0xaf83, 0xaf84, 0xaf85, 0xaf86, 0xaf87, /* 0xaf80 */
- 0xaf88, 0xaf89, 0xaf8a, 0xaf8b, 0xaf8c, 0xaf8d, 0xaf8e, 0xaf8f,
- 0xaf90, 0xaf91, 0xaf92, 0xaf93, 0xaf94, 0xaf95, 0xaf96, 0xaf97,
- 0xaf98, 0xaf99, 0xaf9a, 0xaf9b, 0xaf9c, 0xaf9d, 0xaf9e, 0xaf9f,
- 0xafa0, 0xafa1, 0xafa2, 0xafa3, 0xafa4, 0xafa5, 0xafa6, 0xafa7,
- 0xafa8, 0xafa9, 0xafaa, 0xafab, 0xafac, 0xafad, 0xafae, 0xafaf,
- 0xafb0, 0xafb1, 0xafb2, 0xafb3, 0xafb4, 0xafb5, 0xafb6, 0xafb7,
- 0xafb8, 0xafb9, 0xafba, 0xafbb, 0xafbc, 0xafbd, 0xafbe, 0xafbf,
- 0xafc0, 0xafc1, 0xafc2, 0xafc3, 0xafc4, 0xafc5, 0xafc6, 0xafc7, /* 0xafc0 */
- 0xafc8, 0xafc9, 0xafca, 0xafcb, 0xafcc, 0xafcd, 0xafce, 0xafcf,
- 0xafd0, 0xafd1, 0xafd2, 0xafd3, 0xafd4, 0xafd5, 0xafd6, 0xafd7,
- 0xafd8, 0xafd9, 0xafda, 0xafdb, 0xafdc, 0xafdd, 0xafde, 0xafdf,
- 0xafe0, 0xafe1, 0xafe2, 0xafe3, 0xafe4, 0xafe5, 0xafe6, 0xafe7,
- 0xafe8, 0xafe9, 0xafea, 0xafeb, 0xafec, 0xafed, 0xafee, 0xafef,
- 0xaff0, 0xaff1, 0xaff2, 0xaff3, 0xaff4, 0xaff5, 0xaff6, 0xaff7,
- 0xaff8, 0xaff9, 0xaffa, 0xaffb, 0xaffc, 0xaffd, 0xaffe, 0xafff,
- 0xb000, 0xb001, 0xb002, 0xb003, 0xb004, 0xb005, 0xb006, 0xb007, /* 0xb000 */
- 0xb008, 0xb009, 0xb00a, 0xb00b, 0xb00c, 0xb00d, 0xb00e, 0xb00f,
- 0xb010, 0xb011, 0xb012, 0xb013, 0xb014, 0xb015, 0xb016, 0xb017,
- 0xb018, 0xb019, 0xb01a, 0xb01b, 0xb01c, 0xb01d, 0xb01e, 0xb01f,
- 0xb020, 0xb021, 0xb022, 0xb023, 0xb024, 0xb025, 0xb026, 0xb027,
- 0xb028, 0xb029, 0xb02a, 0xb02b, 0xb02c, 0xb02d, 0xb02e, 0xb02f,
- 0xb030, 0xb031, 0xb032, 0xb033, 0xb034, 0xb035, 0xb036, 0xb037,
- 0xb038, 0xb039, 0xb03a, 0xb03b, 0xb03c, 0xb03d, 0xb03e, 0xb03f,
- 0xb040, 0xb041, 0xb042, 0xb043, 0xb044, 0xb045, 0xb046, 0xb047, /* 0xb040 */
- 0xb048, 0xb049, 0xb04a, 0xb04b, 0xb04c, 0xb04d, 0xb04e, 0xb04f,
- 0xb050, 0xb051, 0xb052, 0xb053, 0xb054, 0xb055, 0xb056, 0xb057,
- 0xb058, 0xb059, 0xb05a, 0xb05b, 0xb05c, 0xb05d, 0xb05e, 0xb05f,
- 0xb060, 0xb061, 0xb062, 0xb063, 0xb064, 0xb065, 0xb066, 0xb067,
- 0xb068, 0xb069, 0xb06a, 0xb06b, 0xb06c, 0xb06d, 0xb06e, 0xb06f,
- 0xb070, 0xb071, 0xb072, 0xb073, 0xb074, 0xb075, 0xb076, 0xb077,
- 0xb078, 0xb079, 0xb07a, 0xb07b, 0xb07c, 0xb07d, 0xb07e, 0xb07f,
- 0xb080, 0xb081, 0xb082, 0xb083, 0xb084, 0xb085, 0xb086, 0xb087, /* 0xb080 */
- 0xb088, 0xb089, 0xb08a, 0xb08b, 0xb08c, 0xb08d, 0xb08e, 0xb08f,
- 0xb090, 0xb091, 0xb092, 0xb093, 0xb094, 0xb095, 0xb096, 0xb097,
- 0xb098, 0xb099, 0xb09a, 0xb09b, 0xb09c, 0xb09d, 0xb09e, 0xb09f,
- 0xb0a0, 0xb0a1, 0xb0a2, 0xb0a3, 0xb0a4, 0xb0a5, 0xb0a6, 0xb0a7,
- 0xb0a8, 0xb0a9, 0xb0aa, 0xb0ab, 0xb0ac, 0xb0ad, 0xb0ae, 0xb0af,
- 0xb0b0, 0xb0b1, 0xb0b2, 0xb0b3, 0xb0b4, 0xb0b5, 0xb0b6, 0xb0b7,
- 0xb0b8, 0xb0b9, 0xb0ba, 0xb0bb, 0xb0bc, 0xb0bd, 0xb0be, 0xb0bf,
- 0xb0c0, 0xb0c1, 0xb0c2, 0xb0c3, 0xb0c4, 0xb0c5, 0xb0c6, 0xb0c7, /* 0xb0c0 */
- 0xb0c8, 0xb0c9, 0xb0ca, 0xb0cb, 0xb0cc, 0xb0cd, 0xb0ce, 0xb0cf,
- 0xb0d0, 0xb0d1, 0xb0d2, 0xb0d3, 0xb0d4, 0xb0d5, 0xb0d6, 0xb0d7,
- 0xb0d8, 0xb0d9, 0xb0da, 0xb0db, 0xb0dc, 0xb0dd, 0xb0de, 0xb0df,
- 0xb0e0, 0xb0e1, 0xb0e2, 0xb0e3, 0xb0e4, 0xb0e5, 0xb0e6, 0xb0e7,
- 0xb0e8, 0xb0e9, 0xb0ea, 0xb0eb, 0xb0ec, 0xb0ed, 0xb0ee, 0xb0ef,
- 0xb0f0, 0xb0f1, 0xb0f2, 0xb0f3, 0xb0f4, 0xb0f5, 0xb0f6, 0xb0f7,
- 0xb0f8, 0xb0f9, 0xb0fa, 0xb0fb, 0xb0fc, 0xb0fd, 0xb0fe, 0xb0ff,
- 0xb100, 0xb101, 0xb102, 0xb103, 0xb104, 0xb105, 0xb106, 0xb107, /* 0xb100 */
- 0xb108, 0xb109, 0xb10a, 0xb10b, 0xb10c, 0xb10d, 0xb10e, 0xb10f,
- 0xb110, 0xb111, 0xb112, 0xb113, 0xb114, 0xb115, 0xb116, 0xb117,
- 0xb118, 0xb119, 0xb11a, 0xb11b, 0xb11c, 0xb11d, 0xb11e, 0xb11f,
- 0xb120, 0xb121, 0xb122, 0xb123, 0xb124, 0xb125, 0xb126, 0xb127,
- 0xb128, 0xb129, 0xb12a, 0xb12b, 0xb12c, 0xb12d, 0xb12e, 0xb12f,
- 0xb130, 0xb131, 0xb132, 0xb133, 0xb134, 0xb135, 0xb136, 0xb137,
- 0xb138, 0xb139, 0xb13a, 0xb13b, 0xb13c, 0xb13d, 0xb13e, 0xb13f,
- 0xb140, 0xb141, 0xb142, 0xb143, 0xb144, 0xb145, 0xb146, 0xb147, /* 0xb140 */
- 0xb148, 0xb149, 0xb14a, 0xb14b, 0xb14c, 0xb14d, 0xb14e, 0xb14f,
- 0xb150, 0xb151, 0xb152, 0xb153, 0xb154, 0xb155, 0xb156, 0xb157,
- 0xb158, 0xb159, 0xb15a, 0xb15b, 0xb15c, 0xb15d, 0xb15e, 0xb15f,
- 0xb160, 0xb161, 0xb162, 0xb163, 0xb164, 0xb165, 0xb166, 0xb167,
- 0xb168, 0xb169, 0xb16a, 0xb16b, 0xb16c, 0xb16d, 0xb16e, 0xb16f,
- 0xb170, 0xb171, 0xb172, 0xb173, 0xb174, 0xb175, 0xb176, 0xb177,
- 0xb178, 0xb179, 0xb17a, 0xb17b, 0xb17c, 0xb17d, 0xb17e, 0xb17f,
- 0xb180, 0xb181, 0xb182, 0xb183, 0xb184, 0xb185, 0xb186, 0xb187, /* 0xb180 */
- 0xb188, 0xb189, 0xb18a, 0xb18b, 0xb18c, 0xb18d, 0xb18e, 0xb18f,
- 0xb190, 0xb191, 0xb192, 0xb193, 0xb194, 0xb195, 0xb196, 0xb197,
- 0xb198, 0xb199, 0xb19a, 0xb19b, 0xb19c, 0xb19d, 0xb19e, 0xb19f,
- 0xb1a0, 0xb1a1, 0xb1a2, 0xb1a3, 0xb1a4, 0xb1a5, 0xb1a6, 0xb1a7,
- 0xb1a8, 0xb1a9, 0xb1aa, 0xb1ab, 0xb1ac, 0xb1ad, 0xb1ae, 0xb1af,
- 0xb1b0, 0xb1b1, 0xb1b2, 0xb1b3, 0xb1b4, 0xb1b5, 0xb1b6, 0xb1b7,
- 0xb1b8, 0xb1b9, 0xb1ba, 0xb1bb, 0xb1bc, 0xb1bd, 0xb1be, 0xb1bf,
- 0xb1c0, 0xb1c1, 0xb1c2, 0xb1c3, 0xb1c4, 0xb1c5, 0xb1c6, 0xb1c7, /* 0xb1c0 */
- 0xb1c8, 0xb1c9, 0xb1ca, 0xb1cb, 0xb1cc, 0xb1cd, 0xb1ce, 0xb1cf,
- 0xb1d0, 0xb1d1, 0xb1d2, 0xb1d3, 0xb1d4, 0xb1d5, 0xb1d6, 0xb1d7,
- 0xb1d8, 0xb1d9, 0xb1da, 0xb1db, 0xb1dc, 0xb1dd, 0xb1de, 0xb1df,
- 0xb1e0, 0xb1e1, 0xb1e2, 0xb1e3, 0xb1e4, 0xb1e5, 0xb1e6, 0xb1e7,
- 0xb1e8, 0xb1e9, 0xb1ea, 0xb1eb, 0xb1ec, 0xb1ed, 0xb1ee, 0xb1ef,
- 0xb1f0, 0xb1f1, 0xb1f2, 0xb1f3, 0xb1f4, 0xb1f5, 0xb1f6, 0xb1f7,
- 0xb1f8, 0xb1f9, 0xb1fa, 0xb1fb, 0xb1fc, 0xb1fd, 0xb1fe, 0xb1ff,
- 0xb200, 0xb201, 0xb202, 0xb203, 0xb204, 0xb205, 0xb206, 0xb207, /* 0xb200 */
- 0xb208, 0xb209, 0xb20a, 0xb20b, 0xb20c, 0xb20d, 0xb20e, 0xb20f,
- 0xb210, 0xb211, 0xb212, 0xb213, 0xb214, 0xb215, 0xb216, 0xb217,
- 0xb218, 0xb219, 0xb21a, 0xb21b, 0xb21c, 0xb21d, 0xb21e, 0xb21f,
- 0xb220, 0xb221, 0xb222, 0xb223, 0xb224, 0xb225, 0xb226, 0xb227,
- 0xb228, 0xb229, 0xb22a, 0xb22b, 0xb22c, 0xb22d, 0xb22e, 0xb22f,
- 0xb230, 0xb231, 0xb232, 0xb233, 0xb234, 0xb235, 0xb236, 0xb237,
- 0xb238, 0xb239, 0xb23a, 0xb23b, 0xb23c, 0xb23d, 0xb23e, 0xb23f,
- 0xb240, 0xb241, 0xb242, 0xb243, 0xb244, 0xb245, 0xb246, 0xb247, /* 0xb240 */
- 0xb248, 0xb249, 0xb24a, 0xb24b, 0xb24c, 0xb24d, 0xb24e, 0xb24f,
- 0xb250, 0xb251, 0xb252, 0xb253, 0xb254, 0xb255, 0xb256, 0xb257,
- 0xb258, 0xb259, 0xb25a, 0xb25b, 0xb25c, 0xb25d, 0xb25e, 0xb25f,
- 0xb260, 0xb261, 0xb262, 0xb263, 0xb264, 0xb265, 0xb266, 0xb267,
- 0xb268, 0xb269, 0xb26a, 0xb26b, 0xb26c, 0xb26d, 0xb26e, 0xb26f,
- 0xb270, 0xb271, 0xb272, 0xb273, 0xb274, 0xb275, 0xb276, 0xb277,
- 0xb278, 0xb279, 0xb27a, 0xb27b, 0xb27c, 0xb27d, 0xb27e, 0xb27f,
- 0xb280, 0xb281, 0xb282, 0xb283, 0xb284, 0xb285, 0xb286, 0xb287, /* 0xb280 */
- 0xb288, 0xb289, 0xb28a, 0xb28b, 0xb28c, 0xb28d, 0xb28e, 0xb28f,
- 0xb290, 0xb291, 0xb292, 0xb293, 0xb294, 0xb295, 0xb296, 0xb297,
- 0xb298, 0xb299, 0xb29a, 0xb29b, 0xb29c, 0xb29d, 0xb29e, 0xb29f,
- 0xb2a0, 0xb2a1, 0xb2a2, 0xb2a3, 0xb2a4, 0xb2a5, 0xb2a6, 0xb2a7,
- 0xb2a8, 0xb2a9, 0xb2aa, 0xb2ab, 0xb2ac, 0xb2ad, 0xb2ae, 0xb2af,
- 0xb2b0, 0xb2b1, 0xb2b2, 0xb2b3, 0xb2b4, 0xb2b5, 0xb2b6, 0xb2b7,
- 0xb2b8, 0xb2b9, 0xb2ba, 0xb2bb, 0xb2bc, 0xb2bd, 0xb2be, 0xb2bf,
- 0xb2c0, 0xb2c1, 0xb2c2, 0xb2c3, 0xb2c4, 0xb2c5, 0xb2c6, 0xb2c7, /* 0xb2c0 */
- 0xb2c8, 0xb2c9, 0xb2ca, 0xb2cb, 0xb2cc, 0xb2cd, 0xb2ce, 0xb2cf,
- 0xb2d0, 0xb2d1, 0xb2d2, 0xb2d3, 0xb2d4, 0xb2d5, 0xb2d6, 0xb2d7,
- 0xb2d8, 0xb2d9, 0xb2da, 0xb2db, 0xb2dc, 0xb2dd, 0xb2de, 0xb2df,
- 0xb2e0, 0xb2e1, 0xb2e2, 0xb2e3, 0xb2e4, 0xb2e5, 0xb2e6, 0xb2e7,
- 0xb2e8, 0xb2e9, 0xb2ea, 0xb2eb, 0xb2ec, 0xb2ed, 0xb2ee, 0xb2ef,
- 0xb2f0, 0xb2f1, 0xb2f2, 0xb2f3, 0xb2f4, 0xb2f5, 0xb2f6, 0xb2f7,
- 0xb2f8, 0xb2f9, 0xb2fa, 0xb2fb, 0xb2fc, 0xb2fd, 0xb2fe, 0xb2ff,
- 0xb300, 0xb301, 0xb302, 0xb303, 0xb304, 0xb305, 0xb306, 0xb307, /* 0xb300 */
- 0xb308, 0xb309, 0xb30a, 0xb30b, 0xb30c, 0xb30d, 0xb30e, 0xb30f,
- 0xb310, 0xb311, 0xb312, 0xb313, 0xb314, 0xb315, 0xb316, 0xb317,
- 0xb318, 0xb319, 0xb31a, 0xb31b, 0xb31c, 0xb31d, 0xb31e, 0xb31f,
- 0xb320, 0xb321, 0xb322, 0xb323, 0xb324, 0xb325, 0xb326, 0xb327,
- 0xb328, 0xb329, 0xb32a, 0xb32b, 0xb32c, 0xb32d, 0xb32e, 0xb32f,
- 0xb330, 0xb331, 0xb332, 0xb333, 0xb334, 0xb335, 0xb336, 0xb337,
- 0xb338, 0xb339, 0xb33a, 0xb33b, 0xb33c, 0xb33d, 0xb33e, 0xb33f,
- 0xb340, 0xb341, 0xb342, 0xb343, 0xb344, 0xb345, 0xb346, 0xb347, /* 0xb340 */
- 0xb348, 0xb349, 0xb34a, 0xb34b, 0xb34c, 0xb34d, 0xb34e, 0xb34f,
- 0xb350, 0xb351, 0xb352, 0xb353, 0xb354, 0xb355, 0xb356, 0xb357,
- 0xb358, 0xb359, 0xb35a, 0xb35b, 0xb35c, 0xb35d, 0xb35e, 0xb35f,
- 0xb360, 0xb361, 0xb362, 0xb363, 0xb364, 0xb365, 0xb366, 0xb367,
- 0xb368, 0xb369, 0xb36a, 0xb36b, 0xb36c, 0xb36d, 0xb36e, 0xb36f,
- 0xb370, 0xb371, 0xb372, 0xb373, 0xb374, 0xb375, 0xb376, 0xb377,
- 0xb378, 0xb379, 0xb37a, 0xb37b, 0xb37c, 0xb37d, 0xb37e, 0xb37f,
- 0xb380, 0xb381, 0xb382, 0xb383, 0xb384, 0xb385, 0xb386, 0xb387, /* 0xb380 */
- 0xb388, 0xb389, 0xb38a, 0xb38b, 0xb38c, 0xb38d, 0xb38e, 0xb38f,
- 0xb390, 0xb391, 0xb392, 0xb393, 0xb394, 0xb395, 0xb396, 0xb397,
- 0xb398, 0xb399, 0xb39a, 0xb39b, 0xb39c, 0xb39d, 0xb39e, 0xb39f,
- 0xb3a0, 0xb3a1, 0xb3a2, 0xb3a3, 0xb3a4, 0xb3a5, 0xb3a6, 0xb3a7,
- 0xb3a8, 0xb3a9, 0xb3aa, 0xb3ab, 0xb3ac, 0xb3ad, 0xb3ae, 0xb3af,
- 0xb3b0, 0xb3b1, 0xb3b2, 0xb3b3, 0xb3b4, 0xb3b5, 0xb3b6, 0xb3b7,
- 0xb3b8, 0xb3b9, 0xb3ba, 0xb3bb, 0xb3bc, 0xb3bd, 0xb3be, 0xb3bf,
- 0xb3c0, 0xb3c1, 0xb3c2, 0xb3c3, 0xb3c4, 0xb3c5, 0xb3c6, 0xb3c7, /* 0xb3c0 */
- 0xb3c8, 0xb3c9, 0xb3ca, 0xb3cb, 0xb3cc, 0xb3cd, 0xb3ce, 0xb3cf,
- 0xb3d0, 0xb3d1, 0xb3d2, 0xb3d3, 0xb3d4, 0xb3d5, 0xb3d6, 0xb3d7,
- 0xb3d8, 0xb3d9, 0xb3da, 0xb3db, 0xb3dc, 0xb3dd, 0xb3de, 0xb3df,
- 0xb3e0, 0xb3e1, 0xb3e2, 0xb3e3, 0xb3e4, 0xb3e5, 0xb3e6, 0xb3e7,
- 0xb3e8, 0xb3e9, 0xb3ea, 0xb3eb, 0xb3ec, 0xb3ed, 0xb3ee, 0xb3ef,
- 0xb3f0, 0xb3f1, 0xb3f2, 0xb3f3, 0xb3f4, 0xb3f5, 0xb3f6, 0xb3f7,
- 0xb3f8, 0xb3f9, 0xb3fa, 0xb3fb, 0xb3fc, 0xb3fd, 0xb3fe, 0xb3ff,
- 0xb400, 0xb401, 0xb402, 0xb403, 0xb404, 0xb405, 0xb406, 0xb407, /* 0xb400 */
- 0xb408, 0xb409, 0xb40a, 0xb40b, 0xb40c, 0xb40d, 0xb40e, 0xb40f,
- 0xb410, 0xb411, 0xb412, 0xb413, 0xb414, 0xb415, 0xb416, 0xb417,
- 0xb418, 0xb419, 0xb41a, 0xb41b, 0xb41c, 0xb41d, 0xb41e, 0xb41f,
- 0xb420, 0xb421, 0xb422, 0xb423, 0xb424, 0xb425, 0xb426, 0xb427,
- 0xb428, 0xb429, 0xb42a, 0xb42b, 0xb42c, 0xb42d, 0xb42e, 0xb42f,
- 0xb430, 0xb431, 0xb432, 0xb433, 0xb434, 0xb435, 0xb436, 0xb437,
- 0xb438, 0xb439, 0xb43a, 0xb43b, 0xb43c, 0xb43d, 0xb43e, 0xb43f,
- 0xb440, 0xb441, 0xb442, 0xb443, 0xb444, 0xb445, 0xb446, 0xb447, /* 0xb440 */
- 0xb448, 0xb449, 0xb44a, 0xb44b, 0xb44c, 0xb44d, 0xb44e, 0xb44f,
- 0xb450, 0xb451, 0xb452, 0xb453, 0xb454, 0xb455, 0xb456, 0xb457,
- 0xb458, 0xb459, 0xb45a, 0xb45b, 0xb45c, 0xb45d, 0xb45e, 0xb45f,
- 0xb460, 0xb461, 0xb462, 0xb463, 0xb464, 0xb465, 0xb466, 0xb467,
- 0xb468, 0xb469, 0xb46a, 0xb46b, 0xb46c, 0xb46d, 0xb46e, 0xb46f,
- 0xb470, 0xb471, 0xb472, 0xb473, 0xb474, 0xb475, 0xb476, 0xb477,
- 0xb478, 0xb479, 0xb47a, 0xb47b, 0xb47c, 0xb47d, 0xb47e, 0xb47f,
- 0xb480, 0xb481, 0xb482, 0xb483, 0xb484, 0xb485, 0xb486, 0xb487, /* 0xb480 */
- 0xb488, 0xb489, 0xb48a, 0xb48b, 0xb48c, 0xb48d, 0xb48e, 0xb48f,
- 0xb490, 0xb491, 0xb492, 0xb493, 0xb494, 0xb495, 0xb496, 0xb497,
- 0xb498, 0xb499, 0xb49a, 0xb49b, 0xb49c, 0xb49d, 0xb49e, 0xb49f,
- 0xb4a0, 0xb4a1, 0xb4a2, 0xb4a3, 0xb4a4, 0xb4a5, 0xb4a6, 0xb4a7,
- 0xb4a8, 0xb4a9, 0xb4aa, 0xb4ab, 0xb4ac, 0xb4ad, 0xb4ae, 0xb4af,
- 0xb4b0, 0xb4b1, 0xb4b2, 0xb4b3, 0xb4b4, 0xb4b5, 0xb4b6, 0xb4b7,
- 0xb4b8, 0xb4b9, 0xb4ba, 0xb4bb, 0xb4bc, 0xb4bd, 0xb4be, 0xb4bf,
- 0xb4c0, 0xb4c1, 0xb4c2, 0xb4c3, 0xb4c4, 0xb4c5, 0xb4c6, 0xb4c7, /* 0xb4c0 */
- 0xb4c8, 0xb4c9, 0xb4ca, 0xb4cb, 0xb4cc, 0xb4cd, 0xb4ce, 0xb4cf,
- 0xb4d0, 0xb4d1, 0xb4d2, 0xb4d3, 0xb4d4, 0xb4d5, 0xb4d6, 0xb4d7,
- 0xb4d8, 0xb4d9, 0xb4da, 0xb4db, 0xb4dc, 0xb4dd, 0xb4de, 0xb4df,
- 0xb4e0, 0xb4e1, 0xb4e2, 0xb4e3, 0xb4e4, 0xb4e5, 0xb4e6, 0xb4e7,
- 0xb4e8, 0xb4e9, 0xb4ea, 0xb4eb, 0xb4ec, 0xb4ed, 0xb4ee, 0xb4ef,
- 0xb4f0, 0xb4f1, 0xb4f2, 0xb4f3, 0xb4f4, 0xb4f5, 0xb4f6, 0xb4f7,
- 0xb4f8, 0xb4f9, 0xb4fa, 0xb4fb, 0xb4fc, 0xb4fd, 0xb4fe, 0xb4ff,
- 0xb500, 0xb501, 0xb502, 0xb503, 0xb504, 0xb505, 0xb506, 0xb507, /* 0xb500 */
- 0xb508, 0xb509, 0xb50a, 0xb50b, 0xb50c, 0xb50d, 0xb50e, 0xb50f,
- 0xb510, 0xb511, 0xb512, 0xb513, 0xb514, 0xb515, 0xb516, 0xb517,
- 0xb518, 0xb519, 0xb51a, 0xb51b, 0xb51c, 0xb51d, 0xb51e, 0xb51f,
- 0xb520, 0xb521, 0xb522, 0xb523, 0xb524, 0xb525, 0xb526, 0xb527,
- 0xb528, 0xb529, 0xb52a, 0xb52b, 0xb52c, 0xb52d, 0xb52e, 0xb52f,
- 0xb530, 0xb531, 0xb532, 0xb533, 0xb534, 0xb535, 0xb536, 0xb537,
- 0xb538, 0xb539, 0xb53a, 0xb53b, 0xb53c, 0xb53d, 0xb53e, 0xb53f,
- 0xb540, 0xb541, 0xb542, 0xb543, 0xb544, 0xb545, 0xb546, 0xb547, /* 0xb540 */
- 0xb548, 0xb549, 0xb54a, 0xb54b, 0xb54c, 0xb54d, 0xb54e, 0xb54f,
- 0xb550, 0xb551, 0xb552, 0xb553, 0xb554, 0xb555, 0xb556, 0xb557,
- 0xb558, 0xb559, 0xb55a, 0xb55b, 0xb55c, 0xb55d, 0xb55e, 0xb55f,
- 0xb560, 0xb561, 0xb562, 0xb563, 0xb564, 0xb565, 0xb566, 0xb567,
- 0xb568, 0xb569, 0xb56a, 0xb56b, 0xb56c, 0xb56d, 0xb56e, 0xb56f,
- 0xb570, 0xb571, 0xb572, 0xb573, 0xb574, 0xb575, 0xb576, 0xb577,
- 0xb578, 0xb579, 0xb57a, 0xb57b, 0xb57c, 0xb57d, 0xb57e, 0xb57f,
- 0xb580, 0xb581, 0xb582, 0xb583, 0xb584, 0xb585, 0xb586, 0xb587, /* 0xb580 */
- 0xb588, 0xb589, 0xb58a, 0xb58b, 0xb58c, 0xb58d, 0xb58e, 0xb58f,
- 0xb590, 0xb591, 0xb592, 0xb593, 0xb594, 0xb595, 0xb596, 0xb597,
- 0xb598, 0xb599, 0xb59a, 0xb59b, 0xb59c, 0xb59d, 0xb59e, 0xb59f,
- 0xb5a0, 0xb5a1, 0xb5a2, 0xb5a3, 0xb5a4, 0xb5a5, 0xb5a6, 0xb5a7,
- 0xb5a8, 0xb5a9, 0xb5aa, 0xb5ab, 0xb5ac, 0xb5ad, 0xb5ae, 0xb5af,
- 0xb5b0, 0xb5b1, 0xb5b2, 0xb5b3, 0xb5b4, 0xb5b5, 0xb5b6, 0xb5b7,
- 0xb5b8, 0xb5b9, 0xb5ba, 0xb5bb, 0xb5bc, 0xb5bd, 0xb5be, 0xb5bf,
- 0xb5c0, 0xb5c1, 0xb5c2, 0xb5c3, 0xb5c4, 0xb5c5, 0xb5c6, 0xb5c7, /* 0xb5c0 */
- 0xb5c8, 0xb5c9, 0xb5ca, 0xb5cb, 0xb5cc, 0xb5cd, 0xb5ce, 0xb5cf,
- 0xb5d0, 0xb5d1, 0xb5d2, 0xb5d3, 0xb5d4, 0xb5d5, 0xb5d6, 0xb5d7,
- 0xb5d8, 0xb5d9, 0xb5da, 0xb5db, 0xb5dc, 0xb5dd, 0xb5de, 0xb5df,
- 0xb5e0, 0xb5e1, 0xb5e2, 0xb5e3, 0xb5e4, 0xb5e5, 0xb5e6, 0xb5e7,
- 0xb5e8, 0xb5e9, 0xb5ea, 0xb5eb, 0xb5ec, 0xb5ed, 0xb5ee, 0xb5ef,
- 0xb5f0, 0xb5f1, 0xb5f2, 0xb5f3, 0xb5f4, 0xb5f5, 0xb5f6, 0xb5f7,
- 0xb5f8, 0xb5f9, 0xb5fa, 0xb5fb, 0xb5fc, 0xb5fd, 0xb5fe, 0xb5ff,
- 0xb600, 0xb601, 0xb602, 0xb603, 0xb604, 0xb605, 0xb606, 0xb607, /* 0xb600 */
- 0xb608, 0xb609, 0xb60a, 0xb60b, 0xb60c, 0xb60d, 0xb60e, 0xb60f,
- 0xb610, 0xb611, 0xb612, 0xb613, 0xb614, 0xb615, 0xb616, 0xb617,
- 0xb618, 0xb619, 0xb61a, 0xb61b, 0xb61c, 0xb61d, 0xb61e, 0xb61f,
- 0xb620, 0xb621, 0xb622, 0xb623, 0xb624, 0xb625, 0xb626, 0xb627,
- 0xb628, 0xb629, 0xb62a, 0xb62b, 0xb62c, 0xb62d, 0xb62e, 0xb62f,
- 0xb630, 0xb631, 0xb632, 0xb633, 0xb634, 0xb635, 0xb636, 0xb637,
- 0xb638, 0xb639, 0xb63a, 0xb63b, 0xb63c, 0xb63d, 0xb63e, 0xb63f,
- 0xb640, 0xb641, 0xb642, 0xb643, 0xb644, 0xb645, 0xb646, 0xb647, /* 0xb640 */
- 0xb648, 0xb649, 0xb64a, 0xb64b, 0xb64c, 0xb64d, 0xb64e, 0xb64f,
- 0xb650, 0xb651, 0xb652, 0xb653, 0xb654, 0xb655, 0xb656, 0xb657,
- 0xb658, 0xb659, 0xb65a, 0xb65b, 0xb65c, 0xb65d, 0xb65e, 0xb65f,
- 0xb660, 0xb661, 0xb662, 0xb663, 0xb664, 0xb665, 0xb666, 0xb667,
- 0xb668, 0xb669, 0xb66a, 0xb66b, 0xb66c, 0xb66d, 0xb66e, 0xb66f,
- 0xb670, 0xb671, 0xb672, 0xb673, 0xb674, 0xb675, 0xb676, 0xb677,
- 0xb678, 0xb679, 0xb67a, 0xb67b, 0xb67c, 0xb67d, 0xb67e, 0xb67f,
- 0xb680, 0xb681, 0xb682, 0xb683, 0xb684, 0xb685, 0xb686, 0xb687, /* 0xb680 */
- 0xb688, 0xb689, 0xb68a, 0xb68b, 0xb68c, 0xb68d, 0xb68e, 0xb68f,
- 0xb690, 0xb691, 0xb692, 0xb693, 0xb694, 0xb695, 0xb696, 0xb697,
- 0xb698, 0xb699, 0xb69a, 0xb69b, 0xb69c, 0xb69d, 0xb69e, 0xb69f,
- 0xb6a0, 0xb6a1, 0xb6a2, 0xb6a3, 0xb6a4, 0xb6a5, 0xb6a6, 0xb6a7,
- 0xb6a8, 0xb6a9, 0xb6aa, 0xb6ab, 0xb6ac, 0xb6ad, 0xb6ae, 0xb6af,
- 0xb6b0, 0xb6b1, 0xb6b2, 0xb6b3, 0xb6b4, 0xb6b5, 0xb6b6, 0xb6b7,
- 0xb6b8, 0xb6b9, 0xb6ba, 0xb6bb, 0xb6bc, 0xb6bd, 0xb6be, 0xb6bf,
- 0xb6c0, 0xb6c1, 0xb6c2, 0xb6c3, 0xb6c4, 0xb6c5, 0xb6c6, 0xb6c7, /* 0xb6c0 */
- 0xb6c8, 0xb6c9, 0xb6ca, 0xb6cb, 0xb6cc, 0xb6cd, 0xb6ce, 0xb6cf,
- 0xb6d0, 0xb6d1, 0xb6d2, 0xb6d3, 0xb6d4, 0xb6d5, 0xb6d6, 0xb6d7,
- 0xb6d8, 0xb6d9, 0xb6da, 0xb6db, 0xb6dc, 0xb6dd, 0xb6de, 0xb6df,
- 0xb6e0, 0xb6e1, 0xb6e2, 0xb6e3, 0xb6e4, 0xb6e5, 0xb6e6, 0xb6e7,
- 0xb6e8, 0xb6e9, 0xb6ea, 0xb6eb, 0xb6ec, 0xb6ed, 0xb6ee, 0xb6ef,
- 0xb6f0, 0xb6f1, 0xb6f2, 0xb6f3, 0xb6f4, 0xb6f5, 0xb6f6, 0xb6f7,
- 0xb6f8, 0xb6f9, 0xb6fa, 0xb6fb, 0xb6fc, 0xb6fd, 0xb6fe, 0xb6ff,
- 0xb700, 0xb701, 0xb702, 0xb703, 0xb704, 0xb705, 0xb706, 0xb707, /* 0xb700 */
- 0xb708, 0xb709, 0xb70a, 0xb70b, 0xb70c, 0xb70d, 0xb70e, 0xb70f,
- 0xb710, 0xb711, 0xb712, 0xb713, 0xb714, 0xb715, 0xb716, 0xb717,
- 0xb718, 0xb719, 0xb71a, 0xb71b, 0xb71c, 0xb71d, 0xb71e, 0xb71f,
- 0xb720, 0xb721, 0xb722, 0xb723, 0xb724, 0xb725, 0xb726, 0xb727,
- 0xb728, 0xb729, 0xb72a, 0xb72b, 0xb72c, 0xb72d, 0xb72e, 0xb72f,
- 0xb730, 0xb731, 0xb732, 0xb733, 0xb734, 0xb735, 0xb736, 0xb737,
- 0xb738, 0xb739, 0xb73a, 0xb73b, 0xb73c, 0xb73d, 0xb73e, 0xb73f,
- 0xb740, 0xb741, 0xb742, 0xb743, 0xb744, 0xb745, 0xb746, 0xb747, /* 0xb740 */
- 0xb748, 0xb749, 0xb74a, 0xb74b, 0xb74c, 0xb74d, 0xb74e, 0xb74f,
- 0xb750, 0xb751, 0xb752, 0xb753, 0xb754, 0xb755, 0xb756, 0xb757,
- 0xb758, 0xb759, 0xb75a, 0xb75b, 0xb75c, 0xb75d, 0xb75e, 0xb75f,
- 0xb760, 0xb761, 0xb762, 0xb763, 0xb764, 0xb765, 0xb766, 0xb767,
- 0xb768, 0xb769, 0xb76a, 0xb76b, 0xb76c, 0xb76d, 0xb76e, 0xb76f,
- 0xb770, 0xb771, 0xb772, 0xb773, 0xb774, 0xb775, 0xb776, 0xb777,
- 0xb778, 0xb779, 0xb77a, 0xb77b, 0xb77c, 0xb77d, 0xb77e, 0xb77f,
- 0xb780, 0xb781, 0xb782, 0xb783, 0xb784, 0xb785, 0xb786, 0xb787, /* 0xb780 */
- 0xb788, 0xb789, 0xb78a, 0xb78b, 0xb78c, 0xb78d, 0xb78e, 0xb78f,
- 0xb790, 0xb791, 0xb792, 0xb793, 0xb794, 0xb795, 0xb796, 0xb797,
- 0xb798, 0xb799, 0xb79a, 0xb79b, 0xb79c, 0xb79d, 0xb79e, 0xb79f,
- 0xb7a0, 0xb7a1, 0xb7a2, 0xb7a3, 0xb7a4, 0xb7a5, 0xb7a6, 0xb7a7,
- 0xb7a8, 0xb7a9, 0xb7aa, 0xb7ab, 0xb7ac, 0xb7ad, 0xb7ae, 0xb7af,
- 0xb7b0, 0xb7b1, 0xb7b2, 0xb7b3, 0xb7b4, 0xb7b5, 0xb7b6, 0xb7b7,
- 0xb7b8, 0xb7b9, 0xb7ba, 0xb7bb, 0xb7bc, 0xb7bd, 0xb7be, 0xb7bf,
- 0xb7c0, 0xb7c1, 0xb7c2, 0xb7c3, 0xb7c4, 0xb7c5, 0xb7c6, 0xb7c7, /* 0xb7c0 */
- 0xb7c8, 0xb7c9, 0xb7ca, 0xb7cb, 0xb7cc, 0xb7cd, 0xb7ce, 0xb7cf,
- 0xb7d0, 0xb7d1, 0xb7d2, 0xb7d3, 0xb7d4, 0xb7d5, 0xb7d6, 0xb7d7,
- 0xb7d8, 0xb7d9, 0xb7da, 0xb7db, 0xb7dc, 0xb7dd, 0xb7de, 0xb7df,
- 0xb7e0, 0xb7e1, 0xb7e2, 0xb7e3, 0xb7e4, 0xb7e5, 0xb7e6, 0xb7e7,
- 0xb7e8, 0xb7e9, 0xb7ea, 0xb7eb, 0xb7ec, 0xb7ed, 0xb7ee, 0xb7ef,
- 0xb7f0, 0xb7f1, 0xb7f2, 0xb7f3, 0xb7f4, 0xb7f5, 0xb7f6, 0xb7f7,
- 0xb7f8, 0xb7f9, 0xb7fa, 0xb7fb, 0xb7fc, 0xb7fd, 0xb7fe, 0xb7ff,
- 0xb800, 0xb801, 0xb802, 0xb803, 0xb804, 0xb805, 0xb806, 0xb807, /* 0xb800 */
- 0xb808, 0xb809, 0xb80a, 0xb80b, 0xb80c, 0xb80d, 0xb80e, 0xb80f,
- 0xb810, 0xb811, 0xb812, 0xb813, 0xb814, 0xb815, 0xb816, 0xb817,
- 0xb818, 0xb819, 0xb81a, 0xb81b, 0xb81c, 0xb81d, 0xb81e, 0xb81f,
- 0xb820, 0xb821, 0xb822, 0xb823, 0xb824, 0xb825, 0xb826, 0xb827,
- 0xb828, 0xb829, 0xb82a, 0xb82b, 0xb82c, 0xb82d, 0xb82e, 0xb82f,
- 0xb830, 0xb831, 0xb832, 0xb833, 0xb834, 0xb835, 0xb836, 0xb837,
- 0xb838, 0xb839, 0xb83a, 0xb83b, 0xb83c, 0xb83d, 0xb83e, 0xb83f,
- 0xb840, 0xb841, 0xb842, 0xb843, 0xb844, 0xb845, 0xb846, 0xb847, /* 0xb840 */
- 0xb848, 0xb849, 0xb84a, 0xb84b, 0xb84c, 0xb84d, 0xb84e, 0xb84f,
- 0xb850, 0xb851, 0xb852, 0xb853, 0xb854, 0xb855, 0xb856, 0xb857,
- 0xb858, 0xb859, 0xb85a, 0xb85b, 0xb85c, 0xb85d, 0xb85e, 0xb85f,
- 0xb860, 0xb861, 0xb862, 0xb863, 0xb864, 0xb865, 0xb866, 0xb867,
- 0xb868, 0xb869, 0xb86a, 0xb86b, 0xb86c, 0xb86d, 0xb86e, 0xb86f,
- 0xb870, 0xb871, 0xb872, 0xb873, 0xb874, 0xb875, 0xb876, 0xb877,
- 0xb878, 0xb879, 0xb87a, 0xb87b, 0xb87c, 0xb87d, 0xb87e, 0xb87f,
- 0xb880, 0xb881, 0xb882, 0xb883, 0xb884, 0xb885, 0xb886, 0xb887, /* 0xb880 */
- 0xb888, 0xb889, 0xb88a, 0xb88b, 0xb88c, 0xb88d, 0xb88e, 0xb88f,
- 0xb890, 0xb891, 0xb892, 0xb893, 0xb894, 0xb895, 0xb896, 0xb897,
- 0xb898, 0xb899, 0xb89a, 0xb89b, 0xb89c, 0xb89d, 0xb89e, 0xb89f,
- 0xb8a0, 0xb8a1, 0xb8a2, 0xb8a3, 0xb8a4, 0xb8a5, 0xb8a6, 0xb8a7,
- 0xb8a8, 0xb8a9, 0xb8aa, 0xb8ab, 0xb8ac, 0xb8ad, 0xb8ae, 0xb8af,
- 0xb8b0, 0xb8b1, 0xb8b2, 0xb8b3, 0xb8b4, 0xb8b5, 0xb8b6, 0xb8b7,
- 0xb8b8, 0xb8b9, 0xb8ba, 0xb8bb, 0xb8bc, 0xb8bd, 0xb8be, 0xb8bf,
- 0xb8c0, 0xb8c1, 0xb8c2, 0xb8c3, 0xb8c4, 0xb8c5, 0xb8c6, 0xb8c7, /* 0xb8c0 */
- 0xb8c8, 0xb8c9, 0xb8ca, 0xb8cb, 0xb8cc, 0xb8cd, 0xb8ce, 0xb8cf,
- 0xb8d0, 0xb8d1, 0xb8d2, 0xb8d3, 0xb8d4, 0xb8d5, 0xb8d6, 0xb8d7,
- 0xb8d8, 0xb8d9, 0xb8da, 0xb8db, 0xb8dc, 0xb8dd, 0xb8de, 0xb8df,
- 0xb8e0, 0xb8e1, 0xb8e2, 0xb8e3, 0xb8e4, 0xb8e5, 0xb8e6, 0xb8e7,
- 0xb8e8, 0xb8e9, 0xb8ea, 0xb8eb, 0xb8ec, 0xb8ed, 0xb8ee, 0xb8ef,
- 0xb8f0, 0xb8f1, 0xb8f2, 0xb8f3, 0xb8f4, 0xb8f5, 0xb8f6, 0xb8f7,
- 0xb8f8, 0xb8f9, 0xb8fa, 0xb8fb, 0xb8fc, 0xb8fd, 0xb8fe, 0xb8ff,
- 0xb900, 0xb901, 0xb902, 0xb903, 0xb904, 0xb905, 0xb906, 0xb907, /* 0xb900 */
- 0xb908, 0xb909, 0xb90a, 0xb90b, 0xb90c, 0xb90d, 0xb90e, 0xb90f,
- 0xb910, 0xb911, 0xb912, 0xb913, 0xb914, 0xb915, 0xb916, 0xb917,
- 0xb918, 0xb919, 0xb91a, 0xb91b, 0xb91c, 0xb91d, 0xb91e, 0xb91f,
- 0xb920, 0xb921, 0xb922, 0xb923, 0xb924, 0xb925, 0xb926, 0xb927,
- 0xb928, 0xb929, 0xb92a, 0xb92b, 0xb92c, 0xb92d, 0xb92e, 0xb92f,
- 0xb930, 0xb931, 0xb932, 0xb933, 0xb934, 0xb935, 0xb936, 0xb937,
- 0xb938, 0xb939, 0xb93a, 0xb93b, 0xb93c, 0xb93d, 0xb93e, 0xb93f,
- 0xb940, 0xb941, 0xb942, 0xb943, 0xb944, 0xb945, 0xb946, 0xb947, /* 0xb940 */
- 0xb948, 0xb949, 0xb94a, 0xb94b, 0xb94c, 0xb94d, 0xb94e, 0xb94f,
- 0xb950, 0xb951, 0xb952, 0xb953, 0xb954, 0xb955, 0xb956, 0xb957,
- 0xb958, 0xb959, 0xb95a, 0xb95b, 0xb95c, 0xb95d, 0xb95e, 0xb95f,
- 0xb960, 0xb961, 0xb962, 0xb963, 0xb964, 0xb965, 0xb966, 0xb967,
- 0xb968, 0xb969, 0xb96a, 0xb96b, 0xb96c, 0xb96d, 0xb96e, 0xb96f,
- 0xb970, 0xb971, 0xb972, 0xb973, 0xb974, 0xb975, 0xb976, 0xb977,
- 0xb978, 0xb979, 0xb97a, 0xb97b, 0xb97c, 0xb97d, 0xb97e, 0xb97f,
- 0xb980, 0xb981, 0xb982, 0xb983, 0xb984, 0xb985, 0xb986, 0xb987, /* 0xb980 */
- 0xb988, 0xb989, 0xb98a, 0xb98b, 0xb98c, 0xb98d, 0xb98e, 0xb98f,
- 0xb990, 0xb991, 0xb992, 0xb993, 0xb994, 0xb995, 0xb996, 0xb997,
- 0xb998, 0xb999, 0xb99a, 0xb99b, 0xb99c, 0xb99d, 0xb99e, 0xb99f,
- 0xb9a0, 0xb9a1, 0xb9a2, 0xb9a3, 0xb9a4, 0xb9a5, 0xb9a6, 0xb9a7,
- 0xb9a8, 0xb9a9, 0xb9aa, 0xb9ab, 0xb9ac, 0xb9ad, 0xb9ae, 0xb9af,
- 0xb9b0, 0xb9b1, 0xb9b2, 0xb9b3, 0xb9b4, 0xb9b5, 0xb9b6, 0xb9b7,
- 0xb9b8, 0xb9b9, 0xb9ba, 0xb9bb, 0xb9bc, 0xb9bd, 0xb9be, 0xb9bf,
- 0xb9c0, 0xb9c1, 0xb9c2, 0xb9c3, 0xb9c4, 0xb9c5, 0xb9c6, 0xb9c7, /* 0xb9c0 */
- 0xb9c8, 0xb9c9, 0xb9ca, 0xb9cb, 0xb9cc, 0xb9cd, 0xb9ce, 0xb9cf,
- 0xb9d0, 0xb9d1, 0xb9d2, 0xb9d3, 0xb9d4, 0xb9d5, 0xb9d6, 0xb9d7,
- 0xb9d8, 0xb9d9, 0xb9da, 0xb9db, 0xb9dc, 0xb9dd, 0xb9de, 0xb9df,
- 0xb9e0, 0xb9e1, 0xb9e2, 0xb9e3, 0xb9e4, 0xb9e5, 0xb9e6, 0xb9e7,
- 0xb9e8, 0xb9e9, 0xb9ea, 0xb9eb, 0xb9ec, 0xb9ed, 0xb9ee, 0xb9ef,
- 0xb9f0, 0xb9f1, 0xb9f2, 0xb9f3, 0xb9f4, 0xb9f5, 0xb9f6, 0xb9f7,
- 0xb9f8, 0xb9f9, 0xb9fa, 0xb9fb, 0xb9fc, 0xb9fd, 0xb9fe, 0xb9ff,
- 0xba00, 0xba01, 0xba02, 0xba03, 0xba04, 0xba05, 0xba06, 0xba07, /* 0xba00 */
- 0xba08, 0xba09, 0xba0a, 0xba0b, 0xba0c, 0xba0d, 0xba0e, 0xba0f,
- 0xba10, 0xba11, 0xba12, 0xba13, 0xba14, 0xba15, 0xba16, 0xba17,
- 0xba18, 0xba19, 0xba1a, 0xba1b, 0xba1c, 0xba1d, 0xba1e, 0xba1f,
- 0xba20, 0xba21, 0xba22, 0xba23, 0xba24, 0xba25, 0xba26, 0xba27,
- 0xba28, 0xba29, 0xba2a, 0xba2b, 0xba2c, 0xba2d, 0xba2e, 0xba2f,
- 0xba30, 0xba31, 0xba32, 0xba33, 0xba34, 0xba35, 0xba36, 0xba37,
- 0xba38, 0xba39, 0xba3a, 0xba3b, 0xba3c, 0xba3d, 0xba3e, 0xba3f,
- 0xba40, 0xba41, 0xba42, 0xba43, 0xba44, 0xba45, 0xba46, 0xba47, /* 0xba40 */
- 0xba48, 0xba49, 0xba4a, 0xba4b, 0xba4c, 0xba4d, 0xba4e, 0xba4f,
- 0xba50, 0xba51, 0xba52, 0xba53, 0xba54, 0xba55, 0xba56, 0xba57,
- 0xba58, 0xba59, 0xba5a, 0xba5b, 0xba5c, 0xba5d, 0xba5e, 0xba5f,
- 0xba60, 0xba61, 0xba62, 0xba63, 0xba64, 0xba65, 0xba66, 0xba67,
- 0xba68, 0xba69, 0xba6a, 0xba6b, 0xba6c, 0xba6d, 0xba6e, 0xba6f,
- 0xba70, 0xba71, 0xba72, 0xba73, 0xba74, 0xba75, 0xba76, 0xba77,
- 0xba78, 0xba79, 0xba7a, 0xba7b, 0xba7c, 0xba7d, 0xba7e, 0xba7f,
- 0xba80, 0xba81, 0xba82, 0xba83, 0xba84, 0xba85, 0xba86, 0xba87, /* 0xba80 */
- 0xba88, 0xba89, 0xba8a, 0xba8b, 0xba8c, 0xba8d, 0xba8e, 0xba8f,
- 0xba90, 0xba91, 0xba92, 0xba93, 0xba94, 0xba95, 0xba96, 0xba97,
- 0xba98, 0xba99, 0xba9a, 0xba9b, 0xba9c, 0xba9d, 0xba9e, 0xba9f,
- 0xbaa0, 0xbaa1, 0xbaa2, 0xbaa3, 0xbaa4, 0xbaa5, 0xbaa6, 0xbaa7,
- 0xbaa8, 0xbaa9, 0xbaaa, 0xbaab, 0xbaac, 0xbaad, 0xbaae, 0xbaaf,
- 0xbab0, 0xbab1, 0xbab2, 0xbab3, 0xbab4, 0xbab5, 0xbab6, 0xbab7,
- 0xbab8, 0xbab9, 0xbaba, 0xbabb, 0xbabc, 0xbabd, 0xbabe, 0xbabf,
- 0xbac0, 0xbac1, 0xbac2, 0xbac3, 0xbac4, 0xbac5, 0xbac6, 0xbac7, /* 0xbac0 */
- 0xbac8, 0xbac9, 0xbaca, 0xbacb, 0xbacc, 0xbacd, 0xbace, 0xbacf,
- 0xbad0, 0xbad1, 0xbad2, 0xbad3, 0xbad4, 0xbad5, 0xbad6, 0xbad7,
- 0xbad8, 0xbad9, 0xbada, 0xbadb, 0xbadc, 0xbadd, 0xbade, 0xbadf,
- 0xbae0, 0xbae1, 0xbae2, 0xbae3, 0xbae4, 0xbae5, 0xbae6, 0xbae7,
- 0xbae8, 0xbae9, 0xbaea, 0xbaeb, 0xbaec, 0xbaed, 0xbaee, 0xbaef,
- 0xbaf0, 0xbaf1, 0xbaf2, 0xbaf3, 0xbaf4, 0xbaf5, 0xbaf6, 0xbaf7,
- 0xbaf8, 0xbaf9, 0xbafa, 0xbafb, 0xbafc, 0xbafd, 0xbafe, 0xbaff,
- 0xbb00, 0xbb01, 0xbb02, 0xbb03, 0xbb04, 0xbb05, 0xbb06, 0xbb07, /* 0xbb00 */
- 0xbb08, 0xbb09, 0xbb0a, 0xbb0b, 0xbb0c, 0xbb0d, 0xbb0e, 0xbb0f,
- 0xbb10, 0xbb11, 0xbb12, 0xbb13, 0xbb14, 0xbb15, 0xbb16, 0xbb17,
- 0xbb18, 0xbb19, 0xbb1a, 0xbb1b, 0xbb1c, 0xbb1d, 0xbb1e, 0xbb1f,
- 0xbb20, 0xbb21, 0xbb22, 0xbb23, 0xbb24, 0xbb25, 0xbb26, 0xbb27,
- 0xbb28, 0xbb29, 0xbb2a, 0xbb2b, 0xbb2c, 0xbb2d, 0xbb2e, 0xbb2f,
- 0xbb30, 0xbb31, 0xbb32, 0xbb33, 0xbb34, 0xbb35, 0xbb36, 0xbb37,
- 0xbb38, 0xbb39, 0xbb3a, 0xbb3b, 0xbb3c, 0xbb3d, 0xbb3e, 0xbb3f,
- 0xbb40, 0xbb41, 0xbb42, 0xbb43, 0xbb44, 0xbb45, 0xbb46, 0xbb47, /* 0xbb40 */
- 0xbb48, 0xbb49, 0xbb4a, 0xbb4b, 0xbb4c, 0xbb4d, 0xbb4e, 0xbb4f,
- 0xbb50, 0xbb51, 0xbb52, 0xbb53, 0xbb54, 0xbb55, 0xbb56, 0xbb57,
- 0xbb58, 0xbb59, 0xbb5a, 0xbb5b, 0xbb5c, 0xbb5d, 0xbb5e, 0xbb5f,
- 0xbb60, 0xbb61, 0xbb62, 0xbb63, 0xbb64, 0xbb65, 0xbb66, 0xbb67,
- 0xbb68, 0xbb69, 0xbb6a, 0xbb6b, 0xbb6c, 0xbb6d, 0xbb6e, 0xbb6f,
- 0xbb70, 0xbb71, 0xbb72, 0xbb73, 0xbb74, 0xbb75, 0xbb76, 0xbb77,
- 0xbb78, 0xbb79, 0xbb7a, 0xbb7b, 0xbb7c, 0xbb7d, 0xbb7e, 0xbb7f,
- 0xbb80, 0xbb81, 0xbb82, 0xbb83, 0xbb84, 0xbb85, 0xbb86, 0xbb87, /* 0xbb80 */
- 0xbb88, 0xbb89, 0xbb8a, 0xbb8b, 0xbb8c, 0xbb8d, 0xbb8e, 0xbb8f,
- 0xbb90, 0xbb91, 0xbb92, 0xbb93, 0xbb94, 0xbb95, 0xbb96, 0xbb97,
- 0xbb98, 0xbb99, 0xbb9a, 0xbb9b, 0xbb9c, 0xbb9d, 0xbb9e, 0xbb9f,
- 0xbba0, 0xbba1, 0xbba2, 0xbba3, 0xbba4, 0xbba5, 0xbba6, 0xbba7,
- 0xbba8, 0xbba9, 0xbbaa, 0xbbab, 0xbbac, 0xbbad, 0xbbae, 0xbbaf,
- 0xbbb0, 0xbbb1, 0xbbb2, 0xbbb3, 0xbbb4, 0xbbb5, 0xbbb6, 0xbbb7,
- 0xbbb8, 0xbbb9, 0xbbba, 0xbbbb, 0xbbbc, 0xbbbd, 0xbbbe, 0xbbbf,
- 0xbbc0, 0xbbc1, 0xbbc2, 0xbbc3, 0xbbc4, 0xbbc5, 0xbbc6, 0xbbc7, /* 0xbbc0 */
- 0xbbc8, 0xbbc9, 0xbbca, 0xbbcb, 0xbbcc, 0xbbcd, 0xbbce, 0xbbcf,
- 0xbbd0, 0xbbd1, 0xbbd2, 0xbbd3, 0xbbd4, 0xbbd5, 0xbbd6, 0xbbd7,
- 0xbbd8, 0xbbd9, 0xbbda, 0xbbdb, 0xbbdc, 0xbbdd, 0xbbde, 0xbbdf,
- 0xbbe0, 0xbbe1, 0xbbe2, 0xbbe3, 0xbbe4, 0xbbe5, 0xbbe6, 0xbbe7,
- 0xbbe8, 0xbbe9, 0xbbea, 0xbbeb, 0xbbec, 0xbbed, 0xbbee, 0xbbef,
- 0xbbf0, 0xbbf1, 0xbbf2, 0xbbf3, 0xbbf4, 0xbbf5, 0xbbf6, 0xbbf7,
- 0xbbf8, 0xbbf9, 0xbbfa, 0xbbfb, 0xbbfc, 0xbbfd, 0xbbfe, 0xbbff,
- 0xbc00, 0xbc01, 0xbc02, 0xbc03, 0xbc04, 0xbc05, 0xbc06, 0xbc07, /* 0xbc00 */
- 0xbc08, 0xbc09, 0xbc0a, 0xbc0b, 0xbc0c, 0xbc0d, 0xbc0e, 0xbc0f,
- 0xbc10, 0xbc11, 0xbc12, 0xbc13, 0xbc14, 0xbc15, 0xbc16, 0xbc17,
- 0xbc18, 0xbc19, 0xbc1a, 0xbc1b, 0xbc1c, 0xbc1d, 0xbc1e, 0xbc1f,
- 0xbc20, 0xbc21, 0xbc22, 0xbc23, 0xbc24, 0xbc25, 0xbc26, 0xbc27,
- 0xbc28, 0xbc29, 0xbc2a, 0xbc2b, 0xbc2c, 0xbc2d, 0xbc2e, 0xbc2f,
- 0xbc30, 0xbc31, 0xbc32, 0xbc33, 0xbc34, 0xbc35, 0xbc36, 0xbc37,
- 0xbc38, 0xbc39, 0xbc3a, 0xbc3b, 0xbc3c, 0xbc3d, 0xbc3e, 0xbc3f,
- 0xbc40, 0xbc41, 0xbc42, 0xbc43, 0xbc44, 0xbc45, 0xbc46, 0xbc47, /* 0xbc40 */
- 0xbc48, 0xbc49, 0xbc4a, 0xbc4b, 0xbc4c, 0xbc4d, 0xbc4e, 0xbc4f,
- 0xbc50, 0xbc51, 0xbc52, 0xbc53, 0xbc54, 0xbc55, 0xbc56, 0xbc57,
- 0xbc58, 0xbc59, 0xbc5a, 0xbc5b, 0xbc5c, 0xbc5d, 0xbc5e, 0xbc5f,
- 0xbc60, 0xbc61, 0xbc62, 0xbc63, 0xbc64, 0xbc65, 0xbc66, 0xbc67,
- 0xbc68, 0xbc69, 0xbc6a, 0xbc6b, 0xbc6c, 0xbc6d, 0xbc6e, 0xbc6f,
- 0xbc70, 0xbc71, 0xbc72, 0xbc73, 0xbc74, 0xbc75, 0xbc76, 0xbc77,
- 0xbc78, 0xbc79, 0xbc7a, 0xbc7b, 0xbc7c, 0xbc7d, 0xbc7e, 0xbc7f,
- 0xbc80, 0xbc81, 0xbc82, 0xbc83, 0xbc84, 0xbc85, 0xbc86, 0xbc87, /* 0xbc80 */
- 0xbc88, 0xbc89, 0xbc8a, 0xbc8b, 0xbc8c, 0xbc8d, 0xbc8e, 0xbc8f,
- 0xbc90, 0xbc91, 0xbc92, 0xbc93, 0xbc94, 0xbc95, 0xbc96, 0xbc97,
- 0xbc98, 0xbc99, 0xbc9a, 0xbc9b, 0xbc9c, 0xbc9d, 0xbc9e, 0xbc9f,
- 0xbca0, 0xbca1, 0xbca2, 0xbca3, 0xbca4, 0xbca5, 0xbca6, 0xbca7,
- 0xbca8, 0xbca9, 0xbcaa, 0xbcab, 0xbcac, 0xbcad, 0xbcae, 0xbcaf,
- 0xbcb0, 0xbcb1, 0xbcb2, 0xbcb3, 0xbcb4, 0xbcb5, 0xbcb6, 0xbcb7,
- 0xbcb8, 0xbcb9, 0xbcba, 0xbcbb, 0xbcbc, 0xbcbd, 0xbcbe, 0xbcbf,
- 0xbcc0, 0xbcc1, 0xbcc2, 0xbcc3, 0xbcc4, 0xbcc5, 0xbcc6, 0xbcc7, /* 0xbcc0 */
- 0xbcc8, 0xbcc9, 0xbcca, 0xbccb, 0xbccc, 0xbccd, 0xbcce, 0xbccf,
- 0xbcd0, 0xbcd1, 0xbcd2, 0xbcd3, 0xbcd4, 0xbcd5, 0xbcd6, 0xbcd7,
- 0xbcd8, 0xbcd9, 0xbcda, 0xbcdb, 0xbcdc, 0xbcdd, 0xbcde, 0xbcdf,
- 0xbce0, 0xbce1, 0xbce2, 0xbce3, 0xbce4, 0xbce5, 0xbce6, 0xbce7,
- 0xbce8, 0xbce9, 0xbcea, 0xbceb, 0xbcec, 0xbced, 0xbcee, 0xbcef,
- 0xbcf0, 0xbcf1, 0xbcf2, 0xbcf3, 0xbcf4, 0xbcf5, 0xbcf6, 0xbcf7,
- 0xbcf8, 0xbcf9, 0xbcfa, 0xbcfb, 0xbcfc, 0xbcfd, 0xbcfe, 0xbcff,
- 0xbd00, 0xbd01, 0xbd02, 0xbd03, 0xbd04, 0xbd05, 0xbd06, 0xbd07, /* 0xbd00 */
- 0xbd08, 0xbd09, 0xbd0a, 0xbd0b, 0xbd0c, 0xbd0d, 0xbd0e, 0xbd0f,
- 0xbd10, 0xbd11, 0xbd12, 0xbd13, 0xbd14, 0xbd15, 0xbd16, 0xbd17,
- 0xbd18, 0xbd19, 0xbd1a, 0xbd1b, 0xbd1c, 0xbd1d, 0xbd1e, 0xbd1f,
- 0xbd20, 0xbd21, 0xbd22, 0xbd23, 0xbd24, 0xbd25, 0xbd26, 0xbd27,
- 0xbd28, 0xbd29, 0xbd2a, 0xbd2b, 0xbd2c, 0xbd2d, 0xbd2e, 0xbd2f,
- 0xbd30, 0xbd31, 0xbd32, 0xbd33, 0xbd34, 0xbd35, 0xbd36, 0xbd37,
- 0xbd38, 0xbd39, 0xbd3a, 0xbd3b, 0xbd3c, 0xbd3d, 0xbd3e, 0xbd3f,
- 0xbd40, 0xbd41, 0xbd42, 0xbd43, 0xbd44, 0xbd45, 0xbd46, 0xbd47, /* 0xbd40 */
- 0xbd48, 0xbd49, 0xbd4a, 0xbd4b, 0xbd4c, 0xbd4d, 0xbd4e, 0xbd4f,
- 0xbd50, 0xbd51, 0xbd52, 0xbd53, 0xbd54, 0xbd55, 0xbd56, 0xbd57,
- 0xbd58, 0xbd59, 0xbd5a, 0xbd5b, 0xbd5c, 0xbd5d, 0xbd5e, 0xbd5f,
- 0xbd60, 0xbd61, 0xbd62, 0xbd63, 0xbd64, 0xbd65, 0xbd66, 0xbd67,
- 0xbd68, 0xbd69, 0xbd6a, 0xbd6b, 0xbd6c, 0xbd6d, 0xbd6e, 0xbd6f,
- 0xbd70, 0xbd71, 0xbd72, 0xbd73, 0xbd74, 0xbd75, 0xbd76, 0xbd77,
- 0xbd78, 0xbd79, 0xbd7a, 0xbd7b, 0xbd7c, 0xbd7d, 0xbd7e, 0xbd7f,
- 0xbd80, 0xbd81, 0xbd82, 0xbd83, 0xbd84, 0xbd85, 0xbd86, 0xbd87, /* 0xbd80 */
- 0xbd88, 0xbd89, 0xbd8a, 0xbd8b, 0xbd8c, 0xbd8d, 0xbd8e, 0xbd8f,
- 0xbd90, 0xbd91, 0xbd92, 0xbd93, 0xbd94, 0xbd95, 0xbd96, 0xbd97,
- 0xbd98, 0xbd99, 0xbd9a, 0xbd9b, 0xbd9c, 0xbd9d, 0xbd9e, 0xbd9f,
- 0xbda0, 0xbda1, 0xbda2, 0xbda3, 0xbda4, 0xbda5, 0xbda6, 0xbda7,
- 0xbda8, 0xbda9, 0xbdaa, 0xbdab, 0xbdac, 0xbdad, 0xbdae, 0xbdaf,
- 0xbdb0, 0xbdb1, 0xbdb2, 0xbdb3, 0xbdb4, 0xbdb5, 0xbdb6, 0xbdb7,
- 0xbdb8, 0xbdb9, 0xbdba, 0xbdbb, 0xbdbc, 0xbdbd, 0xbdbe, 0xbdbf,
- 0xbdc0, 0xbdc1, 0xbdc2, 0xbdc3, 0xbdc4, 0xbdc5, 0xbdc6, 0xbdc7, /* 0xbdc0 */
- 0xbdc8, 0xbdc9, 0xbdca, 0xbdcb, 0xbdcc, 0xbdcd, 0xbdce, 0xbdcf,
- 0xbdd0, 0xbdd1, 0xbdd2, 0xbdd3, 0xbdd4, 0xbdd5, 0xbdd6, 0xbdd7,
- 0xbdd8, 0xbdd9, 0xbdda, 0xbddb, 0xbddc, 0xbddd, 0xbdde, 0xbddf,
- 0xbde0, 0xbde1, 0xbde2, 0xbde3, 0xbde4, 0xbde5, 0xbde6, 0xbde7,
- 0xbde8, 0xbde9, 0xbdea, 0xbdeb, 0xbdec, 0xbded, 0xbdee, 0xbdef,
- 0xbdf0, 0xbdf1, 0xbdf2, 0xbdf3, 0xbdf4, 0xbdf5, 0xbdf6, 0xbdf7,
- 0xbdf8, 0xbdf9, 0xbdfa, 0xbdfb, 0xbdfc, 0xbdfd, 0xbdfe, 0xbdff,
- 0xbe00, 0xbe01, 0xbe02, 0xbe03, 0xbe04, 0xbe05, 0xbe06, 0xbe07, /* 0xbe00 */
- 0xbe08, 0xbe09, 0xbe0a, 0xbe0b, 0xbe0c, 0xbe0d, 0xbe0e, 0xbe0f,
- 0xbe10, 0xbe11, 0xbe12, 0xbe13, 0xbe14, 0xbe15, 0xbe16, 0xbe17,
- 0xbe18, 0xbe19, 0xbe1a, 0xbe1b, 0xbe1c, 0xbe1d, 0xbe1e, 0xbe1f,
- 0xbe20, 0xbe21, 0xbe22, 0xbe23, 0xbe24, 0xbe25, 0xbe26, 0xbe27,
- 0xbe28, 0xbe29, 0xbe2a, 0xbe2b, 0xbe2c, 0xbe2d, 0xbe2e, 0xbe2f,
- 0xbe30, 0xbe31, 0xbe32, 0xbe33, 0xbe34, 0xbe35, 0xbe36, 0xbe37,
- 0xbe38, 0xbe39, 0xbe3a, 0xbe3b, 0xbe3c, 0xbe3d, 0xbe3e, 0xbe3f,
- 0xbe40, 0xbe41, 0xbe42, 0xbe43, 0xbe44, 0xbe45, 0xbe46, 0xbe47, /* 0xbe40 */
- 0xbe48, 0xbe49, 0xbe4a, 0xbe4b, 0xbe4c, 0xbe4d, 0xbe4e, 0xbe4f,
- 0xbe50, 0xbe51, 0xbe52, 0xbe53, 0xbe54, 0xbe55, 0xbe56, 0xbe57,
- 0xbe58, 0xbe59, 0xbe5a, 0xbe5b, 0xbe5c, 0xbe5d, 0xbe5e, 0xbe5f,
- 0xbe60, 0xbe61, 0xbe62, 0xbe63, 0xbe64, 0xbe65, 0xbe66, 0xbe67,
- 0xbe68, 0xbe69, 0xbe6a, 0xbe6b, 0xbe6c, 0xbe6d, 0xbe6e, 0xbe6f,
- 0xbe70, 0xbe71, 0xbe72, 0xbe73, 0xbe74, 0xbe75, 0xbe76, 0xbe77,
- 0xbe78, 0xbe79, 0xbe7a, 0xbe7b, 0xbe7c, 0xbe7d, 0xbe7e, 0xbe7f,
- 0xbe80, 0xbe81, 0xbe82, 0xbe83, 0xbe84, 0xbe85, 0xbe86, 0xbe87, /* 0xbe80 */
- 0xbe88, 0xbe89, 0xbe8a, 0xbe8b, 0xbe8c, 0xbe8d, 0xbe8e, 0xbe8f,
- 0xbe90, 0xbe91, 0xbe92, 0xbe93, 0xbe94, 0xbe95, 0xbe96, 0xbe97,
- 0xbe98, 0xbe99, 0xbe9a, 0xbe9b, 0xbe9c, 0xbe9d, 0xbe9e, 0xbe9f,
- 0xbea0, 0xbea1, 0xbea2, 0xbea3, 0xbea4, 0xbea5, 0xbea6, 0xbea7,
- 0xbea8, 0xbea9, 0xbeaa, 0xbeab, 0xbeac, 0xbead, 0xbeae, 0xbeaf,
- 0xbeb0, 0xbeb1, 0xbeb2, 0xbeb3, 0xbeb4, 0xbeb5, 0xbeb6, 0xbeb7,
- 0xbeb8, 0xbeb9, 0xbeba, 0xbebb, 0xbebc, 0xbebd, 0xbebe, 0xbebf,
- 0xbec0, 0xbec1, 0xbec2, 0xbec3, 0xbec4, 0xbec5, 0xbec6, 0xbec7, /* 0xbec0 */
- 0xbec8, 0xbec9, 0xbeca, 0xbecb, 0xbecc, 0xbecd, 0xbece, 0xbecf,
- 0xbed0, 0xbed1, 0xbed2, 0xbed3, 0xbed4, 0xbed5, 0xbed6, 0xbed7,
- 0xbed8, 0xbed9, 0xbeda, 0xbedb, 0xbedc, 0xbedd, 0xbede, 0xbedf,
- 0xbee0, 0xbee1, 0xbee2, 0xbee3, 0xbee4, 0xbee5, 0xbee6, 0xbee7,
- 0xbee8, 0xbee9, 0xbeea, 0xbeeb, 0xbeec, 0xbeed, 0xbeee, 0xbeef,
- 0xbef0, 0xbef1, 0xbef2, 0xbef3, 0xbef4, 0xbef5, 0xbef6, 0xbef7,
- 0xbef8, 0xbef9, 0xbefa, 0xbefb, 0xbefc, 0xbefd, 0xbefe, 0xbeff,
- 0xbf00, 0xbf01, 0xbf02, 0xbf03, 0xbf04, 0xbf05, 0xbf06, 0xbf07, /* 0xbf00 */
- 0xbf08, 0xbf09, 0xbf0a, 0xbf0b, 0xbf0c, 0xbf0d, 0xbf0e, 0xbf0f,
- 0xbf10, 0xbf11, 0xbf12, 0xbf13, 0xbf14, 0xbf15, 0xbf16, 0xbf17,
- 0xbf18, 0xbf19, 0xbf1a, 0xbf1b, 0xbf1c, 0xbf1d, 0xbf1e, 0xbf1f,
- 0xbf20, 0xbf21, 0xbf22, 0xbf23, 0xbf24, 0xbf25, 0xbf26, 0xbf27,
- 0xbf28, 0xbf29, 0xbf2a, 0xbf2b, 0xbf2c, 0xbf2d, 0xbf2e, 0xbf2f,
- 0xbf30, 0xbf31, 0xbf32, 0xbf33, 0xbf34, 0xbf35, 0xbf36, 0xbf37,
- 0xbf38, 0xbf39, 0xbf3a, 0xbf3b, 0xbf3c, 0xbf3d, 0xbf3e, 0xbf3f,
- 0xbf40, 0xbf41, 0xbf42, 0xbf43, 0xbf44, 0xbf45, 0xbf46, 0xbf47, /* 0xbf40 */
- 0xbf48, 0xbf49, 0xbf4a, 0xbf4b, 0xbf4c, 0xbf4d, 0xbf4e, 0xbf4f,
- 0xbf50, 0xbf51, 0xbf52, 0xbf53, 0xbf54, 0xbf55, 0xbf56, 0xbf57,
- 0xbf58, 0xbf59, 0xbf5a, 0xbf5b, 0xbf5c, 0xbf5d, 0xbf5e, 0xbf5f,
- 0xbf60, 0xbf61, 0xbf62, 0xbf63, 0xbf64, 0xbf65, 0xbf66, 0xbf67,
- 0xbf68, 0xbf69, 0xbf6a, 0xbf6b, 0xbf6c, 0xbf6d, 0xbf6e, 0xbf6f,
- 0xbf70, 0xbf71, 0xbf72, 0xbf73, 0xbf74, 0xbf75, 0xbf76, 0xbf77,
- 0xbf78, 0xbf79, 0xbf7a, 0xbf7b, 0xbf7c, 0xbf7d, 0xbf7e, 0xbf7f,
- 0xbf80, 0xbf81, 0xbf82, 0xbf83, 0xbf84, 0xbf85, 0xbf86, 0xbf87, /* 0xbf80 */
- 0xbf88, 0xbf89, 0xbf8a, 0xbf8b, 0xbf8c, 0xbf8d, 0xbf8e, 0xbf8f,
- 0xbf90, 0xbf91, 0xbf92, 0xbf93, 0xbf94, 0xbf95, 0xbf96, 0xbf97,
- 0xbf98, 0xbf99, 0xbf9a, 0xbf9b, 0xbf9c, 0xbf9d, 0xbf9e, 0xbf9f,
- 0xbfa0, 0xbfa1, 0xbfa2, 0xbfa3, 0xbfa4, 0xbfa5, 0xbfa6, 0xbfa7,
- 0xbfa8, 0xbfa9, 0xbfaa, 0xbfab, 0xbfac, 0xbfad, 0xbfae, 0xbfaf,
- 0xbfb0, 0xbfb1, 0xbfb2, 0xbfb3, 0xbfb4, 0xbfb5, 0xbfb6, 0xbfb7,
- 0xbfb8, 0xbfb9, 0xbfba, 0xbfbb, 0xbfbc, 0xbfbd, 0xbfbe, 0xbfbf,
- 0xbfc0, 0xbfc1, 0xbfc2, 0xbfc3, 0xbfc4, 0xbfc5, 0xbfc6, 0xbfc7, /* 0xbfc0 */
- 0xbfc8, 0xbfc9, 0xbfca, 0xbfcb, 0xbfcc, 0xbfcd, 0xbfce, 0xbfcf,
- 0xbfd0, 0xbfd1, 0xbfd2, 0xbfd3, 0xbfd4, 0xbfd5, 0xbfd6, 0xbfd7,
- 0xbfd8, 0xbfd9, 0xbfda, 0xbfdb, 0xbfdc, 0xbfdd, 0xbfde, 0xbfdf,
- 0xbfe0, 0xbfe1, 0xbfe2, 0xbfe3, 0xbfe4, 0xbfe5, 0xbfe6, 0xbfe7,
- 0xbfe8, 0xbfe9, 0xbfea, 0xbfeb, 0xbfec, 0xbfed, 0xbfee, 0xbfef,
- 0xbff0, 0xbff1, 0xbff2, 0xbff3, 0xbff4, 0xbff5, 0xbff6, 0xbff7,
- 0xbff8, 0xbff9, 0xbffa, 0xbffb, 0xbffc, 0xbffd, 0xbffe, 0xbfff,
- 0xc000, 0xc001, 0xc002, 0xc003, 0xc004, 0xc005, 0xc006, 0xc007, /* 0xc000 */
- 0xc008, 0xc009, 0xc00a, 0xc00b, 0xc00c, 0xc00d, 0xc00e, 0xc00f,
- 0xc010, 0xc011, 0xc012, 0xc013, 0xc014, 0xc015, 0xc016, 0xc017,
- 0xc018, 0xc019, 0xc01a, 0xc01b, 0xc01c, 0xc01d, 0xc01e, 0xc01f,
- 0xc020, 0xc021, 0xc022, 0xc023, 0xc024, 0xc025, 0xc026, 0xc027,
- 0xc028, 0xc029, 0xc02a, 0xc02b, 0xc02c, 0xc02d, 0xc02e, 0xc02f,
- 0xc030, 0xc031, 0xc032, 0xc033, 0xc034, 0xc035, 0xc036, 0xc037,
- 0xc038, 0xc039, 0xc03a, 0xc03b, 0xc03c, 0xc03d, 0xc03e, 0xc03f,
- 0xc040, 0xc041, 0xc042, 0xc043, 0xc044, 0xc045, 0xc046, 0xc047, /* 0xc040 */
- 0xc048, 0xc049, 0xc04a, 0xc04b, 0xc04c, 0xc04d, 0xc04e, 0xc04f,
- 0xc050, 0xc051, 0xc052, 0xc053, 0xc054, 0xc055, 0xc056, 0xc057,
- 0xc058, 0xc059, 0xc05a, 0xc05b, 0xc05c, 0xc05d, 0xc05e, 0xc05f,
- 0xc060, 0xc061, 0xc062, 0xc063, 0xc064, 0xc065, 0xc066, 0xc067,
- 0xc068, 0xc069, 0xc06a, 0xc06b, 0xc06c, 0xc06d, 0xc06e, 0xc06f,
- 0xc070, 0xc071, 0xc072, 0xc073, 0xc074, 0xc075, 0xc076, 0xc077,
- 0xc078, 0xc079, 0xc07a, 0xc07b, 0xc07c, 0xc07d, 0xc07e, 0xc07f,
- 0xc080, 0xc081, 0xc082, 0xc083, 0xc084, 0xc085, 0xc086, 0xc087, /* 0xc080 */
- 0xc088, 0xc089, 0xc08a, 0xc08b, 0xc08c, 0xc08d, 0xc08e, 0xc08f,
- 0xc090, 0xc091, 0xc092, 0xc093, 0xc094, 0xc095, 0xc096, 0xc097,
- 0xc098, 0xc099, 0xc09a, 0xc09b, 0xc09c, 0xc09d, 0xc09e, 0xc09f,
- 0xc0a0, 0xc0a1, 0xc0a2, 0xc0a3, 0xc0a4, 0xc0a5, 0xc0a6, 0xc0a7,
- 0xc0a8, 0xc0a9, 0xc0aa, 0xc0ab, 0xc0ac, 0xc0ad, 0xc0ae, 0xc0af,
- 0xc0b0, 0xc0b1, 0xc0b2, 0xc0b3, 0xc0b4, 0xc0b5, 0xc0b6, 0xc0b7,
- 0xc0b8, 0xc0b9, 0xc0ba, 0xc0bb, 0xc0bc, 0xc0bd, 0xc0be, 0xc0bf,
- 0xc0c0, 0xc0c1, 0xc0c2, 0xc0c3, 0xc0c4, 0xc0c5, 0xc0c6, 0xc0c7, /* 0xc0c0 */
- 0xc0c8, 0xc0c9, 0xc0ca, 0xc0cb, 0xc0cc, 0xc0cd, 0xc0ce, 0xc0cf,
- 0xc0d0, 0xc0d1, 0xc0d2, 0xc0d3, 0xc0d4, 0xc0d5, 0xc0d6, 0xc0d7,
- 0xc0d8, 0xc0d9, 0xc0da, 0xc0db, 0xc0dc, 0xc0dd, 0xc0de, 0xc0df,
- 0xc0e0, 0xc0e1, 0xc0e2, 0xc0e3, 0xc0e4, 0xc0e5, 0xc0e6, 0xc0e7,
- 0xc0e8, 0xc0e9, 0xc0ea, 0xc0eb, 0xc0ec, 0xc0ed, 0xc0ee, 0xc0ef,
- 0xc0f0, 0xc0f1, 0xc0f2, 0xc0f3, 0xc0f4, 0xc0f5, 0xc0f6, 0xc0f7,
- 0xc0f8, 0xc0f9, 0xc0fa, 0xc0fb, 0xc0fc, 0xc0fd, 0xc0fe, 0xc0ff,
- 0xc100, 0xc101, 0xc102, 0xc103, 0xc104, 0xc105, 0xc106, 0xc107, /* 0xc100 */
- 0xc108, 0xc109, 0xc10a, 0xc10b, 0xc10c, 0xc10d, 0xc10e, 0xc10f,
- 0xc110, 0xc111, 0xc112, 0xc113, 0xc114, 0xc115, 0xc116, 0xc117,
- 0xc118, 0xc119, 0xc11a, 0xc11b, 0xc11c, 0xc11d, 0xc11e, 0xc11f,
- 0xc120, 0xc121, 0xc122, 0xc123, 0xc124, 0xc125, 0xc126, 0xc127,
- 0xc128, 0xc129, 0xc12a, 0xc12b, 0xc12c, 0xc12d, 0xc12e, 0xc12f,
- 0xc130, 0xc131, 0xc132, 0xc133, 0xc134, 0xc135, 0xc136, 0xc137,
- 0xc138, 0xc139, 0xc13a, 0xc13b, 0xc13c, 0xc13d, 0xc13e, 0xc13f,
- 0xc140, 0xc141, 0xc142, 0xc143, 0xc144, 0xc145, 0xc146, 0xc147, /* 0xc140 */
- 0xc148, 0xc149, 0xc14a, 0xc14b, 0xc14c, 0xc14d, 0xc14e, 0xc14f,
- 0xc150, 0xc151, 0xc152, 0xc153, 0xc154, 0xc155, 0xc156, 0xc157,
- 0xc158, 0xc159, 0xc15a, 0xc15b, 0xc15c, 0xc15d, 0xc15e, 0xc15f,
- 0xc160, 0xc161, 0xc162, 0xc163, 0xc164, 0xc165, 0xc166, 0xc167,
- 0xc168, 0xc169, 0xc16a, 0xc16b, 0xc16c, 0xc16d, 0xc16e, 0xc16f,
- 0xc170, 0xc171, 0xc172, 0xc173, 0xc174, 0xc175, 0xc176, 0xc177,
- 0xc178, 0xc179, 0xc17a, 0xc17b, 0xc17c, 0xc17d, 0xc17e, 0xc17f,
- 0xc180, 0xc181, 0xc182, 0xc183, 0xc184, 0xc185, 0xc186, 0xc187, /* 0xc180 */
- 0xc188, 0xc189, 0xc18a, 0xc18b, 0xc18c, 0xc18d, 0xc18e, 0xc18f,
- 0xc190, 0xc191, 0xc192, 0xc193, 0xc194, 0xc195, 0xc196, 0xc197,
- 0xc198, 0xc199, 0xc19a, 0xc19b, 0xc19c, 0xc19d, 0xc19e, 0xc19f,
- 0xc1a0, 0xc1a1, 0xc1a2, 0xc1a3, 0xc1a4, 0xc1a5, 0xc1a6, 0xc1a7,
- 0xc1a8, 0xc1a9, 0xc1aa, 0xc1ab, 0xc1ac, 0xc1ad, 0xc1ae, 0xc1af,
- 0xc1b0, 0xc1b1, 0xc1b2, 0xc1b3, 0xc1b4, 0xc1b5, 0xc1b6, 0xc1b7,
- 0xc1b8, 0xc1b9, 0xc1ba, 0xc1bb, 0xc1bc, 0xc1bd, 0xc1be, 0xc1bf,
- 0xc1c0, 0xc1c1, 0xc1c2, 0xc1c3, 0xc1c4, 0xc1c5, 0xc1c6, 0xc1c7, /* 0xc1c0 */
- 0xc1c8, 0xc1c9, 0xc1ca, 0xc1cb, 0xc1cc, 0xc1cd, 0xc1ce, 0xc1cf,
- 0xc1d0, 0xc1d1, 0xc1d2, 0xc1d3, 0xc1d4, 0xc1d5, 0xc1d6, 0xc1d7,
- 0xc1d8, 0xc1d9, 0xc1da, 0xc1db, 0xc1dc, 0xc1dd, 0xc1de, 0xc1df,
- 0xc1e0, 0xc1e1, 0xc1e2, 0xc1e3, 0xc1e4, 0xc1e5, 0xc1e6, 0xc1e7,
- 0xc1e8, 0xc1e9, 0xc1ea, 0xc1eb, 0xc1ec, 0xc1ed, 0xc1ee, 0xc1ef,
- 0xc1f0, 0xc1f1, 0xc1f2, 0xc1f3, 0xc1f4, 0xc1f5, 0xc1f6, 0xc1f7,
- 0xc1f8, 0xc1f9, 0xc1fa, 0xc1fb, 0xc1fc, 0xc1fd, 0xc1fe, 0xc1ff,
- 0xc200, 0xc201, 0xc202, 0xc203, 0xc204, 0xc205, 0xc206, 0xc207, /* 0xc200 */
- 0xc208, 0xc209, 0xc20a, 0xc20b, 0xc20c, 0xc20d, 0xc20e, 0xc20f,
- 0xc210, 0xc211, 0xc212, 0xc213, 0xc214, 0xc215, 0xc216, 0xc217,
- 0xc218, 0xc219, 0xc21a, 0xc21b, 0xc21c, 0xc21d, 0xc21e, 0xc21f,
- 0xc220, 0xc221, 0xc222, 0xc223, 0xc224, 0xc225, 0xc226, 0xc227,
- 0xc228, 0xc229, 0xc22a, 0xc22b, 0xc22c, 0xc22d, 0xc22e, 0xc22f,
- 0xc230, 0xc231, 0xc232, 0xc233, 0xc234, 0xc235, 0xc236, 0xc237,
- 0xc238, 0xc239, 0xc23a, 0xc23b, 0xc23c, 0xc23d, 0xc23e, 0xc23f,
- 0xc240, 0xc241, 0xc242, 0xc243, 0xc244, 0xc245, 0xc246, 0xc247, /* 0xc240 */
- 0xc248, 0xc249, 0xc24a, 0xc24b, 0xc24c, 0xc24d, 0xc24e, 0xc24f,
- 0xc250, 0xc251, 0xc252, 0xc253, 0xc254, 0xc255, 0xc256, 0xc257,
- 0xc258, 0xc259, 0xc25a, 0xc25b, 0xc25c, 0xc25d, 0xc25e, 0xc25f,
- 0xc260, 0xc261, 0xc262, 0xc263, 0xc264, 0xc265, 0xc266, 0xc267,
- 0xc268, 0xc269, 0xc26a, 0xc26b, 0xc26c, 0xc26d, 0xc26e, 0xc26f,
- 0xc270, 0xc271, 0xc272, 0xc273, 0xc274, 0xc275, 0xc276, 0xc277,
- 0xc278, 0xc279, 0xc27a, 0xc27b, 0xc27c, 0xc27d, 0xc27e, 0xc27f,
- 0xc280, 0xc281, 0xc282, 0xc283, 0xc284, 0xc285, 0xc286, 0xc287, /* 0xc280 */
- 0xc288, 0xc289, 0xc28a, 0xc28b, 0xc28c, 0xc28d, 0xc28e, 0xc28f,
- 0xc290, 0xc291, 0xc292, 0xc293, 0xc294, 0xc295, 0xc296, 0xc297,
- 0xc298, 0xc299, 0xc29a, 0xc29b, 0xc29c, 0xc29d, 0xc29e, 0xc29f,
- 0xc2a0, 0xc2a1, 0xc2a2, 0xc2a3, 0xc2a4, 0xc2a5, 0xc2a6, 0xc2a7,
- 0xc2a8, 0xc2a9, 0xc2aa, 0xc2ab, 0xc2ac, 0xc2ad, 0xc2ae, 0xc2af,
- 0xc2b0, 0xc2b1, 0xc2b2, 0xc2b3, 0xc2b4, 0xc2b5, 0xc2b6, 0xc2b7,
- 0xc2b8, 0xc2b9, 0xc2ba, 0xc2bb, 0xc2bc, 0xc2bd, 0xc2be, 0xc2bf,
- 0xc2c0, 0xc2c1, 0xc2c2, 0xc2c3, 0xc2c4, 0xc2c5, 0xc2c6, 0xc2c7, /* 0xc2c0 */
- 0xc2c8, 0xc2c9, 0xc2ca, 0xc2cb, 0xc2cc, 0xc2cd, 0xc2ce, 0xc2cf,
- 0xc2d0, 0xc2d1, 0xc2d2, 0xc2d3, 0xc2d4, 0xc2d5, 0xc2d6, 0xc2d7,
- 0xc2d8, 0xc2d9, 0xc2da, 0xc2db, 0xc2dc, 0xc2dd, 0xc2de, 0xc2df,
- 0xc2e0, 0xc2e1, 0xc2e2, 0xc2e3, 0xc2e4, 0xc2e5, 0xc2e6, 0xc2e7,
- 0xc2e8, 0xc2e9, 0xc2ea, 0xc2eb, 0xc2ec, 0xc2ed, 0xc2ee, 0xc2ef,
- 0xc2f0, 0xc2f1, 0xc2f2, 0xc2f3, 0xc2f4, 0xc2f5, 0xc2f6, 0xc2f7,
- 0xc2f8, 0xc2f9, 0xc2fa, 0xc2fb, 0xc2fc, 0xc2fd, 0xc2fe, 0xc2ff,
- 0xc300, 0xc301, 0xc302, 0xc303, 0xc304, 0xc305, 0xc306, 0xc307, /* 0xc300 */
- 0xc308, 0xc309, 0xc30a, 0xc30b, 0xc30c, 0xc30d, 0xc30e, 0xc30f,
- 0xc310, 0xc311, 0xc312, 0xc313, 0xc314, 0xc315, 0xc316, 0xc317,
- 0xc318, 0xc319, 0xc31a, 0xc31b, 0xc31c, 0xc31d, 0xc31e, 0xc31f,
- 0xc320, 0xc321, 0xc322, 0xc323, 0xc324, 0xc325, 0xc326, 0xc327,
- 0xc328, 0xc329, 0xc32a, 0xc32b, 0xc32c, 0xc32d, 0xc32e, 0xc32f,
- 0xc330, 0xc331, 0xc332, 0xc333, 0xc334, 0xc335, 0xc336, 0xc337,
- 0xc338, 0xc339, 0xc33a, 0xc33b, 0xc33c, 0xc33d, 0xc33e, 0xc33f,
- 0xc340, 0xc341, 0xc342, 0xc343, 0xc344, 0xc345, 0xc346, 0xc347, /* 0xc340 */
- 0xc348, 0xc349, 0xc34a, 0xc34b, 0xc34c, 0xc34d, 0xc34e, 0xc34f,
- 0xc350, 0xc351, 0xc352, 0xc353, 0xc354, 0xc355, 0xc356, 0xc357,
- 0xc358, 0xc359, 0xc35a, 0xc35b, 0xc35c, 0xc35d, 0xc35e, 0xc35f,
- 0xc360, 0xc361, 0xc362, 0xc363, 0xc364, 0xc365, 0xc366, 0xc367,
- 0xc368, 0xc369, 0xc36a, 0xc36b, 0xc36c, 0xc36d, 0xc36e, 0xc36f,
- 0xc370, 0xc371, 0xc372, 0xc373, 0xc374, 0xc375, 0xc376, 0xc377,
- 0xc378, 0xc379, 0xc37a, 0xc37b, 0xc37c, 0xc37d, 0xc37e, 0xc37f,
- 0xc380, 0xc381, 0xc382, 0xc383, 0xc384, 0xc385, 0xc386, 0xc387, /* 0xc380 */
- 0xc388, 0xc389, 0xc38a, 0xc38b, 0xc38c, 0xc38d, 0xc38e, 0xc38f,
- 0xc390, 0xc391, 0xc392, 0xc393, 0xc394, 0xc395, 0xc396, 0xc397,
- 0xc398, 0xc399, 0xc39a, 0xc39b, 0xc39c, 0xc39d, 0xc39e, 0xc39f,
- 0xc3a0, 0xc3a1, 0xc3a2, 0xc3a3, 0xc3a4, 0xc3a5, 0xc3a6, 0xc3a7,
- 0xc3a8, 0xc3a9, 0xc3aa, 0xc3ab, 0xc3ac, 0xc3ad, 0xc3ae, 0xc3af,
- 0xc3b0, 0xc3b1, 0xc3b2, 0xc3b3, 0xc3b4, 0xc3b5, 0xc3b6, 0xc3b7,
- 0xc3b8, 0xc3b9, 0xc3ba, 0xc3bb, 0xc3bc, 0xc3bd, 0xc3be, 0xc3bf,
- 0xc3c0, 0xc3c1, 0xc3c2, 0xc3c3, 0xc3c4, 0xc3c5, 0xc3c6, 0xc3c7, /* 0xc3c0 */
- 0xc3c8, 0xc3c9, 0xc3ca, 0xc3cb, 0xc3cc, 0xc3cd, 0xc3ce, 0xc3cf,
- 0xc3d0, 0xc3d1, 0xc3d2, 0xc3d3, 0xc3d4, 0xc3d5, 0xc3d6, 0xc3d7,
- 0xc3d8, 0xc3d9, 0xc3da, 0xc3db, 0xc3dc, 0xc3dd, 0xc3de, 0xc3df,
- 0xc3e0, 0xc3e1, 0xc3e2, 0xc3e3, 0xc3e4, 0xc3e5, 0xc3e6, 0xc3e7,
- 0xc3e8, 0xc3e9, 0xc3ea, 0xc3eb, 0xc3ec, 0xc3ed, 0xc3ee, 0xc3ef,
- 0xc3f0, 0xc3f1, 0xc3f2, 0xc3f3, 0xc3f4, 0xc3f5, 0xc3f6, 0xc3f7,
- 0xc3f8, 0xc3f9, 0xc3fa, 0xc3fb, 0xc3fc, 0xc3fd, 0xc3fe, 0xc3ff,
- 0xc400, 0xc401, 0xc402, 0xc403, 0xc404, 0xc405, 0xc406, 0xc407, /* 0xc400 */
- 0xc408, 0xc409, 0xc40a, 0xc40b, 0xc40c, 0xc40d, 0xc40e, 0xc40f,
- 0xc410, 0xc411, 0xc412, 0xc413, 0xc414, 0xc415, 0xc416, 0xc417,
- 0xc418, 0xc419, 0xc41a, 0xc41b, 0xc41c, 0xc41d, 0xc41e, 0xc41f,
- 0xc420, 0xc421, 0xc422, 0xc423, 0xc424, 0xc425, 0xc426, 0xc427,
- 0xc428, 0xc429, 0xc42a, 0xc42b, 0xc42c, 0xc42d, 0xc42e, 0xc42f,
- 0xc430, 0xc431, 0xc432, 0xc433, 0xc434, 0xc435, 0xc436, 0xc437,
- 0xc438, 0xc439, 0xc43a, 0xc43b, 0xc43c, 0xc43d, 0xc43e, 0xc43f,
- 0xc440, 0xc441, 0xc442, 0xc443, 0xc444, 0xc445, 0xc446, 0xc447, /* 0xc440 */
- 0xc448, 0xc449, 0xc44a, 0xc44b, 0xc44c, 0xc44d, 0xc44e, 0xc44f,
- 0xc450, 0xc451, 0xc452, 0xc453, 0xc454, 0xc455, 0xc456, 0xc457,
- 0xc458, 0xc459, 0xc45a, 0xc45b, 0xc45c, 0xc45d, 0xc45e, 0xc45f,
- 0xc460, 0xc461, 0xc462, 0xc463, 0xc464, 0xc465, 0xc466, 0xc467,
- 0xc468, 0xc469, 0xc46a, 0xc46b, 0xc46c, 0xc46d, 0xc46e, 0xc46f,
- 0xc470, 0xc471, 0xc472, 0xc473, 0xc474, 0xc475, 0xc476, 0xc477,
- 0xc478, 0xc479, 0xc47a, 0xc47b, 0xc47c, 0xc47d, 0xc47e, 0xc47f,
- 0xc480, 0xc481, 0xc482, 0xc483, 0xc484, 0xc485, 0xc486, 0xc487, /* 0xc480 */
- 0xc488, 0xc489, 0xc48a, 0xc48b, 0xc48c, 0xc48d, 0xc48e, 0xc48f,
- 0xc490, 0xc491, 0xc492, 0xc493, 0xc494, 0xc495, 0xc496, 0xc497,
- 0xc498, 0xc499, 0xc49a, 0xc49b, 0xc49c, 0xc49d, 0xc49e, 0xc49f,
- 0xc4a0, 0xc4a1, 0xc4a2, 0xc4a3, 0xc4a4, 0xc4a5, 0xc4a6, 0xc4a7,
- 0xc4a8, 0xc4a9, 0xc4aa, 0xc4ab, 0xc4ac, 0xc4ad, 0xc4ae, 0xc4af,
- 0xc4b0, 0xc4b1, 0xc4b2, 0xc4b3, 0xc4b4, 0xc4b5, 0xc4b6, 0xc4b7,
- 0xc4b8, 0xc4b9, 0xc4ba, 0xc4bb, 0xc4bc, 0xc4bd, 0xc4be, 0xc4bf,
- 0xc4c0, 0xc4c1, 0xc4c2, 0xc4c3, 0xc4c4, 0xc4c5, 0xc4c6, 0xc4c7, /* 0xc4c0 */
- 0xc4c8, 0xc4c9, 0xc4ca, 0xc4cb, 0xc4cc, 0xc4cd, 0xc4ce, 0xc4cf,
- 0xc4d0, 0xc4d1, 0xc4d2, 0xc4d3, 0xc4d4, 0xc4d5, 0xc4d6, 0xc4d7,
- 0xc4d8, 0xc4d9, 0xc4da, 0xc4db, 0xc4dc, 0xc4dd, 0xc4de, 0xc4df,
- 0xc4e0, 0xc4e1, 0xc4e2, 0xc4e3, 0xc4e4, 0xc4e5, 0xc4e6, 0xc4e7,
- 0xc4e8, 0xc4e9, 0xc4ea, 0xc4eb, 0xc4ec, 0xc4ed, 0xc4ee, 0xc4ef,
- 0xc4f0, 0xc4f1, 0xc4f2, 0xc4f3, 0xc4f4, 0xc4f5, 0xc4f6, 0xc4f7,
- 0xc4f8, 0xc4f9, 0xc4fa, 0xc4fb, 0xc4fc, 0xc4fd, 0xc4fe, 0xc4ff,
- 0xc500, 0xc501, 0xc502, 0xc503, 0xc504, 0xc505, 0xc506, 0xc507, /* 0xc500 */
- 0xc508, 0xc509, 0xc50a, 0xc50b, 0xc50c, 0xc50d, 0xc50e, 0xc50f,
- 0xc510, 0xc511, 0xc512, 0xc513, 0xc514, 0xc515, 0xc516, 0xc517,
- 0xc518, 0xc519, 0xc51a, 0xc51b, 0xc51c, 0xc51d, 0xc51e, 0xc51f,
- 0xc520, 0xc521, 0xc522, 0xc523, 0xc524, 0xc525, 0xc526, 0xc527,
- 0xc528, 0xc529, 0xc52a, 0xc52b, 0xc52c, 0xc52d, 0xc52e, 0xc52f,
- 0xc530, 0xc531, 0xc532, 0xc533, 0xc534, 0xc535, 0xc536, 0xc537,
- 0xc538, 0xc539, 0xc53a, 0xc53b, 0xc53c, 0xc53d, 0xc53e, 0xc53f,
- 0xc540, 0xc541, 0xc542, 0xc543, 0xc544, 0xc545, 0xc546, 0xc547, /* 0xc540 */
- 0xc548, 0xc549, 0xc54a, 0xc54b, 0xc54c, 0xc54d, 0xc54e, 0xc54f,
- 0xc550, 0xc551, 0xc552, 0xc553, 0xc554, 0xc555, 0xc556, 0xc557,
- 0xc558, 0xc559, 0xc55a, 0xc55b, 0xc55c, 0xc55d, 0xc55e, 0xc55f,
- 0xc560, 0xc561, 0xc562, 0xc563, 0xc564, 0xc565, 0xc566, 0xc567,
- 0xc568, 0xc569, 0xc56a, 0xc56b, 0xc56c, 0xc56d, 0xc56e, 0xc56f,
- 0xc570, 0xc571, 0xc572, 0xc573, 0xc574, 0xc575, 0xc576, 0xc577,
- 0xc578, 0xc579, 0xc57a, 0xc57b, 0xc57c, 0xc57d, 0xc57e, 0xc57f,
- 0xc580, 0xc581, 0xc582, 0xc583, 0xc584, 0xc585, 0xc586, 0xc587, /* 0xc580 */
- 0xc588, 0xc589, 0xc58a, 0xc58b, 0xc58c, 0xc58d, 0xc58e, 0xc58f,
- 0xc590, 0xc591, 0xc592, 0xc593, 0xc594, 0xc595, 0xc596, 0xc597,
- 0xc598, 0xc599, 0xc59a, 0xc59b, 0xc59c, 0xc59d, 0xc59e, 0xc59f,
- 0xc5a0, 0xc5a1, 0xc5a2, 0xc5a3, 0xc5a4, 0xc5a5, 0xc5a6, 0xc5a7,
- 0xc5a8, 0xc5a9, 0xc5aa, 0xc5ab, 0xc5ac, 0xc5ad, 0xc5ae, 0xc5af,
- 0xc5b0, 0xc5b1, 0xc5b2, 0xc5b3, 0xc5b4, 0xc5b5, 0xc5b6, 0xc5b7,
- 0xc5b8, 0xc5b9, 0xc5ba, 0xc5bb, 0xc5bc, 0xc5bd, 0xc5be, 0xc5bf,
- 0xc5c0, 0xc5c1, 0xc5c2, 0xc5c3, 0xc5c4, 0xc5c5, 0xc5c6, 0xc5c7, /* 0xc5c0 */
- 0xc5c8, 0xc5c9, 0xc5ca, 0xc5cb, 0xc5cc, 0xc5cd, 0xc5ce, 0xc5cf,
- 0xc5d0, 0xc5d1, 0xc5d2, 0xc5d3, 0xc5d4, 0xc5d5, 0xc5d6, 0xc5d7,
- 0xc5d8, 0xc5d9, 0xc5da, 0xc5db, 0xc5dc, 0xc5dd, 0xc5de, 0xc5df,
- 0xc5e0, 0xc5e1, 0xc5e2, 0xc5e3, 0xc5e4, 0xc5e5, 0xc5e6, 0xc5e7,
- 0xc5e8, 0xc5e9, 0xc5ea, 0xc5eb, 0xc5ec, 0xc5ed, 0xc5ee, 0xc5ef,
- 0xc5f0, 0xc5f1, 0xc5f2, 0xc5f3, 0xc5f4, 0xc5f5, 0xc5f6, 0xc5f7,
- 0xc5f8, 0xc5f9, 0xc5fa, 0xc5fb, 0xc5fc, 0xc5fd, 0xc5fe, 0xc5ff,
- 0xc600, 0xc601, 0xc602, 0xc603, 0xc604, 0xc605, 0xc606, 0xc607, /* 0xc600 */
- 0xc608, 0xc609, 0xc60a, 0xc60b, 0xc60c, 0xc60d, 0xc60e, 0xc60f,
- 0xc610, 0xc611, 0xc612, 0xc613, 0xc614, 0xc615, 0xc616, 0xc617,
- 0xc618, 0xc619, 0xc61a, 0xc61b, 0xc61c, 0xc61d, 0xc61e, 0xc61f,
- 0xc620, 0xc621, 0xc622, 0xc623, 0xc624, 0xc625, 0xc626, 0xc627,
- 0xc628, 0xc629, 0xc62a, 0xc62b, 0xc62c, 0xc62d, 0xc62e, 0xc62f,
- 0xc630, 0xc631, 0xc632, 0xc633, 0xc634, 0xc635, 0xc636, 0xc637,
- 0xc638, 0xc639, 0xc63a, 0xc63b, 0xc63c, 0xc63d, 0xc63e, 0xc63f,
- 0xc640, 0xc641, 0xc642, 0xc643, 0xc644, 0xc645, 0xc646, 0xc647, /* 0xc640 */
- 0xc648, 0xc649, 0xc64a, 0xc64b, 0xc64c, 0xc64d, 0xc64e, 0xc64f,
- 0xc650, 0xc651, 0xc652, 0xc653, 0xc654, 0xc655, 0xc656, 0xc657,
- 0xc658, 0xc659, 0xc65a, 0xc65b, 0xc65c, 0xc65d, 0xc65e, 0xc65f,
- 0xc660, 0xc661, 0xc662, 0xc663, 0xc664, 0xc665, 0xc666, 0xc667,
- 0xc668, 0xc669, 0xc66a, 0xc66b, 0xc66c, 0xc66d, 0xc66e, 0xc66f,
- 0xc670, 0xc671, 0xc672, 0xc673, 0xc674, 0xc675, 0xc676, 0xc677,
- 0xc678, 0xc679, 0xc67a, 0xc67b, 0xc67c, 0xc67d, 0xc67e, 0xc67f,
- 0xc680, 0xc681, 0xc682, 0xc683, 0xc684, 0xc685, 0xc686, 0xc687, /* 0xc680 */
- 0xc688, 0xc689, 0xc68a, 0xc68b, 0xc68c, 0xc68d, 0xc68e, 0xc68f,
- 0xc690, 0xc691, 0xc692, 0xc693, 0xc694, 0xc695, 0xc696, 0xc697,
- 0xc698, 0xc699, 0xc69a, 0xc69b, 0xc69c, 0xc69d, 0xc69e, 0xc69f,
- 0xc6a0, 0xc6a1, 0xc6a2, 0xc6a3, 0xc6a4, 0xc6a5, 0xc6a6, 0xc6a7,
- 0xc6a8, 0xc6a9, 0xc6aa, 0xc6ab, 0xc6ac, 0xc6ad, 0xc6ae, 0xc6af,
- 0xc6b0, 0xc6b1, 0xc6b2, 0xc6b3, 0xc6b4, 0xc6b5, 0xc6b6, 0xc6b7,
- 0xc6b8, 0xc6b9, 0xc6ba, 0xc6bb, 0xc6bc, 0xc6bd, 0xc6be, 0xc6bf,
- 0xc6c0, 0xc6c1, 0xc6c2, 0xc6c3, 0xc6c4, 0xc6c5, 0xc6c6, 0xc6c7, /* 0xc6c0 */
- 0xc6c8, 0xc6c9, 0xc6ca, 0xc6cb, 0xc6cc, 0xc6cd, 0xc6ce, 0xc6cf,
- 0xc6d0, 0xc6d1, 0xc6d2, 0xc6d3, 0xc6d4, 0xc6d5, 0xc6d6, 0xc6d7,
- 0xc6d8, 0xc6d9, 0xc6da, 0xc6db, 0xc6dc, 0xc6dd, 0xc6de, 0xc6df,
- 0xc6e0, 0xc6e1, 0xc6e2, 0xc6e3, 0xc6e4, 0xc6e5, 0xc6e6, 0xc6e7,
- 0xc6e8, 0xc6e9, 0xc6ea, 0xc6eb, 0xc6ec, 0xc6ed, 0xc6ee, 0xc6ef,
- 0xc6f0, 0xc6f1, 0xc6f2, 0xc6f3, 0xc6f4, 0xc6f5, 0xc6f6, 0xc6f7,
- 0xc6f8, 0xc6f9, 0xc6fa, 0xc6fb, 0xc6fc, 0xc6fd, 0xc6fe, 0xc6ff,
- 0xc700, 0xc701, 0xc702, 0xc703, 0xc704, 0xc705, 0xc706, 0xc707, /* 0xc700 */
- 0xc708, 0xc709, 0xc70a, 0xc70b, 0xc70c, 0xc70d, 0xc70e, 0xc70f,
- 0xc710, 0xc711, 0xc712, 0xc713, 0xc714, 0xc715, 0xc716, 0xc717,
- 0xc718, 0xc719, 0xc71a, 0xc71b, 0xc71c, 0xc71d, 0xc71e, 0xc71f,
- 0xc720, 0xc721, 0xc722, 0xc723, 0xc724, 0xc725, 0xc726, 0xc727,
- 0xc728, 0xc729, 0xc72a, 0xc72b, 0xc72c, 0xc72d, 0xc72e, 0xc72f,
- 0xc730, 0xc731, 0xc732, 0xc733, 0xc734, 0xc735, 0xc736, 0xc737,
- 0xc738, 0xc739, 0xc73a, 0xc73b, 0xc73c, 0xc73d, 0xc73e, 0xc73f,
- 0xc740, 0xc741, 0xc742, 0xc743, 0xc744, 0xc745, 0xc746, 0xc747, /* 0xc740 */
- 0xc748, 0xc749, 0xc74a, 0xc74b, 0xc74c, 0xc74d, 0xc74e, 0xc74f,
- 0xc750, 0xc751, 0xc752, 0xc753, 0xc754, 0xc755, 0xc756, 0xc757,
- 0xc758, 0xc759, 0xc75a, 0xc75b, 0xc75c, 0xc75d, 0xc75e, 0xc75f,
- 0xc760, 0xc761, 0xc762, 0xc763, 0xc764, 0xc765, 0xc766, 0xc767,
- 0xc768, 0xc769, 0xc76a, 0xc76b, 0xc76c, 0xc76d, 0xc76e, 0xc76f,
- 0xc770, 0xc771, 0xc772, 0xc773, 0xc774, 0xc775, 0xc776, 0xc777,
- 0xc778, 0xc779, 0xc77a, 0xc77b, 0xc77c, 0xc77d, 0xc77e, 0xc77f,
- 0xc780, 0xc781, 0xc782, 0xc783, 0xc784, 0xc785, 0xc786, 0xc787, /* 0xc780 */
- 0xc788, 0xc789, 0xc78a, 0xc78b, 0xc78c, 0xc78d, 0xc78e, 0xc78f,
- 0xc790, 0xc791, 0xc792, 0xc793, 0xc794, 0xc795, 0xc796, 0xc797,
- 0xc798, 0xc799, 0xc79a, 0xc79b, 0xc79c, 0xc79d, 0xc79e, 0xc79f,
- 0xc7a0, 0xc7a1, 0xc7a2, 0xc7a3, 0xc7a4, 0xc7a5, 0xc7a6, 0xc7a7,
- 0xc7a8, 0xc7a9, 0xc7aa, 0xc7ab, 0xc7ac, 0xc7ad, 0xc7ae, 0xc7af,
- 0xc7b0, 0xc7b1, 0xc7b2, 0xc7b3, 0xc7b4, 0xc7b5, 0xc7b6, 0xc7b7,
- 0xc7b8, 0xc7b9, 0xc7ba, 0xc7bb, 0xc7bc, 0xc7bd, 0xc7be, 0xc7bf,
- 0xc7c0, 0xc7c1, 0xc7c2, 0xc7c3, 0xc7c4, 0xc7c5, 0xc7c6, 0xc7c7, /* 0xc7c0 */
- 0xc7c8, 0xc7c9, 0xc7ca, 0xc7cb, 0xc7cc, 0xc7cd, 0xc7ce, 0xc7cf,
- 0xc7d0, 0xc7d1, 0xc7d2, 0xc7d3, 0xc7d4, 0xc7d5, 0xc7d6, 0xc7d7,
- 0xc7d8, 0xc7d9, 0xc7da, 0xc7db, 0xc7dc, 0xc7dd, 0xc7de, 0xc7df,
- 0xc7e0, 0xc7e1, 0xc7e2, 0xc7e3, 0xc7e4, 0xc7e5, 0xc7e6, 0xc7e7,
- 0xc7e8, 0xc7e9, 0xc7ea, 0xc7eb, 0xc7ec, 0xc7ed, 0xc7ee, 0xc7ef,
- 0xc7f0, 0xc7f1, 0xc7f2, 0xc7f3, 0xc7f4, 0xc7f5, 0xc7f6, 0xc7f7,
- 0xc7f8, 0xc7f9, 0xc7fa, 0xc7fb, 0xc7fc, 0xc7fd, 0xc7fe, 0xc7ff,
- 0xc800, 0xc801, 0xc802, 0xc803, 0xc804, 0xc805, 0xc806, 0xc807, /* 0xc800 */
- 0xc808, 0xc809, 0xc80a, 0xc80b, 0xc80c, 0xc80d, 0xc80e, 0xc80f,
- 0xc810, 0xc811, 0xc812, 0xc813, 0xc814, 0xc815, 0xc816, 0xc817,
- 0xc818, 0xc819, 0xc81a, 0xc81b, 0xc81c, 0xc81d, 0xc81e, 0xc81f,
- 0xc820, 0xc821, 0xc822, 0xc823, 0xc824, 0xc825, 0xc826, 0xc827,
- 0xc828, 0xc829, 0xc82a, 0xc82b, 0xc82c, 0xc82d, 0xc82e, 0xc82f,
- 0xc830, 0xc831, 0xc832, 0xc833, 0xc834, 0xc835, 0xc836, 0xc837,
- 0xc838, 0xc839, 0xc83a, 0xc83b, 0xc83c, 0xc83d, 0xc83e, 0xc83f,
- 0xc840, 0xc841, 0xc842, 0xc843, 0xc844, 0xc845, 0xc846, 0xc847, /* 0xc840 */
- 0xc848, 0xc849, 0xc84a, 0xc84b, 0xc84c, 0xc84d, 0xc84e, 0xc84f,
- 0xc850, 0xc851, 0xc852, 0xc853, 0xc854, 0xc855, 0xc856, 0xc857,
- 0xc858, 0xc859, 0xc85a, 0xc85b, 0xc85c, 0xc85d, 0xc85e, 0xc85f,
- 0xc860, 0xc861, 0xc862, 0xc863, 0xc864, 0xc865, 0xc866, 0xc867,
- 0xc868, 0xc869, 0xc86a, 0xc86b, 0xc86c, 0xc86d, 0xc86e, 0xc86f,
- 0xc870, 0xc871, 0xc872, 0xc873, 0xc874, 0xc875, 0xc876, 0xc877,
- 0xc878, 0xc879, 0xc87a, 0xc87b, 0xc87c, 0xc87d, 0xc87e, 0xc87f,
- 0xc880, 0xc881, 0xc882, 0xc883, 0xc884, 0xc885, 0xc886, 0xc887, /* 0xc880 */
- 0xc888, 0xc889, 0xc88a, 0xc88b, 0xc88c, 0xc88d, 0xc88e, 0xc88f,
- 0xc890, 0xc891, 0xc892, 0xc893, 0xc894, 0xc895, 0xc896, 0xc897,
- 0xc898, 0xc899, 0xc89a, 0xc89b, 0xc89c, 0xc89d, 0xc89e, 0xc89f,
- 0xc8a0, 0xc8a1, 0xc8a2, 0xc8a3, 0xc8a4, 0xc8a5, 0xc8a6, 0xc8a7,
- 0xc8a8, 0xc8a9, 0xc8aa, 0xc8ab, 0xc8ac, 0xc8ad, 0xc8ae, 0xc8af,
- 0xc8b0, 0xc8b1, 0xc8b2, 0xc8b3, 0xc8b4, 0xc8b5, 0xc8b6, 0xc8b7,
- 0xc8b8, 0xc8b9, 0xc8ba, 0xc8bb, 0xc8bc, 0xc8bd, 0xc8be, 0xc8bf,
- 0xc8c0, 0xc8c1, 0xc8c2, 0xc8c3, 0xc8c4, 0xc8c5, 0xc8c6, 0xc8c7, /* 0xc8c0 */
- 0xc8c8, 0xc8c9, 0xc8ca, 0xc8cb, 0xc8cc, 0xc8cd, 0xc8ce, 0xc8cf,
- 0xc8d0, 0xc8d1, 0xc8d2, 0xc8d3, 0xc8d4, 0xc8d5, 0xc8d6, 0xc8d7,
- 0xc8d8, 0xc8d9, 0xc8da, 0xc8db, 0xc8dc, 0xc8dd, 0xc8de, 0xc8df,
- 0xc8e0, 0xc8e1, 0xc8e2, 0xc8e3, 0xc8e4, 0xc8e5, 0xc8e6, 0xc8e7,
- 0xc8e8, 0xc8e9, 0xc8ea, 0xc8eb, 0xc8ec, 0xc8ed, 0xc8ee, 0xc8ef,
- 0xc8f0, 0xc8f1, 0xc8f2, 0xc8f3, 0xc8f4, 0xc8f5, 0xc8f6, 0xc8f7,
- 0xc8f8, 0xc8f9, 0xc8fa, 0xc8fb, 0xc8fc, 0xc8fd, 0xc8fe, 0xc8ff,
- 0xc900, 0xc901, 0xc902, 0xc903, 0xc904, 0xc905, 0xc906, 0xc907, /* 0xc900 */
- 0xc908, 0xc909, 0xc90a, 0xc90b, 0xc90c, 0xc90d, 0xc90e, 0xc90f,
- 0xc910, 0xc911, 0xc912, 0xc913, 0xc914, 0xc915, 0xc916, 0xc917,
- 0xc918, 0xc919, 0xc91a, 0xc91b, 0xc91c, 0xc91d, 0xc91e, 0xc91f,
- 0xc920, 0xc921, 0xc922, 0xc923, 0xc924, 0xc925, 0xc926, 0xc927,
- 0xc928, 0xc929, 0xc92a, 0xc92b, 0xc92c, 0xc92d, 0xc92e, 0xc92f,
- 0xc930, 0xc931, 0xc932, 0xc933, 0xc934, 0xc935, 0xc936, 0xc937,
- 0xc938, 0xc939, 0xc93a, 0xc93b, 0xc93c, 0xc93d, 0xc93e, 0xc93f,
- 0xc940, 0xc941, 0xc942, 0xc943, 0xc944, 0xc945, 0xc946, 0xc947, /* 0xc940 */
- 0xc948, 0xc949, 0xc94a, 0xc94b, 0xc94c, 0xc94d, 0xc94e, 0xc94f,
- 0xc950, 0xc951, 0xc952, 0xc953, 0xc954, 0xc955, 0xc956, 0xc957,
- 0xc958, 0xc959, 0xc95a, 0xc95b, 0xc95c, 0xc95d, 0xc95e, 0xc95f,
- 0xc960, 0xc961, 0xc962, 0xc963, 0xc964, 0xc965, 0xc966, 0xc967,
- 0xc968, 0xc969, 0xc96a, 0xc96b, 0xc96c, 0xc96d, 0xc96e, 0xc96f,
- 0xc970, 0xc971, 0xc972, 0xc973, 0xc974, 0xc975, 0xc976, 0xc977,
- 0xc978, 0xc979, 0xc97a, 0xc97b, 0xc97c, 0xc97d, 0xc97e, 0xc97f,
- 0xc980, 0xc981, 0xc982, 0xc983, 0xc984, 0xc985, 0xc986, 0xc987, /* 0xc980 */
- 0xc988, 0xc989, 0xc98a, 0xc98b, 0xc98c, 0xc98d, 0xc98e, 0xc98f,
- 0xc990, 0xc991, 0xc992, 0xc993, 0xc994, 0xc995, 0xc996, 0xc997,
- 0xc998, 0xc999, 0xc99a, 0xc99b, 0xc99c, 0xc99d, 0xc99e, 0xc99f,
- 0xc9a0, 0xc9a1, 0xc9a2, 0xc9a3, 0xc9a4, 0xc9a5, 0xc9a6, 0xc9a7,
- 0xc9a8, 0xc9a9, 0xc9aa, 0xc9ab, 0xc9ac, 0xc9ad, 0xc9ae, 0xc9af,
- 0xc9b0, 0xc9b1, 0xc9b2, 0xc9b3, 0xc9b4, 0xc9b5, 0xc9b6, 0xc9b7,
- 0xc9b8, 0xc9b9, 0xc9ba, 0xc9bb, 0xc9bc, 0xc9bd, 0xc9be, 0xc9bf,
- 0xc9c0, 0xc9c1, 0xc9c2, 0xc9c3, 0xc9c4, 0xc9c5, 0xc9c6, 0xc9c7, /* 0xc9c0 */
- 0xc9c8, 0xc9c9, 0xc9ca, 0xc9cb, 0xc9cc, 0xc9cd, 0xc9ce, 0xc9cf,
- 0xc9d0, 0xc9d1, 0xc9d2, 0xc9d3, 0xc9d4, 0xc9d5, 0xc9d6, 0xc9d7,
- 0xc9d8, 0xc9d9, 0xc9da, 0xc9db, 0xc9dc, 0xc9dd, 0xc9de, 0xc9df,
- 0xc9e0, 0xc9e1, 0xc9e2, 0xc9e3, 0xc9e4, 0xc9e5, 0xc9e6, 0xc9e7,
- 0xc9e8, 0xc9e9, 0xc9ea, 0xc9eb, 0xc9ec, 0xc9ed, 0xc9ee, 0xc9ef,
- 0xc9f0, 0xc9f1, 0xc9f2, 0xc9f3, 0xc9f4, 0xc9f5, 0xc9f6, 0xc9f7,
- 0xc9f8, 0xc9f9, 0xc9fa, 0xc9fb, 0xc9fc, 0xc9fd, 0xc9fe, 0xc9ff,
- 0xca00, 0xca01, 0xca02, 0xca03, 0xca04, 0xca05, 0xca06, 0xca07, /* 0xca00 */
- 0xca08, 0xca09, 0xca0a, 0xca0b, 0xca0c, 0xca0d, 0xca0e, 0xca0f,
- 0xca10, 0xca11, 0xca12, 0xca13, 0xca14, 0xca15, 0xca16, 0xca17,
- 0xca18, 0xca19, 0xca1a, 0xca1b, 0xca1c, 0xca1d, 0xca1e, 0xca1f,
- 0xca20, 0xca21, 0xca22, 0xca23, 0xca24, 0xca25, 0xca26, 0xca27,
- 0xca28, 0xca29, 0xca2a, 0xca2b, 0xca2c, 0xca2d, 0xca2e, 0xca2f,
- 0xca30, 0xca31, 0xca32, 0xca33, 0xca34, 0xca35, 0xca36, 0xca37,
- 0xca38, 0xca39, 0xca3a, 0xca3b, 0xca3c, 0xca3d, 0xca3e, 0xca3f,
- 0xca40, 0xca41, 0xca42, 0xca43, 0xca44, 0xca45, 0xca46, 0xca47, /* 0xca40 */
- 0xca48, 0xca49, 0xca4a, 0xca4b, 0xca4c, 0xca4d, 0xca4e, 0xca4f,
- 0xca50, 0xca51, 0xca52, 0xca53, 0xca54, 0xca55, 0xca56, 0xca57,
- 0xca58, 0xca59, 0xca5a, 0xca5b, 0xca5c, 0xca5d, 0xca5e, 0xca5f,
- 0xca60, 0xca61, 0xca62, 0xca63, 0xca64, 0xca65, 0xca66, 0xca67,
- 0xca68, 0xca69, 0xca6a, 0xca6b, 0xca6c, 0xca6d, 0xca6e, 0xca6f,
- 0xca70, 0xca71, 0xca72, 0xca73, 0xca74, 0xca75, 0xca76, 0xca77,
- 0xca78, 0xca79, 0xca7a, 0xca7b, 0xca7c, 0xca7d, 0xca7e, 0xca7f,
- 0xca80, 0xca81, 0xca82, 0xca83, 0xca84, 0xca85, 0xca86, 0xca87, /* 0xca80 */
- 0xca88, 0xca89, 0xca8a, 0xca8b, 0xca8c, 0xca8d, 0xca8e, 0xca8f,
- 0xca90, 0xca91, 0xca92, 0xca93, 0xca94, 0xca95, 0xca96, 0xca97,
- 0xca98, 0xca99, 0xca9a, 0xca9b, 0xca9c, 0xca9d, 0xca9e, 0xca9f,
- 0xcaa0, 0xcaa1, 0xcaa2, 0xcaa3, 0xcaa4, 0xcaa5, 0xcaa6, 0xcaa7,
- 0xcaa8, 0xcaa9, 0xcaaa, 0xcaab, 0xcaac, 0xcaad, 0xcaae, 0xcaaf,
- 0xcab0, 0xcab1, 0xcab2, 0xcab3, 0xcab4, 0xcab5, 0xcab6, 0xcab7,
- 0xcab8, 0xcab9, 0xcaba, 0xcabb, 0xcabc, 0xcabd, 0xcabe, 0xcabf,
- 0xcac0, 0xcac1, 0xcac2, 0xcac3, 0xcac4, 0xcac5, 0xcac6, 0xcac7, /* 0xcac0 */
- 0xcac8, 0xcac9, 0xcaca, 0xcacb, 0xcacc, 0xcacd, 0xcace, 0xcacf,
- 0xcad0, 0xcad1, 0xcad2, 0xcad3, 0xcad4, 0xcad5, 0xcad6, 0xcad7,
- 0xcad8, 0xcad9, 0xcada, 0xcadb, 0xcadc, 0xcadd, 0xcade, 0xcadf,
- 0xcae0, 0xcae1, 0xcae2, 0xcae3, 0xcae4, 0xcae5, 0xcae6, 0xcae7,
- 0xcae8, 0xcae9, 0xcaea, 0xcaeb, 0xcaec, 0xcaed, 0xcaee, 0xcaef,
- 0xcaf0, 0xcaf1, 0xcaf2, 0xcaf3, 0xcaf4, 0xcaf5, 0xcaf6, 0xcaf7,
- 0xcaf8, 0xcaf9, 0xcafa, 0xcafb, 0xcafc, 0xcafd, 0xcafe, 0xcaff,
- 0xcb00, 0xcb01, 0xcb02, 0xcb03, 0xcb04, 0xcb05, 0xcb06, 0xcb07, /* 0xcb00 */
- 0xcb08, 0xcb09, 0xcb0a, 0xcb0b, 0xcb0c, 0xcb0d, 0xcb0e, 0xcb0f,
- 0xcb10, 0xcb11, 0xcb12, 0xcb13, 0xcb14, 0xcb15, 0xcb16, 0xcb17,
- 0xcb18, 0xcb19, 0xcb1a, 0xcb1b, 0xcb1c, 0xcb1d, 0xcb1e, 0xcb1f,
- 0xcb20, 0xcb21, 0xcb22, 0xcb23, 0xcb24, 0xcb25, 0xcb26, 0xcb27,
- 0xcb28, 0xcb29, 0xcb2a, 0xcb2b, 0xcb2c, 0xcb2d, 0xcb2e, 0xcb2f,
- 0xcb30, 0xcb31, 0xcb32, 0xcb33, 0xcb34, 0xcb35, 0xcb36, 0xcb37,
- 0xcb38, 0xcb39, 0xcb3a, 0xcb3b, 0xcb3c, 0xcb3d, 0xcb3e, 0xcb3f,
- 0xcb40, 0xcb41, 0xcb42, 0xcb43, 0xcb44, 0xcb45, 0xcb46, 0xcb47, /* 0xcb40 */
- 0xcb48, 0xcb49, 0xcb4a, 0xcb4b, 0xcb4c, 0xcb4d, 0xcb4e, 0xcb4f,
- 0xcb50, 0xcb51, 0xcb52, 0xcb53, 0xcb54, 0xcb55, 0xcb56, 0xcb57,
- 0xcb58, 0xcb59, 0xcb5a, 0xcb5b, 0xcb5c, 0xcb5d, 0xcb5e, 0xcb5f,
- 0xcb60, 0xcb61, 0xcb62, 0xcb63, 0xcb64, 0xcb65, 0xcb66, 0xcb67,
- 0xcb68, 0xcb69, 0xcb6a, 0xcb6b, 0xcb6c, 0xcb6d, 0xcb6e, 0xcb6f,
- 0xcb70, 0xcb71, 0xcb72, 0xcb73, 0xcb74, 0xcb75, 0xcb76, 0xcb77,
- 0xcb78, 0xcb79, 0xcb7a, 0xcb7b, 0xcb7c, 0xcb7d, 0xcb7e, 0xcb7f,
- 0xcb80, 0xcb81, 0xcb82, 0xcb83, 0xcb84, 0xcb85, 0xcb86, 0xcb87, /* 0xcb80 */
- 0xcb88, 0xcb89, 0xcb8a, 0xcb8b, 0xcb8c, 0xcb8d, 0xcb8e, 0xcb8f,
- 0xcb90, 0xcb91, 0xcb92, 0xcb93, 0xcb94, 0xcb95, 0xcb96, 0xcb97,
- 0xcb98, 0xcb99, 0xcb9a, 0xcb9b, 0xcb9c, 0xcb9d, 0xcb9e, 0xcb9f,
- 0xcba0, 0xcba1, 0xcba2, 0xcba3, 0xcba4, 0xcba5, 0xcba6, 0xcba7,
- 0xcba8, 0xcba9, 0xcbaa, 0xcbab, 0xcbac, 0xcbad, 0xcbae, 0xcbaf,
- 0xcbb0, 0xcbb1, 0xcbb2, 0xcbb3, 0xcbb4, 0xcbb5, 0xcbb6, 0xcbb7,
- 0xcbb8, 0xcbb9, 0xcbba, 0xcbbb, 0xcbbc, 0xcbbd, 0xcbbe, 0xcbbf,
- 0xcbc0, 0xcbc1, 0xcbc2, 0xcbc3, 0xcbc4, 0xcbc5, 0xcbc6, 0xcbc7, /* 0xcbc0 */
- 0xcbc8, 0xcbc9, 0xcbca, 0xcbcb, 0xcbcc, 0xcbcd, 0xcbce, 0xcbcf,
- 0xcbd0, 0xcbd1, 0xcbd2, 0xcbd3, 0xcbd4, 0xcbd5, 0xcbd6, 0xcbd7,
- 0xcbd8, 0xcbd9, 0xcbda, 0xcbdb, 0xcbdc, 0xcbdd, 0xcbde, 0xcbdf,
- 0xcbe0, 0xcbe1, 0xcbe2, 0xcbe3, 0xcbe4, 0xcbe5, 0xcbe6, 0xcbe7,
- 0xcbe8, 0xcbe9, 0xcbea, 0xcbeb, 0xcbec, 0xcbed, 0xcbee, 0xcbef,
- 0xcbf0, 0xcbf1, 0xcbf2, 0xcbf3, 0xcbf4, 0xcbf5, 0xcbf6, 0xcbf7,
- 0xcbf8, 0xcbf9, 0xcbfa, 0xcbfb, 0xcbfc, 0xcbfd, 0xcbfe, 0xcbff,
- 0xcc00, 0xcc01, 0xcc02, 0xcc03, 0xcc04, 0xcc05, 0xcc06, 0xcc07, /* 0xcc00 */
- 0xcc08, 0xcc09, 0xcc0a, 0xcc0b, 0xcc0c, 0xcc0d, 0xcc0e, 0xcc0f,
- 0xcc10, 0xcc11, 0xcc12, 0xcc13, 0xcc14, 0xcc15, 0xcc16, 0xcc17,
- 0xcc18, 0xcc19, 0xcc1a, 0xcc1b, 0xcc1c, 0xcc1d, 0xcc1e, 0xcc1f,
- 0xcc20, 0xcc21, 0xcc22, 0xcc23, 0xcc24, 0xcc25, 0xcc26, 0xcc27,
- 0xcc28, 0xcc29, 0xcc2a, 0xcc2b, 0xcc2c, 0xcc2d, 0xcc2e, 0xcc2f,
- 0xcc30, 0xcc31, 0xcc32, 0xcc33, 0xcc34, 0xcc35, 0xcc36, 0xcc37,
- 0xcc38, 0xcc39, 0xcc3a, 0xcc3b, 0xcc3c, 0xcc3d, 0xcc3e, 0xcc3f,
- 0xcc40, 0xcc41, 0xcc42, 0xcc43, 0xcc44, 0xcc45, 0xcc46, 0xcc47, /* 0xcc40 */
- 0xcc48, 0xcc49, 0xcc4a, 0xcc4b, 0xcc4c, 0xcc4d, 0xcc4e, 0xcc4f,
- 0xcc50, 0xcc51, 0xcc52, 0xcc53, 0xcc54, 0xcc55, 0xcc56, 0xcc57,
- 0xcc58, 0xcc59, 0xcc5a, 0xcc5b, 0xcc5c, 0xcc5d, 0xcc5e, 0xcc5f,
- 0xcc60, 0xcc61, 0xcc62, 0xcc63, 0xcc64, 0xcc65, 0xcc66, 0xcc67,
- 0xcc68, 0xcc69, 0xcc6a, 0xcc6b, 0xcc6c, 0xcc6d, 0xcc6e, 0xcc6f,
- 0xcc70, 0xcc71, 0xcc72, 0xcc73, 0xcc74, 0xcc75, 0xcc76, 0xcc77,
- 0xcc78, 0xcc79, 0xcc7a, 0xcc7b, 0xcc7c, 0xcc7d, 0xcc7e, 0xcc7f,
- 0xcc80, 0xcc81, 0xcc82, 0xcc83, 0xcc84, 0xcc85, 0xcc86, 0xcc87, /* 0xcc80 */
- 0xcc88, 0xcc89, 0xcc8a, 0xcc8b, 0xcc8c, 0xcc8d, 0xcc8e, 0xcc8f,
- 0xcc90, 0xcc91, 0xcc92, 0xcc93, 0xcc94, 0xcc95, 0xcc96, 0xcc97,
- 0xcc98, 0xcc99, 0xcc9a, 0xcc9b, 0xcc9c, 0xcc9d, 0xcc9e, 0xcc9f,
- 0xcca0, 0xcca1, 0xcca2, 0xcca3, 0xcca4, 0xcca5, 0xcca6, 0xcca7,
- 0xcca8, 0xcca9, 0xccaa, 0xccab, 0xccac, 0xccad, 0xccae, 0xccaf,
- 0xccb0, 0xccb1, 0xccb2, 0xccb3, 0xccb4, 0xccb5, 0xccb6, 0xccb7,
- 0xccb8, 0xccb9, 0xccba, 0xccbb, 0xccbc, 0xccbd, 0xccbe, 0xccbf,
- 0xccc0, 0xccc1, 0xccc2, 0xccc3, 0xccc4, 0xccc5, 0xccc6, 0xccc7, /* 0xccc0 */
- 0xccc8, 0xccc9, 0xccca, 0xcccb, 0xcccc, 0xcccd, 0xccce, 0xcccf,
- 0xccd0, 0xccd1, 0xccd2, 0xccd3, 0xccd4, 0xccd5, 0xccd6, 0xccd7,
- 0xccd8, 0xccd9, 0xccda, 0xccdb, 0xccdc, 0xccdd, 0xccde, 0xccdf,
- 0xcce0, 0xcce1, 0xcce2, 0xcce3, 0xcce4, 0xcce5, 0xcce6, 0xcce7,
- 0xcce8, 0xcce9, 0xccea, 0xcceb, 0xccec, 0xcced, 0xccee, 0xccef,
- 0xccf0, 0xccf1, 0xccf2, 0xccf3, 0xccf4, 0xccf5, 0xccf6, 0xccf7,
- 0xccf8, 0xccf9, 0xccfa, 0xccfb, 0xccfc, 0xccfd, 0xccfe, 0xccff,
- 0xcd00, 0xcd01, 0xcd02, 0xcd03, 0xcd04, 0xcd05, 0xcd06, 0xcd07, /* 0xcd00 */
- 0xcd08, 0xcd09, 0xcd0a, 0xcd0b, 0xcd0c, 0xcd0d, 0xcd0e, 0xcd0f,
- 0xcd10, 0xcd11, 0xcd12, 0xcd13, 0xcd14, 0xcd15, 0xcd16, 0xcd17,
- 0xcd18, 0xcd19, 0xcd1a, 0xcd1b, 0xcd1c, 0xcd1d, 0xcd1e, 0xcd1f,
- 0xcd20, 0xcd21, 0xcd22, 0xcd23, 0xcd24, 0xcd25, 0xcd26, 0xcd27,
- 0xcd28, 0xcd29, 0xcd2a, 0xcd2b, 0xcd2c, 0xcd2d, 0xcd2e, 0xcd2f,
- 0xcd30, 0xcd31, 0xcd32, 0xcd33, 0xcd34, 0xcd35, 0xcd36, 0xcd37,
- 0xcd38, 0xcd39, 0xcd3a, 0xcd3b, 0xcd3c, 0xcd3d, 0xcd3e, 0xcd3f,
- 0xcd40, 0xcd41, 0xcd42, 0xcd43, 0xcd44, 0xcd45, 0xcd46, 0xcd47, /* 0xcd40 */
- 0xcd48, 0xcd49, 0xcd4a, 0xcd4b, 0xcd4c, 0xcd4d, 0xcd4e, 0xcd4f,
- 0xcd50, 0xcd51, 0xcd52, 0xcd53, 0xcd54, 0xcd55, 0xcd56, 0xcd57,
- 0xcd58, 0xcd59, 0xcd5a, 0xcd5b, 0xcd5c, 0xcd5d, 0xcd5e, 0xcd5f,
- 0xcd60, 0xcd61, 0xcd62, 0xcd63, 0xcd64, 0xcd65, 0xcd66, 0xcd67,
- 0xcd68, 0xcd69, 0xcd6a, 0xcd6b, 0xcd6c, 0xcd6d, 0xcd6e, 0xcd6f,
- 0xcd70, 0xcd71, 0xcd72, 0xcd73, 0xcd74, 0xcd75, 0xcd76, 0xcd77,
- 0xcd78, 0xcd79, 0xcd7a, 0xcd7b, 0xcd7c, 0xcd7d, 0xcd7e, 0xcd7f,
- 0xcd80, 0xcd81, 0xcd82, 0xcd83, 0xcd84, 0xcd85, 0xcd86, 0xcd87, /* 0xcd80 */
- 0xcd88, 0xcd89, 0xcd8a, 0xcd8b, 0xcd8c, 0xcd8d, 0xcd8e, 0xcd8f,
- 0xcd90, 0xcd91, 0xcd92, 0xcd93, 0xcd94, 0xcd95, 0xcd96, 0xcd97,
- 0xcd98, 0xcd99, 0xcd9a, 0xcd9b, 0xcd9c, 0xcd9d, 0xcd9e, 0xcd9f,
- 0xcda0, 0xcda1, 0xcda2, 0xcda3, 0xcda4, 0xcda5, 0xcda6, 0xcda7,
- 0xcda8, 0xcda9, 0xcdaa, 0xcdab, 0xcdac, 0xcdad, 0xcdae, 0xcdaf,
- 0xcdb0, 0xcdb1, 0xcdb2, 0xcdb3, 0xcdb4, 0xcdb5, 0xcdb6, 0xcdb7,
- 0xcdb8, 0xcdb9, 0xcdba, 0xcdbb, 0xcdbc, 0xcdbd, 0xcdbe, 0xcdbf,
- 0xcdc0, 0xcdc1, 0xcdc2, 0xcdc3, 0xcdc4, 0xcdc5, 0xcdc6, 0xcdc7, /* 0xcdc0 */
- 0xcdc8, 0xcdc9, 0xcdca, 0xcdcb, 0xcdcc, 0xcdcd, 0xcdce, 0xcdcf,
- 0xcdd0, 0xcdd1, 0xcdd2, 0xcdd3, 0xcdd4, 0xcdd5, 0xcdd6, 0xcdd7,
- 0xcdd8, 0xcdd9, 0xcdda, 0xcddb, 0xcddc, 0xcddd, 0xcdde, 0xcddf,
- 0xcde0, 0xcde1, 0xcde2, 0xcde3, 0xcde4, 0xcde5, 0xcde6, 0xcde7,
- 0xcde8, 0xcde9, 0xcdea, 0xcdeb, 0xcdec, 0xcded, 0xcdee, 0xcdef,
- 0xcdf0, 0xcdf1, 0xcdf2, 0xcdf3, 0xcdf4, 0xcdf5, 0xcdf6, 0xcdf7,
- 0xcdf8, 0xcdf9, 0xcdfa, 0xcdfb, 0xcdfc, 0xcdfd, 0xcdfe, 0xcdff,
- 0xce00, 0xce01, 0xce02, 0xce03, 0xce04, 0xce05, 0xce06, 0xce07, /* 0xce00 */
- 0xce08, 0xce09, 0xce0a, 0xce0b, 0xce0c, 0xce0d, 0xce0e, 0xce0f,
- 0xce10, 0xce11, 0xce12, 0xce13, 0xce14, 0xce15, 0xce16, 0xce17,
- 0xce18, 0xce19, 0xce1a, 0xce1b, 0xce1c, 0xce1d, 0xce1e, 0xce1f,
- 0xce20, 0xce21, 0xce22, 0xce23, 0xce24, 0xce25, 0xce26, 0xce27,
- 0xce28, 0xce29, 0xce2a, 0xce2b, 0xce2c, 0xce2d, 0xce2e, 0xce2f,
- 0xce30, 0xce31, 0xce32, 0xce33, 0xce34, 0xce35, 0xce36, 0xce37,
- 0xce38, 0xce39, 0xce3a, 0xce3b, 0xce3c, 0xce3d, 0xce3e, 0xce3f,
- 0xce40, 0xce41, 0xce42, 0xce43, 0xce44, 0xce45, 0xce46, 0xce47, /* 0xce40 */
- 0xce48, 0xce49, 0xce4a, 0xce4b, 0xce4c, 0xce4d, 0xce4e, 0xce4f,
- 0xce50, 0xce51, 0xce52, 0xce53, 0xce54, 0xce55, 0xce56, 0xce57,
- 0xce58, 0xce59, 0xce5a, 0xce5b, 0xce5c, 0xce5d, 0xce5e, 0xce5f,
- 0xce60, 0xce61, 0xce62, 0xce63, 0xce64, 0xce65, 0xce66, 0xce67,
- 0xce68, 0xce69, 0xce6a, 0xce6b, 0xce6c, 0xce6d, 0xce6e, 0xce6f,
- 0xce70, 0xce71, 0xce72, 0xce73, 0xce74, 0xce75, 0xce76, 0xce77,
- 0xce78, 0xce79, 0xce7a, 0xce7b, 0xce7c, 0xce7d, 0xce7e, 0xce7f,
- 0xce80, 0xce81, 0xce82, 0xce83, 0xce84, 0xce85, 0xce86, 0xce87, /* 0xce80 */
- 0xce88, 0xce89, 0xce8a, 0xce8b, 0xce8c, 0xce8d, 0xce8e, 0xce8f,
- 0xce90, 0xce91, 0xce92, 0xce93, 0xce94, 0xce95, 0xce96, 0xce97,
- 0xce98, 0xce99, 0xce9a, 0xce9b, 0xce9c, 0xce9d, 0xce9e, 0xce9f,
- 0xcea0, 0xcea1, 0xcea2, 0xcea3, 0xcea4, 0xcea5, 0xcea6, 0xcea7,
- 0xcea8, 0xcea9, 0xceaa, 0xceab, 0xceac, 0xcead, 0xceae, 0xceaf,
- 0xceb0, 0xceb1, 0xceb2, 0xceb3, 0xceb4, 0xceb5, 0xceb6, 0xceb7,
- 0xceb8, 0xceb9, 0xceba, 0xcebb, 0xcebc, 0xcebd, 0xcebe, 0xcebf,
- 0xcec0, 0xcec1, 0xcec2, 0xcec3, 0xcec4, 0xcec5, 0xcec6, 0xcec7, /* 0xcec0 */
- 0xcec8, 0xcec9, 0xceca, 0xcecb, 0xcecc, 0xcecd, 0xcece, 0xcecf,
- 0xced0, 0xced1, 0xced2, 0xced3, 0xced4, 0xced5, 0xced6, 0xced7,
- 0xced8, 0xced9, 0xceda, 0xcedb, 0xcedc, 0xcedd, 0xcede, 0xcedf,
- 0xcee0, 0xcee1, 0xcee2, 0xcee3, 0xcee4, 0xcee5, 0xcee6, 0xcee7,
- 0xcee8, 0xcee9, 0xceea, 0xceeb, 0xceec, 0xceed, 0xceee, 0xceef,
- 0xcef0, 0xcef1, 0xcef2, 0xcef3, 0xcef4, 0xcef5, 0xcef6, 0xcef7,
- 0xcef8, 0xcef9, 0xcefa, 0xcefb, 0xcefc, 0xcefd, 0xcefe, 0xceff,
- 0xcf00, 0xcf01, 0xcf02, 0xcf03, 0xcf04, 0xcf05, 0xcf06, 0xcf07, /* 0xcf00 */
- 0xcf08, 0xcf09, 0xcf0a, 0xcf0b, 0xcf0c, 0xcf0d, 0xcf0e, 0xcf0f,
- 0xcf10, 0xcf11, 0xcf12, 0xcf13, 0xcf14, 0xcf15, 0xcf16, 0xcf17,
- 0xcf18, 0xcf19, 0xcf1a, 0xcf1b, 0xcf1c, 0xcf1d, 0xcf1e, 0xcf1f,
- 0xcf20, 0xcf21, 0xcf22, 0xcf23, 0xcf24, 0xcf25, 0xcf26, 0xcf27,
- 0xcf28, 0xcf29, 0xcf2a, 0xcf2b, 0xcf2c, 0xcf2d, 0xcf2e, 0xcf2f,
- 0xcf30, 0xcf31, 0xcf32, 0xcf33, 0xcf34, 0xcf35, 0xcf36, 0xcf37,
- 0xcf38, 0xcf39, 0xcf3a, 0xcf3b, 0xcf3c, 0xcf3d, 0xcf3e, 0xcf3f,
- 0xcf40, 0xcf41, 0xcf42, 0xcf43, 0xcf44, 0xcf45, 0xcf46, 0xcf47, /* 0xcf40 */
- 0xcf48, 0xcf49, 0xcf4a, 0xcf4b, 0xcf4c, 0xcf4d, 0xcf4e, 0xcf4f,
- 0xcf50, 0xcf51, 0xcf52, 0xcf53, 0xcf54, 0xcf55, 0xcf56, 0xcf57,
- 0xcf58, 0xcf59, 0xcf5a, 0xcf5b, 0xcf5c, 0xcf5d, 0xcf5e, 0xcf5f,
- 0xcf60, 0xcf61, 0xcf62, 0xcf63, 0xcf64, 0xcf65, 0xcf66, 0xcf67,
- 0xcf68, 0xcf69, 0xcf6a, 0xcf6b, 0xcf6c, 0xcf6d, 0xcf6e, 0xcf6f,
- 0xcf70, 0xcf71, 0xcf72, 0xcf73, 0xcf74, 0xcf75, 0xcf76, 0xcf77,
- 0xcf78, 0xcf79, 0xcf7a, 0xcf7b, 0xcf7c, 0xcf7d, 0xcf7e, 0xcf7f,
- 0xcf80, 0xcf81, 0xcf82, 0xcf83, 0xcf84, 0xcf85, 0xcf86, 0xcf87, /* 0xcf80 */
- 0xcf88, 0xcf89, 0xcf8a, 0xcf8b, 0xcf8c, 0xcf8d, 0xcf8e, 0xcf8f,
- 0xcf90, 0xcf91, 0xcf92, 0xcf93, 0xcf94, 0xcf95, 0xcf96, 0xcf97,
- 0xcf98, 0xcf99, 0xcf9a, 0xcf9b, 0xcf9c, 0xcf9d, 0xcf9e, 0xcf9f,
- 0xcfa0, 0xcfa1, 0xcfa2, 0xcfa3, 0xcfa4, 0xcfa5, 0xcfa6, 0xcfa7,
- 0xcfa8, 0xcfa9, 0xcfaa, 0xcfab, 0xcfac, 0xcfad, 0xcfae, 0xcfaf,
- 0xcfb0, 0xcfb1, 0xcfb2, 0xcfb3, 0xcfb4, 0xcfb5, 0xcfb6, 0xcfb7,
- 0xcfb8, 0xcfb9, 0xcfba, 0xcfbb, 0xcfbc, 0xcfbd, 0xcfbe, 0xcfbf,
- 0xcfc0, 0xcfc1, 0xcfc2, 0xcfc3, 0xcfc4, 0xcfc5, 0xcfc6, 0xcfc7, /* 0xcfc0 */
- 0xcfc8, 0xcfc9, 0xcfca, 0xcfcb, 0xcfcc, 0xcfcd, 0xcfce, 0xcfcf,
- 0xcfd0, 0xcfd1, 0xcfd2, 0xcfd3, 0xcfd4, 0xcfd5, 0xcfd6, 0xcfd7,
- 0xcfd8, 0xcfd9, 0xcfda, 0xcfdb, 0xcfdc, 0xcfdd, 0xcfde, 0xcfdf,
- 0xcfe0, 0xcfe1, 0xcfe2, 0xcfe3, 0xcfe4, 0xcfe5, 0xcfe6, 0xcfe7,
- 0xcfe8, 0xcfe9, 0xcfea, 0xcfeb, 0xcfec, 0xcfed, 0xcfee, 0xcfef,
- 0xcff0, 0xcff1, 0xcff2, 0xcff3, 0xcff4, 0xcff5, 0xcff6, 0xcff7,
- 0xcff8, 0xcff9, 0xcffa, 0xcffb, 0xcffc, 0xcffd, 0xcffe, 0xcfff,
- 0xd000, 0xd001, 0xd002, 0xd003, 0xd004, 0xd005, 0xd006, 0xd007, /* 0xd000 */
- 0xd008, 0xd009, 0xd00a, 0xd00b, 0xd00c, 0xd00d, 0xd00e, 0xd00f,
- 0xd010, 0xd011, 0xd012, 0xd013, 0xd014, 0xd015, 0xd016, 0xd017,
- 0xd018, 0xd019, 0xd01a, 0xd01b, 0xd01c, 0xd01d, 0xd01e, 0xd01f,
- 0xd020, 0xd021, 0xd022, 0xd023, 0xd024, 0xd025, 0xd026, 0xd027,
- 0xd028, 0xd029, 0xd02a, 0xd02b, 0xd02c, 0xd02d, 0xd02e, 0xd02f,
- 0xd030, 0xd031, 0xd032, 0xd033, 0xd034, 0xd035, 0xd036, 0xd037,
- 0xd038, 0xd039, 0xd03a, 0xd03b, 0xd03c, 0xd03d, 0xd03e, 0xd03f,
- 0xd040, 0xd041, 0xd042, 0xd043, 0xd044, 0xd045, 0xd046, 0xd047, /* 0xd040 */
- 0xd048, 0xd049, 0xd04a, 0xd04b, 0xd04c, 0xd04d, 0xd04e, 0xd04f,
- 0xd050, 0xd051, 0xd052, 0xd053, 0xd054, 0xd055, 0xd056, 0xd057,
- 0xd058, 0xd059, 0xd05a, 0xd05b, 0xd05c, 0xd05d, 0xd05e, 0xd05f,
- 0xd060, 0xd061, 0xd062, 0xd063, 0xd064, 0xd065, 0xd066, 0xd067,
- 0xd068, 0xd069, 0xd06a, 0xd06b, 0xd06c, 0xd06d, 0xd06e, 0xd06f,
- 0xd070, 0xd071, 0xd072, 0xd073, 0xd074, 0xd075, 0xd076, 0xd077,
- 0xd078, 0xd079, 0xd07a, 0xd07b, 0xd07c, 0xd07d, 0xd07e, 0xd07f,
- 0xd080, 0xd081, 0xd082, 0xd083, 0xd084, 0xd085, 0xd086, 0xd087, /* 0xd080 */
- 0xd088, 0xd089, 0xd08a, 0xd08b, 0xd08c, 0xd08d, 0xd08e, 0xd08f,
- 0xd090, 0xd091, 0xd092, 0xd093, 0xd094, 0xd095, 0xd096, 0xd097,
- 0xd098, 0xd099, 0xd09a, 0xd09b, 0xd09c, 0xd09d, 0xd09e, 0xd09f,
- 0xd0a0, 0xd0a1, 0xd0a2, 0xd0a3, 0xd0a4, 0xd0a5, 0xd0a6, 0xd0a7,
- 0xd0a8, 0xd0a9, 0xd0aa, 0xd0ab, 0xd0ac, 0xd0ad, 0xd0ae, 0xd0af,
- 0xd0b0, 0xd0b1, 0xd0b2, 0xd0b3, 0xd0b4, 0xd0b5, 0xd0b6, 0xd0b7,
- 0xd0b8, 0xd0b9, 0xd0ba, 0xd0bb, 0xd0bc, 0xd0bd, 0xd0be, 0xd0bf,
- 0xd0c0, 0xd0c1, 0xd0c2, 0xd0c3, 0xd0c4, 0xd0c5, 0xd0c6, 0xd0c7, /* 0xd0c0 */
- 0xd0c8, 0xd0c9, 0xd0ca, 0xd0cb, 0xd0cc, 0xd0cd, 0xd0ce, 0xd0cf,
- 0xd0d0, 0xd0d1, 0xd0d2, 0xd0d3, 0xd0d4, 0xd0d5, 0xd0d6, 0xd0d7,
- 0xd0d8, 0xd0d9, 0xd0da, 0xd0db, 0xd0dc, 0xd0dd, 0xd0de, 0xd0df,
- 0xd0e0, 0xd0e1, 0xd0e2, 0xd0e3, 0xd0e4, 0xd0e5, 0xd0e6, 0xd0e7,
- 0xd0e8, 0xd0e9, 0xd0ea, 0xd0eb, 0xd0ec, 0xd0ed, 0xd0ee, 0xd0ef,
- 0xd0f0, 0xd0f1, 0xd0f2, 0xd0f3, 0xd0f4, 0xd0f5, 0xd0f6, 0xd0f7,
- 0xd0f8, 0xd0f9, 0xd0fa, 0xd0fb, 0xd0fc, 0xd0fd, 0xd0fe, 0xd0ff,
- 0xd100, 0xd101, 0xd102, 0xd103, 0xd104, 0xd105, 0xd106, 0xd107, /* 0xd100 */
- 0xd108, 0xd109, 0xd10a, 0xd10b, 0xd10c, 0xd10d, 0xd10e, 0xd10f,
- 0xd110, 0xd111, 0xd112, 0xd113, 0xd114, 0xd115, 0xd116, 0xd117,
- 0xd118, 0xd119, 0xd11a, 0xd11b, 0xd11c, 0xd11d, 0xd11e, 0xd11f,
- 0xd120, 0xd121, 0xd122, 0xd123, 0xd124, 0xd125, 0xd126, 0xd127,
- 0xd128, 0xd129, 0xd12a, 0xd12b, 0xd12c, 0xd12d, 0xd12e, 0xd12f,
- 0xd130, 0xd131, 0xd132, 0xd133, 0xd134, 0xd135, 0xd136, 0xd137,
- 0xd138, 0xd139, 0xd13a, 0xd13b, 0xd13c, 0xd13d, 0xd13e, 0xd13f,
- 0xd140, 0xd141, 0xd142, 0xd143, 0xd144, 0xd145, 0xd146, 0xd147, /* 0xd140 */
- 0xd148, 0xd149, 0xd14a, 0xd14b, 0xd14c, 0xd14d, 0xd14e, 0xd14f,
- 0xd150, 0xd151, 0xd152, 0xd153, 0xd154, 0xd155, 0xd156, 0xd157,
- 0xd158, 0xd159, 0xd15a, 0xd15b, 0xd15c, 0xd15d, 0xd15e, 0xd15f,
- 0xd160, 0xd161, 0xd162, 0xd163, 0xd164, 0xd165, 0xd166, 0xd167,
- 0xd168, 0xd169, 0xd16a, 0xd16b, 0xd16c, 0xd16d, 0xd16e, 0xd16f,
- 0xd170, 0xd171, 0xd172, 0xd173, 0xd174, 0xd175, 0xd176, 0xd177,
- 0xd178, 0xd179, 0xd17a, 0xd17b, 0xd17c, 0xd17d, 0xd17e, 0xd17f,
- 0xd180, 0xd181, 0xd182, 0xd183, 0xd184, 0xd185, 0xd186, 0xd187, /* 0xd180 */
- 0xd188, 0xd189, 0xd18a, 0xd18b, 0xd18c, 0xd18d, 0xd18e, 0xd18f,
- 0xd190, 0xd191, 0xd192, 0xd193, 0xd194, 0xd195, 0xd196, 0xd197,
- 0xd198, 0xd199, 0xd19a, 0xd19b, 0xd19c, 0xd19d, 0xd19e, 0xd19f,
- 0xd1a0, 0xd1a1, 0xd1a2, 0xd1a3, 0xd1a4, 0xd1a5, 0xd1a6, 0xd1a7,
- 0xd1a8, 0xd1a9, 0xd1aa, 0xd1ab, 0xd1ac, 0xd1ad, 0xd1ae, 0xd1af,
- 0xd1b0, 0xd1b1, 0xd1b2, 0xd1b3, 0xd1b4, 0xd1b5, 0xd1b6, 0xd1b7,
- 0xd1b8, 0xd1b9, 0xd1ba, 0xd1bb, 0xd1bc, 0xd1bd, 0xd1be, 0xd1bf,
- 0xd1c0, 0xd1c1, 0xd1c2, 0xd1c3, 0xd1c4, 0xd1c5, 0xd1c6, 0xd1c7, /* 0xd1c0 */
- 0xd1c8, 0xd1c9, 0xd1ca, 0xd1cb, 0xd1cc, 0xd1cd, 0xd1ce, 0xd1cf,
- 0xd1d0, 0xd1d1, 0xd1d2, 0xd1d3, 0xd1d4, 0xd1d5, 0xd1d6, 0xd1d7,
- 0xd1d8, 0xd1d9, 0xd1da, 0xd1db, 0xd1dc, 0xd1dd, 0xd1de, 0xd1df,
- 0xd1e0, 0xd1e1, 0xd1e2, 0xd1e3, 0xd1e4, 0xd1e5, 0xd1e6, 0xd1e7,
- 0xd1e8, 0xd1e9, 0xd1ea, 0xd1eb, 0xd1ec, 0xd1ed, 0xd1ee, 0xd1ef,
- 0xd1f0, 0xd1f1, 0xd1f2, 0xd1f3, 0xd1f4, 0xd1f5, 0xd1f6, 0xd1f7,
- 0xd1f8, 0xd1f9, 0xd1fa, 0xd1fb, 0xd1fc, 0xd1fd, 0xd1fe, 0xd1ff,
- 0xd200, 0xd201, 0xd202, 0xd203, 0xd204, 0xd205, 0xd206, 0xd207, /* 0xd200 */
- 0xd208, 0xd209, 0xd20a, 0xd20b, 0xd20c, 0xd20d, 0xd20e, 0xd20f,
- 0xd210, 0xd211, 0xd212, 0xd213, 0xd214, 0xd215, 0xd216, 0xd217,
- 0xd218, 0xd219, 0xd21a, 0xd21b, 0xd21c, 0xd21d, 0xd21e, 0xd21f,
- 0xd220, 0xd221, 0xd222, 0xd223, 0xd224, 0xd225, 0xd226, 0xd227,
- 0xd228, 0xd229, 0xd22a, 0xd22b, 0xd22c, 0xd22d, 0xd22e, 0xd22f,
- 0xd230, 0xd231, 0xd232, 0xd233, 0xd234, 0xd235, 0xd236, 0xd237,
- 0xd238, 0xd239, 0xd23a, 0xd23b, 0xd23c, 0xd23d, 0xd23e, 0xd23f,
- 0xd240, 0xd241, 0xd242, 0xd243, 0xd244, 0xd245, 0xd246, 0xd247, /* 0xd240 */
- 0xd248, 0xd249, 0xd24a, 0xd24b, 0xd24c, 0xd24d, 0xd24e, 0xd24f,
- 0xd250, 0xd251, 0xd252, 0xd253, 0xd254, 0xd255, 0xd256, 0xd257,
- 0xd258, 0xd259, 0xd25a, 0xd25b, 0xd25c, 0xd25d, 0xd25e, 0xd25f,
- 0xd260, 0xd261, 0xd262, 0xd263, 0xd264, 0xd265, 0xd266, 0xd267,
- 0xd268, 0xd269, 0xd26a, 0xd26b, 0xd26c, 0xd26d, 0xd26e, 0xd26f,
- 0xd270, 0xd271, 0xd272, 0xd273, 0xd274, 0xd275, 0xd276, 0xd277,
- 0xd278, 0xd279, 0xd27a, 0xd27b, 0xd27c, 0xd27d, 0xd27e, 0xd27f,
- 0xd280, 0xd281, 0xd282, 0xd283, 0xd284, 0xd285, 0xd286, 0xd287, /* 0xd280 */
- 0xd288, 0xd289, 0xd28a, 0xd28b, 0xd28c, 0xd28d, 0xd28e, 0xd28f,
- 0xd290, 0xd291, 0xd292, 0xd293, 0xd294, 0xd295, 0xd296, 0xd297,
- 0xd298, 0xd299, 0xd29a, 0xd29b, 0xd29c, 0xd29d, 0xd29e, 0xd29f,
- 0xd2a0, 0xd2a1, 0xd2a2, 0xd2a3, 0xd2a4, 0xd2a5, 0xd2a6, 0xd2a7,
- 0xd2a8, 0xd2a9, 0xd2aa, 0xd2ab, 0xd2ac, 0xd2ad, 0xd2ae, 0xd2af,
- 0xd2b0, 0xd2b1, 0xd2b2, 0xd2b3, 0xd2b4, 0xd2b5, 0xd2b6, 0xd2b7,
- 0xd2b8, 0xd2b9, 0xd2ba, 0xd2bb, 0xd2bc, 0xd2bd, 0xd2be, 0xd2bf,
- 0xd2c0, 0xd2c1, 0xd2c2, 0xd2c3, 0xd2c4, 0xd2c5, 0xd2c6, 0xd2c7, /* 0xd2c0 */
- 0xd2c8, 0xd2c9, 0xd2ca, 0xd2cb, 0xd2cc, 0xd2cd, 0xd2ce, 0xd2cf,
- 0xd2d0, 0xd2d1, 0xd2d2, 0xd2d3, 0xd2d4, 0xd2d5, 0xd2d6, 0xd2d7,
- 0xd2d8, 0xd2d9, 0xd2da, 0xd2db, 0xd2dc, 0xd2dd, 0xd2de, 0xd2df,
- 0xd2e0, 0xd2e1, 0xd2e2, 0xd2e3, 0xd2e4, 0xd2e5, 0xd2e6, 0xd2e7,
- 0xd2e8, 0xd2e9, 0xd2ea, 0xd2eb, 0xd2ec, 0xd2ed, 0xd2ee, 0xd2ef,
- 0xd2f0, 0xd2f1, 0xd2f2, 0xd2f3, 0xd2f4, 0xd2f5, 0xd2f6, 0xd2f7,
- 0xd2f8, 0xd2f9, 0xd2fa, 0xd2fb, 0xd2fc, 0xd2fd, 0xd2fe, 0xd2ff,
- 0xd300, 0xd301, 0xd302, 0xd303, 0xd304, 0xd305, 0xd306, 0xd307, /* 0xd300 */
- 0xd308, 0xd309, 0xd30a, 0xd30b, 0xd30c, 0xd30d, 0xd30e, 0xd30f,
- 0xd310, 0xd311, 0xd312, 0xd313, 0xd314, 0xd315, 0xd316, 0xd317,
- 0xd318, 0xd319, 0xd31a, 0xd31b, 0xd31c, 0xd31d, 0xd31e, 0xd31f,
- 0xd320, 0xd321, 0xd322, 0xd323, 0xd324, 0xd325, 0xd326, 0xd327,
- 0xd328, 0xd329, 0xd32a, 0xd32b, 0xd32c, 0xd32d, 0xd32e, 0xd32f,
- 0xd330, 0xd331, 0xd332, 0xd333, 0xd334, 0xd335, 0xd336, 0xd337,
- 0xd338, 0xd339, 0xd33a, 0xd33b, 0xd33c, 0xd33d, 0xd33e, 0xd33f,
- 0xd340, 0xd341, 0xd342, 0xd343, 0xd344, 0xd345, 0xd346, 0xd347, /* 0xd340 */
- 0xd348, 0xd349, 0xd34a, 0xd34b, 0xd34c, 0xd34d, 0xd34e, 0xd34f,
- 0xd350, 0xd351, 0xd352, 0xd353, 0xd354, 0xd355, 0xd356, 0xd357,
- 0xd358, 0xd359, 0xd35a, 0xd35b, 0xd35c, 0xd35d, 0xd35e, 0xd35f,
- 0xd360, 0xd361, 0xd362, 0xd363, 0xd364, 0xd365, 0xd366, 0xd367,
- 0xd368, 0xd369, 0xd36a, 0xd36b, 0xd36c, 0xd36d, 0xd36e, 0xd36f,
- 0xd370, 0xd371, 0xd372, 0xd373, 0xd374, 0xd375, 0xd376, 0xd377,
- 0xd378, 0xd379, 0xd37a, 0xd37b, 0xd37c, 0xd37d, 0xd37e, 0xd37f,
- 0xd380, 0xd381, 0xd382, 0xd383, 0xd384, 0xd385, 0xd386, 0xd387, /* 0xd380 */
- 0xd388, 0xd389, 0xd38a, 0xd38b, 0xd38c, 0xd38d, 0xd38e, 0xd38f,
- 0xd390, 0xd391, 0xd392, 0xd393, 0xd394, 0xd395, 0xd396, 0xd397,
- 0xd398, 0xd399, 0xd39a, 0xd39b, 0xd39c, 0xd39d, 0xd39e, 0xd39f,
- 0xd3a0, 0xd3a1, 0xd3a2, 0xd3a3, 0xd3a4, 0xd3a5, 0xd3a6, 0xd3a7,
- 0xd3a8, 0xd3a9, 0xd3aa, 0xd3ab, 0xd3ac, 0xd3ad, 0xd3ae, 0xd3af,
- 0xd3b0, 0xd3b1, 0xd3b2, 0xd3b3, 0xd3b4, 0xd3b5, 0xd3b6, 0xd3b7,
- 0xd3b8, 0xd3b9, 0xd3ba, 0xd3bb, 0xd3bc, 0xd3bd, 0xd3be, 0xd3bf,
- 0xd3c0, 0xd3c1, 0xd3c2, 0xd3c3, 0xd3c4, 0xd3c5, 0xd3c6, 0xd3c7, /* 0xd3c0 */
- 0xd3c8, 0xd3c9, 0xd3ca, 0xd3cb, 0xd3cc, 0xd3cd, 0xd3ce, 0xd3cf,
- 0xd3d0, 0xd3d1, 0xd3d2, 0xd3d3, 0xd3d4, 0xd3d5, 0xd3d6, 0xd3d7,
- 0xd3d8, 0xd3d9, 0xd3da, 0xd3db, 0xd3dc, 0xd3dd, 0xd3de, 0xd3df,
- 0xd3e0, 0xd3e1, 0xd3e2, 0xd3e3, 0xd3e4, 0xd3e5, 0xd3e6, 0xd3e7,
- 0xd3e8, 0xd3e9, 0xd3ea, 0xd3eb, 0xd3ec, 0xd3ed, 0xd3ee, 0xd3ef,
- 0xd3f0, 0xd3f1, 0xd3f2, 0xd3f3, 0xd3f4, 0xd3f5, 0xd3f6, 0xd3f7,
- 0xd3f8, 0xd3f9, 0xd3fa, 0xd3fb, 0xd3fc, 0xd3fd, 0xd3fe, 0xd3ff,
- 0xd400, 0xd401, 0xd402, 0xd403, 0xd404, 0xd405, 0xd406, 0xd407, /* 0xd400 */
- 0xd408, 0xd409, 0xd40a, 0xd40b, 0xd40c, 0xd40d, 0xd40e, 0xd40f,
- 0xd410, 0xd411, 0xd412, 0xd413, 0xd414, 0xd415, 0xd416, 0xd417,
- 0xd418, 0xd419, 0xd41a, 0xd41b, 0xd41c, 0xd41d, 0xd41e, 0xd41f,
- 0xd420, 0xd421, 0xd422, 0xd423, 0xd424, 0xd425, 0xd426, 0xd427,
- 0xd428, 0xd429, 0xd42a, 0xd42b, 0xd42c, 0xd42d, 0xd42e, 0xd42f,
- 0xd430, 0xd431, 0xd432, 0xd433, 0xd434, 0xd435, 0xd436, 0xd437,
- 0xd438, 0xd439, 0xd43a, 0xd43b, 0xd43c, 0xd43d, 0xd43e, 0xd43f,
- 0xd440, 0xd441, 0xd442, 0xd443, 0xd444, 0xd445, 0xd446, 0xd447, /* 0xd440 */
- 0xd448, 0xd449, 0xd44a, 0xd44b, 0xd44c, 0xd44d, 0xd44e, 0xd44f,
- 0xd450, 0xd451, 0xd452, 0xd453, 0xd454, 0xd455, 0xd456, 0xd457,
- 0xd458, 0xd459, 0xd45a, 0xd45b, 0xd45c, 0xd45d, 0xd45e, 0xd45f,
- 0xd460, 0xd461, 0xd462, 0xd463, 0xd464, 0xd465, 0xd466, 0xd467,
- 0xd468, 0xd469, 0xd46a, 0xd46b, 0xd46c, 0xd46d, 0xd46e, 0xd46f,
- 0xd470, 0xd471, 0xd472, 0xd473, 0xd474, 0xd475, 0xd476, 0xd477,
- 0xd478, 0xd479, 0xd47a, 0xd47b, 0xd47c, 0xd47d, 0xd47e, 0xd47f,
- 0xd480, 0xd481, 0xd482, 0xd483, 0xd484, 0xd485, 0xd486, 0xd487, /* 0xd480 */
- 0xd488, 0xd489, 0xd48a, 0xd48b, 0xd48c, 0xd48d, 0xd48e, 0xd48f,
- 0xd490, 0xd491, 0xd492, 0xd493, 0xd494, 0xd495, 0xd496, 0xd497,
- 0xd498, 0xd499, 0xd49a, 0xd49b, 0xd49c, 0xd49d, 0xd49e, 0xd49f,
- 0xd4a0, 0xd4a1, 0xd4a2, 0xd4a3, 0xd4a4, 0xd4a5, 0xd4a6, 0xd4a7,
- 0xd4a8, 0xd4a9, 0xd4aa, 0xd4ab, 0xd4ac, 0xd4ad, 0xd4ae, 0xd4af,
- 0xd4b0, 0xd4b1, 0xd4b2, 0xd4b3, 0xd4b4, 0xd4b5, 0xd4b6, 0xd4b7,
- 0xd4b8, 0xd4b9, 0xd4ba, 0xd4bb, 0xd4bc, 0xd4bd, 0xd4be, 0xd4bf,
- 0xd4c0, 0xd4c1, 0xd4c2, 0xd4c3, 0xd4c4, 0xd4c5, 0xd4c6, 0xd4c7, /* 0xd4c0 */
- 0xd4c8, 0xd4c9, 0xd4ca, 0xd4cb, 0xd4cc, 0xd4cd, 0xd4ce, 0xd4cf,
- 0xd4d0, 0xd4d1, 0xd4d2, 0xd4d3, 0xd4d4, 0xd4d5, 0xd4d6, 0xd4d7,
- 0xd4d8, 0xd4d9, 0xd4da, 0xd4db, 0xd4dc, 0xd4dd, 0xd4de, 0xd4df,
- 0xd4e0, 0xd4e1, 0xd4e2, 0xd4e3, 0xd4e4, 0xd4e5, 0xd4e6, 0xd4e7,
- 0xd4e8, 0xd4e9, 0xd4ea, 0xd4eb, 0xd4ec, 0xd4ed, 0xd4ee, 0xd4ef,
- 0xd4f0, 0xd4f1, 0xd4f2, 0xd4f3, 0xd4f4, 0xd4f5, 0xd4f6, 0xd4f7,
- 0xd4f8, 0xd4f9, 0xd4fa, 0xd4fb, 0xd4fc, 0xd4fd, 0xd4fe, 0xd4ff,
- 0xd500, 0xd501, 0xd502, 0xd503, 0xd504, 0xd505, 0xd506, 0xd507, /* 0xd500 */
- 0xd508, 0xd509, 0xd50a, 0xd50b, 0xd50c, 0xd50d, 0xd50e, 0xd50f,
- 0xd510, 0xd511, 0xd512, 0xd513, 0xd514, 0xd515, 0xd516, 0xd517,
- 0xd518, 0xd519, 0xd51a, 0xd51b, 0xd51c, 0xd51d, 0xd51e, 0xd51f,
- 0xd520, 0xd521, 0xd522, 0xd523, 0xd524, 0xd525, 0xd526, 0xd527,
- 0xd528, 0xd529, 0xd52a, 0xd52b, 0xd52c, 0xd52d, 0xd52e, 0xd52f,
- 0xd530, 0xd531, 0xd532, 0xd533, 0xd534, 0xd535, 0xd536, 0xd537,
- 0xd538, 0xd539, 0xd53a, 0xd53b, 0xd53c, 0xd53d, 0xd53e, 0xd53f,
- 0xd540, 0xd541, 0xd542, 0xd543, 0xd544, 0xd545, 0xd546, 0xd547, /* 0xd540 */
- 0xd548, 0xd549, 0xd54a, 0xd54b, 0xd54c, 0xd54d, 0xd54e, 0xd54f,
- 0xd550, 0xd551, 0xd552, 0xd553, 0xd554, 0xd555, 0xd556, 0xd557,
- 0xd558, 0xd559, 0xd55a, 0xd55b, 0xd55c, 0xd55d, 0xd55e, 0xd55f,
- 0xd560, 0xd561, 0xd562, 0xd563, 0xd564, 0xd565, 0xd566, 0xd567,
- 0xd568, 0xd569, 0xd56a, 0xd56b, 0xd56c, 0xd56d, 0xd56e, 0xd56f,
- 0xd570, 0xd571, 0xd572, 0xd573, 0xd574, 0xd575, 0xd576, 0xd577,
- 0xd578, 0xd579, 0xd57a, 0xd57b, 0xd57c, 0xd57d, 0xd57e, 0xd57f,
- 0xd580, 0xd581, 0xd582, 0xd583, 0xd584, 0xd585, 0xd586, 0xd587, /* 0xd580 */
- 0xd588, 0xd589, 0xd58a, 0xd58b, 0xd58c, 0xd58d, 0xd58e, 0xd58f,
- 0xd590, 0xd591, 0xd592, 0xd593, 0xd594, 0xd595, 0xd596, 0xd597,
- 0xd598, 0xd599, 0xd59a, 0xd59b, 0xd59c, 0xd59d, 0xd59e, 0xd59f,
- 0xd5a0, 0xd5a1, 0xd5a2, 0xd5a3, 0xd5a4, 0xd5a5, 0xd5a6, 0xd5a7,
- 0xd5a8, 0xd5a9, 0xd5aa, 0xd5ab, 0xd5ac, 0xd5ad, 0xd5ae, 0xd5af,
- 0xd5b0, 0xd5b1, 0xd5b2, 0xd5b3, 0xd5b4, 0xd5b5, 0xd5b6, 0xd5b7,
- 0xd5b8, 0xd5b9, 0xd5ba, 0xd5bb, 0xd5bc, 0xd5bd, 0xd5be, 0xd5bf,
- 0xd5c0, 0xd5c1, 0xd5c2, 0xd5c3, 0xd5c4, 0xd5c5, 0xd5c6, 0xd5c7, /* 0xd5c0 */
- 0xd5c8, 0xd5c9, 0xd5ca, 0xd5cb, 0xd5cc, 0xd5cd, 0xd5ce, 0xd5cf,
- 0xd5d0, 0xd5d1, 0xd5d2, 0xd5d3, 0xd5d4, 0xd5d5, 0xd5d6, 0xd5d7,
- 0xd5d8, 0xd5d9, 0xd5da, 0xd5db, 0xd5dc, 0xd5dd, 0xd5de, 0xd5df,
- 0xd5e0, 0xd5e1, 0xd5e2, 0xd5e3, 0xd5e4, 0xd5e5, 0xd5e6, 0xd5e7,
- 0xd5e8, 0xd5e9, 0xd5ea, 0xd5eb, 0xd5ec, 0xd5ed, 0xd5ee, 0xd5ef,
- 0xd5f0, 0xd5f1, 0xd5f2, 0xd5f3, 0xd5f4, 0xd5f5, 0xd5f6, 0xd5f7,
- 0xd5f8, 0xd5f9, 0xd5fa, 0xd5fb, 0xd5fc, 0xd5fd, 0xd5fe, 0xd5ff,
- 0xd600, 0xd601, 0xd602, 0xd603, 0xd604, 0xd605, 0xd606, 0xd607, /* 0xd600 */
- 0xd608, 0xd609, 0xd60a, 0xd60b, 0xd60c, 0xd60d, 0xd60e, 0xd60f,
- 0xd610, 0xd611, 0xd612, 0xd613, 0xd614, 0xd615, 0xd616, 0xd617,
- 0xd618, 0xd619, 0xd61a, 0xd61b, 0xd61c, 0xd61d, 0xd61e, 0xd61f,
- 0xd620, 0xd621, 0xd622, 0xd623, 0xd624, 0xd625, 0xd626, 0xd627,
- 0xd628, 0xd629, 0xd62a, 0xd62b, 0xd62c, 0xd62d, 0xd62e, 0xd62f,
- 0xd630, 0xd631, 0xd632, 0xd633, 0xd634, 0xd635, 0xd636, 0xd637,
- 0xd638, 0xd639, 0xd63a, 0xd63b, 0xd63c, 0xd63d, 0xd63e, 0xd63f,
- 0xd640, 0xd641, 0xd642, 0xd643, 0xd644, 0xd645, 0xd646, 0xd647, /* 0xd640 */
- 0xd648, 0xd649, 0xd64a, 0xd64b, 0xd64c, 0xd64d, 0xd64e, 0xd64f,
- 0xd650, 0xd651, 0xd652, 0xd653, 0xd654, 0xd655, 0xd656, 0xd657,
- 0xd658, 0xd659, 0xd65a, 0xd65b, 0xd65c, 0xd65d, 0xd65e, 0xd65f,
- 0xd660, 0xd661, 0xd662, 0xd663, 0xd664, 0xd665, 0xd666, 0xd667,
- 0xd668, 0xd669, 0xd66a, 0xd66b, 0xd66c, 0xd66d, 0xd66e, 0xd66f,
- 0xd670, 0xd671, 0xd672, 0xd673, 0xd674, 0xd675, 0xd676, 0xd677,
- 0xd678, 0xd679, 0xd67a, 0xd67b, 0xd67c, 0xd67d, 0xd67e, 0xd67f,
- 0xd680, 0xd681, 0xd682, 0xd683, 0xd684, 0xd685, 0xd686, 0xd687, /* 0xd680 */
- 0xd688, 0xd689, 0xd68a, 0xd68b, 0xd68c, 0xd68d, 0xd68e, 0xd68f,
- 0xd690, 0xd691, 0xd692, 0xd693, 0xd694, 0xd695, 0xd696, 0xd697,
- 0xd698, 0xd699, 0xd69a, 0xd69b, 0xd69c, 0xd69d, 0xd69e, 0xd69f,
- 0xd6a0, 0xd6a1, 0xd6a2, 0xd6a3, 0xd6a4, 0xd6a5, 0xd6a6, 0xd6a7,
- 0xd6a8, 0xd6a9, 0xd6aa, 0xd6ab, 0xd6ac, 0xd6ad, 0xd6ae, 0xd6af,
- 0xd6b0, 0xd6b1, 0xd6b2, 0xd6b3, 0xd6b4, 0xd6b5, 0xd6b6, 0xd6b7,
- 0xd6b8, 0xd6b9, 0xd6ba, 0xd6bb, 0xd6bc, 0xd6bd, 0xd6be, 0xd6bf,
- 0xd6c0, 0xd6c1, 0xd6c2, 0xd6c3, 0xd6c4, 0xd6c5, 0xd6c6, 0xd6c7, /* 0xd6c0 */
- 0xd6c8, 0xd6c9, 0xd6ca, 0xd6cb, 0xd6cc, 0xd6cd, 0xd6ce, 0xd6cf,
- 0xd6d0, 0xd6d1, 0xd6d2, 0xd6d3, 0xd6d4, 0xd6d5, 0xd6d6, 0xd6d7,
- 0xd6d8, 0xd6d9, 0xd6da, 0xd6db, 0xd6dc, 0xd6dd, 0xd6de, 0xd6df,
- 0xd6e0, 0xd6e1, 0xd6e2, 0xd6e3, 0xd6e4, 0xd6e5, 0xd6e6, 0xd6e7,
- 0xd6e8, 0xd6e9, 0xd6ea, 0xd6eb, 0xd6ec, 0xd6ed, 0xd6ee, 0xd6ef,
- 0xd6f0, 0xd6f1, 0xd6f2, 0xd6f3, 0xd6f4, 0xd6f5, 0xd6f6, 0xd6f7,
- 0xd6f8, 0xd6f9, 0xd6fa, 0xd6fb, 0xd6fc, 0xd6fd, 0xd6fe, 0xd6ff,
- 0xd700, 0xd701, 0xd702, 0xd703, 0xd704, 0xd705, 0xd706, 0xd707, /* 0xd700 */
- 0xd708, 0xd709, 0xd70a, 0xd70b, 0xd70c, 0xd70d, 0xd70e, 0xd70f,
- 0xd710, 0xd711, 0xd712, 0xd713, 0xd714, 0xd715, 0xd716, 0xd717,
- 0xd718, 0xd719, 0xd71a, 0xd71b, 0xd71c, 0xd71d, 0xd71e, 0xd71f,
- 0xd720, 0xd721, 0xd722, 0xd723, 0xd724, 0xd725, 0xd726, 0xd727,
- 0xd728, 0xd729, 0xd72a, 0xd72b, 0xd72c, 0xd72d, 0xd72e, 0xd72f,
- 0xd730, 0xd731, 0xd732, 0xd733, 0xd734, 0xd735, 0xd736, 0xd737,
- 0xd738, 0xd739, 0xd73a, 0xd73b, 0xd73c, 0xd73d, 0xd73e, 0xd73f,
- 0xd740, 0xd741, 0xd742, 0xd743, 0xd744, 0xd745, 0xd746, 0xd747, /* 0xd740 */
- 0xd748, 0xd749, 0xd74a, 0xd74b, 0xd74c, 0xd74d, 0xd74e, 0xd74f,
- 0xd750, 0xd751, 0xd752, 0xd753, 0xd754, 0xd755, 0xd756, 0xd757,
- 0xd758, 0xd759, 0xd75a, 0xd75b, 0xd75c, 0xd75d, 0xd75e, 0xd75f,
- 0xd760, 0xd761, 0xd762, 0xd763, 0xd764, 0xd765, 0xd766, 0xd767,
- 0xd768, 0xd769, 0xd76a, 0xd76b, 0xd76c, 0xd76d, 0xd76e, 0xd76f,
- 0xd770, 0xd771, 0xd772, 0xd773, 0xd774, 0xd775, 0xd776, 0xd777,
- 0xd778, 0xd779, 0xd77a, 0xd77b, 0xd77c, 0xd77d, 0xd77e, 0xd77f,
- 0xd780, 0xd781, 0xd782, 0xd783, 0xd784, 0xd785, 0xd786, 0xd787, /* 0xd780 */
- 0xd788, 0xd789, 0xd78a, 0xd78b, 0xd78c, 0xd78d, 0xd78e, 0xd78f,
- 0xd790, 0xd791, 0xd792, 0xd793, 0xd794, 0xd795, 0xd796, 0xd797,
- 0xd798, 0xd799, 0xd79a, 0xd79b, 0xd79c, 0xd79d, 0xd79e, 0xd79f,
- 0xd7a0, 0xd7a1, 0xd7a2, 0xd7a3, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xd7b0, 0xd7b1, 0xd7b2, 0xd7b3, 0xd7b4, 0xd7b5, 0xd7b6, 0xd7b7,
- 0xd7b8, 0xd7b9, 0xd7ba, 0xd7bb, 0xd7bc, 0xd7bd, 0xd7be, 0xd7bf,
- 0xd7c0, 0xd7c1, 0xd7c2, 0xd7c3, 0xd7c4, 0xd7c5, 0xd7c6, 0x0000, /* 0xd7c0 */
- 0x0000, 0x0000, 0x0000, 0xd7cb, 0xd7cc, 0xd7cd, 0xd7ce, 0xd7cf,
- 0xd7d0, 0xd7d1, 0xd7d2, 0xd7d3, 0xd7d4, 0xd7d5, 0xd7d6, 0xd7d7,
- 0xd7d8, 0xd7d9, 0xd7da, 0xd7db, 0xd7dc, 0xd7dd, 0xd7de, 0xd7df,
- 0xd7e0, 0xd7e1, 0xd7e2, 0xd7e3, 0xd7e4, 0xd7e5, 0xd7e6, 0xd7e7,
- 0xd7e8, 0xd7e9, 0xd7ea, 0xd7eb, 0xd7ec, 0xd7ed, 0xd7ee, 0xd7ef,
- 0xd7f0, 0xd7f1, 0xd7f2, 0xd7f3, 0xd7f4, 0xd7f5, 0xd7f6, 0xd7f7,
- 0xd7f8, 0xd7f9, 0xd7fa, 0xd7fb, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xd800, 0xd801, 0xd802, 0xd803, 0xd804, 0xd805, 0xd806, 0xd807, /* 0xd800 */
- 0xd808, 0xd809, 0xd80a, 0xd80b, 0xd80c, 0xd80d, 0xd80e, 0xd80f,
- 0xd810, 0xd811, 0xd812, 0xd813, 0xd814, 0xd815, 0xd816, 0xd817,
- 0xd818, 0xd819, 0xd81a, 0xd81b, 0xd81c, 0xd81d, 0xd81e, 0xd81f,
- 0xd820, 0xd821, 0xd822, 0xd823, 0xd824, 0xd825, 0xd826, 0xd827,
- 0xd828, 0xd829, 0xd82a, 0xd82b, 0xd82c, 0xd82d, 0xd82e, 0xd82f,
- 0xd830, 0xd831, 0xd832, 0xd833, 0xd834, 0xd835, 0xd836, 0xd837,
- 0xd838, 0xd839, 0xd83a, 0xd83b, 0xd83c, 0xd83d, 0xd83e, 0xd83f,
- 0xd840, 0xd841, 0xd842, 0xd843, 0xd844, 0xd845, 0xd846, 0xd847, /* 0xd840 */
- 0xd848, 0xd849, 0xd84a, 0xd84b, 0xd84c, 0xd84d, 0xd84e, 0xd84f,
- 0xd850, 0xd851, 0xd852, 0xd853, 0xd854, 0xd855, 0xd856, 0xd857,
- 0xd858, 0xd859, 0xd85a, 0xd85b, 0xd85c, 0xd85d, 0xd85e, 0xd85f,
- 0xd860, 0xd861, 0xd862, 0xd863, 0xd864, 0xd865, 0xd866, 0xd867,
- 0xd868, 0xd869, 0xd86a, 0xd86b, 0xd86c, 0xd86d, 0xd86e, 0xd86f,
- 0xd870, 0xd871, 0xd872, 0xd873, 0xd874, 0xd875, 0xd876, 0xd877,
- 0xd878, 0xd879, 0xd87a, 0xd87b, 0xd87c, 0xd87d, 0xd87e, 0xd87f,
- 0xd880, 0xd881, 0xd882, 0xd883, 0xd884, 0xd885, 0xd886, 0xd887, /* 0xd880 */
- 0xd888, 0xd889, 0xd88a, 0xd88b, 0xd88c, 0xd88d, 0xd88e, 0xd88f,
- 0xd890, 0xd891, 0xd892, 0xd893, 0xd894, 0xd895, 0xd896, 0xd897,
- 0xd898, 0xd899, 0xd89a, 0xd89b, 0xd89c, 0xd89d, 0xd89e, 0xd89f,
- 0xd8a0, 0xd8a1, 0xd8a2, 0xd8a3, 0xd8a4, 0xd8a5, 0xd8a6, 0xd8a7,
- 0xd8a8, 0xd8a9, 0xd8aa, 0xd8ab, 0xd8ac, 0xd8ad, 0xd8ae, 0xd8af,
- 0xd8b0, 0xd8b1, 0xd8b2, 0xd8b3, 0xd8b4, 0xd8b5, 0xd8b6, 0xd8b7,
- 0xd8b8, 0xd8b9, 0xd8ba, 0xd8bb, 0xd8bc, 0xd8bd, 0xd8be, 0xd8bf,
- 0xd8c0, 0xd8c1, 0xd8c2, 0xd8c3, 0xd8c4, 0xd8c5, 0xd8c6, 0xd8c7, /* 0xd8c0 */
- 0xd8c8, 0xd8c9, 0xd8ca, 0xd8cb, 0xd8cc, 0xd8cd, 0xd8ce, 0xd8cf,
- 0xd8d0, 0xd8d1, 0xd8d2, 0xd8d3, 0xd8d4, 0xd8d5, 0xd8d6, 0xd8d7,
- 0xd8d8, 0xd8d9, 0xd8da, 0xd8db, 0xd8dc, 0xd8dd, 0xd8de, 0xd8df,
- 0xd8e0, 0xd8e1, 0xd8e2, 0xd8e3, 0xd8e4, 0xd8e5, 0xd8e6, 0xd8e7,
- 0xd8e8, 0xd8e9, 0xd8ea, 0xd8eb, 0xd8ec, 0xd8ed, 0xd8ee, 0xd8ef,
- 0xd8f0, 0xd8f1, 0xd8f2, 0xd8f3, 0xd8f4, 0xd8f5, 0xd8f6, 0xd8f7,
- 0xd8f8, 0xd8f9, 0xd8fa, 0xd8fb, 0xd8fc, 0xd8fd, 0xd8fe, 0xd8ff,
- 0xd900, 0xd901, 0xd902, 0xd903, 0xd904, 0xd905, 0xd906, 0xd907, /* 0xd900 */
- 0xd908, 0xd909, 0xd90a, 0xd90b, 0xd90c, 0xd90d, 0xd90e, 0xd90f,
- 0xd910, 0xd911, 0xd912, 0xd913, 0xd914, 0xd915, 0xd916, 0xd917,
- 0xd918, 0xd919, 0xd91a, 0xd91b, 0xd91c, 0xd91d, 0xd91e, 0xd91f,
- 0xd920, 0xd921, 0xd922, 0xd923, 0xd924, 0xd925, 0xd926, 0xd927,
- 0xd928, 0xd929, 0xd92a, 0xd92b, 0xd92c, 0xd92d, 0xd92e, 0xd92f,
- 0xd930, 0xd931, 0xd932, 0xd933, 0xd934, 0xd935, 0xd936, 0xd937,
- 0xd938, 0xd939, 0xd93a, 0xd93b, 0xd93c, 0xd93d, 0xd93e, 0xd93f,
- 0xd940, 0xd941, 0xd942, 0xd943, 0xd944, 0xd945, 0xd946, 0xd947, /* 0xd940 */
- 0xd948, 0xd949, 0xd94a, 0xd94b, 0xd94c, 0xd94d, 0xd94e, 0xd94f,
- 0xd950, 0xd951, 0xd952, 0xd953, 0xd954, 0xd955, 0xd956, 0xd957,
- 0xd958, 0xd959, 0xd95a, 0xd95b, 0xd95c, 0xd95d, 0xd95e, 0xd95f,
- 0xd960, 0xd961, 0xd962, 0xd963, 0xd964, 0xd965, 0xd966, 0xd967,
- 0xd968, 0xd969, 0xd96a, 0xd96b, 0xd96c, 0xd96d, 0xd96e, 0xd96f,
- 0xd970, 0xd971, 0xd972, 0xd973, 0xd974, 0xd975, 0xd976, 0xd977,
- 0xd978, 0xd979, 0xd97a, 0xd97b, 0xd97c, 0xd97d, 0xd97e, 0xd97f,
- 0xd980, 0xd981, 0xd982, 0xd983, 0xd984, 0xd985, 0xd986, 0xd987, /* 0xd980 */
- 0xd988, 0xd989, 0xd98a, 0xd98b, 0xd98c, 0xd98d, 0xd98e, 0xd98f,
- 0xd990, 0xd991, 0xd992, 0xd993, 0xd994, 0xd995, 0xd996, 0xd997,
- 0xd998, 0xd999, 0xd99a, 0xd99b, 0xd99c, 0xd99d, 0xd99e, 0xd99f,
- 0xd9a0, 0xd9a1, 0xd9a2, 0xd9a3, 0xd9a4, 0xd9a5, 0xd9a6, 0xd9a7,
- 0xd9a8, 0xd9a9, 0xd9aa, 0xd9ab, 0xd9ac, 0xd9ad, 0xd9ae, 0xd9af,
- 0xd9b0, 0xd9b1, 0xd9b2, 0xd9b3, 0xd9b4, 0xd9b5, 0xd9b6, 0xd9b7,
- 0xd9b8, 0xd9b9, 0xd9ba, 0xd9bb, 0xd9bc, 0xd9bd, 0xd9be, 0xd9bf,
- 0xd9c0, 0xd9c1, 0xd9c2, 0xd9c3, 0xd9c4, 0xd9c5, 0xd9c6, 0xd9c7, /* 0xd9c0 */
- 0xd9c8, 0xd9c9, 0xd9ca, 0xd9cb, 0xd9cc, 0xd9cd, 0xd9ce, 0xd9cf,
- 0xd9d0, 0xd9d1, 0xd9d2, 0xd9d3, 0xd9d4, 0xd9d5, 0xd9d6, 0xd9d7,
- 0xd9d8, 0xd9d9, 0xd9da, 0xd9db, 0xd9dc, 0xd9dd, 0xd9de, 0xd9df,
- 0xd9e0, 0xd9e1, 0xd9e2, 0xd9e3, 0xd9e4, 0xd9e5, 0xd9e6, 0xd9e7,
- 0xd9e8, 0xd9e9, 0xd9ea, 0xd9eb, 0xd9ec, 0xd9ed, 0xd9ee, 0xd9ef,
- 0xd9f0, 0xd9f1, 0xd9f2, 0xd9f3, 0xd9f4, 0xd9f5, 0xd9f6, 0xd9f7,
- 0xd9f8, 0xd9f9, 0xd9fa, 0xd9fb, 0xd9fc, 0xd9fd, 0xd9fe, 0xd9ff,
- 0xda00, 0xda01, 0xda02, 0xda03, 0xda04, 0xda05, 0xda06, 0xda07, /* 0xda00 */
- 0xda08, 0xda09, 0xda0a, 0xda0b, 0xda0c, 0xda0d, 0xda0e, 0xda0f,
- 0xda10, 0xda11, 0xda12, 0xda13, 0xda14, 0xda15, 0xda16, 0xda17,
- 0xda18, 0xda19, 0xda1a, 0xda1b, 0xda1c, 0xda1d, 0xda1e, 0xda1f,
- 0xda20, 0xda21, 0xda22, 0xda23, 0xda24, 0xda25, 0xda26, 0xda27,
- 0xda28, 0xda29, 0xda2a, 0xda2b, 0xda2c, 0xda2d, 0xda2e, 0xda2f,
- 0xda30, 0xda31, 0xda32, 0xda33, 0xda34, 0xda35, 0xda36, 0xda37,
- 0xda38, 0xda39, 0xda3a, 0xda3b, 0xda3c, 0xda3d, 0xda3e, 0xda3f,
- 0xda40, 0xda41, 0xda42, 0xda43, 0xda44, 0xda45, 0xda46, 0xda47, /* 0xda40 */
- 0xda48, 0xda49, 0xda4a, 0xda4b, 0xda4c, 0xda4d, 0xda4e, 0xda4f,
- 0xda50, 0xda51, 0xda52, 0xda53, 0xda54, 0xda55, 0xda56, 0xda57,
- 0xda58, 0xda59, 0xda5a, 0xda5b, 0xda5c, 0xda5d, 0xda5e, 0xda5f,
- 0xda60, 0xda61, 0xda62, 0xda63, 0xda64, 0xda65, 0xda66, 0xda67,
- 0xda68, 0xda69, 0xda6a, 0xda6b, 0xda6c, 0xda6d, 0xda6e, 0xda6f,
- 0xda70, 0xda71, 0xda72, 0xda73, 0xda74, 0xda75, 0xda76, 0xda77,
- 0xda78, 0xda79, 0xda7a, 0xda7b, 0xda7c, 0xda7d, 0xda7e, 0xda7f,
- 0xda80, 0xda81, 0xda82, 0xda83, 0xda84, 0xda85, 0xda86, 0xda87, /* 0xda80 */
- 0xda88, 0xda89, 0xda8a, 0xda8b, 0xda8c, 0xda8d, 0xda8e, 0xda8f,
- 0xda90, 0xda91, 0xda92, 0xda93, 0xda94, 0xda95, 0xda96, 0xda97,
- 0xda98, 0xda99, 0xda9a, 0xda9b, 0xda9c, 0xda9d, 0xda9e, 0xda9f,
- 0xdaa0, 0xdaa1, 0xdaa2, 0xdaa3, 0xdaa4, 0xdaa5, 0xdaa6, 0xdaa7,
- 0xdaa8, 0xdaa9, 0xdaaa, 0xdaab, 0xdaac, 0xdaad, 0xdaae, 0xdaaf,
- 0xdab0, 0xdab1, 0xdab2, 0xdab3, 0xdab4, 0xdab5, 0xdab6, 0xdab7,
- 0xdab8, 0xdab9, 0xdaba, 0xdabb, 0xdabc, 0xdabd, 0xdabe, 0xdabf,
- 0xdac0, 0xdac1, 0xdac2, 0xdac3, 0xdac4, 0xdac5, 0xdac6, 0xdac7, /* 0xdac0 */
- 0xdac8, 0xdac9, 0xdaca, 0xdacb, 0xdacc, 0xdacd, 0xdace, 0xdacf,
- 0xdad0, 0xdad1, 0xdad2, 0xdad3, 0xdad4, 0xdad5, 0xdad6, 0xdad7,
- 0xdad8, 0xdad9, 0xdada, 0xdadb, 0xdadc, 0xdadd, 0xdade, 0xdadf,
- 0xdae0, 0xdae1, 0xdae2, 0xdae3, 0xdae4, 0xdae5, 0xdae6, 0xdae7,
- 0xdae8, 0xdae9, 0xdaea, 0xdaeb, 0xdaec, 0xdaed, 0xdaee, 0xdaef,
- 0xdaf0, 0xdaf1, 0xdaf2, 0xdaf3, 0xdaf4, 0xdaf5, 0xdaf6, 0xdaf7,
- 0xdaf8, 0xdaf9, 0xdafa, 0xdafb, 0xdafc, 0xdafd, 0xdafe, 0xdaff,
- 0xdb00, 0xdb01, 0xdb02, 0xdb03, 0xdb04, 0xdb05, 0xdb06, 0xdb07, /* 0xdb00 */
- 0xdb08, 0xdb09, 0xdb0a, 0xdb0b, 0xdb0c, 0xdb0d, 0xdb0e, 0xdb0f,
- 0xdb10, 0xdb11, 0xdb12, 0xdb13, 0xdb14, 0xdb15, 0xdb16, 0xdb17,
- 0xdb18, 0xdb19, 0xdb1a, 0xdb1b, 0xdb1c, 0xdb1d, 0xdb1e, 0xdb1f,
- 0xdb20, 0xdb21, 0xdb22, 0xdb23, 0xdb24, 0xdb25, 0xdb26, 0xdb27,
- 0xdb28, 0xdb29, 0xdb2a, 0xdb2b, 0xdb2c, 0xdb2d, 0xdb2e, 0xdb2f,
- 0xdb30, 0xdb31, 0xdb32, 0xdb33, 0xdb34, 0xdb35, 0xdb36, 0xdb37,
- 0xdb38, 0xdb39, 0xdb3a, 0xdb3b, 0xdb3c, 0xdb3d, 0xdb3e, 0xdb3f,
- 0xdb40, 0xdb41, 0xdb42, 0xdb43, 0xdb44, 0xdb45, 0xdb46, 0xdb47, /* 0xdb40 */
- 0xdb48, 0xdb49, 0xdb4a, 0xdb4b, 0xdb4c, 0xdb4d, 0xdb4e, 0xdb4f,
- 0xdb50, 0xdb51, 0xdb52, 0xdb53, 0xdb54, 0xdb55, 0xdb56, 0xdb57,
- 0xdb58, 0xdb59, 0xdb5a, 0xdb5b, 0xdb5c, 0xdb5d, 0xdb5e, 0xdb5f,
- 0xdb60, 0xdb61, 0xdb62, 0xdb63, 0xdb64, 0xdb65, 0xdb66, 0xdb67,
- 0xdb68, 0xdb69, 0xdb6a, 0xdb6b, 0xdb6c, 0xdb6d, 0xdb6e, 0xdb6f,
- 0xdb70, 0xdb71, 0xdb72, 0xdb73, 0xdb74, 0xdb75, 0xdb76, 0xdb77,
- 0xdb78, 0xdb79, 0xdb7a, 0xdb7b, 0xdb7c, 0xdb7d, 0xdb7e, 0xdb7f,
- 0xdb80, 0xdb81, 0xdb82, 0xdb83, 0xdb84, 0xdb85, 0xdb86, 0xdb87, /* 0xdb80 */
- 0xdb88, 0xdb89, 0xdb8a, 0xdb8b, 0xdb8c, 0xdb8d, 0xdb8e, 0xdb8f,
- 0xdb90, 0xdb91, 0xdb92, 0xdb93, 0xdb94, 0xdb95, 0xdb96, 0xdb97,
- 0xdb98, 0xdb99, 0xdb9a, 0xdb9b, 0xdb9c, 0xdb9d, 0xdb9e, 0xdb9f,
- 0xdba0, 0xdba1, 0xdba2, 0xdba3, 0xdba4, 0xdba5, 0xdba6, 0xdba7,
- 0xdba8, 0xdba9, 0xdbaa, 0xdbab, 0xdbac, 0xdbad, 0xdbae, 0xdbaf,
- 0xdbb0, 0xdbb1, 0xdbb2, 0xdbb3, 0xdbb4, 0xdbb5, 0xdbb6, 0xdbb7,
- 0xdbb8, 0xdbb9, 0xdbba, 0xdbbb, 0xdbbc, 0xdbbd, 0xdbbe, 0xdbbf,
- 0xdbc0, 0xdbc1, 0xdbc2, 0xdbc3, 0xdbc4, 0xdbc5, 0xdbc6, 0xdbc7, /* 0xdbc0 */
- 0xdbc8, 0xdbc9, 0xdbca, 0xdbcb, 0xdbcc, 0xdbcd, 0xdbce, 0xdbcf,
- 0xdbd0, 0xdbd1, 0xdbd2, 0xdbd3, 0xdbd4, 0xdbd5, 0xdbd6, 0xdbd7,
- 0xdbd8, 0xdbd9, 0xdbda, 0xdbdb, 0xdbdc, 0xdbdd, 0xdbde, 0xdbdf,
- 0xdbe0, 0xdbe1, 0xdbe2, 0xdbe3, 0xdbe4, 0xdbe5, 0xdbe6, 0xdbe7,
- 0xdbe8, 0xdbe9, 0xdbea, 0xdbeb, 0xdbec, 0xdbed, 0xdbee, 0xdbef,
- 0xdbf0, 0xdbf1, 0xdbf2, 0xdbf3, 0xdbf4, 0xdbf5, 0xdbf6, 0xdbf7,
- 0xdbf8, 0xdbf9, 0xdbfa, 0xdbfb, 0xdbfc, 0xdbfd, 0xdbfe, 0xdbff,
- 0xdc00, 0xdc01, 0xdc02, 0xdc03, 0xdc04, 0xdc05, 0xdc06, 0xdc07, /* 0xdc00 */
- 0xdc08, 0xdc09, 0xdc0a, 0xdc0b, 0xdc0c, 0xdc0d, 0xdc0e, 0xdc0f,
- 0xdc10, 0xdc11, 0xdc12, 0xdc13, 0xdc14, 0xdc15, 0xdc16, 0xdc17,
- 0xdc18, 0xdc19, 0xdc1a, 0xdc1b, 0xdc1c, 0xdc1d, 0xdc1e, 0xdc1f,
- 0xdc20, 0xdc21, 0xdc22, 0xdc23, 0xdc24, 0xdc25, 0xdc26, 0xdc27,
- 0xdc28, 0xdc29, 0xdc2a, 0xdc2b, 0xdc2c, 0xdc2d, 0xdc2e, 0xdc2f,
- 0xdc30, 0xdc31, 0xdc32, 0xdc33, 0xdc34, 0xdc35, 0xdc36, 0xdc37,
- 0xdc38, 0xdc39, 0xdc3a, 0xdc3b, 0xdc3c, 0xdc3d, 0xdc3e, 0xdc3f,
- 0xdc40, 0xdc41, 0xdc42, 0xdc43, 0xdc44, 0xdc45, 0xdc46, 0xdc47, /* 0xdc40 */
- 0xdc48, 0xdc49, 0xdc4a, 0xdc4b, 0xdc4c, 0xdc4d, 0xdc4e, 0xdc4f,
- 0xdc50, 0xdc51, 0xdc52, 0xdc53, 0xdc54, 0xdc55, 0xdc56, 0xdc57,
- 0xdc58, 0xdc59, 0xdc5a, 0xdc5b, 0xdc5c, 0xdc5d, 0xdc5e, 0xdc5f,
- 0xdc60, 0xdc61, 0xdc62, 0xdc63, 0xdc64, 0xdc65, 0xdc66, 0xdc67,
- 0xdc68, 0xdc69, 0xdc6a, 0xdc6b, 0xdc6c, 0xdc6d, 0xdc6e, 0xdc6f,
- 0xdc70, 0xdc71, 0xdc72, 0xdc73, 0xdc74, 0xdc75, 0xdc76, 0xdc77,
- 0xdc78, 0xdc79, 0xdc7a, 0xdc7b, 0xdc7c, 0xdc7d, 0xdc7e, 0xdc7f,
- 0xdc80, 0xdc81, 0xdc82, 0xdc83, 0xdc84, 0xdc85, 0xdc86, 0xdc87, /* 0xdc80 */
- 0xdc88, 0xdc89, 0xdc8a, 0xdc8b, 0xdc8c, 0xdc8d, 0xdc8e, 0xdc8f,
- 0xdc90, 0xdc91, 0xdc92, 0xdc93, 0xdc94, 0xdc95, 0xdc96, 0xdc97,
- 0xdc98, 0xdc99, 0xdc9a, 0xdc9b, 0xdc9c, 0xdc9d, 0xdc9e, 0xdc9f,
- 0xdca0, 0xdca1, 0xdca2, 0xdca3, 0xdca4, 0xdca5, 0xdca6, 0xdca7,
- 0xdca8, 0xdca9, 0xdcaa, 0xdcab, 0xdcac, 0xdcad, 0xdcae, 0xdcaf,
- 0xdcb0, 0xdcb1, 0xdcb2, 0xdcb3, 0xdcb4, 0xdcb5, 0xdcb6, 0xdcb7,
- 0xdcb8, 0xdcb9, 0xdcba, 0xdcbb, 0xdcbc, 0xdcbd, 0xdcbe, 0xdcbf,
- 0xdcc0, 0xdcc1, 0xdcc2, 0xdcc3, 0xdcc4, 0xdcc5, 0xdcc6, 0xdcc7, /* 0xdcc0 */
- 0xdcc8, 0xdcc9, 0xdcca, 0xdccb, 0xdccc, 0xdccd, 0xdcce, 0xdccf,
- 0xdcd0, 0xdcd1, 0xdcd2, 0xdcd3, 0xdcd4, 0xdcd5, 0xdcd6, 0xdcd7,
- 0xdcd8, 0xdcd9, 0xdcda, 0xdcdb, 0xdcdc, 0xdcdd, 0xdcde, 0xdcdf,
- 0xdce0, 0xdce1, 0xdce2, 0xdce3, 0xdce4, 0xdce5, 0xdce6, 0xdce7,
- 0xdce8, 0xdce9, 0xdcea, 0xdceb, 0xdcec, 0xdced, 0xdcee, 0xdcef,
- 0xdcf0, 0xdcf1, 0xdcf2, 0xdcf3, 0xdcf4, 0xdcf5, 0xdcf6, 0xdcf7,
- 0xdcf8, 0xdcf9, 0xdcfa, 0xdcfb, 0xdcfc, 0xdcfd, 0xdcfe, 0xdcff,
- 0xdd00, 0xdd01, 0xdd02, 0xdd03, 0xdd04, 0xdd05, 0xdd06, 0xdd07, /* 0xdd00 */
- 0xdd08, 0xdd09, 0xdd0a, 0xdd0b, 0xdd0c, 0xdd0d, 0xdd0e, 0xdd0f,
- 0xdd10, 0xdd11, 0xdd12, 0xdd13, 0xdd14, 0xdd15, 0xdd16, 0xdd17,
- 0xdd18, 0xdd19, 0xdd1a, 0xdd1b, 0xdd1c, 0xdd1d, 0xdd1e, 0xdd1f,
- 0xdd20, 0xdd21, 0xdd22, 0xdd23, 0xdd24, 0xdd25, 0xdd26, 0xdd27,
- 0xdd28, 0xdd29, 0xdd2a, 0xdd2b, 0xdd2c, 0xdd2d, 0xdd2e, 0xdd2f,
- 0xdd30, 0xdd31, 0xdd32, 0xdd33, 0xdd34, 0xdd35, 0xdd36, 0xdd37,
- 0xdd38, 0xdd39, 0xdd3a, 0xdd3b, 0xdd3c, 0xdd3d, 0xdd3e, 0xdd3f,
- 0xdd40, 0xdd41, 0xdd42, 0xdd43, 0xdd44, 0xdd45, 0xdd46, 0xdd47, /* 0xdd40 */
- 0xdd48, 0xdd49, 0xdd4a, 0xdd4b, 0xdd4c, 0xdd4d, 0xdd4e, 0xdd4f,
- 0xdd50, 0xdd51, 0xdd52, 0xdd53, 0xdd54, 0xdd55, 0xdd56, 0xdd57,
- 0xdd58, 0xdd59, 0xdd5a, 0xdd5b, 0xdd5c, 0xdd5d, 0xdd5e, 0xdd5f,
- 0xdd60, 0xdd61, 0xdd62, 0xdd63, 0xdd64, 0xdd65, 0xdd66, 0xdd67,
- 0xdd68, 0xdd69, 0xdd6a, 0xdd6b, 0xdd6c, 0xdd6d, 0xdd6e, 0xdd6f,
- 0xdd70, 0xdd71, 0xdd72, 0xdd73, 0xdd74, 0xdd75, 0xdd76, 0xdd77,
- 0xdd78, 0xdd79, 0xdd7a, 0xdd7b, 0xdd7c, 0xdd7d, 0xdd7e, 0xdd7f,
- 0xdd80, 0xdd81, 0xdd82, 0xdd83, 0xdd84, 0xdd85, 0xdd86, 0xdd87, /* 0xdd80 */
- 0xdd88, 0xdd89, 0xdd8a, 0xdd8b, 0xdd8c, 0xdd8d, 0xdd8e, 0xdd8f,
- 0xdd90, 0xdd91, 0xdd92, 0xdd93, 0xdd94, 0xdd95, 0xdd96, 0xdd97,
- 0xdd98, 0xdd99, 0xdd9a, 0xdd9b, 0xdd9c, 0xdd9d, 0xdd9e, 0xdd9f,
- 0xdda0, 0xdda1, 0xdda2, 0xdda3, 0xdda4, 0xdda5, 0xdda6, 0xdda7,
- 0xdda8, 0xdda9, 0xddaa, 0xddab, 0xddac, 0xddad, 0xddae, 0xddaf,
- 0xddb0, 0xddb1, 0xddb2, 0xddb3, 0xddb4, 0xddb5, 0xddb6, 0xddb7,
- 0xddb8, 0xddb9, 0xddba, 0xddbb, 0xddbc, 0xddbd, 0xddbe, 0xddbf,
- 0xddc0, 0xddc1, 0xddc2, 0xddc3, 0xddc4, 0xddc5, 0xddc6, 0xddc7, /* 0xddc0 */
- 0xddc8, 0xddc9, 0xddca, 0xddcb, 0xddcc, 0xddcd, 0xddce, 0xddcf,
- 0xddd0, 0xddd1, 0xddd2, 0xddd3, 0xddd4, 0xddd5, 0xddd6, 0xddd7,
- 0xddd8, 0xddd9, 0xddda, 0xdddb, 0xdddc, 0xdddd, 0xddde, 0xdddf,
- 0xdde0, 0xdde1, 0xdde2, 0xdde3, 0xdde4, 0xdde5, 0xdde6, 0xdde7,
- 0xdde8, 0xdde9, 0xddea, 0xddeb, 0xddec, 0xdded, 0xddee, 0xddef,
- 0xddf0, 0xddf1, 0xddf2, 0xddf3, 0xddf4, 0xddf5, 0xddf6, 0xddf7,
- 0xddf8, 0xddf9, 0xddfa, 0xddfb, 0xddfc, 0xddfd, 0xddfe, 0xddff,
- 0xde00, 0xde01, 0xde02, 0xde03, 0xde04, 0xde05, 0xde06, 0xde07, /* 0xde00 */
- 0xde08, 0xde09, 0xde0a, 0xde0b, 0xde0c, 0xde0d, 0xde0e, 0xde0f,
- 0xde10, 0xde11, 0xde12, 0xde13, 0xde14, 0xde15, 0xde16, 0xde17,
- 0xde18, 0xde19, 0xde1a, 0xde1b, 0xde1c, 0xde1d, 0xde1e, 0xde1f,
- 0xde20, 0xde21, 0xde22, 0xde23, 0xde24, 0xde25, 0xde26, 0xde27,
- 0xde28, 0xde29, 0xde2a, 0xde2b, 0xde2c, 0xde2d, 0xde2e, 0xde2f,
- 0xde30, 0xde31, 0xde32, 0xde33, 0xde34, 0xde35, 0xde36, 0xde37,
- 0xde38, 0xde39, 0xde3a, 0xde3b, 0xde3c, 0xde3d, 0xde3e, 0xde3f,
- 0xde40, 0xde41, 0xde42, 0xde43, 0xde44, 0xde45, 0xde46, 0xde47, /* 0xde40 */
- 0xde48, 0xde49, 0xde4a, 0xde4b, 0xde4c, 0xde4d, 0xde4e, 0xde4f,
- 0xde50, 0xde51, 0xde52, 0xde53, 0xde54, 0xde55, 0xde56, 0xde57,
- 0xde58, 0xde59, 0xde5a, 0xde5b, 0xde5c, 0xde5d, 0xde5e, 0xde5f,
- 0xde60, 0xde61, 0xde62, 0xde63, 0xde64, 0xde65, 0xde66, 0xde67,
- 0xde68, 0xde69, 0xde6a, 0xde6b, 0xde6c, 0xde6d, 0xde6e, 0xde6f,
- 0xde70, 0xde71, 0xde72, 0xde73, 0xde74, 0xde75, 0xde76, 0xde77,
- 0xde78, 0xde79, 0xde7a, 0xde7b, 0xde7c, 0xde7d, 0xde7e, 0xde7f,
- 0xde80, 0xde81, 0xde82, 0xde83, 0xde84, 0xde85, 0xde86, 0xde87, /* 0xde80 */
- 0xde88, 0xde89, 0xde8a, 0xde8b, 0xde8c, 0xde8d, 0xde8e, 0xde8f,
- 0xde90, 0xde91, 0xde92, 0xde93, 0xde94, 0xde95, 0xde96, 0xde97,
- 0xde98, 0xde99, 0xde9a, 0xde9b, 0xde9c, 0xde9d, 0xde9e, 0xde9f,
- 0xdea0, 0xdea1, 0xdea2, 0xdea3, 0xdea4, 0xdea5, 0xdea6, 0xdea7,
- 0xdea8, 0xdea9, 0xdeaa, 0xdeab, 0xdeac, 0xdead, 0xdeae, 0xdeaf,
- 0xdeb0, 0xdeb1, 0xdeb2, 0xdeb3, 0xdeb4, 0xdeb5, 0xdeb6, 0xdeb7,
- 0xdeb8, 0xdeb9, 0xdeba, 0xdebb, 0xdebc, 0xdebd, 0xdebe, 0xdebf,
- 0xdec0, 0xdec1, 0xdec2, 0xdec3, 0xdec4, 0xdec5, 0xdec6, 0xdec7, /* 0xdec0 */
- 0xdec8, 0xdec9, 0xdeca, 0xdecb, 0xdecc, 0xdecd, 0xdece, 0xdecf,
- 0xded0, 0xded1, 0xded2, 0xded3, 0xded4, 0xded5, 0xded6, 0xded7,
- 0xded8, 0xded9, 0xdeda, 0xdedb, 0xdedc, 0xdedd, 0xdede, 0xdedf,
- 0xdee0, 0xdee1, 0xdee2, 0xdee3, 0xdee4, 0xdee5, 0xdee6, 0xdee7,
- 0xdee8, 0xdee9, 0xdeea, 0xdeeb, 0xdeec, 0xdeed, 0xdeee, 0xdeef,
- 0xdef0, 0xdef1, 0xdef2, 0xdef3, 0xdef4, 0xdef5, 0xdef6, 0xdef7,
- 0xdef8, 0xdef9, 0xdefa, 0xdefb, 0xdefc, 0xdefd, 0xdefe, 0xdeff,
- 0xdf00, 0xdf01, 0xdf02, 0xdf03, 0xdf04, 0xdf05, 0xdf06, 0xdf07, /* 0xdf00 */
- 0xdf08, 0xdf09, 0xdf0a, 0xdf0b, 0xdf0c, 0xdf0d, 0xdf0e, 0xdf0f,
- 0xdf10, 0xdf11, 0xdf12, 0xdf13, 0xdf14, 0xdf15, 0xdf16, 0xdf17,
- 0xdf18, 0xdf19, 0xdf1a, 0xdf1b, 0xdf1c, 0xdf1d, 0xdf1e, 0xdf1f,
- 0xdf20, 0xdf21, 0xdf22, 0xdf23, 0xdf24, 0xdf25, 0xdf26, 0xdf27,
- 0xdf28, 0xdf29, 0xdf2a, 0xdf2b, 0xdf2c, 0xdf2d, 0xdf2e, 0xdf2f,
- 0xdf30, 0xdf31, 0xdf32, 0xdf33, 0xdf34, 0xdf35, 0xdf36, 0xdf37,
- 0xdf38, 0xdf39, 0xdf3a, 0xdf3b, 0xdf3c, 0xdf3d, 0xdf3e, 0xdf3f,
- 0xdf40, 0xdf41, 0xdf42, 0xdf43, 0xdf44, 0xdf45, 0xdf46, 0xdf47, /* 0xdf40 */
- 0xdf48, 0xdf49, 0xdf4a, 0xdf4b, 0xdf4c, 0xdf4d, 0xdf4e, 0xdf4f,
- 0xdf50, 0xdf51, 0xdf52, 0xdf53, 0xdf54, 0xdf55, 0xdf56, 0xdf57,
- 0xdf58, 0xdf59, 0xdf5a, 0xdf5b, 0xdf5c, 0xdf5d, 0xdf5e, 0xdf5f,
- 0xdf60, 0xdf61, 0xdf62, 0xdf63, 0xdf64, 0xdf65, 0xdf66, 0xdf67,
- 0xdf68, 0xdf69, 0xdf6a, 0xdf6b, 0xdf6c, 0xdf6d, 0xdf6e, 0xdf6f,
- 0xdf70, 0xdf71, 0xdf72, 0xdf73, 0xdf74, 0xdf75, 0xdf76, 0xdf77,
- 0xdf78, 0xdf79, 0xdf7a, 0xdf7b, 0xdf7c, 0xdf7d, 0xdf7e, 0xdf7f,
- 0xdf80, 0xdf81, 0xdf82, 0xdf83, 0xdf84, 0xdf85, 0xdf86, 0xdf87, /* 0xdf80 */
- 0xdf88, 0xdf89, 0xdf8a, 0xdf8b, 0xdf8c, 0xdf8d, 0xdf8e, 0xdf8f,
- 0xdf90, 0xdf91, 0xdf92, 0xdf93, 0xdf94, 0xdf95, 0xdf96, 0xdf97,
- 0xdf98, 0xdf99, 0xdf9a, 0xdf9b, 0xdf9c, 0xdf9d, 0xdf9e, 0xdf9f,
- 0xdfa0, 0xdfa1, 0xdfa2, 0xdfa3, 0xdfa4, 0xdfa5, 0xdfa6, 0xdfa7,
- 0xdfa8, 0xdfa9, 0xdfaa, 0xdfab, 0xdfac, 0xdfad, 0xdfae, 0xdfaf,
- 0xdfb0, 0xdfb1, 0xdfb2, 0xdfb3, 0xdfb4, 0xdfb5, 0xdfb6, 0xdfb7,
- 0xdfb8, 0xdfb9, 0xdfba, 0xdfbb, 0xdfbc, 0xdfbd, 0xdfbe, 0xdfbf,
- 0xdfc0, 0xdfc1, 0xdfc2, 0xdfc3, 0xdfc4, 0xdfc5, 0xdfc6, 0xdfc7, /* 0xdfc0 */
- 0xdfc8, 0xdfc9, 0xdfca, 0xdfcb, 0xdfcc, 0xdfcd, 0xdfce, 0xdfcf,
- 0xdfd0, 0xdfd1, 0xdfd2, 0xdfd3, 0xdfd4, 0xdfd5, 0xdfd6, 0xdfd7,
- 0xdfd8, 0xdfd9, 0xdfda, 0xdfdb, 0xdfdc, 0xdfdd, 0xdfde, 0xdfdf,
- 0xdfe0, 0xdfe1, 0xdfe2, 0xdfe3, 0xdfe4, 0xdfe5, 0xdfe6, 0xdfe7,
- 0xdfe8, 0xdfe9, 0xdfea, 0xdfeb, 0xdfec, 0xdfed, 0xdfee, 0xdfef,
- 0xdff0, 0xdff1, 0xdff2, 0xdff3, 0xdff4, 0xdff5, 0xdff6, 0xdff7,
- 0xdff8, 0xdff9, 0xdffa, 0xdffb, 0xdffc, 0xdffd, 0xdffe, 0xdfff,
- 0xe000, 0xe001, 0xe002, 0xe003, 0xe004, 0xe005, 0xe006, 0xe007, /* 0xe000 */
- 0xe008, 0xe009, 0xe00a, 0xe00b, 0xe00c, 0xe00d, 0xe00e, 0xe00f,
- 0xe010, 0xe011, 0xe012, 0xe013, 0xe014, 0xe015, 0xe016, 0xe017,
- 0xe018, 0xe019, 0xe01a, 0xe01b, 0xe01c, 0xe01d, 0xe01e, 0xe01f,
- 0xe020, 0xe021, 0xe022, 0xe023, 0xe024, 0xe025, 0xe026, 0xe027,
- 0xe028, 0xe029, 0xe02a, 0xe02b, 0xe02c, 0xe02d, 0xe02e, 0xe02f,
- 0xe030, 0xe031, 0xe032, 0xe033, 0xe034, 0xe035, 0xe036, 0xe037,
- 0xe038, 0xe039, 0xe03a, 0xe03b, 0xe03c, 0xe03d, 0xe03e, 0xe03f,
- 0xe040, 0xe041, 0xe042, 0xe043, 0xe044, 0xe045, 0xe046, 0xe047, /* 0xe040 */
- 0xe048, 0xe049, 0xe04a, 0xe04b, 0xe04c, 0xe04d, 0xe04e, 0xe04f,
- 0xe050, 0xe051, 0xe052, 0xe053, 0xe054, 0xe055, 0xe056, 0xe057,
- 0xe058, 0xe059, 0xe05a, 0xe05b, 0xe05c, 0xe05d, 0xe05e, 0xe05f,
- 0xe060, 0xe061, 0xe062, 0xe063, 0xe064, 0xe065, 0xe066, 0xe067,
- 0xe068, 0xe069, 0xe06a, 0xe06b, 0xe06c, 0xe06d, 0xe06e, 0xe06f,
- 0xe070, 0xe071, 0xe072, 0xe073, 0xe074, 0xe075, 0xe076, 0xe077,
- 0xe078, 0xe079, 0xe07a, 0xe07b, 0xe07c, 0xe07d, 0xe07e, 0xe07f,
- 0xe080, 0xe081, 0xe082, 0xe083, 0xe084, 0xe085, 0xe086, 0xe087, /* 0xe080 */
- 0xe088, 0xe089, 0xe08a, 0xe08b, 0xe08c, 0xe08d, 0xe08e, 0xe08f,
- 0xe090, 0xe091, 0xe092, 0xe093, 0xe094, 0xe095, 0xe096, 0xe097,
- 0xe098, 0xe099, 0xe09a, 0xe09b, 0xe09c, 0xe09d, 0xe09e, 0xe09f,
- 0xe0a0, 0xe0a1, 0xe0a2, 0xe0a3, 0xe0a4, 0xe0a5, 0xe0a6, 0xe0a7,
- 0xe0a8, 0xe0a9, 0xe0aa, 0xe0ab, 0xe0ac, 0xe0ad, 0xe0ae, 0xe0af,
- 0xe0b0, 0xe0b1, 0xe0b2, 0xe0b3, 0xe0b4, 0xe0b5, 0xe0b6, 0xe0b7,
- 0xe0b8, 0xe0b9, 0xe0ba, 0xe0bb, 0xe0bc, 0xe0bd, 0xe0be, 0xe0bf,
- 0xe0c0, 0xe0c1, 0xe0c2, 0xe0c3, 0xe0c4, 0xe0c5, 0xe0c6, 0xe0c7, /* 0xe0c0 */
- 0xe0c8, 0xe0c9, 0xe0ca, 0xe0cb, 0xe0cc, 0xe0cd, 0xe0ce, 0xe0cf,
- 0xe0d0, 0xe0d1, 0xe0d2, 0xe0d3, 0xe0d4, 0xe0d5, 0xe0d6, 0xe0d7,
- 0xe0d8, 0xe0d9, 0xe0da, 0xe0db, 0xe0dc, 0xe0dd, 0xe0de, 0xe0df,
- 0xe0e0, 0xe0e1, 0xe0e2, 0xe0e3, 0xe0e4, 0xe0e5, 0xe0e6, 0xe0e7,
- 0xe0e8, 0xe0e9, 0xe0ea, 0xe0eb, 0xe0ec, 0xe0ed, 0xe0ee, 0xe0ef,
- 0xe0f0, 0xe0f1, 0xe0f2, 0xe0f3, 0xe0f4, 0xe0f5, 0xe0f6, 0xe0f7,
- 0xe0f8, 0xe0f9, 0xe0fa, 0xe0fb, 0xe0fc, 0xe0fd, 0xe0fe, 0xe0ff,
- 0xe100, 0xe101, 0xe102, 0xe103, 0xe104, 0xe105, 0xe106, 0xe107, /* 0xe100 */
- 0xe108, 0xe109, 0xe10a, 0xe10b, 0xe10c, 0xe10d, 0xe10e, 0xe10f,
- 0xe110, 0xe111, 0xe112, 0xe113, 0xe114, 0xe115, 0xe116, 0xe117,
- 0xe118, 0xe119, 0xe11a, 0xe11b, 0xe11c, 0xe11d, 0xe11e, 0xe11f,
- 0xe120, 0xe121, 0xe122, 0xe123, 0xe124, 0xe125, 0xe126, 0xe127,
- 0xe128, 0xe129, 0xe12a, 0xe12b, 0xe12c, 0xe12d, 0xe12e, 0xe12f,
- 0xe130, 0xe131, 0xe132, 0xe133, 0xe134, 0xe135, 0xe136, 0xe137,
- 0xe138, 0xe139, 0xe13a, 0xe13b, 0xe13c, 0xe13d, 0xe13e, 0xe13f,
- 0xe140, 0xe141, 0xe142, 0xe143, 0xe144, 0xe145, 0xe146, 0xe147, /* 0xe140 */
- 0xe148, 0xe149, 0xe14a, 0xe14b, 0xe14c, 0xe14d, 0xe14e, 0xe14f,
- 0xe150, 0xe151, 0xe152, 0xe153, 0xe154, 0xe155, 0xe156, 0xe157,
- 0xe158, 0xe159, 0xe15a, 0xe15b, 0xe15c, 0xe15d, 0xe15e, 0xe15f,
- 0xe160, 0xe161, 0xe162, 0xe163, 0xe164, 0xe165, 0xe166, 0xe167,
- 0xe168, 0xe169, 0xe16a, 0xe16b, 0xe16c, 0xe16d, 0xe16e, 0xe16f,
- 0xe170, 0xe171, 0xe172, 0xe173, 0xe174, 0xe175, 0xe176, 0xe177,
- 0xe178, 0xe179, 0xe17a, 0xe17b, 0xe17c, 0xe17d, 0xe17e, 0xe17f,
- 0xe180, 0xe181, 0xe182, 0xe183, 0xe184, 0xe185, 0xe186, 0xe187, /* 0xe180 */
- 0xe188, 0xe189, 0xe18a, 0xe18b, 0xe18c, 0xe18d, 0xe18e, 0xe18f,
- 0xe190, 0xe191, 0xe192, 0xe193, 0xe194, 0xe195, 0xe196, 0xe197,
- 0xe198, 0xe199, 0xe19a, 0xe19b, 0xe19c, 0xe19d, 0xe19e, 0xe19f,
- 0xe1a0, 0xe1a1, 0xe1a2, 0xe1a3, 0xe1a4, 0xe1a5, 0xe1a6, 0xe1a7,
- 0xe1a8, 0xe1a9, 0xe1aa, 0xe1ab, 0xe1ac, 0xe1ad, 0xe1ae, 0xe1af,
- 0xe1b0, 0xe1b1, 0xe1b2, 0xe1b3, 0xe1b4, 0xe1b5, 0xe1b6, 0xe1b7,
- 0xe1b8, 0xe1b9, 0xe1ba, 0xe1bb, 0xe1bc, 0xe1bd, 0xe1be, 0xe1bf,
- 0xe1c0, 0xe1c1, 0xe1c2, 0xe1c3, 0xe1c4, 0xe1c5, 0xe1c6, 0xe1c7, /* 0xe1c0 */
- 0xe1c8, 0xe1c9, 0xe1ca, 0xe1cb, 0xe1cc, 0xe1cd, 0xe1ce, 0xe1cf,
- 0xe1d0, 0xe1d1, 0xe1d2, 0xe1d3, 0xe1d4, 0xe1d5, 0xe1d6, 0xe1d7,
- 0xe1d8, 0xe1d9, 0xe1da, 0xe1db, 0xe1dc, 0xe1dd, 0xe1de, 0xe1df,
- 0xe1e0, 0xe1e1, 0xe1e2, 0xe1e3, 0xe1e4, 0xe1e5, 0xe1e6, 0xe1e7,
- 0xe1e8, 0xe1e9, 0xe1ea, 0xe1eb, 0xe1ec, 0xe1ed, 0xe1ee, 0xe1ef,
- 0xe1f0, 0xe1f1, 0xe1f2, 0xe1f3, 0xe1f4, 0xe1f5, 0xe1f6, 0xe1f7,
- 0xe1f8, 0xe1f9, 0xe1fa, 0xe1fb, 0xe1fc, 0xe1fd, 0xe1fe, 0xe1ff,
- 0xe200, 0xe201, 0xe202, 0xe203, 0xe204, 0xe205, 0xe206, 0xe207, /* 0xe200 */
- 0xe208, 0xe209, 0xe20a, 0xe20b, 0xe20c, 0xe20d, 0xe20e, 0xe20f,
- 0xe210, 0xe211, 0xe212, 0xe213, 0xe214, 0xe215, 0xe216, 0xe217,
- 0xe218, 0xe219, 0xe21a, 0xe21b, 0xe21c, 0xe21d, 0xe21e, 0xe21f,
- 0xe220, 0xe221, 0xe222, 0xe223, 0xe224, 0xe225, 0xe226, 0xe227,
- 0xe228, 0xe229, 0xe22a, 0xe22b, 0xe22c, 0xe22d, 0xe22e, 0xe22f,
- 0xe230, 0xe231, 0xe232, 0xe233, 0xe234, 0xe235, 0xe236, 0xe237,
- 0xe238, 0xe239, 0xe23a, 0xe23b, 0xe23c, 0xe23d, 0xe23e, 0xe23f,
- 0xe240, 0xe241, 0xe242, 0xe243, 0xe244, 0xe245, 0xe246, 0xe247, /* 0xe240 */
- 0xe248, 0xe249, 0xe24a, 0xe24b, 0xe24c, 0xe24d, 0xe24e, 0xe24f,
- 0xe250, 0xe251, 0xe252, 0xe253, 0xe254, 0xe255, 0xe256, 0xe257,
- 0xe258, 0xe259, 0xe25a, 0xe25b, 0xe25c, 0xe25d, 0xe25e, 0xe25f,
- 0xe260, 0xe261, 0xe262, 0xe263, 0xe264, 0xe265, 0xe266, 0xe267,
- 0xe268, 0xe269, 0xe26a, 0xe26b, 0xe26c, 0xe26d, 0xe26e, 0xe26f,
- 0xe270, 0xe271, 0xe272, 0xe273, 0xe274, 0xe275, 0xe276, 0xe277,
- 0xe278, 0xe279, 0xe27a, 0xe27b, 0xe27c, 0xe27d, 0xe27e, 0xe27f,
- 0xe280, 0xe281, 0xe282, 0xe283, 0xe284, 0xe285, 0xe286, 0xe287, /* 0xe280 */
- 0xe288, 0xe289, 0xe28a, 0xe28b, 0xe28c, 0xe28d, 0xe28e, 0xe28f,
- 0xe290, 0xe291, 0xe292, 0xe293, 0xe294, 0xe295, 0xe296, 0xe297,
- 0xe298, 0xe299, 0xe29a, 0xe29b, 0xe29c, 0xe29d, 0xe29e, 0xe29f,
- 0xe2a0, 0xe2a1, 0xe2a2, 0xe2a3, 0xe2a4, 0xe2a5, 0xe2a6, 0xe2a7,
- 0xe2a8, 0xe2a9, 0xe2aa, 0xe2ab, 0xe2ac, 0xe2ad, 0xe2ae, 0xe2af,
- 0xe2b0, 0xe2b1, 0xe2b2, 0xe2b3, 0xe2b4, 0xe2b5, 0xe2b6, 0xe2b7,
- 0xe2b8, 0xe2b9, 0xe2ba, 0xe2bb, 0xe2bc, 0xe2bd, 0xe2be, 0xe2bf,
- 0xe2c0, 0xe2c1, 0xe2c2, 0xe2c3, 0xe2c4, 0xe2c5, 0xe2c6, 0xe2c7, /* 0xe2c0 */
- 0xe2c8, 0xe2c9, 0xe2ca, 0xe2cb, 0xe2cc, 0xe2cd, 0xe2ce, 0xe2cf,
- 0xe2d0, 0xe2d1, 0xe2d2, 0xe2d3, 0xe2d4, 0xe2d5, 0xe2d6, 0xe2d7,
- 0xe2d8, 0xe2d9, 0xe2da, 0xe2db, 0xe2dc, 0xe2dd, 0xe2de, 0xe2df,
- 0xe2e0, 0xe2e1, 0xe2e2, 0xe2e3, 0xe2e4, 0xe2e5, 0xe2e6, 0xe2e7,
- 0xe2e8, 0xe2e9, 0xe2ea, 0xe2eb, 0xe2ec, 0xe2ed, 0xe2ee, 0xe2ef,
- 0xe2f0, 0xe2f1, 0xe2f2, 0xe2f3, 0xe2f4, 0xe2f5, 0xe2f6, 0xe2f7,
- 0xe2f8, 0xe2f9, 0xe2fa, 0xe2fb, 0xe2fc, 0xe2fd, 0xe2fe, 0xe2ff,
- 0xe300, 0xe301, 0xe302, 0xe303, 0xe304, 0xe305, 0xe306, 0xe307, /* 0xe300 */
- 0xe308, 0xe309, 0xe30a, 0xe30b, 0xe30c, 0xe30d, 0xe30e, 0xe30f,
- 0xe310, 0xe311, 0xe312, 0xe313, 0xe314, 0xe315, 0xe316, 0xe317,
- 0xe318, 0xe319, 0xe31a, 0xe31b, 0xe31c, 0xe31d, 0xe31e, 0xe31f,
- 0xe320, 0xe321, 0xe322, 0xe323, 0xe324, 0xe325, 0xe326, 0xe327,
- 0xe328, 0xe329, 0xe32a, 0xe32b, 0xe32c, 0xe32d, 0xe32e, 0xe32f,
- 0xe330, 0xe331, 0xe332, 0xe333, 0xe334, 0xe335, 0xe336, 0xe337,
- 0xe338, 0xe339, 0xe33a, 0xe33b, 0xe33c, 0xe33d, 0xe33e, 0xe33f,
- 0xe340, 0xe341, 0xe342, 0xe343, 0xe344, 0xe345, 0xe346, 0xe347, /* 0xe340 */
- 0xe348, 0xe349, 0xe34a, 0xe34b, 0xe34c, 0xe34d, 0xe34e, 0xe34f,
- 0xe350, 0xe351, 0xe352, 0xe353, 0xe354, 0xe355, 0xe356, 0xe357,
- 0xe358, 0xe359, 0xe35a, 0xe35b, 0xe35c, 0xe35d, 0xe35e, 0xe35f,
- 0xe360, 0xe361, 0xe362, 0xe363, 0xe364, 0xe365, 0xe366, 0xe367,
- 0xe368, 0xe369, 0xe36a, 0xe36b, 0xe36c, 0xe36d, 0xe36e, 0xe36f,
- 0xe370, 0xe371, 0xe372, 0xe373, 0xe374, 0xe375, 0xe376, 0xe377,
- 0xe378, 0xe379, 0xe37a, 0xe37b, 0xe37c, 0xe37d, 0xe37e, 0xe37f,
- 0xe380, 0xe381, 0xe382, 0xe383, 0xe384, 0xe385, 0xe386, 0xe387, /* 0xe380 */
- 0xe388, 0xe389, 0xe38a, 0xe38b, 0xe38c, 0xe38d, 0xe38e, 0xe38f,
- 0xe390, 0xe391, 0xe392, 0xe393, 0xe394, 0xe395, 0xe396, 0xe397,
- 0xe398, 0xe399, 0xe39a, 0xe39b, 0xe39c, 0xe39d, 0xe39e, 0xe39f,
- 0xe3a0, 0xe3a1, 0xe3a2, 0xe3a3, 0xe3a4, 0xe3a5, 0xe3a6, 0xe3a7,
- 0xe3a8, 0xe3a9, 0xe3aa, 0xe3ab, 0xe3ac, 0xe3ad, 0xe3ae, 0xe3af,
- 0xe3b0, 0xe3b1, 0xe3b2, 0xe3b3, 0xe3b4, 0xe3b5, 0xe3b6, 0xe3b7,
- 0xe3b8, 0xe3b9, 0xe3ba, 0xe3bb, 0xe3bc, 0xe3bd, 0xe3be, 0xe3bf,
- 0xe3c0, 0xe3c1, 0xe3c2, 0xe3c3, 0xe3c4, 0xe3c5, 0xe3c6, 0xe3c7, /* 0xe3c0 */
- 0xe3c8, 0xe3c9, 0xe3ca, 0xe3cb, 0xe3cc, 0xe3cd, 0xe3ce, 0xe3cf,
- 0xe3d0, 0xe3d1, 0xe3d2, 0xe3d3, 0xe3d4, 0xe3d5, 0xe3d6, 0xe3d7,
- 0xe3d8, 0xe3d9, 0xe3da, 0xe3db, 0xe3dc, 0xe3dd, 0xe3de, 0xe3df,
- 0xe3e0, 0xe3e1, 0xe3e2, 0xe3e3, 0xe3e4, 0xe3e5, 0xe3e6, 0xe3e7,
- 0xe3e8, 0xe3e9, 0xe3ea, 0xe3eb, 0xe3ec, 0xe3ed, 0xe3ee, 0xe3ef,
- 0xe3f0, 0xe3f1, 0xe3f2, 0xe3f3, 0xe3f4, 0xe3f5, 0xe3f6, 0xe3f7,
- 0xe3f8, 0xe3f9, 0xe3fa, 0xe3fb, 0xe3fc, 0xe3fd, 0xe3fe, 0xe3ff,
- 0xe400, 0xe401, 0xe402, 0xe403, 0xe404, 0xe405, 0xe406, 0xe407, /* 0xe400 */
- 0xe408, 0xe409, 0xe40a, 0xe40b, 0xe40c, 0xe40d, 0xe40e, 0xe40f,
- 0xe410, 0xe411, 0xe412, 0xe413, 0xe414, 0xe415, 0xe416, 0xe417,
- 0xe418, 0xe419, 0xe41a, 0xe41b, 0xe41c, 0xe41d, 0xe41e, 0xe41f,
- 0xe420, 0xe421, 0xe422, 0xe423, 0xe424, 0xe425, 0xe426, 0xe427,
- 0xe428, 0xe429, 0xe42a, 0xe42b, 0xe42c, 0xe42d, 0xe42e, 0xe42f,
- 0xe430, 0xe431, 0xe432, 0xe433, 0xe434, 0xe435, 0xe436, 0xe437,
- 0xe438, 0xe439, 0xe43a, 0xe43b, 0xe43c, 0xe43d, 0xe43e, 0xe43f,
- 0xe440, 0xe441, 0xe442, 0xe443, 0xe444, 0xe445, 0xe446, 0xe447, /* 0xe440 */
- 0xe448, 0xe449, 0xe44a, 0xe44b, 0xe44c, 0xe44d, 0xe44e, 0xe44f,
- 0xe450, 0xe451, 0xe452, 0xe453, 0xe454, 0xe455, 0xe456, 0xe457,
- 0xe458, 0xe459, 0xe45a, 0xe45b, 0xe45c, 0xe45d, 0xe45e, 0xe45f,
- 0xe460, 0xe461, 0xe462, 0xe463, 0xe464, 0xe465, 0xe466, 0xe467,
- 0xe468, 0xe469, 0xe46a, 0xe46b, 0xe46c, 0xe46d, 0xe46e, 0xe46f,
- 0xe470, 0xe471, 0xe472, 0xe473, 0xe474, 0xe475, 0xe476, 0xe477,
- 0xe478, 0xe479, 0xe47a, 0xe47b, 0xe47c, 0xe47d, 0xe47e, 0xe47f,
- 0xe480, 0xe481, 0xe482, 0xe483, 0xe484, 0xe485, 0xe486, 0xe487, /* 0xe480 */
- 0xe488, 0xe489, 0xe48a, 0xe48b, 0xe48c, 0xe48d, 0xe48e, 0xe48f,
- 0xe490, 0xe491, 0xe492, 0xe493, 0xe494, 0xe495, 0xe496, 0xe497,
- 0xe498, 0xe499, 0xe49a, 0xe49b, 0xe49c, 0xe49d, 0xe49e, 0xe49f,
- 0xe4a0, 0xe4a1, 0xe4a2, 0xe4a3, 0xe4a4, 0xe4a5, 0xe4a6, 0xe4a7,
- 0xe4a8, 0xe4a9, 0xe4aa, 0xe4ab, 0xe4ac, 0xe4ad, 0xe4ae, 0xe4af,
- 0xe4b0, 0xe4b1, 0xe4b2, 0xe4b3, 0xe4b4, 0xe4b5, 0xe4b6, 0xe4b7,
- 0xe4b8, 0xe4b9, 0xe4ba, 0xe4bb, 0xe4bc, 0xe4bd, 0xe4be, 0xe4bf,
- 0xe4c0, 0xe4c1, 0xe4c2, 0xe4c3, 0xe4c4, 0xe4c5, 0xe4c6, 0xe4c7, /* 0xe4c0 */
- 0xe4c8, 0xe4c9, 0xe4ca, 0xe4cb, 0xe4cc, 0xe4cd, 0xe4ce, 0xe4cf,
- 0xe4d0, 0xe4d1, 0xe4d2, 0xe4d3, 0xe4d4, 0xe4d5, 0xe4d6, 0xe4d7,
- 0xe4d8, 0xe4d9, 0xe4da, 0xe4db, 0xe4dc, 0xe4dd, 0xe4de, 0xe4df,
- 0xe4e0, 0xe4e1, 0xe4e2, 0xe4e3, 0xe4e4, 0xe4e5, 0xe4e6, 0xe4e7,
- 0xe4e8, 0xe4e9, 0xe4ea, 0xe4eb, 0xe4ec, 0xe4ed, 0xe4ee, 0xe4ef,
- 0xe4f0, 0xe4f1, 0xe4f2, 0xe4f3, 0xe4f4, 0xe4f5, 0xe4f6, 0xe4f7,
- 0xe4f8, 0xe4f9, 0xe4fa, 0xe4fb, 0xe4fc, 0xe4fd, 0xe4fe, 0xe4ff,
- 0xe500, 0xe501, 0xe502, 0xe503, 0xe504, 0xe505, 0xe506, 0xe507, /* 0xe500 */
- 0xe508, 0xe509, 0xe50a, 0xe50b, 0xe50c, 0xe50d, 0xe50e, 0xe50f,
- 0xe510, 0xe511, 0xe512, 0xe513, 0xe514, 0xe515, 0xe516, 0xe517,
- 0xe518, 0xe519, 0xe51a, 0xe51b, 0xe51c, 0xe51d, 0xe51e, 0xe51f,
- 0xe520, 0xe521, 0xe522, 0xe523, 0xe524, 0xe525, 0xe526, 0xe527,
- 0xe528, 0xe529, 0xe52a, 0xe52b, 0xe52c, 0xe52d, 0xe52e, 0xe52f,
- 0xe530, 0xe531, 0xe532, 0xe533, 0xe534, 0xe535, 0xe536, 0xe537,
- 0xe538, 0xe539, 0xe53a, 0xe53b, 0xe53c, 0xe53d, 0xe53e, 0xe53f,
- 0xe540, 0xe541, 0xe542, 0xe543, 0xe544, 0xe545, 0xe546, 0xe547, /* 0xe540 */
- 0xe548, 0xe549, 0xe54a, 0xe54b, 0xe54c, 0xe54d, 0xe54e, 0xe54f,
- 0xe550, 0xe551, 0xe552, 0xe553, 0xe554, 0xe555, 0xe556, 0xe557,
- 0xe558, 0xe559, 0xe55a, 0xe55b, 0xe55c, 0xe55d, 0xe55e, 0xe55f,
- 0xe560, 0xe561, 0xe562, 0xe563, 0xe564, 0xe565, 0xe566, 0xe567,
- 0xe568, 0xe569, 0xe56a, 0xe56b, 0xe56c, 0xe56d, 0xe56e, 0xe56f,
- 0xe570, 0xe571, 0xe572, 0xe573, 0xe574, 0xe575, 0xe576, 0xe577,
- 0xe578, 0xe579, 0xe57a, 0xe57b, 0xe57c, 0xe57d, 0xe57e, 0xe57f,
- 0xe580, 0xe581, 0xe582, 0xe583, 0xe584, 0xe585, 0xe586, 0xe587, /* 0xe580 */
- 0xe588, 0xe589, 0xe58a, 0xe58b, 0xe58c, 0xe58d, 0xe58e, 0xe58f,
- 0xe590, 0xe591, 0xe592, 0xe593, 0xe594, 0xe595, 0xe596, 0xe597,
- 0xe598, 0xe599, 0xe59a, 0xe59b, 0xe59c, 0xe59d, 0xe59e, 0xe59f,
- 0xe5a0, 0xe5a1, 0xe5a2, 0xe5a3, 0xe5a4, 0xe5a5, 0xe5a6, 0xe5a7,
- 0xe5a8, 0xe5a9, 0xe5aa, 0xe5ab, 0xe5ac, 0xe5ad, 0xe5ae, 0xe5af,
- 0xe5b0, 0xe5b1, 0xe5b2, 0xe5b3, 0xe5b4, 0xe5b5, 0xe5b6, 0xe5b7,
- 0xe5b8, 0xe5b9, 0xe5ba, 0xe5bb, 0xe5bc, 0xe5bd, 0xe5be, 0xe5bf,
- 0xe5c0, 0xe5c1, 0xe5c2, 0xe5c3, 0xe5c4, 0xe5c5, 0xe5c6, 0xe5c7, /* 0xe5c0 */
- 0xe5c8, 0xe5c9, 0xe5ca, 0xe5cb, 0xe5cc, 0xe5cd, 0xe5ce, 0xe5cf,
- 0xe5d0, 0xe5d1, 0xe5d2, 0xe5d3, 0xe5d4, 0xe5d5, 0xe5d6, 0xe5d7,
- 0xe5d8, 0xe5d9, 0xe5da, 0xe5db, 0xe5dc, 0xe5dd, 0xe5de, 0xe5df,
- 0xe5e0, 0xe5e1, 0xe5e2, 0xe5e3, 0xe5e4, 0xe5e5, 0xe5e6, 0xe5e7,
- 0xe5e8, 0xe5e9, 0xe5ea, 0xe5eb, 0xe5ec, 0xe5ed, 0xe5ee, 0xe5ef,
- 0xe5f0, 0xe5f1, 0xe5f2, 0xe5f3, 0xe5f4, 0xe5f5, 0xe5f6, 0xe5f7,
- 0xe5f8, 0xe5f9, 0xe5fa, 0xe5fb, 0xe5fc, 0xe5fd, 0xe5fe, 0xe5ff,
- 0xe600, 0xe601, 0xe602, 0xe603, 0xe604, 0xe605, 0xe606, 0xe607, /* 0xe600 */
- 0xe608, 0xe609, 0xe60a, 0xe60b, 0xe60c, 0xe60d, 0xe60e, 0xe60f,
- 0xe610, 0xe611, 0xe612, 0xe613, 0xe614, 0xe615, 0xe616, 0xe617,
- 0xe618, 0xe619, 0xe61a, 0xe61b, 0xe61c, 0xe61d, 0xe61e, 0xe61f,
- 0xe620, 0xe621, 0xe622, 0xe623, 0xe624, 0xe625, 0xe626, 0xe627,
- 0xe628, 0xe629, 0xe62a, 0xe62b, 0xe62c, 0xe62d, 0xe62e, 0xe62f,
- 0xe630, 0xe631, 0xe632, 0xe633, 0xe634, 0xe635, 0xe636, 0xe637,
- 0xe638, 0xe639, 0xe63a, 0xe63b, 0xe63c, 0xe63d, 0xe63e, 0xe63f,
- 0xe640, 0xe641, 0xe642, 0xe643, 0xe644, 0xe645, 0xe646, 0xe647, /* 0xe640 */
- 0xe648, 0xe649, 0xe64a, 0xe64b, 0xe64c, 0xe64d, 0xe64e, 0xe64f,
- 0xe650, 0xe651, 0xe652, 0xe653, 0xe654, 0xe655, 0xe656, 0xe657,
- 0xe658, 0xe659, 0xe65a, 0xe65b, 0xe65c, 0xe65d, 0xe65e, 0xe65f,
- 0xe660, 0xe661, 0xe662, 0xe663, 0xe664, 0xe665, 0xe666, 0xe667,
- 0xe668, 0xe669, 0xe66a, 0xe66b, 0xe66c, 0xe66d, 0xe66e, 0xe66f,
- 0xe670, 0xe671, 0xe672, 0xe673, 0xe674, 0xe675, 0xe676, 0xe677,
- 0xe678, 0xe679, 0xe67a, 0xe67b, 0xe67c, 0xe67d, 0xe67e, 0xe67f,
- 0xe680, 0xe681, 0xe682, 0xe683, 0xe684, 0xe685, 0xe686, 0xe687, /* 0xe680 */
- 0xe688, 0xe689, 0xe68a, 0xe68b, 0xe68c, 0xe68d, 0xe68e, 0xe68f,
- 0xe690, 0xe691, 0xe692, 0xe693, 0xe694, 0xe695, 0xe696, 0xe697,
- 0xe698, 0xe699, 0xe69a, 0xe69b, 0xe69c, 0xe69d, 0xe69e, 0xe69f,
- 0xe6a0, 0xe6a1, 0xe6a2, 0xe6a3, 0xe6a4, 0xe6a5, 0xe6a6, 0xe6a7,
- 0xe6a8, 0xe6a9, 0xe6aa, 0xe6ab, 0xe6ac, 0xe6ad, 0xe6ae, 0xe6af,
- 0xe6b0, 0xe6b1, 0xe6b2, 0xe6b3, 0xe6b4, 0xe6b5, 0xe6b6, 0xe6b7,
- 0xe6b8, 0xe6b9, 0xe6ba, 0xe6bb, 0xe6bc, 0xe6bd, 0xe6be, 0xe6bf,
- 0xe6c0, 0xe6c1, 0xe6c2, 0xe6c3, 0xe6c4, 0xe6c5, 0xe6c6, 0xe6c7, /* 0xe6c0 */
- 0xe6c8, 0xe6c9, 0xe6ca, 0xe6cb, 0xe6cc, 0xe6cd, 0xe6ce, 0xe6cf,
- 0xe6d0, 0xe6d1, 0xe6d2, 0xe6d3, 0xe6d4, 0xe6d5, 0xe6d6, 0xe6d7,
- 0xe6d8, 0xe6d9, 0xe6da, 0xe6db, 0xe6dc, 0xe6dd, 0xe6de, 0xe6df,
- 0xe6e0, 0xe6e1, 0xe6e2, 0xe6e3, 0xe6e4, 0xe6e5, 0xe6e6, 0xe6e7,
- 0xe6e8, 0xe6e9, 0xe6ea, 0xe6eb, 0xe6ec, 0xe6ed, 0xe6ee, 0xe6ef,
- 0xe6f0, 0xe6f1, 0xe6f2, 0xe6f3, 0xe6f4, 0xe6f5, 0xe6f6, 0xe6f7,
- 0xe6f8, 0xe6f9, 0xe6fa, 0xe6fb, 0xe6fc, 0xe6fd, 0xe6fe, 0xe6ff,
- 0xe700, 0xe701, 0xe702, 0xe703, 0xe704, 0xe705, 0xe706, 0xe707, /* 0xe700 */
- 0xe708, 0xe709, 0xe70a, 0xe70b, 0xe70c, 0xe70d, 0xe70e, 0xe70f,
- 0xe710, 0xe711, 0xe712, 0xe713, 0xe714, 0xe715, 0xe716, 0xe717,
- 0xe718, 0xe719, 0xe71a, 0xe71b, 0xe71c, 0xe71d, 0xe71e, 0xe71f,
- 0xe720, 0xe721, 0xe722, 0xe723, 0xe724, 0xe725, 0xe726, 0xe727,
- 0xe728, 0xe729, 0xe72a, 0xe72b, 0xe72c, 0xe72d, 0xe72e, 0xe72f,
- 0xe730, 0xe731, 0xe732, 0xe733, 0xe734, 0xe735, 0xe736, 0xe737,
- 0xe738, 0xe739, 0xe73a, 0xe73b, 0xe73c, 0xe73d, 0xe73e, 0xe73f,
- 0xe740, 0xe741, 0xe742, 0xe743, 0xe744, 0xe745, 0xe746, 0xe747, /* 0xe740 */
- 0xe748, 0xe749, 0xe74a, 0xe74b, 0xe74c, 0xe74d, 0xe74e, 0xe74f,
- 0xe750, 0xe751, 0xe752, 0xe753, 0xe754, 0xe755, 0xe756, 0xe757,
- 0xe758, 0xe759, 0xe75a, 0xe75b, 0xe75c, 0xe75d, 0xe75e, 0xe75f,
- 0xe760, 0xe761, 0xe762, 0xe763, 0xe764, 0xe765, 0xe766, 0xe767,
- 0xe768, 0xe769, 0xe76a, 0xe76b, 0xe76c, 0xe76d, 0xe76e, 0xe76f,
- 0xe770, 0xe771, 0xe772, 0xe773, 0xe774, 0xe775, 0xe776, 0xe777,
- 0xe778, 0xe779, 0xe77a, 0xe77b, 0xe77c, 0xe77d, 0xe77e, 0xe77f,
- 0xe780, 0xe781, 0xe782, 0xe783, 0xe784, 0xe785, 0xe786, 0xe787, /* 0xe780 */
- 0xe788, 0xe789, 0xe78a, 0xe78b, 0xe78c, 0xe78d, 0xe78e, 0xe78f,
- 0xe790, 0xe791, 0xe792, 0xe793, 0xe794, 0xe795, 0xe796, 0xe797,
- 0xe798, 0xe799, 0xe79a, 0xe79b, 0xe79c, 0xe79d, 0xe79e, 0xe79f,
- 0xe7a0, 0xe7a1, 0xe7a2, 0xe7a3, 0xe7a4, 0xe7a5, 0xe7a6, 0xe7a7,
- 0xe7a8, 0xe7a9, 0xe7aa, 0xe7ab, 0xe7ac, 0xe7ad, 0xe7ae, 0xe7af,
- 0xe7b0, 0xe7b1, 0xe7b2, 0xe7b3, 0xe7b4, 0xe7b5, 0xe7b6, 0xe7b7,
- 0xe7b8, 0xe7b9, 0xe7ba, 0xe7bb, 0xe7bc, 0xe7bd, 0xe7be, 0xe7bf,
- 0xe7c0, 0xe7c1, 0xe7c2, 0xe7c3, 0xe7c4, 0xe7c5, 0xe7c6, 0xe7c7, /* 0xe7c0 */
- 0xe7c8, 0xe7c9, 0xe7ca, 0xe7cb, 0xe7cc, 0xe7cd, 0xe7ce, 0xe7cf,
- 0xe7d0, 0xe7d1, 0xe7d2, 0xe7d3, 0xe7d4, 0xe7d5, 0xe7d6, 0xe7d7,
- 0xe7d8, 0xe7d9, 0xe7da, 0xe7db, 0xe7dc, 0xe7dd, 0xe7de, 0xe7df,
- 0xe7e0, 0xe7e1, 0xe7e2, 0xe7e3, 0xe7e4, 0xe7e5, 0xe7e6, 0xe7e7,
- 0xe7e8, 0xe7e9, 0xe7ea, 0xe7eb, 0xe7ec, 0xe7ed, 0xe7ee, 0xe7ef,
- 0xe7f0, 0xe7f1, 0xe7f2, 0xe7f3, 0xe7f4, 0xe7f5, 0xe7f6, 0xe7f7,
- 0xe7f8, 0xe7f9, 0xe7fa, 0xe7fb, 0xe7fc, 0xe7fd, 0xe7fe, 0xe7ff,
- 0xe800, 0xe801, 0xe802, 0xe803, 0xe804, 0xe805, 0xe806, 0xe807, /* 0xe800 */
- 0xe808, 0xe809, 0xe80a, 0xe80b, 0xe80c, 0xe80d, 0xe80e, 0xe80f,
- 0xe810, 0xe811, 0xe812, 0xe813, 0xe814, 0xe815, 0xe816, 0xe817,
- 0xe818, 0xe819, 0xe81a, 0xe81b, 0xe81c, 0xe81d, 0xe81e, 0xe81f,
- 0xe820, 0xe821, 0xe822, 0xe823, 0xe824, 0xe825, 0xe826, 0xe827,
- 0xe828, 0xe829, 0xe82a, 0xe82b, 0xe82c, 0xe82d, 0xe82e, 0xe82f,
- 0xe830, 0xe831, 0xe832, 0xe833, 0xe834, 0xe835, 0xe836, 0xe837,
- 0xe838, 0xe839, 0xe83a, 0xe83b, 0xe83c, 0xe83d, 0xe83e, 0xe83f,
- 0xe840, 0xe841, 0xe842, 0xe843, 0xe844, 0xe845, 0xe846, 0xe847, /* 0xe840 */
- 0xe848, 0xe849, 0xe84a, 0xe84b, 0xe84c, 0xe84d, 0xe84e, 0xe84f,
- 0xe850, 0xe851, 0xe852, 0xe853, 0xe854, 0xe855, 0xe856, 0xe857,
- 0xe858, 0xe859, 0xe85a, 0xe85b, 0xe85c, 0xe85d, 0xe85e, 0xe85f,
- 0xe860, 0xe861, 0xe862, 0xe863, 0xe864, 0xe865, 0xe866, 0xe867,
- 0xe868, 0xe869, 0xe86a, 0xe86b, 0xe86c, 0xe86d, 0xe86e, 0xe86f,
- 0xe870, 0xe871, 0xe872, 0xe873, 0xe874, 0xe875, 0xe876, 0xe877,
- 0xe878, 0xe879, 0xe87a, 0xe87b, 0xe87c, 0xe87d, 0xe87e, 0xe87f,
- 0xe880, 0xe881, 0xe882, 0xe883, 0xe884, 0xe885, 0xe886, 0xe887, /* 0xe880 */
- 0xe888, 0xe889, 0xe88a, 0xe88b, 0xe88c, 0xe88d, 0xe88e, 0xe88f,
- 0xe890, 0xe891, 0xe892, 0xe893, 0xe894, 0xe895, 0xe896, 0xe897,
- 0xe898, 0xe899, 0xe89a, 0xe89b, 0xe89c, 0xe89d, 0xe89e, 0xe89f,
- 0xe8a0, 0xe8a1, 0xe8a2, 0xe8a3, 0xe8a4, 0xe8a5, 0xe8a6, 0xe8a7,
- 0xe8a8, 0xe8a9, 0xe8aa, 0xe8ab, 0xe8ac, 0xe8ad, 0xe8ae, 0xe8af,
- 0xe8b0, 0xe8b1, 0xe8b2, 0xe8b3, 0xe8b4, 0xe8b5, 0xe8b6, 0xe8b7,
- 0xe8b8, 0xe8b9, 0xe8ba, 0xe8bb, 0xe8bc, 0xe8bd, 0xe8be, 0xe8bf,
- 0xe8c0, 0xe8c1, 0xe8c2, 0xe8c3, 0xe8c4, 0xe8c5, 0xe8c6, 0xe8c7, /* 0xe8c0 */
- 0xe8c8, 0xe8c9, 0xe8ca, 0xe8cb, 0xe8cc, 0xe8cd, 0xe8ce, 0xe8cf,
- 0xe8d0, 0xe8d1, 0xe8d2, 0xe8d3, 0xe8d4, 0xe8d5, 0xe8d6, 0xe8d7,
- 0xe8d8, 0xe8d9, 0xe8da, 0xe8db, 0xe8dc, 0xe8dd, 0xe8de, 0xe8df,
- 0xe8e0, 0xe8e1, 0xe8e2, 0xe8e3, 0xe8e4, 0xe8e5, 0xe8e6, 0xe8e7,
- 0xe8e8, 0xe8e9, 0xe8ea, 0xe8eb, 0xe8ec, 0xe8ed, 0xe8ee, 0xe8ef,
- 0xe8f0, 0xe8f1, 0xe8f2, 0xe8f3, 0xe8f4, 0xe8f5, 0xe8f6, 0xe8f7,
- 0xe8f8, 0xe8f9, 0xe8fa, 0xe8fb, 0xe8fc, 0xe8fd, 0xe8fe, 0xe8ff,
- 0xe900, 0xe901, 0xe902, 0xe903, 0xe904, 0xe905, 0xe906, 0xe907, /* 0xe900 */
- 0xe908, 0xe909, 0xe90a, 0xe90b, 0xe90c, 0xe90d, 0xe90e, 0xe90f,
- 0xe910, 0xe911, 0xe912, 0xe913, 0xe914, 0xe915, 0xe916, 0xe917,
- 0xe918, 0xe919, 0xe91a, 0xe91b, 0xe91c, 0xe91d, 0xe91e, 0xe91f,
- 0xe920, 0xe921, 0xe922, 0xe923, 0xe924, 0xe925, 0xe926, 0xe927,
- 0xe928, 0xe929, 0xe92a, 0xe92b, 0xe92c, 0xe92d, 0xe92e, 0xe92f,
- 0xe930, 0xe931, 0xe932, 0xe933, 0xe934, 0xe935, 0xe936, 0xe937,
- 0xe938, 0xe939, 0xe93a, 0xe93b, 0xe93c, 0xe93d, 0xe93e, 0xe93f,
- 0xe940, 0xe941, 0xe942, 0xe943, 0xe944, 0xe945, 0xe946, 0xe947, /* 0xe940 */
- 0xe948, 0xe949, 0xe94a, 0xe94b, 0xe94c, 0xe94d, 0xe94e, 0xe94f,
- 0xe950, 0xe951, 0xe952, 0xe953, 0xe954, 0xe955, 0xe956, 0xe957,
- 0xe958, 0xe959, 0xe95a, 0xe95b, 0xe95c, 0xe95d, 0xe95e, 0xe95f,
- 0xe960, 0xe961, 0xe962, 0xe963, 0xe964, 0xe965, 0xe966, 0xe967,
- 0xe968, 0xe969, 0xe96a, 0xe96b, 0xe96c, 0xe96d, 0xe96e, 0xe96f,
- 0xe970, 0xe971, 0xe972, 0xe973, 0xe974, 0xe975, 0xe976, 0xe977,
- 0xe978, 0xe979, 0xe97a, 0xe97b, 0xe97c, 0xe97d, 0xe97e, 0xe97f,
- 0xe980, 0xe981, 0xe982, 0xe983, 0xe984, 0xe985, 0xe986, 0xe987, /* 0xe980 */
- 0xe988, 0xe989, 0xe98a, 0xe98b, 0xe98c, 0xe98d, 0xe98e, 0xe98f,
- 0xe990, 0xe991, 0xe992, 0xe993, 0xe994, 0xe995, 0xe996, 0xe997,
- 0xe998, 0xe999, 0xe99a, 0xe99b, 0xe99c, 0xe99d, 0xe99e, 0xe99f,
- 0xe9a0, 0xe9a1, 0xe9a2, 0xe9a3, 0xe9a4, 0xe9a5, 0xe9a6, 0xe9a7,
- 0xe9a8, 0xe9a9, 0xe9aa, 0xe9ab, 0xe9ac, 0xe9ad, 0xe9ae, 0xe9af,
- 0xe9b0, 0xe9b1, 0xe9b2, 0xe9b3, 0xe9b4, 0xe9b5, 0xe9b6, 0xe9b7,
- 0xe9b8, 0xe9b9, 0xe9ba, 0xe9bb, 0xe9bc, 0xe9bd, 0xe9be, 0xe9bf,
- 0xe9c0, 0xe9c1, 0xe9c2, 0xe9c3, 0xe9c4, 0xe9c5, 0xe9c6, 0xe9c7, /* 0xe9c0 */
- 0xe9c8, 0xe9c9, 0xe9ca, 0xe9cb, 0xe9cc, 0xe9cd, 0xe9ce, 0xe9cf,
- 0xe9d0, 0xe9d1, 0xe9d2, 0xe9d3, 0xe9d4, 0xe9d5, 0xe9d6, 0xe9d7,
- 0xe9d8, 0xe9d9, 0xe9da, 0xe9db, 0xe9dc, 0xe9dd, 0xe9de, 0xe9df,
- 0xe9e0, 0xe9e1, 0xe9e2, 0xe9e3, 0xe9e4, 0xe9e5, 0xe9e6, 0xe9e7,
- 0xe9e8, 0xe9e9, 0xe9ea, 0xe9eb, 0xe9ec, 0xe9ed, 0xe9ee, 0xe9ef,
- 0xe9f0, 0xe9f1, 0xe9f2, 0xe9f3, 0xe9f4, 0xe9f5, 0xe9f6, 0xe9f7,
- 0xe9f8, 0xe9f9, 0xe9fa, 0xe9fb, 0xe9fc, 0xe9fd, 0xe9fe, 0xe9ff,
- 0xea00, 0xea01, 0xea02, 0xea03, 0xea04, 0xea05, 0xea06, 0xea07, /* 0xea00 */
- 0xea08, 0xea09, 0xea0a, 0xea0b, 0xea0c, 0xea0d, 0xea0e, 0xea0f,
- 0xea10, 0xea11, 0xea12, 0xea13, 0xea14, 0xea15, 0xea16, 0xea17,
- 0xea18, 0xea19, 0xea1a, 0xea1b, 0xea1c, 0xea1d, 0xea1e, 0xea1f,
- 0xea20, 0xea21, 0xea22, 0xea23, 0xea24, 0xea25, 0xea26, 0xea27,
- 0xea28, 0xea29, 0xea2a, 0xea2b, 0xea2c, 0xea2d, 0xea2e, 0xea2f,
- 0xea30, 0xea31, 0xea32, 0xea33, 0xea34, 0xea35, 0xea36, 0xea37,
- 0xea38, 0xea39, 0xea3a, 0xea3b, 0xea3c, 0xea3d, 0xea3e, 0xea3f,
- 0xea40, 0xea41, 0xea42, 0xea43, 0xea44, 0xea45, 0xea46, 0xea47, /* 0xea40 */
- 0xea48, 0xea49, 0xea4a, 0xea4b, 0xea4c, 0xea4d, 0xea4e, 0xea4f,
- 0xea50, 0xea51, 0xea52, 0xea53, 0xea54, 0xea55, 0xea56, 0xea57,
- 0xea58, 0xea59, 0xea5a, 0xea5b, 0xea5c, 0xea5d, 0xea5e, 0xea5f,
- 0xea60, 0xea61, 0xea62, 0xea63, 0xea64, 0xea65, 0xea66, 0xea67,
- 0xea68, 0xea69, 0xea6a, 0xea6b, 0xea6c, 0xea6d, 0xea6e, 0xea6f,
- 0xea70, 0xea71, 0xea72, 0xea73, 0xea74, 0xea75, 0xea76, 0xea77,
- 0xea78, 0xea79, 0xea7a, 0xea7b, 0xea7c, 0xea7d, 0xea7e, 0xea7f,
- 0xea80, 0xea81, 0xea82, 0xea83, 0xea84, 0xea85, 0xea86, 0xea87, /* 0xea80 */
- 0xea88, 0xea89, 0xea8a, 0xea8b, 0xea8c, 0xea8d, 0xea8e, 0xea8f,
- 0xea90, 0xea91, 0xea92, 0xea93, 0xea94, 0xea95, 0xea96, 0xea97,
- 0xea98, 0xea99, 0xea9a, 0xea9b, 0xea9c, 0xea9d, 0xea9e, 0xea9f,
- 0xeaa0, 0xeaa1, 0xeaa2, 0xeaa3, 0xeaa4, 0xeaa5, 0xeaa6, 0xeaa7,
- 0xeaa8, 0xeaa9, 0xeaaa, 0xeaab, 0xeaac, 0xeaad, 0xeaae, 0xeaaf,
- 0xeab0, 0xeab1, 0xeab2, 0xeab3, 0xeab4, 0xeab5, 0xeab6, 0xeab7,
- 0xeab8, 0xeab9, 0xeaba, 0xeabb, 0xeabc, 0xeabd, 0xeabe, 0xeabf,
- 0xeac0, 0xeac1, 0xeac2, 0xeac3, 0xeac4, 0xeac5, 0xeac6, 0xeac7, /* 0xeac0 */
- 0xeac8, 0xeac9, 0xeaca, 0xeacb, 0xeacc, 0xeacd, 0xeace, 0xeacf,
- 0xead0, 0xead1, 0xead2, 0xead3, 0xead4, 0xead5, 0xead6, 0xead7,
- 0xead8, 0xead9, 0xeada, 0xeadb, 0xeadc, 0xeadd, 0xeade, 0xeadf,
- 0xeae0, 0xeae1, 0xeae2, 0xeae3, 0xeae4, 0xeae5, 0xeae6, 0xeae7,
- 0xeae8, 0xeae9, 0xeaea, 0xeaeb, 0xeaec, 0xeaed, 0xeaee, 0xeaef,
- 0xeaf0, 0xeaf1, 0xeaf2, 0xeaf3, 0xeaf4, 0xeaf5, 0xeaf6, 0xeaf7,
- 0xeaf8, 0xeaf9, 0xeafa, 0xeafb, 0xeafc, 0xeafd, 0xeafe, 0xeaff,
- 0xeb00, 0xeb01, 0xeb02, 0xeb03, 0xeb04, 0xeb05, 0xeb06, 0xeb07, /* 0xeb00 */
- 0xeb08, 0xeb09, 0xeb0a, 0xeb0b, 0xeb0c, 0xeb0d, 0xeb0e, 0xeb0f,
- 0xeb10, 0xeb11, 0xeb12, 0xeb13, 0xeb14, 0xeb15, 0xeb16, 0xeb17,
- 0xeb18, 0xeb19, 0xeb1a, 0xeb1b, 0xeb1c, 0xeb1d, 0xeb1e, 0xeb1f,
- 0xeb20, 0xeb21, 0xeb22, 0xeb23, 0xeb24, 0xeb25, 0xeb26, 0xeb27,
- 0xeb28, 0xeb29, 0xeb2a, 0xeb2b, 0xeb2c, 0xeb2d, 0xeb2e, 0xeb2f,
- 0xeb30, 0xeb31, 0xeb32, 0xeb33, 0xeb34, 0xeb35, 0xeb36, 0xeb37,
- 0xeb38, 0xeb39, 0xeb3a, 0xeb3b, 0xeb3c, 0xeb3d, 0xeb3e, 0xeb3f,
- 0xeb40, 0xeb41, 0xeb42, 0xeb43, 0xeb44, 0xeb45, 0xeb46, 0xeb47, /* 0xeb40 */
- 0xeb48, 0xeb49, 0xeb4a, 0xeb4b, 0xeb4c, 0xeb4d, 0xeb4e, 0xeb4f,
- 0xeb50, 0xeb51, 0xeb52, 0xeb53, 0xeb54, 0xeb55, 0xeb56, 0xeb57,
- 0xeb58, 0xeb59, 0xeb5a, 0xeb5b, 0xeb5c, 0xeb5d, 0xeb5e, 0xeb5f,
- 0xeb60, 0xeb61, 0xeb62, 0xeb63, 0xeb64, 0xeb65, 0xeb66, 0xeb67,
- 0xeb68, 0xeb69, 0xeb6a, 0xeb6b, 0xeb6c, 0xeb6d, 0xeb6e, 0xeb6f,
- 0xeb70, 0xeb71, 0xeb72, 0xeb73, 0xeb74, 0xeb75, 0xeb76, 0xeb77,
- 0xeb78, 0xeb79, 0xeb7a, 0xeb7b, 0xeb7c, 0xeb7d, 0xeb7e, 0xeb7f,
- 0xeb80, 0xeb81, 0xeb82, 0xeb83, 0xeb84, 0xeb85, 0xeb86, 0xeb87, /* 0xeb80 */
- 0xeb88, 0xeb89, 0xeb8a, 0xeb8b, 0xeb8c, 0xeb8d, 0xeb8e, 0xeb8f,
- 0xeb90, 0xeb91, 0xeb92, 0xeb93, 0xeb94, 0xeb95, 0xeb96, 0xeb97,
- 0xeb98, 0xeb99, 0xeb9a, 0xeb9b, 0xeb9c, 0xeb9d, 0xeb9e, 0xeb9f,
- 0xeba0, 0xeba1, 0xeba2, 0xeba3, 0xeba4, 0xeba5, 0xeba6, 0xeba7,
- 0xeba8, 0xeba9, 0xebaa, 0xebab, 0xebac, 0xebad, 0xebae, 0xebaf,
- 0xebb0, 0xebb1, 0xebb2, 0xebb3, 0xebb4, 0xebb5, 0xebb6, 0xebb7,
- 0xebb8, 0xebb9, 0xebba, 0xebbb, 0xebbc, 0xebbd, 0xebbe, 0xebbf,
- 0xebc0, 0xebc1, 0xebc2, 0xebc3, 0xebc4, 0xebc5, 0xebc6, 0xebc7, /* 0xebc0 */
- 0xebc8, 0xebc9, 0xebca, 0xebcb, 0xebcc, 0xebcd, 0xebce, 0xebcf,
- 0xebd0, 0xebd1, 0xebd2, 0xebd3, 0xebd4, 0xebd5, 0xebd6, 0xebd7,
- 0xebd8, 0xebd9, 0xebda, 0xebdb, 0xebdc, 0xebdd, 0xebde, 0xebdf,
- 0xebe0, 0xebe1, 0xebe2, 0xebe3, 0xebe4, 0xebe5, 0xebe6, 0xebe7,
- 0xebe8, 0xebe9, 0xebea, 0xebeb, 0xebec, 0xebed, 0xebee, 0xebef,
- 0xebf0, 0xebf1, 0xebf2, 0xebf3, 0xebf4, 0xebf5, 0xebf6, 0xebf7,
- 0xebf8, 0xebf9, 0xebfa, 0xebfb, 0xebfc, 0xebfd, 0xebfe, 0xebff,
- 0xec00, 0xec01, 0xec02, 0xec03, 0xec04, 0xec05, 0xec06, 0xec07, /* 0xec00 */
- 0xec08, 0xec09, 0xec0a, 0xec0b, 0xec0c, 0xec0d, 0xec0e, 0xec0f,
- 0xec10, 0xec11, 0xec12, 0xec13, 0xec14, 0xec15, 0xec16, 0xec17,
- 0xec18, 0xec19, 0xec1a, 0xec1b, 0xec1c, 0xec1d, 0xec1e, 0xec1f,
- 0xec20, 0xec21, 0xec22, 0xec23, 0xec24, 0xec25, 0xec26, 0xec27,
- 0xec28, 0xec29, 0xec2a, 0xec2b, 0xec2c, 0xec2d, 0xec2e, 0xec2f,
- 0xec30, 0xec31, 0xec32, 0xec33, 0xec34, 0xec35, 0xec36, 0xec37,
- 0xec38, 0xec39, 0xec3a, 0xec3b, 0xec3c, 0xec3d, 0xec3e, 0xec3f,
- 0xec40, 0xec41, 0xec42, 0xec43, 0xec44, 0xec45, 0xec46, 0xec47, /* 0xec40 */
- 0xec48, 0xec49, 0xec4a, 0xec4b, 0xec4c, 0xec4d, 0xec4e, 0xec4f,
- 0xec50, 0xec51, 0xec52, 0xec53, 0xec54, 0xec55, 0xec56, 0xec57,
- 0xec58, 0xec59, 0xec5a, 0xec5b, 0xec5c, 0xec5d, 0xec5e, 0xec5f,
- 0xec60, 0xec61, 0xec62, 0xec63, 0xec64, 0xec65, 0xec66, 0xec67,
- 0xec68, 0xec69, 0xec6a, 0xec6b, 0xec6c, 0xec6d, 0xec6e, 0xec6f,
- 0xec70, 0xec71, 0xec72, 0xec73, 0xec74, 0xec75, 0xec76, 0xec77,
- 0xec78, 0xec79, 0xec7a, 0xec7b, 0xec7c, 0xec7d, 0xec7e, 0xec7f,
- 0xec80, 0xec81, 0xec82, 0xec83, 0xec84, 0xec85, 0xec86, 0xec87, /* 0xec80 */
- 0xec88, 0xec89, 0xec8a, 0xec8b, 0xec8c, 0xec8d, 0xec8e, 0xec8f,
- 0xec90, 0xec91, 0xec92, 0xec93, 0xec94, 0xec95, 0xec96, 0xec97,
- 0xec98, 0xec99, 0xec9a, 0xec9b, 0xec9c, 0xec9d, 0xec9e, 0xec9f,
- 0xeca0, 0xeca1, 0xeca2, 0xeca3, 0xeca4, 0xeca5, 0xeca6, 0xeca7,
- 0xeca8, 0xeca9, 0xecaa, 0xecab, 0xecac, 0xecad, 0xecae, 0xecaf,
- 0xecb0, 0xecb1, 0xecb2, 0xecb3, 0xecb4, 0xecb5, 0xecb6, 0xecb7,
- 0xecb8, 0xecb9, 0xecba, 0xecbb, 0xecbc, 0xecbd, 0xecbe, 0xecbf,
- 0xecc0, 0xecc1, 0xecc2, 0xecc3, 0xecc4, 0xecc5, 0xecc6, 0xecc7, /* 0xecc0 */
- 0xecc8, 0xecc9, 0xecca, 0xeccb, 0xeccc, 0xeccd, 0xecce, 0xeccf,
- 0xecd0, 0xecd1, 0xecd2, 0xecd3, 0xecd4, 0xecd5, 0xecd6, 0xecd7,
- 0xecd8, 0xecd9, 0xecda, 0xecdb, 0xecdc, 0xecdd, 0xecde, 0xecdf,
- 0xece0, 0xece1, 0xece2, 0xece3, 0xece4, 0xece5, 0xece6, 0xece7,
- 0xece8, 0xece9, 0xecea, 0xeceb, 0xecec, 0xeced, 0xecee, 0xecef,
- 0xecf0, 0xecf1, 0xecf2, 0xecf3, 0xecf4, 0xecf5, 0xecf6, 0xecf7,
- 0xecf8, 0xecf9, 0xecfa, 0xecfb, 0xecfc, 0xecfd, 0xecfe, 0xecff,
- 0xed00, 0xed01, 0xed02, 0xed03, 0xed04, 0xed05, 0xed06, 0xed07, /* 0xed00 */
- 0xed08, 0xed09, 0xed0a, 0xed0b, 0xed0c, 0xed0d, 0xed0e, 0xed0f,
- 0xed10, 0xed11, 0xed12, 0xed13, 0xed14, 0xed15, 0xed16, 0xed17,
- 0xed18, 0xed19, 0xed1a, 0xed1b, 0xed1c, 0xed1d, 0xed1e, 0xed1f,
- 0xed20, 0xed21, 0xed22, 0xed23, 0xed24, 0xed25, 0xed26, 0xed27,
- 0xed28, 0xed29, 0xed2a, 0xed2b, 0xed2c, 0xed2d, 0xed2e, 0xed2f,
- 0xed30, 0xed31, 0xed32, 0xed33, 0xed34, 0xed35, 0xed36, 0xed37,
- 0xed38, 0xed39, 0xed3a, 0xed3b, 0xed3c, 0xed3d, 0xed3e, 0xed3f,
- 0xed40, 0xed41, 0xed42, 0xed43, 0xed44, 0xed45, 0xed46, 0xed47, /* 0xed40 */
- 0xed48, 0xed49, 0xed4a, 0xed4b, 0xed4c, 0xed4d, 0xed4e, 0xed4f,
- 0xed50, 0xed51, 0xed52, 0xed53, 0xed54, 0xed55, 0xed56, 0xed57,
- 0xed58, 0xed59, 0xed5a, 0xed5b, 0xed5c, 0xed5d, 0xed5e, 0xed5f,
- 0xed60, 0xed61, 0xed62, 0xed63, 0xed64, 0xed65, 0xed66, 0xed67,
- 0xed68, 0xed69, 0xed6a, 0xed6b, 0xed6c, 0xed6d, 0xed6e, 0xed6f,
- 0xed70, 0xed71, 0xed72, 0xed73, 0xed74, 0xed75, 0xed76, 0xed77,
- 0xed78, 0xed79, 0xed7a, 0xed7b, 0xed7c, 0xed7d, 0xed7e, 0xed7f,
- 0xed80, 0xed81, 0xed82, 0xed83, 0xed84, 0xed85, 0xed86, 0xed87, /* 0xed80 */
- 0xed88, 0xed89, 0xed8a, 0xed8b, 0xed8c, 0xed8d, 0xed8e, 0xed8f,
- 0xed90, 0xed91, 0xed92, 0xed93, 0xed94, 0xed95, 0xed96, 0xed97,
- 0xed98, 0xed99, 0xed9a, 0xed9b, 0xed9c, 0xed9d, 0xed9e, 0xed9f,
- 0xeda0, 0xeda1, 0xeda2, 0xeda3, 0xeda4, 0xeda5, 0xeda6, 0xeda7,
- 0xeda8, 0xeda9, 0xedaa, 0xedab, 0xedac, 0xedad, 0xedae, 0xedaf,
- 0xedb0, 0xedb1, 0xedb2, 0xedb3, 0xedb4, 0xedb5, 0xedb6, 0xedb7,
- 0xedb8, 0xedb9, 0xedba, 0xedbb, 0xedbc, 0xedbd, 0xedbe, 0xedbf,
- 0xedc0, 0xedc1, 0xedc2, 0xedc3, 0xedc4, 0xedc5, 0xedc6, 0xedc7, /* 0xedc0 */
- 0xedc8, 0xedc9, 0xedca, 0xedcb, 0xedcc, 0xedcd, 0xedce, 0xedcf,
- 0xedd0, 0xedd1, 0xedd2, 0xedd3, 0xedd4, 0xedd5, 0xedd6, 0xedd7,
- 0xedd8, 0xedd9, 0xedda, 0xeddb, 0xeddc, 0xeddd, 0xedde, 0xeddf,
- 0xede0, 0xede1, 0xede2, 0xede3, 0xede4, 0xede5, 0xede6, 0xede7,
- 0xede8, 0xede9, 0xedea, 0xedeb, 0xedec, 0xeded, 0xedee, 0xedef,
- 0xedf0, 0xedf1, 0xedf2, 0xedf3, 0xedf4, 0xedf5, 0xedf6, 0xedf7,
- 0xedf8, 0xedf9, 0xedfa, 0xedfb, 0xedfc, 0xedfd, 0xedfe, 0xedff,
- 0xee00, 0xee01, 0xee02, 0xee03, 0xee04, 0xee05, 0xee06, 0xee07, /* 0xee00 */
- 0xee08, 0xee09, 0xee0a, 0xee0b, 0xee0c, 0xee0d, 0xee0e, 0xee0f,
- 0xee10, 0xee11, 0xee12, 0xee13, 0xee14, 0xee15, 0xee16, 0xee17,
- 0xee18, 0xee19, 0xee1a, 0xee1b, 0xee1c, 0xee1d, 0xee1e, 0xee1f,
- 0xee20, 0xee21, 0xee22, 0xee23, 0xee24, 0xee25, 0xee26, 0xee27,
- 0xee28, 0xee29, 0xee2a, 0xee2b, 0xee2c, 0xee2d, 0xee2e, 0xee2f,
- 0xee30, 0xee31, 0xee32, 0xee33, 0xee34, 0xee35, 0xee36, 0xee37,
- 0xee38, 0xee39, 0xee3a, 0xee3b, 0xee3c, 0xee3d, 0xee3e, 0xee3f,
- 0xee40, 0xee41, 0xee42, 0xee43, 0xee44, 0xee45, 0xee46, 0xee47, /* 0xee40 */
- 0xee48, 0xee49, 0xee4a, 0xee4b, 0xee4c, 0xee4d, 0xee4e, 0xee4f,
- 0xee50, 0xee51, 0xee52, 0xee53, 0xee54, 0xee55, 0xee56, 0xee57,
- 0xee58, 0xee59, 0xee5a, 0xee5b, 0xee5c, 0xee5d, 0xee5e, 0xee5f,
- 0xee60, 0xee61, 0xee62, 0xee63, 0xee64, 0xee65, 0xee66, 0xee67,
- 0xee68, 0xee69, 0xee6a, 0xee6b, 0xee6c, 0xee6d, 0xee6e, 0xee6f,
- 0xee70, 0xee71, 0xee72, 0xee73, 0xee74, 0xee75, 0xee76, 0xee77,
- 0xee78, 0xee79, 0xee7a, 0xee7b, 0xee7c, 0xee7d, 0xee7e, 0xee7f,
- 0xee80, 0xee81, 0xee82, 0xee83, 0xee84, 0xee85, 0xee86, 0xee87, /* 0xee80 */
- 0xee88, 0xee89, 0xee8a, 0xee8b, 0xee8c, 0xee8d, 0xee8e, 0xee8f,
- 0xee90, 0xee91, 0xee92, 0xee93, 0xee94, 0xee95, 0xee96, 0xee97,
- 0xee98, 0xee99, 0xee9a, 0xee9b, 0xee9c, 0xee9d, 0xee9e, 0xee9f,
- 0xeea0, 0xeea1, 0xeea2, 0xeea3, 0xeea4, 0xeea5, 0xeea6, 0xeea7,
- 0xeea8, 0xeea9, 0xeeaa, 0xeeab, 0xeeac, 0xeead, 0xeeae, 0xeeaf,
- 0xeeb0, 0xeeb1, 0xeeb2, 0xeeb3, 0xeeb4, 0xeeb5, 0xeeb6, 0xeeb7,
- 0xeeb8, 0xeeb9, 0xeeba, 0xeebb, 0xeebc, 0xeebd, 0xeebe, 0xeebf,
- 0xeec0, 0xeec1, 0xeec2, 0xeec3, 0xeec4, 0xeec5, 0xeec6, 0xeec7, /* 0xeec0 */
- 0xeec8, 0xeec9, 0xeeca, 0xeecb, 0xeecc, 0xeecd, 0xeece, 0xeecf,
- 0xeed0, 0xeed1, 0xeed2, 0xeed3, 0xeed4, 0xeed5, 0xeed6, 0xeed7,
- 0xeed8, 0xeed9, 0xeeda, 0xeedb, 0xeedc, 0xeedd, 0xeede, 0xeedf,
- 0xeee0, 0xeee1, 0xeee2, 0xeee3, 0xeee4, 0xeee5, 0xeee6, 0xeee7,
- 0xeee8, 0xeee9, 0xeeea, 0xeeeb, 0xeeec, 0xeeed, 0xeeee, 0xeeef,
- 0xeef0, 0xeef1, 0xeef2, 0xeef3, 0xeef4, 0xeef5, 0xeef6, 0xeef7,
- 0xeef8, 0xeef9, 0xeefa, 0xeefb, 0xeefc, 0xeefd, 0xeefe, 0xeeff,
- 0xef00, 0xef01, 0xef02, 0xef03, 0xef04, 0xef05, 0xef06, 0xef07, /* 0xef00 */
- 0xef08, 0xef09, 0xef0a, 0xef0b, 0xef0c, 0xef0d, 0xef0e, 0xef0f,
- 0xef10, 0xef11, 0xef12, 0xef13, 0xef14, 0xef15, 0xef16, 0xef17,
- 0xef18, 0xef19, 0xef1a, 0xef1b, 0xef1c, 0xef1d, 0xef1e, 0xef1f,
- 0xef20, 0xef21, 0xef22, 0xef23, 0xef24, 0xef25, 0xef26, 0xef27,
- 0xef28, 0xef29, 0xef2a, 0xef2b, 0xef2c, 0xef2d, 0xef2e, 0xef2f,
- 0xef30, 0xef31, 0xef32, 0xef33, 0xef34, 0xef35, 0xef36, 0xef37,
- 0xef38, 0xef39, 0xef3a, 0xef3b, 0xef3c, 0xef3d, 0xef3e, 0xef3f,
- 0xef40, 0xef41, 0xef42, 0xef43, 0xef44, 0xef45, 0xef46, 0xef47, /* 0xef40 */
- 0xef48, 0xef49, 0xef4a, 0xef4b, 0xef4c, 0xef4d, 0xef4e, 0xef4f,
- 0xef50, 0xef51, 0xef52, 0xef53, 0xef54, 0xef55, 0xef56, 0xef57,
- 0xef58, 0xef59, 0xef5a, 0xef5b, 0xef5c, 0xef5d, 0xef5e, 0xef5f,
- 0xef60, 0xef61, 0xef62, 0xef63, 0xef64, 0xef65, 0xef66, 0xef67,
- 0xef68, 0xef69, 0xef6a, 0xef6b, 0xef6c, 0xef6d, 0xef6e, 0xef6f,
- 0xef70, 0xef71, 0xef72, 0xef73, 0xef74, 0xef75, 0xef76, 0xef77,
- 0xef78, 0xef79, 0xef7a, 0xef7b, 0xef7c, 0xef7d, 0xef7e, 0xef7f,
- 0xef80, 0xef81, 0xef82, 0xef83, 0xef84, 0xef85, 0xef86, 0xef87, /* 0xef80 */
- 0xef88, 0xef89, 0xef8a, 0xef8b, 0xef8c, 0xef8d, 0xef8e, 0xef8f,
- 0xef90, 0xef91, 0xef92, 0xef93, 0xef94, 0xef95, 0xef96, 0xef97,
- 0xef98, 0xef99, 0xef9a, 0xef9b, 0xef9c, 0xef9d, 0xef9e, 0xef9f,
- 0xefa0, 0xefa1, 0xefa2, 0xefa3, 0xefa4, 0xefa5, 0xefa6, 0xefa7,
- 0xefa8, 0xefa9, 0xefaa, 0xefab, 0xefac, 0xefad, 0xefae, 0xefaf,
- 0xefb0, 0xefb1, 0xefb2, 0xefb3, 0xefb4, 0xefb5, 0xefb6, 0xefb7,
- 0xefb8, 0xefb9, 0xefba, 0xefbb, 0xefbc, 0xefbd, 0xefbe, 0xefbf,
- 0xefc0, 0xefc1, 0xefc2, 0xefc3, 0xefc4, 0xefc5, 0xefc6, 0xefc7, /* 0xefc0 */
- 0xefc8, 0xefc9, 0xefca, 0xefcb, 0xefcc, 0xefcd, 0xefce, 0xefcf,
- 0xefd0, 0xefd1, 0xefd2, 0xefd3, 0xefd4, 0xefd5, 0xefd6, 0xefd7,
- 0xefd8, 0xefd9, 0xefda, 0xefdb, 0xefdc, 0xefdd, 0xefde, 0xefdf,
- 0xefe0, 0xefe1, 0xefe2, 0xefe3, 0xefe4, 0xefe5, 0xefe6, 0xefe7,
- 0xefe8, 0xefe9, 0xefea, 0xefeb, 0xefec, 0xefed, 0xefee, 0xefef,
- 0xeff0, 0xeff1, 0xeff2, 0xeff3, 0xeff4, 0xeff5, 0xeff6, 0xeff7,
- 0xeff8, 0xeff9, 0xeffa, 0xeffb, 0xeffc, 0xeffd, 0xeffe, 0xefff,
- 0xf000, 0xf001, 0xf002, 0xf003, 0xf004, 0xf005, 0xf006, 0xf007, /* 0xf000 */
- 0xf008, 0xf009, 0xf00a, 0xf00b, 0xf00c, 0xf00d, 0xf00e, 0xf00f,
- 0xf010, 0xf011, 0xf012, 0xf013, 0xf014, 0xf015, 0xf016, 0xf017,
- 0xf018, 0xf019, 0xf01a, 0xf01b, 0xf01c, 0xf01d, 0xf01e, 0xf01f,
- 0xf020, 0xf021, 0xf022, 0xf023, 0xf024, 0xf025, 0xf026, 0xf027,
- 0xf028, 0xf029, 0xf02a, 0xf02b, 0xf02c, 0xf02d, 0xf02e, 0xf02f,
- 0xf030, 0xf031, 0xf032, 0xf033, 0xf034, 0xf035, 0xf036, 0xf037,
- 0xf038, 0xf039, 0xf03a, 0xf03b, 0xf03c, 0xf03d, 0xf03e, 0xf03f,
- 0xf040, 0xf041, 0xf042, 0xf043, 0xf044, 0xf045, 0xf046, 0xf047, /* 0xf040 */
- 0xf048, 0xf049, 0xf04a, 0xf04b, 0xf04c, 0xf04d, 0xf04e, 0xf04f,
- 0xf050, 0xf051, 0xf052, 0xf053, 0xf054, 0xf055, 0xf056, 0xf057,
- 0xf058, 0xf059, 0xf05a, 0xf05b, 0xf05c, 0xf05d, 0xf05e, 0xf05f,
- 0xf060, 0xf061, 0xf062, 0xf063, 0xf064, 0xf065, 0xf066, 0xf067,
- 0xf068, 0xf069, 0xf06a, 0xf06b, 0xf06c, 0xf06d, 0xf06e, 0xf06f,
- 0xf070, 0xf071, 0xf072, 0xf073, 0xf074, 0xf075, 0xf076, 0xf077,
- 0xf078, 0xf079, 0xf07a, 0xf07b, 0xf07c, 0xf07d, 0xf07e, 0xf07f,
- 0xf080, 0xf081, 0xf082, 0xf083, 0xf084, 0xf085, 0xf086, 0xf087, /* 0xf080 */
- 0xf088, 0xf089, 0xf08a, 0xf08b, 0xf08c, 0xf08d, 0xf08e, 0xf08f,
- 0xf090, 0xf091, 0xf092, 0xf093, 0xf094, 0xf095, 0xf096, 0xf097,
- 0xf098, 0xf099, 0xf09a, 0xf09b, 0xf09c, 0xf09d, 0xf09e, 0xf09f,
- 0xf0a0, 0xf0a1, 0xf0a2, 0xf0a3, 0xf0a4, 0xf0a5, 0xf0a6, 0xf0a7,
- 0xf0a8, 0xf0a9, 0xf0aa, 0xf0ab, 0xf0ac, 0xf0ad, 0xf0ae, 0xf0af,
- 0xf0b0, 0xf0b1, 0xf0b2, 0xf0b3, 0xf0b4, 0xf0b5, 0xf0b6, 0xf0b7,
- 0xf0b8, 0xf0b9, 0xf0ba, 0xf0bb, 0xf0bc, 0xf0bd, 0xf0be, 0xf0bf,
- 0xf0c0, 0xf0c1, 0xf0c2, 0xf0c3, 0xf0c4, 0xf0c5, 0xf0c6, 0xf0c7, /* 0xf0c0 */
- 0xf0c8, 0xf0c9, 0xf0ca, 0xf0cb, 0xf0cc, 0xf0cd, 0xf0ce, 0xf0cf,
- 0xf0d0, 0xf0d1, 0xf0d2, 0xf0d3, 0xf0d4, 0xf0d5, 0xf0d6, 0xf0d7,
- 0xf0d8, 0xf0d9, 0xf0da, 0xf0db, 0xf0dc, 0xf0dd, 0xf0de, 0xf0df,
- 0xf0e0, 0xf0e1, 0xf0e2, 0xf0e3, 0xf0e4, 0xf0e5, 0xf0e6, 0xf0e7,
- 0xf0e8, 0xf0e9, 0xf0ea, 0xf0eb, 0xf0ec, 0xf0ed, 0xf0ee, 0xf0ef,
- 0xf0f0, 0xf0f1, 0xf0f2, 0xf0f3, 0xf0f4, 0xf0f5, 0xf0f6, 0xf0f7,
- 0xf0f8, 0xf0f9, 0xf0fa, 0xf0fb, 0xf0fc, 0xf0fd, 0xf0fe, 0xf0ff,
- 0xf100, 0xf101, 0xf102, 0xf103, 0xf104, 0xf105, 0xf106, 0xf107, /* 0xf100 */
- 0xf108, 0xf109, 0xf10a, 0xf10b, 0xf10c, 0xf10d, 0xf10e, 0xf10f,
- 0xf110, 0xf111, 0xf112, 0xf113, 0xf114, 0xf115, 0xf116, 0xf117,
- 0xf118, 0xf119, 0xf11a, 0xf11b, 0xf11c, 0xf11d, 0xf11e, 0xf11f,
- 0xf120, 0xf121, 0xf122, 0xf123, 0xf124, 0xf125, 0xf126, 0xf127,
- 0xf128, 0xf129, 0xf12a, 0xf12b, 0xf12c, 0xf12d, 0xf12e, 0xf12f,
- 0xf130, 0xf131, 0xf132, 0xf133, 0xf134, 0xf135, 0xf136, 0xf137,
- 0xf138, 0xf139, 0xf13a, 0xf13b, 0xf13c, 0xf13d, 0xf13e, 0xf13f,
- 0xf140, 0xf141, 0xf142, 0xf143, 0xf144, 0xf145, 0xf146, 0xf147, /* 0xf140 */
- 0xf148, 0xf149, 0xf14a, 0xf14b, 0xf14c, 0xf14d, 0xf14e, 0xf14f,
- 0xf150, 0xf151, 0xf152, 0xf153, 0xf154, 0xf155, 0xf156, 0xf157,
- 0xf158, 0xf159, 0xf15a, 0xf15b, 0xf15c, 0xf15d, 0xf15e, 0xf15f,
- 0xf160, 0xf161, 0xf162, 0xf163, 0xf164, 0xf165, 0xf166, 0xf167,
- 0xf168, 0xf169, 0xf16a, 0xf16b, 0xf16c, 0xf16d, 0xf16e, 0xf16f,
- 0xf170, 0xf171, 0xf172, 0xf173, 0xf174, 0xf175, 0xf176, 0xf177,
- 0xf178, 0xf179, 0xf17a, 0xf17b, 0xf17c, 0xf17d, 0xf17e, 0xf17f,
- 0xf180, 0xf181, 0xf182, 0xf183, 0xf184, 0xf185, 0xf186, 0xf187, /* 0xf180 */
- 0xf188, 0xf189, 0xf18a, 0xf18b, 0xf18c, 0xf18d, 0xf18e, 0xf18f,
- 0xf190, 0xf191, 0xf192, 0xf193, 0xf194, 0xf195, 0xf196, 0xf197,
- 0xf198, 0xf199, 0xf19a, 0xf19b, 0xf19c, 0xf19d, 0xf19e, 0xf19f,
- 0xf1a0, 0xf1a1, 0xf1a2, 0xf1a3, 0xf1a4, 0xf1a5, 0xf1a6, 0xf1a7,
- 0xf1a8, 0xf1a9, 0xf1aa, 0xf1ab, 0xf1ac, 0xf1ad, 0xf1ae, 0xf1af,
- 0xf1b0, 0xf1b1, 0xf1b2, 0xf1b3, 0xf1b4, 0xf1b5, 0xf1b6, 0xf1b7,
- 0xf1b8, 0xf1b9, 0xf1ba, 0xf1bb, 0xf1bc, 0xf1bd, 0xf1be, 0xf1bf,
- 0xf1c0, 0xf1c1, 0xf1c2, 0xf1c3, 0xf1c4, 0xf1c5, 0xf1c6, 0xf1c7, /* 0xf1c0 */
- 0xf1c8, 0xf1c9, 0xf1ca, 0xf1cb, 0xf1cc, 0xf1cd, 0xf1ce, 0xf1cf,
- 0xf1d0, 0xf1d1, 0xf1d2, 0xf1d3, 0xf1d4, 0xf1d5, 0xf1d6, 0xf1d7,
- 0xf1d8, 0xf1d9, 0xf1da, 0xf1db, 0xf1dc, 0xf1dd, 0xf1de, 0xf1df,
- 0xf1e0, 0xf1e1, 0xf1e2, 0xf1e3, 0xf1e4, 0xf1e5, 0xf1e6, 0xf1e7,
- 0xf1e8, 0xf1e9, 0xf1ea, 0xf1eb, 0xf1ec, 0xf1ed, 0xf1ee, 0xf1ef,
- 0xf1f0, 0xf1f1, 0xf1f2, 0xf1f3, 0xf1f4, 0xf1f5, 0xf1f6, 0xf1f7,
- 0xf1f8, 0xf1f9, 0xf1fa, 0xf1fb, 0xf1fc, 0xf1fd, 0xf1fe, 0xf1ff,
- 0xf200, 0xf201, 0xf202, 0xf203, 0xf204, 0xf205, 0xf206, 0xf207, /* 0xf200 */
- 0xf208, 0xf209, 0xf20a, 0xf20b, 0xf20c, 0xf20d, 0xf20e, 0xf20f,
- 0xf210, 0xf211, 0xf212, 0xf213, 0xf214, 0xf215, 0xf216, 0xf217,
- 0xf218, 0xf219, 0xf21a, 0xf21b, 0xf21c, 0xf21d, 0xf21e, 0xf21f,
- 0xf220, 0xf221, 0xf222, 0xf223, 0xf224, 0xf225, 0xf226, 0xf227,
- 0xf228, 0xf229, 0xf22a, 0xf22b, 0xf22c, 0xf22d, 0xf22e, 0xf22f,
- 0xf230, 0xf231, 0xf232, 0xf233, 0xf234, 0xf235, 0xf236, 0xf237,
- 0xf238, 0xf239, 0xf23a, 0xf23b, 0xf23c, 0xf23d, 0xf23e, 0xf23f,
- 0xf240, 0xf241, 0xf242, 0xf243, 0xf244, 0xf245, 0xf246, 0xf247, /* 0xf240 */
- 0xf248, 0xf249, 0xf24a, 0xf24b, 0xf24c, 0xf24d, 0xf24e, 0xf24f,
- 0xf250, 0xf251, 0xf252, 0xf253, 0xf254, 0xf255, 0xf256, 0xf257,
- 0xf258, 0xf259, 0xf25a, 0xf25b, 0xf25c, 0xf25d, 0xf25e, 0xf25f,
- 0xf260, 0xf261, 0xf262, 0xf263, 0xf264, 0xf265, 0xf266, 0xf267,
- 0xf268, 0xf269, 0xf26a, 0xf26b, 0xf26c, 0xf26d, 0xf26e, 0xf26f,
- 0xf270, 0xf271, 0xf272, 0xf273, 0xf274, 0xf275, 0xf276, 0xf277,
- 0xf278, 0xf279, 0xf27a, 0xf27b, 0xf27c, 0xf27d, 0xf27e, 0xf27f,
- 0xf280, 0xf281, 0xf282, 0xf283, 0xf284, 0xf285, 0xf286, 0xf287, /* 0xf280 */
- 0xf288, 0xf289, 0xf28a, 0xf28b, 0xf28c, 0xf28d, 0xf28e, 0xf28f,
- 0xf290, 0xf291, 0xf292, 0xf293, 0xf294, 0xf295, 0xf296, 0xf297,
- 0xf298, 0xf299, 0xf29a, 0xf29b, 0xf29c, 0xf29d, 0xf29e, 0xf29f,
- 0xf2a0, 0xf2a1, 0xf2a2, 0xf2a3, 0xf2a4, 0xf2a5, 0xf2a6, 0xf2a7,
- 0xf2a8, 0xf2a9, 0xf2aa, 0xf2ab, 0xf2ac, 0xf2ad, 0xf2ae, 0xf2af,
- 0xf2b0, 0xf2b1, 0xf2b2, 0xf2b3, 0xf2b4, 0xf2b5, 0xf2b6, 0xf2b7,
- 0xf2b8, 0xf2b9, 0xf2ba, 0xf2bb, 0xf2bc, 0xf2bd, 0xf2be, 0xf2bf,
- 0xf2c0, 0xf2c1, 0xf2c2, 0xf2c3, 0xf2c4, 0xf2c5, 0xf2c6, 0xf2c7, /* 0xf2c0 */
- 0xf2c8, 0xf2c9, 0xf2ca, 0xf2cb, 0xf2cc, 0xf2cd, 0xf2ce, 0xf2cf,
- 0xf2d0, 0xf2d1, 0xf2d2, 0xf2d3, 0xf2d4, 0xf2d5, 0xf2d6, 0xf2d7,
- 0xf2d8, 0xf2d9, 0xf2da, 0xf2db, 0xf2dc, 0xf2dd, 0xf2de, 0xf2df,
- 0xf2e0, 0xf2e1, 0xf2e2, 0xf2e3, 0xf2e4, 0xf2e5, 0xf2e6, 0xf2e7,
- 0xf2e8, 0xf2e9, 0xf2ea, 0xf2eb, 0xf2ec, 0xf2ed, 0xf2ee, 0xf2ef,
- 0xf2f0, 0xf2f1, 0xf2f2, 0xf2f3, 0xf2f4, 0xf2f5, 0xf2f6, 0xf2f7,
- 0xf2f8, 0xf2f9, 0xf2fa, 0xf2fb, 0xf2fc, 0xf2fd, 0xf2fe, 0xf2ff,
- 0xf300, 0xf301, 0xf302, 0xf303, 0xf304, 0xf305, 0xf306, 0xf307, /* 0xf300 */
- 0xf308, 0xf309, 0xf30a, 0xf30b, 0xf30c, 0xf30d, 0xf30e, 0xf30f,
- 0xf310, 0xf311, 0xf312, 0xf313, 0xf314, 0xf315, 0xf316, 0xf317,
- 0xf318, 0xf319, 0xf31a, 0xf31b, 0xf31c, 0xf31d, 0xf31e, 0xf31f,
- 0xf320, 0xf321, 0xf322, 0xf323, 0xf324, 0xf325, 0xf326, 0xf327,
- 0xf328, 0xf329, 0xf32a, 0xf32b, 0xf32c, 0xf32d, 0xf32e, 0xf32f,
- 0xf330, 0xf331, 0xf332, 0xf333, 0xf334, 0xf335, 0xf336, 0xf337,
- 0xf338, 0xf339, 0xf33a, 0xf33b, 0xf33c, 0xf33d, 0xf33e, 0xf33f,
- 0xf340, 0xf341, 0xf342, 0xf343, 0xf344, 0xf345, 0xf346, 0xf347, /* 0xf340 */
- 0xf348, 0xf349, 0xf34a, 0xf34b, 0xf34c, 0xf34d, 0xf34e, 0xf34f,
- 0xf350, 0xf351, 0xf352, 0xf353, 0xf354, 0xf355, 0xf356, 0xf357,
- 0xf358, 0xf359, 0xf35a, 0xf35b, 0xf35c, 0xf35d, 0xf35e, 0xf35f,
- 0xf360, 0xf361, 0xf362, 0xf363, 0xf364, 0xf365, 0xf366, 0xf367,
- 0xf368, 0xf369, 0xf36a, 0xf36b, 0xf36c, 0xf36d, 0xf36e, 0xf36f,
- 0xf370, 0xf371, 0xf372, 0xf373, 0xf374, 0xf375, 0xf376, 0xf377,
- 0xf378, 0xf379, 0xf37a, 0xf37b, 0xf37c, 0xf37d, 0xf37e, 0xf37f,
- 0xf380, 0xf381, 0xf382, 0xf383, 0xf384, 0xf385, 0xf386, 0xf387, /* 0xf380 */
- 0xf388, 0xf389, 0xf38a, 0xf38b, 0xf38c, 0xf38d, 0xf38e, 0xf38f,
- 0xf390, 0xf391, 0xf392, 0xf393, 0xf394, 0xf395, 0xf396, 0xf397,
- 0xf398, 0xf399, 0xf39a, 0xf39b, 0xf39c, 0xf39d, 0xf39e, 0xf39f,
- 0xf3a0, 0xf3a1, 0xf3a2, 0xf3a3, 0xf3a4, 0xf3a5, 0xf3a6, 0xf3a7,
- 0xf3a8, 0xf3a9, 0xf3aa, 0xf3ab, 0xf3ac, 0xf3ad, 0xf3ae, 0xf3af,
- 0xf3b0, 0xf3b1, 0xf3b2, 0xf3b3, 0xf3b4, 0xf3b5, 0xf3b6, 0xf3b7,
- 0xf3b8, 0xf3b9, 0xf3ba, 0xf3bb, 0xf3bc, 0xf3bd, 0xf3be, 0xf3bf,
- 0xf3c0, 0xf3c1, 0xf3c2, 0xf3c3, 0xf3c4, 0xf3c5, 0xf3c6, 0xf3c7, /* 0xf3c0 */
- 0xf3c8, 0xf3c9, 0xf3ca, 0xf3cb, 0xf3cc, 0xf3cd, 0xf3ce, 0xf3cf,
- 0xf3d0, 0xf3d1, 0xf3d2, 0xf3d3, 0xf3d4, 0xf3d5, 0xf3d6, 0xf3d7,
- 0xf3d8, 0xf3d9, 0xf3da, 0xf3db, 0xf3dc, 0xf3dd, 0xf3de, 0xf3df,
- 0xf3e0, 0xf3e1, 0xf3e2, 0xf3e3, 0xf3e4, 0xf3e5, 0xf3e6, 0xf3e7,
- 0xf3e8, 0xf3e9, 0xf3ea, 0xf3eb, 0xf3ec, 0xf3ed, 0xf3ee, 0xf3ef,
- 0xf3f0, 0xf3f1, 0xf3f2, 0xf3f3, 0xf3f4, 0xf3f5, 0xf3f6, 0xf3f7,
- 0xf3f8, 0xf3f9, 0xf3fa, 0xf3fb, 0xf3fc, 0xf3fd, 0xf3fe, 0xf3ff,
- 0xf400, 0xf401, 0xf402, 0xf403, 0xf404, 0xf405, 0xf406, 0xf407, /* 0xf400 */
- 0xf408, 0xf409, 0xf40a, 0xf40b, 0xf40c, 0xf40d, 0xf40e, 0xf40f,
- 0xf410, 0xf411, 0xf412, 0xf413, 0xf414, 0xf415, 0xf416, 0xf417,
- 0xf418, 0xf419, 0xf41a, 0xf41b, 0xf41c, 0xf41d, 0xf41e, 0xf41f,
- 0xf420, 0xf421, 0xf422, 0xf423, 0xf424, 0xf425, 0xf426, 0xf427,
- 0xf428, 0xf429, 0xf42a, 0xf42b, 0xf42c, 0xf42d, 0xf42e, 0xf42f,
- 0xf430, 0xf431, 0xf432, 0xf433, 0xf434, 0xf435, 0xf436, 0xf437,
- 0xf438, 0xf439, 0xf43a, 0xf43b, 0xf43c, 0xf43d, 0xf43e, 0xf43f,
- 0xf440, 0xf441, 0xf442, 0xf443, 0xf444, 0xf445, 0xf446, 0xf447, /* 0xf440 */
- 0xf448, 0xf449, 0xf44a, 0xf44b, 0xf44c, 0xf44d, 0xf44e, 0xf44f,
- 0xf450, 0xf451, 0xf452, 0xf453, 0xf454, 0xf455, 0xf456, 0xf457,
- 0xf458, 0xf459, 0xf45a, 0xf45b, 0xf45c, 0xf45d, 0xf45e, 0xf45f,
- 0xf460, 0xf461, 0xf462, 0xf463, 0xf464, 0xf465, 0xf466, 0xf467,
- 0xf468, 0xf469, 0xf46a, 0xf46b, 0xf46c, 0xf46d, 0xf46e, 0xf46f,
- 0xf470, 0xf471, 0xf472, 0xf473, 0xf474, 0xf475, 0xf476, 0xf477,
- 0xf478, 0xf479, 0xf47a, 0xf47b, 0xf47c, 0xf47d, 0xf47e, 0xf47f,
- 0xf480, 0xf481, 0xf482, 0xf483, 0xf484, 0xf485, 0xf486, 0xf487, /* 0xf480 */
- 0xf488, 0xf489, 0xf48a, 0xf48b, 0xf48c, 0xf48d, 0xf48e, 0xf48f,
- 0xf490, 0xf491, 0xf492, 0xf493, 0xf494, 0xf495, 0xf496, 0xf497,
- 0xf498, 0xf499, 0xf49a, 0xf49b, 0xf49c, 0xf49d, 0xf49e, 0xf49f,
- 0xf4a0, 0xf4a1, 0xf4a2, 0xf4a3, 0xf4a4, 0xf4a5, 0xf4a6, 0xf4a7,
- 0xf4a8, 0xf4a9, 0xf4aa, 0xf4ab, 0xf4ac, 0xf4ad, 0xf4ae, 0xf4af,
- 0xf4b0, 0xf4b1, 0xf4b2, 0xf4b3, 0xf4b4, 0xf4b5, 0xf4b6, 0xf4b7,
- 0xf4b8, 0xf4b9, 0xf4ba, 0xf4bb, 0xf4bc, 0xf4bd, 0xf4be, 0xf4bf,
- 0xf4c0, 0xf4c1, 0xf4c2, 0xf4c3, 0xf4c4, 0xf4c5, 0xf4c6, 0xf4c7, /* 0xf4c0 */
- 0xf4c8, 0xf4c9, 0xf4ca, 0xf4cb, 0xf4cc, 0xf4cd, 0xf4ce, 0xf4cf,
- 0xf4d0, 0xf4d1, 0xf4d2, 0xf4d3, 0xf4d4, 0xf4d5, 0xf4d6, 0xf4d7,
- 0xf4d8, 0xf4d9, 0xf4da, 0xf4db, 0xf4dc, 0xf4dd, 0xf4de, 0xf4df,
- 0xf4e0, 0xf4e1, 0xf4e2, 0xf4e3, 0xf4e4, 0xf4e5, 0xf4e6, 0xf4e7,
- 0xf4e8, 0xf4e9, 0xf4ea, 0xf4eb, 0xf4ec, 0xf4ed, 0xf4ee, 0xf4ef,
- 0xf4f0, 0xf4f1, 0xf4f2, 0xf4f3, 0xf4f4, 0xf4f5, 0xf4f6, 0xf4f7,
- 0xf4f8, 0xf4f9, 0xf4fa, 0xf4fb, 0xf4fc, 0xf4fd, 0xf4fe, 0xf4ff,
- 0xf500, 0xf501, 0xf502, 0xf503, 0xf504, 0xf505, 0xf506, 0xf507, /* 0xf500 */
- 0xf508, 0xf509, 0xf50a, 0xf50b, 0xf50c, 0xf50d, 0xf50e, 0xf50f,
- 0xf510, 0xf511, 0xf512, 0xf513, 0xf514, 0xf515, 0xf516, 0xf517,
- 0xf518, 0xf519, 0xf51a, 0xf51b, 0xf51c, 0xf51d, 0xf51e, 0xf51f,
- 0xf520, 0xf521, 0xf522, 0xf523, 0xf524, 0xf525, 0xf526, 0xf527,
- 0xf528, 0xf529, 0xf52a, 0xf52b, 0xf52c, 0xf52d, 0xf52e, 0xf52f,
- 0xf530, 0xf531, 0xf532, 0xf533, 0xf534, 0xf535, 0xf536, 0xf537,
- 0xf538, 0xf539, 0xf53a, 0xf53b, 0xf53c, 0xf53d, 0xf53e, 0xf53f,
- 0xf540, 0xf541, 0xf542, 0xf543, 0xf544, 0xf545, 0xf546, 0xf547, /* 0xf540 */
- 0xf548, 0xf549, 0xf54a, 0xf54b, 0xf54c, 0xf54d, 0xf54e, 0xf54f,
- 0xf550, 0xf551, 0xf552, 0xf553, 0xf554, 0xf555, 0xf556, 0xf557,
- 0xf558, 0xf559, 0xf55a, 0xf55b, 0xf55c, 0xf55d, 0xf55e, 0xf55f,
- 0xf560, 0xf561, 0xf562, 0xf563, 0xf564, 0xf565, 0xf566, 0xf567,
- 0xf568, 0xf569, 0xf56a, 0xf56b, 0xf56c, 0xf56d, 0xf56e, 0xf56f,
- 0xf570, 0xf571, 0xf572, 0xf573, 0xf574, 0xf575, 0xf576, 0xf577,
- 0xf578, 0xf579, 0xf57a, 0xf57b, 0xf57c, 0xf57d, 0xf57e, 0xf57f,
- 0xf580, 0xf581, 0xf582, 0xf583, 0xf584, 0xf585, 0xf586, 0xf587, /* 0xf580 */
- 0xf588, 0xf589, 0xf58a, 0xf58b, 0xf58c, 0xf58d, 0xf58e, 0xf58f,
- 0xf590, 0xf591, 0xf592, 0xf593, 0xf594, 0xf595, 0xf596, 0xf597,
- 0xf598, 0xf599, 0xf59a, 0xf59b, 0xf59c, 0xf59d, 0xf59e, 0xf59f,
- 0xf5a0, 0xf5a1, 0xf5a2, 0xf5a3, 0xf5a4, 0xf5a5, 0xf5a6, 0xf5a7,
- 0xf5a8, 0xf5a9, 0xf5aa, 0xf5ab, 0xf5ac, 0xf5ad, 0xf5ae, 0xf5af,
- 0xf5b0, 0xf5b1, 0xf5b2, 0xf5b3, 0xf5b4, 0xf5b5, 0xf5b6, 0xf5b7,
- 0xf5b8, 0xf5b9, 0xf5ba, 0xf5bb, 0xf5bc, 0xf5bd, 0xf5be, 0xf5bf,
- 0xf5c0, 0xf5c1, 0xf5c2, 0xf5c3, 0xf5c4, 0xf5c5, 0xf5c6, 0xf5c7, /* 0xf5c0 */
- 0xf5c8, 0xf5c9, 0xf5ca, 0xf5cb, 0xf5cc, 0xf5cd, 0xf5ce, 0xf5cf,
- 0xf5d0, 0xf5d1, 0xf5d2, 0xf5d3, 0xf5d4, 0xf5d5, 0xf5d6, 0xf5d7,
- 0xf5d8, 0xf5d9, 0xf5da, 0xf5db, 0xf5dc, 0xf5dd, 0xf5de, 0xf5df,
- 0xf5e0, 0xf5e1, 0xf5e2, 0xf5e3, 0xf5e4, 0xf5e5, 0xf5e6, 0xf5e7,
- 0xf5e8, 0xf5e9, 0xf5ea, 0xf5eb, 0xf5ec, 0xf5ed, 0xf5ee, 0xf5ef,
- 0xf5f0, 0xf5f1, 0xf5f2, 0xf5f3, 0xf5f4, 0xf5f5, 0xf5f6, 0xf5f7,
- 0xf5f8, 0xf5f9, 0xf5fa, 0xf5fb, 0xf5fc, 0xf5fd, 0xf5fe, 0xf5ff,
- 0xf600, 0xf601, 0xf602, 0xf603, 0xf604, 0xf605, 0xf606, 0xf607, /* 0xf600 */
- 0xf608, 0xf609, 0xf60a, 0xf60b, 0xf60c, 0xf60d, 0xf60e, 0xf60f,
- 0xf610, 0xf611, 0xf612, 0xf613, 0xf614, 0xf615, 0xf616, 0xf617,
- 0xf618, 0xf619, 0xf61a, 0xf61b, 0xf61c, 0xf61d, 0xf61e, 0xf61f,
- 0xf620, 0xf621, 0xf622, 0xf623, 0xf624, 0xf625, 0xf626, 0xf627,
- 0xf628, 0xf629, 0xf62a, 0xf62b, 0xf62c, 0xf62d, 0xf62e, 0xf62f,
- 0xf630, 0xf631, 0xf632, 0xf633, 0xf634, 0xf635, 0xf636, 0xf637,
- 0xf638, 0xf639, 0xf63a, 0xf63b, 0xf63c, 0xf63d, 0xf63e, 0xf63f,
- 0xf640, 0xf641, 0xf642, 0xf643, 0xf644, 0xf645, 0xf646, 0xf647, /* 0xf640 */
- 0xf648, 0xf649, 0xf64a, 0xf64b, 0xf64c, 0xf64d, 0xf64e, 0xf64f,
- 0xf650, 0xf651, 0xf652, 0xf653, 0xf654, 0xf655, 0xf656, 0xf657,
- 0xf658, 0xf659, 0xf65a, 0xf65b, 0xf65c, 0xf65d, 0xf65e, 0xf65f,
- 0xf660, 0xf661, 0xf662, 0xf663, 0xf664, 0xf665, 0xf666, 0xf667,
- 0xf668, 0xf669, 0xf66a, 0xf66b, 0xf66c, 0xf66d, 0xf66e, 0xf66f,
- 0xf670, 0xf671, 0xf672, 0xf673, 0xf674, 0xf675, 0xf676, 0xf677,
- 0xf678, 0xf679, 0xf67a, 0xf67b, 0xf67c, 0xf67d, 0xf67e, 0xf67f,
- 0xf680, 0xf681, 0xf682, 0xf683, 0xf684, 0xf685, 0xf686, 0xf687, /* 0xf680 */
- 0xf688, 0xf689, 0xf68a, 0xf68b, 0xf68c, 0xf68d, 0xf68e, 0xf68f,
- 0xf690, 0xf691, 0xf692, 0xf693, 0xf694, 0xf695, 0xf696, 0xf697,
- 0xf698, 0xf699, 0xf69a, 0xf69b, 0xf69c, 0xf69d, 0xf69e, 0xf69f,
- 0xf6a0, 0xf6a1, 0xf6a2, 0xf6a3, 0xf6a4, 0xf6a5, 0xf6a6, 0xf6a7,
- 0xf6a8, 0xf6a9, 0xf6aa, 0xf6ab, 0xf6ac, 0xf6ad, 0xf6ae, 0xf6af,
- 0xf6b0, 0xf6b1, 0xf6b2, 0xf6b3, 0xf6b4, 0xf6b5, 0xf6b6, 0xf6b7,
- 0xf6b8, 0xf6b9, 0xf6ba, 0xf6bb, 0xf6bc, 0xf6bd, 0xf6be, 0xf6bf,
- 0xf6c0, 0xf6c1, 0xf6c2, 0xf6c3, 0xf6c4, 0xf6c5, 0xf6c6, 0xf6c7, /* 0xf6c0 */
- 0xf6c8, 0xf6c9, 0xf6ca, 0xf6cb, 0xf6cc, 0xf6cd, 0xf6ce, 0xf6cf,
- 0xf6d0, 0xf6d1, 0xf6d2, 0xf6d3, 0xf6d4, 0xf6d5, 0xf6d6, 0xf6d7,
- 0xf6d8, 0xf6d9, 0xf6da, 0xf6db, 0xf6dc, 0xf6dd, 0xf6de, 0xf6df,
- 0xf6e0, 0xf6e1, 0xf6e2, 0xf6e3, 0xf6e4, 0xf6e5, 0xf6e6, 0xf6e7,
- 0xf6e8, 0xf6e9, 0xf6ea, 0xf6eb, 0xf6ec, 0xf6ed, 0xf6ee, 0xf6ef,
- 0xf6f0, 0xf6f1, 0xf6f2, 0xf6f3, 0xf6f4, 0xf6f5, 0xf6f6, 0xf6f7,
- 0xf6f8, 0xf6f9, 0xf6fa, 0xf6fb, 0xf6fc, 0xf6fd, 0xf6fe, 0xf6ff,
- 0xf700, 0xf701, 0xf702, 0xf703, 0xf704, 0xf705, 0xf706, 0xf707, /* 0xf700 */
- 0xf708, 0xf709, 0xf70a, 0xf70b, 0xf70c, 0xf70d, 0xf70e, 0xf70f,
- 0xf710, 0xf711, 0xf712, 0xf713, 0xf714, 0xf715, 0xf716, 0xf717,
- 0xf718, 0xf719, 0xf71a, 0xf71b, 0xf71c, 0xf71d, 0xf71e, 0xf71f,
- 0xf720, 0xf721, 0xf722, 0xf723, 0xf724, 0xf725, 0xf726, 0xf727,
- 0xf728, 0xf729, 0xf72a, 0xf72b, 0xf72c, 0xf72d, 0xf72e, 0xf72f,
- 0xf730, 0xf731, 0xf732, 0xf733, 0xf734, 0xf735, 0xf736, 0xf737,
- 0xf738, 0xf739, 0xf73a, 0xf73b, 0xf73c, 0xf73d, 0xf73e, 0xf73f,
- 0xf740, 0xf741, 0xf742, 0xf743, 0xf744, 0xf745, 0xf746, 0xf747, /* 0xf740 */
- 0xf748, 0xf749, 0xf74a, 0xf74b, 0xf74c, 0xf74d, 0xf74e, 0xf74f,
- 0xf750, 0xf751, 0xf752, 0xf753, 0xf754, 0xf755, 0xf756, 0xf757,
- 0xf758, 0xf759, 0xf75a, 0xf75b, 0xf75c, 0xf75d, 0xf75e, 0xf75f,
- 0xf760, 0xf761, 0xf762, 0xf763, 0xf764, 0xf765, 0xf766, 0xf767,
- 0xf768, 0xf769, 0xf76a, 0xf76b, 0xf76c, 0xf76d, 0xf76e, 0xf76f,
- 0xf770, 0xf771, 0xf772, 0xf773, 0xf774, 0xf775, 0xf776, 0xf777,
- 0xf778, 0xf779, 0xf77a, 0xf77b, 0xf77c, 0xf77d, 0xf77e, 0xf77f,
- 0xf780, 0xf781, 0xf782, 0xf783, 0xf784, 0xf785, 0xf786, 0xf787, /* 0xf780 */
- 0xf788, 0xf789, 0xf78a, 0xf78b, 0xf78c, 0xf78d, 0xf78e, 0xf78f,
- 0xf790, 0xf791, 0xf792, 0xf793, 0xf794, 0xf795, 0xf796, 0xf797,
- 0xf798, 0xf799, 0xf79a, 0xf79b, 0xf79c, 0xf79d, 0xf79e, 0xf79f,
- 0xf7a0, 0xf7a1, 0xf7a2, 0xf7a3, 0xf7a4, 0xf7a5, 0xf7a6, 0xf7a7,
- 0xf7a8, 0xf7a9, 0xf7aa, 0xf7ab, 0xf7ac, 0xf7ad, 0xf7ae, 0xf7af,
- 0xf7b0, 0xf7b1, 0xf7b2, 0xf7b3, 0xf7b4, 0xf7b5, 0xf7b6, 0xf7b7,
- 0xf7b8, 0xf7b9, 0xf7ba, 0xf7bb, 0xf7bc, 0xf7bd, 0xf7be, 0xf7bf,
- 0xf7c0, 0xf7c1, 0xf7c2, 0xf7c3, 0xf7c4, 0xf7c5, 0xf7c6, 0xf7c7, /* 0xf7c0 */
- 0xf7c8, 0xf7c9, 0xf7ca, 0xf7cb, 0xf7cc, 0xf7cd, 0xf7ce, 0xf7cf,
- 0xf7d0, 0xf7d1, 0xf7d2, 0xf7d3, 0xf7d4, 0xf7d5, 0xf7d6, 0xf7d7,
- 0xf7d8, 0xf7d9, 0xf7da, 0xf7db, 0xf7dc, 0xf7dd, 0xf7de, 0xf7df,
- 0xf7e0, 0xf7e1, 0xf7e2, 0xf7e3, 0xf7e4, 0xf7e5, 0xf7e6, 0xf7e7,
- 0xf7e8, 0xf7e9, 0xf7ea, 0xf7eb, 0xf7ec, 0xf7ed, 0xf7ee, 0xf7ef,
- 0xf7f0, 0xf7f1, 0xf7f2, 0xf7f3, 0xf7f4, 0xf7f5, 0xf7f6, 0xf7f7,
- 0xf7f8, 0xf7f9, 0xf7fa, 0xf7fb, 0xf7fc, 0xf7fd, 0xf7fe, 0xf7ff,
- 0xf800, 0xf801, 0xf802, 0xf803, 0xf804, 0xf805, 0xf806, 0xf807, /* 0xf800 */
- 0xf808, 0xf809, 0xf80a, 0xf80b, 0xf80c, 0xf80d, 0xf80e, 0xf80f,
- 0xf810, 0xf811, 0xf812, 0xf813, 0xf814, 0xf815, 0xf816, 0xf817,
- 0xf818, 0xf819, 0xf81a, 0xf81b, 0xf81c, 0xf81d, 0xf81e, 0xf81f,
- 0xf820, 0xf821, 0xf822, 0xf823, 0xf824, 0xf825, 0xf826, 0xf827,
- 0xf828, 0xf829, 0xf82a, 0xf82b, 0xf82c, 0xf82d, 0xf82e, 0xf82f,
- 0xf830, 0xf831, 0xf832, 0xf833, 0xf834, 0xf835, 0xf836, 0xf837,
- 0xf838, 0xf839, 0xf83a, 0xf83b, 0xf83c, 0xf83d, 0xf83e, 0xf83f,
- 0xf840, 0xf841, 0xf842, 0xf843, 0xf844, 0xf845, 0xf846, 0xf847, /* 0xf840 */
- 0xf848, 0xf849, 0xf84a, 0xf84b, 0xf84c, 0xf84d, 0xf84e, 0xf84f,
- 0xf850, 0xf851, 0xf852, 0xf853, 0xf854, 0xf855, 0xf856, 0xf857,
- 0xf858, 0xf859, 0xf85a, 0xf85b, 0xf85c, 0xf85d, 0xf85e, 0xf85f,
- 0xf860, 0xf861, 0xf862, 0xf863, 0xf864, 0xf865, 0xf866, 0xf867,
- 0xf868, 0xf869, 0xf86a, 0xf86b, 0xf86c, 0xf86d, 0xf86e, 0xf86f,
- 0xf870, 0xf871, 0xf872, 0xf873, 0xf874, 0xf875, 0xf876, 0xf877,
- 0xf878, 0xf879, 0xf87a, 0xf87b, 0xf87c, 0xf87d, 0xf87e, 0xf87f,
- 0xf880, 0xf881, 0xf882, 0xf883, 0xf884, 0xf885, 0xf886, 0xf887, /* 0xf880 */
- 0xf888, 0xf889, 0xf88a, 0xf88b, 0xf88c, 0xf88d, 0xf88e, 0xf88f,
- 0xf890, 0xf891, 0xf892, 0xf893, 0xf894, 0xf895, 0xf896, 0xf897,
- 0xf898, 0xf899, 0xf89a, 0xf89b, 0xf89c, 0xf89d, 0xf89e, 0xf89f,
- 0xf8a0, 0xf8a1, 0xf8a2, 0xf8a3, 0xf8a4, 0xf8a5, 0xf8a6, 0xf8a7,
- 0xf8a8, 0xf8a9, 0xf8aa, 0xf8ab, 0xf8ac, 0xf8ad, 0xf8ae, 0xf8af,
- 0xf8b0, 0xf8b1, 0xf8b2, 0xf8b3, 0xf8b4, 0xf8b5, 0xf8b6, 0xf8b7,
- 0xf8b8, 0xf8b9, 0xf8ba, 0xf8bb, 0xf8bc, 0xf8bd, 0xf8be, 0xf8bf,
- 0xf8c0, 0xf8c1, 0xf8c2, 0xf8c3, 0xf8c4, 0xf8c5, 0xf8c6, 0xf8c7, /* 0xf8c0 */
- 0xf8c8, 0xf8c9, 0xf8ca, 0xf8cb, 0xf8cc, 0xf8cd, 0xf8ce, 0xf8cf,
- 0xf8d0, 0xf8d1, 0xf8d2, 0xf8d3, 0xf8d4, 0xf8d5, 0xf8d6, 0xf8d7,
- 0xf8d8, 0xf8d9, 0xf8da, 0xf8db, 0xf8dc, 0xf8dd, 0xf8de, 0xf8df,
- 0xf8e0, 0xf8e1, 0xf8e2, 0xf8e3, 0xf8e4, 0xf8e5, 0xf8e6, 0xf8e7,
- 0xf8e8, 0xf8e9, 0xf8ea, 0xf8eb, 0xf8ec, 0xf8ed, 0xf8ee, 0xf8ef,
- 0xf8f0, 0xf8f1, 0xf8f2, 0xf8f3, 0xf8f4, 0xf8f5, 0xf8f6, 0xf8f7,
- 0xf8f8, 0xf8f9, 0xf8fa, 0xf8fb, 0xf8fc, 0xf8fd, 0xf8fe, 0xf8ff,
- 0xf900, 0xf901, 0xf902, 0xf903, 0xf904, 0xf905, 0xf906, 0xf907, /* 0xf900 */
- 0xf908, 0xf909, 0xf90a, 0xf90b, 0xf90c, 0xf90d, 0xf90e, 0xf90f,
- 0xf910, 0xf911, 0xf912, 0xf913, 0xf914, 0xf915, 0xf916, 0xf917,
- 0xf918, 0xf919, 0xf91a, 0xf91b, 0xf91c, 0xf91d, 0xf91e, 0xf91f,
- 0xf920, 0xf921, 0xf922, 0xf923, 0xf924, 0xf925, 0xf926, 0xf927,
- 0xf928, 0xf929, 0xf92a, 0xf92b, 0xf92c, 0xf92d, 0xf92e, 0xf92f,
- 0xf930, 0xf931, 0xf932, 0xf933, 0xf934, 0xf935, 0xf936, 0xf937,
- 0xf938, 0xf939, 0xf93a, 0xf93b, 0xf93c, 0xf93d, 0xf93e, 0xf93f,
- 0xf940, 0xf941, 0xf942, 0xf943, 0xf944, 0xf945, 0xf946, 0xf947, /* 0xf940 */
- 0xf948, 0xf949, 0xf94a, 0xf94b, 0xf94c, 0xf94d, 0xf94e, 0xf94f,
- 0xf950, 0xf951, 0xf952, 0xf953, 0xf954, 0xf955, 0xf956, 0xf957,
- 0xf958, 0xf959, 0xf95a, 0xf95b, 0xf95c, 0xf95d, 0xf95e, 0xf95f,
- 0xf960, 0xf961, 0xf962, 0xf963, 0xf964, 0xf965, 0xf966, 0xf967,
- 0xf968, 0xf969, 0xf96a, 0xf96b, 0xf96c, 0xf96d, 0xf96e, 0xf96f,
- 0xf970, 0xf971, 0xf972, 0xf973, 0xf974, 0xf975, 0xf976, 0xf977,
- 0xf978, 0xf979, 0xf97a, 0xf97b, 0xf97c, 0xf97d, 0xf97e, 0xf97f,
- 0xf980, 0xf981, 0xf982, 0xf983, 0xf984, 0xf985, 0xf986, 0xf987, /* 0xf980 */
- 0xf988, 0xf989, 0xf98a, 0xf98b, 0xf98c, 0xf98d, 0xf98e, 0xf98f,
- 0xf990, 0xf991, 0xf992, 0xf993, 0xf994, 0xf995, 0xf996, 0xf997,
- 0xf998, 0xf999, 0xf99a, 0xf99b, 0xf99c, 0xf99d, 0xf99e, 0xf99f,
- 0xf9a0, 0xf9a1, 0xf9a2, 0xf9a3, 0xf9a4, 0xf9a5, 0xf9a6, 0xf9a7,
- 0xf9a8, 0xf9a9, 0xf9aa, 0xf9ab, 0xf9ac, 0xf9ad, 0xf9ae, 0xf9af,
- 0xf9b0, 0xf9b1, 0xf9b2, 0xf9b3, 0xf9b4, 0xf9b5, 0xf9b6, 0xf9b7,
- 0xf9b8, 0xf9b9, 0xf9ba, 0xf9bb, 0xf9bc, 0xf9bd, 0xf9be, 0xf9bf,
- 0xf9c0, 0xf9c1, 0xf9c2, 0xf9c3, 0xf9c4, 0xf9c5, 0xf9c6, 0xf9c7, /* 0xf9c0 */
- 0xf9c8, 0xf9c9, 0xf9ca, 0xf9cb, 0xf9cc, 0xf9cd, 0xf9ce, 0xf9cf,
- 0xf9d0, 0xf9d1, 0xf9d2, 0xf9d3, 0xf9d4, 0xf9d5, 0xf9d6, 0xf9d7,
- 0xf9d8, 0xf9d9, 0xf9da, 0xf9db, 0xf9dc, 0xf9dd, 0xf9de, 0xf9df,
- 0xf9e0, 0xf9e1, 0xf9e2, 0xf9e3, 0xf9e4, 0xf9e5, 0xf9e6, 0xf9e7,
- 0xf9e8, 0xf9e9, 0xf9ea, 0xf9eb, 0xf9ec, 0xf9ed, 0xf9ee, 0xf9ef,
- 0xf9f0, 0xf9f1, 0xf9f2, 0xf9f3, 0xf9f4, 0xf9f5, 0xf9f6, 0xf9f7,
- 0xf9f8, 0xf9f9, 0xf9fa, 0xf9fb, 0xf9fc, 0xf9fd, 0xf9fe, 0xf9ff,
- 0xfa00, 0xfa01, 0xfa02, 0xfa03, 0xfa04, 0xfa05, 0xfa06, 0xfa07, /* 0xfa00 */
- 0xfa08, 0xfa09, 0xfa0a, 0xfa0b, 0xfa0c, 0xfa0d, 0xfa0e, 0xfa0f,
- 0xfa10, 0xfa11, 0xfa12, 0xfa13, 0xfa14, 0xfa15, 0xfa16, 0xfa17,
- 0xfa18, 0xfa19, 0xfa1a, 0xfa1b, 0xfa1c, 0xfa1d, 0xfa1e, 0xfa1f,
- 0xfa20, 0xfa21, 0xfa22, 0xfa23, 0xfa24, 0xfa25, 0xfa26, 0xfa27,
- 0xfa28, 0xfa29, 0xfa2a, 0xfa2b, 0xfa2c, 0xfa2d, 0xfa2e, 0xfa2f,
- 0xfa30, 0xfa31, 0xfa32, 0xfa33, 0xfa34, 0xfa35, 0xfa36, 0xfa37,
- 0xfa38, 0xfa39, 0xfa3a, 0xfa3b, 0xfa3c, 0xfa3d, 0xfa3e, 0xfa3f,
- 0xfa40, 0xfa41, 0xfa42, 0xfa43, 0xfa44, 0xfa45, 0xfa46, 0xfa47, /* 0xfa40 */
- 0xfa48, 0xfa49, 0xfa4a, 0xfa4b, 0xfa4c, 0xfa4d, 0xfa4e, 0xfa4f,
- 0xfa50, 0xfa51, 0xfa52, 0xfa53, 0xfa54, 0xfa55, 0xfa56, 0xfa57,
- 0xfa58, 0xfa59, 0xfa5a, 0xfa5b, 0xfa5c, 0xfa5d, 0xfa5e, 0xfa5f,
- 0xfa60, 0xfa61, 0xfa62, 0xfa63, 0xfa64, 0xfa65, 0xfa66, 0xfa67,
- 0xfa68, 0xfa69, 0xfa6a, 0xfa6b, 0xfa6c, 0xfa6d, 0x0000, 0x0000,
- 0xfa70, 0xfa71, 0xfa72, 0xfa73, 0xfa74, 0xfa75, 0xfa76, 0xfa77,
- 0xfa78, 0xfa79, 0xfa7a, 0xfa7b, 0xfa7c, 0xfa7d, 0xfa7e, 0xfa7f,
- 0xfa80, 0xfa81, 0xfa82, 0xfa83, 0xfa84, 0xfa85, 0xfa86, 0xfa87, /* 0xfa80 */
- 0xfa88, 0xfa89, 0xfa8a, 0xfa8b, 0xfa8c, 0xfa8d, 0xfa8e, 0xfa8f,
- 0xfa90, 0xfa91, 0xfa92, 0xfa93, 0xfa94, 0xfa95, 0xfa96, 0xfa97,
- 0xfa98, 0xfa99, 0xfa9a, 0xfa9b, 0xfa9c, 0xfa9d, 0xfa9e, 0xfa9f,
- 0xfaa0, 0xfaa1, 0xfaa2, 0xfaa3, 0xfaa4, 0xfaa5, 0xfaa6, 0xfaa7,
- 0xfaa8, 0xfaa9, 0xfaaa, 0xfaab, 0xfaac, 0xfaad, 0xfaae, 0xfaaf,
- 0xfab0, 0xfab1, 0xfab2, 0xfab3, 0xfab4, 0xfab5, 0xfab6, 0xfab7,
- 0xfab8, 0xfab9, 0xfaba, 0xfabb, 0xfabc, 0xfabd, 0xfabe, 0xfabf,
- 0xfac0, 0xfac1, 0xfac2, 0xfac3, 0xfac4, 0xfac5, 0xfac6, 0xfac7, /* 0xfac0 */
- 0xfac8, 0xfac9, 0xfaca, 0xfacb, 0xfacc, 0xfacd, 0xface, 0xfacf,
- 0xfad0, 0xfad1, 0xfad2, 0xfad3, 0xfad4, 0xfad5, 0xfad6, 0xfad7,
- 0xfad8, 0xfad9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xfb00, 0xfb01, 0xfb02, 0xfb03, 0xfb04, 0xfb05, 0xfb06, 0x0000, /* 0xfb00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0xfb13, 0xfb14, 0xfb15, 0xfb16, 0xfb17,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfb1d, 0xfb1e, 0xfb1f,
- 0xfb20, 0xfb21, 0xfb22, 0xfb23, 0xfb24, 0xfb25, 0xfb26, 0xfb27,
- 0xfb28, 0xfb29, 0xfb2a, 0xfb2b, 0xfb2c, 0xfb2d, 0xfb2e, 0xfb2f,
- 0xfb30, 0xfb31, 0xfb32, 0xfb33, 0xfb34, 0xfb35, 0xfb36, 0x0000,
- 0xfb38, 0xfb39, 0xfb3a, 0xfb3b, 0xfb3c, 0x0000, 0xfb3e, 0x0000,
- 0xfb40, 0xfb41, 0x0000, 0xfb43, 0xfb44, 0x0000, 0xfb46, 0xfb47, /* 0xfb40 */
- 0xfb48, 0xfb49, 0xfb4a, 0xfb4b, 0xfb4c, 0xfb4d, 0xfb4e, 0xfb4f,
- 0xfb50, 0xfb51, 0xfb52, 0xfb53, 0xfb54, 0xfb55, 0xfb56, 0xfb57,
- 0xfb58, 0xfb59, 0xfb5a, 0xfb5b, 0xfb5c, 0xfb5d, 0xfb5e, 0xfb5f,
- 0xfb60, 0xfb61, 0xfb62, 0xfb63, 0xfb64, 0xfb65, 0xfb66, 0xfb67,
- 0xfb68, 0xfb69, 0xfb6a, 0xfb6b, 0xfb6c, 0xfb6d, 0xfb6e, 0xfb6f,
- 0xfb70, 0xfb71, 0xfb72, 0xfb73, 0xfb74, 0xfb75, 0xfb76, 0xfb77,
- 0xfb78, 0xfb79, 0xfb7a, 0xfb7b, 0xfb7c, 0xfb7d, 0xfb7e, 0xfb7f,
- 0xfb80, 0xfb81, 0xfb82, 0xfb83, 0xfb84, 0xfb85, 0xfb86, 0xfb87, /* 0xfb80 */
- 0xfb88, 0xfb89, 0xfb8a, 0xfb8b, 0xfb8c, 0xfb8d, 0xfb8e, 0xfb8f,
- 0xfb90, 0xfb91, 0xfb92, 0xfb93, 0xfb94, 0xfb95, 0xfb96, 0xfb97,
- 0xfb98, 0xfb99, 0xfb9a, 0xfb9b, 0xfb9c, 0xfb9d, 0xfb9e, 0xfb9f,
- 0xfba0, 0xfba1, 0xfba2, 0xfba3, 0xfba4, 0xfba5, 0xfba6, 0xfba7,
- 0xfba8, 0xfba9, 0xfbaa, 0xfbab, 0xfbac, 0xfbad, 0xfbae, 0xfbaf,
- 0xfbb0, 0xfbb1, 0xfbb2, 0xfbb3, 0xfbb4, 0xfbb5, 0xfbb6, 0xfbb7,
- 0xfbb8, 0xfbb9, 0xfbba, 0xfbbb, 0xfbbc, 0xfbbd, 0xfbbe, 0xfbbf,
- 0xfbc0, 0xfbc1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfbc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0xfbd3, 0xfbd4, 0xfbd5, 0xfbd6, 0xfbd7,
- 0xfbd8, 0xfbd9, 0xfbda, 0xfbdb, 0xfbdc, 0xfbdd, 0xfbde, 0xfbdf,
- 0xfbe0, 0xfbe1, 0xfbe2, 0xfbe3, 0xfbe4, 0xfbe5, 0xfbe6, 0xfbe7,
- 0xfbe8, 0xfbe9, 0xfbea, 0xfbeb, 0xfbec, 0xfbed, 0xfbee, 0xfbef,
- 0xfbf0, 0xfbf1, 0xfbf2, 0xfbf3, 0xfbf4, 0xfbf5, 0xfbf6, 0xfbf7,
- 0xfbf8, 0xfbf9, 0xfbfa, 0xfbfb, 0xfbfc, 0xfbfd, 0xfbfe, 0xfbff,
- 0xfc00, 0xfc01, 0xfc02, 0xfc03, 0xfc04, 0xfc05, 0xfc06, 0xfc07, /* 0xfc00 */
- 0xfc08, 0xfc09, 0xfc0a, 0xfc0b, 0xfc0c, 0xfc0d, 0xfc0e, 0xfc0f,
- 0xfc10, 0xfc11, 0xfc12, 0xfc13, 0xfc14, 0xfc15, 0xfc16, 0xfc17,
- 0xfc18, 0xfc19, 0xfc1a, 0xfc1b, 0xfc1c, 0xfc1d, 0xfc1e, 0xfc1f,
- 0xfc20, 0xfc21, 0xfc22, 0xfc23, 0xfc24, 0xfc25, 0xfc26, 0xfc27,
- 0xfc28, 0xfc29, 0xfc2a, 0xfc2b, 0xfc2c, 0xfc2d, 0xfc2e, 0xfc2f,
- 0xfc30, 0xfc31, 0xfc32, 0xfc33, 0xfc34, 0xfc35, 0xfc36, 0xfc37,
- 0xfc38, 0xfc39, 0xfc3a, 0xfc3b, 0xfc3c, 0xfc3d, 0xfc3e, 0xfc3f,
- 0xfc40, 0xfc41, 0xfc42, 0xfc43, 0xfc44, 0xfc45, 0xfc46, 0xfc47, /* 0xfc40 */
- 0xfc48, 0xfc49, 0xfc4a, 0xfc4b, 0xfc4c, 0xfc4d, 0xfc4e, 0xfc4f,
- 0xfc50, 0xfc51, 0xfc52, 0xfc53, 0xfc54, 0xfc55, 0xfc56, 0xfc57,
- 0xfc58, 0xfc59, 0xfc5a, 0xfc5b, 0xfc5c, 0xfc5d, 0xfc5e, 0xfc5f,
- 0xfc60, 0xfc61, 0xfc62, 0xfc63, 0xfc64, 0xfc65, 0xfc66, 0xfc67,
- 0xfc68, 0xfc69, 0xfc6a, 0xfc6b, 0xfc6c, 0xfc6d, 0xfc6e, 0xfc6f,
- 0xfc70, 0xfc71, 0xfc72, 0xfc73, 0xfc74, 0xfc75, 0xfc76, 0xfc77,
- 0xfc78, 0xfc79, 0xfc7a, 0xfc7b, 0xfc7c, 0xfc7d, 0xfc7e, 0xfc7f,
- 0xfc80, 0xfc81, 0xfc82, 0xfc83, 0xfc84, 0xfc85, 0xfc86, 0xfc87, /* 0xfc80 */
- 0xfc88, 0xfc89, 0xfc8a, 0xfc8b, 0xfc8c, 0xfc8d, 0xfc8e, 0xfc8f,
- 0xfc90, 0xfc91, 0xfc92, 0xfc93, 0xfc94, 0xfc95, 0xfc96, 0xfc97,
- 0xfc98, 0xfc99, 0xfc9a, 0xfc9b, 0xfc9c, 0xfc9d, 0xfc9e, 0xfc9f,
- 0xfca0, 0xfca1, 0xfca2, 0xfca3, 0xfca4, 0xfca5, 0xfca6, 0xfca7,
- 0xfca8, 0xfca9, 0xfcaa, 0xfcab, 0xfcac, 0xfcad, 0xfcae, 0xfcaf,
- 0xfcb0, 0xfcb1, 0xfcb2, 0xfcb3, 0xfcb4, 0xfcb5, 0xfcb6, 0xfcb7,
- 0xfcb8, 0xfcb9, 0xfcba, 0xfcbb, 0xfcbc, 0xfcbd, 0xfcbe, 0xfcbf,
- 0xfcc0, 0xfcc1, 0xfcc2, 0xfcc3, 0xfcc4, 0xfcc5, 0xfcc6, 0xfcc7, /* 0xfcc0 */
- 0xfcc8, 0xfcc9, 0xfcca, 0xfccb, 0xfccc, 0xfccd, 0xfcce, 0xfccf,
- 0xfcd0, 0xfcd1, 0xfcd2, 0xfcd3, 0xfcd4, 0xfcd5, 0xfcd6, 0xfcd7,
- 0xfcd8, 0xfcd9, 0xfcda, 0xfcdb, 0xfcdc, 0xfcdd, 0xfcde, 0xfcdf,
- 0xfce0, 0xfce1, 0xfce2, 0xfce3, 0xfce4, 0xfce5, 0xfce6, 0xfce7,
- 0xfce8, 0xfce9, 0xfcea, 0xfceb, 0xfcec, 0xfced, 0xfcee, 0xfcef,
- 0xfcf0, 0xfcf1, 0xfcf2, 0xfcf3, 0xfcf4, 0xfcf5, 0xfcf6, 0xfcf7,
- 0xfcf8, 0xfcf9, 0xfcfa, 0xfcfb, 0xfcfc, 0xfcfd, 0xfcfe, 0xfcff,
- 0xfd00, 0xfd01, 0xfd02, 0xfd03, 0xfd04, 0xfd05, 0xfd06, 0xfd07, /* 0xfd00 */
- 0xfd08, 0xfd09, 0xfd0a, 0xfd0b, 0xfd0c, 0xfd0d, 0xfd0e, 0xfd0f,
- 0xfd10, 0xfd11, 0xfd12, 0xfd13, 0xfd14, 0xfd15, 0xfd16, 0xfd17,
- 0xfd18, 0xfd19, 0xfd1a, 0xfd1b, 0xfd1c, 0xfd1d, 0xfd1e, 0xfd1f,
- 0xfd20, 0xfd21, 0xfd22, 0xfd23, 0xfd24, 0xfd25, 0xfd26, 0xfd27,
- 0xfd28, 0xfd29, 0xfd2a, 0xfd2b, 0xfd2c, 0xfd2d, 0xfd2e, 0xfd2f,
- 0xfd30, 0xfd31, 0xfd32, 0xfd33, 0xfd34, 0xfd35, 0xfd36, 0xfd37,
- 0xfd38, 0xfd39, 0xfd3a, 0xfd3b, 0xfd3c, 0xfd3d, 0xfd3e, 0xfd3f,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfd40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xfd50, 0xfd51, 0xfd52, 0xfd53, 0xfd54, 0xfd55, 0xfd56, 0xfd57,
- 0xfd58, 0xfd59, 0xfd5a, 0xfd5b, 0xfd5c, 0xfd5d, 0xfd5e, 0xfd5f,
- 0xfd60, 0xfd61, 0xfd62, 0xfd63, 0xfd64, 0xfd65, 0xfd66, 0xfd67,
- 0xfd68, 0xfd69, 0xfd6a, 0xfd6b, 0xfd6c, 0xfd6d, 0xfd6e, 0xfd6f,
- 0xfd70, 0xfd71, 0xfd72, 0xfd73, 0xfd74, 0xfd75, 0xfd76, 0xfd77,
- 0xfd78, 0xfd79, 0xfd7a, 0xfd7b, 0xfd7c, 0xfd7d, 0xfd7e, 0xfd7f,
- 0xfd80, 0xfd81, 0xfd82, 0xfd83, 0xfd84, 0xfd85, 0xfd86, 0xfd87, /* 0xfd80 */
- 0xfd88, 0xfd89, 0xfd8a, 0xfd8b, 0xfd8c, 0xfd8d, 0xfd8e, 0xfd8f,
- 0x0000, 0x0000, 0xfd92, 0xfd93, 0xfd94, 0xfd95, 0xfd96, 0xfd97,
- 0xfd98, 0xfd99, 0xfd9a, 0xfd9b, 0xfd9c, 0xfd9d, 0xfd9e, 0xfd9f,
- 0xfda0, 0xfda1, 0xfda2, 0xfda3, 0xfda4, 0xfda5, 0xfda6, 0xfda7,
- 0xfda8, 0xfda9, 0xfdaa, 0xfdab, 0xfdac, 0xfdad, 0xfdae, 0xfdaf,
- 0xfdb0, 0xfdb1, 0xfdb2, 0xfdb3, 0xfdb4, 0xfdb5, 0xfdb6, 0xfdb7,
- 0xfdb8, 0xfdb9, 0xfdba, 0xfdbb, 0xfdbc, 0xfdbd, 0xfdbe, 0xfdbf,
- 0xfdc0, 0xfdc1, 0xfdc2, 0xfdc3, 0xfdc4, 0xfdc5, 0xfdc6, 0xfdc7, /* 0xfdc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xfdf0, 0xfdf1, 0xfdf2, 0xfdf3, 0xfdf4, 0xfdf5, 0xfdf6, 0xfdf7,
- 0xfdf8, 0xfdf9, 0xfdfa, 0xfdfb, 0xfdfc, 0xfdfd, 0x0000, 0x0000,
- 0xfe00, 0xfe01, 0xfe02, 0xfe03, 0xfe04, 0xfe05, 0xfe06, 0xfe07, /* 0xfe00 */
- 0xfe08, 0xfe09, 0xfe0a, 0xfe0b, 0xfe0c, 0xfe0d, 0xfe0e, 0xfe0f,
- 0xfe10, 0xfe11, 0xfe12, 0xfe13, 0xfe14, 0xfe15, 0xfe16, 0xfe17,
- 0xfe18, 0xfe19, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xfe20, 0xfe21, 0xfe22, 0xfe23, 0xfe24, 0xfe25, 0xfe26, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xfe30, 0xfe31, 0xfe32, 0xfe33, 0xfe34, 0xfe35, 0xfe36, 0xfe37,
- 0xfe38, 0xfe39, 0xfe3a, 0xfe3b, 0xfe3c, 0xfe3d, 0xfe3e, 0xfe3f,
- 0xfe40, 0xfe41, 0xfe42, 0xfe43, 0xfe44, 0xfe45, 0xfe46, 0xfe47, /* 0xfe40 */
- 0xfe48, 0xfe49, 0xfe4a, 0xfe4b, 0xfe4c, 0xfe4d, 0xfe4e, 0xfe4f,
- 0xfe50, 0xfe51, 0xfe52, 0x0000, 0xfe54, 0xfe55, 0xfe56, 0xfe57,
- 0xfe58, 0xfe59, 0xfe5a, 0xfe5b, 0xfe5c, 0xfe5d, 0xfe5e, 0xfe5f,
- 0xfe60, 0xfe61, 0xfe62, 0xfe63, 0xfe64, 0xfe65, 0xfe66, 0x0000,
- 0xfe68, 0xfe69, 0xfe6a, 0xfe6b, 0x0000, 0x0000, 0x0000, 0x0000,
- 0xfe70, 0xfe71, 0xfe72, 0xfe73, 0xfe74, 0x0000, 0xfe76, 0xfe77,
- 0xfe78, 0xfe79, 0xfe7a, 0xfe7b, 0xfe7c, 0xfe7d, 0xfe7e, 0xfe7f,
- 0xfe80, 0xfe81, 0xfe82, 0xfe83, 0xfe84, 0xfe85, 0xfe86, 0xfe87, /* 0xfe80 */
- 0xfe88, 0xfe89, 0xfe8a, 0xfe8b, 0xfe8c, 0xfe8d, 0xfe8e, 0xfe8f,
- 0xfe90, 0xfe91, 0xfe92, 0xfe93, 0xfe94, 0xfe95, 0xfe96, 0xfe97,
- 0xfe98, 0xfe99, 0xfe9a, 0xfe9b, 0xfe9c, 0xfe9d, 0xfe9e, 0xfe9f,
- 0xfea0, 0xfea1, 0xfea2, 0xfea3, 0xfea4, 0xfea5, 0xfea6, 0xfea7,
- 0xfea8, 0xfea9, 0xfeaa, 0xfeab, 0xfeac, 0xfead, 0xfeae, 0xfeaf,
- 0xfeb0, 0xfeb1, 0xfeb2, 0xfeb3, 0xfeb4, 0xfeb5, 0xfeb6, 0xfeb7,
- 0xfeb8, 0xfeb9, 0xfeba, 0xfebb, 0xfebc, 0xfebd, 0xfebe, 0xfebf,
- 0xfec0, 0xfec1, 0xfec2, 0xfec3, 0xfec4, 0xfec5, 0xfec6, 0xfec7, /* 0xfec0 */
- 0xfec8, 0xfec9, 0xfeca, 0xfecb, 0xfecc, 0xfecd, 0xfece, 0xfecf,
- 0xfed0, 0xfed1, 0xfed2, 0xfed3, 0xfed4, 0xfed5, 0xfed6, 0xfed7,
- 0xfed8, 0xfed9, 0xfeda, 0xfedb, 0xfedc, 0xfedd, 0xfede, 0xfedf,
- 0xfee0, 0xfee1, 0xfee2, 0xfee3, 0xfee4, 0xfee5, 0xfee6, 0xfee7,
- 0xfee8, 0xfee9, 0xfeea, 0xfeeb, 0xfeec, 0xfeed, 0xfeee, 0xfeef,
- 0xfef0, 0xfef1, 0xfef2, 0xfef3, 0xfef4, 0xfef5, 0xfef6, 0xfef7,
- 0xfef8, 0xfef9, 0xfefa, 0xfefb, 0xfefc, 0x0000, 0x0000, 0xfeff,
- 0x0000, 0xff01, 0xff02, 0xff03, 0xff04, 0xff05, 0xff06, 0xff07, /* 0xff00 */
- 0xff08, 0xff09, 0xff0a, 0xff0b, 0xff0c, 0xff0d, 0xff0e, 0xff0f,
- 0xff10, 0xff11, 0xff12, 0xff13, 0xff14, 0xff15, 0xff16, 0xff17,
- 0xff18, 0xff19, 0xff1a, 0xff1b, 0xff1c, 0xff1d, 0xff1e, 0xff1f,
- 0xff20, 0xff41, 0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47,
- 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f,
- 0xff50, 0xff51, 0xff52, 0xff53, 0xff54, 0xff55, 0xff56, 0xff57,
- 0xff58, 0xff59, 0xff5a, 0xff3b, 0xff3c, 0xff3d, 0xff3e, 0xff3f,
- 0xff40, 0xff41, 0xff42, 0xff43, 0xff44, 0xff45, 0xff46, 0xff47, /* 0xff40 */
- 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f,
- 0xff50, 0xff51, 0xff52, 0xff53, 0xff54, 0xff55, 0xff56, 0xff57,
- 0xff58, 0xff59, 0xff5a, 0xff5b, 0xff5c, 0xff5d, 0xff5e, 0xff5f,
- 0xff60, 0xff61, 0xff62, 0xff63, 0xff64, 0xff65, 0xff66, 0xff67,
- 0xff68, 0xff69, 0xff6a, 0xff6b, 0xff6c, 0xff6d, 0xff6e, 0xff6f,
- 0xff70, 0xff71, 0xff72, 0xff73, 0xff74, 0xff75, 0xff76, 0xff77,
- 0xff78, 0xff79, 0xff7a, 0xff7b, 0xff7c, 0xff7d, 0xff7e, 0xff7f,
- 0xff80, 0xff81, 0xff82, 0xff83, 0xff84, 0xff85, 0xff86, 0xff87, /* 0xff80 */
- 0xff88, 0xff89, 0xff8a, 0xff8b, 0xff8c, 0xff8d, 0xff8e, 0xff8f,
- 0xff90, 0xff91, 0xff92, 0xff93, 0xff94, 0xff95, 0xff96, 0xff97,
- 0xff98, 0xff99, 0xff9a, 0xff9b, 0xff9c, 0xff9d, 0xff9e, 0xff9f,
- 0xffa0, 0xffa1, 0xffa2, 0xffa3, 0xffa4, 0xffa5, 0xffa6, 0xffa7,
- 0xffa8, 0xffa9, 0xffaa, 0xffab, 0xffac, 0xffad, 0xffae, 0xffaf,
- 0xffb0, 0xffb1, 0xffb2, 0xffb3, 0xffb4, 0xffb5, 0xffb6, 0xffb7,
- 0xffb8, 0xffb9, 0xffba, 0xffbb, 0xffbc, 0xffbd, 0xffbe, 0x0000,
- 0x0000, 0x0000, 0xffc2, 0xffc3, 0xffc4, 0xffc5, 0xffc6, 0xffc7, /* 0xffc0 */
- 0x0000, 0x0000, 0xffca, 0xffcb, 0xffcc, 0xffcd, 0xffce, 0xffcf,
- 0x0000, 0x0000, 0xffd2, 0xffd3, 0xffd4, 0xffd5, 0xffd6, 0xffd7,
- 0x0000, 0x0000, 0xffda, 0xffdb, 0xffdc, 0x0000, 0x0000, 0x0000,
- 0xffe0, 0xffe1, 0xffe2, 0xffe3, 0xffe4, 0xffe5, 0xffe6, 0x0000,
- 0xffe8, 0xffe9, 0xffea, 0xffeb, 0xffec, 0xffed, 0xffee, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0xfff9, 0xfffa, 0xfffb, 0xfffc, 0xfffd, 0x0000, 0x0000
-};
-
-const unsigned short ____tomirror[] = { 0,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0029, 0x0028, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x003e, 0x0000, 0x003c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x005d, 0x0000, 0x005b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x007d, 0x0000, 0x007b, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x00bb, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x00ab, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x00c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x01c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x02c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x03c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x04c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x05c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x06c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x07c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x08c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x09c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0a00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0a40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0a80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0b00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0b40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0c00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0c40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0d00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0d40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0d80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0dc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0e00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0e80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0ec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0f00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0f40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0f80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x0fc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x10c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x11c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x12c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x13c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x14c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x15c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x16c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x17c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x18c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x19c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1a00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1a40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1a80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1b00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1b40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1c00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1c40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1d00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1d40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1d80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1dc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1e00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1e80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1ec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1f00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1f40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1f80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x1fc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x203a, 0x2039, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2046, 0x2045, 0x0000, /* 0x2040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x207e, 0x207d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x208e, 0x208d, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x20c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x21c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x22c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2300 */
- 0x2309, 0x2308, 0x230b, 0x230a, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x232a, 0x2329, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x23c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x24c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x25c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x26c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x27c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x28c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x29c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2a00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2a40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2a80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2b00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2b40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2c00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2c40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2d00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2d40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2d80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2dc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2e00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2e80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2ec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2f00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2f40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2f80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x2fc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3000 */
- 0x3009, 0x3008, 0x300b, 0x300a, 0x300d, 0x300c, 0x300f, 0x300e,
- 0x3011, 0x3010, 0x0000, 0x0000, 0x3015, 0x3014, 0x3017, 0x3016,
- 0x3019, 0x3018, 0x301b, 0x301a, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x30c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x31c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x32c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x33c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x34c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x35c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x36c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x37c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x38c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x39c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3a00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3a40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3a80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3b00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3b40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3c00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3c40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3d00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3d40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3d80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3dc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3e00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3e80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3ec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3f00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3f40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3f80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x3fc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x40c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x41c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x42c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x43c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x44c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x45c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x46c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x47c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x48c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x49c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4a00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4a40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4a80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4b00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4b40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4c00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4c40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4d00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4d40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4d80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4dc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4e00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4e80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4ec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4f00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4f40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4f80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x4fc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x50c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x51c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x52c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x53c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x54c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x55c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x56c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x57c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x58c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x59c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5a00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5a40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5a80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5b00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5b40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5c00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5c40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5d00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5d40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5d80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5dc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5e00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5e80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5ec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5f00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5f40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5f80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x5fc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x60c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x61c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x62c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x63c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x64c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x65c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x66c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x67c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x68c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x69c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6a00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6a40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6a80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6b00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6b40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6c00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6c40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6d00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6d40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6d80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6dc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6e00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6e80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6ec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6f00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6f40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6f80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x6fc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x70c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x71c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x72c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x73c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x74c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x75c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x76c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x77c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x78c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x79c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7a00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7a40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7a80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7b00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7b40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7c00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7c40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7d00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7d40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7d80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7dc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7e00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7e80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7ec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7f00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7f40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7f80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x7fc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x80c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x81c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x82c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x83c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x84c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x85c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x86c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x87c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x88c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x89c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8a00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8a40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8a80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8b00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8b40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8c00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8c40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8d00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8d40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8d80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8dc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8e00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8e80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8ec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8f00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8f40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8f80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x8fc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x90c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x91c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x92c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x93c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x94c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x95c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x96c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x97c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x98c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x99c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9a00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9a40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9a80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9ac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9b00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9b40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9b80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9bc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9c00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9c40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9c80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9cc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9d00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9d40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9d80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9dc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9e00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9e40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9e80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9ec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9f00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9f40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9f80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0x9fc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa0c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa1c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa2c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa3c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa4c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa5c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa6c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa7c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa8c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xa9c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xaa00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xaa40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xaa80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xaac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xab00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xab40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xab80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xabc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xac00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xac40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xac80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xacc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xad00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xad40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xad80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xadc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xae00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xae40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xae80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xaec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xaf00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xaf40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xaf80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xafc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb0c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb1c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb2c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb3c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb4c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb5c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb6c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb7c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb8c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xb9c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xba00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xba40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xba80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbb00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbb40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbb80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbbc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbc00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbc40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbc80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbcc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbd00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbd40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbd80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbdc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbe00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbe40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbe80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbf00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbf40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbf80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xbfc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc0c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc1c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc2c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc3c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc4c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc5c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc6c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc7c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc8c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xc9c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xca00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xca40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xca80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcb00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcb40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcb80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcbc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcc00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcc40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcc80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xccc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcd00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcd40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcd80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcdc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xce00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xce40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xce80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcf00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcf40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcf80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xcfc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd0c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd1c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd2c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd3c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd4c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd5c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd6c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd7c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd8c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xd9c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xda00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xda40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xda80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdb00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdb40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdb80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdbc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdc00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdc40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdc80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdcc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdd00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdd40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdd80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xddc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xde00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xde40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xde80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdf00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdf40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdf80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xdfc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe0c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe1c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe2c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe3c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe4c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe5c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe6c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe7c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe8c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xe9c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xea00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xea40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xea80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xeac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xeb00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xeb40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xeb80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xebc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xec00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xec40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xec80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xecc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xed00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xed40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xed80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xedc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xee00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xee40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xee80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xeec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xef00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xef40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xef80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xefc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf000 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf040 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf080 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf0c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf100 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf140 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf180 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf1c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf200 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf240 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf280 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf2c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf300 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf340 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf380 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf3c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf400 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf440 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf480 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf4c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf500 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf540 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf580 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf5c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf600 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf640 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf680 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf6c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf700 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf740 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf780 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf7c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf800 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf840 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf880 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf8c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf900 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf940 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf980 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xf9c0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfa00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfa40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfa80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfac0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfb00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfb40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfb80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfbc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfc00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfc40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfc80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfcc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfd00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfd40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfd80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfdc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfe00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfe40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfe80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xfec0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xff00 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xff40 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xff80 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, /* 0xffc0 */
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
-};
-
-const uint32 ____utype[] = { 0,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, /* 0x0000 */
- 0x00080000, 0x00020010, 0x00000010, 0x00000010, 0x00000010, 0x00000010, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00020010, 0x00000020, 0x00000000, 0x00004000, 0x00004000, 0x00004000, 0x00000000, 0x00000000,
- 0x00080000, 0x00000000, 0x00000000, 0x00001000, 0x00002020, 0x00021000, 0x00002020, 0x00102000,
- 0x00000448, 0x00000448, 0x00000448, 0x00000448, 0x00000448, 0x00000448, 0x00000448, 0x00000448,
- 0x00000448, 0x00000448, 0x00002020, 0x00000020, 0x00000000, 0x00000000, 0x00000000, 0x00000020,
- 0x00000000, 0x00200142, 0x00200142, 0x00200142, 0x00200142, 0x00200142, 0x00200142, 0x00200102, /* 0x0040 */
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00200141, 0x00200141, 0x00200141, 0x00200141, 0x00200141, 0x00200141, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00080000, 0x00020000, 0x00040000, 0x00000000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00000010, 0x00080000, 0x00080000, /* 0x0080 */
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x180c2010, 0x00080000, 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00000000, 0x00000000,
- 0x10000000, 0x00000000, 0x10200100, 0x00000000, 0x00000000, 0x00020000, 0x00000000, 0x10000000,
- 0x00004000, 0x00004000, 0x10000400, 0x10000400, 0x10010000, 0x10200101, 0x00000000, 0x00000000,
- 0x10000000, 0x10000400, 0x10200100, 0x00000000, 0x10000000, 0x10000000, 0x10000000, 0x00080000,
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x00200102, 0x10200102, /* 0x00c0 */
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102,
- 0x00200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x00000000,
- 0x00200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x00200102, 0x00200101,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00200101, 0x10200101,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x00200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00000000,
- 0x00200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00200101, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, /* 0x0100 */
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x00200102, 0x00200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x00200102, 0x00200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x00200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x00200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102,
- 0x10200101, 0x00200102, 0x00200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, /* 0x0140 */
- 0x10200101, 0x10200101, 0x00200102, 0x00200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x00200102, 0x00200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x00200102, 0x00200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200101,
- 0x00200101, 0x00200102, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200102, /* 0x0180 */
- 0x00200101, 0x00200102, 0x00200102, 0x00200102, 0x00200101, 0x00200101, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200101, 0x00200102, 0x00200102, 0x00200101, 0x00200102, 0x00200102,
- 0x00200102, 0x00200101, 0x00200101, 0x00200101, 0x00200102, 0x00200102, 0x00200101, 0x00200102,
- 0x10200102, 0x10200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200102,
- 0x00200101, 0x00200102, 0x00200101, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x10200102,
- 0x10200101, 0x00200102, 0x00200102, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102,
- 0x00200102, 0x00200101, 0x00200101, 0x00200100, 0x00200102, 0x00200101, 0x00200101, 0x00200101,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x10200102, 0x10200104, 0x10200101, 0x10200102, /* 0x01c0 */
- 0x10200104, 0x10200101, 0x10200102, 0x10200104, 0x10200101, 0x10200102, 0x10200101, 0x10200102,
- 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102,
- 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x00200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x00200102, 0x00200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200101, 0x10200102, 0x10200104, 0x10200101, 0x10200102, 0x10200101, 0x00200102, 0x00200102,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, /* 0x0200 */
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x00200102, 0x00200101, 0x10200102, 0x10200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200102, 0x00200102, 0x00200101, 0x00200102, 0x00200102, 0x00200101,
- 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200101, /* 0x0240 */
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, /* 0x0280 */
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200100, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x00000000, 0x00000000, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x02c0 */
- 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000100, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x00000000, 0x00010000,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, /* 0x0300 */
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x10088000, 0x10088000, 0x00088000, 0x10088000, 0x10088000, 0x00288000, 0x00088000, 0x00088000, /* 0x0340 */
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x000c8000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x000c0000, 0x000c8000, 0x000c8000, 0x000c8000,
- 0x000c8000, 0x000c8000, 0x000c8000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x10000000, 0x00000000, 0x00200102, 0x00200101,
- 0x00000000, 0x00000000, 0x10000100, 0x00200101, 0x00200101, 0x00200101, 0x10000020, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x10200102, 0x10000020, /* 0x0380 */
- 0x10200102, 0x10200102, 0x10200102, 0x00000000, 0x10200102, 0x00000000, 0x10200102, 0x10200102,
- 0x10200101, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00000000, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x10200102, 0x10200102, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x10200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, /* 0x03c0 */
- 0x00200101, 0x00200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00200102,
- 0x10200101, 0x10200101, 0x10200102, 0x10200102, 0x10200102, 0x10200101, 0x10200101, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x10200101, 0x10200101, 0x10200101, 0x00200101, 0x10200102, 0x10200101, 0x00000000, 0x00200102,
- 0x00200101, 0x10200102, 0x00200102, 0x00200101, 0x00200101, 0x00200102, 0x00200102, 0x00200102,
- 0x10200102, 0x10200102, 0x00200102, 0x10200102, 0x00200102, 0x00200102, 0x00200102, 0x10200102, /* 0x0400 */
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x10200102, 0x10200102, 0x10200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x10200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x10200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, /* 0x0440 */
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x10200101, 0x10200101, 0x00200101, 0x10200101, 0x00200101, 0x00200101, 0x00200101, 0x10200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x10200101, 0x10200101, 0x10200101, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x10200102, 0x10200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00000100, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, /* 0x0480 */
- 0x00080000, 0x00080000, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x10200102, 0x10200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, /* 0x04c0 */
- 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x00200102, 0x00200101, 0x10200102, 0x10200101,
- 0x00200102, 0x00200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x00200102, 0x00200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x00200102, 0x00200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x00200102, 0x00200101,
- 0x10200102, 0x10200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, /* 0x0500 */
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, /* 0x0540 */
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00000000,
- 0x00000000, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000000, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x10200101, /* 0x0580 */
- 0x00000000, 0x00000120, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00004000,
- 0x00000000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00020200, 0x00280000,
- 0x00000200, 0x00280000, 0x00280000, 0x00000220, 0x00280000, 0x00280000, 0x00000200, 0x00280000, /* 0x05c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200200, 0x00200200, 0x00200200, 0x00000200, 0x00000200, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000800, 0x00000800, 0x00000800, 0x00000800, 0x00000800, 0x00000000, 0x00000000, 0x00000000, /* 0x0600 */
- 0x00000200, 0x00004000, 0x00004000, 0x00000200, 0x00002020, 0x00000200, 0x00000000, 0x00000000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00000220, 0x00080200, 0x00000000, 0x00000200, 0x00000220,
- 0x00200200, 0x00200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00000200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, /* 0x0640 */
- 0x00200200, 0x00200200, 0x00200200, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00080000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00000808, 0x00000808, 0x00000808, 0x00000808, 0x00000808, 0x00000808, 0x00000808, 0x00000808,
- 0x00000808, 0x00000808, 0x00004000, 0x00000800, 0x00000800, 0x00000200, 0x00200200, 0x00200200,
- 0x00280000, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x10200200, 0x10200200, 0x10200200,
- 0x10200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, /* 0x0680 */
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x10200200, 0x00200200, 0x10200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, /* 0x06c0 */
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x10200200, 0x00000220, 0x00200200, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00000800, 0x00000000, 0x00080000,
- 0x00080000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00000200, 0x00000200, 0x00280000,
- 0x00280000, 0x00000000, 0x00080000, 0x00080000, 0x00080000, 0x00280000, 0x00200200, 0x00200200,
- 0x00000408, 0x00000408, 0x00000408, 0x00000408, 0x00000408, 0x00000408, 0x00000408, 0x00000408,
- 0x00000408, 0x00000408, 0x00200200, 0x00200200, 0x00200200, 0x00000200, 0x00000200, 0x00200200,
- 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220, /* 0x0700 */
- 0x00000220, 0x00000220, 0x00000220, 0x00000200, 0x00000220, 0x00000200, 0x00000000, 0x00000200,
- 0x00200200, 0x00280000, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, /* 0x0740 */
- 0x00080000, 0x00080000, 0x00080000, 0x00000000, 0x00000000, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, /* 0x0780 */
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00200200, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000208, 0x00000208, 0x00000208, 0x00000208, 0x00000208, 0x00000208, 0x00000208, 0x00000208, /* 0x07c0 */
- 0x00000208, 0x00000208, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00000200, 0x00000200, 0x00000000, 0x00000000,
- 0x00000020, 0x00000020, 0x00000200, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, /* 0x0800 */
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00280000, 0x00280000,
- 0x00080000, 0x00080000, 0x00000200, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00000200, 0x00280000, 0x00280000, 0x00280000,
- 0x00000200, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00080000, 0x00000000, 0x00000000,
- 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220,
- 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000220, 0x00000000,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, /* 0x0840 */
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00080000, 0x00080000, 0x00080000, 0x00000000, 0x00000000, 0x00000220, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x0880 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200200, 0x00000000, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200,
- 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00200200, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x08c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00000000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x0900 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x10200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x10200100, 0x00200100, 0x00200100, 0x10200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00280000, 0x00280100, 0x00080000, 0x00200100, 0x00280100, 0x00280100,
- 0x00280100, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, /* 0x0940 */
- 0x00280000, 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00080000, 0x00280100, 0x00280100,
- 0x00200100, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00280000, 0x00280000, 0x00280000,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00020120, 0x00020120, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000100, 0x00000100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000000, 0x00280000, 0x00280100, 0x00280100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, /* 0x0980 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00200100,
- 0x00200100, 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00080000, 0x00200100, 0x00280100, 0x00280100,
- 0x00280100, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00280100, /* 0x09c0 */
- 0x00280100, 0x00000000, 0x00000000, 0x10280100, 0x10280100, 0x00080000, 0x00200100, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10200100, 0x10200100, 0x00000000, 0x10200100,
- 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00200100, 0x00200100, 0x00004000, 0x00004000, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00280000, 0x00280000, 0x00280100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, /* 0x0a00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00200100,
- 0x00200100, 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x10200100, 0x00000000, 0x00200100, 0x10200100, 0x00000000,
- 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00080000, 0x00000000, 0x00280100, 0x00280100,
- 0x00280100, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280000, /* 0x0a40 */
- 0x00280000, 0x00000000, 0x00000000, 0x00280000, 0x00280000, 0x00080000, 0x00000000, 0x00000000,
- 0x00000000, 0x00280000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x10200100, 0x10200100, 0x10200100, 0x00200100, 0x00000000, 0x10200100, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00280000, 0x00280000, 0x00200100, 0x00200100, 0x00200100, 0x00280000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00280000, 0x00280000, 0x00280100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, /* 0x0a80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00200100,
- 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00080000, 0x00200100, 0x00280100, 0x00280100,
- 0x00280100, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00000000, 0x00280000, /* 0x0ac0 */
- 0x00280000, 0x00280100, 0x00000000, 0x00280100, 0x00280100, 0x00080000, 0x00000000, 0x00000000,
- 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000100, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00280000, 0x00280100, 0x00280100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, /* 0x0b00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00200100,
- 0x00200100, 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00080000, 0x00200100, 0x00280100, 0x00280000,
- 0x00280100, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00280100, /* 0x0b40 */
- 0x10280100, 0x00000000, 0x00000000, 0x10280100, 0x10280100, 0x00080000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280000, 0x00280100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10200100, 0x10200100, 0x00000000, 0x00200100,
- 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000100, 0x00200100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00280000, 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, /* 0x0b80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x10200100, 0x00200100, 0x00000000, 0x00000000,
- 0x00000000, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00000000, 0x00200100, 0x00200100,
- 0x00000000, 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280100, 0x00280100,
- 0x00280000, 0x00280100, 0x00280100, 0x00000000, 0x00000000, 0x00000000, 0x00280100, 0x00280100, /* 0x0bc0 */
- 0x00280100, 0x00000000, 0x10280100, 0x10280100, 0x10280100, 0x00080000, 0x00000000, 0x00000000,
- 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000100, 0x00000100, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00280100, 0x00280100, 0x00280100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, /* 0x0c00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00200100, 0x00280000, 0x00280000,
- 0x00280000, 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00000000, 0x00280000, 0x00280000, /* 0x0c40 */
- 0x10280000, 0x00000000, 0x00280000, 0x00280000, 0x00280000, 0x00080000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280000, 0x00280000, 0x00000000,
- 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100,
- 0x00000000, 0x00000000, 0x00280100, 0x00280100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, /* 0x0c80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00080000, 0x00200100, 0x00280100, 0x00280100,
- 0x10280100, 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00000000, 0x00280100, 0x10280100, /* 0x0cc0 */
- 0x10280100, 0x00000000, 0x10280100, 0x10280100, 0x00280000, 0x00080000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280100, 0x00280100, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00200100, 0x00000000,
- 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000000, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00280100, 0x00280100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, /* 0x0d00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00200100, 0x00280100, 0x00280100,
- 0x00280100, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00000000, 0x00280100, 0x00280100, /* 0x0d40 */
- 0x00280100, 0x00000000, 0x10280100, 0x10280100, 0x10280100, 0x00080000, 0x00200100, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000000, 0x00000000,
- 0x00000000, 0x00000100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000000, 0x00000000, 0x00280100, 0x00280100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, /* 0x0d80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, /* 0x0dc0 */
- 0x00000000, 0x00000000, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280100,
- 0x00280100, 0x00280100, 0x00280000, 0x00280000, 0x00280000, 0x00000000, 0x00280000, 0x00000000,
- 0x00280100, 0x00280100, 0x10280100, 0x00280100, 0x10280100, 0x10280100, 0x10280100, 0x00280100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00280100, 0x00280100, 0x00000100, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x0e00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200000, 0x00200100, 0x10200100, 0x00200000, 0x00200000, 0x00200000, 0x00200000,
- 0x00200000, 0x00200000, 0x00200000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00004000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000100, 0x00000000, /* 0x0e40 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00200000, 0x00000000, 0x00000100,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00020120, 0x00020120, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00000000, 0x00000000, 0x00200100, /* 0x0e80 */
- 0x00200100, 0x00000000, 0x00200100, 0x00000000, 0x00000000, 0x00200100, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00000000, 0x00200100,
- 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200000, 0x00200100, 0x10200100, 0x00200000, 0x00200000, 0x00200000, 0x00200000,
- 0x00200000, 0x00200000, 0x00000000, 0x00200000, 0x00200000, 0x00200100, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000100, 0x00000000, /* 0x0ec0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00200000, 0x00000000, 0x00000000,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000000, 0x00000000, 0x10200100, 0x10200100, 0x00200100, 0x00200100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00010100, 0x00010100, 0x00010100, 0x00010100, 0x00000100, 0x00010100, 0x00010100, /* 0x0f00 */
- 0x000c0120, 0x00010100, 0x00010100, 0x00020100, 0x100c0100, 0x00000120, 0x00000120, 0x00000120,
- 0x00000120, 0x00000120, 0x000c0120, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00080000, 0x00080000, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00020100, 0x00080000, 0x00000100, 0x00080000,
- 0x00000100, 0x00080000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080100, 0x00080100,
- 0x00200100, 0x00200100, 0x00200100, 0x10200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x0f40 */
- 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x10200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x10200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x10200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x10200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x10200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00280000, 0x00280000, 0x10280000, 0x00280000, 0x10280000, 0x10280000, 0x10280000,
- 0x10280000, 0x10280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00220100,
- 0x00280000, 0x10280000, 0x00080000, 0x00080000, 0x00080000, 0x00020100, 0x00080000, 0x00080000, /* 0x0f80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x10280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00000000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x10280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x10280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x10280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x10280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x10280000, 0x00280000, 0x00280000, 0x00280000, 0x00000000, 0x00020100, 0x00020100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00080000, 0x00000100, /* 0x0fc0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000000, 0x00000100, 0x00000100,
- 0x00010100, 0x00010100, 0x00020100, 0x00010100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x000c0100, 0x000c0100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1000 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x10200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200000, 0x00200000, 0x00200000,
- 0x00200000, 0x00200100, 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00000000,
- 0x00200100, 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00200000, 0x00200000, 0x00200100,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, /* 0x1040 */
- 0x00000108, 0x00000108, 0x00020120, 0x00020120, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200000, 0x00200000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200000, 0x00200000,
- 0x00200000, 0x00200100, 0x00200100, 0x00000100, 0x00000100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200000, 0x00200100, 0x00200100, 0x00200000, 0x00200000, 0x00000100, /* 0x1080 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000000, 0x00200100, 0x00000100,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000100, 0x00000100, 0x00200100, 0x00200000, 0x00000100, 0x00000100,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00000000, 0x00200102, /* 0x10c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00200102, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00000100, 0x10000100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1100 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1140 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1180 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x11c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1200 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1240 */
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1280 */
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, /* 0x12c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1300 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1340 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00080000, 0x00080000, 0x00280000,
- 0x00000100, 0x00020120, 0x00000120, 0x00000120, 0x00000120, 0x00000120, 0x00000120, 0x00000120,
- 0x00000120, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1380 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x13c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00020000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1400 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1440 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1480 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x14c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1500 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1540 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1580 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x15c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1600 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1640 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000120, 0x00000120, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00020010, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1680 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00080000, 0x00040000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x16c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00020120, 0x00020120, 0x00020120, 0x00000100, 0x00000100,
- 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1700 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00080000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00080000, 0x00020100, 0x00020100, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1740 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00200100, 0x00200100,
- 0x00200100, 0x00000000, 0x00280000, 0x00280000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1780 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00200100, 0x00200000,
- 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200000, 0x00200100, /* 0x17c0 */
- 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00020120, 0x00020120, 0x00040120, 0x00000100,
- 0x00020100, 0x00000100, 0x00020120, 0x00004000, 0x00200100, 0x00000000, 0x00000000, 0x00000000,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000020, 0x00000020, 0x00020020, 0x00020020, 0x00010000, 0x00000000, /* 0x1800 */
- 0x00000020, 0x00000020, 0x00000000, 0x00080000, 0x00080000, 0x00080000, 0x000c0000, 0x00000000,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00000100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1840 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1880 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00280000, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x18c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1900 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00280000,
- 0x00280000, 0x00280100, 0x00280100, 0x00280100, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00280100, 0x00280100, 0x00280000, 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00280100,
- 0x00280100, 0x00080000, 0x00080000, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000020, 0x00000020, 0x00000108, 0x00000108, /* 0x1940 */
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1980 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x19c0 */
- 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1a00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00280000,
- 0x00280000, 0x00280100, 0x00280100, 0x00280000, 0x00000000, 0x00000000, 0x00000100, 0x00000100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1a40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200000, 0x00200100,
- 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00000000,
- 0x00000000, 0x00200100, 0x00200000, 0x00200100, 0x00200100, 0x00200000, 0x00200000, 0x00200000,
- 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00200000, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200000, 0x00200000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00088000,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, /* 0x1a80 */
- 0x00000108, 0x00000108, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000120, 0x00000120, 0x00000120, 0x00000120, 0x00000100, 0x00000100, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x1ac0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280100, 0x00200100, 0x10200100, 0x00200100, /* 0x1b00 */
- 0x10200100, 0x00200100, 0x10200100, 0x00200100, 0x10200100, 0x00200100, 0x10200100, 0x00200100,
- 0x00200100, 0x00200100, 0x10200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00080000, 0x00280100, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x10280100, 0x00280000, 0x10280100, 0x00280100, 0x00280100,
- 0x10280100, 0x10280100, 0x00280000, 0x10280100, 0x00080100, 0x00200100, 0x00200100, 0x00200100, /* 0x1b40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00020120, 0x00020120, 0x00000100, 0x00020120, 0x00020120, 0x00020120,
- 0x00020100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000000, 0x00000000, 0x00000000,
- 0x00280000, 0x00280000, 0x00280100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1b80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00280100, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280100, 0x00280100,
- 0x00280000, 0x00280000, 0x00080100, 0x00080000, 0x00280100, 0x00280100, 0x00200100, 0x00200100,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1bc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00080000, 0x00280100,
- 0x00280000, 0x00280000, 0x00280100, 0x00280100, 0x00280100, 0x00280000, 0x00280100, 0x00280000,
- 0x00280000, 0x00280000, 0x00080100, 0x00080100, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x1c00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00280100, 0x00280100, 0x00280100, 0x00280100,
- 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280100, 0x00280100, 0x00080000, 0x00080000,
- 0x00000000, 0x00000000, 0x00000000, 0x00020120, 0x00020120, 0x00020120, 0x00020120, 0x00020120,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, /* 0x1c40 */
- 0x00000108, 0x00000108, 0x00000000, 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00200100,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00020120, 0x00020120,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x1c80 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0x1cc0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00080000, 0x00080000, 0x00080000, 0x00000100, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080100, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00080000, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00280100, 0x00280100, 0x00080000, 0x00200100, 0x00200100, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, /* 0x1d00 */
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x10000100, 0x10000100, 0x10000100, 0x00000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x00000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, /* 0x1d40 */
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x00000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x10000100, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, /* 0x1d80 */
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, /* 0x1dc0 */
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080000, 0x00088000, 0x00088000, 0x00088000,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, /* 0x1e00 */
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, /* 0x1e40 */
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, /* 0x1e80 */
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200101, 0x10200101,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00200101, 0x00200101, 0x00200102, 0x00200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, /* 0x1ec0 */
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101, 0x10200102, 0x10200101,
- 0x10200102, 0x10200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, /* 0x1f00 */
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00000000, 0x00000000,
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x00000000, 0x00000000,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00000000, 0x00000000, /* 0x1f40 */
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x00000000, 0x00000000,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x00000000, 0x10200102, 0x00000000, 0x10200102, 0x00000000, 0x10200102, 0x00000000, 0x10200102,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00000000, 0x00000000,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, /* 0x1f80 */
- 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104, 0x10200104,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00000000, 0x10200101, 0x10200101,
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200104, 0x10000000, 0x10200101, 0x10000000,
- 0x10000000, 0x10000000, 0x10200101, 0x10200101, 0x10200101, 0x00000000, 0x10200101, 0x10200101, /* 0x1fc0 */
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200104, 0x10000000, 0x10000000, 0x10000000,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00000000, 0x00000000, 0x10200101, 0x10200101,
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x00000000, 0x10000000, 0x10000000, 0x10000000,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10000000, 0x10000000, 0x10000000,
- 0x00000000, 0x00000000, 0x10200101, 0x10200101, 0x10200101, 0x00000000, 0x10200101, 0x10200101,
- 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200104, 0x10010000, 0x10000000, 0x00000000,
- 0x10020010, 0x10020010, 0x10020010, 0x10020010, 0x10020010, 0x10020010, 0x10020010, 0x100c0010, /* 0x2000 */
- 0x10020010, 0x10020010, 0x10020010, 0x00020080, 0x00080080, 0x00080080, 0x00080110, 0x00080210,
- 0x00020000, 0x180c0000, 0x00020000, 0x00020000, 0x00030000, 0x00000000, 0x00000000, 0x10000000,
- 0x00000000, 0x00000000, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00080000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x10000000, 0x00020000,
- 0x00000010, 0x00000010, 0x00088180, 0x00080200, 0x00080000, 0x00080100, 0x00080200, 0x180c2010,
- 0x00004000, 0x00004000, 0x00004000, 0x10004000, 0x10004000, 0x00000000, 0x10000000, 0x10000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10040020, 0x00040020, 0x10000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00002000, 0x00080000, 0x00040000, 0x10040020, /* 0x2040 */
- 0x10040020, 0x10040020, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00020000, 0x10000000,
- 0x00020000, 0x00020000, 0x00020000, 0x00020000, 0x00000000, 0x00020000, 0x00020000, 0x10020010,
- 0x00000080, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x10000400, 0x10000100, 0x00000000, 0x00000000, 0x10000400, 0x10000400, 0x10000400, 0x10000400,
- 0x10000400, 0x10000400, 0x10001000, 0x10001000, 0x10000000, 0x10080000, 0x10040000, 0x10000100,
- 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400, /* 0x2080 */
- 0x10000400, 0x10000400, 0x10001000, 0x10001000, 0x10000000, 0x10080000, 0x10040000, 0x00000000,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x00000000, 0x00000000, 0x00000000,
- 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000,
- 0x10004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000,
- 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000, 0x00004000,
- 0x00004000, 0x00004000, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x20c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00080000, 0x00080000, 0x00080000,
- 0x00080000, 0x00088000, 0x00080000, 0x00080000, 0x00080000, 0x00088000, 0x00088000, 0x00080000,
- 0x00080000, 0x00080000, 0x00080000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10000000, 0x10000000, 0x10200102, 0x10000000, 0x00000000, 0x10000000, 0x10000000, 0x10200102, /* 0x2100 */
- 0x00000000, 0x10000000, 0x10200101, 0x10200102, 0x10200102, 0x10200102, 0x10200101, 0x10200101,
- 0x10200102, 0x10200102, 0x10200102, 0x10200101, 0x00000000, 0x10200102, 0x10000000, 0x00000000,
- 0x00000000, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x00000000, 0x00000000,
- 0x10000000, 0x10000000, 0x10000000, 0x00000000, 0x10200102, 0x00000000, 0x10200102, 0x00000000,
- 0x10200102, 0x00000000, 0x10200102, 0x10200102, 0x10200102, 0x10200102, 0x00004000, 0x10200101,
- 0x10200102, 0x10200102, 0x00200102, 0x10200102, 0x10200101, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200101, 0x00000000, 0x10000000, 0x10200101, 0x10200101, 0x10200102, 0x10200102,
- 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10200102, 0x10200101, 0x10200101, /* 0x2140 */
- 0x10200101, 0x10200101, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00200101, 0x00000100,
- 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000,
- 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00200102, 0x00200101, 0x00000100, 0x00000100, 0x00000100, /* 0x2180 */
- 0x00000100, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x21c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x10000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2200 */
- 0x00000000, 0x10000000, 0x00000000, 0x00000000, 0x10000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00001000, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x00000000, 0x10000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x00000000, 0x10000000,
- 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x10000000, 0x00000000, 0x00000000, 0x10000000, 0x00000000, 0x00000000, 0x10000000, /* 0x2240 */
- 0x00000000, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10000000, 0x00000000, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x10000000,
- 0x10000000, 0x10000000, 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x00000000, 0x00000000,
- 0x10000000, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10000000, 0x10000000, 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x00000000, 0x00000000, /* 0x2280 */
- 0x10000000, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x22c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2300 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x10080000, 0x10040000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0x2340 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2380 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x23c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2400 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2440 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000,
- 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000,
- 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000,
- 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000,
- 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, /* 0x2480 */
- 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400,
- 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000400,
- 0x10000400, 0x10000400, 0x10000400, 0x10000400, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100,
- 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10000100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, /* 0x24c0 */
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2500 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2540 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2580 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x25c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2600 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00030000, 0x00030000, 0x00000000, 0x00000000,
- 0x00030000, 0x00000000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00030000, 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2640 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00030000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2680 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, /* 0x26c0 */
- 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00030000, 0x00000000, 0x00030000,
- 0x00030000, 0x00030000, 0x00000000, 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00000000,
- 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00030000, 0x00000000, 0x00000000, 0x00030000,
- 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00000000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00030000, 0x00030000, 0x00030000,
- 0x00000000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00000000, /* 0x2700 */
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2740 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000,
- 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2780 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080000, 0x00040000, 0x00000000, /* 0x27c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080000, 0x00040000,
- 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0x2800 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0x2840 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0x2880 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0x28c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2900 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2940 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, /* 0x2980 */
- 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000,
- 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000,
- 0x00040000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x29c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080000, 0x00040000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2a00 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2a40 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x10000000, 0x10000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2a80 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2ac0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2b00 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2b40 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2b80 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2bc0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, /* 0x2c00 */
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00200102, 0x00000000,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, /* 0x2c40 */
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00000000,
- 0x00200102, 0x00200101, 0x00200102, 0x00200102, 0x00200102, 0x00200101, 0x00200101, 0x00200102,
- 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200102, 0x00200102,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200101, 0x00200102, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x10000100, 0x10000100, 0x00200102, 0x00200102,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, /* 0x2c80 */
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, /* 0x2cc0 */
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200101, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00088000,
- 0x00088000, 0x00088000, 0x00200102, 0x00200101, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00020000, 0x00020000, 0x00020000, 0x00000000, 0x00000000, 0x00020000,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, /* 0x2d00 */
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00000000, 0x00200101,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00200101, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x2d40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10000100,
- 0x00020100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0x2d80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, /* 0x2dc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2e00 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00020000, 0x00020000,
- 0x00020000, 0x00020000, 0x00020000, 0x00020000, 0x00020000, 0x00020000, 0x00000000, 0x00020000,
- 0x00080000, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000,
- 0x00080000, 0x00040000, 0x00020000, 0x00020000, 0x00020000, 0x00020000, 0x00000020, 0x00000000,
- 0x00020000, 0x00020000, 0x00000000, 0x00020000, 0x00020000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x2e40 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, /* 0x2e80 */
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00000000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x10030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, /* 0x2ec0 */
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x10030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, /* 0x2f00 */
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, /* 0x2f40 */
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, /* 0x2f80 */
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, /* 0x2fc0 */
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10020010, 0x00040020, 0x00040020, 0x00030000, 0x00030000, 0x00040100, 0x00630100, 0x00430100, /* 0x3000 */
- 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00080000, 0x00040000,
- 0x00080000, 0x00040000, 0x00030000, 0x00030000, 0x00080000, 0x00040000, 0x00080000, 0x00040000,
- 0x00080000, 0x00040000, 0x00080000, 0x00040000, 0x00040000, 0x00080000, 0x00040000, 0x00040000,
- 0x00030000, 0x00430100, 0x00430100, 0x00430100, 0x00430100, 0x00430100, 0x00430100, 0x00430100,
- 0x00430100, 0x00430100, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080100, 0x00080100,
- 0x00030000, 0x00030100, 0x00030100, 0x00030100, 0x00030100, 0x00080100, 0x10030000, 0x00030000,
- 0x10430100, 0x10430100, 0x10430100, 0x00040100, 0x00240100, 0x00030000, 0x00030000, 0x00030000,
- 0x00000000, 0x00200100, 0x00230100, 0x00200100, 0x00230100, 0x00200100, 0x00230100, 0x00200100, /* 0x3040 */
- 0x00230100, 0x00200100, 0x00230100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, 0x00230100,
- 0x10230100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, 0x00230100,
- 0x10230100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, 0x00230100,
- 0x10230100, 0x00230100, 0x10230100, 0x00200100, 0x00230100, 0x10230100, 0x00230100, 0x10230100,
- 0x00230100, 0x10230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x10230100, 0x10230100, 0x00230100, 0x10230100, 0x10230100, 0x00230100, 0x10230100, 0x10230100,
- 0x00230100, 0x10230100, 0x10230100, 0x00230100, 0x10230100, 0x10230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00200100, 0x00230100, 0x00200100, 0x00230100, 0x00200100, /* 0x3080 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00200100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x10230100, 0x00200100, 0x00200100, 0x00000000,
- 0x00000000, 0x00088000, 0x00088000, 0x10040000, 0x10040000, 0x00040100, 0x10040100, 0x10230100,
- 0x00040000, 0x00200100, 0x00230100, 0x00200100, 0x00230100, 0x00200100, 0x00230100, 0x00200100,
- 0x00230100, 0x00200100, 0x00230100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, 0x00230100,
- 0x10230100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, 0x00230100,
- 0x10230100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, 0x00230100,
- 0x10230100, 0x00230100, 0x10230100, 0x00200100, 0x00230100, 0x10230100, 0x00230100, 0x10230100, /* 0x30c0 */
- 0x00230100, 0x10230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x10230100, 0x10230100, 0x00230100, 0x10230100, 0x10230100, 0x00230100, 0x10230100, 0x10230100,
- 0x00230100, 0x10230100, 0x10230100, 0x00230100, 0x10230100, 0x10230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00200100, 0x00230100, 0x00200100, 0x00230100, 0x00200100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00200100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x10230100, 0x00200100, 0x00200100, 0x10230100,
- 0x10230100, 0x10230100, 0x10230100, 0x00040000, 0x00000100, 0x00040100, 0x10040100, 0x10230100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00230100, 0x00230100, 0x00230100, /* 0x3100 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00000000, 0x00000000,
- 0x00000000, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100,
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100,
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, /* 0x3140 */
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100,
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100,
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100,
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100,
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100,
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100,
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100,
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, /* 0x3180 */
- 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x10230100, 0x00000000,
- 0x00030100, 0x00030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, /* 0x31c0 */
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, /* 0x3200 */
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030000, 0x10030000, 0x00000000,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, /* 0x3240 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030000, 0x10030000, 0x10030000, 0x00030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, /* 0x3280 */
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, /* 0x32c0 */
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x00000000,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, /* 0x3300 */
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, /* 0x3340 */
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, /* 0x3380 */
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, /* 0x33c0 */
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030000, 0x10030000,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100,
- 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030100, 0x10030000,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3400 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3440 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3480 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x34c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3500 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3540 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3580 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x35c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3600 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3640 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3680 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x36c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3700 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3740 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3780 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x37c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3800 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3840 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3880 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x38c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3900 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3940 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3980 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x39c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3a00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3a40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3a80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3ac0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3b00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3b40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3b80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3bc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3c00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3c40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3c80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3cc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3d00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3d40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3d80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3dc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3e00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3e40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3e80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3ec0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3f00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3f40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3f80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x3fc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4000 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4040 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4080 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x40c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4100 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4140 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4180 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x41c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4200 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4240 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4280 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x42c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4300 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4340 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4380 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x43c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4400 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4440 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4480 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x44c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4500 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4540 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4580 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x45c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4600 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4640 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4680 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x46c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4700 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4740 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4780 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x47c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4800 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4840 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4880 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x48c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4900 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4940 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4980 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x49c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4a00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4a40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4a80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4ac0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4b00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4b40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4b80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4bc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4c00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4c40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4c80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4cc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4d00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4d40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4d80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0x4dc0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4e00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4e40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4e80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4ec0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4f00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4f40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4f80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x4fc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5000 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5040 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5080 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x50c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5100 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5140 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5180 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x51c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5200 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5240 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5280 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x52c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5300 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5340 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5380 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x53c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5400 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5440 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5480 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x54c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5500 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5540 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5580 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x55c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5600 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5640 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5680 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x56c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5700 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5740 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5780 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x57c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5800 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5840 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5880 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x58c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5900 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5940 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5980 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x59c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5a00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5a40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5a80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5ac0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5b00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5b40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5b80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5bc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5c00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5c40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5c80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5cc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5d00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5d40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5d80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5dc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5e00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5e40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5e80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5ec0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5f00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5f40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5f80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x5fc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6000 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6040 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6080 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x60c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6100 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6140 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6180 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x61c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6200 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6240 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6280 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x62c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6300 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6340 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6380 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x63c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6400 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6440 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6480 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x64c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6500 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6540 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6580 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x65c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6600 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6640 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6680 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x66c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6700 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6740 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6780 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x67c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6800 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6840 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6880 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x68c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6900 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6940 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6980 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x69c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6a00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6a40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6a80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6ac0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6b00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6b40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6b80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6bc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6c00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6c40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6c80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6cc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6d00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6d40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6d80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6dc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6e00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6e40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6e80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6ec0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6f00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6f40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6f80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x6fc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7000 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7040 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7080 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x70c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7100 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7140 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7180 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x71c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7200 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7240 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7280 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x72c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7300 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7340 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7380 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x73c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7400 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7440 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7480 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x74c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7500 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7540 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7580 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x75c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7600 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7640 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7680 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x76c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7700 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7740 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7780 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x77c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7800 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7840 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7880 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x78c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7900 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7940 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7980 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x79c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7a00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7a40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7a80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7ac0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7b00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7b40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7b80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7bc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7c00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7c40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7c80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7cc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7d00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7d40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7d80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7dc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7e00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7e40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7e80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7ec0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7f00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7f40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7f80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x7fc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8000 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8040 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8080 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x80c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8100 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8140 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8180 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x81c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8200 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8240 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8280 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x82c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8300 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8340 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8380 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x83c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8400 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8440 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8480 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x84c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8500 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8540 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8580 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x85c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8600 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8640 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8680 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x86c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8700 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8740 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8780 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x87c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8800 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8840 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8880 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x88c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8900 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8940 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8980 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x89c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8a00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8a40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8a80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8ac0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8b00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8b40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8b80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8bc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8c00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8c40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8c80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8cc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8d00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8d40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8d80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8dc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8e00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8e40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8e80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8ec0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8f00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8f40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8f80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x8fc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9000 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9040 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9080 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x90c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9100 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9140 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9180 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x91c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9200 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9240 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9280 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x92c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9300 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9340 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9380 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x93c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9400 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9440 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9480 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x94c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9500 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9540 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9580 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x95c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9600 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9640 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9680 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x96c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9700 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9740 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9780 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x97c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9800 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9840 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9880 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x98c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9900 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9940 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9980 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x99c0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9a00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9a40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9a80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9ac0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9b00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9b40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9b80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9bc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9c00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9c40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9c80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9cc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9d00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9d40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9d80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9dc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9e00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9e40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9e80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9ec0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9f00 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9f40 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9f80 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100,
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, /* 0x9fc0 */
- 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00630100, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa000 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00040100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa040 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa080 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa0c0 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa100 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa140 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa180 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa1c0 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa200 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa240 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa280 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa2c0 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa300 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa340 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa380 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa3c0 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa400 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa440 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100,
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, /* 0xa480 */
- 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00230100, 0x00000000, 0x00000000, 0x00000000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00000000, /* 0xa4c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00020120, 0x00020120,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xa500 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xa540 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xa580 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xa5c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xa600 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000100, 0x00020020, 0x00000020, 0x00020020,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, /* 0xa640 */
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200100, 0x00088000,
- 0x00080000, 0x00080000, 0x00080000, 0x00000000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00088000, 0x00088000, 0x00000000, 0x00000000,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, /* 0xa680 */
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00280000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xa6c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00088000, 0x00088000, 0x00000100, 0x00020120, 0x00020120, 0x00020120, 0x00020120, 0x00020120,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0xa700 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200101, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, /* 0xa740 */
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x10000100, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101, 0x00200101,
- 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, /* 0xa780 */
- 0x00000000, 0x00000100, 0x00000100, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00000000,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101, 0x00200102, 0x00200101,
- 0x00200102, 0x00200101, 0x00200102, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0xa7c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10000100, 0x10000100, 0x00200101, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00080000, 0x00200100, 0x00200100, 0x00200100, 0x00080000, 0x00200100, /* 0xa800 */
- 0x00200100, 0x00200100, 0x00200100, 0x00080000, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00280100, 0x00280100, 0x00280000, 0x00280000, 0x00280100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00004000, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xa840 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00010000, 0x00010000, 0x00000020, 0x00000020,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00280100, 0x00280100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xa880 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00280100, 0x00280100, 0x00280100, 0x00280100,
- 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00280100,
- 0x00280100, 0x00280100, 0x00280100, 0x00280100, 0x00080000, 0x00000000, 0x00000000, 0x00000000, /* 0xa8c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00020120, 0x00020120,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000,
- 0x00088000, 0x00088000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000100, 0x00000100, 0x00000100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, /* 0xa900 */
- 0x00000108, 0x00000108, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280000, 0x00080000, 0x00080000, 0x00080000, 0x00020100, 0x00020120,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00280000, /* 0xa940 */
- 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280100, 0x00080100, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000,
- 0x00280000, 0x00280000, 0x00280000, 0x00280100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xa980 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00080000, 0x00280100, 0x00280100, 0x00280000, 0x00280000,
- 0x00280000, 0x00280000, 0x00280100, 0x00280100, 0x00280000, 0x00280100, 0x00280100, 0x00280100,
- 0x00080100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00020120, /* 0xa9c0 */
- 0x00020120, 0x00020120, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000000, 0x00000100,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000100,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xaa00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280000, 0x00280100,
- 0x00280100, 0x00280000, 0x00280000, 0x00280100, 0x00280100, 0x00280000, 0x00280000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00280000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xaa40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00280000, 0x00280100, 0x00000000, 0x00000000,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000000, 0x00000000, 0x00000100, 0x00020120, 0x00020120, 0x00020120,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00000100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000100,
- 0x00000100, 0x00000100, 0x00200100, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xaa80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200000, 0x00200100, 0x00200000, 0x00200000, 0x00200000, 0x00200100, 0x00200100, 0x00200000,
- 0x00200000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200000, 0x00000000,
- 0x00200100, 0x00000000, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0xaac0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00000100, 0x00000100, 0x00000120,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00280100, 0x00280000, 0x00280000, 0x00280100, 0x00280100,
- 0x00020120, 0x00020120, 0x00200100, 0x00000100, 0x00000100, 0x00280100, 0x00080000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, /* 0xab00 */
- 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0xab40 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0xab80 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xabc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00280100, 0x00280100, 0x00280000, 0x00280100, 0x00280100,
- 0x00280000, 0x00280100, 0x00280100, 0x00020120, 0x00080100, 0x00080000, 0x00000000, 0x00000000,
- 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108, 0x00000108,
- 0x00000108, 0x00000108, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xac00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xac40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xac80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xacc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xad00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xad40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xad80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xadc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xae00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xae40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xae80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xaec0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xaf00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xaf40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xaf80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xafc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb000 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb040 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb080 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb0c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb100 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb140 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb180 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb1c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb200 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb240 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb280 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb2c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb300 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb340 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb380 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb3c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb400 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb440 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb480 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb4c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb500 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb540 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb580 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb5c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb600 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb640 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb680 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb6c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb700 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb740 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb780 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb7c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb800 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb840 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb880 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb8c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb900 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb940 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb980 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xb9c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xba00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xba40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xba80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbac0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbb00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbb40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbb80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbbc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbc00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbc40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbc80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbcc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbd00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbd40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbd80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbdc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbe00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbe40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbe80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbec0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbf00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbf40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbf80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xbfc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc000 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc040 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc080 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc0c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc100 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc140 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc180 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc1c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc200 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc240 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc280 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc2c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc300 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc340 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc380 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc3c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc400 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc440 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc480 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc4c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc500 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc540 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc580 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc5c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc600 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc640 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc680 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc6c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc700 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc740 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc780 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc7c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc800 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc840 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc880 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc8c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc900 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc940 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc980 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xc9c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xca00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xca40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xca80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcac0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcb00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcb40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcb80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcbc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcc00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcc40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcc80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xccc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcd00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcd40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcd80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcdc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xce00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xce40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xce80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcec0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcf00 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcf40 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcf80 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xcfc0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd000 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd040 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd080 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd0c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd100 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd140 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd180 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd1c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd200 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd240 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd280 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd2c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd300 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd340 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd380 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd3c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd400 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd440 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd480 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd4c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd500 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd540 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd580 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd5c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd600 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd640 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd680 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd6c0 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd700 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd740 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, /* 0xd780 */
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, /* 0xd7c0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00200100,
- 0x00200100, 0x00200100, 0x00200100, 0x00200100, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xd800 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xd840 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xd880 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xd8c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xd900 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xd940 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xd980 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xd9c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xda00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xda40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xda80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdac0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdb00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdb40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdb80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdbc0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdc00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdc40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdc80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdcc0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdd00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdd40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdd80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xddc0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xde00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xde40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xde80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdec0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdf00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdf40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdf80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xdfc0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe000 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe040 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe080 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe0c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe100 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe140 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe180 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe1c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe200 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe240 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe280 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe2c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe300 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe340 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe380 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe3c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe400 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe440 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe480 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe4c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe500 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe540 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe580 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe5c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe600 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe640 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe680 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe6c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe700 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe740 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe780 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe7c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe800 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe840 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe880 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe8c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe900 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe940 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe980 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xe9c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xea00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xea40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xea80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xeac0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xeb00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xeb40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xeb80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xebc0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xec00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xec40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xec80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xecc0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xed00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xed40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xed80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xedc0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xee00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xee40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xee80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xeec0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xef00 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xef40 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xef80 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xefc0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf000 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf040 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf080 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf0c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf100 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf140 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf180 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf1c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf200 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf240 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf280 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf2c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf300 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf340 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf380 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf3c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf400 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf440 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf480 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf4c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf500 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf540 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf580 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf5c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf600 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf640 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf680 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf6c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf700 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf740 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf780 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf7c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf800 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf840 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf880 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, /* 0xf8c0 */
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100, 0x00000100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, /* 0xf900 */
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, /* 0xf940 */
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, /* 0xf980 */
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, /* 0xf9c0 */
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, /* 0xfa00 */
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x00630100, 0x00630100,
- 0x10630100, 0x00630100, 0x10630100, 0x00630100, 0x00630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x00630100,
- 0x10630100, 0x00630100, 0x10630100, 0x00630100, 0x00630100, 0x10630100, 0x10630100, 0x00630100,
- 0x00630100, 0x00630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, /* 0xfa40 */
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x00030000, 0x00030000,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, /* 0xfa80 */
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, /* 0xfac0 */
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100, 0x10630100,
- 0x10630100, 0x10630100, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000, 0x00030000,
- 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x00000000, /* 0xfb00 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x10200101, 0x10200101, 0x10200101, 0x10200101, 0x10200101,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10200200, 0x00280000, 0x10200200,
- 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200,
- 0x10200200, 0x10001000, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200,
- 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x00000000,
- 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x00000000, 0x10200200, 0x00000000,
- 0x10200200, 0x10200200, 0x00000000, 0x10200200, 0x10200200, 0x00000000, 0x10200200, 0x10200200, /* 0xfb40 */
- 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200, 0x10200200,
- 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200,
- 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200,
- 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200,
- 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200,
- 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200,
- 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200,
- 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, /* 0xfb80 */
- 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200,
- 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200,
- 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200,
- 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200,
- 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200,
- 0x14200200, 0x12200200, 0x00000200, 0x00000200, 0x00000200, 0x00000200, 0x00000200, 0x00000200,
- 0x00000200, 0x00000200, 0x00000200, 0x00000200, 0x00000200, 0x00000200, 0x00000200, 0x00000200,
- 0x00000200, 0x00000200, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0xfbc0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200,
- 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x14200200, 0x12200200,
- 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200,
- 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200,
- 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200,
- 0x10a00200, 0x14200200, 0x12200200, 0x10a00200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, /* 0xfc00 */
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, /* 0xfc40 */
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, /* 0xfc80 */
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x10a00200,
- 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200,
- 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200,
- 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200,
- 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200,
- 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200,
- 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, /* 0xfcc0 */
- 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200,
- 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200,
- 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x11200200,
- 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x11200200,
- 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x11200200,
- 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, /* 0xfd00 */
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x10a00200, 0x10a00200, 0x10a00200,
- 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x11200200, 0x11200200, 0x11200200, 0x11200200,
- 0x11200200, 0x11200200, 0x11200200, 0x11200200, 0x12200200, 0x14200200, 0x00080000, 0x00040000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, /* 0xfd40 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10a00200, 0x12200200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200,
- 0x12200200, 0x10a00200, 0x12200200, 0x12200200, 0x10a00200, 0x10a00200, 0x12200200, 0x12200200,
- 0x10a00200, 0x10a00200, 0x12200200, 0x10a00200, 0x12200200, 0x10a00200, 0x12200200, 0x12200200,
- 0x10a00200, 0x12200200, 0x12200200, 0x10a00200, 0x12200200, 0x10a00200, 0x12200200, 0x12200200,
- 0x10a00200, 0x12200200, 0x10a00200, 0x10a00200, 0x12200200, 0x12200200, 0x12200200, 0x10a00200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x10a00200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x10a00200, 0x12200200, 0x12200200, 0x10a00200, 0x12200200, /* 0xfd80 */
- 0x10a00200, 0x10a00200, 0x10a00200, 0x12200200, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200,
- 0x00000000, 0x00000000, 0x10a00200, 0x10a00200, 0x10a00200, 0x10a00200, 0x12200200, 0x12200200,
- 0x10a00200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x10a00200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x10a00200, 0x10a00200, 0x12200200, 0x12200200,
- 0x10a00200, 0x12200200, 0x10a00200, 0x12200200, 0x12200200, 0x12200200, 0x12200200, 0x12200200,
- 0x12200200, 0x12200200, 0x12200200, 0x10a00200, 0x10a00200, 0x10a00200, 0x12200200, 0x12200200, /* 0xfdc0 */
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14200200,
- 0x14200200, 0x14200200, 0x14200200, 0x14200200, 0x14000200, 0x00000000, 0x00000000, 0x00000000,
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, /* 0xfe00 */
- 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000, 0x00080000,
- 0x10000000, 0x10040000, 0x10040000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10080000,
- 0x10040000, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00088000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10080000, 0x10040000, 0x10080000,
- 0x10040000, 0x10080000, 0x10040000, 0x10080000, 0x10040000, 0x10080000, 0x10040000, 0x10080000,
- 0x10040000, 0x10080000, 0x10040000, 0x10080000, 0x10040000, 0x00030000, 0x00030000, 0x10080000, /* 0xfe40 */
- 0x10040000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000, 0x10030000,
- 0x10042020, 0x10030020, 0x10042020, 0x00000000, 0x10040020, 0x10042020, 0x10000020, 0x10000020,
- 0x10030000, 0x10080000, 0x10040000, 0x10080000, 0x10040000, 0x10080000, 0x10040000, 0x10034000,
- 0x10030000, 0x10030000, 0x10031000, 0x10031000, 0x10030000, 0x10030000, 0x10030000, 0x00000000,
- 0x10030000, 0x10004000, 0x10004000, 0x10030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x14200200, 0x11200200, 0x14200200, 0x00200200, 0x14200200, 0x00000000, 0x14200200, 0x11200200,
- 0x14200200, 0x11200200, 0x14200200, 0x11200200, 0x14200200, 0x11200200, 0x14200200, 0x11200200,
- 0x14200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, /* 0xfe80 */
- 0x12200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x14200200,
- 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x10a00200,
- 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200,
- 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200,
- 0x11200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x14200200,
- 0x12200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200,
- 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200,
- 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200, /* 0xfec0 */
- 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200,
- 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200,
- 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200,
- 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x10a00200,
- 0x11200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x14200200,
- 0x12200200, 0x14200200, 0x12200200, 0x10a00200, 0x11200200, 0x14200200, 0x12200200, 0x14200200,
- 0x12200200, 0x14200200, 0x12200200, 0x14200200, 0x12200200, 0x00000000, 0x00000000, 0x08000080,
- 0x00000000, 0x10000020, 0x10030000, 0x10034000, 0x10004000, 0x10004000, 0x10030000, 0x10030000, /* 0xff00 */
- 0x10080000, 0x10040000, 0x10030000, 0x10031000, 0x10042020, 0x10031000, 0x10042020, 0x10032000,
- 0x10030448, 0x10030448, 0x10030448, 0x10030448, 0x10030448, 0x10030448, 0x10030448, 0x10030448,
- 0x10030448, 0x10030448, 0x10042020, 0x10040020, 0x10030000, 0x10030000, 0x10030000, 0x10000020,
- 0x10030000, 0x10230142, 0x10230142, 0x10230142, 0x10230142, 0x10230142, 0x10230142, 0x10230102,
- 0x10230102, 0x10230102, 0x10230102, 0x10230102, 0x10230102, 0x10230102, 0x10230102, 0x10230102,
- 0x10230102, 0x10230102, 0x10230102, 0x10230102, 0x10230102, 0x10230102, 0x10230102, 0x10230102,
- 0x10230102, 0x10230102, 0x10230102, 0x10080000, 0x10030000, 0x10040000, 0x10030000, 0x10030000,
- 0x10030000, 0x10230141, 0x10230141, 0x10230141, 0x10230141, 0x10230141, 0x10230141, 0x10230101, /* 0xff40 */
- 0x10230101, 0x10230101, 0x10230101, 0x10230101, 0x10230101, 0x10230101, 0x10230101, 0x10230101,
- 0x10230101, 0x10230101, 0x10230101, 0x10230101, 0x10230101, 0x10230101, 0x10230101, 0x10230101,
- 0x10230101, 0x10230101, 0x10230101, 0x10080000, 0x10030000, 0x10040000, 0x10030000, 0x10080000,
- 0x10040000, 0x10040020, 0x10080000, 0x10040000, 0x10040020, 0x10040000, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10000100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, /* 0xff80 */
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10040100, 0x10040100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x00000000,
- 0x00000000, 0x00000000, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, /* 0xffc0 */
- 0x00000000, 0x00000000, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x00000000, 0x00000000, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100, 0x10200100,
- 0x00000000, 0x00000000, 0x10200100, 0x10200100, 0x10200100, 0x00000000, 0x00000000, 0x00000000,
- 0x10004000, 0x10004000, 0x10030000, 0x10030000, 0x10030000, 0x10004000, 0x10004000, 0x00000000,
- 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x10000000, 0x00000000,
- 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
- 0x00000000, 0x00080000, 0x00080000, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
-};
diff --git a/dviware/dvisvgm/libs/ff-woff/fontforge/woff.c b/dviware/dvisvgm/libs/ff-woff/fontforge/woff.c
deleted file mode 100644
index 7a6ca10fcc..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/fontforge/woff.c
+++ /dev/null
@@ -1,318 +0,0 @@
-/* Copyright (C) 2010-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-/* Support for woff files */
-/* Which are defined here: http://people.mozilla.com/~jkew/woff/woff-2009-09-16.html */
-/* Basically sfnts with compressed tables and some more metadata */
-
-#include "fontforge.h"
-#include <math.h>
-#include <ctype.h>
-
-# include <zlib.h>
-
-static void copydata(FILE *to,int off_to,FILE *from,int off_from, int len) {
- int ch, i;
-
- fseek(to ,off_to ,SEEK_SET);
- fseek(from,off_from,SEEK_SET);
- for ( i=0; i<len; ++i ) {
- ch = getc(from);
- putc(ch,to);
- }
-}
-
-#define CHUNK (128*1024)
-/* Copied with few mods from the zlib usage examples */
-
-static int compressOrNot(FILE *to,int off_to, FILE *from,int off_from,
- int len, int forcecompress ) {
- char in[CHUNK];
- char out[CHUNK];
- z_stream strm;
- int ret, err=0;
- int amount;
- FILE *tmp;
- int uncompLen = len;
-
- /* Empty table, nothing to do */
- if ( len==0 )
-return(0);
-
- fseek(from,off_from,SEEK_SET);
- memset(&strm,0,sizeof(strm));
- ret = deflateInit(&strm,Z_DEFAULT_COMPRESSION);
- if ( ret!=Z_OK ) {
- fprintf( stderr,"Compression initialization failed.\n" );
-return(0);
- }
- tmp = tmpfile2();
-
- do {
- if ( len<=0 ) {
- (void)deflateEnd(&strm);
- break;
- }
- amount = len;
- if ( amount>CHUNK )
- amount = CHUNK;
- strm.avail_in = fread(in, 1, amount, from);
- len -= strm.avail_in;
- if (ferror(from)) {
- (void)deflateEnd(&strm);
- fprintf( stderr, "IO error.\n" );
- break;
- }
- if (strm.avail_in == 0)
- break;
- strm.next_in = (unsigned char*)in;
- do {
- strm.avail_out = CHUNK;
- strm.next_out = (unsigned char*)out;
- ret = deflate(&strm, len==0 ? Z_FINISH : Z_NO_FLUSH);
- if ( ret==Z_STREAM_ERROR ) {
- (void)deflateEnd(&strm);
- fprintf( stderr, "Compression failed somehow.\n");
- err = 1;
- break;
- }
- amount = CHUNK - strm.avail_out;
- if ( fwrite(out,1,amount,tmp)!= amount || ferror(tmp) ) {
- (void)deflateEnd(&strm);
- fprintf( stderr, "IO Error.\n");
- err=1;
- break;
- }
- } while ( strm.avail_out==0 );
- if ( err )
- break;
- } while ( ret!=Z_STREAM_END );
- (void)deflateEnd(&strm);
-
- if ( strm.total_out>=uncompLen ) {
- /* Didn't actually make the data smaller, so store uncompressed */
- fclose(tmp);
- copydata(to,off_to,from,off_from,uncompLen);
-return( uncompLen );
- } else {
- copydata(to,off_to,tmp,0,strm.total_out);
- fclose(tmp);
-return( strm.total_out );
- }
-}
-
-typedef struct {
- int index;
- int offset;
-} tableOrderRec;
-
-static int
-compareOffsets(const void * lhs, const void * rhs)
-{
- const tableOrderRec * a = (const tableOrderRec *) lhs;
- const tableOrderRec * b = (const tableOrderRec *) rhs;
- /* don't simply return a->offset - b->offset because these are unsigned
- offset values; could convert to int, but possible integer overflow */
- return a->offset > b->offset ? 1 :
- a->offset < b->offset ? -1 :
- 0;
-}
-
-int _WriteWOFFFont(FILE *woff,SplineFont *sf, enum fontformat format,
- int32 *bsizes, enum bitmapformat bf,int flags,EncMap *enc,int layer) {
- int ret;
- FILE *sfnt;
- int major=sf->woffMajor, minor=sf->woffMinor;
- int flavour, num_tabs;
- int filelen, len;
- int i;
- int compLen, uncompLen, newoffset;
- int tag, checksum, offset;
- int tab_start;
- tableOrderRec *tableOrder = NULL;
-
- if ( major==woffUnset ) {
- struct ttflangname *useng;
- major = 1; minor = 0;
- for ( useng=sf->names; useng!=NULL; useng=useng->next )
- if ( useng->lang==0x409 )
- break;
- if ( useng!=NULL && useng->names[ttf_version]!=NULL &&
- sscanf(useng->names[ttf_version], "Version %d.%d", &major, &minor)>=1 ) {
- /* All done */
- } else if ( sf->subfontcnt!=0 ) {
- major = floor(sf->cidversion);
- minor = floor(1000.*(sf->cidversion-major));
- } else if ( sf->version!=NULL ) {
- char *pt=sf->version;
- char *end;
- while ( *pt && !isdigit(*pt) && *pt!='.' ) ++pt;
- if ( *pt ) {
- major = strtol(pt,&end,10);
- if ( *end=='.' )
- minor = strtol(end+1,NULL,10);
- }
- }
- }
-
- format = sf->subfonts!=NULL ? ff_otfcid :
- sf->layers[layer].order2 ? ff_ttf : ff_otf;
- sfnt = tmpfile2();
- ret = _WriteTTFFont(sfnt,sf,format,bsizes,bf,flags,enc,layer);
- if ( !ret ) {
- fclose(sfnt);
-return( ret );
- }
-
- fseek(sfnt,0,SEEK_END);
- filelen = ftell(sfnt);
- rewind(sfnt);
-
- flavour = getlong(sfnt);
- /* The woff standard says we should accept all flavours of sfnt, so can't */
- /* test flavour to make sure we've got a valid sfnt */
- /* But we can test the rest of the header for consistancy */
- num_tabs = getushort(sfnt);
- (void) getushort(sfnt);
- (void) getushort(sfnt);
- (void) getushort(sfnt);
-
- /*
- * At this point _WriteTTFFont should have generated an sfnt file with
- * valid checksums, correct padding and no extra gaps. However, the order
- * of the font tables in the original sfnt font must also be preserved so
- * that WOFF consumers can recover the original offsets as well as the
- * original font. Hence we will compress and write the font tables into
- * the WOFF file using the original offset order. Note that the order of
- * tables may not be the same as the one of table directory entries.
- * See https://github.com/fontforge/fontforge/issues/926
- */
- tableOrder = (tableOrderRec *) malloc(num_tabs * sizeof(tableOrderRec));
- if (!tableOrder) {
- fclose(sfnt);
- return false;
- }
- for ( i=0; i<num_tabs; ++i ) {
- fseek(sfnt,(3 + 4*i + 2)*sizeof(int32),SEEK_SET);
- tableOrder[i].index = i;
- tableOrder[i].offset = getlong(sfnt);
- }
- qsort(tableOrder, num_tabs, sizeof(tableOrderRec), compareOffsets);
-
- /* Now generate the WOFF file */
- rewind(woff);
- putlong(woff,CHR('w','O','F','F'));
- putlong(woff,flavour);
- putlong(woff,0); /* Off: 8. total length of file, fill in later */
- putshort(woff,num_tabs);
- putshort(woff,0); /* Must be zero */
- putlong(woff,filelen);
- putshort(woff,major); /* Major and minor version numbers of font */
- putshort(woff,minor);
- putlong(woff,0); /* Off: 24. Offset to metadata table */
- putlong(woff,0); /* Off: 28. Length (compressed) of metadata */
- putlong(woff,0); /* Off: 32. Length (uncompressed) */
- putlong(woff,0); /* Off: 36. Offset to private data */
- putlong(woff,0); /* Off: 40. Length of private data */
-
- tab_start = ftell(woff);
- for ( i=0; i<5*num_tabs; ++i )
- putlong(woff,0);
-
- for ( i=0; i<num_tabs; ++i ) {
- fseek(sfnt,(3 + 4*tableOrder[i].index)*sizeof(int32),SEEK_SET);
- tag = getlong(sfnt);
- checksum = getlong(sfnt);
- offset = getlong(sfnt);
- uncompLen = getlong(sfnt);
- newoffset = ftell(woff);
- compLen = compressOrNot(woff,newoffset,sfnt,offset,uncompLen,false);
- if ( (ftell(woff)&3)!=0 ) {
- /* Pad to a 4 byte boundary */
- if ( ftell(woff)&1 )
- putc('\0',woff);
- if ( ftell(woff)&2 )
- putshort(woff,0);
- }
- fseek(woff,tab_start+(5*tableOrder[i].index)*sizeof(int32),SEEK_SET);
- putlong(woff,tag);
- putlong(woff,newoffset);
- putlong(woff,compLen);
- putlong(woff,uncompLen);
- putlong(woff,checksum);
- fseek(woff,0,SEEK_END);
- }
- fclose(sfnt);
-
- if ( sf->woffMetadata!= NULL ) {
- int uncomplen = strlen(sf->woffMetadata);
- uLongf complen = 2*uncomplen;
- char *temp=malloc(complen+1);
- newoffset = ftell(woff);
- compress((unsigned char*)temp,&complen,(unsigned char*)sf->woffMetadata,uncomplen);
- fwrite(temp,1,complen,woff);
- free(temp);
- if ( (ftell(woff)&3)!=0 ) {
- /* Pad to a 4 byte boundary */
- if ( ftell(woff)&1 )
- putc('\0',woff);
- if ( ftell(woff)&2 )
- putshort(woff,0);
- }
- fseek(woff,24,SEEK_SET);
- putlong(woff,newoffset);
- putlong(woff,complen);
- putlong(woff,uncomplen);
- fseek(woff,0,SEEK_END);
- }
-
- fseek(woff,0,SEEK_END);
- len = ftell(woff);
- fseek(woff,8,SEEK_SET);
- putlong(woff,len);
-
- free(tableOrder);
-return( true ); /* No errors */
-}
-
-int WriteWOFFFont(char *fontname,SplineFont *sf, enum fontformat format,
- int32 *bsizes, enum bitmapformat bf,int flags,EncMap *enc,int layer) {
- FILE *woff;
- int ret;
-
- if ( strstr(fontname,"://")!=NULL ) {
- if (( woff = tmpfile2())==NULL )
-return( 0 );
- } else {
- if (( woff=fopen(fontname,"wb+"))==NULL )
-return( 0 );
- }
- ret = _WriteWOFFFont(woff,sf,format,bsizes,bf,flags,enc,layer);
- if ( fclose(woff)==-1 )
-return( 0 );
-return( ret );
-}
diff --git a/dviware/dvisvgm/libs/ff-woff/inc/basics.h b/dviware/dvisvgm/libs/ff-woff/inc/basics.h
deleted file mode 100644
index e1a543d39e..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/inc/basics.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _BASICS_H
-#define _BASICS_H
-
-#include <fontforge-config.h>
-#include <stdio.h> /* for NULL */
-#ifdef HAVE_STDINT_H
-#include <stdint.h>
-#else
-#include <inttypes.h>
-#endif
-#include <stdlib.h> /* for free */
-#include <limits.h>
-#include <stdbool.h>
-
-typedef int32_t int32;
-typedef uint32_t uint32;
-typedef int16_t int16;
-typedef uint16_t uint16;
-typedef int8_t int8;
-typedef uint8_t uint8;
-
-/* An integral type which can hold a pointer */
-typedef intptr_t intpt;
-
-typedef uint32 unichar_t;
-
-/* A macro to mark unused function parameters with. We often
- * have such parameters, because of extensive use of callbacks.
- */
-#ifdef UNUSED
-#elif defined(__GNUC__)
-# define UNUSED(x) UNUSED_ ## x __attribute__((unused))
-#elif defined(__LCLINT__)
-# define UNUSED(x) /*@unused@*/ x
-#else
-# define UNUSED(x) x
-#endif
-
-/* A macro to print a string for debug purposes
- */
-#ifdef FONTFORGE_DEBUG
-#define TRACE(...) printf(__VA_ARGS__)
-#else
-#define TRACE(...)
-#endif
-
-extern void NoMoreMemMessage(void);
-
-static inline int imin(int a, int b)
-{
- return (a < b) ? a : b;
-}
-
-static inline int imax(int a, int b)
-{
- return (a < b) ? b : a;
-}
-
-#define IS_IN_ORDER3( a, b, c ) ( ((a)<=(b)) && ((b)<=(c)) )
-
-
-/**
- * Many lists in FontForge are singly linked. At times you might want
- * to append to the list which, when you only have a pointer to the
- * start of the list can be more verbose than one would like. To use
- * this macro you must defined a null initialized variable 'last'
- * outside of any loop that traverses the source list. The last
- * variable is used used by this macro to quickly append to the list
- * as you go. This macro also assumes that the 'last' and 'newitem'
- * types have a member "->next" which contains the single linked list
- * pointer to the next element.
- *
- * Efficient list append should really be a one line call in the bulk
- * of the code :)
- *
- * example:
- * MyListObjectType* newfoolast = 0;
- * MyListObjectType* newfoolist = 0;
- *
- * for( ... iterate a source collection of foos ... )
- * {
- * MyListObjectType* foocopy = CopyIt( foo );
- * FFLIST_SINGLE_LINKED_APPEND( newfoolist, newfoolast, foocopy );
- * }
- */
-#define FFLIST_SINGLE_LINKED_APPEND( head, last, newitem ) \
- if ( !last ) \
- { \
- newitem->next = 0; \
- head = last = newitem; \
- } \
- else \
- { \
- last->next = newitem; \
- last = newitem; \
- }
-
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/inc/chardata.h b/dviware/dvisvgm/libs/ff-woff/inc/chardata.h
deleted file mode 100644
index 39bff9487a..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/inc/chardata.h
+++ /dev/null
@@ -1,78 +0,0 @@
-#include <basics.h>
-
-struct charmap {
- int first, last;
- unsigned char **table;
- unichar_t *totable;
-};
-struct charmap2 {
- int first, last;
- unsigned short **table;
- unichar_t *totable;
-};
-
-extern const unichar_t unicode_from_i8859_1[];
-extern struct charmap i8859_1_from_unicode;
-extern const unichar_t unicode_from_i8859_2[];
-extern struct charmap i8859_2_from_unicode;
-extern const unichar_t unicode_from_i8859_3[];
-extern struct charmap i8859_3_from_unicode;
-extern const unichar_t unicode_from_i8859_4[];
-extern struct charmap i8859_4_from_unicode;
-extern const unichar_t unicode_from_i8859_5[];
-extern struct charmap i8859_5_from_unicode;
-extern const unichar_t unicode_from_i8859_6[];
-extern struct charmap i8859_6_from_unicode;
-extern const unichar_t unicode_from_i8859_7[];
-extern struct charmap i8859_7_from_unicode;
-extern const unichar_t unicode_from_i8859_8[];
-extern struct charmap i8859_8_from_unicode;
-extern const unichar_t unicode_from_i8859_9[];
-extern struct charmap i8859_9_from_unicode;
-extern const unichar_t unicode_from_i8859_10[];
-extern struct charmap i8859_10_from_unicode;
-extern const unichar_t unicode_from_i8859_11[];
-extern struct charmap i8859_11_from_unicode;
-extern const unichar_t unicode_from_i8859_13[];
-extern struct charmap i8859_13_from_unicode;
-extern const unichar_t unicode_from_i8859_14[];
-extern struct charmap i8859_14_from_unicode;
-extern const unichar_t unicode_from_i8859_15[];
-extern struct charmap i8859_15_from_unicode;
-extern const unichar_t unicode_from_koi8_r[];
-extern struct charmap koi8_r_from_unicode;
-extern const unichar_t unicode_from_jis201[];
-extern struct charmap jis201_from_unicode;
-extern const unichar_t unicode_from_win[];
-extern struct charmap win_from_unicode;
-extern const unichar_t unicode_from_mac[];
-extern struct charmap mac_from_unicode;
-extern const unichar_t unicode_from_MacSymbol[];
-extern struct charmap MacSymbol_from_unicode;
-extern const unichar_t unicode_from_ZapfDingbats[];
-extern struct charmap ZapfDingbats_from_unicode;
-
-extern unichar_t *unicode_from_alphabets[];
-extern struct charmap *alphabets_from_unicode[];
-
-extern const unichar_t unicode_from_jis208[];
-extern const unichar_t unicode_from_jis212[];
-extern struct charmap2 jis_from_unicode;
-/* Subtract 0xa100 before indexing this array */
-extern const unichar_t unicode_from_big5[];
-extern struct charmap2 big5_from_unicode;
-/* Subtract 0x8100 before indexing this array */
-extern const unichar_t unicode_from_big5hkscs[];
-extern struct charmap2 big5hkscs_from_unicode;
-extern const unichar_t unicode_from_ksc5601[];
-extern struct charmap2 ksc5601_from_unicode;
-/* Subtract 0x8400 before indexing this array */
-extern const unichar_t unicode_from_johab[];
-extern struct charmap2 johab_from_unicode;
-extern const unichar_t unicode_from_gb2312[];
-extern struct charmap2 gb2312_from_unicode;
-
-/* a mask for each character saying what charset(s) it may be found in */
-extern const unsigned long * const unicode_backtrans[];
-
-extern const unichar_t *const * const unicode_alternates[];
diff --git a/dviware/dvisvgm/libs/ff-woff/inc/charset.h b/dviware/dvisvgm/libs/ff-woff/inc/charset.h
deleted file mode 100644
index 94daf0d3b4..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/inc/charset.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _CHARSET_H
-#define _CHARSET_H
-/* ASCII is ISO 646, except the ISO version admits national alternatives */
-enum encoding { e_usascii, e_iso646_no, e_iso646_se, e_iso8859_1,
- e_iso8859_2, e_iso8859_3, e_iso8859_4, e_iso8859_5, e_iso8859_6,
- e_iso8859_7, e_iso8859_8, e_iso8859_9, e_iso8859_10,
- e_iso8859_11/* same as TIS */, e_iso8859_13, e_iso8859_14, e_iso8859_15,
- e_koi8_r, /* RFC 1489 */
- e_jis201, /* 8 bit, ascii & katakana */
- e_win, e_mac,
- e_user,
-/* korean appears to fit into the jis/euc encoding schemes */
-/* the difference between jis & jis2 is what the output encoding should be (presence of '(') */
- e_jis, e_jis2, e_jiskorean, e_jisgb, e_sjis, /* multi-byte */
- e_euc, e_euckorean, e_eucgb,
- e_wansung, e_johab,
- e_big5,
- e_big5hkscs,
- e_unicode, e_unicode_backwards, /* wide chars */
- e_utf7, e_utf8, /* unicode encodings */
- e_ucs4, /* 4 byte chars */
- e_notrans, /* _inch returns 16bits */
- e_encodingmax, e_unknown=-1, e_first2byte=e_jis };
-
-enum charset { em_none = -1,
- em_iso8859_1, em_iso8859_2, em_iso8859_3, em_iso8859_4, em_iso8859_5,
- em_iso8859_6, em_iso8859_7, em_iso8859_8, em_iso8859_9, em_iso8859_10,
- em_iso8859_11/* same as TIS */, em_iso8859_13, em_iso8859_14, em_iso8859_15,
- em_koi8_r,
- em_jis201,
- em_win, em_mac, em_symbol, em_zapfding, em_user, em_adobestandard=em_user,
- em_jis208, em_jis212, em_ksc5601, em_gb2312, em_big5, em_big5hkscs,
- em_johab /* Korean*/,
-/* 28 */
- em_unicode, em_unicode4, em_gb18030 , em_max, em_first2byte=em_jis208, em_last94x94=em_gb2312 };
-
-extern int /*enum charset*/ local_encoding;
-#if HAVE_ICONV
-# include <iconv.h>
-extern char *iconv_local_encoding_name;
-#else
-# include "gwwiconv.h" /* My fake iconv based on encodings in gdraw/gunicode */
-#endif
-extern struct namemap { const char *name; int map; } encodingnames[];
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/inc/dlist.h b/dviware/dvisvgm/libs/ff-woff/inc/dlist.h
deleted file mode 100644
index eb4fcb9621..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/inc/dlist.h
+++ /dev/null
@@ -1,151 +0,0 @@
-/* Copyright (C) 2012 by Ben Martin */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _DLIST_H
-#define _DLIST_H
-
-/**
- * Doubly linked list abstraction. Putting a full member of this
- * struct first in another struct means you can treat it as a
- * dlinkedlist. You can have a struct in many lists simply by
- * embedding another dlistnode member and handing a pointer to that
- * member to the dlist() helper functions. Double linking has big
- * advantages in removal of single elements where you do not need to
- * rescan to find removeme->prev;
- */
-struct dlistnode {
- struct dlistnode* next;
- struct dlistnode* prev;
-};
-
-/**
- * DEVELOPERS: make sure the start of this struct is compatible with
- * dlistnode. While I could use the dlistnode as a first member, using
- * a copy of the members in the same order as dlistnode has them
- * allows callers using this struct a bit simpler access.
- *
- * While one can embed a dlistnode member into a struct to create
- * linked lists, sometimes you want to return a splice of one of those
- * lists. For example, if you have a double linked list of all your
- * hotkeys, you might like to return only the ones that have a
- * modifier of the Control key. You want to leave the hotkey structs
- * in their original list, but create a new kust that references just
- * a desired selection of objects.
- *
- * In other words, if you have some data you want to return in a
- * double linked list, then use this node type. You can build one up
- * using dlist_pushfront_external() and the caller can free that list
- * using dlist_free_external(). Any of the foreach() functions will
- * work to iterate a list of dlistnodeExternal as this list is
- * identical to a dlistnode with an extra ptr payload.
- */
-struct dlistnodeExternal {
- struct dlistnode* next;
- struct dlistnode* prev;
- void* ptr;
-};
-
-
-/**
- * Push the node onto the head of the list
- */
-extern void dlist_pushfront( struct dlistnode** list, struct dlistnode* node );
-
-/**
- * Take the last node off the list and return it. If the list is empty, return 0.
- */
-struct dlistnode* dlist_popback( struct dlistnode** list );
-
-/**
- * the number of nodes in the list
- */
-extern int dlist_size( struct dlistnode** list );
-
-/**
- * is the list empty
- */
-extern int dlist_isempty( struct dlistnode** list );
-
-/**
- * Remove the node from the list. The node itself is not free()ed.
- * That is still up to the caller. All this function does is preserve
- * the list structure without the node being in it.
- */
-extern void dlist_erase( struct dlistnode** list, struct dlistnode* node );
-typedef void (*dlist_foreach_func_type)( struct dlistnode* );
-
-/**
- * Call func for every node in the list. This is a defensive
- * implementation, if you want to remove a node from the list inside
- * func() that is perfectly fine.
- */
-extern void dlist_foreach( struct dlistnode** list, dlist_foreach_func_type func );
-typedef void (*dlist_foreach_udata_func_type)( struct dlistnode*, void* udata );
-
-/**
- * Like dlist_foreach(), defensive coding still, but the udata pointer
- * is passed back to your visitor function.
- */
-extern void dlist_foreach_udata( struct dlistnode** list, dlist_foreach_udata_func_type func, void* udata );
-
-/**
- * Like dlist_foreach_udata() but nodes are visited in reverse order.
- */
-extern void dlist_foreach_reverse_udata( struct dlistnode** list, dlist_foreach_udata_func_type func, void* udata );
-
-/**
- * Assuming list is an externalNode list, push a newly allocated list node with
- * a dlistnodeExternal.ptr = ptr passed.
- */
-extern void dlist_pushfront_external( struct dlistnode** list, void* ptr );
-
-/**
- * Free a list of externalNode type. The externalNode memory is
- * free()ed, whatever externalNode.ptr is pointing to is not free()ed.
- */
-extern void dlist_free_external( struct dlistnode** list );
-
-
-typedef void (*dlist_visitor_func_type)( struct dlistnode* );
-
-/**
- * To create a list of bounded length, use this function. Limit is the
- * maximum length the list can reach. If list nodes have to be removed
- * to be under this limit then "f" is used as a callback to free list
- * nodes. This allows application specific freeing of a list node, and
- * the ability to maintain a limit on the length of a list as a simple
- * one line call.
- *
- * The current implementation expects you to only be trimming one or
- * two entries at a time. It will still work for trimming 100 entries
- * at a single time, but might not be quite as optimized for that case
- * as it could be.
- */
-extern void dlist_trim_to_limit( struct dlistnode** list, int limit, dlist_visitor_func_type f );
-
-
-#endif // _DLIST_H
-
diff --git a/dviware/dvisvgm/libs/ff-woff/inc/ffintl.h b/dviware/dvisvgm/libs/ff-woff/inc/ffintl.h
deleted file mode 100644
index e4c14a2b76..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/inc/ffintl.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 2005-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef FFINTL_H
-#define FFINTL_H
-
-#define _(str) (str)
-
-/* For messages including utf8 sequences that need gettext_noop treatment */
-#define NU_(str) (str)
-#define N_(str) (str)
-
-#endif /* FFINTL_H */
diff --git a/dviware/dvisvgm/libs/ff-woff/inc/gimage.h b/dviware/dvisvgm/libs/ff-woff/inc/gimage.h
deleted file mode 100644
index 47fa137279..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/inc/gimage.h
+++ /dev/null
@@ -1,204 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _GIMAGE_H
-#define _GIMAGE_H
-#include <basics.h>
-
-typedef uint32 Color;
-
-#define COLOR_UNKNOWN ((Color) 0xffffffff)
-#define COLOR_TRANSPARENT ((Color) 0xffffffff)
-#define COLOR_DEFAULT ((Color) 0xfffffffe)
-#define COLOR_CREATE(r,g,b) (((r)<<16) | ((g)<<8) | (b))
-#define COLOR_ALPHA(col) (((col)>>24))
-#define COLOR_RED(col) (((col)>>16) & 0xff)
-#define COLOR_GREEN(col) (((col)>>8) & 0xff)
-#define COLOR_BLUE(col) ((col)&0xff)
-
-struct hslrgb {
- double h,s,l,v;
- double r,g,b;
- uint8 rgb, hsl, hsv;
-};
-
-struct hslrgba {
- double h,s,l,v;
- double r,g,b;
- uint8 rgb, hsl, hsv, has_alpha;
- double alpha;
-};
-
-typedef struct clut {
- int16 clut_len;
- unsigned int is_grey: 1;
- uint32 trans_index; /* will be ignored for cluts in images, use base->trans instead */
- Color clut[256];
-} GClut;
-
-#define GCLUT_CLUT_EMPTY \
-{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \
-}
-
-
-typedef struct revcmap RevCMap;
-
-enum image_type { it_mono, it_bitmap=it_mono, it_index, it_true, it_rgba };
-
-struct _GImage {
-/* Format: bitmaps are stored with the most significant bit first in byte units
- indexed images are stored in byte units
- true color images are stored in 4 byte units, 0,red,green,blue
- rgba images are stored in 4 byte units, alpha,red,green blue
-*/
- enum image_type image_type: 2;
- int16 delay; /* for animated GIFs, delay to next frame */
- int32 width, height;
- int32 bytes_per_line;
- uint8 *data;
- GClut *clut;
- Color trans; /* PNG supports more than one transparent color, we don't */
- /* for non-true color images this is the index, not a color */
-};
-
-/* We deal with 1 bit, 8 bit and 32 bit images internal. 1 bit images may have*/
-/* a clut (if they don't assume bw, 0==black, 1==white), 8 bit must have a */
-/* clut, 32bit are actually 24 bit RGB images, but we pad them for easy */
-/* accessing. it_screen means that we've got an image that can be drawn */
-/* directly on the screen */
-typedef struct gimage {
- short list_len; /* length of list */
- union { /* depends on whether has_list is set */
- struct _GImage *image;
- struct _GImage **images;
- } u;
- void *userdata;
-} GImage;
-
-enum pastetrans_type { ptt_paste_trans_to_trans, ptt_old_shines_through};
-
-typedef struct grect {
- int32 x,y,width,height;
-} GRect;
-
-#define GRECT_EMPTY { 0, 0, 0, 0 }
-
-
-typedef struct gpoint {
- int16 x,y;
-} GPoint;
-
-#define GPOINT_EMPTY { 0, 0 }
-
-
-extern GImage *GImageCreate(enum image_type type, int32 width, int32 height);
-extern GImage *_GImage_Create(enum image_type type, int32 width, int32 height);
-extern void GImageDestroy(GImage *gi);
-extern GImage *GImageCreateAnimation(GImage **images, int n);
-extern GImage *GImageAddImageBefore(GImage *dest, GImage *src, int pos);
-
-extern GImage *GImageBaseGetSub(struct _GImage *base, enum image_type it, GRect *src, GClut *nclut, RevCMap *rev);
-extern GImage *GImageGetSub(GImage *image,enum image_type it, GRect *src, GClut *nclut, RevCMap *rev);
-extern int GImageInsertToBase(struct _GImage *tobase, GImage *from, GRect *src, RevCMap *rev,
- int to_x, int to_y, enum pastetrans_type ptt );
-extern int GImageInsert(GImage *to, GImage *from, GRect *src, RevCMap *rev,
- int to_x, int to_y, enum pastetrans_type ptt );
-extern Color _GImageGetPixelColor(struct _GImage *base,int x, int y); /* Obsolete */
-extern Color GImageGetPixelColor(GImage *base,int x, int y); /* Obsolete */
-extern Color GImageGetPixelRGBA(GImage *base,int x, int y);
-extern int GImageGetWidth(GImage *);
-extern int GImageGetHeight(GImage *);
-extern void *GImageGetUserData(GImage *img);
-extern void GImageSetUserData(GImage *img,void *userdata);
-extern void GImageResize(struct _GImage *tobase, struct _GImage *fbase,
- GRect *src, RevCMap *rev);
-extern GImage *GImageResize32(GImage *from, GRect *src, int width, int height, Color trans);
-extern GImage *GImageResizeSame(GImage *from, GRect *src, int width, int height, RevCMap *rev);
-extern RevCMap *GClutReverse(GClut *clut,int side_size);
-void GClut_RevCMapFree(RevCMap *rev);
-extern GClut *GImageFindCLUT(GImage *image,GClut *clut,int clutmax);
-extern int GImageSameClut(GClut *clut,GClut *nclut);
-extern int GImageGreyClut(GClut *clut);
-extern Color GImageColourFName(unichar_t *name);
-extern Color _GImage_ColourFName(char *name);
-extern char *GImageNameFColour(Color col);
-extern Color GDrawColorDarken(Color col, int by);
-extern Color GDrawColorBrighten(Color col, int by);
-
-extern int GImageWriteGImage(GImage *gi, char *filename);
-extern int GImageWrite_Bmp(GImage *gi, FILE *fp);
-extern int GImageWriteBmp(GImage *gi, char *filename);
-extern GImage *GImageRead_Bmp(FILE *file);
-extern GImage *GImageReadBmp(char *filename);
-extern int GImageWriteXbm(GImage *gi, char *filename);
-extern GImage *GImageReadXbm(char *filename);
-extern int GImageWriteXpm(GImage *gi, char *filename);
-extern GImage *GImageReadXpm(char *filename);
-extern int GImageWriteEps(GImage *gi, char *filename);
-extern GImage *GImageReadTiff(char *filename);
-extern GImage *GImageReadJpeg(char *filename);
-extern GImage *GImageRead_Jpeg(FILE *fp);
-extern int GImageWrite_Jpeg(GImage *gi, FILE *outfile, int quality, int progressive);
-extern int GImageWriteJpeg(GImage *gi, char *filename, int quality, int progressive);
-extern GImage *GImageRead_Png(FILE *fp);
-extern GImage *GImageReadPng(char *filename);
-extern int GImageWrite_Png(GImage *gi, FILE *fp, int progressive);
-extern int GImageWritePng(GImage *gi, char *filename, int progressive);
-extern GImage *GImageReadGif(char *filename);
-extern int GImageWriteGif(GImage *gi,char *filename,int progressive);
-extern GImage *GImageReadRas(char *filename); /* Sun Raster */
-extern GImage *GImageReadRgb(char *filename); /* SGI */
-extern GImage *GImageRead(char *filename);
-
-extern void GImageDrawRect(GImage *img,GRect *r,Color col);
-extern void GImageDrawImage(GImage *dest,GImage *src,GRect *junk,int x, int y);
-extern void GImageBlendOver(GImage *dest,GImage *src,GRect *from,int x, int y);
-
-extern void gRGB2HSL(struct hslrgb *col);
-extern void gHSL2RGB(struct hslrgb *col);
-extern void gRGB2HSV(struct hslrgb *col);
-extern void gHSV2RGB(struct hslrgb *col);
-extern void gColor2Hslrgb(struct hslrgb *col,Color from);
-extern void gColor2Hslrgba(struct hslrgba *col,Color from);
-extern Color gHslrgb2Color(struct hslrgb *col);
-extern Color gHslrgba2Color(struct hslrgba *col);
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/inc/gnetwork.h b/dviware/dvisvgm/libs/ff-woff/inc/gnetwork.h
deleted file mode 100644
index 89067924c9..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/inc/gnetwork.h
+++ /dev/null
@@ -1,87 +0,0 @@
-/* Copyright (C) 2013 by Ben Martin */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _ALREADY_INCLUDED_GNETWORK_H_
-#define _ALREADY_INCLUDED_GNETWORK_H_
-
-#include <fontforge-config.h>
-
-#define IPADDRESS_STRING_LENGTH_T 100
-
-/**
- * Get a string that describes this host. It may be something
- * like "foobar" if the user has decided to call their laptop that name.
- * So you might not be able to resolve the returned hostname on a remote
- * computer. Data is copied to outstring and outstring is returned.
- */
-char* ff_gethostname( char* outstring, int outstring_sz );
-
-
-/**
- * Get the network accessible IP address of the local machine.
- *
- * If the machine is multihomed you had better hope that traffic
- * from the network can reach all NICs on the host.
- *
- * The output is copied to outstring which is assumed to be
- * at least ipaddress_string_length_t bytes long. The outstring is
- * also returned.
- */
-extern char* getNetworkAddress( char* outstring );
-
-extern char* HostPortPack( char* hostname, int port );
-extern char* HostPortUnpack( char* packed, int* port, int port_default );
-
-/**
- * This is ZUUID_LEN. Because that length is stable and to avoid bringing in
- * the czmq header file it is redeclared from base form here.
- */
-#define FF_UUID_BINARY_SIZE 16
-/**
- * min length of a buffer that will contain an ascii string serialiation of a uuid
- */
-#define FF_UUID_STRING_SIZE 33
-
-/**
- * generate a new uuid and stringify it into the target area provided
- * after the call target should contain something like
- * 1b4e28ba-2fa1-11d2-883f-0016d3cca427
- * with the trailing NUL. Before the call target needs to be at least
- * FF_UUID_STRING_SIZE bytes long.
- * the 'target' is also the return value.
- */
-char* ff_uuid_generate( char* target );
-
-/**
- * This test might be improved in the future.
- * You pass a string which might have the form of a UUID (or be "\0 whatever") or
- * just be a null pointer, and the function returns true if the uuid string
- * you passed in conforms to being a uuid.
- */
-extern int ff_uuid_isValid( char* uuid );
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/inc/gwwiconv.h b/dviware/dvisvgm/libs/ff-woff/inc/gwwiconv.h
deleted file mode 100644
index ff650a6dd3..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/inc/gwwiconv.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright (C) 2004-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _GWWICONV_H
-#define _GWWICONV_H
-
-# ifndef HAVE_ICONV
-# define __need_size_t
-# include <stdlib.h> /* For size_t */
-
-typedef void *gww_iconv_t;
-
-extern gww_iconv_t gww_iconv_open(const char *toenc,const char *fromenc);
-extern void gww_iconv_close( gww_iconv_t cd);
-extern size_t gww_iconv( gww_iconv_t cd,
- char **inbuf, size_t *inlen,
- char **outbuf, size_t *outlen);
-
-#define iconv_t gww_iconv_t
-#define iconv_open gww_iconv_open
-#define iconv_close gww_iconv_close
-#define iconv gww_iconv
-
-# endif /* HAVE_ICONV */
-#endif /* _GWWICONV_H */
diff --git a/dviware/dvisvgm/libs/ff-woff/inc/ustring.h b/dviware/dvisvgm/libs/ff-woff/inc/ustring.h
deleted file mode 100644
index 3e3f1b891c..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/inc/ustring.h
+++ /dev/null
@@ -1,212 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef _UCHAR_H
-# define _UCHAR_H
-#include <stdarg.h>
-#include <string.h>
-#include <memory.h>
-#include <basics.h>
-#include <charset.h>
-
-extern char *copy(const char *);
-extern char *copyn(const char *,long);
-extern unichar_t *u_copy(const unichar_t*);
-extern unichar_t *u_copyn(const unichar_t*, long);
-extern unichar_t *u_copynallocm(const unichar_t *pt, long n, long m);
-extern unichar_t *uc_copyn(const char *, int);
-extern unichar_t *uc_copy(const char*);
-extern unichar_t *u_concat(const unichar_t*,const unichar_t*);
-extern char *cu_copyn(const unichar_t *pt,int len);
-extern char *cu_copy(const unichar_t*);
-
-extern long uc_strcmp(const unichar_t *,const char *);
-extern long u_strcmp(const unichar_t *, const unichar_t *);
-extern long uc_strncmp(const unichar_t *,const char *,int);
-extern long u_strncmp(const unichar_t *, const unichar_t *,int);
-extern long uc_strmatch(const unichar_t *,const char *);
-extern long uc_strnmatch(const unichar_t *,const char *,int);
-extern long u_strnmatch(const unichar_t *str1, const unichar_t *str2, int len);
-extern long u_strmatch(const unichar_t *, const unichar_t *);
-extern int strmatch(const char *,const char *);
-extern int strnmatch(const char *str1, const char *str2, int n);
-extern void uc_strcpy(unichar_t *, const char *);
-extern void cu_strcpy(char *, const unichar_t *);
-extern void u_strcpy(unichar_t *, const unichar_t *);
-extern void u_strncpy(unichar_t *, const unichar_t *,int);
-extern void cu_strncpy(char *to, const unichar_t *from, int len);
-extern void uc_strncpy(unichar_t *to, const char *from, int len);
-/**
- * Like strncpy but passing a null 'from' will simply null terminate
- * to[0] to give a blank result rather than a crash.
- */
-extern char *cc_strncpy(char *to, const char *from, int len);
-extern void uc_strcat(unichar_t *, const char *);
-extern void uc_strncat(unichar_t *, const char *,int len);
-extern void cu_strcat(char *, const unichar_t *);
-extern void cu_strncat(char *, const unichar_t *,int len);
-extern void u_strcat(unichar_t *, const unichar_t *);
-extern void u_strncat(unichar_t *, const unichar_t *, int len);
-extern int u_strlen(const unichar_t *);
-/**
- * Like strlen() but passing a null pointer gets a 0 length
- */
-extern int c_strlen(const char *);
-extern unichar_t *u_strchr(const unichar_t *,unichar_t);
-extern unichar_t *u_strrchr(const unichar_t *,unichar_t);
-extern unichar_t *uc_strstr(const unichar_t *,const char *);
-extern unichar_t *u_strstr(const unichar_t *,const unichar_t *);
-extern unichar_t *uc_strstrmatch(const unichar_t *,const char *);
-extern unichar_t *u_strstrmatch(const unichar_t *,const unichar_t *);
-extern char * strstrmatch(const char *,const char *);
-
-extern char *u_to_c(const unichar_t *);
-extern unichar_t *c_to_u(const char *);
-
-extern unsigned long u_strtoul(const unichar_t *,unichar_t **,int);
-extern long u_strtol(const unichar_t *,unichar_t **,int);
-extern double u_strtod(const unichar_t *,unichar_t **);
-
-/*
- * Convert the integer 'v' to a string and return it.
- * You do not own the return value, it is an internal buffer
- * so you should copy it before using the function again
- */
-extern char* c_itostr( int v );
-
-extern char *strstart(const char *initial,const char *full);
-extern char *strstartmatch(const char *initial,const char *full);
-extern unichar_t *u_strstartmatch(const unichar_t *initial, const unichar_t *full);
-extern unichar_t *cu_strstartmatch(const char *initial, const unichar_t *full);
-
-#define utf82u_strncpy utf82U_strncpy
-extern int32 utf8_ildb(const char **utf8_text);
-#define UTF8IDPB_NOZERO 1 /* Allow for 0 encoded as a non-zero utf8 0xc0:0x80 char */
-#define UTF8IDPB_OLDLIMIT 2 /* Today's utf8 is agreed to be limited to {0..0x10FFFF} */
-#define UTF8IDPB_UCS2 8 /* Encode {0...0xffff} as 16bit ucs2 type values */
-#define UTF8IDPB_UTF16 16 /* Encode {0...0x10ffff} as 16bit utf16 type values */
-#define UTF8IDPB_UTF32 32 /* Encode {0...0x10ffff} as 32bit utf32 type values */
-extern char *utf8_idpb(char *utf8_text,uint32 ch,int flags);
-extern char *utf8_db(char *utf8_text);
-extern char *utf8_ib(char *utf8_text);
-extern int utf8_valid(const char *str);
-extern void utf8_truncatevalid(char *str);
-extern char *latin1_2_utf8_strcpy(char *utf8buf,const char *lbuf);
-extern char *latin1_2_utf8_copy(const char *lbuf);
-extern char *utf8_2_latin1_copy(const char *utf8buf);
-extern long utf8_strlen(const char *utf8_str); /* Count how many characters in the string NOT bytes */
-extern long utf82u_strlen(const char *utf8_str); /* Count how many shorts needed to represent in UCS2 */
-extern void utf8_strncpy(register char *to, const char *from, int len); /* copy n characters NOT bytes */
-extern char *def2utf8_copy(const char *from);
-extern char *utf82def_copy(const char *ufrom);
-extern char *utf8_strchr(const char *utf8_str, int search_char);
-
-extern unichar_t *utf82u_strncpy(unichar_t *ubuf,const char *utf8buf,int len);
-extern unichar_t *utf82u_strcpy(unichar_t *ubuf,const char *utf8buf);
-extern void utf82u_strcat(unichar_t *ubuf,const char *utf8buf);
-extern unichar_t *utf82u_copyn(const char *utf8buf,int len);
-extern unichar_t *utf82u_copy(const char *utf8buf);
-extern char *u2utf8_strcpy(char *utf8buf,const unichar_t *ubuf);
-extern char *u2utf8_copy(const unichar_t *ubuf);
-extern char *u2utf8_copyn(const unichar_t *ubuf,int len);
-extern unichar_t *encoding2u_strncpy(unichar_t *uto, const char *from, int n, enum encoding cs);
-extern char *u2encoding_strncpy(char *to, const unichar_t *ufrom, size_t n, enum encoding cs);
-extern unichar_t *def2u_strncpy(unichar_t *uto, const char *from, size_t n);
-extern char *u2def_strncpy(char *to, const unichar_t *ufrom, size_t n);
-extern unichar_t *def2u_copy(const char *from);
-extern char *u2def_copy(const unichar_t *ufrom);
-
-extern int uAllAscii(const unichar_t *str);
-extern int AllAscii(const char *);
-extern char *StripToASCII(const char *utf8_str);
-
-extern char *copytolower(const char *);
-extern int endswith(const char *haystack,const char *needle);
-extern int endswithi(const char *haystack,const char *needle);
-extern int endswithi_partialExtension( const char *haystack,const char *needle);
-
-/**
- * Remove trailing \n or \r from the given string. No memory
- * allocations are performed, null is injected over these terminators
- * to trim the string.
- *
- * This function is designed to be impotent if called with a string
- * that does not end with \n or \r. ie, you don't need to redundantly
- * check if there is a newline at the end of string and not call here
- * if there is no newline. You can just call here with any string and
- * be assured that afterwards there will be no trailing newline or
- * carrage return character found at the end of the string pointed to
- * by 'p'.
- */
-extern char* chomp( char* p );
-
-/**
- * Return true if the haystack plain string ends with the string
- * needle. Return 0 otherwise.
- *
- * Needles which are larger than the haystack are handled.
- *
- * No new strings are allocated, freed, or returned.
- */
-int endswith(const char *haystack,const char *needle);
-
-/**
- * Return true if the haystack unicode string ends with the string needle.
- * Return 0 otherwise.
- *
- * Needles which are larger than the haystack are handled.
- *
- * No new strings are allocated, freed, or returned.
- */
-extern int u_endswith(const unichar_t *haystack,const unichar_t *needle);
-
-extern int u_startswith(const unichar_t *haystack,const unichar_t *needle);
-extern int uc_startswith(const unichar_t *haystack,const char* needle);
-
-/**
- * In the string 's' replace all occurances of 'orig' with 'replacement'.
- * If you set free_s to true then the string 's' will be freed by this function.
- * Normally you want to set free_s to 0 to avoid that. The case you will want to
- * use free_s to 1 is chaining many calls like:
- *
- * char* s = copy( input );
- * s = str_replace_all( s, "foo", "bar", 1 );
- * s = str_replace_all( s, "baz", "gah", 1 );
- * // use s
- * free(s);
- * // no leaks in the above.
- *
- * Note that 's' is first copied before the first call to replace_all in the above
- * so it can be freed without concern. This also allows the ordering of replace_all
- * in the above to be changed without having to worry about the free_s flag.
- */
-extern char* str_replace_all( char* s, char* orig, char* replacement, int free_s );
-
-
-int toint( char* v );
-char* tostr( int v );
-
-#endif
diff --git a/dviware/dvisvgm/libs/ff-woff/inc/utype.h b/dviware/dvisvgm/libs/ff-woff/inc/utype.h
deleted file mode 100644
index d977213ff2..0000000000
--- a/dviware/dvisvgm/libs/ff-woff/inc/utype.h
+++ /dev/null
@@ -1,155 +0,0 @@
-#ifndef _UTYPE_H
-#define _UTYPE_H
-/* Copyright: 2001 George Williams */
-/* License: BSD-3-clause */
-/* Contributions: Joe Da Silva */
-
-/* This file was generated using the program 'makeutype' */
-
-#include <ctype.h> /* Include here so we can control it. If a system header includes it later bad things happen */
-#include <basics.h> /* Include here so we can use pre-defined int types to correctly size constant data arrays. */
-#ifdef tolower
-# undef tolower
-#endif
-#ifdef toupper
-# undef toupper
-#endif
-#ifdef islower
-# undef islower
-#endif
-#ifdef isupper
-# undef isupper
-#endif
-#ifdef isalpha
-# undef isalpha
-#endif
-#ifdef isdigit
-# undef isdigit
-#endif
-#ifdef isalnum
-# undef isalnum
-#endif
-#ifdef isspace
-# undef isspace
-#endif
-#ifdef ispunct
-# undef ispunct
-#endif
-#ifdef ishexdigit
-# undef ishexdigit
-#endif
-
-extern const unsigned short ____tolower[];
-extern const unsigned short ____toupper[];
-extern const unsigned short ____totitle[];
-extern const unsigned short ____tomirror[];
-extern const unsigned char ____digitval[];
-
-/* utype[] holds binary flags used for features of each unicode.org character */
-#define ____L 0x1
-#define ____U 0x2
-#define ____TITLE 0x4
-#define ____D 0x8
-#define ____S 0x10
-#define ____P 0x20
-#define ____X 0x40
-#define ____ZW 0x80
-#define ____L2R 0x100
-#define ____R2L 0x200
-#define ____ENUM 0x400
-#define ____ANUM 0x800
-#define ____ENS 0x1000
-#define ____CS 0x2000
-#define ____ENT 0x4000
-#define ____COMBINE 0x8000
-#define ____BB 0x10000
-#define ____BA 0x20000
-#define ____NS 0x40000
-#define ____NE 0x80000
-#define ____UB 0x100000
-#define ____NB 0x8000000
-#define ____AL 0x200000
-#define ____ID 0x400000
-#define ____INITIAL 0x800000
-#define ____MEDIAL 0x1000000
-#define ____FINAL 0x2000000
-#define ____ISOLATED 0x4000000
-#define ____DECOMPNORM 0x10000000
-
-#define islower(ch) (____utype[(ch)+1]&____L)
-#define isupper(ch) (____utype[(ch)+1]&____U)
-#define istitle(ch) (____utype[(ch)+1]&____TITLE)
-#define isalpha(ch) (____utype[(ch)+1]&(____L|____U|____TITLE|____AL))
-#define isdigit(ch) (____utype[(ch)+1]&____D)
-#define isalnum(ch) (____utype[(ch)+1]&(____L|____U|____TITLE|____AL|____D))
-#define isideographic(ch) (____utype[(ch)+1]&____ID)
-#define isideoalpha(ch) (____utype[(ch)+1]&(____ID|____L|____U|____TITLE|____AL))
-#define isspace(ch) (____utype[(ch)+1]&____S)
-#define ispunct(ch) (____utype[(ch)+1]&_____P)
-#define ishexdigit(ch) (____utype[(ch)+1]&____X)
-#define iszerowidth(ch) (____utype[(ch)+1]&____ZW)
-#define islefttoright(ch) (____utype[(ch)+1]&____L2R)
-#define isrighttoleft(ch) (____utype[(ch)+1]&____R2L)
-#define iseuronumeric(ch) (____utype[(ch)+1]&____ENUM)
-#define isarabnumeric(ch) (____utype[(ch)+1]&____ANUM)
-#define iseuronumsep(ch) (____utype[(ch)+1]&____ENS)
-#define iscommonsep(ch) (____utype[(ch)+1]&____CS)
-#define iseuronumterm(ch) (____utype[(ch)+1]&____ENT)
-#define iscombining(ch) (____utype[(ch)+1]&____COMBINE)
-#define isbreakbetweenok(ch1,ch2) (((____utype[(ch1)+1]&____BA) && !(____utype[(ch2)+1]&____NS)) || ((____utype[(ch2)+1]&____BB) && !(____utype[(ch1)+1]&____NE)) || (!(____utype[(ch2)+1]&____D) && ch1=='/'))
-#define isnobreak(ch) (____utype[(ch)+1]&____NB)
-#define isarabinitial(ch) (____utype[(ch)+1]&____INITIAL)
-#define isarabmedial(ch) (____utype[(ch)+1]&____MEDIAL)
-#define isarabfinal(ch) (____utype[(ch)+1]&____FINAL)
-#define isarabisolated(ch) (____utype[(ch)+1]&____ISOLATED)
-
-#define isdecompositionnormative(ch) (____utype[(ch)+1]&____DECOMPNORM)
-
-extern const uint32 ____utype[]; /* hold character type features for each Unicode.org defined character */
-
-/* utype2[] binary flags used for position/layout of each unicode.org character */
-#define ____COMBININGCLASS 0xff
-#define ____ABOVE 0x100
-#define ____BELOW 0x200
-#define ____OVERSTRIKE 0x400
-#define ____LEFT 0x800
-#define ____RIGHT 0x1000
-#define ____JOINS2 0x2000
-#define ____CENTERLEFT 0x4000
-#define ____CENTERRIGHT 0x8000
-#define ____CENTEREDOUTSIDE 0x10000
-#define ____OUTSIDE 0x20000
-#define ____LEFTEDGE 0x80000
-#define ____RIGHTEDGE 0x40000
-#define ____TOUCHING 0x100000
-#define ____COMBININGPOSMASK 0x1fff00
-#define ____NOPOSDATAGIVEN (uint32)(-1) /* -1 == no position data given */
-
-#define combiningclass(ch) (____utype2[(ch)+1]&____COMBININGCLASS)
-#define combiningposmask(ch) (____utype2[(ch)+1]&____COMBININGPOSMASK)
-
-extern const uint32 ____utype2[]; /* hold position boolean flags for each Unicode.org defined character */
-
-#define isunicodepointassigned(ch) (____codepointassigned[(ch)/32]&(1<<((ch)%32)))
-
-extern const uint32 ____codepointassigned[]; /* 1bit_boolean_flag x 32 = exists in Unicode.org character chart list. */
-
-#define tolower(ch) (____tolower[(ch)+1])
-#define toupper(ch) (____toupper[(ch)+1])
-#define totitle(ch) (____totitle[(ch)+1])
-#define tomirror(ch) (____tomirror[(ch)+1])
-#define tovalue(ch) (____digitval[(ch)+1])
-
-
-extern struct arabicforms {
- unsigned short initial, medial, final, isolated;
- unsigned int isletter: 1;
- unsigned int joindual: 1;
- unsigned int required_lig_with_alef: 1;
-} ArabicForms[256]; /* for chars 0x600-0x6ff, subtract 0x600 to use array */
-
-#define _SOFT_HYPHEN 0xad
-
-#define _DOUBLE_S 0xdf
-
-#endif
diff --git a/dviware/dvisvgm/libs/md5/Makefile.am b/dviware/dvisvgm/libs/md5/Makefile.am
index bb96948073..ce1e71eb5f 100644
--- a/dviware/dvisvgm/libs/md5/Makefile.am
+++ b/dviware/dvisvgm/libs/md5/Makefile.am
@@ -6,7 +6,6 @@ AM_CXXFLAGS = -Wall
md5.c: md5.h
-@CODE_COVERAGE_RULES@
endif
CLEANFILES = *.gcda *.gcno
diff --git a/dviware/dvisvgm/libs/md5/Makefile.in b/dviware/dvisvgm/libs/md5/Makefile.in
index fcc0d64faf..41193f0de2 100644
--- a/dviware/dvisvgm/libs/md5/Makefile.in
+++ b/dviware/dvisvgm/libs/md5/Makefile.in
@@ -88,10 +88,20 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
subdir = libs/md5
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -195,7 +205,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -311,6 +320,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -330,11 +341,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -355,9 +362,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libs/md5/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libs/md5/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu libs/md5/Makefile
+ $(AUTOMAKE) --foreign libs/md5/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -639,8 +646,6 @@ uninstall-am:
@USE_BUNDLED_MD5_TRUE@md5.c: md5.h
-@USE_BUNDLED_MD5_TRUE@@CODE_COVERAGE_RULES@
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/dviware/dvisvgm/libs/potrace/Makefile.am b/dviware/dvisvgm/libs/potrace/Makefile.am
index c8949647f1..494b24b7de 100644
--- a/dviware/dvisvgm/libs/potrace/Makefile.am
+++ b/dviware/dvisvgm/libs/potrace/Makefile.am
@@ -17,7 +17,6 @@ libpotrace_a_SOURCES = \
AM_CFLAGS = -Wall -I$(srcdir)
-@CODE_COVERAGE_RULES@
endif
CLEANFILES = *.gcda *.gcno
diff --git a/dviware/dvisvgm/libs/potrace/Makefile.in b/dviware/dvisvgm/libs/potrace/Makefile.in
index 889303eac7..4e69e7b921 100644
--- a/dviware/dvisvgm/libs/potrace/Makefile.in
+++ b/dviware/dvisvgm/libs/potrace/Makefile.in
@@ -88,10 +88,20 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
subdir = libs/potrace
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -200,7 +210,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -316,6 +325,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -335,11 +346,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -374,9 +381,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libs/potrace/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libs/potrace/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu libs/potrace/Makefile
+ $(AUTOMAKE) --foreign libs/potrace/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -665,8 +672,6 @@ uninstall-am:
.PRECIOUS: Makefile
-@HAVE_POTRACE_FALSE@@CODE_COVERAGE_RULES@
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/dviware/dvisvgm/libs/variant/Makefile.in b/dviware/dvisvgm/libs/variant/Makefile.in
index 9e4b360731..61922750ab 100644
--- a/dviware/dvisvgm/libs/variant/Makefile.in
+++ b/dviware/dvisvgm/libs/variant/Makefile.in
@@ -88,10 +88,20 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
subdir = libs/variant
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(noinst_HEADERS) \
@@ -159,7 +169,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -275,6 +284,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -294,11 +305,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -318,9 +325,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libs/variant/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libs/variant/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu libs/variant/Makefile
+ $(AUTOMAKE) --foreign libs/variant/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
diff --git a/dviware/dvisvgm/libs/woff2/Makefile.am b/dviware/dvisvgm/libs/woff2/Makefile.am
index aecb72ec36..990641e47f 100644
--- a/dviware/dvisvgm/libs/woff2/Makefile.am
+++ b/dviware/dvisvgm/libs/woff2/Makefile.am
@@ -28,7 +28,6 @@ libwoff2_a_SOURCES = \
AM_CXXFLAGS = -Wall -I$(srcdir)/include -I$(srcdir)/../brotli/include
-@CODE_COVERAGE_RULES@
endif
EXTRA_DIST = LICENSE
diff --git a/dviware/dvisvgm/libs/woff2/Makefile.in b/dviware/dvisvgm/libs/woff2/Makefile.in
index 5ee0873fd0..cbe03525d4 100644
--- a/dviware/dvisvgm/libs/woff2/Makefile.in
+++ b/dviware/dvisvgm/libs/woff2/Makefile.in
@@ -88,10 +88,20 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
subdir = libs/woff2
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -233,7 +243,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -349,6 +358,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -368,11 +379,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -419,9 +426,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libs/woff2/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libs/woff2/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu libs/woff2/Makefile
+ $(AUTOMAKE) --foreign libs/woff2/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -750,8 +757,6 @@ uninstall-am:
.PRECIOUS: Makefile
-@HAVE_WOFF2_FALSE@@CODE_COVERAGE_RULES@
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/dviware/dvisvgm/libs/xxHash/Makefile.am b/dviware/dvisvgm/libs/xxHash/Makefile.am
index 089c7aab71..a94d25a157 100644
--- a/dviware/dvisvgm/libs/xxHash/Makefile.am
+++ b/dviware/dvisvgm/libs/xxHash/Makefile.am
@@ -6,7 +6,6 @@ AM_CXXFLAGS = -Wall
xxhash.c: xxhash.h xxh3.h
-@CODE_COVERAGE_RULES@
endif
CLEANFILES = *.gcda *.gcno
diff --git a/dviware/dvisvgm/libs/xxHash/Makefile.in b/dviware/dvisvgm/libs/xxHash/Makefile.in
index 944b6bbd91..e270c97fe3 100644
--- a/dviware/dvisvgm/libs/xxHash/Makefile.in
+++ b/dviware/dvisvgm/libs/xxHash/Makefile.in
@@ -88,10 +88,20 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
subdir = libs/xxHash
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -195,7 +205,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -311,6 +320,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -330,11 +341,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -355,9 +362,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libs/xxHash/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign libs/xxHash/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu libs/xxHash/Makefile
+ $(AUTOMAKE) --foreign libs/xxHash/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -639,8 +646,6 @@ uninstall-am:
@HAVE_XXHASH_FALSE@xxhash.c: xxhash.h xxh3.h
-@HAVE_XXHASH_FALSE@@CODE_COVERAGE_RULES@
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/dviware/dvisvgm/m4/Makefile.am b/dviware/dvisvgm/m4/Makefile.am
deleted file mode 100644
index 849811f145..0000000000
--- a/dviware/dvisvgm/m4/Makefile.am
+++ /dev/null
@@ -1,4 +0,0 @@
-M4_EXTRA_DIST = \
- ax_check_compile_flag.m4 \
- ax_code_coverage.m4 \
- ax_cxx_compile_stdcxx.m4
diff --git a/dviware/dvisvgm/m4/ax_ac_append_to_file.m4 b/dviware/dvisvgm/m4/ax_ac_append_to_file.m4
new file mode 100644
index 0000000000..242b3d5200
--- /dev/null
+++ b/dviware/dvisvgm/m4/ax_ac_append_to_file.m4
@@ -0,0 +1,32 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_ac_append_to_file.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_AC_APPEND_TO_FILE([FILE],[DATA])
+#
+# DESCRIPTION
+#
+# Appends the specified data to the specified Autoconf is run. If you want
+# to append to a file when configure is run use AX_APPEND_TO_FILE instead.
+#
+# LICENSE
+#
+# Copyright (c) 2009 Allan Caffee <allan.caffee@gmail.com>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 10
+
+AC_DEFUN([AX_AC_APPEND_TO_FILE],[
+AC_REQUIRE([AX_FILE_ESCAPES])
+m4_esyscmd(
+AX_FILE_ESCAPES
+[
+printf "%s" "$2" >> "$1"
+])
+])
diff --git a/dviware/dvisvgm/m4/ax_ac_print_to_file.m4 b/dviware/dvisvgm/m4/ax_ac_print_to_file.m4
new file mode 100644
index 0000000000..642dfc1511
--- /dev/null
+++ b/dviware/dvisvgm/m4/ax_ac_print_to_file.m4
@@ -0,0 +1,32 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_ac_print_to_file.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_AC_PRINT_TO_FILE([FILE],[DATA])
+#
+# DESCRIPTION
+#
+# Writes the specified data to the specified file when Autoconf is run. If
+# you want to print to a file when configure is run use AX_PRINT_TO_FILE
+# instead.
+#
+# LICENSE
+#
+# Copyright (c) 2009 Allan Caffee <allan.caffee@gmail.com>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 10
+
+AC_DEFUN([AX_AC_PRINT_TO_FILE],[
+m4_esyscmd(
+AC_REQUIRE([AX_FILE_ESCAPES])
+[
+printf "%s" "$2" > "$1"
+])
+])
diff --git a/dviware/dvisvgm/m4/ax_add_am_macro_static.m4 b/dviware/dvisvgm/m4/ax_add_am_macro_static.m4
new file mode 100644
index 0000000000..6442d24b7c
--- /dev/null
+++ b/dviware/dvisvgm/m4/ax_add_am_macro_static.m4
@@ -0,0 +1,28 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_add_am_macro_static.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_ADD_AM_MACRO_STATIC([RULE])
+#
+# DESCRIPTION
+#
+# Adds the specified rule to $AMINCLUDE.
+#
+# LICENSE
+#
+# Copyright (c) 2009 Tom Howard <tomhoward@users.sf.net>
+# Copyright (c) 2009 Allan Caffee <allan.caffee@gmail.com>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 8
+
+AC_DEFUN([AX_ADD_AM_MACRO_STATIC],[
+ AC_REQUIRE([AX_AM_MACROS_STATIC])
+ AX_AC_APPEND_TO_FILE(AMINCLUDE_STATIC,[$1])
+])
diff --git a/dviware/dvisvgm/m4/ax_am_macros_static.m4 b/dviware/dvisvgm/m4/ax_am_macros_static.m4
new file mode 100644
index 0000000000..f4cee8c890
--- /dev/null
+++ b/dviware/dvisvgm/m4/ax_am_macros_static.m4
@@ -0,0 +1,38 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_am_macros_static.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_AM_MACROS_STATIC
+#
+# DESCRIPTION
+#
+# Adds support for macros that create Automake rules. You must manually
+# add the following line
+#
+# include $(top_srcdir)/aminclude_static.am
+#
+# to your Makefile.am files.
+#
+# LICENSE
+#
+# Copyright (c) 2009 Tom Howard <tomhoward@users.sf.net>
+# Copyright (c) 2009 Allan Caffee <allan.caffee@gmail.com>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 11
+
+AC_DEFUN([AMINCLUDE_STATIC],[aminclude_static.am])
+
+AC_DEFUN([AX_AM_MACROS_STATIC],
+[
+AX_AC_PRINT_TO_FILE(AMINCLUDE_STATIC,[
+# ]AMINCLUDE_STATIC[ generated automatically by Autoconf
+# from AX_AM_MACROS_STATIC on ]m4_esyscmd([LC_ALL=C date])[
+])
+])
diff --git a/dviware/dvisvgm/m4/ax_check_compile_flag.m4 b/dviware/dvisvgm/m4/ax_check_compile_flag.m4
new file mode 100644
index 0000000000..bd753b34d7
--- /dev/null
+++ b/dviware/dvisvgm/m4/ax_check_compile_flag.m4
@@ -0,0 +1,53 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
+#
+# DESCRIPTION
+#
+# Check whether the given FLAG works with the current language's compiler
+# or gives an error. (Warnings, however, are ignored)
+#
+# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
+# success/failure.
+#
+# If EXTRA-FLAGS is defined, it is added to the current language's default
+# flags (e.g. CFLAGS) when the check is done. The check is thus made with
+# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to
+# force the compiler to issue an error when a bad flag is given.
+#
+# INPUT gives an alternative input source to AC_COMPILE_IFELSE.
+#
+# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
+# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
+# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 6
+
+AC_DEFUN([AX_CHECK_COMPILE_FLAG],
+[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
+AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
+AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
+ ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
+ _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
+ AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
+ [AS_VAR_SET(CACHEVAR,[yes])],
+ [AS_VAR_SET(CACHEVAR,[no])])
+ _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
+AS_VAR_IF(CACHEVAR,yes,
+ [m4_default([$2], :)],
+ [m4_default([$3], :)])
+AS_VAR_POPDEF([CACHEVAR])dnl
+])dnl AX_CHECK_COMPILE_FLAGS
diff --git a/dviware/dvisvgm/m4/ax_code_coverage.m4 b/dviware/dvisvgm/m4/ax_code_coverage.m4
new file mode 100644
index 0000000000..352165b42c
--- /dev/null
+++ b/dviware/dvisvgm/m4/ax_code_coverage.m4
@@ -0,0 +1,272 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_code_coverage.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_CODE_COVERAGE()
+#
+# DESCRIPTION
+#
+# Defines CODE_COVERAGE_CPPFLAGS, CODE_COVERAGE_CFLAGS,
+# CODE_COVERAGE_CXXFLAGS and CODE_COVERAGE_LIBS which should be included
+# in the CPPFLAGS, CFLAGS CXXFLAGS and LIBS/LIBADD variables of every
+# build target (program or library) which should be built with code
+# coverage support. Also add rules using AX_ADD_AM_MACRO_STATIC; and
+# $enable_code_coverage which can be used in subsequent configure output.
+# CODE_COVERAGE_ENABLED is defined and substituted, and corresponds to the
+# value of the --enable-code-coverage option, which defaults to being
+# disabled.
+#
+# Test also for gcov program and create GCOV variable that could be
+# substituted.
+#
+# Note that all optimization flags in CFLAGS must be disabled when code
+# coverage is enabled.
+#
+# Usage example:
+#
+# configure.ac:
+#
+# AX_CODE_COVERAGE
+#
+# Makefile.am:
+#
+# include $(top_srcdir)/aminclude_static.am
+#
+# my_program_LIBS = ... $(CODE_COVERAGE_LIBS) ...
+# my_program_CPPFLAGS = ... $(CODE_COVERAGE_CPPFLAGS) ...
+# my_program_CFLAGS = ... $(CODE_COVERAGE_CFLAGS) ...
+# my_program_CXXFLAGS = ... $(CODE_COVERAGE_CXXFLAGS) ...
+#
+# clean-local: code-coverage-clean
+# distclean-local: code-coverage-dist-clean
+#
+# This results in a "check-code-coverage" rule being added to any
+# Makefile.am which do "include $(top_srcdir)/aminclude_static.am"
+# (assuming the module has been configured with --enable-code-coverage).
+# Running `make check-code-coverage` in that directory will run the
+# module's test suite (`make check`) and build a code coverage report
+# detailing the code which was touched, then print the URI for the report.
+#
+# This code was derived from Makefile.decl in GLib, originally licensed
+# under LGPLv2.1+.
+#
+# LICENSE
+#
+# Copyright (c) 2012, 2016 Philip Withnall
+# Copyright (c) 2012 Xan Lopez
+# Copyright (c) 2012 Christian Persch
+# Copyright (c) 2012 Paolo Borelli
+# Copyright (c) 2012 Dan Winship
+# Copyright (c) 2015,2018 Bastien ROUCARIES
+#
+# This library is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or (at
+# your option) any later version.
+#
+# This library is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+#serial 34
+
+m4_define(_AX_CODE_COVERAGE_RULES,[
+AX_ADD_AM_MACRO_STATIC([
+# Code coverage
+#
+# Optional:
+# - CODE_COVERAGE_DIRECTORY: Top-level directory for code coverage reporting.
+# Multiple directories may be specified, separated by whitespace.
+# (Default: \$(top_builddir))
+# - CODE_COVERAGE_OUTPUT_FILE: Filename and path for the .info file generated
+# by lcov for code coverage. (Default:
+# \$(PACKAGE_NAME)-\$(PACKAGE_VERSION)-coverage.info)
+# - CODE_COVERAGE_OUTPUT_DIRECTORY: Directory for generated code coverage
+# reports to be created. (Default:
+# \$(PACKAGE_NAME)-\$(PACKAGE_VERSION)-coverage)
+# - CODE_COVERAGE_BRANCH_COVERAGE: Set to 1 to enforce branch coverage,
+# set to 0 to disable it and leave empty to stay with the default.
+# (Default: empty)
+# - CODE_COVERAGE_LCOV_SHOPTS_DEFAULT: Extra options shared between both lcov
+# instances. (Default: based on $CODE_COVERAGE_BRANCH_COVERAGE)
+# - CODE_COVERAGE_LCOV_SHOPTS: Extra options to shared between both lcov
+# instances. (Default: $CODE_COVERAGE_LCOV_SHOPTS_DEFAULT)
+# - CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH: --gcov-tool pathtogcov
+# - CODE_COVERAGE_LCOV_OPTIONS_DEFAULT: Extra options to pass to the
+# collecting lcov instance. (Default: $CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH)
+# - CODE_COVERAGE_LCOV_OPTIONS: Extra options to pass to the collecting lcov
+# instance. (Default: $CODE_COVERAGE_LCOV_OPTIONS_DEFAULT)
+# - CODE_COVERAGE_LCOV_RMOPTS_DEFAULT: Extra options to pass to the filtering
+# lcov instance. (Default: empty)
+# - CODE_COVERAGE_LCOV_RMOPTS: Extra options to pass to the filtering lcov
+# instance. (Default: $CODE_COVERAGE_LCOV_RMOPTS_DEFAULT)
+# - CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT: Extra options to pass to the
+# genhtml instance. (Default: based on $CODE_COVERAGE_BRANCH_COVERAGE)
+# - CODE_COVERAGE_GENHTML_OPTIONS: Extra options to pass to the genhtml
+# instance. (Default: $CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT)
+# - CODE_COVERAGE_IGNORE_PATTERN: Extra glob pattern of files to ignore
+#
+# The generated report will be titled using the \$(PACKAGE_NAME) and
+# \$(PACKAGE_VERSION). In order to add the current git hash to the title,
+# use the git-version-gen script, available online.
+# Optional variables
+# run only on top dir
+if CODE_COVERAGE_ENABLED
+ ifeq (\$(abs_builddir), \$(abs_top_builddir))
+CODE_COVERAGE_DIRECTORY ?= \$(top_builddir)
+CODE_COVERAGE_OUTPUT_FILE ?= \$(PACKAGE_NAME)-\$(PACKAGE_VERSION)-coverage.info
+CODE_COVERAGE_OUTPUT_DIRECTORY ?= \$(PACKAGE_NAME)-\$(PACKAGE_VERSION)-coverage
+
+CODE_COVERAGE_BRANCH_COVERAGE ?=
+CODE_COVERAGE_LCOV_SHOPTS_DEFAULT ?= \$(if \$(CODE_COVERAGE_BRANCH_COVERAGE),\
+--rc lcov_branch_coverage=\$(CODE_COVERAGE_BRANCH_COVERAGE))
+CODE_COVERAGE_LCOV_SHOPTS ?= \$(CODE_COVERAGE_LCOV_SHOPTS_DEFAULT)
+CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH ?= --gcov-tool \"\$(GCOV)\"
+CODE_COVERAGE_LCOV_OPTIONS_DEFAULT ?= \$(CODE_COVERAGE_LCOV_OPTIONS_GCOVPATH)
+CODE_COVERAGE_LCOV_OPTIONS ?= \$(CODE_COVERAGE_LCOV_OPTIONS_DEFAULT)
+CODE_COVERAGE_LCOV_RMOPTS_DEFAULT ?=
+CODE_COVERAGE_LCOV_RMOPTS ?= \$(CODE_COVERAGE_LCOV_RMOPTS_DEFAULT)
+CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT ?=\
+\$(if \$(CODE_COVERAGE_BRANCH_COVERAGE),\
+--rc genhtml_branch_coverage=\$(CODE_COVERAGE_BRANCH_COVERAGE))
+CODE_COVERAGE_GENHTML_OPTIONS ?= \$(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT)
+CODE_COVERAGE_IGNORE_PATTERN ?=
+
+GITIGNOREFILES := \$(GITIGNOREFILES) \$(CODE_COVERAGE_OUTPUT_FILE) \$(CODE_COVERAGE_OUTPUT_DIRECTORY)
+code_coverage_v_lcov_cap = \$(code_coverage_v_lcov_cap_\$(V))
+code_coverage_v_lcov_cap_ = \$(code_coverage_v_lcov_cap_\$(AM_DEFAULT_VERBOSITY))
+code_coverage_v_lcov_cap_0 = @echo \" LCOV --capture\" \$(CODE_COVERAGE_OUTPUT_FILE);
+code_coverage_v_lcov_ign = \$(code_coverage_v_lcov_ign_\$(V))
+code_coverage_v_lcov_ign_ = \$(code_coverage_v_lcov_ign_\$(AM_DEFAULT_VERBOSITY))
+code_coverage_v_lcov_ign_0 = @echo \" LCOV --remove /tmp/*\" \$(CODE_COVERAGE_IGNORE_PATTERN);
+code_coverage_v_genhtml = \$(code_coverage_v_genhtml_\$(V))
+code_coverage_v_genhtml_ = \$(code_coverage_v_genhtml_\$(AM_DEFAULT_VERBOSITY))
+code_coverage_v_genhtml_0 = @echo \" GEN \" \"\$(CODE_COVERAGE_OUTPUT_DIRECTORY)\";
+code_coverage_quiet = \$(code_coverage_quiet_\$(V))
+code_coverage_quiet_ = \$(code_coverage_quiet_\$(AM_DEFAULT_VERBOSITY))
+code_coverage_quiet_0 = --quiet
+
+# sanitizes the test-name: replaces with underscores: dashes and dots
+code_coverage_sanitize = \$(subst -,_,\$(subst .,_,\$(1)))
+
+# Use recursive makes in order to ignore errors during check
+check-code-coverage:
+ -\$(AM_V_at)\$(MAKE) \$(AM_MAKEFLAGS) -k check
+ \$(AM_V_at)\$(MAKE) \$(AM_MAKEFLAGS) code-coverage-capture
+
+# Capture code coverage data
+code-coverage-capture: code-coverage-capture-hook
+ \$(code_coverage_v_lcov_cap)\$(LCOV) \$(code_coverage_quiet) \$(addprefix --directory ,\$(CODE_COVERAGE_DIRECTORY)) --capture --output-file \"\$(CODE_COVERAGE_OUTPUT_FILE).tmp\" --test-name \"\$(call code_coverage_sanitize,\$(PACKAGE_NAME)-\$(PACKAGE_VERSION))\" --no-checksum --compat-libtool \$(CODE_COVERAGE_LCOV_SHOPTS) \$(CODE_COVERAGE_LCOV_OPTIONS)
+ \$(code_coverage_v_lcov_ign)\$(LCOV) \$(code_coverage_quiet) \$(addprefix --directory ,\$(CODE_COVERAGE_DIRECTORY)) --remove \"\$(CODE_COVERAGE_OUTPUT_FILE).tmp\" \"/tmp/*\" \$(CODE_COVERAGE_IGNORE_PATTERN) --output-file \"\$(CODE_COVERAGE_OUTPUT_FILE)\" \$(CODE_COVERAGE_LCOV_SHOPTS) \$(CODE_COVERAGE_LCOV_RMOPTS)
+ -@rm -f \"\$(CODE_COVERAGE_OUTPUT_FILE).tmp\"
+ \$(code_coverage_v_genhtml)LANG=C \$(GENHTML) \$(code_coverage_quiet) \$(addprefix --prefix ,\$(CODE_COVERAGE_DIRECTORY)) --output-directory \"\$(CODE_COVERAGE_OUTPUT_DIRECTORY)\" --title \"\$(PACKAGE_NAME)-\$(PACKAGE_VERSION) Code Coverage\" --legend --show-details \"\$(CODE_COVERAGE_OUTPUT_FILE)\" \$(CODE_COVERAGE_GENHTML_OPTIONS)
+ @echo \"file://\$(abs_builddir)/\$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html\"
+
+code-coverage-clean:
+ -\$(LCOV) --directory \$(top_builddir) -z
+ -rm -rf \"\$(CODE_COVERAGE_OUTPUT_FILE)\" \"\$(CODE_COVERAGE_OUTPUT_FILE).tmp\" \"\$(CODE_COVERAGE_OUTPUT_DIRECTORY)\"
+ -find . \\( -name \"*.gcda\" -o -name \"*.gcno\" -o -name \"*.gcov\" \\) -delete
+
+code-coverage-dist-clean:
+
+A][M_DISTCHECK_CONFIGURE_FLAGS := \$(A][M_DISTCHECK_CONFIGURE_FLAGS) --disable-code-coverage
+ else # ifneq (\$(abs_builddir), \$(abs_top_builddir))
+check-code-coverage:
+
+code-coverage-capture: code-coverage-capture-hook
+
+code-coverage-clean:
+
+code-coverage-dist-clean:
+ endif # ifeq (\$(abs_builddir), \$(abs_top_builddir))
+else #! CODE_COVERAGE_ENABLED
+# Use recursive makes in order to ignore errors during check
+check-code-coverage:
+ @echo \"Need to reconfigure with --enable-code-coverage\"
+# Capture code coverage data
+code-coverage-capture: code-coverage-capture-hook
+ @echo \"Need to reconfigure with --enable-code-coverage\"
+
+code-coverage-clean:
+
+code-coverage-dist-clean:
+
+endif #CODE_COVERAGE_ENABLED
+# Hook rule executed before code-coverage-capture, overridable by the user
+code-coverage-capture-hook:
+
+.PHONY: check-code-coverage code-coverage-capture code-coverage-dist-clean code-coverage-clean code-coverage-capture-hook
+])
+])
+
+AC_DEFUN([_AX_CODE_COVERAGE_ENABLED],[
+ AX_CHECK_GNU_MAKE([],[AC_MSG_ERROR([not using GNU make that is needed for coverage])])
+ AC_REQUIRE([AX_ADD_AM_MACRO_STATIC])
+ # check for gcov
+ AC_CHECK_TOOL([GCOV],
+ [$_AX_CODE_COVERAGE_GCOV_PROG_WITH],
+ [:])
+ AS_IF([test "X$GCOV" = "X:"],
+ [AC_MSG_ERROR([gcov is needed to do coverage])])
+ AC_SUBST([GCOV])
+
+ dnl Check if gcc is being used
+ AS_IF([ test "$GCC" = "no" ], [
+ AC_MSG_ERROR([not compiling with gcc, which is required for gcov code coverage])
+ ])
+
+ AC_CHECK_PROG([LCOV], [lcov], [lcov])
+ AC_CHECK_PROG([GENHTML], [genhtml], [genhtml])
+
+ AS_IF([ test x"$LCOV" = x ], [
+ AC_MSG_ERROR([To enable code coverage reporting you must have lcov installed])
+ ])
+
+ AS_IF([ test x"$GENHTML" = x ], [
+ AC_MSG_ERROR([Could not find genhtml from the lcov package])
+ ])
+
+ dnl Build the code coverage flags
+ dnl Define CODE_COVERAGE_LDFLAGS for backwards compatibility
+ CODE_COVERAGE_CPPFLAGS="-DNDEBUG"
+ CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage"
+ CODE_COVERAGE_CXXFLAGS="-O0 -g -fprofile-arcs -ftest-coverage"
+ CODE_COVERAGE_LIBS="-lgcov"
+
+ AC_SUBST([CODE_COVERAGE_CPPFLAGS])
+ AC_SUBST([CODE_COVERAGE_CFLAGS])
+ AC_SUBST([CODE_COVERAGE_CXXFLAGS])
+ AC_SUBST([CODE_COVERAGE_LIBS])
+])
+
+AC_DEFUN([AX_CODE_COVERAGE],[
+ dnl Check for --enable-code-coverage
+
+ # allow to override gcov location
+ AC_ARG_WITH([gcov],
+ [AS_HELP_STRING([--with-gcov[=GCOV]], [use given GCOV for coverage (GCOV=gcov).])],
+ [_AX_CODE_COVERAGE_GCOV_PROG_WITH=$with_gcov],
+ [_AX_CODE_COVERAGE_GCOV_PROG_WITH=gcov])
+
+ AC_MSG_CHECKING([whether to build with code coverage support])
+ AC_ARG_ENABLE([code-coverage],
+ AS_HELP_STRING([--enable-code-coverage],
+ [Whether to enable code coverage support]),,
+ enable_code_coverage=no)
+
+ AM_CONDITIONAL([CODE_COVERAGE_ENABLED], [test "x$enable_code_coverage" = xyes])
+ AC_SUBST([CODE_COVERAGE_ENABLED], [$enable_code_coverage])
+ AC_MSG_RESULT($enable_code_coverage)
+
+ AS_IF([ test "x$enable_code_coverage" = xyes ], [
+ _AX_CODE_COVERAGE_ENABLED
+ ])
+
+ _AX_CODE_COVERAGE_RULES
+])
diff --git a/dviware/dvisvgm/m4/ax_cxx_compile_stdcxx.m4 b/dviware/dvisvgm/m4/ax_cxx_compile_stdcxx.m4
new file mode 100644
index 0000000000..a3d964c699
--- /dev/null
+++ b/dviware/dvisvgm/m4/ax_cxx_compile_stdcxx.m4
@@ -0,0 +1,1009 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_CXX_COMPILE_STDCXX(VERSION, [ext|noext], [mandatory|optional])
+#
+# DESCRIPTION
+#
+# Check for baseline language coverage in the compiler for the specified
+# version of the C++ standard. If necessary, add switches to CXX and
+# CXXCPP to enable support. VERSION may be '11', '14', '17', or '20' for
+# the respective C++ standard version.
+#
+# The second argument, if specified, indicates whether you insist on an
+# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
+# -std=c++11). If neither is specified, you get whatever works, with
+# preference for no added switch, and then for an extended mode.
+#
+# The third argument, if specified 'mandatory' or if left unspecified,
+# indicates that baseline support for the specified C++ standard is
+# required and that the macro should error out if no mode with that
+# support is found. If specified 'optional', then configuration proceeds
+# regardless, after defining HAVE_CXX${VERSION} if and only if a
+# supporting mode is found.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
+# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
+# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
+# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>
+# Copyright (c) 2015 Paul Norman <penorman@mac.com>
+# Copyright (c) 2015 Moritz Klammler <moritz@klammler.eu>
+# Copyright (c) 2016, 2018 Krzesimir Nowak <qdlacz@gmail.com>
+# Copyright (c) 2019 Enji Cooper <yaneurabeya@gmail.com>
+# Copyright (c) 2020 Jason Merrill <jason@redhat.com>
+# Copyright (c) 2021 Jörn Heusipp <osmanx@problemloesungsmaschine.de>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 15
+
+dnl This macro is based on the code from the AX_CXX_COMPILE_STDCXX_11 macro
+dnl (serial version number 13).
+
+AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl
+ m4_if([$1], [11], [ax_cxx_compile_alternatives="11 0x"],
+ [$1], [14], [ax_cxx_compile_alternatives="14 1y"],
+ [$1], [17], [ax_cxx_compile_alternatives="17 1z"],
+ [$1], [20], [ax_cxx_compile_alternatives="20"],
+ [m4_fatal([invalid first argument `$1' to AX_CXX_COMPILE_STDCXX])])dnl
+ m4_if([$2], [], [],
+ [$2], [ext], [],
+ [$2], [noext], [],
+ [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX])])dnl
+ m4_if([$3], [], [ax_cxx_compile_cxx$1_required=true],
+ [$3], [mandatory], [ax_cxx_compile_cxx$1_required=true],
+ [$3], [optional], [ax_cxx_compile_cxx$1_required=false],
+ [m4_fatal([invalid third argument `$3' to AX_CXX_COMPILE_STDCXX])])
+ AC_LANG_PUSH([C++])dnl
+ ac_success=no
+
+ m4_if([$2], [], [dnl
+ AC_CACHE_CHECK(whether $CXX supports C++$1 features by default,
+ ax_cv_cxx_compile_cxx$1,
+ [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
+ [ax_cv_cxx_compile_cxx$1=yes],
+ [ax_cv_cxx_compile_cxx$1=no])])
+ if test x$ax_cv_cxx_compile_cxx$1 = xyes; then
+ ac_success=yes
+ fi])
+
+ m4_if([$2], [noext], [], [dnl
+ if test x$ac_success = xno; then
+ for alternative in ${ax_cxx_compile_alternatives}; do
+ switch="-std=gnu++${alternative}"
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch,
+ $cachevar,
+ [ac_save_CXX="$CXX"
+ CXX="$CXX $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXX="$ac_save_CXX"])
+ if eval test x\$$cachevar = xyes; then
+ CXX="$CXX $switch"
+ if test -n "$CXXCPP" ; then
+ CXXCPP="$CXXCPP $switch"
+ fi
+ ac_success=yes
+ break
+ fi
+ done
+ fi])
+
+ m4_if([$2], [ext], [], [dnl
+ if test x$ac_success = xno; then
+ dnl HP's aCC needs +std=c++11 according to:
+ dnl http://h21007.www2.hp.com/portal/download/files/unprot/aCxx/PDF_Release_Notes/769149-001.pdf
+ dnl Cray's crayCC needs "-h std=c++11"
+ for alternative in ${ax_cxx_compile_alternatives}; do
+ for switch in -std=c++${alternative} +std=c++${alternative} "-h std=c++${alternative}"; do
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch,
+ $cachevar,
+ [ac_save_CXX="$CXX"
+ CXX="$CXX $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXX="$ac_save_CXX"])
+ if eval test x\$$cachevar = xyes; then
+ CXX="$CXX $switch"
+ if test -n "$CXXCPP" ; then
+ CXXCPP="$CXXCPP $switch"
+ fi
+ ac_success=yes
+ break
+ fi
+ done
+ if test x$ac_success = xyes; then
+ break
+ fi
+ done
+ fi])
+ AC_LANG_POP([C++])
+ if test x$ax_cxx_compile_cxx$1_required = xtrue; then
+ if test x$ac_success = xno; then
+ AC_MSG_ERROR([*** A compiler with support for C++$1 language features is required.])
+ fi
+ fi
+ if test x$ac_success = xno; then
+ HAVE_CXX$1=0
+ AC_MSG_NOTICE([No compiler with C++$1 support was found])
+ else
+ HAVE_CXX$1=1
+ AC_DEFINE(HAVE_CXX$1,1,
+ [define if the compiler supports basic C++$1 syntax])
+ fi
+ AC_SUBST(HAVE_CXX$1)
+])
+
+
+dnl Test body for checking C++11 support
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_11],
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
+)
+
+dnl Test body for checking C++14 support
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_14],
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
+)
+
+dnl Test body for checking C++17 support
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_17],
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_17
+)
+
+dnl Test body for checking C++20 support
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_20],
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_17
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_20
+)
+
+
+dnl Tests for new features in C++11
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_11], [[
+
+// If the compiler admits that it is not ready for C++11, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+// MSVC always sets __cplusplus to 199711L in older versions; newer versions
+// only set it correctly if /Zc:__cplusplus is specified as well as a
+// /std:c++NN switch:
+// https://devblogs.microsoft.com/cppblog/msvc-now-correctly-reports-__cplusplus/
+#elif __cplusplus < 201103L && !defined _MSC_VER
+
+#error "This is not a C++11 compiler"
+
+#else
+
+namespace cxx11
+{
+
+ namespace test_static_assert
+ {
+
+ template <typename T>
+ struct check
+ {
+ static_assert(sizeof(int) <= sizeof(T), "not big enough");
+ };
+
+ }
+
+ namespace test_final_override
+ {
+
+ struct Base
+ {
+ virtual ~Base() {}
+ virtual void f() {}
+ };
+
+ struct Derived : public Base
+ {
+ virtual ~Derived() override {}
+ virtual void f() override {}
+ };
+
+ }
+
+ namespace test_double_right_angle_brackets
+ {
+
+ template < typename T >
+ struct check {};
+
+ typedef check<void> single_type;
+ typedef check<check<void>> double_type;
+ typedef check<check<check<void>>> triple_type;
+ typedef check<check<check<check<void>>>> quadruple_type;
+
+ }
+
+ namespace test_decltype
+ {
+
+ int
+ f()
+ {
+ int a = 1;
+ decltype(a) b = 2;
+ return a + b;
+ }
+
+ }
+
+ namespace test_type_deduction
+ {
+
+ template < typename T1, typename T2 >
+ struct is_same
+ {
+ static const bool value = false;
+ };
+
+ template < typename T >
+ struct is_same<T, T>
+ {
+ static const bool value = true;
+ };
+
+ template < typename T1, typename T2 >
+ auto
+ add(T1 a1, T2 a2) -> decltype(a1 + a2)
+ {
+ return a1 + a2;
+ }
+
+ int
+ test(const int c, volatile int v)
+ {
+ static_assert(is_same<int, decltype(0)>::value == true, "");
+ static_assert(is_same<int, decltype(c)>::value == false, "");
+ static_assert(is_same<int, decltype(v)>::value == false, "");
+ auto ac = c;
+ auto av = v;
+ auto sumi = ac + av + 'x';
+ auto sumf = ac + av + 1.0;
+ static_assert(is_same<int, decltype(ac)>::value == true, "");
+ static_assert(is_same<int, decltype(av)>::value == true, "");
+ static_assert(is_same<int, decltype(sumi)>::value == true, "");
+ static_assert(is_same<int, decltype(sumf)>::value == false, "");
+ static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
+ return (sumf > 0.0) ? sumi : add(c, v);
+ }
+
+ }
+
+ namespace test_noexcept
+ {
+
+ int f() { return 0; }
+ int g() noexcept { return 0; }
+
+ static_assert(noexcept(f()) == false, "");
+ static_assert(noexcept(g()) == true, "");
+
+ }
+
+ namespace test_constexpr
+ {
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
+ {
+ return *s ? strlen_c_r(s + 1, acc + 1) : acc;
+ }
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c(const CharT *const s) noexcept
+ {
+ return strlen_c_r(s, 0UL);
+ }
+
+ static_assert(strlen_c("") == 0UL, "");
+ static_assert(strlen_c("1") == 1UL, "");
+ static_assert(strlen_c("example") == 7UL, "");
+ static_assert(strlen_c("another\0example") == 7UL, "");
+
+ }
+
+ namespace test_rvalue_references
+ {
+
+ template < int N >
+ struct answer
+ {
+ static constexpr int value = N;
+ };
+
+ answer<1> f(int&) { return answer<1>(); }
+ answer<2> f(const int&) { return answer<2>(); }
+ answer<3> f(int&&) { return answer<3>(); }
+
+ void
+ test()
+ {
+ int i = 0;
+ const int c = 0;
+ static_assert(decltype(f(i))::value == 1, "");
+ static_assert(decltype(f(c))::value == 2, "");
+ static_assert(decltype(f(0))::value == 3, "");
+ }
+
+ }
+
+ namespace test_uniform_initialization
+ {
+
+ struct test
+ {
+ static const int zero {};
+ static const int one {1};
+ };
+
+ static_assert(test::zero == 0, "");
+ static_assert(test::one == 1, "");
+
+ }
+
+ namespace test_lambdas
+ {
+
+ void
+ test1()
+ {
+ auto lambda1 = [](){};
+ auto lambda2 = lambda1;
+ lambda1();
+ lambda2();
+ }
+
+ int
+ test2()
+ {
+ auto a = [](int i, int j){ return i + j; }(1, 2);
+ auto b = []() -> int { return '0'; }();
+ auto c = [=](){ return a + b; }();
+ auto d = [&](){ return c; }();
+ auto e = [a, &b](int x) mutable {
+ const auto identity = [](int y){ return y; };
+ for (auto i = 0; i < a; ++i)
+ a += b--;
+ return x + identity(a + b);
+ }(0);
+ return a + b + c + d + e;
+ }
+
+ int
+ test3()
+ {
+ const auto nullary = [](){ return 0; };
+ const auto unary = [](int x){ return x; };
+ using nullary_t = decltype(nullary);
+ using unary_t = decltype(unary);
+ const auto higher1st = [](nullary_t f){ return f(); };
+ const auto higher2nd = [unary](nullary_t f1){
+ return [unary, f1](unary_t f2){ return f2(unary(f1())); };
+ };
+ return higher1st(nullary) + higher2nd(nullary)(unary);
+ }
+
+ }
+
+ namespace test_variadic_templates
+ {
+
+ template <int...>
+ struct sum;
+
+ template <int N0, int... N1toN>
+ struct sum<N0, N1toN...>
+ {
+ static constexpr auto value = N0 + sum<N1toN...>::value;
+ };
+
+ template <>
+ struct sum<>
+ {
+ static constexpr auto value = 0;
+ };
+
+ static_assert(sum<>::value == 0, "");
+ static_assert(sum<1>::value == 1, "");
+ static_assert(sum<23>::value == 23, "");
+ static_assert(sum<1, 2>::value == 3, "");
+ static_assert(sum<5, 5, 11>::value == 21, "");
+ static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
+
+ }
+
+ // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
+ // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
+ // because of this.
+ namespace test_template_alias_sfinae
+ {
+
+ struct foo {};
+
+ template<typename T>
+ using member = typename T::member_type;
+
+ template<typename T>
+ void func(...) {}
+
+ template<typename T>
+ void func(member<T>*) {}
+
+ void test();
+
+ void test() { func<foo>(0); }
+
+ }
+
+} // namespace cxx11
+
+#endif // __cplusplus >= 201103L
+
+]])
+
+
+dnl Tests for new features in C++14
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_14], [[
+
+// If the compiler admits that it is not ready for C++14, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 201402L && !defined _MSC_VER
+
+#error "This is not a C++14 compiler"
+
+#else
+
+namespace cxx14
+{
+
+ namespace test_polymorphic_lambdas
+ {
+
+ int
+ test()
+ {
+ const auto lambda = [](auto&&... args){
+ const auto istiny = [](auto x){
+ return (sizeof(x) == 1UL) ? 1 : 0;
+ };
+ const int aretiny[] = { istiny(args)... };
+ return aretiny[0];
+ };
+ return lambda(1, 1L, 1.0f, '1');
+ }
+
+ }
+
+ namespace test_binary_literals
+ {
+
+ constexpr auto ivii = 0b0000000000101010;
+ static_assert(ivii == 42, "wrong value");
+
+ }
+
+ namespace test_generalized_constexpr
+ {
+
+ template < typename CharT >
+ constexpr unsigned long
+ strlen_c(const CharT *const s) noexcept
+ {
+ auto length = 0UL;
+ for (auto p = s; *p; ++p)
+ ++length;
+ return length;
+ }
+
+ static_assert(strlen_c("") == 0UL, "");
+ static_assert(strlen_c("x") == 1UL, "");
+ static_assert(strlen_c("test") == 4UL, "");
+ static_assert(strlen_c("another\0test") == 7UL, "");
+
+ }
+
+ namespace test_lambda_init_capture
+ {
+
+ int
+ test()
+ {
+ auto x = 0;
+ const auto lambda1 = [a = x](int b){ return a + b; };
+ const auto lambda2 = [a = lambda1(x)](){ return a; };
+ return lambda2();
+ }
+
+ }
+
+ namespace test_digit_separators
+ {
+
+ constexpr auto ten_million = 100'000'000;
+ static_assert(ten_million == 100000000, "");
+
+ }
+
+ namespace test_return_type_deduction
+ {
+
+ auto f(int& x) { return x; }
+ decltype(auto) g(int& x) { return x; }
+
+ template < typename T1, typename T2 >
+ struct is_same
+ {
+ static constexpr auto value = false;
+ };
+
+ template < typename T >
+ struct is_same<T, T>
+ {
+ static constexpr auto value = true;
+ };
+
+ int
+ test()
+ {
+ auto x = 0;
+ static_assert(is_same<int, decltype(f(x))>::value, "");
+ static_assert(is_same<int&, decltype(g(x))>::value, "");
+ return x;
+ }
+
+ }
+
+} // namespace cxx14
+
+#endif // __cplusplus >= 201402L
+
+]])
+
+
+dnl Tests for new features in C++17
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_17], [[
+
+// If the compiler admits that it is not ready for C++17, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 201703L && !defined _MSC_VER
+
+#error "This is not a C++17 compiler"
+
+#else
+
+#include <initializer_list>
+#include <utility>
+#include <type_traits>
+
+namespace cxx17
+{
+
+ namespace test_constexpr_lambdas
+ {
+
+ constexpr int foo = [](){return 42;}();
+
+ }
+
+ namespace test::nested_namespace::definitions
+ {
+
+ }
+
+ namespace test_fold_expression
+ {
+
+ template<typename... Args>
+ int multiply(Args... args)
+ {
+ return (args * ... * 1);
+ }
+
+ template<typename... Args>
+ bool all(Args... args)
+ {
+ return (args && ...);
+ }
+
+ }
+
+ namespace test_extended_static_assert
+ {
+
+ static_assert (true);
+
+ }
+
+ namespace test_auto_brace_init_list
+ {
+
+ auto foo = {5};
+ auto bar {5};
+
+ static_assert(std::is_same<std::initializer_list<int>, decltype(foo)>::value);
+ static_assert(std::is_same<int, decltype(bar)>::value);
+ }
+
+ namespace test_typename_in_template_template_parameter
+ {
+
+ template<template<typename> typename X> struct D;
+
+ }
+
+ namespace test_fallthrough_nodiscard_maybe_unused_attributes
+ {
+
+ int f1()
+ {
+ return 42;
+ }
+
+ [[nodiscard]] int f2()
+ {
+ [[maybe_unused]] auto unused = f1();
+
+ switch (f1())
+ {
+ case 17:
+ f1();
+ [[fallthrough]];
+ case 42:
+ f1();
+ }
+ return f1();
+ }
+
+ }
+
+ namespace test_extended_aggregate_initialization
+ {
+
+ struct base1
+ {
+ int b1, b2 = 42;
+ };
+
+ struct base2
+ {
+ base2() {
+ b3 = 42;
+ }
+ int b3;
+ };
+
+ struct derived : base1, base2
+ {
+ int d;
+ };
+
+ derived d1 {{1, 2}, {}, 4}; // full initialization
+ derived d2 {{}, {}, 4}; // value-initialized bases
+
+ }
+
+ namespace test_general_range_based_for_loop
+ {
+
+ struct iter
+ {
+ int i;
+
+ int& operator* ()
+ {
+ return i;
+ }
+
+ const int& operator* () const
+ {
+ return i;
+ }
+
+ iter& operator++()
+ {
+ ++i;
+ return *this;
+ }
+ };
+
+ struct sentinel
+ {
+ int i;
+ };
+
+ bool operator== (const iter& i, const sentinel& s)
+ {
+ return i.i == s.i;
+ }
+
+ bool operator!= (const iter& i, const sentinel& s)
+ {
+ return !(i == s);
+ }
+
+ struct range
+ {
+ iter begin() const
+ {
+ return {0};
+ }
+
+ sentinel end() const
+ {
+ return {5};
+ }
+ };
+
+ void f()
+ {
+ range r {};
+
+ for (auto i : r)
+ {
+ [[maybe_unused]] auto v = i;
+ }
+ }
+
+ }
+
+ namespace test_lambda_capture_asterisk_this_by_value
+ {
+
+ struct t
+ {
+ int i;
+ int foo()
+ {
+ return [*this]()
+ {
+ return i;
+ }();
+ }
+ };
+
+ }
+
+ namespace test_enum_class_construction
+ {
+
+ enum class byte : unsigned char
+ {};
+
+ byte foo {42};
+
+ }
+
+ namespace test_constexpr_if
+ {
+
+ template <bool cond>
+ int f ()
+ {
+ if constexpr(cond)
+ {
+ return 13;
+ }
+ else
+ {
+ return 42;
+ }
+ }
+
+ }
+
+ namespace test_selection_statement_with_initializer
+ {
+
+ int f()
+ {
+ return 13;
+ }
+
+ int f2()
+ {
+ if (auto i = f(); i > 0)
+ {
+ return 3;
+ }
+
+ switch (auto i = f(); i + 4)
+ {
+ case 17:
+ return 2;
+
+ default:
+ return 1;
+ }
+ }
+
+ }
+
+ namespace test_template_argument_deduction_for_class_templates
+ {
+
+ template <typename T1, typename T2>
+ struct pair
+ {
+ pair (T1 p1, T2 p2)
+ : m1 {p1},
+ m2 {p2}
+ {}
+
+ T1 m1;
+ T2 m2;
+ };
+
+ void f()
+ {
+ [[maybe_unused]] auto p = pair{13, 42u};
+ }
+
+ }
+
+ namespace test_non_type_auto_template_parameters
+ {
+
+ template <auto n>
+ struct B
+ {};
+
+ B<5> b1;
+ B<'a'> b2;
+
+ }
+
+ namespace test_structured_bindings
+ {
+
+ int arr[2] = { 1, 2 };
+ std::pair<int, int> pr = { 1, 2 };
+
+ auto f1() -> int(&)[2]
+ {
+ return arr;
+ }
+
+ auto f2() -> std::pair<int, int>&
+ {
+ return pr;
+ }
+
+ struct S
+ {
+ int x1 : 2;
+ volatile double y1;
+ };
+
+ S f3()
+ {
+ return {};
+ }
+
+ auto [ x1, y1 ] = f1();
+ auto& [ xr1, yr1 ] = f1();
+ auto [ x2, y2 ] = f2();
+ auto& [ xr2, yr2 ] = f2();
+ const auto [ x3, y3 ] = f3();
+
+ }
+
+ namespace test_exception_spec_type_system
+ {
+
+ struct Good {};
+ struct Bad {};
+
+ void g1() noexcept;
+ void g2();
+
+ template<typename T>
+ Bad
+ f(T*, T*);
+
+ template<typename T1, typename T2>
+ Good
+ f(T1*, T2*);
+
+ static_assert (std::is_same_v<Good, decltype(f(g1, g2))>);
+
+ }
+
+ namespace test_inline_variables
+ {
+
+ template<class T> void f(T)
+ {}
+
+ template<class T> inline T g(T)
+ {
+ return T{};
+ }
+
+ template<> inline void f<>(int)
+ {}
+
+ template<> int g<>(int)
+ {
+ return 5;
+ }
+
+ }
+
+} // namespace cxx17
+
+#endif // __cplusplus < 201703L && !defined _MSC_VER
+
+]])
+
+
+dnl Tests for new features in C++20
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_20], [[
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 202002L && !defined _MSC_VER
+
+#error "This is not a C++20 compiler"
+
+#else
+
+#include <version>
+
+namespace cxx20
+{
+
+// As C++20 supports feature test macros in the standard, there is no
+// immediate need to actually test for feature availability on the
+// Autoconf side.
+
+} // namespace cxx20
+
+#endif // __cplusplus < 202002L && !defined _MSC_VER
+
+]])
diff --git a/dviware/dvisvgm/m4/ax_file_escapes.m4 b/dviware/dvisvgm/m4/ax_file_escapes.m4
new file mode 100644
index 0000000000..a86fdc326b
--- /dev/null
+++ b/dviware/dvisvgm/m4/ax_file_escapes.m4
@@ -0,0 +1,30 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_file_escapes.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_FILE_ESCAPES
+#
+# DESCRIPTION
+#
+# Writes the specified data to the specified file.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Tom Howard <tomhoward@users.sf.net>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 8
+
+AC_DEFUN([AX_FILE_ESCAPES],[
+AX_DOLLAR="\$"
+AX_SRB="\\135"
+AX_SLB="\\133"
+AX_BS="\\\\"
+AX_DQ="\""
+])
diff --git a/dviware/dvisvgm/m4/ax_gcc_builtin.m4 b/dviware/dvisvgm/m4/ax_gcc_builtin.m4
new file mode 100644
index 0000000000..314422e35b
--- /dev/null
+++ b/dviware/dvisvgm/m4/ax_gcc_builtin.m4
@@ -0,0 +1,170 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_gcc_builtin.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_GCC_BUILTIN(BUILTIN)
+#
+# DESCRIPTION
+#
+# This macro checks if the compiler supports one of GCC's built-in
+# functions; many other compilers also provide those same built-ins.
+#
+# The BUILTIN parameter is the name of the built-in function.
+#
+# If BUILTIN is supported define HAVE_<BUILTIN>. Keep in mind that since
+# builtins usually start with two underscores they will be copied over
+# into the HAVE_<BUILTIN> definition (e.g. HAVE___BUILTIN_EXPECT for
+# __builtin_expect()).
+#
+# The macro caches its result in the ax_cv_have_<BUILTIN> variable (e.g.
+# ax_cv_have___builtin_expect).
+#
+# The macro currently supports the following built-in functions:
+#
+# __builtin_assume_aligned
+# __builtin_bswap16
+# __builtin_bswap32
+# __builtin_bswap64
+# __builtin_choose_expr
+# __builtin___clear_cache
+# __builtin_clrsb
+# __builtin_clrsbl
+# __builtin_clrsbll
+# __builtin_clz
+# __builtin_clzl
+# __builtin_clzll
+# __builtin_complex
+# __builtin_constant_p
+# __builtin_ctz
+# __builtin_ctzl
+# __builtin_ctzll
+# __builtin_expect
+# __builtin_ffs
+# __builtin_ffsl
+# __builtin_ffsll
+# __builtin_fpclassify
+# __builtin_huge_val
+# __builtin_huge_valf
+# __builtin_huge_vall
+# __builtin_inf
+# __builtin_infd128
+# __builtin_infd32
+# __builtin_infd64
+# __builtin_inff
+# __builtin_infl
+# __builtin_isinf_sign
+# __builtin_nan
+# __builtin_nand128
+# __builtin_nand32
+# __builtin_nand64
+# __builtin_nanf
+# __builtin_nanl
+# __builtin_nans
+# __builtin_nansf
+# __builtin_nansl
+# __builtin_object_size
+# __builtin_parity
+# __builtin_parityl
+# __builtin_parityll
+# __builtin_popcount
+# __builtin_popcountl
+# __builtin_popcountll
+# __builtin_powi
+# __builtin_powif
+# __builtin_powil
+# __builtin_prefetch
+# __builtin_trap
+# __builtin_types_compatible_p
+# __builtin_unreachable
+#
+# Unsupported built-ins will be tested with an empty parameter set and the
+# result of the check might be wrong or meaningless so use with care.
+#
+# LICENSE
+#
+# Copyright (c) 2013 Gabriele Svelto <gabriele.svelto@gmail.com>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 6
+
+AC_DEFUN([AX_GCC_BUILTIN], [
+ AS_VAR_PUSHDEF([ac_var], [ax_cv_have_$1])
+
+ AC_CACHE_CHECK([for $1], [ac_var], [
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([], [
+ m4_case([$1],
+ [__builtin_assume_aligned], [$1("", 0)],
+ [__builtin_bswap16], [$1(0)],
+ [__builtin_bswap32], [$1(0)],
+ [__builtin_bswap64], [$1(0)],
+ [__builtin_choose_expr], [$1(0, 0, 0)],
+ [__builtin___clear_cache], [$1("", "")],
+ [__builtin_clrsb], [$1(0)],
+ [__builtin_clrsbl], [$1(0)],
+ [__builtin_clrsbll], [$1(0)],
+ [__builtin_clz], [$1(0)],
+ [__builtin_clzl], [$1(0)],
+ [__builtin_clzll], [$1(0)],
+ [__builtin_complex], [$1(0.0, 0.0)],
+ [__builtin_constant_p], [$1(0)],
+ [__builtin_ctz], [$1(0)],
+ [__builtin_ctzl], [$1(0)],
+ [__builtin_ctzll], [$1(0)],
+ [__builtin_expect], [$1(0, 0)],
+ [__builtin_ffs], [$1(0)],
+ [__builtin_ffsl], [$1(0)],
+ [__builtin_ffsll], [$1(0)],
+ [__builtin_fpclassify], [$1(0, 1, 2, 3, 4, 0.0)],
+ [__builtin_huge_val], [$1()],
+ [__builtin_huge_valf], [$1()],
+ [__builtin_huge_vall], [$1()],
+ [__builtin_inf], [$1()],
+ [__builtin_infd128], [$1()],
+ [__builtin_infd32], [$1()],
+ [__builtin_infd64], [$1()],
+ [__builtin_inff], [$1()],
+ [__builtin_infl], [$1()],
+ [__builtin_isinf_sign], [$1(0.0)],
+ [__builtin_nan], [$1("")],
+ [__builtin_nand128], [$1("")],
+ [__builtin_nand32], [$1("")],
+ [__builtin_nand64], [$1("")],
+ [__builtin_nanf], [$1("")],
+ [__builtin_nanl], [$1("")],
+ [__builtin_nans], [$1("")],
+ [__builtin_nansf], [$1("")],
+ [__builtin_nansl], [$1("")],
+ [__builtin_object_size], [$1("", 0)],
+ [__builtin_parity], [$1(0)],
+ [__builtin_parityl], [$1(0)],
+ [__builtin_parityll], [$1(0)],
+ [__builtin_popcount], [$1(0)],
+ [__builtin_popcountl], [$1(0)],
+ [__builtin_popcountll], [$1(0)],
+ [__builtin_powi], [$1(0, 0)],
+ [__builtin_powif], [$1(0, 0)],
+ [__builtin_powil], [$1(0, 0)],
+ [__builtin_prefetch], [$1("")],
+ [__builtin_trap], [$1()],
+ [__builtin_types_compatible_p], [$1(int, int)],
+ [__builtin_unreachable], [$1()],
+ [m4_warn([syntax], [Unsupported built-in $1, the test may fail])
+ $1()]
+ )
+ ])],
+ [AS_VAR_SET([ac_var], [yes])],
+ [AS_VAR_SET([ac_var], [no])])
+ ])
+
+ AS_IF([test yes = AS_VAR_GET([ac_var])],
+ [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_$1), 1,
+ [Define to 1 if the system has the `$1' built-in function])], [])
+
+ AS_VAR_POPDEF([ac_var])
+])
diff --git a/dviware/dvisvgm/m4/libtool.m4 b/dviware/dvisvgm/m4/libtool.m4
new file mode 100644
index 0000000000..e3adedad63
--- /dev/null
+++ b/dviware/dvisvgm/m4/libtool.m4
@@ -0,0 +1,8403 @@
+# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
+#
+# Copyright (C) 1996-2001, 2003-2019, 2021-2022 Free Software
+# Foundation, Inc.
+# Written by Gordon Matzigkeit, 1996
+#
+# This file is free software; the Free Software Foundation gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+
+m4_define([_LT_COPYING], [dnl
+# Copyright (C) 2014 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions. There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# GNU Libtool is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of of the License, or
+# (at your option) any later version.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program or library that is built
+# using GNU Libtool, you may include this file under the same
+# distribution terms that you use for the rest of that program.
+#
+# GNU Libtool is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+])
+
+# serial 59 LT_INIT
+
+
+# LT_PREREQ(VERSION)
+# ------------------
+# Complain and exit if this libtool version is less that VERSION.
+m4_defun([LT_PREREQ],
+[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
+ [m4_default([$3],
+ [m4_fatal([Libtool version $1 or higher is required],
+ 63)])],
+ [$2])])
+
+
+# _LT_CHECK_BUILDDIR
+# ------------------
+# Complain if the absolute build directory name contains unusual characters
+m4_defun([_LT_CHECK_BUILDDIR],
+[case `pwd` in
+ *\ * | *\ *)
+ AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
+esac
+])
+
+
+# LT_INIT([OPTIONS])
+# ------------------
+AC_DEFUN([LT_INIT],
+[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
+AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
+AC_BEFORE([$0], [LT_LANG])dnl
+AC_BEFORE([$0], [LT_OUTPUT])dnl
+AC_BEFORE([$0], [LTDL_INIT])dnl
+m4_require([_LT_CHECK_BUILDDIR])dnl
+
+dnl Autoconf doesn't catch unexpanded LT_ macros by default:
+m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
+m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
+dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
+dnl unless we require an AC_DEFUNed macro:
+AC_REQUIRE([LTOPTIONS_VERSION])dnl
+AC_REQUIRE([LTSUGAR_VERSION])dnl
+AC_REQUIRE([LTVERSION_VERSION])dnl
+AC_REQUIRE([LTOBSOLETE_VERSION])dnl
+m4_require([_LT_PROG_LTMAIN])dnl
+
+_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
+
+dnl Parse OPTIONS
+_LT_SET_OPTIONS([$0], [$1])
+
+# This can be used to rebuild libtool when needed
+LIBTOOL_DEPS=$ltmain
+
+# Always use our own libtool.
+LIBTOOL='$(SHELL) $(top_builddir)/libtool'
+AC_SUBST(LIBTOOL)dnl
+
+_LT_SETUP
+
+# Only expand once:
+m4_define([LT_INIT])
+])# LT_INIT
+
+# Old names:
+AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
+AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
+dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
+
+
+# _LT_PREPARE_CC_BASENAME
+# -----------------------
+m4_defun([_LT_PREPARE_CC_BASENAME], [
+# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
+func_cc_basename ()
+{
+ for cc_temp in @S|@*""; do
+ case $cc_temp in
+ compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
+ distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
+ \-*) ;;
+ *) break;;
+ esac
+ done
+ func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+}
+])# _LT_PREPARE_CC_BASENAME
+
+
+# _LT_CC_BASENAME(CC)
+# -------------------
+# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
+# but that macro is also expanded into generated libtool script, which
+# arranges for $SED and $ECHO to be set by different means.
+m4_defun([_LT_CC_BASENAME],
+[m4_require([_LT_PREPARE_CC_BASENAME])dnl
+AC_REQUIRE([_LT_DECL_SED])dnl
+AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
+func_cc_basename $1
+cc_basename=$func_cc_basename_result
+])
+
+
+# _LT_FILEUTILS_DEFAULTS
+# ----------------------
+# It is okay to use these file commands and assume they have been set
+# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
+m4_defun([_LT_FILEUTILS_DEFAULTS],
+[: ${CP="cp -f"}
+: ${MV="mv -f"}
+: ${RM="rm -f"}
+])# _LT_FILEUTILS_DEFAULTS
+
+
+# _LT_SETUP
+# ---------
+m4_defun([_LT_SETUP],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
+AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
+
+_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
+dnl
+_LT_DECL([], [host_alias], [0], [The host system])dnl
+_LT_DECL([], [host], [0])dnl
+_LT_DECL([], [host_os], [0])dnl
+dnl
+_LT_DECL([], [build_alias], [0], [The build system])dnl
+_LT_DECL([], [build], [0])dnl
+_LT_DECL([], [build_os], [0])dnl
+dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([LT_PATH_LD])dnl
+AC_REQUIRE([LT_PATH_NM])dnl
+dnl
+AC_REQUIRE([AC_PROG_LN_S])dnl
+test -z "$LN_S" && LN_S="ln -s"
+_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
+dnl
+AC_REQUIRE([LT_CMD_MAX_LEN])dnl
+_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
+_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
+dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_CHECK_SHELL_FEATURES])dnl
+m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
+m4_require([_LT_CMD_RELOAD])dnl
+m4_require([_LT_DECL_FILECMD])dnl
+m4_require([_LT_CHECK_MAGIC_METHOD])dnl
+m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
+m4_require([_LT_CMD_OLD_ARCHIVE])dnl
+m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
+m4_require([_LT_WITH_SYSROOT])dnl
+m4_require([_LT_CMD_TRUNCATE])dnl
+
+_LT_CONFIG_LIBTOOL_INIT([
+# See if we are running on zsh, and set the options that allow our
+# commands through without removal of \ escapes INIT.
+if test -n "\${ZSH_VERSION+set}"; then
+ setopt NO_GLOB_SUBST
+fi
+])
+if test -n "${ZSH_VERSION+set}"; then
+ setopt NO_GLOB_SUBST
+fi
+
+_LT_CHECK_OBJDIR
+
+m4_require([_LT_TAG_COMPILER])dnl
+
+case $host_os in
+aix3*)
+ # AIX sometimes has problems with the GCC collect2 program. For some
+ # reason, if we set the COLLECT_NAMES environment variable, the problems
+ # vanish in a puff of smoke.
+ if test set != "${COLLECT_NAMES+set}"; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+ fi
+ ;;
+esac
+
+# Global variables:
+ofile=libtool
+can_build_shared=yes
+
+# All known linkers require a '.a' archive for static linking (except MSVC and
+# ICC, which need '.lib').
+libext=a
+
+with_gnu_ld=$lt_cv_prog_gnu_ld
+
+old_CC=$CC
+old_CFLAGS=$CFLAGS
+
+# Set sane defaults for various variables
+test -z "$CC" && CC=cc
+test -z "$LTCC" && LTCC=$CC
+test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
+test -z "$LD" && LD=ld
+test -z "$ac_objext" && ac_objext=o
+
+_LT_CC_BASENAME([$compiler])
+
+# Only perform the check for file, if the check method requires it
+test -z "$MAGIC_CMD" && MAGIC_CMD=file
+case $deplibs_check_method in
+file_magic*)
+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
+ _LT_PATH_MAGIC
+ fi
+ ;;
+esac
+
+# Use C for the default configuration in the libtool script
+LT_SUPPORTED_TAG([CC])
+_LT_LANG_C_CONFIG
+_LT_LANG_DEFAULT_CONFIG
+_LT_CONFIG_COMMANDS
+])# _LT_SETUP
+
+
+# _LT_PREPARE_SED_QUOTE_VARS
+# --------------------------
+# Define a few sed substitution that help us do robust quoting.
+m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
+[# Backslashify metacharacters that are still active within
+# double-quoted strings.
+sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
+
+# Same as above, but do not quote variable references.
+double_quote_subst='s/\([["`\\]]\)/\\\1/g'
+
+# Sed substitution to delay expansion of an escaped shell variable in a
+# double_quote_subst'ed string.
+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
+
+# Sed substitution to delay expansion of an escaped single quote.
+delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
+
+# Sed substitution to avoid accidental globbing in evaled expressions
+no_glob_subst='s/\*/\\\*/g'
+])
+
+# _LT_PROG_LTMAIN
+# ---------------
+# Note that this code is called both from 'configure', and 'config.status'
+# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
+# 'config.status' has no value for ac_aux_dir unless we are using Automake,
+# so we pass a copy along to make sure it has a sensible value anyway.
+m4_defun([_LT_PROG_LTMAIN],
+[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
+_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
+ltmain=$ac_aux_dir/ltmain.sh
+])# _LT_PROG_LTMAIN
+
+
+## ------------------------------------- ##
+## Accumulate code for creating libtool. ##
+## ------------------------------------- ##
+
+# So that we can recreate a full libtool script including additional
+# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
+# in macros and then make a single call at the end using the 'libtool'
+# label.
+
+
+# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
+# ----------------------------------------
+# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
+m4_define([_LT_CONFIG_LIBTOOL_INIT],
+[m4_ifval([$1],
+ [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
+ [$1
+])])])
+
+# Initialize.
+m4_define([_LT_OUTPUT_LIBTOOL_INIT])
+
+
+# _LT_CONFIG_LIBTOOL([COMMANDS])
+# ------------------------------
+# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
+m4_define([_LT_CONFIG_LIBTOOL],
+[m4_ifval([$1],
+ [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
+ [$1
+])])])
+
+# Initialize.
+m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
+
+
+# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
+# -----------------------------------------------------
+m4_defun([_LT_CONFIG_SAVE_COMMANDS],
+[_LT_CONFIG_LIBTOOL([$1])
+_LT_CONFIG_LIBTOOL_INIT([$2])
+])
+
+
+# _LT_FORMAT_COMMENT([COMMENT])
+# -----------------------------
+# Add leading comment marks to the start of each line, and a trailing
+# full-stop to the whole comment if one is not present already.
+m4_define([_LT_FORMAT_COMMENT],
+[m4_ifval([$1], [
+m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
+ [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
+)])
+
+
+
+## ------------------------ ##
+## FIXME: Eliminate VARNAME ##
+## ------------------------ ##
+
+
+# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
+# -------------------------------------------------------------------
+# CONFIGNAME is the name given to the value in the libtool script.
+# VARNAME is the (base) name used in the configure script.
+# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
+# VARNAME. Any other value will be used directly.
+m4_define([_LT_DECL],
+[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
+ [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
+ [m4_ifval([$1], [$1], [$2])])
+ lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
+ m4_ifval([$4],
+ [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
+ lt_dict_add_subkey([lt_decl_dict], [$2],
+ [tagged?], [m4_ifval([$5], [yes], [no])])])
+])
+
+
+# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
+# --------------------------------------------------------
+m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
+
+
+# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
+# ------------------------------------------------
+m4_define([lt_decl_tag_varnames],
+[_lt_decl_filter([tagged?], [yes], $@)])
+
+
+# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
+# ---------------------------------------------------------
+m4_define([_lt_decl_filter],
+[m4_case([$#],
+ [0], [m4_fatal([$0: too few arguments: $#])],
+ [1], [m4_fatal([$0: too few arguments: $#: $1])],
+ [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
+ [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
+ [lt_dict_filter([lt_decl_dict], $@)])[]dnl
+])
+
+
+# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
+# --------------------------------------------------
+m4_define([lt_decl_quote_varnames],
+[_lt_decl_filter([value], [1], $@)])
+
+
+# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
+# ---------------------------------------------------
+m4_define([lt_decl_dquote_varnames],
+[_lt_decl_filter([value], [2], $@)])
+
+
+# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
+# ---------------------------------------------------
+m4_define([lt_decl_varnames_tagged],
+[m4_assert([$# <= 2])dnl
+_$0(m4_quote(m4_default([$1], [[, ]])),
+ m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
+ m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
+m4_define([_lt_decl_varnames_tagged],
+[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
+
+
+# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
+# ------------------------------------------------
+m4_define([lt_decl_all_varnames],
+[_$0(m4_quote(m4_default([$1], [[, ]])),
+ m4_if([$2], [],
+ m4_quote(lt_decl_varnames),
+ m4_quote(m4_shift($@))))[]dnl
+])
+m4_define([_lt_decl_all_varnames],
+[lt_join($@, lt_decl_varnames_tagged([$1],
+ lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
+])
+
+
+# _LT_CONFIG_STATUS_DECLARE([VARNAME])
+# ------------------------------------
+# Quote a variable value, and forward it to 'config.status' so that its
+# declaration there will have the same value as in 'configure'. VARNAME
+# must have a single quote delimited value for this to work.
+m4_define([_LT_CONFIG_STATUS_DECLARE],
+[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
+
+
+# _LT_CONFIG_STATUS_DECLARATIONS
+# ------------------------------
+# We delimit libtool config variables with single quotes, so when
+# we write them to config.status, we have to be sure to quote all
+# embedded single quotes properly. In configure, this macro expands
+# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
+#
+# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
+m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
+[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
+ [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
+
+
+# _LT_LIBTOOL_TAGS
+# ----------------
+# Output comment and list of tags supported by the script
+m4_defun([_LT_LIBTOOL_TAGS],
+[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
+available_tags='_LT_TAGS'dnl
+])
+
+
+# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
+# -----------------------------------
+# Extract the dictionary values for VARNAME (optionally with TAG) and
+# expand to a commented shell variable setting:
+#
+# # Some comment about what VAR is for.
+# visible_name=$lt_internal_name
+m4_define([_LT_LIBTOOL_DECLARE],
+[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
+ [description])))[]dnl
+m4_pushdef([_libtool_name],
+ m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
+m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
+ [0], [_libtool_name=[$]$1],
+ [1], [_libtool_name=$lt_[]$1],
+ [2], [_libtool_name=$lt_[]$1],
+ [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
+m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
+])
+
+
+# _LT_LIBTOOL_CONFIG_VARS
+# -----------------------
+# Produce commented declarations of non-tagged libtool config variables
+# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
+# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
+# section) are produced by _LT_LIBTOOL_TAG_VARS.
+m4_defun([_LT_LIBTOOL_CONFIG_VARS],
+[m4_foreach([_lt_var],
+ m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
+ [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
+
+
+# _LT_LIBTOOL_TAG_VARS(TAG)
+# -------------------------
+m4_define([_LT_LIBTOOL_TAG_VARS],
+[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
+ [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
+
+
+# _LT_TAGVAR(VARNAME, [TAGNAME])
+# ------------------------------
+m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
+
+
+# _LT_CONFIG_COMMANDS
+# -------------------
+# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
+# variables for single and double quote escaping we saved from calls
+# to _LT_DECL, we can put quote escaped variables declarations
+# into 'config.status', and then the shell code to quote escape them in
+# for loops in 'config.status'. Finally, any additional code accumulated
+# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
+m4_defun([_LT_CONFIG_COMMANDS],
+[AC_PROVIDE_IFELSE([LT_OUTPUT],
+ dnl If the libtool generation code has been placed in $CONFIG_LT,
+ dnl instead of duplicating it all over again into config.status,
+ dnl then we will have config.status run $CONFIG_LT later, so it
+ dnl needs to know what name is stored there:
+ [AC_CONFIG_COMMANDS([libtool],
+ [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
+ dnl If the libtool generation code is destined for config.status,
+ dnl expand the accumulated commands and init code now:
+ [AC_CONFIG_COMMANDS([libtool],
+ [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
+])#_LT_CONFIG_COMMANDS
+
+
+# Initialize.
+m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
+[
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+sed_quote_subst='$sed_quote_subst'
+double_quote_subst='$double_quote_subst'
+delay_variable_subst='$delay_variable_subst'
+_LT_CONFIG_STATUS_DECLARATIONS
+LTCC='$LTCC'
+LTCFLAGS='$LTCFLAGS'
+compiler='$compiler_DEFAULT'
+
+# A function that is used when there is no print builtin or printf.
+func_fallback_echo ()
+{
+ eval 'cat <<_LTECHO_EOF
+\$[]1
+_LTECHO_EOF'
+}
+
+# Quote evaled strings.
+for var in lt_decl_all_varnames([[ \
+]], lt_decl_quote_varnames); do
+ case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
+ *[[\\\\\\\`\\"\\\$]]*)
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
+ ;;
+ *)
+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+ ;;
+ esac
+done
+
+# Double-quote double-evaled strings.
+for var in lt_decl_all_varnames([[ \
+]], lt_decl_dquote_varnames); do
+ case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
+ *[[\\\\\\\`\\"\\\$]]*)
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
+ ;;
+ *)
+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+ ;;
+ esac
+done
+
+_LT_OUTPUT_LIBTOOL_INIT
+])
+
+# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
+# ------------------------------------
+# Generate a child script FILE with all initialization necessary to
+# reuse the environment learned by the parent script, and make the
+# file executable. If COMMENT is supplied, it is inserted after the
+# '#!' sequence but before initialization text begins. After this
+# macro, additional text can be appended to FILE to form the body of
+# the child script. The macro ends with non-zero status if the
+# file could not be fully written (such as if the disk is full).
+m4_ifdef([AS_INIT_GENERATED],
+[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
+[m4_defun([_LT_GENERATED_FILE_INIT],
+[m4_require([AS_PREPARE])]dnl
+[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
+[lt_write_fail=0
+cat >$1 <<_ASEOF || lt_write_fail=1
+#! $SHELL
+# Generated by $as_me.
+$2
+SHELL=\${CONFIG_SHELL-$SHELL}
+export SHELL
+_ASEOF
+cat >>$1 <<\_ASEOF || lt_write_fail=1
+AS_SHELL_SANITIZE
+_AS_PREPARE
+exec AS_MESSAGE_FD>&1
+_ASEOF
+test 0 = "$lt_write_fail" && chmod +x $1[]dnl
+m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
+
+# LT_OUTPUT
+# ---------
+# This macro allows early generation of the libtool script (before
+# AC_OUTPUT is called), incase it is used in configure for compilation
+# tests.
+AC_DEFUN([LT_OUTPUT],
+[: ${CONFIG_LT=./config.lt}
+AC_MSG_NOTICE([creating $CONFIG_LT])
+_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
+[# Run this file to recreate a libtool stub with the current configuration.])
+
+cat >>"$CONFIG_LT" <<\_LTEOF
+lt_cl_silent=false
+exec AS_MESSAGE_LOG_FD>>config.log
+{
+ echo
+ AS_BOX([Running $as_me.])
+} >&AS_MESSAGE_LOG_FD
+
+lt_cl_help="\
+'$as_me' creates a local libtool stub from the current configuration,
+for use in further configure time tests before the real libtool is
+generated.
+
+Usage: $[0] [[OPTIONS]]
+
+ -h, --help print this help, then exit
+ -V, --version print version number, then exit
+ -q, --quiet do not print progress messages
+ -d, --debug don't remove temporary files
+
+Report bugs to <bug-libtool@gnu.org>."
+
+lt_cl_version="\
+m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
+m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
+configured by $[0], generated by m4_PACKAGE_STRING.
+
+Copyright (C) 2011 Free Software Foundation, Inc.
+This config.lt script is free software; the Free Software Foundation
+gives unlimited permision to copy, distribute and modify it."
+
+while test 0 != $[#]
+do
+ case $[1] in
+ --version | --v* | -V )
+ echo "$lt_cl_version"; exit 0 ;;
+ --help | --h* | -h )
+ echo "$lt_cl_help"; exit 0 ;;
+ --debug | --d* | -d )
+ debug=: ;;
+ --quiet | --q* | --silent | --s* | -q )
+ lt_cl_silent=: ;;
+
+ -*) AC_MSG_ERROR([unrecognized option: $[1]
+Try '$[0] --help' for more information.]) ;;
+
+ *) AC_MSG_ERROR([unrecognized argument: $[1]
+Try '$[0] --help' for more information.]) ;;
+ esac
+ shift
+done
+
+if $lt_cl_silent; then
+ exec AS_MESSAGE_FD>/dev/null
+fi
+_LTEOF
+
+cat >>"$CONFIG_LT" <<_LTEOF
+_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
+_LTEOF
+
+cat >>"$CONFIG_LT" <<\_LTEOF
+AC_MSG_NOTICE([creating $ofile])
+_LT_OUTPUT_LIBTOOL_COMMANDS
+AS_EXIT(0)
+_LTEOF
+chmod +x "$CONFIG_LT"
+
+# configure is writing to config.log, but config.lt does its own redirection,
+# appending to config.log, which fails on DOS, as config.log is still kept
+# open by configure. Here we exec the FD to /dev/null, effectively closing
+# config.log, so it can be properly (re)opened and appended to by config.lt.
+lt_cl_success=:
+test yes = "$silent" &&
+ lt_config_lt_args="$lt_config_lt_args --quiet"
+exec AS_MESSAGE_LOG_FD>/dev/null
+$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
+exec AS_MESSAGE_LOG_FD>>config.log
+$lt_cl_success || AS_EXIT(1)
+])# LT_OUTPUT
+
+
+# _LT_CONFIG(TAG)
+# ---------------
+# If TAG is the built-in tag, create an initial libtool script with a
+# default configuration from the untagged config vars. Otherwise add code
+# to config.status for appending the configuration named by TAG from the
+# matching tagged config vars.
+m4_defun([_LT_CONFIG],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+_LT_CONFIG_SAVE_COMMANDS([
+ m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
+ m4_if(_LT_TAG, [C], [
+ # See if we are running on zsh, and set the options that allow our
+ # commands through without removal of \ escapes.
+ if test -n "${ZSH_VERSION+set}"; then
+ setopt NO_GLOB_SUBST
+ fi
+
+ cfgfile=${ofile}T
+ trap "$RM \"$cfgfile\"; exit 1" 1 2 15
+ $RM "$cfgfile"
+
+ cat <<_LT_EOF >> "$cfgfile"
+#! $SHELL
+# Generated automatically by $as_me ($PACKAGE) $VERSION
+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+
+# Provide generalized library-building support services.
+# Written by Gordon Matzigkeit, 1996
+
+_LT_COPYING
+_LT_LIBTOOL_TAGS
+
+# Configured defaults for sys_lib_dlsearch_path munging.
+: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
+
+# ### BEGIN LIBTOOL CONFIG
+_LT_LIBTOOL_CONFIG_VARS
+_LT_LIBTOOL_TAG_VARS
+# ### END LIBTOOL CONFIG
+
+_LT_EOF
+
+ cat <<'_LT_EOF' >> "$cfgfile"
+
+# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
+
+_LT_PREPARE_MUNGE_PATH_LIST
+_LT_PREPARE_CC_BASENAME
+
+# ### END FUNCTIONS SHARED WITH CONFIGURE
+
+_LT_EOF
+
+ case $host_os in
+ aix3*)
+ cat <<\_LT_EOF >> "$cfgfile"
+# AIX sometimes has problems with the GCC collect2 program. For some
+# reason, if we set the COLLECT_NAMES environment variable, the problems
+# vanish in a puff of smoke.
+if test set != "${COLLECT_NAMES+set}"; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+fi
+_LT_EOF
+ ;;
+ esac
+
+ _LT_PROG_LTMAIN
+
+ # We use sed instead of cat because bash on DJGPP gets confused if
+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
+ # text mode, it properly converts lines to CR/LF. This bash problem
+ # is reportedly fixed, but why not run on old versions too?
+ $SED '$q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
+
+ mv -f "$cfgfile" "$ofile" ||
+ (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
+ chmod +x "$ofile"
+],
+[cat <<_LT_EOF >> "$ofile"
+
+dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
+dnl in a comment (ie after a #).
+# ### BEGIN LIBTOOL TAG CONFIG: $1
+_LT_LIBTOOL_TAG_VARS(_LT_TAG)
+# ### END LIBTOOL TAG CONFIG: $1
+_LT_EOF
+])dnl /m4_if
+],
+[m4_if([$1], [], [
+ PACKAGE='$PACKAGE'
+ VERSION='$VERSION'
+ RM='$RM'
+ ofile='$ofile'], [])
+])dnl /_LT_CONFIG_SAVE_COMMANDS
+])# _LT_CONFIG
+
+
+# LT_SUPPORTED_TAG(TAG)
+# ---------------------
+# Trace this macro to discover what tags are supported by the libtool
+# --tag option, using:
+# autoconf --trace 'LT_SUPPORTED_TAG:$1'
+AC_DEFUN([LT_SUPPORTED_TAG], [])
+
+
+# C support is built-in for now
+m4_define([_LT_LANG_C_enabled], [])
+m4_define([_LT_TAGS], [])
+
+
+# LT_LANG(LANG)
+# -------------
+# Enable libtool support for the given language if not already enabled.
+AC_DEFUN([LT_LANG],
+[AC_BEFORE([$0], [LT_OUTPUT])dnl
+m4_case([$1],
+ [C], [_LT_LANG(C)],
+ [C++], [_LT_LANG(CXX)],
+ [Go], [_LT_LANG(GO)],
+ [Java], [_LT_LANG(GCJ)],
+ [Fortran 77], [_LT_LANG(F77)],
+ [Fortran], [_LT_LANG(FC)],
+ [Windows Resource], [_LT_LANG(RC)],
+ [m4_ifdef([_LT_LANG_]$1[_CONFIG],
+ [_LT_LANG($1)],
+ [m4_fatal([$0: unsupported language: "$1"])])])dnl
+])# LT_LANG
+
+
+# _LT_LANG(LANGNAME)
+# ------------------
+m4_defun([_LT_LANG],
+[m4_ifdef([_LT_LANG_]$1[_enabled], [],
+ [LT_SUPPORTED_TAG([$1])dnl
+ m4_append([_LT_TAGS], [$1 ])dnl
+ m4_define([_LT_LANG_]$1[_enabled], [])dnl
+ _LT_LANG_$1_CONFIG($1)])dnl
+])# _LT_LANG
+
+
+m4_ifndef([AC_PROG_GO], [
+############################################################
+# NOTE: This macro has been submitted for inclusion into #
+# GNU Autoconf as AC_PROG_GO. When it is available in #
+# a released version of Autoconf we should remove this #
+# macro and use it instead. #
+############################################################
+m4_defun([AC_PROG_GO],
+[AC_LANG_PUSH(Go)dnl
+AC_ARG_VAR([GOC], [Go compiler command])dnl
+AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
+_AC_ARG_VAR_LDFLAGS()dnl
+AC_CHECK_TOOL(GOC, gccgo)
+if test -z "$GOC"; then
+ if test -n "$ac_tool_prefix"; then
+ AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
+ fi
+fi
+if test -z "$GOC"; then
+ AC_CHECK_PROG(GOC, gccgo, gccgo, false)
+fi
+])#m4_defun
+])#m4_ifndef
+
+
+# _LT_LANG_DEFAULT_CONFIG
+# -----------------------
+m4_defun([_LT_LANG_DEFAULT_CONFIG],
+[AC_PROVIDE_IFELSE([AC_PROG_CXX],
+ [LT_LANG(CXX)],
+ [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
+
+AC_PROVIDE_IFELSE([AC_PROG_F77],
+ [LT_LANG(F77)],
+ [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
+
+AC_PROVIDE_IFELSE([AC_PROG_FC],
+ [LT_LANG(FC)],
+ [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
+
+dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
+dnl pulling things in needlessly.
+AC_PROVIDE_IFELSE([AC_PROG_GCJ],
+ [LT_LANG(GCJ)],
+ [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
+ [LT_LANG(GCJ)],
+ [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
+ [LT_LANG(GCJ)],
+ [m4_ifdef([AC_PROG_GCJ],
+ [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
+ m4_ifdef([A][M_PROG_GCJ],
+ [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
+ m4_ifdef([LT_PROG_GCJ],
+ [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
+
+AC_PROVIDE_IFELSE([AC_PROG_GO],
+ [LT_LANG(GO)],
+ [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
+
+AC_PROVIDE_IFELSE([LT_PROG_RC],
+ [LT_LANG(RC)],
+ [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
+])# _LT_LANG_DEFAULT_CONFIG
+
+# Obsolete macros:
+AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
+AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
+AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
+AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
+AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
+dnl AC_DEFUN([AC_LIBTOOL_F77], [])
+dnl AC_DEFUN([AC_LIBTOOL_FC], [])
+dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
+dnl AC_DEFUN([AC_LIBTOOL_RC], [])
+
+
+# _LT_TAG_COMPILER
+# ----------------
+m4_defun([_LT_TAG_COMPILER],
+[AC_REQUIRE([AC_PROG_CC])dnl
+
+_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
+_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
+_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
+_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
+
+# If no C compiler was specified, use CC.
+LTCC=${LTCC-"$CC"}
+
+# If no C compiler flags were specified, use CFLAGS.
+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+
+# Allow CC to be a program name with arguments.
+compiler=$CC
+])# _LT_TAG_COMPILER
+
+
+# _LT_COMPILER_BOILERPLATE
+# ------------------------
+# Check for compiler boilerplate output or warnings with
+# the simple compiler test code.
+m4_defun([_LT_COMPILER_BOILERPLATE],
+[m4_require([_LT_DECL_SED])dnl
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
+eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+_lt_compiler_boilerplate=`cat conftest.err`
+$RM conftest*
+])# _LT_COMPILER_BOILERPLATE
+
+
+# _LT_LINKER_BOILERPLATE
+# ----------------------
+# Check for linker boilerplate output or warnings with
+# the simple link test code.
+m4_defun([_LT_LINKER_BOILERPLATE],
+[m4_require([_LT_DECL_SED])dnl
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
+eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+_lt_linker_boilerplate=`cat conftest.err`
+$RM -r conftest*
+])# _LT_LINKER_BOILERPLATE
+
+# _LT_REQUIRED_DARWIN_CHECKS
+# -------------------------
+m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
+ case $host_os in
+ rhapsody* | darwin*)
+ AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
+ AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
+ AC_CHECK_TOOL([LIPO], [lipo], [:])
+ AC_CHECK_TOOL([OTOOL], [otool], [:])
+ AC_CHECK_TOOL([OTOOL64], [otool64], [:])
+ _LT_DECL([], [DSYMUTIL], [1],
+ [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
+ _LT_DECL([], [NMEDIT], [1],
+ [Tool to change global to local symbols on Mac OS X])
+ _LT_DECL([], [LIPO], [1],
+ [Tool to manipulate fat objects and archives on Mac OS X])
+ _LT_DECL([], [OTOOL], [1],
+ [ldd/readelf like tool for Mach-O binaries on Mac OS X])
+ _LT_DECL([], [OTOOL64], [1],
+ [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
+
+ AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
+ [lt_cv_apple_cc_single_mod=no
+ if test -z "$LT_MULTI_MODULE"; then
+ # By default we will add the -single_module flag. You can override
+ # by either setting the environment variable LT_MULTI_MODULE
+ # non-empty at configure time, or by adding -multi_module to the
+ # link flags.
+ rm -rf libconftest.dylib*
+ echo "int foo(void){return 1;}" > conftest.c
+ echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
+ $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+ _lt_result=$?
+ # If there is a non-empty error log, and "single_module"
+ # appears in it, assume the flag caused a linker warning
+ if test -s conftest.err && $GREP single_module conftest.err; then
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ # Otherwise, if the output was created with a 0 exit code from
+ # the compiler, it worked.
+ elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
+ lt_cv_apple_cc_single_mod=yes
+ else
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ fi
+ rm -rf libconftest.dylib*
+ rm -f conftest.*
+ fi])
+
+ AC_CACHE_CHECK([for -exported_symbols_list linker flag],
+ [lt_cv_ld_exported_symbols_list],
+ [lt_cv_ld_exported_symbols_list=no
+ save_LDFLAGS=$LDFLAGS
+ echo "_main" > conftest.sym
+ LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+ [lt_cv_ld_exported_symbols_list=yes],
+ [lt_cv_ld_exported_symbols_list=no])
+ LDFLAGS=$save_LDFLAGS
+ ])
+
+ AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
+ [lt_cv_ld_force_load=no
+ cat > conftest.c << _LT_EOF
+int forced_loaded() { return 2;}
+_LT_EOF
+ echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
+ $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
+ echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
+ $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
+ echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
+ $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
+ cat > conftest.c << _LT_EOF
+int main() { return 0;}
+_LT_EOF
+ echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
+ $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
+ _lt_result=$?
+ if test -s conftest.err && $GREP force_load conftest.err; then
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
+ lt_cv_ld_force_load=yes
+ else
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ fi
+ rm -f conftest.err libconftest.a conftest conftest.c
+ rm -rf conftest.dSYM
+ ])
+ case $host_os in
+ rhapsody* | darwin1.[[012]])
+ _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
+ darwin1.*)
+ _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
+ darwin*)
+ case $MACOSX_DEPLOYMENT_TARGET,$host in
+ 10.[[012]],*|,*powerpc*-darwin[[5-8]]*)
+ _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
+ *)
+ _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+ esac
+ ;;
+ esac
+ if test yes = "$lt_cv_apple_cc_single_mod"; then
+ _lt_dar_single_mod='$single_module'
+ fi
+ if test yes = "$lt_cv_ld_exported_symbols_list"; then
+ _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
+ else
+ _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
+ fi
+ if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
+ _lt_dsymutil='~$DSYMUTIL $lib || :'
+ else
+ _lt_dsymutil=
+ fi
+ ;;
+ esac
+])
+
+
+# _LT_DARWIN_LINKER_FEATURES([TAG])
+# ---------------------------------
+# Checks for linker and compiler features on darwin
+m4_defun([_LT_DARWIN_LINKER_FEATURES],
+[
+ m4_require([_LT_REQUIRED_DARWIN_CHECKS])
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_automatic, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ if test yes = "$lt_cv_ld_force_load"; then
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
+ m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
+ [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
+ else
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=''
+ fi
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
+ case $cc_basename in
+ ifort*|nagfor*) _lt_dar_can_shared=yes ;;
+ *) _lt_dar_can_shared=$GCC ;;
+ esac
+ if test yes = "$_lt_dar_can_shared"; then
+ output_verbose_link_cmd=func_echo_all
+ _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
+ _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
+ _LT_TAGVAR(module_expsym_cmds, $1)="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
+ m4_if([$1], [CXX],
+[ if test yes != "$lt_cv_apple_cc_single_mod"; then
+ _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
+ fi
+],[])
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+])
+
+# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
+# ----------------------------------
+# Links a minimal program and checks the executable
+# for the system default hardcoded library path. In most cases,
+# this is /usr/lib:/lib, but when the MPI compilers are used
+# the location of the communication and MPI libs are included too.
+# If we don't find anything, use the default library path according
+# to the aix ld manual.
+# Store the results from the different compilers for each TAGNAME.
+# Allow to override them for all tags through lt_cv_aix_libpath.
+m4_defun([_LT_SYS_MODULE_PATH_AIX],
+[m4_require([_LT_DECL_SED])dnl
+if test set = "${lt_cv_aix_libpath+set}"; then
+ aix_libpath=$lt_cv_aix_libpath
+else
+ AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
+ [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
+ lt_aix_libpath_sed='[
+ /Import File Strings/,/^$/ {
+ /^0/ {
+ s/^0 *\([^ ]*\) *$/\1/
+ p
+ }
+ }]'
+ _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+ # Check for a 64-bit object if we didn't find anything.
+ if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
+ _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+ fi],[])
+ if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
+ _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
+ fi
+ ])
+ aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
+fi
+])# _LT_SYS_MODULE_PATH_AIX
+
+
+# _LT_SHELL_INIT(ARG)
+# -------------------
+m4_define([_LT_SHELL_INIT],
+[m4_divert_text([M4SH-INIT], [$1
+])])# _LT_SHELL_INIT
+
+
+
+# _LT_PROG_ECHO_BACKSLASH
+# -----------------------
+# Find how we can fake an echo command that does not interpret backslash.
+# In particular, with Autoconf 2.60 or later we add some code to the start
+# of the generated configure script that will find a shell with a builtin
+# printf (that we can use as an echo command).
+m4_defun([_LT_PROG_ECHO_BACKSLASH],
+[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
+ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+
+AC_MSG_CHECKING([how to print strings])
+# Test print first, because it will be a builtin if present.
+if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
+ test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
+ ECHO='print -r --'
+elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
+ ECHO='printf %s\n'
+else
+ # Use this function as a fallback that always works.
+ func_fallback_echo ()
+ {
+ eval 'cat <<_LTECHO_EOF
+$[]1
+_LTECHO_EOF'
+ }
+ ECHO='func_fallback_echo'
+fi
+
+# func_echo_all arg...
+# Invoke $ECHO with all args, space-separated.
+func_echo_all ()
+{
+ $ECHO "$*"
+}
+
+case $ECHO in
+ printf*) AC_MSG_RESULT([printf]) ;;
+ print*) AC_MSG_RESULT([print -r]) ;;
+ *) AC_MSG_RESULT([cat]) ;;
+esac
+
+m4_ifdef([_AS_DETECT_SUGGESTED],
+[_AS_DETECT_SUGGESTED([
+ test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
+ ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
+ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+ PATH=/empty FPATH=/empty; export PATH FPATH
+ test "X`printf %s $ECHO`" = "X$ECHO" \
+ || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
+
+_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
+_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
+])# _LT_PROG_ECHO_BACKSLASH
+
+
+# _LT_WITH_SYSROOT
+# ----------------
+AC_DEFUN([_LT_WITH_SYSROOT],
+[m4_require([_LT_DECL_SED])dnl
+AC_MSG_CHECKING([for sysroot])
+AC_ARG_WITH([sysroot],
+[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
+ [Search for dependent libraries within DIR (or the compiler's sysroot
+ if not specified).])],
+[], [with_sysroot=no])
+
+dnl lt_sysroot will always be passed unquoted. We quote it here
+dnl in case the user passed a directory name.
+lt_sysroot=
+case $with_sysroot in #(
+ yes)
+ if test yes = "$GCC"; then
+ lt_sysroot=`$CC --print-sysroot 2>/dev/null`
+ fi
+ ;; #(
+ /*)
+ lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`
+ ;; #(
+ no|'')
+ ;; #(
+ *)
+ AC_MSG_RESULT([$with_sysroot])
+ AC_MSG_ERROR([The sysroot must be an absolute path.])
+ ;;
+esac
+
+ AC_MSG_RESULT([${lt_sysroot:-no}])
+_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
+[dependent libraries, and where our libraries should be installed.])])
+
+# _LT_ENABLE_LOCK
+# ---------------
+m4_defun([_LT_ENABLE_LOCK],
+[AC_ARG_ENABLE([libtool-lock],
+ [AS_HELP_STRING([--disable-libtool-lock],
+ [avoid locking (might break parallel builds)])])
+test no = "$enable_libtool_lock" || enable_libtool_lock=yes
+
+# Some flags need to be propagated to the compiler or linker for good
+# libtool support.
+case $host in
+ia64-*-hpux*)
+ # Find out what ABI is being produced by ac_compile, and set mode
+ # options accordingly.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `$FILECMD conftest.$ac_objext` in
+ *ELF-32*)
+ HPUX_IA64_MODE=32
+ ;;
+ *ELF-64*)
+ HPUX_IA64_MODE=64
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+*-*-irix6*)
+ # Find out what ABI is being produced by ac_compile, and set linker
+ # options accordingly.
+ echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ if test yes = "$lt_cv_prog_gnu_ld"; then
+ case `$FILECMD conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -melf32bsmip"
+ ;;
+ *N32*)
+ LD="${LD-ld} -melf32bmipn32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -melf64bmip"
+ ;;
+ esac
+ else
+ case `$FILECMD conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -32"
+ ;;
+ *N32*)
+ LD="${LD-ld} -n32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -64"
+ ;;
+ esac
+ fi
+ fi
+ rm -rf conftest*
+ ;;
+
+mips64*-*linux*)
+ # Find out what ABI is being produced by ac_compile, and set linker
+ # options accordingly.
+ echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ emul=elf
+ case `$FILECMD conftest.$ac_objext` in
+ *32-bit*)
+ emul="${emul}32"
+ ;;
+ *64-bit*)
+ emul="${emul}64"
+ ;;
+ esac
+ case `$FILECMD conftest.$ac_objext` in
+ *MSB*)
+ emul="${emul}btsmip"
+ ;;
+ *LSB*)
+ emul="${emul}ltsmip"
+ ;;
+ esac
+ case `$FILECMD conftest.$ac_objext` in
+ *N32*)
+ emul="${emul}n32"
+ ;;
+ esac
+ LD="${LD-ld} -m $emul"
+ fi
+ rm -rf conftest*
+ ;;
+
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
+s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
+ # Find out what ABI is being produced by ac_compile, and set linker
+ # options accordingly. Note that the listed cases only cover the
+ # situations where additional linker options are needed (such as when
+ # doing 32-bit compilation for a host where ld defaults to 64-bit, or
+ # vice versa); the common cases where no linker options are needed do
+ # not appear in the list.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `$FILECMD conftest.o` in
+ *32-bit*)
+ case $host in
+ x86_64-*kfreebsd*-gnu)
+ LD="${LD-ld} -m elf_i386_fbsd"
+ ;;
+ x86_64-*linux*)
+ case `$FILECMD conftest.o` in
+ *x86-64*)
+ LD="${LD-ld} -m elf32_x86_64"
+ ;;
+ *)
+ LD="${LD-ld} -m elf_i386"
+ ;;
+ esac
+ ;;
+ powerpc64le-*linux*)
+ LD="${LD-ld} -m elf32lppclinux"
+ ;;
+ powerpc64-*linux*)
+ LD="${LD-ld} -m elf32ppclinux"
+ ;;
+ s390x-*linux*)
+ LD="${LD-ld} -m elf_s390"
+ ;;
+ sparc64-*linux*)
+ LD="${LD-ld} -m elf32_sparc"
+ ;;
+ esac
+ ;;
+ *64-bit*)
+ case $host in
+ x86_64-*kfreebsd*-gnu)
+ LD="${LD-ld} -m elf_x86_64_fbsd"
+ ;;
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_x86_64"
+ ;;
+ powerpcle-*linux*)
+ LD="${LD-ld} -m elf64lppc"
+ ;;
+ powerpc-*linux*)
+ LD="${LD-ld} -m elf64ppc"
+ ;;
+ s390*-*linux*|s390*-*tpf*)
+ LD="${LD-ld} -m elf64_s390"
+ ;;
+ sparc*-*linux*)
+ LD="${LD-ld} -m elf64_sparc"
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+
+*-*-sco3.2v5*)
+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
+ SAVE_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS -belf"
+ AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
+ [AC_LANG_PUSH(C)
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
+ AC_LANG_POP])
+ if test yes != "$lt_cv_cc_needs_belf"; then
+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
+ CFLAGS=$SAVE_CFLAGS
+ fi
+ ;;
+*-*solaris*)
+ # Find out what ABI is being produced by ac_compile, and set linker
+ # options accordingly.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `$FILECMD conftest.o` in
+ *64-bit*)
+ case $lt_cv_prog_gnu_ld in
+ yes*)
+ case $host in
+ i?86-*-solaris*|x86_64-*-solaris*)
+ LD="${LD-ld} -m elf_x86_64"
+ ;;
+ sparc*-*-solaris*)
+ LD="${LD-ld} -m elf64_sparc"
+ ;;
+ esac
+ # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
+ if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
+ LD=${LD-ld}_sol2
+ fi
+ ;;
+ *)
+ if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+ LD="${LD-ld} -64"
+ fi
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+esac
+
+need_locks=$enable_libtool_lock
+])# _LT_ENABLE_LOCK
+
+
+# _LT_PROG_AR
+# -----------
+m4_defun([_LT_PROG_AR],
+[AC_CHECK_TOOLS(AR, [ar], false)
+: ${AR=ar}
+_LT_DECL([], [AR], [1], [The archiver])
+
+# Use ARFLAGS variable as AR's operation code to sync the variable naming with
+# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have
+# higher priority because thats what people were doing historically (setting
+# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS
+# variable obsoleted/removed.
+
+test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr}
+lt_ar_flags=$AR_FLAGS
+_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)])
+
+# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override
+# by AR_FLAGS because that was never working and AR_FLAGS is about to die.
+_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}],
+ [Flags to create an archive])
+
+AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
+ [lt_cv_ar_at_file=no
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
+ [echo conftest.$ac_objext > conftest.lst
+ lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
+ AC_TRY_EVAL([lt_ar_try])
+ if test 0 -eq "$ac_status"; then
+ # Ensure the archiver fails upon bogus file names.
+ rm -f conftest.$ac_objext libconftest.a
+ AC_TRY_EVAL([lt_ar_try])
+ if test 0 -ne "$ac_status"; then
+ lt_cv_ar_at_file=@
+ fi
+ fi
+ rm -f conftest.* libconftest.a
+ ])
+ ])
+
+if test no = "$lt_cv_ar_at_file"; then
+ archiver_list_spec=
+else
+ archiver_list_spec=$lt_cv_ar_at_file
+fi
+_LT_DECL([], [archiver_list_spec], [1],
+ [How to feed a file listing to the archiver])
+])# _LT_PROG_AR
+
+
+# _LT_CMD_OLD_ARCHIVE
+# -------------------
+m4_defun([_LT_CMD_OLD_ARCHIVE],
+[_LT_PROG_AR
+
+AC_CHECK_TOOL(STRIP, strip, :)
+test -z "$STRIP" && STRIP=:
+_LT_DECL([], [STRIP], [1], [A symbol stripping program])
+
+AC_CHECK_TOOL(RANLIB, ranlib, :)
+test -z "$RANLIB" && RANLIB=:
+_LT_DECL([], [RANLIB], [1],
+ [Commands used to install an old-style archive])
+
+# Determine commands to create old-style static archives.
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
+old_postinstall_cmds='chmod 644 $oldlib'
+old_postuninstall_cmds=
+
+if test -n "$RANLIB"; then
+ case $host_os in
+ bitrig* | openbsd*)
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
+ ;;
+ *)
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
+ ;;
+ esac
+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
+fi
+
+case $host_os in
+ darwin*)
+ lock_old_archive_extraction=yes ;;
+ *)
+ lock_old_archive_extraction=no ;;
+esac
+_LT_DECL([], [old_postinstall_cmds], [2])
+_LT_DECL([], [old_postuninstall_cmds], [2])
+_LT_TAGDECL([], [old_archive_cmds], [2],
+ [Commands used to build an old-style archive])
+_LT_DECL([], [lock_old_archive_extraction], [0],
+ [Whether to use a lock for old archive extraction])
+])# _LT_CMD_OLD_ARCHIVE
+
+
+# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
+# ----------------------------------------------------------------
+# Check whether the given compiler option works
+AC_DEFUN([_LT_COMPILER_OPTION],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_SED])dnl
+AC_CACHE_CHECK([$1], [$2],
+ [$2=no
+ m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+ lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ # The option is referenced via a variable to avoid confusing sed.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$lt_compile" 2>conftest.err)
+ ac_status=$?
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+ if (exit $ac_status) && test -s "$ac_outfile"; then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings other than the usual output.
+ $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
+ $2=yes
+ fi
+ fi
+ $RM conftest*
+])
+
+if test yes = "[$]$2"; then
+ m4_if([$5], , :, [$5])
+else
+ m4_if([$6], , :, [$6])
+fi
+])# _LT_COMPILER_OPTION
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
+
+
+# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+# [ACTION-SUCCESS], [ACTION-FAILURE])
+# ----------------------------------------------------
+# Check whether the given linker option works
+AC_DEFUN([_LT_LINKER_OPTION],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_SED])dnl
+AC_CACHE_CHECK([$1], [$2],
+ [$2=no
+ save_LDFLAGS=$LDFLAGS
+ LDFLAGS="$LDFLAGS $3"
+ echo "$lt_simple_link_test_code" > conftest.$ac_ext
+ if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
+ # The linker can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ if test -s conftest.err; then
+ # Append any errors to the config.log.
+ cat conftest.err 1>&AS_MESSAGE_LOG_FD
+ $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if diff conftest.exp conftest.er2 >/dev/null; then
+ $2=yes
+ fi
+ else
+ $2=yes
+ fi
+ fi
+ $RM -r conftest*
+ LDFLAGS=$save_LDFLAGS
+])
+
+if test yes = "[$]$2"; then
+ m4_if([$4], , :, [$4])
+else
+ m4_if([$5], , :, [$5])
+fi
+])# _LT_LINKER_OPTION
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
+
+
+# LT_CMD_MAX_LEN
+#---------------
+AC_DEFUN([LT_CMD_MAX_LEN],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+# find the maximum length of command line arguments
+AC_MSG_CHECKING([the maximum length of command line arguments])
+AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
+ i=0
+ teststring=ABCD
+
+ case $build_os in
+ msdosdjgpp*)
+ # On DJGPP, this test can blow up pretty badly due to problems in libc
+ # (any single argument exceeding 2000 bytes causes a buffer overrun
+ # during glob expansion). Even if it were fixed, the result of this
+ # check would be larger than it should be.
+ lt_cv_sys_max_cmd_len=12288; # 12K is about right
+ ;;
+
+ gnu*)
+ # Under GNU Hurd, this test is not required because there is
+ # no limit to the length of command line arguments.
+ # Libtool will interpret -1 as no limit whatsoever
+ lt_cv_sys_max_cmd_len=-1;
+ ;;
+
+ cygwin* | mingw* | cegcc*)
+ # On Win9x/ME, this test blows up -- it succeeds, but takes
+ # about 5 minutes as the teststring grows exponentially.
+ # Worse, since 9x/ME are not pre-emptively multitasking,
+ # you end up with a "frozen" computer, even though with patience
+ # the test eventually succeeds (with a max line length of 256k).
+ # Instead, let's just punt: use the minimum linelength reported by
+ # all of the supported platforms: 8192 (on NT/2K/XP).
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ mint*)
+ # On MiNT this can take a long time and run out of memory.
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ amigaos*)
+ # On AmigaOS with pdksh, this test takes hours, literally.
+ # So we just punt and use a minimum line length of 8192.
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)
+ # This has been around since 386BSD, at least. Likely further.
+ if test -x /sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
+ elif test -x /usr/sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
+ else
+ lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
+ fi
+ # And add a safety zone
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+ ;;
+
+ interix*)
+ # We know the value 262144 and hardcode it with a safety zone (like BSD)
+ lt_cv_sys_max_cmd_len=196608
+ ;;
+
+ os2*)
+ # The test takes a long time on OS/2.
+ lt_cv_sys_max_cmd_len=8192
+ ;;
+
+ osf*)
+ # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
+ # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
+ # nice to cause kernel panics so lets avoid the loop below.
+ # First set a reasonable default.
+ lt_cv_sys_max_cmd_len=16384
+ #
+ if test -x /sbin/sysconfig; then
+ case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
+ *1*) lt_cv_sys_max_cmd_len=-1 ;;
+ esac
+ fi
+ ;;
+ sco3.2v5*)
+ lt_cv_sys_max_cmd_len=102400
+ ;;
+ sysv5* | sco5v6* | sysv4.2uw2*)
+ kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
+ if test -n "$kargmax"; then
+ lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[ ]]//'`
+ else
+ lt_cv_sys_max_cmd_len=32768
+ fi
+ ;;
+ *)
+ lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+ if test -n "$lt_cv_sys_max_cmd_len" && \
+ test undefined != "$lt_cv_sys_max_cmd_len"; then
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+ else
+ # Make teststring a little bigger before we do anything with it.
+ # a 1K string should be a reasonable start.
+ for i in 1 2 3 4 5 6 7 8; do
+ teststring=$teststring$teststring
+ done
+ SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
+ # If test is not a shell built-in, we'll probably end up computing a
+ # maximum length that is only half of the actual maximum length, but
+ # we can't tell.
+ while { test X`env echo "$teststring$teststring" 2>/dev/null` \
+ = "X$teststring$teststring"; } >/dev/null 2>&1 &&
+ test 17 != "$i" # 1/2 MB should be enough
+ do
+ i=`expr $i + 1`
+ teststring=$teststring$teststring
+ done
+ # Only check the string length outside the loop.
+ lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
+ teststring=
+ # Add a significant safety factor because C++ compilers can tack on
+ # massive amounts of additional arguments before passing them to the
+ # linker. It appears as though 1/2 is a usable value.
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+ fi
+ ;;
+ esac
+])
+if test -n "$lt_cv_sys_max_cmd_len"; then
+ AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
+else
+ AC_MSG_RESULT(none)
+fi
+max_cmd_len=$lt_cv_sys_max_cmd_len
+_LT_DECL([], [max_cmd_len], [0],
+ [What is the maximum length of a command?])
+])# LT_CMD_MAX_LEN
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
+
+
+# _LT_HEADER_DLFCN
+# ----------------
+m4_defun([_LT_HEADER_DLFCN],
+[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
+])# _LT_HEADER_DLFCN
+
+
+# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
+# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
+# ----------------------------------------------------------------
+m4_defun([_LT_TRY_DLOPEN_SELF],
+[m4_require([_LT_HEADER_DLFCN])dnl
+if test yes = "$cross_compiling"; then :
+ [$4]
+else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+[#line $LINENO "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+# define LT_DLGLOBAL RTLD_GLOBAL
+#else
+# ifdef DL_GLOBAL
+# define LT_DLGLOBAL DL_GLOBAL
+# else
+# define LT_DLGLOBAL 0
+# endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+ find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+# ifdef RTLD_LAZY
+# define LT_DLLAZY_OR_NOW RTLD_LAZY
+# else
+# ifdef DL_LAZY
+# define LT_DLLAZY_OR_NOW DL_LAZY
+# else
+# ifdef RTLD_NOW
+# define LT_DLLAZY_OR_NOW RTLD_NOW
+# else
+# ifdef DL_NOW
+# define LT_DLLAZY_OR_NOW DL_NOW
+# else
+# define LT_DLLAZY_OR_NOW 0
+# endif
+# endif
+# endif
+# endif
+#endif
+
+/* When -fvisibility=hidden is used, assume the code has been annotated
+ correspondingly for the symbols needed. */
+#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
+int fnord () __attribute__((visibility("default")));
+#endif
+
+int fnord () { return 42; }
+int main ()
+{
+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+ int status = $lt_dlunknown;
+
+ if (self)
+ {
+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
+ else
+ {
+ if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+ else puts (dlerror ());
+ }
+ /* dlclose (self); */
+ }
+ else
+ puts (dlerror ());
+
+ return status;
+}]
+_LT_EOF
+ if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
+ (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
+ lt_status=$?
+ case x$lt_status in
+ x$lt_dlno_uscore) $1 ;;
+ x$lt_dlneed_uscore) $2 ;;
+ x$lt_dlunknown|x*) $3 ;;
+ esac
+ else :
+ # compilation failed
+ $3
+ fi
+fi
+rm -fr conftest*
+])# _LT_TRY_DLOPEN_SELF
+
+
+# LT_SYS_DLOPEN_SELF
+# ------------------
+AC_DEFUN([LT_SYS_DLOPEN_SELF],
+[m4_require([_LT_HEADER_DLFCN])dnl
+if test yes != "$enable_dlopen"; then
+ enable_dlopen=unknown
+ enable_dlopen_self=unknown
+ enable_dlopen_self_static=unknown
+else
+ lt_cv_dlopen=no
+ lt_cv_dlopen_libs=
+
+ case $host_os in
+ beos*)
+ lt_cv_dlopen=load_add_on
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+ ;;
+
+ mingw* | pw32* | cegcc*)
+ lt_cv_dlopen=LoadLibrary
+ lt_cv_dlopen_libs=
+ ;;
+
+ cygwin*)
+ lt_cv_dlopen=dlopen
+ lt_cv_dlopen_libs=
+ ;;
+
+ darwin*)
+ # if libdl is installed we need to link against it
+ AC_CHECK_LIB([dl], [dlopen],
+ [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
+ lt_cv_dlopen=dyld
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+ ])
+ ;;
+
+ tpf*)
+ # Don't try to run any link tests for TPF. We know it's impossible
+ # because TPF is a cross-compiler, and we know how we open DSOs.
+ lt_cv_dlopen=dlopen
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=no
+ ;;
+
+ *)
+ AC_CHECK_FUNC([shl_load],
+ [lt_cv_dlopen=shl_load],
+ [AC_CHECK_LIB([dld], [shl_load],
+ [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
+ [AC_CHECK_FUNC([dlopen],
+ [lt_cv_dlopen=dlopen],
+ [AC_CHECK_LIB([dl], [dlopen],
+ [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
+ [AC_CHECK_LIB([svld], [dlopen],
+ [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
+ [AC_CHECK_LIB([dld], [dld_link],
+ [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
+ ])
+ ])
+ ])
+ ])
+ ])
+ ;;
+ esac
+
+ if test no = "$lt_cv_dlopen"; then
+ enable_dlopen=no
+ else
+ enable_dlopen=yes
+ fi
+
+ case $lt_cv_dlopen in
+ dlopen)
+ save_CPPFLAGS=$CPPFLAGS
+ test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+
+ save_LDFLAGS=$LDFLAGS
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+
+ save_LIBS=$LIBS
+ LIBS="$lt_cv_dlopen_libs $LIBS"
+
+ AC_CACHE_CHECK([whether a program can dlopen itself],
+ lt_cv_dlopen_self, [dnl
+ _LT_TRY_DLOPEN_SELF(
+ lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
+ lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
+ ])
+
+ if test yes = "$lt_cv_dlopen_self"; then
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
+ AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
+ lt_cv_dlopen_self_static, [dnl
+ _LT_TRY_DLOPEN_SELF(
+ lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
+ lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
+ ])
+ fi
+
+ CPPFLAGS=$save_CPPFLAGS
+ LDFLAGS=$save_LDFLAGS
+ LIBS=$save_LIBS
+ ;;
+ esac
+
+ case $lt_cv_dlopen_self in
+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
+ *) enable_dlopen_self=unknown ;;
+ esac
+
+ case $lt_cv_dlopen_self_static in
+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
+ *) enable_dlopen_self_static=unknown ;;
+ esac
+fi
+_LT_DECL([dlopen_support], [enable_dlopen], [0],
+ [Whether dlopen is supported])
+_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
+ [Whether dlopen of programs is supported])
+_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
+ [Whether dlopen of statically linked programs is supported])
+])# LT_SYS_DLOPEN_SELF
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
+
+
+# _LT_COMPILER_C_O([TAGNAME])
+# ---------------------------
+# Check to see if options -c and -o are simultaneously supported by compiler.
+# This macro does not hard code the compiler like AC_PROG_CC_C_O.
+m4_defun([_LT_COMPILER_C_O],
+[m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_TAG_COMPILER])dnl
+AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
+ [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
+ [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
+ $RM -r conftest 2>/dev/null
+ mkdir conftest
+ cd conftest
+ mkdir out
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ lt_compiler_flag="-o out/conftest2.$ac_objext"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$lt_compile" 2>out/conftest.err)
+ ac_status=$?
+ cat out/conftest.err >&AS_MESSAGE_LOG_FD
+ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+ if (exit $ac_status) && test -s out/conftest2.$ac_objext
+ then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
+ $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+ if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+ _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+ fi
+ fi
+ chmod u+w . 2>&AS_MESSAGE_LOG_FD
+ $RM conftest*
+ # SGI C++ compiler will create directory out/ii_files/ for
+ # template instantiation
+ test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
+ $RM out/* && rmdir out
+ cd ..
+ $RM -r conftest
+ $RM conftest*
+])
+_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
+ [Does compiler simultaneously support -c and -o options?])
+])# _LT_COMPILER_C_O
+
+
+# _LT_COMPILER_FILE_LOCKS([TAGNAME])
+# ----------------------------------
+# Check to see if we can do hard links to lock some files if needed
+m4_defun([_LT_COMPILER_FILE_LOCKS],
+[m4_require([_LT_ENABLE_LOCK])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+_LT_COMPILER_C_O([$1])
+
+hard_links=nottested
+if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
+ # do not overwrite the value of need_locks provided by the user
+ AC_MSG_CHECKING([if we can lock with hard links])
+ hard_links=yes
+ $RM conftest*
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ touch conftest.a
+ ln conftest.a conftest.b 2>&5 || hard_links=no
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ AC_MSG_RESULT([$hard_links])
+ if test no = "$hard_links"; then
+ AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
+ need_locks=warn
+ fi
+else
+ need_locks=no
+fi
+_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
+])# _LT_COMPILER_FILE_LOCKS
+
+
+# _LT_CHECK_OBJDIR
+# ----------------
+m4_defun([_LT_CHECK_OBJDIR],
+[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
+[rm -f .libs 2>/dev/null
+mkdir .libs 2>/dev/null
+if test -d .libs; then
+ lt_cv_objdir=.libs
+else
+ # MS-DOS does not allow filenames that begin with a dot.
+ lt_cv_objdir=_libs
+fi
+rmdir .libs 2>/dev/null])
+objdir=$lt_cv_objdir
+_LT_DECL([], [objdir], [0],
+ [The name of the directory that contains temporary libtool files])dnl
+m4_pattern_allow([LT_OBJDIR])dnl
+AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
+ [Define to the sub-directory where libtool stores uninstalled libraries.])
+])# _LT_CHECK_OBJDIR
+
+
+# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
+# --------------------------------------
+# Check hardcoding attributes.
+m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
+[AC_MSG_CHECKING([how to hardcode library paths into programs])
+_LT_TAGVAR(hardcode_action, $1)=
+if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
+ test -n "$_LT_TAGVAR(runpath_var, $1)" ||
+ test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
+
+ # We can hardcode non-existent directories.
+ if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
+ # have to relink, otherwise we might link with an installed library
+ # when we should be linking with a yet-to-be-installed one
+ ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
+ test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
+ # Linking always hardcodes the temporary library directory.
+ _LT_TAGVAR(hardcode_action, $1)=relink
+ else
+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
+ _LT_TAGVAR(hardcode_action, $1)=immediate
+ fi
+else
+ # We cannot hardcode anything, or else we can only hardcode existing
+ # directories.
+ _LT_TAGVAR(hardcode_action, $1)=unsupported
+fi
+AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
+
+if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
+ test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
+ # Fast installation is not supported
+ enable_fast_install=no
+elif test yes = "$shlibpath_overrides_runpath" ||
+ test no = "$enable_shared"; then
+ # Fast installation is not necessary
+ enable_fast_install=needless
+fi
+_LT_TAGDECL([], [hardcode_action], [0],
+ [How to hardcode a shared library path into an executable])
+])# _LT_LINKER_HARDCODE_LIBPATH
+
+
+# _LT_CMD_STRIPLIB
+# ----------------
+m4_defun([_LT_CMD_STRIPLIB],
+[m4_require([_LT_DECL_EGREP])
+striplib=
+old_striplib=
+AC_MSG_CHECKING([whether stripping libraries is possible])
+if test -z "$STRIP"; then
+ AC_MSG_RESULT([no])
+else
+ if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
+ old_striplib="$STRIP --strip-debug"
+ striplib="$STRIP --strip-unneeded"
+ AC_MSG_RESULT([yes])
+ else
+ case $host_os in
+ darwin*)
+ # FIXME - insert some real tests, host_os isn't really good enough
+ striplib="$STRIP -x"
+ old_striplib="$STRIP -S"
+ AC_MSG_RESULT([yes])
+ ;;
+ freebsd*)
+ if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then
+ old_striplib="$STRIP --strip-debug"
+ striplib="$STRIP --strip-unneeded"
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ fi
+ ;;
+ *)
+ AC_MSG_RESULT([no])
+ ;;
+ esac
+ fi
+fi
+_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
+_LT_DECL([], [striplib], [1])
+])# _LT_CMD_STRIPLIB
+
+
+# _LT_PREPARE_MUNGE_PATH_LIST
+# ---------------------------
+# Make sure func_munge_path_list() is defined correctly.
+m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
+[[# func_munge_path_list VARIABLE PATH
+# -----------------------------------
+# VARIABLE is name of variable containing _space_ separated list of
+# directories to be munged by the contents of PATH, which is string
+# having a format:
+# "DIR[:DIR]:"
+# string "DIR[ DIR]" will be prepended to VARIABLE
+# ":DIR[:DIR]"
+# string "DIR[ DIR]" will be appended to VARIABLE
+# "DIRP[:DIRP]::[DIRA:]DIRA"
+# string "DIRP[ DIRP]" will be prepended to VARIABLE and string
+# "DIRA[ DIRA]" will be appended to VARIABLE
+# "DIR[:DIR]"
+# VARIABLE will be replaced by "DIR[ DIR]"
+func_munge_path_list ()
+{
+ case x@S|@2 in
+ x)
+ ;;
+ *:)
+ eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
+ ;;
+ x:*)
+ eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
+ ;;
+ *::*)
+ eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
+ eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
+ ;;
+ *)
+ eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
+ ;;
+ esac
+}
+]])# _LT_PREPARE_PATH_LIST
+
+
+# _LT_SYS_DYNAMIC_LINKER([TAG])
+# -----------------------------
+# PORTME Fill in your ld.so characteristics
+m4_defun([_LT_SYS_DYNAMIC_LINKER],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_OBJDUMP])dnl
+m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_CHECK_SHELL_FEATURES])dnl
+m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
+AC_MSG_CHECKING([dynamic linker characteristics])
+m4_if([$1],
+ [], [
+if test yes = "$GCC"; then
+ case $host_os in
+ darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
+ *) lt_awk_arg='/^libraries:/' ;;
+ esac
+ case $host_os in
+ mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
+ *) lt_sed_strip_eq='s|=/|/|g' ;;
+ esac
+ lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
+ case $lt_search_path_spec in
+ *\;*)
+ # if the path contains ";" then we assume it to be the separator
+ # otherwise default to the standard path separator (i.e. ":") - it is
+ # assumed that no part of a normal pathname contains ";" but that should
+ # okay in the real world where ";" in dirpaths is itself problematic.
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
+ ;;
+ *)
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
+ ;;
+ esac
+ # Ok, now we have the path, separated by spaces, we can step through it
+ # and add multilib dir if necessary...
+ lt_tmp_lt_search_path_spec=
+ lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+ # ...but if some path component already ends with the multilib dir we assume
+ # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
+ case "$lt_multi_os_dir; $lt_search_path_spec " in
+ "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
+ lt_multi_os_dir=
+ ;;
+ esac
+ for lt_sys_path in $lt_search_path_spec; do
+ if test -d "$lt_sys_path$lt_multi_os_dir"; then
+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
+ elif test -n "$lt_multi_os_dir"; then
+ test -d "$lt_sys_path" && \
+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
+ fi
+ done
+ lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
+BEGIN {RS = " "; FS = "/|\n";} {
+ lt_foo = "";
+ lt_count = 0;
+ for (lt_i = NF; lt_i > 0; lt_i--) {
+ if ($lt_i != "" && $lt_i != ".") {
+ if ($lt_i == "..") {
+ lt_count++;
+ } else {
+ if (lt_count == 0) {
+ lt_foo = "/" $lt_i lt_foo;
+ } else {
+ lt_count--;
+ }
+ }
+ }
+ }
+ if (lt_foo != "") { lt_freq[[lt_foo]]++; }
+ if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
+}'`
+ # AWK program above erroneously prepends '/' to C:/dos/paths
+ # for these hosts.
+ case $host_os in
+ mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
+ $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
+ esac
+ sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
+else
+ sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+fi])
+library_names_spec=
+libname_spec='lib$name'
+soname_spec=
+shrext_cmds=.so
+postinstall_cmds=
+postuninstall_cmds=
+finish_cmds=
+finish_eval=
+shlibpath_var=
+shlibpath_overrides_runpath=unknown
+version_type=none
+dynamic_linker="$host_os ld.so"
+sys_lib_dlsearch_path_spec="/lib /usr/lib"
+need_lib_prefix=unknown
+hardcode_into_libs=no
+
+# when you set need_version to no, make sure it does not cause -set_version
+# flags to be left without arguments
+need_version=unknown
+
+AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
+[User-defined run-time library search path.])
+
+case $host_os in
+aix3*)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
+ shlibpath_var=LIBPATH
+
+ # AIX 3 has no versioning support, so we append a major version to the name.
+ soname_spec='$libname$release$shared_ext$major'
+ ;;
+
+aix[[4-9]]*)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ need_lib_prefix=no
+ need_version=no
+ hardcode_into_libs=yes
+ if test ia64 = "$host_cpu"; then
+ # AIX 5 supports IA64
+ library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
+ shlibpath_var=LD_LIBRARY_PATH
+ else
+ # With GCC up to 2.95.x, collect2 would create an import file
+ # for dependence libraries. The import file would start with
+ # the line '#! .'. This would cause the generated library to
+ # depend on '.', always an invalid library. This was fixed in
+ # development snapshots of GCC prior to 3.0.
+ case $host_os in
+ aix4 | aix4.[[01]] | aix4.[[01]].*)
+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+ echo ' yes '
+ echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
+ :
+ else
+ can_build_shared=no
+ fi
+ ;;
+ esac
+ # Using Import Files as archive members, it is possible to support
+ # filename-based versioning of shared library archives on AIX. While
+ # this would work for both with and without runtime linking, it will
+ # prevent static linking of such archives. So we do filename-based
+ # shared library versioning with .so extension only, which is used
+ # when both runtime linking and shared linking is enabled.
+ # Unfortunately, runtime linking may impact performance, so we do
+ # not want this to be the default eventually. Also, we use the
+ # versioned .so libs for executables only if there is the -brtl
+ # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
+ # To allow for filename-based versioning support, we need to create
+ # libNAME.so.V as an archive file, containing:
+ # *) an Import File, referring to the versioned filename of the
+ # archive as well as the shared archive member, telling the
+ # bitwidth (32 or 64) of that shared object, and providing the
+ # list of exported symbols of that shared object, eventually
+ # decorated with the 'weak' keyword
+ # *) the shared object with the F_LOADONLY flag set, to really avoid
+ # it being seen by the linker.
+ # At run time we better use the real file rather than another symlink,
+ # but for link time we create the symlink libNAME.so -> libNAME.so.V
+
+ case $with_aix_soname,$aix_use_runtimelinking in
+ # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
+ # soname into executable. Probably we can add versioning support to
+ # collect2, so additional links can be useful in future.
+ aix,yes) # traditional libtool
+ dynamic_linker='AIX unversionable lib.so'
+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
+ # instead of lib<name>.a to let people know that these are not
+ # typical AIX shared libraries.
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ ;;
+ aix,no) # traditional AIX only
+ dynamic_linker='AIX lib.a[(]lib.so.V[)]'
+ # We preserve .a as extension for shared libraries through AIX4.2
+ # and later when we are not doing run time linking.
+ library_names_spec='$libname$release.a $libname.a'
+ soname_spec='$libname$release$shared_ext$major'
+ ;;
+ svr4,*) # full svr4 only
+ dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
+ library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
+ # We do not specify a path in Import Files, so LIBPATH fires.
+ shlibpath_overrides_runpath=yes
+ ;;
+ *,yes) # both, prefer svr4
+ dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
+ library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
+ # unpreferred sharedlib libNAME.a needs extra handling
+ postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
+ postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
+ # We do not specify a path in Import Files, so LIBPATH fires.
+ shlibpath_overrides_runpath=yes
+ ;;
+ *,no) # both, prefer aix
+ dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
+ library_names_spec='$libname$release.a $libname.a'
+ soname_spec='$libname$release$shared_ext$major'
+ # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
+ postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
+ postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
+ ;;
+ esac
+ shlibpath_var=LIBPATH
+ fi
+ ;;
+
+amigaos*)
+ case $host_cpu in
+ powerpc)
+ # Since July 2007 AmigaOS4 officially supports .so libraries.
+ # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ ;;
+ m68k)
+ library_names_spec='$libname.ixlibrary $libname.a'
+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+ ;;
+ esac
+ ;;
+
+beos*)
+ library_names_spec='$libname$shared_ext'
+ dynamic_linker="$host_os ld.so"
+ shlibpath_var=LIBRARY_PATH
+ ;;
+
+bsdi[[45]]*)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ need_version=no
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
+ # the default ld.so.conf also contains /usr/contrib/lib and
+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
+ # libtool to hard-code these into programs
+ ;;
+
+cygwin* | mingw* | pw32* | cegcc*)
+ version_type=windows
+ shrext_cmds=.dll
+ need_version=no
+ need_lib_prefix=no
+
+ case $GCC,$cc_basename in
+ yes,*)
+ # gcc
+ library_names_spec='$libname.dll.a'
+ # DLL is installed to $(libdir)/../bin by postinstall_cmds
+ postinstall_cmds='base_file=`basename \$file`~
+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
+ dldir=$destdir/`dirname \$dlpath`~
+ test -d \$dldir || mkdir -p \$dldir~
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname~
+ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+ eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+ fi'
+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
+ dlpath=$dir/\$dldll~
+ $RM \$dlpath'
+ shlibpath_overrides_runpath=yes
+
+ case $host_os in
+ cygwin*)
+ # Cygwin DLLs use 'cyg' prefix rather than 'lib'
+ soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
+m4_if([$1], [],[
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
+ ;;
+ mingw* | cegcc*)
+ # MinGW DLLs use traditional 'lib' prefix
+ soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
+ ;;
+ pw32*)
+ # pw32 DLLs use 'pw' prefix rather than 'lib'
+ library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
+ ;;
+ esac
+ dynamic_linker='Win32 ld.exe'
+ ;;
+
+ *,cl* | *,icl*)
+ # Native MSVC or ICC
+ libname_spec='$name'
+ soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
+ library_names_spec='$libname.dll.lib'
+
+ case $build_os in
+ mingw*)
+ sys_lib_search_path_spec=
+ lt_save_ifs=$IFS
+ IFS=';'
+ for lt_path in $LIB
+ do
+ IFS=$lt_save_ifs
+ # Let DOS variable expansion print the short 8.3 style file name.
+ lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
+ sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
+ done
+ IFS=$lt_save_ifs
+ # Convert to MSYS style.
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
+ ;;
+ cygwin*)
+ # Convert to unix form, then to dos form, then back to unix form
+ # but this time dos style (no spaces!) so that the unix form looks
+ # like /cygdrive/c/PROGRA~1:/cygdr...
+ sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
+ sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
+ sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ ;;
+ *)
+ sys_lib_search_path_spec=$LIB
+ if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
+ # It is most probably a Windows format PATH.
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
+ else
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ fi
+ # FIXME: find the short name or the path components, as spaces are
+ # common. (e.g. "Program Files" -> "PROGRA~1")
+ ;;
+ esac
+
+ # DLL is installed to $(libdir)/../bin by postinstall_cmds
+ postinstall_cmds='base_file=`basename \$file`~
+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
+ dldir=$destdir/`dirname \$dlpath`~
+ test -d \$dldir || mkdir -p \$dldir~
+ $install_prog $dir/$dlname \$dldir/$dlname'
+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
+ dlpath=$dir/\$dldll~
+ $RM \$dlpath'
+ shlibpath_overrides_runpath=yes
+ dynamic_linker='Win32 link.exe'
+ ;;
+
+ *)
+ # Assume MSVC and ICC wrapper
+ library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
+ dynamic_linker='Win32 ld.exe'
+ ;;
+ esac
+ # FIXME: first we should search . and the directory the executable is in
+ shlibpath_var=PATH
+ ;;
+
+darwin* | rhapsody*)
+ dynamic_linker="$host_os dyld"
+ version_type=darwin
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
+ soname_spec='$libname$release$major$shared_ext'
+ shlibpath_overrides_runpath=yes
+ shlibpath_var=DYLD_LIBRARY_PATH
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+m4_if([$1], [],[
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
+ sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
+ ;;
+
+dgux*)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+freebsd* | dragonfly* | midnightbsd*)
+ # DragonFly does not have aout. When/if they implement a new
+ # versioning mechanism, adjust this.
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[[23]].*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
+ version_type=freebsd-$objformat
+ case $version_type in
+ freebsd-elf*)
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ need_version=no
+ need_lib_prefix=no
+ ;;
+ freebsd-*)
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
+ need_version=yes
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_os in
+ freebsd2.*)
+ shlibpath_overrides_runpath=yes
+ ;;
+ freebsd3.[[01]]* | freebsdelf3.[[01]]*)
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
+ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+ *) # from 4.6 on, and DragonFly
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ esac
+ ;;
+
+haiku*)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ need_lib_prefix=no
+ need_version=no
+ dynamic_linker="$host_os runtime_loader"
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ shlibpath_var=LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
+ hardcode_into_libs=yes
+ ;;
+
+hpux9* | hpux10* | hpux11*)
+ # Give a soname corresponding to the major version so that dld.sl refuses to
+ # link against other versions.
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ case $host_cpu in
+ ia64*)
+ shrext_cmds='.so'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.so"
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ if test 32 = "$HPUX_IA64_MODE"; then
+ sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+ sys_lib_dlsearch_path_spec=/usr/lib/hpux32
+ else
+ sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+ sys_lib_dlsearch_path_spec=/usr/lib/hpux64
+ fi
+ ;;
+ hppa*64*)
+ shrext_cmds='.sl'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ *)
+ shrext_cmds='.sl'
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=SHLIB_PATH
+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ ;;
+ esac
+ # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
+ postinstall_cmds='chmod 555 $lib'
+ # or fails outright, so override atomically:
+ install_override_mode=555
+ ;;
+
+interix[[3-9]]*)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $host_os in
+ nonstopux*) version_type=nonstopux ;;
+ *)
+ if test yes = "$lt_cv_prog_gnu_ld"; then
+ version_type=linux # correct to gnu/linux during the next big refactor
+ else
+ version_type=irix
+ fi ;;
+ esac
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='$libname$release$shared_ext$major'
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
+ case $host_os in
+ irix5* | nonstopux*)
+ libsuff= shlibsuff=
+ ;;
+ *)
+ case $LD in # libtool.m4 will add one of these switches to LD
+ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
+ libsuff= shlibsuff= libmagic=32-bit;;
+ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
+ libsuff=32 shlibsuff=N32 libmagic=N32;;
+ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
+ libsuff=64 shlibsuff=64 libmagic=64-bit;;
+ *) libsuff= shlibsuff= libmagic=never-match;;
+ esac
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
+ sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
+ hardcode_into_libs=yes
+ ;;
+
+# No shared lib support for Linux oldld, aout, or coff.
+linux*oldld* | linux*aout* | linux*coff*)
+ dynamic_linker=no
+ ;;
+
+linux*android*)
+ version_type=none # Android doesn't support versioned libraries.
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$shared_ext'
+ soname_spec='$libname$release$shared_ext'
+ finish_cmds=
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ hardcode_into_libs=yes
+
+ dynamic_linker='Android linker'
+ # Don't embed -rpath directories since the linker doesn't support them.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ ;;
+
+# This must be glibc/ELF.
+linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+
+ # Some binutils ld are patched to set DT_RUNPATH
+ AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
+ [lt_cv_shlibpath_overrides_runpath=no
+ save_LDFLAGS=$LDFLAGS
+ save_libdir=$libdir
+ eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
+ LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+ [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
+ [lt_cv_shlibpath_overrides_runpath=yes])])
+ LDFLAGS=$save_LDFLAGS
+ libdir=$save_libdir
+ ])
+ shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
+
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ hardcode_into_libs=yes
+
+ # Add ABI-specific directories to the system library path.
+ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
+
+ # Ideally, we could use ldconfig to report *all* directores which are
+ # searched for libraries, however this is still not possible. Aside from not
+ # being certain /sbin/ldconfig is available, command
+ # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
+ # even though it is searched at run-time. Try to do the best guess by
+ # appending ld.so.conf contents (and includes) to the search path.
+ if test -f /etc/ld.so.conf; then
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
+ fi
+
+ # We used to test for /lib/ld.so.1 and disable shared libraries on
+ # powerpc, because MkLinux only supported shared libraries with the
+ # GNU dynamic linker. Since this was broken with cross compilers,
+ # most powerpc-linux boxes support dynamic linking these days and
+ # people can always --disable-shared, the test was removed, and we
+ # assume the GNU/Linux dynamic linker is in use.
+ dynamic_linker='GNU/Linux ld.so'
+ ;;
+
+netbsd*)
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ dynamic_linker='NetBSD (a.out) ld.so'
+ else
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ dynamic_linker='NetBSD ld.elf_so'
+ fi
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+
+newsos6)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ ;;
+
+*nto* | *qnx*)
+ version_type=qnx
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ dynamic_linker='ldqnx.so'
+ ;;
+
+openbsd* | bitrig*)
+ version_type=sunos
+ sys_lib_dlsearch_path_spec=/usr/lib
+ need_lib_prefix=no
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
+ need_version=no
+ else
+ need_version=yes
+ fi
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ ;;
+
+os2*)
+ libname_spec='$name'
+ version_type=windows
+ shrext_cmds=.dll
+ need_version=no
+ need_lib_prefix=no
+ # OS/2 can only load a DLL with a base name of 8 characters or less.
+ soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
+ v=$($ECHO $release$versuffix | tr -d .-);
+ n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
+ $ECHO $n$v`$shared_ext'
+ library_names_spec='${libname}_dll.$libext'
+ dynamic_linker='OS/2 ld.exe'
+ shlibpath_var=BEGINLIBPATH
+ sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ postinstall_cmds='base_file=`basename \$file`~
+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
+ dldir=$destdir/`dirname \$dlpath`~
+ test -d \$dldir || mkdir -p \$dldir~
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname~
+ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+ eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+ fi'
+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
+ dlpath=$dir/\$dldll~
+ $RM \$dlpath'
+ ;;
+
+osf3* | osf4* | osf5*)
+ version_type=osf
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='$libname$release$shared_ext$major'
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ shlibpath_var=LD_LIBRARY_PATH
+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+
+rdos*)
+ dynamic_linker=no
+ ;;
+
+solaris*)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ # ldd complains unless libraries are executable
+ postinstall_cmds='chmod +x $lib'
+ ;;
+
+sunos4*)
+ version_type=sunos
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ if test yes = "$with_gnu_ld"; then
+ need_lib_prefix=no
+ fi
+ need_version=yes
+ ;;
+
+sysv4 | sysv4.3*)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_vendor in
+ sni)
+ shlibpath_overrides_runpath=no
+ need_lib_prefix=no
+ runpath_var=LD_RUN_PATH
+ ;;
+ siemens)
+ need_lib_prefix=no
+ ;;
+ motorola)
+ need_lib_prefix=no
+ need_version=no
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
+ ;;
+ esac
+ ;;
+
+sysv4*MP*)
+ if test -d /usr/nec; then
+ version_type=linux # correct to gnu/linux during the next big refactor
+ library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
+ soname_spec='$libname$shared_ext.$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ fi
+ ;;
+
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ version_type=sco
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ if test yes = "$with_gnu_ld"; then
+ sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
+ else
+ sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
+ case $host_os in
+ sco3.2v5*)
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
+ ;;
+ esac
+ fi
+ sys_lib_dlsearch_path_spec='/usr/lib'
+ ;;
+
+tpf*)
+ # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
+ version_type=linux # correct to gnu/linux during the next big refactor
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
+uts4*)
+ version_type=linux # correct to gnu/linux during the next big refactor
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+ soname_spec='$libname$release$shared_ext$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+*)
+ dynamic_linker=no
+ ;;
+esac
+AC_MSG_RESULT([$dynamic_linker])
+test no = "$dynamic_linker" && can_build_shared=no
+
+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+if test yes = "$GCC"; then
+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+fi
+
+if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
+ sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
+fi
+
+if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
+ sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
+fi
+
+# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
+configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
+
+# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
+func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
+
+# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
+configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
+
+_LT_DECL([], [variables_saved_for_relink], [1],
+ [Variables whose values should be saved in libtool wrapper scripts and
+ restored at link time])
+_LT_DECL([], [need_lib_prefix], [0],
+ [Do we need the "lib" prefix for modules?])
+_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
+_LT_DECL([], [version_type], [0], [Library versioning type])
+_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
+_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
+_LT_DECL([], [shlibpath_overrides_runpath], [0],
+ [Is shlibpath searched before the hard-coded library search path?])
+_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
+_LT_DECL([], [library_names_spec], [1],
+ [[List of archive names. First name is the real one, the rest are links.
+ The last name is the one that the linker finds with -lNAME]])
+_LT_DECL([], [soname_spec], [1],
+ [[The coded name of the library, if different from the real name]])
+_LT_DECL([], [install_override_mode], [1],
+ [Permission mode override for installation of shared libraries])
+_LT_DECL([], [postinstall_cmds], [2],
+ [Command to use after installation of a shared archive])
+_LT_DECL([], [postuninstall_cmds], [2],
+ [Command to use after uninstallation of a shared archive])
+_LT_DECL([], [finish_cmds], [2],
+ [Commands used to finish a libtool library installation in a directory])
+_LT_DECL([], [finish_eval], [1],
+ [[As "finish_cmds", except a single script fragment to be evaled but
+ not shown]])
+_LT_DECL([], [hardcode_into_libs], [0],
+ [Whether we should hardcode library paths into libraries])
+_LT_DECL([], [sys_lib_search_path_spec], [2],
+ [Compile-time system search path for libraries])
+_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
+ [Detected run-time system search path for libraries])
+_LT_DECL([], [configure_time_lt_sys_library_path], [2],
+ [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
+])# _LT_SYS_DYNAMIC_LINKER
+
+
+# _LT_PATH_TOOL_PREFIX(TOOL)
+# --------------------------
+# find a file program that can recognize shared library
+AC_DEFUN([_LT_PATH_TOOL_PREFIX],
+[m4_require([_LT_DECL_EGREP])dnl
+AC_MSG_CHECKING([for $1])
+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
+[case $MAGIC_CMD in
+[[\\/*] | ?:[\\/]*])
+ lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
+ ;;
+*)
+ lt_save_MAGIC_CMD=$MAGIC_CMD
+ lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
+dnl $ac_dummy forces splitting on constant user-supplied paths.
+dnl POSIX.2 word splitting is done only on the output of word expansions,
+dnl not every word. This closes a longstanding sh security hole.
+ ac_dummy="m4_if([$2], , $PATH, [$2])"
+ for ac_dir in $ac_dummy; do
+ IFS=$lt_save_ifs
+ test -z "$ac_dir" && ac_dir=.
+ if test -f "$ac_dir/$1"; then
+ lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
+ if test -n "$file_magic_test_file"; then
+ case $deplibs_check_method in
+ "file_magic "*)
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
+ MAGIC_CMD=$lt_cv_path_MAGIC_CMD
+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+ $EGREP "$file_magic_regex" > /dev/null; then
+ :
+ else
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such. This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem. Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+_LT_EOF
+ fi ;;
+ esac
+ fi
+ break
+ fi
+ done
+ IFS=$lt_save_ifs
+ MAGIC_CMD=$lt_save_MAGIC_CMD
+ ;;
+esac])
+MAGIC_CMD=$lt_cv_path_MAGIC_CMD
+if test -n "$MAGIC_CMD"; then
+ AC_MSG_RESULT($MAGIC_CMD)
+else
+ AC_MSG_RESULT(no)
+fi
+_LT_DECL([], [MAGIC_CMD], [0],
+ [Used to examine libraries when file_magic_cmd begins with "file"])dnl
+])# _LT_PATH_TOOL_PREFIX
+
+# Old name:
+AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
+
+
+# _LT_PATH_MAGIC
+# --------------
+# find a file program that can recognize a shared library
+m4_defun([_LT_PATH_MAGIC],
+[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
+if test -z "$lt_cv_path_MAGIC_CMD"; then
+ if test -n "$ac_tool_prefix"; then
+ _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
+ else
+ MAGIC_CMD=:
+ fi
+fi
+])# _LT_PATH_MAGIC
+
+
+# LT_PATH_LD
+# ----------
+# find the pathname to the GNU or non-GNU linker
+AC_DEFUN([LT_PATH_LD],
+[AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
+
+AC_ARG_WITH([gnu-ld],
+ [AS_HELP_STRING([--with-gnu-ld],
+ [assume the C compiler uses GNU ld @<:@default=no@:>@])],
+ [test no = "$withval" || with_gnu_ld=yes],
+ [with_gnu_ld=no])dnl
+
+ac_prog=ld
+if test yes = "$GCC"; then
+ # Check if gcc -print-prog-name=ld gives a path.
+ AC_MSG_CHECKING([for ld used by $CC])
+ case $host in
+ *-*-mingw*)
+ # gcc leaves a trailing carriage return, which upsets mingw
+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+ *)
+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+ esac
+ case $ac_prog in
+ # Accept absolute paths.
+ [[\\/]]* | ?:[[\\/]]*)
+ re_direlt='/[[^/]][[^/]]*/\.\./'
+ # Canonicalize the pathname of ld
+ ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
+ while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
+ ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
+ done
+ test -z "$LD" && LD=$ac_prog
+ ;;
+ "")
+ # If it fails, then pretend we aren't using GCC.
+ ac_prog=ld
+ ;;
+ *)
+ # If it is relative, then search for the first ld in PATH.
+ with_gnu_ld=unknown
+ ;;
+ esac
+elif test yes = "$with_gnu_ld"; then
+ AC_MSG_CHECKING([for GNU ld])
+else
+ AC_MSG_CHECKING([for non-GNU ld])
+fi
+AC_CACHE_VAL(lt_cv_path_LD,
+[if test -z "$LD"; then
+ lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH; do
+ IFS=$lt_save_ifs
+ test -z "$ac_dir" && ac_dir=.
+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+ lt_cv_path_LD=$ac_dir/$ac_prog
+ # Check to see if the program is GNU ld. I'd rather use --version,
+ # but apparently some variants of GNU ld only accept -v.
+ # Break only if it was the GNU/non-GNU ld that we prefer.
+ case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
+ *GNU* | *'with BFD'*)
+ test no != "$with_gnu_ld" && break
+ ;;
+ *)
+ test yes != "$with_gnu_ld" && break
+ ;;
+ esac
+ fi
+ done
+ IFS=$lt_save_ifs
+else
+ lt_cv_path_LD=$LD # Let the user override the test with a path.
+fi])
+LD=$lt_cv_path_LD
+if test -n "$LD"; then
+ AC_MSG_RESULT($LD)
+else
+ AC_MSG_RESULT(no)
+fi
+test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
+_LT_PATH_LD_GNU
+AC_SUBST([LD])
+
+_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
+])# LT_PATH_LD
+
+# Old names:
+AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
+AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_PROG_LD], [])
+dnl AC_DEFUN([AC_PROG_LD], [])
+
+
+# _LT_PATH_LD_GNU
+#- --------------
+m4_defun([_LT_PATH_LD_GNU],
+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
+[# I'd rather use --version here, but apparently some GNU lds only accept -v.
+case `$LD -v 2>&1 </dev/null` in
+*GNU* | *'with BFD'*)
+ lt_cv_prog_gnu_ld=yes
+ ;;
+*)
+ lt_cv_prog_gnu_ld=no
+ ;;
+esac])
+with_gnu_ld=$lt_cv_prog_gnu_ld
+])# _LT_PATH_LD_GNU
+
+
+# _LT_CMD_RELOAD
+# --------------
+# find reload flag for linker
+# -- PORTME Some linkers may need a different reload flag.
+m4_defun([_LT_CMD_RELOAD],
+[AC_CACHE_CHECK([for $LD option to reload object files],
+ lt_cv_ld_reload_flag,
+ [lt_cv_ld_reload_flag='-r'])
+reload_flag=$lt_cv_ld_reload_flag
+case $reload_flag in
+"" | " "*) ;;
+*) reload_flag=" $reload_flag" ;;
+esac
+reload_cmds='$LD$reload_flag -o $output$reload_objs'
+case $host_os in
+ cygwin* | mingw* | pw32* | cegcc*)
+ if test yes != "$GCC"; then
+ reload_cmds=false
+ fi
+ ;;
+ darwin*)
+ if test yes = "$GCC"; then
+ reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
+ else
+ reload_cmds='$LD$reload_flag -o $output$reload_objs'
+ fi
+ ;;
+esac
+_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
+_LT_TAGDECL([], [reload_cmds], [2])dnl
+])# _LT_CMD_RELOAD
+
+
+# _LT_PATH_DD
+# -----------
+# find a working dd
+m4_defun([_LT_PATH_DD],
+[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
+[printf 0123456789abcdef0123456789abcdef >conftest.i
+cat conftest.i conftest.i >conftest2.i
+: ${lt_DD:=$DD}
+AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
+[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
+ cmp -s conftest.i conftest.out \
+ && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
+fi])
+rm -f conftest.i conftest2.i conftest.out])
+])# _LT_PATH_DD
+
+
+# _LT_CMD_TRUNCATE
+# ----------------
+# find command to truncate a binary pipe
+m4_defun([_LT_CMD_TRUNCATE],
+[m4_require([_LT_PATH_DD])
+AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
+[printf 0123456789abcdef0123456789abcdef >conftest.i
+cat conftest.i conftest.i >conftest2.i
+lt_cv_truncate_bin=
+if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
+ cmp -s conftest.i conftest.out \
+ && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
+fi
+rm -f conftest.i conftest2.i conftest.out
+test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
+_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
+ [Command to truncate a binary pipe])
+])# _LT_CMD_TRUNCATE
+
+
+# _LT_CHECK_MAGIC_METHOD
+# ----------------------
+# how to check for library dependencies
+# -- PORTME fill in with the dynamic library characteristics
+m4_defun([_LT_CHECK_MAGIC_METHOD],
+[m4_require([_LT_DECL_EGREP])
+m4_require([_LT_DECL_OBJDUMP])
+AC_CACHE_CHECK([how to recognize dependent libraries],
+lt_cv_deplibs_check_method,
+[lt_cv_file_magic_cmd='$MAGIC_CMD'
+lt_cv_file_magic_test_file=
+lt_cv_deplibs_check_method='unknown'
+# Need to set the preceding variable on all platforms that support
+# interlibrary dependencies.
+# 'none' -- dependencies not supported.
+# 'unknown' -- same as none, but documents that we really don't know.
+# 'pass_all' -- all dependencies passed with no checks.
+# 'test_compile' -- check by making test program.
+# 'file_magic [[regex]]' -- check by looking for files in library path
+# that responds to the $file_magic_cmd with a given extended regex.
+# If you have 'file' or equivalent on your system and you're not sure
+# whether 'pass_all' will *always* work, you probably want this one.
+
+case $host_os in
+aix[[4-9]]*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+beos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+bsdi[[45]]*)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
+ lt_cv_file_magic_cmd='$FILECMD -L'
+ lt_cv_file_magic_test_file=/shlib/libc.so
+ ;;
+
+cygwin*)
+ # func_win32_libid is a shell function defined in ltmain.sh
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ ;;
+
+mingw* | pw32*)
+ # Base MSYS/MinGW do not provide the 'file' command needed by
+ # func_win32_libid shell function, so use a weaker test based on 'objdump',
+ # unless we find 'file', for example because we are cross-compiling.
+ if ( file / ) >/dev/null 2>&1; then
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ else
+ # Keep this pattern in sync with the one in func_win32_libid.
+ lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ fi
+ ;;
+
+cegcc*)
+ # use the weaker test based on 'objdump'. See mingw*.
+ lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ ;;
+
+darwin* | rhapsody*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+freebsd* | dragonfly* | midnightbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+ case $host_cpu in
+ i*86 )
+ # Not sure whether the presence of OpenBSD here was a mistake.
+ # Let's accept both of them until this is cleared up.
+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
+ lt_cv_file_magic_cmd=$FILECMD
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+ ;;
+ esac
+ else
+ lt_cv_deplibs_check_method=pass_all
+ fi
+ ;;
+
+haiku*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+hpux10.20* | hpux11*)
+ lt_cv_file_magic_cmd=$FILECMD
+ case $host_cpu in
+ ia64*)
+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
+ lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
+ ;;
+ hppa*64*)
+ [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
+ lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
+ ;;
+ *)
+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
+ lt_cv_file_magic_test_file=/usr/lib/libc.sl
+ ;;
+ esac
+ ;;
+
+interix[[3-9]]*)
+ # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $LD in
+ *-32|*"-32 ") libmagic=32-bit;;
+ *-n32|*"-n32 ") libmagic=N32;;
+ *-64|*"-64 ") libmagic=64-bit;;
+ *) libmagic=never-match;;
+ esac
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+# This must be glibc/ELF.
+linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
+ fi
+ ;;
+
+newos6*)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
+ lt_cv_file_magic_cmd=$FILECMD
+ lt_cv_file_magic_test_file=/usr/lib/libnls.so
+ ;;
+
+*nto* | *qnx*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+openbsd* | bitrig*)
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+ fi
+ ;;
+
+osf3* | osf4* | osf5*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+rdos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+solaris*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sysv4 | sysv4.3*)
+ case $host_vendor in
+ motorola)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
+ ;;
+ ncr)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ sequent)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
+ ;;
+ sni)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
+ lt_cv_file_magic_test_file=/lib/libc.so
+ ;;
+ siemens)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ pc)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ esac
+ ;;
+
+tpf*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+os2*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+esac
+])
+
+file_magic_glob=
+want_nocaseglob=no
+if test "$build" = "$host"; then
+ case $host_os in
+ mingw* | pw32*)
+ if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
+ want_nocaseglob=yes
+ else
+ file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
+ fi
+ ;;
+ esac
+fi
+
+file_magic_cmd=$lt_cv_file_magic_cmd
+deplibs_check_method=$lt_cv_deplibs_check_method
+test -z "$deplibs_check_method" && deplibs_check_method=unknown
+
+_LT_DECL([], [deplibs_check_method], [1],
+ [Method to check whether dependent libraries are shared objects])
+_LT_DECL([], [file_magic_cmd], [1],
+ [Command to use when deplibs_check_method = "file_magic"])
+_LT_DECL([], [file_magic_glob], [1],
+ [How to find potential files when deplibs_check_method = "file_magic"])
+_LT_DECL([], [want_nocaseglob], [1],
+ [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
+])# _LT_CHECK_MAGIC_METHOD
+
+
+# LT_PATH_NM
+# ----------
+# find the pathname to a BSD- or MS-compatible name lister
+AC_DEFUN([LT_PATH_NM],
+[AC_REQUIRE([AC_PROG_CC])dnl
+AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
+[if test -n "$NM"; then
+ # Let the user override the test.
+ lt_cv_path_NM=$NM
+else
+ lt_nm_to_check=${ac_tool_prefix}nm
+ if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
+ lt_nm_to_check="$lt_nm_to_check nm"
+ fi
+ for lt_tmp_nm in $lt_nm_to_check; do
+ lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
+ IFS=$lt_save_ifs
+ test -z "$ac_dir" && ac_dir=.
+ tmp_nm=$ac_dir/$lt_tmp_nm
+ if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
+ # Check to see if the nm accepts a BSD-compat flag.
+ # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ # Tru64's nm complains that /dev/null is an invalid object file
+ # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
+ case $build_os in
+ mingw*) lt_bad_file=conftest.nm/nofile ;;
+ *) lt_bad_file=/dev/null ;;
+ esac
+ case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in
+ *$lt_bad_file* | *'Invalid file or object type'*)
+ lt_cv_path_NM="$tmp_nm -B"
+ break 2
+ ;;
+ *)
+ case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in
+ */dev/null*)
+ lt_cv_path_NM="$tmp_nm -p"
+ break 2
+ ;;
+ *)
+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+ continue # so that we can try to find one that supports BSD flags
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ done
+ IFS=$lt_save_ifs
+ done
+ : ${lt_cv_path_NM=no}
+fi])
+if test no != "$lt_cv_path_NM"; then
+ NM=$lt_cv_path_NM
+else
+ # Didn't find any BSD compatible name lister, look for dumpbin.
+ if test -n "$DUMPBIN"; then :
+ # Let the user override the test.
+ else
+ AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
+ case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in
+ *COFF*)
+ DUMPBIN="$DUMPBIN -symbols -headers"
+ ;;
+ *)
+ DUMPBIN=:
+ ;;
+ esac
+ fi
+ AC_SUBST([DUMPBIN])
+ if test : != "$DUMPBIN"; then
+ NM=$DUMPBIN
+ fi
+fi
+test -z "$NM" && NM=nm
+AC_SUBST([NM])
+_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
+
+AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
+ [lt_cv_nm_interface="BSD nm"
+ echo "int some_variable = 0;" > conftest.$ac_ext
+ (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$ac_compile" 2>conftest.err)
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
+ cat conftest.out >&AS_MESSAGE_LOG_FD
+ if $GREP 'External.*some_variable' conftest.out > /dev/null; then
+ lt_cv_nm_interface="MS dumpbin"
+ fi
+ rm -f conftest*])
+])# LT_PATH_NM
+
+# Old names:
+AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
+AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_PROG_NM], [])
+dnl AC_DEFUN([AC_PROG_NM], [])
+
+# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
+# --------------------------------
+# how to determine the name of the shared library
+# associated with a specific link library.
+# -- PORTME fill in with the dynamic library characteristics
+m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
+[m4_require([_LT_DECL_EGREP])
+m4_require([_LT_DECL_OBJDUMP])
+m4_require([_LT_DECL_DLLTOOL])
+AC_CACHE_CHECK([how to associate runtime and link libraries],
+lt_cv_sharedlib_from_linklib_cmd,
+[lt_cv_sharedlib_from_linklib_cmd='unknown'
+
+case $host_os in
+cygwin* | mingw* | pw32* | cegcc*)
+ # two different shell functions defined in ltmain.sh;
+ # decide which one to use based on capabilities of $DLLTOOL
+ case `$DLLTOOL --help 2>&1` in
+ *--identify-strict*)
+ lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
+ ;;
+ *)
+ lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
+ ;;
+ esac
+ ;;
+*)
+ # fallback: assume linklib IS sharedlib
+ lt_cv_sharedlib_from_linklib_cmd=$ECHO
+ ;;
+esac
+])
+sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
+test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
+
+_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
+ [Command to associate shared and link libraries])
+])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
+
+
+# _LT_PATH_MANIFEST_TOOL
+# ----------------------
+# locate the manifest tool
+m4_defun([_LT_PATH_MANIFEST_TOOL],
+[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
+test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
+AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
+ [lt_cv_path_mainfest_tool=no
+ echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
+ $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ if $GREP 'Manifest Tool' conftest.out > /dev/null; then
+ lt_cv_path_mainfest_tool=yes
+ fi
+ rm -f conftest*])
+if test yes != "$lt_cv_path_mainfest_tool"; then
+ MANIFEST_TOOL=:
+fi
+_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
+])# _LT_PATH_MANIFEST_TOOL
+
+
+# _LT_DLL_DEF_P([FILE])
+# ---------------------
+# True iff FILE is a Windows DLL '.def' file.
+# Keep in sync with func_dll_def_p in the libtool script
+AC_DEFUN([_LT_DLL_DEF_P],
+[dnl
+ test DEF = "`$SED -n dnl
+ -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace
+ -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments
+ -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl
+ -e q dnl Only consider the first "real" line
+ $1`" dnl
+])# _LT_DLL_DEF_P
+
+
+# LT_LIB_M
+# --------
+# check for math library
+AC_DEFUN([LT_LIB_M],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+LIBM=
+case $host in
+*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
+ # These system don't have libm, or don't need it
+ ;;
+*-ncr-sysv4.3*)
+ AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
+ AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
+ ;;
+*)
+ AC_CHECK_LIB(m, cos, LIBM=-lm)
+ ;;
+esac
+AC_SUBST([LIBM])
+])# LT_LIB_M
+
+# Old name:
+AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_CHECK_LIBM], [])
+
+
+# _LT_COMPILER_NO_RTTI([TAGNAME])
+# -------------------------------
+m4_defun([_LT_COMPILER_NO_RTTI],
+[m4_require([_LT_TAG_COMPILER])dnl
+
+_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+
+if test yes = "$GCC"; then
+ case $cc_basename in
+ nvcc*)
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
+ esac
+
+ _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
+ lt_cv_prog_compiler_rtti_exceptions,
+ [-fno-rtti -fno-exceptions], [],
+ [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
+fi
+_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
+ [Compiler flag to turn off builtin functions])
+])# _LT_COMPILER_NO_RTTI
+
+
+# _LT_CMD_GLOBAL_SYMBOLS
+# ----------------------
+m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_PROG_AWK])dnl
+AC_REQUIRE([LT_PATH_NM])dnl
+AC_REQUIRE([LT_PATH_LD])dnl
+m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_TAG_COMPILER])dnl
+
+# Check for command to grab the raw symbol name followed by C symbol from nm.
+AC_MSG_CHECKING([command to parse $NM output from $compiler object])
+AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
+[
+# These are sane defaults that work on at least a few old systems.
+# [They come from Ultrix. What could be older than Ultrix?!! ;)]
+
+# Character class describing NM global symbol codes.
+symcode='[[BCDEGRST]]'
+
+# Regexp to match symbols that can be accessed directly from C.
+sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
+
+# Define system-specific variables.
+case $host_os in
+aix*)
+ symcode='[[BCDT]]'
+ ;;
+cygwin* | mingw* | pw32* | cegcc*)
+ symcode='[[ABCDGISTW]]'
+ ;;
+hpux*)
+ if test ia64 = "$host_cpu"; then
+ symcode='[[ABCDEGRST]]'
+ fi
+ ;;
+irix* | nonstopux*)
+ symcode='[[BCDEGRST]]'
+ ;;
+osf*)
+ symcode='[[BCDEGQRST]]'
+ ;;
+solaris*)
+ symcode='[[BDRT]]'
+ ;;
+sco3.2v5*)
+ symcode='[[DT]]'
+ ;;
+sysv4.2uw2*)
+ symcode='[[DT]]'
+ ;;
+sysv5* | sco5v6* | unixware* | OpenUNIX*)
+ symcode='[[ABDT]]'
+ ;;
+sysv4)
+ symcode='[[DFNSTU]]'
+ ;;
+esac
+
+# If we're using GNU nm, then use its standard symbol codes.
+case `$NM -V 2>&1` in
+*GNU* | *'with BFD'*)
+ symcode='[[ABCDGIRSTW]]' ;;
+esac
+
+if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+ # Gets list of data symbols to import.
+ lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'"
+ # Adjust the below global symbol transforms to fixup imported variables.
+ lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
+ lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
+ lt_c_name_lib_hook="\
+ -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\
+ -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"
+else
+ # Disable hooks by default.
+ lt_cv_sys_global_symbol_to_import=
+ lt_cdecl_hook=
+ lt_c_name_hook=
+ lt_c_name_lib_hook=
+fi
+
+# Transform an extracted symbol line into a proper C declaration.
+# Some systems (esp. on ia64) link data and code symbols differently,
+# so use this general approach.
+lt_cv_sys_global_symbol_to_cdecl="$SED -n"\
+$lt_cdecl_hook\
+" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
+
+# Transform an extracted symbol line into symbol name and symbol address
+lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\
+$lt_c_name_hook\
+" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
+
+# Transform an extracted symbol line into symbol name with lib prefix and
+# symbol address.
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\
+$lt_c_name_lib_hook\
+" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
+" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"
+
+# Handle CRLF in mingw tool chain
+opt_cr=
+case $build_os in
+mingw*)
+ opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
+ ;;
+esac
+
+# Try without a prefix underscore, then with it.
+for ac_symprfx in "" "_"; do
+
+ # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
+ symxfrm="\\1 $ac_symprfx\\2 \\2"
+
+ # Write the raw and C identifiers.
+ if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+ # Fake it for dumpbin and say T for any non-static function,
+ # D for any global variable and I for any imported variable.
+ # Also find C++ and __fastcall symbols from MSVC++ or ICC,
+ # which start with @ or ?.
+ lt_cv_sys_global_symbol_pipe="$AWK ['"\
+" {last_section=section; section=\$ 3};"\
+" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
+" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
+" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
+" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
+" \$ 0!~/External *\|/{next};"\
+" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
+" {if(hide[section]) next};"\
+" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
+" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
+" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
+" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
+" ' prfx=^$ac_symprfx]"
+ else
+ lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+ fi
+ lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'"
+
+ # Check to see that the pipe works correctly.
+ pipe_works=no
+
+ rm -f conftest*
+ cat > conftest.$ac_ext <<_LT_EOF
+#ifdef __cplusplus
+extern "C" {
+#endif
+char nm_test_var;
+void nm_test_func(void);
+void nm_test_func(void){}
+#ifdef __cplusplus
+}
+#endif
+int main(){nm_test_var='a';nm_test_func();return(0);}
+_LT_EOF
+
+ if AC_TRY_EVAL(ac_compile); then
+ # Now try to grab the symbols.
+ nlist=conftest.nm
+ if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
+ # Try sorting and uniquifying the output.
+ if sort "$nlist" | uniq > "$nlist"T; then
+ mv -f "$nlist"T "$nlist"
+ else
+ rm -f "$nlist"T
+ fi
+
+ # Make sure that we snagged all the symbols we need.
+ if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
+ if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
+ cat <<_LT_EOF > conftest.$ac_ext
+/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
+#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
+/* DATA imports from DLLs on WIN32 can't be const, because runtime
+ relocations are performed -- see ld's documentation on pseudo-relocs. */
+# define LT@&t@_DLSYM_CONST
+#elif defined __osf__
+/* This system does not cope well with relocations in const data. */
+# define LT@&t@_DLSYM_CONST
+#else
+# define LT@&t@_DLSYM_CONST const
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+_LT_EOF
+ # Now generate the symbol file.
+ eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
+
+ cat <<_LT_EOF >> conftest.$ac_ext
+
+/* The mapping between symbol names and symbols. */
+LT@&t@_DLSYM_CONST struct {
+ const char *name;
+ void *address;
+}
+lt__PROGRAM__LTX_preloaded_symbols[[]] =
+{
+ { "@PROGRAM@", (void *) 0 },
+_LT_EOF
+ $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+ cat <<\_LT_EOF >> conftest.$ac_ext
+ {0, (void *) 0}
+};
+
+/* This works around a problem in FreeBSD linker */
+#ifdef FREEBSD_WORKAROUND
+static const void *lt_preloaded_setup() {
+ return lt__PROGRAM__LTX_preloaded_symbols;
+}
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+_LT_EOF
+ # Now try linking the two files.
+ mv conftest.$ac_objext conftstm.$ac_objext
+ lt_globsym_save_LIBS=$LIBS
+ lt_globsym_save_CFLAGS=$CFLAGS
+ LIBS=conftstm.$ac_objext
+ CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
+ if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
+ pipe_works=yes
+ fi
+ LIBS=$lt_globsym_save_LIBS
+ CFLAGS=$lt_globsym_save_CFLAGS
+ else
+ echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
+ cat conftest.$ac_ext >&5
+ fi
+ rm -rf conftest* conftst*
+
+ # Do not use the global_symbol_pipe unless it works.
+ if test yes = "$pipe_works"; then
+ break
+ else
+ lt_cv_sys_global_symbol_pipe=
+ fi
+done
+])
+if test -z "$lt_cv_sys_global_symbol_pipe"; then
+ lt_cv_sys_global_symbol_to_cdecl=
+fi
+if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
+ AC_MSG_RESULT(failed)
+else
+ AC_MSG_RESULT(ok)
+fi
+
+# Response file support.
+if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+ nm_file_list_spec='@'
+elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
+ nm_file_list_spec='@'
+fi
+
+_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
+ [Take the output of nm and produce a listing of raw symbols and C names])
+_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
+ [Transform the output of nm in a proper C declaration])
+_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
+ [Transform the output of nm into a list of symbols to manually relocate])
+_LT_DECL([global_symbol_to_c_name_address],
+ [lt_cv_sys_global_symbol_to_c_name_address], [1],
+ [Transform the output of nm in a C name address pair])
+_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
+ [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
+ [Transform the output of nm in a C name address pair when lib prefix is needed])
+_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
+ [The name lister interface])
+_LT_DECL([], [nm_file_list_spec], [1],
+ [Specify filename containing input files for $NM])
+]) # _LT_CMD_GLOBAL_SYMBOLS
+
+
+# _LT_COMPILER_PIC([TAGNAME])
+# ---------------------------
+m4_defun([_LT_COMPILER_PIC],
+[m4_require([_LT_TAG_COMPILER])dnl
+_LT_TAGVAR(lt_prog_compiler_wl, $1)=
+_LT_TAGVAR(lt_prog_compiler_pic, $1)=
+_LT_TAGVAR(lt_prog_compiler_static, $1)=
+
+m4_if([$1], [CXX], [
+ # C++ specific cases for pic, static, wl, etc.
+ if test yes = "$GXX"; then
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+
+ case $host_os in
+ aix*)
+ # All AIX code is PIC.
+ if test ia64 = "$host_cpu"; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ m68k)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the '-m68020' flag to GCC prevents building anything better,
+ # like '-m68040'.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+ ;;
+ esac
+ ;;
+
+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+ # PIC is the default for these OSes.
+ ;;
+ mingw* | cygwin* | os2* | pw32* | cegcc*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ # Although the cygwin gcc ignores -fPIC, still need this for old-style
+ # (--disable-auto-import) libraries
+ m4_if([$1], [GCJ], [],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+ case $host_os in
+ os2*)
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
+ ;;
+ esac
+ ;;
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+ ;;
+ *djgpp*)
+ # DJGPP does not support shared libraries at all
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ ;;
+ haiku*)
+ # PIC is the default for Haiku.
+ # The "-static" flag exists, but is broken.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)=
+ ;;
+ interix[[3-9]]*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+ fi
+ ;;
+ hpux*)
+ # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+ # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
+ # sets the default TLS model and affects inlining.
+ case $host_cpu in
+ hppa*64*)
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ ;;
+ *qnx* | *nto*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ else
+ case $host_os in
+ aix[[4-9]]*)
+ # All AIX code is PIC.
+ if test ia64 = "$host_cpu"; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ else
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+ fi
+ ;;
+ chorus*)
+ case $cc_basename in
+ cxch68*)
+ # Green Hills C++ Compiler
+ # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
+ ;;
+ esac
+ ;;
+ mingw* | cygwin* | os2* | pw32* | cegcc*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ m4_if([$1], [GCJ], [],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+ ;;
+ dgux*)
+ case $cc_basename in
+ ec++*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ ;;
+ ghcx*)
+ # Green Hills C++ Compiler
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ freebsd* | dragonfly* | midnightbsd*)
+ # FreeBSD uses GNU C++
+ ;;
+ hpux9* | hpux10* | hpux11*)
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
+ if test ia64 != "$host_cpu"; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ fi
+ ;;
+ aCC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
+ case $host_cpu in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ ;;
+ esac
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ interix*)
+ # This is c89, which is MS Visual C++ (no shared libs)
+ # Anyone wants to do a port?
+ ;;
+ irix5* | irix6* | nonstopux*)
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ # CC pic flag -KPIC is the default.
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+ case $cc_basename in
+ KCC*)
+ # KAI C++ Compiler
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ ecpc* )
+ # old Intel C++ for x86_64, which still supported -KPIC.
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ icpc* )
+ # Intel C++, used to be incompatible with GCC.
+ # ICC 10 doesn't accept -KPIC any more.
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ pgCC* | pgcpp*)
+ # Portland Group C++ compiler
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ cxx*)
+ # Compaq C++
+ # Make sure the PIC flag is empty. It appears that all Alpha
+ # Linux and Compaq Tru64 Unix objects are PIC.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
+ # IBM XL 8.0, 9.0 on PPC and BlueGene
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+ ;;
+ *)
+ case `$CC -V 2>&1 | $SED 5q` in
+ *Sun\ C*)
+ # Sun C++ 5.9
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ lynxos*)
+ ;;
+ m88k*)
+ ;;
+ mvs*)
+ case $cc_basename in
+ cxx*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ netbsd*)
+ ;;
+ *qnx* | *nto*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+ osf3* | osf4* | osf5*)
+ case $cc_basename in
+ KCC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+ ;;
+ RCC*)
+ # Rational C++ 2.4.1
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ cxx*)
+ # Digital/Compaq C++
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # Make sure the PIC flag is empty. It appears that all Alpha
+ # Linux and Compaq Tru64 Unix objects are PIC.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ psos*)
+ ;;
+ solaris*)
+ case $cc_basename in
+ CC* | sunCC*)
+ # Sun C++ 4.2, 5.x and Centerline C++
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ ;;
+ gcx*)
+ # Green Hills C++ Compiler
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ sunos4*)
+ case $cc_basename in
+ CC*)
+ # Sun C++ 4.x
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ lcc*)
+ # Lucid
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ esac
+ ;;
+ tandem*)
+ case $cc_basename in
+ NCC*)
+ # NonStop-UX NCC 3.20
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ vxworks*)
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+ esac
+ fi
+],
+[
+ if test yes = "$GCC"; then
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+
+ case $host_os in
+ aix*)
+ # All AIX code is PIC.
+ if test ia64 = "$host_cpu"; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ m68k)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the '-m68020' flag to GCC prevents building anything better,
+ # like '-m68040'.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+ ;;
+ esac
+ ;;
+
+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+ # PIC is the default for these OSes.
+ ;;
+
+ mingw* | cygwin* | pw32* | os2* | cegcc*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ # Although the cygwin gcc ignores -fPIC, still need this for old-style
+ # (--disable-auto-import) libraries
+ m4_if([$1], [GCJ], [],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+ case $host_os in
+ os2*)
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
+ ;;
+ esac
+ ;;
+
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+ ;;
+
+ haiku*)
+ # PIC is the default for Haiku.
+ # The "-static" flag exists, but is broken.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)=
+ ;;
+
+ hpux*)
+ # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+ # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
+ # sets the default TLS model and affects inlining.
+ case $host_cpu in
+ hppa*64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ ;;
+
+ interix[[3-9]]*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+
+ msdosdjgpp*)
+ # Just because we use GCC doesn't mean we suddenly get shared libraries
+ # on systems that don't support them.
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ enable_shared=no
+ ;;
+
+ *nto* | *qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+ fi
+ ;;
+
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+
+ case $cc_basename in
+ nvcc*) # Cuda Compiler Driver 2.2
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
+ if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
+ fi
+ ;;
+ esac
+ else
+ # PORTME Check for flag to pass linker flags through the system compiler.
+ case $host_os in
+ aix*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ if test ia64 = "$host_cpu"; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ else
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+ fi
+ ;;
+
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+ case $cc_basename in
+ nagfor*)
+ # NAG Fortran compiler
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ esac
+ ;;
+
+ mingw* | cygwin* | pw32* | os2* | cegcc*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ m4_if([$1], [GCJ], [],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+ case $host_os in
+ os2*)
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
+ ;;
+ esac
+ ;;
+
+ hpux9* | hpux10* | hpux11*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case $host_cpu in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ ;;
+ esac
+ # Is there a better lt_prog_compiler_static that works with the bundled CC?
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
+ ;;
+
+ irix5* | irix6* | nonstopux*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # PIC (with -KPIC) is the default.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+ case $cc_basename in
+ # old Intel for x86_64, which still supported -KPIC.
+ ecc*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ # icc used to be incompatible with GCC.
+ # ICC 10 doesn't accept -KPIC any more.
+ icc* | ifort*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ # Lahey Fortran 8.1.
+ lf95*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
+ ;;
+ nagfor*)
+ # NAG Fortran compiler
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ tcc*)
+ # Fabrice Bellard et al's Tiny C Compiler
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
+ # Portland Group compilers (*not* the Pentium gcc compiler,
+ # which looks to be a dead project)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ ccc*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # All Alpha code is PIC.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ xl* | bgxl* | bgf* | mpixl*)
+ # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+ ;;
+ *)
+ case `$CC -V 2>&1 | $SED 5q` in
+ *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
+ # Sun Fortran 8.3 passes all unrecognized flags to the linker
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
+ ;;
+ *Sun\ F* | *Sun*Fortran*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ ;;
+ *Sun\ C*)
+ # Sun C 5.9
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ ;;
+ *Intel*\ [[CF]]*Compiler*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ *Portland\ Group*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+
+ newsos6)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ *nto* | *qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+
+ osf3* | osf4* | osf5*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # All OSF/1 code is PIC.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ rdos*)
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ solaris*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ case $cc_basename in
+ f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
+ esac
+ ;;
+
+ sunos4*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ sysv4 | sysv4.2uw2* | sysv4.3*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ ;;
+
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ unicos*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+
+ uts4*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ *)
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+ esac
+ fi
+])
+case $host_os in
+ # For platforms that do not support PIC, -DPIC is meaningless:
+ *djgpp*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
+ ;;
+esac
+
+AC_CACHE_CHECK([for $compiler option to produce PIC],
+ [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
+ [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
+_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
+
+#
+# Check to make sure the PIC flag actually works.
+#
+if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
+ _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
+ [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
+ [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
+ [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
+ "" | " "*) ;;
+ *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
+ esac],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
+fi
+_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
+ [Additional compiler flags for building library objects])
+
+_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
+ [How to pass a linker flag through the compiler])
+#
+# Check to make sure the static flag actually works.
+#
+wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
+_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
+ _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
+ $lt_tmp_static_flag,
+ [],
+ [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
+_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
+ [Compiler flag to prevent dynamic linking])
+])# _LT_COMPILER_PIC
+
+
+# _LT_LINKER_SHLIBS([TAGNAME])
+# ----------------------------
+# See if the linker supports building shared libraries.
+m4_defun([_LT_LINKER_SHLIBS],
+[AC_REQUIRE([LT_PATH_LD])dnl
+AC_REQUIRE([LT_PATH_NM])dnl
+m4_require([_LT_PATH_MANIFEST_TOOL])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
+m4_require([_LT_TAG_COMPILER])dnl
+AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+m4_if([$1], [CXX], [
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
+ case $host_os in
+ aix[[4-9]]*)
+ # If we're using GNU nm, then we don't want the "-C" option.
+ # -C means demangle to GNU nm, but means don't demangle to AIX nm.
+ # Without the "-l" option, or with the "-B" option, AIX nm treats
+ # weak defined symbols like other global defined symbols, whereas
+ # GNU nm marks them as "W".
+ # While the 'weak' keyword is ignored in the Export File, we need
+ # it in the Import File for the 'aix-soname' feature, so we have
+ # to replace the "-B" option with "-P" for AIX nm.
+ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
+ else
+ _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
+ fi
+ ;;
+ pw32*)
+ _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
+ ;;
+ cygwin* | mingw* | cegcc*)
+ case $cc_basename in
+ cl* | icl*)
+ _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
+ ;;
+ *)
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
+ _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
+ ;;
+ esac
+ ;;
+ *)
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ ;;
+ esac
+], [
+ runpath_var=
+ _LT_TAGVAR(allow_undefined_flag, $1)=
+ _LT_TAGVAR(always_export_symbols, $1)=no
+ _LT_TAGVAR(archive_cmds, $1)=
+ _LT_TAGVAR(archive_expsym_cmds, $1)=
+ _LT_TAGVAR(compiler_needs_object, $1)=no
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)=
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ _LT_TAGVAR(hardcode_automatic, $1)=no
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=
+ _LT_TAGVAR(hardcode_minus_L, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ _LT_TAGVAR(inherit_rpath, $1)=no
+ _LT_TAGVAR(link_all_deplibs, $1)=unknown
+ _LT_TAGVAR(module_cmds, $1)=
+ _LT_TAGVAR(module_expsym_cmds, $1)=
+ _LT_TAGVAR(old_archive_from_new_cmds, $1)=
+ _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
+ _LT_TAGVAR(thread_safe_flag_spec, $1)=
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ # include_expsyms should be a list of space-separated symbols to be *always*
+ # included in the symbol list
+ _LT_TAGVAR(include_expsyms, $1)=
+ # exclude_expsyms can be an extended regexp of symbols to exclude
+ # it will be wrapped by ' (' and ')$', so one must not match beginning or
+ # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
+ # as well as any symbol that contains 'd'.
+ _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
+ # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
+ # platforms (ab)use it in PIC code, but their linkers get confused if
+ # the symbol is explicitly referenced. Since portable code cannot
+ # rely on this symbol name, it's probably fine to never include it in
+ # preloaded symbol tables.
+ # Exclude shared library initialization/finalization symbols.
+dnl Note also adjust exclude_expsyms for C++ above.
+ extract_expsyms_cmds=
+
+ case $host_os in
+ cygwin* | mingw* | pw32* | cegcc*)
+ # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time
+ # When not using gcc, we currently assume that we are using
+ # Microsoft Visual C++ or Intel C++ Compiler.
+ if test yes != "$GCC"; then
+ with_gnu_ld=no
+ fi
+ ;;
+ interix*)
+ # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)
+ with_gnu_ld=yes
+ ;;
+ openbsd* | bitrig*)
+ with_gnu_ld=no
+ ;;
+ esac
+
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+
+ # On some targets, GNU ld is compatible enough with the native linker
+ # that we're better off using the native interface for both.
+ lt_use_gnu_ld_interface=no
+ if test yes = "$with_gnu_ld"; then
+ case $host_os in
+ aix*)
+ # The AIX port of GNU ld has always aspired to compatibility
+ # with the native linker. However, as the warning in the GNU ld
+ # block says, versions before 2.19.5* couldn't really create working
+ # shared libraries, regardless of the interface used.
+ case `$LD -v 2>&1` in
+ *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
+ *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
+ *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
+ *)
+ lt_use_gnu_ld_interface=yes
+ ;;
+ esac
+ ;;
+ *)
+ lt_use_gnu_ld_interface=yes
+ ;;
+ esac
+ fi
+
+ if test yes = "$lt_use_gnu_ld_interface"; then
+ # If archive_cmds runs LD, not CC, wlarc should be empty
+ wlarc='$wl'
+
+ # Set some defaults for GNU ld with shared library support. These
+ # are reset later if shared libraries are not supported. Putting them
+ # here allows them to be overridden if necessary.
+ runpath_var=LD_RUN_PATH
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+ # ancient GNU ld didn't support --whole-archive et. al.
+ if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
+ else
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ supports_anon_versioning=no
+ case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in
+ *GNU\ gold*) supports_anon_versioning=yes ;;
+ *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
+ *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
+ *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
+ *\ 2.11.*) ;; # other 2.11 versions
+ *) supports_anon_versioning=yes ;;
+ esac
+
+ # See if GNU ld supports shared libraries.
+ case $host_os in
+ aix[[3-9]]*)
+ # On AIX/PPC, the GNU linker is very broken
+ if test ia64 != "$host_cpu"; then
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the GNU linker, at least up to release 2.19, is reported
+*** to be unable to reliably create shared libraries on AIX.
+*** Therefore, libtool is disabling shared libraries support. If you
+*** really care for shared libraries, you may want to install binutils
+*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
+*** You will then need to restart the configuration process.
+
+_LT_EOF
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)=''
+ ;;
+ m68k)
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ esac
+ ;;
+
+ beos*)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ cygwin* | mingw* | pw32* | cegcc*)
+ # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+ # as there is no search path for DLLs.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=no
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
+ _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
+
+ if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ # If the export-symbols file already is a .def file, use it as
+ # is; otherwise, prepend EXPORTS...
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+ cp $export_symbols $output_objdir/$soname.def;
+ else
+ echo EXPORTS > $output_objdir/$soname.def;
+ cat $export_symbols >> $output_objdir/$soname.def;
+ fi~
+ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ haiku*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+
+ os2*)
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ shrext_cmds=.dll
+ _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+ $ECHO EXPORTS >> $output_objdir/$libname.def~
+ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+ emximp -o $lib $output_objdir/$libname.def'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+ $ECHO EXPORTS >> $output_objdir/$libname.def~
+ prefix_cmds="$SED"~
+ if test EXPORTS = "`$SED 1q $export_symbols`"; then
+ prefix_cmds="$prefix_cmds -e 1d";
+ fi~
+ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+ emximp -o $lib $output_objdir/$libname.def'
+ _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='@'
+ ;;
+
+ interix[[3-9]]*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
+
+ gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
+ tmp_diet=no
+ if test linux-dietlibc = "$host_os"; then
+ case $cc_basename in
+ diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
+ esac
+ fi
+ if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
+ && test no = "$tmp_diet"
+ then
+ tmp_addflag=' $pic_flag'
+ tmp_sharedflag='-shared'
+ case $cc_basename,$host_cpu in
+ pgcc*) # Portland Group C compiler
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
+ tmp_addflag=' $pic_flag'
+ ;;
+ pgf77* | pgf90* | pgf95* | pgfortran*)
+ # Portland Group f77 and f90 compilers
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
+ tmp_addflag=' $pic_flag -Mnomain' ;;
+ ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
+ tmp_addflag=' -i_dynamic' ;;
+ efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
+ tmp_addflag=' -i_dynamic -nofor_main' ;;
+ ifc* | ifort*) # Intel Fortran compiler
+ tmp_addflag=' -nofor_main' ;;
+ lf95*) # Lahey Fortran 8.1
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ tmp_sharedflag='--shared' ;;
+ nagfor*) # NAGFOR 5.3
+ tmp_sharedflag='-Wl,-shared' ;;
+ xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
+ tmp_sharedflag='-qmkshrobj'
+ tmp_addflag= ;;
+ nvcc*) # Cuda Compiler Driver 2.2
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
+ _LT_TAGVAR(compiler_needs_object, $1)=yes
+ ;;
+ esac
+ case `$CC -V 2>&1 | $SED 5q` in
+ *Sun\ C*) # Sun C 5.9
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
+ _LT_TAGVAR(compiler_needs_object, $1)=yes
+ tmp_sharedflag='-G' ;;
+ *Sun\ F*) # Sun Fortran 8.3
+ tmp_sharedflag='-G' ;;
+ esac
+ _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+
+ if test yes = "$supports_anon_versioning"; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
+ fi
+
+ case $cc_basename in
+ tcc*)
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
+ ;;
+ xlf* | bgf* | bgxlf* | mpixlf*)
+ # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
+ if test yes = "$supports_anon_versioning"; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+ fi
+ ;;
+ esac
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+ wlarc=
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
+ fi
+ ;;
+
+ solaris*)
+ if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
+*** create shared libraries on Solaris systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.9.1 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
+ case `$LD -v 2>&1` in
+ *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
+*** reliably create shared libraries on SCO systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ ;;
+ *)
+ # For security reasons, it is highly recommended that you always
+ # use absolute paths for naming shared libraries, and exclude the
+ # DT_RUNPATH tag from executables and libraries. But doing so
+ # requires that you compile everything twice, which is a pain.
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ sunos4*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ wlarc=
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+
+ if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
+ runpath_var=
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)=
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ else
+ # PORTME fill in a description of your system's linker (not GNU ld)
+ case $host_os in
+ aix3*)
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
+ # Note: this linker hardcodes the directories in LIBPATH if there
+ # are no directories specified by -L.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
+ # Neither direct hardcoding nor static linking is supported with a
+ # broken collect2.
+ _LT_TAGVAR(hardcode_direct, $1)=unsupported
+ fi
+ ;;
+
+ aix[[4-9]]*)
+ if test ia64 = "$host_cpu"; then
+ # On IA64, the linker does run time linking by default, so we don't
+ # have to do anything special.
+ aix_use_runtimelinking=no
+ exp_sym_flag='-Bexport'
+ no_entry_flag=
+ else
+ # If we're using GNU nm, then we don't want the "-C" option.
+ # -C means demangle to GNU nm, but means don't demangle to AIX nm.
+ # Without the "-l" option, or with the "-B" option, AIX nm treats
+ # weak defined symbols like other global defined symbols, whereas
+ # GNU nm marks them as "W".
+ # While the 'weak' keyword is ignored in the Export File, we need
+ # it in the Import File for the 'aix-soname' feature, so we have
+ # to replace the "-B" option with "-P" for AIX nm.
+ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
+ else
+ _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
+ fi
+ aix_use_runtimelinking=no
+
+ # Test if we are trying to use run time linking or normal
+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we
+ # have runtime linking enabled, and use it for executables.
+ # For shared libraries, we enable/disable runtime linking
+ # depending on the kind of the shared library created -
+ # when "with_aix_soname,aix_use_runtimelinking" is:
+ # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
+ # "aix,yes" lib.so shared, rtl:yes, for executables
+ # lib.a static archive
+ # "both,no" lib.so.V(shr.o) shared, rtl:yes
+ # lib.a(lib.so.V) shared, rtl:no, for executables
+ # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
+ # lib.a(lib.so.V) shared, rtl:no
+ # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
+ # lib.a static archive
+ case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
+ for ld_flag in $LDFLAGS; do
+ if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
+ aix_use_runtimelinking=yes
+ break
+ fi
+ done
+ if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
+ # With aix-soname=svr4, we create the lib.so.V shared archives only,
+ # so we don't have lib.a shared libs to link our executables.
+ # We have to force runtime linking in this case.
+ aix_use_runtimelinking=yes
+ LDFLAGS="$LDFLAGS -Wl,-brtl"
+ fi
+ ;;
+ esac
+
+ exp_sym_flag='-bexport'
+ no_entry_flag='-bnoentry'
+ fi
+
+ # When large executables or shared objects are built, AIX ld can
+ # have problems creating the table of contents. If linking a library
+ # or program results in "error TOC overflow" add -mminimal-toc to
+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+ _LT_TAGVAR(archive_cmds, $1)=''
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
+ case $with_aix_soname,$aix_use_runtimelinking in
+ aix,*) ;; # traditional, no import file
+ svr4,* | *,yes) # use import file
+ # The Import File defines what to hardcode.
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=no
+ ;;
+ esac
+
+ if test yes = "$GCC"; then
+ case $host_os in aix4.[[012]]|aix4.[[012]].*)
+ # We only want to do this on AIX 4.2 and lower, the check
+ # below for broken collect2 doesn't work under 4.3+
+ collect2name=`$CC -print-prog-name=collect2`
+ if test -f "$collect2name" &&
+ strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ :
+ else
+ # We have old collect2
+ _LT_TAGVAR(hardcode_direct, $1)=unsupported
+ # It fails to find uninstalled libraries when the uninstalled
+ # path is not listed in the libpath. Setting hardcode_minus_L
+ # to unsupported forces relinking
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=
+ fi
+ ;;
+ esac
+ shared_flag='-shared'
+ if test yes = "$aix_use_runtimelinking"; then
+ shared_flag="$shared_flag "'$wl-G'
+ fi
+ # Need to ensure runtime linking is disabled for the traditional
+ # shared library, or the linker may eventually find shared libraries
+ # /with/ Import File - we do not want to mix them.
+ shared_flag_aix='-shared'
+ shared_flag_svr4='-shared $wl-G'
+ else
+ # not using gcc
+ if test ia64 = "$host_cpu"; then
+ # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+ # chokes on -Wl,-G. The following line is correct:
+ shared_flag='-G'
+ else
+ if test yes = "$aix_use_runtimelinking"; then
+ shared_flag='$wl-G'
+ else
+ shared_flag='$wl-bM:SRE'
+ fi
+ shared_flag_aix='$wl-bM:SRE'
+ shared_flag_svr4='$wl-G'
+ fi
+ fi
+
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
+ # It seems that -bexpall does not export symbols beginning with
+ # underscore (_), so it is better to generate a list of symbols to export.
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
+ # Warning - without using the other runtime loading flags (-brtl),
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ _LT_SYS_MODULE_PATH_AIX([$1])
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
+ else
+ if test ia64 = "$host_cpu"; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
+ _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
+ else
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ _LT_SYS_MODULE_PATH_AIX([$1])
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
+ _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
+ if test yes = "$with_gnu_ld"; then
+ # We only use this code for GNU lds that support --whole-archive.
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
+ else
+ # Exported symbols can be pulled into shared objects from archives
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
+ # -brtl affects multiple linker settings, -berok does not and is overridden later
+ compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
+ if test svr4 != "$with_aix_soname"; then
+ # This is similar to how AIX traditionally builds its shared libraries.
+ _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
+ fi
+ if test aix != "$with_aix_soname"; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
+ else
+ # used by -dlpreopen to get the symbols
+ _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
+ fi
+ _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
+ fi
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)=''
+ ;;
+ m68k)
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ esac
+ ;;
+
+ bsdi[[45]]*)
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
+ ;;
+
+ cygwin* | mingw* | pw32* | cegcc*)
+ # When not using gcc, we currently assume that we are using
+ # Microsoft Visual C++ or Intel C++ Compiler.
+ # hardcode_libdir_flag_spec is actually meaningless, as there is
+ # no search path for DLLs.
+ case $cc_basename in
+ cl* | icl*)
+ # Native MSVC or ICC
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='@'
+ # Tell ltmain to make .lib files, not .a files.
+ libext=lib
+ # Tell ltmain to make .dll files, not .so files.
+ shrext_cmds=.dll
+ # FIXME: Setting linknames here is a bad hack.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+ cp "$export_symbols" "$output_objdir/$soname.def";
+ echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
+ else
+ $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
+ fi~
+ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
+ linknames='
+ # The linker will not automatically build a static lib if we build a DLL.
+ # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
+ # Don't use ranlib
+ _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
+ _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
+ lt_tool_outputfile="@TOOL_OUTPUT@"~
+ case $lt_outputfile in
+ *.exe|*.EXE) ;;
+ *)
+ lt_outputfile=$lt_outputfile.exe
+ lt_tool_outputfile=$lt_tool_outputfile.exe
+ ;;
+ esac~
+ if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
+ $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
+ $RM "$lt_outputfile.manifest";
+ fi'
+ ;;
+ *)
+ # Assume MSVC and ICC wrapper
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Tell ltmain to make .lib files, not .a files.
+ libext=lib
+ # Tell ltmain to make .dll files, not .so files.
+ shrext_cmds=.dll
+ # FIXME: Setting linknames here is a bad hack.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
+ # The linker will automatically build a .lib file if we build a DLL.
+ _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
+ # FIXME: Should let the user specify the lib program.
+ _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ ;;
+ esac
+ ;;
+
+ darwin* | rhapsody*)
+ _LT_DARWIN_LINKER_FEATURES($1)
+ ;;
+
+ dgux*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
+ # support. Future versions do this automatically, but an explicit c++rt0.o
+ # does not break anything, and helps significantly (at the cost of a little
+ # extra space).
+ freebsd2.2*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ # Unfortunately, older versions of FreeBSD 2 do not have this feature.
+ freebsd2.*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+ freebsd* | dragonfly* | midnightbsd*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ hpux9*)
+ if test yes = "$GCC"; then
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+ ;;
+
+ hpux10*)
+ if test yes,no = "$GCC,$with_gnu_ld"; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ if test no = "$with_gnu_ld"; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ fi
+ ;;
+
+ hpux11*)
+ if test yes,no = "$GCC,$with_gnu_ld"; then
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ else
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ m4_if($1, [], [
+ # Older versions of the 11.00 compiler do not understand -b yet
+ # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
+ _LT_LINKER_OPTION([if $CC understands -b],
+ _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
+ [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
+ [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
+ [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
+ ;;
+ esac
+ fi
+ if test no = "$with_gnu_ld"; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ case $host_cpu in
+ hppa*64*|ia64*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+ *)
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ esac
+ fi
+ ;;
+
+ irix5* | irix6* | nonstopux*)
+ if test yes = "$GCC"; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
+ # Try to use the -exported_symbol ld option, if it does not
+ # work, assume that -exports_file does not work either and
+ # implicitly export all symbols.
+ # This should be the same for all languages, so no per-tag cache variable.
+ AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
+ [lt_cv_irix_exported_symbol],
+ [save_LDFLAGS=$LDFLAGS
+ LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
+ AC_LINK_IFELSE(
+ [AC_LANG_SOURCE(
+ [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
+ [C++], [[int foo (void) { return 0; }]],
+ [Fortran 77], [[
+ subroutine foo
+ end]],
+ [Fortran], [[
+ subroutine foo
+ end]])])],
+ [lt_cv_irix_exported_symbol=yes],
+ [lt_cv_irix_exported_symbol=no])
+ LDFLAGS=$save_LDFLAGS])
+ if test yes = "$lt_cv_irix_exported_symbol"; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
+ fi
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(inherit_rpath, $1)=yes
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+
+ linux*)
+ case $cc_basename in
+ tcc*)
+ # Fabrice Bellard et al's Tiny C Compiler
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ newsos6)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *nto* | *qnx*)
+ ;;
+
+ openbsd* | bitrig*)
+ if test -f /usr/libexec/ld.so; then
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+ fi
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ os2*)
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ shrext_cmds=.dll
+ _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+ $ECHO EXPORTS >> $output_objdir/$libname.def~
+ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+ emximp -o $lib $output_objdir/$libname.def'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+ $ECHO EXPORTS >> $output_objdir/$libname.def~
+ prefix_cmds="$SED"~
+ if test EXPORTS = "`$SED 1q $export_symbols`"; then
+ prefix_cmds="$prefix_cmds -e 1d";
+ fi~
+ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+ emximp -o $lib $output_objdir/$libname.def'
+ _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='@'
+ ;;
+
+ osf3*)
+ if test yes = "$GCC"; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
+ else
+ _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ ;;
+
+ osf4* | osf5*) # as osf3* with the addition of -msym flag
+ if test yes = "$GCC"; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ else
+ _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
+ $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp'
+
+ # Both c and cxx compiler support -rpath directly
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ ;;
+
+ solaris*)
+ _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
+ if test yes = "$GCC"; then
+ wlarc='$wl'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ else
+ case `$CC -V 2>&1` in
+ *"Compilers 5.0"*)
+ wlarc=''
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+ ;;
+ *)
+ wlarc='$wl'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ ;;
+ esac
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ case $host_os in
+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+ *)
+ # The compiler driver will combine and reorder linker options,
+ # but understands '-z linker_flag'. GCC discards it without '$wl',
+ # but is careful enough not to reorder.
+ # Supported since Solaris 2.6 (maybe 2.5.1?)
+ if test yes = "$GCC"; then
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
+ else
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+ fi
+ ;;
+ esac
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+
+ sunos4*)
+ if test sequent = "$host_vendor"; then
+ # Use $CC to link under sequent, because it throws in some extra .o
+ # files that make .init and .fini sections work.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ sysv4)
+ case $host_vendor in
+ sni)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
+ ;;
+ siemens)
+ ## LD is ld it makes a PLAMLIB
+ ## CC just makes a GrossModule.
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ ;;
+ motorola)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
+ ;;
+ esac
+ runpath_var='LD_RUN_PATH'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ sysv4.3*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var=LD_RUN_PATH
+ hardcode_runpath_var=yes
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ fi
+ ;;
+
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+ _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var='LD_RUN_PATH'
+
+ if test yes = "$GCC"; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We CANNOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
+ _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
+ runpath_var='LD_RUN_PATH'
+
+ if test yes = "$GCC"; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
+ ;;
+
+ uts4*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *)
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+
+ if test sni = "$host_vendor"; then
+ case $host in
+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
+ ;;
+ esac
+ fi
+ fi
+])
+AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
+test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
+
+_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
+
+_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
+_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
+_LT_DECL([], [extract_expsyms_cmds], [2],
+ [The commands to extract the exported symbol list from a shared archive])
+
+#
+# Do we need to explicitly link libc?
+#
+case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
+x|xyes)
+ # Assume -lc should be added
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+
+ if test yes,yes = "$GCC,$enable_shared"; then
+ case $_LT_TAGVAR(archive_cmds, $1) in
+ *'~'*)
+ # FIXME: we may have to deal with multi-command sequences.
+ ;;
+ '$CC '*)
+ # Test whether the compiler implicitly links with -lc since on some
+ # systems, -lgcc has to come before -lc. If gcc already passes -lc
+ # to ld, don't add -lc before -lgcc.
+ AC_CACHE_CHECK([whether -lc should be explicitly linked in],
+ [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
+ [$RM conftest*
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
+ soname=conftest
+ lib=conftest
+ libobjs=conftest.$ac_objext
+ deplibs=
+ wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
+ pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
+ compiler_flags=-v
+ linker_flags=-v
+ verstring=
+ output_objdir=.
+ libname=conftest
+ lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
+ _LT_TAGVAR(allow_undefined_flag, $1)=
+ if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
+ then
+ lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ else
+ lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+ fi
+ _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
+ else
+ cat conftest.err 1>&5
+ fi
+ $RM conftest*
+ ])
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
+ ;;
+ esac
+ fi
+ ;;
+esac
+
+_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
+ [Whether or not to add -lc for building shared libraries])
+_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
+ [enable_shared_with_static_runtimes], [0],
+ [Whether or not to disallow shared libs when runtime libs are static])
+_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
+ [Compiler flag to allow reflexive dlopens])
+_LT_TAGDECL([], [whole_archive_flag_spec], [1],
+ [Compiler flag to generate shared objects directly from archives])
+_LT_TAGDECL([], [compiler_needs_object], [1],
+ [Whether the compiler copes with passing no objects directly])
+_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
+ [Create an old-style archive from a shared archive])
+_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
+ [Create a temporary old-style archive to link instead of a shared archive])
+_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
+_LT_TAGDECL([], [archive_expsym_cmds], [2])
+_LT_TAGDECL([], [module_cmds], [2],
+ [Commands used to build a loadable module if different from building
+ a shared archive.])
+_LT_TAGDECL([], [module_expsym_cmds], [2])
+_LT_TAGDECL([], [with_gnu_ld], [1],
+ [Whether we are building with GNU ld or not])
+_LT_TAGDECL([], [allow_undefined_flag], [1],
+ [Flag that allows shared libraries with undefined symbols to be built])
+_LT_TAGDECL([], [no_undefined_flag], [1],
+ [Flag that enforces no undefined symbols])
+_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
+ [Flag to hardcode $libdir into a binary during linking.
+ This must work even if $libdir does not exist])
+_LT_TAGDECL([], [hardcode_libdir_separator], [1],
+ [Whether we need a single "-rpath" flag with a separated argument])
+_LT_TAGDECL([], [hardcode_direct], [0],
+ [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
+ DIR into the resulting binary])
+_LT_TAGDECL([], [hardcode_direct_absolute], [0],
+ [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
+ DIR into the resulting binary and the resulting library dependency is
+ "absolute", i.e impossible to change by setting $shlibpath_var if the
+ library is relocated])
+_LT_TAGDECL([], [hardcode_minus_L], [0],
+ [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
+ into the resulting binary])
+_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
+ [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
+ into the resulting binary])
+_LT_TAGDECL([], [hardcode_automatic], [0],
+ [Set to "yes" if building a shared library automatically hardcodes DIR
+ into the library and all subsequent libraries and executables linked
+ against it])
+_LT_TAGDECL([], [inherit_rpath], [0],
+ [Set to yes if linker adds runtime paths of dependent libraries
+ to runtime path list])
+_LT_TAGDECL([], [link_all_deplibs], [0],
+ [Whether libtool must link a program against all its dependency libraries])
+_LT_TAGDECL([], [always_export_symbols], [0],
+ [Set to "yes" if exported symbols are required])
+_LT_TAGDECL([], [export_symbols_cmds], [2],
+ [The commands to list exported symbols])
+_LT_TAGDECL([], [exclude_expsyms], [1],
+ [Symbols that should not be listed in the preloaded symbols])
+_LT_TAGDECL([], [include_expsyms], [1],
+ [Symbols that must always be exported])
+_LT_TAGDECL([], [prelink_cmds], [2],
+ [Commands necessary for linking programs (against libraries) with templates])
+_LT_TAGDECL([], [postlink_cmds], [2],
+ [Commands necessary for finishing linking programs])
+_LT_TAGDECL([], [file_list_spec], [1],
+ [Specify filename containing input files])
+dnl FIXME: Not yet implemented
+dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
+dnl [Compiler flag to generate thread safe objects])
+])# _LT_LINKER_SHLIBS
+
+
+# _LT_LANG_C_CONFIG([TAG])
+# ------------------------
+# Ensure that the configuration variables for a C compiler are suitably
+# defined. These variables are subsequently used by _LT_CONFIG to write
+# the compiler configuration to 'libtool'.
+m4_defun([_LT_LANG_C_CONFIG],
+[m4_require([_LT_DECL_EGREP])dnl
+lt_save_CC=$CC
+AC_LANG_PUSH(C)
+
+# Source file extension for C test sources.
+ac_ext=c
+
+# Object file extension for compiled C test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="int some_variable = 0;"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='int main(){return(0);}'
+
+_LT_TAG_COMPILER
+# Save the default compiler, since it gets overwritten when the other
+# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
+compiler_DEFAULT=$CC
+
+# save warnings/boilerplate of simple test code
+_LT_COMPILER_BOILERPLATE
+_LT_LINKER_BOILERPLATE
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+if test -n "$compiler"; then
+ _LT_COMPILER_NO_RTTI($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+ LT_SYS_DLOPEN_SELF
+ _LT_CMD_STRIPLIB
+
+ # Report what library types will actually be built
+ AC_MSG_CHECKING([if libtool supports shared libraries])
+ AC_MSG_RESULT([$can_build_shared])
+
+ AC_MSG_CHECKING([whether to build shared libraries])
+ test no = "$can_build_shared" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test yes = "$enable_shared" && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+
+ aix[[4-9]]*)
+ if test ia64 != "$host_cpu"; then
+ case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+ yes,aix,yes) ;; # shared object as lib.so file only
+ yes,svr4,*) ;; # shared object as lib.so archive member only
+ yes,*) enable_static=no ;; # shared object in lib.a archive as well
+ esac
+ fi
+ ;;
+ esac
+ AC_MSG_RESULT([$enable_shared])
+
+ AC_MSG_CHECKING([whether to build static libraries])
+ # Make sure either enable_shared or enable_static is yes.
+ test yes = "$enable_shared" || enable_static=yes
+ AC_MSG_RESULT([$enable_static])
+
+ _LT_CONFIG($1)
+fi
+AC_LANG_POP
+CC=$lt_save_CC
+])# _LT_LANG_C_CONFIG
+
+
+# _LT_LANG_CXX_CONFIG([TAG])
+# --------------------------
+# Ensure that the configuration variables for a C++ compiler are suitably
+# defined. These variables are subsequently used by _LT_CONFIG to write
+# the compiler configuration to 'libtool'.
+m4_defun([_LT_LANG_CXX_CONFIG],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_PATH_MANIFEST_TOOL])dnl
+if test -n "$CXX" && ( test no != "$CXX" &&
+ ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
+ (test g++ != "$CXX"))); then
+ AC_PROG_CXXCPP
+else
+ _lt_caught_CXX_error=yes
+fi
+
+AC_LANG_PUSH(C++)
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_TAGVAR(allow_undefined_flag, $1)=
+_LT_TAGVAR(always_export_symbols, $1)=no
+_LT_TAGVAR(archive_expsym_cmds, $1)=
+_LT_TAGVAR(compiler_needs_object, $1)=no
+_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_TAGVAR(hardcode_direct, $1)=no
+_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_TAGVAR(hardcode_minus_L, $1)=no
+_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+_LT_TAGVAR(hardcode_automatic, $1)=no
+_LT_TAGVAR(inherit_rpath, $1)=no
+_LT_TAGVAR(module_cmds, $1)=
+_LT_TAGVAR(module_expsym_cmds, $1)=
+_LT_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(reload_flag, $1)=$reload_flag
+_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
+_LT_TAGVAR(no_undefined_flag, $1)=
+_LT_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Source file extension for C++ test sources.
+ac_ext=cpp
+
+# Object file extension for compiled C++ test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# No sense in running all these tests if we already determined that
+# the CXX compiler isn't working. Some variables (like enable_shared)
+# are currently assumed to apply to all compilers on this platform,
+# and will be corrupted by setting them based on a non-working compiler.
+if test yes != "$_lt_caught_CXX_error"; then
+ # Code to be used in simple compile tests
+ lt_simple_compile_test_code="int some_variable = 0;"
+
+ # Code to be used in simple link tests
+ lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
+
+ # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+ _LT_TAG_COMPILER
+
+ # save warnings/boilerplate of simple test code
+ _LT_COMPILER_BOILERPLATE
+ _LT_LINKER_BOILERPLATE
+
+ # Allow CC to be a program name with arguments.
+ lt_save_CC=$CC
+ lt_save_CFLAGS=$CFLAGS
+ lt_save_LD=$LD
+ lt_save_GCC=$GCC
+ GCC=$GXX
+ lt_save_with_gnu_ld=$with_gnu_ld
+ lt_save_path_LD=$lt_cv_path_LD
+ if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
+ lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
+ else
+ $as_unset lt_cv_prog_gnu_ld
+ fi
+ if test -n "${lt_cv_path_LDCXX+set}"; then
+ lt_cv_path_LD=$lt_cv_path_LDCXX
+ else
+ $as_unset lt_cv_path_LD
+ fi
+ test -z "${LDCXX+set}" || LD=$LDCXX
+ CC=${CXX-"c++"}
+ CFLAGS=$CXXFLAGS
+ compiler=$CC
+ _LT_TAGVAR(compiler, $1)=$CC
+ _LT_CC_BASENAME([$compiler])
+
+ if test -n "$compiler"; then
+ # We don't want -fno-exception when compiling C++ code, so set the
+ # no_builtin_flag separately
+ if test yes = "$GXX"; then
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+ else
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+ fi
+
+ if test yes = "$GXX"; then
+ # Set up default GNU C++ configuration
+
+ LT_PATH_LD
+
+ # Check if GNU C++ uses GNU ld as the underlying linker, since the
+ # archiving commands below assume that GNU ld is being used.
+ if test yes = "$with_gnu_ld"; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+
+ # If archive_cmds runs LD, not CC, wlarc should be empty
+ # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
+ # investigate it a little bit more. (MM)
+ wlarc='$wl'
+
+ # ancient GNU ld didn't support --whole-archive et. al.
+ if eval "`$CC -print-prog-name=ld` --help 2>&1" |
+ $GREP 'no-whole-archive' > /dev/null; then
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
+ else
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ else
+ with_gnu_ld=no
+ wlarc=
+
+ # A generic and very simple default shared library creation
+ # command for GNU C++ for the case where it uses the native
+ # linker, instead of GNU ld. If possible, this setting should
+ # overridden to take advantage of the native linker features on
+ # the platform it is being used on.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+ fi
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+
+ else
+ GXX=no
+ with_gnu_ld=no
+ wlarc=
+ fi
+
+ # PORTME: fill in a description of your system's C++ link characteristics
+ AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ case $host_os in
+ aix3*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aix[[4-9]]*)
+ if test ia64 = "$host_cpu"; then
+ # On IA64, the linker does run time linking by default, so we don't
+ # have to do anything special.
+ aix_use_runtimelinking=no
+ exp_sym_flag='-Bexport'
+ no_entry_flag=
+ else
+ aix_use_runtimelinking=no
+
+ # Test if we are trying to use run time linking or normal
+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we
+ # have runtime linking enabled, and use it for executables.
+ # For shared libraries, we enable/disable runtime linking
+ # depending on the kind of the shared library created -
+ # when "with_aix_soname,aix_use_runtimelinking" is:
+ # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
+ # "aix,yes" lib.so shared, rtl:yes, for executables
+ # lib.a static archive
+ # "both,no" lib.so.V(shr.o) shared, rtl:yes
+ # lib.a(lib.so.V) shared, rtl:no, for executables
+ # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
+ # lib.a(lib.so.V) shared, rtl:no
+ # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
+ # lib.a static archive
+ case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
+ for ld_flag in $LDFLAGS; do
+ case $ld_flag in
+ *-brtl*)
+ aix_use_runtimelinking=yes
+ break
+ ;;
+ esac
+ done
+ if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
+ # With aix-soname=svr4, we create the lib.so.V shared archives only,
+ # so we don't have lib.a shared libs to link our executables.
+ # We have to force runtime linking in this case.
+ aix_use_runtimelinking=yes
+ LDFLAGS="$LDFLAGS -Wl,-brtl"
+ fi
+ ;;
+ esac
+
+ exp_sym_flag='-bexport'
+ no_entry_flag='-bnoentry'
+ fi
+
+ # When large executables or shared objects are built, AIX ld can
+ # have problems creating the table of contents. If linking a library
+ # or program results in "error TOC overflow" add -mminimal-toc to
+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+ _LT_TAGVAR(archive_cmds, $1)=''
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
+ case $with_aix_soname,$aix_use_runtimelinking in
+ aix,*) ;; # no import file
+ svr4,* | *,yes) # use import file
+ # The Import File defines what to hardcode.
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=no
+ ;;
+ esac
+
+ if test yes = "$GXX"; then
+ case $host_os in aix4.[[012]]|aix4.[[012]].*)
+ # We only want to do this on AIX 4.2 and lower, the check
+ # below for broken collect2 doesn't work under 4.3+
+ collect2name=`$CC -print-prog-name=collect2`
+ if test -f "$collect2name" &&
+ strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ :
+ else
+ # We have old collect2
+ _LT_TAGVAR(hardcode_direct, $1)=unsupported
+ # It fails to find uninstalled libraries when the uninstalled
+ # path is not listed in the libpath. Setting hardcode_minus_L
+ # to unsupported forces relinking
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=
+ fi
+ esac
+ shared_flag='-shared'
+ if test yes = "$aix_use_runtimelinking"; then
+ shared_flag=$shared_flag' $wl-G'
+ fi
+ # Need to ensure runtime linking is disabled for the traditional
+ # shared library, or the linker may eventually find shared libraries
+ # /with/ Import File - we do not want to mix them.
+ shared_flag_aix='-shared'
+ shared_flag_svr4='-shared $wl-G'
+ else
+ # not using gcc
+ if test ia64 = "$host_cpu"; then
+ # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+ # chokes on -Wl,-G. The following line is correct:
+ shared_flag='-G'
+ else
+ if test yes = "$aix_use_runtimelinking"; then
+ shared_flag='$wl-G'
+ else
+ shared_flag='$wl-bM:SRE'
+ fi
+ shared_flag_aix='$wl-bM:SRE'
+ shared_flag_svr4='$wl-G'
+ fi
+ fi
+
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
+ # It seems that -bexpall does not export symbols beginning with
+ # underscore (_), so it is better to generate a list of symbols to
+ # export.
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
+ # Warning - without using the other runtime loading flags (-brtl),
+ # -berok will link without error, but may produce a broken library.
+ # The "-G" linker flag allows undefined symbols.
+ _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
+ # Determine the default libpath from the value encoded in an empty
+ # executable.
+ _LT_SYS_MODULE_PATH_AIX([$1])
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
+
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
+ else
+ if test ia64 = "$host_cpu"; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
+ _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
+ else
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ _LT_SYS_MODULE_PATH_AIX([$1])
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
+ _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
+ if test yes = "$with_gnu_ld"; then
+ # We only use this code for GNU lds that support --whole-archive.
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
+ else
+ # Exported symbols can be pulled into shared objects from archives
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
+ # -brtl affects multiple linker settings, -berok does not and is overridden later
+ compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
+ if test svr4 != "$with_aix_soname"; then
+ # This is similar to how AIX traditionally builds its shared
+ # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
+ _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
+ fi
+ if test aix != "$with_aix_soname"; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
+ else
+ # used by -dlpreopen to get the symbols
+ _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
+ fi
+ _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
+ fi
+ fi
+ ;;
+
+ beos*)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ chorus*)
+ case $cc_basename in
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ cygwin* | mingw* | pw32* | cegcc*)
+ case $GXX,$cc_basename in
+ ,cl* | no,cl* | ,icl* | no,icl*)
+ # Native MSVC or ICC
+ # hardcode_libdir_flag_spec is actually meaningless, as there is
+ # no search path for DLLs.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='@'
+ # Tell ltmain to make .lib files, not .a files.
+ libext=lib
+ # Tell ltmain to make .dll files, not .so files.
+ shrext_cmds=.dll
+ # FIXME: Setting linknames here is a bad hack.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+ cp "$export_symbols" "$output_objdir/$soname.def";
+ echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
+ else
+ $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
+ fi~
+ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
+ linknames='
+ # The linker will not automatically build a static lib if we build a DLL.
+ # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ # Don't use ranlib
+ _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
+ _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
+ lt_tool_outputfile="@TOOL_OUTPUT@"~
+ case $lt_outputfile in
+ *.exe|*.EXE) ;;
+ *)
+ lt_outputfile=$lt_outputfile.exe
+ lt_tool_outputfile=$lt_tool_outputfile.exe
+ ;;
+ esac~
+ func_to_tool_file "$lt_outputfile"~
+ if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
+ $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
+ $RM "$lt_outputfile.manifest";
+ fi'
+ ;;
+ *)
+ # g++
+ # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+ # as there is no search path for DLLs.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=no
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+
+ if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ # If the export-symbols file already is a .def file, use it as
+ # is; otherwise, prepend EXPORTS...
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+ cp $export_symbols $output_objdir/$soname.def;
+ else
+ echo EXPORTS > $output_objdir/$soname.def;
+ cat $export_symbols >> $output_objdir/$soname.def;
+ fi~
+ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+ darwin* | rhapsody*)
+ _LT_DARWIN_LINKER_FEATURES($1)
+ ;;
+
+ os2*)
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ shrext_cmds=.dll
+ _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+ $ECHO EXPORTS >> $output_objdir/$libname.def~
+ emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+ emximp -o $lib $output_objdir/$libname.def'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+ $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+ $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+ $ECHO EXPORTS >> $output_objdir/$libname.def~
+ prefix_cmds="$SED"~
+ if test EXPORTS = "`$SED 1q $export_symbols`"; then
+ prefix_cmds="$prefix_cmds -e 1d";
+ fi~
+ prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+ cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+ $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+ emximp -o $lib $output_objdir/$libname.def'
+ _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='@'
+ ;;
+
+ dgux*)
+ case $cc_basename in
+ ec++*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ ghcx*)
+ # Green Hills C++ Compiler
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ freebsd2.*)
+ # C++ shared libraries reported to be fairly broken before
+ # switch to ELF
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ freebsd-elf*)
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ ;;
+
+ freebsd* | dragonfly* | midnightbsd*)
+ # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
+ # conventions
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ ;;
+
+ haiku*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+
+ hpux9*)
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+ # but as the default
+ # location of the library.
+
+ case $cc_basename in
+ CC*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aCC*)
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+ ;;
+ *)
+ if test yes = "$GXX"; then
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
+ else
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ hpux10*|hpux11*)
+ if test no = "$with_gnu_ld"; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ case $host_cpu in
+ hppa*64*|ia64*)
+ ;;
+ *)
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+ ;;
+ esac
+ fi
+ case $host_cpu in
+ hppa*64*|ia64*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+ *)
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+ # but as the default
+ # location of the library.
+ ;;
+ esac
+
+ case $cc_basename in
+ CC*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aCC*)
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ esac
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+ ;;
+ *)
+ if test yes = "$GXX"; then
+ if test no = "$with_gnu_ld"; then
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ esac
+ fi
+ else
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ interix[[3-9]]*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
+ irix5* | irix6*)
+ case $cc_basename in
+ CC*)
+ # SGI C++
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+
+ # Archives containing C++ object files must be created using
+ # "CC -ar", where "CC" is the IRIX C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
+ ;;
+ *)
+ if test yes = "$GXX"; then
+ if test no = "$with_gnu_ld"; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib'
+ fi
+ fi
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+ esac
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(inherit_rpath, $1)=yes
+ ;;
+
+ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+ case $cc_basename in
+ KCC*)
+ # Kuck and Associates, Inc. (KAI) C++ Compiler
+
+ # KCC will only create a shared library if the output file
+ # ends with ".so" (or ".sl" for HP-UX), so rename the library
+ # to its proper name (with version) after linking.
+ _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib'
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+
+ # Archives containing C++ object files must be created using
+ # "CC -Bstatic", where "CC" is the KAI C++ compiler.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
+ ;;
+ icpc* | ecpc* )
+ # Intel C++
+ with_gnu_ld=yes
+ # version 8.0 and above of icpc choke on multiply defined symbols
+ # if we add $predep_objects and $postdep_objects, however 7.1 and
+ # earlier do not add the objects themselves.
+ case `$CC -V 2>&1` in
+ *"Version 7."*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
+ ;;
+ *) # Version 8.0 or newer
+ tmp_idyn=
+ case $host_cpu in
+ ia64*) tmp_idyn=' -i_dynamic';;
+ esac
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
+ ;;
+ esac
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
+ ;;
+ pgCC* | pgcpp*)
+ # Portland Group C++ compiler
+ case `$CC -V` in
+ *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
+ _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
+ compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
+ _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
+ $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
+ $RANLIB $oldlib'
+ _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
+ ;;
+ *) # Version 6 and above use weak symbols
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
+ ;;
+ esac
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
+ ;;
+ cxx*)
+ # Compaq C++
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols'
+
+ runpath_var=LD_RUN_PATH
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
+ ;;
+ xl* | mpixl* | bgxl*)
+ # IBM XL 8.0 on PPC, with GNU ld
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+ if test yes = "$supports_anon_versioning"; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
+ fi
+ ;;
+ *)
+ case `$CC -V 2>&1 | $SED 5q` in
+ *Sun\ C*)
+ # Sun C++ 5.9
+ _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
+ _LT_TAGVAR(compiler_needs_object, $1)=yes
+
+ # Not sure whether something based on
+ # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
+ # would be better.
+ output_verbose_link_cmd='func_echo_all'
+
+ # Archives containing C++ object files must be created using
+ # "CC -xar", where "CC" is the Sun C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+
+ lynxos*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ m88k*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ mvs*)
+ case $cc_basename in
+ cxx*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
+ wlarc=
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ fi
+ # Workaround some broken pre-1.5 toolchains
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
+ ;;
+
+ *nto* | *qnx*)
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ ;;
+
+ openbsd* | bitrig*)
+ if test -f /usr/libexec/ld.so; then
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
+ fi
+ output_verbose_link_cmd=func_echo_all
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ osf3* | osf4* | osf5*)
+ case $cc_basename in
+ KCC*)
+ # Kuck and Associates, Inc. (KAI) C++ Compiler
+
+ # KCC will only create a shared library if the output file
+ # ends with ".so" (or ".sl" for HP-UX), so rename the library
+ # to its proper name (with version) after linking.
+ _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Archives containing C++ object files must be created using
+ # the KAI C++ compiler.
+ case $host in
+ osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
+ *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
+ esac
+ ;;
+ RCC*)
+ # Rational C++ 2.4.1
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ cxx*)
+ case $host in
+ osf3*)
+ _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ ;;
+ *)
+ _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
+ echo "-hidden">> $lib.exp~
+ $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~
+ $RM $lib.exp'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ ;;
+ esac
+
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+ ;;
+ *)
+ if test yes,no = "$GXX,$with_gnu_ld"; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
+ case $host in
+ osf3*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
+ ;;
+ esac
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+
+ else
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ psos*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ sunos4*)
+ case $cc_basename in
+ CC*)
+ # Sun C++ 4.x
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ lcc*)
+ # Lucid
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ solaris*)
+ case $cc_basename in
+ CC* | sunCC*)
+ # Sun C++ 4.2, 5.x and Centerline C++
+ _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
+ _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ case $host_os in
+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+ *)
+ # The compiler driver will combine and reorder linker options,
+ # but understands '-z linker_flag'.
+ # Supported since Solaris 2.6 (maybe 2.5.1?)
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+ ;;
+ esac
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+
+ output_verbose_link_cmd='func_echo_all'
+
+ # Archives containing C++ object files must be created using
+ # "CC -xar", where "CC" is the Sun C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+ ;;
+ gcx*)
+ # Green Hills C++ Compiler
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
+
+ # The C++ compiler must be used to create the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
+ ;;
+ *)
+ # GNU C++ compiler with Solaris linker
+ if test yes,no = "$GXX,$with_gnu_ld"; then
+ _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
+ if $CC --version | $GREP -v '^2\.7' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+ else
+ # g++ 2.7 appears to require '-G' NOT '-shared' on this
+ # platform.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+ fi
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
+ case $host_os in
+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+ *)
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
+ ;;
+ esac
+ fi
+ ;;
+ esac
+ ;;
+
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+ _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var='LD_RUN_PATH'
+
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We CANNOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
+ _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
+ runpath_var='LD_RUN_PATH'
+
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
+ '"$_LT_TAGVAR(old_archive_cmds, $1)"
+ _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
+ '"$_LT_TAGVAR(reload_cmds, $1)"
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ ;;
+
+ tandem*)
+ case $cc_basename in
+ NCC*)
+ # NonStop-UX NCC 3.20
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ vxworks*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+
+ AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
+ test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
+
+ _LT_TAGVAR(GCC, $1)=$GXX
+ _LT_TAGVAR(LD, $1)=$LD
+
+ ## CAVEAT EMPTOR:
+ ## There is no encapsulation within the following macros, do not change
+ ## the running order or otherwise move them around unless you know exactly
+ ## what you are doing...
+ _LT_SYS_HIDDEN_LIBDEPS($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+ fi # test -n "$compiler"
+
+ CC=$lt_save_CC
+ CFLAGS=$lt_save_CFLAGS
+ LDCXX=$LD
+ LD=$lt_save_LD
+ GCC=$lt_save_GCC
+ with_gnu_ld=$lt_save_with_gnu_ld
+ lt_cv_path_LDCXX=$lt_cv_path_LD
+ lt_cv_path_LD=$lt_save_path_LD
+ lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
+ lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
+fi # test yes != "$_lt_caught_CXX_error"
+
+AC_LANG_POP
+])# _LT_LANG_CXX_CONFIG
+
+
+# _LT_FUNC_STRIPNAME_CNF
+# ----------------------
+# func_stripname_cnf prefix suffix name
+# strip PREFIX and SUFFIX off of NAME.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+#
+# This function is identical to the (non-XSI) version of func_stripname,
+# except this one can be used by m4 code that may be executed by configure,
+# rather than the libtool script.
+m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
+AC_REQUIRE([_LT_DECL_SED])
+AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
+func_stripname_cnf ()
+{
+ case @S|@2 in
+ .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
+ *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
+ esac
+} # func_stripname_cnf
+])# _LT_FUNC_STRIPNAME_CNF
+
+
+# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
+# ---------------------------------
+# Figure out "hidden" library dependencies from verbose
+# compiler output when linking a shared library.
+# Parse the compiler output and extract the necessary
+# objects, libraries and library flags.
+m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
+# Dependencies to place before and after the object being linked:
+_LT_TAGVAR(predep_objects, $1)=
+_LT_TAGVAR(postdep_objects, $1)=
+_LT_TAGVAR(predeps, $1)=
+_LT_TAGVAR(postdeps, $1)=
+_LT_TAGVAR(compiler_lib_search_path, $1)=
+
+dnl we can't use the lt_simple_compile_test_code here,
+dnl because it contains code intended for an executable,
+dnl not a library. It's possible we should let each
+dnl tag define a new lt_????_link_test_code variable,
+dnl but it's only used here...
+m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
+int a;
+void foo (void) { a = 0; }
+_LT_EOF
+], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
+class Foo
+{
+public:
+ Foo (void) { a = 0; }
+private:
+ int a;
+};
+_LT_EOF
+], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
+ subroutine foo
+ implicit none
+ integer*4 a
+ a=0
+ return
+ end
+_LT_EOF
+], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
+ subroutine foo
+ implicit none
+ integer a
+ a=0
+ return
+ end
+_LT_EOF
+], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
+public class foo {
+ private int a;
+ public void bar (void) {
+ a = 0;
+ }
+};
+_LT_EOF
+], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
+package foo
+func foo() {
+}
+_LT_EOF
+])
+
+_lt_libdeps_save_CFLAGS=$CFLAGS
+case "$CC $CFLAGS " in #(
+*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
+*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
+*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
+esac
+
+dnl Parse the compiler output and extract the necessary
+dnl objects, libraries and library flags.
+if AC_TRY_EVAL(ac_compile); then
+ # Parse the compiler output and extract the necessary
+ # objects, libraries and library flags.
+
+ # Sentinel used to keep track of whether or not we are before
+ # the conftest object file.
+ pre_test_object_deps_done=no
+
+ for p in `eval "$output_verbose_link_cmd"`; do
+ case $prev$p in
+
+ -L* | -R* | -l*)
+ # Some compilers place space between "-{L,R}" and the path.
+ # Remove the space.
+ if test x-L = "$p" ||
+ test x-R = "$p"; then
+ prev=$p
+ continue
+ fi
+
+ # Expand the sysroot to ease extracting the directories later.
+ if test -z "$prev"; then
+ case $p in
+ -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
+ -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
+ -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
+ esac
+ fi
+ case $p in
+ =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
+ esac
+ if test no = "$pre_test_object_deps_done"; then
+ case $prev in
+ -L | -R)
+ # Internal compiler library paths should come after those
+ # provided the user. The postdeps already come after the
+ # user supplied libs so there is no need to process them.
+ if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
+ _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
+ else
+ _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
+ fi
+ ;;
+ # The "-l" case would never come before the object being
+ # linked, so don't bother handling this case.
+ esac
+ else
+ if test -z "$_LT_TAGVAR(postdeps, $1)"; then
+ _LT_TAGVAR(postdeps, $1)=$prev$p
+ else
+ _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
+ fi
+ fi
+ prev=
+ ;;
+
+ *.lto.$objext) ;; # Ignore GCC LTO objects
+ *.$objext)
+ # This assumes that the test object file only shows up
+ # once in the compiler output.
+ if test "$p" = "conftest.$objext"; then
+ pre_test_object_deps_done=yes
+ continue
+ fi
+
+ if test no = "$pre_test_object_deps_done"; then
+ if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
+ _LT_TAGVAR(predep_objects, $1)=$p
+ else
+ _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
+ fi
+ else
+ if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
+ _LT_TAGVAR(postdep_objects, $1)=$p
+ else
+ _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
+ fi
+ fi
+ ;;
+
+ *) ;; # Ignore the rest.
+
+ esac
+ done
+
+ # Clean up.
+ rm -f a.out a.exe
+else
+ echo "libtool.m4: error: problem compiling $1 test program"
+fi
+
+$RM -f confest.$objext
+CFLAGS=$_lt_libdeps_save_CFLAGS
+
+# PORTME: override above test on systems where it is broken
+m4_if([$1], [CXX],
+[case $host_os in
+interix[[3-9]]*)
+ # Interix 3.5 installs completely hosed .la files for C++, so rather than
+ # hack all around it, let's just trust "g++" to DTRT.
+ _LT_TAGVAR(predep_objects,$1)=
+ _LT_TAGVAR(postdep_objects,$1)=
+ _LT_TAGVAR(postdeps,$1)=
+ ;;
+esac
+])
+
+case " $_LT_TAGVAR(postdeps, $1) " in
+*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
+esac
+ _LT_TAGVAR(compiler_lib_search_dirs, $1)=
+if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
+ _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
+fi
+_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
+ [The directories searched by this compiler when creating a shared library])
+_LT_TAGDECL([], [predep_objects], [1],
+ [Dependencies to place before and after the objects being linked to
+ create a shared library])
+_LT_TAGDECL([], [postdep_objects], [1])
+_LT_TAGDECL([], [predeps], [1])
+_LT_TAGDECL([], [postdeps], [1])
+_LT_TAGDECL([], [compiler_lib_search_path], [1],
+ [The library search path used internally by the compiler when linking
+ a shared library])
+])# _LT_SYS_HIDDEN_LIBDEPS
+
+
+# _LT_LANG_F77_CONFIG([TAG])
+# --------------------------
+# Ensure that the configuration variables for a Fortran 77 compiler are
+# suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to 'libtool'.
+m4_defun([_LT_LANG_F77_CONFIG],
+[AC_LANG_PUSH(Fortran 77)
+if test -z "$F77" || test no = "$F77"; then
+ _lt_disable_F77=yes
+fi
+
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_TAGVAR(allow_undefined_flag, $1)=
+_LT_TAGVAR(always_export_symbols, $1)=no
+_LT_TAGVAR(archive_expsym_cmds, $1)=
+_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_TAGVAR(hardcode_direct, $1)=no
+_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_TAGVAR(hardcode_minus_L, $1)=no
+_LT_TAGVAR(hardcode_automatic, $1)=no
+_LT_TAGVAR(inherit_rpath, $1)=no
+_LT_TAGVAR(module_cmds, $1)=
+_LT_TAGVAR(module_expsym_cmds, $1)=
+_LT_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(reload_flag, $1)=$reload_flag
+_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
+_LT_TAGVAR(no_undefined_flag, $1)=
+_LT_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Source file extension for f77 test sources.
+ac_ext=f
+
+# Object file extension for compiled f77 test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# No sense in running all these tests if we already determined that
+# the F77 compiler isn't working. Some variables (like enable_shared)
+# are currently assumed to apply to all compilers on this platform,
+# and will be corrupted by setting them based on a non-working compiler.
+if test yes != "$_lt_disable_F77"; then
+ # Code to be used in simple compile tests
+ lt_simple_compile_test_code="\
+ subroutine t
+ return
+ end
+"
+
+ # Code to be used in simple link tests
+ lt_simple_link_test_code="\
+ program t
+ end
+"
+
+ # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+ _LT_TAG_COMPILER
+
+ # save warnings/boilerplate of simple test code
+ _LT_COMPILER_BOILERPLATE
+ _LT_LINKER_BOILERPLATE
+
+ # Allow CC to be a program name with arguments.
+ lt_save_CC=$CC
+ lt_save_GCC=$GCC
+ lt_save_CFLAGS=$CFLAGS
+ CC=${F77-"f77"}
+ CFLAGS=$FFLAGS
+ compiler=$CC
+ _LT_TAGVAR(compiler, $1)=$CC
+ _LT_CC_BASENAME([$compiler])
+ GCC=$G77
+ if test -n "$compiler"; then
+ AC_MSG_CHECKING([if libtool supports shared libraries])
+ AC_MSG_RESULT([$can_build_shared])
+
+ AC_MSG_CHECKING([whether to build shared libraries])
+ test no = "$can_build_shared" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test yes = "$enable_shared" && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+ aix[[4-9]]*)
+ if test ia64 != "$host_cpu"; then
+ case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+ yes,aix,yes) ;; # shared object as lib.so file only
+ yes,svr4,*) ;; # shared object as lib.so archive member only
+ yes,*) enable_static=no ;; # shared object in lib.a archive as well
+ esac
+ fi
+ ;;
+ esac
+ AC_MSG_RESULT([$enable_shared])
+
+ AC_MSG_CHECKING([whether to build static libraries])
+ # Make sure either enable_shared or enable_static is yes.
+ test yes = "$enable_shared" || enable_static=yes
+ AC_MSG_RESULT([$enable_static])
+
+ _LT_TAGVAR(GCC, $1)=$G77
+ _LT_TAGVAR(LD, $1)=$LD
+
+ ## CAVEAT EMPTOR:
+ ## There is no encapsulation within the following macros, do not change
+ ## the running order or otherwise move them around unless you know exactly
+ ## what you are doing...
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+ fi # test -n "$compiler"
+
+ GCC=$lt_save_GCC
+ CC=$lt_save_CC
+ CFLAGS=$lt_save_CFLAGS
+fi # test yes != "$_lt_disable_F77"
+
+AC_LANG_POP
+])# _LT_LANG_F77_CONFIG
+
+
+# _LT_LANG_FC_CONFIG([TAG])
+# -------------------------
+# Ensure that the configuration variables for a Fortran compiler are
+# suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to 'libtool'.
+m4_defun([_LT_LANG_FC_CONFIG],
+[AC_LANG_PUSH(Fortran)
+
+if test -z "$FC" || test no = "$FC"; then
+ _lt_disable_FC=yes
+fi
+
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_TAGVAR(allow_undefined_flag, $1)=
+_LT_TAGVAR(always_export_symbols, $1)=no
+_LT_TAGVAR(archive_expsym_cmds, $1)=
+_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_TAGVAR(hardcode_direct, $1)=no
+_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_TAGVAR(hardcode_minus_L, $1)=no
+_LT_TAGVAR(hardcode_automatic, $1)=no
+_LT_TAGVAR(inherit_rpath, $1)=no
+_LT_TAGVAR(module_cmds, $1)=
+_LT_TAGVAR(module_expsym_cmds, $1)=
+_LT_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(reload_flag, $1)=$reload_flag
+_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
+_LT_TAGVAR(no_undefined_flag, $1)=
+_LT_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Source file extension for fc test sources.
+ac_ext=${ac_fc_srcext-f}
+
+# Object file extension for compiled fc test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# No sense in running all these tests if we already determined that
+# the FC compiler isn't working. Some variables (like enable_shared)
+# are currently assumed to apply to all compilers on this platform,
+# and will be corrupted by setting them based on a non-working compiler.
+if test yes != "$_lt_disable_FC"; then
+ # Code to be used in simple compile tests
+ lt_simple_compile_test_code="\
+ subroutine t
+ return
+ end
+"
+
+ # Code to be used in simple link tests
+ lt_simple_link_test_code="\
+ program t
+ end
+"
+
+ # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+ _LT_TAG_COMPILER
+
+ # save warnings/boilerplate of simple test code
+ _LT_COMPILER_BOILERPLATE
+ _LT_LINKER_BOILERPLATE
+
+ # Allow CC to be a program name with arguments.
+ lt_save_CC=$CC
+ lt_save_GCC=$GCC
+ lt_save_CFLAGS=$CFLAGS
+ CC=${FC-"f95"}
+ CFLAGS=$FCFLAGS
+ compiler=$CC
+ GCC=$ac_cv_fc_compiler_gnu
+
+ _LT_TAGVAR(compiler, $1)=$CC
+ _LT_CC_BASENAME([$compiler])
+
+ if test -n "$compiler"; then
+ AC_MSG_CHECKING([if libtool supports shared libraries])
+ AC_MSG_RESULT([$can_build_shared])
+
+ AC_MSG_CHECKING([whether to build shared libraries])
+ test no = "$can_build_shared" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test yes = "$enable_shared" && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+ aix[[4-9]]*)
+ if test ia64 != "$host_cpu"; then
+ case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+ yes,aix,yes) ;; # shared object as lib.so file only
+ yes,svr4,*) ;; # shared object as lib.so archive member only
+ yes,*) enable_static=no ;; # shared object in lib.a archive as well
+ esac
+ fi
+ ;;
+ esac
+ AC_MSG_RESULT([$enable_shared])
+
+ AC_MSG_CHECKING([whether to build static libraries])
+ # Make sure either enable_shared or enable_static is yes.
+ test yes = "$enable_shared" || enable_static=yes
+ AC_MSG_RESULT([$enable_static])
+
+ _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
+ _LT_TAGVAR(LD, $1)=$LD
+
+ ## CAVEAT EMPTOR:
+ ## There is no encapsulation within the following macros, do not change
+ ## the running order or otherwise move them around unless you know exactly
+ ## what you are doing...
+ _LT_SYS_HIDDEN_LIBDEPS($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+ fi # test -n "$compiler"
+
+ GCC=$lt_save_GCC
+ CC=$lt_save_CC
+ CFLAGS=$lt_save_CFLAGS
+fi # test yes != "$_lt_disable_FC"
+
+AC_LANG_POP
+])# _LT_LANG_FC_CONFIG
+
+
+# _LT_LANG_GCJ_CONFIG([TAG])
+# --------------------------
+# Ensure that the configuration variables for the GNU Java Compiler compiler
+# are suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to 'libtool'.
+m4_defun([_LT_LANG_GCJ_CONFIG],
+[AC_REQUIRE([LT_PROG_GCJ])dnl
+AC_LANG_SAVE
+
+# Source file extension for Java test sources.
+ac_ext=java
+
+# Object file extension for compiled Java test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="class foo {}"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_TAG_COMPILER
+
+# save warnings/boilerplate of simple test code
+_LT_COMPILER_BOILERPLATE
+_LT_LINKER_BOILERPLATE
+
+# Allow CC to be a program name with arguments.
+lt_save_CC=$CC
+lt_save_CFLAGS=$CFLAGS
+lt_save_GCC=$GCC
+GCC=yes
+CC=${GCJ-"gcj"}
+CFLAGS=$GCJFLAGS
+compiler=$CC
+_LT_TAGVAR(compiler, $1)=$CC
+_LT_TAGVAR(LD, $1)=$LD
+_LT_CC_BASENAME([$compiler])
+
+# GCJ did not exist at the time GCC didn't implicitly link libc in.
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(reload_flag, $1)=$reload_flag
+_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+if test -n "$compiler"; then
+ _LT_COMPILER_NO_RTTI($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+fi
+
+AC_LANG_RESTORE
+
+GCC=$lt_save_GCC
+CC=$lt_save_CC
+CFLAGS=$lt_save_CFLAGS
+])# _LT_LANG_GCJ_CONFIG
+
+
+# _LT_LANG_GO_CONFIG([TAG])
+# --------------------------
+# Ensure that the configuration variables for the GNU Go compiler
+# are suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to 'libtool'.
+m4_defun([_LT_LANG_GO_CONFIG],
+[AC_REQUIRE([LT_PROG_GO])dnl
+AC_LANG_SAVE
+
+# Source file extension for Go test sources.
+ac_ext=go
+
+# Object file extension for compiled Go test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="package main; func main() { }"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='package main; func main() { }'
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_TAG_COMPILER
+
+# save warnings/boilerplate of simple test code
+_LT_COMPILER_BOILERPLATE
+_LT_LINKER_BOILERPLATE
+
+# Allow CC to be a program name with arguments.
+lt_save_CC=$CC
+lt_save_CFLAGS=$CFLAGS
+lt_save_GCC=$GCC
+GCC=yes
+CC=${GOC-"gccgo"}
+CFLAGS=$GOFLAGS
+compiler=$CC
+_LT_TAGVAR(compiler, $1)=$CC
+_LT_TAGVAR(LD, $1)=$LD
+_LT_CC_BASENAME([$compiler])
+
+# Go did not exist at the time GCC didn't implicitly link libc in.
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(reload_flag, $1)=$reload_flag
+_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+if test -n "$compiler"; then
+ _LT_COMPILER_NO_RTTI($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+fi
+
+AC_LANG_RESTORE
+
+GCC=$lt_save_GCC
+CC=$lt_save_CC
+CFLAGS=$lt_save_CFLAGS
+])# _LT_LANG_GO_CONFIG
+
+
+# _LT_LANG_RC_CONFIG([TAG])
+# -------------------------
+# Ensure that the configuration variables for the Windows resource compiler
+# are suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to 'libtool'.
+m4_defun([_LT_LANG_RC_CONFIG],
+[AC_REQUIRE([LT_PROG_RC])dnl
+AC_LANG_SAVE
+
+# Source file extension for RC test sources.
+ac_ext=rc
+
+# Object file extension for compiled RC test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
+
+# Code to be used in simple link tests
+lt_simple_link_test_code=$lt_simple_compile_test_code
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_TAG_COMPILER
+
+# save warnings/boilerplate of simple test code
+_LT_COMPILER_BOILERPLATE
+_LT_LINKER_BOILERPLATE
+
+# Allow CC to be a program name with arguments.
+lt_save_CC=$CC
+lt_save_CFLAGS=$CFLAGS
+lt_save_GCC=$GCC
+GCC=
+CC=${RC-"windres"}
+CFLAGS=
+compiler=$CC
+_LT_TAGVAR(compiler, $1)=$CC
+_LT_CC_BASENAME([$compiler])
+_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+
+if test -n "$compiler"; then
+ :
+ _LT_CONFIG($1)
+fi
+
+GCC=$lt_save_GCC
+AC_LANG_RESTORE
+CC=$lt_save_CC
+CFLAGS=$lt_save_CFLAGS
+])# _LT_LANG_RC_CONFIG
+
+
+# LT_PROG_GCJ
+# -----------
+AC_DEFUN([LT_PROG_GCJ],
+[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
+ [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
+ [AC_CHECK_TOOL(GCJ, gcj,)
+ test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
+ AC_SUBST(GCJFLAGS)])])[]dnl
+])
+
+# Old name:
+AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
+
+
+# LT_PROG_GO
+# ----------
+AC_DEFUN([LT_PROG_GO],
+[AC_CHECK_TOOL(GOC, gccgo,)
+])
+
+
+# LT_PROG_RC
+# ----------
+AC_DEFUN([LT_PROG_RC],
+[AC_CHECK_TOOL(RC, windres,)
+])
+
+# Old name:
+AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([LT_AC_PROG_RC], [])
+
+
+# _LT_DECL_EGREP
+# --------------
+# If we don't have a new enough Autoconf to choose the best grep
+# available, choose the one first in the user's PATH.
+m4_defun([_LT_DECL_EGREP],
+[AC_REQUIRE([AC_PROG_EGREP])dnl
+AC_REQUIRE([AC_PROG_FGREP])dnl
+test -z "$GREP" && GREP=grep
+_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
+_LT_DECL([], [EGREP], [1], [An ERE matcher])
+_LT_DECL([], [FGREP], [1], [A literal string matcher])
+dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
+AC_SUBST([GREP])
+])
+
+
+# _LT_DECL_OBJDUMP
+# --------------
+# If we don't have a new enough Autoconf to choose the best objdump
+# available, choose the one first in the user's PATH.
+m4_defun([_LT_DECL_OBJDUMP],
+[AC_CHECK_TOOL(OBJDUMP, objdump, false)
+test -z "$OBJDUMP" && OBJDUMP=objdump
+_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
+AC_SUBST([OBJDUMP])
+])
+
+# _LT_DECL_DLLTOOL
+# ----------------
+# Ensure DLLTOOL variable is set.
+m4_defun([_LT_DECL_DLLTOOL],
+[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
+test -z "$DLLTOOL" && DLLTOOL=dlltool
+_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
+AC_SUBST([DLLTOOL])
+])
+
+# _LT_DECL_FILECMD
+# ----------------
+# Check for a file(cmd) program that can be used to detect file type and magic
+m4_defun([_LT_DECL_FILECMD],
+[AC_CHECK_TOOL([FILECMD], [file], [:])
+_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types])
+])# _LD_DECL_FILECMD
+
+# _LT_DECL_SED
+# ------------
+# Check for a fully-functional sed program, that truncates
+# as few characters as possible. Prefer GNU sed if found.
+m4_defun([_LT_DECL_SED],
+[AC_PROG_SED
+test -z "$SED" && SED=sed
+Xsed="$SED -e 1s/^X//"
+_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
+_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
+ [Sed that helps us avoid accidentally triggering echo(1) options like -n])
+])# _LT_DECL_SED
+
+m4_ifndef([AC_PROG_SED], [
+############################################################
+# NOTE: This macro has been submitted for inclusion into #
+# GNU Autoconf as AC_PROG_SED. When it is available in #
+# a released version of Autoconf we should remove this #
+# macro and use it instead. #
+############################################################
+
+m4_defun([AC_PROG_SED],
+[AC_MSG_CHECKING([for a sed that does not truncate output])
+AC_CACHE_VAL(lt_cv_path_SED,
+[# Loop through the user's path and test for sed and gsed.
+# Then use that list of sed's as ones to test for truncation.
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for lt_ac_prog in sed gsed; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
+ lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
+ fi
+ done
+ done
+done
+IFS=$as_save_IFS
+lt_ac_max=0
+lt_ac_count=0
+# Add /usr/xpg4/bin/sed as it is typically found on Solaris
+# along with /bin/sed that truncates output.
+for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
+ test ! -f "$lt_ac_sed" && continue
+ cat /dev/null > conftest.in
+ lt_ac_count=0
+ echo $ECHO_N "0123456789$ECHO_C" >conftest.in
+ # Check for GNU sed and select it if it is found.
+ if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
+ lt_cv_path_SED=$lt_ac_sed
+ break
+ fi
+ while true; do
+ cat conftest.in conftest.in >conftest.tmp
+ mv conftest.tmp conftest.in
+ cp conftest.in conftest.nl
+ echo >>conftest.nl
+ $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
+ cmp -s conftest.out conftest.nl || break
+ # 10000 chars as input seems more than enough
+ test 10 -lt "$lt_ac_count" && break
+ lt_ac_count=`expr $lt_ac_count + 1`
+ if test "$lt_ac_count" -gt "$lt_ac_max"; then
+ lt_ac_max=$lt_ac_count
+ lt_cv_path_SED=$lt_ac_sed
+ fi
+ done
+done
+])
+SED=$lt_cv_path_SED
+AC_SUBST([SED])
+AC_MSG_RESULT([$SED])
+])#AC_PROG_SED
+])#m4_ifndef
+
+# Old name:
+AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([LT_AC_PROG_SED], [])
+
+
+# _LT_CHECK_SHELL_FEATURES
+# ------------------------
+# Find out whether the shell is Bourne or XSI compatible,
+# or has some other useful features.
+m4_defun([_LT_CHECK_SHELL_FEATURES],
+[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+ lt_unset=unset
+else
+ lt_unset=false
+fi
+_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
+
+# test EBCDIC or ASCII
+case `echo X|tr X '\101'` in
+ A) # ASCII based system
+ # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
+ lt_SP2NL='tr \040 \012'
+ lt_NL2SP='tr \015\012 \040\040'
+ ;;
+ *) # EBCDIC based system
+ lt_SP2NL='tr \100 \n'
+ lt_NL2SP='tr \r\n \100\100'
+ ;;
+esac
+_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
+_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
+])# _LT_CHECK_SHELL_FEATURES
+
+
+# _LT_PATH_CONVERSION_FUNCTIONS
+# -----------------------------
+# Determine what file name conversion functions should be used by
+# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
+# for certain cross-compile configurations and native mingw.
+m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+AC_MSG_CHECKING([how to convert $build file names to $host format])
+AC_CACHE_VAL(lt_cv_to_host_file_cmd,
+[case $host in
+ *-*-mingw* )
+ case $build in
+ *-*-mingw* ) # actually msys
+ lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
+ ;;
+ *-*-cygwin* )
+ lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
+ ;;
+ * ) # otherwise, assume *nix
+ lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
+ ;;
+ esac
+ ;;
+ *-*-cygwin* )
+ case $build in
+ *-*-mingw* ) # actually msys
+ lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
+ ;;
+ *-*-cygwin* )
+ lt_cv_to_host_file_cmd=func_convert_file_noop
+ ;;
+ * ) # otherwise, assume *nix
+ lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
+ ;;
+ esac
+ ;;
+ * ) # unhandled hosts (and "normal" native builds)
+ lt_cv_to_host_file_cmd=func_convert_file_noop
+ ;;
+esac
+])
+to_host_file_cmd=$lt_cv_to_host_file_cmd
+AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
+_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
+ [0], [convert $build file names to $host format])dnl
+
+AC_MSG_CHECKING([how to convert $build file names to toolchain format])
+AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
+[#assume ordinary cross tools, or native build.
+lt_cv_to_tool_file_cmd=func_convert_file_noop
+case $host in
+ *-*-mingw* )
+ case $build in
+ *-*-mingw* ) # actually msys
+ lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
+ ;;
+ esac
+ ;;
+esac
+])
+to_tool_file_cmd=$lt_cv_to_tool_file_cmd
+AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
+_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
+ [0], [convert $build files to toolchain format])dnl
+])# _LT_PATH_CONVERSION_FUNCTIONS
diff --git a/dviware/dvisvgm/m4/ltoptions.m4 b/dviware/dvisvgm/m4/ltoptions.m4
new file mode 100644
index 0000000000..b0b5e9c212
--- /dev/null
+++ b/dviware/dvisvgm/m4/ltoptions.m4
@@ -0,0 +1,437 @@
+# Helper functions for option handling. -*- Autoconf -*-
+#
+# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free
+# Software Foundation, Inc.
+# Written by Gary V. Vaughan, 2004
+#
+# This file is free software; the Free Software Foundation gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+
+# serial 8 ltoptions.m4
+
+# This is to help aclocal find these macros, as it can't see m4_define.
+AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
+
+
+# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
+# ------------------------------------------
+m4_define([_LT_MANGLE_OPTION],
+[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
+
+
+# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
+# ---------------------------------------
+# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
+# matching handler defined, dispatch to it. Other OPTION-NAMEs are
+# saved as a flag.
+m4_define([_LT_SET_OPTION],
+[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
+m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
+ _LT_MANGLE_DEFUN([$1], [$2]),
+ [m4_warning([Unknown $1 option '$2'])])[]dnl
+])
+
+
+# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
+# ------------------------------------------------------------
+# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
+m4_define([_LT_IF_OPTION],
+[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
+
+
+# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
+# -------------------------------------------------------
+# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
+# are set.
+m4_define([_LT_UNLESS_OPTIONS],
+[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+ [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
+ [m4_define([$0_found])])])[]dnl
+m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
+])[]dnl
+])
+
+
+# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
+# ----------------------------------------
+# OPTION-LIST is a space-separated list of Libtool options associated
+# with MACRO-NAME. If any OPTION has a matching handler declared with
+# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
+# the unknown option and exit.
+m4_defun([_LT_SET_OPTIONS],
+[# Set options
+m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+ [_LT_SET_OPTION([$1], _LT_Option)])
+
+m4_if([$1],[LT_INIT],[
+ dnl
+ dnl Simply set some default values (i.e off) if boolean options were not
+ dnl specified:
+ _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
+ ])
+ _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
+ ])
+ dnl
+ dnl If no reference was made to various pairs of opposing options, then
+ dnl we run the default mode handler for the pair. For example, if neither
+ dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
+ dnl archives by default:
+ _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
+ _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
+ _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
+ _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
+ [_LT_ENABLE_FAST_INSTALL])
+ _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
+ [_LT_WITH_AIX_SONAME([aix])])
+ ])
+])# _LT_SET_OPTIONS
+
+
+## --------------------------------- ##
+## Macros to handle LT_INIT options. ##
+## --------------------------------- ##
+
+# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
+# -----------------------------------------
+m4_define([_LT_MANGLE_DEFUN],
+[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
+
+
+# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
+# -----------------------------------------------
+m4_define([LT_OPTION_DEFINE],
+[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
+])# LT_OPTION_DEFINE
+
+
+# dlopen
+# ------
+LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
+])
+
+AU_DEFUN([AC_LIBTOOL_DLOPEN],
+[_LT_SET_OPTION([LT_INIT], [dlopen])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you
+put the 'dlopen' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
+
+
+# win32-dll
+# ---------
+# Declare package support for building win32 dll's.
+LT_OPTION_DEFINE([LT_INIT], [win32-dll],
+[enable_win32_dll=yes
+
+case $host in
+*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
+ AC_CHECK_TOOL(AS, as, false)
+ AC_CHECK_TOOL(DLLTOOL, dlltool, false)
+ AC_CHECK_TOOL(OBJDUMP, objdump, false)
+ ;;
+esac
+
+test -z "$AS" && AS=as
+_LT_DECL([], [AS], [1], [Assembler program])dnl
+
+test -z "$DLLTOOL" && DLLTOOL=dlltool
+_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
+])# win32-dll
+
+AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+_LT_SET_OPTION([LT_INIT], [win32-dll])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you
+put the 'win32-dll' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
+
+
+# _LT_ENABLE_SHARED([DEFAULT])
+# ----------------------------
+# implement the --enable-shared flag, and supports the 'shared' and
+# 'disable-shared' LT_INIT options.
+# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
+m4_define([_LT_ENABLE_SHARED],
+[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
+AC_ARG_ENABLE([shared],
+ [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
+ [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_shared=yes ;;
+ no) enable_shared=no ;;
+ *)
+ enable_shared=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
+ for pkg in $enableval; do
+ IFS=$lt_save_ifs
+ if test "X$pkg" = "X$p"; then
+ enable_shared=yes
+ fi
+ done
+ IFS=$lt_save_ifs
+ ;;
+ esac],
+ [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
+
+ _LT_DECL([build_libtool_libs], [enable_shared], [0],
+ [Whether or not to build shared libraries])
+])# _LT_ENABLE_SHARED
+
+LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
+
+# Old names:
+AC_DEFUN([AC_ENABLE_SHARED],
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
+])
+
+AC_DEFUN([AC_DISABLE_SHARED],
+[_LT_SET_OPTION([LT_INIT], [disable-shared])
+])
+
+AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
+AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_ENABLE_SHARED], [])
+dnl AC_DEFUN([AM_DISABLE_SHARED], [])
+
+
+
+# _LT_ENABLE_STATIC([DEFAULT])
+# ----------------------------
+# implement the --enable-static flag, and support the 'static' and
+# 'disable-static' LT_INIT options.
+# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
+m4_define([_LT_ENABLE_STATIC],
+[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
+AC_ARG_ENABLE([static],
+ [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
+ [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_static=yes ;;
+ no) enable_static=no ;;
+ *)
+ enable_static=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
+ for pkg in $enableval; do
+ IFS=$lt_save_ifs
+ if test "X$pkg" = "X$p"; then
+ enable_static=yes
+ fi
+ done
+ IFS=$lt_save_ifs
+ ;;
+ esac],
+ [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
+
+ _LT_DECL([build_old_libs], [enable_static], [0],
+ [Whether or not to build static libraries])
+])# _LT_ENABLE_STATIC
+
+LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
+
+# Old names:
+AC_DEFUN([AC_ENABLE_STATIC],
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
+])
+
+AC_DEFUN([AC_DISABLE_STATIC],
+[_LT_SET_OPTION([LT_INIT], [disable-static])
+])
+
+AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
+AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_ENABLE_STATIC], [])
+dnl AC_DEFUN([AM_DISABLE_STATIC], [])
+
+
+
+# _LT_ENABLE_FAST_INSTALL([DEFAULT])
+# ----------------------------------
+# implement the --enable-fast-install flag, and support the 'fast-install'
+# and 'disable-fast-install' LT_INIT options.
+# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
+m4_define([_LT_ENABLE_FAST_INSTALL],
+[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
+AC_ARG_ENABLE([fast-install],
+ [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
+ [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_fast_install=yes ;;
+ no) enable_fast_install=no ;;
+ *)
+ enable_fast_install=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
+ for pkg in $enableval; do
+ IFS=$lt_save_ifs
+ if test "X$pkg" = "X$p"; then
+ enable_fast_install=yes
+ fi
+ done
+ IFS=$lt_save_ifs
+ ;;
+ esac],
+ [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
+
+_LT_DECL([fast_install], [enable_fast_install], [0],
+ [Whether or not to optimize for fast installation])dnl
+])# _LT_ENABLE_FAST_INSTALL
+
+LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
+
+# Old names:
+AU_DEFUN([AC_ENABLE_FAST_INSTALL],
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you put
+the 'fast-install' option into LT_INIT's first parameter.])
+])
+
+AU_DEFUN([AC_DISABLE_FAST_INSTALL],
+[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you put
+the 'disable-fast-install' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
+dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
+
+
+# _LT_WITH_AIX_SONAME([DEFAULT])
+# ----------------------------------
+# implement the --with-aix-soname flag, and support the `aix-soname=aix'
+# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
+# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
+m4_define([_LT_WITH_AIX_SONAME],
+[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
+shared_archive_member_spec=
+case $host,$enable_shared in
+power*-*-aix[[5-9]]*,yes)
+ AC_MSG_CHECKING([which variant of shared library versioning to provide])
+ AC_ARG_WITH([aix-soname],
+ [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
+ [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
+ [case $withval in
+ aix|svr4|both)
+ ;;
+ *)
+ AC_MSG_ERROR([Unknown argument to --with-aix-soname])
+ ;;
+ esac
+ lt_cv_with_aix_soname=$with_aix_soname],
+ [AC_CACHE_VAL([lt_cv_with_aix_soname],
+ [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
+ with_aix_soname=$lt_cv_with_aix_soname])
+ AC_MSG_RESULT([$with_aix_soname])
+ if test aix != "$with_aix_soname"; then
+ # For the AIX way of multilib, we name the shared archive member
+ # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
+ # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
+ # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
+ # the AIX toolchain works better with OBJECT_MODE set (default 32).
+ if test 64 = "${OBJECT_MODE-32}"; then
+ shared_archive_member_spec=shr_64
+ else
+ shared_archive_member_spec=shr
+ fi
+ fi
+ ;;
+*)
+ with_aix_soname=aix
+ ;;
+esac
+
+_LT_DECL([], [shared_archive_member_spec], [0],
+ [Shared archive member basename, for filename based shared library versioning on AIX])dnl
+])# _LT_WITH_AIX_SONAME
+
+LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
+LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
+LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
+
+
+# _LT_WITH_PIC([MODE])
+# --------------------
+# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
+# LT_INIT options.
+# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
+m4_define([_LT_WITH_PIC],
+[AC_ARG_WITH([pic],
+ [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
+ [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
+ [lt_p=${PACKAGE-default}
+ case $withval in
+ yes|no) pic_mode=$withval ;;
+ *)
+ pic_mode=default
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
+ for lt_pkg in $withval; do
+ IFS=$lt_save_ifs
+ if test "X$lt_pkg" = "X$lt_p"; then
+ pic_mode=yes
+ fi
+ done
+ IFS=$lt_save_ifs
+ ;;
+ esac],
+ [pic_mode=m4_default([$1], [default])])
+
+_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
+])# _LT_WITH_PIC
+
+LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
+LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
+
+# Old name:
+AU_DEFUN([AC_LIBTOOL_PICMODE],
+[_LT_SET_OPTION([LT_INIT], [pic-only])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you
+put the 'pic-only' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
+
+## ----------------- ##
+## LTDL_INIT Options ##
+## ----------------- ##
+
+m4_define([_LTDL_MODE], [])
+LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
+ [m4_define([_LTDL_MODE], [nonrecursive])])
+LT_OPTION_DEFINE([LTDL_INIT], [recursive],
+ [m4_define([_LTDL_MODE], [recursive])])
+LT_OPTION_DEFINE([LTDL_INIT], [subproject],
+ [m4_define([_LTDL_MODE], [subproject])])
+
+m4_define([_LTDL_TYPE], [])
+LT_OPTION_DEFINE([LTDL_INIT], [installable],
+ [m4_define([_LTDL_TYPE], [installable])])
+LT_OPTION_DEFINE([LTDL_INIT], [convenience],
+ [m4_define([_LTDL_TYPE], [convenience])])
diff --git a/dviware/dvisvgm/m4/ltsugar.m4 b/dviware/dvisvgm/m4/ltsugar.m4
new file mode 100644
index 0000000000..902508bd93
--- /dev/null
+++ b/dviware/dvisvgm/m4/ltsugar.m4
@@ -0,0 +1,124 @@
+# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
+#
+# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software
+# Foundation, Inc.
+# Written by Gary V. Vaughan, 2004
+#
+# This file is free software; the Free Software Foundation gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+
+# serial 6 ltsugar.m4
+
+# This is to help aclocal find these macros, as it can't see m4_define.
+AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
+
+
+# lt_join(SEP, ARG1, [ARG2...])
+# -----------------------------
+# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
+# associated separator.
+# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
+# versions in m4sugar had bugs.
+m4_define([lt_join],
+[m4_if([$#], [1], [],
+ [$#], [2], [[$2]],
+ [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
+m4_define([_lt_join],
+[m4_if([$#$2], [2], [],
+ [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
+
+
+# lt_car(LIST)
+# lt_cdr(LIST)
+# ------------
+# Manipulate m4 lists.
+# These macros are necessary as long as will still need to support
+# Autoconf-2.59, which quotes differently.
+m4_define([lt_car], [[$1]])
+m4_define([lt_cdr],
+[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
+ [$#], 1, [],
+ [m4_dquote(m4_shift($@))])])
+m4_define([lt_unquote], $1)
+
+
+# lt_append(MACRO-NAME, STRING, [SEPARATOR])
+# ------------------------------------------
+# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
+# Note that neither SEPARATOR nor STRING are expanded; they are appended
+# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
+# No SEPARATOR is output if MACRO-NAME was previously undefined (different
+# than defined and empty).
+#
+# This macro is needed until we can rely on Autoconf 2.62, since earlier
+# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
+m4_define([lt_append],
+[m4_define([$1],
+ m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
+
+
+
+# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
+# ----------------------------------------------------------
+# Produce a SEP delimited list of all paired combinations of elements of
+# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
+# has the form PREFIXmINFIXSUFFIXn.
+# Needed until we can rely on m4_combine added in Autoconf 2.62.
+m4_define([lt_combine],
+[m4_if(m4_eval([$# > 3]), [1],
+ [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
+[[m4_foreach([_Lt_prefix], [$2],
+ [m4_foreach([_Lt_suffix],
+ ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
+ [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
+
+
+# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
+# -----------------------------------------------------------------------
+# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
+# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
+m4_define([lt_if_append_uniq],
+[m4_ifdef([$1],
+ [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
+ [lt_append([$1], [$2], [$3])$4],
+ [$5])],
+ [lt_append([$1], [$2], [$3])$4])])
+
+
+# lt_dict_add(DICT, KEY, VALUE)
+# -----------------------------
+m4_define([lt_dict_add],
+[m4_define([$1($2)], [$3])])
+
+
+# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
+# --------------------------------------------
+m4_define([lt_dict_add_subkey],
+[m4_define([$1($2:$3)], [$4])])
+
+
+# lt_dict_fetch(DICT, KEY, [SUBKEY])
+# ----------------------------------
+m4_define([lt_dict_fetch],
+[m4_ifval([$3],
+ m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
+ m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
+
+
+# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
+# -----------------------------------------------------------------
+m4_define([lt_if_dict_fetch],
+[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
+ [$5],
+ [$6])])
+
+
+# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
+# --------------------------------------------------------------
+m4_define([lt_dict_filter],
+[m4_if([$5], [], [],
+ [lt_join(m4_quote(m4_default([$4], [[, ]])),
+ lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
+ [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
+])
diff --git a/dviware/dvisvgm/m4/ltversion.m4 b/dviware/dvisvgm/m4/ltversion.m4
new file mode 100644
index 0000000000..b155d0acec
--- /dev/null
+++ b/dviware/dvisvgm/m4/ltversion.m4
@@ -0,0 +1,24 @@
+# ltversion.m4 -- version numbers -*- Autoconf -*-
+#
+# Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation,
+# Inc.
+# Written by Scott James Remnant, 2004
+#
+# This file is free software; the Free Software Foundation gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+
+# @configure_input@
+
+# serial 4245 ltversion.m4
+# This file is part of GNU Libtool
+
+m4_define([LT_PACKAGE_VERSION], [2.4.7])
+m4_define([LT_PACKAGE_REVISION], [2.4.7])
+
+AC_DEFUN([LTVERSION_VERSION],
+[macro_version='2.4.7'
+macro_revision='2.4.7'
+_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
+_LT_DECL(, macro_revision, 0)
+])
diff --git a/dviware/dvisvgm/m4/lt~obsolete.m4 b/dviware/dvisvgm/m4/lt~obsolete.m4
new file mode 100644
index 0000000000..0f7a8759da
--- /dev/null
+++ b/dviware/dvisvgm/m4/lt~obsolete.m4
@@ -0,0 +1,99 @@
+# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
+#
+# Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free
+# Software Foundation, Inc.
+# Written by Scott James Remnant, 2004.
+#
+# This file is free software; the Free Software Foundation gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+
+# serial 5 lt~obsolete.m4
+
+# These exist entirely to fool aclocal when bootstrapping libtool.
+#
+# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
+# which have later been changed to m4_define as they aren't part of the
+# exported API, or moved to Autoconf or Automake where they belong.
+#
+# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
+# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
+# using a macro with the same name in our local m4/libtool.m4 it'll
+# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
+# and doesn't know about Autoconf macros at all.)
+#
+# So we provide this file, which has a silly filename so it's always
+# included after everything else. This provides aclocal with the
+# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
+# because those macros already exist, or will be overwritten later.
+# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
+#
+# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
+# Yes, that means every name once taken will need to remain here until
+# we give up compatibility with versions before 1.7, at which point
+# we need to keep only those names which we still refer to.
+
+# This is to help aclocal find these macros, as it can't see m4_define.
+AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
+
+m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
+m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
+m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
+m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
+m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
+m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
+m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
+m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
+m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
+m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
+m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
+m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
+m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
+m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
+m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
+m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
+m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
+m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
+m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
+m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
+m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
+m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
+m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
+m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
+m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
+m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
+m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
+m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
+m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
+m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
+m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
+m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
+m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
+m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
+m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
+m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
+m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
+m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
+m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
+m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
+m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
+m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
+m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
+m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
+m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
+m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
+m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
+m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
+m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
+m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
+m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
+m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
+m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
+m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
+m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
+m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
+m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
diff --git a/dviware/dvisvgm/src/AGLTable.hpp b/dviware/dvisvgm/src/AGLTable.hpp
index c1f682ca85..17ba233505 100644
--- a/dviware/dvisvgm/src/AGLTable.hpp
+++ b/dviware/dvisvgm/src/AGLTable.hpp
@@ -2,7 +2,7 @@
** AGLTable.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/BasicDVIReader.cpp b/dviware/dvisvgm/src/BasicDVIReader.cpp
index bb7f72a844..0b322765c7 100644
--- a/dviware/dvisvgm/src/BasicDVIReader.cpp
+++ b/dviware/dvisvgm/src/BasicDVIReader.cpp
@@ -2,7 +2,7 @@
** BasicDVIReader.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/BasicDVIReader.hpp b/dviware/dvisvgm/src/BasicDVIReader.hpp
index 111283f619..1a63c4f320 100644
--- a/dviware/dvisvgm/src/BasicDVIReader.hpp
+++ b/dviware/dvisvgm/src/BasicDVIReader.hpp
@@ -2,7 +2,7 @@
** BasicDVIReader.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Bezier.cpp b/dviware/dvisvgm/src/Bezier.cpp
index 3a3ec31769..2d90122531 100644
--- a/dviware/dvisvgm/src/Bezier.cpp
+++ b/dviware/dvisvgm/src/Bezier.cpp
@@ -2,7 +2,7 @@
** Bezier.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -22,21 +22,58 @@
#include <utility>
#include "Bezier.hpp"
#include "Matrix.hpp"
+#include "utility.hpp"
using namespace std;
-Bezier::Bezier () {
- _points[0] = _points[1] = _points[2] = _points[3] = DPair(0);
+QuadBezier::QuadBezier () {
+ _points[0] = _points[1] = _points[2] = DPair(0, 0);
}
-/** Creates a quadratic Bézier curve. internally, it's represented as a cubic one. */
-Bezier::Bezier (const DPair &p0, const DPair &p1, const DPair &p2) {
- setPoints(p0, p0+(p1-p0)*2.0/3.0, p2+(p1-p2)*2.0/3.0, p2);
+QuadBezier::QuadBezier (const DPair &p0, const DPair &p1, const DPair &p2) {
+ setPoints(p0, p1, p2);
+}
+
+
+void QuadBezier::setPoints(const DPair &p0, const DPair &p1, const DPair &p2) {
+ _points[0] = p0;
+ _points[1] = p1;
+ _points[2] = p2;
+}
+
+
+/** Returns the value (curve point) at t. */
+DPair QuadBezier::valueAt (double t) const {
+ const double s = 1-t;
+ return _points[0]*s*s + _points[1]*2.0*s*t + _points[2]*t*t;
+}
+
+
+/** Returns the value of the first derivative of the curve at t. */
+DPair QuadBezier::derivativeAt (double t) const {
+ return _points[0]*(2*t-2) + _points[1]*(2-4*t) + _points[2]*(2*t);
+}
+
+
+/** Returns the arc length of the curve from 0 to t. */
+double QuadBezier::arclen (double t) const {
+ return math::integral(0, t, 20, [this](double t) -> double {
+ DPair deriv = derivativeAt(t);
+ return sqrt(deriv.x()*deriv.x() + deriv.y()*deriv.y());
+ });
+}
+
+
+////////////////////////////////////////////////////////////////////////////////
+
+
+CubicBezier::CubicBezier () {
+ _points[0] = _points[1] = _points[2] = _points[3] = DPair(0, 0);
}
-Bezier::Bezier (const DPair &p0, const DPair &p1, const DPair &p2, const DPair &p3) {
+CubicBezier::CubicBezier (const DPair &p0, const DPair &p1, const DPair &p2, const DPair &p3) {
setPoints(p0, p1, p2, p3);
}
@@ -45,7 +82,7 @@ Bezier::Bezier (const DPair &p0, const DPair &p1, const DPair &p2, const DPair &
* @param[in] source original curve to be clipped
* @param[in] t0 'time' parameter \f$\in[0,1]\f$ of source curve where the subcurve starts
* @param[in] t1 'time' parameter \f$\in[0,1]\f$ of source curve where the subcurve ends */
-Bezier::Bezier (const Bezier &source, double t0, double t1) {
+CubicBezier::CubicBezier (const CubicBezier &source, double t0, double t1) {
if (t0 == t1)
_points[0] = _points[1] = _points[2] = _points[3] = source.valueAt(t0);
else {
@@ -56,7 +93,7 @@ Bezier::Bezier (const Bezier &source, double t0, double t1) {
else if (t1 == 1)
source.subdivide(t0, nullptr, this);
else {
- Bezier subcurve;
+ CubicBezier subcurve;
source.subdivide(t0, nullptr, &subcurve);
subcurve.subdivide((t1-t0)/(1-t0), this, nullptr);
}
@@ -64,7 +101,16 @@ Bezier::Bezier (const Bezier &source, double t0, double t1) {
}
-void Bezier::setPoints(const DPair &p0, const DPair &p1, const DPair &p2, const DPair &p3) {
+/** Creates a cubic Bézier from a quadratic one. */
+CubicBezier::CubicBezier (const QuadBezier &qbezier) {
+ const DPair &p0 = qbezier.point(0);
+ const DPair &p1 = qbezier.point(1);
+ const DPair &p2 = qbezier.point(2);
+ setPoints(p0, p0+(p1-p0)*2.0/3.0, p2+(p1-p2)*2.0/3.0, p2);
+}
+
+
+void CubicBezier::setPoints(const DPair &p0, const DPair &p1, const DPair &p2, const DPair &p3) {
_points[0] = p0;
_points[1] = p1;
_points[2] = p2;
@@ -72,20 +118,20 @@ void Bezier::setPoints(const DPair &p0, const DPair &p1, const DPair &p2, const
}
-void Bezier::reverse() {
+void CubicBezier::reverse() {
swap(_points[0], _points[3]);
swap(_points[1], _points[2]);
}
-DPair Bezier::valueAt (double t) const {
+DPair CubicBezier::valueAt (double t) const {
const double s = 1-t;
return _points[0]*s*s*s + _points[1]*3.0*s*s*t + _points[2]*3.0*s*t*t + _points[3]*t*t*t;
}
/** Returns a value of the Bézier curve's blossom representation. */
-DPair Bezier::blossomValue (double u, double v, double w) const {
+DPair CubicBezier::blossomValue (double u, double v, double w) const {
const double uv = u*v;
const double uw = u*w;
const double vw = v*w;
@@ -98,7 +144,7 @@ DPair Bezier::blossomValue (double u, double v, double w) const {
/** Splits the curve at t into two sub-curves. */
-void Bezier::subdivide (double t, Bezier *bezier1, Bezier *bezier2) const {
+void CubicBezier::subdivide (double t, CubicBezier *bezier1, CubicBezier *bezier2) const {
const double s = 1-t;
DPair p01 = _points[0]*s + _points[1]*t;
DPair p12 = _points[1]*s + _points[2]*t;
@@ -121,7 +167,7 @@ void Bezier::subdivide (double t, Bezier *bezier1, Bezier *bezier2) const {
* @param[out] p the resulting sequence of points defining the start/end points of the line segments
* @param[out] t corresponding curve parameters of the approximated points p: \f$ b(t_i)=p_i \f$
* @return number of points in vector p */
-int Bezier::approximate (double delta, std::vector<DPair> &p, vector<double> *t) const {
+int CubicBezier::approximate (double delta, std::vector<DPair> &p, vector<double> *t) const {
p.push_back(_points[0]);
if (t)
t->push_back(0);
@@ -129,7 +175,7 @@ int Bezier::approximate (double delta, std::vector<DPair> &p, vector<double> *t)
}
-int Bezier::approximate (double delta, double t0, double t1, vector<DPair> &p, vector<double> *t) const {
+int CubicBezier::approximate (double delta, double t0, double t1, vector<DPair> &p, vector<double> *t) const {
// compute distance of adjacent control points
const double l01 = (_points[1]-_points[0]).length();
const double l12 = (_points[2]-_points[1]).length();
@@ -142,13 +188,13 @@ int Bezier::approximate (double delta, double t0, double t1, vector<DPair> &p, v
}
else {
// subdivide curve at b(0.5) and approximate the resulting parts separately
- Bezier b1, b2;
+ CubicBezier b1, b2;
subdivide(0.5, &b1, &b2);
double tmid = (t0+t1)/2;
b1.approximate(delta, t0, tmid, p, t);
b2.approximate(delta, tmid, t1, p, t);
}
- return p.size();
+ return static_cast<int>(p.size());
}
@@ -188,7 +234,7 @@ static inline bool near (const DPair &p1, const DPair &p2, double delta) {
* @param[in] delta deviation tolerance
* @param[in] p control points of the reduced curve
* @return degree of the reduced curve */
-int Bezier::reduceDegree (double delta, vector<DPair> &p) const {
+int CubicBezier::reduceDegree (double delta, vector<DPair> &p) const {
p.clear();
if (near(_points[0], _points[1], delta) && near(_points[0], _points[2], delta) && near(_points[0], _points[3], delta))
p.push_back(_points[0]);
@@ -206,7 +252,89 @@ int Bezier::reduceDegree (double delta, vector<DPair> &p) const {
for (int i=0; i < 4; i++)
p[i] = _points[i];
}
- return p.size()-1;
+ return static_cast<int>(p.size()-1);
+}
+
+
+/** Approximates the cubic Bézier curve by a sequence of quadratic ones.
+ * @param[in] precision specifies the precision of the approximation
+ * @return map containing the split parameters t_n together with the qudratic curves */
+vector<QuadBezier> CubicBezier::toQuadBeziers (double precision, vector<double> *splitParams) const {
+ vector<QuadBezier> qbeziers;
+ toQuadBeziers(0, 1, precision, qbeziers, splitParams);
+ return qbeziers;
+}
+
+
+/** Returns the "mid-point approximation" of this cubic Bézier. */
+QuadBezier CubicBezier::midpointApproximation () const {
+ DPair p0 = (_points[1]*3.0 - _points[0])/2.0;
+ DPair p1 = (_points[2]*3.0 - _points[3])/2.0;
+ return QuadBezier(_points[0], (p0+p1)/2.0, _points[3]);
+}
+
+
+/** Approximates a segment of a cubic Bézier curve by a sequence of quadratic curves.
+ * The quadratic segments are computed by adaptive subdivision of the cubic curve
+ * as described at http://www.caffeineowl.com/graphics/2d/vectorial/cubic2quad01.html
+ * @param[in] t0 curve parameter of the segment's start point
+ * @param[in] t1 curve parameter of the segment's end point
+ * @param[in] precision maximum allowed distance between the curve points b(t) and the
+ * corresponding approximated point c(t) on the quadratic curve
+ * @param[out] qbeziers the resulting quadratic curves sorted in ascending order by their split points
+ * @param[out] startParams the start parameters t[k] of the curves qbeziers[k] relative to *this. */
+void CubicBezier::toQuadBeziers (double t0, double t1, double precision, vector<QuadBezier> &qbeziers, vector<double> *startParams) const {
+ // If -p0+3p1-3p2+p3 = 0, the degree of the curve is <= 2 and it's not necessary do any approximation.
+ // In this case, the control point of the quadratic Bézier curve is (-p0+3p1)/2 = (3p2-p3)/2.
+ // Otherwise, the distance d between q1:=(-p0+3p1)/2 and q2:=(3p2-p3)/2 is != 0.
+ // Now we compute the quadratic Bézier with start point p0, end point p3, and control point (q1+q2)/2,
+ // the "mid-point approximation" (MPA) of b.
+ // The maximal distance between the points of the original curve b and the corresponding ones
+ // on the MPA is d*sqrt(3)/18. The same computations can be done for the cubic curves we get
+ // when subdividing b at a parameter t. The maximal distance of these curves to their MPA
+ // is t^3*d*sqrt(3)/18.
+ // Based on the formula for this distance we compute the split point tmax for a given precision
+ // and check 3 cases:
+ // * tmax >= 1: curve is quadratic, return MPA of b
+ // * tmax >= 0.5: split b at t=0.5, return the MPAs of both segments
+ // * tmax < 0.5: split b at tmax and 1-tmax, return the MPAs of the first and third segment,
+ // recurse the algorithm for the middle segment
+ DPair q1 = (_points[1]*3.0 - _points[0])/2.0;
+ DPair q2 = (_points[2]*3.0 - _points[3])/2.0;
+ double dist = (q2-q1).length();
+ double tmax3 = 18.0/sqrt(3.0)*precision/dist; // the cube of tmax
+ if (tmax3 >= 1.0) {
+ // curve is already quadratic, no subdivision necessary, return MPA
+ qbeziers.emplace_back(QuadBezier(_points[0], (q1+q2)/2.0, _points[3]));
+ if (startParams)
+ startParams->push_back(t0);
+ }
+ else if (tmax3 >= 0.125) { // tmax >= 0.5
+ // split the curve at t=0.5 and compute the MPA for both segments
+ CubicBezier cbezier1, cbezier2;
+ subdivide(0.5, &cbezier1, &cbezier2);
+ qbeziers.emplace_back(cbezier1.midpointApproximation());
+ qbeziers.emplace_back(cbezier2.midpointApproximation());
+ if (startParams) {
+ startParams->push_back(t0);
+ startParams->push_back((t0+t1)/2);
+ }
+ }
+ else { // tmax < 0.5
+ double tmax = cbrt(tmax3);
+ double smax = 1.0-tmax;
+ double dt = t1-t0;
+ // first segment can be approximated by its MPA
+ qbeziers.emplace_back(CubicBezier(*this, 0, tmax).midpointApproximation());
+ if (startParams)
+ startParams->push_back(t0);
+ // recurse for middle segment
+ CubicBezier(*this, tmax, smax).toQuadBeziers(t0+tmax*dt, t0+smax*dt, precision, qbeziers, startParams);
+ // third segment can be approximated by its MPA
+ qbeziers.emplace_back(CubicBezier(*this, smax, 1).midpointApproximation());
+ if (startParams)
+ startParams->push_back(smax);
+ }
}
@@ -231,7 +359,7 @@ static bool solve_quadratic_equation (double a, double b, double c, double &x1,
/** Returns a tight bounding box parallel to the x- and y-axis. */
-BoundingBox Bezier::getBBox () const {
+BoundingBox CubicBezier::getBBox () const {
BoundingBox bbox;
// coefficients of the derivative
DPair pa = _points[3] - _points[2]*3.0 + _points[1]*3.0 - _points[0];
@@ -258,8 +386,9 @@ BoundingBox Bezier::getBBox () const {
}
-Bezier& Bezier::transform (const Matrix &matrix) {
- for (int i=0; i < 4; i++)
- _points[i] = matrix*_points[i];
+CubicBezier& CubicBezier::transform (const Matrix &matrix) {
+ for (auto &point : _points)
+ point = matrix * point;
return *this;
}
+
diff --git a/dviware/dvisvgm/src/Bezier.hpp b/dviware/dvisvgm/src/Bezier.hpp
index 2749797e59..9036bfcd55 100644
--- a/dviware/dvisvgm/src/Bezier.hpp
+++ b/dviware/dvisvgm/src/Bezier.hpp
@@ -2,7 +2,7 @@
** Bezier.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -27,25 +27,45 @@
class Matrix;
-class Bezier {
+class QuadBezier {
public:
- Bezier ();
- Bezier (const DPair &p0, const DPair &p1, const DPair &p2);
- Bezier (const DPair &p0, const DPair &p1, const DPair &p2, const DPair &p3);
- Bezier (const Bezier &source, double t0, double t1);
+ QuadBezier ();
+ QuadBezier (const DPair &p0, const DPair &p1, const DPair &p2);
+ void setPoints (const DPair &p0, const DPair &p1, const DPair &p2);
+ constexpr const DPair& point (int i) const {return _points[i];}
+ DPair valueAt (double t) const;
+ DPair derivativeAt (double t) const;
+ double arclen (double t=1.0) const;
+
+ private:
+ DPair _points[3];
+};
+
+
+class CubicBezier {
+ public:
+ CubicBezier ();
+ //CubicBezier (const DPair &p0, const DPair &p1, const DPair &p2);
+ CubicBezier (const DPair &p0, const DPair &p1, const DPair &p2, const DPair &p3);
+ CubicBezier (double x0, double y0, double x1, double y1, double x2, double y2, double x3, double y3);
+ CubicBezier (const CubicBezier &source, double t0, double t1);
+ explicit CubicBezier (const QuadBezier &qbezier);
void setPoints (const DPair &p0, const DPair &p1, const DPair &p2, const DPair &p3);
void reverse ();
DPair valueAt (double t) const;
DPair blossomValue (double u, double v, double w) const;
- void subdivide (double t, Bezier *bezier1, Bezier *bezier2) const;
- Bezier& transform (const Matrix &matrix);
+ void subdivide (double t, CubicBezier *bezier1, CubicBezier *bezier2) const;
+ CubicBezier& transform (const Matrix &matrix);
int approximate (double delta, std::vector<DPair> &p, std::vector<double> *t=nullptr) const;
- const DPair& point (int i) const {return _points[i];}
+ constexpr const DPair& point (int i) const {return _points[i];}
int reduceDegree (double delta, std::vector<DPair> &p) const;
+ std::vector<QuadBezier> toQuadBeziers (double delta, std::vector<double> *startParams=nullptr) const;
BoundingBox getBBox () const;
protected:
int approximate (double delta, double t0, double t1, std::vector<DPair> &p, std::vector<double> *t) const;
+ void toQuadBeziers (double t0, double t1, double precision, std::vector<QuadBezier> &qbeziers, std::vector<double> *startParams) const;
+ QuadBezier midpointApproximation () const;
private:
DPair _points[4];
diff --git a/dviware/dvisvgm/src/BgColorSpecialHandler.cpp b/dviware/dvisvgm/src/BgColorSpecialHandler.cpp
index 2fcf74f6e1..86e5fb72d7 100644
--- a/dviware/dvisvgm/src/BgColorSpecialHandler.cpp
+++ b/dviware/dvisvgm/src/BgColorSpecialHandler.cpp
@@ -2,7 +2,7 @@
** BgColorSpecialHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/BgColorSpecialHandler.hpp b/dviware/dvisvgm/src/BgColorSpecialHandler.hpp
index 1194f4b793..7a0290b05f 100644
--- a/dviware/dvisvgm/src/BgColorSpecialHandler.hpp
+++ b/dviware/dvisvgm/src/BgColorSpecialHandler.hpp
@@ -2,7 +2,7 @@
** BgColorSpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Bitmap.cpp b/dviware/dvisvgm/src/Bitmap.cpp
index 9bdc881332..517355ba43 100644
--- a/dviware/dvisvgm/src/Bitmap.cpp
+++ b/dviware/dvisvgm/src/Bitmap.cpp
@@ -2,7 +2,7 @@
** Bitmap.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Bitmap.hpp b/dviware/dvisvgm/src/Bitmap.hpp
index dcd6a1f19f..a065ba1790 100644
--- a/dviware/dvisvgm/src/Bitmap.hpp
+++ b/dviware/dvisvgm/src/Bitmap.hpp
@@ -2,7 +2,7 @@
** Bitmap.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/BoundingBox.cpp b/dviware/dvisvgm/src/BoundingBox.cpp
index 64b24fd233..a57da059dc 100644
--- a/dviware/dvisvgm/src/BoundingBox.cpp
+++ b/dviware/dvisvgm/src/BoundingBox.cpp
@@ -2,7 +2,7 @@
** BoundingBox.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/BoundingBox.hpp b/dviware/dvisvgm/src/BoundingBox.hpp
index 51da4d04fb..673243eb9b 100644
--- a/dviware/dvisvgm/src/BoundingBox.hpp
+++ b/dviware/dvisvgm/src/BoundingBox.hpp
@@ -2,7 +2,7 @@
** BoundingBox.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CLCommandLine.cpp b/dviware/dvisvgm/src/CLCommandLine.cpp
index e8b538e783..8eb3d54984 100644
--- a/dviware/dvisvgm/src/CLCommandLine.cpp
+++ b/dviware/dvisvgm/src/CLCommandLine.cpp
@@ -2,7 +2,7 @@
** CLCommandLine.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CLCommandLine.hpp b/dviware/dvisvgm/src/CLCommandLine.hpp
index 58001c607f..72d0bc17a7 100644
--- a/dviware/dvisvgm/src/CLCommandLine.hpp
+++ b/dviware/dvisvgm/src/CLCommandLine.hpp
@@ -2,7 +2,7 @@
** CLCommandLine.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CLOption.hpp b/dviware/dvisvgm/src/CLOption.hpp
index daaaa3a637..a6dbe55131 100644
--- a/dviware/dvisvgm/src/CLOption.hpp
+++ b/dviware/dvisvgm/src/CLOption.hpp
@@ -2,7 +2,7 @@
** CLOption.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CMap.cpp b/dviware/dvisvgm/src/CMap.cpp
index cedc1a7c57..46ca0ba574 100644
--- a/dviware/dvisvgm/src/CMap.cpp
+++ b/dviware/dvisvgm/src/CMap.cpp
@@ -2,7 +2,7 @@
** CMap.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CMap.hpp b/dviware/dvisvgm/src/CMap.hpp
index 7a6b24e833..af7f109625 100644
--- a/dviware/dvisvgm/src/CMap.hpp
+++ b/dviware/dvisvgm/src/CMap.hpp
@@ -2,7 +2,7 @@
** CMap.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CMapManager.cpp b/dviware/dvisvgm/src/CMapManager.cpp
index ddf3a8fdb1..17da0a063a 100644
--- a/dviware/dvisvgm/src/CMapManager.cpp
+++ b/dviware/dvisvgm/src/CMapManager.cpp
@@ -2,7 +2,7 @@
** CMapManager.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CMapManager.hpp b/dviware/dvisvgm/src/CMapManager.hpp
index 8b5ff3cf8c..56ad32d44d 100644
--- a/dviware/dvisvgm/src/CMapManager.hpp
+++ b/dviware/dvisvgm/src/CMapManager.hpp
@@ -2,7 +2,7 @@
** CMapManager.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CMapReader.cpp b/dviware/dvisvgm/src/CMapReader.cpp
index ff9a76f33c..4b8f3297ac 100644
--- a/dviware/dvisvgm/src/CMapReader.cpp
+++ b/dviware/dvisvgm/src/CMapReader.cpp
@@ -2,7 +2,7 @@
** CMapReader.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CMapReader.hpp b/dviware/dvisvgm/src/CMapReader.hpp
index de87c4e4c0..9ef573f5dd 100644
--- a/dviware/dvisvgm/src/CMapReader.hpp
+++ b/dviware/dvisvgm/src/CMapReader.hpp
@@ -2,7 +2,7 @@
** CMapReader.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Calculator.cpp b/dviware/dvisvgm/src/Calculator.cpp
index 7a655dcec1..db7241245d 100644
--- a/dviware/dvisvgm/src/Calculator.cpp
+++ b/dviware/dvisvgm/src/Calculator.cpp
@@ -2,7 +2,7 @@
** Calculator.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Calculator.hpp b/dviware/dvisvgm/src/Calculator.hpp
index 9e4002ce72..150c2ee745 100644
--- a/dviware/dvisvgm/src/Calculator.hpp
+++ b/dviware/dvisvgm/src/Calculator.hpp
@@ -2,7 +2,7 @@
** Calculator.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CharMapID.cpp b/dviware/dvisvgm/src/CharMapID.cpp
index 0132e61af2..b5a8576667 100644
--- a/dviware/dvisvgm/src/CharMapID.cpp
+++ b/dviware/dvisvgm/src/CharMapID.cpp
@@ -2,7 +2,7 @@
** CharMapID.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CharMapID.hpp b/dviware/dvisvgm/src/CharMapID.hpp
index 2b97a8e58b..400185dc2b 100644
--- a/dviware/dvisvgm/src/CharMapID.hpp
+++ b/dviware/dvisvgm/src/CharMapID.hpp
@@ -2,7 +2,7 @@
** CharMapID.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Character.hpp b/dviware/dvisvgm/src/Character.hpp
index 6a0e836ccc..5811481dcc 100644
--- a/dviware/dvisvgm/src/Character.hpp
+++ b/dviware/dvisvgm/src/Character.hpp
@@ -2,7 +2,7 @@
** Character.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Color.cpp b/dviware/dvisvgm/src/Color.cpp
index 54d7eb2178..d5b6413081 100644
--- a/dviware/dvisvgm/src/Color.cpp
+++ b/dviware/dvisvgm/src/Color.cpp
@@ -2,7 +2,7 @@
** Color.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Color.hpp b/dviware/dvisvgm/src/Color.hpp
index 19ab9e6d44..0edb9e9886 100644
--- a/dviware/dvisvgm/src/Color.hpp
+++ b/dviware/dvisvgm/src/Color.hpp
@@ -2,7 +2,7 @@
** Color.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/ColorSpecialHandler.cpp b/dviware/dvisvgm/src/ColorSpecialHandler.cpp
index 9ea45f4cd4..35bc111ee3 100644
--- a/dviware/dvisvgm/src/ColorSpecialHandler.cpp
+++ b/dviware/dvisvgm/src/ColorSpecialHandler.cpp
@@ -2,7 +2,7 @@
** ColorSpecialHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/ColorSpecialHandler.hpp b/dviware/dvisvgm/src/ColorSpecialHandler.hpp
index 1e62c8c14b..ea542e1f06 100644
--- a/dviware/dvisvgm/src/ColorSpecialHandler.hpp
+++ b/dviware/dvisvgm/src/ColorSpecialHandler.hpp
@@ -2,7 +2,7 @@
** ColorSpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/CommandLine.hpp b/dviware/dvisvgm/src/CommandLine.hpp
index fafd9f5ad3..72edde3ee1 100644
--- a/dviware/dvisvgm/src/CommandLine.hpp
+++ b/dviware/dvisvgm/src/CommandLine.hpp
@@ -2,7 +2,7 @@
// It is part of the dvisvgm package and published under the terms
// of the GNU General Public License version 3, or (at your option) any later version.
// See file COPYING for further details.
-// Copyright (C) 2016-2022 Martin Gieseking <martin.gieseking@uos.de>
+// Copyright (C) 2016-2023 Martin Gieseking <martin.gieseking@uos.de>
#ifndef COMMANDLINE_HPP
#define COMMANDLINE_HPP
@@ -20,7 +20,7 @@ class CommandLine : public CL::CommandLine {
CommandLine () : CL::CommandLine(
"This program converts DVI files, as created by TeX/LaTeX, as well as\nEPS and PDF files to the XML-based scalable vector graphics format SVG.",
"[options] dvifile\n--eps [options] epsfile\n--pdf [options] pdffile",
- "Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de>"
+ "Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de>"
) {}
CommandLine (int argc, char **argv) : CommandLine() {
@@ -35,6 +35,8 @@ class CommandLine : public CL::CommandLine {
Option colorOpt {"color", '\0', "colorize messages"};
Option colornamesOpt {"colornames", '\0', "prefer color names to RGB values if possible"};
Option commentsOpt {"comments", '\0', "add comments with additional information"};
+ Option debugGlyphsOpt {"debug-glyphs", '\0', "create PS files for all glyphs converted to TTF"};
+ Option embedBitmapsOpt {"embed-bitmaps", '\0', "prevent references to external bitmap files"};
Option epsOpt {"eps", 'E', "convert EPS file to SVG"};
Option exactBboxOpt {"exact-bbox", 'e', "compute exact glyph bounding boxes"};
TypedOption<std::string, Option::ArgMode::REQUIRED> fontFormatOpt {"font-format", 'f', "format", "svg", "set file format of embedded fonts"};
@@ -106,6 +108,7 @@ class CommandLine : public CL::CommandLine {
#endif
{&colornamesOpt, 1},
{&commentsOpt, 1},
+ {&embedBitmapsOpt, 1},
#if !defined(DISABLE_WOFF)
{&fontFormatOpt, 1},
#endif
@@ -135,6 +138,9 @@ class CommandLine : public CL::CommandLine {
{&transformOpt, 2},
{&zoomOpt, 2},
{&cacheOpt, 3},
+#if defined(TTFDEBUG)
+ {&debugGlyphsOpt, 3},
+#endif
{&exactBboxOpt, 3},
{&keepOpt, 3},
#if !defined(HAVE_LIBGS) && !defined(DISABLE_GS)
diff --git a/dviware/dvisvgm/src/DLLoader.cpp b/dviware/dvisvgm/src/DLLoader.cpp
index d5d749cc4a..3ac13ff430 100644
--- a/dviware/dvisvgm/src/DLLoader.cpp
+++ b/dviware/dvisvgm/src/DLLoader.cpp
@@ -2,7 +2,7 @@
** DLLoader.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/DLLoader.hpp b/dviware/dvisvgm/src/DLLoader.hpp
index 6cb35723ee..48c774200b 100644
--- a/dviware/dvisvgm/src/DLLoader.hpp
+++ b/dviware/dvisvgm/src/DLLoader.hpp
@@ -2,7 +2,7 @@
** DLLoader.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/DVIActions.hpp b/dviware/dvisvgm/src/DVIActions.hpp
index 228b897686..8e2e2a0829 100644
--- a/dviware/dvisvgm/src/DVIActions.hpp
+++ b/dviware/dvisvgm/src/DVIActions.hpp
@@ -2,7 +2,7 @@
** DVIActions.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/DVIReader.cpp b/dviware/dvisvgm/src/DVIReader.cpp
index b8c5bc449e..6dd7bebb69 100644
--- a/dviware/dvisvgm/src/DVIReader.cpp
+++ b/dviware/dvisvgm/src/DVIReader.cpp
@@ -2,7 +2,7 @@
** DVIReader.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -595,6 +595,20 @@ void DVIReader::cmdXFontDef (int) {
}
+/** Returns the width of a string typed with a given font.
+ * @param[in] glyphs glyphs of the string
+ * @param[in] font assigned font
+ * @return width in bp units */
+static double string_width (const vector<uint16_t> &glyphs, const Font *font) {
+ double width=0;
+ if (auto nfont = font_cast<const NativeFont*>(font)) {
+ for (auto glyph: glyphs)
+ width += nfont->hAdvance(Character(Character::INDEX, glyph));
+ }
+ return width;
+}
+
+
/** XDV extension: prints an array of characters where each character
* can take independent x and y coordinates.
* parameters: w[4] n[2] (dx,dy)[(4+4)n] glyphs[2n] */
@@ -602,11 +616,14 @@ void DVIReader::cmdXGlyphArray (int) {
vector<double> dx, dy;
vector<uint16_t> glyphs;
double width = putGlyphArray(false, dx, dy, glyphs);
- if (Font *font = FontManager::instance().getFont(_currFontNum))
- dviXGlyphArray(dx, dy, glyphs, *font);
- else
+ Font *font = FontManager::instance().getFont(_currFontNum);
+ if (!font)
throw DVIException("missing setfont prior to xglypharray");
- moveRight(width, MoveMode::SETCHAR);
+ dviXGlyphArray(dx, dy, glyphs, *font);
+ double diff = abs(string_width(glyphs, font) - width);
+ // if the given width differs from the actual width of the string,
+ // we must force a position change to prevent misalignments
+ moveRight(width, diff < 0.2 ? MoveMode::SETCHAR : MoveMode::CHANGEPOS);
}
@@ -617,11 +634,14 @@ void DVIReader::cmdXGlyphString (int) {
vector<double> dx, dy;
vector<uint16_t> glyphs;
double width = putGlyphArray(true, dx, dy, glyphs);
- if (Font *font = FontManager::instance().getFont(_currFontNum))
- dviXGlyphString(dx, glyphs, *font);
- else
+ Font *font = FontManager::instance().getFont(_currFontNum);
+ if (!font)
throw DVIException("missing setfont prior to xglyphstring");
- moveRight(width, MoveMode::SETCHAR);
+ dviXGlyphString(dx, glyphs, *font);
+ double diff = abs(string_width(glyphs, font) - width);
+ // if the given width differs from the actual width of the string,
+ // we must force a position change to prevent misalignments
+ moveRight(width, diff < 0.2 ? MoveMode::SETCHAR : MoveMode::CHANGEPOS);
}
@@ -639,11 +659,14 @@ void DVIReader::cmdXTextAndGlyphs (int) {
vector<double> x, y;
vector<uint16_t> glyphs;
double width = putGlyphArray(false, x, y, glyphs);
- if (Font *font = FontManager::instance().getFont(_currFontNum))
- dviXTextAndGlyphs(x, y, chars, glyphs, *font);
- else
+ Font *font = FontManager::instance().getFont(_currFontNum);
+ if (!font)
throw DVIException("missing setfont prior to xtextandglyphs");
- moveRight(width, MoveMode::SETCHAR);
+ dviXTextAndGlyphs(x, y, chars, glyphs, *font);
+ double diff = abs(string_width(glyphs, font) - width);
+ // if the given width differs from the actual width of the string,
+ // we must force a position change to prevent misalignments
+ moveRight(width, diff < 0.2 ? MoveMode::SETCHAR : MoveMode::CHANGEPOS);
}
diff --git a/dviware/dvisvgm/src/DVIReader.hpp b/dviware/dvisvgm/src/DVIReader.hpp
index f2daf5da8a..2e8958850f 100644
--- a/dviware/dvisvgm/src/DVIReader.hpp
+++ b/dviware/dvisvgm/src/DVIReader.hpp
@@ -2,7 +2,7 @@
** DVIReader.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/DVIToSVG.cpp b/dviware/dvisvgm/src/DVIToSVG.cpp
index 45261b99c0..f5501f33f6 100644
--- a/dviware/dvisvgm/src/DVIToSVG.cpp
+++ b/dviware/dvisvgm/src/DVIToSVG.cpp
@@ -2,7 +2,7 @@
** DVIToSVG.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -120,6 +120,7 @@ void DVIToSVG::convert (unsigned first, unsigned last, HashFunction *hashFunc) {
SVGOptimizer(_svg).execute();
embedFonts(_svg.rootNode());
bool success = _svg.write(_out.getPageStream(currentPageNumber(), numberOfPages(), hashTriple));
+ _out.finish();
string fname = path.shorterAbsoluteOrRelative();
if (fname.empty())
fname = "<stdout>";
@@ -350,9 +351,7 @@ void DVIToSVG::embedFonts (XMLElement *svgElement) {
if (!svgElement || !_actions) // no dvi actions => no chars written => no fonts to embed
return;
- const DVIToSVGActions *svgActions = static_cast<DVIToSVGActions*>(_actions.get());
- auto &usedCharsMap = svgActions->getUsedChars();
-
+ auto &usedCharsMap = FontManager::instance().getUsedChars();
collect_chars(usedCharsMap);
GlyphTracerMessages messages;
@@ -374,7 +373,7 @@ void DVIToSVG::embedFonts (XMLElement *svgElement) {
else
Message::wstream(true) << "can't embed font '" << font->name() << "'\n";
}
- _svg.appendFontStyles(svgActions->getUsedFonts());
+ _svg.appendFontStyles(FontManager::instance().getUsedFonts());
}
diff --git a/dviware/dvisvgm/src/DVIToSVG.hpp b/dviware/dvisvgm/src/DVIToSVG.hpp
index 0ac723019c..ada151cca0 100644
--- a/dviware/dvisvgm/src/DVIToSVG.hpp
+++ b/dviware/dvisvgm/src/DVIToSVG.hpp
@@ -2,7 +2,7 @@
** DVIToSVG.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/DVIToSVGActions.cpp b/dviware/dvisvgm/src/DVIToSVGActions.cpp
index 74e0f97aa5..1d173dfa8f 100644
--- a/dviware/dvisvgm/src/DVIToSVGActions.cpp
+++ b/dviware/dvisvgm/src/DVIToSVGActions.cpp
@@ -2,7 +2,7 @@
** DVIToSVGActions.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -33,8 +33,7 @@ using namespace std;
void DVIToSVGActions::reset() {
- _usedChars.clear();
- _usedFonts.clear();
+ FontManager::instance().resetUsedChars();
_bbox = BoundingBox();
_currentFontNum = -1;
_bgcolor = Color::TRANSPARENT;
@@ -93,10 +92,7 @@ void DVIToSVGActions::setChar (double x, double y, unsigned c, bool vertical, co
// record font names and chars. The various font sizes can be ignored here.
// For a given font object, Font::uniqueFont() returns the same unique font object for
// all fonts with the same name.
- _usedChars[SVGTree::USE_FONTS ? font.uniqueFont() : &font].insert(c);
-
- // However, we record all required fonts
- _usedFonts.insert(&font);
+ FontManager::instance().addUsedChar(font, c);
_svg.appendChar(c, x, y);
static string fontname;
@@ -216,10 +212,10 @@ void DVIToSVGActions::special (const string &spc, double dvi2bp, bool preprocess
* @param[in] c array with 10 components representing \\count0 ... \\count9. c[0] contains the
* current (printed) page number (may differ from page count) */
void DVIToSVGActions::beginPage (unsigned pageno, const vector<int32_t>&) {
- SpecialManager::instance().notifyBeginPage(pageno, *this);
_svg.newPage(++_pageCount);
_bbox = BoundingBox(); // clear bounding box
_boxes.clear();
+ SpecialManager::instance().notifyBeginPage(pageno, *this);
}
diff --git a/dviware/dvisvgm/src/DVIToSVGActions.hpp b/dviware/dvisvgm/src/DVIToSVGActions.hpp
index 651e71f5d3..138670ddbc 100644
--- a/dviware/dvisvgm/src/DVIToSVGActions.hpp
+++ b/dviware/dvisvgm/src/DVIToSVGActions.hpp
@@ -2,7 +2,7 @@
** DVIToSVGActions.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -37,8 +37,6 @@ class Font;
class XMLNode;
class DVIToSVGActions : public DVIActions, public SpecialActions {
- using CharMap = std::unordered_map<const Font*, std::set<int>>;
- using FontSet = std::unordered_set<const Font*>;
using BoxMap = std::unordered_map<std::string,BoundingBox>;
public:
@@ -80,8 +78,6 @@ class DVIToSVGActions : public DVIActions, public SpecialActions {
void embed (const DPair &p, double r=0) override;
FilePath getSVGFilePath (unsigned pageno) const override;
std::string getBBoxFormatString () const override;
- CharMap& getUsedChars () const {return _usedChars;}
- const FontSet& getUsedFonts () const {return _usedFonts;}
void setDVIReader (BasicDVIReader &r) {_dvireader = &r;}
private:
@@ -90,8 +86,6 @@ class DVIToSVGActions : public DVIActions, public SpecialActions {
BoundingBox _bbox;
int _pageCount=0;
int _currentFontNum=-1;
- mutable CharMap _usedChars;
- FontSet _usedFonts;
Color _bgcolor=Color::TRANSPARENT;
BoxMap _boxes;
bool _outputLocked=false;
diff --git a/dviware/dvisvgm/src/Directory.cpp b/dviware/dvisvgm/src/Directory.cpp
index 87c31dbf08..4f89c1c371 100644
--- a/dviware/dvisvgm/src/Directory.cpp
+++ b/dviware/dvisvgm/src/Directory.cpp
@@ -2,7 +2,7 @@
** Directory.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Directory.hpp b/dviware/dvisvgm/src/Directory.hpp
index 7a90c87618..257a7c4ea2 100644
--- a/dviware/dvisvgm/src/Directory.hpp
+++ b/dviware/dvisvgm/src/Directory.hpp
@@ -2,7 +2,7 @@
** Directory.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/DvisvgmSpecialHandler.cpp b/dviware/dvisvgm/src/DvisvgmSpecialHandler.cpp
index 1acef64f0e..abeb52be36 100644
--- a/dviware/dvisvgm/src/DvisvgmSpecialHandler.cpp
+++ b/dviware/dvisvgm/src/DvisvgmSpecialHandler.cpp
@@ -2,7 +2,7 @@
** DvisvgmSpecialHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -23,6 +23,7 @@
#include <utility>
#include "Calculator.hpp"
#include "DvisvgmSpecialHandler.hpp"
+#include "GraphicsPathParser.hpp"
#include "InputBuffer.hpp"
#include "InputReader.hpp"
#include "Length.hpp"
@@ -35,10 +36,60 @@
using namespace std;
-DvisvgmSpecialHandler::DvisvgmSpecialHandler () :
- _currentMacro(_macros.end()),
- _defsParser(&SVGTree::appendToDefs, &SVGTree::pushDefsContext, &SVGTree::popDefsContext),
- _pageParser(&SVGTree::appendToPage, &SVGTree::pushPageContext, &SVGTree::popPageContext)
+void SVGParser::assign (SVGTree &svg, Append append, PushContext pushContext, PopContext popContext) {
+ _svg = &svg;
+ _append = append;
+ _pushContext = pushContext;
+ _popContext = popContext;
+ setRootElement(nullptr);
+}
+
+
+XMLElement* SVGParser::openElement (const std::string &tag) {
+ XMLElement *elem = XMLParser::openElement(tag);
+ if (elem->name() == "path" || elem->name() == "svg:path") {
+ if (const char *d = elem->getAttributeValue("d")) {
+ try {
+ // parse and reformat path definition
+ auto path = GraphicsPathParser<double>().parse(d);
+ ostringstream oss;
+ path.writeSVG(oss, SVGTree::RELATIVE_PATH_CMDS);
+ elem->addAttribute("d", oss.str());
+ }
+ catch (const GraphicsPathParserException &e) {
+ throw XMLParserException(string("error in path data: ")+e.what());
+ }
+ }
+ }
+ return elem;
+}
+
+
+void SVGParser::appendNode (unique_ptr<XMLNode> node) {
+ (_svg->*_append)(std::move(node));
+}
+
+
+XMLElement* SVGParser::finishPushContext (unique_ptr<XMLElement> elem) {
+ unique_ptr<SVGElement> svgElement{static_cast<SVGElement*>(elem.release())};
+ XMLElement *elemPtr = svgElement.get();
+ (_svg->*_pushContext)(std::move(svgElement));
+ return elemPtr;
+}
+
+
+void SVGParser::finishPopContext () {
+ (_svg->*_popContext)();
+}
+
+
+XMLElement* SVGParser::createElementPtr (std::string name) const {
+ return new SVGElement(std::move(name));
+}
+
+///////////////////////////////////////////////////////////////////////////
+
+DvisvgmSpecialHandler::DvisvgmSpecialHandler () : _currentMacro(_macros.end())
{
}
@@ -232,7 +283,7 @@ void DvisvgmSpecialHandler::processRaw (InputReader &ir, SpecialActions &actions
if (!xml.empty()) {
evaluate_expressions(xml, actions);
expand_constants(xml, actions);
- _pageParser.parse(xml, actions.svgTree());
+ _pageParser.parse(std::move(xml));
}
}
}
@@ -244,7 +295,7 @@ void DvisvgmSpecialHandler::processRawDef (InputReader &ir, SpecialActions &acti
if (!xml.empty()) {
evaluate_expressions(xml, actions);
expand_constants(xml, actions);
- _defsParser.parse(xml, actions.svgTree());
+ _defsParser.parse(std::move(xml));
}
}
}
@@ -276,9 +327,9 @@ void DvisvgmSpecialHandler::processRawPut (InputReader &ir, SpecialActions &acti
if ((type == 'P' || type == 'D') && !def.empty()) {
expand_constants(def, actions);
if (type == 'P')
- _pageParser.parse(def, actions.svgTree());
+ _pageParser.parse(std::move(def));
else { // type == 'D'
- _defsParser.parse(def, actions.svgTree());
+ _defsParser.parse(std::move(def));
type = 'L'; // locked
}
}
@@ -413,9 +464,16 @@ void DvisvgmSpecialHandler::dviPreprocessingFinished () {
}
+void DvisvgmSpecialHandler::dviBeginPage (unsigned, SpecialActions &actions) {
+ SVGTree &svg = actions.svgTree();
+ _defsParser.assign(svg, &SVGTree::appendToDefs, &SVGTree::pushDefsContext, &SVGTree::popDefsContext);
+ _pageParser.assign(svg, &SVGTree::appendToPage, &SVGTree::pushPageContext, &SVGTree::popPageContext);
+}
+
+
void DvisvgmSpecialHandler::dviEndPage (unsigned, SpecialActions &actions) {
- _defsParser.finish(actions.svgTree());
- _pageParser.finish(actions.svgTree());
+ _defsParser.finish();
+ _pageParser.finish();
actions.bbox().unlock();
for (auto &strvecpair : _macros) {
StringVector &vec = strvecpair.second;
diff --git a/dviware/dvisvgm/src/DvisvgmSpecialHandler.hpp b/dviware/dvisvgm/src/DvisvgmSpecialHandler.hpp
index 7d1ad20cfe..4c9c84b078 100644
--- a/dviware/dvisvgm/src/DvisvgmSpecialHandler.hpp
+++ b/dviware/dvisvgm/src/DvisvgmSpecialHandler.hpp
@@ -2,7 +2,7 @@
** DvisvgmSpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -43,6 +43,30 @@ class XMLNode;
#pragma pointers_to_members(full_generality, single_inheritance)
#endif
+class SVGParser : public XMLParser {
+ using Append = void (SVGTree::*)(std::unique_ptr<XMLNode> node);
+ using PushContext = void (SVGTree::*)(std::unique_ptr<SVGElement> elem);
+ using PopContext = void (SVGTree::*)();
+
+ public:
+ SVGParser () : XMLParser() {}
+ void assign (SVGTree &svg, Append append, PushContext pushContext, PopContext popContext);
+
+ protected:
+ XMLElement* openElement (const std::string &tag) override;
+ void appendNode (std::unique_ptr<XMLNode> node) override;
+ XMLElement* finishPushContext (std::unique_ptr<XMLElement> elem) override;
+ void finishPopContext () override;
+ XMLElement* createElementPtr (std::string name) const override;
+
+ private:
+ SVGTree *_svg=nullptr;
+ Append _append=nullptr;
+ PushContext _pushContext=nullptr;
+ PopContext _popContext=nullptr;
+};
+
+
class DvisvgmSpecialHandler : public SpecialHandler {
using StringVector = std::vector<std::string>;
using MacroMap = std::unordered_map<std::string, StringVector>;
@@ -69,14 +93,15 @@ class DvisvgmSpecialHandler : public SpecialHandler {
void processBBox (InputReader &ir, SpecialActions &actions);
void processImg (InputReader &ir, SpecialActions &actions);
void dviPreprocessingFinished () override;
+ void dviBeginPage (unsigned pageno, SpecialActions &actions) override;
void dviEndPage (unsigned pageno, SpecialActions &actions) override;
private:
MacroMap _macros;
MacroMap::iterator _currentMacro;
int _nestingLevel=0; ///< nesting depth of rawset specials
- XMLParser _defsParser; ///< parses XML added by 'rawdef' specials
- XMLParser _pageParser; ///< parses XML added by 'raw' specials
+ SVGParser _defsParser; ///< parses XML added by 'rawdef' specials
+ SVGParser _pageParser; ///< parses XML added by 'raw' specials
};
#endif
diff --git a/dviware/dvisvgm/src/EPSFile.cpp b/dviware/dvisvgm/src/EPSFile.cpp
index 021598b35d..982c72faca 100644
--- a/dviware/dvisvgm/src/EPSFile.cpp
+++ b/dviware/dvisvgm/src/EPSFile.cpp
@@ -2,7 +2,7 @@
** EPSFile.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/EPSFile.hpp b/dviware/dvisvgm/src/EPSFile.hpp
index 6523889df0..2aa74cb6ba 100644
--- a/dviware/dvisvgm/src/EPSFile.hpp
+++ b/dviware/dvisvgm/src/EPSFile.hpp
@@ -2,7 +2,7 @@
** EPSFile.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/EPSToSVG.hpp b/dviware/dvisvgm/src/EPSToSVG.hpp
index df2b635874..f1e550b135 100644
--- a/dviware/dvisvgm/src/EPSToSVG.hpp
+++ b/dviware/dvisvgm/src/EPSToSVG.hpp
@@ -2,7 +2,7 @@
** EPSToSVG.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/EllipticalArc.cpp b/dviware/dvisvgm/src/EllipticalArc.cpp
index 6de120b0e6..13b6b2d596 100644
--- a/dviware/dvisvgm/src/EllipticalArc.cpp
+++ b/dviware/dvisvgm/src/EllipticalArc.cpp
@@ -2,7 +2,7 @@
** EllipticalArc.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -156,7 +156,7 @@ void EllipticalArc::transform (const Matrix &matrix) {
/** Approximates an arc of the unit circle by a single cubic Bézier curve.
* @param[in] phi start angle of the arc in radians
* @param[in] delta length of the arc */
-static Bezier approx_unit_arc (double phi, double delta) {
+static CubicBezier approx_unit_arc (double phi, double delta) {
double c = 0.551915024494; // see http://spencermortensen.com/articles/bezier-circle
if (abs(delta + math::HALF_PI) < 1e-7)
c = -c;
@@ -166,13 +166,13 @@ static Bezier approx_unit_arc (double phi, double delta) {
DPair p4(cos(phi+delta), sin(phi+delta));
DPair p2(p1.x()-c*p1.y(), p1.y()+c*p1.x());
DPair p3(p4.x()+c*p4.y(), p4.y()-c*p4.x());
- return Bezier(p1, p2, p3, p4);
+ return CubicBezier(p1, p2, p3, p4);
}
/** Approximates the arc by a sequence of cubic Bézier curves. */
-vector<Bezier> EllipticalArc::approximate () const {
- vector<Bezier> beziers;
+vector<CubicBezier> EllipticalArc::approximate () const {
+ vector<CubicBezier> beziers;
if (_startPoint != _endPoint) {
if (isStraightLine()) {
DPair dir = (_endPoint - _startPoint);
diff --git a/dviware/dvisvgm/src/EllipticalArc.hpp b/dviware/dvisvgm/src/EllipticalArc.hpp
index 0c32e58316..841e4903ed 100644
--- a/dviware/dvisvgm/src/EllipticalArc.hpp
+++ b/dviware/dvisvgm/src/EllipticalArc.hpp
@@ -2,7 +2,7 @@
** EllipticalArc.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -47,7 +47,7 @@ class EllipticalArc {
bool isStraightLine () const {return _rx < 1e-7 || _ry < 1e-7;}
BoundingBox getBBox () const;
void transform (const Matrix &matrix);
- std::vector<Bezier> approximate () const;
+ std::vector<CubicBezier> approximate () const;
private:
double _rx, _ry; ///< length of semi-major and semi-minor axes
diff --git a/dviware/dvisvgm/src/EmSpecialHandler.cpp b/dviware/dvisvgm/src/EmSpecialHandler.cpp
index 0627e283ec..e116227ba9 100644
--- a/dviware/dvisvgm/src/EmSpecialHandler.cpp
+++ b/dviware/dvisvgm/src/EmSpecialHandler.cpp
@@ -2,7 +2,7 @@
** EmSpecialHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/EmSpecialHandler.hpp b/dviware/dvisvgm/src/EmSpecialHandler.hpp
index 704fa0a19a..aee0219c12 100644
--- a/dviware/dvisvgm/src/EmSpecialHandler.hpp
+++ b/dviware/dvisvgm/src/EmSpecialHandler.hpp
@@ -2,7 +2,7 @@
** EmSpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/EncFile.cpp b/dviware/dvisvgm/src/EncFile.cpp
index 4d39f0886b..af47ead6ea 100644
--- a/dviware/dvisvgm/src/EncFile.cpp
+++ b/dviware/dvisvgm/src/EncFile.cpp
@@ -2,7 +2,7 @@
** EncFile.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/EncFile.hpp b/dviware/dvisvgm/src/EncFile.hpp
index f844dfa34e..7aceb65b05 100644
--- a/dviware/dvisvgm/src/EncFile.hpp
+++ b/dviware/dvisvgm/src/EncFile.hpp
@@ -2,7 +2,7 @@
** EncFile.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FileFinder.cpp b/dviware/dvisvgm/src/FileFinder.cpp
index c95ab1023f..369ef33f49 100644
--- a/dviware/dvisvgm/src/FileFinder.cpp
+++ b/dviware/dvisvgm/src/FileFinder.cpp
@@ -2,7 +2,7 @@
** FileFinder.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FileFinder.hpp b/dviware/dvisvgm/src/FileFinder.hpp
index 904c31c861..d0d291e9ba 100644
--- a/dviware/dvisvgm/src/FileFinder.hpp
+++ b/dviware/dvisvgm/src/FileFinder.hpp
@@ -2,7 +2,7 @@
** FileFinder.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FilePath.cpp b/dviware/dvisvgm/src/FilePath.cpp
index 3c89c2c3ea..477c9d08ee 100644
--- a/dviware/dvisvgm/src/FilePath.cpp
+++ b/dviware/dvisvgm/src/FilePath.cpp
@@ -2,7 +2,7 @@
** FilePath.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FilePath.hpp b/dviware/dvisvgm/src/FilePath.hpp
index 31f03e9242..8d705f60fe 100644
--- a/dviware/dvisvgm/src/FilePath.hpp
+++ b/dviware/dvisvgm/src/FilePath.hpp
@@ -2,7 +2,7 @@
** FilePath.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FileSystem.cpp b/dviware/dvisvgm/src/FileSystem.cpp
index 4e8e43ddd7..e4aefddc05 100644
--- a/dviware/dvisvgm/src/FileSystem.cpp
+++ b/dviware/dvisvgm/src/FileSystem.cpp
@@ -2,7 +2,7 @@
** FileSystem.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -135,6 +135,14 @@ string FileSystem::ensureForwardSlashes (string path) {
}
+string FileSystem::ensureSystemSlashes (string path) {
+#ifdef _WIN32
+ std::replace(path.begin(), path.end(), '/', PATHSEP);
+#endif
+ return path;
+}
+
+
/** Returns the absolute path of the current working directory. */
string FileSystem::getcwd () {
char buf[1024];
@@ -207,12 +215,13 @@ const char* FileSystem::userdir () {
}
-/** Returns the path of the temporary folder. */
-string FileSystem::tmpdir () {
+/** Returns the path of the temporary folder.
+ * @param[in] inpace if true, don't create a uniquely named subfolder */
+string FileSystem::tmpdir (bool inplace) {
if (_tmpdir.path().empty()) {
string basedir;
if (!TMPDIR.empty())
- basedir = TMPDIR;
+ basedir = ensureForwardSlashes(TMPDIR);
else {
#ifdef _WIN32
char buf[MAX_PATH];
@@ -226,10 +235,14 @@ string FileSystem::tmpdir () {
else
basedir = "/tmp";
#endif
- if (basedir.back() == '/')
- basedir.pop_back();
}
- _tmpdir = TemporaryDirectory(basedir, PROGRAM_NAME);
+ if (basedir.length() > 2 && string(basedir.end()-2, basedir.end()) == "//") {
+ inplace = true;
+ basedir.pop_back();
+ }
+ if (basedir.front() != '/' && basedir.back() == '/')
+ basedir.pop_back();
+ _tmpdir = TemporaryDirectory(basedir, PROGRAM_NAME, inplace);
}
return _tmpdir.path();
}
@@ -380,26 +393,34 @@ int FileSystem::collect (const std::string &dirname, vector<string> &entries) {
}
-/** Creates a temporary directory in a given folder.
+/** Creates a temporary directory in a given folder or treats the given folder as temporary directory.
* @param[in] folder folder path in which the directory is to be created
- * @param[in] prefix initial string of the directory name */
-FileSystem::TemporaryDirectory::TemporaryDirectory (const std::string &folder, string prefix) {
- using namespace std::chrono;
- auto now = system_clock::now().time_since_epoch();
- auto now_ms = duration_cast<milliseconds>(now).count();
- auto hash = XXH64HashFunction(to_string(now_ms)).digestValue();
- if (!prefix.empty() && prefix.back() != '-')
- prefix += "-";
- for (int i=0; i < 10 && _path.empty(); i++) {
- hash++;
- stringstream oss;
- oss << folder << '/' << prefix << hex << hash;
- if (exists(oss.str()))
- continue;
- if (s_mkdir(oss.str()))
- _path = oss.str() + "/";
- else
- break;
+ * @param[in] prefix initial string of the directory name
+ * @param[in] inplace if true, 'folder' is treated as temporary directory and no subfolder is created */
+FileSystem::TemporaryDirectory::TemporaryDirectory (const std::string &folder, string prefix, bool inplace) {
+ if (inplace) {
+ _path = folder;
+ if (!_path.empty() && _path.back() != '/')
+ _path.push_back('/');
+ }
+ else {
+ using namespace std::chrono;
+ auto now = system_clock::now().time_since_epoch();
+ auto now_ms = duration_cast<milliseconds>(now).count();
+ auto hash = XXH64HashFunction(to_string(now_ms)).digestValue();
+ if (!prefix.empty() && prefix.back() != '-')
+ prefix.push_back('-');
+ for (int i = 0; i < 10 && _path.empty(); i++) {
+ hash++;
+ stringstream oss;
+ oss << folder << '/' << prefix << hex << hash;
+ if (exists(oss.str()))
+ continue;
+ if (s_mkdir(oss.str()))
+ _path = oss.str() + "/";
+ else
+ break;
+ }
}
}
diff --git a/dviware/dvisvgm/src/FileSystem.hpp b/dviware/dvisvgm/src/FileSystem.hpp
index 86f6dbf201..376ab85927 100644
--- a/dviware/dvisvgm/src/FileSystem.hpp
+++ b/dviware/dvisvgm/src/FileSystem.hpp
@@ -2,7 +2,7 @@
** FileSystem.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -28,7 +28,7 @@ class FileSystem {
class TemporaryDirectory {
friend class FileSystem;
public:
- TemporaryDirectory (const std::string &folder, std::string prefix);
+ TemporaryDirectory (const std::string &folder, std::string prefix, bool inplace=false);
TemporaryDirectory (TemporaryDirectory &&tmpdir) =default;
~TemporaryDirectory ();
TemporaryDirectory& operator = (TemporaryDirectory &&tmpdir) =default;
@@ -47,11 +47,12 @@ class FileSystem {
static bool copy (const std::string &src, const std::string &dest, bool remove_src=false);
static uint64_t filesize (const std::string &fname);
static std::string ensureForwardSlashes (std::string path);
+ static std::string ensureSystemSlashes (std::string path);
static std::string getcwd ();
#ifdef _WIN32
static std::string getcwd (char drive);
#endif
- static std::string tmpdir ();
+ static std::string tmpdir (bool inplace=false);
static bool chdir (const std::string &dir);
static bool exists (const std::string &fname);
static bool mkdir (const std::string &dirname);
diff --git a/dviware/dvisvgm/src/FixWord.hpp b/dviware/dvisvgm/src/FixWord.hpp
index fcef743748..6e1214ce20 100644
--- a/dviware/dvisvgm/src/FixWord.hpp
+++ b/dviware/dvisvgm/src/FixWord.hpp
@@ -2,7 +2,7 @@
** FixWord.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Font.cpp b/dviware/dvisvgm/src/Font.cpp
index 2fa4ce5be9..c60b162828 100644
--- a/dviware/dvisvgm/src/Font.cpp
+++ b/dviware/dvisvgm/src/Font.cpp
@@ -2,7 +2,7 @@
** Font.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -18,8 +18,8 @@
** along with this program; if not, see <http://www.gnu.org/licenses/>. **
*************************************************************************/
+#include <algorithm>
#include <cstdlib>
-#include <fstream>
#include <set>
#include <sstream>
#include "CMap.hpp"
@@ -233,7 +233,8 @@ int PhysicalFont::unitsPerEm() const {
}
-int PhysicalFont::hAdvance () const {
+/** Returns the average horizontal advance width in font units. */
+int PhysicalFont::hAverageAdvance () const {
if (type() == Type::MF)
return 0;
FontEngine::instance().setFont(*this);
@@ -241,6 +242,7 @@ int PhysicalFont::hAdvance () const {
}
+/** Returns the horizontal advance width of a character in font units. */
double PhysicalFont::hAdvance (int c) const {
if (type() == Type::MF)
return unitsPerEm()*charWidth(c)/designSize();
@@ -252,6 +254,7 @@ double PhysicalFont::hAdvance (int c) const {
}
+/** Returns the vertical advance width of a character in font units. */
double PhysicalFont::vAdvance (int c) const {
if (type() == Type::MF)
return unitsPerEm()*charWidth(c)/designSize();
@@ -279,7 +282,8 @@ double PhysicalFont::scaledAscent() const {
}
-/** Returns the unscaled ascender of the font in design units. */
+/** Returns the unscaled ascender of the font in design units.
+ * Positive values denote an extension above the baseline.'*/
int PhysicalFont::ascent () const {
if (type() == Type::MF)
return getMetrics() ? getMetrics()->getAscent()*unitsPerEm()/getMetrics()->getQuad() : 0;
@@ -288,7 +292,8 @@ int PhysicalFont::ascent () const {
}
-/** Returns the unscaled descender of the font in design units. */
+/** Returns the unscaled descender of the font in design units.
+ * Positive values denote an extension below the baseline. */
int PhysicalFont::descent () const {
if (type() == Type::MF)
return getMetrics() ? getMetrics()->getDescent()*unitsPerEm()/getMetrics()->getQuad() : 0;
@@ -315,6 +320,13 @@ std::string PhysicalFont::styleName () const {
}
+int PhysicalFont::charIndexByName(const string &charname) const {
+ if (charname.empty())
+ return 0;
+ FontEngine::instance().setFont(*this);
+ return FontEngine::instance().getCharIndexByGlyphName(charname.c_str());
+}
+
/** Extracts the glyph outlines of a given character.
* @param[in] c character code of requested glyph
@@ -596,7 +608,7 @@ PhysicalFont::Type NativeFont::type () const {
return PhysicalFont::Type::OTF;
if (ext == "ttf")
return PhysicalFont::Type::TTF;
- if (ext == "pfb")
+ if (ext == "pfb" || ext == "pfa")
return PhysicalFont::Type::PFB;
}
}
@@ -607,7 +619,7 @@ PhysicalFont::Type NativeFont::type () const {
double NativeFont::charWidth (int c) const {
FontEngine::instance().setFont(*this);
int upem = FontEngine::instance().getUnitsPerEM();
- return upem ? (scaledSize()*FontEngine::instance().getAdvance(c)/upem*_style.extend) : 0;
+ return upem ? (scaledSize()*FontEngine::instance().getHAdvance(decodeChar(c))/upem*_style.extend) : 0;
}
@@ -621,14 +633,37 @@ double NativeFont::italicCorr(int c) const {
double NativeFont::charHeight (int c) const {
FontEngine::instance().setFont(*this);
int upem = FontEngine::instance().getUnitsPerEM();
- return upem ? (scaledSize()*FontEngine::instance().getHeight(Character(Character::INDEX, c))/upem) : 0;
+ return upem ? (scaledSize()*FontEngine::instance().getHeight(decodeChar(c))/upem) : 0;
}
double NativeFont::charDepth (int c) const {
FontEngine::instance().setFont(*this);
int upem = FontEngine::instance().getUnitsPerEM();
- return upem ? (scaledSize()*FontEngine::instance().getDepth(Character(Character::INDEX, c))/upem) : 0;
+ return upem ? (scaledSize()*FontEngine::instance().getDepth(decodeChar(c))/upem) : 0;
+}
+
+
+double NativeFont::hAdvance (Character c) const {
+ FontEngine::instance().setFont(*this);
+ int upem = FontEngine::instance().getUnitsPerEM();
+ return upem ? (scaledSize()*FontEngine::instance().getHAdvance(c)/upem) : 0;
+}
+
+
+double NativeFont::vAdvance (Character c) const {
+ FontEngine::instance().setFont(*this);
+ int upem = FontEngine::instance().getUnitsPerEM();
+ return upem ? (scaledSize()*FontEngine::instance().getVAdvance(c)/upem) : 0;
+}
+
+//////////////////////////////////////////////////////////////////////////////
+
+NativeFontImpl::NativeFontImpl (string fname, string fontname, double ptsize)
+ : NativeFont(ptsize, FontStyle(), Color::BLACK), _path(std::move(fname)), _name(std::move(fontname))
+{
+ // plus characters (as appended to subset prefixes) are not allowed in font/family names
+ std::replace(_name.begin(), _name.end(), '+', '-');
}
@@ -644,13 +679,25 @@ bool NativeFontImpl::findAndAssignBaseFontMap () {
Character NativeFontImpl::decodeChar (uint32_t c) const {
- return Character(Character::INDEX, c);
+ return {Character::INDEX, c};
}
uint32_t NativeFontImpl::unicode (uint32_t c) const {
uint32_t ucode = _toUnicodeMap.valueAt(c);
- return Unicode::charToCodepoint(ucode);
+ return Unicode::charToCodepoint(ucode, true);
+}
+
+
+void NativeFontImpl::mapCharToUnicode (uint32_t c, uint32_t codepoint) {
+ _toUnicodeMap.addRange(c, c, codepoint);
+}
+
+
+bool NativeFontImpl::verticalLayout() const {
+ FontEngine &fe = FontEngine::instance();
+ fe.setFont(*this);
+ return fe.hasVerticalMetrics();
}
//////////////////////////////////////////////////////////////////////////////
diff --git a/dviware/dvisvgm/src/Font.hpp b/dviware/dvisvgm/src/Font.hpp
index 23c99e3bc5..74f1b510cb 100644
--- a/dviware/dvisvgm/src/Font.hpp
+++ b/dviware/dvisvgm/src/Font.hpp
@@ -2,7 +2,7 @@
** Font.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -50,7 +50,7 @@ struct GlyphMetrics {
double wl, wr, h, d;
};
-class FontVisitor;
+struct FontVisitor;
/** Abstract base for all font classes. */
class Font {
@@ -124,7 +124,7 @@ class PhysicalFont : public virtual Font {
virtual bool getExactGlyphBox (int c, BoundingBox &bbox, GFGlyphTracer::Callback *cb) const;
virtual bool getExactGlyphBox (int c, GlyphMetrics &metrics, bool vertical, GFGlyphTracer::Callback *cb) const;
virtual bool isCIDFont () const;
- virtual int hAdvance () const;
+ virtual int hAverageAdvance () const;
virtual std::string familyName () const;
virtual std::string styleName () const;
virtual double hAdvance (int c) const;
@@ -139,6 +139,7 @@ class PhysicalFont : public virtual Font {
virtual CharMapID getCharMapID () const =0;
virtual void setCharMapID (const CharMapID &id) {}
virtual Character decodeChar (uint32_t c) const;
+ virtual int charIndexByName (const std::string &charname) const;
const char* path () const override;
void visit (FontVisitor &visitor) override;
void visit (FontVisitor &visitor) const override;
@@ -270,16 +271,20 @@ class NativeFont : public PhysicalFont {
std::unique_ptr<Font> clone (double ds, double sc) const override =0;
std::string name () const override;
Type type () const override;
- double designSize () const override {return _ptsize;}
- double scaledSize () const override {return _ptsize;}
+ const NativeFont* uniqueFont () const override {return this;}
+ double designSize () const override {return _ptsize;}
+ double scaledSize () const override {return _ptsize;}
double charWidth (int c) const override;
double charDepth (int c) const override;
double charHeight (int c) const override;
double italicCorr (int c) const override;
+ virtual double hAdvance (Character c) const;
+ virtual double vAdvance (Character c) const;
const FontMetrics* getMetrics () const override {return nullptr;}
const FontStyle* style () const override {return &_style;}
Color color () const override {return _color;}
const FontMap::Entry* fontMapEntry () const override {return nullptr;}
+ virtual void mapCharToUnicode (uint32_t c, uint32_t codepoint) =0;
static std::string uniqueName (const std::string &path, const FontStyle &style);
void visit (FontVisitor &visitor) override;
void visit (FontVisitor &visitor) const override;
@@ -305,12 +310,18 @@ class NativeFontProxy : public NativeFont {
return std::unique_ptr<NativeFontProxy>(new NativeFontProxy(this , sc, *style(), color()));
}
- const Font* uniqueFont () const override {return _nfont;}
+ const NativeFont* uniqueFont () const override {return _nfont;}
const char* path () const override {return _nfont->path();}
int fontIndex () const override {return _nfont->fontIndex();}
Character decodeChar (uint32_t c) const override {return _nfont->decodeChar(c);}
uint32_t unicode (uint32_t c) const override {return _nfont->unicode(c);}
CharMapID getCharMapID () const override {return _nfont->getCharMapID();}
+ bool verticalLayout() const override {return _nfont->verticalLayout();}
+ std::string name () const override {return _nfont->name();}
+
+ void mapCharToUnicode (uint32_t c, uint32_t codepoint) override {
+ const_cast<NativeFont*>(_nfont)->mapCharToUnicode(c, codepoint);
+ }
protected:
NativeFontProxy (const NativeFont *nfont, double ptsize, const FontStyle &style, Color color)
@@ -326,6 +337,8 @@ class NativeFontImpl : public NativeFont {
NativeFontImpl (std::string fname, int fontIndex, double ptsize, const FontStyle &style, Color color)
: NativeFont(ptsize, style, color), _path(std::move(fname)), _fontIndex(fontIndex) {}
+ NativeFontImpl (std::string fname, std::string fontname, double ptsize);
+
std::unique_ptr<NativeFont> clone (double ptsize, const FontStyle &style, Color color) const override {
return std::unique_ptr<NativeFontProxy>(new NativeFontProxy(this, ptsize, style, color));
}
@@ -334,18 +347,20 @@ class NativeFontImpl : public NativeFont {
return std::unique_ptr<NativeFontProxy>(new NativeFontProxy(this , sc, *style(), color()));
}
- const Font* uniqueFont () const override {return this;}
const char* path () const override {return _path.c_str();}
- int fontIndex() const override {return _fontIndex;}
- std::string fontFamily () const;
+ int fontIndex () const override {return _fontIndex;}
+ std::string name () const override {return _name.empty() ? NativeFont::name() : _name;}
bool findAndAssignBaseFontMap () override;
CharMapID getCharMapID () const override {return CharMapID::NONE;}
Character decodeChar (uint32_t c) const override;
uint32_t unicode (uint32_t c) const override;
+ bool verticalLayout() const override;
+ void mapCharToUnicode (uint32_t c, uint32_t codepoint) override;
private:
std::string _path;
- int _fontIndex;
+ std::string _name;
+ int _fontIndex = 0;
ToUnicodeMap _toUnicodeMap; ///< maps from char indexes to unicode points
};
diff --git a/dviware/dvisvgm/src/FontCache.cpp b/dviware/dvisvgm/src/FontCache.cpp
index 44b4de521e..95155dc366 100644
--- a/dviware/dvisvgm/src/FontCache.cpp
+++ b/dviware/dvisvgm/src/FontCache.cpp
@@ -2,7 +2,7 @@
** FontCache.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FontCache.hpp b/dviware/dvisvgm/src/FontCache.hpp
index 01333d05d6..f823106ce2 100644
--- a/dviware/dvisvgm/src/FontCache.hpp
+++ b/dviware/dvisvgm/src/FontCache.hpp
@@ -2,7 +2,7 @@
** FontCache.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FontEncoding.cpp b/dviware/dvisvgm/src/FontEncoding.cpp
index 9ba9dcd488..d5df7cc33f 100644
--- a/dviware/dvisvgm/src/FontEncoding.cpp
+++ b/dviware/dvisvgm/src/FontEncoding.cpp
@@ -2,7 +2,7 @@
** FontEncoding.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FontEncoding.hpp b/dviware/dvisvgm/src/FontEncoding.hpp
index b0425f47a6..7fe441ed37 100644
--- a/dviware/dvisvgm/src/FontEncoding.hpp
+++ b/dviware/dvisvgm/src/FontEncoding.hpp
@@ -2,7 +2,7 @@
** FontEncoding.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FontEngine.cpp b/dviware/dvisvgm/src/FontEngine.cpp
index 630570046f..ca942a0fb9 100644
--- a/dviware/dvisvgm/src/FontEngine.cpp
+++ b/dviware/dvisvgm/src/FontEngine.cpp
@@ -2,7 +2,7 @@
** FontEngine.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -29,6 +29,7 @@
#include "Font.hpp"
#include "FontEngine.hpp"
#include "FontStyle.hpp"
+#include "fonts/Base14Fonts.hpp"
#include "Message.hpp"
#include "utility.hpp"
@@ -88,7 +89,19 @@ string FontEngine::version () {
bool FontEngine::setFont (const string &fname, int fontindex, const CharMapID &charMapID) {
if (_currentFace && FT_Done_Face(_currentFace))
Message::estream(true) << "failed to release font\n";
- if (FT_New_Face(_library, fname.c_str(), fontindex, &_currentFace)) {
+ if (fname.size() <= 6 || fname.substr(0, 6) == "sys://") {
+ if (const MemoryFontData *data = find_base14_font(fname.substr(6))) {
+ FT_Open_Args args;
+ args.flags = FT_OPEN_MEMORY;
+ args.memory_base = reinterpret_cast<const FT_Byte*>(data->data);
+ args.memory_size = FT_Long(data->size);
+ if (FT_Open_Face(_library, &args, fontindex, &_currentFace)) {
+ Message::estream(true) << "can't read memory font " << fname << '\n';
+ return false;
+ }
+ }
+ }
+ else if (FT_New_Face(_library, fname.c_str(), fontindex, &_currentFace)) {
Message::estream(true) << "can't read font file " << fname << '\n';
return false;
}
@@ -115,16 +128,24 @@ bool FontEngine::setFont (const Font &font) {
bool FontEngine::isCIDFont() const {
FT_Bool cid_keyed;
- return FT_Get_CID_Is_Internally_CID_Keyed(_currentFace, &cid_keyed) == 0 && cid_keyed;
+ return _currentFace && FT_Get_CID_Is_Internally_CID_Keyed(_currentFace, &cid_keyed) == 0 && cid_keyed;
+}
+
+
+/** Returns true if the current font contains vertical layout data. */
+bool FontEngine::hasVerticalMetrics () const {
+ return _currentFace && FT_HAS_VERTICAL(_currentFace);
}
bool FontEngine::setCharMap (const CharMapID &charMapID) {
- for (int i=0; i < _currentFace->num_charmaps; i++) {
- FT_CharMap ft_cmap = _currentFace->charmaps[i];
- if (ft_cmap->platform_id == charMapID.platform_id && ft_cmap->encoding_id == charMapID.encoding_id) {
- FT_Set_Charmap(_currentFace, ft_cmap);
- return true;
+ if (_currentFace) {
+ for (int i = 0; i < _currentFace->num_charmaps; i++) {
+ FT_CharMap ft_cmap = _currentFace->charmaps[i];
+ if (ft_cmap->platform_id == charMapID.platform_id && ft_cmap->encoding_id == charMapID.encoding_id) {
+ FT_Set_Charmap(_currentFace, ft_cmap);
+ return true;
+ }
}
}
return false;
@@ -149,22 +170,24 @@ void FontEngine::buildGidToCharCodeMap (RangeMap &charmap) {
/** Creates a charmap that maps from the custom character encoding to Unicode.
* @return pointer to charmap if it could be created, 0 otherwise */
unique_ptr<const RangeMap> FontEngine::createCustomToUnicodeMap () {
- FT_CharMap ftcharmap = _currentFace->charmap;
- if (FT_Select_Charmap(_currentFace, FT_ENCODING_ADOBE_CUSTOM) != 0)
- return nullptr;
- RangeMap gidToCharCodeMap;
- buildGidToCharCodeMap(gidToCharCodeMap);
- if (FT_Select_Charmap(_currentFace, FT_ENCODING_UNICODE) != 0)
- return nullptr;
auto charmap = util::make_unique<RangeMap>();
- FT_UInt gid; // index of current glyph
- uint32_t ucCharcode = FT_Get_First_Char(_currentFace, &gid); // Unicode code point
- while (gid) {
- uint32_t customCharcode = gidToCharCodeMap.valueAt(gid);
- charmap->addRange(customCharcode, customCharcode, ucCharcode);
- ucCharcode = FT_Get_Next_Char(_currentFace, ucCharcode, &gid);
+ if (_currentFace) {
+ FT_CharMap ftcharmap = _currentFace->charmap;
+ if (FT_Select_Charmap(_currentFace, FT_ENCODING_ADOBE_CUSTOM) != 0)
+ return nullptr;
+ RangeMap gidToCharCodeMap;
+ buildGidToCharCodeMap(gidToCharCodeMap);
+ if (FT_Select_Charmap(_currentFace, FT_ENCODING_UNICODE) != 0)
+ return nullptr;
+ FT_UInt gid; // index of current glyph
+ uint32_t ucCharcode = FT_Get_First_Char(_currentFace, &gid); // Unicode code point
+ while (gid) {
+ uint32_t customCharcode = gidToCharCodeMap.valueAt(gid);
+ charmap->addRange(customCharcode, customCharcode, ucCharcode);
+ ucCharcode = FT_Get_Next_Char(_currentFace, ucCharcode, &gid);
+ }
+ FT_Set_Charmap(_currentFace, ftcharmap);
}
- FT_Set_Charmap(_currentFace, ftcharmap);
return std::move(charmap);
}
@@ -179,6 +202,27 @@ const char* FontEngine::getStyleName () const {
}
+/** Returns the PS name of the current font. */
+const char* FontEngine::getPSName () const {
+ return _currentFace ? FT_Get_Postscript_Name(_currentFace) : nullptr;
+}
+
+
+/** Returns the PS name of a font given by a file.
+ * @param[in] fname name/path of the font file
+ * @return the PS name */
+string FontEngine::getPSName (const string &fname) const {
+ string psname;
+ FT_Face face;
+ if (FT_New_Face(_library, fname.c_str(), 0, &face) == 0) {
+ if (const char *ptr = FT_Get_Postscript_Name(face))
+ psname = ptr;
+ FT_Done_Face(face);
+ }
+ return psname;
+}
+
+
int FontEngine::getUnitsPerEM () const {
return _currentFace ? _currentFace->units_per_EM : 0;
}
@@ -200,16 +244,6 @@ int FontEngine::getDescender () const {
}
-int FontEngine::getAdvance (int c) const {
- if (_currentFace) {
- FT_Fixed adv=0;
- FT_Get_Advance(_currentFace, c, FT_LOAD_NO_SCALE, &adv);
- return adv;
- }
- return 0;
-}
-
-
int FontEngine::getHAdvance () const {
if (_currentFace) {
auto table = static_cast<TT_OS2*>(FT_Get_Sfnt_Table(_currentFace, ft_sfnt_os2));
@@ -219,21 +253,26 @@ int FontEngine::getHAdvance () const {
}
+/** Returns the horizontal advance width of a given character in font units. */
int FontEngine::getHAdvance (const Character &c) const {
if (_currentFace) {
- FT_Load_Glyph(_currentFace, charIndex(c), FT_LOAD_NO_SCALE);
- return _currentFace->glyph->metrics.horiAdvance;
+ FT_Fixed adv=0;
+ FT_Get_Advance(_currentFace, charIndex(c), FT_LOAD_NO_SCALE, &adv);
+ return adv;
}
return 0;
}
+/** Returns the vertical advance width of a given character in font units. */
int FontEngine::getVAdvance (const Character &c) const {
if (_currentFace) {
- FT_Load_Glyph(_currentFace, charIndex(c), FT_LOAD_NO_SCALE);
+ FT_Fixed adv=0;
+ auto flags = FT_LOAD_NO_SCALE;
if (FT_HAS_VERTICAL(_currentFace))
- return _currentFace->glyph->metrics.vertAdvance;
- return _currentFace->glyph->metrics.horiAdvance;
+ flags |= FT_LOAD_VERTICAL_LAYOUT;
+ FT_Get_Advance(_currentFace, charIndex(c), flags, &adv);
+ return adv;
}
return 0;
}
@@ -241,8 +280,8 @@ int FontEngine::getVAdvance (const Character &c) const {
int FontEngine::getWidth (const Character &c) const {
if (_currentFace) {
- FT_Load_Glyph(_currentFace, charIndex(c), FT_LOAD_NO_SCALE);
- return _currentFace->glyph->metrics.width;
+ if (FT_Load_Glyph(_currentFace, charIndex(c), FT_LOAD_NO_SCALE) == 0)
+ return _currentFace->glyph->metrics.width;
}
return 0;
}
@@ -250,8 +289,8 @@ int FontEngine::getWidth (const Character &c) const {
int FontEngine::getHeight (const Character &c) const {
if (_currentFace) {
- FT_Load_Glyph(_currentFace, charIndex(c), FT_LOAD_NO_SCALE);
- return _currentFace->glyph->metrics.horiBearingY;
+ if (FT_Load_Glyph(_currentFace, charIndex(c), FT_LOAD_NO_SCALE) == 0)
+ return _currentFace->glyph->metrics.horiBearingY;
}
return 0;
}
@@ -259,13 +298,18 @@ int FontEngine::getHeight (const Character &c) const {
int FontEngine::getDepth (const Character &c) const {
if (_currentFace) {
- FT_Load_Glyph(_currentFace, charIndex(c), FT_LOAD_NO_SCALE);
- return _currentFace->glyph->metrics.height - _currentFace->glyph->metrics.horiBearingY;
+ if (FT_Load_Glyph(_currentFace, charIndex(c), FT_LOAD_NO_SCALE) == 0)
+ return _currentFace->glyph->metrics.height - _currentFace->glyph->metrics.horiBearingY;
}
return 0;
}
+int FontEngine::getCharIndexByGlyphName(const char *name) const {
+ return _currentFace ? int(FT_Get_Name_Index(_currentFace, name)) : 0;
+}
+
+
int FontEngine::charIndex (const Character &c) const {
if (!_currentFace || !_currentFace->charmap)
return c.type() == Character::NAME ? 0 : c.number();
@@ -280,22 +324,6 @@ int FontEngine::charIndex (const Character &c) const {
}
-/** Get first available character of the current font face. */
-int FontEngine::getFirstChar () const {
- if (_currentFace)
- return _currentChar = FT_Get_First_Char(_currentFace, &_currentGlyphIndex);
- return 0;
-}
-
-
-/** Get the next available character of the current font face. */
-int FontEngine::getNextChar () const {
- if (_currentFace && _currentGlyphIndex)
- return _currentChar = FT_Get_Next_Char(_currentFace, _currentChar, &_currentGlyphIndex);
- return getFirstChar();
-}
-
-
/** Returns the number of glyphs present in the current font face. */
int FontEngine::getNumGlyphs () const {
return _currentFace ? _currentFace->num_glyphs : 0;
@@ -306,15 +334,15 @@ int FontEngine::getNumGlyphs () const {
* @param[in] c char code
* @return glyph name */
string FontEngine::getGlyphName (const Character &c) const {
+ string ret;
if (c.type() == Character::NAME)
- return c.name();
-
- if (_currentFace && FT_HAS_GLYPH_NAMES(_currentFace)) {
+ ret = c.name();
+ else if (_currentFace && FT_HAS_GLYPH_NAMES(_currentFace)) {
char buf[256];
FT_Get_Glyph_Name(_currentFace, charIndex(c), buf, 256);
- return string(buf);
+ ret = string(buf);
}
- return "";
+ return ret;
}
@@ -335,7 +363,7 @@ int FontEngine::getCharMapIDs (vector<CharMapID> &charmapIDs) const {
if (_currentFace) {
for (int i=0; i < _currentFace->num_charmaps; i++) {
FT_CharMap charmap = _currentFace->charmaps[i];
- charmapIDs.emplace_back(charmap->platform_id, charmap->encoding_id);
+ charmapIDs.emplace_back(uint8_t(charmap->platform_id), uint8_t(charmap->encoding_id));
}
}
return charmapIDs.size();
@@ -344,14 +372,14 @@ int FontEngine::getCharMapIDs (vector<CharMapID> &charmapIDs) const {
CharMapID FontEngine::setUnicodeCharMap () {
if (_currentFace && FT_Select_Charmap(_currentFace, FT_ENCODING_UNICODE) == 0)
- return CharMapID(_currentFace->charmap->platform_id, _currentFace->charmap->encoding_id);
+ return CharMapID(uint8_t(_currentFace->charmap->platform_id), uint8_t(_currentFace->charmap->encoding_id));
return CharMapID();
}
CharMapID FontEngine::setCustomCharMap () {
if (_currentFace && FT_Select_Charmap(_currentFace, FT_ENCODING_ADOBE_CUSTOM) == 0)
- return CharMapID(_currentFace->charmap->platform_id, _currentFace->charmap->encoding_id);
+ return CharMapID(uint8_t(_currentFace->charmap->platform_id), uint8_t(_currentFace->charmap->encoding_id));
return CharMapID();
}
@@ -414,11 +442,13 @@ static bool trace_outline (FT_Face face, const Font *font, int index, Glyph &gly
}
FT_Outline outline = face->glyph->outline;
// apply style parameters if set
- if (const FontStyle *style = font->style()) {
- FT_Matrix matrix = {to_16dot16(style->extend), to_16dot16(style->slant), 0, to_16dot16(1)};
- FT_Outline_Transform(&outline, &matrix);
- if (style->bold != 0)
- FT_Outline_Embolden(&outline, style->bold/font->scaledSize()*face->units_per_EM);
+ if (font) {
+ if (const FontStyle *style = font->style()) {
+ FT_Matrix matrix = {to_16dot16(style->extend), to_16dot16(style->slant), 0, to_16dot16(1)};
+ FT_Outline_Transform(&outline, &matrix);
+ if (style->bold != 0)
+ FT_Outline_Embolden(&outline, style->bold/font->scaledSize()*face->units_per_EM);
+ }
}
const FT_Outline_Funcs funcs = {moveto, lineto, quadto, cubicto, 0, 0};
FT_Outline_Decompose(&outline, &funcs, &glyph);
diff --git a/dviware/dvisvgm/src/FontEngine.hpp b/dviware/dvisvgm/src/FontEngine.hpp
index d7c1496c2b..cf68930c65 100644
--- a/dviware/dvisvgm/src/FontEngine.hpp
+++ b/dviware/dvisvgm/src/FontEngine.hpp
@@ -2,7 +2,7 @@
** FontEngine.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -43,29 +43,30 @@ class FontEngine {
static FontEngine& instance ();
static std::string version ();
bool setFont (const Font &font);
+ const Font* currentFont () const {return _currentFont;}
bool isCIDFont() const;
+ bool hasVerticalMetrics () const;
bool traceOutline (const Character &c, Glyph &glyph, bool scale=true) const;
const char* getFamilyName () const;
const char* getStyleName () const;
+ const char* getPSName () const;
+ std::string getPSName (const std::string &fname) const;
int getUnitsPerEM () const;
int getAscender () const;
int getDescender () const;
- int getAdvance (int c) const;
int getHAdvance () const;
int getHAdvance (const Character &c) const;
int getVAdvance (const Character &c) const;
int getWidth (const Character &c) const;
int getHeight (const Character &c) const;
int getDepth (const Character &c) const;
- int getFirstChar () const;
- int getNextChar () const;
int getCharMapIDs (std::vector<CharMapID> &charmapIDs) const;
int getNumGlyphs () const;
CharMapID setUnicodeCharMap ();
CharMapID setCustomCharMap ();
std::vector<int> getPanose () const;
std::string getGlyphName (const Character &c) const;
- int getCharByGlyphName (const char *name) const;
+ int getCharIndexByGlyphName (const char *name) const;
bool setCharMap (const CharMapID &charMapID);
void buildGidToCharCodeMap (RangeMap &charmap);
std::unique_ptr<const RangeMap> createCustomToUnicodeMap ();
diff --git a/dviware/dvisvgm/src/FontManager.cpp b/dviware/dvisvgm/src/FontManager.cpp
index e85a9dc528..7eeaadeb9d 100644
--- a/dviware/dvisvgm/src/FontManager.cpp
+++ b/dviware/dvisvgm/src/FontManager.cpp
@@ -2,7 +2,7 @@
** FontManager.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -24,10 +24,13 @@
#include <set>
#include "CMap.hpp"
#include "Font.hpp"
+#include "fonts/Base14Fonts.hpp"
+#include "FontEngine.hpp"
#include "FontManager.hpp"
#include "FileFinder.hpp"
#include "FileSystem.hpp"
#include "Message.hpp"
+#include "SVGTree.hpp"
using namespace std;
@@ -80,6 +83,18 @@ int FontManager::fontID (const string &name) const {
}
+int FontManager::fontID (string name, double ptsize) const {
+ std::replace(name.begin(), name.end(), '+', '-');
+ for (auto it = _fonts.begin(); it != _fonts.end(); ++it) {
+ if (auto nativeFont = font_cast<NativeFont*>(it->get())) {
+ if (nativeFont->name() == name && nativeFont->scaledSize() == ptsize)
+ return int(std::distance(_fonts.begin(), it));
+ }
+ }
+ return -1;
+}
+
+
int FontManager::fontnum (int id) const {
if (id < 0 || size_t(id) > _fonts.size())
return -1;
@@ -129,6 +144,14 @@ Font* FontManager::getFont (const string &name) const {
}
+Font* FontManager::getFont (const string &name, double ptsize) {
+ int id = fontID(name, ptsize);
+ if (id < 0)
+ return nullptr;
+ return _fonts[id].get();
+}
+
+
Font* FontManager::getFontById (int id) const {
if (id < 0 || size_t(id) >= _fonts.size())
return nullptr;
@@ -219,7 +242,7 @@ int FontManager::registerFont (uint32_t fontnum, const string &name, uint32_t ch
missing_fonts.insert(filename);
}
}
- _name2id[name] = newid;
+ _name2id.emplace(name, newid);
}
_fonts.push_back(std::move(newfont));
if (_vfStack.empty()) // register font referenced in dvi file?
@@ -256,7 +279,7 @@ int FontManager::registerFont (uint32_t fontnum, const string &filename, double
* @param[in] style font style parameters
* @param[in] color global font color
* @return global font id */
-int FontManager::registerFont (uint32_t fontnum, string filename, int fontIndex, double ptsize, const FontStyle &style, Color color) {
+int FontManager::registerFont (uint32_t fontnum, const string &filename, int fontIndex, double ptsize, const FontStyle &style, Color color) {
int id = fontID(fontnum);
if (id >= 0)
return id;
@@ -292,7 +315,7 @@ int FontManager::registerFont (uint32_t fontnum, string filename, int fontIndex,
missing_fonts.insert(filename);
}
}
- _name2id[fontname] = newid;
+ _name2id.emplace(fontname, newid);
}
_fonts.push_back(std::move(newfont));
_num2id[fontnum] = newid;
@@ -300,6 +323,40 @@ int FontManager::registerFont (uint32_t fontnum, string filename, int fontIndex,
}
+/** Registers a native font that is referenced by its name instead of a DVI font number.
+ * @param[in] fname filename/path of the font file
+ * @param[in] ptsize font size in PS points
+ * return global ID assigned to the font */
+int FontManager::registerFont (const std::string &fname, double ptsize) {
+ if (fname.empty())
+ return -1;
+ string fontname;
+ if (fname.size() > 6 && fname.substr(0,6) == "sys://") {
+ fontname = fname.substr(6);
+ if (!find_base14_font(fontname))
+ return -1;
+ }
+ else if (!FileSystem::exists(fname) || (fontname = FontEngine::instance().getPSName(fname)).empty())
+ return -1;
+ int id = fontID(fontname, ptsize);
+ if (id >= 0)
+ return id;
+ unique_ptr<NativeFont> nativeFont;
+ id = fontID(fontname);
+ if (id < 0) {
+ nativeFont = util::make_unique<NativeFontImpl>(fname, fontname, ptsize);
+ _name2id.emplace(std::move(fontname), _fonts.size());
+ }
+ else {
+ auto *nf = font_cast<NativeFont*>(getFontById(id));
+ nativeFont = unique_ptr<NativeFont>(nf->clone(ptsize, FontStyle(), Color::BLACK));
+ }
+ id = int(_fonts.size());
+ _fonts.push_back(std::move(nativeFont));
+ return id;
+}
+
+
/** Enters a new virtual font frame.
* This method must be called before processing a VF character.
* @param[in] vf virtual font */
@@ -325,6 +382,20 @@ void FontManager::assignVFChar (int c, vector<uint8_t> &&dvi) {
}
+void FontManager::addUsedChar (const Font &font, int c) {
+ _usedChars[font.uniqueFont()].insert(c);
+ if (!SVGTree::USE_FONTS)
+ _usedChars[&font].insert(c);
+ _usedFonts.insert(&font);
+}
+
+
+void FontManager::resetUsedChars () {
+ _usedChars.clear();
+ _usedFonts.clear();
+}
+
+
ostream& FontManager::write (ostream &os, Font *font, int level) {
#if 0
if (font) {
diff --git a/dviware/dvisvgm/src/FontManager.hpp b/dviware/dvisvgm/src/FontManager.hpp
index e371e6bac6..eeaa1949de 100644
--- a/dviware/dvisvgm/src/FontManager.hpp
+++ b/dviware/dvisvgm/src/FontManager.hpp
@@ -2,7 +2,7 @@
** FontManager.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -27,6 +27,7 @@
#include <string>
#include <stack>
#include <unordered_map>
+#include <unordered_set>
#include <vector>
#include "Color.hpp"
#include "FontStyle.hpp"
@@ -42,6 +43,8 @@ class VirtualFont;
* virtual fonts are completely replaced by their DVI description so they don't
* appear anywhere in the output. */
class FontManager {
+ using CharMap = std::unordered_map<const Font*, std::set<int>>;
+ using FontSet = std::unordered_set<const Font*>;
using Num2IdMap = std::unordered_map<uint32_t, int>;
using Name2IdMap = std::unordered_map<std::string, int>;
using VfNum2IdMap = std::unordered_map<const VirtualFont*, Num2IdMap>;
@@ -53,20 +56,28 @@ class FontManager {
static FontManager& instance ();
int registerFont (uint32_t fontnum, const std::string &fontname, uint32_t checksum, double dsize, double scale);
int registerFont (uint32_t fontnum, const std::string &fname, double ptsize, const FontStyle &style, Color color);
- int registerFont (uint32_t fontnum, std::string fname, int fontIndex, double ptsize, const FontStyle &style, Color color);
+ int registerFont (uint32_t fontnum, const std::string &fname, int fontIndex, double ptsize, const FontStyle &style, Color color);
+// int registerFont (const std::string &fname, int fontIndex, double ptsize, const FontStyle &style, Color color);
+ int registerFont (const std::string &fname, double ptsize);
Font* getFont (int n) const;
Font* getFont (const std::string &name) const;
+ Font* getFont (const std::string &name, double ptsize);
Font* getFontById (int id) const;
const VirtualFont* getVF () const;
int fontID (int n) const;
int fontID (const Font *font) const;
int fontID (const std::string &name) const;
+ int fontID (std::string name, double ptsize) const;
int fontnum (int id) const;
int vfFirstFontNum (const VirtualFont *vf) const;
Font* vfFirstFont (const VirtualFont *vf) const;
void enterVF (VirtualFont *vf);
void leaveVF ();
void assignVFChar (int c, std::vector<uint8_t> &&dvi);
+ void addUsedChar (const Font &font, int c);
+ void resetUsedChars ();
+ CharMap& getUsedChars () {return _usedChars;}
+ FontSet& getUsedFonts () {return _usedFonts;}
std::ostream& write (std::ostream &os, Font *font=nullptr, int level=0);
protected:
@@ -80,6 +91,8 @@ class FontManager {
VfStack _vfStack; ///< stack of currently processed virtual fonts
VfFirstFontNumMap _vfFirstFontNumMap; ///< VF -> local font number of first font defined in VF
VfFirstFontMap _vfFirstFontMap; ///< VF -> first font defined
+ CharMap _usedChars;
+ FontSet _usedFonts;
};
#endif
diff --git a/dviware/dvisvgm/src/FontMap.cpp b/dviware/dvisvgm/src/FontMap.cpp
index c9e2f8912c..c441526144 100644
--- a/dviware/dvisvgm/src/FontMap.cpp
+++ b/dviware/dvisvgm/src/FontMap.cpp
@@ -2,7 +2,7 @@
** FontMap.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FontMap.hpp b/dviware/dvisvgm/src/FontMap.hpp
index c681e24dba..b0cc9901d5 100644
--- a/dviware/dvisvgm/src/FontMap.hpp
+++ b/dviware/dvisvgm/src/FontMap.hpp
@@ -2,7 +2,7 @@
** FontMap.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FontMetrics.cpp b/dviware/dvisvgm/src/FontMetrics.cpp
index 1391f9e630..6147f36ab1 100644
--- a/dviware/dvisvgm/src/FontMetrics.cpp
+++ b/dviware/dvisvgm/src/FontMetrics.cpp
@@ -2,7 +2,7 @@
** FontMetrics.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FontMetrics.hpp b/dviware/dvisvgm/src/FontMetrics.hpp
index b9f5b260d8..79cb579b2e 100644
--- a/dviware/dvisvgm/src/FontMetrics.hpp
+++ b/dviware/dvisvgm/src/FontMetrics.hpp
@@ -2,7 +2,7 @@
** FontMetrics.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FontStyle.hpp b/dviware/dvisvgm/src/FontStyle.hpp
index 125099f9e7..3c79e4cc68 100644
--- a/dviware/dvisvgm/src/FontStyle.hpp
+++ b/dviware/dvisvgm/src/FontStyle.hpp
@@ -2,7 +2,7 @@
** FontStyle.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/FontWriter.cpp b/dviware/dvisvgm/src/FontWriter.cpp
index 0f7946f567..9eed1784d1 100644
--- a/dviware/dvisvgm/src/FontWriter.cpp
+++ b/dviware/dvisvgm/src/FontWriter.cpp
@@ -2,7 +2,7 @@
** FontWriter.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -68,7 +68,7 @@ vector<string> FontWriter::supportedFormats () {
#ifdef DISABLE_WOFF
// dummy functions used if WOFF support is disabled
-FontWriter::FontWriter (const PhysicalFont &font) : _font(font) {}
+FontWriter::FontWriter (const PhysicalFont &font) : _currentFont(font) {}
std::string FontWriter::createFontFile (FontFormat format, const set<int> &charcodes, GFGlyphTracer::Callback *cb) const {return "";}
bool FontWriter::writeCSSFontFace (FontFormat format, const set<int> &charcodes, ostream &os, GFGlyphTracer::Callback *cb) const {return false;}
#else
@@ -77,141 +77,50 @@ bool FontWriter::writeCSSFontFace (FontFormat format, const set<int> &charcodes,
#include <iomanip>
#include <sstream>
#include <woff2/encode.h>
-#include "ffwrapper.h"
#include "Bezier.hpp"
#include "FileSystem.hpp"
#include "Font.hpp"
#include "Glyph.hpp"
-#include "TTFAutohint.hpp"
-#include "TrueTypeFont.hpp"
+#include "ttf/TTFAutohint.hpp"
+#include "ttf/TTFWriter.hpp"
+using namespace ttf;
-FontWriter::FontWriter (const PhysicalFont &font) : _font(font) {
- static bool initialized=false;
- if (!initialized) {
- ff_init();
- initialized = true;
- }
-}
-
-
-struct SFDActions : Glyph::IterationActions {
- explicit SFDActions (ostream &os) : _os(os) {}
-
- using Point = Glyph::Point;
- void moveto (const Point &p) override {write('m', p);}
- void lineto (const Point &p) override {write('l', p);}
- void cubicto (const Point &p1, const Point &p2, const Point &p3) override {write('c', p1, p2, p3); }
- void closepath () override {write('m', startPoint());}
-
- void quadto (const Point &p1, const Point &p2) override {
- // convert quadratic Bézier curve to cubic one
- DPair pt0(currentPoint().x(), currentPoint().y());
- DPair pt1(p1.x(), p1.y());
- DPair pt2(p2.x(), p2.y());
- Bezier b(pt0, pt1, pt2);
- write('c', round(b.point(0)), round(b.point(1)), round(b.point(2)), round(b.point(3)));
- }
-
- template <typename ...Args>
- void write (char cmd, const Args& ...args) {
- writeParams(args...);
- _os << cmd << " 0\n";
- }
-
- static void writeParams () {}
-
- template <typename Pt, typename ...Args>
- void writeParams (const Pt &p, const Args& ...args) const {
- _os << p.x() << ' ' << p.y() << ' ';
- writeParams(args...);
- }
-
- ostream &_os;
- Glyph::Point _startPoint, _currentPoint;
-};
-
-
-/** Creates a Spline Font Database (SFD) file describing the font and its glyphs.
- * https://fontforge.github.io/sfdformat.html */
-static void writeSFD (const string &sfdname, const PhysicalFont &font, const set<int> &charcodes, GFGlyphTracer::Callback *cb) {
- ofstream sfd(sfdname);
- if (!sfd)
- throw FontWriterException("failed writing SFD file "+sfdname);
-
- sfd <<
- "SplineFontDB: 3.0\n"
- "FontName: " << font.name() << '\n';
-
- // ensure that the sum of the SFD's Ascent and Descent values equals the font's units per EM
- double yext = font.ascent()+font.descent();
- double scale = double(font.unitsPerEm())/(yext != 0 ? yext : abs(font.ascent()));
- sfd <<
- "Ascent: " << font.ascent()*scale << "\n"
- "Descent: " << font.descent()*scale << "\n"
- "LayerCount: 2\n" // number of layers must be 2 at least
- "Layer: 0 0 \"Back\" 1\n" // layer 0: background layer with cubic splines
- "Layer: 1 0 \"Fore\" 0\n" // layer 1: foreground layer with cubic splines
- "Encoding: UnicodeFull\n" // character codes can use the full Unicode range
- "BeginChars: 1114112 " << charcodes.size() << '\n';
-
- double extend = font.style() ? font.style()->extend : 1;
- for (int c : charcodes) {
- string name = font.glyphName(c);
- if (name.empty()) {
- // if the font doesn't provide glyph names, use AGL name uFOO
- ostringstream oss;
- oss << 'u' << hex << uppercase << setw(4) << setfill('0') << c;
- name = oss.str();
- }
- uint32_t codepoint = font.unicode(c);
- sfd <<
- "StartChar: " << name << "\n"
- "Encoding: " << codepoint << ' ' << codepoint << " 0\n"
- "Width: " << font.hAdvance(c)*extend << "\n"
- "VWidth: " << font.vAdvance(c) << "\n"
- "Fore\n"
- "SplineSet\n";
- Glyph glyph;
- if (font.getGlyph(c, glyph, cb)) {
- if (glyph.empty())
- sfd << "0 0 m 0\n";
- else {
- SFDActions actions(sfd);
- glyph.iterate(actions, false);
- }
- }
- sfd <<
- "EndSplineSet\n"
- "EndChar\n";
- }
- sfd.flush();
- sfd.close();
- if (sfd.fail())
- throw FontWriterException("failed writing SFD file "+sfdname);
-}
-
-
-bool FontWriter::createTTFFile (const string &sfdname, const string &ttfname) const {
- TTFAutohint autohinter;
- if (!autohinter.available())
- return ff_sfd_to_ttf(sfdname.c_str(), ttfname.c_str(), AUTOHINT_FONTS);
-
- bool ok = ff_sfd_to_ttf(sfdname.c_str(), ttfname.c_str(), false);
+bool FontWriter::createTTFFile (const std::string &ttfname, const PhysicalFont &font, const set<int> &charcodes, GFGlyphTracer::Callback *cb) const {
+ TTFWriter ttfWriter(font, charcodes);
+ if (cb)
+ ttfWriter.setTracerCallback(*cb);
+ bool ok = ttfWriter.writeTTF(ttfname);
if (ok && AUTOHINT_FONTS) {
- string tmpname = ttfname+"-ah";
- int errnum = autohinter.autohint(ttfname, tmpname, true);
- if (errnum) {
- Message::wstream(true) << "failed to autohint font '" << _font.name() << "'";
- string msg = autohinter.lastErrorMessage();
- if (!msg.empty())
- Message::wstream() << " (" << msg << ")";
- // keep the unhinted TTF
- FileSystem::remove(tmpname);
+ TTFAutohint autohinter;
+ if (!autohinter.available()) {
+ static bool reported=false;
+ if (!reported) {
+ Message::wstream(true) << "autohint functionality disabled (ttfautohint not found)";
+ reported = true;
+ }
}
else {
- FileSystem::remove(ttfname);
- FileSystem::rename(tmpname, ttfname);
+ string tmpname = ttfname+"-ah";
+ try {
+ int errnum = autohinter.autohint(ttfname, tmpname, true);
+ if (errnum == 0) { // success?
+ FileSystem::remove(ttfname);
+ FileSystem::rename(tmpname, ttfname);
+ }
+ else {
+ Message::wstream(true) << "failed to autohint font '" << _font.name() << "'";
+ string msg = autohinter.lastErrorMessage();
+ if (!msg.empty())
+ Message::wstream() << " (" << msg << ")";
+ // keep the unhinted TTF
+ FileSystem::remove(tmpname);
+ }
+ }
+ catch (MessageException &e) {
+ Message::wstream(true) << e.what() << '\n';
+ FileSystem::remove(tmpname);
+ }
}
}
return ok;
@@ -226,24 +135,19 @@ bool FontWriter::createTTFFile (const string &sfdname, const string &ttfname) co
string FontWriter::createFontFile (FontFormat format, const set<int> &charcodes, GFGlyphTracer::Callback *cb) const {
string tmpdir = FileSystem::tmpdir();
string basename = tmpdir+_font.name()+"-tmp";
- string sfdname = basename+".sfd";
- writeSFD(sfdname, _font, charcodes, cb);
string ttfname = basename+".ttf";
string targetname = basename+"."+fontFormatInfo(format)->formatstr_short;
- bool ok = createTTFFile(sfdname, ttfname);
+ bool ok = createTTFFile(ttfname, _font, charcodes, cb);
if (ok) {
if (format == FontFormat::WOFF || format == FontFormat::WOFF2) {
- TrueTypeFont ttf(ttfname);
if (format == FontFormat::WOFF)
- ttf.writeWOFF(targetname);
+ ok = TTFWriter::convertTTFToWOFF(ttfname, targetname);
else
- ok = ttf.writeWOFF2(targetname);
+ TTFWriter::convertTTFToWOFF2(ttfname, targetname);
if (!PhysicalFont::KEEP_TEMP_FILES)
FileSystem::remove(ttfname);
}
}
- if (!PhysicalFont::KEEP_TEMP_FILES)
- FileSystem::remove(sfdname);
if (!ok)
throw FontWriterException("failed writing "+string(fontFormatInfo(format)->formatstr_short)+ " file " + targetname);
return targetname;
diff --git a/dviware/dvisvgm/src/FontWriter.hpp b/dviware/dvisvgm/src/FontWriter.hpp
index 2bf1b90edd..611d2ac809 100644
--- a/dviware/dvisvgm/src/FontWriter.hpp
+++ b/dviware/dvisvgm/src/FontWriter.hpp
@@ -2,7 +2,7 @@
** FontWriter.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -36,7 +36,7 @@ class FontWriter {
static bool AUTOHINT_FONTS;
public:
- explicit FontWriter (const PhysicalFont &font);
+ explicit FontWriter (const PhysicalFont &font) : _font(font) {}
std::string createFontFile (FontFormat format, const std::set<int> &charcodes, GFGlyphTracer::Callback *cb=nullptr) const;
bool writeCSSFontFace (FontFormat format, const std::set<int> &charcodes, std::ostream &os, GFGlyphTracer::Callback *cb=nullptr) const;
static FontFormat toFontFormat (std::string formatstr);
@@ -50,7 +50,7 @@ class FontWriter {
const char *formatstr_long;
};
static const FontFormatInfo* fontFormatInfo (FontFormat format);
- bool createTTFFile (const std::string &sfdname, const std::string &ttfname) const;
+ bool createTTFFile (const std::string &ttfname, const PhysicalFont &font, const std::set<int> &charcodes, GFGlyphTracer::Callback *cb) const;
private:
const PhysicalFont &_font;
diff --git a/dviware/dvisvgm/src/GFGlyphTracer.cpp b/dviware/dvisvgm/src/GFGlyphTracer.cpp
index 7c2e19f3c4..ee487751d6 100644
--- a/dviware/dvisvgm/src/GFGlyphTracer.cpp
+++ b/dviware/dvisvgm/src/GFGlyphTracer.cpp
@@ -2,7 +2,7 @@
** GFGlyphTracer.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/GFGlyphTracer.hpp b/dviware/dvisvgm/src/GFGlyphTracer.hpp
index 030cb27ac5..5493aea387 100644
--- a/dviware/dvisvgm/src/GFGlyphTracer.hpp
+++ b/dviware/dvisvgm/src/GFGlyphTracer.hpp
@@ -2,7 +2,7 @@
** GFGlyphTracer.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/GFReader.cpp b/dviware/dvisvgm/src/GFReader.cpp
index 6c0fd1e5eb..41920634cb 100644
--- a/dviware/dvisvgm/src/GFReader.cpp
+++ b/dviware/dvisvgm/src/GFReader.cpp
@@ -2,7 +2,7 @@
** GFReader.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/GFReader.hpp b/dviware/dvisvgm/src/GFReader.hpp
index efbb130475..f5a6a17609 100644
--- a/dviware/dvisvgm/src/GFReader.hpp
+++ b/dviware/dvisvgm/src/GFReader.hpp
@@ -2,7 +2,7 @@
** GFReader.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/GFTracer.cpp b/dviware/dvisvgm/src/GFTracer.cpp
index dd761ecaf2..b6cb2e76c7 100644
--- a/dviware/dvisvgm/src/GFTracer.cpp
+++ b/dviware/dvisvgm/src/GFTracer.cpp
@@ -2,7 +2,7 @@
** GFTracer.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/GFTracer.hpp b/dviware/dvisvgm/src/GFTracer.hpp
index 083395e9c3..63c6d20546 100644
--- a/dviware/dvisvgm/src/GFTracer.hpp
+++ b/dviware/dvisvgm/src/GFTracer.hpp
@@ -2,7 +2,7 @@
** GFTracer.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Ghostscript.cpp b/dviware/dvisvgm/src/Ghostscript.cpp
index f4aa6e00aa..fa6f1eb0eb 100644
--- a/dviware/dvisvgm/src/Ghostscript.cpp
+++ b/dviware/dvisvgm/src/Ghostscript.cpp
@@ -2,7 +2,7 @@
** Ghostscript.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -81,8 +81,8 @@ static string get_path_from_registry () {
}
#endif // _WIN32
-#if defined(_WIN32) && !defined(_WIN64)
-static string get_gsdll32 () {
+#if defined(_WIN32)
+static string get_gsdll () {
string pathstr;
#if defined(TEXLIVEWIN32)
char exepath[256];
@@ -97,9 +97,13 @@ static string get_gsdll32 () {
pathstr += "bin\\";
}
#endif
+#if defined(_WIN64)
+ return pathstr+"gsdll64.dll";
+#else
return pathstr+"gsdll32.dll";
+#endif
}
-#endif // _WIN32 && !_WIN64
+#endif // _WIN32
/** Try to detect name of the Ghostscript shared library depending on the user settings.
@@ -123,14 +127,10 @@ static string get_libgs (const string &fname) {
string gsdll_path = get_path_from_registry();
if (!gsdll_path.empty())
return gsdll_path;
-#endif //_WIN32
-#if defined(_WIN64)
- return "gsdll64.dll";
-#elif defined(_WIN32)
- return get_gsdll32();
+ return get_gsdll();
#else
// try to find libgs.so.X on the user's system
- const int abi_min=7, abi_max=9; // supported libgs ABI versions
+ const int abi_min=7, abi_max=10; // supported libgs ABI versions
for (int i=abi_max; i >= abi_min; i--) {
#if defined(__CYGWIN__)
string dlname = "cyggs-" + to_string(i) + ".dll";
@@ -141,12 +141,16 @@ static string get_libgs (const string &fname) {
if (loader.loaded())
return dlname;
#if defined(__APPLE__)
- dlname = "libgs." + to_string(i) + ".dylib";
- if (loader.loadLibrary(dlname))
- return dlname;
- dlname = "libgs.dylib." + to_string(i);
- if (loader.loadLibrary(dlname))
- return dlname;
+ // dlopen() requires an absolute path in a hardened runtime such as installed
+ // by MacTeX. Thus, explicitly lookup libgs in /usr/local/lib too.
+ for (const string path : {"", "/usr/local/lib/"}) {
+ dlname = path + "libgs." + to_string(i) + ".dylib";
+ if (loader.loadLibrary(dlname))
+ return dlname;
+ dlname = path + "libgs.dylib." + to_string(i);
+ if (loader.loadLibrary(dlname))
+ return dlname;
+ }
#endif
}
#endif
@@ -228,10 +232,13 @@ bool Ghostscript::revision (gsapi_revision_t *r) const {
/** Returns the revision number of the GS library. */
int Ghostscript::revision () const {
- gsapi_revision_t r;
- if (revision(&r))
- return static_cast<int>(r.revision);
- return 0;
+ static int rev=0;
+ if (rev == 0) {
+ gsapi_revision_t r;
+ if (revision(&r))
+ rev = static_cast<int>(r.revision);
+ }
+ return rev;
}
@@ -375,19 +382,9 @@ const char* Ghostscript::error_name (int code) {
if (code < 0)
code = -code;
const char *error_names[] = { ERROR_NAMES };
- if (code == 0 || (size_t)code > sizeof(error_names)/sizeof(error_names[0]))
+ if (code == 0 || size_t(code) > sizeof(error_names)/sizeof(error_names[0]))
return nullptr;
-#if defined(HAVE_LIBGS)
- // use array defined in libgs to avoid linking the error strings into the binary
- return gs_error_names[code-1];
-#elif defined(_WIN32)
- // gs_error_names is private in the Ghostscript DLL so we can't access it here
return error_names[code-1];
-#else
- if (auto error_names = loadSymbol<const char**>("gs_error_names"))
- return error_names[code-1];
- return nullptr;
-#endif
}
#endif // !DISABLE_GS
diff --git a/dviware/dvisvgm/src/Ghostscript.hpp b/dviware/dvisvgm/src/Ghostscript.hpp
index 9faa63e360..91b558fd3c 100644
--- a/dviware/dvisvgm/src/Ghostscript.hpp
+++ b/dviware/dvisvgm/src/Ghostscript.hpp
@@ -2,7 +2,7 @@
** Ghostscript.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -47,8 +47,8 @@ struct Ghostscript {
Ghostscript (int argc, const char **argv, void *caller=0) {}
bool init (int argc, const char **argv, void *caller=0) {return false;}
bool available () {return false;}
- bool revision (gsapi_revision_t *r) {return false;}
- int revision () {return 0;}
+ bool revision (gsapi_revision_t *r) const {return false;}
+ int revision () const {return 0;}
std::string revisionstr () {return "";}
int set_stdio (Stdin in, Stdout out, Stderr err) {return 0;}
int run_string_begin (int user_errors, int *pexit_code) {return 0;}
diff --git a/dviware/dvisvgm/src/Glyph.hpp b/dviware/dvisvgm/src/Glyph.hpp
index fb6a485520..56f9c14ba3 100644
--- a/dviware/dvisvgm/src/Glyph.hpp
+++ b/dviware/dvisvgm/src/Glyph.hpp
@@ -2,7 +2,7 @@
** Glyph.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/GlyphTracerMessages.hpp b/dviware/dvisvgm/src/GlyphTracerMessages.hpp
index 15c607faea..cc7722a49b 100644
--- a/dviware/dvisvgm/src/GlyphTracerMessages.hpp
+++ b/dviware/dvisvgm/src/GlyphTracerMessages.hpp
@@ -2,7 +2,7 @@
** GlyphTracerMessages.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/GraphicsPath.hpp b/dviware/dvisvgm/src/GraphicsPath.hpp
index 9d270871cf..9b60370ff1 100644
--- a/dviware/dvisvgm/src/GraphicsPath.hpp
+++ b/dviware/dvisvgm/src/GraphicsPath.hpp
@@ -2,7 +2,7 @@
** GraphicsPath.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -642,7 +642,7 @@ class GraphicsPath {
void arcto (T rx, T ry, double angle, bool largeArcFlag, bool sweepFlag, const Point &p) override {
EllipticalArc arc(this->currentPoint(), rx, ry, angle, largeArcFlag, sweepFlag, p);
std::vector<CommandVariant> cmds;
- for (const Bezier &bezier : arc.approximate())
+ for (const CubicBezier &bezier : arc.approximate())
cmds.emplace_back(CubicTo{bezier.point(1), bezier.point(2), bezier.point(3)});
this->path().replace(this->commandPos(), cmds);
}
diff --git a/dviware/dvisvgm/src/GraphicsPathParser.hpp b/dviware/dvisvgm/src/GraphicsPathParser.hpp
index 0106f21a52..41a850db27 100644
--- a/dviware/dvisvgm/src/GraphicsPathParser.hpp
+++ b/dviware/dvisvgm/src/GraphicsPathParser.hpp
@@ -2,7 +2,7 @@
** GraphicsPathParser.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/HashFunction.cpp b/dviware/dvisvgm/src/HashFunction.cpp
index b97084f328..e882ad5179 100644
--- a/dviware/dvisvgm/src/HashFunction.cpp
+++ b/dviware/dvisvgm/src/HashFunction.cpp
@@ -2,7 +2,7 @@
** HashFunction.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/HashFunction.hpp b/dviware/dvisvgm/src/HashFunction.hpp
index ecd938bcbb..690aee2904 100644
--- a/dviware/dvisvgm/src/HashFunction.hpp
+++ b/dviware/dvisvgm/src/HashFunction.hpp
@@ -2,7 +2,7 @@
** HashFunction.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/HtmlSpecialHandler.cpp b/dviware/dvisvgm/src/HtmlSpecialHandler.cpp
index 33d980fa72..e86de7fb96 100644
--- a/dviware/dvisvgm/src/HtmlSpecialHandler.cpp
+++ b/dviware/dvisvgm/src/HtmlSpecialHandler.cpp
@@ -2,7 +2,7 @@
** HtmlSpecialHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/HtmlSpecialHandler.hpp b/dviware/dvisvgm/src/HtmlSpecialHandler.hpp
index 4bdabfda77..f722060538 100644
--- a/dviware/dvisvgm/src/HtmlSpecialHandler.hpp
+++ b/dviware/dvisvgm/src/HtmlSpecialHandler.hpp
@@ -2,7 +2,7 @@
** HtmlSpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/HyperlinkManager.cpp b/dviware/dvisvgm/src/HyperlinkManager.cpp
index 65ee534a32..b595055864 100644
--- a/dviware/dvisvgm/src/HyperlinkManager.cpp
+++ b/dviware/dvisvgm/src/HyperlinkManager.cpp
@@ -2,7 +2,7 @@
** HyperlinkManager.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/HyperlinkManager.hpp b/dviware/dvisvgm/src/HyperlinkManager.hpp
index 99151db0e5..3d0e93ca32 100644
--- a/dviware/dvisvgm/src/HyperlinkManager.hpp
+++ b/dviware/dvisvgm/src/HyperlinkManager.hpp
@@ -2,7 +2,7 @@
** HyperlinkManager.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/ImageToSVG.cpp b/dviware/dvisvgm/src/ImageToSVG.cpp
index c38d3cc9b9..990647a008 100644
--- a/dviware/dvisvgm/src/ImageToSVG.cpp
+++ b/dviware/dvisvgm/src/ImageToSVG.cpp
@@ -2,7 +2,7 @@
** ImageToSVG.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -36,18 +36,17 @@
using namespace std;
+ImageToSVG::ImageToSVG (std::string fname, SVGOutputBase &out)
+ : _fname(std::move(fname)), _out(out), _gsVersion(Ghostscript().revision())
+{
+}
+
+
void ImageToSVG::checkGSAndFileFormat () {
- if (!_haveGS) {
-#ifdef HAVE_LIBGS
- _haveGS = true;
-#else
- _haveGS = Ghostscript().available();
-#endif
- if (!_haveGS)
- throw MessageException("Ghostscript is required to process "+imageFormat()+" files");
- if (!imageIsValid())
- throw MessageException("invalid "+imageFormat()+" file");
- }
+ if (!_gsVersion)
+ throw MessageException("Ghostscript is required to process "+imageFormat()+" files");
+ if (!imageIsValid())
+ throw MessageException("invalid "+imageFormat()+" file");
}
@@ -59,7 +58,7 @@ void ImageToSVG::convert (int pageno) {
Message::mstream().indent(0);
Message::mstream(false, Message::MC_PAGE_NUMBER) << "processing " << imageFormat() << " file\n";
Message::mstream().indent(1);
- _svg.newPage(1);
+ _svg.newPage(pageno);
// create a psfile special and forward it to the PsSpecialHandler
stringstream ss;
ss << "\"" << _fname << "\" "
@@ -69,7 +68,7 @@ void ImageToSVG::convert (int pageno) {
"ury=" << bbox.maxY();
_currentPageNumber = pageno;
if (!isSinglePageFormat())
- ss << " page=" << pageno;
+ ss << " page=" << pageno << " proc=gs";
try {
_psHandler.process(psSpecialCmd(), ss, *this);
}
@@ -77,6 +76,11 @@ void ImageToSVG::convert (int pageno) {
progress(nullptr); // remove progress message
throw;
}
+ writeSVG(pageno);
+}
+
+
+void ImageToSVG::writeSVG (int pageno) {
progress(nullptr);
Matrix matrix = getUserMatrix(_bbox);
// output SVG file
@@ -87,6 +91,7 @@ void ImageToSVG::convert (int pageno) {
_svg.appendToDoc(util::make_unique<XMLComment>(" This file was generated by dvisvgm " + string(PROGRAM_VERSION) + " "));
bool success = _svg.write(_out.getPageStream(pageno, totalPageCount()));
string svgfname = _out.filepath(pageno, totalPageCount()).shorterAbsoluteOrRelative();
+ _out.finish();
if (svgfname.empty())
svgfname = "<stdout>";
if (!success)
@@ -94,10 +99,11 @@ void ImageToSVG::convert (int pageno) {
else {
const double bp2pt = 72.27/72;
const double bp2mm = 25.4/72;
- Message::mstream(false, Message::MC_PAGE_SIZE) << "graphic size: " << XMLString(_bbox.width()*bp2pt) << "pt"
- " x " << XMLString(_bbox.height()*bp2pt) << "pt"
- " (" << XMLString(_bbox.width()*bp2mm) << "mm"
- " x " << XMLString(_bbox.height()*bp2mm) << "mm)\n";
+ Message::mstream(false,Message::MC_PAGE_SIZE)
+ << "graphic size: " << XMLString(_bbox.width()*bp2pt) << "pt"
+ << " x " << XMLString(_bbox.height()*bp2pt) << "pt"
+ << " (" << XMLString(_bbox.width()*bp2mm) << "mm"
+ << " x " << XMLString(_bbox.height()*bp2mm) << "mm)\n";
Message::mstream(false, Message::MC_PAGE_WRITTEN) << "output written to " << svgfname << '\n';
}
_bbox.invalidate();
diff --git a/dviware/dvisvgm/src/ImageToSVG.hpp b/dviware/dvisvgm/src/ImageToSVG.hpp
index 2c2c701d47..eccb48e5f7 100644
--- a/dviware/dvisvgm/src/ImageToSVG.hpp
+++ b/dviware/dvisvgm/src/ImageToSVG.hpp
@@ -2,7 +2,7 @@
** ImageToSVG.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -32,24 +32,25 @@ struct SVGOutputBase;
class ImageToSVG : protected SpecialActions {
public:
- ImageToSVG (std::string fname, SVGOutputBase &out) : _fname(std::move(fname)), _out(out) {}
- void convert (int pageno);
+ ImageToSVG (std::string fname, SVGOutputBase &out);
+ virtual void convert (int pageno);
void convert (int firstPage, int lastPage, std::pair<int,int> *pageinfo);
void convert (const std::string &rangestr, std::pair<int,int> *pageinfo);
void setPageTransformation (const std::string &transCmds) {_transCmds = transCmds;}
-// void setPageSize (const std::string &name);
std::string filename () const {return _fname;}
PSInterpreter& psInterpreter () const {return _psHandler.psInterpreter();}
virtual bool isSinglePageFormat () const =0;
virtual int totalPageCount () const =0;
protected:
- void checkGSAndFileFormat ();
+ virtual void checkGSAndFileFormat ();
Matrix getUserMatrix (const BoundingBox &bbox) const;
virtual std::string imageFormat () const =0;
virtual bool imageIsValid () const =0;
virtual BoundingBox imageBBox () const =0;
virtual std::string psSpecialCmd () const =0;
+ int gsVersion () const {return _gsVersion;}
+ virtual void writeSVG (int pageno);
// implement abstract base class SpecialActions
double getX () const override {return _x;}
double getY () const override {return _y;}
@@ -71,17 +72,19 @@ class ImageToSVG : protected SpecialActions {
BoundingBox& bbox () override {return _bbox;}
BoundingBox& bbox (const std::string &name, bool reset=false) override {return _bbox;}
FilePath getSVGFilePath (unsigned pageno) const override;
- std::string getBBoxFormatString () const override {return "";}
+ std::string getBBoxFormatString () const override {return "";}
+
+ protected:
+ SVGTree _svg;
private:
std::string _fname; ///< name of image file
- SVGTree _svg;
SVGOutputBase &_out;
double _x=0, _y=0;
unsigned _currentPageNumber=0;
BoundingBox _bbox;
mutable PsSpecialHandler _psHandler;
- bool _haveGS=false; ///< true if Ghostscript is available
+ int _gsVersion=0; ///< Ghostscript version found
std::string _transCmds; ///< transformation commands
};
diff --git a/dviware/dvisvgm/src/InputBuffer.cpp b/dviware/dvisvgm/src/InputBuffer.cpp
index e9387cfb11..095b7e22cc 100644
--- a/dviware/dvisvgm/src/InputBuffer.cpp
+++ b/dviware/dvisvgm/src/InputBuffer.cpp
@@ -2,7 +2,7 @@
** InputBuffer.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/InputBuffer.hpp b/dviware/dvisvgm/src/InputBuffer.hpp
index adf5898cec..20523d37dd 100644
--- a/dviware/dvisvgm/src/InputBuffer.hpp
+++ b/dviware/dvisvgm/src/InputBuffer.hpp
@@ -2,7 +2,7 @@
** InputBuffer.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/InputReader.cpp b/dviware/dvisvgm/src/InputReader.cpp
index ed97e3f44d..9c5cc504cd 100644
--- a/dviware/dvisvgm/src/InputReader.cpp
+++ b/dviware/dvisvgm/src/InputReader.cpp
@@ -2,7 +2,7 @@
** InputReader.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/InputReader.hpp b/dviware/dvisvgm/src/InputReader.hpp
index ac1dfdf955..fefd450bac 100644
--- a/dviware/dvisvgm/src/InputReader.hpp
+++ b/dviware/dvisvgm/src/InputReader.hpp
@@ -2,7 +2,7 @@
** InputReader.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/JFM.cpp b/dviware/dvisvgm/src/JFM.cpp
index 4b5c63cb7e..c801618178 100644
--- a/dviware/dvisvgm/src/JFM.cpp
+++ b/dviware/dvisvgm/src/JFM.cpp
@@ -2,7 +2,7 @@
** JFM.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/JFM.hpp b/dviware/dvisvgm/src/JFM.hpp
index dc9798cda2..110f0f3e1a 100644
--- a/dviware/dvisvgm/src/JFM.hpp
+++ b/dviware/dvisvgm/src/JFM.hpp
@@ -2,7 +2,7 @@
** JFM.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Length.cpp b/dviware/dvisvgm/src/Length.cpp
index 463f571a59..059933a363 100644
--- a/dviware/dvisvgm/src/Length.cpp
+++ b/dviware/dvisvgm/src/Length.cpp
@@ -2,7 +2,7 @@
** Length.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Length.hpp b/dviware/dvisvgm/src/Length.hpp
index 14a2fd4c74..9c1f353c46 100644
--- a/dviware/dvisvgm/src/Length.hpp
+++ b/dviware/dvisvgm/src/Length.hpp
@@ -2,7 +2,7 @@
** Length.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/MD5HashFunction.hpp b/dviware/dvisvgm/src/MD5HashFunction.hpp
index 5149d5945e..d5cfdf2bfa 100644
--- a/dviware/dvisvgm/src/MD5HashFunction.hpp
+++ b/dviware/dvisvgm/src/MD5HashFunction.hpp
@@ -2,7 +2,7 @@
** MD5HashFunction.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Makefile.am b/dviware/dvisvgm/src/Makefile.am
index bd2cfd3a43..85ca88ddc4 100644
--- a/dviware/dvisvgm/src/Makefile.am
+++ b/dviware/dvisvgm/src/Makefile.am
@@ -1,11 +1,11 @@
## This file is part of dvisvgm
-## Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de>
+## Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de>
##
## Process this file with automake.
bin_PROGRAMS = dvisvgm
noinst_LTLIBRARIES = libdvisvgm.la
-SUBDIRS = optimizer
+SUBDIRS = fonts optimizer ttf
dvisvgm_SOURCES = \
CommandLine.hpp \
@@ -17,14 +17,14 @@ dvisvgm_LDADD = \
$(noinst_LTLIBRARIES) \
../libs/clipper/libclipper.a \
$(FREETYPE_LIBS) \
- $(FONTFORGE_LIBS) \
$(POTRACE_LIBS) \
$(XXHASH_LIBS) \
$(ZLIB_LIBS)
if ENABLE_WOFF
+SUBDIRS += ttf
+
dvisvgm_LDADD += \
- ../libs/ff-woff/libfontforge.a \
$(WOFF2_LIBS) \
$(BROTLI_LIBS)
endif
@@ -111,9 +111,10 @@ libdvisvgm_la_SOURCES = \
Pair.hpp \
PapersizeSpecialHandler.hpp PapersizeSpecialHandler.cpp \
PathClipper.hpp PathClipper.cpp \
+ PDFHandler.hpp PDFHandler.cpp \
PDFParser.hpp PDFParser.cpp \
PdfSpecialHandler.hpp PdfSpecialHandler.cpp \
- PDFToSVG.hpp \
+ PDFToSVG.hpp PDFToSVG.cpp \
PreScanDVIReader.hpp PreScanDVIReader.cpp \
Process.hpp Process.cpp \
psdefs.cpp \
@@ -147,8 +148,6 @@ libdvisvgm_la_SOURCES = \
ToUnicodeMap.hpp ToUnicodeMap.cpp \
TpicSpecialHandler.hpp TpicSpecialHandler.cpp \
TriangularPatch.hpp TriangularPatch.cpp \
- TrueTypeFont.hpp TrueTypeFont.cpp \
- TTFAutohint.hpp TTFAutohint.cpp \
Unicode.hpp Unicode.cpp \
utility.hpp utility.cpp \
VectorIterator.hpp \
@@ -163,12 +162,12 @@ libdvisvgm_la_SOURCES = \
XXHashFunction.hpp \
ZLibOutputStream.hpp
+libdvisvgm_la_LIBADD = fonts/libbase14fonts.la optimizer/liboptimizer.la
+
if ENABLE_WOFF
-libdvisvgm_la_SOURCES += ffwrapper.c ffwrapper.h
+libdvisvgm_la_LIBADD += ttf/libttf.la
endif
-libdvisvgm_la_LIBADD = optimizer/liboptimizer.la
-
EXTRA_DIST = options.xml options.dtd iapi.h ierrors.h MiKTeXCom.hpp MiKTeXCom.cpp
AM_CFLAGS = -Wall \
@@ -192,24 +191,21 @@ AM_LDFLAGS = \
$(CODE_COVERAGE_LDFLAGS)
if ENABLE_WOFF
-AM_CFLAGS += \
- -I$(dvisvgm_srcdir)/libs/ff-woff/fontforge \
- -I$(dvisvgm_srcdir)/libs/ff-woff/inc
-
AM_CXXFLAGS += $(TTFAUTOHINT_CFLAGS)
AM_CXXFLAGS += \
$(BROTLI_CFLAGS) \
$(WOFF2_CFLAGS)
+AM_LDFLAGS += $(TTFAUTOHINT_LIBS)
+endif
+
if USE_BUNDLED_MD5
AM_CXXFLAGS += -I$(dvisvgm_srcdir)/libs/md5
else
AM_CXXFLAGS += $(LIBCRYPTO_CFLAGS)
endif
-AM_LDFLAGS += $(TTFAUTOHINT_LIBS)
-endif
# the command-line parser class is generated from options.xml by opt2cpp
@@ -225,6 +221,4 @@ $(srcdir)/psdefs.cpp: psdefs.ps
psdefs.ps: ;
-@CODE_COVERAGE_RULES@
-
CLEANFILES = *.gcda *.gcno
diff --git a/dviware/dvisvgm/src/Makefile.in b/dviware/dvisvgm/src/Makefile.in
index 65df7c6162..8ebc8641d3 100644
--- a/dviware/dvisvgm/src/Makefile.in
+++ b/dviware/dvisvgm/src/Makefile.in
@@ -89,32 +89,38 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
bin_PROGRAMS = dvisvgm$(EXEEXT)
@HAVE_BROTLI_FALSE@am__append_1 = -I$(dvisvgm_srcdir)/libs/brotli/include
@HAVE_BROTLI_FALSE@am__append_2 = ../libs/brotli/libbrotli.a
@HAVE_WOFF2_FALSE@am__append_3 = -I$(dvisvgm_srcdir)/libs/woff2/include
@HAVE_WOFF2_FALSE@am__append_4 = ../libs/woff2/libwoff2.a
-@ENABLE_WOFF_TRUE@am__append_5 = \
-@ENABLE_WOFF_TRUE@ ../libs/ff-woff/libfontforge.a \
+@ENABLE_WOFF_TRUE@am__append_5 = ttf
+@ENABLE_WOFF_TRUE@am__append_6 = \
@ENABLE_WOFF_TRUE@ $(WOFF2_LIBS) \
@ENABLE_WOFF_TRUE@ $(BROTLI_LIBS)
-@USE_BUNDLED_MD5_TRUE@am__append_6 = ../libs/md5/libmd5.a
-@USE_BUNDLED_MD5_FALSE@am__append_7 = $(LIBCRYPTO_LIBS)
-@ENABLE_WOFF_TRUE@am__append_8 = ffwrapper.c ffwrapper.h
-@ENABLE_WOFF_TRUE@am__append_9 = \
-@ENABLE_WOFF_TRUE@ -I$(dvisvgm_srcdir)/libs/ff-woff/fontforge \
-@ENABLE_WOFF_TRUE@ -I$(dvisvgm_srcdir)/libs/ff-woff/inc
-
+@USE_BUNDLED_MD5_TRUE@am__append_7 = ../libs/md5/libmd5.a
+@USE_BUNDLED_MD5_FALSE@am__append_8 = $(LIBCRYPTO_LIBS)
+@ENABLE_WOFF_TRUE@am__append_9 = ttf/libttf.la
@ENABLE_WOFF_TRUE@am__append_10 = $(TTFAUTOHINT_CFLAGS) \
@ENABLE_WOFF_TRUE@ $(BROTLI_CFLAGS) $(WOFF2_CFLAGS)
-@ENABLE_WOFF_TRUE@@USE_BUNDLED_MD5_TRUE@am__append_11 = -I$(dvisvgm_srcdir)/libs/md5
-@ENABLE_WOFF_TRUE@@USE_BUNDLED_MD5_FALSE@am__append_12 = $(LIBCRYPTO_CFLAGS)
-@ENABLE_WOFF_TRUE@am__append_13 = $(TTFAUTOHINT_LIBS)
+@ENABLE_WOFF_TRUE@am__append_11 = $(TTFAUTOHINT_LIBS)
+@USE_BUNDLED_MD5_TRUE@am__append_12 = -I$(dvisvgm_srcdir)/libs/md5
+@USE_BUNDLED_MD5_FALSE@am__append_13 = $(LIBCRYPTO_CFLAGS)
subdir = src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -125,74 +131,8 @@ CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
PROGRAMS = $(bin_PROGRAMS)
LTLIBRARIES = $(noinst_LTLIBRARIES)
-libdvisvgm_la_DEPENDENCIES = optimizer/liboptimizer.la
-am__libdvisvgm_la_SOURCES_DIST = AGLTable.hpp BasicDVIReader.hpp \
- BasicDVIReader.cpp Bezier.hpp Bezier.cpp \
- BgColorSpecialHandler.hpp BgColorSpecialHandler.cpp Bitmap.hpp \
- Bitmap.cpp BoundingBox.hpp BoundingBox.cpp Calculator.hpp \
- Calculator.cpp Character.hpp CharMapID.hpp CharMapID.cpp \
- CLCommandLine.hpp CLCommandLine.cpp CMap.hpp CMap.cpp \
- CMapManager.hpp CMapManager.cpp CMapReader.hpp CMapReader.cpp \
- CLOption.hpp Color.hpp Color.cpp ColorSpecialHandler.hpp \
- ColorSpecialHandler.cpp CommandLine.hpp Directory.hpp \
- Directory.cpp DVIActions.hpp DLLoader.hpp DLLoader.cpp \
- DVIReader.hpp DVIReader.cpp DvisvgmSpecialHandler.hpp \
- DvisvgmSpecialHandler.cpp DVIToSVG.hpp DVIToSVG.cpp \
- DVIToSVGActions.hpp DVIToSVGActions.cpp EllipticalArc.hpp \
- EllipticalArc.cpp EmSpecialHandler.hpp EmSpecialHandler.cpp \
- EncFile.hpp EncFile.cpp EPSFile.hpp EPSFile.cpp EPSToSVG.hpp \
- FileFinder.hpp FileFinder.cpp FilePath.hpp FilePath.cpp \
- FileSystem.hpp FileSystem.cpp FixWord.hpp Font.hpp Font.cpp \
- FontCache.hpp FontCache.cpp FontEncoding.hpp FontEncoding.cpp \
- FontEngine.hpp FontEngine.cpp FontManager.hpp FontManager.cpp \
- FontMap.hpp FontMap.cpp FontMetrics.hpp FontMetrics.cpp \
- FontStyle.hpp FontWriter.hpp FontWriter.cpp GFGlyphTracer.hpp \
- GFGlyphTracer.cpp GFReader.hpp GFReader.cpp GFTracer.hpp \
- GFTracer.cpp Ghostscript.hpp Ghostscript.cpp Glyph.hpp \
- GlyphTracerMessages.hpp GraphicsPath.hpp \
- GraphicsPathParser.hpp HashFunction.hpp HashFunction.cpp \
- HtmlSpecialHandler.hpp HtmlSpecialHandler.cpp \
- HyperlinkManager.hpp HyperlinkManager.cpp ImageToSVG.hpp \
- ImageToSVG.cpp InputBuffer.hpp InputBuffer.cpp InputReader.hpp \
- InputReader.cpp JFM.hpp JFM.cpp Length.hpp Length.cpp \
- macros.hpp MapLine.hpp MapLine.cpp Matrix.hpp Matrix.cpp \
- MD5HashFunction.hpp Message.hpp Message.cpp \
- MessageException.hpp MetafontWrapper.hpp MetafontWrapper.cpp \
- NoPsSpecialHandler.hpp NoPsSpecialHandler.cpp \
- NumericRanges.hpp Opacity.hpp Opacity.cpp PageRanges.hpp \
- PageRanges.cpp PageSize.hpp PageSize.cpp Pair.hpp \
- PapersizeSpecialHandler.hpp PapersizeSpecialHandler.cpp \
- PathClipper.hpp PathClipper.cpp PDFParser.hpp PDFParser.cpp \
- PdfSpecialHandler.hpp PdfSpecialHandler.cpp PDFToSVG.hpp \
- PreScanDVIReader.hpp PreScanDVIReader.cpp Process.hpp \
- Process.cpp psdefs.cpp PSFilter.hpp PSInterpreter.hpp \
- PSInterpreter.cpp PSPattern.hpp PSPattern.cpp \
- PSPreviewFilter.hpp PSPreviewFilter.cpp PsSpecialHandler.hpp \
- PsSpecialHandler.cpp RangeMap.hpp RangeMap.cpp \
- ShadingPatch.hpp ShadingPatch.cpp SignalHandler.hpp \
- SignalHandler.cpp SourceInput.hpp SourceInput.cpp \
- SpecialActions.hpp SpecialHandler.hpp SpecialManager.hpp \
- SpecialManager.cpp StreamReader.hpp StreamReader.cpp \
- StreamWriter.hpp StreamWriter.cpp Subfont.hpp Subfont.cpp \
- SVGCharHandler.hpp SVGCharHandler.cpp \
- SVGCharHandlerFactory.hpp SVGCharHandlerFactory.cpp \
- SVGCharPathHandler.hpp SVGCharPathHandler.cpp \
- SVGCharTspanTextHandler.hpp SVGCharTspanTextHandler.cpp \
- SVGElement.hpp SVGElement.cpp SVGOutput.hpp SVGOutput.cpp \
- SVGSingleCharTextHandler.hpp SVGSingleCharTextHandler.cpp \
- SVGTree.hpp SVGTree.cpp System.hpp System.cpp \
- TensorProductPatch.hpp TensorProductPatch.cpp Terminal.hpp \
- Terminal.cpp TFM.hpp TFM.cpp ToUnicodeMap.hpp ToUnicodeMap.cpp \
- TpicSpecialHandler.hpp TpicSpecialHandler.cpp \
- TriangularPatch.hpp TriangularPatch.cpp TrueTypeFont.hpp \
- TrueTypeFont.cpp TTFAutohint.hpp TTFAutohint.cpp Unicode.hpp \
- Unicode.cpp utility.hpp utility.cpp VectorIterator.hpp \
- VectorStream.hpp VFActions.hpp VFReader.hpp VFReader.cpp \
- windows.hpp XMLDocument.hpp XMLDocument.cpp XMLNode.hpp \
- XMLNode.cpp XMLParser.hpp XMLParser.cpp XMLString.hpp \
- XMLString.cpp XXHashFunction.hpp ZLibOutputStream.hpp \
- ffwrapper.c ffwrapper.h
-@ENABLE_WOFF_TRUE@am__objects_1 = ffwrapper.lo
+libdvisvgm_la_DEPENDENCIES = fonts/libbase14fonts.la \
+ optimizer/liboptimizer.la $(am__append_9)
am_libdvisvgm_la_OBJECTS = BasicDVIReader.lo Bezier.lo \
BgColorSpecialHandler.lo Bitmap.lo BoundingBox.lo \
Calculator.lo CharMapID.lo CLCommandLine.lo CMap.lo \
@@ -208,19 +148,19 @@ am_libdvisvgm_la_OBJECTS = BasicDVIReader.lo Bezier.lo \
InputReader.lo JFM.lo Length.lo MapLine.lo Matrix.lo \
Message.lo MetafontWrapper.lo NoPsSpecialHandler.lo Opacity.lo \
PageRanges.lo PageSize.lo PapersizeSpecialHandler.lo \
- PathClipper.lo PDFParser.lo PdfSpecialHandler.lo \
- PreScanDVIReader.lo Process.lo psdefs.lo PSInterpreter.lo \
- PSPattern.lo PSPreviewFilter.lo PsSpecialHandler.lo \
- RangeMap.lo ShadingPatch.lo SignalHandler.lo SourceInput.lo \
- SpecialManager.lo StreamReader.lo StreamWriter.lo Subfont.lo \
- SVGCharHandler.lo SVGCharHandlerFactory.lo \
- SVGCharPathHandler.lo SVGCharTspanTextHandler.lo SVGElement.lo \
- SVGOutput.lo SVGSingleCharTextHandler.lo SVGTree.lo System.lo \
+ PathClipper.lo PDFHandler.lo PDFParser.lo PdfSpecialHandler.lo \
+ PDFToSVG.lo PreScanDVIReader.lo Process.lo psdefs.lo \
+ PSInterpreter.lo PSPattern.lo PSPreviewFilter.lo \
+ PsSpecialHandler.lo RangeMap.lo ShadingPatch.lo \
+ SignalHandler.lo SourceInput.lo SpecialManager.lo \
+ StreamReader.lo StreamWriter.lo Subfont.lo SVGCharHandler.lo \
+ SVGCharHandlerFactory.lo SVGCharPathHandler.lo \
+ SVGCharTspanTextHandler.lo SVGElement.lo SVGOutput.lo \
+ SVGSingleCharTextHandler.lo SVGTree.lo System.lo \
TensorProductPatch.lo Terminal.lo TFM.lo ToUnicodeMap.lo \
- TpicSpecialHandler.lo TriangularPatch.lo TrueTypeFont.lo \
- TTFAutohint.lo Unicode.lo utility.lo VFReader.lo \
- XMLDocument.lo XMLNode.lo XMLParser.lo XMLString.lo \
- $(am__objects_1)
+ TpicSpecialHandler.lo TriangularPatch.lo Unicode.lo utility.lo \
+ VFReader.lo XMLDocument.lo XMLNode.lo XMLParser.lo \
+ XMLString.lo
libdvisvgm_la_OBJECTS = $(am_libdvisvgm_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@@ -231,8 +171,8 @@ dvisvgm_OBJECTS = $(am_dvisvgm_OBJECTS)
am__DEPENDENCIES_1 =
am__DEPENDENCIES_2 = $(am__append_4)
am__DEPENDENCIES_3 = $(am__append_2)
-@ENABLE_WOFF_TRUE@am__DEPENDENCIES_4 = ../libs/ff-woff/libfontforge.a \
-@ENABLE_WOFF_TRUE@ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3)
+@ENABLE_WOFF_TRUE@am__DEPENDENCIES_4 = $(am__DEPENDENCIES_2) \
+@ENABLE_WOFF_TRUE@ $(am__DEPENDENCIES_3)
@USE_BUNDLED_MD5_FALSE@am__DEPENDENCIES_5 = $(am__DEPENDENCIES_1)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
@@ -277,7 +217,8 @@ am__depfiles_remade = ./$(DEPDIR)/BasicDVIReader.Plo \
./$(DEPDIR)/MapLine.Plo ./$(DEPDIR)/Matrix.Plo \
./$(DEPDIR)/Message.Plo ./$(DEPDIR)/MetafontWrapper.Plo \
./$(DEPDIR)/NoPsSpecialHandler.Plo ./$(DEPDIR)/Opacity.Plo \
- ./$(DEPDIR)/PDFParser.Plo ./$(DEPDIR)/PSInterpreter.Plo \
+ ./$(DEPDIR)/PDFHandler.Plo ./$(DEPDIR)/PDFParser.Plo \
+ ./$(DEPDIR)/PDFToSVG.Plo ./$(DEPDIR)/PSInterpreter.Plo \
./$(DEPDIR)/PSPattern.Plo ./$(DEPDIR)/PSPreviewFilter.Plo \
./$(DEPDIR)/PageRanges.Plo ./$(DEPDIR)/PageSize.Plo \
./$(DEPDIR)/PapersizeSpecialHandler.Plo \
@@ -295,34 +236,15 @@ am__depfiles_remade = ./$(DEPDIR)/BasicDVIReader.Plo \
./$(DEPDIR)/SpecialManager.Plo ./$(DEPDIR)/StreamReader.Plo \
./$(DEPDIR)/StreamWriter.Plo ./$(DEPDIR)/Subfont.Plo \
./$(DEPDIR)/System.Plo ./$(DEPDIR)/TFM.Plo \
- ./$(DEPDIR)/TTFAutohint.Plo ./$(DEPDIR)/TensorProductPatch.Plo \
- ./$(DEPDIR)/Terminal.Plo ./$(DEPDIR)/ToUnicodeMap.Plo \
+ ./$(DEPDIR)/TensorProductPatch.Plo ./$(DEPDIR)/Terminal.Plo \
+ ./$(DEPDIR)/ToUnicodeMap.Plo \
./$(DEPDIR)/TpicSpecialHandler.Plo \
- ./$(DEPDIR)/TriangularPatch.Plo ./$(DEPDIR)/TrueTypeFont.Plo \
- ./$(DEPDIR)/Unicode.Plo ./$(DEPDIR)/VFReader.Plo \
- ./$(DEPDIR)/XMLDocument.Plo ./$(DEPDIR)/XMLNode.Plo \
- ./$(DEPDIR)/XMLParser.Plo ./$(DEPDIR)/XMLString.Plo \
- ./$(DEPDIR)/dvisvgm.Po ./$(DEPDIR)/ffwrapper.Plo \
+ ./$(DEPDIR)/TriangularPatch.Plo ./$(DEPDIR)/Unicode.Plo \
+ ./$(DEPDIR)/VFReader.Plo ./$(DEPDIR)/XMLDocument.Plo \
+ ./$(DEPDIR)/XMLNode.Plo ./$(DEPDIR)/XMLParser.Plo \
+ ./$(DEPDIR)/XMLString.Plo ./$(DEPDIR)/dvisvgm.Po \
./$(DEPDIR)/psdefs.Plo ./$(DEPDIR)/utility.Plo
am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
- $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
- $(AM_CFLAGS) $(CFLAGS)
-AM_V_CC = $(am__v_CC_@AM_V@)
-am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
-am__v_CC_0 = @echo " CC " $@;
-am__v_CC_1 =
-CCLD = $(CC)
-LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-AM_V_CCLD = $(am__v_CCLD_@AM_V@)
-am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
-am__v_CCLD_0 = @echo " CCLD " $@;
-am__v_CCLD_1 =
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
@@ -341,8 +263,26 @@ AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo " CC " $@;
+am__v_CC_1 =
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
SOURCES = $(libdvisvgm_la_SOURCES) $(dvisvgm_SOURCES)
-DIST_SOURCES = $(am__libdvisvgm_la_SOURCES_DIST) $(dvisvgm_SOURCES)
+DIST_SOURCES = $(libdvisvgm_la_SOURCES) $(dvisvgm_SOURCES)
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
ctags-recursive dvi-recursive html-recursive info-recursive \
install-data-recursive install-dvi-recursive \
@@ -381,7 +321,7 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
-DIST_SUBDIRS = $(SUBDIRS)
+DIST_SUBDIRS = fonts optimizer ttf
am__DIST_COMMON = $(srcdir)/../libs/defs.am $(srcdir)/Makefile.in \
$(srcdir)/version.hpp.in $(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -414,7 +354,7 @@ ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_CPPFLAGS = @AM_CPPFLAGS@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
-AM_LDFLAGS = $(KPSE_LIBS) $(CODE_COVERAGE_LDFLAGS) $(am__append_13)
+AM_LDFLAGS = $(KPSE_LIBS) $(CODE_COVERAGE_LDFLAGS) $(am__append_11)
AR = @AR@
ASCIIDOC = @ASCIIDOC@
AUTOCONF = @AUTOCONF@
@@ -430,7 +370,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -546,6 +485,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -565,16 +506,12 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
noinst_LTLIBRARIES = libdvisvgm.la
-SUBDIRS = optimizer
+SUBDIRS = fonts optimizer ttf $(am__append_5)
dvisvgm_SOURCES = \
CommandLine.hpp \
dvisvgm.cpp
@@ -584,91 +521,152 @@ dvisvgm_SOURCES = \
@HAVE_XXHASH_FALSE@XXHASH_CFLAGS = -I$(dvisvgm_srcdir)/libs/xxHash
@HAVE_XXHASH_FALSE@XXHASH_LIBS = ../libs/xxHash/libxxhash.a
dvisvgm_LDADD = $(noinst_LTLIBRARIES) ../libs/clipper/libclipper.a \
- $(FREETYPE_LIBS) $(FONTFORGE_LIBS) $(POTRACE_LIBS) \
- $(XXHASH_LIBS) $(ZLIB_LIBS) $(am__append_5) $(am__append_6) \
- $(am__append_7)
+ $(FREETYPE_LIBS) $(POTRACE_LIBS) $(XXHASH_LIBS) $(ZLIB_LIBS) \
+ $(am__append_6) $(am__append_7) $(am__append_8)
dvisvgm_DEPENDENCIES = $(noinst_LTLIBRARIES)
-libdvisvgm_la_SOURCES = AGLTable.hpp BasicDVIReader.hpp \
- BasicDVIReader.cpp Bezier.hpp Bezier.cpp \
- BgColorSpecialHandler.hpp BgColorSpecialHandler.cpp Bitmap.hpp \
- Bitmap.cpp BoundingBox.hpp BoundingBox.cpp Calculator.hpp \
- Calculator.cpp Character.hpp CharMapID.hpp CharMapID.cpp \
- CLCommandLine.hpp CLCommandLine.cpp CMap.hpp CMap.cpp \
- CMapManager.hpp CMapManager.cpp CMapReader.hpp CMapReader.cpp \
- CLOption.hpp Color.hpp Color.cpp ColorSpecialHandler.hpp \
- ColorSpecialHandler.cpp CommandLine.hpp Directory.hpp \
- Directory.cpp DVIActions.hpp DLLoader.hpp DLLoader.cpp \
- DVIReader.hpp DVIReader.cpp DvisvgmSpecialHandler.hpp \
- DvisvgmSpecialHandler.cpp DVIToSVG.hpp DVIToSVG.cpp \
- DVIToSVGActions.hpp DVIToSVGActions.cpp EllipticalArc.hpp \
- EllipticalArc.cpp EmSpecialHandler.hpp EmSpecialHandler.cpp \
- EncFile.hpp EncFile.cpp EPSFile.hpp EPSFile.cpp EPSToSVG.hpp \
- FileFinder.hpp FileFinder.cpp FilePath.hpp FilePath.cpp \
- FileSystem.hpp FileSystem.cpp FixWord.hpp Font.hpp Font.cpp \
- FontCache.hpp FontCache.cpp FontEncoding.hpp FontEncoding.cpp \
- FontEngine.hpp FontEngine.cpp FontManager.hpp FontManager.cpp \
- FontMap.hpp FontMap.cpp FontMetrics.hpp FontMetrics.cpp \
- FontStyle.hpp FontWriter.hpp FontWriter.cpp GFGlyphTracer.hpp \
- GFGlyphTracer.cpp GFReader.hpp GFReader.cpp GFTracer.hpp \
- GFTracer.cpp Ghostscript.hpp Ghostscript.cpp Glyph.hpp \
- GlyphTracerMessages.hpp GraphicsPath.hpp \
- GraphicsPathParser.hpp HashFunction.hpp HashFunction.cpp \
- HtmlSpecialHandler.hpp HtmlSpecialHandler.cpp \
- HyperlinkManager.hpp HyperlinkManager.cpp ImageToSVG.hpp \
- ImageToSVG.cpp InputBuffer.hpp InputBuffer.cpp InputReader.hpp \
- InputReader.cpp JFM.hpp JFM.cpp Length.hpp Length.cpp \
- macros.hpp MapLine.hpp MapLine.cpp Matrix.hpp Matrix.cpp \
- MD5HashFunction.hpp Message.hpp Message.cpp \
- MessageException.hpp MetafontWrapper.hpp MetafontWrapper.cpp \
- NoPsSpecialHandler.hpp NoPsSpecialHandler.cpp \
- NumericRanges.hpp Opacity.hpp Opacity.cpp PageRanges.hpp \
- PageRanges.cpp PageSize.hpp PageSize.cpp Pair.hpp \
- PapersizeSpecialHandler.hpp PapersizeSpecialHandler.cpp \
- PathClipper.hpp PathClipper.cpp PDFParser.hpp PDFParser.cpp \
- PdfSpecialHandler.hpp PdfSpecialHandler.cpp PDFToSVG.hpp \
- PreScanDVIReader.hpp PreScanDVIReader.cpp Process.hpp \
- Process.cpp psdefs.cpp PSFilter.hpp PSInterpreter.hpp \
- PSInterpreter.cpp PSPattern.hpp PSPattern.cpp \
- PSPreviewFilter.hpp PSPreviewFilter.cpp PsSpecialHandler.hpp \
- PsSpecialHandler.cpp RangeMap.hpp RangeMap.cpp \
- ShadingPatch.hpp ShadingPatch.cpp SignalHandler.hpp \
- SignalHandler.cpp SourceInput.hpp SourceInput.cpp \
- SpecialActions.hpp SpecialHandler.hpp SpecialManager.hpp \
- SpecialManager.cpp StreamReader.hpp StreamReader.cpp \
- StreamWriter.hpp StreamWriter.cpp Subfont.hpp Subfont.cpp \
- SVGCharHandler.hpp SVGCharHandler.cpp \
- SVGCharHandlerFactory.hpp SVGCharHandlerFactory.cpp \
- SVGCharPathHandler.hpp SVGCharPathHandler.cpp \
- SVGCharTspanTextHandler.hpp SVGCharTspanTextHandler.cpp \
- SVGElement.hpp SVGElement.cpp SVGOutput.hpp SVGOutput.cpp \
+libdvisvgm_la_SOURCES = \
+ AGLTable.hpp \
+ BasicDVIReader.hpp BasicDVIReader.cpp \
+ Bezier.hpp Bezier.cpp \
+ BgColorSpecialHandler.hpp BgColorSpecialHandler.cpp \
+ Bitmap.hpp Bitmap.cpp \
+ BoundingBox.hpp BoundingBox.cpp \
+ Calculator.hpp Calculator.cpp \
+ Character.hpp \
+ CharMapID.hpp CharMapID.cpp \
+ CLCommandLine.hpp CLCommandLine.cpp \
+ CMap.hpp CMap.cpp \
+ CMapManager.hpp CMapManager.cpp \
+ CMapReader.hpp CMapReader.cpp \
+ CLOption.hpp \
+ Color.hpp Color.cpp \
+ ColorSpecialHandler.hpp ColorSpecialHandler.cpp \
+ CommandLine.hpp \
+ Directory.hpp Directory.cpp \
+ DVIActions.hpp \
+ DLLoader.hpp DLLoader.cpp \
+ DVIReader.hpp DVIReader.cpp \
+ DvisvgmSpecialHandler.hpp DvisvgmSpecialHandler.cpp \
+ DVIToSVG.hpp DVIToSVG.cpp \
+ DVIToSVGActions.hpp DVIToSVGActions.cpp \
+ EllipticalArc.hpp EllipticalArc.cpp \
+ EmSpecialHandler.hpp EmSpecialHandler.cpp \
+ EncFile.hpp EncFile.cpp \
+ EPSFile.hpp EPSFile.cpp \
+ EPSToSVG.hpp \
+ FileFinder.hpp FileFinder.cpp \
+ FilePath.hpp FilePath.cpp \
+ FileSystem.hpp FileSystem.cpp \
+ FixWord.hpp \
+ Font.hpp Font.cpp \
+ FontCache.hpp FontCache.cpp \
+ FontEncoding.hpp FontEncoding.cpp \
+ FontEngine.hpp FontEngine.cpp \
+ FontManager.hpp FontManager.cpp \
+ FontMap.hpp FontMap.cpp \
+ FontMetrics.hpp FontMetrics.cpp \
+ FontStyle.hpp \
+ FontWriter.hpp FontWriter.cpp \
+ GFGlyphTracer.hpp GFGlyphTracer.cpp \
+ GFReader.hpp GFReader.cpp \
+ GFTracer.hpp GFTracer.cpp \
+ Ghostscript.hpp Ghostscript.cpp \
+ Glyph.hpp \
+ GlyphTracerMessages.hpp \
+ GraphicsPath.hpp \
+ GraphicsPathParser.hpp \
+ HashFunction.hpp HashFunction.cpp \
+ HtmlSpecialHandler.hpp HtmlSpecialHandler.cpp \
+ HyperlinkManager.hpp HyperlinkManager.cpp \
+ ImageToSVG.hpp ImageToSVG.cpp \
+ InputBuffer.hpp InputBuffer.cpp \
+ InputReader.hpp InputReader.cpp \
+ JFM.hpp JFM.cpp \
+ Length.hpp Length.cpp \
+ macros.hpp \
+ MapLine.hpp MapLine.cpp \
+ Matrix.hpp Matrix.cpp \
+ MD5HashFunction.hpp \
+ Message.hpp Message.cpp \
+ MessageException.hpp \
+ MetafontWrapper.hpp MetafontWrapper.cpp \
+ NoPsSpecialHandler.hpp NoPsSpecialHandler.cpp \
+ NumericRanges.hpp \
+ Opacity.hpp Opacity.cpp \
+ PageRanges.hpp PageRanges.cpp \
+ PageSize.hpp PageSize.cpp \
+ Pair.hpp \
+ PapersizeSpecialHandler.hpp PapersizeSpecialHandler.cpp \
+ PathClipper.hpp PathClipper.cpp \
+ PDFHandler.hpp PDFHandler.cpp \
+ PDFParser.hpp PDFParser.cpp \
+ PdfSpecialHandler.hpp PdfSpecialHandler.cpp \
+ PDFToSVG.hpp PDFToSVG.cpp \
+ PreScanDVIReader.hpp PreScanDVIReader.cpp \
+ Process.hpp Process.cpp \
+ psdefs.cpp \
+ PSFilter.hpp \
+ PSInterpreter.hpp PSInterpreter.cpp \
+ PSPattern.hpp PSPattern.cpp \
+ PSPreviewFilter.hpp PSPreviewFilter.cpp \
+ PsSpecialHandler.hpp PsSpecialHandler.cpp \
+ RangeMap.hpp RangeMap.cpp \
+ ShadingPatch.hpp ShadingPatch.cpp \
+ SignalHandler.hpp SignalHandler.cpp \
+ SourceInput.hpp SourceInput.cpp \
+ SpecialActions.hpp \
+ SpecialHandler.hpp \
+ SpecialManager.hpp SpecialManager.cpp \
+ StreamReader.hpp StreamReader.cpp \
+ StreamWriter.hpp StreamWriter.cpp \
+ Subfont.hpp Subfont.cpp \
+ SVGCharHandler.hpp SVGCharHandler.cpp \
+ SVGCharHandlerFactory.hpp SVGCharHandlerFactory.cpp \
+ SVGCharPathHandler.hpp SVGCharPathHandler.cpp \
+ SVGCharTspanTextHandler.hpp SVGCharTspanTextHandler.cpp \
+ SVGElement.hpp SVGElement.cpp \
+ SVGOutput.hpp SVGOutput.cpp \
SVGSingleCharTextHandler.hpp SVGSingleCharTextHandler.cpp \
- SVGTree.hpp SVGTree.cpp System.hpp System.cpp \
- TensorProductPatch.hpp TensorProductPatch.cpp Terminal.hpp \
- Terminal.cpp TFM.hpp TFM.cpp ToUnicodeMap.hpp ToUnicodeMap.cpp \
- TpicSpecialHandler.hpp TpicSpecialHandler.cpp \
- TriangularPatch.hpp TriangularPatch.cpp TrueTypeFont.hpp \
- TrueTypeFont.cpp TTFAutohint.hpp TTFAutohint.cpp Unicode.hpp \
- Unicode.cpp utility.hpp utility.cpp VectorIterator.hpp \
- VectorStream.hpp VFActions.hpp VFReader.hpp VFReader.cpp \
- windows.hpp XMLDocument.hpp XMLDocument.cpp XMLNode.hpp \
- XMLNode.cpp XMLParser.hpp XMLParser.cpp XMLString.hpp \
- XMLString.cpp XXHashFunction.hpp ZLibOutputStream.hpp \
- $(am__append_8)
-libdvisvgm_la_LIBADD = optimizer/liboptimizer.la
+ SVGTree.hpp SVGTree.cpp \
+ System.hpp System.cpp \
+ TensorProductPatch.hpp TensorProductPatch.cpp \
+ Terminal.hpp Terminal.cpp \
+ TFM.hpp TFM.cpp \
+ ToUnicodeMap.hpp ToUnicodeMap.cpp \
+ TpicSpecialHandler.hpp TpicSpecialHandler.cpp \
+ TriangularPatch.hpp TriangularPatch.cpp \
+ Unicode.hpp Unicode.cpp \
+ utility.hpp utility.cpp \
+ VectorIterator.hpp \
+ VectorStream.hpp \
+ VFActions.hpp \
+ VFReader.hpp VFReader.cpp \
+ windows.hpp \
+ XMLDocument.hpp XMLDocument.cpp \
+ XMLNode.hpp XMLNode.cpp \
+ XMLParser.hpp XMLParser.cpp \
+ XMLString.hpp XMLString.cpp \
+ XXHashFunction.hpp \
+ ZLibOutputStream.hpp
+
+libdvisvgm_la_LIBADD = fonts/libbase14fonts.la \
+ optimizer/liboptimizer.la $(am__append_9)
EXTRA_DIST = options.xml options.dtd iapi.h ierrors.h MiKTeXCom.hpp MiKTeXCom.cpp
-AM_CFLAGS = -Wall $(ZLIB_CFLAGS) $(CODE_COVERAGE_CFLAGS) \
- $(am__append_9)
+AM_CFLAGS = -Wall \
+ $(ZLIB_CFLAGS) \
+ $(CODE_COVERAGE_CFLAGS)
+
AM_CXXFLAGS = -Wall -Wnon-virtual-dtor \
-I$(dvisvgm_srcdir)/libs/clipper \
-I$(dvisvgm_srcdir)/libs/variant/include $(KPSE_CFLAGS) \
$(FREETYPE_CFLAGS) $(ZLIB_CFLAGS) $(CODE_COVERAGE_CFLAGS) \
$(POTRACE_CFLAGS) $(XXHASH_CFLAGS) $(am__append_10) \
- $(am__append_11) $(am__append_12)
+ $(am__append_12) $(am__append_13)
CLEANFILES = *.gcda *.gcno
all: all-recursive
.SUFFIXES:
-.SUFFIXES: .c .cpp .lo .o .obj
+.SUFFIXES: .cpp .lo .o .obj
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/../libs/defs.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
@@ -678,9 +676,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/../libs/defs.am $(am__co
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu src/Makefile
+ $(AUTOMAKE) --foreign src/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -827,7 +825,9 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MetafontWrapper.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NoPsSpecialHandler.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Opacity.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PDFHandler.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PDFParser.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PDFToSVG.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PSInterpreter.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PSPattern.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PSPreviewFilter.Plo@am__quote@ # am--include-marker
@@ -857,13 +857,11 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Subfont.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/System.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TFM.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TTFAutohint.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TensorProductPatch.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Terminal.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ToUnicodeMap.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TpicSpecialHandler.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TriangularPatch.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TrueTypeFont.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Unicode.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/VFReader.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/XMLDocument.Plo@am__quote@ # am--include-marker
@@ -871,7 +869,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/XMLParser.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/XMLString.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dvisvgm.Po@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ffwrapper.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/psdefs.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utility.Plo@am__quote@ # am--include-marker
@@ -881,30 +878,6 @@ $(am__depfiles_remade):
am--depfiles: $(am__depfiles_remade)
-.c.o:
-@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
-@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
-
-.c.obj:
-@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
-@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-
-.c.lo:
-@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
-@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
-@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
-
.cpp.o:
@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
@@ -1188,7 +1161,9 @@ distclean: distclean-recursive
-rm -f ./$(DEPDIR)/MetafontWrapper.Plo
-rm -f ./$(DEPDIR)/NoPsSpecialHandler.Plo
-rm -f ./$(DEPDIR)/Opacity.Plo
+ -rm -f ./$(DEPDIR)/PDFHandler.Plo
-rm -f ./$(DEPDIR)/PDFParser.Plo
+ -rm -f ./$(DEPDIR)/PDFToSVG.Plo
-rm -f ./$(DEPDIR)/PSInterpreter.Plo
-rm -f ./$(DEPDIR)/PSPattern.Plo
-rm -f ./$(DEPDIR)/PSPreviewFilter.Plo
@@ -1218,13 +1193,11 @@ distclean: distclean-recursive
-rm -f ./$(DEPDIR)/Subfont.Plo
-rm -f ./$(DEPDIR)/System.Plo
-rm -f ./$(DEPDIR)/TFM.Plo
- -rm -f ./$(DEPDIR)/TTFAutohint.Plo
-rm -f ./$(DEPDIR)/TensorProductPatch.Plo
-rm -f ./$(DEPDIR)/Terminal.Plo
-rm -f ./$(DEPDIR)/ToUnicodeMap.Plo
-rm -f ./$(DEPDIR)/TpicSpecialHandler.Plo
-rm -f ./$(DEPDIR)/TriangularPatch.Plo
- -rm -f ./$(DEPDIR)/TrueTypeFont.Plo
-rm -f ./$(DEPDIR)/Unicode.Plo
-rm -f ./$(DEPDIR)/VFReader.Plo
-rm -f ./$(DEPDIR)/XMLDocument.Plo
@@ -1232,7 +1205,6 @@ distclean: distclean-recursive
-rm -f ./$(DEPDIR)/XMLParser.Plo
-rm -f ./$(DEPDIR)/XMLString.Plo
-rm -f ./$(DEPDIR)/dvisvgm.Po
- -rm -f ./$(DEPDIR)/ffwrapper.Plo
-rm -f ./$(DEPDIR)/psdefs.Plo
-rm -f ./$(DEPDIR)/utility.Plo
-rm -f Makefile
@@ -1332,7 +1304,9 @@ maintainer-clean: maintainer-clean-recursive
-rm -f ./$(DEPDIR)/MetafontWrapper.Plo
-rm -f ./$(DEPDIR)/NoPsSpecialHandler.Plo
-rm -f ./$(DEPDIR)/Opacity.Plo
+ -rm -f ./$(DEPDIR)/PDFHandler.Plo
-rm -f ./$(DEPDIR)/PDFParser.Plo
+ -rm -f ./$(DEPDIR)/PDFToSVG.Plo
-rm -f ./$(DEPDIR)/PSInterpreter.Plo
-rm -f ./$(DEPDIR)/PSPattern.Plo
-rm -f ./$(DEPDIR)/PSPreviewFilter.Plo
@@ -1362,13 +1336,11 @@ maintainer-clean: maintainer-clean-recursive
-rm -f ./$(DEPDIR)/Subfont.Plo
-rm -f ./$(DEPDIR)/System.Plo
-rm -f ./$(DEPDIR)/TFM.Plo
- -rm -f ./$(DEPDIR)/TTFAutohint.Plo
-rm -f ./$(DEPDIR)/TensorProductPatch.Plo
-rm -f ./$(DEPDIR)/Terminal.Plo
-rm -f ./$(DEPDIR)/ToUnicodeMap.Plo
-rm -f ./$(DEPDIR)/TpicSpecialHandler.Plo
-rm -f ./$(DEPDIR)/TriangularPatch.Plo
- -rm -f ./$(DEPDIR)/TrueTypeFont.Plo
-rm -f ./$(DEPDIR)/Unicode.Plo
-rm -f ./$(DEPDIR)/VFReader.Plo
-rm -f ./$(DEPDIR)/XMLDocument.Plo
@@ -1376,7 +1348,6 @@ maintainer-clean: maintainer-clean-recursive
-rm -f ./$(DEPDIR)/XMLParser.Plo
-rm -f ./$(DEPDIR)/XMLString.Plo
-rm -f ./$(DEPDIR)/dvisvgm.Po
- -rm -f ./$(DEPDIR)/ffwrapper.Plo
-rm -f ./$(DEPDIR)/psdefs.Plo
-rm -f ./$(DEPDIR)/utility.Plo
-rm -f Makefile
@@ -1431,8 +1402,6 @@ $(srcdir)/psdefs.cpp: psdefs.ps
psdefs.ps: ;
-@CODE_COVERAGE_RULES@
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/dviware/dvisvgm/src/MapLine.cpp b/dviware/dvisvgm/src/MapLine.cpp
index 0c432cab23..3455e1f243 100644
--- a/dviware/dvisvgm/src/MapLine.cpp
+++ b/dviware/dvisvgm/src/MapLine.cpp
@@ -2,7 +2,7 @@
** MapLine.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/MapLine.hpp b/dviware/dvisvgm/src/MapLine.hpp
index 569472d14c..ddde94f9b0 100644
--- a/dviware/dvisvgm/src/MapLine.hpp
+++ b/dviware/dvisvgm/src/MapLine.hpp
@@ -2,7 +2,7 @@
** MapLine.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Matrix.cpp b/dviware/dvisvgm/src/Matrix.cpp
index 7e335cef2c..2be2ebb0ed 100644
--- a/dviware/dvisvgm/src/Matrix.cpp
+++ b/dviware/dvisvgm/src/Matrix.cpp
@@ -2,7 +2,7 @@
** Matrix.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -85,6 +85,17 @@ Matrix::Matrix (const std::vector<double> &v, int start) {
}
+Matrix::Matrix (const string &svgMatrix) {
+ istringstream iss(svgMatrix);
+ for (int col=0; col < 3; col++) {
+ for (int row=0; row < 2; row++)
+ iss >> _values[row][col];
+ _values[2][col] = 0;
+ }
+ _values[2][2] = 1;
+}
+
+
Matrix::Matrix (const string &cmds, Calculator &calc) {
*this = parse(cmds, calc);
}
@@ -261,9 +272,17 @@ Matrix& Matrix::invert () {
Matrix& Matrix::operator *= (double c) {
- for (int i=0; i < 3; i++)
- for (int j=0; j < 3; j++)
- _values[i][j] *= c;
+ for (auto &row : _values)
+ for (auto &val : row)
+ val *= c;
+ return *this;
+}
+
+
+Matrix& Matrix::operator /= (double c) {
+ for (auto &row : _values)
+ for (auto &val : row)
+ val /= c;
return *this;
}
diff --git a/dviware/dvisvgm/src/Matrix.hpp b/dviware/dvisvgm/src/Matrix.hpp
index f9b6552dd3..140d0f0e0e 100644
--- a/dviware/dvisvgm/src/Matrix.hpp
+++ b/dviware/dvisvgm/src/Matrix.hpp
@@ -2,7 +2,7 @@
** Matrix.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -43,9 +43,10 @@ class Matrix {
Matrix () {set(0);}
Matrix (double d);
Matrix (const std::string &cmds, Calculator &calc);
+ explicit Matrix (const std::string &svgMatrix);
explicit Matrix (const double *v, unsigned size=9);
explicit Matrix (const std::vector<double> &v, int start=0);
- explicit Matrix (std::initializer_list<double> initlist);
+ Matrix (std::initializer_list<double> initlist);
Matrix& set (double d);
Matrix& set (const double *v, unsigned size);
Matrix& set (const std::vector<double> &v, int start=0);
@@ -66,6 +67,7 @@ class Matrix {
Matrix& yskewByRatio (double xyratio);
Matrix& flip (bool h, double a);
Matrix& operator *= (double c);
+ Matrix& operator /= (double c);
DPair operator * (const DPair &p) const;
bool operator == (const Matrix &m) const;
bool operator != (const Matrix &m) const;
diff --git a/dviware/dvisvgm/src/Message.cpp b/dviware/dvisvgm/src/Message.cpp
index dc8a8a7871..8ff4563974 100644
--- a/dviware/dvisvgm/src/Message.cpp
+++ b/dviware/dvisvgm/src/Message.cpp
@@ -2,7 +2,7 @@
** Message.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Message.hpp b/dviware/dvisvgm/src/Message.hpp
index e552458d70..a2b8a3e412 100644
--- a/dviware/dvisvgm/src/Message.hpp
+++ b/dviware/dvisvgm/src/Message.hpp
@@ -2,7 +2,7 @@
** Message.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/MessageException.hpp b/dviware/dvisvgm/src/MessageException.hpp
index 2baa4d98fe..18721badcd 100644
--- a/dviware/dvisvgm/src/MessageException.hpp
+++ b/dviware/dvisvgm/src/MessageException.hpp
@@ -2,7 +2,7 @@
** MessageException.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/MetafontWrapper.cpp b/dviware/dvisvgm/src/MetafontWrapper.cpp
index 03c3e2b5ef..d20a61fff0 100644
--- a/dviware/dvisvgm/src/MetafontWrapper.cpp
+++ b/dviware/dvisvgm/src/MetafontWrapper.cpp
@@ -2,7 +2,7 @@
** MetafontWrapper.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/MetafontWrapper.hpp b/dviware/dvisvgm/src/MetafontWrapper.hpp
index cb54bba6a7..e6fd81acdd 100644
--- a/dviware/dvisvgm/src/MetafontWrapper.hpp
+++ b/dviware/dvisvgm/src/MetafontWrapper.hpp
@@ -2,7 +2,7 @@
** MetafontWrapper.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/MiKTeXCom.cpp b/dviware/dvisvgm/src/MiKTeXCom.cpp
index 6f9d6f6e13..c44b4c688d 100644
--- a/dviware/dvisvgm/src/MiKTeXCom.cpp
+++ b/dviware/dvisvgm/src/MiKTeXCom.cpp
@@ -2,7 +2,7 @@
** MiKTeXCom.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/MiKTeXCom.hpp b/dviware/dvisvgm/src/MiKTeXCom.hpp
index b4d56b0365..48b7334d2c 100644
--- a/dviware/dvisvgm/src/MiKTeXCom.hpp
+++ b/dviware/dvisvgm/src/MiKTeXCom.hpp
@@ -2,7 +2,7 @@
** MiKTeXCom.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/NoPsSpecialHandler.cpp b/dviware/dvisvgm/src/NoPsSpecialHandler.cpp
index 769dcabb91..2c17e30690 100644
--- a/dviware/dvisvgm/src/NoPsSpecialHandler.cpp
+++ b/dviware/dvisvgm/src/NoPsSpecialHandler.cpp
@@ -2,7 +2,7 @@
** NoPsSpecialHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/NoPsSpecialHandler.hpp b/dviware/dvisvgm/src/NoPsSpecialHandler.hpp
index 099320fb9f..f7132d2c75 100644
--- a/dviware/dvisvgm/src/NoPsSpecialHandler.hpp
+++ b/dviware/dvisvgm/src/NoPsSpecialHandler.hpp
@@ -2,7 +2,7 @@
** NoPsSpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/NumericRanges.hpp b/dviware/dvisvgm/src/NumericRanges.hpp
index 6c0015609d..8e83766411 100644
--- a/dviware/dvisvgm/src/NumericRanges.hpp
+++ b/dviware/dvisvgm/src/NumericRanges.hpp
@@ -2,7 +2,7 @@
** NumericRanges.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Opacity.cpp b/dviware/dvisvgm/src/Opacity.cpp
index 058f794a86..027992028b 100644
--- a/dviware/dvisvgm/src/Opacity.cpp
+++ b/dviware/dvisvgm/src/Opacity.cpp
@@ -2,7 +2,7 @@
** Opacity.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -45,6 +45,50 @@ string Opacity::cssBlendMode (BlendMode bm) {
}
+static string to_lower_drop_nonalpha (const string &str) {
+ string ret;
+ if (!str.empty()) {
+ ret.reserve(str.length());
+ for (char c : str) {
+ if (isalpha(c))
+ ret += char(tolower(c));
+ }
+ }
+ return ret;
+}
+
+
+Opacity::BlendMode Opacity::blendMode (const std::string &name) {
+ struct {
+ const char *name;
+ BlendMode mode;
+ } modes[] = {
+ {"normal", BM_NORMAL },
+ {"multiply", BM_MULTIPLY },
+ {"screen", BM_SCREEN },
+ {"overlay", BM_OVERLAY },
+ {"softlight", BM_SOFTLIGHT },
+ {"hardlight", BM_HARDLIGHT },
+ {"colordodge", BM_COLORDODGE},
+ {"colorburn", BM_COLORBURN },
+ {"darken", BM_DARKEN },
+ {"lighten", BM_LIGHTEN },
+ {"difference", BM_DIFFERENCE},
+ {"exclusion", BM_EXCLUSION },
+ {"hue", BM_HUE },
+ {"saturation", BM_SATURATION},
+ {"color", BM_COLOR },
+ {"luminosity", BM_LUMINOSITY}
+ };
+ string compname = to_lower_drop_nonalpha(name);
+ for (const auto &m : modes) {
+ if (compname == m.name)
+ return m.mode;
+ }
+ return BM_NORMAL;
+}
+
+
bool Opacity::operator == (const Opacity &opacity) const {
return opacity._fillalpha == _fillalpha
&& opacity._strokealpha == _strokealpha
@@ -56,4 +100,4 @@ bool Opacity::operator != (const Opacity &opacity) const {
return opacity._fillalpha != _fillalpha
|| opacity._strokealpha != _strokealpha
|| opacity._blendMode != _blendMode;
-} \ No newline at end of file
+}
diff --git a/dviware/dvisvgm/src/Opacity.hpp b/dviware/dvisvgm/src/Opacity.hpp
index 84880e7b66..867e69993a 100644
--- a/dviware/dvisvgm/src/Opacity.hpp
+++ b/dviware/dvisvgm/src/Opacity.hpp
@@ -2,7 +2,7 @@
** Opacity.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -27,6 +27,7 @@ class OpacityAlpha {
public:
OpacityAlpha () =default;
OpacityAlpha (double constalpha, double shapealpha) : _constalpha(constalpha), _shapealpha(shapealpha) {}
+ explicit OpacityAlpha (double alpha) : _constalpha(alpha) {}
void setConstAlpha (double alpha) { _constalpha = alpha;}
void setShapeAlpha (double shapealpha) {_shapealpha = shapealpha;}
double value () const {return _constalpha * _shapealpha;}
@@ -66,6 +67,8 @@ class Opacity {
bool operator == (const Opacity &opacity) const;
bool operator != (const Opacity &opacity) const;
+ static BlendMode blendMode (const std::string &name);
+
private:
OpacityAlpha _fillalpha;
OpacityAlpha _strokealpha;
diff --git a/dviware/dvisvgm/src/PDFHandler.cpp b/dviware/dvisvgm/src/PDFHandler.cpp
new file mode 100644
index 0000000000..9703124e2c
--- /dev/null
+++ b/dviware/dvisvgm/src/PDFHandler.cpp
@@ -0,0 +1,858 @@
+/*************************************************************************
+** PDFHandler.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <fstream>
+#include <iterator>
+#include <limits>
+#include <sstream>
+#include "FilePath.hpp"
+#include "FileSystem.hpp"
+#include "FontEngine.hpp"
+#include "FontManager.hpp"
+#include "GraphicsPath.hpp"
+#include "Color.hpp"
+#include "Matrix.hpp"
+#include "Opacity.hpp"
+#include "PDFHandler.hpp"
+#include "Process.hpp"
+#include "SVGElement.hpp"
+#include "SVGTree.hpp"
+#include "Unicode.hpp"
+#include "XMLParser.hpp"
+#include "XXHashFunction.hpp"
+
+using namespace std;
+
+template <typename T>
+static T parse_value (const string &str) {
+ T value{};
+ istringstream iss(str);
+ iss >> value;
+ return value;
+}
+
+template<>
+string parse_value (const string &str) {
+ return str;
+}
+
+template<>
+vector<double> parse_value (const string &str) {
+ vector<double> vec;
+ istringstream iss(str);
+ while (iss) {
+ double val;
+ if (iss >> val)
+ vec.push_back(val);
+ }
+ return vec;
+}
+
+
+istream& operator >> (istream &is, PDFHandler::ObjID &objId) {
+ is >> objId.num;
+ is >> objId.gen;
+ is >> ws;
+ if (is.peek() == 'R')
+ is.get();
+ return is;
+}
+
+
+template <typename T>
+static vector<T> parse_pdf_array (const string &str) {
+ vector<T> vec;
+ istringstream iss(str);
+ if (iss.get() == '[') {
+ while (iss) {
+ T val;
+ if (iss >> val)
+ vec.push_back(val);
+ }
+ }
+ return vec;
+}
+
+template <typename T>
+static map<string, T> parse_pdf_dict (const string &str) {
+ map<string, T> dict;
+ istringstream iss(str);
+ if (iss.get() == '<' && iss.get() == '<') {
+ string name;
+ T val;
+ while (iss) {
+ iss >> ws >> name >> val;
+ if (iss)
+ dict.emplace(name, val);
+ }
+ }
+ return dict;
+}
+
+
+template <typename T>
+static T parse_attr_value (const XMLElement *elem, const string &attr) {
+ T ret{};
+ if (const char *value = elem->getAttributeValue(attr))
+ ret = parse_value<T>(value);
+ return ret;
+}
+
+template<>
+Matrix parse_attr_value (const XMLElement *elem, const string &attr) {
+ Matrix matrix(1);
+ if (const char *val = elem->getAttributeValue(attr))
+ matrix = Matrix(val);
+ return matrix;
+}
+
+///////////////////////////////////////////////////////////////////////////////
+
+
+PDFHandler::~PDFHandler () {
+ finishFile();
+}
+
+
+string PDFHandler::mutoolVersion () {
+ static string version;
+ if (version.empty())
+ version = mutool("-v", SearchPattern("([0-9.]+)", "$1"), true);
+ return version;
+}
+
+
+/** Returns the bounding box of a selected PDF page. */
+BoundingBox PDFHandler::bbox (string &fname, int pageno) {
+ BoundingBox bbox;
+ string arraystr = mtShow(fname, "pages/" + to_string(pageno) + "/MediaBox");
+ if (arraystr.substr(0, 4) == "null")
+ arraystr = mtShow(fname, "pages/" + to_string(pageno) + "/Parent/MediaBox");
+ auto vec = parse_pdf_array<double>(arraystr);
+ if (vec.size() == 4)
+ bbox = BoundingBox(vec[0], vec[1], vec[2], vec[3]);
+ return bbox;
+}
+
+
+/** Converts a single page of a PDF file to SVG. If no context element is given,
+ * the SVG page contents are added to a page group element of the SVG tree.
+ * Otherwise, they are added to the context element which is not inserted into
+ * the SVG tree but returned for further processing.
+ * @param[in] fname PDF filename
+ * @param[in] pageno number of page to convert
+ * @param[in] context element the generated page contents are appended to
+ * @return the context element holding the page contents */
+unique_ptr<SVGElement> PDFHandler::convert (const string &fname, int pageno, unique_ptr<SVGElement> context) {
+ if (_fname != fname)
+ initFile(fname);
+ if (!_svg || pageno < 1 || pageno > _numPages)
+ return context;
+ initPage(pageno, std::move(context));
+
+ // create trace XML and convert it to SVG
+ XMLParser xmlParser;
+ auto openfunc = std::bind(&PDFHandler::elementOpened, this, std::placeholders::_1);
+ auto closefunc = std::bind(&PDFHandler::elementClosed, this, std::placeholders::_1);
+ xmlParser.setNotifyFuncs(openfunc, closefunc);
+ xmlParser.setRootElement(nullptr);
+ string xmlfname = FileSystem::tmpdir()+FilePath(fname, true).filename()+"-"+ to_string(_pageno)+".xml";
+ mutool("draw -Ftrace -o"+xmlfname+" "+_fname+" "+to_string(_pageno));
+ ifstream ifs(xmlfname);
+ xmlParser.parse(ifs);
+ ifs.close();
+ // remove trace XML
+ if (!PhysicalFont::KEEP_TEMP_FILES)
+ FileSystem::remove(xmlfname);
+ return finishPage();
+}
+
+
+void PDFHandler::initFile (const string &fname) {
+ finishFile();
+ _fname = FilePath(fname, true).absolute();
+ _numPages = parse_value<int>(mtShow("trailer/Root/Pages/Count"));
+ // extract image and font files from the PDF
+ string cwd = FileSystem::getcwd();
+ string tmpdir = FileSystem::tmpdir();
+ FileSystem::chdir(tmpdir);
+ string out = mtExtract(_fname, SearchPattern(R"(extracting\s+([a-z]+-\d+\.\S+))", "$1\n"));
+ FileSystem::chdir(cwd);
+ for (const string &extrfname : util::split(out, "\n")) {
+ auto dashpos = extrfname.rfind('-');
+ if (dashpos != string::npos) {
+ int objnum;
+ istringstream iss(extrfname.substr(dashpos+1));
+ iss >> objnum;
+ _extractedFiles.emplace(objnum, extrfname);
+ }
+ }
+}
+
+
+void PDFHandler::finishFile () {
+ if (!PhysicalFont::KEEP_TEMP_FILES) {
+ // remove extracted image and font files
+ for (auto &entry : _extractedFiles)
+ FileSystem::remove(FileSystem::tmpdir() + entry.second);
+ }
+ _fname.clear();
+ _numPages = 0;
+}
+
+
+void PDFHandler::initPage (int pageno, unique_ptr<SVGElement> context) {
+ _pageno = pageno;
+ _bbox = bbox(_fname, pageno);
+ if (context) {
+ _context = context.get();
+ _svg->pushPageContext(std::move(context));
+ }
+ else {
+ _svg->newPage(_pageno);
+ _svg->setBBox(_bbox);
+ }
+ // collect sequence of images referenced on current page
+ collectObjects();
+ _imgSeq.clear();
+ SearchPattern pattern{R"((/[a-zA-Z0-9]+)\s+Do)", "$1\n"};
+ string content = mtShow("pages/" + to_string(_pageno) + "/Contents", pattern);
+ if (content.empty())
+ content = mtShow("pages/" + to_string(_pageno) + "/Contents/*", pattern);
+ for (const string &entry : util::split(content, "\n")) {
+ if (!entry.empty())
+ _imgSeq.push_back(entry);
+ }
+}
+
+
+unique_ptr<SVGElement> PDFHandler::finishPage () {
+ if (!_context) {
+ // add glyph outlines of used characters
+ for (auto &fontchars: FontManager::instance().getUsedChars()) {
+ if (auto font = font_cast<const PhysicalFont *>(fontchars.first))
+ _svg->append(*font, fontchars.second);
+ }
+ _svg->appendFontStyles(FontManager::instance().getUsedFonts());
+ }
+ // pop clipping paths still active
+ while (!_clipPathStack.empty()) {
+ _svg->popPageContext();
+ if (_clipPathStack.top().groupElement->empty())
+ XMLElement::detach(_clipPathStack.top().groupElement);
+ _clipPathStack.pop();
+ }
+ _pageno = 0;
+ _x = _y = 0;
+ _currentFont = nullptr;
+ _objDict.clear();
+ auto context = util::static_unique_ptr_cast<SVGElement>(XMLElement::detach(_context));
+ if (context)
+ _svg->popPageContext();
+ _context = nullptr;
+ return context;
+}
+
+
+/** Called by the XMLParser after an opening tag of an element has been processed.
+ * @param[in] trcElement opened element of trace XML */
+void PDFHandler::elementOpened (XMLElement *trcElement) {
+ const string &name = trcElement->name();
+ if (name == "tile")
+ doOpenTile(trcElement); // start defining a tiling pattern
+}
+
+
+/** Called by the XMLParser after a closing tag of an element has been processed.
+ * @param[in] trcElement closed element of trace XML */
+void PDFHandler::elementClosed (XMLElement *trcElement) {
+ const string &name = trcElement->name();
+ struct Handler {
+ const char *name;
+ void (PDFHandler::*func)(XMLElement*);
+ } handlers[9] = {
+ {"stroke_path", &PDFHandler::doStrokePath},
+ {"fill_path", &PDFHandler::doFillPath},
+ {"fill_image", &PDFHandler::doFillImage},
+ {"fill_text", &PDFHandler::doFillText},
+ {"clip_path", &PDFHandler::doClipPath},
+ {"clip_stroke_path", &PDFHandler::doClipStrokePath},
+ {"clip_text", &PDFHandler::doClipText},
+ {"pop_clip", &PDFHandler::doPopClip},
+ {"tile", &PDFHandler::doCloseTile},
+ };
+ auto it = find_if(begin(handlers), end(handlers), [&name](const Handler &handler) {
+ return handler.name == name;
+ });
+ if (it != end(handlers))
+ (this->*it->func)(trcElement);
+ else
+ return;
+ XMLElement::detach(trcElement); // remove element from XML tree, it's no longer needed
+}
+
+
+/** Returns a color object from color data given in the trace XML.
+ * @param[in] colorspace currently supported: DeviceGray, DeviceRGB, DeviceCMYK
+ * @param[in] value color components depending on color space */
+static Color to_color (const string &colorspace, const string &value) {
+ Color color;
+ if (colorspace == "DeviceGray")
+ color.setGray(parse_value<double>(value));
+ else if (colorspace == "DeviceRGB") {
+ auto comp = util::split(value, " ");
+ if (comp.size() == 3)
+ color.setRGB(parse_value<double>(comp[0]), parse_value<double>(comp[1]), parse_value<double>(comp[2]));
+ }
+ else if (colorspace == "DeviceCMYK") {
+ auto comp = util::split(value, " ");
+ if (comp.size() == 4)
+ color.setCMYK(parse_value<double>(comp[0]), parse_value<double>(comp[1]), parse_value<double>(comp[2]), parse_value<double>(comp[3]));
+ }
+ return color;
+}
+
+
+static double matrix_extent (const Matrix &m) {
+ // signed area of the parallelogram spanned by the scale/rotation components of the matrix
+ // v1 x v2 = det(v1,v2) = sin(v1,v2) * |v1| * |v2|
+ double area = m.get(0,0)*m.get(1,1) - m.get(0,1)*m.get(1,0);
+ return sqrt(abs(area));
+}
+
+
+static double matrix_max_extent (const Matrix &matrix) {
+ double max1 = max(abs(matrix.get(0,0)), abs(matrix.get(0,1)));
+ double max2 = max(abs(matrix.get(1,0)), abs(matrix.get(1,1)));
+ return max(max1, max2);
+}
+
+
+/** Creates a GraphicsPath object from a sequence of command elements
+ * (moveto, lineto, curveto, closepath) read from the trace XML file.
+ * @param[in] srcPathElement parent of the command elements */
+static GraphicsPath<double> create_path (XMLElement *srcPathElement) {
+ GraphicsPath<double> path;
+ for (const XMLNode *child : *srcPathElement) {
+ if (const XMLElement *cmd = child->toElement()) {
+ string name = cmd->name();
+ if (name == "moveto")
+ path.moveto(parse_attr_value<double>(cmd, "x"), parse_attr_value<double>(cmd, "y"));
+ else if (name == "lineto")
+ path.lineto(parse_attr_value<double>(cmd, "x"), parse_attr_value<double>(cmd, "y"));
+ else if (name == "curveto")
+ path.cubicto(
+ parse_attr_value<double>(cmd, "x1"), parse_attr_value<double>(cmd, "y1"),
+ parse_attr_value<double>(cmd, "x2"), parse_attr_value<double>(cmd, "y2"),
+ parse_attr_value<double>(cmd, "x3"), parse_attr_value<double>(cmd, "y3"));
+ else if (name == "closepath")
+ path.closepath();
+ }
+ }
+ if (!path.empty())
+ path.removeRedundantCommands();
+ return path;
+}
+
+
+/** Creates a new SVG path element from XML drawing commands.
+ * @param[in] srcPathElement element holding the drawing commands
+ * @param[in] stroke create a stroke path if true, a fill path otherwise
+ * @param[out] bbox if not 0, gets the bounding box of the resulting path */
+static unique_ptr<SVGElement> create_path_element (XMLElement *srcPathElement, bool stroke, BoundingBox *bbox=nullptr) {
+ unique_ptr<SVGElement> pathElement;
+ auto path = create_path(srcPathElement);
+ if (!path.empty()) {
+ auto matrix = parse_attr_value<Matrix>(srcPathElement, "transform");
+ path.transform(matrix);
+ if (bbox)
+ *bbox = path.computeBBox();
+ pathElement = util::make_unique<SVGElement>("path");
+ ostringstream oss;
+ path.writeSVG(oss, SVGTree::RELATIVE_PATH_CMDS);
+ pathElement->addAttribute("d", oss.str());
+ string colorspace = parse_attr_value<string>(srcPathElement, "colorspace");
+ string color = parse_attr_value<string>(srcPathElement, "color");
+ if (!stroke) { // create path for filling?
+ if (parse_attr_value<string>(srcPathElement, "winding") == "evenodd")
+ pathElement->setFillRule(SVGElement::FR_EVENODD);
+ if (!colorspace.empty())
+ pathElement->setFillColor(to_color(colorspace, color));
+ }
+ else { // create path for stroking
+ if (!colorspace.empty())
+ pathElement->setStrokeColor(to_color(colorspace, color));
+ pathElement->setNoFillColor();
+ double linewidth=1;
+ if (const char *valstr = srcPathElement->getAttributeValue("linewidth")) {
+ double lwScale = matrix_extent(matrix);
+ linewidth = parse_value<double>(valstr);
+ pathElement->setStrokeWidth(linewidth * lwScale);
+ }
+ double miterlimit=0;
+ SVGElement::LineJoin linejoin=SVGElement::LJ_MITER;
+ if (const char *valstr = srcPathElement->getAttributeValue("miterlimit"))
+ pathElement->setStrokeMiterLimit(miterlimit = parse_value<double>(valstr));
+ if (const char *valstr = srcPathElement->getAttributeValue("linejoin")) {
+ linejoin = SVGElement::LJ_MITER;
+ switch (parse_value<int>(valstr)) {
+ case 1: linejoin = SVGElement::LJ_ROUND; break;
+ case 2: linejoin = SVGElement::LJ_BEVEL; break;
+ }
+ pathElement->setStrokeLineJoin(linejoin);
+ }
+ if (const char *valstr = srcPathElement->getAttributeValue("linecap")) {
+ SVGElement::LineCap captype = SVGElement::LC_BUTT;
+ switch (parse_value<int>(valstr)) {
+ case 1: captype = SVGElement::LC_ROUND; break;
+ case 2: captype = SVGElement::LC_SQUARE; break;
+ }
+ pathElement->setStrokeLineCap(captype);
+ }
+ if (const char *valstr = srcPathElement->getAttributeValue("dash")) {
+ auto offset = parse_attr_value<double>(srcPathElement, "dash_phase");
+ pathElement->setStrokeDash(valstr, offset);
+ }
+ if (bbox) {
+ double extent = (linewidth != 0 ? linewidth : 1.0) * matrix_max_extent(matrix);
+ if (linejoin == SVGElement::LJ_MITER && miterlimit > 1)
+ extent *= miterlimit;
+ bbox->expand(extent);
+ }
+ }
+ }
+ return pathElement;
+}
+
+
+void PDFHandler::doFillPath (XMLElement *trcFillPathElement) {
+ if (auto pathElement = create_path_element(trcFillPathElement, false)) {
+ if (XMLElement *parent = trcFillPathElement->parent()->toElement()) {
+ if (parent->name() == "group") {
+ if (const char *valstr = parent->getAttributeValue("blendmode"))
+ pathElement->setFillOpacity(Opacity::blendMode(valstr));
+ if (const char *valstr = parent->getAttributeValue("alpha"))
+ pathElement->setFillOpacity(OpacityAlpha(parse_value<double>(valstr)));
+ }
+ }
+ _svg->appendToPage(std::move(pathElement));
+ }
+}
+
+
+void PDFHandler::doStrokePath (XMLElement *trcStrokePathElement) {
+ if (auto pathElement = create_path_element(trcStrokePathElement, true)) {
+ if (XMLElement *parent = trcStrokePathElement->parent()->toElement()) {
+ if (parent->name() == "group") {
+ Opacity opacity;
+ if (const char *valstr = parent->getAttributeValue("blendmode"))
+ opacity.setBlendMode(Opacity::blendMode(valstr));
+ if (const char *valstr = parent->getAttributeValue("alpha"))
+ opacity.strokealpha().setConstAlpha(parse_value<double>(valstr));
+ pathElement->setStrokeOpacity(opacity);
+ }
+ }
+ _svg->appendToPage(std::move(pathElement));
+ }
+}
+
+
+void PDFHandler::doClipPath (XMLElement *trcClipPathElement) {
+ if (auto pathElement = create_path_element(trcClipPathElement, false)) {
+ string id = "cp"+to_string(_numClipPath++);
+ auto clipPathElement = util::make_unique<SVGElement>("clipPath");
+ clipPathElement->addAttribute("id", id);
+ auto groupElement = util::make_unique<SVGElement>("g");
+ _clipPathStack.emplace(ClipPathData{std::move(id), groupElement.get()});
+ groupElement->setClipPathUrl(_clipPathStack.top().id);
+ clipPathElement->append(std::move(pathElement));
+ _svg->appendToDefs(std::move(clipPathElement));
+ _svg->pushPageContext(std::move(groupElement));
+ }
+}
+
+
+void PDFHandler::doClipStrokePath (XMLElement *trcClipStrokePathElement) {
+ BoundingBox pathbox;
+ if (auto pathElement = create_path_element(trcClipStrokePathElement, true, &pathbox)) {
+ pathElement->setStrokeColor(Color::WHITE);
+ string id = "cm"+to_string(_numClipPath++);
+ auto maskElement = util::make_unique<SVGElement>("mask");
+ maskElement->addAttribute("id", id);
+ maskElement->addAttribute("x", pathbox.minX());
+ maskElement->addAttribute("y", pathbox.minY());
+ maskElement->addAttribute("width", pathbox.width());
+ maskElement->addAttribute("height", pathbox.height());
+ maskElement->addAttribute("maskUnits", "userSpaceOnUse");
+ maskElement->append(std::move(pathElement));
+ auto groupElement = util::make_unique<SVGElement>("g");
+ groupElement->setMaskUrl(id);
+ _clipPathStack.emplace(ClipPathData{std::move(id), groupElement.get()});
+ _svg->appendToDefs(std::move(maskElement));
+ _svg->pushPageContext(std::move(groupElement));
+ }
+}
+
+
+void PDFHandler::doClipText (XMLElement *trcClipTextElement) {
+ string id = "cp"+to_string(_numClipPath++);
+ auto clipPathElement = util::make_unique<SVGElement>("clipPath");
+ clipPathElement->addAttribute("id", id);
+ auto groupElement = util::make_unique<SVGElement>("g");
+ _clipPathStack.emplace(ClipPathData{std::move(id), groupElement.get()});
+ groupElement->setClipPathUrl(_clipPathStack.top().id);
+ SVGElement *cpElementPtr = clipPathElement.get();
+ _svg->pushPageContext(std::move(clipPathElement));
+ doFillText(trcClipTextElement);
+ _svg->popPageContext();
+ _svg->appendToDefs(XMLElement::detach(cpElementPtr)); // move clipPath element from page to defs section
+ _svg->pushPageContext(std::move(groupElement));
+}
+
+
+void PDFHandler::doPopClip (XMLElement*) {
+ if (!_clipPathStack.empty()) {
+ _svg->popPageContext();
+ if (_clipPathStack.top().groupElement->empty())
+ XMLElement::detach(_clipPathStack.top().groupElement);
+ _clipPathStack.pop();
+ }
+}
+
+
+static unique_ptr<SVGElement> create_use_element (double x, double y, const string &refID) {
+ auto useElement = util::make_unique<SVGElement>("use");
+ useElement->addAttribute("x", x);
+ useElement->addAttribute("y", y);
+ useElement->addAttribute("xlink:href", "#"+refID);
+ return useElement;
+}
+
+
+void PDFHandler::doFillImage (XMLElement *trcFillImageElement) {
+ if (_numImages < _imgSeq.size()) {
+ auto it = _objDict.find(_imgSeq[_numImages]);
+ if (it != _objDict.end()) {
+ string imgID = "img"+to_string(it->second.num)+"-"+XXH32HashFunction(_fname).digestString();
+ auto w = parse_attr_value<double>(trcFillImageElement, "width");
+ auto h = parse_attr_value<double>(trcFillImageElement, "height");
+ auto alpha = parse_attr_value<double>(trcFillImageElement, "alpha");
+ if (w == 0 || h == 0 || alpha == 0)
+ return;
+ // add base64 encoding of the image to the defs section if it hasn't been referenced yet
+ auto last = _imgSeq.begin()+int(_numImages);
+ if (find(_imgSeq.begin(), last, it->first) == last) {
+ string fname = it->second.fname;
+ auto symbolElement = util::make_unique<SVGElement>("symbol");
+ symbolElement->addAttribute("id", imgID);
+ symbolElement->addAttribute("viewBox", BoundingBox(0, 0, w, h).svgViewBoxString());
+ auto imgElement = util::make_unique<SVGElement>("image");
+ imgElement->addAttribute("width", parse_attr_value<double>(trcFillImageElement, "width"));
+ imgElement->addAttribute("height", parse_attr_value<double>(trcFillImageElement, "height"));
+ imgElement->addAttribute("@@xlink:href", "data:"+util::mimetype(fname)+";base64,"+fname);
+ symbolElement->append(std::move(imgElement));
+ _svg->appendToDefs(std::move(symbolElement));
+ }
+ // add reference to image
+ auto useElement = create_use_element(0, 0, imgID);
+ useElement->setOpacity(OpacityAlpha(alpha));
+ Matrix matrix = parse_attr_value<Matrix>(trcFillImageElement, "transform");
+ matrix.rmultiply(ScalingMatrix(1/w, 1/h));
+ useElement->setTransform(matrix);
+ if (!_clipPathStack.empty())
+ useElement->setClipPathUrl(_clipPathStack.top().id);
+ _svg->appendToPage(std::move(useElement));
+ }
+ _numImages++;
+ }
+}
+
+
+static string to_utf8 (const string &str) {
+ if (str.empty())
+ return "";
+ if (str.front() != '&' || str.back() != ';')
+ return str;
+ string ent = str.substr(1, str.length()-2);
+ if (ent == "amp") return Unicode::utf8('&');
+ if (ent == "apos") return Unicode::utf8('\'');
+ if (ent == "gt") return Unicode::utf8('>');
+ if (ent == "lt") return Unicode::utf8('<');
+ if (ent == "quot") return Unicode::utf8('"');
+ if (ent[0] == '#') {
+ try {
+ int32_t cp;
+ cp = (ent[1] == 'x' ? stoi(ent.substr(2), nullptr, 16) : stoi(ent.substr(1)));
+ return Unicode::utf8(cp);
+ }
+ catch (exception&) {}
+ }
+ return "";
+}
+
+
+static string strip_subset_prefix (const std::string &fontname) {
+ auto pos = fontname.find('+');
+ if (pos != string::npos)
+ return fontname.substr(pos+1);
+ return fontname;
+}
+
+
+static string compose_utf8_char (const XMLElement *charElement, int glyph) {
+ string utf8 = to_utf8(parse_attr_value<string>(charElement, "unicode"));
+ string nonlig;
+ for (XMLElement *elem=charElement->nextElement(); elem && !elem->hasAttribute("glyph"); elem=elem->nextElement())
+ nonlig += to_utf8(parse_attr_value<string>(elem, "unicode"));
+ if (!nonlig.empty()) {
+ if (uint32_t lig_cp = Unicode::toLigature(utf8+nonlig)) // known Unicode ligature?
+ utf8 = Unicode::utf8(lig_cp);
+ else if (glyph <= 0x1900) // unknown ligature fitting in Private Use Zone?
+ utf8 = Unicode::utf8(0xE000+glyph);
+ // TODO: handle unknown ligatures with glyph indices > 0x1900
+ }
+ return utf8;
+}
+
+
+void PDFHandler::doFillText (XMLElement *trcFillTextElement) {
+ for (const XMLNode *textchild : *trcFillTextElement) {
+ if (const XMLElement *spanElement = textchild->toElement()) {
+ auto trm = parse_attr_value<vector<double>>(spanElement, "trm");
+ if (trm.size() < 4 || trm[0] == 0)
+ continue;
+ auto fontname = strip_subset_prefix(parse_attr_value<string>(spanElement, "font"));
+ string filename;
+ auto it = _objDict.find(fontname);
+ if (it != _objDict.end())
+ filename = it->second.fname;
+ if (filename.empty())
+ filename = "sys://"+fontname;
+ double ptsize = abs(trm[0]);
+ int fontID = FontManager::instance().registerFont(filename, ptsize);
+ if (fontID >= 0) {
+ auto font = font_cast<NativeFont*>(FontManager::instance().getFontById(fontID));
+ if (font != _currentFont) {
+ _svg->setFont(FontManager::instance().fontID(font), *font);
+ _currentFont = font;
+ _svg->setX(0);
+ _svg->setY(0);
+ _x = _y = numeric_limits<double>::max();
+ }
+ Matrix fontMatrix({trm[0]/ptsize, -trm[2]/ptsize, 0, trm[1]/ptsize, -trm[3]/ptsize});
+ fontMatrix.invert();
+ Matrix matrix = parse_attr_value<Matrix>(trcFillTextElement, "transform");
+ matrix.rmultiply(fontMatrix);
+ _svg->setMatrix(matrix);
+ string colorspace = parse_attr_value<string>(trcFillTextElement, "colorspace");
+ string colorval = parse_attr_value<string>(trcFillTextElement, "color");
+ _svg->setColor(to_color(colorspace, colorval));
+ for (const XMLNode *spanchild : *spanElement) {
+ const XMLElement *charElement = spanchild->toElement();
+ if (!charElement || charElement->name() != "g" || !charElement->hasAttribute("glyph"))
+ continue;
+ int glyph;
+ if (font->isCIDFont())
+ glyph = parse_attr_value<int>(charElement, "glyph");
+ else {
+ glyph = font->charIndexByName(parse_attr_value<string>(charElement, "glyph"));
+ if (glyph == 0)
+ glyph = parse_attr_value<int>(charElement, "glyph");
+ }
+ // determine code point of current character
+ string utf8;
+ if (charElement->hasAttribute("unicode"))
+ utf8 = parse_attr_value<string>(charElement, "unicode");
+ if (utf8.empty())
+ utf8 = compose_utf8_char(charElement, glyph);
+ if (glyph == 0 || utf8.empty())
+ continue;
+ DPair p(parse_attr_value<double>(charElement, "x"), parse_attr_value<double>(charElement, "y"));
+ p = fontMatrix * p;
+ if (abs(_x-p.x()) > 0.2) {_x = p.x(); _svg->setX(_x);}
+ if (abs(_y-p.y()) > 0.2) {_y = p.y(); _svg->setY(_y);}
+ font->mapCharToUnicode(glyph, Unicode::utf8ToCodepoint(utf8));
+ if (font->verticalLayout())
+ _y += font->charHeight(glyph);
+ else
+ _x += font->charWidth(glyph);
+ _svg->appendChar(glyph, p.x(), p.y());
+ FontManager::instance().addUsedChar(*font, glyph);
+ }
+ }
+ }
+ }
+}
+
+
+void PDFHandler::doOpenTile (XMLElement *trcTileElement) {
+ auto patternSymbol = util::make_unique<SVGElement>("symbol");
+ patternSymbol->addAttribute("id", "tile"+ to_string(_numPatterns));
+ patternSymbol->addAttribute("style", "overflow:visible");
+ _svg->pushPageContext(std::move(patternSymbol));
+}
+
+
+static unique_ptr<SVGElement> rect_path_elem (const vector<double> &coords) {
+ GraphicsPath<double> path;
+ path.moveto(coords[0], coords[1]);
+ path.lineto(coords[2], coords[1]);
+ path.lineto(coords[2], coords[3]);
+ path.lineto(coords[0], coords[3]);
+ path.closepath();
+ ostringstream oss;
+ path.writeSVG(oss, SVGTree::RELATIVE_PATH_CMDS);
+ auto pathElement = util::make_unique<SVGElement>("path");
+ pathElement->addAttribute("d", oss.str());
+ return pathElement;
+}
+
+
+void PDFHandler::doCloseTile (XMLElement *trcTileElement) {
+ _svg->popPageContext(); // definition of symbol finished
+ auto xstep = parse_attr_value<double>(trcTileElement, "xstep");
+ auto ystep = parse_attr_value<double>(trcTileElement, "ystep");
+ if (xstep == 0 || ystep == 0)
+ return;
+ auto view = parse_attr_value<vector<double>>(trcTileElement, "view");
+ auto patternElement = util::make_unique<SVGElement>("pattern");
+ patternElement->addAttribute("id", "pat"+ to_string(_numPatterns));
+ patternElement->addAttribute("x", 0);
+ patternElement->addAttribute("y", 0);
+ patternElement->addAttribute("width", xstep);
+ patternElement->addAttribute("height", ystep);
+ patternElement->addAttribute("patternUnits", "userSpaceOnUse");
+
+ SVGElement *contextElement = patternElement.get();
+ view.resize(4);
+ if (view[0] > 0 || view[2] > xstep || view[1] > 0 || view[3] > ystep) {
+ auto clipPathElement = util::make_unique<SVGElement>("clipPath");
+ clipPathElement->addAttribute("id", "patcp"+to_string(_numPatterns));
+ auto pathElement = rect_path_elem(view);
+ clipPathElement->append(std::move(pathElement));
+ patternElement->append(std::move(clipPathElement));
+
+ auto clipGroupElement = util::make_unique<SVGElement>("g");
+ clipGroupElement->setClipPathUrl("patcp"+to_string(_numPatterns));
+ contextElement = clipGroupElement.get();
+ patternElement->append(std::move(clipGroupElement));
+ }
+ Matrix matrix = parse_attr_value<Matrix>(trcTileElement, "transform");
+ auto transformGroupElement = util::make_unique<SVGElement>("g");
+ transformGroupElement->setTransform(matrix);
+ // Most SVG renderers don't support overflow:visible on patterns. Thus, parts of
+ // the pattern graphics that lie outside the tile area are clipped. To work around
+ // this, we place the pattern graphics at all 4 corners of the tile rectangle. This
+ // way, the outside parts of all quadrants are drawn inside as well so that adjacent
+ // tiles are enabled to compose the pattern. If the pattern graphics falls completely
+ // inside the tile area, the additional drawings are empty and thus redundant. For now,
+ // we keep them anyway.
+ Matrix invmatrix{matrix.get(0,0), matrix.get(0,1), 0, matrix.get(1,0), matrix.get(1,1)};
+ invmatrix.invert();
+ for (int i=0; i < 2; i++) {
+ for (int j=0; j < 2; j++) {
+ DPair p = invmatrix * DPair(xstep*i, ystep*j);
+ transformGroupElement->append(create_use_element(p.x(), p.y(), "tile"+to_string(_numPatterns)));
+ }
+ }
+ contextElement->append(std::move(transformGroupElement));
+ _svg->appendToPage(std::move(patternElement));
+ auto area = parse_attr_value<vector<double>>(trcTileElement, "area");
+ area.resize(4);
+ auto pathElement = rect_path_elem(area);
+ pathElement->setFillPatternUrl("pat"+to_string(_numPatterns));
+ pathElement->setTransform(matrix);
+ _svg->appendToPage(std::move(pathElement));
+ _numPatterns++;
+}
+
+
+void PDFHandler::collectObjects () {
+ string tmpdir = FileSystem::tmpdir();
+ _objDict = parse_pdf_dict<ObjID>(mtShow("pages/" + to_string(_pageno) + "/Resources/XObject"));
+ // replace referenced font IDs by actual IDs used for extracted fonts
+ for (auto &entry : _objDict) {
+ string objtype = mtShow(to_string(entry.second.num)+"/Type", SearchPattern(R"(/(\w+))", "$1"));
+ // store filenames of non-font object in object map
+ auto fnameIt = _extractedFiles.find(entry.second.num);
+ entry.second.fname = fnameIt != _extractedFiles.end() ? tmpdir+fnameIt->second : "";
+ }
+ for (auto &entry : _extractedFiles) {
+ if (entry.second.substr(0, 5) == "font-") {
+ string filepath = tmpdir+entry.second; // path to font file
+ string fontname = strip_subset_prefix(FontEngine::instance().getPSName(filepath));
+ _objDict.emplace(fontname, ObjID(entry.first, 0, filepath));
+ }
+ }
+}
+
+///////////////////////////////////////////////////////////////////////////////
+
+string PDFHandler::mutool (const string &cmd, bool readFromStderr) {
+ string out;
+ Process("mutool", cmd).run(&out, readFromStderr ? Process::PF_STDERR : Process::PF_STDOUT);
+ return out;
+}
+
+
+string PDFHandler::mutool (const string &cmd, const SearchPattern &pattern, bool readFromStderr) {
+ string out;
+ Process("mutool", cmd).run(&out, pattern, readFromStderr ? Process::PF_STDERR : Process::PF_STDOUT);
+ return out;
+}
+
+
+string PDFHandler::mtExtract (const string &fname, const SearchPattern &pattern) {
+ return mutool("extract -a "+fname, pattern);
+}
+
+
+/** Calls "mutool show" to retrieve select data from a PDF file.
+ * @param[in] fname name of PDF file
+ * @param[in] path path expression locating the requested data
+ * @param[in] fmtmode flag specifying the output format
+ * @return mutool output, result of the query */
+string PDFHandler::mtShow (const string &fname, const string &path, char fmtmode) {
+ string cmd = "show -";
+ cmd += fmtmode;
+ cmd += " " + fname + " " + path;
+ return mutool(cmd);
+}
+
+
+string PDFHandler::mtShow (const string &fname, const string &path, const SearchPattern &pattern, char fmtmode) {
+ string cmd = "show -";
+ cmd += fmtmode;
+ cmd += " " + fname + " " + path;
+ return mutool(cmd, pattern);
+}
+
+#if 0
+int main (int argc, char *argv[]) {
+ if (argc < 2)
+ return 0;
+ SVGTree::USE_FONTS=true;
+ SVGTree::FONT_FORMAT = FontWriter::FontFormat::SVG;
+ SVGTree svg;
+ PDFHandler page(svg);
+ page.convert(argv[1], argc > 2 ? stoi(argv[2]) : 1);
+ svg.write(cout);
+}
+#endif
diff --git a/dviware/dvisvgm/src/PDFHandler.hpp b/dviware/dvisvgm/src/PDFHandler.hpp
new file mode 100644
index 0000000000..fd34ce0568
--- /dev/null
+++ b/dviware/dvisvgm/src/PDFHandler.hpp
@@ -0,0 +1,109 @@
+/*************************************************************************
+** PDFHandler.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#ifndef PDFHANDLER_HPP
+#define PDFHANDLER_HPP
+
+#include <map>
+#include <string>
+#include "BoundingBox.hpp"
+#include "Process.hpp"
+#include "SVGTree.hpp"
+
+class XMLElement;
+
+class PDFHandler {
+ public:
+ struct ObjID {
+ ObjID () : num(-1), gen(0) {}
+ ObjID (int number, int generation) : num(number), gen(generation) {}
+ ObjID (int number, int generation, std::string filename) : num(number), gen(generation), fname(std::move(filename)) {}
+ bool valid () const {return num >= 0;}
+ int num, gen; ///< object and generation number
+ std::string fname;
+ };
+
+ protected:
+ struct ClipPathData {
+ ClipPathData (std::string cpid, SVGElement *group) : id(std::move(cpid)), groupElement(group) {}
+ std::string id;
+ SVGElement *groupElement;
+ };
+
+ public:
+ PDFHandler () =default;
+ explicit PDFHandler (SVGTree &svg) : _svg(&svg) {}
+ PDFHandler (const PDFHandler &page) =delete;
+ PDFHandler (PDFHandler &&page) =delete;
+ ~PDFHandler ();
+ void assignSVGTree (SVGTree &svg) {_svg = &svg;}
+ const BoundingBox& bbox () const {return _bbox;}
+ std::unique_ptr<SVGElement> convert (const std::string &fname, int pageno, std::unique_ptr<SVGElement> context=nullptr);
+ static std::string mutoolVersion ();
+ static BoundingBox bbox (std::string &fname, int pageno);
+ static bool available () {return !mutoolVersion().empty();}
+
+ protected:
+ static std::string mutool (const std::string &cmd, bool readFromStderr=false);
+ static std::string mutool (const std::string &cmd, const SearchPattern &pattern, bool readFromStderr=false);
+ static std::string mtExtract (const std::string &fname, const SearchPattern &pattern);
+ static std::string mtShow (const std::string &fname, const std::string &path, char fmtmode= 'b');
+ static std::string mtShow (const std::string &fname, const std::string &path, const SearchPattern &pattern, char fmtmode= 'b');
+ std::string mtShow (const std::string &path, char fmtmode= 'b') const {return mtShow(_fname, path, fmtmode);}
+ std::string mtShow (const std::string &path, const SearchPattern &pattern, char fmtmode= 'b') const {
+ return mtShow(_fname, path, pattern, fmtmode);
+ }
+ void initFile (const std::string &fname);
+ void finishFile ();
+ void initPage (int pageno, std::unique_ptr<SVGElement> context);
+ std::unique_ptr<SVGElement> finishPage ();
+ void collectObjects ();
+ void elementOpened (XMLElement *trcElement);
+ void elementClosed (XMLElement *trcElement);
+ void doClipPath (XMLElement *trcClipPathElement);
+ void doClipStrokePath (XMLElement *trcClipStrokePathElement);
+ void doClipText (XMLElement *trcClipTextElement);
+ void doPopClip (XMLElement *trcPopClipElement);
+ void doFillPath (XMLElement *trcFillPathElement);
+ void doStrokePath (XMLElement *trcStrokePathElement);
+ void doFillImage (XMLElement *trcFillImageElement);
+ void doFillText (XMLElement *trcFillTextElement);
+ void doOpenTile (XMLElement *trcTileElement);
+ void doCloseTile (XMLElement *trcTileElement);
+
+ private:
+ std::string _fname;
+ int _pageno=0;
+ int _numPages=0;
+ std::map<int,std::string> _extractedFiles;
+ std::map<std::string,ObjID> _objDict; ///< object names => object IDs
+ std::vector<std::string> _imgSeq;
+ NativeFont *_currentFont=nullptr; ///< currently selected font
+ size_t _numClipPath=0; ///< number of clipping paths processed
+ size_t _numImages=0; ///< number of embedded images already processed
+ size_t _numPatterns=0; ///< number of patterns processed
+ std::stack<ClipPathData> _clipPathStack;
+ double _x=0, _y=0; ///< current character position
+ BoundingBox _bbox; ///< bounding box of current/last page processed
+ SVGTree *_svg=nullptr;
+ XMLElement *_context=nullptr; ///< node holding the generated page contents
+};
+
+#endif
diff --git a/dviware/dvisvgm/src/PDFParser.cpp b/dviware/dvisvgm/src/PDFParser.cpp
index 5d00a5da58..b92ce54e7f 100644
--- a/dviware/dvisvgm/src/PDFParser.cpp
+++ b/dviware/dvisvgm/src/PDFParser.cpp
@@ -2,7 +2,7 @@
** PDFParser.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PDFParser.hpp b/dviware/dvisvgm/src/PDFParser.hpp
index 02cd7078e7..bf76a94616 100644
--- a/dviware/dvisvgm/src/PDFParser.hpp
+++ b/dviware/dvisvgm/src/PDFParser.hpp
@@ -2,7 +2,7 @@
** PDFParser.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PDFToSVG.cpp b/dviware/dvisvgm/src/PDFToSVG.cpp
new file mode 100644
index 0000000000..b0e3df58ba
--- /dev/null
+++ b/dviware/dvisvgm/src/PDFToSVG.cpp
@@ -0,0 +1,92 @@
+/*************************************************************************
+** PDFToSVG.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <cstdlib>
+#include "Message.hpp"
+#include "PDFToSVG.hpp"
+
+using namespace std;
+
+
+PDFToSVG::PDFToSVG (const string &fname, SVGOutputBase &out) : ImageToSVG(fname, out) {
+ _useGS = (gsVersion() > 0 && gsVersion() < 10010);
+ if (const char *pdfproc = getenv("DVISVGM_PDF_PROC")) {
+ if (strcmp(pdfproc, "gs") == 0)
+ _useGS = true;
+ else if (strcmp(pdfproc, "mutool") == 0)
+ _useGS = false;
+ }
+ if (!_useGS)
+ _pdfHandler.assignSVGTree(_svg);
+}
+
+
+void PDFToSVG::checkGSAndFileFormat () {
+ if (_useGS)
+ ImageToSVG::checkGSAndFileFormat();
+ else {
+ if (!PDFHandler::available()) {
+ ostringstream oss;
+ if (gsVersion() > 0) {
+ oss << "To process PDF files, either Ghostscript < 10.1 or mutool is required.\n";
+ oss << "The installed Ghostscript version " << Ghostscript().revisionstr() << " isn't supported.\n";
+ throw MessageException(oss.str());
+ }
+ }
+ }
+ if (!imageIsValid())
+ throw MessageException("invalid "+imageFormat()+" file");
+}
+
+
+/** Returns the total number of pages in the PDF file. */
+int PDFToSVG::totalPageCount () const {
+ if (_totalPageCount < 0) {
+ _totalPageCount = psInterpreter().pdfPageCount(filename());
+ if (_totalPageCount < 1)
+ throw MessageException("can't retrieve number of pages from file " + filename());
+ }
+ return _totalPageCount;
+}
+
+
+bool PDFToSVG::imageIsValid () const {
+ ifstream ifs(filename());
+ if (ifs) {
+ char buf[16];
+ ifs.getline(buf, 16);
+ return std::strncmp(buf, "%PDF-1.", 7) == 0;
+ }
+ return false;
+}
+
+
+void PDFToSVG::convert (int pageno) {
+ if (_useGS)
+ ImageToSVG::convert(pageno);
+ else {
+ Message::mstream().indent(0);
+ Message::mstream(false, Message::MC_PAGE_NUMBER) << "processing PDF file\n";
+ Message::mstream().indent(1);
+ _pdfHandler.convert(filename(), pageno);
+ embed(_pdfHandler.bbox());
+ writeSVG(pageno);
+ }
+} \ No newline at end of file
diff --git a/dviware/dvisvgm/src/PDFToSVG.hpp b/dviware/dvisvgm/src/PDFToSVG.hpp
index 4385612b69..4319c59c51 100644
--- a/dviware/dvisvgm/src/PDFToSVG.hpp
+++ b/dviware/dvisvgm/src/PDFToSVG.hpp
@@ -2,7 +2,7 @@
** PDFToSVG.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -23,40 +23,27 @@
#include <fstream>
#include "ImageToSVG.hpp"
+#include "PDFHandler.hpp"
-class PsSpecialHandler;
class PDFToSVG : public ImageToSVG {
public:
- PDFToSVG (const std::string &fname, SVGOutputBase &out) : ImageToSVG(fname, out) {}
+ PDFToSVG (const std::string &fname, SVGOutputBase &out);
bool isSinglePageFormat() const override {return false;}
-
- /** Returns the total number of pages in the PDF file. */
- int totalPageCount() const override {
- if (_totalPageCount < 0) {
- _totalPageCount = psInterpreter().pdfPageCount(filename());
- if (_totalPageCount < 1)
- throw MessageException("can't retrieve number of pages from file " + filename());
- }
- return _totalPageCount;
- }
+ int totalPageCount() const override;
+ void convert (int pageno) override;
protected:
- bool imageIsValid () const override {
- std::ifstream ifs(filename());
- if (ifs) {
- char buf[16];
- ifs.getline(buf, 16);
- return std::strncmp(buf, "%PDF-1.", 7) == 0;
- }
- return false;
- }
+ void checkGSAndFileFormat () override;
+ bool imageIsValid () const override;
std::string imageFormat () const override {return "PDF";}
- BoundingBox imageBBox () const override {return BoundingBox();}
+ BoundingBox imageBBox () const override {return {};}
std::string psSpecialCmd () const override {return "pdffile=";}
private:
mutable int _totalPageCount = -1;
+ PDFHandler _pdfHandler;
+ bool _useGS = true;
};
#endif
diff --git a/dviware/dvisvgm/src/PSFilter.hpp b/dviware/dvisvgm/src/PSFilter.hpp
index 30ca010809..17dcf0d93e 100644
--- a/dviware/dvisvgm/src/PSFilter.hpp
+++ b/dviware/dvisvgm/src/PSFilter.hpp
@@ -2,7 +2,7 @@
** PSFilter.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PSInterpreter.cpp b/dviware/dvisvgm/src/PSInterpreter.cpp
index cb74120309..1c20bb6bb4 100644
--- a/dviware/dvisvgm/src/PSInterpreter.cpp
+++ b/dviware/dvisvgm/src/PSInterpreter.cpp
@@ -2,7 +2,7 @@
** PSInterpreter.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -81,6 +81,16 @@ void PSInterpreter::init () {
}
+/** Sets or replaces the filter applied to the PS code.
+ * @param[in] filter the new filter being used
+ * @return the previous, replaced filter (nullptr if there was none) */
+PSFilter* PSInterpreter::setFilter (PSFilter *filter) {
+ PSFilter *prevFilter = _filter;
+ _filter = filter;
+ return prevFilter;
+}
+
+
PSActions* PSInterpreter::setActions (PSActions *actions) {
PSActions *old_actions = _actions;
_actions = actions;
diff --git a/dviware/dvisvgm/src/PSInterpreter.hpp b/dviware/dvisvgm/src/PSInterpreter.hpp
index b2e2616d5e..6562e3bf98 100644
--- a/dviware/dvisvgm/src/PSInterpreter.hpp
+++ b/dviware/dvisvgm/src/PSInterpreter.hpp
@@ -2,7 +2,7 @@
** PSInterpreter.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -108,13 +108,14 @@ class PSInterpreter {
bool executeRaw (const std::string &str, int n);
bool active () const {return _mode != PS_QUIT;}
void limit (size_t max_bytes) {_bytesToRead = max_bytes;}
- void setFilter (PSFilter *filter) {_filter = filter;}
+ PSFilter* setFilter (PSFilter *filter);
PSActions* setActions (PSActions *actions);
int pdfPageCount (const std::string &fname);
BoundingBox pdfPageBox (const std::string &fname, int pageno);
const std::vector<std::string>& rawData () const {return _rawData;}
bool setImageDevice (const std::string &deviceStr);
bool hasFullOpacitySupport () const {return _gs.revision() >= 952;}
+ bool supportsPDF () const {return _gs.revision() > 0 && _gs.revision() < 10010;}
static std::vector<PSDeviceInfo> getImageDeviceInfos ();
static void listImageDeviceInfos (std::ostream &os);
static bool imageDeviceKnown (std::string deviceStr);
diff --git a/dviware/dvisvgm/src/PSPattern.cpp b/dviware/dvisvgm/src/PSPattern.cpp
index cbb4f10807..a2c935d579 100644
--- a/dviware/dvisvgm/src/PSPattern.cpp
+++ b/dviware/dvisvgm/src/PSPattern.cpp
@@ -2,7 +2,7 @@
** PSPattern.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PSPattern.hpp b/dviware/dvisvgm/src/PSPattern.hpp
index ca152f8e2a..33d5762f56 100644
--- a/dviware/dvisvgm/src/PSPattern.hpp
+++ b/dviware/dvisvgm/src/PSPattern.hpp
@@ -2,7 +2,7 @@
** PSPattern.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PSPreviewFilter.cpp b/dviware/dvisvgm/src/PSPreviewFilter.cpp
index fb55435a95..960812a4e0 100644
--- a/dviware/dvisvgm/src/PSPreviewFilter.cpp
+++ b/dviware/dvisvgm/src/PSPreviewFilter.cpp
@@ -2,7 +2,7 @@
** PSPreviewFilter.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PSPreviewFilter.hpp b/dviware/dvisvgm/src/PSPreviewFilter.hpp
index 3ffe6ffdb1..24426529bf 100644
--- a/dviware/dvisvgm/src/PSPreviewFilter.hpp
+++ b/dviware/dvisvgm/src/PSPreviewFilter.hpp
@@ -2,7 +2,7 @@
** PSPreviewFilter.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PageRanges.cpp b/dviware/dvisvgm/src/PageRanges.cpp
index 4af8ff2bc4..e80aa4839b 100644
--- a/dviware/dvisvgm/src/PageRanges.cpp
+++ b/dviware/dvisvgm/src/PageRanges.cpp
@@ -2,7 +2,7 @@
** PageRanges.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -24,6 +24,11 @@
using namespace std;
+using FilterFunc = bool (*)(int);
+
+static bool is_even (int n) {return n % 2 == 0;}
+static bool is_odd (int n) {return n % 2 == 1;}
+
/** Analyzes a string describing a range sequence.
* Syntax: ([0-9]+(-[0-9]*)?)|(-[0-9]+)(,([0-9]+(-[0-9]*)?)|(-[0-9]+))*
@@ -33,32 +38,31 @@ using namespace std;
bool PageRanges::parse (const string &str, int max_page) {
StringInputBuffer ib(str);
BufferInputReader ir(ib);
- while (ir) {
+ while (ir && ir.peek() != ':') {
int first=1;
int last=max_page;
ir.skipSpace();
if (!isdigit(ir.peek()) && ir.peek() != '-')
return false;
-
if (isdigit(ir.peek()))
first = ir.getInt();
ir.skipSpace();
- if (ir.peek() == '-') {
+ if (ir.peek() != '-')
+ last = first;
+ else {
while (ir.peek() == '-')
ir.get();
ir.skipSpace();
if (isdigit(ir.peek()))
last = ir.getInt();
}
- else
- last = first;
ir.skipSpace();
if (ir.peek() == ',') {
ir.get();
if (ir.eof())
return false;
}
- else if (!ir.eof())
+ else if (!ir.eof() && ir.peek() != ':')
return false;
if (first > last)
swap(first, last);
@@ -70,10 +74,40 @@ bool PageRanges::parse (const string &str, int max_page) {
}
addRange(first, last);
}
+ // apply filter if present
+ if (ir.peek() == ':') {
+ ir.get();
+ string filterName = ir.getWord();
+ FilterFunc filterFunc;
+ if (filterName == "even")
+ filterFunc = &is_even;
+ else if (filterName == "odd")
+ filterFunc = &is_odd;
+ else
+ return false;
+ *this = filter(filterFunc);
+ }
return true;
}
+/** Returns a new PageRanges object that contains only the values
+ * for which the given filter function returns true. */
+PageRanges PageRanges::filter (FilterFunc filterFunc) const {
+ PageRanges newRanges;
+ if (filterFunc == nullptr)
+ newRanges = *this;
+ else {
+ for (const auto &range : *this) {
+ for (int i=range.first; i <= range.second; i++)
+ if (filterFunc(i))
+ newRanges.addRange(i, i);
+ }
+ }
+ return newRanges;
+}
+
+
/** Returns the number of pages. */
size_t PageRanges::numberOfPages () const {
size_t sum=0;
diff --git a/dviware/dvisvgm/src/PageRanges.hpp b/dviware/dvisvgm/src/PageRanges.hpp
index 1a2de678a1..d998d28c9f 100644
--- a/dviware/dvisvgm/src/PageRanges.hpp
+++ b/dviware/dvisvgm/src/PageRanges.hpp
@@ -2,7 +2,7 @@
** PageRanges.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -27,6 +27,7 @@
class PageRanges : public NumericRanges<int> {
public:
bool parse (const std::string &str, int max_page=0);
+ PageRanges filter (bool (*filterFunc)(int)) const;
size_t numberOfPages () const;
};
diff --git a/dviware/dvisvgm/src/PageSize.cpp b/dviware/dvisvgm/src/PageSize.cpp
index a1d29bfcb6..1af696fe58 100644
--- a/dviware/dvisvgm/src/PageSize.cpp
+++ b/dviware/dvisvgm/src/PageSize.cpp
@@ -2,7 +2,7 @@
** PageSize.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PageSize.hpp b/dviware/dvisvgm/src/PageSize.hpp
index 735b526bed..8670f718c1 100644
--- a/dviware/dvisvgm/src/PageSize.hpp
+++ b/dviware/dvisvgm/src/PageSize.hpp
@@ -2,7 +2,7 @@
** PageSize.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Pair.hpp b/dviware/dvisvgm/src/Pair.hpp
index 44236717ef..c1fdd5b6d5 100644
--- a/dviware/dvisvgm/src/Pair.hpp
+++ b/dviware/dvisvgm/src/Pair.hpp
@@ -2,7 +2,7 @@
** Pair.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -73,6 +73,7 @@ inline T det (const Pair<T> &p1, const Pair<T> &p2) {
struct Pair32 : public Pair<int32_t> {
explicit Pair32 (int32_t x=0, int32_t y=0) : Pair<int32_t>(x, y) {}
explicit Pair32 (double x, double y) : Pair<int32_t>(lround(x), lround(y)) {}
+ explicit Pair32 (const Pair<double> &p) : Pair32(p.x(), p.y()) {}
Pair32 (const Pair<int32_t> &p) : Pair<int32_t>(p) {}
};
@@ -82,6 +83,11 @@ inline DPair round (const DPair &p) {
return DPair(std::lround(p.x()), std::lround(p.y()));
}
+
+template<> template<>
+inline Pair<int>::Pair (const Pair<double> &p) : _x(int(round(p.x()))), _y(int(round(p.y()))) {}
+
+
template <typename T>
IMPLEMENT_ARITHMETIC_OPERATOR(Pair<T>, +)
diff --git a/dviware/dvisvgm/src/PapersizeSpecialHandler.cpp b/dviware/dvisvgm/src/PapersizeSpecialHandler.cpp
index 557bea8679..b070643f6d 100644
--- a/dviware/dvisvgm/src/PapersizeSpecialHandler.cpp
+++ b/dviware/dvisvgm/src/PapersizeSpecialHandler.cpp
@@ -2,7 +2,7 @@
** PapersizeSpecialHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PapersizeSpecialHandler.hpp b/dviware/dvisvgm/src/PapersizeSpecialHandler.hpp
index ab20a22091..621de709db 100644
--- a/dviware/dvisvgm/src/PapersizeSpecialHandler.hpp
+++ b/dviware/dvisvgm/src/PapersizeSpecialHandler.hpp
@@ -2,7 +2,7 @@
** PapersizeSpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PathClipper.cpp b/dviware/dvisvgm/src/PathClipper.cpp
index b6a26c418e..50030f9657 100644
--- a/dviware/dvisvgm/src/PathClipper.cpp
+++ b/dviware/dvisvgm/src/PathClipper.cpp
@@ -2,7 +2,7 @@
** PathClipper.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -51,7 +51,7 @@ inline DPair to_DPair (const IntPoint &p) {
* is called. */
class FlattenActions : public CurvedPath::IterationActions {
public:
- FlattenActions (vector<Bezier> &curves, Polygons &polygons, int &numLines)
+ FlattenActions (vector<CubicBezier> &curves, Polygons &polygons, int &numLines)
: _polygons(polygons), _curves(curves), _numLines(numLines) {}
void moveto (const CurvedPath::Point &p) override {
@@ -74,12 +74,12 @@ class FlattenActions : public CurvedPath::IterationActions {
}
void quadto (const CurvedPath::Point &p1, const CurvedPath::Point &p2) override {
- Bezier bezier(_currentPoint, p1, p2);
- addCurvePoints(bezier);
+ QuadBezier qbezier(_currentPoint, p1, p2);
+ addCurvePoints(CubicBezier(qbezier));
}
void cubicto (const CurvedPath::Point &p1, const CurvedPath::Point &p2, const CurvedPath::Point &p3) override {
- Bezier bezier(_currentPoint, p1, p2, p3);
+ CubicBezier bezier(_currentPoint, p1, p2, p3);
addCurvePoints(bezier);
}
@@ -98,7 +98,7 @@ class FlattenActions : public CurvedPath::IterationActions {
}
protected:
- void addCurvePoints (const Bezier &bezier) {
+ void addCurvePoints (const CubicBezier &bezier) {
if (_currentPoly.empty()) // this shouldn't happen but in case it does, ...
_currentPoly.emplace_back(IntPoint(0, 0, 0)); // ...add a start point first
vector<DPair> points; // points of flattened curve
@@ -122,7 +122,7 @@ class FlattenActions : public CurvedPath::IterationActions {
CurvedPath::Point _startPoint, _currentPoint;
Polygon _currentPoly; ///< polygon being created
Polygons &_polygons; ///< all polygons created
- vector<Bezier> &_curves;
+ vector<CubicBezier> &_curves;
int &_numLines;
};
@@ -288,7 +288,7 @@ void PathClipper::reconstruct (const Polygon &polygon, CurvedPath &path) {
if (diff == 1 || label1.id <= 0) // line segment?
path.lineto(to_DPair(polygon[index2]));
else { // Bézier curve segment
- Bezier bezier(_curves[label1.id-1], label1.t, label2.t);
+ CubicBezier bezier(_curves[label1.id-1], label1.t, label2.t);
if (label1.t > label2.t)
bezier.reverse();
path.cubicto(bezier.point(1), bezier.point(2), bezier.point(3));
diff --git a/dviware/dvisvgm/src/PathClipper.hpp b/dviware/dvisvgm/src/PathClipper.hpp
index 93b3f6a3da..c398c38db8 100644
--- a/dviware/dvisvgm/src/PathClipper.hpp
+++ b/dviware/dvisvgm/src/PathClipper.hpp
@@ -2,7 +2,7 @@
** PathClipper.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -47,7 +47,7 @@ class PathClipper {
static void callback (IntPoint &e1bot, IntPoint &e1top, IntPoint &e2bot, IntPoint &e2top, IntPoint &ip);
private:
- std::vector<Bezier> _curves;
+ std::vector<CubicBezier> _curves;
int _numLines=0; ///< negative number of straight line segments in path been processed
};
diff --git a/dviware/dvisvgm/src/PdfSpecialHandler.cpp b/dviware/dvisvgm/src/PdfSpecialHandler.cpp
index f54b18de2d..0af7303e8d 100644
--- a/dviware/dvisvgm/src/PdfSpecialHandler.cpp
+++ b/dviware/dvisvgm/src/PdfSpecialHandler.cpp
@@ -2,7 +2,7 @@
** PdfSpecialHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PdfSpecialHandler.hpp b/dviware/dvisvgm/src/PdfSpecialHandler.hpp
index 53f9d94548..b5267939d7 100644
--- a/dviware/dvisvgm/src/PdfSpecialHandler.hpp
+++ b/dviware/dvisvgm/src/PdfSpecialHandler.hpp
@@ -2,7 +2,7 @@
** PdfSpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PreScanDVIReader.cpp b/dviware/dvisvgm/src/PreScanDVIReader.cpp
index bdd3ff1901..dfcb4b1ddb 100644
--- a/dviware/dvisvgm/src/PreScanDVIReader.cpp
+++ b/dviware/dvisvgm/src/PreScanDVIReader.cpp
@@ -2,7 +2,7 @@
** PreScanDVIReader.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/PreScanDVIReader.hpp b/dviware/dvisvgm/src/PreScanDVIReader.hpp
index 6d22f1bf24..2668815a48 100644
--- a/dviware/dvisvgm/src/PreScanDVIReader.hpp
+++ b/dviware/dvisvgm/src/PreScanDVIReader.hpp
@@ -2,7 +2,7 @@
** PreScanDVIReader.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Process.cpp b/dviware/dvisvgm/src/Process.cpp
index f89d502418..72465c0c73 100644
--- a/dviware/dvisvgm/src/Process.cpp
+++ b/dviware/dvisvgm/src/Process.cpp
@@ -2,7 +2,7 @@
** Process.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -29,6 +29,7 @@
#endif
#include <cstdlib>
+#include <regex>
#include "FileSystem.hpp"
#include "Process.hpp"
#include "SignalHandler.hpp"
@@ -43,25 +44,60 @@ class Subprocess {
enum class State {RUNNING, FINISHED, FAILED};
public:
- Subprocess () =default;
+ Subprocess () : _rdbuf(4096) {}
Subprocess (const Subprocess&) =delete;
Subprocess (Subprocess&&) =delete;
~Subprocess ();
- bool run (const string &cmd, string params);
- bool readFromPipe (string &out);
+ bool run (const string &cmd, string params, Process::PipeFlags flags);
+ bool readFromPipe (string &out, const SearchPattern &pattern);
State state ();
+ protected:
+ string read (const SearchPattern &pattern, bool *error=nullptr);
+ size_t readFromPipe (char *buf, size_t size, bool *error=nullptr) const;
+
private:
+ vector<char> _rdbuf;
+ size_t _bufstartpos = 0;
#ifdef _WIN32
- HANDLE _pipeReadHandle=NULL; ///< handle of read end of pipe
- HANDLE _childProcHandle=NULL; ///< handle of child process
+ HANDLE _pipeReadHandle = nullptr; ///< handle of read end of pipe
+ HANDLE _childProcHandle = nullptr; ///< handle of child process
#else
- int _readfd=-1; ///< file descriptor of read end of pipe
- pid_t _pid=-1; ///< PID of the subprocess
+ int _readfd = -1; ///< file descriptor of read end of pipe
+ pid_t _pid = -1; ///< PID of the subprocess
#endif
};
+string Subprocess::read (const SearchPattern &pattern, bool *error) {
+ string result;
+ const size_t bytesRead = readFromPipe(&_rdbuf[_bufstartpos], _rdbuf.size()-_bufstartpos, error);
+ const size_t bufendpos = _bufstartpos + bytesRead;
+ smatch matches;
+ size_t matchendpos= bufendpos; // buffer position after last match
+ if (pattern.search.empty())
+ result.assign(_rdbuf.data(), matchendpos);
+ else {
+ bool matched=false;
+ regex re(pattern.search);
+ for (auto it = cregex_iterator(&_rdbuf[0], &_rdbuf[bufendpos], re); it != cregex_iterator(); ++it) {
+ result += it->format(pattern.replace, regex_constants::format_no_copy);
+ matchendpos = it->position() + it->length();
+ matched = true;
+ }
+ const size_t MAX_OVERLAP=50;
+ size_t overlappos;
+ if (matched)
+ overlappos = max(bufendpos - min(bufendpos, MAX_OVERLAP), matchendpos);
+ else
+ overlappos = matchendpos - min(MAX_OVERLAP, matchendpos);
+ copy(_rdbuf.begin()+overlappos, _rdbuf.begin()+bufendpos, _rdbuf.begin());
+ _bufstartpos = bufendpos-overlappos;
+ }
+ return result;
+}
+
+
Process::Process (string cmd, string paramstr)
: _cmd(std::move(cmd)), _paramstr(std::move(paramstr))
{
@@ -72,14 +108,20 @@ Process::Process (string cmd, string paramstr)
* @param[out] out takes the output written to stdout by the executed subprocess
* @return true if process terminated properly
* @throw SignalException if CTRL-C was pressed during execution */
-bool Process::run (string *out) {
+
+bool Process::run (string *out, PipeFlags flags) {
+ return run(out, SearchPattern(), flags);
+}
+
+
+bool Process::run (string *out, const SearchPattern &pattern, PipeFlags flags) {
Subprocess subprocess;
- if (!subprocess.run(_cmd, _paramstr))
+ if (!subprocess.run(_cmd, _paramstr, flags))
return false;
for (;;) {
if (out) {
out->clear();
- subprocess.readFromPipe(*out);
+ subprocess.readFromPipe(*out, pattern);
}
Subprocess::State state = subprocess.state();
if (state != Subprocess::State::RUNNING)
@@ -94,11 +136,11 @@ bool Process::run (string *out) {
* @param[out] out takes the output written to stdout by the executed process
* @return true if process terminated properly
* @throw SignalException if CTRL-C was pressed during execution */
-bool Process::run (const string &dir, string *out) {
+bool Process::run (const string &dir, string *out, PipeFlags flags) {
bool ret = false;
string cwd = FileSystem::getcwd();
if (FileSystem::chdir(dir)) {
- ret = run(out);
+ ret = run(out, flags);
ret &= FileSystem::chdir(cwd);
}
return ret;
@@ -110,46 +152,61 @@ bool Process::run (const string &dir, string *out) {
static inline void close_and_zero_handle (HANDLE &handle) {
CloseHandle(handle);
- handle = NULL;
+ handle = nullptr;
}
Subprocess::~Subprocess () {
- if (_pipeReadHandle != NULL)
+ if (_pipeReadHandle != nullptr)
CloseHandle(_pipeReadHandle);
- if (_childProcHandle != NULL) {
+ if (_childProcHandle != nullptr) {
TerminateProcess(_childProcHandle, 1);
CloseHandle(_childProcHandle);
}
}
-/** Retrieves output generated by child process.
+/** Retrieves output generated by the child process and optionally filters
+ * the lines by a regular expression and replaces them. If the search pattern
+ * is not empty and the line currently processed doesn't match, the line isn't
+ * appended to the output string.
* @param[out] out read output is appended to this string
+ * @param[in] searchPattern regex pattern applied to each line
+ * @param[in] replacePattern replacement for all lines matching the search pattern
* @returns false on errors */
-bool Subprocess::readFromPipe (string &out) {
+bool Subprocess::readFromPipe (string &out, const SearchPattern &pattern) {
if (!_pipeReadHandle)
return false;
-
- bool success=false;
+ bool finished=false;
bool processExited=false;
DWORD len=0;
- while (PeekNamedPipe(_pipeReadHandle, NULL, 0, NULL, &len, NULL)) { // prevent blocking
+ while (PeekNamedPipe(_pipeReadHandle, nullptr, 0, nullptr, &len, nullptr)) { // prevent blocking
if (len == 0) {
if (processExited)
break;
// process still busy
processExited = (!_childProcHandle || WaitForSingleObject(_childProcHandle, 100) != WAIT_TIMEOUT);
}
- else {
- char buf[4096];
- success = ReadFile(_pipeReadHandle, buf, sizeof(buf), &len, NULL);
- if (!success || len == 0)
- break;
- out.append(buf, len);
- }
+ string buf = read(pattern, &finished);
+ if (buf.empty())
+ break;
+ out.append(buf);
}
- return success;
+ return !finished;
+}
+
+
+/** Reads a sequence of bytes from the pipe into a buffer. The function stops reading
+ * when either all bytes have been read from the pipe or the buffer is completely filled.
+ * @param[in] buf pointer to start of the buffer
+ * @param[in] size maximal number of bytes that can be stored in the buffer
+ * @return number of bytes read */
+size_t Subprocess::readFromPipe (char *buf, size_t size, bool *error) const {
+ DWORD bytesRead;
+ bool success = ReadFile(_pipeReadHandle, buf, size, &bytesRead, nullptr);
+ if (error)
+ *error = !success;
+ return success ? bytesRead : 0;
}
@@ -157,7 +214,7 @@ bool Subprocess::readFromPipe (string &out) {
* @param[in] cmd name of command to execute
* @param[in] paramstr parameters required by command
* @returns true if child process started properly */
-bool Subprocess::run (const string &cmd, string paramstr) {
+bool Subprocess::run (const string &cmd, string paramstr, Process::PipeFlags flags) {
SECURITY_ATTRIBUTES securityAttribs;
ZeroMemory(&securityAttribs, sizeof(SECURITY_ATTRIBUTES));
securityAttribs.nLength = sizeof(SECURITY_ATTRIBUTES);
@@ -168,7 +225,7 @@ bool Subprocess::run (const string &cmd, string paramstr) {
return false;
SetHandleInformation(_pipeReadHandle, HANDLE_FLAG_INHERIT, 0);
- HANDLE nullFile = CreateFile("NUL", GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, &securityAttribs, OPEN_EXISTING, 0, NULL);
+ HANDLE nullFile = CreateFile("NUL", GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, &securityAttribs, OPEN_EXISTING, 0, nullptr);
bool success = false;
if (nullFile != INVALID_HANDLE_VALUE) {
STARTUPINFO startupInfo;
@@ -176,15 +233,15 @@ bool Subprocess::run (const string &cmd, string paramstr) {
startupInfo.cb = sizeof(STARTUPINFO);
startupInfo.dwFlags = STARTF_USESTDHANDLES;
startupInfo.hStdInput = nullFile;
- startupInfo.hStdOutput = pipeWriteHandle;
- startupInfo.hStdError = GetStdHandle(STD_ERROR_HANDLE);
+ startupInfo.hStdOutput = (flags & Process::PF_STDOUT) ? pipeWriteHandle : nullFile;
+ startupInfo.hStdError = (flags & Process::PF_STDERR) ? pipeWriteHandle : nullFile;
PROCESS_INFORMATION processInfo;
ZeroMemory(&processInfo, sizeof(PROCESS_INFORMATION));
string cmdline = cmd + " " + paramstr;
// put subprocess in separate process group to prevent its termination in case of CTRL-C
- success = CreateProcess(NULL, (LPSTR)cmdline.c_str(), NULL, NULL, true, CREATE_NEW_PROCESS_GROUP, NULL, NULL, &startupInfo, &processInfo);
+ success = CreateProcess(nullptr, (LPSTR)cmdline.c_str(), nullptr, nullptr, true, CREATE_NEW_PROCESS_GROUP, nullptr, nullptr, &startupInfo, &processInfo);
if (success) {
_childProcHandle = processInfo.hProcess;
CloseHandle(processInfo.hThread);
@@ -222,22 +279,31 @@ Subprocess::~Subprocess () {
/** Retrieves output generated by child process.
* @param[out] out read output is appended to this string
* @returns false on errors */
-bool Subprocess::readFromPipe (string &out) {
+bool Subprocess::readFromPipe (string &out, const SearchPattern &pattern) {
if (_readfd < 0 || _pid < 0)
return false;
-
- char buf[1024];
- ssize_t len;
- while ((len = read(_readfd, buf, sizeof(buf))) > 0)
- out.append(buf, len);
- if (len < 0) {
+ bool finished=false;
+ for (;;) {
+ string buf = read(pattern, &finished);
+ if (buf.empty())
+ break;
+ out.append(buf);
+ }
+ if (finished) {
close(_readfd);
_readfd = -1;
}
- return len >= 0;
+ return !finished;
}
+size_t Subprocess::readFromPipe (char *buf, size_t size, bool *error) const {
+ auto len = ::read(_readfd, buf, size);
+ if (error)
+ *error = len < 0;
+ return len >= 0 ? size_t(len) : 0;
+}
+
/** Extracts whitespace-separated parameters from a string.
* @param[in,out] paramstr the parameter string
* @param[out] params vector holding pointers to the extracted parameters */
@@ -272,7 +338,7 @@ static void split_paramstr (string &paramstr, vector<const char*> &params) {
* @param[in] cmd name of command to execute or absolute path to executable
* @param[in] paramstr parameters required by the command
* @returns true if child process started properly */
-bool Subprocess::run (const string &cmd, string paramstr) {
+bool Subprocess::run (const string &cmd, string paramstr, Process::PipeFlags flags) {
int pipefd[2];
if (cmd.empty() || pipe(pipefd) < 0)
return false;
@@ -284,10 +350,12 @@ bool Subprocess::run (const string &cmd, string paramstr) {
return false;
}
if (_pid == 0) { // child process
- dup2(pipefd[1], STDOUT_FILENO); // redirect stdout to the pipe
- dup2(pipefd[1], STDERR_FILENO); // redirect stderr to the pipe
+ int devnull = open("/dev/null", O_WRONLY);
+ dup2((flags & Process::PF_STDOUT) ? pipefd[1] : devnull, STDOUT_FILENO); // redirect stdout to the pipe
+ dup2((flags & Process::PF_STDERR) ? pipefd[1] : devnull, STDERR_FILENO); // redirect stdout to the pipe
close(pipefd[0]);
close(pipefd[1]);
+ close(devnull);
vector<const char*> params;
params.push_back(cmd.c_str());
diff --git a/dviware/dvisvgm/src/Process.hpp b/dviware/dvisvgm/src/Process.hpp
index a0668c354f..5fa5e9765b 100644
--- a/dviware/dvisvgm/src/Process.hpp
+++ b/dviware/dvisvgm/src/Process.hpp
@@ -2,7 +2,7 @@
** Process.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -23,13 +23,30 @@
#include <string>
+struct SearchPattern {
+ SearchPattern () =default;
+
+ explicit SearchPattern (std::string searchRegex)
+ : search(std::move(searchRegex)) {}
+
+ SearchPattern (std::string searchRegex, std::string replExpr)
+ : search(std::move(searchRegex)), replace(std::move(replExpr)) {}
+
+ std::string search;
+ std::string replace;
+};
+
+
class Process {
public:
+ enum PipeFlags {PF_STDOUT=1, PF_STDERR=2};
+
Process (std::string cmd, std::string paramstr);
Process (const Process &orig) =delete;
Process (Process &&orig) =delete;
- bool run (std::string *out=nullptr);
- bool run (const std::string &dir, std::string *out=nullptr);
+ bool run (std::string *out=nullptr, PipeFlags flags=PF_STDOUT);
+ bool run (const std::string &dir, std::string *out=nullptr, PipeFlags flags=PF_STDOUT);
+ bool run (std::string *out, const SearchPattern &pattern, PipeFlags flags=PF_STDOUT);
private:
std::string _cmd;
diff --git a/dviware/dvisvgm/src/PsSpecialHandler.cpp b/dviware/dvisvgm/src/PsSpecialHandler.cpp
index 7ece9b16ba..7645adea02 100644
--- a/dviware/dvisvgm/src/PsSpecialHandler.cpp
+++ b/dviware/dvisvgm/src/PsSpecialHandler.cpp
@@ -2,7 +2,7 @@
** PsSpecialHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -20,7 +20,6 @@
#include <array>
#include <cmath>
-#include <fstream>
#include <memory>
#include <sstream>
#include "FileFinder.hpp"
@@ -45,6 +44,7 @@ bool PsSpecialHandler::SHADING_SEGMENT_OVERLAP = false;
int PsSpecialHandler::SHADING_SEGMENT_SIZE = 20;
double PsSpecialHandler::SHADING_SIMPLIFY_DELTA = 0.01;
string PsSpecialHandler::BITMAP_FORMAT;
+bool PsSpecialHandler::EMBED_BITMAP_DATA = false;
PsSpecialHandler::PsSpecialHandler () : _psi(this), _previewFilter(_psi)
@@ -155,7 +155,9 @@ void PsSpecialHandler::executeAndSync (istream &is, bool updatePos) {
_actions->getColor().getRGB(r, g, b);
ostringstream oss;
oss << '\n' << r << ' ' << g << ' ' << b << " setrgbcolor ";
+ PSFilter *filter = _psi.setFilter(nullptr); // don't apply any filters here
_psi.execute(oss.str(), false);
+ _psi.setFilter(filter);
}
_psi.execute(is);
if (updatePos) {
@@ -220,7 +222,7 @@ bool PsSpecialHandler::process (const string &prefix, istream &is, SpecialAction
string fname = in.getQuotedString(in.peek() == '"' ? "\"" : nullptr);
fname = FileSystem::ensureForwardSlashes(fname);
FileType fileType = FileType::EPS;
- if (prefix == "pdffile")
+ if (prefix == "pdffile=")
fileType = FileType::PDF;
else {
// accept selected non-PS files in psfile special
@@ -308,6 +310,7 @@ void PsSpecialHandler::imgfile (FileType filetype, const string &fname, const ma
double urx = (it = attr.find("urx")) != attr.end() ? stod(it->second) : 0;
double ury = (it = attr.find("ury")) != attr.end() ? stod(it->second) : 0;
int pageno = (it = attr.find("page")) != attr.end() ? stoi(it->second, nullptr, 10) : 1;
+ _pdfProc = ((it = attr.find("proc")) != attr.end() ? it->second : "");
if (filetype == FileType::BITMAP || filetype == FileType::SVG)
swap(lly, ury);
@@ -357,24 +360,21 @@ void PsSpecialHandler::imgfile (FileType filetype, const string &fname, const ma
_actions->setX(0);
_actions->setY(0);
moveToDVIPos();
-
auto imgNode = createImageNode(filetype, fname, pageno, BoundingBox(llx, lly, urx, ury), clipToBbox);
- if (imgNode) { // has anything been drawn?
- Matrix matrix(1);
+ if (imgNode.element) { // has anything been drawn?
if (filetype == FileType::EPS || filetype == FileType::PDF)
sy = -sy; // adapt orientation of y-coordinates
- matrix.scale(sx, sy).rotate(-angle).scale(hscale/100, vscale/100); // apply transformation attributes
- matrix.translate(x+hoffset, y-voffset); // move image to current DVI position
- matrix.lmultiply(_actions->getMatrix());
+ imgNode.matrix.scale(sx, sy).rotate(-angle).scale(hscale/100, vscale/100); // apply transformation attributes
+ imgNode.matrix.translate(x+hoffset, y-voffset); // move image to current DVI position
+ imgNode.matrix.lmultiply(_actions->getMatrix());
// update bounding box
BoundingBox bbox(0, 0, urx-llx, ury-lly);
- bbox.transform(matrix);
+ bbox.transform(imgNode.matrix);
_actions->embed(bbox);
-
// insert element containing the image data
- matrix.rmultiply(TranslationMatrix(-llx, -lly)); // move lower left corner of image to origin
- imgNode->setTransform(matrix);
- _actions->svgTree().appendToPage(std::move(imgNode));
+ imgNode.matrix.rmultiply(TranslationMatrix(-llx, -lly)); // move lower left corner of image to origin
+ imgNode.element->setTransform(imgNode.matrix);
+ _actions->svgTree().appendToPage(std::move(imgNode.element));
}
// restore DVI position
_actions->setX(x);
@@ -397,8 +397,8 @@ static string image_base_path (const SpecialActions &actions) {
* @param[in] bbox bounding box of the image
* @param[in] clip if true, the image is clipped to its bounding box
* @return pointer to the element or nullptr if there's no image data */
-unique_ptr<SVGElement> PsSpecialHandler::createImageNode (FileType type, const string &fname, int pageno, BoundingBox bbox, bool clip) {
- unique_ptr<SVGElement> node;
+PsSpecialHandler::ImageNode PsSpecialHandler::createImageNode (FileType type, const string &fname, int pageno, BoundingBox bbox, bool clip) {
+ ImageNode imgnode;
string pathstr;
if (const char *path = FileFinder::instance().lookup(fname, false))
pathstr = FileSystem::ensureForwardSlashes(path);
@@ -406,48 +406,100 @@ unique_ptr<SVGElement> PsSpecialHandler::createImageNode (FileType type, const s
pathstr = fname;
if (pathstr.empty())
Message::wstream(true) << "file '" << fname << "' not found\n";
- else if (type == FileType::BITMAP || type == FileType::SVG) {
- node = util::make_unique<SVGElement>("image");
- node->addAttribute("x", 0);
- node->addAttribute("y", 0);
- node->addAttribute("width", bbox.width());
- node->addAttribute("height", bbox.height());
-
- // Only reference the image with an absolute path if either an absolute path was given by the user
- // or a given plain filename is not present in the current working directory but was found through
- // the FileFinder, i.e. it's usually located somewhere in the texmf tree.
- string href = pathstr;
- if (!FilePath::isAbsolute(fname) && (fname.find('/') != string::npos || FilePath(fname).exists()))
- href = FilePath(pathstr).relative(FilePath(_actions->getSVGFilePath(pageno)));
- node->addAttribute("xlink:href", href);
+ else if (type == FileType::BITMAP || type == FileType::SVG)
+ imgnode = createBitmapNode(fname, pathstr, pageno, bbox);
+ else if (type == FileType::EPS)
+ imgnode = createPSNode(fname, pathstr, pageno, bbox, clip);
+ else
+ imgnode = createPDFNode(fname, pathstr, pageno, bbox, clip);
+ return imgnode;
+}
+
+
+PsSpecialHandler::ImageNode PsSpecialHandler::createBitmapNode (const string &fname, const string &path, int pageno, BoundingBox bbox) {
+ ImageNode imgnode(util::make_unique<SVGElement>("image"));
+ imgnode.element->addAttribute("x", 0);
+ imgnode.element->addAttribute("y", 0);
+ imgnode.element->addAttribute("width", bbox.width());
+ imgnode.element->addAttribute("height", bbox.height());
+
+ // Only reference the image with an absolute path if either an absolute path was given by the user
+ // or a given plain filename is not present in the current working directory but was found through
+ // the FileFinder, i.e. it's usually located somewhere in the texmf tree.
+ string href = path;
+ if (!FilePath::isAbsolute(fname) && (fname.find('/') != string::npos || FilePath(fname).exists()))
+ href = FilePath(path).relative(FilePath(_actions->getSVGFilePath(pageno)));
+ if (EMBED_BITMAP_DATA)
+ imgnode.element->addAttribute("@@xlink:href", "data:" + util::mimetype(fname) + ";base64," + fname);
+ else
+ imgnode.element->addAttribute("xlink:href", href);
+ return imgnode;
+}
+
+
+PsSpecialHandler::ImageNode PsSpecialHandler::createPSNode (const string &fname, const string &path, int pageno, BoundingBox bbox, bool clip) {
+ ImageNode imgnode(util::make_unique<SVGElement>("g")); // put SVG nodes created from the EPS/PDF file in this group
+ _xmlnode = imgnode.element.get();
+ _psi.execute(
+ "\n@beginspecial @setspecial" // enter special environment
+ "/setpagedevice{@setpagedevice}def " // activate processing of operator "setpagedevice"
+ "/@imgbase("+image_base_path(*_actions)+")store " // path and basename of image files
+ "matrix setmatrix" // don't apply outer PS transformations
+ "/FirstPage "+to_string(pageno)+" def" // set number of first page to convert (PDF only)
+ "/LastPage "+to_string(pageno)+" def" // set number of last page to convert (PDF only)
+ "(" + path + ")run " // execute file content
+ "@endspecial\n" // leave special environment
+ );
+ if (imgnode.element->empty())
+ imgnode.element.reset(nullptr);
+ else if (clip) {
+ // clip image to its bounding box if flag 'clip' is given
+ auto clippath = util::make_unique<SVGElement>("clipPath");
+ clippath->addAttribute("id", "imgclip"+ to_string(_imgClipCount));
+ clippath->append(bbox.createSVGPath());
+ imgnode.element->setClipPathUrl("imgclip" + to_string(_imgClipCount++));
+ _actions->svgTree().appendToDefs(std::move(clippath));
}
- else { // PostScript or PDF
- node = util::make_unique<SVGElement>("g"); // put SVG nodes created from the EPS/PDF file in this group
-
- _xmlnode = node.get();
- _psi.execute(
- "\n@beginspecial @setspecial" // enter special environment
- "/setpagedevice{@setpagedevice}def " // activate processing of operator "setpagedevice"
- "/@imgbase("+image_base_path(*_actions)+")store " // path and basename of image files
- "matrix setmatrix" // don't apply outer PS transformations
- "/FirstPage "+to_string(pageno)+" def" // set number of first page to convert (PDF only)
- "/LastPage "+to_string(pageno)+" def" // set number of last page to convert (PDF only)
- "(" + pathstr + ")run " // execute file content
- "@endspecial\n" // leave special environment
- );
- if (node->empty())
- node.reset(nullptr);
- else if (clip) {
- // clip image to its bounding box if flag 'clip' is given
- auto clippath = util::make_unique<SVGElement>("clipPath");
- clippath->addAttribute("id", "imgclip"+ to_string(_imgClipCount));
- clippath->append(bbox.createSVGPath());
- node->setClipPathUrl("imgclip"+ to_string(_imgClipCount++));
- _actions->svgTree().appendToDefs(std::move(clippath));
+ _xmlnode = nullptr; // append following elements to page group again
+ return imgnode;
+}
+
+
+PsSpecialHandler::ImageNode PsSpecialHandler::createPDFNode (const string &fname, const string &path, int pageno, BoundingBox bbox, bool clip) {
+ if (_pdfProc == "gs" || (_pdfProc.empty() && _psi.supportsPDF()))
+ return createPSNode(fname, path, pageno, bbox, clip);
+
+ ImageNode imgnode;
+ if (PDFHandler::available()) {
+ // save SVG state
+ auto savedFont = _actions->svgTree().getFontPair();
+ auto savedMatrix = _actions->svgTree().getMatrix();
+ auto savedColor = _actions->svgTree().getColor();
+
+ imgnode.element = util::make_unique<SVGElement>("g");
+ _pdfHandler.assignSVGTree(_actions->svgTree());
+ imgnode.element = _pdfHandler.convert(path, pageno, std::move(imgnode.element));
+
+ // restore SVG state
+ if (savedFont.second)
+ _actions->svgTree().setFont(savedFont.first, *savedFont.second);
+ _actions->svgTree().setMatrix(savedMatrix);
+ _actions->svgTree().setColor(savedColor);
+
+ if (imgnode.element->empty())
+ imgnode.element.reset(nullptr);
+ else {
+ imgnode.matrix.translate(0, -bbox.height()).scale(1, -1);
+ if (clip) {
+ auto clippath = util::make_unique<SVGElement>("clipPath");
+ clippath->addAttribute("id", "imgclip" + to_string(_imgClipCount));
+ clippath->append(bbox.createSVGPath());
+ imgnode.element->setClipPathUrl("imgclip" + to_string(_imgClipCount++));
+ _actions->svgTree().appendToDefs(std::move(clippath));
+ }
}
- _xmlnode = nullptr; // append following elements to page group again
}
- return node;
+ return imgnode;
}
@@ -789,8 +841,7 @@ void PsSpecialHandler::image (std::vector<double> &p) {
// To prevent memory issues, only add the filename to the href attribute and tag it by '@'
// for later base64 encoding.
- image->addAttribute("@xlink:href", string("data:image/")+(suffix == ".png" ? "png" : "jpeg")+";base64,"+fname);
-
+ image->addAttribute("@xlink:href", "data:"+util::mimetype(fname)+";base64,"+fname);
// if set, assign clipping path to image
if (_clipStack.path()) {
auto group = util::make_unique<SVGElement>("g");
diff --git a/dviware/dvisvgm/src/PsSpecialHandler.hpp b/dviware/dvisvgm/src/PsSpecialHandler.hpp
index 6a35052b27..695eb78d03 100644
--- a/dviware/dvisvgm/src/PsSpecialHandler.hpp
+++ b/dviware/dvisvgm/src/PsSpecialHandler.hpp
@@ -2,7 +2,7 @@
** PsSpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -27,6 +27,7 @@
#include <string>
#include <vector>
#include "GraphicsPath.hpp"
+#include "PDFHandler.hpp"
#include "PSInterpreter.hpp"
#include "Opacity.hpp"
#include "PSPattern.hpp"
@@ -76,6 +77,14 @@ class PsSpecialHandler : public SpecialHandler, protected PSActions {
std::stack<Entry> _stack; ///< stack holding the clipping information of the current graphics context
};
+ struct ImageNode {
+ ImageNode () : matrix(1) {}
+ explicit ImageNode (std::unique_ptr<SVGElement> elem) : element(std::move(elem)), matrix(1) {}
+ ImageNode (std::unique_ptr<SVGElement> elem, const Matrix &m) : element(std::move(elem)), matrix(m) {}
+ std::unique_ptr<SVGElement> element;
+ Matrix matrix;
+ };
+
enum PsSection {PS_NONE, PS_HEADERS, PS_BODY};
enum class FileType {EPS, PDF, SVG, BITMAP};
@@ -97,6 +106,7 @@ class PsSpecialHandler : public SpecialHandler, protected PSActions {
static int SHADING_SEGMENT_SIZE;
static double SHADING_SIMPLIFY_DELTA;
static std::string BITMAP_FORMAT;
+ static bool EMBED_BITMAP_DATA;
protected:
void initialize ();
@@ -105,7 +115,10 @@ class PsSpecialHandler : public SpecialHandler, protected PSActions {
void executeAndSync (std::istream &is, bool updatePos);
void processHeaderFile (const char *fname);
void imgfile (FileType type, const std::string &fname, const std::map<std::string,std::string> &attr);
- std::unique_ptr<SVGElement> createImageNode (FileType type, const std::string &fname, int pageno, BoundingBox bbox, bool clip);
+ ImageNode createImageNode (FileType type, const std::string &fname, int pageno, BoundingBox bbox, bool clip);
+ ImageNode createBitmapNode (const std::string &fname, const std::string &path, int pageno, BoundingBox bbox);
+ ImageNode createPSNode (const std::string &fname, const std::string &path, int pageno, BoundingBox bbox, bool clip);
+ ImageNode createPDFNode (const std::string &fname, const std::string &path, int pageno, BoundingBox bbox, bool clip);
void dviBeginPage (unsigned int pageno, SpecialActions &actions) override;
void dviEndPage (unsigned pageno, SpecialActions &actions) override;
void clip (Path path, bool evenodd);
@@ -164,6 +177,7 @@ class PsSpecialHandler : public SpecialHandler, protected PSActions {
private:
PSInterpreter _psi;
+ PDFHandler _pdfHandler;
SpecialActions *_actions=nullptr;
PSPreviewFilter _previewFilter; ///< filter to extract information generated by the preview package
PsSection _psSection=PS_NONE; ///< current section processed (nothing yet, headers, or body specials)
@@ -189,6 +203,7 @@ class PsSpecialHandler : public SpecialHandler, protected PSActions {
std::map<int, std::unique_ptr<PSPattern>> _patterns;
PSTilingPattern *_pattern; ///< current pattern
bool _patternEnabled; ///< true if active color space is a pattern
+ std::string _pdfProc; ///< tool to process PDF files ("gs" or "mutool")
};
#endif
diff --git a/dviware/dvisvgm/src/RangeMap.cpp b/dviware/dvisvgm/src/RangeMap.cpp
index 8de4ff42bf..bac95b3093 100644
--- a/dviware/dvisvgm/src/RangeMap.cpp
+++ b/dviware/dvisvgm/src/RangeMap.cpp
@@ -2,7 +2,7 @@
** RangeMap.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/RangeMap.hpp b/dviware/dvisvgm/src/RangeMap.hpp
index c141346446..7ddcd3b9ba 100644
--- a/dviware/dvisvgm/src/RangeMap.hpp
+++ b/dviware/dvisvgm/src/RangeMap.hpp
@@ -2,7 +2,7 @@
** RangeMap.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -111,7 +111,7 @@ class RangeMap {
};
public:
- void addRange (uint32_t first, uint32_t last, uint32_t cid);
+ void addRange (uint32_t cmin, uint32_t cmax, uint32_t vmin);
bool valueExists (uint32_t c) const {return lookup(c) >= 0;}
uint32_t valueAt (uint32_t c) const;
uint32_t minKey () const {return _ranges.empty() ? 0 : _ranges.front().min();}
diff --git a/dviware/dvisvgm/src/SVGCharHandler.cpp b/dviware/dvisvgm/src/SVGCharHandler.cpp
index 567a2ceda5..b7a1b425a5 100644
--- a/dviware/dvisvgm/src/SVGCharHandler.cpp
+++ b/dviware/dvisvgm/src/SVGCharHandler.cpp
@@ -2,7 +2,7 @@
** SVGCharHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SVGCharHandler.hpp b/dviware/dvisvgm/src/SVGCharHandler.hpp
index 157c1b6a64..2df8957d68 100644
--- a/dviware/dvisvgm/src/SVGCharHandler.hpp
+++ b/dviware/dvisvgm/src/SVGCharHandler.hpp
@@ -2,7 +2,7 @@
** SVGCharHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -76,6 +76,7 @@ class SVGCharHandler {
Color getColor () const {return _color.get();}
const Opacity& getOpacity () const {return _opacity.get();}
const Font* getFont () const {return _font.get();}
+ int getFontID () const {return _fontnum;}
const Matrix& getMatrix () const {return _matrix.get();}
protected:
diff --git a/dviware/dvisvgm/src/SVGCharHandlerFactory.cpp b/dviware/dvisvgm/src/SVGCharHandlerFactory.cpp
index 342571a154..3f83f18e29 100644
--- a/dviware/dvisvgm/src/SVGCharHandlerFactory.cpp
+++ b/dviware/dvisvgm/src/SVGCharHandlerFactory.cpp
@@ -2,7 +2,7 @@
** SVGCharHandlerFactory.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SVGCharHandlerFactory.hpp b/dviware/dvisvgm/src/SVGCharHandlerFactory.hpp
index bbb431c8cd..7c195e63a4 100644
--- a/dviware/dvisvgm/src/SVGCharHandlerFactory.hpp
+++ b/dviware/dvisvgm/src/SVGCharHandlerFactory.hpp
@@ -2,7 +2,7 @@
** SVGCharHandlerFactory.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SVGCharPathHandler.cpp b/dviware/dvisvgm/src/SVGCharPathHandler.cpp
index 8f973be293..fc59d2280e 100644
--- a/dviware/dvisvgm/src/SVGCharPathHandler.cpp
+++ b/dviware/dvisvgm/src/SVGCharPathHandler.cpp
@@ -2,7 +2,7 @@
** SVGCharPathHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SVGCharPathHandler.hpp b/dviware/dvisvgm/src/SVGCharPathHandler.hpp
index 01b2ac5ae0..32fb1b3b74 100644
--- a/dviware/dvisvgm/src/SVGCharPathHandler.hpp
+++ b/dviware/dvisvgm/src/SVGCharPathHandler.hpp
@@ -2,7 +2,7 @@
** SVGCharPathHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SVGCharTspanTextHandler.cpp b/dviware/dvisvgm/src/SVGCharTspanTextHandler.cpp
index c17b8bd180..9c23f33050 100644
--- a/dviware/dvisvgm/src/SVGCharTspanTextHandler.cpp
+++ b/dviware/dvisvgm/src/SVGCharTspanTextHandler.cpp
@@ -2,7 +2,7 @@
** SVGCharTspanTextHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SVGCharTspanTextHandler.hpp b/dviware/dvisvgm/src/SVGCharTspanTextHandler.hpp
index 34443961c1..168d616d8e 100644
--- a/dviware/dvisvgm/src/SVGCharTspanTextHandler.hpp
+++ b/dviware/dvisvgm/src/SVGCharTspanTextHandler.hpp
@@ -2,7 +2,7 @@
** SVGCharTspanTextHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SVGElement.cpp b/dviware/dvisvgm/src/SVGElement.cpp
index 78ffd36b50..68f7d2231c 100644
--- a/dviware/dvisvgm/src/SVGElement.cpp
+++ b/dviware/dvisvgm/src/SVGElement.cpp
@@ -2,7 +2,7 @@
** SVGElement.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -78,11 +78,23 @@ void SVGElement::setFillPatternUrl (const std::string &url) {
}
+void SVGElement::setMaskUrl (const string &url) {
+ if (!url.empty())
+ addAttribute("mask", "url(#"+url+")");
+}
+
+
void SVGElement::setNoFillColor () {
addAttribute("fill", "none");
}
+void SVGElement::setOpacity (const OpacityAlpha &alpha) {
+ if (!alpha.isOpaque())
+ addAttribute("opaque", alpha.value());
+}
+
+
void SVGElement::setPoints (const vector<DPair> &points) {
if (!points.empty()) {
ostringstream oss;
@@ -106,7 +118,14 @@ void SVGElement::setStrokeDash (const vector<double> &pattern, double offset) {
for (double dashValue : pattern)
patternStr += XMLString(dashValue)+" ";
patternStr.pop_back();
- addAttribute("stroke-dasharray", patternStr);
+ setStrokeDash(patternStr, offset);
+ }
+}
+
+
+void SVGElement::setStrokeDash (const string &pattern, double offset) {
+ if (!pattern.empty()) {
+ addAttribute("stroke-dasharray", pattern);
if (offset != 0)
addAttribute("stroke-dashoffset", offset);
}
@@ -150,4 +169,4 @@ void SVGElement::setStrokeWidth (double width) {
void SVGElement::setTransform (const Matrix &matrix) {
if (!matrix.isIdentity())
addAttribute("transform", matrix.toSVG());
-}
+} \ No newline at end of file
diff --git a/dviware/dvisvgm/src/SVGElement.hpp b/dviware/dvisvgm/src/SVGElement.hpp
index d1103a8551..632b6a4a84 100644
--- a/dviware/dvisvgm/src/SVGElement.hpp
+++ b/dviware/dvisvgm/src/SVGElement.hpp
@@ -2,7 +2,7 @@
** SVGElement.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -45,10 +45,13 @@ class SVGElement : public XMLElement {
void setFillOpacity (Opacity::BlendMode blendMode);
void setFillPatternUrl (const std::string &url);
void setFillRule (FillRule rule);
+ void setMaskUrl (const std::string &url);
void setNoFillColor ();
+ void setOpacity (const OpacityAlpha &alpha);
void setPoints (const std::vector<DPair> &points);
void setStrokeColor (Color color);
void setStrokeDash (const std::vector<double> &pattern, double offset=0);
+ void setStrokeDash (const std::string &pattern, double offset=0);
void setStrokeLineCap (LineCap cap);
void setStrokeLineJoin (LineJoin join);
void setStrokeOpacity (const Opacity &opacity);
diff --git a/dviware/dvisvgm/src/SVGOutput.cpp b/dviware/dvisvgm/src/SVGOutput.cpp
index 013dd8f8f9..d5f219e7cd 100644
--- a/dviware/dvisvgm/src/SVGOutput.cpp
+++ b/dviware/dvisvgm/src/SVGOutput.cpp
@@ -2,7 +2,7 @@
** SVGOutput.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SVGOutput.hpp b/dviware/dvisvgm/src/SVGOutput.hpp
index a0ae43c68b..9032543c47 100644
--- a/dviware/dvisvgm/src/SVGOutput.hpp
+++ b/dviware/dvisvgm/src/SVGOutput.hpp
@@ -2,7 +2,7 @@
** SVGOutput.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -47,6 +47,7 @@ struct SVGOutputBase {
virtual ~SVGOutputBase () =default;
virtual std::ostream& getPageStream (int page, int numPages, const HashTriple &hashes=HashTriple()) const =0;
virtual FilePath filepath (int page, int numPages, const HashTriple &hashes= HashTriple()) const =0;
+ virtual void finish () =0;
virtual bool ignoresHashes () const {return true;}
};
@@ -59,6 +60,7 @@ class SVGOutput : public SVGOutputBase {
SVGOutput (const std::string &base, std::string pattern, int zipLevel);
std::ostream& getPageStream (int page, int numPages, const HashTriple &hash=HashTriple()) const override;
FilePath filepath (int page, int numPages, const HashTriple &hash=HashTriple()) const override;
+ void finish () override {_osptr.reset();}
bool ignoresHashes () const override;
void setFileNumbers (int fileNumber, int fileCount) {_fileNumber = fileNumber; _fileCount = fileCount;}
diff --git a/dviware/dvisvgm/src/SVGSingleCharTextHandler.cpp b/dviware/dvisvgm/src/SVGSingleCharTextHandler.cpp
index 84ba8591c1..d2a4f53ad1 100644
--- a/dviware/dvisvgm/src/SVGSingleCharTextHandler.cpp
+++ b/dviware/dvisvgm/src/SVGSingleCharTextHandler.cpp
@@ -2,7 +2,7 @@
** SVGSingleCharTextHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SVGSingleCharTextHandler.hpp b/dviware/dvisvgm/src/SVGSingleCharTextHandler.hpp
index c1cd48bc24..b97f463cfa 100644
--- a/dviware/dvisvgm/src/SVGSingleCharTextHandler.hpp
+++ b/dviware/dvisvgm/src/SVGSingleCharTextHandler.hpp
@@ -2,7 +2,7 @@
** SVGSingleCharTextHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SVGTree.cpp b/dviware/dvisvgm/src/SVGTree.cpp
index 1fed40b443..edfb926d0c 100644
--- a/dviware/dvisvgm/src/SVGTree.cpp
+++ b/dviware/dvisvgm/src/SVGTree.cpp
@@ -2,7 +2,7 @@
** SVGTree.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -91,6 +91,13 @@ void SVGTree::setFont (int num, const Font &font) {
}
+pair<int,const Font*> SVGTree::getFontPair () const {
+ if (_charHandler)
+ return {_charHandler->getFontID(), _charHandler->getFont()};
+ return {0, nullptr};
+}
+
+
bool SVGTree::setFontFormat (string formatstr) {
auto pos = formatstr.find(',');
string opt;
@@ -258,7 +265,7 @@ void SVGTree::append (const PhysicalFont &font, const set<int> &chars, GFGlyphTr
auto fontNode = util::make_unique<XMLElement>("font");
string fontname = font.name();
fontNode->addAttribute("id", fontname);
- fontNode->addAttribute("horiz-adv-x", font.hAdvance());
+ fontNode->addAttribute("horiz-adv-x", font.hAverageAdvance());
auto faceNode = util::make_unique<XMLElement>("font-face");
faceNode->addAttribute("font-family", fontname);
diff --git a/dviware/dvisvgm/src/SVGTree.hpp b/dviware/dvisvgm/src/SVGTree.hpp
index 0669d47cef..0453e53ac3 100644
--- a/dviware/dvisvgm/src/SVGTree.hpp
+++ b/dviware/dvisvgm/src/SVGTree.hpp
@@ -2,7 +2,7 @@
** SVGTree.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -61,6 +61,7 @@ class SVGTree {
void popPageContext ();
void setBBox (const BoundingBox &bbox);
void setFont (int id, const Font &font);
+ std::pair<int,const Font*> getFontPair () const;
static bool setFontFormat (std::string formatstr);
void setX (double x) {_charHandler->notifyXAdjusted();}
void setY (double y) {_charHandler->notifyYAdjusted();}
diff --git a/dviware/dvisvgm/src/ShadingPatch.cpp b/dviware/dvisvgm/src/ShadingPatch.cpp
index 3a99b98e7c..0f6a20e9d3 100644
--- a/dviware/dvisvgm/src/ShadingPatch.cpp
+++ b/dviware/dvisvgm/src/ShadingPatch.cpp
@@ -2,7 +2,7 @@
** ShadingPatch.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/ShadingPatch.hpp b/dviware/dvisvgm/src/ShadingPatch.hpp
index 6999a817a3..a11b5dd359 100644
--- a/dviware/dvisvgm/src/ShadingPatch.hpp
+++ b/dviware/dvisvgm/src/ShadingPatch.hpp
@@ -2,7 +2,7 @@
** ShadingPatch.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SignalHandler.cpp b/dviware/dvisvgm/src/SignalHandler.cpp
index 230410e077..e1a99a581e 100644
--- a/dviware/dvisvgm/src/SignalHandler.cpp
+++ b/dviware/dvisvgm/src/SignalHandler.cpp
@@ -2,7 +2,7 @@
** SignalHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SignalHandler.hpp b/dviware/dvisvgm/src/SignalHandler.hpp
index 2ecef0960e..9c343e0463 100644
--- a/dviware/dvisvgm/src/SignalHandler.hpp
+++ b/dviware/dvisvgm/src/SignalHandler.hpp
@@ -2,7 +2,7 @@
** SignalHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SourceInput.cpp b/dviware/dvisvgm/src/SourceInput.cpp
index 478532de03..b63df62113 100644
--- a/dviware/dvisvgm/src/SourceInput.cpp
+++ b/dviware/dvisvgm/src/SourceInput.cpp
@@ -2,7 +2,7 @@
** SourceInput.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SourceInput.hpp b/dviware/dvisvgm/src/SourceInput.hpp
index 3d201c31d7..5ce6c8302a 100644
--- a/dviware/dvisvgm/src/SourceInput.hpp
+++ b/dviware/dvisvgm/src/SourceInput.hpp
@@ -2,7 +2,7 @@
** SourceInput.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SpecialActions.hpp b/dviware/dvisvgm/src/SpecialActions.hpp
index df80ac434b..9a55331605 100644
--- a/dviware/dvisvgm/src/SpecialActions.hpp
+++ b/dviware/dvisvgm/src/SpecialActions.hpp
@@ -2,7 +2,7 @@
** SpecialActions.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -50,7 +50,7 @@ class SpecialActions {
virtual void setOpacity (const Opacity &opacity) =0;
virtual const Opacity& getOpacity () const =0;
virtual const SVGTree& svgTree () const =0;
- SVGTree& svgTree () {return const_cast<SVGTree&>(const_cast<const SpecialActions*>(this)->svgTree());}
+ virtual SVGTree& svgTree () {return const_cast<SVGTree&>(const_cast<const SpecialActions*>(this)->svgTree());}
virtual BoundingBox& bbox () =0;
virtual BoundingBox& bbox (const std::string &name, bool reset=false) =0;
virtual void embed (const BoundingBox &bbox) =0;
diff --git a/dviware/dvisvgm/src/SpecialHandler.hpp b/dviware/dvisvgm/src/SpecialHandler.hpp
index 2beda4e7bb..81c3146d35 100644
--- a/dviware/dvisvgm/src/SpecialHandler.hpp
+++ b/dviware/dvisvgm/src/SpecialHandler.hpp
@@ -2,7 +2,7 @@
** SpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SpecialManager.cpp b/dviware/dvisvgm/src/SpecialManager.cpp
index fb78ffd57b..0955f61aa4 100644
--- a/dviware/dvisvgm/src/SpecialManager.cpp
+++ b/dviware/dvisvgm/src/SpecialManager.cpp
@@ -2,7 +2,7 @@
** SpecialManager.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/SpecialManager.hpp b/dviware/dvisvgm/src/SpecialManager.hpp
index c124994d2b..55da303b70 100644
--- a/dviware/dvisvgm/src/SpecialManager.hpp
+++ b/dviware/dvisvgm/src/SpecialManager.hpp
@@ -2,7 +2,7 @@
** SpecialManager.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/StreamReader.cpp b/dviware/dvisvgm/src/StreamReader.cpp
index f0e9bf8e5d..196ce7affa 100644
--- a/dviware/dvisvgm/src/StreamReader.cpp
+++ b/dviware/dvisvgm/src/StreamReader.cpp
@@ -2,7 +2,7 @@
** StreamReader.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/StreamReader.hpp b/dviware/dvisvgm/src/StreamReader.hpp
index 1a9d76abe1..138751c33c 100644
--- a/dviware/dvisvgm/src/StreamReader.hpp
+++ b/dviware/dvisvgm/src/StreamReader.hpp
@@ -2,7 +2,7 @@
** StreamReader.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/StreamWriter.cpp b/dviware/dvisvgm/src/StreamWriter.cpp
index 59ee7ffe8b..c534d31862 100644
--- a/dviware/dvisvgm/src/StreamWriter.cpp
+++ b/dviware/dvisvgm/src/StreamWriter.cpp
@@ -2,7 +2,7 @@
** StreamWriter.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/StreamWriter.hpp b/dviware/dvisvgm/src/StreamWriter.hpp
index 3e2dbda510..473306f16a 100644
--- a/dviware/dvisvgm/src/StreamWriter.hpp
+++ b/dviware/dvisvgm/src/StreamWriter.hpp
@@ -2,7 +2,7 @@
** StreamWriter.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Subfont.cpp b/dviware/dvisvgm/src/Subfont.cpp
index 09a2607688..bb06429a53 100644
--- a/dviware/dvisvgm/src/Subfont.cpp
+++ b/dviware/dvisvgm/src/Subfont.cpp
@@ -2,7 +2,7 @@
** Subfont.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Subfont.hpp b/dviware/dvisvgm/src/Subfont.hpp
index ac5359a84a..c6978ed46d 100644
--- a/dviware/dvisvgm/src/Subfont.hpp
+++ b/dviware/dvisvgm/src/Subfont.hpp
@@ -2,7 +2,7 @@
** Subfont.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/System.cpp b/dviware/dvisvgm/src/System.cpp
index 6baf5a40ed..fc6db8b9e2 100644
--- a/dviware/dvisvgm/src/System.cpp
+++ b/dviware/dvisvgm/src/System.cpp
@@ -2,7 +2,7 @@
** System.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/System.hpp b/dviware/dvisvgm/src/System.hpp
index 686c24af82..f62f815165 100644
--- a/dviware/dvisvgm/src/System.hpp
+++ b/dviware/dvisvgm/src/System.hpp
@@ -2,7 +2,7 @@
** System.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/TFM.cpp b/dviware/dvisvgm/src/TFM.cpp
index a5b88f180d..c29de267bb 100644
--- a/dviware/dvisvgm/src/TFM.cpp
+++ b/dviware/dvisvgm/src/TFM.cpp
@@ -2,7 +2,7 @@
** TFM.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/TFM.hpp b/dviware/dvisvgm/src/TFM.hpp
index ad242ad258..5e968ff201 100644
--- a/dviware/dvisvgm/src/TFM.hpp
+++ b/dviware/dvisvgm/src/TFM.hpp
@@ -2,7 +2,7 @@
** TFM.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/TensorProductPatch.cpp b/dviware/dvisvgm/src/TensorProductPatch.cpp
index 6a334b1711..20c1e6aa93 100644
--- a/dviware/dvisvgm/src/TensorProductPatch.cpp
+++ b/dviware/dvisvgm/src/TensorProductPatch.cpp
@@ -2,7 +2,7 @@
** TensorProductPatch.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -147,10 +147,10 @@ DPair TensorProductPatch::valueAt (double u, double v) const {
// compute tensor product
DPair p[4];
for (int i=0; i < 4; i++) {
- Bezier bezier(_points[i][0], _points[i][1], _points[i][2], _points[i][3]);
+ CubicBezier bezier(_points[i][0], _points[i][1], _points[i][2], _points[i][3]);
p[i] = bezier.valueAt(u);
}
- Bezier bezier(p[0], p[1], p[2], p[3]);
+ CubicBezier bezier(p[0], p[1], p[2], p[3]);
return bezier.valueAt(v);
}
@@ -224,7 +224,7 @@ GraphicsPath<double> TensorProductPatch::getBoundaryPath () const {
* runs "vertically" from P(u,0) to P(u,1) through the patch P.
* @param[in] u "horizontal" parameter in the range from 0 to 1
* @param[out] bezier the resulting Bézier curve */
-void TensorProductPatch::verticalCurve (double u, Bezier &bezier) const {
+void TensorProductPatch::verticalCurve (double u, CubicBezier &bezier) const {
// check for simple cases (boundary curves) first
if (u == 0)
bezier.setPoints(_points[0][0], _points[1][0], _points[2][0], _points[3][0]);
@@ -234,7 +234,7 @@ void TensorProductPatch::verticalCurve (double u, Bezier &bezier) const {
// compute "inner" curve
DPair p[4];
for (int i=0; i < 4; i++) {
- Bezier bezier(_points[i][0], _points[i][1], _points[i][2], _points[i][3]);
+ CubicBezier bezier(_points[i][0], _points[i][1], _points[i][2], _points[i][3]);
p[i] = bezier.valueAt(u);
}
bezier.setPoints(p[0], p[1], p[2], p[3]);
@@ -246,7 +246,7 @@ void TensorProductPatch::verticalCurve (double u, Bezier &bezier) const {
* runs "horizontally" from P(0,v) to P(1,v) through the patch P.
* @param[in] v "vertical" parameter in the range from 0 to 1
* @param[out] bezier the resulting Bézier curve */
-void TensorProductPatch::horizontalCurve (double v, Bezier &bezier) const {
+void TensorProductPatch::horizontalCurve (double v, CubicBezier &bezier) const {
// check for simple cases (boundary curves) first
if (v == 0)
bezier.setPoints(_points[0][0], _points[0][1], _points[0][2], _points[0][3]);
@@ -256,7 +256,7 @@ void TensorProductPatch::horizontalCurve (double v, Bezier &bezier) const {
// compute "inner" curve
DPair p[4];
for (int i=0; i < 4; i++) {
- Bezier bezier(_points[0][i], _points[1][i], _points[2][i], _points[3][i]);
+ CubicBezier bezier(_points[0][i], _points[1][i], _points[2][i], _points[3][i]);
p[i] = bezier.valueAt(v);
}
bezier.setPoints(p[0], p[1], p[2], p[3]);
@@ -293,10 +293,10 @@ void TensorProductPatch::subpatch (double u1, double u2, double v1, double v2, T
DPair TensorProductPatch::blossomValue (double u1, double u2, double u3, double v1, double v2, double v3) const {
DPair p[4];
for (int i=0; i < 4; i++) {
- Bezier bezier(_points[i][0], _points[i][1], _points[i][2], _points[i][3]);
+ CubicBezier bezier(_points[i][0], _points[i][1], _points[i][2], _points[i][3]);
p[i] = bezier.blossomValue(u1, u2, u3);
}
- Bezier bezier(p[0], p[1], p[2], p[3]);
+ CubicBezier bezier(p[0], p[1], p[2], p[3]);
return bezier.blossomValue(v1, v2, v3);
}
@@ -313,10 +313,10 @@ static inline double snap (double x) {
/** Computes a single row of segments approximating the patch region between v1 and v1+inc. */
-void TensorProductPatch::approximateRow (double v1, double inc, bool overlap, double delta, const vector<Bezier> &vbeziers, Callback &callback) const {
+void TensorProductPatch::approximateRow (double v1, double inc, bool overlap, double delta, const vector<CubicBezier> &vbeziers, Callback &callback) const {
double v2 = snap(v1+inc);
double ov2 = (overlap && v2 < 1) ? snap(v2+inc) : v2;
- Bezier hbezier1, hbezier2;
+ CubicBezier hbezier1, hbezier2;
horizontalCurve(v1, hbezier1);
horizontalCurve(ov2, hbezier2);
double u1 = 0;
@@ -324,10 +324,10 @@ void TensorProductPatch::approximateRow (double v1, double inc, bool overlap, do
double u2 = snap(u1+inc);
double ou2 = (overlap && u2 < 1) ? snap(u2+inc) : u2;
// compute segment boundaries
- Bezier b1(hbezier1, u1, ou2);
- Bezier b2(vbeziers[i + (overlap && i < vbeziers.size()-1 ? 1 : 0)], v1, ov2);
- Bezier b3(hbezier2, u1, ou2);
- Bezier b4(vbeziers[i-1], v1, ov2);
+ CubicBezier b1(hbezier1, u1, ou2);
+ CubicBezier b2(vbeziers[i + (overlap && i < vbeziers.size()-1 ? 1 : 0)], v1, ov2);
+ CubicBezier b3(hbezier2, u1, ou2);
+ CubicBezier b4(vbeziers[i-1], v1, ov2);
GraphicsPath<double> path;
path.moveto(b1.point(0));
if (inc > delta) {
@@ -366,7 +366,7 @@ void TensorProductPatch::approximate (int gridsize, bool overlap, double delta,
else {
const double inc = 1.0/gridsize;
// collect curves dividing the patch into several columns (curved vertical stripes)
- vector<Bezier> vbeziers(gridsize+1);
+ vector<CubicBezier> vbeziers(gridsize+1);
double u=0;
for (int i=0; i <= gridsize; i++) {
verticalCurve(u, vbeziers[i]);
@@ -384,7 +384,7 @@ void TensorProductPatch::approximate (int gridsize, bool overlap, double delta,
BoundingBox TensorProductPatch::getBBox () const {
BoundingBox bbox;
- Bezier bezier;
+ CubicBezier bezier;
for (int i=0; i <= 1; i++) {
horizontalCurve(i, bezier);
bbox.embed(bezier.getBBox());
@@ -398,10 +398,10 @@ BoundingBox TensorProductPatch::getBBox () const {
#if 0
void TensorProductPatch::approximate (int gridsize, Callback &callback) const {
const double inc = 1.0/gridsize;
- Bezier ubezier0; verticalCurve(0, ubezier0);
- Bezier ubezier1; verticalCurve(1, ubezier1);
- Bezier vbezier0; horizontalCurve(0, vbezier0);
- Bezier vbezier1; horizontalCurve(1, vbezier1);
+ CubicBezier ubezier0; verticalCurve(0, ubezier0);
+ CubicBezier ubezier1; verticalCurve(1, ubezier1);
+ CubicBezier vbezier0; horizontalCurve(0, vbezier0);
+ CubicBezier vbezier1; horizontalCurve(1, vbezier1);
for (double v1=0; v1 < 1; v1=snap(v1+inc)) {
double v2 = snap(v1+inc);
DPair p0 = valueAt(0, v1);
@@ -423,25 +423,25 @@ void TensorProductPatch::approximate (int gridsize, Callback &callback) const {
if (v1 > 0)
path.lineto(p1);
else {
- Bezier bezier(vbezier0, u1, u2);
+ CubicBezier bezier(vbezier0, u1, u2);
path.cubicto(bezier.point(1), bezier.point(2), bezier.point(3));
}
if (u2 < 1)
path.lineto(p3);
else {
- Bezier bezier(ubezier1, v1, v2);
+ CubicBezier bezier(ubezier1, v1, v2);
path.cubicto(bezier.point(1), bezier.point(2), bezier.point(3));
}
if (v2 < 1)
path.lineto(p2);
else {
- Bezier bezier(vbezier1, u1, u2);
+ CubicBezier bezier(vbezier1, u1, u2);
path.cubicto(bezier.point(2), bezier.point(1), bezier.point(0));
}
if (u1 > 0)
path.closepath();
else {
- Bezier bezier(ubezier0, v1, v2);
+ CubicBezier bezier(ubezier0, v1, v2);
path.cubicto(bezier.point(2), bezier.point(1), bezier.point(0));
path.closepath();
}
@@ -472,10 +472,10 @@ DPair CoonsPatch::valueAt (double u, double v) const {
// Compute the value of P(u,v) using the Coons equation rather than the
// tensor product since the "inner" control points of the tensor matrix
// might not be set yet.
- Bezier bezier1(_points[3][0], _points[3][1], _points[3][2], _points[3][3]);
- Bezier bezier2(_points[0][0], _points[0][1], _points[0][2], _points[0][3]);
- Bezier bezier3(_points[3][0], _points[2][0], _points[1][0], _points[0][0]);
- Bezier bezier4(_points[3][3], _points[2][3], _points[1][3], _points[0][3]);
+ CubicBezier bezier1(_points[3][0], _points[3][1], _points[3][2], _points[3][3]);
+ CubicBezier bezier2(_points[0][0], _points[0][1], _points[0][2], _points[0][3]);
+ CubicBezier bezier3(_points[3][0], _points[2][0], _points[1][0], _points[0][0]);
+ CubicBezier bezier4(_points[3][3], _points[2][3], _points[1][3], _points[0][3]);
DPair ph = bezier1.valueAt(u)*(1-v) + bezier2.valueAt(u)*v;
DPair pv = bezier3.valueAt(v)*(1-u) + bezier4.valueAt(v)*u;
DPair pc = (_points[3][0]*(1-u) + _points[3][3]*u)*(1-v) + (_points[0][0]*(1-u) + _points[0][3]*u)*v;
diff --git a/dviware/dvisvgm/src/TensorProductPatch.hpp b/dviware/dvisvgm/src/TensorProductPatch.hpp
index 47a7d840a5..7150d189c8 100644
--- a/dviware/dvisvgm/src/TensorProductPatch.hpp
+++ b/dviware/dvisvgm/src/TensorProductPatch.hpp
@@ -2,7 +2,7 @@
** TensorProductPatch.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -49,8 +49,8 @@ class TensorProductPatch : public ShadingPatch {
virtual DPair valueAt (double u, double v) const;
Color colorAt (double u, double v) const;
Color averageColor () const override;
- void horizontalCurve (double v, Bezier &bezier) const;
- void verticalCurve (double u, Bezier &bezier) const;
+ void horizontalCurve (double v, CubicBezier &bezier) const;
+ void verticalCurve (double u, CubicBezier &bezier) const;
GraphicsPath<double> getBoundaryPath () const override;
void subpatch (double u1, double u2, double v1, double v2, TensorProductPatch &patch) const;
DPair blossomValue (double u1, double u2, double u3, double v1, double v2, double v3) const;
@@ -62,7 +62,7 @@ class TensorProductPatch : public ShadingPatch {
protected:
Color averageColor (const Color &c1, const Color &c2, const Color &c3, const Color &c4) const;
- void approximateRow (double v1, double inc, bool overlap, double delta, const std::vector<Bezier> &beziers, Callback &callback) const;
+ void approximateRow (double v1, double inc, bool overlap, double delta, const std::vector<CubicBezier> &beziers, Callback &callback) const;
void setFirstMatrixColumn (const DPair source[4], bool reverse);
void setFirstMatrixColumn (DPair source[4][4], int col, bool reverse);
diff --git a/dviware/dvisvgm/src/Terminal.cpp b/dviware/dvisvgm/src/Terminal.cpp
index 1b5405a342..e3b3e4c13a 100644
--- a/dviware/dvisvgm/src/Terminal.cpp
+++ b/dviware/dvisvgm/src/Terminal.cpp
@@ -2,7 +2,7 @@
** Terminal.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/Terminal.hpp b/dviware/dvisvgm/src/Terminal.hpp
index e1a0ce38ad..897d2d8c03 100644
--- a/dviware/dvisvgm/src/Terminal.hpp
+++ b/dviware/dvisvgm/src/Terminal.hpp
@@ -2,7 +2,7 @@
** Terminal.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/ToUnicodeMap.cpp b/dviware/dvisvgm/src/ToUnicodeMap.cpp
index a29911c173..4414223572 100644
--- a/dviware/dvisvgm/src/ToUnicodeMap.cpp
+++ b/dviware/dvisvgm/src/ToUnicodeMap.cpp
@@ -2,7 +2,7 @@
** ToUnicodeMap.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/ToUnicodeMap.hpp b/dviware/dvisvgm/src/ToUnicodeMap.hpp
index 5db95e1f38..447ca46232 100644
--- a/dviware/dvisvgm/src/ToUnicodeMap.hpp
+++ b/dviware/dvisvgm/src/ToUnicodeMap.hpp
@@ -2,7 +2,7 @@
** ToUnicodeMap.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/TpicSpecialHandler.cpp b/dviware/dvisvgm/src/TpicSpecialHandler.cpp
index 220accdcb4..86b49b1d20 100644
--- a/dviware/dvisvgm/src/TpicSpecialHandler.cpp
+++ b/dviware/dvisvgm/src/TpicSpecialHandler.cpp
@@ -2,7 +2,7 @@
** TpicSpecialHandler.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/TpicSpecialHandler.hpp b/dviware/dvisvgm/src/TpicSpecialHandler.hpp
index a13613087d..e8a56649f8 100644
--- a/dviware/dvisvgm/src/TpicSpecialHandler.hpp
+++ b/dviware/dvisvgm/src/TpicSpecialHandler.hpp
@@ -2,7 +2,7 @@
** TpicSpecialHandler.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/TriangularPatch.cpp b/dviware/dvisvgm/src/TriangularPatch.cpp
index 41444b8b30..a5867ac9f8 100644
--- a/dviware/dvisvgm/src/TriangularPatch.cpp
+++ b/dviware/dvisvgm/src/TriangularPatch.cpp
@@ -2,7 +2,7 @@
** TriangularPatch.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/TriangularPatch.hpp b/dviware/dvisvgm/src/TriangularPatch.hpp
index fc9c15e7fd..1ea03421a5 100644
--- a/dviware/dvisvgm/src/TriangularPatch.hpp
+++ b/dviware/dvisvgm/src/TriangularPatch.hpp
@@ -2,7 +2,7 @@
** TriangularPatch.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/TrueTypeFont.cpp b/dviware/dvisvgm/src/TrueTypeFont.cpp
deleted file mode 100644
index b642c169f4..0000000000
--- a/dviware/dvisvgm/src/TrueTypeFont.cpp
+++ /dev/null
@@ -1,175 +0,0 @@
-/*************************************************************************
-** TrueTypeFont.cpp **
-** **
-** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
-** **
-** This program is free software; you can redistribute it and/or **
-** modify it under the terms of the GNU General Public License as **
-** published by the Free Software Foundation; either version 3 of **
-** the License, or (at your option) any later version. **
-** **
-** This program is distributed in the hope that it will be useful, but **
-** WITHOUT ANY WARRANTY; without even the implied warranty of **
-** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
-** GNU General Public License for more details. **
-** **
-** You should have received a copy of the GNU General Public License **
-** along with this program; if not, see <http://www.gnu.org/licenses/>. **
-*************************************************************************/
-
-#include <iterator>
-#include <sstream>
-#include <woff2/encode.h>
-#include <zlib.h>
-#include "StreamReader.hpp"
-#include "StreamWriter.hpp"
-#include "TrueTypeFont.hpp"
-#include "utility.hpp"
-
-using namespace std;
-
-
-/** Reads the font data from a TTF file.
- * OTF specification: https://www.microsoft.com/typography/otspec/otff.htm
- * @param[in] fname name/path of file to read
- * @return true on success */
-bool TrueTypeFont::read (const string &fname) {
- _tableRecords.clear();
- _buffer = util::read_file_contents(fname);
- if (_buffer.empty())
- return false;
- istringstream iss(_buffer);
- StreamReader reader(iss);
- _version = reader.readUnsigned(4);
- uint16_t numTables = reader.readUnsigned(2);
- if (numTables == 0 || _buffer.size() <= 12u+16u*numTables)
- return false;
-
- // read table records
- reader.seek(12); // skip searchRange, entrySelector, and rangeShift
- for (uint16_t i=0; i < numTables; i++) {
- uint32_t tag = reader.readUnsigned(4);
- uint32_t checksum = reader.readUnsigned(4);
- uint32_t offset = reader.readUnsigned(4);
- uint32_t length = reader.readUnsigned(4);
- if ((offset | length) > _buffer.size() || offset+length > _buffer.size())
- return false;
- TTFTableRecord record = {tag, checksum, length, reinterpret_cast<const uint8_t*>(_buffer.data())+offset};
- _tableRecords.push_back(std::move(record));
- }
- return true;
-}
-
-
-/** Compresses the data of the referenced TTF table and updated the record data accordingly.
- * @return true if the data was compressed */
-bool TrueTypeFont::WOFFTableRecord::compressTableData () {
- if (ttfRecord.size < 16)
- return false;
- uLong compressedSize = compressBound(ttfRecord.size);
- compressedData.resize(compressedSize);
- // Compress with zlib for now. We could also use zopfli for slightly better but much slower compression.
- // Only use the compressed data if it actually leads to a size reduction. Otherwise, use the original table data.
- if (compress2(compressedData.data(), &compressedSize, ttfRecord.data, ttfRecord.size, Z_BEST_COMPRESSION) != Z_OK
- || compressedSize >= ttfRecord.size) {
- compressedData.clear();
- return false;
- }
- size = compressedSize;
- data = compressedData.data();
- return true;
-}
-
-
-/** Writes font data in WOFF format to a given output stream.
- WOFF specifiction: https://www.w3.org/TR/WOFF */
-void TrueTypeFont::writeWOFF (ostream &os) const {
- // compute WOFF table records first
- vector<WOFFTableRecord> woffRecords;
- uint32_t woffSize = static_cast<uint32_t>(44 + 20*_tableRecords.size());
- uint32_t ttfSize = static_cast<uint32_t>(12 + 16*_tableRecords.size());
- for (const TTFTableRecord &ttfRecord : _tableRecords) {
- WOFFTableRecord woffRecord(woffSize, ttfRecord);
- woffRecord.compressTableData();
- woffSize += woffRecord.paddedSize();
- ttfSize += ttfRecord.paddedSize();
- woffRecords.push_back(std::move(woffRecord));
- }
- // write WOFF header
- StreamWriter writer(os);
- writer.writeUnsigned(0x774F4646, 4); // "WOFF"
- writer.writeUnsigned(_version, 4); // version of contained TTF font
- writer.writeUnsigned(woffSize, 4); // total length of WOFF file
- writer.writeUnsigned(_tableRecords.size(), 2); // number of tables
- writer.writeBytes(0, 2); // reserved
- writer.writeUnsigned(ttfSize, 4); // size of uncompressed TTF data
- writer.writeBytes(0, 4); // WOFF version (not required)
- writer.writeBytes(0, 12); // offset, compressed and uncompressed size of metadata block
- writer.writeBytes(0, 8); // offset and size of private data block
-
- // write WOFF table directory
- for (const WOFFTableRecord &woffRecord : woffRecords) {
- writer.writeUnsigned(woffRecord.ttfRecord.tag, 4);
- writer.writeUnsigned(woffRecord.offset, 4);
- writer.writeUnsigned(woffRecord.size, 4);
- writer.writeUnsigned(woffRecord.ttfRecord.size, 4);
- writer.writeUnsigned(woffRecord.ttfRecord.checksum, 4);
- }
-
- // write WOFF tables
- for (const WOFFTableRecord &woffRecord : woffRecords) {
- writer.writeBytes(woffRecord.data, woffRecord.size);
- size_t padding = woffRecord.paddedSize()-woffRecord.size;
- writer.writeBytes(0, padding);
- }
-}
-
-
-void TrueTypeFont::writeWOFF (const string &fname) const {
- ofstream ofs(fname, ios::binary);
- writeWOFF(ofs);
-}
-
-
-/** Puts the TrueType data in a WOFF2 container and writes the resulting data to a given stream.
- * @param[out] os stream to write the WOFF2 data to
- * @return true on success */
-bool TrueTypeFont::writeWOFF2 (ostream &os) const {
- auto input_data = reinterpret_cast<const uint8_t*>(_buffer.data());
- size_t output_size = woff2::MaxWOFF2CompressedSize(input_data, _buffer.size());
- string output(output_size, 0);
- auto output_data = reinterpret_cast<uint8_t*>(&output[0]);
- woff2::WOFF2Params params;
- if (woff2::ConvertTTFToWOFF2(input_data, _buffer.size(), output_data, &output_size, params)) {
- output.resize(output_size);
- copy(output.begin(), output.end(), ostream_iterator<uint8_t>(os));
- return true;
- }
- return false;
-}
-
-
-bool TrueTypeFont::writeWOFF2 (const string &fname) const {
- ofstream ofs(fname, ios::binary);
- return writeWOFF2(ofs);
-}
-
-
-/** Converts the numeric table tag (which represents a four-character ID) to a string. */
-string TrueTypeFont::TTFTableRecord::name () const {
- string ret;
- for (int i=24; i >= 0; i-= 8)
- ret += static_cast<char>(tag >> i);
- return ret;
-}
-
-
-uint32_t TrueTypeFont::TTFTableRecord::computeChecksum () const {
- uint32_t sum=0;
- auto startptr = reinterpret_cast<const uint32_t*>(data);
- auto endptr = startptr + paddedSize()/sizeof(uint32_t);
- while (startptr < endptr)
- sum += *startptr++;
- return sum;
-}
diff --git a/dviware/dvisvgm/src/TrueTypeFont.hpp b/dviware/dvisvgm/src/TrueTypeFont.hpp
deleted file mode 100644
index cc00001147..0000000000
--- a/dviware/dvisvgm/src/TrueTypeFont.hpp
+++ /dev/null
@@ -1,74 +0,0 @@
-/*************************************************************************
-** TrueTypeFont.hpp **
-** **
-** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
-** **
-** This program is free software; you can redistribute it and/or **
-** modify it under the terms of the GNU General Public License as **
-** published by the Free Software Foundation; either version 3 of **
-** the License, or (at your option) any later version. **
-** **
-** This program is distributed in the hope that it will be useful, but **
-** WITHOUT ANY WARRANTY; without even the implied warranty of **
-** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
-** GNU General Public License for more details. **
-** **
-** You should have received a copy of the GNU General Public License **
-** along with this program; if not, see <http://www.gnu.org/licenses/>. **
-*************************************************************************/
-
-#ifndef TRUETYPEFONT_HPP
-#define TRUETYPEFONT_HPP
-
-#include <istream>
-#include <fstream>
-#include <ostream>
-#include <string>
-#include <vector>
-#include "MessageException.hpp"
-
-
-class TrueTypeFont {
- struct TTFTableRecord {
- std::string name () const;
- uint32_t paddedSize () const {return (size+3) & ~3;}
- uint32_t computeChecksum () const;
- uint32_t tag; ///< table tag
- uint32_t checksum; ///< checksum of the table data
- uint32_t size; ///< number of bytes in the table
- const uint8_t *data; ///< points to the begin of the table
- };
-
- struct WOFFTableRecord {
- WOFFTableRecord (uint32_t off, const TTFTableRecord &rec) : offset(off), size(rec.size), data(rec.data), ttfRecord(rec) {}
- size_t paddedSize () const {return (size+3) & ~3;}
- bool compressTableData ();
- uint32_t offset; ///< file offset to first byte of the table
- uint32_t size; ///< number of bytes in the table
- const uint8_t *data; ///< points to the begin of the WOFF table
- std::vector<uint8_t> compressedData; ///< compressed table data
- const TTFTableRecord &ttfRecord; ///< corresponding TTF table record
- };
-
- public:
- TrueTypeFont () : _version(0) {}
- explicit TrueTypeFont (const std::string &fname) {read(fname);}
- bool read (const std::string &fname);
- void writeWOFF (std::ostream &os) const;
- void writeWOFF (const std::string &fname) const;
- bool writeWOFF2 (std::ostream &os) const;
- bool writeWOFF2 (const std::string &fname) const;
-
- private:
- uint32_t _version; ///< TTF version
- std::string _buffer; ///< contents of TTF file
- std::vector<TTFTableRecord> _tableRecords;
-};
-
-
-struct TrueTypeFontException : public MessageException {
- explicit TrueTypeFontException (const std::string &msg) : MessageException(msg) {}
-};
-
-#endif
diff --git a/dviware/dvisvgm/src/Unicode.cpp b/dviware/dvisvgm/src/Unicode.cpp
index 2293be0399..91b01e90a6 100644
--- a/dviware/dvisvgm/src/Unicode.cpp
+++ b/dviware/dvisvgm/src/Unicode.cpp
@@ -2,7 +2,7 @@
** Unicode.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -52,9 +52,12 @@ bool Unicode::isValidCodepoint (uint32_t c) {
/** Returns a valid Unicode point for the given character code. Character codes
* that are invalid code points because the XML standard forbids or discourages
- * their usage, are mapped to the Private Use Zone U+E000-U+F8FF. */
-uint32_t Unicode::charToCodepoint (uint32_t c) {
- uint32_t ranges[] = {
+ * their usage, are mapped to the Private Use Zone U+E000-U+F8FF.
+ * @param[in] c character code to map
+ * @param[in] permitSpace if true, space characters are treated as allowed code points
+ * @return the code point */
+uint32_t Unicode::charToCodepoint (uint32_t c, bool permitSpace) {
+ static uint32_t ranges[] = {
0x0000, 0x0020, 0xe000, // basic control characters + space
0x007f, 0x009f, 0xe021, // use of control characters is discouraged by the XML standard
0x202a, 0x202e, 0xe042, // bidi control characters
@@ -78,9 +81,12 @@ uint32_t Unicode::charToCodepoint (uint32_t c) {
0xffffe, 0xfffff, 0xe885,
0x10fffe, 0x10ffff, 0xe887
};
- for (size_t i=0; i < sizeof(ranges)/sizeof(unsigned) && c >= ranges[i]; i+=3)
- if (c <= ranges[i+1])
- return ranges[i+2]+c-ranges[i];
+ if (!permitSpace || c != 0x20) {
+ for (size_t i=0; i < sizeof(ranges)/sizeof(uint32_t) && c >= ranges[i]; i+=3) {
+ if (c <= ranges[i+1])
+ return ranges[i+2]+c-ranges[i];
+ }
+ }
return c;
}
@@ -114,6 +120,32 @@ string Unicode::utf8 (int32_t cp) {
}
+uint32_t Unicode::utf8ToCodepoint (const string &utf8) {
+ auto len = utf8.length();
+ if (len > 0) {
+ unsigned char c0 = utf8[0];
+ if (c0 >= 0 && c0 <= 127)
+ return c0;
+ if (len > 1) {
+ unsigned char c1 = utf8[1];
+ if (c0 >= 0xC0 && c0 <= 0xDF)
+ return ((c0-0xC0) << 6) + (c1-0x80);
+ if (len > 2 && (c0 != 0xED || (c1 & 0xA0) != 0xA0)) {
+ unsigned char c2 = utf8[2];
+ if (c0 >= 0xE0 && c0 <= 0xEF)
+ return ((c0-0xE0) << 12) + ((c1-0x80) << 6) + (c2-0x80);
+ if (len > 3) {
+ unsigned char c3 = utf8[3];
+ if (c0 >= 0xF0 && c0 <= 0xF7)
+ return ((c0-0xF0) << 18) + ((c1-0x80) << 12) + ((c2-0x80) << 6) + (c3-0x80);
+ }
+ }
+ }
+ }
+ return 0;
+}
+
+
/** Converts a surrogate pair to its code point.
* @param[in] high high-surrogate value (upper 16 bits)
* @param[in] low low-surrogate value (lower 16 bits)
@@ -148,6 +180,43 @@ uint32_t Unicode::toSurrogate (uint32_t cp) {
}
+uint32_t Unicode::toLigature (const string &nonlig) {
+ struct Ligature {
+ const char *nonlig;
+ uint32_t lig;
+ } ligatures[39] = {
+ {u8"AA", 0xA732}, {u8"aa", 0xA733},
+ {u8"AE", 0x00C6}, {u8"ae", 0x00E6},
+ {u8"AO", 0xA734}, {u8"ao", 0xA735},
+ {u8"AU", 0xA736}, {u8"au", 0xA737},
+ {u8"AV", 0xA738}, {u8"av", 0xA739},
+ {u8"AY", 0xA73C}, {u8"ay", 0xA73D},
+ {u8"et", 0x1F670},
+ {u8"ff", 0xFB00},
+ {u8"ffi", 0xFB03},
+ {u8"ffl", 0xFB04},
+ {u8"fi", 0xFB01},
+ {u8"fl", 0xFB02},
+ {u8"Hv", 0x01F6}, {u8"hv", 0x0195},
+ {u8"lb", 0x2114},
+ {u8"lL", 0x1EFA}, {u8"ll", 0x1EFB},
+ {u8"OE", 0x0152}, {u8"oe", 0x0153},
+ {u8"OO", 0xA74E}, {u8"oo", 0xA74F},
+ {u8"OO", 0xA74E},
+ {u8"\u0254e", 0xAB62},
+ {u8"\u017Fs", 0x1E9E}, {u8"\u017Az", 0x00DF},
+ {u8"Tz", 0xA728}, {u8"tz", 0xA729},
+ {u8"ue", 0x1D6B},
+ {u8"uo", 0xAB63},
+ {u8"VV", 0x0057}, {u8"tz", 0x0077},
+ {u8"VY", 0xA760}, {u8"tz", 0xA761},
+ };
+ auto it = find_if(begin(ligatures), end(ligatures), [&nonlig](const Ligature &l) {
+ return l.nonlig == nonlig;
+ });
+ return it != end(ligatures) ? it->lig : 0;
+}
+
#include "AGLTable.hpp"
/** Tries to extract the codepoint from AGL character names like "uni1234" or "u1234".
diff --git a/dviware/dvisvgm/src/Unicode.hpp b/dviware/dvisvgm/src/Unicode.hpp
index 75d0d0e2db..1211887bb6 100644
--- a/dviware/dvisvgm/src/Unicode.hpp
+++ b/dviware/dvisvgm/src/Unicode.hpp
@@ -2,7 +2,7 @@
** Unicode.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -25,11 +25,13 @@
struct Unicode {
static bool isValidCodepoint (uint32_t code);
- static uint32_t charToCodepoint (uint32_t c);
+ static uint32_t charToCodepoint (uint32_t c, bool permitSpace=false);
static std::string utf8 (int32_t c);
+ static uint32_t utf8ToCodepoint (const std::string &utf8);
static uint32_t fromSurrogate (uint32_t high, uint32_t low);
static uint32_t fromSurrogate (uint32_t cp);
static uint32_t toSurrogate (uint32_t cp);
+ static uint32_t toLigature (const std::string &nonlig);
static int32_t aglNameToCodepoint (const std::string &name);
};
diff --git a/dviware/dvisvgm/src/VFActions.hpp b/dviware/dvisvgm/src/VFActions.hpp
index 150a551021..6ab3c1e854 100644
--- a/dviware/dvisvgm/src/VFActions.hpp
+++ b/dviware/dvisvgm/src/VFActions.hpp
@@ -2,7 +2,7 @@
** VFActions.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/VFReader.cpp b/dviware/dvisvgm/src/VFReader.cpp
index 7467b78d6b..76fabb4994 100644
--- a/dviware/dvisvgm/src/VFReader.cpp
+++ b/dviware/dvisvgm/src/VFReader.cpp
@@ -2,7 +2,7 @@
** VFReader.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/VFReader.hpp b/dviware/dvisvgm/src/VFReader.hpp
index 9d81745f7e..fb397898f6 100644
--- a/dviware/dvisvgm/src/VFReader.hpp
+++ b/dviware/dvisvgm/src/VFReader.hpp
@@ -2,7 +2,7 @@
** VFReader.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/VectorIterator.hpp b/dviware/dvisvgm/src/VectorIterator.hpp
index 49390c945a..486402ca62 100644
--- a/dviware/dvisvgm/src/VectorIterator.hpp
+++ b/dviware/dvisvgm/src/VectorIterator.hpp
@@ -2,7 +2,7 @@
** VectorIterator.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/VectorStream.hpp b/dviware/dvisvgm/src/VectorStream.hpp
index a8f2df5b19..04e7a99a8f 100644
--- a/dviware/dvisvgm/src/VectorStream.hpp
+++ b/dviware/dvisvgm/src/VectorStream.hpp
@@ -2,7 +2,7 @@
** VectorStream.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/XMLDocument.cpp b/dviware/dvisvgm/src/XMLDocument.cpp
index fc4651012c..ddaa3daa0d 100644
--- a/dviware/dvisvgm/src/XMLDocument.cpp
+++ b/dviware/dvisvgm/src/XMLDocument.cpp
@@ -2,7 +2,7 @@
** XMLDocument.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/XMLDocument.hpp b/dviware/dvisvgm/src/XMLDocument.hpp
index e766580bc4..7a2e06fd01 100644
--- a/dviware/dvisvgm/src/XMLDocument.hpp
+++ b/dviware/dvisvgm/src/XMLDocument.hpp
@@ -2,7 +2,7 @@
** XMLDocument.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/XMLNode.cpp b/dviware/dvisvgm/src/XMLNode.cpp
index 0f2602f8f0..d5342e4d1e 100644
--- a/dviware/dvisvgm/src/XMLNode.cpp
+++ b/dviware/dvisvgm/src/XMLNode.cpp
@@ -2,7 +2,7 @@
** XMLNode.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -63,6 +63,14 @@ unique_ptr<XMLNode> XMLNode::removeNext () {
return oldnext;
}
+
+XMLElement* XMLNode::nextElement () const {
+ for (XMLNode *node = next(); node; node = node->next())
+ if (node->toElement())
+ return node->toElement();
+ return nullptr;
+}
+
/////////////////////////////////////////////////////////////////////
XMLElement::XMLElement (string name) : _name(std::move(name)) {
@@ -375,7 +383,8 @@ ostream& XMLElement::write (ostream &os) const {
if (attrib.name.front() != '@')
os << attrib.name << "='" << attrib.value << '\'';
else {
- os << attrib.name.substr(1) << "='";
+ bool keep = (attrib.name.size() > 1 && attrib.name[1] == '@');
+ os << attrib.name.substr(keep ? 2 : 1) << "='";
auto pos = attrib.value.find("base64,");
if (pos == string::npos)
os << attrib.value;
@@ -387,7 +396,7 @@ ostream& XMLElement::write (ostream &os) const {
os << '\n';
util::base64_copy(ifs, os, 200);
ifs.close();
- if (!KEEP_ENCODED_FILES)
+ if (!KEEP_ENCODED_FILES && !keep)
FileSystem::remove(fname);
}
}
diff --git a/dviware/dvisvgm/src/XMLNode.hpp b/dviware/dvisvgm/src/XMLNode.hpp
index fc34f05db8..829ea7c81c 100644
--- a/dviware/dvisvgm/src/XMLNode.hpp
+++ b/dviware/dvisvgm/src/XMLNode.hpp
@@ -2,7 +2,7 @@
** XMLNode.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -62,6 +62,7 @@ class XMLNode {
XMLNode* parent () const {return _parent;}
XMLNode* prev () const {return _prev;}
XMLNode* next () const {return _next.get();}
+ XMLElement* nextElement () const;
static bool KEEP_ENCODED_FILES;
diff --git a/dviware/dvisvgm/src/XMLParser.cpp b/dviware/dvisvgm/src/XMLParser.cpp
index 166a49e0cf..c1da5373a6 100644
--- a/dviware/dvisvgm/src/XMLParser.cpp
+++ b/dviware/dvisvgm/src/XMLParser.cpp
@@ -2,7 +2,7 @@
** XMLParser.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -19,29 +19,90 @@
*************************************************************************/
#include "InputReader.hpp"
-#include "GraphicsPathParser.hpp"
#include "XMLParser.hpp"
using namespace std;
+XMLElement* XMLParser::setRootElement (XMLElement *root) {
+ _elementStack.clear();
+ if (root)
+ _elementStack.push_back(root);
+ else {
+ _root = util::make_unique<XMLElement>("root");
+ _elementStack.push_back(_root.get());
+ }
+ return _elementStack.back();
+}
+
+
+/** Parses an XML fragment from an input stream. */
+void XMLParser::parse (istream &is) {
+ while (is) {
+ string buf;
+ buf.resize(1024);
+ is.read(&buf[0], 1024);
+ buf.resize(is.gcount());
+ parse(std::move(buf));
+ }
+ finish();
+}
+
+
+static string::size_type find_end_of_tag (const string &str, string::size_type startpos) {
+ char attrval_delim = 0;
+ bool expect_attrval = false;
+ for (auto i=startpos; i < str.length(); i++) {
+ if (attrval_delim) { // inside attrubute value?
+ if (str[i] == attrval_delim) // end of attribute value?
+ attrval_delim = 0;
+ }
+ else if (str[i] == '>')
+ return i;
+ else if (str[i] == '"' || str[i] == '\'') { // start of attribute value?
+ if (expect_attrval)
+ attrval_delim = str[i];
+ else {
+ ostringstream oss;
+ oss << "misplaced " << str[i] << " inside tag";
+ throw XMLParserException(oss.str());
+ }
+ }
+ else if (str[i] == '=') {
+ expect_attrval = true;
+ continue;
+ }
+ else if (str[i] == '<')
+ throw XMLParserException("invalid '<' inside tag");
+ expect_attrval = false;
+ }
+ return string::npos;
+}
+
+
/** Parses a fragment of XML code, creates corresponding XML nodes and adds them
* to an SVG tree. The code may be split and processed by several calls of this
* function. Incomplete chunks that can't be processed yet are stored and picked
* up again together with the next incoming XML fragment. If a call of this function
* is supposed to finish the parsing of an XML subtree, parameter 'finish' must be set.
* @param[in] xml XML fragment to parse
- * @param[in] svgTree the parsed nodes are added to this SVG tree
* @param[in] finish if true, no more XML is expected and parsing is finished */
-void XMLParser::parse (const string &xml, SVGTree &svgTree, bool finish) {
+void XMLParser::parse (string xml, bool finish) {
+ if (_elementStack.empty()) // no root element set?
+ return;
// collect/extract an XML fragment that only contains complete tags
// incomplete tags are held back
- _xmlbuf += xml;
+ if (_xmlbuf.empty())
+ _xmlbuf.assign(std::move(xml));
+ else
+ _xmlbuf.append(xml);
string::size_type left=0;
try {
while (left != string::npos) {
auto right = _xmlbuf.find('<', left);
- if (left < right && left < _xmlbuf.length()) // plain text found?
- (svgTree.*_append)(util::make_unique<XMLText>(_xmlbuf.substr(left, right - left)));
+ if (left < right && left < _xmlbuf.length()) {// plain text found?
+ string text = (right == string::npos ? _xmlbuf.substr(left) : _xmlbuf.substr(left, right-left));
+ appendNode(util::make_unique<XMLText>(std::move(text)));
+ }
if (right != string::npos) {
left = right;
if (_xmlbuf.compare(left, 9, "<![CDATA[") == 0) {
@@ -50,7 +111,7 @@ void XMLParser::parse (const string &xml, SVGTree &svgTree, bool finish) {
if (finish) throw XMLParserException("expected ']]>' at end of CDATA block");
break;
}
- (svgTree.*_append)(util::make_unique<XMLCData>(_xmlbuf.substr(left + 9, right - left - 9)));
+ appendNode(util::make_unique<XMLCData>(_xmlbuf.substr(left+9, right-left-9)));
right += 2;
}
else if (_xmlbuf.compare(left, 4, "<!--") == 0) {
@@ -59,7 +120,7 @@ void XMLParser::parse (const string &xml, SVGTree &svgTree, bool finish) {
if (finish) throw XMLParserException("expected '-->' at end of comment");
break;
}
- (svgTree.*_append)(util::make_unique<XMLComment>(_xmlbuf.substr(left + 4, right - left - 4)));
+ appendNode(util::make_unique<XMLComment>(_xmlbuf.substr(left+4, right-left-4)));
right += 2;
}
else if (_xmlbuf.compare(left, 2, "<?") == 0) {
@@ -68,7 +129,7 @@ void XMLParser::parse (const string &xml, SVGTree &svgTree, bool finish) {
if (finish) throw XMLParserException("expected '?>' at end of processing instruction");
break;
}
- (svgTree.*_append)(util::make_unique<XMLText>(_xmlbuf.substr(left, right - left + 2)));
+ appendNode(util::make_unique<XMLText>(_xmlbuf.substr(left, right-left+2)));
right++;
}
else if (_xmlbuf.compare(left, 2, "</") == 0) {
@@ -77,15 +138,15 @@ void XMLParser::parse (const string &xml, SVGTree &svgTree, bool finish) {
if (finish) throw XMLParserException("missing '>' at end of closing XML tag");
break;
}
- closeElement(_xmlbuf.substr(left+2, right-left-2), svgTree);
+ closeElement(_xmlbuf.substr(left+2, right-left-2));
}
else {
- right = _xmlbuf.find('>', left+1);
+ right = find_end_of_tag(_xmlbuf, left+1);
if (right == string::npos) {
if (finish) throw XMLParserException("missing '>' or '/>' at end of opening XML tag");
break;
}
- openElement(_xmlbuf.substr(left+1, right-left-1), svgTree);
+ openElement(_xmlbuf.substr(left+1, right-left-1));
}
}
left = right;
@@ -104,79 +165,93 @@ void XMLParser::parse (const string &xml, SVGTree &svgTree, bool finish) {
}
+void XMLParser::appendNode (unique_ptr<XMLNode> node) {
+ context()->append(std::move(node));
+}
+
+
+XMLElement* XMLParser::finishPushContext (unique_ptr<XMLElement> elem) {
+ XMLElement *elemPtr = elem.get();
+ context()->append(std::move(elem));
+ return elemPtr;
+}
+
+
/** Processes an opening element tag.
* @param[in] tag tag without leading and trailing angle brackets */
-void XMLParser::openElement (const string &tag, SVGTree &svgTree) {
+XMLElement* XMLParser::openElement (const string &tag) {
StringInputBuffer ib(tag);
BufferInputReader ir(ib);
string name = ir.getString("/ \t\n\r");
- bool isPathElement = (name == "path" || name == "svg:path");
ir.skipSpace();
- auto elemNode = util::make_unique<SVGElement>(name);
+ unique_ptr<XMLElement> elemNode{createElementPtr(name)};
map<string, string> attribs;
if (ir.parseAttributes(attribs, true, "\"'")) {
- for (const auto &attrpair : attribs) {
- if (!isPathElement || attrpair.first != "d")
- elemNode->addAttribute(attrpair.first, attrpair.second);
- else {
- try {
- // parse and reformat path definition
- auto path = GraphicsPathParser<double>().parse(attrpair.second);
- ostringstream oss;
- path.writeSVG(oss, SVGTree::RELATIVE_PATH_CMDS);
- elemNode->addAttribute("d", oss.str());
- }
- catch (const GraphicsPathParserException &e) {
- throw XMLParserException(string("error in path data: ")+e.what());
- }
- }
- }
+ for (const auto &attrpair : attribs)
+ elemNode->addAttribute(attrpair.first, attrpair.second);
}
ir.skipSpace();
+ XMLElement *elemPtr = elemNode.get();
if (ir.peek() == '/') // end of empty element tag
- (svgTree.*_append)(std::move(elemNode));
- else if (ir.peek() < 0) { // end of opening tag
- _nameStack.push_back(name);
- (svgTree.*_pushContext)(std::move(elemNode));
- }
+ appendNode(std::move(elemNode));
+ else if (ir.peek() < 0) // end of opening tag
+ _elementStack.push_back(finishPushContext(std::move(elemNode)));
else
throw XMLParserException("'>' or '/>' expected at end of opening tag <"+name);
+ if (_notifyElementOpened)
+ _notifyElementOpened(elemPtr);
+ if (ir.peek() == '/' && _notifyElementClosed)
+ _notifyElementClosed(elemPtr);
+ return elemPtr;
}
/** Processes a closing element tag.
* @param[in] tag tag without leading and trailing angle brackets */
-void XMLParser::closeElement (const string &tag, SVGTree &svgTree) {
+void XMLParser::closeElement (const string &tag) {
StringInputBuffer ib(tag);
BufferInputReader ir(ib);
string name = ir.getString(" \t\n\r");
ir.skipSpace();
if (ir.peek() >= 0)
throw XMLParserException("'>' expected at end of closing tag </"+name);
- if (_nameStack.empty())
+ if (_elementStack.size() <= 1)
throw XMLParserException("spurious closing tag </" + name + ">");
- if (_nameStack.back() != name)
- throw XMLParserException("expected </" + _nameStack.back() + "> but found </" + name + ">");
- (svgTree.*_popContext)();
- _nameStack.pop_back();
+ if (_elementStack.back()->name() != name)
+ throw XMLParserException("expected </" + _elementStack.back()->name() + "> but found </" + name + ">");
+ finishPopContext();
+ if (_notifyElementClosed)
+ _notifyElementClosed(_elementStack.back());
+ _elementStack.pop_back();
}
/** Processes any remaining XML fragments, checks for missing closing tags,
* and resets the parser state. */
-void XMLParser::finish (SVGTree &svgTree) {
+void XMLParser::finish () {
if (!_xmlbuf.empty()) {
if (!_error)
- parse("", svgTree, true);
+ parse("", true);
_xmlbuf.clear();
}
string tags;
- while (!_nameStack.empty()) {
- tags += "</"+_nameStack.back()+">, ";
- _nameStack.pop_back();
+ while (_elementStack.size() > 1) {
+ tags += "</" + _elementStack.back()->name() + ">, ";
+ _elementStack.pop_back();
}
if (!tags.empty() && !_error) {
- tags.resize(tags.length()-2);
- throw XMLParserException("missing closing tag(s): "+tags);
+ tags.resize(tags.length()-2); // drop trailing ", "
+ throw XMLParserException("missing closing tag(s): " + tags);
}
}
+
+
+XMLElement* XMLParser::createElementPtr (std::string name) const {
+ return new XMLElement(std::move(name));
+}
+
+
+void XMLParser::setNotifyFuncs (NotifyFunc notifyElementOpened, NotifyFunc notifyElementClosed) {
+ _notifyElementOpened = std::move(notifyElementOpened);
+ _notifyElementClosed = std::move(notifyElementClosed);
+}
diff --git a/dviware/dvisvgm/src/XMLParser.hpp b/dviware/dvisvgm/src/XMLParser.hpp
index 51f6a62544..7dbbcc25a4 100644
--- a/dviware/dvisvgm/src/XMLParser.hpp
+++ b/dviware/dvisvgm/src/XMLParser.hpp
@@ -2,7 +2,7 @@
** XMLParser.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -21,38 +21,45 @@
#ifndef XMLPARSER_HPP
#define XMLPARSER_HPP
+#include <functional>
#include <string>
#include "MessageException.hpp"
-#include "SVGTree.hpp"
+#include "XMLNode.hpp"
struct XMLParserException : MessageException {
explicit XMLParserException (const std::string &msg) : MessageException(msg) {}
};
class XMLParser {
- using AppendFunc = void (SVGTree::*)(std::unique_ptr<XMLNode>);
- using PushFunc = void (SVGTree::*)(std::unique_ptr<SVGElement>);
- using PopFunc = void (SVGTree::*)();
- using NameStack = std::vector<std::string>;
+ using ElementStack = std::vector<XMLElement*>;
+ using NotifyFunc = std::function<void(XMLElement*)>;
public:
- XMLParser (AppendFunc append, PushFunc push, PopFunc pop)
- : _append(append), _pushContext(push), _popContext(pop) {}
-
- void parse (const std::string &xml, SVGTree &svgTree, bool finish=false);
- void finish (SVGTree &svgTree);
+ XMLParser () =default;
+ virtual ~XMLParser() {}
+ explicit XMLParser (XMLElement *root) {setRootElement(root);}
+ XMLElement* setRootElement (XMLElement *root);
+ void parse (std::istream &is);
+ void parse (std::string xml, bool finish=false);
+ void finish ();
+ void setNotifyFuncs (NotifyFunc notifyElementOpened, NotifyFunc notifyElementClosed);
protected:
- void openElement (const std::string &tag, SVGTree &svgTree);
- void closeElement (const std::string &tag, SVGTree &svgTree);
+ XMLElement* context () {return _elementStack.back();}
+ virtual void appendNode (std::unique_ptr<XMLNode> node);
+ virtual XMLElement* finishPushContext (std::unique_ptr<XMLElement> elem);
+ virtual void finishPopContext () {}
+ virtual XMLElement* openElement (const std::string &tag);
+ virtual void closeElement (const std::string &tag);
+ virtual XMLElement* createElementPtr (std::string name) const;
private:
- AppendFunc _append;
- PushFunc _pushContext;
- PopFunc _popContext;
std::string _xmlbuf;
- NameStack _nameStack; ///< names of nested elements still missing a closing tag
+ std::unique_ptr<XMLElement> _root; ///< element holding the parsed nodes
+ ElementStack _elementStack; ///< elements not yet closed
bool _error=false;
+ std::function<void(XMLElement*)> _notifyElementOpened;
+ std::function<void(XMLElement*)> _notifyElementClosed;
};
#endif
diff --git a/dviware/dvisvgm/src/XMLString.cpp b/dviware/dvisvgm/src/XMLString.cpp
index ae489ea16c..53f8bc1de1 100644
--- a/dviware/dvisvgm/src/XMLString.cpp
+++ b/dviware/dvisvgm/src/XMLString.cpp
@@ -2,7 +2,7 @@
** XMLString.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/XMLString.hpp b/dviware/dvisvgm/src/XMLString.hpp
index 832ac43468..6f58756f19 100644
--- a/dviware/dvisvgm/src/XMLString.hpp
+++ b/dviware/dvisvgm/src/XMLString.hpp
@@ -2,7 +2,7 @@
** XMLString.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/XXHashFunction.hpp b/dviware/dvisvgm/src/XXHashFunction.hpp
index ecc2fd5f2b..f93ae3eb38 100644
--- a/dviware/dvisvgm/src/XXHashFunction.hpp
+++ b/dviware/dvisvgm/src/XXHashFunction.hpp
@@ -2,7 +2,7 @@
** XXHashFunction.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/ZLibOutputStream.hpp b/dviware/dvisvgm/src/ZLibOutputStream.hpp
index 7537dcf41e..bc99621bd8 100644
--- a/dviware/dvisvgm/src/ZLibOutputStream.hpp
+++ b/dviware/dvisvgm/src/ZLibOutputStream.hpp
@@ -2,7 +2,7 @@
** ZLibOutputStream.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/dvisvgm.cpp b/dviware/dvisvgm/src/dvisvgm.cpp
index 488e9e2b47..4c5bf550b2 100644
--- a/dviware/dvisvgm/src/dvisvgm.cpp
+++ b/dviware/dvisvgm/src/dvisvgm.cpp
@@ -2,7 +2,7 @@
** dvisvgm.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -40,6 +40,7 @@
#include "HyperlinkManager.hpp"
#include "Message.hpp"
#include "PageSize.hpp"
+#include "PDFHandler.hpp"
#include "PDFToSVG.hpp"
#include "PSInterpreter.hpp"
#include "PsSpecialHandler.hpp"
@@ -48,6 +49,7 @@
#include "optimizer/SVGOptimizer.hpp"
#include "SVGOutput.hpp"
#include "System.hpp"
+#include "ttf/TTFWriter.hpp"
#include "XMLParser.hpp"
#include "XXHashFunction.hpp"
#include "utility.hpp"
@@ -56,8 +58,7 @@
#ifndef DISABLE_WOFF
#include <brotli/encode.h>
//#include <woff2/version.h>
-#include "ffwrapper.h"
-#include "TTFAutohint.hpp"
+#include "ttf/TTFAutohint.hpp"
#endif
using namespace std;
@@ -156,7 +157,7 @@ static bool set_temp_dir (const CommandLine &args) {
if (!args.tmpdirOpt.value().empty())
FileSystem::TMPDIR = args.tmpdirOpt.value();
else {
- cout << "temporary folder: " << FileSystem::tmpdir() << '\n';
+ cout << "temporary folder: " << FileSystem::ensureSystemSlashes(FileSystem::tmpdir(true)) << '\n';
return false;
}
}
@@ -255,9 +256,9 @@ class VersionInfo {
static void print_version (bool extended) {
string versionstr = string(PROGRAM_NAME)+" "+PROGRAM_VERSION;
-#ifdef TARGET_SYSTEM
- if (extended && strlen(TARGET_SYSTEM) > 0)
- versionstr += " (" TARGET_SYSTEM ")";
+#ifdef HOST_SYSTEM
+ if (extended && strlen(HOST_SYSTEM) > 0)
+ versionstr += " (" HOST_SYSTEM ")";
#endif
cout << versionstr << '\n';
if (extended) {
@@ -269,11 +270,11 @@ static void print_version (bool extended) {
versionInfo.add("xxhash", XXH64HashFunction::version(), 3, 100);
versionInfo.add("zlib", zlibVersion());
versionInfo.add("Ghostscript", Ghostscript().revisionstr(), true);
+ versionInfo.add("mutool", PDFHandler::mutoolVersion(), true);
#ifndef DISABLE_WOFF
versionInfo.add("brotli", BrotliEncoderVersion(), 3, 0x1000);
// versionInfo.add("woff2", woff2::version, 3, 0x100);
- versionInfo.add("fontforge", ff_version());
- versionInfo.add("ttfautohint", TTFAutohint().version(), true);
+ versionInfo.add("ttfautohint", ttf::TTFAutohint().version(), true);
#endif
#ifdef MIKTEX
versionInfo.add("MiKTeX", FileFinder::instance().version());
@@ -371,6 +372,10 @@ static void set_variables (const CommandLine &cmdline) {
PsSpecialHandler::SHADING_SEGMENT_SIZE = max(1, cmdline.gradSegmentsOpt.value());
PsSpecialHandler::SHADING_SIMPLIFY_DELTA = cmdline.gradSimplifyOpt.value();
PsSpecialHandler::BITMAP_FORMAT = util::tolower(cmdline.bitmapFormatOpt.value());
+#ifdef TTFDEBUG
+ ttf::TTFWriter::CREATE_PS_GLYPH_OUTLINES = cmdline.debugGlyphsOpt.given();
+#endif
+ PsSpecialHandler::EMBED_BITMAP_DATA = cmdline.embedBitmapsOpt.given();
if (!PSInterpreter::imageDeviceKnown(PsSpecialHandler::BITMAP_FORMAT)) {
ostringstream oss;
oss << "unknown image format '" << PsSpecialHandler::BITMAP_FORMAT << "'\nknown formats:\n";
diff --git a/dviware/dvisvgm/src/ffwrapper.c b/dviware/dvisvgm/src/ffwrapper.c
deleted file mode 100644
index 7b6247366a..0000000000
--- a/dviware/dvisvgm/src/ffwrapper.c
+++ /dev/null
@@ -1,84 +0,0 @@
-/*************************************************************************
-** ffwrapper.c **
-** **
-** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
-** **
-** This program is free software; you can redistribute it and/or **
-** modify it under the terms of the GNU General Public License as **
-** published by the Free Software Foundation; either version 3 of **
-** the License, or (at your option) any later version. **
-** **
-** This program is distributed in the hope that it will be useful, but **
-** WITHOUT ANY WARRANTY; without even the implied warranty of **
-** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
-** GNU General Public License for more details. **
-** **
-** You should have received a copy of the GNU General Public License **
-** along with this program; if not, see <http://www.gnu.org/licenses/>. **
-*************************************************************************/
-
-#include <fontforge.h>
-#include "ffwrapper.h"
-
-#ifdef _NDEBUG
-static void no_post_error (const char *title, const char *error, ...) {}
-static void no_warning (const char *format, ...) {}
-#endif
-
-
-/** Initializes the FontForge library. */
-void ff_init () {
- InitSimpleStuff();
-#ifdef _NDEBUG
- ui_interface.post_error = &no_post_error;
- ui_interface.logwarning = &no_warning;
-#endif
-}
-
-
-int ff_version () {
- return FONTFORGE_VERSIONDATE_RAW;
-}
-
-
-/** Runs the autohinter for all glyphs in a given font.
- * @param[in,out] sf the font to be autohinted
- * @param[in] order2 if != 0, target font requires quadratic rather than cubic splines */
-static void ff_autohint (SplineFont *sf, int order2) {
- BlueData bd;
- GlobalInstrCt gic;
- if (order2)
- SFConvertToOrder2(sf);
- QuickBlues(sf, ly_fore, &bd);
- if (order2)
- InitGlobalInstrCt(&gic, sf, ly_fore, &bd);
- for (int i=0; i < sf->glyphcnt; i++) {
- SplineChar *sc = sf->glyphs[i];
- if (sc != NULL) {
- SplineChar *sc = sf->glyphs[i];
- SplineCharAutoHint(sc, ly_fore, &bd); // generate hints
- if (order2)
- NowakowskiSCAutoInstr(&gic, sc); // generate TTF instructions
- }
- }
- if (order2)
- FreeGlobalInstrCt(&gic);
-}
-
-
-/** Creates a TrueType font from a FontForge SFD file.
- * @param[in] sfdname name of SFD file
- * @param[in] ttfname name of TrueType file
- * @param[in] autohint run the autohinter if != 0 */
-int ff_sfd_to_ttf (const char *sfdname, const char *ttfname, int autohint) {
- int ret=0;
- SplineFont *sf = SFDRead((char*)sfdname);
- if (sf) {
- if (autohint)
- ff_autohint(sf, true);
- ret = WriteTTFFont((char*)ttfname, sf, ff_ttf, 0, 0, 0, sf->map, ly_fore);
- SplineFontFree(sf);
- }
- return ret;
-}
diff --git a/dviware/dvisvgm/src/fonts/Base14Fonts.cpp b/dviware/dvisvgm/src/fonts/Base14Fonts.cpp
new file mode 100644
index 0000000000..07f4850bc1
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/Base14Fonts.cpp
@@ -0,0 +1,65 @@
+/*************************************************************************
+** Base14Fonts.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <algorithm>
+#include "Base14Fonts.hpp"
+
+using namespace std;
+
+extern const MemoryFontData Dingbats_cff;
+extern const MemoryFontData NimbusMonoPS_Bold_cff;
+extern const MemoryFontData NimbusMonoPS_BoldItalic_cff;
+extern const MemoryFontData NimbusMonoPS_Italic_cff;
+extern const MemoryFontData NimbusMonoPS_Regular_cff;
+extern const MemoryFontData NimbusRoman_Bold_cff;
+extern const MemoryFontData NimbusRoman_BoldItalic_cff;
+extern const MemoryFontData NimbusRoman_Italic_cff;
+extern const MemoryFontData NimbusRoman_Regular_cff;
+extern const MemoryFontData NimbusSans_Bold_cff;
+extern const MemoryFontData NimbusSans_BoldItalic_cff;
+extern const MemoryFontData NimbusSans_Italic_cff;
+extern const MemoryFontData NimbusSans_Regular_cff;
+extern const MemoryFontData StandardSymbolsPS_cff;
+
+const MemoryFontData* find_base14_font (const string &fontname) {
+ struct FontData {
+ const char *name;
+ const MemoryFontData *font;
+ } names[14] = {
+ {"Courier", &NimbusMonoPS_Regular_cff},
+ {"Courier-Oblique", &NimbusMonoPS_Italic_cff},
+ {"Courier-Bold", &NimbusMonoPS_Bold_cff},
+ {"Courier-BoldOblique", &NimbusMonoPS_BoldItalic_cff},
+ {"Helvetica", &NimbusSans_Regular_cff},
+ {"Helvetica-Oblique", &NimbusSans_Italic_cff},
+ {"Helvetica-Bold", &NimbusSans_Bold_cff},
+ {"Helvetica-BoldOblique", &NimbusSans_BoldItalic_cff},
+ {"Times-Roman", &NimbusRoman_Regular_cff},
+ {"Times-Italic", &NimbusRoman_Italic_cff},
+ {"Times-Bold", &NimbusRoman_Bold_cff},
+ {"Times-BoldItalic", &NimbusRoman_BoldItalic_cff},
+ {"Symbol", &StandardSymbolsPS_cff},
+ {"ZapfDingbats", &Dingbats_cff}
+ };
+ auto it = find_if(begin(names), end(names), [&fontname](const FontData &data) {
+ return data.name == fontname;
+ });
+ return it != end(names) ? it->font : nullptr;
+}
diff --git a/dviware/dvisvgm/src/ffwrapper.h b/dviware/dvisvgm/src/fonts/Base14Fonts.hpp
index 2732a9f1d7..4e410fdc61 100644
--- a/dviware/dvisvgm/src/ffwrapper.h
+++ b/dviware/dvisvgm/src/fonts/Base14Fonts.hpp
@@ -1,5 +1,5 @@
/*************************************************************************
-** ffwrapper.h **
+** Base14Fonts.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
@@ -18,20 +18,15 @@
** along with this program; if not, see <http://www.gnu.org/licenses/>. **
*************************************************************************/
-#ifndef FFWRAPPER_H
-#define FFWRAPPER_H
+#pragma once
-#ifdef __cplusplus
-extern "C" {
-#endif
+#include <cstddef>
+#include <string>
-void ff_init ();
-int ff_version ();
-int ff_sfd_to_ttf (const char *sfdname, const char *ttfname, int autohint);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
+struct MemoryFontData {
+ MemoryFontData () =delete;
+ const char *data;
+ size_t size;
+};
+const MemoryFontData* find_base14_font (const std::string &name);
diff --git a/dviware/dvisvgm/src/fonts/Dingbats.cff.cpp b/dviware/dvisvgm/src/fonts/Dingbats.cff.cpp
new file mode 100644
index 0000000000..f293b4c2dd
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/Dingbats.cff.cpp
@@ -0,0 +1,785 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData Dingbats_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x09\x44\x69\x6e\x67\x62\x61\x74\x73\x00\x01\x01\x01\x39\xf8\xe4\x00\xf8\xe5\x01\xf8\xe6\x0c\x00"
+"\xf8\xe7\x02\xf8\xe7\x03\xf8\x18\x04\x43\x0c\x03\xaf\x0c\x04\x8a\xfb\x24\xfa\x69\xf9\xc7\x05\x1d\x00\x4c\x9a\x04\x0d\x1c\x05\x2a"
+"\x0f\x1c\x05\x31\x10\x1c\x05\x3b\x11\x9f\x1c\x60\x1e\x12\x00\xcd\x02\x00\x01\x00\x03\x00\x05\x00\x09\x00\x0b\x00\x0d\x00\x0f\x00"
+"\x13\x00\x17\x00\x1b\x00\x1e\x00\x21\x00\x24\x00\x27\x00\x2a\x00\x2d\x00\x31\x00\x34\x00\x37\x00\x3a\x00\x3d\x00\x40\x00\x43\x00"
+"\x46\x00\x49\x00\x4c\x00\x4f\x00\x52\x00\x55\x00\x57\x00\x59\x00\x5b\x00\x5d\x00\x60\x00\x63\x00\x66\x00\x69\x00\x6c\x00\x6f\x00"
+"\x72\x00\x75\x00\x78\x00\x7b\x00\x7e\x00\x81\x00\x84\x00\x87\x00\x8a\x00\x8d\x00\x90\x00\x93\x00\x96\x00\x99\x00\x9c\x00\x9f\x00"
+"\xa2\x00\xa5\x00\xa8\x00\xab\x00\xae\x00\xb1\x00\xb4\x00\xb7\x00\xba\x00\xbd\x00\xc0\x00\xc3\x00\xc6\x00\xc9\x00\xcc\x00\xcf\x00"
+"\xd2\x00\xd5\x00\xd8\x00\xdb\x00\xde\x00\xe1\x00\xe4\x00\xe7\x00\xea\x00\xee\x00\xf1\x00\xf5\x00\xf8\x00\xfb\x00\xfe\x01\x01\x01"
+"\x04\x01\x07\x01\x0a\x01\x0d\x01\x10\x01\x13\x01\x16\x01\x1a\x01\x1d\x01\x20\x01\x23\x01\x26\x01\x29\x01\x2c\x01\x30\x01\x33\x01"
+"\x37\x01\x3a\x01\x3d\x01\x40\x01\x43\x01\x46\x01\x4a\x01\x4e\x01\x52\x01\x56\x01\x5a\x01\x5e\x01\x62\x01\x66\x01\x6a\x01\x6e\x01"
+"\x72\x01\x76\x01\x7a\x01\x7e\x01\x82\x01\x86\x01\x8a\x01\x8e\x01\x92\x01\x96\x01\x9a\x01\x9e\x01\xa2\x01\xa6\x01\xaa\x01\xae\x01"
+"\xb2\x01\xb6\x01\xba\x01\xbe\x01\xc2\x01\xc6\x01\xca\x01\xce\x01\xd2\x01\xd6\x01\xda\x01\xde\x01\xe2\x01\xe6\x01\xea\x01\xee\x01"
+"\xf2\x01\xf6\x01\xfa\x01\xfe\x02\x02\x02\x06\x02\x0a\x02\x0e\x02\x12\x02\x16\x02\x1a\x02\x1e\x02\x22\x02\x26\x02\x2a\x02\x2e\x02"
+"\x32\x02\x36\x02\x3a\x02\x3e\x02\x42\x02\x46\x02\x4a\x02\x4e\x02\x52\x02\x56\x02\x5a\x02\x5e\x02\x62\x02\x66\x02\x6a\x02\x6e\x02"
+"\x72\x02\x76\x02\x7a\x02\x7e\x02\x82\x02\x86\x02\x8a\x02\x8e\x02\x92\x02\x96\x02\x9a\x02\x9e\x02\xa2\x02\xa6\x02\xaa\x02\xae\x02"
+"\xb2\x02\xb6\x02\xba\x02\xbe\x02\xf4\x03\x34\x03\x3c\x61\x31\x61\x32\x61\x32\x30\x32\x61\x33\x61\x34\x61\x35\x61\x31\x31\x39\x61"
+"\x31\x31\x38\x61\x31\x31\x37\x61\x31\x31\x61\x31\x32\x61\x31\x33\x61\x31\x34\x61\x31\x35\x61\x31\x36\x61\x31\x30\x35\x61\x31\x37"
+"\x61\x31\x38\x61\x31\x39\x61\x32\x30\x61\x32\x31\x61\x32\x32\x61\x32\x33\x61\x32\x34\x61\x32\x35\x61\x32\x36\x61\x32\x37\x61\x32"
+"\x38\x61\x36\x61\x37\x61\x38\x61\x39\x61\x31\x30\x61\x32\x39\x61\x33\x30\x61\x33\x31\x61\x33\x32\x61\x33\x33\x61\x33\x34\x61\x33"
+"\x35\x61\x33\x36\x61\x33\x37\x61\x33\x38\x61\x33\x39\x61\x34\x30\x61\x34\x31\x61\x34\x32\x61\x34\x33\x61\x34\x34\x61\x34\x35\x61"
+"\x34\x36\x61\x34\x37\x61\x34\x38\x61\x34\x39\x61\x35\x30\x61\x35\x31\x61\x35\x32\x61\x35\x33\x61\x35\x34\x61\x35\x35\x61\x35\x36"
+"\x61\x35\x37\x61\x35\x38\x61\x35\x39\x61\x36\x30\x61\x36\x31\x61\x36\x32\x61\x36\x33\x61\x36\x34\x61\x36\x35\x61\x36\x36\x61\x36"
+"\x37\x61\x36\x38\x61\x36\x39\x61\x37\x30\x61\x37\x31\x61\x37\x32\x61\x37\x33\x61\x37\x34\x61\x32\x30\x33\x61\x37\x35\x61\x32\x30"
+"\x34\x61\x37\x36\x61\x37\x37\x61\x37\x38\x61\x37\x39\x61\x38\x31\x61\x38\x32\x61\x38\x33\x61\x38\x34\x61\x39\x37\x61\x39\x38\x61"
+"\x39\x39\x61\x31\x30\x30\x61\x38\x39\x61\x39\x30\x61\x39\x33\x61\x39\x34\x61\x39\x31\x61\x39\x32\x61\x32\x30\x35\x61\x38\x35\x61"
+"\x32\x30\x36\x61\x38\x36\x61\x38\x37\x61\x38\x38\x61\x39\x35\x61\x39\x36\x61\x31\x30\x31\x61\x31\x30\x32\x61\x31\x30\x33\x61\x31"
+"\x30\x34\x61\x31\x30\x36\x61\x31\x30\x37\x61\x31\x30\x38\x61\x31\x31\x32\x61\x31\x31\x31\x61\x31\x31\x30\x61\x31\x30\x39\x61\x31"
+"\x32\x30\x61\x31\x32\x31\x61\x31\x32\x32\x61\x31\x32\x33\x61\x31\x32\x34\x61\x31\x32\x35\x61\x31\x32\x36\x61\x31\x32\x37\x61\x31"
+"\x32\x38\x61\x31\x32\x39\x61\x31\x33\x30\x61\x31\x33\x31\x61\x31\x33\x32\x61\x31\x33\x33\x61\x31\x33\x34\x61\x31\x33\x35\x61\x31"
+"\x33\x36\x61\x31\x33\x37\x61\x31\x33\x38\x61\x31\x33\x39\x61\x31\x34\x30\x61\x31\x34\x31\x61\x31\x34\x32\x61\x31\x34\x33\x61\x31"
+"\x34\x34\x61\x31\x34\x35\x61\x31\x34\x36\x61\x31\x34\x37\x61\x31\x34\x38\x61\x31\x34\x39\x61\x31\x35\x30\x61\x31\x35\x31\x61\x31"
+"\x35\x32\x61\x31\x35\x33\x61\x31\x35\x34\x61\x31\x35\x35\x61\x31\x35\x36\x61\x31\x35\x37\x61\x31\x35\x38\x61\x31\x35\x39\x61\x31"
+"\x36\x30\x61\x31\x36\x31\x61\x31\x36\x33\x61\x31\x36\x34\x61\x31\x39\x36\x61\x31\x36\x35\x61\x31\x39\x32\x61\x31\x36\x36\x61\x31"
+"\x36\x37\x61\x31\x36\x38\x61\x31\x36\x39\x61\x31\x37\x30\x61\x31\x37\x31\x61\x31\x37\x32\x61\x31\x37\x33\x61\x31\x36\x32\x61\x31"
+"\x37\x34\x61\x31\x37\x35\x61\x31\x37\x36\x61\x31\x37\x37\x61\x31\x37\x38\x61\x31\x37\x39\x61\x31\x39\x33\x61\x31\x38\x30\x61\x31"
+"\x39\x39\x61\x31\x38\x31\x61\x32\x30\x30\x61\x31\x38\x32\x61\x32\x30\x31\x61\x31\x38\x33\x61\x31\x38\x34\x61\x31\x39\x37\x61\x31"
+"\x38\x35\x61\x31\x39\x34\x61\x31\x39\x38\x61\x31\x38\x36\x61\x31\x39\x35\x61\x31\x38\x37\x61\x31\x38\x38\x61\x31\x38\x39\x61\x31"
+"\x39\x30\x61\x31\x39\x31\x32\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x33"
+"\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74"
+"\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x33"
+"\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74"
+"\x44\x69\x6e\x67\x62\x61\x74\x73\x00\x00\x01\x00\x01\x00\x01\x87\xc8\x01\x04\x20\x5e\x80\x0d\xa1\x4e\xf1\x0d\x00\xcb\x02\x00\x01"
+"\x00\x04\x00\x07\x00\xba\x01\x6f\x02\x26\x03\xec\x04\xf2\x05\xf3\x06\x9c\x07\x66\x07\xcc\x08\x9f\x0a\x5d\x0c\x0f\x0d\xb9\x0e\x7b"
+"\x0f\x43\x10\x02\x10\xbf\x11\x71\x11\xc6\x12\x66\x12\x92\x12\xc6\x13\xe2\x15\x02\x15\x52\x15\x6f\x15\x9b\x15\xc7\x15\xe2\x16\x21"
+"\x16\x73\x16\xd9\x17\x54\x17\xe5\x18\x89\x19\x12\x1a\x02\x1a\x6a\x1a\xea\x1b\x12\x1b\x5d\x1b\x89\x1b\xc5\x1c\x49\x1c\xb7\x1d\x60"
+"\x1d\xc1\x1e\x1a\x1e\x5a\x1e\xac\x1e\xf9\x1f\xa1\x20\x4c\x20\xd0\x21\x84\x21\xc1\x22\x16\x22\xa3\x23\x64\x24\xca\x25\xe4\x27\x1e"
+"\x28\x15\x29\x99\x2c\x26\x2c\xeb\x2e\x13\x2e\xbd\x2f\xff\x30\xa1\x31\xe3\x33\x14\x33\xca\x34\xd1\x35\xdc\x36\x04\x36\x60\x36\x6c"
+"\x36\x88\x36\xa3\x36\xc3\x36\xe5\x36\xf3\x37\x01\x37\x13\x37\x5c\x37\x7b\x37\x86\x37\x94\x37\xa2\x37\xe9\x38\x2d\x38\x86\x38\xdd"
+"\x39\x1d\x39\x58\x39\x83\x39\xae\x39\xc5\x39\xdb\x39\xf5\x3a\x10\x3a\x28\x3a\x40\x3a\x5d\x3a\x7b\x3a\xe4\x3b\x4a\x3b\xe7\x3c\x41"
+"\x3c\x9f\x3c\xf3\x3d\x57\x3e\x64\x3f\x37\x3f\xa9\x3f\xd3\x40\x1a\x40\x6a\x40\xa3\x41\x06\x41\x96\x41\xf9\x42\x68\x42\xdc\x43\x3e"
+"\x43\x9e\x44\x11\x44\x7e\x44\xc0\x45\x30\x45\xbd\x45\xf9\x46\x63\x46\xde\x47\x35\x47\x99\x48\x04\x48\x93\x48\xac\x48\xf7\x49\x67"
+"\x49\x90\x49\xd0\x4a\x32\x4a\x5a\x4a\xc4\x4b\x29\x4b\x88\x4b\x9d\x4b\xed\x4c\x61\x4c\x8d\x4c\xeb\x4d\x58\x4d\x81\x4d\xde\x4e\x44"
+"\x4e\x95\x4e\xb9\x4e\xd6\x4f\x0e\x4f\x4d\x4f\x69\x4f\x84\x4f\xa0\x4f\xd4\x50\x25\x50\x3d\x50\x56\x50\x89\x50\xcd\x50\xe4\x51\x04"
+"\x51\x23\x51\x36\x51\x6a\x51\x9b\x51\xb3\x51\xd9\x52\x0b\x52\x3d\x52\x78\x52\xb1\x52\xe0\x53\x13\x53\x4c\x53\x82\x53\xce\x54\x66"
+"\x54\xc8\x55\x26\x55\x8b\x56\x00\x56\x52\x56\xbc\x57\x36\x57\xad\x58\x49\x58\xf0\x59\x49\xfc\xc5\x0e\xfc\xc5\x0e\xf7\x1b\xf8\xfd"
+"\xf7\x0c\x15\x2b\xf7\x02\xf8\x36\xc2\x05\xb4\x42\x4a\x9f\x4b\x1b\x7e\x79\x8a\x8a\x7a\x1f\xfb\x9d\x7c\x5d\xb7\x69\xa4\x6d\x97\x19"
+"\x49\xa4\x8a\x8c\x95\x1a\x8e\x8c\x90\x8d\x8f\x1e\x99\xa6\x8d\x93\x9b\x1a\xc4\x54\xbe\x4e\x5d\x66\x67\x5d\x59\xb3\x62\xcb\x7b\x1e"
+"\xee\x79\xc8\x65\xb4\x45\x08\x68\x69\x57\x71\x67\x1b\x7b\x73\x8f\x92\x6f\x1f\x90\x74\x75\x8f\x7a\x1b\x5d\x64\x65\x5d\x52\xc0\x5a"
+"\xc7\xc1\xb1\xaf\xbe\x91\x8a\x91\x8a\x90\x1f\x88\x99\x89\x94\x8e\x1a\x93\x93\x91\x97\x1e\xbc\x8a\x05\x97\xcc\x91\x91\xb8\x1f\xf0"
+"\xfb\x06\x05\xfc\x09\xf8\x71\x15\xb5\xb5\x65\x65\x6b\x75\x74\x70\x5e\x5d\xb1\xb1\xa9\xa5\xa4\xa9\x1f\x73\xfb\xf8\x15\xba\xaf\x6b"
+"\x61\x69\x70\x70\x68\x5f\x62\xb1\xb3\xab\xa7\xa4\xaf\x1f\x0e\xf7\x0e\xf8\xb9\xf7\xef\x15\xf8\x0d\xf7\x25\x05\xab\x68\x76\x94\x67"
+"\x1b\x70\x68\x84\x7c\x64\x1f\xfb\xcc\xfb\x0a\x05\xa2\x59\x3e\xa2\x70\x1b\x6f\x8d\x81\x90\x96\x1a\x8e\x8d\x91\x8e\x92\x1e\x91\x99"
+"\x8f\x9c\x99\x1a\xbe\x5d\xb4\x50\x4e\x60\x63\x51\x4f\xbe\x62\xd5\x1e\xd1\x8d\x05\xc8\xb7\x74\x60\x9e\x1f\x63\x7d\x5b\x70\x50\x1b"
+"\x47\x8c\x05\x40\x57\x5f\x4d\x53\xb5\x65\xc8\xc8\xb7\xb3\xc1\x97\x89\x96\x87\x94\x1f\x81\xa2\x8b\x8b\x90\x1a\x95\x93\x90\x9b\x8d"
+"\x1e\xcc\x94\x92\x8d\xea\xb1\xf7\xc9\xfb\x06\x18\x7d\xb3\xa9\x85\xab\x1b\xb5\xa4\x95\xa8\xa7\x1f\xfd\xa9\xf8\x08\x15\xb5\xab\x6e"
+"\x63\x64\x70\x70\x64\x5f\x69\xaa\xb2\xb1\xa8\xa6\xb4\x1f\x94\xfb\xdd\x15\xb2\xa6\x70\x65\x60\x6e\x6f\x5d\x64\x6f\xa5\xaf\xb2\xae"
+"\xae\xb4\x1f\x0e\xf7\x1b\xf8\xfd\xf8\xcb\x15\x2f\x93\x26\xfb\x06\x05\x91\x5e\x4c\x91\x7d\x1b\x5b\x8a\x05\x7e\x83\x90\x94\x8e\x8d"
+"\x94\x8e\x99\x1f\x8c\x90\x8c\x90\x91\x1a\xbe\x65\xaf\x55\x4f\x56\x5a\x52\x5d\xb1\x65\xba\x9b\xa2\x8f\x90\xa2\x1e\x92\xa7\xa3\x8f"
+"\x9b\x1b\xaf\xbf\x72\x68\xad\x1f\x75\x5d\x44\x53\x56\x7f\x3f\x79\x8b\x8b\x7c\x84\x08\x61\x77\x71\x66\x65\x1a\x5d\xb0\x67\xb9\xc8"
+"\xc2\xbe\xc4\x9b\x88\x94\x7e\xa5\x1e\x89\x90\x8a\x8f\x8e\x1a\x95\x8d\x8d\xcc\xa4\x1e\xa9\x96\xac\xa3\xba\xb9\xf7\x9d\x7c\x18\x8a"
+"\x9c\x9f\x8a\x96\x1b\xcb\xcb\x9e\xb5\xd5\x1f\xfc\x36\xc1\x05\xfb\xe2\xfb\x77\x15\xa6\xa1\x73\x6c\x64\x61\x65\x60\x6d\x72\xa5\xa9"
+"\xb1\xb9\xb1\xb8\x1f\x62\xf7\xfa\x15\xb1\xa6\x72\x67\x62\x67\x6b\x5c\x67\x6f\xa4\xab\xb3\xb2\xb0\xb6\x1f\x0e\xf7\x21\xf7\x4a\xf7"
+"\x7a\x15\x59\x63\x64\x5a\x59\xb2\x63\xbd\xbc\xb3\xb3\xbc\xbc\x63\xb3\x5b\x1f\x91\x72\x15\xab\xa5\x6e\x67\x67\x71\x6f\x6a\x68\x6e"
+"\xa8\xaf\xae\xa8\xa8\xaf\x1f\x84\xf8\x46\x15\x59\x63\x63\x5b\x59\xb2\x63\xbc\xbd\xb2\xb3\xbc\xbb\x64\xb4\x5b\x1f\x8e\x72\x15\xab"
+"\xa5\x6f\x68\x68\x71\x6f\x6a\x69\x6f\xa8\xad\xae\xa8\xa7\xad\x1f\xf7\xb2\xfb\x69\x15\x72\x77\x75\x6d\x6e\x9e\x74\xa4\xa4\xa0\xa4"
+"\xa8\xa7\x77\xa1\x72\x1f\x8d\x78\x15\x98\x96\x7f\x7b\x79\x7f\x7c\x7d\x7c\x81\x98\x9c\x9d\x97\x98\x9a\x1f\xf8\x6d\xf7\x2d\x15\xc0"
+"\x5a\x65\x9d\x53\x1b\x58\x52\x79\x65\x4a\x1f\xfb\x36\x2c\x05\x9f\x74\x7d\x92\x7c\x1b\x87\x85\x8a\x89\x84\x1f\x83\x6b\x7b\x89\x76"
+"\x1b\x7e\x85\x8c\x8f\x81\x1f\xa0\xab\x94\xa3\xa7\x1a\xd4\x49\xc7\x39\x33\x50\x50\x33\x58\x9f\x60\xb0\x70\x1e\xaa\x75\xb4\x80\xd0"
+"\x88\xc7\x88\x94\x89\x9b\x84\x08\x97\x85\x93\x7f\x7e\x1a\x71\x71\x7d\x59\x89\x1e\x2e\x89\x6d\x85\x66\x74\x08\x61\x71\x75\x61\x54"
+"\x1a\x32\xc5\x50\xe3\xe0\xc7\xc3\xd8\xaa\x83\xa3\x76\xac\x1e\x8e\x9c\x93\x8d\x94\x1b\x96\x9d\x88\x88\x9f\x1f\x89\x93\x93\x8a\x91"
+"\x1b\x91\x8f\x8c\x8e\x8f\x1f\xbb\xa9\xf7\x53\xfb\x13\x05\x6f\xb6\xc5\x77\xb2\x1b\xc3\xc2\xa2\xb1\xac\x1f\xfb\xd6\xf7\x60\x05\xfb"
+"\x58\x35\x15\x87\x85\x84\x8a\x84\x1b\x45\x8d\x05\x6b\x69\x7b\x7c\x87\x8c\x86\x8e\x88\x1f\x9e\x74\x91\x7b\x6f\x1a\x46\x5b\x5a\x47"
+"\x43\x5c\xbb\xd5\xdd\xbe\xb9\xe7\x1e\xc4\x06\xd0\xa8\xa0\xbb\x8c\x8b\x8e\x8a\x8d\x1f\xf7\xb9\xf7\x3f\xc2\xab\x8b\x8b\x96\x90\x19"
+"\x9c\xb0\xa9\x94\xa6\x1b\xaf\xa6\x7f\x6d\xae\x1f\xfc\x37\xfb\xa9\x15\xf2\xca\xf7\xc5\xfb\x56\x05\x70\x68\x71\x80\x6b\x1b\x5e\x62"
+"\x9c\xbb\x42\x1f\xfb\xc0\xf7\x75\x15\x7e\x9e\x6d\x97\x64\x8c\x08\x48\x06\x37\x54\xbd\xd8\xd3\xbb\xbe\xcf\xd0\xbe\x5b\x4a\x76\x86"
+"\x77\x82\x7e\x1f\x7c\x74\x8b\x8b\x85\x1a\x7a\xa4\x82\xb9\x99\x96\x8c\x8d\x90\x1e\x95\xad\x8b\x8b\x96\x1b\x98\x92\x87\x7d\x94\x1f"
+"\x0e\xfb\x0c\xf7\x37\xf7\x1e\x15\xf8\x1c\x06\x98\x8c\x8c\x8b\x8c\x8c\x8e\x8c\x8e\xa2\x8c\xaf\x5a\xf7\x21\x7d\xab\x78\x9e\x08\x6d"
+"\xad\x8b\x8b\x99\x1a\x96\x8b\x92\x8d\x97\x1e\xac\x84\x97\x81\x95\x71\x08\x85\xa9\xa6\x88\xbb\x1b\xa6\x94\x8c\x8f\x9f\x1f\x87\xbc"
+"\x82\xa4\x78\x99\x08\xa9\x66\xfb\x1b\xa4\xfb\x0c\x1b\xfb\x0d\xfb\x1a\x72\x6d\x65\x1f\x79\x7d\x82\x72\x86\x5a\x08\x87\xa0\x93\x8a"
+"\xa7\x1b\xba\xa7\x8e\x91\xa9\x1f\x95\xa5\x97\x95\xab\x92\x08\x8d\x7f\x8c\x84\x80\x1a\x7e\x8a\x8a\x81\x80\x1e\x84\x82\x83\x83\x83"
+"\x82\x81\x7f\x8a\x89\x87\x83\x68\x35\x88\x85\x71\x40\x8d\x5c\x8d\x7e\x92\x8a\x08\xf7\x08\xf7\xe1\x15\x93\xcd\x8c\x8b\xa4\x1b\xa5"
+"\x8b\x8b\x83\xcd\x1f\x7a\x62\x05\x8d\x62\x7a\x8c\x7a\x1b\x7b\x79\x8a\x89\x62\x1f\xd9\x6d\x15\xbf\xb6\x5f\x57\x55\x60\x60\x55\x56"
+"\x5f\xb6\xc1\xc1\xb7\xb5\xc2\x1f\xf7\xd7\x92\x15\x86\x75\x7d\x89\x66\x1b\x6c\x7c\x8c\x91\x64\x1f\x70\x92\x97\x87\xde\x1b\xb6\x8e"
+"\x8d\xa8\x95\x1f\xfd\x1f\x16\x6f\x96\x90\x88\xae\x1b\xb3\xac\x8d\x8f\x98\x1f\x98\x8e\x8e\x8f\x91\x9d\x08\x86\x67\x6b\x89\x63\x1b"
+"\x71\x85\x8c\x91\x78\x1f\x0e\x59\xf7\x2d\xf7\x17\x15\x51\xce\x70\xd0\xdb\x1a\xf7\x45\xf7\x28\xf7\x26\xf7\x46\xf7\x48\xf7\x29\xfb"
+"\x26\xfb\x45\xfb\x4a\xfb\x2d\xfb\x25\xfb\x53\x2e\x48\xb3\xc2\x9a\x91\x98\x91\x8c\x8e\x8a\x8a\x8d\x1e\x88\x90\x94\x88\x91\x1b\xa5"
+"\xc3\xd3\xae\x90\x89\x8e\x87\x8f\x1f\x7d\x98\x88\x92\x96\x1a\xa9\xbc\xf4\xa8\xaa\x1e\x9a\x9b\x91\x8e\xa1\x8e\x96\x8d\x8f\x8d\x90"
+"\x92\x08\x9f\xa5\x97\xb3\xb4\x1a\x99\x83\x8f\x6e\x62\x84\x88\x63\x69\x1e\x2f\x23\x41\xfb\x3c\x25\x1a\x82\x8c\x84\x8e\x88\x1e\x92"
+"\x84\x8c\x89\x89\x1a\x89\x89\x89\x89\x88\x1e\x7f\x7b\x86\x7d\x78\x1a\x47\xdc\x58\xf7\x01\xf7\x63\xf7\x37\xf7\x32\xf7\x5c\xf7\x5a"
+"\xfb\x37\xf7\x38\xfb\x5a\xfb\x57\xfb\x38\xfb\x36\xfb\x54\x37\xb1\x2a\xbc\x61\x1e\x85\x92\x94\x88\x93\x1b\x8e\x8f\x8b\x8e\x92\x1f"
+"\xf7\xf3\xf8\x68\x15\x87\x53\x7f\x69\x71\x68\x08\x86\x98\x97\x89\x9a\x1b\x9a\x8c\x8c\x9c\x95\x1f\x9a\xa6\x91\x9f\xa6\x1a\x95\x8a"
+"\x8c\x84\x92\x1e\x7e\x97\x81\x90\x7d\x90\x08\xfb\x2f\xfb\xf9\x15\x7b\x54\x74\x6a\x64\x74\x08\x80\x9b\xa0\x82\x94\x1b\xa2\xb8\xc8"
+"\xa9\x93\x86\x91\x75\x9d\x1f\x0e\x5a\xf8\xfd\xf7\x26\x15\x99\x95\xae\xc2\x90\xa0\xfb\x25\xf7\x09\x18\x58\x6f\x5e\x5f\x76\x1e\xfb"
+"\xe6\x98\x15\x96\x6c\xa3\x62\x9c\x7a\xf7\x3a\xd7\x18\x5d\xa6\x75\xb2\xc4\x1a\xf7\x43\xf7\xb0\x15\x90\x7c\x81\x8c\x76\x1b\x76\x7c"
+"\x89\x87\x7d\x1f\x76\xfb\x4d\x05\x9a\xa4\xa1\x92\xa6\x1b\xa8\xa0\x84\x7c\xa0\x1f\x43\x84\x15\x52\x5e\x5e\x53\x53\xb8\x5e\xc3\xc3"
+"\xb8\xb8\xc3\xc2\x5e\xb9\x54\x1f\x8f\xf7\x97\x15\xfb\x5f\xfb\x37\x26\x0a\xfb\x5e\xf7\x34\xfb\x35\xf7\x5c\xf7\x5b\xf7\x35\xf7\x35"
+"\xf7\x5b\xf7\x58\x25\x0a\x71\x04\xd7\xde\x6a\x56\xc5\x1f\xd4\x49\xb1\x35\x2b\x1a\xfb\x4c\xfb\x2a\xfb\x2a\xfb\x4c\xfb\x4e\xfb\x28"
+"\xf7\x29\xf7\x50\xdb\xaa\xdb\xc2\xc7\x1e\xd5\xce\xe0\xb0\xf1\x1b\x0e\x5b\xae\xf7\xef\x15\xae\x7e\x6a\xfb\x0b\xbe\x92\xd5\xee\x05"
+"\x86\xb9\xde\x84\x91\x1b\xc3\x8a\x8b\x8b\x94\x87\x08\x94\x87\x90\x83\x80\x1a\x81\x8a\x87\x75\x38\x1e\x34\xfb\x59\x05\xb0\x06\x9f"
+"\x8c\x8f\x8d\x9c\xa4\xb2\xc1\x18\xc8\x06\x91\x90\x93\x94\x93\x86\x94\x85\x1f\x6a\x06\xbc\xd0\x05\xc7\x06\x91\x91\x93\x93\x94\x85"
+"\x94\x84\x1f\x6c\x06\xd5\xee\x93\x8c\x8b\x8b\xb6\x8d\x19\xb1\x8c\x97\x8c\xa6\x8e\x08\xbb\x91\xa2\x96\x9d\x1a\x9e\x5f\x97\x3f\x8f"
+"\x1e\x45\x8d\x82\x8c\x41\xef\x05\xaa\x06\x92\x91\x93\x94\x94\x85\x93\x85\x1f\x4f\x06\x5a\xd0\x05\xac\x06\x91\x90\x93\x94\x93\x86"
+"\x93\x85\x1f\x4e\x06\x64\xc2\x7a\xa3\x87\x8e\x77\x8c\x19\x66\x06\xe2\xfb\x59\x05\xa0\x3b\x8d\x83\x81\x1a\x7a\x7f\x82\x71\x8a\x1e"
+"\x62\x8a\x05\x81\x76\x89\x88\x6b\x1f\x77\x89\x77\x89\x77\x8a\x7f\x89\x18\x41\xee\x58\x93\xac\xfb\x0b\x05\x0e\xfb\x29\xf9\x23\xf8"
+"\xc0\x15\xfd\x00\xfc\x37\xf9\x00\x06\xfc\xed\xf8\x0e\x15\xf7\x64\xfb\x36\x05\x85\x07\x85\x07\xfb\x64\xfb\x36\x05\xf8\xda\x74\x15"
+"\xfc\xda\x06\xf7\x64\xf7\x36\x05\x67\x9b\xa8\x78\xb1\x1b\xb1\xa8\x9e\xaf\x9b\x1f\xf7\x64\xf7\x59\x15\xfb\xe4\x07\xfb\x64\xf7\x36"
+"\x05\x91\x07\x91\x07\xf7\x64\xf7\x4c\x15\xfb\x64\xfb\x36\x05\xaf\x7b\x6e\x9e\x65\x1b\x65\x6e\x78\x67\x7b\x1f\xfb\x64\xf7\x36\x05"
+"\x0e\xf7\x0d\xf9\x2a\xf8\x3c\x15\xa0\xb3\x85\x83\xad\x1f\x82\xb2\x93\x89\x9e\x1b\xa2\xaf\x90\x8f\x9c\x1f\x9d\x90\x93\x92\x96\x1a"
+"\x98\x7f\x97\x6e\x9a\x1e\x66\x9e\xfb\x00\xb3\x5b\x97\x08\x96\x5d\xfb\x19\x9a\x58\x1b\x73\x7e\x88\x80\x71\x1f\x5d\x78\x5c\x74\x6c"
+"\x7a\x6e\x7b\x84\x89\x67\x88\x5b\x87\x8a\x8b\x80\x82\x08\x74\x79\x7b\x55\x50\x1a\x5b\x97\x54\x9b\x72\x1e\x8f\x84\x8b\x8b\xba\x82"
+"\xa1\x88\x97\x8a\x9c\x89\x9f\x89\x8d\x8b\x91\x89\x90\x89\x90\x88\x95\x85\x08\x61\xd7\x8d\x8a\xb5\x1b\xad\xcf\x94\x99\xc7\x1f\xb0"
+"\x93\x9c\x9a\xa6\x1a\x93\x8a\x92\x8a\x94\x1e\xaa\x95\x95\x95\xa3\x1a\x9d\x87\x95\x7c\x9b\x1e\xae\x99\x9c\x9c\xa1\x1a\xa0\x83\x95"
+"\x66\xac\x1e\xfc\x8b\xd1\x15\x97\x83\x86\x8f\x82\x1b\x5c\x66\x36\xfb\x00\x21\xa9\x4a\xbb\x96\x93\x8e\x96\x94\x1f\x8a\x88\x89\x8b"
+"\x8a\x1b\x5b\x6f\xc5\xef\xd2\x9c\xcd\xa3\xa4\x1f\x97\x97\x92\x8d\xa1\x8c\x08\x0e\xef\xae\xf8\x8f\x15\xfb\xee\x07\xf5\x7e\x96\xa4"
+"\x05\xde\xbc\x06\xa2\x8a\xa0\x88\x91\x88\x92\x89\x9b\x83\xa4\x7d\x08\x72\xb9\xa2\x86\xc8\x1b\xb5\x06\x95\x06\x78\x98\x9e\x82\xa9"
+"\x1b\xd4\xd1\xb3\xb4\x99\x85\x97\x78\xa1\x1f\x93\x95\x8c\x90\x97\x1a\xa3\x82\x9c\x73\x9a\x1e\x90\x96\x8d\x91\x91\x1a\x97\x86\x94"
+"\x7e\x9a\x1e\xa9\xea\x90\x8f\xa8\x1f\xc8\x91\xa8\x9d\xaa\x1a\xa0\x78\xa0\x6b\x98\x1e\x99\x68\xfb\x02\x94\xfb\x15\x1b\x70\x79\x8a"
+"\x87\x69\x1f\x98\x78\x7b\x90\x76\x1b\x6c\x6d\x80\x6d\x5d\x1f\x71\x61\x76\x82\x72\x1b\x86\x89\x8b\x8c\x84\x1f\xad\x07\x2b\x69\x15"
+"\xca\xfb\xa4\x56\x06\xe1\xf7\x81\x15\xae\x8c\x96\x8f\xa9\x9d\xbf\xac\x8b\x8b\x9a\x93\x08\x97\xa5\xa0\x92\x99\x1b\xa0\xa2\x81\x7c"
+"\x9a\x1f\xd2\x44\x05\x97\x7e\x93\x7d\x81\x1a\x7b\x78\x7d\x76\x75\x7d\x92\xa4\x6e\x1e\x51\xbc\x7f\x7d\xb5\x55\x05\x70\x73\x6c\x7d"
+"\x6a\x1b\x7f\x77\x8e\x90\x75\x1f\x7e\x8e\x83\x7c\xce\x74\x05\xc1\x06\x99\x5d\x94\x81\xae\x85\x8c\x69\x95\x7c\xa4\x86\x08\x7e\x07"
+"\x8a\x75\x82\x8b\x7f\x1b\x56\x62\x94\x9f\x6b\x1f\x84\x90\x83\x90\x83\x90\x7d\x93\x80\x91\x84\x8e\x7d\x8f\x80\x8d\x73\x8c\x08\xf7"
+"\xbf\xf7\x9d\x15\x8e\xb4\x9f\x8c\xa3\x1b\xde\xf3\x83\x83\xa5\x1f\xa5\x83\x98\x7f\x7d\x1a\x82\x85\x82\x82\x87\x1e\x83\x77\x29\x85"
+"\x2b\x1b\x86\x7e\x8b\x8c\x78\x1f\xa3\x62\x15\x98\x82\x8f\x85\x82\x1a\x79\x7e\x7e\x66\x7b\x1e\x73\x58\x59\x79\x7c\x1b\x77\x79\x9b"
+"\x9d\xa0\xa6\xa7\xa0\x8d\x8f\x8a\x89\x90\x1f\x85\x9b\x99\x89\x9a\x1b\xaa\xa5\x96\xa4\xa1\x1f\x8d\x8e\x8b\x8b\x8d\x8d\x08\x9f\x3f"
+"\x15\x96\x97\x7e\x7e\x77\x78\x76\x6f\x80\x1f\x7e\x6b\x61\x80\x76\x1b\x7c\x7e\x96\x99\x99\x90\x8f\xa7\x93\x1f\x90\x8c\x96\x90\x9a"
+"\x92\x08\xb1\xd9\x8b\x8b\x90\x1b\x4c\xfb\x06\x15\x8e\x97\x94\x8d\x8c\x1b\xa3\x96\x9a\x92\x97\x91\x08\x8e\x8f\x8e\x8c\x8c\x1b\x93"
+"\x96\x79\x7f\x74\x4d\x6d\x5b\x73\x79\x97\x9b\x93\x8d\x8d\x9a\x8e\x1f\x0e\xfb\xb6\xf7\xcc\xf8\x55\x15\x7f\xa8\x84\xa0\x7c\xb6\x08"
+"\xf7\x0f\x62\x72\xb4\x69\x1b\x6c\x6e\x6e\x6b\x76\x9d\x49\x9e\x56\x1f\xa9\x3a\x8c\x88\x90\x78\x08\x91\x7c\x7f\x8f\x83\x1b\x6d\x63"
+"\x63\x6e\x7d\x8e\x79\x90\x77\x1f\x67\x6e\x6d\x64\x5f\xa0\x50\xab\x5c\x1f\x56\xb0\xc9\x6e\xdb\x1b\xd9\xde\xb5\xc7\xb7\x1f\xa9\xb5"
+"\x9f\xcf\xc6\x1a\xb3\x85\xae\x7e\xa9\x1e\x84\x9d\x84\x90\x72\x91\x88\x8c\x81\x8e\x81\x8e\x08\xc0\xf7\x2a\x97\xb4\xb1\x1a\xac\x74"
+"\xa6\x70\x81\x80\x87\x83\x82\x1e\x71\x76\x7e\x73\x71\x42\x85\x7c\x79\x5c\x78\x59\x08\xfb\x7e\xfb\x8e\x15\x74\x07\x98\x73\x98\x77"
+"\x95\x82\x08\x7a\x9e\xa6\x7e\x9d\x1b\x94\x9a\x91\x92\x94\x1f\x95\x93\x8f\x93\x9b\x1a\x8f\x8b\x92\x8a\x92\x1e\xa1\x06\x90\x5a\x90"
+"\x80\xab\x6c\x95\x94\x18\x8a\x90\x8a\x90\x8a\x8d\x08\x83\xa9\x86\x9f\x92\x1a\xa0\xa8\xbc\xa8\xa7\x1e\xa4\xa5\x9c\x93\xb1\x92\x08"
+"\xa6\x07\x76\x8b\x8b\x86\x5b\x1f\x81\x8a\x55\x99\x7c\x92\x08\x79\x94\x7b\xa2\x9b\x1a\x92\x8e\x96\x90\x97\x1e\xa7\x82\x8b\x8b\xb0"
+"\x85\xf7\x15\x75\x8b\x8b\x8f\x89\x08\xa8\x7d\x97\x72\x5a\x1a\xfb\x26\x2c\x25\xfb\x1c\x5b\x5b\x98\xa0\x73\x1e\x7e\x96\x69\xc0\x85"
+"\x9b\x08\x74\xd3\x8b\x8b\x90\x1a\x9d\xa5\xa5\x9d\x9b\x8f\x86\x57\xae\x1e\xb0\x54\x8b\x8b\x86\x1a\x81\x79\x7f\x7e\x75\x60\xb6\xac"
+"\x7f\x1e\xf7\x59\xf7\x76\x15\x8e\x7c\x80\x8c\x83\x1b\x85\x80\x89\x89\x7e\x1f\x86\x94\x8b\x8b\x7d\xb2\x08\x61\xf7\x07\x84\xa1\xac"
+"\x1a\x9a\x95\x97\x97\x97\x93\x84\x7a\x94\x1e\x97\x73\xb4\xfb\x04\xa7\x36\x08\xc4\x16\xf7\x71\xd7\x91\x98\xa3\x1b\x96\x95\x7f\x7d"
+"\x76\x65\xfb\x14\x6e\x44\x1f\xfb\x8f\x63\x15\xa0\x87\x93\x85\x94\x7d\x08\xb3\x4d\xaa\x4d\x7c\x1a\x81\x80\x80\x7f\x80\x7a\x96\x9a"
+"\x7d\x1e\x65\xb5\x67\xc7\x9f\x1a\x95\x90\x92\x9c\x98\x1e\x8f\x8e\x8b\x8c\x8f\x8d\x08\xf7\x1d\xfb\x1e\x15\x74\xc2\xa5\x83\x96\x89"
+"\xaa\x87\x19\x0e\x9b\xdd\xf7\x5e\x15\x98\x7a\x53\xfb\x03\x05\x88\x85\x89\x87\x8a\x1a\x89\x8e\x89\x8d\x8d\x8e\x8c\x8d\x90\x1e\xe3"
+"\xab\xbf\xc3\x05\x7b\xc7\xa6\x86\xae\x1b\x9e\xad\x8e\x91\xd4\x1f\xf3\x80\xe7\xa2\x99\x53\x05\xf7\x2a\x06\xa2\xf7\x22\x05\xf2\x07"
+"\x74\xd2\xfb\x2a\x94\x7d\x77\x6d\x8c\x80\x8f\x74\x9a\x19\x2f\xc6\xd5\xdf\x05\x90\x91\x8d\x8f\x92\x1a\xa6\x77\xa4\x75\x83\x82\x88"
+"\x86\x87\x1e\x35\x2b\x4f\xae\x4a\x6e\x65\x6f\x30\x35\x19\x74\x48\x87\x7d\x80\x5d\x08\xf8\xa2\xe1\x15\x96\x57\x8e\x72\x6b\x1a\x72"
+"\x89\x75\x83\x5e\x1e\x79\x4f\x71\x86\x71\x1b\x78\x81\x8c\x95\x50\x1f\x6f\x87\x74\x88\x7d\x88\x08\x86\x73\x78\x88\x80\x1b\x81\x62"
+"\x92\x8d\x85\x1f\x89\x8c\x89\x8d\x8c\x1a\x8c\x8d\x8c\x8d\x8d\x8c\x08\x97\x95\x8f\x91\x96\x1a\x9f\x7a\x9e\x78\x89\x8a\x8a\x8a\x8b"
+"\x8b\x8a\x8c\x8a\x1e\x94\x80\x90\x7c\x7f\x1a\x7c\x85\x81\x83\x1e\x7d\x8c\x05\x77\x06\x7d\x82\x94\x98\x9f\x96\x9d\x9b\x93\x1f\xa7"
+"\x98\x9f\x98\x8d\x8b\xa1\x8c\x19\xf7\x10\x06\xa1\x9e\x8f\x90\x91\x9c\x08\x7a\x62\x76\x84\x77\x1b\x7d\x8c\xba\xc0\x8c\x94\x8c\x93"
+"\x8c\x8f\x19\x8c\x93\x8c\x90\x8e\x1a\x8e\x89\x91\x88\x95\x1e\xc7\xd1\xf7\x0c\x45\x05\xfb\xef\x4e\x15\x71\x49\x85\x7c\x78\x75\x72"
+"\x76\x19\x79\x06\xa6\xc5\x82\xa6\x79\x95\xa6\xe5\x8f\x97\x8c\x8c\xa0\x9e\x19\xd6\xcd\x05\x9f\xa1\xc0\xaa\x96\x1b\x93\x94\x85\x74"
+"\xa9\x1f\xfb\xcd\xfc\x3c\x15\x8a\x88\x88\x8b\x88\x1b\x84\x85\x90\x92\x8e\x8d\x94\x8d\x8e\x1f\x9a\xa5\x05\x9c\x95\x8b\x8b\x90\x1b"
+"\x94\xa1\x6c\x7d\x85\x87\x87\x83\x88\x1f\xa0\xf7\x55\x15\x92\x84\x8d\x86\x7f\x1a\x67\x7c\x71\x77\x88\x86\x8b\x8c\x86\x1e\xf7\xb0"
+"\xf7\x3c\x15\x5e\x6e\x59\x71\x84\x83\x8c\x8d\x82\x1e\xf8\x5b\xf7\x01\x15\x9c\x61\x92\x68\x52\x1a\x5a\x86\x6b\x7f\x5e\x1e\x21\x82"
+"\x05\x9b\xc2\x92\xbb\xbe\x1a\xa7\x89\x99\x81\xd4\x1e\x0e\xd3\xf7\x56\xf8\xbe\x15\x6a\x64\x58\x61\x78\x9a\x7a\x9b\xaa\xb1\xbe\xb6"
+"\x9e\x7e\x9b\x7c\x1f\xd2\xe2\x15\xfb\x29\x72\x3a\xfb\x1c\xb4\xfb\x2e\xf8\x46\xfb\x99\x9b\x82\x93\x88\xa8\x89\x19\xf7\xa9\x06\xa3"
+"\x97\x93\x9b\x91\x89\x8f\x86\x95\x1f\xfb\x23\xf7\x8f\x80\x9f\x86\x90\x7b\x94\x19\x81\x91\x05\xfc\x3f\xf7\x7a\x15\xad\xfb\x0b\x42"
+"\xfb\x0f\xfb\x0d\x71\x6a\xf7\x16\xd0\xf7\x07\x05\xf9\x29\xfc\x33\x15\xa1\x6a\x8b\x8a\x82\x1a\x7f\x7d\x72\x7d\x7f\x1e\x84\x84\x7d"
+"\x87\x7c\x1b\xfb\x49\x06\xe9\xca\xb3\xd0\x93\xf7\x01\x08\xfc\x3b\xf7\xaf\x15\xf8\x1e\xfb\x84\x05\x8e\x79\x8c\x83\x7d\x1a\x7d\x8a"
+"\x81\x88\x77\x1e\xfc\x02\xf7\x6f\x05\x7f\x77\x15\xf8\x05\xfb\x73\x87\x70\x67\x4f\x74\x79\x19\xfc\x05\xf7\x73\x05\x7f\x77\x15\xf8"
+"\x01\xfb\x70\x7b\x78\x6a\x6e\x7e\x85\x19\xfc\x32\xf7\x91\x05\x0e\xe9\xf7\x25\xf8\x3c\x15\x72\x7d\x6f\x59\x58\x98\x6f\xa5\xa4\x99"
+"\xa7\xbd\xbe\x7d\xa7\x72\x1f\x82\xfb\xaf\x15\xf8\x60\x06\x8c\x9e\x8c\x8b\x8e\x1b\x95\x8d\x8b\x8b\x99\x95\xf7\x75\xf7\x31\x18\xa9"
+"\x9f\x8c\x8d\x98\x1a\x97\x8a\x8d\x6d\x9f\x1e\xfb\x75\xf7\x31\x88\x8d\x88\x8d\x87\x8e\x19\x88\x8e\x86\x8c\x85\x8c\x08\x89\x83\x8b"
+"\x8c\x7e\x1f\xfc\x60\x06\x26\xfb\x0b\x05\xfb\x40\x07\xf7\x54\x94\x15\x39\x28\x39\xea\x05\xf7\x36\x07\xdd\xea\xdd\x29\x05\xf8\x38"
+"\xfb\x7b\x15\xa7\xc8\x97\xbb\xb8\x1a\xb7\x7f\xb9\x6f\xc9\x1e\xf7\x32\xfb\x01\x05\x92\x7a\x8d\x81\x7a\x1a\x7a\x89\x81\x84\x7b\x1e"
+"\xfb\x61\xf7\x6d\x15\x97\x79\x97\x6d\x96\x6b\x08\xfc\x14\x06\x49\xdb\x05\xd1\xfb\x85\x15\xf7\x17\xf8\x18\x07\x90\x79\x8d\x7c\x6a"
+"\x1a\x6b\x89\x7c\x86\x79\x1e\x88\x6c\x15\x7a\x60\x87\x80\x81\x75\x08\xfc\x42\x06\xcf\xd7\x05\x0e\xd3\xf7\x2d\xf7\x9c\x15\x7a\x7d"
+"\x7b\x78\x61\xb2\x58\xac\x9b\x97\x9b\x9e\xb6\x66\xbd\x6b\x1f\xf7\x04\xfb\x6a\x15\xf8\x37\xf7\x91\xa6\x9a\x8d\x8d\x98\xa2\x19\xf7"
+"\x22\xf7\x8d\x05\x91\x95\x8d\x90\x90\x1a\x9b\x7f\x93\x73\x1e\xfb\xa9\x06\x70\x89\x81\x88\x7b\x82\xfc\x46\xfb\x97\x18\x62\xfb\x2e"
+"\xdc\xfb\x1a\x05\xf7\x21\x8a\x15\xfb\x10\xa2\x46\xf7\x07\xac\xf7\x15\xf7\x0d\x71\xd4\xfb\x0f\x05\xf8\x3a\xf7\x49\x15\x83\xf7\x00"
+"\x63\xd0\x2d\xc9\x08\xf7\x49\x06\x97\x9b\x88\x87\x90\x1f\x9a\x7f\x9b\x70\x7e\x1a\x81\x8b\x8a\x75\x6b\x1e\xfc\x8c\xfc\x37\x15\xa7"
+"\xf3\xf8\x02\xf7\x6f\x05\x8e\x77\x8c\x81\x7d\x1a\x7d\x8a\x82\x88\x7a\x1e\xfc\x0e\xfb\x07\x15\x4c\xf4\xf8\x05\xf7\x71\xa2\x7a\xaf"
+"\x4f\x8e\x70\x19\xfc\x4f\x2a\x15\xfb\x03\xa0\xf8\x32\xf7\x8f\x98\x85\xab\x6f\x9b\x78\x19\x0e\xf5\xf7\x3b\xf8\x83\x15\x3e\x54\x4b"
+"\x31\x50\xa5\x5a\xb7\x70\x1f\x81\x9c\x95\x89\xa7\x1b\xf7\x33\x06\xb6\x97\xa3\xa2\xad\x1b\xa2\x9e\x7d\x69\xa0\x1f\x4e\xb2\x99\x7f"
+"\xb0\x1b\xb8\xc8\xa6\xce\xf7\x02\x1f\xce\xb4\xb4\xa9\xb6\xb2\x3f\xcb\x81\x92\x61\xa6\x08\xdc\xfb\x16\x4e\xa7\x5d\x1b\x66\x75\x7a"
+"\x60\x74\x1f\x5c\x74\x72\x75\x6e\x1b\x6c\x75\xa4\xbc\x7e\x1f\xf8\x35\xfb\x20\x15\x2b\x06\xba\x7f\x77\xa2\x6c\x1b\x65\x6c\x65\x5c"
+"\x5e\xa8\x66\xb0\xab\xa1\xa3\xbc\x97\x1f\xeb\x42\x06\x64\x58\x25\x5b\x6b\x1b\x70\x77\x99\xae\x76\x1f\xc4\x68\x77\x9a\x65\x1b\x60"
+"\x68\x72\x63\x7c\x1f\xfb\x1e\x06\x5b\x60\xc2\xc8\xcd\xb7\xc0\xc2\x1f\xf7\x16\x06\x5a\x9f\xa9\x73\xb4\x1b\xb0\xa1\x9d\xc2\xac\x1f"
+"\xb6\xa5\x9c\x98\xaa\x1b\xa1\x9b\x85\x72\xbb\x1f\xbb\x71\xa3\x7d\xa3\x7a\x08\x0e\xf7\x1b\xfa\x3e\xf7\xee\x15\x8c\x87\x8a\x8c\x87"
+"\x1b\x88\x8c\x8b\x8b\x84\x8d\x40\x9e\x5f\xaf\x42\xef\x08\xc5\x61\x69\xa2\x61\x1b\x5b\x5b\x62\x53\x7b\x1f\x7f\x5e\x8b\x8b\x86\x7e"
+"\x08\x6e\x80\x7e\x82\x6f\x1b\x73\x7e\x93\xa7\x7b\x1f\xc3\x6b\x8b\x8b\xfb\x37\x1b\x50\x79\x88\x7f\x77\x1f\x6c\x77\x7a\x5e\x4c\x1a"
+"\x4a\xa0\x5a\xae\x7b\x1e\x83\x9e\x99\x8a\xcc\x1b\xf7\x2c\x8b\x8b\xcb\xb3\x1f\xa0\x99\x94\x91\xa2\x1b\xac\x9a\x7c\x5d\x98\x1f\x9b"
+"\x51\x8b\x8b\x93\x7e\x08\x66\xa1\xb0\x75\xb2\x1b\xb6\xac\xa2\xc6\xb6\x1f\xd5\xf3\xb9\xaf\xe4\x9f\x08\xfb\x94\x9b\x15\xd2\x89\x05"
+"\xf2\x85\x93\x8a\x84\x1a\x84\x63\x86\x45\x89\x1e\x43\x89\x7f\x8a\x05\x68\x7d\x76\x78\x6e\x1b\x68\x70\xaa\xb2\xb2\xa7\xab\xad\xa7"
+"\xa1\x78\x68\x99\x1f\x0e\x37\xf9\x65\x23\x0a\x53\x8c\x47\x77\x63\x6e\x3e\x3e\xfb\x23\xfb\x5b\x21\xfb\x47\x08\x74\x7e\x85\x84\x85"
+"\x1b\x85\x84\x94\x9b\x84\x1f\x6e\xd2\x05\x9b\x85\x86\x8f\x7f\x1b\x75\x6b\x7e\x75\x6f\x1f\x7e\x81\x86\x83\x7e\x1a\x61\xad\x25\xb1"
+"\x42\x1e\x7a\x93\x91\x89\xb4\x1b\xbd\x97\x8f\x9f\x96\x1f\xf6\xf7\x5b\xf7\x7b\xf7\xd6\xf7\x29\xf7\x32\x08\x0e\x92\xf9\xbf\xf9\x2f"
+"\x15\x97\x07\xa1\x86\x90\x75\x76\x83\x89\x7d\x7a\x1e\x39\x4a\x5c\x61\x31\x2e\x4f\x4d\x60\x5f\x73\x75\x3e\x42\x18\x6f\x6e\x89\x8a"
+"\x82\x1b\x88\x84\x8e\x8f\x84\x1f\x7f\x92\x87\x94\x88\xa0\x84\xb5\x86\xa9\x8a\x92\x86\xa7\x87\xaa\x8c\x8d\x08\x9e\x88\x90\x7d\x95"
+"\x1e\x90\x83\x82\x8e\x81\x1b\x7c\x75\x88\x85\x7c\x1f\x7c\x86\x83\x84\x6b\x64\x72\x6d\x8b\x8b\x8a\x80\x08\x89\x80\x88\x57\x7d\x1a"
+"\x74\x8d\x70\x8f\x6b\x1e\x93\x4d\x90\x61\x8c\x7a\x8c\x72\x8e\x85\x95\x7f\x9a\x7b\x9e\x7a\x9e\x7e\x08\x73\xad\x98\x86\xa1\x1b\x9e"
+"\x9a\x94\xb1\xb7\x1f\xef\xe1\xf7\x60\xf7\x5b\xcf\xd9\xd6\xe2\xbf\xc4\x9a\x99\x9a\x99\x94\x96\x8e\x90\x08\x0e\x3e\xf9\x6b\xf9\x0d"
+"\x15\x50\xc6\xfb\xb3\xfb\xb4\xfb\xb3\xf7\xb4\x50\x50\xf7\xb4\xfb\xb2\xfb\xb4\xfb\xb4\xc6\x50\xf7\xb3\xf7\xb5\xf7\xb3\xfb\xb5\xc6"
+"\xc6\xfb\xb4\xf7\xb4\x05\x0e\x3d\xf9\x6b\xf8\x9a\x15\xfb\x42\xf7\x42\xfb\x40\xfb\x42\xfb\x40\xf7\x42\xfb\x42\xfb\x42\xf7\x42\xfb"
+"\x3f\xfb\x42\xfb\x41\xf7\x42\xfb\x42\xf7\x40\xf7\x42\xf7\x40\xfb\x42\xf7\x42\xf7\x42\xfb\x42\xf7\x41\x05\x0e\xfb\xa0\xf8\xb4\xf9"
+"\x28\x15\x8b\x89\x89\x89\x8a\x1e\x81\x80\x8a\x8a\x89\x89\x87\x88\x19\x96\x7d\x7b\x94\x86\x1b\x87\x89\x89\x63\x68\x1f\x44\x39\x63"
+"\x5d\x7a\x74\x87\x93\x89\x90\x8a\x8c\x68\xcc\x18\x63\xde\x8b\x8b\x89\x8c\x08\x8f\x88\x88\x8c\x87\x1b\x88\x88\x8a\x89\x89\x1f\x85"
+"\x83\x85\x85\x05\x8c\x87\x88\x8b\x89\x1b\x8a\x88\x8b\x8a\x88\x1f\x90\x83\x87\x8d\x87\x1b\x81\x7a\x76\x7f\x8a\x1f\x8a\x98\x66\xa5"
+"\x40\x1e\x97\x6b\x97\x6c\x96\x6c\x8d\x87\x8e\x81\x91\x7c\xfb\x0d\xfb\x26\x63\x57\x79\x6b\x78\x68\x7e\x75\x87\x85\x08\x81\x7e\x85"
+"\x81\x86\x1a\x8a\x8e\x84\x8f\x81\x1e\x8c\x88\x8c\x88\x8a\x1a\x89\x89\x84\x88\x81\x1e\x8a\x88\x8a\x89\x88\x1a\x83\x8b\x8b\xa1\x69"
+"\x1e\x82\x90\x8d\x8a\x93\x1b\x9e\xa1\x90\x92\x96\x1f\xba\xdc\xdb\xf7\x11\xd2\xf0\xac\x53\x8b\x8b\xcf\x28\x08\x6f\x9e\x90\x86\x93"
+"\x1b\x97\x9f\x9a\x94\x8d\x89\x8e\x89\x8f\x1f\x8a\x8f\x05\x8d\x8e\x8e\x92\x90\x1e\x95\x93\x05\x92\x07\x94\x8f\x8d\x8e\x8f\x92\x87"
+"\x95\x18\x88\x93\x8a\x8c\x7f\xa6\x78\xb2\x79\xb2\x71\xc2\x88\x91\x82\x9d\x7d\xa5\xbe\xd3\xf7\x00\xf7\x1f\xa6\xa8\x08\x94\x94\x8d"
+"\x8f\x8e\x1a\x8d\x88\x91\x87\x8f\x1e\x82\x95\x8b\x8c\x87\x91\x08\x92\x87\x8a\x8c\x8a\x1b\x0e\xfb\x36\xf8\xf2\xf9\x1a\x15\x88\x8a"
+"\x7d\x98\x8e\x1a\x8d\x8b\x8c\x8c\x8d\x1e\x8e\x8e\x8b\x8d\x8c\x1a\x90\x8a\x6c\xa7\x86\x1b\x83\xfb\x1d\xfb\x1f\x2a\x33\x1f\x5d\xcb"
+"\x75\xac\x56\xe1\x08\x94\x83\x87\x8e\x83\x1b\x7e\x82\x81\x79\x89\x1f\x83\x8a\x85\x84\x86\x1b\x89\x87\x8d\x8f\x88\x1f\x88\x8e\x86"
+"\x90\x84\x90\x77\x78\x88\x88\x7d\x75\x90\x68\xcb\xfb\x23\xbb\x37\x88\x88\x88\x87\x89\x88\x70\x6c\x70\x6b\x6f\x6c\x70\x6b\x74\x6f"
+"\x71\x68\x8e\x80\x8b\x8b\x90\x80\x08\x92\x7e\x8b\x8b\x88\x1a\x86\x88\x84\x87\x85\x1e\x88\x87\x89\x88\x89\x1a\x84\xa9\x62\x93\x87"
+"\x1e\x91\x98\x92\x8e\x8e\x1b\x8e\x8e\x88\x88\x8a\x8b\x89\x8a\x88\x1f\x8a\x8a\x8a\x88\x87\x1a\x9e\x76\x05\x98\x06\xb9\xcc\x9f\xa6"
+"\x93\x95\xd0\xe5\x18\x95\x99\x9a\x78\x8d\x88\xa7\x61\x19\xa9\x5f\x96\x7d\xa6\x6f\x08\x8a\x8e\x8e\x8a\x8c\x1b\x93\x98\x95\x9c\x99"
+"\x1f\x8f\x8f\x8d\x8d\x8d\x1b\x8c\x8e\x89\x89\x8e\x1f\x80\x9a\x8d\x8a\x8f\x1b\x8e\xa5\xa0\x8e\x8c\x1f\x88\x96\x05\x8c\x07\x8c\x8d"
+"\x8c\x99\x97\x1e\xa6\x9f\x90\x93\x90\xa6\x7d\x97\x4e\xd6\x42\xeb\xc9\xd9\xdb\xe3\xd8\xd9\x08\x8a\x8d\x8a\x8c\x8d\x1a\x8c\x8d\x8d"
+"\x8d\x8e\x1e\x93\x95\x8b\x8b\x8d\x93\x88\x8f\x86\x93\x82\x98\x08\x89\x8e\x89\x8e\x8a\x1a\x0e\x3f\xf8\x40\xf9\x04\x15\x2f\xfb\x7a"
+"\xfb\x7b\x2f\xf7\x7b\xfb\x7b\xe7\xf7\x7b\xf7\x7a\xe7\xfb\x7a\x06\xd0\xf7\xc0\x15\xfb\x7c\xfb\x7b\xfb\x7a\xfb\x7c\xf7\x7a\xfb\x7a"
+"\xf7\x7c\xf7\x7a\xf7\x7b\xf7\x7c\xfb\x7b\x06\x68\xf7\x58\x15\xfb\x7b\xf7\x7b\xfb\x35\xfb\x7b\xfb\x7b\xfb\x35\xf7\x7b\xfb\x7b\xf7"
+"\x35\xf7\x7b\xf7\x7b\x07\x0e\x3c\xf8\x84\x20\x0a\xfb\x7b\xfb\x7a\xfb\x7a\xfb\x7b\xf7\x7a\xfb\x7a\xf7\x7b\xf7\x7a\xf7\x7a\xf7\x7b"
+"\xfb\x7a\x06\x0e\x3b\xf7\xd9\x16\xf7\x02\xf7\xb6\xfb\x02\x06\xf7\x02\x04\xf7\x02\xf7\xb6\xfb\x02\x06\xfb\xb6\xfb\xb6\x15\xfb\x02"
+"\xf7\xb6\xf7\x02\x07\xf7\x02\x16\xfb\x02\xf7\xb6\xf7\x02\x07\x0e\x36\xf7\xa5\x16\xf7\x65\xf7\x82\xfb\x65\x06\xf7\x65\x04\xf7\x65"
+"\xf7\x82\xfb\x65\x06\xfb\x82\xfb\x82\x15\xfb\x65\xf7\x82\xf7\x65\x07\xf7\x65\x16\xfb\x65\xf7\x82\xf7\x65\x07\x0e\xfb\xed\xf7\x5e"
+"\x20\x0a\xfb\x49\xfb\x3b\x2f\xf7\x3b\xfc\x36\xe6\xf8\x36\xf7\x3b\xe7\xfb\x3b\xf7\x49\x07\x0e\xfb\xb3\xf7\x49\x20\x0a\xfb\x28\xfb"
+"\x26\xfb\x09\x07\xe5\x40\x05\xc3\xfb\xac\x06\xe1\x44\x05\xf6\xf7\xf3\xf7\x23\xf7\x0f\x06\x3d\xd0\x05\x4a\xd8\x06\x3f\xd2\x05\x2e"
+"\x73\x15\xe8\xfb\x27\xf7\x21\x2d\xfb\x21\xfb\xf7\x2e\xf7\xf7\xfb\x26\xe9\xf7\x26\x06\x0e\xfb\xc2\xf7\x75\xf9\x15\x15\xfb\x2c\xfb"
+"\x20\x36\xf7\x20\xfb\xf6\xe6\xf7\xf6\xf7\x1d\xe0\xfb\x1d\xf7\x2c\x07\xfb\x20\xbc\x15\xfb\x2b\xfb\x21\xfb\x4d\xf7\x21\xfb\xf6\xf7"
+"\x53\xf7\xf6\xf7\x1c\xf7\x4d\xfb\x1c\xf7\x2b\x07\xfb\x3a\x73\x15\xf7\x21\xfb\x2c\xf7\x1c\xfb\x1b\xfb\x1c\xfb\xf6\xfb\x21\xf7\xf6"
+"\xfb\x21\xf7\x1b\xf7\x21\x06\x0e\xfb\x9a\xf4\xf8\xe7\x15\x75\x07\xef\x89\xd0\x32\x85\xfb\x09\x08\x79\x06\x51\x63\x98\xa9\x67\x1f"
+"\x62\xad\x7b\xad\xc0\x1a\x73\xfc\x03\xa3\x06\x8c\xea\xe1\xd3\xf7\x00\x87\x08\x99\x7d\x06\xfb\x02\x8f\x45\x39\x2a\x1b\x74\xf8\x02"
+"\xa2\x07\x2b\x8d\x48\xda\xf7\x03\x1a\x99\x07\xa2\x8c\x05\xf7\x02\xd8\x47\x2b\x1f\xa3\xf8\x03\x73\x06\x88\x28\x38\x47\xfb\x02\x8f"
+"\x7d\x8a\x18\x84\xf7\x0a\xd2\xe6\xee\x8a\x08\xa1\x07\x0e\xfb\x27\xf7\xee\xf9\x52\x15\x21\xfb\x49\x05\xfb\x61\x06\xf1\xfb\x43\x25"
+"\xfb\x45\x05\xf7\x61\x06\xf5\xfb\x4b\xf4\xf7\x4b\x05\xf7\x62\x06\x25\xf7\x45\xf1\xf7\x43\x05\xfb\x62\x06\xfb\x51\x6a\x15\xf7\x3c"
+"\x06\xdd\xfb\x22\x39\xfb\x24\x05\xfb\x3c\x06\x39\xf7\x24\x05\xf7\x3a\xf7\xb0\x15\xc9\xfb\x01\x05\xfb\x11\x06\xf7\x52\x6a\x15\xf7"
+"\x0d\x06\x4f\x23\x05\x3e\x04\xc6\x22\x05\xfb\x0b\x06\x4c\x6a\x15\x4a\xfb\x00\x50\xf7\x00\x05\x48\xac\x15\xfb\x0f\x06\xc8\xf4\x05"
+"\xd8\x04\x50\xf3\x05\xf7\x0b\x06\x0e\x56\xf8\x2e\xf7\xfd\x15\x8a\xa4\x96\xbd\x9e\xca\x08\xaa\xe8\x8b\x8b\xa5\x1a\xbc\x6a\xb1\x61"
+"\x60\x69\x63\x5b\x7a\x8e\x79\x90\x7b\x1e\xb0\xfb\x07\x97\x59\x8d\x63\x4b\x93\x78\x8f\x65\x98\x08\xaf\xfb\x00\x8b\x8b\x70\x1b\x5a"
+"\x66\x6b\x60\x60\xb1\x6a\xbb\x9f\xa0\x8e\x91\x9e\x1f\xf0\xac\xba\x97\xbb\x8f\x8c\x7b\x85\x69\x79\x48\x08\x67\xfb\x01\x8b\x8b\x6e"
+"\x1a\x59\xac\x66\xb5\xb5\xad\xb1\xbc\x9d\x87\xa0\x84\xa0\x1e\x67\xf7\x05\x84\xa8\x86\xc0\xab\x89\xbb\x81\xb9\x7c\x08\x6a\xef\x8b"
+"\x8b\xa7\x1b\xbd\xb0\xa9\xb6\xb7\x65\xac\x58\x78\x79\x89\x85\x7b\x1f\xfb\x07\x66\x85\x89\x3d\x80\x08\x0e\xf8\x16\xf8\x2c\x15\x6c"
+"\x86\x77\x77\x86\x6c\x47\x8c\x7b\x90\x71\xad\x08\xae\x6e\x71\x9a\x69\x1b\x57\x5f\x5f\x55\x56\xb7\x5f\xbf\xae\xa4\x99\xaf\xa8\x1f"
+"\xa4\xac\x9b\x90\xd0\x8c\x90\x6d\x9f\x77\xa9\x86\x08\x48\x85\x7a\x6a\x71\x1e\x67\x6e\x7d\x71\x69\x1a\x57\xb8\x5f\xc0\xc0\xb7\xb7"
+"\xbf\xad\x7d\xa5\x67\xa8\x1e\x6a\xa4\x85\x9b\xd0\x1a\xa9\x90\x9f\x9f\x90\xa9\xd0\x8a\x9b\x86\xa4\x6a\x08\x67\xa8\xa4\x7d\xae\x1b"
+"\xbf\xb7\xb7\xc0\xc1\x5f\xb7\x57\x68\x72\x7c\x68\x6e\x1f\x6c\x73\x78\x83\x54\x1b\x7f\x8a\x86\xaa\x77\x9f\x6d\x90\x19\xd0\x91\x9b"
+"\xac\xa4\x1e\xae\xa8\x9a\xa5\xad\x1a\xbf\x5f\xb7\x56\x56\x5e\x5f\x57\x69\x9a\x71\xae\x6e\x1e\xaa\x73\x93\x78\x54\x1a\x0e\xf8\x0f"
+"\xf7\xd7\x15\x6c\x79\x6b\x67\x69\x1e\x5e\x61\x7e\x72\x60\x1a\x44\xc6\x50\xd2\xd3\xc5\xc6\xd2\xad\x7c\xae\x72\xa3\x1e\x55\xbd\x76"
+"\xab\xb2\x1a\xaf\xa2\x7e\x5e\xb6\x1f\x62\xb2\xa8\x7d\xb5\x1b\xd3\xc4\xc4\xd3\xd3\x51\xc6\x44\x67\x66\x7a\x70\x73\x1f\x59\x5e\x6c"
+"\x77\x64\x1b\x8f\xb7\x95\x9e\xb7\xb4\x08\xb2\xaf\x9b\xab\xb4\x1a\xd1\x50\xc6\x44\x44\x50\x50\x45\x62\x9a\x6e\xb4\x63\x1e\xb3\x63"
+"\x9c\x6d\x8c\x6a\x08\x5f\x81\x91\xc8\x50\x1f\xaa\x6c\x6b\x9a\x65\x1b\x44\x50\x50\x45\x43\xc8\x4f\xd2\xb0\xa8\x98\xa8\xa8\x1f\xc4"
+"\xc6\x97\x92\xbb\x92\x08\x0e\x5a\xf8\x31\xf7\xe4\x15\xf7\x20\x06\x7c\x78\x87\x7e\x79\x1a\x68\xa7\x6f\xae\xaf\xa2\xa2\xb8\x92\x1e"
+"\x86\x97\x93\x89\x97\x1b\xaf\xa4\xa4\xb1\xaf\x73\xa5\x69\x80\x83\x89\x84\x7b\x1f\xbc\x80\x76\xa1\x69\x1b\x67\x70\x70\x68\x77\x8f"
+"\x7f\x9a\x7a\x1f\xfb\x20\xf7\x1f\x06\x7d\xa1\x96\x87\x9b\x1b\xae\xa6\xa8\xaf\xae\x70\xa6\x63\x90\x1f\x90\x96\x8d\x92\x94\x1a\xb0"
+"\x6c\xa9\x66\x69\x6d\x71\x6d\x81\x8d\x84\x91\x76\x1e\x5b\x85\x73\x76\x66\x1a\x65\xa6\x6e\xb0\x9d\x98\x90\x97\x9c\x1e\xfb\x1f\xfb"
+"\x1d\x07\x98\x9e\x90\x96\x9b\x1a\xad\x6c\xa9\x68\x6f\x72\x79\x72\x83\x1e\x89\x85\x8a\x85\x8a\x7c\x08\x90\x7d\x84\x8c\x81\x1b\x68"
+"\x6e\x70\x6a\x69\xa9\x6e\xae\x95\x92\x8d\x91\x98\x1f\x5f\x91\xa5\x71\xaf\x1b\xad\xa7\xa8\xad\x9e\x86\x98\x7f\x9f\x1f\xf7\x1d\xfb"
+"\x23\x06\x98\x7a\x7e\x8f\x79\x1b\x67\x71\x71\x66\x65\xa6\x71\xb6\x88\x1f\x86\x7e\x89\x85\x81\x1a\x67\xa9\x6e\xaf\xaf\xaa\xa9\xae"
+"\x95\x89\x91\x84\x98\x1e\xb6\x90\xa4\xa4\xb1\x1a\xaf\x70\xa5\x68\x79\x7d\x87\x7f\x79\x1e\x0e\x5d\xf8\x1f\x23\x0a\x87\x89\x87\x84"
+"\x89\x1f\x81\x55\x4f\x2b\x4c\x4a\x52\x52\x4b\x66\x35\x72\x08\x82\x89\x88\x88\x87\x1a\x87\x8e\x88\x93\x89\x1e\xbf\x81\xf6\x4a\xc2"
+"\x56\xc8\x51\xbc\x35\x98\x42\x08\x84\x8c\x8d\x88\x8f\x1b\x8f\x8d\x8e\x92\x8d\x1f\x97\xc6\xbe\xe0\xc9\xcd\xcd\xd0\xd6\xb7\xde\x9c"
+"\x08\x94\x8d\x8e\x8e\x90\x1a\x8f\x88\x8d\x83\x8d\x1e\xfb\x2c\xb0\xfb\x28\xf7\x20\x62\xf7\x23\x08\xa7\x85\x8b\x8d\x85\x1b\x0e\x5e"
+"\xf8\x14\x23\x0a\x5a\xfb\x3f\xfb\x1c\xfb\x1b\xfb\x38\x62\x08\x78\x07\xf7\x45\x59\xf7\x1d\xfb\x1e\xae\xfb\x39\x08\x9c\x06\xb6\xf7"
+"\x3f\xf7\x2c\xf7\x2a\xf7\x37\xab\x08\x9e\x07\xfb\x3f\xb1\xfb\x25\xf7\x21\x61\xf7\x3c\x08\x82\x61\x15\xa3\xfb\x13\x9b\x59\xae\x4c"
+"\xd2\x65\xb6\x7e\xf7\x1d\x74\x75\x86\x77\x87\x85\x89\x66\x84\x6c\x84\x7b\x87\x60\x80\x6a\x7e\x60\x73\x69\x52\x7a\x54\x73\xfb\x13"
+"\x70\xf7\x16\x79\xc1\x6c\xc2\x08\x48\xaf\x6e\x94\xfb\x2b\xab\xf7\x1d\xa5\xba\x99\xca\xad\xaf\xcc\x97\xb1\xa7\xf7\x1d\x08\x0e\x74"
+"\xf8\x2d\xf9\x57\x15\x34\xfb\xa2\x05\xfb\xb3\x06\xf7\x7e\xfb\x42\x31\xfb\xa8\xf7\x7a\xf7\x3e\xf7\x7b\xfb\x3e\x32\xf7\xa8\xf7\x7b"
+"\xf7\x42\x05\xfb\xb4\x06\x0e\x7b\xf8\x32\xf9\x63\x15\x24\xfb\x86\xfb\xa8\x75\xf7\x65\xfb\x4c\x4f\xfb\xa1\xf7\x7a\xf7\x2b\xf7\x80"
+"\xfb\x2b\x45\xf7\xa1\xf7\x63\xf7\x4c\xfb\xa7\xa1\x05\x29\xf7\x66\x15\xc8\xfb\x9a\xf7\xaa\x9d\xfb\x7c\xfb\x2e\xf5\xfb\x95\xfb\x69"
+"\xf7\x4c\xfb\x65\xfb\x4c\xef\xf7\x95\xfb\x7f\xf7\x2e\xf7\xab\x79\x05\x0e\x59\xf8\x24\xf9\x56\x36\x0a\x85\x71\x15\xd7\xfb\x74\x05"
+"\xf7\x88\x06\xfb\x5a\xfb\x26\xd3\xfb\x7e\xfb\x56\xf7\x26\xfb\x61\xfb\x26\xda\xf7\x7e\xfb\x53\xf7\x26\x05\xf7\x86\x06\x0e\x8d\xf8"
+"\x31\xf9\x56\x15\x38\xfb\xb8\xfb\xbb\x97\xf7\x8e\xfb\x30\x23\xfb\xb0\xf7\x7c\xf7\x53\xf7\x86\xfb\x53\xfb\x05\xf7\xb0\xf7\x9d\xf7"
+"\x30\xfb\xcc\x7f\x05\x3b\x90\x15\xc4\xbb\x5a\x51\x50\x5c\x5c\x50\x4f\x5c\xba\xc7\xc6\xbb\xba\xc7\x1f\x0e\x7b\xf8\x33\xf9\x56\x15"
+"\x25\xfb\x88\xfb\xaa\x76\xf7\x67\xfb\x4c\x4b\xfb\xa1\xf7\x7d\xf7\x2b\xf7\x7e\xfb\x2b\x46\xf7\xa1\xf7\x65\xf7\x4c\xfb\xa7\xa0\x05"
+"\x28\xf7\x66\x15\xc8\xfb\x99\x05\x97\x73\x7a\x8f\x75\x1b\x74\x7b\x87\x7f\x75\x1f\xf8\x28\x9e\x15\xfb\x7c\xfb\x2e\x05\x90\x9a\x8c"
+"\x95\x97\x1a\xb0\x7b\xaa\x68\xa9\x1e\xf7\x29\xfc\x1c\x15\xfb\x69\xf7\x48\xbe\x91\xad\xa2\xa3\xb9\x19\xfb\xd3\xfb\x97\x15\xf2\xf7"
+"\x97\xa6\x58\xab\x75\xbb\x89\x19\xfb\xef\xf7\x7b\x15\xf7\xae\x78\x05\x6a\x6e\x7a\x6c\x6e\x1a\x7f\x8e\x7b\x8f\x78\x1e\x0e\x85\xf8"
+"\x35\xf8\xbb\x15\x48\xfb\x45\x05\xfb\x2f\x06\xf7\x08\x2e\x5e\xfb\x37\xf7\x2b\xed\xf7\x28\x29\x54\xf7\x38\xf7\x0e\xe7\x05\xfb\x26"
+"\x06\x46\xf7\xe0\x15\x22\xfb\xaa\x05\xfb\xa9\x06\xf7\x69\xfb\x3b\x3e\xfb\xa7\xf7\x8a\xf7\x37\xf7\x8d\xfb\x37\x31\xf7\xa7\xf7\x72"
+"\xf7\x3b\x05\xfb\xa6\x06\x20\xf7\x60\x15\xe4\xfb\x78\x05\xf7\x6b\x06\xfb\x44\xfb\x19\xd1\xfb\x70\xfb\x5a\xf7\x17\xfb\x5b\xfb\x17"
+"\xc8\xf7\x70\xfb\x3c\xf7\x19\x05\xf7\x6e\x06\x0e\x74\xf8\x2e\xf8\x7d\x15\x5e\xfb\x09\x05\xfb\x08\x06\xe3\x44\x66\xfb\x16\xf7\x02"
+"\xd8\xf5\x3e\x69\xf7\x16\xe8\xd2\x05\xfb\x0c\x06\xcc\xe5\x15\x24\xf7\x82\x05\x8f\x8a\x89\x8c\x87\x1b\x88\x89\x8a\x87\x89\x1f\x25"
+"\xfb\x82\xfb\x96\x70\x05\x86\x88\x88\x87\x8a\x8d\x88\x8d\x89\x1f\xf7\x57\xfb\x30\x4e\xfb\x9d\x05\x87\x07\x88\x8e\x87\x8d\x8c\x1e"
+"\x8d\x8d\x8c\x8c\x8d\x1f\xf7\x76\xf7\x23\xf7\x73\xfb\x27\x05\x8a\x8d\x8d\x8a\x8d\x1b\x8d\x8e\x8e\x8f\x1f\x8e\x07\x50\xf7\xa1\xf7"
+"\x55\xf7\x30\x05\x8e\x8e\x8c\x8d\x8d\x1a\x8f\x89\x8d\x85\x1e\xfc\x00\xf7\x34\x15\xd5\xfb\x4b\xf7\x52\x7f\xfb\x27\xfb\x05\xbd\xfb"
+"\x61\xfb\x3b\xf7\x08\xfb\x3f\xfb\x08\xc0\xf7\x61\xfb\x25\xf7\x05\xf7\x53\x97\x05\x0e\x83\xf8\x38\xf9\x57\x15\x2a\xfb\xa6\x05\xfb"
+"\xb4\x06\xf7\x7c\xfb\x39\x2b\xfb\xad\xf7\x8d\xf7\x44\xf7\x94\xfb\x44\x26\xf7\xad\xf7\x71\xf7\x39\x05\xfb\xad\x06\xfb\x45\x78\x15"
+"\xdd\xf7\x85\x05\xfb\xe7\x07\xd9\xed\x15\xf7\x87\x06\xfb\xd5\x29\x05\xf7\x18\x5b\x15\xe5\xfb\x80\xfb\x72\xf7\xb0\x05\xfb\x17\x04"
+"\xfb\x69\xfb\x2d\xf7\x69\xf7\xaf\x05\xfb\x15\x5c\x15\xfb\x60\xf7\x26\xf7\xe1\x28\x05\x0e\xdf\xf8\x2b\xf9\x56\x15\x33\xfb\x9c\x05"
+"\xfb\xb0\x06\xf7\x76\xfb\x40\x35\xfb\x98\xf7\x17\x74\xf7\x46\xf7\x16\xf7\x26\x20\x05\xf7\x19\x06\x31\xf7\x98\xf7\x6b\xf7\x2d\x4c"
+"\x9e\x05\xfb\x69\x06\x39\xf7\x89\x05\xfb\x06\x79\x15\xdd\xfb\x8a\x05\xf7\x8b\x06\xfb\x5f\xfb\x21\xd6\xfb\x83\xfb\x5d\xf7\x2c\xfb"
+"\x66\xfb\x2c\xdc\xf7\x83\xfb\x52\xf7\x21\x05\xf7\x82\x06\x0e\x2c\xf8\x54\x20\x0a\xfb\x2a\xfb\x73\x06\xfb\x4d\xf7\x0a\x3d\xfb\x19"
+"\xf7\x59\xfb\x01\xfb\x59\xfb\x02\xd9\xfb\x18\xf7\x4d\xf7\x09\x05\xfb\x6f\xf7\x2a\xf7\x6f\x07\xf7\x4c\xfb\x09\xd9\xf7\x18\xfb\x59"
+"\xf7\x02\xf7\x59\xf7\x01\x3d\xf7\x19\xfb\x4c\xfb\x0a\x05\x0e\xfb\x08\xf8\x34\x20\x0a\xfb\x01\xfb\x87\xf7\x01\x06\xfb\x01\xfc\x54"
+"\x15\xf7\x01\xf7\x87\xfb\x01\x06\xf8\x11\xf7\x78\x15\x54\xe9\xfb\x66\xfb\x0d\xc1\x2c\x05\xfc\x4e\xfb\x15\x15\xc2\x2c\xf7\x66\xf7"
+"\x0e\x55\xea\x05\xfb\x30\xf7\x73\x15\x54\x2d\xf7\x67\xfb\x0e\xc1\xea\x05\xf7\xe1\xfb\xd3\x15\xc2\xea\xfb\x67\xf7\x0e\x55\x2c\x05"
+"\x0e\x31\xf8\x21\x20\x0a\x5a\x06\x99\xfb\xd4\xfb\x6c\xf7\x7a\x70\x6c\xf7\x79\xfb\x68\xfb\xcd\x98\x05\x60\xf7\xcd\x07\xfb\x79\xfb"
+"\x66\xb0\x6b\xf7\x62\xf7\x79\x7d\xfb\xcf\x05\xbc\x06\x7f\xf7\xcf\xf7\x6b\xfb\x79\xaa\xab\xfb\x7e\xf7\x66\x05\xf7\xd1\xb6\x06\xfb"
+"\xd1\x7e\xf7\x7e\xf7\x68\x6c\xaa\xfb\x6b\xfb\x7a\x05\x0e\x5a\xf7\xfa\xf8\x39\x15\xfb\x6b\xf7\x47\x05\x8c\x89\x89\x8d\x89\x1b\x88"
+"\x88\x87\x88\x89\x8b\x8a\x8c\x8a\x1f\xf7\x48\xfb\x6b\xfb\xa3\x6f\x05\x86\x8a\x89\x89\x87\x1a\x87\x8d\x89\x8e\x8a\x1e\xf7\xa5\x76"
+"\xfb\x45\xfb\x67\x05\x89\x88\x8a\x89\x89\x1a\x88\x8f\x87\x8e\x8d\x8c\x8c\x8c\x8c\x1e\xf7\x6b\xf7\x46\xa7\xfb\xa8\x05\x86\x8e\x88"
+"\x8f\x8e\x8f\x8d\x8e\x1e\xa1\xf7\xab\xf7\x65\xfb\x46\x91\x88\x05\x8e\x8e\x8f\x8e\x8d\x8b\x8c\x8a\x8c\x1f\xfb\x41\xf7\x6b\xf7\xac"
+"\xa5\x05\x8f\x8c\x8e\x8e\x8f\x1a\x8f\x89\x8e\x88\x1e\xfb\xae\xa1\xf7\x48\xf7\x6e\x05\x8d\x8d\x8c\x8e\x8d\x1a\x8e\x87\x8e\x87\x8a"
+"\x89\x8b\x8a\x1e\xfb\x6f\xfb\x4e\x6e\xf7\xaa\x05\x8f\x88\x8e\x87\x88\x88\x89\x89\x1e\x0e\x5c\xf8\x29\x23\x0a\x80\x06\x51\xfb\x71"
+"\xfb\x50\xf7\x0d\x83\x84\xf7\x0b\xfb\x5f\xfb\x74\x58\x05\x81\x07\xf7\x74\x56\xfb\x0b\xfb\x51\x93\x83\xf7\x5c\xf7\x0a\xb9\xfb\x6c"
+"\x05\x96\x06\xc3\xf7\x75\xf7\x50\xfb\x0b\x94\x93\xfb\x09\xf7\x57\xf7\x6d\xbc\x05\x97\x07\xfb\x71\xc1\xf7\x11\xf7\x54\x84\x93\xfb"
+"\x5f\xfb\x0f\x05\x26\x78\x15\xbc\xf7\x5e\x05\xfb\xc9\x07\xc0\xf4\x15\xf7\x45\xf7\x04\xfb\x70\xfb\x6f\x05\xf7\x06\xaf\x15\xf7\x57"
+"\x5d\x05\xfb\xc4\x06\xf1\x55\x15\xf7\x03\xfb\x42\xfb\x6b\xf7\x69\x05\xac\xfb\x03\x15\x5d\xfb\x5d\x05\xf7\xc9\x07\x57\xfb\x00\x15"
+"\xfb\x49\xfb\x05\xf7\x73\xf7\x74\x05\xfb\x06\x64\x15\xfb\x65\xb9\xf7\xcd\x8e\x05\x26\xbe\x15\xfb\x01\xf7\x46\xf7\x6b\xfb\x6d\x05"
+"\x0e\xfb\x24\xf8\x66\xf7\xed\x15\xf7\x54\xf7\x41\x05\x8d\x8d\x8c\x8c\x8d\x1a\x8d\x89\x8d\x88\x1e\x88\x06\xfb\x8a\x3b\x55\xf7\x91"
+"\x05\x8f\x8a\x8a\x8d\x88\x1b\x88\x8a\x89\x87\x8a\x1f\x55\xfb\x91\xfb\x8a\xdb\x05\x88\x06\x88\x89\x89\x89\x89\x8c\x8a\x8d\x89\x1f"
+"\xf7\x54\xfb\x41\xfb\x54\xfb\x42\x05\x89\x8a\x8a\x89\x8a\x1a\x88\x8d\x89\x8e\x1e\x8b\x8d\x8b\x8c\x8c\x1e\xf7\x8a\xdb\xc1\xfb\x92"
+"\x05\x88\x8c\x8d\x89\x8d\x1b\x8e\x8c\x8d\x8e\x8c\x1f\xc1\xf7\x92\xf7\x8a\x3b\x05\x8c\x8a\x8d\x8b\x8b\x1a\x8e\x8d\x8d\x8e\x8c\x8a"
+"\x8d\x89\x8c\x1f\x0e\x4c\xf8\x7e\xf8\x5c\x15\xb6\xf7\x7a\x05\x8c\x8d\x8b\x8c\x8b\x1a\x8e\x87\x8e\x87\x88\x88\x8a\x88\x89\x1e\xfb"
+"\x18\xfb\x53\xfb\x1d\xf7\x56\x05\x8d\x8a\x88\x8c\x89\x1b\x87\x89\x88\x86\x8c\x1f\xb6\xfb\x7d\xfb\x7e\xb7\x05\x88\x06\x88\x88\x88"
+"\x88\x88\x8c\x89\x8e\x89\x1f\xf7\x58\xfb\x21\xfb\x5a\xfb\x19\x05\x87\x88\x8a\x8a\x88\x1a\x88\x8e\x88\x8f\x8c\x1e\x8e\x06\xf7\x80"
+"\xb2\x60\xfb\x83\x05\x87\x8a\x8d\x87\x8f\x1b\x8d\x8d\x8c\x8d\x8d\x1f\xf7\x1d\xf7\x58\xf7\x1c\xfb\x57\x05\x88\x8d\x8e\x8a\x8d\x1b"
+"\x8d\x8d\x8d\x8f\x8c\x1f\x8c\x8b\x8d\x8a\x8c\x1e\x60\xf7\x81\xf7\x86\x5b\x05\x8d\x8c\x8a\x8b\x1f\x8e\x8e\x8e\x8e\x8e\x89\x8d\x89"
+"\x8d\x1f\xfb\x5f\xf7\x22\xf7\x5f\xf7\x22\x05\x8e\x8d\x8c\x8d\x8d\x1a\x8f\x89\x8d\x87\x1e\x88\x06\x0e\x44\xf8\xa7\xf9\x4e\x15\xfb"
+"\x28\xfb\x3c\xfb\x25\xf7\x3c\x99\xfb\x6d\xfb\x6d\x9b\xf7\x3c\xfb\x27\xfb\x3c\xfb\x26\xf7\x6d\x9a\x7d\xfb\x76\xf7\x25\xf7\x3d\xf7"
+"\x28\xfb\x3d\x7d\xf7\x76\xf7\x6d\x7c\xfb\x3b\xf7\x26\xf7\x3b\xf7\x27\xfb\x6d\x7b\x05\x0e\x5c\xf8\xdb\xf9\x34\x15\xfb\x20\xfb\x17"
+"\x59\xf7\x47\x5e\xfb\x47\xfb\x17\xf7\x17\xb8\xfb\x43\xfb\x44\xb7\xf7\x17\xfb\x16\xfb\x4a\x59\xf7\x4a\x55\xfb\x17\xfb\x17\xf7\x44"
+"\xb9\x5e\xfb\x43\xf7\x17\xf7\x15\xb8\xfb\x45\xbd\xf7\x45\xf7\x20\xfb\x15\x5a\xf7\x43\xf7\x42\x5d\xfb\x11\xf7\x17\xf7\x42\xc1\xfb"
+"\x42\xbd\xf7\x11\xf7\x16\xfb\x42\x5f\x05\x0e\x3b\xf8\x00\xf9\x49\x15\xfb\xa1\x07\x2a\xf7\x8e\x67\x7d\xf5\xfb\x8c\xfb\x4f\xf7\x55"
+"\x70\x70\xf7\x57\xfb\x51\xfb\x8e\xf6\x7d\x68\xf7\x92\x28\x05\xfb\xa5\x6a\xf7\xa5\x06\xfb\x92\x2a\x99\x67\xf7\x8e\xf7\x02\xfb\x57"
+"\xfb\x53\xa6\x70\xf7\x4f\xf7\x59\x21\xfb\x8f\xaf\x7d\xec\xf7\x93\x05\xfb\xa7\xac\xf7\xa7\x07\xeb\xfb\x93\xae\x99\x20\xf7\x8f\xf7"
+"\x51\xfb\x59\xa6\xa6\xfb\x55\xf7\x53\xf7\x8b\xfb\x02\x9a\xaf\xfb\x8f\xec\x05\xf7\xa2\xac\xfb\xa2\x06\xf7\x8f\xee\x7c\xae\xfb\x8b"
+"\x20\xf7\x55\xf7\x51\x70\xa6\xfb\x51\xfb\x55\xf6\xf7\x8c\x68\x99\x2b\xfb\x8e\x05\xf7\xa1\x07\x0e\xfb\x18\xf7\x9c\xf7\xbb\x15\x37"
+"\x84\x5a\x80\x59\x74\x08\x69\x7c\x7f\x7c\x72\x1a\x6b\xa7\x6d\xa9\x98\x97\x90\x99\x9f\x1e\xb9\xad\xa7\xaa\xbd\xd2\x08\xf7\x49\xf5"
+"\x15\xe0\x92\xb8\x95\xc0\xa3\x08\xad\x99\x97\x9b\xa4\x1a\xab\x70\xa9\x6d\x65\x46\x4b\x2d\x4a\x1e\xfb\x49\x8e\x15\x5a\xd1\x6e\xab"
+"\x5d\xac\x08\x9a\x77\x7f\x90\x7e\x1b\x6d\x6f\x6d\x6b\x72\x97\x7c\xad\x7c\x1f\xbe\x74\xbc\x80\xde\x84\x08\xf7\x47\x24\x15\x2d\xcb"
+"\xd1\x4b\xb1\x1b\xa9\xa6\xa9\xab\xa4\x7f\x9a\x69\x9a\x1f\x57\xa3\x5d\x95\x36\x92\x08\x32\xf7\x1c\x15\x5d\x64\x65\x5e\x5c\xb0\x64"
+"\xba\xba\xb1\xb1\xba\xb9\x65\xb1\x5d\x1f\x8c\xa1\x15\xb2\xe0\x9c\xc4\xbf\x1a\xad\x74\xa2\x68\x69\x74\x74\x6a\x56\x9c\x51\xb4\x34"
+"\x1e\xfb\x63\x04\x62\x34\x7a\x51\x56\x1a\x69\xa2\x75\xae\xad\xa2\xa2\xad\xbe\x7a\xc6\x64\xdf\x1e\x0e\xfb\x17\xf7\xa1\xf7\x9e\x15"
+"\x8e\x92\x87\x83\x97\x1f\x92\x85\x92\x87\x91\x89\x08\x9b\x86\x8e\x88\x7c\x1a\x7d\x87\x79\x80\x6b\x1e\x7b\x5a\x85\x71\x74\x1a\x64"
+"\xa6\x6b\xab\xaf\xa5\xa9\xb5\xa5\x85\xa7\x7b\xb6\x1e\x82\xa4\x86\xa2\x99\x1a\x9b\x8e\x90\x9a\x8f\x1e\x92\x8d\x94\x90\x94\x93\x08"
+"\x90\x92\x91\x8f\x8f\x1b\x96\xa4\x76\x6f\xa4\x1f\x4d\xc1\xa5\x79\xaf\x1b\xaa\xa5\xa4\xa8\xa4\x7d\xa3\x75\x98\x1f\x75\x98\x73\x93"
+"\x57\x95\x08\x59\x94\x72\x97\x9b\x1a\x8c\x8b\x8f\x8c\x8f\x1e\x8c\x8f\x8b\x90\x91\x1a\x91\x8b\x90\x8a\x8e\x1e\x8a\x90\x8b\x8f\x8c"
+"\x1a\x9b\xa3\x97\xbe\x94\x1e\xbf\x95\xa3\x93\xa1\x98\x08\xa1\x98\x99\xa3\xa3\x1a\xa9\x71\xa4\x6c\x67\x71\x79\x4d\x55\x1e\x6e\x72"
+"\x72\x77\x80\x1b\x87\x85\x8f\x90\x84\x1f\x82\x92\x82\x91\x84\x8d\x08\x7c\x8f\x88\x90\x9b\x1a\x99\x90\xa2\x94\xa4\x1e\x9b\xb6\x91"
+"\xa7\xa5\x1a\xb5\x71\xa9\x68\x6a\x70\x6b\x64\x74\x90\x72\x9c\x59\x1e\x95\x6c\x8f\x78\x7e\x1a\x7c\x88\x87\x7b\x86\x1e\x84\x89\x82"
+"\x85\x82\x84\x08\x86\x84\x85\x87\x88\x1b\x80\x74\x9f\xa8\x70\x1f\xca\x53\x73\x9c\x67\x1b\x6d\x70\x71\x6e\x73\x9a\x73\xa1\x7e\x1f"
+"\xa0\x7e\xa1\x84\xc2\x80\x08\xbc\x82\xa5\x7e\x7e\x1a\x89\x8a\x87\x8a\x85\x1e\x8a\x88\x8b\x86\x85\x1a\x85\x8b\x86\x8c\x87\x1e\x8c"
+"\x86\x8c\x87\x89\x1a\x7e\x70\x7e\x5b\x81\x1e\x55\x81\x74\x84\x76\x7e\x08\x75\x7d\x7c\x74\x73\x1a\x6d\xa6\x72\xaa\xae\xa4\x9c\xca"
+"\xc3\x1e\xa5\xa9\xa2\x9d\x96\x8c\x08\xe0\xf7\x2d\x15\xb4\xab\x6a\x61\x63\x6a\x6a\x63\x63\x6a\xac\xb4\xb4\xac\xac\xb3\x1f\x0e\xfb"
+"\x31\xf7\xd1\xf7\xec\x15\x62\x73\x75\x86\xfb\x02\x7c\x62\x86\x6f\x81\x7d\x7c\x08\x7b\x7a\x81\x73\x76\x1a\x82\x8c\x7e\x8e\x7c\x1e"
+"\x72\xa9\x9c\x83\xa7\x1b\xac\xa2\x9a\xb7\xac\x1f\xcc\xdf\xa0\xa2\xb5\xa2\x08\x5c\x82\x6c\x63\x2a\x1e\x7f\x6f\x85\x73\x78\x1a\x7a"
+"\x94\x76\x9a\x7b\x1e\x97\x7e\x98\x84\xa7\x81\xa2\x93\x97\x91\x96\x94\x08\x9d\x9b\x98\xa4\x9f\x1a\x9e\x85\xa3\x80\xa7\x1e\x61\xed"
+"\x83\xa9\xba\x1a\xb6\x72\x9d\x79\xce\x34\x08\x5f\xac\xa2\x7c\xac\x1b\xa7\x9c\x93\xa4\xa9\x1f\x8d\x9a\x8d\x97\x95\x1a\x9e\x83\x9f"
+"\x7e\x9c\x1e\x7c\x9e\x71\x96\x5c\x91\x21\x99\x6f\x92\x61\xa3\xb3\xa3\xab\x93\xf3\x99\xb4\x90\xa7\x95\x99\x9a\x08\x9b\x9c\x95\xa3"
+"\xa0\x1a\x94\x89\x98\x89\x9a\x1e\xa4\x6d\x7a\x93\x6f\x1b\x6b\x73\x7b\x60\x6a\x1f\x4a\x36\x76\x75\x61\x73\x08\xbb\x93\xa8\xb5\xee"
+"\x1e\x96\xa7\x91\xa3\x9e\x1a\x9c\x82\xa0\x7c\x9b\x1e\x7f\x98\x7e\x92\x6f\x95\x74\x83\x7f\x84\x81\x83\x08\x78\x7a\x7e\x72\x78\x1a"
+"\x78\x91\x73\x97\x6f\x1e\xb3\x2a\x94\x6c\x5b\x1a\x61\xa3\x76\xa1\x4a\xe0\x08\xb6\x6a\x74\x9b\x6a\x1b\x70\x79\x83\x72\x6d\x1f\x88"
+"\x7c\x8a\x7e\x82\x1a\x78\x92\x77\x99\x7a\x1e\x9a\x77\xa5\x81\xba\x85\xf4\x7d\xa9\x83\xb4\x73\x08\x0e\xfb\x1e\xf7\xdc\xf8\x1a\x15"
+"\x28\xf7\x11\x05\xaa\x72\x65\x9f\x69\x1b\x74\x6f\x81\x74\x5f\x1f\x8a\x77\x8a\x7a\x7c\x1a\x46\xaf\x65\xd4\x83\x1e\xf7\x36\x78\xfb"
+"\x36\x79\x05\x42\x82\x67\x65\x47\x1a\x7c\x8c\x7a\x8c\x77\x1e\x75\xb5\xa9\x80\x9d\x1b\xab\xbb\xa3\xa6\xa1\x1f\xee\xf7\x11\x4a\xfb"
+"\x23\x05\x7e\x6e\x87\x7d\x76\x1a\x5d\xa9\x6c\xd5\x69\x1e\xd6\xad\xa8\xaa\xbb\x1a\xa0\x88\x96\x7e\xa9\x1e\x4a\xf7\x23\xee\xfb\x11"
+"\x05\x6f\xa2\xb9\x74\xae\x1b\x9b\xa9\x96\xa1\xb5\x1f\x8c\x9f\x8c\x9b\x9a\x1a\xd0\x67\xb1\x42\x94\x1e\xfb\x36\x9d\xf7\x36\x9e\x05"
+"\xd4\x93\xaf\xb1\xd0\x1a\x9a\x8a\x9c\x8a\x9f\x1e\xa2\x5f\x70\x95\x74\x1b\x69\x64\x77\x6c\x72\x1f\x28\xfb\x11\xcc\xf7\x23\x05\x95"
+"\xa2\x91\xa3\x9f\x1a\xb6\x6d\xaa\x41\xad\x1e\x42\x69\x6c\x6c\x60\x1a\x78\x92\x73\x95\x73\x1e\xe3\xfb\x37\x15\x97\x95\x81\x7e\x7f"
+"\x81\x81\x7e\x7f\x81\x95\x98\x97\x95\x95\x98\x1f\x93\x9f\x15\x7a\x06\x55\xf7\x2d\x05\x85\x9b\x89\x9b\x9b\x1a\xbb\xa0\xa7\xbc\x9d"
+"\x1e\xbd\x79\xa0\x6f\x5b\x1a\x7b\x88\x7b\x86\x7b\x1e\x29\xfb\x76\x15\x21\xfb\x0f\x05\x6f\x73\x6f\x7b\x71\x1b\x71\x79\x92\xa0\x6f"
+"\x1f\x8a\x96\x8a\x96\x92\x1a\xbd\xae\xb2\xc0\x93\x1e\xf7\x35\xa6\x05\xdb\x7d\x15\x94\x99\xf7\x35\x70\x05\xc0\x83\xae\x64\x58\x1a"
+"\x84\x8a\x80\x8a\x81\x1e\x76\x6f\x79\x84\x71\x1b\x72\x6d\x9c\xa6\x74\x1f\x0e\x7e\xf8\x26\xf7\x2f\x15\x90\x90\x90\x91\x91\x90\x86"
+"\x86\x8a\x8b\x88\x8a\x89\x1e\x89\x85\x8a\x85\x85\x1a\x77\x94\x69\x96\x76\x1e\x5c\xa2\xb5\x70\xbb\x1b\xd8\xd5\xd0\xd4\xc1\x68\xbb"
+"\x4f\xa8\x1f\x7f\x90\x84\x8d\x81\x8c\x08\x83\x86\x8e\x92\x91\x90\x91\x91\x8d\x8d\x8a\x88\x8f\x1f\x82\x9a\xa1\x86\xab\x1b\xdb\xc3"
+"\xc0\xd7\xdf\x4f\xce\x42\x62\x64\x78\x66\x67\x1f\x82\x82\x87\x84\x88\x82\x08\x84\x88\x89\x89\x85\x1b\x85\x86\x90\x91\x8f\x8c\x8d"
+"\x90\x8f\x1f\xa2\x9c\x9f\xbe\xb4\x1a\xd6\x51\xc1\x39\x39\x51\x55\x40\x63\x9f\x57\xa2\x7a\x1e\x90\x87\x8c\x89\x87\x1a\x85\x86\x86"
+"\x85\x85\x89\x8d\x92\x88\x1e\x88\x94\x86\x92\x83\x94\x08\xb0\x67\x64\x9e\x62\x1b\x42\x4f\x48\x37\x3f\xc3\x56\xdb\xab\xa1\x90\x94"
+"\x9a\x1f\x8e\x8f\x8d\x8c\x8d\x1b\x91\x90\x85\x85\x84\x86\x88\x83\x1f\x81\x8a\x83\x89\x80\x86\x08\x4f\x6e\x68\x5b\x55\x1a\x42\xd5"
+"\x46\xd8\xb8\xb4\xa4\xb4\xa2\x1e\x98\xa1\x96\xb2\xa1\x1a\x91\x8a\x91\x89\x91\x1e\x97\xf7\xbb\x15\xc9\xc0\x56\x4b\x4b\x56\x56\x4b"
+"\x4a\x57\xc0\xcc\xcc\xc0\xbe\xcd\x1f\x0e\x73\xf7\xcf\xf8\x53\x15\xc9\x48\x67\x9e\x5b\x1b\x44\x51\x51\x45\x3a\xc8\x56\xe9\x9d\x9b"
+"\x8c\x90\xad\x1f\x5b\x70\x75\x7b\x77\x77\x08\x71\x6f\x7d\x6a\x69\x1a\x43\xc5\x51\xd3\xb8\xb3\xa2\xb2\xa5\x1e\x9c\xa7\x94\xa5\x97"
+"\xca\x98\x4f\x93\x71\x9b\x70\x08\x61\xa4\xb5\x73\xb9\x1b\xd3\xc5\xc5\xd3\xad\x7d\xac\x71\xa7\x1f\x77\x9f\x75\x9a\x5b\xa7\x08\x86"
+"\xad\x9b\x8a\x9d\x1b\xe9\xc8\xc0\xdc\xd1\x51\xc5\x44\x5b\x67\x78\x4d\x48\x1f\xa7\xc9\x94\xa9\xad\x1a\xd5\x52\xc5\x42\x43\x52\x51"
+"\x41\x69\x94\x6d\xa7\x4d\x1e\xd0\x90\x15\x6a\x7e\x05\x6c\xb8\x83\xa3\xb3\x1a\xcb\xb3\xb9\xc2\xc3\xb3\x5d\x4b\x63\x82\x73\x6d\x5e"
+"\x1e\x6a\x98\x7d\xea\x05\x93\x8a\x87\x90\x86\x1b\x86\x88\x86\x83\x8a\x1f\xf4\xfb\x1c\x15\x9c\xa0\x93\x94\x96\x94\x08\xa3\xa8\xb0"
+"\x99\xad\x1b\xbf\xb6\x62\x59\x4f\x52\x5e\x3f\x79\x7e\x8d\x94\x6b\x1f\x8d\xae\xe1\xb6\x05\x92\x8e\x8e\x8f\x8e\x1a\x91\x87\x8d\x85"
+"\x1e\x85\x06\x2d\x7b\x05\x88\xfb\x12\x15\xae\x7f\x96\x85\x9c\x7d\x08\xaf\x6f\xa1\x63\x67\x1a\x58\x63\x62\x57\x65\x68\xa3\xb5\x73"
+"\x1e\x7a\xa8\x86\x9f\x8a\xba\xad\x93\x18\xce\x47\x05\x87\x8f\x8f\x89\x8e\x1b\x8f\x8f\x8e\x8f\x8e\x89\x8e\x89\x8f\x1f\x5f\xe0\x05"
+"\xfb\x6b\xf7\x30\x15\x2d\x9b\x05\x85\x06\x85\x88\x89\x85\x88\x8e\x87\x91\x88\x1f\xe1\x60\x8d\x68\x05\x82\x6b\x7e\x89\x79\x1b\x3f"
+"\x52\xb8\xc7\xbd\xb6\xb4\xbf\xab\xae\x7f\x75\xa8\x1f\x98\x81\x93\x82\x9e\x73\x08\x8c\xfb\x45\x15\x5d\x2f\x05\x89\x87\x8a\x88\x88"
+"\x1a\x87\x8e\x88\x8f\x8e\x8f\x8d\x8f\x8f\x1e\xce\xcf\xad\x83\x8a\x60\x87\x79\x7e\x70\x19\x5d\x74\x65\x6f\x62\x1b\x58\x62\xb4\xbe"
+"\xaf\xa1\xb3\xaf\xa7\x1f\x9c\x99\x96\x90\xae\x98\x08\x0e\x59\xf9\x22\xf7\x7d\x15\xac\x93\x9e\x94\x98\x97\x08\xa1\x9e\x98\xaa\xac"
+"\x1a\xa8\x82\xa6\x79\x9e\x1e\x7c\x9d\x78\x94\x64\x95\x08\x9b\xa7\x95\xa5\x9d\x1a\x9f\x79\xac\x77\x9e\x1e\x9f\x77\x72\x96\x74\x1b"
+"\x7a\x78\x84\x79\x6a\x1f\x81\xab\x83\x9d\x7e\x98\x08\xa0\x76\x6d\x98\x6e\x1b\x72\x73\x82\x7a\x76\x1f\x78\x7b\x82\x7a\x7f\x65\x08"
+"\x9d\x6a\x78\x92\x7a\x1b\x74\x72\x7f\x78\x77\x1f\x77\x78\x79\x6a\x77\x1a\x79\x94\x71\x9c\x6f\x1e\x6a\x83\x78\x82\x7e\x7f\x08\x75"
+"\x78\x7e\x6c\x6a\x1a\x6e\x95\x70\x9c\x78\x1e\x9a\x79\x9e\x82\xb2\x81\x08\x7b\x6f\x82\x71\x7a\x1a\x77\x9c\x69\x9f\x78\x1e\x78\x9f"
+"\xa4\x80\xa2\x1b\x9c\x9e\x92\x9c\xac\x1f\x95\x6b\x93\x79\x98\x7e\x08\x76\xa0\xa9\x7e\xa7\x1b\xa5\xa3\x94\x9c\xa0\x1f\x9e\x9b\x95"
+"\x9c\x96\xb1\x08\x7a\xac\x9e\x84\x9c\x1b\xa2\xa5\x96\x9e\x9e\x1f\x9f\x9e\x9d\xad\x9f\x1a\x9c\x81\xa5\x7b\xa7\x1e\xfb\x96\xf7\x5e"
+"\x15\xbc\xb3\x62\x5a\x59\x63\x63\x59\x59\x62\xb3\xbd\xbd\xb3\xb3\xbf\x1f\xa4\xfb\x63\x15\x96\x8d\xb4\x21\x05\x8e\x82\x8d\x82\x81"
+"\x1a\x5e\x65\x66\x5e\x5d\x65\xb0\xb8\x96\x8d\x94\x8e\x93\x1e\xb4\xf5\x96\x89\x72\xfb\x01\x05\x8a\x86\x8b\x86\x87\x1a\x6b\xa2\x72"
+"\xa8\xa9\xa2\xa4\xab\x90\x8b\x8f\x8a\x90\x1e\xfb\x08\xf7\x11\x15\x95\x84\x5d\x24\x05\x6e\x7e\x6e\x79\x6b\x1b\x5d\x65\xb1\xb9\xab"
+"\x9d\xa7\xa8\x98\x1f\xf3\xb9\x91\x82\x2c\x4f\x05\x7a\x80\x80\x78\x77\x1a\x6f\xa1\x75\xa7\x9f\x9f\x96\x9c\x95\x1e\x93\xf7\x3e\x15"
+"\x8d\x7f\x21\x63\x05\x87\x82\x81\x8a\x82\x1b\x5e\x66\xb0\xb9\xb9\xb0\xb0\xb8\x94\x95\x8a\x87\x94\x1f\xf5\x63\x89\x7f\xfb\x02\xa4"
+"\x05\x8c\x87\x87\x8b\x85\x1b\x6c\x71\x74\x6e\x6e\xa5\x73\xab\x90\x8f\x8c\x8c\x8f\x1f\xf7\x11\xf7\x07\x15\x85\x82\x23\xb9\x05\x6e"
+"\x98\x79\xa7\xac\x1a\xb9\xb1\xb1\xb9\xab\xa7\x79\x6d\x99\x1e\xb9\x24\x81\x84\x50\xea\x05\x9d\x7f\x78\x96\x77\x1b\x6f\x75\x75\x6e"
+"\x78\x96\x77\x9c\x80\x1f\xf7\x3e\x84\x15\x80\x89\x62\xf5\x05\x88\x93\x89\x95\x95\x1a\xb8\xb1\xb0\xb9\xb9\xb0\x66\x5e\x81\x89\x82"
+"\x88\x82\x1e\x62\x21\x80\x8d\xa4\xf7\x01\x05\x8c\x90\x8b\x8f\x90\x1a\xab\x74\xa4\x6d\x6e\x74\x72\x6b\x87\x8b\x86\x8c\x86\x1e\xf7"
+"\x08\xfb\x11\x15\x81\x92\xb9\xf2\x05\xa9\x99\xa7\x9d\xab\x1b\xb9\xb1\x65\x5d\x6a\x79\x6f\x6e\x7e\x1f\x23\x5d\x85\x94\xea\xc7\x05"
+"\x9c\x96\x96\x9f\x9f\x1a\xa7\x75\xa1\x6f\x77\x78\x80\x79\x80\x1e\x83\xfb\x3e\x15\x89\x97\xf5\xb3\x05\x8f\x94\x95\x8c\x95\x1b\xb8"
+"\xaf\x66\x5d\x5d\x67\x66\x5d\x82\x81\x8c\x8f\x82\x1f\x21\xb3\x8d\x97\xf7\x02\x72\x05\x8a\x8f\x8f\x8a\x91\x1b\xab\xa4\xa3\xa8\xa8"
+"\x71\xa2\x6c\x85\x87\x8b\x8a\x87\x1f\xfb\x11\xfb\x07\x15\x91\x94\xf3\x5d\x05\xa8\x7e\x9d\x6f\x6a\x1a\x5d\x65\x66\x5d\x6b\x6e\x9d"
+"\xa8\x7e\x1e\x5d\xf2\x95\x92\xc7\x2c\x05\x7a\x95\x9f\x80\x9f\x1b\xa7\xa1\xa1\xa7\x9f\x81\x9e\x79\x96\x1f\x0e\x59\xf8\x23\xf9\x54"
+"\x15\xfb\x5f\xfb\x35\xfb\x33\xfb\x5d\xfb\x59\xf7\x36\xfb\x35\xf7\x5a\xf7\x5a\xf7\x35\xf7\x35\xf7\x5a\x27\x0a\xfb\x56\x1f\x86\x82"
+"\x15\xd0\xfb\x38\x05\x94\x73\x78\x8e\x71\x1b\x72\x78\x88\x82\x73\x1f\xcf\xfc\xab\x15\x47\xf7\x38\x05\x81\xa3\x9e\x88\xa5\x1b\xa4"
+"\x9e\x8e\x95\xa3\x1f\xf7\x47\xf8\x44\x15\x47\xfb\x38\x7a\xb3\x63\xb3\x63\x9c\x19\xfb\xde\xfc\x3f\x15\xcf\xf7\x39\x9c\x62\xb3\x63"
+"\xb3\x7a\x19\xf8\x44\xf7\x48\x15\xfb\x38\x46\x05\x94\xa3\x8e\x9d\xa6\x1a\xa6\x88\x9d\x82\xa3\x1e\xfc\xab\x46\x15\xf7\x38\xd0\x05"
+"\x82\x74\x88\x79\x6f\x1a\x70\x8e\x79\x94\x73\x1e\x4d\xf7\xd0\x15\xf7\x39\x48\x63\x7a\x63\x63\x7a\x63\x19\xf8\x3f\xfb\xde\x15\xfb"
+"\x39\xce\xb3\x9c\xb3\xb3\x9c\xb4\x19\xfb\x46\xf7\x92\x15\xe8\xd8\x3c\x2d\x2d\x3f\x3e\x2d\x2c\x3d\xd8\xea\xec\xd7\xd6\xec\x1f\x0e"
+"\xfb\x18\xf7\xe6\xf8\x15\x15\xf7\x20\x21\x4d\xc3\x58\x1b\x79\x72\x7d\x6e\x6a\x1f\x85\x74\x88\x74\x7a\x1a\x47\xc4\x74\xf7\x7b\x71"
+"\x1e\xfb\x68\x71\x41\x6b\x4a\x1a\x7d\x8d\x76\x90\x76\x1e\x69\xb0\xa3\x7c\xa2\x1b\xbb\xbe\xbc\xf7\x2d\xf7\x04\x1f\x56\xfb\x10\x77"
+"\x49\x53\x1a\x61\xa3\x74\xcb\x76\x1e\xce\x9d\xa9\xa5\xb3\x1a\xbb\x75\xcf\x51\xf7\x18\x1e\xfb\x1f\xf3\xcb\x52\xbd\x1b\x9d\xa4\x99"
+"\xa8\xad\x1f\x90\xa2\x8e\xa2\x9c\x1a\xce\x50\xa3\xfb\x79\xa4\x1e\xf7\x68\xa6\xd5\xab\xcc\x1a\x99\x89\xa0\x87\xa0\x1e\xad\x66\x72"
+"\x9a\x75\x1b\x5b\x57\x59\xfb\x2c\xfb\x03\x1f\xbe\xf7\x0c\xa0\xd1\xc2\x1a\xb6\x73\xa2\x4b\xa0\x1e\x48\x78\x6d\x71\x64\x1a\x5b\xa2"
+"\x44\xc5\xfb\x15\x1e\x9b\x90\x15\x53\xf7\x10\x7a\xc2\xc1\x1a\xba\x9d\x9c\xc2\x92\x1e\xa7\xfb\xd4\x15\xc0\xd3\xa3\xa8\xa7\xa8\x08"
+"\xb2\xb1\xb0\xa1\xa7\x1b\x9d\x9a\x80\x6f\xa1\x1f\xfb\x9b\xfb\x4b\x15\xf7\x00\x7e\xb6\x83\xb2\x7e\x08\xc2\x78\xa9\x72\x70\x1a\x7e"
+"\x87\x7b\x83\x78\x1e\xfb\xb8\xf7\x1d\x15\xc3\xfb\x10\x9c\x54\x55\x1a\x5c\x79\x79\x54\x84\x1e\x70\xf7\xd5\x15\x54\x41\x74\x6f\x70"
+"\x6f\x08\x64\x64\x66\x75\x6f\x1b\x79\x7c\x96\xa6\x75\x1f\xf7\x9c\xf7\x4c\x15\xfb\x03\x98\x61\x93\x65\x98\x08\x54\x9d\x6d\xa5\xa6"
+"\x1a\x98\x8f\x9b\x93\x9d\x1e\x0e\xfb\x2c\xf8\x0e\xf7\xec\x15\xf7\x1f\xdc\xf7\x03\x54\x9e\xa5\x2b\xbb\xef\xc3\x78\xab\x29\x50\x92"
+"\xf7\x00\x6a\x87\x83\xfb\x0f\xfb\x1f\x3a\x05\xf7\x36\x07\xf1\xcf\x7e\xa9\x32\x50\x8d\xf7\x06\x05\x65\x06\x8d\xfb\x06\x31\xc6\x7e"
+"\x6d\xf2\x47\x05\xfb\x36\x07\xfb\x20\xdc\x83\xf7\x0f\x6b\x8f\x91\xfb\x00\x29\xc6\x78\x6b\xef\x53\x2b\x5b\x9e\x71\xf7\x03\xc2\xf7"
+"\x1f\x3a\xfb\x1f\x3a\xfb\x03\xc2\x78\x71\xeb\x5b\x27\x53\x9e\x6b\xed\xc5\x85\x20\xab\x8f\x93\xf7\x0f\xf7\x20\xdc\x05\xfb\x36\x07"
+"\x24\x47\x98\x6d\xe5\xc6\x89\xfb\x06\x05\xb1\x06\x89\xf7\x06\xe4\x50\x98\xa9\x25\xcf\x05\xf7\x36\x07\xf7\x1f\x3a\x93\xfb\x0f\xac"
+"\x87\x84\xf6\xed\x51\x9e\xab\x27\xc3\xeb\xbb\x78\xa5\xfb\x03\x54\x05\x0e\xfb\x23\xf7\x57\xf8\xf7\x15\xfb\x2c\x07\xfb\x12\xdf\x05"
+"\x8c\x89\x8a\x8b\x8a\x1b\x89\x88\x88\x88\x8a\x1f\x84\x77\x7d\x7a\x05\x89\x89\x8a\x89\x89\x1a\x89\x8c\x8a\x8e\x8a\x1e\xf7\x1b\x47"
+"\xfb\x18\x3e\xf7\x18\x3f\xfb\x1b\x47\x05\x88\x8a\x8a\x8a\x8a\x1a\x89\x8c\x87\x8d\x8a\x1e\x99\x7a\x92\x77\x05\x88\x8c\x8e\x88\x8d"
+"\x1b\x8c\x8c\x8b\x8c\x8d\x1f\xf7\x12\xdf\x05\xfb\x2c\x07\xf7\x18\xd6\x82\xfb\x2b\x05\x87\x8d\x89\x92\x1e\xa0\x8f\xa0\x87\x05\x92"
+"\x8d\x8d\x8f\x1f\x81\xf7\x2b\xf7\x19\x40\x05\xf7\x2c\x07\xf7\x12\x37\x05\x8a\x8d\x8c\x8b\x8c\x1b\x8d\x8e\x8e\x8e\x8c\x1f\x92\x9f"
+"\x99\x9c\x05\x8c\x8c\x8c\x8e\x8d\x1a\x8d\x8a\x8d\x89\x1e\xfb\x1b\xcf\xf7\x17\xd7\xfb\x17\xd8\xf7\x1b\xcf\x05\x8e\x8c\x8c\x8c\x8c"
+"\x1a\x8d\x8a\x8f\x89\x8c\x1e\x7d\x9c\x84\x9f\x05\x8e\x8a\x88\x8e\x89\x1b\x8a\x8a\x8b\x8a\x89\x1f\xfb\x12\x37\x05\xf7\x2c\x07\xfb"
+"\x19\x40\x95\xf7\x2b\x05\x8f\x89\x8d\x84\x1e\x76\x87\x76\x8f\x05\x84\x89\x89\x87\x1f\x94\xfb\x2b\x05\xfb\x04\xb4\x15\xf7\x06\x4a"
+"\x05\xfb\x19\x07\xfb\x06\xce\x05\xf7\x9e\xf7\x17\x15\xfb\x17\x07\xfb\x06\x48\x05\xf7\x19\x07\xf7\x8b\xfb\x3a\x15\xfb\x05\x4a\xfb"
+"\x07\xcc\xf7\x07\xcd\x05\x77\xfb\xbc\x15\xfb\x06\xcc\x05\xf7\x18\x07\xf7\x06\x49\x05\xfb\x9e\xfb\x17\x15\xf7\x17\x07\xf7\x06\xcd"
+"\x05\xfb\x18\x07\xfb\x8b\xf7\x39\x15\xf7\x05\xcd\xf7\x07\x49\xfb\x07\x4a\x05\x0e\xfb\x2a\xf8\x06\xf7\xe9\x15\xf4\xc8\xf7\x32\x69"
+"\xa1\xbb\x28\xaa\xe7\xbc\x7a\xa9\x33\x53\xa1\xf1\x57\x8f\x59\xfb\x2e\x22\x50\x89\xf7\x0d\xf7\x01\xf7\x0c\x6d\xb6\x3e\x45\x8f\xf3"
+"\x05\x69\x06\x8f\x23\x3e\xd1\x6d\x60\xf7\x01\xfb\x0c\x89\xfb\x0d\x22\xc6\x59\xf7\x2e\x57\x87\xa1\x25\x33\xc3\x7a\x6d\xe7\x5a\x28"
+"\x6c\xa1\x5b\xf7\x32\xad\xf4\x4e\x22\x4d\xfb\x32\xad\x75\x5b\xee\x6c\x2f\x5a\x9c\x6e\xe3\xc2\x05\x75\x25\xbf\x87\xbd\xf7\x2e\xf4"
+"\xc6\x8d\xfb\x0d\xfb\x01\xfb\x0c\xa9\x60\xd8\xd1\x87\x23\x05\xad\x06\x87\xf3\xd8\x45\xa9\xb6\xfb\x01\xf7\x0c\x8d\xf7\x0d\xf4\x50"
+"\xbd\xfb\x2e\xbf\x8f\x75\xf1\xe3\x54\x9c\xa8\x2f\xbc\xee\xaa\x75\xbb\xfb\x32\x69\x05\x0e\x56\xf7\xc5\xf8\x32\x15\x92\x06\x94\x8e"
+"\x8d\x93\x8c\x8b\x8f\x8a\x8e\x1f\xfb\x61\xf7\x6e\x7f\x76\x88\x89\x77\x80\x19\xf8\x21\xfb\xe9\x15\x84\x06\x82\x88\x89\x83\x8a\x8b"
+"\x87\x8c\x88\x1f\xf7\x61\xfb\x6e\x97\xa0\x8e\x8d\x9f\x96\x19\xfc\x0f\xf7\x4c\x15\x92\x07\x93\x88\x8f\x85\x1e\x89\x06\x84\x06\xfb"
+"\x6e\xfb\x62\xa0\x7f\x8d\x88\x96\x77\x19\xf7\xe9\xf8\x21\x15\x84\x07\x82\x8d\x88\x93\x8c\x8f\x8b\x8c\x8e\x1e\xf7\x6e\xf7\x61\x76"
+"\x97\x89\x8e\x80\x9f\x19\xfb\xa5\xfb\x8e\x15\x6b\x70\x71\x6a\x6a\xa5\x70\xad\xab\xa6\xa6\xac\xac\x71\xa5\x69\x1f\xf7\xbf\x04\x82"
+"\x8c\x86\x88\x7a\x81\x08\x79\x80\x8b\x8b\x7f\x1a\x2c\x8f\x61\x96\x69\x1e\x5a\x9c\x98\x6e\x91\x1b\x8e\x8f\x92\xa1\x95\x1f\xa3\xc1"
+"\x94\xc8\xf1\x1a\xa1\x81\x93\x62\x93\x1e\x8d\xfd\x61\x15\x94\x91\x8d\x95\x9b\x1f\x9d\x96\x8b\x8b\x97\x1a\xe9\x87\xb6\x80\xad\x1e"
+"\xbc\x7a\x7e\xa8\x85\x1b\x88\x87\x84\x75\x81\x1f\x73\x56\x82\x4d\x25\x1a\x75\x95\x83\xb3\x83\x1e\xf7\xfb\xf7\xfb\x15\x8a\x91\x8a"
+"\x91\x88\x92\x08\xa4\x82\x85\x91\x7c\x1b\x2b\x62\x87\x80\x69\x1f\x5a\x7a\x6f\x7e\x8a\x85\x08\x88\x93\x87\xa0\x81\x1e\x73\xc2\xc7"
+"\x82\xf1\x1b\xa1\x93\x95\xb4\x93\x1f\xfd\x61\x89\x15\x83\x8e\x82\x94\x7d\x1e\x79\x95\x8b\x8b\x9a\x1b\xe7\xb7\x8f\x96\xad\x1f\xbb"
+"\x9b\xa8\x99\x91\x1a\x8e\x85\x8f\x74\x95\x1e\xa3\x55\x4f\x94\x25\x1b\x74\x83\x81\x63\x83\x1f\x0e\x57\xe0\xf9\x0d\x15\xf7\x5b\xfb"
+"\x5b\x9f\xa0\xfb\x5a\xf7\x5b\x05\xf8\xe8\xfc\xea\x15\xfb\x5b\xf7\x5b\x77\x76\xf7\x5a\xfb\x5b\x05\xf8\xff\x04\xfb\x5a\xfb\x5b\x9f"
+"\x76\xf7\x5b\xf7\x5b\x05\xfc\xe8\xfc\xea\x15\xf7\x5a\xf7\x5b\x77\xa0\xfb\x5b\xfb\x5b\x05\xf7\xc9\xf8\x06\x15\x5e\x66\x66\x5e\x5e"
+"\xb0\x66\xb8\xb8\xb0\xb0\xb7\xba\x67\xaf\x5d\x1f\x83\xf7\xaa\x15\x67\x62\x56\x5d\x6f\x95\x73\xaa\x5b\x1f\x95\x7b\x95\x7b\x8d\x87"
+"\x08\x6a\x9c\x8c\x8a\x8f\x1b\x8f\x8d\x8e\xab\x9d\x1f\x8e\x92\x94\x9a\x95\x9b\x08\xa8\xbb\x94\xa3\xa9\x1a\xbb\x72\xa6\x4f\x9d\x1e"
+"\x93\xfd\x62\x15\xae\xb5\xc0\xb9\xa7\x81\xa3\x6c\xbb\x1f\x80\x9b\x81\x9c\x8a\x8e\x08\xad\x7a\x8a\x8b\x87\x1b\x87\x88\x87\x6c\x7a"
+"\x1f\x88\x84\x82\x7d\x81\x7a\x08\x6e\x5b\x82\x73\x6d\x1a\x5b\xa4\x70\xc6\x79\x1e\xf7\xfa\xf7\xfb\x15\x8c\x8e\x8b\x8e\x8c\x1a\xaf"
+"\x55\xb4\x5d\x70\x74\x81\x6c\x5b\x1e\x7b\x81\x7b\x81\x86\x89\x08\x6a\x7a\x8b\x8b\x86\x1a\x87\x8f\x88\xaa\x7a\x1e\x92\x87\x99\x83"
+"\x9b\x81\x08\x6e\xbc\xa2\x82\xa9\x1b\xbb\xa6\xa3\xc8\x9d\x1f\xfd\x5f\x16\x8a\x87\x8b\x89\x89\x1a\x67\xc0\x62\xb9\xa7\xa3\x95\xaa"
+"\xba\x1e\x9b\x95\x9a\x95\x90\x8d\x08\xac\x9c\x8c\x8b\x90\x1a\x8f\x88\x8e\x6b\x9c\x1e\x84\x8e\x7d\x94\x7a\x95\x08\xa8\x5b\x73\x94"
+"\x6e\x1b\x5b\x70\x73\x4f\x79\x1f\x0e\xfb\x12\xf8\x09\xf8\x0c\x15\xf7\x31\x07\xb9\x9d\xa3\xa9\xb4\x1a\xba\x63\xb2\x5b\x5d\x64\x63"
+"\x5b\x63\xa2\x6e\xba\x79\x1e\xfb\x31\x07\xfb\x19\xd8\x05\x8e\x97\x8c\x97\x91\x1a\xb9\x63\xb1\x5c\x5a\x64\x67\x5c\x59\xb3\x62\xbb"
+"\xa5\x9e\x94\xa3\xa1\x1e\xf7\x18\x3d\xfb\x18\x3d\x05\xa2\x75\x77\x94\x72\x1b\x5b\x62\x62\x5a\x5d\xb3\x65\xbc\xba\xb4\xb2\xb9\x94"
+"\x8a\x91\x87\x9a\x1f\xf7\x19\xd7\x05\xfb\x31\x07\x5d\x7a\x73\x6d\x61\x1a\x5d\xb3\x63\xbb\xb9\xb2\xb3\xbb\xb3\x74\xa8\x5c\x9d\x1e"
+"\xf7\x31\x07\xf7\x19\x3f\x05\x88\x7e\x8a\x80\x84\x1a\x5e\xb3\x64\xba\xbc\xb2\xb0\xba\xbc\x64\xb4\x5a\x72\x77\x82\x74\x75\x1e\xfb"
+"\x17\xd9\xf7\x17\xd9\x05\x74\xa1\x9e\x82\xa6\x1b\xbb\xb3\xb3\xbc\xba\x64\xb0\x5a\x5b\x62\x64\x5f\x82\x8c\x85\x8f\x7b\x1f\x0e\x5b"
+"\xf8\x28\xf8\x72\x15\xab\xf7\x30\x05\x8e\x96\x8c\x95\x91\x1a\xa3\x76\xa1\x73\x74\x76\x76\x72\x86\x8c\x80\x8e\x80\x1e\xab\xfb\x30"
+"\x05\xfb\x9b\x04\x6b\xfb\x30\x05\x88\x80\x8a\x80\x86\x1a\x72\xa0\x76\xa2\xa3\xa0\xa0\xa4\x91\x8a\x95\x88\x96\x1e\x6b\xf7\x30\x05"
+"\xe5\xf7\x6e\x15\xf7\x1a\xe3\x05\xa5\x9c\x93\x98\x9f\x1a\xa3\x79\x9d\x73\x77\x7e\x82\x72\x7a\x1e\x33\xfb\x1a\x05\xfb\x4d\xfb\x4d"
+"\x15\xfb\x1a\x33\x05\x72\x7a\x82\x7e\x77\x1a\x73\x9d\x79\xa3\xa0\x97\x93\xa5\x9c\x1e\xe3\xf7\x1a\x05\xf7\x6e\xe5\x15\xf7\x30\x6b"
+"\x05\x89\x96\x94\x89\x92\x1b\xa4\xa0\xa0\xa2\xa3\x76\xa0\x72\x84\x81\x89\x89\x81\x1f\xfb\x30\x6b\x05\xfb\x9b\x16\xfb\x30\xab\x05"
+"\x8d\x81\x81\x8d\x84\x1b\x72\x76\x76\x73\x74\xa1\x76\xa3\x92\x94\x8d\x8d\x96\x1f\xf7\x30\xab\x05\xf7\x6e\x31\x15\xe3\xfb\x1a\x05"
+"\x71\x9c\x98\x83\x9f\x1b\xa3\x9d\x9d\xa3\x9f\x83\x98\x71\x9c\x1f\xfb\x1a\xe3\x05\xfb\x4d\xf7\x4d\x15\x33\xf7\x1a\x05\xa4\x7a\x7e"
+"\x94\x78\x1b\x72\x79\x79\x73\x77\x94\x7e\xa4\x7a\x1f\xf7\x1a\x33\x05\xef\x94\x15\x55\x60\x61\x55\x57\xb6\x60\xc0\xbf\xb6\xb6\xbf"
+"\xc0\x61\xb6\x57\x1f\x0e\x55\xf8\x05\xf8\x3c\x15\x84\x89\x84\x88\x86\x87\xfb\x01\xf7\x2d\x18\xaa\x75\x7b\x95\x72\x1b\x6c\x73\x74"
+"\x6c\x72\x96\x7b\xaa\x75\x1f\xf7\x2f\xfb\x02\x88\x86\x88\x83\x8a\x85\x19\xfb\x4e\xaa\x05\x8e\x7e\x7f\x8c\x85\x1b\x6b\x6f\x70\x6d"
+"\x6c\xa7\x71\xab\x92\x96\x8c\x8d\x98\x1f\xf7\x4f\xab\x8d\x84\x8e\x84\x8e\x86\x19\xfb\x2d\xfb\x01\x05\x6c\x75\x80\x7b\x72\x1a\x6c"
+"\xa3\x73\xaa\xa4\x9a\x96\xaa\xa2\x1e\xf7\x01\xf7\x2e\x91\x88\x91\x89\x93\x89\x19\x6c\xfb\x4d\x05\x88\x7e\x8a\x80\x83\x1a\x6c\xa6"
+"\x6f\xa9\xa9\xa6\xa7\xab\x93\x8a\x95\x89\x98\x1e\x6b\xf7\x4e\x91\x8d\x92\x8e\x91\x8f\x19\xf7\x01\xfb\x2d\x05\x6c\xa1\x9b\x81\xa5"
+"\x1b\xaa\xa2\xa2\xaa\xa4\x81\x9a\x6b\xa2\x1f\xfb\x2f\xf7\x01\x8e\x91\x8e\x93\x8c\x91\x19\xf7\x4e\x6b\x05\x89\x98\x96\x8a\x92\x1b"
+"\xab\xa7\xa6\xa9\xaa\x6f\xa5\x6b\x85\x80\x8a\x89\x7d\x1f\xfb\x4f\x6b\x88\x93\x89\x91\x88\x90\x19\xf7\x2d\xf7\x01\x05\xaa\xa1\x96"
+"\x9b\xa4\x1a\xaa\x73\xa3\x6c\x72\x7c\x80\x6c\x74\x1e\xfb\x01\xfb\x2e\x85\x8e\x86\x8d\x82\x8d\x19\xaa\xf7\x4d\x05\x8e\x99\x8c\x97"
+"\x90\x1a\xab\x70\xa7\x6d\x6d\x70\x6f\x6b\x84\x8c\x80\x8d\x7e\x1e\x0e\x5b\xf8\x26\xf9\x58\x15\xfb\x60\xfb\x37\xfb\x33\xfb\x5b\xfb"
+"\x5e\xf7\x35\xfb\x36\xf7\x5c\xf7\x5b\xf7\x36\xf7\x36\xf7\x5b\xf7\x59\xfb\x36\xf7\x38\xfb\x55\x1f\x0e\xad\xf8\x4b\x23\x0a\xfb\x80"
+"\xfb\x3c\xfb\x29\xfb\x66\xfb\x04\xc1\xfb\x00\xe5\x4a\x1f\x5b\xce\xe2\x71\xed\x1b\xf7\x82\xf7\x3d\xf7\x29\xf7\x66\xed\x61\xeb\x44"
+"\xcb\x1f\xc9\x45\xfb\x01\xb2\x20\x1b\x61\x69\x15\xd5\xdc\x6b\x58\xc3\x1f\xd2\x4b\xb0\x37\x2e\x1a\xfb\x47\xfb\x25\xfb\x25\xfb\x47"
+"\xfb\x48\xfb\x24\xf7\x25\xf7\x4a\xd9\xa9\xd8\xc0\xc6\x1e\xd2\xcc\xdd\xaf\xee\x1b\x0e\x3d\xf9\x6a\x16\xf9\x47\xfd\x47\xfd\x47\x07"
+"\x0e\x3e\xf9\x02\x20\x0a\xfc\xdf\xfc\xe6\xf6\x2a\xf8\xdd\xf8\xdf\x22\x06\x6b\xd2\x15\xfc\xa4\xfc\x9e\xf8\xa4\x07\x0e\x3e\xf9\x02"
+"\x16\xf3\xf4\xf8\xdf\xfc\xdd\x25\x20\xfc\xe1\x07\xf8\xbf\xac\x15\xfc\x9e\xf8\xa0\xf8\x9e\x06\x0e\x3b\xf8\xeb\x20\x0a\xfc\xc8\xfc"
+"\xd4\x06\xf7\x0b\xfb\x07\x05\xf8\xcf\xf8\xd0\x06\xfb\x13\xe1\x15\xfc\xab\xfc\xa6\xf8\xab\x07\x0e\x3b\xf8\xeb\x16\xf7\x12\xf7\x0c"
+"\x05\xf8\xcf\xfc\xcf\x07\xfb\x0b\xfb\x07\x05\xfc\xd4\x07\xf8\xc7\xac\x15\xfc\xa6\xf8\xab\xf8\xa6\x06\x0e\xc0\xf9\xee\x16\xfc\x2f"
+"\xf9\x55\xfc\x30\xfd\x55\x05\x0e\xc0\xf9\xee\x20\x0a\xfd\xcb\x06\xf8\x30\xfd\x55\x05\x0e\xf8\x1f\x7d\x15\xf7\xfb\xf7\xfc\xfb\xfb"
+"\xf7\xfb\xfb\xfc\xfb\xfb\x05\x0e\x54\xf8\x1c\x23\x0a\xfb\x29\xfb\x35\xf7\x29\xfb\x29\xf7\x27\xf7\x29\x05\xf7\x66\xfb\x58\x15\xfb"
+"\x34\xf7\x29\xfb\x29\xfb\x29\xf7\x29\xfb\x2d\x05\xfb\x59\xfb\x65\x15\xf7\x2b\xf7\x38\xfb\x2b\xf7\x2a\xfb\x29\xfb\x2a\x05\xfb\x64"
+"\xf7\x5a\x15\xf7\x33\xfb\x28\xf7\x29\xf7\x28\xfb\x29\xf7\x29\x05\x0e\xfc\x25\xae\x7d\x15\xc8\x8c\xb8\x94\xb8\x9e\x08\xf7\x14\xc1"
+"\xe4\xf7\x1b\xf7\x22\x1a\xf7\x5b\xfb\x39\xf7\x34\xfb\x5f\x1e\x0e\xfd\x51\xf3\x20\x0a\x46\xfd\x47\xd0\x06\x0e\xfc\xc6\xf7\x86\x20"
+"\x0a\xfb\x63\xfd\x47\xf7\x63\x06\x0e\xfc\x3c\xf8\x10\x20\x0a\xfb\xed\xfd\x47\xf7\xed\x06\x0e\xfc\x53\xf7\xee\xf9\x54\x15\x8c\x7f"
+"\x7f\x8b\x86\x1b\x2e\x44\x72\x57\x5b\x1f\x5f\x5d\x71\x45\x44\x1a\x20\xcb\x44\xed\xe6\xd0\xca\xdd\xdc\x4b\xcb\x3a\x7a\x7c\x88\x87"
+"\x80\x1e\x86\x7e\x8b\x8b\x85\x1b\x7b\x81\x96\x9b\x9f\x9a\xa6\xa0\x9f\x1f\xa5\xa8\xcd\xa2\xbc\x1b\xaa\x8a\x05\x96\x06\x0e\xfc\x53"
+"\xb8\xf7\x9c\x15\x8a\x9b\x96\x8b\x93\x1b\xe1\xd6\xa7\xbc\xb9\x1f\xb6\xb9\xa6\xd3\xcf\x1a\xf7\x00\x4a\xd2\x29\x30\x46\x4c\x39\x3b"
+"\xcb\x4b\xdc\x9b\x9b\x8d\x8f\x96\x1e\x91\x99\x8b\x8b\x91\x1b\x9a\x95\x7f\x7b\x6d\x6d\x64\x66\x79\x1f\x79\x68\x5b\x81\x5f\x1b\x6f"
+"\x06\x0e\xfb\x3f\xf7\xd2\x23\x0a\x6d\x7f\x8a\x86\x75\x1f\xfb\x12\x72\x2e\xfb\x02\xfb\x10\x1a\x26\xcf\x3f\xe6\xcc\xc5\xb4\xc8\x9f"
+"\x1e\x46\xaa\xba\x6a\xcd\x1b\xe0\xce\xce\xdf\xdf\x47\xcf\x37\x72\x78\x87\x7d\x6d\x1f\x9e\xd2\xee\xc7\xf0\x8c\x77\xa4\x18\xfb\x1e"
+"\x8d\x21\x38\x67\xfb\x1d\x08\xc0\x6a\x5e\xa5\x53\x1b\x71\x78\x87\x7d\x6f\x1f\xa2\xd7\xe9\xc4\xf0\x8a\x08\x0e\xfb\x3f\xf7\xf3\xf7"
+"\x9b\x15\xc0\xb5\x95\xa0\xb4\x1f\xe4\xb8\xc5\xe8\xeb\x1a\xf1\x47\xd6\x30\x4a\x51\x62\x4e\x76\x1e\xd0\x6d\x5c\xac\x49\x1b\x36\x48"
+"\x49\x36\x37\xcf\x46\xde\xa4\x9c\x90\x99\xab\x1f\x79\x44\x25\x4d\x29\x8c\x9f\x72\x18\xf7\x1d\x89\xf6\xdf\xae\xf7\x1c\x08\x56\xad"
+"\xb8\x70\xc2\x1b\xa5\x9f\x91\x98\xa7\x1f\x74\x3f\x2c\x52\x26\x8c\x08\x0e\xfc\x55\xf7\xf0\x23\x0a\x49\x79\x6d\x80\x67\x79\x08\xfb"
+"\x01\x53\x43\xfb\x10\xfb\x18\x1a\xfb\x19\xd3\xfb\x11\xf7\x01\x54\x1e\xac\x7b\xaa\x80\xcf\x77\x93\x96\x18\xfb\x14\xb8\x3a\xf7\x1a"
+"\xf7\x3d\x1a\xf7\x05\xb0\xee\xce\xd2\x1e\xa8\xaa\xa9\x9e\xb9\x9b\x08\x0e\xfc\x55\xae\xf9\x4a\x15\xf7\x13\x5f\xdc\xfb\x1b\xfb\x3e"
+"\x1a\xfb\x3d\x3a\xfb\x1c\xfb\x13\x60\x1e\x93\x80\xce\x9e\xaa\x96\xad\x9c\x19\xf7\x00\xc2\xd3\xf7\x11\xf7\x19\x1a\xf7\x18\x43\xf7"
+"\x10\xfb\x00\xc3\x1e\x68\x9c\x6c\x96\x49\x9e\x08\x0e\xfc\x9e\xf7\x42\x20\x0a\x2e\xfb\x04\x5d\xfb\x06\xfb\x0c\x1a\xfb\x0c\xbb\xfb"
+"\x0b\xe6\x21\x1e\xf7\x01\x06\x4f\xf7\x12\x73\xf1\xf7\x0d\x1a\xf7\x0f\xb2\xf7\x31\xb8\xc9\x1e\x0e\xfc\x9e\xae\x20\x0a\xc9\xfb\x14"
+"\xa1\x2f\xfb\x11\x1a\xfb\x0a\x71\xfb\x00\x51\xfb\x0c\x1e\xf7\x01\x06\xe5\xf2\xbc\xf7\x0e\xf7\x0c\x1a\xf7\x0c\x5d\xf7\x07\x2e\xf7"
+"\x03\x1e\x0e\xfc\xc7\xf7\x1d\x20\x0a\x25\xfb\xee\xf1\xfb\xed\x05\xf4\x06\x23\xf7\xed\xf3\xf7\xee\x05\x0e\xfc\xc7\xf7\x1e\x20\x0a"
+"\x24\x06\xf2\xfb\xee\x24\xfb\xed\x05\xf2\x06\xf3\xf7\xed\x05\x0e\xfb\xde\xf7\xaa\x16\xf7\x59\x06\xfb\x87\xf7\xee\xf7\x87\xf7\xed"
+"\x05\xfb\x59\x06\xfb\x87\xfb\xed\x05\x0e\xfb\xde\xf7\x7c\x16\xf7\x87\xf7\xee\xfb\x87\xf7\xed\x05\xfb\x59\x06\xf7\x87\xfb\xed\xfb"
+"\x87\xfb\xee\x05\x0e\xfc\x41\xf7\x1b\x20\x0a\x27\xfb\xed\xef\xfb\xee\x05\xf7\x84\x06\x27\xf7\xee\xef\xf7\xed\x05\x0e\xfc\x41\xf7"
+"\xa7\x20\x0a\xfb\x84\x06\xef\xfb\xed\x27\xfb\xee\x05\xf7\x84\x06\xef\xf7\xee\x05\x0e\xfc\xf1\xf7\x5b\xf9\x4a\x15\x75\x96\xfb\x22"
+"\x32\x05\xfc\xb1\x07\xf7\x22\x32\xa1\x96\xfb\x06\xd9\x05\xf8\xb1\x07\x0e\xfc\xf1\xae\xf9\x4a\x15\xf7\x06\x3d\x05\xfc\xb1\x07\xfb"
+"\x06\x3d\xa1\x80\xf7\x22\xe4\x05\xf8\xb1\x07\xfb\x22\xe4\x05\x0e\xfc\x8d\xf7\xbf\x20\x0a\x60\x06\x3b\x71\x89\x83\x76\x1f\x6c\x7e"
+"\x7e\x74\x60\x1a\x7f\x07\x8c\x78\x05\xfb\x18\x07\x8d\x4c\x7f\x76\x62\x87\x08\x7f\x07\xb5\x88\x96\x7a\x89\x48\x08\xfb\x18\x07\x8a"
+"\x6b\x05\x65\x96\x74\xa4\x7e\x1e\x80\xa0\xa5\x88\xd8\x1b\xc1\x97\x86\x06\x76\x77\x92\x95\x82\x1f\x80\x98\x8a\x94\xc4\x1a\xf7\x01"
+"\x07\x8d\xe0\x79\xa8\x4b\x99\xcb\x9a\x9d\xa7\x89\xe1\x08\xf7\x01\x07\x89\xda\x95\x9a\xc6\x8d\x08\x0e\xfc\x8d\xae\x20\x0a\x7f\x07"
+"\xc6\x89\x96\x7c\x88\x3c\x08\xfb\x01\x07\x8a\x35\x9c\x6f\xcb\x7c\x4b\x7d\x7a\x6e\x8c\x36\x08\xfb\x01\x07\x51\x8a\x83\x80\x7e\x1e"
+"\x81\x83\x76\x84\x76\x1b\x86\x7f\xb6\x06\xdd\xa3\x8d\x93\xa0\x1f\xaa\x97\x98\xa3\xb5\x1a\x8a\xab\x05\xf7\x18\x07\x8a\xce\x95\x9c"
+"\xb5\x8e\x08\x97\x07\x62\x8f\x7f\xa0\x8d\xca\x08\xf7\x18\x07\x8c\xaa\x05\xb3\x80\xa1\x73\x98\x1e\x96\x75\x70\x8e\x3d\x1b\x0e\x20"
+"\xf9\x4d\x20\x0a\xfb\x46\xf7\x06\x06\x64\x81\x05\x23\x2a\x07\x31\x60\x88\x81\x5d\x1f\x27\x76\x46\x33\x21\x1a\x2e\xc0\x3d\xe3\x67"
+"\x1e\x7b\xb4\xba\x83\xc8\x1b\xbb\xbf\x8f\x94\xc2\x1f\x89\xfb\x05\x84\x51\x7c\x5c\x08\x35\x6f\x50\x57\x45\x1b\x5b\x63\xa8\xad\x94"
+"\x8f\x93\x91\x90\x1f\x90\x90\x8c\x8c\xa4\x8c\x08\xaa\x8e\xa2\xa5\xad\x1a\xb6\x65\xae\x5c\x50\x5b\x56\x4a\x38\xd4\x4a\xe9\xb8\xb5"
+"\x9a\xa8\xb1\x1e\xb8\xac\xa6\xb5\x9d\xcc\x08\x9e\xcb\x8f\xc9\xf7\x3b\x1a\xf7\xd3\x07\x8a\x9e\x99\x8b\x95\x1b\xb7\xa6\x8f\x98\xba"
+"\x1f\xfb\x5c\x7b\x15\xfc\x19\x07\x6e\x8e\x6b\x95\x67\x9c\x08\x82\xb2\x86\xc5\xcc\x1a\xcb\x91\xe2\x93\xb9\x1e\x0e\xfb\xbb\xf7\xa4"
+"\xf7\xbd\x15\xa2\xcd\x96\x99\xc4\xa9\xb6\xa2\x9b\x94\x99\x97\x08\xae\xa7\x9c\xad\xb7\x1a\xae\x7e\xae\x73\xa5\x1e\xb4\x66\x64\x96"
+"\x24\x1b\x24\x64\x80\x62\x66\x1f\x73\x71\x7e\x68\x68\x1a\x64\x98\x6b\xa6\x72\x1e\x9c\x7a\x9b\x82\xbf\x6f\xc4\x6d\x96\x7e\xa2\x48"
+"\x08\x8d\x70\x15\x3b\x4b\x4d\x3c\x3b\xca\x4c\xda\xda\xca\xca\xda\xd9\x4c\xcb\x3e\x1f\x0e\xfb\xbb\xf7\xa3\xf9\x06\x15\x7f\x9f\x87"
+"\x92\x85\x92\x08\xa7\x75\x68\x9b\x66\x1b\x42\x5b\x54\x37\x4e\xa9\x56\xb9\x76\x1f\xf6\x5b\xa5\x75\xa7\x4b\xa2\xc1\xa5\xa4\xcb\xab"
+"\xc9\xa8\x8b\x8b\x97\x96\x08\xab\xa6\x9d\xb6\xbb\x1a\xdf\x5c\xc2\x42\x65\x67\x7b\x6f\x76\x1e\x85\x84\x87\x85\x7f\x76\x08\x8d\xfb"
+"\xf8\x15\x3b\x4b\x4c\x3d\x3b\xca\x4c\xda\xd9\xcb\xca\xda\xd8\x4b\xcc\x3f\x1f\x0e\xd2\xf8\x5b\xf8\x6e\x15\x7b\xb4\x84\x9a\x7f\xa0"
+"\x08\xc8\x65\x45\xb2\x41\x1b\xfb\x09\x35\x35\xfb\x0b\x44\xa2\x57\xbc\x65\x1f\xaa\x72\xac\x7a\xe0\x66\xf7\x0c\x56\xb1\x6c\xb4\x39"
+"\xb5\xdd\xb0\xaa\xf7\x0c\xc0\xd1\xa9\xad\x9c\xa4\x9c\x08\xcb\xb7\xa7\xbf\xd9\x1a\xf7\x0c\x36\xe2\xfb\x0a\x41\x44\x64\x4e\x66\x1e"
+"\x7f\x77\x84\x7b\x7b\x62\x08\x0e\xfb\x40\xf9\x0d\xf8\x11\x15\x89\x7b\x7d\x8a\x81\x1b\x6a\x67\x97\xa0\x6b\x1f\x62\xa5\x6c\xb6\x70"
+"\xcf\x76\xc1\x83\x9c\x7d\x9d\x08\xb7\x6a\x5a\xa4\x54\x1b\x29\x3b\x3c\x2b\x56\xa4\x57\xb6\x6a\x1f\xa2\x78\x9e\x83\xb5\x81\x08\x79"
+"\x07\x67\x82\x79\x83\x77\x7e\x08\x5b\x69\x6d\x54\x52\x1a\x2a\xda\x3d\xed\xd5\xcd\xb8\xd1\xa4\x1e\xaf\xed\x90\x94\xab\xb1\x08\xb8"
+"\xb2\xc4\xa6\xc3\x1b\x94\x92\x8a\x89\x9a\x1f\x0e\x3c\xf7\xd9\xf9\x0e\x15\xb2\x5b\x6a\x9a\x65\x1b\x3d\x2e\x2c\x3a\x74\x9a\x7a\x9f"
+"\x9e\xa0\x9d\x9c\x8f\x8b\x8c\x80\x98\x1f\x82\x95\x86\x99\x99\x1a\xbc\xb6\xb6\xbd\xaf\xb9\x76\x4e\xea\x1e\xc2\x68\x91\x87\xa4\x7e"
+"\x7a\x5e\x88\x84\x83\x7b\x08\x7b\x6c\x89\x85\x7d\x1a\x85\x8c\x87\x8d\x82\x1e\x8d\x8f\x8d\x90\x8e\x90\x92\x98\x92\x99\x93\x99\x93"
+"\x9a\x97\xa6\x97\xac\x08\x7c\xaf\xa1\x84\x9b\x1b\x98\xa3\x8f\x8f\x9a\x1f\xdf\xa2\xc4\xc5\xc7\x1a\xb0\x71\xa7\x69\x6a\x73\x6f\x64"
+"\x82\x8d\x86\x90\x88\x1e\xa2\x7c\x90\x83\x76\x1a\x67\x69\x6c\x65\x6a\x64\x98\xa1\x6c\x1e\x91\xa5\x8d\x9a\x9b\x1a\xc4\x66\xb7\x5c"
+"\x71\x7a\x81\x6f\x72\x1e\xf7\x11\xfb\x03\x15\x7e\x90\x77\x97\x77\x9b\x08\x75\x9c\x82\x99\x9e\x1a\x9e\x9a\x9a\x9d\xaa\xa7\x67\x61"
+"\x80\x89\x80\x87\x80\x1e\x42\xfb\x5b\x15\x96\x07\xca\x66\xb2\x4e\x3c\x52\x3f\x21\xfb\x38\xf7\x21\xfb\x21\xf7\x39\xe0\xd6\xb5\xbc"
+"\xa1\x79\x9b\x72\x7e\x85\x88\x81\x83\x1e\x4d\x82\x71\x6d\x5e\x1b\x69\x71\xa3\xa9\xaa\xa0\x9e\xd7\xb0\x1f\xbe\xa4\xab\x9f\x9c\x9e"
+"\x08\xa7\xa8\x9a\xb1\xb1\x1a\xd1\x58\xc3\x4e\x6d\x6a\x80\x79\x77\x1e\x7a\x7d\x7f\x7c\x77\x68\x08\x0e\x3c\x98\xf7\x6c\x15\x94\x06"
+"\x54\x91\xad\x67\xbb\x1b\xb2\xa1\xa1\xb1\x94\x8a\x91\x8a\x9b\x1f\x7d\x7b\x80\x86\x7a\x1b\x70\x7b\x99\xa8\x84\x1f\xdf\xac\xc2\xc9"
+"\x8a\xc6\xb7\x89\xb3\x75\x9a\x6c\x08\x5b\x71\x7b\x76\x64\x1a\x41\xdd\x51\xf2\xd5\xe2\xab\xc9\xe1\x1e\xc3\xb2\xa1\xa4\xa3\x1a\x9f"
+"\x7e\x97\x77\x7d\x83\x86\x7d\x82\x1e\x90\x7c\x8c\x84\x81\x1a\x6b\x73\x74\x6b\x75\x77\x96\xa0\x7e\x1e\x82\x9a\x88\x9a\x86\xb9\x84"
+"\xd7\x89\x95\x76\xaa\x08\xb5\x70\x58\xa6\x59\x1b\x54\x5d\x63\x5a\x77\x8f\x7c\x98\x6d\x1f\x67\xaa\x62\x9b\x63\x8a\x80\xa5\x7e\x9a"
+"\x6d\x9e\x08\x5d\xa7\x80\x97\xa3\x1a\x97\x91\x94\x98\x95\x1e\x81\x06\x62\x6f\x72\x67\x6a\x9d\x7a\xb9\x81\x1f\xc7\x7f\x8e\x89\x95"
+"\x77\x3a\x7e\x42\x45\x88\x46\x7c\x7c\x87\x81\x88\x75\x08\xd2\xc9\x15\x88\xc4\xc5\xc5\xc8\x8c\x08\x8c\x85\x8b\x86\x88\x1a\x76\x79"
+"\x6f\x71\x79\x1e\x76\x7c\x7b\x83\x67\x7f\x08\x0e\x4c\xf9\x0a\x16\x9f\x07\x2f\x9c\x6c\x9a\x5f\xba\x5e\xbf\x80\xae\x86\xf6\x9c\x6b"
+"\x93\x7d\x99\x7b\x08\x5f\xaf\xc5\x6d\xbd\x1b\xe1\xd1\xd4\xe4\xe2\x4c\xd1\x3c\x73\x7c\x86\x7b\x6a\x1f\x85\x88\x84\x88\x84\x87\x08"
+"\xa7\xb4\x96\xa8\xb0\x1a\xe0\x44\xcf\x34\x34\x44\x47\x36\x66\x96\x6e\xa7\x62\x1e\xa9\x4e\x89\x8c\x6e\x1b\x3c\x4c\x45\x34\x32\xd1"
+"\x42\xe1\xbd\xc5\xa8\xb8\xb0\x1f\x98\x9b\x93\x99\x9c\xab\x86\x21\x80\x67\x5e\x57\x5f\x5c\x6c\x7c\x2f\x7a\x08\x77\x07\x0e\xfb\x88"
+"\xb9\xf7\xdf\x15\xec\xfb\x06\xf7\x04\xfb\x30\xb4\x40\xb6\xda\xf7\x13\xf7\x41\xe9\xf7\x00\x3f\xde\xfb\x30\xf7\x69\x6b\xca\x58\x2e"
+"\x43\x29\xfb\x1f\xfb\x3c\x08\x0e\xfb\x25\xf7\xf0\x7d\x15\xa0\xe2\xc3\xeb\xf7\x04\xf7\x1d\x08\xe6\xf7\x07\xaa\xcc\xd6\x1a\xd9\x48"
+"\xcc\x3b\x5d\x60\x77\x67\x6b\x1e\x77\x73\x80\x77\x7f\x5f\x80\xad\x83\x9c\x7f\x9d\x08\xbb\x6b\x5a\xa6\x55\x1b\x38\x4b\x4a\x37\x4d"
+"\xa1\x5d\xdb\x20\x1f\xf7\x27\xfb\x53\xb1\x4b\xa5\x28\x08\x0e\xfb\x69\xd3\x16\xf8\x75\x9f\x06\x2f\x9c\x6c\x99\x5f\xbb\x66\xb6\x7d"
+"\xad\x85\xc9\x08\x58\xac\xbb\x6e\xc0\x1b\xd3\xc3\xc3\xd2\xca\x73\xb1\x27\xe6\x1f\x29\xe3\x6d\xb7\x71\xeb\x70\x2b\x6d\x5f\x2a\x33"
+"\x08\x27\x30\x72\x65\x4c\x1a\x44\xc4\x53\xd2\xc0\xbb\xa8\xbe\xac\x1e\x85\x4d\x7d\x69\x66\x60\x5f\x5b\x6c\x7d\x2f\x7a\x08\x0e\xf8"
+"\x52\xf8\xe0\x15\x6b\x06\x6c\x60\x5a\x73\x42\x83\x08\x70\xd1\x07\xa4\x8a\x8e\x87\x70\x1a\xfb\x83\x07\x8d\x59\x7f\x7e\x5c\x8a\x08"
+"\x70\x6a\xf7\x97\xac\x67\x06\x63\x8c\x7f\x9a\xbb\x1a\x5d\xf8\x7f\x22\x0a\xfb\x32\xfb\x5b\x31\x0a\xf8\xa8\xf7\xbd\x15\x60\x07\x8a"
+"\x5f\x84\x84\x62\x8d\x08\xfb\x59\x06\x99\xb0\xbf\xb6\xd2\xab\x08\xeb\xb8\xae\xb3\xcb\x1a\xda\x4b\xbd\x25\x39\x51\x61\x51\x6b\x9f"
+"\x74\xa8\xa5\xa1\xa1\xa5\x91\x8a\x90\x89\x8f\x1e\x83\x9e\x8b\x8b\x8e\x1a\x9c\xa8\x9f\xa3\xb0\xa4\x69\x58\x4f\x6e\x62\x32\x48\x1e"
+"\x46\x56\x67\x54\x52\x1a\x85\x8c\x82\x8c\x80\x1e\xf7\xe4\xf7\x47\x06\xfb\x38\xf8\x2d\x22\x0a\x26\x0a\x31\x0a\xf7\xd5\xf7\xf7\x15"
+"\x90\xa4\x96\x8d\x9a\x1b\xc8\xb0\x67\x51\x4b\x5f\x56\x54\x6c\x75\x99\x9e\x8e\x8c\x8f\x8c\x8d\x1f\x91\x9b\x8b\x8b\x94\x1a\xa8\x76"
+"\x9f\x6c\x6b\x76\x76\x6c\x4e\xcc\x60\xe6\xf7\x05\xdd\xc9\xe2\xb2\x7a\xac\x6d\xa0\x1e\x7b\x96\x64\x99\x74\x8d\x08\x83\x88\x8d\x8e"
+"\x8e\x8f\x8d\x9a\x8f\x1f\xc1\x9a\xa8\xae\xbb\x1a\xce\x57\xb0\x2e\x32\x4e\x67\x57\x71\x9e\x77\xa4\xa5\xa1\xa1\xa4\x90\x89\x94\x8a"
+"\x8e\x1e\x87\x92\x8b\x8b\x8d\x1a\x99\xa4\x99\xa4\xb4\xa7\x6d\x5e\x50\x62\x64\x4e\x85\x83\x8b\x8c\x81\x1e\xda\xf7\xcf\x15\xfb\x5e"
+"\xfb\x37\x32\x0a\x37\x2e\x1a\xfb\x49\x28\x0a\xf8\x60\xf8\xe0\x15\x48\x06\xfb\x69\xfb\xd5\x05\x6f\xf7\x55\x65\x07\x8c\x64\x84\x82"
+"\x6b\x89\x08\x5b\x6a\xf7\x85\xac\x6b\x06\x6c\x8e\x85\x91\x8c\xad\x08\xb8\xf7\x02\xb8\xfb\x02\x07\x34\xf7\x67\x15\xfb\x67\xfb\x1b"
+"\x07\xf7\x37\xf8\x39\x15\xfb\x60\xfb\x36\x2d\x0a\xf7\x5c\xf7\x5b\xf7\x34\xf7\x35\xf7\x5a\x3f\x0a\xf7\x38\xfb\x54\x1f\x8a\x6a\x15"
+"\xd5\xde\x6a\x58\xc3\x2f\x0a\x37\x2d\x1a\xfb\x48\x28\x0a\xf7\xb2\xf7\xcf\x15\xad\xa6\xa4\x9b\xa8\x1b\xb9\xad\x5f\x4e\x4b\x60\x57"
+"\x56\x6f\x74\x99\x9c\x91\x8b\x8b\x92\x9a\x1f\x8e\x92\x8d\x93\x93\x1a\xa3\x74\x9f\x6e\x6d\x76\x75\x6b\x53\xcc\x61\xe1\xf7\x05\xe1"
+"\xce\xe3\xdc\x49\xc6\x2e\x5c\x66\x7f\x73\x6d\x1e\x96\xf7\x0d\x05\x88\xac\x9c\x8a\xac\x1b\xe0\xa2\x8f\x9a\xa0\x1f\x9e\x98\x9a\xa8"
+"\x95\xb7\x08\x7d\x64\x6a\x86\x55\x1b\x67\x6b\x8f\x9a\x32\x1f\x88\x57\x80\xfb\x0b\x80\x32\x08\xf7\x2f\xf8\x0a\x21\x0a\xf7\xc3\xf7"
+"\xe2\x15\x8a\xa1\x8b\x99\x90\x1a\xd1\xa1\xd0\xac\xaa\x1e\x96\x97\x9f\x92\x9e\x1b\xa8\xa2\x7c\x78\x88\x8a\x87\x8a\x87\x1f\x87\x80"
+"\x89\x80\x86\x1a\x75\xa1\x77\xa3\xa7\x9f\xa2\xaa\xc0\x4d\xb2\x36\x52\x5e\x79\x67\x6b\x1e\x61\x5b\x72\x41\x40\x1a\x4b\x9c\x51\xac"
+"\x60\x1e\x5e\xad\xbc\x74\xca\x1b\xf3\xd7\xd1\xea\xd8\x51\xc3\x3c\x54\x5e\x72\x59\x69\x1f\xed\xa9\x15\xbd\xac\x5e\x48\x4b\x66\x5f"
+"\x58\x56\x66\xb8\xcc\xca\xb4\xba\xc1\x1f\x8a\xf7\xea\x22\x0a\x30\x0a\xf7\x6f\xf8\xdd\x15\xfb\x3b\xa9\x07\x93\xae\x97\xb7\x8c\x8c"
+"\xac\x8c\x19\xf7\x4a\x06\x43\x27\x47\x33\x8b\x8b\x7c\x72\x19\x73\x62\x7d\x63\x6d\x1a\x66\xa5\x70\xae\xae\xa4\xa2\xac\x91\x8a\x91"
+"\x8a\x90\x1e\x80\xb6\x8b\x8b\x98\x1a\xa7\x97\xb3\x9d\xac\x1e\x91\x97\x8e\x8f\xe3\xf7\x29\xb5\xce\x18\x8c\x8e\x8f\x8e\x92\x1e\xfb"
+"\x43\xf7\x0d\x15\xfb\x5e\xfb\x37\x26\x0a\x34\x0a\x37\x2e\x1a\xfb\x49\x28\x0a\xf8\x5e\xf8\x24\x15\xc1\xaf\x9d\xa3\xb1\x1a\xc3\x55"
+"\xb4\x41\x36\x4e\x58\x43\x5e\x9b\x72\xbf\x6a\x1e\x40\x60\x72\x6a\x53\x1a\x3f\xcc\x59\xed\xf4\xd5\xca\xe3\xc7\x6d\xb3\x3d\xb1\x1e"
+"\x3f\xb2\x15\x68\x9e\x7c\x9d\xa5\x1a\xad\xa9\xa5\xb3\xb5\xa9\x6f\x63\x6b\x7b\x71\x69\x77\x1e\x82\x28\x15\xb9\x71\x9e\x72\x67\x1a"
+"\x5a\x62\x66\x56\x53\x62\xb4\xc3\xb7\xa3\xb2\xb7\xa5\x1e\xb6\xf7\xf8\x21\x0a\xf8\x7a\xf7\xfc\x15\x8c\x7c\x8b\x86\x82\x1a\x45\x75"
+"\x46\x69\x6c\x1e\x80\x80\x76\x84\x78\x1b\x6e\x74\x9a\x9e\x8e\x8c\x8f\x8d\x90\x1f\x8e\x96\x8d\x95\x90\x1a\xa1\x75\x9f\x73\x6f\x77"
+"\x74\x6c\x56\xc9\x64\xe1\xc3\xb9\x9d\xaf\xaa\x1e\xb6\xbb\xa4\xd5\xd6\x1a\xcb\x7a\xc5\x69\xb7\x1e\xb7\x69\x5b\xa2\x4c\x1b\x22\x3f"
+"\x45\x2c\x3e\xc5\x53\xda\xc3\xb7\xa4\xbd\xad\x1f\x2f\xf7\x52\x15\xc0\xb1\x5e\x4a\x4c\x62\x5c\x54\x59\x6a\xb7\xcf\xcb\xaf\xb7\xbf"
+"\x1f\x92\xf7\x24\x21\x0a\xf7\xd2\xf8\xe1\x15\x69\x06\x73\x63\x64\x78\x46\x87\x08\x71\xbe\x07\xab\x88\x8c\x8b\x64\x1a\xfb\x9d\x07"
+"\x6a\x8c\x86\x84\x6e\x1b\x72\x68\xf7\x5a\xae\x78\x06\x69\x8e\x85\x91\x8c\xb1\x08\xf7\x4f\xf8\x1f\x15\x2e\x59\x35\xfb\x30\xfb\x36"
+"\xba\x3b\xeb\xc2\xb0\x9d\xb0\xa1\x1f\xa3\xb3\x98\xc9\xd7\x1a\xf7\x3d\x5a\xdd\x25\x1e\x8f\x6a\x15\xad\x9c\x46\xfb\x20\xfb\x1f\x7a"
+"\x47\x68\x6a\x79\xd3\xf7\x1c\xf7\x1d\x9d\xd2\xad\x1f\xfb\x01\xf7\x24\x21\x0a\xf8\x24\xf9\x56\x39\x0a\xf7\x58\xfb\x35\xf7\x37\xfb"
+"\x55\x1f\xc1\x2e\x15\xfc\x32\x07\x8a\x57\x9a\x78\xb7\x8a\x08\xb3\x69\xfb\xb8\xad\xa9\x06\xb8\x9e\x9c\xb2\x1f\x91\x07\x8a\x95\x05"
+"\xf7\x9d\x07\x8c\xa9\x86\x8f\x70\x8c\x08\x3e\xa9\x06\xd9\x93\xc6\xa8\xaf\xba\x08\x0e\xf8\x24\xf9\x56\x22\x0a\x2a\x0a\xf7\x26\xfc"
+"\x31\x15\xb0\xfb\x5c\xfc\x09\x06\x8a\x97\x8a\x95\x90\x1a\xce\xb0\xc6\xda\xc6\x1e\xc5\xb6\x99\x98\xa2\xa9\x08\xa1\xa8\x97\xad\xac"
+"\x1a\xc3\x70\xb0\x63\x70\x6c\x75\x7a\x88\x8c\x89\x8c\x89\x1e\x94\x74\x8b\x8b\x82\x1a\x6f\x74\x75\x6d\x6b\x74\xa4\xad\xca\xcc\xb9"
+"\xe6\xf7\x04\xd4\x54\x36\x66\x7e\x6b\x70\x6e\x1e\x75\x73\x72\x7c\x51\x6f\x39\x66\x55\x60\x7b\x60\x08\xf7\x6d\x06\xa0\x8a\x05\xa3"
+"\x94\x9a\xb4\x1f\x0e\x33\x0a\x34\xfb\xcf\x15\x8a\x96\x94\x8a\x92\x1b\xa0\xa2\x91\x96\x9e\x1f\xac\x9e\x9b\xa7\xb5\x1a\xbd\x6c\xac"
+"\x5e\x70\x71\x7c\x7b\x8a\x1e\x8a\x8b\x8a\x8c\x8a\x1e\x8f\x82\x8c\x85\x82\x1a\x6f\x73\x74\x6e\x6f\x76\xa0\xa8\xc0\xcf\xb2\xea\xf2"
+"\xc4\x62\x41\x56\x6a\x64\x53\x7b\x1e\x7a\x86\x88\x89\x88\x1a\x87\x8e\x8a\x94\x8a\x1e\x9c\x8a\xb7\x7d\x9b\x82\x08\xb2\x75\xa1\x64"
+"\x5c\x1a\x2c\x31\x46\xfb\x10\x26\x43\xbc\xd0\xaf\xa2\xa3\xae\xad\xa2\x75\x6b\x85\x8a\x85\x8a\x86\x1e\x85\x7c\x8b\x8b\x85\x1a\x76"
+"\xa3\x7c\xac\xc5\xbb\xc5\xd1\xcb\x63\xb2\x49\x7b\x7f\x8a\x86\x71\x1e\x0e\xf8\x06\xf8\x92\x15\xfb\x2a\xfb\x7a\x05\xf7\x2a\x06\xa9"
+"\xf8\x3e\x35\x0a\xcf\x2e\x15\xfb\xe1\xf7\x0c\x55\xfb\x0c\x59\x07\x65\x90\x85\xae\x87\x1e\xae\x68\xfb\xa0\xae\xbf\x06\xaf\x8e\x92"
+"\x94\xb6\x1a\xb6\xfb\x6a\xac\x07\xf7\x81\xf7\xf6\x05\x0e\x29\x0a\xfb\x12\xfb\xe3\x15\xa6\xad\xb4\x98\xbf\x1b\xf1\xd5\x4a\x31\x2a"
+"\x2b\x41\xfb\x13\x2e\x43\xba\xc8\xae\xa2\xa4\xad\xab\xa5\x74\x6f\x83\x89\x82\x87\x83\x1f\x83\x7b\x8b\x8b\x84\x1a\x77\xa4\x7b\xa9"
+"\xc6\xba\xc5\xd4\xce\x65\xbc\x58\x6c\x70\x7b\x65\x6d\x1e\x5f\x9e\x97\xf0\x94\xe9\x90\xe8\x19\x79\xf7\x06\x9f\x89\xb7\x1b\xc5\xab"
+"\x90\x9a\xb9\x1f\x82\x60\x7a\x68\x7b\x7d\x08\x77\x72\x72\x86\x27\x1b\x67\x79\x8c\x8e\x66\x1f\x0e\xf8\x26\xf8\x03\x15\x50\x5f\x58"
+"\x46\x45\xb3\x5a\xc4\xc3\xb3\xbb\xd0\xd5\x67\xbb\x55\x1f\x89\xf7\xe7\x24\x0a\x21\xfc\x05\x15\xc2\xb1\xbc\xa6\xc8\x1b\xe3\xcb\x4c"
+"\x34\x20\x37\x3e\xfb\x08\x45\x56\xa4\xbd\x65\x1f\x66\xbb\x78\xca\xd3\x1a\xd4\xa1\xd5\xb0\xbf\x1e\xc2\xb2\xbf\xa5\xd4\x1b\xe8\xd0"
+"\x60\x51\x69\x75\x73\x6c\x70\x74\xa1\xa4\x91\x8d\x96\x8d\x97\x1f\x8d\x90\x8b\x8f\x8e\x1a\xa1\x73\x9b\x6b\x76\x74\x83\x7f\x7f\x1e"
+"\x66\x68\x73\x40\x3c\x1a\x82\x8b\x8b\x8c\x7c\x1e\x80\x8b\x8b\x8c\x82\x1e\x0e\x38\x0a\xf7\x57\x25\x0a\xfb\x5c\x2c\x15\xf8\x1e\x06"
+"\x88\x84\x88\x86\x8a\x89\x5e\x40\x18\x2a\xfb\x3a\x87\x84\x86\x81\x08\x78\x67\x7e\x5f\x6b\x1a\x82\x8c\x82\x8d\x81\x1e\x91\x62\x8b"
+"\x8b\x83\x1a\x63\x72\x72\x62\x63\x71\xa8\xb7\xbc\xa8\xc8\xc6\xd7\x1e\x9a\x9f\x9a\x9f\x9a\x9e\xdc\xf7\x03\x18\xfb\x5e\x06\x66\x8a"
+"\x8a\x8a\x7e\x5a\x82\x65\x18\x6a\x06\x0e\xf8\x40\xf8\x40\x15\xae\xa1\x9c\xa7\xae\x1a\xb6\x6b\xab\x5e\x5f\x6b\x6f\x66\x6e\x9c\x75"
+"\xb0\x78\x1e\x6f\x28\x15\x5d\x70\x72\x61\x5b\x1a\x4f\xb7\x5e\xc7\xc4\xb8\xb3\xbf\xb2\x76\xa6\x5a\xa7\x1e\x79\xf8\x18\x24\x0a\xcc"
+"\xfb\xbc\x15\xe0\x60\xae\x5f\x47\x1a\x28\x38\x44\xfb\x07\xfb\x01\x43\xc3\xe0\xcb\xa7\xb1\xdd\xba\x1e\x52\xb1\x79\xa6\xbc\x1a\xdb"
+"\xcf\xc3\xe9\xde\xc7\x5f\x4d\x60\x77\x70\x4e\x64\x1e\x0e\xf8\x19\xf8\xdf\x15\x53\x64\x5b\x45\x42\xb0\x5d\xc4\xc4\xb5\xbd\xd0\xcf"
+"\x62\xbd\x52\x1f\x96\xf7\x0b\x35\x0a\xe8\xfb\xeb\x15\x5d\x65\x60\x77\x4c\x1b\x2d\x4c\xc6\xe4\xf3\xdf\xd7\xf7\x06\xf7\x17\xe1\x26"
+"\xfb\x2f\x3d\x76\x40\x64\x54\x1f\x58\x67\x56\x72\x40\x1b\x2f\x47\xb7\xc7\xaf\xa3\xa6\xa9\xa7\xa1\x74\x6d\x86\x8a\x86\x8a\x85\x1f"
+"\x88\x80\x8a\x83\x88\x1a\x75\xa3\x7b\xaa\xa4\xa4\x95\x9c\x99\x1e\xac\xb1\x9f\xd0\xd7\x1a\x95\x07\x0e\xf8\xa0\xf8\xe0\x15\x63\x76"
+"\x3b\xfb\x2f\xfb\x2e\xa0\x3a\xb3\xb4\x9f\xd7\xf7\x32\xf7\x32\x77\xd9\x62\x1f\xfb\x13\xf7\x0a\x15\xfb\x5d\xfb\x35\xfb\x34\xfb\x5c"
+"\xfb\x5a\xf7\x35\xfb\x35\xf7\x5a\xf7\x5b\xf7\x35\xf7\x34\xf7\x5b\xf7\x5a\xfb\x35\xf7\x36\xfb\x58\x1f\x33\x2e\x15\xfc\x42\x07\x61"
+"\x90\x84\xb1\x88\x1e\xa0\x65\xfb\x70\xb1\xa7\x06\xaa\x8c\x91\x92\x8a\xaf\x08\xf7\xba\x07\xb5\x8a\x8c\x67\x8d\x1e\x52\xa8\x06\xda"
+"\x91\xb3\x9e\xa8\xb8\x08\xf7\x8d\x93\x15\xf7\x04\xc2\x30\xfb\x4f\x47\x80\x48\x79\x63\x1f\x51\x70\x62\x72\x45\x1b\x21\x56\xe4\xf7"
+"\x46\xf7\x43\xc2\xe9\xf3\x1f\x0e\xf8\x1d\xf8\xe0\x15\x80\x55\x6a\x77\x3e\x8c\x08\x62\xec\xfb\xf8\xc8\xf8\x6a\x07\x6d\xf7\x0a\x21"
+"\x0a\xf8\xae\xf7\x3d\x15\xfb\x75\x06\x99\xa8\x94\x94\xc2\xb0\x08\xf7\x0d\xdc\xa9\xb3\xd7\x1a\xe1\x4b\xc9\x32\x35\x4d\x4e\x36\x1e"
+"\x7d\xc8\x07\x8a\x92\x8b\x8f\x8f\x1a\xc7\xae\xb3\xc0\xc1\xb1\x61\x4f\x4e\x73\x6c\x2d\x4e\x1e\x3c\x58\x66\x5a\x54\x1a\x88\x8c\x85"
+"\x8c\x84\x1e\xf7\xb5\x06\xfb\x1e\xf8\xe0\x21\x0a\xf7\xca\xf8\x62\x15\x8c\x9d\x8c\x93\x8e\x97\x08\xa9\x94\xa8\x9e\xb0\x1b\xbe\xab"
+"\x6b\x59\x6c\x82\x76\x78\x7e\x1f\x7c\x76\x74\x83\x75\x1b\x88\x84\x8c\x8c\x81\x1f\x82\x60\xac\x06\xd0\xb2\x6b\x51\x58\x65\x66\x56"
+"\x6b\x70\x98\xa2\x7b\x1f\x80\x9a\x87\x9d\xab\x1a\x55\x80\x8a\x77\x05\x46\xc7\x58\xdc\xe3\xc9\xc4\xdd\xc6\x71\xb0\x55\x9d\x1e\xbb"
+"\xa1\x9f\xa9\xbc\x1a\xd6\x4f\xc2\x3a\x58\x5d\x74\x66\x75\x1e\x80\x77\x86\x78\x89\x6a\x08\xf7\x24\xf7\x88\x21\x0a\xf8\xae\xf7\xb1"
+"\x15\x40\xf7\xc8\x53\x06\xfb\x63\xfb\xc8\x05\x59\xf7\x64\xfb\x09\xc2\xf7\x09\xd6\x07\xfb\x16\xf7\xab\x15\xfb\x79\xfb\x2c\x07\xf7"
+"\x24\xf8\x39\x21\x0a\xf7\xa1\xf8\xdd\x15\xfb\x9e\xb8\x07\xbf\x95\xac\xa8\xba\x1b\xc3\xb1\x62\x4f\x31\x69\x5a\x4d\x57\x68\xad\xbc"
+"\x8a\x1f\x5e\x7f\x05\x41\x8f\xbd\x5c\xd6\x1b\xe8\xce\xd5\xf1\xea\x4e\xcc\x34\x5c\x70\x7e\x6c\x75\x1f\xf7\x19\xf7\x5d\xbd\x07\xfb"
+"\x07\xf7\x0d\x21\x0a\xf8\x9c\xf8\x7c\x15\xd1\x7e\x61\xaf\x49\x1b\x51\x53\x67\x56\x72\x1f\x78\x63\x83\x5a\x46\x1a\x41\x96\x54\xa0"
+"\x65\x1e\x61\xa4\xbb\x6f\xbd\x1b\xde\xc9\xd1\xe7\xe2\x53\xc8\x3c\x58\x67\x74\x5e\x76\x1f\x8a\x96\x8b\x8c\x96\x1a\xf7\x00\xb4\xcd"
+"\xcd\xa5\xa1\x7f\x77\x96\x1e\x91\x81\x8d\x83\x91\x72\x08\x3c\x2d\x15\xc0\xad\x5e\x44\x49\x69\x60\x58\x53\x62\xbd\xcf\xc8\xb4\xb9"
+"\xc1\x1f\x95\xf7\xda\x21\x0a\xf7\x82\xf8\xdc\x15\x59\xf7\x92\x07\x24\xfb\x0e\x3c\xfb\x38\x79\xfb\x16\x08\xce\x06\xa4\xf7\x1f\xc2"
+"\xf7\x0f\xf7\x03\xf7\x37\x08\xb4\x07\xfb\x2a\xf7\x0e\x21\x0a\xf8\x5e\xf8\x02\x15\x9c\x92\x94\x90\x93\x90\x08\xa5\x9d\x9a\xab\xb1"
+"\x1a\xd4\x55\xbd\x3d\x3b\x52\x58\x44\x59\xa1\x6a\xbc\x74\x1e\x76\x84\x7f\x85\x81\x84\x08\x6d\x77\x7a\x67\x61\x1a\x3a\xc8\x52\xe2"
+"\xe2\xca\xc5\xdc\xc7\x70\xb0\x51\x9f\x1e\x4e\xf7\x51\x15\xc0\xac\x6b\x56\x59\x67\x68\x59\x58\x6b\xac\xbf\xbe\xac\xad\xbd\x1f\x88"
+"\xfb\x6b\x15\xc6\xad\x68\x50\x53\x65\x63\x55\x54\x64\xb3\xc3\xc4\xb1\xb0\xc2\x1f\x91\xf8\x02\x21\x0a\xf7\x9c\xf7\x69\x15\x90\x70"
+"\x8f\x7e\x94\x7c\x08\x6e\x9e\xb1\x78\xb4\x1b\xaf\xae\x98\xa2\xa4\x1f\xba\xb5\xa0\xcb\xf3\x1a\xcf\x80\xc6\x79\xae\x1e\xbc\x71\x5f"
+"\xa6\x55\x1b\x37\x4c\x48\x2f\x34\xc1\x4f\xda\xc1\xad\xa0\xba\xa2\x1f\x89\x3b\x85\x68\x7c\x6e\x08\x67\x78\x6f\x77\x6a\x1b\x66\x73"
+"\xa2\xb7\x80\x1f\xd4\xf7\xe0\x15\xc2\xb3\x59\x46\x4b\x65\x5f\x54\x53\x6b\xb5\xd5\xcf\xac\xb6\xc0\x1f\x99\xf7\x2b\x21\x0a\xf8\x74"
+"\xf8\xe6\x15\x61\x66\x79\x69\x72\x1f\x6f\x65\x7d\x50\x33\x1a\x2e\x9e\x43\xac\x63\x1e\x71\xa2\xac\x7b\xae\x1b\xb3\xad\x9c\xad\xa5"
+"\x1f\xa8\xaf\x9b\xce\xdd\x1a\xf7\x3a\x5c\xdd\x2c\x1e\x89\x64\x15\xc4\xa7\x46\xfb\x20\xfb\x17\x70\x4a\x54\x53\x6b\xd6\xf7\x18\xf7"
+"\x17\xa8\xce\xc3\x1f\xfb\x75\xac\x15\x86\x5d\x64\x6e\x51\x8a\x08\x63\xde\xfb\xf6\xc7\xf8\x6a\x07\xf5\xf7\x0a\x21\x0a\x29\x0a\xb8"
+"\x22\x15\xfc\x78\x30\xf7\xf9\x2c\xc1\x07\xe1\x8a\xa2\x99\x97\xc7\x08\x0e\x29\x0a\xf7\x2c\xfc\x9f\x15\x49\xfb\xd1\x07\x8a\x94\x8b"
+"\x93\x8f\x1a\xc7\xb0\xbc\xe2\xc4\x1e\xdf\xc1\xa4\xac\xc4\x1a\xc4\x6c\xb2\x5d\x5c\x6f\x66\x4e\x86\x8b\x85\x8c\x81\x1e\x33\x93\x05"
+"\x8a\x94\x8b\x92\x90\x1a\xe2\xd0\xcb\xe9\xed\xd2\x49\x31\x4f\x71\x5d\x4d\x5c\x1e\x78\x7c\x73\x7a\x6c\x77\x5d\x6b\x7f\x81\x82\x78"
+"\x08\x0e\x33\x0a\xfb\x32\xfb\x83\x15\x8d\xb2\x91\xa0\x99\xa1\x08\xaf\xa4\xbc\xa2\xc1\x1b\xe3\xcc\x51\x3c\x5d\x78\x6b\x64\x75\x1f"
+"\x9c\x81\x96\x83\x92\x85\x08\xa2\x76\x98\x6b\x64\x1a\x34\x48\x4d\x2c\x31\x4a\xc2\xd8\x91\x8b\x94\x8c\x93\x1e\xdd\x9c\x05\x65\x8d"
+"\x7e\x91\x7e\x1e\x73\x97\xa3\x7d\xa8\x1b\xb7\xaa\xac\xbb\xc0\x6c\xa8\x55\x7d\x7f\x8a\x88\x72\x1f\xc9\x07\x88\xa0\x95\x8b\x92\x1b"
+"\xc0\xaa\xa7\xb9\xbe\x73\xa7\x60\x73\x77\x82\x79\x80\x1f\x82\x7d\x89\x7e\x8a\x68\x08\x0e\xf8\x1e\xf8\x79\x15\xfb\x0f\xfb\x4c\x05"
+"\xf7\x0f\x06\x91\xf8\x29\x36\x0a\xf7\x2b\xfc\x29\x15\x49\x40\xfb\x0a\x39\xf7\x0a\xfb\x64\xcd\x07\xf7\x6e\xf7\xc5\x05\xd3\xfb\xc5"
+"\x06\x0e\xf8\x24\xf9\x56\x22\x0a\x2d\x0a\xf7\x5c\xf7\x5b\xf7\x34\xf7\x35\xf7\x5b\x27\x0a\xfb\x55\x1f\xfb\x25\x21\x15\xf7\xad\x4a"
+"\xfb\x66\x2d\x06\x9a\xad\x9c\x8f\xaa\x1b\xed\xcd\x48\x27\x20\x43\x3f\x24\x38\x54\xbe\xdc\x87\x1f\xd2\x9e\x05\x73\x8c\x84\x8f\x7f"
+"\x1e\x6e\x96\xa5\x79\xaa\x1b\xc0\xa9\xb6\xd8\xb1\x87\x9c\x80\x9e\x1f\xa0\x7d\x72\x99\x71\x1b\x62\x72\x70\x55\x81\x1f\x44\x06\x0e"
+"\xf8\x19\xf8\x0c\x15\x5d\x69\x61\x53\x4e\xae\x5d\xbb\xb6\xa6\xb1\xc7\xcd\x6f\xb4\x5e\x1f\x96\xf7\xde\x24\x0a\xc5\xfb\x7f\x15\x85"
+"\xa3\x86\x9a\x89\x91\x08\x9e\x82\x79\x95\x72\x1b\x67\x71\x77\x64\x7f\x1f\x82\x72\x89\x7a\x86\x58\x08\xa9\xae\xa2\x95\xb3\x1b\xe0"
+"\xc8\x49\x30\x2a\x47\x42\x30\x56\x57\xa7\xb6\x6f\x1f\x73\xb1\x7f\xc3\xdb\x1a\xd4\x94\xb9\xa2\xb7\x1e\xc2\xa7\xc5\xae\xc9\x1b\xba"
+"\xb4\x78\x6c\xa2\x1f\x98\x7a\x90\x7d\x91\x6b\x08\x0e\x38\x0a\x27\x0a\xfb\x55\x1f\xfb\x45\x20\x15\xf7\xe8\x59\x06\x22\xfb\x42\x5f"
+"\xfb\x02\x74\xfb\x27\x08\x2c\x06\x9e\xf7\x1a\xd2\xf7\x31\xee\xf7\x11\x08\xfb\x9a\x06\x0e\xf8\x22\xf8\xbb\x15\x62\x72\x6e\x5c\x5b"
+"\xa3\x6e\xb4\xb4\xa7\xab\xb9\xba\x71\xa7\x61\x1f\x87\xfb\x67\x15\x5b\x6c\x6a\x59\x57\xac\x67\xba\xba\xab\xaf\xbf\xc0\x6d\xa9\x59"
+"\x1f\x91\xf8\x02\x24\x0a\xdb\xfb\xe0\x15\xc4\x6a\x9e\x6d\x56\x1a\x34\x45\x49\x2e\x2f\x46\xcb\xe0\xc5\xa6\xb3\xc2\xa1\x1e\x62\x9f"
+"\x74\xb1\xb9\x1a\xd5\xcd\xc4\xdf\xe0\xc8\x53\x3f\x5a\x79\x70\x5b\x70\x1e\x0e\xf8\x14\xf8\xbb\x15\x60\x70\x65\x4f\x49\xa7\x62\xb8"
+"\xb9\xad\xb5\xc3\xc8\x68\xb9\x5b\x1f\x9b\xf7\x2f\x24\x0a\x40\xfc\x67\x15\x58\x95\x9d\x76\xab\x1b\x9b\x9d\x92\x98\x97\x1f\xa5\xa7"
+"\x95\xab\x90\xd5\x08\x70\x70\x6d\x80\x61\x1b\x38\x4f\xcd\xe7\xeb\xcf\xd2\xe7\xbe\xb4\x77\x64\xa9\x1f\xa9\x65\x9a\x4c\x35\x1a\x43"
+"\x7f\x4b\x77\x68\x1e\x55\x6c\x55\x6b\x4f\x1b\x5e\x62\x9f\xaa\x75\x1f\x7f\x9c\x86\x9c\x85\xae\x08\x0e\xf8\x78\xf8\xb9\x15\x5d\x73"
+"\x4a\xfb\x0f\xfb\x0e\xa6\x41\xb9\xb8\xa2\xcb\xf7\x0f\xf7\x16\x72\xce\x5d\x1f\x37\xf7\x31\x24\x0a\x28\x22\x15\xfc\x77\x35\xf7\xf6"
+"\x38\xc1\x07\xce\x8a\xa9\xa1\x91\xc1\x08\xf7\x8f\x92\x15\xf3\xc0\x36\xfb\x3d\xfb\x35\x53\x34\x23\x25\x54\xe5\xf7\x3a\xe5\x9a\xc9"
+"\xab\xb4\x1f\xad\xa6\xb3\x9e\xb9\x1b\x0e\xc2\xf8\x22\xf9\x0d\x15\xf7\x6b\xfb\x6f\x05\xfc\xd6\xfb\x18\xf8\xd6\x06\xfb\x6b\xfb\x74"
+"\x05\xf7\x47\x06\xf7\xaf\xf7\xb3\xfb\xaf\xf7\xb4\x05\x0e\x8a\xae\xf7\xf6\x15\x77\xf8\xe1\x07\x53\x46\x75\x56\x8c\x4f\xc6\xe0\xf7"
+"\x04\xdf\xe0\xa1\x36\xa4\x26\xd7\x45\x3d\x0a\xf7\x45\xf7\x69\xf7\xf6\x15\xc1\xcd\xa4\xc7\x89\xc5\x50\x35\xfb\x05\x35\x37\x75\xde"
+"\x74\xf6\x3b\xcd\x32\x8d\xc7\x68\xde\x5f\xb2\x08\xf8\xe2\x06\x53\x47\x74\x54\x8d\x50\xc6\xe0\xf7\x04\xe0\xdf\xa1\x37\xa2\x25\xd8"
+"\x46\x3d\x0a\xfc\x11\xf7\x82\xf9\x14\x15\xcd\x55\xc6\x72\xc6\x8d\x36\xc4\x36\xf7\x05\x73\xe1\x73\x35\x3f\x26\x2e\x46\xc8\x89\xde"
+"\xae\xb3\xb7\x08\xfc\xe1\x07\x46\xc3\x52\xa2\x51\x89\xe1\x50\xdf\xfb\x03\xa2\x35\xa4\xe1\xd9\xf2\xe6\xce\x4e\x8d\x36\x68\x65\x5f"
+"\x08\x0e\x30\xf7\x0f\xf8\xe9\x15\x33\xfb\x11\xf8\x04\xfb\x6b\x38\xfb\x04\xf8\x0e\x58\xfb\x40\xf7\xeb\x3d\xfb\x09\x05\x0e\xe0\xae"
+"\xf8\x4c\x15\xfb\x50\x07\xf8\xb2\xcd\x3b\xfb\x46\xf8\x1d\xf7\x62\xfc\x1d\xf7\x61\xdb\xfb\x46\x05\x0e\x30\xf7\x0f\xe9\x15\xf7\xd9"
+"\xf7\xa9\xd9\xfb\x08\xf7\x40\xf7\xea\xfc\x0e\x59\xde\xfb\x05\xfc\x04\xfb\x6b\x05\x0e\xda\xae\xf8\x04\x15\x5e\x07\xf7\xff\x9a\x66"
+"\x5b\x61\x47\x71\x54\x19\xf7\x2c\xcc\xc4\xa1\xd5\xa2\xf7\x0a\xae\xf7\x19\xa8\xc4\x8f\xfb\x7f\xb2\x27\xaa\xfb\x94\xf7\x03\x08\x87"
+"\x07\xa6\x54\xb4\x4a\xb0\x5b\x08\x0e\xe3\xf8\xda\xf7\x98\x15\x56\x56\x05\x68\x68\x7e\x74\x6f\x1a\x58\xb5\x61\xbe\xac\x9e\x97\xb7"
+"\xb1\x1e\xf7\x78\xf7\x9e\xfb\x78\xf7\x98\x05\xb6\x66\x79\x96\x6b\x1b\x59\x61\x61\x5a\x71\x9a\x6f\xab\x6d\x1f\xbd\x59\x05\xfc\x3b"
+"\x06\x5d\x81\x89\x82\x76\x1f\x70\x7e\x77\x6a\x6b\x1a\x6b\x9f\x6a\xa6\x7e\x1e\x81\xa0\x96\x89\xb8\x1b\x0e\xe4\xae\xf7\xfe\x15\x6a"
+"\xf9\x11\xfb\x5c\x07\xf7\x6f\xf7\x6c\xfb\x6f\xf7\x6d\x05\xfb\x5c\x07\x0e\xe4\xae\xf8\x24\x15\xfb\x04\xf9\x13\xfb\x33\x07\xf7\x6f"
+"\xf7\x6b\xfb\x6f\xf7\x6d\x05\xfb\x35\x07\x0e\x86\xf7\xca\xf8\x46\x15\xfb\x45\xf7\x99\x25\x07\xf7\x78\xf7\x53\xfb\x78\xf7\x53\x05"
+"\x24\x07\xfb\xff\x16\xfb\x45\xd7\xf7\x45\x07\xfb\x33\x16\xfb\x45\xb8\xf7\x45\x07\xfb\x1b\x16\xfb\x45\xa3\xf7\x45\x07\x0e\xad\xf8"
+"\x2c\xf8\x7c\x15\xfb\xb3\xf7\x43\x23\x92\x07\xb0\xee\xf2\xf1\xf7\x00\xb6\xfb\x07\xba\x28\xf1\x69\xf3\x08\x84\x21\x06\xfb\xa6\x16"
+"\xfb\xb3\xd2\xf7\xb3\x07\xfb\x34\x16\xfb\xb3\xbd\xf7\xb3\x07\xfb\x21\x16\xfb\xb3\xac\xf7\xb3\x07\xfb\x13\x16\xfb\xb3\x9e\xf7\xb3"
+"\x07\x0e\x80\xae\xf8\x7f\x15\xfb\xb6\xf8\x93\x2a\x07\xf7\x89\xf7\x86\xfb\x89\xf7\x86\x05\x2a\x07\x0e\xe0\xae\xf8\xf6\x15\xf7\xba"
+"\xfb\xa4\xfb\xba\xfb\x94\xf9\xea\xf7\x8c\x05\xfd\x70\xf7\x63\x15\xf9\x12\xfb\x63\xfc\x39\x95\x05\x0e\xe0\xae\xdd\x15\xf9\xea\xf7"
+"\xab\xfd\xea\xf7\x8d\xf7\xba\xfb\x95\x05\xfb\x40\xfb\x5b\x15\xf7\x6d\xf7\x59\xf8\x39\x95\x05\x0e\xd9\xae\xf9\x44\x15\xf7\x5d\xfb"
+"\xea\xfb\x5d\xfb\xea\xf9\xe3\xf7\xea\x05\x0e\xe6\xf8\xb6\xf8\xb8\x15\x38\xfb\xb7\x07\x60\x8a\x05\x3b\x6a\x9d\xbd\x7c\x1f\x84\xa0"
+"\x8a\x95\xb7\x1a\x63\xfb\x76\x06\x8a\x2b\x94\x6b\xb1\x61\xb0\x67\xae\x80\xd8\x8d\x08\xf7\xcf\x38\x06\xf7\xf3\xf7\x7d\x05\x0e\xe7"
+"\xf8\xb5\xf7\x24\x15\xf7\xf3\xf7\x7b\xfb\xf3\xf7\x7d\x05\x38\xfb\xcf\x07\x3e\x8d\x69\x80\x65\x67\x08\x65\x61\x83\x6f\x28\x1a\xfb"
+"\x78\xb3\x97\x07\xf2\xab\xa9\xf7\x01\x1e\xb1\x06\xf7\xb7\x06\x0e\xfc\x0c\xf8\x41\xf7\xee\x15\xfb\x9e\xf8\x50\x05\xfb\x24\xfb\x14"
+"\xfc\xed\xf7\x14\xfb\x25\x07\x0e\xb7\xae\xf8\xa4\x15\xfc\x01\xf8\x1f\x2e\x96\x07\xef\xf7\x2f\xf7\x17\xe2\xf7\x44\xa9\x08\x93\x07"
+"\xfb\x3b\xa1\xfb\x22\xe9\x29\xf7\x2f\x08\x80\x2e\x06\x0e\x88\xf8\x2e\xf9\x1c\x15\xfb\x32\xfc\x0b\xfb\xb7\xf8\x0b\xfb\x30\xf7\x14"
+"\x07\xf7\x9c\xf7\xc1\xfb\x9c\xf7\xc4\x05\x22\x75\x15\xf7\x8e\xfb\xae\xfb\x8e\xfb\xad\x05\xf7\x34\xfc\x0a\xf7\x87\xf8\x0a\x07\x0e"
+"\x88\xf8\x2b\xf9\x1c\x15\xfb\x32\xfc\x08\xfb\xb7\xf8\x08\xfb\x30\xf7\x16\x07\xf7\x9d\xf7\xc0\xfb\x9d\xf7\xc5\x05\x7a\x75\x15\xf7"
+"\x8e\xfb\xaf\xfb\x8e\xfb\xac\x05\xf7\x34\xfc\x09\xf7\x87\xf8\x09\x07\x0e\xa7\xf9\x30\xf8\xe1\x15\x47\x36\x05\xfc\x15\x06\xfb\x48"
+"\xfb\x4c\x05\xfb\x13\xf7\xf0\x2f\x07\xf8\x55\xf7\x51\x05\xf7\x09\x07\xfb\x37\xf7\x2a\x15\xf7\x21\xfb\x31\xfc\x23\xfb\x3b\xc6\xd8"
+"\x05\xfc\x32\x06\xf7\x3c\xf7\x43\x05\xf8\x15\x06\x0e\xa7\xf9\x31\xf0\x15\xf7\x37\xf7\x4b\x05\xf7\x0a\x07\xfc\x54\xf7\x51\x05\x2f"
+"\xfb\xf1\xfb\x13\x07\xf7\x48\xfb\x4e\x05\xf8\x16\x06\xd0\x56\x15\x4f\xd3\x05\xfc\x16\x06\xfb\x3c\xf7\x45\x05\xf8\x33\x06\x50\xd7"
+"\xf8\x22\xfb\x3b\x05\x0e\xfb\x23\xf7\xaf\xf9\x1f\x15\x22\xfb\x8c\xfb\xe9\x07\xdd\x3a\x05\xf7\x3a\x7a\x06\xdf\x4c\xf7\xba\xf7\xab"
+"\x05\xfb\xf6\xfb\x5b\x15\xec\xfb\x8c\xf7\xba\xf7\x8c\xd9\x07\xf7\x97\xfb\x77\x05\x0e\xfb\x23\xf7\xaf\xb7\x15\xf8\x0e\xf7\xd9\xfb"
+"\xba\xf7\xa9\x37\x4c\x05\x7a\xfb\x3a\x07\x39\x3b\x05\xfb\xe5\xf7\x8c\x07\xa3\xf7\xd4\x15\xec\x07\xf7\x97\xfb\x83\xfb\x97\xfb\x75"
+"\x05\xdb\xfb\x8c\xf7\xb3\x07\x0e\xae\xf8\xcf\xf8\xfa\x15\x30\xfc\xa6\x07\xc9\xfb\x2f\x47\xfb\x18\xcf\x4a\x05\xf8\x62\x2b\x06\xf7"
+"\xa7\xf7\x9f\x05\xfb\x8e\xf7\x6b\x15\xf7\x4e\xfb\x51\xfb\x54\xfb\x4a\x05\xbd\xfc\x9d\x07\xce\xf7\x18\x55\xf7\x18\x05\xf8\x96\x06"
+"\x0e\xae\xf8\xcf\xd6\x15\xf7\xa1\xf7\xa3\xfb\xa7\xf7\x9f\x05\x2c\xfc\x62\x07\x47\x49\xcf\xfb\x17\x47\xfb\x30\x05\xf8\xac\x06\x9e"
+"\x6a\x15\xc4\xfc\x96\x07\xc1\xf7\x18\x48\xf7\x17\x05\xf8\x9d\xbe\x06\xf7\x54\xfb\x4a\x05\x0e\x3c\xf8\x19\xf8\xb2\x15\xf7\x0d\x07"
+"\xf7\xcb\xfb\xd1\xfb\xcb\xfb\xd1\x05\xf7\x0c\xfb\xf6\x07\x8f\x69\x96\x77\xa3\x75\x08\x61\xba\xf7\x01\x6d\xf4\x1b\xf2\xec\xaa\xc2"
+"\xcd\x1f\xd9\xcb\xb9\xeb\xee\x1a\xe1\x69\xde\x4d\xcb\x1e\xd2\x46\x21\xb3\xfb\x0b\x1b\x2a\x22\x70\x66\x5a\x1f\x6c\x74\x7e\x74\x86"
+"\x65\x08\x0e\xf6\xf8\x94\xf7\xf6\x15\xfb\x0d\xf7\x46\x05\xfb\xf8\x06\xf7\x16\xfb\x51\xfb\x16\xfb\x4c\x05\xf7\xf8\x06\xf7\x0d\xf7"
+"\x3f\x05\xf7\x6f\x06\x73\x73\x81\x71\x68\x1a\x67\x96\x70\xa2\x74\x1e\xbf\xf5\xc0\xc1\xd6\xa3\x46\x9c\x48\xd2\x5f\xf0\x08\x73\x6f"
+"\x81\x70\x67\x1a\x69\x95\x72\xa3\x6f\x1e\xfd\x1c\x3e\x0a\x5b\x06\x74\xf7\x2e\x15\xbd\x2e\x0a\x59\x06\x76\x3e\x0a\x59\x06\x75\xf7"
+"\x2e\x15\xbc\x2e\x0a\x5a\x06\xfb\x89\x73\x15\xbc\x06\x26\xfb\x2c\x05\x5b\x06\xf7\x4a\xf7\x2c\x15\xbd\x06\x26\xfb\x2c\x05\x58\x06"
+"\xf7\x4c\xf7\x2c\x15\xbc\x06\x25\xfb\x2c\x05\x5a\x06\xf7\x4b\xf7\x2c\x15\xbb\x06\x25\xfb\x2c\x05\x5b\x06\x0e\x47\xf8\x7e\xf7\x9f"
+"\x15\x73\x6e\xf7\x11\x22\x05\x67\x86\x63\x5e\x68\x1a\x94\xa5\x9c\x8e\xa2\x1b\xbc\xc1\x82\x7c\xb7\x1f\x93\x97\x05\x68\xcc\x7a\xc5"
+"\xbf\x1a\x92\x8c\x96\x8c\x99\x1e\x68\x83\x6b\x62\x87\x5f\x08\xfb\xd4\xcc\x15\x96\xcd\xb6\x8e\xc5\x1b\xfb\x97\xf7\x6e\x3c\x88\x55"
+"\x87\x67\x84\x19\xf7\x44\xf7\x66\x15\x6d\x95\x24\x92\x68\x1e\xf7\x97\xfb\x6d\x05\x81\xbc\x85\xcb\xb6\x1a\x96\x07\x0e\xa5\xf8\x87"
+"\xf7\xfc\x15\x69\xf7\x35\x07\x7e\x78\x85\x7a\x74\x1a\x71\x90\x7c\x99\x7a\x1e\xa3\xb8\xd5\xc4\xd3\xa9\x08\x97\x07\x35\xad\x65\xa8"
+"\x5d\xce\x08\x7d\x79\x87\x7f\x71\x1a\x73\x8f\x7a\x99\x71\x1e\xfb\xb1\xfb\x2b\x15\xc0\xc5\xa3\xa1\xba\xb1\x08\xfb\xeb\x06\x5b\x61"
+"\x5c\x5d\x72\x6d\x08\x8a\xf7\xa6\x15\xbb\x56\xc1\x54\x9e\x7c\x08\xf7\xeb\x06\x66\xa8\x57\xbf\x67\xb5\x08\x0e\x47\xf8\x7e\xf8\x3d"
+"\x15\xf7\x11\xf4\x8f\x5f\xab\x61\xae\x83\x19\x8a\x99\x8a\x96\x92\x1a\xbd\x9d\xc9\xad\xca\x1e\x83\x97\x05\x7b\x5d\x59\x82\x60\x1b"
+"\x6f\x79\x8e\x95\x6f\x1f\x68\xb3\x5e\xaf\x86\x1e\xfb\x11\x22\x05\xfc\x44\xfb\x63\x15\xb0\x84\xc1\x87\xd9\x89\xf7\x97\xf7\x6d\x18"
+"\x48\x8c\x73\x8d\x3f\x97\x08\xf7\x43\xfb\x67\x15\x96\x07\xb6\x91\xcc\x95\xbc\x1e\xfb\x97\xfb\x6e\x05\x84\x68\x81\x24\x6d\x1a\x0e"
+"\xbc\xf7\xbb\xf9\x5b\x15\x6d\x58\x7e\x61\x5c\x1a\x5f\x91\x74\xa0\x61\x1e\x95\x6a\x7d\x8e\x7a\x1b\x46\x55\x75\x56\x51\x1f\xf7\x99"
+"\xfb\x6e\x05\xb6\xbd\xc1\xa2\xbd\x1b\xb2\xbe\x73\x61\xbc\x1f\xf1\x34\x47\x80\x5b\x6e\x44\x42\x19\x9c\xdc\xb6\x90\xc6\x1b\xcd\xbe"
+"\x84\x7c\xbd\x1f\x76\xb6\x7e\xad\x7f\xb7\x08\x81\xb0\x7f\xe9\xb5\x1a\x90\x8c\x97\x8c\x9b\x1e\x8c\x8e\x8b\x90\x92\x1a\x5c\x50\x6d"
+"\x44\x55\x1a\x8c\x77\x26\xe0\x05\x42\xc9\x75\xb1\xcb\x1a\xb6\x96\xb1\xa6\xb7\x1e\x0e\xf7\x14\xae\xf8\xb8\x15\x9b\x25\xbe\x46\xdb"
+"\x6b\x3b\x6e\x53\x3e\x80\x2a\x08\xf7\xe6\x06\x93\xc6\xa9\xc3\xb5\xb0\x08\xa2\xa7\xbe\x97\xcf\x1b\xf7\x1a\x06\x5d\x57\x79\x57\x82"
+"\x25\xe5\xf7\x04\xeb\xda\xe0\xaa\x25\xb6\x36\xd1\x37\xf7\x02\x8d\x37\xa8\x3a\xb5\x62\x08\xfb\x18\x06\x40\x8a\x5e\x96\x69\xa7\x64"
+"\xac\x6d\xc6\x85\xc3\x08\x0e\xbc\xf8\xbd\xf7\x59\x15\x6e\xbc\x80\xad\xb7\x1a\xc6\xa5\xb6\xd2\xc7\x1e\xf0\xe0\x8a\x78\x05\x55\xa9"
+"\x43\xba\x50\x1e\x89\xa3\x8b\x95\x98\x1a\xf7\x02\xa4\xf7\x00\xb6\xd9\x1e\x7b\x56\x5a\x84\x4a\x1b\x51\x64\x90\x9c\x34\x1f\xd3\x42"
+"\xba\x6e\xcf\x81\x25\x33\x18\x62\x5b\x56\x72\x65\x1b\x59\x55\xa2\xb6\x59\x1f\xfb\x98\xfb\x6f\x05\x57\xc6\xc0\x75\xd0\x1b\x9b\x99"
+"\x8e\x96\xac\x1f\x77\x62\x84\x70\x63\x1a\x5a\x94\x6c\xad\x4d\x1e\x0e\x83\xf9\xb0\xf7\xf4\x15\x30\xa3\x64\xaf\x69\xe4\x7d\xb1\x87"
+"\x92\x7c\x98\x08\x97\x7e\x79\x92\x79\x1b\x63\x6b\x6c\x64\x79\x93\x78\x96\x7e\x1f\xac\x67\xb0\x79\xf7\x0a\x65\x98\x87\x9b\x86\x98"
+"\x86\xfb\x52\x92\x33\x99\xfb\x44\xbf\x08\x9e\x49\x6b\x91\x6a\x1b\x49\x62\x63\x4a\x4b\xb4\x63\xcc\xac\xab\x91\x9e\xce\x1f\xf7\x45"
+"\xbf\xe6\x9a\xf7\x4e\x91\x2d\x6c\x77\x84\x61\x7a\x08\x50\x73\x69\x65\x62\x1a\x66\xab\x6c\xb3\x9d\x9d\x92\x97\x98\x1e\x9a\x98\x8f"
+"\x92\x99\xb2\xad\xe4\xb2\xae\xe6\xa3\x08\x0e\xad\xf9\xda\xf7\xf2\x15\x28\xb4\x21\xf7\x04\x82\xd4\x08\x5a\x6b\x70\x5b\x57\x1a\x66"
+"\x9e\x6f\xb6\x70\x1e\xfb\x09\x8d\x50\x9f\x45\xcb\x08\xc9\x43\x70\x99\x5a\x1b\x69\x70\x80\x76\x75\x1f\x7a\x7a\x82\x7a\x7b\x5f\x7b"
+"\x62\x83\x83\x6c\x86\xaa\x85\x95\x81\x99\x62\x98\x66\x95\x75\x97\x7d\x08\x70\xa2\xab\x7c\xab\x1b\xb8\xb2\x9e\xba\xc1\x1f\xbd\xb6"
+"\x90\x8f\xa6\x99\x08\xa0\xb4\xc6\x98\xc2\x1b\xa1\x06\x5d\x6e\x7c\x72\x63\x1a\x57\xa5\x5e\xbc\x6a\x1e\x94\xd4\xf3\xf7\x01\xf0\xb6"
+"\x08\x0e\xe3\xdb\xf8\xb2\x15\x6f\x7b\x81\x79\x82\x90\x7d\x94\x7d\x1f\xc6\x31\x05\x9b\x72\x8d\x85\x82\x1a\x80\x8b\x8a\x7b\x71\x1e"
+"\x4d\x27\x05\x7d\x78\x8b\x8b\x81\x1a\x79\x9b\x7e\xa0\x1e\xf7\x88\x06\xb7\x8f\x8d\xae\xa9\x1f\xbb\xc6\xab\xb5\x99\x92\xbe\x8a\x19"
+"\xdc\x06\xa1\x96\x82\x7b\x82\x89\x84\x7e\x70\x1f\x86\x82\x89\x81\x85\x1a\x78\xac\x77\xaa\x9e\x9c\x94\xa1\xa3\x1e\xf6\xf0\x05\x9f"
+"\x9e\x94\x9b\x9d\x1a\x9e\x81\x9e\x7a\x9a\x1e\xfb\x0d\xf7\x02\x05\x97\x7e\x7a\x92\x7b\x1b\x64\x70\x7b\x75\x83\x8d\x84\x8e\x85\x1f"
+"\x9c\x6c\x8b\x8a\x7e\x1a\x79\x81\x84\x71\x1e\x39\x06\x5a\x8c\x81\x90\x68\xb5\x55\xcd\x18\x75\xa6\x82\x8f\x69\x89\x08\x0e\xf7\x17"
+"\xf7\x14\xf8\xfb\x15\x49\x70\x76\x56\x7a\x8d\x81\x94\x6f\x1f\xa9\x2d\x05\x95\x67\x8c\x86\x84\x1a\x84\x88\x7f\x86\x7c\x1e\x87\x80"
+"\x88\x82\x88\x82\x70\x31\x18\x86\x7b\x89\x7e\x7d\x1a\x71\x94\x76\x9a\x7f\x1e\x80\x99\x9b\x88\xb4\x1b\xf7\x70\x06\xd5\x8a\xa0\x97"
+"\xaf\xcc\xb2\xd0\x18\xc4\xab\x96\x94\xb2\x1b\xa0\x98\x81\x79\x83\x89\x7f\x87\x7d\x1f\x82\x6d\x85\x69\x7e\x1a\x6d\xa7\x70\xaa\x9f"
+"\x99\x93\xab\xaa\x1e\xf7\x24\xf7\x24\x05\xbb\xbe\x8b\x8b\xa0\x1a\xa0\x8a\x8d\x62\xb4\x1e\xfb\x28\xf7\x2b\x05\xaa\x6d\x7c\x94\x75"
+"\x1b\x68\x74\x71\x65\x7e\x8d\x7d\x8e\x7e\x1f\x9a\x55\x8b\x8b\x7f\x1a\x79\x7d\x82\x71\x6d\x7c\x97\xb6\x74\x1e\x60\xd9\x05\xcc\x68"
+"\x75\x98\x3d\x1b\x0e\xda\xf8\xc9\xf8\xe4\x15\xd0\x23\xce\x45\xf0\x41\xfb\x0c\x30\x67\x66\x3a\xfb\x09\x08\xc9\x06\xc8\xeb\xd9\xd5"
+"\xf7\x0a\xd6\xfb\x0b\xd8\x33\xe0\x59\xe1\x08\xfb\x60\x16\x9d\x65\xc3\x3f\xba\x5b\x08\xfc\x92\x5e\xf9\x0f\x06\x47\xbc\x3b\xe2\x61"
+"\xd2\x08\xfc\x51\xfb\xe2\x15\xf8\x92\x06\x6b\x71\x4e\x39\x71\x58\x08\xc3\x06\xb9\xd8\xd5\xda\xcf\xbb\x08\xfd\x0f\x06\x0e\xfb\x8e"
+"\x8b\x1c\x05\x46\x8b\x06\x8b\x0a\x8b\x0b\xf9\xa8\x14\xf9\xdb\x15\x9f\x13\x00\x20\x02\x00\x01\x00\x05\x00\x0c\x00\x12\x00\x16\x00"
+"\x1e\x00\x26\x00\x2b\x00\x30\x00\x37\x00\x3e\x00\x43\x00\x50\x00\x5a\x00\x63\x00\x69\x00\x6e\x00\x79\x00\x84\x00\x90\x00\x9d\x00"
+"\xa9\x00\xb3\x00\xba\x00\xc0\x00\xcc\x00\xd5\x00\xdc\x00\xed\x00\xfc\x01\x05\x01\x0c\x01\x11\xf9\x47\x15\x0b\x15\xfb\x5e\xfb\x37"
+"\x30\x0a\x15\xfb\x5f\xfb\x36\x0b\xf9\x55\x15\x0b\x15\xfb\x5e\xfb\x37\x2a\x0a\x0b\xfb\x35\xf7\x38\xfb\x55\x1f\x0b\xfb\x33\xfb\x5a"
+"\x0b\x3f\x0a\xf7\x37\x0b\x3c\x0a\xd9\xa9\xda\x2c\x0a\xf8\x24\xf9\x56\x24\x0a\x0b\x26\x0a\x3a\x0a\x0b\x2d\x0a\xf7\x5b\xf7\x5b\xf7"
+"\x35\xf7\x35\xf7\x5b\x0b\xc1\xc6\x1e\xd3\xcc\xde\xaf\xef\x1b\x0e\x26\x0a\xfb\x5d\xf7\x34\xfb\x35\x0b\x06\xf3\xfb\x2e\x05\x0b\x1f"
+"\xd2\x4a\xb1\x0b\x32\x0a\x38\x2d\x37\x0a\xda\xa9\xd9\x2c\x0a\x34\x0a\x38\x2d\x37\x0a\xda\xa9\xd9\x2c\x0a\x2a\x0a\x6a\x04\xd5\xdd"
+"\x6b\x57\xc4\x2f\x0a\x0b\xf8\x24\xf9\x56\x22\x0a\x2b\x0a\xf7\x57\x25\x0a\x0b\x3a\x0a\x6a\x04\xd5\xde\x6b\x57\xc3\x2f\x0a\x0b\x22"
+"\x0a\x2b\x0a\x27\x0a\xfb\x55\x1f\x0b\x39\x0a\xf7\x57\x25\x0a\x0b\x1a\xfb\x49\x3c\x0a\x0b\xf8\x24\xf9\x56\x15\xfb\x5e\xfb\x37\x2b"
+"\x0a\x0b\x22\x0a\xfb\x32\xfb\x5b\x3b\x0a\x0b\x3b\x0a\xf7\x57\x25\x0a\x0b\xfb\x5d\xf7\x34\xfb\x35\xf7\x5c\xf7\x5a\xf7\x35\xf7\x35"
+"\xf7\x5b\x0b\xfb\x27\xfb\x26\xfb\x48\xfb\x4a\xfb\x25\xf7\x26\xf7\x4b\x0b\xe9\x89\x4e\xaf\x35\xb6\x66\x08\x0e\xf7\x2e\x15\xbb\x2e"
+"\x0a\x0b\xf7\x58\xfb\x35\x0b", 24967
+};
diff --git a/dviware/dvisvgm/src/fonts/Makefile.am b/dviware/dvisvgm/src/fonts/Makefile.am
new file mode 100644
index 0000000000..4f455d1228
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/Makefile.am
@@ -0,0 +1,19 @@
+noinst_LTLIBRARIES = libbase14fonts.la
+
+libbase14fonts_la_SOURCES = \
+ Base14Fonts.cpp \
+ Base14Fonts.hpp \
+ Dingbats.cff.cpp \
+ NimbusMonoPS-Bold.cff.cpp \
+ NimbusMonoPS-BoldItalic.cff.cpp \
+ NimbusMonoPS-Italic.cff.cpp \
+ NimbusMonoPS-Regular.cff.cpp \
+ NimbusRoman-Bold.cff.cpp \
+ NimbusRoman-BoldItalic.cff.cpp \
+ NimbusRoman-Italic.cff.cpp \
+ NimbusRoman-Regular.cff.cpp \
+ NimbusSans-Bold.cff.cpp \
+ NimbusSans-BoldItalic.cff.cpp \
+ NimbusSans-Italic.cff.cpp \
+ NimbusSans-Regular.cff.cpp \
+ StandardSymbolsPS.cff.cpp
diff --git a/dviware/dvisvgm/src/fonts/Makefile.in b/dviware/dvisvgm/src/fonts/Makefile.in
new file mode 100644
index 0000000000..4d46348ce4
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/Makefile.in
@@ -0,0 +1,743 @@
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = src/fonts
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+LTLIBRARIES = $(noinst_LTLIBRARIES)
+libbase14fonts_la_LIBADD =
+am_libbase14fonts_la_OBJECTS = Base14Fonts.lo Dingbats.cff.lo \
+ NimbusMonoPS-Bold.cff.lo NimbusMonoPS-BoldItalic.cff.lo \
+ NimbusMonoPS-Italic.cff.lo NimbusMonoPS-Regular.cff.lo \
+ NimbusRoman-Bold.cff.lo NimbusRoman-BoldItalic.cff.lo \
+ NimbusRoman-Italic.cff.lo NimbusRoman-Regular.cff.lo \
+ NimbusSans-Bold.cff.lo NimbusSans-BoldItalic.cff.lo \
+ NimbusSans-Italic.cff.lo NimbusSans-Regular.cff.lo \
+ StandardSymbolsPS.cff.lo
+libbase14fonts_la_OBJECTS = $(am_libbase14fonts_la_OBJECTS)
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/Base14Fonts.Plo \
+ ./$(DEPDIR)/Dingbats.cff.Plo \
+ ./$(DEPDIR)/NimbusMonoPS-Bold.cff.Plo \
+ ./$(DEPDIR)/NimbusMonoPS-BoldItalic.cff.Plo \
+ ./$(DEPDIR)/NimbusMonoPS-Italic.cff.Plo \
+ ./$(DEPDIR)/NimbusMonoPS-Regular.cff.Plo \
+ ./$(DEPDIR)/NimbusRoman-Bold.cff.Plo \
+ ./$(DEPDIR)/NimbusRoman-BoldItalic.cff.Plo \
+ ./$(DEPDIR)/NimbusRoman-Italic.cff.Plo \
+ ./$(DEPDIR)/NimbusRoman-Regular.cff.Plo \
+ ./$(DEPDIR)/NimbusSans-Bold.cff.Plo \
+ ./$(DEPDIR)/NimbusSans-BoldItalic.cff.Plo \
+ ./$(DEPDIR)/NimbusSans-Italic.cff.Plo \
+ ./$(DEPDIR)/NimbusSans-Regular.cff.Plo \
+ ./$(DEPDIR)/StandardSymbolsPS.cff.Plo
+am__mv = mv -f
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CXXFLAGS) $(CXXFLAGS)
+AM_V_CXX = $(am__v_CXX_@AM_V@)
+am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
+am__v_CXX_0 = @echo " CXX " $@;
+am__v_CXX_1 =
+CXXLD = $(CXX)
+CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+ $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
+am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
+am__v_CXXLD_0 = @echo " CXXLD " $@;
+am__v_CXXLD_1 =
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo " CC " $@;
+am__v_CC_1 =
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
+SOURCES = $(libbase14fonts_la_SOURCES)
+DIST_SOURCES = $(libbase14fonts_la_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
+am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AM_LDFLAGS = @AM_LDFLAGS@
+AR = @AR@
+ASCIIDOC = @ASCIIDOC@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BROTLI_CFLAGS = @BROTLI_CFLAGS@
+BROTLI_LIBS = @BROTLI_LIBS@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
+CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
+CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
+CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
+CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATE = @DATE@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ETAGS = @ETAGS@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+FILECMD = @FILECMD@
+FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
+FREETYPE_LIBS = @FREETYPE_LIBS@
+GCOV = @GCOV@
+GENHTML = @GENHTML@
+GREP = @GREP@
+HAVE_CXX11 = @HAVE_CXX11@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+KPSE_CFLAGS = @KPSE_CFLAGS@
+KPSE_LIBS = @KPSE_LIBS@
+LCOV = @LCOV@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBCRYPTO_CFLAGS = @LIBCRYPTO_CFLAGS@
+LIBCRYPTO_LIBS = @LIBCRYPTO_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+TTFAUTOHINT_CFLAGS = @TTFAUTOHINT_CFLAGS@
+TTFAUTOHINT_LIBS = @TTFAUTOHINT_LIBS@
+VERSION = @VERSION@
+WOFF2_CFLAGS = @WOFF2_CFLAGS@
+WOFF2_LIBS = @WOFF2_LIBS@
+XMLTO = @XMLTO@
+XSLTPROC = @XSLTPROC@
+ZLIB_CFLAGS = @ZLIB_CFLAGS@
+ZLIB_LIBS = @ZLIB_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+dvisvgm_srcdir = @dvisvgm_srcdir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+noinst_LTLIBRARIES = libbase14fonts.la
+libbase14fonts_la_SOURCES = \
+ Base14Fonts.cpp \
+ Base14Fonts.hpp \
+ Dingbats.cff.cpp \
+ NimbusMonoPS-Bold.cff.cpp \
+ NimbusMonoPS-BoldItalic.cff.cpp \
+ NimbusMonoPS-Italic.cff.cpp \
+ NimbusMonoPS-Regular.cff.cpp \
+ NimbusRoman-Bold.cff.cpp \
+ NimbusRoman-BoldItalic.cff.cpp \
+ NimbusRoman-Italic.cff.cpp \
+ NimbusRoman-Regular.cff.cpp \
+ NimbusSans-Bold.cff.cpp \
+ NimbusSans-BoldItalic.cff.cpp \
+ NimbusSans-Italic.cff.cpp \
+ NimbusSans-Regular.cff.cpp \
+ StandardSymbolsPS.cff.cpp
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .cpp .lo .o .obj
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/fonts/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign src/fonts/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+clean-noinstLTLIBRARIES:
+ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
+ @list='$(noinst_LTLIBRARIES)'; \
+ locs=`for p in $$list; do echo $$p; done | \
+ sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
+ sort -u`; \
+ test -z "$$locs" || { \
+ echo rm -f $${locs}; \
+ rm -f $${locs}; \
+ }
+
+libbase14fonts.la: $(libbase14fonts_la_OBJECTS) $(libbase14fonts_la_DEPENDENCIES) $(EXTRA_libbase14fonts_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libbase14fonts_la_OBJECTS) $(libbase14fonts_la_LIBADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Base14Fonts.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Dingbats.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusMonoPS-Bold.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusMonoPS-BoldItalic.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusMonoPS-Italic.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusMonoPS-Regular.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusRoman-Bold.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusRoman-BoldItalic.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusRoman-Italic.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusRoman-Regular.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusSans-Bold.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusSans-BoldItalic.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusSans-Italic.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NimbusSans-Regular.cff.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/StandardSymbolsPS.cff.Plo@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+ @$(MKDIR_P) $(@D)
+ @echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
+
+.cpp.o:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
+@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $<
+
+.cpp.obj:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
+@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
+@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.cpp.lo:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
+@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ set x; \
+ here=`pwd`; \
+ $(am__define_uniq_tagged_files); \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+distdir: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(LTLIBRARIES)
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -f ./$(DEPDIR)/Base14Fonts.Plo
+ -rm -f ./$(DEPDIR)/Dingbats.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusMonoPS-Bold.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusMonoPS-BoldItalic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusMonoPS-Italic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusMonoPS-Regular.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusRoman-Bold.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusRoman-BoldItalic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusRoman-Italic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusRoman-Regular.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusSans-Bold.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusSans-BoldItalic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusSans-Italic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusSans-Regular.cff.Plo
+ -rm -f ./$(DEPDIR)/StandardSymbolsPS.cff.Plo
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f ./$(DEPDIR)/Base14Fonts.Plo
+ -rm -f ./$(DEPDIR)/Dingbats.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusMonoPS-Bold.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusMonoPS-BoldItalic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusMonoPS-Italic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusMonoPS-Regular.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusRoman-Bold.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusRoman-BoldItalic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusRoman-Italic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusRoman-Regular.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusSans-Bold.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusSans-BoldItalic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusSans-Italic.cff.Plo
+ -rm -f ./$(DEPDIR)/NimbusSans-Regular.cff.Plo
+ -rm -f ./$(DEPDIR)/StandardSymbolsPS.cff.Plo
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
+ clean-generic clean-libtool clean-noinstLTLIBRARIES \
+ cscopelist-am ctags ctags-am distclean distclean-compile \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags tags-am uninstall uninstall-am
+
+.PRECIOUS: Makefile
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/dviware/dvisvgm/src/fonts/NimbusMonoPS-Bold.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusMonoPS-Bold.cff.cpp
new file mode 100644
index 0000000000..4b1541c6e9
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusMonoPS-Bold.cff.cpp
@@ -0,0 +1,1636 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusMonoPS_Bold_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x12\x4e\x69\x6d\x62\x75\x73\x4d\x6f\x6e\x6f\x50\x53\x2d\x42\x6f\x6c\x64\x00\x01\x01\x01\x35\xf9"
+"\xbc\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x14\x04\x8c\x0c\x01\x33\x0c\x03\xf7\x02\x0c\x04\x39\xfc\x1d\xf9"
+"\x4e\xfa\x83\x05\x1c\x32\x32\x0f\x1c\x32\x45\x11\xb7\x1d\x00\x00\xb7\x0a\x12\x01\xa6\x02\x00\x01\x00\x08\x00\x0e\x00\x13\x00\x1d"
+"\x00\x24\x00\x2b\x00\x35\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00\x6e\x00\x74\x00\x7a\x00\x84\x00\x8b"
+"\x00\x8e\x00\x95\x00\x9c\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00\xe3\x00\xe7\x00\xf2\x00\xf4\x00\xfa"
+"\x01\x04\x01\x0b\x01\x12\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01\x59\x01\x5f\x01\x6b\x01\x6f\x01\x71"
+"\x01\x77\x01\x7d\x01\x89\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01\xd0\x01\xd2\x01\xd5\x01\xdb\x01\xe1"
+"\x01\xed\x01\xf0\x01\xf6\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02\x38\x02\x3e\x02\x4b\x02\x52\x02\x59"
+"\x02\x60\x02\x6f\x02\x7b\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02\xb9\x02\xbf\x02\xc9\x02\xcd\x02\xd3"
+"\x02\xda\x02\xe3\x02\xec\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03\x3d\x03\x46\x03\x4f\x03\x58\x03\x61"
+"\x03\x6a\x03\x73\x03\x7c\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03\xcd\x03\xd6\x03\xdf\x03\xe8\x03\xf1"
+"\x03\xfa\x04\x03\x04\x0c\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04\x5d\x04\x66\x04\x6f\x04\x78\x04\x81"
+"\x04\x8a\x04\x93\x04\x9c\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04\xed\x04\xf6\x04\xff\x05\x08\x05\x11"
+"\x05\x1a\x05\x23\x05\x2c\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05\x7d\x05\x86\x05\x8f\x05\x98\x05\xa1"
+"\x05\xaa\x05\xb3\x05\xbc\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06\x0d\x06\x16\x06\x1f\x06\x28\x06\x31"
+"\x06\x3a\x06\x43\x06\x4c\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06\x9a\x06\xa3\x06\xac\x06\xb5\x06\xbf"
+"\x06\xc6\x06\xcf\x06\xdb\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07\x1b\x07\x21\x07\x26\x07\x2d\x07\x3a"
+"\x07\x40\x07\x46\x07\x50\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07\x92\x07\x9a\x07\xa3\x07\xae\x07\xb4"
+"\x07\xb9\x07\xbe\x07\xc4\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08\x10\x08\x12\x08\x19\x08\x21\x08\x29"
+"\x08\x33\x08\x3d\x08\x49\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08\x9c\x08\xa8\x08\xb4\x08\xba\x08\xc0"
+"\x08\xc6\x08\xd2\x08\xd6\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09\x1c\x09\x22\x09\x2e\x09\x38\x09\x40"
+"\x09\x42\x09\x48\x09\x55\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09\xa4\x09\xa7\x09\xa9\x09\xb0\x09\xbc"
+"\x09\xca\x09\xcd\x09\xda\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e\x0a\x34\x0a\x39\x0a\x42"
+"\x0a\x47\x0a\x50\x0a\x53\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d\x0a\xa4\x0a\xab\x0a\xb2"
+"\x0a\xb9\x0a\xc0\x0a\xc7\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d\x0b\x14\x0b\x1b\x0b\x22"
+"\x0b\x29\x0b\x30\x0b\x37\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d\x0b\x84\x0b\x8b\x0b\x92"
+"\x0b\x99\x0b\xa0\x0b\xa7\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed\x0b\xf4\x0b\xfb\x0c\x02"
+"\x0c\x09\x0c\x10\x0c\x17\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d\x0c\x64\x0c\x73\x0c\x87"
+"\x0c\x93\x0c\x98\x0c\x9e\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5\x0c\xe9\x0d\x1f\x0d\x5f"
+"\x0d\x72\x0d\x80\x41\x45\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73"
+"\x41\x6d\x61\x63\x72\x6f\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x42\x65\x74\x61\x43\x61\x63\x75"
+"\x74\x65\x43\x63\x61\x72\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x43\x68\x69"
+"\x44\x63\x61\x72\x6f\x6e\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65\x45\x63\x61\x72\x6f\x6e\x45\x64\x6f"
+"\x74\x61\x63\x63\x65\x6e\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65\x6b\x45\x70\x73\x69\x6c\x6f\x6e\x45"
+"\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45\x75\x72\x6f\x47\x61\x6d\x6d\x61\x47"
+"\x62\x72\x65\x76\x65\x47\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x47\x64\x6f\x74"
+"\x61\x63\x63\x65\x6e\x74\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a\x49\x62\x72\x65\x76\x65\x49\x64\x6f"
+"\x74\x61\x63\x63\x65\x6e\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f\x74\x61\x49\x6f\x74\x61\x64\x69\x65"
+"\x72\x65\x73\x69\x73\x49\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x4b"
+"\x61\x70\x70\x61\x4b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c\x61\x6d\x62\x64\x61\x4c\x63\x61\x72"
+"\x6f\x6e\x4c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63\x75\x74\x65\x4e\x63\x61\x72\x6f\x6e"
+"\x4e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75"
+"\x74\x4f\x6d\x61\x63\x72\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72\x6f\x6e\x4f\x6d\x69\x63\x72\x6f\x6e"
+"\x74\x6f\x6e\x6f\x73\x4f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73\x69\x52\x61\x63\x75\x74\x65\x52\x63"
+"\x61\x72\x6f\x6e\x52\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75\x74\x65\x53\x63\x65\x64\x69\x6c\x6c"
+"\x61\x53\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x53\x69\x67\x6d\x61\x54\x61\x75"
+"\x54\x62\x61\x72\x54\x63\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54\x68\x65\x74\x61\x55\x62\x72\x65\x76"
+"\x65\x55\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f\x67\x6f\x6e\x65\x6b\x55\x70\x73\x69"
+"\x6c\x6f\x6e\x55\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x55\x72"
+"\x69\x6e\x67\x55\x74\x69\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x57\x64\x69\x65\x72\x65"
+"\x73\x69\x73\x57\x67\x72\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59\x67\x72\x61\x76\x65\x5a\x61\x63\x75"
+"\x74\x65\x5a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61\x65\x61\x63\x75\x74\x65\x61\x66\x69"
+"\x69\x30\x30\x32\x30\x38\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31\x38\x61\x66\x69\x69\x31\x30\x30\x31"
+"\x39\x61\x66\x69\x69\x31\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69\x31\x30\x30\x32\x32\x61\x66\x69\x69"
+"\x31\x30\x30\x32\x33\x61\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35\x61\x66\x69\x69\x31\x30\x30\x32\x36"
+"\x61\x66\x69\x69\x31\x30\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31\x30\x30\x32\x39\x61\x66\x69\x69\x31"
+"\x30\x30\x33\x30\x61\x66\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61\x66\x69\x69\x31\x30\x30\x33\x33\x61"
+"\x66\x69\x69\x31\x30\x30\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30\x30\x33\x36\x61\x66\x69\x69\x31\x30"
+"\x30\x33\x37\x61\x66\x69\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66\x69\x69\x31\x30\x30\x34\x30\x61\x66"
+"\x69\x69\x31\x30\x30\x34\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30\x34\x33\x61\x66\x69\x69\x31\x30\x30"
+"\x34\x34\x61\x66\x69\x69\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69\x69\x31\x30\x30\x34\x37\x61\x66\x69"
+"\x69\x31\x30\x30\x34\x38\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35\x30\x61\x66\x69\x69\x31\x30\x30\x35"
+"\x31\x61\x66\x69\x69\x31\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69\x31\x30\x30\x35\x34\x61\x66\x69\x69"
+"\x31\x30\x30\x35\x35\x61\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37\x61\x66\x69\x69\x31\x30\x30\x35\x38"
+"\x61\x66\x69\x69\x31\x30\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31\x30\x30\x36\x31\x61\x66\x69\x69\x31"
+"\x30\x30\x36\x32\x61\x66\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61\x66\x69\x69\x31\x30\x30\x36\x37\x61"
+"\x66\x69\x69\x31\x30\x30\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30\x30\x37\x30\x61\x66\x69\x69\x31\x30"
+"\x30\x37\x31\x61\x66\x69\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66\x69\x69\x31\x30\x30\x37\x34\x61\x66"
+"\x69\x69\x31\x30\x30\x37\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30\x37\x37\x61\x66\x69\x69\x31\x30\x30"
+"\x37\x38\x61\x66\x69\x69\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69\x69\x31\x30\x30\x38\x31\x61\x66\x69"
+"\x69\x31\x30\x30\x38\x32\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38\x34\x61\x66\x69\x69\x31\x30\x30\x38"
+"\x35\x61\x66\x69\x69\x31\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69\x31\x30\x30\x38\x38\x61\x66\x69\x69"
+"\x31\x30\x30\x38\x39\x61\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31\x61\x66\x69\x69\x31\x30\x30\x39\x32"
+"\x61\x66\x69\x69\x31\x30\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31\x30\x30\x39\x35\x61\x66\x69\x69\x31"
+"\x30\x30\x39\x36\x61\x66\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61\x66\x69\x69\x31\x30\x30\x39\x39\x61"
+"\x66\x69\x69\x31\x30\x31\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30\x31\x30\x32\x61\x66\x69\x69\x31\x30"
+"\x31\x30\x33\x61\x66\x69\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66\x69\x69\x31\x30\x31\x30\x36\x61\x66"
+"\x69\x69\x31\x30\x31\x30\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31\x30\x39\x61\x66\x69\x69\x31\x30\x31"
+"\x31\x30\x61\x66\x69\x69\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69\x69\x31\x30\x38\x34\x36\x61\x66\x69"
+"\x69\x36\x31\x32\x34\x38\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35\x32\x61\x6c\x70\x68\x61\x61\x6c\x70"
+"\x68\x61\x74\x6f\x6e\x6f\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x61\x6e\x67\x6c\x65\x72\x69\x67\x68"
+"\x74\x61\x6f\x67\x6f\x6e\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x61\x72\x72"
+"\x6f\x77\x62\x6f\x74\x68\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x72\x69\x67"
+"\x68\x74\x61\x72\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x62\x73\x65\x62\x65"
+"\x74\x61\x63\x61\x63\x75\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x63\x64\x6f\x74\x61\x63\x63"
+"\x65\x6e\x74\x63\x68\x69\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75\x62\x64\x63\x61\x72\x6f\x6e\x64\x63"
+"\x72\x6f\x61\x74\x64\x65\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x65\x62\x72"
+"\x65\x76\x65\x65\x63\x61\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d\x65\x6e\x74\x65\x6d\x61\x63\x72\x6f"
+"\x6e\x65\x6e\x67\x65\x6f\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x65\x71"
+"\x75\x69\x76\x61\x6c\x65\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74\x61\x74\x6f\x6e\x6f\x73\x65\x78\x63"
+"\x6c\x61\x6d\x64\x62\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65\x66\x72\x61\x6e\x63\x67\x61\x6d\x6d"
+"\x61\x67\x62\x72\x65\x76\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x67\x64"
+"\x6f\x74\x61\x63\x63\x65\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61\x72\x68\x63\x69\x72\x63\x75\x6d\x66"
+"\x6c\x65\x78\x68\x65\x61\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d\x61\x63\x72\x6f\x6e\x69\x6e\x66\x69"
+"\x6e\x69\x74\x79\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69\x6e\x74\x65\x67\x72\x61\x6c\x74\x70"
+"\x69\x6e\x74\x65\x72\x73\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x69\x6f\x67\x6f\x6e\x65\x6b\x69"
+"\x6f\x74\x61\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73"
+"\x69\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x6b\x61\x70\x70\x61\x6b"
+"\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63\x6c\x61\x63\x75\x74\x65\x6c\x61\x6d"
+"\x62\x64\x61\x6c\x63\x61\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64\x6f\x74\x6c\x65\x73\x73\x65\x71\x75"
+"\x61\x6c\x6c\x69\x72\x61\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65"
+"\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70\x6f\x73\x74\x72\x6f\x70\x68\x65\x6e"
+"\x63\x61\x72\x6f\x6e\x6e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x6e\x6f\x74\x65\x71"
+"\x75\x61\x6c\x6e\x75\x6f\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x6f\x6d\x61\x63\x72\x6f\x6e\x6f"
+"\x6d\x65\x67\x61\x6f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f"
+"\x73\x6f\x72\x74\x68\x6f\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70\x61\x72\x74\x69\x61\x6c\x64\x69\x66"
+"\x66\x70\x65\x73\x65\x74\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62\x73\x65\x74\x70"
+"\x72\x6f\x70\x65\x72\x73\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65\x76\x65\x72\x73\x65\x64\x72\x61\x63"
+"\x75\x74\x65\x72\x61\x64\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x72\x65\x76\x6c"
+"\x6f\x67\x69\x63\x61\x6c\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69\x6c\x6c\x61\x73\x63\x69\x72\x63\x75"
+"\x6d\x66\x6c\x65\x78\x73\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64\x73\x69\x67\x6d\x61\x73\x6d\x69\x6c"
+"\x65\x66\x61\x63\x65\x73\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74\x61\x75\x74\x62\x61\x72\x74\x63\x61"
+"\x72\x6f\x6e\x74\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e\x6f\x73\x75\x62\x72\x65\x76\x65\x75"
+"\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65\x72\x73\x63\x6f\x72\x65\x64\x62\x6c"
+"\x75\x6e\x69\x30\x30\x41\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e\x69\x30\x32\x31\x42\x75\x6e\x69\x30"
+"\x32\x43\x39\x75\x6e\x69\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41\x39\x75\x6e\x69\x30\x33\x42\x43\x75"
+"\x6e\x69\x30\x33\x43\x32\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69\x30\x34\x35\x30\x75\x6e\x69\x30\x34"
+"\x35\x44\x75\x6e\x69\x30\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36\x75\x6e\x69\x30\x34\x39\x37\x75\x6e"
+"\x69\x30\x34\x39\x38\x75\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30\x34\x39\x42\x75\x6e\x69\x30\x34\x39"
+"\x43\x75\x6e\x69\x30\x34\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75\x6e\x69\x30\x34\x41\x32\x75\x6e\x69"
+"\x30\x34\x41\x33\x75\x6e\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34\x41\x45\x75\x6e\x69\x30\x34\x41\x46"
+"\x75\x6e\x69\x30\x34\x42\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e\x69\x30\x34\x42\x33\x75\x6e\x69\x30"
+"\x34\x42\x36\x75\x6e\x69\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42\x39\x75\x6e\x69\x30\x34\x42\x41\x75"
+"\x6e\x69\x30\x34\x42\x42\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69\x30\x34\x43\x43\x75\x6e\x69\x30\x34"
+"\x44\x38\x75\x6e\x69\x30\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38\x75\x6e\x69\x30\x34\x45\x39\x75\x6e"
+"\x69\x30\x34\x45\x45\x75\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32\x30\x41\x46\x75\x6e\x69\x32\x31\x32"
+"\x36\x75\x6e\x69\x32\x32\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75\x6e\x69\x32\x32\x32\x38\x75\x6e\x69"
+"\x32\x32\x39\x35\x75\x6e\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x75\x6f\x67\x6f\x6e\x65\x6b"
+"\x75\x70\x73\x69\x6c\x6f\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65"
+"\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75\x72\x69\x6e\x67\x75\x74\x69\x6c\x64"
+"\x65\x77\x61\x63\x75\x74\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72\x65\x73\x69\x73\x77\x67\x72\x61\x76"
+"\x65\x78\x69\x79\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63\x75\x74\x65\x7a\x64\x6f\x74\x61\x63"
+"\x63\x65\x6e\x74\x7a\x65\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30"
+"\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65"
+"\x6e\x74\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30"
+"\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65"
+"\x6e\x74\x4e\x69\x6d\x62\x75\x73\x20\x4d\x6f\x6e\x6f\x20\x50\x53\x20\x42\x6f\x6c\x64\x4e\x69\x6d\x62\x75\x73\x20\x4d\x6f\x6e\x6f"
+"\x20\x50\x53\x01\x43\x02\x00\x01\x00\x08\x00\x70\x00\x7a\x00\xa0\x00\xe2\x01\x19\x01\x21\x01\x25\x01\x2c\x01\x37\x01\x3f\x01\x45"
+"\x01\xa3\x01\xae\x01\xbb\x01\xc1\x01\xee\x01\xfb\x02\x03\x02\x0c\x02\x14\x02\x1d\x02\x44\x02\x5e\x02\x6a\x02\x75\x02\x79\x02\x8b"
+"\x02\x99\x02\xa4\x02\xaf\x02\xb7\x02\xbe\x03\x54\x03\xe5\x04\x1b\x04\x5a\x04\x7d\x04\x89\x04\xbe\x04\xe2\x04\xf7\x04\xfb\x05\x0a"
+"\x05\x15\x05\x27\x05\x34\x05\x3e\x05\x47\x05\x51\x05\x5b\x05\x64\x05\x6d\x05\x74\x05\x7b\x05\x80\x05\xdc\x06\x2c\x06\x8e\x06\xa4"
+"\x06\xba\x06\xc1\x06\xc7\x06\xce\x06\xe6\x06\xf4\x06\xff\x07\x08\x07\x18\x07\x27\x07\x32\x07\x3d\x07\x43\x07\x55\x07\x5f\x07\x69"
+"\x07\x79\x07\x84\x07\x8c\x07\x95\x07\x9e\x07\xa5\x07\xad\x07\xb5\x07\xbd\x07\xc5\x07\xd0\x07\xdb\x07\xe2\x08\x5e\x08\xa2\x09\x05"
+"\x09\x4d\x09\xac\x09\xd2\x0a\x06\x0a\x37\x0a\x59\x0a\x7f\x0a\x8c\x0a\xad\x0a\xbe\x0a\xe1\x0a\xf0\x0b\x0a\x0b\x12\x0b\x27\x0b\x35"
+"\x0b\x4a\x0b\x5d\x0b\x6f\x0b\x77\x0b\x7f\x0b\x8a\x0b\x9e\x0b\xaa\x0b\xb9\x0b\xd2\x0b\xe0\x0b\xed\x0b\xfd\x0c\x11\x0c\x1d\x0c\x29"
+"\x0c\x35\x0c\x47\x0c\x59\x0c\x5d\x0c\x68\x0c\x79\x0c\x83\x0c\x88\x0c\x90\x0c\x9e\x0c\xac\x0c\xba\x0c\xc7\x0c\xd4\x0c\xdc\x0c\xe8"
+"\x0c\xee\x0c\xf6\x0c\xfe\x0d\x06\x0d\x11\x0d\x18\x0d\x6b\x0d\x8b\x0d\xd9\x0e\x23\x0e\x73\x0e\xe6\x0f\x01\x0f\x4a\x0f\xb7\x0f\xc8"
+"\x10\x0c\x10\x45\x10\xa0\x11\x0a\x11\x3d\x11\x79\x11\xc8\x11\xf5\x12\x3c\x12\x7e\x12\xac\x12\xb7\x12\xf6\x12\xff\x13\x2a\x13\x36"
+"\x13\x5b\x13\x67\x13\x84\x13\xc9\x14\x04\x14\x34\x14\x72\x14\xac\x14\xc7\x14\xf8\x15\x22\x15\x4b\x15\x67\x15\x88\x15\x9f\x15\xae"
+"\x15\xde\x15\xe2\x16\x03\x16\x15\x16\x36\x16\x5f\x16\x69\x16\x86\x16\x96\x16\xaa\x16\xc8\x16\xef\x16\xf7\x17\x07\x17\x17\x17\x2a"
+"\x17\x48\x17\x6d\x17\x87\x17\x9b\x17\xbb\x17\xc7\x17\xe9\x17\xf7\x17\xfb\x18\x09\x18\x29\x18\x36\x18\x45\x18\x63\x18\x7a\x18\x91"
+"\x18\xa9\x18\xb8\x18\xbf\x18\xce\x18\xd9\x18\xf3\x18\xf8\x19\x11\x19\x2a\x19\x30\x19\x36\x19\x4f\x19\x5d\x19\x75\x19\x7c\x19\x85"
+"\x19\x9b\x19\xa7\x19\xb3\x19\xc3\x19\xd5\x19\xda\x19\xf1\x1a\x08\x1a\x1d\x1a\x33\x1a\x45\x1a\x55\x1a\x6b\x1a\x75\x1a\x85\x1a\x9a"
+"\x1a\xaf\x1a\xc4\x1a\xd7\x1a\xeb\x1a\xff\x1b\x13\x1b\x1a\x1b\x2d\x1b\x40\x1b\x53\x1b\x66\x1b\x6f\x1b\x82\x1b\x86\x1b\x98\x1b\xaa"
+"\x1b\xbc\x1b\xce\x1b\xde\x1b\xef\x1c\x00\x1c\x11\x1c\x22\x1c\x33\x1c\x44\x1c\x54\x1c\x64\x1c\x74\x1c\x84\x1c\x94\x1c\xa4\x1c\xb4"
+"\x1c\xc4\x1c\xd4\x1c\xe2\x1c\xf1\x1d\x00\x1d\x0f\x1d\x16\x1d\x20\x1d\x2e\x1d\x37\x1d\x45\x1d\x53\x1d\x61\x1d\x6a\x1d\x77\x1d\x84"
+"\x1d\x91\x1d\x9e\x1d\xab\x1d\xb8\x1d\xc3\x1d\xcf\x1d\xdb\x1d\xe0\x1d\xec\x1d\xf8\x1e\x04\x1e\x10\x1e\x1c\x1e\x28\x1e\x30\x1e\x38"
+"\x1e\x43\x1e\x4e\x1e\x59\x1e\x64\x1e\x6f\x1e\x7a\x1e\x85\x83\x34\x1d\x7a\x7a\x1a\x0b\xf8\x32\xf7\x2b\x15\x9e\x5c\x05\x7a\x06\x71"
+"\x83\x89\x9d\x1d\x99\x88\xa3\x1b\xf7\x1f\x06\xa0\x9a\xf7\x3a\x1d\x80\x92\x82\x8d\x70\x8c\xfb\x5b\xf8\x60\x18\xfb\x6f\x06\x70\x20"
+"\x1d\x7a\x93\x7c\x9a\x81\x1e\x83\x95\x96\x89\xa6\x1b\xc4\x06\xfb\x2c\xfb\xf9\x05\x5f\x73\x79\x69\x68\xa2\x7a\xba\x1f\xf7\x19\x06"
+"\xa0\x9a\x8d\x90\x3a\x1d\x93\x80\x82\x8d\x6f\x1b\x7a\x06\x9f\xba\x05\xf7\x50\xf2\x15\xfb\x25\x06\xd4\xf7\x3d\x05\x0b\x1a\x9c\x83"
+"\x9a\x7d\x95\x1e\x71\x1d\x0b\x15\x95\x99\x8f\x95\x93\x1a\xa0\x79\x9c\x75\x79\x82\x85\x77\x7d\x1e\x39\xfb\x0c\x05\x83\x7f\x86\x7f"
+"\x82\x1a\x77\x9d\x7a\xa2\x9b\x95\x92\x9f\x98\x1e\x0e\xf7\xc0\xf8\xd6\x15\x48\x4a\x71\x5a\x53\x1f\x4e\x55\x69\x3c\x34\x1a\xfb\x38"
+"\xf7\x13\xfb\x18\xf7\x30\xf7\x2f\xf7\x14\xf7\x18\xf7\x33\xe8\x6b\xd6\x4c\xc4\x1e\xbc\x55\x49\xa5\x47\x1b\x24\x04\xea\xdb\x34\x24"
+"\xfb\x00\x3d\x34\x2a\x2b\x3c\xe2\xf5\xf4\xda\xe2\xeb\x1f\x0b\xf7\xc3\xf8\x49\x15\xfb\x2a\xfb\x07\x29\xfb\x14\xfb\x13\xf7\x07\x28"
+"\xf7\x27\xf7\x27\xf7\x07\xee\xf7\x13\xf7\x12\xfb\x07\xef\xfb\x24\x1f\x86\x24\x15\xe4\xce\x56\x45\x46\x48\x55\x34\x34\x48\xc1\xd0"
+"\xd0\xce\xc1\xe0\x1f\x0b\x15\x9c\x99\x92\x95\x98\xf3\x1d\x06\x4f\x1d\x0b\x1a\xb1\x74\x99\x4b\x1e\x0b\x06\x5c\x73\x79\x69\x69\xa3"
+"\x79\xba\x1f\x0b\x83\x9a\x7d\x95\x1f\x93\x80\x0b\x06\xb9\xa3\x9d\xad\x0b\xf8\x96\xf8\x3d\x15\xfb\x1f\x06\x3d\x1d\x7a\x1a\x7a\x93"
+"\x7c\x99\x81\x3f\x1d\xaa\xfb\x3c\x06\x58\x58\x74\x7f\x5a\x1b\x51\x71\x9f\xb8\x1f\xf7\xa1\xfb\x0c\x07\x3d\x1d\x7a\x1a\x7a\x93\x7c"
+"\x99\x81\x1e\x84\x95\x96\x88\xa6\x1b\x97\xfb\x3e\x06\x52\x9f\x61\xb3\x6e\x1e\x73\xad\xb5\x7f\xb9\x1b\xc1\xab\x98\xb3\xba\x1f\x62"
+"\xee\x07\xa0\x9a\x8d\x90\x3a\x1d\x81\x91\x83\x8d\x76\x8c\x08\x0b\x1b\x9c\x9b\x93\x98\x96\x1f\x93\x96\x8d\x0b\x76\x84\x8a\x88\x82"
+"\x1f\x78\x85\x7c\x76\x76\x1a\x0b\x81\x80\x8d\x70\x1b\x0b\xf7\x5a\xf7\x7c\x15\xd8\x88\x06\x47\x1d\x9b\x93\x98\x96\x72\x1d\xf7\x27"
+"\xfc\x59\x07\x6b\x1d\x7b\x79\x92\x1d\x7b\x79\x1a\x69\xa3\x79\xb9\x1e\xf8\x6f\xf7\x29\x06\xf7\x07\x1d\x07\x0b\x06\xb9\xa3\x9c\xae"
+"\x9b\x2a\x1d\x82\x8d\x6f\x1b\x0b\x8d\x90\x94\x1f\x9b\x95\x95\x0b\x1a\x9b\x83\x9a\x7d\x95\x1e\x93\x0b\x8a\x85\x81\x1f\x7b\x81\x81"
+"\x0b\x5d\x1d\x5d\x1b\x38\x59\x5e\x1d\x0b\x15\x68\x6e\x6f\x6a\x69\xa8\x6f\xae\xae\xa8\xa7\xac\xae\x6f\xa6\x67\x1f\xf7\x64\x16\x68"
+"\x6e\x6f\x6a\x69\xa8\x6f\xae\xae\xa8\xa7\xac\xae\x6f\xa6\x67\x1f\x0e\x15\x67\x76\x7c\x70\x82\x90\x7f\x92\x83\x1f\x81\x95\x93\x88"
+"\xa6\x1b\xf7\x88\x06\xae\xa7\x1d\x73\x1b\x0e\x8d\x90\x94\xa6\x1d\x92\x80\x82\x8d\x6f\x1b\x0b\x06\xba\xa3\x9d\xad\xad\x73\x9d\x5c"
+"\x1f\x0b\x93\xa6\x1d\x0b\x15\x73\x7c\x7b\x73\x3f\xe0\x47\xe9\xe9\xe0\x6f\x1d\x81\x6b\xf7\x1d\x1d\x1f\x7b\x81\x81\x7a\x79\x1a\x7b"
+"\x93\x7b\x99\x81\x1e\x0b\x72\x81\x89\x86\x82\x1f\x7b\x81\x81\x7a\x0b\x1b\x9c\x9b\x93\x98\x96\x1f\x93\x95\x8d\x0b\x1e\x84\x95\x98"
+"\x88\xa4\x1b\x0b\x1b\x74\x79\x7a\x75\x7e\x0b\xf8\xbe\xf7\x41\x15\xa6\x93\x9a\x9d\xa4\x33\x1d\x80\x81\x8d\x6f\x1b\xfb\x43\x06\x71"
+"\x83\x50\x1d\x9a\x81\x1e\x83\x95\x97\x89\xa4\x1b\xeb\x4f\x06\x7d\x68\x64\x84\x5b\x1b\x4d\x5b\x99\xa6\x69\x1f\x6e\xa3\x7d\xaf\xc0"
+"\x1a\xc8\x07\xba\x9e\xba\xac\xaa\x1e\xa8\xa9\xb7\x9a\xc1\x1b\xd3\xbc\x77\x6b\x94\x1f\x94\x6c\x8b\x8b\x91\x84\x08\x81\x94\x99\x85"
+"\x9a\x2d\x1d\x93\xa6\x1a\xd5\x07\xa4\x8a\x93\x85\x95\x1e\x9a\x82\x7a\x95\x79\x1b\x77\x80\x83\x76\x80\x1f\x9e\x60\x5b\x95\x56\x1b"
+"\x37\x4b\x73\x58\x55\x1f\x54\x57\x6c\x44\x41\x1a\x48\x07\x47\xa5\x48\xb4\x63\x1e\x5a\xbd\xe1\x6f\xef\x1b\xda\xbd\x99\xba\xe8\x1f"
+"\x0b\xf8\x92\xf8\x06\x15\x9e\x8a\x92\x88\x94\x1e\x9e\x86\x77\x98\x75\x1b\x7b\x82\x85\x7a\x82\x1f\x9a\x66\x61\x93\x5b\x1b\xfb\x0e"
+"\x33\x53\x3c\x3e\xc7\x63\xf7\x22\x7c\x1f\xc1\x86\xa0\x87\x9b\x85\x08\x9f\x83\x97\x80\x80\x1a\x77\x56\x7a\x50\x56\x61\x97\xa2\x6f"
+"\x1e\xa9\x82\x7a\x99\x6f\x1b\x78\x54\x1d\x82\x71\x1a\x6b\x07\x5d\x9d\x76\xb0\x98\x94\x8e\x93\x96\x1e\x79\xb2\xbe\x82\xc5\x1b\xf7"
+"\x17\xea\xc5\xdb\xb9\x70\xb5\x5e\xa3\x1f\x6d\x9b\x61\x96\x41\x94\x4b\x94\x85\x8c\x7e\x8f\x08\x7c\x91\x82\x92\x92\x1a\x99\xbb\x9a"
+"\xba\xb4\xac\x82\x79\xa5\x1e\x6c\x9d\x97\x83\xa4\x3e\x1d\x95\xa5\x1a\x0b\xf7\x98\xf8\x61\x15\xc0\x69\x1d\xfb\x6a\x06\x6b\x1d\x7b"
+"\x79\x1a\x7a\x93\x7b\x99\x82\x1e\x83\x96\x96\x89\xa5\x1b\xc0\xfb\xfa\x56\x06\x71\x83\x34\x1d\x7b\x79\x1a\x68\xa3\x7a\xb9\x1e\xf8"
+"\x70\xf7\x04\x1d\xfb\x63\x07\x0b\xf7\x66\xf2\x15\xf7\xbe\xf7\xff\x05\xed\xfc\x34\xfb\x3a\x07\x73\x8d\x82\x91\x82\x1e\x7b\x95\x9d"
+"\x82\x9d\x2d\x1d\x93\xa6\x1a\xca\xf7\x3a\x07\xfb\xbd\xfb\xfd\x05\x27\xf8\x62\xf7\x3c\x07\xa4\x8a\x93\x84\x95\x1e\x99\x82\x79\x95"
+"\x78\xf7\x50\x1d\x4a\x07\x0b\x15\xfb\x03\xe5\x05\x96\x7e\x84\x8e\x81\x1b\x76\x79\x7a\x76\xf7\x46\x1d\xa2\x9e\x8d\x8e\x9a\x1a\xa0"
+"\x79\x9c\x77\x80\x83\x87\x81\x7f\x1e\x0e\xc7\x1d\xba\xb8\xaa\x9b\xb8\x1b\xc7\xd5\x1d\x0b\x73\x8c\x82\x91\x82\x1e\x7c\x95\x9d\x81"
+"\xac\x1d\x93\xa6\x1a\xf7\x00\x07\x9f\x8a\x91\x88\x95\x1e\x9d\x84\x76\x99\x75\x1b\x7a\x7b\x83\x7e\x81\x1f\x83\x80\x89\x81\x71\x1a"
+"\x88\x3e\xf7\x13\xf7\x76\x5f\xf7\x48\x1d\x0b\x15\x74\x7c\x7b\x73\x3f\xe0\x47\xe9\xe9\xe0\x6f\x1d\x82\x6a\x84\x1f\x61\x81\x63\x70"
+"\x56\x1b\x56\x62\xa6\xb5\x82\x1f\xab\x84\x82\x95\x75\x1b\x0e\xb2\xaa\xa8\xb1\xb0\x6c\xa9\x64\x1f\x79\x06\x65\x6b\x6d\x66\x66\xaa"
+"\x6d\xb2\x1f\x0b\x16\x9e\x1d\x0e\x80\x82\x8d\x6f\x1b\x26\x06\x72\x81\x89\x86\x82\x73\x1d\x0b\x71\x20\x1d\x7a\x93\x7c\x99\x81\x1e"
+"\x84\x0b\x95\x1e\x9a\x81\x7a\x94\x78\x1b\x7a\x7b\x83\x7e\x80\x1f\x83\x81\x89\x0b\x7e\x1a\x77\x9e\x78\x9f\x95\x96\x91\x96\x96\x1e"
+"\x0b\xb9\xa3\x9d\xad\xad\x73\x9d\x5d\x1f\x0b\x34\x1d\x7b\x79\x1a\x7a\x93\x7c\x0b\x88\x7e\x7b\x1e\xfb\x1a\x21\x05\x7a\x0b\x5d\x72"
+"\x79\x69\x69\xa3\x79\xba\x1f\x0b\x87\x81\x7f\x1e\xfb\x00\x38\x05\x0b\x7c\x84\x7d\x80\x1f\x83\x80\x89\x0b\x82\x1b\x76\x79\x7a\x76"
+"\x0b\x78\xa2\x68\x68\x78\x74\x0b\x90\x94\x97\x1e\x0e\xf7\xae\xf8\x3e\x15\xfb\x1f\x06\x79\x78\x88\x86\x84\x1f\x7b\x82\x81\x7a\x79"
+"\x1a\x69\xa3\x79\xb9\x1e\xaa\xfb\x6f\x55\xf7\x2c\x1d\xf7\xbd\x06\xba\xa3\x9c\xae\x9b\x2a\x1d\x81\x8d\x6f\x1b\xfb\x1b\xf7\x1b\x06"
+"\xd3\xe6\xb3\xa3\xa9\x1b\x98\x94\x87\x7f\x99\x1f\x7d\x9b\x96\x86\x9a\x1b\xa8\xa4\xa3\xa8\x9d\x83\x98\x76\x9c\x1f\xa4\x6b\x6a\x97"
+"\x67\x1b\x59\x68\x7c\x55\x3d\x1f\x0b\xf7\x29\x1d\x79\x1a\x7b\x93\x7c\x99\x81\x1e\x83\x95\x98\x89\xa4\x1b\xf7\x6b\x06\xa2\x97\x6c"
+"\x1d\x71\x1b\xf7\x76\xf8\x33\x05\xad\x8f\x9e\x9d\xa8\x22\x1d\x2f\x06\x2e\x1d\x7b\x93\x7b\x99\x81\x1e\x95\x85\x92\x89\xa1\x8a\xfb"
+"\x04\xfb\x5e\x18\xfb\x01\xf7\x5e\x05\xb0\x8d\x9f\x9e\xa9\x1a\x9c\x83\x9b\x7d\x95\x1e\x92\x83\x1d\x0b\xf7\x0d\x1d\x9a\x7d\x96\x1e"
+"\x92\x80\x82\x8d\x6f\x1b\xfb\x17\x06\x71\x83\x8a\x85\x81\x1f\x7b\x82\x81\x79\x7a\xf7\x5f\x1d\xa5\x1b\xbc\x06\x6a\xfb\x82\x43\xf7"
+"\x5f\x05\xfb\x00\x06\x43\xfb\x5f\x6a\xf7\x82\x05\xb6\x06\xa3\x96\x8d\x90\x95\x77\x1d\x7d\x95\x1e\x93\x80\x81\x8d\x6f\x1b\xfb\x17"
+"\x06\x70\x84\x8a\x85\x81\x1f\x7a\x81\x82\x7b\x77\x1a\x6f\x9b\x7a\xa9\x87\x1e\xc9\xfc\x62\x05\xf7\x0a\x06\x0b\x5b\x6c\x76\x69\x5e"
+"\x1a\x54\x60\x1d\x80\x1e\x7d\x6e\x83\x88\x7f\x1b\x7e\x84\x90\x95\x0b\x83\x8a\x85\x81\x1f\x7b\x82\x81\x79\x7a\x1a\x7a\x93\x7c\x99"
+"\x81\x1e\x83\x96\x96\x89\x0b\xd9\x1d\x74\x31\x71\x87\x0b\xa3\xbf\xf7\x36\x1d\x0b\x71\x83\x8a\x85\x61\x1d\x0b\xb0\x69\xc8\xa7\xaa"
+"\x92\x97\xa5\x1e\xa5\x96\x97\x99\x9f\x1a\xa1\x78\x9d\x74\x83\x85\x89\x86\x0b\x81\x1f\x7b\x81\x81\x7a\xf7\x6b\x1d\x9a\x88\xa2\x1b"
+"\x0b\x06\x64\x6c\x6d\x66\x66\xaa\x6d\xb2\x1f\x0e\x2b\x1d\x9b\x83\x9b\x7d\x95\x1f\x0b\x1a\xa7\x72\xa3\x6e\x7d\x7e\x86\x7f\x7f\x1e"
+"\x71\x72\x8b\x8b\x0b\x9c\xae\x9b\x83\x9a\x7d\x96\x1f\x92\x80\x82\x8d\x6f\x1b\x0b\xf8\x87\x15\xfb\x12\xfb\x00\xf7\x12\x06\x0b\x06"
+"\xb9\xa4\x9d\xad\xad\x72\x9d\x5d\x1f\x0b\x06\x5d\x72\x75\x1d\x0b\x06\xa2\x97\x8d\x90\x94\x77\x1d\x7d\x95\x1e\x93\x80\x82\x8d\x6f"
+"\x1b\x0b\x9a\x80\x1e\x84\x96\x98\x88\xa5\x1b\x0b\x70\x84\x8a\x85\x81\x1f\x7b\x81\x81\x0b\x32\x1d\x9c\x9d\x1a\x9b\x83\x9b\x7d\x94"
+"\x1e\x93\x80\x82\x8d\x0b\x06\x72\x82\x89\x86\x81\x1f\x7b\x81\x81\x0b\xae\x1a\xad\x73\x9d\x5d\x1e\x0b\xcf\xd7\xa3\x7c\x9b\x74\x75"
+"\x82\x0b\x9c\x93\x98\x95\x1f\x93\x96\x8d\x0b\x93\x80\x81\x8d\x70\x1b\x0b\x1f\x93\x96\x8d\x94\xa6\x1a\x0b\x1f\x7b\x81\x81\x7a\x7a"
+"\x1a\x0b\xfb\x0b\xfb\x0a\xfb\x2f\x1f\x0b\x79\x69\x69\xa4\x79\xb9\x1f\x0b\x1b\xab\x9c\x81\x79\x7e\x80\x84\x76\x7b\x0b\x1f\x9b\x95"
+"\x95\x9c\x9d\x1a\x9b\x83\x9a\x0b\xf8\x9d\xf8\x93\xb5\x1d\x0b\xf8\x06\xf7\xb4\x15\xf7\x2c\xf7\x41\x05\xb1\x8c\xa1\x9e\xaa\x22\x1d"
+"\x31\x06\x2e\x1d\x76\x95\x7d\xf7\x35\x1d\x7c\x95\x1e\x93\x2f\x1d\x30\x06\x77\x84\x8a\x88\x82\x1f\x78\x85\x7c\x76\x76\x1a\x7b\x94"
+"\x7b\x98\x82\x1e\x94\x84\x92\x89\xa1\x8a\xf7\x2f\xfb\x41\x18\xfb\x37\xfb\x4d\x05\x65\x74\x77\x6c\x68\xa3\x7a\xb9\x1f\xf7\x03\x06"
+"\xb9\xa3\x9c\xae\xa7\x78\x9e\x6c\x8e\x1f\xe9\xf5\xe8\x22\x05\x6b\x87\x78\x78\x6f\x1a\x68\xa3\x7a\xb9\x1e\xf7\x03\x06\xa0\x9a\x8d"
+"\x90\x3a\x1d\x81\x91\x84\x8d\x75\x8c\x08\x0e\xf8\x2a\xf8\x1f\x15\xa7\x66\x5a\x9a\xe1\x1d\x79\x1a\x7b\x93\x7c\x99\x81\x1e\x83\x95"
+"\x98\x89\xa4\x1b\xf7\x04\x06\xf7\x04\xdf\xda\xf1\x8a\x1f\xf7\xe5\x97\x07\xa3\x96\x38\x1d\xfb\x0c\x06\xfb\x1b\x31\x15\xd6\xc7\x55"
+"\x48\x45\x50\x55\x3f\x41\x4f\xc2\xcf\xcf\xc7\xc1\xd5\x1f\x0b\xa8\xf7\x85\x15\xfb\x27\xf7\x12\x20\xf7\x40\xd4\xd0\x9d\xa9\xb7\x1e"
+"\xaf\xa4\x9e\xa4\xa2\x64\x1d\x81\x85\x08\x7d\x71\x65\x83\x5d\x1b\xfb\x08\x3f\xc7\xe8\x1f\xc8\x07\xef\xd3\xd2\xef\xad\xad\x83\x7c"
+"\xa6\x1e\xa7\x7c\x95\x80\x8f\x75\x08\x65\x92\x9a\x7b\xaa\x3e\x1d\x96\xa4\x1a\xdb\x07\xa4\x8a\x93\x84\x95\x1e\x9a\x81\x7a\x94\x78"
+"\x1b\x79\x7f\x85\x7b\x7e\x1f\xa9\x46\x71\x91\x53\x1b\xfb\x31\x74\x1d\x0b\xf7\xf5\xf8\x61\x15\xf0\x37\x06\x73\x8d\x81\x91\x82\x1e"
+"\x7b\x95\x9c\x82\x9e\x2d\x1d\x93\xa7\x1a\xf7\x4f\xfc\xa0\xfb\x4f\x07\x73\x8d\x81\x91\x82\x1e\x7b\x95\x9d\x82\x9d\x2d\x1d\x93\xa7"
+"\x1a\xdf\xee\xfb\xfa\x4e\x07\x5f\x1d\xf7\x7b\x06\xb9\xa3\x9c\xae\x9b\x2a\x1d\x81\x8d\x70\x1b\x4d\x06\x0b\xd1\xf2\x15\x63\x8a\x77"
+"\x7a\x6a\x1a\x69\xa2\x79\xb5\x1e\xef\x06\xf7\x77\xf7\xa4\x05\xfb\x3c\x84\x07\x5d\x73\x79\x69\x69\xa3\x79\xb9\x1f\xf7\x03\x06\xba"
+"\xa3\x9d\xac\xad\x75\x9c\x5e\x8c\x1f\xf7\x6e\x95\x07\xba\xa3\x9d\xad\xad\x73\x9d\x5c\x1f\xfb\x07\x06\xfb\x77\xfb\xa3\x05\xf7\x3b"
+"\x98\x07\xc0\xa3\x9b\xaf\xaf\x73\x9b\x56\x1f\xfb\x03\x06\x5c\x73\x79\x69\x6a\x9f\x7a\xb4\x8a\x1f\x0b\xf8\x80\xf7\x6e\x15\xa2\x98"
+"\x8d\x90\x93\x1f\x9b\x95\x95\x9c\x9d\x22\x1d\xfc\x14\x06\x3d\x1d\x79\x1a\x7a\x93\x7c\x99\x81\x1e\x83\x95\x97\x89\xa5\x1b\x0e\x15"
+"\xfb\x0c\x6a\x05\x70\x84\x83\x83\x79\x1a\x78\x99\x7c\x9b\x92\x92\x8c\x8e\x93\x1e\xaf\x97\x05\xfb\x79\x5d\x07\x6e\x7d\x80\x76\x76"
+"\x9a\x7f\xa7\x1f\xf7\x37\x06\xa4\x98\x96\xa1\xa0\x7f\x96\x71\x1f\x59\x06\x0b\x15\xfb\x03\xe5\x05\x95\x7f\x83\x8e\x81\x1b\x76\x79"
+"\x7a\x76\x7f\x8f\x84\x98\x81\x1f\x93\x84\xf7\x2f\xfb\x10\xf7\x2e\xf7\x10\x05\xa3\x9e\x8c\x8d\x9b\x1a\x9f\x79\x9c\x77\x80\x82\x87"
+"\x82\x80\x1e\x0e\x15\x98\x7b\x85\x8e\x7f\x40\x1d\x92\x81\x9c\x7d\x1f\xf7\x1a\x20\x05\x7e\x9b\x92\x88\x96\x1b\xa1\x9e\x9d\xa0\x98"
+"\x84\x96\x7a\x99\x1f\x0e\x15\x4b\x57\x59\x4d\x4d\xbf\x59\xcb\xca\xc0\xbd\xc8\xca\x58\xbd\x4a\x1f\x53\x04\xab\xa5\x72\x6d\x6b\x71"
+"\x72\x6b\x6b\x71\xa4\xaa\xaa\xa5\xa4\xab\x1f\x0b\x2f\x1d\x31\xf7\x11\x1d\x6f\x9d\x79\xab\x86\x1e\x0b\xa4\x8a\x93\x84\x4d\x1d\x81"
+"\x71\x1a\x3b\x6c\x07\x70\x84\x8a\x85\x81\x1f\x7b\x82\x81\x79\x7a\x1a\x7a\x93\x7c\x99\x81\x3f\x1d\xaa\x0b\xf7\xc9\xf7\x60\x15\xb2"
+"\xaa\xa9\xb0\xb0\x6c\xa9\x64\x1f\x79\x62\x1d\xf7\xf6\xf8\x3d\x15\xfb\x4a\x06\x70\x83\x34\x1d\x7b\x79\x1a\x68\xa3\x7a\xba\x1e\xd5"
+"\xfb\x6f\xfb\x0a\x06\x71\x20\x1d\x69\xa3\x79\xb9\x1e\x0b\x06\x72\x81\x89\x86\x82\x3c\x1d\x84\x96\x96\x89\xa5\x1b\x0b\x06\x5d\x73"
+"\x79\x69\x6d\x9c\x7a\xae\x87\x1f\xfb\xfa\x07\x58\x8a\x76\x7c\x68\x1a\x69\xa3\x79\xb9\x1e\x0b\x4c\x1d\x95\x99\x88\xa3\x1b\x0b\xf9"
+"\x2f\x15\x68\x6e\x6f\x6a\x69\xa8\x6f\xae\xae\xa8\xa7\xac\xae\x6f\xa6\x67\x1f\x0e\x74\x8d\x81\x91\x82\x1e\x7b\x95\x9c\x82\x9e\x2d"
+"\x1d\x0b\x94\x1f\x9b\x95\x95\x9b\x9d\x1a\x9c\x83\x9a\x7d\x95\x1e\x93\x80\x82\x8d\x6f\x1b\x0b\xf8\x14\x16\xf7\x0d\xf7\x33\x1d\x7f"
+"\xf7\x51\x06\xe6\x40\xc1\xfb\x12\x58\x0b\x06\x77\x84\x8a\x88\x81\x1f\x79\x85\x7c\x76\x76\x1a\x7b\x93\x7b\x99\x0b\x9f\x98\xaf\x28"
+"\x1d\x37\x06\x0b\x91\xf7\x5e\x1d\x80\x1e\x25\x0b\x9b\x2a\x1d\x81\x8d\x70\x1b\xfb\x0a\x06\x0b\x1a\x7a\x93\x7c\x99\x81\x1e\x83\x96"
+"\x96\x89\xa5\x1b\x96\xfb\xfa\x80\x6d\x1d\x0b\x89\xf7\x4e\x1d\x7b\x93\x7b\x99\x81\x3f\x1d\x0b\x86\x90\xa3\x88\xad\x1b\x96\x06\xcb"
+"\xa2\x99\xb0\xb2\x75\x0b\x15\x46\x51\x55\x4a\x4a\xc5\x55\xd0\xd0\xc5\xc1\xcb\xcd\x52\xc1\x45\x1f\x50\x04\xae\xaa\x70\x6b\x0b\xf7"
+"\x64\x1d\x81\x80\x79\x78\x1a\x79\x94\x7b\x6a\x1d\x0b\x94\x78\x1b\x7a\x7b\x83\x7e\x80\x1f\x83\x81\x89\x0b\x15\x98\x7b\x85\x8e\x7f"
+"\x40\x1d\x91\x81\x9d\x7d\x1f\xf7\x1a\x0b\x1f\x9b\x95\x95\x9b\x9d\x1a\x9c\x83\x9a\x7d\x95\x1e\x93\x80\x80\x8d\x71\x1b\x0b\x7d\x66"
+"\x68\xa3\x79\xbb\x1f\x8f\xfb\x17\x06\x0b\x1a\x7b\x9b\x7c\x9c\x98\x95\x93\x9c\x95\x1e\x0b\xb9\x1b\xa9\x9e\x86\x7f\x9a\x1f\x9b\x7e"
+"\x8f\x0b\x85\x81\x1f\x7b\x82\x81\x7a\x79\x1a\x7a\x93\x7c\x99\x81\x1e\x84\x95\x0b\x6b\x72\x73\x6d\x6c\xa4\x73\xab\xab\xa4\xa3\xa9"
+"\xaa\x72\xa3\x6b\x1f\x0b\x07\xa3\x1d\x0b\x68\x6e\x70\x69\x6a\xa8\x6f\xae\xae\xa8\x0b\xb9\xa3\x9c\xae\x9b\x83\x9b\x7d\x95\x1f\x92"
+"\x80\x82\x8d\x6f\x1b\x0b\x94\x54\x1b\xfb\x2d\x20\x2a\xfb\x1f\x0b\x5c\x73\x75\x1d\x0b\x9b\x94\xf7\x69\x1d\x93\x80\x0b\x7d\x84\x80"
+"\x7e\x1a\x76\x9e\x79\xa1\x96\x92\x8e\x98\x0b\x1f\x9b\x95\x95\x9c\x9d\x1a\x9b\x83\x9b\x7d\x95\x1e\x0b\xa1\x9b\xa5\x94\x85\x99\x85"
+"\x92\x1f\x94\x83\x7e\x8e\x0b\x7d\xa3\x1b\xa9\xa3\x99\xac\xa7\x1f\xa1\xa6\x93\x0b\x9b\x83\x9b\x7d\x95\x1f\x93\x80\x82\x8c\x6f\x1b"
+"\x0b\x9d\xad\x9b\x2a\x1d\x81\x8d\x0b\x1b\x80\x80\x90\x9e\x69\x1f\xa9\x59\x78\x92\x0b\x9d\x1b\x9c\x70\x1d\x0b\xd5\xc1\xc9\xa1\x7c"
+"\x9a\x75\x0b\x1e\x3d\x06\x61\x75\x79\x69\x0b\x72\x81\x8a\x85\x82\x1f\x7b\x0b\x9d\x5c\x1f\xfb\x0c\x06\x5d\x73\x79\x68\x0b\xf8\x29"
+"\xf7\x7a\xb2\x1d\x0b\x15\xfb\x13\x80\x07\xde\x1d\xf7\xfa\x06\xad\x8f\x9d\x9d\xa9\x1a\x9b\x83\x9a\x7d\x96\x1e\x92\x4b\x1d\x7a\x93"
+"\x7b\x99\x81\x1e\x84\x96\x95\x89\xa6\x1b\x96\xfb\x14\xfb\x62\xf7\x14\x96\x06\xa4\x95\x8c\x91\x94\x1f\x9b\x95\x95\x9b\x9e\x33\x1d"
+"\x4b\x1d\x6d\x9d\x79\xad\x87\x1e\xfb\xfa\x93\x1d\xf7\x0d\x06\xba\xa2\x65\x1d\x80\xf7\x13\x06\x0b\xf7\x26\x1d\x9c\xae\x9b\x83\x9b"
+"\x7d\x95\x1f\x93\x80\x81\x8c\xf0\x1d\x85\x8a\x88\x81\xbd\x1d\x92\x80\x82\x8d\x6f\x1b\x6c\x06\x0b\xf8\x9d\xf8\x93\xf7\x13\x1d\x59"
+"\x1b\xfb\x13\x2d\x41\x28\xf7\x55\x1d\xce\x80\x9a\x87\xa1\x80\x08\x9f\x81\x98\x79\x79\x1a\x64\x53\x6d\x42\x4c\x4d\xa6\xab\x81\x1e"
+"\x83\xa6\x8b\x8b\x84\x92\x08\x95\xee\x1d\xf7\x20\xe8\xcf\xf2\xbe\x77\xb3\x63\xaa\x1f\x6b\xa4\x64\x98\x33\x9a\x41\x99\x86\xf7\x39"
+"\x1d\x73\x66\xd8\x1d\x0b\xf7\x13\x1d\x58\x1b\xfb\x12\x2d\x41\x29\xf7\x55\x1d\xcd\x7f\x9b\x87\xa1\x81\x08\x9f\x81\x98\x79\x79\x1a"
+"\x64\x53\x6d\x43\x4b\x4d\xa6\xab\x81\x1e\x83\xa5\x8b\x8b\x84\x93\x08\x94\xee\x1d\xf7\x1f\xe9\xd0\xf1\xbe\x77\xb3\x63\xaa\x1f\x6b"
+"\xa3\x64\x99\x33\x9a\x3f\x99\x88\xf7\x39\x1d\x72\x67\xd8\x1d\x0b\xf7\x29\x1d\x7a\x1a\x7a\x93\x7c\x99\x81\x1e\x83\x95\x98\x89\xa4"
+"\x1b\xf7\x6b\x06\xa2\x97\x6c\x1d\x71\x1b\xf7\x76\xf8\x33\x05\xad\x8f\x9e\x9d\xa8\x22\x1d\x2f\x06\x2e\x1d\x7b\x93\x7b\x99\x81\x1e"
+"\x95\x85\x92\x89\xa1\x8a\xfb\x04\xfb\x5e\x18\xfb\x01\xf7\x5e\x05\xaf\x8d\xa0\x9e\xa9\x1a\x9c\x83\x9a\x7d\x95\x1e\x93\x83\x1d\x0b"
+"\xf7\x6f\xf7\x33\x15\x99\x95\xec\x39\x05\x81\x7e\x87\x82\x7e\x1a\x69\xa3\x79\xb9\x1e\xf7\x0a\x06\xba\xa3\x9c\xae\x9c\x2a\x1d\x81"
+"\x8c\x6f\x1b\x6b\x06\xfb\x2f\xf7\x17\xf7\x06\xe3\x05\xa5\x06\xa3\x96\x8c\x91\x8c\x1d\xfb\x04\x06\x72\x80\x89\x86\x82\x73\x1d\x7d"
+"\x8f\x81\x95\x7f\x1e\x46\x57\x05\xf7\xd1\xfb\x0c\x07\x78\x83\x8b\x88\x81\x1f\x79\x85\x7c\x76\xf7\x45\x1d\xfc\x20\x7f\x06\x72\x81"
+"\x89\x85\x82\x1f\x7b\x82\x81\x7a\x79\x1a\x69\xa3\x79\xb9\x1e\xf7\x0c\x06\x0b\xf7\x3d\x1d\xf7\x13\x22\xe8\xfb\x23\x4f\x61\x7d\x66"
+"\x5c\x1f\xb2\xfb\x0c\x07\xf7\x0f\x1d\x97\xfc\x33\xc2\x1d\xd1\xf7\x7c\x15\xfb\x15\x07\x65\x8a\x74\x78\x6c\x1a\x69\xa3\x79\xb9\x1e"
+"\xf7\x61\xe0\x1d\x98\x82\x1e\x95\x84\x92\x89\xa1\x8a\x08\xfb\x12\x88\x07\x70\x20\x1d\x68\xa3\x7a\xb9\x1e\xf7\x04\x16\xd1\x31\x1d"
+"\x45\xf7\x12\xf5\x06\xe7\x8f\xcf\x46\x8d\x28\x08\x5f\x07\x2b\x4d\x51\x28\x8f\x1e\x20\x06\x0e\xf8\x53\xf7\xcf\x15\xf7\x1c\x1d\x05"
+"\x73\x74\x86\x88\x75\x1b\x81\xb6\x06\xc1\x8d\xa0\x99\xaf\x28\x1d\x36\x06\x4b\x74\x7d\x66\x66\xa0\x7c\xc2\x8a\x1f\xfb\x6d\x07\x54"
+"\x8a\x76\x7c\x67\x1a\x65\xa2\x7d\xcb\x1e\xe0\x06\xcb\xa2\x99\xb0\xae\x73\x9d\x5c\x1f\x89\x06\x89\xd1\xa3\x06\xa5\x8c\xa8\x77\xab"
+"\x62\xbd\x48\x18\xad\x5f\x8f\x89\xb1\x8a\x08\xb7\x06\xb5\xa0\x9d\xae\xb1\x75\x97\x47\x8c\x1f\x58\xcf\x76\xa8\x75\xa0\x74\x9a\x19"
+"\xcd\xcd\x05\x0b\xf7\x6e\xf7\xd6\x15\xf7\x45\xf7\x32\x1d\xfb\x45\xdb\x06\xc0\x1d\x0b\xf8\x2a\xf8\x1f\x15\xa6\x68\x58\x9b\xe1\x1d"
+"\x7a\x1a\x7a\x93\x7c\x99\x81\x1e\x83\x95\x98\x89\xa4\x1b\xf7\x04\x06\xf7\x04\xdf\xda\xf1\x8a\x1f\xf7\xe5\x97\x07\xa3\x96\x38\x1d"
+"\xfb\x0c\x06\xfb\x1b\x31\x15\xd6\xc7\x55\x48\x45\x50\x55\x3f\x41\x4f\xc2\xcf\xcf\xc7\xc1\xd5\x1f\x0b\x1f\x78\x85\x7d\x76\x75\x1a"
+"\x76\x95\x7c\x9c\x83\x1e\xfb\x3a\xfb\x1c\x05\xf7\x16\xaa\x07\xa3\x96\x8c\x91\x94\x1f\xa4\x1d\x81\x8d\x70\x1b\xfb\x2a\x87\x1d\x96"
+"\xfb\xfa\x80\x06\x72\x82\x8a\x9d\x1d\x9a\x88\xa2\x1b\xf7\x2a\x63\x1d\x0b\xf7\x98\xf8\x61\x15\xf7\x63\x37\x06\x72\x8d\x82\x91\x82"
+"\x1e\x7b\x95\x9c\x82\x9e\x1b\x9d\x9a\x92\x99\x96\x72\x1d\xf7\x4f\xfc\x70\x07\x5d\x73\x79\x69\x7b\x93\x7c\x99\x81\x1f\x83\x97\x93"
+"\x89\xa7\x1b\xc0\xfb\xfa\x56\x06\x74\x7f\x89\x86\x82\x1f\x7b\x81\x81\x7a\x79\x1a\x7b\x93\x7c\x99\x80\x1e\x84\x96\x93\x89\xa8\x1b"
+"\xf7\x6a\x06\xa4\x95\x8d\x90\x94\x99\x1d\x56\x06\x0e\x15\x78\x7e\x7d\x78\x79\x97\x80\x9e\x89\x1f\xa3\x8a\x92\x8a\x95\x86\x08\xa3"
+"\x80\x9b\x76\x77\x1a\x6a\x70\x7a\x55\x68\x7d\x8e\x94\x7d\x1e\x92\x83\x87\x8c\x84\x1b\x7b\x7e\x7d\x78\x6c\xb9\x76\xd1\xb9\xaa\x93"
+"\x9e\xa3\x1f\xa5\x9f\x9b\xad\xac\x1a\xaf\x77\xac\x68\x9f\x1e\xa9\xa1\x99\xa3\xab\x1a\xc8\x5a\xb7\x48\x4e\x54\x6b\x67\x79\x98\x7c"
+"\x9b\x93\x93\x8e\x92\x90\x1e\x9f\x9c\x99\x91\xa7\x1b\xad\xa1\x7b\x73\x74\x75\x77\x72\x1f\x0b\x84\x1d\xfb\x5e\x06\x38\xd3\x57\xf7"
+"\x09\xc1\xd9\x9b\xa1\xbc\x1e\xb3\x9d\x98\x98\xa4\x1a\xa8\x74\xa2\x6e\x7f\x85\x89\x82\x78\x1e\x76\x5f\x5b\x80\x57\x1b\x66\x70\x91"
+"\x97\x80\x1f\x86\x90\x89\x94\x9e\x1a\x0b\xd1\xf2\x15\x65\x8a\x74\x78\x6c\x1a\x7a\x94\x7b\x98\x82\x1e\x84\x95\x9a\x88\xa3\x1b\xf7"
+"\x60\xe0\x1d\x99\x82\x1e\x94\x84\x92\x89\xa1\x8a\x08\xf7\x00\xfb\xfa\x15\xf7\xfa\xf5\x07\xe7\x8f\xcf\x46\x8d\x28\x08\x5e\x07\x2c"
+"\x4d\x51\x28\x8f\x1e\x0b\x7f\x06\x72\x81\x89\x86\x82\x1f\x7b\x82\x81\x79\x7a\x1a\x7a\x93\x7c\x99\x81\x1e\x83\x95\x97\x89\xa5\x1b"
+"\xf7\x42\x06\xa2\x98\x8d\x90\x3a\x1d\x92\x2f\x1d\x55\x06\xf7\x25\xf8\x3f\x15\xdf\xc7\x5d\x4a\x6c\x79\x6a\x6f\x77\x1f\x79\x72\x6a"
+"\x82\x63\x1b\x62\x6a\x94\x9d\x72\x1f\x70\x9f\x78\xac\xa9\x1a\xcd\xc6\xb9\xe1\x1e\x0e\x08\xd2\xb0\xad\xba\xc8\x1a\xf1\x30\xd2\xfb"
+"\x19\x1e\xfb\x73\x06\xf7\x0b\x1d\xfb\xf9\x80\x06\x72\x82\xf7\x3f\x1d\xf7\x2a\x06\xa0\x9a\x8e\x8f\x3a\x1d\x93\x80\x82\x8d\x6f\x1b"
+"\x6c\x0b\xf7\xf6\xf7\xd6\x15\xe0\x06\xa3\x97\x8d\x90\x94\x77\x1d\x7c\x96\x1e\x92\x81\x81\x8d\x6f\x1b\x36\xf7\x01\x06\xa5\x8a\x92"
+"\x84\x95\x1e\x9a\x82\x79\x97\x1d\x81\x71\x1a\xfb\x01\x35\x07\x72\x81\x89\x86\x82\x1f\x7b\x82\x81\x79\x7a\x1a\x7a\x93\x7c\x99\x81"
+"\x1e\x83\x96\x96\x89\xa5\x1b\xe1\x0b\xf8\xa7\x15\x7d\x7e\x81\x77\x7b\x1f\x6f\x77\x87\x88\x7e\xab\x1d\x74\x1b\x6c\x6e\x7c\x6d\x71"
+"\x1f\x79\x76\x81\x78\x7d\x1a\x78\x9a\x7d\x9f\x96\x94\x90\x96\x94\x1e\xaf\xa7\x93\x91\x9b\x1b\x99\x92\x88\x7a\xa6\x1f\x70\xb8\xac"
+"\xa8\x1d\x9a\x9a\x1a\x9b\x7a\x9a\x78\x1e\x0e\x15\x7d\x7e\x81\x77\x7b\x1f\x70\x77\xf7\x5b\x1d\x59\x79\x92\x72\x1b\x6d\x6e\x7c\x6e"
+"\x71\x1f\x79\x75\x81\x79\x7d\x1a\x78\x9a\x7d\x9e\x97\x94\x8f\x97\x94\x1e\xaf\xa8\x92\x90\x9b\xf5\x1d\xf8\x3d\x15\x29\x06\xcc\x1d"
+"\xf7\x3c\x06\x0b\xf8\x14\xf7\xd6\x15\xfb\xe5\x07\x5c\x67\x6c\x55\x1e\xfb\x03\x06\x71\x83\x8a\x85\x81\x1f\x7b\x82\x81\x79\x7a\x1a"
+"\x7a\x93\x7c\x99\x81\x1e\x83\x95\x98\x89\xa4\x1b\xf7\x06\x06\xf7\x03\xe0\xda\xf1\x8a\x1f\xf8\x4c\xfb\xc6\x07\x4c\x1d\x96\x97\x88"
+"\xa4\x1b\x0b\x5d\x1d\x5d\x1b\x37\x5a\x5e\x1d\x0b\x15\x9a\x9a\x90\x1d\x23\x05\x76\x75\x89\x88\x4e\x1d\xf7\x9e\xf4\x15\xa0\xa2\x8b"
+"\x8b\x99\x1a\x9f\x79\x9d\x77\x7f\x82\x87\x7f\x80\x1e\x25\x23\x05\x77\x75\x89\x88\x4e\x1d\x0e\xf7\x45\x07\xa1\x1d\xfb\x45\xdb\x06"
+"\x84\x1d\x0b\x2e\x1d\x7b\x93\x7b\x99\x81\x1e\x95\x85\x92\x89\xa1\x8a\x08\xfb\x6f\x93\x1d\xf7\x04\x2b\x1d\x9b\x83\x9a\x7d\x96\x1f"
+"\x92\x80\x82\x8d\x6f\x1b\x89\x0b\x86\x1d\xf7\xec\x06\xb9\xa3\x9c\xae\x91\x1d\x0b\xb2\x8c\xa1\x9d\xab\x22\x1d\xfb\x16\x87\x1d\xaa"
+"\xfb\x9a\x06\xfb\x90\xf8\x01\x05\xfb\x09\x06\x3d\x1d\x79\x1a\x7b\x0b\x06\x73\x6b\x76\x61\x7c\x1a\x83\x92\x84\x94\x92\x8f\x8d\x92"
+"\x91\x1e\xad\xb2\xa3\x9f\xbc\xa8\x99\x94\x18\x91\x8e\x8f\x8d\x8c\x8c\x08\x99\x93\x8e\x8e\x93\x1a\x92\x87\x8f\x78\x95\x1e\x4f\xad"
+"\x6e\xa2\x6c\xae\x08\x98\x80\x87\x8e\x84\x1b\x82\x83\x85\x83\x7c\x9b\x6b\xa8\x5f\x1f\x0b\x06\x5d\x73\x79\x69\x69\xa3\x7a\xb9\x1f"
+"\x90\x55\xfb\x5c\xc1\x90\x06\xb9\xa3\x9c\xad\xad\x73\x9d\x5d\x1f\x2c\x06\x5d\x73\x79\x69\x6d\x9c\x7a\xae\x87\x1f\xfb\x6e\x07\x58"
+"\x8a\x76\x7b\x69\x1a\x68\xa3\x79\xb9\x1e\xf7\x07\x27\x1d\x86\xc7\x0b\xe5\xf2\x15\x80\x06\x72\x82\x89\x86\x61\x1d\xf7\xbb\x06\xf7"
+"\x0d\xdb\xc9\xea\xc6\x69\xba\x47\xab\x1f\xb4\xaa\x9d\xac\xb7\x1a\xe8\x36\xcf\xfb\x07\x1e\xfb\x91\x06\x72\x81\x89\x86\x82\x1f\x7b"
+"\x0b\x15\x8c\x98\x8c\x97\x93\x1a\xb9\x64\xaf\x5a\x59\x64\x67\x5d\x84\x8c\x7e\x8c\x7e\x1e\xa8\xfb\xac\x05\x6a\x8e\xa1\x77\xac\x1b"
+"\xab\xa1\x9f\xac\x8e\x1f\x5a\xfb\x80\x15\xb5\xac\xaa\xb2\xb2\x6a\xaa\x61\x1f\x7a\x06\x62\x6a\x6c\x64\x64\xac\x6c\xb4\x1f\x0b\xf7"
+"\x63\x1d\x88\x8f\x84\x91\x1f\x63\xac\x78\xa1\x6d\xbc\x88\x8f\x88\x90\x88\x90\x08\x88\x90\x87\x91\x8b\x1a\x98\x84\x88\x8e\x82\x1b"
+"\x84\x87\x87\x79\x81\x1f\x6a\x52\x72\x6b\x67\x6f\x08\x7e\x80\x88\x86\x85\x1a\x81\x92\x84\x93\x99\x0b\xf7\xf6\xf8\x60\x15\xe9\x67"
+"\x1d\xfb\xbc\x68\x1d\xe9\xfb\xf8\x2d\x68\x1d\xf7\xbc\x67\x1d\x2d\x06\xfb\x31\x0b\xa5\x77\x5e\x1f\xfb\x3a\x07\x65\x74\x78\x6b\x68"
+"\xa3\x7a\xba\x1f\xe4\x06\xb9\xa3\x9c\xae\x9b\x83\x9b\x7d\x95\x1f\x81\x91\x84\x8d\x75\x8c\x08\xf7\x3e\xf7\x5a\x1d\x5c\x1b\x56\x6a"
+"\x7e\x63\x5d\x1f\x0b\x07\x8c\x98\x94\x8c\x8f\x76\x1d\x75\x91\x94\x7a\x1f\x96\x77\x89\x8c\x55\x1d\x7a\x94\x7e\xa0\x80\x1f\x7e\xa5"
+"\xb2\x81\xa7\x1b\xcd\xb9\xb3\xc3\xbe\x72\xa8\x59\x96\x1f\x0e\x8c\x98\x94\x8c\x8f\x76\x1d\x75\x91\x94\x7a\x1f\x96\x77\x89\x8c\x55"
+"\x1d\x7a\x94\x7e\xa0\x80\x1f\x7e\xa5\xb3\x81\xa7\x1b\xcc\xb9\xb3\xc3\xbd\x72\xa9\x59\x96\x1f\x0b\x94\x1e\x92\x6b\x8b\x8b\x93\x83"
+"\x08\x82\x94\x9a\x85\x9a\x1b\x9c\x9a\x93\x98\x96\x1f\x93\x96\x8d\x93\xa6\x1a\x0b\xf7\x21\x1d\xfb\x17\xf7\x02\x2e\xf7\x32\xd3\xf2"
+"\x9c\x9f\xb8\x1e\xa4\x95\x97\x9a\xa0\x1a\xa8\x75\xa2\x6e\x80\x80\x89\x88\x7e\x1e\x0b\xfc\x6f\x07\x71\x83\xf7\x19\x1d\x96\xfb\xfa"
+"\x80\x6d\x1d\x7a\x7a\x1a\x69\xa3\x79\xb9\x1e\x0b\x71\x83\x50\x1d\x99\x81\x1e\x84\x96\x95\x88\xa6\x1b\x97\x0b\x15\xfb\x28\xfb\x17"
+"\x05\x7f\x81\x86\x82\x82\x1a\x78\x9b\x7d\x9f\x97\x8e\x8c\x98\x9b\x1e\xf7\x90\xf7\x46\xfb\x90\xf7\x47\x05\x98\x7a\x89\x8c\x7f\x1b"
+"\x77\x7b\x7d\x78\x81\x90\x84\x97\x80\x1f\x0b\xf8\xc5\xdf\x1d\x72\x82\x8a\x85\x81\x1f\x7b\x82\x81\x79\x7a\x1a\x7a\x93\x7b\x99\x82"
+"\x1e\x84\x95\x99\x88\xa3\x1b\xf7\x0d\x06\xb9\xa3\x65\x1d\x89\x0b\x15\x73\x7c\x7b\x73\x3f\xdf\x47\xea\xea\xdf\x6f\x1d\x82\x6a\xf7"
+"\x1d\x1d\x06\xf7\x32\x87\xf7\x03\xf1\x8c\xf7\x2c\x08\xb7\x07\xf7\x2d\xfb\x07\xf7\x0b\xfb\x27\x89\x1e\xfb\x68\x06\x70\x20\x1d\x7a"
+"\x94\x7b\x0b\x58\x1b\xfb\x1d\x24\x2a\xfb\x15\xfb\x14\xf3\x29\xf7\x1c\xbd\xb8\x99\xa9\xb5\x1f\x5e\x07\x5c\x67\x6c\x55\x1e\xfb\x01"
+"\x06\x71\x83\x8a\x85\x81\x1f\x7b\x82\x81\x79\x0b\xf7\x12\x1d\x82\x87\x80\x84\x9b\x1d\x0e\x15\x9d\xf7\x57\x1d\x7e\x7b\x1e\xfb\x19"
+"\x21\x05\x7b\x7e\x83\x7f\x7e\x1a\x77\x9e\x79\xa1\x95\x94\x8f\x97\x9a\x1e\x0e\x95\x1d\x6a\x6d\x70\x67\x67\x6d\xa6\xac\xab\xa9\xa6"
+"\xaf\x1f\x0e\xf7\x1f\x1d\x7f\x9b\x93\x87\x95\x1b\xa2\x9e\x9d\xa0\x99\x85\x94\x78\x9a\x1f\x0e\xf7\x6f\xf7\x0d\x15\x34\xb9\x5a\xde"
+"\xbf\xad\xa2\xaf\xa7\x73\xa3\x6f\x84\x82\x89\x89\x83\x1e\x89\x85\x85\xf7\x53\x1d\x0b\xa1\x9b\x9d\x9e\x95\x97\x88\x86\x9b\x1e\x86"
+"\x9c\x8f\x8a\x95\x1b\xa9\xa2\xa2\xa8\x9d\x83\x99\x7c\x95\x1f\x98\x76\x5f\x95\x66\x1b\x3d\x4d\x4c\x3b\x1f\x69\x0b\xf7\x53\x1d\x56"
+"\x1d\x5e\x1e\x0b\xaf\x1d\x81\x81\x7a\x7a\x1a\x7a\x93\x7c\x99\x81\x1e\x84\x95\x0b\x95\x1d\x69\x6d\x70\x67\x67\x6d\xa7\xab\xac\xa9"
+"\xa6\xaf\x1f\x0b\x70\x20\x1d\x69\xa3\x79\xba\x1e\xf7\x7a\x06\xba\xa3\xaa\x1d\x6f\x1b\x4e\x0b\x6a\x1d\xf8\xb4\x06\xa2\x98\x8d\x91"
+"\x95\x1f\x9c\x95\x96\x9d\x9e\x1a\x9d\x82\x9c\x7c\x95\x1e\x93\x7f\x82\x8d\x6e\x1b\x0b\xaa\x9b\x98\xa4\xa4\x7b\x98\x6c\x1f\xfb\x01"
+"\x06\xbc\x89\x7c\x9f\x66\x1b\x66\x7b\x77\x5a\x8a\x1f\x5f\x06\x6c\x7b\x7e\x72\x72\x9b\x7e\xaa\x1f\xb7\x0b\x81\x7d\x90\x7c\xf7\x50"
+"\x1d\x4c\x07\x5e\x9d\x75\xaf\x9c\x94\x90\x9c\x9b\x1e\x72\xbe\xbd\x80\xc1\x1b\x0b\x9d\x2d\x1d\x94\xa6\x1a\xf6\x07\xa4\x8a\x93\x84"
+"\x95\xf7\x60\x1d\x81\x1f\x83\x0b\x70\x1b\x6e\x06\x5e\xf6\x4e\xda\x50\xa9\xf7\x3e\xf7\x22\x18\xb5\xa2\x9d\xac\x9c\x83\x9a\x7d\x95"
+"\x1f\x93\x2f\x1d\x27\x06\x76\x0b\xf8\x82\xf8\x61\x15\xc0\x69\x1d\xfb\xa8\x06\x0b\x15\xf7\x01\x30\x05\x82\x97\x93\x87\x96\x1b\x9f"
+"\x9d\x9c\xa0\x9a\x88\x8f\x75\x9c\x1f\xfb\x2d\xf7\x11\xfb\x2f\xfb\x11\x05\x73\x79\x89\x0b\x1a\xa1\x79\x9c\x74\x7f\x85\x51\x1d\xa5"
+"\x1d\x9b\x1e\x0e\xf7\x01\x1d\x0e\xf7\x24\x1d\xa5\x93\x9a\x9a\x1a\x9b\x7a\x9a\x78\x1e\x0e\x87\x1e\xf7\x10\x26\xfb\x21\xfb\x0a\x05"
+"\x67\x88\x77\x79\x6d\x1a\x69\xa3\x79\xb9\x1e\xf7\x03\x06\xba\xa2\x9c\xaf\xa2\x82\x97\x0b\xab\xa4\xa3\xa9\xaa\x72\xa3\x6b\x1f\xf7"
+"\x61\x4a\x1d\xf7\x6c\xf7\x1c\xf7\x5d\x1d\x79\xf7\x61\x1d\xf7\x9a\x05\x0b\x1e\x29\x06\x4c\x74\x7e\x65\x66\xa4\x7a\xc3\x8c\x1f\xfb"
+"\xf8\x07\x4f\x8a\x76\x7d\x65\x1a\x66\xa2\x7d\xca\x1e\xed\x06\x0b\x15\x99\x97\x92\x96\x97\x1a\x9d\x7a\x9b\x78\x82\x81\x53\x1d\x7d"
+"\x80\x84\x80\x7e\x1a\x79\x0b\xf7\x4f\x06\xa4\x89\x94\x85\x94\x1e\x9b\x81\x7a\x94\x78\x1b\x79\x54\x1d\x82\x70\x1a\x37\x0b\xcb\x07"
+"\xc6\x8d\x9e\x97\xb0\x28\x1d\x3a\x06\x4d\x73\x7d\x67\x68\xa1\x7a\xb9\x8a\x1f\x4b\x07\x0b\xf7\xc4\x15\xe4\xf7\x58\x05\x97\xa6\x8e"
+"\x94\xf7\x3b\x1d\x0b\xa3\x89\x95\xf7\x0c\x1d\x0b\x06\x70\x84\x8a\x85\x81\x3c\x1d\x84\x96\x96\x89\xa5\x1b\x0b\x06\xa4\x8a\x93\x84"
+"\x4d\x1d\x80\x72\x1a\x0b\x46\xfb\x5c\x05\x88\x85\x8a\x83\x85\x1a\x7b\x9b\x7d\x9e\x99\x94\x91\x9d\x97\x1e\xf7\x25\xf7\x76\x05\x0b"
+"\xf7\x0e\x1d\x96\x0b\x85\x94\x1e\x9b\x81\x7a\x94\x78\x1b\x7a\x7b\x83\x7e\x80\x1f\x83\x80\x89\x82\x70\x1a\x5d\xfb\x8c\x0b\xf7\xc0"
+"\xf7\x95\x15\xe6\xfb\x95\x05\xf7\x08\x06\xc7\xf8\x62\x05\xa9\x90\x9c\x9e\xa6\x1a\x9b\x83\x0b\x70\x84\xf7\x19\x1d\x0b\x72\x81\xf7"
+"\x17\x1d\x0b\x77\x1a\x6d\xa6\x71\xab\xa0\x95\x91\xac\xa6\x1e\xa8\xa4\x94\x93\x92\x1b\x90\x99\x82\x7c\x9d\x1f\x0b\x06\x77\x84\x8a"
+"\x88\x82\x1f\x77\x85\x7d\x76\x76\x1a\x0b\x15\x8e\x91\x8f\x9b\x90\x1a\x9b\x7b\x9a\x7b\x7d\x81\x84\x79\x82\x1e\xfb\x7d\xfc\x47\x05"
+"\x87\x0b\x15\xf7\x25\x1d\x5e\x96\x0b\xf7\x30\x1d\x66\x77\x59\x68\x1f\x0b\xfb\x2f\xfb\x11\x05\x73\x78\x89\x88\x7d\x1a\x76\x9d\x7a"
+"\xa0\x95\x94\x8f\x94\x97\x1e\x0e\xf7\x48\x1d\x9b\x93\x99\x96\x1f\x93\x95\x8d\x0b\x89\x86\x82\x3c\x1d\x84\x96\x95\x89\xa6\x1b\x0b"
+"\x8a\x84\x80\x1f\x7a\x82\x80\x78\x78\x1a\x79\x94\x7b\x6a\x1d\x0b\x34\x1d\x7a\x7a\x1a\x7a\x94\x7b\x98\x82\x1e\x83\x96\x96\x89\xa5"
+"\x1b\x0b\xf7\x20\x1d\x7d\x0b\x1f\xfb\xc1\xed\x07\xb9\xa3\x9c\xae\x9b\x83\x9b\x7d\x95\x1f\x81\x91\x84\x8d\x76\x8c\x08\x0b\x6d\x92"
+"\x9c\x7d\xa9\x1b\xb1\x9a\xa2\xc6\xbf\x77\x9f\x57\x57\x5f\x7a\x6a\x6d\x1f\x4a\x45\x0b\x84\x1f\x61\x82\x62\x70\x56\x1b\x56\x62\xa6"
+"\xb5\x82\x1f\xab\x84\x82\x95\x76\x1b\x0e\x83\x1b\x85\x7f\x92\x98\x7c\x1f\xc9\x44\x70\x99\x5e\x1b\x5f\x69\x79\x5f\x63\x1f\x6d\x0b"
+"\x15\x98\x7b\x85\x8e\x7f\x40\x1d\x92\x80\x9c\x7e\x1f\xf7\x1a\x20\x05\x0b\x15\x9a\x97\x92\x96\x97\x1a\x9d\x7a\x9b\x78\x82\x80\x53"
+"\x1d\x0b\xf8\xbe\xf7\x38\x15\xb4\x07\xf7\x1a\xfb\x03\xed\xfb\x2c\xfb\x29\xfb\x05\x28\xfb\x15\x0b\x06\x72\x81\x89\x86\x82\x3c\x1d"
+"\x83\x0b\x15\xf7\x1d\x06\xa2\x98\x32\x1d\x9c\x9d\x1a\x9b\x83\x9b\x7d\x0b\x1b\x99\x92\x88\x7b\xa6\x1f\x6f\xb9\xab\x7e\xa2\x1b\xaa"
+"\xa3\x99\xac\xa7\x1f\xa1\x0b\xa5\x8a\x92\x85\x95\x1e\x9a\x82\x79\x94\x78\x1b\x77\x80\x83\x75\x81\x1f\x9e\x6a\x0b\xf7\x5a\xf7\x5c"
+"\x15\xc3\xb9\xc5\x7b\xcf\x28\xb6\xfb\x17\x19\xf7\x05\x06\xb9\xa3\x0b\x1e\x87\x7b\x8a\x85\x7d\x1a\xf7\x00\xfb\xf8\x15\xf7\x6f\xcc"
+"\xfb\x6f\x07\x0e\xf8\x60\x15\xfb\xf8\x81\x07\x5c\x73\x79\x69\x69\xa3\x79\xba\x1f\xf7\x0c\x06\x0b\xf7\x82\x91\x15\x56\x28\x05\x29"
+"\x06\x72\x82\x89\x86\x81\x1f\x7b\x82\x81\x79\x0b\x76\x7d\x6c\x6a\x1a\x4a\xbb\x5f\xd3\xd3\xbb\xb6\xcd\xac\x7d\xaa\x71\xa0\x1e\x0b"
+"\x34\x1d\x7a\x7a\x1a\x7a\x0b\x06\x71\x83\x8a\x85\x81\x1f\x7b\x82\x81\x79\x7a\x1a\x69\xa3\x79\xb9\x1e\x0b\xfb\x2e\xf7\x11\xfb\x2f"
+"\xfb\x11\x05\x74\x79\x89\x87\x7d\x1a\x76\x9d\x7a\x0b\x15\xa3\x9e\x78\x74\x73\x78\x78\x74\x73\x78\x9e\xa3\xa1\x9e\x9f\xa2\x1f\x0b"
+"\x1a\x6d\xa1\x76\xa9\x1e\xac\x06\xb2\x8c\x96\x94\x9f\xbd\xb4\xf5\x18\x99\x0b\xa1\xc6\x1f\x94\x07\xf7\x51\x1d\x0b\x74\x8d\x80\x91"
+"\x81\x1e\x7b\x96\x9e\x81\x9f\x1b\x9e\x9c\x93\x9a\x96\x1f\x0b\x06\xa1\x1d\x0b\x06\xba\xa2\x9c\xae\x9b\x83\x9b\x7d\x95\x1f\x92\x80"
+"\x82\x8d\x6f\x1b\x0b\x15\xfb\x3f\xfb\x1f\xfb\x19\xfb\x37\xfb\x36\xf7\x1f\xfb\x1b\xf7\x3c\x0b\xa4\x7e\x1e\x35\x2b\x33\xeb\x05\xa4"
+"\x98\x95\x98\xa2\x1a\x9b\x83\x9a\x0b\x72\x1f\x8d\xe7\x15\xb9\x9b\xc5\xab\xcf\x1b\xcf\xc4\x6b\x5d\x9c\x1f\x0b\x79\x5d\x1b\x5e\x68"
+"\x9e\xa7\x83\x1f\xa5\x84\x82\x94\x77\x1b\x0e\x8a\x84\x80\x1f\x7a\x81\x80\x79\x78\x1a\x7a\x94\x7a\x9a\x80\x1e\x0b\x8c\x77\x95\x08"
+"\x77\x94\x7d\xa0\x9e\x1a\xb1\xbb\xa9\xc8\xc8\xb8\x0b\x8d\x90\x93\x1f\x9b\x94\x95\x9d\x9d\x1a\x9b\x83\x9b\x7d\x95\x1e\x0b\x98\x1a"
+"\xa2\x7a\x9a\x6f\x61\x80\x7e\x48\x7f\x1e\x67\xfb\x5f\x05\x0b\x1e\xfb\x7d\xfc\x47\x05\x87\x82\x87\x80\x84\x1a\x7b\x9b\x7c\x9c\x0b"
+"\xf7\x46\xc6\x15\x68\xbb\xb9\x7c\xc5\x1b\xf7\x21\xf3\xe3\xf7\x0c\x0b\x7e\x81\x87\x83\x81\x1e\x6a\x63\x6b\x82\x3b\x1b\xfb\x07\x52"
+"\x0b\x89\x85\x81\x1f\x7b\x82\x81\x7a\x79\x1a\x69\xa3\x79\xb9\x1e\x0b\x15\xf7\x28\xf7\x17\x05\x97\x96\x90\x92\x95\x1a\x9e\x7b\x99"
+"\x0b\x15\xf7\x02\x31\x05\x82\x96\x94\x87\x96\x1b\x9f\x9d\x9c\xa0\x0b\x15\xfb\x03\xe5\x05\x96\x7e\x83\x8e\x81\x1b\x76\x79\x7a\x76"
+"\x0b\x94\x1f\x9b\x95\x95\x9c\x9c\x1a\x9c\x83\x9a\x7d\x95\x1e\x93\x0b\xf7\xc1\xf7\x39\x15\xd0\xfb\x39\x05\xec\x06\xdf\xf7\xd6\x05"
+"\x0b\x76\x1a\x7a\x93\x7c\x99\x81\x1e\x83\x96\x95\x89\xa6\x1b\x97\x0b\x7c\x8e\x87\xa1\x79\x1f\xf7\x2f\xfb\x10\xf7\x2e\xf7\x10\x05"
+"\x0b\xb2\x1f\x9c\x06\xb2\xab\xa9\xb0\xb0\x6b\xa9\x64\x1f\x0e\x07\x74\x8d\x80\x91\x82\x1e\x7c\x95\x9d\x81\x9d\x1b\x9c\x0b\x15\xf7"
+"\x01\x31\x05\x82\x97\x94\x87\x95\x1b\xa0\x9d\x9c\x0b\x20\x05\x7a\x7e\x84\x80\x7d\x1a\x77\x9e\x79\xa1\x96\x92\x0b\xad\xad\x72\xb0"
+"\x1d\x69\x0b\x7e\x1a\x79\x9c\x7b\x9e\x94\x95\x57\x1d\xc0\xcd\x57\x05\x75\x82\x7e\x79\x76\x1a\x67\xa2\x7a\x0b\x07\xaf\x1d\x82\x81"
+"\x79\x7a\x1a\x0b\x15\x70\x83\x8a\x84\x80\x1f\x7a\x82\x80\x78\x78\x1a\x0b\x1b\x7a\x7b\x83\x7e\x80\x1f\x84\x81\x88\x80\x72\x1a\x0b"
+"\xb1\x89\x97\x84\x96\x1e\x9b\x80\x79\x91\x69\x1b\x4e\x0b\x81\x1e\x84\x96\x96\x89\xa5\x1b\x0b\x8a\x87\x1b\x80\x87\x91\x9a\x1f\xf7"
+"\x8b\x07\xb8\x0b\x8c\x92\x96\x1f\x9b\x94\x95\x9c\x9d\x1a\x9b\x82\x0b\x53\xab\x57\xbf\x6f\x1f\xac\x79\xaa\x82\xce\x80\x0b\x93\x1a"
+"\xa0\x79\x9d\x75\x79\x82\x85\x76\x7d\x1e\x0b\x9a\x91\x94\x98\x1a\xa1\x79\x9c\x74\x7f\x84\x88\x0b\xac\x52\x08\x79\x95\x8f\x87\x92"
+"\x1b\x92\x90\x8e\x0b\xf7\xac\x15\xfb\x13\xfb\x00\xf7\x13\x06\x0e\x07\xc4\x77\xb5\x62\xa8\x1e\xa3\x6a\x61\x97\x0b\x87\x88\x7e\x1b"
+"\x80\x7f\x90\x9e\x6a\x1f\xa8\x0b\x8f\xf7\x68\x1d\x0b\x15\x46\xfb\x80\x05\x88\x81\x8a\x87\x86\x1a\x0b\x95\x97\x1a\x9f\x79\x9d\x77"
+"\x7f\x83\x87\x7f\x0b\x1a\x7a\x93\x7b\x99\x82\x1e\x83\x96\x96\x89\x0b\x1e\x9a\x82\x79\x95\x78\x1b\x7a\x7b\x83\x7e\x0b\x9b\x7d\x9e"
+"\x99\x97\x94\x9b\x94\x1e\xf7\x25\x0b\x74\x8a\x19\x83\xf7\x00\x06\xc9\x8d\x9e\x97\x0b\x9a\x1b\x93\x92\x92\x94\x92\x0b\x70\x83\x8a"
+"\x84\x80\x1f\x7a\x0b\x06\x5e\x9d\x74\xaf\xae\x9e\xa2\xb8\x1e\x0b\x06\x5d\x9c\x75\xb0\xae\x9e\xa2\xb8\x1e\x0b\x8a\x88\x81\x1f\x78"
+"\x85\x7d\x76\x76\x1a\x0b\x91\x91\x92\x08\x5f\x8f\x9c\x79\xad\x1b\x0b\x95\x9c\x9d\x1a\x9c\x83\x9a\x7d\x95\x1e\x0b\xae\xfb\x8b\x05"
+"\x70\x8e\x95\x80\xa1\x1b\x0b\x7a\x1a\x7b\x94\x7a\x98\x82\x1e\x84\x95\x0b\x01\x00\x01\xe3\x01\x05\x00\x01\x0a\x02\x01\x40\x03\x01"
+"\x87\xff\x02\x87\xa0\x02\x8e\x02\x00\x01\x00\x02\x00\x03\x00\x3c\x00\x5f\x01\x32\x02\x05\x02\x82\x03\x07\x03\x16\x03\x59\x03\x9a"
+"\x04\x05\x04\x44\x04\x46\x04\x48\x04\x4f\x04\x7a\x04\xca\x04\xf8\x05\x58\x05\xd8\x06\x1a\x06\x7e\x06\xe7\x07\x1e\x07\x7a\x07\xe3"
+"\x08\x02\x08\x1b\x08\x65\x08\x80\x08\xca\x09\x30\x09\xb4\x09\xb7\x09\xbe\x09\xc1\x09\xc4\x09\xc7\x09\xf8\x09\xfb\x09\xfd\x0a\x00"
+"\x0a\x3b\x0a\x3e\x0a\x41\x0a\x9b\x0a\x9e\x0a\xa1\x0a\xe1\x0b\x78\x0b\x7b\x0b\x7e\x0b\x80\x0b\x83\x0b\xa9\x0b\xac\x0b\xae\x0b\xb1"
+"\x0b\xb4\x0b\xd6\x0c\x01\x0c\x27\x0c\x5b\x0c\x6e\x0c\x73\x0c\x76\x0c\xed\x0c\xf0\x0d\x39\x0d\x3c\x0d\x8f\x0d\x92\x0d\xc4\x0d\xca"
+"\x0d\xee\x0d\xf1\x0d\xf4\x0e\x57\x0e\x5c\x0e\x5f\x0e\x61\x0e\xeb\x0e\xee\x0e\xf1\x0e\xf4\x0e\xf7\x0f\x2c\x0f\x2f\x0f\x3f\x0f\x42"
+"\x0f\x45\x0f\xa3\x0f\xb0\x10\x0c\x10\x3c\x10\x72\x10\xf6\x11\x68\x11\x6a\x11\xff\x12\x5f\x13\x11\x13\xb1\x13\xbe\x13\xd8\x14\x2b"
+"\x14\x4c\x14\x4f\x14\xb9\x15\x2b\x15\x2d\x15\x34\x15\x70\x15\x72\x15\xe1\x15\xf8\x15\xfa\x16\x06\x16\x14\x16\x1c\x16\x2d\x16\x67"
+"\x16\xc7\x16\xcd\x16\xd8\x16\xde\x17\x0b\x17\x11\x17\x17\x17\x1e\x17\x24\x17\x2a\x17\x35\x17\x3b\x17\x62\x17\x68\x17\x6a\x17\x6d"
+"\x17\xdb\x18\x3b\x18\x3e\x18\xaf\x18\xd9\x18\xdc\x18\xdf\x19\x39\x19\x3c\x19\xba\x1a\x4c\x1a\x84\x1a\xa4\x1b\x1a\x1b\xc4\x1b\xc6"
+"\x1c\x3b\x1c\x78\x1c\xdd\x1d\x41\x1d\x6e\x1d\xc9\x1d\xf3\x1e\x18\x1e\x60\x1e\xb3\x1f\x48\x1f\x4b\x1f\xea\x20\x42\x20\xb0\x21\x35"
+"\x21\x4e\x21\x68\x21\x70\x21\x77\x21\x7e\x21\xa2\x22\x09\x22\x17\x22\x31\x22\x38\x22\x46\x22\x4d\x22\x7b\x22\x83\x22\x8b\x22\xcd"
+"\x22\xe6\x22\xf2\x22\xf9\x23\x00\x23\x24\x23\x50\x23\x6f\x23\x8d\x23\x95\x23\x9d\x23\xbd\x23\xc5\x24\x01\x24\x25\x24\x3a\x24\x85"
+"\x24\xa0\x24\xcb\x25\x06\x25\x71\x25\x8f\x25\xcd\x25\xdf\x25\xfa\x26\x01\x26\x12\x26\x1a\x26\x22\x26\x75\x26\x7d\x26\xad\x26\xb4"
+"\x26\xbb\x26\xf4\x27\xa9\x27\xc6\x27\xd5\x27\xdd\x27\xf8\x28\x00\x28\x08\x28\x31\x28\x94\x28\xe1\x29\x36\x29\x7e\x29\xc1\x29\xea"
+"\x2a\x7e\x2a\xec\x2a\xf4\x2a\xfc\x2a\xff\x2b\x51\x2b\x59\x2b\xc4\x2b\xe0\x2b\xe2\x2b\xea\x2b\xf2\x2b\xfa\x2c\x03\x2c\x05\x2c\x0a"
+"\x2c\x0c\x2c\x27\x2c\x2e\x2c\x33\x2c\x38\x2c\x3f\x2c\xa3\x2c\xd7\x2c\xd9\x2d\x16\x2d\x18\x2d\x24\x2d\xd7\x2d\xd9\x2d\xe1\x2d\xe9"
+"\x2d\xf1\x2d\xfa\x2e\x77\x2e\x7e\x2e\xe3\x2e\xeb\x2e\xf0\x2e\xf8\x2f\x13\x2f\x16\x2f\x1c\x2f\x3b\x2f\x42\x2f\x4a\x2f\x6a\x2f\x72"
+"\x2f\x7a\x2f\xb7\x2f\xe3\x2f\xea\x2f\xfd\x2f\xff\x30\x07\x30\x0d\x30\x15\x30\x2c\x30\x34\x30\x3b\x30\x43\x30\xa1\x30\xa4\x30\xf5"
+"\x30\xfc\x31\x9c\x31\xc2\x32\x36\x32\x3e\x32\x45\x32\x4c\x32\x4e\x32\x55\x32\xf5\x32\xfd\x33\x05\x33\x48\x33\x4a\x33\x84\x33\x89"
+"\x33\xbc\x34\x33\x34\x3b\x34\x43\x34\x4b\x34\x82\x34\x85\x34\xe4\x34\xf0\x34\xf8\x34\xff\x35\x07\x35\x6d\x35\x74\x35\x7b\x35\xdc"
+"\x35\xe3\x35\xeb\x35\xf2\x35\xf8\x35\xfb\x36\x03\x36\x0a\x36\x0c\x36\x0f\x36\x34\x36\x36\x36\x38\x36\xaf\x36\xb1\x37\x13\x37\x9a"
+"\x38\x29\x38\x2c\x38\x4f\x38\x52\x38\xba\x38\xbc\x38\xbe\x38\xc1\x38\xe1\x38\xe3\x38\xe6\x38\xe8\x38\xeb\x39\x6f\x39\x71\x39\xa2"
+"\x39\xe5\x3a\x33\x3a\x77\x3a\xbb\x3b\x2a\x3b\x4a\x3b\xc1\x3c\x34\x3c\x96\x3c\xcc\x3d\x5f\x3d\xa8\x3e\x1f\x3e\x22\x3e\x25\x3e\x2b"
+"\x3e\x2e\x3e\xaa\x3f\x21\x3f\xa7\x3f\xd3\x3f\xf1\x40\x1c\x40\x96\x40\xeb\x40\xee\x41\x4e\x41\x51\x41\xbd\x42\x68\x42\xdd\x42\xe0"
+"\x42\xff\x43\x02\x43\x67\x43\xb0\x43\xd0\x43\xd3\x44\x25\x44\x27\x44\x2e\x44\x4f\x44\x52\x44\xea\x44\xfa\x45\x2b\x45\x66\x45\xb9"
+"\x45\xf4\x46\x34\x46\xa6\x46\xe8\x47\x57\x47\xa2\x47\xee\x48\x0c\x48\x6b\x48\x7d\x48\xe5\x48\xe8\x48\xee\x49\x1b\x49\x22\x49\xa3"
+"\x4a\x05\x4a\x14\x4a\x23\x4a\xac\x4a\xd5\x4a\xd7\x4b\x24\x4c\x01\x4c\x9f\x4d\x4f\x4d\xb6\x4e\x26\x4e\x2e\x4e\x62\x4e\x96\x4f\x01"
+"\x4f\x86\x4f\xa5\x4f\xf4\x50\x3a\x50\x80\x50\x8c\x50\xd9\x51\x0e\x51\x4c\x51\xac\x51\xb3\x51\xbb\x51\xc7\x51\xd0\x52\x28\x52\x9e"
+"\x53\x0a\x53\x62\x53\xb7\x54\x1d\x54\x41\x54\x64\x54\x6c\x54\x74\x54\x7d\x54\xbb\x54\xc3\x55\x03\x55\x3b\x55\xaa\x56\x41\x56\x7e"
+"\x56\xd3\x56\xd6\x56\xeb\x56\xf8\x57\x12\x57\x58\x57\xde\x58\x30\x58\x38\x58\x3f\x58\x62\x58\x72\x58\xd4\x58\xe3\x58\xee\x59\x24"
+"\x59\x48\x59\x4e\x59\x99\x59\xa1\x5a\x0c\x5a\x5c\x5a\x8a\x5a\xb8\x5b\x19\x5b\x82\x5b\xa9\x5b\xb0\x5b\xbb\x5b\xe4\x5b\xfb\x5c\x00"
+"\x5c\x16\x5c\x70\x5c\x9c\x5c\xfa\x5d\x01\x5d\x42\x5d\x6e\x5d\x75\x5d\x88\x5d\xeb\x5e\x50\x5e\x99\x5f\x13\x5f\x19\x5f\x5b\x5f\xe0"
+"\x5f\xea\x60\x17\x60\x20\x60\x2a\x60\xb2\x61\x23\x61\x67\x61\x6f\x61\x76\x61\x7e\x62\x14\x62\xc0\x62\xc3\x63\x0d\x63\x1a\x63\x3a"
+"\x63\x9d\x64\x52\x64\xb9\x65\x48\x65\xc5\x66\x1a\x66\x6d\x66\xc8\x67\x3e\x67\x46\x67\x7c\x67\x83\x67\x8a\x67\xaa\x67\xef\x67\xf6"
+"\x68\x9c\x68\xa4\x68\xac\x68\xc0\x69\x10\x69\xbc\x6a\x02\x6a\x80\x6a\xfa\x6b\x56\x6b\x9c\x6b\xd9\x6c\x42\x6c\x84\x6c\xa5\x6c\xf8"
+"\x6d\x23\x6d\x2b\x6d\x58\x6d\x59\x6d\x5b\x6d\x62\x6d\x6a\x6d\x70\x6d\x72\x6d\x8f\x6e\x09\x6e\x62\x6e\xd4\x6e\xdb\x6e\xf0\x6f\x18"
+"\x6f\x39\x6f\x66\x6f\x9e\x70\x25\x70\xce\x71\x63\x71\xe3\x72\x6d\x72\xdc\x73\x64\x74\x0e\x74\x89\x74\xe3\x75\x4c\x75\x77\x75\xb2"
+"\x76\x06\x76\x09\x76\x5b\x76\xab\x76\xf3\x77\x5e\x77\xbc\x77\xf6\x78\x34\x78\xb3\x79\x2e\x79\x9c\x79\xbc\x79\xbf\x79\xf5\x7a\x5d"
+"\x7a\xab\x7a\xb3\x7a\xbb\x7b\x07\x7b\x09\x7b\x10\x7b\x18\x7b\x24\x7b\xdd\x7c\x5a\x7c\x5c\x7c\x5e\x7c\x75\x7c\x93\x7c\xee\x7d\x04"
+"\x7d\x65\x7d\x92\x7d\xea\x7d\xed\x7d\xf5\x7e\x28\x7e\x41\x7e\x49\x7e\x4e\x7e\x56\x7e\x91\x7e\x98\x7e\x9f\x7f\x22\x7f\x2a\x7f\x32"
+"\x7f\x39\x7f\x42\x7f\xa5\x0e\x0e\xf8\x13\xf8\x8c\x15\x8c\x98\x8c\x98\x93\x1a\xb7\x66\xae\x5c\x5b\x66\x68\x5f\x83\x8c\x7e\x8c\x7e"
+"\x1e\xa8\xfb\xaf\x05\x6c\x8e\x9f\x78\xaa\x1b\xa9\x9f\x9e\xaa\x8e\x1f\x5e\xfb\x7f\x15\xb3\xaa\xa8\xb1\xb0\x6c\xa9\x63\x1f\x7a\x62"
+"\x1d\xf7\x17\xf8\xdb\x15\xf7\x6a\x1d\xa0\x96\x96\xa6\x8e\x1f\xab\xf7\x8b\x05\xca\x16\xae\xfb\x8b\x05\x70\x8e\x95\x80\xa1\x1b\xa0"
+"\x96\xf7\x11\x0a\xf8\x57\xf8\x44\x15\x96\xf7\x29\x8d\xa2\x05\xa2\x8d\x6f\xa5\x6f\x1b\x7b\x7b\x84\x7e\x80\x1f\x82\x81\x89\x84\x8a"
+"\x70\x80\xfb\x31\x18\x4b\x06\x96\xf7\x29\x8c\x9e\x05\xa9\x74\xa2\x6c\x7b\x7b\x84\x7e\x80\x1e\x82\x80\x89\x84\x8a\x71\x80\xfb\x31"
+"\x18\x74\x06\x70\x83\x8a\x85\x81\x3b\x0a\x7a\x93\x7c\x9a\x81\x1e\x83\x95\x95\x89\xa7\x1b\x9a\x06\x84\x2e\x05\x6e\x06\x71\x83\x8a"
+"\x85\x81\x32\x0a\x83\x96\x96\x89\xa5\x1b\xa1\x06\x80\xfb\x29\x05\x8a\x84\x8b\x84\x87\x1a\x6c\xa2\x74\xaa\xae\x9e\xa2\xb5\x1e\x97"
+"\xf7\x30\x05\xcb\x06\x80\xfb\x29\x89\x76\x05\x72\x89\xa6\x71\xa7\x1b\x9b\x9b\x92\x98\x95\x1f\x91\x91\x92\xa1\x8c\x9b\x96\xf7\x31"
+"\x18\xa2\x06\xa2\x97\x8d\x90\xf7\x43\x1d\x80\x80\x8d\x70\x1b\x7d\x06\x92\xe8\x05\xa7\x06\xa4\x94\x8d\x90\x95\x1f\x9b\x95\x95\x9c"
+"\x9c\x1a\x9c\x83\x9b\x7d\x94\x1e\x71\x1d\xfb\x1c\x24\x15\x84\x2e\x05\x4b\x06\x92\xe8\x05\x0e\xf7\xf7\xf8\xe6\x15\xa4\x8a\x93\x84"
+"\x94\x1e\x9b\x82\x79\x94\x79\x1b\x79\x7b\x83\x7e\x81\x1f\x83\x80\x89\x82\x71\x1a\x75\x07\x36\x7c\x4f\x4c\x40\x1a\x3c\xc1\x56\xf1"
+"\x77\x1e\xd4\x7d\x05\xc2\x81\xa1\x7a\x6d\x1a\x63\x5d\x6e\x4c\x56\x57\xa2\xa6\x83\x1e\x84\xa5\x8b\x8b\x83\x93\x08\x95\x81\x7c\x90"
+"\x7d\x1b\x7a\x7b\x83\x7e\x80\x1f\x83\x80\x89\x82\x71\x1a\x50\x07\x72\x8d\x82\x91\x82\x1e\x7b\x96\x9b\x82\x9f\x1b\x9a\x94\x8f\x98"
+"\x9b\x1f\xa8\x7e\x92\x89\xb1\x83\x08\x3f\x07\x73\x8d\x82\x91\x82\x1e\x7c\x94\x9d\x81\x9e\x1b\x9b\x70\x1d\x93\xa6\x1a\xd7\x07\xf2"
+"\x9f\xca\xcb\xdf\x1a\xb5\x7b\xb1\x70\xa6\x1e\x6f\xa5\x67\x9a\x4c\x98\x4a\x97\x18\x5b\x95\x74\x9b\xa4\x1a\xac\xb0\xa1\xc5\xb2\xb1"
+"\x7c\x7b\x8f\x1e\x6f\x90\x9f\x7b\xa9\x2d\x1d\x92\xa7\x1a\xa9\x07\xb8\x79\xa1\x67\x81\x84\x89\x87\x80\x1e\x8c\x87\x88\x8c\x8a\x1b"
+"\x74\x93\x83\x8d\x82\x8d\x7c\x8d\x19\x0e\xf7\x78\xf8\xe8\x15\x3e\x4d\x4f\x40\x41\xca\x4e\xd8\xd7\xca\xc7\xd5\xd7\x4e\xc7\x3c\x1f"
+"\x4c\x04\xb4\xad\x6b\x64\x62\x6a\x6b\x61\x63\x69\xac\xb2\xb3\xac\xab\xb4\x1f\xf7\x9b\xfb\x6a\x15\xa1\x92\x93\x93\x9a\x1a\x9c\x7d"
+"\x99\x7c\x86\x85\x8a\x88\x82\x1e\xfb\xfe\xfb\x05\x05\x74\x84\x84\x84\x7b\x1a\x7a\x98\x7d\x9b\x90\x93\x8d\x8d\x92\x1e\xf7\x83\xbc"
+"\x15\x3e\x4d\x4f\x41\x40\xc9\x4f\xd9\xd7\xca\xc7\xd4\xd7\x4e\xc7\x3c\x1f\x8c\x4c\x15\xb3\xad\x6b\x64\x63\x6a\x6b\x61\x63\x69\xab"
+"\xb3\xb2\xac\xab\xb5\x1f\x0e\xf7\xff\xf7\x5d\x15\x2c\xf7\x18\x05\x7a\xa3\x81\x9f\x95\x1a\xa2\xa1\x9f\xa6\x9f\x96\x85\x6f\xaa\x1e"
+"\xb7\xa2\x05\xac\x9c\x95\x97\xa2\x1a\xa7\x72\xa3\x6f\x86\x83\x89\x87\x7d\x1e\x96\x71\x77\x90\x74\x1b\x37\x42\x47\x3b\x6d\x92\x78"
+"\xa4\x62\x1f\x4f\x69\x69\x53\x4b\x1a\x2d\xd4\x4f\xf7\x06\xbe\xab\x92\x9e\xa7\x1e\x95\x7e\x05\xca\x06\xb9\xa3\x65\x1d\x8a\x06\x95"
+"\x9d\x91\x9a\x95\xaf\x08\xa5\x8f\x9d\x9f\xa6\x1a\x9c\x84\x9a\x7c\x95\x1e\x93\x20\x0a\x53\x06\x3c\xfb\x43\x15\x83\x7a\x82\x89\x75"
+"\x1b\x55\x72\x9b\xae\xa9\x9b\xa1\xab\x9b\x1f\x0e\xf7\x6c\xf8\xee\xf7\x5d\x1d\x7a\xf7\x61\x1d\xf7\x99\x05\x0e\xf8\x49\xf8\xf7\x15"
+"\x73\x7f\x82\x68\x72\x1f\x42\x22\x60\xfb\x0f\x24\x1a\x21\xaf\xfb\x02\xd3\xfb\x01\x1e\x5d\xa9\x98\x80\xa6\x1b\xa9\xa3\xa1\xa8\x98"
+"\x89\x90\x81\x9b\x1f\x45\xf5\x6c\xe7\xeb\x1a\xeb\xaa\xe4\xd1\xf7\x00\x1e\x95\x9b\x8d\x90\x98\x1a\xa8\x74\xa1\x6b\x1e\x0e\xf7\x3c"
+"\xf8\xf7\x15\x6c\x73\x75\x6e\x7e\x8d\x86\x95\x7b\x1f\xd1\x21\xaa\x2f\x2b\x1a\x2b\x6c\x30\x45\x21\x1e\x81\x7b\x89\x86\x7e\x1a\x6e"
+"\xa3\x75\xaa\xa3\x97\x94\xae\xa4\x1e\xd4\xf4\xb6\xf7\x0f\xf2\x1a\xf5\x67\xf7\x02\x43\xf7\x01\x1e\xb9\x6e\x7d\x96\x71\x1b\x0e\xf7"
+"\x68\xf7\xf9\x15\x5b\x4c\x05\x7b\x75\x87\x83\x7e\x1a\x6e\xa3\x74\xa9\xa1\x96\x92\xa6\x9f\x1e\xbc\xcb\xbc\x4b\x05\x70\x9f\x96\x84"
+"\xa1\x1b\xa9\xa3\xa2\xa8\x98\x87\x93\x7b\xa1\x1f\x5b\xca\xdb\xa4\x05\xb1\x96\x9a\x9a\xa6\x1a\xa7\x73\xa3\x6f\x81\x88\x8a\x85\x76"
+"\x1e\x3a\x72\x05\xda\x07\xa3\x89\x94\x85\x95\x1e\x9a\x82\x79\x97\x1d\x80\x72\x1a\x3c\x07\x3a\xa4\x05\x91\x76\x87\x8c\x82\x1b\x6f"
+"\x73\x73\x70\x6f\x9a\x7c\xb1\x80\x1f\x0e\xf7\xf6\xf7\x6f\xf7\x23\x1d\x94\x1e\x93\x7f\x83\x8d\x6e\x1b\xfb\x1d\xf7\x2c\x06\xa5\x8a"
+"\x92\x84\x95\x1e\x9a\x81\x7a\x97\x1d\x81\x71\x1a\xfb\x2c\xfb\x1e\x07\xd5\x0a\x95\x98\x88\xa4\x1b\xf7\x1e\xfb\x2c\x06\x74\x8d\x81"
+"\x91\x82\x1e\x7c\x94\x9e\xe5\x0a\x0e\xf4\x1d\x7e\x1d\xf7\xc9\x7d\x15\x49\x1d\x0e\xf8\x91\xf8\xdc\x15\x95\x9e\x8d\x93\x96\x1a\xa5"
+"\x72\xa2\x6f\x71\x7e\x81\x69\x7a\x1e\xfb\xd5\xfd\x1b\x05\x82\x79\x88\x81\x80\x1a\x71\xa5\x74\xa7\xa5\x98\x95\xad\x9c\x1e\x0e\xf8"
+"\x9d\xf7\xee\x15\xe3\x6e\xda\x59\xbe\x1e\xae\x67\x5b\x9d\x51\x1b\x51\x5b\x79\x68\x67\x1f\x59\x58\x6e\x3c\x33\x1a\x31\x07\x34\xa8"
+"\x3b\xbd\x59\x1e\x68\xaf\xbb\x79\xc5\x1b\xc5\xbb\x9d\xae\xaf\x1f\xbd\xbd\xa8\xdb\xe2\x1a\xfb\xe2\xec\x15\xed\xb7\xca\xd0\xd0\xb7"
+"\x4c\x29\x1e\x24\x07\x2a\x5e\x4b\x47\x47\x5e\xcb\xec\x1e\x0e\xf7\xf6\xf8\xfd\x15\xfb\x6d\x56\x05\x61\x81\x7d\x7d\x6e\x1a\x6d\xa1"
+"\x73\xa7\x95\x8e\x8c\x90\x9f\x1e\xdd\xa0\x05\xfc\x11\x2a\x07\x5f\x1d\xf7\xc2\x06\xb9\xa3\xaa\x1d\x70\x1b\x2a\x06\x0e\xf7\x6e\xf3"
+"\x15\xf7\x98\xf7\x65\xa8\xac\xde\x1a\xf6\x2e\xdc\xfb\x10\x4e\x53\x77\x68\x62\x1e\x68\x6d\x70\x5c\x6b\x1a\x70\xa4\x74\xa8\xa2\x9f"
+"\x97\x9d\x91\x1e\x96\xaa\x8c\x8d\x94\x95\x08\xa3\xa1\xac\x99\xb2\x1b\xca\xbb\x68\x5c\x6c\x7b\x78\x27\x34\x1f\x62\x67\x45\x52\xfb"
+"\x08\x31\x85\x86\x18\x20\xf8\x62\xe3\x07\xa3\x89\x94\x85\x95\x1e\x9a\x81\x7a\x94\x78\x1b\x6b\x7a\x7b\x68\x87\x1f\x0e\xf7\xa8\xf8"
+"\x09\x15\x6b\x73\x75\x6e\x6e\x9f\x7a\xae\x89\x1f\xb8\x89\x96\x89\x9f\x83\x08\xb9\x79\xa7\x6b\x69\x1a\x76\x80\x74\x7b\x7e\x1e\x74"
+"\x71\x67\x82\x47\x1b\x4b\x6e\x90\x9b\x73\x1f\x95\x7a\x86\x8d\x7e\x1b\x6c\x74\x74\x6e\x58\xde\x6a\xf7\x12\xe3\xc0\x98\xac\xb8\x1f"
+"\xba\xad\xa8\xc2\xc4\x1a\xc7\x66\xbd\x44\xad\x1e\xc7\xae\xa5\xb1\xbe\x1a\xb5\x78\xb5\x6b\xaa\x1e\xb0\x64\x57\x9e\x47\x1b\xfb\x03"
+"\x28\x57\x51\x6e\xa3\x74\xa8\x9a\x99\x91\x95\x94\x1f\xac\xab\xa5\x95\xc1\x1b\xce\xb5\x71\x61\x64\x63\x69\x5c\x1f\x0e\xf8\x57\xf8"
+"\xed\x15\xfb\x1d\x06\xfb\x87\xfc\x15\x05\x37\xf7\xa4\x6e\x69\x07\xde\x0a\xf7\x18\x06\xba\xa3\x9d\xad\x9b\x83\x9b\x7d\x94\x1f\x81"
+"\x92\x84\x8d\x75\x8c\x08\xa8\x07\xb2\x8c\xa1\x9e\xab\x4c\x0a\x81\x91\x4d\x0a\xfb\x00\x16\xfb\x1e\x06\xf7\x1e\xf7\x6a\x05\x0e\xf7"
+"\x73\xf8\x86\x15\xf7\x5a\x06\xa1\x99\x8d\x90\x93\x1f\x9b\x95\xf7\x69\x1d\x92\x80\x81\x8d\x70\x1b\xfb\xc6\xfb\xa7\x06\x6a\xa2\x73"
+"\xaa\x96\x8f\x8c\x92\x99\x1e\x9f\xb4\xb9\x98\xaa\x1b\xcd\xb6\x5e\x47\x41\x5d\x69\x26\x49\x6f\x92\xa2\x6d\x1f\x98\x7c\x83\x8e\x7c"
+"\x1b\x6e\x72\x74\x6f\x53\xe7\x61\xf7\x10\xeb\xc5\x9e\xba\xb8\x1f\xaf\xb1\x9f\xbe\xc3\x1a\xf7\x11\x30\xe6\xfb\x10\x6e\x6c\x86\x81"
+"\x68\x1e\x0e\xf7\x6a\xf7\xda\x15\xf7\x00\xa6\xe4\xd8\xee\x1b\x94\x8f\x8a\x87\x96\x1f\x85\x9c\x95\x89\x94\x1b\xa9\xa4\xa3\xa8\xb3"
+"\x5b\xa5\x42\x2e\x37\x62\x3c\x48\x1f\x57\x4e\x71\x41\x36\x1a\x45\x9d\x3f\xa6\x5d\x1e\x49\xb1\xc9\x6a\xe0\x1b\xcf\xbd\x9d\xb2\xb0"
+"\x1f\xad\xb0\x9e\xbc\xc3\x1a\xf7\x02\x34\xe4\xfb\x00\x5b\x65\x7a\x62\x5f\x1e\x93\xfb\x10\x15\xb9\xa5\xbc\xac\xb5\x1b\xbe\xb4\x61"
+"\x56\x4f\x66\x66\x4f\x4c\x68\xae\xd9\x7d\x1f\x0e\xf8\x21\xf8\x86\x15\xfb\x27\xfc\x34\x05\x85\x7c\x89\x81\x82\x1a\x71\xa4\x74\xa8"
+"\xa8\x9a\x98\xb0\x98\x1e\xf7\x33\xf8\x59\x05\xee\xfc\x4d\x34\x07\x73\x8d\x81\x91\x82\x1e\x7b\x95\x9c\x82\x9e\x1b\xab\x9c\x9c\xae"
+"\x8f\x1f\x0e\xf8\x3f\xf7\xc8\x15\xc3\xaf\xa8\xb8\xbc\x1a\xef\x2e\xda\xfb\x0b\xfb\x0b\x2e\x3c\x27\x59\xa8\x60\xc3\x66\x1e\x4d\x66"
+"\x6b\x58\x50\x1a\x23\xe4\x44\xf7\x17\xf7\x18\xe5\xd2\xf3\xc6\x6b\xbe\x4d\xb0\x1e\xfb\x13\xf7\x62\x15\xc8\xb6\x6b\x5d\x5a\x61\x6b"
+"\x4d\x4e\x60\xac\xba\xba\xb5\xab\xc9\x1f\xfb\x9b\x04\xc9\xbe\x67\x5e\x5b\x5d\x6a\x48\x49\x5c\xac\xba\xb9\xbe\xaf\xc9\x1f\x0e\xf8"
+"\x44\xf7\xa9\x15\xfb\x01\x70\x33\x3f\x26\x1b\x82\x88\x8c\x8e\x81\x1f\x91\x7a\x81\x8d\x81\x1b\x6d\x72\x74\x6d\x64\xbb\x71\xd3\xea"
+"\xdd\xb3\xdb\xcf\x1f\xbf\xc8\xa5\xd5\xe1\x1a\xd0\x79\xd7\x70\xb9\x1e\xcd\x64\x4e\xac\x36\x1b\x47\x59\x78\x64\x66\x1f\x69\x67\x78"
+"\x59\x54\x1a\xfb\x03\xe2\x32\xf7\x00\xbb\xb1\x9c\xb5\xb7\x1e\x83\xf7\x0f\x15\x5e\x71\x5a\x6a\x62\x1b\x57\x62\xb5\xc0\xc8\xaf\xaf"
+"\xc7\xcb\xad\x68\x3c\x9a\x1f\x0e\xf7\xc9\x7d\x15\x49\x1d\x9d\xf7\xc4\x15\xb2\xaa\xa9\xb0\xb1\x6c\xa8\x64\x1f\x79\x06\x64\x6c\x6d"
+"\x66\x66\xab\x6d\xb1\x1f\x0e\xf7\x01\x1d\x3a\xf7\xb4\x15\x5b\x6b\x71\x62\x62\xab\x71\xbb\xb9\xab\xa6\xb2\xb4\x6c\xa6\x5c\x1f\x0e"
+"\xf7\xaa\xf7\xa3\x15\xf7\x8c\xf7\x0a\x05\xa5\x98\x98\x9a\x9c\x1a\x93\x89\x93\x87\x93\x1e\x8a\x8d\x05\x9c\x83\x74\x96\x72\x1b\x7c"
+"\x7d\x88\x85\x7e\x1f\xfc\x51\xfb\x63\xf8\x51\xfb\x68\x05\x85\x98\x99\x88\x9a\x1b\xa4\xa2\x96\x9c\x93\x1f\x8c\x8d\x05\x8f\x93\x8d"
+"\x93\x92\x1a\x9e\x80\x97\x6e\x9a\x1e\x0e\xf7\x00\xf8\x2f\x15\x4c\x1d\x96\x97\x88\xa4\x1b\xf8\x14\x06\xa1\x98\x6c\x1d\x6f\x1b\xfc"
+"\x14\xfb\x44\x94\x0a\xf7\xcd\xf7\xa3\x15\xfb\x8b\xfb\x0d\x05\x6e\x7c\x80\x7f\x78\x1a\x84\x8d\x83\x8f\x83\x1e\x8c\x89\x05\x7a\x93"
+"\xa2\x80\xa4\x1b\x9a\x99\x8e\x91\x98\x1f\xf8\x51\xf7\x68\xfc\x51\xf7\x63\x05\x91\x7e\x7d\x8e\x7c\x1b\x72\x74\x80\x7a\x83\x1f\x8a"
+"\x89\x05\x87\x83\x89\x83\x83\x1a\x7a\x98\x7c\xa5\x7e\x1e\x0e\xef\xf8\x9d\x15\x3d\x07\x71\x0a\x7d\x94\x9d\x81\x9e\x2d\x1d\x92\xa7"
+"\x1a\x96\x07\x9a\xad\xa9\x92\xb0\x1b\xc9\xb5\x6c\x5d\x65\x62\x6f\xfb\x0f\x5f\x1f\x53\x07\x75\x8d\x80\x91\x82\x1e\x7c\x95\x9c\x81"
+"\x9e\x1b\xa9\x9e\x9d\xad\x8f\x1f\xf7\x0c\xbd\xb8\xbb\xd9\x1a\xf7\x02\x35\xd6\xfb\x13\x4b\x5e\x7f\x61\x30\x1e\xf7\x5f\xfc\xaf\x15"
+"\xb2\xaa\xa8\xb1\xb0\x6c\xa9\x64\x1f\x7a\x06\x64\x6b\x6d\x66\x66\xab\x6d\xb2\x1f\x0e\xf8\x27\xf8\x17\x15\xfb\x03\x82\x3d\x47\x30"
+"\x1a\x3a\xd4\x46\xe0\x94\x92\x8c\x8c\x9a\x1e\x89\xbe\x07\xb2\x9f\x99\xa8\x9c\x83\x97\x7c\x92\x1f\xf7\x9d\x07\xf7\x01\x3c\xd9\xfb"
+"\x01\xfb\x1a\x2b\xfb\x0d\xfb\x3b\x1e\xfb\x35\x07\x45\x9c\x45\xaa\x57\x1e\x43\xb6\xc2\x6b\xde\x1b\xee\xde\xb2\xba\xa3\x78\x9e\x71"
+"\x80\x83\x87\x7e\x7d\x1f\x79\x79\x65\x80\x5f\x1b\x5f\x6f\x98\xac\x73\x1f\x6a\xb7\x7a\xc6\xd2\x1a\xf7\x29\x07\xf7\x0c\xc8\xe5\xde"
+"\xc6\xb4\x61\x4d\x1e\xfb\x96\x04\x8a\x80\x86\x8b\x85\x1b\x5d\x69\xa7\xb0\xb6\xb4\xac\xc8\x91\x1f\x0e\x21\x1d\x0e\xd1\x1d\x82\x81"
+"\x79\x8e\x0a\x53\x0a\x0e\xc1\x1d\x0e\x30\x1d\x0e\xf7\x5a\xf7\x7c\x15\xd8\x88\x06\x74\x8d\x80\x90\x82\x1e\x7c\x95\x9d\x81\xef\x1d"
+"\x80\x89\x81\x71\x1a\x89\x3e\xf7\x13\xf7\x8c\x5e\x07\x8b\x1d\x94\xa5\x1a\xf7\x28\xda\x1d\xf7\x6b\x29\x0a\x2b\x06\x0e\x41\x1d\x0e"
+"\x50\x0a\x21\x0a\x0e\xf1\x1d\x70\x84\xb6\x0a\x89\x84\x76\x78\x1e\x77\x75\x68\x7e\x6a\x1b\x68\x6b\x93\x9f\x5b\x1f\xe4\x07\xa3\x89"
+"\x94\x85\x4d\x1d\x80\x72\x1a\xfb\x32\x07\x93\x88\x05\x61\xe5\xcc\x79\xc3\x1b\xc7\xc3\x9e\xaf\xb6\x1f\xbc\xb2\x9c\xb0\xcb\x1a\x0e"
+"\xb3\x1d\x0e\x43\x1d\x0e\xaf\x0a\x7b\x93\x7b\x99\x81\x1e\x84\x95\x99\x88\xa3\x1b\xf7\x16\x2b\x1d\x9c\x83\x9a\x7d\x95\x1f\x81\x92"
+"\x4d\x0a\xf7\xf9\x07\xad\x90\x9d\x9c\xa9\x33\x1d\x80\x81\x8d\x70\x1b\xfb\x04\x06\xfb\x19\xfb\xaa\xfb\x1c\xf7\xaa\x05\xfb\x03\xd7"
+"\x0a\x77\x1a\x6d\x9d\x7a\xad\x86\x1e\xfb\xf9\x07\x65\x8a\x74\x78\x6b\x70\x0a\xf7\x15\x06\xb9\x67\x0a\x82\x8d\x6f\x1b\x6c\x06\x0e"
+"\x33\x0a\x0e\x24\x1d\x0e\xf7\x5a\xf7\x53\x15\xe9\x06\xe9\xbe\x9c\xba\xb8\x1f\xab\xad\x9e\xb9\xb8\x1a\xf7\x00\x2f\xd7\xfb\x15\x1e"
+"\xfb\x7d\x06\x71\x20\x1d\x7a\x94\x7b\x98\x82\x1e\x83\x96\x96\x89\xa5\x96\x0a\xf7\xfa\x04\xf7\x06\x06\xce\xb3\x6c\x57\x56\x63\x6c"
+"\x48\x1f\xfb\x06\x06\x0e\xf7\xa6\x85\x15\xe9\x8c\xb6\x98\xc4\xb7\x08\xd7\xc7\xb2\xda\xe9\x1a\xf7\x35\xfb\x13\xf7\x18\xfb\x30\xfb"
+"\x30\xfb\x13\xfb\x18\xfb\x37\x32\xae\x39\xc8\x58\x1e\x9a\x7e\xa2\x7d\xb4\x73\x51\x55\x18\x7a\x7c\x87\x83\x7b\x1a\x6e\xa2\x73\xa7"
+"\x92\x96\x8d\x8e\x97\x1e\x96\xba\xc3\x94\xa2\x1b\xa0\x97\x88\x7e\xaf\x1f\x83\x9f\x9a\x88\x9f\x1b\xac\xa6\x93\xa1\xb0\x1f\xa8\x9b"
+"\x96\x99\xa1\x1a\xa9\x74\xa1\x6c\x7d\x86\x89\x7c\x73\x1e\x80\x79\x83\x88\x7c\x1b\x80\x84\x8c\x91\x75\x1f\x94\x6a\x73\x8e\x6e\x1b"
+"\x7d\x80\x8a\x88\x77\x1f\xa7\xf8\x83\x15\xea\xdb\x34\x24\xfb\x01\x3d\x34\x2a\x2b\x3c\xe3\xf4\xf5\xda\xe2\xeb\x1f\x0e\x3c\x0a\x0e"
+"\x78\x1d\x0e\x54\x0a\x22\x0a\x0e\x8b\x0a\xf7\x61\xf8\x61\x05\x9f\x92\x8b\x8e\x94\x1f\x9f\x92\x99\x9f\xa0\x31\x0a\x81\x7f\x8d\x71"
+"\x1b\xfb\x18\xf7\x22\x1d\x96\x95\x8a\xa6\x1b\x9d\x06\x0e\x5a\x1d\x0e\x79\x1d\x2b\x0a\x0e\x44\x1d\x0e\xf7\xf6\xf8\x8b\x15\xc1\x06"
+"\xba\xa2\x9c\xae\x9b\x83\x9b\x7d\x94\x1f\x93\x20\x0a\xfb\x36\xfd\x7f\xf7\x37\x06\xa2\x97\x38\x1d\x54\x06\x0e\xf7\x50\xf9\x07\x15"
+"\xad\x7a\x7e\x95\x71\x1b\x6f\x72\x74\x71\x80\x8d\x83\x95\x78\x1f\xf7\xd4\xfd\x1c\x05\x69\x9c\x98\x81\xa5\x1b\xa7\xa5\xa3\xa4\x96"
+"\x88\x95\x82\x9d\x1f\x0e\xf7\x8a\x65\x15\x55\x06\x74\x7e\x89\x86\x83\x6d\x0a\x7c\x99\x81\x1e\x83\x96\x94\x89\xa7\x1b\xf7\x36\xf9"
+"\x7f\xfb\x37\x06\x73\x80\xf7\x17\x1d\xc2\x06\x0e\xf7\xbf\xf8\x62\x15\xf7\x05\xfb\x11\x05\x72\xa2\x95\x85\xa1\x1b\xab\xa5\xa4\xa9"
+"\x9c\x86\x94\x78\xa1\x1f\xfb\x5e\xf7\x76\xfb\x5c\xfb\x76\x05\x78\x75\x86\x81\x7c\x1a\x6c\xa5\x72\xab\xa1\x95\x91\xa5\xa2\x1e\x0e"
+"\xa7\x6a\x15\x71\x82\xf7\x18\x1d\xf8\xb4\x06\xa2\x99\x8d\x91\x94\x37\x0a\x0e\xf8\x16\xbd\x0a\x0e\x23\x0a\x0e\xf7\x46\xf8\xef\x15"
+"\xfb\x0c\x06\xd6\x0a\x95\x96\x89\xa6\x1b\x97\xfc\x21\x7f\x06\x72\x81\x8a\x85\x82\x1f\x7b\x82\x81\x7a\x79\x4b\x0a\x84\x95\x98\x88"
+"\xa4\x1b\xf7\x0c\xa9\x06\x6c\xbc\xb3\x7f\xc5\x1b\xf7\x27\xf2\xe8\xf7\x19\xca\x73\xc3\x5c\xb6\x1f\xb6\x5c\x52\x9f\x3f\x1b\x52\x59"
+"\x7c\x6e\x64\x1f\xf7\x23\x50\x15\xbc\xaa\x80\x71\xa7\x1f\xa3\x74\x99\x6c\x6c\x1a\x6c\x7d\x6b\x73\x74\x1e\x72\x70\x6a\x7f\x5d\x1b"
+"\x5c\x6a\x97\xa4\x70\x1f\x73\xa2\x7d\xaa\xa9\x1a\xd4\xc6\xbe\xdf\x1e\x0e\x3d\x0a\x0e\xf8\xab\xf8\xef\x15\xfb\x0c\x06\x71\x83\x50"
+"\x1d\x99\x81\x1e\x84\x96\x95\x88\xa6\x1b\x97\x21\x06\xa8\x64\x59\x9a\x52\x1b\x3e\x52\x77\x60\x5c\x1f\x5c\x60\x73\x53\x4c\x1a\x4b"
+"\xa3\x53\xba\x60\x1e\x60\xba\xc4\x77\xd7\x1b\xc5\xb3\x97\xaa\xbc\x1f\x6d\xf7\x0c\x45\x0a\x7f\x06\xfb\x91\xf7\x7c\x9b\x0a\x35\x1d"
+"\x0e\xf7\xc3\xf7\xd6\x15\xf7\x27\xf7\x32\x1d\xfb\x27\xaa\x06\xa8\xa5\x99\xc2\xab\xb5\x87\x85\xb0\x1e\x89\x98\x95\x8a\x92\x1b\xa7"
+"\xa1\xa2\xa9\xa3\x7b\x9c\x6e\x93\x1f\x93\x6a\x4d\x92\x60\x1b\xfb\x0d\x3f\x53\x30\x1f\x6c\x61\x07\x70\x83\x8a\x4f\x0a\x7a\x79\x1a"
+"\x68\xa3\x7a\xb9\x1e\xb6\xfb\x6f\x55\x06\x89\x1d\xf7\xbd\x31\x1d\xfb\x1b\x06\x0e\x7a\x1d\x0e\xf7\x5b\xad\x0a\x89\x06\x41\x0a\xbf"
+"\xc3\x9f\x95\x9c\x1d\x81\x6b\x1a\xfb\x33\x89\x07\x71\x82\x50\x1d\x9a\x81\x3f\x1d\xf7\x04\xf7\x33\x1d\x89\xf7\x40\x06\xec\x42\xcc"
+"\xfb\x00\x59\x5c\x78\x69\x67\x1e\x0e\x25\x0a\x7d\x66\x1d\x0e\xf8\x14\xf7\xd6\x15\xfb\xe5\x07\x5c\x67\x6c\x55\x1e\xfb\x03\x5e\x0a"
+"\x96\x97\xb8\x0a\xfb\xc6\x07\x4c\x1d\x96\x97\x88\xa4\x1b\xf7\x8c\xf7\x59\x1d\xb7\x1d\x0e\x34\x0a\x0e\xf7\x25\xf8\x3d\x15\x2a\x06"
+"\x2e\x1d\x7b\x93\x7b\x99\x81\x1e\x94\x85\x92\x89\xa1\x8a\x08\xfb\x6f\x07\x66\x74\x77\x6c\x69\xa3\x79\xba\x1f\xe3\x63\x1d\x81\x91"
+"\x4d\x0a\xf7\x53\x07\xaa\xa8\x9c\x94\xa6\x1b\xa1\x93\x82\x73\xf7\x1b\x1d\xf7\x53\x07\xab\xab\x9a\x93\xa5\x1b\xa2\x92\x83\x72\xf7"
+"\x1b\x1d\xf7\x62\x07\xd5\x52\xc1\x3c\x63\x6a\x7d\x6c\x6d\x1e\xa8\x6f\x68\x9b\x64\x1b\x6d\x78\x84\x73\x6b\x1f\x0e\xf7\x5b\x46\x1d"
+"\x0e\x25\x1d\x0e\xb8\x1d\xf8\x3f\x2e\x15\x55\x06\x73\x80\x89\x86\x82\x1f\x7b\x81\x81\x7b\x79\x4b\x0a\x83\x95\x97\x89\xa5\x1b\xf7"
+"\x42\x06\xa2\x98\xe0\x0a\x92\x80\x81\x8d\x70\x1b\x7f\xf8\x33\x97\x06\xa4\x95\x8c\x91\x94\x1f\x9b\x94\x95\x9d\x9c\x1a\x9c\x83\x9b"
+"\x7d\x94\x1e\x93\x20\x0a\xfb\x0c\x64\x06\xb0\x5c\x61\x99\x4e\x1b\xfb\x23\x22\x2e\xfb\x13\xfb\x0c\xf3\x33\xf7\x22\xc5\xb9\x9a\xae"
+"\xbb\x1f\xfb\x25\xf7\xa7\x15\xb4\xab\x82\x79\xa5\x1f\xa6\x78\x9e\x69\x6d\x1a\x49\x50\x5d\x34\x63\x6a\x94\x9d\x72\x1e\x6f\x9f\x79"
+"\xac\xaa\x1a\xaa\x9d\xac\xa7\x9f\x1e\x9d\xa4\xab\x94\xb5\x1b\x0e\x58\x1d\x0e\x42\x1d\x0e\xbb\x1d\x0e\x2c\x1d\x0e\xf7\xc2\xf7\x15"
+"\x15\x24\xf7\x55\x05\xa3\x95\x8c\x91\xf7\x43\x1d\x2f\x1d\xfb\x18\xbf\x0a\x96\x06\xf7\x3c\xfb\xd6\x05\xf7\x00\x06\xf7\x3b\xf7\xd6"
+"\x05\x99\x06\xa4\x94\x8c\x91\x95\x99\x1d\xfb\x1b\xbf\x0a\x8f\x06\x0e\x3e\x0a\x0e\x7a\x0a\xbb\x1e\xf7\x04\x63\x1d\x82\x91\x84\x8d"
+"\x78\x8c\x08\x0e\x59\x1d\x0e\x40\x0a\x0e\xf7\xf4\xf8\x67\x15\xa3\x8c\x92\x92\xa3\x1b\xaa\x8d\xa1\xa0\xa8\x1a\xaa\x73\xa0\x67\x43"
+"\x4e\x50\x46\x1e\xfb\x31\x07\x73\x86\x85\x73\x89\x1e\x69\x87\x79\x79\x6d\x1a\x6c\x9d\x79\xad\x87\x1e\xa3\x89\x90\x85\x73\x1a\xfb"
+"\x39\x07\x45\xc8\x50\xd4\xae\xa3\xa0\xaa\xa8\x75\xa0\x6c\x8d\x1e\x72\x8c\x85\x91\x8a\xa4\x08\xf7\x29\x07\xbe\x86\x9b\x74\xa6\x1e"
+"\xa1\xa3\x90\x9d\x8c\xb5\x08\x0e\xf7\xfa\xf9\xcd\x15\xfb\x08\xfe\xc7\xf7\x08\x06\x0e\xf7\x8c\x81\x15\x72\x8a\x84\x84\x73\x1b\x6c"
+"\x8a\x75\x75\x6e\x1a\x6c\xa3\x76\xae\xd4\xc8\xc6\xd1\x1e\xf7\x30\x07\xa4\x90\x90\xa3\x8e\x1e\xad\x8e\x9d\x9d\xaa\x1a\xa9\x79\x9d"
+"\x69\x8f\x1e\x73\x8d\x86\x91\xa3\x1a\xf7\x3a\x07\xd0\x4e\xc6\x42\x68\x73\x76\x6c\x6e\xa1\x76\xaa\x89\x1e\xa4\x91\x84\x73\x8c\x1f"
+"\xfb\x2a\x07\x58\x90\x7c\xa2\x70\x1e\x76\x72\x85\x79\x8a\x61\x08\x0e\xf8\x7c\xf8\x0b\x15\x75\x7e\x83\x6f\x75\x1f\x6e\x75\x7f\x80"
+"\xf7\x1e\x1d\x6a\x80\x78\xf7\x10\x1d\x56\xc8\xb2\x77\xb5\x1b\xb5\xab\x9d\xb6\xb1\x1f\xae\xb3\x93\x98\xa0\x1a\xaa\x71\xa4\x6b\x1e"
+"\x0e\xf7\x6e\x23\x15\x8a\x7e\x8a\x7e\x83\x1a\x5e\xb0\x69\xba\xbb\xb0\xae\xb7\x93\x8a\x98\x8a\x98\x1e\x6e\xf7\xaf\x05\xaa\x88\x77"
+"\x9e\x6c\x1b\x6d\x77\x78\x6c\x88\x1f\xb8\xf7\x80\x15\x64\x6c\x6d\x66\x65\xaa\x6e\xf7\x47\x1d\xf7\xf7\xea\x15\xe4\x9a\xc6\xb1\xb4"
+"\x1a\xa7\x72\xa4\x6e\x7d\x82\x88\x82\x7d\x1e\x74\x6a\x6b\x80\x66\x1b\x45\x56\xb8\xc6\xca\xc3\xb8\xd8\xb7\xa0\x80\x70\x92\x1f\x92"
+"\x6e\x8b\x8a\x94\x83\x08\x83\x93\x9b\x85\x98\x1b\x9c\x9c\x93\x98\x95\x1f\x93\x96\x8d\x94\xa5\x1a\xb3\x07\xa4\x66\x0a\x84\x85\x8a"
+"\x88\x84\x1f\x79\x96\x73\x92\x6f\x90\x08\xc7\x07\xa5\x66\x0a\x7a\x7b\x84\x7d\x80\x1f\x83\x80\x89\x81\x71\x1a\x45\x07\x29\x74\x45"
+"\x38\x2e\x1a\x28\xcd\x3b\xf1\x73\x1e\x41\x07\x74\x8d\x80\x91\x83\x1e\x7b\x95\x9d\x82\xac\x1d\x94\xa5\x1a\x0e\xf7\xce\xf7\x7c\x15"
+"\xa3\x97\x32\x1d\x9b\x9d\x31\x0a\x80\x81\x8d\x6f\x1b\x4a\x06\x89\x93\x05\x7a\xc6\x8b\x8b\x9f\xc4\x0a\x3a\x24\x41\x47\x2d\x6f\x8f"
+"\x76\x97\x6a\x1f\x64\x06\x71\xdc\x0a\x7b\x78\x1a\x7b\x93\x7c\x99\x81\x1e\x83\x96\x96\x89\xa5\x1b\xcc\x06\x8c\x85\x8b\x84\x89\x1a"
+"\x6a\x85\x6e\x7f\x74\x1e\x82\x7a\x80\x84\x74\x87\x08\x66\x83\x7b\x7c\xef\x0a\xae\x75\xa1\x6a\x6e\x79\x7c\x6e\x86\x1f\xfb\x56\x06"
+"\x9b\xb2\x90\xa5\xb4\x1a\x8e\x8b\x94\x8a\x95\x1e\x0e\x9a\x0a\xf7\xc1\xf7\xeb\x15\x34\xf7\x0a\x05\xa1\x92\x99\x9e\xa2\x33\x1d\x80"
+"\x83\x8d\x6d\x1b\x2f\x06\x71\x83\x8a\x85\x81\x32\x0a\x96\x84\x94\x89\xa5\x8a\xf7\x18\xfb\x4a\x18\x4b\x06\x74\x7f\x81\x77\x77\x98"
+"\x80\xa1\x1f\xe8\x72\x2e\xf7\x0b\x0a\xe8\x71\x61\x06\x70\x20\x1d\x7a\x93\x7b\x99\x82\x1e\x84\x95\x9a\x88\xa2\x1b\xf7\x56\x06\xb9"
+"\xa3\x9c\xae\x9b\x83\x9b\x7d\x94\x1f\x93\x7f\x83\x8d\x6f\x1b\x60\xa5\xe8\x69\x0a\x2e\xa4\xe8\x06\xa1\x98\x96\x9f\x9e\x7f\x96\x74"
+"\x1f\x4b\x06\xf7\x19\xf7\x4a\x05\xb7\xa2\x9d\xad\x9b\x83\x9b\x7d\x94\x1f\x93\x20\x0a\x30\x06\x70\xdc\x0a\x7a\x79\x1a\x75\x9a\x78"
+"\xa2\x84\x1e\x0e\xf7\xfa\xf8\x1d\x15\xb8\x07\xb5\xaa\xac\xb1\x9d\x9a\x88\x86\x9a\x1e\x86\x97\x91\x8a\x92\x1b\xa8\xa2\xa3\xa9\xb3"
+"\x5d\xa2\x3d\x29\x3b\x3d\x2a\x1f\x5b\x56\x07\x70\x83\xd1\x0a\xa6\x1b\xc0\xfb\x73\x06\x5b\x6d\x6a\x5f\x7a\x7f\x8d\x91\x79\x1e\x8f"
+"\x7c\x89\x8c\x84\x1b\x6f\x73\x73\x6f\x63\xba\x73\xda\xf0\xd9\xdb\xf3\x1f\xf7\x73\xc0\x07\xa3\x97\x32\x1d\x9b\x9e\x33\x1d\x7f\x83"
+"\x8d\x6e\x1b\x0e\xf8\x3f\xf8\x6a\x15\x6c\x07\x65\x9b\x78\xab\x9b\x9a\x92\x97\x94\x1e\x92\x94\x8c\x91\xa2\x1a\xf7\x11\xfb\x79\x07"
+"\x55\x66\x7d\x6a\x6b\x1f\x6f\x6f\x7c\x67\x65\x1a\x82\x8c\x86\x8e\x80\x1e\x4c\x7a\x66\x61\x52\x1a\x53\xae\x65\xf0\x53\x1e\xf5\x51"
+"\x05\xd0\x66\xad\x6d\x74\x1a\x73\x6d\x75\x6a\x1e\xfb\x21\xac\x06\xb1\x7b\x9d\x6b\x6b\x7b\x78\x66\x1e\xfb\x11\xf7\x7f\x07\xc1\xae"
+"\x99\xac\xaa\x1f\xa5\xa6\x98\xaa\xae\x1a\x96\x8a\x92\x88\x9a\x1e\xcb\x99\xb0\xb6\xc6\x1a\xc9\x6b\xac\xfb\x0a\xca\x1e\x2f\xbc\x05"
+"\x45\xb1\x68\xa8\xa1\x1a\xa5\xa8\xa0\xb0\x1e\xdd\xfb\x9e\x15\xc6\x6b\xaf\x6b\x76\x1a\x78\x7a\x83\x64\x1e\x7a\x99\x7c\x95\x56\xaa"
+"\x24\xc3\x18\x51\xab\x71\xa4\xa1\x1a\x9e\x9d\x95\xaf\x1e\xb3\x6e\x92\x86\xac\x79\x08\x0e\xf7\x12\xf8\x09\x15\x79\x6a\x85\x74\x69"
+"\x1a\x69\x91\x74\x9d\x69\x1e\x6d\x6d\x05\x74\x74\x87\x84\x79\x1a\x6e\xa4\x73\xa9\x9e\x92\x8f\xa2\xa3\x1e\xa9\xa7\x05\x7a\xaf\xa3"
+"\x85\xaf\x1b\xae\xa3\x91\x9c\xae\x1f\xab\x6e\x05\x75\xa2\x93\x87\x9d\x1b\xaa\xa4\xa3\xa8\x9c\x86\x94\x75\xa1\x1f\x6c\xa8\x05\x9e"
+"\xae\x91\xa2\xad\x1a\xac\x85\xa2\x79\xad\x1e\xa8\xa8\x05\xa2\xa0\x8f\x93\x9d\x1a\xa8\x73\xa2\x6c\x78\x84\x87\x75\x73\x1e\x6f\x71"
+"\x05\x9e\x66\x73\x91\x67\x1b\x67\x73\x85\x78\x67\x1f\x6c\xa7\x05\xa1\x74\x83\x8f\x79\x1b\x6d\x72\x74\x6e\x7d\x96\x78\x9b\x7b\x1f"
+"\xf7\x60\x6c\x15\xbd\xb3\x64\x5c\x5a\x63\x63\x59\x5a\x62\xb3\xbb\xbb\xb3\xb2\xbd\x1f\x0e\xf7\x7b\xf8\xdb\x15\xf7\x6a\x1d\xa1\x95"
+"\xf7\x11\x0a\xf7\x7d\xbd\x0a\xf7\x19\xf7\x60\xf7\x01\x0a\x94\x85\x9a\x1b\x9e\x9b\x99\x9c\x91\x8a\x92\x88\x92\x1f\x0e\xf7\x49\xf7"
+"\x68\xf7\x40\x1d\x77\x7f\x88\x8a\x7e\x7b\x1e\xfb\x91\xfb\x46\xf7\x91\xfb\x47\x05\x7e\x9b\x8e\x8a\x97\x1b\x9f\x9b\x99\x9e\x95\x86"
+"\x92\x7f\x96\x1f\xdc\xf7\x18\x15\xf7\x28\xf7\x17\x05\x97\x96\x90\x92\x95\x1a\x9e\x7b\x99\x77\x7f\x88\x8a\x7e\x7b\x1e\xfb\x91\xfb"
+"\x46\xf7\x91\xfb\x47\x05\x7e\x9b\x8e\x8a\x97\x1b\x9f\xf7\x05\x0a\xf7\x49\xf7\x68\xf7\x40\x1d\x76\x80\x88\x8a\x7e\x7b\x1e\xfb\x91"
+"\xfb\x46\xf7\x91\xfb\x47\x05\x7e\x9c\x8d\x8a\x96\x1b\xa0\xf7\x05\x0a\x97\x0a\x0e\xf7\x5b\xf7\xd6\x15\x8d\x0a\x69\x07\x70\x5c\x1d"
+"\xa6\x1b\xad\xfb\x6f\x65\x06\x70\x20\x1d\x69\xa3\x79\xba\x1e\xf7\x43\x06\x9f\x9b\x8e\x8f\x93\x61\x0a\x82\x8d\x6f\x1b\x6e\x06\xf7"
+"\xd6\xf7\xd6\x15\xfb\x10\x06\x71\x83\x8a\x85\x81\x1f\x7b\x82\x81\x79\x79\x1a\x7b\x93\x7c\x99\x80\x1e\x84\x96\x95\x89\xa6\x1b\x9b"
+"\xfb\x6f\x69\x06\x70\x20\x1d\x69\xa3\x79\xba\x1e\xf7\x42\x31\x1d\x6b\x06\x7a\xf8\x88\x15\xfb\x12\xfb\x00\xf7\x12\x06\x0e\xf7\x58"
+"\xf7\xd6\x15\xa8\x06\xa3\x96\x38\x1d\x6e\xac\x06\xa4\x99\x9b\xa1\x96\x91\x8a\x84\xa3\x1e\x87\x98\x94\x89\x93\x1b\x9c\x99\x93\x9b"
+"\x96\x1f\x94\x84\x94\x89\x9b\x8a\x08\xa9\xfc\x20\x69\x06\x70\x49\x0a\x69\xa3\x79\xba\x1e\xf7\x43\xb2\x0a\x6a\xf8\x87\xfb\x1a\x06"
+"\x72\x7c\x84\x79\x81\x1f\x9b\x6e\x66\x94\x62\x1b\x3e\x4e\x4b\x3a\x1f\x6b\x6a\x07\x70\x5c\x1d\xa6\x1b\xac\xfb\x6f\x64\x5b\x0a\xf7"
+"\x44\x06\x9f\x9b\x8e\x8f\x93\x61\x0a\x81\x8d\x70\x1b\x6e\x06\x0e\x7e\x1d\xc4\x1d\xfb\xea\xc0\x0a\x0e\xc4\x1d\x65\x35\x06\x73\x80"
+"\x89\x86\x82\x32\x0a\x83\x96\x94\x89\xa7\x1b\xe1\xfb\x5e\x06\x74\x8d\x80\x91\x83\xe3\x0a\x93\xa6\x1a\xf7\x5e\xe0\x07\xa5\x94\x8d"
+"\x90\x95\x1f\x9b\x95\x95\x9c\x9c\x1a\x9c\x83\x9a\x7c\x95\x1e\x93\x2f\x1d\x36\x06\x0e\x85\x1d\xf8\x6f\xf8\x76\x15\xa9\x06\xb2\x9e"
+"\x99\xa6\xa6\x78\x99\x64\x1f\xfb\x59\x06\xfb\x23\x8c\xfb\x0b\x3c\x8d\x2e\x08\x5f\x07\x88\x37\xee\x3e\xf7\x11\x80\x08\xfb\x99\x40"
+"\x07\x76\x84\x8a\x86\x83\x1f\x7e\x83\x83\x7e\x7d\x1a\x70\x9e\x7d\xb1\x1e\xf7\x1d\x06\xa3\x95\x91\x9f\x94\x1f\x79\x93\x99\x83\x9d"
+"\x1b\xe8\x06\xb2\x9e\x98\xa7\xa6\x78\x99\x64\x1f\x6b\x06\x37\xf8\xca\x15\xfc\xcc\x07\x82\x86\x88\x87\x86\x83\x86\x94\x87\x8e\x81"
+"\x91\x08\xf8\xcb\x07\x0e\xf7\xbc\xf8\x59\x15\x38\x49\x49\x37\x38\xcd\x48\xdd\xdc\xcd\xce\xde\xdd\x49\xcf\x3b\x1f\x0e\xf4\x1d\xf7"
+"\x30\xf7\x1c\x15\xc1\x0a\xc5\x16\xc1\x0a\x0e\xf7\x30\xf8\xdb\x15\xf7\x0a\x1d\xc5\x16\xf7\x0a\x1d\x0e\x97\x0a\x39\xfb\x18\xdc\x1d"
+"\x0e\xf7\x01\x7d\x15\x49\x1d\xf7\x6e\x16\x49\x1d\xf7\x6e\x16\x49\x1d\x0e\xf8\x69\xf8\x00\x15\xa0\x92\x93\x93\x9a\x1a\x9c\x7e\x99"
+"\x7b\x86\x89\x8b\x87\x7f\x1e\xfc\x01\xfb\x05\x05\x76\x85\x83\x82\x7c\x1a\x7a\x98\x7c\x9a\x91\x8d\x8b\x90\x97\x1e\x97\xf7\xee\x82"
+"\x1d\xed\xfb\xd1\x82\x1d\xf7\xa2\xc3\x82\x1d\x0e\xf8\x88\xfb\x33\x15\xd9\x07\xa2\x89\x96\x85\x93\xf7\x60\x1d\x80\x1f\x83\x80\x89"
+"\x84\x6f\x1a\x80\x07\x7c\x69\x6d\x84\x67\x1b\x4c\x61\xaa\xb9\xb2\xae\xa3\xf7\x15\xba\x1f\xc3\x07\xa2\x89\x95\x85\x94\x1e\x9a\x81"
+"\x79\x95\x79\x1b\x6d\x78\x79\x69\x87\x1f\xfb\x0d\x58\x5f\x5c\x3d\x1a\xfb\x02\xe1\x40\xf7\x13\xca\xb9\x97\xb5\xe6\x1e\xfb\x5f\xf8"
+"\xaf\x15\x64\x6c\x6e\x65\x66\xaa\x6d\xf7\x47\x1d\xf7\x58\xf9\x24\x5a\x0a\xf8\x5b\xf8\xe8\xac\x0a\x90\x96\x99\x1e\x0e\xf7\xc1\xf8"
+"\xd6\x2e\x0a\xf8\x59\xf9\x0e\x15\x7d\x7e\x81\x77\x7b\x1f\x6f\x77\x87\x88\x7e\xe7\x0a\x7c\x6d\x71\x1f\x79\x76\x81\x78\x7d\x1a\x78"
+"\x9a\x7d\x9f\x96\x94\x90\x96\x94\x1e\xaf\xa7\x93\x91\x9b\xb1\x0a\xf7\x46\xf8\xf1\x37\x1d\xf7\x34\xf9\x2c\x3b\x1d\xf7\xc0\xf9\x0c"
+"\x36\x0a\x0e\xf7\x58\xf9\x0c\x28\x0a\xf7\xc0\xf9\x52\xe4\x1d\xf7\x96\x93\x15\x21\x07\xd7\x1d\xb3\x07\x0e\xf7\xba\xf8\xe7\xca\x1d"
+"\xf7\xdc\x93\x15\x4f\x66\x75\x6c\x59\x1a\x54\x60\x1d\x80\x1e\x7d\x6e\x83\x88\x7f\x1b\x7e\x84\x90\x95\x9a\x97\xa1\x9b\x9b\x1f\x9c"
+"\x9c\x98\x94\xbe\xac\x08\x0e\xf7\xc1\xf8\xcc\x45\x1d\x91\x0a\x75\x0a\x0e\xf7\xf2\xf7\xa3\x15\xe4\x06\xae\x9e\x9a\xa5\xa7\x79\x99"
+"\x66\x1f\x89\xf7\x0a\x06\xcd\x56\xb1\x30\x67\x5a\x83\x7f\x6a\x1e\x79\x85\x82\x7f\x79\x1a\x74\x9e\x78\xa1\x92\x96\x8d\x8e\x97\x1e"
+"\x93\xae\x9e\x8e\xa4\x1b\xb1\x9a\x85\x7b\x1f\x87\x07\x8f\x71\x7e\x8c\x78\x1b\x46\x5c\x7b\x67\x6a\x1f\x79\x78\x80\x73\x75\x1a\x56"
+"\xc5\x60\xd5\xb1\xa7\x90\x9a\xb1\x1e\xe6\x04\x7a\x6e\x65\x80\x6c\x1b\x74\x7b\x92\x95\x9f\xaf\x9d\xb1\x9f\x98\x8a\x86\xa9\x1f\x0e"
+"\xf7\x98\xf8\x61\x15\xc0\x69\x1d\xfb\x6a\x06\x5d\x0a\xc0\xfb\x2c\x06\x25\x53\x05\x6a\x79\x82\x80\x74\x1a\x6f\xa4\x72\xa6\x98\x96"
+"\x8f\x96\x9f\x1e\xbb\xa6\x05\x34\x56\x07\x71\x20\x1d\x2d\x0a\x1e\xf8\x70\xf7\x4e\x06\xa4\x89\x94\x85\x94\x74\x0a\x79\x54\x1d\x81"
+"\x71\x1a\x38\xfb\x63\xf7\x17\x07\xf7\x1b\xd7\x05\xab\x9d\x94\x96\xa3\x1a\xa6\x73\xa3\x70\x7f\x7d\x86\x82\x7a\x1e\x39\x5d\x05\x0e"
+"\x7e\x0a\x0e\xf8\x06\xf7\x7c\x15\x96\x06\x69\x8d\xa0\x77\xaa\x1b\x9b\x9b\x93\x98\x96\x1f\x93\x96\x8d\x94\xa5\x1a\xd5\x07\xa5\x66"
+"\x0a\x6c\x79\x79\x68\x87\x1f\x80\xf7\x13\xf7\x0b\x51\xc0\x0a\xf7\x35\xfb\xe6\x07\xfb\x39\xfb\x0a\xfb\x09\xfb\x39\xfb\x38\xf7\x0a"
+"\xfb\x0a\xf7\x39\x1f\xf7\xf9\xf7\x0c\x06\xa5\x8a\x92\x85\x4d\x1d\x82\x70\x1a\x7a\xfb\x1f\x07\xfb\x00\x16\x60\x73\x91\x9b\x70\x1f"
+"\x59\xa9\x69\xca\xcb\x1a\xc5\xa9\xc8\xb6\xaa\x1e\xa8\x9f\xa8\x93\xba\x8c\x08\x0e\xf7\xc1\xf8\xd4\x15\x2c\x3c\x42\x33\x35\xd8\x47"
+"\xec\xeb\xd9\xcf\xdf\xe6\x3e\xd3\x2a\x1f\x39\x04\xba\xb3\x67\x61\x63\x63\x6a\x5c\x5d\x62\xad\xb0\xb7\xb2\xaf\xbb\x1f\x0e\x76\x0a"
+"\x0e\x25\x0a\x0e\xf7\xf6\xf8\xef\x15\xfb\x47\x06\x71\x82\x89\x86\x81\x3c\x1d\x83\x96\x97\x89\xa5\x1b\xd2\xfb\x2b\x06\x3a\x60\x05"
+"\x6d\x7b\x80\x7c\x75\x1a\x6f\xa3\x72\xa7\x97\x95\x8f\x95\x9f\x1e\xa7\x9b\x05\xfb\x12\xfb\x0a\x07\x71\x49\x0a\x2d\x0a\x1e\xf7\xec"
+"\x29\x0a\xfb\x0a\xf7\x3c\x06\xde\xb9\x05\xaa\x9b\x95\x98\xa2\x1a\xa8\x73\xa4\x6f\x7d\x84\x88\x7f\x75\x1e\x6e\x7a\x05\x0e\x80\x0a"
+"\x0e\xf8\xfc\xf7\x37\x15\xba\x07\xd1\x77\xc6\x67\xb2\x1e\xb2\x67\x60\x9f\x5e\x1b\x56\x5c\x71\x5c\x6a\x1f\xbb\x67\x5d\xa4\x58\x1b"
+"\x23\x3a\x26\xfb\x16\xfb\x0f\xde\x29\xf2\xbd\xba\xa3\xb6\xae\x1f\x5f\xac\xb9\x74\xc2\x1b\xb5\xcb\x98\x9b\xae\x1f\xa8\x99\x95\x99"
+"\xa3\x1a\xa9\x73\xa3\x6e\x82\x83\x89\x88\x83\x1e\x73\x53\x80\x88\x6f\x1b\x63\x71\xa4\xbd\x7e\x1f\xfb\x54\xf7\x3e\x15\xb6\xaf\x54"
+"\x49\x45\x68\x55\x5e\x60\x67\xc2\xce\xcf\xaf\xc2\xb7\x1f\xf7\x57\x3b\x15\xc3\x98\x9f\xa3\xac\x1b\xab\xa0\x72\x54\x97\x1f\x0e\xe6"
+"\xf7\xb0\x15\xfb\x49\x7f\x07\xaf\x1d\x82\x81\x79\xf7\x6b\x1d\x98\x88\xa4\x1b\xf7\x0c\xf8\x50\x06\xaf\xa3\x9e\xb8\xb7\xa9\x74\x69"
+"\x7c\x82\x7c\x7d\x82\x1e\x80\x84\x84\x8a\x71\x88\x08\x67\x87\x77\x79\x6d\x1a\x6d\x9e\x7a\xb3\x87\x1e\xbe\x86\xa9\x7f\xa5\x73\x08"
+"\xa5\x74\x99\x6c\x69\x1a\x5f\x7a\x6f\x71\x7d\x82\x93\x9b\x88\x1e\xac\x83\x7d\x97\x6e\x1b\x6a\x76\x74\x66\x4a\xbf\x5c\xd2\xb9\xb1"
+"\x9a\xa6\xa5\x1f\xaa\xad\x9d\xbc\xbe\x1a\xdc\x62\xcf\x41\xb6\x1e\xa3\xa8\x93\xa0\xaf\x1a\xe8\x3d\xd1\x23\x23\x42\x50\x38\x1e\x43"
+"\x7f\x07\xce\x0a\x7b\x94\x7b\x98\x81\x1e\x84\x95\x98\x88\xa4\x1b\x0e\xf7\xe2\xf8\xfc\x15\xfb\x18\x6a\x05\x72\x85\x82\x82\x79\x1a"
+"\x78\x99\x7c\x9c\x91\x8d\x8b\x8f\x97\x1e\xbb\x97\x05\xfb\x79\x52\x07\x6d\x7d\x80\x76\x76\x9a\x7f\xa8\x1f\xf7\x49\x06\xa7\x9a\x97"
+"\xa0\xa0\x7d\x96\x6e\x1f\x52\x06\x0e\xf8\x76\xf8\x19\x15\xfb\x55\x07\x77\x94\x80\x9c\x9c\x94\x96\x9f\x1e\xf7\x88\xfc\x46\x07\x75"
+"\x80\x82\x7a\x7b\x96\x82\xa1\x1f\x0e\xf7\x5f\x82\x15\x86\xa0\x95\x8a\x9e\x1b\xbd\xbc\x95\xa1\xbd\x1f\x7a\xf2\x07\xa1\x9a\x8d\x91"
+"\x94\x1f\x9d\x95\x95\x9d\x9e\x1a\xac\x75\x9f\x64\x8d\x1e\xf7\xd2\xfb\x23\x07\x71\x81\x89\x85\x81\x1f\x7a\x81\x80\x79\x78\x1a\x7a"
+"\x94\x7a\x9a\x81\x1e\x83\x96\x98\x88\xa5\x1b\xa6\xfb\x43\x06\x68\x4e\x63\x7e\x61\x1b\x62\x7c\x98\xaf\x1f\xf7\xb0\xfb\x10\x07\x7b"
+"\x06\x6b\x71\x73\x6c\x7a\x94\x7a\x9a\x81\x1f\x83\x96\x98\x88\xa5\x1b\x93\xfc\x1c\x06\xf7\x31\x1d\x94\x96\x8d\x95\xa5\x1a\x0e\xf7"
+"\x37\xf8\x81\x15\xb0\x5a\x06\x6f\x96\x7d\xa0\xa0\x96\x99\xa7\x1e\xf7\x06\xfb\x9d\xfb\x06\x07\x6f\x96\x7d\xa0\xa0\x95\x99\xa7\x1e"
+"\xbc\xb0\xfb\x68\x74\x07\x6f\x7e\x80\x76\x75\x99\x80\xa5\x1f\xf7\x03\x06\xa6\x99\x96\xa1\xa0\x7e\x96\x6f\x1f\x74\x06\xf7\x67\xf7"
+"\x24\x15\xc7\xfb\x16\x05\x99\x06\xc3\xf7\x15\x05\xfb\x23\x07\x7a\x8a\x8b\x89\x85\x1f\x80\x87\x83\x7e\x7e\x1a\x75\x99\x80\xa5\x1e"
+"\xc7\x06\xa5\x99\x96\xa1\x9e\x80\x96\x75\x8d\x1f\xf7\x69\x07\x9f\x8e\x94\x96\x9d\x1a\xa1\x7e\x95\x6f\x1e\x47\x06\x5a\xfb\x13\x59"
+"\xf7\x13\x05\x49\x06\x6f\x7e\x81\x75\x79\x95\x80\x9e\x88\x1f\xfb\x69\x07\x74\x89\x80\x80\x78\x1a\x75\x99\x80\xa6\x1e\xc6\x06\xa5"
+"\x99\x96\xa1\xa1\x7f\x95\x6c\x1f\x0e\xb9\x1d\xf7\x36\xf9\x10\x7f\x1d\xf7\xbd\xf7\x4e\x15\x8f\x93\x8f\x99\x90\x1a\x9b\x7b\x9a\x7a"
+"\x7d\x82\x84\x79\x81\xf7\x3c\x1d\x99\x95\x93\x9c\x94\x1e\xf7\x6d\x68\x15\xf7\x19\xf7\x0e\x9e\xa4\xbc\x1a\xce\x56\xbc\x42\x68\x6a"
+"\x7f\x76\x74\x1e\x76\x78\x7c\x6e\x77\x1a\x7a\x9a\x7d\x9c\x98\x96\x93\x96\x8f\x1e\x92\x9e\x8b\x8b\x90\x91\x08\x9a\x97\x9e\x93\xa0"
+"\x1b\xae\xa6\x76\x6f\x71\x77\x76\xfb\x33\xfb\x21\x1f\x81\x82\x05\x49\xf7\x95\xc2\x07\xa6\x81\x99\x76\x79\x81\x80\x77\x88\x1e\x0e"
+"\xf7\xf6\xf7\xcf\xf7\x23\x1d\x95\x1e\x92\x80\x82\x8d\x6e\x1b\xfb\x1d\xf7\x0a\xf7\x09\x1d\xfb\x0a\xfb\x1e\x07\x71\x83\x8a\x85\x81"
+"\x48\x0a\x84\x96\x97\x88\xa4\x1b\xf7\x1e\x30\x06\x74\x8d\x81\x91\x82\x1e\x7c\x94\x9e\xe5\x0a\xfb\x8a\xfb\x0d\x94\x0a\xf7\x5b\xf7"
+"\x1a\x15\xe9\x06\xf3\xbf\x9b\xb6\xb5\x1f\xa2\xa3\x98\xac\xac\x1a\xac\x7e\xab\x74\xa3\x1e\xb6\x61\x57\x9b\x23\x1b\x2d\xa9\xea\x06"
+"\xa4\x95\x32\x1d\x9b\x9d\x1a\xae\x73\x9c\x5d\x1e\xfb\x6a\x06\x76\x7c\x89\x86\x83\x6d\x0a\x7b\x99\x82\x1e\x83\x96\x94\x89\xa7\x1b"
+"\x96\xfb\xfa\x80\x06\x72\x82\x89\x86\x61\x1d\xf7\x6a\x29\x0a\x2c\x06\xf7\x1a\x04\xe6\xf7\x13\x07\xcb\xa6\x7e\x6a\x6b\x70\x7e\x4b"
+"\x1f\x0e\xf8\xb5\xf7\xe9\x15\x37\x06\xfb\x26\xfb\x7e\x05\x56\xf7\x37\x7c\x78\x07\x6e\x7d\x80\x76\x75\x9a\x80\xa7\x1f\xda\x06\xa8"
+"\x9a\x96\xa1\x9e\x7e\x97\x73\x8c\x1f\x9a\x07\xa3\x8c\x98\x97\x9f\x1a\x9e\x7d\x97\x74\x8c\x1e\x48\x16\x3c\x06\xda\xf7\x10\x05\xfb"
+"\xd0\xf8\x1d\x7f\x1d\xf7\xca\xf7\x4e\x15\x8f\x92\x8f\x9a\xf5\x0a\xfb\x7c\xfc\x47\x05\x85\x80\x88\x82\x84\x1a\x7b\x9b\x7c\x9c\x99"
+"\x95\x93\x9c\x95\x1e\x0e\x92\x0a\xfb\x54\xfb\x35\x15\x5c\x6b\x70\x63\x62\xab\x70\xb9\xbb\xab\xa5\xb4\xb5\x6c\xa5\x5b\x1f\xf7\xf7"
+"\x04\x5c\x6b\x70\x63\x62\xab\x70\xba\xba\xab\xa5\xb4\xb5\x6c\xa5\x5b\x1f\x0e\xf7\xfa\xf8\xa8\x15\x9f\x8a\x91\x88\x95\x1e\x9e\x83"
+"\x74\x9a\x74\x1b\x79\x79\x83\x7d\x80\x1f\x83\x80\x88\x80\x71\x1a\xfb\x53\x07\x74\x8d\x80\x91\x81\x1e\x7b\x96\x9e\x81\x9f\x1b\xad"
+"\xa3\xa3\xaf\x1f\x95\x07\xfb\x74\x04\xa3\x89\x95\x85\x95\x1e\x9b\x80\x78\x95\x77\x1b\x79\x79\x83\x7d\x80\x1f\x83\x80\x88\x80\x71"
+"\x1a\xfb\x53\x07\xf7\x31\x1d\x93\x95\x8e\x96\xa5\x1a\x0e\xf7\xc0\xf8\xd5\x15\x28\x3b\x3e\x2c\x2c\xdb\x3d\xec\xf0\xdb\xd7\xec\xea"
+"\x3b\xd8\x28\x1f\x49\x04\xc8\xbc\x5c\x4f\x52\x59\x5a\x50\x4d\x5a\xba\xc7\xc6\xbc\xba\xc8\x1f\x0e\xf7\x3d\x1d\xf7\x12\x21\xe9\xfb"
+"\x22\x4f\x61\x7d\x67\x5c\x1f\xf7\x6c\xfb\x0c\x07\x77\x84\x8b\x88\x81\x1f\x78\x84\x7d\x77\xf7\x45\x1d\xfc\xe5\xc2\x1d\xf7\x0a\xf8"
+"\x79\xbf\x1d\xf8\x2a\xfb\x24\x15\x37\x06\xfb\x26\xfb\x7e\x05\x56\xf7\x37\x7c\x78\x07\x6e\x7d\x80\x76\x75\x9a\x80\xa7\x1f\xda\x06"
+"\xa8\x9a\x96\xa1\x9e\x7e\x97\x73\x8c\x1f\x9a\x07\xa3\x8c\x98\x97\x9f\x1a\x9e\x7d\x97\x74\x8c\x1e\x48\x16\x3c\x06\xda\xf7\x10\x05"
+"\x85\xf7\x9e\xe2\x1d\xf7\x91\xf7\xc3\x15\xf7\x2b\xf7\x0f\xa0\xa3\xbd\x1a\xcc\x53\xbd\x40\x66\x69\x7f\x76\x72\x1e\x76\x78\x7b\x6e"
+"\x77\x1a\x7a\x9a\x7d\x9d\x99\x98\x93\x96\x8f\x1e\x91\x9e\x8c\x8b\x90\x91\x08\x9a\x98\x9f\x93\xa2\x1b\xb0\xa7\x76\x6f\x71\x75\x76"
+"\xfb\x44\xfb\x21\x1f\x80\x82\x05\x49\xf7\xac\xc2\x07\xa6\x80\x99\x74\x78\x80\x80\x77\x88\x1e\x0e\xf7\xa5\xf7\x7e\x15\x95\x06\xa8"
+"\x7e\xae\x56\x98\x5b\x08\xb6\x06\xa9\x9d\x99\xa3\xa0\x7e\x99\x72\x8e\x1f\x77\xac\x84\x94\x76\x9d\x08\xb0\x9f\xa0\xa9\xae\x1a\xc8"
+"\x56\xb6\x3d\x1e\x2e\x06\x6b\x7a\x7e\x72\x74\x9a\x7e\xa7\x89\x1f\xfb\x41\x07\x70\x8a\x7b\x7d\x74\x1a\x73\x9d\x7d\xaa\x1e\xcf\x06"
+"\xa9\x9d\x99\xa3\xa2\x7c\x98\x70\x8d\x1f\xf7\x05\x04\xc7\xa0\x07\xa9\x9f\x80\x7b\x79\x75\x7c\x6f\x1f\x90\xf7\xa2\xf7\x34\x1d\xf7"
+"\x43\xf7\x1f\xf7\x17\xf7\x3a\xf7\x37\xfb\x1f\xf7\x19\xfb\x40\x1f\x8c\x3d\x15\xf7\x12\xf2\x29\xfb\x0c\xfb\x0c\x24\x28\xfb\x10\xfb"
+"\x16\x25\xec\xf7\x0e\xf7\x0c\xf2\xed\xf7\x13\x1f\x0e\x92\x0a\x0e\xf8\x37\xf8\xc0\x15\x9b\x93\x94\x97\x98\x1a\x9f\x7c\x9a\x77\x81"
+"\x7e\x88\x85\x7f\x1e\x40\x65\x5c\x9f\x73\x95\x89\x8c\x19\x93\x72\x7b\x8e\x7d\x1b\x74\x77\x79\x76\x7c\x95\x7f\x9d\x85\x1f\x91\x8a"
+"\x91\x89\x90\x89\x08\x8c\x92\x88\x87\x95\x1f\x98\x85\x60\x74\x05\x75\x7f\x87\x86\x7c\x1a\x75\x9a\x7a\x9e\x95\x8f\x8c\x95\x9f\x1e"
+"\xe5\xba\xb2\x76\xbb\x64\xab\x66\x19\xa7\x56\x71\x92\x5d\x1b\xfb\x1f\xfb\x02\x27\xfb\x11\xfb\x0f\xf7\x09\x29\xf7\x25\xd2\xd1\xa4"
+"\xb7\xbd\x1f\xbc\xb5\xa1\xc0\xd9\x1a\xf7\x13\x52\xec\xfb\x11\xe0\x1e\x3b\xfb\x5e\x15\xdf\xcf\x53\x44\x69\x80\x75\x6e\x73\x1f\x71"
+"\x6c\x65\x7e\x5f\x1b\x38\x47\xc0\xcc\xd3\xce\xc3\xe0\x1f\x0e\xf7\xc0\xf7\x5a\x15\xef\x2c\x05\x75\xa2\x94\x86\x9c\x1b\xaa\xa3\xa2"
+"\xa8\x9c\x85\x95\x75\xa0\x1f\x28\xea\xee\xeb\x05\xa1\x9f\x91\x95\x9c\x1a\xa8\x73\xa2\x6c\x7a\x82\x86\x76\x74\x1e\x27\x2b\x27\xeb"
+"\x05\x9f\x75\x81\x91\x7a\x1b\x6c\x73\x74\x6e\x79\x90\x83\xa2\x76\x1f\xef\x2b\x27\x2c\x05\x75\x76\x85\x81\x7a\x1a\x6e\xa3\x74\xaa"
+"\x9c\x94\x90\xa1\xa2\x1e\x0e\xf7\xb2\xf8\x67\x15\x78\x7c\x7e\x78\x79\x98\x7f\xa0\x8a\x1f\xa6\x8a\x92\x8a\x96\x86\x08\xa6\x80\x9c"
+"\x76\x77\x1a\x6a\x6c\x7a\x4e\x64\x7a\x8e\x94\x7c\x1e\x92\x81\x87\x8c\x83\x1b\x78\x7d\x7d\x78\x6b\xbd\x77\xd9\xbd\xad\x93\x9e\xa6"
+"\x1f\xa7\x9f\x9d\xac\xac\x1a\xb0\x74\xab\x62\xa0\x1e\xaf\xa1\x9a\xa3\xaa\x1a\xc8\x56\xb7\x41\x48\x4f\x6b\x68\x79\x9a\x7c\x9d\x94"
+"\x94\x8f\x91\x91\x1e\x9f\x9e\x9a\x91\xac\x1b\xb1\xa4\x7b\x73\x73\x73\x77\x70\x1f\x0e\xf7\x17\xf7\x98\x15\x36\xd4\x4c\xed\xd6\xcd"
+"\xaf\xb3\xa0\x79\x9c\x75\x81\x82\x87\x83\x82\x1e\x75\x75\x80\x87\x64\x1b\x52\x67\xa8\xb7\x1f\xac\x07\xbc\xad\xad\xbc\xab\xa7\x7d"
+"\x7b\x8e\x1e\x71\x90\x97\x7f\xa1\x1b\xa5\x99\x9b\xa9\x1f\xbe\x07\xab\x7f\x9a\x72\x7d\x81\x86\x7f\x85\x1e\x97\x70\x75\x90\x6f\x1b"
+"\x30\x46\x47\x31\x1f\xf7\x3c\xf7\xb0\xf7\x34\x1d\xf7\x44\xf7\x1e\xf7\x17\xf7\x3a\xf7\x38\xfb\x1f\xf7\x18\xfb\x40\x1f\x8c\x3d\x15"
+"\xf7\x12\xf2\x29\xfb\x0c\xfb\x0c\x24\x28\xfb\x10\xfb\x16\x25\xec\xf7\x0e\xf7\x0c\xf2\xed\xf7\x13\x1f\x0e\x21\x1d\xf7\x08\xf7\xca"
+"\xcf\x0a\x7b\x7e\x83\x7f\x7e\x1a\x76\x9d\x79\xa2\x96\x91\x8e\x98\x9c\x1e\x0e\x21\x1d\x7e\xf7\xb7\xf7\x41\x1d\x98\x87\x92\x7b\x97"
+"\x1f\x86\x8f\xfb\x2e\xf7\x11\xed\x0a\x9f\x96\x6f\x0a\x21\x1d\xfb\x0a\xf7\xef\x36\x1d\x21\x1d\x36\xf8\x06\xe5\x1d\x21\x1d\x7d\xf8"
+"\x34\xa1\x0a\x21\x1d\xf7\x1f\xf7\xef\x15\x7f\x7b\x81\x7c\x80\x1f\x6b\x73\x88\x88\x7d\xf7\x03\x0a\x73\x1b\x6b\x6d\x7a\x6c\x71\x1f"
+"\x79\x77\x83\x7a\x7e\x98\x0a\xf7\xe9\x7e\x15\xcc\x8e\xbb\x97\xb2\xa0\x08\xb9\xa3\xa8\xac\xa7\x64\x1d\x80\x85\x08\x7d\x72\x65\x83"
+"\x5d\x1b\xfb\x09\xd8\x0a\x94\x80\x8f\x75\x08\x64\x93\x9f\x0a\x52\x1b\xfb\x30\x74\x1d\x4b\x07\x8c\xfb\x13\xe8\x28\xf7\x20\x74\x08"
+"\x31\x07\x8d\x9e\x8f\x8b\x91\x1b\xa8\x9c\x80\x7a\x7e\x80\x84\x76\x7a\x76\x91\x94\x7a\x1f\x96\x77\x89\x8c\x55\x1d\x7d\x92\x7e\x98"
+"\x83\x1f\x7a\xa7\xb5\x7f\xb0\x1b\xc9\xb9\xb4\xc2\x4e\x0a\x30\x1d\xf7\x73\xf9\x0a\xcf\x0a\x79\xa5\x1d\x9c\x1e\x0e\x51\x0a\xe9\xf8"
+"\xf7\xf7\x41\x1d\x97\x87\x92\x7e\x95\x1f\x88\x8e\x89\x8d\x88\xc6\x0a\x8f\x94\x97\x1e\x0e\x51\x0a\x80\xf9\x2f\x36\x1d\x51\x0a\x9a"
+"\xf9\x46\x98\x1d\x20\x05\x7e\x9c\x92\x62\x0a\x21\x0a\xf0\xf9\x0a\x26\x1d\x21\x0a\x56\xf8\xf7\xb9\x0a\x98\x87\x93\x7e\x94\x1f\x87"
+"\x8e\x87\x8e\x8a\x8c\xfb\x2d\xf7\x11\x18\xfb\x2f\xfb\x11\x05\x73\x78\x89\x89\x7c\x1a\x76\x9d\x7a\xa0\x95\x94\x8f\x94\x97\x1e\x0e"
+"\x21\x0a\xfb\x32\xf9\x2f\x36\x1d\x21\x0a\xfb\x18\xf9\x46\xe5\x1d\x33\x0a\xf7\xa6\xf9\x2f\x15\x7c\x8a\x7f\x83\x7d\x77\x08\x6f\x76"
+"\xf7\x5b\x1d\x58\x79\x92\x73\x1b\x6d\x6d\x7b\x6e\x71\x1f\x79\x75\x82\x7a\x7d\x1a\x78\x9a\x7d\x9e\x97\x94\x90\x95\x93\x1e\xb0\xa9"
+"\x91\x90\x9c\xf7\x24\x1d\xa6\x93\x99\x9a\x1a\x9c\x7d\x97\x74\x8d\x1e\x0e\x24\x1d\xf7\x12\xf7\x96\xf7\x0d\x0a\x73\x7f\x85\x63\x0a"
+"\x76\x9d\x79\xa2\x96\x91\x8e\x98\x9c\x1e\x0e\x24\x1d\x8c\xf7\x83\xf7\x49\x1d\xa0\x99\xb0\x0a\x24\x1d\x23\xf7\xbb\x36\x1d\x24\x1d"
+"\x40\xf7\xd2\xa3\x0a\x24\x1d\xf7\x34\xf7\xbb\x15\x7e\x7d\x81\x77\x7c\x1f\x70\x76\x88\x88\x7d\xf7\x03\x0a\x73\x1b\x6c\x6e\x7c\x6e"
+"\x72\x1f\x78\x75\x81\x79\x7d\x98\x0a\xf7\xce\xf9\x55\x15\xfb\x03\xe5\x05\x95\x7f\x83\x8e\x81\x1b\x76\x79\x7a\x77\xf7\x46\x1d\xa3"
+"\x9f\x8c\x8c\x9a\x1a\xa0\x79\x9c\x76\x81\x82\x87\x82\x80\x1e\xec\xfb\xb0\xb5\x1d\x0e\x22\x0a\x20\xf8\xa9\x15\x9f\x9a\x90\x93\x99"
+"\x1a\xa1\x79\x9c\x73\x7f\x85\x63\x0a\x76\x9d\x79\xa2\x96\x91\x8e\x98\x9c\x1e\x0e\x22\x0a\xfb\x7c\xf8\x96\x15\xf7\x01\x31\xf1\x0a"
+"\x92\x7e\x95\x1f\x88\x8e\x88\x8d\x88\x8d\xfb\x2d\xf7\x11\x18\xf7\x15\x1d\x22\x0a\xfb\xe5\xf8\xce\x36\x1d\x22\x0a\xfb\xc8\xf8\xe5"
+"\xa3\x0a\x2b\x0a\xd6\xf9\x0a\x15\x9e\x9a\x91\x93\x99\x1a\xa1\x79\x9c\x74\x7e\x86\x88\x7e\x7a\x1e\xfb\x1a\x21\x05\x7a\xa5\x1d\x9b"
+"\x1e\x0e\x2b\x0a\xfb\x32\xf9\x2f\x36\x1d\x44\x1d\xfb\x0e\xf8\xee\x15\xfb\x03\xe5\x05\x94\x7f\x82\x8f\x81\x1b\x76\x79\x7a\x76\x7f"
+"\x8f\x83\x9b\x80\x1f\x8c\x89\x8d\x8a\x8e\x89\xf7\x2f\xfb\x10\x18\xf7\x2d\xf7\x10\x05\xa5\xa0\x8b\x8b\x9a\x1a\xa0\x79\x9c\x77\x80"
+"\x81\x87\x82\x80\x1e\x0e\x23\x0a\xb0\xf8\x37\x15\x9e\x9a\x91\x94\x98\x1a\xa1\x79\x9c\x74\x7f\x84\x51\x1d\x7d\x84\x81\x7d\x1a\x76"
+"\x9e\x7a\xa1\x96\x95\x90\x96\x98\x1e\x0e\x23\x0a\x2d\xf8\x25\xf2\x1d\x88\x7c\x1a\x76\x9d\x7a\xa0\x95\x93\x8e\x95\x98\x1e\x0e\x8d"
+"\x1d\x47\x80\x7a\x58\x1e\x73\x83\x7f\x7d\x75\x1a\x6d\xa2\x74\xa8\x95\x99\x8d\x8f\x9d\x1e\x96\xbb\xad\x90\xad\x1b\xc8\xa6\x7e\x6e"
+"\x1f\x79\x07\x91\x68\x6a\x8e\x6a\x1b\x32\x46\x72\x5a\x5c\x1f\x72\x71\x7c\x68\x6c\x1a\x42\xde\x50\xf2\xc2\xc5\x97\xa1\xba\x1e\x8c"
+"\xf7\x08\x44\x0a\xfb\x5c\xf8\x5b\x28\x0a\x23\x0a\xfb\x45\xf8\x73\x15\x98\x7c\x84\x8e\x7f\xa9\x0a\x96\x1b\xa1\x9e\x9d\x9f\x99\x85"
+"\x95\x78\x99\x1f\x0e\x23\x0a\x2b\xf8\xa1\x15\x46\x51\x55\x4a\x4a\xc5\x55\xd0\xd0\xc5\xc1\xcb\xcd\x52\xc1\x45\x1f\x50\x04\xaf\xa9"
+"\x70\x6b\x6a\x6d\x70\x67\x68\x6d\xa6\xac\xab\xa9\xa6\xae\x1f\x0e\x23\x0a\xc8\xf8\x5d\x15\x7f\x7b\x81\x7c\x80\x1f\x6a\x73\x88\x88"
+"\x7e\x1b\x7f\x7f\x90\x9e\x6a\x1f\xa8\x5a\x77\x93\x74\x1b\x6d\x6d\x7c\x6f\x72\x1f\x78\x75\x81\x78\x7c\x1a\x78\x9a\x7d\x9f\x95\x95"
+"\x90\x93\x91\x1e\xb3\xab\x91\x90\x9c\xb1\x0a\xf7\xee\x7c\x15\xc2\x8d\xb0\x91\xb2\x97\x08\xc2\x9d\xb0\xad\xac\x1a\xa7\x72\xa3\x6e"
+"\x90\x0a\xd4\x07\xa5\x8a\x94\x85\x94\x1e\x99\x83\x78\x94\x77\x1b\x77\x80\x83\x78\x84\x1f\x9d\x65\x5a\xa2\x1d\xfb\x0b\xdf\x39\xf7"
+"\x1a\x7e\x1f\x36\x07\x8d\x9c\x8b\x8b\x90\x1b\xae\x9c\x82\x78\x7e\x80\x84\x76\x7b\x75\x91\x94\x7a\x1f\x96\x78\x89\x8c\x55\x1d\x7d"
+"\x92\x7e\x98\x83\x1f\x7a\xa7\xb5\x7f\xaf\x1b\xc9\xb9\xb4\xc2\xbd\x72\xa9\x5a\x96\x1f\x0e\xc9\x1d\xf7\xe8\x04\x9d\x99\x91\x95\x98"
+"\x1a\xa1\x79\x9c\x74\x80\x84\x63\x0a\x77\x9e\x79\xa1\x95\x95\x90\x96\x99\x1e\x0e\x5d\x1d\x5e\x1b\x36\x5a\xa2\xc0\xf7\x36\x1d\xfb"
+"\x14\xf7\xd6\x15\xf7\x01\x30\x05\x82\x97\x93\x87\x96\x1b\x9f\x9d\x9c\xa0\x99\x88\x90\x75\x9c\x1f\xfb\x2d\xf7\x11\xfb\x2f\xfb\x11"
+"\x05\x74\x79\x88\x87\x7d\x1a\x76\x9d\x7a\xa0\x95\x93\x8e\x95\x98\x1e\x0e\xd9\x1d\x75\x31\x70\x86\x5e\x1b\x37\x5a\x5e\x1d\xfb\x7e"
+"\xf8\x0c\x28\x0a\xc9\x1d\xfb\x6a\xf8\x24\x15\x98\x7b\x84\x8e\x80\xa9\x0a\x95\x1b\xa1\x9e\x9d\x9f\x98\x84\x97\x7a\x98\x1f\x0e\x25"
+"\x0a\xc6\xf8\x81\xe3\x1d\x25\x0a\x45\xc8\x0a\x88\x8d\x88\x8d\x89\xc6\x0a\x8e\x95\x97\x1e\x0e\x25\x0a\xfb\x43\xf8\xa5\x28\x0a\x25"
+"\x0a\xfb\x25\xf8\xbd\xa2\x0a\xf7\x5b\xc7\x1d\xbe\xbe\xa2\x97\xbc\x1b\xc5\xd5\x1d\xf7\x8b\xf7\x8e\x15\x7d\x89\x7e\x83\x80\x7c\x08"
+"\x6a\x73\x88\x88\x7d\xab\x1d\x73\x1b\x6d\x6d\x7b\x6e\x72\x1f\x78\x75\x82\x79\x7d\x1a\x78\x9a\x7d\x9f\x96\x94\x90\x95\x93\x1e\xb0"
+"\xa8\x92\x91\x9b\x1b\x9a\x93\x88\x7a\xa5\x1f\x70\xb7\xad\xa8\x1d\x99\x9b\x1a\x9c\x7d\x96\x74\x8e\x1e\x0e\x25\x1d\xf7\x1b\xf7\x9a"
+"\xe3\x1d\x25\x1d\x8e\xf7\x88\x15\xf7\x01\x30\xf1\x0a\x93\x7e\x94\x1f\x87\x8e\x88\x8e\x89\x8c\xfb\x2d\xf7\x11\x18\xfb\x2f\xfb\x11"
+"\x05\x73\x79\x89\x87\x7d\x1a\x76\x9d\x7a\xa0\x95\x94\x8f\x94\x97\x1e\x0e\x25\x1d\x25\xf7\xbe\x28\x0a\x25\x1d\x3c\xf7\xd6\xa2\x0a"
+"\x25\x1d\xf7\x36\xf7\xc0\x15\x7e\x7c\x81\x78\x7d\x1f\x6e\x76\x88\x88\x7d\xe7\x0a\x7b\x6e\x71\x1f\x78\x76\x82\x78\x7d\x1a\x79\x9a"
+"\x7c\x9e\x97\x94\x90\x95\x93\x1e\xb0\xa8\x93\x91\x9a\x1b\x9a\x92\x88\x7a\xa6\x1f\x70\xb7\xad\xcd\x0a\xf7\xcb\xf8\xcc\xf7\x42\x1d"
+"\x7f\x8f\x83\x98\x81\x1f\x94\x84\xf7\x2f\xfb\x10\xf7\x2d\xf7\x10\x05\xa2\x9d\x8e\x8f\x9a\x1a\xa0\x79\x9c\x76\x81\x82\x87\x81\x7f"
+"\x1e\xe5\xfb\xb4\x15\x9e\x8a\x92\x88\x94\x1e\x9e\x86\x77\x98\x75\x1b\x7b\x82\x85\x7a\x82\x1f\x9a\x66\x61\x93\x5b\x1b\xfb\x0e\x33"
+"\x53\x3c\x3e\xc7\x63\xf7\x22\x7c\x1f\xc1\x86\xa0\x87\x9b\x85\x08\x9f\x83\x97\x80\x80\x1a\x77\x56\x7a\x50\x56\x61\x97\xa2\x6f\x1e"
+"\xa9\x82\x7a\x99\x6f\x1b\x78\x54\x1d\x82\x71\x1a\x6b\x07\x5d\x9d\x76\xb0\x98\x94\x8e\x93\x96\x1e\x79\xb2\xbe\x82\xc5\x1b\xf7\x17"
+"\xea\xc5\xdb\xb9\x70\xb5\x5e\xa3\x1f\x6d\x9b\x61\x96\x41\x94\x4b\x94\x85\x8c\x7e\x8f\x08\x7c\x91\x82\x92\x92\x1a\x99\xbb\x9a\xba"
+"\xb4\xac\x82\x79\xa5\x1e\x6c\x9d\x97\x83\xa4\x47\x0a\x0e\x2c\x1d\x2e\xf8\x81\xf7\x0d\x0a\x74\x7f\x84\x51\x1d\x7d\x84\x80\x7e\x1a"
+"\x77\x9e\x79\xa1\x95\x95\x90\x96\x99\x1e\x0e\x2c\x1d\xfb\x6e\xc8\x0a\x83\x91\xf7\x2d\x1d\x9f\x96\x6f\x0a\x2c\x1d\xfb\xd7\xf8\xa5"
+"\x28\x0a\x2c\x1d\xfb\xbd\xf8\xbd\x98\x1d\x21\x05\x80\x99\x95\x86\x96\x1b\xa1\x9e\x9c\xa0\x99\x85\x94\x78\x9a\x1f\x0e\x59\x1d\xf8"
+"\x18\xf7\xa6\x27\x0a\x59\x1d\xf7\x15\xf7\xca\x28\x0a\x40\x0a\xfb\x05\xf8\x65\xf7\x42\x1d\x7c\x8e\x87\xa2\x79\x1f\xf7\x2f\xfb\x10"
+"\xf7\x2d\xf7\x10\x05\xa4\x9f\x8c\x8d\x9a\x1a\xa0\x79\x9c\x77\x80\x82\x87\x81\x7f\x1e\x0e\xf7\x70\xf8\x98\x15\x48\x06\x6a\x7b\x7f"
+"\x73\x7a\x9a\x7b\x9d\x89\x1f\x90\xfb\x0b\x06\x6f\x7a\x7e\x74\x74\x9c\x7e\xab\x1f\xd1\x06\xab\x9c\x97\xa3\xa2\x7c\x97\x6d\x8c\x1f"
+"\xe7\x07\xa5\xa7\x9a\x93\xa5\x1b\xad\x99\x81\x74\x1f\x2e\x07\x74\x89\x7c\x7d\x77\x1a\x73\x9c\x7f\xab\x1e\xc3\x06\xab\x9c\x97\xa3"
+"\x9d\x7c\x9b\x79\x8c\x1f\x86\x8c\x05\xea\x07\xca\x5c\xb3\x44\x70\x70\x83\x7e\x7a\x1e\x85\x86\x05\x0e\xf8\x74\x16\x9f\x9b\x8e\x8f"
+"\xa6\x0a\x6e\xf7\x6e\x8d\x0a\xfb\x29\xad\x07\xe7\x1d\x7d\x07\x71\x5c\x1d\xa5\x1b\x99\xfb\x6e\x79\x06\x71\x83\xf7\x3f\x1d\xf7\x1c"
+"\x06\xae\x97\x90\x9c\x98\x1f\x7a\x99\x97\x86\xae\x1b\xfb\x17\xf3\x15\xf7\x6e\xf7\x29\xfb\x6e\x79\x07\x6a\x7d\x86\x7a\x7d\x1f\x9c"
+"\x7e\x7d\x90\x6a\x1b\x0e\xf8\x9f\xf2\x15\xf7\xd6\xfb\x41\xad\x07\xa1\x9b\x9d\x9f\x95\x97\x89\x85\x9b\x1e\x86\x9c\x8f\x8a\x95\x1b"
+"\xa8\xa3\xa2\xa8\x9d\x83\x99\x7c\x95\x1f\x98\x76\x5f\x95\x66\x1b\x6f\x76\x86\x7d\x74\x1f\x98\x6c\x6e\x91\x69\x1b\x3d\x4d\x4b\x3c"
+"\x8c\x0a\xfb\xba\x16\x52\xf7\x6f\xc4\x06\xf2\x04\x52\xad\x06\xa1\x9b\x9d\x9e\x93\x93\x8a\x88\x96\xf7\x27\x1d\xf8\x9f\xf2\x15\xf8"
+"\x87\xfb\x1a\x07\x69\x78\x87\x7c\x72\x1f\x98\x6c\x6e\x91\x69\x1b\x3d\x4d\x4c\x3b\x8c\x0a\xfb\x0d\xf7\xd6\x15\x4a\xad\x06\xa1\x9b"
+"\x9e\x9e\x94\x91\x8a\x87\x9a\x1e\xfb\x41\xfc\x1c\x15\x52\xf7\x6f\xc4\x06\xf2\x04\x52\xad\x06\xa1\x9b\x9e\x9e\x93\x92\x8a\x87\x97"
+"\xf7\x27\x1d\xf8\xba\xf7\x34\x15\xa3\xa1\x97\xa7\xaa\x1a\xc9\x58\xbb\x4a\x4a\x58\x5b\x4c\x6d\x97\x70\xa3\x74\x1e\x71\xf7\x2a\x1d"
+"\x3b\xf7\x12\x15\xa8\x9f\x78\x70\x6e\x77\x78\x6e\x6e\x77\x9e\xa7\xa7\x9f\x9e\xa8\x1f\xfb\x33\x04\x60\x0a\xfb\xc5\xf8\x91\x7f\x1d"
+"\xf7\xc4\xf7\x4e\xe2\x1d\xf8\x5c\xf8\x91\xf7\x12\x1d\x83\x87\x7e\x85\x9b\x1d\x22\xf8\x2f\xbf\x1d\xf8\x2f\xfb\xd9\xc7\x0a\x7d\x6c"
+"\x6a\x1a\x4a\xbb\x5f\xd3\xd3\xb3\x0a\xfb\x33\x04\x60\x0a\x0e\xf8\x5b\xf8\x91\x15\x8e\x91\x90\x9b\xf5\x0a\xfb\x7c\xfc\x47\x05\x87"
+"\x83\x87\x7e\x85\x9b\x1d\xf7\xdc\xe1\xc7\x0a\x7c\x6c\x6a\x1a\x4a\xbb\x5f\xd3\xd4\xb3\x0a\x8a\xfb\x33\x15\xa8\xa4\x72\x6e\x71\x76"
+"\x7b\x6a\x6c\x75\x9c\xa3\xa9\xa3\xa4\xa8\x1f\xfc\x03\xf8\x47\x15\xea\x06\xa8\x9a\x96\xa1\xa0\x7d\x96\x6d\x1f\xfb\x36\xfb\x3c\x06"
+"\x77\x98\x7c\x9c\x90\x8e\x8c\x8f\x93\x1e\x97\xa1\xa2\x92\x9c\x1b\xad\xa1\x70\x62\x5e\x75\x79\x55\x69\x7c\x8f\x99\x7c\x1f\x92\x82"
+"\x88\x8d\x82\x1b\x7b\x7e\x7d\x79\x69\xbd\x71\xcf\xbf\xae\x97\xa6\xa1\x1f\x9e\xa1\x96\xac\xae\x1a\xd7\x5a\xc2\x49\x7c\x7b\x88\x86"
+"\x79\x1e\x0e\xf7\x7a\xf8\xc4\x15\x33\xfb\x8f\x05\x89\x82\x89\x84\x86\x1a\x7a\x9b\x7d\x9d\x9c\x94\x93\xa2\x93\x1e\xeb\xf7\xa7\x05"
+"\xc9\xfb\x9f\x54\x07\x70\x96\x7d\xa2\x9e\x96\x96\x9f\x8e\x1e\xf7\xf5\x58\x15\x8f\x93\x8f\x99\x90\x1a\x9b\x7b\x9a\x7a\x7d\x82\x84"
+"\x79\x81\xf7\x3c\x1d\x99\x95\x93\x9c\x94\x1e\xf7\xdc\xe1\x15\xa3\xa2\x97\xa6\xaa\x1a\xc9\x59\xbb\x4a\x49\x59\x5b\x4c\x6d\x97\x70"
+"\xa2\x74\x1e\x71\xf7\x2a\x1d\x3c\xd2\x0a\x8a\xfb\x33\x15\x60\x0a\x0e\x75\x0a\xf7\x54\xf7\xc5\x26\x1d\x21\x1d\xfb\x1e\xf8\x0e\x48"
+"\x1d\x21\x1d\x0e\xf8\x34\xf7\x2b\x15\x9e\x5c\x05\x7b\x06\x5c\x73\xe8\x0a\x76\x9b\x5b\x8d\x1f\xfb\x57\xf8\x60\x05\xfb\x51\x39\x0a"
+"\xa9\x06\xfb\x2a\xfb\xf8\x05\x86\x06\x61\x74\xe8\x0a\x73\x9d\x5d\x1f\x7a\x06\x9f\xba\x05\xf7\x4f\xf2\x15\xfb\x23\x06\xd3\xf7\x3c"
+"\x05\xfb\x78\xec\x15\xa8\x7e\x9b\x73\x74\x7e\x7b\x6e\x73\x0a\xa2\xa3\x98\x9b\xa8\x1e\x0e\x21\x1d\xfb\x0b\xf7\xd3\x35\x0a\xf7\xf9"
+"\xf8\xc8\x15\xfb\x6f\x06\x70\x20\x1d\x7a\x93\x7c\x9a\x81\x1e\x83\x95\x96\x89\xa6\x1b\xc4\x06\xfb\x2c\xfb\xf9\x05\x5f\x73\x79\x69"
+"\x68\xa2\x7a\xba\x1f\xf7\x19\x06\xa0\x9a\x8d\x90\xa6\x0a\x7a\x06\x9f\xba\x05\xf7\x7d\x06\x9e\x5c\x05\x7a\x06\x71\x83\x89\x9d\x1d"
+"\x99\x88\xa3\x1b\xc1\x06\x5b\x1d\xa8\xb1\xb4\xc1\xa8\x1f\xb0\x9f\x95\x98\xa3\x4c\x0a\x80\x92\x82\x8d\x70\x8c\x08\xfb\x4f\xf7\x2a"
+"\x15\xfb\x25\x06\xd4\xf7\x3d\x05\x0e\x21\x1d\x93\xf8\x34\xea\x1d\xbd\xf7\x2b\x15\x9d\xf7\x57\x1d\x7f\x7b\x1e\xfb\x19\xf7\x4a\x1d"
+"\x8e\x98\x9b\x1e\x0e\x7c\x0a\x53\x0a\xf8\x3e\xf8\x40\x26\x1d\x53\x0a\xf7\xa4\xf8\x24\x80\x1d\x7b\x1d\xf7\xa4\xf8\x2d\x26\x0a\x7b"
+"\x1d\xf7\xa3\xf8\x65\xab\x0a\x0e\x79\x1d\xc1\x1d\x9b\x42\x0a\xb9\x1d\x8f\x16\xf8\xe4\x06\xfb\x96\xf8\xc7\x05\x3f\x06\xfb\x0c\xfc"
+"\x70\x15\xf7\x32\xf7\xe6\xf7\x32\xfb\xe6\x05\x0e\x30\x1d\x64\xf9\x4e\x48\x1d\x30\x1d\xf2\x42\x0a\x30\x1d\xf1\x8a\x1d\x30\x1d\x77"
+"\xf9\x13\x35\x0a\xf8\x40\x8e\x15\x7d\x44\x74\x75\x4d\x88\x08\x68\x06\xaa\x0a\x95\x97\x89\xa5\x1b\xb1\x06\xf7\x07\xe0\xde\xf7\x09"
+"\x8f\x1f\x8a\xf8\x5d\x05\xb2\x8c\xa1\x9d\xab\x22\x1d\xfb\x16\x87\x1d\xaa\xfb\x9a\x06\xfb\x90\xf8\x01\x05\xfb\x09\x06\x3d\x1d\x79"
+"\x1a\x7b\x94\x7b\x98\x81\x1e\x84\x96\x96\x89\xa5\x1b\x96\xfb\xfa\x06\x65\x74\x78\x6b\x69\xa3\x79\xba\x1f\xf7\x15\x06\xb9\xa3\x9c"
+"\xae\xa9\x1d\x6c\xf7\x9c\x06\x0e\xf8\xa8\xf8\xc8\x15\xfc\x59\x06\x57\x0a\xf7\xfb\x06\x5c\x6b\x76\x6a\x89\x0a\x9a\x97\xa1\x9b\x9b"
+"\x1f\x9c\x9b\x96\x93\xb6\xa8\x08\xf7\x27\x07\xf7\x07\x1d\xf7\x15\xd8\x88\x07\x47\x1d\x9b\x93\x98\x96\x72\x1d\x0e\x78\x0a\x83\xf8"
+"\x9b\x38\x0a\xf7\x62\xfb\x2f\x15\xd8\x88\x06\x47\x1d\x70\x1d\x94\xa6\x1a\xf7\x27\xfc\x59\x07\x57\x0a\xf8\x6f\xf7\x29\x06\xa3\x89"
+"\x95\x85\x94\x1e\x9b\x81\x79\x94\x79\x1b\x79\x7c\x83\x7e\x80\x1f\x83\x80\x89\x82\x70\x1a\x5d\xfb\x8c\x07\x0e\x50\x0a\x98\xf8\x9b"
+"\x38\x0a\xf8\x1c\xfb\x31\xb2\x1d\x0e\xf7\x46\xf7\xf2\x15\xdb\x9d\xba\xb8\xcd\x1b\xa8\xaa\x83\x7c\xa3\x1f\xa4\x7c\x94\x80\x8f\x75"
+"\x08\x64\x91\x99\x7c\xa7\x1b\x9b\x99\x93\x98\x95\x1f\x92\x95\x8d\x96\xa4\x1a\xdb\x07\xa4\x8a\x93\x85\x94\x1e\x9b\x82\x7b\x94\x7a"
+"\x1b\x7b\x80\x85\x7b\x7f\x1f\xa8\x50\x71\x92\x58\x1b\xfb\x12\x2a\x32\xfb\x1f\x75\x1f\x70\x06\x76\x80\x80\x78\x77\x96\x80\xa0\x1f"
+"\xa3\x6c\x73\x06\x76\x80\x80\x77\x77\x96\x80\xa0\x1f\xa6\x06\xfb\x15\xa4\xf1\x3b\xf7\x1f\x1b\xcc\xc9\x9d\xa9\xb3\x1f\xab\xa4\x9c"
+"\xa4\xa2\x1a\xa7\x75\xa3\x70\x7e\x80\x86\x7f\x80\x1e\x73\x72\x8b\x8b\x82\x85\x08\x7e\x75\x68\x83\x64\x1b\x3e\x56\xb0\xcf\x78\x1f"
+"\xf7\x36\x06\x9f\x97\x96\x9f\x9f\x80\x96\x76\x1f\xfb\x3b\xaa\xf7\x56\x06\x9f\x97\x96\x9f\x9e\x80\x96\x76\x1f\x0e\xbe\x1d\x41\x1d"
+"\xfc\x12\xf9\x85\x48\x1d\x41\x1d\xfb\x91\xf9\x2e\x26\x0a\x41\x1d\xfb\x69\xfb\x3b\x23\x1d\x41\x1d\xfb\x92\xf9\x66\xab\x0a\x0e\xe6"
+"\xf8\x48\x15\x86\x06\x88\x06\x65\x71\x7b\x73\x71\xa4\x7d\xba\x1f\xfb\x91\x93\x1d\xf7\x0d\x06\xba\xa2\x65\x1d\x80\xf7\x13\xf7\x62"
+"\xfb\x13\x80\x06\xde\x1d\xf7\x91\x06\xbb\xa3\x99\xa5\xa3\x72\x9b\x64\x1f\x88\x06\x86\xa5\x06\xad\x8f\x9d\x9c\xa9\x4c\x0a\x92\x20"
+"\x0a\x26\x06\x72\x81\x89\x86\x82\x48\x0a\x83\x96\x95\x89\xa6\x1b\x96\x72\xfb\x62\xa4\x96\x06\xa4\x95\x8d\x91\x94\x1f\x9b\x94\x95"
+"\x9c\x9d\x1a\x9b\x83\x9a\x7d\x96\x1e\x92\x4b\x1d\x6e\x9d\x79\xad\x87\x1e\xf7\xce\x21\x15\x68\xfb\x62\xae\x07\x0e\xb1\x1d\xf1\xf8"
+"\x78\x26\x0a\xf7\x6a\xf8\x61\x15\xa9\x06\xa3\x96\x8d\x90\x8c\x1d\xfb\x3c\xf7\x08\x1d\xa9\xfb\xfa\x6d\xf7\x2c\x1d\xf7\x3c\x2b\x1d"
+"\xa9\x1d\x6d\x06\xf7\x9b\xf7\xfa\x15\xfc\x2a\x07\x5f\x88\x84\x77\x78\x1e\x77\x76\x67\x7d\x6b\x1b\x6e\x6a\x92\x9a\x63\x1f\x90\x7e"
+"\x7f\x8e\x84\x1b\x72\x72\x72\x70\x7a\x93\x7c\x99\x81\x1f\x77\xaa\xd8\x78\xc3\x1b\xc1\xc4\x9f\xae\xb4\x1f\xbc\xb3\x9c\xb0\xcb\x1a"
+"\xf8\x9c\xfb\x35\x07\x5d\x0a\x0e\x21\x0a\xfb\x56\xf9\x4e\x58\x0a\x21\x0a\x55\x8a\x1d\x21\x0a\xfb\x44\xf9\x13\x35\x0a\x85\x0a\xf7"
+"\x6f\x06\x5b\x6b\x76\x6a\x89\x0a\xa7\xb0\xb3\xc1\xaa\x1f\xb0\xa0\x94\x97\xa2\x22\x1d\x2a\x06\x0e\x21\x0a\x0e\xd4\x1d\xf9\x06\x43"
+"\x0a\xf8\x0f\xf8\x60\x15\xea\x27\x1d\xfb\xbd\x39\x0a\xe9\xfb\xf8\x2d\x39\x0a\xf7\xbd\x27\x1d\x2c\x06\xfb\xc6\xf8\x33\x38\x0a\x0e"
+"\x21\x0a\xee\xf9\x2f\xc6\x1d\x7d\x0a\xfb\x55\xf8\xa8\x26\x0a\xf7\x26\x1d\x9d\xad\x9b\x83\x9b\x7d\x95\x1f\x92\x80\x81\x8d\xf0\x1d"
+"\x84\x8a\x88\x82\xbd\x1d\x93\x80\x82\x8c\x6f\x1b\x6c\x06\x0e\xb3\x1d\xf7\x23\xfb\x72\x23\x1d\x43\x1d\xf7\x07\xf9\x0a\x26\x1d\xf8"
+"\x49\xf3\x15\x7b\x29\x1d\xf7\x18\x06\xb8\xa4\x9d\xac\xaa\x73\xa1\x69\x1f\x80\x06\xfb\x57\xf8\x60\x05\xfb\x6c\x06\xa3\x1d\xc4\x06"
+"\xfb\x2a\xfb\xf8\x05\x81\x06\x67\x73\x76\x6b\x6a\xa4\x79\xb9\x1f\xf7\x18\x27\x1d\x7a\x06\xf7\x1c\xf7\xd2\x05\x0e\x43\x1d\xf7\xc1"
+"\xf8\x29\x15\x94\x99\x8f\x95\x93\x1a\xa0\x79\x9c\x75\x79\x82\x85\x77\x7d\x1e\x39\xfb\x0c\x05\x82\x7e\x87\x80\x82\x1a\x77\x9e\x7a"
+"\xa0\x9c\x95\x92\x9e\x98\x1e\x0e\x43\x1d\xdc\xfb\x72\x23\x1d\x43\x1d\xf7\x0d\xf7\x06\x15\xb2\xaa\xa9\xb0\xb0\x6c\xa9\x64\x1f\x79"
+"\x62\x1d\x79\x0a\x33\x0a\xf7\xaa\xf9\x0a\x26\x1d\x33\x0a\xf7\x10\x42\x0a\x33\x0a\xf7\x38\xfb\x72\x23\x1d\xf7\x45\xf8\x03\x15\xf7"
+"\x91\xfc\x03\x05\xf4\xf8\x61\x06\xce\x1d\x93\x7b\x99\x9c\x0a\x06\x0e\x24\x1d\xfb\x20\xf7\xda\x58\x0a\x24\x1d\xad\xf7\x94\x87\x0a"
+"\x24\x1d\xfb\x0e\xf7\x9f\x35\x0a\xf7\x27\xec\x15\x9f\x88\x80\x96\x79\x1b\x74\x80\x77\x62\x1f\x48\xf7\x7d\xf7\x38\x07\x34\xa1\x67"
+"\xb6\xe0\x1a\xe7\xc6\xcf\xdb\xdb\xc5\x47\x2e\x39\x62\x59\x39\x7a\x1e\xfb\x38\xf7\x7c\xce\x07\xb3\x7f\xa0\x75\x79\x81\x81\x76\x87"
+"\x1e\x51\x06\xde\xb7\xb3\xd2\xf1\x1a\xf7\x28\xfb\x00\xf7\x08\xfb\x20\xfb\x1d\xfb\x01\xfb\x09\xfb\x28\x25\xb3\x45\xdf\x5f\x1e\xfb"
+"\x19\xf8\x3a\x38\x0a\x0e\x24\x1d\x0e\xf7\xdf\xf8\xd6\x15\xfb\x21\xfb\x03\xfb\x17\xfb\x3a\xfb\x38\xf7\x04\xfb\x17\xf7\x20\xf7\x21"
+"\xf7\x03\xf7\x16\xf7\x39\xe1\x72\xd0\x59\xc4\x1f\xc4\x59\x4f\xa7\x48\x1b\x23\x04\xdb\xcb\x35\x21\x21\x4a\x35\x3c\x3c\x4a\xe1\xf4"
+"\xf6\xcb\xe1\xdb\x1f\xfb\x96\xb8\x15\xa8\x7e\x9b\x73\x73\x7e\x7c\x6d\x73\x0a\xa3\xa3\x98\x9b\xa8\x1e\x0e\x7e\x0a\xd5\xf7\xad\x26"
+"\x1d\xf7\xf4\xf8\xad\x15\x98\x06\xa2\x91\x8c\x8f\x92\x1f\x98\x91\x93\x97\x98\x1a\xa3\x79\x96\x64\x1e\xfb\x18\x06\x64\x79\x80\x73"
+"\x73\x9e\x7f\xb1\x1f\x96\x76\x06\x54\x85\x69\x81\x65\x76\x08\x40\x62\x5b\x3c\x38\x1a\xfb\x15\xf3\x28\xf7\x26\x82\x1e\x76\x80\x07"
+"\x7f\x8c\x05\x71\x78\x7c\x77\x73\x9e\x7f\xb1\x1f\xf7\x18\x06\xa3\x90\x8c\x8f\x92\x1f\x98\x91\x93\x97\x97\x1a\x97\x84\x95\x80\x92"
+"\x1e\x91\x82\x86\x8b\x72\x1b\x7e\x9f\x06\xf7\x24\x92\xf7\x02\xf2\xf7\x15\x1a\xe5\x51\xe1\x35\xb1\x1e\x6a\x99\x6b\x92\x5e\x8f\x08"
+"\xfb\x00\xfc\x1b\x15\x39\x92\x4f\xcb\xdc\x1a\xdd\xc4\xc8\xe0\x94\x1e\xf7\x00\x16\xe3\x83\xc5\x4e\x38\x1a\x39\x4f\x4c\x35\x84\x1e"
+"\x0e\xf8\x24\xf7\x28\x1d\xb8\xa4\x9d\xac\xa2\x7b\xa0\x77\x90\x1f\x8e\x83\x80\x8b\x7a\x1b\xf7\xfa\x30\x0a\xfc\x10\x88\x1d\xf7\x0c"
+"\x39\x1d\x81\xf7\xf8\x06\x0e\xf7\x8b\xf7\x8b\x15\x48\x95\x7a\xa6\x89\xf4\x08\xf7\x43\x2f\x07\x5d\x72\x79\x6a\x6c\xa0\x78\xad\x89"
+"\x1f\x43\x07\xfb\x31\xc8\x3e\xf7\x19\x7f\x1e\x63\x07\x63\x8a\x77\x7a\x6a\x2a\x0a\xe3\x2b\x1d\xac\x77\x9c\x63\x8c\x1f\xb3\x07\xf7"
+"\x19\x96\xcc\xde\x87\xf7\x2c\x08\xd3\x07\xaf\x8d\x9e\x9c\xab\x1a\xad\x73\x9d\x5c\x1e\x2f\xfb\x43\x06\x89\x22\x7b\x70\x47\x81\x08"
+"\xf7\x6a\x07\xb4\x8c\x9e\x9c\xae\x1a\xaf\x74\x99\x4b\x1e\x55\x06\x4b\x74\x7d\x66\x69\x9f\x7a\xb3\x8a\x1f\x0e\x3c\x0a\xf7\x4d\xf8"
+"\x36\x26\x1d\x3c\x0a\xaa\xf8\x1a\x80\x1d\x3c\x0a\xd2\xfc\x46\x23\x1d\x7f\x0a\x78\x1d\x49\xf7\xc7\x26\x1d\xf7\xe4\x7f\x15\xf7\x17"
+"\x96\xd6\xc9\xeb\x1a\xbf\x77\xb3\x62\xaa\x1e\x6b\xa3\x64\x98\x34\x9b\x3e\x99\x88\x8c\x77\x94\x08\x77\x95\x7d\xa0\x9e\x1a\xb1\xbb"
+"\xa9\xc8\xc8\xb9\x72\x67\x93\x1e\x92\x6b\x8b\x8b\x94\x83\x08\x82\x94\x9a\x85\x99\x1b\x9d\x9a\x93\x98\x96\x1f\x93\x96\x8d\x93\xa6"
+"\x1a\xe0\x07\xf7\x25\x1d\x5d\x96\x59\x1b\xfb\x12\x2d\x41\x28\x53\xab\x57\xbf\x6f\x1f\xab\x79\xab\x82\xcd\x80\xcf\x7f\x9a\x88\xa1"
+"\x80\x08\x9f\x81\x98\x79\x79\x1a\x64\x53\x6d\x42\x4b\x4e\xa6\xab\x81\x1e\x83\xa6\x8b\x8b\x83\x92\x08\x95\x82\x7d\x90\x7c\x1b\x67"
+"\x79\x75\x5e\x1f\x4c\x07\x5e\x9d\x75\xaf\x9c\x94\x90\x9c\x9b\x1e\xa8\x7c\xb8\x7d\xa9\x87\x08\x33\xd6\x1d\xb4\x1d\xfb\x70\xf7\xb4"
+"\x26\x0a\x78\x1d\xfb\x48\xfc\xb5\x23\x1d\xf8\xb2\xf8\xc8\x15\xfc\x4b\x35\x06\xf7\x3c\xfb\x52\xfb\x3c\xfb\x59\x05\x30\xf8\x51\xf7"
+"\x33\x07\xb0\x7b\x9d\x6b\x6a\x7b\x7a\x65\x89\x1e\x88\x53\x05\xfb\x69\x06\xf7\x38\xf7\x4f\xfb\x2f\xf7\x43\x05\xf7\x57\x06\x90\x47"
+"\x05\x65\x8e\x9b\x7a\xaa\x1b\xac\x9c\x9d\xb0\x1f\x0e\x54\x0a\xf7\xf5\xf7\xea\x15\xf7\x0b\xf0\x70\xf7\x16\x1d\x93\xa7\x1a\xf7\x16"
+"\xfc\xa0\xfb\x16\xf7\x16\x1d\x94\xa6\x1a\xa6\xee\xfb\x0b\x58\x07\x4c\x1d\x95\x9a\x88\xa2\x1b\xbe\xfb\x1c\x4e\x06\x5f\x1d\xf7\x7b"
+"\x29\x0a\x4d\xf7\x1c\xbf\x31\x1d\x0e\x7c\x1d\x57\x42\x0a\xf7\xeb\x16\xd3\x29\x0a\x4d\xf7\xfa\xf0\x37\x06\x73\x8d\x81\xd9\x0a\x93"
+"\xa7\x1a\xf7\x4f\xfc\xa0\xfb\x4f\x07\x73\x8d\x81\x91\x82\xe3\x0a\x93\xa7\x1a\xdf\xee\xfb\xfa\x4e\x07\x5f\x1d\xdc\x29\x06\xd7\x1d"
+"\x0e\xf7\x82\xf7\xcb\x15\x98\x07\xa3\x7d\x99\x73\x74\x7d\x7d\x73\x1e\x27\x07\x73\x99\x7d\xa2\xa3\x99\x99\xa3\x1e\x9a\xf7\x12\x7c"
+"\x07\x73\x99\x7d\xa3\xa2\x99\x99\xa3\x1e\xef\x07\xa3\x7d\x99\x74\x73\x7d\x7d\x73\x1e\x7e\x07\x4b\xf7\x9f\x15\x48\x4a\x71\x5a\x53"
+"\x1f\x4e\x55\x69\x3c\x34\x1a\xfb\x38\xf7\x13\xfb\x18\xf7\x30\xf7\x2f\xf7\x14\xf7\x18\xf7\x33\xe8\x6b\xd6\x4c\xc4\x1e\xbc\x55\x49"
+"\xa5\x47\x1b\x24\x04\xea\xdb\x34\x24\xfb\x00\x3d\x34\x2a\x2b\x3c\xe2\xf5\xf4\xda\xe2\xeb\x1f\x0e\x22\x0a\xfc\x09\xf8\xed\x58\x0a"
+"\x22\x0a\xfb\x5b\xf8\xa7\x87\x0a\x22\x0a\xfb\xf7\xf8\xb2\x35\x0a\x81\x0a\x3c\xb1\x4d\xd4\x61\x1e\x79\xab\xbc\x7e\xb2\x1b\x91\x94"
+"\x8c\x8c\x97\x1f\x64\x69\x7e\x73\x64\x1a\x53\x60\x1d\x81\x1e\x7e\x71\x80\x87\x7e\x1b\x7e\x85\x90\x94\xaf\xa8\xb7\xc3\xbe\x1f\xcc"
+"\xc3\xa1\xb6\x8d\xd6\x08\x0e\x2b\x0a\x0e\xf7\xf6\xf7\x80\x15\xf7\x33\xf7\x74\x05\xb8\x8d\xa1\x9c\xac\x1a\xad\x73\x9c\x5c\x8c\x1e"
+"\x2f\x06\x5e\x71\x79\x69\x74\x97\x7c\xa5\x80\x1f\x37\xfb\x0c\x36\xf7\x0c\x05\xa5\x98\x95\x99\xa2\x1a\xac\x72\x9c\x5e\x8c\x1e\x32"
+"\x06\x5d\x72\x79\x69\x6b\xa0\x7a\xb7\x88\x1f\xf7\x34\xfb\x74\x05\xfb\x18\x4e\x07\x5e\x72\x79\x69\x69\xa4\x79\xb8\x1f\xf7\x7a\x67"
+"\x1d\x4e\x06\xfb\x31\xf9\x06\x59\x0a\x83\xf8\x9b\x38\x0a\xf7\xfe\xfb\x2b\x7b\x0a\x0e\x22\x0a\xfb\x7d\xf9\x13\xa1\x0a\x22\x0a\x42"
+"\xf8\xce\xc6\x1d\x5a\x1d\xf7\x87\xf9\x71\x26\x1d\xf7\x0d\x1d\x9b\x7d\x95\x1e\x92\x20\x0a\xfb\x17\x06\x71\x83\x8a\x85\x81\x1f\x7b"
+"\x82\x81\x79\x7a\x1a\x7a\x94\x7b\x98\x82\x1e\x83\x96\x96\x89\xa5\x1b\xbc\x06\x6a\xfb\x82\x43\xf7\x5f\x05\xfb\x00\x06\x43\xfb\x5f"
+"\x6a\xf7\x82\x05\xb6\x06\xa3\x96\x8d\x90\x95\x61\x0a\x81\x8d\x6f\x1b\xfb\x17\x06\x70\x84\x8a\x85\x81\x1f\x7a\x81\x82\x7b\x77\x1a"
+"\x6f\x9b\x7a\xa9\x87\x1e\xc9\xfc\x62\x05\xf7\x0a\x06\xe4\xf9\x5e\x26\x0a\x5a\x1d\x7b\xf9\x96\x36\x1d\x5a\x1d\x7b\xf9\xad\x81\x1d"
+"\xf8\x4e\xf8\x60\x15\x5e\x2f\x0a\xf7\x29\xfc\x87\xfb\x29\x2f\x0a\xb8\x07\xf7\x4d\xfb\x76\x15\x6c\x91\x9a\x7c\xa6\x1b\xad\x9a\xa0"
+"\xbd\x1f\xb9\x07\xbc\x7c\xa1\x69\x70\x7c\x7c\x6c\x85\x1e\x32\x06\xab\x85\x7d\x99\x6f\x1b\x6a\x7c\x75\x5a\x1f\x5d\x07\x5a\x9b\x75"
+"\xad\xa5\x9a\x9a\xaa\x90\x1e\x2b\xfb\x16\x15\xb8\x07\xb8\x56\x1d\x5e\x1e\xfb\x29\xf8\x87\xf7\x29\x07\xb8\x56\x1d\x5e\x1e\x5e\x07"
+"\x0e\x2b\x0a\x56\xf8\xf7\x26\x0a\x2b\x0a\xfb\x32\xf9\x46\x81\x1d\x44\x1d\xab\xf9\x0a\x26\x1d\x44\x1d\xfb\x0f\x8a\x1d\x44\x1d\x0e"
+"\x23\x0a\xfb\x75\xf8\x7b\x3b\x1d\x76\x0a\x61\xf7\xea\x27\x0a\x91\x0a\x21\x1d\x0e\xf8\xbb\xf8\xc8\x15\xfc\x66\x9d\x0a\xf7\x12\xf7"
+"\x84\x7a\xf7\x65\x1d\xfb\xf0\xfb\xe7\x15\xf7\x12\xf7\x11\x07\xe6\xba\x74\x5d\x65\x6a\x78\x4a\x1f\x0e\x7c\x0a\xbe\x1d\xf8\x69\x16"
+"\x8f\x5e\x05\x52\x90\x99\x77\xaf\x1b\xb2\x99\xa1\xc7\x1f\xc7\x07\x8d\xcd\x7d\x9b\x4f\x8d\x08\xf7\xf8\x07\xbc\x8c\xa2\x9d\xae\x1a"
+"\xaf\x73\x99\x4c\x1e\xfb\xd9\x06\x4a\x74\x7e\x65\x68\xa4\x79\xbe\x1f\x91\x06\x8d\x06\x8d\xfb\x4b\x06\x47\x80\x5e\x74\x71\x1e\x74"
+"\x76\x6e\x7f\x68\x1b\x83\x06\x80\x8c\x05\x89\x06\x8a\x06\x85\xfb\x24\x06\x4e\x99\x76\xb2\xaf\x99\x9f\xc6\x8f\x1e\x8d\xb6\x05\xf7"
+"\x26\xf8\x60\x15\xf7\x12\xfb\xf8\x06\xfb\x35\x8d\xa1\xb1\x97\xc9\x8c\xd2\x19\x0e\x78\x0a\xf7\x60\xf7\x7b\x15\xd8\x06\x74\x8c\x82"
+"\x8f\x83\x1e\x78\x93\x9e\x80\xa1\x1b\xaf\x9d\xa1\xb9\x1f\xf7\x00\x07\xb6\x78\xa3\x68\x76\x78\x80\x7a\x83\x1e\x86\x83\x8a\x81\x74"
+"\x1a\x3e\xf7\x11\xf7\x6f\x5f\x06\x60\x9e\x73\xae\xae\x9e\xa2\xb7\x1e\xf7\x28\xfc\x51\x07\x65\x0a\x95\xfb\xf8\x81\x06\x5d\x72\x75"
+"\x1d\xf8\x67\xf7\x2a\x06\xb6\x78\xa3\x68\x68\x78\x73\x60\x1e\x5d\xfb\x85\x07\x84\xf9\x13\x43\x0a\xf7\x8a\xf2\x15\x65\x86\x7a\x7b"
+"\x6c\x1a\x66\xa2\x7d\xcb\x1e\xb6\x06\xc9\xa3\x99\xb0\xa9\x7a\x9b\x67\x91\x1f\xf7\x24\x07\x95\x81\xa1\x62\x96\x6d\xb4\x21\x18\xa0"
+"\x59\x95\x82\xb4\x8a\x08\xab\x06\xaa\xa1\x9f\xa9\xaa\x78\x9d\x64\x8f\x1f\x64\xf3\x7a\xb7\x74\xac\x6a\xa7\xf7\x0e\x0a\x6f\x94\x99"
+"\x7f\xa4\x1b\xae\x98\xa0\xc3\x1f\x98\x07\xce\x80\x9b\x5f\x4a\x78\x77\xfb\x46\x29\x1e\xea\x07\xac\x92\x9b\x9b\xa7\x1a\xb1\x74\x99"
+"\x4d\xbc\x0a\x7b\x48\xcc\x0a\x6a\x6c\x73\x68\x7c\x62\x64\x24\x18\x64\x87\x79\x7b\x6b\xf7\x2f\x1d\xaf\x9c\xaa\x99\x99\x08\x0e\xf7"
+"\x4f\xf8\xc6\x15\xa6\x8c\x72\xa2\x6f\x1b\x6d\x74\x75\x6e\x1f\x80\x07\x8c\x63\x05\x60\x8a\x80\x87\x70\x1e\x86\x72\x88\x74\x86\x1a"
+"\x71\xa3\x76\xa8\xa6\x99\x98\xad\x95\x1e\xd2\x9f\xb0\xa6\xd5\x1b\xcc\xb6\x71\x65\x61\x5c\x72\x40\x1f\x78\x06\x4b\x74\x7d\x65\x64"
+"\xa3\x7e\xcf\x1f\xab\x06\xe4\xaf\x77\x5b\x56\x5c\x6f\x31\x44\x59\x99\xaf\x50\x1f\xa2\x66\x7c\x91\x7b\x1b\x6f\x72\x71\x6f\x76\x95"
+"\x7a\xa1\x7d\x1f\x57\xd8\xe1\x71\xea\x1b\xe6\xc7\x9b\xaf\xb9\x1f\xb4\xab\xa2\xba\xbf\x1a\xc4\x73\xb6\x59\xac\x1e\xaf\xac\x9c\xaf"
+"\xb8\x1a\xea\x34\xcf\xfb\x0e\x5b\x62\x82\x77\x62\x1e\x0e\x56\x0a\x0e\x56\x0a\xf7\x06\xf7\xc7\x15\x74\x7c\x7c\x75\x4d\xd6\x55\xe1"
+"\xe0\xd6\xc1\xc9\xa1\x7c\x9a\x75\x78\x81\x82\x75\x84\x1f\x6a\x82\x6c\xf7\x37\x1d\x77\x0a\x0e\xf8\x90\xf8\x60\x15\xbe\x8d\xa0\x9a"
+"\xae\x1a\xb1\x74\x99\x4c\x1e\xfb\xd8\x06\x4b\x74\x7d\x66\x68\xa3\x7a\xbb\x8a\x1f\x90\x06\x92\xfb\x94\x06\x3f\x7a\x67\x69\x89\x1e"
+"\x8a\x06\x87\x95\x06\xbb\x79\xa4\x67\x64\x7c\x74\x54\x1e\x52\x07\x6a\xaf\x77\xc9\xca\xb5\x9d\xb3\xa7\x1e\xa7\xb0\x99\xc2\xd0\x1a"
+"\xf7\x94\xf7\x10\xfb\xf9\x07\x58\x8a\x76\x7c\x68\x1a\x64\xa2\x7e\xcb\x1e\xda\x06\xca\xa2\x99\xb1\xae\x76\x9a\x58\x8c\x1f\x0e\x79"
+"\x0a\x50\x0a\x24\x1d\x0e\xf8\x26\xf7\x28\x1d\xb9\xa3\x9d\xad\xae\x76\x9a\x58\x8c\x1f\xf7\xfa\x30\x0a\xfc\x10\x88\x1d\xf7\x0c\x39"
+"\x1d\x81\xf7\xf8\x06\x0e\x7f\x0a\x7b\x1d\x0e\x54\x0a\x83\x0a\x0e\xf7\xf6\xf8\x69\x15\xa2\x06\xb5\xa1\x9b\xaa\xaa\x74\x9c\x5e\x1f"
+"\xfb\x24\x06\x5e\x74\x7b\x6c\x6c\xa1\x7a\xb3\x1f\xa2\x70\x06\x43\x89\x63\x85\x71\x80\x08\x54\x75\x6c\x58\x4b\x1a\x22\xcf\x52\xf7"
+"\x10\x1e\xab\x6e\x74\x06\x62\x75\x7a\x6c\x6c\xa1\x7b\xb4\x1f\xf7\x2e\x06\xb5\xa2\x9c\xaa\xaa\x76\x9b\x62\x1f\x71\xa8\x99\x06\xf7"
+"\x1f\xd2\xc2\xf7\x01\xc5\x6f\xbb\x5c\xa3\x1f\x6e\x9a\x5e\x92\x40\x8d\x08\xfb\x00\x2d\x15\xfb\x16\x7c\x07\x48\x69\xa2\xb7\xb5\xa9"
+"\xa0\xc7\x1f\xf7\x1a\x16\xa2\x06\xc9\xaa\x76\x61\x5e\x67\x75\x43\x1f\x83\x06\x0e\x79\x1d\xf8\x83\xf8\x60\x15\xc0\x8e\x9f\x98\xaf"
+"\xd3\x0a\xfb\xf9\xfb\x5c\xf7\xf9\x95\x06\xb9\xa4\x9d\xad\xad\x73\xb0\x1d\x68\x9e\x7e\xc0\x88\x1f\xfb\xf9\x2c\x0a\xf8\x19\x55\xf7"
+"\x66\x1d\xf7\x31\x28\x07\x0e\xf8\x20\xf3\x15\x55\x06\x4b\x74\x7d\x64\x66\xa2\x7d\xcb\x1f\xf7\x29\xba\x0a\x4c\x73\x9a\x1d\x62\x50"
+"\x63\x7b\xf7\x07\x0a\xf7\x04\x07\xca\x8c\x9f\x98\xb0\x1a\xb2\x74\x98\x4a\x1e\x32\x06\x4b\x74\x7d\x65\x68\x9f\x7d\xc0\x89\x1f\xfb"
+"\x08\x07\xfb\x09\xc2\x4e\xf7\x09\x0a\x0e\xf7\x8a\xf3\x15\x3f\xf8\x60\xfb\x02\x06\x5d\x73\x79\x68\x69\x9e\x7d\xc0\x89\x1f\xfb\xfa"
+"\x2c\x0a\xf8\x5f\x06\xaf\xa3\xa0\xaa\xac\x76\x9c\x63\x8d\x1f\xf7\xf9\x07\xbf\x8d\x9f\x99\xae\x1a\xad\x73\x9d\x5c\x1e\xfb\x01\xfc"
+"\x60\x3f\xf7\xf9\x06\xac\x8e\x9c\x9c\xaa\x1a\xad\x75\x9d\x5f\xae\x1d\x6e\x9c\x7a\xac\x86\x1f\x0e\xf7\x7f\xf2\x15\x3f\xf8\x61\xfb"
+"\x02\x06\x5d\x73\x79\x68\x68\x9e\x7e\xc0\x88\x1f\xfb\xf9\x2c\x0a\xf8\x54\x55\x4a\x0a\xf7\x31\x29\xf7\xf9\x07\xc0\x8e\x9e\x99\x6e"
+"\x1d\xfb\x02\xfc\x61\x3f\xf7\xfa\x06\xaa\x8e\x9e\x9e\xa9\x1a\xac\x74\x9d\x60\xae\x1d\x6d\x9c\x7a\xac\x87\x1f\x0e\x7c\xf8\xc8\x15"
+"\xfb\x0d\x07\x5e\x9e\x74\xae\xaf\x9d\xa2\xb8\x1e\x9c\xf7\x06\xfb\xf8\x81\x9f\x1d\xf7\x50\x06\xf7\x21\xd4\xc0\xf2\xbd\x77\xb8\x67"
+"\xaa\x1f\xae\x63\x4c\x9c\x2f\x1b\x6a\xf7\x12\xb2\x39\x1d\x64\xfc\x60\x15\xf7\x12\xb1\x07\xe4\xbb\x72\x5d\x67\x6a\x78\x4b\x1f\x0e"
+"\xca\xf3\x15\x81\x06\x64\x76\x79\x6b\x67\xa3\x79\xba\x1f\xf7\x20\x06\xf7\x1e\xd3\xc2\xf5\xf4\x32\xcf\xfb\x1d\x1f\x7a\xf7\x12\xb3"
+"\x27\x1d\xfb\x32\x29\x1d\x95\x06\xf7\x00\xfb\xf8\x15\xf7\x13\xa1\x07\xd6\xb1\x74\x5d\x64\x6f\x78\x52\x1f\xf7\x7d\x16\x63\x89\x75"
+"\x78\x6b\x1a\x69\xa3\x7a\xb9\x1e\xed\x06\xb9\xa4\x9d\xac\xad\x74\x9c\x5d\x8c\x1f\xf7\xfa\x07\xb4\x8c\x9f\x9c\xad\x1a\xac\x74\x9d"
+"\x60\x1e\x26\x06\x62\x75\x79\x6a\x69\x9f\x7a\xb4\x8a\x1f\x0e\xf7\x5f\xf8\x60\x15\xa3\x06\x4f\x1d\xfb\x22\x9d\x0a\x06\xfb\x7a\x04"
+"\xf7\x12\xf7\x11\x07\xe6\xba\x74\x5d\x65\x6a\x78\x4a\x1f\x0e\xf7\x7f\xf7\xe3\x15\x5f\x74\x79\x69\x69\xa2\x79\xb7\x1f\xf7\x75\x06"
+"\x32\x83\x44\x57\xfb\x08\x1b\x53\x64\x97\xa7\x6e\x1f\xa3\x72\x80\x91\x79\x1b\x6f\x72\x72\x71\x6e\xa3\x6d\xb8\x73\x1f\x6f\xbd\xbe"
+"\x7f\xcd\x1b\xf7\x44\xf7\x0f\xf4\xf7\x2a\x1f\xca\x07\xf7\x31\xfb\x0a\xf7\x09\xfb\x32\x55\x5d\x80\x71\x5d\x1e\x9c\x7e\x7e\x91\x78"
+"\x1b\x69\x78\x73\x60\x1f\x3b\x07\x60\x9e\x73\xad\xa9\x9c\x9c\xaf\x93\x1e\x8f\x9e\x91\x94\x9b\x97\x08\x9d\xa4\xb9\x98\xb2\x1b\xdf"
+"\xcf\x53\x38\x99\x1f\x0e\xf7\x5b\xf7\x79\x15\xfb\x32\x98\xd5\x36\xf7\x0f\x1b\xbd\xb6\x9a\xa7\xad\x1f\xbd\xb6\xa9\xed\xf7\x0e\x1a"
+"\xee\x78\xd4\x65\xba\x1e\xb7\x67\x57\xa2\x4e\x1b\xfb\x10\x3c\x2f\xfb\x2d\x83\x1f\x67\xf7\x13\x90\x27\x1d\x2c\x88\x1d\xf7\x07\x2b"
+"\x1d\xad\x73\x9c\x5d\x1f\x86\xf7\x12\x06\xf7\x87\xf7\x89\x15\xa1\x9e\x84\x7e\x9a\x1f\xa7\x74\x9d\x45\x37\x1a\xfb\x13\x6b\x4f\x46"
+"\x6d\x71\x99\xa2\x7a\x1e\x78\xa8\x81\xbc\xd3\x1a\xe5\x97\xc0\xa6\xa7\x1e\x9c\x9c\xa0\x94\xa3\x1b\x0e\xf8\x20\xf7\x68\x15\xfb\x00"
+"\x6d\x07\x65\x0a\xf7\x28\x06\xb9\xa4\x9d\xad\xac\x72\x9e\x5d\x1f\x81\xf7\xf8\x95\x67\x1d\xfb\x72\x06\x45\x55\x7a\x69\x63\x1f\x65"
+"\x6b\x76\x60\x5d\x1a\x4f\xad\x5c\xd1\x64\x1e\x5c\x62\x71\x6b\x5c\x46\x74\x8a\x80\x8a\x82\x87\x08\x79\x84\x7f\x79\x76\x2a\x0a\xc6"
+"\x06\xd9\xf7\x08\xd2\xd7\xba\x9f\x08\xe6\xf3\x15\x43\x06\x3d\x46\xaf\xb5\xb1\xba\xa7\xcb\x1f\xf7\x00\x06\x0e\xf7\x2c\xf8\x61\x15"
+"\xfb\xfa\x56\x07\x74\x7f\x89\x86\x82\x6d\x0a\x7c\x99\x80\x1e\x84\x96\x93\x89\xa8\x1b\xf7\x6a\x06\xa4\x95\x8d\x90\x94\x99\x1d\x56"
+"\xf7\xfa\xf7\xcf\xf7\x04\x1d\xfc\x04\x07\x71\x49\x0a\x2d\x0a\x1e\x0e\xf7\x3e\xf8\x60\x15\xfb\xf7\x07\x4e\x89\x77\x7e\x65\x1a\x69"
+"\xa3\x77\xb3\x8d\x1e\xa2\x8c\xe1\x8a\x05\xcb\x8a\xa3\x9a\xb1\x1a\xaf\x77\x9a\x57\x8d\x1e\xd8\x07\xb3\xcb\xb3\x9c\xaa\x1b\xb1\xa6"
+"\x6b\x5d\x5f\x80\x7d\x5f\x7d\x1f\x69\x80\x7e\x7c\x6e\x1a\x6d\xa0\x79\xaf\xdf\xd0\xe0\xf3\xef\x4a\xcf\x2c\x5c\x60\x7e\x6a\x51\x1e"
+"\xf7\x37\xc2\x07\x8c\x66\x8c\x80\x8f\x82\x08\x77\x92\x9f\x7e\xa2\x1b\xac\x9d\x9f\xaf\x8e\x8b\x9d\x8a\x92\x1f\x8a\xa9\x88\xd4\x86"
+"\x90\x3b\x8d\x19\xfb\x91\x06\x3f\x89\x85\x86\x82\x42\x87\x69\x18\x89\x79\x8b\x85\x84\x1a\x69\x9f\x77\xad\xae\x98\x9d\xc2\x92\x1e"
+"\x8e\xa1\x05\x0e\xf7\x9c\xf3\x15\xf7\xf8\xf7\x5e\x37\x07\x60\x9e\x74\xae\xae\x9e\xa2\xb6\x1e\xf7\x50\xfc\x6a\x9f\x1d\xbf\xfb\xf8"
+"\x57\x06\x46\x0a\xc7\xf8\xf3\x15\x99\x97\x92\x95\x97\x1a\x9d\x7a\x9b\x78\x81\x81\x87\x82\x80\x1e\xfb\x00\x37\x05\x7d\x81\x84\x80"
+"\x7e\x1a\x79\x9b\x7b\x9f\x95\x94\x8f\x95\x97\x1e\x0e\xf7\x22\xf7\xe3\x15\xde\x9a\xcd\xc3\xe0\x1b\xae\xb5\x80\x7c\xa4\x1f\xa0\x7e"
+"\x93\x80\x90\x76\x08\x67\x93\x9c\x7a\xa9\x1b\xad\x9e\xa3\xb6\x1f\xdb\x07\xb6\x78\xa3\x6a\x77\x7d\x84\x7b\x7f\x1e\xa4\x5e\x5d\x97"
+"\x54\x1b\xfb\x32\xfb\x0a\xfb\x09\xfb\x31\x1f\x4c\x07\xfb\x2a\xf7\x0f\x22\xf7\x44\xcd\xbe\x97\xa7\xbd\x1e\xb8\xa3\xa3\xa9\xa8\x1a"
+"\xa6\x72\xa3\x6f\x7c\x7c\x83\x7a\x79\x1e\x69\x67\x6a\x80\x4e\x1b\xfb\x08\x44\xbf\xe4\x83\x1f\xf7\x75\x06\xb7\xa2\x9d\xad\xad\x74"
+"\x9d\x5f\x1f\x0e\xb4\x1d\x0e\x21\x0a\x0e\xd4\x1d\xf9\x13\x43\x0a\x7d\x0a\x0e\xf7\xa1\xf8\x60\x15\xb2\xfb\xf9\x06\x68\x86\x7a\x7a"
+"\x6e\x1a\x68\xa3\x7a\xbb\x1e\xd2\x06\xd0\xbc\x9c\xae\xad\x1f\xaa\xaa\x9c\xb6\xb8\x1a\xc0\x73\xbb\x60\xaa\x1e\x6c\xa2\x6a\x96\x57"
+"\x90\x08\xf7\x0a\x07\xcb\x8c\xa0\x98\xb1\x28\x1d\xfb\x88\x06\x4b\x74\x7d\x66\x68\xa3\x79\xbb\x1f\x91\xfb\x94\x06\x3c\x89\x7d\x68"
+"\x6e\x1b\x89\x06\x87\x8c\x05\x99\x07\xbd\x7d\x9d\x63\x64\x7c\x77\x56\x1e\x61\x07\x5a\xad\x73\xd2\xf5\xc3\xd6\xf7\x24\x1e\xf7\x27"
+"\xac\x15\xbc\x81\xa1\x77\x65\x1a\x66\x75\x78\x5a\x84\x1e\x0e\xf8\x11\xf7\xe1\x15\xf7\x14\x30\x0a\x3f\x06\x61\x74\x79\x6a\x6e\x9f"
+"\x76\xaa\x88\x1f\xfb\x13\xfb\x01\xf7\x13\x07\xab\x8e\x9f\xa0\xa8\x1a\xac\x74\x9d\x60\x1e\x3f\x5f\x0a\xfb\xf9\x07\x58\x8a\x76\x7c"
+"\x68\x1a\x68\xa3\x79\xb9\x1e\xeb\x06\xb6\xa2\x9d\xac\xa9\x77\x9f\x6b\x8e\x1f\xf7\x12\xf7\x01\xfb\x12\x07\x6c\x88\x77\x76\x6e\x1a"
+"\x6a\xa2\x79\xb5\x1e\xf7\x1a\x06\xf7\x13\xd3\xc3\xef\xf7\x03\x35\xcd\xfb\x24\x1f\x82\xfb\x79\x15\xf7\x12\x9d\x07\xcd\xba\x6e\x61"
+"\x67\x6c\x78\x50\x1f\x0e\xf7\xaa\xf8\x60\x15\xc4\x82\x06\x79\x07\x63\x9f\x74\xae\xac\x9d\xa0\xb2\x1e\xa4\x07\x89\xa9\x88\xd0\x7e"
+"\x96\x42\x8a\x19\xfb\x92\x06\x44\x8e\x7d\x7e\x87\x46\x8a\x6d\x18\x8a\x7a\x8b\x8b\x85\x1a\x63\x9d\x75\xad\xb3\x99\xa2\xce\x8c\x1e"
+"\xc5\xfb\xf9\x06\x4f\x76\x7d\x65\x66\xa2\x7d\xca\x1f\xe2\x06\xca\xa3\x99\xb0\xad\x74\x9c\x5b\x8c\x1f\xe1\x07\xb3\xb6\xa8\x9a\xab"
+"\x1b\xaf\x9d\x71\x59\x1f\x4a\x07\x5a\x8a\x75\x7a\x68\x1a\x67\xa3\x7d\xca\x1e\xca\x06\xca\xa2\x99\xb0\xab\x79\x9b\x64\x8f\x1f\xce"
+"\x07\xf4\x4b\xd2\x2e\x67\x68\x80\x75\x65\x1e\x0e\x77\x0a\xfb\x40\xf7\x83\x15\x9b\x97\x91\x95\x97\x1a\x9d\x7a\x9b\x78\x81\x81\x87"
+"\x82\x7f\x1e\xfb\x00\x37\x05\x7d\x80\x84\x80\x80\x1a\x78\x9c\x7b\x9f\x94\x94\x8f\x95\x98\x1e\x0e\x83\x0a\xfb\x0c\xf8\x7d\x15\x74"
+"\x7c\x7c\x75\x4d\xd5\x55\xe2\xe1\xad\x1d\x78\x82\x83\x74\x84\x1f\x6a\x80\x6d\xf7\x37\x1d\x8d\x1d\x42\x7f\x7b\x5a\x1e\x75\x83\x80"
+"\x7c\x75\x1a\x6e\xb5\x0a\x45\x72\x5a\x5d\x1f\x72\x71\x7c\x68\x6d\x1a\x41\xdd\x50\xf3\xc2\xc6\x97\xa1\xb9\x1e\x8c\xf7\x08\x44\x0a"
+"\x0e\xf7\xec\xf8\x4f\x15\xc9\xb2\x95\xa0\xa0\x1f\x9c\x9e\x96\xa9\xaa\x1a\xaf\x75\xa3\x69\x79\x7c\x83\x7d\x80\x1e\x86\x85\x84\x73"
+"\x8c\x82\x08\x80\x07\x7f\x88\x8a\x62\x8a\x1e\x36\x06\x45\x5b\x79\x62\x68\x1f\x68\x62\x7d\x51\x23\x1a\x20\x9a\x56\xb8\x5e\x1e\x5b"
+"\xb9\xcc\x72\xd6\x1b\xf7\x23\xf4\xe7\xf7\x10\xf7\x13\x2a\xe4\xfb\x1c\x52\x61\x80\x71\x63\x1f\x95\xbb\x99\x95\xc7\x8d\x08\xb5\xfb"
+"\x0e\x15\xd9\xc3\x5a\x47\x47\x53\x5a\x3c\x3d\x53\xbc\xce\xa9\x97\xa8\xa0\xa1\x1f\xa5\xa5\xa8\x96\xba\x1b\x0e\xea\xf3\x15\x81\x29"
+"\x1d\xf7\xa3\x06\xce\xbb\x97\xa2\xaa\x1f\xa8\xa1\x9c\xac\xad\x1a\xb9\x71\xaa\x53\xa1\x1e\xa9\xa6\x99\xa8\xac\x1a\xa5\x82\xa2\x7a"
+"\x9d\x1e\xa7\x70\x49\x9d\x3d\x1b\xfb\x78\x29\x1d\x95\x06\xf7\x00\x54\x15\xc2\xf5\x07\xc6\xad\x81\x7b\x75\x71\x84\x34\x1f\x35\xfb"
+"\x36\x15\xc5\xf7\x13\x07\xe5\x9f\x86\x76\x76\x6c\x80\x50\x1f\x0e\x8f\x0a\x0e\xf8\x5f\x16\x68\x07\x58\x9d\x72\xb0\xb2\x99\xa1\xc7"
+"\x1e\xbd\x07\x8d\xcb\x7d\x9c\x53\x8d\x08\xf7\x6d\x07\xba\x8d\xa0\x9b\xae\x1a\xb0\x73\x99\x4c\x1e\xfb\xc2\x06\x4c\x74\x7d\x66\x67"
+"\xa3\x7a\xbb\x1f\x8e\x06\x90\xfb\x04\x06\x89\x34\x7b\x7c\x35\x88\x08\x69\xfb\x19\x06\x4b\x96\x79\xb4\xb5\x99\x9f\xc5\x1e\xac\x07"
+"\xf7\x1e\xf7\xd5\x15\xf7\x03\xfb\x6d\xfb\x1d\x06\x9b\xa4\x95\xb0\xb6\x1a\x0e\x35\x1d\x0e\xf8\xbb\xf7\x34\x15\xb8\x07\xc9\x6f\xca"
+"\x5d\xb5\x1e\xb2\x61\x40\xa5\x46\x1b\xfb\x27\xfb\x04\x29\xfb\x14\xfb\x1b\xf7\x00\x30\xf7\x34\xd5\xed\x9d\xa1\xbc\x1f\x9e\x93\x96"
+"\x9c\x9e\x1a\xa7\x75\xa2\x6e\x81\x7c\x88\x85\x6f\x1e\x7a\x40\x6d\x86\x60\x1b\x42\x59\xa3\xba\x72\x1f\x8f\xf3\x15\xbb\xaa\xb6\xa1"
+"\xca\x1b\xc9\xb7\x75\x5b\xaa\x1f\xfb\x7c\xf7\xe1\x15\x6b\x72\x73\x6d\x6c\xa5\x73\xaa\xab\xa4\xa3\xaa\xa9\x72\xa3\x6b\x1f\xf7\x61"
+"\x4a\x1d\xf7\xf5\xf7\x9f\x15\xc3\x07\xa4\x9b\x94\x9a\xa0\x1a\xab\x71\x9d\x5d\x1e\x6b\x06\x5e\x71\x79\x6b\x76\x94\x7d\xa4\x7a\x1f"
+"\x53\x07\x46\xf5\x05\xad\x74\x69\x9d\x62\x1b\x5f\x76\x77\x63\x1f\x63\x07\x65\x9c\x77\xaa\xa2\x99\x94\xa2\x95\x1e\x97\x69\x9c\x76"
+"\xa3\x7d\x7a\x7e\x77\x73\x7d\x72\x66\x4a\x18\x5d\x8a\x76\x7a\x68\x1a\x6a\x9e\x7a\xad\x1e\xce\x06\xcf\xf7\x0a\x9b\xa7\xa0\x9f\x99"
+"\x8e\x19\x47\x07\x73\x7b\x81\x7c\x77\xe1\x0a\x9b\x1f\xd0\x07\x99\x88\xa0\x76\x9c\x6f\xcf\xfb\x0a\x18\xcd\x06\xae\x9e\x9c\xab\xaf"
+"\x76\x9c\x5d\x8c\x1f\x66\xcc\x7b\xa5\x7a\xa0\x78\x9a\x19\xa4\x99\x9a\x9f\x98\xae\x08\x75\x95\x99\x81\xa3\x1b\xaa\x9c\x9f\xb1\x1f"
+"\xb3\x07\xb3\x75\x9f\x5f\x62\x69\x79\x69\x74\x1e\x0e\xf7\xc6\xf7\x3b\x15\xda\xba\x7f\x76\x74\x58\x79\x4a\x4b\x4e\x9b\xab\x4e\x1f"
+"\x95\x78\x81\x8e\x7e\x1b\x70\x71\x72\x71\x6b\xab\x70\xcb\x74\x1f\x74\xcc\xc5\x81\xcb\x1b\xf7\x1f\xe2\xc2\xe2\xb4\x79\xa9\x65\xa6"
+"\x1f\xa3\xa6\x96\xa3\xa8\x1a\xd6\x3b\xc1\xfb\x02\x58\x62\x80\x73\x63\x1e\xc1\x81\x80\x99\x6a\x1b\x6f\x73\x76\x72\x84\x8d\x80\x8d"
+"\x80\x1f\x8e\x7d\x8c\x7c\x6e\x1a\x79\x8b\x76\x8a\x83\x1e\xb4\x0a\x67\x7f\x8a\x89\x82\x1f\x70\x84\x7e\x7b\x6f\x1a\x66\xa2\x7e\xcb"
+"\x1e\x0e\x7d\x1d\x0e\x7d\x1d\xf7\x00\xf7\xc0\x15\x74\x7c\x7c\x75\x4d\xd5\x55\xe2\xe1\xad\x1d\x77\x83\x83\x70\x82\x1f\x6f\x82\x69"
+"\x78\x61\xea\x0a\xba\x1d\x0e\xf8\x82\xf7\xd5\x15\xba\x8c\xa0\x9c\xad\x28\x1d\xfb\xd0\x06\x4b\x74\x7d\x65\x64\xa0\x7f\xce\x8a\x1f"
+"\xfb\x38\x07\x74\x87\x79\x84\x82\x1e\x83\x83\x7d\x85\x81\x8c\x08\x88\x06\x85\x8c\x05\xb2\x88\x7a\x9e\x6a\x1b\x67\x7d\x76\x55\x1f"
+"\x5c\x07\x70\xad\x7b\xc5\xf7\x05\xc5\xc4\xf7\x04\x1e\xf7\x38\xf7\x0a\xfb\x6e\x07\x5e\x8a\x75\x7a\x68\x1a\x67\xa2\x7d\xcb\x1e\xd0"
+"\x06\xca\xa3\x99\xaf\xae\x75\x9c\x5d\x8c\x1f\x0e\xf7\x3f\xf7\x9d\x15\xe8\xfb\x2d\x05\xd7\x06\xe4\xf7\x2c\x05\xfb\x34\x6c\x07\x3a"
+"\x0a\xf7\x15\x06\xb9\xa4\x9d\xad\xac\x77\x9c\x62\x8d\x1f\xf7\x6e\x30\x0a\xfb\x01\x06\xfb\x02\xfb\x4b\xfb\x04\xf7\x4b\x05\x20\x5f"
+"\x0a\xfb\x6e\x88\x07\x69\x73\x76\x6c\x69\xa4\x79\xb9\x1f\xf7\x14\x39\x1d\x6d\x06\x0e\xf8\x26\xf7\x38\x15\x4f\x86\x07\x3a\x0a\xf7"
+"\x07\x06\xb9\xa3\x9d\xae\xad\x76\x9b\x58\x8c\x1f\xf7\x6e\x30\x0a\x2c\xd0\x1d\x06\x0e\x25\x1d\x0e\xf8\x23\xf7\xd5\x15\xfb\x6e\x81"
+"\x07\x5c\x73\x7a\x69\x69\xa3\x79\xba\x1f\xf7\x0c\x2b\x1d\xae\x76\x9a\x58\x8c\x1f\xf7\x6e\x07\xae\x90\x9c\x9b\xa9\x1a\xae\x73\x9d"
+"\x5d\x1e\xfc\x10\x06\x5d\x73\x79\x69\x6c\x9c\x7a\xae\x87\x1f\xfb\x6e\x07\x58\x8a\x76\x7c\x68\x2a\x0a\xf7\x0c\x06\xb9\xa4\x9d\xad"
+"\xad\x73\x9c\x5c\x1f\x81\xf7\x6e\x06\x0e\xb8\x1d\x6c\x0a\x64\x5b\x55\x0a\x0e\xf7\xf4\xf7\xd5\x15\xee\x37\x06\x24\x0a\xf7\x50\xfc"
+"\x9b\xfb\x50\x2f\x0a\xdf\xeb\xfb\x6d\x4f\x07\xeb\x0a\xf7\x7a\x39\x1d\x4d\x06\x0e\xb6\x1d\x0e\xf7\xf5\xf8\x8e\x15\x8a\xcb\x80\x9b"
+"\x61\x8d\x08\x5a\x50\x82\x81\x7f\x1f\x80\x82\x85\x7b\x79\x1a\x6b\x9e\x7d\xb8\x1e\x9e\x5d\x06\x8d\x79\x86\x8c\x82\x1b\x2d\x42\x29"
+"\xfb\x11\xfb\x15\xcf\x2d\xea\x94\x92\x8b\x8d\x9f\x1f\x76\x7d\x07\x4b\x74\x7e\x65\x64\xa1\x7e\xcc\x1f\xf7\x1d\x06\xcb\xa3\x99\xb0"
+"\xb2\x75\x98\x49\x1f\x7c\xa0\x06\x89\xa2\x90\x8b\x94\x1b\xec\xce\xe6\xf7\x17\xf7\x12\x42\xed\x2e\x82\x85\x8a\x89\x77\x1f\xfb\x00"
+"\xfb\xe5\x15\x8a\x82\x85\x8a\x84\x1b\x61\x70\xb9\xd4\xcf\xa9\xbe\xb3\x90\x92\x8a\x89\x94\x1f\xf7\x00\x16\x8d\x97\x93\x8c\x8d\x1b"
+"\xb6\xa7\x5c\x44\x42\x70\x5b\x62\x84\x85\x8c\x8d\x7f\x1f\x0e\x7a\x0a\xba\x1e\xf7\x05\x63\x1d\x82\x91\x84\x8d\x78\x8c\x08\x0e\xf8"
+"\x83\xf7\xd5\x15\xbf\x8d\xa0\x9a\xae\xd3\x0a\xfb\x6e\xfb\x5c\xf7\x6e\x95\x06\xba\xa3\x9d\xad\xad\x73\xb0\x1d\x69\xa0\x7c\xbe\x89"
+"\x1f\xfb\x6e\x2c\x0a\xf8\x19\x60\xf7\x66\x1d\xf7\x26\x28\x07\x0e\xf8\x16\xf3\x15\x5e\x06\x4b\x74\x7d\x65\x65\xa2\x7d\xcb\x1f\xf7"
+"\x1c\x06\xca\xa3\x99\xb0\xae\x75\x9c\x5b\x8c\x1f\xf7\x6e\xc2\x0a\x4c\x07\x6f\x59\x6b\x81\x62\x1b\x62\x7c\x95\xa6\x1f\xf7\x05\x1d"
+"\x35\xc0\x5d\xef\xbc\xb7\x95\xa0\xb4\x1e\x0e\xf7\x8a\xf3\x15\x3f\xf7\xd5\xfb\x02\x06\x5d\x73\x79\x68\x69\xa0\x7c\xbe\x8a\x1f\xfb"
+"\x6f\x2c\x0a\xf8\x4c\x06\xc2\xa3\x9a\xaf\xad\x77\x9c\x62\x8d\x1f\xf7\x6e\x07\xbe\x8c\xa0\x9a\xae\x1a\xad\x73\x9d\x5c\x1e\xfb\x01"
+"\xfb\xd5\x3f\xf7\x6e\x06\xac\x8e\x9c\x9c\xaa\x1a\xad\x74\x9d\x60\x1e\x3d\x06\x61\x75\x79\x6a\x6b\x9c\x79\xac\x89\x1f\x0e\xf7\x7f"
+"\xf2\x15\x3f\xf7\xd6\xfb\x02\x72\x0a\xfb\x6e\x2c\x0a\xf8\x54\x60\x4a\x0a\xf7\x26\x29\xf7\x6e\x07\xbe\x8d\xa0\x9a\x6e\x1d\xfb\x02"
+"\xfb\xd6\x3f\xf7\x6f\x06\xad\x8f\x9b\x9b\xa9\x1a\xae\x75\x9d\x5f\xae\x1d\x6d\x9b\x7a\xad\x87\x1f\x0e\xf7\x87\xf7\xd5\x15\xfb\x6d"
+"\x81\x07\xeb\x0a\xf7\x3a\x06\xf7\x13\xcd\xb7\xdf\xb1\x7c\xae\x70\xa3\x1f\xa7\x6c\x59\x98\x3e\x1b\x62\xc2\xa2\x06\x4f\x1d\xfc\x04"
+"\xfb\x50\x06\x24\x0a\xdf\x07\xf7\x81\xfb\x6d\x15\xc6\xa2\x07\xe1\xa3\x85\x75\x77\x6b\x80\x51\x1f\x0e\xf7\x4c\xf7\xd5\x15\x9c\x06"
+"\x4f\x1d\xfb\x18\x06\x52\x1d\x92\xfb\x6d\x84\x06\xa3\x1d\xf7\x1e\x06\xf7\x0b\xce\xb9\xdd\xb2\x7b\xae\x70\xa3\x1f\xa6\x6b\x5c\x98"
+"\x44\x1b\x7b\x06\xfb\x36\x04\xc5\x95\x07\xce\xa3\x84\x76\x77\x6d\x81\x55\x1f\xf7\x85\xf7\x6d\x15\xfb\x6d\x86\x07\x6d\x74\x74\x6d"
+"\x6a\xa1\x79\xb4\x1f\xe0\x06\xba\xa3\x9c\xad\xaa\x79\x9d\x68\x8e\x1f\xf7\x6f\x07\xae\x90\x9d\x9c\xa9\x1a\xad\x73\x9c\x5c\x1e\x36"
+"\x06\x62\x75\x79\x6a\x6d\xa2\x74\xa9\x1f\x0e\xf7\x5f\xf7\xd5\x15\x9e\x06\xb9\xa4\x9d\xad\xad\x73\x9d\x5c\x1f\xfb\x1d\x29\x1d\x95"
+"\xfb\x6d\x81\x29\x1d\xf7\xa3\x06\xf7\x12\xcd\xb7\xde\xb1\x7b\xaf\x71\xa3\x1f\xa7\x6c\x59\x98\x3e\x1b\xfb\x25\x06\xfb\x36\x04\xc5"
+"\xf7\x13\x07\xe2\xa2\x85\x75\x78\x6b\x80\x51\x1f\x0e\xf7\x9f\xf7\x9d\x15\x5f\x74\x7a\x69\x68\xa2\x79\xb7\x1f\xf7\x36\x06\x59\x79"
+"\x57\x74\x2f\x1b\x4a\x5d\x97\xa4\x6c\x1f\x98\x7b\x81\x8f\x7d\x1b\x6f\x72\x73\x6f\x4e\xf0\x5f\xf7\x1f\xe0\xc7\x9b\xad\xb9\x1f\xc0"
+"\xb3\xa7\xc5\xcf\x1a\xf7\x1f\x21\xec\xfb\x2d\x57\x60\x82\x78\x61\x1e\x96\x7d\x81\x8f\x7c\x1b\x69\x79\x73\x60\x1f\x4f\x07\x5e\x9e"
+"\x74\xaf\xa8\x9c\x99\xa9\x92\x1e\x8e\x98\x8c\x8e\x8f\x91\x08\xa3\x9a\xb3\x9a\xc0\x1b\xd1\xb5\x76\x5b\xa6\x1f\x0e\xf7\x6e\xf7\x38"
+"\x15\x20\x97\xda\x43\xf3\x1b\xf7\x0e\xd7\xe2\xf7\x1f\xf7\x1f\x3f\xe2\xfb\x0d\x23\x42\x4b\x22\x7a\x1f\x56\xc1\x90\x06\xb9\xa3\x9c"
+"\xad\xad\x73\x9d\x5d\x1f\x2c\x5c\x0a\xf7\x07\x27\x1d\x86\xc7\x06\xf7\x8a\xf7\x3e\x15\xc1\xaf\x5a\x42\x42\x66\x59\x56\x56\x66\xbd"
+"\xd4\xd3\xb0\xbd\xc0\x1f\x0e\xf8\x1a\xf3\x15\x78\x06\x52\x1d\xf7\x1d\x39\x1d\x81\xf7\x6d\x95\x39\x1d\xfb\xa3\x06\xfb\x13\x4a\x5f"
+"\x36\x48\xb3\x5e\xd6\x79\x1f\x72\x75\x7e\x7e\x75\x70\x08\x56\x8a\x76\x7c\x67\x70\x0a\xc6\x06\x8f\x91\xc4\xd5\xc9\xbd\xd2\xa8\x19"
+"\xb3\x06\xf7\x36\x04\x51\xfb\x12\x07\x34\x73\x91\xa0\x9f\xaa\x96\xc6\x1f\x0e\xf7\x30\xf7\xd5\x15\xfb\x6d\x57\x07\x46\x0a\x56\xf7"
+"\x6d\xf7\xca\xf7\x50\x06\xb7\x56\x1d\x5f\x1e\x37\xfb\xfe\x9f\x1d\x0e\xeb\xf2\x15\x89\x06\x41\x0a\xbf\xc3\x9f\x95\x9c\x1d\x80\x6c"
+"\x1a\xfb\xa9\x07\x5c\x8c\x68\x6d\x53\x1b\xfb\x00\x68\x1d\xf7\x03\x06\xf7\x05\x8c\xdd\xd8\xf2\x1a\xf7\xb6\x07\xec\x42\xcc\xfb\x00"
+"\x59\x5c\x78\x69\x67\x1e\xde\xf7\x01\x07\xaa\x9b\x98\xa4\xa4\x7b\x98\x6c\x1f\xfb\x01\x06\xbc\x89\x7c\x9f\x66\x1b\x66\x7b\x77\x5a"
+"\x8a\x1f\x5f\x06\x6c\x7b\x7e\x72\x72\x9b\x7e\xaa\x1f\xb7\x06\x0e\x8f\x0a\xc7\xf8\x61\xf7\x03\x1d\x9b\x7b\x9f\x94\x95\x8f\x95\x97"
+"\x1e\x0e\xf7\x47\xf7\x9d\x15\xbb\xa6\xb5\xa0\xd1\x1b\xcd\xb3\x78\x66\x94\x1f\x67\x94\x99\x7e\xaa\x1b\xaf\x9e\xa2\xb8\x1f\xc7\x07"
+"\xb6\x79\xa3\x69\x7c\x81\x87\x80\x7d\x1e\x9e\x60\x61\x94\x57\x1b\xfb\x2d\x21\x2a\xfb\x1f\x47\xa7\x51\xc0\x63\x1f\x69\xb9\xc7\x7b"
+"\xe0\x1b\xf7\x1f\xf0\xb7\xc8\xa7\x72\xa3\x6f\x7d\x81\x87\x7e\x7b\x1f\x72\x6c\x5e\x7f\x4a\x1b\x2e\x57\xa2\xbd\x79\x1f\xf7\x36\x06"
+"\xb7\xa2\x9d\xae\xad\x74\x9c\x5f\x1f\x0e\x42\x1d\x0e\xcd\x1d\x7d\x66\x1d\x0e\xf7\xf5\xf8\x3d\x15\xfb\x4a\x68\x1d\xd5\xfb\x6d\xfb"
+"\x05\x06\x5e\x72\x79\x69\x69\xa4\x79\xb8\x1f\xf7\xe2\x06\xb8\xa4\x9d\xad\xad\x72\x9d\x5e\x1f\xfb\x05\x06\xfb\x58\xf8\x81\x43\x0a"
+"\xc8\x1d\xf7\x8c\xf7\x59\x1d\xf8\x2f\xf7\xd5\x15\xb6\x8c\xa1\x9d\xac\x28\x1d\xfb\x7e\x06\x4c\x74\x7d\x66\x68\xa3\x79\xbb\x1f\x8e"
+"\x06\x8f\xfb\x38\x06\x8a\x58\x83\x80\x65\x8a\x08\x86\x06\xb3\x88\x7a\x9e\x6b\x1b\x69\x7d\x76\x55\x1f\x5c\x07\x7d\x8f\x82\x94\x87"
+"\x1e\x82\x9f\xae\x84\xa9\x1b\xed\xc4\xc9\xf6\x1f\xf7\x38\xc1\xfb\x6e\x07\x6a\x85\x7a\x7a\x6f\x1a\x69\xa5\x79\xbc\x1e\xb5\x06\xda"
+"\xb4\x92\x9d\xa9\x1f\xb2\xa3\xa3\xb3\xb7\x1a\xb6\x76\xb3\x67\xa4\x1e\x6f\x9e\x69\x94\x56\x8c\x08\x23\x04\xb9\x89\x99\x83\x75\x1a"
+"\x77\x79\x80\x68\x1e\x84\x06\x0e\xf8\x17\xf7\xa0\x15\xc1\x30\x0a\x3f\x06\x61\x74\x79\x6b\x6d\x9f\x77\xaa\x88\x1f\x55\xfb\x08\xc1"
+"\x07\xaa\x8d\xa0\xa0\xa9\x1a\xab\x74\x9d\x60\x1e\x3f\x5c\x0a\xeb\x06\xb6\xa2\x9d\xac\xa9\x77\x9f\x6b\x8e\x1f\xc7\xf7\x08\x4f\x07"
+"\x6c\x87\x77\x77\x6e\x1a\x6a\xa2\x79\xb5\x1e\xf7\x17\x06\xf7\x13\xcc\xb7\xe1\xe6\x47\xba\xfb\x17\x1f\x6d\xfb\x38\x15\xc7\x96\x07"
+"\xe3\xa1\x85\x74\x77\x6c\x80\x50\x1f\x0e\xf7\x60\xf8\x67\x15\xf7\x01\x06\xed\x1d\xfc\x00\x52\x0a\x0e\xba\x1d\x52\xf7\x9a\xf7\x03"
+"\x1d\x9c\x7b\x9d\x95\x95\x57\x1d\xf7\x68\xf7\xd7\x15\xab\x92\x99\x9b\xa7\x1a\xb0\x74\x99\x4b\x1e\x4c\x06\x4b\x74\x7d\x66\x68\xa0"
+"\x7b\xba\x8a\x1f\xf7\x30\xfb\xa0\x79\x6c\x7b\x70\x7a\x7a\x81\x8d\x19\x8a\x06\x8a\x06\xc6\x89\x7f\x9d\x63\x1b\x62\x7d\x77\x4f\x1f"
+"\x59\x07\x7a\x8f\x80\x94\x87\x1e\x80\xa3\xb6\x81\xa7\x1b\xc2\xba\xac\xcd\xb2\x1f\xf7\x5f\xf7\xf0\x05\xb9\x8c\x9f\x9b\xae\x1a\xb0"
+"\x73\x99\x4c\x1e\x4e\x06\x4c\x74\x7d\x66\x6f\x99\x7b\xab\x84\x1f\x2b\xfb\x37\x05\xfb\x15\xf8\x62\x15\x74\x7c\x7c\x75\x4d\xd5\x55"
+"\xe1\xe2\xad\x1d\x78\x82\x83\x74\x83\x1f\x6a\x81\x6c\x79\x5e\xea\x0a\xf7\x5b\xf3\x15\xf7\xf8\x95\x07\xba\xa4\x9d\xf7\x4b\x1d\x9e"
+"\x7d\xc0\x89\x1f\xfb\xfa\xa0\x0a\xf7\xfa\x07\xc0\x8d\x9e\x99\x6e\x1d\xfb\x0c\x39\x0a\x95\xfb\xf8\x06\x0e\x82\x0a\xa8\xf7\x96\x15"
+"\x62\x07\xfb\x1a\xf7\x03\x29\xf7\x2c\xf7\x29\xf7\x05\xee\xf7\x15\xf7\x18\xfb\x02\xe7\xfb\x32\x43\x25\x7a\x78\x5d\x1e\x72\x80\x7f"
+"\x7c\x76\x1a\x6e\xa1\x74\xa8\x96\x96\x8d\x8e\x98\x1e\xa2\xe8\xa2\x8f\xb8\x1b\xdf\xbd\x73\x57\xa4\x1f\x89\x2f\x15\x59\x76\x57\x6f"
+"\x46\x1b\x46\x58\xa7\xbd\x75\x1f\x0e\xf2\xcf\x15\x85\x80\x87\x80\x82\x1a\x74\xa2\x77\xa4\x9d\x9a\x94\x9d\x96\x1e\xee\xf7\x30\x05"
+"\x89\x7c\x8a\x84\x81\x1a\x32\xcc\x4b\xe7\xe5\xcd\xcb\xe3\xe3\x49\xcb\x31\x64\x71\x83\x75\x6a\x1e\xf7\x2b\xf7\x84\x05\x92\x95\x8e"
+"\x95\x96\x1a\xa2\x75\x9f\x72\x78\x7d\x82\x79\x80\x1e\xfb\x08\xfb\x4b\x05\xa1\x85\x7c\x96\x76\x1b\x7f\x86\x89\x7e\x78\x1f\x7d\x78"
+"\x77\x84\x7a\x1b\x67\x71\xa8\xb5\xb4\xa6\xa7\xb2\xa5\x98\x82\x77\x8f\x1f\x75\x8e\x9c\x7d\xa1\x1b\x8c\x8d\x8b\x8c\x8e\x1f\x8d\x06"
+"\xa0\x8e\x9a\x9a\x9f\x1a\x8a\x95\x05\x87\x9d\x8b\x8b\x91\x1a\x90\x8c\x93\x8d\x92\x1e\x8d\x93\x8b\x8c\x8f\x1a\x9f\x7d\x9b\x76\x8e"
+"\x1e\x81\x8d\x05\x8c\x85\x86\x8c\x89\x1b\x84\x83\x88\x87\x85\x1f\x88\x86\x8b\x8b\x8a\x1b\x8a\x87\x8c\x8e\x82\x1f\x8d\x82\x7d\x8d"
+"\x7f\x1b\x35\x49\x49\x35\x35\xcc\x49\xe1\xae\xaa\x95\xa1\xb0\x1f\xf7\x43\x24\x15\xb4\xa5\x6f\x61\x61\x70\x6f\x64\x64\x71\xa7\xb5"
+"\xb5\xa5\xa7\xb1\x1f\x0e\xf7\x50\xf7\x22\x15\x8d\x45\x8e\x76\x95\x76\x08\x72\x98\x9f\x7d\xa3\x1b\xa8\xa3\x99\xab\xa8\x1f\x9d\x9f"
+"\x9b\xa0\x96\x9e\x90\x94\x18\x8d\x8e\x8c\x8f\x8f\x1a\x92\x85\x90\x84\x84\x86\x87\x82\x84\x1e\x80\x7b\x05\x6c\x75\x7a\x7d\x7c\x1b"
+"\x79\x84\x9e\xc0\x97\x8b\xa4\x8c\xa0\x1f\x9e\x07\xaf\x07\xf7\x1e\xf7\x44\xbe\xec\xe1\x1a\xc1\x6e\xae\x5f\x5f\x5a\x6a\x52\x64\x1e"
+"\x60\x4b\x74\xfb\x01\x88\xfb\x3d\x8a\x4e\x18\x74\x6f\x86\x85\x79\x76\x88\x88\x19\x76\x75\x05\x85\x85\x89\x86\x86\x1a\x87\x07\x84"
+"\x8f\x8e\x88\x91\x1b\x96\x8b\x8b\xb9\xb7\x1f\xec\xf7\x3d\x15\x8d\xb1\x05\xf7\x6d\x95\x9e\xd0\xbc\x1b\xa2\x9a\x76\x6b\x44\x64\x2f"
+"\x45\x2b\x1f\x0e\xf8\x25\xf8\x61\x15\xad\x91\x9c\x9c\xa8\x1a\xb0\x74\x99\x4b\x1e\x52\x06\x4c\x73\x7d\x67\x68\xa2\x7a\xbc\x8a\x1f"
+"\xfb\x51\x07\x2e\xf7\x7a\x73\xc3\x85\x90\x5f\x8c\x19\x5d\x06\x62\x73\x78\x6a\x70\x9c\x79\xab\x85\x1f\xfb\xfa\x07\x6a\x84\x7b\x7b"
+"\x6f\x1a\x65\xa2\x7d\xcb\x1e\xc2\x06\xcc\xa2\x99\xb1\xae\x76\x9a\x57\x8d\x1f\xf7\x57\x07\xe6\xfb\x75\x05\x4f\xa3\x9a\x7d\xad\x1b"
+"\xa3\x9f\x96\x9e\x97\x1f\x92\x96\x8d\x99\xb7\x1a\xa8\xf7\x5f\x15\x55\xa8\x6f\xc1\xc1\xa7\xa7\xc1\x1e\xf1\x07\xbb\x6b\xa9\x59\x59"
+"\x6a\x6c\x5c\x1e\xd8\x85\x15\x92\x8c\x8f\x8e\x90\x8d\x88\x83\x1e\x2d\x07\x83\x8a\x88\x87\x87\x89\x8e\x93\x1e\x84\xfb\x00\x15\x57"
+"\x76\x7d\x68\x6e\xa4\x7b\xb8\x1f\xa5\x06\xb6\xa4\x9b\xa8\xae\x77\x99\x58\x1f\x0e\xf8\x5a\xf7\xe2\x15\xd0\x61\x4e\xad\x3d\x1b\xfb"
+"\x17\x23\x27\xfb\x12\xfb\x15\xf3\x2a\xf7\x1f\xdf\xbe\xa8\xcc\xaa\x1f\x9f\x4b\x05\x7a\x91\x9c\x80\xa0\x1b\xa9\x9e\x9d\xa6\x93\x8a"
+"\x8f\x8a\x90\x1f\x55\xf7\x37\xd7\xf7\x2d\x05\x8f\x93\x8d\x94\x94\x1a\xa2\x73\x9f\x6e\x77\x82\x85\x76\x80\x1e\x32\xfb\x58\x15\x33"
+"\x6f\x66\x68\x4a\x1b\x43\x53\xc1\xd0\xd0\xc3\xc1\xd3\xac\xa9\x7f\x75\xa1\x1f\x9e\x77\x95\x76\x9b\x5b\x08\x0e\xf8\xa0\xf7\xe3\x15"
+"\x96\xa7\x91\x9f\x94\x1a\xa5\x76\x9e\x6c\x6c\x81\x81\x56\x76\x1e\x7a\x5f\x05\xda\x52\x5f\xa7\x45\x1b\xfb\x06\x35\x2a\xfb\x15\xfb"
+"\x13\xe4\x28\xf7\x08\xce\xbf\xa9\xce\xba\x1f\xaa\x39\x05\xcb\x06\xb9\xa4\x9d\xad\xab\x78\x9c\x63\x8d\x1f\x89\x92\x88\x92\x85\x9a"
+"\x83\xa2\x7d\xad\x82\x9e\x08\xfb\x09\x87\x15\x37\x62\x6b\x6c\x60\x1b\x56\x61\xc1\xd1\xcf\xb2\xbf\xbf\xb3\xad\x66\x2f\xb9\x1f\xa7"
+"\xf7\xfd\xf7\x1a\x1d\x80\x84\x80\xf7\x4c\x1d\x23\x0a\xfb\x63\xf8\x40\x37\x1d\xf7\x4f\xf7\x98\x15\xf7\x51\xfb\xfe\x05\x7c\x93\x95"
+"\x83\x95\x1b\x92\x8e\x8e\x93\x90\x8a\x8f\x87\x97\x1f\xfb\x24\xf7\xf5\xf7\x24\xf7\xf6\x05\x8e\x92\x8d\x94\x92\x1a\x91\x88\x8e\x84"
+"\x81\x86\x87\x78\x7e\x1e\x0e\xf8\x32\xf7\x98\x15\xfb\x51\xf7\xff\x05\x9d\x7f\x85\x90\x81\x1b\x84\x88\x88\x85\x84\x8d\x82\x8e\x84"
+"\x1f\xf7\x24\xfb\xf6\xfb\x24\xfb\xf5\x05\x87\x7f\x8a\x87\x86\x1a\x83\x8e\x88\x92\x95\x95\x93\x9a\x93\x1e\x0e\xf8\x81\xf2\x15\xf7"
+"\x51\x07\xe6\x40\xc1\xfb\x12\x58\x42\x7f\x7b\x5a\x1e\x75\x83\x80\x7c\x75\x1a\x6e\xa2\x74\xa8\x95\x99\x8d\x8f\x9d\x1e\x96\xbb\xad"
+"\x90\xad\x1b\xc8\xa6\x7e\x6e\x1f\x79\x07\x91\x68\x6a\x8e\x6a\x1b\x32\x46\x72\x5a\x5c\x1f\x72\x71\x7c\x68\x6c\x1a\x42\xde\x50\xf2"
+"\xc2\xc5\x97\xa1\xba\x1e\x78\xbb\x07\x5b\x1d\xa2\xa0\xa6\xb4\xa9\x1f\xc7\xb8\x90\x90\xa5\x1a\x9b\x83\x9a\x7d\x96\x1e\x92\x20\x0a"
+"\xfb\x0c\xab\x44\x0a\x0e\xf8\x76\xf8\x4b\x15\x74\x80\x84\x6e\x74\x1f\x6f\x75\x7f\x7f\xf7\x1e\x1d\x6b\x80\x77\xf7\x10\x1d\x57\xc7"
+"\xb4\x76\xb4\x1b\xb5\xab\x9d\xb6\xb1\x1f\xae\xb2\x93\x99\xa0\x1a\xaa\x71\xa4\x6b\x1e\x8d\xfb\x4a\x15\x75\x7f\x84\x6f\x74\x1f\x6e"
+"\x75\x7f\x80\x83\x1b\x85\x7f\x92\x98\x7c\x1f\xc8\x44\x70\x99\x5e\x1b\x5f\x69\x79\x60\x63\x1f\x6d\x6a\x80\x78\x77\x1a\x6d\xa6\x71"
+"\xab\xa0\x95\x91\xab\xa6\x1e\xa7\xa3\x95\x94\x92\x1b\x91\x97\x83\x7b\x9e\x1f\x57\xc8\xb2\x77\xb5\x1b\xb5\xab\x9c\xb7\xb1\x1f\xae"
+"\xb2\x93\x99\xa0\x1a\xa9\x71\xa4\x6b\x1e\x0e\x23\x0a\x2e\xf8\xa1\x95\x1d\x6a\x6d\x70\x67\x67\x6d\xa6\xac\xab\xa9\xa6\xaf\x1f\xbf"
+"\xf7\x30\x15\x9d\x99\x91\x94\x99\xf3\x1d\xf7\x35\xf7\x9e\x15\xa9\xb8\x9a\xaa\x9a\x1a\x93\x83\x91\x82\x84\x87\x88\x7e\x80\x1e\x6c"
+"\x68\x6e\x74\x4f\x69\x08\x78\x81\x87\x87\x84\x1a\x85\x8f\x85\x92\x87\x1e\x91\x88\x8c\x8a\x8f\x89\x91\x88\x19\x99\x82\xbc\x6e\xa3"
+"\x77\xad\x64\x19\x84\x91\x8f\x89\x92\x1b\x94\x92\x92\x93\x9a\x76\xb5\x73\xab\x1f\xf7\xb3\xcf\x1d\x0e\xf7\x9b\xf8\xae\x15\xfc\x34"
+"\x07\xa2\x6c\x5e\xa1\x7c\x1b\x83\x84\x84\x82\x84\x8d\x87\x93\x85\x1f\xb8\x65\x9a\x79\xb8\x41\x08\x7e\x92\x8e\x88\x94\x1b\x92\x8f"
+"\x90\x9c\x95\x1f\xab\xc3\xa5\xab\xaf\xa9\x08\x98\x96\x8e\x90\x91\x1a\x94\x85\x93\x83\x7c\x6b\x7c\x6e\x5d\x1e\xf8\x33\x07\x0e\xf8"
+"\xdd\xf7\x9f\x15\xfc\x3c\x06\xa3\xab\xa0\xb5\x9a\x1a\x93\x84\x92\x82\x84\x87\x89\x84\x85\x1e\x64\x5e\x78\x7c\x41\x60\x08\x7d\x83"
+"\x88\x88\x83\x1a\x84\x8f\x87\x9e\x81\x1e\xc6\x6a\xaa\x73\xa9\x68\x08\x7f\x95\x90\x87\x91\x1b\x95\x93\x91\x93\x9a\x7b\xab\x6e\xb7"
+"\x1f\xf8\x3c\x06\x0e\xa3\xf7\x6b\x15\xf8\x3c\xcf\x1d\xfc\x3c\x06\x0e\xf7\xd0\x7f\x15\xf8\x34\x07\x75\xaa\xb8\x75\xf7\x63\x1d\x89"
+"\x8f\x83\x91\x1f\x63\xac\x79\xa0\x6c\xbd\x88\x8f\x88\x8f\x88\x91\x88\x90\x88\x90\x8a\x8c\x08\x98\x84\x88\x8e\x82\x1b\x84\x87\x87"
+"\x79\x81\x1f\x69\x51\x74\x6e\x66\x6c\x08\x7e\x81\x88\x86\x85\x1a\x81\x91\x84\x93\x9a\xa9\x99\xa9\xbb\x1e\xfc\x34\x07\x0e\xf7\xa6"
+"\xf7\x02\xda\x0a\x6e\xa5\x6b\xf7\x58\x1d\x93\x8f\x1f\xb7\xd4\x9e\xa4\xb8\xb0\x08\x92\x91\x8e\x8f\x92\x1a\x94\x84\x92\x83\x7c\x5f"
+"\x75\x74\x6b\x1e\xf7\xae\x07\x74\xab\xb7\x76\xd3\x1d\xab\x9a\xa8\xb9\x1e\x0e\xf7\x57\x63\x15\x5f\xf7\x6a\xb7\x07\xfb\x18\xf7\x51"
+"\xda\x0a\x70\xa5\x6a\xf7\x58\x1d\x92\x8f\x1f\xb6\xd5\x9f\xa3\xb8\xb0\x08\x92\x91\x8e\x8f\x92\x1a\x94\x84\x92\x83\x7c\x5e\x75\x75"
+"\x6c\x1e\xf7\xad\x07\x75\xaa\xb8\x75\xd3\x1d\xac\x9a\xa8\xb8\x1e\x0e\xf7\x6f\x99\x15\x76\xad\xa8\x83\xb5\x1b\xf7\x03\xdf\xdf\xf7"
+"\x03\xdd\x6a\xbc\x3f\xa9\x1f\xb1\xaa\x9c\xad\xb9\x1a\xe3\x43\xca\x27\x4c\x54\x72\x5e\x6c\x1e\x73\x6a\x82\x5b\x35\x1a\xfc\xc2\xf7"
+"\x00\x07\xa8\xf8\x70\x15\x96\x06\xc4\x8a\x94\x8a\xa5\x81\x08\xb8\x7b\x9a\x76\x5a\x1a\x51\x6a\x64\x58\x5e\x68\x9c\xaf\x6f\x1e\xf7"
+"\x88\x07\xe2\x9c\xa5\xc5\xb3\xa2\x77\x69\x58\x63\x6c\x46\x89\x1e\x0e\x3d\x0a\x32\xf7\xbf\x27\x0a\x3d\x0a\xfb\x73\xf7\xa3\x45\x1d"
+"\x6c\x0a\x64\x5b\x55\x0a\xfb\x87\xf7\xad\x2e\x0a\x3d\x0a\xfb\x74\xf7\xe3\x36\x0a\x0e\xf7\xbf\xf7\x74\x15\xfb\x16\xf7\x5d\x05\x48"
+"\x29\x1d\x91\x06\xf7\x12\xfb\x57\xfb\x2f\xfb\x84\x05\x7f\x78\x86\x7f\x7f\x1a\x71\xa5\x72\xa8\x9e\x9d\x98\xa3\x9b\x1e\xf7\x14\xf7"
+"\x5a\xf7\x28\xfb\x73\x05\xce\x06\xba\xa3\x9d\xad\xad\x72\x9d\x5d\x1f\x84\x06\xfb\x24\xf7\x70\xf7\x22\xf7\x6b\x05\x97\x9d\x90\x97"
+"\x98\x1a\xa6\x71\xa3\x6e\x78\x79\x7e\x73\x7c\x1e\x0e\xf7\xad\xf8\x88\x15\xfb\x1e\xfb\x07\xfb\x03\xfb\x1a\xfb\x22\xf7\x06\xfb\x05"
+"\xf7\x24\xf7\x1f\xf7\x05\xf7\x03\xf7\x1c\xf7\x1f\xfb\x08\xf7\x06\xfb\x21\x1f\x8f\xfb\xbe\x15\xf5\x23\x05\x72\x67\x68\x80\x61\x1b"
+"\x60\x6e\x94\xa3\x6c\x1f\x5d\xb8\x15\x70\xaf\x82\xa6\xb4\x1a\xb6\x96\xaf\xa3\xac\x1e\xf7\x02\xfb\x00\x05\xe8\x16\xf7\x02\xf6\x05"
+"\xa1\x6d\x94\x72\x66\x1a\x5a\x80\x66\x73\x6a\x1e\xfb\x2c\xf7\x29\x15\xfb\x03\xf7\x00\x05\xa3\xac\xae\x96\xb5\x1b\xb7\xaa\x81\x72"
+"\xae\x1f\x0e\xf8\x82\x16\x9b\x07\xfb\x15\x9e\x50\xce\xf7\x18\x1a\x9c\x6e\x91\x81\x94\x80\x08\x68\xa9\xba\x73\xb5\x1b\xd1\xc2\xc4"
+"\xd4\xd1\x59\xc2\x4c\x78\x80\x88\x7e\x70\x1f\x89\x8a\x82\x86\x86\x89\x08\xa1\xaa\x93\xa3\xa8\x1a\xd0\x53\xc1\x44\x44\x54\x55\x45"
+"\x70\x90\x7d\xa5\x61\x1e\x9c\x68\x78\x91\x76\x1b\x4f\x58\x52\x46\x43\xc3\x53\xd2\xca\xc0\xb1\xd2\xad\x1f\x8c\x78\x05\x85\x07\x8a"
+"\x53\x6e\x4c\x62\x6a\x72\x78\x79\x84\x42\x7c\x08\x7b\x07\x0e\xf8\xab\xf8\x7d\x15\xf7\x06\xfb\x0c\x07\xdb\x1d\x21\x06\xa8\x64\x59"
+"\x9a\x52\x1b\x3e\x52\x77\x60\x5c\x1f\x5c\x60\x73\x53\x4c\x1a\x4b\xa3\x53\xba\x60\x1e\x60\xba\xc4\x77\xd7\x1b\xc5\xb3\x97\xaa\xbc"
+"\x1f\x6d\xf7\x0c\x45\x0a\x7f\xf7\xbf\x06\x89\x91\x91\x8a\x8e\x1b\x9a\x96\x93\x9e\x98\x1f\xdd\xf7\x0c\x05\x95\x9a\x8f\x93\xf7\x56"
+"\x1d\xfb\xd6\xfb\x92\x9b\x0a\xf8\xab\xf8\x7f\x15\xf7\x04\xfb\x0c\x07\xdb\x1d\x24\x06\xa6\x5d\x5e\x98\x54\x1b\xfb\x23\xfb\x01\x25"
+"\xfb\x18\xfb\x15\xf3\x32\xf7\x2a\xc0\xb8\x96\xa3\xb9\x1f\x77\xf7\x0c\x45\x0a\x7f\xf7\xb1\x97\x06\xba\xa2\x9d\xad\x9c\x83\x9a\x7d"
+"\x95\x1f\x92\x20\x0a\xfb\x9d\xfb\x31\x15\xdc\xcb\x52\x41\x43\x54\x60\x30\x33\x53\xb7\xd1\xd6\xca\xc4\xdd\x1f\x0e\xf7\x87\xf8\x41"
+"\x15\x6b\x84\x78\x84\x72\x7f\x08\x3d\x65\x58\x3f\x3c\x1a\xfb\x12\xf7\x07\x28\xf7\x27\xf7\x28\xf7\x06\xee\xf7\x14\xda\x64\xc3\x27"
+"\xce\x1e\xfb\x1f\xe8\x7d\x97\xa0\x1a\xa0\x9e\x93\xbc\x1e\xd9\x06\xae\x9d\x9b\xa8\xa6\x79\x99\x68\x1f\x4d\x06\x5d\x5f\x85\x81\x72"
+"\x1f\x5d\x79\x6b\x60\x60\x1a\x6b\x9b\x74\xbb\x66\x1e\xd4\x27\x15\xe4\xce\x54\x41\x44\x48\x54\x34\x34\x48\xc2\xd2\xd3\xce\xc4\xe0"
+"\x1f\x0e\xf6\xf7\xa2\x15\xe1\x20\xdc\xfb\x09\xaf\x47\xba\xe0\xe3\xf7\x0f\xdb\xeb\x4d\xd1\xfb\x10\xf7\x44\x6e\xc4\x60\x3a\x53\x3c"
+"\xfb\x06\xfb\x23\x08\x0e\xf8\x17\xf8\xe1\x6a\x0a\x78\x7b\x7f\x83\x7a\x80\x1e\x44\x6b\x0a\x9b\x7c\x9f\x99\x97\x93\x9c\x96\x1e\xf7"
+"\x0e\xdf\x15\x9e\x1d\xfb\xaa\x4a\x1d\x35\x1d\xfb\xa6\xf8\x2c\x3b\x1d\x35\x1d\xfb\x19\xf7\xcc\x45\x1d\x35\x1d\xfb\x1a\xf8\x0c\x36"
+"\x0a\x0e\xf8\xd9\xf7\x7b\x15\xbe\xfc\x8d\x07\x8f\xf7\x10\xcd\xc7\xf7\x15\x88\x08\xf7\xc6\xbe\xfb\xba\xf2\x0a\x49\x99\x50\xa4\x65"
+"\x1e\xa2\x68\xae\x6c\xac\x7e\x08\x7c\xaf\xa7\x87\xd4\x1b\xf7\xba\xbe\xfb\xc6\x06\xfb\x14\x88\x4a\xc5\x85\xf7\x0c\x08\x90\x07\x0e"
+"\x35\x1d\xfb\x94\xf7\xf1\x37\x1d\xf7\x5b\xf7\xa3\x15\xbd\xbd\xa4\x98\xba\x1b\xc4\xa7\x76\x5f\x1f\xfb\xb0\x07\x8a\x5a\x6b\x6f\x52"
+"\x8a\x08\x5f\x5e\x0a\x95\x97\x89\xa5\x1b\xba\x06\xf7\x07\x8c\xdd\xd8\x89\xf2\x08\xf7\xb4\xf7\x5a\x1d\x5d\x1b\x55\x6a\x7e\x63\x5d"
+"\x1f\xb4\x29\x07\xcc\x1d\x06\x0e\xf7\x21\x1d\xfb\x18\xf7\x03\x2f\xf7\x33\x97\x8d\x8b\x8c\x9a\x1e\x69\x6e\x7c\x6e\x65\x8a\x0a\xb3"
+"\xc3\xbb\xe4\xad\x1f\xab\x98\x98\x99\xa2\x1a\xa8\x75\xa2\x6e\x80\x80\x89\x88\x7e\x1e\x74\x31\x71\x87\x5d\x1b\x38\x59\x5e\x1d\x0e"
+"\xf8\x1c\xf7\xa2\x15\x88\x76\x80\x8b\x75\x1b\x51\x60\x9e\xa3\x9e\xa9\x97\xb6\x9c\xa6\x88\x88\x9d\x1f\x87\xa2\x8b\x8b\x94\x1b\xa3"
+"\x9e\x9f\xa4\x9e\x81\x99\x79\x93\x1f\x96\x71\x5a\x94\x65\x1b\x22\x42\x59\x42\x6a\x97\x7a\xb9\x66\x1f\x5b\x72\x6f\x64\x5e\x1a\x3e"
+"\xdc\x53\xf7\x05\xb8\xcb\x98\x9a\xaa\x1e\x9d\x95\x93\x98\xa1\x1a\xa4\x79\xa0\x74\x84\x81\x8a\x89\x81\x1e\x81\x5d\x78\x88\x6e\x1b"
+"\x58\x64\x9d\xa2\xa6\xbe\xa0\xcf\x9e\x9b\x8a\x89\x9f\x1f\x0e\xf8\x14\xf7\xa1\x15\x57\x06\x43\x61\x98\xa2\x9b\xa7\x98\xb1\xbe\xb0"
+"\x7a\x64\xad\x1f\x78\x9c\x98\x84\x9c\x1b\xa9\xa6\xa6\xa6\x88\x1f\x8e\x07\x89\xb7\x8c\xa3\x05\x8e\x07\xab\x8e\x74\xa4\x6b\x1b\x75"
+"\x7d\x84\x78\x7e\x1f\x9d\x66\x68\x93\x5f\x1b\x25\x3e\x54\x42\x6b\x9a\x72\xab\x72\x1f\x66\x70\x78\x69\x63\x1a\x64\x9e\x69\xae\x70"
+"\x1e\x6f\xb1\xbb\x7e\xce\x1b\xbc\xb7\x92\x99\xb6\x1f\xb4\x99\xa1\x9f\xa3\x1a\xa7\x70\xa2\x6b\x81\x7f\x89\x87\x7e\x1e\x7c\x5c\x6e"
+"\x86\x67\x1b\x58\x62\x9c\x9f\xa3\xbe\x9c\xd4\x1f\xbe\x06\x9c\xf8\x22\x15\x9b\x97\x91\x96\x97\x1a\x9d\x7a\x9b\x78\x82\x80\x53\x1d"
+"\x7d\x80\x84\x7f\xf0\x0a\xf7\x00\xf7\xdb\x15\x70\x83\xf7\x38\x1d\x84\x96\x98\x88\xa5\x1b\xf8\x14\x06\xa2\x98\x8d\x91\x95\x37\x0a"
+"\xfc\x14\xfb\x42\x15\x96\x1d\xf8\x14\x06\xa2\x99\x8d\x91\x94\x37\x0a\xfc\x14\xf7\xef\x15\x96\x1d\xf8\x14\x06\xa2\x98\x8d\x91\x95"
+"\x37\x0a\x0e\xf8\x71\xf7\x54\x15\x8a\xcf\x87\xa8\x7d\xaa\x08\xcc\x6e\x47\xb2\x35\x1b\xfb\x14\x3b\x37\xfb\x1a\xfb\x1a\xd8\x3c\xf7"
+"\x15\xeb\xce\xb4\xd7\xa5\x1f\x8c\x8e\x8d\x8f\x05\x5e\x06\x8a\x89\x8b\x8a\x88\x87\x08\x5a\x72\x5a\x70\x4a\x1b\x41\x69\xa1\xc8\x77"
+"\x1f\xd6\x07\xf7\x96\xb4\x15\xfb\x94\xd3\x06\xc5\xa9\xab\xa0\xc8\x1b\xcb\xbd\x6d\x5a\x9e\x1f\x0e\x84\x0a\x0e\x84\x0a\xf7\x3a\xf7"
+"\x39\xcb\x0a\x7f\x84\x80\x7f\x1a\x79\x9c\x7b\x9e\x94\x96\x57\x1d\xf7\xb2\xf8\x8a\xd2\x1d\xf7\xbb\xf8\x98\xd2\x1d\x0e\xf8\x30\xf7"
+"\x9e\x15\xfb\x6b\xfb\xb9\x58\xf7\xed\xf8\xc6\xfb\xed\x58\xf7\xb9\xfb\x56\xfb\xb9\x58\x07\x0e\xf7\xd6\xf7\xac\x15\xf6\x94\xe0\xe9"
+"\xf7\x01\x1a\xf7\x0a\x2b\xea\xfb\x0a\xfb\x0a\x2c\x2c\xfb\x0a\xfb\x01\xe0\x2d\xf5\x82\x1e\x32\xfb\x29\x64\xf7\x29\xfb\x2c\xb7\xf7"
+"\x2c\xf7\x28\xb2\xfb\x28\x07\x72\xf8\x69\x15\xeb\xd8\x40\x2f\x2d\x3f\x3f\x2d\x2e\x3f\xd6\xe9\xe6\xd7\xd8\xe5\x1f\x0e\xf7\x17\xf7"
+"\x7c\x15\xb6\x88\x06\x71\x0a\x7b\x95\x9d\x82\xef\x1d\x81\x88\x80\x71\x1a\x89\x60\xf7\x13\xf7\x8c\x07\x76\x8d\x83\x91\x82\x1e\x7b"
+"\x94\x9d\x82\x9e\x1b\x9c\x9c\x93\x98\x95\x1f\x93\x95\x8d\x94\xa6\x1a\xee\xda\x1d\xf7\x49\xb2\x0a\x4d\x06\xf7\xe5\xf7\x9d\x15\x24"
+"\x8e\x1d\x81\x1e\x95\x84\x95\x89\xa3\x8a\x08\xfb\x35\x78\x07\x89\x1d\xf7\x58\x29\x0a\x45\x06\x8c\xd9\x05\xc8\xb3\xad\xad\xa1\x1b"
+"\x96\x96\x86\x80\x97\x1f\x7c\x9e\x93\x87\x9c\x1b\xa8\xa2\xa2\xa8\x9d\x82\x9a\x76\x9c\x1f\xa2\x6d\x67\x99\x6d\x1b\x67\x7d\x82\x54"
+"\x58\x1f\x0e\xf7\xbe\xf7\x1d\x15\xfb\x1d\xf7\xb4\x05\x46\x06\x5c\x73\x79\x69\x69\xa0\x7b\xbc\x8a\x1f\xf7\x2b\xfb\xd2\x05\x81\x5d"
+"\x87\x6f\x68\x1a\x48\xa3\x67\xb8\xb8\xa3\xaf\xce\xae\x87\xad\x81\xb3\x1e\xf7\x1e\xf7\xaf\x05\x97\x91\x93\x99\x8c\x1b\x8d\x8d\x8f"
+"\x8c\x93\x8c\x08\xb7\x92\x9d\x9b\xac\x1a\xad\x75\x9d\x60\x4f\x6b\x6f\x32\x60\x1e\x0e\x7a\x1d\xfb\x03\xf7\xdd\x3b\x1d\xbc\x1d\xa9"
+"\xf7\x87\x2e\x0a\x7a\x1d\xf7\x02\xf7\xb7\x15\x95\x98\x8f\x95\xf7\x56\x1d\x39\xfb\x0c\x05\x82\x7e\x87\x81\x81\x1a\x77\x9d\x7a\xa2"
+"\x9a\x96\x92\x9f\x98\x1e\x0e\xbc\x1d\xa8\xf7\xbd\x15\xa0\x1d\xa6\xac\xae\x6f\xa6\x67\x1f\x0e\xf8\xee\xf7\xf8\x15\xfc\x81\xf7\x65"
+"\x05\x90\x7e\x80\x8e\x82\x1b\x7b\x78\x7f\x7b\x83\x1f\x8a\x89\x05\x88\x85\x89\x84\x83\x1a\x75\x97\x7d\xa6\x7f\x1e\xf7\xb2\xfb\x0b"
+"\xfb\xb2\xfb\x0f\x05\x70\x7f\x7f\x7d\x75\x1a\x85\x8d\x83\x8e\x84\x1e\x8c\x8a\x05\x7a\x93\x9e\x7f\x9c\x1b\x93\x97\x8e\x90\x97\x1f"
+"\x7f\x5f\x15\x65\x74\x79\x6d\x6d\xa2\x79\xb1\x1f\xf8\x1e\x06\xb0\xa2\x9d\xa9\xa9\x74\x9d\x66\x1f\x0e\xf7\x5b\xf8\x67\x15\xf7\x01"
+"\x06\xed\x1d\xfc\x00\x52\x0a\x0e\xf7\x5b\xad\x0a\x52\x0a\xf1\xf7\xde\x26\x0a\xf7\xc0\x75\x15\x9b\xd2\xba\xdb\xe3\xf7\x02\x08\xd5"
+"\xe9\xa4\xbf\xc9\x1a\xca\x55\xc0\x4a\x4b\x5d\x62\x3f\x76\x1e\xd9\x72\x5f\xb2\x4b\x1b\x4a\x58\x56\x47\x57\x9b\x68\xcc\x33\x1f\xf7"
+"\x09\xfb\x30\xa9\x56\xa0\x3b\x08\x0e\xd1\x16\xf8\x61\xf7\xcb\x06\xfb\x7b\xf7\x92\xfb\x7a\xfb\x92\x05\xbd\xfb\x99\x15\xf7\x85\x07"
+"\xf7\x48\xf7\x5a\xf7\x49\xfb\x5a\x05\xfb\x85\x07\x0e\xcd\x1d\xfb\x56\xdd\x1d\xf7\x90\xf8\x3d\x15\xfb\x43\x06\x70\x49\x0a\x68\xa3"
+"\x7a\xba\x1e\xce\xfb\x6f\x47\x5b\x0a\xf7\x84\x06\xba\xa3\xaa\x1d\x6f\x1b\x4b\x06\x84\x66\x1d\xf7\x83\xfb\x40\x15\xfb\xe5\x07\x5c"
+"\x67\x6c\x55\x1e\xfb\x03\x5e\x0a\x96\x97\xb8\x0a\xfb\x6a\x07\xc5\x0a\xf7\x30\xf7\xac\x15\xfb\x13\xfb\x00\xf7\x13\x06\x0e\x25\x0a"
+"\xfb\x44\xf8\x8a\x37\x1d\xf7\xc0\xf7\x8a\x15\x52\xba\xc8\x69\xbf\x1b\xa7\xa5\x93\x98\x9f\x1f\xaa\xa1\xa2\xba\xb2\x1a\xd0\x50\xc3"
+"\x43\x54\x4f\x68\x54\x61\x1e\xc6\x59\x56\xa9\x55\x1b\x43\x50\x52\x44\x47\xc4\x52\xd1\xc7\xb8\xa4\xca\xc1\x1f\xae\xb2\x15\xb9\xab"
+"\xbd\xa9\xb6\x1b\xba\xaa\x6d\x5e\x5e\x6c\x6b\x61\x77\x76\x91\x97\x75\x1f\x7a\x94\x8b\x8b\x5c\xb9\x08\x47\x8f\x15\x5c\x66\x58\x6d"
+"\x61\x1b\x5e\x6e\xaa\xba\xb6\xaa\xa9\xb8\xb4\xb3\x74\x58\xba\x1f\x0e\xf7\xa7\x5c\x15\x44\x84\x6f\x7b\x84\x88\x8d\x99\x83\x1e\x9a"
+"\x80\x7c\x94\x7a\x1b\x71\x79\x7a\x72\x6d\xa5\x76\xb0\xa7\xa7\x98\xa3\xa2\x1f\xa9\xab\x93\xa9\xe4\x1a\xf8\x8a\x07\xca\x92\xa6\x9d"
+"\x90\x8f\x87\x82\x91\x1e\x77\x99\x95\x85\x9f\x1b\xa5\x9d\x9c\xa3\xa9\x72\xa0\x68\x73\x72\x82\x7c\x77\x1f\x66\x6e\x7d\x60\x32\x1a"
+"\x0e\xf7\xda\xf9\x0e\x15\x57\xfd\x35\x06\x4b\x83\x70\x7a\x86\x87\x8f\x94\x85\x1e\xa0\x7d\x81\x92\x77\x1b\x72\x78\x7a\x72\x6e\xa4"
+"\x75\xae\xa3\xa4\x94\x9a\x9f\x1f\xb0\xa8\x99\xb6\xe4\x1a\x0e\xf7\xa6\xfb\x4a\x15\xbf\xf9\x35\x06\xca\x93\xa6\x9c\x90\x8f\x87\x82"
+"\x91\x1e\x77\x99\x95\x85\x9f\x1b\xa5\x9d\x9c\xa3\xa9\x72\xa0\x68\x73\x72\x82\x7c\x77\x1f\x66\x6e\x7d\x60\x32\x1a\x0e\xf8\xad\xf7"
+"\x74\x15\xf7\x2a\x86\xae\x70\xb8\x1e\xce\x61\x3e\xb4\x35\x1b\x57\x5b\x7c\x70\x62\x1f\x58\x68\x6e\x5d\x81\x4d\x08\x86\x69\x8a\x75"
+"\x2a\x1a\xfb\x52\x07\x75\x94\x7f\x9c\x9b\x95\x98\xa0\x1e\xf7\x55\x07\x8c\xe3\x8b\x8b\x95\x1a\x8e\xbf\x92\xa9\x9a\xa1\x08\xbd\xad"
+"\xc8\xab\xcb\x1b\xc8\xc6\x6e\x5e\xab\x1f\xa6\x66\x91\x66\xfb\x1c\x1a\xfb\x55\x07\x75\x94\x7f\x9b\x9b\x96\x99\x9f\x1e\x0e\xf7\xc5"
+"\xf8\xc7\x15\xfb\x33\xfb\x13\xfb\x10\xfb\x2f\xfb\x32\xf7\x11\xfb\x12\xf7\x31\xf7\x2f\xf7\x12\xf7\x12\xf7\x30\xf7\x2d\xfb\x12\xf7"
+"\x14\xfb\x2b\x1f\x30\xfb\x34\xf7\x2e\x1d\xf7\xa2\x34\x15\x86\x48\x82\x6c\x74\x69\x08\x5a\x6a\x5a\x72\x4b\x1b\x4f\x5e\xa0\xb4\x6a"
+"\x1f\x6e\xb0\x80\xad\x85\xd4\x95\x63\x93\x7a\x9e\x75\x08\x61\xae\xbc\x76\xca\x1b\xc9\xbc\xa0\xb5\xae\x1f\x9e\xa1\x93\x9c\x95\xb3"
+"\x08\x29\xe2\xf7\x2e\x1d\x0e\x86\x1d\xf7\x9c\x06\x5b\x1d\x95\x91\x99\x94\x98\x1f\x95\x9a\xb9\xb1\xa5\x9a\x08\xa8\x9c\x93\x96\xa2"
+"\x33\x1d\x80\x81\x8d\x70\x1b\xfb\x0a\x06\x7d\x66\x1d\x0e\xc3\x0a\x85\x85\xe8\x1d\x0e\xc3\x0a\x86\x84\xe8\x1d\x66\xf7\x84\x59\x0a"
+"\xe6\x1d\x56\x1d\x5e\x1e\xf7\x33\xf7\x93\x6a\x0a\x77\x7c\x7f\x83\x7a\x80\x1e\x44\x6b\x0a\x9b\x7c\x9f\x99\x97\x93\x9c\x96\x1e\xf7"
+"\x0e\xdf\x15\x9e\x1d\xfb\xaa\x4a\x1d\xe6\x1d\x79\xa2\x67\x68\x78\x73\x5f\x1e\xf7\x3b\xf7\x64\xf7\x1a\x1d\x7f\x84\x81\xf7\x4c\x1d"
+"\x25\x0a\xc5\xc5\x1d\xc8\x1d\xf7\x15\xf7\x94\xf2\x1d\x87\x7d\x1a\x76\x9d\x7a\xa0\x95\x93\x8e\x95\x97\x1e\x0e\xf7\x85\xf7\xd6\x15"
+"\xaf\x8e\x9d\x9c\xaa\x1a\xad\x73\x9d\x5d\x1e\x2d\x72\x0a\xfb\x6d\x07\x58\x89\x76\x7c\x68\x2a\x0a\xf7\x04\x06\xb9\xa3\x9d\xae\xad"
+"\x76\x9a\x58\x8d\x1f\xc9\x07\xc2\x86\xba\x5e\xca\x20\x8d\x87\x18\x8e\x86\x05\xdd\x27\x1d\x78\x06\x68\xc2\x63\xb7\x67\xa2\xf7\x05"
+"\xea\x18\xb8\x8d\xa0\x9b\xad\x1a\xad\x73\x9d\x5c\x1e\x65\x06\xfb\x54\xfb\x38\x05\x0e\xb7\x1d\xf7\x0e\xfb\x0b\x15\x95\x99\x8f\x95"
+"\x93\x1a\xa0\x79\x9c\x75\x79\x82\x85\x77\x7d\x1e\x39\xfb\x0c\x05\x83\x7f\x86\x7f\x82\x1a\x77\x9d\x7a\xa2\x9b\x95\x92\x9f\x98\x1e"
+"\x0e\xf7\x6f\xf7\x33\x15\x99\x95\xec\x39\x05\x81\x7e\x87\x82\x7e\x2a\x0a\xf7\x0a\x06\xba\x67\x0a\x81\x8c\x6f\x1b\x6b\x06\xfb\x2f"
+"\xf7\x17\xf7\x06\xe2\x05\xa5\x06\xa3\x96\x8d\x91\x8c\x1d\xfb\x04\x06\x72\x80\xbe\x0a\x7d\x8f\x81\x95\x7f\x1e\x46\x57\x05\xf7\x1f"
+"\xfb\x0c\x07\x73\x80\x89\x86\x82\x3b\x0a\x7a\x93\x7b\x99\xf7\x52\x1d\x97\xfb\x6e\x7f\x06\xce\x0a\x2d\x0a\x1e\xf7\x0c\x06\x0e\x34"
+"\x0a\xf0\xf9\x0a\x26\x1d\xe6\xf2\x15\x5e\xf7\x0c\x0a\xe9\x06\xba\xa3\x9d\xad\xa9\x7b\x9b\x6a\x90\x1f\xe2\xf7\x3e\xec\xfb\x3e\x05"
+"\x6a\x85\x7c\x7b\x6e\x1a\x69\xa4\x79\xb9\x1e\xec\x06\xb9\xa4\x9d\xad\xad\x75\x9b\x5d\x8c\x1f\xfb\xb0\xf8\x88\x05\x23\x06\x52\x1d"
+"\xb4\x06\xcc\xfb\x08\x05\x0e\x34\x0a\xf7\x3b\xf8\x4f\x15\x94\x98\x8f\x95\x94\x1a\x9f\x79\x9d\x75\x7a\x81\x85\x76\x7d\x1e\x39\xfb"
+"\x0b\x05\x82\x7e\x87\x80\x81\x1a\x77\x9e\x7a\xa1\x9b\x94\x91\xa0\x99\x1e\x0e\x34\x0a\x7e\xfb\x72\x23\x1d\x34\x0a\xf7\x44\xf7\x3e"
+"\x15\xb3\xaa\xa9\xb0\xb1\x6c\xa8\x63\x1f\x7a\x62\x1d\xf7\x7d\xf7\xf7\x15\xf7\xb1\xf7\x0b\x05\xa6\x97\x97\x99\xa1\x1a\x92\x89\x92"
+"\x88\x92\x1e\x8a\x8d\x05\x9a\x84\x78\x98\x7a\x1b\x82\x80\x88\x86\x7e\x1f\xfc\x80\xfb\x65\xf8\x80\xfb\x6b\x05\x86\x97\x97\x88\x93"
+"\x1b\x9c\x9f\x98\x9b\x92\x1f\x8c\x8c\x05\x8e\x92\x8d\x93\x91\x1a\xa1\x7f\x99\x70\x97\x1e\x6c\xfb\x7b\x15\xb0\xa2\x9d\xa9\xa9\x75"
+"\x9d\x65\x1f\xfc\x1d\x06\x65\x74\x79\x6d\x6d\xa2\x79\xb1\x1f\x0e\xf7\x36\xf7\x4b\x15\x83\x57\x7a\x74\x6a\x87\x08\x66\x84\x7b\x7b"
+"\xef\x0a\xad\x76\xa1\x69\x6e\x79\x7c\x6f\x86\x1f\xfb\x56\x06\x97\xa9\x8f\x9a\x8f\xad\x08\xf7\x03\x69\x0a\xfb\x06\x06\x87\xa5\x05"
+"\xf7\x0a\x69\x0a\xfb\x1a\x06\x88\x98\x05\x7b\xc0\x8a\x91\x9e\xc4\x0a\x39\x24\x42\x47\x2c\x70\x8e\x7c\x99\x60\x1f\x58\x06\x74\x7f"
+"\x81\x77\x77\x97\x80\xa2\x1f\xcf\x06\x8d\x82\x8c\x88\x8d\x7d\x08\x42\xf7\x0b\x0a\x0e\xf7\xc3\xf2\x15\xf7\xf5\x07\xa8\xa5\x99\xc2"
+"\xab\xb5\x87\x85\xb0\x1e\x89\x98\x95\x8a\x92\x1b\xa7\xa1\xa2\xa9\xa3\x7b\x9c\x6e\x93\x1f\x93\x6a\x4d\x92\x60\x1b\xfb\x0d\x3f\x53"
+"\x30\x1f\x6c\x61\x07\x70\x83\x8a\x4f\x0a\x7a\x79\x1a\x68\xa3\x7a\xb9\x1e\xb6\xfb\x6f\x55\x06\x89\x1d\xf7\xbd\x31\x1d\x0e\xf7\xe4"
+"\xf8\x30\x15\x92\x75\x77\x8e\x76\x1b\xfb\x0b\x2c\x2c\xfb\x0a\xfb\x0a\xea\x2c\xf7\x0a\xf7\x0a\xea\xea\xf7\x0a\xdb\x5e\xd4\x45\xb0"
+"\x1f\xe3\xf7\x53\x05\x61\xaa\xaa\x6d\x95\x1b\x92\x8f\x8f\x90\x8f\x89\x8f\x85\x95\x1f\x75\xad\x78\xc0\x88\xaf\x08\x9e\x8a\x8a\x8e"
+"\x85\x1b\x87\x87\x89\x83\x81\x1f\x78\x7a\x4a\x73\x67\x88\x08\x79\x88\x87\x89\x83\x1a\x80\xa3\x84\xb2\x1e\x9f\x06\x9f\x8c\x05\x8d"
+"\x06\xfb\x31\xfb\x79\x15\xea\xd8\x40\x2f\x2d\x40\x3f\x2d\x2e\x3f\xd6\xe8\xe7\xd7\xd8\xe5\x1f\x0e\xf7\xb5\xf7\x06\x1d\x0e\xf7\xa6"
+"\xf7\x28\x15\x90\x7e\x7a\x8f\x7d\x1b\x57\x5d\x5e\x59\x6e\xa1\x78\xad\xd3\xbe\xc2\xda\x1f\xf7\x8b\x07\xba\x84\xb3\x4b\x46\x1a\x60"
+"\x83\x69\x77\x5e\x1e\xa2\x06\xa9\xb0\x9b\xb9\xbc\x1a\xca\x73\xc7\x59\xc7\x1e\x61\xbe\x8a\x8c\x86\x90\x85\x94\x19\xbc\x66\x07\x0e"
+"\xf7\xd8\xf8\x71\x15\xa1\x70\xa2\x77\xa2\x7e\xc8\x6a\x96\x84\x90\x82\x08\x92\x7f\x8f\x78\x74\x1a\xfb\x89\x07\x92\x79\x71\x90\x76"
+"\x1b\x3f\x48\x53\x4c\x66\xaa\x74\xbd\xc3\xc0\xa3\xb4\xac\x1f\xa2\xa7\x92\xa2\x8e\xbe\x08\xf8\x14\x07\x8c\xd8\x67\xd8\x59\xa9\x34"
+"\xc1\x18\x80\x94\x05\x7d\x9a\x84\x9e\xa3\x1a\x99\x5b\xfc\x9b\x07\x92\x79\x73\x8f\x76\x1b\x41\x49\x53\x4c\x66\xaa\x74\xbb\xc2\xbf"
+"\xa3\xb4\xac\x1f\xa1\xa7\x92\xa2\x8e\xbf\x08\xf7\x2c\xf7\x40\x15\xfb\x0d\xca\x70\xb3\x88\xf7\x0d\x8e\x89\x18\xf7\x0d\x4c\xa5\x64"
+"\x90\xfb\x0e\x08\x0e\xf7\x5b\x46\x1d\xf7\x94\xf7\x68\x27\x0a\xf7\x73\x46\x1d\x56\xf7\x44\x15\x93\x98\x90\x96\x93\x1a\xa0\x79\x9c"
+"\x75\x7a\x81\x85\x77\x7d\x1e\x39\xfb\x0c\x05\x82\x7e\x87\x80\x82\x1a\x77\x9d\x7a\xa2\x9b\x95\x92\x9e\x99\x1e\x0e\xf7\x5b\x46\x1d"
+"\xf1\xf7\x4c\x45\x1d\xf7\x5b\x46\x1d\xf7\x22\xfc\x8b\x23\x1d\xf7\xda\xf7\x7c\x15\xf7\x93\xbd\xfb\x79\x06\xec\xf7\x49\x05\xf7\x18"
+"\xbe\x22\x06\x97\xa9\x96\xa1\x96\x9a\x08\x8f\x90\x8d\x8f\x8e\x1a\x96\x7e\x96\x7f\x7e\x85\x87\x7b\x83\x1e\x60\x3a\x05\xfb\x1a\xf2"
+"\x0a\xfb\x10\xb7\x3b\xe6\x63\x1e\x6e\x55\x05\x87\x83\x89\x85\x86\x1a\x7f\x97\x80\x98\x97\x92\x90\x9a\x93\x1e\xac\xca\x05\x87\xac"
+"\x8f\x8b\xb8\x1b\xf7\xba\xbe\xfb\xc6\x06\x73\x84\x8b\x8d\x7e\x1f\xb2\xf7\x47\x15\x31\xfb\x3c\x4a\xa1\x68\xc3\x87\xe0\x19\x90\x07"
+"\xf7\xd2\xf7\x7b\x15\x2a\xfb\x49\x05\xfb\x71\x90\x06\x91\xf7\x0c\xcc\xc6\xf7\x14\x88\x08\x0e\xf8\x54\xf8\x32\x15\x92\x97\x05\x91"
+"\x96\x8e\x94\x95\x1a\xa9\x71\xa4\x6c\x78\x77\x7d\x77\x7f\x1e\x67\x4c\x05\xfb\x68\x06\x96\x1d\xf7\x29\x06\x67\x4b\x05\xfb\x05\x06"
+"\x71\x82\xf7\x18\x1d\xbd\x06\x7c\x71\x05\x85\x81\x87\x7d\x81\x1a\x71\xa5\x74\xa9\xa1\x9e\x97\x9f\x97\x1e\xb7\xd8\x05\xf7\x62\x06"
+"\xa2\x98\x8d\x91\x95\x1f\x9c\x94\x96\x9e\x9e\x1a\x9d\x82\x9c\x7c\x95\x1e\x93\x7f\x81\x8d\x6f\x1b\xfb\x23\x06\xaf\xcb\x05\xf6\x06"
+"\xa2\x99\x8d\x91\x94\x37\x0a\x0e\xf7\x3f\xf8\x3d\x15\x28\x06\x67\x73\x78\x6e\x6d\xa3\x78\xaf\x1f\xa2\x06\xf7\x42\xfb\xe2\x05\xd8"
+"\x06\xf7\x14\xf7\x0b\xca\xee\xdd\x1a\xb3\x7a\xbd\x72\xaa\x1e\x9a\x7f\x7c\x92\x79\x1b\x6d\x72\x74\x6f\x84\x8d\x83\x8e\x85\x1f\x9f"
+"\x63\x8e\x81\x71\x1a\x59\x6c\x55\x49\x48\x1e\x0e\x25\x1d\xfb\x1e\xf7\xde\xdf\x1d\x25\x1d\xaf\xf7\x99\xca\x1d\x25\x1d\xfb\x0c\xf7"
+"\xa3\x37\x1d\xf7\xc0\xba\x15\x60\xa7\xaa\x78\xb8\x1b\xb5\xb2\x9e\xaa\xa6\x1f\xa6\xad\x99\xbc\xcf\x1a\xd9\x76\xd0\x67\xb8\x1e\xae"
+"\x6f\x62\xa3\x6b\x1b\x6f\x74\x73\x6e\x76\x92\x82\xa6\x7b\x1f\x96\x84\x8e\x89\x8f\x88\x08\xaa\x73\x9d\x55\x41\x1a\x57\x7b\x6a\x72"
+"\x6f\x7a\xb0\xd0\x87\x1e\x8a\xa5\x8a\x91\x88\x93\x08\xa2\x84\x7a\x97\x71\x1b\x73\x7a\x81\x77\x83\x1f\x87\x81\x8b\x87\x89\x6c\x08"
+"\x45\x87\x7b\x67\x6e\x1b\x72\x7b\xac\xc1\xc1\x99\xc5\x9e\xa2\x1f\x93\x94\x93\x92\x99\x93\x08\xa9\x9d\x93\x95\x9f\x1a\xa9\x74\xa3"
+"\x6e\x69\x60\x70\x62\x6e\x1e\x6a\x5e\x79\x4a\x42\x1a\xfb\x12\xc2\x40\xe8\xb9\xa9\x9d\xb7\xa8\x1e\x0e\xf7\xc0\xa8\x15\x6d\xa7\xaa"
+"\x7d\xb5\x1b\xec\xc2\xd4\xf7\x13\xd9\x76\xd1\x67\xb8\x1f\xae\x6f\x62\xa3\x6b\x1b\x6f\x74\x73\x6e\x76\x92\x82\xa6\x7b\x1f\x96\x84"
+"\x8e\x89\x8f\x88\x08\xaa\x73\x9d\x55\x41\x1a\x57\x7b\x6a\x72\x6f\x7a\xb0\xd0\x87\x1e\x8a\xa5\x8a\x91\x88\x93\x08\xa2\x84\x7a\x97"
+"\x71\x1b\x73\x7a\x81\x77\x83\x1f\x87\x81\x8b\x87\x89\x6c\x08\x45\x87\x7b\x67\x6e\x1b\x72\x7b\xac\xc1\xc1\x99\xc5\x9e\xa2\x1f\x93"
+"\x94\x93\x92\x99\x93\x08\xa9\x9d\x93\x95\x9f\x1a\xa9\x74\xa3\x6e\x69\x60\x6f\x63\x6e\x1e\x6a\x5e\x79\x4a\x42\x1a\xfb\x14\xc2\x42"
+"\xec\xb6\xa8\x98\xaa\xa8\x1e\xf0\xf8\xac\x15\x9b\x97\x91\x95\x98\x1a\x9d\x7a\x9b\x78\x82\x80\x86\x82\x7f\x1e\xfb\x00\x38\x05\x7d"
+"\x80\x84\x7f\xf0\x0a\x25\x1d\x0e\xf7\xc1\xf8\x49\x15\xfb\x22\xfb\x09\x23\xfb\x13\xfb\x0f\xf7\x07\x29\xf7\x24\xf7\x24\xf7\x07\xec"
+"\xf7\x0e\xf7\x15\xfb\x08\xf3\xfb\x23\x1f\x23\x04\xde\xcf\x51\x45\x4d\x45\x55\x3a\x39\x46\xc1\xca\xd1\xcf\xc4\xde\x1f\xf4\xf7\x7c"
+"\xcb\x0a\x80\x85\x80\x7e\x1a\x79\x9c\x7b\x9d\x95\x95\x8f\x95\x97\x1e\x0e\xcf\x8e\x15\xf8\x66\xec\xfc\x02\xf7\xf5\x27\x06\x0e\x80"
+"\x0a\xe1\xf7\xa1\x15\x9d\x99\x91\x95\x99\x1a\xa0\x79\x9c\x74\x7f\x84\x88\x7f\x7c\x1e\xfb\x1a\xf7\x4a\x1d\x8f\x97\x9b\x1e\x0e\xf7"
+"\x2b\xf8\xbc\x15\x7d\x8c\x95\x82\x9a\x1b\xac\x8c\x05\xbb\xc4\x77\x6c\xb5\x1f\xa8\x76\x9e\x76\xa7\x60\x08\xa7\x5e\x67\x96\x57\x1b"
+"\xfb\x16\x24\x28\xfb\x11\xfb\x11\xf2\x27\xf7\x17\xf7\x15\xf3\xee\xf7\x10\xe9\x64\xf7\x00\x4e\xd1\x1f\xcb\x55\x33\xb0\x29\x1b\x70"
+"\x88\x8a\x84\x84\x1f\x87\x87\x89\x84\x84\x1a\xf7\x27\xfb\x40\x15\xf3\xdb\x40\x28\x2b\x3b\x3e\x26\x26\x3a\xd8\xec\xea\xdb\xd9\xee"
+"\x1f\x0e\xf8\x50\xf7\x49\x15\xd3\x06\xa6\x99\x99\xa3\xa4\x7d\x98\x70\x1f\x43\xb2\x06\xaa\x80\x9b\x75\x75\x80\x7b\x6c\x1e\x64\x85"
+"\x07\x71\x7d\x7e\x72\x73\x99\x7d\xa5\x1f\x91\xfb\x01\x06\x56\xb0\x69\xc5\xa5\xb0\x95\x98\xa3\x1e\xa0\x97\x92\x95\x9d\x1a\xa0\x7d"
+"\x9c\x79\x84\x87\x8a\x85\x81\x1e\x7f\x77\x77\x85\x75\x1b\x72\x87\x8e\x9d\x1f\xfb\xaa\xf7\x00\x15\xce\x8e\xa4\x91\xa8\x9e\x08\xbf"
+"\xac\xad\xca\xcd\x1a\xf6\x3a\xd8\xfb\x05\x1e\x23\x06\x75\x82\x89\x86\x83\x1f\x7d\x81\x82\x7a\x79\x1a\x7b\x93\x7b\x96\x81\x1e\x84"
+"\x95\x93\x89\xa0\x1b\xfb\xfa\x07\x65\x77\x79\x6a\x69\xa0\x79\xb4\x1f\xf7\x41\x06\xb4\xa0\x9d\xad\x9b\x84\x9a\x7f\x95\x1f\x93\x81"
+"\x82\x8d\x73\x1b\x39\x06\xf7\xf9\x04\x99\x06\xc4\xae\x6c\x57\x57\x68\x6b\x52\x1f\x7d\x06\x0e\xf7\x7d\xfb\x21\x15\x24\x0a\xf7\x12"
+"\x07\xc4\x93\xad\x98\xae\xa5\x08\xc3\xb4\xac\xcc\xd2\x1a\xf7\x05\x2c\xf2\x22\x62\x65\x78\x6c\x75\x1e\x7b\x76\x85\x6d\x5a\x1a\xfb"
+"\x4e\x07\x53\x9a\x72\xb0\xcf\x1a\xbc\x9a\xaf\xae\xb2\x1e\x99\x9a\x90\x96\x9a\x1a\xa6\x73\xa3\x70\x4d\x4b\xfb\x02\x20\x39\xa7\x4d"
+"\xc2\x64\x1e\xa8\x76\xa3\x82\xc0\x81\x08\xf7\x00\xf7\xb6\x15\xb3\x8d\x91\x97\xba\xb9\x53\x51\x4e\x62\x5d\x49\x80\x1e\x0e\xf7\x6b"
+"\xf7\xd6\x15\xf7\x3e\xfb\x6e\x8a\x06\x70\x83\x89\x85\x81\x3b\x0a\x7b\x94\x7b\x98\x81\x1e\x83\x96\x94\x89\xa8\x1b\xf7\x04\x06\xa6"
+"\x92\x8c\x92\x95\x1f\x9b\x96\x95\x9b\x9c\x1a\x9b\x83\x99\x7c\x96\x1e\x94\x7f\x84\x8d\x6f\x1b\x88\xf7\x6e\x93\x06\xa5\x92\xf7\x54"
+"\x1d\x9b\x7d\x94\x1e\x93\x80\x82\x8d\x70\x1b\xfc\x26\x06\x72\x83\xc9\x0a\x93\xfb\x6e\x88\x06\x71\x84\x89\x85\x80\x1f\x7a\x80\x82"
+"\x7b\x7a\x1a\x7b\x93\x7c\x9a\x80\x1e\x83\x97\x92\x89\xa7\x1b\xf7\x04\x06\xa6\x93\x8c\x92\x95\x1f\x9b\x94\x95\x9c\x9d\x1a\x9b\x82"
+"\x9b\x7e\x95\x1e\x93\x80\x82\x8d\x6e\x1b\x8a\x06\x0e\xf8\x93\xf8\xae\x15\x92\x06\xae\x8a\xa3\x9f\xab\x1a\x93\x07\x8a\xac\x74\x9f"
+"\x66\x89\x08\xfc\x44\x06\x66\x8d\x74\x77\x8a\x6a\x08\x83\x07\x8c\x6a\xa2\x77\xb0\x8d\x08\x98\xfc\x9b\x7e\x06\x66\x8d\x74\x77\x8a"
+"\x6a\x08\x83\x07\x8c\x6a\xa2\x77\xb0\x8d\x08\xf7\x13\x06\xb0\x89\xa2\x9f\x8c\xac\x08\x93\x07\xaa\x74\xa0\x6a\x8a\x1e\x88\xf8\x9b"
+"\xf7\x4a\xfc\x9b\x83\x06\x68\x8d\x73\x77\x6a\x1a\x83\x07\x8c\x6a\xa2\x77\xb0\x8d\x08\xf7\x13\x06\xb0\x89\xa2\x9f\x8c\xac\x08\x93"
+"\x07\xab\x73\x9f\x68\x8a\x1e\x84\x06\x0e\xf7\xe9\xf8\x64\x15\xfb\x2b\x65\x86\x71\x5e\x1f\x46\x62\x61\x3f\x37\x1a\x3e\xad\x46\xc8"
+"\x5f\x1e\x67\xbd\xae\x85\xf7\x39\x1b\xf7\x56\x06\xa0\x99\x95\x9b\x9b\x7f\x94\x74\x1f\xfb\x58\x06\xfb\x14\x60\x90\x9e\x68\x1f\x54"
+"\xa8\x65\xcb\xcb\x1a\xc5\xab\xc7\xba\xaa\x1e\xa6\xb3\xb0\x90\xf7\x23\x1b\xf7\x58\x06\xa1\x98\x95\x9b\x9b\x7e\x94\x75\x1f\x0e\xf7"
+"\x74\x16\xf7\x2d\xb0\x90\xa5\xb8\x1f\xd0\xb4\xb5\xd7\xdf\x1a\xd8\x68\xd0\x4f\xb7\x1e\xaf\x59\x67\x91\xfb\x39\x1b\xfb\x55\x06\x75"
+"\x7e\x82\x7b\x7b\x98\x81\xa1\x1f\xf7\x58\x06\xf7\x16\xb3\x86\x78\xaf\x1f\xc2\x6f\xb1\x4a\x4b\x1a\x51\x6b\x50\x5b\x6b\x1e\x71\x65"
+"\x63\x85\xfb\x21\x1b\xfb\x58\x06\x74\x7f\x82\x7b\x7c\x99\x80\xa0\x1f\x0e\xf7\x8a\xfb\x21\x15\x24\x0a\xf7\x15\x07\xf7\x03\x91\xc9"
+"\xce\x89\xf7\x02\x08\xf7\x2b\x07\xb4\x8d\x9f\x9b\xac\x1a\xad\x73\x9d\x5c\x1e\x29\xfb\x98\x06\x5b\x7c\x78\x5b\x81\x1e\xf8\x53\x07"
+"\xb7\x78\xa3\x68\x68\x78\x74\x5e\x1e\xfc\x53\x07\x5b\x96\x7e\x9c\x8a\xbc\x08\xf7\x98\x29\x07\x5c\x73\x79\x69\x6b\x9f\x7a\xb4\x89"
+"\x1f\xfb\x2b\x07\x88\xfb\x01\xcd\x45\xf6\x87\x08\x0e\xf8\x68\xf7\x5d\x15\x89\x8c\x8b\x8c\x8a\x8c\x7b\x9c\x83\x94\x77\x9b\xc3\x1d"
+"\xf7\x00\xe7\x06\x9e\x83\x9d\x7d\xa6\x6f\x88\x8a\x18\x6e\x81\x7f\x7e\x75\x1a\x76\x9f\x76\x9f\x90\x97\x8e\x8f\x98\x1e\xab\x96\x90"
+"\x84\xaa\x61\x97\x79\x94\x78\x19\x8e\x85\x05\xdc\xec\x0a\x82\x9c\x7e\x94\x1e\x71\x1d\x80\x06\x84\x94\x89\x8e\x82\x99\x9b\x91\x18"
+"\xa8\x95\x97\x98\xa1\x1a\x9f\x78\xa0\x78\x82\x80\x89\x87\x7e\x1e\xfb\xcc\xee\x15\xf7\x26\xf7\x00\x07\xc8\xb8\x6f\x64\x5d\x4f\x6a"
+"\x39\x1f\x0e\x58\x1d\xf7\x41\xf7\x78\x27\x0a\xf7\x2e\xf7\xd1\x15\x22\x06\x79\x8c\x80\x82\x8a\x7a\x08\x8a\x07\x8c\x7a\x96\x82\x9d"
+"\x8c\x08\xc7\x06\xe4\xfb\xb0\xf7\x85\xf9\x2f\x05\xf7\x3b\x06\x9c\x98\x96\x9a\x9b\x80\x94\x78\x1f\xfb\x66\x06\xfb\x55\xfc\xcc\x05"
+"\x0e\x58\x1d\xb2\xf7\x5c\x45\x1d\x58\x1d\xc6\xfc\x7b\x23\x1d\xf7\x0b\xf8\x19\x15\xf8\x12\x06\xa1\x96\x94\x9b\x9c\x80\x94\x75\x1f"
+"\xfc\x46\xfb\x88\x06\x77\x94\x80\x9c\x9c\x94\x96\x9f\x1e\x0e\xf7\x53\xa3\x15\x71\xb5\xb4\x7e\xba\x1b\xf7\x10\xf2\xf3\xf7\x12\xf7"
+"\x13\x2a\xea\xfb\x17\x3d\x48\x6d\x53\x5f\x1f\x65\x5d\x81\x66\x32\x1a\xfb\xd4\x2f\x0a\xf7\x14\xf8\x6e\x15\xd2\xbd\x5a\x45\x47\x55"
+"\x52\x4a\x67\x64\x9d\xa8\x70\x1f\x78\xa0\x82\xa5\xaa\x1a\xd0\xc0\xbd\xd6\x1e\x0e\x42\x1d\x54\xf7\x99\x27\x0a\xf7\xe4\x7d\x15\xf7"
+"\x0c\x96\xd6\xbf\xd5\x1a\xb9\x70\xb4\x5e\xa4\x1e\x6d\x9b\x61\x96\x41\x94\x4b\x94\x85\x8c\x7e\x8f\x08\x7c\x91\x82\x92\x92\x1a\x99"
+"\xbb\x9a\xba\xb4\xac\x82\x79\xa5\x1e\x6c\x9d\x97\x83\xa4\x47\x0a\xae\x07\x9e\x8a\x92\x88\x94\x1e\x9e\x86\x77\x98\x75\x1b\x7a\x83"
+"\x85\x7a\x81\x1f\x9a\x66\x62\x93\x5b\x1b\xfb\x0f\x34\x53\x3c\x3e\xc7\x63\xf7\x22\x7c\x1f\xc1\x86\xa0\x87\x9b\x85\x08\x9f\x83\x97"
+"\x80\x80\x1a\x77\x56\x7a\x4f\x56\x61\x97\xa2\x70\x1e\xa9\x82\x79\x99\x6f\x1b\x79\x54\x1d\x84\x6f\x1a\x6b\x07\x71\x8c\x84\x92\x81"
+"\x1e\x7c\x95\x9c\x82\x9f\x1b\x98\x93\x8e\x93\x96\x1f\xa6\x7e\xab\x83\xb6\x87\x08\x36\x88\x0a\xb2\x81\xa8\x1b\xcc\xb9\xb3\xc3\x4e"
+"\x0a\x42\x1d\xfb\x65\xf7\x87\x2e\x0a\x42\x1d\xfb\x3d\xfc\x5a\x23\x1d\xf7\x5f\xf7\x06\x1d\xf7\x60\x16\xe4\xf7\x58\x05\x97\xa5\x8e"
+"\x95\xf7\x3b\x1d\x0e\xf7\xe8\xf8\x49\x15\x35\x59\x82\x72\x5b\x1f\x44\x66\x5c\x3f\x3c\x1a\xfb\x13\xf7\x04\x28\xf7\x24\xf7\x22\xf7"
+"\x05\xee\xf7\x11\xb8\x7b\xb4\x6b\xb2\x1e\xb9\x06\xa5\x94\x32\x1d\x9b\x9d\x1a\xa0\x7d\xa0\x78\x91\x1e\x8e\x81\x84\x8c\x77\x1b\xfb"
+"\x93\x24\x15\xe0\xcb\x56\x45\x46\x4b\x55\x38\x37\x4b\xc1\xd0\xd0\xcb\xc1\xdd\x1f\x0e\xf7\x6d\xf8\x23\x15\x75\x79\x7a\x75\x76\x9c"
+"\x79\xa1\xa1\x9c\x9c\xa1\xa0\x7a\x9d\x76\x1f\xf7\x41\x8c\x15\x75\x79\x79\x76\x75\x9d\x79\xa1\xa0\x9d\x9d\xa0\xa1\x79\x9d\x76\x1f"
+"\xe9\x37\x15\x82\x64\x83\x7b\x77\x73\x08\x61\x66\x5c\x77\x4d\x1b\x4c\x5d\x9f\xb5\x66\x1f\x77\xa3\x83\x9b\x82\xb2\x90\x48\x93\x6c"
+"\xa2\x68\x08\x5b\xac\xbd\x72\xcb\x1b\xc6\xba\xa0\xb4\xab\x1f\xa8\xb0\x96\xae\x90\xd3\x08\xfb\x47\xf7\x8b\x15\xfb\x33\xfb\x13\xfb"
+"\x10\xfb\x2f\xfb\x32\xf7\x11\xfb\x12\xf7\x31\xf7\x2f\xf7\x12\xf7\x12\xf7\x30\xf7\x2d\xfb\x12\xf7\x14\xfb\x2b\x1f\x83\x66\x15\xf7"
+"\x1d\xf7\x03\xfb\x00\xfb\x1b\xfb\x1d\xfb\x01\xfb\x01\xfb\x1c\xfb\x1b\xfb\x01\xf7\x01\xf7\x1c\xf7\x19\xf7\x02\xf7\x03\xf7\x17\x1f"
+"\x0e\xf7\x22\x16\xf8\x09\x9d\x06\xfb\x11\x91\x51\xcd\x8d\xf7\x17\x08\x4a\xad\xaf\x72\xc3\x1b\xc1\xb8\xba\xc5\xc0\x77\xaa\x38\xd7"
+"\x1f\x37\xd8\x7c\xa1\x6d\xe5\x7f\x44\x5c\x47\x3a\x4a\x08\x4d\x58\x70\x5f\x5a\x1a\x51\xba\x5b\xc4\xc3\xb3\xa8\xc8\xa8\x1e\xfb\x14"
+"\x90\x47\x40\xfb\x0e\x1b\x0e\xf8\x37\xf8\xab\x15\x91\x42\x8c\x6d\xa2\x75\xaa\x8a\x19\x90\x06\xac\x8c\xa1\xa3\x8a\xab\x08\xf7\x0f"
+"\x07\xad\x8c\x72\xa2\x67\x1b\xfb\xeb\x06\x67\x8c\x72\x74\x6b\x1a\x7e\x07\x7b\x8e\x82\x95\x7e\x1e\xf7\x39\xfb\x73\xfb\x3d\xfb\xba"
+"\x05\x84\x7f\x89\x84\x7e\x1a\x7c\x07\x6a\xa4\x74\xaf\x8c\x1e\xf7\xf2\x06\xaf\xa3\xa2\xad\x1f\xf7\x10\x07\xab\x75\xa3\x6a\x8c\x1e"
+"\x86\x06\x6c\x8a\x74\x74\x8a\x6c\x88\x43\x18\xfb\x62\x06\xf7\x2a\xf7\x93\x05\x91\x97\x8e\x93\x95\x1a\x97\x88\x94\x82\x97\x1e\xfb"
+"\x1a\xf7\x4c\x05\x0e\xf7\x23\xf8\x2a\x15\x73\x6e\x7d\x68\x86\x65\x08\x2c\x5e\xeb\x06\x8f\x64\x99\x68\xa2\x6e\x48\x48\x18\xab\x6b"
+"\xce\xcf\xa9\x73\xab\x7e\xb4\x85\x19\x2c\xb8\xea\x07\xb4\x91\xad\x99\xa7\xa2\xce\x47\x18\xab\xab\x48\xcf\xa1\xa4\x9a\xaf\x90\xb4"
+"\x19\xeb\xb8\x2b\x06\x86\xb3\x7c\xaf\x75\xa6\xce\xce\x18\x6b\xab\x48\x48\x70\xa1\x64\x9b\x66\x8f\x19\xea\x5e\x2d\x07\x67\x87\x62"
+"\x79\x72\x75\x47\xcf\x18\x6b\x6b\x05\xf7\x72\x5d\x15\xdc\xcc\x4b\x3d\x3a\x4b\x4b\x3b\x3c\x4b\xcb\xda\xda\xcb\xcc\xd8\x1f\x0e\xf7"
+"\xed\xf7\xd7\x15\xd7\x06\xa7\x92\x8c\x91\x94\x1f\x9c\x95\x94\x9b\x9d\x1a\xa5\x79\x9f\x71\x8e\x1e\x8e\x74\x8b\x8b\x88\x1b\xfb\x9f"
+"\x06\x71\x83\x8a\x84\x81\x1f\x7b\x81\x81\x7b\x7a\x1a\x7a\x94\x7a\x99\x82\x1e\x84\x96\x95\x89\xa5\x1b\xde\xfb\x8a\x06\x53\xb3\x6c"
+"\xd2\xd1\xbb\xa6\xb2\xa3\x7a\xa0\x78\x84\x81\x89\x87\x81\x1e\x82\x75\x82\x89\x7e\x1b\x80\x88\x8f\x99\x1f\x0e\xf7\x6e\xf7\xa4\x15"
+"\xbd\xcb\x1d\x59\x76\x06\xc5\x0a\xa0\x5a\x06\x38\xd3\x57\xf7\x09\xc0\xda\x9b\xa1\xbc\x1e\xb1\x9b\x9a\x9b\xa3\x1a\xa7\x74\xa3\x6e"
+"\x80\x84\x89\x82\x79\x1e\x75\x5b\x5f\x81\x57\x1b\x65\x70\x91\x97\x80\x1f\x86\x90\x89\x94\x9d\x1a\xaa\xf7\x1d\x07\xa2\x97\x38\x1d"
+"\x0e\xf7\x6e\xf8\x3d\x15\xdb\x07\xc0\x1d\xf7\x4b\xf7\x45\x07\xb9\xa3\x9c\xae\x9f\x7f\x9d\x78\x93\x1f\xe2\xf7\x12\x05\x94\x98\x8f"
+"\x95\x94\x1a\x9f\x79\x9d\x75\x7a\x81\x85\x76\x7d\x1e\x39\xfb\x0b\x05\x81\x7d\x88\x82\x80\x1a\x87\x8b\x89\x8d\x86\x1e\x0e\xf7\xc2"
+"\x7c\x15\xbd\x8c\xc6\x96\xbf\x9e\x08\xbe\x9d\x9e\x9c\xa7\x1a\xa8\x74\xa2\x6e\x7f\x85\x89\x82\x79\x1e\x76\x5f\x5a\x80\x58\x1b\x65"
+"\x71\x91\x97\x80\x1f\x85\x91\x89\x93\x9e\x1a\xf7\x4b\xcb\x1d\xfb\x5e\x06\x4b\xb4\x5e\xd4\x7a\x1e\x2f\x07\x8d\x9c\x8d\x8b\x92\x76"
+"\x1d\x74\x91\x94\x7a\x1f\x97\x77\x89\x8b\x82\x1b\x76\x79\x7a\x76\x7a\x94\x7e\xa0\x80\x1f\x7e\xa5\xb3\x81\xa7\x1b\xcd\xb9\xb3\xc4"
+"\xbd\x72\xa9\x59\x95\x1f\x0e\xf7\xc0\xf8\xef\x15\xfb\x1c\x2b\xfb\x13\xfb\x4a\xfb\x4b\xea\xfb\x12\xf7\x1d\xf7\x1d\xea\xf7\x13\xf7"
+"\x4a\xf7\x4b\x2c\xf7\x12\xfb\x1d\x1f\xfb\x0c\xfb\x96\x15\xed\x9a\xb7\xc3\xc8\x1b\xc8\xb6\x54\x28\x9b\x1f\x23\x04\x29\x7b\x60\x54"
+"\x4e\x1b\x4e\x60\xc2\xed\x7b\x1f\x0e\xf8\x0b\xf8\xc9\x15\x9a\x97\x92\x96\x96\x1a\x9e\x7a\x9b\x78\x82\x80\x53\x1d\x7d\x80\x84\x80"
+"\x7f\x1a\x78\x9c\x7b\x9d\x95\x95\x57\x1d\xbb\x0a\x96\x97\x88\xa4\x1b\xaa\xfb\x3c\x06\x58\x58\x74\x7f\x5a\x1b\x51\x71\x9f\xb8\x1f"
+"\xf7\xa1\xfb\x0c\x07\x72\x81\x89\x86\x82\x32\x0a\x84\x95\x96\x88\xa6\x1b\x97\xfb\x3e\x06\x52\x9f\x61\xb3\x6e\x1e\x73\xad\xb5\x7f"
+"\xb9\x1b\xc1\xab\x98\xb3\xba\x1f\x62\xee\x07\xa0\x9a\x8d\x90\x93\xa6\x1d\x81\x91\x83\x8d\x76\x8c\x08\xfb\xf6\xdd\x1d\x2c\x1d\xfb"
+"\x5c\xf8\x80\x15\x9a\x9a\x90\x1d\x23\x05\x76\x9e\x0a\xf7\x9e\xf4\x15\xa0\xa2\x8b\x8b\x99\x1a\x9f\x79\x9d\x77\x7f\x82\x87\x7f\x80"
+"\x1e\x25\x23\x05\x77\x9e\x0a\x0e\x2c\x1d\xfb\xe4\xf8\x8a\x37\x1d\xa7\xfb\xaf\xf7\x4f\x1d\x79\x94\x7b\xec\x1d\xfc\xb4\xf7\x2f\x15"
+"\xf7\x64\x1d\x81\x80\x79\x78\x1a\x7a\x94\x7a\x6a\x1d\xf8\xb4\x06\xa2\x98\x8d\x91\x95\x1f\x9c\x94\x96\x9e\xee\x0a\x0e\x0e\x7e\x1d"
+"\x7c\x1d\x7f\xfb\x72\x23\x1d\xbb\x1d\xf7\x0f\xfb\x96\x23\x1d\xf7\x46\xf8\xf1\x37\x1d\x85\x1d\xf8\xe8\x16\xfb\x82\xf8\xc8\x05\xfb"
+"\x08\x06\xfb\x82\xfc\xc8\x05\xf8\x44\xf3\x15\xfb\xa3\x06\xf7\x1b\xf7\xd3\x05\x0e\xf7\x9b\xe9\x15\x69\x9a\x7d\x92\x7d\x98\x08\x63"
+"\xac\x72\xd0\xd7\x1a\xf7\x0f\xc4\xcd\xf7\x00\xf5\xc4\x48\xfb\x0e\x3f\x72\x46\x63\x6a\x1e\x7d\x7e\x7d\x84\x69\x7c\x08\x2d\xf7\x5b"
+"\x07\xa4\x93\xf7\x54\x1d\x9a\x7e\x95\x1e\x93\x7f\x82\x8d\x71\x1b\x4d\x06\xa8\x99\x96\x93\x99\x9b\x08\xad\xb1\xa0\xcd\xce\x1a\xd9"
+"\x6e\xd7\x5e\xb6\x1e\xb6\x5e\x3c\xa5\x35\x1b\x35\x3c\x71\x60\x5e\x1f\x5e\x60\x6e\x3f\x3d\x1a\x4e\x9d\x4c\xa8\x65\x1e\x9c\x76\x97"
+"\x81\xac\x7b\x08\x4d\x06\x72\x84\xc9\x0a\xf7\x5b\x06\x0e\xf7\x61\x84\x15\x85\xa1\x9d\x88\x9f\x1b\xa9\xba\x93\x94\xa0\x1f\xb6\x9d"
+"\x05\x78\xed\x07\xb9\xa4\x9d\xad\xaa\x75\x9e\x64\x8c\x1f\xf7\xd6\xfb\x1f\x07\x5d\x72\x79\x69\x6a\xa4\x78\xb9\x1f\xaa\xfb\x4b\x06"
+"\x67\x4e\x61\x7d\x62\x1b\x63\x7a\x9b\xb0\x1f\xf7\xb0\xfb\x0c\x07\x5e\x72\x79\x69\x6a\xa4\x78\xb8\x1f\x97\xfc\x55\x06\x5f\x9e\x73"
+"\xae\xae\x9e\xa3\xb7\x1e\x0e\xf8\xa9\xf8\x0f\x15\xad\x75\xa3\x6b\x76\x7d\x83\x79\x80\x1e\x9d\x70\x6b\x93\x5c\x1b\x3c\x50\x74\x5c"
+"\x5f\x1f\x62\x5e\x75\x50\x47\x1a\x3e\xa7\x4f\xc0\x65\x1e\xa7\x77\xac\x7d\xc7\x78\x08\xcd\x75\x8b\x8b\x81\x1a\x7b\x7a\x83\x60\x87"
+"\x1e\x65\x87\x78\x7b\x6b\x1a\x69\xa1\x7a\xb7\xe6\xcf\xc5\xd8\xad\x7d\xa7\x71\xa1\x1e\x78\x9b\x72\x95\x51\x9c\x08\x24\xa9\x74\xa3"
+"\xd6\x1a\xe8\xbf\xc0\xe6\xc5\xa3\x79\x55\x98\x1e\x65\x95\x9a\x7c\xa8\x1b\xaa\x9e\xa3\xb1\x8c\x1f\x0e\x30\x1d\x89\xf9\x46\x81\x1d"
+"\x56\x0a\xf7\x30\xf7\xe0\x15\x99\x7a\x86\x8d\x7f\x64\x0a\x20\x05\x7e\x9c\x92\x62\x0a\x8b\x0a\xf7\x41\xf8\x13\x05\xb7\x9d\x91\x95"
+"\x94\x1b\x8f\x91\x89\x87\x92\x1f\x7d\xa0\x9e\x85\x9d\x1b\xaf\xaa\xab\xb0\xba\x5f\xad\x4d\x41\x5e\x68\x2f\x61\x1f\x0e\x7d\x1d\xf7"
+"\x2a\xf7\xe2\x15\x98\x7b\x84\x8e\x80\x64\x0a\x21\x05\x80\x99\x95\x86\x96\x1b\xa1\x9e\x9d\x9f\x99\x85\x95\x78\x99\x1f\x0e\xf7\x5a"
+"\xf7\x7c\x15\xf4\xf1\x22\xf7\x13\xf7\x8c\x5e\x06\x8b\x1d\x94\xa5\x1a\xf7\x28\xfc\x6f\x07\xf7\x0b\x1d\xfb\x13\x50\x25\xc6\xfb\x15"
+"\x80\x06\xde\x0a\xf7\x6b\x31\x1d\x2b\x06\x0e\xf7\x30\xf7\x4a\x15\x3d\x57\x07\x46\x0a\x56\xd9\xbd\x06\xae\xa1\x9b\xa5\x94\x85\x99"
+"\x85\x92\x1f\x94\x82\x7e\x8e\x74\x1b\x59\xc2\xf7\x5e\x37\x06\x24\x0a\xf7\x50\xfc\x6a\x07\x52\x1d\xbf\x54\x65\x06\x67\x76\x7b\x71"
+"\xf4\x0a\x0e\xf8\xad\xf3\x15\x64\xf1\x7a\xb8\x76\xaa\x69\xa9\xf7\x0e\x0a\x6e\x94\x99\x80\xa4\x1b\xae\x98\xa0\xc3\x1f\x98\x07\xce"
+"\x80\x9b\x5f\x65\x6f\x7d\x6e\x74\x1e\x7a\x76\x69\x52\x60\x3d\x08\xeb\x07\xad\x92\x9b\x9b\xa7\x1a\xb1\x74\x99\x4c\xbc\x0a\x7a\x49"
+"\xcc\x0a\x69\x6b\x74\x69\x7c\x62\x64\x24\x18\x64\x87\x79\x7a\x6c\xf7\x2f\x1d\xae\x9c\xaa\x99\x99\x08\xfb\x23\x07\x65\x86\x7a\x7b"
+"\x6b\x1a\x67\xa2\x7d\xcb\x1e\xb6\x06\xc9\xa3\x99\xb0\xa8\x7a\x9c\x67\x91\x1f\xf7\x23\x07\x95\x82\xa1\x61\x96\x6e\xb5\x21\x18\x9f"
+"\x59\x96\x82\xb4\x8a\x08\x9e\x56\xe9\x0a\xf8\xa2\xf4\x15\x66\xca\x7b\xa6\x7a\xa0\x78\x99\x19\xa4\x99\x9b\xa0\x98\xae\x08\x75\x94"
+"\x9a\x81\xa2\x1b\xaa\x9c\x9f\xb0\x1f\xb3\x07\xb3\x75\x9f\x60\x61\x69\x79\x69\x75\x1e\x45\x21\x05\xc4\x07\xa5\x9b\x94\x99\xa0\x1a"
+"\xab\x71\x9d\x5c\x1e\x6b\x06\x5e\x71\x79\x6b\x76\x94\x7e\xa4\x7a\x1f\x52\x07\x46\xf5\x05\xad\x75\x68\x9d\x62\x1b\x5f\x76\x77\x63"
+"\x1f\x63\x07\x65\x9c\x77\xaa\xa2\x99\x95\xa1\x95\x1e\x97\x69\x9c\x76\xa3\x7d\x7a\x7f\x77\x72\x7d\x72\x66\x4b\x18\x5e\x8a\x75\x79"
+"\x68\x1a\x6a\x9e\x7a\xad\x1e\xce\x06\xcf\xf7\x0b\x9b\xa6\xa0\xa0\x99\x8e\x19\x47\x07\x73\x7a\x81\x7d\x76\xe1\x0a\x9c\x1f\xcf\x07"
+"\x99\x88\xa0\x76\x9c\x70\xcf\xfb\x0b\x18\xb7\x61\xf7\x0a\x0a\xf7\x27\x07\x0e\xf7\xce\x7d\x15\xc5\x8e\xb8\x95\xa9\x9a\x08\xc9\xaa"
+"\xb0\xc4\xcd\x1a\xc4\x73\xb6\x59\xac\x1e\xb0\xad\x9c\xae\xb8\x1a\xea\x34\xcf\xfb\x0e\x5b\x62\x82\x77\x61\x1e\x8c\x98\x05\xa6\x8c"
+"\x72\xa2\x6e\x1b\x6e\x74\x75\x6e\x1f\x80\x07\x8c\x63\x05\x60\x8a\x80\x87\x70\x1e\x86\x72\x88\x74\x86\x1a\x71\xa3\x76\xa8\xa6\x99"
+"\x98\xad\x95\x1e\xd2\x9f\xb0\xa6\xd5\x1b\xcc\xb6\x71\x65\x61\x5c\x72\x3f\x1f\x78\x06\x4b\x74\x7d\x65\x64\xa3\x7e\xd0\x1f\xab\x06"
+"\xe3\xaf\x77\x5b\x56\x5c\x6f\x32\x43\x5a\x99\xaf\x4f\x1f\xa2\x66\x7d\x91\x7b\x1b\x6f\x72\x71\x6f\x6f\x99\x7b\xbc\x70\x1f\xc5\x6b"
+"\xc6\x78\xc7\x85\x08\x36\x93\x0a\xf7\xe0\x7f\x15\xbd\x8d\xb6\x93\xa7\x98\x08\xc4\xa4\xac\xb6\xbe\x1a\xb4\x7a\xa9\x65\xa6\x1e\xa3"
+"\xa6\x95\xa3\xa8\x1a\xd6\x3b\xc1\xfb\x01\x57\x62\x80\x73\x64\x1e\xc1\x80\x80\x99\x6b\x1b\x6f\x73\x76\x72\x84\x8d\x7e\x8c\x82\x1f"
+"\x8e\x7e\x8c\x7b\x6e\x1a\x8a\x5c\x05\xb4\x0a\x1f\x67\x8a\x7f\x8b\x82\x89\x08\x71\x84\x7e\x7b\x6f\x1a\x66\xa2\x7e\xcb\x1e\x95\x06"
+"\xd9\xba\x7f\x76\x74\x58\x79\x4a\x4b\x4f\x9a\xac\x4e\x1f\x95\x78\x80\x8e\x7f\x1b\x70\x71\x72\x71\x65\xb5\x6d\xe7\x71\x1f\xab\x82"
+"\xa3\x86\xa8\x88\x08\x31\x93\x0a\xf8\x02\xf7\xd1\x15\x90\x92\x98\x9d\xa1\xaa\x8c\x8c\x8d\x8f\x90\x92\x90\x92\x8f\x91\x8d\x8f\xa3"
+"\xaf\x18\x8c\x8c\x8f\x91\x92\x93\x08\x60\x8f\x9c\x78\xad\x1b\xb0\x99\xf7\x30\x1d\x65\x77\x59\x69\x1f\x44\x24\x72\x69\x85\x87\x75"
+"\x8a\x19\x82\xf7\x00\x06\xc9\x8d\x9e\x97\xb1\x1a\xb2\x75\x98\x4b\x1e\x29\x06\x4c\x74\x7e\x65\x66\xa4\x7a\xc3\x8c\x1f\xfb\xf9\x07"
+"\x4f\x8a\x76\x7e\xdb\x0a\x81\xf7\x24\xa2\x06\xa9\x8d\xae\x6d\xaa\x52\xc6\x20\x18\x9b\x6c\x98\x7a\x91\x89\x92\x88\x95\x8a\xae\x89"
+"\x08\x55\x2f\x0a\xf7\x32\x25\x07\x50\xf4\x6e\xbe\x77\xa4\x6d\xa4\x19\x0e\xf8\x79\xf4\x15\x59\xcf\x76\xa7\x74\xa1\x74\x99\x19\xcd"
+"\xcd\x99\x97\x05\x6d\x92\x9c\x7d\xa8\x1b\xb1\x9a\xa2\xc6\xbf\x77\x9f\x57\x58\x5f\x7a\x6a\x6d\x1f\x49\x45\x74\x73\x86\x89\x75\x8a"
+"\x19\x81\xb7\x06\xc1\x8c\xa0\x99\xaf\x28\x1d\x36\x06\x4b\x74\x7d\x66\x66\xa0\x7c\xc2\x8a\x1f\xfb\x6d\x07\x54\x8a\x76\x7c\x67\x1a"
+"\x65\xa2\x7d\xcb\xe2\x0a\xa3\x06\xa5\x8c\xa9\x77\xab\x62\xbd\x48\x18\xad\x5f\x8f\x89\xb1\x8a\x08\x92\x64\x06\x24\x0a\xf7\x24\x07"
+"\x0e\xf7\xdd\xf7\x57\x15\x9f\x6c\xc5\xfb\x00\x98\x72\x99\x76\x90\x89\x19\x94\x1d\x99\x4a\x1f\x7c\x06\x53\xf4\x73\xb8\x72\xaa\x6d"
+"\xa4\x19\x8e\x92\x92\x94\x98\x9e\x9f\xa7\x19\x8e\x91\x8d\x8d\x8e\x8f\x90\x93\x8f\x91\x8e\x8e\x92\x97\x93\x97\x93\x97\x8d\x8d\xf7"
+"\x5c\x1d\xb1\x98\xf7\x14\x1d\x66\x55\x05\x9a\x84\x7c\x95\x79\x1b\x82\x7e\x86\x84\x83\x1f\x80\x83\x88\x82\x72\x1a\x50\x7f\xf7\x00"
+"\x07\xca\x8d\x9e\x97\xb2\x1a\xb1\x75\x98\x4a\xf7\x02\x1d\xcb\xa2\x98\xb1\xae\x73\x9d\x5c\x1f\x86\x06\x85\xf7\x24\x97\x44\x06\x6a"
+"\x9c\x76\xa6\xa8\x9a\x9d\xaf\x1e\x0e\xf8\x04\xf7\x06\x15\xbd\x48\xad\x5f\x8f\x89\xb1\x8a\x19\xb7\x06\xb5\xa0\x9d\xae\xb1\x75\x97"
+"\x47\x8c\x1f\x58\xcf\x65\xbe\x88\x8f\x6e\xa4\x19\xd0\xbd\x99\x98\x05\x6d\x92\x9c\x7d\xa9\x1b\xb1\x9a\xa2\xc6\xbf\x77\x9f\x57\x57"
+"\x5f\x7a\x6a\x6d\x1f\x5c\x59\x05\x97\x84\x81\x91\x7e\x1b\x89\x89\x8b\x8a\x87\x1f\x91\x94\x8e\x95\x98\x1a\xb0\x73\x99\x4c\x1e\x36"
+"\x06\x4b\x74\x7d\x66\x66\xa0\x7c\xc2\x8a\x1f\xfb\x6d\x07\x54\x8a\x76\x7c\x67\x1a\x65\xa2\x7d\xcb\x1e\xe0\x06\xcb\xa2\x99\xb0\xae"
+"\x73\x9d\x5c\x1f\x89\x06\x89\xd1\x06\xaf\x8a\x05\x86\x07\x6b\x9a\x77\xa2\x9c\x98\x96\x9d\x90\x1e\x42\xf7\x1e\x15\x88\x84\x85\x89"
+"\x7e\x1b\x81\xb6\x06\xa2\x8c\x91\x8c\x99\x8f\x08\x85\x83\x8a\x86\x74\x1a\x0e\xef\xf8\x60\x15\x8e\x06\x92\x06\x91\x06\x90\xfb\xf9"
+"\x06\x4f\x8a\x76\x7e\xdb\x0a\x81\xf7\x24\xa2\x06\xa9\x8d\xad\x6d\xab\x52\xc5\x20\x18\x98\x72\x99\x76\x90\x89\x08\x94\x1d\x98\x4a"
+"\x1f\x7c\x06\x53\xf5\x73\xb7\x72\xab\x6c\xa4\x19\x8f\x92\x92\x94\x98\x9d\x9f\xa8\x19\x8d\x8f\x8e\x8f\x8e\x8f\x90\x92\x8f\x91\x8d"
+"\x8f\x94\x97\x92\x96\x93\x97\x8d\x8e\xf7\x5c\x1d\xb0\x99\xf7\x14\x1d\x44\x24\x73\x68\x85\x88\xf7\x62\x1d\xb1\x1a\xad\x7c\x98\x5c"
+"\x8f\x1e\x8c\x8c\x05\xfb\x9c\xfb\x0d\x4a\x0a\x9c\x07\x0e\xf4\xf7\xd5\x15\xac\xfb\x6d\x06\x53\x8a\x76\x7c\x67\x1a\x64\xa2\x7e\xcc"
+"\xe2\x0a\xa3\x06\xa5\x8c\xa8\x77\xab\x62\xbd\x48\x18\xae\x5f\x8e\x89\xb1\x8a\x08\xb7\x06\xb5\xa0\x9d\xae\xb1\x75\x98\x47\x1f\x58"
+"\xd0\x76\xa6\x75\xa2\x74\x99\x19\xcd\xcd\x98\x97\x05\xf7\x1c\x1d\x74\x73\x86\x89\x75\x8a\x19\x81\xb7\x06\xc1\x8c\xa0\x99\xaf\x28"
+"\x1d\xfb\x81\xfb\x4f\x4a\x0a\x0e\xf8\x93\xf2\x15\xf7\xfa\x07\xad\x8f\x9d\x9d\xa9\x1a\x9b\x83\x9a\x7d\x96\x1e\x92\x4b\x1d\x7a\x93"
+"\x7b\x99\x81\x1e\x84\x96\x95\x89\xa6\x1b\x96\xfb\x14\xfb\x62\xf7\x14\x96\x06\xa4\x95\x8c\x91\x94\x1f\x9b\x95\x95\x9b\x9e\x33\x1d"
+"\x4b\x1d\x6d\x9d\x79\xad\x87\x1e\xfb\xfa\x89\x07\xf7\x10\x0a\x7a\x1a\x7a\x93\x7b\x99\x82\x3f\x1d\xf7\x0d\x31\x1d\x80\xf7\x13\xf7"
+"\x62\xfb\x13\x80\x06\x72\x82\x89\x4f\x0a\x7a\x7a\xf3\x0a\x55\xe9\x0a\xf8\x92\xf3\x15\xf7\x6e\x07\xaf\x8f\x9c\x9c\xa9\x1a\xad\x73"
+"\x9d\x5d\x1e\x2b\xd0\x1d\xf7\x5c\x4f\x86\x39\x0a\xf1\x63\x06\x5d\x9c\x75\xaf\xaf\x9e\xa2\xb8\x1e\xf7\x23\x07\x0e\xf7\xe9\x7e\x15"
+"\xc7\x8d\xc0\x98\xb2\xa0\x08\xb9\xa3\xa8\xac\xa7\x64\x1d\x80\x85\x08\x7d\x72\x65\x83\x5d\x1b\xfb\x09\xd8\x0a\x94\x80\x8f\x75\x08"
+"\x64\x93\x9f\x0a\x52\x1b\xfb\x30\x74\x1d\x4b\x07\xfb\x12\xea\x26\xf7\x1f\x75\x1e\x31\xd6\x1d\xf7\xf4\x7c\x15\xf7\x13\x90\xe5\xb7"
+"\xc3\x1a\xa7\x72\xa3\x6e\xf7\x3e\x1d\xb0\xd7\xf7\x00\x0a\x90\x83\x8f\x7b\x90\x75\x8e\x85\x93\x84\x08\x83\x94\x9b\x85\x99\x47\x0a"
+"\xd4\x07\xb9\x7b\xa0\x67\x75\x80\x83\x78\x84\x1e\x9d\x65\x5a\xa2\x1d\x41\xad\x4d\xc9\x63\x1f\xad\x75\xaf\x81\xc5\x85\x08\x36\x88"
+"\x0a\xb2\x81\xa8\x1b\xcc\xb9\xb3\xc3\x4e\x0a\x2b\x0a\x0e\xf7\xf7\x8e\x15\xf7\x42\xf7\xd3\xa7\x0a\x82\x1e\x95\x84\x92\x89\xa1\x8a"
+"\xfb\x04\xfb\x5d\x18\xfb\x00\xf7\x5d\x05\xaf\x8d\xa0\x9e\xa9\x22\x1d\x31\x06\x77\x84\xf7\x67\x1d\x6f\x9d\x79\xab\x86\x1e\xf7\x42"
+"\xfb\xd3\x05\x27\x89\xf7\x4e\x1d\x7a\x93\x7c\x99\x81\x1e\x84\x95\x99\x88\xa3\x1b\xf7\x0a\xd0\x0a\x81\x82\x8c\x6e\x1b\x89\x06\x0e"
+"\xf7\xf6\xf7\x6a\x15\xa1\x07\xf7\x36\xf7\x75\x05\xb7\xa2\x9d\xad\x9b\xae\x0a\xfb\x0c\x32\xf7\x0d\x05\xa3\x95\xb7\x0a\x77\x4b\x0a"
+"\x95\x84\x94\x89\xa4\x8a\xf7\x37\xfb\x75\x18\x75\x46\x07\xf7\x04\x0a\x95\x94\x88\xa5\x1b\xd0\x70\x4e\x06\xeb\x1d\xa6\xcf\x06\xad"
+"\xa1\x9b\xa5\x94\x85\x99\x85\x92\x1f\x94\x83\x7e\x8e\x74\x1b\x0e\xf7\x85\x88\x15\x4e\x06\x67\x76\x7b\x71\xf4\x0a\xc8\x81\x89\x06"
+"\xe9\x1d\x9a\x88\xa2\x1b\xf7\x0b\xd0\x0a\x80\x83\x8c\x6e\x1b\x89\x95\xd0\x06\xad\xa7\x1d\x73\x1b\x47\x91\x06\xf7\x42\xf7\xd3\x99"
+"\x0a\xfb\x5d\x18\xfb\x01\xf7\x5d\x05\xaf\x8d\xa0\x9e\xa9\x31\x0a\x83\x1d\xf7\x42\xfb\xd4\x05\x0e\xf8\xa8\xf3\x15\xfb\x36\xf7\x4c"
+"\xf7\x2d\xf7\x41\x05\xb0\x8c\xa1\x9e\xaa\x22\x1d\x31\x06\x2e\x1d\x75\x95\x7e\xf7\x35\x1d\x7d\x95\x1e\x93\x80\x80\x8d\x71\x1b\x30"
+"\x06\x2e\x1d\x7b\x94\x7b\x99\x82\x1e\x93\x84\x93\x89\xa0\x8a\xf7\x2f\xfb\x41\x18\xfb\x37\xfb\x4d\x05\x65\x74\x77\x6c\x68\xa3\x7a"
+"\xba\x1f\xf7\x02\x06\xba\xa2\x9c\xae\xa7\x78\x9e\x6c\x8e\x1f\xe9\xf5\xe8\x22\x05\x6b\x87\x78\x78\x6f\xf3\x0a\x55\x06\x24\x0a\xf7"
+"\x32\x07\x0e\xf8\xa2\xf2\x15\xfb\x26\xf7\x0a\xf7\x13\xf0\x9b\x8d\x91\x8c\x92\x8f\x19\x9b\x94\x95\x9c\x9d\x1a\x9c\x83\x9a\x7c\x95"
+"\x1e\x93\x2f\x1d\x30\x06\x76\x85\x8a\x88\x81\x1f\x78\x85\x7d\x76\x76\x1a\x7a\x92\x7e\x9b\x7f\x1e\x55\x60\x55\xb5\x05\x9a\x97\x93"
+"\x9a\x9c\x1a\x9b\x68\x0a\x81\x1f\x78\x85\x7d\x76\x76\x1a\x6d\x9d\x7a\xaf\xf6\x1d\x71\x97\x1f\xcd\xf7\x4d\x1d\xba\x1e\xf7\x08\xe4"
+"\x0a\xf8\x8c\xf3\x15\xf7\xf8\x07\xc1\x8e\x8f\x1d\x4c\x73\x9a\x1d\x62\x4f\x64\x7b\xa8\x0a\xfb\x09\xc2\x4e\xf7\x09\x0a\x23\x55\x07"
+"\x4b\x74\x7d\x65\x65\xa2\x7e\xcb\x8a\x1f\xf7\x1d\x56\x06\x5f\x9e\x73\xae\xae\x9e\xa2\xb8\x1e\xf7\x31\x07\x0e\xf8\x82\xf3\x15\xf7"
+"\x6e\xc2\x0a\x4c\x07\x6f\x59\x6b\x81\x62\x1b\x62\x7c\x95\xa6\x1f\xcb\x07\xc6\x8d\x9e\x97\xb0\x28\x1d\x3a\x06\x4d\x73\xdf\x0a\x35"
+"\xc0\x5d\xef\xbc\xb7\x95\xa0\xb4\x1e\x56\x5e\x07\x4b\x74\x7d\x65\x65\xa2\x7d\xcb\x1f\xf7\x14\xe4\x0a\xf7\xe1\xf7\x48\x15\xa3\x92"
+"\x9a\x92\xa3\x99\x08\x23\x54\x07\x4b\x74\x7d\x64\x66\xa2\x7d\xcb\x1f\xf7\x2a\xba\x0a\x4b\x73\x7d\x66\x68\xa4\x79\xbb\x1f\x8f\xfb"
+"\x17\x06\x76\x7c\x84\x87\x68\x79\x08\xbe\x07\xad\x7b\x9f\x6f\x81\x7f\x86\x84\x83\x1e\x80\x82\x88\x83\x72\x1a\x45\x07\x66\x90\x82"
+"\x98\x8a\xc5\x08\xf7\x04\x07\xc9\x8c\x9f\x98\xb0\x28\x1d\x32\x06\x4b\x74\x7d\x65\x68\x9f\x7d\xc0\x89\x1f\xfb\x08\x07\x8e\xfb\x0c"
+"\xb9\x57\xf5\x85\x08\x85\x07\x6a\x9c\x76\xa6\x94\x9a\x90\x91\x92\x1e\x94\x93\x8f\x97\xa2\x1a\x0e\xf7\xbf\xf7\x15\x15\xb0\x91\xa1"
+"\x92\xa7\x9a\x08\x55\x84\x07\x50\x74\x7c\x66\x66\xa3\x7c\xc5\x1f\xed\x8c\x05\xcb\x8c\xa2\x98\xb0\x1a\xad\x75\x9c\x5b\x8c\x1e\xf7"
+"\x6f\x07\xbb\x8c\xa1\x9c\xae\x1a\xaf\x73\x99\x4c\x1e\x40\x06\x4c\x73\x7d\x67\x68\xa1\x7a\xbc\x8a\x1f\x4b\x07\x67\x77\x76\x83\x6d"
+"\x85\x08\x98\x07\xad\x7d\x9e\x72\x81\x82\x87\x85\x84\x1e\x7f\x81\x89\x83\x72\x1a\x82\x07\x82\x90\x88\x94\x8a\x9b\x08\xf7\x05\x1d"
+"\x8c\x3c\xb2\x61\xdc\x81\x08\x72\x07\x6a\x9a\x77\xa4\xa5\x98\x9c\xaf\x1e\x0e\xf7\x5b\xf8\x60\x15\xc1\x06\xcb\xa2\x99\xb1\xb1\x74"
+"\x99\x4b\x1f\xfb\x29\x06\x4b\x74\x7d\x65\x67\xa0\x7d\xc0\x89\x1f\xfb\xf9\x07\x55\x8a\x77\x7c\x68\x1a\x65\xa2\x7d\xcb\x1e\xdf\x06"
+"\xca\xa3\x99\xb0\xae\x73\x9d\x5b\x1f\x87\xf7\x17\x06\xb4\xc6\xb3\x9b\xb5\x1b\xb7\x98\x79\x50\x1f\xfb\x04\x07\x4d\x8a\x76\x7e\x66"
+"\x1a\x64\xa2\x7e\xcc\x1e\xe4\x06\xcb\xa2\x99\xb1\xae\x76\x9a\x57\x8c\x1f\xf7\x08\x07\xf7\x09\x54\xc8\x20\x58\x5f\x7f\x6e\x5a\x1e"
+"\x0e\xf7\x61\xf8\xaf\x15\xbe\x7b\xa1\x65\x65\x7b\x75\x58\x1e\xfc\x48\x89\x07\x41\x0a\xbe\xc2\xa0\x96\x86\x0a\x5b\x78\x69\x68\x1e"
+"\x0e\x21\x0a\x0e\xf8\x20\xf3\x15\xfb\x21\xfb\x32\x06\x24\x0a\xc1\xf7\x1e\x07\xcb\xa2\x99\xb1\xb1\x76\x98\x4c\x8c\x1f\xf7\xf8\x07"
+"\xc1\x8e\x8f\x1d\x4b\x74\x9a\x1d\x61\x4e\x65\x7c\xa8\x0a\xfb\x0a\xc2\x4f\xf6\xbe\xb7\x97\xa8\xbc\x1e\x0e\xf8\x16\xf2\x15\x5a\x06"
+"\x38\x8a\x05\xfb\x23\x07\x5f\x9e\x74\xae\xaf\x9d\xa2\xb7\x1e\xb4\xf7\x14\x07\xcb\xa2\x99\xb1\xb0\x76\x98\x4d\x8c\x1f\xf7\x6e\x07"
+"\xbb\x8d\xa1\x9c\xad\x1a\xb0\x73\x99\x4c\x1e\x40\x06\x4b\x74\x7d\x66\x68\xa1\x7b\xbc\x89\x1f\x4c\x07\x6f\x58\x6b\x81\x63\x1b\x62"
+"\x7c\x95\xa7\x1f\xca\x07\xc6\x8e\x9d\x97\xb0\x1a\xb1\x74\x99\x4c\x1e\x3a\x06\x4c\x74\xdf\x0a\x34\xc0\x5d\xee\xbd\xb6\x95\xa1\xb5"
+"\x1e\x0e\x9d\xf7\xb4\x15\x96\x30\x93\x6e\xa1\x63\x08\x35\xbc\xea\x54\xec\x1b\xf7\x30\xf7\x13\xf7\x18\xf7\x37\xf7\x38\xfb\x12\xf7"
+"\x18\xfb\x31\xfb\x02\x26\x47\x22\x5c\x1f\xf6\x6f\x05\xc6\xa9\xc6\xb1\xc9\x1b\xbf\xbe\x70\x5d\xad\x1f\xa3\x6a\x95\x6f\x8f\x57\x08"
+"\x7c\x37\x15\x43\x6a\x51\x61\x46\x1b\x46\x4d\xb8\xd0\x6e\x1f\x0e\x21\x1d\xfb\x1e\xf8\x0e\x48\x1d\x23\x0a\xfb\x75\xf8\x7b\x3b\x1d"
+"\xf7\xc0\xf8\xd6\x15\xfb\x30\xfb\x13\xfb\x19\xfb\x37\xfb\x37\xf7\x13\xfb\x18\xf7\x30\xf7\x2e\xf7\x15\xf7\x18\xf7\x33\xe8\x6b\xd5"
+"\x4c\xc5\x1f\xbc\x55\x49\xa5\x47\x1b\xf7\x3f\xfb\xe7\x15\x32\x76\x46\x4f\x3a\x1b\x3a\x46\xc7\xe4\x76\x1f\xdf\x04\xe3\x9e\xd1\xca"
+"\xdd\x1b\xdd\xd1\x4d\x32\x9e\x1f\xfb\xea\x06\x0e\x82\x0a\x30\x1d\x64\xf9\x4e\x48\x1d\x35\x1d\xfb\xa6\xf8\x2c\x3b\x1d\xa7\xf9\x6c"
+"\xf7\x4f\x1d\x7a\x94\x7a\xec\x1d\x0e\xf8\x3d\x95\x15\x7f\x9b\x96\x87\x9c\x1b\xd2\xba\xe5\xf7\x1e\xf7\x19\x5a\xe5\x43\x39\x61\x33"
+"\xfb\x3f\x1f\xfb\xd1\x07\x71\x9c\x79\xa4\xa3\x9c\x9d\xa5\x1e\xf7\xe6\x04\x9e\x07\xd0\xa1\xd3\xa0\xa1\x9e\x47\x3f\x2f\x7b\x51\x71"
+"\x75\x7c\xaf\xc3\x88\x1e\xfc\x04\xf7\xc0\x15\xfb\xd0\x07\x8a\x67\x81\x6f\x7c\x86\x08\x7c\x83\x82\x7c\x7a\x1a\x89\x07\x8c\x73\x9e"
+"\x7a\xa5\x8d\x08\xee\x06\xf7\x06\xca\xec\xf7\x43\xf7\x06\x6d\xe1\x55\xb4\x1f\x6d\xa2\x73\x93\x5b\x8c\x8d\x93\x8c\x8e\x8e\x8e\x08"
+"\x90\x92\x8d\x91\x93\x1a\x96\x85\x96\x80\x91\x1e\x89\x8c\x05\x8f\x85\x83\x8d\x84\x1b\x71\x71\x6c\x64\x85\x1f\x86\x06\x6f\x79\x7b"
+"\x73\x74\x9d\x7b\xa7\x1f\xe1\x16\xdb\x8a\xa6\x57\xfb\x28\x1a\x2a\x79\x50\x69\x77\x1e\x83\x7c\x7a\x88\x61\x1b\x95\x9d\x94\xb2\xa9"
+"\x1a\x0e\xf7\x9f\xef\x15\x86\x8d\x69\x9a\x80\x91\x7d\x96\x19\x64\xab\x73\xce\xd6\x1a\xf7\x0a\xc3\xcb\xf3\xf3\xc3\x4c\xfb\x0b\x36"
+"\x6e\x46\x5a\x6d\x1e\x80\x84\x80\x85\x70\x80\x08\x27\xf7\x5f\x07\xa5\x94\x8c\x92\x96\x1f\x9c\x95\x96\x9e\x9d\x1a\x9c\x82\x9c\x7c"
+"\x95\x1e\x94\x7f\x81\x8d\x70\x1b\x5e\x06\xc8\xac\xae\xd5\xeb\x1a\xd9\x6e\xd7\x5d\xb6\x1e\xb6\x5d\x3b\xa5\x34\x1b\x34\x3b\x71\x60"
+"\x5d\x1f\x5d\x60\x6e\x3f\x3d\x1a\x2b\xae\x41\xc8\x6a\x1e\x5e\x06\x72\x82\xf7\x38\x1d\x83\x97\x95\x89\xa7\x1b\xf7\x5f\x06\x0e\x9a"
+"\x0a\x85\x1d\xe6\x16\xbe\x06\xf7\x34\xf8\x19\xf7\x35\xfc\x19\x05\xbe\x06\xfb\x42\xf8\x47\x05\x40\x06\x0e\xe6\xf8\x46\x15\xf7\x42"
+"\xfc\x46\x05\xd6\x06\xf7\x42\xf8\x47\x05\x58\x06\xfb\x35\xfc\x19\xfb\x34\xf8\x19\x05\x58\x06\x0e\xf7\xbd\xf8\x89\x15\xfb\x1b\xfb"
+"\x05\xfb\x04\xfb\x1b\xfb\x22\xf7\x02\xfb\x04\xf7\x20\xf7\x1c\xf7\x03\xf7\x04\xf7\x1f\xf7\x1f\xfb\x03\xf7\x03\xfb\x1e\x1f\x70\xfb"
+"\xad\x15\xfb\x36\x07\x35\x94\x3e\xd6\x87\xd9\x08\xc2\x04\x91\xde\xd5\xd5\xe2\x96\x08\xfb\x3c\x07\xc2\x54\x15\xf7\x3b\x06\x88\x42"
+"\x3b\x3d\x37\x80\x08\xf7\x6d\x04\xf7\x3c\x07\xdf\x82\xd7\x3f\x92\x38\x08\x0e\x9c\x16\xf8\xcb\xf8\xcb\xfc\xcb\x06\xf8\x92\xfc\x92"
+"\x15\xfc\x59\xf8\x59\xf8\x59\x06\x0e\xca\xf7\xe7\x15\xfb\x2b\x90\x68\xa6\x5f\x1e\x47\xb5\xd8\x62\xe1\x1b\xbf\xbb\x9a\xa6\xb4\x1f"
+"\xbe\xae\xa8\xb9\x95\xca\x08\x90\xac\x8c\xa1\xed\x1a\xf7\x51\x07\x9f\x80\x99\x7b\x7b\x82\x7f\x75\x1e\xfb\x54\x07\xfb\x10\x86\x62"
+"\x78\x6a\x1e\x57\x6d\x4a\x68\x49\x1b\x63\x62\x98\xa2\x6a\x1f\x62\xa8\x78\xac\x85\xbb\x87\xa9\x8b\x8b\x8a\xf7\x01\x08\xf7\x54\x07"
+"\xa0\x81\x98\x7b\x7a\x82\x7f\x75\x1e\x0e\xf7\xe1\x16\xf7\x67\xf8\xeb\x05\x55\x06\x4c\xfb\x37\x05\xfb\x97\x06\x4d\xf7\x37\x05\x58"
+"\x06\xf7\x5f\xfc\xeb\x05\xf7\x2a\xf8\x15\x15\xfb\x03\xfb\xe2\x05\x84\x06\x24\xf7\xe2\x05\x0e\xbb\x0a\x95\x98\x88\xa4\x1b\xaa\xfb"
+"\x3c\x06\x58\x58\x74\x7f\x5a\x1b\x51\x71\x9f\xb8\x1f\xf7\xa1\xfb\x0c\x07\x72\x81\x89\x86\x82\x32\x0a\x84\x95\x96\x88\xa6\x1b\x97"
+"\xfb\x3e\x06\x52\x9f\x61\xb3\x6e\x1e\x73\xad\xb5\x7f\xb9\x1b\xc1\xab\x98\xb3\xba\x1f\x62\x9b\x07\x5b\x1d\xa8\xb8\xba\xc0\xa8\x1f"
+"\xaa\x9c\x93\x96\xa2\x4c\x0a\x81\x91\x83\x8d\x76\x8c\x08\x0e\x3f\x0a\x0e\x3f\x0a\xfb\xb9\xf8\x2e\x59\x0a\x3f\x0a\x23\xf8\x3d\x6a"
+"\x0a\x78\x7b\x7f\x83\x7a\x81\x1e\x43\x6b\x0a\x9c\x7c\x9e\x9a\x97\x93\x9c\x95\x1e\xf7\x0e\xdf\x15\x6b\x72\x73\x6d\x6c\xa4\x73\xab"
+"\xaa\xa5\xa3\xa9\xaa\x72\xa3\x6b\x1f\xfb\xaa\x4a\x1d\x3f\x0a\x36\xf8\x0e\xf7\x20\x1d\x7c\x7f\x85\x81\x7e\x1a\x79\x9c\x7b\x9e\x94"
+"\x95\x8f\x95\x97\x1e\x0e\x2c\x1d\xfb\x6a\xf8\xeb\xe4\x1d\x2c\x1d\x4e\xc5\x1d\x3e\x0a\xf7\x6f\xf8\xe8\x27\x0a\xf7\x44\x1d\xae\x8f"
+"\x9d\x9d\xa8\x22\x1d\x2e\x8e\x1d\x82\x1e\x83\x96\x95\x89\xa6\xd4\x0a\xb3\xa1\x9d\xac\x9c\x83\x9a\x7d\x95\x1f\x93\x81\x80\x8d\x70"
+"\x1b\x2f\xf7\x11\x1d\x6d\x9e\x79\xaf\x88\x1e\xe0\xfb\xd6\x05\xef\x06\xcc\xf8\xd6\x2e\x0a\x3e\x0a\x63\xf9\x0c\x28\x0a\x3e\x0a\x63"
+"\xf9\x24\x5a\x0a\xf8\x44\xf7\xe1\x15\x22\x8e\x5f\xa3\xc1\x1a\xa3\x99\xa4\xa0\x9a\x1e\x99\x94\xa1\x91\xa8\x8e\x08\xcb\x8f\xa1\x99"
+"\xb0\x1a\xad\x72\x9d\x5e\x1e\xfb\x45\x06\x5e\x71\x79\x6a\x6b\xa1\x7b\xbc\x87\x1f\x6a\x72\x7d\x71\x63\x1a\x5c\x9f\x62\xb0\x6a\x1e"
+"\x4c\x6a\x6d\x5b\x44\x1a\x55\xa3\x5b\xb6\x6e\x1e\xa2\x7b\xad\x80\xcd\x7c\x08\xc3\x7e\x93\x86\x78\x1a\x77\x7f\x84\x69\x88\x1e\x5a"
+"\x87\x76\x7b\x6a\x1a\x69\xa2\x7a\xb9\xe9\xc8\xc0\xdc\xb7\x78\xb0\x68\xa3\x1e\x77\x98\x68\x97\x5c\x95\x08\x3d\x9a\x77\x9a\xb4\x1a"
+"\xc7\xcb\xab\xf7\x0d\x1e\x0e\xb6\x1d\xf7\x7e\xf7\x94\x2e\x0a\x59\x1d\xf7\x15\xf7\xe2\x5a\x0a\x40\x0a\xb2\xf8\x81\x27\x0a\x40\x0a"
+"\xfb\x08\xf8\xa5\x36\x0a\x0e\xf7\xd8\xf8\x87\x15\xfb\x0f\xfb\x11\x57\x29\x23\x1a\x51\xa6\x52\xb5\x69\x1e\xa5\x77\xab\x7d\xcb\x79"
+"\x08\xc6\x7a\x8f\x89\x77\x1a\x75\x7b\x7f\x6b\x89\x1e\x59\x87\x78\x7c\x69\x1a\x69\xa2\x7a\xb7\xe7\xcd\xc6\xdd\xd0\x65\xb3\x32\xa4"
+"\x1e\x56\x99\x74\x93\x7e\x93\x08\x73\x9a\x7d\xa8\xab\x1a\xac\x93\xaa\x99\xa6\x1e\xad\xcd\xbf\xcc\xce\xc7\x9a\x99\x92\x91\xa4\xa0"
+"\x91\x91\x18\xf0\xfb\x64\x07\x3a\x0a\x0e\x7e\x98\xf8\xed\x9b\x06\xf2\x0a\xf7\x00\x0b\xaf\x9c\x90\x8f\x8f\x93\x8f\x8e\x8e\x97\x92"
+"\x92\x0c\x0c\xba\x8f\x8e\x8f\x90\x8e\x98\x93\xa0\x90\x90\xaa\x0c\x0d\xf8\xec\x14\xb7\x13\x00\xe9\x02\x00\x01\x00\x07\x00\x10\x00"
+"\x20\x00\x4b\x00\x55\x00\x61\x00\x66\x00\x6d\x00\x7c\x00\x89\x00\x90\x00\x97\x00\xa0\x00\xa5\x00\xb4\x00\xb8\x00\xc5\x00\xce\x00"
+"\xd7\x00\xee\x01\x1f\x01\x31\x01\x3c\x01\x44\x01\x56\x01\x5a\x01\x64\x01\x6c\x01\xa3\x01\xaa\x01\xe4\x02\x2a\x02\x61\x02\x82\x02"
+"\x86\x02\x92\x02\xb0\x02\xb6\x02\xbd\x02\xc3\x02\xcc\x02\xd3\x02\xde\x02\xe6\x02\xee\x02\xf4\x02\xfb\x03\x02\x03\x05\x03\x31\x03"
+"\x41\x03\x79\x03\x7c\x03\x9d\x03\xe7\x03\xf2\x04\x16\x04\x22\x04\x37\x04\x3f\x04\x50\x04\x55\x04\x59\x04\x65\x04\x77\x04\x7f\x04"
+"\x8d\x04\x95\x04\x9f\x04\xa4\x04\xab\x04\xb7\x04\xc6\x04\xd1\x04\xdc\x04\xe7\x04\xf8\x04\xfe\x05\x07\x05\x0d\x05\x14\x05\x1b\x05"
+"\x20\x05\x28\x05\x30\x05\xa9\x06\x6c\x06\xda\x07\x12\x07\x6c\x07\xb2\x07\xe4\x07\xeb\x08\x26\x08\xa4\x08\xe4\x09\x5f\x09\xa0\x09"
+"\xd1\x0a\x32\x0a\x7f\x0a\x9a\x0a\xc1\x0a\xe4\x0a\xe8\x0a\xec\x0a\xfd\x0b\x33\x0b\x47\x0b\x53\x0b\x92\x0b\xb4\x0b\xcf\x0b\xe7\x0b"
+"\xee\x0b\xfb\x0b\xfe\x0c\x1f\x0c\x32\x0c\x39\x0c\x4b\x0c\x58\x0c\x83\x0c\xad\x0c\xc8\x0c\xe2\x0c\xe8\x0c\xed\x0d\x0b\x0d\x0e\x0d"
+"\x29\x0d\x31\x0d\x4c\x0d\x6b\x0d\x71\x0d\x82\x0d\xa3\x0d\xb3\x0d\xbc\x0d\xcf\x0d\xea\x0d\xfb\x0e\x0f\x0e\x2c\x0e\x38\x0e\x44\x0e"
+"\x51\x0e\x5e\x0e\x7d\x0e\x9b\x0e\xa4\x0e\xb8\x0e\xc8\x0e\xcd\x0e\xe0\x0e\xf1\x0f\x0d\x0f\x21\x0f\x2c\x0f\x31\x0f\x3f\x0f\x59\x0f"
+"\x72\x0f\x8b\x0f\xa4\x0f\xb2\x0f\xbe\x0f\xd6\x0f\xe1\x0f\xf8\x0f\xfd\x10\x0e\x10\x25\x10\x30\x10\x36\x10\x4c\x10\x57\x10\x64\x10"
+"\x79\x10\x85\x10\x99\x10\xa8\x10\xb7\x10\xc3\x10\xc7\x10\xd2\x10\xe5\x10\xf2\x10\xf6\x11\x08\x11\x13\x11\x1e\x11\x23\x11\x34\x11"
+"\x3f\x11\x50\x11\x58\x11\x5f\x11\x6f\x11\x76\x11\x7f\x11\x86\x11\x94\x11\x9a\x11\x9f\x11\xae\x11\xbd\x11\xcc\x11\xd6\x11\xe4\x11"
+"\xf2\x11\xfb\x12\x08\x12\x15\x12\x22\x12\x2f\x12\x3b\x12\x47\x12\x53\x12\x5f\x12\x69\x12\x71\x12\x79\x12\x81\x12\x89\x12\x94\x12"
+"\x9f\x12\xaa\x12\xb5\x12\xc0\x12\xcb\x12\xd6\x12\xdf\x80\x82\x8d\x6f\x1b\x0b\x85\x0a\xf7\xc2\x29\x0a\x2a\x06\x0b\x81\x0a\xfb\x0d"
+"\xf0\x2f\xf7\x18\xf7\x18\xf0\xe7\xf7\x0d\x1e\x0b\x8d\x1d\x42\x7f\x7b\x5a\x1e\x75\x83\x80\x7c\x75\x1a\x6e\xb5\x0a\x46\x72\x5a\x5c"
+"\x1f\x72\x71\x7c\x68\x6c\x1a\x42\xde\x50\xf2\xc2\xc5\x97\xa1\xba\x1e\x8c\xf7\x08\x44\x0a\x0b\x5f\x9e\x74\xae\xae\x9e\xa2\xb7\x1e"
+"\x0b\x86\x1d\xf7\xec\x06\xb9\xa3\x9d\xad\x91\x1d\x0b\xb9\x0a\x9a\xb0\x0a\xac\x0a\x8f\x97\x99\x1e\x0e\x36\x0a\xf7\x64\x16\xa0\x1d"
+"\xa7\xab\xae\x6f\xa6\x67\x1f\x0e\x06\xb9\xa3\x9c\xae\x9b\x2a\x1d\x81\x8d\x70\x1b\x0b\x1a\x69\xa3\x79\xb9\x1e\x0b\xf7\xf6\xf7\x80"
+"\x7b\x0a\x0b\x07\x68\x87\x7a\x7a\x6d\x2a\x0a\x0b\x69\xa3\x79\xb9\x0b\xe6\x0a\x9a\x88\x8e\x75\x9d\x1f\xf7\x2d\x1d\xa0\x95\x6f\x0a"
+"\x07\x24\x0a\x0b\x07\xae\x8f\x9c\x9c\xa9\x1a\xad\x73\x9d\x5d\x1e\x0b\x1a\x9c\x83\x9a\x7d\x95\x1e\x93\x0b\x73\x1d\x7a\x93\x7c\x99"
+"\x81\x1e\x0b\xf7\x45\xf8\x03\x15\xf7\x91\xfc\x03\x05\xf4\xf8\x61\x06\xce\x1d\x94\x7b\x98\x9c\x0a\x06\x0b\xf7\xf6\xf8\xef\x15\xfb"
+"\x4a\x06\x71\x82\x89\x86\x81\xf7\x06\x0a\x7a\x93\x7c\x9a\x81\x1e\x83\x95\x97\x89\xa5\x1b\xd5\xfc\x20\xfb\x0a\x06\x71\x20\x1d\x69"
+"\xa3\x79\xb9\x1e\xf7\xec\x2b\x1d\x91\x1d\x0b\x15\xf7\x04\x0a\x94\x94\x88\xa6\x1b\xf7\x88\x06\xae\xa7\x1d\x73\x1b\x0e\x15\xa0\x1d"
+"\xa7\xab\xae\x6f\xa6\x67\x1f\x0b\x1f\x9c\x95\x96\x9d\xee\x0a\x0b\x15\xa8\x7e\x9b\x73\x73\x7e\x7c\x6d\x73\x0a\xa3\xa3\x98\x9b\xa8"
+"\x1e\x0b\x06\x3a\x0a\x0b\x5d\x73\x79\x69\x69\xa3\x79\xb9\x1f\x0b\x1f\x7b\x82\x81\x79\x7a\x1a\x0b\xf7\x5a\xf7\x68\x15\xe7\x06\xb3"
+"\x7d\xe2\x28\xbf\x2e\x8e\x85\x18\xdc\xec\x0a\x82\x9c\x7e\x94\x1e\x71\x1d\x80\x06\x65\xc5\x63\xba\x60\xb0\xc3\x1d\x06\xf7\x67\x04"
+"\xf7\x26\xf7\x00\x07\xc8\xb8\x6f\x64\x5d\x4f\x6a\x39\x1f\x0b\x6c\x0a\x65\x5a\x55\x0a\x0b\xf7\x44\x1d\xad\x8f\x9e\x9d\xa8\x22\x1d"
+"\x2e\x8e\x1d\x81\x1e\x84\x96\x96\x89\xa5\xd4\x0a\x9f\x93\x8d\x90\x94\x1f\x9a\x94\x95\x9d\x9c\x1a\x9c\x68\x0a\x82\x1f\x77\x85\x7d"
+"\x76\x76\x1a\x6d\x9e\x79\xaf\x88\x1e\xe0\xfb\xd6\x05\xef\x06\x0b\xf8\x7f\xf7\xd5\x15\x8d\x27\x1d\xfb\x04\x06\x5c\x73\x79\x68\x69"
+"\xa0\x7c\xbf\x89\x1f\xfb\x19\x07\x45\x74\x6e\x52\x72\x76\x91\x96\x7c\x1e\x7b\x98\x83\xa6\xb5\x1a\xf7\x81\xfb\x02\x07\xf7\x0f\x0a"
+"\xfb\x1a\x07\xfb\x16\xcf\x43\xf7\x0e\xc4\xba\x9b\xab\xad\x1e\xae\xac\x9d\xbe\xd1\x1a\x0b\xf7\x92\xf2\x15\xf7\x94\xf7\x83\x05\xde"
+"\xfc\x35\x20\x07\x74\x8d\x80\xd9\x0a\x94\xa6\x1a\x8f\xf7\x1a\x07\xfb\x92\xfb\x82\x05\x37\xf8\x4e\xe3\x07\xa4\x8a\x93\x84\x94\x1e"
+"\x9b\x82\x79\x94\x78\x1b\x6c\x78\x79\x69\x88\x1f\x0b\xe9\x1d\x99\x88\xa3\x1b\xf7\x04\x06\xa1\x99\x32\x1d\x9c\x9d\x1a\x9b\x83\x9a"
+"\x7c\x96\x1e\x93\x81\x81\x8c\x6f\x1b\x89\xf7\x3d\x06\x0b\xf8\xee\x80\x1d\x15\x6b\x72\x73\x6d\x6c\xa4\x73\xab\xf7\x00\x1d\x15\x6c"
+"\x55\x55\x7b\x55\x1b\x64\x6b\x9a\x9d\x99\x97\x9a\x9f\x98\x1f\x9c\xa6\xa7\x92\xb3\x1b\xac\xa9\x88\x84\xb6\x1f\x0b\x07\xa3\x96\x38"
+"\x1d\x0b\x65\x0a\xf7\x69\x27\x1d\x0b\x3e\x1d\x95\xa5\x1a\x0b\x3b\x0a\x7a\x93\x7c\x99\x81\x1e\x0b\x83\x34\x1d\x7b\x79\x1a\x0b\x06"
+"\x5e\x9e\x74\xae\xae\x9e\xa2\xb8\x1e\x0b\x1a\x7a\x93\x7c\x99\x81\x1e\x0b\x1a\x9b\x83\x9b\x7d\x95\x1e\x0b\x84\x8d\x75\x8c\x08\x0b"
+"\xbe\x72\xa8\x59\x96\x1f\x0e\x85\x81\x1f\x7b\x82\x81\x0b\xb1\x1d\x0e\xf7\x5a\xf7\x7c\x15\xd8\x88\x06\x47\x1d\x9b\x93\x98\x96\x72"
+"\x1d\xf7\x27\xfc\x59\x07\x6b\x1d\x7a\x7a\x92\x1d\x7a\x7a\x2a\x0a\xf8\x6f\xf7\x29\x06\xa4\x89\x94\xf7\x0c\x1d\x07\x0b\x89\x06\x41"
+"\x0a\xbf\xc3\x9f\x95\x86\x0a\x5c\x78\x69\x67\x1e\x0b\xa8\xf7\x85\x15\xfb\x27\xf7\x12\x20\xf7\x40\xd4\xd0\x9d\xa9\xb7\x1e\xaf\xa4"
+"\x9e\xa4\xa2\x64\x1d\x81\x85\x08\x7d\x71\x65\x83\x5e\x1b\xfb\x0a\x40\xdd\x0a\x95\x80\x8f\x75\x08\x64\x92\x9a\x7c\xa5\x0a\x53\x1b"
+"\xfb\x31\x74\x1d\x0b\x7c\x1d\x0e\xa2\x1d\x50\xa0\x58\xb4\x64\x1f\x5c\xbd\xca\x77\xed\x1b\xd5\xcb\x96\x9f\xb4\x1f\xb7\xa0\xa2\xa5"
+"\xa6\x1a\xa7\x73\xa3\x6d\x90\x0a\x0b\xcb\xf2\x15\x5f\xf7\x0c\x0a\xf0\x06\xf7\x87\xf8\x02\x05\xfb\x9a\x78\x07\x3a\x0a\xf7\x15\x06"
+"\xb9\xa3\x9d\xae\xad\x76\x9a\x58\x8d\x1f\xf7\xf8\x96\x07\x4f\x1d\xfb\x09\x06\xfb\x87\xfc\x00\x05\xf7\x98\xaa\x07\xba\xa3\x9d\xad"
+"\xad\x72\x9d\x5d\x1f\xfb\x15\x06\x5c\x73\x79\x6a\x69\x9f\x7a\xb4\x8a\x1f\x0b\x6b\x1d\x7b\x79\x92\x1d\x7b\x79\x2a\x0a\x0b\x15\x73"
+"\x7c\x7b\x73\x3f\xe0\x47\xe9\xe9\xe0\x6f\x1d\x82\x6a\x84\x1f\x61\x81\x63\x70\x56\x1b\x56\x62\xa6\xb5\x82\x1f\xab\x84\x82\x95\x76"
+"\x1b\x0e\x15\x6b\x72\x73\x6d\x6c\xa5\x73\xaa\xf7\x00\x1d\x98\x1d\x21\x05\x7f\x99\x95\x87\x95\x1b\xa1\x9e\x9d\x9f\x98\x84\x96\x7a"
+"\x99\x1f\x0e\x06\x71\x20\x1d\x2d\x0a\x1e\x0b\x5f\x0a\xfb\x6e\x07\x58\x8a\x76\x7b\x69\x1a\x68\xa3\x79\xb9\x1e\x0b\x71\x83\xca\x0a"
+"\x0b\x06\xaa\x0a\x0b\x06\x5d\x73\x79\x69\x6d\x9c\x7a\xae\x87\x1f\x0b\xa7\xa4\x72\x6e\x71\x76\x7b\x6b\x6b\x76\x9c\xa3\xa9\xa3\xa4"
+"\xa8\x1f\x0b\x77\x1d\x7d\x95\x1e\x93\x80\x0b\x88\x96\x1b\xa1\x9e\x9d\xa0\x98\x85\x95\x78\x9a\x1f\x0e\x51\x1d\x7e\x84\x7f\x7e\x1a"
+"\x0b\x40\x1d\x92\x80\x9c\x7e\x1f\xf7\x19\x0b\x5d\x72\x75\x1d\x0b\x8a\x92\x84\x95\x74\x0a\x0b\xa3\x9c\xae\x9c\x83\x9a\x7d\x95\x1f"
+"\x93\x80\x0b\x83\x9a\x7d\x95\x1e\x93\x2f\x1d\x2f\x06\x77\x84\x8a\x88\x0b\x06\xa2\x97\x96\x9f\x9e\x7f\x96\x74\x1f\x0b\x15\x92\x97"
+"\x8e\x93\x93\x1a\x9d\x7b\x9b\x0b\xfb\x06\x05\x84\x81\x88\x82\x83\x1a\x78\x0b\xf8\xb4\xf8\x06\x15\xb9\x7b\xa0\x67\x75\x80\x83\x78"
+"\x84\x1e\x9d\x0b\xf7\x06\x0a\x7b\x93\x0b\xa2\x99\xb0\xae\x73\x9d\x5c\x1f\x0b\x93\x8e\x95\x97\x1e\x0e\x1a\x69\xa3\x79\xba\x1e\x0b"
+"\x74\x8d\x80\x91\x82\x1e\x0b\x06\xf7\x0f\x0a\x0b\x1e\xfb\x18\x07\x6e\x98\x7b\x0b\x1e\x9b\x81\x7a\x94\x78\x1b\x0b\xbd\xf2\x15\x87"
+"\x6d\x1d\x7b\x79\x1a\x68\xa3\x7a\xb9\x1e\xea\x06\xb1\xa2\x9f\xad\xa5\x7d\x9c\x71\x90\x1f\x9a\xbc\x05\xe1\x5b\x87\x06\x6c\x74\x75"
+"\x70\x6a\xa3\x76\xaf\x1f\xf7\xf5\xf7\x0d\xf7\x09\x1d\x79\xfb\x1f\xf7\x15\x96\x07\x6a\x8d\xa0\x77\xaa\x3e\x1d\x94\xa6\x1a\xd5\x07"
+"\xa5\x8a\x92\x84\x94\x74\x0a\x7a\x7b\x83\x7e\x80\x1f\x85\x82\x89\x86\x89\x79\x08\x80\xf7\x13\xf7\x0a\x51\x06\x8b\x1d\x93\xa6\x1a"
+"\xf7\x35\xfc\x4f\x07\xf7\x0e\x1d\x93\x06\xf0\xfb\x62\x15\x55\x06\xc1\xf7\x41\x05\x0b\xf8\xfb\xf7\x38\x15\xbb\x07\xcc\x7a\xc2\x6b"
+"\xb1\x1e\xb6\x67\x5d\xa3\x5a\x1b\x60\x6b\x7c\x66\x66\x1f\xaf\x6a\x66\x9b\x5d\x1b\x72\x51\x80\x7f\x65\x1f\x6e\x82\x7c\x7a\x72\x1a"
+"\x6e\xa2\x73\xa8\x92\x93\x8c\x8e\x94\x1e\x9d\xcc\x92\x8d\x9c\x1b\xa5\x9d\x79\x72\x1f\x7c\x07\x8e\x74\x79\x8d\x7c\x1b\x5b\x4c\x79"
+"\x73\x62\x1f\x5f\x70\x7b\x71\x5e\x1a\x2c\xd1\x4d\xf5\xb6\xaa\x94\xa1\xae\x1e\x80\x96\x96\x86\x9a\x1b\x9b\x97\x90\x95\x95\x1f\x75"
+"\xae\xa3\x84\xb4\x1b\xbb\xc9\x9a\xa0\xaf\x1f\x9c\x96\x95\x9b\x9e\x1a\xaa\x76\xa2\x6e\x7d\x7c\x87\x7e\x6e\x1e\x7f\x6f\x7a\x87\x75"
+"\x1b\x65\x75\xa1\xc1\x7b\x1f\xfb\x06\x69\x15\x6a\x62\x75\x81\x6e\x1b\x62\x71\x9f\xaa\x96\x8f\x93\x93\x91\x1f\x9a\x9e\xb2\x95\xb0"
+"\x1b\x9c\x98\x89\x86\xa1\x1f\xf7\x08\xd4\x15\xc0\x94\xa1\xa6\xad\x1b\xae\xa1\x70\x56\x93\x1f\x0b\xf8\xca\xf8\x75\x15\xf7\x51\x1d"
+"\x65\x77\x59\x69\x1f\x44\x24\x73\x69\x85\x87\xf7\x62\x1d\xb2\x1a\xb1\x75\x98\x4b\xf7\x02\x1d\xca\x6e\x0a\x86\x06\x86\xf7\x24\xa2"
+"\x06\xa9\x8d\xad\x6d\xab\x53\xc5\xfb\x00\x18\x98\x72\x99\x76\x90\x89\x08\x94\x1d\x99\x4a\x1f\x7c\x06\x53\xf4\x72\xb8\x73\xaa\x6c"
+"\xa4\x19\x8f\x92\x92\x94\x98\x9e\x9f\xa7\x19\x8e\x91\x8d\x8d\x8e\x8f\x90\x93\x8f\x91\x8d\x8e\xa3\xaf\x18\x8c\x8d\x90\xf7\x68\x1d"
+"\xb0\x99\xa1\xc6\x1f\x0b\xf7\x5a\xf7\x7c\x15\xd8\x88\x06\x47\x1d\x70\x1d\x94\xa6\x1a\xf7\x27\xfc\x59\x07\x57\x0a\xf8\x6f\xf7\x29"
+"\x06\xa3\x89\x95\x85\x94\x1e\x9b\x81\x79\x94\x79\x1b\x79\x7c\x83\x7e\x80\x1f\x83\x80\x89\x82\x70\x1a\x5d\xfb\x8c\x07\x0e\xaf\x0a"
+"\x7a\x93\x7c\x99\x81\x1e\x84\x95\x99\x88\xa3\x1b\xf7\x16\x2b\x1d\x9c\x83\x9a\x7d\x95\x1f\x81\x92\x4d\x0a\xf7\xf9\x07\xad\x90\x9d"
+"\x9c\xa9\x33\x1d\x80\x81\x8d\x70\x1b\xfb\x04\x06\xfb\x19\xfb\xaa\xfb\x1c\xf7\xaa\x05\xfb\x03\xd7\x0a\x77\x1a\x6d\x9d\x7a\xad\x86"
+"\x1e\xfb\xf9\x07\x65\x8a\x74\x78\x6b\x70\x0a\xf7\x15\x06\xb9\x67\x0a\x82\x8d\x6f\x1b\x6c\x06\x0e\xf8\x10\xf7\x71\x15\xf7\x13\xf0"
+"\x9c\x8d\x90\x8c\x92\x8f\x19\xa4\x1d\x80\x8d\x70\x1b\x30\x06\x77\x84\xf7\x67\x1d\x7a\x92\x7e\x9b\x7f\x1e\x55\x60\x55\xb5\x05\x9a"
+"\x97\x93\x9a\x9c\x1a\x9b\x68\x0a\x81\x1f\x78\x85\x7d\x76\x76\x1a\x6d\x9e\x7a\xae\xf6\x1d\x72\x97\x1f\xcc\xf7\x4d\x1d\x0b\x15\xf7"
+"\x36\xf7\x75\x05\xb7\xa2\x9d\xac\x9c\xae\x0a\xfb\x0d\x32\xf7\x0d\x05\xa3\x96\xb7\x0a\x76\x1a\x7b\x93\x7b\x99\x81\x1e\x95\x85\x94"
+"\x89\xa4\x8a\xf7\x37\xfb\x75\x18\xfb\x19\x4e\x07\xeb\x1d\x06\x0b\xd1\x1d\x81\x81\x7a\x8e\x0a\xf1\x1d\x71\x83\xb6\x0a\x88\x83\x77"
+"\x78\x1e\x77\x75\x68\x7e\x6a\x1b\x68\x6d\x93\xa0\x59\x1f\xe4\x07\xa3\x89\x94\x85\x4d\x1d\x80\x72\x1a\xfb\x32\x07\x93\x88\x05\x61"
+"\xe5\xcc\x79\xc3\x1b\xc7\xc3\x9e\xaf\xb6\x1f\xbc\xb2\x9c\xb0\xcb\x1a\x0b\xf7\x33\xa5\x15\x6f\xbc\xb5\x80\xbd\x1b\xf7\x30\xf7\x13"
+"\xf7\x18\xf7\x37\xd2\x79\xc2\x61\xc4\x1f\xbd\xc7\x05\x9c\x9f\x8f\x93\x99\x1a\xa7\x74\xa1\x6e\x77\x82\x85\x72\x76\x1e\x5f\x56\x05"
+"\xaa\x5a\x5c\x99\x57\x1b\xfb\x31\xfb\x13\xfb\x18\xfb\x38\x41\x9f\x51\xb9\x51\x1f\x54\x48\x05\x79\x76\x87\x83\x7d\x1a\x70\xa3\x75"
+"\xa8\x9f\x94\x90\xa4\xa0\x1e\xf7\xec\xf8\x33\x15\x99\x6f\x94\x67\x69\x1a\x24\x3b\x34\x2c\x71\x75\x90\x98\x72\x1e\x41\xd0\x15\x77"
+"\xac\x82\xad\xb2\x1a\xf4\xda\xe2\xeb\xa8\xa5\x84\x7b\xa6\x1e\x0b\xf7\x5a\xf7\x53\x15\xe9\x06\xea\xbd\x9c\xba\xb8\x1f\xab\xad\x9e"
+"\xb9\xb8\x1a\xf7\x00\x2f\xd7\xfb\x15\x1e\xfb\x7d\x06\x71\x20\x1d\x7a\x94\x7b\x98\x82\x1e\x83\x96\x96\x89\xa5\x96\x0a\xf7\xfa\x04"
+"\xf7\x06\x06\xce\xb3\x6c\x57\x56\x63\x6c\x48\x1f\xfb\x06\x06\x0e\xf8\xbb\xf8\x15\x15\xa0\x9f\x90\x93\x9c\x1a\xa6\x74\xa1\x6f\x78"
+"\x82\x86\x77\x76\x1e\x5e\x5e\x05\x9c\x66\x56\x96\x5e\x1b\xfb\x24\xfb\x07\x27\xfb\x12\x5a\x9d\x5c\xae\x61\x1f\x5d\x5e\x05\x76\x77"
+"\x86\x82\x7b\x1a\x6f\xa2\x75\xa8\x9c\x93\x90\xa0\xa2\x1e\xc0\xc0\x05\x78\xb6\xb2\x83\xba\x1b\xf7\x26\xf7\x07\xef\xf7\x12\xbb\x7a"
+"\xb8\x6a\xb5\x1f\x3e\x40\x15\x98\x78\x91\x77\x76\x1a\x45\x48\x56\x32\x7c\x82\x8c\x8f\x78\x1e\x33\xc2\x15\x7d\xa0\x84\x9f\xa1\x1a"
+"\xd0\xce\xc1\xe2\x9b\x96\x8a\x86\xa1\x1e\x0b\xf8\xa9\xf8\x61\x15\xb2\x8c\xa1\x9d\xab\x31\x0a\x20\x0a\xfb\x16\xf7\x08\x1d\xaa\xfb"
+"\xa2\x06\x53\x53\x5e\x46\x46\x53\xb8\xc3\x1e\xf7\xa2\xaa\x07\xa3\x96\x8c\x91\x94\x1f\xa4\x1d\x83\x8d\x6e\x1b\xfb\x16\x06\x3d\x1d"
+"\x79\x1a\x6c\xa1\x78\xb2\x8a\x1e\xfb\x99\x07\x0b\xf7\x5b\xf3\x15\xf7\x6e\x95\x07\xba\xa4\x9c\xf7\x4b\x1d\xa0\x7c\xbe\x8a\x1f\xfb"
+"\x6f\xa0\x0a\xf7\x6f\x07\xbf\x8c\x9f\x9a\x6e\x1d\xfb\x0c\x06\x5d\x73\x79\x69\x69\xa3\x7a\xb9\x1f\x95\xfb\x6e\x06\x0e\xf7\x5d\xf8"
+"\x62\x15\xab\x92\x99\x9b\xa7\x1a\xb1\x74\x98\x4b\x1e\x48\x06\x4c\x73\x7d\x67\x67\xa1\x7b\xbc\x89\x1f\xf7\x3d\xfb\xb3\x76\x68\x78"
+"\x6b\x79\x7a\x7e\x8d\x19\x8a\x06\x87\x91\x06\xc1\x7b\xa1\x65\x64\x7d\x76\x50\x1e\x5a\x07\x66\xb3\x75\xd1\xcb\xb1\xa6\xd8\xb8\x1e"
+"\xf7\x6e\xf8\x07\x05\xba\x8d\xa1\x9c\xac\x28\x1d\x4b\x06\x4b\x74\x7d\x66\x6f\x99\x7b\xab\x84\x1f\xfb\x00\xfb\x4b\x05\x0b\xf7\x7f"
+"\xf8\x3d\x15\xfb\x02\x72\x0a\xfb\x6d\x7e\x07\x68\x73\x76\x6c\x2d\x0a\x1f\xf7\x04\x06\xb9\xa4\x9d\xac\xa2\x7b\xa0\x77\x90\x1f\x8d"
+"\x83\x7f\x8d\x7a\x1b\xf0\x07\xb8\x91\xa0\x9d\xa0\x1e\xa7\xa3\xa5\x99\xa7\x1b\xb7\x9e\x6c\x46\x1f\xfc\x0b\x2f\x0a\xf8\x0a\x07\xf7"
+"\x14\x4c\xd7\x21\x60\x6e\x81\x70\x6b\x1e\x0b\xf7\xf6\xf8\x61\x15\xec\x69\x1d\xfb\xc2\x06\x5d\x0a\xec\xfb\xfa\x2a\x06\x71\x20\x1d"
+"\x68\xa3\x7a\xb9\x1e\x0b\x9c\x1d\x80\x6c\x1a\xfb\x33\x89\x07\x71\x82\x50\x1d\x9a\x81\x3f\x1d\xf7\x04\x06\xa1\x99\xf7\x3a\x1d\x92"
+"\x20\x0a\x89\xf7\x40\x06\xec\x42\xcc\xfb\x00\x59\x0b\x15\x9a\x9b\x90\x1d\x22\x05\x75\x74\x8a\x8a\x4e\x1d\xf7\x9e\xf3\x15\x9b\x9b"
+"\x90\xf7\x5e\x1d\x7f\x1e\x25\x22\x05\x76\x74\x8a\x8a\x4e\x1d\x0e\x07\xa4\x0a\x0b\x5e\x8a\x0a\x0b\x1a\x54\x60\x1d\x80\x1e\x7d\x6e"
+"\x83\x88\x7f\x1b\x7e\x84\x90\x95\x0b\xf7\xc3\xf7\x2b\x15\xfb\x1e\xf7\xca\x05\x98\x06\xa4\x95\x8c\x91\x94\x1f\x9b\x94\x95\x9d\x9c"
+"\x31\x0a\x81\x7f\x8d\x71\x1b\xfb\x19\x06\x72\x82\x89\x86\x81\x3c\x1d\x84\x96\x95\x89\xa5\x1b\xf7\x5f\xfc\x61\x05\xf2\x06\x0b\x1f"
+"\x69\x84\x07\x71\x5c\x1d\xa5\x1b\x92\xfb\x6f\x80\x5b\x0a\xf8\x6a\x31\x1d\x0b\xa8\x06\xa2\x97\x38\x1d\x6e\xad\x06\xe7\x1d\x0b\x7a"
+"\x1a\x7a\x94\x7b\x98\x82\x1e\x83\x96\x96\x89\xa5\x1b\x96\x06\xf7\x00\xfb\x13\x15\xf7\x13\xf7\x15\x07\xc8\xaf\x75\x68\x61\x5b\x6f"
+"\x46\x1f\xfb\x01\xfb\x7b\x15\xf7\x14\xf7\x17\x07\xb4\xaa\x84\x7d\xa4\x1f\xa3\x7d\x9c\x73\x76\x1a\x6b\x6a\x7b\x4a\x1e\x0e\xf7\x9c"
+"\xf3\x15\xf7\x6d\xf7\x5e\x38\x07\x5e\x9e\x74\xae\xae\x9e\xa2\xb8\x1e\xf7\x4f\xfc\x6a\x07\x52\x1d\xbf\xfb\x6d\x57\x06\x46\x0a\x0b"
+"\xf7\x3e\x1d\xb1\xd6\xf7\x00\x0a\x91\x83\x8e\x7b\x90\x75\x8e\x85\x93\x84\x08\x83\x94\x9b\x85\x99\x47\x0a\x0b\xf8\xc7\xf7\x6e\x15"
+"\xa2\x97\x32\x1d\x9c\x9d\x22\x1d\xfc\xa2\xf7\x22\x1d\x95\x97\x89\xa5\x1b\x0e\xf7\x00\xf7\xd6\x95\x0a\x0b\x07\xa4\x0a\xb3\x81\xa7"
+"\x1b\xcc\xb9\xb3\xc3\x4e\x0a\x95\x0a\x0e\x15\xd5\x0a\x96\x97\x88\xa4\x1b\xf8\x14\x06\xa1\x98\x8d\x90\x94\x1f\x9b\x94\x95\x9d\x9d"
+"\x1a\x9b\x83\x9b\x7d\x94\x1e\x93\x20\x0a\x0b\x1b\x96\xfb\xfa\x80\x06\x72\x82\x89\x86\x61\x1d\xf7\x6a\x29\x0a\x2c\x06\x0b\xf8\x3c"
+"\xf7\x67\xdc\x1d\x0b\x1a\x78\x9a\x7d\x9f\x95\x95\x90\x93\x91\x1e\xb2\xab\x91\x90\x9c\xf5\x1d\xa7\x0a\x81\x1e\x95\x85\x92\x89\xa1"
+"\x8a\xfb\x04\x0b\xf8\xb3\xf8\x15\x15\xa8\x9d\x93\x95\xa0\x1a\xa4\x74\xa3\x71\x7e\x84\x88\x7d\x75\x1e\xfc\x43\xfb\xa1\x05\x6d\x79"
+"\x84\x81\x77\x1a\x71\xa2\x73\xa4\x97\x9a\x91\x95\x9b\x1e\x0e\x15\xbb\xaa\x80\x71\xa7\x1f\xa3\x75\x99\x6b\x6d\x1a\x41\x50\x59\x34"
+"\x5d\x6a\x97\xa4\x70\x1e\x73\xa2\x7d\xaa\xab\x1a\xaa\x99\xaa\xa3\xa2\x1e\xa5\xa6\xab\x96\xbb\x1b\x0e\xf7\x52\x1d\x96\xfb\xfa\x06"
+"\x65\x74\x78\x6b\x69\xa3\x79\xba\x1f\xf7\x15\x06\xb9\xa3\x9c\xae\xa9\x1d\x6c\x0b\x29\x1d\x95\xfb\xf8\x81\x29\x1d\xf7\xa7\x06\xf7"
+"\x21\xd4\xc0\xf3\xf7\x07\x34\xc9\xfb\x37\x1f\xfb\x0d\x0b\x75\x89\x88\x4e\x1d\x0b\x9a\x7c\xa5\x0a\x0b\x2c\x0a\xf7\x1c\x63\x06\x5f"
+"\x9e\x74\xae\xaf\x9e\xa2\xb7\x1e\xb3\xf7\x1b\x07\xb9\xa3\x9d\xad\xaa\x7a\x9b\x68\x8f\x1f\x0b\xea\x1d\x0e\x15\x98\x7a\x86\x8e\x7f"
+"\x64\x0a\x21\x05\x80\x99\x96\x86\x95\x1b\xa1\x9e\x9c\xa0\x99\x84\x95\x7a\x99\x1f\x0e\xf7\x1f\x1d\x7e\x9b\x93\x62\x0a\x8c\x98\x94"
+"\x8c\x8f\x76\x1d\x75\x91\x94\x7a\x1f\x96\x77\x89\x8c\x55\x1d\x7a\x94\x7e\xa0\x80\x1f\x7e\xa5\x0b\xaa\x3e\x1d\x96\xa4\x1a\xdb\x07"
+"\xa4\x8a\x93\x84\x95\x1e\x9a\x81\x7a\x94\x78\x1b\x79\x7f\x85\x7b\x7e\x1f\xa9\x46\x71\x91\x0b\x3a\x1d\x93\x20\x0a\x0b\x05\xad\x8f"
+"\x9e\x9d\xa8\x22\x1d\x2f\x06\x2e\x1d\x7b\x93\x7b\x99\x0b\xf7\x07\x0a\xf7\x03\x07\xca\x8d\x9f\x98\xb0\x1a\xb2\x74\x98\x4a\x1e\x32"
+"\x06\x4b\x74\x7d\x65\x68\x9f\x7d\xc0\x88\x1f\xfb\x07\x07\x0b\x40\x1d\x91\x81\x9d\x7d\x1f\xf7\x1a\x21\x05\x80\x99\x95\x86\x0b\x71"
+"\x83\x8a\x85\x81\x48\x0a\x83\x0b\x15\x68\x6e\x6f\x6a\x69\xa8\x6f\xae\xae\xa8\xa7\xac\xae\x6f\xa6\x67\x1f\x0b\x15\x9d\x99\x91\x95"
+"\x98\x1a\xa1\x79\x9c\x74\x7f\x85\x51\x1d\x7d\x84\x80\x7e\x1a\x77\x9e\x79\xa1\x95\x95\x0b\xf8\xef\x15\xfb\x0c\x06\xd6\x0a\x95\x96"
+"\x89\xa6\x1b\x97\xfc\x21\x0b\x2a\x1d\x81\x8d\x70\x1b\x2f\x06\x73\x7f\xbe\x0a\x74\x97\x7a\xa4\x81\x1e\x34\x0b\xf7\x26\xf7\xfa\x15"
+"\xf7\x04\xfb\x76\x05\xea\x06\xf4\xf7\x75\x05\xfb\x91\x6c\x07\x71\x83\x89\x4f\x0a\x7a\x79\x1a\x0b\x88\x8f\x74\x9d\x1f\xfb\x2d\xf7"
+"\x11\xf7\x15\x1d\x1b\x99\x92\x88\x7a\xa6\x1f\x70\xb8\xac\xcd\x0a\x06\xba\xa3\x9c\xae\x9b\x2a\x1d\x81\x8d\x6f\x1b\x0b\xbb\xb6\xcd"
+"\xac\x7d\xaa\x71\xa0\x1e\x3b\xd2\x0a\x0b\x8a\x84\x8b\x80\x82\x1a\x6c\xa0\x76\xa9\xa5\x9c\x9b\xb0\x94\x1e\xc1\x9a\xa2\x99\xd8\x1b"
+"\xbf\xb3\x7e\x79\x7a\x5f\x7e\x4e\x0b\xa2\x74\xa8\x95\x99\x8d\x8f\x9d\x1e\x96\xbb\xad\x90\xad\x1b\xc8\xa6\x7e\x6e\x1f\x79\x07\x91"
+"\x68\x6a\x8e\x6a\x1b\x32\x0b\xca\x0a\xf7\x07\xfb\xa0\x06\x60\x0b\x97\x9b\xa1\x31\x0a\x2f\x1d\x32\x06\x76\x84\x8a\x88\x82\x1f\x78"
+"\x85\x7c\x76\x0b\x89\xa4\x1b\xf7\x06\x06\xf7\x03\xe0\xda\xf1\x8a\x1f\xf8\x4c\x0b\xf7\x49\x1d\x9f\x0b\x06\xcb\xa2\x99\xb1\xaf\x75"
+"\x9a\x57\x8c\x1f\xf7\xf9\x07\xc1\x8d\x8f\x1d\x0b\xf8\x96\xf8\x3d\x15\xfb\x1f\x06\x72\x81\x89\x86\x82\x32\x0a\x84\x0b\x1e\x69\x06"
+"\x4c\x74\x7d\x66\x6e\x9a\x7a\xac\x85\x1f\x2b\x07\x4c\xf7\x02\x05\xcd\x65\x6c\xa2\x58\x1b\x5f\x81\x0b\xf8\xe4\xf7\x01\x0a\x93\x85"
+"\x9b\x1b\x9e\x9b\x99\x9c\x90\x8a\x93\x88\x92\x1f\x0b\x89\x86\x82\x1f\x7b\x81\x81\x7a\x7a\x1a\x0b\x06\xf7\x0f\x1d\x0b\x06\x71\x0a"
+"\x7c\x95\x9d\x82\x9d\x3e\x1d\x94\xa6\x1a\x0b\x46\xfb\x5c\x05\x88\x84\x8a\x84\x85\x1a\x7b\x9b\x7d\x9e\x9a\x93\x91\x9d\x97\x1e\xf7"
+"\x25\xf7\x76\x05\x0b\x07\xbb\x8c\xa1\x9c\xae\x1a\xaf\x73\x99\x4c\x1e\x40\x06\x4c\x73\x7d\x67\x68\xa1\x7a\xbc\x8a\x1f\x0b\xf7\x6f"
+"\xf7\x0d\x15\x34\xb9\x5a\xde\xbf\xad\xa2\xaf\xa7\x73\xa3\x6f\x84\x81\x89\x89\x84\x1e\x89\x0b\x1a\xaa\xa8\xa2\xb2\xa5\x9e\x84\x7a"
+"\x9b\x1e\x72\xa2\x91\x88\x9f\x1b\xa9\xa2\xa2\xa9\xbe\x3a\xbe\x0b\x70\x84\x8a\x85\x81\x48\x0a\x84\x95\x98\x88\xa4\x1b\x0b\x8d\xfb"
+"\x2e\xf7\x11\x18\xed\x0a\xa0\x95\x93\x0b\x15\xa2\xa2\x97\xa6\xaa\x1a\xc9\x59\xbb\x4a\x49\x59\x5b\x4c\x6d\x97\x70\xa2\x74\x1e\x72"
+"\x76\x0b\xf8\x6f\xe6\x0a\x97\x87\x93\x7e\x95\x1f\x0b\x8a\x84\x80\x1f\x7b\x82\x81\x7a\x7a\x1a\x7b\x94\x7b\x98\x81\x1e\x83\x97\x94"
+"\x89\xa6\x1b\x0b\xd1\x0a\xa5\x1b\x0b\x15\x99\x97\x92\x96\x97\x1a\x9d\x7a\x9b\x78\x82\x81\x53\x1d\x7c\x0b\x1f\x7e\x07\x53\x98\x76"
+"\xae\xa4\x98\x96\xa7\x94\x1e\xc0\x2d\x8e\x85\x8e\x87\x95\x7e\x19\x0b\xa8\x1d\x9a\x9a\x1a\x9b\x7a\x9a\x78\x1e\x0e\xf7\x10\x0a\x79"
+"\x1a\x0b\x15\x9d\x99\x91\x95\x98\x1a\xa1\x79\x9c\x74\x7f\x85\x88\x7e\x7a\x1e\xfb\x19\x21\x05\x0b\x06\xa0\xf6\x0a\x83\x9a\x7c\x96"
+"\x1e\x93\x0b\xf7\x2b\x1d\x93\x7b\x99\x82\x1e\x83\x96\x96\x89\x0b\xf7\x12\x15\xa7\x9f\x78\x70\x6e\x78\x78\x6d\x6f\x77\x9e\xa7\xa7"
+"\x9f\x9e\xa8\x1f\x0b\x1a\xad\x73\x9d\x5c\x1e\xfb\x0c\x29\x1d\x95\x0b\x1b\x8d\x06\x67\xfb\x16\x52\xf7\x23\x05\x2d\x06\x53\xfb\x22"
+"\x69\xf7\x15\x05\x0b\x71\x83\x8a\x85\x81\x3b\x0a\x7a\x93\x7b\x99\x82\x1e\x84\x0b\x77\x84\x8b\x88\x81\x1f\x78\x84\x7d\x77\x76\x4b"
+"\x0a\x83\x0b\x06\x77\x84\x8a\x88\x82\x1f\x77\x85\x7d\x76\x0b\x40\xdd\x0a\x0b\x91\x82\x1e\x7b\x95\x9c\x82\x9e\x2d\x1d\x0b\x15\xa7"
+"\x5f\x69\x9b\x7c\x1b\x84\x84\x83\x82\x85\x8f\x86\x97\x80\x1f\xae\x0b\x65\x1a\x66\xa2\x7d\xca\x1e\xed\x06\xca\x6e\x0a\x0b\x83\x34"
+"\x1d\x0b\xc7\xe8\x1f\xc8\x07\xef\xd3\xd2\xef\xad\xad\x83\x7c\xa6\x1e\xa7\x7c\x0b\x72\x82\x89\x86\x81\x73\x1d\x2d\x0a\x1e\x0b\x7d"
+"\x67\x68\xa1\x7a\xb9\x8a\x1f\x4b\x07\x0b\x8d\x90\x3a\x1d\x0b\x1a\x6b\xa5\x79\xb8\x1e\xab\x06\xba\xa5\x9d\xac\xa0\x82\x98\x71\x0b"
+"\x1e\xe0\x06\xcb\x6e\x0a\x89\x06\x89\xd1\x0b\x1e\x7b\x95\x9d\x82\x9d\x1b\x9c\x9b\x93\x98\x96\x1f\x93\x96\x8d\x0b\x62\xf7\x0a\x0a"
+"\xf7\x24\x07\x0e\x81\xac\x1d\x93\xa6\x1a\x0b\x15\xf7\x02\x30\x05\x82\x97\x93\x87\x95\x1b\xa0\x9d\x9c\xa0\x0b\xab\x1d\x74\x1b\x6c"
+"\x6e\x0b\xf7\x08\x0a\xf7\x18\x2b\x1d\xad\x0b\xf7\x65\x1d\xf7\x31\x07\x0e\x1b\x5e\x68\x9e\xa7\x83\x1f\xa6\x83\x83\x93\x77\x1b\x0e"
+"\x5c\x73\xf7\x08\x0a\x0b\x06\x9f\xf6\x0a\x0b\xfb\x2f\xfb\x11\x05\x75\x79\x88\x87\x7d\x1a\x76\x9d\x7a\x0b\x9e\x1a\x9d\x82\x9b\x7c"
+"\x96\x1e\x93\x7f\x82\x8d\x6e\x1b\x0b\x6f\x1a\x68\xa3\x79\xb9\x1e\xf7\xd5\x06\xd4\xb2\xab\xc6\x0b\x7f\x1a\x79\x9c\x7b\x9e\x94\x96"
+"\x57\x1d\x05\x82\x97\x94\x87\x95\x1b\xa0\x9d\x9c\xa0\x97\x87\x0b\x06\x33\x66\x84\x71\x64\x1f\x47\x5e\x68\x40\x27\x1a\x0b\x1a\x68"
+"\xa3\x7a\xb9\x1e\xf7\x03\x0b\x82\x90\x7f\x92\x83\x1f\x81\x95\x93\x88\xa6\x1b\x0b\x90\x1a\x9b\x7b\x9a\x7a\x7d\x82\x84\x79\x81\x1e"
+"\x0b\x9b\x8e\x8f\x93\x1f\x9b\x95\x95\x9c\x9d\x1a\x9b\x0b\xdc\xc7\xbf\xe8\xb6\xae\x83\x7b\xa4\x1f\x97\x84\x0b\x15\xfb\x25\x06\xf7"
+"\x28\xfb\x7a\x05\x78\x97\x0b\x93\x7c\x99\x81\x1e\x83\x95\x98\x89\xa4\x1b\x0b\x1b\x80\x7f\x90\x9e\x6a\x1f\xa8\x59\x79\x92\x0b\x67"
+"\x76\x7c\x70\x82\x90\x7f\x92\x83\x1f\x81\x0b\x9b\x99\x9e\x95\x86\x92\x7f\x96\x1f\x0e\x1f\x7b\x81\x81\x7a\x79\x1a\x0b\x61\x1b\x5f"
+"\x7e\x9d\xc6\x1f\x0b\x79\x69\x69\xa3\x79\xba\x1f\x0b\xf6\xbe\xb7\x97\xa8\xbc\x1e\x0b\x06\x5f\x9d\x74\xaf\xae\x9e\xa2\xb7\x1e\x0b"
+"\x06\x74\x7f\x80\x78\x77\x97\x80\xa2\x1f\x0b\x8a\x75\x7a\x6a\x1a\x69\xa4\x79\xb9\x1e\x0b\x15\x9f\x9a\x90\x93\x99\x1a\xa1\x79\x9c"
+"\x0b\x19\x8f\x8f\x94\x98\x90\x94\xbf\xe8\x18\x0b\x5d\x73\x79\x68\x69\xa0\x7c\xbe\x89\x1f\x0b\x72\x81\x89\x85\x82\x1f\x7b\x82\x81"
+"\x7a\x0b\x96\xa6\x8e\x1f\xab\xf7\x8b\x05\x0e", 52203
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusMonoPS-BoldItalic.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusMonoPS-BoldItalic.cff.cpp
new file mode 100644
index 0000000000..3e86110058
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusMonoPS-BoldItalic.cff.cpp
@@ -0,0 +1,1855 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusMonoPS_BoldItalic_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x18\x4e\x69\x6d\x62\x75\x73\x4d\x6f\x6e\x6f\x50\x53\x2d\x42\x6f\x6c\x64\x49\x74\x61\x6c\x69\x63"
+"\x00\x01\x01\x01\x38\xf9\xbc\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x14\x04\x8c\x0c\x01\x7f\x0c\x02\x33\x0c"
+"\x03\xf7\x02\x0c\x04\x2e\xfc\x1d\xf9\xe0\xfa\x79\x05\x1c\x35\xaf\x0f\x1c\x35\xc2\x11\xa9\x1d\x00\x00\xd1\x60\x12\x01\xa6\x02\x00"
+"\x01\x00\x08\x00\x0e\x00\x13\x00\x1d\x00\x24\x00\x2b\x00\x35\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00"
+"\x6e\x00\x74\x00\x7a\x00\x84\x00\x8b\x00\x8e\x00\x95\x00\x9c\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00"
+"\xe3\x00\xe7\x00\xf2\x00\xf4\x00\xfa\x01\x04\x01\x0b\x01\x12\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01"
+"\x59\x01\x5f\x01\x6b\x01\x6f\x01\x71\x01\x77\x01\x7d\x01\x89\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01"
+"\xd0\x01\xd2\x01\xd5\x01\xdb\x01\xe1\x01\xed\x01\xf0\x01\xf6\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02"
+"\x38\x02\x3e\x02\x4b\x02\x52\x02\x59\x02\x60\x02\x6f\x02\x7b\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02"
+"\xb9\x02\xbf\x02\xc9\x02\xcd\x02\xd3\x02\xda\x02\xe3\x02\xec\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03"
+"\x3d\x03\x46\x03\x4f\x03\x58\x03\x61\x03\x6a\x03\x73\x03\x7c\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03"
+"\xcd\x03\xd6\x03\xdf\x03\xe8\x03\xf1\x03\xfa\x04\x03\x04\x0c\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04"
+"\x5d\x04\x66\x04\x6f\x04\x78\x04\x81\x04\x8a\x04\x93\x04\x9c\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04"
+"\xed\x04\xf6\x04\xff\x05\x08\x05\x11\x05\x1a\x05\x23\x05\x2c\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05"
+"\x7d\x05\x86\x05\x8f\x05\x98\x05\xa1\x05\xaa\x05\xb3\x05\xbc\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06"
+"\x0d\x06\x16\x06\x1f\x06\x28\x06\x31\x06\x3a\x06\x43\x06\x4c\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06"
+"\x9a\x06\xa3\x06\xac\x06\xb5\x06\xbf\x06\xc6\x06\xcf\x06\xdb\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07"
+"\x1b\x07\x21\x07\x26\x07\x2d\x07\x3a\x07\x40\x07\x46\x07\x50\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07"
+"\x92\x07\x9a\x07\xa3\x07\xae\x07\xb4\x07\xb9\x07\xbe\x07\xc4\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08"
+"\x10\x08\x12\x08\x19\x08\x21\x08\x29\x08\x33\x08\x3d\x08\x49\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08"
+"\x9c\x08\xa8\x08\xb4\x08\xba\x08\xc0\x08\xc6\x08\xd2\x08\xd6\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09"
+"\x1c\x09\x22\x09\x2e\x09\x38\x09\x40\x09\x42\x09\x48\x09\x55\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09"
+"\xa4\x09\xa7\x09\xa9\x09\xb0\x09\xbc\x09\xca\x09\xcd\x09\xda\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a"
+"\x22\x0a\x2e\x0a\x34\x0a\x39\x0a\x42\x0a\x47\x0a\x50\x0a\x53\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a"
+"\x90\x0a\x9d\x0a\xa4\x0a\xab\x0a\xb2\x0a\xb9\x0a\xc0\x0a\xc7\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b"
+"\x06\x0b\x0d\x0b\x14\x0b\x1b\x0b\x22\x0b\x29\x0b\x30\x0b\x37\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b"
+"\x76\x0b\x7d\x0b\x84\x0b\x8b\x0b\x92\x0b\x99\x0b\xa0\x0b\xa7\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b"
+"\xe6\x0b\xed\x0b\xf4\x0b\xfb\x0c\x02\x0c\x09\x0c\x10\x0c\x17\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c"
+"\x56\x0c\x5d\x0c\x64\x0c\x73\x0c\x87\x0c\x93\x0c\x98\x0c\x9e\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c"
+"\xe1\x0c\xe5\x0c\xe9\x0d\x1f\x0d\x5f\x0d\x79\x0d\x87\x41\x45\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41"
+"\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x41\x6d\x61\x63\x72\x6f\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74"
+"\x65\x42\x65\x74\x61\x43\x61\x63\x75\x74\x65\x43\x63\x61\x72\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74"
+"\x61\x63\x63\x65\x6e\x74\x43\x68\x69\x44\x63\x61\x72\x6f\x6e\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65"
+"\x45\x63\x61\x72\x6f\x6e\x45\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65"
+"\x6b\x45\x70\x73\x69\x6c\x6f\x6e\x45\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45"
+"\x75\x72\x6f\x47\x61\x6d\x6d\x61\x47\x62\x72\x65\x76\x65\x47\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61"
+"\x63\x63\x65\x6e\x74\x47\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a"
+"\x49\x62\x72\x65\x76\x65\x49\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f"
+"\x74\x61\x49\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x49\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69"
+"\x72\x63\x75\x6d\x66\x6c\x65\x78\x4b\x61\x70\x70\x61\x4b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c"
+"\x61\x6d\x62\x64\x61\x4c\x63\x61\x72\x6f\x6e\x4c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63"
+"\x75\x74\x65\x4e\x63\x61\x72\x6f\x6e\x4e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75"
+"\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x4f\x6d\x61\x63\x72\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72"
+"\x6f\x6e\x4f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x4f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73"
+"\x69\x52\x61\x63\x75\x74\x65\x52\x63\x61\x72\x6f\x6e\x52\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75"
+"\x74\x65\x53\x63\x65\x64\x69\x6c\x6c\x61\x53\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e"
+"\x74\x53\x69\x67\x6d\x61\x54\x61\x75\x54\x62\x61\x72\x54\x63\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54"
+"\x68\x65\x74\x61\x55\x62\x72\x65\x76\x65\x55\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f"
+"\x67\x6f\x6e\x65\x6b\x55\x70\x73\x69\x6c\x6f\x6e\x55\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c"
+"\x6f\x6e\x74\x6f\x6e\x6f\x73\x55\x72\x69\x6e\x67\x55\x74\x69\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66"
+"\x6c\x65\x78\x57\x64\x69\x65\x72\x65\x73\x69\x73\x57\x67\x72\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59"
+"\x67\x72\x61\x76\x65\x5a\x61\x63\x75\x74\x65\x5a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61"
+"\x65\x61\x63\x75\x74\x65\x61\x66\x69\x69\x30\x30\x32\x30\x38\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31"
+"\x38\x61\x66\x69\x69\x31\x30\x30\x31\x39\x61\x66\x69\x69\x31\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69"
+"\x31\x30\x30\x32\x32\x61\x66\x69\x69\x31\x30\x30\x32\x33\x61\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35"
+"\x61\x66\x69\x69\x31\x30\x30\x32\x36\x61\x66\x69\x69\x31\x30\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31"
+"\x30\x30\x32\x39\x61\x66\x69\x69\x31\x30\x30\x33\x30\x61\x66\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61"
+"\x66\x69\x69\x31\x30\x30\x33\x33\x61\x66\x69\x69\x31\x30\x30\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30"
+"\x30\x33\x36\x61\x66\x69\x69\x31\x30\x30\x33\x37\x61\x66\x69\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66"
+"\x69\x69\x31\x30\x30\x34\x30\x61\x66\x69\x69\x31\x30\x30\x34\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30"
+"\x34\x33\x61\x66\x69\x69\x31\x30\x30\x34\x34\x61\x66\x69\x69\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69"
+"\x69\x31\x30\x30\x34\x37\x61\x66\x69\x69\x31\x30\x30\x34\x38\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35"
+"\x30\x61\x66\x69\x69\x31\x30\x30\x35\x31\x61\x66\x69\x69\x31\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69"
+"\x31\x30\x30\x35\x34\x61\x66\x69\x69\x31\x30\x30\x35\x35\x61\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37"
+"\x61\x66\x69\x69\x31\x30\x30\x35\x38\x61\x66\x69\x69\x31\x30\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31"
+"\x30\x30\x36\x31\x61\x66\x69\x69\x31\x30\x30\x36\x32\x61\x66\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61"
+"\x66\x69\x69\x31\x30\x30\x36\x37\x61\x66\x69\x69\x31\x30\x30\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30"
+"\x30\x37\x30\x61\x66\x69\x69\x31\x30\x30\x37\x31\x61\x66\x69\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66"
+"\x69\x69\x31\x30\x30\x37\x34\x61\x66\x69\x69\x31\x30\x30\x37\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30"
+"\x37\x37\x61\x66\x69\x69\x31\x30\x30\x37\x38\x61\x66\x69\x69\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69"
+"\x69\x31\x30\x30\x38\x31\x61\x66\x69\x69\x31\x30\x30\x38\x32\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38"
+"\x34\x61\x66\x69\x69\x31\x30\x30\x38\x35\x61\x66\x69\x69\x31\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69"
+"\x31\x30\x30\x38\x38\x61\x66\x69\x69\x31\x30\x30\x38\x39\x61\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31"
+"\x61\x66\x69\x69\x31\x30\x30\x39\x32\x61\x66\x69\x69\x31\x30\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31"
+"\x30\x30\x39\x35\x61\x66\x69\x69\x31\x30\x30\x39\x36\x61\x66\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61"
+"\x66\x69\x69\x31\x30\x30\x39\x39\x61\x66\x69\x69\x31\x30\x31\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30"
+"\x31\x30\x32\x61\x66\x69\x69\x31\x30\x31\x30\x33\x61\x66\x69\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66"
+"\x69\x69\x31\x30\x31\x30\x36\x61\x66\x69\x69\x31\x30\x31\x30\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31"
+"\x30\x39\x61\x66\x69\x69\x31\x30\x31\x31\x30\x61\x66\x69\x69\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69"
+"\x69\x31\x30\x38\x34\x36\x61\x66\x69\x69\x36\x31\x32\x34\x38\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35"
+"\x32\x61\x6c\x70\x68\x61\x61\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74"
+"\x61\x6e\x67\x6c\x65\x72\x69\x67\x68\x74\x61\x6f\x67\x6f\x6e\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e"
+"\x67\x61\x63\x75\x74\x65\x61\x72\x72\x6f\x77\x62\x6f\x74\x68\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66"
+"\x74\x61\x72\x72\x6f\x77\x72\x69\x67\x68\x74\x61\x72\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77"
+"\x75\x70\x64\x6e\x62\x73\x65\x62\x65\x74\x61\x63\x61\x63\x75\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c"
+"\x65\x78\x63\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x63\x68\x69\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75"
+"\x62\x64\x63\x61\x72\x6f\x6e\x64\x63\x72\x6f\x61\x74\x64\x65\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69"
+"\x73\x74\x6f\x6e\x6f\x73\x65\x62\x72\x65\x76\x65\x65\x63\x61\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d"
+"\x65\x6e\x74\x65\x6d\x61\x63\x72\x6f\x6e\x65\x6e\x67\x65\x6f\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c"
+"\x6f\x6e\x74\x6f\x6e\x6f\x73\x65\x71\x75\x69\x76\x61\x6c\x65\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74"
+"\x61\x74\x6f\x6e\x6f\x73\x65\x78\x63\x6c\x61\x6d\x64\x62\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65"
+"\x66\x72\x61\x6e\x63\x67\x61\x6d\x6d\x61\x67\x62\x72\x65\x76\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d"
+"\x61\x61\x63\x63\x65\x6e\x74\x67\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61"
+"\x72\x68\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x68\x65\x61\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d"
+"\x61\x63\x72\x6f\x6e\x69\x6e\x66\x69\x6e\x69\x74\x79\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69"
+"\x6e\x74\x65\x67\x72\x61\x6c\x74\x70\x69\x6e\x74\x65\x72\x73\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63"
+"\x65\x69\x6f\x67\x6f\x6e\x65\x6b\x69\x6f\x74\x61\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72"
+"\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x69\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66"
+"\x6c\x65\x78\x6b\x61\x70\x70\x61\x6b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63"
+"\x6c\x61\x63\x75\x74\x65\x6c\x61\x6d\x62\x64\x61\x6c\x63\x61\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64"
+"\x6f\x74\x6c\x65\x73\x73\x65\x71\x75\x61\x6c\x6c\x69\x72\x61\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75"
+"\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70"
+"\x6f\x73\x74\x72\x6f\x70\x68\x65\x6e\x63\x61\x72\x6f\x6e\x6e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65"
+"\x6d\x65\x6e\x74\x6e\x6f\x74\x65\x71\x75\x61\x6c\x6e\x75\x6f\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75"
+"\x74\x6f\x6d\x61\x63\x72\x6f\x6e\x6f\x6d\x65\x67\x61\x6f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d"
+"\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x6f\x72\x74\x68\x6f\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70"
+"\x61\x72\x74\x69\x61\x6c\x64\x69\x66\x66\x70\x65\x73\x65\x74\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70"
+"\x65\x72\x73\x75\x62\x73\x65\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65"
+"\x76\x65\x72\x73\x65\x64\x72\x61\x63\x75\x74\x65\x72\x61\x64\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61"
+"\x63\x63\x65\x6e\x74\x72\x65\x76\x6c\x6f\x67\x69\x63\x61\x6c\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69"
+"\x6c\x6c\x61\x73\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x73\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64"
+"\x73\x69\x67\x6d\x61\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x73\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74"
+"\x61\x75\x74\x62\x61\x72\x74\x63\x61\x72\x6f\x6e\x74\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e"
+"\x6f\x73\x75\x62\x72\x65\x76\x65\x75\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65"
+"\x72\x73\x63\x6f\x72\x65\x64\x62\x6c\x75\x6e\x69\x30\x30\x41\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e"
+"\x69\x30\x32\x31\x42\x75\x6e\x69\x30\x32\x43\x39\x75\x6e\x69\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41"
+"\x39\x75\x6e\x69\x30\x33\x42\x43\x75\x6e\x69\x30\x33\x43\x32\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69"
+"\x30\x34\x35\x30\x75\x6e\x69\x30\x34\x35\x44\x75\x6e\x69\x30\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36"
+"\x75\x6e\x69\x30\x34\x39\x37\x75\x6e\x69\x30\x34\x39\x38\x75\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30"
+"\x34\x39\x42\x75\x6e\x69\x30\x34\x39\x43\x75\x6e\x69\x30\x34\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75"
+"\x6e\x69\x30\x34\x41\x32\x75\x6e\x69\x30\x34\x41\x33\x75\x6e\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34"
+"\x41\x45\x75\x6e\x69\x30\x34\x41\x46\x75\x6e\x69\x30\x34\x42\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e"
+"\x69\x30\x34\x42\x33\x75\x6e\x69\x30\x34\x42\x36\x75\x6e\x69\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42"
+"\x39\x75\x6e\x69\x30\x34\x42\x41\x75\x6e\x69\x30\x34\x42\x42\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69"
+"\x30\x34\x43\x43\x75\x6e\x69\x30\x34\x44\x38\x75\x6e\x69\x30\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38"
+"\x75\x6e\x69\x30\x34\x45\x39\x75\x6e\x69\x30\x34\x45\x45\x75\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32"
+"\x30\x41\x46\x75\x6e\x69\x32\x31\x32\x36\x75\x6e\x69\x32\x32\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75"
+"\x6e\x69\x32\x32\x32\x38\x75\x6e\x69\x32\x32\x39\x35\x75\x6e\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73"
+"\x61\x6c\x75\x6f\x67\x6f\x6e\x65\x6b\x75\x70\x73\x69\x6c\x6f\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75"
+"\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75"
+"\x72\x69\x6e\x67\x75\x74\x69\x6c\x64\x65\x77\x61\x63\x75\x74\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72"
+"\x65\x73\x69\x73\x77\x67\x72\x61\x76\x65\x78\x69\x79\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63"
+"\x75\x74\x65\x7a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x7a\x65\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70"
+"\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20"
+"\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70"
+"\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20"
+"\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x4e\x69\x6d\x62\x75\x73\x20\x4d\x6f\x6e\x6f\x20\x50\x53\x20\x42\x6f\x6c\x64\x20\x49"
+"\x74\x61\x6c\x69\x63\x4e\x69\x6d\x62\x75\x73\x20\x4d\x6f\x6e\x6f\x20\x50\x53\x01\x4d\x02\x00\x01\x00\x06\x00\x16\x00\x7d\x00\xb0"
+"\x00\xb6\x00\xbb\x00\xc6\x00\xcd\x00\xd6\x00\xdb\x00\xe4\x00\xea\x00\xf6\x01\x25\x01\x64\x01\x7f\x01\x8e\x01\x96\x01\x9c\x01\xa1"
+"\x01\xd8\x01\xf1\x01\xf9\x02\x07\x02\x12\x02\x1e\x02\x26\x02\x2c\x02\x30\x02\x39\x02\x42\x02\x4a\x02\x52\x02\x5a\x02\x60\x02\x7d"
+"\x02\xd2\x02\xf5\x03\x21\x03\x2a\x03\x3c\x03\x46\x03\x4d\x03\x58\x03\x67\x03\x6f\x03\x7a\x03\x80\x03\x89\x03\x92\x03\x9b\x03\xa1"
+"\x03\xa7\x03\xb2\x04\x21\x04\x26\x04\x76\x04\xac\x04\xb8\x04\xcb\x04\xd9\x04\xe7\x04\xfa\x05\x07\x05\x13\x05\x1f\x05\x2e\x05\x3a"
+"\x05\x4c\x05\x54\x05\x5d\x05\x66\x05\x73\x05\x7a\x05\x86\x05\x8e\x05\x96\x06\x0a\x06\x9f\x06\xf3\x07\x4a\x07\xa6\x08\x06\x08\x2a"
+"\x08\x4e\x08\x80\x08\x8f\x08\xad\x08\xc9\x08\xe3\x08\xea\x08\xf9\x09\x0b\x09\x24\x09\x50\x09\x58\x09\x6d\x09\x72\x09\x7c\x09\x90"
+"\x09\xb4\x09\xd5\x09\xe6\x09\xf0\x09\xfc\x0a\x17\x0a\x1b\x0a\x2a\x0a\x38\x0a\x41\x0a\x4b\x0a\x61\x0a\x6e\x0a\x76\x0a\x7e\x0a\x8a"
+"\x0a\x96\x0a\xa2\x0a\xad\x0a\xb8\x0a\xc0\x0a\xd0\x0a\xda\x0a\xe4\x0a\xec\x0a\xf3\x0b\x02\x0b\x10\x0b\x16\x0b\x24\x0b\x32\x0b\x3b"
+"\x0b\x44\x0b\x4a\x0b\x57\x0b\x5e\x0b\x6a\x0b\x76\x0b\x7e\x0b\x86\x0b\x8e\x0b\x96\x0b\xa1\x0b\xac\x0b\xb7\x0c\x83\x0d\x10\x0d\xa5"
+"\x0d\xc5\x0e\x32\x0e\x90\x0e\xfd\x0f\x34\x0f\x44\x0f\x53\x0f\xdd\x0f\xf1\x10\x54\x10\xbf\x11\x3c\x11\x9b\x11\xd9\x12\x39\x12\xaf"
+"\x12\xbf\x13\x2c\x13\x6c\x13\x90\x13\xf6\x14\x46\x14\x90\x14\xc2\x15\x1b\x15\x75\x15\xaf\x15\xb6\x15\xd0\x16\x0d\x16\x1d\x16\x3e"
+"\x16\x6f\x16\x90\x16\xce\x16\xea\x16\xed\x17\x18\x17\x53\x17\x6f\x17\x9a\x17\xc2\x17\xd3\x17\xe1\x18\x09\x18\x25\x18\x55\x18\x84"
+"\x18\xb0\x18\xdd\x19\x0a\x19\x13\x19\x29\x19\x52\x19\x7b\x19\x7e\x19\x88\x19\x9a\x19\xc1\x19\xe7\x1a\x0c\x1a\x2c\x1a\x4f\x1a\x66"
+"\x1a\x89\x1a\xac\x1a\xce\x1a\xf0\x1b\x12\x1b\x2a\x1b\x41\x1b\x5e\x1b\x7d\x1b\x9b\x1b\xb8\x1b\xc9\x1b\xe6\x1c\x02\x1c\x1e\x1c\x34"
+"\x1c\x50\x1c\x6a\x1c\x85\x1c\x8d\x1c\xa1\x1c\xba\x1c\xca\x1c\xde\x1c\xec\x1c\xf7\x1c\xff\x1d\x17\x1d\x1f\x1d\x25\x1d\x3c\x1d\x41"
+"\x1d\x52\x1d\x62\x1d\x6d\x1d\x83\x1d\x98\x1d\xa5\x1d\xb0\x1d\xc5\x1d\xd4\x1d\xdb\x1d\xe9\x1d\xfd\x1e\x11\x1e\x15\x1e\x28\x1e\x3b"
+"\x1e\x4e\x1e\x52\x1e\x5c\x1e\x6f\x1e\x82\x1e\x94\x1e\xa6\x1e\xb8\x1e\xca\x1e\xdc\x1e\xee\x1e\xf9\x1f\x0a\x1f\x1b\x1f\x25\x1f\x36"
+"\x1f\x47\x1f\x58\x1f\x69\x1f\x7a\x1f\x7f\x1f\x89\x1f\x99\x1f\xa4\x1f\xb4\x1f\xbc\x1f\xcc\x1f\xd6\x1f\xe0\x1f\xef\x1f\xf7\x20\x00"
+"\x20\x0f\x20\x18\x20\x26\x20\x34\x20\x42\x20\x50\x20\x5c\x20\x65\x20\x6e\x20\x77\x20\x84\x20\x91\x20\x9e\x20\xab\x20\xb8\x20\xc5"
+"\x20\xd2\x20\xdf\x20\xe8\x20\xf5\x21\x01\x21\x0d\x21\x19\x21\x25\x21\x31\x21\x3d\x21\x49\x21\x51\x21\x5c\x21\x67\x21\x72\x21\x7d"
+"\x21\x88\x21\x93\x21\x9e\x21\xa9\x21\xb4\x21\xbf\x21\xca\x21\xd5\x21\xde\x84\x8c\x77\x1b\x0b\x78\x9c\x71\x68\x75\x75\x5e\x81\x1e"
+"\x80\x5c\x05\xfb\x8b\x06\x0b\xf8\x53\xf7\x2b\x15\x94\x5c\x05\x79\x06\x6b\x81\x88\x7f\x7c\x1f\x7b\x7f\x82\x79\x7a\x1a\x6d\x9d\x7f"
+"\xb5\x1e\xf7\x1f\x06\xa8\x99\x3d\x1d\x9c\x1a\xa6\x79\x9a\x6b\x1e\x82\x06\x2b\xf8\x60\x05\xfb\x70\x06\x6a\x83\x99\x1d\xc3\x06\xfb"
+"\x7b\xfb\xf9\x6b\x8a\x81\x89\x7d\x7f\x19\x7b\x7e\x31\x1d\xb6\x1e\xf7\x18\x06\xa9\x98\x3d\x1d\x9c\x1a\x9c\x2c\x1d\x7c\x06\xa9\xba"
+"\x05\xf7\x67\xf2\x15\xfb\x25\x06\xf7\x03\xf7\x3d\x05\x0b\x15\x8c\x8c\x8c\x8c\x8d\x8c\x8e\x8f\x8e\x8e\x8c\x8d\x08\x93\x94\x8e\x92"
+"\x96\x1a\x9d\x7d\x98\x78\x7a\x7d\x83\x7b\x7d\x1e\x23\xfb\x0e\x05\x7a\x79\x87\x83\x7d\x1a\x7b\x9a\x7d\x9d\x9a\x9b\x94\x9b\x99\x1e"
+"\x0e\xb9\x1d\xf8\x6d\x06\x0b\x39\x1d\x7a\x1a\x0b\x06\x6b\x81\x4e\x1d\x6d\x9d\x7f\xb6\x1e\x0b\x49\x1d\x9c\x7f\xb6\x1e\x0b\x8f\x96"
+"\x99\x1f\x9b\x97\x94\x9d\x0b\x3d\x1d\x9b\x1a\x0b\x88\x7f\x7c\x1f\x7c\x7f\x81\x79\x0b\x06\xa7\xf7\x13\x05\x0b\x81\x9b\x7c\x90\x1e"
+"\x8e\x82\x85\x8c\x76\x1b\x0b\xf8\x13\x16\xf7\x0e\x06\xa9\x98\x28\x1d\x9b\x1a\x9d\x81\x9b\x41\x1d\x77\x1b\x7f\x06\xb5\xf7\x50\x05"
+"\x8e\x97\x8c\x95\x97\x69\x1d\x2a\x7b\x7b\x67\x1e\x76\x4f\x1d\x73\x9d\x7a\xa3\x73\x1d\x0b\xf8\x3f\xf8\xd6\x15\xfb\x4a\xfb\x42\xfb"
+"\x45\xfb\x4d\xfb\x17\xea\x29\xf7\x14\xf7\x4e\xf7\x41\xf7\x43\xf7\x50\xf7\x18\x2b\xeb\xfb\x16\x1f\x75\x24\x15\xdb\xc4\x4e\x36\xfb"
+"\x0b\xfb\x03\xfb\x0c\xfb\x02\x39\x52\xc7\xe1\xf7\x0d\xf7\x02\xf7\x0a\xf7\x05\x1f\x0b\x15\xa3\x9b\x94\x97\x9c\x1a\x9d\xf7\x4a\x1d"
+"\x7c\x81\x7d\x7c\x1a\x78\x99\x7e\x9f\x95\x97\x90\x95\x9a\x1e\x0e\x7c\x1f\x7b\x7f\x82\x7a\x7a\x1a\x7a\x95\x7b\x9a\x86\x1e\x0b\x82"
+"\x7a\x7a\x1a\x6d\x9d\x7f\x0b\x90\x1e\x8e\x82\x84\x0b\xf8\xe2\xcf\x1d\x0b\x39\x1d\x7b\x1a\x77\x93\x7f\x9e\x83\x1e\xfb\x07\xfb\x0e"
+"\x4e\xf7\x0d\xf7\x04\x1d\x79\x7b\x1a\x6e\x9c\x7e\xb1\x1e\xf7\x05\xfb\x74\x6d\xfb\x1a\x05\x4d\x06\x6b\x81\x3a\x1d\xf7\x7b\x06\xa7"
+"\x9a\x8f\x96\x99\x91\x1d\x4f\x06\x0b\x67\x1d\x4e\x1d\x6d\x9d\x7f\xb7\x1e\xd4\x06\x5a\xfb\x6f\x05\xfb\x0a\x06\x6b\x81\x88\x7f\xe8"
+"\x1d\x0b\x4e\x1d\x6d\x9d\x7f\xb6\x1e\x0b\x06\x6b\x81\x88\x7f\x7c\x1f\x7b\x7f\x82\x79\x7b\x1a\x0b\x06\x6b\x81\x3b\x1d\x6e\x9d\x7e"
+"\xb6\x1e\x0b\x06\x6b\x81\x88\x7f\x7c\x1f\x7b\x7f\x82\x7a\x0b\x3b\x1d\x6d\x9d\x7f\xb6\x1e\x0b\x3f\x1d\x7a\x7a\x1a\x0b\x9c\x3e\x1d"
+"\x0b\x8f\x96\x99\x1f\x9a\x97\x95\x9d\x0b\x1a\x9c\x81\x9b\x7c\x90\x1e\x8e\x0b\x89\x7e\x7c\x1f\x7b\x7f\x82\x0b\x74\x64\x6e\x9e\x7e"
+"\xb5\x1f\x0b\x7c\x90\x1e\x8e\x83\x84\x8b\x0b\x06\x6a\x82\x89\x7e\x0b\xf8\x7c\xf8\xef\x15\xfb\x4b\x06\x6b\x80\xf7\x19\x1d\xd5\x06"
+"\x32\xfc\x20\x05\xfb\x0a\x06\x6b\x81\x89\x7e\xe8\x1d\x0b\x15\x6f\xfb\x13\x05\x7f\x06\x6b\x81\x3f\x1d\x7a\x7b\x1a\x6c\x9c\x7f\xb7"
+"\x1e\xf7\x0d\x06\xa8\x98\x29\x1d\x9c\x81\x9c\x41\x1d\x77\x1b\x8a\x06\xdb\xf7\xfa\x05\xb2\x8f\xa4\xa3\xac\xa8\x1d\x76\x1b\x27\x06"
+"\x6b\x81\x88\x7f\x30\x1d\x88\x94\x91\x8a\x9f\x1b\x95\x06\x6f\xfb\x14\x05\xfb\x62\x06\xa7\xf7\x14\x05\x97\x06\xaa\x96\x7f\x1d\x27"
+"\x39\x1d\x0b\x8c\x1d\x74\x80\x8c\x8a\x9c\x79\x1f\xf7\x14\xfb\x10\xf7\x49\xf7\x10\x05\xa7\x9e\x91\x92\x9d\x1a\x9d\x7e\x98\x78\x81"
+"\x82\x87\x81\x7d\x1e\x0e\xf7\x55\x1d\xe1\xee\xf5\xdb\xd5\x9d\x7f\x97\x7a\x74\x7f\x80\x6d\x7f\x1f\x61\x7b\x5c\x6e\x56\x1b\x72\x75"
+"\x92\x9a\x78\x1f\x7b\x97\x88\x92\x88\xa8\x08\xac\x88\x84\x94\x75\x1b\x0e\x1f\x9c\x95\x96\x9d\xf7\x4d\x1d\x0b\x7d\x1f\xa3\xe7\x15"
+"\xbd\xac\xc4\xa7\xd1\x1b\xcf\xbd\x6b\x5d\x90\x1f\x0b\x06\x6a\x82\x3f\x1d\x7a\x7a\x1a\x6d\x0b\x06\x6b\x81\xf7\x41\x1d\x0b\x96\x06"
+"\x66\xfb\x3d\x05\x87\x7c\x8a\x7e\x0b\x78\x1a\x79\x94\x7b\x9a\x80\x1e\x84\x96\x98\x88\xa5\x1b\x0b\x7a\x1a\x79\x99\x7e\x9d\x95\x0b"
+"\x88\x7f\x7c\x1f\x7b\x7f\x82\x7a\x7a\x1a\x0b\x82\x7d\x77\x74\x1a\x0b\x8e\x97\x99\x1f\x9b\x97\x94\x9d\x0b\x1a\x9c\x80\x9b\x7d\x90"
+"\x1e\x8e\x0b\x1a\x9b\x80\x9b\x7d\x90\x1e\x8e\x0b\x06\x3b\xfb\xf8\x05\x0b\x5f\x7a\x92\x74\x1b\x0b\x1b\x9c\x9d\x93\x98\x98\x1f\x95"
+"\x95\x8f\x0b\xf8\xe4\xf8\x05\x15\x8e\x9b\x8c\x91\x94\x1a\xa1\x7a\x9a\x73\x7a\x81\x85\x7a\x7e\x1e\x9a\x6a\x63\x93\x5b\x1b\xfb\x1d"
+"\x22\x46\x31\x4c\xbf\x6c\xf7\x10\x63\x1d\x4b\x56\x64\x97\xa2\x75\x1e\xa9\x88\x7c\x99\x6f\x1b\x66\x75\x75\x5f\x81\x1f\x84\x6b\x05"
+"\x88\x7b\x8a\x87\x83\x1a\x73\x9d\x7b\xa6\x99\x93\x8e\x93\x98\x1e\x79\xaf\xbb\x82\xc5\x1b\xf7\x26\xf7\x05\xd2\xe6\xb0\x79\xaa\x6a"
+"\x9f\x1f\x72\x9b\x62\x96\x44\x94\x4e\x93\x84\x8d\x7f\x8f\x84\x1d\x08\x0b\xf8\xf4\xbc\x1d\x0b\x15\x40\x27\x05\x29\x06\x6c\x80\xf7"
+"\x41\x1d\xf7\x6a\xf7\x23\x1d\x83\x85\x8c\x79\x1b\xf7\xd2\xf8\x33\x05\xb2\x8f\xa5\xa3\xac\x1a\x9c\x2c\x1d\x2f\x06\x6c\x7f\x88\x7f"
+"\x7d\x1f\x7b\x7f\x82\x79\x7b\x1a\x6f\x9a\x7f\xae\x89\x1e\xfb\x31\xfb\x5e\x4c\xf7\x5e\xf7\x69\x1d\x7d\x32\x1d\xf7\x42\x1d\x7a\x1a"
+"\x73\x98\x7e\xa7\x87\x1e\x0b\xf8\xee\x15\x2e\xe5\x05\x94\x81\x83\x8f\x82\x1b\x74\x72\x74\x76\x81\x8f\x84\x99\x7e\x1f\xf7\x17\xfb"
+"\x11\xf7\x43\xf7\x10\x99\x95\x92\x91\x8d\x8c\x19\x91\x91\x90\x98\x94\x1a\x9b\x7c\x99\x7a\x81\x7e\x86\x83\x81\x1e\x0e\x05\xfb\x0d"
+"\x06\x6b\x81\x88\x7f\x30\x1d\x88\x0b\x15\x62\x65\x68\x66\x6e\xa1\x76\xa9\xb4\xb1\xae\xb1\xa8\x75\x9f\x6d\x1f\x0e\x1a\x9c\x81\x9a"
+"\x7c\x91\x1e\x8d\x85\x84\x8c\x7e\x1b\x0e\xf8\x87\x15\xfb\x13\x06\x73\xfb\x00\x05\xf7\x13\x06\x0b\x06\xab\x95\x8e\x97\x9a\x1f\x9b"
+"\x97\x94\x9c\x9c\x1a\xa9\x79\x97\x60\x1e\x0b\x7e\x1a\x76\x9a\x7c\x9f\x94\x9c\x93\x94\x95\x1e\x0b\x06\x59\x6b\x72\x64\x6f\x9b\x81"
+"\xb9\x8a\x1f\x0b\xc1\xac\x97\xb3\xc4\x1e\x82\x63\x05\xee\x06\x0b\x65\x68\x66\x6e\xa1\x76\xa9\xb4\xb1\xae\xb1\xa7\x75\xa0\x0b\x7d"
+"\x1f\xe1\x82\xa5\x81\x75\x1a\x75\x52\x78\x0b\x68\x6c\x6e\x6a\x73\x9d\x79\xa5\xae\xaa\xa8\xac\xa4\x79\x9c\x71\x1f\x0b\xfb\x3c\x05"
+"\x58\x4d\x70\x7f\x0b\x06\x61\xfb\x4f\x05\x88\x7e\x8a\x0b\xf8\x3d\x15\xfb\x4b\x06\x6a\x81\x0b\x97\x94\x9d\x9b\x1a\x9d\x81\x9a\x7c"
+"\x90\x1e\x8e\x0b\x1a\xd0\x49\xb6\x21\x53\x0b\x96\x7b\x99\x86\x1e\x88\x93\x96\x8a\x9c\x1b\x0b\x06\xa8\x99\x8f\x96\x99\x1f\x0b\x1f"
+"\xa4\xab\xb3\x98\xbc\x1b\x0b\xf9\x0d\xf8\x92\x15\x90\x9e\x8b\x8d\x93\x1a\xa2\x79\x9b\x72\x76\x7f\x83\x75\x7c\x1e\x9e\x6e\x60\x96"
+"\x59\x1b\xfb\x24\xfb\x0a\x2e\xfb\x06\x64\xa2\x62\xae\x76\x1f\xa7\x79\xa8\x82\xcd\x80\xcc\x7f\x99\x87\x9e\x81\x08\x9a\x83\x94\x7d"
+"\x7d\x1a\x60\x49\x67\x3a\x4c\x54\xa5\xab\x88\x1e\x89\xa5\xdb\x1d\x6c\x93\x55\x95\x3d\x9a\x83\xae\x1d\xb5\xc6\xb0\xcf\xc7\xb3\x73"
+"\x67\x6b\x8b\x8b\x92\x82\x1e\x82\x92\x99\x85\x9a\x1b\x9c\x9c\x93\x98\x98\x1f\x96\x95\x8f\x94\x91\xa5\x08\x0b\xf8\xe4\xf7\x41\x15"
+"\xac\x94\xa0\xa3\xa7\x1a\x9c\x80\x9a\x7d\x32\x1d\x8c\x77\x1b\xfb\x43\x06\x6b\x81\x3b\x1d\x7a\x6a\x1d\xe9\x06\x7e\x50\x05\x7c\x63"
+"\x63\x84\x5b\x1b\x27\x52\xb0\xcd\x9b\x8d\x9c\x8f\x9c\x1f\x98\xc8\x05\xf1\xa2\xe3\xcf\xf7\x00\x1b\xd2\xb7\x78\x6b\x8d\x1f\x8d\x6c"
+"\x8b\x8b\x90\x83\x08\x81\x91\x99\x85\x9a\x55\x1d\x94\x91\xa5\x9c\xd6\x18\x8f\x9d\x8b\x8c\x94\x1a\xa3\x7b\x9b\x72\x77\x7e\x83\x76"
+"\x7b\x1e\x9e\x65\x5d\x95\x56\x1b\x38\x44\x73\x58\x4b\x1f\x48\x58\x5d\x44\x7b\x41\x7c\x47\x18\x86\x78\x89\x77\x77\x1a\x48\xa4\x57"
+"\xba\x6d\x1e\x6f\xb7\xcc\x7b\xd3\x1b\xdb\xbe\x98\xba\xf4\x1f\x0b\xaf\xf7\x86\x15\x87\x7a\x89\x7a\x7a\x1a\xfb\x10\xed\x3b\xf7\x2a"
+"\xe6\xda\xa3\xb9\xc6\x1e\xa5\xa0\x98\x9e\x9f\x7e\x1d\xcb\xc5\x6c\x6a\x89\x1f\x8a\x76\x05\x74\x8a\x9d\x7a\xa5\x55\x1d\x95\x91\xa4"
+"\x9d\xdb\x18\x8f\x9d\x8b\x8c\x94\x1a\xa2\x79\x9c\x71\x79\x7e\x85\x7b\x7a\x1e\xa9\x4c\x73\x91\x52\x1b\xfb\x30\xfb\x25\xfb\x0a\xfb"
+"\x2e\x69\x1f\x0b\xf8\x80\xf8\x1e\x15\xa7\x6d\x5d\x9b\x58\x1b\xfb\x32\xfb\x1e\xfb\x15\xfb\x26\x23\xdb\x42\xf7\x08\xbd\xbb\x99\xa8"
+"\xbb\x1f\x81\x60\x82\x5c\x5e\x6a\x55\x8c\x19\xfb\x01\x4a\x1d\xf7\x03\x06\xf7\x04\xf1\xd9\xf1\xa0\x1f\xd6\xf7\xe6\x05\x98\x06\xaa"
+"\x97\x8e\x97\x9a\x1f\x9a\x97\xaf\x1d\x8e\x82\xf7\x3a\x1d\x3b\x43\x37\x49\x5e\xb2\xc6\xd7\xdb\xd2\xe1\x1f\x0b\xf7\x8b\xf8\x60\x15"
+"\xa7\x06\xb8\xab\xa4\xaf\xa8\x77\x99\x62\x1f\xfb\x28\x06\x59\x6b\x73\x67\x6e\x9f\x7c\xb4\x1f\x9c\x06\x3a\xfb\xf8\xf7\x4b\x1d\xf7"
+"\xb4\xf7\xfd\x50\xfb\x95\x05\x72\x06\x59\x6b\x72\x64\x72\xa1\x7c\xb3\x1f\xf7\x2d\x06\xb8\xab\xa4\xae\xa8\x77\x9a\x62\x1f\x7b\x06"
+"\xd9\xf7\xf8\x05\x97\x06\xb1\xaa\xa7\xad\xa7\x76\x99\x62\x1f\x24\x06\xfb\xaf\xfb\xfd\x05\x0b\xf8\x99\xf7\xd5\x15\x92\x06\xb2\xa9"
+"\xa6\xae\xa9\x7a\x97\x60\x1f\xfb\x04\x06\x59\x6c\x73\x66\x6d\x9d\x7e\xb5\x1f\x90\x06\x6f\xfb\x14\x05\x45\x7c\x67\x69\x4f\x1b\x63"
+"\x76\x9b\xa8\x96\x8d\x99\x93\xac\x1f\xc0\xf7\x7d\x05\xfb\x0b\x06\x58\x6d\x74\x64\x6e\x9d\x7e\xb5\x1f\x90\x06\x6e\xfb\x15\x05\x87"
+"\x77\x88\x73\x7b\x1a\x34\xd0\x4f\xf0\xc9\xbf\xa0\xb4\xb5\x1e\xa9\xa9\x9d\xb1\x9a\xcf\x08\x0b\xf7\x3d\x1d\x86\x8b\x8a\xf4\x1d\xa6"
+"\xf7\x08\x15\x6c\x4f\x50\x7b\x55\x1b\x68\x6f\x98\x9b\x94\x93\x96\x99\x97\x6c\x1d\xac\xa9\x88\x84\xb3\x1f\x0b\x90\x1e\x8e\x82\x85"
+"\x8c\x76\x1b\xfb\xc1\x27\x1d\xeb\x06\x3b\xfb\xfa\x05\x2a\x26\x1d\xf7\xc1\x06\xa8\x99\x28\x1d\x9b\x1a\x9c\x2c\x1d\x2c\x06\x0b\x15"
+"\xfb\x20\x26\x1d\xa9\x06\x65\x65\x1d\x5a\x1b\x5d\x72\x9a\xa7\x91\x8c\x92\x8d\x93\x1f\xc7\xf7\xa2\x5a\x1d\x93\x94\x8a\x9d\x1b\x4b"
+"\x1d\x7b\x1a\x42\xc8\x5b\xe5\xc1\xac\x97\xb3\xc4\x1e\x82\x63\x05\x0b\xf8\xb1\xf7\x0c\x1d\xfc\x13\x37\x1d\x6c\x9c\x7f\xb7\x1e\x0e"
+"\x15\xa7\x9e\x90\x92\x9d\x1a\x9d\x7c\x98\x77\x80\x80\x87\x80\x7d\x1e\xfb\x2b\x21\x05\x73\x7a\x83\xf7\x61\x1d\x98\x1e\x0e\x1a\xa5"
+"\x7a\x9c\x72\x7f\x84\x89\x82\x77\x1e\x76\x5a\x58\x80\x58\x1b\x5b\x71\x94\x9d\x92\x8c\x92\x8d\x94\x1f\x0b\xf7\xf6\xf7\x60\x15\xb8"
+"\xb4\xb2\xb4\xab\x73\xa1\x69\x1f\x7a\x06\x5f\x61\x65\x62\x6b\xa3\x74\xad\x1f\x0e\x06\xa8\x99\xf7\x1a\x1d\x0b\x06\xa9\x98\x8e\x97"
+"\x99\xa0\x1d\x8f\x81\x87\x8b\x75\x1b\x0b\x69\x6c\x6e\x6b\x73\x9d\x79\xa5\xae\xaa\xa8\xac\xa3\x79\x9c\x70\x1f\x0b\x9f\x99\xaf\x1a"
+"\xb1\x74\x99\x4b\x1e\x39\x06\x4c\x73\x7d\x67\x68\xa1\x7a\xb9\x8a\x1f\x6f\xfb\x15\x0b\x1a\xa4\x78\x9d\x71\x7d\x7e\x86\x80\x7d\x1e"
+"\x6b\x71\x8b\x8b\x7f\x85\x08\x7d\x6f\x62\x83\x5d\x1b\x27\x4e\xb8\xd4\x96\x8c\x97\x8e\x96\x1f\x99\xc8\x05\xef\xa1\xe3\xd3\xf0\x1b"
+"\x0b\x96\x1d\x82\x85\x8c\x76\x1b\x0b\xf9\x2a\x15\x65\x64\x66\x66\x70\xa3\x73\xa7\xb4\xb0\xae\xb2\xa8\x75\xa1\x6c\x1f\x0e\xf7\x23"
+"\x1d\x82\x0b\x05\x4e\x25\x1d\x6e\x9d\x7e\xb5\x1e\x0b\x1f\x9b\x97\x94\x9d\x9c\x1a\x97\x86\x96\x81\x93\x1e\x93\x82\x82\x8d\x6f\x1b"
+"\x0b\x08\x80\x90\x83\x91\x91\x1a\x9b\xbf\x9b\xbd\xb5\xa8\x83\x79\xa2\x1e\x6b\x96\x95\x83\xa5\x1b\x9b\x9d\x93\x98\x99\x1f\x95\x95"
+"\x8f\x93\x91\xa6\x0b\x08\x94\x84\x7d\x91\x7c\x1b\x67\x75\x76\x5e\x81\x1f\x7d\x4c\x05\x88\x7e\x8a\x82\x84\x1a\x75\x9e\x7a\xa4\x9c"
+"\x94\x8f\x9d\xa0\x1e\x0b\x98\x1a\xa2\x7a\x9a\x6f\x61\x80\x7e\x48\x7f\x1e\x67\xfb\x5f\x05\x0b\x86\x84\x4d\x1d\x95\x8f\x94\x98\x1e"
+"\x0e\x3a\x6a\x4d\x4e\x1f\x58\x56\x6c\x44\x4a\x1a\x0b\xf7\x38\x15\x94\xb3\x05\x8e\x9a\x8d\x9b\x9b\x1a\xf7\x05\x36\xd4\xfb\x18\xfb"
+"\x3d\xfb\x28\xfb\x13\xfb\x25\x0b\x37\x1d\x6d\x0b\x1e\x3e\x06\x4c\x73\x7d\x67\x68\xa1\x7a\xb9\x8a\x1f\x5a\x0b\x15\x30\xe5\x05\x96"
+"\x80\x85\x8e\x80\x1b\x73\x74\x75\x0b\x1e\xfb\x12\xf7\x40\x1d\x99\x1e\x0e\x91\x9e\x1d\xae\xa8\x9c\xb6\xb5\x1f\x0b\x70\xa2\x76\xa9"
+"\x9d\x9c\x94\x98\x91\x1e\x96\xa1\x9a\xc7\x9f\x1a\xab\x72\x9c\x5d\x51\x0b\x95\x06\x3b\xfb\xfa\x05\x80\x06\x6c\x80\x4e\x1d\x0b\xf7"
+"\x45\x1d\x85\x8c\x76\x1b\x0b\x1f\x9b\x68\x1d\x82\x20\x1d\x0b\xf7\x03\xf7\x17\xf7\x0e\xe7\xf7\x0c\xa5\x1e\x0b\xf8\x61\x15\xc1\x06"
+"\xa9\x97\x8e\x97\x9a\x1f\x0b\x7c\x1f\x7b\x7f\x82\x79\x7b\x1a\x6d\x9d\x7f\x0b\x8e\x97\x9a\x1f\x9b\x97\x94\x9c\x3c\x1d\x0b\x06\x58"
+"\x6c\x74\x65\x6d\x9d\x7e\xb6\x1f\x0b\x90\x9e\x6e\x1f\xa9\x54\x1d\x0b\x89\x7e\x7b\x1f\x7b\x7f\x82\x7a\x7a\x1a\x6d\x9c\x7f\xb7\x1e"
+"\x0b\x84\x79\x7d\x1e\xfb\xd4\xfc\x47\x05\x0b\x8e\x96\x8c\x95\x92\x1a\xab\x72\x9d\x0b\x06\xca\xa3\x99\xb0\xad\x75\x0b\x1a\x6d\x9c"
+"\x7f\xb6\x1e\x0b\x9c\x1b\x99\x91\x88\x7a\xa2\x1f\x70\xb1\xaa\x7d\xa2\x1b\x0b\x06\xa9\x98\x8e\x97\x9a\x1f\x9a\x97\x95\x9d\x9c\x1a"
+"\x0b\x1f\x9b\x97\xaf\x1d\x0b\xa2\xa1\xa2\x96\x8a\x8c\x7a\x9c\x1f\xfb\x12\xf7\x11\x0b\x7c\x1f\x7c\x7f\x81\x79\x7b\x1a\x6d\x9d\x7f"
+"\xb6\x1e\x0b\x83\x72\x78\x19\x76\x70\x65\x7e\x0b\x1b\xc8\xa5\x9b\xaf\xac\x72\x9e\x0b\xa4\x7e\x95\x67\x1f\x0e\x9e\x7a\xa4\x9c\x9c"
+"\x93\x98\x99\x1e\x95\x95\x8f\x0b\x06\xcb\xa2\x99\xb0\xa8\x0b\x1a\x9d\x81\x9a\x7c\x90\x1e\x8e\x82\x85\x8c\x0b\x9e\x7a\xa4\x9c\x9c"
+"\x93\x98\x98\x1e\x96\x95\x0b\x06\x6c\x80\x88\x7f\x7c\x1f\x0b\x90\x80\x95\x82\x1e\x83\x95\x0b\x1f\xa7\xa2\x9e\xa8\xa1\x1a\x0b\x1f"
+"\x7c\x7f\x81\x79\x7a\x1a\x0b\x8d\x7d\x96\x08\x80\x94\x84\x99\x97\x1a\x0b\x94\x9c\x9c\x1a\x9d\x81\x9a\x7c\x90\x1e\x0b\x9e\x7a\xa4"
+"\x9c\x9d\x93\x98\x98\x1e\x95\x0b\xf9\x1f\xf7\x38\x15\x95\xba\x05\x90\xa3\x8e\xa2\xa3\x1a\xe5\x51\xcc\x3b\x60\x66\x7b\x67\x5f\x1e"
+"\xaf\x72\x6a\x9b\x5c\x1b\x70\x40\x7d\x80\x6c\x1f\x6d\x80\x79\x75\x70\x1a\x73\x9d\x79\xa3\x92\x94\x8c\x8e\x94\x1e\x9d\xd0\x92\x8d"
+"\x9d\x1b\x9f\x99\x7e\x7a\x84\x8b\x8a\x8a\x87\x1f\x88\x7b\x05\x8f\x72\x7b\x8c\x7c\x1b\x4c\x39\x70\x67\x5a\x1f\x69\x71\x79\x65\x5b"
+"\x1a\x3e\xc1\x5e\xe6\xb7\xaa\x93\xa1\xb4\x1e\x81\x93\x96\x86\x9a\x1b\x9b\x98\x90\x95\x97\x1f\x75\xa9\xa1\x84\xb3\x1b\xc0\xd9\x9f"
+"\xa0\xab\x1f\xa0\x99\x95\x9d\xa2\x1a\xa2\x7a\x9c\x74\x7d\x7c\x87\x7e\x69\x1e\x7f\x6d\x79\x87\x75\x1b\x65\x7b\xa1\xc1\x87\x1f\xfb"
+"\x0e\x69\x15\x6c\x5f\x6d\x7f\x6f\x1b\x68\x76\x9a\xa4\x97\x8f\x95\x93\x93\x1f\x9c\x9c\xbc\x99\xb5\x1b\x9b\x97\x89\x86\xa0\x1f\xf7"
+"\x19\xd4\x15\xc0\xa0\xa7\xa5\xaf\x1b\xa8\x9c\x74\x64\x88\x8b\x85\x8a\x83\x1f\x0b\xd3\xf2\x15\x87\x06\x6c\x80\x36\x1d\xe9\x06\xb7"
+"\xa9\xa6\xb3\x9d\x81\x97\x76\x90\x1f\xa5\xbc\x05\xe1\x06\x80\x5b\x05\x86\x06\x68\x6d\x6f\x6b\x6f\x9d\x7c\xac\x1f\xf7\xf3\x06\xa6"
+"\xf7\x0c\x05\x8e\x96\x8c\x95\xf7\x5d\x1d\x87\x78\x05\xfb\x1e\x06\xa7\xf7\x15\x05\x96\x06\x8a\x85\x8b\x88\x88\x1a\x73\xf7\x46\x1d"
+"\x9b\xd5\x18\x90\x9e\x8b\x8c\x93\x1a\xa2\x78\x9c\x72\x6b\x75\x79\x68\x80\x1e\x80\x2b\x1d\xf7\x0a\x06\x7e\x52\x05\x88\x7f\x8a\x81"
+"\x84\x1a\x75\x9e\x7a\xa3\xb0\xa1\xa0\xb8\x95\x1e\xaf\xf7\x36\x05\xfc\x4f\x27\x1d\x92\x06\xc2\xfb\x62\x15\x55\x06\xe7\xf7\x3f\x05"
+"\x0b\xf8\xb6\xf7\x41\x15\xac\x94\xa0\xa3\xa7\x1a\x9c\x80\x9a\x7d\x32\x1d\x8c\x77\x1b\xfb\x43\x06\x6b\x81\x3b\x1d\x7a\x6a\x1d\xe9"
+"\x06\x7e\x50\x05\x7c\x63\x63\x84\x5b\x1b\x27\x52\xb0\xcd\x9b\x8d\x9c\x8f\x9c\x1f\x98\xc8\x05\xf1\xa2\xe3\xcf\xf7\x00\x1b\xd2\xb7"
+"\x78\x6b\x8d\x1f\x8d\x6c\x8b\x8b\x90\x83\x08\x81\x91\x99\x85\x9a\x55\x1d\x94\x91\xa5\x9c\xd6\x18\x8f\x9d\x8b\x8c\x94\x1a\xa3\x7b"
+"\x9b\x72\x77\x7e\x83\x76\x7b\x1e\x9e\x65\x5d\x95\x56\x1b\x38\x44\x73\x58\x4b\x1f\x48\x58\x5d\x44\x7b\x41\x7c\x47\x18\x86\x78\x89"
+"\x77\x77\x1a\x48\xa4\x57\xba\x6d\x1e\x6f\xb7\xcc\x7b\xd3\x1b\xdb\xbe\x98\xba\xf4\x1f\x0b\xf7\x5f\xd1\x1d\x7e\x8a\x82\x84\x1a\x74"
+"\x9f\x7a\xa3\xd7\x1d\xf8\x6d\x06\xad\xf7\x28\x05\x8e\x9b\x8c\x91\x92\x1a\xa2\x21\x1d\x0e\xf8\xdf\xf8\x92\x15\x8f\x9c\x8c\x90\x93"
+"\x1a\xa1\x79\x9b\x71\x77\x7f\x83\x75\x7c\x1e\x9e\x6e\x60\x96\x59\x1b\xfb\x24\xfb\x0a\x2d\xfb\x06\x64\xa2\x63\xae\x75\x1f\xa7\x79"
+"\xa8\x83\xcd\x7f\xcd\x7f\x98\x88\x9e\x80\x08\x9a\x83\x94\x7d\x7e\x1a\x5f\x49\x67\x3a\x4c\x54\xa6\xaa\x88\x1e\x89\xa6\xdb\x1d\x6d"
+"\x93\x54\x95\x3e\x9a\x82\xae\x1d\xb6\xc6\xaf\xd0\xc6\xb3\x73\x67\x6b\x8b\x8b\x92\x82\x1e\x82\x92\x99\x85\x9a\x1b\xae\xa2\xa1\xb7"
+"\x95\x1f\x0b\xf7\x0d\xf7\x7c\x15\x6f\xfb\x15\x05\x5f\x8a\x6d\x72\x68\x1a\x6e\x9d\x7e\xb6\x1e\xf7\x61\x06\xf7\x30\x86\xf7\x1a\xf3"
+"\xad\xf7\x2a\x95\xb8\x18\x90\x9f\x8d\xa0\xf1\x1d\x6f\xfb\x12\x18\x87\x06\x6b\x81\x3a\x1d\xf7\x02\x16\xd2\x6b\x1d\x9a\x97\x95\x9c"
+"\x3c\x1d\x82\x20\x1d\x46\x06\xa7\xf7\x12\xf7\x4f\x1d\x63\x1a\x7e\x8a\x7e\x88\x7d\x1e\x81\x60\x76\x2b\x3e\x50\x29\x8f\x19\x22\x06"
+"\x0e\x8c\x76\x1b\x31\x25\x1d\x79\x91\x81\x9e\x81\x1e\xfb\x00\x2a\x49\xeb\x05\xab\x9a\x9a\x9d\xa4\x51\x1d\x82\x20\x1d\x30\x06\x6b"
+"\x81\x88\x7f\x30\x1d\x90\x89\x92\x8a\x98\x8a\xf7\x08\xfb\x40\x18\xfb\x61\xfb\x4e\x05\x60\x8a\x6d\x72\x68\x1a\x6d\x9d\x7f\xb6\x1e"
+"\xf7\x02\x06\xa8\x99\x29\x1d\xa4\x7e\x98\x71\x8e\x1e\xf7\x09\xf5\xd1\x22\x05\x65\x87\x71\x72\x6b\x1a\x6d\x9d\x7f\xb6\x1e\xf7\x02"
+"\x06\xa9\x98\x28\x1d\x9b\x3e\x1d\x86\x84\x8c\x7d\x1b\x0e\xf8\x8b\xf8\x4b\x15\x8f\x1d\x65\x79\x5a\x5e\x1e\x2d\x24\x71\x70\x73\x7b"
+"\x7e\x8c\x19\x88\x06\xa3\xf7\x00\x05\xcb\x8c\xa0\x98\xb1\xe2\x1d\xa6\x06\xa9\x8d\xa4\x70\x9e\x53\xab\x27\x18\xa1\x4c\x8e\x89\xd0"
+"\x89\x08\xf5\x1d\x0b\xf7\x8d\xd1\x1d\x7d\x8a\x84\x83\x1a\x74\x9e\x7a\xa4\xd7\x1d\x0b\xf9\x31\xf8\xef\x15\xca\x1d\xfb\x5e\xf7\x7c"
+"\xf7\x00\x1d\x0b\xf7\x3a\xa5\x15\x70\xb5\xb2\x7f\xbe\x1b\xdf\xe7\xb5\xd1\xd1\x1f\xd1\xd0\xb2\xe7\xe8\x1a\xb6\x85\xa3\x76\xb7\x1e"
+"\xcb\xc7\x05\xa4\xa4\x91\x94\x9e\x1a\xa2\x79\x9c\x72\x77\x81\x86\x71\x71\x1e\x53\x56\x05\xa9\x62\x5e\x9a\x56\x1b\xfb\x4b\xfb\x41"
+"\xfb\x45\xfb\x4f\x5c\x94\x68\xa2\x64\x1f\x44\x47\x05\x70\x72\x86\x82\x78\x1a\x75\x9e\x7a\xa4\x9f\x95\x90\xa4\xa5\x1e\xf8\x48\xf8"
+"\x33\x15\x90\x78\x8c\x81\x79\x1a\xfb\x10\xfb\x01\xfb\x09\xfb\x08\x73\x7a\x8f\x98\x72\x1e\x50\xd1\x15\x83\xa3\x89\x97\xa0\x1a\xf7"
+"\x0f\xf7\x02\xf7\x0a\xf7\x05\xa8\xa2\x84\x7c\xa3\x1e\x0b\xf8\x3d\x75\x1d\xee\x9f\x1d\x9c\x81\x9a\x7c\x91\x1e\x8d\x85\x84\x8c\x7e"
+"\x1b\x0b\xcc\xf2\x15\x80\x06\x6c\x80\x36\x1d\xf7\xbb\x06\xd4\xc7\x9f\xb4\xb7\x1f\xb0\xac\xa3\xbc\xb5\x1a\xb9\x72\xb0\x59\xa6\x1e"
+"\xc5\xaf\xa8\xba\xc1\x1a\xac\x7d\xac\x72\xa2\x1e\xa9\x6c\x62\x98\x51\x1b\xfb\x90\xf7\x39\x1d\xb6\x1e\x95\x06\xdb\xfb\x13\x15\xa7"
+"\xf7\x13\x05\xf7\x16\x06\xc1\xaa\x7a\x6e\x5d\x51\x68\x3e\x1f\xfb\x33\xfb\x7b\x15\xa7\xf7\x14\x05\xf7\x18\x06\xd5\xb9\x71\x60\x65"
+"\x65\x76\x43\x1f\x0e\xf7\xc5\x16\xf7\x27\x06\xbd\xab\xa3\xb0\xa4\x7e\x98\x6f\x8f\x1f\xba\xf7\x6f\xf7\x62\x1d\xa1\x1a\xa6\x76\x9a"
+"\x63\x1e\xfb\x0d\x06\x59\x6b\x74\x66\x6e\x9f\x7d\xb4\x1f\x94\x06\x5c\xfb\x6e\x05\xfb\x70\x06\xba\xf7\x6e\x05\x97\x06\xbd\xab\xa2"
+"\xaf\xa8\x76\x9a\x63\x1f\xfb\x0d\x60\x1d\x5c\xfb\x6e\x05\x63\x85\x72\x74\x6b\x1a\x6f\x9f\x7c\xb4\x1e\xf7\x25\x06\x81\x61\x05\x88"
+"\x7e\x89\x7f\x85\x1a\x76\xa2\x7a\xaa\xac\x9a\x9b\xbe\x96\x1e\x0e\xf9\x10\xf8\x15\x15\xa7\xa0\x94\x98\x9f\x1a\xa2\x79\x9c\x72\x7a"
+"\x80\x86\x77\x72\x1e\x53\x5e\x05\x9c\x68\x5b\x96\x5d\x1b\xfb\x36\xfb\x2b\xfb\x14\xfb\x1e\x66\x94\x6c\x9d\x6e\x1f\x53\x5d\x05\x6e"
+"\x75\x83\x7e\x77\x1a\x74\x9d\x7a\xa4\x9c\x94\x8f\xa1\xa6\x1e\xcd\xc0\x05\x79\xb0\xb3\x82\xb9\x1b\xf7\x38\xf7\x2b\xf7\x14\xf7\x1f"
+"\xae\x83\xa8\x7a\xa9\x1f\x2e\x40\x15\x91\x7c\x8d\x83\x7d\x1a\x3c\x34\x48\x26\x7c\x83\x8c\x8f\x7a\x1e\x3f\xc3\x15\x85\x97\x87\x99"
+"\x97\x1a\xda\xe1\xcf\xee\x9b\x95\x8a\x86\xa0\x1e\x0b\xf8\x52\xf8\x1e\x15\xa7\x6d\x5d\x9b\x58\x1b\xfb\x32\xfb\x1e\xfb\x14\xfb\x27"
+"\x23\xdb\x42\xf7\x08\xbd\xbb\x99\xa8\xbb\x1f\x81\x60\x82\x5c\x5e\x6a\x55\x8c\x19\xfb\x01\x4a\x1d\xf7\x03\x06\xf7\x04\xf1\xd9\xf1"
+"\xa0\x1f\xd6\xf7\xe6\x05\x98\x06\xaa\x97\x8e\x97\x9a\x1f\x9a\x97\x94\x9c\x9c\x1a\x9d\x81\x9b\x7d\x8f\x1e\x8e\x81\xf7\x3a\x1d\x3a"
+"\x43\x38\x49\x5e\xb3\xc5\xd7\xdb\xd2\xe1\x1f\x0b\xf8\x61\x15\xf0\x06\x78\x37\x05\x88\x7f\x8a\x81\x85\x1a\x74\xf7\x2a\x1d\x8f\x93"
+"\x91\xa7\xb5\xf7\x50\x18\xfc\xa0\x66\x1d\x83\x84\x1a\x74\xa6\x1d\x94\x91\xa6\x9e\xe0\x18\xee\x06\x3b\xfb\xfa\x82\x1d\xf7\x7b\x06"
+"\xa7\x9a\x8f\x96\x99\x92\x1d\x4e\x06\x0b\xf8\x61\x15\xf7\x63\x06\x79\x38\x05\x86\x77\x8b\x8a\x83\x1a\x74\x9e\x7a\xa4\x9d\x9c\x92"
+"\x99\x98\x1e\x96\x96\x8e\x92\x91\xa7\xb5\xf7\x50\x18\xfc\x70\x06\x6e\x7d\x87\x80\x7d\x1f\x7b\x7f\x82\x79\x7a\x1a\x7f\x90\x80\x95"
+"\x83\x1e\x83\x94\x93\x89\xa8\x1b\xbe\x06\x3c\xfb\xfa\x05\x55\xaa\x1d\x7b\x7f\x82\x79\x7a\x1a\x7f\x90\x80\x95\x83\x1e\x83\x94\x93"
+"\x89\xa8\x1b\xf7\x69\x5e\x1d\x58\x06\x0e\xf7\xb7\xf8\x3d\x15\xfb\x06\x06\x58\x6c\x73\x66\x6b\x99\x82\xbb\x8a\x1f\x5b\xfb\x6e\x05"
+"\x7c\x06\x64\x6c\x6f\x69\x6d\x9c\x7f\xb6\x1f\xf7\x09\x06\xbd\xaa\xa2\xb1\xaa\x7c\x96\x5c\x8c\x1f\xa1\xef\x95\xb8\x96\xa2\xa4\xa1"
+"\x19\xa5\xa8\xa9\x99\xa6\x1b\xa7\x9f\x78\x70\x83\x88\x7a\x85\x70\x1f\x37\xfc\x00\x05\x86\x74\x89\x7f\x84\x1a\x72\x9d\x7b\xa6\x9f"
+"\x9d\x93\x9a\x98\x1e\x93\x93\x8e\x96\x93\xac\xdf\xf8\x00\x18\x91\xa5\x8e\xa5\xa1\x1a\xdd\x56\xc0\x39\x62\x6b\x80\x71\x67\x1e\x0b"
+"\xcb\x1d\x9b\x97\x94\x9d\x3c\x1d\x83\x84\x8b\x77\x1b\x6d\x06\x0b\xf7\x8c\xf8\x61\x15\xb2\x8e\x9e\x9d\xaa\x1a\xb0\x74\x99\x4b\x1e"
+"\x4c\x06\x4c\x73\x7d\x67\x69\x9f\x7b\xb4\x88\x1f\xf3\xfb\xad\x6a\x64\x77\x72\x6e\x73\x81\x8a\x19\x8f\x9b\x8c\x95\x94\x1a\xa8\x77"
+"\x9d\x6b\x67\x7c\x7a\x57\x7f\x1e\x7e\x51\x05\x89\x7f\x8a\x87\x88\x1a\x76\xc1\x76\xc0\xc6\xc0\xab\xd0\xc3\x1e\xf7\xc3\xf8\x0a\x05"
+"\xbe\x8d\xa2\x9b\xaf\x1a\xaf\x73\x99\x4c\x1e\x3d\x06\x4c\x73\x7d\x66\x6f\x99\x7b\xab\x84\x1f\xfb\x28\xfb\x4a\x05\x0b\xe8\xf2\x15"
+"\x5f\x8a\x6d\x72\x68\x1a\x6e\x9d\x7e\xb6\x1e\xf7\x61\x06\xf7\x2f\x86\xf7\x1b\xf3\xad\xf7\x2a\x95\xb8\x18\x90\xa0\x8d\x9f\xf1\x1d"
+"\x08\xa8\xfb\xfa\x15\xda\xf7\xfa\xf7\x4f\x1d\x64\x1a\x7d\x8a\x7e\x88\x7d\x1e\x81\x5f\x76\x2c\x3e\x50\x29\x8f\x19\x0b\xd4\x1d\x81"
+"\x9b\x7c\x32\x1d\x8c\x77\x1b\xfb\x17\x42\x1d\x7b\x1f\x7b\x7f\x82\x78\x78\x1a\x76\x96\x7f\xa5\x87\x1e\x62\xfc\x62\x05\xf7\x0a\x06"
+"\x0b\xf8\x5d\xf8\x60\x15\x3c\xfb\xf8\x05\x7f\x06\x5a\x6a\x73\x67\x6d\x9e\x7d\xb5\x1f\xf7\x0d\x06\xbe\xaa\xa2\xb1\xaa\x7c\x96\x5c"
+"\x8c\x1f\xdb\xf7\xf9\x05\xb2\x90\xa4\xa2\xac\x1a\xa9\x7a\x97\x5f\x1e\xfc\x18\x06\x56\x6e\x76\x63\x6e\x9a\x7d\xa8\x1f\x91\x06\x3c"
+"\xfb\xf9\x05\x73\x7d\x8a\x86\x81\x1f\x76\x82\x7b\x73\x74\x1a\x6e\x9d\x7f\xb6\x1e\xf7\x0d\x06\xbd\xaa\xa2\xb1\xa9\x7a\x98\x5f\x1f"
+"\x82\x06\xda\xf7\xf8\x05\x0e\xf8\x6a\xf3\x15\xda\xf7\xf8\x05\xc5\x8d\x7d\x1d\x05\x60\x43\x5e\x7a\x61\x1b\x70\x7e\x94\x9d\x96\x8e"
+"\xa0\x8e\x98\x1f\xa5\xf7\x08\x05\xcc\x8c\xa0\x98\xb1\x1a\xb2\x74\x98\x4b\x1e\x33\x06\x4c\x73\x7d\x67\x68\xa0\x7a\xb8\x8a\x1f\x72"
+"\xfb\x04\x05\x86\x75\x88\x73\x7c\x1a\x44\xc5\x59\xdd\xbb\xb9\x97\xa3\xba\x1e\x75\x28\x05\x0b\xfb\x0d\x06\x6b\x81\x88\x7f\x7c\xf7"
+"\x3f\x1d\x8b\x9e\x1b\x96\x06\x73\x20\x05\xa9\x68\x5f\x99\x52\x1b\x30\x42\x6f\x4f\x4e\x1f\x57\x59\x6c\x45\x4a\x1a\x55\xa3\x58\xb3"
+"\x6a\x1e\x71\xac\xbd\x7d\xc8\x1b\xc4\xb4\x96\xab\xc4\x1f\x84\x6d\x05\xf7\x0d\x06\xaa\x97\x8e\x97\x99\x1f\x9b\xf7\x33\x1d\x80\x06"
+"\x0b\xb7\x8c\xa9\xa4\xae\x1a\x9c\x2c\x1d\xfb\x16\x06\x6b\xe7\x1d\xa9\x06\x51\xfb\x9b\xfb\x3f\xf8\x02\x05\xfb\x09\x06\x6b\x80\x88"
+"\x7f\x7d\xf7\x2f\x1d\x60\x6d\x72\x67\x6d\x9d\x7f\xb6\x1f\xf7\x15\x6b\x1d\x0b\x15\x90\x88\x91\x87\x93\x86\x08\x7a\xa4\x99\x85\x9e"
+"\x1b\xa7\xa7\x9b\xb4\xb6\x1f\xa4\xa2\x92\x96\x9b\x1a\x9e\x7d\x9a\x79\x80\x80\x85\x80\x81\x1e\x68\x6c\x7e\x81\x7c\x1b\x83\x8b\x8b"
+"\xa5\x63\x1f\xaa\x5c\x81\x90\x73\x1b\x67\x68\x77\x60\x65\x1f\x7a\x79\x85\x7f\x7d\x1a\x79\x99\x7e\x9e\x95\x94\x8f\x93\x93\x1e\xb4"
+"\xb6\x95\x93\x97\x1b\x92\x90\x88\x7d\xa0\x1f\x0e\xbc\xf7\x6e\x05\xc2\x8c\x9f\x99\xaf\x1a\xb1\x74\x99\x4b\x1e\x42\x06\x4c\x73\x7d"
+"\x66\x6a\xa0\x7a\xb5\x89\x1f\x7e\x4e\x05\x6f\x4d\x5f\x7f\x5c\x1b\x78\x7f\x90\x94\x8d\x8c\x8e\x8e\x9c\x1f\x9a\xcc\x05\xc9\xa1\x98"
+"\xb1\xb1\x74\x99\x4a\x1f\x3d\x06\x4c\x73\x7d\x66\x6b\x9e\x7a\xb4\x88\x1f\x7e\x50\x05\x87\x78\x89\x7e\x7d\x1a\x4e\xc2\x63\xde\xb4"
+"\xb3\x93\x9d\xba\x1e\x0b\x08\xe9\xb7\xba\xc6\xd4\x1a\xe3\x43\xc1\xfb\x09\x1e\xfb\x73\x27\x1d\x95\x06\x3b\xfb\xf9\x05\x80\x06\x6b"
+"\x81\x88\x7f\x7c\x1f\x7b\x7e\x31\x1d\xb6\x1e\xf7\x29\x06\xa8\x9a\x8f\x96\x98\x1f\x9a\x97\x95\x9d\x3c\x1d\x83\x20\x1d\x6d\x06\x0b"
+"\xd5\x1d\xa3\xbf\x48\x1d\x0b\xf8\xc9\x15\x9e\x97\x93\xf7\x07\x1d\x95\x8f\x94\x99\x1e\xfb\x10\xe6\x15\x64\x1d\xf7\xd7\x16\x64\x1d"
+"\x0b\xf7\x7c\x15\xd8\x06\x8a\x89\x05\x87\x79\x8b\x8a\x82\x1a\x74\xa9\x1d\x8e\x93\x91\xa6\xa3\xf7\x00\x18\x90\x9d\x8b\x8e\x93\x1a"
+"\xa2\x78\x9c\x72\x7a\x7a\x83\x7e\x7e\x1e\x80\x80\x88\x84\x84\x6f\x8a\x87\x18\x3f\x2b\x1d\xf7\x76\x06\x81\x60\x05\x88\x0b\xf7\x0b"
+"\x1d\xae\xa2\xa2\xb7\x95\x1e\x8c\x90\x05\xf7\x02\x1d\x0b\x1f\x9b\x98\x94\x9c\x9c\x1a\x9c\x2c\x1d\xfb\x29\x42\x1d\x7c\xf7\x2f\x1d"
+"\x80\x06\x6c\x80\x89\xf7\x57\x1d\xb6\x1e\xf7\x29\x06\xa8\x0b\x81\x9a\x7c\x90\x1e\x8e\x82\x85\x8c\x77\x1b\xfb\x17\x49\x1d\x9c\x7f"
+"\xb7\x1e\xba\x06\x35\xfb\x82\x71\xf7\x5f\x05\xfb\x01\x06\xfb\x09\xfb\x5e\x9f\xf7\x81\x05\xb8\x06\xa9\x98\x8e\x97\xf7\x49\x1d\x0b"
+"\x89\x1d\xfb\x03\xe0\x46\xf7\x1f\xdc\xf7\x07\x9f\xa1\xb7\x1e\xa2\x96\x98\x9e\xa2\x1a\xa2\xf7\x38\x1d\x29\x72\x87\x5d\x1b\x37\x60"
+"\x0b\x15\x8c\x98\x8c\x97\x93\x1a\xb9\x64\xaf\x5a\x59\x64\x67\x5d\x84\x8c\x7e\x8c\x7e\x1e\xa8\xfb\xac\x05\x6a\x8e\xa1\x77\xac\x1b"
+"\xab\xa1\x9f\xac\x8e\x1f\x5a\xfb\x80\x15\xb5\xac\xaa\xb2\xb2\x6a\xaa\x61\x1f\x7a\x06\x62\x6a\x6c\x64\x64\xac\x6c\xb4\x1f\x0b\x9c"
+"\x9d\x93\x98\x98\x1e\x95\x95\x8f\x95\x91\xa5\xac\xf7\x28\x18\xfc\x59\x27\x1d\x90\x1d\x6e\x9d\x7e\xb6\x1e\x0b\xda\x1d\x0e\xf8\x2d"
+"\xf8\x60\x15\xea\xf7\x6b\x1d\xfb\xbc\x06\x57\x6d\x40\x1d\xe7\x06\x3c\xfb\xf8\x05\x2c\x06\x58\x6c\x40\x1d\xf7\xbd\x06\xbf\xa9\xa2"
+"\xb2\xa8\x79\x98\x60\x1f\x2e\x06\x0b\xf7\xf5\xf8\x49\x15\x2e\x2f\x65\x4d\x50\x1f\x5c\x59\x6f\x4e\x54\x1a\xfb\x03\xe2\x40\xf7\x16"
+"\xf7\x39\xf7\x2b\xf7\x13\xf7\x1f\xf7\x02\x34\xd7\xfb\x13\x1e\x70\x24\x15\xd9\xc0\x63\x50\x3c\x35\x47\x28\x40\x56\xb4\xc5\xd8\xe1"
+"\xd1\xeb\x1f\x0b\x8b\x8b\x85\x93\x85\x1d\x72\xb9\xba\x80\xc1\x1b\xf7\x31\xf7\x09\xe3\xf7\x0b\xbb\x6f\xb4\x5d\x9f\x1f\x71\x97\x0b"
+"\xfb\x44\x06\x9d\xda\x05\x8f\x9d\x8b\x8d\x93\x1a\xa2\x78\x9c\x72\x67\x74\x75\x5f\x82\x1e\x79\x3a\x05\x6b\x42\x1d\xa2\x1d\xa9\x06"
+"\x5e\xfb\x5d\x05\x89\x82\x8a\x83\x7f\x1a\x0b\xf7\x28\x1d\xa7\xc5\xab\x99\xaf\xa3\xa8\x1f\xb5\xaf\xbc\xa0\xca\x1b\xb6\xad\x83\x7c"
+"\xa0\x1f\x95\x83\x8f\x83\x7c\x1a\x68\x98\x7c\xaa\xaf\xa2\xa1\xb7\x95\x1e\x0b\x15\xf0\x1d\x82\x7d\x1a\x7b\x9a\x7d\x9d\x9a\x9b\x94"
+"\x9b\x99\x1e\x0e\x05\x80\x06\x6c\x80\x36\x1d\xf7\x6a\x7a\x1d\x2d\x06\x0e\x1f\x9a\x97\x95\x9e\x9b\x1a\x9c\x80\x9b\x7d\x90\x1e\x8f"
+"\x82\x87\x8b\x75\x1b\xfb\x16\x25\x1d\x6f\x9b\x7e\xae\x8a\x1e\x51\xfb\x98\x05\x87\x7a\x89\x7c\x7e\x1a\x0b\xf8\x61\x15\xb7\x8c\xa9"
+"\xa4\xae\x51\x1d\x82\x85\x8c\x76\x1b\xfb\x15\x27\x1d\xa9\x06\x50\xfb\xa1\x05\x53\x7e\x0b\x1a\xb1\x74\x99\x4b\x1e\x2c\x06\x4b\x74"
+"\x7e\x66\x67\xa3\x79\xbb\x1f\x8d\x06\x3c\xfb\xf8\x05\x4d\x74\x7d\x64\x66\xa2\x7d\xcb\x1f\xea\x06\xca\xa3\x99\xb0\xaf\x74\x9c\x58"
+"\x1f\xaa\xf7\x24\x05\x0b\x15\x3d\x3f\x44\x43\x56\xb8\x61\xc3\xb5\xb4\x9d\xab\xac\x1f\xa7\xa8\x97\xa6\xb1\x1a\xc1\x60\xb3\x4f\x1e"
+"\x7f\x4f\x15\xac\x9f\x79\x6d\x68\x63\x67\x64\x6b\x75\x9e\xa7\xb0\xb2\xae\xb4\x1f\x0b\x1f\x9f\xe4\x05\x8d\x96\x8d\x96\x92\x1a\xa1"
+"\x78\x9c\x72\x67\x75\x75\x5f\x81\x1e\x68\xfb\x32\x05\x5a\xeb\xbd\x7c\xc7\x1b\xc7\xc8\x9e\xae\xbd\x1f\xc4\xb3\xa4\xb0\x9a\xca\x08"
+"\x0e\x06\x4c\x67\x6b\x5f\x57\x1a\x61\xa9\x72\xbe\xb0\xba\x97\x9c\xa7\x1e\x9a\x95\x96\x9c\x9a\x1a\x9f\x7d\x98\x76\x83\x85\x89\x86"
+"\x80\x1e\x7e\x6c\x80\x87\x7f\x1b\x80\x86\x8e\x92\xa1\x0b\xf7\x02\x06\xad\xa0\x9d\xa8\x9e\x7e\x95\x70\x1f\xfb\x00\x06\x8d\x98\x8c"
+"\x91\x93\x1a\xa7\x7d\x99\x6f\x66\x77\x77\x5a\x7e\x1e\x5e\x06\x69\x76\x79\x6e\x77\x98\x82\xa6\x1f\xb6\x06\x0b\x82\x3b\x1d\x6d\x9c"
+"\x7f\xb6\x1e\x0b\x7c\x1f\x7b\x7f\x31\x1d\xb6\x1e\xf7\xeb\x06\xa8\x99\x29\x1d\x9c\x2c\x1d\xfb\x08\x06\x0b\xf9\x47\x15\x97\x7f\x87"
+"\x8d\x7f\x1b\x74\x75\x77\x76\x81\x91\x7f\x98\x80\x1f\xf7\x0c\xfb\x00\x05\x82\x95\x97\x85\x91\x1b\xa3\xa0\x9f\xa2\x96\x86\x93\x7d"
+"\x98\x1f\x0e\x95\x97\x1a\x9b\x7e\x96\x79\x82\x83\x88\x84\x81\x1e\x85\x87\xfb\xb8\xfb\x46\xf7\x69\xfb\x47\x05\x7e\x99\x8e\x8a\x96"
+"\x1b\xa1\xa1\x9d\x9e\x92\x87\x94\x83\x93\x1f\x0b\xee\x1d\x0e\x99\x84\x7c\x7a\x7d\x82\xf7\x01\x1d\x0b\x15\x9e\x97\x93\x97\x99\x1a"
+"\x9a\x80\x95\x7b\x82\x80\x87\x82\x7e\x8d\x1d\x15\x3c\x3f\x46\x44\x52\xb6\x62\xc7\xdb\xd7\xd0\xd3\xc3\x60\xb4\x4e\x1f\x80\x50\x15"
+"\xaa\xa1\x77\x6f\x67\x62\x68\x62\x6c\x75\x9f\xa7\xaf\xb4\xae\xb4\x1f\x0b\x7e\x84\x81\x7f\x1a\x7b\x98\x80\x9d\x94\x93\x8e\x92\x95"
+"\x1e\x91\x8f\xf7\xb7\xf7\x46\xfb\x68\xf7\x47\x05\x98\x7c\x89\x8c\x80\x1b\x75\x75\x79\x78\x84\x0b\x8c\x8c\x8c\x8c\x8c\x8d\x8f\x8f"
+"\x8e\x8d\x8c\x8d\x08\x93\x95\x8e\x92\x96\x1a\x9d\x7d\x98\x77\x7b\x7d\x83\x7a\x7d\x1e\x23\xfb\x0e\x05\x7b\x7a\x86\x0b\x9f\x1a\xf7"
+"\x11\x37\xdf\xfb\x11\x1e\xfb\x69\x06\x6a\x82\x3f\x1d\x7a\x7b\x1a\x79\x95\x7b\x9a\x86\x1e\x90\x89\x92\x8a\x98\x8a\x0b\x22\xee\xfb"
+"\x26\x1f\x7b\x3d\x15\xf6\xd8\x43\x27\xfb\x1b\xfb\x1e\xfb\x16\xfb\x23\xfb\x03\x3e\xd1\xf1\xf7\x1d\xf7\x1e\xf7\x14\xf7\x27\x1f\x0e"
+"\x15\xfb\x05\xfb\x5b\x05\x85\x81\x88\x81\x84\xf7\x3e\x1d\xc3\x16\xfb\x05\xfb\x5b\x05\x85\x0b\x8a\x88\x1f\x87\x79\x05\x91\x66\x6d"
+"\x8e\x6b\x1b\x24\x35\x69\x4e\x55\x1f\x70\x6d\x7d\x6b\x6e\x1a\x4b\xce\x5b\xe6\xc3\xc7\x97\xa1\xbf\x1e\x0b\x9e\x06\xca\xa2\x99\xb0"
+"\xb2\x75\x99\x4b\x1f\x7c\x06\x69\xf7\x01\x80\xb0\x79\xa8\x74\xa3\x19\xaf\xb1\xd4\xdd\x90\x91\x90\x90\x97\x97\x19\x0b\x81\x9b\x7c"
+"\x90\x1e\x8e\x83\x84\x8b\x76\x1b\x8a\x06\xb2\xf7\x3f\x05\x8e\x99\x8c\x98\x98\x1a\xd5\x50\xbc\x30\x59\x58\x78\x6a\x60\x1e\x0b\x15"
+"\xd8\xb7\x67\x4d\x6e\x7e\x6b\x74\x71\x1f\x63\x68\x5d\x77\x51\x1b\x3f\x5e\xaf\xc9\xa8\x98\xab\xa2\xa5\x1f\xb3\xaf\xb8\x9f\xc5\x1b"
+"\x0b\x73\x7b\x77\x91\x94\x7b\x1f\x96\x79\x8a\x8c\x82\x1b\x72\x74\x75\x74\x7d\x92\x81\x9b\x81\x1f\x7e\xa1\xb2\x81\xa7\x1b\xd5\xc7"
+"\xc0\xcd\x0b\xf7\x19\x06\xfb\xc6\xf7\x5e\x1d\x9b\x8c\x8f\x93\x1a\xa2\x78\x9c\x72\x6b\x76\x7a\x68\x80\x1e\x0b\x32\x1d\x8c\x77\x1b"
+"\x2f\x06\x6c\x80\x2a\x1d\x7a\x1a\x7e\x8f\x82\x96\x81\x1e\x4b\x60\x5f\x0b\x05\xaa\x97\x9c\xa0\xa6\x1a\x9c\x81\x9b\x7c\x8f\x1e\x8e"
+"\x83\x20\x1d\x31\x06\x6b\x81\x88\x7f\x7c\x1f\x7b\x7f\x82\x0b\x15\xe4\x31\x05\x82\x94\x94\x87\x95\x1b\xa3\xa2\xa1\xa1\x97\x8a\x8c"
+"\x7a\x9c\x1f\xfb\x12\xf7\x11\xfb\x4b\xfb\x11\x05\x6e\x0b\x06\x92\xac\x05\xa1\x90\xa0\x9e\x9f\x1b\x94\x97\x89\x85\x99\x1f\x86\x9b"
+"\x8f\x8a\x95\x1b\xad\xaa\xa9\xac\xab\x5e\xa1\x0b\x97\x99\x1a\x9a\x80\x95\x7c\x81\x81\x87\x82\x7e\x1e\xfb\x13\x38\x05\x79\x7f\x82"
+"\x7f\x7d\x1a\x7c\x96\x80\x9b\x94\x0b\x98\x9f\x9f\x3e\x1d\x82\x85\x8c\x77\x1b\x2e\x06\x6c\x81\x2a\x1d\x0b\x6f\x82\x7e\x7b\x71\x1a"
+"\x69\xa4\x79\xbc\x1e\xb0\x06\xba\xa5\x9d\xad\xa3\x81\x99\x73\x97\x1f\x99\xde\x95\x7a\x8f\x0b\x80\x1a\x74\xa1\x77\xa4\xa2\x9a\x96"
+"\xad\x9e\x1e\xd8\xb7\xc0\xac\xdb\x1b\xc0\xad\x78\x6d\x5d\x50\x66\x42\x1f\x0b\xf7\xa9\xf2\x15\xf7\xc8\xf7\x82\x9e\xdf\x05\xfc\x35"
+"\x06\x73\x21\x05\x89\x81\x89\x7e\x84\x1a\x75\x9e\x7a\xa4\x0b\xf7\x6e\x15\xa9\x97\x8e\x97\x9a\x1f\x9b\x97\x94\x9d\x9c\x51\x1d\x83"
+"\x82\x8c\x78\x1b\x0b\x15\x37\x06\xfb\x55\xfb\x7e\x80\x56\x05\xf7\x37\x06\x88\x7c\x05\x78\x06\x6c\x78\x7c\x73\x79\x97\x83\xa4\x1f"
+"\x0b\xfb\x12\xf7\x11\xfb\x4a\xfb\x11\x05\x6e\x78\x86\x84\x7a\x1a\x79\x98\x7e\x9e\x95\x94\x8f\x94\x99\x1e\x0e\xfb\xd5\x05\x40\x06"
+"\xbd\xf7\x6e\x05\xae\x94\x9d\x9f\xa9\x1a\xa9\x77\x99\x62\x1e\x5f\x06\x51\x6c\x76\x64\x0b\xf7\x64\x1d\x7f\x7d\xf7\x53\x1d\x06\xa8"
+"\x99\x8f\x96\xf7\x49\x1d\x81\x9b\x7c\x91\x1e\x8d\x86\x84\x8c\x7e\x1b\x0b\x05\xb6\x91\xa1\x9f\xac\x1a\xa9\x77\x99\x61\x1e\x48\x06"
+"\x52\x6c\x76\x64\x70\x99\x7e\xa9\x88\x1f\x0b\x1a\x9c\x2c\x1d\x2f\x06\x6b\x81\x88\x7f\x7c\x1f\x7b\x7f\x82\x0b\xf7\x11\x18\xfb\x4a"
+"\xfb\x10\x05\x6f\x78\x85\x83\x4d\x1d\x93\x8e\x95\x9a\x1e\x0b\x1f\x7b\x7f\x82\x79\x7b\x1a\x7a\x95\x7b\x9a\x86\x1e\x0b\x81\x87\x82"
+"\x7e\x1e\xfb\x13\xf7\x40\x1d\x0b\xf7\x27\x1d\x88\x93\x94\x8a\x0b\x64\xfb\x41\x05\x89\x7e\x89\x81\x85\x1a\x75\x9e\x7a\xa5\xad\xa3"
+"\xa2\xb6\x94\x1e\x9b\xd2\x05\x0b\x2a\x1d\x7a\x1a\x7a\x6a\x1d\x0b\x29\x1d\x9c\x2c\x1d\x0b\x74\x75\x72\x83\x91\x80\x96\x81\x1f\xf7"
+"\x02\x21\x05\x7e\x98\x93\x87\x95\x1b\xa5\xa3\xa1\x0b\x1a\x75\xb0\x1d\x0b\xaa\x1d\x7b\x7f\x82\x79\x7a\x1a\x7a\x95\x7c\x9a\x86\x1e"
+"\x87\x94\x0b\xf7\xb3\x15\xf7\x54\xf7\x42\x05\xb5\x8c\xa9\xa5\xad\x3e\x1d\x0b\x95\x93\x87\x96\x1b\xa2\xa1\x1d\xfb\x4b\x0b\xdc\x06"
+"\xa8\x9a\x8f\x96\x98\x1f\x9b\x97\x94\x9d\x9b\x1a\xaa\x7b\x97\x5e\x1e\x81\x06\x0b\x7e\x8c\x19\x88\x06\xa3\xf7\x00\x05\xcb\x8c\xa0"
+"\x98\xb1\x1a\xb1\x74\x99\x4b\x1e\x0b\x06\xa8\x99\x29\x1d\x9d\x81\x9b\x7c\x90\x1e\x8e\x0b\x06\xa9\x98\x8e\x97\x99\x1f\x9b\x68\x1d"
+"\x0b\xfb\x33\x15\xa6\x9c\x79\x70\x6d\x71\x76\x67\x6f\x79\x98\x9f\xaa\xac\xab\xaa\x1f\x0b\x28\x1d\x9c\x1a\x97\x86\x96\x81\x94\x1e"
+"\x92\x82\x83\x8d\x0b\xf7\x35\x1d\xb2\x8a\x93\x0b\x06\x6b\x81\x2a\x1d\x7b\x1a\x7a\x95\x7b\x9a\x86\x1e\x0b\x1a\xa4\x78\x9d\x72\x7e"
+"\x81\x87\x83\x7f\x1e\x6a\x5b\x69\x82\x3b\x1b\x26\x5b\x0b\x9a\x80\x1e\x84\x96\x98\x88\xa5\x1b\xf8\xb4\x06\xa2\x98\x8d\x91\x95\x1f"
+"\x9c\x0b\xb0\x1d\x95\x0b\x86\x95\x19\xad\x79\x6c\x9c\x5e\x1b\x66\x7a\x7e\x65\x81\x1f\x82\x66\x05\x0b\x15\xa3\x9e\x78\x74\x73\x78"
+"\x78\x74\x73\x78\x9e\xa3\xa1\x9e\x9f\xa2\x1f\x0b\x16\x62\x65\x68\x66\x6e\xa1\x76\xa9\xb4\xb1\xae\xb0\xa9\x75\x9f\x6d\x1f\x0b\x96"
+"\x96\x1d\x0b\xf7\x5f\x1d\x95\x06\x3b\xfb\xfa\x05\x0b\x9f\x1a\x9d\x7f\x97\x78\x75\x81\x82\x6b\x7d\x1e\x60\x77\x5d\x70\x55\x1b\x0b"
+"\x31\x05\x81\x94\x94\x87\x95\x1b\xa3\xa2\xa1\xa2\x94\x88\x90\x82\x94\x1f\x0b\x80\x1f\xf7\x02\x21\x05\x80\x97\x94\x86\x95\x1b\xa5"
+"\xa3\xa1\xa2\x95\x0b\x97\x94\x9d\x9b\x1a\x9d\x81\x9b\x7d\x90\x1e\x8e\x82\x84\x8b\x77\x1b\x0b\x1f\xf7\x02\x21\x05\x80\x96\x95\x86"
+"\x95\x1b\xa5\xa3\xa1\xa2\x95\x86\x0b\xe1\x06\xca\xa3\x99\xaf\xae\x75\x9c\x5d\x8c\x1f\x9a\xd2\x05\xa2\x06\x0b\x7a\x1a\x6d\x9d\x7f"
+"\xb6\x1e\xf7\x02\x06\xa9\x99\x8f\x96\x99\x1f\x9b\x0b\x7c\x82\x76\x77\x1f\x6e\x6f\x88\x89\x7d\x1b\x80\x81\x90\x9e\x6e\x1f\x0b\x7a"
+"\x9c\x73\x80\x7f\x89\x88\x7e\x1e\x74\x0b\x06\x6b\x80\x88\x7f\x7d\x1f\x7b\x7f\x82\x7a\x7a\x1a\x6d\x9c\x7f\x0b\x85\x8c\x77\x1b\xfb"
+"\x0c\x06\xfb\x2d\x31\x15\xcb\xb8\x63\x51\x40\x0b\x89\x87\x82\xf7\x71\x1d\x92\x8e\x8b\x0b\x8f\x9d\x8b\x8c\x93\x1a\xa4\x7b\x9a\x71"
+"\x75\x7e\x83\x78\x80\x1e\x0b\x95\x9a\x8d\x8f\x9d\x1e\x96\xbb\xb1\x90\xad\x1b\xc2\xa3\x81\x74\x0b\x1a\x7e\x99\x80\x9a\x9a\x95\x91"
+"\x9d\x9b\x1e\xf7\x58\xf7\x76\x05\x0b\x1f\x7b\x7f\x82\x7a\x7b\x1a\x79\x95\x7b\x9a\x86\x1e\x88\x93\x94\x0b\x38\x05\x79\x7f\x82\x7f"
+"\x7d\x1a\x7b\x96\x81\x9b\x94\x94\x8f\x94\x0b\x88\x7f\xa2\x1d\x0b\x8c\x77\x1b\x31\x06\x6b\x81\x2a\x1d\x0b\x15\x63\x71\x77\x6e\x72"
+"\x99\x81\xae\x1f\xf7\x88\x06\xb2\xa6\x0b\xac\x1d\x9c\x80\x95\x79\x7a\x80\x83\x78\x0b\x1f\x9a\x97\x95\x9d\x9c\x1a\x9b\x81\x9b\x7c"
+"\x90\x1e\x8e\x82\x0b\xb0\x1d\x94\x8f\x95\x91\xa5\x0b\x79\x7a\x72\x82\x8f\x82\x90\x85\x1f\x78\x9e\xba\x7c\xb4\x1b\x0b\x1a\x9e\x7d"
+"\x98\x77\x7f\x84\x88\x7e\x0b\x99\x1f\x9a\x97\x95\x9d\x9b\x1a\x9c\x0b\x7d\x98\x77\x7f\x84\x88\x7e\x78\x1e\xfb\x31\x21\x05\x74\x0b"
+"\x05\x7d\xf7\x6c\x1d\xf4\x06\x0b\x1f\x9a\x97\x95\x9d\x9b\x51\x1d\x0b\x9e\x1a\x9d\x82\x9b\x7c\x96\x1e\x93\x7f\x82\x8d\x6e\x1b\x0b"
+"\x7e\x82\x7b\x7b\x1a\x7e\xab\x1d\x0b\x05\xf6\x06\xb0\xa9\x83\x7b\x9e\x1f\xa5\x76\x9c\x64\x0b\xf7\x39\x15\xab\xfb\x39\x05\xec\x06"
+"\xf7\x2f\xf7\xd6\x0b\x15\xe5\x31\x05\x82\x94\x93\x87\x96\x1b\xa3\xa2\xa1\x0b\xf7\xfa\x15\xc8\xfb\x76\x05\xeb\x06\xf7\x2e\xf7\x74"
+"\x0b\x1a\x7b\x96\x81\x9b\x94\x95\x8f\x94\x99\x1e\x0e\x83\x1b\x85\x7f\x92\x98\x7c\x1f\x0b\x15\x70\x77\x74\x6b\x43\xcf\x52\x0b\x63"
+"\x65\x68\x66\x6e\xa1\x76\xa9\x0b\x7f\x7c\x1f\x7b\x7e\x82\x7a\x7a\x1a\x6e\x9d\x7e\x0b\x05\xb1\x8d\xa6\xa5\xac\x1a\xa7\x76\x99\x63"
+"\x1e\x0b\x06\x67\x6b\x6e\x6a\x70\xa0\x7c\xb3\x1f\xaf\x06\x0b\x83\x1a\x75\x9e\x7a\xa4\x9c\x9d\x93\x98\x98\x1e\x0b\xf7\x6e\x05\xa2"
+"\x06\xb0\xab\xa7\xac\xa7\x76\x99\x0b\x8a\x19\x89\x87\x84\x8a\x82\x1b\x80\x06\x93\xb6\x0b\x92\x1a\xa2\x78\x9c\x72\x67\x75\x75\x5f"
+"\x81\x1e\x0b\xfb\x81\x78\x36\x05\xf8\x4e\x06\x9f\xe2\x05\x8e\x0b\x1f\x7b\x7f\x82\x79\x7b\x9d\x1d\x0b\xfb\x1c\xf4\x27\xf7\x24\xf7"
+"\x5c\xf7\x4e\xf7\x40\x0b\x7f\x7c\x1a\x78\x99\x7e\x9f\x94\x9a\x91\x95\x0b\x05\xa4\x98\x8d\x8f\x94\x1f\xa0\x94\x9c\xa3\x0b\x06\x6b"
+"\x81\x89\x7f\x7c\x1f\x7b\x7e\x82\x7a\x0b\x87\x82\x7e\x1e\xfb\x12\x38\x05\x78\x7f\x82\x0b\x15\x98\x7d\x86\x8e\x7f\x1b\x70\x74\x75"
+"\x72\x0b\x1f\x7a\x81\x80\x79\x78\x1a\x7a\x94\x7a\x9a\x0b\xe1\x15\xae\xa7\x9e\xb0\xb0\x1a\xc0\x64\xaf\x0b\x96\x80\x9b\x99\x97\x93"
+"\x9c\x0b\x05\xb4\x8d\xa7\xa4\xad\x1a\x9d\x81\x9a\x0b\x06\xbd\xab\xa3\xaf\xa9\x77\x99\x62\x1f\x0b\x06\xbf\xa9\xa2\xb2\xa8\x78\x98"
+"\x61\x1f\x0b\x06\x66\x6b\x6e\x6a\x6f\xa0\x7d\xb3\x1f\x0b\x06\x59\x6b\x73\x66\x6c\x9d\x7f\xb6\x1f\x0b\x86\x1e\x88\x93\x94\x8a\x9e"
+"\x1b\x96\x06\x0b\xf7\x78\xf7\x67\x15\xf7\x45\xf7\x17\x05\x0b\x15\xfb\x24\x06\xeb\xfb\x78\x05\x78\x93\x0b\x1e\x88\x83\x86\x8a\x87"
+"\x1b\x83\x88\x8e\x0b\x1f\xa0\xa1\x94\x99\x98\x1a\x99\x7d\x97\x0b\xfb\x10\x05\x6e\x77\x86\x84\x7a\x1a\x79\x0b\x78\x9c\x72\x7a\x79"
+"\x83\x7e\x7e\x1e\x81\x0b\x06\x73\xfb\x00\x05\xf7\x13\x06\x0e\x01\x00\x01\xe3\x01\x05\x00\x01\x0a\x02\x01\x40\x03\x01\x87\xff\x02"
+"\x87\xa0\x02\x8e\x02\x00\x01\x00\x02\x00\x03\x00\x39\x00\x71\x01\x31\x02\x06\x02\x84\x03\x15\x03\x35\x03\x7d\x03\xc4\x04\x31\x04"
+"\x6f\x04\x71\x04\x73\x04\x7a\x04\xa5\x05\x06\x05\x38\x05\x9d\x06\x16\x06\x66\x06\xd3\x07\x4b\x07\x83\x07\xec\x08\x64\x08\x83\x08"
+"\xa9\x08\xf3\x09\x0a\x09\x54\x09\xbe\x0a\x62\x0a\x65\x0a\xc9\x0a\xcc\x0a\xcf\x0a\xdf\x0b\x31\x0b\x34\x0b\x59\x0b\x5c\x0b\x87\x0b"
+"\x8a\x0b\x8d\x0b\xeb\x0b\xee\x0b\xf1\x0b\xff\x0c\x9f\x0c\xa2\x0c\xa5\x0c\xa8\x0c\xab\x0c\xfe\x0d\x26\x0d\x2f\x0d\x3b\x0d\x51\x0d"
+"\x89\x0d\xb4\x0d\xee\x0e\x22\x0e\x3c\x0e\x4d\x0e\x50\x0e\xc4\x0e\xc7\x0e\xca\x0e\xcd\x0f\x22\x0f\x25\x0f\x69\x0f\x71\x0f\xa6\x0f"
+"\xa9\x0f\xac\x10\x28\x10\x2b\x10\x2e\x10\x32\x10\xb8\x10\xbb\x10\xbe\x10\xc1\x10\xc4\x11\x0f\x11\x12\x11\x1f\x11\x22\x11\x38\x11"
+"\xb1\x11\xbe\x12\x36\x12\x72\x12\xb9\x13\x43\x13\xc4\x13\xc6\x14\x72\x14\xde\x15\x8e\x16\x2e\x16\x4c\x16\x6e\x16\x86\x16\xb5\x16"
+"\xc8\x17\x29\x17\xbd\x17\xbf\x18\x08\x18\x6d\x18\x6f\x18\xf8\x19\x0f\x19\x11\x19\x1f\x19\x3a\x19\x82\x19\x92\x19\xcf\x1a\x3c\x1a"
+"\x58\x1a\x5e\x1a\x64\x1a\x97\x1a\x99\x1a\x9f\x1a\xa5\x1a\xab\x1a\xb1\x1a\xc7\x1a\xcd\x1a\xed\x1a\xf3\x1a\xf5\x1a\xf8\x1b\x77\x1b"
+"\xe2\x1b\xe5\x1c\x65\x1c\x92\x1c\x95\x1c\x9a\x1c\xea\x1c\xed\x1d\x6f\x1d\xff\x1e\x38\x1e\x58\x1e\xd5\x1f\x96\x1f\x98\x20\x1f\x20"
+"\x59\x20\xb6\x21\x02\x21\x3a\x21\x70\x21\x9e\x21\xd4\x22\x22\x22\x7e\x22\xfd\x23\x0a\x23\xab\x24\x06\x24\x74\x24\xef\x25\x12\x25"
+"\x2d\x25\x34\x25\x4c\x25\x78\x25\xc3\x26\x30\x26\x60\x26\x82\x26\xaa\x26\xdb\x26\xe1\x27\x02\x27\x09\x27\x16\x27\x6b\x27\x97\x27"
+"\x9e\x27\xb5\x27\xc2\x28\x0d\x28\xc7\x28\xe3\x29\x07\x29\x15\x29\x2c\x29\x57\x29\x75\x29\xde\x2a\x77\x2a\x96\x2a\xc3\x2a\xca\x2a"
+"\xf6\x2b\xb5\x2c\x4d\x2c\x7e\x2c\xb1\x2c\xcc\x2c\xf2\x2d\x3f\x2d\x63\x2d\x98\x2d\xaf\x2e\x02\x2e\x24\x2e\x51\x2e\x62\x2e\x8d\x2e"
+"\xcb\x2f\x49\x2f\x97\x2f\xdf\x30\x03\x30\x54\x30\x5c\x30\x72\x30\xcf\x31\x41\x31\xae\x32\x18\x32\x9c\x32\xfb\x33\x67\x34\x01\x34"
+"\x6e\x34\x8c\x34\x93\x34\x95\x34\xfc\x35\x03\x35\x66\x35\x96\x35\x98\x35\xae\x35\xe8\x35\xf0\x35\xf8\x35\xfa\x35\xff\x36\x01\x36"
+"\x1c\x36\x30\x36\x43\x36\x56\x36\x6a\x36\xa1\x36\xc2\x36\xc4\x37\x69\x37\x78\x37\xab\x38\x56\x38\x5a\x38\x62\x38\x69\x38\x71\x38"
+"\x78\x39\x18\x39\x2c\x39\xaa\x39\xbc\x39\xc1\x39\xc8\x39\xfc\x39\xfe\x3a\x1b\x3a\x3c\x3a\x6b\x3a\xc2\x3a\xda\x3a\xe1\x3a\xe7\x3b"
+"\x1b\x3b\x3a\x3b\x41\x3b\x5a\x3b\x5c\x3b\x62\x3b\x68\x3b\x70\x3b\x88\x3b\x91\x3b\xaa\x3b\xb1\x3c\x28\x3c\x2d\x3c\x97\x3c\xb5\x3d"
+"\x52\x3d\x54\x3d\xec\x3d\xf4\x3e\x2d\x3e\x34\x3e\x36\x3e\x3d\x3e\xea\x3f\x02\x3f\x0a\x3f\x5c\x3f\x5e\x3f\xd0\x3f\xd5\x40\x41\x40"
+"\xc9\x40\xe3\x40\xfc\x41\x13\x41\x3a\x41\x46\x41\xbe\x42\x1d\x42\x25\x42\x8f\x42\xb6\x42\xe3\x43\x00\x43\x2d\x43\xe2\x43\xf2\x44"
+"\x00\x44\x13\x44\x25\x44\x53\x44\x5b\x44\x62\x44\x64\x44\x66\x44\xc5\x44\xc7\x44\xcb\x45\x39\x45\x3b\x45\xc3\x46\x95\x47\x18\x47"
+"\x1b\x47\x46\x47\x49\x47\xae\x47\xb0\x47\xbf\x47\xc4\x47\xc6\x47\xc8\x47\xcb\x47\xcd\x47\xd0\x48\x65\x48\x67\x48\x89\x48\xd8\x49"
+"\x1b\x49\x72\x49\xd2\x4a\x52\x4a\x99\x4b\x1f\x4b\xa0\x4c\x2f\x4c\x76\x4d\x0c\x4d\x4c\x4d\xcd\x4d\xd0\x4d\xd2\x4d\xf0\x4e\x15\x4e"
+"\xa3\x4f\x41\x4f\xec\x50\x00\x50\x2b\x50\x48\x50\xb5\x51\x08\x51\x0b\x51\x83\x51\x88\x51\xf5\x52\xae\x53\x49\x53\x4c\x53\x7e\x53"
+"\x81\x53\xea\x54\x4f\x54\x8e\x54\x90\x54\xdc\x54\xe0\x54\xee\x55\x30\x55\x36\x55\xf4\x56\x01\x56\x58\x56\x77\x56\xa6\x56\xe9\x57"
+"\x39\x57\xc4\x58\x14\x58\x8b\x59\x0e\x59\x85\x59\xb0\x5a\x06\x5a\x1b\x5a\x90\x5a\xc3\x5a\xcb\x5b\x18\x5b\x26\x5b\xa5\x5c\x3a\x5c"
+"\x46\x5c\x4e\x5c\xe4\x5d\x10\x5d\x12\x5d\x66\x5e\x16\x5e\xb4\x5f\x87\x5f\xef\x60\x67\x60\x6f\x60\xa3\x60\xd7\x61\x3d\x61\xb5\x61"
+"\xda\x62\x29\x62\x6f\x62\xb5\x62\xc1\x63\x09\x63\x57\x63\xae\x64\x1e\x64\x25\x64\x2d\x64\x40\x64\x48\x64\xa4\x65\x1a\x65\x86\x65"
+"\x8e\x65\xbf\x66\x29\x66\x4d\x66\x52\x66\x5a\x66\x61\x66\x6d\x66\xac\x66\xb4\x67\x4f\x67\x89\x67\xf8\x68\x8e\x68\xde\x69\x33\x69"
+"\x36\x69\x5b\x69\x68\x69\x82\x69\xc8\x6a\xd2\x6b\x26\x6b\x2d\x6b\x34\x6b\x69\x6b\x70\x6b\xd2\x6c\x08\x6c\x5f\x6c\x95\x6c\xb9\x6c"
+"\xc0\x6d\x1c\x6d\x25\x6d\x90\x6d\xc1\x6d\xef\x6d\xfe\x6e\x5f\x6e\xc8\x6e\xf3\x6e\xf6\x6f\x42\x6f\x74\x6f\x83\x6f\xd9\x6f\xf0\x70"
+"\x64\x70\x7d\x70\xe8\x70\xee\x71\x36\x71\x3e\x71\x45\x71\x5e\x71\xc1\x72\x62\x72\xa9\x73\x23\x73\x33\x73\x75\x73\xfa\x74\x02\x74"
+"\x9b\x74\xa3\x74\xaa\x75\x33\x75\xb5\x75\xff\x76\x06\x76\x0d\x76\x14\x76\x39\x76\x79\x76\x7b\x76\xcc\x76\xd9\x76\xe1\x77\x44\x78"
+"\x15\x78\x8b\x79\x06\x79\x83\x79\xd8\x7a\x2b\x7a\xbf\x7b\x27\x7b\x53\x7b\x89\x7b\x90\x7b\x97\x7b\xb7\x7c\x11\x7c\x18\x7c\x72\x7c"
+"\x87\x7c\x8f\x7c\xac\x7c\xef\x7d\x9b\x7d\xe1\x7e\x5f\x7e\xd9\x7f\x37\x7f\xef\x80\x61\x80\xbd\x81\x17\x81\x2a\x81\x32\x81\x3a\x81"
+"\x42\x81\x6b\x81\x6c\x81\x6e\x81\x75\x81\x8e\x81\x90\x81\x92\x81\xaf\x82\x2e\x82\x95\x83\x12\x83\x24\x83\x50\x83\x9d\x83\xa4\x83"
+"\xe2\x84\x1d\x84\xf5\x85\xb2\x86\x4c\x86\xf6\x87\x85\x87\xf1\x88\x4f\x88\xef\x89\x63\x89\xfd\x8a\x74\x8a\xa6\x8a\xd3\x8b\x0d\x8b"
+"\x19\x8b\x4e\x8b\xb3\x8c\x1c\x8c\xa5\x8d\x19\x8d\x3c\x8d\x66\x8d\xea\x8e\xa8\x8f\x1f\x8f\x39\x8f\x3b\x8f\x66\x8f\xe5\x90\x52\x90"
+"\x5a\x90\x62\x90\xb2\x90\xb4\x90\xc8\x90\xd0\x90\xdd\x91\x96\x92\x12\x92\x14\x92\x16\x92\x2d\x92\x4b\x92\xa6\x92\xbc\x93\x1d\x93"
+"\x4a\x93\x5f\x93\xbf\x93\xda\x94\x1c\x94\x23\x94\x2a\x94\xba\x94\xe8\x95\x22\x95\x29\x95\x3d\x95\xd0\x95\xdb\x95\xfe\x96\x06\x96"
+"\x0d\x96\x7e\x0e\x0e\xf8\x82\xf8\x8b\x15\x94\xa8\x8d\x95\x98\x1a\xaf\x6e\xa5\x62\x6f\x6e\x7e\x76\x77\x1e\x79\x78\x85\x7b\x86\x60"
+"\x69\xfb\xaf\x18\x8a\x88\x8b\x88\x89\x1a\x70\x9b\x7b\xa7\xa9\xa3\x9e\xaa\x95\x1e\x2a\xfb\x7f\x15\x2c\x0a\x0e\xf7\x98\xf8\xdb\x15"
+"\x77\xfb\x8a\x05\x8a\x85\x8b\x86\x89\x1a\x7c\x97\x80\x9b\xa1\x97\x95\xa6\x94\x1e\xe3\xf7\x8c\x05\xc9\x16\x77\xfb\x8a\x05\x8a\x85"
+"\x8b\x86\x89\x1a\x7c\x97\x80\x9b\xa1\x97\x96\xa5\x94\x1e\xe3\xf7\x8c\x05\x0e\xf8\xb7\xf8\x44\x15\xb7\xf7\x28\x05\x92\xa4\x8b\x8b"
+"\x91\x1a\xa3\x78\x9d\x72\x7a\x7b\x84\x7f\x7d\x1e\x80\x81\x88\x84\x83\x6f\x5d\xfb\x31\x18\x4b\x06\xb7\xf7\x28\x05\x90\x9d\x8d\x92"
+"\x93\x1a\xa1\x78\x9d\x72\x68\x74\x76\x60\x81\x1e\x5c\xfb\x31\x05\x73\x06\x6b\x81\x89\x7e\x30\x1d\x88\x94\x92\x8a\x9f\x1b\x99\x06"
+"\x70\x2e\x05\x6d\x06\x6b\x81\x88\x7f\x30\x1d\x88\x94\x94\x8a\x9d\x1b\x9f\x06\x5f\xfb\x28\x05\x87\x7b\x89\x82\x84\x1a\x74\x9e\x79"
+"\xa4\xae\xa3\xa1\xb5\x94\x1e\xba\xf7\x31\x05\xca\x06\x5f\xfb\x28\x05\x87\x7c\x89\x82\x83\x1a\x74\x9e\x79\xa2\x9b\x9c\x92\x97\x99"
+"\x1e\x91\x92\x97\xa1\x90\x9a\xb9\xf7\x32\x18\xa2\x06\xaa\x97\x50\x1d\x9b\x1a\x9c\x80\x51\x0a\x83\x8c\x78\x1b\x7d\x06\xa7\xe8\x05"
+"\xa8\x06\xaa\x96\xd7\x0a\xfb\x32\x24\x15\x6f\x2e\x05\x4c\x06\xa7\xe8\x05\x0e\xf8\x7b\xf8\xe5\x15\xf7\x29\x0a\x7a\x7a\x83\x7e\x7e"
+"\x1e\x81\x81\x86\x82\x86\x70\x86\x75\x18\x24\x7a\x3b\x3b\x35\x1a\x4b\xb5\x62\xdf\x7a\x1e\xd2\x7d\x05\xb9\x82\x9e\x7e\x74\x1a\x5e"
+"\x52\x67\x46\x55\x5d\xa1\xa6\x89\x1e\x8a\xa6\x8b\x8b\x84\x93\x08\x94\x83\x7d\x91\x7d\x1b\x7a\x79\x83\x7e\x7e\x1f\x81\x81\x86\x82"
+"\x86\x71\x7d\x50\x18\x88\x7a\x8a\x87\x83\x1a\x74\x9e\x7a\xa5\x9a\x95\x8f\x98\x9e\x1e\xa5\x7e\x92\x89\xae\x83\x7a\x40\x18\x88\x7f"
+"\x8a\x81\x84\x1a\x75\x9e\x7a\xa4\x9b\x9c\x93\x98\x99\x1e\x95\x95\x8f\x93\x91\xa6\x9c\xd8\x18\xf7\x10\xa2\xdf\xdc\xee\x1a\xd0\x63"
+"\xaf\x28\xa0\x1e\x4d\x97\x05\x63\x94\x76\x99\x9e\x1a\xb0\xb9\xa6\xcb\xae\xb0\x7c\x7d\x6d\x9b\x7b\xaa\x9c\x9c\x92\x99\x99\x1e\x95"
+"\x95\x8e\x92\x92\xa7\x92\xaa\x18\x8e\x99\x8c\x91\x93\x1a\xa1\x78\x9c\x72\x81\x83\x89\x87\x7f\x1e\x8c\x88\x88\x8c\x8a\x1b\x76\x93"
+"\x84\x8d\x82\x8d\x7d\x8d\x19\x0e\xf7\xfd\xf8\xe8\x15\x31\x38\x3c\x37\x4d\xba\x5e\xcc\xe4\xdf\xd9\xe0\xca\x5d\xb7\x49\x1f\x7d\x4c"
+"\x15\xae\xa4\x73\x6b\x5d\x5f\x61\x5a\x68\x72\xa3\xad\xb7\xb8\xb5\xbb\x1f\xf7\x6b\xfb\x6a\x15\xa5\x93\x96\x95\x9d\x1a\x9a\x82\x95"
+"\x7e\x85\x85\x8a\x88\x81\x1e\xfc\x17\xfb\x05\x05\x70\x83\x81\x81\x79\x1a\x7c\x94\x81\x98\x90\x94\x8d\x8d\x92\x1e\xf7\x90\xbc\x15"
+"\x31\x38\x3d\x37\x4d\xba\x5e\xcc\xe4\xdf\xd9\xdf\xca\x5d\xb7\x49\x1f\x7d\x4c\x15\xae\xa4\x73\x6b\x5e\x5f\x61\x5b\x68\x72\xa3\xac"
+"\xb7\xb8\xb5\xba\x1f\x0e\xf8\x2b\xf7\x5d\x15\x4a\xf7\x18\x05\x81\x9d\x84\x9f\x92\x1a\xa6\xa8\xa4\xab\x9e\x95\x85\x6f\xa5\x1e\xbb"
+"\xa2\x05\xb5\x9e\x99\x9b\xa7\x1a\xa2\x77\x9e\x73\x85\x83\x89\x86\x7d\x1e\x96\x74\x77\x90\x74\x1b\x2d\x29\x33\x38\x78\x8f\x78\x97"
+"\x6e\x1f\x38\x62\x59\x42\x3e\x1a\x43\xc8\x5e\xeb\xbe\xad\x93\x9d\xab\x1e\x92\x7e\x05\xca\x20\x0a\x9b\x1a\x9c\x80\x9c\x7d\x8f\x1e"
+"\x8f\x82\x85\x8b\x77\x1b\x98\x9c\x95\x9b\x9d\xaf\x08\xaa\x8f\xa4\xa6\xaa\x1a\x9b\x80\x9b\x7d\x90\x1e\x8e\x83\x84\x8c\x76\x1b\x54"
+"\x06\xfb\x0a\xfb\x42\x15\x82\x79\x81\x89\x74\x1b\x5d\x75\x97\xa4\xad\xa3\xa8\xb5\x9e\x1f\x0e\xf7\xf0\xf8\xee\x15\xfb\x0d\xfb\x7f"
+"\x05\x83\x7d\x8a\x86\x83\x1a\x7e\x99\x80\x9b\x98\x99\x93\x9b\x98\x1e\xf7\x5f\xf7\x9a\x05\x0e\xf8\xd0\xf8\xf7\x15\x6d\x77\x7b\x48"
+"\x55\x1f\xfb\x08\xfb\x23\x57\xfb\x0f\xfb\x19\x1a\x37\xa8\xfb\x04\xb0\x50\x1e\x7e\x94\x97\x84\x9d\x1b\xae\xaa\xa8\xac\x91\x8a\x90"
+"\x86\x97\x1f\x6b\xd6\x7e\xc5\xcc\x1a\xf7\x16\xc1\xf7\x0c\xf7\x0e\xf7\x1e\x1e\x9b\x9e\x90\x95\x9b\x1a\xa3\x78\x9c\x71\x1e\x0e\xf7"
+"\xc2\xf8\xf7\x15\x68\x6c\x6e\x6a\x85\x8c\x86\x90\x7f\x1f\xab\x41\x98\x50\x4a\x1a\xfb\x15\x54\xfb\x0d\xfb\x0d\xfb\x1e\x1e\x7b\x79"
+"\x86\x7f\x7c\x1a\x73\x9e\x7a\xa5\xa9\xa0\x9b\xce\xc0\x1e\xf7\x09\xf7\x25\xbe\xf7\x0d\xf7\x19\x1a\xdf\x6e\xf7\x04\x65\xc6\x1e\x98"
+"\x83\x7e\x92\x7a\x1b\x0e\xf7\xb7\xf7\xfa\x15\x4c\x4b\x05\x73\x72\x85\x81\x79\x1a\x72\x9d\x7a\xa5\xa1\x97\x92\xa5\xa5\x1e\xcb\xcc"
+"\xad\x4b\x05\x70\x99\x95\x84\xa2\x1b\xab\xac\xa9\xa8\x96\x89\x90\x81\x9e\x1f\x69\xcb\xe2\xa4\x05\xb8\x97\x9f\x9f\xaa\x1a\xa2\x79"
+"\x9e\x73\x81\x87\x8a\x85\x75\x1e\x36\x73\x9c\xd8\x05\x8e\x9a\x8c\x91\x93\x1a\xa1\x78\x9c\x72\x68\x74\x75\x5f\x81\x1e\x79\x3b\x3f"
+"\xa4\x05\x91\x77\x88\x8c\x82\x1b\x6a\x6c\x6d\x6b\x75\x96\x80\xab\x81\x1f\x0e\xf8\x27\xf7\x6f\x15\xf7\x1e\x7b\x1d\xfb\x1c\x06\xac"
+"\xf7\x2b\x05\x90\x9e\x8b\x8c\x94\x1a\xa1\x78\x9c\x72\x67\x74\x75\x5f\x82\x1e\x68\xfb\x2d\x05\xfb\x1e\x4a\x1d\xf7\x1c\x06\x6a\xfb"
+"\x2b\x05\x89\x81\x89\x80\x83\x1a\x75\xa9\x1d\x8f\x94\x91\xa5\x08\x0e\xc3\x0a\x76\x1d\xf7\xc5\x7d\x15\x2c\x0a\x0e\xf9\x13\xf8\xdb"
+"\x15\x9c\xa3\x8f\x94\x98\x1a\xa4\x78\x9c\x72\x71\x7c\x81\x6a\x73\x1e\xfc\x65\xfd\x1c\x05\x7c\x76\x85\x7e\x7e\x1a\x74\x9f\x79\xa3"
+"\xa6\x99\x95\xad\xa3\x1e\x0e\xf8\xe9\xf7\xee\x15\x91\xa6\x8e\xa6\xa7\x1a\xf7\x0c\x4e\xd0\xfb\x00\x4f\x57\x79\x68\x60\x1e\x4d\x57"
+"\x5e\x3e\x77\x33\x77\x31\x18\x85\x70\x88\x6f\x70\x1a\xfb\x0d\xc8\x47\xf7\x00\xc7\xbf\x9d\xae\xb6\x1e\xc9\xbe\xb8\xd9\x9f\xe2\x08"
+"\xfb\xcd\xec\x15\xee\xa1\xc6\xca\xd0\x1b\xc0\xa9\x66\x4a\x78\x89\x77\x86\x78\x1f\x75\x23\x05\x2a\x75\x4f\x4b\x47\x1b\x56\x6d\xb0"
+"\xcb\x9f\x8d\x9e\x8f\x9f\x1f\x0e\xf8\x7f\xf8\xfe\x15\xfb\x7a\x55\x05\x5b\x80\x77\x78\x68\x1a\x72\x9b\x7a\xa3\x95\x8f\x8c\x90\xa0"
+"\x1e\xe0\x9f\x36\xfc\x10\x05\x2a\x26\x1d\xf7\xc1\x06\xa7\x9a\x3d\x1d\x9c\x52\x1d\x82\x20\x1d\x2b\x06\x0e\xf7\x85\xf3\x15\xa7\x9f"
+"\xf7\x1e\xe8\xc1\xb3\xc3\xb9\x19\xc7\xbd\xa8\xbf\xc9\x1a\xe3\x41\xc9\x21\x4e\x4e\x77\x68\x5b\x1e\x5a\x68\x65\x57\x6b\x1a\x75\x9f"
+"\x79\xa4\xa1\xa2\x97\x9d\x95\x1e\x9c\xa9\x8d\x8d\x96\x96\x08\xa3\xa7\xaf\x99\xb3\x1b\xc1\xb2\x70\x64\x64\x7b\x7a\xfb\x19\x2a\x1f"
+"\x5b\x68\x50\x62\xfb\x34\x20\x84\x87\x18\x73\xfb\x00\x05\xf8\x62\x06\x9f\xe2\x05\x8f\x9d\x83\x0a\x6b\x76\x7a\x69\x80\x1e\x0e\xf7"
+"\xf9\xf8\x09\x15\x68\x6b\x6f\x6b\x73\x9b\x7d\xa9\x8a\x1f\xb5\x89\x98\x89\x9d\x83\x08\xac\x7d\xa2\x70\x71\x1a\x71\x7b\x6d\x72\x79"
+"\x1e\x74\x6b\x65\x82\x47\x1b\x4b\x70\x90\x9b\x76\x1f\x95\x7c\x86\x8d\x7e\x1b\x69\x6c\x6e\x69\x5f\xd7\x6e\xf7\x07\xf5\xce\x9f\xbd"
+"\xc4\x1f\xb9\xb4\xab\xc8\xbb\x1a\xba\x70\xb3\x57\xa7\x1e\xdb\xb5\xb0\xbc\xcb\x1a\xe1\x47\xc2\x20\xfb\x0d\xfb\x07\x50\x4d\x74\x9e"
+"\x79\xa4\x9a\x9a\x91\x94\x96\x1e\xad\xb2\xa8\x95\xc1\x1b\xc6\xae\x77\x68\x60\x57\x60\x56\x1f\x0e\xf8\xdc\xf8\xed\x15\xfb\x1e\x06"
+"\xfb\xdc\xfc\x14\x78\x36\x05\xf7\xa4\x06\x85\x6e\x05\x68\x06\x6c\x80\x36\x1d\xf7\x18\x06\xa8\x9a\x29\x1d\x9c\x81\x9b\x7c\x90\x1e"
+"\x85\x8d\x84\x8c\x7e\x8c\x91\xa8\x18\xb8\x8c\xa8\xa4\xae\x1a\x9d\x81\x9a\x7c\x90\x1e\x85\x8d\x85\x8c\x7d\x8c\x08\xfb\x00\x16\xfb"
+"\x1d\x06\xf7\x4c\xf7\x69\x05\x0e\xf7\xe2\xf8\x86\x15\xf7\x5a\x06\xa9\x98\x28\x1d\x9c\x1a\xa9\x7a\x96\x5f\x1e\xfb\xc5\x06\x4e\xfb"
+"\xa6\x05\x8a\x85\x8a\x84\x88\x1a\x73\x9e\x79\xa4\x96\x90\x8c\x92\x9a\x1e\x9f\xb8\xbc\x98\xac\x1b\xbf\xac\x6c\x5a\x6b\x80\x6b\x79"
+"\x73\x1f\x66\x6e\x5f\x7b\x41\x1b\x4a\x70\x92\xa2\x73\x1f\x98\x7e\x84\x8e\x7c\x1b\x69\x6b\x6d\x6b\x59\xde\x66\xf7\x04\xf7\x03\xd3"
+"\xa6\xcb\xc5\x1f\xb5\xbb\xa4\xc9\xc7\x1a\xef\x47\xcd\x23\x6d\x69\x86\x81\x68\x1e\x0e\xf7\xb2\xf7\xdb\x15\xf7\x00\xbe\xf6\xd7\xee"
+"\x1b\x93\x90\x8a\x88\x94\x1f\x84\x9c\x94\x89\x94\x1b\xae\xab\xa9\xac\xad\x61\xa1\x49\xfb\x0b\xfb\x18\x40\xfb\x05\x3b\x1f\x58\x43"
+"\x70\x33\x2e\x1a\xfb\x13\xc6\x4c\xf7\x0b\xdb\xcb\xa6\xc2\xbc\x1e\xb3\xb8\xa3\xc9\xc3\x1a\xe2\x47\xcd\x32\x5b\x65\x7c\x61\x53\x1e"
+"\x77\xfb\x11\x15\xba\xb0\xc3\xab\xb5\x1b\xb5\xaa\x6c\x61\x74\x81\x6e\x7a\x75\x1f\x6d\x75\x6c\x7c\x61\x1b\x6e\x72\x94\x99\x80\x1f"
+"\x7f\x99\x81\xad\xa8\x1a\x8d\x8b\x90\x8c\x91\x1e\x0e\xf8\x8e\xf8\x86\x15\xfb\x83\xfc\x33\x05\x80\x77\x86\x7f\x7f\x1a\x75\xa0\x79"
+"\xa3\xa7\x9c\x97\xb0\xa0\x1e\xf7\x99\xf8\x59\xa1\xef\x05\xfc\x4d\x06\x77\x34\x05\x88\x7d\x8a\x85\x83\x1a\x75\x9e\x7a\xa5\xaa\xa0"
+"\x9c\xad\x96\x1e\x0e\xf8\x83\xf7\xc8\x15\xd9\xb7\xb2\xc1\xcc\x1a\xe1\x42\xc7\x23\x4a\x48\x73\x61\x5b\x1e\x5f\x65\x6d\x54\x5f\x1a"
+"\x62\x9e\x6a\xb3\x6c\x1e\x38\x5e\x5c\x4a\x43\x1a\x34\xd2\x55\xf7\x06\xdc\xdb\xa8\xba\xb8\x1e\xae\xaf\xa2\xbf\xb5\x1a\xb9\x75\xb3"
+"\x61\xa9\x1e\x3a\xf7\x62\x15\xc0\xad\x73\x65\x54\x55\x61\x44\x56\x69\xa3\xb2\xc1\xc1\xb5\xd2\x1f\x51\xfb\x9b\x15\xc2\xb3\x6e\x63"
+"\x59\x4f\x60\x44\x4d\x67\xa4\xb4\xbe\xca\xb8\xd2\x1f\x0e\xf8\x80\xf7\xa8\x15\xfb\x00\x58\x21\x3f\x26\x1b\x83\x87\x8c\x8e\x82\x1f"
+"\x91\x7b\x82\x8d\x81\x1b\x68\x6b\x6d\x6b\x69\xb6\x75\xcc\xf7\x0b\xf7\x17\xd5\xf7\x06\xdc\x1f\xbe\xd3\xa6\xe3\xe8\x1a\xf7\x13\x50"
+"\xca\xfb\x0a\x3a\x4b\x70\x54\x5a\x1e\x63\x5d\x73\x4e\x52\x1a\x34\xcf\x49\xe4\xbb\xb1\x9a\xb6\xc3\x1e\x9f\xf7\x11\x15\x5c\x66\x53"
+"\x6b\x61\x1b\x61\x6c\xaa\xb4\xa3\x95\xa8\x9c\xa1\x1f\xaa\xa2\xa9\x99\xb5\x1b\xa9\xa3\x83\x7c\x97\x1f\x97\x7c\x94\x6a\x6d\x1a\x89"
+"\x8b\x86\x8a\x86\x1e\x0e\xf7\xc5\x7d\x15\x2c\x0a\xe0\xf7\xc4\x15\xb8\xb4\xb2\xb5\xaa\x73\xa1\x69\x1f\x7a\x06\x5f\x61\x65\x62\x6b"
+"\xa3\x74\xad\x1f\x0e\xf7\x1c\x0a\x7e\x89\x86\x83\x1a\x7e\x99\x7f\x9b\x98\xf7\x2c\x0a\x7a\xf7\xb5\x15\x55\x61\x68\x5d\x69\xa3\x77"
+"\xb5\xc1\xb4\xae\xb8\xae\x73\x9f\x62\x1f\x0e\xf7\xaa\xf7\xa3\x15\xf7\x8c\xf7\x0a\x05\xa5\x98\x98\x9a\x9c\x1a\x93\x89\x93\x87\x93"
+"\x1e\x8a\x8d\x05\x9c\x83\x74\x96\x72\x1b\x7c\x7d\x88\x85\x7e\x1f\xfc\x51\xfb\x63\xf8\x51\xfb\x68\x05\x85\x98\x99\x88\x9a\x1b\xa4"
+"\xa2\x96\x9c\x93\x1f\x8c\x8d\x05\x8f\x93\x8d\x93\x92\x1a\x9e\x80\x97\x6e\x9a\x1e\x0e\xf7\x5a\xf8\x2f\x15\x6b\x7c\x0a\x32\x0a\xfc"
+"\x3a\xfb\x44\x15\x38\x0a\x7c\x7f\x81\x32\x0a\x0e\xf7\xcd\xf7\xa3\x15\xfb\x8b\xfb\x0d\x05\x6e\x7c\x80\x7f\x78\x1a\x84\x8d\x83\x8f"
+"\x83\x1e\x8c\x89\x05\x7a\x93\xa2\x80\xa4\x1b\x9a\x99\x8e\x91\x98\x1f\xf8\x51\xf7\x68\xfc\x51\xf7\x63\x05\x91\x7e\x7d\x8e\x7c\x1b"
+"\x72\x74\x80\x7a\x83\x1f\x8a\x89\x05\x87\x83\x89\x83\x83\x1a\x7a\x98\x7c\xa5\x7e\x1e\x0e\xf7\x59\xf8\x50\x15\x88\x7d\x8a\x83\x84"
+"\xf7\x1c\x1d\x95\x8f\x92\x91\xa7\x8e\x96\x18\x9b\xae\xad\x92\xb1\x1b\xc3\xaa\x74\x62\x5d\x60\x70\xfb\x27\x5a\x1f\x7f\x53\x05\x86"
+"\x78\x8b\x8a\x82\x1a\x75\x9e\x7a\xa3\xab\xa0\x9c\xae\x98\x1e\xd1\xa6\xb4\xa1\xad\xa8\x08\xb2\xab\xa3\xbf\xc0\x1a\xe6\x48\xc2\xfb"
+"\x01\x4f\x54\x7e\x69\x39\x1e\x80\x86\x82\x88\x86\x88\x08\xe9\xfc\xab\x15\xb7\xb4\xb1\xb5\xaa\x73\xa2\x6a\x1f\x79\xf7\x24\x0a\x0e"
+"\xf8\x7c\xf8\x17\x15\xfb\x13\x81\x24\x34\x28\x1a\x42\xc3\x5a\xdd\x1e\xd4\x06\xa5\x95\x8d\x95\x97\x1f\x99\x96\x92\x99\x99\x1a\x99"
+"\x86\x93\x80\x91\x1e\xc6\xf7\x9c\x05\x8e\x9a\x8d\x99\x99\x1a\xe4\x50\xc3\x2d\xfb\x19\xfb\x0e\xfb\x0c\xfb\x3b\x65\x1e\x67\xfb\x35"
+"\x05\x84\x6c\x88\x6c\x6d\x1a\x53\x97\x5c\xa2\x66\x1e\x5f\xa8\xb7\x76\xcd\x1b\xf7\x00\xe9\xb7\xbd\xa0\x7c\x99\x75\x7f\x84\x88\x7d"
+"\x7a\x1f\x79\x74\x63\x80\x5e\x1b\x6c\x78\x91\x9a\x7b\x1f\x72\xa1\x7c\xb8\xc0\x1a\xa1\x8e\xa6\x92\xa8\x1e\xac\xf7\x29\x05\xf7\x0d"
+"\xa6\xdd\xe5\xde\x1b\xbc\xa9\x6e\x5b\x82\x8a\x83\x89\x82\x1f\x52\xfb\x97\x15\x8a\x7f\x86\x8b\x85\x1b\x63\x70\xa0\xa9\xba\xc1\xb5"
+"\xcf\x92\x1f\x0e\x22\x1d\x0e\xf7\x03\xf2\x15\x80\x06\x6c\x80\x36\x1d\xf7\xbb\x06\xd4\xc7\x9f\xb4\xb7\x1f\xb0\xac\xa3\xbc\xb5\x1a"
+"\xb9\x72\xb0\x59\xa6\x1e\xc5\xaf\xa8\xba\xc1\x1a\xac\x7d\xac\x72\xa2\x1e\xa9\x6c\x62\x98\x51\x1b\xfb\x90\xf7\x39\x1d\xb6\x1e\x95"
+"\x06\xdb\xfb\x13\x15\xa7\xf7\x13\x05\xf7\x16\x06\xc1\xaa\x7a\x6e\x5d\x51\x68\x3e\x1f\xfb\x33\xfb\x7b\x15\xa7\xf7\x14\x05\xf7\x18"
+"\x06\xd5\xb9\x71\x60\x65\x65\x76\x43\x1f\x0e\x56\x0a\x0e\xc6\x1d\x0e\x24\x1d\xad\xf7\x28\x05\x8e\x9b\x8c\x91\x93\x1a\xa1\x21\x1d"
+"\x0e\xf7\x8d\xf7\x7c\x15\xd8\x06\x8a\x89\x05\x89\x81\x89\x7f\x83\x1a\x75\x9e\x7a\xa4\x9b\xf7\x1b\x0a\xa3\xf6\x18\x8e\x96\x8c\x95"
+"\x93\x1a\xa2\x79\x9c\x71\x68\x74\x74\x5f\x82\x1e\x8a\x88\x05\x3f\x2b\x1d\xf7\x8c\x06\x81\x5f\xf7\x08\x0a\x92\x99\x99\x1e\x95\x95"
+"\x8f\x94\x91\xa6\xac\xf7\x28\x18\xfc\x6f\x27\x1d\x95\x06\x3b\xfb\xfa\xdf\x1d\x6e\x1d\x0e\xf8\x5b\xf7\x7a\x44\x1d\x7a\x1a\x72\x98"
+"\x7e\xa7\x87\x1e\x3b\xfb\xfa\x05\x89\xf7\x1e\x0a\x7b\x7f\x66\x0a\x9c\x81\x9c\x41\x1d\x76\x1b\x82\x2b\x1d\x0e\x28\x0a\x0e\xf8\xe7"
+"\x94\x1d\x9a\x97\x95\x9d\x9b\x1a\x9c\x80\x9c\x7d\x8f\x1e\x8e\x82\x84\x8c\x77\x62\x0a\x82\x60\x86\x83\x72\x78\x19\x76\x70\x65\x7f"
+"\x67\x1b\x6b\x6e\x92\x9f\x5f\xe4\x1d\x8b\x0a\x0e\x2f\x0a\x0e\xf7\x75\xf7\x52\x1d\x53\xfb\x90\x05\x6b\x06\x6b\x81\x37\x0a\x79\x7a"
+"\x21\x0a\xf7\x15\x20\x0a\x9c\x1a\x9c\x81\x9a\x7c\x91\x1e\x86\x8d\x84\x8c\x7e\x8c\xdb\xf7\xf9\x18\xb2\x90\xa4\xa3\xab\x41\x0a\xfb"
+"\x03\x06\xfb\x57\xfb\xaa\x41\xf7\xaa\x05\xfb\x03\x25\x1d\x72\x98\x7e\xa7\x88\x1e\x3c\xfb\xfa\x05\x5f\x8a\x6d\x72\x67\x1a\x6d\x9d"
+"\x7f\xb6\x1e\xf7\x15\xb3\x0a\x8c\x77\x1b\x6d\x06\x0e\x3c\x0a\x0e\x2e\x1d\x0e\xf7\x84\xf7\x53\x15\xea\x06\xf5\xcb\xa3\xc9\xc3\x9b"
+"\x0a\xf7\xa4\x85\x15\xd9\x8c\xb2\x93\xbb\xa3\x08\xf7\x18\xcf\xdf\xf7\x12\xf7\x16\x1a\xf7\x17\x2b\xeb\xfb\x16\xfb\x4a\xfb\x42\xfb"
+"\x45\xfb\x4d\x4e\x9f\x53\xae\x66\x1e\x97\x7d\x9f\x7c\xae\x75\x45\x55\x18\x74\x79\x83\x7e\x76\x1a\x75\x9e\x78\xa1\x93\x96\x8d\x8e"
+"\x97\x1e\x95\xb9\xca\x95\xa2\x1b\x9f\x96\x88\x7e\xac\x1f\x83\x9e\x99\x88\x9f\x1b\xb1\xba\x9b\xa5\xb4\x1f\x9e\x97\x96\x9e\x9e\x1a"
+"\xa4\x79\x9c\x70\x7e\x86\x89\x7c\x6f\x1e\x80\x76\x82\x88\x7d\x1b\x7f\x85\x8c\x91\x76\x1f\x94\x6c\x73\x8e\x6f\x1b\x7c\x80\x8a\x89"
+"\x78\x1f\xf7\x1e\xf8\x82\x15\xda\xc5\x4e\x36\xfb\x0c\xfb\x03\xfb\x0c\xfb\x03\x3a\x51\xc7\xe1\xf7\x0e\xf7\x02\xf7\x0a\xf7\x06\x1f"
+"\x0e\x3b\x0a\x0e\x6d\x1d\x0e\x57\x0a\x0e\x23\x0a\x0e\xf7\xe3\xf7\x2b\x15\x46\xf7\xca\x05\x99\x06\xab\x96\x8d\x97\x9a\x1f\x9a\x98"
+"\x94\x9c\x9c\x1a\xa9\x7a\x97\x60\x1e\xfb\x19\x8a\x1d\x9c\x7f\xb5\x1e\xef\xfc\x61\x05\xf3\x06\xf7\xc7\xf8\x61\x05\xa4\x95\x8c\x91"
+"\x96\x1f\xa0\x96\x9a\xa1\xa0\x1a\xa9\x7a\x97\x5f\x1e\xfb\x17\x37\x1d\x79\x95\x7c\x9a\x85\x1e\x88\x94\x91\x8b\x9f\x1b\x9c\x06\x0e"
+"\xf7\xf9\x6a\x0a\xaa\x1a\x9c\xd4\x1d\x80\x9b\x7d\x74\x0a\xfb\x17\x42\x1d\x7b\x1f\x7b\x7f\x82\x78\x79\x1a\x75\x96\x7f\xa5\x87\x1e"
+"\x62\xfc\x62\x05\xf7\x0a\x06\x0e\xf8\x44\xf7\x1e\x1d\x82\x85\xb7\x1d\xf8\x2a\xf7\x7f\x29\x0a\x77\x1b\x2e\x34\x1d\x0e\xf7\x7c\x71"
+"\x0a\x9d\x9d\x93\x98\x98\x1e\x95\x95\x8f\x94\x91\xa5\x99\xcb\x18\x43\x0a\x0e\xf8\x65\xf8\x8b\x15\xc2\x06\xa9\x98\x50\x1d\x9c\x1a"
+"\x9c\x81\x9a\x7c\x90\x1e\x8e\x82\x85\x8c\x77\x1b\xfb\x36\x06\xfb\x3a\xfd\x7f\x05\xf7\x38\x06\xa9\x97\x2a\x0a\x9d\x9b\x1a\x9d\x80"
+"\x9b\x7d\x8f\x1e\x8e\x82\x20\x1d\x55\x06\x0e\xf7\xda\xf9\x07\x15\xac\x82\x80\x96\x72\x1b\x68\x6c\x6e\x6c\x84\x8c\x86\x8f\x7d\x1f"
+"\xf7\x44\xfd\x1c\x05\x69\x94\x96\x80\xa6\x1b\xac\xab\xa8\xaa\x92\x89\x94\x88\x96\x1f\x0e\xf7\x81\x65\x15\x54\x06\x6d\x7e\x88\x7f"
+"\x7d\xad\x1d\x7a\x95\x7c\x9a\x86\x1e\x88\x94\x91\x8a\x9f\x1b\xf7\x36\x06\xf7\x3a\xf9\x7f\x05\xfb\x38\x06\x6d\x7f\x37\x0a\x79\x7b"
+"\x1a\x79\x95\x7c\x9a\x86\x1e\x88\x94\x92\x8a\x9f\x1b\xc1\x06\x0e\xf7\xbf\xf8\x62\x15\xf7\x05\xfb\x11\x05\x72\xa2\x95\x85\xa1\x1b"
+"\xab\xa5\xa4\xa9\x9c\x86\x94\x78\xa1\x1f\xfb\x5e\xf7\x76\xfb\x5c\xfb\x76\x05\x78\x75\x86\x81\x7c\x1a\x6c\xa5\x72\xab\xa1\x95\x91"
+"\xa5\xa2\x1e\x0e\xa7\x6a\x15\x71\x82\x8a\x84\x80\x1f\x7a\x82\x80\x78\x4c\x1d\xf8\xb4\x06\xa2\x99\x8d\x91\x94\x47\x1d\x0e\xf8\x98"
+"\xf0\x0a\xa2\xa0\x9f\xa1\x89\x1f\x8c\x8b\x8e\x8a\x8f\x1e\x0e\x2d\x1d\x0e\xf7\xcc\xf8\xef\x15\xfb\x0d\x06\x6c\x80\x88\x7f\x7c\xf7"
+"\x15\x1d\x88\x93\x94\x8a\x9e\x1b\x96\x06\x32\xfc\x21\x05\x7f\x06\x6b\x80\x89\x7f\xf7\x0e\x0a\xf7\x0c\x06\x91\xaa\x05\x6b\xb5\xb1"
+"\x7f\xc4\x1b\xe4\xd4\xa8\xc6\xc8\x1f\xbf\xbd\xaa\xd1\xcc\x1a\xc2\x73\xbe\x63\xab\x1e\xa5\x6a\x59\x99\x4e\x1b\x53\x59\x7d\x6e\x5b"
+"\x1f\xf7\x17\x4f\x15\xd7\xb7\x67\x4d\x6e\x7e\x6c\x74\x70\x1f\x63\x68\x5d\x77\x53\x1b\x3e\x5f\xaf\xc9\xa8\x98\xab\xa2\xa5\x1f\xb3"
+"\xae\xb8\x9f\xc5\x1b\x0e\x3e\x0a\x0e\xba\x1d\x0e\x33\x1d\x0e\xf8\x09\xf7\xd6\x15\xf7\x28\x81\x1d\x85\x8c\x76\x1b\xfb\x25\x06\x91"
+"\xa9\x05\xa9\x92\xa8\x99\xc3\x1b\xab\xb2\x87\x85\xb1\x1f\x89\x97\x95\x8a\x92\x1b\xaa\xaa\xaa\xaa\x9f\x7f\x98\x73\x92\x1f\x93\x6c"
+"\x4e\x92\x61\x1b\xfb\x0e\x33\x53\x31\x77\x1f\x84\x6b\x05\x60\x06\xe9\x0a\xb4\x39\x0a\x54\x8a\x1d\x9d\x7f\xb5\x1e\xf7\xbe\x7a\x1d"
+"\xfb\x1a\x06\x0e\x70\x1d\x0e\xf7\xe1\xf8\xef\x15\xfb\x0d\x06\x6c\x80\x2a\x1d\x7b\xf4\x0a\x32\xfc\x21\x05\xf7\x05\x0a\x6d\x9d\x7f"
+"\xb5\x1e\xf7\x04\x06\xa9\x99\x29\x1d\x9c\x80\x9c\x7d\x32\x1d\x8b\x77\x4e\x0a\xcd\xa3\x96\xbb\x1b\xb6\xbe\x0a\xa9\x98\x8f\x96\x99"
+"\x1f\x9a\x97\x95\x9d\x9c\x1a\x9c\xf6\x1d\x0e\xf8\x54\x35\x1d\xec\x5d\x1d\x0e\xf8\x5b\xf7\xd6\x84\x0a\x54\x8c\x19\xfb\x02\x6d\x0a"
+"\xb7\x1e\xf7\x05\x06\xf7\x04\xf0\xd9\xf1\xa1\x1f\xed\xf8\x4d\x05\xfb\xc7\x06\x6b\x82\x89\x7e\x7b\x86\x0a\x9d\x7f\xb6\x1e\xf7\xca"
+"\xf7\xac\x15\xfb\x14\xf7\x75\x1d\x8e\x0a\x0e\x43\x1d\x0e\xf7\x83\xf8\x3d\x15\x29\xf7\x27\x1d\x90\x89\x91\x8a\x98\x8a\x5b\xfb\x6f"
+"\x18\x61\x6c\x71\x69\x6c\x9d\x7f\xb6\x1f\xe3\xf7\x11\x1d\xb5\xf7\x52\x05\xaa\xae\xa0\x95\xa6\x1b\x9b\x93\x85\x81\x87\x8a\x85\x89"
+"\x85\x1f\x48\xfb\xc2\x05\xee\xd3\x0a\x7f\x1b\xb5\xf7\x52\x05\xad\xb4\x9a\x92\xa5\x1b\x9b\x92\x86\x81\x8c\x1f\x85\x8b\x86\x89\x85"
+"\x1e\x48\xfb\xc2\x05\xee\xf7\x11\x1d\xb9\xf7\x61\x05\x8d\x95\x8c\x92\x98\x1a\xc5\x5e\xb4\x49\x63\x67\x7d\x6c\x66\x1e\xaa\x74\x6d"
+"\x99\x65\x1b\x6c\x78\x84\x74\x65\x1f\x0e\x3a\x0a\x0e\x24\x0a\x0e\xf7\x52\x91\x0a\xf8\x29\x2e\x15\x54\x06\x6c\x7f\x88\x7f\x7d\xad"
+"\x1d\x7b\x96\x7b\x99\x86\x1e\x88\x93\x96\x8a\x9c\x1b\xf7\x42\x06\xa9\x98\x8e\x97\x99\xa0\x1d\x8e\x82\x85\x8c\x76\x1b\x80\x06\xe8"
+"\xf8\x33\x05\x97\x06\xab\x95\x96\x1d\x82\x85\x8c\x77\x1b\xfb\x0c\x06\x83\x64\x05\xb0\x64\x64\x99\x4e\x1b\xfb\x38\xfb\x1e\xfb\x0e"
+"\xfb\x24\x2c\xe0\x48\xf7\x0d\xc4\xbd\x9a\xad\xc2\x1f\x39\xf7\xa8\x15\xd6\xb9\x69\x53\x65\x70\x61\x63\x72\x1f\x79\x6d\x69\x82\x60"
+"\x1b\x63\x6b\x94\x9d\x77\x1f\x7a\x9a\x7f\xa5\xa0\x1a\xb2\xa6\xb5\xb4\xa4\x1e\x9e\xa9\xac\x93\xb6\x1b\x0e\x3f\x0a\x0e\x56\x1d\x0e"
+"\x94\x0a\x0e\x57\x1d\x0e\xf7\xdd\xf7\x15\x15\x50\xf7\x55\x05\xa4\x94\x8c\x91\x96\x1f\xa1\x97\x99\xa0\xa0\x1a\x9c\x81\x51\x0a\x82"
+"\x8c\x79\x1b\xfb\x18\xf7\x1d\x1d\x92\x8b\x9f\x1b\x95\x06\xeb\xfb\xd6\x05\xf7\x00\x06\xf7\x83\xf7\xd6\x05\x99\x06\xaa\xf7\x2e\x1d"
+"\x83\x82\x8c\x78\x1b\xfb\x1a\xf7\x1d\x1d\x91\x8b\xa0\x1b\x8d\x06\x0e\x3d\x0a\x0e\xf8\x40\xec\x0a\x9c\x9c\x1a\x9c\x81\x9b\x7c\x8d"
+"\x0a\x53\x0a\x0e\xf7\x0b\x1d\x9c\x9c\x92\x99\x98\x1e\x96\x96\x8e\x92\x92\xa7\x8c\x90\x18\xf7\x02\x1d\x0e\xf8\x5b\xf8\x66\x15\xa4"
+"\x92\x93\x92\xa4\x1b\xaf\x8d\xa8\xa7\xab\x1a\xa5\x79\x9b\x6c\x42\x41\x51\x45\x7c\x1e\x68\xfb\x30\x85\x72\x84\x85\x73\x89\x19\x64"
+"\x87\x72\x72\x68\x1a\x72\x99\x7e\xa8\x88\x1e\x9c\x89\x91\x88\x81\x1a\x88\x8a\x85\x89\x84\x1e\x67\xfb\x39\x05\x89\x82\x8a\x83\x82"
+"\x1a\x50\xb9\x5e\xc9\xb4\xaa\xa6\xaf\xa3\x7a\x9b\x70\x8c\x1e\x76\x8c\x86\x8e\x98\x1a\x8e\x8c\x91\x8c\x90\x1e\xac\xf7\x29\x05\x90"
+"\xa1\x8e\x9e\x96\x1a\x98\x87\x98\x80\x9b\x1e\xa6\xa3\x95\x9d\x95\xb5\x08\x0e\xf7\xfa\xf9\xcd\x15\xfb\x08\xfe\xc7\xf7\x08\x06\x0e"
+"\xf7\x89\x82\x15\x71\x85\x82\x84\x72\x1b\x67\x89\x6e\x6f\x6b\x1a\x71\x9d\x7b\xaa\xd4\xd5\xc5\xd1\x9a\x1e\xae\xf7\x31\x90\xa3\x93"
+"\x91\xa3\x8e\x19\xb2\x8f\xa4\xa4\xad\x1a\xa4\x7d\x98\x6e\x8e\x1e\x7a\x8d\x85\x8f\x94\x1a\x8e\x8c\x92\x8d\x91\x1e\xaf\xf7\x3a\x05"
+"\x8d\x93\x8c\x93\x94\x1a\xc7\x5d\xb7\x4d\x63\x6b\x70\x68\x73\x9c\x7b\xa6\x89\x1e\xa0\x8a\x90\x88\x7e\x1a\x88\x8a\x86\x8a\x86\x1e"
+"\x6a\xfb\x2a\x05\x86\x75\x88\x78\x80\x1a\x7e\x8f\x7f\x96\x7a\x1e\x70\x74\x81\x78\x81\x61\x08\x0e\xf8\x7c\xf8\x0b\x15\x75\x7e\x83"
+"\x6f\x75\x1f\x6e\x75\x7f\x80\xf7\x54\x1d\xc9\x44\x70\x99\x5e\x1b\x5f\x69\x79\x5f\x63\x1f\x6d\x6a\x80\x78\xd1\x0a\x56\xc8\xb2\x77"
+"\xb5\x1b\xb5\xab\x9d\xb6\xb1\x1f\xae\xb3\x93\x98\xa0\x1a\xaa\x71\xa4\x6b\x1e\x0e\xf7\x56\x24\x15\x81\x6e\x89\x81\x7e\x1a\x67\xa8"
+"\x71\xb4\xa7\xa8\x98\xa0\x9f\x1e\x9d\x9f\x91\x9a\x90\xb6\xad\xf7\xaf\x18\x8c\x8e\x8b\x8e\x8d\x1a\xa6\x7b\x9b\x6f\x6d\x73\x78\x6d"
+"\x81\x1e\xec\xf7\x7f\x15\x5e\x62\x64\x62\x6b\xa3\x75\xac\x1f\x9d\x06\xb7\xb5\xb1\xb4\xab\x73\xa2\x69\x1f\x0e\xf8\x0b\xea\x15\xf1"
+"\x9c\xcf\xb4\xb9\x1a\xa3\x78\x9e\x72\x7d\x81\x88\x82\x7c\x1e\x73\x64\x68\x81\x66\x1b\x4f\x62\xad\xbc\xd1\xd5\xc6\xe1\xb7\x9d\x80"
+"\x71\x8c\x1f\x8c\x6f\x8b\x88\x92\x83\x08\x83\x92\x9a\x85\x98\x1b\x9c\x9d\x93\x98\x98\x1f\x95\x94\x8f\x95\x91\xa5\x94\xb3\x18\x8e"
+"\x9b\x8c\x90\x92\x1a\xa2\x78\x9c\x71\x85\x86\x8a\x88\x82\x1e\x7a\x96\x77\x92\x70\x8f\x98\xc7\x18\x90\x9e\x83\x0a\x67\x74\x75\x5e"
+"\x81\x1e\x7b\x44\x05\xfb\x0f\x6f\x2d\x22\xfb\x03\x1a\x3c\xba\x51\xdc\x76\x1e\x7b\x42\x05\x86\x78\x8b\x8a\x82\xf7\x1c\x1d\x95\x90"
+"\x94\x90\xa5\x08\x0e\xf8\x02\xf7\x7c\x15\xa9\x97\xd7\x0a\x4a\x06\x88\xba\x8b\x8b\x99\x1a\xba\xad\xac\xbe\xa4\x9c\x84\x7b\x97\x1e"
+"\x71\x9e\x8f\x88\xa0\x1b\xac\xab\xaa\xaa\xbc\x47\xb7\x41\xfb\x0e\x2c\x30\xfb\x0a\x7f\x8c\x84\x8d\x7b\x1f\x64\x06\x6b\x80\x2a\x1d"
+"\x7b\x1a\x79\x95\x7c\x9a\x86\x1e\x88\x94\x94\x8a\x9d\x1b\xcb\x06\x7c\x3d\x6a\x5c\x62\x88\x08\x60\x83\x75\x76\x6b\x1a\x6c\x9d\x7f"
+"\xb6\x1e\xf7\xd5\x06\xb9\xa8\x95\xa3\xa4\x1f\x9e\x9d\x99\xaa\xa4\x1a\xa3\x78\x9b\x71\x6e\x75\x7c\x6e\x80\x1e\xfb\x55\x06\xa5\xb5"
+"\x97\xaa\x96\xc2\x08\x0e\xb0\x0a\xf8\x0c\xf7\xeb\x15\x4f\xf7\x0a\x05\xa7\x93\x9f\xa3\xa5\x1a\x9c\x81\x9b\x7c\x90\x1e\x8f\x82\x87"
+"\x8b\x74\x1b\x2f\x25\x1d\x76\x97\x7c\xa0\x87\x1e\x89\x91\x8e\x8b\x9b\x1b\xe6\xfb\x4a\x05\x4a\x06\x72\x7b\x7d\x75\x7a\x94\x83\x9f"
+"\x1f\xe7\x06\x86\x72\x05\x2d\x06\x72\x7a\x7d\x75\x79\x93\x84\xa1\x1f\xe7\x06\x85\x71\x05\x60\x06\x6b\x81\x36\x1d\xf7\x55\x20\x0a"
+"\x9c\x1a\x9c\x81\x9a\x7c\x88\x0a\x75\x1b\x62\x06\x90\xa5\x05\xe9\x06\xa4\x9c\x9a\xa1\x9b\x82\x93\x76\x1f\x2f\x06\x90\xa4\x05\xe9"
+"\x06\xa4\x9c\x9a\xa0\x9d\x82\x92\x76\x1f\x4c\x06\xf7\x42\xf7\x4a\x05\xa7\x97\x50\x1d\x9b\x1a\x9c\x81\x9b\x7c\x88\x0a\x75\x1b\x30"
+"\x06\x6b\x81\x88\x7f\x7b\x1f\x7c\x7f\x82\x79\x7b\x1a\x78\x95\x7d\x9d\x85\x1e\x0e\xf8\x51\xf8\x1d\x15\x95\xb8\x05\xb4\x94\xb2\xad"
+"\xb2\x1b\x9c\x9a\x88\x86\x99\x1f\x86\x96\x90\x8a\x93\x1b\xac\xaa\xaa\xad\xab\x61\x9f\x47\x27\x2a\x3e\x2a\x76\x1f\x80\x5a\x05\x55"
+"\x06\x6a\x82\x99\x1d\xc0\x06\x59\xfb\x72\x05\x5a\x80\x66\x6a\x5e\x1b\x7a\x7f\x8d\x91\x7b\x1f\x8f\x7e\x88\x8c\x85\x1b\x6a\x6b\x6d"
+"\x6b\x6a\xb6\x76\xcf\xf2\xeb\xda\xf3\xa2\x1f\xbd\xf7\x74\x05\xc1\x06\xaa\x97\x35\x0a\x9c\x1a\x9c\x80\x9a\x7d\x88\x0a\x74\x1b\x0e"
+"\xf8\xa7\xf8\x6a\x15\x84\x6d\x05\x8a\x84\x89\x7f\x86\x1a\x78\x9c\x7c\xa1\xac\x9d\x9d\xb1\x94\x1e\xa7\xf7\x12\x05\xfb\x7a\x06\x4d"
+"\x5c\x77\x60\x61\x1f\x6f\x6d\x76\x61\x6e\x1a\x81\x07\x3e\x77\x57\x54\x4c\x1a\x5f\xa9\x67\xd8\x5b\x1e\xe8\x52\x05\xc0\x6a\xa9\x6d"
+"\x77\x1a\x70\x66\x70\x65\x1e\xfb\x20\x06\x92\xab\x05\x8f\x9b\x8b\x8c\x91\x1a\x9e\x7a\x9a\x74\x6b\x77\x79\x66\x83\x1e\x6f\xfb\x12"
+"\x05\xf7\x80\x06\xed\x85\xed\xe2\x87\xe6\x08\xd8\x9c\xc0\xc4\xce\x1a\xbc\x72\xa8\x2e\xc3\x1e\x3a\xbc\x05\x54\xac\x6d\xa9\x9f\x1a"
+"\xa6\xb1\xa5\xb3\x1e\xa2\xfb\x9e\x15\xba\x6e\xa7\x6d\x76\x1a\x75\x76\x81\x61\x1e\x7f\x98\x79\x98\x60\xa8\x31\xc3\x18\x5c\xa9\x77"
+"\xa0\xa1\x1a\xa1\xa2\x98\xb2\x1e\xab\x6f\x92\x85\xa8\x79\x08\x0e\xf7\x64\xf8\x0a\x15\x6b\x62\x7a\x5e\x63\x1a\x7f\x8e\x7b\x91\x6f"
+"\x1e\x66\x6d\x05\x6c\x72\x83\x7f\x76\x1a\x72\x9e\x79\xa5\x9e\x93\x8f\xa1\xa7\x1e\xb1\xa8\x05\x7a\xab\xa2\x85\xae\x1b\xae\xa5\x91"
+"\x9c\xb2\x1f\xa4\x6f\x05\x75\x9d\x92\x86\x9d\x1b\xad\xae\xaa\xa9\x98\x87\x93\x7c\x9d\x1f\x74\xa9\x05\xac\xb5\x9c\xb7\xb4\x1a\x96"
+"\x88\x9b\x85\xa6\x1e\xae\xa8\x05\xaa\xa3\x93\x97\xa0\x1a\xa4\x78\x9d\x71\x78\x83\x87\x76\x6f\x1e\x68\x70\x05\x9e\x6a\x75\x91\x65"
+"\x1b\x68\x72\x85\x78\x63\x1f\x73\xa7\x05\xa1\x79\x83\x8f\x79\x1b\x6b\x68\x6d\x6e\x82\x95\x74\x92\x82\x1f\xf7\x5b\x6b\x15\xb5\xa9"
+"\x6f\x64\x54\x54\x56\x52\x60\x6d\xa7\xb4\xc2\xc1\xbe\xc6\x1f\x0e\xf7\xfc\xf8\xdb\x15\x77\xfb\x8a\x05\x8a\x85\x8b\x86\x89\x1a\x7c"
+"\x97\x80\x9b\xa1\x97\x95\xa6\x94\x1e\xe3\xf7\x8c\x05\x0e\xf8\xca\xf0\x0a\xa3\x9f\x9f\xa2\x89\x1f\x8d\x8b\x8d\x8a\x8e\x1e\xfb\x78"
+"\xf7\x60\xf7\x70\x1d\x93\x84\x9a\x1b\xa5\x9e\xa2\xa6\x88\x1f\x0e\xf7\x6f\x1d\x9c\x98\x92\xea\x1d\xf7\x03\xf7\x17\x15\xf7\x45\xf7"
+"\x17\x05\x9d\x98\x91\xea\x1d\x0e\xf7\x6f\x1d\x9d\x99\x91\x93\x98\x1a\x9b\x7e\x96\x79\x82\x83\x88\x84\x81\x1e\x85\x87\xfb\xb8\xfb"
+"\x46\xf7\x69\xfb\x47\x05\x7e\x99\x8e\x8a\x96\x1b\xa1\xa1\x9d\x9e\x92\x87\x94\x83\x93\x1f\x0e\xf8\x6a\xf7\x68\x15\xfb\x45\xfb\x17"
+"\x05\x7a\xef\x1d\x8f\x82\x93\x83\x1f\x0e\xf7\xa2\xf7\xd6\x15\xa9\x06\xa9\x97\x2a\x0a\x9d\x9b\x41\x0a\x6f\x06\x93\xac\x05\xa1\x90"
+"\xc2\x0a\x68\xf3\x0a\x7f\xb6\x1e\xac\x2e\x0a\x64\x25\x0a\xf7\x43\x63\x0a\x70\x06\xf8\x1d\xf7\xd6\x15\xfb\x10\x42\x1d\x30\x1d\x87"
+"\x94\x91\x8b\x9f\x1b\x9a\x2e\x0a\x68\x25\x0a\xf7\x43\x06\xa7\x99\x28\x1d\x9c\x1a\x9c\x81\x9a\x7d\x74\x0a\x6c\x06\xe9\xf8\x88\x15"
+"\xfb\x12\x06\x73\xfb\x00\x05\xf7\x12\x06\x0e\xf7\x9e\xf7\xd5\x15\xa9\x06\xaa\x96\x8e\x97\x9a\x1f\x9b\x98\x94\x9c\x9c\x41\x0a\x6f"
+"\x06\x92\xab\x05\xa5\x91\x9d\x9b\xa2\x1b\x95\x93\x89\x85\xa0\x1f\x87\x97\x93\x89\x93\x1b\x9d\x9a\x93\x9b\x99\x1f\x85\x93\x95\x87"
+"\x99\x1b\xa9\x06\x33\xfc\x20\x05\x68\x06\x6a\x81\x3b\x1d\x6e\x9d\x7e\xb6\x1e\xf7\x44\x63\x0a\x6b\x06\xf7\x03\xf8\x87\x05\xfb\x1b"
+"\x06\x72\x7b\x84\x79\x7c\x1f\x9b\x71\x68\x94\x65\x1b\x3c\x40\x4c\x3a\x79\x1f\x84\x6a\x05\x69\xf3\x0a\x7e\xb6\x1e\xab\x06\x5b\xfb"
+"\x6e\x05\x63\x06\x6b\x81\x88\x7f\xe2\x0a\xb5\x1e\xf7\x44\x06\xa8\x99\x8f\x96\x99\xf7\x4c\x1d\x83\x82\x8c\x78\x1b\x70\x06\x0e\x76"
+"\x1d\xf8\x3d\xf7\xd6\x15\xe0\x06\xab\xf7\x2e\x1d\x82\x20\x1d\x37\x06\xa3\xf7\x00\x05\x8e\x9c\x8c\x8f\x92\x1a\xa2\x78\x9c\x72\x7a"
+"\x7a\x83\x7e\x7d\x1e\x81\x82\x86\x80\x86\x72\x72\xfb\x02\x18\x35\xf7\x17\x1d\x9d\x1b\xe0\x06\x3f\xfb\xe9\x05\x87\x78\x8b\x89\xf7"
+"\x5a\x1d\x95\x94\x90\x96\x90\xa4\x08\x0e\xf8\x3c\xf7\xd6\x15\xe1\x06\xaa\x97\x2a\x0a\x9c\x9c\x1a\x9c\x80\x51\x0a\x84\x8c\x76\x1b"
+"\x37\x06\xa3\xf7\x00\x05\x90\x9e\x8b\x8c\x94\x1a\xa1\x78\x9c\x72\x67\x74\x75\x5f\x81\x1e\x73\xfb\x02\x05\x34\xf7\x17\x1d\x9e\x1b"
+"\xe0\x06\x81\x5f\x05\x34\x06\x6d\x80\xd6\x0a\xe0\x06\x60\xfb\x56\x05\x89\x81\x89\x7f\x84\x1a\x75\xcf\x0a\xa5\xb7\xf7\x58\x18\xe1"
+"\x06\xaa\x96\x8e\x97\x9a\xf5\x0a\x82\x8c\x79\x1b\x37\x06\x0e\x79\x1d\xf8\xd6\xf8\x76\x15\xab\x06\xa0\x92\x8c\x90\x94\x1f\x9d\x94"
+"\x96\x9c\x9c\x1a\xa2\x7c\x95\x68\x1e\xfb\x59\x06\xfb\x23\x8c\xfb\x1c\x3d\x78\x2d\x82\x60\x18\x89\x82\x8a\x83\x81\x1a\x40\xd5\x50"
+"\xf7\x03\x7f\x1e\x51\xfb\x99\x05\x40\x06\x75\x84\x8a\x86\x82\x1f\x7a\x82\x7f\x79\x7c\x1a\x73\x99\x81\xaf\x1e\xf7\x1d\x06\xa2\x97"
+"\x92\x9e\x98\x1f\x7a\x8f\x97\x82\x9e\x1b\xe8\x06\xa0\x92\x8c\x90\x94\x1f\x9d\x94\x96\x9c\x9c\x1a\xa2\x7d\x95\x68\x1e\x6b\x06\xb5"
+"\xf8\xca\x15\xfb\x12\xfc\xcb\x81\x86\x86\x86\x84\x83\x19\x88\x94\x89\x8e\x82\x90\xf7\x12\xf8\xcc\x18\x0e\xf7\xbc\xf8\x59\x15\x38"
+"\x49\x49\x37\x38\xcd\x48\xdd\xdc\xcd\xce\xde\xdd\x49\xcf\x3b\x1f\x0e\xc3\x0a\xf7\x4c\xf7\x1c\xf3\x1d\x80\x88\x83\x83\xf7\x3e\x1d"
+"\x0e\xf7\xb0\xf8\xdb\xf3\x1d\x81\x88\x81\x84\x1a\x7e\x99\x80\x9b\x99\x95\x91\x9d\x9b\x1e\xf7\x58\xf7\x76\x05\x0e\xf8\x6a\xf7\x68"
+"\x15\xfb\x46\xfb\x17\x05\x7b\xef\x1d\x90\x82\x92\x83\x1f\xfb\x04\xfb\x17\x15\xfb\x45\xfb\x17\x05\x7a\x7e\x84\x81\x7f\x1a\x7b\x98"
+"\x80\x9d\x94\x93\x8e\x92\x95\x1e\x91\x8f\xf7\xb7\xf7\x46\xfb\x68\xf7\x47\x05\x98\x7d\x88\x8c\x80\x1b\x75\x75\x79\x78\x84\x8f\x82"
+"\x93\x83\x1f\x0e\xf4\x7d\x15\x2c\x0a\xf7\x6d\x16\x2c\x0a\xf7\x6d\x16\x2c\x0a\x0e\xf8\xb9\xf8\x00\x15\xa4\x93\x96\x96\x9c\x1a\x9a"
+"\x82\x95\x7e\x85\x89\x8b\x87\x7e\x1e\xfc\x19\xfb\x05\x05\x71\x84\x80\x7f\x79\x1a\x7d\x94\x80\x98\x91\x8d\x8b\x90\x98\x1e\xe4\xf7"
+"\xee\x15\x41\x45\xbd\x0a\xa8\xfb\xd1\xb8\x0a\xf7\xaf\xc3\xb8\x0a\x0e\xf8\x64\xfb\x33\x15\x9c\xd8\x05\x8e\x99\x8c\x92\x93\x1a\xa1"
+"\xf7\x74\x1d\x81\x88\x84\x84\x6f\x89\x80\x18\x7c\x68\x67\x83\x67\x1b\x52\x6c\xa2\xb3\xb9\xb1\xa4\xf7\x24\xbd\x1f\x93\x8d\x97\xc3"
+"\x05\x90\x9e\x8b\x8c\x79\x0a\x6c\x75\x79\x69\x7f\x1e\x46\x71\x62\x74\x68\x6e\x08\x64\x6a\x73\x58\x55\x1a\x32\xce\x53\xf7\x01\xcc"
+"\xba\x97\xb5\xf0\x1e\x36\xf8\xaf\x15\x5f\x62\x65\x61\x6c\xa3\x74\xac\x1f\x9d\x06\xb7\xb5\xb2\xb4\xab\x73\xa1\x69\x1f\x0e\xf7\xe9"
+"\xf9\x24\x15\x98\x7e\x84\x8e\x80\x1b\x70\x74\x75\x73\x82\x91\x81\x96\x80\xf7\x34\x1d\x95\x7f\x96\x1f\x0e\xf8\xdf\xf8\xe8\x2f\x1d"
+"\xf8\x42\xf8\xd6\x60\x0a\xf8\xe4\xf9\x0e\x15\x7e\xf7\x37\x1d\xa9\x54\x1d\x6c\x6b\x7c\x6e\x6b\x1f\x6f\x71\x7e\x78\x7a\x1a\x7c\xf7"
+"\x2b\x0a\xaf\x94\x91\x9e\x1d\xad\xa9\x9c\xb6\xb5\x1f\xa0\xa0\x94\x9a\x98\x1a\x99\x7c\x97\x7b\x1e\x0e\xcb\x0a\xf7\xc6\xf9\x2c\x2b"
+"\x0a\xf8\x4c\xf9\x0c\x5b\x1d\xf7\xe3\xf9\x0c\x40\x0a\xf8\x5a\xf9\x52\xeb\x1d\xf7\x97\x93\x15\x73\x21\x05\x8c\x99\x94\x42\x0a\xb2"
+"\x7b\x9e\x62\x94\x1f\x94\xb4\x05\x0e\xf8\x3e\xf8\xe6\x5b\x0a\xf7\xdc\x93\x15\x69\x79\x81\x84\x7a\x7c\x08\x6c\x6e\x79\x68\x67\x5d"
+"\x0a\x95\x94\x9a\x9a\x9c\x1f\x9e\xa0\x9f\x98\xd3\xb4\x08\x0e\xf8\x3e\xf8\xcc\x45\x1d\xaa\x0a\xb2\x1d\x0e\xf8\x2d\xf7\xa3\x15\xe6"
+"\x06\xb1\xa4\x9e\xa9\xa3\x7e\x95\x68\x1f\x8a\x06\xa5\xf7\x09\x05\x8d\x94\x8c\x93\x92\x1a\xbe\x5d\xa9\x3e\x62\x4a\x80\x80\x72\x1e"
+"\x7a\x83\x80\x7b\x79\x1a\x77\x99\x7d\x9f\x92\x96\x8d\x8e\x98\x1e\x93\xae\xa0\x8e\xa4\x1b\xad\x9a\x86\x7f\x8a\x1f\x8a\x8b\x89\x8a"
+"\x8a\x1e\x8a\x86\x05\x8f\x71\x7f\x8c\x78\x1b\x3d\x50\x75\x5e\x64\x1f\x78\x76\x81\x74\x77\x1a\x5b\xbb\x69\xcd\xb0\xa9\x90\x9a\xb2"
+"\x1e\xa0\xe7\x15\x79\x6b\x61\x80\x6b\x1b\x78\x7c\x91\x93\x9f\xb6\xa0\xb5\x9d\x98\x8a\x86\xa8\x1f\x0e\xf7\xfe\xf8\x61\x15\xc0\x06"
+"\xaa\x97\x8e\x97\x9a\xdf\x0a\xfb\x69\x27\x1d\xbf\x06\x69\xfb\x2b\xfb\x07\x52\x05\x63\x78\x7e\x7b\x6e\x1a\x75\x9f\x78\xa1\x98\x95"
+"\x8e\x97\xa3\x1e\xc0\xa6\x77\x34\x05\x56\x25\x0a\xf8\x6e\x06\xb5\xf7\x4d\x05\x8e\x9c\x8c\x8f\x93\x1a\xa2\x79\x9c\x71\x67\x75\x75"
+"\x5e\x81\x1e\x78\x37\x05\xfb\x62\x06\xa8\xf7\x17\xf7\x2c\xd7\x05\xb3\x9f\x98\x9a\xa8\x1a\xa0\x78\x9e\x75\x7f\x7c\x86\x82\x77\x1e"
+"\x30\x5d\x05\x0e\xbb\x1d\x0e\xf8\x39\xf7\x7c\x15\x95\x06\x8a\x7d\x05\x74\xa6\x1d\x95\x91\xa4\x9b\xd5\x18\x90\x9e\x83\x0a\x6b\x76"
+"\x79\x68\x7f\x1e\x81\x2b\x1d\xf7\x0b\x06\x7e\x52\x05\x89\x80\x89\x80\x84\x1a\x75\xf7\x46\x1d\xaf\xf7\x36\x18\xfb\xe7\x06\xfb\x54"
+"\xfb\x35\xfb\x34\xfb\x52\xfb\x16\xe6\x37\xf7\x1e\x1f\xf7\xf8\x06\xa6\xf7\x0b\x05\x8e\x99\x8c\x92\x93\x1a\xa2\x79\x9b\x72\x67\x74"
+"\x75\x5f\x82\x1e\x87\x79\x05\xfb\x1f\x06\xfb\x00\x16\x6a\x7b\x8e\x93\x76\x1f\x5e\x9d\x6f\xbb\xc7\x1a\xc9\xae\xd1\xc1\xb6\x1e\xb2"
+"\xab\xb1\x98\xc4\x8c\x08\x0e\xf8\x41\xf8\xd4\x15\xfb\x01\x22\x2e\x2a\x43\xc7\x56\xdd\xf7\x05\xef\xe2\xed\xd6\x50\xc2\x39\x1f\x79"
+"\x39\x15\xb4\xa8\x70\x66\x5e\x58\x61\x54\x65\x6a\xa5\xaa\xbb\xc0\xb9\xc1\x1f\x0e\xb1\x1d\x0e\xf8\x54\x35\x1d\x0e\xf8\x7c\xf8\xef"
+"\x15\xfb\x48\x06\x6a\x81\xf7\x19\x1d\xd2\x06\x69\xfb\x2a\x30\x5f\x05\x63\x78\x7d\x7a\x6f\x1a\x74\x9e\x78\xa2\x97\x98\x8f\x95\xa0"
+"\x1e\xa9\x9a\x6f\xfb\x11\x05\xfb\x0a\x38\x1d\xf7\xeb\x63\x0a\xfb\x09\x06\xb1\xf7\x3c\xe9\xb9\x05\xb2\x9d\x99\x9d\xa7\x1a\xa2\x78"
+"\x9e\x74\x7c\x84\x89\x7e\x72\x1e\x6c\x7b\x05\x0e\xbf\x1d\x0e\xf9\x20\xf7\x37\x15\x95\xb9\x05\x90\xa3\x8e\xa4\xa2\x1a\xe6\x51\xcc"
+"\x3b\x56\x58\x72\x5b\x5e\x1e\xba\x71\x63\xa5\x5a\x1b\x4b\x4c\x68\x4e\x5c\x1f\x5f\x51\x71\x45\x4b\x1a\x2b\xc6\x47\xe1\xbc\xbf\xa3"
+"\xb6\xb7\x1e\x5f\xa3\xb4\x74\xc3\x1b\xbb\xd5\x9c\x9e\xb1\x1f\xa3\x97\x98\xa0\xa3\x1a\xa3\x78\x9d\x74\x82\x81\x89\x88\x83\x1e\x73"
+"\x4d\x7f\x88\x6f\x1b\x64\x77\xa3\xbe\x8a\x1f\xfb\x2e\xf7\x3d\x15\xad\xa0\x6c\x58\x3b\x53\x39\x54\x67\x77\xa8\xc2\xda\xc4\xdc\xc2"
+"\x1f\xf7\x45\x3c\x15\xc3\xa5\xa4\xa2\xad\x1b\xaa\x9a\x71\x56\x1f\x0e\xf7\x30\xf7\xbe\x15\x60\xfb\x57\x05\x7e\x06\x6b\x80\x89\x7e"
+"\x7d\xf7\x3f\x1d\x8a\x9d\x1b\xf7\x0d\x89\xed\xf8\x51\x05\xb0\x93\xa7\x9e\xba\x1b\xb1\xa1\x7a\x6e\x7c\x84\x7d\x7e\x80\x1f\x7c\x7d"
+"\x7f\x87\x6a\x88\x08\x62\x87\x70\x72\x6a\x1a\x72\x9a\x7f\xae\x87\x1e\xdb\x83\xb4\x68\x4f\x1a\x59\x6c\x5b\x6a\x7e\x84\x93\x9a\x1e"
+"\x98\x07\x9e\x7a\x99\x72\x63\x6e\x68\x5c\x54\xb2\x68\xc9\xc6\xba\xa1\xb8\xb1\x1e\xb1\xb7\xa1\xc5\xc1\x1a\xc8\x70\xbd\x58\xad\x1e"
+"\xb1\xaf\x9c\xaf\xb9\x1a\xda\x4f\xbf\x31\x24\x34\x50\x39\x79\x1e\x7e\x4f\x05\x7d\x06\x6b\x80\x88\x7f\x7d\x86\x0a\x9c\x7f\xb7\x1e"
+"\x0e\xf8\x69\xf8\xfc\x15\xfb\x1f\x6a\x05\x6d\x84\x7e\x7f\x75\x1a\x7c\x95\x80\x99\x92\x8d\x8b\x8f\x98\x1e\xbd\x97\x59\xfb\x79\x05"
+"\x52\x06\x6b\x77\x7c\x73\x79\x97\x83\xa4\x1f\xf7\x4a\x06\xaa\x9f\x9b\xa2\x9e\x81\x92\x70\x1f\x52\x06\x0e\xf8\x76\xf8\x19\x15\xfb"
+"\x55\x07\x77\x94\x80\x9c\x9c\x94\x96\x9f\x1e\xf7\x88\xfc\x46\x07\x75\x80\x82\x7b\x7a\x96\x82\xa1\x1f\x0e\xf7\x5f\x82\x15\x86\xa0"
+"\x95\x8a\x9e\x1b\xbd\xbc\x95\xa1\xbd\x1f\x7a\xf2\x07\xa1\x9a\x8d\x91\x94\x1f\x9d\x95\x95\x9d\x9e\x1a\xac\x75\x9f\x64\x8d\x1e\xf7"
+"\xd2\xfb\x23\x07\x71\x81\x89\x85\x81\xf7\x66\x1d\x81\x1e\x83\x96\x98\x88\xa5\x1b\xa6\xfb\x43\x06\x68\x4e\x63\x7e\x61\x1b\x62\x7c"
+"\x98\xaf\x1f\xf7\xb0\xfb\x10\x07\x7b\x06\x6b\x71\x73\x6c\x7a\x94\x7a\x9a\x81\x1f\x83\x96\x98\x88\xa5\x1b\x93\xfc\x1c\x06\x74\x8d"
+"\x80\x91\x81\x1e\x7b\x96\x9e\x81\x9f\x1b\x9e\x9c\x93\x9a\x96\x1f\x94\x96\x8d\x95\xa5\x1a\x0e\xf7\xa4\xf8\x81\x15\xb0\x06\x80\x5b"
+"\x05\x88\x80\x8b\x88\x87\x1a\x7d\x97\x80\x9a\xa0\x98\x98\xa7\x91\x1e\xa5\xf7\x07\x05\xfb\x9e\x06\x72\xfb\x05\x05\x88\x7e\x8b\x8a"
+"\x87\x1a\x7d\x96\x80\x9a\xa0\x98\x99\xa6\x91\x1e\x96\xbd\x05\xb0\x06\x5c\xfb\x68\x05\x73\x06\x6d\x79\x7d\x72\x79\x96\x83\xa3\x1f"
+"\xf7\x02\x06\xa8\x9e\x9a\xa3\x9d\x81\x93\x72\x1f\x75\x06\xf7\x87\xf7\x25\x15\xaa\xfb\x17\x05\x9a\x06\xdf\xf7\x14\x6b\xfb\x22\x05"
+"\x86\x06\x6f\x79\x7b\x74\x79\x96\x83\xa3\x1f\xc6\x06\xa8\x9e\x9a\xa3\x9b\x83\x93\x78\x8d\x1f\xba\xf7\x68\x05\xa2\x8f\x99\x9a\x9f"
+"\x1a\x9e\x81\x92\x72\x1e\x48\x06\x3e\xfb\x13\x74\xf7\x13\x05\x48\x06\x6d\x79\x7d\x73\x7b\x92\x83\x9a\x89\x1f\x5c\xfb\x69\x05\x71"
+"\x89\x7c\x7c\x76\x1a\x78\x96\x83\xa2\x1e\xc7\x06\xa8\x9e\x9a\xa3\x9d\x80\x93\x75\x1f\x87\x06\x0e\xb6\x1d\xf7\xb7\xf9\x10\x5e\x0a"
+"\xf7\xe2\xf7\x4e\x15\x92\x96\x91\x98\x93\x1a\x9a\x80\x96\x7c\x7c\x80\x84\x79\x7e\x1e\xfb\xd4\xfc\x47\x05\x82\x7e\x86\x81\x83\x1a"
+"\x7b\xf7\x68\x1d\x97\x1e\xf7\x66\x68\x15\xf7\x40\xf7\x19\xa1\xa4\xc9\x1a\xc1\x60\xb1\x4e\x5e\x5f\x78\x6a\x6d\x1e\x79\x78\x7f\x75"
+"\x7e\x1a\x7c\x96\x80\x9a\x98\x98\x93\x96\x91\x1e\x95\x9e\x8c\x8b\x91\x91\x08\x9a\x9b\x9f\x93\xa0\x1b\xab\xa0\x7a\x73\x6e\x77\x79"
+"\xfb\x5a\xfb\x29\x1f\x7f\x82\x7e\x49\x05\xf7\x95\x06\x96\xc2\x05\x8c\x90\x8c\x93\x8f\x1a\x98\x80\x96\x7d\x79\x7f\x81\x76\x84\x1e"
+"\x0e\xf8\x3c\xf7\xcf\x15\xf7\x1e\x7b\x1d\xfb\x1c\x06\xa5\xf7\x09\x05\x8e\x9b\x8c\x90\xf7\x5d\x1d\x71\xfb\x0b\x05\xfb\x1f\x4a\x1d"
+"\xf7\x1d\x06\x76\x31\xe6\x0a\x95\x95\x8f\x94\x91\xa5\x08\xfb\xa5\xfb\x0c\x15\x38\x0a\x7c\x7f\x81\x32\x0a\x0e\xf7\x77\xf7\x1a\x15"
+"\xea\x06\xf3\xc4\x9b\xb6\xbd\x1f\xb0\xaa\xa1\xb9\xb4\x1a\xb0\x76\xae\x6a\x9f\x1e\x9f\x6a\x60\x93\x40\x1b\x2e\x06\x91\xa9\x05\xeb"
+"\x5e\x1d\xfb\x69\x06\x6e\x7d\x87\x80\x72\x0a\x87\x94\x8f\x8b\xa1\x1b\x90\x1d\x6d\x9d\x7f\xb6\x1e\xf7\x69\x06\xa8\x9a\x8f\x96\x98"
+"\x91\x1d\x2e\x06\xa9\xf7\x1a\x15\x9f\xe6\x05\xf7\x13\x06\xc6\xa2\x81\x71\x66\x69\x79\x45\x1f\x0e\xf8\xfa\xf7\xe9\xf7\x0d\x1d\xdb"
+"\x06\xaa\x9f\x9a\xa3\x9b\x80\x94\x76\x8c\x1f\x8e\x9a\x05\xa6\x8d\x9d\x9a\xa1\x1a\x9b\x80\x94\x76\x8c\x1e\x48\x16\x3c\x06\xf4\xf7"
+"\x10\x05\xfb\x81\xf8\x1d\x5e\x0a\xf7\xef\xf7\x4e\x15\x92\x95\x91\x99\x93\x1a\x9a\x80\x96\x7c\x7c\x81\x76\x0a\x83\x1a\x7b\xf7\x68"
+"\x1d\x98\x1e\x0e\xf7\x47\xf7\xd6\x15\x38\x0a\x7c\x7f\x81\x32\x0a\xfb\x78\xfb\x35\x15\x57\x61\x67\x5e\x69\xa3\x77\xb4\xc2\xb4\xae"
+"\xb9\xae\x73\x9e\x60\x1f\xda\xf7\xf7\x15\x57\x61\x67\x5f\x68\xa3\x77\xb4\xc2\xb4\xae\xb8\xaf\x74\x9e\x5f\x1f\x0e\xf7\xfa\xf8\xa8"
+"\x15\x9f\x8a\x91\x88\x95\x1e\x9e\x83\x74\x9a\x74\xca\x0a\xad\xa3\xa3\xaf\x1f\x95\x07\xfb\x74\x04\xa3\x89\x95\x85\x95\x1e\x9b\x80"
+"\x78\x95\x77\xca\x0a\x9e\x9c\x93\x9a\x96\x1f\x93\x95\x8e\x96\xa5\x1a\x0e\xf8\x3f\xf8\xd5\x15\xfb\x06\x20\x27\x20\x3b\xc7\x51\xdf"
+"\xf7\x07\xf6\xef\xf7\x00\xdb\x4f\xc4\x36\x1f\x7e\x49\x15\xbe\xb0\x69\x5a\x49\x48\x4b\x46\x55\x67\xad\xbd\xcd\xce\xca\xd2\x1f\x0e"
+"\xf7\x52\xc7\x15\x67\xb3\xb7\x7c\xf7\x14\x0a\x3b\xd0\xfb\x10\x4f\x5e\x7d\x67\x54\x1f\xbc\xf7\x6c\x05\xfb\x0d\x82\x0a\x7f\x82\x7a"
+"\x7a\x1a\x7a\x95\x7b\x99\x86\x1e\x88\x94\x94\x8a\x9d\x1b\x96\x06\xfb\x18\xfc\xe5\x9f\x0a\xf7\x6b\xf8\x79\x9c\x0a\xf8\x0d\xfb\x24"
+"\xf7\x0d\x1d\xda\x06\xaa\x9f\x9a\xa3\x9b\x81\x94\x76\x8c\x1f\x8e\x9a\x05\xa6\x8d\x9c\x9a\xa1\x1a\x9c\x80\x93\x77\x8c\x1e\x48\x16"
+"\x3c\x06\xf3\xf7\x10\x05\xbb\xf7\x9e\x15\x92\x95\x91\x99\x93\x1a\x9a\x80\x96\x7c\x7c\x81\x9a\x1d\x81\x7e\x87\x81\x50\x0a\x96\x93"
+"\x9c\x98\x1e\x0e\xf7\xd5\xf7\xc3\x15\xf7\x55\xf7\x19\xa3\xa4\xc9\x1a\xc2\x5f\xb0\x4b\x5c\x5e\x78\x6a\x6a\x1e\x79\x78\x7e\x75\x7d"
+"\x1a\x7d\x96\x80\x9b\x99\x99\x93\x96\x92\x1e\x96\x9e\x8b\x8b\x92\x91\x08\x9a\x9b\xa1\x93\xa2\x1b\xab\xa2\x7a\x74\x6d\x78\x7b\xfb"
+"\x72\xfb\x2b\x1f\x7f\x82\x7c\x49\x05\xf7\xac\x06\x97\xc2\x05\x8c\x90\x8c\x93\x8f\x1a\x98\x7f\x96\x7d\x77\x7e\x81\x76\x84\x1e\x0e"
+"\xf7\xd8\xf7\x7e\x15\x96\x06\x9f\x83\xa6\x55\x8d\x66\x8c\x83\x18\x8c\x84\x05\xb7\x06\xac\xa2\x9d\xa6\x9e\x82\x93\x76\x8f\x1f\x7e"
+"\xab\x86\x95\x7b\x9d\x08\xbb\xa1\xa9\xb3\xb5\x1a\xbf\x61\xac\x46\x1e\x2e\x06\x69\x74\x79\x70\x77\x96\x82\xa3\x89\x1f\x65\xfb\x41"
+"\x05\x6b\x8a\x76\x78\x72\x1a\x76\x99\x81\xa7\x1e\xd0\x06\xac\xa2\x9d\xa6\x9f\x80\x94\x74\x8d\x1f\xa4\xf7\x05\x15\x98\xc7\x05\xa1"
+"\x06\xa7\x9b\x83\x7d\x77\x6f\x79\x6d\x1f\xcd\xf7\xa2\x15\xfb\x5a\xfb\x4e\xfb\x41\xfb\x4c\xf7\x60\x1d\xf7\x4c\xf7\x1e\xf2\x1d\xf7"
+"\x47\xf7\xd6\x15\x38\x0a\x7c\x7f\x81\x32\x0a\x0e\xf8\xb3\xf8\xc0\x15\xa0\x95\x97\x99\x9b\x1a\x9b\x7f\x97\x7a\x81\x7d\x88\x85\x7e"
+"\x1e\x37\x65\x61\x9f\x75\x95\x89\x8c\x19\x93\x74\x7c\x8e\x7d\x1b\x71\x71\x75\x74\x7f\x93\x82\x9a\x86\x1f\x9a\x85\x91\x89\x90\x88"
+"\x90\x89\x19\x8d\x8a\x8f\x89\x90\x89\x5b\x73\x18\x70\x7e\x85\x84\x77\x1a\x78\x96\x7f\x9b\x95\x8e\x8c\x95\xa2\x1e\xf0\xba\xad\x76"
+"\xb2\x63\xa3\x66\x19\xa8\x5b\x72\x92\x5e\x1b\x36\x38\x68\x4e\x50\x1f\x5b\x58\x6e\x4c\x53\x1a\x22\xe6\x40\xf7\x13\xe1\xe7\xb0\xc6"
+"\xc8\x1e\xc0\xbf\xab\xde\xe1\x1a\xe9\x66\xd3\x36\xcf\x1e\xfb\x10\xfb\x5e\x15\xd4\xbf\x60\x4f\x6d\x7e\x6d\x76\x75\x1f\x65\x64\x55"
+"\x74\x57\x1b\x41\x53\xb5\xc1\xd8\xe5\xd4\xe9\x1f\x0e\xf7\xeb\xf7\x5a\x15\xda\x2c\x05\x75\x9d\x93\x86\x9d\x1b\xac\xad\xa9\xa9\x98"
+"\x87\x93\x7c\x9d\x1f\x3c\xeb\xf7\x0e\xea\x05\xa9\xa3\x94\x98\xa0\x1a\xa3\x78\x9d\x71\x79\x81\x86\x76\x71\x1e\xfb\x0e\x2b\x3c\xea"
+"\x05\xa0\x7a\x81\x91\x7a\x1b\x6a\x69\x6d\x6d\x7d\x8f\x84\x9a\x79\x1f\xda\x2c\xfb\x0e\x2b\x05\x6c\x73\x83\x7f\x76\x1a\x72\x9d\x79"
+"\xa6\x9c\x95\x90\xa0\xa7\x1e\x0e\xf8\x19\xf8\x67\x15\x75\x77\x79\x77\x7b\x94\x83\x9e\x8a\x1f\xa3\x8a\x94\x89\x95\x87\x08\x9e\x82"
+"\x99\x79\x7b\x1a\x65\x66\x76\x48\x64\x7b\x8e\x94\x7e\x1e\x92\x82\x88\x8c\x83\x1b\x75\x78\x78\x76\x70\xb9\x79\xd2\xc8\xb5\x98\xa8"
+"\xad\x1f\xa7\xa3\x9e\xaf\xa8\x1a\xa9\x7b\xa4\x6d\x9c\x1e\xbb\xa5\xa1\xaa\xb2\x1a\xc0\x63\xac\x4a\x41\x45\x67\x64\x7d\x97\x80\x9a"
+"\x94\x94\x8f\x91\x93\x1e\x9f\xa2\x9c\x91\xac\x1b\xad\xa0\x7e\x77\x71\x6c\x72\x6c\x1f\x0e\xf7\x50\xf7\x99\x15\x89\x81\x8a\x83\x7f"
+"\x1a\x44\xc4\x5c\xe0\xdb\xd9\xb3\xb5\x9d\x7d\x98\x78\x81\x81\x87\x84\x81\x1e\x75\x6f\x7f\x87\x65\x1b\x5a\x71\x9e\xaf\x88\x1f\x91"
+"\x8b\x90\x8c\x91\x1e\x93\xac\x05\xbb\x95\xb6\xae\xbc\x1b\xa8\xa6\x7e\x7e\x6c\x93\x80\xa3\xa4\x9c\x9b\xa9\x91\x1f\x97\xbd\x05\x8e"
+"\x99\x8b\x8b\x90\x1a\x9c\x7e\x97\x7a\x7c\x81\x86\x7f\x82\x1e\x97\x72\x77\x90\x6e\x1b\x30\x38\x48\x31\x77\x1f\xf7\x7c\xf7\xaf\x15"
+"\xfb\x5b\xfb\x4d\xfb\x40\xfb\x4d\xf7\x60\x1d\xf7\x4d\xf7\x1d\xf2\x1d\x22\x1d\xf7\x4d\xf7\xc9\x15\xa3\x9c\x94\x97\x9b\x1a\x9e\x7d"
+"\x98\x77\x7f\x85\x89\x7d\x77\x4c\x0a\x78\x99\x7e\x9f\x96\x91\x8e\x98\x9f\x1e\x0e\x22\x1d\xbf\xf7\xb7\x15\xe5\x31\x05\x82\x94\x93"
+"\x87\x96\x1b\xa2\xa1\x1d\xfb\x4a\xfb\x11\x05\x6e\x78\x6f\x0a\x22\x1d\x61\xf7\xee\x40\x0a\x22\x1d\x88\xf8\x06\x15\x98\x7d\x86\x8e"
+"\x7e\x1b\x71\xf7\x1b\x1d\xa2\x96\x86\x94\x7f\x97\x1f\x0e\x22\x1d\xd9\xf8\x34\x15\x3c\x3f\x46\x43\x53\xb6\x62\xc6\xdb\xd7\xcf\xd3"
+"\xc5\x60\xb3\x4f\x1f\x80\x50\x15\xaa\xa0\x77\x6e\x68\x62\x67\x64\x6b\x75\x9f\xa6\xb1\xb3\xae\xb5\x1f\x0e\x22\x1d\xf7\x6c\xf7\xef"
+"\x15\x7f\x78\x81\x7d\x7e\x1f\x6a\x6c\x86\x88\x7d\x1b\x81\x7f\x91\x9d\x6f\x1f\xa8\x54\x1d\x6b\x69\x7b\x6c\x6a\x1f\x71\x72\x80\x79"
+"\x7c\x1a\x7c\x98\x80\x9b\x95\x96\x8f\x93\x93\x1e\xb3\xb3\x93\x90\x9d\x1b\x98\x91\x88\x7b\xa2\x1f\x6f\xb2\xa9\x7e\xa2\x1b\xad\xaa"
+"\x9c\xb5\xb4\x75\x0a\xf7\xe5\x7e\x15\xda\x8f\xc3\x9a\xbb\xa8\x08\xbb\xa7\xa3\xa7\xa5\x7e\x1d\xcc\xc4\x6c\x69\x89\x1f\x8a\x78\x05"
+"\x73\x8a\x9d\x7a\xa5\x1b\xaf\xa1\xa1\xb7\x95\x1f\x9d\xdb\x05\x98\x0a\x7d\x4b\x05\x80\x0a\x3c\xb5\x4a\xd1\x6a\x1e\xa2\x81\x9c\x86"
+"\xab\x84\x77\x31\x18\x8d\xa2\x8d\x8b\x92\x1b\xa3\x99\x83\x7d\x7b\x7d\x81\x73\x7b\x77\x91\x94\x7c\x1f\x96\x7a\x88\x8c\x83\x1b\x72"
+"\x74\x75\x74\x6c\xc0\x71\xc8\xd3\xc6\xc1\xcc\xb2\x7b\x9e\x62\x94\x1f\x0e\x24\x1d\xad\xf7\x28\x05\x8e\x9b\x8c\x91\x93\x1a\xa1\x21"
+"\x1d\xf7\xff\xf9\x09\x15\xa1\x9b\x95\x98\x9b\x1a\x9e\x7d\x98\x77\x7f\x85\x88\x7e\x78\x4c\x0a\x79\x99\x7d\x9f\x96\x91\x8e\x98\x9f"
+"\x1e\x0e\x24\x1d\xac\xf7\x28\x05\x90\x9e\x8b\x8d\x93\x1a\xa2\x21\x1d\xf7\x7a\xf8\xf7\xf7\x51\x1d\xa2\x94\x88\x90\x82\x93\x1f\x84"
+"\x92\xf7\x0e\x1d\x24\x1d\xac\xf7\x28\x05\x90\x9e\x8b\x8d\x93\x1a\xa2\x21\x1d\xf7\x1c\xf9\x2e\x15\x4d\x0a\xb1\xa8\x75\x9f\x6d\x1f"
+"\xf7\x64\x16\x4d\x0a\xb1\xa7\x75\xa0\x6d\x1f\x0e\x24\x1d\xac\xf7\x28\x05\x90\x9e\x8b\x8d\x93\x1a\xa2\x21\x1d\xf7\x3c\xf9\x46\xf7"
+"\x65\x1d\x82\x90\x82\x97\x80\x1f\xf7\x02\x21\x05\x7e\x99\x92\x87\x95\x1b\xa5\xa3\xa1\xa3\x94\x85\x96\x80\x96\x1f\x0e\x28\x0a\xf7"
+"\x56\x30\x0a\x28\x0a\xde\xf8\xf7\x15\xe4\x31\x05\x82\xf7\x1f\x1d\xfb\x11\x05\x6f\x78\x86\x84\x7a\x1a\x79\x98\x7e\x9d\x96\x94\x8e"
+"\x95\x99\x1e\x0e\x28\x0a\x80\xf9\x2e\x40\x0a\x28\x0a\xa0\xf9\x46\xc4\x0a\x85\x96\x80\x96\x1f\x0e\xf8\x10\xf9\x4c\x15\x99\x92\x88"
+"\x7b\xa2\x1f\x70\xb0\xab\x7d\xa2\x1b\xad\xa9\x9c\xb5\xb5\xf7\x72\x1d\x7a\x7e\x7b\x81\x78\x78\x1e\x6f\x70\x87\x88\x7d\x1b\x80\x80"
+"\x91\x9d\x6f\x1f\xa8\x5e\x7b\x92\x73\x1b\x6c\x6a\x7c\x6d\x6b\x1f\x6f\x72\x7f\x78\x7a\x1a\x7d\x98\x80\x9b\x96\x95\x90\x94\x95\x1e"
+"\xb0\xb0\x94\x91\x9c\x1b\xfb\x0e\xfb\xdd\x96\x0a\x0e\x2e\x1d\xf7\x4c\xf7\x95\x15\xa3\x9c\x94\x97\x9c\x1a\x9d\x7d\x98\x77\x7f\x85"
+"\x89\x7d\x77\x1e\xfb\x31\x21\x05\x74\x7c\x81\x7d\x7b\x1a\x78\x99\x7e\x9f\x96\x92\x8e\x98\x9e\x1e\x0e\x2e\x1d\xc2\xf7\x83\x31\x0a"
+"\x2e\x1d\x63\xf7\xba\x15\x63\x73\x0a\x6c\x1f\xf7\x65\x16\x4d\x0a\xb1\xa8\x75\x9f\x6d\x1f\x0e\x2e\x1d\x87\xf7\xd2\xc4\x0a\x86\x96"
+"\x7f\x96\x1f\x0e\x2e\x1d\xf7\x75\xf7\xbb\x15\x7d\x7b\x81\x78\x78\x1f\x6f\x70\x87\x88\x7d\x1b\x81\x7f\x90\x9e\x6f\x1f\xa8\x54\x1d"
+"\x6c\x6b\x7c\x6e\x6b\x1f\x6f\x72\x7e\x77\x7b\x1a\x7c\x98\x80\x9b\x95\x96\x90\x92\x93\x1e\xb2\xb2\x94\x91\x9c\x1b\x99\x91\x88\x7b"
+"\xa2\x1f\x70\xb2\xa9\x7d\xa2\x1b\xad\xaa\x9c\xb5\xb4\x75\x0a\xf8\x69\xf9\x55\x15\x30\xe5\x05\x94\x82\x83\x8f\x80\x1b\x73\x74\x75"
+"\x75\x81\x8e\x86\x96\x81\x1f\x90\x86\xf7\x13\xfb\x11\xf7\x49\xf7\x11\x05\xa9\x9f\x8f\x90\x9d\x1a\x9d\x7e\x98\x79\x80\x81\x87\x82"
+"\x7e\x1e\xad\xfb\xb1\x15\x90\x9e\x8b\x8c\x94\x1a\xa2\x79\x9b\x71\x77\xb4\x0a\x2e\xfb\x06\x63\xa2\x63\xae\x76\x1f\xa7\x79\xa8\x82"
+"\xcd\x80\xcd\x7f\x98\x87\x9e\x81\x08\x9a\x83\x94\x7d\x7d\x1a\x60\x49\x67\x3a\x4c\x54\xa5\xab\x88\x1e\x89\xa6\x8b\x8b\x85\x92\x85"
+"\x1d\x73\xb8\xbb\x7f\xc1\x1b\xf7\x31\xf7\x09\xe3\xf7\x0b\xbb\x6f\xb4\x5d\x9f\x1f\x71\x97\x6d\x93\x54\x95\x3d\x9a\x83\x8d\x7d\x96"
+"\x08\x80\x94\x84\x99\x97\x1a\xb5\xc6\xb0\xcf\xc7\xb3\x73\x67\x6b\x8b\x8b\x92\x82\x1e\x82\x92\x99\x85\x9a\x1b\x9c\x9c\x93\x98\x98"
+"\x1f\x95\x95\x90\x94\x91\xa5\x08\x0e\x23\x0a\x97\xf8\xa9\x15\xa5\x9c\x93\x96\x9c\xf7\x48\x1d\x78\x4c\x0a\x78\x99\x7e\x9e\x96\x92"
+"\x8e\x98\x9f\x1e\x0e\x23\x0a\xfb\x09\xf8\x97\xf7\x51\x1d\xa1\x95\x89\x90\x82\x93\x1f\x87\x8e\x88\x8e\x8a\x8c\xfb\x12\xf7\x11\x18"
+"\xfb\x4a\xfb\x11\x05\x6e\x78\x6f\x0a\x23\x0a\xfb\x67\xf8\xce\xc1\x0a\xa7\x75\xa0\x6c\x1f\x0e\x23\x0a\xfb\x44\xf8\xe6\x15\x98\x7e"
+"\x86\x8e\x7e\x1b\x71\xd5\x0a\x95\x86\x93\x7f\x98\x1f\x0e\xf8\xe4\xf9\x70\x15\xa4\x9c\x94\x97\x9b\x1a\x9e\x7d\x98\x77\x7e\x85\x88"
+"\x7e\x78\x4c\x0a\x78\x99\x7e\x9f\x95\x92\x8e\x98\x9f\x1e\x6e\xfc\x1b\x29\x0a\x77\x1b\x2e\x34\x1d\x0e\xf8\x02\xf9\x95\x15\x63\x62"
+"\x1d\x6c\x1f\xf7\x64\x16\x63\x62\x1d\x6c\x1f\xfb\x3c\xfc\xaa\x29\x0a\x77\x1b\x2e\x34\x1d\x0e\xf7\x7c\xf1\x0a\x86\x78\x8b\x8a\x83"
+"\x1a\x75\x9e\x79\xa4\xaf\xa2\xa0\xb8\x95\x1e\x99\xcb\x05\xf7\x39\x06\xfc\x0c\xfb\xfc\x74\x26\x05\xf8\x62\x06\xb0\xf7\x3b\x05\x90"
+"\x9e\x8b\x8c\xd9\x0a\x7c\x49\x05\x96\xf8\xee\x15\x30\xe5\x05\x95\x81\x84\x8e\x80\x1b\x73\x74\x75\x75\x81\x8e\x86\x96\x81\x1f\x8d"
+"\x89\x8c\x89\x8d\x8a\xf7\x13\xfb\x11\x18\xf7\x49\xf7\x11\x05\xa7\x9d\x91\x93\x9c\x1a\x9d\x7d\x98\x79\x81\x81\x87\x82\x7e\x1e\x0e"
+"\xf8\x14\x16\xf7\x0e\x06\xa8\x98\x8f\x96\x9a\x1f\x9a\xf7\x33\x1d\x80\x06\xb5\xf7\x50\x05\x8d\x97\x8c\x93\x99\x69\x1d\x2b\x7b\x7b"
+"\x67\x1e\x75\x82\x7e\x77\x74\x1a\x73\x9c\x7a\xa4\x95\x9a\x8d\x8f\x9d\x1e\x96\xbb\xb1\x90\xac\x1b\xc3\x9f\x82\x73\x8e\x1f\x82\x07"
+"\x87\x79\x05\x91\x65\x6e\x8e\x6b\x1b\x24\x34\x69\x4e\x56\x1f\x70\x6d\x7d\x6b\x6e\x1a\x4b\xce\x5b\xe6\xc3\xc7\x97\xa1\xbf\x1e\xa6"
+"\xf7\x08\x15\x6c\x4e\x51\x7b\x54\x1b\x68\x6f\x98\x9b\x95\x92\x95\x9a\x97\x6c\x1d\xac\xa9\x88\x84\xb3\x1f\xf7\x17\xf8\x37\x15\xa3"
+"\x9b\x94\x97\x9b\xf7\x48\x1d\x79\x1e\xfb\x32\x21\x05\x74\x7b\x81\x7e\x52\x0a\x97\x90\x95\x9b\x1e\x0e\x2d\x1d\x86\xf8\x25\x15\xe5"
+"\x31\x05\x81\x36\x0a\xa2\x94\x88\x90\x83\x93\x1f\x88\x8e\x8a\x8c\x87\x8e\xfb\x12\xf7\x14\x1d\x0e\xf8\x13\xbc\x0a\x41\x1d\x77\x1b"
+"\x7f\x06\xcc\x0a\x30\x7c\x7b\x64\x1e\x73\x4f\x1d\x72\x9c\x7a\xa4\x73\x1d\x27\xf8\x5b\x15\x63\x4a\x0a\xb0\xa9\x75\x9f\x6c\x1f\xf7"
+"\x65\xf7\x2d\x1d\x0e\x2d\x1d\x45\xf8\x73\xb7\x0a\x2d\x1d\x9f\xf8\xa1\x15\x3c\x3f\x46\x43\x53\xb6\x62\xc7\xdb\xd7\xd0\xd2\xc4\x60"
+"\xb4\x4e\x1f\x81\x50\x15\xaa\xa0\x77\x6f\x68\x62\x67\x64\x6b\x75\x9e\xa7\xb0\xb3\xae\xb5\x1f\x0e\xf8\x13\x16\xf7\x0e\xf7\x22\x1d"
+"\x83\x84\x8b\x76\x1b\x80\x06\xb5\xf7\x50\x05\x8d\x97\x8d\x97\x95\x1a\xd0\x49\xb6\x21\x53\x2a\x7b\x7b\x67\x1e\x76\x4f\x1d\x73\x9d"
+"\x7a\xa3\x95\x9a\x8d\x8f\x9d\x1e\x96\xbb\xb1\x90\xad\x1b\xc2\xa3\x81\x74\x88\x8b\x88\x8a\x88\x1f\x87\x79\x05\x91\x66\x6d\x8e\x6b"
+"\x1b\x24\x35\x69\x4e\x55\x1f\x70\x6d\x7d\x6b\x6e\x1a\x4b\xce\x5b\xe6\xc3\xc7\x97\xa1\xbf\x1e\xa6\xf7\x08\x15\x6c\x4f\x50\x7b\x54"
+"\xf7\x21\x0a\x97\x99\x96\x6c\x1d\xad\xa8\x88\x84\xb3\x1f\xf7\x37\xf8\x5d\x15\x7f\x78\x81\x7c\x7e\x1f\x6a\x6b\x87\x88\x7d\x1b\x81"
+"\x7f\x91\x9d\x6f\x1f\xa9\x54\x1d\x6d\x6a\x7c\x6f\x6c\x1f\x6e\x71\x7e\x77\x7a\x1a\x7c\x98\x80\x9b\x96\x95\x8f\x94\x93\x1e\xb3\xb3"
+"\x93\x90\x9c\x1b\x99\x91\x88\x7a\xa2\x1f\x70\xb1\xaa\x7d\xa2\x1b\xae\xa8\x9c\xb6\xb5\x75\x0a\xf7\xe9\x7c\x15\xd3\x8e\xbd\x94\xb6"
+"\x9e\x08\xc0\xa2\xa9\xa9\xa9\xf7\x28\x1d\xa6\xc6\xab\x99\xaf\xa3\xa8\x1f\xb5\xaf\xbc\xa0\xc9\x1b\xb7\xac\x83\x7c\xa1\x1f\x95\x83"
+"\x8f\x83\x8a\x7b\x08\x69\x99\x7c\xaa\xaf\xa1\xa1\xb7\x95\x1e\x9b\xd5\x05\x90\x9e\x8b\x8d\x94\x1a\xa1\x79\x9a\x71\x77\x7e\x83\x78"
+"\x7f\x1e\x9c\x6a\x5b\x95\x55\x1b\x2d\x88\x1d\x42\xb7\x50\xd3\x75\x1e\x9e\x85\x99\x88\xa6\x88\x78\x36\x18\x8d\x9c\x8c\x8b\x90\x1b"
+"\xab\x99\x84\x7c\x7b\x7d\x81\x73\x7b\x77\x91\x94\x7c\x1f\x96\x79\x89\x8c\x83\x1b\x72\x74\x75\x74\x80\x90\x81\x94\x85\x1f\x79\xa2"
+"\xb4\x7f\xaf\x1b\xd3\xc6\xc1\xcc\xb3\x7b\x9d\x62\x94\x1f\x0e\xf8\xe2\xd5\x1d\xa2\xc0\x48\x1d\xd7\xf7\xe8\x15\xa3\x9a\x94\x98\x9c"
+"\x1a\x9d\x7d\x98\x77\x7f\x85\x88\x7e\x78\x1e\xfb\x32\x21\x05\x73\x7b\x82\x7f\x7b\x1a\x78\x99\x7e\x9f\x95\x98\x90\x95\x9a\x1e\x0e"
+"\xa8\x0a\x71\x87\x5e\x1b\x36\x60\xa2\xc0\x48\x1d\x53\xf7\xd6\xf7\x10\x0a\x96\x1b\xa3\xa2\xa1\xa2\x94\x88\x90\x83\x93\x1f\x83\x92"
+"\xfb\x12\xf7\x11\xfb\x4a\xf7\x73\x1d\x98\x7e\x9e\x95\x93\x8e\x95\x9a\x1e\x0e\xa8\x0a\x70\x87\x5e\x1b\x37\x60\xa3\xbf\x48\x1d\xfb"
+"\x2a\xf8\x0c\x15\x4d\x0a\xb0\xa9\x76\x9f\x6c\xda\x0a\x0e\x33\x1d\xfb\x11\xf8\x24\x15\x98\x7e\x85\x8e\x7f\x1b\x70\x74\x75\x72\x83"
+"\x90\x82\x97\x7f\x1f\xf7\x03\x21\x05\x80\x96\x94\xf7\x01\x0a\x95\x7f\x96\x1f\x0e\xf8\x54\xf8\x3d\x15\xfb\x4c\x26\x1d\xd4\x39\x0a"
+"\xfb\x0b\x06\x6b\x81\x89\x7e\xf7\x11\x0a\x6d\x9d\x7f\xb6\x1e\xf7\xeb\x06\xa8\x9a\x8f\x96\x99\xdf\x0a\xfb\x09\x06\xf7\x3d\xf8\x81"
+"\x15\xa4\x9b\x93\x97\x9c\x1a\x9d\x7d\x98\x77\x7f\x83\x88\x7e\x79\x1e\xfb\x32\x21\x05\x75\x7d\x81\x7c\x52\x0a\x96\x90\x95\x9b\x1e"
+"\x0e\xf8\x54\x35\x1d\xaf\xf8\x6f\x15\xe4\xf7\x31\x1d\x85\x91\xfb\x12\xf7\x11\xfb\x4b\xfb\x10\x05\x6e\x76\x86\x86\x79\x1a\x79\x98"
+"\x7e\x9e\x95\x26\x0a\xf8\x54\x67\x1d\x89\x7e\xb6\x0a\xf7\xeb\x20\x0a\x9b\x1a\x9c\x80\x9b\x7d\x69\x0a\xfb\x09\x06\x52\xf8\xa5\x15"
+"\x63\x65\x68\x65\x6f\xa1\x76\xa9\xb3\xb1\xae\xb1\xa7\x75\xa0\x6d\x1f\xf7\x64\x16\x62\x62\x1d\x6d\x1f\x0e\xf8\x54\x35\x1d\x74\xf8"
+"\xbd\xf7\x65\x1d\x83\x91\x81\x96\xf7\x32\x1d\x86\x94\x7f\x97\x1f\x0e\xf7\xee\xf8\xc4\x15\x99\x92\x88\x7a\xa1\x1f\x71\xb0\xac\x7c"
+"\xa1\x1b\xad\xa9\x9c\xb4\xb4\x1f\xa0\xa1\x95\x9b\x98\x1a\x99\x7d\x97\x7a\x80\x78\x80\x7d\x7e\x1e\x6a\x6b\x87\x88\x7d\x1b\x81\x80"
+"\x98\x1d\x6c\x6a\x7c\x6d\x6b\x1f\x6f\x71\x7f\x78\x7b\x1a\x7c\x98\x80\x9b\x96\x95\x90\x95\x95\x1e\xb0\xb0\x94\x91\x9c\x1b\x56\xfb"
+"\x1b\x92\x0a\x0e\x24\x0a\xf7\x55\xf7\x9a\x15\xa5\x9c\x93\x95\x9c\x1a\x9e\xf7\x06\x0a\x76\x7d\x80\x7c\x7c\x1a\x78\x99\x7e\x9e\x96"
+"\x95\x8f\x96\x9c\x1e\x0e\x24\x0a\xc5\xf7\x88\x15\xe4\x31\x05\x81\x36\x0a\xa2\x96\x8a\x8d\x7a\x9b\x1f\xfb\x12\xf7\x11\xfb\x4b\xfb"
+"\x10\x05\x6e\x76\x86\x86\x79\x1a\x79\x99\x7e\x9d\x95\x94\x8e\x95\x99\x1e\x0e\x24\x0a\x67\xf7\xbe\xc7\x0a\xb4\xb1\xae\xb1\xa7\x75"
+"\xa0\x6c\x1f\x0e\x24\x0a\x83\xf7\xd6\x15\x98\x7d\x86\x8e\x7f\x1b\x70\x74\x75\x73\x82\x91\x81\x96\x80\x1f\xf7\x02\x21\x05\x80\x97"
+"\x94\x86\x96\x1b\xa5\xa3\xa1\xa2\x95\x87\x93\x7d\x98\x1f\x0e\x24\x0a\xf7\x78\xf7\xc0\x15\x7d\x7b\x81\x78\x79\x1f\x6e\x6f\x87\x88"
+"\x7d\x1b\x81\x80\x98\x1d\x6c\x6a\x7c\x6e\x6c\x1f\x6f\x71\x7e\x78\x7a\x1a\x7c\x98\x80\x9b\x96\x95\x8f\x96\x95\x1e\xb0\xb1\x93\x8e"
+"\x1d\xa0\xa1\x94\x99\x98\x1a\x99\x7d\x97\x7b\x1e\x0e\xf8\x48\xf8\xcc\x8c\x1d\x75\x7f\x8c\x8a\x9c\x79\x1f\xf7\x14\xfb\x10\xf7\x49"
+"\xf7\x10\x05\xa7\x9e\x91\x92\x9d\x1a\x9d\x7e\x98\x78\x81\x82\x87\x81\x7d\x1e\xa5\xfb\xb5\x15\x8e\x98\x8c\x95\x93\x7f\x0a\x7f\x1e"
+"\x9a\x69\x78\x0a\xf7\x11\x63\x1d\x4a\x61\x0a\x94\x8e\x93\x97\x1e\x79\xaf\xbc\x82\xc5\x1b\xf7\x26\xf7\x05\xd2\xe6\xb0\x79\xaa\x6a"
+"\x9f\x1f\x71\x9b\x63\x96\x43\x94\x4e\x93\x84\x8d\x7f\x8f\x08\x80\x90\x83\x91\x91\x1a\x9b\xbf\x9b\xbd\xb5\xa9\x83\x79\xa1\x1e\x6b"
+"\x96\x95\x83\xa5\x55\x1d\x93\x91\xa6\x08\x0e\xf8\xbd\xf8\xe8\x15\xa5\x9c\x93\x96\x9b\x1a\x9e\xf7\x06\x0a\x75\x7d\x81\x7c\x52\x0a"
+"\x96\x90\x95\x9b\x1e\xf7\x68\x4b\x15\xfb\x20\x26\x1d\xa9\x06\x65\x65\x1d\x5a\x1b\x5d\x72\x9a\xa7\x91\x8c\x92\x8d\x93\x1f\xc7\xf7"
+"\xa2\x5a\x1d\x93\x94\x8a\x9d\x1b\x4b\x1d\x7b\x1a\x42\xc8\x5b\xe5\x61\x1d\xa9\x98\x35\x0a\x9c\x5c\x1d\xf8\x3c\xf8\xd6\x15\xe5\xf7"
+"\x31\x1d\x88\x8d\x89\x8e\x8a\x8c\xfb\x13\xf7\x14\x1d\xf7\xcf\x4d\x15\xfb\x20\x26\x1d\xa9\x06\x65\x65\x1d\x5a\x1b\x5d\x72\x9a\xa7"
+"\x91\x8c\x92\x8d\x93\x1f\xc7\xf7\xa2\x5a\x1d\x93\x94\x8a\x9d\x1b\x4b\x1d\x7b\x1a\x42\xc8\x5b\xe5\x61\x1d\xa9\x98\x35\x0a\x9c\x5c"
+"\x1d\xf7\xdf\xf9\x0c\x15\x62\x4a\x0a\xb0\xa9\x75\x9f\x6d\xda\x0a\xd0\xfb\x63\x75\x1d\xee\x9f\x1d\x9c\x81\x9a\x7c\x91\x1e\x8d\x85"
+"\x84\x8c\x7e\x1b\x0e\xf7\xfe\xf9\x24\x15\x98\x7d\x86\xf7\x28\x0a\x95\x81\x1f\xf7\x03\x21\x05\x80\x96\x95\xf7\x01\x0a\x93\x7e\x98"
+"\x1f\xf7\x1c\xfb\x11\x15\xfb\x20\x26\x1d\xa9\x06\x65\x65\x1d\x5a\x1b\x5d\x72\x9a\xa7\x91\x8c\x92\x8d\x93\x1f\xc7\xf7\xa2\x5a\x1d"
+"\x93\x94\x8a\x9d\x1b\x4b\x1d\x7b\x1a\x42\xc8\x5b\xe5\x61\x1d\xa9\x98\x35\x0a\x9c\x5c\x1d\x53\x0a\xf8\x54\xf7\xa6\x2f\x1d\xf7\xe4"
+"\xf9\x0c\xc7\x0a\xb3\xb1\xae\xb1\xa7\x75\xa0\x6d\x1f\xfb\xc5\xfd\x05\x58\x1d\x0e\xf7\xa9\xf2\x15\xf7\xc9\xf7\x82\x9d\xdf\x05\xfc"
+"\x35\x06\x73\x21\x05\x89\x81\x89\x7e\x84\x1a\x75\x9e\x7a\xa4\xae\xa2\xa2\xb7\x95\x1e\x8c\x90\x05\xf7\x1a\x06\xfb\xc7\xf7\x5e\x1d"
+"\x99\x8c\x91\x79\x0a\x6c\x75\x7a\x68\x80\x1e\x81\xf8\x65\x8c\x1d\x74\x80\x8c\x89\x9c\x7a\x1f\xf7\x14\xfb\x10\xf7\x49\xf7\x10\x05"
+"\xa8\x9e\x90\x92\x9d\x1a\x9d\x7e\x98\x79\x80\x82\x87\x81\x7d\x1e\x0e\xf7\xf9\xf8\x98\x15\x48\x06\x67\x75\x7b\x71\x7c\x97\x7f\x9a"
+"\x89\x1f\x8f\x06\x71\xfb\x0b\x05\x6a\x76\x7a\x72\x76\x98\x82\xa9\x1f\xd0\x06\xae\xa1\x9c\xa5\x9e\x7f\x94\x72\x8c\x1f\x9f\xe6\x05"
+"\xa6\xad\x9d\x93\xa4\x1b\xa7\x99\x84\x7c\x89\x8a\x87\x8a\x87\x1f\x77\x2d\x05\x6f\x89\x78\x7a\x74\x1a\x76\x98\x82\xa9\x1e\xc2\x06"
+"\xae\xa1\x9b\xa6\x9a\x80\x97\x7b\x8c\x1f\x88\x8c\xa0\xe9\x05\x8d\x95\x8c\x95\x93\x1a\xb9\x63\xa9\x50\x6f\x71\x83\x7e\x75\x1e\x85"
+"\x87\x05\x0e\xf8\x73\x16\xa8\x99\x28\x1d\x9c\xf7\x0c\x0a\x70\x06\xbb\xf7\x6e\x05\xa8\x06\xaa\x97\x2a\x0a\x9d\x9b\xf7\x0c\x0a\x6f"
+"\x06\x92\xac\x05\xa1\x91\xc2\x0a\xfb\x28\xf7\x06\x1d\x4a\x3a\x81\x0a\x7d\x25\x0a\x97\x06\x5b\xfb\x6e\x05\x78\x06\x6b\x81\x88\xf7"
+"\x04\x0a\xf7\x1b\x06\xb0\x8c\x95\x8e\x9d\x9d\x08\x7a\x96\x95\x86\xaf\x1b\xfb\x01\xf3\x15\xbb\xf7\x6e\x05\xf7\x29\x06\x5a\xfb\x6e"
+"\x05\x79\x06\x69\x7e\x87\x79\x79\x1f\x9d\x80\x7f\x8f\x6a\x1b\x0e\xf8\xb6\xf2\x15\xd2\xf7\xd6\x05\xfb\x40\xf7\x06\x1d\x48\x6f\x76"
+"\x86\x7d\x70\x1f\x98\x6f\x6f\x91\x6c\x1b\x3a\x81\x0a\x84\x25\x0a\x90\x39\x0a\x7f\x38\x1d\xf8\x6a\x06\xa7\x9a\x8f\x96\x98\x1f\x9b"
+"\x97\x94\x9d\x9c\x1a\xa8\x7a\x97\x60\x1e\xfb\xb9\x16\x52\x06\xbc\xf7\x6f\x05\xc3\x06\xa3\xf2\x15\x52\x89\x0a\x9d\x9f\x1b\x92\x90"
+"\x8a\x89\x97\x1f\x83\x7a\x89\x85\x88\x7d\x08\xa8\xfb\xf8\x15\xbc\xf7\x6f\x05\xcb\x06\x5a\xfb\x6f\x05\x0e\xf8\xb5\xf2\x15\xf7\x03"
+"\xf8\x87\x05\xfb\x1b\x06\x6c\x8c\x73\x85\x70\x7d\x08\x98\x70\x6e\x91\x6c\x1b\x3a\x40\x4e\x39\x79\x1f\x83\x69\x05\x84\x06\x6b\x81"
+"\x3a\x1d\x90\x39\x0a\x7f\x38\x1d\xf8\x6a\x06\xa7\x9a\x8f\x96\x98\x1f\x9b\x97\x94\x9d\x9c\x1a\xa8\x7a\x97\x60\x1e\x5a\xf7\xd6\x15"
+"\x4b\x89\x0a\x9e\x9f\x1b\x92\x92\x8a\x87\x98\x1f\xfb\x98\xfc\x1c\x15\x52\x06\xbc\xf7\x6f\x05\xc3\x06\xa3\xf2\x15\x52\x89\x0a\x9e"
+"\x9f\x1b\x92\x90\x8a\x88\x97\x1f\x83\x7a\x89\x85\x88\x7d\x08\xa8\xfb\xf8\x15\xbc\xf7\x6f\x05\xcb\x06\x5a\xfb\x6f\x05\x0e\xf8\xdb"
+"\xf7\x34\x15\xad\xa7\x9e\xb0\xb0\x1a\xc0\x65\xaf\x52\xf7\x07\x0a\x62\x60\x7b\x0a\xa2\x7b\x9b\x1e\x54\xf7\x12\x15\xa3\x9b\x7d\x75"
+"\x6b\x71\x71\x6a\x8a\x0a\xac\x1f\x6a\xf7\x24\x1d\xfb\x5d\xf8\x91\x5e\x0a\xf7\xe8\xf7\x4e\x15\x93\x96\x91\x98\x93\x1a\x9a\x80\x96"
+"\x7b\x7d\x80\x84\x79\x7e\x1e\xfb\xd5\xfc\x47\x05\x83\x7f\x86\x7f\x84\x1a\x7b\x96\x80\x9b\x98\x97\x93\x9c\x98\x1e\x0e\xf8\xc2\xf8"
+"\x91\x15\x92\x96\x91\x98\x93\x1a\x9a\x80\x96\x7b\x7d\x81\x9a\x1d\x82\x7e\x86\x81\x50\x0a\x96\x93\x9c\x98\x1e\x75\xf8\x2f\x9c\x0a"
+"\xf7\xee\xfb\xd9\x15\xad\xa7\x9e\xb0\xb0\x1a\xc0\x64\xaf\x53\xf7\x07\x0a\x61\x61\x1a\x58\xb2\x6a\xc8\xdc\xcb\xc5\xd4\xa3\x82\xa2"
+"\x7b\x9b\x1e\x54\xf7\x12\x15\xa3\x9b\x7d\x76\x6a\x71\x71\x6a\x8a\x0a\xac\x1f\x6b\xfb\x33\x15\xa4\x9d\x79\x71\x6c\x71\x76\x67\x6f"
+"\x79\x98\x9f\xaa\xac\xab\xab\x1f\x0e\xf8\xc2\xf8\x91\x15\x92\x95\x91\x99\x93\x1a\x9a\x80\x96\x7c\x7d\x80\x76\x0a\x50\x0a\x97\x93"
+"\x9c\x98\x1e\xf7\xed\xf7\x67\x1d\x53\x41\x48\x4d\x46\x74\x92\x78\x9a\x79\x1e\x65\x70\x75\x63\x60\x7b\x0a\xa3\x7b\x9a\xb1\x0a\xfb"
+"\xab\xf8\x47\x15\xeb\x06\xaa\x9e\x9a\xa3\x9e\x80\x92\x71\x1f\xfb\x37\x06\x69\xfb\x3c\x8a\x81\x05\x7d\x95\x80\x98\x91\x8e\x8c\x8f"
+"\x93\x1e\x97\xa5\xa2\x92\x9d\x1b\xa6\x9c\x79\x6e\x78\x85\x77\x82\x7d\x1f\x75\x7e\x74\x82\x63\x1b\x6a\x7c\x8f\x99\x7f\x1f\x92\x84"
+"\x88\x8d\x83\x1b\x78\x79\x78\x77\x6c\xb8\x75\xc7\xca\xb3\x9c\xb1\xa9\x1f\xa2\xa9\x98\xb2\xb0\x1a\xc7\x67\xb2\x54\x7c\x7f\x89\x85"
+"\x73\x1e\x0e\xf7\xec\xf8\xc4\x15\xfb\x1f\xfb\x8f\x05\x85\x80\x88\x82\x84\x1a\x7d\x98\x80\x9a\x9d\x95\x93\xa2\x98\x1e\xf7\x2b\xf7"
+"\xa7\x97\xc9\x05\xfb\x9f\x06\x80\x54\x05\x8a\x83\x8a\x87\x87\x1a\x7d\x97\x80\x9a\x9f\x98\x95\xa0\x92\x1e\xf7\xeb\x58\x15\x92\x95"
+"\x91\x99\x93\x1a\x9a\x80\x96\x7b\x7e\x80\x76\x0a\x50\x0a\x97\x93\x9c\x97\x1e\xf7\xee\xf7\x67\x1d\x52\x42\x48\x4d\x46\x74\x92\x78"
+"\x9a\x79\x1e\x66\x71\x74\x62\x60\x7b\x0a\xa2\x7b\x9b\xb1\x0a\x0e\xb2\x1d\xf7\x95\xf7\xc7\x15\xa5\x9d\x91\x93\x6e\x0a\x74\x7a\x82"
+"\x7f\x7c\x1a\x78\x99\x7e\x9f\x94\x9a\x91\x95\x99\x1e\x0e\x22\x1d\x25\xf8\x0e\x46\x1d\x93\x0a\xf8\x28\xf7\x2b\x15\x93\x5c\xdb\x0a"
+"\x78\x9f\x72\x8a\x1f\x81\x8a\x05\x89\x06\x87\x06\x2e\xf8\x60\x05\xfb\x48\x97\x1d\x9f\x06\xfb\x7a\xfb\xf8\x73\x8a\x80\x8a\x80\x86"
+"\x19\x76\x80\x7c\x74\x76\x1a\x6d\xe5\x0a\xaa\xba\x05\xf7\x66\xf2\x15\xfb\x24\x06\xf7\x01\xf7\x3c\x05\xfb\x60\xea\x15\x8d\x95\x8b"
+"\x8b\x8f\x1a\xa1\x81\x96\x79\x79\x7f\x7e\x73\x85\x1e\x6a\xfb\x2b\x05\x89\x84\x8b\x88\x86\x1a\x77\xf7\x20\x0a\x90\x1e\x0e\x22\x1d"
+"\x2c\xf7\xd9\x47\x0a\xf8\x76\xf8\xc8\x15\xfb\x70\x6b\x0a\xc3\x06\xfb\x7b\xfb\xf9\x6b\x8a\x81\x89\x7d\x7f\x19\x7b\x7e\x31\x1d\xb6"
+"\x1e\xf7\x18\xdc\x0a\x82\x85\x8c\x76\x1b\x7c\x06\xa9\xba\x05\xf7\x7d\x06\x94\x5c\x05\x79\x06\x6b\x81\x37\x0a\x79\x7a\x1a\x6d\x9d"
+"\x7f\xb5\x1e\xcf\x06\x3f\xb2\x0a\xb8\xb6\xc9\xa6\x1f\xb4\x9d\x9b\x9d\xa7\x1a\xa6\x79\x9a\x6b\x1e\x82\x06\xfb\x2d\xf7\x2a\x15\xfb"
+"\x25\x06\xf7\x03\xf7\x3d\x05\x0e\x22\x1d\xb9\xf8\x34\xe3\x1d\xc0\xf7\x22\x15\xa5\x9d\x91\x94\x9c\x1a\x9d\x7c\x99\x77\x7f\x85\x88"
+"\x7f\x79\x1e\xfb\x2b\x20\x05\x74\x7b\x82\x7f\x7b\x1a\x78\x99\x7e\xa1\x92\x9a\x92\x94\x98\x1e\x0e\xbd\x1d\x56\x0a\xf8\x97\xf8\x3f"
+"\x15\xa7\x9e\x90\x92\x6e\x0a\x73\x7a\x83\xf7\x61\x1d\x98\x1e\x0e\x56\x0a\xf7\xf7\xf8\x23\x15\x2e\xe5\x05\x94\x81\x83\x8f\x82\x1b"
+"\x74\x72\x74\x76\x81\x8f\x84\x99\x7e\x1f\xf7\x17\xfb\x11\xf7\x43\xf7\x10\x99\x95\x92\x91\x8d\x8c\x19\x91\x91\x90\x98\x94\x1a\x9b"
+"\x7c\x99\x7a\x81\x7e\x86\x83\x81\x1e\x0e\x6f\x1d\xf8\x00\xf8\x2c\x31\x0a\x6f\x1d\xf8\x04\xf8\x5f\xb9\x0a\x8c\x0a\xc6\x1d\xf4\x59"
+"\x1d\xb6\x1d\x8f\x16\xf8\xe4\x06\xfb\x96\xf8\xc7\x05\x3f\x06\xfb\x0c\xfc\x70\x15\xf7\x32\xf7\xe6\xf7\x32\xfb\xe6\x05\x0e\x24\x1d"
+"\xad\xf7\x28\x05\x8e\x9b\x8c\x91\x93\x1a\xa1\x21\x1d\xe3\xf9\x4e\x46\x1d\x24\x1d\xad\xf7\x28\x05\x8e\x9b\x8c\x91\x93\x1a\xa1\x21"
+"\x1d\xf7\x66\x59\x1d\x24\x1d\xad\xf7\x28\x05\x8e\x9b\x8c\x91\x93\x1a\xa1\x21\x1d\xf7\x73\x80\x1d\x24\x1d\xad\xf7\x28\x05\x8e\x9b"
+"\x8c\x91\x93\x1a\xa1\x21\x1d\xea\xf9\x19\x47\x0a\xf8\x40\x8f\x15\x76\x48\x6a\x6f\x4c\x89\x08\x29\x06\x6a\x83\x89\x7e\x7b\x1f\x7a"
+"\x7e\x82\x7b\x7b\x1a\x6c\x9c\x7f\xb7\x1e\xf0\x06\xc8\xcb\xa4\xb6\xb9\x1f\xa5\x9f\xa0\xb4\xa1\xd3\xf3\xf8\x5c\x18\xc4\x1d\xc6\xf7"
+"\x9c\x05\x0e\xb9\x1d\xf8\x04\x06\x40\x64\x71\xb5\x0a\xb7\xb6\xc8\xa4\x1f\x90\x8d\x92\x8e\xac\xf7\x27\x05\x8e\x9b\x8c\x91\x93\x1a"
+"\xa1\x21\x1d\x0e\xb4\x1d\xd0\xf8\x99\x15\x8d\x96\x8b\x8b\x8f\x1a\xa0\x81\x96\x79\x79\x7f\x7e\x73\x85\x1e\x6a\xfb\x2b\x05\x8a\x87"
+"\x8a\x84\x85\x1a\x79\x95\x80\x9d\x9d\x97\x98\xa4\x90\x1e\xf7\x4a\xfb\x1c\x15\xd8\x06\x8a\x89\x05\x87\x78\x8b\x8a\x83\x1a\x74\xa9"
+"\x1d\x8e\x93\x91\xa6\xa4\xf7\x00\x18\x8e\x9b\x8c\x90\x93\x1a\xa2\x78\x9c\x72\x7a\x7a\x83\x7e\x7e\x1e\x80\x80\x88\x84\x85\x6f\x8a"
+"\x87\x18\x3e\x2b\x1d\xf7\x76\x06\x81\x60\x05\x88\x7b\x8a\x86\x83\x1a\x74\x9f\x7a\xa3\x9c\xf7\x1b\x0a\xac\xf7\x28\x18\xfc\x59\x27"
+"\x1d\x95\x06\x3c\xfb\xfa\x05\x7f\x06\x6c\x80\x36\x1d\xf8\x6d\x06\xad\xf7\x28\x05\x8e\x99\x8c\x93\x92\x1a\xa2\x78\x9c\x72\x67\x75"
+"\x75\x5e\x81\x1e\x80\x5c\x05\xfb\x8b\x06\x0e\xf8\x2d\xf7\x7a\x44\x1d\x7b\x1a\x71\x97\x7e\xa8\x45\x0a\x0e\xdb\xf8\x99\x15\x8d\x93"
+"\x8b\x8d\x8f\x1a\xa1\x81\x96\x79\x79\x7f\x7e\x73\x85\x1e\x6a\xfb\x2b\x05\x8a\x86\x8a\x86\x86\x1a\x77\xf7\x20\x0a\x91\x1e\xf7\xfe"
+"\xfb\x1e\x44\x1d\x7b\x1a\x71\x97\x7e\xa8\x45\x0a\x0e\xf7\x93\xf7\xf2\x15\xdc\xb0\xc4\xb7\xce\x1b\xc1\xbd\x6d\x6b\x1f\x8a\x72\x05"
+"\x74\x9a\x7c\xa2\xab\xa0\xa1\xb7\x95\x1e\x9d\xdb\x05\x8e\x9a\x8c\x91\x93\x1a\xa2\x7b\x9b\x74\x7a\x7f\x85\x7b\x7c\x1e\xa8\x57\x72"
+"\x92\x58\x1b\xfb\x11\xfb\x0f\x2d\xfb\x1a\x5c\x1f\x6f\x06\x75\x7b\x7c\x75\x7a\x93\x84\x9d\x1f\xa2\x06\x84\x6c\x05\x72\x06\x75\x7b"
+"\x7c\x75\x7a\x93\x83\x9d\x1f\xa6\x7e\x06\xfb\x0a\xe3\x3d\xf7\x17\xdd\xd4\xa4\xb8\xc0\x1e\xa4\xa1\x97\x9e\x9f\x1a\xa3\x7a\x9d\x74"
+"\x7e\x7f\x86\x80\x7e\x1e\x6d\x71\x8b\x8b\x81\x86\x08\x7d\x72\x65\x83\x64\x1b\x3e\x5f\xb0\xcf\x88\x1f\xf7\x36\x06\xa2\x9b\x9b\xa1"
+"\x9c\x83\x92\x78\x1f\xfb\x3a\x06\x92\xaa\x05\xf7\x57\x06\xa2\x9b\x9b\xa0\x9c\x83\x92\x78\x1f\x0e\xf7\xfd\xc2\x1d\x6e\x1d\xfb\x7f"
+"\xf9\x86\x46\x1d\xb3\x1d\x23\xf9\x2f\x31\x0a\x6e\x1d\xfb\x84\xfb\x3a\x23\x1d\xb3\x1d\x27\xf9\x62\xb9\x0a\xf7\x21\xf8\x48\x15\x84"
+"\x06\x89\x06\x61\x6c\x78\x70\x75\xa0\x80\xb6\x8a\x1f\x52\xfb\x91\x05\x89\xc9\x0a\x7a\x1a\x6e\x9d\x7e\xb5\x1e\xf7\x0d\x06\xa9\x98"
+"\xf7\x25\x1d\x6e\x1b\x82\x2b\x1d\xf7\x62\x06\x6e\xfb\x13\x05\x80\x38\x1d\xf7\x0d\x06\xa8\x98\x28\x1d\x9b\x1a\x98\x86\x97\x82\x93"
+"\x1e\x92\x82\x82\x8d\x6f\x1b\x8a\x06\xc3\xf7\x91\x05\x9d\x94\x8c\x8d\x95\x1f\xa4\x90\x9e\x9e\x9e\x1a\xa0\x76\x98\x68\x1e\x88\x06"
+"\x87\x06\x90\xa5\x05\xb3\x8f\xa4\xa3\xac\xce\x0a\x6e\x9d\x7e\xb5\x1e\x95\x06\x86\x72\x05\xfb\x62\x06\x90\xa4\x05\x97\x06\xaa\x96"
+"\x2a\x0a\x9d\x9c\xce\x0a\x73\x99\x7d\xa6\x88\x1e\xf7\xb7\x21\x15\x83\x68\x05\xfb\x62\x06\x93\xae\x05\x0e\xf8\x2d\xf7\x7a\x44\x1d"
+"\x7b\x1a\x71\x97\x7e\xa8\x45\x0a\xf7\x67\xf8\x78\x31\x0a\xf7\xd1\xf8\x61\x15\xa9\x06\xaa\x97\x8e\x96\x9a\x1f\x9a\x98\x95\xf6\x0a"
+"\xfb\x3c\x42\x1d\x95\x1d\xb5\x1e\xa8\x06\x3c\xfb\xfa\x05\x6c\xeb\x0a\xb6\x1e\xf7\x3c\x20\x0a\x9c\x1a\x97\x86\x96\x81\x94\x1e\x93"
+"\x82\x82\x8c\x6f\x1b\x6e\x06\xf7\xea\xf7\xfa\x15\x31\xfc\x2a\x81\x60\x87\xa3\x1d\x68\x1b\x70\x6f\x92\x9a\x63\x1f\x90\x7e\x81\x8e"
+"\x84\x1b\x6d\x6b\x6b\x6d\x7d\x90\x81\x95\x83\x1f\x77\xa4\xd5\x78\xbf\x1b\xc5\xc7\x9f\xae\xbe\x1f\xc4\xb2\xa4\xb0\x99\xcb\xf7\x08"
+"\xf8\x9d\x18\xfb\x35\x49\x1d\x9d\x7f\xb5\x1e\x0e\xf8\x2e\x49\x0a\x9c\x9c\x1a\x9c\x81\x9b\x7c\x74\x1d\x47\xf9\x4e\x5f\x0a\x28\x0a"
+"\xe2\x80\x1d\x28\x0a\x62\xf9\x19\x47\x0a\xf8\x5c\x49\x0a\x9d\x9c\x52\x1d\x82\x85\x8c\x76\x1b\xfb\xc1\x27\x1d\xeb\x06\x3b\xfb\xfa"
+"\x05\x2a\x26\x1d\xf7\x77\x06\x40\xb2\x0a\xbb\xb9\xc8\xa4\x1f\xb4\x9c\x9b\x9c\xa7\x1a\x9c\x81\x9b\x7c\x69\x0a\x2c\x06\x0e\x58\x0a"
+"\xd9\x1d\x6a\xf9\x0d\x15\x7c\x1d\xf7\x61\x16\x69\x6c\x6e\x6b\x73\x9d\x79\xa5\xae\xaa\xa8\xac\xa3\x78\x9c\x71\x1f\x0e\xf8\x50\xf8"
+"\x60\x15\xea\xf7\x25\x0a\xfb\xbc\x97\x1d\xe8\x53\x1d\x2c\xf7\x6d\x1d\xf7\xbd\xf7\x25\x0a\x2e\x06\xfb\x6d\xf8\x31\xbb\x0a\xf8\x5c"
+"\xf8\x61\x15\xed\x06\xa9\x97\x8e\x97\x9a\x83\x1d\xfb\xc1\x49\x1d\x9d\x7f\xb5\x1e\xeb\x06\x3b\xfb\xfa\x05\x2a\x38\x1d\xf7\xc1\x6b"
+"\x1d\x9a\x97\x95\xf6\x0a\x2c\x06\xba\xf8\xcb\xcc\x1d\xf8\xb9\x94\x1d\x9a\x97\x95\x9c\x9c\x1a\x9c\x80\x51\x0a\x85\x8c\x76\x62\x0a"
+"\x81\x60\x87\xa3\x1d\x67\x1b\x6b\x6f\x93\x9f\x5e\x1f\x9f\xe4\xf7\x23\x0a\x72\x67\x75\x75\x5f\x81\x1e\x68\xfb\x32\x05\x5b\xe9\xbf"
+"\x7b\xc7\x1b\xc7\xc8\x9e\xae\xbd\x1f\xc4\xb3\xa4\xb0\x9a\xca\x08\x41\xf8\xa9\x15\xe5\x31\x05\x82\x36\x0a\xa1\x97\x8a\x8c\x79\x9c"
+"\x1f\xf7\x0e\x1d\xf7\x57\x9d\x0a\x97\x8e\x96\x9a\xd3\x1d\x9a\x8f\x96\x98\x48\x0a\x82\x85\x8b\x77\x1b\x6d\x06\x0e\x8b\x0a\xf3\xfb"
+"\x72\x23\x1d\x2f\x0a\xf7\x8d\x30\x0a\xf7\xf3\xf8\x3a\x15\xcc\xfb\xd2\xdb\x0a\x79\x9e\x71\x1f\x81\x8a\x05\x89\x06\x87\x06\x2e\xf8"
+"\x60\x05\xfb\x6c\x97\x1d\xc3\x06\xfb\x7a\xfb\xf9\x05\x72\x80\x89\x86\x80\x1f\x76\x80\x7d\x75\x75\x1a\x6e\xe5\x0a\x0e\x2f\x0a\xf8"
+"\x10\xf8\x29\x15\x8c\x8c\x8c\x8b\x8c\x8d\x8f\x64\x0a\x7c\x83\x7b\x7e\x1e\x23\xfb\x0e\x05\x7b\x7a\x86\x82\x65\x0a\x2f\x0a\xb5\xfb"
+"\x72\x23\x1d\x2f\x0a\xf7\x6d\xf7\xbf\x15\x60\x60\x64\x63\x6c\xf7\x2e\x0a\xb2\xb3\xab\x73\xa2\x69\x1f\x82\x06\x0e\x8f\x0a\x3c\x0a"
+"\xf8\x08\x30\x0a\x3c\x0a\xf7\x7c\x59\x1d\x3c\x0a\xf7\x11\xfb\x72\x23\x1d\xf7\x68\xf8\x03\x15\xf7\x3f\xfc\x03\x05\xf4\x06\xf1\xf8"
+"\x61\x05\xcb\x1d\x9a\x97\x95\xe8\x0a\x0e\xf8\x11\x5c\x0a\x2b\xf7\xda\x5f\x0a\x2e\x1d\xe2\xf7\x92\x46\x0a\x6e\x72\x88\x87\x5f\x1d"
+"\xf7\xa9\xf0\x46\x0a\x6e\x72\x88\x87\x5f\x1d\x0e\x2e\x1d\x46\xf7\xa5\x47\x0a\xf7\x35\xec\x15\x8e\x07\x8e\x07\x9a\x81\x95\x7d\x75"
+"\x81\x7c\x5e\x81\x1e\x7c\x47\x05\xf7\x58\x06\xae\xf7\x38\x7f\x8f\x83\x8d\x88\x8d\x19\x60\x9c\x76\xaf\xc4\x1a\xf2\xd3\xe4\xde\xc7"
+"\xb2\x5a\x41\x34\x5a\x44\x3d\x71\x1e\x84\x88\x68\xfb\x38\x05\xf7\x6c\x06\x99\xcd\x05\x8d\x95\x8d\x98\x94\x1a\x9f\x82\x95\x7b\x7a"
+"\x80\x81\x76\x85\x1e\x66\x06\xe4\xc4\xbd\xe6\xf4\x1a\xf7\x1a\x35\xe9\xfb\x0d\x41\x4d\x6d\x4e\x57\x1e\x5b\x52\x70\x42\x41\x1a\x38"
+"\xa9\x4e\xc8\x61\x1e\x43\xf8\x38\xbb\x0a\xf8\x11\x5c\x0a\x0e\xf8\x28\xf8\xd6\x15\x3c\x46\x67\x42\x4c\x1f\x51\x46\x6a\x31\x2c\x1a"
+"\xfb\x20\xd8\x32\xf7\x0e\xe9\xe1\xc0\xed\xca\x1e\xb2\xc9\xa0\xd5\xd8\x1a\xf7\x1f\x3c\xe4\xfb\x0d\x1e\x23\x04\xc5\xad\x5f\x3f\x44"
+"\x77\x4e\x62\x55\x1f\x57\x63\x5e\x71\x5b\x1b\x50\x6a\xb7\xdb\xce\x9f\xc8\xb4\xc0\x1f\xc0\xb4\xb6\xa5\xbc\x1b\xfb\x9e\xb6\x15\x8c"
+"\x9b\x05\x9f\x81\x96\x79\x79\x80\xf7\x18\x0a\x85\x85\x1a\x78\x95\x80\x9d\x9d\x96\x97\xa5\x91\x1e\x0e\xbb\x1d\xf7\x0b\xf7\xac\x15"
+"\xa5\x9d\x91\x93\x6e\x0a\x74\x7a\x82\x80\x7b\x1a\x78\x99\x7e\x9f\x95\x99\x91\x95\x98\x1e\x0e\xf8\x6b\xf8\xad\x15\x98\x06\xa7\x91"
+"\x8c\x94\x98\x1f\x96\x93\x92\x97\x96\x1a\xa1\x7d\x93\x66\x1e\xfb\x17\x06\x61\x74\x7c\x71\x76\x9a\x82\xaf\x1f\x95\x06\x86\x76\x3d"
+"\x82\x56\x78\x56\x65\x19\x3f\x54\x5a\x35\x3b\x1a\x20\xda\x41\xf7\x10\x82\x1e\x86\x77\x05\x80\x06\x7f\x06\x6e\x73\x78\x75\x76\x9b"
+"\x82\xae\x1f\xf7\x17\x06\xa7\x91\x8c\x94\x97\x1f\x97\x93\x92\x96\x97\x1a\xa1\x7d\x93\x66\x1e\x7f\x06\x90\x9f\x05\xf7\x3d\x92\xf7"
+"\x23\xf7\x19\xf7\x2a\x1a\xce\x61\xcd\x4e\xa8\x1e\x6d\x99\x6d\x92\x60\x8f\x08\xfb\x57\xfc\x1b\x15\x47\x91\x5f\xb9\xcc\x1a\xe9\xda"
+"\xdd\xef\x96\x1e\xf7\x01\x16\xd5\x84\xb5\x61\x47\x1a\x2d\x38\x37\x26\x83\x1e\x0e\xc8\x1d\xf7\x94\xf7\x8b\x15\x5e\x91\x76\x9f\xb1"
+"\x1a\x9a\x8f\xa8\x93\xac\x1e\xb2\xf7\x44\x05\x2e\x06\x57\x6c\x74\x64\x71\x99\x7e\xaa\x89\x1f\x7b\x45\x05\x84\x6b\x86\x69\x77\x1a"
+"\x39\xc1\x53\xec\x74\x1e\x82\x63\x05\x5f\x89\x6e\x72\x68\x1a\x6e\x9e\x7e\xb5\x1e\xe3\x06\xbe\xaa\xa2\xb0\xa7\x7c\x98\x68\x8d\x1f"
+"\x94\xb3\x05\xc8\xbf\x9b\xa8\xb2\x1f\xc7\xbe\x91\x97\xaa\xf7\x1d\x9b\xd4\x18\xb4\x8e\xa6\xa3\xad\x1a\xa7\x76\x99\x62\x1e\x30\x06"
+"\x64\xfb\x41\x71\x21\x76\x70\x45\x80\x19\xba\xf7\x69\x05\xb9\x8e\xa5\xa2\xb1\x1a\xaa\x79\x94\x50\x1e\x54\x06\x64\x7a\x88\x84\x7e"
+"\x1f\x7a\x80\x7f\x76\x77\x1a\x70\x9a\x7f\xae\x89\x1e\x0e\x3b\x0a\xf7\x7c\xf8\x36\x77\x1d\x3b\x0a\xd3\xf8\x1a\x15\x2e\xe5\x05\x94"
+"\x81\x83\x8f\x82\x1b\x74\x72\x74\x76\x81\x8f\x84\x99\x7e\x1f\xf7\x17\xfb\x11\xf7\x43\xf7\x10\x99\x95\x92\x91\x8d\x8c\x19\x91\x91"
+"\x90\x98\x94\x1a\x9b\x7c\x99\x7a\x81\x7e\x86\x83\x81\x1e\x0e\x3b\x0a\x7c\xfc\x46\x23\x1d\x99\x0a\x6d\x1d\x5f\xf7\xc8\x77\x1d\xf7"
+"\xe7\x7f\x15\xf7\x21\x96\xef\xe0\xf7\x02\x1a\xba\x6f\xb5\x5d\x9f\x1e\x71\x97\x6c\x93\x55\x95\x3d\x9a\x83\xae\x1d\xb5\xc6\xb0\xcf"
+"\xc7\xb3\x73\x67\x6b\x8b\x8b\x92\x82\x1e\x82\x92\x99\x85\x9a\x1b\x9c\x9c\x93\x98\x98\x1f\x96\x95\x8f\x94\x91\xa5\x9d\xe0\x18\x90"
+"\x9e\x8b\x8d\x93\x1a\xa2\x79\x9b\x72\x76\xb4\x0a\x2d\xfb\x06\x64\xa2\x63\xae\x75\x1f\xa7\x79\xa8\x83\xcd\x7f\xcd\x7f\x98\x88\x9e"
+"\x80\x08\x9a\x83\x94\x7d\x7d\x1a\x60\x49\x67\x3a\x4c\x54\xa6\xaa\x88\x1e\x89\xa6\x8b\x8b\x85\x93\x85\x1d\xa5\x7b\xb7\x7d\xaa\x87"
+"\x76\x2e\x18\x8c\x9c\x95\x8c\x8d\x1b\xa6\x9a\x82\x7b\x7e\x80\x83\x78\x7a\x74\x92\x95\x7b\x1f\x96\x79\x88\x8c\x7f\x1b\x73\xf7\x47"
+"\x1d\xd4\xbf\xba\xcd\xb1\x79\xa1\x64\x94\x1f\x0e\xb5\x1d\xfb\x2f\xf7\xb5\x15\xe4\x31\x05\x82\x36\x0a\xa1\x97\x8a\x8c\x7a\xf7\x17"
+"\x0a\x78\x87\x1d\x6d\x1d\xfb\xb7\xfc\xb4\x23\x1d\xf9\x2f\xf8\xc8\x15\xfc\x4b\x06\x78\x35\xf7\x12\xfb\x51\xfb\x69\xfb\x5a\x77\x30"
+"\x05\xf8\x51\x06\xae\xf7\x32\x05\x8d\x92\x8c\x93\x92\x1a\xa0\x7c\x98\x73\x6a\x79\x7b\x65\x80\x1e\x7b\x52\x05\xfb\x68\x06\xf7\x61"
+"\xf7\x4e\xfb\x08\xf7\x44\x05\xf7\x57\x06\x81\x47\x05\x8a\x84\x8b\x8b\x80\x1a\x73\x99\x7e\xa5\xac\x9e\x9d\xaf\x94\x1e\x0e\x97\x0a"
+"\xf8\x41\xf7\xeb\x15\xa5\xf7\x0a\x05\xf0\x06\x7f\x57\xe6\x0a\x96\x95\x8e\x94\x91\xa6\xae\xf7\x30\x18\xfc\xa0\x06\x69\xfb\x2f\x05"
+"\x86\x78\x8b\x8a\x83\x1a\x74\x9e\x7a\xa4\x9c\x9d\x93\x98\x98\x1e\x95\x95\x90\x95\x90\xa5\x97\xc0\x18\xee\x06\x71\xfb\x0a\x05\x56"
+"\x06\x6b\x83\x89\x7e\x7a\x1f\x7b\xf7\x4e\x1d\x91\x89\xa8\x1b\xbf\x06\x6c\xfb\x1d\x82\x1d\xf7\x7b\x06\xa7\x9b\x8f\x96\x98\x92\x1d"
+"\x4f\x06\xa9\xf7\x1d\x05\xbc\x06\xc0\xa7\xa1\xb5\xa6\x79\x97\x62\x1f\x0e\x57\x0a\xcd\x59\x1d\xf7\xf0\x16\xce\x06\xa7\x9a\x8f\x96"
+"\x99\x92\x1d\x4e\x06\xdb\xf7\xfa\x05\xf0\x06\x78\x37\x05\x88\x7f\x8a\x81\x85\x1a\x74\xf7\x2a\x1d\x8f\x93\x91\xa7\xb5\xf7\x50\x18"
+"\xfc\xa0\x66\x1d\x83\x84\x1a\x74\xcf\x0a\xa6\x9e\xe0\x18\xee\x06\x3b\xfb\xfa\x82\x1d\xdf\x06\x75\x27\x05\x8c\x9c\x94\x8c\x8e\x1b"
+"\xa6\x9a\x82\x7b\x7e\x80\x83\x78\x7a\x74\x92\x95\x7b\x1f\x96\x79\x88\x8c\x7f\x1b\x73\xf7\x47\x1d\xd4\xbf\xba\xcd\xb1\x79\xa0\x64"
+"\x95\x1f\x0e\xf7\xc6\xf7\xcb\x15\x8e\x97\x8c\x98\x05\x9b\x7f\x95\x78\x74\x7a\x7d\x74\x86\x1e\x75\x27\x05\x8a\x86\x8a\x86\x88\xf7"
+"\x1a\x0a\x8f\x9b\x05\xf7\x12\x06\x88\x7d\x05\x8a\x87\x8b\x87\x86\xf7\x1a\x0a\xa1\xef\x05\x8c\x8e\x8b\x8f\x91\x1a\x9b\x7f\x95\x78"
+"\x74\x7b\x7d\x74\x86\x1e\x87\x7d\x05\x86\xf7\x9f\x15\x37\x2d\x60\x46\x46\x1f\x46\x47\x63\x2d\x30\x1a\xfb\x14\xeb\x29\xf7\x13\xf7"
+"\x4e\xf7\x41\xf7\x44\xf7\x4f\xf7\x18\x2b\xeb\xfb\x16\x1e\x76\x24\x15\xda\xc4\x4e\x37\xfb\x0d\xfb\x02\xfb\x0b\xfb\x03\x39\x52\xc7"
+"\xe1\xf7\x0e\xf7\x02\xf7\x09\xf7\x06\x1f\x0e\xf8\xe0\xe1\x1d\x48\x5d\x46\xe4\x0a\x96\x8e\x96\x9a\xe0\x1d\x29\xdc\x44\x93\x1d\xfb"
+"\xa0\xf8\xee\x5f\x0a\x23\x0a\x36\xf8\xa6\x46\x0a\x6f\x73\x87\x86\x5f\x1d\xf7\xa9\xf0\x46\x0a\x6f\x73\x87\x86\x5f\x1d\x0e\x23\x0a"
+"\xfb\x85\xf8\xb9\x15\x64\x71\x77\x6e\x72\x98\x81\xae\x1f\xf7\x89\x06\xb1\xa7\x4b\x0a\x95\x0a\x2c\xdc\x41\xf2\x98\x96\x8b\x8c\x9a"
+"\x1e\x53\x6b\x74\x6a\x5a\x1a\x5e\xc6\x0a\x82\x87\x8e\x93\xa5\x9d\xa0\xe1\xd4\x1f\xe1\xd2\xa4\xaf\xa1\xd9\x08\x0e\xf7\xfc\xf7\x7f"
+"\x29\x0a\x76\x1b\x2f\x34\x1d\x0e\xf7\xfc\xf7\x80\x15\xf7\x65\xf7\x75\x05\xa0\x94\x8d\x8f\x96\x1f\xa2\x95\x9a\xa1\xa2\x1a\xa8\x78"
+"\x98\x61\x1e\x2f\x06\x72\x7c\x88\x84\x7f\x1f\x79\x80\x7f\x77\x77\x1a\x7a\x93\x7f\x9e\x81\x1e\xfb\x03\xfb\x0c\x51\xf7\x0b\x05\xac"
+"\x99\x9a\x9e\xa5\x1a\xa8\x79\x98\x60\x1e\x32\x06\x58\x8c\x6c\x73\x65\x1a\x6f\x9c\x7e\xb1\x8a\x1e\xf7\x02\xfb\x74\x6d\xfb\x19\x05"
+"\x4d\x06\x58\x6c\x40\x1d\xf7\x7a\x06\xbf\xaa\xa2\xb2\xa8\x78\x98\x60\x1f\x50\x06\x5e\xf9\x0d\x15\x7c\x1d\xf7\x61\x16\x7c\x1d\x0e"
+"\xc4\xf8\x99\xbf\x0a\xf7\xe5\xfb\x19\xd0\x0a\x82\x85\x8c\x76\x1b\x2f\x06\x6a\x81\x37\x0a\x7a\x7b\x1a\x77\x93\x7f\x9f\x83\x1e\xfb"
+"\x07\xfb\x0e\x4d\xf7\x0d\x05\xab\x97\x9c\xa0\xa6\x1a\x9c\x80\x9b\x7d\x8f\x1e\x8e\x82\x85\x8c\x76\x1b\x32\x06\x6a\x81\x4e\x1d\x6e"
+"\x9c\x7e\xb2\x1e\xf7\x05\xfb\x74\x6d\xfb\x1a\x05\x4d\x25\x0a\xf7\x7b\x06\xa7\x9a\x3d\x1d\x9c\x52\x1d\x82\x20\x1d\x4e\x06\x0e\x23"
+"\x0a\x31\xf9\x14\xe3\x1d\x0e\xf9\x0f\xf8\x61\x15\xb7\x8c\xa8\xa4\xaf\x1a\x97\x86\x96\x82\x93\x1e\x93\x81\x82\x8d\x6f\x1b\xfb\x15"
+"\x06\x6a\x82\x3a\x1d\xa8\x06\x50\xfb\xa1\x05\x53\x7e\x49\x5d\x45\x1b\x4f\x5f\xae\xba\x90\x8c\x92\xf7\x27\x0a\x97\x8e\x96\x99\x1f"
+"\x9b\x98\x94\x9c\x9d\x1a\x97\x86\x96\x82\x93\x1e\x93\x81\x84\x8d\x6e\x1b\xfb\x16\x25\x1d\x70\x9b\x7d\xad\x8a\x1e\x51\xfb\x98\x05"
+"\x88\x7a\x89\x7b\x7b\x1a\x2c\xdc\x45\x93\x1d\xfb\x18\xf8\x6b\xcc\x1d\x55\x0a\xf8\x16\xf9\x71\x15\xa5\x9d\x91\x93\x9d\x1a\x9d\x7c"
+"\x98\x77\x80\x81\x87\x80\x7c\x1e\xfb\x2b\x21\x05\x73\x7a\x83\x7f\x52\x0a\x99\x91\x95\x99\x1e\x0e\xf7\xca\x6a\x0a\xa9\x1a\x9d\xc7"
+"\x1d\xf7\x8c\xf9\x5e\x15\xe4\x31\x05\x82\x95\x93\x87\x96\x1b\xa3\xa2\xa1\xa1\x97\x8a\x8c\x79\xf7\x17\x0a\x77\x86\x85\x4d\x1d\x95"
+"\x8f\x94\x99\x1e\x0e\x55\x0a\xf7\x0f\xf9\x91\xe3\x0a\xf7\x64\x16\x65\x64\x66\x66\x70\xa3\x73\xa7\xb4\xb0\xae\xb2\xa8\x75\xa1\x6c"
+"\x1f\x0e\x55\x0a\xf7\x00\xf9\xae\x15\x97\x7e\x87\x8d\x7f\x1b\x74\x75\x77\x76\x80\x91\x81\x98\x7f\x1f\xf7\x0c\xfb\x00\x05\x82\x95"
+"\x97\x85\x92\x1b\xa3\xa0\x9f\xa2\x97\x87\x90\x7c\x9a\x1f\x0e\xf8\x86\xf8\x60\x15\x81\x5f\x05\x87\x7a\x8a\x84\x86\x1a\x75\x9e\x7a"
+"\xa5\xae\xa3\xa2\xb6\x94\x1e\xad\xf7\x2a\x05\xfc\x87\x06\x6a\xfb\x28\x05\x89\x7f\x89\x80\x86\x1a\x74\x9e\x7a\xa5\xad\xa3\xa2\xb6"
+"\x94\x1e\x95\xb9\x05\xf7\x1c\xfb\x76\x15\x6b\x8a\x97\x7d\xa5\x1b\xae\x9e\xa0\xbc\x96\x1f\x95\xb9\x05\x8e\x97\x8d\x98\x95\x1a\xa3"
+"\x7d\x98\x73\x70\x79\x7d\x6b\x7e\x1e\x33\x8d\x06\x8d\x07\x8e\x07\xa4\x7e\x99\x73\x69\x76\x74\x5c\x81\x1e\x81\x5d\x05\x86\x77\x8a"
+"\x83\x83\x1a\x75\x99\x7d\xa4\xa6\x9d\x99\xab\x98\x1e\xfb\x11\xfb\x16\x15\x94\xb7\x05\x8e\x99\x8d\x95\x90\x1a\xa1\x78\x9c\x71\x68"
+"\x74\x74\x60\x81\x1e\x6a\xfb\x2a\x05\xf8\x87\x06\xab\xf7\x28\x05\x8f\x9a\x8c\x94\x90\x1a\xa1\x78\x9c\x71\x68\x74\x74\x60\x81\x1e"
+"\x81\x5d\x05\x0e\xf7\xfc\xf7\x7f\x29\x0a\x76\x1b\x2f\x34\x1d\xde\xf8\xf7\x31\x0a\xf8\x2a\xf7\x7f\x29\x0a\x77\x1b\x2e\x34\x1d\x51"
+"\xe9\x1d\xf7\x7c\x71\x0a\xb0\xa1\xa0\xb8\x95\x1e\x99\xcb\x05\x43\x0a\xf7\x26\x30\x0a\xf7\x7c\x71\x0a\xb0\xa1\xa0\xb8\x95\x1e\x99"
+"\xcb\x05\x43\x0a\x94\x80\x1d\xf7\x4e\xf2\x15\xf8\x0f\xf7\xff\xa1\xed\x05\xfc\x34\x06\x66\xfb\x39\x05\x89\x81\x89\x7f\x85\x1a\x75"
+"\x9e\x79\xa3\x9d\x9d\x93\x98\x98\x1e\x95\x95\x8f\x94\x91\xa5\x99\xcb\x18\x43\x0a\x0e\x2d\x1d\xfb\x0a\xf8\x7b\x2b\x0a\xb1\x1d\xad"
+"\xf7\xea\x2f\x1d\xaa\x0a\x93\x0a\xf8\xf3\xf8\xc8\x15\xfc\x7a\x06\x66\x6b\x6f\x69\x70\xa0\x7c\xb4\x1f\xaf\x53\x1d\x80\x34\x0a\xf7"
+"\xb4\x06\xf7\x22\xeb\xd5\xf7\x00\xc1\x77\xb1\x61\xa4\x1f\xa2\x63\x56\x97\x50\x1b\xfb\x0e\x06\xa9\xf7\x12\x05\xf7\x6e\x06\x7e\x5a"
+"\x05\x89\x82\x89\x7f\x83\x1a\x74\x9e\x7a\xa5\xad\xa1\xa1\xb7\x96\x1e\xfc\x1c\xfb\xc4\x15\xa7\xf7\x12\x05\xf7\x12\x06\xdb\xb4\x76"
+"\x60\x62\x66\x76\x40\x1f\x0e\xbd\x1d\xf7\xcf\xc2\x1d\xf8\x34\x16\x86\x67\x05\x89\x7a\x8a\x7e\x86\x1a\x6d\xa1\x76\xaa\xab\x96\x99"
+"\xc3\x98\x1e\x99\xc9\x05\x91\xa4\x8d\x96\x93\x1a\xab\x75\x9c\x60\x8c\x1e\xdb\xf7\xf8\x05\xc3\x8d\x77\x0a\xfb\xd8\x27\x0a\x66\xa2"
+"\x7b\xc3\x1f\x63\xfb\x46\x70\xfb\x0d\x5d\x56\x3a\x87\x19\x73\x06\x6b\xfb\x1b\x05\x87\x77\x88\x7b\x84\x1a\x70\xa2\x76\xa9\xa8\x99"
+"\x9a\xbe\x99\x1e\x9b\xc3\x05\xf7\x84\xf8\x60\x15\xf7\x10\x53\x1d\xfb\x30\x06\xa5\xa6\xa6\xcd\x9d\xd7\x08\x0e\xb4\x1d\xf7\x64\xf7"
+"\x7b\x15\xd7\x06\x88\x7d\x8a\x81\x85\x1a\x74\x9e\x7a\xa4\xaf\xa1\xa0\xb9\x95\x1e\xa3\xf7\x00\xf7\x23\x0a\x73\x75\x76\x80\x7b\x7f"
+"\x1e\x86\x83\x88\x81\x85\x73\x08\x3f\x06\xa7\xf7\x11\x05\xf7\x6e\x06\x82\x60\x05\x87\x7e\x8a\x81\x85\x1a\x75\x9e\x7a\xa5\xae\xa2"
+"\xa1\xb7\x94\x1e\xad\xf7\x29\x05\xfc\x53\x06\x57\x6d\x40\x1d\x94\x53\x1d\x80\xea\x0a\xf8\x67\x06\xac\xf7\x29\x05\x8d\x97\x8d\x96"
+"\x91\x1a\xa1\x77\x9c\x72\x69\x74\x74\x60\x81\x1e\x80\x5c\x05\xfb\x84\x06\xf7\x1a\xef\x0a\x79\x9c\x70\x1f\xf7\x61\x16\xf7\x0d\x0a"
+"\x79\x9c\x70\x1f\x0e\xf7\x6d\xf3\x15\x61\x8a\x75\x79\x69\x1a\x66\xa2\x7d\xca\x1e\xbb\xa7\x1d\x7c\x9a\x69\x93\x1f\xad\xf7\x2d\x93"
+"\x80\x92\x7d\x8e\x7d\x19\xad\xfb\x25\x8c\x84\x8b\x8b\x8e\x80\x19\x87\x8c\x88\x8c\x89\x1e\x69\x93\x9e\x80\xbc\x1b\xb7\xa3\x9e\xad"
+"\xa7\x7a\x9b\x69\x91\x1f\x6b\xf7\x1e\x85\xa3\x80\x9f\x78\x9c\x19\x99\x92\xbf\xca\xb1\xc2\x08\x71\x91\x99\x80\xa6\x1b\xa4\x9a\x9a"
+"\xa9\x92\x1f\x95\xb5\x05\x8e\x98\x8d\x9c\x96\x1a\xa8\x77\x9c\x68\x51\x69\x6c\xfb\x3d\xfb\x13\x1e\xa3\xeb\x05\x8f\x06\xae\xa2\xa1"
+"\xab\xaf\x73\x99\x4c\x1f\x5f\x06\x4f\x74\x7d\x66\x71\x99\x7b\xa9\x82\x1f\x78\x29\x64\xf7\x08\x82\xa2\xf7\x2b\x1d\x87\x7b\x88\x7b"
+"\x82\x1a\x72\xa1\x77\xa7\xa3\x97\x96\xaa\x98\x1e\x94\x5c\x9a\x66\xa3\x6a\x6e\x7d\x75\x78\x79\x71\x21\xfb\x2c\x18\x60\x89\x76\x7b"
+"\x69\x1a\x68\xa2\x7a\xbc\xb4\x92\x90\xb9\xa9\x1e\xef\xf7\x2b\x97\x9d\x94\x95\xa5\xa3\x19\x0e\xf7\xad\xf7\xeb\x15\x59\x73\x7b\x68"
+"\x77\x95\x7a\x9d\x82\x1f\x86\x95\x96\x89\xb1\x1b\xe7\xb0\x7c\x67\x74\x7d\x72\x73\x79\x1f\x76\x6f\x63\x81\x54\x1b\x45\x57\x9a\xb1"
+"\x51\x1f\xa0\x6c\x7b\x92\x7d\x1b\x6f\x70\x70\x70\x70\xa3\x71\xbe\x6d\x1f\x68\xc7\xc9\x7c\xdc\x1b\xf1\xce\x9e\xb7\xbf\x1f\xb8\xb2"
+"\xa5\xbe\xbf\x1a\xb7\x7b\xad\x6a\xa6\x1e\xc4\xb1\xa5\xb6\xc4\x1a\xe2\x41\xc5\xfb\x03\x53\x62\x80\x73\x67\x1e\x8c\x95\x8b\x8d\x8f"
+"\x1a\xa6\x75\xa0\x6c\x6e\x7b\x7a\x63\x85\x1e\x82\x57\x7f\x65\x75\x5f\x08\x7d\x6e\x86\x7e\xf7\x0a\x1d\x0e\x71\x1d\x0e\x71\x1d\xec"
+"\xf8\xc4\x15\x72\x79\x77\x6f\x52\xc5\x60\xd6\xbd\xbe\x9c\xa9\xaf\xf7\x44\x1d\x82\x1e\x68\x7a\x64\x76\x5b\x1b\x5f\x6b\x9f\xa6\x8a"
+"\x1f\xa6\x8a\x84\x94\x78\x1b\x0e\xb8\x1d\x0e\xf8\xbf\xf8\x60\x15\xc3\x8d\xa0\x99\xb0\x1a\xb0\x74\x99\x4b\x1e\xfb\xd7\x27\x0a\x68"
+"\xa4\x79\xbb\x1f\x90\x06\x53\xfb\x90\x79\x40\x72\x65\x67\x86\x19\x90\x9f\x8d\x94\x93\x1a\xa9\x77\x9b\x67\x69\x7d\x7b\x58\x7f\x1e"
+"\x7d\x51\x05\x89\x81\x8a\x85\x87\x1a\x75\xc1\x76\xc5\xf0\xcf\xd4\xf7\x21\xab\x1e\xc5\xf7\x99\x05\xf7\x0f\x06\x3c\xfb\xf9\x05\x54"
+"\x76\x7c\x67\x64\xa2\x7e\xcb\x1f\xd8\x9c\x1d\x9c\x60\x8c\x1f\x0e\x8f\x0a\xf8\x2d\xf7\x7a\x44\x1d\x7b\x1a\x71\x97\x7e\xa8\x45\x0a"
+"\x0e\xf8\x11\x5c\x0a\x0e\xc8\x1d\x99\x0a\x6f\x1d\x0e\x97\x0a\xc5\x1d\x0e\xf8\x30\xf8\x69\x15\xa2\x06\xba\xa7\xa1\xaf\xa6\x7b\x95"
+"\x60\x1f\xfb\x25\x06\x59\x6f\x78\x67\x70\x9d\x7e\xb0\x1f\x9f\x06\x85\x70\x05\x68\x06\x3f\x53\x79\x68\x64\x1f\x67\x6a\x76\x5b\x58"
+"\x1a\x35\xc4\x5c\xf2\x1e\xab\x06\x85\x6e\x05\x74\x06\x5e\x6d\x75\x69\x71\x9d\x7e\xb1\x1f\xf7\x2d\x06\xb8\xaa\xa2\xac\xa5\x79\x98"
+"\x67\x1f\x73\x06\x91\xa8\x05\xa2\x06\xdb\xc6\x9e\xb2\xb3\x1f\xb1\xaf\xa0\xbe\xc0\x1a\xdc\x57\xb2\x22\x1e\x6a\x06\xfb\x15\x28\x15"
+"\x6e\xfb\x0d\x05\x79\x06\x50\x6e\x9d\xaf\xb5\xb3\xa4\xcf\x1f\xf7\x1b\x16\xa2\x06\xc1\xa5\x7d\x6e\x75\x7c\x72\x74\x7d\x1f\x7f\x79"
+"\x72\x86\x5f\x1b\x84\x06\x0e\x8c\x0a\xf8\x40\x16\x82\x5a\x05\x88\x80\x8a\x7e\x83\x1a\x71\x9c\x7c\xa8\xad\xa0\xa0\xb9\x95\x1e\xb1"
+"\xf7\x33\x05\x29\x06\xda\xf7\xf9\xa0\x0a\x0e\xf7\xfc\xf3\x15\x51\x06\x4c\x74\x7d\x65\x65\xa1\x7d\xcb\x1f\xf7\x28\x9c\x1d\x9d\x5e"
+"\x8c\x1f\xda\xf7\xf9\x05\xc5\x8c\x7d\x1d\x05\x60\x44\x5d\x7a\x61\x1b\x70\x7e\x94\x9d\x96\x8e\xa0\x8e\x98\x1f\xa5\xf7\x09\x05\xcc"
+"\xa0\x98\xb1\xb2\x74\x98\x4b\x1f\xc5\x0a\x74\x88\x74\x7c\x1a\x44\xc5\x59\xdd\xbb\xb7\x96\xa4\xbc\x1e\x0e\xf8\x87\xf3\x15\xd8\xf7"
+"\xf8\x05\xa2\x06\xb1\xaa\xa8\xac\xa7\x76\x99\x63\x1f\xfb\x0a\x06\x28\xfc\x60\x05\x40\x06\xda\xf7\xf9\xf7\x12\x1d\x3c\xfb\xf9\x05"
+"\x3f\x06\xee\xf8\x60\x05\xfb\x06\x06\x58\x6c\x74\x65\x6c\x99\x81\xbb\x8a\x1f\x42\xfb\xf9\x2d\x0a\xf8\x78\x7d\x0a\x0e\xf7\x63\xf2"
+"\x15\x3f\x06\xee\xf8\x61\x05\xfb\x06\x06\x58\x6c\x74\x65\x6c\x99\x81\xbb\x89\x1f\x42\xfb\xf8\x2d\x0a\xf8\x5a\x06\x7e\x56\x05\x89"
+"\x81\x8a\x81\x82\x1a\x71\x9c\x7d\xaa\xb4\xa2\xa7\xc6\x93\x1e\x9e\xf7\x1e\x05\x29\x06\xd9\xf7\xf9\x05\xa2\x06\xb0\xab\xa8\xac\xa6"
+"\x76\x9a\x63\x1f\xfb\x09\x06\x27\xfc\x61\x05\x40\x06\xda\xf7\xfa\xf7\x12\x1d\x0e\xf7\x15\xf8\x60\x15\xf7\x11\x06\x3c\xfb\xf8\x05"
+"\x80\x06\x59\x6b\x74\x66\x6d\x9f\x7d\xb4\x1f\xf7\x74\x06\xcc\xcb\x9d\xa9\xb5\x1f\xb3\xa8\xa5\xc2\xc0\x1a\xee\x43\xbd\xfb\x22\x1e"
+"\x52\x06\xa8\xf7\x12\x05\xbd\x06\xb1\xaa\xa7\xad\xa7\x76\x99\x62\x1f\xfc\x0b\x06\x61\xfb\x4e\x05\x88\x7d\x8a\x82\x84\x70\x0a\xf7"
+"\x42\xfb\xa3\x15\xa7\xf7\x12\x05\xc8\x06\xe2\xad\x7a\x5f\x60\x66\x75\x40\x1f\x0e\xf7\x65\xf8\x60\x15\xbb\x06\xaf\xab\xa8\xac\xa7"
+"\x76\x99\x63\x1f\xfb\x2b\xf7\x13\x0a\x3b\xfb\xf8\x05\x5d\x89\x73\x78\x66\x1a\x6c\x9d\x7c\xb1\x1e\xf7\x23\x06\xf7\x1b\xe3\xd4\xf7"
+"\x04\xea\x47\xc1\xfb\x0c\x1f\x85\x06\x5a\xfb\x7a\x15\xa7\xf7\x13\x05\x95\x06\xce\xa6\x7a\x60\x5e\x6b\x75\x4b\x1f\xf7\x81\x8a\x15"
+"\x64\x88\x74\x73\x68\x1a\x70\xa0\x7d\xb2\x1e\xe4\x06\xbf\xaa\xa2\xb1\xaa\x7c\x96\x5c\x8c\x1f\xda\xf7\xf9\x05\xb0\x91\x9e\x9f\xab"
+"\x1a\xaa\x78\x99\x61\x1e\x30\x06\x56\x6e\x75\x65\x6d\x9f\x7d\xb4\x1f\x94\x06\x0e\xf7\xa0\xf8\x60\x15\xbc\x06\xb0\xab\xa8\xac\xa7"
+"\x76\x99\x63\x1f\xfb\x2d\x34\x0a\x94\x53\x1d\x80\x34\x0a\xf7\xaa\x06\xf7\x2d\xe8\xd2\xf7\x09\xaf\x7f\xab\x75\xa3\x1f\xac\x6c\x43"
+"\xa0\x36\x1b\xfb\x04\x06\x5a\xfb\x7a\x15\xa7\xf7\x12\x05\xf7\x07\x06\xeb\xad\x7b\x5f\x5c\x68\x78\x36\x1f\x0e\xf7\xbc\xf7\xdc\x15"
+"\x63\x75\x79\x69\x69\xa0\x79\xb4\x1f\xf7\x1c\x06\x2f\x60\x50\x61\x32\x1b\x5a\x5e\x9b\xad\x59\x1f\x9b\x73\x7d\x91\x7c\x1b\x71\x71"
+"\x72\x72\x70\xa5\x6f\xbc\x6f\x1f\x6d\xc2\xbe\x7e\xca\x1b\xf0\xd9\xad\xd4\xca\x1f\xc5\xce\xaa\xe1\xe7\x1a\xf7\x25\x37\xea\xfb\x16"
+"\x5c\x69\x82\x73\x63\x1e\x8c\x90\x8b\x8d\x8e\x1a\xab\x78\x9d\x69\x6a\x7d\x7a\x5c\x85\x1e\x87\x62\x81\x68\x79\x63\x08\x7d\x6d\x87"
+"\x7e\x80\x1a\x75\xa2\x76\xa4\xa1\x9b\x98\xaa\x9b\x1e\xd2\xb2\xba\xaa\xd1\x1b\xb2\xac\x7e\x74\x9f\x1f\x9d\x77\x92\x6d\x8e\x4f\x08"
+"\x0e\xf7\x68\xf7\x7a\x15\x8a\x7a\x8b\x88\x86\x1a\xfb\x1b\xce\x37\xf7\x00\xd9\xc7\xb1\xde\xbe\x1e\xba\xd6\xa3\xe1\xe4\x1a\xf7\x21"
+"\x4c\xdb\xfb\x03\x3a\x50\x65\x36\x56\x1e\x71\x62\x7b\x64\x82\x62\x08\x5c\x06\xa7\xf7\x12\x05\xc1\x8e\xa7\x9f\xb0\x1a\xa9\x77\x99"
+"\x62\x1e\x32\x06\x59\x6b\x73\x67\x71\x98\x7e\xa8\x87\x1f\x3b\xfb\xfa\x05\x5f\x8a\x6e\x72\x69\x1a\x6e\xa0\x7d\xb3\x1e\xf7\x01\x06"
+"\xbd\x7e\x0a\xa7\xf7\x13\x05\xf7\xc2\xf7\x89\x15\xbf\xa5\x60\x34\xfb\x1e\x4c\xfb\x09\x40\x55\x70\xb6\xe0\xf7\x28\xc7\xf7\x01\xdc"
+"\x1f\x0e\xf8\xa6\xf8\x60\x15\xc3\x8d\xa0\x99\xaf\x1a\xb1\x74\x99\x4b\x1e\xfb\x31\x06\x31\x4b\x7b\x69\x64\x1f\x67\x6d\x76\x5d\x5d"
+"\x1a\x4b\xaa\x64\xd0\x73\x1e\x7a\x7d\x74\x73\x7a\x74\x87\x86\x18\x87\x85\x87\x85\x86\x85\x7a\x75\x7b\x76\x7a\x76\x81\x7e\x18\x6e"
+"\x06\x61\x74\x79\x69\x77\x95\x7b\x9b\x83\x1f\x85\x97\x9e\x89\xb6\x1b\xb8\x8f\x8d\xca\xba\x1f\xf7\x15\xf7\x41\x8f\x8f\xae\x8d\x08"
+"\xa4\x06\x69\xfb\x20\x05\x79\x06\x62\x73\x77\x6a\x66\xa2\x7d\xcb\x1f\xde\x06\xca\xa3\x99\xb0\xad\x76\x9c\x5f\x8c\x1f\x70\xf7\xf9"
+"\x15\x72\xfb\x04\x05\x3d\x06\x3e\x76\x95\xae\xb7\xac\xa2\xcc\x1f\x0e\xf8\xb5\xf8\xc8\x15\xfc\x04\x06\x6e\x7d\x87\x80\x7d\xe0\x0a"
+"\xbe\x06\x3c\xfb\xfa\x05\x55\x06\x6c\x80\x88\x7f\x7c\xe0\x0a\xf7\x69\x5e\x1d\x58\x06\xda\xf7\xfa\x05\xf7\xcf\x06\xb5\xf7\x4e\x05"
+"\x8e\x97\x8c\x95\x92\x1a\xa2\x79\x9c\x71\x7a\x7a\x84\x7d\x7d\x1e\x81\x81\x87\x82\x85\x70\x08\x0e\xf7\x9d\xf7\x51\x15\xb2\xd6\xb5"
+"\x9a\xad\x1b\xac\x9a\x79\x64\x6b\x80\x69\x7d\x7d\x1f\x84\x84\x7f\x87\x74\x87\x08\x5d\x82\x78\x7b\x6d\x1a\x6a\xa3\x79\xb5\xed\xd8"
+"\xe4\xf7\x05\xf3\x59\xc3\x2e\x63\x63\x80\x6f\x4f\x1e\xad\xf7\x2e\x05\xc0\x06\x86\x76\x8a\x82\x82\x1a\x6a\x9e\x79\xae\xae\x9a\x9f"
+"\xc2\x92\x1e\x8f\xa7\x05\x90\xab\x8b\x8b\x90\x1a\xb2\x76\x98\x49\x1e\xfb\x8e\x06\x45\x8a\x86\x87\x78\x4e\x81\x68\x18\x83\x6e\x89"
+"\x81\x84\x1a\x72\xa2\x76\xa8\xa8\x97\x98\xbc\x9b\x1e\x94\xa8\x05\xc3\x06\x3c\xfb\xfb\x05\x4d\x8c\x74\x7d\x65\x1a\x64\xa1\x7e\xcc"
+"\x1e\xe2\x06\xca\xa2\x99\xb1\xad\x77\x9b\x5e\x8c\x1f\x0e\xf7\x39\xf8\x60\x15\x3c\xfb\xf8\x44\x0a\xdb\xf7\xf8\x05\xf7\x8b\x06\x79"
+"\x39\x05\x88\x80\x8a\x80\x84\x1a\x74\x9e\x7a\xa5\xad\xa2\xa2\xb6\x95\x1e\xb5\xf7\x51\x05\xfc\x98\xf7\x6c\x1d\xf7\xd4\xf7\x8f\x15"
+"\x9d\x97\x94\x97\x22\x0a\x7b\x82\x81\x87\x82\x7d\x8d\x1d\xf7\x3e\xf7\xe3\x15\xe2\xb0\xd5\xbf\xe4\x1b\xc8\xc2\x6d\x69\x1f\x77\x07"
+"\x71\x9a\x7d\xa6\xae\xa3\xa2\xb6\x94\x1e\x9d\xdb\x05\x8d\x94\x8d\x98\x92\x1a\xa1\x78\x9c\x73\x78\x7d\x85\x7a\x7a\x1e\xa4\x64\x5f"
+"\x97\x54\x1b\xfb\x31\xfb\x22\xfb\x08\xfb\x31\x67\x1f\x7d\x4c\x05\x87\x7a\x89\x7a\x7b\x1a\x51\xa1\x58\xb5\x65\x1e\x63\xb7\xc6\x78"
+"\xdd\x1b\xf7\x16\xf7\x19\xce\xcc\xa2\x77\x9e\x73\x7c\x7b\x84\x7a\x75\x1f\x68\x5f\x68\x80\x4c\x1b\x27\x4d\xb7\xd1\x95\x8b\x92\x8c"
+"\x95\x1f\xf7\x73\x06\xbc\xa5\x9e\xad\xaa\x73\x9f\x66\x1f\x0e\xb5\x1d\x0e\x58\x0a\xd9\x1d\x78\xef\x0a\x78\x9c\x71\x1f\xf7\x61\x16"
+"\x69\x6c\x6e\x6b\x72\x9d\x7a\xa6\xad\xaa\xa8\xac\xa3\x79\x9c\x70\x1f\x0e\xf8\xb9\x94\x1d\x9b\x97\x94\x9d\x9b\x1a\x9c\x80\x9c\x7d"
+"\x8f\x1e\x8e\x82\x84\x8c\x77\x62\x0a\x82\x60\x86\xa3\x1d\x67\x1b\x6b\x6f\x93\x9f\x5e\xe4\x1d\xf7\xc9\xf8\x60\x15\xb6\x06\x3c\xfb"
+"\xf9\x05\x65\x87\x79\x7a\x6d\x1a\x69\xa5\x79\xbc\x1e\xb6\x06\xdc\xc7\x9d\xb0\xb5\x1f\xb3\xaf\xa1\xbc\xc3\x1a\xe4\x5e\xb7\x25\x97"
+"\x1e\xa7\xf7\x0b\x05\xcb\x8c\xa0\x98\xb1\x1a\xb1\x74\x99\x4b\x1e\xfb\x8f\x06\x4a\x75\x7e\x63\x69\x9f\x7a\xb1\x1f\xa0\x06\x52\xfb"
+"\x90\x7b\x41\x6b\x5c\x6a\x8d\x19\x8f\xa5\x8c\x92\x92\x1a\xa7\x77\x9b\x67\x68\x7d\x7c\x5b\x82\x1e\x80\x55\x05\x89\x80\x8a\x85\x86"
+"\x1a\x7b\x92\x80\x9c\x84\x1e\x82\x9d\xb0\x85\xac\x1b\xf3\xca\xce\xf7\x27\xac\x1f\xf7\x34\xb2\x15\xb6\x88\x9d\x7c\x6a\x1a\x5a\x6d"
+"\x70\x4e\x84\x1e\x0e\xf7\xbc\xf7\x7a\x15\x6e\xfb\x13\x05\x64\x84\x78\x77\x6a\x1a\x6b\x9a\x80\xb6\x1e\xf7\x01\x06\xd7\xd1\xa2\xb0"
+"\xb1\x1f\xab\xaa\x9e\xbe\xc0\x1a\xbc\x79\xad\x66\xa3\x1e\x9f\x6a\x62\x97\x64\x1b\x79\x06\xa9\xf7\x12\x05\xbb\x7d\x0a\xfb\x16\x06"
+"\x5a\x6b\x73\x67\x6f\x9a\x7e\xac\x88\x1f\x6f\xfb\x12\x05\xfb\x0d\x2b\x1d\xae\x91\xa3\xa4\xa9\x1a\xa6\x78\x9a\x67\x1e\x44\x06\x58"
+"\x6b\x72\x64\x75\x99\x7e\xa7\x87\x1f\x3b\xfb\xfa\x05\x8a\x89\x8b\x8b\x88\x1b\x62\x85\x76\x77\x6a\x1a\x6e\x9f\x7d\xb4\x1e\xe1\x06"
+"\xba\xab\xa4\xb1\xa4\x7b\x98\x69\x8d\x1f\xa7\xf7\x13\x05\xf7\x63\xfb\x13\x15\xa7\xf7\x13\x05\x95\x06\xc3\xa6\x77\x63\x5f\x6c\x74"
+"\x4c\x1f\x0e\xf7\xd9\xf8\x60\x15\xc2\x06\x89\x7e\x05\x89\x7e\x89\x7d\x85\x1a\x73\xa3\x77\xa7\xa9\x9b\x9c\xb3\x92\x1e\x8c\x92\x8c"
+"\x93\x91\xaa\x05\x8e\x9a\x8d\x98\x96\x1a\xb2\x76\x98\x4a\x1e\xfb\x90\x06\x64\x72\x86\x84\x86\x1f\x85\x87\x80\x73\x83\x71\x7c\x5b"
+"\x18\x84\x73\x88\x7f\x85\x1a\x74\x9f\x7a\xa5\xad\x9a\x9b\xbf\x9e\x1e\x94\xa3\x05\xc3\x06\x3d\xfb\xf9\x05\x4c\x8c\x74\x7d\x64\x1a"
+"\x66\xa2\x7d\xcb\x1e\xd7\x06\xcb\xa2\x99\xb0\xaa\x7a\x9b\x65\x90\x1f\xa0\xe4\x05\xb5\xc5\xad\x9b\xaa\x1b\xa2\x98\x7f\x76\x80\x89"
+"\x81\x87\x79\x1f\x7a\x40\x05\x57\x8a\x76\x7c\x68\x1a\x65\xa2\x7d\xcb\x1e\xc6\xa7\x1d\x7a\x9c\x69\x91\x1f\x9c\xcf\x05\x8f\x9f\x8d"
+"\x96\x98\x1a\xdb\x53\xc6\x40\x67\x6d\x83\x75\x61\x1e\x0e\xb8\x1d\x55\xf7\x9d\x15\x9d\x96\x94\x98\x22\x0a\x7c\x81\xf7\x16\x1d\x99"
+"\x1e\x0e\xc5\x1d\x5d\xf8\x77\x15\x71\x7a\x77\x6f\x52\xc5\x60\xd7\xbc\xbe\x9c\xa9\xb0\xf7\x44\x1d\x81\x1e\x67\x7a\x65\x77\x5a\x1b"
+"\x5f\x6c\x9e\xa7\x89\x1f\xa6\x8a\x84\x94\x78\x1b\x0e\xf7\xe5\xbc\x0a\x7d\x32\x1d\x8b\x77\x1b\x7f\x06\xcc\x0a\x2a\x7b\x7b\x67\x1e"
+"\x76\x4f\x1d\x73\x9d\x7a\xa3\x73\x1d\x0e\xf8\x1a\xf8\x4c\x15\xd4\xb6\x98\xab\xa7\x1f\xa0\xa2\x9c\xb5\xaa\x1a\xa7\x72\xa2\x6d\x6e"
+"\x79\x79\x64\x82\x1e\x88\x7d\x88\x82\x87\x85\x08\x88\x8a\x79\x88\x6f\x1b\x37\x06\x2a\x47\x62\x35\x5c\x1f\x63\x41\x73\x33\x42\x1a"
+"\xfb\x06\xe5\x3d\xf7\x16\xf7\x32\xf7\x11\xf7\x01\xf7\x1e\xf7\x00\x3b\xd7\xfb\x08\x5e\x66\x82\x75\x5c\x1e\x9f\xb6\x9b\x95\xc0\x8c"
+"\x08\x9c\xfb\x13\x15\xd6\xaf\x6f\x50\x3d\x42\x51\x29\x42\x61\xad\xc5\xd9\xd2\xc0\xf3\x1f\x0e\xd5\xf1\x15\x81\x06\x55\x6e\x77\x67"
+"\x6c\xa1\x7c\xb5\x1f\xf7\xa3\x06\xf7\x2c\xe2\xb8\xda\xb6\x70\xa5\x4c\x9c\x1f\xcc\x9e\xaf\xb2\xbd\x1a\xce\x4b\xb3\x22\x1e\xfb\xa0"
+"\xf7\x12\x0a\xec\x52\x15\x97\xc4\x05\xf7\x27\x06\xc1\xa8\x83\x7c\x73\x66\x81\x2b\x1f\xfb\x23\xfb\x36\x15\x97\xc5\x05\xf7\x18\x06"
+"\xe3\xab\x83\x75\x76\x70\x84\x3d\x1f\x0e\xa2\x0a\x0e\xf8\x27\x16\x86\x71\x05\x88\x7f\x8a\x80\x81\x1a\x6d\xa1\x75\xa8\xa8\x9d\x9e"
+"\xb4\x94\x1e\x99\xca\x05\x8f\x9c\x8d\x99\x95\x1a\xaa\x79\x9b\x66\x8f\x1e\xbb\xf7\x6d\x05\xc1\x8d\x9f\x99\xae\x1a\xb2\x74\x99\x4b"
+"\x1e\xfb\xc0\x06\x4c\x74\x7d\x65\x68\x9f\x7c\xbf\x89\x1f\x73\x20\x78\x39\x62\x6e\x28\x8c\x19\x6e\xfb\x12\x05\x86\x77\x89\x7d\x83"
+"\x1a\x70\xa1\x76\xa8\xa8\x99\x9b\xbd\x99\x1e\x98\xb9\x05\xf7\x63\xf7\xd5\x15\xf7\x01\x06\x5b\xfb\x6d\x05\xfb\x15\x06\x9e\xa8\x99"
+"\xab\x94\xb2\x08\x0e\xf8\xb4\xcf\x1d\x0e\xf8\xb0\xf7\x34\x15\x95\xb7\x05\x8e\x98\x8d\x9b\x9c\x1a\xf7\x05\x37\xd5\xfb\x14\xfb\x3d"
+"\xfb\x27\xfb\x13\xfb\x26\xfb\x02\xe0\x46\xf7\x1c\xd6\xf7\x00\x9d\xa0\xbd\x1e\xa4\x95\x9b\xa1\xa3\x1a\xa2\x79\x9c\x74\x80\x7a\x88"
+"\x85\x6e\x1e\x7a\x42\x65\x86\x60\x1b\x42\x5f\xa3\xba\x7e\x1f\xa7\xf3\x15\xba\xb4\xbc\xa2\xca\x1b\xc8\xb3\x74\x5c\x9e\x1f\xfb\x35"
+"\xf7\xdc\x15\x69\x6c\x6e\x6b\x72\x68\x0a\x9d\x79\xa5\xae\xaa\xa8\xad\xa3\x79\x9c\x70\x1f\x0e\xf7\x74\xf2\x15\xf7\x09\x1d\x83\x93"
+"\x77\x19\xa8\x3f\xa1\x52\x91\x86\xb3\x89\x19\x9f\x06\xab\xa3\xa1\xaa\xa8\x7a\x9b\x67\x90\x1f\x74\xc8\x81\xa5\x7b\xa5\x7d\x95\x19"
+"\x9d\x98\xa3\xa2\xa5\xa9\x08\x6f\x91\x99\x7f\xa7\x1b\xaa\x96\x99\xbd\x97\x1f\x92\xaa\x05\x8e\x97\x8c\x94\x92\x1a\xa7\x73\xa1\x6b"
+"\x65\x65\x76\x60\x65\x1e\x42\x3a\x92\xb5\x05\xa7\x93\x99\x9c\xa5\x1a\xad\x72\x9d\x5a\x1e\x65\x06\x5c\x71\x78\x6a\x73\x95\x7d\xa4"
+"\x7f\x1f\x83\x5f\x65\xd3\x05\xc3\x6d\x73\x9d\x5e\x1b\x6c\x78\x81\x73\x7f\x1f\x81\x77\x85\x71\x72\x1a\x6d\x9e\x78\xa9\xa2\x99\x96"
+"\xa6\x94\x1e\x9f\x62\x91\x81\x9b\x77\x73\x81\x79\x7e\x7d\x79\x3d\x2e\x18\x7e\x06\x69\x72\x75\x6d\x6e\xa3\x74\xaa\x1f\xa6\x06\xa5"
+"\x8c\x8c\x8c\xaf\xb5\xda\xec\x18\x99\x9c\x9a\x9a\x9a\x96\x08\x0e\xf7\x82\xf8\x2c\x15\x8f\x07\xab\x79\x9c\x6b\x66\x7f\x79\x4c\x84"
+"\x1e\x89\x72\x85\x75\x81\x70\x08\x84\x76\x87\x7b\x83\x1a\x73\xa1\x77\xa6\xa1\x98\x95\xa8\x99\x1e\xc7\xa8\xa8\x9b\xe1\x1b\xbd\xac"
+"\x81\x7b\x77\x67\x7d\x55\x8a\x1f\x60\x8a\x8b\x8b\x82\x89\x08\x71\x85\x7d\x7a\x72\x1a\x72\x96\x7c\xa3\x83\x1e\x98\x87\x92\x8a\xb0"
+"\x8a\x08\xb6\x8a\xa9\x80\x7e\x1a\x72\x50\x74\x49\x47\x56\x99\xab\x53\x1e\x99\x71\x7c\x91\x7e\x1b\x70\x71\x71\x6f\x73\x9a\x78\xb0"
+"\x77\x1f\x67\xcf\xd2\x79\xda\x1b\xdd\xc5\x99\xab\xba\x1f\xb4\xa7\xa3\xb1\xb2\x1a\xb1\x7a\xa3\x65\x9d\x1e\xbc\x9f\xa3\xab\xb8\x1a"
+"\xd2\x42\xbd\x23\x5a\x63\x81\x74\x65\x1e\x0e\x59\x0a\x0e\x59\x0a\xca\xf8\x4b\x15\x72\x79\x77\x6f\x52\xc5\x60\xd7\xbd\xbc\x9c\xa9"
+"\xb0\xac\x1d\x9b\x80\x96\x79\x7a\x80\x83\x78\x82\x1e\x68\x7a\x64\x76\x5c\x1b\x5e\x6c\x9e\xa7\x89\x1f\xa6\x89\x85\x94\x78\x1b\x0e"
+"\x90\x0a\x0e\xf8\x96\xf7\xd5\x15\xbf\x8c\xa0\x9a\xaf\x1a\xb1\x74\x99\x4c\x1e\xfb\xb6\x06\x4b\x74\x7d\x66\x68\xa4\x79\xbb\x1f\x8f"
+"\x06\x8e\x06\x68\xfb\x31\x81\x5e\x75\x74\x69\x8a\x19\xb4\x89\x7d\x9c\x6a\x1b\x6a\x7e\x7c\x56\x80\x1f\x81\x61\x05\x8a\x85\x8a\x85"
+"\x88\x1a\x74\xb6\x7a\xc4\xf0\xcc\xc4\xf6\xa4\x1e\xb0\xf7\x3d\x05\xe7\x06\x5a\xfb\x6e\x05\x58\x75\x7b\x68\x65\xa1\x7d\xcb\x1f\xcf"
+"\x06\xcb\xa2\x99\xb0\xab\x78\x9c\x63\x8e\x1f\x0e\xf7\x42\xf7\x95\x15\xcb\xfb\x1f\x05\xe2\x06\xf7\x17\xf7\x18\x63\xfb\x26\x05\x6b"
+"\x06\x59\x6b\x73\x66\x6e\x9f\x7d\xb4\x1f\xf7\x15\x06\xbd\xab\xa2\xb0\xa7\x7c\x98\x68\x8d\x1f\xba\xf7\x6f\xf7\x58\x1d\x36\x06\xfb"
+"\x53\xfb\x58\x2b\xf7\x58\x05\x37\x06\x59\x6b\x73\x66\x72\x98\x7e\xa8\x87\x1f\x5b\xfb\x6e\x05\x88\x06\x64\x6c\x6f\x69\x70\xa0\x7c"
+"\xb3\x1f\xf7\x15\x06\xbd\xab\xa4\xb1\xa5\x75\x9a\x64\x1f\x6e\x06\x0e\xf8\x1e\xf7\x36\x15\x7e\x50\x05\x85\x06\x59\x6b\x74\x66\x6e"
+"\xa0\x7d\xb4\x1f\xf7\x0c\x06\xbd\xab\xa4\xb1\xa5\x75\x99\x64\x1f\x84\x06\xbb\xf7\x6f\xa6\x0a\x89\x87\x81\x1f\x77\x82\x7a\x73\x75"
+"\x1a\x70\xa0\x7c\xb3\x1e\xf7\x0d\x06\xbc\x7e\x0a\x98\xc6\x05\x0e\xd8\x1d\xf8\x30\xf7\xd5\x15\x5c\xfb\x6e\x05\x7f\x06\x59\x6b\x73"
+"\x64\x71\xa1\x7d\xb2\x1f\xf7\x0d\x06\xbe\xaa\xa2\xb1\xaa\x7c\x96\x5c\x1f\xbb\xf7\x6e\x05\xb2\x90\xa4\xa3\xac\x1a\xa7\x76\x99\x63"
+"\x1e\xfc\x18\x06\x55\x6e\x76\x63\x6e\x9a\x7d\xa9\x1f\x91\x06\x5c\xfb\x6e\x05\x73\x7d\x8a\x86\xcd\x0a\xbb\xf7\x6e\x05\x0e\xf7\x23"
+"\x91\x0a\xf8\xd8\x7a\x0a\x9d\x69\x5c\x94\x55\x1b\x2d\x5a\x0a\x0e\xf8\x00\xf7\xd5\x15\xec\x06\x78\x38\x05\x89\x7f\x89\x80\x85\x70"
+"\x0a\xb5\xf7\x51\x05\xfc\x9a\x66\x1d\x81\x85\x1a\x75\x9f\x7a\xa4\xad\xa3\xa2\xb6\x94\x1e\x9e\xe0\x05\xeb\x06\x5c\xfb\x6d\x05\x4d"
+"\x06\x59\x6b\x72\x64\x72\xa1\x7c\xb2\x1f\xf7\x7a\xf7\x6a\x1d\x4f\x06\x0e\xf7\x53\x92\x58\x1d\x0e\xf7\xc7\x89\x15\x87\xa0\x9a\x8a"
+"\x9a\x1b\xca\xbc\xa8\xc7\xb2\x1f\xae\xc2\x9e\xcd\xd0\x1a\xf4\x5f\xc5\x3c\x7f\x83\x8a\x89\x7e\x1e\x98\xcb\x05\x90\xa0\x8d\x99\x92"
+"\x1a\xa7\x74\xa0\x6b\x1e\x6a\x8a\x74\x89\x05\x4d\x85\x77\x7f\x68\x1a\x6b\xa1\x77\xaf\x8d\x90\x8b\x8c\x92\x1e\x81\x5a\x05\x8f\x76"
+"\x7f\x8c\x7f\x1b\x59\x58\x6f\x59\x61\x1f\x5d\x55\x75\x4a\x3f\x1a\x51\x97\x64\xa5\x6c\x1e\x70\xa2\xab\x7c\xac\x1b\x96\x93\x8c\x8e"
+"\x9a\x1f\x84\x72\x05\x77\x06\x4b\x74\x7e\x65\x64\xa1\x7e\xcc\x1f\xf7\x1b\x06\xcc\xa2\x98\xb1\xb2\x75\x98\x49\x1f\x85\x06\x38\xf7"
+"\x12\x15\x87\x7d\x82\x89\x82\x1b\x71\x7e\xa1\xb8\xe0\xc0\xe3\xbe\x91\x8f\x8b\x89\x94\x1f\xf7\x04\x16\x8d\x99\x91\x8b\x93\x1b\xa7"
+"\x9b\x74\x62\x67\x82\x62\x7a\x66\x1f\x5f\x76\x74\x79\x66\x1b\x86\x89\x8b\x8d\x83\x1f\x0e\xf8\x12\xec\x0a\x9d\x9b\x1a\x9c\x80\x9b"
+"\x7d\x8d\x0a\xf8\xd7\xf3\x15\x2c\x06\xba\xf7\x6e\xf7\x62\x1d\xa0\x1a\xa7\x76\x9a\x63\x1e\xfb\x0d\x06\x5a\x6a\x72\x65\x71\xa1\x7d"
+"\xb2\x1f\x95\x06\x5b\xfb\x6e\x05\xfb\x63\x06\xba\xf7\x6e\x05\x97\x06\xbd\xab\xa2\xaf\xa8\x76\x9a\x63\x1f\xfb\x0d\x60\x1d\x5c\xfb"
+"\x6e\x2d\x0a\xf8\x1d\x06\x81\x61\x05\x88\x7d\x89\x80\x86\x1a\x75\xa1\x7a\xa7\xac\x9f\xa0\xb9\x95\x1e\x0e\xf7\xf4\xf3\x15\x54\x06"
+"\x4b\x74\x7d\x65\x65\xa1\x7d\xcc\x1f\xf7\x1e\x06\xcb\xa2\x99\xb0\xac\x78\x9c\x61\x8e\x1f\xcd\x1d\x0e\xf8\x87\xf3\x15\xbb\xf7\x5b"
+"\x1d\x62\x1f\xfb\x09\x06\x45\xf7\x0f\x1d\x75\x95\x7e\xa2\x84\x1f\x59\xfb\x6f\x05\x3f\x06\xd1\xf7\xd5\x05\xfb\x06\x60\x1d\x5f\xfb"
+"\x6e\x2d\x0a\xf8\x78\x7d\x0a\x0e\xf7\x63\xf3\x15\x3f\x06\xd1\xf7\xd5\x05\xfb\x06\x60\x1d\x5f\xfb\x6e\x2d\x0a\xf8\x4f\x06\x7f\x61"
+"\x05\x88\x81\x89\x81\x82\x1a\x70\x9c\x7e\xac\xb4\x98\x9a\xd2\x9c\x1e\xaa\xf7\x15\x05\x28\x06\xbc\xf7\x5b\x1d\x63\x1f\xfb\x09\x06"
+"\x44\xf7\x0f\x1d\x74\x96\x7d\xa1\x86\x1f\x0e\xbd\xf8\x3d\x15\xf7\x18\x1d\xf1\x06\x5e\xfb\x6f\x05\x81\x06\x55\x6e\x77\x67\x6c\xa1"
+"\x7c\xb5\x1f\xf7\x29\x06\xe1\xc6\x97\xa4\xac\x1f\xaa\xa1\x9c\xaf\xb3\x1a\xdd\x49\xb9\xfb\x09\x1e\x76\x06\x97\xc5\x05\xc0\x06\xb1"
+"\xaa\xa7\xad\xa6\x76\x9a\x62\x1f\x21\xfb\xd7\x15\x97\xc5\x05\xad\x06\xc2\xa8\x81\x78\x78\x70\x81\x58\x1f\x0e\xf7\x50\xf7\xd5\x15"
+"\xc2\x06\xb1\xaa\xa7\xad\xa7\x76\x99\x63\x1f\xfb\x33\x06\x56\x6d\x76\x65\x6d\xa0\x7c\xb6\x1f\x91\x06\x5d\xfb\x6f\x05\x7f\x06\x64"
+"\x6e\x73\x6a\x6d\xa1\x7c\xb5\x1f\xf7\x0b\x06\xdf\xc3\x97\xa4\xad\x1f\xa9\xa1\x9c\xaf\xb4\x1a\xd9\x49\xbc\x23\x1e\x80\x06\x69\xfb"
+"\x35\x15\x96\xc5\x05\x96\x06\x9d\xb5\x84\x85\x97\x1f\x93\x88\x90\x84\x84\x1a\x79\x6b\x81\x53\x1e\xf7\x8a\x8c\x15\x5b\x86\x75\x77"
+"\x67\x1a\x6c\x9a\x80\xb8\x1e\xed\x06\xbe\xab\xa4\xb2\xa7\x7a\x96\x5e\x8c\x1f\xbd\xf7\x6e\xf7\x58\x1d\x2f\x06\x59\x6b\x72\x64\x6f"
+"\x9a\x81\xb9\x8a\x1f\x0e\xf7\x79\xf7\xd5\x15\xc3\x06\xb1\xaa\xa7\xad\xa6\x76\x9a\x63\x1f\xfb\x37\xf7\x12\x0a\x5e\xfb\x6f\x05\x81"
+"\x06\x55\x6e\x77\x67\x6c\xa1\x7c\xb5\x1f\xf7\x96\x06\xed\xc9\x97\xa5\xad\x1f\xa8\xa2\x9b\xae\xb3\x1a\xdf\x47\xb7\xfb\x14\x1e\xfb"
+"\x16\x06\x69\xfb\x36\x15\x97\xc5\x05\xf7\x0b\x06\xe4\xaa\x83\x75\x76\x70\x84\x3d\x1f\x0e\xf7\xba\xf7\x9a\x15\x5c\x72\x78\x68\x6a"
+"\xa1\x7a\xb2\x1f\xf7\x10\x06\x5c\x6e\x5e\x74\x4a\x1b\x4f\x53\xa1\xb7\x56\x1f\xa1\x71\x7b\x93\x7a\x1b\x70\x71\x72\x71\x71\xa3\x71"
+"\xc6\x64\x1f\x62\xca\xbd\x7b\xcf\x1b\xf7\x3b\xf7\x17\xf7\x04\xf7\x23\xf7\x09\x36\xdb\xfb\x10\x57\x60\x80\x74\x67\x1f\xb8\x88\x7f"
+"\x99\x69\x1b\x68\x80\x7c\x49\x80\x1f\x85\x6c\x85\x70\x85\x76\x08\x80\x6c\x89\x82\x82\x1a\x75\xa1\x76\xa3\xa2\x9a\x97\xac\x9c\x1e"
+"\xc2\xa8\xb7\xa3\xd2\x1b\xcd\xb8\x70\x5e\x94\x1f\x0e\xf7\x6c\xf7\x36\x15\xfb\x01\x90\xd0\x46\xf5\x1b\xd5\xc0\xa7\xc6\xb4\x1f\xb0"
+"\xc0\x9f\xcd\xd2\x1a\xca\x7b\xb6\x68\xa8\x1e\xa6\x6c\x60\x99\x5c\x1b\x29\x38\x4c\xfb\x00\x62\x1f\x62\x06\x96\xc3\xa3\x8c\x95\x8d"
+"\x97\x93\x19\x9c\x96\x96\xa0\x9e\x1a\xa5\x75\x9a\x64\x1e\x38\x06\x59\x6b\x72\x65\x73\x9a\x7e\xa8\x88\x1f\x5b\xfb\x6f\x05\x61\x89"
+"\x75\x77\x67\x1a\x6c\x9f\x7d\xb5\x1e\xee\x06\xbe\xaa\xa2\xb2\xa6\x7c\x99\x6e\x1f\x71\x06\x98\xc6\x05\xf7\xa9\xf7\x40\x15\xb8\xa5"
+"\x6a\x51\x37\x57\x44\x4e\x59\x6d\xad\xc2\xde\xc4\xd5\xcc\x1f\x0e\xf8\x8e\xf7\xd5\x15\xa2\x06\xb4\xa3\x9e\xad\xb0\x73\x99\x4c\x1f"
+"\xfb\x43\x06\x31\x50\x7d\x6f\x67\x1f\x6b\x72\x78\x65\x64\x1a\x58\xa6\x68\xc2\x76\x1e\x7a\x82\x81\x84\x79\x7a\x5f\x5f\x18\x72\x06"
+"\x4f\x75\x7e\x68\x6b\xa0\x7a\xb3\x1f\xcb\x06\xb0\x8c\x8b\x8b\xb7\xba\xde\xe2\x9e\x98\xb8\x8d\x08\xa4\x06\x81\x5c\x05\x72\x06\x60"
+"\x75\x7a\x68\x65\xa2\x7e\xcb\x1f\xe8\x06\xca\xa2\x99\xaf\xae\x75\x9c\x5d\x8c\x1f\x4e\xf7\x6e\x15\x7c\x47\x05\x49\x06\x38\x6e\x92"
+"\xa1\xa7\xab\x96\xdb\x1f\x0e\xf8\x88\xf8\x3d\x15\xfc\x19\xf7\x59\x1d\x5c\xfb\x6d\x44\x0a\xbb\xf7\x6d\x05\xf7\xe4\x06\xb5\xf7\x4f"
+"\x05\x8d\x97\x8d\x96\x92\x1a\xa1\x78\x9c\x71\x69\x74\x74\x5f\x81\x1e\x0e\xd4\xf2\x15\x88\x67\x0a\xa8\xde\x0a\x82\x8d\x6f\x4e\x0a"
+"\xcc\xa5\x96\xb9\x1b\xb7\xa6\x7b\x71\x84\x8a\x81\x88\x7f\x1f\x4d\xfb\xa9\x05\x5c\x82\x60\x6c\x53\x1b\x20\x06\x57\x6c\x73\x63\x70"
+"\x9f\x7e\xb4\x1f\xf7\x03\x06\xf7\x05\x8c\xed\xd7\xa2\xf2\xcc\xf7\xb6\x18\x8e\x99\x8c\x96\x9a\x1a\xd6\x50\xbb\x30\x59\x58\x78\x6a"
+"\x60\x1e\x9e\xdd\x05\xe6\x1d\x0e\xa2\x0a\xf7\xd2\xf7\x88\x15\x9e\x97\x93\x97\x22\x0a\x7b\x82\x80\x87\x82\x7e\x8d\x1d\xf7\x53\xf7"
+"\x9d\x15\xba\xac\xba\xa0\xd2\x1b\xb0\xb1\x82\x7e\x9c\x1f\x95\x83\x8f\x82\x7c\x1a\x67\x98\x7d\xab\xae\xa2\xa1\xb8\x95\x1e\x99\xc7"
+"\x05\x8e\x98\x8c\x95\x91\x1a\xa0\x77\x9d\x73\x7e\x7f\x87\x80\x7c\x1e\x9e\x65\x62\x94\x56\x1b\x30\x42\x6f\x4f\x4d\x1f\x50\x53\x6c"
+"\x46\x45\x1a\xfb\x02\xdc\x50\xf7\x2c\xf7\x23\xf7\x0a\xbf\xca\xa2\x77\x9e\x73\x7f\x7f\x87\x81\x7e\x1e\x6e\x5e\x62\x80\x42\x1b\x31"
+"\x5e\xa2\xbd\x84\x1f\xf7\x35\x06\xba\xa5\x9f\xb0\xaa\x77\x9b\x62\x1f\x0e\xf8\xb6\xf8\x05\x15\x8e\x9b\x8c\x91\x94\x7f\x0a\x7e\x1e"
+"\x9a\x6a\x78\x0a\xf7\x10\x63\x1d\x4b\x61\x0a\x93\x8e\x93\x98\x1e\x79\xaf\xbb\xf2\x0a\x72\x9b\x62\x96\x44\x94\x4e\x93\x84\x8d\x7f"
+"\x8f\x84\x1d\x08\x0e\xf8\x26\x35\x1d\xec\x5d\x1d\x0e\xf8\x25\xf8\x3d\x15\xfb\x4b\xea\x0a\xd3\x06\x5b\xfb\x6d\x05\xfb\x06\x06\x58"
+"\x6c\x74\x64\x6e\x9e\x7e\xb5\x1f\xf7\xe2\xf7\x6b\x1d\xfb\x04\x06\x32\xf8\x7c\x15\x69\x6b\x6e\x6b\x72\x9e\x79\xa4\xaf\xaa\xa8\xac"
+"\xa4\x79\x9c\x70\x1f\xf7\x61\x16\x68\x6c\x6e\x6b\x72\x9e\x79\xa5\xae\xaa\xa8\xac\xa4\x79\x9c\x70\x1f\x0e\xf8\x2d\xa4\x0a\xf7\xca"
+"\xf7\xac\x15\xfb\x14\xf7\x75\x1d\xf8\x4f\xf7\xd5\x15\xc0\x8c\xa0\x9a\xaf\x1a\xb1\x74\x99\x4b\x1e\xfb\x81\x27\x0a\x69\xa0\x7a\xb7"
+"\x89\x1f\x68\xfb\x34\x80\x5f\x77\x75\x6b\x89\x19\x8d\x92\x8b\x8e\x8f\x1a\xa9\x78\x9c\x6b\x6b\x78\x76\x61\x83\x1e\x82\x5f\x05\x89"
+"\x81\x8b\x87\x88\x1a\x71\xaf\x7b\xc5\xf7\x03\xc1\xba\xf7\x09\xa5\x1e\xb1\xf7\x3d\x05\xc8\x06\x5a\xfb\x6e\x05\x68\x86\x7a\x7a\x6d"
+"\x1a\x67\xa5\x7b\xc5\xec\xbd\x92\x9e\xac\x1e\xb9\xa6\xa8\xbc\xc0\x1a\xd5\x60\xae\x26\x92\x1e\x74\x24\x15\xbb\x8a\x93\x88\x7a\x1a"
+"\x72\x75\x7e\x5b\x87\x1e\x0e\xf7\xb4\xf7\x34\x15\x7f\x51\x05\x66\x87\x78\x79\x6a\x1a\x69\x9e\x7e\xb9\x1e\xde\x06\xe0\xb9\x93\x9e"
+"\xaa\x1f\xb1\xa1\x9f\xb2\xbc\x1a\xdd\x54\xb8\x24\x1e\x7f\x06\x96\xc4\x05\xc4\x06\xb0\xaa\xa7\xad\xa6\x76\x9a\x63\x1f\xfb\x1f\x06"
+"\x56\x6d\x76\x64\x6f\x9a\x7d\xae\x89\x1f\x80\x52\x05\xfb\x0c\x06\x97\xc5\x05\xb0\x92\x9e\x9f\xab\x1a\xa9\x77\x99\x62\x1e\x4a\x06"
+"\x59\x6b\x72\x64\x74\x9a\x7e\xa8\x87\x1f\x5b\xfb\x6d\x05\x61\x89\x75\x77\x66\x1a\x6c\x9e\x7d\xb6\x1e\xdd\x06\xbe\xaa\xa2\xb2\xa7"
+"\x7c\x99\x6d\x1f\x83\x06\x98\xc3\x05\xf7\x6c\x51\x15\x97\xc5\x05\xa2\x06\xb3\x9f\x81\x78\x75\x7d\x84\x60\x1f\x0e\xf7\x9a\xf8\x67"
+"\x15\xe6\x1d\x3b\xfc\x00\x54\x0a\x90\x0a\xfb\x2a\xf7\x8e\xed\x1d\xf7\x73\xf7\xd6\x15\xb0\x91\x9b\x9b\xa9\x1a\xb0\x74\x99\x4c\x1e"
+"\x54\x27\x0a\x6b\x9e\x7a\xb3\x88\x1f\xea\xfb\x98\x6e\x66\x05\x74\x79\x73\x76\x80\x1b\x8e\x9d\x8b\x8f\x92\x1a\xaa\x78\x9c\x6b\x69"
+"\x7c\x7a\x57\x80\x1e\x80\x5c\x05\x8a\x85\x8a\x85\x86\x1a\x6e\xb4\x76\xc5\xc5\xbf\xaa\xcd\xc1\x1e\xf7\xaf\xf7\xf2\x05\xbd\x8c\xa1"
+"\x9b\xae\x1a\xb0\x73\x99\x4c\x1e\x40\x27\x0a\x6f\x99\x7b\xaa\x84\x1f\xfb\x17\xfb\x36\x05\x5b\xf8\x5c\x15\x73\x79\x77\x6f\x52\xc5"
+"\x60\xd7\xbd\xbc\x9c\xa9\xb0\xac\x1d\x9b\x80\x96\x79\x7a\x80\x82\x78\x82\x1e\x69\x7b\x63\x76\x5c\x1b\x5e\x6c\x9e\xa7\x89\x1f\xa7"
+"\x89\x85\x93\x77\x1b\x0e\xf7\xc3\x16\xf7\x1b\x06\xbe\xab\xa4\xb2\xa1\x7c\x99\x70\x8e\x1f\xda\xf7\xfa\xa0\x0a\xf7\x1e\x06\x7c\x56"
+"\x05\x89\x83\x89\x7f\x82\x1a\x73\x9e\x7b\xa9\xaf\x9a\x9b\xbe\x97\x1e\x0e\xbe\x1d\xb1\xf7\x96\x15\x82\x63\x05\x88\x7c\x89\x7b\x7b"
+"\x1a\xfb\x06\xdf\x43\xf7\x19\xf7\x3d\xf7\x28\xf7\x13\xf7\x25\xf7\x03\x36\xd0\xfb\x1f\x3a\xfb\x07\x77\x75\x5f\x1e\x74\x80\x7e\x78"
+"\x74\x1a\x74\x9c\x7a\xa3\x96\x97\x8d\x8e\x98\x1e\xa2\xed\xa4\x8f\xb8\x1b\xdf\xb7\x73\x57\x99\x1f\x73\x2f\x15\x59\x6a\x52\x6f\x45"
+"\x1b\x47\x59\xab\xb9\x86\x1f\x0e\xf8\x0d\xf8\x09\x15\x72\xba\x83\x86\x80\x84\x05\x69\x57\x7a\x84\x71\x1b\x6e\x7a\x9d\xac\xbc\xb1"
+"\xb3\xb9\xa2\x97\x83\x7c\x86\x8a\x73\x89\x79\x1f\xe7\x96\x05\x8a\x9b\x8b\x99\x98\x1a\xa3\x8c\x8f\x9e\xb2\x1e\x90\x94\x8e\x92\x8e"
+"\x90\x34\x9c\x18\x86\x7b\x05\x92\x72\x82\x8d\x7b\x1b\x27\x32\x34\x28\x44\xbb\x5c\xd3\xae\xac\x94\xa1\xb4\x1f\xfb\x67\xfb\x8c\x05"
+"\x80\x7e\x84\x7d\x7f\x1a\x78\x9d\x7b\xa1\x9d\x9b\x94\x9c\x9a\x1e\xf7\x19\xf7\x30\x05\x81\x71\x87\x79\x75\x1a\x43\xbc\x5d\xd9\xf3"
+"\xe5\xe1\xee\xd3\x59\xba\x3f\x65\x6f\x83\x77\x66\x1e\xf7\x60\xf7\x82\x05\x96\x98\x91\x99\x97\x1a\x9e\x79\x9b\x75\x79\x7b\x83\x79"
+"\x7c\x1e\x5b\xfb\xe8\x15\xac\x9e\x79\x6b\x5a\x65\x62\x5d\x6b\x78\x9d\xab\xbc\xb1\xb4\xb8\x1f\x0e\xf7\x50\xf7\x22\x15\x8d\x45\x8e"
+"\x76\x95\x76\x08\x72\x98\x9f\x7d\xa3\x1b\xa8\xa3\x99\xab\xa8\x1f\x9d\x9f\x9b\xa0\x96\x9e\x90\x94\x18\x8d\x8e\x8c\x8f\x8f\x1a\x92"
+"\x85\x90\x84\x84\x86\x87\x82\x84\x1e\x80\x7b\x05\x6c\x75\x7a\x7d\x7c\x1b\x79\x84\x9e\xc0\x97\x8b\xa4\x8c\xa0\x1f\x9e\x07\xaf\x07"
+"\xf7\x1e\xf7\x44\xbe\xec\xe1\x1a\xc1\x6e\xae\x5f\x5f\x5a\x6a\x52\x64\x1e\x60\x4b\x74\xfb\x01\x88\xfb\x3d\x8a\x4e\x18\x74\x6f\x86"
+"\x85\x79\x76\x88\x88\x19\x76\x75\x05\x85\x85\x89\x86\x86\x1a\x87\x07\x84\x8f\x8e\x88\x91\x1b\x96\x8b\x8b\xb9\xb7\x1f\xec\xf7\x3d"
+"\x15\x8d\xb1\x05\xf7\x6d\x95\x9e\xd0\xbc\x1b\xa2\x9a\x76\x6b\x44\x64\x2f\x45\x2b\x1f\x0e\xa8\xf2\x15\x69\x85\x7b\x7a\x6e\x1a\x66"
+"\xa2\x7d\xcb\x1e\xc1\x06\xca\xa2\x99\xaf\xae\x75\x9c\x5e\x8c\x1f\xb6\xf7\x5a\xb2\xfb\x68\x05\x46\x98\x9a\x77\xb6\x1b\xb4\x9a\x9d"
+"\xcf\x9a\x1f\xde\xf8\x0b\x05\xae\x91\x9b\x9c\xa7\x1a\xb2\x74\x98\x4b\x1e\x55\x06\x4c\x73\x7d\x67\x68\xa1\x7a\xb9\x8a\x1f\x61\xfb"
+"\x53\x62\xf7\x70\x05\xd0\x7f\x85\x90\x42\x1b\x7b\x06\x4b\x74\x7d\x66\x6e\x9a\x7b\xac\x84\x1f\xf7\xe0\xfb\x62\x15\x71\x9a\xa2\x7f"
+"\xac\x1b\xc0\xae\xad\xcb\x98\x1f\x9e\xe4\x05\x8c\x91\x8c\x92\x92\x1a\xb3\x6e\xa7\x60\x55\x68\x6a\x49\x7d\x1e\x78\x3b\x05\x88\x7e"
+"\x8a\x82\x85\x1a\x88\x8e\x7a\x8c\x85\x1e\x8c\x8a\x05\xe2\xb7\x15\x82\x89\x88\x87\x87\x1b\x88\x8a\x8c\x8d\x8d\x8b\x8b\x8d\x91\x1f"
+"\xa5\xf7\x01\x05\x92\x8d\x8d\x8e\x8f\x1b\x90\x8b\x8b\x7c\x87\x1f\x48\xfb\x69\x15\x58\x76\x7d\x69\x6d\xa0\x7a\xb0\x1f\xa6\x06\xbd"
+"\xa1\x99\xac\xab\x75\x9b\x61\x1f\x0e\xf8\xa3\xf7\xe3\x15\xcd\x71\x54\xaf\x41\x1b\xfb\x2d\xfb\x20\xfb\x16\xfb\x21\xfb\x03\xd8\x45"
+"\xf7\x0d\xdf\xc4\xa7\xcc\xb9\x1f\x91\x4d\x05\x7a\x8c\x9b\x7f\xa0\x1b\xae\xa4\xa3\xac\x1f\x8f\x07\x79\xf7\x38\xf7\x02\xf7\x2c\x05"
+"\x94\x97\x8f\x96\x95\x1a\xa1\x79\x9a\x70\x77\x81\x85\x76\x7b\x1e\xfb\x18\xfb\x57\x15\x32\x5b\x5e\x68\x4a\x1b\x4d\x62\xb2\xc5\xd8"
+"\xd8\xd3\xde\xab\xa7\x7e\x76\x9b\x1f\x9a\x76\x90\x78\x90\x5b\x08\x0e\xf8\x6f\xf7\x4f\x15\xe4\xf7\x1f\x05\x9e\xaa\x93\x9d\x9c\x1a"
+"\xa7\x79\x9c\x6c\x6d\x81\x83\x54\x69\x1e\x6b\x58\x05\xdb\x66\x5b\xad\x41\x1b\xfb\x11\xfb\x05\xfb\x12\xfb\x1f\xfb\x01\xd5\x3d\xf0"
+"\xcb\xca\xaa\xc3\xbb\x1f\x96\x43\x05\xc7\x06\xbd\xab\xa3\xaf\xa6\x7c\x99\x6a\x8d\x1f\xfb\x18\xf4\x15\x70\x65\x84\x83\x7b\x7a\x08"
+"\x63\x65\x6f\x7b\x6c\x1b\x63\x6f\xac\xbc\xdd\xcc\xdb\xcc\xb3\x9f\x6d\x2c\xa4\x1f\xd2\xf7\xf9\x15\x9e\x97\x93\x97\x22\x0a\x7b\x82"
+"\x80\xf7\x64\x1d\x7e\x7e\xf7\x53\x1d\x2d\x1d\xfb\x05\xf8\x40\x33\x0a\xf7\x4f\xf7\x98\x15\xf7\x51\xfb\xfe\x05\x7c\x93\x95\x83\x95"
+"\x1b\x92\x8e\x8e\x93\x90\x8a\x8f\x87\x97\x1f\xfb\x24\xf7\xf5\xf7\x24\xf7\xf6\x05\x8e\x92\x8d\x94\x92\x1a\x91\x88\x8e\x84\x81\x86"
+"\x87\x78\x7e\x1e\x0e\xf8\x32\xf7\x98\x15\xfb\x51\xf7\xff\x05\x9d\x7f\x85\x90\x81\x1b\x84\x88\x88\x85\x84\x8d\x82\x8e\x84\x1f\xf7"
+"\x24\xfb\xf6\xfb\x24\xfb\xf5\x05\x87\x7f\x8a\x87\x86\x1a\x83\x8e\x88\x92\x95\x95\x93\x9a\x93\x1e\x0e\xf8\x97\xf2\x15\xb5\xf7\x50"
+"\x05\x8e\x97\x8c\x95\x97\x69\x1d\x2a\x7b\x7b\x67\x1e\x76\x4f\x1d\x73\x9d\x7a\xa3\xf7\x3d\x1d\x86\x8b\x8a\xf4\x1d\x87\x78\x05\xb7"
+"\x06\x4b\x67\x6b\x5f\x57\x5d\x0a\x93\x90\x95\x94\x97\x1f\x9d\xa3\x9d\x98\xd1\xb5\x08\xad\xa0\x98\x9c\xa3\x1a\x9c\x81\x9b\x7c\x90"
+"\x1e\x8e\x83\x84\x8b\x77\x1b\xfb\x05\xab\x15\x6c\x4f\x50\x7b\x55\xf7\x21\x0a\x96\x99\x97\x6c\x1d\xac\xa9\x88\x84\xb3\x1f\x0e\xf8"
+"\x76\xf8\x4b\x15\x74\x7f\x84\x6f\x75\x1f\x6f\x75\x7f\x7f\xe7\x0a\x5f\x63\x1f\x6d\x6b\x80\x77\xd1\x0a\x57\xc7\xb3\x77\xb5\x1b\xb5"
+"\xab\x9c\xb7\xb1\x1f\xae\xb2\x93\x99\x9f\x1a\xaa\x71\xa4\x6b\x1e\x8d\xfb\x4a\x15\x75\x7f\x84\x6f\x74\x1f\x6e\x75\x7f\x80\xe7\x0a"
+"\x60\x63\x1f\x6d\x6a\x80\x78\x77\x1a\x6d\xa6\x71\xab\xa0\x95\x91\xab\xa6\x1e\xa7\xa3\x95\x94\x92\x1b\x91\x97\x83\x7b\x9e\x1f\x57"
+"\xc8\xb2\x77\xb5\x1b\xb5\xab\x9c\xb7\xb1\x1f\xae\xb2\x93\x99\xa0\x1a\xa9\x71\xa4\x6b\x1e\x0e\x2d\x1d\xa9\xf8\xa1\xee\x1d\xd1\xf7"
+"\x25\x15\xa3\x9b\x94\x98\x9b\x1a\x9e\xf7\x4a\x1d\x7b\x81\x7e\x7b\x1a\x78\x99\x7e\x9f\x96\x93\x8e\x98\x9d\x1e\x0e\xf7\x35\xf7\x9e"
+"\x15\xa9\xb8\x9a\xaa\x9a\x1a\x93\x83\x91\x82\x84\x87\x88\x7e\x80\x1e\x6c\x68\x6e\x74\x4f\x69\x08\x78\x81\x87\x87\x84\x1a\x85\x8f"
+"\x85\x92\x87\x1e\x91\x88\x8c\x8a\x8f\x89\x91\x88\x19\x99\x82\xbc\x6e\xa3\x77\xad\x64\x19\x84\x91\x8f\x89\x92\x1b\x94\x92\x92\x93"
+"\x9a\x76\xb5\x73\xab\x1f\xf7\xb3\xa3\x0a\x0e\xf7\x9b\xf8\xae\x15\xfc\x34\x07\xa2\x6c\x5e\xa1\x7c\x1b\x83\x84\x84\x82\x84\x8d\x87"
+"\x93\x85\x1f\xb8\x65\x9a\x79\xb8\x41\x08\x7e\x92\x8e\x88\x94\x1b\x92\x8f\x90\x9c\x95\x1f\xab\xc3\xa5\xab\xaf\xa9\x08\x98\x96\x8e"
+"\x90\x91\x1a\x94\x85\x93\x83\x7c\x6b\x7c\x6e\x5d\x1e\xf8\x33\x07\x0e\xf8\xdd\xf7\x9f\x15\xfc\x3c\x06\xa3\xab\xa0\xb5\x9a\x1a\x93"
+"\x84\x92\x82\x84\x87\x89\x84\x85\x1e\x64\x5e\x78\x7c\x41\x60\x08\x7d\x83\x88\x88\x83\x1a\x84\x8f\x87\x9e\x81\x1e\xc6\x6a\xaa\x73"
+"\xa9\x68\x08\x7f\x95\x90\x87\x91\x1b\x95\x93\x91\x93\x9a\x7b\xab\x6e\xb7\x1f\xf8\x3c\x06\x0e\xa3\xf7\x6b\x15\xf8\x3c\xa3\x0a\xfc"
+"\x3c\x06\x0e\xf7\xd0\x7f\x15\xf8\x34\x07\x75\xaa\xb8\x75\x9a\x1b\x93\x92\x92\x94\x92\x89\x8f\x83\x91\x1f\x63\xac\x79\xa0\x6c\xbd"
+"\x88\x8f\x88\x8f\x88\x91\x88\x90\x88\x90\x8a\x8c\x08\xf7\x16\x0a\x69\x51\x74\x6e\x66\x6c\x08\x7e\x81\x88\x86\x85\x1a\x81\x91\x84"
+"\x93\x9a\xa9\x99\xa9\xbb\x1e\xfc\x34\x07\x0e\xf7\xa6\xf7\x02\x15\xa7\x5f\x69\x9b\x7c\x1b\x84\x84\x83\x82\x85\x8f\x86\x97\x80\x1f"
+"\xae\x6e\xa5\x6b\xac\x52\x08\x79\x95\x8f\x87\x92\x1b\x92\x90\x8e\x93\x8f\x1f\xb7\xd4\x9e\xa4\xb8\xb0\x08\x92\x91\x8e\x8f\x92\x1a"
+"\x94\x84\x92\x83\x7c\x5f\x75\x74\x6b\x1e\xf7\xae\x07\x74\xab\xb7\x76\xa7\x0a\xab\x9a\xa8\xb9\x1e\x0e\xf7\x57\x63\x15\x5f\xf7\x6a"
+"\xb7\x07\xfb\x18\xf7\x51\x15\xa7\x5f\x69\x9b\x7c\x1b\x84\x84\x83\x82\x85\x8f\x86\x97\x80\x1f\xae\x70\xa5\x6a\xac\x52\x08\x79\x95"
+"\x8f\x87\x92\x1b\x92\x90\x8e\x92\x8f\x1f\xb6\xd5\x9f\xa3\xb8\xb0\x08\x92\x91\x8e\x8f\x92\x1a\x94\x84\x92\x83\x7c\x5e\x75\x75\x6c"
+"\x1e\xf7\xad\x07\x75\xaa\xb8\x75\xa7\x0a\xac\x9a\xa8\xb8\x1e\x0e\xf7\x43\x9a\x15\x77\xab\xb2\x81\xb8\x1b\xcd\xc1\xa2\xbb\xb8\x1f"
+"\xb2\xb5\xa1\xc0\xc2\x1a\xcd\x74\xb3\x55\xa7\x1e\xc3\xae\xa6\xb6\xc1\x1a\xda\x4d\xbf\x2e\x4d\x54\x73\x5e\x63\x1e\x6e\x6a\x7b\x62"
+"\x76\x2d\xfb\x10\xfc\xc2\x18\xf7\x00\x06\xf7\x1b\xf8\x70\x15\x98\x06\x9b\x8a\x05\xd9\x8a\xb1\x73\x59\x1a\x49\x5d\x56\x51\x5d\x67"
+"\x98\xa5\x75\x1e\xc4\xf7\x95\x05\xec\xa0\xa1\xa6\xc4\x1b\xad\x9e\x7a\x6b\x6b\x75\x6c\x67\x77\x1f\x76\x80\x7a\x87\x6a\x8a\x08\x0e"
+"\x3e\x0a\x74\xf7\xc0\x2f\x1d\x3e\x0a\xfb\x42\xf7\xa4\x45\x1d\xf8\xd8\x7a\x0a\x9d\x69\x5c\x94\x55\x1b\x2d\x5a\x0a\xfb\x48\xf7\xae"
+"\x60\x0a\x3e\x0a\xfb\x2a\xf7\xe4\x5b\x1d\xf7\xbe\xf7\x78\x15\x39\xf7\x59\x05\x4c\x06\x59\x6b\x74\x65\x6d\x9c\x7e\xb7\x1f\x95\x06"
+"\xd8\xfb\x4f\xfb\x62\xfb\x8a\x05\x79\x75\x83\x7a\x7a\x1a\x72\xa0\x79\xa7\xa1\x9f\x97\xa3\x9f\x1e\xf7\x3c\xf7\x5c\xe7\xfb\x71\x05"
+"\xcb\x06\xbd\xaa\xa2\xb1\xa9\x79\x98\x60\x1f\x80\x06\x35\xf7\x67\xf7\x4d\xf7\x70\x05\x9c\x9f\x94\x9e\x9b\x1a\xa4\x76\x9d\x6d\x73"
+"\x7f\x84\x6f\x73\x1e\x0e\xf7\xad\xf8\x88\x15\xfb\x1e\xfb\x07\xfb\x03\xfb\x1a\xfb\x22\xf7\x06\xfb\x05\xf7\x24\xf7\x1f\xf7\x05\xf7"
+"\x03\xf7\x1c\xf7\x1f\xfb\x08\xf7\x06\xfb\x21\x1f\x8f\xfb\xbe\x15\xf5\x23\x05\x72\x67\x68\x80\x61\x1b\x60\x6e\x94\xa3\x6c\x1f\x5d"
+"\xb8\x15\x70\xaf\x82\xa6\xb4\x1a\xb7\x96\xae\xa3\xac\x1e\xf7\x02\xfb\x00\x05\xe8\x16\xf7\x02\xf6\x05\xa1\x6d\x94\x72\x66\x1a\x5a"
+"\x80\x66\x73\x6a\x1e\xfb\x2c\xf7\x29\x15\xfb\x03\xf7\x00\x05\xa3\xac\xae\x96\xb5\x1b\xb7\xaa\x81\x72\xae\x1f\x0e\xf8\x82\x16\x9b"
+"\x07\xfb\x15\x9e\x50\xce\xf7\x18\x1a\x9c\x6e\x91\x81\x94\x80\x08\x68\xa9\xba\x73\xb5\x1b\xd1\xc2\xc4\xd4\xd1\x59\xc2\x4c\x78\x80"
+"\x88\x7e\x70\x1f\x89\x8a\x82\x86\x86\x89\x08\xa1\xaa\x93\xa3\xa8\x1a\xd0\x53\xc1\x44\x44\x54\x55\x45\x70\x90\x7d\xa5\x61\x1e\x9c"
+"\x68\x78\x91\x76\x1b\x4f\x58\x52\x46\x43\xc3\x53\xd2\xca\xc0\xb1\xd2\xad\x1f\x8c\x78\x05\x85\x07\x8a\x53\x6e\x4c\x62\x6a\x72\x78"
+"\x79\x84\x42\x7c\x08\x7b\x07\x0e\xba\x1d\xf8\x66\xf7\x68\xde\x1d\xf9\x19\xf8\x83\x15\xa3\xf7\x00\x05\xca\x1d\xcb\xf7\xb5\x05\x97"
+"\x06\xaa\x97\x8d\x97\x99\x1f\x99\x95\x96\xa1\x9c\x1a\x95\x84\x9a\x82\x91\x1e\x92\x82\x81\x8d\x71\x1b\xfb\xbf\xfb\x34\xf7\x00\x1d"
+"\x0e\xf7\xe7\xf8\x41\x15\x4d\x7f\x62\x79\x60\x6b\x08\x45\x58\x60\x3f\x45\x1a\xfb\x02\xe2\x40\xf7\x16\xe5\xe7\xb1\xc9\xc6\x1e\xba"
+"\xbd\xa7\xc9\xc2\x1a\xc8\x70\xb7\x43\xc4\x1e\xfb\x03\xe2\x7d\x99\x9d\x1a\xa4\xa2\x96\xc0\x1e\xd9\x06\xb2\xa4\xa1\xac\xa0\x7c\x95"
+"\x6b\x1f\x4d\x06\x48\x59\x80\x75\x68\x1f\x64\x73\x6e\x5f\x68\x1a\x73\x98\x75\xac\x6d\x1e\xbe\x27\x15\xd9\xbe\x62\x4b\x3c\x34\x44"
+"\x28\x3f\x58\xb4\xc9\xd9\xe4\xd5\xea\x1f\x0e\xf6\xf7\xa2\x15\xe1\x20\xdc\xfb\x09\xaf\x47\xba\xe0\xe3\xf7\x0f\xdb\xeb\x4d\xd1\xfb"
+"\x10\xf7\x44\x6e\xc4\x60\x3a\x53\x3c\xfb\x06\xfb\x23\x08\x0e\xf8\x62\xd0\x1d\x0e\x33\x1d\xfb\x4c\xf8\x2c\x2b\x0a\x33\x1d\x4b\xf7"
+"\xcc\x45\x1d\x33\x1d\x59\xf8\x0c\x15\x62\x73\x0a\x6d\x1f\x0e\xf8\xd9\xf7\x7b\x15\xbe\xfc\x8d\x07\x8f\xf7\x10\xcd\xc7\xf7\x15\x88"
+"\x08\xf7\xc6\xbe\xfb\xba\xf7\x09\x0a\x49\x99\x50\xa4\x65\x1e\xa2\x68\xae\x6c\xac\x7e\x08\x7c\xaf\xa7\x87\xd4\x1b\xf7\xba\xbe\xfb"
+"\xc6\x06\xfb\x14\x88\x4a\xc5\x85\xf7\x0c\x08\x90\x07\x0e\x33\x1d\xfb\x47\xf7\xf1\x33\x0a\xf7\x98\xf7\xa3\x15\x94\x92\x8b\x8b\x93"
+"\x91\xa7\xa2\x8b\x8b\x92\x8f\x08\x9c\xa6\xa1\x91\xb0\x1b\xb9\xa2\x7c\x6c\x85\x8a\x85\x8a\x85\x1f\x4b\xfb\xb0\x81\x5c\x5e\x6a\x56"
+"\x8c\x19\x29\x06\x6a\x83\x89\x7e\x7b\x1f\x7a\x7e\x82\x7b\x7b\x1a\x6c\x9c\x7f\xb7\x1e\xf0\x06\xf7\x07\x8d\xeb\xd4\xa3\xf4\xcb\xf7"
+"\xb4\x18\x8e\x9a\x8d\x9b\x9a\x1a\xd3\x4f\xba\x2f\x58\x5c\x7b\x6c\x61\x1e\x93\xae\x05\x28\x06\x57\x6e\x75\x61\x72\x99\x7f\xae\x89"
+"\x1f\x5b\xfb\x6f\x05\x88\x06\x6b\x83\x89\x7e\x7b\x1f\x7a\x7e\x82\x7b\x7a\x1a\x7f\x90\x81\x95\x81\x1e\x83\x95\x91\x89\xa8\x1b\xf7"
+"\x04\x06\xab\x96\x2a\x0a\x9d\x9b\x1a\xa9\x79\x97\x60\x1e\x8a\x06\x0e\xf8\xe2\x89\x1d\xfb\x02\xe1\x45\xf7\x1a\x96\x97\x8b\x8c\x9c"
+"\x1e\x59\x65\x75\x67\x5f\x5d\x0a\xae\xd9\xc7\xe4\xab\x1f\xb3\x9a\x9b\x9d\xa7\x1a\xa3\x7a\x9c\x73\x80\x7f\x89\x88\x7e\x1e\x74\x29"
+"\x72\x87\x5d\x1b\x37\x60\xa3\xbf\x48\x1d\x0e\xf8\x58\xf7\xa2\x15\x89\x75\x7f\x8a\x75\x1b\x55\x66\x9b\xa2\x9f\xae\x9a\xb9\x9d\xa5"
+"\x89\x87\x9c\x1f\x87\xa1\x8c\x8b\x92\x1b\xa8\xa5\xa5\xa7\x99\x84\x96\x7d\x92\x1f\x96\x74\x5c\x94\x64\x1b\xfb\x06\x2f\x4c\x3e\x73"
+"\x94\x7c\xaa\x6c\x1f\x4b\x6e\x64\x59\x57\x1a\x48\xce\x5f\xf0\xbd\xd5\x9b\x9b\xa8\x1e\x9d\x95\x96\xa0\xa1\x1a\x9e\x7c\x9a\x79\x84"
+"\x81\x8a\x89\x81\x1e\x81\x5c\x76\x88\x6e\x1b\x5b\x6b\x9a\xa1\xa7\xc7\xa3\xd2\x9e\x9b\x8a\x89\x9d\x1f\x0e\xf8\x26\xf7\xa1\x15\x65"
+"\x06\x3f\x5f\x97\xa0\x9e\xaf\x98\xc0\xbd\x9b\x83\x6c\x9c\x1f\x6b\x9b\x98\x81\xa4\x1b\xa8\x9d\x9d\xaf\x92\x1f\x8e\xa0\x8d\x93\x91"
+"\x9d\x08\x90\x9d\x8d\x95\x94\x1a\xa6\x75\x9e\x6c\x76\x7e\x85\x7b\x7f\x1e\x9b\x6a\x6b\x91\x5d\x1b\xfb\x0b\x3e\x57\x3a\x74\x90\x79"
+"\x9a\x74\x1f\x4f\x6a\x71\x65\x58\x1a\x3c\xd5\x55\xf7\x01\xc3\xd1\x96\x9a\xb1\x1e\xb1\x99\x9b\x9d\xa6\x1a\xa7\x75\xa2\x70\x81\x7d"
+"\x88\x85\x77\x1e\x78\x4c\x74\x87\x66\x1b\x5f\x6a\x99\x9c\xa5\xcc\xa4\xcf\x9c\xa3\x8a\x8a\x99\x1f\x8f\x06\x8e\x06\x91\x8a\x05\xf7"
+"\x00\xf8\x21\x15\x9d\x96\x93\x98\x22\x0a\x7c\x81\x81\xf7\x10\x1d\xf7\x00\xf7\xdb\x15\x70\x83\xed\x0a\x84\x96\x98\x88\xa5\x1b\xf8"
+"\x14\x06\xa2\x98\x8d\x91\x95\x47\x1d\xfc\x14\xfb\x42\x15\x70\x83\x8a\x84\x80\x1f\x7a\x81\x80\x79\x4c\x1d\xf8\x14\x06\xa2\x99\x8d"
+"\x91\x94\x47\x1d\xfc\x14\xf7\xef\x15\x70\x83\x8a\x84\x80\x1f\x7a\x81\x80\x79\x4c\x1d\xf8\x14\x06\xa2\x98\x8d\x91\x95\x47\x1d\x0e"
+"\xf8\x71\xf7\x54\x15\x8a\xcf\x87\xa8\x7d\xaa\x08\xcc\x6e\x46\xb2\x36\x1b\xfb\x14\x3b\x37\xfb\x1a\xfb\x1a\xd8\x3c\xf7\x15\xeb\xce"
+"\xb4\xd7\xa5\x1f\x8c\x8e\x8d\x8f\x05\x5e\x06\x8a\x89\x8b\x8a\x88\x87\x08\x5a\x72\x5a\x70\x4a\x1b\x41\x69\xa1\xc8\x77\x1f\xd6\x07"
+"\xf7\x96\xb4\x15\xfb\x94\xd3\x06\xc5\xa9\xab\xa0\xc8\x1b\xcb\xbd\x6d\x5a\x9e\x1f\x0e\xc3\x1d\x0e\xc3\x1d\xf7\x75\xf7\x39\x15\x9e"
+"\x97\x93\x97\x22\x0a\x7b\x82\x80\x87\x82\x7e\x1e\xfb\x12\x38\x05\x79\x7f\x82\x7f\x7d\x1a\x7c\x96\x80\x9b\x94\x26\x0a\xf7\xb2\xf8"
+"\x8a\xd6\x1d\xf7\xbb\xf8\x98\xd6\x1d\x0e\xf8\x30\xf7\x9e\x15\xfb\x6b\xfb\xb9\x58\xf7\xed\xf8\xc6\xfb\xed\x58\xf7\xb9\xfb\x56\xfb"
+"\xb9\x58\x07\x0e\xf7\xd6\xf7\xac\x15\xf6\x94\xe0\xe9\xf7\x01\x1a\xf7\x0a\x2b\xea\xfb\x0a\xfb\x0a\x2c\x2c\xfb\x0a\xfb\x01\xe0\x2d"
+"\xf5\x82\x1e\x32\xfb\x29\x64\xf7\x29\xfb\x2c\xb7\xf7\x2c\xf7\x28\xb2\xfb\x28\x07\x72\xf8\x69\x15\xeb\xd8\x40\x2f\x2d\x3f\x3f\x2d"
+"\x2e\x3f\xd6\xe9\xe6\xd7\xd8\xe5\x1f\x0e\xf7\x50\xf7\x7c\x15\xa8\x89\x06\x8a\x8a\x87\x89\x86\x1e\x8a\x86\x8a\x86\x86\x1a\x71\x9d"
+"\x79\xa5\x9c\x9d\x93\x98\x98\x1e\x92\x92\x94\x9e\x8f\x9f\xa3\xf7\x01\x18\x8d\x95\x8d\x98\x91\x1a\xa0\x78\x9c\x73\x6c\x6e\x73\x6c"
+"\x85\x1e\x8a\x85\x8a\x88\x8a\x1a\x8a\x87\x05\x6e\x06\xa7\xf7\x12\x05\xf7\x3c\x06\x88\x80\x05\x89\x80\x89\x7e\x85\x1a\x76\x9f\x7b"
+"\xa4\x9a\x9c\x92\x99\x9a\x1e\x97\x96\x8e\x92\x90\xa5\xa5\xf7\x08\x18\xfc\x10\x06\x6e\x7d\x88\x80\x7e\x1f\x7c\x80\x81\x77\x7b\x1a"
+"\x6f\x9c\x7d\xb0\x1e\x3c\xfb\xfa\x05\x71\x80\x88\x7f\x7c\x1f\x7a\x7e\x82\x7b\x7a\x1a\x7f\xab\x1d\x91\x89\xa8\x1b\xf7\x37\x06\xaa"
+"\x98\x8f\x96\x9a\x1f\x98\x96\x95\x9e\x9a\x1a\xaa\x7b\x97\x5f\x1e\x50\x06\xf7\xd6\x16\x99\xc9\x92\x92\x05\xe4\xdc\x8b\x8b\x9c\x1b"
+"\x93\x94\x86\x80\x94\x1f\x7d\x98\x92\x87\x99\x1b\xa9\xa3\xa6\xac\xb4\x61\xb0\x5d\x67\x75\x7e\x5b\x60\x1f\x96\xbb\x05\x23\x06\x6e"
+"\x7d\x87\x81\x7e\x1f\x7c\x80\x81\x77\x7b\x1a\x6f\x9c\x7d\xb0\x1e\x6b\xfb\x26\x05\x71\x82\x8a\x84\x80\x1f\x73\x7e\x7e\x78\x76\x1a"
+"\x7f\xab\x1d\x92\x89\xa7\x1b\xf7\x40\x06\xaa\x96\x4f\x0a\xa9\x79\x97\x61\x1e\x0e\xf7\xa9\xf7\x23\x15\x42\xf7\xae\x05\x4d\x06\x58"
+"\x6b\x73\x65\x6d\x9a\x81\xb8\x8a\x1f\xdc\xfb\xd0\x05\x6c\x56\x7e\x62\x5c\x1a\x5c\xa2\x6e\xb1\xc6\xa6\xc8\xf7\x25\x91\x1e\xf7\x4d"
+"\xf7\xb5\x05\x9e\x97\x9c\x9e\x90\x1b\x8c\x06\x8a\x8e\x8b\x8f\x8a\x1e\x8d\x06\x8a\x8d\x8d\x8b\x8e\x1b\xa7\xa3\xa3\xa6\xad\x71\xa0"
+"\x61\x53\x69\x70\x34\x53\x1f\x0e\x70\x1d\x63\xf7\xdd\x2b\x0a\xc0\x1d\xdf\xf7\x87\xaf\x0a\x70\x1d\xf7\x56\xf7\xb7\x15\x8f\x8f\x8e"
+"\x8f\x8e\x8e\x8c\x8c\x19\x93\x95\x8e\x92\x96\x1a\x9d\x7d\x98\x78\x7b\x7c\x83\x7b\x7d\x1e\x23\xfb\x0e\x05\x7b\x79\x86\x82\x7d\x1a"
+"\x7b\x9a\x7d\x9d\x9a\x9b\x94\x9c\x99\x1e\x0e\xc0\x1d\xe9\xf7\xbd\x5b\x1d\xf8\xee\xf7\xf8\x15\xfc\x81\xf7\x65\x05\x90\x7e\x80\x8e"
+"\x82\x1b\x7b\x78\x7f\x7b\x83\x1f\x8a\x89\x05\x88\x85\x89\x84\x83\x1a\x75\x97\x7d\xa6\x7f\x1e\xf7\xb2\xfb\x0b\xfb\xb2\xfb\x0f\x05"
+"\x70\x7f\x7f\x7d\x75\x1a\x85\x8d\x83\x8e\x84\x1e\x8c\x8a\x05\x7a\x93\x9e\x7f\x9c\x1b\x93\x97\x8e\x90\x97\x1f\x7f\x5f\x15\x65\x74"
+"\x79\x6d\x6d\xa2\x79\xb1\x1f\xf8\x1e\x06\xb0\xa2\x9d\xa9\xa9\x74\x9d\x66\x1f\x0e\xf7\x94\xf8\x67\x15\xf7\x02\x06\xad\xa0\x9d\xa8"
+"\x9e\x7e\x95\x70\x1f\xfb\x00\x06\x8d\x98\x8c\x91\x93\x1a\xa7\x7d\x99\x6f\x66\x77\x77\x5a\x7e\x1e\x5e\x06\x69\x76\x79\x6e\x77\x98"
+"\x82\xa6\x1f\xb6\x06\x3b\xfc\x00\x54\x0a\xf7\xb3\xf8\xef\x15\xfb\x0d\x06\x6c\x80\x2a\x1d\x7b\x1a\x7a\x96\x7b\x99\xf7\x6e\x1d\x32"
+"\xfc\x21\x05\xf7\x05\x0a\x6d\x9d\x7f\xb5\x1e\xf7\x04\x06\xa9\x99\x29\x1d\x9c\x80\x9c\x7d\x32\x1d\x8b\x77\x4e\x0a\xcd\xa3\x96\xba"
+"\x1b\xb7\xbe\x0a\xa8\x9a\x8f\x96\x98\x1f\x9b\x97\x94\x9d\x9b\x1a\x9d\xf6\x1d\xf7\x44\xf7\xdd\xf7\x05\x1d\x77\x86\x85\x4d\x1d\x26"
+"\x0a\xf7\xc0\x75\x15\x9b\xd2\xba\xdb\xe3\xf7\x02\x08\xd5\xe9\xa4\xbf\xc9\x1a\xca\x55\xc0\x4a\x4b\x5d\x62\x3f\x76\x1e\xd9\x72\x5f"
+"\xb2\x4b\x1b\x4a\x58\x56\x47\x57\x9b\x68\xcc\x33\x1f\xf7\x09\xfb\x30\xa9\x56\xa0\x3b\x08\x0e\xd1\x16\xf8\x61\xf7\xcb\x06\xfb\x7b"
+"\xf7\x92\xfb\x7a\xfb\x92\x05\xbd\xfb\x99\x15\xf7\x85\x07\xf7\x48\xf7\x5a\xf7\x49\xfb\x5a\x05\xfb\x85\x07\x0e\xf8\x26\x35\x1d\x44"
+"\xa9\x0a\xf7\xee\xf8\x3d\x15\xfb\x44\x06\x6a\x7c\x0a\x79\x7a\x1a\x6f\x9e\x7e\xb6\x1e\xcd\x2e\x0a\x47\x25\x1d\x6e\x9d\x7e\xb6\x1e"
+"\xf7\x84\x06\xa7\x9a\x8f\x96\x99\x83\x1d\x4c\x06\xf3\x5d\x1d\xf7\x5c\xfb\x40\x84\x0a\x55\x8c\x19\xfb\x03\x26\x1d\xf7\x05\x06\xf7"
+"\x04\xf1\xd9\xf1\xa0\x1f\xed\xf8\x4d\x05\xfb\x6b\x25\x0a\xf7\x6e\xf7\xac\x15\xfb\x13\x06\x73\xfb\x00\x05\xf7\x13\x06\x0e\xf8\x54"
+"\x35\x1d\x49\xf8\x8a\x33\x0a\xf7\xc0\xf7\x8a\x15\x52\xba\xc8\x69\xbf\x1b\xa7\xa5\x93\x98\x9f\x1f\xaa\xa1\xa2\xba\xb2\x1a\xd0\x50"
+"\xc3\x43\x54\x4f\x68\x54\x61\x1e\xc6\x59\x56\xa9\x55\x1b\x43\x50\x52\x44\x47\xc4\x52\xd1\xc7\xb8\xa4\xca\xc1\x1f\xae\xb2\x15\xb9"
+"\xab\xbd\xa9\xb6\x1b\xba\xaa\x6d\x5e\x5e\x6c\x6b\x61\x77\x76\x91\x97\x75\x1f\x7a\x94\x8b\x8b\x5c\xb9\x08\x47\x8f\x15\x5c\x66\x58"
+"\x6d\x61\x1b\x5e\x6e\xaa\xba\xb6\xaa\xa9\xb8\xb4\xb3\x74\x58\xba\x1f\x0e\xf7\xa7\x5c\x15\x44\x84\x6f\x7b\x84\x88\x8d\x99\x83\x1e"
+"\x9a\x80\x7c\x94\x7a\x1b\x71\x79\x7a\x72\x6d\xa5\x76\xb0\xa7\xa7\x98\xa3\xa2\x1f\xa9\xab\x93\xa9\xe4\x1a\xf8\x8a\x07\xca\x92\xa6"
+"\x9d\xc0\x0a\xf7\xda\xf9\x0e\x15\x57\xfd\x35\x06\x4b\x83\x70\x7a\x86\x87\x8f\x94\x85\x1e\xa0\x7d\x81\x92\x77\x1b\x72\x78\x7a\x72"
+"\x6e\xa4\x75\xae\xa3\xa4\x94\x9a\x9f\x1f\xb0\xa8\x99\xb6\xe4\x1a\x0e\xf7\xa6\xfb\x4a\x15\xbf\xf9\x35\x06\xca\x93\xa6\x9c\xc0\x0a"
+"\xf8\xad\xf7\x74\x15\xf7\x2a\x86\xae\x70\xb8\x1e\xce\x61\x3e\xb4\x35\x1b\x57\x5b\x7c\x70\x62\x1f\x58\x68\x6e\x5d\x81\x4d\x08\x86"
+"\x69\x8a\x75\x2a\x1a\xfb\x52\x07\x75\x94\x7f\x9c\x9b\x95\x98\xa0\x1e\xf7\x55\x07\x8c\xe3\x8b\x8b\x95\x1a\x8e\xbf\x92\xa9\x9a\xa1"
+"\x08\xbd\xad\xc8\xab\xcb\x1b\xc8\xc6\x6e\x5e\xab\x1f\xa6\x66\x91\x66\xfb\x1c\x1a\xfb\x55\x07\x75\x94\x7f\x9b\x9b\x96\x99\x9f\x1e"
+"\x0e\xf7\xc5\xf8\xc7\x15\xfb\x33\xfb\x13\xfb\x10\xfb\x2f\xfb\x32\xf7\x11\xfb\x12\xf7\x31\xf7\x2f\xf7\x12\xf7\x12\xf7\x30\xf7\x2d"
+"\xfb\x12\xf7\x14\xfb\x2b\x1f\x30\xfb\x34\xf7\x2c\x1d\xf7\xa2\x34\x15\x86\x48\x82\x6c\x74\x69\x08\x5a\x6a\x5a\x72\x4b\x1b\x4f\x5e"
+"\xa0\xb4\x6a\x1f\x6e\xb0\x80\xad\x85\xd4\x95\x63\x93\x7a\x9e\x75\x08\x61\xae\xbc\x76\xca\x1b\xc9\xbc\xa0\xb5\xae\x1f\x9e\xa1\x93"
+"\x9c\x95\xb3\x08\x29\xe2\xf7\x2c\x1d\x0e\xf8\x54\x67\x1d\x88\x7f\xb6\x0a\xf7\x9c\xe5\x1d\xab\xac\xbb\xa9\x1f\xce\xb4\x8b\x8b\x95"
+"\x99\x08\x91\x93\x8f\x97\x95\x1a\x9c\x81\x9b\x7c\x69\x0a\xfb\x08\x06\xec\x5d\x1d\x0e\xa5\x0a\x0e\xf7\xa4\xf8\xe4\x15\x69\x6c\x6e"
+"\x6a\x73\x68\x0a\x9e\x79\xa4\xae\xaa\xa9\xab\xa4\x79\x9c\x70\x1f\xfb\x99\xfc\x67\x15\x86\x74\x89\x7c\x7e\x1a\x56\xb6\x67\xcc\xc6"
+"\xb5\xa8\xb4\xa4\x78\x9e\x73\x84\x83\x89\x87\x81\xf7\x71\x1d\x93\x8d\x8b\x8b\x8d\x95\x1f\xc2\xf7\x93\x05\x8d\x94\x8d\x99\x92\x1a"
+"\xa2\xf7\x1d\x0a\xf8\x42\xd0\x1d\xfb\xd2\xfc\x53\x15\x87\x77\x89\x7b\x7c\x1a\x55\xb5\x68\xcb\xc6\xb5\xa8\xb4\xa4\x79\x9e\x73\x83"
+"\x83\xf7\x3b\x1d\x8e\x8d\x92\x1f\xc2\xf7\x93\x05\x8d\x96\x8d\x96\x92\x1a\xa3\xf7\x1d\x0a\xa5\x0a\xf7\x40\xf7\x58\x15\x9d\x97\x94"
+"\xf7\x07\x1d\x26\x0a\xf8\x54\x67\x1d\x89\x7e\x7c\xad\x1d\x6f\x9e\x7e\xb6\x1e\xd4\x2e\x0a\xfb\x0a\x25\x1d\x6e\x9d\x7e\xb6\x1e\xf7"
+"\xeb\x06\xa8\x9a\x8f\x96\x98\x83\x1d\xfb\x08\x06\xf7\x41\xf8\xa7\x15\x7d\xf7\x37\x1d\xa8\x5f\x7a\x93\x74\x1b\x6c\x6b\x7c\x6e\x6b"
+"\x1f\x6f\x71\x7e\x78\x7a\x1a\x7c\xf7\x2b\x0a\xaf\x94\x8e\x1d\xa0\xa1\x94\x99\x98\x1a\x99\x7d\x97\x7b\x1e\x0e\xf8\x2d\xa4\x0a\xf7"
+"\x47\xf7\x94\x15\xe4\x31\x05\x81\xf7\x1f\x1d\xfb\x10\x05\x6e\x77\x87\x1d\xf7\x9c\xf7\xd6\x15\xb4\x90\xa4\xa1\xac\x1a\xaa\x7a\x97"
+"\x5f\x1e\x26\x06\x59\x6b\x72\x65\x6f\x9e\x7e\xb5\x1f\x90\x06\x5b\xfb\x6d\x05\x5a\x89\x6e\x74\x66\x1a\x6e\x9d\x7e\xb6\x1e\xf7\x05"
+"\x06\xbd\xab\xa3\xb0\xa9\x79\x98\x60\x1f\x84\x06\x9a\xcd\xc5\x8a\xb5\x59\xad\xfb\x01\x19\x87\x8c\x88\x8c\x88\x1e\xda\x06\xbd\xab"
+"\xa2\xb1\xa9\x79\x98\x60\x1f\x75\x06\x7c\xb4\x70\xb5\x6a\xa8\xf7\x29\xf4\x18\xbc\x8c\xaa\xa2\xb0\x1a\xa9\x79\x98\x60\x1e\x50\x06"
+"\xfb\x78\xfb\x3a\x05\x0e\x8e\x0a\xf5\xfb\x0b\x15\x8c\x8c\x8c\x8c\x8d\x8c\x8e\x64\x0a\x7d\xf7\x0f\x0a\x7a\x79\x87\x83\x65\x0a\xf7"
+"\x92\xf7\x32\x15\x9b\x96\xda\x39\x05\x7b\x7c\x84\x7e\x7a\x1a\x6e\x9d\x7e\xb5\x1e\xf7\x0b\x20\x0a\x9c\x1a\x97\x86\x97\x81\x93\x1e"
+"\x93\x82\x82\x8c\x6f\xd4\x0a\x9d\x1a\xa8\x7a\x97\x5f\x1e\xfb\x04\x82\x0a\x7e\x82\x7b\x79\x1a\x81\x8c\x86\x91\x82\x1e\x3a\x56\xaa"
+"\xf7\x1f\x05\xfb\x0d\x06\x6d\x7f\x88\x80\xf7\x0e\x0a\x96\x06\x5a\xfb\x6e\x05\x7f\x06\x6b\x80\x88\x7f\x7c\x1f\x7c\x7e\x82\x7a\x7a"
+"\x1a\x6e\x9d\x7e\xb5\x1e\xf7\x0c\x06\x0e\x43\x1d\xf7\x56\x30\x0a\xcd\xf2\x15\x60\x8a\x6c\x73\x69\x1a\x6d\x9e\x7d\xb5\x1e\xf0\x06"
+"\xbd\xab\xa3\xb0\xa3\x7f\x98\x70\x90\x1f\xf7\x0f\xf7\x3b\xc8\xfb\x3b\x05\x64\x85\x73\x74\x6b\x1a\x6d\x9c\x7f\xb8\x1e\xe7\x06\xbd"
+"\xab\xa2\xb0\xa9\x7a\x98\x61\x1f\xfb\x47\xf8\x88\x05\x26\xf7\x6d\x1d\xb8\x06\xb1\xfb\x00\x05\x0e\x43\x1d\xf7\xc5\xf8\x50\xde\x1d"
+"\x43\x1d\x56\xfb\x72\x23\x1d\x43\x1d\xf7\x73\xf7\xc0\x15\x60\x60\x64\x64\x6b\xf7\x2e\x0a\xb3\xb2\xab\x73\xa2\x69\x1f\x82\x06\x0e"
+"\xf7\x7d\xf7\xf7\x15\xf7\xb1\xf7\x0b\x05\xa6\x97\x97\x99\xa1\x1a\x92\x89\x92\x88\x92\x1e\x8a\x8d\x05\x9a\x84\x78\x98\x7a\x1b\x82"
+"\x80\x88\x86\x7e\x1f\xfc\x80\xfb\x65\xf8\x80\xfb\x6b\x05\x86\x97\x97\x88\x93\x1b\x9c\x9f\x98\x9b\x92\x1f\x8c\x8c\x05\x8e\x92\x8d"
+"\x93\x91\x1a\xa1\x7f\x99\x70\x97\x1e\x6c\xfb\x7b\x15\xb0\xa2\x9d\xa9\xa9\x75\x9d\x65\x1f\xfc\x1d\x06\x65\x74\x79\x6d\x6d\xa2\x79"
+"\xb1\x1f\x0e\xf7\x2f\xf7\x4b\x15\x78\x58\x74\x73\x69\x87\x08\x60\x83\x75\x76\x6a\x1a\x6e\x9d\x7e\xb6\x1e\xf7\xd4\x06\xb9\xa9\x95"
+"\xa3\xa4\x1f\x9f\x9d\x98\xa9\xa4\x1a\xa3\x79\x9b\x70\x6e\x75\x7c\x6f\x80\x1e\xfb\x55\x06\x9c\xa6\x96\xa2\x95\xa8\x08\xf7\x04\x06"
+"\xa3\x9c\x9a\xa1\x9c\x82\x92\x77\x1f\xfb\x06\x06\x8c\xa5\x05\xf7\x0c\x06\xa3\x9c\x9a\xa0\x9d\x82\x92\x77\x1f\xfb\x1a\x06\x89\xaf"
+"\x8a\xa0\x91\x1a\xbd\xac\xab\xbe\xa5\x9c\x84\x7b\x97\x1e\x71\x9d\x91\x88\x9f\x1b\xad\xaa\xa9\xac\xbb\x47\xb7\x41\xfb\x0c\x2a\x30"
+"\xfb\x06\x81\x8c\x84\x8d\x71\x1f\x57\x06\x72\x7b\x7d\x75\x7a\x94\x83\x9f\x1f\xcf\x06\x8a\x71\x05\x41\x06\x72\x7b\x7d\x75\x79\x94"
+"\x84\x9f\x1f\x0e\xf7\xd9\xf2\x15\xd9\xf7\xf4\x05\xa9\x92\xa8\x99\xc3\x1b\xab\xb2\x87\x85\xb1\x1f\x89\x97\x95\x8a\x92\x1b\xaa\xaa"
+"\xaa\xaa\x9f\x7f\x98\x73\x92\x1f\x93\x6c\x4e\x92\x61\x1b\xfb\x0e\x33\x53\x31\x77\x1f\x84\x6b\x05\x60\x06\xe9\x0a\xb4\x39\x0a\x54"
+"\x8a\x1d\x9d\x7f\xb5\x1e\xf7\xbe\x7a\x1d\x0e\xf7\xe4\xf8\x31\x15\x91\x75\x77\x8e\x76\x1b\xfb\x0b\x2c\x2c\xfb\x0a\xfb\x0a\xea\x2c"
+"\xf7\x0a\xf7\x0a\xea\xea\xf7\x0a\xdb\x5e\xd4\x45\xb0\x1f\xe3\xf7\x53\x05\x61\xaa\xaa\x6d\x95\x1b\x92\x8f\x8f\x90\x8f\x89\x8f\x85"
+"\x95\x1f\x75\xad\x78\xc0\x88\xaf\x08\x9e\x8a\x8a\x8e\x85\x1b\x87\x87\x89\x83\x81\x1f\x78\x7a\x4a\x73\x67\x88\x08\x79\x88\x87\x89"
+"\x83\x1a\x80\xa3\x84\xb2\x1e\x9f\x06\x9f\x8c\x05\x8d\x06\xfb\x31\xfb\x79\x15\xea\xd8\x40\x2f\x2d\x40\x3f\x2d\x2e\x3f\xd6\xe8\xe7"
+"\xd7\xd8\xe5\x1f\x0e\xf7\xb5\xf7\xc4\x15\xe4\xf7\x58\x05\x97\xa6\x8e\x94\x86\x1d\x0e\xf7\xa6\xf7\x28\x15\x90\x7e\x7a\x8f\x7d\x1b"
+"\x57\x5d\x5e\x59\x6e\xa1\x78\xad\xd3\xbe\xc2\xda\x1f\xf7\x8b\x07\xba\x84\xb3\x4b\x46\x1a\x60\x83\x69\x77\x5e\x1e\xa2\x06\xa9\xb0"
+"\x9b\xb9\xbc\x1a\xca\x73\xc7\x59\xc7\x1e\x61\xbe\x8a\x8c\x86\x90\x85\x94\x19\xbc\x66\x07\x0e\xf7\xd8\xf8\x71\x15\xa1\x70\xa2\x77"
+"\xa2\x7e\xc8\x6a\x96\x84\x90\x82\x08\x92\x7f\x8f\x78\x74\x1a\xfb\x89\x07\x92\x79\x71\x90\x76\x1b\x3f\x48\x53\x4c\x66\xaa\x74\xbd"
+"\xc3\xc0\xa3\xb4\xac\x1f\xa2\xa7\x92\xa2\x8e\xbe\x08\xf8\x14\x07\x8c\xd8\x67\xd8\x59\xa9\x34\xc1\x18\x80\x94\x05\x7d\x9a\x84\x9e"
+"\xa3\x1a\x99\x5b\xfc\x9b\x07\x92\x79\x73\x8f\x76\x1b\x41\x49\x53\x4c\x66\xaa\x74\xbb\xc2\xbf\xa3\xb4\xac\x1f\xa1\xa7\x92\xa2\x8e"
+"\xbf\x08\xf7\x2c\xf7\x40\x15\xfb\x0d\xca\x70\xb3\x88\xf7\x0d\x8e\x89\x18\xf7\x0d\x4c\xa5\x64\x90\xfb\x0e\x08\x0e\x3a\x0a\xf7\xc3"
+"\xf7\x67\x2f\x1d\xf7\xd1\xf8\x3d\x15\x28\x06\x71\x82\x8a\x85\x80\x1f\x75\x7f\x7d\x76\x75\x1a\x7f\x90\x7f\x95\x84\x1e\x93\x84\x92"
+"\x89\x9f\x8a\x5a\xfb\x6f\x18\x89\x67\x0a\xa7\x99\xf7\x25\x1d\x6f\x1b\x8a\x06\xb0\xf7\x3c\x05\xba\xc3\xae\x9b\xb8\x1b\xba\xa5\x7c"
+"\x71\x83\x8a\x84\x8a\x83\x1f\x66\xfb\x3b\x05\x5f\x6d\x71\x68\x6e\x9d\x7e\xb6\x1f\xe4\x20\x0a\x9c\x1a\xa6\x7c\x97\x68\x8d\x1e\xb0"
+"\xf7\x3d\x05\x8f\x9a\x8c\x99\x9c\x1a\xd2\x4e\xbb\x31\x55\x67\x7e\x64\x55\x1e\x76\xf7\x43\x15\x9a\x9b\x91\x96\x97\x1a\x9d\x7d\x98"
+"\x78\x7a\x80\x85\x77\x79\x1e\xfb\x01\xfb\x0c\x05\x7c\x7a\x85\x80\x7f\x1a\x7a\x9a\x7e\x9e\x9b\x97\x92\x9e\x9c\x1e\x0e\x3a\x0a\xf7"
+"\x22\xf7\x4b\x45\x1d\x3a\x0a\xb3\xfc\x8c\x23\x1d\xf7\xda\xf7\x7c\x15\xf7\x93\xbd\xfb\x79\x06\xec\xf7\x49\x05\xf7\x18\xbe\x22\x06"
+"\x97\xa9\x96\xa1\x96\x9a\x08\x8f\x90\x8d\x8f\x8e\x1a\x96\x7e\x96\x7f\x7e\x85\x87\x7b\x83\x1e\x60\x3a\x05\xfb\x1a\xf7\x09\x0a\xfb"
+"\x10\xb7\x3b\xe6\x63\x1e\x6e\x55\x05\x87\x83\x89\x85\x86\x1a\x7f\x97\x80\x98\x97\x92\x90\x9a\x93\x1e\xac\xca\x05\x87\xac\x8f\x8b"
+"\xb8\x1b\xf7\xba\xbe\xfb\xc6\x06\x73\x84\x8b\x8d\x7e\x1f\xb2\xf7\x47\x15\x31\xfb\x3c\x4a\xa1\x68\xc3\x87\xe0\x19\x90\x07\xf7\xd2"
+"\xf7\x7b\x15\x2a\xfb\x49\x05\xfb\x71\x90\x06\x91\xf7\x0c\xcc\xc6\xf7\x14\x88\x08\x0e\xf8\x54\xf8\x32\x15\x92\x97\x05\x91\x96\x8e"
+"\x94\x95\x1a\xa9\x71\xa4\x6c\x78\x77\x7d\x77\x7f\x1e\x67\x4c\x05\xfb\x68\x06\x70\x83\x8a\x84\x80\x1f\x7a\x81\x80\x79\x4c\x1d\xf7"
+"\x29\x06\x67\x4b\x05\xfb\x05\x06\x71\x82\x8a\x84\x80\x1f\x7a\x82\x80\x78\x4c\x1d\xbd\x06\x7c\x71\x05\x85\x81\x87\x7d\x81\x1a\x71"
+"\xa5\x74\xa9\xa1\x9e\x97\x9f\x97\x1e\xb7\xd8\x05\xf7\x62\x06\xa2\x98\x8d\x91\x95\x1f\x9c\x94\x96\x9e\x9e\x1a\x9d\x82\x9c\x7c\x95"
+"\x1e\x93\x7f\x81\x8d\x6f\x1b\xfb\x23\x06\xaf\xcb\x05\xf6\x06\xa2\x99\x8d\x91\x94\x47\x1d\x0e\xf7\x7f\xf8\x3d\x15\x28\x06\x62\x6d"
+"\x72\x6a\x73\x9e\x7c\xab\x1f\xa2\x06\xee\xfb\xe2\x05\xd9\x06\xab\xa4\x96\x94\xb2\xad\x08\xf7\x13\xf7\x04\xbe\xd9\xdb\x1a\xa9\x84"
+"\xaa\x7f\xa0\x1e\x9a\x82\x7e\x93\x78\x1b\x6a\x6a\x6e\x6c\x86\x8b\x88\x8c\x87\x1f\x93\x6d\x8c\x88\x7b\x1a\x52\x60\x4d\x2c\x3c\x1e"
+"\x0e\xda\x1d\x49\xf7\xde\xac\x0a\x24\x0a\xc1\xf7\x98\x5b\x0a\x24\x0a\x4e\xf7\xa3\x33\x0a\xf7\xaa\xaf\x15\x68\xa5\xaa\x7b\xb3\x1b"
+"\xf6\xd5\xf7\x02\xf7\x32\x9a\x0a\x5c\x98\x69\xa6\x70\x1e\x74\xa3\xad\x7d\xab\x1b\xb0\xac\x9a\xaf\xb3\x1f\x0e\xf7\xa9\xa7\x15\x6e"
+"\xa6\xaa\x7d\xb1\x1b\xf7\x01\xd5\xf7\x01\xf7\x33\x9a\x0a\x36\xc1\x4f\xd8\xaf\xab\x98\xa9\xb3\x1e\xf7\x66\xf8\xad\x15\x9e\x97\x93"
+"\x97\x22\x0a\x7c\x81\x81\x87\x82\x7d\x1e\xfb\x12\x38\x05\x79\x7f\x82\x7f\x7d\x1a\x7c\x96\x80\x9b\x94\x26\x0a\xd8\x1d\xf7\xf3\xf8"
+"\x49\x15\x3e\x32\x69\x57\x52\x1f\x53\x57\x67\x42\x4d\x1a\x23\xe5\x40\xf7\x13\xf7\x39\xf7\x25\xf7\x10\xf7\x21\xf7\x00\x32\xda\xfb"
+"\x0f\x1e\x76\x23\x15\xd3\xbe\x5f\x4e\x43\x35\x48\x2e\x43\x54\xb5\xc2\xa9\x9b\xab\xa8\xa7\x1f\xb2\xb3\xb7\x9d\xc1\x1b\xf7\x19\xf7"
+"\x7c\x15\x9e\x97\x93\x97\x22\x0a\x7b\x82\x80\xf7\x10\x1d\xcf\x8e\x15\xf8\x66\xec\xfc\x02\xf7\xf5\x27\x06\x0e\xbf\x1d\xf7\x1e\xf7"
+"\xa0\x2f\x1d\xf7\x2b\xf8\xbc\x15\x7d\x8c\x95\x82\x9a\x1b\xac\x8c\x05\xbb\xc4\x77\x6c\xb5\x1f\xa8\x76\x9e\x76\xa7\x60\x08\xa7\x5f"
+"\x66\x96\x57\x1b\xfb\x16\x24\x28\xfb\x11\xfb\x11\xf2\x27\xf7\x17\xf7\x15\xf3\xee\xf7\x10\xe9\x64\xf7\x00\x4e\xd1\x1f\xcb\x55\x33"
+"\xb0\x29\x1b\x70\x88\x8a\x84\x84\x1f\x87\x87\x89\x84\x84\x1a\xf7\x27\xfb\x40\x15\xf3\xdb\x40\x28\x2b\x3b\x3e\x26\x26\x3a\xd8\xec"
+"\xea\xdb\xd9\xee\x1f\x0e\xf7\x92\xf7\x6f\x15\x98\x06\xf7\x04\xe0\xe0\xf7\x03\xeb\x55\xc0\x29\x1f\x35\x06\x74\x85\x8a\x85\x7f\x1f"
+"\x78\x80\x7e\x76\x75\x1a\x6f\x99\x7d\xab\x1e\x3c\xfb\xfa\x73\x8c\x82\x87\x7c\x7f\x19\x7d\x7e\x83\x7c\x79\x1a\x7f\x8f\x81\x93\x82"
+"\x1e\x81\x94\x90\x8a\xa5\x1b\xf7\x18\x06\xaa\x96\x8e\x97\x9a\x1f\x9b\x97\x94\x9d\x9b\x1a\xa9\x79\x97\x61\x1e\x6f\x06\xda\xf7\xf9"
+"\x15\xb0\x87\x97\x7e\x69\x1a\x71\x82\x73\x7a\x7b\x1e\x7f\x7e\x7f\x87\x6d\x88\x08\xf7\xa3\x44\x15\x90\x9b\x8c\x8e\x96\x1a\xa2\x79"
+"\x9a\x70\x68\x71\x72\x62\x84\x1e\x88\x7b\x05\x76\x83\x8a\x84\x81\x1f\x7a\x81\x7e\x74\x77\x1a\x6e\x99\x7e\xaa\x8a\x1e\x85\x6f\x8a"
+"\x80\x7d\x1a\x53\xbd\x63\xd0\xbb\xab\xa2\xb0\xa1\x7d\x9d\x78\x87\x88\x8b\x8a\x88\x1e\x88\x7f\x8b\x8b\x84\x1b\x7b\x82\x95\x9d\x91"
+"\x8c\x90\x8d\x99\x1f\xa9\x93\x8d\x91\x98\x1f\xa0\x96\x9a\xa1\x9f\x1a\xab\x7a\x96\x5d\x1e\x0e\xf7\xbf\x7c\x15\xcc\x92\xbb\x99\xb1"
+"\xa4\x08\xd1\xb8\xb9\xe0\xe0\x1a\xf6\x40\xdf\x2d\x68\x68\x7d\x72\x72\x1e\x78\x79\x80\x72\x80\x5e\x5a\xfb\x6f\x18\x5e\x97\x76\xa8"
+"\xbc\x1a\xc9\xa3\xba\xc7\xc1\x1e\xa0\x9f\x93\x98\x9e\x1a\xa4\x7a\x9b\x6f\x63\x63\x70\x55\x65\x1e\x64\x54\x78\x53\x4e\x1a\x2a\xc4"
+"\x41\xe9\x72\x1e\x6f\xfb\x17\x05\x89\x82\x89\x7e\x85\x1a\x73\x9d\x7b\xa7\xae\xa3\xa2\xb6\x94\x1e\xef\xf8\x56\x15\x9e\x8f\x94\x94"
+"\x98\x1b\xac\xa7\x63\x5c\x3c\x58\x52\x37\x78\x1f\x0e\xf7\xb1\xf7\xd6\x15\xf7\x3f\x06\x5a\xfb\x6e\x05\x89\x06\x6b\x80\x88\x7e\x7c"
+"\x1f\x7b\x7f\x82\x7a\x7b\x1a\x6c\x9d\x7f\xb7\x1e\xf7\x04\x06\xaa\x93\x8d\x98\x9c\x1f\x9b\x98\x94\x9c\x9b\x1a\x97\x86\x96\x81\x94"
+"\x1e\x94\x81\x84\x8d\x6f\x1b\x89\x06\xbc\xf7\x6e\x05\x94\x06\xa9\x96\x4f\x0a\xa8\x79\x98\x61\x1e\xfc\x27\x06\x6d\x80\x88\x7f\x7c"
+"\xf7\x5f\x1d\x92\x06\x5a\xfb\x6e\x05\x88\x06\x6b\x83\x88\x7e\x7b\x1f\x7a\xf7\x4e\x1d\x92\x89\xa7\x1b\xf7\x04\x06\xac\x95\x4f\x0a"
+"\xa9\x79\x98\x60\x1e\x8a\x06\x0e\xf8\x93\xf8\xae\x15\x92\x06\xae\x8a\xa3\x9f\xab\x1a\x93\x07\x8a\xac\x74\x9f\x66\x89\x08\xfc\x44"
+"\x06\x66\x8d\x74\x77\x8a\x6a\x08\x83\x07\x8c\x6a\xa2\x77\xb0\x8d\x08\x98\xfc\x9b\x7e\x06\x66\x8d\x74\x77\x8a\x6a\x08\x83\x07\x8c"
+"\x6a\xa2\x77\xb0\x8d\x08\xf7\x13\x06\xb0\x89\xa2\x9f\x8c\xac\x08\x93\x07\xaa\x74\xa0\x6a\x8a\x1e\x88\xf8\x9b\xf7\x4a\xfc\x9b\x83"
+"\x06\x68\x8d\x73\x77\x6a\x1a\x83\x07\x8c\x6a\xa2\x77\xb0\x8d\x08\xf7\x13\x06\xb0\x89\xa2\x9f\x8c\xac\x08\x93\x07\xab\x73\x9f\x68"
+"\x8a\x1e\x84\x06\x0e\xf7\xe9\xf8\x64\x15\xfb\x2b\x65\x86\x71\x5e\x1f\x46\x62\x61\x3f\x37\x1a\x3e\xad\x46\xc8\x5f\x1e\x67\xbd\xae"
+"\x85\xf7\x39\x1b\xf7\x56\x06\xa0\x99\x95\x9b\x9b\x7f\x94\x74\x1f\xfb\x58\x06\xfb\x14\x60\x90\x9e\x68\x1f\x54\xa8\x65\xcb\xcb\x1a"
+"\xc5\xab\xc7\xba\xaa\x1e\xa6\xb3\xb0\x90\xf7\x23\x1b\xf7\x58\x06\xa1\x98\x95\x9b\x9b\x7e\x94\x75\x1f\x0e\xf7\x74\x16\xf7\x2d\xb0"
+"\x90\xa5\xb8\x1f\xd0\xb4\xb5\xd7\xdf\x1a\xd8\x68\xd0\x4f\xb7\x1e\xaf\x59\x67\x91\xfb\x39\x1b\xfb\x55\x06\x75\x7e\x82\x7b\x7b\x98"
+"\x81\xa1\x1f\xf7\x58\x06\xf7\x16\xb3\x86\x78\xaf\x1f\xc2\x6f\xb1\x4a\x4b\x1a\x51\x6b\x50\x5b\x6b\x1e\x71\x65\x63\x85\xfb\x21\x1b"
+"\xfb\x58\x06\x74\x7f\x82\x7b\x7c\x99\x80\xa0\x1f\x0e\xf7\x3f\xfb\x14\x15\x86\x78\x89\x7c\x82\x1a\x73\x9d\x7b\xa7\x9e\x9d\x93\x9a"
+"\x99\x1e\x92\x93\x90\x99\x92\xa9\xa6\xf7\x0c\x18\xf7\x20\x8f\xba\xb4\xa4\xf7\x1e\xad\xf7\x2f\x18\xb9\x8e\xa5\xa2\xad\x1a\xaa\x79"
+"\x97\x60\x1e\x29\x06\x4e\xfb\xa6\x80\x5b\x7d\x7f\x59\x88\x19\xec\xf8\x44\x05\x90\xa2\x8d\x98\x93\x1a\xa4\x7a\x99\x6f\x77\x79\x83"
+"\x7b\x7d\x1e\x83\x83\x88\x81\x83\x6a\x28\xfc\x4f\x18\x67\x8c\x7c\x94\x9f\x1a\x93\x8d\x9a\x91\xa3\x1e\xc6\xf7\x9b\x05\x26\x06\x59"
+"\x6b\x73\x67\x6f\x9a\x7d\xad\x8a\x1f\x6b\xfb\x26\x05\x85\x6e\x88\x76\x7c\x1a\x69\x9a\x6a\xa7\x72\x1e\xa1\x77\xa3\x82\xba\x84\x08"
+"\x0e\xf8\x92\xf7\x5f\x15\x7c\x9f\x86\x92\x7c\x9b\xce\x1d\xa3\xf7\x00\x05\xe7\x06\x9d\x82\x9a\x7d\x9f\x70\x89\x8a\x18\x6c\x81\x7c"
+"\x79\x71\x1a\x78\x9b\x77\x9a\x8c\x1e\x91\x95\x8e\x8f\x98\x1f\xac\x96\xa3\x5b\x92\x7b\x91\x74\x19\xf7\x20\x1d\x87\x93\x8a\x8e\x85"
+"\x98\x91\x8c\x18\xa8\x94\x9c\x9f\xa5\x1a\x9e\x7c\x9d\x7c\x86\x7f\x88\x87\x7e\x1e\xfb\xa9\xf0\x15\xab\xf7\x26\x05\xf7\x01\x06\xc2"
+"\xaf\x75\x68\x5a\x42\x63\x33\x1f\x0e\x3f\x0a\xf7\x74\xf7\x78\x15\xa3\x9b\x94\x97\x9c\x1a\x9d\x7d\x98\x77\x7f\x84\x88\x7e\x78\x1e"
+"\xfb\x31\x21\x05\x74\x7c\x81\x7d\x7c\x1a\x78\x99\x7e\x9f\x95\x97\x90\x95\x9a\x1e\x0e\xf7\x2e\xf7\xd1\x15\x22\x06\x79\x8c\x80\x82"
+"\x8a\x7a\x08\x8a\x07\x8c\x7a\x96\x82\x9d\x8c\x08\xc7\x06\xe4\xfb\xb0\xf7\x85\xf9\x2f\x05\xf7\x3b\x06\x9c\x98\x96\x9a\x9b\x80\x94"
+"\x78\x1f\xfb\x66\x06\xfb\x55\xfc\xcc\x05\x0e\x3f\x0a\xca\xf7\x5c\x45\x1d\x3f\x0a\x64\xfc\x7b\x23\x1d\xf7\x0b\xf8\x19\x15\xf8\x12"
+"\x06\xa1\x96\x94\x9c\x9b\x80\x94\x75\x1f\xfc\x46\xfb\x88\x06\x77\x94\x80\x9c\x9c\x94\x96\x9f\x1e\x0e\xf7\x30\xa8\x15\x6d\xb4\xb4"
+"\x7d\xba\x1b\xcb\xca\xa6\xbe\xbf\x1f\xc1\xc0\xa6\xc8\xd1\x1a\xf7\x05\x3c\xd8\xfb\x09\x43\x3f\x6b\x58\x5a\x1e\x68\x67\x72\x53\x7a"
+"\x3c\x48\xfb\xcb\x18\x86\x71\x89\x81\x83\x1a\x72\x9c\x7d\xa8\x9f\x9d\x93\x9a\x99\x1e\x92\x93\x8e\x94\x93\xae\x08\xf7\x7c\xf8\x69"
+"\x15\xc2\xab\x6c\x54\x3b\x40\x3d\x3d\x56\x63\xb4\xc1\xda\xd5\xd1\xe0\x1f\x0e\x56\x1d\x8e\xf7\x9a\x2f\x1d\xf7\xe0\x7d\x15\xf7\x19"
+"\x95\xea\xce\xdf\x1a\xb0\x79\xaa\x6a\x9f\x1e\x72\x9b\x62\x96\x44\x94\x4e\x93\x84\x8c\x7f\x90\x08\x80\x90\x83\x91\x91\x1a\x9b\xbf"
+"\x9b\xbd\xb5\xa8\x83\x79\xa2\x1e\x6b\x96\x95\x83\xa5\x1b\x9b\x9d\x93\x98\x99\x1f\x95\x95\x8f\x93\x91\xa6\x93\xae\x18\xa1\x0a\xa2"
+"\x7f\xa9\x83\xb5\x86\x78\x36\x18\x8c\x99\x94\x42\x0a\xb2\x7b\x9e\x62\x94\x1f\x0e\x56\x1d\xfb\x2e\xf7\x88\x15\xe4\x31\x05\x81\x95"
+"\x93\x87\x95\x1b\xa3\xc8\x0a\x26\x0a\x56\x1d\xfb\x98\xfc\x59\x23\x1d\xf7\x5f\xf7\xc4\x15\xe4\xf7\x58\x05\x97\xa6\x8e\x94\x86\x1d"
+"\xf7\x60\x16\xe4\xf7\x58\x05\x97\xa5\x8e\x95\x86\x1d\x0e\xf8\x48\xf8\x49\x15\xfb\x07\x45\x77\x59\x4b\x1f\x4a\x59\x61\x3d\x45\x1a"
+"\xfb\x02\xe0\x41\xf7\x12\xe3\xe5\xb1\xc9\xc5\x1e\xb9\xbd\xa6\xc6\xc0\x1a\xab\x83\xa6\x7a\xa7\x1e\xba\x5e\x1d\xfb\xa8\x24\x15\xd6"
+"\xbc\x64\x4e\x3e\x36\x46\x2d\x42\x5a\xb3\xc7\xd7\xe0\xd1\xe7\x1f\x0e\xf7\x6d\xf8\x23\x15\x75\x79\x7a\x75\x76\x9c\x79\xa1\xa1\x9c"
+"\x9c\xa1\xa0\x7a\x9d\x76\x1f\xf7\x41\x8c\x15\x75\x79\x79\x76\x75\x9d\x79\xa1\xa0\x9d\x9d\xa0\xa1\x79\x9d\x76\x1f\xe9\x37\x15\x82"
+"\x64\x83\x7b\x77\x73\x08\x61\x66\x5c\x77\x4d\x1b\x4c\x5d\x9f\xb5\x66\x1f\x77\xa3\x83\x9b\x82\xb2\x90\x48\x93\x6c\xa2\x68\x08\x5b"
+"\xac\xbd\x72\xcb\x1b\xc6\xba\xa0\xb4\xab\x1f\xa8\xb0\x96\xae\x90\xd3\x08\xfb\x47\xf7\x8b\x15\xfb\x33\xfb\x13\xfb\x10\xfb\x2f\xfb"
+"\x32\xf7\x11\xfb\x12\xf7\x31\xf7\x2f\xf7\x12\xf7\x12\xf7\x30\xf7\x2d\xfb\x12\xf7\x14\xfb\x2b\x1f\x83\x66\x15\xf7\x1d\xf7\x03\xfb"
+"\x00\xfb\x1b\xfb\x1d\xfb\x01\xfb\x01\xfb\x1c\xfb\x1b\xfb\x01\xf7\x01\xf7\x1c\xf7\x19\xf7\x02\xf7\x03\xf7\x17\x1f\x0e\xf7\x22\x16"
+"\xf8\x09\x9d\x06\xfb\x11\x91\x51\xcd\x8d\xf7\x17\x08\x4a\xad\xaf\x72\xc3\x1b\xc1\xb8\xba\xc5\xc0\x77\xaa\x38\xd7\x1f\x37\xd8\x7c"
+"\xa1\x6d\xe5\x7f\x44\x5c\x47\x3a\x4a\x08\x4d\x58\x70\x5f\x5a\x1a\x51\xba\x5b\xc4\xc3\xb3\xa8\xc8\xa8\x1e\xfb\x14\x90\x47\x40\xfb"
+"\x0e\x1b\x0e\xf8\x37\xf8\xab\x15\x91\x42\x8c\x6d\xa2\x75\xaa\x8a\x19\x90\x06\xac\x8c\xa1\xa3\x8a\xab\x08\xf7\x0f\x07\xad\x8c\x72"
+"\xa2\x67\x1b\xfb\xeb\x06\x67\x8c\x72\x74\x6b\x1a\x7e\x07\x7b\x8e\x82\x95\x7e\x1e\xf7\x39\xfb\x73\xfb\x3d\xfb\xba\x05\x84\x7f\x89"
+"\x84\x7e\x1a\x7c\x07\x6a\xa4\x74\xaf\x8c\x1e\xf7\xf2\x06\xaf\xa3\xa2\xad\x1f\xf7\x10\x07\xab\x75\xa3\x6a\x8c\x1e\x86\x06\x6c\x8a"
+"\x74\x74\x8a\x6c\x88\x43\x18\xfb\x62\x06\xf7\x2a\xf7\x93\x05\x91\x97\x8e\x93\x95\x1a\x97\x88\x94\x82\x97\x1e\xfb\x1a\xf7\x4c\x05"
+"\x0e\xf7\x23\xf8\x2a\x15\x73\x6e\x7d\x68\x86\x65\x08\x2c\x5e\xeb\x06\x8f\x64\x99\x68\xa2\x6e\x48\x48\x18\xab\x6b\xce\xcf\xa9\x73"
+"\xab\x7e\xb4\x85\x19\x2c\xb8\xea\x07\xb4\x91\xad\x99\xa7\xa2\xce\x47\x18\xab\xab\x48\xcf\xa1\xa4\x9a\xaf\x90\xb4\x19\xeb\xb8\x2b"
+"\x06\x86\xb3\x7c\xaf\x75\xa6\xce\xce\x18\x6b\xab\x48\x48\x71\xa1\x62\x9c\x67\x8e\x19\xea\x5e\x2d\x07\x68\x87\x61\x79\x72\x75\x47"
+"\xcf\x18\x6b\x6b\x05\xf7\x72\x5d\x15\xdc\xcc\x4b\x3d\x3a\x4b\x4b\x3b\x3c\x4b\xcb\xda\xda\xcb\xcc\xd8\x1f\x0e\xf8\x35\xf7\xd7\x15"
+"\xd7\x06\xad\x92\x8d\x97\x9b\x1f\x9b\x98\x94\x9c\x9c\x1a\xa1\x7e\x99\x75\x8e\x1e\x8e\x75\x8a\x8b\x89\x1b\xfb\x9f\x06\x6b\x82\x88"
+"\x7f\x7b\x1f\x7b\x7e\x82\x7b\x7a\x9d\x1d\xdd\x06\x55\xfb\x89\x05\x89\x84\x8b\x87\x81\x1a\x5f\xac\x74\xc8\xd9\xc2\xab\xb8\x9f\x7f"
+"\x99\x7b\x83\x81\x89\x87\x81\x1e\x82\x74\x80\x89\x7e\x1b\x84\x88\x8d\x90\x8e\x8b\x8e\x8c\x8f\x1f\x0e\xf7\xab\xf7\xa5\x15\x96\xbc"
+"\x05\xf7\x46\x06\xaa\x96\x4f\x0a\xa9\x7a\x97\x60\x1e\xfb\x44\x06\x9c\xda\x05\x8f\x9b\x8c\x8e\x96\x1a\xa2\x79\x9a\x70\x79\x7e\x85"
+"\x7d\x7b\x1e\x82\x82\x83\x7a\x87\x77\x79\x3a\x18\x6c\x06\x6c\x80\x88\x80\x7c\x1f\x7b\x7f\x81\x79\x7a\x1a\x7f\x90\x80\x95\x82\x1e"
+"\x82\x95\x92\x8a\xa8\x1b\xa9\x06\x80\x5a\x05\x72\x82\x8a\x85\x7f\x1f\x75\x80\x7c\x75\x76\x1a\x7f\x90\x81\x95\x81\x1e\x82\x95\x91"
+"\x8a\xa8\x1b\x81\x5a\x05\x89\x82\x8a\x83\x80\x1a\x6f\x93\x75\x9c\x7b\x1e\x72\xa4\xc3\x7a\xc0\x1b\xd2\xf0\xa2\xa7\xbd\x1f\xa2\x98"
+"\x99\x9f\xa0\x1a\xa1\x77\x9e\x73\x83\x83\x89\x87\x82\x1e\x71\x50\x5c\x80\x52\x1b\x5a\x72\x94\x9d\x92\x8c\x92\x8d\x94\x1f\x92\xab"
+"\x05\xf7\x1d\x06\xab\x96\x2a\x0a\x9c\x9b\x1a\xaa\x7a\x97\x5f\x1e\x0e\xf8\x81\xf8\x3d\x15\x86\x06\xfb\x44\x06\x9d\xda\x05\x8f\x9d"
+"\x8b\x8d\xd9\x0a\x79\x3a\x05\x6b\x06\x6a\x82\x89\x7e\xa2\x1d\xa9\x06\x5e\xfb\x5d\x05\x89\x82\x8a\x83\x7f\x1a\x6b\x99\x6f\xa4\x7b"
+"\x1e\x77\xa9\xb7\x80\xb8\x1b\xd2\xeb\xa1\xa8\xc3\x1f\xa4\x98\x97\x9c\xa1\x78\x1d\xb4\xf7\x4c\x05\xf7\x46\x06\xa9\x98\x8e\x97\x99"
+"\x1f\x9b\x97\x94\x9c\x9d\x1a\x91\x8a\x8f\x87\x93\x1e\x97\x8e\x8b\x8b\xa2\xa0\xf2\xf7\x0d\x18\xf0\x1d\x81\x7f\x1a\x89\x8b\x89\x8c"
+"\x88\x1e\x0e\xf7\xc8\x7c\x15\xc1\x8d\xd4\x9b\xbe\x9f\x08\xbb\x9e\x9c\x9d\xa7\x78\x1d\xb4\xf7\x4c\x05\xf7\x46\x81\x1d\x20\x1d\xdc"
+"\x1d\x57\xac\x6a\xcb\x7c\x1e\x74\x26\x05\x8d\x9c\x93\x8b\x90\x1b\xa6\x9a\x82\x7b\x7e\x80\x83\x78\x7a\x74\x92\x95\x7a\x1f\x96\x79"
+"\x89\x8c\x7f\x1b\x72\x79\x7a\x72\x82\x8f\x82\x90\x85\x1f\x78\x9e\xba\x7c\xb4\x1b\xd5\xbf\xba\xcd\xb1\x79\xa0\x64\x95\x1f\x0e\xf8"
+"\x07\xf8\xef\x15\x2c\x36\x51\x29\x59\x1f\x67\x45\x74\x2b\x3e\x1a\x44\x9d\x56\xb1\x64\x1e\x66\xae\xb9\x78\xc0\x1b\xda\xdb\xb8\xd3"
+"\xbb\x1f\xbc\xd4\xab\xf7\x06\xef\x1a\xf7\x14\x3f\xe1\xfb\x05\x1e\xfb\x2d\xfb\x96\x15\xee\xa9\xc1\xc2\xd0\x1b\xc0\xa7\x64\x41\x7f"
+"\x8a\x83\x89\x76\x1f\x73\x23\x15\x28\x6b\x55\x55\x47\x1b\x56\x6f\xb2\xd2\x99\x8c\x93\x8d\xa0\x1f\x0e\xf8\x63\xf8\xc9\x15\x9e\x97"
+"\x93\x97\x22\x0a\x7b\x82\xf7\x16\x1d\x9a\x1e\x0e\xf8\xc6\xbc\x1d\xfb\x7a\xa9\x0a\x57\x1d\xfb\x02\xf8\x7f\x5b\x0a\x57\x1d\xfb\x75"
+"\xf8\x8a\x33\x0a\xa7\xfb\xaf\xf7\x0b\x0a\x79\x94\x7b\xba\x0a\xfc\xb4\xf7\x2f\x15\x70\x83\x8a\x84\x80\x1f\x7a\x81\x80\x79\x78\x1a"
+"\x7a\x94\x7a\xf7\x29\x1d\x94\x96\x9e\xf7\x4d\x1d\x0e\x0e\x76\x1d\x57\x0a\x58\xfb\x72\x23\x1d\x94\x0a\xd7\xfb\x95\x15\x8c\x8c\x8c"
+"\x8c\x8d\x8c\x8e\x64\x0a\x7d\xf7\x0f\x0a\x7a\x79\x87\x83\x65\x0a\xcb\x0a\x79\x1d\xf8\xb9\x16\xfb\x06\xf8\xc8\x05\xfb\x08\x06\xfb"
+"\xff\xfc\xc8\x05\xf8\x62\xf3\x15\xfb\xa1\x06\xf7\x61\xf7\xd2\x05\x0e\xf7\xaf\xe9\x15\x74\x96\x87\x8d\x82\x91\x08\x68\xa2\x7a\xb2"
+"\xc5\x1a\xcd\xa1\xd2\xad\xbc\x1e\xbe\xb1\xc0\xa5\xd0\x1b\xe1\xb6\x62\x3a\x3c\x68\x30\x58\x56\x1f\x73\x72\x78\x81\x56\x75\x75\x2d"
+"\x18\xf7\x5c\x06\xaa\x96\x35\x0a\x9b\x1a\xa8\x79\x98\x61\x1e\x4f\x06\xc1\xa3\xa2\x9f\xaa\xbc\x08\xae\xc3\x9f\xce\xca\x1a\xd0\x74"
+"\xc1\x61\xa8\x1e\xa7\x62\x4d\x9b\x4a\x1b\xfb\x00\x2a\x65\x4b\x53\x1f\x53\x4b\x69\x33\x38\x1a\x59\x99\x62\xa4\x72\x1e\x91\x85\x94"
+"\x84\x9c\x82\x08\x4c\xaa\x1d\x7c\x7f\xf7\x00\x0a\xf7\x5a\x06\x0e\xf7\x31\x89\x15\x81\xa2\x9d\x87\xa5\x1b\xb8\xb5\x95\xa3\xbe\x1f"
+"\x87\x79\x05\xee\x06\xbe\xaa\xa2\xb2\xa6\x7a\x98\x6a\x8c\x1f\xd3\xf7\xd6\x05\xfb\x20\x06\x57\x6c\x74\x64\x6e\x9e\x7e\xb6\x1f\xa8"
+"\x06\x62\xfb\x4b\x05\x67\x46\x5c\x7c\x5e\x1b\x72\x7a\x96\x9b\x90\x8d\x94\x8d\x97\x1f\xcb\xf7\xb1\x05\xfb\x0e\x06\x58\x6d\x40\x1d"
+"\x95\x06\x27\xfc\x54\x05\x88\x7e\x8a\x81\x85\x1a\x74\x9e\x7a\xa4\xae\xa3\xa2\xb7\x94\x1e\x0e\xf8\xb7\xf7\xc3\x15\x91\xa8\x05\x93"
+"\xac\x8d\x95\x97\x1a\xa7\x74\xa1\x6d\x76\x7c\x83\x7a\x80\x1e\x9c\x6e\x67\x93\x5e\x1b\x39\x44\x6d\x51\x56\x1f\x5a\x56\x6e\x43\x47"
+"\x1a\x28\xbd\x50\xf7\x05\x68\x1e\xc1\x7b\x8f\x88\x7f\x1a\x79\x71\x7a\x69\x88\x1e\x77\x89\x87\x8a\x81\x88\x08\x72\x82\x7c\x77\x70"
+"\x1a\x6d\x9e\x7e\xb4\xf2\xda\xc9\xdd\xc7\x6b\xae\x39\xa6\x1e\x36\xa8\x79\x9c\xc0\x1a\xf3\xd7\xde\xea\xb7\xb1\x77\x73\x89\x8b\x88"
+"\x8a\x86\x1e\x8a\x87\x8b\x86\x86\x1a\x6b\xa1\x75\xad\xab\x99\x9b\xbc\x94\x1e\x0e\x24\x1d\xad\xf7\x28\x05\x8e\x9b\x8c\x91\x93\x1a"
+"\xa1\x21\x1d\xed\xe9\x1d\x71\x1d\xbc\xf8\xe3\x15\x97\x7f\x86\x8d\x7f\x1b\x74\x75\x77\x76\x80\x91\x82\x98\x7e\x1f\xf7\x0c\xfb\x00"
+"\x05\x83\x95\x97\x84\x92\x1b\xa3\xa0\x9f\xa2\x96\x87\x92\x7c\x99\x1f\x0e\xf7\x79\xf7\x2c\x15\x46\xf7\xc9\x05\x99\x06\xab\x96\x50"
+"\x1d\x9b\x1a\xa9\x79\x97\x61\x1e\xfb\x19\x06\x6c\x80\x88\x7f\x95\x1d\xb4\x1e\xef\xfc\x61\x05\xf3\x06\xf7\x87\xf8\x13\x05\xab\xa0"
+"\x9d\x9d\x97\x1b\x8f\x8e\x8a\x89\x8e\x1f\x7a\xaa\x8d\x8a\x9d\x1b\xb7\xb5\xb3\xb5\xb4\x68\xa5\x54\x40\x50\x63\x35\x55\x1f\x0e\x59"
+"\x0a\xb5\xf8\x72\xb7\x0a\xf7\x8d\xf7\x7c\x15\xf7\x0b\x06\xa2\xf1\x05\xfb\x0b\x06\xa7\xf7\x13\x05\xf7\x8c\x06\x81\x5f\xf7\x08\x0a"
+"\x92\x99\x99\x1e\x95\x95\x8f\x94\x91\xa6\xac\xf7\x28\x18\xfc\x6f\x27\x1d\x95\x06\x6f\xfb\x13\x05\x53\x06\x74\x25\x05\xc3\x06\x6e"
+"\xfb\x15\xdf\x1d\xf7\x82\xf7\xa2\x15\x96\xbe\x05\xf7\x78\x06\x79\x38\x05\x87\x7c\x8a\x83\xf7\x26\x0a\x95\x1e\xb5\xf7\x51\x05\xfc"
+"\x86\xf7\x59\x1d\x80\x58\x05\x6b\x06\x63\x71\xf7\x22\x0a\xaa\x06\x79\x39\x44\x0a\x9d\xdd\x05\xce\x06\xb1\xa6\xa0\xa7\xa5\x1d\xf8"
+"\x91\xf7\x00\x15\x6c\xf7\x19\x85\xa4\x80\x9e\x78\x9c\x19\x99\x93\xbf\xca\xb1\xc1\x08\x71\x91\x99\x80\xa6\x1b\xa4\x9a\x9a\xa9\x92"
+"\x1f\x95\xb5\x05\x8e\x98\x8d\x9c\x96\x1a\xa8\x77\x9c\x68\x51\x69\x6b\xfb\x3c\xfb\x13\x1e\xa3\xeb\x05\x8f\x06\xae\xa2\xa1\xab\xaf"
+"\x73\x99\x4c\x1f\x5f\x06\x4f\x74\x7d\x66\x71\x99\x7b\xa9\x82\x1f\x78\x29\x64\xf7\x06\x82\xa4\xf7\x2b\x1d\x86\x7a\x89\x7d\x81\x1a"
+"\x72\xa1\x78\xa7\xa3\x97\x95\xab\x98\x1e\x94\x5b\x9a\x67\xa3\x69\x6e\x7d\x75\x79\x79\x71\x21\xfb\x2d\x18\x60\x8a\x76\x7a\x69\x1a"
+"\x68\xa2\x7a\xbc\xb4\x92\x90\xb9\xa9\x1e\xef\xf7\x2b\x97\x9d\x94\x95\xa5\xa3\x19\x64\xfb\x2a\x05\x61\x8a\x75\x79\x69\x1a\x66\xa2"
+"\x7d\xca\x1e\xbb\xa7\x1d\x7c\x9b\x69\x92\x1f\xad\xf7\x2d\x93\x80\x92\x7d\x8e\x7d\x19\xad\xfb\x25\x8d\x84\x8b\x88\x8d\x83\x19\x93"
+"\x62\x97\x81\xbc\x88\x80\x5a\x18\x88\x82\x8a\x7f\x84\x85\x0a\xc5\x93\x1e\x9e\xf7\x1f\x05\x0e\xf8\xef\xf7\xef\x15\x8e\x97\x8c\x94"
+"\x92\x1a\xa7\x73\xa1\x6b\x65\x65\x76\x60\x65\x1e\x42\x3a\x92\xb5\x05\xa7\x93\x99\x9c\xa5\x1a\xad\x72\x9d\x5a\x1e\x65\x06\x5c\x71"
+"\x78\x6a\x73\x95\x7d\xa4\x7f\x1f\x83\x5f\x65\xd3\x05\xc3\x6d\x73\x9d\x5e\x1b\x6c\x78\x81\x73\x7f\x1f\x81\x77\x85\x71\x72\x1a\x6d"
+"\x9e\x78\xa9\xa2\x99\x96\xa6\x94\x1e\x9f\x62\x91\x81\x9b\x77\x73\x81\x79\x7e\x7d\x79\x3d\x2e\x18\x7e\x06\x69\x72\x75\x6d\x6e\xa3"
+"\x74\xaa\x1f\xa6\x06\xa5\x8c\x8c\x8c\xaf\xb5\xda\xec\x18\x99\x9c\x9a\x9a\x9a\x96\x7c\x3a\x18\xf7\x09\x1d\x82\x93\x78\x19\xa8\x3f"
+"\xa1\x54\x90\x86\xac\x87\x19\x7e\x62\x05\x89\xe1\x0a\x9b\xd1\x9c\x1e\xaa\xf7\x14\x05\x26\x06\x71\xc7\x7d\xac\x7e\x9e\x7e\x95\x19"
+"\x9d\x98\xa3\xa2\xa5\xa9\x08\x6f\x91\x99\x7f\xa7\x1b\xaa\x96\x99\xbd\x97\x1f\x0e\xf7\x97\x7c\x15\xcf\x8d\xc6\x97\xb2\xa1\x08\xd0"
+"\xb1\xb5\xcb\xce\x1a\xb7\x7b\xad\x6a\xa6\x1e\xc4\xb1\xa5\xb6\xc4\x1a\xe2\x41\xc5\xfb\x03\x53\x62\x80\x73\x67\x1e\x8c\x95\x8b\x8d"
+"\x8f\x1a\xa6\x75\xa0\x6c\x6e\x7b\x7a\x63\x85\x1e\x82\x57\x7f\x66\x75\x5e\x08\x7d\x6f\x86\x7d\xf7\x0a\x1d\x61\x06\x59\x73\x7b\x68"
+"\x77\x95\x7a\x9d\x82\x1f\x86\x95\x96\x89\xb1\x1b\xe7\xb0\x7c\x67\x74\x7d\x72\x73\x79\x1f\x76\x6f\x63\x81\x54\x1b\x45\x57\x9a\xb1"
+"\x51\x1f\xa0\x6c\x7b\x92\x7d\x1b\x6f\x70\x70\x70\x57\xf7\x00\x4a\xf7\x00\x7f\x1f\x77\x34\x05\x8e\x9f\x8b\x8b\x93\x1b\xa7\x99\x83"
+"\x7c\x7b\x7d\x81\xf7\x01\x1d\xb3\x7b\x9d\x62\x95\x1f\x0e\xf7\xaa\x7f\x15\xc4\xbf\x94\x9c\xb0\x1f\xc9\xa7\xb1\xbb\xbc\x1a\xb0\x7a"
+"\xa4\x65\x9d\x1e\xbc\x9f\xa3\xab\xb8\x1a\xd2\x42\xbd\x23\x5a\x63\x81\x74\x65\x1e\x8f\x07\x8f\x07\xab\x79\x9c\x6b\x66\x7f\x79\x4c"
+"\x84\x1e\x89\x72\x85\x75\x81\x70\x08\x84\x76\x87\x7b\x83\x1a\x73\xa1\x77\xa6\xa1\x98\x95\xa8\x99\x1e\xc7\xa8\xa8\x9b\xe1\x1b\xbd"
+"\xac\x81\x7b\x77\x67\x7d\x55\x8a\x1f\x60\x8a\x8b\x8b\x82\x89\x08\x71\x85\x7d\x7a\x72\x1a\x72\x96\x7c\xa3\x83\x1e\x98\x87\x92\x8a"
+"\xb0\x8a\x08\xb6\x8a\xa9\x80\x7e\x1a\x72\x50\x74\x49\x47\x56\x99\xab\x53\x1e\x99\x71\x7c\x91\x7e\x1b\x70\x71\x71\x6f\x6e\xa1\x76"
+"\xc4\x71\x1f\xb1\x79\xb8\x7e\xb0\x86\x77\x30\x18\x8c\x98\x95\x42\x0a\xb3\x7b\x9d\x62\x94\x1f\x0e\xf8\x5d\xf5\x15\x6a\xf6\x7f\xb0"
+"\x7a\xa8\x74\xa2\x19\xaf\xb2\xd4\xdd\x91\x92\x90\x8f\x96\x97\x19\x84\x07\x70\xa2\x76\xa9\x9d\x9c\x94\x98\x91\x1e\x96\xa1\x9a\xc7"
+"\x9f\x1a\xab\x72\x9c\x5d\x51\x65\x79\x59\x5e\x1e\x2d\x24\x71\x70\x73\x7c\xf7\x21\x1d\x2c\x06\x4b\x74\x7e\x66\x67\xa3\x79\xbb\x1f"
+"\x8d\x06\x3c\xfb\xf9\x05\x4d\x74\x7d\x65\x65\xa2\x7e\xcb\x1f\xea\x06\xca\xa3\x99\xaf\xb0\x74\x9b\x58\x1f\xaa\xf7\x25\x05\xa6\x06"
+"\xa9\x8c\xa4\x70\x9e\x54\xab\x26\x18\xa1\x4d\x8d\x8a\xca\x88\x7f\x59\x18\x88\x7d\x8a\x83\x84\x1a\x72\x9c\x7c\xaa\xb5\xa2\xa7\xc6"
+"\x93\x1e\x9e\xf7\x1e\x05\x0e\xf8\x54\xf3\x15\x60\xda\x81\x9d\x7d\x9a\x78\x96\x19\xd9\xd0\xdd\x0a\x92\xab\x05\x9b\x1d\x5f\x5e\x65"
+"\x7c\x6a\x67\x1e\x3a\x41\x7d\x7f\x80\x82\x88\xf7\x5c\x1d\x05\xbf\x8d\x9e\x9a\xb0\x1a\xb1\x77\x97\x4d\x8b\x1d\xfb\x6f\x05\x50\x8c"
+"\x74\x7c\x66\x1a\x65\xa2\x7d\xca\x1e\xf7\x26\x1d\x85\xa2\x63\xb2\x44\x18\xa2\x5d\x92\x85\xa9\x88\x7f\x61\x18\x87\x7e\x8a\x84\x82"
+"\x1a\x70\x9c\x7e\xac\xaf\x97\x96\xb4\x99\x1e\x95\xad\x9a\xc7\x9a\xcf\x08\x0e\xf7\xcf\xf7\x5b\x15\x98\x6b\xab\x27\xa1\x4c\x8e\x89"
+"\xd0\x89\x19\xf5\x1d\x84\x07\x8f\x1d\x65\x79\x5a\x5e\x1e\x58\x53\x05\x99\x85\x7b\x95\x7b\x1b\xa5\x91\x97\x99\xa6\xe2\x1d\x96\x06"
+"\x7a\x3f\x05\x89\x84\x8a\x83\x85\x1a\x75\x9e\x77\xa0\xa6\x97\x97\xad\x93\x1e\x60\xf7\x5a\x15\x8a\x87\x89\x8b\x89\x1b\x88\x06\xa3"
+"\xf7\x00\x9a\x8c\x91\x8b\x98\x8d\x19\x77\x84\x85\x84\x85\x6d\x08\x0e\xf8\x02\xf7\x7b\x15\xd5\xcc\x94\x93\x90\x8e\x94\x91\x19\x6a"
+"\x8e\x99\x7c\xa9\x1b\xa6\x9b\x9a\xae\x93\x1f\x92\xab\x05\x9b\x1d\x60\x5e\x6f\x80\x69\x5f\x1e\x96\x84\x7d\x94\x81\x1b\x7e\x7c\x7f"
+"\x7d\x86\x1f\xb2\x79\x96\x4b\x8c\x8b\x1d\xfb\x6e\x05\x50\x74\x7c\x66\x65\xa2\x7d\xca\x1f\xf7\x35\x1d\x9b\x8a\x8f\x8b\x98\x87\x81"
+"\x5b\x18\x89\x83\x8a\x84\x84\x1a\x77\x9e\x76\x9d\x99\x98\x97\x9f\x92\x1e\x9d\x69\x98\x73\x94\x7d\x91\x86\x19\x82\x94\x9e\x87\xb4"
+"\xa4\x1d\x5f\x1f\x7d\x06\x8a\x06\x87\x06\x60\xda\x81\x9d\x7c\x9a\x7c\x95\x19\x51\xdd\x15\x87\x86\x7c\x7f\x80\x82\x89\x8a\x19\x89"
+"\x87\x84\x8a\x82\x1b\x80\x06\x93\xb6\xaf\x8c\x9d\x93\x95\x9b\x19\x0e\xf7\x15\xf8\x60\x15\xc2\x06\x3c\xfb\xf9\x05\x4d\x8c\x74\x7d"
+"\x64\x1a\x66\xa2\x7d\xcb\x1e\xea\x06\xca\xa3\x99\xb0\xaf\x74\x9c\x58\x1f\xab\xf7\x24\x05\xa5\x06\xa9\x8d\xa4\x6f\x9e\x54\xab\x27"
+"\x18\xa1\x4c\x8e\x89\xd0\x89\x08\x9e\x06\xca\xa2\x99\xb0\xb2\x75\x99\x4b\x1f\x7c\x06\x69\xf7\x01\x80\xb0\x79\xa8\x74\xa2\x19\xaf"
+"\xb2\xd4\xdd\x90\x91\x90\x90\x97\x97\x19\x84\x07\x8f\x1d\x66\x79\x59\x5d\x1e\x2d\x24\x71\x70\x73\x7c\xf7\x21\x1d\xfb\x8c\x66\x1d"
+"\x82\x84\x70\x0a\x0e\xf7\x44\xf7\xd5\x15\x5b\xfb\x6e\x05\x4f\x8c\x74\x7c\x66\x1a\x65\xa2\x7d\xcb\x1e\xe0\x06\xca\xa3\x99\xaf\xae"
+"\x75\x9c\x5d\x8c\x1f\x9b\xd1\x05\xa1\x06\xb2\x93\x85\x63\xa2\x1f\xb3\x44\x98\x73\x94\x7d\x90\x86\x19\x82\x94\x9f\x87\xb3\xa4\x1d"
+"\x60\x1f\x7d\x06\x89\x06\x87\x06\x60\xda\x81\x9d\x7c\x9a\x7a\x96\x19\xd8\xd0\x94\x92\x90\x8f\x94\x91\x19\x6a\x8e\x9a\x7c\xa9\x1b"
+"\xa6\x9a\x9a\xae\x93\x1f\x92\xaa\x05\x8f\x9b\x8c\x92\x91\x1a\xab\x72\x9d\x5f\x5e\x64\x7b\x6b\x67\x1e\x3a\x41\x7e\x7f\x7f\x82\x88"
+"\x8a\x19\x89\x88\x83\x8a\x82\x1b\x80\x06\x94\xb6\x05\xbe\x8d\x9e\x9a\xb0\x1a\xb1\x78\x97\x4d\x1e\xfb\x73\x06\xf7\x18\x1d\x0e\xf8"
+"\x7e\xf6\x15\xdb\xf7\xf6\x05\xb2\x8f\xa4\xa3\xac\xd2\x0a\x27\xae\x0a\x95\x06\x6f\xfb\x14\x05\xfb\x62\x06\xa7\xf7\x14\x05\x97\x06"
+"\xaa\x96\x7f\x1d\x27\x39\x1d\x7b\x1a\x71\x97\x7e\xa8\x87\x1e\x3b\xfb\xf9\x05\x89\x06\x38\x0a\x7b\x7e\x66\x0a\x9d\x81\x9b\x7c\x90"
+"\x1e\x8e\x83\x84\x8c\x76\x1b\x82\x06\xa7\xf7\x12\x05\xf7\x62\x06\x6f\xfb\x12\x05\x7f\x37\x1d\x6c\x9c\x7f\xb7\x1e\xe5\x06\x80\x59"
+"\x05\x88\x80\x8a\x81\x84\x1a\x71\x9c\x7c\xaa\xb4\xa2\xa7\xc6\x93\x1e\x9f\xf7\x1f\x05\x0e\xf8\x7d\xf3\x15\xbb\xf7\x6e\xa6\x0a\x8a"
+"\x86\xcd\x0a\x98\xc6\x05\xf7\x70\x06\x7e\x50\x05\x85\x06\x59\x6b\x74\x66\x6e\x9f\x7d\xb5\x1f\xec\x06\x7f\x62\x05\x89\xe1\x0a\x9b"
+"\xd1\x9c\x1e\xaa\xf7\x14\x05\x0e\xf7\xe8\x7e\x15\xd1\x8e\xca\x9b\xba\xa8\x08\xbb\xa7\xa3\xa7\xa5\x9e\x0a\x7d\x4b\x05\x80\x0a\x22"
+"\xd2\x3f\xf7\x08\x79\x1e\x77\x31\x05\x8c\x99\x94\x42\x0a\xb2\x7b\x9e\x62\x94\x1f\x0e\xf7\xf3\x7c\x15\xf7\x19\x91\xf4\xbd\xc5\xdd"
+"\x1d\x9b\xd5\x05\xf7\x3c\x1d\x9c\x6a\x5b\x95\x54\x1b\x2e\x88\x1d\x42\xba\x4d\xd0\x78\x1e\xa0\x85\x9f\x87\xa6\x89\x79\x36\x18\x8c"
+"\x98\x94\x8c\x90\x1b\xa8\xec\x1d\xb2\x7b\x9e\x61\x94\x1f\x0e\xf8\x2a\xf7\x7f\x29\x0a\x77\x1b\x2e\x34\x1d\x0e\xf7\x53\x96\x15\x75"
+"\x23\x05\x88\x38\x1d\xf7\x04\x9f\x1d\x97\x86\x96\x81\x94\x1e\x92\x82\x82\x8d\x6e\x1b\x8a\x06\x9f\xe7\xf7\x96\xf7\xd7\x05\xb3\x90"
+"\xa4\xa2\xac\xee\x0a\x7f\x88\x7f\x72\x0a\x90\x89\x92\xab\x0a\x0e\xf8\x26\xf7\x6e\x15\x8f\x9d\xf7\x69\xf7\x75\x05\xa1\x95\x8d\x90"
+"\x96\x1f\xa1\x97\x99\xa1\xa0\x52\x1d\x83\x20\x1d\x2e\x39\x1d\x7b\x1a\x77\x93\x80\x9e\x82\x1e\xfb\x07\xfb\x0d\x4e\xf7\x0c\xf7\x04"
+"\x1d\x7a\x7a\x1a\x6e\x9c\x7f\xb1\x8a\x1e\xf7\x05\xfb\x74\x87\x78\x05\x27\x06\x64\x70\xf7\x22\x0a\xed\x06\x84\x6c\x05\x4d\x06\x6b"
+"\x81\x3a\x1d\xf7\x7b\x06\xa7\x9a\xd8\x0a\x4f\x06\x91\xaa\x05\xea\x06\xb2\xa6\x4b\x0a\xf7\x51\x8c\x15\x47\x06\x64\x70\x77\x6d\x83"
+"\x8f\x80\x90\x85\x1f\x83\x92\x94\x89\xa3\x1b\xce\x06\x89\x81\x05\x88\x06\x6b\x81\x89\x7f\x95\x1d\xb6\x1e\xf7\x04\x06\xa9\x98\xf7"
+"\x1f\x0a\x9c\x9c\x1a\x97\x86\x97\x81\x93\x1e\x93\x82\x82\x8c\x6e\x1b\x8a\x06\x8d\x95\x05\xd1\x06\xb1\xa6\xa0\xa8\xa4\x7e\x95\x68"
+"\x1f\x48\x06\xf7\x94\xf7\xd5\x05\xb3\x90\xa4\xa2\xac\xee\x0a\x7f\x88\x7f\x72\x0a\x91\x89\x91\xab\x0a\xee\xfb\xcc\x05\x0e\xf8\x90"
+"\xf2\x15\xfb\x0e\xf7\x4c\xf7\x54\xf7\x42\x05\xb5\x8c\xa9\xa5\xad\x3e\x1d\x83\x84\x8c\x76\x1b\x31\x25\x1d\x79\x91\x81\x9e\x81\x1e"
+"\xfb\x00\x2a\x49\xeb\x05\xab\x9a\x9a\x9d\xa4\x51\x1d\x82\x20\x1d\x30\x06\x6b\x81\x88\x7f\x30\x1d\x90\x89\x92\x8a\x98\x8a\xf7\x08"
+"\xfb\x40\x18\xfb\x61\xfb\x4e\x05\x60\x8a\x6d\x72\x68\x21\x0a\xf7\x02\x20\x0a\x9b\x1a\xa4\x7e\x98\x71\x8e\x1e\xf7\x09\xf5\xd1\x22"
+"\x05\x65\x87\x71\x72\x6b\x21\x0a\xf7\x02\x06\x91\x06\x8c\x06\x7e\x54\x05\x88\x7f\x8a\x82\x84\x1a\x71\x9c\x7d\xaa\xb4\xa2\xa6\xc6"
+"\x94\x1e\x9e\xf7\x1f\x05\x0e\xf8\x89\xf1\x15\xfb\x0b\xf7\x0a\xf7\x2a\xf1\xa2\x8d\x92\x8e\x97\x94\x19\x9b\x98\x94\x9d\x9b\x1a\x9c"
+"\x80\x9b\x7d\xf7\x03\x1d\xb4\x05\xa0\x99\xf7\x08\x1d\x7a\x1a\x7a\x95\x7c\x9a\x86\x1e\x8f\x89\x90\x8a\x95\x8a\xf0\x26\x18\xfb\x3c"
+"\xfb\x0a\x74\x89\x83\x88\x7f\x81\x19\x7b\x7e\x82\x7b\xf7\x36\x1d\x97\x94\x9d\x9d\x1a\x9d\x85\x94\x78\x94\xf7\x2d\x0a\x72\x21\x0a"
+"\xf7\x06\x06\x7f\x60\x05\x89\x83\x89\x7f\x82\x1a\x70\x9c\x7e\xac\xb4\x98\x9a\xd2\x9c\x1e\xa9\xf7\x14\x05\x0e\xc9\x1d\x51\x06\x4c"
+"\x74\x7d\x65\x65\xa1\x7e\xcb\x8a\x1f\xf7\x1e\x06\x7f\x54\x05\x88\x81\x8a\x80\x83\x85\x0a\xc6\x93\x1e\x9e\xf7\x21\x05\x0e\xf8\x61"
+"\xf3\x15\xcd\x1d\x82\x65\x05\x54\x06\x4b\x74\x7d\x65\x65\xa1\x7e\xcc\x8a\x1f\xf7\x09\x06\x7f\x54\x05\x88\x80\x8a\x81\x83\x85\x0a"
+"\xc6\x93\x1e\x9f\xf7\x21\x05\x0e\xf7\xcd\xf7\x44\x15\xaa\x94\x98\x90\xa4\x98\x75\x28\x18\x51\x06\x4c\x74\x7d\x65\x65\xa1\x7d\xcb"
+"\x1f\xf7\x28\x9c\x1d\x9d\x5e\x8c\x1f\xda\xf7\xf9\x05\xc5\x8c\x7d\x1d\x71\x7b\x83\x87\x64\x79\x19\x93\xae\x05\x8c\x92\x8c\x92\x93"
+"\x1a\xa3\x79\x9d\x74\x72\x7e\x7e\x6a\x83\x1e\x7b\x41\x05\x72\x8e\x83\x91\x9c\x1a\x96\x8e\x9f\x8e\x99\x1e\xa5\xf7\x09\x05\xcc\xa0"
+"\x98\xb1\xb2\x74\x98\x4b\x1f\xc5\x0a\x74\x88\x74\x7c\x1a\x65\x9e\x68\xab\x74\x1e\x9e\x7d\x9b\x86\xaf\x86\x08\x89\x81\x8a\x83\x87"
+"\x1a\x76\x9f\x77\xa0\xa5\x98\x98\xac\x92\x1e\x0e\xf7\xbe\xf7\x0f\x15\xa4\x90\x9b\x90\xa1\x93\x82\x66\x18\x84\x06\x80\x77\x85\x85"
+"\x80\x1f\x7f\x84\x84\x7d\x78\x1a\x78\x92\x7c\x98\x84\x1e\x85\x95\x9f\x86\x96\x1b\xe5\x06\xcb\xa2\x99\xb0\xac\x78\x9b\x61\x8e\x1f"
+"\xbc\xf7\x6e\x05\xc2\x8d\x77\x0a\x42\x27\x0a\x69\x9f\x7a\xb6\x8a\x1f\x7e\x4e\x75\x81\x84\x88\x6a\x7f\x19\x90\x9e\x05\x8d\x92\x8c"
+"\x92\x92\x1a\xa4\x7a\x9d\x73\x84\x81\x89\x87\x85\x1e\x7e\x84\x88\x86\x84\x6f\x7d\x54\x18\x85\x8d\x85\x8d\x86\x8c\x08\x81\x8f\x89"
+"\x8d\x91\x1a\x8d\x8c\x8e\x8e\x9c\x1e\x9a\xcb\x05\xc9\x8c\xa1\x98\xb1\x1a\xb1\x74\x99\x4a\x1e\x3d\x06\x4b\x74\x7d\x66\x6a\x9e\x7b"
+"\xb4\x88\x1f\x7e\x50\x05\x87\x78\x89\x7d\x7e\x1a\x5a\xae\x67\xc6\x7f\x1e\x96\x89\x92\x89\x84\x71\x05\x89\x83\x8a\x82\x86\x1a\x75"
+"\x9e\x77\xa1\xa5\x97\x96\xae\x94\x1e\x0e\xf7\xe3\xf8\x60\x15\xc5\x06\xcb\xa2\x99\xb1\xb1\x74\x99\x4b\x1f\xfb\x28\x27\x0a\x69\xa1"
+"\x79\xb8\x8a\x1f\x3c\xfb\xf9\x05\x52\x8a\x76\x7d\x67\x1a\x65\xa2\x7d\xcb\x1e\xde\x06\xca\xa3\x99\xaf\xae\x75\x9c\x5c\x8c\x1f\xa7"
+"\xf7\x15\x05\xb6\xd4\xb8\x9c\xb5\x1b\xa6\x98\x82\x79\x80\x89\x7b\x87\x79\x1f\x70\xfb\x09\x05\x4b\x75\x7e\x65\x64\xa2\x7e\xcb\x1f"
+"\xe4\x06\xc9\xa3\x99\xaf\xae\x75\x9c\x5f\x8c\x1f\xa4\xf7\x04\x05\x91\xa5\x8e\xa0\x99\x1a\xd2\x51\xbd\x39\x5a\x5f\x80\x72\x5a\x1e"
+"\x0e\xf7\xa9\xf8\xae\x15\x8e\x99\x8c\x93\x96\x1a\xa7\x7d\x98\x6e\x66\x77\x76\x58\x7f\x1e\x2a\xfc\x49\x54\x0a\x58\x0a\xc9\x1d\xfb"
+"\x0f\x06\x62\xfb\x2d\x05\x88\x7f\x89\x7d\x81\x1a\x71\x9c\x7e\xaa\xb2\x9c\x9d\xbe\x95\x1e\x96\xc2\x05\xf7\x47\x06\xb8\x8c\xa5\x9f"
+"\xaf\x1a\xaa\x74\x9b\x5f\x1e\x0e\xf8\x61\xf3\x15\xbc\xf7\x6e\x05\xc2\x8c\x77\x0a\x42\x27\x0a\x6a\xa0\x7a\xb5\x89\x1f\x7e\x4e\x05"
+"\x6f\x4d\x5f\x7f\x5c\x1b\x78\x7f\x90\x94\x8d\x8c\x8e\x8e\x9c\x1f\x9a\xcc\x05\xc9\xa1\x98\xb1\xb1\x74\x99\x4a\x1f\x3d\x06\x4b\x74"
+"\x7d\x66\x6b\x9e\x7a\xb4\x88\x1f\x7e\x50\x05\x87\x78\x89\x7e\x7d\x1a\x4e\xc2\x63\xde\xb4\xb2\x93\x9c\xbb\x1e\x82\x66\x05\xfb\x0a"
+"\x06\x5f\xfb\x2a\x05\x87\x7f\x89\x7d\x82\x1a\x6f\x9a\x7d\xa9\xb3\x9f\x9e\xbc\x95\x1e\x97\xc2\x05\xf7\x2c\x06\xc2\x8c\xa2\x9a\xb1"
+"\x1a\xae\x77\x9a\x5c\x1e\x0e\xf8\xb4\xf7\xd1\x15\xfc\x5f\x06\x85\x6a\x88\x6d\x6e\x1a\x36\xa9\x43\xbe\x66\x1e\x6f\xb2\xbe\x7b\xbd"
+"\x1b\xf7\x4b\xf7\x41\xf7\x45\xf7\x4f\xf7\x17\x2b\xeb\xfb\x17\x33\x23\x59\x43\x4c\x1f\xed\x63\x8c\x8d\x8d\x8c\x8d\x8d\x19\x8c\x8c"
+"\x8b\x8c\x8c\x1b\xaf\xbb\xb2\x9b\xb5\x1b\xb7\xb2\x78\x6c\xa3\x1f\x9e\x71\x99\x64\x70\x1a\x72\x27\x15\x68\x56\x7d\x79\x74\x76\x08"
+"\x6d\x6a\x55\x76\x60\x1b\x61\x62\x9e\xaa\x75\x1f\x7e\x9c\x82\xa6\x80\xbc\x08\x0e\x22\x1d\xfb\x09\xf8\x0e\x46\x1d\x2d\x1d\xfb\x0a"
+"\xf8\x7b\x2b\x0a\xf8\x40\xf8\xd6\x15\xfb\x4c\xfb\x41\xfb\x44\xfb\x4f\xfb\x17\xeb\x2a\xf7\x16\xf7\x48\xf7\x44\xf7\x45\xf7\x4a\xf7"
+"\x1b\x2d\xec\xfb\x17\x1f\xe7\xfb\xed\x15\x74\x5f\x7a\x75\x6b\x72\x08\x6a\x62\x5d\x79\x5f\x1b\x62\x65\x9d\xab\x72\x1f\x78\xa2\x84"
+"\xa0\x86\xbb\x08\x9b\xdf\x15\xeb\xb4\xdd\xc9\xe0\x1b\xde\xc1\x4c\x2c\x8a\x1f\x0e\xbe\x1d\x24\x1d\xad\xf7\x28\x05\x8e\x9b\x8c\x91"
+"\x93\x1a\xa1\x21\x1d\xcf\xf9\x4e\x46\x1d\x33\x1d\xfb\x5e\xf8\x2c\x2b\x0a\xf7\x50\xf9\x6c\xf7\x0b\x0a\x7a\x94\x7a\xba\x0a\x0e\xf8"
+"\x3d\x95\x15\x7f\x9b\x96\x87\x9c\x1b\xd2\xba\xe5\xf7\x1e\xf7\x19\x5a\xe5\x43\x39\x61\x33\xfb\x3f\x1f\xfb\xd1\x07\x71\x9c\x79\xa4"
+"\xa3\x9c\x9d\xa5\x1e\xf7\xe6\x04\x9e\x07\xd0\xa1\xd3\xa0\xa1\x9e\x47\x3f\x2f\x7b\x51\x71\x75\x7c\xaf\xc3\x88\x1e\xfc\x04\xf7\xc0"
+"\x15\xfb\xd0\x07\x8a\x67\x81\x6f\x7c\x86\x08\x7c\x83\x82\x7c\x7a\x1a\x89\x07\x8c\x73\x9e\x7a\xa5\x8d\x08\xee\x06\xf7\x06\xca\xec"
+"\xf7\x43\xf7\x06\x6d\xe1\x55\xb4\x1f\x6d\xa2\x73\x93\x5b\x8c\x8d\x93\x8c\x8e\x8e\x8e\x08\x90\x92\x8d\x91\x93\x1a\x96\x85\x96\x80"
+"\x91\x1e\x89\x8c\x05\x8f\x85\x83\x8d\x84\x1b\x71\x71\x6c\x64\x85\x1f\x86\x06\x6f\x79\x7b\x73\x74\x9d\x7b\xa7\x1f\xe1\x16\xdb\x8a"
+"\xa6\x57\xfb\x28\x1a\x2a\x79\x50\x69\x77\x1e\x83\x7c\x7a\x88\x61\x1b\x95\x9d\x94\xb2\xa9\x1a\x0e\xf7\x9f\xef\x15\x86\x8d\x69\x9a"
+"\x80\x91\x7d\x96\x19\x64\xab\x73\xce\xd6\x1a\xf7\x0a\xc3\xcb\xf3\xf3\xc3\x4c\xfb\x0b\x36\x6e\x46\x5a\x6d\x1e\x80\x84\x80\x85\x70"
+"\x80\x08\x27\xf7\x5f\x07\xa5\x94\x8c\x92\x96\x1f\x9c\x95\x96\x9e\x9d\x1a\x9c\x82\x9c\x7c\x95\x1e\x94\x7f\x81\x8d\x70\x1b\x5e\x06"
+"\xc8\xac\xae\xd5\xeb\x1a\xd9\x6e\xd7\x5d\xb6\x1e\xb6\x5d\x3b\xa5\x34\x1b\x34\x3b\x71\x60\x5d\x1f\x5d\x60\x6e\x3f\x3d\x1a\x2b\xae"
+"\x41\xc8\x6a\x1e\x5e\x06\x72\x82\xed\x0a\x83\x97\x95\x89\xa7\x1b\xf7\x5f\x06\x0e\xb0\x0a\x79\x1d\xe6\x16\xbe\x06\xf7\x34\xf8\x19"
+"\xf7\x35\xfc\x19\x05\xbe\x06\xfb\x42\xf8\x47\x05\x40\x06\x0e\xe6\xf8\x46\x15\xf7\x42\xfc\x46\x05\xd6\x06\xf7\x42\xf8\x47\x05\x58"
+"\x06\xfb\x35\xfc\x19\xfb\x34\xf8\x19\x05\x58\x06\x0e\xf7\xbd\xf8\x89\x15\xfb\x1b\xfb\x05\xfb\x04\xfb\x1b\xfb\x22\xf7\x02\xfb\x04"
+"\xf7\x20\xf7\x1c\xf7\x03\xf7\x04\xf7\x1f\xf7\x1f\xfb\x03\xf7\x03\xfb\x1e\x1f\x70\xfb\xad\x15\xfb\x36\x07\x35\x94\x3e\xd6\x87\xd9"
+"\x08\xc2\x04\x91\xde\xd5\xd5\xe2\x96\x08\xfb\x3c\x07\xc2\x54\x15\xf7\x3b\x06\x88\x42\x3b\x3d\x37\x80\x08\xf7\x6d\x04\xf7\x3c\x07"
+"\xdf\x82\xd7\x3f\x92\x38\x08\x0e\x9c\x16\xf8\xcb\xf8\xcb\xfc\xcb\x06\xf8\x92\xfc\x92\x15\xfc\x59\xf8\x59\xf8\x59\x06\x0e\xca\xf7"
+"\xe7\x15\xfb\x2b\x90\x68\xa6\x5f\x1e\x47\xb5\xd8\x62\xe1\x1b\xbf\xbb\x9a\xa6\xb4\x1f\xbe\xae\xa8\xb9\x95\xca\x08\x90\xac\x8c\xa1"
+"\xed\x1a\xf7\x51\x07\x9f\x80\x99\x7b\x7b\x82\x7f\x75\x1e\xfb\x54\x07\xfb\x10\x86\x62\x78\x6a\x1e\x57\x6d\x4a\x68\x49\x1b\x63\x62"
+"\x98\xa2\x6a\x1f\x62\xa8\x78\xac\x85\xbb\x87\xa9\x8b\x8b\x8a\xf7\x01\x08\xf7\x54\x07\xa0\x81\x98\x7b\x7a\x82\x7f\x75\x1e\x0e\xf7"
+"\xe1\x16\xf7\x67\xf8\xeb\x05\x55\x06\x4c\xfb\x37\x05\xfb\x97\x06\x4d\xf7\x37\x05\x58\x06\xf7\x5f\xfc\xeb\x05\xf7\x2a\xf8\x15\x15"
+"\xfb\x03\xfb\xe2\x05\x84\x06\x24\xf7\xe2\x05\x0e\xf8\xf4\xf8\x3d\x75\x1d\xa7\xe5\x1d\xa6\xa7\xc1\xae\x1f\xcb\xb5\x9a\x9c\xa6\x5c"
+"\x1d\xf8\x99\xf7\xd5\x15\x92\x06\xb2\xa9\xa6\xae\xa9\x7a\x97\x60\x1f\xfb\x04\x06\x59\x6c\x73\x66\x6d\x9d\x7e\xb5\x1f\x90\x06\x6f"
+"\xfb\x14\x05\x45\x7c\x67\x69\x4f\x1b\x63\x76\x9b\xa8\x96\x8e\x9a\x92\xab\x1f\xc0\xf7\x7d\x05\xfb\x0b\x06\x58\x6d\x74\x64\x6e\x9d"
+"\x7e\xb5\x1f\x90\x06\x6e\xfb\x15\x05\x87\x77\x88\x73\x7b\x1a\x34\xd0\x4f\xf0\xc9\xbf\xa0\xb4\xb5\x1e\xa9\xa9\x9d\xb1\x9a\xcf\x08"
+"\x0e\x72\x1d\xfb\x69\xf8\x2d\x15\x69\x6c\x6e\x6b\x72\x68\x0a\x9d\x79\xa5\xae\xaa\xa8\xad\xa3\x79\x9c\x70\x1f\x0e\x72\x1d\x6e\xf8"
+"\x12\x15\x9d\x97\x94\x97\x22\x0a\x7b\x82\x81\x87\x82\x7e\x1e\xfb\x13\x38\x05\x79\x80\x82\x7e\x7d\x1a\x7b\x96\x81\x9b\x94\x94\x8f"
+"\x94\x9a\x1e\xfb\x10\xe6\x15\x68\x6c\x6e\x6a\x73\x9d\x79\xa6\xad\xaa\xa8\xac\xa4\x79\x9c\x71\x1f\xf7\xd7\x16\x64\x1d\x0e\x72\x1d"
+"\x82\xf8\x12\xed\x1d\x57\x1d\x39\xf8\xeb\xeb\x1d\xf8\xf4\xf8\x3d\x15\xfb\x20\x25\x1d\x6e\x9d\x7e\xb6\x1e\xa8\x06\x66\xfb\x3c\x05"
+"\x58\x4d\x70\x7f\x59\x1b\x5f\x71\x9a\xa6\x93\x8c\x91\x8c\x93\x1f\xc8\xf7\xa2\x05\xfb\x0d\x06\x71\x82\x8a\x85\x80\x1f\x75\x7f\x7d"
+"\x76\x76\x9d\x1d\x4b\x1d\x79\x1a\x44\xc7\x5b\xe6\x61\x1d\xa8\x99\x8e\x97\x99\xf7\x02\x0a\x97\x81\x93\x1e\x83\x91\x84\x8d\x77\x8c"
+"\x08\xbb\xf8\xa7\x15\x7d\x7b\x81\x77\x78\x1f\x6f\x6f\x88\x88\x7d\x1b\x81\x80\x98\x1d\x67\x63\x75\x63\x66\x1f\x7b\x79\x84\x7e\x7f"
+"\x1a\x7b\x97\x80\x9c\x96\x95\x90\x96\x96\x1e\xaf\xb0\x93\x8e\x1d\xa1\xa1\x93\x99\x99\x1a\x98\x7c\x97\x7c\x1e\x0e\x3d\x0a\xf7\xdd"
+"\xf8\xe2\x15\xa5\x9d\x91\x94\x9c\x1a\x9e\x7c\x98\x77\x80\x83\x88\x7f\x7a\x1e\xfb\x2b\x20\x05\x74\x7a\x82\x80\x7b\x1a\x78\x98\x7f"
+"\xa0\x8a\x1e\x94\x99\x91\x95\x9a\x1f\x0e\xf7\xb8\xf7\x50\x1d\xa1\x8d\x92\x8e\x97\x95\x19\x9b\x97\x94\x9c\x9c\xf7\x13\x1d\x7a\x7a"
+"\x1a\x7a\x87\x0a\x87\x94\x91\x8b\xa0\x1b\x4b\xfb\x15\x71\xf7\x22\x05\x2d\x06\x33\xfb\x22\x86\xf7\x15\x05\xa5\x96\xad\x0a\xf7\x56"
+"\xf8\xd6\xaf\x0a\x3d\x0a\xdb\xf9\x0c\x40\x0a\x3d\x0a\xe0\xf9\x24\xf7\x15\x0a\x90\x81\x97\xf7\x32\x1d\x85\x95\x80\x96\x1f\x0e\xf8"
+"\x48\xf7\x84\x15\xa2\xf7\x00\x87\x8c\x05\x86\x06\x84\x8c\x88\x8b\x83\x8c\x08\x37\x94\x70\x9a\xae\x1a\xa3\x9a\xa4\xa2\x9b\x1e\x9c"
+"\x96\xa5\x92\xad\x8e\xab\x8d\x98\x8d\x96\x8e\x08\xa3\x94\x9e\xa3\xa4\x1a\xa8\x79\x98\x60\x1e\xfb\x5c\x06\x5a\x6a\x73\x68\x6e\x9f"
+"\x7d\xb7\x89\x1f\x6c\x6d\x7f\x71\x65\x1a\x67\x99\x6a\xa5\x70\x1e\x2e\x5f\x62\x50\x34\x1a\x57\x9f\x61\xb2\x70\x1e\xa2\x7b\xb0\x7e"
+"\xcd\x7b\x08\xa5\x85\x91\x86\x7f\x1a\x74\x79\x82\x57\x86\x1e\x61\x87\x74\x74\x65\x1a\x72\xa0\x7d\xb3\xf7\x03\xd2\xc5\xe5\xca\x6d"
+"\xa9\x37\xa2\x1e\x30\xa3\x7f\x94\xb1\x1a\xd1\xd6\xb6\xf7\x13\x8e\x1e\x0e\xf7\x54\x92\x58\x1d\xf7\xb7\xf7\x94\x60\x0a\x53\x0a\xf7"
+"\x4b\xf7\xe2\xf7\x15\x0a\x91\x81\x96\x80\x1f\xf7\x03\x21\x05\x80\x96\x94\x86\x95\x1b\xa5\xa3\xa1\xa2\x95\x85\x95\x80\x96\x1f\x0e"
+"\xd2\x1d\xf7\x29\xf8\x81\x2f\x1d\xd2\x1d\x8d\xf8\xa5\x5b\x1d\xf7\xfa\xf8\x87\x15\x55\x60\x56\x55\x61\x55\x08\x50\x3f\x72\x50\x4b"
+"\x1a\x5f\x99\x62\xa4\x6e\x1e\xa2\x71\xac\x79\xd4\x73\xa1\x84\x8b\x8b\x8e\x8a\x08\x99\x85\x92\x83\x7f\x1a\x74\x76\x7f\x5a\x86\x1e"
+"\x60\x87\x75\x75\x64\x1a\x71\xa0\x7e\xb3\xf6\xd6\xc7\xe1\xaf\x7c\xac\x72\xa2\x1e\x7c\x99\x72\x96\x5e\x9a\x08\x40\xa4\x7d\x98\xb4"
+"\x1a\xc8\xb8\xd2\xf0\xec\x1e\xbc\xbb\xbf\xb5\xb8\xa9\x94\x91\x18\xa1\xf1\x05\xfb\x70\x06\x59\x6b\x72\x63\x71\x9f\x7e\xb4\x1f\x0e"
+"\x7e\x98\xf8\xed\x9b\x06\xf2\x0a\xf7\x04\x0b\xaf\x9c\x8f\x90\x8f\x92\x8f\x8f\x8f\x96\x92\x92\x0c\x0c\xf8\xec\x14\xa9\x13\x01\x06"
+"\x02\x00\x01\x00\x0d\x00\x14\x00\x1a\x00\x22\x00\x5d\x00\x63\x00\x69\x00\x6f\x00\x7d\x00\x83\x00\x8b\x00\xa6\x00\xb4\x00\xc1\x00"
+"\xc7\x00\xfd\x01\x01\x01\x07\x01\x10\x01\x15\x01\x20\x01\x25\x01\x2e\x01\x36\x01\x3d\x01\x43\x01\x4a\x01\x79\x01\x80\x01\xab\x01"
+"\xb9\x02\x13\x02\x1b\x02\x20\x02\x27\x02\x4b\x02\x57\x02\x70\x02\x8c\x02\x9d\x02\xa5\x02\xb4\x02\xbf\x02\xc3\x02\xcf\x02\xd6\x02"
+"\xdf\x02\xe6\x02\xee\x02\xf5\x02\xfd\x03\x03\x03\x51\x03\x5b\x03\x75\x03\x7a\x03\x88\x03\xdc\x03\xf8\x04\x46\x04\x83\x04\xa9\x04"
+"\xde\x05\x0a\x05\x14\x05\x35\x05\x41\x05\x47\x05\x59\x05\x66\x05\x73\x05\x7b\x05\x90\x05\x99\x05\xad\x05\xb3\x05\xb9\x05\xc4\x05"
+"\xd5\x05\xdb\x05\xe7\x05\xf4\x05\xf9\x06\x00\x06\x09\x06\x0f\x06\x16\x06\x20\x06\x2d\x06\x34\x06\x3b\x06\x47\x06\x4b\x06\x56\x06"
+"\x61\x06\x6b\x06\x72\x06\x7b\x06\x84\x06\x8d\x06\x96\x06\x9f\x06\xa8\x06\xae\x06\xb5\x06\xbd\x06\xc5\x06\xda\x06\xe3\x07\x34\x07"
+"\x8e\x07\xe5\x08\x43\x08\x64\x08\xcb\x09\x25\x09\x4c\x09\x5c\x09\x6b\x09\x70\x09\x8a\x09\x98\x0a\x08\x0a\x45\x0a\xaf\x0b\x00\x0b"
+"\x1d\x0b\x68\x0b\xae\x0b\xc8\x0b\xf6\x0c\x3b\x0c\x65\x0c\x9a\x0c\xda\x0d\x0f\x0d\x2c\x0d\x30\x0d\x3f\x0d\x5f\x0d\x7a\x0d\x96\x0d"
+"\x9c\x0d\xb7\x0d\xe2\x0d\xf8\x0d\xfd\x0e\x08\x0e\x18\x0e\x24\x0e\x30\x0e\x41\x0e\x47\x0e\x4a\x0e\x5f\x0e\x62\x0e\x70\x0e\x94\x0e"
+"\xb3\x0e\xce\x0e\xef\x0e\xfd\x0f\x19\x0f\x2a\x0f\x36\x0f\x48\x0f\x68\x0f\x75\x0f\x81\x0f\x87\x0f\xa4\x0f\xaf\x0f\xbb\x0f\xcf\x0f"
+"\xe2\x0f\xe7\x0f\xfb\x10\x14\x10\x19\x10\x28\x10\x40\x10\x45\x10\x50\x10\x5a\x10\x60\x10\x6d\x10\x74\x10\x89\x10\x92\x10\xa6\x10"
+"\xb4\x10\xb9\x10\xcd\x10\xd9\x10\xe0\x10\xf3\x10\xff\x11\x12\x11\x1b\x11\x28\x11\x33\x11\x3c\x11\x42\x11\x49\x11\x5a\x11\x63\x11"
+"\x6c\x11\x73\x11\x7d\x11\x8e\x11\x9e\x11\xae\x11\xb7\x11\xbc\x11\xc4\x11\xce\x11\xd8\x11\xe2\x11\xea\x11\xf0\x11\xf5\x12\x03\x12"
+"\x11\x12\x1f\x12\x2d\x12\x33\x12\x41\x12\x47\x12\x55\x12\x63\x12\x6c\x12\x75\x12\x7e\x12\x8b\x12\x98\x12\xa5\x12\xb2\x12\xbf\x12"
+"\xcc\x12\xd8\x12\xe4\x12\xf0\x12\xfc\x13\x08\x13\x12\x13\x1a\x13\x22\x13\x2a\x13\x32\x13\x3a\x13\x45\x13\x50\x13\x5b\x13\x66\x13"
+"\x71\x13\x7c\x13\x87\x13\x92\x13\x9d\x13\xa8\x13\xb3\x13\xbe\x06\xa8\x99\x8f\x96\x99\x1f\x9a\x97\x95\x9d\x0b\x1a\x6d\x9d\x7f\xb6"
+"\x1e\x0b\x99\x1a\x9a\x80\x95\x0b\x95\x0a\x29\xdc\x44\x93\x1d\x0b\xf8\x23\xf8\x49\x15\x2e\x2f\x65\x4d\x50\x1f\x5c\x59\x6f\x4e\x54"
+"\x1a\xfb\x03\xe2\x40\xf7\x16\xf7\x39\xf7\x2b\xf7\x13\xf7\x1f\xf7\x02\x34\xd7\xfb\x13\x1e\x70\x24\x15\xd9\xc0\x63\x50\x3d\x35\x46"
+"\x28\x40\x56\xb4\xc5\xd9\xe1\xd0\xeb\x1f\x0b\x06\x6b\x81\x3a\x1d\x0b\x94\x8f\x94\x99\x1e\x0e\x06\x4c\x73\x7d\x66\x0b\xf8\x5c\x49"
+"\x0a\x9d\x9c\x1a\x9b\x80\x9b\x7d\x74\x1d\x0b\xd0\x0a\x83\x84\x8c\x0b\x8e\x97\x9a\x1f\x9b\x97\x94\x0b\xf7\x2a\x0a\xcb\xa8\xbd\xb8"
+"\x1f\xa1\xa3\x9a\xaa\xf7\x30\x1d\x54\x6b\xa6\xb9\x1f\xa6\x8c\x82\x96\x77\x1b\x0e\xb8\xb4\xb1\xb5\xaa\x73\xa2\x69\x1f\x7a\xf7\x24"
+"\x0a\x0b\x05\x63\x85\x72\x74\x6b\x1a\x6f\x9f\x7c\xb4\x1e\x0b\x06\x5a\xfb\x6f\x05\x0b\xf7\xfd\xf8\x61\x15\xc1\x06\xa9\x97\x7f\x1d"
+"\xfb\x69\x49\x1d\x9c\x7f\xb7\x1e\xbe\x06\x3c\xfb\xfa\x05\x55\x25\x0a\xf8\x6f\x06\xb5\xf7\x4e\x05\x8e\x9b\x8c\x90\x79\x0a\x67\x75"
+"\x75\x5e\x81\x1e\x78\x36\x05\xfb\x63\x06\x0b\xf9\x0a\x77\x1d\xf7\x05\x1d\x78\x87\x1d\x79\x7b\x21\x0a\xf8\x13\x7b\x1d\x0b\xf7\x43"
+"\x1d\x4b\x0a\x06\x59\x6b\x73\x67\x6e\x9f\x7c\xb4\x1f\x0b\xf7\x1f\x0a\x9d\x0b\x94\x94\x87\x95\x1b\xa3\xa2\xa1\x0b\x88\x7f\x7c\x1f"
+"\x7b\x7f\x82\x0b\x6b\x81\x88\x7f\x7c\x1f\x0b\x06\x5b\xfb\x6f\x05\x0b\xf7\xb9\xf8\x3d\x92\x0a\x0b\xf7\x89\xf7\x68\x15\xe7\x06\xb1"
+"\x7e\xd1\xfb\x03\xa6\x33\x08\xf7\x20\x1d\x73\xc4\x6d\xbb\x68\xb0\xce\x1d\xba\xf7\x67\x15\xab\xf7\x26\x05\xf7\x01\x06\xc2\xaf\x75"
+"\x68\x5a\x42\x63\x33\x1f\x0b\xf7\x96\xf8\x03\x96\x0a\x0b\xf7\xe6\xf7\x50\x1d\x05\xb3\x8f\xa5\xa3\xac\xf7\x13\x1d\x79\x7b\x1a\x6d"
+"\x9c\x7f\xb7\x1e\x4b\xfb\x15\x71\xf7\x22\x05\x2d\x06\x33\xfb\x22\x86\xf7\x15\x05\xa6\x95\xad\x0a\x0b\xf9\x06\x7a\x0a\x9c\x6a\x5b"
+"\x95\x54\x1b\x2e\x5a\x0a\x0b\xf8\x0c\xf8\x3e\x15\xfb\x20\x06\x71\x7a\x87\x80\x7e\x1f\x7b\x7e\x82\x7a\x7b\x1a\x6d\x9d\x7e\xb5\x1e"
+"\xa9\x2e\x0a\x54\x06\x6c\x81\x88\x7f\x7b\x1f\x7c\x7f\x31\x1d\xb5\x1e\xf7\xbe\x06\xa7\x9a\xf7\x1a\x1d\xfb\x1a\x06\xa9\xf7\x1b\x05"
+"\xd1\xf2\xbd\xa5\xa9\x1b\x98\x92\x87\x7f\x97\x1f\x7d\x98\x95\x86\x9a\x1b\xac\xac\xaa\xaa\xb1\x52\xb1\x53\x59\x64\x7c\x55\x32\x1f"
+"\x0b\xc1\x0a\xa8\x75\x9f\x6c\x1f\x0e\x1a\x9c\x2c\x1d\x0b\x8c\x90\x1b\xa7\xec\x1d\x0b\xf7\x39\x06\xfc\x0c\xfb\xfc\x74\x26\x05\xf8"
+"\x62\x06\xb1\xf7\x3b\x05\x8f\x9e\x8b\x8c\x93\x1a\xa2\xf7\x74\x1d\x82\x86\x80\x86\x72\x7c\x49\x18\x0b\x05\x78\x34\x0a\xf7\x66\xf7"
+"\x6a\x1d\x38\x06\x0b\x87\x1e\x3b\xfb\xfa\x05\x89\xf7\x1e\x0a\x7b\x7f\x66\x0a\x9c\x81\x9c\x41\x1d\x76\x1b\x82\x2b\x1d\x0b\x15\x98"
+"\x97\x92\x91\x8b\x1a\x93\x94\x8e\x92\x96\x1a\x9d\x7c\x99\x78\x7d\x83\x87\x7f\x7d\x1e\xfb\x08\x26\x05\x0b\x15\x64\x71\x77\x6e\x72"
+"\x98\x81\xae\x1f\xf7\x89\x06\xb1\xa7\x4b\x0a\x1f\x9a\x97\x95\x9d\x3c\x1d\x0b\xf8\x61\x15\xed\x06\xa9\x97\x8e\x97\x9a\x1f\x9a\x97"
+"\x95\x0b\x65\x68\x66\x6e\xa1\x76\xa9\xb4\xb1\xae\x0b\x9f\xa8\xa5\x1d\x1e\xfb\x32\x21\x05\x75\x7c\x81\x7d\x7b\x1a\x0b\xf7\x56\x1d"
+"\xb3\xb1\xae\x0b\x1b\x8a\x06\xb0\xf7\x3d\x05\xbe\x0b\x8e\x97\x9b\xf7\x03\x0a\x0b\x82\x1a\x7c\x96\x80\x9b\x99\x0b\x9b\x7d\x90\x1e"
+"\x8e\x82\x0b\x7c\x1a\x78\x99\x7e\x9f\x95\x0b\xf7\x82\x92\x58\x1d\x0b\x05\x88\x67\x0a\xa8\xde\x0a\x82\x8d\x6f\x4e\x0a\xcc\xa5\x96"
+"\xb9\x1b\xb7\xa6\x7b\x71\x84\x8a\x81\x88\x7f\x1f\x68\xfb\x34\x05\x88\x06\x6b\x80\x89\xf7\x04\x0a\xf7\x04\x06\xa9\x99\x8f\x96\x99"
+"\xf7\x03\x0a\xa9\x7a\x97\x60\x1e\x8a\x06\xb1\xf7\x3f\x05\x8e\x99\x8c\x96\x9b\x1a\xd4\x4f\xbc\x31\x59\x58\x78\x6a\x60\x1e\x0e\xf7"
+"\xf9\x6a\x0a\xaa\x1a\x9c\xc7\x1d\x0b\xdd\xf7\x86\x15\x80\x0a\xfb\x10\xed\x3b\xf7\x2a\xe6\xda\xa3\xb9\xc6\x1e\xa5\xa0\x98\x9e\x9f"
+"\x9e\x0a\x0b\xf8\x5b\xc1\x1d\x0b\xf8\x2e\x49\x0a\x9c\x9c\x1a\x9c\x81\x9b\x7c\x74\x1d\x0e\xf7\x7d\xf7\xd5\x15\xa7\x06\xb9\xaa\xa4"
+"\xb1\xa6\x75\x99\x64\x1f\xfb\x28\x34\x0a\x9b\x06\x5b\xfb\x6d\xf7\x4b\x1d\xf7\x88\xf7\x8b\x6a\xfb\x23\x05\x73\x06\x59\x6b\x72\x64"
+"\x72\xa1\x7c\xb2\x1f\xf7\x2d\x06\xb9\xab\xa4\xae\xa8\x77\x9a\x62\x1f\x7a\x06\xba\xf7\x6d\x05\x96\x06\xb1\xab\xa7\xad\xa6\x76\x9a"
+"\x62\x1f\x24\x06\xfb\x85\xfb\x8b\x05\x0b\x88\x1d\x58\xa2\x5d\xb3\x6c\x1e\x71\xaf\xc2\x7d\xd6\x1b\xef\xd5\x9c\xaf\xc1\x1f\xa7\x9d"
+"\x9a\xa1\xa0\xdd\x1d\x0b\x15\xa5\xa3\x8f\x90\x9b\x1a\x9d\x7e\x98\x78\x80\x81\x87\x80\x7e\x1e\xfb\x12\x22\x05\x6f\x73\x88\x86\x7c"
+"\x1a\x79\x99\x7c\x9d\x95\x97\x90\x97\x98\x1e\xf7\xb6\xf3\x15\xa6\xa3\x8e\x90\x9b\x1a\x9d\x7e\x98\x79\x7f\x82\x87\x80\x7d\x1e\xfb"
+"\x12\x22\x05\x70\x73\x87\x86\x7c\x1a\x79\x99\x7c\x9d\x95\x97\x91\x96\x98\x1e\x0e\xf8\xd6\x15\xfb\x4a\xfb\x42\xfb\x45\xfb\x4d\xfb"
+"\x17\xea\x29\xf7\x14\xf7\x4e\xf7\x41\xf7\x43\xf7\x50\xf7\x18\x2b\xeb\xfb\x16\x1f\x75\x24\x15\xdb\xc4\x4e\x36\xfb\x0b\xfb\x03\xfb"
+"\x0c\xfb\x02\x39\x52\xc7\xe1\xf7\x0d\xf7\x02\xf7\x0a\xf7\x05\x1f\x0b\x1a\x61\xa9\x72\xbe\xb0\xba\x97\x9c\xa7\x1e\x9a\x95\x96\x9c"
+"\x9a\x1a\x9f\x7d\x98\x76\x83\x85\x89\x86\x80\x1e\x7e\x6c\x80\x87\x7f\x1b\x80\x86\x8e\x92\x0b\x15\xfb\x13\x6a\x05\x6c\x83\x80\x80"
+"\x76\x1a\x7b\x95\x80\x99\x91\x93\x8c\x8e\x93\x1e\xb2\x97\x5d\xfb\x79\x05\x5d\x06\x6b\x78\x7d\x73\x78\x97\x83\xa5\x1f\xf7\x37\x06"
+"\xa6\x9d\x9b\xa3\x9d\x82\x92\x74\x1f\x59\x06\x0b\xf7\x55\x1d\xe0\xef\xf5\xdb\xd5\x9d\x7f\x97\x7a\x74\x7f\x80\x6d\x7f\x1f\x61\x7b"
+"\x5c\x6e\x56\x1b\x72\x75\x92\x9a\x78\x1f\x7b\x97\x88\x92\x88\xa8\x08\xac\x88\x84\x94\x75\x1b\x0e\xf7\x10\x0a\x95\x1b\xa3\xc8\x0a"
+"\x26\x0a\x56\x64\x97\xa2\x75\x1e\xa9\x88\x7c\x99\x6f\x1b\x66\x75\x75\x5f\x81\x1f\x84\x6b\x05\x88\x7b\x8a\x87\x83\x1a\x73\x9d\x7b"
+"\xa6\x99\x0b\x1b\xfb\xa8\x6b\x0a\xf7\x06\x06\x4f\xfb\x9f\x0b\x06\xa8\x99\xd8\x0a\x0b\x8f\x8e\x8e\x8c\x8d\x08\x93\x94\x8e\x92\x96"
+"\x1a\x9d\x7d\x98\x78\x7a\x0b\x7d\x1a\x7b\x9a\x7d\x9d\x9a\x9b\x94\x9b\x99\x1e\x0e\xf7\x00\x0a\xf7\x0d\x06\xa9\x98\x3d\x1d\x9b\x1a"
+"\x0b\xeb\x0a\xb5\x1e\xf7\x05\x06\x0b\x9d\x79\xa5\xae\xaa\xa8\xac\xa4\x79\x9c\x70\x1f\xf7\x61\x16\x69\x6c\x6e\x6b\x72\x0b\x90\x1e"
+"\x8e\x82\x85\x8c\x76\x1b\x0b\xf7\x95\x15\xad\xfb\x95\x05\xf7\x08\x06\xf7\x37\xf8\x62\x05\xae\x91\xa3\xa3\x0b\x06\x6a\x83\x99\x1d"
+"\x0b\x06\x6b\x81\x37\x0a\x0b\x06\x6b\x81\x2a\x1d\x7b\x1a\x6d\x9c\x7f\x0b\x9d\x1a\x9d\x7c\x98\x77\x80\x80\x87\x80\x7d\x1e\xfb\x2b"
+"\x21\x05\x0b\x86\x84\x4d\x1d\x26\x0a\x1a\x75\x9e\x7a\xa5\xad\xa3\xa2\xb6\x94\x1e\x0b\xf1\x0a\x89\x81\x89\x7f\x85\x1a\x75\x9e\x79"
+"\xa3\x0b\x7d\xf7\x15\x1d\x0b\x4a\x0a\xb1\xa8\x75\x9f\x0b\x90\x1e\x8e\x82\x84\x8c\x77\x1b\x0b\xf7\x72\x1d\x7b\x1e\x0e\x9a\x1d\x81"
+"\x7d\x87\x82\x0b\x9f\x99\xaf\x1a\xb1\x74\x99\x4b\x1e\x0b\x63\x93\x5b\x1b\xfb\x1d\x22\x46\x31\x4c\xbf\x6c\x0b\x93\x1a\xa2\x78\x9c"
+"\x72\x0b\xf8\x06\x15\xf7\x3c\x1d\x0b\x1a\x58\xb2\x6a\xc8\xdc\xcb\xc5\xd4\xa3\x82\x0b\x81\x3f\x1d\x0b\x06\xb0\xab\xa8\xac\xa7\x76"
+"\x99\x62\x1f\x0b\xab\xa2\xb0\xa8\x77\x99\x62\x1f\x82\x06\x0b\x1a\xa1\x7a\x9a\x73\x7a\x81\x85\x7a\x0b\x87\x7a\x89\x7a\x7a\x1a\x0b"
+"\x40\x4d\x3a\x79\x1f\x83\x69\x05\x0b\x06\x6c\x7f\x88\x7f\x7c\x1f\x7c\x0b\x8b\x8c\x94\x1a\xa2\x78\x9c\x72\x0b\x15\x40\xfb\xe4\x81"
+"\x5b\x5f\x6b\x0b\x1a\x72\x9c\x7c\xa9\xb5\xa2\xa7\x0b\x1f\x7b\x7f\x82\x7a\x7a\x1a\x6d\x0b\x95\x7b\x9a\x86\x1e\x0b\x90\x1e\x8f\x81"
+"\x87\x8b\x0b\x06\x92\xac\x05\xa2\x90\xa0\x0b\x73\x7b\x99\xa1\xac\xa5\xa4\x0b\xf7\x85\x9d\x0a\x98\x8e\x96\x99\xd3\x1d\x99\x8f\x96"
+"\x99\x1f\x9a\x97\x95\xe8\x0a\x0b\xf8\x16\xf7\x1e\x1d\x83\x84\xb7\x1d\xf7\x03\x1d\xb5\x05\xa0\x98\xf7\x08\x1d\x7b\x1a\x7a\x87\x0a"
+"\x8f\x89\x90\x8a\x95\x8a\xf0\x27\x18\xfb\x3c\xfb\x0b\x74\x89\x83\x89\x7f\x81\x19\x7b\x7e\x82\x7a\xf7\x36\x1d\x98\x94\x9d\x9d\x1a"
+"\x9c\x85\x94\x78\x95\xf7\x2d\x0a\x71\x21\x0a\xf7\x04\x06\xa8\x99\x28\x1d\x9b\x1a\x9c\x81\x9b\x7c\x91\x1e\x87\x8c\x85\x8c\x7f\x8c"
+"\x08\x0e\xf7\x91\xf7\x32\x15\x9c\x96\xd9\x39\x05\x7b\x7c\x84\x7e\x7a\x21\x0a\xf7\x0a\xf7\x22\x1d\x82\x85\x8b\x76\xd4\x0a\x9c\xd2"
+"\x0a\xfb\x04\x82\x0a\x7e\x82\x7a\x7a\x1a\x81\x8d\x86\x90\x82\x1e\x3b\x56\xd1\xf7\xd1\x05\xfb\x0d\x06\x73\x80\x8a\x85\x80\x1f\x76"
+"\x80\x7c\x75\x76\xf4\x0a\x33\xfc\x20\x05\x7e\x06\x6b\x80\x88\x7f\x7d\x1f\x7b\x7e\x31\x1d\xb5\x1e\xf7\x0c\x06\x0b\xf7\x46\xf7\x52"
+"\x1d\x52\xfb\x90\x05\x6c\x6c\x0a\x79\x7a\x21\x0a\xf7\x15\x20\x0a\x9c\x1a\x9c\x81\x9a\x7c\x91\x1e\x86\x8d\x84\x8c\x7e\x8c\xdb\xf7"
+"\xf9\x18\xb2\x90\xa4\xa3\xab\x41\x0a\xfb\x03\x06\xfb\x57\xfb\xaa\x41\xf7\xaa\x05\xfb\x03\x25\x1d\x72\x98\x7e\xa7\x88\x1e\x3c\xfb"
+"\xfa\x05\x5f\x8a\x6d\x72\x67\x21\x0a\xf7\x15\xb3\x0a\x8c\x77\x1b\x6d\x06\x0e\xf8\xcc\xf7\xef\x15\x9b\x1d\x5f\x5e\x65\x7b\x6b\x67"
+"\x1e\x3a\x41\x7d\x7f\x80\x82\x88\xf7\x5c\x1d\x05\xbf\x8d\x9e\x9a\xb0\x1a\xb1\x77\x97\x4d\x8b\x1d\xfb\x6e\x05\x50\x74\x7c\x66\x65"
+"\xa2\x7d\xca\x1f\xf7\x26\x1d\x86\xa2\x62\xb2\x44\x18\x98\x73\x94\x7d\x91\x86\x08\x82\x94\x9e\x87\xb4\xa4\x1d\x5f\x1f\x7d\x06\x8a"
+"\x06\x87\x06\x60\xda\x81\x9d\x7c\x9b\x79\x95\x19\xd9\xd0\xdd\x0a\x0b\xc6\x15\x69\xb3\xb7\x7b\xf7\x14\x0a\x3c\xd0\xfb\x11\x4f\x5e"
+"\x7d\x67\x54\x1f\x94\xb1\x05\xfb\x0d\xae\x0a\x97\x06\x2e\xfc\x33\x9f\x0a\x15\x28\x37\x1d\x7a\x87\x0a\x90\x89\x92\x8a\x98\x8a\x5a"
+"\xfb\x6f\x18\x89\xf7\x63\x1d\x7b\x1a\x6c\x9c\x7f\xb6\x1e\xf7\x04\x06\xa8\x99\x29\x1d\x9c\x81\x9c\x41\x1d\x77\x1b\x8a\x06\xb0\xf7"
+"\x3c\x05\xba\xc3\xae\x9b\xb7\x1b\xbc\xa4\x7c\x6f\x85\x8a\x84\x89\x83\x1f\x66\xfb\x3b\x05\x60\x6d\x72\x68\x6c\x9d\x7f\xb6\x1f\xe4"
+"\xd3\x0a\x7d\x1b\xb1\xf7\x3d\x05\x8e\x9a\x8d\x9a\x9a\x1a\xd3\x4e\xbb\x31\x55\x67\x7e\x64\x55\x1e\x0b\xf8\x24\xf7\x2b\x15\x94\x5c"
+"\x05\x79\x6c\x0a\x79\x7a\x1a\x6d\x9d\x7f\xb5\x1e\xf7\x1f\x6b\x1d\x9b\x97\x94\x9d\x9b\x1a\xa7\x79\x9a\x6b\x1e\x82\x06\x2b\xf8\x60"
+"\x05\xfb\x70\x6b\x0a\xc3\x06\xfb\x7b\xfb\xf9\x6b\x8a\x81\x89\x7d\x7f\x19\x7b\x7e\x31\x1d\xb6\x1e\xf7\x18\xdc\x0a\x82\x85\x8c\x76"
+"\x1b\x7c\x06\xa9\xba\x05\xf7\x67\xf2\x15\xfb\x25\x06\xf7\x03\xf7\x3d\x05\x0e\xf7\xb5\xf7\xd6\x15\xf7\x46\x81\x1d\x20\x1d\xdc\x1d"
+"\x6b\x99\x6f\xa4\x7b\x1e\x77\xa9\xb7\x80\xb8\x1b\xd2\xeb\xa1\xa8\xc3\x1f\xa4\x98\x97\x9c\xa1\x78\x1d\x0b\xf9\x0f\xe1\x1d\x49\x5d"
+"\x45\xe4\x0a\x97\x8e\x96\x99\xe0\x1d\x0b\x15\xf7\x3f\xfc\x03\x05\xf4\x06\xf1\xf8\x61\x05\xc4\x1d\x0b\xf8\x2d\xc1\x1d\x0e\xf7\x29"
+"\x0a\x79\x7e\x85\x7b\x7a\x1e\xa9\x4c\x73\x91\x52\x1b\xfb\x30\xfb\x25\xfb\x0a\xfb\x2e\x69\x1f\x0b\xf7\x56\xf7\x53\x15\xea\x06\xf5"
+"\xca\xa3\xc9\xc4\x9b\x0a\xca\x7f\xb5\x71\xac\x1f\xa8\x74\x6b\x9c\x6e\x1b\x6c\x73\x73\x6e\x7a\x90\x84\xa4\x7b\x1f\xab\x77\x92\x7d"
+"\x58\x1a\x52\x84\x63\x7a\x6c\x1e\x70\x7c\x79\x7c\x79\x1b\x7a\x82\x9a\xa5\x9b\x8e\x9e\x8f\xa0\x1f\x91\xa3\x8c\x92\x97\x1a\xa6\x7c"
+"\x99\x6f\x68\x75\x77\x5d\x7e\x1e\x38\x73\x75\x6b\x6b\x1b\x7b\x83\x98\xa7\xbe\xa1\xd4\xa5\xae\x1f\x98\x9c\x9b\x97\xa7\x98\x08\xad"
+"\x9a\x99\x9c\xa3\x1a\xa5\x72\xa3\x6f\x61\x51\x68\x5a\x66\x1e\x61\x53\x6e\x30\x3f\x1a\x0b\x1f\xb1\xb4\xa1\xbd\xbb\x1a\xe6\x44\xc4"
+"\xfb\x06\x1e\xfb\x7d\x06\x6b\xe7\x1d\x90\x1d\x6d\x9d\x7f\xb6\x1e\xf7\x69\x06\xa7\x9a\x8f\x96\x99\xf7\x45\x1d\x20\x1d\x2e\x06\xda"
+"\xf7\xfa\x15\xf7\x07\x06\xc4\xac\x74\x63\x4e\x56\x60\x3f\x1f\xfb\x05\x06\x0e\x15\x76\x79\x78\x76\x7d\x94\x82\x9c\x8a\x1f\xa2\x8a"
+"\x92\x8a\x95\x86\x08\x9d\x82\x97\x7a\x7a\x1a\x65\x6a\x76\x4f\x69\x7d\x8e\x94\x7f\x1e\x92\x84\x88\x8c\x84\x1b\x78\x79\x78\x76\x70"
+"\xb5\x79\xcb\xc4\xb1\x98\xa8\xaa\x1f\xa5\xa4\x9c\xaf\xa9\x1a\xa7\x7c\xa5\x72\x9b\x1e\xb5\xa6\x9e\xaa\xb2\x1a\xbf\x66\xac\x50\x48"
+"\x4b\x66\x65\x7d\x95\x80\x98\x94\x93\x8e\x92\x91\x1e\x9f\xa0\x9a\x91\xa7\x1b\xaa\x9d\x7f\x75\x73\x6f\x72\x6f\x1f\x0b\xf7\x5c\x15"
+"\xcf\xb9\xc0\x7b\xb9\x28\x99\xfb\x17\x19\xf7\x05\x06\xa8\x9a\x8f\x96\x98\x48\x0a\x82\x85\x8b\x77\x1b\x6e\x06\x76\xf5\x5f\xdb\x58"
+"\xa9\xf7\x5e\xf7\x22\x18\xb9\xaa\xa4\xaf\x9d\x81\x9a\x7c\x90\x1f\x8e\x82\x85\x8c\x77\x1b\x26\x6c\x0a\x78\x79\x1a\x7b\x90\x82\x99"
+"\x84\x1e\xfb\x58\xfb\x1c\xa7\xf7\x15\x05\xab\x06\xa9\x0b\x7e\x1d\xcb\xc5\x6c\x6a\x89\x1f\x8a\x76\x05\x74\x8a\x9d\x7a\xa5\x1b\xaf"
+"\xa1\xa1\xb7\x95\x1f\x9d\xdb\x05\x98\x0a\x0b\x05\x7f\x6d\x0a\xb6\x1e\xf7\x42\x06\xaa\x97\x50\x1d\x9b\x1a\x9d\x81\x9b\x7c\x8f\x1e"
+"\x8e\x83\x82\x8c\x79\x1b\x56\x06\xf7\x85\xf8\x3f\x15\xb3\xaa\x82\x79\x9f\x1f\x9c\x7c\x97\x71\x76\x1a\x65\x70\x60\x63\x72\x1e\x79"
+"\x6d\x69\x82\x62\x1b\x40\x5d\xae\xc2\xb1\xa6\xb5\xb3\xa4\x1f\x9e\xa9\xac\x93\xb6\x1b\x0e\x05\xa5\x97\x8d\x8f\x95\x1f\x9f\x94\x9c"
+"\xa4\xa0\x1a\xa7\x76\x99\x63\x1e\xfb\x0c\xf7\x13\x0a\x3c\xfb\xf8\x05\xfb\x5c\x06\xda\xf7\xf9\x05\xa6\x97\x8d\x8f\x95\x1f\xa0\x94"
+"\x9c\xa3\xa0\x1a\xa8\x77\x99\x62\x1e\xfb\x0c\x06\x58\x6c\x74\x65\x6c\x99\x81\xbb\x8a\x1f\x42\xfb\xf9\x2d\x0a\x0b\x8e\x9b\x8c\x91"
+"\x94\x7f\x0a\x7e\x1e\x9a\x6a\x78\x0a\xf7\x10\x63\x1d\x4b\x61\x0a\x93\x8e\x93\x98\x1e\x0b\xf7\x20\xf7\xd5\x15\x5c\xfb\x6d\x44\x0a"
+"\xbb\xf7\x6d\x05\xf7\x78\x06\x79\x38\x05\x87\x7c\x8a\x83\xf7\x26\x0a\x95\x1e\xb5\xf7\x51\x05\xfc\x86\x06\x67\x6b\x6e\x6a\x70\xa0"
+"\x7c\xb3\x1f\x0b\x06\x73\x6b\x76\x61\x7c\x1a\x83\x92\x84\x94\x92\x8f\x8d\x92\x91\x1e\xad\xb2\xa3\x9f\xbc\xa8\x99\x94\x18\x91\x8e"
+"\x8f\x8d\x8c\x8c\x08\x99\x93\x8e\x8e\x93\x1a\x92\x87\x8f\x78\x95\x1e\x4f\xad\x6e\xa2\x6c\xae\x08\x98\x80\x87\x8e\x84\x1b\x82\x83"
+"\x85\x83\x7c\x9b\x6b\xa8\x5f\x1f\x0b\xf7\xd6\x84\x0a\x54\x8c\x19\xfb\x02\x6d\x0a\xb7\x1e\xf7\x05\x06\xf7\x04\xf0\xd9\xf1\xa1\x1f"
+"\xed\xf8\x4d\x05\xfb\xc7\x06\x6b\x82\x89\x7e\x7b\x86\x0a\x9d\x7f\xb6\x1e\x0b\xf7\x6e\xf7\x11\x15\x86\x76\x89\x7b\x7e\x1a\x55\xb5"
+"\x67\xcc\xc6\xb5\xa8\xb4\xa4\x79\x9e\x72\x84\x82\xf7\x3b\x1d\x8b\x8d\x95\x1f\xc2\xf7\x93\x05\x8f\x9c\x8c\x91\x91\x1a\xa3\x78\x9c"
+"\x70\x68\x73\x73\x5f\x81\x1e\x0b\x05\xb0\x8d\xa7\xa5\xac\x1a\xa6\x75\x9a\x63\x1e\x27\x06\x59\x6b\x72\x65\x71\xa1\x7c\xb2\x1f\x95"
+"\x06\x7f\x54\x05\xfb\x70\x06\x97\xc2\x05\x93\x06\xbd\xab\xa3\xb0\xa8\x77\x99\x62\x1f\x27\x06\x59\x6b\x72\x64\x74\x9a\x7e\xa8\x88"
+"\x1f\x5c\xfb\x6f\x05\x73\x7d\x0b\x9a\x1b\x93\x92\x92\x94\x92\x88\x8f\x84\x91\x1f\x63\xac\x78\xa1\x6d\xbc\x88\x8f\x88\x90\x88\x90"
+"\x08\x88\x90\x87\x91\x8b\x1a\xf7\x16\x0a\x6a\x52\x72\x6b\x67\x6f\x08\x7e\x80\x88\x86\x85\x1a\x81\x92\x84\x93\x99\x0b\xf8\xe2\x89"
+"\x1d\xfb\x03\xe0\x46\xf7\x1f\xdc\xf7\x07\x9f\xa1\xb7\x1e\xa2\x96\x98\x9e\xa2\x1a\xa2\xf7\x38\x1d\x2a\x0b\xf8\xc5\xac\x0a\xf8\xf8"
+"\xf7\x0c\x1d\xfc\xa1\x37\x1d\x6c\x9c\x7f\xb7\x1e\x0e\x8a\x98\x8a\xfb\x31\xfb\x5d\x18\x4c\xf7\x5d\xf7\x69\x1d\x7c\x90\x1e\x8e\x82"
+"\x85\xf7\x42\x1d\x7b\x1a\x72\x97\x7f\xa7\x86\x1e\x0b\xf7\x2a\x0a\xcc\xa8\xbd\xb7\x1f\xa1\xa4\x9a\xa9\xf7\x30\x1d\x55\x6a\xa6\xb8"
+"\x1f\xa7\x8c\x82\x96\x77\x1b\x0e\x8e\x97\x99\x1f\x9a\x68\x1d\x82\x85\x8c\x77\x1b\x2f\x37\x1d\x71\x98\x7e\xab\x88\x1e\x98\xfb\xd6"
+"\x05\xef\x06\x0b\x06\x6b\x81\xd6\x0a\x0b\x15\xe4\x31\x05\x81\x36\x0a\xa2\x96\x8a\x8c\x7a\x9c\x1f\xfb\x13\xf7\x11\xfb\x4a\xfb\x10"
+"\x05\x6e\x77\x6f\x0a\xf8\xa9\xf7\xdc\x15\xb0\x9e\x97\x9a\xa5\x1a\x9f\x79\x9d\x77\x7d\x83\x88\x7e\x72\x1e\xfc\x20\xfb\x69\x05\x66"
+"\x78\x7f\x7c\x72\x1a\x76\x9d\x79\xa0\x96\x99\x90\x96\xa0\x1e\x0e\x1e\x55\xf7\x12\x15\xa3\x9b\x7d\x75\x6b\x71\x71\x69\x8a\x0a\xad"
+"\x1f\x69\xf7\x24\x1d\x0b\x64\x72\xb5\x0a\x0b\x06\xa8\x99\x8f\x96\x99\x48\x0a\x83\x84\x0b\x7f\x83\x75\x7c\x1e\x9e\x6e\x60\x96\x59"
+"\x1b\xfb\x24\xfb\x0a\x0b\x6b\x55\x1a\x5d\xc6\x0a\x81\x88\x8e\x93\xad\x0b\xe2\x0a\xb7\x1e\xd4\x2e\x0a\xfb\x0a\x26\x1d\x0b\x15\x98"
+"\x7d\x85\xf7\x28\x0a\x96\x81\xf7\x34\x1d\x94\x7f\x97\x1f\x0e\x15\x40\x46\xbd\x0a\x0b\xe3\x0a\x0e\xf7\x29\x1d\x95\x96\x9d\x9e\x1a"
+"\x9d\x82\x9c\x7c\x95\x1e\x93\x7f\x82\x8d\x6e\x1b\x0b\xbf\x0a\x0e\x16\xf7\x0e\x06\xa9\x98\x28\x1d\x9b\x1a\x9d\x81\x9b\x0b\x4a\x45"
+"\x58\xb2\x65\xc1\xd5\xd1\xcc\xd1\xbf\x64\xb0\x55\x1f\x7e\x53\x15\xa6\x9f\x78\x72\x68\x68\x6a\x66\x70\x77\x9e\xa5\xad\xae\xac\xb0"
+"\x1f\x0b\xa6\x7b\x71\x84\x8a\x81\x88\x7f\x1f\x67\xfb\x34\x05\x89\x06\x6b\x80\x89\x7f\x7c\x1f\x7b\x7e\x31\x1d\xb6\x1e\xf7\x04\x06"
+"\x0b\x15\x8c\x9b\x05\x9f\x81\x96\x79\x79\x80\xf7\x18\x0a\x85\x85\x1a\x78\x95\x80\x9d\x9d\x96\x97\xa5\x91\x1e\x0b\x90\x8f\x87\x82"
+"\x91\x1e\x77\x99\x95\x85\x9f\x1b\xa5\x9d\x9c\xa3\xa9\x72\xa0\x68\x73\x72\x82\x7c\x77\x1f\x66\x6e\x7d\x60\x32\x1a\x0e\x15\x63\x73"
+"\x0a\x6c\x1f\xf7\x64\x16\x63\x4a\x0a\xb1\x0b\x9f\x9e\x9f\x1b\x95\x96\x89\x85\x9a\x1f\x86\x9a\x8f\x8a\x95\x1b\xad\xaa\xa9\xac\xab"
+"\x5e\xa1\x4a\x3b\x81\x0a\x0b\xf7\x1c\x0a\x7d\x89\x87\x83\x1a\x7e\x99\x7f\x9a\x99\xf7\x2c\x0a\x0e\x15\x98\x7d\x86\x8e\x7f\x1b\x70"
+"\xd5\x0a\x94\x0b\x33\x06\x4c\x73\x7d\x67\x68\xa0\x7a\xb8\x8a\x1f\x72\xfb\x04\x05\x86\x0b\xaa\x6f\xbd\xad\xbb\x98\x9b\xa5\x1e\x9a"
+"\x95\x95\x9b\x9a\x1a\x9f\x7d\x99\x77\x83\x83\x89\x87\x82\x1e\x7c\x67\x87\x8a\x7f\x1b\x0b\x15\x62\x62\x1d\x6d\x1f\xf7\x63\x16\xf7"
+"\x56\x1d\x0b\xa1\x1d\xfb\x4b\xf7\x73\x1d\x99\x7e\x9d\x95\x0b\x06\x6b\x7c\x0a\x7a\x0b\x1b\x79\x79\x83\x7d\x80\x1f\x83\x80\x88\x80"
+"\x71\x1a\xfb\x53\x07\x74\x8d\x80\x91\x81\x1e\x7b\x96\x9e\x81\x9f\x1b\x0b\xf7\xcb\xf8\xf1\xf7\x43\x1d\xa0\xa7\xa5\x1d\xb5\xf7\x50"
+"\x05\x8e\x97\x8c\x95\x97\x69\x1d\x0b\x81\x1f\x77\x82\x7a\x73\x75\x1a\x70\xa0\x7c\xb3\x1e\xf7\x0d\x06\xbc\x7e\x0a\x0b\x1a\x97\x86"
+"\x97\x81\x92\x1e\x93\x82\x82\x8d\x6f\x1b\x27\x39\x1d\x7a\x1a\x0b\xa6\x1d\x94\x91\x0b\x15\xf7\x69\xf7\x76\x05\xa1\x95\x8d\x90\x96"
+"\x1f\xa0\x96\x9a\xa1\xa1\x52\x1d\x0b\x77\x1a\x6d\xa6\x71\xab\xa0\x95\x91\xac\xa6\x1e\xa8\xa4\x94\x93\x92\x1b\x90\x99\x82\x7c\x9d"
+"\x1f\x0b\xa8\x1d\x76\x1b\x0b\x20\x0a\x9b\x1a\x9d\x81\x9a\x7c\x91\x1e\x8d\x86\x84\x8c\x0b\x1b\x6b\x06\xfb\x11\xf7\x16\xf7\x1a\xe4"
+"\x05\xa5\x06\xaa\x96\x8d\x97\x9a\x1f\x9b\x98\x94\x9c\x0b\xf7\x1b\x1d\xa3\x0b\x88\x7f\x30\x1d\x88\x94\x91\x8a\x9f\x1b\x0b\x8e\x97"
+"\x9a\xa0\x1d\x8e\x82\x20\x1d\x0b\x8f\x96\x99\x91\x1d\x0b\x93\x1a\xa2\x78\x9c\x72\x67\x74\x75\x5f\x82\x1e\x0b\x1f\xf7\x64\xf7\x2d"
+"\x1d\x0b\x05\x79\x06\x59\x6b\x73\x66\x6c\x9c\x7f\xb7\x1f\xf7\x18\x06\xbe\xab\xa3\xaf\xa5\x0b\x06\xa9\x98\x8f\x96\x99\x48\x0a\x0b"
+"\x94\x93\x90\x8e\x94\x91\x19\x6a\x8e\x99\x7c\xa9\x1b\xa6\x9b\x9a\xae\x93\x1f\x0b\x99\x8f\x96\x99\xf7\x02\x0a\x96\x81\x94\x1e\x92"
+"\x82\x0b\xf5\x0a\x20\x1d\x0b\x1f\x7b\x7f\x82\x79\x7a\x1a\x7f\x90\x80\x95\x83\x1e\x83\x94\x93\x89\xa8\x1b\x0b\x81\x89\x81\x82\x1a"
+"\x70\x9c\x7e\xac\xb4\x98\x0b\xf7\x11\x0a\x6d\x9d\x7f\x0b\x15\x65\x64\x66\x66\x70\xa3\x73\xa7\xb4\xb0\xae\xb2\xa8\x75\xa1\x6c\x1f"
+"\x0b\x1b\x4f\x5f\xae\xba\x8f\x8c\x93\xf7\x27\x0a\x0b\x9d\x7f\xb6\x1e\xf7\x19\x06\xbc\xab\xa2\xaf\xaa\x78\x99\x61\x1f\x7c\x06\x0b"
+"\x05\x87\x79\x8b\x88\xf7\x5a\x1d\x0b\xf7\x54\x1d\xc8\x44\x70\x99\x5e\x1b\x5f\x69\x79\x0b\x9d\x3c\x1d\x83\x84\x8b\x77\x1b\x6d\x06"
+"\x0b\x6b\x81\x3f\x1d\x79\x7b\x21\x0a\x0b\x06\x58\x6c\x40\x1d\x0b\xf7\x0a\x0a\x6e\x9d\x7e\x0b\xf7\x70\x15\xf7\x2a\xf1\xa2\x8e\x92"
+"\x8d\x97\x95\x19\x9b\x97\x94\x0b\x8a\x84\x80\xf7\x66\x1d\x80\x1e\x0b\x3e\x1d\x82\x20\x1d\x2f\x06\x6c\x0b\xf9\x04\x15\xf7\x0d\x0a"
+"\x0b\xf8\xe4\xf7\x70\x1d\x94\x84\x9a\x1b\x0b\xf2\x15\xf8\x0f\xf7\xff\xa1\xed\x05\xfc\x34\x06\x66\xfb\x39\x05\x0b\x82\xc5\x1b\xf7"
+"\x26\xf7\x05\xd2\xe6\xb0\x79\xaa\x6a\x9f\x1f\x0b\x06\x6b\x81\x89\x7e\x7c\x1f\x7c\x7f\x81\x79\x7b\x1a\x6d\x9d\x0b\x1a\x7a\x96\x7b"
+"\x99\xf7\x6e\x1d\x0b\xf7\x4c\x1d\x82\x0b\x9d\x9c\x1a\x97\xf7\x19\x0a\x0b\x82\x7a\x7b\x1a\x6c\x9c\x7f\xb6\x1e\x0b\x86\x95\x1b\xa5"
+"\xa3\xa1\xa2\x95\x86\x0b\x1f\x9b\x97\x94\x9d\x9c\x1a\x97\x86\x0b\x1f\x9a\x97\x94\x9d\x9b\x1a\x0b\xf7\x57\x1d\xb6\x1e\x0b\x89\xf7"
+"\x0a\x0a\x0b\x7d\x98\x77\x7f\x83\x88\x7e\x79\x1e\xfb\x32\x21\x05\x0b\x41\x49\x4d\x46\x74\x92\x77\x99\x7a\x1e\x66\x71\x75\x0b\x05"
+"\x89\x81\x89\x7f\x84\x1a\x75\x9e\x7a\xa4\x9c\x9c\x0b\x06\x33\x66\x84\x71\x64\x1f\x47\x5e\x68\x40\x27\x1a\x0b\xf7\x63\x1d\x7a\x1a"
+"\x0b\x15\x70\x83\x8a\x84\x80\x1f\x7a\x82\x80\x78\x78\x1a\x0b\x1a\x98\xf7\x19\x0a\x0b\x69\x6c\x6e\x6b\x72\x9d\x7a\xa6\xad\xaa\xa8"
+"\xac\xa3\x0b\x7c\x1f\x7c\x7e\x82\x7a\x7a\x1a\x6d\x9c\x7f\xb6\x1e\x0b\x83\x7b\x7d\x1e\x23\xfb\x0e\x05\x0b\x15\xe4\x31\x05\x81\x95"
+"\x93\x87\x0b\x7c\x1f\x7b\x7f\x82\x7a\x7a\x1a\x0b\x06\x55\x6e\x76\x65\x6d\xa0\x7c\xb6\x1f\x94\x06\x0b\x06\x59\x6b\x74\x66\x6e\x9f"
+"\x7c\xb4\x1f\x94\x06\x0b\xc4\x1b\xf7\x35\xf7\x1b\xf7\x07\xf7\x1c\xf7\x00\x0b\x15\x98\x7e\x85\x8e\x7f\x1b\x70\x74\x75\x73\x82\x0b"
+"\x98\x84\x88\x8e\x82\x1b\x84\x87\x87\x79\x81\x1f\x0b\x9c\x1f\xfb\x12\xf7\x11\xfb\x4b\xfb\x11\x05\x6e\x0b\x7e\x73\x85\x1e\x6a\xfb"
+"\x2b\x05\x8a\x87\x8a\x0b\x86\x96\x81\x93\x1e\x93\x82\x82\x8d\x6f\x1b\x0b\x1a\x7b\x97\x81\x9e\xa2\x9c\x99\xa2\x90\x1e\x0b\x9d\x93"
+"\x98\x98\x1e\x95\x95\x8f\x95\x91\xa5\x0b\xf7\x88\xf7\x1c\x15\xfb\x0d\xfb\x80\x05\x84\x0b\x78\x9c\x70\x69\x73\x73\x5f\x81\x1e\x0e"
+"\x06\x6b\x81\x89\x7e\x7c\x1f\x0b\x8e\x97\x9a\x1f\x9a\x97\x95\x0b\x95\x80\x9d\x9d\x97\x98\xa4\x0b\x1b\x68\x6f\x98\x9b\x94\x93\x0b"
+"\x77\x6e\x72\x99\x81\xae\x1f\x0b\x05\x8d\x96\x8d\x96\x92\x1a\xa1\x78\x9c\x0b\x06\x5f\x61\x64\x62\x6b\xa3\x75\xad\x1f\x0b\x06\xbe"
+"\xaa\xa2\xb1\xaa\x7a\x97\x5f\x1f\x0b\x85\x1a\x75\x9e\x7a\xa5\xad\xa3\xa2\xb6\x0b\x8c\x92\x1f\xc8\xf7\xa2\x05\xaa\x06\xaa\x0b\x8e"
+"\x7f\x1b\x71\x74\x75\x73\x82\x91\x80\x0b\x8f\x9d\x8b\x8c\x94\x1a\xa2\x79\x9c\x71\x0b\x15\x6d\x78\x74\x68\x42\xcb\x56\xe1\xcc\x0b"
+"\x97\x80\x9c\x96\x95\x90\x96\x96\x1e\xaf\x0b\x99\x93\x9c\x98\x1e\xf7\x5f\xf7\x9a\x05\x0b\x1e\xd8\xc0\xc2\x57\x05\x6e\x82\x78\x73"
+"\x0b\xa4\x73\xac\x1f\x94\x06\x94\x06\xb6\xb6\x0b", 59212
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusMonoPS-Italic.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusMonoPS-Italic.cff.cpp
new file mode 100644
index 0000000000..92a2e9168b
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusMonoPS-Italic.cff.cpp
@@ -0,0 +1,1644 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusMonoPS_Italic_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x14\x4e\x69\x6d\x62\x75\x73\x4d\x6f\x6e\x6f\x50\x53\x2d\x49\x74\x61\x6c\x69\x63\x00\x01\x01\x01"
+"\x37\xf9\xbc\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x18\x04\x8c\x0c\x01\x7f\x0c\x02\x30\x0c\x03\xbe\x0c\x04"
+"\x4d\xfb\xd1\xf9\xac\xfa\x2c\x05\x1c\x31\x0a\x0f\x1c\x31\x1d\x11\xad\x1d\x00\x00\xb8\x40\x12\x01\xa6\x02\x00\x01\x00\x08\x00\x0e"
+"\x00\x13\x00\x1d\x00\x24\x00\x2b\x00\x35\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00\x6e\x00\x74\x00\x7a"
+"\x00\x84\x00\x8b\x00\x8e\x00\x95\x00\x9c\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00\xe3\x00\xe7\x00\xf2"
+"\x00\xf4\x00\xfa\x01\x04\x01\x0b\x01\x12\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01\x59\x01\x5f\x01\x6b"
+"\x01\x6f\x01\x71\x01\x77\x01\x7d\x01\x89\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01\xd0\x01\xd2\x01\xd5"
+"\x01\xdb\x01\xe1\x01\xed\x01\xf0\x01\xf6\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02\x38\x02\x3e\x02\x4b"
+"\x02\x52\x02\x59\x02\x60\x02\x6f\x02\x7b\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02\xb9\x02\xbf\x02\xc9"
+"\x02\xcd\x02\xd3\x02\xda\x02\xe3\x02\xec\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03\x3d\x03\x46\x03\x4f"
+"\x03\x58\x03\x61\x03\x6a\x03\x73\x03\x7c\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03\xcd\x03\xd6\x03\xdf"
+"\x03\xe8\x03\xf1\x03\xfa\x04\x03\x04\x0c\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04\x5d\x04\x66\x04\x6f"
+"\x04\x78\x04\x81\x04\x8a\x04\x93\x04\x9c\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04\xed\x04\xf6\x04\xff"
+"\x05\x08\x05\x11\x05\x1a\x05\x23\x05\x2c\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05\x7d\x05\x86\x05\x8f"
+"\x05\x98\x05\xa1\x05\xaa\x05\xb3\x05\xbc\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06\x0d\x06\x16\x06\x1f"
+"\x06\x28\x06\x31\x06\x3a\x06\x43\x06\x4c\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06\x9a\x06\xa3\x06\xac"
+"\x06\xb5\x06\xbf\x06\xc6\x06\xcf\x06\xdb\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07\x1b\x07\x21\x07\x26"
+"\x07\x2d\x07\x3a\x07\x40\x07\x46\x07\x50\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07\x92\x07\x9a\x07\xa3"
+"\x07\xae\x07\xb4\x07\xb9\x07\xbe\x07\xc4\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08\x10\x08\x12\x08\x19"
+"\x08\x21\x08\x29\x08\x33\x08\x3d\x08\x49\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08\x9c\x08\xa8\x08\xb4"
+"\x08\xba\x08\xc0\x08\xc6\x08\xd2\x08\xd6\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09\x1c\x09\x22\x09\x2e"
+"\x09\x38\x09\x40\x09\x42\x09\x48\x09\x55\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09\xa4\x09\xa7\x09\xa9"
+"\x09\xb0\x09\xbc\x09\xca\x09\xcd\x09\xda\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e\x0a\x34"
+"\x0a\x39\x0a\x42\x0a\x47\x0a\x50\x0a\x53\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d\x0a\xa4"
+"\x0a\xab\x0a\xb2\x0a\xb9\x0a\xc0\x0a\xc7\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d\x0b\x14"
+"\x0b\x1b\x0b\x22\x0b\x29\x0b\x30\x0b\x37\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d\x0b\x84"
+"\x0b\x8b\x0b\x92\x0b\x99\x0b\xa0\x0b\xa7\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed\x0b\xf4"
+"\x0b\xfb\x0c\x02\x0c\x09\x0c\x10\x0c\x17\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d\x0c\x64"
+"\x0c\x73\x0c\x87\x0c\x93\x0c\x98\x0c\x9e\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5\x0c\xe9"
+"\x0d\x1f\x0d\x5f\x0d\x74\x0d\x82\x41\x45\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41\x6c\x70\x68\x61\x74"
+"\x6f\x6e\x6f\x73\x41\x6d\x61\x63\x72\x6f\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x42\x65\x74\x61"
+"\x43\x61\x63\x75\x74\x65\x43\x63\x61\x72\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74\x61\x63\x63\x65\x6e"
+"\x74\x43\x68\x69\x44\x63\x61\x72\x6f\x6e\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65\x45\x63\x61\x72\x6f"
+"\x6e\x45\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65\x6b\x45\x70\x73\x69"
+"\x6c\x6f\x6e\x45\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45\x75\x72\x6f\x47\x61"
+"\x6d\x6d\x61\x47\x62\x72\x65\x76\x65\x47\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74"
+"\x47\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a\x49\x62\x72\x65\x76"
+"\x65\x49\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f\x74\x61\x49\x6f\x74"
+"\x61\x64\x69\x65\x72\x65\x73\x69\x73\x49\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69\x72\x63\x75\x6d\x66"
+"\x6c\x65\x78\x4b\x61\x70\x70\x61\x4b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c\x61\x6d\x62\x64\x61"
+"\x4c\x63\x61\x72\x6f\x6e\x4c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63\x75\x74\x65\x4e\x63"
+"\x61\x72\x6f\x6e\x4e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75\x6e\x67\x61\x72\x75"
+"\x6d\x6c\x61\x75\x74\x4f\x6d\x61\x63\x72\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72\x6f\x6e\x4f\x6d\x69"
+"\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x4f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73\x69\x52\x61\x63\x75"
+"\x74\x65\x52\x63\x61\x72\x6f\x6e\x52\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75\x74\x65\x53\x63\x65"
+"\x64\x69\x6c\x6c\x61\x53\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x53\x69\x67\x6d"
+"\x61\x54\x61\x75\x54\x62\x61\x72\x54\x63\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54\x68\x65\x74\x61\x55"
+"\x62\x72\x65\x76\x65\x55\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f\x67\x6f\x6e\x65\x6b"
+"\x55\x70\x73\x69\x6c\x6f\x6e\x55\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e"
+"\x6f\x73\x55\x72\x69\x6e\x67\x55\x74\x69\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x57\x64"
+"\x69\x65\x72\x65\x73\x69\x73\x57\x67\x72\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59\x67\x72\x61\x76\x65"
+"\x5a\x61\x63\x75\x74\x65\x5a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61\x65\x61\x63\x75\x74"
+"\x65\x61\x66\x69\x69\x30\x30\x32\x30\x38\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31\x38\x61\x66\x69\x69"
+"\x31\x30\x30\x31\x39\x61\x66\x69\x69\x31\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69\x31\x30\x30\x32\x32"
+"\x61\x66\x69\x69\x31\x30\x30\x32\x33\x61\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35\x61\x66\x69\x69\x31"
+"\x30\x30\x32\x36\x61\x66\x69\x69\x31\x30\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31\x30\x30\x32\x39\x61"
+"\x66\x69\x69\x31\x30\x30\x33\x30\x61\x66\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61\x66\x69\x69\x31\x30"
+"\x30\x33\x33\x61\x66\x69\x69\x31\x30\x30\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30\x30\x33\x36\x61\x66"
+"\x69\x69\x31\x30\x30\x33\x37\x61\x66\x69\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66\x69\x69\x31\x30\x30"
+"\x34\x30\x61\x66\x69\x69\x31\x30\x30\x34\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30\x34\x33\x61\x66\x69"
+"\x69\x31\x30\x30\x34\x34\x61\x66\x69\x69\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69\x69\x31\x30\x30\x34"
+"\x37\x61\x66\x69\x69\x31\x30\x30\x34\x38\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35\x30\x61\x66\x69\x69"
+"\x31\x30\x30\x35\x31\x61\x66\x69\x69\x31\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69\x31\x30\x30\x35\x34"
+"\x61\x66\x69\x69\x31\x30\x30\x35\x35\x61\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37\x61\x66\x69\x69\x31"
+"\x30\x30\x35\x38\x61\x66\x69\x69\x31\x30\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31\x30\x30\x36\x31\x61"
+"\x66\x69\x69\x31\x30\x30\x36\x32\x61\x66\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61\x66\x69\x69\x31\x30"
+"\x30\x36\x37\x61\x66\x69\x69\x31\x30\x30\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30\x30\x37\x30\x61\x66"
+"\x69\x69\x31\x30\x30\x37\x31\x61\x66\x69\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66\x69\x69\x31\x30\x30"
+"\x37\x34\x61\x66\x69\x69\x31\x30\x30\x37\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30\x37\x37\x61\x66\x69"
+"\x69\x31\x30\x30\x37\x38\x61\x66\x69\x69\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69\x69\x31\x30\x30\x38"
+"\x31\x61\x66\x69\x69\x31\x30\x30\x38\x32\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38\x34\x61\x66\x69\x69"
+"\x31\x30\x30\x38\x35\x61\x66\x69\x69\x31\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69\x31\x30\x30\x38\x38"
+"\x61\x66\x69\x69\x31\x30\x30\x38\x39\x61\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31\x61\x66\x69\x69\x31"
+"\x30\x30\x39\x32\x61\x66\x69\x69\x31\x30\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31\x30\x30\x39\x35\x61"
+"\x66\x69\x69\x31\x30\x30\x39\x36\x61\x66\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61\x66\x69\x69\x31\x30"
+"\x30\x39\x39\x61\x66\x69\x69\x31\x30\x31\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30\x31\x30\x32\x61\x66"
+"\x69\x69\x31\x30\x31\x30\x33\x61\x66\x69\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66\x69\x69\x31\x30\x31"
+"\x30\x36\x61\x66\x69\x69\x31\x30\x31\x30\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31\x30\x39\x61\x66\x69"
+"\x69\x31\x30\x31\x31\x30\x61\x66\x69\x69\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69\x69\x31\x30\x38\x34"
+"\x36\x61\x66\x69\x69\x36\x31\x32\x34\x38\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35\x32\x61\x6c\x70\x68"
+"\x61\x61\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x61\x6e\x67\x6c\x65"
+"\x72\x69\x67\x68\x74\x61\x6f\x67\x6f\x6e\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e\x67\x61\x63\x75\x74"
+"\x65\x61\x72\x72\x6f\x77\x62\x6f\x74\x68\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f"
+"\x77\x72\x69\x67\x68\x74\x61\x72\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x62"
+"\x73\x65\x62\x65\x74\x61\x63\x61\x63\x75\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x63\x64\x6f"
+"\x74\x61\x63\x63\x65\x6e\x74\x63\x68\x69\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75\x62\x64\x63\x61\x72"
+"\x6f\x6e\x64\x63\x72\x6f\x61\x74\x64\x65\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f"
+"\x73\x65\x62\x72\x65\x76\x65\x65\x63\x61\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d\x65\x6e\x74\x65\x6d"
+"\x61\x63\x72\x6f\x6e\x65\x6e\x67\x65\x6f\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e"
+"\x6f\x73\x65\x71\x75\x69\x76\x61\x6c\x65\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74\x61\x74\x6f\x6e\x6f"
+"\x73\x65\x78\x63\x6c\x61\x6d\x64\x62\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65\x66\x72\x61\x6e\x63"
+"\x67\x61\x6d\x6d\x61\x67\x62\x72\x65\x76\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65"
+"\x6e\x74\x67\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61\x72\x68\x63\x69\x72"
+"\x63\x75\x6d\x66\x6c\x65\x78\x68\x65\x61\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d\x61\x63\x72\x6f\x6e"
+"\x69\x6e\x66\x69\x6e\x69\x74\x79\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69\x6e\x74\x65\x67\x72"
+"\x61\x6c\x74\x70\x69\x6e\x74\x65\x72\x73\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x69\x6f\x67\x6f"
+"\x6e\x65\x6b\x69\x6f\x74\x61\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x74"
+"\x6f\x6e\x6f\x73\x69\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x6b\x61"
+"\x70\x70\x61\x6b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63\x6c\x61\x63\x75\x74"
+"\x65\x6c\x61\x6d\x62\x64\x61\x6c\x63\x61\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64\x6f\x74\x6c\x65\x73"
+"\x73\x65\x71\x75\x61\x6c\x6c\x69\x72\x61\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75\x73\x69\x63\x61\x6c"
+"\x6e\x6f\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70\x6f\x73\x74\x72\x6f"
+"\x70\x68\x65\x6e\x63\x61\x72\x6f\x6e\x6e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x6e"
+"\x6f\x74\x65\x71\x75\x61\x6c\x6e\x75\x6f\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x6f\x6d\x61\x63"
+"\x72\x6f\x6e\x6f\x6d\x65\x67\x61\x6f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d\x69\x63\x72\x6f\x6e"
+"\x74\x6f\x6e\x6f\x73\x6f\x72\x74\x68\x6f\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70\x61\x72\x74\x69\x61"
+"\x6c\x64\x69\x66\x66\x70\x65\x73\x65\x74\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62"
+"\x73\x65\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65\x76\x65\x72\x73\x65"
+"\x64\x72\x61\x63\x75\x74\x65\x72\x61\x64\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74"
+"\x72\x65\x76\x6c\x6f\x67\x69\x63\x61\x6c\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69\x6c\x6c\x61\x73\x63"
+"\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x73\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64\x73\x69\x67\x6d\x61"
+"\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x73\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74\x61\x75\x74\x62\x61"
+"\x72\x74\x63\x61\x72\x6f\x6e\x74\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e\x6f\x73\x75\x62\x72"
+"\x65\x76\x65\x75\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65\x72\x73\x63\x6f\x72"
+"\x65\x64\x62\x6c\x75\x6e\x69\x30\x30\x41\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e\x69\x30\x32\x31\x42"
+"\x75\x6e\x69\x30\x32\x43\x39\x75\x6e\x69\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41\x39\x75\x6e\x69\x30"
+"\x33\x42\x43\x75\x6e\x69\x30\x33\x43\x32\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69\x30\x34\x35\x30\x75"
+"\x6e\x69\x30\x34\x35\x44\x75\x6e\x69\x30\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36\x75\x6e\x69\x30\x34"
+"\x39\x37\x75\x6e\x69\x30\x34\x39\x38\x75\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30\x34\x39\x42\x75\x6e"
+"\x69\x30\x34\x39\x43\x75\x6e\x69\x30\x34\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75\x6e\x69\x30\x34\x41"
+"\x32\x75\x6e\x69\x30\x34\x41\x33\x75\x6e\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34\x41\x45\x75\x6e\x69"
+"\x30\x34\x41\x46\x75\x6e\x69\x30\x34\x42\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e\x69\x30\x34\x42\x33"
+"\x75\x6e\x69\x30\x34\x42\x36\x75\x6e\x69\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42\x39\x75\x6e\x69\x30"
+"\x34\x42\x41\x75\x6e\x69\x30\x34\x42\x42\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69\x30\x34\x43\x43\x75"
+"\x6e\x69\x30\x34\x44\x38\x75\x6e\x69\x30\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38\x75\x6e\x69\x30\x34"
+"\x45\x39\x75\x6e\x69\x30\x34\x45\x45\x75\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32\x30\x41\x46\x75\x6e"
+"\x69\x32\x31\x32\x36\x75\x6e\x69\x32\x32\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75\x6e\x69\x32\x32\x32"
+"\x38\x75\x6e\x69\x32\x32\x39\x35\x75\x6e\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x75\x6f\x67"
+"\x6f\x6e\x65\x6b\x75\x70\x73\x69\x6c\x6f\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75\x70\x73\x69\x6c\x6f"
+"\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75\x72\x69\x6e\x67\x75"
+"\x74\x69\x6c\x64\x65\x77\x61\x63\x75\x74\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72\x65\x73\x69\x73\x77"
+"\x67\x72\x61\x76\x65\x78\x69\x79\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63\x75\x74\x65\x7a\x64"
+"\x6f\x74\x61\x63\x63\x65\x6e\x74\x7a\x65\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68"
+"\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c"
+"\x6f\x70\x6d\x65\x6e\x74\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68"
+"\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c"
+"\x6f\x70\x6d\x65\x6e\x74\x4e\x69\x6d\x62\x75\x73\x20\x4d\x6f\x6e\x6f\x20\x50\x53\x20\x49\x74\x61\x6c\x69\x63\x4e\x69\x6d\x62\x75"
+"\x73\x20\x4d\x6f\x6e\x6f\x20\x50\x53\x01\x3a\x02\x00\x01\x00\x0c\x00\x11\x00\x15\x00\x1a\x00\x20\x00\x25\x00\x2b\x00\x33\x00\x39"
+"\x00\x3e\x00\x43\x00\x4e\x00\x5d\x00\x90\x00\xa1\x00\xa7\x00\xf8\x01\x03\x01\x0e\x01\x14\x01\x1a\x01\x20\x01\x2b\x01\x32\x01\x3a"
+"\x01\x42\x01\x4b\x01\x67\x01\x6c\x01\x81\x01\x86\x01\x8c\x01\x95\x01\x9b\x01\xa2\x01\xaa\x01\xb0\x02\x31\x02\x4f\x02\x7a\x02\x8a"
+"\x02\x93\x02\x9c\x02\xa2\x02\xad\x02\xb4\x02\xbf\x02\xc8\x02\xcf\x02\xd4\x02\xff\x03\x56\x03\x72\x03\xc7\x03\xf0\x04\x03\x04\x0d"
+"\x04\x19\x04\x2c\x04\x3e\x04\x4d\x04\x57\x04\x62\x04\x74\x04\x81\x04\x8a\x04\x97\x04\xa0\x04\xaa\x04\xb4\x04\xbf\x04\xc5\x04\xcf"
+"\x04\xd7\x04\xdf\x04\xee\x04\xf7\x05\x00\x05\x0c\x05\x14\x05\x36\x05\x5c\x05\xa4\x05\xfa\x06\x2c\x06\x2f\x06\x70\x06\x89\x06\xab"
+"\x06\xc6\x06\xe7\x06\xfb\x07\x29\x07\x3f\x07\x46\x07\x57\x07\x6f\x07\x88\x07\x96\x07\xa1\x07\xb1\x07\xc3\x07\xcd\x07\xdc\x07\xeb"
+"\x07\xf9\x08\x11\x08\x1d\x08\x26\x08\x31\x08\x3c\x08\x47\x08\x52\x08\x63\x08\x6c\x08\x76\x08\x7e\x08\x8c\x08\x95\x08\x9e\x08\xa7"
+"\x08\xb4\x08\xbb\x08\xc7\x08\xcf\x08\xd7\x08\xdf\x08\xea\x08\xf0\x09\xa1\x09\xa4\x0a\x52\x0a\x8f\x0a\x9d\x0b\x24\x0b\xa9\x0c\x07"
+"\x0c\x72\x0c\xad\x0c\xf1\x0d\x40\x0d\x85\x0d\xe2\x0e\x0d\x0e\x56\x0e\x73\x0e\xb4\x0e\xe1\x0f\x28\x0f\x6b\x0f\x83\x0f\x8e\x0f\xc8"
+"\x10\x10\x10\x3d\x10\x85\x10\xac\x10\xd7\x11\x0b\x11\x46\x11\x67\x11\x94\x11\xd6\x12\x1c\x12\x5f\x12\x85\x12\xc4\x12\xe0\x13\x04"
+"\x13\x3c\x13\x76\x13\xb1\x13\xd3\x13\xdf\x13\xfb\x14\x11\x14\x21\x14\x41\x14\x63\x14\x69\x14\x80\x14\x94\x14\xa3\x14\xc0\x14\xd1"
+"\x14\xf0\x15\x1b\x15\x45\x15\x6d\x15\x88\x15\xab\x15\xb5\x15\xdc\x16\x03\x16\x14\x16\x29\x16\x2e\x16\x39\x16\x53\x16\x73\x16\x94"
+"\x16\xb4\x16\xd4\x16\xe3\x17\x02\x17\x21\x17\x3a\x17\x4e\x17\x5d\x17\x6c\x17\x79\x17\x89\x17\x95\x17\xb1\x17\xc5\x17\xdf\x17\xf2"
+"\x18\x08\x18\x22\x18\x3c\x18\x56\x18\x66\x18\x75\x18\x83\x18\x98\x18\xb0\x18\xc8\x18\xd8\x18\xee\x19\x05\x19\x1a\x19\x1f\x19\x35"
+"\x19\x43\x19\x59\x19\x6d\x19\x78\x19\x8d\x19\xa0\x19\xb5\x19\xbd\x19\xc6\x19\xd9\x19\xed\x19\xfe\x1a\x12\x1a\x1e\x1a\x25\x1a\x38"
+"\x1a\x4b\x1a\x5e\x1a\x67\x1a\x7a\x1a\x8d\x1a\x9e\x1a\xb0\x1a\xc2\x1a\xd3\x1a\xdd\x1a\xe4\x1a\xf2\x1b\x02\x1b\x12\x1b\x1c\x1b\x2c"
+"\x1b\x3c\x1b\x4c\x1b\x56\x1b\x65\x1b\x6e\x1b\x7d\x1b\x8c\x1b\x99\x1b\xa8\x1b\xb7\x1b\xbb\x1b\xc9\x1b\xd7\x1b\xe5\x1b\xf3\x1c\x01"
+"\x1c\x0f\x1c\x1d\x1c\x29\x1c\x32\x1c\x37\x1c\x3d\x1c\x4a\x1c\x57\x1c\x64\x1c\x71\x1c\x7b\x1c\x88\x1c\x95\x1c\xa1\x1c\xad\x1c\xb9"
+"\x1c\xc5\x1c\xcf\x1c\xd7\x1c\xdf\x1c\xe7\x1c\xf2\x1c\xfd\x1d\x08\x1d\x13\x1d\x1e\x1d\x29\x1d\x34\x1d\x3f\x1d\x4a\x1d\x55\x1d\x60"
+"\x1d\x69\x06\x74\x7d\x80\x79\x7c\x94\x84\x9e\x1f\x0b\x4a\x1d\x9e\x1f\x0b\xf8\x94\x15\x0b\x06\xa2\x34\x1d\x0b\x06\x74\x7d\x69\x1d"
+"\x0b\x94\x84\x9e\x1f\x0b\x06\x27\xfc\x61\x05\x0b\x2f\x1d\x9a\x83\x91\x76\x1f\x0b\x95\x95\xa0\x90\x1e\x0b\x4a\x1d\x9f\x1f\x0b\x06"
+"\xa2\x40\x1d\x0b\x06\x73\x7e\x81\x78\x7d\x95\x83\x9e\x1f\x0b\x15\xa1\x9a\x96\x9d\x99\x82\x92\x77\x1f\xfb\x80\x8e\x1d\x0e\xf7\x78"
+"\xf7\x9e\x15\x81\x1d\x8e\x1a\x96\x82\x94\x7e\x7a\x81\x81\x76\x87\x1e\x82\x63\x8a\x1d\x98\x9b\x96\x95\xa0\x8f\x1e\xaa\xf7\x23\x05"
+"\xfc\x48\x49\x1d\xf8\x5b\x06\xae\xf7\x35\xf7\x11\x1d\xfb\xc3\x06\x0b\xb8\x1d\x7c\x1a\x2d\xce\x4b\xee\xf7\x07\xf6\xe2\xf7\x07\xa4"
+"\x1e\x0b\x06\xa2\x9a\x97\x9d\x0b\xf8\xcb\xf7\x57\x15\x92\xb0\x8d\x99\x9c\x1a\xee\x3b\xd2\xfb\x04\xfb\x2c\xfb\x19\xfb\x0e\xfb\x1f"
+"\xfb\x04\xdd\x3f\xf7\x0c\xf3\xf7\x17\xbd\xb3\x97\x82\x94\x7f\x85\x87\x89\x85\x81\x1e\x6d\x5d\x3e\x75\x4e\x1b\x2c\x4a\xc5\xe0\x90"
+"\x8b\x8f\x8c\x93\x1f\xf8\x09\xbe\x15\xfb\xfe\x06\xdc\xae\xe0\xc2\xe7\x1b\xe3\xcd\x52\x42\x87\x1f\x0b\x06\xa2\x99\x96\x9d\x99\x81"
+"\x93\x78\x1f\x0b\x06\x73\x7d\x80\x78\x7d\x94\x84\x9f\x1f\x0b\x06\x73\x7d\x39\x1d\x0b\x9a\x97\x9d\x35\x1d\x0b\x9a\x82\x91\x77\x1f"
+"\x0b\x06\x71\x7d\x82\x7b\x7a\x99\x82\xa5\x1f\x0b\x06\x74\x7d\x80\x79\x7c\x0b\x97\x9d\x9a\x83\x91\x77\x1f\x0b\x80\x79\x7c\x94\x84"
+"\x9f\x1f\x0b\x99\x94\x9b\x9c\x7d\x94\x71\x1f\x0b\xf8\x48\x22\x1d\xf7\x1b\x27\x1d\xfb\xd4\x83\x1d\xf7\xd4\x06\xa2\x9a\x97\x9c\x9b"
+"\x82\x91\x76\x1f\xfb\x18\x06\x0b\xf8\x34\xd0\x1d\x0b\x15\x9a\x96\x8f\x91\x96\x1a\x97\x82\x94\x7e\x84\x86\x7f\x1d\x90\x8d\x93\x96"
+"\x1e\x0e\x96\x1d\x78\x1f\x0b\x06\x73\x7d\x69\x1d\x0b\x9a\x97\x9d\x99\x82\x92\x77\x1f\x0b\x1e\xfb\x1b\x29\x05\x0b\x6c\x6a\x72\x9e"
+"\x78\xa5\x0b\x81\x78\x7d\x95\x83\x9e\x1f\x0b\x1f\xe8\x29\x05\x83\x0b\xf8\xcd\xf7\x61\x15\x95\x23\x1d\xfb\x56\x21\x1d\xf7\x18\x06"
+"\x6e\xfb\x1e\x05\x72\x4b\x6c\x84\x58\x1b\xfb\x09\x45\xc4\xea\x9b\x8d\xa0\x90\x9f\x1f\x9a\xd2\x97\xc3\xb4\xc8\xbf\xb4\x19\xad\xb7"
+"\xbb\x9c\xc1\x1b\xc0\xb6\x7e\x74\xa2\x1f\x98\x7e\x95\x80\x88\x1a\x89\x67\x05\x85\x97\x82\x94\x9c\x95\x95\x9f\x8f\x1e\x9f\xe4\x05"
+"\x8d\x95\xf7\x48\x1d\x86\x1e\x8a\x87\x05\xaa\x66\x58\x9b\x4c\x1b\x48\x4b\x75\x60\x54\x1f\x4e\x5b\x5b\x42\x7c\x44\x7b\x43\x18\x86"
+"\x74\x89\x76\x76\x1a\xfb\x0e\xe2\x40\xf7\x20\xcb\xd5\x9e\xad\xcc\x1e\x0b\xf8\xb8\xf8\x15\x15\x88\x1d\x22\xd5\x47\xf7\x06\xd0\xd2"
+"\x9f\xae\xc6\x1f\xb2\xa2\x9c\x9d\x9b\x1a\x96\x82\x94\x71\x1d\x0b\xf8\x12\xf7\x90\x15\xf7\x7b\xf7\x98\x05\xa0\x91\x1d\x79\x7c\x80"
+"\x1d\x79\x7c\x25\x1d\xa0\x06\xf7\x0c\xfb\x96\x5f\xfb\x5f\x05\x26\x21\x1d\xf7\x90\x06\xa1\x34\x1d\x29\x06\x0b\x15\x77\x7e\x7c\x75"
+"\x4a\xbb\x67\xe0\xc1\xb9\x9a\xa9\xb0\xd8\x1d\x20\x1d\xbb\x26\x1d\x59\x20\x1d\x0b\x06\x74\x7d\x80\x78\x7d\x94\x84\x0b\x06\xa2\x99"
+"\x38\x1d\x0b\x06\xa5\x99\x94\x9c\x9b\x7d\x94\x71\x1f\x0b\x05\x59\x4a\x1d\x9e\x1f\x0b\x82\x86\x84\x7f\x1a\x7f\x94\x82\x98\x91\x0b"
+"\x06\x73\x7e\x80\x79\x7c\x94\x84\x0b\x92\x84\x1f\xe8\x29\x05\x0b\x7b\x9a\x76\x1f\x0e\xf7\xa9\x92\x15\x28\xfb\x1e\x05\xfb\x10\x20"
+"\x1d\xf7\x7d\x06\xa2\x99\x96\x9e\xf7\x1d\x1d\x83\x91\x76\x65\x1d\xfb\xc6\x33\xf7\xc6\x05\xb7\x27\x1d\xfb\x06\x33\x1d\x97\x06\x0b"
+"\xf7\xec\xf8\x37\x15\xfb\x0e\x20\x1d\xcf\x06\x46\xfb\xd1\x05\x2f\x06\x75\x7c\x7f\x7a\x7c\x95\x84\x9d\x1f\xf7\xd1\x06\xa1\x9a\x97"
+"\x9c\x9a\x81\x92\x78\x1f\xfb\x40\x06\xb8\xf7\x64\x05\xea\xf7\x13\xb5\xa3\xb6\x1b\x9f\x99\x83\x74\x9f\x1f\x83\x92\x8e\x89\x93\x1b"
+"\x9c\x9a\x99\x9b\x94\x82\x98\x7a\x9a\x1f\x9d\x77\x78\x92\x70\x1b\x57\x57\x72\x3d\x22\x1f\x0b\xf8\x8e\x16\xf7\x03\xf8\x94\x05\xa8"
+"\x23\x1d\xfb\x29\x06\x73\x7d\x80\x79\x7c\xcf\x1d\x9a\x82\x91\xf7\x4d\x1d\x0b\xf8\xdc\xf8\x96\x15\xb3\x64\x55\xa0\x4c\x1b\x47\x49"
+"\x71\x5c\x53\x1f\x55\x5c\x60\x46\x7e\x4e\x79\x3a\x18\x88\x7c\x89\x7b\x7b\x1a\xfb\x0c\xe8\x2e\xf7\x0d\xd2\xd5\xa8\xc1\xca\x1e\xa7"
+"\xa3\x93\x95\x98\x1a\x96\x82\x93\x7f\x81\x86\x89\x82\x82\x1e\x4d\x48\x54\x72\x47\x7d\x1d\x93\x9c\x60\x1d\x8b\x8f\x1a\x97\x82\x93"
+"\x7e\x7a\x81\x81\x77\x86\x1e\x0b\xf8\x45\x15\xfb\x29\xfb\x1e\xfb\x15\xfb\x20\x22\xda\x40\xf7\x01\xf7\x2c\xf7\x1d\xf7\x14\xf7\x21"
+"\xf5\x3d\xd5\xfb\x04\x1f\x82\x58\x15\xe2\xc6\x53\x39\x20\x5f\x1d\x0b\x06\x47\x7e\x1d\xf7\x20\x06\xa3\x99\x96\x9d\x99\x81\x93\x78"
+"\x1f\x5b\x06\x0b\x26\x1d\x6d\x20\x1d\xf7\x2a\x2f\x1d\x0b\x15\x68\x67\x1d\xaa\xac\xa4\x78\x9e\x71\x1f\x0e\x05\x62\x24\x1d\xf7\x17"
+"\x06\xa3\x99\x96\x9d\x99\x81\x93\x78\x1f\x64\x06\x0b\x84\x84\x88\x84\x80\x1e\xfb\x1a\x2b\x05\x7e\x82\x85\x81\x80\x1a\x7f\x0b\xf7"
+"\x4a\x1d\xc4\xb8\x69\xab\x5c\x1f\x84\x60\x15\xa5\x9d\x0b\x27\x1d\xfb\x03\x06\x74\x7d\x39\x1d\x0b\x06\xa3\x99\x95\x9e\x9a\x81\x92"
+"\x78\x1f\x0b\xfb\x00\x25\xfb\x05\x31\x4f\xc2\xdd\xf7\x01\xf7\x00\xf0\xf7\x09\x1f\x0b\x95\x95\x9f\x90\x1e\xa3\xf7\x02\x05\x8d\x94"
+"\x8b\x0b\x15\x98\x95\x91\x94\x96\x1a\x97\x0b\x9e\x70\x93\x3f\x98\x08\x2b\x9b\x6c\xa0\xba\x1a\x0b\x1a\x80\x94\x82\x98\x9b\x28\x1d"
+"\x0b\x95\x82\x97\x94\x96\x91\x95\x94\x1e\x0e\x1f\xfb\x02\x20\x1d\xb7\x06\xfb\x6f\x0b\x06\xa2\x99\x96\x9d\x99\x82\x92\x78\x1f\x0b"
+"\x6a\x42\x1d\xaf\xab\x0b\x74\x7d\x80\x79\x7d\x94\x84\x9f\x1f\x0b\x81\x79\x7c\x95\x83\x9e\x1f\x0b\x90\x97\x1a\x97\x82\x94\x7e\x0b"
+"\x9a\x97\x9d\x9a\x83\x91\x76\x1f\xfb\x0c\x06\x74\x7d\x80\x0b\x8a\x86\x88\x1a\x80\x95\x82\x97\x0b\x99\x96\x9d\x9a\x81\x92\x78\x1f"
+"\x0b\x38\x05\x84\x92\x91\x88\x91\x1b\x9b\x9a\x99\x0b\x1a\x96\x82\x94\x7e\x7b\x80\x0b\xf4\x85\x1d\xf7\x16\xf0\xd0\xe4\xa4\x7d\xa7"
+"\x76\x9b\x1f\x76\x1d\x40\x52\x9b\x1d\x8e\x8d\x1a\x96\x82\x94\x7e\x7a\x81\x81\x76\x86\x1e\x0b\x7f\x83\x87\x89\x82\x80\x1e\x5c\x4e"
+"\x4a\x74\x41\x1b\x31\x53\xbe\xdb\xb9\x9d\xbc\xac\xb3\x1f\xc0\xb5\xc7\xa7\xd2\x1b\xb4\xb2\xe0\x1d\x81\x76\x87\x1e\x0b\xf8\x7c\xf8"
+"\x37\x15\xfb\xfc\xfb\xeb\xcc\xf7\xb8\x05\xb6\x06\xa3\x99\x96\x9d\x99\x81\x93\x78\x1f\xfb\x1d\x3f\x1d\xb4\x06\x45\xfb\xd1\x05\x64"
+"\x24\x1d\xec\x06\xf7\xfb\xf7\xe9\x4c\xfb\xb6\x05\x63\x3f\x1d\xf7\x14\x06\xa3\x99\x96\x9d\x99\x81\x93\x78\x1f\x68\x06\xd0\xf7\xd1"
+"\x05\xb0\x31\x1d\x0b\xf8\x63\xf8\x04\x15\x6b\xfb\x27\x7b\x40\x7c\x65\x70\x6f\x19\x6e\x6f\x67\x7b\x60\x1b\x4b\x67\xac\xc5\xa0\x8f"
+"\xaa\x94\xb3\x1f\xb6\xf7\x5d\x05\x20\x8d\x1d\xbe\x06\x6b\xfb\x27\x05\x83\x66\x87\x69\x70\x1a\x36\xc7\x55\xe8\xc3\xc3\xa4\xb4\xb0"
+"\x1e\xa9\xad\x9f\xbb\x9d\xe1\xab\xf7\x2a\x18\xb4\x3e\x1d\xfb\x26\x06\x73\x7e\x81\x78\x7d\x95\x83\x9d\x1f\x0b\xf7\x28\x1d\xfb\x09"
+"\x2f\x05\x7b\x7f\x88\x86\x80\x1a\x7f\x94\x82\x98\x92\x92\x8e\x93\x94\x1e\xf7\x98\xe6\xf7\x28\x1d\xfb\x0a\x2f\x05\x7c\x80\x87\x86"
+"\x7f\x1a\x7f\x94\x82\x98\x92\x92\x8e\x93\x95\x1e\x0e\xc8\x1d\x0e\x6f\xa0\x68\x97\x4e\x91\x40\x94\x8b\x8b\x76\x93\xf7\x21\x1d\x84"
+"\x9d\x78\xf7\x0e\x1d\x8e\x1a\x97\x82\x94\x7f\x7d\x80\x81\x7b\x85\x1e\xa5\x6f\x60\x99\x55\x1b\xfb\x04\x32\x4f\x3f\x74\x98\x72\x9f"
+"\x7d\x1f\xa4\x79\xa6\x84\xd4\x84\xc0\x85\xa4\x85\xa1\xf7\x46\x1d\x0b\x15\x69\x67\x1d\xaa\xac\xa5\x78\x9d\x70\x1f\xf7\x71\x16\x69"
+"\x67\x1d\xaa\xac\xa5\x78\x9d\x70\x1f\x0e\x93\x1a\x95\x81\x95\x80\x81\x83\x87\x7f\x81\x1e\xfb\x03\xfb\x0f\x05\x82\x80\x87\x84\x83"
+"\x1a\x80\x95\x82\x97\x94\x95\x91\x95\x95\x1e\x0e\x87\x1a\x88\x61\x05\x85\x97\x82\x95\x9b\x28\x1d\xa1\xef\x05\x8d\x95\x8b\x8b\x8e"
+"\x6f\x1d\x81\x77\x87\x1e\x0b\xef\xf8\x61\x05\xb0\x06\xa4\x99\x94\x9c\x9b\x7d\x94\x72\x1f\xfb\x18\x06\x72\x7d\x82\x7b\x7a\x99\x82"
+"\xa4\x1f\xb4\x06\x61\xfb\x54\x0b\x94\x84\x9f\x1f\xf7\x02\x06\xfb\xa7\xfc\x61\x05\x6f\x20\x1d\xf7\x2b\x2f\x1d\x0b\x6f\x49\x1b\x62"
+"\x70\xa5\xb2\x8f\x8c\x92\x8c\x91\x1f\xcd\xf7\xc2\x05\x25\x20\x1d\xbb\x06\x55\xfb\x8d\x05\x88\x7f\x8a\x80\x80\x1a\x6e\x98\x6e\xa1"
+"\x78\x1e\x7b\x9d\xa4\x83\xaf\x1b\xcb\x0b\xf7\x0b\x1d\xb9\xb9\x7c\x73\xa3\x1f\x93\x83\xa0\x6c\x87\x1a\x89\x65\x05\x85\x98\x82\x0b"
+"\xfb\xd1\x05\x62\x24\x1d\x0b\x89\x83\x7f\x41\x1d\x7c\x81\x87\x84\x80\x1a\x7f\x94\x82\x98\x92\x0b\x94\x84\x9f\x1f\xa8\x06\xfb\x4c"
+"\xfb\x64\x29\xf7\x64\x05\xa9\x27\x1d\xfb\x03\x06\x74\x7d\x80\x0b\xf7\x1a\x06\x83\x65\x05\x8a\x87\x8a\x86\x88\x1a\x80\xf7\x34\x1d"
+"\xa7\xf7\x15\x05\x8d\x95\x8b\x8b\x0b\x41\x1d\x7e\x81\x85\x83\x82\x1a\x7e\x94\x82\x99\x91\x0b\x21\x1d\xf7\x19\x26\x1d\xfb\x1b\x21"
+"\x1d\x0b\x06\x9b\x8a\x97\x95\x9a\x1a\x8e\x07\x9a\x7f\x95\x7b\x8a\x1e\x0b\xac\x15\x8a\x85\x8a\x87\x88\x63\x1d\x8c\x07\x6b\xac\xba"
+"\x7b\xca\x1b\x0b\x7d\x39\x1d\xf7\x20\x06\xa2\x9a\x97\x0b\x8f\x1f\xa5\xf7\x0b\x05\xfc\x67\x06\x72\xfb\x08\x05\x8a\x0b\xaa\x69\x5a"
+"\x9c\x50\x1b\xfb\x30\xfb\x19\xfb\x13\xfb\x29\x0b\x26\x06\x74\x7d\x80\x79\x7b\x93\x85\x9f\x1f\xba\x06\x0b\x05\xfb\x1a\x06\xb5\xf7"
+"\x57\x05\xf7\xae\x06\x78\x31\x05\x8a\x86\x8a\x87\x88\x1a\x7f\x94\x82\x0b\x15\xfb\x70\x06\xf7\x39\xf7\xa9\x05\x92\x06\x0b\xab\xaa"
+"\xac\xa5\x78\x9d\x70\x1f\x0b\x06\x73\x7e\x81\x79\x7c\x95\x83\x9e\x1f\x0b\x06\x74\x7d\x80\x79\x7d\x94\x84\x9e\x1f\x0b\x06\x7a\x7f"
+"\x80\x7d\x80\x93\x84\x99\x1f\x0b\x99\x9a\x94\x86\x93\x81\x8f\x1f\x93\x78\x0b\x06\xa0\x9b\x97\x9c\x9a\x81\x92\x78\x1f\xfb\x02\x06"
+"\x73\x7d\x80\x0b\x7d\x7c\x82\x8d\x88\x94\x83\x1f\x0e\x15\xf7\x13\x06\xf7\x18\xf7\x07\xe9\x0b\x96\x99\x96\x83\x92\x7d\x1f\x0b\x6c"
+"\x69\x6c\x69\x70\x79\x9b\xa3\xab\xac\xa9\xaf\x1f\x0b\x06\xa3\x99\x96\x9d\x9a\x81\x92\x0b\x15\x5c\x61\x64\x5f\x6a\xa4\x74\x0b\x77"
+"\x1f\x45\x06\xdb\xf7\x19\x05\x0b\x1f\x77\x7b\x83\x81\x80\x1a\x7f\x94\x83\x98\x92\x0b\x99\x95\x9e\x99\x81\x93\x0b\xa8\xb1\x8e\x8c"
+"\x90\x8c\x92\x1e\x8c\x8e\x8b\x0b\x06\xce\xbe\x9c\xb0\xb1\x1f\x0b\x94\x1a\x98\x80\x96\x7d\x1e\x0b\x68\x74\xa0\xaa\xb2\xb4\xae\x0b"
+"\x85\x7b\x1b\x80\x82\x8f\x9e\x6d\x1f\x9e\x0b\x1e\xae\xf7\x22\x05\x0e\xa2\x06\xa5\x3a\x1d\x2c\x06\x72\x7d\x82\x7a\x7b\x99\x82\xa4"
+"\x1f\x9e\x06\x63\xfb\x4d\x05\x84\x06\x74\x8c\x85\x96\x74\xdd\x79\xce\x87\x97\x7d\xa7\x08\xa3\x7f\x72\x96\x61\x1b\x71\x84\x85\x70"
+"\x85\x1f\x7f\x52\x05\x89\x80\x8a\x88\x87\x1a\x7e\x94\x82\x9a\x9a\x94\x94\x9e\x8f\x1e\x97\xbe\xa4\x89\x91\x84\x97\x5d\x19\x9b\x4b"
+"\xa1\x47\x96\x7a\x60\x79\x7b\x7a\x53\x35\x34\xfb\x1c\x18\x6e\x06\x72\x7d\x82\x7a\x7b\x99\x82\xa4\x1f\xab\x06\x98\x96\x8c\x8d\x8d"
+"\x1f\x8e\x8d\x92\x94\x91\x94\xe3\xf7\x21\x18\xba\xd3\xbb\xb7\xa7\x87\x08\x92\x06\x5a\xfb\x75\x05\x6e\x06\x71\x7d\x82\x7a\x7b\x99"
+"\x82\xa5\x1f\xf0\x06\xa5\x3a\x1d\x78\x06\xbc\xf7\x75\x05\x94\x06\xaf\x8a\xa2\x69\x9c\x40\xa5\xfb\x18\x18\x92\x6b\x8d\x8a\xab\x8a"
+"\x08\x0b\xa3\x1d\x0e\xf8\x95\xf7\xdd\x15\x8a\x85\x8a\x86\x88\x1a\x7d\x95\x82\x9a\x9b\x94\x95\x9f\x8e\x1e\x94\xc1\x05\x8c\x8e\x8b"
+"\x8d\x8b\x1a\x8c\x8c\x05\x8d\x07\x8c\x8e\x8b\x8e\x8f\x1a\x9d\x7d\x93\x6e\x4e\x6e\x7d\x49\x46\x1e\x66\x67\x6f\x73\x76\x7d\x7d\x80"
+"\x72\x87\x5d\x8a\x08\x87\x06\xa5\xf7\x0a\x05\xb7\x06\xa4\x99\x94\x9b\x9c\x7d\x94\x72\x1f\xfb\x1e\x36\x1d\xb5\x06\x46\xfb\xd1\x05"
+"\x5f\x06\x72\x7d\x82\x7a\x7b\x99\x82\xa4\x1f\xf7\x1f\x06\xa4\x99\x94\x9b\x9c\x7d\x94\x72\x1f\x61\x06\xaa\xf7\x28\x05\x93\x06\xf2"
+"\x89\x99\x84\xae\x47\xb9\x2c\x18\x98\x71\x8c\x8b\xa8\x8a\x08\xc6\x06\xa4\x99\x94\x9b\x9c\x7d\x94\x72\x1f\x54\x06\x5f\xe5\x74\xb9"
+"\x6f\xaa\x70\x95\x19\xa9\x9c\xa4\x9f\xb8\xb7\xbe\xbb\x99\x93\xaf\x8e\x08\x0b\xf7\x4c\xf7\x9e\x15\x81\x1d\x8d\x1a\x97\x82\x94\x7e"
+"\x7a\x81\x81\x77\x87\x1e\x82\x62\x8a\x1d\x97\x9c\x28\x1d\xaa\xf7\x23\x05\xfc\x48\x49\x1d\xf8\x5b\x06\xae\xf7\x35\x05\x8d\x95\x8b"
+"\x8b\x8e\x6f\x1d\x81\x76\x86\x1e\x73\xfb\x04\x05\xfb\xc3\x06\x0e\xf7\xf1\xf7\xb3\x15\xaa\x1d\xf7\x17\x2a\x1d\x7d\x06\x0e\xf7\xe1"
+"\xf7\x78\x15\x8d\x95\x8c\x91\x8f\x1a\x9a\x82\x94\x7c\x7d\x81\x80\x74\x86\x1e\x84\x6b\x7c\x43\x7f\x69\x79\x73\x19\x71\x78\x71\x7c"
+"\x72\x1b\x64\x73\xaf\xc6\xf4\xcf\xf7\x0a\xd8\xa7\x1f\xa3\x93\x90\x90\x99\x1a\x9a\x81\x95\x7a\x65\x54\x62\x52\x63\x1e\x64\x51\x70"
+"\x37\x48\x1a\x37\xb9\x51\xd0\xb7\xb1\xa1\xb6\xaa\x1e\x60\x9d\xaa\x75\xb8\x1b\xee\xde\xf7\x0b\xf7\x23\xcb\x7f\xb1\x6d\xb1\x1f\xa8"
+"\x72\x71\x9d\x77\x1b\x7e\x81\x81\x7d\x80\x90\x83\x99\x83\x1f\xbb\x6c\x9c\x69\x49\x1a\xfb\x09\x4f\x28\x45\x69\x78\xa6\xba\xa1\x8f"
+"\xaa\x94\xb6\x1e\x0b\xf7\x2c\xbb\x15\x5e\xb3\xb7\x78\xc9\x1b\xf7\x3a\xf7\x32\xf7\x48\xf7\x50\xbc\x81\xb3\x77\xb0\x1f\xe0\xde\x05"
+"\x96\x96\x8e\x90\x93\x1a\x96\x82\x93\x80\x82\x87\x89\x7f\x80\x1e\x3b\x3d\x05\xb9\x5f\x64\x9c\x4f\x1b\xfb\x3c\xfb\x33\xfb\x46\xfb"
+"\x51\x5c\x94\x65\xa0\x63\x1f\x36\x38\x05\x81\x80\x88\x87\x83\x1a\x80\x93\x83\x97\x93\x91\x8e\x95\x95\x1e\xeb\xf7\x2d\x15\x7c\xb0"
+"\x87\xa0\xae\x1a\xf7\x30\xf7\x17\xf7\x2b\xf7\x1b\xb7\xae\x7b\x68\xaa\x1e\xa3\x67\x15\x9a\x62\x8f\x78\x69\x1a\xfb\x31\xfb\x16\xfb"
+"\x2b\xfb\x1c\x5f\x68\x9c\xaf\x6b\x1e\x0b\xf7\xc0\xf8\xef\x15\x89\x1d\xfb\x00\xfc\x89\x05\x62\x33\x1d\xf7\x18\x2f\x1d\x9a\x82\x91"
+"\x76\x1f\x65\x06\xbf\xf7\x86\xbd\xb9\x8b\x8b\x98\x94\x19\xa3\xad\xa9\x95\xb0\x1b\xb3\x9d\x86\x78\x9e\x1f\x9a\x7d\x92\x7b\x77\x1a"
+"\x87\x8a\x83\x89\x84\x1e\x58\xfb\x82\x05\x62\x20\x1d\xf7\x18\x23\x1d\x64\x06\xbe\xf7\x83\x05\x8e\x95\x8c\x95\x93\x1a\xd1\x55\xb8"
+"\x37\x51\x5d\x77\x57\x50\x1e\x0b\xf7\x63\x22\x1d\xae\x06\xa4\x99\x94\x9b\x9c\x7d\x94\x72\x1f\xfb\x03\x36\x1d\x9e\x06\xf7\x09\xfb"
+"\xef\x5f\x51\x05\x5c\x66\x6a\x72\x6f\x1b\x84\x81\x8c\x8e\x7d\x1f\x96\xbc\x05\x8d\x92\x8c\x91\x90\x1a\x99\x81\x94\x7c\x7c\x81\x80"
+"\x75\x87\x1e\x7e\x51\x05\x89\x83\x8a\x83\x87\x1a\x76\xa8\x7e\xb9\xc7\xb0\xa2\xd5\xc4\x1e\xf7\xe1\xf8\x43\x05\xa2\x06\xa5\x3a\x1d"
+"\x20\x06\x72\x7d\x82\x7b\x7a\x99\x82\xa4\x1f\x9e\x06\xfb\x78\xfb\xbd\x05\x0b\xf7\x74\xf7\x75\x05\x98\x27\x1d\xfb\x03\x29\x1d\xab"
+"\x06\xfb\x4a\xfb\x4b\x23\xf7\x4b\x05\xac\x06\xa2\x34\x1d\xfb\x02\x06\x74\x7d\x80\x78\x7d\xf7\x17\x1d\x78\x7d\x94\x84\x9f\x1f\xf7"
+"\x16\x2f\x1d\x99\x82\x92\xf7\x32\x1d\x75\x7c\x39\x1d\x0b\xf7\xd5\xf7\x3a\x15\xf7\x7a\xf7\xec\x28\xfc\x5f\x05\x45\x20\x1d\xf7\x29"
+"\x2a\x1d\x70\x06\xef\xf8\x61\x05\xa0\x06\xa1\x9a\x97\x9d\x9a\x83\x91\x76\x1f\x25\x06\xfb\x74\xfb\xe2\x3b\xf7\xe2\x05\x23\x20\x1d"
+"\x9e\x58\x1d\x99\x82\x92\x77\x1f\x47\x06\xee\xf8\x5f\xdf\xfb\xec\x05\x0e\xf7\x79\xf7\x47\x15\xbb\xad\xf7\x18\xfb\x36\x05\x7a\x20"
+"\x1d\xf7\x17\x23\x1d\x61\x06\xfb\x32\xf7\x55\xf7\x46\xf7\x10\x05\xb8\x06\xa2\x9a\x97\x9c\x9b\x83\x91\x76\x1f\xfb\x16\x20\x1d\x91"
+"\x06\xfb\x48\xfb\x13\xd9\xf7\xfe\x05\x26\x06\x74\x7d\x80\x79\x7b\x93\x85\x9f\x1f\xbb\x06\xfb\x01\xfc\x89\x05\x59\x20\x1d\xef\x06"
+"\x0b\xf8\x49\xbe\x15\x7a\x1d\x05\x50\x36\x50\x73\x4f\x1b\x5f\x75\x9e\xb2\x98\x8d\x97\x8e\x9c\x1f\xb1\xf7\x43\x05\xb9\x4c\x1d\xfb"
+"\x1e\x06\x72\x7d\x82\x7b\x7a\x99\x82\xa4\x1f\xb1\x06\x67\xfb\x3d\x05\x86\x74\x89\x7c\x7d\x1a\x4c\xb9\x61\xd0\xc7\xc8\x9f\xb9\xd5"
+"\x1e\x60\xfb\x5d\x05\x0b\xf8\x4b\xbe\x15\xcf\xf7\xd1\x05\xb2\x06\xa5\x3a\x1d\xfb\x14\x06\x71\x7d\x82\x7a\x7b\x99\x82\xa5\x1f\xaf"
+"\x06\x6f\xfb\x11\x05\x60\x37\x55\x7a\x52\x1b\x60\x74\x99\xa6\x95\x8d\x97\x8e\x9a\x1f\xa3\xf6\x05\xb8\x06\xa5\x3a\x1d\xfb\x18\x06"
+"\x72\x7d\x82\x7a\x7b\x99\x82\xa4\x1f\xad\x06\x75\x23\x05\x86\x74\x89\x7f\x7f\x1a\x58\xb8\x6a\xd1\xc7\xc5\x9a\xad\xd0\x1e\x6f\xfb"
+"\x17\x05\x0b\xf7\xe6\xf7\x90\x15\xf7\x7a\xf7\x98\x05\xa1\x91\x1d\x78\x7d\x80\x1d\x78\x7d\x25\x1d\xa0\x06\xf7\x0c\xfb\x96\x5f\xfb"
+"\x5f\x05\x26\x21\x1d\xf7\x90\x06\xa1\x40\x1d\x29\x06\x0b\x06\xef\xf8\x61\x05\xad\x06\xa3\x99\x95\x9d\x9a\x81\x93\x78\x1f\xfb\x06"
+"\x06\x74\x7d\x80\x79\x7d\x95\x83\x9e\x1f\xa6\x26\x1d\xfb\x29\x06\xee\xf8\x61\x05\xa4\x06\xa3\x99\x95\x9d\x9a\x81\x93\x78\x1f\x20"
+"\xf7\x5b\x1d\xa8\x26\x1d\xfb\x29\x06\xef\xf8\x61\x05\xa2\x3e\x1d\xfb\x03\x2b\x1d\xae\x06\x0b\xdf\x1d\x78\x7d\xd1\x1d\x74\x7c\x39"
+"\x1d\xf7\x20\x06\xa2\x9a\x97\x9c\x9a\x82\x92\x77\x1f\x5c\x06\xba\xf7\x6b\x05\x0b\xf8\x84\x22\x1d\x27\xfc\x61\x05\x5a\x24\x1d\xf7"
+"\x1f\x06\xa3\x99\x96\x9d\x99\x81\x93\x78\x1f\x65\x06\xef\xf8\x61\x05\xa8\x06\xa2\x9a\x1d\x79\x1f\xfc\x3e\x2b\x1d\xae\x26\x1d\x62"
+"\x24\x1d\xf7\x20\x06\xa3\x99\x96\x9d\x99\x81\x93\x78\x1f\x5b\x06\xef\xf8\x61\x05\x0e\xf7\x7d\x92\x15\x28\xfb\x1e\x05\xfb\x10\x21"
+"\x1d\xf7\x7d\x06\xa1\x9a\x97\x9d\xf7\x1d\x1d\x82\x91\x77\x65\x1d\xfb\xc6\x33\xf7\xc6\x05\xb7\x06\xa2\x34\x1d\xfb\x06\x33\x1d\x97"
+"\x06\x0b\xf7\x01\xbe\x15\x6d\x29\x1d\xf7\x70\x06\xf7\x16\xf7\x12\xf7\x02\xf7\x23\xab\x1f\x97\xc2\x05\x90\x9f\x8d\xa0\x9c\x1a\xf7"
+"\x09\x3f\xdb\xfb\x04\x1e\xfb\x70\x29\x1d\xa6\x06\x5b\xfc\x61\x15\xef\xf8\x61\x05\xf7\x43\x1d\x63\x1a\x80\x89\x7d\x89\x7f\x1e\x7b"
+"\x43\x72\x23\x20\x2c\x31\x8e\x19\x0b\x5a\x1d\xc0\xf7\x86\x05\xd7\xe1\xa4\x98\xc2\x1b\xc7\xac\x71\x5b\x85\x8b\x8a\x88\x7f\x1f\x58"
+"\xfb\x82\x05\x62\x06\x73\x7e\x81\x78\x7d\x95\x83\x9d\x1f\xf7\x18\x06\xa2\x99\x96\x9d\x99\x81\x93\x79\x1f\x64\x06\xbf\xf7\x82\x05"
+"\x8d\x96\x8c\x93\x94\x1a\xd1\x56\xb9\x3b\x52\x0b\x40\x1d\x70\x06\xdb\xf8\x04\x05\xfb\x0e\x32\x1d\xcf\x06\x55\xfb\x8b\x05\x51\x48"
+"\x4a\x7c\x1d\x0b\xf7\x08\xbd\x1d\x79\x7c\x25\x1d\x94\x06\x0b\xf8\xfb\x22\x1d\xa8\x27\x1d\xfb\x29\x20\x1d\xcf\x06\x45\xfb\xd8\x05"
+"\x35\x78\x39\x48\x35\x1b\x42\x5a\xbb\xd2\x96\x8c\x95\x8d\x96\x1f\xd2\xf7\xda\x05\xd1\x06\xa1\x9a\x38\x1d\xfb\x29\x32\x1d\xa6\x06"
+"\x45\xfb\xd8\x05\x88\x7b\x89\x7c\x0b\xf8\xd3\x22\x1d\xe7\x06\xa1\x9a\x38\x1d\xfb\xbc\x21\x1d\xf7\x2c\x06\x41\xfb\xeb\x05\x40\x7b"
+"\x3f\x50\x3c\x1b\x5b\x63\x9f\xb6\x64\x1f\xa6\xf7\x11\x05\x8d\x94\x8b\x8b\x8e\x1a\x97\x82\x94\x7e\x7a\x81\x81\x76\x86\x1e\x6b\xfb"
+"\x29\x91\x85\x05\x4d\xc4\xba\x73\xcc\x1b\xf4\xf4\xde\xee\xa0\x1f\x0b\x06\xcf\xf7\xd1\x05\xb4\x31\x1d\xfb\x1f\x06\x72\x7e\x43\x1d"
+"\xba\x06\x47\xfb\xd1\x05\xfb\x94\x06\xcf\xf7\xd1\x05\xbc\x3e\x1d\xfb\x20\x3f\x1d\xb2\x06\x44\xfb\xd1\x05\x70\x24\x1d\x0b\x1f\x20"
+"\x06\xfc\x12\xfc\x6f\xe7\xf8\x3c\x05\xba\x06\xa2\x99\x96\x9d\x99\x81\x93\x79\x1f\xfb\x29\x06\x73\x7d\x81\x78\x7d\x95\x83\x9d\x1f"
+"\xbe\x06\x26\xfc\x61\x05\x5d\x24\x1d\xf6\x06\xf8\x10\xf8\x64\x31\xfc\x31\x05\x5d\x06\x74\x7d\x81\x79\x7c\x95\x83\x9d\x1f\xf7\x29"
+"\x06\xa3\x99\x95\x9e\x0b\x61\x1d\x83\x93\x7e\x5b\x1d\x94\x83\x97\x92\x92\x8e\x92\x96\xf7\x13\x1d\xf7\x97\x16\x6f\x71\x72\x70\x74"
+"\x98\x7e\xa2\xa9\xa5\xa3\xa7\xa0\x7b\x9a\x75\x1f\x0e\xf7\x0a\x1d\x9d\x9a\x83\x91\x77\x1f\xfb\x2a\x21\x1d\xe3\x06\xfb\x27\xfc\x46"
+"\x73\xf7\xfe\x05\x45\x06\xfb\x4c\xfb\xfe\xb5\xf8\x46\x05\xe3\x27\x1d\xfb\x29\x06\x74\x7d\x80\x0b\x05\x44\x24\x1d\xf7\x2b\x31\x1d"
+"\x71\x06\x34\xf8\x94\x05\xfb\x63\x06\x73\x7d\x80\x79\x7c\x95\x84\x9e\x1f\xf7\x01\x06\xfb\xa6\xfc\x61\x05\x6f\x24\x1d\xf7\x2a\x06"
+"\xa3\x99\x96\x9d\x99\x81\x93\x78\x1f\x47\x06\x0b\x15\x84\x85\x89\x84\x83\x1f\x6e\x67\x81\x85\x7b\x1b\x80\x83\x8f\x9e\x6c\x1f\x9e"
+"\x6d\x7f\x8f\x76\x1b\x71\x72\xf7\x15\x1d\xa8\xad\x95\x90\x9d\x1b\x96\x95\x87\x80\x9c\x1f\x73\xae\x9d\x84\xa2\x1b\xa6\xa4\x97\xa9"
+"\xaf\x1f\x9e\x9a\x90\x92\x0b\x22\x1d\xf7\x9a\x06\x6a\xfb\x2b\x05\x89\x83\x8b\x89\x89\x1a\x80\x95\x82\x97\x9b\x96\x95\x9f\x90\x1e"
+"\xb7\xf7\x60\x05\xfc\x5e\xd9\x1d\xf7\xe4\xf8\x18\x15\x8f\x9b\x8b\x8d\x8d\x1a\x9b\x81\x94\x7b\x7b\x84\x83\x72\x86\x1e\x49\xfb\xc8"
+"\x05\x89\x7d\x89\x7e\x7f\x1a\x60\xa9\x71\xba\xa0\xea\x1d\x92\x8c\x92\x8f\x9f\x1f\x0b\xf7\x62\xf8\x04\x15\x48\xfb\xd1\x05\x26\x24"
+"\x1d\xf7\x8e\x06\xa3\x99\x96\x9d\x99\x81\x93\x78\x1f\x29\x06\xcf\xf7\xd1\x05\xf7\xa6\x06\x6e\xfb\x16\x8a\x7d\x05\x7f\x93\x84\x98"
+"\x9c\x96\x96\x9e\x8f\x1e\xb3\xf7\x4c\x05\xfc\x71\x06\x73\x7e\x81\x78\x7d\x95\x83\x9d\x1f\x0b\xf7\x35\xac\x15\x6a\xb0\xb7\x7b\xc1"
+"\x1b\xf7\x2a\xf7\x1d\xf7\x15\xf7\x21\xb2\x82\xa9\x76\xab\x1f\xd5\xc8\x05\x97\x95\x8f\x91\x94\x1a\x96\x83\x93\x7f\x84\x88\x8a\x80"
+"\x7e\x1e\x40\x4d\x05\xab\x67\x60\x9a\x55\x1b\xfb\x29\xfb\x1d\xfb\x15\xfb\x20\x65\x94\x6c\x9f\x6c\x1f\x3e\x4c\x05\x0b\x15\x83\x83"
+"\x86\x7e\x7a\x1f\x70\x6a\x89\x8a\x7e\x1b\x7f\x81\x8f\x98\x77\x1f\xac\x57\x88\x8c\x79\x1b\x63\x45\x5a\x6f\x7f\x93\x84\x99\x93\x91"
+"\x8e\x91\x92\x1f\xa1\xa2\xa4\x9a\x97\x1b\x91\x9e\x82\x84\x95\x1f\x73\xac\xa4\x80\xa0\x1b\xb1\xd3\xbc\xa5\x96\x81\x95\x80\x1f\x0e"
+"\x15\x77\x7e\x7c\x75\x4a\xba\x67\xe1\xc1\xb9\x9a\xa9\xb0\xf7\x52\x1d\x80\x81\x85\x82\x87\x1e\x81\x73\x86\x84\x7d\x80\x08\x78\x74"
+"\x66\x80\x65\xf7\x0f\x1d\x15\xfb\x55\xfb\x48\xfb\x40\xfb\x4c\xfb\x1c\xf2\x27\xf7\x20\xf7\x56\xf7\x48\xf7\x3f\xf7\x4d\xf7\x1d\x25"
+"\xee\xfb\x22\x1f\x82\x58\x15\xf7\x08\xdf\x3a\xfb\x04\xfb\x2b\xfb\x2a\xfb\x26\xfb\x30\xfb\x0d\x37\xda\xf7\x06\xf7\x2d\xf7\x2a\xf7"
+"\x24\xf7\x35\x1f\x0e\xf8\x0f\xf7\x03\x1d\xf7\x19\x3a\xe6\xfb\x0a\x1f\x84\x58\x15\xe4\xcb\x3f\x21\xfb\x2c\xf7\x29\x1d\xf7\x1c\x1f"
+"\x0b\xf8\x1c\x22\x1d\xf7\x1b\x27\x1d\xfb\xd4\x20\x1d\xf7\x19\x26\x1d\xfb\x1b\x21\x1d\xf7\xd4\x06\xa2\x9a\x97\x9c\x9a\x82\x92\x76"
+"\x1f\xfb\x18\x06\x0b\xf8\xb9\x15\xfb\x00\x6c\x76\x85\x85\x87\x08\x85\x87\x86\x83\x84\x1a\x82\x93\x83\x94\x8f\x8d\x8b\x8c\x8f\x1e"
+"\xcc\x9f\x54\xfb\x97\x05\x8c\x75\x75\x8b\x7c\x1b\x73\x7d\x82\x7b\x80\x93\x85\x97\x1f\xf7\x46\x06\x9a\xf7\x5f\x1d\x0b\xf7\x56\x1d"
+"\x88\x8f\x84\x91\x1f\x63\xac\x78\xa1\x6d\xbc\x88\x8f\x88\x90\x88\x90\x08\x88\x90\x87\x91\x8b\x1a\x98\x84\x88\x8e\x82\x1b\x84\x87"
+"\x87\x79\x81\x1f\x6a\x52\x72\x6b\x67\x6f\x08\x7e\x80\x88\x86\x85\x1a\x81\x92\x84\x93\x99\x0b\x86\x82\x1a\x80\x93\x83\x97\x91\x91"
+"\x8e\x93\x95\x1e\xf8\x3e\xf7\xf2\x15\x99\x74\x91\x75\x6e\x1a\xfb\x00\xfb\x00\x25\xfb\x08\x61\x6e\x95\xa3\x6d\x1e\x70\xaa\x15\x7c"
+"\xaa\x87\x9a\xa5\x1a\xf7\x01\xf6\xf0\xf7\x08\xb5\xa7\x82\x74\xa9\x1e\x0b\xf7\x7b\xf8\x37\x15\x3a\x06\x73\x7d\x81\x78\x7c\x95\x84"
+"\x9e\x1f\xa6\x06\x46\xfb\xd1\x5a\x1d\xbf\xf7\x84\x05\xd4\xdb\xab\x9d\xc2\x1b\x0b\xf5\x1d\x87\x1a\x80\x95\x82\x97\xf7\x18\x1d\x0e"
+"\xf8\x08\xf8\x37\x15\xfb\x3a\x20\x1d\xf7\x04\x06\x46\xfb\xd1\x05\xfb\x30\x21\x1d\xf7\xfe\x2a\x1d\xfb\x2e\x06\x0b\x94\x84\x9f\x1f"
+"\xcf\x06\x2d\xfc\x43\xfb\x54\xf8\x76\x05\xfb\x02\x20\x1d\xbb\x58\x1d\x0b\xf8\x37\x15\xfb\x3a\x20\x1d\xf7\x04\x06\x46\xfb\xd1\xf1"
+"\x1d\x0b\x94\x84\x9f\x1f\xba\x06\x61\xfb\x57\x05\xfb\x97\x06\xb5\xf7\x57\x05\xbc\x06\xa2\x6b\x1d\x78\x7d\x25\x1d\x9e\x26\x1d\x62"
+"\x06\x0b\xf7\x65\xf7\x22\x1d\x89\x92\x80\x1f\xf2\xfb\x35\xfb\x42\xfb\x35\x05\x7d\x7e\x88\x86\x81\x1a\x7f\x94\x82\x98\x93\x92\x8e"
+"\x94\x96\x1e\x0b\xda\x1d\x67\x90\x1f\x0e\xf7\x04\x1d\xe1\x35\x05\x83\x92\x8f\x89\x92\x1b\x9b\x9b\x99\x9a\x93\x8a\x8d\x80\x95\x1f"
+"\x0e\xe5\x1d\x8e\x91\x95\x1e\xf7\x0e\xdf\xe1\x6e\x1d\x9b\x92\x8a\x8e\x81\x94\x1f\x0e\x25\x1d\xd2\x06\x46\xfb\xd1\x05\x3c\x21\x1d"
+"\xf7\x58\x06\x0b\x06\xb5\xf7\x57\x05\xf7\xc3\x06\x78\x31\x05\x8a\x86\x8a\x87\x87\x63\x1d\xaa\xf7\x23\x05\xfc\x5d\x21\x1d\xbb\x06"
+"\x0b\xf7\x52\x1d\x7c\x85\x86\x77\x83\x1e\x65\x7b\x5b\x73\x50\xf7\x0f\x1d\x06\x75\x7c\x7f\x79\x7d\xf7\x39\x1d\x7f\x79\x7c\x93\x85"
+"\x9f\x1f\xf7\x7e\x06\xa2\x99\x96\x9e\x99\x82\x92\x77\x1f\x32\x06\x0e\x94\x85\x7f\x7d\x7a\x80\x74\x7a\x7d\x8f\x95\x79\x1f\x8f\x85"
+"\x89\x8b\x82\x1b\x7b\x80\x81\x7b\x7f\x90\x84\x96\x84\x1f\x81\x9d\xa7\x84\xa0\x1b\xc5\xb6\xae\xb9\xac\x79\x9d\x0b\x15\xfb\x2f\xfb"
+"\x01\x05\x7c\x84\x85\x82\x7f\x1a\x7f\x95\x82\x97\x8f\x98\x90\x8f\x90\x1e\xf7\x0d\xe2\xe1\x35\x05\x83\x92\x90\x89\x92\x1b\x9a\x9b"
+"\x9a\x99\x93\x8a\x8d\x0b\xf7\x6f\x15\x98\x94\x91\x95\x96\x1a\x97\x83\x93\x7e\x84\x84\x88\x84\x81\x1e\xfb\x1b\x2b\x05\x7e\x81\x85"
+"\x82\x80\x1a\x7f\x94\x83\x97\x92\x93\x8e\x92\x95\x1e\x0e\x15\x6f\x71\x72\x70\x76\x9a\x7c\xa1\xa8\xa4\xa3\xa7\xa0\xf7\x4e\x1d\x9b"
+"\x7c\xa0\xa8\xa4\xa3\xa7\xa0\x51\x1d\xf9\x06\x15\x93\x83\x86\x8e\x84\x1b\x7a\x7d\x7d\x7b\x85\x8e\x86\x50\x1d\x83\x92\x91\x88\x92"
+"\x1b\x9a\x9b\x99\x99\x8e\x84\x99\x87\x8e\x1f\x0e\xef\xf8\x61\x05\xa0\x06\xa1\x6b\x1d\x0b\x81\x7b\xa0\x1f\x95\x83\xa3\x70\x87\x1a"
+"\x89\x67\x05\x85\x97\x82\x95\x9c\x95\x95\x9f\x8f\x1e\x9f\xe5\x05\x8d\x94\x8b\x8b\x8f\x1a\x96\x82\x94\x7e\x7b\x80\x0b\x15\x4c\x51"
+"\x56\x51\x5f\xad\x6a\xb9\xc9\xc5\xc1\xc5\xb5\x68\xad\x5f\x1f\x84\x63\x15\xa5\x9e\x7b\x74\x67\x68\x6a\x65\x72\x77\x9c\xa0\xb1\xac"
+"\xab\xb3\x1f\x0b\xf7\x31\x1d\x78\x7d\x25\x1d\xd2\x06\x46\xfb\xd1\x05\x3c\x21\x1d\x0b\x15\x94\x83\x86\x8d\x84\x1b\x7b\x7c\x7d\x7c"
+"\x85\x8e\x84\x92\x85\x44\x1d\x92\xf0\x1d\x37\x1d\xf2\x1d\x0b\x15\xfb\x32\xfb\x01\x05\x7b\x4e\x1d\x91\x0b\x33\x1e\xfb\x97\x20\x1d"
+"\xbb\x06\x95\xfb\x57\x15\xb5\xf7\x57\x05\xf7\x34\x06\xc8\xb6\x6b\x5c\x70\x7a\x0b\xf7\x7f\xf7\x2d\x15\xfb\x11\xfb\x8c\x05\x88\x84"
+"\x89\x85\x85\x1a\x7b\x97\x7f\x9c\x9a\x94\x91\x9f\x9b\x1e\xf7\x64\xf7\xa1\x05\x0e\x8a\x7c\x05\x7b\x95\x80\x9a\x99\x94\x96\xa1\x90"
+"\x1e\x96\xc0\x05\x8d\x94\x8c\x93\x8e\x1a\x9b\x7b\x94\x6e\x45\x74\x7c\x22\x36\x1e\x0b\xf8\x92\xf7\xf1\x15\xc4\x6c\x5b\xa6\x46\x1b"
+"\xfb\x1b\xfb\x13\xfb\x0f\xfb\x17\x28\xd2\x45\xef\xd0\xc5\xa5\xc3\xc3\x1f\x73\x20\x0b\x9f\x8f\x92\xa0\x1e\xa2\x94\x96\x97\x9b\x1a"
+"\x98\x82\x94\x7e\x86\x86\x8a\x88\x85\x1e\x80\x73\x7a\x87\x79\x1b\x7b\x83\x91\x99\x0b\x82\x93\x7f\x5b\x1d\x94\x83\x97\x92\x92\x8e"
+"\x92\x96\x1e\x0e\x06\x46\xfb\xd1\x05\x62\x06\x75\x7c\x7f\x7a\x7c\x94\x84\x9f\x1f\xf7\x17\x06\xa1\x9a\x97\x9c\x9a\x82\x92\x78\x1f"
+"\x64\x06\x0b\xc2\xf7\x93\x05\x8d\x93\x8c\x94\x91\x1a\xc9\x51\xb5\x36\x65\x2b\x78\x7d\x68\x1e\x7c\x85\x84\x81\x7f\x1a\x7f\x94\x82"
+"\x96\x0b\x1a\x6b\xa5\x78\xb6\xb9\xb8\xa1\xa1\x94\x84\x93\x82\x88\x87\x8a\x88\x86\x1e\x7e\x71\xf7\x45\x1d\x0b\x81\x82\x86\x81\x82"
+"\x1e\xfb\x03\xfb\x10\x05\x81\x80\x88\x85\x82\x1a\x81\x64\x1d\x91\x88\x91\x1b\x9c\x9a\x99\x9b\x90\x8b\x8b\x80\x98\x1f\x0e\x05\xfb"
+"\x30\x21\x1d\xf7\xfe\x06\xa2\x34\x1d\xfb\x2e\x06\x0b\x25\x1d\xbb\x26\x1d\x59\x20\x1d\xf7\x3e\x2f\x1d\x0b\xf9\x08\xf7\x94\x15\xa1"
+"\x9a\x96\x9e\x35\x1d\xfc\xb4\x29\x1d\x0e\x2b\x1d\xc0\x06\x47\xfb\xd1\x05\x59\x24\x1d\x0b\x86\x1e\x6e\xfb\x1a\x05\xfb\xc1\x06\xf8"
+"\x3b\xf8\x53\x99\xcc\x05\xfb\xfc\x06\x68\xfb\x35\x05\x89\x82\x8b\x8b\x0b\xf7\x1f\x1d\x7f\x8f\x95\x78\x1f\x90\x82\x88\x8c\x86\x1b"
+"\x7b\x7d\x7e\x7b\x78\x0b\x78\x1f\xfb\x18\x06\xbc\xf7\x76\x15\xbe\xf7\x7f\x05\xf7\x24\x06\xcd\xbc\x63\x56\x40\x34\x48\x2b\x1f\x0e"
+"\x05\x62\x3f\x1d\xf7\x18\x06\xa2\x99\x95\x9e\x9a\x81\x92\x78\x1f\x65\x06\x0b\x05\xb8\x06\xa1\x9a\x97\x9d\x9a\x82\x91\x78\x1f\xfb"
+"\x07\x06\x74\x7d\x39\x1d\x97\x06\x0b\xf8\xd3\x15\xfb\x3c\xfb\x32\xfb\x46\xfb\x52\xfb\x17\xdc\x2f\xf7\x08\xf7\x3e\xf7\x32\xf7\x45"
+"\xf7\x52\x0b\x15\xfb\x30\xfb\x01\x05\x7c\x84\x85\x82\x7f\x1a\x7f\x95\x82\x97\x8f\x98\x90\x8f\x90\x1e\xf7\x0e\xe2\x0b\x9a\x96\x92"
+"\x9b\x98\x1e\xf7\x57\xf7\x87\x05\xd9\x16\xfb\x0c\xfb\x73\x05\x87\x84\x8a\x86\x86\x1a\x7c\x0b\x90\x8d\x92\x95\x1e\xf7\x0f\xdf\xe1"
+"\x6e\x1d\x9a\x93\x89\x8e\x0b\x99\x1d\x94\x8e\x91\x91\x1e\xa7\xad\x95\x91\x9d\x1b\x96\x0b\x15\x91\x7f\x93\x82\x77\x7e\x7b\x71\x51"
+"\xbe\x65\xd9\x0b\xf7\x73\x15\x98\x95\x91\x93\x94\x1a\x98\x82\x94\x7f\x82\x87\x89\x83\x80\x41\x1d\x0b\x16\xd4\x06\xf7\x54\xf8\x0d"
+"\xa5\xfc\x0d\x05\xd4\x06\xf7\x41\xf8\x94\x05\x96\x06\xa1\x9a\x97\x0b\x1b\x29\x43\xd3\xed\x99\x8d\x99\x8e\x9a\x1f\x9a\xd0\x05\xf7"
+"\x06\xa3\xf7\x01\xe8\xf7\x00\x1b\x0b\x97\x1d\xaf\x1f\x96\x06\xbb\xb5\xb2\xb7\xac\x72\xa2\x66\x1f\x0e\x1e\xfb\x1c\x29\x05\x7c\x80"
+"\x87\x85\x80\x1a\x7f\x94\x82\x98\x92\x90\x8d\x93\x97\x1e\x0e\x87\x1a\x89\x6d\x05\x84\x97\x82\x94\x9c\x96\x95\xa0\x8f\x1e\x9a\xcf"
+"\x05\x8d\x94\x8b\x8b\x0b\x1b\x62\x60\xa0\xa0\x89\x1f\x89\xab\x8b\x8b\x87\x90\x08\x91\x87\x86\x8d\x85\x1b\x0e\xf9\x56\xf7\x19\x1d"
+"\x05\x8d\x94\x8b\x8b\x8f\x1a\x96\x82\x94\x7e\x7a\x81\x81\x76\x86\x1e\x73\xfb\x04\x05\x0b\x15\x84\x85\x89\x84\x83\x1f\x6e\x67\x81"
+"\x9f\x1d\x6d\x0b\x1e\x27\xd9\x15\x6e\x72\x73\x6f\x74\x98\x7e\xa2\xa9\xa4\xa3\xa7\xa0\x7c\x9a\x75\x1f\x0b\xfb\x90\x05\x80\x07\x78"
+"\x96\x7f\x9c\x9f\x98\x97\xa6\x95\x1e\xe5\xf7\x93\x05\x0e\x80\x71\x68\x99\x1d\x94\x8e\x91\x91\x1e\x0b\x86\x8b\x87\x8a\x88\x1f\x7d"
+"\x4b\x05\x99\x58\x6c\x90\x5e\x1b\xfb\x23\xfb\x00\x40\x0b\x25\x1d\x97\x06\xf7\x13\xfb\x73\xfb\x81\xfb\x82\x05\x7c\x06\x74\x7d\x80"
+"\x0b\x9b\x96\x96\x9f\x90\x1e\xa3\xf7\x04\x05\xf7\x93\x06\xfc\x3a\xfc\x52\x7d\x49\x05\x0b\x15\x6a\xf7\x3a\x1d\x70\x1f\x0e\x16\x69"
+"\x6b\x42\x1d\xae\x8c\x1d\x0e\x1b\xa5\xa4\x97\xa9\xb0\x1f\x9e\x9b\x8f\x91\x95\x1a\x97\x81\x94\x7f\x1e\x0e\x8c\x8f\x8f\x1a\x94\x86"
+"\x92\x80\x91\x1e\xfb\xed\xf7\x50\xf7\xee\xf7\x50\x05\x0b\x9a\x83\x91\x77\x1f\x55\x06\xf7\xfb\xf8\x87\x05\x95\x2f\x1d\x9a\x0b\xef"
+"\xf7\x66\x15\xf7\x3d\xfb\x59\x05\x82\x93\x92\x87\x93\x1b\x9b\x99\x99\x9b\x0b\xa6\x06\xa3\x97\x86\x81\x7c\x78\x7f\x71\x7c\x0b\xf7"
+"\x2e\x1d\x95\x8c\x8b\x0b\x08\x78\x93\x7d\x9b\x9a\x1a\xb4\xcc\xae\xd7\xaf\xaa\x84\x7f\x9e\x1e\x94\x0b\x15\xfb\x3c\xf7\x59\x05\x94"
+"\x83\x84\x8f\x83\x1b\x7b\x7d\x7d\x7b\x86\x8c\x0b\x15\x3b\x40\x42\x3d\x51\xb5\x61\xc5\xdc\xd6\xd4\xd9\xc5\x61\xb5\x50\x1f\x0b\x15"
+"\xfb\x32\xf7\x40\x1d\x91\x91\x0b\x93\x9f\x72\x1e\x90\x85\x88\x8c\x86\x1b\x7e\x80\x80\x7e\x74\xc5\x6f\xbb\x0b\x95\x83\x9d\x1f\xf7"
+"\x20\x06\xa3\x99\x96\x9d\x99\x81\x93\x78\x1f\x5c\x06\x0b\x88\x1a\x7e\x93\x84\x98\x9c\x96\x95\x9f\x90\x1e\xad\xf7\x22\x05\x0e\x15"
+"\x9b\x98\x8e\x8f\x96\x1a\x97\x82\x94\x7e\x84\x83\x88\x84\x82\x1e\x0b\xfb\x17\xfb\x2f\xfb\x15\x2c\x4b\xd4\xf7\x00\xf7\x32\xf7\x16"
+"\xf7\x2a\x0b\x49\x4c\x52\x4e\x73\x93\x7a\x9f\x7b\x1e\x5e\x71\x74\x67\x62\x1a\x0b\xf7\x5d\x1d\xfc\xce\x06\x76\x80\x82\x0b\x15\xfb"
+"\x33\xf7\x40\x1d\x0b\x41\x1d\x7d\x81\x86\x84\x80\x1a\x7f\x94\x82\x98\x92\x0b\xbf\x05\xb9\x95\xae\xae\xae\x1b\x99\x9f\x87\x85\x9f"
+"\x1f\x87\x0b\x82\x92\x77\x1f\xfb\x0e\x06\xab\xf7\x2a\x05\x8d\x91\x8b\x8d\x0b\x97\x1d\xb0\x1f\x95\x06\xbb\xb5\xb2\x0b\x1b\x4c\x4d"
+"\x52\x42\x7b\x1f\x80\x55\x05\x42\x06\x74\x7d\x80\x0b\x77\x1f\x58\x06\xf7\x57\xf7\x58\xf7\x04\xfb\x58\x05\x56\x06\x0b\xb8\xba\x1a"
+"\xae\x80\xa8\x77\xa1\x1e\xab\x6e\x45\x9f\x3a\x1b\x0b\x94\x82\x98\x9b\x96\x95\x9f\x8f\x1e\x0b\x7f\x7a\x70\x4f\xbe\x63\xd8\xbf\xb9"
+"\x9c\xa9\xad\x1e\xa4\x0b\x05\x8a\x86\x6c\x1d\x9b\x96\x95\x0b\x06\x76\x33\x05\x8a\x86\x8a\x87\x87\x1a\x7e\x93\x84\x98\x0b\x15\x7e"
+"\x87\x87\x75\x7a\x1f\x6a\x73\x75\x7b\x75\x1b\x7b\x0b\x25\x1d\xe5\x06\x27\xfc\x61\x05\x2f\x06\x74\x7d\x0b\x6a\x6b\x6b\x72\x9f\x77"
+"\xa3\xae\xac\xaa\xac\xa5\x78\x9e\x0b\xac\x1a\xbb\x81\xac\x76\xa2\x1e\xa1\x77\x6c\x98\x6b\x1b\x0b\xf7\x47\x1d\x0e\x06\x33\x66\x84"
+"\x71\x64\x1f\x47\x5e\x68\x40\x27\x1a\x0b\xf7\x35\xf7\x43\xf7\x36\x05\x99\x98\x8e\x8f\x95\x1a\x0b\x15\xfb\x0b\xfb\x73\x05\x88\x85"
+"\x89\x85\x86\x1a\x7c\x0b\xfb\x01\x05\x7b\x81\x86\x85\x7f\x1a\x7f\x94\x82\x98\x0b\x9f\x1a\x97\x82\x94\x7e\x7c\x81\x83\x79\x85\x1e"
+"\x64\x0b\x25\x06\x74\x7d\x80\x79\x7b\x93\x85\xa0\x1f\xba\x06\x0b\xf7\x1e\x06\xc0\xac\x7d\x6a\xa4\x1f\xa2\x6d\x98\x64\x0b\x1b\x9b"
+"\x9b\x9a\x99\x93\x8a\x8d\x80\x95\x1f\x0e\x86\x89\x79\x1b\x76\x80\x91\x97\x0b\xf7\x4f\x1d\x30\x0b\x88\x1a\xf7\x57\x1d\x0b\x8b\x8b"
+"\x8e\x1a\x97\x82\x93\x7e\x7a\x81\x81\x77\x0b\x15\x4e\x3b\x53\x74\x43\x1b\x52\x6a\xa2\xb4\xcc\x0b\x15\x4d\x51\x55\x51\x60\xad\x6a"
+"\xb9\xca\xc5\xc1\x0b\x1f\xf7\x49\xab\x15\xdf\xc4\x57\x3f\x28\x24\x2d\x0b\x9d\x35\x1d\xfc\x26\x06\x74\x7d\x80\x0b\x77\x1f\x47\x06"
+"\xe8\xf8\x42\xf7\x54\xfc\x75\x05\x0b\x7c\x9a\x75\x1f\xf7\x62\x16\x6f\x71\x72\x70\x76\x0b\x7d\x08\x9c\x80\x97\x78\x7b\x1a\x57\x3e"
+"\x5f\x0b\x8b\x82\x6d\x69\xfb\x08\x18\x88\x81\x8a\x84\x0b\x15\x43\x48\x49\x45\x57\xb1\x65\xbf\xd4\xce\x0b\x1f\xa7\xa2\x9d\xa7\xa0"
+"\x1a\x98\x82\x93\x7c\x0b\x15\x45\x06\x73\xfb\x05\x05\xd0\x06\x0e\x7e\x93\x84\x98\x9c\x96\x96\x0b\x8a\x85\x8a\x87\x88\x1a\x80\x0b"
+"\x9a\x1b\x93\x92\x92\x94\x92\x0b\x7e\x96\x80\x98\x99\x93\x93\x9e\x8f\x1e\x0b\x06\xa0\x96\x95\xa0\x96\x83\x90\x7b\x1f\x0b\x06\xa1"
+"\x96\x94\x9c\x9b\x80\x94\x75\x1f\x0b\x06\xa2\x99\x95\x9d\x9a\x81\x93\x79\x1f\x0b\x06\x74\x7d\x81\x78\x7c\x95\x84\x9e\x1f\x0b\x8e"
+"\x1a\x97\x82\x94\x7e\x7b\x80\x81\x77\x0b\x15\xa1\x96\x94\x9c\x9b\x80\x94\x75\x1f\x0b\x15\x7b\x7f\x81\x7d\x80\x92\x85\x99\x1f\x0b"
+"\x97\x96\x98\x96\x84\x91\x7f\x1f\x47\x06\x0b\x6a\x80\x7a\x49\x7f\x1e\x67\xfb\x66\x05\x0b\xf0\xd0\xe4\xa4\x7d\xa7\x76\x9b\x1f\x6f"
+"\x0b\x82\x98\x92\x8b\x8b\x95\x9c\x1e\x0e\x01\x00\x01\xe3\x01\x05\x00\x01\x0a\x02\x01\x40\x03\x01\x87\xff\x02\x87\xa0\x02\x8e\x02"
+"\x00\x01\x00\x02\x00\x03\x00\x42\x00\x61\x00\xf1\x01\xc7\x02\x27\x02\xa4\x02\xab\x02\xf9\x03\x40\x03\xad\x03\xe1\x03\xe3\x03\xe5"
+"\x03\xec\x04\x17\x04\x7a\x04\xa9\x05\x04\x05\x74\x05\xb6\x06\x1d\x06\x87\x06\xbf\x07\x1b\x07\x8b\x07\xab\x07\xbe\x07\xf7\x08\x12"
+"\x08\x5c\x08\xba\x09\x5c\x09\x5f\x09\x83\x09\x9e\x09\xa1\x09\xa4\x09\xe1\x09\xe4\x09\xe7\x09\xea\x09\xed\x09\xf0\x09\xf3\x0a\x30"
+"\x0a\x39\x0a\x3c\x0a\x57\x0a\xf2\x0a\xf5\x0a\xf8\x0a\xfb\x0a\xfe\x0b\x2b\x0b\x5e\x0b\x9f\x0b\xa2\x0b\xb2\x0b\xd1\x0b\xfc\x0c\x20"
+"\x0c\x54\x0c\x5a\x0c\x74\x0c\x77\x0c\xbd\x0c\xc0\x0c\xe1\x0c\xe4\x0d\x2f\x0d\x39\x0d\x3c\x0d\x44\x0d\x48\x0d\x4b\x0d\x4e\x0d\xd8"
+"\x0d\xdb\x0d\xde\x0e\x01\x0e\x5d\x0e\x60\x0e\x7e\x0e\x81\x0e\x8f\x0e\xb9\x0e\xbc\x0e\xdc\x0e\xdf\x0e\xf8\x0f\x73\x0f\x7e\x0f\xf8"
+"\x10\x25\x10\x67\x10\xee\x11\x78\x11\x7a\x11\xf4\x12\x5d\x13\x2b\x13\xc9\x13\xd2\x14\x05\x14\x4e\x14\x66\x14\x6b\x14\xb8\x14\xfa"
+"\x15\x0a\x15\x22\x15\x53\x15\x55\x15\xc5\x15\xdc\x15\xde\x15\xfa\x16\x16\x16\x3e\x16\x4d\x16\x8c\x16\xee\x16\xf2\x16\xf8\x16\xfe"
+"\x17\x0c\x17\x12\x17\x18\x17\x1e\x17\x22\x17\x2d\x17\x3d\x17\x43\x17\x57\x17\x5d\x17\x5f\x17\x62\x17\xd7\x18\x36\x18\x39\x18\xb2"
+"\x18\xdd\x18\xe0\x18\xe3\x19\x3b\x19\x43\x19\xc8\x1a\x48\x1a\x7e\x1a\x9e\x1a\xf3\x1b\x92\x1b\x94\x1c\x14\x1c\x60\x1c\x94\x1d\x3a"
+"\x1d\x69\x1d\x9c\x1d\xc7\x1d\xe7\x1e\x80\x1e\xdb\x1f\x49\x1f\x57\x1f\xd2\x20\x34\x20\x60\x20\xdc\x20\xfe\x21\x17\x21\x24\x21\x3f"
+"\x21\x62\x21\x9a\x21\xfc\x22\x0e\x22\x28\x22\x30\x22\x38\x22\x40\x22\x69\x22\x89\x22\xa9\x22\xe6\x23\x0b\x23\x26\x23\x33\x23\x55"
+"\x23\xc7\x24\x3d\x24\x44\x24\x4b\x24\x5b\x24\x6b\x24\x73\x24\x88\x24\x96\x24\xb3\x24\xc3\x25\x1b\x25\x3c\x25\x53\x25\xe3\x26\x2e"
+"\x26\x35\x26\x45\x26\x8c\x26\xa9\x26\xb7\x26\xc5\x26\xcc\x26\xee\x27\x85\x27\xa7\x27\xb8\x27\xcb\x27\xd2\x27\xf4\x28\x5f\x28\x71"
+"\x28\x87\x28\x9a\x28\xb3\x28\xbb\x28\xd3\x29\x0e\x29\x7f\x29\xa6\x29\xfc\x2a\x56\x2a\xb4\x2b\x07\x2b\xc1\x2c\x19\x2c\x2b\x2c\x33"
+"\x2c\x35\x2c\x7b\x2c\x83\x2c\xc0\x2c\xdd\x2c\xdf\x2c\xe6\x2c\xed\x2c\xf8\x2d\x00\x2d\x02\x2d\x09\x2d\x0b\x2d\x26\x2d\x2e\x2d\x36"
+"\x2d\x3d\x2d\x45\x2d\x8a\x2d\xd6\x2d\xd8\x2e\x53\x2e\x55\x2e\xac\x2f\x58\x2f\x5c\x2f\x72\x2f\x85\x2f\x98\x2f\xa5\x2f\xfc\x30\x26"
+"\x30\x8a\x30\x91\x30\x98\x30\xa0\x30\xd2\x30\xd4\x30\xfd\x31\x26\x31\x2e\x31\x39\x31\x76\x31\x7e\x31\x86\x31\x95\x31\xba\x31\xc1"
+"\x31\xdd\x31\xdf\x31\xe7\x31\xee\x31\xf5\x31\xfe\x32\x05\x32\x0c\x32\x14\x32\xad\x32\xaf\x33\x23\x33\x2b\x33\x97\x33\x99\x34\x0a"
+"\x34\x12\x34\x19\x34\x20\x34\x22\x34\x29\x34\x61\x34\x68\x34\x70\x34\xc1\x34\xc3\x35\x5b\x35\x62\x35\x97\x36\x33\x36\x3b\x36\x42"
+"\x36\x49\x36\x86\x36\x89\x36\xec\x37\x37\x37\x3f\x37\x46\x37\x58\x37\x6c\x37\x87\x37\xac\x38\x71\x38\x79\x38\xa3\x38\xbc\x38\xc5"
+"\x38\xdc\x38\xe4\x38\xf5\x38\xf7\x38\xf9\x39\x1a\x39\x1c\x39\x20\x39\x8e\x39\x90\x3a\x16\x3a\x63\x3a\xff\x3b\x02\x3b\x48\x3b\x4b"
+"\x3b\xa2\x3b\xa4\x3b\xa6\x3b\xa8\x3b\xaa\x3b\xac\x3b\xe4\x3b\xe6\x3b\xe9\x3c\x87\x3c\x89\x3c\xa8\x3c\xd2\x3c\xe0\x3d\x00\x3d\x53"
+"\x3d\x99\x3d\xac\x3e\x34\x3e\xb2\x3f\x19\x3f\x31\x3f\xba\x40\x18\x40\xb0\x41\x08\x41\x0a\x41\x24\x41\x60\x41\xe0\x42\x3d\x42\xbe"
+"\x42\xd0\x43\x03\x43\x6d\x43\xe1\x44\x37\x44\x3a\x44\xa8\x44\xdc\x45\x2d\x46\x01\x46\x37\x46\x3a\x46\x68\x46\x6a\x46\xcb\x47\x10"
+"\x47\x56\x47\x5b\x47\x80\x47\xc7\x48\x1b\x48\x65\x48\x68\x49\x15\x49\x23\x49\x3b\x49\x7f\x49\x8d\x49\xab\x4a\x05\x4a\x5b\x4a\x8e"
+"\x4b\x14\x4b\x74\x4b\xd6\x4c\x0c\x4c\x70\x4c\x76\x4c\xe9\x4d\x51\x4d\x59\x4d\x92\x4d\x96\x4e\x0b\x4e\x81\x4e\xa4\x4e\xa9\x4f\x2d"
+"\x4f\x4b\x4f\x4d\x4f\x9c\x50\x7e\x51\x1c\x51\xbb\x52\x31\x52\xa5\x52\xac\x52\xe0\x53\x14\x53\x75\x53\xe0\x53\xfb\x54\x4a\x54\x90"
+"\x54\xd6\x54\xe2\x55\x2f\x55\x7d\x55\xd4\x56\x5e\x56\x65\x56\x7c\x56\xa1\x56\xa8\x56\xf7\x57\x6d\x57\xd9\x58\x1f\x58\x7c\x58\xe4"
+"\x59\x08\x59\x0e\x59\x16\x59\x2e\x59\x35\x59\x74\x59\x7b\x59\xd4\x5a\x10\x5a\x85\x5b\x13\x5b\x4b\x5b\xa0\x5b\xd5\x5c\x1a\x5c\x9b"
+"\x5c\xb5\x5c\xfb\x5d\xf2\x5e\x34\x5e\x3b\x5e\x58\x5e\x73\x5e\x83\x5e\xe5\x5f\x55\x5f\x5d\x5f\x93\x5f\xb7\x5f\xe5\x60\x34\x60\x3c"
+"\x60\xa7\x60\xf7\x61\x25\x61\x53\x61\xb4\x62\x1b\x62\x58\x62\x5b\x62\x8c\x62\xdb\x62\xe5\x62\xef\x63\x0a\x63\x55\x63\x5c\x63\xa5"
+"\x63\xad\x63\xd9\x63\xe6\x63\xed\x64\x09\x64\x5b\x65\x1b\x65\x5c\x65\xd6\x65\xdb\x66\x1d\x66\xa6\x66\xc1\x67\x0b\x67\x13\x67\x1a"
+"\x67\xa3\x68\x06\x68\x4f\x68\x75\x68\x7c\x68\x84\x68\x87\x68\x9e\x68\xa3\x69\x04\x69\x10\x69\x1c\x69\x7f\x6a\x2c\x6a\xae\x6a\xd4"
+"\x6b\x0a\x6b\x5f\x6b\xb2\x6c\x2c\x6c\xb4\x6c\xbc\x6c\xf2\x6c\xf9\x6d\x00\x6d\x19\x6d\x6c\x6d\x74\x6d\xaf\x6d\xb7\x6d\xbf\x6d\xd8"
+"\x6e\x13\x6e\x9f\x6e\xe5\x6f\x61\x6f\xdb\x70\x28\x70\xad\x70\xb9\x70\xda\x71\x39\x71\x4e\x71\x56\x71\x5d\x71\x64\x71\x7e\x71\x7f"
+"\x71\x81\x71\x89\x71\x91\x71\x97\x71\x99\x71\xb6\x72\x2d\x72\x8e\x73\x12\x73\x3d\x73\x69\x73\xb3\x73\xdb\x74\x02\x74\x42\x74\x9c"
+"\x75\x7e\x76\x25\x76\x66\x76\xd7\x77\x6b\x77\xca\x78\x73\x78\x9e\x78\xa0\x78\xc1\x78\xfe\x79\x23\x79\x70\x79\x73\x79\x98\x79\xd4"
+"\x7a\x08\x7a\x1e\x7a\x35\x7a\x46\x7a\x5c\x7a\xaa\x7b\x1c\x7b\x69\x7b\x7f\x7b\x81\x7b\xaa\x7b\xd3\x7c\x2c\x7c\x33\x7c\x3b\x7c\x8f"
+"\x7c\x91\x7c\x99\x7c\xa1\x7c\xa7\x7d\x82\x7d\xf2\x7d\xf4\x7d\xf6\x7e\x0d\x7e\x2b\x7e\x86\x7e\x9c\x7e\xfd\x7f\x2a\x7f\x5a\x7f\xaa"
+"\x7f\xbe\x7f\xf0\x80\x02\x80\x0e\x80\x40\x80\x5e\x80\xa6\x80\xab\x80\xb0\x81\x4a\x81\x5a\x81\x78\x81\x89\x81\x91\x82\x03\x0e\x0e"
+"\xf8\x63\xf8\xc0\x15\x8f\x97\x8d\x96\x8f\x1a\x9e\x7a\x99\x76\x6c\x78\x78\x64\x85\x1e\x58\xfb\xd4\x05\x8a\x86\x8b\x86\x88\x1a\x80"
+"\x95\x82\x96\x9b\x28\x1d\x4c\xfb\x22\x15\x65\x6a\x6d\x68\x71\x9f\x79\xa8\x1f\x97\x06\xb2\xac\xa9\xae\xa5\x77\x9d\x6d\x1f\x0e\xf7"
+"\xa2\xf8\xef\x15\x76\xfb\x90\x05\x80\x07\x78\x96\x7f\x9c\xa0\x97\x97\xa6\x95\x1e\xe5\xf7\x93\x05\xb2\x16\x77\xf7\x14\x1d\xf8\x6a"
+"\xf7\xf1\x15\xe2\x06\x53\x0a\x3a\x06\xc8\xf7\x66\x05\x8c\x91\x8c\x90\x8e\x28\x0a\x7c\x81\x82\x77\x85\x1e\x4d\xfb\x6c\x05\x3b\x06"
+"\xc8\xf7\x66\x05\x8e\x95\x8b\x8c\x8f\x1a\x96\x81\x94\x7f\x7c\x81\x82\x77\x85\x1e\x4d\xfb\x6c\x05\x3e\x32\x1d\xd2\x06\x6a\xfb\x05"
+"\x05\x36\x21\x1d\xdb\x06\x4e\xfb\x67\x05\x88\x81\x8b\x8b\x86\x1a\x80\x95\x82\x97\x9a\x96\x95\x9e\x90\x1e\xca\xf7\x6d\x05\xda\x06"
+"\x4f\xfb\x67\x05\x89\x84\x8a\x88\x87\x1a\x7f\x94\x82\x98\x9a\x95\x94\x9f\x91\x1e\xc9\xf7\x6d\x05\xda\x06\xa1\x34\x1d\x43\x06\x78"
+"\xf7\x05\x15\x6a\xfb\x05\x05\x3b\x06\xac\xf7\x05\x05\x0e\xf8\x23\xf8\xd3\x15\x2a\x7f\x3a\x3f\x3b\x1a\x6e\x97\x70\x9f\x7c\x1e\xa2"
+"\x7a\xa6\x81\xca\x7f\xcb\x7e\x9a\x87\x9d\x7e\x08\x99\x82\x94\x78\x79\x1a\x49\x40\x56\x30\x5e\x68\x95\x9f\x76\x1e\x7e\x97\x80\x98"
+"\x8e\x1a\x8d\xa9\x05\x91\x7f\x94\x82\x7b\x80\x81\x76\x87\x1e\x7a\x3e\x05\x8a\x86\x8a\x86\x88\x1a\x80\x95\x82\x97\x9b\x95\x95\x9f"
+"\x90\x1e\x8c\x90\x9d\x75\xbc\x76\xb1\x89\x19\x74\xfb\x03\x05\x8a\x87\x8a\x86\x88\x1a\x7f\x94\x82\x98\x9b\x28\x1d\xa3\xf7\x05\x05"
+"\xf7\x0a\x97\xdf\xd5\xe6\x1a\xa8\x7e\xa8\x77\x9b\x1e\x73\x9e\x72\x93\x44\x99\x51\x97\x7a\x90\x7a\x96\x08\x7e\x93\x83\x9c\x9c\x1a"
+"\xc4\xd1\xc2\xd5\xaa\xad\x81\x7c\x9e\x1e\x96\x83\x94\x7e\x85\x1a\x8a\x78\x05\x83\x96\x82\x95\x9c\x28\x1d\x98\xc5\x05\x8d\x95\x8b"
+"\x8b\x8e\x1a\x96\x82\x94\x7e\x7e\x80\x82\x7c\x86\x1e\x71\xa2\x75\x94\x64\x90\x95\xb7\x18\x8d\x92\x8b\x8e\x8e\x28\x0a\x7b\x80\x81"
+"\x75\x87\x1e\x0e\xf8\x30\xf7\x83\xf7\x23\x1d\x83\x60\x15\xb1\xa6\x71\x64\x58\x59\x5a\x58\x63\x70\xa5\xb2\xbf\xbc\xbb\xc1\x1f\x67"
+"\xf8\x32\xf7\x23\x1d\x82\x60\x15\xb2\xa6\x71\x64\x59\x59\x59\x58\x63\x70\xa5\xb2\xbf\xbc\xbb\xc0\x1f\xf7\x66\xfb\x76\x15\x9b\x8f"
+"\x93\x94\x97\x1a\x95\x84\x93\x82\x88\x87\x8a\x89\x85\x1e\xfc\x2a\xfb\x0d\x05\x7c\x87\x82\x82\x7e\x1a\x82\x93\x83\x93\x8e\x90\x8c"
+"\x8d\x91\x1e\x0e\xf8\x1a\x16\xc8\x23\x1d\x69\x06\x7b\xad\xa3\xa5\xa7\xb7\xa4\xbc\x19\x94\x2e\x0a\x5d\x06\x88\x84\x7a\x64\x71\x5f"
+"\x75\x6d\x19\x44\xf7\x39\x05\x7b\xb1\x84\xa4\x9b\x1a\xb8\xbb\xb8\xba\xa3\x98\x85\x76\x9e\x1e\xb2\x9d\x05\x9c\x93\x92\x94\x98\x1a"
+"\x96\x82\x95\x80\x86\x87\x8a\x86\x80\x1e\x83\x87\x05\x99\x76\x79\x90\x74\x1b\x3c\x3e\x44\x44\x76\x8e\x81\xa2\x53\x1f\x38\x72\x4f"
+"\x40\x3c\x1a\x41\xbe\x55\xd1\xb7\xb6\x9f\xb2\xaf\x1e\x77\xba\x15\x69\x6f\x67\x76\x6c\x1b\x5f\x6a\xaf\xbb\xc6\xb8\xc1\xc7\x99\x1f"
+"\x0e\xf7\xe0\xf8\xef\xc6\x0a\x0e\xf8\xcb\xf8\xef\x15\x7c\x79\x7a\x52\x5e\x1f\xfb\x05\xfb\x27\x5d\xfb\x04\xfb\x16\x1a\x5a\x90\x69"
+"\x99\x5a\x1e\x9b\x4f\x99\x68\x99\x73\x08\x84\x8f\x92\x87\x92\x1b\x9b\x9a\x99\x99\x8e\x8b\x8d\x87\x96\x1f\x72\xd4\x7e\xcf\xcb\x1a"
+"\xf7\x22\xc2\xf7\x19\xf7\x0e\xf7\x30\x1e\x96\x9a\x8c\x8c\x93\x1a\x97\x81\x94\x7f\x1e\x0e\xf7\xbc\xf8\xef\x15\x7b\x7c\x7d\x7d\x87"
+"\x8c\x89\x8e\x81\x1f\xa3\x4d\x9a\x3b\x4c\x1a\xfb\x21\x53\xfb\x1e\xfb\x0d\xfb\x2c\x1e\x80\x7c\x8a\x8a\x83\x1a\x7f\x95\x82\x97\x9a"
+"\x9d\x9c\xc4\xb8\x1e\xf7\x05\xf7\x26\xb9\xf7\x05\xf7\x15\x1a\xdc\x70\xf7\x00\x66\xca\x1e\x92\x87\x84\x8f\x84\x1b\x0e\xf8\x05\xf8"
+"\x4e\x15\xfb\x0a\xb2\x05\x8d\x83\x88\x8c\x87\x1b\x7b\x7d\x7d\x7c\x7f\x90\x86\x9a\x87\x1f\xf7\x08\x64\x28\x23\x05\x7f\x7f\x89\x87"
+"\x82\x1a\x7f\x94\x82\x98\x94\x93\x8f\x96\x95\x1e\xef\xf4\xc2\x23\x05\x7f\x91\x90\x87\x95\x1b\x9b\x9a\x99\x99\x8f\x89\x92\x88\x91"
+"\x1f\x55\xf3\xf7\x1c\xb3\x05\xa0\x91\x94\x94\x9a\x1a\x96\x82\x95\x80\x87\x83\x8a\x89\x85\x1e\xfb\x19\x63\xa6\xf7\x13\x05\x8c\x91"
+"\x8c\x8f\x8f\x6f\x1d\x81\x76\x87\x1e\x0e\xf8\x10\xf7\x94\x15\xf7\x44\x23\x1d\xfb\x42\x06\xb4\xf7\x52\x05\x8d\x94\xf7\x13\x0a\x78"
+"\x87\x1e\x61\xfb\x55\x05\xfb\x44\x21\x1d\xf7\x42\x06\x61\xfb\x53\x8a\x7e\x05\x80\x95\x82\x97\x9b\x95\x95\x9f\x90\x1e\x0e\xe7\x1d"
+"\xc4\x0a\xf7\xd3\xf7\x10\xf7\x0c\x1d\xf9\x01\xf9\x03\x15\x93\x96\x8d\x8f\x91\x1a\x97\x81\x94\x7f\x7f\x84\x86\x7d\x80\x1e\xfc\x70"
+"\xfd\x3f\x05\x85\x82\x88\x84\x86\x1a\x7f\x95\x82\x97\x97\x92\x90\x99\x95\x1e\x0e\xf8\xcb\xf7\xf1\x15\x91\xa9\x8f\xaa\xa7\x1a\xf7"
+"\x04\x55\xcd\x2f\xfb\x06\x26\x20\xfb\x32\x69\x1e\x76\x29\x05\x84\x6d\x88\x6d\x6e\x1a\xfb\x05\xc1\x49\xe7\xf7\x06\xef\xf6\xf7\x32"
+"\xae\x1e\xfb\xce\xe8\x15\x99\xc9\xab\xcd\xb2\xb7\x08\xac\xa8\xaf\x9c\xb3\x1b\xce\xac\x5c\x2b\x71\x88\x70\x86\x73\x1f\x78\x34\x7e"
+"\x4d\x6a\x49\x64\x5f\x19\x6a\x6f\x67\x7a\x63\x1b\x48\x6a\xbb\xeb\xa7\x8d\xa4\x90\xa2\x1f\x0e\xf8\x5f\xf8\xf9\x15\xfb\x62\x4f\x05"
+"\x76\x85\x82\x82\x7c\x1a\x80\x94\x81\x96\x8d\x95\x8d\x8c\x8f\x1e\xf7\x19\xb1\x20\xfc\x80\x05\xfb\x1b\x33\x1d\xf7\xd4\x06\xa1\x9a"
+"\x38\x1d\xfb\x19\x06\x0e\xf7\x25\xbe\x15\xf5\xd7\xf7\x61\xf7\x35\xb6\xb4\x08\xc4\xc1\xa0\xb2\xbf\x1a\xd9\x45\xcb\x38\x4a\x4c\x70"
+"\x5a\x5a\x1e\x6f\x6f\x76\x6a\x7a\x1a\x81\x95\x82\x97\x97\x94\x92\x9a\x93\x1e\xc5\xa8\xd0\xb5\xcd\x1b\xc9\xbd\x5f\x55\x55\x75\x70"
+"\xfb\x13\x27\x1f\x20\x35\x3d\x50\x32\x49\x81\x84\x18\x7c\x47\x05\xf8\x29\x06\x9c\xda\x05\x8d\x95\xf7\x0a\x0a\x87\x1e\x84\x6c\x05"
+"\x0e\xf7\xf5\xf7\xf9\x15\x76\x7c\x7f\x7a\x7c\x94\x85\x9f\x8a\x1f\xdd\xcb\x5a\x4d\x39\x2d\x3e\x26\x53\x5c\x9c\xaf\x62\x1f\x91\x84"
+"\x86\x8d\x84\x1b\x7c\x7d\x7d\x7c\x7e\x97\x7e\xa7\x7b\x1f\x6f\xba\xb7\x7e\xbe\x1b\xf7\x18\xf7\x11\xf3\xf7\x01\xc2\x6c\xb8\x54\xa7"
+"\x1f\xd8\xab\xbd\xca\xce\x1a\xd7\x4e\xbf\x30\x4f\x4d\x76\x68\x5c\x1e\x74\x79\x82\x80\x80\x1a\x7e\x94\x83\x98\x94\x8f\x8d\x98\x99"
+"\x1e\xac\xb0\xbd\x9d\xc3\x1b\xcb\xb7\x68\x59\x48\x46\x52\x3a\x1f\x0e\xf8\x29\xf7\x3a\x15\x72\xfb\x07\x05\x43\x29\x1d\xf7\x2a\x06"
+"\xa1\x9a\x38\x1d\x70\x06\xa4\xf7\x07\x05\xa8\x06\xa2\x99\x96\x9e\x9a\x83\x91\x77\x1f\x70\x06\xde\xf8\x16\x05\x2e\x06\xfb\xcc\xfc"
+"\x13\x7f\x55\x05\xf7\xae\xbe\x15\xfb\x6d\x06\xf7\xa7\xf7\xe3\x05\x99\x06\x0e\xf7\xcf\xf8\xbc\x15\xf7\x81\x57\x0a\xfb\xb3\x06\x51"
+"\xfb\xa0\x05\x8a\x88\x8b\x88\x88\x1a\x80\x8c\x93\x83\x96\x1b\x92\x90\x8d\x91\x9a\x1f\xa0\xb8\xb8\x96\xb3\x1b\xce\xb4\x63\x4a\x65"
+"\x7d\x60\x72\x66\x1f\x52\x65\x51\x6c\x49\x1b\x52\x5e\xa0\xb7\x63\x1f\x93\x84\x86\x8d\x84\x1b\x7c\x7c\x7d\x7c\x7c\x9e\x77\xae\x73"
+"\x1f\x72\xb1\xb7\x7e\xbb\x1b\xf7\x20\xf7\x0d\xf7\x0f\xf7\x23\xe4\x50\xc5\x32\x62\x66\x83\x78\x57\x1f\x0e\xf7\x81\xf7\x9b\x15\x95"
+"\xc3\x9e\xbf\xa8\xb5\x08\xe3\xc5\xf6\xcb\xe3\x1b\x9d\x9a\x88\x87\x93\x1f\x86\x94\x8f\x8a\x91\x1b\x9a\x99\x99\x9a\x9e\x69\x9b\x60"
+"\x39\x32\x65\x48\x42\x1f\x35\x3d\x58\xfb\x10\xfb\x15\x1a\xfb\x0b\xc7\x3f\xea\xf7\x07\xf7\x01\xf7\x06\xf7\x0d\xe1\x52\xc8\x3b\x48"
+"\x4a\x66\x48\x57\x1e\x82\x40\x15\xae\xb7\x96\x98\x9e\x9c\x08\xae\xb3\xb5\x9e\xb1\x1b\xc0\xb3\x5f\x50\x30\x3c\x35\x38\x40\x67\xbb"
+"\xf3\x86\x1f\x0e\xf8\xb8\xf8\xb1\x15\xfb\xa1\xfc\x8a\x05\x87\x82\x89\x86\x85\x1a\x80\x94\x82\x97\x98\x93\x91\x9c\x95\x1e\xf7\xa5"
+"\xf8\x92\x9a\xd2\x05\xfc\x14\x06\x7a\x3c\x05\x8a\x85\x6c\x1d\x9c\x95\x95\xa0\x8f\x1e\x92\xaa\x05\xf7\xac\x06\x0e\xf8\x5a\xf7\xcc"
+"\x15\xde\xb1\xb8\xc6\xd1\x1a\xda\x4c\xc5\x34\xfb\x04\xfb\x01\x2b\x28\x5d\xa1\x68\xb9\x70\x1e\x33\x64\x56\x47\x3f\x1a\x36\xcd\x4f"
+"\xe8\xf7\x0b\xf7\x06\xf1\xf5\xbd\x71\xb4\x59\xa7\x1e\x6c\xf7\x91\x15\xc9\xb7\x64\x55\x42\x42\x4d\x36\x4d\x5d\xb0\xbe\xd3\xd9\xcf"
+"\xdd\x1f\x4f\xfb\xaa\x15\xce\xba\x63\x51\x3b\x39\x42\x31\x49\x5b\xb5\xc5\xdc\xda\xd1\xe8\x1f\x0e\xf8\xad\xf7\xe6\x15\x81\x53\x77"
+"\x57\x6f\x61\x08\x33\x51\x20\x4b\x33\x1b\x79\x7c\x8e\x90\x83\x1f\x90\x82\x87\x8c\x85\x1b\x7b\x7e\x7d\x7c\x77\xad\x7b\xb6\xde\xe3"
+"\xb1\xcd\xd4\x1f\xe1\xda\xbe\xf7\x10\xf7\x15\x1a\xf7\x0b\x4f\xd7\x2d\xfb\x08\xfb\x01\xfb\x06\xfb\x0d\x35\xc4\x4e\xdb\xce\xcc\xb0"
+"\xce\xbf\x1e\x94\xd6\x15\x6a\x62\x7c\x7a\x7a\x7b\x08\x68\x63\x60\x78\x65\x1b\x57\x63\xb7\xc6\xe6\xda\xe1\xde\xb3\xac\x7a\x6e\x9c"
+"\x1f\x9b\x71\x95\x62\x64\x1a\x0e\xf7\xd3\xf7\x10\xf7\x30\x1d\xb8\xab\x72\xa2\x66\x1f\xc0\xf7\xba\x97\x1d\xaf\x1f\x96\x06\xbb\xb5"
+"\xb2\xb7\xad\x72\xa1\x66\x1f\x0e\xf7\x83\xf7\x2d\xc6\x0a\x70\xf7\x9d\xf7\x30\x1d\xb7\xac\x72\xa2\x66\x1f\x0e\xc7\xf7\xad\x15\xf8"
+"\x3e\xfb\x7d\x05\x88\x90\x91\x8a\x90\x1b\x93\x93\x90\x92\x8f\x1f\x8d\x8e\x05\x8d\x8f\xf7\x1c\x1d\x96\x91\x90\x92\x94\x1a\x8f\x8a"
+"\x8f\x88\x8f\x1e\x8a\x8e\x05\x93\x86\x83\x90\x83\x1b\x87\x86\x89\x88\x85\x1f\x0e\xf8\xe5\xf7\xdb\x15\x53\x0a\xfc\x50\x21\x1d\xf8"
+"\x32\xfb\x21\x15\xa2\x99\x96\x9e\x3c\x0a\xfc\x50\x29\x1d\x0e\xf8\xaa\xf7\xad\x15\xfc\x3f\xf7\x7d\x05\x8e\x84\x87\x8d\x87\x1b\x82"
+"\x84\x86\x83\x86\x1f\x8a\x88\x05\x88\x87\x8a\x87\x87\x1a\x82\x90\x84\x96\x85\x1e\xf7\xee\xfb\x50\xfb\xee\xfb\x50\x05\x80\x85\x86"
+"\x84\x82\x1a\x88\x8d\x86\x8d\x87\x1e\x8c\x88\x05\x84\x8f\x94\x86\x92\x1b\x91\x90\x8c\x8e\x91\x1f\x0e\xf8\x10\xf7\x88\x15\xcd\xa6"
+"\xb2\xa0\xac\xa5\x08\xb6\xac\xa5\xbd\xbd\x1a\xd9\x51\xba\x2b\x51\x75\x86\x64\x29\x1e\x7f\x86\x7c\x46\x05\x89\x85\x8b\x88\x73\x0a"
+"\x93\xb1\x05\xa3\xc3\xab\x92\xb8\x1b\xd1\xb7\x6a\x57\x4c\x56\x5f\xfb\x25\x54\x1f\x7c\x45\x05\x8a\x87\x8a\x86\x87\x63\x1d\x49\xfb"
+"\x04\x15\x62\x6a\x6e\x67\x70\x9f\x7a\xab\x1f\xa7\x06\xb4\xac\xa8\xaf\xa6\x77\x9c\x6a\x1f\x0e\xf8\x4e\xf7\x22\x15\xb3\x06\xa2\x99"
+"\x96\x9e\x95\x87\x91\x81\x8e\x1f\xc5\xf7\x9f\x05\x8d\x97\x8d\x99\x95\x1a\xd8\x56\xbe\x3a\xfb\x07\xfb\x00\xfb\x02\xfb\x2c\x6a\x1e"
+"\x69\xfb\x33\x05\x85\x71\x88\x71\x71\x1a\x59\x9a\x58\xa4\x6a\x1e\x69\xa4\xb0\x7b\xbd\x1b\xde\xe1\xaf\xae\x96\x82\x94\x7e\x85\x86"
+"\x89\x87\x86\x1f\x73\x6a\x68\x80\x5a\x1b\x69\x70\x95\x9d\x7b\x1f\x75\xa3\x7d\xb9\xb9\x1a\xa2\x8d\xa0\x90\xa1\x1e\xad\xf7\x30\x05"
+"\xf7\x13\xa6\xdd\xe4\xe3\x1b\xc3\xac\x6b\x55\x83\x8a\x82\x89\x83\x1f\x82\x62\x05\xfb\x06\x8a\x2b\x3c\x2c\x1a\x51\xbc\x61\xce\x96"
+"\x96\x8c\x8c\x98\x1e\x96\xbf\x15\x89\x7e\x83\x8a\x7f\x1b\x5d\x6d\xa2\xaf\xc8\xce\xbf\xdb\x8d\x1f\x0e\x29\x0a\x0e\xf7\x15\xbe\x15"
+"\x59\x20\x1d\xf7\xc7\x06\xf4\xf0\xe4\xe8\xbf\x6c\xb1\x4e\xa4\x1f\xd2\xb0\xae\xba\xc7\x1a\xd4\x4f\xbc\xe6\x1d\x6c\x6f\x76\xb3\x0a"
+"\xf8\xdc\xf8\x96\x15\x4e\x0a\xfb\x0c\xe8\x2e\xf7\x0d\xd2\xd4\xa8\xc1\xcb\x1e\xa7\xa3\x93\x95\x98\x95\x0a\x0e\xb4\x1d\x0e\x2d\x1d"
+"\x0e\xf7\x78\xf7\x9e\x15\xf7\x1a\x06\x83\x65\x05\x8a\x87\x8a\x86\x89\x1a\x7f\xf7\x34\x1d\xa7\xf7\x15\x05\x8d\x94\x8b\x8b\x8e\x1a"
+"\x97\xf7\x18\x0a\x87\x1e\x82\x63\x05\xfb\x1a\xd7\x1d\x3f\x0a\x59\x24\x0a\x78\x7d\x25\x1d\xf7\x7e\x23\x1d\xfb\x18\x06\x0e\x45\x1d"
+"\x0e\x86\x0a\x0e\x3b\x1d\x0e\xb9\x1d\x0e\x87\x0a\x0e\x40\x0a\x0e\xf8\x01\xf7\x3a\x15\xf7\x7a\xf7\xec\x28\xfc\x5f\x05\x45\x20\x1d"
+"\xf7\x29\x06\x5c\x0a\x77\x1f\x70\x06\x36\x0a\xa0\x2e\x0a\x25\x06\xfb\x74\xfb\xe2\x3b\xf7\xe2\x05\x23\x20\x1d\x9e\x58\x1d\x9a\x82"
+"\x91\x77\x1f\x47\x06\xee\xf8\x5f\xdf\xfb\xec\x05\x0e\xf8\x8e\x9a\x0a\x9a\x82\x91\xf6\x0a\x31\x0a\x0e\xf7\x6f\xf7\x76\x93\x1d\xf7"
+"\x00\xda\x47\xc3\x2c\x1f\xfb\x84\x64\x0a\xa1\x9a\x97\x9d\x9a\x82\x91\xf7\x00\x1d\xf7\xc3\x7b\x15\xf7\x3d\x94\xf7\x2a\xf7\x40\xf7"
+"\x4f\x1a\xf7\x18\x3a\xe6\xfb\x0a\xfb\x3c\xfb\x32\xfb\x46\xfb\x51\x47\xa5\x48\xb4\x64\x1e\x9e\x78\x9c\x82\xac\x7f\x2e\x52\x18\x7f"
+"\x83\x85\x82\x81\x1a\x7e\x94\x82\x97\x8f\x8e\x8c\x8c\x90\x1e\x97\xb7\xd1\x96\xa9\x1b\xa4\x98\x88\x81\xa4\x1f\x80\xa8\x94\x89\x9c"
+"\x1b\xa6\xad\x96\x9d\xad\x1f\x9f\x96\x91\x93\x98\x1a\x97\x82\x94\x7f\x85\x87\x8a\x87\x85\x1e\x77\x68\x7a\x85\x77\x1b\x7f\x84\x8d"
+"\x93\x75\x1f\x97\x6e\x76\x8f\x6c\x1b\x7c\x82\x8a\x88\x78\x1f\xf7\x2d\xf8\xc8\x15\xe3\xcb\x3e\x23\xfb\x2d\xfb\x17\xfb\x2f\xfb\x15"
+"\x2c\x4b\xd4\xf7\x00\xf7\x32\xf7\x16\xf7\x2a\xf7\x1d\x1f\x0e\x4b\x0a\x0e\x49\x0a\x0e\x5f\x0a\x0e\x2e\x1d\x0e\xf7\x9b\x16\xcb\x06"
+"\xf7\xd4\xf8\x94\x05\xa7\xf7\x1e\x0a\xfb\x2a\x24\x0a\x78\x7c\x93\x85\x9f\x1f\xd0\x06\xfb\xb2\xfc\x5c\x3b\xf8\x5c\x05\xd1\xf7\x1e"
+"\x0a\xfb\x2b\x26\x0a\xa5\x06\x0e\xf7\x08\xf7\x0a\x1d\x9c\x9b\x83\x91\x77\x1f\xfb\x2a\x37\x1d\x25\x1d\xe3\x06\xfb\x27\xfc\x46\x73"
+"\xf7\xfe\x05\x45\x06\xfb\x4c\xfb\xfe\xb5\xf8\x46\x05\xe3\x27\x1d\xfb\x29\x24\x0a\x79\x7c\x25\x1d\x94\x06\x0e\xf8\x1d\xf7\xb3\x15"
+"\xf7\x74\xf7\x75\x05\x98\x06\x5c\x0a\x77\x1f\xfb\x03\x4a\x1d\x9f\x1f\xab\x06\xfb\x4a\xfb\x4b\x23\xf7\x4b\x05\xac\x06\xa2\x6f\x0a"
+"\x79\x7c\xf7\x17\x1d\x79\x7c\x2a\x0a\xf7\x16\x06\x5c\x0a\xf7\x32\x1d\x74\x7d\x39\x1d\xf7\x17\x23\x1d\x7d\x06\x0e\x47\x1d\x0e\xf8"
+"\x89\x16\xb3\xf7\x4b\x05\x8d\x95\x8b\x8b\x8e\x7c\x0a\xcd\x1d\xf8\x51\xf8\xbc\x15\xe8\x06\xa2\x99\x96\x9e\x9a\x82\x91\x77\x1f\xfb"
+"\x22\x06\xfb\x31\xfd\x69\x05\xf7\x25\x2e\x0a\x31\x06\x0e\xf7\xbe\xf9\x18\x15\x9b\x87\x85\x90\x7e\x1b\x7b\x7d\x7d\x7c\x88\x8b\x89"
+"\x8d\x85\x1f\xf7\x48\xfd\x3f\x05\x7c\x8f\x91\x85\x98\x1b\x9a\x9a\x99\x9a\x8e\x8b\x8b\x89\x94\x1f\x0e\xf7\x95\x44\x15\x2e\x24\x0a"
+"\x78\x7c\x94\x85\x9f\x1f\xf7\x22\x06\xf7\x31\xf9\x69\x05\xfb\x25\x06\x75\x7c\x7f\x79\x7c\x93\x85\xa0\x1f\xe5\x06\x0e\xf7\xc0\xf8"
+"\xfc\x15\xfb\x4a\xfb\x73\x05\x83\x82\x89\x86\x84\x1a\x7d\x96\x80\x9a\x94\x91\x8f\x96\x94\x1e\xf7\x22\xf7\x43\xf7\x23\xfb\x43\x05"
+"\x80\x93\x92\x87\x94\x1b\x9a\x96\x96\x99\x92\x89\x8f\x83\x95\x1f\x0e\xf8\xdd\xfb\x08\xd0\x0a\xf8\x9c\xf8\xec\x15\xfb\x25\x06\xeb"
+"\xfb\x80\x05\x79\x93\x94\x83\x99\x1b\xa2\x9e\x9d\xa1\x1f\x92\x07\x0e\x37\x0a\x0e\xf7\xab\xf8\xef\x15\x89\x1d\xfb\x00\xfc\x89\x05"
+"\x59\x20\x1d\xef\x06\x9b\xd6\x05\x4e\xad\xbf\x6d\xd0\x1b\xf7\x23\xf7\x1a\xf7\x18\xf7\x22\xf2\x40\xd3\x21\x46\x48\x6c\x51\x52\x1f"
+"\xf7\x4c\xb1\x15\xd9\xc6\x52\x3f\xfb\x01\x22\x22\xfb\x01\x38\x51\xc2\xda\xf7\x03\xf3\xf1\xf7\x06\x1f\x0e\x46\x1d\x0e\xb4\x0a\x27"
+"\xd7\x41\xd2\x0a\xfb\x2b\xf7\xdf\x15\xdd\xc3\x54\x3a\x20\x22\x23\xfb\x00\x36\x53\xc1\xdc\xf7\x03\xf2\xf0\xf7\x05\x1f\x0e\x30\x1d"
+"\x0e\xf7\xf8\xf8\x04\x15\xf7\x4d\x2e\x0a\xfb\x4a\x06\x96\xc1\x05\xba\x95\xbe\xab\xcb\x1b\xaf\xaa\x88\x83\xc1\x1f\x8a\x93\x8e\x8b"
+"\x8e\x1b\x9c\x99\x98\x9c\x95\x85\x92\x7f\x8e\x1f\x91\x6c\x47\x92\x64\x1b\x2e\x3e\x56\x40\x7b\x1f\x7f\x53\x05\x37\x26\x0a\xdc\x25"
+"\x0a\x2d\x26\x0a\xf7\xd0\x23\x1d\xfb\x3f\x06\x0e\xe9\x1d\x82\x4f\x44\x51\x4c\xa1\x0a\x0e\xa8\x1d\x0e\x3c\x1d\xf7\x0e\xf8\xcf\x77"
+"\x0a\xf8\x7f\x9e\x0a\xac\x1d\x0e\x41\x0a\x0e\xf7\x64\xf8\x37\x15\x3a\x4f\x1d\x9e\x1f\xa7\x25\x0a\x6d\x21\x1d\xf7\x00\x2a\x1d\x70"
+"\x06\xc2\xf7\x92\x05\xc1\xbb\xaf\xa2\xad\x1b\xa4\x9f\x74\x6e\x87\x8a\x86\x8a\x86\x1f\x47\xfb\xd0\x05\xdb\x06\xa2\x99\x97\x9d\x99"
+"\x83\x92\x77\x1f\x70\x06\xc2\xf7\x92\x05\xc2\xbb\xad\xa1\xae\x1b\x98\x95\x88\x84\x91\x1f\x97\x7f\x92\x7b\x8a\x7e\x08\x89\x8a\x87"
+"\x8a\x85\x1e\x46\xfb\xd3\x05\xdb\x06\xa1\x9a\x97\x9d\x99\x83\x92\x77\x1f\x70\x06\xc5\xf7\xa1\x05\x8d\x93\x8c\x95\x91\x1a\xbf\x66"
+"\xb0\x56\x62\x66\x78\x5e\x5c\x1e\xb6\x7c\x70\xa0\x60\x1b\x64\x6a\x7b\x66\x65\x1f\x0e\x4a\x0a\x0e\x38\x0a\x0e\xf7\x84\xf8\x37\x15"
+"\x25\x26\x0a\xba\x06\xfb\x00\xfc\x87\xaa\x0a\x43\xce\xfb\x03\x41\x56\x74\x4f\x4b\xe9\x0a\xd7\xf0\xf1\xe8\xf7\x03\x1f\x0e\xf8\xa7"
+"\xf7\xf1\x15\xc5\x68\x5b\xa5\x42\x1b\x3d\x47\x6e\x52\x53\x1f\x5d\x5c\x70\x4c\x52\x1a\x26\xd5\x46\xf7\x02\xd4\xc6\xa4\xc4\xc6\x1e"
+"\x5a\xfb\x73\x05\x2e\x06\x74\x7c\x39\x1d\xf7\x55\x06\xa2\x99\x97\x9d\x9a\x82\x91\x78\x1f\x5b\x06\xf7\x01\xf8\x87\x05\xbd\x2e\x0a"
+"\x28\x06\xfb\x48\x66\x15\xdf\xc4\x57\x3f\x28\x24\x2d\xfb\x00\x35\x52\xbe\xd7\xf1\xf1\xe7\xf7\x03\x1f\x0e\x53\x1d\x0e\xf4\x85\x1d"
+"\xf7\x16\xf0\xd0\xe4\xa4\x7d\xa7\x76\x9b\x1f\x76\x1d\x3f\x53\x6b\x0a\x81\x94\x7f\x7a\x81\x81\x76\x86\x1e\x0e\x5e\x0a\x0e\xf8\x45"
+"\x16\xdd\x06\xa1\xb6\x1d\xca\xa3\xbc\xcb\x1f\x0e\xf7\xe7\x16\xf7\x8a\xf8\x04\x05\xb1\x27\x1d\xfb\x2c\x20\x1d\xc6\x06\xfb\x68\xfb"
+"\xd1\x05\x7f\x06\x3f\xf7\xd1\x05\xc6\x27\x1d\xfb\x2c\x26\x0a\xaf\x06\xe4\xfc\x04\x05\x0e\x4d\x0a\x0e\xf8\x13\xf7\x6e\x15\x99\x0a"
+"\x79\x7c\x25\x1d\xf7\x19\x23\x1d\x57\x06\xf7\x40\xf7\x19\xf7\x04\xfb\x19\x05\x56\xd4\x0a\x84\x06\x0e\x52\x1d\x0e\xb8\x0a\xfc\x00"
+"\xfb\xd8\x81\x5f\x05\xf8\x15\x06\xa1\xee\x05\x8d\x94\x8b\x8b\x8e\x1a\x97\xd7\x0a\x0e\xf8\x46\xf8\x81\x15\x92\xab\xa4\xa2\xab\x8f"
+"\x08\xa4\x8e\x96\x94\x9d\x1a\x98\x82\x93\x7b\x51\x54\x5c\x4e\x7e\x1e\x66\xfb\x3d\x83\x69\x70\x73\x69\x8a\x19\x75\x89\x7f\x80\x79"
+"\x1a\x7d\x92\x85\x9d\x89\x1e\xa7\x89\x9a\x7c\x71\x1a\x87\x8a\x86\x8a\x86\x1e\x67\xfb\x3d\x05\x89\x83\x8a\x83\x82\x1a\x5a\xae\x67"
+"\xbb\x9f\x9a\x97\x9c\x9a\x85\x8f\x76\x8e\x1e\x74\x8d\x7d\x9b\x8a\xa3\x08\x90\x8b\x90\x8c\x90\x1e\xb0\xf7\x3d\x05\x8d\x96\x8c\x94"
+"\x96\x1a\xa0\x84\x9b\x79\x9c\x1e\xac\x9f\x9c\xa4\x93\xb1\x08\x0e\xf7\xda\xf9\xcd\x15\x58\xfe\xc7\xbe\x06\x0e\xf7\xa2\x7f\x15\x84"
+"\x6b\x72\x74\x6a\x87\x08\x73\x88\x80\x82\x79\x1a\x7e\x94\x83\x9b\xc5\xc2\xba\xc8\x98\x1e\xb0\xf7\x3d\x92\xad\xa7\xa3\xad\x8d\x19"
+"\xa1\x8c\x97\x96\x9d\x1a\x99\x84\x91\x78\x8d\x1e\x6f\x8d\x7a\x9c\x8d\xa3\x08\x8f\x8c\x8f\x8c\x91\x1e\xb0\xf7\x3d\x05\x8d\x94\x8c"
+"\x94\x93\x1a\xbb\x68\xaf\x5b\x77\x7c\x7f\x7a\x7c\x91\x87\xa0\x88\x1e\xa2\x89\x9a\x7a\x74\x1a\x85\x8b\x87\x8a\x86\x1e\x66\xfb\x3d"
+"\x05\x88\x80\x8a\x80\x82\x1a\x76\x92\x7c\x9e\x79\x1e\x6a\x77\x7a\x72\x82\x65\x08\x0e\xf8\x7d\xf7\xe2\xf7\x38\x1d\x89\x8c\xb3\x57"
+"\x1f\xb7\x53\x7c\xf7\x0c\x0a\x7d\x72\x0a\xc1\xb7\x94\x7b\x0a\x56\xcb\xa1\x7f\xac\x1b\xac\xa9\x9d\xb5\xaf\x1f\x9e\xa0\x92\x97\x9d"
+"\x1d\x0e\xf7\x72\xfb\x2b\x15\x88\x7f\x89\x81\x85\x1a\x78\x9b\x7d\xa0\xab\x9d\x9e\xb3\x91\x1e\xbe\xf7\xd4\x05\x8c\x91\x8c\x90\x8d"
+"\x1a\x96\x82\x94\x7f\x7b\x81\x82\x75\x85\x1e\xcb\xf7\x22\x15\xb1\xac\xa9\xad\xa5\x77\x9d\x6d\x1f\x7f\x06\x65\x6a\x6d\x69\x71\xa0"
+"\x79\xa8\x1f\x0e\xf8\x11\xf8\x84\x15\x51\x7e\x69\x7c\x67\x6d\x08\x57\x60\x6c\x4c\x50\x1a\x3d\xc0\x4f\xd9\x81\x1e\x74\x22\x05\x89"
+"\x82\x8b\x8b\x87\x1a\x80\x95\x82\x97\x9c\x28\x1d\xa2\xf5\xb1\x8e\xb8\x98\xb4\x9f\x19\xa7\x99\x97\x97\x9a\x1a\x97\x83\x93\x7e\x84"
+"\x87\x8a\x83\x80\x1e\x71\x64\x5c\x7d\x5d\x1b\x43\x5c\xb6\xcc\xe7\xe0\xd8\xf0\xa9\xa4\x85\x7e\x9c\x1f\x96\x83\x96\x7b\x82\x1a\x8a"
+"\x75\x05\x82\x95\x82\x96\x9c\x28\x1d\x98\xc7\x8c\x94\x05\x98\x8c\x82\x94\x7d\x1b\x81\x83\x87\x82\x84\x1f\x78\x9c\x66\x99\x6a\x8c"
+"\xa1\xec\x18\x8d\x94\xf7\x0a\x0a\x86\x1e\x0e\xf7\x61\xbe\x15\xbe\xbe\xb1\xe4\x8f\xd7\x08\xdf\x57\x0a\x2d\x06\x93\x8b\x8b\x8a\x99"
+"\x1e\x88\xac\x8b\x8f\x9b\x1a\xb4\x94\xa5\xa4\xa5\x1e\xa4\xa3\xab\x9a\xaa\x1b\xac\xa2\x7d\x6c\x9e\x1f\x80\x91\x91\x87\x92\x1b\x9b"
+"\x9a\x99\x99\x96\x82\x9c\x7c\x9a\x1f\xa6\x73\x6c\x98\x64\x1b\x5e\x5f\x78\x67\x67\x1f\x65\x66\x7a\x61\x55\x1a\x78\x8c\x7a\x8e\x68"
+"\x1e\x33\x26\x0a\xed\x06\x84\x26\x46\xfb\x06\x55\x89\x08\x79\x7d\x7f\x7b\x7c\x25\x1d\xf7\xd8\x06\xa9\xa9\x9a\xa6\xa1\x1f\x9b\x9e"
+"\x97\xa6\x9a\x1a\x96\x82\x94\x7e\x7c\x82\x83\x79\x85\x1e\x6e\x81\x78\x7a\x74\x1b\x0e\xab\x0a\xf8\x0c\xf7\x7d\x15\xf7\x13\x06\x9f"
+"\x96\x95\xa0\x96\x83\x90\x7c\x1f\x21\x06\xf7\x63\xf7\x7c\x05\xa0\x06\xa2\x6f\x0a\x79\x7c\x2a\x0a\xa6\x06\xfb\x4e\xfb\x64\x2b\xf7"
+"\x64\x05\xaa\x06\xa1\x6f\x0a\x78\x7d\x25\x1d\xa0\x06\xf5\xfb\x7c\x05\xfb\x00\x06\x77\x80\x81\x77\x7f\x93\x86\x9b\x1f\xf7\x0f\x06"
+"\x81\x5b\x05\xfb\x12\x06\x76\x80\x81\x77\x80\x93\x85\x9b\x1f\xf7\x10\x06\x78\x34\x05\x39\x21\x1d\xf7\x6a\x30\x0a\x3c\x06\x9e\xe2"
+"\x05\xf7\x12\x06\xa0\x96\x96\x9f\x95\x83\x91\x7b\x1f\xfb\x10\x06\x0e\xf8\x2c\xf8\x0e\x15\x9c\xd9\x05\xcc\x99\xc1\xb7\xcd\x1b\x9b"
+"\x99\x89\x85\x9b\x1f\x89\x93\x8f\x8a\x8e\x1b\x9a\x99\x99\x9b\x93\x87\x91\x82\x8f\x1f\x94\x78\x6f\x90\x71\x1b\x34\x37\x46\x33\x78"
+"\x1f\x7a\x3a\x05\x2f\x20\x1d\xe5\x06\x53\xfb\x96\x05\x4b\x7d\x57\x5e\x4f\x1b\x80\x7b\x8d\x8d\x84\x1f\x93\x73\x89\x8b\x85\x1b\x7d"
+"\x7d\x7d\x7c\x78\xb0\x7c\xbb\xe0\xdc\xce\xe0\x9e\x1f\xc5\xf7\x9e\x05\xe7\x06\xa2\x99\x97\x9d\x35\x1d\x0e\xf9\x0a\xf8\xef\x15\xfb"
+"\x6e\x06\x39\x3c\x47\x44\x84\x8c\x87\x8d\x81\x1f\x67\x85\x78\x85\x76\x7c\x08\x70\x79\x7a\x6f\x71\x1a\x5e\xae\x62\xdb\x59\x1e\xc4"
+"\x67\x05\xd4\x5e\xaa\x6c\x70\x1a\x61\x5a\x65\x54\x1e\xfb\x33\x06\x98\xca\x05\x8c\x8f\x8c\x90\x8d\x1a\x96\x82\x93\x7e\x7b\x80\x81"
+"\x79\x87\x1e\x72\xfb\x07\x05\xf7\x6a\x06\xe4\xd7\xcb\xd7\x92\x8a\x90\x89\x94\x1f\xb2\x90\x9f\x92\xa1\x9d\x08\xa5\x9f\x98\xa4\xa7"
+"\x1a\xb8\x6c\xaf\x3f\xba\x1e\x59\xa9\x05\x2f\xc3\x6f\xa5\xa7\x1a\xb4\xbe\xb4\xbf\x1e\xf7\x35\x06\x7e\x4d\x05\x8a\x88\x8b\x88\x87"
+"\x1a\x80\x95\x82\x97\x9a\x97\x95\x9d\x8f\x1e\xfb\x38\xfb\x5f\x15\xbd\x6c\xac\x67\x71\x1a\x72\x6c\x7a\x5c\x89\x1e\x81\x06\x89\x8a"
+"\x8b\x8a\x87\x1f\x7c\x9c\x72\x9e\x5b\xa8\x55\xae\x18\x48\xb4\x6a\xad\xa4\x1a\xa5\xae\x9f\xb8\x1e\x92\x06\x8e\x8c\x8b\x8c\x90\x1f"
+"\xa2\x72\x9e\x7d\xc6\x67\x08\x0e\xf7\x7d\xf7\x31\x15\x73\xaa\xa4\x82\xb0\x1b\xb2\xa8\x94\xa3\xb4\x1f\xb3\x58\x05\x81\x93\x90\x88"
+"\x93\x1b\x9a\x9b\x99\x9a\x8d\x85\x99\x89\x8e\x1f\x63\xbe\x05\xb4\xb8\x9d\xb4\xbc\x1a\xa1\x88\x98\x7e\xa7\x1e\xcb\xbf\x05\x99\x96"
+"\x8e\x90\x96\x28\x0a\x83\x85\x88\x82\x80\x1e\x4c\x58\x05\xa2\x6d\x70\x95\x64\x1b\x66\x6c\x82\x73\x63\x1f\x63\xbd\x05\x96\x82\x87"
+"\x8d\x83\x1b\x7b\x7c\x7d\x7c\x85\x8d\x86\x91\x84\x1f\xb4\x58\x05\x65\x61\x77\x5e\x5c\x1a\x76\x8f\x7d\x97\x6e\x1e\x4a\x56\x05\x7e"
+"\x81\x87\x84\x81\x1a\x7f\x94\x82\x98\x93\x8f\x8d\x95\x98\x1e\xf7\x70\xf7\xc4\x15\xc3\xb2\x65\x55\x43\x43\x45\x41\x51\x64\xb0\xc2"
+"\xd4\xd3\xd0\xd7\x1f\x0e\xf7\xfc\xf8\xef\x15\x76\xf7\x14\x1d\xf7\xf9\xf8\xec\x15\xfb\x21\x06\xe7\xfb\x80\x05\x79\x92\x94\x83\x9a"
+"\x1b\xa2\x9e\x9d\xa1\x1f\x92\x07\xf7\x4c\xf7\x6b\x15\xfb\x21\x06\xe7\xfb\x80\x05\x79\x92\x94\x83\x99\x1b\xa3\x9e\x9d\xa1\x1f\x92"
+"\x07\x0e\xf7\x1e\x1d\x90\x89\x8f\x86\x94\x1f\x22\xf7\x3e\x1d\x97\x82\x94\x7e\x84\x83\x88\x82\x80\x1e\x72\xfb\x59\x15\xf7\x3d\xfb"
+"\x59\x05\x82\x93\x92\x87\x93\x1b\x9b\x99\x99\x9b\x90\x8a\x8e\x84\x95\x1f\x23\xf7\x35\xf7\x43\xf7\x36\x05\x99\x97\x8e\x90\x95\x1a"
+"\x98\x82\x93\x7e\x83\x84\x87\x83\x80\x1e\x0e\xf7\x1e\x1d\x91\x8a\x8d\x84\x95\x1f\x23\xf7\x3e\x1d\x98\x82\x93\x7e\x84\x82\x87\x83"
+"\x81\x1e\x0e\xf8\xe5\xd2\x1d\x0e\xf7\x8a\xf8\x04\x15\xce\x27\x1d\x4a\x06\x96\xf7\x20\x1d\x8f\x1b\x9a\x98\x99\x9a\x94\x86\x92\x81"
+"\x90\x1f\x93\x78\x69\x92\x77\x1b\x4c\x4d\x52\x42\x7c\x1f\x7f\x55\x05\x42\x37\x1d\xd6\x1d\x53\x0a\x4a\x06\xf8\x26\xf8\x04\x15\x22"
+"\x26\x0a\xbd\x25\x0a\x42\x26\x0a\xf7\x55\x30\x0a\x47\x06\xf7\x0f\xf8\xcf\xf7\x53\x1d\xf7\x89\xf8\x04\x15\xcf\x2e\x0a\x4a\x06\x97"
+"\xf7\x20\x1d\x8e\x1b\x9b\x98\x90\x1d\x68\x92\x78\xf7\x31\x1d\x79\x7c\xd6\x1d\xa1\x34\x1d\x4b\x06\xf8\x4d\xf8\xbc\x15\x22\x24\x0a"
+"\x78\x7c\x93\x85\xa0\x1f\xbd\x06\xfb\x01\xfc\x89\x05\x43\x21\x1d\xf7\x57\x79\x0a\x44\x06\x0e\xf8\xc0\xf7\x94\x15\xa2\x9a\x97\xf7"
+"\x4c\x1d\x78\x7d\x25\x1d\x0e\xf7\x14\x0a\x9e\x99\xf7\x2f\x1d\x8e\x1a\x97\xc2\x0a\x35\xfc\x21\x05\x8a\x86\x8a\x87\x73\x0a\x0e\xf7"
+"\x14\x0a\x9d\x9a\xf7\x2f\x1d\x8f\x1a\x96\xc2\x0a\x7e\x51\x05\xfb\x10\x21\x1d\xf7\x0e\x06\x4c\xfb\xb4\xf7\x02\x0a\xca\xf7\xb6\x05"
+"\xf7\x10\x06\xa2\x9a\x96\x9d\x9b\x82\x91\x77\x1f\xfb\x0e\x06\x0e\x68\x0a\xf8\xc6\xf8\xbc\x15\xc3\x06\xa0\x9a\x97\x9d\x99\x82\x92"
+"\x79\x1f\xfb\x5c\x06\xfb\x1d\x89\x28\x50\x77\x30\x81\x5d\x18\x89\x83\x8a\x83\x85\x1a\x5f\xa6\x66\xba\x74\x1e\xa7\x7e\xa6\x84\xb9"
+"\x88\x52\xfb\x9e\x18\x2e\x06\x75\x7d\x7f\x79\x7e\x95\x83\x9c\x1f\xf7\x1a\x06\xa0\x9a\x97\x9d\x95\x85\x92\x81\x8e\x1f\xf7\x0e\xf8"
+"\xc7\x05\xc8\x06\xfb\x0e\xfc\xc6\x05\x7b\x88\x80\x7f\x7c\x1a\x7e\x94\x83\x9d\x1e\xed\x06\xa0\x9a\x97\x9d\x99\x82\x92\x79\x1f\x53"
+"\x06\x0e\xf7\xbc\xf8\x59\x15\x38\x49\x49\x37\x38\xcd\x48\xdd\xdc\xcd\xce\xde\xdd\x49\xcf\x3b\x1f\x0e\xe7\x1d\xf7\x54\xf7\x2d\xf7"
+"\x3f\x1d\x97\x80\x9d\xf7\x05\x1d\x97\x80\x9d\x9a\x96\x91\x9c\x98\x1e\xf7\x57\xf7\x87\x05\x0e\xf7\xb5\xf8\xef\xf7\x3f\x1d\x98\x80"
+"\x9c\xf7\x05\x1d\x98\x80\x9c\x9a\x96\x92\x9b\x98\x1e\xf7\x57\xf7\x87\x05\x0e\xf7\xff\xd2\x1d\xf8\x77\xf7\x59\xf7\x22\x1d\x88\x91"
+"\x81\x1f\xf3\xfb\x35\xfb\x42\xfb\x35\x05\x7d\x7e\x88\x86\x81\x1a\x7f\x94\x82\x98\x93\x92\x8e\x94\x96\x1e\x0e\xf7\x0a\xe8\xdf\x0a"
+"\xf7\x5b\x16\xe4\x0a\xf7\x5c\xf7\x1a\x1d\xf7\xa6\xf8\xf9\xf7\x51\x1d\xcd\xd1\xcb\x0a\xf7\xcc\xfb\x52\x15\x99\x8f\x92\x93\x95\x1a"
+"\x94\x85\x92\x83\x87\x87\x8a\x8a\x87\x1e\xfc\x24\xfb\x0c\x05\x7d\x87\x83\x82\x81\x1a\x82\x92\x84\x93\x8d\x8f\x8c\x8d\x91\x1e\xbb"
+"\x5c\xb1\x0a\xf7\xab\xb2\xb1\x0a\x0e\xf7\xc7\xf7\x35\x15\x49\x6f\x64\x76\x69\x72\x08\x61\x6a\x71\x58\x59\x1a\x3d\xc5\x5c\xeb\xbf"
+"\xae\x93\xa7\xd0\x1e\x9a\x91\x8c\x8b\x9d\x92\x9a\xd1\x18\x8d\x93\x8b\x8b\xf7\x5c\x1d\x86\x1e\x83\x65\x05\x72\x53\x6c\x84\x5e\x1b"
+"\x45\x5f\xac\xbf\xcb\xc1\xb7\xf7\x24\xc2\x1f\x9a\xd0\xf1\x0a\x77\x87\x1e\xcd\xf7\x04\x15\xb4\xac\xa7\xaf\xa6\x77\x9c\x6a\x1f\x6f"
+"\x06\x63\x6a\x6f\x67\x6f\x9f\x7b\xab\x1f\x0e\xf7\xe0\xde\x1d\xf8\xc8\xf8\xe0\x3d\x1d\xf8\x49\xf9\x12\xd5\x1d\xf8\xc7\xf8\xed\xbf"
+"\x1d\x96\x1a\x96\x81\x94\x7f\x1e\x0e\xf8\xa9\xf8\xa1\x2c\x1d\xf7\xde\xf8\xf0\x32\x0a\xf8\x43\xf8\xf5\x59\x1d\xf7\xd4\xad\x0a\xf8"
+"\x4d\xf9\x26\x5c\x1d\x7a\x74\x95\x1d\x0e\xf7\xa2\x96\x15\x78\x31\x05\x42\x0a\x68\x8e\x1f\x95\xb9\x05\x0e\xf8\x39\xf8\xda\x74\x1d"
+"\xf8\x40\x96\x15\x43\x06\x45\x6d\x6a\x67\x5d\x65\x0a\xa6\xa5\xa7\xb9\xa2\x1f\x0e\xf8\x28\xf8\x73\x61\x0a\xf3\x1d\x82\x0a\x0e\xf8"
+"\x31\xf7\xa8\x15\xd1\x06\x9f\x98\x96\x9b\x99\x83\x91\x7a\x1f\x78\x06\xae\xf7\x36\x05\x8c\x91\x8c\x92\x8f\x1a\xb5\x67\xa8\x55\x71"
+"\x53\x7f\x80\x74\x1e\x7e\x85\x85\x82\x7f\x1a\x81\x93\x82\x96\x90\x8d\x8b\x8f\x95\x1e\x96\xa9\xaa\x92\x9c\x1b\xaa\x9f\x7f\x78\x88"
+"\x8b\x89\x8a\x88\x1f\x83\x64\x05\x92\x70\x7a\x8d\x74\x1b\x32\x43\x57\x4c\x60\xad\x71\xc2\xb1\xa7\x91\x9d\xb3\x1f\x97\xc2\x15\x74"
+"\x63\x6b\x82\x64\x1b\x6e\x78\x96\x9b\xae\xbd\xa9\xc4\xa1\x9b\x89\x84\xa4\x1f\x0e\xf7\xea\x22\x1d\xe7\x4b\x1d\xfb\x7e\x21\x1d\xe5"
+"\x06\x5c\xfb\x6c\xfb\x20\x44\x05\x7a\x82\x85\x84\x7e\x1a\x7f\x94\x81\x96\x91\x8f\x8d\x90\x96\x1e\xf7\x01\xc3\x63\xfb\x4e\x05\x2f"
+"\x21\x1d\xf8\x5d\x06\xb7\xf7\x5f\x05\x8d\x94\xf7\x48\x1d\x87\x1e\x69\xfb\x2e\x05\xfb\x9b\x06\xb8\xf7\x65\xf7\x40\xe3\x05\x9e\x95"
+"\x90\x91\x98\x1a\x97\x82\x94\x80\x85\x82\x88\x88\x84\x1e\xfb\x21\x42\x05\x0e\xa7\x1d\x0e\xf8\x25\xf7\x9e\x15\xce\x06\x86\x76\x8a"
+"\x7e\x05\x80\x95\x82\x97\x9b\x28\x1d\x9f\xea\x05\x8d\x91\x8b\x8d\xf7\x5c\x1d\x87\x1e\x86\x74\x05\x48\x34\x0a\xf7\x48\x06\x74\x22"
+"\xf7\x02\x0a\xad\xf7\x32\x05\xfb\xd5\x06\xfb\x42\xfb\x25\xfb\x37\xfb\x59\x4f\xa2\x51\xb0\x68\x1f\x6a\xad\xbe\x7a\xc9\x1b\xf7\xdf"
+"\x06\xa8\xf7\x1b\x05\x8c\x8c\x8b\x92\x8e\x1a\x97\xea\x0a\xbb\xf8\x61\x15\x3f\x0a\x6f\x06\x5d\x65\x95\x9e\x72\x1f\x69\xa6\x76\xbc"
+"\xc2\x1a\xcd\xa1\xd3\xb0\xc0\x1e\xd5\xbf\xce\xaf\xe4\x1b\x0e\xf8\x3c\xf8\xd4\x15\x2a\x31\x35\x2e\x47\xbf\x58\xd2\xec\xe6\xe1\xe7"
+"\xd1\x58\xbd\x42\x1f\x83\x5c\x15\xbd\xad\x6a\x5c\x4c\x4b\x4e\x4a\x58\x68\xac\xba\xcb\xca\xc7\xcf\x1f\x0e\x81\x0a\x0e\x3c\x1d\x0e"
+"\xf8\x5a\xf8\xef\x15\xfb\x38\x24\x0a\x79\x7b\x93\x85\x9f\x1f\xf7\x02\x06\x5b\xfb\x73\xfb\x0a\x50\x05\x79\x82\x85\x84\x7e\x1a\x7f"
+"\x94\x82\x97\x91\x8f\x8c\x90\x96\x1e\xe2\xb7\x5c\xfb\x6f\x05\xfb\x2f\x29\x1d\xf7\xfd\x06\xa1\x9a\x38\x1d\xfb\x2f\x06\xbf\xf7\x86"
+"\xf7\x0b\xc6\x05\x9d\x94\x91\x92\x99\x1a\x97\x82\x94\x7f\x85\x88\x8a\x85\x7f\x1e\x33\x5f\x05\x0e\xc3\x1d\x7e\x81\x88\xcb\x1d\x0e"
+"\xf9\x04\xf7\x57\x15\x94\xb7\x8e\xa1\xf7\x3b\x1d\x53\x55\x67\x49\x61\x1f\xc9\x7b\x5f\xb3\x57\x1b\x20\x21\xfb\x23\xfb\x23\x2d\xbd"
+"\x46\xcf\xc2\xc3\xb2\xd0\xb8\x1f\x48\x9c\xba\x62\xc5\x1b\xae\xb6\x9d\xaf\xbc\x1f\xa3\x9d\x91\x92\xe8\x0a\x6f\x1b\x58\x67\xc0\xd7"
+"\x93\x8c\x94\x8c\x99\x1f\x97\xbe\x15\xe4\xab\xb9\xba\xc2\x1b\xba\xa4\x6a\x4d\x7d\x8b\x82\x89\x79\x1f\xfb\xe0\xf7\x1c\x15\xb7\x88"
+"\xaa\x5c\x49\x1a\x5a\x7c\x56\x70\x5f\x1e\x6e\x5b\x5e\x68\x69\x89\x08\x60\x89\x68\xbe\xce\x1a\xbe\x9a\xbf\xa6\xb7\x1e\xa9\xbc\xbc"
+"\xb0\xab\x89\x08\x0e\xf7\x50\xf7\xd9\x15\x50\xfb\xa6\x4d\x1d\xf0\x06\xf0\xf8\x6b\x05\xb8\x95\xbe\xaf\xc1\x1b\xba\xac\x6c\x5e\x6c"
+"\x7c\x71\x6d\x78\x1f\x7d\x75\x73\x83\x76\x1b\x86\x06\x79\x7c\x7e\x7b\x7c\x93\x85\xa0\x1f\x90\x06\xd7\xcc\x51\x48\x36\x4f\x38\x4e"
+"\x6d\x7c\x9c\xad\x91\x8b\x90\x8c\x91\x1f\x8c\x8f\x8b\x8e\x8e\x1a\x96\x81\x93\x7f\x76\x7f\x79\x6c\x4c\xab\x67\xc4\xc0\xbc\xa9\xc4"
+"\xb1\x1e\xa5\xb3\x9c\xc0\xb6\x1a\xce\x68\xc0\x48\xaa\x1e\xbe\xab\xa4\xb5\xbe\x1a\xd2\x59\xbc\x41\x3b\x3c\x51\x43\x7c\x1e\x75\x2a"
+"\x05\x5b\x29\x1d\x0e\xf8\x58\xf8\xf8\x15\xfb\x05\x6a\x7c\x87\x85\x87\x08\x85\x87\x86\x83\x84\x1a\x81\x92\x84\x94\x8f\x8e\x8b\x8c"
+"\x8e\x1e\xcc\x9f\x54\xfb\x97\x05\x51\x06\x70\x7f\x84\x7a\x80\x92\x85\x98\x1f\xf7\x47\x06\x99\xf7\x5f\x1d\x0e\xf8\x76\xf8\x19\x15"
+"\xfb\x55\x07\x77\x94\x80\x9c\x9c\x94\x96\x9f\x1e\xf7\x88\xfc\x46\x07\x75\x80\x82\x7b\x7a\x96\x82\xa1\x1f\x0e\xf7\x3f\x95\x15\x77"
+"\xa7\xa0\x85\xb2\x1b\xc9\xc7\xa2\xb7\xc0\x1f\x58\xdc\x07\xa0\x96\x94\x9b\x9b\x80\x94\x76\x1f\x6e\xf8\x05\xfb\x0d\x06\x74\x81\x83"
+"\x7a\x7b\x97\x82\xa0\x1f\xd0\xfb\x8d\x06\x51\x55\x51\x6f\x49\x1b\x58\x69\xad\xbd\x1f\xf7\xc1\x26\x07\x75\x81\x83\x7a\x7b\x96\x82"
+"\xa0\x1f\xbc\xfc\xa9\x06\x76\x94\x80\x9c\x9c\x94\x96\xa0\x1e\x0e\xf7\x97\xf8\x9c\x15\xc7\x06\x7d\x49\x05\x8a\x89\x8b\x89\x89\x1a"
+"\x80\x93\x83\x96\x98\x95\x94\x9a\x8e\x1e\xa3\xf7\x02\x05\xfb\x91\x06\x74\xfb\x00\x05\x8a\x88\x8b\x89\x88\x1a\x80\x8c\x92\x84\x95"
+"\x1b\x98\x95\x94\x9a\x8e\x1f\x9a\xce\x05\xc7\x06\x57\xfb\x83\x05\x5a\x8f\x1d\xf7\x20\x06\x9b\x98\x96\x99\x97\x83\x91\x7d\x1f\x5c"
+"\x06\xf7\xd1\xbb\x15\xf6\xf7\x34\x5e\xfb\x64\x05\x6b\x8f\x1d\xdf\x06\x9b\x98\x94\x1d\x83\x06\xbf\xf7\x83\x05\x90\x06\x9c\x97\x94"
+"\x1d\x4d\x06\xfb\x07\xfb\x41\x61\xf7\x41\x05\x4c\x8f\x1d\x8e\x06\x57\xfb\x83\x05\x81\x06\x7b\x7f\x80\x7d\x80\x93\x84\x98\x1f\xdf"
+"\x06\x9b\x98\x94\x1d\x6d\x06\xb8\xf7\x66\xb3\xfb\x36\x05\x0e\x84\x0a\xf8\xe0\xf8\x6d\x15\x96\x95\x8e\x90\x93\x1a\x96\x83\x92\x3b"
+"\x0a\x81\x81\x87\x85\x83\x1a\x81\x93\x83\x96\x93\x8d\x8c\x97\x98\x1e\xf7\x1b\xc9\x1d\xf7\x4e\xfb\x94\x15\xf7\x64\xf7\x32\x9d\x9e"
+"\xbf\x1a\xbb\x64\xb0\x59\x61\x62\x77\x68\x6e\x1e\x7f\x7c\x83\x7d\x82\x1a\x82\x92\x84\x95\x95\x92\x90\x97\x91\x1e\xa9\x9b\xac\xa0"
+"\xad\x1b\xab\xa3\x75\x6e\x76\x7d\x77\x68\x6f\x1f\x52\x5c\x48\x56\x51\x61\x85\x86\x18\x81\x5c\x05\xf7\x7f\x06\x94\xb4\x05\x8c\x8e"
+"\x8b\x8e\x8c\x1a\x94\x84\x92\x81\x7f\x81\x82\x7e\x88\x1e\x8a\x07\x0e\xf8\x19\xf7\xbb\x15\xf7\x44\xf7\x1d\x0a\xfb\x42\x06\xab\xf7"
+"\x2b\x05\x8c\x8f\x8c\x90\x8e\x28\x0a\x7b\x80\x80\x77\x87\x1e\x6a\xfb\x2d\x05\xfb\x44\x8e\x1d\xf7\x42\x06\x6a\xfb\x2c\x05\x89\x82"
+"\x8b\x8a\x88\xf7\x1b\x0a\x95\xa0\x8f\x1e\xfb\x8b\x30\x15\x74\x7d\x80\x79\x7d\x94\x84\x9f\x1f\xf8\x25\xf7\x1d\x0a\x0e\xf7\x5a\xf7"
+"\x14\x93\x1d\xf6\xda\x47\xc3\x2c\x1f\xfb\x1f\x06\x96\xbb\x05\xf7\x1a\x23\x1d\xfb\x7e\x64\x0a\x53\x0a\xfb\x18\x06\xa7\xf7\x14\x15"
+"\xbd\xf7\x7e\x05\xf7\x25\x06\xcd\xbc\x64\x55\x41\x34\x48\x2b\x1f\x0e\xf7\xaa\xf8\xf8\x15\xfb\x00\x6c\x76\x85\x85\x87\x08\x85\x87"
+"\x86\x83\x84\x1a\x82\x93\x83\x94\x8f\x8d\x8b\x8c\x8f\x1e\xcc\x9f\x54\xfb\x97\x05\x8c\x75\x75\x8b\x7c\x1b\x73\x7d\x82\x7b\x80\x93"
+"\x85\x97\x1f\xf7\x46\x06\x9b\x97\x96\x98\x96\x84\x91\x7e\x1f\x47\x06\xf8\x3a\xf7\x44\x15\x96\x94\x8e\x91\x93\x1a\x95\x83\x93\x3b"
+"\x0a\x81\x81\x87\x85\x83\x1a\x81\x93\x83\x96\x93\x8d\x8d\x96\x98\x1e\xf7\xe0\xa8\x15\x80\x58\x05\x77\x06\x6d\x80\x85\x79\x80\x92"
+"\x85\x98\x1f\xe1\x06\x9a\x97\x96\x98\x96\x84\x91\x7e\x1f\x81\x06\x96\xbe\x05\xa7\x96\x92\x9c\x96\x83\x91\x7f\x1f\x81\x06\xb9\xf7"
+"\x6a\x05\x4d\x06\xfb\x43\xfb\x6d\x82\x65\x05\xf7\x32\xb4\x15\x26\x06\xf7\x1d\xf7\x3c\x05\x0e\xf8\xc1\xf7\x95\x15\xa2\x99\x96\xf7"
+"\x4c\x1d\x79\x7d\x2a\x0a\xf7\x3f\xfb\x11\x15\x69\x6b\x6c\x6a\x73\x9e\x78\xa5\xae\xab\xa9\xac\xa5\x78\x9d\x70\x1f\xe5\xf8\x2c\x15"
+"\x68\xf4\x0a\x71\x1f\x0e\xf7\xda\xf8\xcf\x15\xa0\x82\x96\x7a\x7b\x82\x80\x76\x1e\xfb\x9a\x07\x77\x94\x80\x9c\x9b\x94\x96\x9f\x1e"
+"\xfb\x1d\x04\xa0\x82\x96\x7a\x7b\x82\x80\x76\x1e\xfb\x9a\x07\x76\x94\x80\x9b\x9c\x94\x96\xa0\x1e\x0e\xf8\x4a\xf9\x0e\x15\x2a\x32"
+"\x36\x30\x46\xbe\x59\xd2\xeb\xe4\xe1\xe6\xcf\x58\xbd\x45\x1f\x7e\x58\x15\xbb\xac\x6c\x5f\x4e\x4f\x52\x4c\x5d\x6a\xaa\xb8\xc6\xc7"
+"\xc5\xc8\x1f\x0e\xf7\xa9\xf8\xe1\x15\x25\x21\x1d\xbb\x06\xfb\x25\xfd\x31\xaa\x0a\x42\xce\xfb\x02\x41\x55\x73\x50\x4c\xe9\x0a\xd8"
+"\xef\xf7\x23\x0a\xf7\x68\xf7\x0e\x0a\xb7\x8a\xaa\xf7\x09\x0a\x76\xf7\x25\x1d\xd7\xd4\xc9\xcb\xa8\x7f\xa1\x6f\x9e\x1f\xb5\xa4\x9f"
+"\xa9\xaf\x1a\xb8\x67\xaa\x57\x56\xf2\x0a\x9e\xa5\x94\xa7\x1b\xac\xa1\x7a\x71\x6b\x69\x70\x62\x1f\xf8\x03\x90\x15\x94\x94\x8f\x92"
+"\x92\x1a\x95\x83\x93\x3b\x0a\x82\x82\x87\x84\x83\x1a\x81\x92\x83\x96\x93\x8d\x8c\x97\x98\x1e\xf8\x07\xa8\x15\x80\x58\x05\x76\x06"
+"\x6d\x80\x84\x7a\x80\x93\x85\x97\x1f\xe1\x06\x9b\x97\x96\x98\x96\x83\x91\x7f\x1f\x81\x06\x95\xbe\x05\xa7\x96\x92\x9c\x96\x84\x91"
+"\x7e\x1f\x81\x06\xb9\xf7\x6a\x05\x4e\x06\xfb\x44\xfb\x6d\x83\x65\x05\xf7\x32\xb4\x15\x26\x06\xf7\x1d\xf7\x3c\x05\x0e\xf7\xb6\xf7"
+"\xbd\x15\xf7\x66\xf7\x34\x9c\x9c\xc1\x1a\xb9\x63\xb0\x59\x66\x66\x7b\x6f\x6e\x1e\x7a\x79\x7f\x78\x7f\x1a\x83\x93\x84\x94\x95\x92"
+"\x90\x97\x91\x1e\xa9\x9b\xad\x9f\xac\x1b\xab\xa4\x75\x6f\x70\x80\x7e\x47\x55\x1f\x53\x5e\x61\x6a\x55\x63\x84\x86\x18\x81\x5c\x05"
+"\xf7\x80\x06\x94\xb4\x05\x92\x07\x95\x8a\x85\x91\x81\x1b\x7f\x81\x82\x7e\x89\x1f\x8a\x8a\x05\x0e\xf7\xb9\xf7\x91\x15\xc5\x06\xaa"
+"\x7f\xa7\x5b\x9e\x40\x08\xb7\x06\x9b\x98\x97\x9a\x97\x83\x92\x7d\x1f\x80\x06\x72\xcc\x83\x9a\x76\xa1\x08\xc1\xa0\xa9\xae\xb8\x1a"
+"\xba\x66\xaa\x53\x1e\xfb\x1e\x06\x7a\x7e\x80\x7b\x7f\x93\x84\x99\x1f\x9d\x06\x58\xfb\x7f\x05\x77\x06\x7a\x7e\x7f\x7c\x7f\x93\x84"
+"\x99\x1f\xeb\x06\x9c\x98\x97\x9a\x97\x83\x92\x7d\x1f\x6e\x06\xa8\xf7\x1b\x15\xa1\xef\x05\xd4\x06\xad\x9f\x7c\x72\x68\x61\x72\x52"
+"\x1f\xd3\xf7\xaa\xc6\x1d\xf7\x37\xf7\xc7\x15\x74\x7d\xf0\x0a\xf8\x26\x2a\x1d\x0e\xf8\xc8\xf8\xca\x15\x95\x8f\x92\x95\x97\x1a\x97"
+"\x82\x94\x7f\x88\x88\x8b\x8a\x89\x1e\x25\x63\x05\xa6\x56\x51\x9e\x70\x1b\x7a\x7d\x7d\x7a\x81\x91\x85\x99\x88\x1f\xaf\x83\x9d\x86"
+"\xa4\x7f\x52\x75\x18\x81\x87\x85\x81\x7f\x1a\x7e\x95\x81\x97\x8c\x8f\x8c\x8c\x8e\x1e\xec\xb3\xa7\x74\xae\x54\x9b\x5f\x19\xa7\x65"
+"\x67\x97\x5b\x1b\xfb\x28\xfb\x1d\xfb\x16\xfb\x1f\x21\xda\x41\xf7\x03\xd8\xd6\xac\xc6\xc4\x1f\xbf\xc0\xaa\xdb\xd9\x1a\xe5\x66\xe9"
+"\x4e\xcd\x1e\x22\xfb\x2e\x15\xe2\xc6\x53\x39\x20\x5f\x1d\x0e\xf8\x03\xf7\xd1\x15\xfb\x01\xf7\x1c\x05\x94\x84\x86\x8e\x83\x1b\x7b"
+"\x7c\x7d\x7c\x86\x8e\x84\x90\x85\x1f\xf7\x01\xfb\x1c\xfb\x3d\xfb\x1c\x05\x7e\x81\x87\x84\x81\x3e\x0a\x93\x8e\x93\x95\x1e\xf7\x3c"
+"\xf7\x1d\xf7\x01\xfb\x1c\x05\x82\x93\x90\x88\x93\x1b\x9b\x9a\x99\x9a\x90\x88\x91\x86\x92\x1f\xfb\x01\xf7\x1c\xf7\x3c\xf7\x1c\x05"
+"\x99\x96\x8f\x91\x95\x1a\x97\x81\x94\x7e\x84\x84\x88\x83\x81\x1e\x0e\xf8\x17\xf7\x0e\x0a\xb6\x8a\xaa\xbd\x0a\xa9\x7f\xa0\x70\x9e"
+"\x1f\xb4\xa4\x9f\xa9\xaf\x1a\xb8\x67\xaa\x57\x57\xf2\x0a\x9d\xa5\x94\xa8\x1b\xab\xa1\x7a\x72\x6a\x6a\x70\x62\x1f\x0e\xf7\x60\xf7"
+"\x99\x15\x89\x82\x8a\x81\x82\x1a\x45\xc2\x55\xd2\xb4\xb6\x9c\xaa\xb0\x1e\x9c\x9a\x91\x93\x95\x1a\x97\x83\x92\x80\x83\x86\x89\x84"
+"\x83\x1e\x6a\x68\x70\x7f\x68\x1b\x5a\x67\xaf\xbc\x94\x8c\x91\x8c\x92\x1f\x93\xb1\x05\xc6\x98\xc1\xba\xc2\x1b\xa2\xa2\x83\x7f\x98"
+"\x1f\x8f\x87\x94\x7d\x89\x1a\x8a\x76\x05\x85\x96\x83\x94\x98\x96\x94\x9a\x8e\x1e\x99\xca\x05\x8c\x8e\x8b\x8e\x8d\x1a\x96\x83\x93"
+"\x7f\x80\x82\x84\x80\x86\x1e\x9d\x6f\x76\x92\x6c\x1b\x3c\x3c\x49\x3a\x7a\x1f\xf7\x67\xf7\xa4\xc6\x1d\x29\x0a\xf7\x11\xf7\x73\x15"
+"\x9c\x97\x8e\x8f\x97\x28\x0a\x83\x86\x89\x83\x80\x1e\xfb\x1c\x29\x05\x7e\x81\x86\x84\x80\x3e\x0a\x8f\x47\x0a\x29\x0a\xad\xf7\xa5"
+"\xe5\x1d\x8d\x92\x95\x7f\x0a\x91\x1b\x9b\x9a\x99\x9a\x93\x89\x8e\x82\x94\x1f\x0e\x29\x0a\x37\xf7\x88\x15\x69\x6b\x42\x1d\xae\xbe"
+"\x0a\x29\x0a\x68\xf7\x99\x15\x94\x83\x87\x8d\x83\x1b\x7c\x7c\x7d\x7c\x85\x8f\x83\x90\x86\x44\x1d\x92\x91\xee\x0a\x29\x0a\xb5\xf7"
+"\xb9\xf7\x4a\x1d\xc5\xb7\x69\xab\x5c\x1f\x84\x60\x15\xa5\x9d\x7b\x73\x6c\x6a\x6c\x68\x71\x78\x9b\xa2\xac\xac\xa9\xaf\x1f\x0e\x29"
+"\x0a\xf7\x34\xf7\x80\x5b\x0a\x67\x81\x85\x7b\x1b\x81\x81\x90\x9d\x6d\xe3\x0a\x73\x80\x71\x68\xf7\x07\x1d\x94\x87\x80\x9c\x1f\x73"
+"\xaf\x9d\x84\xa2\x1b\xa5\xa5\x97\xa9\xae\x1f\x9f\x9b\x8f\x91\x96\x1a\x96\x81\x94\x7f\x1e\x0e\xf7\xd3\x7b\x15\x92\x06\xca\xd8\xab"
+"\xbe\xc8\x1f\xa8\xa4\x92\x94\x98\x1a\x96\x82\x93\x7f\x81\x86\x88\x83\x82\x1e\x4d\x48\x54\x72\x47\xf7\x0b\x1d\xb8\xba\x7b\x74\xa3"
+"\x1f\x93\x83\xa0\x6c\x87\x1a\x89\x65\x05\x85\x98\x82\x93\x9c\x60\x1d\x8b\x8f\xdc\x0a\x88\x79\x05\x4e\x0a\x49\xa9\x4c\xbe\x63\x1e"
+"\xa3\x79\xa1\x81\xb2\x81\x7c\x46\x18\xf6\x1d\xb7\x77\xb5\xc4\xb6\xaf\xbb\xa9\x79\x9c\x68\x8e\x1f\x0e\x2d\x1d\xf8\x06\xf9\x40\x15"
+"\x99\x95\x90\x71\x0a\x87\x7f\x1d\x8f\x47\x0a\x2d\x1d\xf7\xac\xf9\x72\x15\xfb\x33\xfb\x00\x05\x7b\x80\x86\x85\x7f\x3e\x0a\xf7\x06"
+"\x1d\x81\x94\x1f\x0e\x2d\x1d\xf7\x36\xf9\x55\x77\x1d\x2d\x1d\xf7\x60\xf9\x66\xe3\x1d\x3b\x1d\xf7\x72\xf9\x40\x2d\x0a\x3b\x1d\xf7"
+"\x19\xf9\x72\x3d\x0a\x81\x86\x85\xef\x0a\x90\x8d\x92\x96\x1e\xf7\x0e\xdf\xe1\x38\x05\x84\x93\x90\x88\x91\x1b\x9b\x9a\x99\x9a\x93"
+"\x8a\x8e\x81\x94\x1f\x0e\xf8\x48\x22\x1d\xf7\x1b\x2e\x0a\xfb\xd3\x83\x1d\xf7\xd4\x06\xa1\x9a\x97\x9c\x9b\x83\x91\x76\x1f\xfb\x18"
+"\x06\x9a\xf9\x55\xaf\x0a\x3b\x1d\xcb\xf9\x66\x15\x94\x83\x86\x8d\x84\x1b\x7b\x7c\x7d\x7c\x85\x8e\x84\x92\x85\x44\x1d\x92\x91\x88"
+"\x91\x1b\x9d\xf7\x16\x0a\x54\x1d\xf7\x29\xf9\x80\xf7\x12\x1d\x80\x8f\x75\x1b\x71\x73\x80\x71\x68\x1f\x76\x7b\x84\xf7\x00\x0a\xa7"
+"\xad\x95\x91\x9d\x1b\x96\x94\x87\x80\x9c\x1f\x73\xb0\x9b\x84\xa3\x1b\xa5\xa5\x97\xa9\xaf\x1f\x9e\x9b\x8f\x91\x96\x1a\x96\x81\x94"
+"\x7f\x1e\x0e\x31\x0a\xf7\x29\xf7\x67\x15\x9a\x96\x8f\x90\x97\x46\x0a\x80\x1e\xfb\x1c\x29\x05\x7e\x82\x86\x83\x80\x1a\x7f\x94\x82"
+"\x97\x93\x8e\x8d\x93\x98\x1e\x0e\x31\x0a\xbe\xf7\x99\xcd\x0a\xe1\x38\x05\x84\x92\x90\x88\x92\x1b\x9a\x9a\x99\x9b\x92\x89\x8e\x82"
+"\x94\x1f\x0e\x31\x0a\x48\xf7\x7c\x15\x69\x6a\x42\x1d\xaf\xbe\x0a\x31\x0a\x72\xf7\x8d\x15\x94\x83\x87\x8d\x84\x1b\x7b\x7c\x7d\x7c"
+"\x85\x8e\x84\x91\x7d\x0a\x91\x88\x91\x1b\x9c\xf7\x11\x0a\x80\x98\x1f\x0e\xf8\x3b\xf8\xd3\x15\xfb\x3b\xfb\x32\xfb\x46\xfb\x52\xfb"
+"\x17\xdc\x2f\xf7\x08\xdd\xda\xb2\xd4\xcc\x1f\xca\xd2\xb1\xea\xe4\x1a\xf7\x19\x3b\xe6\xfb\x0b\x1e\x85\x58\x15\xe3\xcb\x3f\x21\xfb"
+"\x2c\xfb\x17\xfb\x2f\xfb\x14\x2c\x4b\xd4\xf6\xf7\x33\xf7\x16\xf7\x2a\xf7\x1c\x1f\xf7\x4d\xf7\x74\x15\x84\x85\x89\x84\x83\x1f\x6e"
+"\x67\x81\x9f\x1d\x6e\x7f\x8f\x75\x1b\x71\x73\xa3\x0a\x94\x87\x80\x9c\x1f\x73\xb0\x9c\x84\xa2\x1b\xa5\xa5\x97\xa9\xaf\x1f\x9e\x9b"
+"\x8f\x91\x56\x0a\xf8\xbd\xf8\xa0\x15\xf5\x0a\xa0\x79\x1f\xa6\x76\xad\x7f\xd0\x7e\xcf\x80\x9e\x85\x9f\x7c\x08\x9b\x80\x96\x75\x77"
+"\x1a\x3b\x37\x4a\x24\x63\x62\x96\x9c\xa7\x0a\xc0\x75\xcd\x1b\xf7\x1e\xf7\x04\xe5\xf7\x03\xaf\x7b\xad\x71\x9d\x1f\x71\x62\x1d\xd0"
+"\xd7\xc5\xe3\xb0\xae\x80\x7b\x9c\x1e\x94\x83\x9f\x6d\x87\x1a\x89\x61\x05\x85\x97\x82\x95\x9b\x28\x1d\xa0\xef\x05\x8c\x8f\x8c\x91"
+"\x8e\x1a\x96\x82\x94\x7e\x7b\x81\x81\x77\x86\x1e\xfb\x00\xe9\xbf\x0a\x85\x85\x8e\x85\x1b\x7a\x7d\x92\x1d\x2e\x1d\x9e\xf8\xb9\xb0"
+"\x0a\x2e\x1d\x40\xf8\xeb\xa8\x0a\x2e\x1d\xfb\x55\xf8\xce\xbb\x0a\xaa\xac\xa4\x78\x9e\x70\x1f\x0e\x2e\x1d\xfb\x27\xf8\xdf\x15\x93"
+"\x83\x86\x8e\xe7\x0a\x92\xf0\x1d\x47\x1d\xf7\x75\xf9\x40\xb0\x0a\x47\x1d\x98\xf9\x55\x15\x50\x0a\xf7\x72\x16\x68\x6b\x35\x0a\xa5"
+"\x78\x9d\x70\x1f\x0e\x60\x0a\xf7\xe4\xf9\x06\x78\x0a\x85\x89\x84\x81\x4f\x0a\x5d\x0a\xc9\xf8\x19\x15\x9a\x96\x8f\x90\x97\x46\x0a"
+"\x7f\x41\x1d\x7c\x80\x87\x85\x80\x3e\x0a\x90\x8d\x93\x96\x1e\x0e\x37\x0a\x6e\xf8\x4b\x15\xfb\x33\xfb\x01\x05\x7c\x63\x0a\x59\x0a"
+"\x74\x0a\x77\x1f\x5b\x06\xf7\x19\x0a\x93\x92\x1a\xc9\x51\xb5\x36\x6a\x0a\xd7\xa6\x90\xad\x1b\xca\xb2\x73\x66\x85\x8b\x88\x8a\x88"
+"\x1f\x7d\x4b\x05\x9a\x55\x6e\x8f\x5f\x1b\xfb\x22\xfb\x01\x40\x29\x48\xbf\x63\xe0\xd0\xc7\xa1\xbf\xd2\x1f\x99\xc8\x15\x4e\x3c\x52"
+"\x74\x44\x1b\x51\x6a\xa2\xb4\xcc\xe0\xbc\xf7\x05\xb3\xb5\x86\x82\xae\x1f\xfb\x26\xf8\x2e\x77\x1d\x5d\x0a\x22\xf8\x3f\xf7\x0b\x0a"
+"\x8d\x86\x93\x84\x44\x1d\x93\x90\x88\x92\x1b\x9b\x9a\x99\x9b\x90\x8b\x8b\x85\x93\x1f\x87\x90\x05\x0e\x5d\x0a\x72\xf8\x5f\x5c\x1d"
+"\x7b\x73\x6c\x69\x6c\x69\x70\x79\x9b\xa3\xab\xac\xa9\xaf\x1f\x0e\xf8\x31\x16\xf0\x4b\x1d\x5b\x06\xc3\xf7\x93\x05\x8c\x93\x8c\x91"
+"\x94\x1a\xc9\x51\xb5\x37\x6a\x0a\xd5\xa8\x90\xac\x1b\xca\xb0\x75\x64\x8d\x1f\x86\x8b\x87\x8a\x88\x1e\x7e\x4b\x05\x9a\x54\x6f\x8f"
+"\x5f\x1b\xfb\x22\xfb\x01\x40\x28\x49\xbf\x63\xe0\xcf\xc8\xa1\xbf\xd2\x1f\x98\xc8\x15\x4e\x3d\x52\x74\x43\x1b\x52\x6a\xa2\xb4\xcc"
+"\xdf\xbc\xf7\x05\xb4\xb4\x86\x82\xaf\x1f\xec\xf8\x26\x5b\x0a\x67\x81\x85\x7b\x1b\x80\x82\x8f\x9e\x6d\x1f\x9e\x6e\x7f\x8f\x75\x1b"
+"\x71\x73\x81\x70\x68\x1f\x77\x7b\x83\xf7\x00\x0a\xa8\xad\x95\x90\x9d\x1b\x96\x95\x87\x80\x9b\x1f\x73\xb0\x9c\x84\xa2\xf7\x1b\x1d"
+"\xf7\xd0\x7c\x15\xc4\x8d\xb9\x96\xba\xa0\x08\xc5\xa6\xaf\xa8\xa0\x1a\x97\x82\x93\x71\x1d\x8a\x88\x05\x88\x1d\x47\xad\x51\xc3\x70"
+"\x1f\x9d\x83\x99\x87\xa8\x86\x7c\x49\x18\xf7\x1f\x1d\x80\x8f\x95\x78\x1f\x90\x82\x88\x8c\x85\x1b\x7c\x7d\x7e\x7c\x77\xb7\x77\xb5"
+"\xc4\xb5\xaf\xbb\xa9\x79\x9c\x69\x8e\x1f\x0e\x30\x1d\x93\xf7\xe4\x3d\x1d\x30\x1d\x38\xf8\x16\x3d\x0a\x4e\x1d\xf7\x06\x1d\x82\x94"
+"\x1f\x0e\xa9\x0a\xfb\x04\xdd\x3f\xf7\x0c\xf3\xf7\x17\xbd\xb3\x97\x83\x94\x7e\x85\x87\x89\x85\x81\x1e\x6d\x5d\x3f\x75\x4c\x1b\x2d"
+"\x4a\xc5\xe0\x8f\x8b\x90\x8c\x93\x1f\xf8\x09\xbe\x15\xfb\xfd\x06\xdc\xad\xe0\xc2\xe7\x1b\xe4\xc8\x56\x3e\x1f\xfb\x5d\xf7\xf9\xbb"
+"\x0a\xa9\xad\xa5\x78\x9d\x70\x1f\x0e\x30\x1d\xfb\x33\xf8\x0a\x15\x94\x83\x86\x8d\xe7\x0a\x93\x90\x88\x91\x1b\x9b\x9b\x99\x99\x8e"
+"\x84\x99\x88\x8e\x1f\x0e\x3c\x1d\xf7\x4d\xf8\xad\xba\x0a\x8e\x8c\x94\x98\x1e\x0e\xf8\x33\xd0\x1d\xe0\xf8\xdf\xf7\x2c\x1d\x91\x92"
+"\xc3\x0a\x3c\x1d\x6d\xf8\xc2\xaf\x0a\x3c\x1d\x9e\xf8\xd3\x15\x93\x83\x86\x8e\x84\x1b\x7b\x7c\x7d\x7c\x84\x8e\x85\x91\x7d\x0a\x91"
+"\x88\x91\x1b\x9c\xf7\x11\x0a\x80\x98\x1f\x0e\xf7\x9b\xf8\x37\x15\x39\x4f\x1d\x9f\x1f\xa6\x69\x0a\x78\x1f\x64\x06\xbf\xf7\x84\x05"
+"\xd7\xd8\xa9\x9b\xc7\x1b\xb0\x9c\x85\x79\x9e\x1f\x9a\x7c\x92\x7a\x77\x1a\x80\x8b\x8a\x8a\x85\x1e\x57\xfb\x82\x05\x6e\x06\x73\x7d"
+"\x80\x78\x7d\x2a\x0a\xf7\x00\x23\x1d\x70\x06\xc0\xf7\x87\x05\x8c\x92\x8c\x93\x94\x1a\xd0\x55\xb9\x39\x4f\x62\x79\x54\x4b\x1e\xf7"
+"\xc4\xf7\x85\x5b\x0a\x68\x80\x9f\x1d\x6d\x7f\x8f\x76\x1b\x70\x74\x81\x70\x67\x1f\x77\x7b\x83\x81\x7f\x1a\x80\x94\x83\x98\x92\x93"
+"\x8e\x91\x92\x1e\xa8\xae\x94\x90\x9d\x1b\x96\x95\x87\x80\x9c\x1f\x73\xaf\x9c\x84\xa3\x1b\xa5\xa4\x97\xa9\xaf\x1f\x9f\x9b\x8f\x91"
+"\x56\x0a\x38\x0a\xf7\x24\xf7\x62\x15\x9a\x96\x8f\x90\x97\x46\x0a\x7f\x41\x1d\x7e\x82\x86\x83\x80\x1a\x7f\x94\x82\x97\x93\x8e\x8c"
+"\x94\x97\x1e\x0e\x38\x0a\xc0\xf7\x94\x3d\x0a\x81\x86\x85\xef\x0a\x91\x8d\x92\xc8\x0a\xb2\x0a\x3a\xfb\x00\x5f\x1d\x4b\xf7\x77\x15"
+"\x50\x0a\xf7\x71\x16\x50\x0a\x0e\x38\x0a\x7b\xf7\x88\xe3\x1d\xb2\x0a\x39\x20\x5f\x1d\xf7\x4e\xf7\x6f\xf7\x12\x1d\x7f\x8f\x76\x1b"
+"\x70\x73\xa3\x0a\x94\x87\x80\x9d\x1f\x73\xaf\x9c\x84\xa3\xf7\x1b\x1d\xf3\x85\x1d\xf7\x17\xf7\x61\x1d\xa0\x67\x97\x4f\x91\x3f\x94"
+"\x8b\x8b\x76\x93\xf7\x21\x1d\x85\x9d\x77\x87\x1a\x8a\x6d\x05\x84\x97\x82\x94\x9c\x28\x1d\x99\xcf\x05\x8c\x8f\x8c\x90\x8e\x1a\x97"
+"\x82\x94\x7f\x7d\x80\x81\x7b\x86\x1e\xa5\x6f\x60\x99\x55\x1b\xfb\x05\xec\x0a\xc1\x85\xa4\x85\xa1\xf7\x4f\x1d\x2f\x40\x52\x9b\x1d"
+"\x8d\x8e\x7c\x0a\x86\x1e\xf7\xb6\xf8\x01\xbf\x0a\x84\x86\x8e\x84\x1b\x7b\x7d\x7d\x7c\x82\x8c\x89\x95\x82\x1f\x0e\x2c\x0a\xcf\xf8"
+"\xa7\x15\x9c\x96\x8e\x6a\x1d\x84\x85\x89\x83\x80\xd3\x0a\x2c\x0a\x7b\xf8\xd9\xf7\x24\x1d\x8d\x92\x95\x7f\x0a\x92\x1b\x9a\x9a\x99"
+"\x9a\x93\x59\x0a\xf8\x45\x16\xdc\x06\xa2\xb6\x1d\xc9\xa3\xbc\xcc\x1f\xfb\x19\xf8\xbc\x77\x1d\x2c\x0a\x36\xf8\xcd\x15\x94\x83\x87"
+"\x8d\x83\x1b\x7b\x7c\x7d\x7c\x85\x8e\x84\x92\x7d\x0a\x90\xee\x0a\x52\x1d\xf8\x1d\xf7\x70\x3d\x1d\x52\x1d\xf7\x29\xf7\x85\x15\x50"
+"\x0a\xf7\x71\x16\x68\x6b\x6c\x6a\x71\x9e\x79\xa5\xaf\x8c\x1d\x0e\xde\x0a\x95\x82\x97\xf7\x0d\x0a\xfc\x01\xfb\xd8\x82\x5f\x05\xf8"
+"\x15\x06\xa0\xee\x05\x8c\x8f\x8c\x90\x8f\x1a\x96\x82\x94\x7f\x7a\x81\x81\x76\x86\x1e\x80\x59\x05\xfb\x97\x06\xf8\x03\xf7\xd8\x05"
+"\xfb\x32\xf3\x78\x0a\x85\x89\x84\x81\x4f\x0a\xf7\xed\xf8\xab\x15\x50\x06\x78\x7f\x81\x7b\x7f\x94\x84\x9a\x1f\x94\x06\x63\xfb\x4c"
+"\x05\x79\x06\x78\x7e\x80\x7c\x7f\x94\x84\x9a\x1f\xdd\x06\x9d\x98\x96\x9a\x98\x83\x91\x7b\x1f\x7b\x06\xaa\xf7\x23\x05\xb2\xb4\x9f"
+"\x95\xae\x1b\xab\xa2\x7b\x75\x89\x1f\x8a\x82\x6b\xfb\x25\x05\x80\x06\x78\x7e\x81\x7b\x7f\x94\x84\x9a\x1f\xcf\x06\x9d\x98\x96\x9a"
+"\x97\x83\x92\x7b\x1f\x82\x06\xab\xf7\x27\x05\x8c\x91\x8c\x91\x8f\x1a\xb8\x67\xa8\x53\x68\x73\x82\x73\x6a\x1e\x0e\xf7\x8a\xf8\x04"
+"\x15\xce\x23\x1d\x4a\x98\x0a\xa2\x40\x1d\x4a\x06\xf7\xf3\xf7\xd1\x15\xce\x30\x0a\x4b\x98\x0a\xa1\x9a\x97\x9d\x99\x82\x92\x78\x1f"
+"\x4a\x06\x0e\xf8\x8d\xbe\x15\xda\xf8\x04\x05\xfb\x38\x06\x96\xf7\x2e\x1d\x94\x8d\x8b\x8f\x1b\x99\x99\x90\x1d\x69\x92\x77\x1b\x70"
+"\x76\x83\x76\x6e\xa0\x0a\xfb\x0c\x16\xfb\x05\x06\xd0\xf7\xd1\x05\xf7\x05\x06\xfb\xee\xfb\xd1\x15\xd0\xf7\xd1\x05\xf7\x04\x25\x0a"
+"\xdb\xf8\x04\x15\xfb\x04\x76\x0a\x9d\x87\x84\xa1\x1f\x8e\x8a\x90\x8a\x7d\x77\x82\x77\x85\x71\x19\x0e\xf8\xff\xf8\xd9\x15\x5b\x99"
+"\x05\x8f\x7b\x75\x8f\x7e\x1b\x70\x77\x83\x76\x6d\xa0\x0a\x47\x06\x57\x16\xfb\x05\x06\xd0\xf7\xd1\x05\xda\x4b\x1d\x3e\x06\x96\xbf"
+"\x05\xb9\x95\xae\xae\xae\x1b\x99\x99\x88\x85\x9f\x1f\xfc\x13\xfc\x80\x15\xd0\xf7\xd1\x05\xf7\x04\x25\x0a\xdb\xf8\x04\x15\xfb\x04"
+"\x76\x0a\x9d\x87\x84\xa1\x1f\x8e\x8a\x90\x8a\x7d\x77\x82\x77\x85\x71\x19\x0e\xf8\xe8\xf8\x6d\x15\x94\x94\x8f\x91\x93\x1a\x96\x83"
+"\x92\x3b\x0a\x82\x82\x87\x84\x83\x1a\x81\x93\x83\x95\x93\x8d\x8c\x97\x98\x1e\xf7\x07\xc9\x1d\xf8\x0e\xfb\x09\x15\xb2\xa2\xa0\xac"
+"\xb1\x1a\xba\x67\xad\x57\xf7\x2a\x1d\x5a\xb2\x67\xc1\xd1\xcd\xc7\xcc\xa5\x81\x9d\x75\x9e\x1e\x67\xf7\x1a\x15\xac\xa0\x78\x6e\x67"
+"\x66\x6c\x61\x6c\x74\x9d\xa5\xaf\xb2\x70\x0a\x5e\x9e\x1d\xb8\x1f\x0e\xf8\xdb\xf8\x6d\x15\x94\x94\x8f\x92\x92\x1a\x95\x83\x93\x3b"
+"\x0a\x80\x80\x88\x86\x84\x1a\x80\x93\x83\x96\x93\x8e\x8d\x96\x97\x92\x0a\xfb\xa7\xf7\xc9\xf7\x5e\x1d\xb7\x8a\xa9\xbd\x0a\xa8\x7f"
+"\xa1\x70\x9e\x1f\xb5\xa4\x9f\xa9\xaf\x1a\xb8\x67\xaa\x57\x56\xf7\x12\x0a\x95\x1e\x9c\x9e\xa4\x94\xa7\x1b\xad\xa0\x7a\x71\x6b\x69"
+"\x70\x62\x1f\x0e\xf8\xdb\xf8\x6d\x15\x94\x93\x8f\x93\x92\x1a\x95\x83\x93\x81\x83\x88\x89\x80\x7f\x1e\xfc\x4a\xfc\x2d\x05\x81\x81"
+"\x87\x85\x84\x1a\x80\x93\x83\x96\x93\x8d\x8d\x96\x98\x1e\xf8\x3e\xf7\x09\x15\xb2\xa2\xa0\xad\xb0\x1a\xba\x66\xad\x58\xf7\x2a\x1d"
+"\x59\xb2\x68\xc1\xd1\xcd\xc7\xcc\xa5\x81\x9d\x75\x9e\x1e\x67\xf7\x1a\x15\xab\xa1\x78\x6f\x66\x66\x6c\x61\x6b\x75\x9d\xa5\xaf\xb2"
+"\x70\x0a\x5e\x9e\x1d\xb8\x1f\xfb\xc3\xf8\x27\x15\xf7\x12\x06\x9b\x94\x94\x9a\x98\x86\x8f\x7e\x1f\xfb\x3a\x06\x69\xfb\x2f\x05\x87"
+"\x07\x83\x93\x81\x92\x1e\x95\x8d\x90\x8c\x91\x8e\x05\x91\x94\xb6\x95\x9b\x1b\xab\xa1\x76\x6b\x51\x5e\x5b\x55\x71\x68\x9b\x9c\x7f"
+"\x1f\x91\x86\x88\x8d\x84\x1b\x7f\x80\x80\x7e\x71\xc5\x6b\xba\xd9\xcf\xd3\xdd\xc0\x68\xad\x55\x79\x79\x88\x82\x71\x1f\x0e\xf8\xda"
+"\xf8\x6d\x15\x95\x94\x8f\x92\x92\x1a\x95\x83\x93\x3b\x0a\x80\x81\x88\x85\x84\x1a\x80\x93\x83\x96\x93\x8d\x8c\x97\x98\x92\x0a\xfb"
+"\x30\xf8\x27\x15\x2d\xfb\x40\x53\xfb\x00\x81\x1a\x8a\x83\x05\x88\x97\x85\x92\x92\x95\x92\x94\x90\x1e\xf7\x2b\xf7\xb2\x95\xb9\x05"
+"\xfb\x74\x06\x80\x57\x05\x7e\x88\x93\x81\x97\x1b\x98\x93\x92\x9a\x8e\x1f\x8e\x97\x05\x0e\x82\x0a\xf7\x64\xf7\x09\x1d\x7d\x81\x85"
+"\x83\x82\x1a\x7e\x95\xf7\x62\x1d\x29\x0a\xfb\x01\xf7\x98\x48\x1d\x8d\x0a\xf7\x2e\xf8\x98\x15\x94\x97\x8d\x91\x92\x1a\x97\x82\x94"
+"\x7f\x81\x81\x85\x7e\x83\x1e\x2e\xfb\x1b\x05\x84\x81\x88\x83\x84\x1a\x7e\x93\x82\x98\x95\x94\x91\x98\x94\x1e\xf8\x13\xfb\x58\x15"
+"\xa1\xfb\x19\xbe\x1d\xdb\xf7\x19\x05\xf7\x8c\xbe\x15\xfb\x6e\x06\xf7\x38\xf7\xa9\x05\x92\x06\x0e\x29\x0a\xf7\x08\xf7\x31\x2c\x1d"
+"\xf8\x5a\xf8\xc7\x15\xfb\x64\x37\x1d\x7b\x1d\x9a\x82\x91\x98\x1d\xf7\x96\x06\xa2\xfb\x19\x05\x45\x21\x1d\xd9\xb6\x0a\xa0\x9d\xa2"
+"\xa9\x9d\x1f\xa5\x9b\xa9\x98\x9a\x8d\x08\xa0\x8e\x96\x95\x9c\x1a\x9a\x82\x91\x77\x1e\x6b\x06\x36\xf7\x4c\x8b\x1d\x0e\x29\x0a\xb1"
+"\xf7\xb6\xe1\x1d\xb6\xf7\x01\x15\x99\xf7\x07\x0a\x7e\x83\x87\x89\x83\x7f\x82\x1d\x95\x8f\x91\x92\x1e\x0e\x8c\x0a\x55\x1d\x6e\xf7"
+"\x5f\x2d\x0a\x55\x1d\xfb\x15\xe9\x39\x0a\x55\x1d\x23\xf7\x91\xdb\x1d\x80\x95\x1f\x0e\x55\x1d\x23\xf7\x75\xe0\x0a\x0e\xa5\x1d\xb4"
+"\x1d\xe9\xf8\xd3\x39\x0a\x84\x0a\xae\x16\xf8\xa6\x06\xfb\x84\xf8\xc6\x05\x59\x06\xfb\x38\xfc\x93\x15\xf7\x51\xf8\x47\xf7\x51\xfc"
+"\x47\x05\x0e\x2d\x1d\xf7\x1e\xf9\x65\x48\x1d\x2d\x1d\xf7\x77\xf8\xd3\x39\x0a\x2d\x1d\xf7\x9b\xf7\x10\x1d\x2d\x1d\xf8\x09\xf8\xfe"
+"\x2c\x1d\xf8\xfd\x22\x1d\xa8\x23\x1d\xfb\x29\x32\x1d\xcf\x06\x2d\xfc\x42\xfb\x54\xf8\x75\x05\xfb\x02\x20\x1d\xbb\x58\x1d\x35\x1d"
+"\x47\x06\xe8\xf8\x42\xf7\x57\xfc\x70\x83\x69\x7e\x4d\x5b\x64\x4a\x8a\x19\x46\x06\x7a\x7d\x7d\x7b\x7c\x94\x85\xa0\x1f\xca\x06\xe5"
+"\x89\xe0\xd1\x9d\xe5\x08\x0e\xf7\x49\xbe\x15\xba\xf7\x6b\x05\x81\x1d\x8e\x1a\x96\xf7\x18\x0a\x87\x1e\x82\x63\x8a\x1d\x98\x9b\x96"
+"\x95\xa0\x8f\x1e\xaa\xf7\x23\x05\xfc\x48\x49\x1d\xf8\x01\x06\x4c\x6c\x71\x6e\x62\x1a\x6a\xa5\x79\xb9\xb8\xed\x0a\x87\x8a\x72\x1b"
+"\x79\x82\x91\x98\xaf\xb9\xaf\xd3\x9f\x1f\x93\x8d\xae\xf7\x34\xf7\x11\x1d\x0e\xa4\x1d\xf7\x2a\xf8\x98\x43\x0a\xf7\x52\xfb\x06\x15"
+"\xf7\x19\x06\x82\x65\x8a\x7e\x05\x7f\x93\x83\x98\x9c\x96\x96\x9f\x8f\x1e\xa7\xf7\x15\x05\x8d\x91\x8b\x8e\x8f\x1a\x98\x83\x92\x7d"
+"\x7b\x80\x80\x77\x86\x1e\x83\x63\x05\xfb\x19\x06\xb5\xf7\x57\x05\xf7\xa9\x06\x78\x31\x05\x8a\x85\x8a\x87\x7e\x0a\x96\x9f\x8f\x1e"
+"\xaa\xf7\x23\x05\xfc\x43\x37\x1d\x95\x84\x9e\x1f\xb9\x06\x27\xfc\x61\x05\x5a\x2b\x1d\xf8\x56\x06\xae\xf7\x35\x8c\x99\x05\x97\x83"
+"\x92\x7e\x7a\x80\x80\x77\x87\x1e\x72\xfb\x04\x05\xfb\xbe\x06\x0e\x85\x0a\xf7\x21\xf8\x98\x43\x0a\xf8\x35\xfb\x06\x15\x5c\xfb\x6b"
+"\x05\x59\x06\x74\x7d\x43\x1d\xf7\x20\x23\x0a\x64\x06\x36\x0a\xa0\x06\xa2\x52\x0a\xfb\x0c\x24\x0a\x79\x7d\x95\x83\x9e\x1f\xba\x06"
+"\x61\xfb\x57\x05\xfb\x94\x34\x0a\xbc\x5e\x1d\xfb\x0c\x06\x74\x7d\x80\x79\x7c\x95\x84\x9e\x1f\x9d\x26\x1d\x62\x06\x73\x7e\x81\x78"
+"\x7d\xf7\x26\x1d\xba\xf7\x6b\x05\x0e\xf7\x51\xf7\xf6\x15\xa5\xc2\x9d\xa4\xae\xa9\x08\xb3\xb8\xbe\x9f\xc2\x1b\xb8\xb9\x7c\x73\xa4"
+"\x1f\x95\x82\x9e\x6d\x86\x1a\x88\x66\x05\x85\x98\x82\x94\x9c\x95\x95\x9f\x90\x1e\xa2\xf7\x02\x05\x8c\x90\x8c\x8f\x8f\x1a\xf7\x20"
+"\x0a\x87\x79\x05\xb3\x65\x55\xa0\x4c\x1b\xfb\x12\xfb\x06\x35\xfb\x1b\x57\x1f\x6e\x06\x77\x80\x81\x77\x7f\x92\x86\x9b\x1f\xa3\x06"
+"\x81\x5b\x05\x71\x06\x76\x80\x81\x77\x7f\x93\x86\x9b\x1f\xa5\x06\x60\x8c\x83\x92\x72\x1e\x2d\xa8\xda\x51\xed\x1b\xd2\xd4\xa8\xc1"
+"\xcb\x1f\xa7\xa3\x93\x95\x98\x1a\x96\x83\x93\x7e\x81\x86\x89\x82\x82\x1e\x4c\x46\x56\x73\x47\x1b\x49\x57\xa9\xc1\x6d\x1f\x7a\xa8"
+"\x86\xa2\xb4\x1a\xf7\x91\xf7\x58\x1d\xfb\x92\x06\x95\xbb\x05\xf7\xb1\xf7\x58\x1d\x0e\xf7\xea\xc0\x1d\x45\x1d\xfb\x2e\xf9\x73\x15"
+"\x77\x7e\x7c\x75\x4a\xbb\x67\xe0\xc1\xb8\x9a\xa9\xb1\xd8\x1d\x45\x1d\x54\xf9\x80\xf7\x04\x1d\xe0\x35\x05\x84\x92\x90\x88\x92\xf7"
+"\x44\x1d\x45\x1d\xfb\x6f\xfb\x16\x15\x94\x95\x8f\x92\x93\x1a\x95\x80\x95\x81\xef\x1d\x45\x1d\x67\xf9\x64\x15\x69\xf7\x3a\x1d\x71"
+"\x1f\x0e\xf7\x5f\xf8\x11\x15\x43\xfb\xde\x05\x62\x06\x73\x86\x1d\x9c\x9b\x82\x91\xca\x0a\xf7\x97\x06\xc0\x0a\xd3\xf7\xde\x05\xa7"
+"\x66\x1d\x70\x06\x9d\xdc\x05\xa0\x06\xa1\x6b\x1d\x79\x7c\x2a\x0a\xba\x06\x7a\x3a\x05\xfb\x98\x06\x9d\xdc\x05\xbc\x06\xa2\x6b\x1d"
+"\x78\x7d\x25\x1d\x9e\x06\x79\x3a\x05\x68\x06\x68\x1d\xdf\x16\xf7\x98\x06\x7d\x4b\x05\xfb\x97\x06\x0e\x86\x0a\xf7\x7e\xf8\x9b\x15"
+"\xfb\x2f\xfb\x01\x05\x7b\x84\x85\x82\x7f\x1a\x7f\x95\x82\x97\x8f\x98\x90\x8f\x91\x1e\xf7\x0d\xe2\xe1\x35\x05\x83\x92\x90\x89\x91"
+"\xf7\x44\x1d\xf7\x75\xf8\x94\x15\x3f\x0a\x3a\x21\x1d\xf7\x69\x30\x0a\x3c\x06\x36\x0a\xdd\x06\xa1\x99\x96\x9e\x99\x82\x92\x78\x1f"
+"\xfb\x68\x06\x74\x7d\x7f\x79\x7c\x94\x85\x9e\x1f\xf8\x5d\x16\x26\xfc\x65\x05\x40\x7b\x3f\x50\x3c\x1b\x61\x59\xa1\xa9\x70\x1f\xa1"
+"\x77\x8a\x8c\x81\x1b\x7a\x7d\x7d\x7b\x82\x8d\x88\xa2\x77\x1f\x5d\xbd\xb4\x79\xc3\x1b\xf4\xf4\xde\xef\xa0\x1f\xf1\xf8\x67\x05\xa0"
+"\x30\x0a\xfb\x48\x20\x1d\x0e\xc8\x1d\x7a\xf9\x65\xc5\x1d\x3b\x1d\xf7\x14\xf7\x10\x1d\x3b\x1d\xf7\x78\xf8\xfe\x2c\x1d\xf8\x48\x22"
+"\x1d\xf7\x1b\x27\x1d\xfb\xd4\x83\x1d\xf7\x8a\xb6\x0a\x9a\x94\x9b\x9b\x9a\x1f\x9b\x98\xa7\x9c\x9a\x90\xbc\x9b\x8b\x8b\x90\x91\x08"
+"\x91\x91\x8e\x92\x91\x1a\x9b\x82\x91\x76\x1e\xfb\x18\x06\x0e\x75\x1d\x9f\x0a\x9b\xf9\x2c\x15\x6f\x71\x72\x70\x75\x9b\x7c\xa0\xa9"
+"\xa4\xa4\xa7\xa0\x7c\x9a\x74\x1f\xf7\x63\x16\x6f\x71\x72\x6f\x76\x9b\x7c\xa0\xa8\xa4\xa4\xa7\xa0\x51\x1d\xf7\x43\xf8\x98\x43\x0a"
+"\xf7\xe7\xf7\x18\x15\xf7\x1a\x31\x1d\xfb\xd1\x37\x1d\x95\x84\x9e\x1f\xf7\x17\x26\x1d\xfb\x1a\x2b\x1d\xf7\xd1\x06\xa2\x52\x0a\xfb"
+"\x17\x06\x0e\x3b\x1d\xf7\x89\xf9\x49\xc4\x1d\xb9\x1d\xe1\xf8\xff\xdb\x1d\x81\x95\x1f\x0e\xf7\x41\xf7\x6f\x15\xe8\xcf\xe0\x6e\xa8"
+"\x51\xa9\xfb\x5c\x19\xe6\x2a\x1d\x57\x06\x6b\xf7\x4a\x70\xbe\x38\xb3\xf7\x93\xf7\x50\x18\x9a\x27\x1d\xfb\x0b\x32\x1d\xa8\x06\xfb"
+"\xc9\xfb\x77\xbd\xf7\x77\x05\xd1\x27\x1d\xfb\x3e\xe4\x1d\x3c\x0a\x47\x06\x0e\x87\x0a\xf7\x19\xfb\x24\x27\x0a\x40\x0a\xf7\x7f\xf9"
+"\x40\x2d\x0a\xf8\x13\x22\x1d\xd9\xfc\x61\xbe\x1d\xf7\xa6\xf8\x61\x05\x0e\x40\x0a\xf8\x18\xf8\x73\x15\x95\x96\x8e\x92\x93\x1a\x95"
+"\x81\x95\x7f\x81\x84\x87\x7f\x80\x1e\xfb\x03\xfb\x10\x05\x81\x80\x88\x85\x83\x1a\x80\x64\x1d\x40\x0a\xd2\xfb\x24\x27\x0a\x40\x0a"
+"\xf7\x8e\xf7\xe6\x15\x58\x64\x65\x5a\x6d\xa5\x75\xaf\x1f\x95\x06\xba\xb7\xb3\xb5\xac\x71\xa3\x66\x1f\x0e\xab\x1d\x54\x1d\xf7\x05"
+"\xf9\x73\x2d\x0a\x54\x1d\x84\xf9\x06\x39\x0a\x54\x1d\xfb\x17\x2e\x27\x0a\xf8\x62\x9a\x0a\x99\x82\x92\xf6\x0a\xc7\x1d\x2a\xf7\x8c"
+"\xc5\x1d\x31\x0a\xf0\xf7\x65\x97\x0a\x31\x0a\xf7\x27\xf7\x25\x2c\x1d\xcd\xbe\x15\x90\xa0\x8c\x97\x05\x99\x82\x94\x7c\x7c\x81\x80"
+"\x76\x86\x1e\x7c\x40\x05\xf7\x73\x06\xa6\xf7\x0f\x74\x8f\x80\x8e\x7d\x90\x19\x50\xa0\x6c\xba\xcf\x1a\xc5\xa7\xd0\xb5\xb7\x1e\xbf"
+"\xbb\xd5\xa9\xd6\x1b\xf7\x07\xd2\x4a\x22\xfb\x05\x37\x33\xfb\x17\x72\x1f\x84\x8a\x6f\xfb\x13\x05\xf7\x78\x06\x9a\xcd\x05\x8c\x90"
+"\x8c\x94\x8f\x1a\x99\x82\x94\x7c\x7c\x81\x80\x76\x87\x1e\x85\x73\x05\xfb\x0d\x06\x92\xad\xca\x9e\xb1\x9e\xb0\xac\x19\xc5\xc0\xad"
+"\xd6\xda\x1a\xf7\x12\x2a\xe1\xfb\x22\x31\x3f\x6c\x4e\x4e\x1e\x50\x50\x6b\x40\x3d\x1a\x4e\xa0\x55\xb0\x6b\x1e\x9e\x7b\x9c\x82\xae"
+"\x7e\x83\x68\x18\x60\xf8\x65\x43\x0a\x0e\x9d\x0a\xf8\x2a\xf8\xd3\x15\xfb\x3a\xfb\x31\xfb\x47\xfb\x51\xfb\x19\xda\x31\xf7\x08\xdf"
+"\xd7\xb1\xd7\xcd\x1f\xcc\xd7\xad\xe2\xe5\x1a\xc9\x7a\xc1\x6a\xb4\x1e\xb9\x66\x5d\xa0\x4b\x1b\x83\x58\x15\xe5\xc9\x41\x20\xfb\x2f"
+"\xfb\x15\xfb\x2d\xfb\x17\x2e\x4e\xd3\xf7\x02\xd7\xa7\xd3\xc1\xca\x1f\xcb\xc2\xc7\xab\xcc\x1b\xfb\x7b\x83\x15\x91\x94\x8e\x93\x93"
+"\x1a\x97\x83\x94\x7e\x81\x83\x85\x7e\x82\x1e\x2e\xfb\x1b\x05\x84\x81\x88\x84\x83\x1a\x7e\x93\x82\x98\x95\x93\x91\x98\x95\x1e\x0e"
+"\xa7\x1d\xf8\x02\xf9\x1b\x2d\x0a\xf7\xe1\xb1\x15\xf7\x33\x9c\xf7\x14\xf7\x15\xf7\x25\x1a\xf4\x45\xd5\xfb\x04\x98\x1e\x92\xaf\x05"
+"\xf1\x23\x1d\xfb\x91\x21\x1d\xee\x06\x84\x68\x05\xfb\x34\x79\xfb\x13\xfb\x15\xfb\x25\x1a\x22\xd1\x41\xf7\x04\x7e\x1e\x81\x5d\x05"
+"\x25\x29\x1d\xf7\x91\x06\xa1\x9a\x97\x9c\x9b\x82\x91\x77\x1f\x28\x06\xf3\xf8\x72\x15\xe2\x7f\xc0\x51\x3a\x1a\xfb\x01\x27\x24\xfb"
+"\x0f\x79\x1e\x57\x16\x35\x97\x55\xc5\xdc\x1a\xf7\x02\xee\xf1\xf7\x10\x9d\x1e\x0e\xb2\x1d\xf8\x24\x22\x1d\xb6\xe6\x0a\xfb\x24\x06"
+"\x74\x7d\x80\x79\x7d\x95\x83\x9d\x1f\xbc\x06\x4c\xfb\xb0\x05\x42\x8f\x65\xaa\xc3\x1a\x9b\x8e\xa3\x92\xac\x1e\xaf\xf7\x3f\x05\x2b"
+"\x24\x0a\x79\x7d\x95\x83\x9e\x1f\xb4\x06\x72\xfb\x05\x05\x84\x6c\x88\x75\x77\x1a\x33\xc0\x57\xee\x82\x1e\x71\xfb\x12\x05\x5a\x2b"
+"\x1d\xf7\x2f\x44\x0a\x55\x06\xa5\xf7\x12\xf7\x2a\x91\xca\xc9\xb0\xf7\x48\x19\x9e\xe2\x05\xa8\x23\x0a\x3a\x06\x6e\xfb\x1f\x6c\xfb"
+"\x20\x5c\x59\x20\x85\x19\x0e\x4b\x0a\xf7\x6c\xf8\x4a\x2d\x0a\x4b\x0a\xc3\xf7\xdd\x39\x0a\x4b\x0a\x6f\xfc\x1a\x27\x0a\x94\x0a\x49"
+"\x0a\x8e\xf7\x5f\x2d\x0a\xf7\xce\x7c\x15\xf7\x1d\x94\xee\xdf\xf6\x1a\xaf\x7b\xad\x71\x9d\x1e\x70\x62\x1d\xcf\xd7\xc6\xe4\xaf\xaf"
+"\x80\x7b\x9c\x1e\x93\x83\xa0\x6d\x79\x1d\x89\x83\x05\x93\x0a\xa1\x6c\xb9\x73\xbe\x85\x19\x7c\x47\x05\xa9\x06\xa0\xd3\x1d\x49\x0a"
+"\x3f\xf7\x91\xd4\x1d\x49\x0a\xfb\x85\xfd\x05\x27\x0a\xf9\x25\xf8\xc7\x15\xfc\x26\x06\x80\x5a\xf7\x1e\xfb\x6c\xfb\x82\xfb\x8a\x80"
+"\x57\x05\xf8\x2d\x06\xab\xf7\x29\x05\x8c\x90\x8c\x91\x8e\x1a\x96\x83\x92\x81\x7e\x81\x82\x7d\x87\x1e\x6f\x20\x05\xfb\xbc\x06\xf7"
+"\x8a\xf7\x8a\xfb\x21\xf7\x6b\x05\xf7\xad\x06\x7d\xfb\x03\x8a\x89\x05\x83\x89\x95\x82\x96\x1b\x98\x95\x94\x99\x8e\x1f\x0e\x90\x0a"
+"\xf8\x1e\xf7\xd0\x15\xb6\xf7\x58\x05\xf7\x2d\x06\x6f\xfb\x17\x05\x89\x82\x8b\x8b\x89\x1a\x7f\x95\x81\x97\x9a\x96\x94\x99\x8e\x1e"
+"\x8e\x92\xb2\xf7\x4d\x05\xfc\x63\x06\x64\xfb\x4a\x05\x8a\x87\x8b\x88\x87\x1a\x7e\x94\x82\x96\x91\x96\x90\x90\x91\x1e\x90\x8f\x8b"
+"\x8b\x90\x9b\xa7\xf7\x1a\x18\xf7\x2e\x06\x60\xfb\x58\x05\x26\x06\x74\x7c\x7e\x79\x7f\x96\x83\x9e\x1f\xee\x06\x5c\xfb\x6a\x05\x26"
+"\x06\x76\x7b\x7e\x7b\x7d\x96\x83\x9c\x1f\xf7\x8f\x06\x95\x8f\x8c\x8e\x92\x1f\x93\x8e\x94\x98\x94\x1a\x99\x81\x93\x78\x1e\x29\x06"
+"\xb9\xf7\x6a\x05\xf1\x06\x96\x94\x8e\x8f\x90\x1f\x90\x8f\x91\x97\x8f\x1a\x9c\x83\x92\x77\x1e\x0e\x5f\x0a\x87\xf8\xd3\x39\x0a\xf7"
+"\xd7\x16\xf2\x23\x1d\x29\x06\xef\xf8\x61\x05\xf7\x2f\x06\x7d\x4a\x8a\x82\x05\x86\x07\x82\x8a\x96\x81\x96\x1b\x9c\x95\x94\xa0\x87"
+"\x1d\x86\x6c\x1d\x67\x0a\xef\x06\x79\x39\x05\xaa\x06\xa0\xda\x1d\x66\x90\x1f\x0e\xf7\x9c\xf7\xc9\x15\x8d\x96\x05\x8c\x8f\x8b\x8e"
+"\x8e\x1a\x98\x8a\x83\x93\x7f\x1b\x7b\x80\x81\x79\x87\x1f\x7a\x3d\x05\x8a\x87\x8b\x89\x87\x1a\x7f\x94\x82\x97\x9b\x96\x96\x9c\x8f"
+"\x1e\x8f\x9b\x05\xf7\x62\x06\x88\x7e\x05\x8a\x87\x8b\x88\x88\x1a\x7f\x94\x82\x97\x9b\x97\x96\x9c\x8f\x1e\x9b\xd9\x05\x8c\x8f\x8c"
+"\x8f\x8d\x1a\x97\x8c\x81\x94\x7f\x1b\x7b\x7f\x81\x79\x87\x1f\x88\x7d\x05\x5e\xf7\x9e\x15\xfb\x3e\xfb\x32\xfb\x45\xfb\x54\xfb\x17"
+"\xdc\x30\xf7\x09\xf7\x3d\xf7\x32\xf7\x46\xf7\x53\xf7\x16\x3a\xe7\xfb\x08\x1f\x7c\x58\x15\xea\xcb\x42\x20\xfb\x32\xfb\x16\xfb\x2b"
+"\xfb\x1c\x32\x4b\xd7\xf5\xf7\x2d\xf7\x17\xf7\x2e\xf7\x15\x1f\x0e\x2e\x1d\xfb\x71\xf8\xde\x48\x1d\x2e\x1d\x49\xf8\xb7\x97\x0a\x2e"
+"\x1d\x9f\xf8\x77\x2c\x1d\xb8\x1d\x7b\x1a\x30\xcf\x49\xe9\x1e\xa4\x8c\x05\x62\x71\x78\x70\x6a\x1a\x6a\xa5\x79\xb9\xb7\xb7\xa1\xa1"
+"\x94\x83\x93\x82\x87\x87\x89\x89\x87\x1e\x7b\x74\x88\x8a\x71\x1b\x7a\x82\x91\x98\xa1\x98\x9b\xae\xa3\x1f\xf7\x0e\xde\xb8\xc0\x9d"
+"\xdc\x08\x0e\xaf\x1d\x0e\xf7\xe4\xf7\x90\x15\xf7\x79\xf7\x98\x05\xa1\x06\xa1\x40\x1d\xfb\x02\x06\x74\x7c\x7f\x79\x7d\x2a\x0a\xa6"
+"\x06\xfb\x4a\xfb\x63\x2c\xf7\x63\x05\xaa\x2a\x1d\xfb\x03\x06\x74\x7c\x7f\x7a\x7c\x2a\x0a\xa0\x06\xf7\x0a\xfb\x96\x5f\xfb\x5f\x05"
+"\x26\x55\x0a\xf7\x8e\x2a\x1d\x29\x06\x85\xf9\x2c\x15\x6f\x71\x72\x70\x75\x9b\x7c\xa0\xa8\xa4\xa4\xf7\x05\x0a\x75\x9b\x7c\xa0\xa9"
+"\xa4\xa4\xa7\xa0\x7b\x9a\x75\x1f\x0e\xf7\x2a\xf8\x98\x43\x0a\xf7\xee\xfb\x14\x15\xf7\x79\xf7\x98\x05\xa0\x06\xa3\x99\x96\x9d\x99"
+"\x81\x93\x77\x1f\xfb\x02\x06\x73\x7e\xf7\x17\x0a\xa7\x06\xfb\x4a\xfb\x63\x2c\xf7\x63\x05\xa9\x23\x0a\xfb\x03\x06\x74\x7d\x43\x1d"
+"\x9f\x06\xf7\x0a\xfb\x96\x5f\xfb\x5f\x05\x27\x33\x0a\xf7\x8f\x31\x1d\x29\x06\x0e\x2e\x1d\x46\xf8\xfc\xe1\x1d\x0e\x2e\x1d\xb4\xf8"
+"\xc2\xc4\x1d\xb7\x1d\xf8\x1b\xf7\x09\x1d\x7e\x82\x85\x82\x82\x1a\x7e\x94\xf7\x62\x1d\xd3\xbd\x1d\x78\x7d\x25\x1d\x94\x06\xf7\xc1"
+"\xf7\xa5\xf7\x2c\x1d\x92\x91\xc3\x0a\x91\x0a\xf7\x89\xe0\x0a\xf7\x71\x16\x6a\x6a\x6b\x6b\x72\x9f\x77\xa3\xae\xab\xaa\xac\xa5\x78"
+"\x9e\x71\x1f\x0e\x91\x0a\xf7\x99\x15\x94\x83\x86\x8d\x84\x1b\x7b\x7c\x7c\x7b\x87\x8e\x85\x50\x1d\x82\x92\x8f\x89\x94\x1b\x9a\x9a"
+"\x9a\x9b\x90\x88\x90\x84\x92\x1f\x0e\xf8\xb6\x22\x1d\x7a\x3c\x05\x89\x84\x8a\x82\x87\x1a\x7d\x94\x82\x9a\x9a\x95\x96\xa0\x8f\x1e"
+"\xa9\xf7\x21\x05\xfc\x5e\x06\x70\xfb\x16\x05\x89\x81\x8a\x85\x87\x1a\x7d\x94\x82\x9a\x9a\x95\x96\xa0\x90\x1e\x9d\xe5\x05\xa9\xfb"
+"\x61\x15\x8e\x9b\x05\x8f\x9d\x8b\x8b\x8d\x1a\x99\x81\x94\x7d\x7b\x81\x80\x75\x87\x1e\x77\x2e\x05\x88\x7b\x8b\x8b\x87\x1a\x7d\x94"
+"\x82\x9a\x9a\x94\x95\xa2\x90\x1e\x91\xa5\x05\xf7\x5e\x06\x88\x7b\x05\x89\x80\x8a\x86\x88\x1a\x7c\x94\x82\x9a\x9a\x95\x96\xa1\x8f"
+"\x1e\xa0\xe8\x05\x8e\x98\x8b\x8e\x8e\x1a\x9a\x82\x94\x7c\x7c\x81\x80\x75\x86\x1e\x85\x71\x05\xfb\xe1\xfb\x94\x15\x9c\xda\x05\x8d"
+"\x98\x8c\x8e\x8f\x1a\x9a\x82\x94\x7c\x7c\x81\x80\x75\x86\x1e\x6e\xfb\x21\x05\xf8\x5d\x06\xa6\xf7\x16\x05\x8d\x92\x8c\x94\x90\x1a"
+"\x99\x82\x94\x7c\x7c\x82\x80\x75\x86\x1e\x78\x31\x05\x0e\xaf\x1d\xf7\x16\xf9\x72\xa8\x0a\x47\x1d\x9b\xf9\x66\x15\x93\x83\x86\x8e"
+"\x83\x1b\x7b\x7c\x7c\x7b\x87\x8e\x86\x93\x83\x1f\xe8\x29\x05\x82\x91\x8f\x89\x95\x1b\x9a\x9a\x9a\x9b\x90\x88\x8f\x83\x93\x1f\x0e"
+"\x60\x0a\xf8\x62\xf9\x73\x15\x98\xf7\x07\x0a\x7f\x82\x87\x89\x83\x7f\x82\x1d\x8b\x8b\x95\x9d\x1e\x0e\x60\x0a\xf7\xf9\xf9\x89\xf7"
+"\x19\x1d\xf8\x5e\x16\xb3\xf7\x4b\x05\x8d\x94\x8b\x8c\x8e\x1a\x96\x81\x94\x7f\x7a\x81\x82\x75\xcd\x1d\x37\x0a\xfb\x12\xf8\x29\x32"
+"\x0a\x81\x0a\x67\xf7\xea\x15\x9a\x95\x8f\x71\x0a\x87\x89\x83\x7f\xd3\x0a\xf3\x1d\x8d\x0a\xf8\xc6\xf8\xc7\x15\xfc\x31\xa2\x0a\xfb"
+"\x14\x34\x0a\xf7\x97\x06\x82\x65\xe5\x0a\x99\x9b\x96\x96\x9f\x90\x1e\xfc\x26\xfc\x39\xd8\x0a\x8c\x0a\xf7\xbe\xc0\x1d\xf8\x5d\x16"
+"\x77\x2e\x05\x8a\x85\x8a\x86\x86\x1a\x7a\x93\x82\x9a\x9a\x94\x95\xa1\x90\x1e\xa3\xf7\x02\x05\x8d\x98\x8c\x8e\x8f\x1a\x9a\x7d\x94"
+"\x71\x1e\x6d\x06\x36\x0a\xb4\x4c\x1d\xfc\x1b\x36\x1d\xbd\x06\x58\xfb\x7e\x71\xfb\x18\x4b\x3b\x31\x7d\x19\x77\x89\x86\x86\x85\x71"
+"\x73\xfb\x05\x18\x89\x81\x8a\x86\x87\x1a\x7e\x94\x82\x9a\x99\x95\x95\x9f\x8f\x1e\xa2\xf4\x05\xf7\x9f\x22\x1d\xf7\x55\x26\x1d\xfb"
+"\x9c\x06\xc9\xbb\xac\xc8\xa4\xf7\x07\x08\x0e\xa4\x1d\xf7\x4f\xf7\x9e\x15\xf7\x19\x06\x83\x65\x05\x8a\x88\x8a\x83\x89\xf7\x1b\x0a"
+"\x96\x9f\x8f\x1e\xa7\xf7\x15\x05\x8c\x90\x8c\x90\x8e\x6f\x1d\x80\x77\x86\x1e\x83\x63\x05\xfb\x19\x34\x0a\xf7\xa9\x06\x78\x31\x05"
+"\xf7\x55\x1d\x94\x82\x98\x9c\x95\x95\xa0\x8f\x1e\xab\xf7\x23\x05\xfc\x44\x06\x75\x7c\x7f\x79\x7d\x2a\x0a\xba\x26\x1d\x59\x55\x0a"
+"\xf8\x56\x06\xae\xf7\x35\x05\x8c\x8e\x8b\x90\x90\x1a\x96\x82\x94\x7e\x7c\x7f\x80\x77\x87\x1e\x73\xfb\x04\x05\xfb\xbf\x06\xf7\x3a"
+"\xf9\x2d\x15\xdd\x0a\xf7\x05\x0a\x76\x9a\x7c\xa1\xa8\xa4\xa3\xa7\xa0\x51\x1d\xf8\x1b\x22\x1d\xa1\x1d\xaa\x21\x0a\x75\x06\x70\xf7"
+"\x1a\x7e\xc4\x77\xb6\x73\x9f\x19\xa0\x9f\xab\xb4\xaf\xbe\xc2\xdb\x93\x94\xa3\x90\x81\x64\x18\x8a\x80\x05\x79\x94\x81\x9b\x99\x94"
+"\x95\xa0\x90\x1e\x97\xc2\x05\x8d\x97\x8c\x90\x8e\x1a\x9b\x7e\x94\x71\x51\x75\x78\xfb\x17\x31\x1e\x5a\x44\x7e\x7f\x70\x88\x08\x0e"
+"\xf7\x20\xf8\x60\x15\x77\x42\x8b\x8b\x89\x1a\x7f\x94\x82\x98\x98\x93\x92\x9d\x92\x1e\x94\xa5\x95\x9e\x97\x9b\x08\xbb\xae\xca\xa5"
+"\xda\x1b\xda\xbd\x6c\x5a\x69\x77\x6a\x68\x74\x1f\x71\x63\x53\x7f\x3b\x1b\x6d\x22\x0a\xbc\x06\xcc\xcc\x7d\x77\xa2\x1f\x9a\x7e\x93"
+"\x79\x76\x1a\x68\x78\x66\x6b\x71\x1e\x6c\x66\x59\x7c\x4a\x1b\x3a\x56\x9b\xb5\x50\x1f\x93\x80\x83\x8e\x84\x1b\x7e\x7c\x7c\x7d\x60"
+"\xf7\x0d\x5b\xf7\x02\xe9\xca\x9e\xb4\xbd\x1f\xb6\xb0\xa4\xbc\xbd\x1a\xc3\x6e\xb1\x50\xa0\x1e\xdd\xa9\xb4\xbc\xd1\x1a\xdb\x48\xbe"
+"\x22\x51\x65\x81\x6c\x50\x1e\x83\x7d\x88\x8a\x88\x1b\x87\x89\x90\x96\x9f\x82\x95\x7b\x7c\x82\x82\x7a\x88\x1f\x0e\x8f\x0a\x0e\xf8"
+"\xc9\x22\x1d\xb9\x96\x1d\x77\xbb\x1d\x9a\x81\x92\x78\x1f\x58\x06\xfb\x39\xf9\x5d\x15\x76\x7f\x7b\x70\x4e\xbe\x64\xd8\xbe\xba\x9c"
+"\xa9\xad\x1f\xa3\xa1\x9e\xac\xf7\x41\x1d\x7e\x5c\x70\x55\x1b\x5c\x67\xa3\xab\x8e\x8b\x8d\x8c\x8d\x1f\x8d\x07\x8c\x07\x91\x07\x96"
+"\x82\x94\x81\x1e\x0e\x83\x0a\x0e\xf8\xbb\x22\x1d\xae\x2f\x0a\xfc\x0f\x51\x0a\xb7\x06\x47\xfb\xd0\x05\x22\x74\x5f\x52\x51\x1b\x83"
+"\x85\x8c\x8f\x7a\x1f\x97\xbf\x8c\x96\x05\x9a\x80\x97\x7d\x7d\x82\x81\x76\x86\x1e\x7e\x4f\x05\x89\x83\x8a\x82\x87\x1a\x78\xab\x7d"
+"\xb9\xb5\xb2\x9a\xa7\xa9\x1e\xad\xac\xa3\xbf\x9c\xdd\xd1\xf7\xd2\x18\xf7\x54\x48\x0a\x68\x20\x0a\xf7\x11\x2b\x0a\x66\x06\x0e\xab"
+"\x1d\x85\x0a\x9d\x0a\xb2\x1d\x94\x0a\xf8\xb0\xf8\x96\x15\x4e\x0a\xfb\x0c\xe8\x2e\xf7\x0d\xd2\xd4\xa8\xc1\xcb\x1e\xa7\xa3\x93\x95"
+"\x98\xf7\x1a\x0a\x89\x82\x82\x1e\x4b\x43\x5a\x74\x46\x7d\x1d\x94\x9b\x60\x1d\x8d\x8e\x1a\x96\x81\x93\x7f\x7a\x81\x81\x77\x86\x1e"
+"\x0e\x90\x0a\xa9\x1d\x0e\xf8\x1c\x22\x1d\xad\x06\x98\x06\x9f\x8a\x99\x96\x9d\x1a\x9b\x7f\x92\x71\x1e\xfb\x03\x06\x7b\x8c\x05\x88"
+"\x06\x78\x8e\x79\x7d\x79\x1a\x79\x95\x86\xab\x1e\xa9\x06\x84\x6b\x43\x89\x60\x80\x5f\x6f\x19\x43\x5e\x5f\x3e\x3d\x1a\x29\xcd\x54"
+"\xf7\x0f\x88\x1e\x84\x6b\x05\x68\x06\x6c\x79\x81\x78\x7c\x98\x84\xa6\x1f\xf7\x0b\x06\xa9\x9c\x96\x9f\x99\x7f\x91\x71\x1f\x6b\x06"
+"\x92\xab\xd3\x8d\xb6\x96\xb7\xa7\x19\xd2\xb8\xb7\xd8\xd9\x1a\xed\x48\xc3\xfb\x0d\x8d\x1e\xfb\x13\xfb\xed\x15\x25\x92\x5e\xae\xd2"
+"\x1a\xbb\xa2\xba\xb2\xac\x1e\xb1\xab\xb7\x9a\xcd\x90\x08\xc0\x16\xf1\x83\xb7\x69\x42\x1a\x55\x6a\x51\x5a\x6c\x1e\x6c\x78\x5f\x7f"
+"\x56\x87\x08\x0e\xa5\x1d\xf8\xac\xbe\x15\xfb\x02\x96\x0a\xf8\x56\x06\x76\x33\x05\x8a\x88\x8a\x85\x87\x1a\x7e\x93\x84\x98\x9b\x96"
+"\x95\xa0\x90\x1e\x0e\xf8\x13\xbe\x15\x20\x22\x0a\xf7\x5b\x21\x0a\x64\x06\x7a\x1d\x05\x50\x36\x50\x73\x4f\x1b\x5f\x75\x9e\xb2\x98"
+"\x8d\x97\xac\x0a\x4c\xb9\x61\xd0\xc7\xc8\x9f\xb9\xd5\x1e\x0e\xb1\xbe\x15\x62\x24\x1d\xf8\xb1\x5e\x1d\x5d\xb0\x1d\x0e\xf8\xdb\xbe"
+"\x15\x31\xb0\x1d\x3f\x0a\x62\x24\x1d\xf8\xa5\x06\x76\x33\x05\x8a\x87\x8a\x85\x88\x1a\x7e\x93\x84\x99\x9b\x28\x1d\x0e\xf7\x0e\x22"
+"\x1d\xf7\x1e\x26\x1d\x59\x3f\x1d\xf7\x78\x06\xf7\x0f\xe3\xd5\xf2\xaf\x81\xa9\x76\xa1\x1f\xab\x6e\x45\x9f\x3a\x1b\x54\x34\x0a\xd9"
+"\xf7\x5a\x1d\xfb\xd5\x06\x6a\xfb\x1f\x05\x8a\x85\x8a\x87\x87\x1a\x7f\x93\x83\x98\x9b\x97\x96\x9f\x90\x1e\xf7\x02\xfc\x06\x15\xbb"
+"\xf7\x6b\x05\xcd\x06\xf7\x06\xbb\x70\x4b\x42\x4b\x58\x32\x1f\x0e\xf7\x59\x22\x1d\xb8\x44\x0a\xfb\x29\xc5\x0a\xf7\x6b\x9c\x1d\xaf"
+"\xac\x9e\xf7\x33\x1d\x60\x06\x4d\xfb\x9e\x15\xba\xf7\x6b\x05\xc0\x06\xf7\x06\xbc\x70\x4a\x43\x4c\x58\x31\x1f\xf8\x15\xf8\x61\x15"
+"\xb2\x23\x0a\xfb\x13\x3a\x0a\xaf\x26\x1d\x62\xc9\x0a\x9d\x1f\xf7\x21\x31\x1d\x5c\x06\x0e\xf7\x88\x22\x1d\xc3\x44\x0a\xfb\x34\xa2"
+"\x0a\xfb\x10\x06\x4d\xfb\x9e\xd8\x0a\xf8\x7f\xf7\x96\x15\xfb\x21\x65\x29\x38\xfb\x13\x1b\x56\x71\x95\xba\x46\x1f\x91\x82\x84\x8e"
+"\x86\x1b\x7e\x7d\x7d\x7f\x79\xa1\x77\xb5\x77\x1f\x74\xba\xb1\x82\xbc\x1b\xf1\xda\xb0\xd9\xc8\x1f\xc4\xd2\xab\xe6\xe5\x1a\xf7\x1d"
+"\x3c\xe2\xfb\x11\x49\x5a\x79\x60\x58\x1e\x8e\x98\x8c\x91\x91\x1a\x9a\x83\x93\x7b\x79\x86\x83\x5a\x7e\x1e\x76\x3d\x05\x87\x7c\x88"
+"\x7c\x85\x1a\x7e\x95\x82\x99\x98\x94\x94\x9e\x94\x1e\x94\x9d\x8d\x91\x91\x95\x08\xc8\xac\xc6\xab\xd7\x1b\xee\xc7\x4d\x23\x7c\x8a"
+"\x7b\x89\x79\x1f\xfb\xa2\x06\x70\x7d\x82\x79\x7c\x97\x82\xa0\x1f\x0e\xf7\x55\xf7\x9e\x15\x88\x72\x8a\x7c\x77\x1a\xfb\x1a\xcb\x33"
+"\xed\xd3\xc8\xb3\xdb\xbd\x1e\xba\xd8\xa4\xe3\xe6\x1a\xf7\x1a\x4f\xdd\x28\xfb\x01\x2d\x27\xfb\x33\x62\x1e\x59\x34\x0a\xbd\x06\xa3"
+"\x99\x96\x9d\x99\x81\x93\x77\x1f\xfb\x0b\x06\x73\x7d\x81\x79\x7c\x95\x83\x9e\x1f\x9d\x06\x27\xfc\x61\x05\x62\x24\x1d\xf7\x20\x23"
+"\x0a\x5b\x06\xba\xf7\x6b\x05\xf7\xc1\xf7\x97\x15\xd3\xb2\x4f\xfb\x04\x2d\x6c\x2d\x55\x49\x1f\x5f\x68\x68\x77\x62\x1b\x44\x5d\xd2"
+"\xf7\x02\xd5\xa0\xd4\xb3\xcb\x1f\xce\xb5\xb8\xaa\xc1\x1b\x0e\xf8\xa7\x22\x1d\xb3\x2f\x0a\xfb\x5c\x06\x3c\x5a\x7e\x6e\x67\x1f\x64"
+"\x6c\x73\x5a\x5a\x1a\x4b\xb2\x62\xd5\x7b\x1e\x67\x75\x41\x2f\x49\x21\x08\x59\x20\x0a\xbb\x06\x9c\x95\x8d\x8e\x8e\x1f\x8d\x8d\x97"
+"\x9c\x97\x9c\xf7\x03\xf7\x39\xca\xc9\xc1\x86\x08\xc9\x06\x60\xfb\x68\x05\x5c\x20\x0a\xf7\x21\x21\x0a\x62\x06\xb7\xf8\x62\x15\x60"
+"\xfb\x5b\x05\x2b\x06\x2a\x5c\xa6\xc2\xad\x9c\xac\xa8\xa2\x1f\x9e\xa5\xac\x93\xc6\x1b\x0e\xf7\xbe\x22\x1d\xf7\xcf\x06\xb7\xf7\x5e"
+"\x8c\x97\x05\xf7\x20\x0a\x6a\xfb\x2d\x05\xfc\x2b\xd9\x1d\xf7\x8b\xf7\x60\x15\xc5\xe0\xc3\xa3\xc0\x1b\xb7\xa7\x6e\x5d\x5c\x77\x57"
+"\x6b\x69\x1f\x74\x72\x74\x7f\x65\x87\x08\x74\x89\x81\x83\x7a\x1a\x7a\x96\x82\xa0\xef\xe6\xf4\xf7\x09\xdc\x5b\xbe\x41\x54\x52\x76"
+"\x5c\x42\x1e\xbf\xf7\x86\x05\xf7\x12\x06\x7e\x2a\x05\x89\x7b\x8b\x8b\x8a\x1a\x7b\x94\x82\x9b\x9b\x94\x97\xa3\x8e\x1e\x99\xf7\x04"
+"\x05\x8c\x94\x8c\x91\x8d\x1a\x9b\x7d\x94\x72\x1e\xfb\xd9\x06\x6a\x8a\x8b\xf7\x50\x1d\x86\x1a\x7e\x94\x82\x99\x99\x95\x95\xa0\x91"
+"\x1e\xaa\xf7\x01\x05\xf7\x13\x48\x0a\x5e\x06\x71\x5a\x0a\xa5\x1f\xf7\x1c\x2f\x0a\x65\x06\x0e\xf7\x82\x22\x1d\x28\xfc\x61\x05\x26"
+"\x24\x1d\xf7\x8e\x23\x0a\x29\x06\xef\xf8\x61\x05\xf7\xa6\x06\x6f\xfb\x16\x05\x8a\x87\x8a\x85\x87\x1a\x7e\x93\x84\x99\x9b\x96\x96"
+"\x9f\x8f\x1e\xb3\xf7\x4c\x05\xfc\x71\x24\x1d\xf7\xea\xf7\x6d\x15\x98\x94\x91\x95\x95\x1a\x98\x83\x93\x7e\x84\x85\x88\x84\x80\x1e"
+"\xfb\x1b\x2a\x05\x7e\x82\x85\x82\x80\x1a\x7f\x94\x83\x97\x93\x92\x8e\x92\x95\x1e\x0e\xf7\x1c\xf7\xd1\x15\xf7\x11\xae\xea\xdd\xf7"
+"\x03\x1b\xd6\xcd\x5f\x59\x87\x8b\x89\x8a\x85\x1f\x8a\x07\x8a\x85\x8b\x8b\x89\x1a\x7e\x93\x83\x99\x9b\x96\x96\xa0\x8f\x1e\xa3\xf7"
+"\x01\x05\x8d\x91\x8b\x8e\x8f\x1a\x98\x83\x92\x7d\x7b\x80\x80\x77\x86\x1e\x88\x7a\x05\xb4\x63\x59\x9f\x4b\x1b\xfb\x1b\xfb\x18\xfb"
+"\x02\xfb\x1d\x6c\x1f\x79\x37\x05\x87\x7b\x8a\x83\x7c\x1a\x50\x99\x5d\xa6\x68\x1e\x58\xb5\xca\x6d\xce\x1b\xc1\xb5\x98\xb1\xcd\x1f"
+"\xbc\xa7\xaa\xab\xa0\x1a\x95\x82\x93\x7f\x82\x84\x88\x82\x82\x1e\x54\x52\x45\x6b\x4c\x1b\x2f\x41\xd4\xe7\x9b\x8d\x9d\x91\xab\x1f"
+"\xf7\xaf\x06\xa6\x99\x94\x9d\x9b\x80\x93\x75\x1f\x0e\xf8\x91\xf8\xa0\x15\xad\x6c\x5f\x9c\x53\x1b\xfb\x0d\x22\x35\x29\x6b\x98\x6d"
+"\xa1\x79\x1f\xa5\x76\xac\x7f\xd1\x7e\xd0\x7f\x9e\x86\x9f\x7d\x08\x9b\x7f\x96\x75\x77\x1a\x3b\x37\x4a\x24\x63\x61\x97\x9b\xa7\x0a"
+"\xc1\x75\xcc\x1b\xf7\x1e\xf7\x05\xe5\xf7\x03\xaf\x7b\xad\x71\x9d\x1f\x70\x62\x1d\xcf\xd7\xc6\xe4\xaf\xaf\x80\x7b\x9c\x1e\x94\x83"
+"\x9f\x6d\x79\x1d\x0e\x75\x1d\x9f\x0a\x99\xf9\x2d\x15\xdd\x0a\xa8\x9f\xf7\x4e\x1d\x9b\x7c\xa0\xa8\xa4\xa3\xa8\x9f\x7b\x9a\x76\x1f"
+"\x0e\xf8\xa7\x22\x1d\xe7\x06\xa2\x99\x38\x1d\xfb\xbc\x21\x1d\xf7\x2c\x06\x41\xfb\xeb\x05\x40\x7b\x3f\x50\x3c\x1b\x5b\x63\x9f\xb6"
+"\x64\x1f\xa6\xf7\x11\xf1\x0a\x76\x86\x1e\x6b\xfb\x29\x91\x85\x05\x4d\xc4\xbb\x73\xcb\x1b\xf4\xf4\xde\xee\xa0\x1f\x0e\xf8\x59\x22"
+"\x1d\xbb\x21\x0a\xfb\xbd\x22\x0a\xbc\x06\x48\xfb\xd0\x05\x20\x74\x60\x55\x4e\x1b\x81\x83\x8c\x8d\x80\x1f\x97\xc0\x05\x8c\x8f\x8b"
+"\x8e\x8f\x1a\x9c\x82\x95\x7c\x7c\x82\x81\x77\x86\x1e\x7e\x4e\x05\x89\x82\x8a\x83\x87\x1a\x77\xa6\x7e\xb5\xf6\xc3\xc8\xf7\x29\xab"
+"\x1e\xd1\xf7\xd2\x05\xe5\x48\x0a\x64\x20\x0a\xde\x06\xe2\xc3\x9e\xb6\xb2\x1f\xaa\xae\x9d\xbb\xba\x1a\xb9\x76\xb2\x67\x9e\x1e\x6e"
+"\x9b\x74\x90\x58\x8d\x08\x7c\x56\x15\xe0\x8a\xac\x75\x54\x1a\x5d\x72\x5c\x66\x75\x1e\x75\x7e\x6d\x84\x5c\x89\x08\x0e\xf7\xb3\xf7"
+"\x9e\x15\x5d\xfb\x6b\x05\x6b\x3a\x0a\xf7\x35\x9c\x1d\xae\xac\x9f\xb8\xba\x1a\xe6\x46\xba\xfb\x1c\x1e\x7a\x06\xb6\xf7\x57\x05\xc9"
+"\x44\x0a\xfb\x28\x06\x72\x7e\x69\x1d\xad\x06\x60\xfb\x57\x05\xfb\x29\x34\x0a\xa9\x23\x0a\xfb\x01\x3f\x1d\xa6\x06\x27\xfc\x61\x5a"
+"\x1d\xba\xf7\x6b\x05\xf7\x2f\xfb\x6b\x15\xb9\xf7\x6b\x05\xa2\x06\xf4\xbf\x6d\x4d\x43\x4c\x58\x32\x1f\x0e\xf7\xcc\x22\x1d\xf7\x13"
+"\x06\x7d\x2a\x8a\x7b\x05\x7b\x94\x81\x9a\x9b\x94\x96\xa3\x8e\x1e\x9c\xf7\x05\x05\x8d\x9a\x8b\x8b\x8d\x1a\x9b\x7d\x94\x71\x1e\xfb"
+"\xdb\x06\x6b\x8a\x8a\xf7\x50\x1d\x87\x1a\x7d\x95\x82\x98\x99\x95\x95\xa0\x91\x1e\xaa\xf7\x01\x05\xf7\x13\x48\x0a\x5e\x22\x0a\xf7"
+"\x1f\x21\x0a\x62\x06\xad\xf7\x2c\x05\xc6\xd2\xb9\xa2\xba\x1b\xb3\xa0\x75\x62\x7c\x89\x78\x88\x7d\x1f\x71\xfb\x0f\x05\x5d\x20\x0a"
+"\xf7\x0d\x21\x0a\x75\x06\xa5\xf7\x0b\x05\x8f\x9f\x8d\x9b\x9a\x1a\xd0\x5e\xba\x48\x5a\x5b\x78\x60\x53\x1e\x0e\x83\x0a\x31\xf7\x6d"
+"\x15\x98\x94\x91\x95\xf3\x0a\x2a\x05\x7e\x83\x54\x0a\xa9\x1d\x71\xf8\xb9\x15\x77\x7f\x7b\x70\x4e\xbe\x64\xd8\xbe\xbb\x9c\xa9\xac"
+"\x1f\xa3\xa2\x9e\xab\xf7\x41\x1d\x7d\x5d\x70\x55\x1b\x5b\x68\xa3\xac\x1f\x91\x07\x8c\x8d\x8b\x90\x8e\x1a\x95\x82\x94\x80\x1e\x0e"
+"\xf8\x05\x16\xf1\x30\x0a\x5c\x06\xf7\x19\x0a\x94\x91\x1a\xc9\x51\xb5\x36\x65\x2e\x79\x7c\x65\x1e\x7d\x85\x83\x81\x7f\x1a\x7f\x94"
+"\x82\x96\x90\x8d\x8b\x90\x9b\x1e\xa0\xd7\xa5\x90\xad\x1b\xca\xb2\x74\x65\x86\x8b\x87\x8a\x88\x1f\x7d\x4b\x05\x99\x58\x6c\x90\x5e"
+"\x1b\xfb\x23\xfb\x00\x40\x28\x49\xbf\x63\xe0\xd0\xc5\xa0\xc0\xd4\x1f\x99\xc7\x15\x4e\x39\x55\x75\x44\x1b\x51\x6a\xa2\xb4\xcc\xdf"
+"\xbc\xf7\x03\xb7\xb4\x86\x82\xae\x1f\x0e\xf8\x31\xf8\x7b\x15\xc0\xac\x93\x9e\xa5\x1f\xa0\x9b\x97\xa0\x9e\x1a\x9b\x81\x95\x7b\x7c"
+"\x82\x84\x7a\x85\x1e\x86\x76\x6e\x7f\x56\x8a\x08\x2f\x06\x39\x46\x6c\x56\x6a\x1f\x62\x49\x62\xfb\x29\x37\x1a\x28\xdd\x46\xf7\x0c"
+"\xdf\xce\xa5\xc1\xc4\x1e\xc1\xbf\xa8\xcb\xd1\x1a\xf7\x02\x3d\xd1\xfb\x0f\x3d\x4a\x72\x57\x53\x1e\xad\xec\xb6\xab\xeb\x8d\x08\x9f"
+"\x22\x15\xe8\xc5\x58\x3a\x55\x74\x58\x61\x60\x1f\x5e\x5d\x57\x76\x47\x1b\x2e\x51\xbd\xdc\xf7\x0b\xf2\xeb\xf7\x14\x1f\x0e\xe3\xbe"
+"\x15\x59\x24\x1d\xf7\xb0\x06\xd6\xbe\x96\xa0\xa7\x1f\xa4\x9e\x9a\xaa\xad\x1a\xc0\x6e\xa9\x47\x9d\x1e\xcc\xa0\xa7\xa9\xbd\x1a\xcc"
+"\x55\xaf\x28\x1e\xfb\x84\x2b\x1d\xc0\x06\xa5\xfb\x12\x15\xa5\xf7\x12\x05\xf7\x21\x06\xd0\xad\x78\x65\x5e\x58\x73\x28\x1f\xfb\x36"
+"\xfb\x53\x15\xaa\xf7\x20\x05\xf7\x14\x06\xf3\xc0\x72\x5a\x5c\x62\x78\x29\x1f\x0e\xc2\x1d\x0e\xf8\x58\x16\x7c\x51\x8a\x7d\x05\x7a"
+"\x94\x81\x9b\x99\x94\x95\xa0\x90\x1e\x9c\xd6\x05\x8c\x92\x8c\x92\x90\x1a\x9b\x7e\x94\x71\x1e\x6a\x06\xd0\xf7\xd1\x05\xad\x2b\x0a"
+"\xfc\x08\x20\x0a\xb9\x06\x68\xfb\x34\x7a\x31\x55\x56\x36\x7e\x19\x77\x89\x86\x87\x85\x70\x7b\x3e\x18\x88\x7e\x8b\x89\x88\x1a\x7e"
+"\x95\x82\x9b\x9a\x94\x94\x9e\x8f\x1e\x9b\xd1\x05\xf7\x74\xf8\x04\x15\xf7\x4e\x06\x47\xfb\xd1\x05\xfb\x87\x06\x8c\x8c\xb4\xa4\xa9"
+"\xbe\x9c\xd7\x19\x0e\xf8\x9f\xf7\x57\x15\x92\xb0\x8d\x99\x9b\x1a\xef\xf7\x0f\x0a\xfb\x04\xdd\x3f\xf7\x0c\xf3\xf7\x17\xbd\xb3\x97"
+"\x83\x94\x7e\x85\x87\x8a\x84\x81\x1e\x6c\x5b\x41\x76\x4c\x1b\x2d\xd5\x0a\xe4\xcd\x52\x42\x86\x1f\x0e\xf8\x9e\xf7\x56\x15\x93\xb0"
+"\x8c\x90\xa1\x1a\xf4\x3e\xd1\xfb\x05\xfb\x2a\xfb\x19\xfb\x0f\xfb\x1e\xfb\x05\xdc\x40\xf7\x10\xf2\xf7\x16\xbd\xb3\x96\x82\x95\x80"
+"\x85\x85\x89\x85\x81\x1e\x6a\x56\x47\x78\x4c\x1b\x2b\x4b\xc4\xdf\x90\x8b\x8c\x8c\x97\x1f\x97\xbe\x15\xdd\xb0\xde\xc1\xe4\x1b\xe5"
+"\xc4\x56\x38\x1f\xfb\x5b\xf7\xed\xdd\x1d\xf7\xfb\xf8\x04\x15\xa7\x21\x0a\x2a\x20\x0a\x9c\x06\x72\xfb\x0a\x05\x84\x06\x74\x8c\x84"
+"\x93\x71\xc4\x08\xe5\x64\x7d\x98\x50\x1b\x6f\x83\x84\x71\x85\x1f\x83\x67\x05\x88\x7e\x8b\x8a\x87\x1a\x7e\x94\x82\x9a\x9b\x96\x95"
+"\x9c\x8f\x1e\x92\xaa\xa2\x89\x8f\x86\xa0\x5f\x19\x9c\x63\x9a\x6d\x97\x7a\x58\x70\x88\x89\x5c\x50\x43\x30\x18\x6f\x20\x0a\xa4\x06"
+"\xa3\x8c\x8d\x8c\x92\x91\x95\x98\x19\xd7\xeb\xb8\xc2\xb4\xa9\xa6\x88\x19\x91\x06\x6b\xfb\x28\x05\x70\x22\x0a\xeb\x21\x0a\x7b\x06"
+"\xab\xf7\x28\x05\x94\x06\xb4\x88\x9c\x7b\xa0\x4f\xaa\x31\x18\x95\x70\x8e\x89\xa8\x8a\x08\xa5\x2b\x0a\x77\x06\x6c\xe4\x7c\xb5\x74"
+"\xad\x75\x95\x19\xa5\xa0\x94\x93\xa5\xaa\xc2\xce\x97\x95\xa6\x8f\x86\x78\x18\x89\x85\x8b\x89\x8a\x1a\x78\x94\x81\x9b\x99\x94\x95"
+"\xa1\x90\x1e\x92\xac\x05\x8d\x92\x8c\x94\x8f\x1a\x9b\x7e\x93\x71\x57\x76\x7e\x42\x4b\x1e\x4d\x45\x81\x82\x6f\x87\x08\x0e\xf7\x47"
+"\xf8\x1c\x15\x8b\x0a\x7b\x95\x80\x9f\x83\x1f\x74\xc2\xcd\x7f\xce\x1b\xe2\xc6\x98\xa8\xb8\x1f\xb4\xa6\xa1\xaf\xb3\x1a\xb8\x72\xa8"
+"\x57\x99\x1e\xcc\xa3\xac\xaf\xbc\x1a\xcb\x4a\xb3\x21\x39\x51\x7c\x6a\x61\x1e\x0e\x72\x1d\x0e\x72\x1d\xfb\xcf\xf7\x45\x15\x92\x07"
+"\x97\x82\x93\x7e\x77\xf7\x35\x1d\xa3\x9d\xaa\xa0\x28\x0a\x7d\x80\x82\x7c\x86\x1e\x61\x7e\x5d\x70\x53\x1b\x5c\x67\xa3\xab\x8e\x8b"
+"\x8d\x8c\x8e\x1f\x0e\xa2\x1d\xf8\x8d\xf8\x04\x15\xae\x06\xa5\x3a\x1d\xfc\x08\x20\x0a\xb9\x06\x5b\xfb\x71\x05\x41\x7b\x65\x67\x4e"
+"\x1b\x82\x85\x8c\x8c\x81\x1f\x90\xaa\x05\x8c\x8e\x8b\x8f\x8e\x1a\x9d\x82\x95\x7b\x7c\x82\x81\x77\x88\x1e\x84\x66\x05\x89\x7f\x8a"
+"\x85\x86\x1a\x78\xa4\x7f\xb4\xf0\xc4\xbd\xf7\x00\xa3\x1e\xbb\xf7\x73\x05\xf7\x4f\x25\x0a\x69\x22\x0a\xf7\x0c\x06\xa4\x99\x94\x9b"
+"\x9c\x7e\x94\x71\x1f\x6a\x06\x0e\xf7\xc4\xb3\x15\xf7\x65\xf7\xd2\x49\xfb\xc7\x05\x45\x8d\x1d\xf7\x28\x3e\x1d\x70\x06\xcf\xf7\xd1"
+"\x05\x9f\x5e\x1d\x20\x06\xfb\x69\xfb\xd9\x3d\xf7\xd9\x05\x24\x33\x0a\x9d\x06\x47\xfb\xd1\x05\x6e\x06\x73\x7e\x69\x1d\xf7\x29\x06"
+"\xa2\x6d\x1d\x48\x06\xcd\xf7\xca\xdb\xfb\xd5\x05\x0e\xf8\x3f\xf7\x53\x15\x6c\xfb\x20\x05\x63\x06\x73\x7e\x81\x79\x7c\xf7\x26\x1d"
+"\xcf\xf7\xd1\x05\xac\x23\x0a\xfb\x0c\x06\x73\x7e\x81\x79\x7c\x95\x83\x9d\x1f\xad\x06\x70\xfb\x12\x05\xfb\x93\x6e\x0a\x77\x1f\xfb"
+"\x0b\x06\x73\x7d\x81\x78\x7d\x95\x83\x9e\x1f\xa9\x57\x1d\xaa\xf7\x20\x05\x0e\xf7\xf1\x56\x1d\x0e\xf8\x64\xf8\x04\x15\x47\xfb\xd1"
+"\x05\x5a\x24\x1d\xf7\x1f\x23\x0a\x65\x06\xd2\xf7\xd1\x05\xa5\x31\x1d\xfc\x3d\x45\x0a\xaf\x57\x1d\xcf\xf7\xd1\x05\x0e\xf7\x58\xf8"
+"\x37\x15\x25\x26\x0a\xba\x06\xfb\x00\xfc\x87\x4d\x1d\xf7\x55\x06\xa2\x99\x96\x9e\x9a\x83\x91\x77\x1f\x30\x06\xbb\xf7\x75\x05\x51"
+"\xae\xbc\x71\xd4\x1b\xf7\x24\xf7\x15\xf7\x0c\xf7\x1a\xf1\x43\xce\xfb\x03\x41\x55\x73\x50\x4c\xf7\x4b\x1d\xfb\x00\x35\x52\xbe\xd8"
+"\xef\xf7\x23\x0a\xf8\x8c\xf8\x15\x15\xab\x68\x5b\x9b\x50\x1b\xfb\x30\xfb\x19\xfb\x13\xfb\x29\x22\xd5\x47\xf7\x06\xcf\xd3\x9f\xae"
+"\xc6\x1f\xb2\xa2\x9c\x9c\x9c\x1a\x96\x82\x93\x7f\x83\x87\x89\x83\x80\x1e\x64\x6e\x7d\x82\x6a\x80\x08\x7d\x66\x62\x84\x67\x1b\x31"
+"\x53\xbe\xdb\xb9\x9d\xbc\xac\xb3\x1f\xc0\xb5\xc7\xa7\xd2\x1b\xb5\xb1\xe0\x1d\x80\x77\x87\x1e\x0e\xf7\xfb\xf8\x04\x15\xf7\x2e\x06"
+"\x6e\xfb\x16\x8a\x7e\x05\x7e\x93\x84\x98\x9c\x96\x96\x9e\x8f\x1e\xb3\xf7\x4c\x05\xfc\x64\x06\x64\xfb\x49\x05\x89\x83\x8b\x89\x88"
+"\x1a\x7e\x93\x84\x98\x9c\x96\x96\x9e\x90\x1e\xa7\xf7\x19\x05\xf7\x2e\x06\x47\xfb\xd1\x05\x27\xc9\x0a\x9d\x1f\xf7\x8f\x6c\x0a\x28"
+"\x06\x0e\xb3\x1d\x0e\xf8\x23\xf8\xb6\x15\x8d\x94\x8c\x92\x90\x1a\x9a\x81\x94\x7a\x1e\x8a\x06\x7e\x8a\x48\x87\x05\x71\x89\x7e\x82"
+"\x7b\x1a\x7b\x96\x82\x9c\x90\x90\x8b\x8c\x8f\x1e\xba\x8f\x71\xfb\x0f\x05\x98\x77\x7c\x8f\x72\x1b\x52\x57\x6a\x4d\x62\x1f\x63\x50"
+"\x76\x46\x45\x1a\x30\xbd\x4c\xd3\x9b\x97\x8d\x91\xa7\x1e\x78\x2c\x05\x3a\x20\x0a\xf7\x69\x21\x0a\x3b\x06\xa2\xf2\x05\x7e\x9c\x9d"
+"\x86\xa4\x1b\xc4\xbd\xaa\xc8\xb4\x1f\xb3\xc5\xa0\xcf\xd0\x1a\xf1\x5e\xc7\x3e\x77\x7d\x88\x82\x74\x1e\x7f\x4d\x15\x9b\x9f\x9e\x92"
+"\xa1\x1b\xbc\xa4\x65\x43\xfb\x0e\x41\xfb\x06\x3d\x75\x7e\x92\x9b\x7d\x1f\x57\x8d\x15\x7a\x77\x79\x84\x74\x1b\x59\x70\xb0\xd0\xc5"
+"\x9b\xc2\xaa\xbd\x1f\xbe\xac\xae\xa4\xb5\x1b\xa1\x97\x85\x7c\x97\x1f\x0e\xf7\xe7\xf7\x6e\x15\x8a\x0a\xf7\x18\x2a\x1d\x84\x06\x0e"
+"\xf8\xac\xbe\x15\x28\xba\x1d\xf8\x44\x06\x76\x33\x05\x89\x82\x8b\x8a\x7e\x0a\x95\xa0\x90\x1e\x0e\xf8\x16\xbe\x15\x22\x20\x0a\xf7"
+"\x54\x06\xa5\x98\x80\x0a\x69\x06\xcf\xf7\xd1\x05\xb2\x2b\x0a\xfb\x14\x22\x0a\xaf\x06\x6f\xfb\x11\x05\x60\x37\x55\x7a\x52\x1b\x60"
+"\x74\x99\xa6\x95\x8d\x97\x8e\x9a\x1f\xa3\xf6\x05\xb8\x06\xa5\xbc\x0a\x58\xb8\x6a\xd1\xc7\xc5\x9a\xad\xd0\x1e\x0e\xb1\xbe\x15\x62"
+"\x24\x1d\xf8\xb1\x5e\x1d\x5d\x8e\x0a\x0e\xf8\xe3\xbe\x15\x29\x8e\x0a\x47\x7e\x1d\xf8\xae\x06\x76\x33\x05\x8a\x88\x8a\x84\x88\x1a"
+"\x7f\x93\x83\x98\x9c\x28\x1d\x0e\xee\xf8\x04\x15\xf7\x1b\x06\x47\xfb\xd1\x05\x5a\x33\x0a\xf7\x6f\x06\xf7\x18\xc9\xb3\xe1\xdb\x52"
+"\xaf\xfb\x13\x1f\x3d\x06\xa6\xf7\x12\x05\xc6\x06\xa3\x98\x95\x9e\x9a\x81\x92\x79\x1f\xfb\xbb\x06\x6a\xfb\x1e\x05\x8a\x85\x8a\x86"
+"\x88\x1a\x7e\x93\x84\x98\x9b\x97\x96\x9f\x90\x1e\xf7\x20\xfb\x77\x15\xaa\xf7\x20\x05\xca\x06\xf7\x07\xb5\x78\x57\x59\x64\x78\x27"
+"\x1f\x0e\xf7\x45\xf8\x04\x15\xc6\x31\x1d\xfb\x38\xf4\x1d\xf7\x73\x06\xde\xc0\x97\xa3\xa3\x1f\xa0\xa0\x98\xac\xad\x1a\xd9\x4d\xb3"
+"\xfb\x0e\x1e\x38\x06\x63\xfb\x53\x15\xaa\xf7\x20\x05\xce\x06\xf7\x09\xb3\x79\x56\x58\x66\x79\x24\x1f\xf7\xef\xf7\xd1\x15\xa3\x06"
+"\xa3\xf7\x08\x0a\x27\xe2\x0a\x9f\x1f\xa2\x06\x48\xfb\xd1\x05\x73\x2b\x1d\xf3\x6c\x0a\x6e\x06\x0e\xf7\x64\xf8\x04\x15\xcc\x3e\x1d"
+"\xfb\x3f\xf4\x1d\xf7\xb0\x06\xf7\x1a\xc7\xb0\xde\xda\x4a\xb6\xfb\x0a\x1f\xfb\x25\x06\x63\xfb\x53\x15\xaa\xf7\x20\x05\xf7\x14\x06"
+"\xf7\x03\xb9\x76\x58\x5c\x60\x76\x2b\x1f\x0e\xf8\x6a\xf7\x54\x15\x31\x74\x2e\x48\x27\x1b\x4c\x59\x9e\xb6\x55\x1f\x97\x7c\x84\x8e"
+"\x82\x1b\x7d\x80\x80\x7d\x79\xa4\x75\xbb\x73\x1f\x6f\xc3\xb3\x80\xbe\x1b\xdc\xcd\xa5\xc3\xc4\x1f\xc2\xc0\xa7\xc8\xcf\x1a\xf7\x03"
+"\x3b\xd5\xfb\x0c\x44\x4f\x75\x60\x5d\x1e\x8c\x98\x8b\x91\x90\x1a\x9c\x83\x95\x7c\x78\x84\x7f\x63\x86\x1e\x83\x4f\x05\x89\x7f\x8b"
+"\x86\x85\x1a\x7a\x94\x80\x99\x99\x92\x92\x9d\x94\x1e\x94\x9e\x92\x98\x96\x98\x08\xae\xa9\xc4\xa0\xcf\x1b\xc1\xb0\x7e\x70\xa4\x1f"
+"\xa0\x73\x97\x6c\x6b\x1a\x89\x8b\x85\x8a\x87\x1e\xfb\x8f\x36\x1d\x0e\xf7\x5f\xf7\x53\x15\x8a\x83\x8b\x83\x7f\x1a\xfb\x01\xc9\x45"
+"\xed\xc4\xc1\xa5\xb9\xaf\x1e\xb6\xc0\xa5\xda\xd4\x1a\xf5\x52\xcd\x2f\x2b\x35\x40\xfb\x08\x69\x1e\x46\x6e\x0a\x78\x1f\xfb\x0c\x06"
+"\x73\x7d\x43\x1d\xa9\x57\x1d\xaa\xf7\x20\x05\xf7\xb6\xf7\x53\x15\xcd\xb0\x5d\x3a\x46\x74\x49\x64\x61\x1f\x6e\x70\x6d\x7d\x65\x1b"
+"\x43\x60\xbe\xdf\xc0\x9c\xbe\xac\xb5\x1f\xb8\xad\xb2\xa0\xb9\x1b\x0e\xf8\x90\xf8\x03\x15\xb5\x06\xa5\x99\x94\x9c\x9c\x7d\x94\x71"
+"\x1f\xfb\x7b\x06\xfb\x0c\x42\x58\x36\x54\xad\x6a\xd1\x80\x1f\x64\x70\x52\x56\x5c\x56\x08\x52\x20\x0a\xc0\x06\x9e\x8f\x8c\x8d\x8f"
+"\x1f\x92\x90\x8c\x8d\x98\x9a\xef\xf7\x04\xc9\xb7\xbf\x89\x08\xcf\x06\x6e\xfb\x14\x05\x58\x20\x0a\xf7\x27\x21\x0a\x61\x06\x9b\xf7"
+"\xd0\x15\x6d\xfb\x1e\x05\xfb\x12\x06\x3c\x65\x9e\xb3\xc0\xbd\xa5\xf0\x1f\x0e\xf8\xb4\xf8\x37\x15\xfc\x3d\x24\x0a\x79\x7d\x95\x83"
+"\x9d\x1f\xeb\x06\x48\xfb\xd1\x05\x26\x24\x1d\xf7\x8e\x23\x0a\x29\x06\xcf\xf7\xd1\x05\xf7\xda\x06\xb3\xf7\x49\x8c\x99\x05\x98\x83"
+"\x92\x7e\x7a\x80\x80\x77\x87\x1e\x0e\xcf\x0a\x5b\x06\x74\x7f\x81\x79\x7c\x94\x83\x9c\x1f\xb9\x06\x31\xfc\x33\x5a\x1d\xc0\xf7\x86"
+"\x05\xd7\xe2\xa3\x98\xc2\x1b\xc7\xac\x70\x5c\x85\x8b\x8a\x88\x7f\x1f\x49\xfb\xca\x7c\x4b\x51\x5b\x4e\x8d\x19\xfb\x14\xf7\x5b\x1d"
+"\xf7\x14\x06\xe8\xde\xcf\xe6\x9c\x1f\xcf\xf7\xcc\x05\x8d\x96\x8c\x93\x94\x1a\xd1\x54\xb9\x39\x56\x56\x75\x60\x56\x1e\xa0\xed\x05"
+"\xf7\x25\x06\xa6\x9a\x95\x9c\x9b\x7f\x93\x76\x1f\x0e\xc2\x1d\xf7\xdc\xdc\x1d\xf7\x25\xf7\x86\x15\xe5\xb3\xd4\xbd\xe8\x1b\xd4\xc5"
+"\x68\x5f\x88\x8b\x88\x8a\x89\x1f\x89\x07\x8a\x85\x8b\x8b\x89\x1a\xf7\x54\x1d\x9f\x90\x1e\x9e\xe4\x05\x8c\x91\x8c\x8f\x8e\x1a\x98"
+"\x83\x93\x7e\x79\x82\x81\x73\x84\x1e\xab\x68\x5d\x9b\x4f\x1b\x3b\x49\x6f\x51\x53\x1f\x55\x54\x6f\x48\x46\x1a\x21\xd4\x49\xf7\x09"
+"\xf3\xf7\x25\xcd\xba\x96\x83\x93\x7f\x83\x85\x88\x83\x80\x1e\x5c\x4b\x4c\x74\x47\x1b\x32\x52\xbd\xda\x94\x8c\x94\x8c\x94\x1f\xf7"
+"\x91\x06\xa7\xf7\x22\x0a\xc8\xac\x15\xf7\x55\x1d\x95\x82\x97\x9b\x28\x1d\x8c\x07\x6b\xac\xba\x7b\xca\x1b\xf7\x16\xf7\x61\x1d\xa1"
+"\x68\x96\x4e\x91\x40\x93\x8b\x8b\x76\x94\x08\x78\x93\x7d\x9b\x9a\x1a\xb4\xcc\xae\xd7\xaf\xaa\x84\x7f\x9e\x1e\x94\x85\x9d\x77\xf7"
+"\x0e\x1d\x8f\x1a\x96\x82\x94\x7e\x7e\x80\x81\x7b\x85\x1e\xa5\x6f\x60\x99\x55\x1b\xfb\x04\xec\x0a\xc0\x85\xa3\x85\xa2\xf7\x46\x1d"
+"\x3f\x53\x6b\x0a\x81\x94\x7f\x7a\x81\x81\x76\x87\x1e\x0e\xce\x1d\xf7\x0e\xf8\xcf\x77\x0a\xf8\x07\xf8\x37\x15\xfb\x39\x06\x74\x7c"
+"\x7f\x79\x7d\x95\x84\x9e\x1f\xf7\x03\x25\x0a\xfb\x2e\x55\x0a\xf7\xf9\x2a\x1d\xfb\x2c\x06\x55\xf8\xaf\x15\x6f\x71\x72\x70\x76\x9b"
+"\x7c\xa0\xa9\xa4\xa3\xa8\x9f\x7c\x9a\x74\x1f\xf7\x63\xd9\x0a\xf8\x53\x9e\x0a\xf8\x38\xf8\x04\x15\xae\x21\x0a\xfb\xa6\x22\x0a\xb9"
+"\x06\x5b\xfb\x71\x05\x43\x7b\x65\x65\x52\x1b\x80\x83\x8c\x8e\x81\x1f\x92\xa8\x05\x8d\x93\x8b\x8c\x8f\x1a\x9b\x82\x94\x7c\x7c\x80"
+"\x80\x77\x87\x1e\x83\x64\x05\x89\x82\x8a\x84\x87\x1a\x78\xa6\x7f\xb6\xed\xc2\xbc\xf7\x01\xa3\x1e\xbc\xf7\x73\x05\xe3\x25\x0a\x75"
+"\x22\x0a\xe8\x06\xd1\xb9\x99\xac\xaa\x1f\xa5\xa5\x9a\xb0\xaf\x1a\xca\x5a\xad\x2f\x1e\x74\x06\x80\x58\x15\xa7\x06\xcf\xa4\x7e\x68"
+"\x51\x5c\x68\x3c\x1f\x71\x06\x0e\xf7\x91\xf7\x53\x15\x6d\xfb\x20\x05\x71\x24\x1d\xf7\x41\x06\xf7\x12\xc3\xb1\xe1\xb7\x7b\xa8\x68"
+"\x9e\x1f\x9c\x6c\x62\x94\x5b\x1b\x51\x06\xa7\xf7\x12\x05\xc5\x23\x0a\xfb\x1d\x3a\x0a\xa6\x06\x6f\xfb\x12\x05\xfb\x15\x06\xa4\xf7"
+"\x12\x05\xa0\x06\xa3\x6d\x1d\x29\x06\x73\x7e\xf7\x17\x0a\xa3\x06\x47\xfb\xd1\x05\x6b\x24\x1d\xf7\x06\x06\xa3\x99\x96\x9d\x99\x81"
+"\x93\x77\x1f\x6e\x06\xaa\xf7\x20\x05\xf7\x2d\xfb\x20\x15\xaa\xf7\x20\x05\xb5\x06\xf1\xb4\x77\x5a\x5c\x60\x73\x38\x1f\x0e\xcf\x0a"
+"\x5e\x06\x72\x7e\x82\x7a\x7b\x96\x82\x9f\x1f\xb4\x06\x31\xfc\x33\xb5\x1d\x56\x76\x5f\x56\x1e\xa0\xed\x05\xf7\x29\x06\xa3\xf7\x22"
+"\x0a\xa3\x1d\x34\xdc\x1d\xf7\x48\xf8\x04\x15\xac\x2b\x0a\x21\x22\x0a\x9c\x06\xf7\x05\xfb\xe3\x61\x53\x05\x56\x62\x74\x7a\x69\x1b"
+"\x82\x87\x8c\x8d\x7f\x1f\x95\xb9\x05\x8e\x94\x8b\x8e\x90\x1a\x9b\x82\x95\x7b\x7c\x82\x81\x74\x86\x1e\x7f\x54\x05\x89\x81\x8a\x86"
+"\x87\x1a\x77\xab\x7b\xb6\xc3\xaf\xa2\xd3\xc3\x1e\xf7\xd6\xf8\x35\x05\xa1\x2b\x0a\x25\x36\x1d\x9c\x06\xfb\x71\xfb\xb2\x05\x80\xf8"
+"\x93\x15\x8c\x07\x8c\x8e\x8b\x8f\x8e\x1a\x96\x82\x93\x7f\x76\xf7\x35\x1d\xa2\x9d\xab\xa0\x28\x0a\x7c\x81\x82\x79\x85\x1e\x64\x7e"
+"\x5c\x70\x55\x1b\x5c\x67\xa4\xab\x1f\x0e\xf7\xb7\x16\xf7\x68\x06\xa3\x99\x96\x9d\x99\x81\x93\x77\x1f\x49\x96\x0a\xf7\x59\xf7\x37"
+"\x1d\x9c\x96\x96\x9f\x90\x1e\x0e\x89\x0a\xcb\xf7\x72\x15\x84\x66\x89\x7d\x7b\x1a\x27\xdb\x44\xf7\x04\xf7\x2c\xf7\x19\xf7\x0e\xf7"
+"\x1f\xf7\x03\x39\xd8\xfb\x0c\x23\xfb\x18\x59\x63\x7f\x93\x82\x98\x91\x8f\x8c\x92\x95\x1e\xab\xbd\xd3\x9f\xcb\x1b\xe9\xcc\x51\x36"
+"\x88\x8b\x84\x8a\x84\x1f\xfc\x09\x58\x15\xf7\xfd\x06\x39\x69\x36\x55\x2e\x1b\x33\x4e\xc0\xd8\x1f\x0e\xf8\x72\xf7\xac\x15\x54\x62"
+"\x79\x64\x68\x1f\x6e\x6a\x7a\x5f\x63\x1a\x48\xb2\x66\xd3\xbf\xb5\x9e\xb1\xad\x1e\xa8\xac\x9c\xb6\xb4\x1a\xcd\x63\xb1\x47\x1e\x7a"
+"\x5c\x15\xbb\xa5\x73\x5d\x4c\x5b\x58\x4f\x5a\x71\xa3\xba\xa3\x93\xa4\x9a\x9f\x1f\xa9\xa1\xa6\x99\xb0\x1b\xf7\x4c\xf7\xed\x15\x93"
+"\x94\x8f\x94\x93\x1a\x97\x83\x93\x80\x80\x83\x86\x80\x81\x1e\xfc\xaf\xfc\xef\x05\x83\x82\x87\x83\x82\x1a\x7f\x93\x83\x97\x94\x94"
+"\x90\x96\x95\x1e\xf7\x98\xf8\x29\x15\x90\x88\x87\x8e\x85\x1b\x86\x87\x8a\x86\x85\x1f\x74\x69\x6f\x81\x70\x1b\x62\x71\xa7\xb6\xca"
+"\xbc\xbe\xc7\x9f\x9b\x86\x81\x96\x1f\x93\x83\x8d\x85\x75\x1a\x80\x93\x83\x94\x8d\x1e\x8d\x8c\x93\x8c\x05\x95\x8c\x94\x94\x95\x1a"
+"\x8d\x07\x8e\x07\x9f\x8e\x9b\x90\x97\x1e\x92\x9b\x8b\x8b\x90\x1a\x95\x84\x92\x82\x80\x85\x87\x7e\x80\x1e\x9a\x6f\x7e\x8f\x73\x1b"
+"\x31\x3c\x39\x2f\x4c\xb4\x61\xc7\xb1\xc5\xa0\xa2\xa6\x1f\x94\x93\x8f\x92\x94\x1a\x8f\x8b\x8d\x8a\x8c\x1e\x0e\xf7\x50\xf7\x22\x15"
+"\x8d\x45\x8e\x76\x95\x76\x08\x72\x98\x9f\x7d\xa3\x1b\xa8\xa3\x99\xab\xa8\x1f\x9d\x9f\x9b\xa0\x96\x9e\x90\x94\x18\x8d\x8e\x8c\x8f"
+"\x8f\x1a\x92\x85\x90\x84\x84\x86\x87\x82\x84\x1e\x80\x7b\x05\x6c\x75\x7a\x7d\x7c\x1b\x79\x84\x9e\xc0\x97\x8b\xa4\x8c\xa0\x1f\x9e"
+"\x07\xaf\x07\xf7\x1e\xf7\x44\xbe\xec\xe1\x1a\xc1\x6e\xae\x5f\x5f\x5a\x6a\x52\x64\x1e\x60\x4b\x74\xfb\x01\x88\xfb\x3d\x8a\x4e\x18"
+"\x74\x6f\x86\x85\x79\x76\x88\x88\x19\x76\x75\x05\x85\x85\x89\x86\x86\x1a\x87\x07\x84\x8f\x8e\x88\x91\x1b\x96\x8b\x8b\xb9\xb7\x1f"
+"\xec\xf7\x3d\x15\x8d\xb1\x05\xf7\x6d\x95\x9e\xd0\xbc\x1b\xa2\x9a\x76\x6b\x44\x64\x2f\x45\x2b\x1f\x0e\xf7\x2a\xf8\x94\x15\x3f\x0a"
+"\x72\x20\x0a\xf7\x07\x21\x0a\x63\x06\xe4\xf8\x2f\xd8\xfc\x32\x05\x66\x92\x94\x80\xa1\x1b\xa3\x93\x95\xb1\x93\x1f\xf0\xf8\x64\x05"
+"\xa3\x4c\x1d\xfb\x06\x22\x0a\xb3\x06\x33\xfc\x28\x3d\xf8\x39\x84\xab\x89\x8c\x6a\x8c\x19\x58\x20\x0a\xf8\x76\x39\x15\x8c\x91\x8c"
+"\x8f\x8f\x1a\xac\x71\xa4\x69\x71\x6e\x78\x74\x80\x1e\x83\x7b\x6f\xfb\x12\x79\x1a\x6e\xa6\x75\xac\xb3\xa5\xa4\xba\x96\x1e\x59\x8e"
+"\x15\x7b\x88\x84\x84\x7e\x1b\x82\x87\x8e\x92\x8e\x8b\x8d\x8c\x90\x1f\xa3\xf7\x01\x05\x99\x8e\x92\x91\x98\x1b\x94\x8e\x88\x82\x1f"
+"\x86\x07\x51\xfb\xb9\x15\xa5\x98\x94\x9d\xa1\x81\x8f\x57\x61\x7f\x85\x77\x79\x99\x82\xa5\x1f\x0e\xf8\xdf\xf7\x6b\x15\xf7\x02\xf7"
+"\x3a\x05\x91\x94\x8e\x94\x91\x1a\x96\x83\x93\x80\x7e\x82\x84\x7a\x80\x1e\x3f\xfb\x07\x81\xb3\x83\x9e\x7a\xa0\x19\xb7\x6a\x55\xa3"
+"\x4b\x1b\xfb\x29\xfb\x1d\xfb\x15\xfb\x20\x22\xda\x40\xf7\x02\xc9\xcd\xa4\xb5\xb8\x1f\xa6\xa4\x9e\xa1\xa9\xb8\xa2\xfb\x11\x18\x72"
+"\x90\x91\x84\x9a\x1b\x9c\x97\x98\x9d\x8f\x8b\x8e\x89\x94\x1f\x37\xf7\x4c\x15\x6f\x5f\x05\x2b\x4d\x4c\x61\x3b\x1b\x37\x4f\xc5\xda"
+"\xf7\x01\xf7\x00\xf0\xf7\x08\xd6\xbe\x64\x46\x9a\x1f\x0e\xf8\x62\xbe\x15\xf7\x12\x07\xc7\xd7\xcf\xf7\x10\xac\x1a\x98\x81\x95\x7e"
+"\x7d\x82\x83\x78\x83\x1e\x79\x5c\x6e\x55\x6a\x5a\x08\xf7\x07\x76\x4e\xc9\x2f\x1b\xfb\x10\xfb\x03\xfb\x16\xfb\x25\x23\xca\x45\xe8"
+"\xd1\xba\xa7\xec\xe5\x1f\xfb\x01\xe2\x07\xa3\x52\x0a\x2b\xf7\x21\x15\x67\x5c\x7f\x7d\x75\x75\x08\x57\x56\x61\x75\x60\x1b\x4e\x61"
+"\xbd\xd4\xf7\x09\xe3\xf6\xeb\xdb\xb1\x52\xfb\x19\x94\x1f\xad\xf8\x1f\x15\x98\x95\x91\x94\x96\x1a\x96\x82\x94\x7f\x84\x7a\x0a\x82"
+"\x54\x0a\x37\x0a\xd8\xf7\xda\x2c\x1d\xf7\x4f\xf7\x98\x15\xf7\x51\xfb\xfe\x05\x7c\x93\x95\x83\x95\x1b\x92\x8e\x8e\x93\x90\x8a\x8f"
+"\x87\x97\x1f\xfb\x24\xf7\xf5\xf7\x24\xf7\xf6\x05\x8e\x92\x8d\x94\x92\x1a\x91\x88\x8e\x84\x81\x86\x87\x78\x7e\x1e\x0e\xf8\x32\xf7"
+"\x98\x15\xfb\x51\xf7\xff\x05\x9d\x7f\x85\x90\x81\x1b\x84\x88\x88\x85\x84\x8d\x82\x8e\x84\x1f\xf7\x24\xfb\xf6\xfb\x24\xfb\xf5\x05"
+"\x87\x7f\x8a\x87\x86\x1a\x83\x8e\x88\x92\x95\x95\x93\x9a\x93\x1e\x0e\xf8\x70\xbe\x15\xc2\xf7\x93\x05\x8d\x93\x8c\x94\x91\x1a\xc9"
+"\x51\xb5\x36\x6a\x0a\xd8\xa5\x90\xad\x1b\xca\xb2\x73\x66\xf7\x16\x1d\x29\x48\xbf\x63\xe0\xd0\xc6\xa1\xbf\xd3\x1f\x7f\x51\x05\xb2"
+"\x06\x57\x70\x70\x69\x63\x65\x0a\xab\xad\xaa\xcf\xa7\x1f\x9d\x93\x93\x94\x99\x1a\x9a\x83\x91\x76\x1e\x37\xcf\x15\x4e\x3b\x53\x74"
+"\x43\x1b\x52\x6a\xa2\xb4\xcc\xdf\xbc\xf7\x04\xb6\xb4\x86\x82\xae\x1f\x0e\xf8\x82\xf8\x2a\xf7\x38\x1d\x88\x8c\xb3\x58\x1f\xb7\x53"
+"\x7c\xf7\x0c\x0a\x7e\x72\x0a\xc0\xb6\x95\x7b\x0a\x56\xcb\xa1\x7f\xac\x1b\xac\xaa\x9d\xb4\xae\x1f\x9d\xa1\x93\x97\x9d\x1d\xfb\x20"
+"\x04\x7e\x87\x87\x74\x7a\x1f\x6a\x73\x75\x7b\x75\x1b\x7b\x8a\x8c\xb3\x56\x1f\xb7\x54\x7b\x93\x6a\x1b\x68\x71\x7c\x63\x68\x1f\x75"
+"\x73\x83\x7e\x72\x0a\xc0\xb6\x95\x7b\x0a\x55\xcc\xa0\x80\xac\x1b\xac\xaa\x9e\xb4\xae\x1f\x9e\xa0\x92\x98\x9d\x1d\x0e\x37\x0a\x7c"
+"\xf8\x5f\x5c\x1d\x7a\x74\x95\x1d\xb8\xf7\x04\x15\x9a\x95\x8f\x71\x0a\x87\x89\x83\x7f\xf7\x0d\x1d\xf7\x35\xf7\x9e\x15\xa9\xb8\x9a"
+"\xaa\x9a\x1a\x93\x83\x91\x82\x84\x87\x88\x7e\x80\x1e\x6c\x68\x6e\x74\x4f\x69\x08\x78\x81\x87\x87\x84\x1a\x85\x8f\x85\x92\x87\x1e"
+"\x91\x88\x8c\x8a\x8f\x89\x91\x88\x19\x99\x82\xbc\x6e\xa3\x77\xad\x64\x19\x84\x91\x8f\x89\x92\x1b\x94\x92\x92\x93\x9a\x76\xb5\x73"
+"\xab\x1f\xf7\xb3\x9c\x0a\x0e\xf7\x9b\xf8\xae\x15\xfc\x34\x07\xa2\x6c\x5e\xa1\x7c\x1b\x83\x84\x84\x82\x84\x8d\x87\x93\x85\x1f\xb8"
+"\x65\x9a\x79\xb8\x41\x08\x7e\x92\x8e\x88\x94\x1b\x92\x8f\x90\x9c\x95\x1f\xab\xc3\xa5\xab\xaf\xa9\x08\x98\x96\x8e\x90\x91\x1a\x94"
+"\x85\x93\x83\x7c\x6b\x7c\x6e\x5d\x1e\xf8\x33\x07\x0e\xf8\xdd\xf7\x9f\x15\xfc\x3c\x06\xa3\xab\xa0\xb5\x9a\x1a\x93\x84\x92\x82\x84"
+"\x87\x89\x84\x85\x1e\x64\x5e\x78\x7c\x41\x60\x08\x7d\x83\x88\x88\x83\x1a\x84\x8f\x87\x9e\x81\x1e\xc6\x6a\xaa\x73\xa9\x68\x08\x7f"
+"\x95\x90\x87\x91\x1b\x95\x93\x91\x93\x9a\x7b\xab\x6e\xb7\x1f\xf8\x3c\x06\x0e\xa3\xf7\x6b\x15\xf8\x3c\x9c\x0a\xfc\x3c\x06\x0e\xf7"
+"\xd0\x7f\x15\xf8\x34\x07\x75\xaa\xb8\x75\xf7\x56\x1d\x89\x8f\x83\x91\x1f\x63\xac\x79\xa0\x6c\xbd\x88\x8f\x88\x8f\x88\x91\x88\x90"
+"\x88\x90\x8a\x8c\x08\x98\x84\x88\x8e\x82\x1b\x84\x87\x87\x79\x81\x1f\x69\x51\x74\x6e\x66\x6c\x08\x7e\x81\x88\x86\x85\x1a\x81\x91"
+"\x84\x93\x9a\xa9\x99\xa9\xbb\x1e\xfc\x34\x07\x0e\xf7\xa6\xf7\x02\x15\xa7\x5f\x69\x9b\x7c\x1b\x84\x84\x83\x82\x85\x8f\x86\x97\x80"
+"\x1f\xae\x6e\xa5\x6b\xac\x52\x08\x79\x95\x8f\x87\x92\x1b\x92\x90\x8e\x93\x8f\x1f\xb7\xd4\x9e\xa4\xb8\xb0\x08\x92\x91\x8e\x8f\x92"
+"\x1a\x94\x84\x92\x83\x7c\x5f\x75\x74\x6b\x1e\xf7\xae\x07\x74\xab\xb7\x76\xca\x1d\xab\x9a\xa8\xb9\x1e\x0e\xf7\x57\x63\x15\x5f\xf7"
+"\x6a\xb7\x07\xfb\x18\xf7\x51\x15\xa7\x5f\x69\x9b\x7c\x1b\x84\x84\x83\x82\x85\x8f\x86\x97\x80\x1f\xae\x70\xa5\x6a\xac\x52\x08\x79"
+"\x95\x8f\x87\x92\x1b\x92\x90\x8e\x92\x8f\x1f\xb6\xd5\x9f\xa3\xb8\xb0\x08\x92\x91\x8e\x8f\x92\x1a\x94\x84\x92\x83\x7c\x5e\x75\x75"
+"\x6c\x1e\xf7\xad\x07\x75\xaa\xb8\x75\xca\x1d\xac\x9a\xa8\xb8\x1e\x0e\xf7\x26\xbf\x15\x5d\xb3\xba\x75\xc8\x1b\xf7\x07\xf1\xf0\xf7"
+"\x07\xb2\x7a\xaf\x6d\xa4\x1f\x78\x9b\x7b\x92\x68\x92\x08\xda\xaa\xb4\xbe\xd0\x1a\xd4\x54\xbb\x36\x4f\x56\x73\x60\x67\x1e\x71\x6d"
+"\x7a\x5d\x79\x35\xfb\x03\xfc\x98\x18\x8a\x88\x8b\x87\x88\x1a\x7d\x96\x80\x99\x99\x94\x94\x9b\x8f\x1e\xf7\x49\xf8\x54\x15\xa7\x8a"
+"\x9e\x8a\x94\x8a\x08\xd8\x81\xb4\x6b\x58\x1a\x65\x7a\x63\x6c\x6a\x1e\x67\x69\x65\x7a\x5d\x1b\x49\x4e\xba\xbd\x93\x8e\x9f\x92\xa7"
+"\x1f\xb8\xf7\x61\x05\xf7\x01\xa3\xba\xbc\xdc\x1b\xc4\xab\x72\x60\x4e\x5d\x66\xfb\x04\x6e\x1f\x84\x8a\x05\x0e\x46\x1d\x9a\xf7\x5c"
+"\x3d\x1d\x46\x1d\xfb\x25\xe6\x15\xf7\x32\xf7\x00\x05\x9c\x97\x8f\x6a\x1d\x85\x84\x88\x85\x82\x4f\x0a\x46\x1d\x30\xf7\x8e\x3d\x0a"
+"\x4e\x1d\x91\x8d\x92\x94\x1e\xf7\x0f\xdf\xe1\x38\x05\x84\x92\x90\x88\x92\x1b\x9a\x9a\x99\x9b\x92\x89\x8f\x82\x93\x1f\x0e\x46\x1d"
+"\x29\xf7\x71\x59\x1d\xf7\xc5\xf7\x57\x15\x3e\xf7\x74\x05\x47\x06\x73\x7e\x43\x1d\xb3\x06\xd6\xfb\x73\xfb\x62\xfb\xa6\x05\x81\x7e"
+"\x88\x83\x82\x1a\x7d\x94\x82\x98\x96\x94\x90\x96\x93\x1e\xf7\x51\xf7\x90\xe6\xfb\xa0\x05\xd4\x44\x0a\x5e\x06\x31\xf7\xa0\xf7\x48"
+"\xf7\x88\x05\x94\x96\x8f\x95\x94\x1a\x98\x82\x94\x7e\x80\x82\x86\x80\x83\x1e\x0e\xf7\xad\xf8\x88\x15\xfb\x1e\xfb\x07\xfb\x03\xfb"
+"\x1a\xfb\x22\xf7\x06\xfb\x05\xf7\x24\xf7\x1f\xf7\x05\xf7\x03\xf7\x1c\xf7\x1f\xfb\x08\xf7\x06\xfb\x21\x1f\x8f\xfb\xbe\x15\xf5\x23"
+"\x05\x72\x67\x68\x80\x61\x1b\x60\x6e\x94\xa3\x6c\x1f\x5d\xb8\x15\x70\xaf\x82\xa6\xb4\x1a\xb7\x96\xae\xa3\xac\x1e\xf7\x02\xfb\x00"
+"\x05\xe8\x16\xf7\x02\xf6\x05\xa1\x6d\x94\x72\x66\x1a\x5a\x80\x66\x73\x6a\x1e\xfb\x2c\xf7\x29\x15\xfb\x03\xf7\x00\x05\xa3\xac\xae"
+"\x96\xb5\x1b\xb7\xaa\x81\x72\xae\x1f\x0e\xf8\x82\x16\x9b\x07\xfb\x15\x9e\x50\xce\xf7\x18\x1a\x9c\x6e\x91\x81\x94\x80\x08\x68\xa9"
+"\xba\x73\xb5\x1b\xd1\xc2\xc4\xd4\xd1\x59\xc2\x4c\x78\x80\x88\x7e\x70\x1f\x89\x8a\x82\x86\x86\x89\x08\xa1\xaa\x93\xa3\xa8\x1a\xd0"
+"\x53\xc1\x44\x44\x54\x55\x45\x70\x90\x7d\xa5\x61\x1e\x9c\x68\x78\x91\x76\x1b\x4f\x58\x52\x46\x43\xc3\x53\xd2\xca\xc0\xb1\xd2\xad"
+"\x1f\x8c\x78\x05\x85\x07\x8a\x53\x6e\x4c\x62\x6a\x72\x78\x79\x84\x42\x7c\x08\x7b\x07\x0e\xb4\x0a\x28\xd7\x40\xf2\xd2\xca\xa8\xc8"
+"\xc8\x1f\x7a\x41\x05\xf1\x79\x0a\x5b\x06\xfb\x2b\xf7\xdf\x15\xdd\xc3\x54\x3a\x20\x22\x23\xfb\x00\x36\x53\xc1\xdc\xf7\x03\xf2\xf0"
+"\xf7\x05\x1f\xf8\x25\xf7\x51\xf7\x03\x0a\x87\x7f\x81\x1e\xfb\x03\xfb\x0f\x05\x81\x7f\x88\x85\x83\x1a\x80\x64\x1d\xf8\xff\xf8\x9c"
+"\x15\x9d\xde\x05\xf7\x42\x1d\x84\x6b\x05\xfb\x19\x06\x73\x7e\x80\x77\x7d\x93\x85\x9f\x1f\xf7\x17\x06\x70\xfb\x14\x05\xca\x67\x59"
+"\xa8\x43\x1b\xfb\x23\xfb\x17\xfb\x18\xfb\x23\x27\xd7\x41\xd2\x0a\xe6\xf8\x36\x05\xbd\x06\xa4\x97\x95\x9f\x9a\x83\x91\x77\x1f\xfb"
+"\xc1\xfb\x1e\x15\xdd\xc3\x54\x3a\x20\x22\x23\xfb\x00\x36\x53\xc1\xdc\xf7\x03\xf2\xf0\xf7\x05\x1f\x0e\xf7\xff\xf8\x42\x15\x4f\x81"
+"\x62\x7a\x5d\x68\x08\x47\x56\x61\x3e\x41\x1a\x22\xda\x40\xf7\x03\xf7\x2a\xf7\x1d\xf7\x15\xf7\x20\xb5\x7d\xb2\x70\xa9\x1e\x78\xa1"
+"\x7d\x95\x52\xaf\x08\x38\xbe\x7e\x98\xa9\x1a\x9f\x98\xa4\x9d\x97\x1e\x9a\x9f\xa5\x91\xba\x1b\xcf\x06\xa0\x99\x96\x9c\x97\x81\x92"
+"\x7a\x1f\x4a\x06\x4a\x63\x7f\x6d\x68\x1f\x6d\x71\x79\x68\x69\x1a\x6c\x98\x77\xae\x72\x1e\xac\x53\x15\xe1\xf7\x1f\x0a\x32\xf7\x06"
+"\x0a\xf6\xf7\xa2\x15\xe1\x20\xdc\xfb\x09\xaf\x47\xba\xe0\xe3\xf7\x0f\xdb\xeb\x4d\xd1\xfb\x10\xf7\x44\x6e\xc4\x60\x3a\x53\x3c\xfb"
+"\x06\xfb\x23\x08\x0e\xf8\x6d\xf8\xdf\xbc\x1d\x30\x1d\xfb\x57\xf7\xf4\x32\x0a\x30\x1d\xfb\x0d\xf7\x77\x15\xf7\x32\xf7\x00\x05\x9c"
+"\x97\x8f\x6a\x1d\x85\x84\x88\x85\x82\x4f\x0a\x30\x1d\x2d\xf7\xf9\x59\x1d\xf8\xd9\xf7\x7b\x15\xbe\xfc\x8d\x07\x8f\xf7\x10\xcd\xc7"
+"\xf7\x15\x88\x08\xf7\xc6\xbe\xfb\xba\xf7\x3d\x1d\x49\x99\x50\xa4\x65\x1e\xa2\x68\xae\x6c\xac\x7e\x08\x7c\xaf\xa7\x87\xd4\x1b\xf7"
+"\xba\xbe\xfb\xc6\x06\xfb\x14\x88\x4a\xc5\x85\xf7\x0c\x08\x90\x07\x0e\x30\x1d\x93\xf7\xa5\x2c\x1d\xf7\x7f\xf7\xb7\x15\xd7\xd9\xa8"
+"\x9a\xc8\x1b\xc8\xad\x73\x5e\x84\x8a\x86\x8a\x80\x1f\x47\xfb\xcb\x05\x4a\x7c\x54\x5e\x4b\x1b\x4e\x32\x1d\xc9\x06\xe6\x89\xdf\xd1"
+"\x9e\xe6\xcf\xf7\xd1\x18\x8e\x95\x8c\x96\x93\x1a\xcd\x54\xb7\x39\x4e\x62\x79\x54\x4c\x1e\x98\xc6\x05\x39\x20\x1d\xa7\x25\x0a\x62"
+"\x06\x73\x7d\x80\x78\x7d\x95\x84\x9e\x1f\xf7\x18\x30\x0a\x65\x06\x0e\xa9\x0a\xfb\x01\xdd\x3c\xf7\x05\x94\x9b\x8c\x8c\x9a\x1e\x66"
+"\x6f\x7a\x70\x6b\xee\x1d\xaf\xa8\xa2\xf7\x07\xc3\x1f\xb9\xa0\x9a\x98\x9c\x1a\x97\x82\x94\x7f\x85\x87\x89\x85\x81\x1e\x6d\x5d\x3e"
+"\x75\x4e\x1b\x2c\xd5\x0a\xe3\xcd\x52\x42\x87\x1f\x0e\xf8\x39\xf7\x8f\x15\x82\x8c\x05\x84\x06\x7e\x8a\x05\x42\x5c\xa5\xb3\xb9\xbc"
+"\xab\xd1\xa1\x9c\x89\x87\x98\x1f\x81\xa9\x8b\x8b\x91\x1b\x99\x99\x9a\x9c\x9f\x60\x9a\x50\x25\x38\x4f\x42\x61\xa4\x6f\xbf\x7b\x1f"
+"\x72\x85\x80\x88\x7b\x84\x08\x51\x74\x68\x5d\x56\x1a\x4c\xc1\x66\xe6\xbc\xc7\x96\x99\xaa\x1e\x98\x92\x92\x95\x97\x1a\x98\x84\x92"
+"\x7e\x88\x88\x8a\x89\x84\x1e\x7a\x57\x78\x88\x5f\x1b\x46\x67\x9e\xaf\xae\xa6\xac\xb5\x9d\x1f\x98\xaa\xab\x8f\xc7\x1b\x92\x06\x92"
+"\x06\x0e\xf7\xea\xf7\x55\x15\x93\x8c\x96\xbd\x05\x27\x8f\x64\x9e\xb6\x1a\xb5\xbc\xa9\xce\xb3\xac\x81\x79\x9f\x1e\x93\x84\x90\x7e"
+"\x79\x1a\x71\x92\x82\x9d\x9b\x94\x95\x9e\x8d\x1e\x8d\xa4\x91\xa1\x96\xaa\x08\x8f\x94\x8c\x91\x92\x1a\x98\x81\x95\x7d\x7c\x83\x84"
+"\x77\x84\x1e\x8a\x87\x8a\x8a\x89\x84\x08\xa6\x66\x64\x97\x59\x1b\x2b\x45\x56\x43\x65\x98\x75\xae\x76\x1f\x43\x74\x61\x5b\x4f\x1a"
+"\x44\xca\x62\xf7\x00\xe2\xd1\xa6\xac\x97\x81\x95\x80\x85\x86\x89\x85\x7c\x1e\x7a\x62\x6b\x85\x61\x1b\x44\x60\xa2\xb2\xc3\xd8\xb3"
+"\xf5\x1f\xf7\x14\xf8\x1e\x15\x98\x95\x91\x94\x95\x1a\x98\xeb\x1d\xf8\x9e\xf7\x08\x15\xa1\x96\x94\x9c\x9b\x80\x94\x75\x1f\xfc\x50"
+"\x58\x0a\xf8\x50\xf7\xae\x15\xa1\x96\x94\x9b\x9c\x80\x94\x75\x1f\xfc\x50\x06\x76\x80\x82\x7a\x7b\x96\x82\xa0\x1f\xf8\x50\xfb\x21"
+"\xf7\x5d\x1d\xfc\x50\x58\x0a\x0e\xf8\x71\xf7\x54\x15\x8a\xcf\x87\xa8\x7d\xaa\x08\xcc\x6e\x46\xb2\x36\x1b\xfb\x14\x3b\x37\xfb\x1a"
+"\xfb\x1a\xd8\x3c\xf7\x15\xeb\xce\xb4\xd7\xa5\x1f\x8c\x8e\x8d\x8f\x05\x5e\x06\x8a\x89\x8b\x8a\x88\x87\x08\x5a\x72\x5a\x70\x4a\x1b"
+"\x41\x69\xa1\xc8\x77\x1f\xd6\x07\xf7\x96\xb4\x15\xfb\x94\xd3\x06\xc5\xa9\xab\xa0\xc8\x1b\xcb\xbd\x6d\x5a\x9e\x1f\x0e\xcc\x1d\xc4"
+"\xad\x70\x5d\x85\x8a\x83\x8a\x85\x1f\x2e\xfc\x3b\x05\x88\x7d\x8a\x84\x87\x1a\x7c\x94\x83\x9a\x9f\x91\x93\xaa\x8f\x1e\xeb\xf8\x48"
+"\x05\x8d\x95\x8c\x90\x93\x1a\xd1\x57\xba\x3c\x53\x56\x76\x5f\x54\x1e\x0e\xcc\x1d\xc5\xac\x70\x5c\x85\x8a\x84\x8a\x85\x1f\x2e\xfc"
+"\x3b\x05\x88\x7d\x8a\x84\x87\x1a\x7c\x94\x83\x9a\x9f\x91\x93\xaa\x8f\x1e\xeb\xf8\x48\x05\x8d\x95\x8c\x90\x93\x1a\xd1\x57\xba\x3c"
+"\x53\x56\x76\x5f\x54\x1e\xf7\x92\xf7\x6f\x61\x1d\x82\x93\x7f\x5b\x1d\x93\x83\x98\xf7\x10\x0a\xf7\x74\xf8\xc1\x15\x8c\x9c\x05\xa1"
+"\x8c\x76\x9f\x72\x1b\x71\x78\x78\x73\x87\x8b\x86\x8c\x84\x1f\x9d\xfb\xd4\x05\x75\x8c\x94\x81\x9b\x1b\x9b\x93\x95\xa1\x8c\x1f\x6c"
+"\xfb\x23\x15\x69\x72\x74\x6c\x6c\xa4\x73\xad\x1f\x97\x06\xad\xa5\xa3\xaa\xaa\x71\xa2\x69\x1f\xf7\xaa\xf8\x63\x15\x8c\x9b\x05\xa2"
+"\x8d\x76\x9f\x71\x1b\x72\x77\x78\x74\x86\x8b\x86\x8c\x84\x1f\x9d\xfb\xd4\x05\x75\x8c\x94\x81\x9b\x1b\x9b\x93\x95\xa1\x8c\x1f\x6c"
+"\xfb\x23\x15\x69\x72\x74\x6c\x6c\xa4\x73\xad\x1f\x97\x06\xad\xa5\xa3\xaa\xaa\x71\xa2\x69\x1f\x0e\xf8\x30\xf7\x9e\x15\xfb\x6b\xfb"
+"\xb9\x58\xf7\xed\xf8\xc7\xfb\xed\x58\xf7\xb9\xfb\x57\xfb\xb9\x58\x07\x0e\xf7\xd6\xf7\xac\x15\xf6\x94\xe0\xe9\xf7\x01\x1a\xf7\x0a"
+"\x2b\xea\xfb\x0a\xfb\x0a\x2c\x2c\xfb\x0a\xfb\x01\xe0\x2d\xf5\x82\x1e\x32\xfb\x29\x64\xf7\x29\xfb\x2c\xb7\xf7\x2c\xf7\x28\xb2\xfb"
+"\x28\x07\x72\xf8\x69\x15\xeb\xd8\x40\x2f\x2d\x3f\x3f\x2d\x2e\x3f\xd6\xe9\xe6\xd7\xd8\xe5\x1f\x0e\xf7\x78\xf7\x9e\x15\xcb\x06\x83"
+"\x64\x05\x89\x82\x8b\x8b\x89\x1a\x7f\x94\x82\x96\x9c\x97\x96\x9e\x90\x1e\xa7\xf7\x16\x8c\x95\x05\x99\x8c\x82\x94\x7e\x1b\x80\x88"
+"\x89\x83\x82\x1f\x85\x86\x8b\x8b\x88\x7b\x82\x63\x18\x4b\x06\xb6\xf7\x57\x05\xf7\x50\x06\x7a\x3f\x05\x8a\x84\x8a\x87\x88\x1a\x7f"
+"\x94\x84\x99\x9b\x95\x96\x9f\x90\x1e\xa6\xf7\x15\x05\xfb\xd6\x06\x7b\x87\x8a\x84\x85\x1f\x85\x84\x86\x82\x87\x1a\x7c\x96\x83\x9d"
+"\x1e\xa7\x06\x26\xfc\x61\x05\x6d\x06\x80\x82\x88\x87\x86\x1f\x86\x87\x84\x7e\x87\x1a\x7c\x95\x83\x9e\x1e\xf7\x37\x06\xa3\x99\x97"
+"\x9e\x98\x80\x92\x78\x1f\x3a\x06\xf7\xdd\xf7\xca\x15\x2f\x06\x75\x7c\x80\x7a\x7b\x2a\x0a\xb1\x06\x52\xfb\x97\x05\x65\x06\x74\x7e"
+"\x7f\x77\x7f\x95\x84\x9d\x1f\xf7\x4a\x06\xa3\x98\x97\xa1\x90\x87\x91\x85\x8f\x1f\x8d\x87\x8b\x8b\x7c\x1b\x2f\x06\xab\xf7\x2a\x9d"
+"\x9e\x8b\x8b\xce\xd1\x19\xa2\xa1\x95\x92\x96\x1b\x93\x9e\x80\x82\x91\x1f\x7a\x97\x8f\x87\x95\x1b\x9a\x98\x98\x9b\x97\x88\x90\x7d"
+"\x99\x1f\xa2\x74\x7a\x94\x74\x1b\x69\x7b\x7f\x41\x49\x1f\x0e\xf7\x9f\xd4\x15\x23\xf7\xee\x05\x56\x2b\x1d\xa2\x06\xf5\xfb\xfa\x05"
+"\x6c\x4e\x7e\x61\x62\x1a\x6d\x98\x79\xa0\xb2\xa2\xc0\xe4\x9b\x8b\x98\x89\x9a\x1e\xf7\x71\xf7\xd3\xa4\xae\x97\x93\xa9\x8d\x19\xab"
+"\x97\x93\xa0\x99\x81\x93\x78\x1f\x75\x06\x5f\x72\x7a\x54\x65\x1f\x0e\x4c\x0a\x71\xf7\x72\x32\x0a\x4c\x0a\xe1\xf7\x94\x15\xfb\x32"
+"\xfb\x01\x05\x7b\x4e\x1d\x92\x8e\x91\x94\x7f\x0a\x91\x1b\x9b\x9a\x99\x9b\x92\x59\x0a\x4c\x0a\xf7\x2f\xf7\x82\xf7\x03\x0a\x86\x80"
+"\x81\x1e\xfb\x03\xfb\x0f\x05\x81\x80\x88\x84\x83\x1a\x80\x64\x1d\x4c\x0a\xd6\xf7\x77\x15\x68\x6a\x35\x0a\xa4\x78\x9e\x71\x1f\x0e"
+"\xf8\xa0\xf7\xd9\x15\xfc\x3f\xf7\x7d\x05\x8d\x86\x85\x8d\x87\x1b\x82\x83\x86\x84\x87\x1f\x8a\x88\x05\x88\x87\x8a\x87\x87\x1a\x82"
+"\x90\x84\x96\x85\x1e\xf7\xee\xfb\x50\xfb\xee\xfb\x50\x05\x80\x84\x86\x85\x82\x1a\x88\x8d\x86\x8d\x86\x1e\x8c\x89\x05\x83\x90\x93"
+"\x86\x92\x1b\x90\x91\x8d\x8e\x91\x1f\x77\x61\x15\x76\x80\x82\x7a\x7b\x96\x82\xa0\x1f\xf8\x34\x06\xa0\x96\x94\x9b\x9c\x80\x94\x76"
+"\x1f\x0e\xf7\xaf\xf8\x9f\x15\x9c\xdb\x05\x89\x1d\x85\x6e\x05\x5e\x06\x68\x1d\xb5\x06\x30\xfc\x3a\x05\x62\x33\x1d\xf7\x18\x06\x5c"
+"\x0a\x76\x1f\x65\x06\xbf\xf7\x86\xbd\xb9\x8b\x8b\x98\x94\x19\xa3\xad\xa9\x95\xb0\x1b\xb3\x9d\x86\x78\x9e\x1f\x9a\x7d\x92\x7b\x77"
+"\x1a\x87\x8a\x83\x89\x84\x1e\x58\xfb\x82\x05\x62\xd4\x0a\x64\x06\xbe\xf7\x83\x05\x8e\x95\x8c\x95\x93\x1a\xd1\x55\xb8\x37\x51\x5c"
+"\x77\x57\x51\x1e\xa3\xf7\x04\x05\xf7\x22\x06\xa1\x9a\x96\x9d\x3c\x0a\x0e\xa8\x1d\xf7\x4a\xf8\x3c\xd4\x1d\xf7\xc0\x75\x15\x9b\xd2"
+"\xba\xdb\xe3\xf7\x02\x08\xd5\xe9\xa4\xbf\xc9\x1a\xca\x55\xc0\x4a\x4b\x5d\x62\x3f\x76\x1e\xd9\x72\x5f\xb2\x4b\x1b\x4a\x58\x56\x47"
+"\x57\x9b\x68\xcc\x33\x1f\xf7\x09\xfb\x30\xa9\x56\xa0\x3b\x08\x0e\xd1\x16\xf8\x61\xf7\xcb\x06\xfb\x7b\xf7\x92\xfb\x7a\xfb\x92\x05"
+"\xbd\xfb\x99\x15\xf7\x85\x07\xf7\x48\xf7\x5a\xf7\x49\xfb\x5a\x05\xfb\x85\x07\x0e\xce\x1d\x85\xf8\xbd\x15\x91\x7f\x93\x82\x77\x7e"
+"\x7b\x71\x51\xbe\x65\xd9\xbe\xb9\x6d\x0a\x83\x84\x79\x84\x1e\x67\x7f\x5b\x71\x56\x1b\x70\x73\x92\x97\x7d\x1f\x84\x90\x7d\x9d\x8d"
+"\x1a\x0e\xf7\xc7\xf8\x37\x15\xfb\x3a\x20\x1d\xf7\x04\x25\x0a\xfb\x06\x21\x1d\xf7\xaa\x2a\x1d\xfb\x04\x06\xf7\x0e\xf8\xcf\x15\x45"
+"\x06\x72\xfb\x05\x05\xd1\x06\xf7\xaf\xfb\x21\x15\x36\xfc\x19\x05\x4a\x7b\x55\x5e\x4b\x1b\xfb\x14\x33\x1d\xf7\x15\x06\xe5\x89\xe0"
+"\xd1\x9e\xe6\xeb\xf8\x4e\x18\xfb\x8b\x26\x0a\xf7\x93\xf7\x92\x77\x0a\x3c\x1d\xf7\x59\xf8\x6e\x2c\x1d\xf7\xc0\xf7\x8a\x15\x52\xba"
+"\xc8\x69\xbf\x1b\xa7\xa5\x93\x98\x9f\x1f\xaa\xa1\xa2\xba\xb2\x1a\xd0\x50\xc3\x43\x54\x4f\x68\x54\x61\x1e\xc6\x59\x56\xa9\x55\x1b"
+"\x43\x50\x52\x44\x47\xc4\x52\xd1\xc7\xb8\xa4\xca\xc1\x1f\xae\xb2\x15\xb9\xab\xbd\xa9\xb6\x1b\xba\xaa\x6d\x5e\x5e\x6c\x6b\x61\x77"
+"\x76\x91\x97\x75\x1f\x7a\x94\x8b\x8b\x5c\xb9\x08\x47\x8f\x15\x5c\x66\x58\x6d\x61\x1b\x5e\x6e\xaa\xba\xb6\xaa\xa9\xb8\xb4\xb3\x74"
+"\x58\xba\x1f\x0e\xf7\xa7\x5c\x15\x44\x84\x6f\x7b\x84\x88\x8d\x99\x83\x1e\x9a\x80\x7c\x94\x7a\x1b\x71\x79\x7a\x72\x6d\xa5\x76\xb0"
+"\xa7\xa7\x98\xa3\xa2\x1f\xa9\xab\x93\xa9\xe4\x1a\xf8\x8a\x07\xca\x92\xa6\x9d\x90\x8f\x87\x82\x91\x1e\x77\x99\x95\x85\x9f\x1b\xa5"
+"\x9d\x9c\xa3\xa9\x72\xa0\x68\x73\x72\x82\x7c\x77\x1f\x66\x6e\x7d\x60\x32\x1a\x0e\xf7\xda\xf9\x0e\x15\x57\xfd\x35\x06\x4b\x83\x70"
+"\x7a\x86\x87\x8f\x94\x85\x1e\xa0\x7d\x81\x92\x77\x1b\x72\x78\x7a\x72\x6e\xa4\x75\xae\xa3\xa4\x94\x9a\x9f\x1f\xb0\xa8\x99\xb6\xe4"
+"\x1a\x0e\xf7\xa6\xfb\x4a\x15\xbf\xf9\x35\x06\xca\x92\xa6\x9d\x90\x8f\x87\x82\x91\x1e\x77\x99\x95\x85\x9f\x1b\xa5\x9d\x9c\xa3\xa9"
+"\x72\xa0\x68\x73\x72\x82\x7c\x77\x1f\x66\x6e\x7d\x60\x32\x1a\x0e\xf8\xad\xf7\x74\x15\xf7\x2a\x86\xae\x70\xb8\x1e\xce\x61\x3e\xb4"
+"\x35\x1b\x57\x5b\x7c\x70\x62\x1f\x58\x68\x6e\x5d\x81\x4d\x08\x86\x69\x8a\x75\x2a\x1a\xfb\x52\x07\x75\x94\x7f\x9c\x9b\x95\x98\xa0"
+"\x1e\xf7\x55\x07\x8c\xe3\x8b\x8b\x95\x1a\x8e\xbf\x92\xa9\x9a\xa1\x08\xbd\xad\xc8\xab\xcb\x1b\xc8\xc6\x6e\x5e\xab\x1f\xa6\x66\x91"
+"\x66\xfb\x1c\x1a\xfb\x55\x07\x75\x94\x7f\x9b\x9b\x96\x99\x9f\x1e\x0e\xf7\xc5\xf8\xc7\xb7\x0a\x30\xfb\x34\x15\xa3\x9e\x78\x74\x73"
+"\x78\x78\x74\x73\x78\x9e\xa3\xa1\x9e\x9f\xa2\x1f\xf7\xa2\x34\x15\x86\x48\x82\x6c\x74\x69\x08\x5a\x6a\x5a\x72\x4b\x1b\x4f\x5e\xa0"
+"\xb4\x6a\x1f\x6e\xb0\x80\xad\x85\xd4\x95\x63\x93\x7a\x9e\x75\x08\x61\xae\xbc\x76\xca\x1b\xc9\xbc\xa0\xb5\xae\x1f\x9e\xa1\x93\x9c"
+"\x95\xb3\x08\x29\xe2\x15\xa3\x9e\x78\x74\x73\x78\x78\x74\x73\x78\x9e\xa3\xa1\x9e\x9f\xa2\x1f\x0e\xf8\x34\xf8\x37\x15\xfb\x3a\x20"
+"\x1d\xf7\x04\x25\x0a\xfb\x30\x21\x1d\xf7\xc0\x06\x57\x71\x70\x68\x63\xee\x1d\xab\xad\xa9\xce\xa8\x1f\x9e\x93\x93\x94\x99\x1a\x9a"
+"\x82\x91\x77\x1e\xfb\x2e\x06\xf7\x0e\xf8\xcf\x15\x45\x06\x72\xfb\x05\x05\xd1\x06\x0e\xc1\x1d\x0e\xf7\xe4\xf8\x18\x15\x8f\x9d\x8b"
+"\x8c\x8e\x1a\x99\x81\x94\x7b\x7b\x84\x83\x72\x86\x1e\x49\xfb\xc8\x05\x89\x7e\x89\x7c\x80\x1a\x60\xa9\x71\xbb\x9f\xea\x1d\x91\x8d"
+"\x96\x8e\x9c\x1f\x78\xf8\x74\xdd\x1d\xf7\xe3\xf8\x18\x15\x8f\x9b\x8b\x8d\x8d\x1a\x9b\x81\x94\x7b\x7b\x84\x83\x72\x86\x1e\x49\xfb"
+"\xc8\x05\x89\x7d\x89\x7e\x7f\x1a\x61\xa9\x70\xbb\x9f\x9f\x8f\x92\xa0\x1e\xa2\x94\x96\x97\x9b\x1a\x98\x82\x94\x7e\x86\x86\x8a\x88"
+"\x85\x1e\x81\x73\x79\x86\x7a\x1b\x7b\x83\x91\x99\x92\x8c\x92\x8f\x9f\x1f\xf7\x56\xf8\x86\xbc\x1d\xc1\x1d\xf7\x49\xf8\x86\x61\x1d"
+"\xeb\x1d\x3c\x1d\xf7\x35\xf8\xba\xbf\x1d\x56\x0a\xf8\x7f\xa4\x0a\xf7\x69\xf7\xa2\x3d\x0a\xd1\x0a\x90\x88\x92\x1b\x9a\x9a\x99\x9b"
+"\x92\x89\x8f\x82\x93\x1f\x0e\xf7\x71\xf7\x84\x15\xb1\xf7\x47\x05\x21\x3f\x1d\xbe\x06\x46\x7e\x1d\xf7\x26\x31\x1d\x58\x06\xa8\xf7"
+"\x1e\x05\xa8\x06\xdd\x87\xab\x67\xb5\xfb\x1c\x8d\x84\x18\x8d\x85\x05\xdd\xf7\x5a\x1d\x56\x06\x70\xe6\x5f\xca\x5b\x9c\xf7\x48\xf7"
+"\x26\x18\x97\x06\xa2\x6d\x1d\x2c\x33\x0a\x93\x06\xfb\x39\xfb\x14\x05\x0e\xac\x1d\xf7\x10\x2e\x27\x0a\xf7\x78\xf7\x47\x15\xbc\xad"
+"\xf7\x18\xfb\x36\x05\x7a\x24\x0a\x78\x7d\x25\x1d\xf7\x17\x23\x1d\x61\x06\xfb\x33\xf7\x55\xf7\x47\xf7\x10\x05\xb8\x06\xa1\x9a\x38"
+"\x1d\xfb\x16\x20\x1d\x91\x06\xfb\x48\xfb\x13\xb2\xf7\x46\x05\x25\x06\x73\x7e\x80\x78\x7d\x25\x1d\xbb\x06\x46\xfb\xd1\x4d\x1d\xef"
+"\x06\x0e\x41\x0a\xf7\x72\xf9\x40\x2d\x0a\xc4\xbe\x15\x74\x24\x1d\xf7\x06\x23\x0a\x70\x06\xf7\x69\xf7\xb3\xf5\xfb\xb3\x05\x69\x33"
+"\x0a\xf7\x08\xe6\x0a\x71\x06\xfb\x5e\xf8\xbb\x05\x34\x3a\x0a\xc7\x06\xc3\xfb\x2e\x05\x0e\x41\x0a\xf7\x8e\xf8\x9c\x15\x93\x94\x8f"
+"\x93\x78\x1d\x41\x0a\x75\xfb\x24\x27\x0a\x41\x0a\xf7\x88\xf7\xdf\x15\x58\x64\x65\x5a\x6d\xa5\x75\xaf\x1f\x95\x06\xb9\xb7\xb2\xb5"
+"\xad\x71\xa3\x67\x1f\x0e\xbc\xf7\xd9\x15\xf8\x3e\xfb\x7d\x05\x88\x91\x91\x89\x8f\x1b\x93\x93\x90\x93\x8f\x1f\x8c\x8d\x05\x8e\x90"
+"\xf7\x1c\x1d\x95\x90\x90\x93\x94\x1a\x90\x8a\x8e\x89\x8f\x1e\x89\x8e\x05\x92\x87\x83\x90\x83\x1b\x86\x85\x89\x89\x86\x1f\x9e\xfc"
+"\xc3\x15\xa0\x96\x94\x9b\x9c\x80\x94\x76\x1f\xfc\x34\x06\x76\x80\x82\x7a\x7b\x96\x82\xa0\x1f\x0e\xf7\x49\xf7\x43\x15\x46\x72\x5a"
+"\x53\x69\x1b\x78\x7e\x7f\x7b\x7c\x25\x1d\xf7\xd7\x06\xaa\xa7\x9a\xa6\xa2\x1f\x9b\x9e\x97\xa6\x9a\x1a\x96\x82\x94\x7e\x7c\x82\x83"
+"\x79\x85\x1e\x6e\x82\x78\x7a\x74\x1b\xfb\x82\x06\xa9\xa9\xa5\xb7\x9d\xbd\x08\xf7\x16\x06\xa0\x96\x95\x9f\x97\x83\x90\x7b\x1f\xfb"
+"\x11\x06\x8f\xa1\x8c\x94\x8c\x9c\x08\xf7\x18\x06\x9f\x96\x95\x9f\x97\x84\x90\x7a\x1f\xfb\x20\x06\x88\xb8\x89\xa5\x90\x1a\xb4\x94"
+"\xa5\xa5\xa5\x1e\xa4\xa2\xab\x9a\xaa\x1b\xad\xa0\x7e\x6a\x9f\x1f\x81\x91\x91\x87\x93\x1b\x9a\x9a\x99\x99\x96\x82\x9c\x7c\x9a\x1f"
+"\xa6\x73\x6c\x98\x65\x1b\x5d\x5f\x78\x67\x67\x1f\x65\x66\x7a\x61\x54\x1a\x78\x8b\x87\x90\x5b\x1e\x45\x06\x75\x80\x81\x77\x7f\x93"
+"\x86\x9c\x1f\xdb\x06\x8a\x81\x88\x73\x88\x7d\x08\x35\x06\x76\x80\x81\x77\x80\x93\x85\x9c\x1f\x0e\xf7\xb3\xbe\x15\xe6\xf8\x3a\x05"
+"\xba\x96\xbd\xab\xcb\x1b\xaf\xaa\x88\x83\xc1\x1f\x8a\x93\x8e\x8b\x8e\x1b\x9c\x99\x98\x9c\x95\x85\x92\x7f\x8e\x1f\x91\x6c\x47\x92"
+"\x64\x1b\x2e\x3e\x56\x40\x7b\x1f\x7f\x53\x05\x37\x26\x0a\xdc\x25\x0a\x2d\x26\x0a\xf7\xd0\x23\x1d\x0e\xf7\xe4\xf8\x31\x15\x91\x75"
+"\x77\x8e\x76\x1b\xfb\x0b\x2c\x2c\xfb\x0a\xfb\x0a\xea\x2c\xf7\x0a\xf7\x0a\xea\xea\xf7\x0a\xdb\x5e\xd4\x45\xb0\x1f\xe3\xf7\x53\x05"
+"\x61\xaa\xaa\x6d\x95\x1b\x92\x8f\x8f\x90\x8f\x89\x8f\x85\x95\x1f\x75\xad\x78\xc0\x88\xaf\x08\x9e\x8a\x8a\x8e\x85\x1b\x87\x87\x89"
+"\x83\x81\x1f\x78\x7a\x4a\x73\x67\x88\x08\x79\x88\x87\x89\x83\x1a\x80\xa3\x84\xb2\x1e\x9f\x06\x9f\x8c\x05\x8d\x06\xfb\x31\xfb\x79"
+"\x15\xea\xd8\x40\x2f\x2d\x40\x3f\x2d\x2e\x3f\xd6\xe8\xe7\xd7\xd8\xe5\x1f\x0e\xf7\xa8\xc7\x0a\x0e\xf7\xa6\xf7\x28\x15\x90\x7e\x7a"
+"\x8f\x7d\x1b\x57\x5d\x5e\x59\x6e\xa1\x78\xad\xd3\xbe\xc2\xda\x1f\xf7\x8b\x07\xba\x84\xb3\x4b\x46\x1a\x60\x83\x69\x77\x5e\x1e\xa2"
+"\x06\xa9\xb0\x9b\xb9\xbc\x1a\xca\x73\xc7\x59\xc7\x1e\x61\xbe\x8a\x8c\x86\x90\x85\x94\x19\xbc\x66\x07\x0e\xf7\xd8\xf8\x81\x15\xa0"
+"\x70\xa2\x76\xa3\x7e\xc8\x68\x96\x84\x90\x82\x08\x92\x7e\x8f\x78\x73\x1a\xfb\x92\x07\x92\x78\x72\x90\x76\x1b\x3f\x48\x51\x4a\x65"
+"\xaa\x73\xbd\xc3\xc0\xa4\xb5\xac\x1f\xa2\xa8\x92\xa3\x8e\xc0\x08\xf8\x22\x07\x8c\xda\x67\xdb\x59\xab\x57\xac\x18\x71\x9c\x7c\x95"
+"\x86\x8f\x08\x7d\x9b\x84\x9e\xa5\x1a\x99\x5b\xfc\xae\x07\x93\x78\x74\x8f\x76\x1b\x41\x49\x52\x49\x65\xaa\x73\xbb\xc2\xbf\xa4\xb5"
+"\xac\x1f\xa1\xa8\x92\xa3\x8e\xc0\x08\xf7\x2c\xf7\x47\x15\xfb\x0d\xcc\x71\xb4\x87\xf7\x12\x8e\x89\x18\xf7\x0d\x49\xa5\x63\x90\xfb"
+"\x12\x08\x0e\x4a\x0a\xf7\xce\xf7\x78\x15\x9a\x96\x8f\x91\x96\x1a\x97\x82\x94\x7e\x84\x86\x7f\x1d\x90\x8d\x93\x96\x1e\x0e\xf7\xb3"
+"\xf8\x37\x15\x39\x4f\x1d\x9e\x1f\xa7\x69\x0a\x77\x1f\x65\x06\xbf\xf7\x84\x05\xd7\xda\xa6\x9a\xca\x1b\xae\x9d\x85\x79\x9d\x1f\x9a"
+"\x7d\x92\x7a\x77\x1a\x82\x8b\x88\xb9\x0a\xbf\xf7\x87\x05\x8d\x93\x8c\x93\x93\x1a\xd1\x55\xb8\x39\x4e\x63\x79\x54\x4b\x1e\x7f\xf7"
+"\x67\x15\x94\x95\x8f\x92\x78\x1d\x4a\x0a\xf7\x2e\xf7\x0b\x61\x0a\x4a\x0a\xcb\xfc\x59\x27\x0a\xf7\xda\xf7\x7c\x15\xf7\x93\xbd\xfb"
+"\x79\x06\xec\xf7\x49\x05\xf7\x18\xbe\x22\x06\x97\xa9\x96\xa1\x96\x9a\x08\x8f\x90\x8d\x8f\x8e\x1a\x96\x7e\x96\x7f\x7e\x85\x87\x7b"
+"\x83\x1e\x60\x3a\x05\xfb\x1a\xf7\x3d\x1d\xfb\x10\xb7\x3b\xe6\x63\x1e\x6e\x55\x05\x87\x83\x89\x85\x86\x1a\x7f\x97\x80\x98\x97\x92"
+"\x90\x9a\x93\x1e\xac\xca\x05\x87\xac\x8f\x8b\xb8\x1b\xf7\xba\xbe\xfb\xc6\x06\x73\x84\x8b\x8d\x7e\x1f\xb2\xf7\x47\x15\x31\xfb\x3c"
+"\x4a\xa1\x68\xc3\x87\xe0\x19\x90\x07\xf7\xd2\xf7\x7b\x15\x2a\xfb\x49\x05\xfb\x71\x90\x06\x91\xf7\x0c\xcc\xc6\xf7\x14\x88\x08\x0e"
+"\xf8\x12\xf8\x0e\x15\xba\xe5\x05\x8f\x92\x8d\x92\x90\x1a\x98\x7f\x96\x7d\x80\x84\x86\x7d\x83\x1e\x4f\xfb\x06\x05\xfb\x89\x06\x76"
+"\x80\x82\x7a\x7b\x96\x82\xa0\x1f\xf7\x6f\x06\x5b\x31\x05\xfb\x3f\x58\x0a\xf7\x24\x06\x61\x3a\x05\x87\x84\x89\x85\x86\x1a\x7e\x97"
+"\x7f\x99\x96\x92\x90\x9a\x92\x1e\xc2\xf3\x05\xf7\x86\xf7\x59\x1d\xfb\x6b\x06\xbb\xe5\x05\xf7\x3b\x06\xa1\x96\x94\x9b\x9c\x80\x94"
+"\x75\x1f\x0e\xf7\x4f\xf8\x35\x15\x3b\x06\x76\x7e\x80\x78\x7d\x94\x84\x9b\x1f\xb5\x06\xe7\xfc\x02\x05\xbb\x06\xf7\x44\xf7\x30\xc8"
+"\xe0\xe7\x1a\xbb\x78\xb7\x77\x7b\x7c\x7d\x7d\x87\x8d\x83\x8d\x83\x1e\x91\x78\x8f\x77\x7d\x1a\x46\x57\x3c\xfb\x04\x24\x1e\x87\x88"
+"\x88\x88\x87\x87\x86\x87\x87\x88\x87\x87\x08\x0e\xf7\xf1\x56\x1d\x55\xf7\x72\xf7\x08\x1d\xbe\xb9\x6d\x0a\x83\x84\x79\x84\x1e\x67"
+"\x7f\x5b\x71\x56\x1b\x70\x73\x92\x97\x7d\x1f\x84\x90\x7d\x9d\x8d\x1a\x0e\x38\x0a\xd8\xf7\x5c\x74\x1d\x38\x0a\xf7\x29\xf7\x23\x2c"
+"\x1d\xa6\x1d\x0e\xa6\x1d\xf7\x1e\xf8\x12\x15\x97\x94\x92\x96\x95\x1a\x97\x82\x93\x7f\x84\x7a\x0a\x82\x54\x0a\xf7\xf1\x56\x1d\x0e"
+"\xf7\xf2\xf8\x45\x15\xfb\x2a\xfb\x1c\xfb\x15\xfb\x21\x23\xd9\x40\xf6\xf7\x2c\xf7\x1b\xf7\x14\xf7\x25\xf0\x3c\xd6\x20\x1f\x80\x58"
+"\x15\xdf\xc7\x53\x3d\xfb\x03\x21\x25\xfb\x08\x36\x50\xc3\xdc\xf7\x00\xf7\x00\xf1\xf7\x06\x1f\xf7\x1a\xf7\x61\x15\x99\x95\x91\x94"
+"\x96\x1a\x97\x82\x93\x7f\x83\x84\x88\x84\x81\x1e\xfb\x1b\x2b\x05\x7e\x81\x85\x82\x80\x1a\x7f\x94\x83\x97\x93\x92\x8e\x92\x95\x1e"
+"\x0e\xc5\x16\xf8\x7a\xc9\xfc\x3c\xf8\x3c\x4d\x06\x0e\xc3\x1d\x7f\x81\x87\xcb\x1d\xbe\xf7\x82\x3d\x1d\xf7\x2b\xf8\xbc\x15\x7d\x8c"
+"\x95\x82\x9a\x1b\xac\x8c\x05\xbb\xc4\x77\x6c\xb5\x1f\xa8\x76\x9e\x76\xa7\x60\x08\xa7\x5f\x66\x96\x57\x1b\xfb\x16\x24\x28\xfb\x11"
+"\xfb\x11\xf2\x27\xf7\x17\xf7\x15\xf3\xee\xf7\x10\xe9\x64\xf7\x00\x4e\xd1\x1f\xcb\x55\x33\xb0\x29\x1b\x70\x88\x8a\x84\x84\x1f\x87"
+"\x87\x89\x84\x84\x1a\xf7\x27\xfb\x40\x15\xf3\xdb\x40\x28\x2b\x3b\x3e\x26\x26\x3a\xd8\xec\xea\xdb\xd9\xee\x1f\x0e\xf8\x4d\xf7\x9d"
+"\x15\x97\xc3\x05\x8c\x8e\x8b\x8e\x8e\x1a\x98\x82\x94\x7e\x7d\x81\x82\x7a\x87\x1e\x7e\x4e\x05\x66\x06\x78\x7e\x81\x7b\x7d\x94\x83"
+"\x9d\x1f\xaa\x06\x6b\xfb\x25\x05\x89\x83\x8a\x84\x86\x1a\x62\xb1\x70\xc3\xae\xb9\x94\x99\xab\x1e\xa3\x95\x93\x93\x98\x1a\x98\x82"
+"\x94\x7e\x86\x89\x8a\x87\x82\x1e\x7e\x72\x5e\x81\x69\x1b\x6f\x77\x97\x9a\x8c\x1f\x8c\x8c\x8e\x8c\x90\x1e\xac\xf7\x29\x05\xf7\x12"
+"\x06\x9e\x98\x96\x9a\x9a\x82\x92\x7a\x1f\xfc\x34\x65\x15\xa6\x06\xf7\x17\xf7\x08\xe8\xf6\xdb\x48\xc3\x2b\x1f\xfb\x20\x49\x1d\xf7"
+"\x1a\x06\xbe\x8b\x8b\x92\x93\x1f\x93\x91\x8f\x94\x93\x1a\x99\x82\x92\x77\x1e\x4a\x06\xbc\xf7\x76\x15\xbe\xf7\x7f\x05\xb7\x06\xcf"
+"\xba\x64\x52\x43\x33\x48\x2c\x1f\x0e\xf7\x46\xfb\x1e\x15\x89\x7f\x8a\x86\x87\x1a\x7d\x95\x82\x9b\x9b\x92\x93\xa4\x90\x1e\xa8\xf7"
+"\x1a\x05\x8a\x96\x8d\x8b\x8f\x1b\xd3\xcb\xa6\xc3\xc4\x1f\xc4\xc2\xa8\xcc\xd4\x1a\xf0\x4f\xd3\x37\x3a\x61\x56\xfb\x1b\x6e\x1e\x61"
+"\xfb\x5d\x05\x40\x9f\x6a\xb6\xd9\x1a\xdd\xbd\xda\xd6\xb0\x1e\x9e\x94\x91\x92\x97\x1a\x98\x82\x94\x7d\x6d\x60\x6f\x5f\x64\x1e\x5d"
+"\x56\x76\x54\x47\x1a\x26\xc1\x46\xeb\x74\x1e\xc9\xb7\x15\xb6\xf7\x63\x05\xf1\xa1\xa6\xb0\xbe\x1b\xc0\xb1\x59\x45\x4d\x74\x59\x5b"
+"\x5c\x1f\x5f\x5d\x58\x73\x56\x1b\x88\x06\x0e\xf8\xad\xf8\x04\x15\xb4\x06\xa1\x9a\x97\x9c\x9a\x82\x92\x77\x1f\xfc\x1f\x06\x75\x7c"
+"\x80\x7a\x7b\x2a\x0a\xb1\xec\x1d\xd0\xf7\xd1\x05\xf7\x68\xec\x1d\x0e\xf8\x7d\xf8\xe3\x15\xbc\x84\x1d\xfc\x71\xeb\x0a\xbc\xfd\x02"
+"\x5a\xeb\x0a\xf7\x2b\x84\x1d\x59\xf9\x02\xf7\xa6\xfd\x02\x5a\x06\x7b\x8c\x80\x81\x8a\x7c\x08\x88\x07\x8c\x7c\x96\x81\x9b\x8c\x08"
+"\xf7\x2b\x84\x1d\x5a\x06\x0e\xf7\xe9\xf8\x64\x15\xfb\x2b\x65\x86\x71\x5e\x1f\x46\x62\x61\x3f\x37\x1a\x3e\xad\x46\xc8\x5f\x1e\x67"
+"\xbd\xae\x85\xf7\x39\x1b\xf7\x56\x06\xa0\x99\x95\x9b\x9b\x7f\x94\x74\x1f\xfb\x58\x06\xfb\x14\x60\x90\x9e\x68\x1f\x54\xa8\x65\xcb"
+"\xcb\x1a\xc5\xab\xc7\xba\xaa\x1e\xa6\xb3\xb0\x90\xf7\x23\x1b\xf7\x58\x06\xa1\x98\x95\x9b\x9b\x7e\x94\x75\x1f\x0e\xf7\x74\x16\xf7"
+"\x2d\xb0\x90\xa5\xb8\x1f\xd0\xb4\xb5\xd7\xdf\x1a\xd8\x68\xd0\x4f\xb7\x1e\xaf\x59\x67\x91\xfb\x39\x1b\xfb\x55\x06\x75\x7e\x82\x7b"
+"\x7b\x98\x81\xa1\x1f\xf7\x58\x06\xf7\x16\xb3\x86\x78\xaf\x1f\xc2\x6f\xb1\x4a\x4b\x1a\x51\x6b\x50\x5b\x6b\x1e\x71\x65\x63\x85\xfb"
+"\x21\x1b\xfb\x58\x06\x74\x7f\x82\x7b\x7c\x99\x80\xa0\x1f\x0e\xf8\x29\xf8\xc3\x15\x8c\x91\x8d\x97\x8e\x1a\x98\x80\x94\x7c\x7a\x86"
+"\x84\x71\x85\x1e\xfb\x07\xfc\xa9\x05\x4d\x8f\x70\x9f\xb4\x1a\x98\x8f\xa2\x91\xab\x1e\xc1\xf7\x8e\x05\x27\x06\x74\x7d\x43\x1d\xb6"
+"\x06\x61\xfb\x59\x05\x85\x6f\x88\x71\x7a\x1a\x4a\xbb\x61\xdd\x83\x1e\x71\xfb\x0f\x05\x89\x83\x8a\x84\x86\x1a\x7c\x94\x82\x9a\x9a"
+"\x95\x95\xa2\x90\x1e\xa7\xf7\x1a\xf7\x17\x94\xb9\xb5\xa4\xf7\x19\x19\xb6\xf7\x5b\x05\xb8\x06\xa3\x9a\x1d\x78\x1f\x2a\x06\x56\xfb"
+"\x8d\x79\x2c\x6b\x6d\x34\x82\x19\x0e\xf8\x82\xf7\x40\x15\x71\xba\x7f\x9c\x6d\xa3\x08\xf6\xae\xc7\xc8\xd5\x1a\xd7\x49\xc4\x33\x1e"
+"\xfb\x8d\x24\x0a\x78\x7d\xf2\x1d\x3c\x0a\x47\x06\xb5\xf7\x57\x05\xf7\x13\x06\xaf\x7a\xab\x6a\xa1\x61\x3a\x70\x18\x78\x84\x82\x82"
+"\x7d\x1a\x80\x94\x81\x96\x8f\x90\x8c\x8e\x93\x1e\xe8\xaa\x97\x6f\x93\x75\x9c\x59\x19\x8f\x80\x05\xc7\x06\xa2\x99\x97\x9d\x99\x82"
+"\x92\x78\x1f\x70\x06\x73\xca\x85\x99\xe8\xaa\x05\x9e\x91\x94\x95\x99\x1a\x95\x82\x95\x81\x87\x81\x89\x8a\x87\x1e\xfc\x00\xe6\x15"
+"\xba\xf7\x6b\x05\xf7\x28\x06\xc9\xbd\x63\x59\x4a\x2c\x4f\x23\x1f\x0e\x53\x1d\xf7\x84\xf7\x9a\x3d\x1d\xf7\x2e\xf7\xd1\x15\x22\x06"
+"\x79\x8c\x80\x82\x8a\x7a\x08\x8a\x07\x8c\x7a\x96\x82\x9d\x8c\x08\xc7\x06\xe4\xfb\xb0\xf7\x85\xf9\x2f\x05\xf7\x3b\x06\x9c\x98\x96"
+"\x9a\x9b\x80\x94\x78\x1f\xfb\x66\x06\xfb\x55\xfc\xcc\x05\x0e\x53\x1d\xdb\xf7\x2d\x61\x0a\x53\x1d\x45\xfc\x37\x27\x0a\xf7\x0b\xf8"
+"\x19\x15\xf8\x12\xf7\x59\x1d\xfc\x46\xfb\x88\x06\x77\x94\x80\x9c\x9c\x94\x96\x9f\x1e\x0e\xf7\x09\xd6\x15\x4d\xb4\xbe\x6e\xd1\x1b"
+"\xf7\x20\xf7\x11\xf7\x12\xf7\x21\xf7\x01\x43\xd4\xfb\x00\x41\x3c\x69\x56\x57\x1f\x6c\x6b\x74\x58\x79\x39\x44\xfb\xd2\x18\x89\x82"
+"\x8a\x84\x86\x1a\x7c\x94\x82\x9b\x9a\x94\x95\xa2\x90\x1e\xf7\xb9\xf8\xa7\x15\xdd\xbd\x5a\x3c\xfb\x05\x24\x21\xfb\x00\x3b\x51\xc6"
+"\xdb\xf7\x03\xf0\xec\xf7\x08\x1f\x0e\x70\x1d\xf8\x4e\xf8\x6e\x3d\x1d\xf7\xce\x7c\x15\xf7\x15\x93\xe2\xca\xe1\x1a\xa4\x7d\xa7\x76"
+"\x9b\x1e\x76\x1d\x3f\x53\x6b\x0a\x81\x94\x7f\x7a\x81\x81\x76\x86\x1e\x7a\x3a\x05\x8a\x85\x8a\x87\x88\x63\x1d\x8c\x07\xa1\x73\xb1"
+"\x7b\xbc\x85\x7d\x4a\x18\x42\x0a\x68\x8e\x1f\x0e\x70\x1d\xf7\xcf\xf8\xa0\xd5\x1d\x70\x1d\xf7\x54\xfb\x63\x27\x0a\xf7\x52\xc7\x0a"
+"\xf7\x52\x16\xe5\xf7\x5f\x05\x98\xa8\x8d\x93\x99\x1a\xa1\x79\x9c\x74\xf7\x60\x1d\x0e\xf9\x0f\xf8\x12\x15\x9f\x99\x97\x9d\x99\x82"
+"\x92\x7b\x1f\xfb\x6c\x06\x2b\x56\x7b\x5a\x4c\x1f\x46\x55\x62\x3f\x41\x1a\x22\xda\x40\xf7\x04\xf7\x28\xf7\x1e\xf7\x15\xf7\x1f\xc0"
+"\x78\xb5\x63\xae\x1e\xfb\x20\x16\xe2\xf7\x1f\x0a\x31\xf7\x06\x0a\xf7\x6d\xf8\x23\x15\x75\x79\x7a\x75\x76\x9c\x79\xa1\xa1\x9c\x9c"
+"\xa1\xa0\x7a\x9d\x76\x1f\xf7\x41\x8c\x15\x75\x79\x79\x76\x75\x9d\x79\xa1\xa0\x9d\x9d\xa0\xa1\x79\x9d\x76\x1f\xe9\x37\x15\x82\x64"
+"\x83\x7b\x77\x73\x08\x61\x66\x5c\x77\x4d\x1b\x4c\x5d\x9f\xb5\x66\x1f\x77\xa3\x83\x9b\x82\xb2\x90\x48\x93\x6c\xa2\x68\x08\x5b\xac"
+"\xbd\x72\xcb\x1b\xc6\xba\xa0\xb4\xab\x1f\xa8\xb0\x96\xae\x90\xd3\x08\xfb\x47\xf7\x8b\xb7\x0a\x83\x66\x15\xf7\x1d\xf7\x03\xfb\x00"
+"\xfb\x1b\xfb\x1d\xfb\x01\xfb\x01\xfb\x1c\xfb\x1b\xfb\x01\xf7\x01\xf7\x1c\xf7\x19\xf7\x02\xf7\x03\xf7\x17\x1f\x0e\xf7\x22\x16\xf8"
+"\x09\x9d\x06\xfb\x11\x91\x51\xcd\x8d\xf7\x17\x08\x4a\xad\xaf\x72\xc3\x1b\xc1\xb8\xba\xc5\xc0\x77\xaa\x38\xd7\x1f\x37\xd8\x7c\xa1"
+"\x6d\xe5\x7f\x44\x5c\x47\x3a\x4a\x08\x4d\x58\x70\x5f\x5a\x1a\x51\xba\x5b\xc4\xc3\xb3\xa8\xc8\xa8\x1e\xfb\x14\x90\x47\x40\xfb\x0e"
+"\x1b\x0e\xf8\x55\x22\x1d\x93\x21\x05\x7d\x93\x82\x99\x89\x1e\x90\x06\x9a\x8d\x92\x94\x9b\x1a\xf7\x14\x07\x9e\x82\x94\x78\x8a\x1e"
+"\xfb\xeb\x06\x7a\x8c\x81\x82\x8a\x7b\x08\x7e\x07\x80\x8b\x8a\x92\x82\x1e\xf7\x45\xfb\x8c\xfb\x47\xfb\xd7\x05\x86\x83\x8b\x8a\x82"
+"\x1a\x7c\x07\x7a\x95\x83\x9d\x1e\xf7\xf2\x06\x9e\x94\x94\x9e\x1f\xf7\x14\x07\x9b\x84\x94\x7c\x8d\x1e\x85\x06\x7d\x89\x84\x82\x8a"
+"\x7c\x87\x21\x18\xfb\xb9\x06\xf7\x45\xf7\xcd\x05\x8f\x92\x8c\x8e\x8f\x1a\x91\x89\x8f\x86\x92\x1e\xfb\x3d\xf7\x85\x05\x0e\xf7\x23"
+"\xf8\x2b\x15\x73\x6d\x7c\x68\x87\x65\x08\x2c\x5e\xeb\x06\x8f\x64\x99\x68\xa2\x6e\x48\x48\x18\xab\x6b\xce\xcf\xa9\x73\xab\x7e\xb4"
+"\x85\x19\x2c\xb8\xea\x07\xb4\x91\xad\x99\xa7\xa2\xce\x47\x18\xab\xab\x48\xcf\xa1\xa4\x9a\xaf\x90\xb4\x19\xeb\xb8\x2b\x06\x86\xb3"
+"\x7c\xaf\x75\xa6\xce\xce\x18\x6b\xab\x48\x48\x70\xa1\x63\x9b\x67\x8f\x19\xea\x5e\x2d\x07\x67\x87\x62\x79\x72\x75\x47\xcf\x18\x6b"
+"\x6b\x05\xf7\x72\x5d\x15\xdc\xcc\x4c\x3c\x3a\x4b\x4b\x3b\x3c\x4b\xcb\xda\xda\xcb\xcc\xd8\x1f\x0e\xf8\x1e\xf8\x04\x15\xf7\x12\x06"
+"\xa2\x99\x97\x9e\x99\x83\x91\x77\x1f\xfb\xc5\x06\x75\x7c\x7f\x79\x7e\x95\x83\x9d\x1f\xf7\x13\x06\x48\xfb\xca\x05\x88\x80\x8a\x81"
+"\x82\x1a\x6f\xa5\x7c\xbd\xc9\xb7\x9e\xa5\x97\x84\x93\x80\x88\x88\x8a\x8a\x89\x1e\x7f\x6e\x80\x89\x75\x1b\x71\x7f\x91\x97\x91\x8c"
+"\x90\x8c\x92\x1f\x0e\xf7\x91\xf7\xbb\x15\x9c\xd4\x05\xf7\x6f\xf7\x1c\x0a\xfb\x6d\x06\xa3\xf7\x02\x05\x8c\x8f\x8c\x90\x8d\x1a\x99"
+"\x83\x93\x7d\x81\x88\x89\x83\x82\x1e\x85\x86\x8b\x8b\x88\x7c\x72\xfb\x05\x18\x45\x06\x74\x7e\xf0\x0a\xcf\x06\x7a\x42\x05\x5d\x4f"
+"\x1d\x9f\x1f\xb6\x06\x6e\xfb\x19\x05\x88\x7f\x8a\x81\x83\x1a\x52\xc5\x63\xdd\xb8\xbf\x95\x9f\xc7\x1e\xb4\x98\x9f\x9a\x9b\x1a\x96"
+"\x81\x96\x82\x86\x85\x89\x87\x81\x1e\x5e\x77\x8b\x8b\x62\x83\x08\x83\x66\x76\x88\x70\x1b\x51\x69\xa0\xae\x94\x8c\x92\x8c\x93\x1f"
+"\xa7\xf7\x15\x05\xf7\x48\xf7\x1c\x0a\x0e\x5e\x0a\xe6\xf7\x2c\x15\x93\x94\x8f\x93\x78\x1d\xf7\xb5\x7b\x15\x96\x06\xbd\xd6\x9b\x9f"
+"\xbb\x1f\xa5\x0a\xfb\x69\x06\xa6\x0a\x5f\xa9\x6a\xc0\x7d\x1e\x7b\x42\x05\xaa\x06\x9f\xd3\x1d\xf8\x11\xf8\xee\x15\x33\x35\x4c\x22"
+"\x55\x1f\x65\x43\x75\x31\x3d\x1a\xfb\x16\xca\x3b\xf2\xd9\xd0\xb6\xe0\xc4\x1e\xc2\xdd\xa8\xec\xef\x1a\xf7\x17\x4c\xdb\x24\x1e\xfb"
+"\x69\xfb\x9c\x15\x94\xaf\x98\xa8\xa0\xac\x08\xd7\xbb\xc4\xb2\xc9\x1b\xd3\xb8\x51\x2f\x7c\x8a\x75\x89\x71\x1f\x81\x58\x15\x7b\x4b"
+"\x7a\x62\x6f\x62\x08\x47\x5d\x52\x65\x50\x1b\x45\x5f\xc6\xea\xa3\x8e\xae\x91\xb2\x1f\x0e\xf8\x6e\xf8\xdf\x15\x98\x95\x91\x94\x95"
+"\x1a\x98\x83\x93\x7e\x84\x7a\x0a\x82\x54\x0a\x2c\x0a\xfb\x17\xf8\xb7\x32\x0a\x2c\x0a\x73\xf8\xa1\x74\x1d\x2c\x0a\xe3\xf8\x68\x2c"
+"\x1d\xf8\xdd\xfb\x89\xf7\x2b\x1d\x7b\x79\x96\x83\xa0\x1f\xf8\xce\x43\xf7\x2b\x1d\x7a\x7a\x96\x83\xa0\x1f\x0e\x0e\xc4\x0a\x5f\x0a"
+"\xfb\x0d\xfb\x24\x27\x0a\x5e\x0a\xfb\x49\xfc\x94\x27\x0a\xf8\xa9\xf8\xa1\x2c\x1d\x68\x0a\xf8\x93\x16\x2c\xf8\xc7\x05\x3d\x06\xfb"
+"\xe2\xfc\xc7\x05\xf8\x50\xbe\x15\xfb\xfa\x06\xf7\xa6\xf8\x61\x05\x92\x06\x0e\xf8\x3f\xbe\x15\xb5\xa0\xb2\xa8\xaf\xb1\x08\xcd\xce"
+"\xac\xd8\xde\x1a\xf7\x0f\x30\xe1\xfb\x16\x3a\x3e\x6c\x50\x49\x1e\x47\x4e\x5f\x2e\x38\x1a\x3e\xb6\x3d\xcd\x61\x1e\xfb\x17\x06\x72"
+"\x7d\x80\x79\x7d\x95\x83\x9f\x1f\xf7\x61\x06\x95\xbb\x67\xa3\x80\x93\x7b\x98\x19\x60\xb0\x70\xc6\xc5\x1a\xf7\x24\xf7\x18\xf7\x19"
+"\xf7\x23\xc4\xb0\x7d\x6a\xac\x1e\xad\x69\x9c\x62\x5b\x1a\x3e\x68\x41\x49\x4d\x1e\x65\x66\x75\x7d\x3a\x62\x81\x5a\x18\xf7\x63\x06"
+"\xa2\x9b\x97\x9d\x9a\x83\x91\x75\x1f\x0e\xf8\x5f\xf8\x04\x15\x64\xfb\x45\x7f\x53\x76\x65\x6b\x71\x19\x74\x6e\x66\x7e\x66\x1b\x55"
+"\x62\xb1\xbc\x98\x8e\x9f\x92\xac\x1f\xbf\xf7\x7b\x05\x25\x33\x0a\xb9\x06\xfb\x03\xfc\x8f\x05\x89\x83\x8a\x83\x87\x1a\x7c\x94\x83"
+"\x9a\x9a\x95\x96\xa0\x90\x1e\xb4\xf7\x51\x05\x64\xaa\xaf\x7b\xc2\x1b\xc1\xaf\x99\xae\xb2\x1f\x84\x6a\x05\xef\x06\xa3\x9a\x1d\x77"
+"\x1f\x5f\x06\xdb\xf8\x04\x05\x27\x24\x1d\x0e\xf8\x9e\xf8\x13\x15\xad\x66\x5b\x9b\x4b\x1b\xfb\x33\xfb\x12\xfb\x0e\xfb\x2c\x50\xa1"
+"\x5c\xb2\x6f\x1f\xa4\x7a\xb1\x7f\xc8\x82\x08\xcb\x82\x97\x85\x74\x1a\x60\x62\x6a\x51\x89\x1e\x6c\x89\x7e\x83\x79\x1a\x7a\x96\x83"
+"\xa4\xe4\xd1\xc5\xd4\xbe\x6d\xa4\x40\x96\x1e\x51\x94\x6a\x93\x7c\x93\x08\x6b\x9c\x79\xad\xb9\x1a\xf7\x11\xf2\xee\xf7\x16\xb7\xb8"
+"\x7e\x79\x9f\x1e\x95\x81\x91\x7d\x8c\x77\x08\x66\x8e\x91\x80\x9e\x1b\x9c\x95\x97\xa5\x8e\x1f\x8f\xae\x92\xaa\x94\x9f\x08\x8f\x95"
+"\x8c\x90\x91\x1a\x98\x81\x95\x7d\x7c\x81\x82\x79\x86\x1e\x0e\x2d\x1d\xf7\x26\xf9\x66\x15\x93\x84\x86\x8e\x83\x1b\x7b\x7c\x7c\x7b"
+"\x87\x8e\x86\x93\x83\x1f\xe7\x29\x05\x82\x92\x8f\x89\x95\x1b\x9a\x9a\x9a\x9b\x8f\x88\x90\x83\x93\x1f\x0e\x8f\x0a\xfb\x5a\xf9\x66"
+"\x15\x93\x83\x87\x8e\x83\x1b\x7b\x7c\x7c\x7b\x86\x8e\x86\x50\x1d\x82\x92\x8f\x89\x94\x1b\x9a\x94\x93\x9d\x90\x1f\x8c\x90\x8c\x8e"
+"\x87\x92\x84\x92\x19\x0e\xf7\xc8\xc3\x15\x3b\xf8\x5c\x05\xd1\x57\x0a\xfb\x2b\x29\x1d\xa5\x06\xe4\xfc\x94\x05\xcb\x06\xf7\xa1\xf8"
+"\x33\xa4\xb4\x8b\x8b\x95\x97\x19\x97\x97\x99\x92\x98\x1b\x93\x91\x89\x83\x97\x1f\x7f\x9f\x96\x86\x97\x1b\xa6\xa5\xa6\xa6\xaa\x70"
+"\x9e\x60\x69\x6e\x81\x75\x6d\x1f\x70\x77\x88\x86\x65\x51\x08\x0e\x72\x1d\xfb\xe0\xf7\x63\x15\x93\x83\x87\x8e\x84\x1b\x7a\x7d\x7d"
+"\x7b\x85\x8e\x86\x91\x84\x44\x1d\x93\x90\x88\x92\x1b\x9a\x9b\x99\x99\x8e\x84\x99\x88\x8e\x1f\x0e\xf7\x78\xf7\x9e\x15\xf7\x0f\x06"
+"\x96\xbe\x05\xfb\x0f\xd7\x1d\x61\xfb\x57\x05\x4e\x06\x80\x58\x05\xc8\x06\x5c\xfb\x6b\x4d\x1d\xf7\x7e\x23\x1d\xfb\x18\x06\x0e\xf7"
+"\x82\xf7\xa2\x15\xa0\xed\x05\xf7\xa6\x06\x6e\xfb\x16\x8a\x7d\x05\xf7\x54\x1d\x9f\x8f\x1e\xb3\xf7\x4c\x05\xfc\x71\x3a\x0a\xeb\x06"
+"\x76\x29\x05\x59\x06\x68\x1d\xbb\x06\x67\xfb\x3d\x05\x26\x24\x1d\xf7\x8e\x23\x0a\x29\x06\xaf\xf7\x3d\x05\xf7\x1c\x66\x1d\x0e\xf8"
+"\x89\xbe\x15\x70\xf7\x1a\x7e\xc4\x77\xb6\x73\x9f\x19\xa0\x9f\xab\xb4\xaf\xbe\xc2\xdb\x93\x94\xa3\x90\x81\x64\x18\x8a\x80\x05\x79"
+"\x94\x81\x9b\x99\x94\x95\xa0\x90\x1e\x97\xc2\x05\x8d\x97\x8c\x90\x8e\x1a\x9b\x7e\x94\x71\x51\x75\x78\xfb\x17\x31\x1e\x5a\x44\x7e"
+"\x7f\x70\x88\xb2\xf7\x4c\x18\xa1\x1d\x9a\x06\x75\x33\x05\x89\x83\x8b\x89\xf7\x01\x0a\xf7\x21\x05\x0e\xf8\x7e\xbe\x15\x6c\xe4\x7c"
+"\xb5\x74\xad\x75\x95\x19\xa5\xa0\x94\x93\xa5\xaa\xc2\xce\x97\x95\xa6\x8f\x86\x78\x18\x89\x85\x8b\x89\x8a\x1a\x78\x94\x81\x9b\x99"
+"\x94\x95\xa1\x90\x1e\x92\xac\x05\x8d\x92\x8c\x94\x8f\x1a\x9b\x7e\x93\x71\x57\x76\x7e\x42\x4b\x1e\x4d\x45\x81\x82\x6f\x87\xa4\xf7"
+"\x0a\x18\xa7\x21\x0a\x2a\x20\x0a\x9c\x06\x72\xfb\x0a\x05\x84\x06\x74\x8c\x84\x93\x71\xc4\x08\xe5\x64\x7d\x98\x50\x1b\x6f\x83\x84"
+"\x71\x85\x1f\x83\x67\x05\x88\x7e\x8b\x8a\x87\x1a\x7e\x94\x82\x9a\x9b\x96\x95\x9c\x8f\x1e\x92\xaa\xa2\x89\x8f\x86\xa0\x5f\x19\x9c"
+"\x63\x9a\x6d\x97\x7a\x58\x70\x88\x89\x5c\x50\x43\x30\x18\x6f\x20\x0a\xa4\x06\xa3\x8c\x8d\x8c\x92\x91\x95\x98\x19\xd7\xeb\xb8\xc2"
+"\xb4\xa9\xa6\x88\x19\x91\x06\x6b\xfb\x28\x05\x70\x22\x0a\xeb\x21\x0a\x7b\x06\xab\xf7\x28\x05\x94\x06\xb4\x88\x9c\x7b\xa0\x4f\xaa"
+"\x31\x18\x95\x70\x8e\x89\xa8\x8a\x08\x96\x06\x75\x32\xe5\x0a\x98\x9c\x96\x95\xa0\x90\x1e\xad\xf7\x21\x05\x0e\xf7\xa2\x7c\x15\xcb"
+"\x8d\xbf\x97\xae\x9e\x08\xcc\xaf\xb4\xca\xca\x1a\xc3\x6e\xb1\x50\xa0\x1e\xdd\xa9\xb4\xbc\xd1\x1a\xdb\x48\xbe\x22\x51\x65\x81\x6c"
+"\x50\x1e\x83\x7d\x88\x8a\x88\x1b\x87\x89\x90\x96\x9f\x82\x95\x7b\x7c\x82\x82\x7a\x88\x1f\x7a\x36\x05\x77\x42\x8b\x8b\x89\x1a\x7f"
+"\x94\x82\x98\x98\x93\x92\x9d\x92\x1e\x94\xa5\x95\x9e\x97\x9b\x08\xbb\xae\xca\xa5\xda\x1b\xda\xbd\x6c\x5a\x69\x77\x6a\x68\x74\x1f"
+"\x71\x63\x53\x7f\x3b\x1b\x6d\x22\x0a\xbc\x06\xcc\xcc\x7d\x77\xa2\x1f\x9a\x7e\x93\x79\x76\x1a\x68\x78\x66\x6b\x71\x1e\x6c\x66\x59"
+"\x7c\x4a\x1b\x3a\x56\x9b\xb5\x50\x1f\x93\x80\x83\x8e\x84\x1b\x7e\x7c\x7c\x7d\x65\xf2\x5d\xed\x85\x1f\x7d\x4b\x05\x42\x0a\x68\x8e"
+"\x1f\x0e\xf7\xa7\x7f\x15\xc2\x8c\xbd\x93\xad\x9a\x08\xc7\xa5\xae\xb8\xbc\x1a\xb8\x72\xa8\x57\x99\x1e\xcc\xa3\xac\xaf\xbc\x1a\xcb"
+"\x4a\xb3\x21\x39\x51\x7c\x6a\x61\x1e\x8d\x92\x05\x8b\x0a\x77\x98\x80\xb4\x7e\x1f\xb7\x7c\xb4\x84\xbd\x88\x7c\x48\x18\x42\x0a\x69"
+"\x8e\x1f\x0e\xf8\x5c\xbe\x15\x62\xf7\x1a\x77\xca\x70\xb5\x6e\x99\x19\xa5\x9e\x99\x99\xb0\xb9\xf1\xf7\x10\x8d\x8d\xb8\x8e\x81\x66"
+"\x18\x8a\x7c\x05\x7b\x95\x80\x9a\x99\x94\x96\xa1\x90\x1e\x96\xc0\x05\x8d\x94\x8c\x93\x8e\x1a\x9b\x7b\x94\x6e\x45\x74\x7c\x22\x36"
+"\x1e\x5a\x50\x73\x6f\x7d\x81\x74\x7a\x84\x89\x51\x8a\x08\x88\x06\xb3\xf7\x4d\x05\xb7\x2f\x0a\xfb\x24\x20\x0a\xb9\x66\x0a\xbd\x06"
+"\x76\x33\x05\x8a\x86\x8a\x86\x88\x1a\x7e\x93\x84\x99\x9b\x95\x95\x9f\x90\xa0\x1d\xf8\x4d\xbe\x15\x5f\xe5\x74\xb9\x6f\xaa\x70\x95"
+"\x19\xa9\x9c\xa4\x9f\xb8\xb7\xbe\xbb\x99\x93\xaf\x8e\x84\x64\x18\x8a\x85\x8a\x86\x88\x1a\x7d\x95\x82\x9a\x9b\x94\x95\x9f\x8e\x1e"
+"\x94\xc1\x05\x8c\x8e\x8b\x8d\x8b\x1a\x8c\x8c\x05\x8d\x07\x8c\x8e\x8b\x8e\x8f\x1a\x9d\x7d\x93\x6e\x4e\x6e\x7d\x49\x46\x1e\x66\x67"
+"\x6f\x73\x76\x7d\x7d\x80\x72\x87\x5d\x8a\x08\x87\x06\xa5\xf7\x0a\x05\xb7\x21\x0a\xfb\x1e\x36\x1d\xb5\x06\x46\xfb\xd1\x05\x5f\x20"
+"\x0a\xf7\x1f\x21\x0a\x61\x06\xaa\xf7\x28\x05\x93\x06\xf2\x89\x99\x84\xae\x47\xb9\x2c\x18\x98\x71\x8c\x8b\xa8\x8a\x08\xb6\xf7\x37"
+"\x1d\x9b\x96\x95\x9f\x90\xa0\x1d\xf7\xa6\xf7\xa6\x15\xba\x82\xa0\x72\xa3\x41\xc1\x0a\xcd\x21\x0a\x50\x06\x62\x0a\x81\x66\x18\xe8"
+"\x1d\x46\x38\x7a\x7a\x72\x80\x9b\xd4\x18\x8d\x92\x8b\x8d\x8e\x1a\x98\x80\x97\x7e\x7d\x82\x83\x78\x87\x1e\x78\x33\x7c\x8a\xb3\xf7"
+"\x4d\x05\xb7\x2f\x0a\xfb\x24\x20\x0a\xb9\x06\x28\xfc\x61\x05\x5e\x20\x0a\xf7\x24\x2b\x0a\x5d\x06\xbc\xf7\x75\x05\x9a\x06\x77\x30"
+"\x8a\x7d\x05\xf7\x57\x1d\x0e\xf7\x92\xf7\x58\x15\xbc\x86\x9a\x7f\xa9\x52\xb9\x2c\x18\x98\x71\x8c\x8b\xa8\x8a\x08\xc6\x21\x0a\x54"
+"\x06\x5f\xe5\x74\xb9\x6f\xaa\x70\x95\x19\xa9\x9c\xa4\x9f\xb8\xb7\xbe\xbb\x99\x93\xaf\x8e\x84\x64\x18\x8a\x85\x8a\x86\x88\x1a\x7d"
+"\x95\x82\x9a\x9b\x94\x95\x9f\x8e\x1e\x94\xc1\x05\x8c\x8e\x8b\x8d\x8b\x1a\x8c\x8c\x05\x8d\x07\x8c\x8e\x8b\x8e\x8f\x1a\x9d\x7d\x93"
+"\x6e\x51\x6a\x7b\x56\x53\x1e\x45\x48\x6d\x72\x79\x89\x98\xc5\x18\x8d\x95\x8b\x8b\x8e\x1a\x98\x80\x97\x7e\x7c\x83\x83\x78\x87\x1e"
+"\x7a\x3f\x05\x7b\x06\xa5\xf7\x0a\x05\xb7\x21\x0a\xfb\x1e\x36\x1d\xb5\x25\x0a\x5f\x06\x72\x5a\x0a\xa4\x1f\xf7\x1f\x21\x0a\x61\x06"
+"\xaa\xf7\x28\x05\x9b\x06\x7b\x42\x05\x8a\x88\x8a\x83\xf7\x3c\x1d\xf7\x0e\x22\x1d\xee\x66\x0a\xcd\x21\x0a\x50\x06\x62\x0a\x81\x66"
+"\x18\x88\x0a\xfb\x81\x06\x6a\xfb\x1f\x05\x8a\x86\x8a\x85\x88\x1a\x7f\x93\x83\x98\x9b\x97\x96\x9f\x8f\x1e\x0e\xa2\x1d\xf8\x56\xbe"
+"\x15\xb1\x1d\xf7\x97\x06\x5c\xfb\x6b\x05\x59\x29\x1d\xf7\x0e\x06\x75\xf7\x21\x0a\x83\x99\x9b\x28\x1d\xae\xf7\x21\x05\x0e\xf8\x55"
+"\xbe\x15\xcf\xf7\xd1\x05\xac\x23\x0a\xfb\x0c\x45\x0a\xad\x06\x70\xfb\x12\x05\xfb\x93\x6e\x0a\x77\x1f\xfb\x0b\x33\x0a\xa9\x57\x1d"
+"\xaa\xf7\x20\x05\xf7\x94\x06\x6c\xfb\x20\x05\x63\x45\x0a\xf7\x0d\x06\x76\x33\x05\x89\x83\x8b\x89\xf7\x27\x1d\xf7\xd4\x7b\x15\xcb"
+"\xce\xa4\xb9\xc7\x1f\xb1\xa8\x99\x9a\x9a\x95\x0a\x88\x79\x05\x4e\x0a\x25\xd0\x35\xed\x77\x1e\x7c\x47\x05\x42\x0a\x69\x8e\x1f\x0e"
+"\xf7\xdf\x7c\x15\xbc\x8f\xb7\x96\xb5\x9e\x08\xc5\xa6\xaf\xa8\xa0\x1a\x97\x82\x93\x71\x1d\x8a\x88\x05\x88\x1d\x29\xc8\x4c\xf3\x80"
+"\x1f\x7d\x4b\x05\xa6\x06\xa2\x97\x86\x81\x7c\x78\x7f\x71\x7c\x7f\x8f\x95\x79\x1f\x90\x82\x88\x8c\x86\x1b\x7b\x7d\x7e\x7b\x78\xb7"
+"\x77\xb5\xc4\xb5\xaf\xba\xaa\x79\x9c\x69\x8e\x1f\x0e\x47\x1d\x0e\xf7\x7c\x92\x15\x67\xfb\x3b\xf7\x01\x1d\xab\xf7\x31\xf7\x9f\xf8"
+"\x07\x05\x96\x06\xa2\x99\x97\x9d\x9a\x83\xb5\x0a\xfb\xc6\x32\xf7\xc6\xf7\x02\x1d\x0e\xf8\x08\xf7\x66\x15\x95\xb5\xf7\x7b\xf7\x98"
+"\x05\xa0\x91\x1d\x79\x7c\x80\x1d\x79\x7c\x25\x1d\xa0\x06\xf7\x0c\xfb\x96\x81\x5f\x05\x24\x06\x68\x1d\xf0\x06\x73\xfb\x01\x05\x26"
+"\x21\x1d\xf7\x90\x30\x0a\x29\x06\xa3\xf7\x01\x05\xf7\x00\x66\x1d\x0e\xf7\x76\x78\x15\x2e\x8e\x1d\xe7\x06\x77\x30\xf7\x01\x1d\x9e"
+"\xe6\x05\xe8\x66\x1d\x2f\x06\x8e\x9a\xf7\x9f\xf8\x08\x05\x96\x06\xa2\x99\x97\x9d\x9a\x83\xb5\x0a\xfb\xc7\x32\xf7\xc7\xf7\x02\x1d"
+"\xf4\xfb\xfd\x05\x0e\xf8\x78\xbe\x15\xfb\x1b\xf7\x80\xaa\x1d\xf7\x06\x06\x75\x33\x05\x89\x84\x8b\x88\xe1\x0a\xf8\x74\xbe\x15\xfb"
+"\x21\xf7\x3b\x8a\x0a\xf7\x04\x06\x76\x33\x05\x89\x81\x8b\x8b\xf7\x27\x1d\xad\x1d\x20\x22\x0a\xf7\x4a\x06\x75\x33\x05\x89\x81\x8b"
+"\x8b\xe1\x0a\xae\x1d\x22\x20\x0a\xf7\x47\x06\x76\x33\x05\x8a\x85\x8a\x87\x7e\x0a\x95\x9f\x8f\xa0\x1d\xf7\xb3\xf7\x54\x15\xc7\x9d"
+"\xb0\x9a\xb5\xa6\x60\xfb\x5d\x18\x20\x22\x0a\xf7\x5b\x21\x0a\x64\x06\x7a\x1d\x4e\x61\x6a\x7a\x5c\x7d\x19\x9d\xdb\x8c\x97\x05\x98"
+"\x80\x97\x7e\x7d\x83\x83\x79\x87\x1e\x75\x26\x05\x82\x06\x5e\x75\x9e\xb2\x97\x8d\x98\xac\x0a\x49\xb5\x66\xd8\x89\x1e\x7a\x3b\x05"
+"\x8a\x87\x8a\x84\xf7\x3c\x1d\xf7\x7d\xf7\x18\x15\x81\x5b\x05\x8a\x87\x8a\x85\xf7\x47\x1d\x99\xcb\xb9\x93\xaa\x95\xbf\xa5\x19\x6f"
+"\xfb\x17\x05\x22\x20\x0a\xf7\x54\x06\xa5\x98\x80\x0a\x69\x06\xcf\xf7\xd1\x05\xb2\x2b\x0a\xfb\x14\x22\x0a\xaf\x06\x6f\xfb\x11\x50"
+"\x6d\x74\x81\x5c\x7f\x19\x97\xc0\x05\x8c\x91\x8c\x8f\x8e\x1a\x98\x80\x97\x7e\x7d\x83\x83\x78\x87\x1e\x7a\x42\x7a\x8c\x05\x5f\x8e"
+"\x79\x97\xa5\x1a\x95\x8d\x97\x8e\x9a\x1e\xa3\xf6\x05\xb7\x06\xa6\xbc\x0a\x5a\xb2\x6c\xce\x87\x1e\x0e\xf7\xcb\x22\x1d\xf6\x4c\x1d"
+"\xfb\x5b\x51\x0a\xb2\x26\x1d\x66\x51\x0a\xf7\x18\x2f\x0a\x62\x06\xb5\xf7\x54\x05\xc6\xe0\xc6\xa3\xc7\x1b\xb7\xa1\x78\x64\x7e\x8a"
+"\x80\x87\x79\x1f\x65\xfb\x43\x05\x5d\x36\x1d\xf7\x1e\x2f\x0a\x64\x06\xb0\xf7\x3d\x05\x90\xa3\x8d\x99\x99\x1a\xca\x5d\xb5\x46\x4f"
+"\x4e\x77\x5d\x41\x1e\x0e\xf7\x97\xf8\xee\x15\x25\x2b\x1d\xba\x06\xfb\x01\xfc\x88\xb5\x1d\x57\x76\x5f\x55\x1e\x0e\x75\x1d\xad\x1d"
+"\xfb\x21\x06\x71\xfb\x22\x05\x8a\x88\x8b\x87\x88\x1a\x7d\x91\x85\x99\x9d\x96\x96\xa1\x8f\x1e\x9b\xe3\x05\xf7\x5f\x06\x9d\x97\x95"
+"\x9b\x9a\x80\x95\x79\x1f\x0e\xae\x1d\xfb\x1f\x06\x72\xfb\x1e\x05\x8a\x87\x8b\x87\x88\x1a\x7c\x92\x83\x9a\x9d\x94\x95\xa2\x8f\x1e"
+"\x9c\xe3\x05\xf7\x49\x06\xab\x98\x93\x9d\x9c\x7e\x93\x71\x1f\x0e\xf3\xf7\xaf\x15\x85\x5c\x89\x79\x74\x1a\x4e\xa4\x4f\xb5\x63\x1e"
+"\x6a\xae\xb7\x7a\xc0\x1b\xf7\x3c\xf7\x32\xf7\x46\xf7\x51\xf7\x1a\x3a\xe5\xfb\x0b\x39\x33\x5e\x44\x52\x1f\xbb\x78\x05\xbc\xb3\xd3"
+"\xae\xc7\x1b\xe6\xca\x3f\xfb\x00\x7a\x8a\x7e\x86\x6f\x1f\x7c\x59\x15\x70\x4e\x78\x6e\x66\x68\x08\x5c\x5a\x52\x72\x53\x1b\x35\x48"
+"\xd7\xeb\x91\x8b\x94\x8c\x95\x1f\x0e\x29\x0a\x29\xf7\x98\x48\x1d\x37\x0a\xfb\x12\xf8\x29\x32\x0a\xf8\x3c\xf8\xd3\x15\xfb\x3d\xfb"
+"\x32\xfb\x46\xfb\x52\xfb\x19\xdc\x31\xf7\x0b\xf7\x39\xf7\x34\xf7\x47\xf7\x4d\xf7\x1c\x3c\xe6\xfb\x0b\x1f\xf7\x17\xfb\xd6\x15\x7b"
+"\x5e\x7f\x73\x74\x6b\x08\x41\x55\x41\x60\x41\x1b\x36\x48\xd7\xeb\x99\x8c\x9a\x8c\x9c\x1f\x96\xbd\x15\xf7\x19\xb7\xf0\xe3\xf7\x00"
+"\x1b\xe1\xce\x3f\x2a\x7f\x8a\x79\x89\x79\x1f\x0e\x89\x0a\x2d\x1d\xf7\x0a\xf9\x65\x48\x1d\x30\x1d\xfb\x57\xf7\xf4\x32\x0a\xf9\x7d"
+"\xf9\x46\xd0\x0a\xf8\x2d\xe3\x15\x94\x63\x8f\x7e\x92\x7f\x08\x78\x97\x9b\x80\x9c\x1b\xc8\xb4\xe6\xf7\x1c\xf7\x18\x60\xe6\x4e\x44"
+"\x67\x32\xfb\x40\x1f\xfb\xee\x07\x7b\x93\x81\x99\x99\x93\x95\x9c\x1e\xf8\x03\x04\xa1\x07\xed\xa7\xd7\xaf\xb0\xa5\x42\x22\xfb\x0d"
+"\x75\x4b\x61\x68\x75\xb8\xd7\x87\x1e\xfb\xe5\x81\x15\x8a\x5d\x7d\x66\x76\x81\x08\x81\x86\x85\x82\x80\x1a\x89\x07\x7c\x8c\x95\x83"
+"\x9c\x1b\xf1\x8c\x05\xf4\xc4\xec\xf7\x46\xf7\x1d\x66\xe8\x48\xac\x1f\x75\x96\x75\x8f\x65\x8a\x08\x84\x88\x8d\x8f\x95\x93\xa3\x90"
+"\x93\x1f\x8e\x90\x8c\x8d\x8f\x1a\x90\x88\x90\x87\x8e\x1e\x89\x8c\x05\x8d\x88\x87\x8c\x87\x1b\x79\x76\x69\x6c\x8a\x1f\x82\x8a\x8a"
+"\x89\x84\x1b\x7a\x06\x7a\x81\x82\x7e\x7d\x95\x83\x9c\x1f\x9c\x06\x91\x8d\x88\x86\x1f\xb7\x16\x92\x8c\x8c\x9b\xee\xaf\x4b\xfb\x43"
+"\xfb\x09\x76\x46\x60\x72\x1e\x80\x79\x68\x86\x5a\x1b\x7e\x86\x8d\x8f\x8c\x8b\x8c\x8c\x8c\x1f\xa0\xa8\x94\xaa\x8c\xba\x08\x0e\xf8"
+"\x34\xbd\x15\xec\xc2\xc6\xeb\xf2\x1a\xf7\x2e\xfb\x0a\xf7\x09\xfb\x2e\xfb\x2f\xfb\x09\xfb\x09\xfb\x2e\x24\xc6\x2b\xec\x54\x1e\xfb"
+"\x15\x06\x74\x80\x83\x7a\x7b\x98\x82\xa0\x1f\xf7\x62\xbb\x06\x54\xaa\x7b\x96\x75\x9f\x08\x51\xbf\x6d\xcc\xd3\x1a\xd3\xa7\xc6\xc2"
+"\xb9\x1e\xad\xb4\xb3\x99\xc3\x1b\xc3\xb3\x7d\x69\xb4\x1f\xc2\x5d\xa7\x50\x43\x1a\x47\x71\x4f\x57\x57\x1e\x72\x72\x7a\x7f\x4e\x69"
+"\x08\x5b\xf7\x62\x07\xa0\x98\x94\x9b\x9c\x80\x93\x74\x1f\x0e\xab\x0a\x68\x0a\xe6\x16\xbe\x06\xf7\x34\xf8\x1a\xf7\x35\xfc\x1a\x05"
+"\xbe\x06\xfb\x42\xf8\x47\x05\x40\x06\x0e\xe6\xf8\x46\x15\xf7\x42\xfc\x46\x05\xd6\x06\xf7\x42\xf8\x47\x05\x58\x06\xfb\x35\xfc\x19"
+"\xfb\x34\xf8\x19\x05\x58\x06\x0e\xf7\xbd\xf8\x89\x15\xfb\x1b\xfb\x05\xfb\x04\xfb\x1b\xfb\x22\xf7\x02\xfb\x04\xf7\x20\xf7\x1c\xf7"
+"\x03\xf7\x04\xf7\x1f\xf7\x1f\xfb\x03\xf7\x03\xfb\x1e\x1f\x70\xfb\xad\x15\xfb\x36\x07\x35\x94\x3e\xd6\x87\xd9\x08\xc2\x04\x91\xde"
+"\xd5\xd5\xe2\x96\x08\xfb\x3c\x07\xc2\x54\x15\xf7\x3b\x06\x88\x42\x3b\x3d\x37\x80\x08\xf7\x6d\x04\xf7\x3c\x07\xdf\x82\xd7\x3f\x92"
+"\x38\x08\x0e\x9c\x16\xf8\xcb\xf8\xcb\xfc\xcb\x06\xf8\x92\xfc\x92\x15\xfc\x59\xf8\x59\xf8\x59\x06\x0e\xca\xf7\xe7\x15\xfb\x2b\x90"
+"\x68\xa6\x5f\x1e\x47\xb5\xd8\x62\xe1\x1b\xbf\xbb\x9a\xa6\xb4\x1f\xbe\xae\xa8\xb9\x95\xca\x08\x90\xac\x8c\xa1\xed\x1a\xf7\x51\x07"
+"\x9f\x80\x99\x7b\x7b\x82\x7f\x75\x1e\xfb\x54\x07\xfb\x10\x86\x62\x78\x6a\x1e\x57\x6d\x4a\x68\x49\x1b\x63\x62\x98\xa2\x6a\x1f\x62"
+"\xa8\x78\xac\x85\xbb\x87\xa9\x8b\x8b\x8a\xf7\x01\x08\xf7\x54\x07\xa0\x81\x98\x7b\x7a\x82\x7f\x75\x1e\x0e\xf7\xe1\x16\xf7\x67\xf8"
+"\xeb\x05\x55\x06\x4c\xfb\x37\x05\xfb\x97\x06\x4d\xf7\x37\x05\x58\x06\xf7\x5f\xfc\xeb\x05\xf7\x2a\xf8\x15\x15\xfb\x03\xfb\xe2\x05"
+"\x84\x06\x24\xf7\xe2\x05\x0e\xf8\xd4\xf8\x37\x15\xdb\x0a\x48\x4a\x7c\x1d\xca\xa3\xbc\xcb\x1f\x7f\x52\x05\x9e\x06\x57\x70\x70\x69"
+"\x63\x65\x0a\xaa\xaf\xac\xc7\xa4\x1f\xa3\x94\x93\x94\x9a\x1a\x99\x82\x92\x77\x1e\x70\x06\x0e\xf8\x63\xf8\x04\x15\x6b\xfb\x27\x7b"
+"\x41\x7b\x64\x71\x6f\x19\x6e\x6f\x67\x7b\x60\x1b\x4b\x67\xac\xc5\xa0\x8f\xaa\x94\xb3\x1f\xb6\xf7\x5d\x05\x20\x8d\x1d\xbe\x06\x6b"
+"\xfb\x27\x05\x83\x66\x87\x69\x70\x1a\x36\xc7\x55\xe8\xc3\xc3\xa4\xb4\xb0\x1e\xa9\xad\x9f\xbb\x9d\xe1\xab\xf7\x2a\x18\xb4\x06\xa3"
+"\x6d\x1d\xfb\x26\x3a\x0a\x0e\x73\x1d\xfb\x23\xf7\x72\x15\xf7\x15\x0a\xa8\x9f\x7c\x9a\x75\x1f\xf7\x62\xd9\x0a\x73\x1d\xc4\xf7\x5a"
+"\x15\x98\x95\x91\x94\xf3\x0a\x2b\x05\x7e\x81\x85\x82\x80\x1a\x7f\x93\x83\x98\x92\x93\x8e\x92\x95\xf7\x13\x1d\xf7\x98\x16\x6e\x71"
+"\x72\x6f\x75\x99\x7e\xa2\xa8\xa5\xa4\xa6\xa0\x51\x1d\x73\x1d\xc0\xf7\x6f\x61\x1d\x83\x93\x7e\x5b\x1d\x93\x83\x98\xf7\x10\x0a\x2c"
+"\x0a\x87\xf8\xed\x5c\x1d\x7a\x74\x95\x1d\x0e\x2c\x0a\xf7\x02\xf8\xb4\x5b\x0a\x68\x80\x85\x7b\x1b\x80\x83\x8f\x9e\x6c\xe3\x0a\x72"
+"\x80\x71\x69\xf7\x07\x1d\x95\x87\x80\x9b\x1f\x73\xaf\x9d\x84\xa2\x1b\xa5\xa4\x97\xa9\xaf\x1f\x9e\x9a\x90\x92\x56\x0a\x4d\x0a\xf7"
+"\x2d\xf8\xe0\x15\x9a\x95\x8f\x92\x96\x46\x0a\x80\x1e\xfb\x1c\x29\x05\x7c\x80\x87\x86\x7f\x3e\x0a\x90\x47\x0a\xf8\x26\x16\xf7\x35"
+"\xf8\x04\x05\x9b\x27\x1d\xfb\x03\x20\x1d\xb5\x06\xfb\x12\xfb\xb5\x6b\xf7\x80\x05\x50\x06\xfb\x19\xfb\x7f\x88\xf7\xb4\x05\xba\x5d"
+"\x1d\x99\x06\x8f\xfc\x04\x05\xc5\x06\xf7\x1f\xf7\x87\xad\xfb\x87\x05\xbd\xf9\x12\x15\xfb\x32\xfb\x01\x05\x7b\x63\x0a\x89\x8e\x82"
+"\x94\x1f\x0e\x4d\x0a\x33\xad\x0a\x4d\x0a\x54\xde\x1d\xf8\x3c\xf7\xb1\x15\x92\x06\x97\xbe\x81\x8c\x05\x83\x06\x2d\x90\x59\xa9\xc0"
+"\x1a\xcf\xdf\xc2\xf6\x8d\x1e\xab\x8c\x8b\x8b\x91\x8d\x08\x96\x90\x93\x96\x96\x1a\x99\x81\x93\x78\x1e\xfb\x5c\x06\x73\x7d\x81\x78"
+"\x7c\x95\x84\x9e\x1f\x99\x06\x59\x6b\x71\x61\x57\x1a\x5b\x9d\x6c\xb7\x70\x1e\x28\x67\x4e\x40\x38\x1a\x38\xc0\x5b\xf5\x7e\x1e\xd5"
+"\x83\x99\x85\x72\x1a\x79\x80\x78\x79\x7e\x1e\x7c\x7f\x72\x85\x68\x89\x08\x6c\x89\x82\x85\x78\x1a\x78\x96\x83\xa4\xe7\xcf\xbf\xd2"
+"\xa7\x80\xa3\x76\x9a\x1e\x7a\x97\x77\x91\x5b\x91\x64\x90\x83\x8c\x7b\x90\x08\x5d\x9a\x76\xa5\xb3\x1a\xbb\xaa\xb9\xc0\xab\x1e\xb1"
+"\xa1\xbe\x97\xc9\x8c\x08\x0e\xb3\x1d\xf7\x9e\xf7\xa2\x3d\x0a\x63\x0a\x89\x8e\x81\x94\x1f\x0e\x52\x1d\xf7\x35\xf7\x96\xf7\x0b\x0a"
+"\x8e\x86\x50\x1d\x83\x92\x91\x88\x92\x1b\x9a\x9b\x99\x99\x8e\x84\x99\x87\x8e\x1f\x0e\x9b\x0a\x8e\xf7\x69\x15\x9a\x96\x8f\x91\x96"
+"\x46\x0a\x80\xf7\x0d\x1d\x9b\x0a\xfb\x16\xf7\x7e\x59\x1d\xf8\x5f\xf8\xbb\x15\xfb\x79\xfb\x55\x34\xfb\x08\xfb\x03\x1a\x5d\x9f\x65"
+"\xaf\x72\x1e\xa7\x78\xaf\x80\xc8\x82\x08\xb5\x85\x98\x82\x75\x1a\x5f\x5b\x6b\x47\x8a\x1e\x79\x8a\x81\x83\x7a\x1a\x7a\x97\x83\xa4"
+"\xe3\xd2\xc5\xd2\xa7\x80\xa3\x76\x99\x1e\x7e\x94\x7e\x8f\x57\x94\x58\x94\x82\x8e\x74\x97\x08\x6f\x98\x7c\xa7\xae\x1a\xc0\xb2\xd3"
+"\xd1\xd8\x1e\xb0\xb3\xce\xcb\xd0\xc7\xa4\xa1\x9c\x9a\x92\x92\x90\x90\x18\x8c\x8c\x8c\x8c\x8d\x8d\x97\xbb\x05\xfb\x6c\x2b\x1d\x0e"
+"\x7b\x9b\xf8\x35\x9b\xf7\x16\x97\xa7\x98\x06\xbe\x0a\xc0\x0b\xa7\x93\x8e\x8f\x8f\x8f\x8e\x8f\x93\xbb\xae\xab\x0c\x0c\xf8\xec\x14"
+"\xad\x13\x00\xfb\x02\x00\x01\x00\x08\x00\x13\x00\x1a\x00\x1f\x00\x24\x00\x2a\x00\x35\x00\x42\x00\x48\x00\x65\x00\x6a\x00\x6f\x00"
+"\x89\x00\xa1\x00\xac\x00\xb2\x00\xb9\x00\xd5\x00\xf4\x00\xf9\x00\xff\x01\x06\x01\x0b\x01\x41\x01\x46\x01\x75\x01\x80\x01\x8d\x01"
+"\x93\x01\x9b\x01\xa2\x01\xa7\x01\xd9\x01\xf2\x01\xff\x02\x25\x02\x30\x02\x3b\x02\x42\x02\x47\x02\x4d\x02\x7c\x02\xbd\x02\xfe\x03"
+"\x08\x03\x3b\x03\x57\x03\x68\x03\x72\x03\x7d\x03\x86\x03\x8a\x03\x99\x03\xa4\x03\xac\x03\xb4\x03\xbf\x03\xc5\x03\xcc\x03\xd5\x03"
+"\xdd\x04\x24\x04\x38\x04\x4c\x04\x66\x04\x75\x04\x8d\x04\x99\x04\x9f\x04\xb8\x04\xd2\x04\xe3\x04\xea\x04\xf6\x05\x0e\x05\x15\x05"
+"\x20\x05\x2d\x05\x36\x05\x45\x05\x54\x05\x5a\x05\x67\x05\x74\x05\x7d\x05\x84\x05\x90\x05\x9a\x05\xa7\x05\xb2\x05\xbd\x05\xc7\x05"
+"\xd1\x05\xd6\x05\xdf\x05\xeb\x05\xf3\x06\xb3\x07\x3a\x07\x51\x07\xb0\x07\xc5\x07\xdc\x08\x15\x08\x2e\x08\x48\x08\x61\x08\xc8\x08"
+"\xeb\x09\x0c\x09\x42\x09\x5a\x09\x74\x09\x79\x09\xc1\x0a\x02\x0a\x1d\x0a\x34\x0a\x60\x0a\xae\x0a\xc8\x0a\xf0\x0b\x04\x0b\x1d\x0b"
+"\x62\x0b\x65\x0b\x6e\x0b\x9a\x0b\xb6\x0b\xea\x0b\xf7\x0c\x02\x0c\x25\x0c\x4e\x0c\x73\x0c\x97\x0c\x9c\x0c\xac\x0c\xc8\x0c\xf3\x0d"
+"\x0e\x0d\x27\x0d\x2e\x0d\x45\x0d\x4a\x0d\x52\x0d\x79\x0d\x9e\x0d\xb9\x0d\xbe\x0d\xd5\x0d\xf8\x0e\x01\x0e\x12\x0e\x23\x0e\x2c\x0e"
+"\x3e\x0e\x4a\x0e\x51\x0e\x58\x0e\x67\x0e\x73\x0e\x88\x0e\x8c\x0e\x9e\x0e\xa7\x0e\xc3\x0e\xd8\x0e\xe0\x0e\xe9\x0e\xf2\x0f\x0c\x0f"
+"\x17\x0f\x22\x0f\x31\x0f\x42\x0f\x51\x0f\x61\x0f\x71\x0f\x77\x0f\x80\x0f\x97\x0f\xac\x0f\xc1\x0f\xd4\x0f\xdc\x0f\xe2\x0f\xee\x0f"
+"\xfa\x10\x06\x10\x19\x10\x1d\x10\x30\x10\x37\x10\x40\x10\x49\x10\x4f\x10\x5a\x10\x60\x10\x6d\x10\x7e\x10\x86\x10\x96\x10\xa6\x10"
+"\xb6\x10\xc6\x10\xcd\x10\xd5\x10\xdd\x10\xec\x10\xf3\x11\x02\x11\x0d\x11\x1c\x11\x20\x11\x2e\x11\x3c\x11\x47\x11\x55\x11\x63\x11"
+"\x71\x11\x7d\x11\x86\x11\x8f\x11\x98\x11\x9d\x11\xaa\x11\xb7\x11\xc4\x11\xca\x11\xd7\x11\xde\x11\xe5\x11\xf1\x11\xfd\x12\x09\x12"
+"\x15\x12\x1f\x12\x27\x12\x2f\x12\x37\x12\x3f\x12\x47\x12\x52\x12\x5d\x12\x68\x12\x73\x12\x7e\x12\x89\x12\x92\x12\x98\x06\x72\x5a"
+"\x0a\xa4\x1f\x0b\x06\xa4\x99\x94\x9b\x9c\x7d\x94\x72\x1f\x0b\x06\x71\x5a\x0a\xa5\x1f\x0b\x06\xa3\x52\x0a\x0b\x06\x74\x7d\x80\x0b"
+"\x06\x46\xfb\xd1\x05\x0b\x06\x74\x7d\x80\x79\x7c\x94\x84\x9f\x1f\x0b\x15\x94\x95\x8f\x92\x93\x1a\x95\x81\x95\x80\xef\x1d\x1a\x97"
+"\x82\x94\x7e\x0b\xf8\x64\xce\x0a\x35\x1d\x6b\x06\x34\xf8\x94\x05\xfb\x64\x37\x1d\x7b\x1d\x9a\x82\x91\x98\x1d\xf7\x8e\xbe\x8b\x1d"
+"\x0b\x94\x84\x9f\x1f\x0b\x06\xa5\x3a\x1d\x0b\xf8\x45\x16\xdd\x06\xa1\x40\x1d\x70\x06\xdb\xf8\x04\x05\xdb\x0a\x49\x49\x7c\x1d\xca"
+"\xa3\xbc\xcb\x1f\x0b\x15\x9a\x95\x90\x93\x94\x1a\x98\x82\x94\x7e\x83\x86\x89\x83\x80\x82\x1d\x8b\x8b\x95\x9c\x1e\x0e\x06\xa1\x9a"
+"\x97\x9d\x9a\x83\x91\x76\x1f\x0b\x06\xa4\x99\x80\x0a\x0b\x75\x0a\x82\x91\x77\x1f\x0b\xf8\x3b\xf7\x03\x1d\xf7\x1a\x3b\xe5\xfb\x0b"
+"\x1f\x85\x58\x15\xe3\xcb\x3e\x22\xfb\x2c\xf7\x29\x1d\xf7\x1d\x1f\x0b\xf7\x08\x1d\xbf\xb8\x6d\x0a\x82\x84\x79\x85\x1e\x67\x7f\x5b"
+"\x71\x55\x1b\x71\x73\x92\x96\x7d\x1f\x84\x91\x7d\x9d\x8d\x1a\x0e\xe2\x0a\x9e\x1f\x0b\x06\xb5\xf7\x57\x05\x0b\x42\x1d\xaf\xab\xaa"
+"\xac\x0b\xef\xf8\x61\x05\x0b\x74\x0a\x76\x1f\x5c\x06\xed\x1d\x90\x8d\x8b\x90\x9a\x1e\xa0\xd8\xa5\x90\xad\x1b\xca\xb2\x73\x66\xf7"
+"\x16\x1d\x29\x48\xbf\x63\xe0\xd0\xc6\xa1\xbf\xd3\x1f\x99\xc8\xf7\x49\x1d\xdf\xbc\xf7\x04\xb6\xb4\x86\x82\xae\x1f\x0b\xf8\x1d\x56"
+"\x1d\x0b\x15\xf7\x2f\xf7\x01\x05\x9b\x92\x90\x92\x9a\x1a\x97\x82\x93\x7e\x88\x7d\x86\x87\x86\x1e\xfb\x0d\x35\x35\xe0\x05\x94\x82"
+"\x89\x8c\x82\x1b\x88\x06\x7f\x7c\x7b\x7f\x80\x8e\x86\x94\x86\x1f\x0e\x06\x73\x7e\x81\x78\x7d\x95\x83\x9d\x1f\x0b\x81\x83\x87\x89"
+"\x80\x80\x1e\xfc\x4b\xfc\x2d\x05\x0b\x99\x82\x92\x77\x1f\x0b\x15\xfb\x33\xfb\x01\x05\x7c\x0b\x1a\x7f\x94\x82\x98\x92\x0b\x27\xfc"
+"\x61\x05\x0b\xf7\xea\x22\x1d\xe7\x4b\x1d\xfb\x7d\x37\x1d\xf7\x39\x1d\x80\x78\x7d\x25\x1d\xf8\x5b\x06\xb7\xf7\x5e\x05\x8d\x93\x8b"
+"\x8c\x8f\x1a\x96\x81\x93\x7f\x7a\x81\x81\x77\x87\x1e\x69\xfb\x2d\x05\xfb\x99\x06\x0b\xf8\x5b\xf8\xef\x15\xfb\x38\x24\x0a\x78\x7c"
+"\x93\x85\xa0\x1f\xf7\x02\x06\xfb\x01\xfc\x89\xf1\x1d\x0b\xf6\x1d\xb8\x77\xb4\xc4\xb6\xaf\xba\xaa\x79\x9c\x0b\x15\x91\x94\x8e\x93"
+"\x93\x1a\x97\x83\x94\x7e\x81\x83\x85\x7e\x82\x1e\x2e\xfb\x1b\x05\x84\x81\x88\x84\x83\x1a\x7e\x93\x82\x98\x95\x93\x91\x98\x95\x1e"
+"\x0b\x06\xa3\x99\x95\x9d\x9a\x81\x93\x78\x1f\x0b\x06\x73\x7e\x81\x79\x7c\x95\x83\x9d\x1f\x0b\x28\x0a\x84\x86\x89\x83\x0b\x8d\x93"
+"\x97\x1e\x0e\x06\x28\xfc\x61\x05\x0b\xf8\xbd\xf8\xa0\x15\x93\x0a\x05\x62\xab\xc1\x75\xcc\x1b\xf7\x1e\xf7\x05\xe5\xf7\x03\xaf\x7b"
+"\xad\x71\x9d\x1f\x70\x62\x1d\xd0\xd7\xc5\xe4\xb0\xad\x80\x7b\x9d\x1e\x94\x82\x9f\x6e\x79\x1d\x0b\xf7\x9b\xf8\x37\x15\x39\x4f\x1d"
+"\x9e\x1f\xa7\x69\x0a\x77\x1f\x65\x06\xbf\xf7\x84\x05\xd7\xda\xa6\x9a\xca\x1b\xae\x9d\x85\x79\x9d\x1f\x9a\x7d\x92\x7a\x77\x1a\x82"
+"\x8b\x88\xb9\x0a\xbf\xf7\x87\x05\x8d\x93\x8c\x93\x93\x1a\xd1\x55\xb8\x39\x4e\x63\x79\x54\x4b\x1e\x0b\xf7\x73\xf7\x8a\x15\xf7\x13"
+"\x06\xcd\x69\xab\x57\xc1\xfb\x34\x08\xc7\x23\x1d\x70\x06\x5b\xf7\x16\x75\xb1\x5b\xb4\x08\xf6\xae\xc7\xc8\xd6\x1a\xd6\x48\xc4\x33"
+"\x1e\xfb\x8c\xae\x0a\xc0\xf7\x8a\x15\xba\xf7\x6b\x05\xf7\x28\x06\xc9\xbd\x63\x59\x49\x2c\x50\x23\x1f\x0b\xe9\x1d\x83\x50\x42\x50"
+"\x4d\xa1\x0a\x0b\xf8\x52\x16\xf7\x35\xf8\x04\x05\x9b\x5d\x1d\xb4\x06\xfb\x12\xfb\xb5\x6b\xf7\x80\x05\x50\x06\xfb\x19\xfb\x7f\x88"
+"\xf7\xb4\x05\xba\x5d\x1d\x99\x06\x8f\xfc\x04\x05\xc5\x06\xf7\x1f\xf7\x87\xad\xfb\x87\x05\x0b\xb3\x64\x55\xa0\x4c\x1b\x47\x49\x71"
+"\x5c\x53\x1f\x55\x5c\x60\x46\x7e\x4e\x79\x3a\x18\x88\x7c\x89\x7b\x7b\x1a\x0b\x1e\xfb\x0f\x37\x36\xdf\x05\x91\x84\x85\x8e\x85\x1b"
+"\x7b\x7c\x92\x1d\x69\x6a\x35\x0a\xa5\x78\x9d\x70\x1f\x0b\x06\x72\x7d\x82\x7b\x7a\x99\x82\xa4\x1f\x0b\x99\x96\x9d\x99\x81\x93\x78"
+"\x1f\x0b\xa2\x34\x1d\x0b\x85\x81\x80\x1a\x7f\x94\x83\x97\x92\x93\x8e\x92\x95\x1e\x0e\x06\x75\x7c\x7f\x7a\x7c\x94\x84\x9f\x1f\x0b"
+"\x95\x1a\x97\x81\x94\x7f\x1e\x0e\x06\xa2\x9a\x96\x9e\x35\x1d\x0b\x06\x76\x80\x82\x7b\x7a\x96\x82\xa0\x1f\x0b\x8a\x8e\x81\x94\x1f"
+"\x0e\x7d\x82\x7a\x7b\x99\x82\x0b\x15\x84\x85\x89\x84\x83\x1f\x6e\x0b\xa2\x9a\x97\x9d\x9a\x82\x91\x0b\x74\x0a\x76\x1f\x5c\x06\xed"
+"\x1d\x8e\x90\x8c\x8c\x90\x1e\xa4\xe5\x9f\x8f\xaf\x1b\xca\xb2\x73\x66\x86\x8b\x87\x8a\x88\x1f\x7d\x4b\x05\x9a\x55\x6e\x8f\x5f\x1b"
+"\xfb\x22\xfb\x01\x40\x29\x48\xbf\x63\xe0\xd0\xc6\xa1\xbf\xd3\x1f\x99\xc8\xf7\x49\x1d\xe0\xbc\xf7\x05\xb3\xb5\x86\x82\xae\x1f\x0b"
+"\xf7\xae\xf8\x37\x15\xa6\x0a\x50\xc1\x64\xde\xc0\xd5\x9a\xa0\xbc\x1e\xa5\x0a\x0b\xf7\xe5\xbe\x15\xd6\x0a\x94\xa0\x87\x1d\x86\x6c"
+"\x1d\x67\x0a\xf7\x8f\x23\x1d\x0b\xf8\x89\x16\xb3\xf7\x4b\x05\x8d\x95\x8b\x8b\x8e\x7c\x0a\xf5\x1d\x88\x1a\x7f\x94\x82\x98\xf7\x18"
+"\x1d\x0b\xcc\x0a\x36\xdf\x05\x91\x84\x85\x8e\x85\x1b\x7b\x7c\x92\x1d\x62\xf7\x1a\x77\xca\x70\xb5\x6e\x99\x19\xa5\x9e\x99\x99\xb0"
+"\xb9\xf1\xf7\x10\x8d\x8d\xb8\x8e\x0b\xd1\x0a\x91\x88\x91\x1b\x9b\x9a\x99\x9b\x92\x0b\x49\x1d\xf7\x7e\x06\x0b\x1a\x6b\xa5\x78\xb7"
+"\xb9\xb8\xa1\xa1\x94\x84\x93\x82\x88\x86\x8a\x88\x87\x1e\x7e\x70\xf7\x45\x1d\x0b\x48\x0a\x5e\x20\x0a\xf7\x24\x2b\x0a\x5d\x06\xbc"
+"\xf7\x75\x05\xb3\x06\xcb\x89\xa5\x73\xa6\x37\xc1\x0a\x0b\x9b\x96\x95\x9f\x8f\x1e\x9a\xcf\x05\xf7\x30\x26\x1d\x26\x20\x1d\x0b\xf8"
+"\x05\xf7\xf4\xf7\x0c\x1d\x25\x0a\x62\x33\x1d\xf7\x18\x75\x0a\x82\x91\x0b\x65\x2b\x78\x7d\x68\x1e\x7c\x85\x84\x81\x7f\x1a\x7f\x94"
+"\x82\x96\x90\x8d\x8b\x90\x9a\x1e\xa0\x0b\x9b\x1d\x8e\x8d\x1a\x96\x0b\x06\xa2\x99\x96\x9d\x99\x81\x93\x79\x1f\x0b\x9a\xa9\xad\x1e"
+"\xa4\xa0\x9d\xaa\x9f\x28\x0a\x7c\x0b\x06\xa5\xf7\x12\x05\xb1\x96\x1d\x0b\x9a\x97\x9d\x9a\x82\x91\x77\x1f\xfb\x02\x06\x74\x7d\x80"
+"\x0b\xae\xb3\x1f\x6a\xfb\x2f\x15\xaf\xa2\x77\x6d\x64\x61\x66\x0b\x92\x96\x28\x0a\x84\x0b\x81\x1a\x7e\x96\x80\x99\x94\x91\x8f\x95"
+"\x93\x1e\x0b\x88\x1a\x7f\x94\x82\x98\x9b\x96\x95\xa0\x8f\x1e\x0b\xf8\x31\x16\xf1\x75\x0a\x83\x91\x0b\x06\xa1\x9a\x97\x9d\x9a\x0b"
+"\x06\x96\xbf\x05\xb9\x95\xad\xae\xaf\x1b\x99\x0b\x15\x45\x06\x72\xfb\x05\x05\xd1\x06\x0e\x15\xf7\x32\xf7\x00\x05\x9c\x97\x8f\x6a"
+"\x1d\x85\x0b\x06\xa1\x9a\x97\x9c\x9b\x83\x91\x77\x1f\x0b\x84\x88\x84\x81\x1e\xfb\x1b\x2b\x05\x7e\x0b\x93\xa4\x1b\x9a\x9d\x82\x78"
+"\xa3\x1f\x0b\x1a\x96\x81\x94\x7f\x7a\x81\x81\x76\x0b\x85\x44\x1d\x93\x0b\x88\x1a\x7e\x93\x84\x98\x9c\x96\x0b\x1e\xf7\x0f\xdf\xe0"
+"\x38\x05\x84\x93\x90\x88\x0b\x94\x9c\x9b\x7d\x94\x72\x1f\x0b\xf7\xe3\xbd\x15\x60\xa4\xb0\x74\xb7\x1b\xae\xb6\x9d\xaf\xbc\x1f\xa3"
+"\x9c\x91\x93\xe8\x0a\x6e\x1b\x58\x66\xbe\xd1\x93\x8c\x9a\x8d\x9b\x1f\xf7\x96\x06\x95\xbb\x8d\x9d\xf7\x3b\x1d\x5c\x5c\x71\x5b\x64"
+"\x1f\xb9\x7d\x66\xa7\x5d\x1b\x6b\x69\x83\x7b\x62\x1f\x6e\x7f\x81\x81\x7c\x1a\x81\x95\x80\x94\x91\x93\x8e\x90\x95\x1e\x9a\xa7\xaa"
+"\x93\xa6\x1b\xb2\xa6\x72\x67\x83\x8b\x88\x8a\x86\x1f\x7f\x56\x05\x92\x74\x6e\x8f\x70\x1b\x46\x42\x70\x63\x63\x1f\x73\x72\x7f\x6c"
+"\x65\x1a\x43\xbc\x5d\xd7\xb5\xb3\x9d\xb2\xb7\x1e\x8a\x83\x05\x8a\x86\x8a\x87\x87\x1a\x80\x94\x82\x97\x9b\x28\x1d\x6b\xe0\x15\x51"
+"\x50\x66\x74\x66\x1b\x5b\x6b\xa6\xb5\x9d\x92\xa2\x95\x98\x1f\xa8\xa2\xcd\xa4\xc2\x1b\xa0\xa3\x87\x83\xa4\x1f\xc8\xb9\x15\xe4\xab"
+"\xb9\xba\xc3\x1b\xba\xa4\x6a\x4e\x7d\x8a\x81\x8a\x79\x1f\x0b\xf7\xdf\xf7\x4d\x15\x6e\xfb\x1a\x05\x5b\x26\x0a\xf7\xf1\x06\xa8\xf7"
+"\x1b\x05\x8c\x8c\x8b\x92\x8f\x1a\x96\xea\x0a\xba\xf7\x6c\x05\xce\x06\x87\x77\x05\x89\x85\x8b\x89\x87\x1a\x7f\x94\x82\x97\x9b\x96"
+"\x96\x9f\x8f\x1e\x9f\xe9\x05\x8c\x8f\x8c\x90\x8e\x1a\x97\x82\x94\x7f\x7b\x81\x81\x76\x86\x1e\x86\x74\x05\x48\x06\xb5\xf7\x56\x05"
+"\xf7\x48\x06\x75\x24\x05\x89\x84\x8b\x89\x73\x0a\xad\xf7\x30\x05\xfc\x45\x21\x1d\xc2\x06\xfb\x7a\xfc\x61\x05\x69\x29\x1d\xf2\x23"
+"\x1d\x7a\x06\xce\xf7\x1a\x05\xf7\x22\xbe\x15\xfb\x09\x06\xf7\x1d\xf7\xa8\x05\xb3\x06\x0b\xf8\xbf\xf8\x6f\x15\x88\x0a\xfb\x24\x20"
+"\x0a\xb9\x66\x0a\xcd\x21\x0a\x50\x06\x62\x0a\x08\x0b\xf7\x30\xf7\x9e\x15\x5c\xfb\x6b\x05\x6d\x29\x1d\xf7\x70\x06\xf7\x10\x88\xf7"
+"\x1b\xf7\x0b\xa9\xf7\x1c\x96\xc2\x18\x90\x9f\x8d\x9f\x9c\x1a\xf7\x08\x3d\xde\xfb\x02\x1e\xfb\x70\x29\x1d\xa6\x06\x61\xfb\x57\x05"
+"\x42\x21\x1d\xf7\x44\xf7\x8a\x15\xf7\x43\x1d\x62\x1a\x7f\x8a\x7e\x88\x7f\x1e\x7b\x43\x72\x24\xfb\x00\x2c\x32\x8e\x19\xfb\x23\x06"
+"\xba\xf7\x6b\x05\xf7\x31\x4b\x1d\xfb\x2f\x06\x0e\xf8\x51\xf7\x9e\x15\x5c\xfb\x6b\x05\x59\x29\x1d\xf7\x20\x2a\x1d\x64\x06\xb1\x1d"
+"\x0e\xf8\x7d\xf7\x9e\x15\xc0\x0a\xdf\x1d\x79\x7c\xd1\x1d\x73\x86\x1d\x9c\x9b\x82\x91\xca\x0a\x0b\xf7\x6d\xf7\x6f\x15\xe8\xcf\xe0"
+"\x6e\xa8\x50\xa9\xfb\x5b\x19\xe6\x23\x1d\x57\x06\x6c\xf7\x48\x6e\xc1\x39\xb2\xf7\x93\xf7\x50\x18\x9a\x23\x1d\xfb\x0b\x32\x1d\xa8"
+"\x06\xfb\xc8\xfb\x77\xbc\xf7\x77\x05\xd1\x23\x1d\xfb\x3e\xae\x0a\x0b\xe8\x1d\x5a\x50\x73\x6f\x7d\x81\x74\x7a\x84\x89\x51\x8a\x08"
+"\x88\x06\xb3\xf7\x4d\x05\xb7\x2f\x0a\x0b\xf7\xaf\x16\xf7\x5a\x3e\x1d\x56\xba\x1d\xf7\x53\x06\x76\xf7\x21\x0a\x84\x99\x9a\x97\x96"
+"\x9f\x8f\x1e\x0e\x99\x0a\x78\x7d\x25\x1d\xf7\x19\x2a\x1d\x57\x06\xf7\x40\xf7\x19\xf7\x04\xfb\x19\x05\x56\x21\x1d\x0b\x8c\x90\x8c"
+"\x91\x91\x1a\x9a\x82\x94\x7d\x78\x85\x82\x61\x82\x1e\x7b\x46\x05\x85\x72\x8b\x8b\x88\x1a\x7f\x94\x83\x97\x98\x92\x92\x9d\x93\x1e"
+"\x91\x99\x93\x97\x95\x97\x08\xac\xa9\xd0\xa0\xdc\x1b\xd7\xb6\x77\x68\x74\x7b\x75\x6d\x7c\x1f\x7a\x69\x53\x83\x3b\x1b\x6e\x22\x0a"
+"\xb3\x06\xf7\x13\xc4\x79\x62\x76\x7b\x73\x6f\x7a\x1f\x75\x6b\x5c\x81\x4b\x1b\x43\x58\x96\xa7\x4e\x1f\x90\x82\x86\x8c\x85\x1b\x7c"
+"\x81\x80\x7c\x0b\xe0\xbe\x15\x59\x20\x1d\xf7\xc7\x06\xf4\xf0\xe4\xe8\xbf\x6d\xb1\x4d\xa4\x1f\xd2\xb0\xae\xba\xc7\x1a\xd3\x4f\xbd"
+"\xe6\x1d\x6d\x6f\x75\xb3\x0a\xf8\x38\xce\x0a\x3c\x0a\x6b\x06\x34\xf8\x94\x05\xfb\x63\x06\x73\x7d\x80\x78\x7d\x7b\x1d\x99\x82\x92"
+"\x98\x1d\xf7\x8e\xbe\x8b\x1d\x0e\x06\xce\xf7\xd1\x05\xae\x3e\x1d\xfb\x06\x45\x0a\xa6\x06\x48\xfb\xd1\x05\xfb\x29\x06\xcf\xf7\xd1"
+"\x05\xa3\x23\x0a\x20\x2b\x1d\xa8\x06\x47\xfb\xd1\x05\xfb\x29\x06\xcf\xf7\xd1\x05\xa2\x6c\x0a\xfb\x03\x45\x0a\xaf\x06\x0b\xf8\xc9"
+"\x22\x1d\xb9\x06\xa3\x98\x95\x9e\x9a\x81\x92\x78\xbb\x1d\x99\x81\x93\x78\x1f\x58\x06\x0b\xf7\xb9\xbe\x15\xd6\x0a\x95\x9f\x87\x1d"
+"\x85\x8a\x88\x88\x1a\x7f\x94\x82\x98\x67\x0a\xf7\x8f\x2a\x1d\x0e\xb7\x1d\xf7\x34\x0b\x1e\xf8\x3f\xf7\x09\x15\xb1\xa2\xa0\xad\xb0"
+"\x1a\xba\x67\xad\x58\x49\x4c\x52\x4e\x73\x93\x7a\x9e\x7b\x1e\x5f\x71\x74\x67\x62\x1a\x59\xb1\x68\xc1\xd1\xcd\xc7\xcc\xa5\x82\x9e"
+"\x75\x9d\x1e\x66\xf7\x1a\x15\xab\xa1\x78\x6f\x67\x67\x6b\x61\x6b\x75\x9d\xa5\xaf\xb1\x70\x0a\x5f\x9e\x1d\xb7\x1f\x0b\xf5\x0a\xa1"
+"\x79\x1f\xa5\x75\xad\x80\xd0\x7e\xd0\x80\x9e\x85\x9f\x7c\x08\x9b\x80\x96\x75\x77\x1a\x3b\x37\x4a\x24\x62\x62\x96\x9c\x76\x1e\x80"
+"\x94\x70\xae\x90\x1a\x8e\xb9\x05\x91\x7f\x94\x81\x7a\x81\x81\x76\x86\x1e\x74\xfb\x01\xf7\x36\x1d\xa0\x8f\x1e\x8f\x9b\x0b\xf7\x43"
+"\xf7\x76\x93\x1d\xf7\x00\xda\x47\xc3\x2c\x1f\xfb\x84\x64\x0a\xa1\x9a\x97\x9d\x99\x82\x92\xf7\x00\x1d\xf7\x1a\x0a\x88\x83\x82\x1e"
+"\x4d\x48\x54\x72\x47\x7d\x1d\x93\x9c\x60\x1d\x8b\x8f\xdc\x0a\x0b\x06\x36\x0a\xbf\x06\xa3\xf7\x04\x0a\x81\x78\x7c\x95\x84\x9e\x1f"
+"\xaf\x26\x1d\xfb\x94\x06\x36\x0a\xb7\x06\xa2\xf7\x04\x0a\x80\x79\x7d\x95\x83\x9e\x1f\xb8\x26\x1d\x67\x24\x1d\x0b\x15\x96\x94\x91"
+"\x95\x93\x1a\x98\x82\x94\x7d\x85\x8b\x8b\x81\x7b\x1e\xfb\x0a\x2b\x05\x7d\x80\x86\x84\x82\x1a\x7e\x94\x82\x99\x91\x96\x90\x90\x92"
+"\x1e\xf7\x98\xeb\x15\x97\x94\x91\x95\x93\x1a\x98\x82\x94\x7e\x84\x85\x88\x84\x81\x1e\xfb\x0b\x2b\x05\x7d\x80\x87\x86\x81\x1a\x7c"
+"\x93\x83\x99\x91\x96\x90\x90\x92\x1e\x0e\x76\x0a\x9f\x87\x85\x9f\x1f\x87\x94\x8d\x8b\x8e\x1b\x9a\x99\x90\x1d\x68\x92\x78\xe2\x1d"
+"\xf7\x58\x06\x0b\xf7\x54\xf7\x2a\x05\x8f\x27\x1d\xfb\x02\x20\x1d\xac\x06\xfb\x29\xfb\x06\x2c\xf7\x06\x05\xad\x5d\x1d\x8e\x06\xf7"
+"\x11\xfb\x28\xfb\x6b\xfb\x3d\x05\x83\x24\x0a\x0b\x16\xf7\x03\xf8\x94\x05\xa8\x23\x1d\xfb\x29\x06\x73\x7d\x80\x78\x7d\xcf\x1d\x0b"
+"\xb8\x0a\xfc\x01\xfb\xd8\x82\x5f\x05\xf8\x15\x06\xa1\xee\x05\x8d\x94\x8b\x8b\x8f\x1a\x96\xd7\x0a\x0b\x06\x73\x6b\x76\x61\x7c\x1a"
+"\x83\x92\x84\x94\x92\x8f\x8d\x92\x91\x1e\xad\xb2\xa3\x9f\xbc\xa8\x99\x94\x18\x91\x8e\x8f\x8d\x8c\x8c\x08\x99\x93\x8e\x8e\x93\x1a"
+"\x92\x87\x8f\x78\x95\x1e\x4f\xad\x6e\xa2\x6c\xae\x08\x98\x80\x87\x8e\x84\x1b\x82\x83\x85\x83\x7c\x9b\x6b\xa8\x5f\x1f\x0b\xc7\x1d"
+"\x0e\xa4\x0a\xf7\xbd\xf7\x92\xf7\x53\x1d\xf8\x1c\x22\x1d\xf7\x1a\x06\xa1\x40\x1d\xfb\xd1\x06\x75\x7c\x7f\x79\x7d\x2a\x0a\xf7\x17"
+"\x26\x1d\xfb\x1a\x55\x0a\xf7\xd1\x06\xa1\x9a\x97\x9d\x99\x82\x92\x78\x1f\xfb\x18\x06\x0b\x1f\x88\x92\x88\x8e\x83\x8f\x08\x93\x78"
+"\x69\x92\x77\xe2\x1d\xf8\xa4\x06\xa1\x9a\x97\x9d\x99\x82\x92\x78\x1f\x0b\x8d\x19\xfb\x08\x24\x0a\x78\x7c\x94\x85\x9f\x1f\xf7\x06"
+"\x06\xe0\x86\xf4\xdd\x99\xdd\xe0\xf8\x1b\x18\xbd\x2e\x0a\x28\x06\xfb\x3d\x66\x15\xd8\xc0\x58\x40\x27\x29\x2c\x25\x3a\x57\xbd\xd7"
+"\xf0\xec\xe9\xf5\x1f\x0b\xc5\x0a\xf7\xbc\x9c\x1d\xae\xac\x9f\xf7\x33\x1d\x0b\xf7\x15\x1d\xa8\xad\x95\x90\x9d\x1b\x96\x0b\xf8\x04"
+"\x15\x37\xfc\x19\x05\x4a\x7b\x54\x5e\x4b\x1b\xfb\x14\x29\x1d\xf7\x15\x06\xe5\x89\xe0\xd1\x9d\xe6\xeb\xf8\x4e\x18\xfb\xb4\x33\x1d"
+"\x0b\xab\x99\x96\x95\x9a\x1a\x97\x82\x94\x7f\x85\x88\x8a\x86\x81\x1e\x75\x61\x40\x7a\x53\x1b\x54\x68\xa2\xaf\x91\x8c\x90\x8c\x91"
+"\x1f\xc3\xf7\x95\x05\xf7\x6b\x27\x1d\x0b\xa3\xf7\x03\x05\x8d\x94\x8b\x8b\x8d\x28\x0a\x7a\x81\x81\x77\x86\x1e\x73\xfb\x05\x05\x45"
+"\x33\x1d\xcf\x06\x53\xfb\x95\x05\x89\x81\x8a\x83\x80\x1a\x0b\x76\x1e\x80\x94\x70\xae\x90\x1a\x8e\xb9\x05\x91\x7f\x94\x81\x7a\x81"
+"\x81\x76\x86\x1e\x74\xfb\x01\xf7\x36\x1d\xa0\x8f\x1e\x8f\x9b\x05\x62\xab\x0b\xcd\x0a\xe0\xda\x0a\xf8\xcb\xf7\x57\x15\x92\xb0\x8d"
+"\x99\x9c\x1a\xee\xf7\x0f\x0a\x0b\x4d\x1d\xf7\x55\x57\x0a\x30\x06\xbc\xf7\x75\x05\x51\xad\xbc\x71\xd4\x1b\xf7\x24\xf7\x15\xf7\x0c"
+"\xf7\x1a\xf1\x0b\xf9\x07\xf8\x3e\x15\x9b\x94\x90\x91\x97\x1a\x95\x83\x93\x81\x85\x85\x89\x86\x82\x1e\xfc\x8f\xfb\xad\x05\x7c\x83"
+"\x85\x83\x80\x1a\x80\x93\x83\x95\x91\x8d\x8c\x92\x98\x1e\x0e\x8e\x9c\x1f\xb1\xf7\x43\x05\xb9\x4c\x1d\xfb\x1e\x51\x0a\xb1\x06\x67"
+"\xfb\x3d\x05\x86\x74\x89\x7c\x7d\x1a\x0b\xf8\xf5\x15\x69\x6a\x35\x0a\xa4\x78\x9e\x70\x1f\xf7\x71\x16\x69\x6a\x35\x0a\xa4\x78\x9e"
+"\x70\x1f\x0e\xe4\x1d\x35\x1d\x47\x06\x0b\x15\x69\x6a\x35\x0a\xa5\x78\x9d\x70\x1f\xf7\x72\x16\x69\x6a\x35\x0a\xa5\x78\x9d\x70\x1f"
+"\x0e\xba\x0a\x8f\x47\x0a\xf7\x51\x1d\xcc\xd2\xcb\x0a\x0b\xf8\x1d\xf8\x45\x15\xfb\x29\xfb\x1e\xfb\x15\xfb\x20\x22\xda\x40\xf7\x01"
+"\xf7\x2c\xf7\x1d\xf7\x14\xf7\x21\xf5\x3d\xd5\xfb\x04\x1f\x82\x58\x15\xe1\xc7\x53\x0b\x1f\x72\x6c\x62\x7f\x5a\x1b\xfb\x5a\xfb\x9e"
+"\x15\xba\xf7\x6b\x05\xf7\x25\x06\xc7\xa9\x85\x79\xa7\x1f\xa2\x7b\x9b\x71\x74\x1a\x49\x45\x4f\x3e\x1e\x0e\xf9\x11\xf8\xef\x15\xf7"
+"\x42\x1d\x5e\xfb\x67\x05\xca\x67\x59\xa8\x43\x1b\xfb\x22\xfb\x18\xfb\x18\xfb\x23\x0b\x91\x77\x65\x1d\x0b\x06\x4d\x6c\x71\x6e\x62"
+"\x1a\x6a\xa5\x79\xb9\xb7\xed\x0a\x88\x8a\x71\x1b\x7a\x82\x91\x98\x0b\x15\xfb\x33\xfb\x13\xfb\x10\xfb\x2f\xfb\x32\xf7\x11\xfb\x12"
+"\xf7\x31\xf7\x2f\xf7\x12\xf7\x12\xf7\x30\xf7\x2d\xfb\x12\xf7\x14\xfb\x2b\x1f\x0b\xde\x0a\x94\x82\x98\xf7\x0d\x0a\x0b\x8a\x85\x1e"
+"\x57\xfb\x82\x05\x6e\x32\x1d\xf7\x00\x23\x1d\x70\x06\x0b\x15\x9c\x97\x8e\x8f\x97\x28\x0a\x83\x86\x89\x83\x80\xf7\x2d\x1d\x0b\xdf"
+"\x0a\xf7\x72\x16\x69\x67\x1d\x0b\x3a\x1d\xfb\x18\x20\x0a\xad\x06\x75\x23\x05\x86\x74\x89\x7f\x7f\x1a\x0b\xf7\x09\x0a\x77\xf7\x25"
+"\x1d\xd6\xd4\xc9\xcb\x0b\x8c\x1d\xf7\x72\xf7\x1a\x1d\xcc\x0a\x35\xdf\x05\x91\x0b\x5c\xfb\x6b\x05\x59\x06\x74\x86\x1d\x9d\x35\x1d"
+"\x64\x06\x0b\xb4\xfb\x1b\x18\x94\x6f\x8e\x89\xa9\x8a\x08\x0b\x82\x94\x7e\x7b\x80\x81\x77\x87\x1e\x6a\xfb\x2c\x05\xfb\x10\x21\x1d"
+"\xf7\x0e\x06\x0b\x8e\x91\xc8\x0a\xf8\xc0\xf7\x91\x15\xa2\x9a\x96\x9e\x3c\x0a\xfc\x26\x4a\x1d\x9f\x1f\x0e\x2b\x1d\xba\x26\x1d\x59"
+"\x24\x1d\x0b\x15\xfb\x11\xfb\x8c\x05\x88\x84\x89\x85\x85\x1a\x7b\x97\x7f\x9c\x9a\x94\x91\x9f\x9b\x1e\xf7\x64\xf7\xa1\x05\x0b\xf7"
+"\xcf\x15\xe4\xf7\x5f\x05\x98\xa9\x8d\x92\x99\x1a\xa1\x7a\x9c\x73\xf7\x60\x1d\x0b\x94\x1e\xf7\x0f\xdf\xe1\xda\x0a\x06\x74\x7d\x81"
+"\x79\x7c\x95\x83\x0b\x77\x1f\x5c\x06\xba\xf7\x6b\x05\x0b\xc0\x65\xb0\x56\x1f\x84\x64\x15\xad\xa3\x73\x69\x5d\x5f\x5f\x5d\x67\x73"
+"\xa2\xae\xba\xb7\xb6\xbb\x1f\x0b\x78\x0a\x84\x88\x85\x82\x1e\xfb\x0f\x37\x0b\xf7\x24\x1d\x8e\x91\x95\x1e\xf7\x0f\xdf\x0b\xf7\x4c"
+"\x15\xa2\xfb\x19\x05\x45\x21\x1d\xf7\x30\x2f\x1d\x0b\xf7\x84\xf8\x99\x15\x9e\xe0\x05\x25\x2b\x1d\xba\x06\x83\x69\x05\x0b\x15\xa1"
+"\x96\x94\x9c\x9c\x80\x93\x75\x1f\xfc\xce\x58\x0a\x0e\x4e\x1d\x91\x8d\x92\x95\x1e\xf7\x0e\xdf\xe1\x38\x05\x84\x92\x0b\xf2\xd2\xca"
+"\xa8\xc8\xc8\x1f\x7a\x41\x05\xf1\x79\x0a\x5b\x06\x0b\xf7\x2d\x1d\x8f\x47\x0a\x20\x1d\xf7\x18\x06\xa2\x34\x1d\x0b\x4a\xc5\xe0\x90"
+"\x8b\x8f\x8c\x93\x1f\xf8\x09\xbe\x15\xfb\xfe\x06\xdc\xae\xe0\xc2\xe7\x1b\x0b\x36\x0a\xf7\x2f\x06\x7d\x4a\x8a\x82\x05\x86\x07\x82"
+"\x8a\x96\x81\x96\x1b\x9c\x95\x0b\x82\x94\x7e\x7a\x81\x81\x76\x86\x1e\x80\x59\x05\xfb\x97\x06\xf8\x03\xf7\xd8\x05\x0b\x15\xba\xf7"
+"\x6b\x05\xf7\x1a\x06\xf7\x07\xbb\x70\x4a\x43\x4c\x58\x31\x1f\x0e\x16\xf7\x15\x0a\xa7\xa0\x51\x1d\x6e\x1d\x9b\x92\x59\x0a\xfb\x0e"
+"\x32\x1d\xcf\x06\x55\xfb\x8b\x05\x51\x0b\x1a\x97\x82\x93\x7e\x7a\x81\x81\x77\x86\x1e\x0b\x6f\x71\x72\x70\x76\x9b\x7c\xa0\xa8\xa4"
+"\xa3\x0b\xf8\xcd\xf8\x37\x15\xfb\xfd\x06\x76\x29\x05\x8a\x86\x8a\x86\x88\x1a\x80\x0b\x15\xe4\x0a\x0b\x15\x6a\x6a\x6b\x6b\x72\x9f"
+"\x77\xa3\xad\xac\xaa\xac\xa5\x78\x9e\x71\x1f\x0b\xf7\x01\x0a\xf7\x22\x05\x0e\x06\x73\x7d\x81\x78\x7d\x95\x83\x0b\x1f\x9e\x6e\x7f"
+"\x8f\x75\x1b\x71\x0b\x69\xf4\x0a\x70\x1f\x0b\x05\x89\x81\x8b\x8b\x88\x1a\x7e\x93\x84\x0b\x06\xa2\xf7\x08\x0a\x0b\x84\x1b\x7b\x7c"
+"\x7d\x7c\x85\x8e\x85\x50\x1d\x83\x0b\x96\x1a\x98\x82\x94\x7f\x85\x85\x89\x87\x86\x1e\x60\x53\x73\x7f\x0b\xf7\x4b\x1d\x20\x34\x52"
+"\xbe\x0b\x82\x94\x7f\x79\x82\x82\x76\x87\x1e\x78\x35\x05\xfb\x5c\x06\x0b\x06\x7b\x8c\x7f\x81\x7c\x1a\x88\x07\x7c\x97\x81\x9b\x8c"
+"\x1e\x0b\x32\x4f\x3f\x74\x98\x72\x9f\x7d\x1f\xa4\x79\xa6\x84\xd4\x84\x0b\xb7\xa1\xa1\x94\x83\x93\x82\x87\x87\x89\x89\x87\x1e\x7b"
+"\x74\x0b\x88\x92\x1b\x9c\xf7\x16\x0a\x7f\x1a\x7f\x94\x82\x98\x91\x0b\x80\x79\x7c\x94\x84\x9e\x1f\x0b\x05\x8d\x94\x8b\x8b\x8e\x1a"
+"\x97\x82\x94\x7e\x7a\x81\x81\x0b\xf7\x12\x0a\x94\x1e\x9c\x0b\x95\x1a\x98\x82\x93\x7f\x84\x84\x88\x84\x80\x1e\xfb\x1a\x0b\x6b\x42"
+"\x1d\xae\xab\xaa\xac\xa5\x78\x9d\x0b\xad\x6b\x60\x9c\x53\x1b\xfb\x0d\x22\x35\x28\x6c\x98\x6d\x0b\xf7\x4d\x1d\x0e\x81\x80\x1a\x7f"
+"\x94\x83\x98\x92\x93\x8e\x91\x92\x1e\x0b\x88\x1a\x7e\x93\x84\x99\x9b\x96\x95\x9f\x90\x1e\xad\x0b\x8a\x7f\x05\x7f\x94\x82\x98\x9b"
+"\x28\x1d\x0b\x15\x95\x96\x8e\x91\x93\x1a\x95\x80\x95\x80\x81\x83\x0b\x99\x95\x9d\x9a\x81\x93\x78\x1f\xfb\x20\x06\x73\x7d\x0b\xa7"
+"\xa0\x7c\x9a\x75\x1f\xf7\x62\x16\x6f\x71\x72\x70\x0b\x4f\xc2\xde\xf7\x00\xf7\x00\xf0\xf7\x09\x1f\x0e\x95\x91\x93\x94\x1a\x98\x82"
+"\x94\x0b\x99\x95\x9e\x9a\x81\x92\x78\x1f\x0b\x73\x6b\x1a\x61\x5b\x64\x58\x6d\x0b\xf7\x13\x0a\x77\x0b\x15\x93\x83\x86\x8e\x84\x1b"
+"\x7a\x7d\x7d\x7b\x85\x0b\x93\x6a\x1b\x68\x71\x7c\x63\x68\x1f\x75\x73\x83\x0b\x9b\x96\x95\x9f\x8f\x1e\x96\xbd\x05\xf7\x7d\x06\x0b"
+"\xf8\x68\xf7\x5e\x1d\x0b\x3b\xd2\xfb\x04\xfb\x2c\xfb\x19\xfb\x0e\xfb\x1f\x0b\x92\x92\x8e\x92\x96\x1e\x0e\x9a\x99\x9b\x90\x8b\x8b"
+"\x0b\x49\x69\x70\x82\x92\x84\x95\x92\x8f\x8d\x93\x0b\x8b\x8b\x8e\x1a\x97\x82\x94\x7e\x7b\x80\x80\x0b\xf8\x29\xf8\x05\x15\xf7\x10"
+"\x06\xa2\x9a\x96\x0b\x6f\x71\x72\x70\x76\x9a\x7c\xa1\xa8\xa4\xa3\x0b\x99\x99\x9b\x90\x8b\x8b\x81\x98\x1f\x0e\x81\x78\x7d\x95\x83"
+"\x9d\x1f\x0b\x82\x94\x7e\x7a\x81\x81\x76\x0b\xc2\xf7\x93\x05\x8d\x93\x8c\x0b\x1a\x96\x82\x93\x7f\x81\x86\x0b\x1a\x80\x95\x82\x97"
+"\x9b\x96\x0b\x06\xa0\x9b\x98\x9b\x9b\x83\x91\x76\x1f\x0b\x06\xa2\x9a\x96\x9d\x9a\x82\x91\x77\x1f\x0b\x06\xa3\x99\x96\x9e\x9a\x83"
+"\x91\x76\x1f\x0b\xc7\x53\x3b\xfb\x01\xfb\x00\x25\xfb\x06\x0b\x97\x82\x93\x7e\x7b\x80\x81\x77\x87\x1e\x0b\x33\x05\x8a\x85\x8a\x87"
+"\x87\x1a\x7f\x93\x0b\x99\x94\x9d\x9a\x7f\x94\x76\x1f\x0e\xf1\xe8\xf7\x03\x1f\x0e", 52468
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusMonoPS-Regular.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusMonoPS-Regular.cff.cpp
new file mode 100644
index 0000000000..67bb64514d
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusMonoPS-Regular.cff.cpp
@@ -0,0 +1,1441 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusMonoPS_Regular_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x15\x4e\x69\x6d\x62\x75\x73\x4d\x6f\x6e\x6f\x50\x53\x2d\x52\x65\x67\x75\x6c\x61\x72\x00\x01\x01"
+"\x01\x34\xf9\xbc\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x18\x04\x8c\x0c\x01\x30\x0c\x03\xbe\x0c\x04\x6c\xfb"
+"\xd1\xf9\x3f\xfa\x38\x05\x1c\x2b\xef\x0f\x1c\x2c\x02\x11\xbb\x1d\x00\x00\xa1\xbb\x12\x01\xa6\x02\x00\x01\x00\x08\x00\x0e\x00\x13"
+"\x00\x1d\x00\x24\x00\x2b\x00\x35\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00\x6e\x00\x74\x00\x7a\x00\x84"
+"\x00\x8b\x00\x8e\x00\x95\x00\x9c\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00\xe3\x00\xe7\x00\xf2\x00\xf4"
+"\x00\xfa\x01\x04\x01\x0b\x01\x12\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01\x59\x01\x5f\x01\x6b\x01\x6f"
+"\x01\x71\x01\x77\x01\x7d\x01\x89\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01\xd0\x01\xd2\x01\xd5\x01\xdb"
+"\x01\xe1\x01\xed\x01\xf0\x01\xf6\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02\x38\x02\x3e\x02\x4b\x02\x52"
+"\x02\x59\x02\x60\x02\x6f\x02\x7b\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02\xb9\x02\xbf\x02\xc9\x02\xcd"
+"\x02\xd3\x02\xda\x02\xe3\x02\xec\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03\x3d\x03\x46\x03\x4f\x03\x58"
+"\x03\x61\x03\x6a\x03\x73\x03\x7c\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03\xcd\x03\xd6\x03\xdf\x03\xe8"
+"\x03\xf1\x03\xfa\x04\x03\x04\x0c\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04\x5d\x04\x66\x04\x6f\x04\x78"
+"\x04\x81\x04\x8a\x04\x93\x04\x9c\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04\xed\x04\xf6\x04\xff\x05\x08"
+"\x05\x11\x05\x1a\x05\x23\x05\x2c\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05\x7d\x05\x86\x05\x8f\x05\x98"
+"\x05\xa1\x05\xaa\x05\xb3\x05\xbc\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06\x0d\x06\x16\x06\x1f\x06\x28"
+"\x06\x31\x06\x3a\x06\x43\x06\x4c\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06\x9a\x06\xa3\x06\xac\x06\xb5"
+"\x06\xbf\x06\xc6\x06\xcf\x06\xdb\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07\x1b\x07\x21\x07\x26\x07\x2d"
+"\x07\x3a\x07\x40\x07\x46\x07\x50\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07\x92\x07\x9a\x07\xa3\x07\xae"
+"\x07\xb4\x07\xb9\x07\xbe\x07\xc4\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08\x10\x08\x12\x08\x19\x08\x21"
+"\x08\x29\x08\x33\x08\x3d\x08\x49\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08\x9c\x08\xa8\x08\xb4\x08\xba"
+"\x08\xc0\x08\xc6\x08\xd2\x08\xd6\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09\x1c\x09\x22\x09\x2e\x09\x38"
+"\x09\x40\x09\x42\x09\x48\x09\x55\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09\xa4\x09\xa7\x09\xa9\x09\xb0"
+"\x09\xbc\x09\xca\x09\xcd\x09\xda\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e\x0a\x34\x0a\x39"
+"\x0a\x42\x0a\x47\x0a\x50\x0a\x53\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d\x0a\xa4\x0a\xab"
+"\x0a\xb2\x0a\xb9\x0a\xc0\x0a\xc7\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d\x0b\x14\x0b\x1b"
+"\x0b\x22\x0b\x29\x0b\x30\x0b\x37\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d\x0b\x84\x0b\x8b"
+"\x0b\x92\x0b\x99\x0b\xa0\x0b\xa7\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed\x0b\xf4\x0b\xfb"
+"\x0c\x02\x0c\x09\x0c\x10\x0c\x17\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d\x0c\x64\x0c\x73"
+"\x0c\x87\x0c\x93\x0c\x98\x0c\x9e\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5\x0c\xe9\x0d\x1f"
+"\x0d\x5f\x0d\x75\x0d\x83\x41\x45\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41\x6c\x70\x68\x61\x74\x6f\x6e"
+"\x6f\x73\x41\x6d\x61\x63\x72\x6f\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x42\x65\x74\x61\x43\x61"
+"\x63\x75\x74\x65\x43\x63\x61\x72\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x43"
+"\x68\x69\x44\x63\x61\x72\x6f\x6e\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65\x45\x63\x61\x72\x6f\x6e\x45"
+"\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65\x6b\x45\x70\x73\x69\x6c\x6f"
+"\x6e\x45\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45\x75\x72\x6f\x47\x61\x6d\x6d"
+"\x61\x47\x62\x72\x65\x76\x65\x47\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x47\x64"
+"\x6f\x74\x61\x63\x63\x65\x6e\x74\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a\x49\x62\x72\x65\x76\x65\x49"
+"\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f\x74\x61\x49\x6f\x74\x61\x64"
+"\x69\x65\x72\x65\x73\x69\x73\x49\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65"
+"\x78\x4b\x61\x70\x70\x61\x4b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c\x61\x6d\x62\x64\x61\x4c\x63"
+"\x61\x72\x6f\x6e\x4c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63\x75\x74\x65\x4e\x63\x61\x72"
+"\x6f\x6e\x4e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c"
+"\x61\x75\x74\x4f\x6d\x61\x63\x72\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72\x6f\x6e\x4f\x6d\x69\x63\x72"
+"\x6f\x6e\x74\x6f\x6e\x6f\x73\x4f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73\x69\x52\x61\x63\x75\x74\x65"
+"\x52\x63\x61\x72\x6f\x6e\x52\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75\x74\x65\x53\x63\x65\x64\x69"
+"\x6c\x6c\x61\x53\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x53\x69\x67\x6d\x61\x54"
+"\x61\x75\x54\x62\x61\x72\x54\x63\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54\x68\x65\x74\x61\x55\x62\x72"
+"\x65\x76\x65\x55\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f\x67\x6f\x6e\x65\x6b\x55\x70"
+"\x73\x69\x6c\x6f\x6e\x55\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73"
+"\x55\x72\x69\x6e\x67\x55\x74\x69\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x57\x64\x69\x65"
+"\x72\x65\x73\x69\x73\x57\x67\x72\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59\x67\x72\x61\x76\x65\x5a\x61"
+"\x63\x75\x74\x65\x5a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61\x65\x61\x63\x75\x74\x65\x61"
+"\x66\x69\x69\x30\x30\x32\x30\x38\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31\x38\x61\x66\x69\x69\x31\x30"
+"\x30\x31\x39\x61\x66\x69\x69\x31\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69\x31\x30\x30\x32\x32\x61\x66"
+"\x69\x69\x31\x30\x30\x32\x33\x61\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35\x61\x66\x69\x69\x31\x30\x30"
+"\x32\x36\x61\x66\x69\x69\x31\x30\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31\x30\x30\x32\x39\x61\x66\x69"
+"\x69\x31\x30\x30\x33\x30\x61\x66\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61\x66\x69\x69\x31\x30\x30\x33"
+"\x33\x61\x66\x69\x69\x31\x30\x30\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30\x30\x33\x36\x61\x66\x69\x69"
+"\x31\x30\x30\x33\x37\x61\x66\x69\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66\x69\x69\x31\x30\x30\x34\x30"
+"\x61\x66\x69\x69\x31\x30\x30\x34\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30\x34\x33\x61\x66\x69\x69\x31"
+"\x30\x30\x34\x34\x61\x66\x69\x69\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69\x69\x31\x30\x30\x34\x37\x61"
+"\x66\x69\x69\x31\x30\x30\x34\x38\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35\x30\x61\x66\x69\x69\x31\x30"
+"\x30\x35\x31\x61\x66\x69\x69\x31\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69\x31\x30\x30\x35\x34\x61\x66"
+"\x69\x69\x31\x30\x30\x35\x35\x61\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37\x61\x66\x69\x69\x31\x30\x30"
+"\x35\x38\x61\x66\x69\x69\x31\x30\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31\x30\x30\x36\x31\x61\x66\x69"
+"\x69\x31\x30\x30\x36\x32\x61\x66\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61\x66\x69\x69\x31\x30\x30\x36"
+"\x37\x61\x66\x69\x69\x31\x30\x30\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30\x30\x37\x30\x61\x66\x69\x69"
+"\x31\x30\x30\x37\x31\x61\x66\x69\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66\x69\x69\x31\x30\x30\x37\x34"
+"\x61\x66\x69\x69\x31\x30\x30\x37\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30\x37\x37\x61\x66\x69\x69\x31"
+"\x30\x30\x37\x38\x61\x66\x69\x69\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69\x69\x31\x30\x30\x38\x31\x61"
+"\x66\x69\x69\x31\x30\x30\x38\x32\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38\x34\x61\x66\x69\x69\x31\x30"
+"\x30\x38\x35\x61\x66\x69\x69\x31\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69\x31\x30\x30\x38\x38\x61\x66"
+"\x69\x69\x31\x30\x30\x38\x39\x61\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31\x61\x66\x69\x69\x31\x30\x30"
+"\x39\x32\x61\x66\x69\x69\x31\x30\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31\x30\x30\x39\x35\x61\x66\x69"
+"\x69\x31\x30\x30\x39\x36\x61\x66\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61\x66\x69\x69\x31\x30\x30\x39"
+"\x39\x61\x66\x69\x69\x31\x30\x31\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30\x31\x30\x32\x61\x66\x69\x69"
+"\x31\x30\x31\x30\x33\x61\x66\x69\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66\x69\x69\x31\x30\x31\x30\x36"
+"\x61\x66\x69\x69\x31\x30\x31\x30\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31\x30\x39\x61\x66\x69\x69\x31"
+"\x30\x31\x31\x30\x61\x66\x69\x69\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69\x69\x31\x30\x38\x34\x36\x61"
+"\x66\x69\x69\x36\x31\x32\x34\x38\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35\x32\x61\x6c\x70\x68\x61\x61"
+"\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x61\x6e\x67\x6c\x65\x72\x69"
+"\x67\x68\x74\x61\x6f\x67\x6f\x6e\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x61"
+"\x72\x72\x6f\x77\x62\x6f\x74\x68\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x72"
+"\x69\x67\x68\x74\x61\x72\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x62\x73\x65"
+"\x62\x65\x74\x61\x63\x61\x63\x75\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x63\x64\x6f\x74\x61"
+"\x63\x63\x65\x6e\x74\x63\x68\x69\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75\x62\x64\x63\x61\x72\x6f\x6e"
+"\x64\x63\x72\x6f\x61\x74\x64\x65\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x65"
+"\x62\x72\x65\x76\x65\x65\x63\x61\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d\x65\x6e\x74\x65\x6d\x61\x63"
+"\x72\x6f\x6e\x65\x6e\x67\x65\x6f\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73"
+"\x65\x71\x75\x69\x76\x61\x6c\x65\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74\x61\x74\x6f\x6e\x6f\x73\x65"
+"\x78\x63\x6c\x61\x6d\x64\x62\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65\x66\x72\x61\x6e\x63\x67\x61"
+"\x6d\x6d\x61\x67\x62\x72\x65\x76\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74"
+"\x67\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61\x72\x68\x63\x69\x72\x63\x75"
+"\x6d\x66\x6c\x65\x78\x68\x65\x61\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d\x61\x63\x72\x6f\x6e\x69\x6e"
+"\x66\x69\x6e\x69\x74\x79\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69\x6e\x74\x65\x67\x72\x61\x6c"
+"\x74\x70\x69\x6e\x74\x65\x72\x73\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x69\x6f\x67\x6f\x6e\x65"
+"\x6b\x69\x6f\x74\x61\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e"
+"\x6f\x73\x69\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x6b\x61\x70\x70"
+"\x61\x6b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63\x6c\x61\x63\x75\x74\x65\x6c"
+"\x61\x6d\x62\x64\x61\x6c\x63\x61\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64\x6f\x74\x6c\x65\x73\x73\x65"
+"\x71\x75\x61\x6c\x6c\x69\x72\x61\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f"
+"\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70\x6f\x73\x74\x72\x6f\x70\x68"
+"\x65\x6e\x63\x61\x72\x6f\x6e\x6e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x6e\x6f\x74"
+"\x65\x71\x75\x61\x6c\x6e\x75\x6f\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x6f\x6d\x61\x63\x72\x6f"
+"\x6e\x6f\x6d\x65\x67\x61\x6f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d\x69\x63\x72\x6f\x6e\x74\x6f"
+"\x6e\x6f\x73\x6f\x72\x74\x68\x6f\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70\x61\x72\x74\x69\x61\x6c\x64"
+"\x69\x66\x66\x70\x65\x73\x65\x74\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62\x73\x65"
+"\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65\x76\x65\x72\x73\x65\x64\x72"
+"\x61\x63\x75\x74\x65\x72\x61\x64\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x72\x65"
+"\x76\x6c\x6f\x67\x69\x63\x61\x6c\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69\x6c\x6c\x61\x73\x63\x69\x72"
+"\x63\x75\x6d\x66\x6c\x65\x78\x73\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64\x73\x69\x67\x6d\x61\x73\x6d"
+"\x69\x6c\x65\x66\x61\x63\x65\x73\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74\x61\x75\x74\x62\x61\x72\x74"
+"\x63\x61\x72\x6f\x6e\x74\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e\x6f\x73\x75\x62\x72\x65\x76"
+"\x65\x75\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65\x72\x73\x63\x6f\x72\x65\x64"
+"\x62\x6c\x75\x6e\x69\x30\x30\x41\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e\x69\x30\x32\x31\x42\x75\x6e"
+"\x69\x30\x32\x43\x39\x75\x6e\x69\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41\x39\x75\x6e\x69\x30\x33\x42"
+"\x43\x75\x6e\x69\x30\x33\x43\x32\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69\x30\x34\x35\x30\x75\x6e\x69"
+"\x30\x34\x35\x44\x75\x6e\x69\x30\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36\x75\x6e\x69\x30\x34\x39\x37"
+"\x75\x6e\x69\x30\x34\x39\x38\x75\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30\x34\x39\x42\x75\x6e\x69\x30"
+"\x34\x39\x43\x75\x6e\x69\x30\x34\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75\x6e\x69\x30\x34\x41\x32\x75"
+"\x6e\x69\x30\x34\x41\x33\x75\x6e\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34\x41\x45\x75\x6e\x69\x30\x34"
+"\x41\x46\x75\x6e\x69\x30\x34\x42\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e\x69\x30\x34\x42\x33\x75\x6e"
+"\x69\x30\x34\x42\x36\x75\x6e\x69\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42\x39\x75\x6e\x69\x30\x34\x42"
+"\x41\x75\x6e\x69\x30\x34\x42\x42\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69\x30\x34\x43\x43\x75\x6e\x69"
+"\x30\x34\x44\x38\x75\x6e\x69\x30\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38\x75\x6e\x69\x30\x34\x45\x39"
+"\x75\x6e\x69\x30\x34\x45\x45\x75\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32\x30\x41\x46\x75\x6e\x69\x32"
+"\x31\x32\x36\x75\x6e\x69\x32\x32\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75\x6e\x69\x32\x32\x32\x38\x75"
+"\x6e\x69\x32\x32\x39\x35\x75\x6e\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x75\x6f\x67\x6f\x6e"
+"\x65\x6b\x75\x70\x73\x69\x6c\x6f\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75\x70\x73\x69\x6c\x6f\x6e\x64"
+"\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75\x72\x69\x6e\x67\x75\x74\x69"
+"\x6c\x64\x65\x77\x61\x63\x75\x74\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72\x65\x73\x69\x73\x77\x67\x72"
+"\x61\x76\x65\x78\x69\x79\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63\x75\x74\x65\x7a\x64\x6f\x74"
+"\x61\x63\x63\x65\x6e\x74\x7a\x65\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20"
+"\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70"
+"\x6d\x65\x6e\x74\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20"
+"\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70"
+"\x6d\x65\x6e\x74\x4e\x69\x6d\x62\x75\x73\x20\x4d\x6f\x6e\x6f\x20\x50\x53\x20\x52\x65\x67\x75\x6c\x61\x72\x4e\x69\x6d\x62\x75\x73"
+"\x20\x4d\x6f\x6e\x6f\x20\x50\x53\x01\x21\x02\x00\x01\x00\x06\x00\x0c\x00\x14\x00\x18\x00\x23\x00\x27\x00\x32\x00\x3c\x00\x7d\x00"
+"\x88\x00\x90\x00\x9a\x00\xce\x00\xd5\x00\xe0\x00\xe4\x00\xea\x01\x31\x01\x40\x01\x4b\x01\x52\x01\x57\x01\x5d\x01\x63\x01\x69\x01"
+"\x70\x01\x75\x01\x7b\x01\x80\x01\x84\x01\x8f\x01\xa1\x01\xa9\x01\xb1\x01\xbf\x01\xc8\x01\xcc\x01\xd3\x01\xdc\x01\xe4\x02\x37\x02"
+"\x6a\x02\x90\x02\x9b\x02\xa6\x02\xb4\x02\xba\x02\xbf\x02\xc7\x02\xd3\x02\xdd\x02\xe2\x02\xeb\x02\xf1\x02\xf8\x03\x00\x03\x04\x03"
+"\x35\x03\x3b\x03\x44\x03\x52\x03\x5c\x03\x6b\x03\x76\x03\x7e\x03\x85\x03\x8a\x03\x95\x03\x9b\x03\xa5\x03\xaf\x03\xb6\x03\xbb\x04"
+"\x3d\x04\x87\x04\xdf\x04\xe7\x04\xf1\x05\x0d\x05\x1a\x05\x24\x05\x39\x05\x5c\x05\x68\x05\x72\x05\x80\x05\x8f\x05\x9a\x05\xa5\x05"
+"\xa9\x05\xb3\x05\xbd\x05\xc3\x05\xcc\x05\xd3\x06\x1a\x06\x3f\x06\x74\x06\xbb\x06\xf5\x07\x1e\x07\x27\x07\x3c\x07\x43\x07\x4a\x07"
+"\x77\x07\x92\x07\x9d\x07\xa6\x07\xb0\x07\xc3\x07\xd8\x07\xe8\x07\xf8\x07\xfe\x08\x0c\x08\x14\x08\x21\x08\x2c\x08\x36\x08\x44\x08"
+"\x50\x08\x5c\x08\x67\x08\x76\x08\x80\x08\x8a\x08\x98\x08\xa6\x08\xaf\x08\xb8\x08\xc5\x08\xcc\x08\xd3\x08\xdf\x08\xeb\x08\xf3\x08"
+"\xfb\x09\x03\x09\x0e\x09\x19\x09\x24\x09\x2f\x09\x3a\x09\xfa\x0a\x51\x0a\xbd\x0b\x11\x0b\x67\x0b\x9d\x0b\xe4\x0c\x40\x0c\x8d\x0c"
+"\xf9\x0d\x0a\x0d\x4d\x0d\x6d\x0d\x95\x0d\xd2\x0d\xf5\x0e\x0d\x0e\x50\x0e\x62\x0e\xa9\x0e\xe5\x0f\x03\x0f\x20\x0f\x4d\x0f\x7f\x0f"
+"\xa0\x0f\xcd\x0f\xeb\x0f\xf8\x10\x2e\x10\x51\x10\x7d\x10\x9c\x10\xc2\x10\xf5\x11\x27\x11\x58\x11\x68\x11\x83\x11\xa2\x11\xaf\x11"
+"\xb4\x11\xbe\x11\xeb\x12\x17\x12\x31\x12\x54\x12\x6f\x12\x92\x12\xb4\x12\xc8\x12\xde\x12\xed\x13\x02\x13\x10\x13\x24\x13\x31\x13"
+"\x44\x13\x54\x13\x72\x13\x95\x13\xa1\x13\xaf\x13\xc7\x13\xe6\x13\xf2\x14\x03\x14\x1a\x14\x30\x14\x4c\x14\x5f\x14\x75\x14\x8b\x14"
+"\x99\x14\xa3\x14\xb7\x14\xc7\x14\xce\x14\xdd\x14\xf7\x15\x10\x15\x19\x15\x32\x15\x41\x15\x4c\x15\x5c\x15\x74\x15\x7b\x15\x82\x15"
+"\x8b\x15\x9b\x15\xa8\x15\xbe\x15\xd4\x15\xea\x15\xfc\x16\x07\x16\x1b\x16\x27\x16\x2e\x16\x41\x16\x54\x16\x63\x16\x74\x16\x86\x16"
+"\x98\x16\xaa\x16\xbc\x16\xce\x16\xdf\x16\xef\x16\xff\x17\x0d\x17\x1c\x17\x2b\x17\x3a\x17\x49\x17\x4f\x17\x5d\x17\x67\x17\x73\x17"
+"\x80\x17\x8d\x17\x9a\x17\xa7\x17\xb4\x17\xc1\x17\xce\x17\xda\x17\xe6\x17\xf2\x17\xfe\x18\x0a\x18\x12\x18\x1a\x18\x22\x18\x2d\x18"
+"\x38\x18\x43\x18\x4e\x18\x59\x18\x64\x18\x6f\x18\x78\x18\x81\x76\x80\x50\x1d\x0b\x94\x9c\x9b\x80\x94\x0b\x06\x76\x80\x83\x7a\x30"
+"\x1d\x0b\x06\x61\x1d\x0b\x06\xa5\x99\x94\x9b\x9c\x7d\x94\x71\x1f\x0b\x06\x40\x1d\x0b\x06\x76\x80\x82\x7a\x7b\x96\x82\xa0\x1f\x0b"
+"\x76\x94\x80\x9c\x9c\x94\x96\xa0\x1e\x0b\xf8\x3d\xf7\x4c\x15\xbe\xfb\x19\x05\x47\x06\x20\x1d\xf7\x30\x06\xa0\x97\x21\x1d\x75\x1f"
+"\x6a\x06\xfb\x59\xf8\x94\x05\xfb\x63\x06\x75\x80\x83\x7a\x7a\x96\x1d\x6f\x06\x37\x1d\xf7\x2b\x06\xa0\x97\x21\x1d\x75\x1f\x44\x06"
+"\xbd\xf7\x19\x05\xf7\x83\xbe\xf7\x46\x1d\x0b\x06\xa0\x97\x94\x9c\x9b\x7f\x94\x76\x1f\x0b\x83\x7a\x7a\x96\x82\xa1\x1f\x0b\x75\x80"
+"\x82\x7b\x7a\x97\x82\xa0\x1f\x0b\xf7\x15\x1d\xfb\x18\xf7\x01\x25\xf7\x1f\xec\xf7\x0b\xbb\xb1\x99\x80\x96\x7d\x85\x87\x89\x85\x83"
+"\x1e\x6d\x63\x43\x75\x4f\x1b\x23\x3d\xcb\xeb\x7d\x1f\xbe\x04\xdd\x9c\xd3\xc1\xe7\x1b\xe6\xd4\x54\x3a\x9b\x1f\x0b\xf7\xc4\xf8\xd3"
+"\xc7\x1d\x0b\x06\x75\x80\x82\x7b\x7a\x96\x82\xa1\x1f\x0b\x06\x7b\x1d\x0b\x7a\x96\x82\xa0\x1f\x0b\xf8\x8d\xf8\x94\x15\xa8\x06\xa0"
+"\x96\x94\x9c\x9c\x81\x93\x75\x1f\xfb\x2a\x22\x1d\xd0\xfb\xd9\x06\x35\x48\x49\x35\x36\x48\xcd\xe1\x1e\xf7\xd9\xd0\x07\xa0\x96\x94"
+"\x9c\x9c\x80\x93\x76\x1f\xfb\x29\x06\x75\x80\x2a\x1d\xa7\xfb\xd9\x06\xfb\x07\xe3\x33\xf7\x08\xf7\x08\xe4\xe3\xf7\x07\x1e\x0b\xef"
+"\x1d\xf7\xfe\x06\xa0\x97\x21\x1d\x75\x1f\xfb\x2f\x06\x0b\x06\x71\x7d\x82\x7a\x7b\x99\x82\xa5\x1f\x0b\x07\x56\x1d\x80\x76\x1e\x0b"
+"\x72\x7d\xa8\x1d\x0b\x06\x76\x7f\x38\x1d\x0b\x76\x80\xf7\x3e\x1d\x0b\x82\x7a\x7b\x3a\x1d\x0b\x77\x94\x80\x9c\x9c\x94\x0b\x97\x82"
+"\xa0\x1f\x0b\x06\x71\x7e\xa8\x1d\x0b\x8d\x1d\x97\x80\x0b\x06\x62\x1d\x0b\x06\xa0\x96\x94\x9c\x9c\x80\x93\x76\x1f\x0b\x6c\x72\x73"
+"\x6c\x6d\xa4\x73\xaa\xa9\xa4\xa3\xaa\xa8\x72\xa4\x6d\x1f\x0b\x76\x7f\x82\x7b\x7a\x3a\x1d\x0b\x94\x9c\x9c\x80\x93\x75\x1f\x0b\x5d"
+"\x1d\xe1\x4d\x1d\x67\x86\x62\x72\x55\x1b\x56\x51\x1d\x15\x3f\x1d\xf7\x72\x16\x3f\x1d\x0e\x06\x4f\x1d\x0b\x15\xfb\x1b\xfb\x01\x05"
+"\x0b\x80\x7d\x80\x8e\x87\x97\x82\x1f\x0e\x1b\x7d\x80\x81\x7d\x7f\x90\x0b\xf8\x32\x16\xf0\x23\x1d\x5a\xf7\x94\x06\xd4\x44\xc0\x2b"
+"\x65\x4a\x7e\x78\x54\xa3\x1d\x8e\x8c\x8f\x98\x1e\x9d\xc4\xb5\x93\xab\x1b\xd1\xbb\x6d\x5e\x1f\x4d\x07\x9a\x4f\x72\x8e\x5e\x1b\xfb"
+"\x16\x34\x4f\x32\x3e\xcc\x56\xeb\xd0\xc2\xa1\xc0\xc9\x1f\xc6\x04\x4f\x4a\x57\x74\x46\x1b\x48\x61\xaa\xbb\xc5\xd1\xb3\xef\xb7\xbb"
+"\x86\x83\xac\x1f\x0b\xf8\x8f\x16\xf8\x94\xa8\x07\xa0\x96\x94\x9c\x9c\x80\x93\x76\x1f\xfb\x2a\x06\x75\x80\x83\x7a\x7a\x3a\x1d\xd0"
+"\xfc\x42\x06\xfb\xbc\xf8\x75\x05\xfb\x02\x22\x1d\xbc\x92\x1d\xf8\x42\x06\xf7\xbc\xfc\x75\x05\x0b\x15\x8c\x91\x8b\x8e\x8d\x1a\x9b"
+"\x82\x94\x7b\x7b\x82\x82\x78\x88\x1e\x74\xfb\x25\x05\x89\x83\x8b\x89\x89\x1a\x7c\x94\x82\x9b\x9b\x93\x94\x9e\x8f\x1e\x0b\x06\x71"
+"\x7d\x82\x7b\x7a\x99\x82\xa5\x1f\x0b\x06\x72\x7d\x82\x7b\x7a\x99\x82\xa4\x1f\x0b\xcc\xbb\xca\x9b\x80\x96\x7c\x7c\x83\x83\x79\x89"
+"\x1f\x0b\x06\x77\x7f\x50\x1d\x0b\xa1\x96\x41\x1d\x0b\x82\x7b\x7a\x96\x82\xa0\x1f\x0b\x62\xa5\xae\x86\x1f\x9d\x89\x83\x93\x7c\x1b"
+"\x0e\xa5\x99\x94\x9c\x9b\x7d\x94\x71\x1f\x0b\x21\x1d\x76\x1f\x0b\x15\x98\x96\x8d\x8e\x94\x1a\x9a\x0b\x15\x97\x96\x8d\x8e\x0b\xa0"
+"\x82\x96\x7a\x7a\x82\x0b\x94\x9b\x9c\x80\x94\x75\x1f\x0b\x7d\x96\x1f\x0e\xf7\x09\x16\xd4\x06\xf7\x02\xf8\x0e\xf7\x00\xfc\x0e\x05"
+"\xd4\x06\xc9\xf8\x94\x05\x95\xf7\x10\x1d\xe5\x06\x56\xfc\x46\x24\xf7\xfe\x05\x45\x06\x21\xfb\xff\x57\xf8\x47\x05\xe3\xf7\x10\x1d"
+"\x96\x06\x0b\x75\x1d\x7d\x7f\x46\x1d\x15\x3f\x1d\xf7\x71\x16\x3f\x1d\x0e\x1f\xfb\x80\x06\x76\x80\x82\x7b\x7b\x97\x82\x9f\x1f\x0e"
+"\x15\x7c\x80\x80\x7b\x4c\xcc\x5b\xe0\x0b\x28\x06\x74\x94\x7e\x9c\x9c\x94\x98\xa3\x1e\xf7\x02\x07\x0b\x07\x76\x80\x82\x7a\x7b\x96"
+"\x82\xa0\x1f\x0b\x15\xa1\x96\x21\x1d\x75\x1f\x0b\xa0\x96\x21\x1d\x76\x1f\x0b\xa0\x97\x41\x1d\x0b\x88\x91\x1b\x99\x97\x96\x99\x96"
+"\x89\x8e\x0b\x93\x1f\x85\x91\x05\x0e\x94\x1a\x9a\x80\x96\x7c\x84\x86\x89\x0b\x76\x80\x82\x7b\x7b\x96\x82\xa0\x1f\x0b\x73\x9f\x77"
+"\xa4\xa4\x9f\x0b\x8e\x93\x94\x1e\x0e\xf8\x4d\xf8\xa0\x15\xae\x63\x5d\x9b\x53\x1b\xfb\x00\x3a\x47\x32\x5f\x9f\x63\xad\x74\x1f\xaa"
+"\x75\xb0\x7f\xd1\x7f\xd2\x80\x9f\x85\xa3\x7c\x08\xa5\x7b\x9b\x6d\x6b\x1a\x46\x48\x58\x30\x33\x45\xba\xc9\x86\x1e\x9f\x8a\x83\x94"
+"\x7b\x1b\x7a\x82\x80\x76\x1f\xfb\x01\x07\x27\x1d\x99\x07\x63\xb4\xc4\x75\xcc\x1b\xf7\x10\xe3\xd2\xed\xbf\x73\xb7\x63\xa3\x1f\x6c"
+"\x9e\x6f\x93\x3d\x98\x4e\x95\x71\x93\x73\x9b\x08\x73\x9a\x7e\xa4\xa8\x1a\xca\xc5\xb8\xdb\xd6\xc5\x62\x53\x90\x1e\x77\x8c\x94\x82"
+"\x9a\x1b\x9c\x94\x96\xa0\x1f\xf0\xac\x1d\x0b\xf7\x41\xf8\x37\x15\x3a\x06\x75\x81\x83\x7a\x30\x1d\xa8\xfb\xd1\x63\x06\x2b\x1d\xf7"
+"\x18\x23\x1d\x63\xf7\x85\x06\xd6\xc8\xa4\x9a\xc8\x1b\xaf\x9e\x85\x79\xa1\x1f\xa3\x77\x97\x74\x70\x1a\xfb\x81\x6f\x07\x2b\x1d\xf7"
+"\x01\x06\x9f\x97\x53\x1d\x6e\xf7\x88\x06\xd9\x45\xc7\x2f\x4e\x67\x79\x53\x56\x1e\x0b\xf7\x93\xf8\x37\x15\xfb\x0d\x06\x76\x7f\x82"
+"\x7b\x7b\x97\x81\xa0\x1f\xd0\xfb\xd1\x30\x06\x76\x7f\x81\x7c\x7a\x3a\x1d\xf7\xd1\x06\x9f\x97\x94\x9c\x9a\x7f\x95\x77\x1f\xfb\x42"
+"\xf7\x64\x06\xec\xf7\x00\xac\xa1\xb6\x1b\x9f\x9d\x82\x73\xa3\x1f\x84\x93\x8e\x89\x94\x1b\x9a\x96\x96\x9b\x95\x85\x94\x78\x9a\x1f"
+"\xa2\x70\x75\x94\x6c\x1b\x57\x5c\x71\x3d\x33\x1f\x0b\xf7\x45\x1d\x7a\x82\xe1\x1d\x0b\x55\x1d\x70\x1d\x90\x8d\x94\x95\x1e\x0e\xf7"
+"\x05\x1d\xfb\x07\x29\xed\xf7\x08\x1f\xd0\x07\xf7\x06\xe2\xe7\xf7\x01\xe1\xd7\x5a\x51\x90\x1e\xf7\x0f\x1d\x0b\x15\x53\x5f\x61\x57"
+"\x57\xb7\x61\xc2\xf7\x1a\x1d\x0b\x98\x1d\x82\x1a\x7c\x96\x80\x9a\x92\x0b\x75\x1f\x53\x06\xf7\x8f\xf8\x87\x05\x95\x06\xa1\x96\x41"
+"\x1d\xfb\x02\x06\x76\x80\x0b\xf8\x6d\xf8\x97\x15\xb2\x5d\x51\xa0\x4b\x1b\x48\x4e\x71\x5b\x5d\x1f\x5f\x5d\x6e\x45\x4e\x1a\x3a\x07"
+"\xfb\x1c\xf7\x12\xfb\x0f\xf7\x1f\xcc\x0b\x1b\xbd\xad\xa7\xb4\xb1\x73\xa3\x62\x8e\x1f\x0e\x30\x1d\xf7\x7d\x06\xa1\x96\x94\x9c\x0b"
+"\x15\xf7\x1b\xf7\x01\x05\x99\x95\x8d\x8f\x95\x94\x1d\x0b\x06\x76\x80\x83\x7a\x30\x1d\xbc\xfc\x61\x5a\x06\x20\x1d\x0b\x81\x85\x87"
+"\x7f\x82\x1e\x37\xfb\x10\x05\x0b\x06\x9f\x82\x96\x7a\x7a\x82\x80\x77\x1e\x0b\x07\x7b\x1d\x0b\x62\x74\x78\x70\x66\x1a\x62\xa9\x73"
+"\x0b\xa4\x99\x94\x9b\x9c\x7d\x94\x72\x1f\x0b\x77\x7f\xf7\x3e\x1d\x0b\x94\x93\x98\x97\x82\x93\x7d\x1f\x0b\x1b\x73\x81\x95\xa3\x1f"
+"\x0b\xf8\xa2\xf7\x61\x15\x94\x06\xa0\x97\x21\x1d\x75\x1f\xfb\x56\x06\x75\x80\x2a\x1d\xf7\x19\xfb\x1e\x06\x72\x54\x6c\x84\x58\x1b"
+"\xfb\x22\x36\xda\xf7\x17\x1f\xd3\x07\xc2\xa6\xc8\xb6\xb3\x1e\xae\xb0\xb6\x9b\xc2\x1b\xe1\xd0\x66\x5b\x90\x1f\x77\x8c\x93\x82\x9b"
+"\x1b\x9c\x94\x96\x9f\xdb\x1d\x0b\xf8\x43\xf7\x9e\x15\xfb\x6b\x5b\x07\x2b\x1d\xf7\x20\x06\xa0\x97\x21\x1d\x75\x1f\x63\xf8\x61\x9f"
+"\x06\xa0\x96\x94\x9c\x9c\x80\x93\x76\x89\x1d\x06\x0e\xf7\xde\xf7\x3a\x15\xf7\x30\xf7\xed\x05\xfc\x60\x46\x07\x37\x1d\xf7\x2a\x23"
+"\x1d\x6e\xf8\x61\x9f\x3e\x1d\x23\x06\xfb\x2b\xfb\xe2\xfb\x2d\xf7\xe2\x05\x24\x06\x20\x1d\x9f\x92\x1d\xf8\x5f\x06\xf7\x32\xfb\xec"
+"\x05\x0e\xf7\x33\x16\xf7\xad\xf7\xe8\x05\xfb\xb5\x5b\x07\x76\x7f\x38\x1d\xf7\x29\x06\xa0\x96\x94\x9b\x9c\x80\x94\x76\x1f\x5a\xf7"
+"\xd1\xbc\x06\xa0\x96\x94\x9b\x9c\x80\x94\x76\x1f\x22\x06\xfb\xad\xfb\xe9\x05\xf7\xb6\xbb\x07\xa1\x96\x57\x1d\xfb\x23\x06\x75\x80"
+"\x38\x1d\xb6\xfb\xd1\x60\x25\x1d\x0b\xf7\x54\xf8\x37\x15\xf7\x04\x07\x8e\x1d\xfb\x96\x06\x3f\xca\x59\xed\xba\xc3\x96\x9d\xbb\x1e"
+"\xb0\x99\x9b\x98\x9a\x1a\x99\x80\x96\x7d\x86\x87\x8a\x85\x82\x1e\x75\x64\x46\x7b\x54\x1b\x49\x62\xa9\xba\x1f\xf7\x94\xf7\x6a\x07"
+"\x4f\x1d\x0b\xf7\x3f\xf7\x76\x15\xf7\x12\x06\xf7\x08\xe7\xd6\xea\xe9\x36\xd4\xfb\x01\x1f\xfb\x85\xe4\x1d\xf7\x76\x04\xf7\x7f\xf7"
+"\x23\x07\xd8\xc9\x57\x4b\x4a\x46\x55\x37\x1f\x0e\x8a\x1d\x95\x89\x8f\x7e\x96\x1f\x0e\x15\x7c\x80\x80\x7b\x4c\xcc\x5b\xe1\xe0\x4d"
+"\x1d\x67\x86\x62\x72\x55\x1b\x56\x51\x1d\x15\x91\x94\x8d\x90\xed\x1d\xf4\x1d\x99\x91\x92\x68\x1d\x1f\xfb\x0c\x06\x75\x80\x83\x7a"
+"\x7a\x3a\x1d\xbb\xfb\x57\xfb\x96\xf7\x57\xbb\x3d\x1d\xfb\x0c\x22\x1d\x9f\xfc\x61\x63\x06\x2b\x1d\xf7\x20\x06\xa0\x97\x21\x1d\x75"
+"\x1f\x5b\xf7\x6b\x0b\x8d\x1d\x96\x80\x99\x92\x91\x8d\x92\x93\x1e\xf3\xdf\xf4\x37\x05\x85\x93\x91\x88\x91\x1b\x99\x97\x96\x99\x0b"
+"\x05\xb6\x3d\x1d\xfb\x07\x22\x1d\x98\x06\x0b\x25\x1d\xb3\xfc\x61\x63\x25\x1d\x0b\x45\x1d\x7f\x82\x88\x87\x80\x1a\x7d\x0b\xa0\x82"
+"\x95\x7a\x7a\x82\x80\x77\x1e\xfb\x04\x46\x07\x75\x80\x2a\x1d\xd0\x0b\xf7\x47\x1d\xc5\x24\x1d\x53\x06\x45\xf7\x1b\x69\xcb\x66\xb6"
+"\x6a\x99\x19\xa8\xaa\x0b\x15\x84\x85\x88\x85\x85\x1f\x6e\x6e\x82\x85\x7c\x1b\x7f\x82\x0b\x95\x86\x8c\x75\x98\x08\x79\x96\x80\x9a"
+"\x99\x1a\xb2\xc0\xa8\x0b\xfc\x61\xf7\x0c\x1d\x0b\x83\xa1\x1b\xbd\xad\xa7\xb4\xb1\x73\xa3\x62\x8e\x1f\x0b\xf7\x1f\x1d\x85\x8e\x85"
+"\x1b\x0b\x16\x72\x77\x78\x72\x72\x9f\x78\xa4\xa4\x9f\x9e\x0b\x3a\x1d\xf7\x03\x06\xfb\x42\xfc\x61\x05\x0b\x26\x07\x75\x81\x83\x7a"
+"\x30\x1d\xbc\x0b\x65\x1d\x82\x81\x1e\xfb\x06\x2a\x05\x80\x81\x88\x87\x0b\xbd\xbe\xc9\xc9\x59\xbe\x4e\x1f\x89\x64\x15\x0b\xa9\x79"
+"\x1f\xa8\x79\xa8\x84\xd5\x84\xc2\x85\x0b\x07\x76\x94\x7f\x9c\x9c\x94\x97\xa0\x1e\x0b\x8a\x89\x85\x1a\x7d\x97\x7f\x99\x96\x90\x8e"
+"\x99\x94\x1e\x0e\x89\x82\x81\x1e\xfb\x06\x2a\x05\x80\x0b\xa0\x96\x94\x9b\x9b\x80\x94\x76\x1f\x0b\x06\xa1\x96\x94\x9c\x9c\x81\x93"
+"\x74\x1f\xfb\x02\x06\x0b\x9b\x83\x1f\x81\xa0\xa9\x83\xa1\x1b\xbd\xad\xa7\xb4\x0b\x87\x8a\x79\x1b\x70\x7f\x94\x9e\x0b\x73\xa2\xa7"
+"\xa7\xa3\xa2\xa9\x1f\x0b\x1e\x7d\x86\x84\x83\x7f\x1a\x7d\x96\x80\x98\x90\x0b\x1a\x99\x7f\x96\x7d\x1e\x0e\x7a\x7b\x96\x82\xa0\x1f"
+"\x0b\x2b\x05\x81\x83\x87\x84\x83\x1a\x7d\x97\x7f\x0b\xb3\x9f\xa0\x96\x82\x94\x81\x88\x87\x8a\x88\x0b\x82\x7a\x7b\x99\x82\xa4\x1f"
+"\x0b\x96\x7a\x7a\x83\x80\x76\x1e\x0b\x96\x87\x80\x9e\x1f\x73\xb4\x0b\x06\xa4\x99\x94\x9b\x9c\x7e\x94\x71\x1f\x0b\x07\x9f\x82\x96"
+"\x7a\x7a\x83\x80\x77\x1e\x0b\x86\x8d\x84\x1b\x7c\x80\x80\x7d\x82\x8e\x0b\x91\x8e\x91\x93\x1e\xf3\xdf\xf3\x37\x05\x0b\xa4\xa4\x9f"
+"\x9f\xa3\xa3\x77\x9f\x72\x1f\x0b\xf7\xda\xbc\x15\x61\xac\xb5\x74\xb6\x1b\xad\xaa\x98\xac\xb5\x1f\xa4\x9e\x93\x95\x97\x1a\x98\x7f"
+"\x97\x7e\x85\x85\x89\x87\x86\x1e\x60\x5c\x77\x7f\x6e\x1b\x4d\x59\xce\xe8\x82\x1f\xf7\x96\x06\x8a\xba\x89\x9e\x84\xad\x08\xe3\x78"
+"\x57\xbd\x44\x1b\x5b\x62\x71\x5b\x6e\x1f\xb9\x74\x60\xa7\x5c\x1b\x6c\x6b\x83\x7a\x64\x1f\x74\x81\x82\x82\x7e\x1a\x7f\x97\x7e\x96"
+"\x91\x92\x8e\x90\x94\x1e\x9a\xa7\xa6\x93\xa5\x1b\xb9\xb0\x69\x5f\x1f\x57\x07\x92\x73\x6d\x8f\x71\x1b\x20\x3a\x54\x42\x34\xcc\x4b"
+"\xe3\xb5\xb0\x9e\xb2\xaf\x1f\x81\x07\x76\x94\x80\x9b\x9c\x94\x96\xa0\x1e\x58\xde\x15\x52\x5e\x6b\x74\x67\x1b\x51\x62\xb0\xbf\xa1"
+"\x91\x9a\x98\x98\x1f\x9f\xa2\xc2\x9d\xb5\x1b\x9f\xa9\x86\x84\xa2\x1f\xbe\xb9\x15\xe4\x97\xaf\xba\xc2\x1b\xad\xa7\x79\x6a\x9c\x1f"
+"\x95\x77\x92\x73\x90\x62\x08\x0b\xf8\x87\xf8\x6a\x15\x74\x94\x7e\x9c\x9c\x94\x98\xa4\x1e\xbf\x07\xaa\x83\x93\x6b\x3d\x78\x7c\x22"
+"\x4b\x1e\x4c\x22\x80\x82\x51\x89\x08\x72\xf7\x4d\xba\x2f\x1d\xfb\x25\x4c\x1d\xb9\xfc\x61\x5d\x06\x35\x1d\xf7\x25\x06\xa4\x99\x94"
+"\x9c\x9b\x7d\x94\x72\x1f\x5c\xf7\x75\xa4\x06\xdc\x89\xa6\x77\xbc\x31\x8f\x1d\x92\x96\xb5\xd0\xbe\xe0\x94\x93\xb6\x8d\x08\x0b\xf7"
+"\xb8\xf7\x4d\x15\xfb\x1a\x5c\x07\x37\x1d\xf7\xf3\xf7\x1c\x06\x9e\x81\x98\x7b\x79\x83\x82\x74\x1e\x36\xfb\x5c\xf7\x6c\xce\x76\x07"
+"\x77\x94\x7f\x9b\x9b\x94\x96\xa0\x1e\xe9\x07\xa0\x83\xa9\x1d\x75\x48\xf7\x56\xf7\x48\x23\x07\x27\x1d\xf7\x2f\xfc\x44\x07\x76\x80"
+"\x83\x7a\x30\x1d\xc3\x06\xfb\x16\xfc\x61\x05\x6b\x06\x2b\x1d\xf2\x06\xa0\x97\x21\x1d\x75\x1f\x78\x06\xb1\xf7\x1a\x05\xf7\x18\xbe"
+"\x15\xfb\x09\x06\xd7\xf7\xa8\x05\xb4\x06\x0b\xf7\xe5\xf7\x6f\x15\xf7\x32\xf7\x29\x05\x8f\x9f\x1d\x75\x81\x83\x7a\x30\x1d\xae\x06"
+"\xfb\x10\xfb\x06\xfb\x0c\xf7\x06\x05\xab\x9f\x1d\x74\x81\x83\x7a\x7a\x96\x82\xa1\xf7\x35\x1d\x83\x06\x37\x1d\xf7\x19\x06\xa0\x97"
+"\x21\x1d\x75\x1f\x55\x06\xf7\x23\xf7\x19\xf7\x22\xfb\x19\x05\x57\x06\x37\x1d\xf7\x18\x06\xa0\x97\x21\x1d\x75\x1f\x84\x06\x0e\x41"
+"\x1d\xfb\x03\x22\x1d\xae\x06\xfb\x23\xfb\x4b\xfb\x24\xf7\x4b\x05\xab\x3e\x1d\xfb\x02\x06\x37\x1d\x97\x06\xf7\x44\xfb\x74\xfb\x4c"
+"\xfb\x81\x05\x7c\x06\x37\x1d\xf7\x17\x06\xa0\x97\x21\x1d\x75\x1f\x56\x06\xf7\x2d\xf7\x58\xf7\x2e\xfb\x58\x05\x59\x06\x75\x80\x82"
+"\x7b\x7a\x97\x82\xa0\x1f\xf7\x17\x06\xa0\x97\x94\x9c\x9b\x80\x94\x75\x1f\x7d\x06\x0e\xf7\x3f\xf7\x70\x15\xd8\xce\xe7\x6d\xb5\x51"
+"\xd4\xfb\x5b\x19\xe5\x06\xa1\x96\x21\x1d\x75\x1f\x57\x06\x43\xf7\x4b\x65\xbe\x2f\xb3\xf7\x6a\xf7\x4f\x18\x99\x44\x1d\xfb\x0b\x06"
+"\x75\x80\x83\x7a\x7a\x96\x82\xa1\xcb\x1d\x0b\xf8\xa2\xf7\x61\x15\x94\x06\xa0\x97\x21\x1d\x75\x1f\xfb\x56\x06\x75\x80\x2a\x1d\xf7"
+"\x19\xfb\x1e\x06\x72\x54\x6c\x84\x58\x1b\xfb\x22\x36\xda\xf7\x17\x1f\xd3\x07\xc2\xa6\xc8\xb6\xb3\x1e\xae\xb0\xb6\x9b\xc2\x1b\xe1"
+"\xd0\x66\x5b\x90\x1f\x77\x8c\x93\x82\x9b\x1b\x9c\x94\x95\xa0\xdb\x1d\x0b\xf7\x25\xf8\x94\x15\xa6\xab\x1d\xfb\x04\x4b\x1d\xa1\x06"
+"\xf7\x58\xfb\xf4\x6d\x55\x05\x53\x6c\x7a\x7c\x6a\x1b\x80\x85\x8c\x90\x79\x1f\xbf\x07\xa2\x82\x98\x7a\x7a\x82\x7e\x72\x1e\x52\x07"
+"\x78\x8e\x80\x93\x87\x1e\x81\x99\xa9\x85\xa6\x1b\xc3\xaf\xa6\xd2\xb3\x1f\xf7\x83\xf8\x42\x05\xa0\x06\xa4\x99\x94\x9c\x9b\x7d\x94"
+"\x72\x1f\xfb\x00\x4b\x1d\xa6\x06\xfb\x38\xfb\xbd\x05\x0b\xf7\x3f\xf8\xef\x15\x26\x06\x20\x1d\xbc\xfc\x89\x63\x06\x2b\x1d\xf7\x18"
+"\x06\xa0\x97\x21\x1d\x75\x1f\x63\xf7\x87\x06\xa6\xa9\x9c\x9e\x91\x90\x08\xa3\xa8\xa6\x95\xb1\x1b\xb2\x9f\x85\x79\xa1\x1f\xa3\x78"
+"\x97\x74\x6f\x1a\xfb\x81\x63\x07\x76\x80\x82\x7b\x7a\x96\x82\xa0\xf7\x18\x1d\x2c\x4f\x62\x77\x56\x5b\x1e\x0b\xf8\xb1\xf7\x6c\x15"
+"\xd5\xf7\x3a\x05\x8f\x92\x8c\x91\x91\x1a\x98\x81\x95\x7e\x7e\x83\x84\x79\x83\x1e\x59\xfb\x06\x05\xec\x60\x3f\xbe\x28\x1b\xfb\x16"
+"\x24\x27\xfb\x10\xfb\x11\xf3\x27\xf7\x14\xc9\xc7\xa4\xb5\xb0\x1f\xa0\xa4\x99\xa1\xa0\xb8\xbe\xfb\x12\x18\x73\x94\x92\x84\x9a\x1b"
+"\x99\x95\x95\x98\x92\x89\x92\x87\x96\x1f\xfb\x0f\xf7\x4a\x15\x78\x5f\x05\x2b\x62\x56\x62\x3b\x1b\x29\x3a\xd9\xeb\xeb\xdb\xd8\xf0"
+"\xd7\xc6\x64\x45\xaa\x1f\x0b\x72\x1d\xca\xa4\xb9\xbc\x1e\xa7\xa5\x97\x9b\x97\x1a\x99\x6e\x1d\x0b\x39\x1d\x97\xa1\x1e\xc1\x07\xab"
+"\x83\x92\x65\x47\x7a\x80\x2b\x3a\x1e\x5e\x55\x7e\x84\x57\x8a\x08\x73\xf7\x0a\xb6\xab\x1d\xfb\x1e\x33\x1d\xb6\xfb\xd1\x60\x33\x1d"
+"\xf7\x1e\x06\x7b\x1d\x60\xf7\x28\xa3\x06\xda\x8a\xa8\x7c\xb6\x4d\xcf\x28\x18\x95\x7a\x92\x87\xa4\x8a\x08\x0b\xf7\xda\x16\xf7\x53"
+"\x06\xa0\x97\x94\x9b\x9c\x7f\x94\x76\x1f\x63\xc6\x1d\xf7\x53\x28\x06\x74\x94\x7e\x9c\x9c\x94\x98\xa3\x1e\x0e\xf8\x47\xf7\xf1\x15"
+"\xc5\x5f\x57\xa5\x46\x1b\xfb\x09\x2c\x2c\xfb\x08\xfb\x09\xea\x2c\xf7\x09\xcf\xc0\xa6\xc3\xb7\x1f\xfb\x01\x07\x8f\x50\x50\x52\x4d"
+"\xcc\x1d\x0b\xf7\x3b\xf8\x04\x15\xcd\x44\x1d\x49\xc0\x06\xb9\xa6\xad\xae\x99\x9d\x88\x84\xa3\x1e\x87\x96\x8c\xf7\x2b\x1d\x76\x67"
+"\x92\x76\x1b\x4d\x59\x50\x43\x1f\x56\x43\x07\x20\x1d\xd3\xfb\xd1\x3d\x06\x20\x1d\xf7\x58\x06\xa0\x97\x21\x1d\x75\x1f\x49\x06\x0b"
+"\x15\x7c\x82\x83\x7e\x7f\x93\x83\x9b\x1f\xbe\x89\xb1\x6d\x65\x1a\x66\x65\x6c\x5f\x6c\x75\xf7\x22\x1d\xbf\xcf\xc3\xbc\xc7\xae\x79"
+"\xdc\x1d\x0e\x52\x1d\xfb\x11\x06\x71\x7d\x82\x7b\x7a\x99\x82\xa5\xd1\x1d\xb4\x1b\xc6\xc5\x9c\xac\xbe\x1f\x0b\x15\x95\x93\x8f\x93"
+"\x94\x1a\x99\x81\x95\x7d\x83\x85\x88\x83\x81\x1e\xfb\x05\x2b\x05\x80\x83\x87\x84\x81\x1a\x7d\x95\x81\x9a\x93\x92\x8e\x93\x94\x1e"
+"\xfb\x06\xd8\x15\x72\x77\x78\x72\x72\x9f\x78\xaf\x1d\xf7\x97\x16\x71\x77\x78\x72\x67\x1d\x9f\xa3\xa3\x77\x9f\x73\x1f\x0e\xce\x1d"
+"\xf8\x5c\xf7\x36\x06\x56\x1d\x80\x76\x1e\xfb\x03\xfb\xc3\x07\x0b\x15\xfb\x3e\xfb\x1b\xfb\x17\xfb\x3a\xfb\x36\xf7\x1b\xfb\x19\xf7"
+"\x3b\xf7\x3a\xf7\x1b\xf7\x19\xf7\x37\xf7\x36\xfb\x1b\xf7\x1a\xfb\x37\x1f\x85\x58\x15\xf7\x21\xf7\x03\xfb\x00\xfb\x1d\xfb\x1b\xfb"
+"\x04\xfb\x02\xfb\x1d\xfb\x1e\xfb\x04\xf7\x02\xf7\x1b\xf7\x1a\xf7\x04\xf7\x03\xf7\x1b\x1f\x0e\xb0\xbc\x1a\xdf\x3f\xcb\x27\x1e\xfb"
+"\x97\x22\x1d\xbc\x06\xbf\xfb\x57\x15\xf7\x57\xf7\x33\x07\xd0\xc1\x61\x55\x51\x51\x62\x39\x1f\xfb\x22\xfb\x9e\x15\xf7\x6b\xf7\x24"
+"\x07\xc7\xab\x85\x79\xaa\x1f\xaf\x76\xa0\x6b\x69\x1a\x51\x56\x5d\x47\x1e\x0e\x06\x75\x80\x38\x1d\xa4\xfb\x0f\xfb\x8e\xf7\x0f\xea"
+"\x1d\xf7\x18\x06\xa0\x97\x94\x9b\x9c\x7f\x94\x76\x1f\x63\xf7\x23\x0b\xf7\xd1\xa5\x06\x9f\x97\x94\x9b\x9c\x80\x94\x76\x1f\x24\x06"
+"\x75\x80\x38\x1d\xa4\xfb\xd1\xfb\x8e\xf7\xd1\xea\x1d\x0b\x15\xfb\x26\xfb\x04\xfb\x15\xfb\x3b\xf7\x07\x1d\x85\x58\x15\xf7\x06\xe6"
+"\xfb\x00\xfb\x1d\xfb\x1a\x30\xfb\x02\xfb\x04\xfb\x03\x30\xf7\x02\xf7\x1b\xf7\x19\xe6\xf7\x03\xf7\x01\x1f\x0b\xf7\x7d\xf8\x94\x15"
+"\xf7\x9a\xfb\x2c\x06\x39\x1d\x96\x9f\x1e\xf7\x5f\xfc\x5d\x5f\x1d\xe6\xfc\x61\x30\x06\x76\x80\x82\x7a\x7a\x96\x83\xa0\x1f\xf7\x7e"
+"\x06\xa0\x96\x93\x9c\x9c\x80\x94\x76\x1f\x30\x06\x0e\xf7\x08\x1d\xb1\xa7\xf7\x3d\x1d\xa8\xa6\xae\x1f\xfb\x2f\x04\xb4\xaa\x70\x68"
+"\x67\x6c\x6f\x63\x63\x6c\xa7\xaf\xae\xaa\xa6\xb2\x1f\x0b\xf8\x30\xf8\x04\x15\xfc\x1a\x07\x4a\x8a\x5e\x5f\x4c\x1b\xfb\x14\x06\x75"
+"\x80\x2a\x1d\xf7\x15\x06\xe6\x89\xd2\xd2\x89\xe6\x08\xf8\x4d\xfb\xb3\x07\x74\x81\x2a\x1d\xf7\x87\xf7\x49\x1d\x1f\xab\x06\xfb\x99"
+"\xfb\x78\x05\xf7\x78\xd0\x07\x62\x1d\xfb\x3e\x76\x1d\xf7\x3e\x06\xa0\x97\x21\x1d\x75\x1f\x46\x06\x0b\x8c\x08\xfb\x08\x06\x76\x80"
+"\x83\x7a\x7a\xd2\x1d\x0b\x15\x36\x71\x70\x83\x84\x88\x08\x83\x87\x86\x85\x82\x1a\x81\x94\x81\x96\x8e\x8e\x8b\x8c\x8e\x1e\xc9\x9f"
+"\x05\xfb\x97\x07\x8c\x75\x73\x8b\x7d\x1b\x76\x80\x84\x7c\x7f\x95\x83\x98\x1f\xf7\x47\x06\x98\x7d\x1d\x47\x06\x0b\x1e\xf7\x15\x34"
+"\x1d\x64\xfb\x1a\xf7\x57\xf7\xae\x30\x07\x27\x1d\xf7\x22\xfc\x47\x07\x76\x80\x83\x7a\x30\x1d\xbc\xfc\x61\x5a\x06\x20\x1d\x0b\x06"
+"\x6a\x8a\x87\x88\x88\x6a\x83\xfb\x05\x18\x8a\x7e\x8b\x8b\x8a\x1a\x7a\x95\x81\x9a\x9c\x94\x97\xa4\x8c\x1e\x93\xf2\x05\xf7\x13\xfc"
+"\x61\x5d\x06\x35\x1d\xf7\x1f\x2f\x1d\x62\x0b\x15\xf7\x1a\x3d\x1d\xfb\xd4\x22\x1d\xf7\x1a\xfc\x61\xfb\x1a\x06\x20\x1d\xf7\xd4\x06"
+"\xa0\x97\x21\x1d\x75\x1f\xfb\x1a\x06\x0b\x1f\xb0\xfb\x12\x06\x60\x46\x59\x7b\x4f\x1b\x50\x74\xa1\xc5\x1f\xf4\xb9\x79\x1d\xfb\x19"
+"\x33\x1d\xae\x22\x06\x55\x99\x69\xa8\x79\x1e\x7b\xa4\xaf\x83\x0b\x96\x82\xa0\x1f\xf7\x07\x06\xe1\x86\xe2\xdd\x88\xde\x08\xf8\x1a"
+"\xbc\x07\xa0\x96\x94\x9c\x9c\x81\x93\x75\x1f\x26\x06\xfb\x38\x66\x15\xe8\xd2\x45\x30\x32\x44\x44\x30\x30\x43\xd2\xe5\xe3\xd3\xd3"
+"\xe4\x1f\x0b\xf7\x66\x15\xfb\x67\xf7\x59\x05\x93\x82\x83\x8f\x83\x1b\x7d\x80\x80\x7d\x82\x8c\x89\x96\x7f\x1f\xf7\x1f\xfb\x35\xfb"
+"\x1f\xfb\x36\x05\x80\x7f\x8a\x89\x82\x1a\x7d\x96\x80\x99\x94\x92\x8e\x94\x94\x1e\x0b\x15\x84\x86\x89\x84\x84\x1f\x6d\x6e\x82\x85"
+"\x7c\x1b\x7f\x82\x8f\x9e\x68\x1f\x9d\x6b\x7d\x90\x76\x1b\x70\x75\x80\x70\x6e\x1f\x7c\x7e\x85\x81\x81\x1a\x7f\x96\x80\x99\x93\x93"
+"\x8e\x91\x90\x1e\xa8\x0b\xec\x1d\x8d\x94\x1a\x99\x80\x96\x7d\x83\x83\x88\x82\x82\x1e\x0b\xf7\xda\xf8\x05\x15\xf7\x0f\x06\xa1\x96"
+"\x57\x1d\xfb\x0f\xf7\x2b\x78\x1d\xfb\x2b\xfb\x0f\x5f\x1d\xf7\x0f\x0b\x1b\x4b\x73\xab\xe1\x1f\xf7\x31\xbc\x79\x1d\xfb\x1f\x06\x35"
+"\x1d\xb1\xfb\x35\x06\x47\x99\x60\xa8\x74\x1e\x77\xa4\xb0\x80\x0b\x75\x1d\x7d\x7f\x80\x7d\x80\x8e\x87\x98\x82\x1f\x0e\x3c\x1d\x98"
+"\xf5\x1d\x45\x1d\x7f\xf3\x1d\x95\x89\x8f\x58\x1d\x1f\xe5\x07\xa0\x83\x95\x79\x7a\x82\x81\x76\x1e\x88\x07\xaa\x5f\x55\x9b\x4c\x1b"
+"\xfb\x23\xfb\x04\xfb\x05\xfb\x25\x1f\x43\x07\xfb\x32\xf7\x01\x24\xf7\x3a\xcd\xc9\x9c\xaf\xcc\x1e\x0b\xa8\x65\xa3\x1f\xa9\x9f\x99"
+"\xa2\xa9\x1a\xc0\x5d\xb3\x4f\x5a\x52\x6c\x70\x81\x94\x82\x96\x93\x8e\x8d\x94\x93\x1e\x9b\x9a\xa2\x94\xa8\x1b\xb0\xa7\x75\x6d\x6e"
+"\x71\x76\x67\x1f\x0b\x9a\x7d\x9f\xf7\x3c\x1d\xd9\x16\x44\xfb\x74\x05\x89\x86\x8b\x88\x87\x1a\x7a\x9b\x7d\x9e\xf7\x3c\x1d\x0e\x80"
+"\x96\x7c\x84\x84\x88\x84\x83\x1e\x2a\x2f\x05\x7f\x7f\x89\x88\x83\xf7\x3a\x1d\xf7\x83\xe7\x15\x98\x97\x8c\x8d\x94\x1a\x99\x80\x96"
+"\x7c\x0b\xf7\x21\x1d\xf7\x06\x2a\x05\x83\x94\x91\x88\x92\x1b\x9a\x96\x96\x9a\x93\x8b\x8c\x82\x93\x1f\x86\x91\x05\x0e\x78\x96\x7d"
+"\x9b\x9c\x93\x95\xa2\x1e\xf7\x09\xfc\x67\xfb\x09\x07\x75\x94\x80\x9c\x9c\x94\x96\xa1\x1e\xcd\xf7\x30\xfc\x61\x28\x07\x2b\x1d\x0b"
+"\x80\x76\x1e\xfb\x19\xfb\xc1\x07\xf7\xda\xf8\x54\x05\xcb\xfb\xfc\xfb\x36\x07\x27\x1d\xf7\x03\xf7\x93\x07\xfb\xd9\xfc\x53\x05\x4a"
+"\x07\x0b\x3c\x1d\x98\x92\x91\x8d\x92\x93\x1e\xf3\xdf\xf4\x37\x05\x85\x93\x91\x63\x1d\x0b\x15\x72\x77\x78\x72\xf7\x19\x1d\x72\x9f"
+"\x78\xa4\xa4\x9f\x9e\xa4\xa3\x77\x9f\x72\x1f\x0e\x76\x1d\xf7\x7e\x06\xa0\x97\x21\x1d\x75\x1f\xfb\x19\x06\x0b\x15\x91\x94\x8d\x90"
+"\x91\x1a\x99\x7f\x96\x7d\x77\x1d\x85\x83\x89\x86\x85\xf7\x31\x1d\xf7\x06\x1d\x99\x97\x96\x99\x94\x8b\x8b\x7c\x9a\x1f\x0e\x15\x97"
+"\x95\x8d\x8f\x98\x1d\x81\x1a\x7d\x96\x80\x9a\x92\x90\x8d\x94\x95\x1e\x0e\x7d\x94\x71\x1f\xfb\x18\x4c\x1d\xb5\xfb\x56\x06\x0b\x63"
+"\x07\xf7\x13\x1d\xf7\xd1\xa5\x06\x9f\x97\x94\x9b\x9c\x80\x94\x76\x1f\x0b\xa4\x06\xa0\x97\x57\x1d\x24\x26\x1d\xa5\xfb\xd1\x63\x25"
+"\x1d\x0b\x77\x83\x75\x72\x1f\x87\x93\x87\x8e\x82\x8f\x08\x93\x76\x67\x92\x77\x1b\x4d\x59\x50\x43\x1f\x56\x43\x07\x20\x1d\xd3\x0b"
+"\x15\xf7\x68\xfb\x59\x05\x82\x95\x92\x87\x93\x1b\x99\x96\x96\x99\x94\x8a\x8d\x80\x97\x1f\xfb\x20\xf7\x36\xf7\x20\xf7\x35\x05\x96"
+"\x97\x8c\x0b\x90\x1a\x9a\x80\x96\x7c\x77\x1d\x83\x80\x9c\x1d\x1f\x90\x81\x89\x8c\x85\x47\x1d\x84\x9b\x84\x1f\x81\x0b\xf7\xda\xf8"
+"\x37\x15\xfb\x39\x06\x75\x81\x83\x7a\x30\x1d\xf7\x05\xfb\xd1\xfb\x2f\x06\x20\x1d\x0b\xf7\x5f\xf7\x2d\x15\x44\xfb\x8d\x05\x8a\x87"
+"\x8a\x87\x87\x1a\x78\x9a\x7c\x9f\x9a\x93\x91\xa0\x97\x1e\xf7\x29\xf7\xa0\x05\x0e\xf7\x0f\x1d\x7b\x07\xb2\x5d\x50\xa0\x4c\x1b\x0b"
+"\x7f\x96\x7d\xf7\x43\x1d\x81\x82\x88\x85\x83\x1a\x7c\x96\xf7\x48\x1d\x82\x88\x87\x80\x1a\x7d\x96\x80\x9a\x91\xae\x1d\x85\x94\x91"
+"\x88\x91\x1b\x99\x97\x96\x99\x0b\x15\x96\x94\x8e\x90\x94\x1a\x99\x7f\x97\x7d\x84\x84\x88\x83\x82\x1e\xfb\x05\xa6\x1d\x0b\x92\x91"
+"\x8d\x92\x93\x1e\xf3\xdf\xf4\x37\x05\x85\x93\x91\x88\x91\x1b\x99\x97\x96\x99\x95\x89\x8f\x7e\x96\x1f\x0e\x05\xa7\x06\x62\x1d\xfb"
+"\x03\x06\x76\x80\x83\x7a\x30\x1d\xa0\x06\xf7\x45\x0b\x15\x94\x94\x8f\x91\x93\x1a\x9a\x80\x96\x7d\x83\x87\x9d\x1d\x81\x88\x87\x81"
+"\x1a\x7d\x0b\xf7\x0b\xbe\x15\x5a\x06\x20\x1d\xf7\xc7\x06\xe9\xd7\xd1\xe1\xcb\x62\xbc\x3d\xa8\x1f\x0b\x81\x85\x87\x7f\x82\x1e\x37"
+"\xfb\x0f\x05\x83\x7f\x9c\x1d\x77\x1d\x86\x84\x88\x84\x86\xf7\x31\x1d\xf7\x43\x1d\x82\x82\x87\x85\x83\x1a\x7c\x96\x80\x99\x93\x8f"
+"\x8d\x94\x95\x1e\x0e\x81\x95\x7c\x82\x86\x88\x83\x83\x1e\x4d\x55\x5b\x72\x47\x1b\x0b\x15\x94\x82\xf7\x0a\x1d\x0b\xfb\x39\xf7\x05"
+"\xfb\x16\xf7\x21\xf7\x23\xf7\x2d\x1d\x1f\x0b\x1e\x6b\x75\x7c\x70\x69\x1a\x51\xbd\x5c\xc9\xc9\xbd\xba\xc5\xad\x7c\xa6\x6b\xa1\x1e"
+"\x49\xf7\x1a\x15\x0b\xf9\x66\x15\x94\x82\x86\x8d\x84\x1b\x7c\x80\x80\x7d\x82\x8f\x85\x95\x82\x1f\xf7\x06\x2a\x05\x83\x0b\xf7\x1b"
+"\x1d\x94\x91\x88\x92\x1b\x0b\x94\x97\xa3\x1e\xc1\x07\xaa\x84\x93\x6e\x4b\x7a\x7b\x21\x59\x1e\x5b\x26\x83\x7f\x70\x8a\x08\x86\x0b"
+"\x6e\x06\x37\x1d\xf7\x2a\x06\xa0\x97\x21\x1d\x75\x1f\x46\x0b\x20\x1d\xbc\xfc\x89\x5a\x06\x20\x1d\xf0\x0b\xa0\x97\x94\x9b\x9c\x7f"
+"\x94\x76\x1f\x63\xf8\x61\xb3\x29\x1d\x0b\x78\x8d\x93\x82\x9b\x1b\x9c\x94\x96\xa0\x1f\xf7\x02\x07\xa0\x82\x95\x7a\x7a\x82\x80\x77"
+"\x1e\x0b\x06\xa0\x97\xf7\x1c\x1d\x0b\x15\x94\x81\xf7\x1b\x1d\x0b\x75\x80\x82\x7a\x7b\xf7\x23\x1d\x0b\x40\x1d\xf7\x18\x06\xa0\x97"
+"\x94\x9b\x9c\x7f\x94\x76\x1f\x63\x0b\x6c\x72\x73\x6d\x6d\xa4\x73\xa9\xaa\xa3\xa3\xa9\x0b\xf8\xa2\xf7\x57\x15\x93\x07\x92\x07\xf7"
+"\x14\x27\xea\xfb\x1a\xfb\x18\x25\x2d\xfb\x0d\x0b\xf7\xc4\xf8\x45\x15\xfb\x1a\x24\x29\xfb\x13\xfb\x10\xf3\x27\xf7\x16\xf7\x16\xf2"
+"\xee\x0b\x77\x7f\x82\x7a\x7b\x97\x82\x9f\x1f\xf7\x7e\x06\x9f\x97\x94\x9b\x9c\x80\x94\x76\x1f\x0b\x1f\xf7\x18\x06\xa0\x97\x21\x1d"
+"\x75\x1f\x63\xf7\x84\x06\xdd\x46\xc7\x0b\xf7\x30\x1d\xf7\x62\x16\x72\x77\x78\x72\x0b\xc1\xb7\xb5\xbf\xbe\x5f\xb6\x56\x1f\x89\x60"
+"\x15\xaa\xa3\x75\x6e\x6f\x73\x74\x0b\xad\x1d\x85\x96\x82\x1f\xf7\x06\x2a\x05\x83\x0b\x41\x1d\xfb\x2a\x22\x1d\x0b\x88\x84\x84\x1e"
+"\x29\x2f\x05\x7f\x80\x89\x88\x82\x1a\x7c\x96\x80\x9a\x92\x0b\x15\xa3\x9e\x78\x74\x73\x78\x78\x74\x73\x78\x9e\xa3\xa1\x9e\x9f\xa2"
+"\x1f\x0b\x1a\x99\x7f\x96\x7d\x85\x85\x88\x85\xf7\x3f\x1d\x91\x83\x0b\xa0\x95\xa5\xa6\x1f\x9e\x9d\x90\x92\x95\x1a\x98\x7f\x96\x7d"
+"\x1e\x0e\x15\x94\x81\x87\x8d\x83\x1b\x7d\x80\x80\x7d\x82\x8f\x84\x94\x83\x1f\x0b\x93\x9f\x6e\x1e\x90\x85\x87\x8c\x86\x1b\x80\x82"
+"\x82\x80\x72\xcb\x6d\x0b\x96\x82\xa1\x1f\xf7\x16\x06\xa1\x97\x94\x9c\x9b\x7f\x94\x75\x1f\x64\x0b\xf8\x6d\x15\x91\x92\x8e\x91\x91"
+"\x1a\x97\x81\x95\x7f\x83\x88\x89\x80\x0b\xf3\xdb\x40\x28\x2b\x3b\x3e\x26\x26\x3a\xd8\xec\xea\xdb\xd9\xee\x1f\x0b\x1e\xf7\x5f\xfc"
+"\x41\x07\x76\x80\x82\x7a\x7b\x97\x82\x9f\x1f\xe6\x0b\x06\x7b\x8c\x7f\x81\x7c\x1a\x88\x07\x7c\x97\x81\x9b\x8c\x1e\x0b\x24\xc6\x2b"
+"\xec\x54\x1e\xfb\x15\x06\x74\x80\x83\x7a\x7b\x98\x0b\x32\x3f\x44\x2b\x2a\x3f\xd2\xe5\xe3\xd7\xd3\xe9\x1f\x0e\xf7\x6b\xf7\x27\x07"
+"\xd1\xcb\x58\x53\x50\x3d\x5a\x2d\x1f\x0b\x8b\x8e\x1b\x98\x96\x96\x99\x96\x84\x94\x7f\x90\x1f\x93\x0b\x15\x61\x6b\x6d\x64\x64\xab"
+"\x6c\xb5\x1f\x96\x06\xb5\xab\x0b\xf7\x04\xf7\x16\xf7\x3a\xf7\x37\xfb\x04\xf7\x18\xfb\x1f\x0b\xb5\xa7\x1d\x87\x1e\x0b\x15\xfb\x22"
+"\x06\xf7\x24\xfb\x81\x05\x79\x95\x96\x84\x0b\x67\x1d\x9e\xa4\xa3\x77\x9f\x72\x1f\x0b\x1a\x7d\x97\x7f\x99\x95\x90\x8e\x99\x94\x1e"
+"\x0e\x80\x9c\x9c\x94\x97\xa2\x1e\xac\x07\xaa\x83\x93\x0b\x06\x78\x83\x84\x7b\x7a\x93\x84\x9e\x1f\xf7\x11\x0b\x93\x6a\x1b\x68\x71"
+"\x7c\x63\x68\x1f\x75\x73\x83\x0b\x1f\x8f\x06\xf7\x32\xfb\x29\xfb\x46\xfb\x3c\x05\x0b\x66\x66\x5e\x5e\x66\xb0\xb9\xb8\xaf\xb0\xb8"
+"\x1f\x0b\xac\x52\x08\x79\x95\x8f\x87\x92\x1b\x92\x90\x8e\x0b\xf7\xe0\xf7\xb4\x15\xf7\x43\xf7\x74\x05\x97\x06\x0b\x94\x96\xa0\x1f"
+"\xcf\x07\xa0\x82\x96\x7b\x7d\x0b\x1a\x7c\x96\x80\x9a\x92\x92\x8e\x93\x93\x1e\x0b\x1b\x9a\x96\x96\x9a\x93\x8b\x8c\x83\x93\x1f\x0b"
+"\x9a\x94\x91\x9e\x96\x1e\xf7\x22\xf7\x86\x05\x0b\x71\x69\x6c\x6f\x73\x66\x66\x6f\xa3\xaa\xac\x0b\x82\x7b\x7a\x97\x82\x9f\x1f\x0b"
+"\x82\x1e\x23\x37\x23\xdf\x05\x0b\x95\x9b\x9b\x7f\x94\x77\x1f\x0b\x7e\x9c\x9c\x94\x99\xa3\x1e\xd5\x07\x8a\x0b\x06\x75\x80\x82\x7b"
+"\x7b\x97\x81\xa0\x1f\x0b\x83\x86\x88\x83\x82\x1e\xfb\x07\x2a\x05\x0b\x07\x76\x7f\x82\x7a\x7b\x96\x82\xa1\x1f\x0b\xf8\x8b\x16\xf7"
+"\x4c\x07\xa0\x82\x96\x7a\x0b\x15\xfb\x6f\x06\xf3\xf7\xa9\x05\x93\x06\x0b\xd3\xfb\x1e\x18\x72\x99\x8c\x8a\xa7\x1b\x0b\x80\x99\x93"
+"\x8e\x8d\x94\x96\x1e\x0e\xf7\x92\x15\x45\xfb\x05\xd1\x06\x0e\x01\x00\x01\xe3\x01\x05\x00\x01\x0a\x02\x01\x40\x03\x01\x87\xff\x02"
+"\x87\xa0\x02\x8e\x02\x00\x01\x00\x02\x00\x03\x00\x08\x00\x38\x00\xbc\x01\x5e\x01\xcb\x02\x46\x02\x4d\x02\x8c\x02\xcf\x03\x3a\x03"
+"\x68\x03\x6a\x03\x6c\x03\x72\x03\x9d\x03\xf9\x04\x25\x04\x75\x04\xeb\x05\x1b\x05\x6f\x05\xdc\x06\x07\x06\x5e\x06\xcb\x06\xde\x06"
+"\xe9\x07\x32\x07\x44\x07\x8e\x07\xdf\x08\x60\x08\x63\x08\x6b\x08\x6d\x08\x70\x08\x73\x08\xa8\x08\xab\x08\xad\x08\xb0\x08\xb2\x08"
+"\xb5\x08\xb8\x08\xba\x08\xbd\x08\xc0\x08\xc2\x09\x60\x09\x63\x09\x66\x09\x68\x09\x6b\x09\x91\x09\x94\x09\x9b\x09\x9e\x09\xa1\x09"
+"\xb4\x09\xdf\x09\xf3\x0a\x27\x0a\x33\x0a\x51\x0a\x54\x0a\x8e\x0a\x91\x0a\x94\x0a\x97\x0a\xdb\x0a\xed\x0a\xf0\x0a\xf5\x0a\xf7\x0a"
+"\xfa\x0a\xfd\x0b\x5e\x0b\x61\x0b\x64\x0b\x66\x0b\xb2\x0b\xb5\x0b\xb8\x0b\xbb\x0b\xbe\x0b\xeb\x0b\xee\x0b\xf0\x0c\x00\x0c\x03\x0c"
+"\x5f\x0c\x6a\x0c\xc5\x0c\xf3\x0d\x35\x0d\x93\x0e\x11\x0e\x13\x0e\x6c\x0e\xcd\x0f\x7a\x10\x1b\x10\x35\x10\x5c\x10\x67\x10\x7a\x10"
+"\x7f\x10\x98\x10\xe6\x10\xf1\x10\xf9\x11\x16\x11\x18\x11\x73\x11\x8a\x11\x8c\x11\x9e\x11\xb0\x11\xe8\x11\xfe\x12\x89\x12\xd9\x12"
+"\xdf\x12\xe5\x12\xf4\x12\xfa\x13\x00\x13\x06\x13\x0d\x13\x13\x13\x19\x13\x35\x13\x43\x13\x56\x13\x5c\x13\x5e\x13\x61\x13\xc7\x14"
+"\x1a\x14\x1d\x14\x7a\x14\xa5\x14\xa8\x14\xab\x14\xf5\x14\xf8\x15\x79\x15\xe7\x15\xee\x16\x02\x16\x43\x16\xe7\x16\xe9\x17\x55\x17"
+"\x9e\x17\xce\x18\x5c\x18\x8b\x18\xb7\x18\xe2\x19\x00\x19\x71\x19\xb8\x1a\x22\x1a\x2f\x1a\xb4\x1b\x1a\x1b\x20\x1b\x7e\x1b\x8b\x1b"
+"\xa5\x1b\xad\x1b\xb4\x1b\xc0\x1b\xe5\x1c\x47\x1c\x65\x1c\x93\x1c\x9a\x1c\xaf\x1c\xb7\x1c\xc3\x1c\xcb\x1c\xdd\x1c\xf4\x1c\xfc\x1d"
+"\x03\x1d\x12\x1d\x19\x1d\x21\x1d\x4b\x1d\x58\x1d\x60\x1d\x68\x1d\x7f\x1d\xa0\x1d\xa8\x1d\xcb\x1d\xdd\x1d\xee\x1d\xf6\x1e\x0f\x1e"
+"\x22\x1e\x39\x1e\x73\x1e\x7a\x1e\x99\x1e\xa1\x1e\xa9\x1e\xb8\x1e\xd2\x1e\xda\x1e\xf1\x1f\x30\x1f\x55\x1f\x5c\x1f\x64\x1f\x6b\x1f"
+"\xaa\x1f\xd5\x1f\xde\x1f\xe6\x1f\xee\x1f\xf6\x1f\xfe\x20\x05\x20\x2b\x20\x8a\x20\xc2\x21\x25\x21\x84\x21\xdf\x22\x12\x22\xbb\x23"
+"\x06\x23\x0e\x23\x16\x23\x19\x23\x58\x23\x69\x23\xbf\x23\xe9\x23\xeb\x24\x08\x24\x1d\x24\x25\x24\x2e\x24\x30\x24\x37\x24\x39\x24"
+"\x54\x24\x5b\x24\x63\x24\x6c\x24\x74\x24\xb7\x24\xd9\x24\xdb\x25\x1e\x25\x20\x25\x5f\x25\xbb\x25\xbd\x25\xd1\x25\xd9\x25\xe6\x25"
+"\xef\x26\x3e\x26\x74\x26\xd5\x26\xe0\x26\xe8\x26\xef\x27\x34\x27\x37\x27\x73\x27\x95\x27\xd4\x27\xde\x28\x0e\x28\x16\x28\x29\x28"
+"\x57\x28\x83\x28\x8a\x28\xa6\x28\xa8\x28\xaf\x28\xb7\x28\xc2\x28\xc5\x28\xeb\x28\xfb\x29\x03\x29\x76\x29\x79\x29\xe7\x2a\x0d\x2a"
+"\x66\x2a\x68\x2a\xc5\x2a\xcd\x2a\xd4\x2a\xdb\x2a\xdd\x2a\xe4\x2b\x44\x2b\x56\x2b\x5e\x2b\xa2\x2b\xa4\x2b\xde\x2b\xf5\x2c\x32\x2c"
+"\x6e\x2c\x76\x2c\x98\x2c\xa8\x2d\x0b\x2d\x0e\x2d\x62\x2d\xa1\x2d\xa9\x2d\xb0\x2d\xbe\x2d\xd2\x2d\xda\x2d\xee\x2e\x3a\x2e\x41\x2e"
+"\x57\x2e\x67\x2e\x70\x2e\x78\x2e\x80\x2e\xa2\x2e\xa4\x2e\xa7\x2e\xdb\x2e\xdd\x2e\xdf\x2f\x32\x2f\x34\x2f\x91\x30\x36\x30\xe1\x30"
+"\xe4\x31\x13\x31\x16\x31\x60\x31\x62\x31\x64\x31\x67\x31\x69\x31\x6b\x31\x6d\x31\x6f\x31\x72\x32\x17\x32\x19\x32\x43\x32\x5c\x32"
+"\x8b\x32\xc2\x33\x0b\x33\x60\x33\x87\x34\x0a\x34\x76\x34\xcd\x34\xfc\x35\x51\x35\xa3\x36\x32\x36\x3a\x36\x3d\x36\x63\x36\x65\x36"
+"\xde\x37\x36\x37\x86\x37\xad\x37\xdd\x38\x29\x38\x97\x38\xe9\x38\xec\x39\x38\x39\x3b\x39\x97\x3a\x4a\x3a\x98\x3a\x9b\x3a\xcb\x3a"
+"\xce\x3b\x16\x3b\x53\x3b\x61\x3b\x64\x3b\x80\x3b\x82\x3b\x8e\x3b\xba\x3b\xca\x3c\x6e\x3c\x70\x3c\x7b\x3c\x8e\x3c\xc7\x3d\x0c\x3d"
+"\x4b\x3d\x8b\x3d\xc7\x3e\x27\x3e\x75\x3e\xdc\x3e\xf6\x3f\x3e\x3f\x55\x3f\xba\x40\x04\x40\x09\x40\x65\x40\x67\x40\xcc\x41\x18\x41"
+"\x52\x41\x70\x41\xef\x42\x13\x42\x15\x42\x5a\x43\x52\x43\xf0\x44\x7f\x44\x82\x44\x9a\x44\xaa\x44\xde\x45\x12\x45\x6c\x45\xe7\x46"
+"\x25\x46\x74\x46\xba\x47\x00\x47\x0c\x47\x5d\x47\xa2\x47\xf0\x48\x53\x48\x5a\x48\x61\x48\x72\x48\x7b\x48\xcb\x49\x41\x49\xad\x49"
+"\xcc\x4a\x1b\x4a\x74\x4a\x98\x4a\x9e\x4a\xa6\x4a\xbd\x4a\xc6\x4b\x04\x4b\x0b\x4b\x45\x4b\xa8\x4b\xab\x4b\xb2\x4b\xca\x4c\x1f\x4c"
+"\x22\x4c\x2e\x4c\x48\x4c\x62\x4c\xa8\x4d\x13\x4d\x52\x4d\x59\x4d\x60\x4d\x8b\x4d\x93\x4d\xe9\x4e\x41\x4e\x4b\x4e\x81\x4e\xa5\x4e"
+"\xad\x4e\xd8\x4e\xdf\x4f\x4a\x4f\x9a\x4f\xc8\x4f\xf6\x50\x57\x50\xc0\x50\xe3\x50\xed\x51\x0a\x51\x39\x51\x47\x51\x4e\x51\x6d\x51"
+"\xbc\x51\xc8\x51\xe9\x51\xf1\x52\x22\x52\x44\x52\x4b\x52\x67\x52\xba\x53\x63\x53\x9e\x54\x18\x54\x36\x54\x78\x55\x01\x55\x09\x55"
+"\x79\x55\x81\x55\x89\x56\x11\x56\x63\x56\xa6\x56\xae\x56\xbe\x56\xcf\x56\xd2\x56\xf0\x56\xf3\x57\x1e\x57\x2b\x57\x32\x57\x84\x58"
+"\x06\x58\x7d\x58\xa4\x58\xdc\x59\x31\x59\x84\x59\xd1\x5a\x3c\x5a\x44\x5a\x7a\x5a\x81\x5a\x91\x5a\xa5\x5a\xf0\x5a\xfd\x5b\x85\x5b"
+"\xa2\x5b\xb6\x5b\xef\x5c\x25\x5c\xd1\x5d\x17\x5d\x94\x5e\x0e\x5e\x56\x5e\xa0\x5e\xc1\x5f\x22\x5f\x68\x5f\x6e\x5f\x76\x5f\x8f\x5f"
+"\x96\x5f\xbb\x5f\xbc\x5f\xbe\x5f\xce\x5f\xd5\x5f\xdb\x5f\xdd\x5f\xfb\x60\x5f\x60\xa0\x61\x3e\x61\x64\x61\x8b\x61\xd7\x61\xfa\x62"
+"\x26\x62\x54\x62\xfb\x63\xba\x64\x87\x64\xec\x65\x55\x65\x82\x65\xd4\x66\x4f\x66\x94\x67\x00\x67\x28\x67\x59\x67\xc6\x68\x1c\x68"
+"\x1f\x68\x3c\x68\x6b\x68\x96\x68\xf9\x69\x49\x69\x6d\x69\x8a\x69\xe0\x6a\x3a\x6a\x86\x6a\xbd\x6a\xc0\x6a\xfe\x6b\x37\x6b\x88\x6b"
+"\x90\x6b\x98\x6b\xe5\x6b\xe7\x6b\xf1\x6c\x03\x6c\x0f\x6c\xea\x6d\x4e\x6d\x50\x6d\x52\x6d\x69\x6d\x87\x6d\xe2\x6d\xf8\x6e\x59\x6e"
+"\x86\x6e\xd3\x6e\xd6\x6e\xef\x6f\x37\x6f\x47\x6f\x4f\x6f\x56\x6f\x5d\x6f\x64\x6f\x6c\x6f\x74\x70\x08\x70\x1d\x70\x24\x70\x2b\x70"
+"\x34\x70\x99\x0e\x0e\xf7\xec\xa2\x0a\x0e\xf7\x20\xf8\xef\x15\xae\xfb\x92\x05\x6f\x8f\x96\x7f\x9f\x1b\xa0\x96\x97\xa7\x8f\x1f\xad"
+"\xf7\x92\x05\xb3\x16\xae\xfb\x92\x05\x6f\x8f\x96\x7f\x9f\x1b\xa0\x96\x97\xa7\x8f\x1f\xad\xf7\x92\x05\x0e\xf8\x1f\xf7\xf1\x15\xe1"
+"\x27\x0a\x39\x06\x9a\xf7\x68\x05\x93\x07\x99\x80\x96\x7c\x7c\x82\x81\x77\x8a\x1e\x7b\xfb\x6b\x05\x3b\x06\x9a\xf7\x68\x05\x9f\x8d"
+"\x80\x98\x7b\x1b\x7b\x82\x81\x77\x8a\x1f\x7c\xfb\x6b\x05\x3f\x2e\x1d\xd3\x06\x83\xfb\x05\x05\x36\x20\x0a\xdc\x06\x7c\xfb\x68\x05"
+"\x82\x07\x7d\x8c\x95\x80\x99\x1b\x9b\x94\x95\x9f\x8c\x1f\x9b\xf7\x6c\x05\xdb\x06\x7c\xfb\x68\x8a\x84\x05\x7d\x8a\x97\x7e\x9a\x1b"
+"\x9b\x93\x95\x9f\x8d\x1f\x9a\xf7\x6c\x05\xd9\x21\x0a\x41\x06\x60\xf7\x05\x15\x82\xfb\x05\x05\x3b\x06\x93\xf7\x05\x05\x0e\xf7\xa7"
+"\xf8\xd3\x15\x38\x81\x4e\x4e\x42\x1a\x64\x9e\x66\xaa\x78\x1e\xa5\x7a\xa9\x81\xcb\x7f\xcf\x7e\x99\x87\xa1\x7e\x08\xa2\x7e\x98\x73"
+"\x6f\x1a\x51\x50\x61\x38\x44\x4b\xac\xb3\x86\x1e\x89\x9c\x8b\x8b\x86\x90\x08\x8f\x86\x84\x8e\x85\x1b\x7a\x82\x80\x77\x1f\x3d\x07"
+"\x77\x94\x80\x9c\x9c\x93\x96\x9f\x1e\x8f\x07\xa3\x74\xc0\x77\xb2\x89\x08\xfb\x04\x07\x27\x1d\xf7\x04\x07\xf0\x96\xcc\xc5\xda\x1a"
+"\xb7\x78\xaf\x6a\xa1\x1e\x6f\x9e\x71\x93\x42\x99\x50\x96\x77\x90\x78\x97\x08\x76\x96\x7f\xa1\xa3\x1a\xc0\xc1\xb6\xcd\xc5\xc1\x6f"
+"\x6b\x91\x1e\x78\x8e\x92\x84\x5c\x0a\xc6\x07\xa0\x83\x95\x7a\x7d\x82\x82\x7d\x88\x1e\x6e\xa1\x71\x94\x64\x90\x08\xb8\x34\x1d\x0e"
+"\xf7\xff\xf7\x83\x15\x44\x53\x53\x45\x46\xc3\x53\xd0\xd0\xc3\xc3\xd0\xd0\x53\xc4\x48\x1f\x88\x60\x15\xba\xaf\x67\x5c\x5e\xf7\x36"
+"\x1d\xfb\x0d\xf8\x32\x15\x44\x53\x54\x44\x46\xc3\x53\xd0\xd0\xc3\xc3\xd1\xcf\x53\xc4\x48\x1f\x88\x60\x15\xba\xaf\x67\x5d\x5d\xf7"
+"\x36\x1d\xf7\x98\xfb\x76\x15\x98\x8f\x91\x92\x96\x1a\x96\x82\x95\x81\x88\x86\x8a\x89\x86\x1e\xfc\x0f\xfb\x0d\x05\x7d\x87\x85\x85"
+"\x80\x1a\x80\x95\x81\x95\x90\x8e\x8b\x8d\x90\x1e\x0e\xf8\x1a\x16\xc8\x21\x0a\x69\x06\x73\xae\x9d\xa6\x9e\xb6\x98\xbb\x19\x93\x06"
+"\x4f\x1d\x5d\x06\x7f\x5b\x7f\x67\x78\x67\x20\xf7\x3a\x18\x6d\xbb\x7f\xa5\xa0\x1a\xb1\xb0\xae\xb3\xa2\x9b\x84\x77\xa2\x1e\xae\x9d"
+"\x05\x99\x92\x90\x92\x96\x1a\x99\x7f\x97\x7e\x86\x86\x89\x87\x83\x1e\x83\x87\x05\x98\x75\x76\x91\x74\x1b\x45\x51\x54\x48\x6d\x90"
+"\x80\xb5\x48\x1f\x49\x76\x61\x52\x47\x1a\x34\xd0\x42\xdd\xb8\xaf\x9e\xb3\xa9\x1e\x6e\xb9\x15\x69\x75\x6e\x77\x6b\x1b\x56\x5e\xbe"
+"\xc6\xbd\xaa\xb2\xbb\x97\x1f\x0e\xf7\x5f\xf8\xef\xaa\x0a\x0e\xf8\x4a\xf8\xef\x15\x7f\x84\x84\x6f\x78\x1f\x43\xfb\x02\x64\xfb\x07"
+"\x25\x1a\x27\xad\x22\xd0\xfb\x01\x1e\x63\xa3\x94\x82\x98\x1b\x9a\x96\x96\x99\x90\x8a\x8d\x88\x91\x1f\x47\xf7\x0c\x6c\xef\xf4\x1a"
+"\xf3\xaa\xf0\xcf\xf7\x0b\x1e\x8e\x91\x8c\x8d\x90\xa4\x1d\xf7\x3c\xf8\xef\x15\x7c\x80\x80\x7d\x86\x8c\x89\x8e\x85\x1f\xcf\xfb\x0b"
+"\xaa\x26\x23\x1a\x22\x6c\x27\x47\xfb\x0c\x1e\x88\x85\x8a\x89\x86\x1a\x7d\x97\x80\x99\x97\x92\x92\xa7\x9e\x1e\xd3\xf7\x03\xb2\xf7"
+"\x06\xf1\x1a\xee\x69\xf4\x46\xf7\x02\x1e\xb2\x73\x82\x95\x7e\x1b\x0e\xf7\xa6\xf8\x4e\x15\xfb\x12\xb2\x05\x8d\x84\x87\x8c\x87\x1b"
+"\x7e\x7f\x80\x7d\x7d\x92\x84\x9c\x87\x1f\xf7\x12\x63\x3e\x23\x05\x83\x81\x8a\x88\x84\x1a\x7d\x97\x80\x99\x95\x91\x8f\x97\x93\x1e"
+"\xd9\xf3\xd8\x23\x05\x7e\x94\x90\x88\x95\x1b\x9a\x96\x96\x99\x91\x88\x91\x85\x93\x1f\x3f\xf3\xf7\x12\xb3\x05\x9d\x90\x92\x92\x99"
+"\x1a\x98\x7f\x97\x7f\x88\x82\x89\x8a\x86\x1e\xfb\x12\x63\x05\xf7\x14\x07\xa1\x82\x96\x7a\x7a\x82\x80\x75\x1e\x0e\xf7\xda\xf7\x93"
+"\x15\xf7\x43\x27\x0a\xfb\x43\xf7\x54\x06\x4f\x0a\xfb\x53\xfb\x43\x07\x82\x89\x05\x7c\x89\x83\x83\x7d\x1a\x7a\x96\x82\xa0\x1e\xf7"
+"\x43\xfb\x55\x06\x39\x1d\x96\x9f\x1e\x0e\xf0\x1d\xc9\x0a\xf7\xbb\xf7\x10\x6a\x0a\xf8\x7b\xf9\x04\x15\x90\x95\x8c\x8d\x90\x1a\x98"
+"\x7f\x96\x7d\x7f\x84\x86\x7c\x84\x1e\xfb\xdc\xfd\x3f\x05\x87\x83\x8a\x87\x86\x1a\x7e\x97\x80\x99\x97\x92\x90\x9a\x92\x1e\x0e\xf8"
+"\x81\xf7\xf2\x15\xf7\x32\x3d\xf7\x00\xfb\x06\xfb\x07\x3d\xfb\x00\xfb\x32\x1e\x29\x07\xfb\x33\xd9\xfb\x00\xf7\x07\xf7\x06\xd9\xf7"
+"\x00\xf7\x33\x1e\xfb\xe1\xe7\x15\xc9\x9d\xcc\xa8\xb8\x1e\xab\xa0\xab\x9c\xb4\x1b\xb3\xab\x7a\x6b\xa0\x1f\xa8\x5e\x9d\x4a\x4d\x1a"
+"\x34\x07\x4e\x79\x49\x6e\x5e\x1e\x6b\x76\x6a\x7a\x64\x1b\x63\x6a\x9c\xab\x76\x1f\x6e\xb8\x79\xcd\xc8\x1a\x0e\xf7\xdb\xf8\xf9\x15"
+"\xfb\x54\x4f\x05\x78\x85\x85\x85\x7d\x1a\x7e\x97\x7f\x97\x8d\x95\x8d\x8c\x8f\x1e\xf7\x11\xb2\x05\xfc\x81\xfb\x1a\x07\x2b\x1d\xf7"
+"\xd4\x23\x1d\xfb\x1a\x06\x0e\xf7\x1b\xbe\x15\xc1\xb9\xc9\xc4\xde\xdb\x08\xf7\x12\xf7\x0c\x9f\xa8\xc6\x1a\xe8\x32\xdc\x26\x4d\x51"
+"\x6f\x5b\x65\x1e\x77\x72\x7e\x6d\x78\x1a\x7f\x96\x80\x99\x98\x93\x92\x9b\x8f\x1e\xc5\x9c\xc6\xb4\xcc\x1b\xd5\xcb\x52\x4a\x60\x79"
+"\x72\x2e\x31\x1f\x38\x3c\x3f\x45\x45\x4e\x82\x83\x18\x48\xf8\x29\xdc\x07\x4f\x0a\x6d\x07\x0e\xf7\xab\xf7\xf9\x15\x76\x80\x81\x7b"
+"\x7b\x96\x82\xa0\x1f\xeb\x89\xd8\x4f\x40\x1a\x43\x42\x4e\x33\x53\x58\x9d\xae\x5b\x1e\x91\x82\x86\x8d\x84\x1b\x7e\x80\x80\x7e\x7b"
+"\x98\x7e\xaf\x79\x1f\x6f\xbf\xba\x7e\xbe\x1b\xf7\x0a\xeb\xde\xf0\xcc\x5d\xc9\x45\xaa\x1f\xc8\xa8\xad\xba\xc3\x1a\xe4\x3c\xcf\x24"
+"\x56\x58\x7b\x6d\x63\x1e\x74\x79\x7d\x7a\x7f\x1a\x7e\x96\x80\x99\x93\x91\x8e\x91\x90\x1e\xb3\xaf\xb4\x9c\xc7\x1b\xd5\xc3\x5d\x4f"
+"\x6b\x79\x6c\x6e\x78\x1f\x7c\x73\x77\x86\x64\x1b\x0e\xf8\x07\xf7\x3a\x15\xfb\x07\x44\x07\x37\x1d\xf7\x2c\x39\x0a\x6e\xf7\x07\xa8"
+"\x23\x1d\x6e\xf8\x16\x2e\x06\xfb\x7a\xfc\x14\x05\x56\x07\xf7\xa3\xbe\x15\xfb\x6d\x06\xf7\x5e\xf7\xe3\x05\x9a\x06\x0e\xf7\x58\xf8"
+"\xbc\x15\xf7\x80\x27\x0a\xfb\xb4\xfb\xa1\x06\x7b\x95\x80\x9a\x91\x90\x8d\x91\x98\x1e\xa1\xb7\xb3\x95\xb3\x1b\xdc\xc2\x51\x36\x27"
+"\x4a\x47\x2c\x53\x57\xa1\xb6\x5b\x1f\x93\x82\x86\x8d\x84\x1b\x7d\x80\x80\x7d\x7c\x99\x7c\xae\x75\x1f\x6a\xbe\xbd\x7b\xc1\x1b\xf7"
+"\x0f\xe2\xe5\xf7\x13\xf7\x06\x3e\xdd\x21\x60\x69\x83\x78\x5a\x1f\x0e\xf7\x4a\xf7\x9a\x15\x8a\x95\x8b\x94\x90\x1a\xc7\x9b\xc7\xa8"
+"\xb5\x1e\xd3\xbb\xd8\xb8\xd6\x1b\x9d\x9a\x89\x86\x95\x1f\x86\x95\x8f\x8a\x91\x1b\x99\x95\x96\x98\xa2\x66\x9c\x5a\x4a\x49\x72\x5d"
+"\x55\x1f\x40\x4c\x67\x36\xfb\x09\x1a\xfb\x41\xe0\xfb\x0e\xf7\x0e\xef\xd9\xe0\xf7\x01\xf2\x3d\xe0\x2c\x49\x50\x65\x48\x67\x1e\x92"
+"\x42\x15\xa2\xb3\x96\x9c\x99\x9b\x08\xae\xab\xb1\x9e\xaf\x1b\xcd\xc2\x4d\x40\x3a\x55\x4d\x44\x40\x5b\xbb\xf4\x70\x1f\x0e\xf8\x45"
+"\xf8\xb0\x15\xfb\x34\xfc\x8a\x05\x89\x85\x8a\x87\x87\x1a\x7d\x96\x80\x99\x99\x91\x91\x9d\x91\x1e\xf7\x37\xf8\x92\x05\xd1\xfc\x14"
+"\x3b\x07\x58\x0a\xa8\xf7\xad\x07\x0e\xf8\x18\xf7\xcc\x15\xca\xac\xaa\xb9\xc5\x1a\xe6\x38\xd7\x28\x28\x38\x3f\x30\x51\xab\x5d\xca"
+"\x6a\x1e\x48\x6b\x65\x55\x4c\x1a\x29\xe1\x3b\xf6\xf5\xe1\xdb\xed\xca\x64\xc2\x49\xaa\x1e\x31\xf7\x91\x15\xd5\xc5\x57\x49\x4d\x52"
+"\x5b\x42\x42\x52\xbb\xc9\xcc\xc5\xc0\xd1\x1f\xfb\xaa\x04\xdd\xc8\x56\x44\x44\x4d\x53\x3d\x3c\x4d\xc3\xd2\xd0\xc8\xc2\xd8\x1f\x0e"
+"\xf8\x65\xf7\xe7\x15\x8c\x81\x8b\x82\x87\x1a\x4e\x7b\x4f\x6e\x61\x1e\x43\x5b\x3e\x5e\x40\x1b\x79\x7c\x8e\x90\x81\x1f\x90\x81\x87"
+"\x8c\x85\x1b\x7d\x81\x80\x7d\x74\xaf\x7a\xbd\xcc\xcd\xa4\xb9\xc1\x1f\xd6\xca\xaf\xe0\xf7\x08\x1a\xf7\x42\x36\xf7\x0e\xfb\x0e\x27"
+"\x3d\x36\xfb\x01\x24\xd9\x36\xea\xcd\xc5\xb1\xce\xb0\x1e\x84\xd4\x15\x74\x63\x80\x7a\x7c\x7b\x08\x69\x6c\x65\x77\x67\x1b\x49\x54"
+"\xc9\xd6\xdc\xc1\xc9\xd2\xd6\xba\x5b\x22\xa7\x1f\x0e\xf7\xbb\xf7\x10\xf7\x2c\x1d\xaa\xb2\xb2\x6b\xa9\x61\x1f\x80\xf7\xba\x6a\x0a"
+"\xf7\x63\xf7\x2d\xaa\x0a\x39\xf7\x9d\x6a\x0a\xc7\xf7\xad\x15\xf8\x3e\xfb\x7d\x05\x88\x90\x91\x8a\x90\x1b\x93\x93\x90\x92\x8f\x1f"
+"\x8d\x8e\x05\x8d\x8f\x8c\x8f\x8f\x1a\x94\x86\x92\x80\x91\x1e\xfb\xed\xf7\x50\xf7\xee\xf7\x50\x05\x96\x91\x90\x92\x94\x1a\x8f\x8a"
+"\x8f\x88\x8f\x1e\x8a\x8e\x05\x93\x86\x83\x90\x83\x1b\x87\x86\x89\x88\x85\x1f\x0e\xf8\x9e\xf7\xdb\x15\x57\x0a\xfc\x50\x26\x1d\xf8"
+"\x50\xfb\x21\x6b\x0a\x0e\xf8\xaa\xf7\xad\x15\xfc\x3f\xf7\x7d\x05\x8e\x84\x87\x8d\x87\x1b\x82\x84\x86\x83\x86\x1f\x8a\x88\x05\x88"
+"\x87\x8a\x87\x87\x1a\x82\x90\x84\x96\x85\x1e\xf7\xee\xfb\x50\xfb\xee\xfb\x50\x05\x80\x85\x86\x84\x82\x1a\x88\x8d\x86\x8d\x87\x1e"
+"\x8c\x88\x05\x84\x8f\x94\x86\x92\x1b\x91\x90\x8c\x8e\x91\x1f\x0e\xf7\xdc\xf7\x88\x15\xf7\x10\xc5\xb4\xb6\xd6\x1a\xe9\x41\xc9\xfb"
+"\x02\x52\x77\x86\x64\x30\x1e\x7f\x86\x05\x45\x07\x27\x1d\xb0\x07\xa3\xbe\xa8\x92\xb6\x1b\xdc\xc3\x60\x4c\x56\x5d\x63\xfb\x0b\x5a"
+"\x1f\x45\x07\x39\x1d\x95\xa0\x1e\x62\xfb\x05\x15\x66\x72\x75\x6b\x6b\xa4\x74\xb0\x1f\xa7\x06\xaf\xa4\xa2\xab\xab\x72\xa1\x67\x1f"
+"\x0e\xf8\x31\xf7\x22\x15\xb2\x06\xa0\x96\x93\x9d\x97\x84\x94\x7f\x8e\x1f\xf7\x9f\x07\xe8\x44\xd1\x2e\xfb\x08\x36\xfb\x03\xfb\x2c"
+"\x1e\xfb\x33\x07\x43\x9e\x4d\xb0\x58\x1e\x57\xb0\xb8\x73\xc9\x1b\xd9\xd8\xac\xad\x98\x80\x96\x7c\x85\x86\x89\x87\x86\x1f\x73\x71"
+"\x6a\x80\x5a\x1b\x5b\x6a\x9c\xb0\x71\x1f\x6d\xb6\x7b\xc2\xc6\x1a\xf7\x30\x07\xf7\x12\xc9\xe4\xe2\xcc\xba\x5c\x4a\x1e\x63\x07\x23"
+"\x88\x43\x4f\x37\x1a\x42\xc7\x54\xdd\x96\x94\x8c\x8d\x99\x1e\xbd\x04\x89\x7b\x86\x8b\x81\x1b\x54\x65\xab\xb9\xc1\xc0\xb4\xd2\x8c"
+"\x1f\x0e\x28\x1d\x0e\xf7\x01\x1d\xbf\xaa\xa4\xc4\x1d\x90\x0a\x9b\x0a\x0e\x25\x0a\x0e\xf7\x3f\xf7\x9e\x15\xf7\x1a\x64\x06\x76\x94"
+"\x81\x9c\x9c\x94\x96\x9f\x1e\xf7\x15\x34\x1d\x64\xfb\x1a\xf7\x57\xf7\xc3\x30\x2b\x0a\xf7\x22\xfc\x5c\x07\x20\x1d\xbc\xfc\x61\x5a"
+"\x20\x0a\xf7\x7e\x21\x0a\xfb\x19\x06\x0e\x7f\x1d\x0e\x80\x1d\x23\x0a\x0e\x9d\x0a\xb5\x1d\x0e\x41\x0a\x0e\x81\x1d\x49\x1d\x0e\x2d"
+"\x1d\x0e\x84\x1d\xf7\xc7\x7c\x15\xf7\x22\x90\xf5\xf7\x12\xf7\x38\x1a\xf7\x39\xfb\x04\xf7\x16\xfb\x23\xfb\x22\xfb\x04\xfb\x16\xfb"
+"\x39\x37\xa8\x3e\xc0\x52\x1e\xab\x68\xa7\x7a\xbc\x7a\x3a\x52\x18\x83\x85\x86\x84\x83\x1a\x7c\x96\x7f\x99\x8e\x8f\x8c\x8c\x8f\x1e"
+"\x98\xba\xca\x95\xa8\x1b\xa5\x99\x88\x81\xa6\x1f\x81\xa9\x96\x88\x9c\x1b\xa4\xa3\x92\x9d\xab\x1f\xa0\x96\x92\x93\x97\x1a\x9a\x80"
+"\x96\x7d\x86\x86\x8a\x87\x86\x1e\x77\x6c\x7b\x85\x77\x1b\x7f\x84\x8d\x93\x73\x1f\x97\x6d\x74\x8f\x6c\x1b\x7b\x82\x8a\x88\x77\x1f"
+"\xa4\xf8\xc8\x15\xf7\x07\xe5\xfb\x00\xfb\x1d\xfb\x1a\x30\xfb\x02\xfb\x03\xfb\x04\x30\xf7\x02\xf7\x1b\xf7\x19\xe6\xf7\x03\xf7\x01"
+"\x1f\x0e\x47\x0a\x0e\x69\x1d\x0e\x61\x0a\x31\x1d\x0e\xf7\x9c\x16\xca\x06\xf7\x66\xf8\x94\x05\xa6\x06\xa1\x96\xf7\x1c\x1d\xd2\x06"
+"\xfb\x4f\xfc\x5c\xfb\x47\xf8\x5c\x05\xcf\x44\x1d\xfb\x2b\x22\x1d\xa7\x06\x0e\x59\x1d\x0e\xf7\x38\x1d\xa0\x97\xb4\x1d\x31\x0a\x0e"
+"\x6c\x1d\x0e\xf7\xdb\xf8\xbc\x15\xe7\x23\x1d\xfb\x24\xfd\x69\xf7\x24\x23\x1d\x2f\x06\x0e\xf7\x34\xf9\x19\x15\x9a\x84\x84\x90\x7f"
+"\x1b\x7d\x7f\x80\x7e\x86\x8c\x87\x8f\x83\x1f\xf7\xdc\xfd\x3f\x05\x7c\x92\x92\x86\x97\x1b\x99\x97\x96\x98\x90\x8a\x8e\x86\x94\x1f"
+"\x0e\xf7\xa6\x44\x15\x2f\x06\xd6\x0a\xf7\x24\xf9\x69\xfb\x24\x06\xd6\x0a\xe7\x06\x0e\xf7\xc0\xf8\xfc\x15\xfb\x4a\xfb\x73\x05\x83"
+"\x82\x89\x86\x84\x1a\x7d\x96\x80\x9a\x94\x91\x8f\x96\x94\x1e\xf7\x22\xf7\x43\xf7\x23\xfb\x43\x05\x80\x93\x92\x87\x94\x1b\x9a\x96"
+"\x96\x99\x92\x89\x8f\x83\x95\x1f\x0e\xf8\xdd\xfb\x08\x15\x4f\x1d\xfc\xce\x20\x0a\x0e\xf8\x1b\xf8\xec\x15\xfb\x26\x06\xf7\x28\xfb"
+"\x81\x05\x79\x96\x95\x84\x9a\x1b\x9e\x9b\x99\x9c\x90\x8a\x91\x89\x90\x1f\x0e\x48\x1d\x0e\xf7\x2a\xf8\xef\x15\x26\x06\xf7\x0d\x1d"
+"\xd6\x06\x4d\xbb\xc3\x6e\xd2\x1b\xf7\x0f\xee\xf0\xf7\x11\xf7\x11\x29\xed\xfb\x10\x45\x4f\x6c\x50\x5e\x1f\xf7\x3e\xb2\x15\xee\xd7"
+"\x3f\x29\x2b\x3e\x3e\x2b\x2c\x3e\xd8\xec\xea\xd7\xd9\xe9\x1f\x0e\x49\x0a\x0e\x9a\x0a\x0e\x2c\x1d\x0e\xf7\xa9\xf8\x04\x15\xf7\x4c"
+"\x3e\x1d\xfb\x4c\xc2\x06\xb9\xb6\xab\xca\xb0\xa8\x88\x83\xc5\x1e\x8a\x92\x8f\x8b\x8d\x1b\x9b\x96\x95\x9a\x98\x83\x94\x7d\x8e\x1f"
+"\x92\x6b\x46\x91\x63\x1b\x2f\x48\x55\x40\x1f\x54\x39\x52\x0a\xdd\xfb\xd1\x2f\x29\x0a\xf7\xd0\x21\x0a\xfb\x40\x06\x0e\xa1\x0a\x51"
+"\x52\x4c\x8c\x08\xfb\x08\x06\x76\x80\x83\x79\x7b\xd2\x1d\x0e\xb8\x1d\x0e\x32\x1d\x89\x87\x0a\xca\x1d\x91\x0a\x0e\x42\x0a\x0e\xf7"
+"\x0a\xf8\x37\x15\x3b\x2f\x0a\xa8\xfb\xd1\x6e\x06\x76\x80\x82\x7b\x7b\x97\x81\x9e\x1f\xf7\x01\x38\x0a\x6f\xf7\x93\x06\xc0\xaf\xa9"
+"\xa2\xad\x1b\xaa\xa7\x6b\x68\x1f\xfb\xcf\xdb\x07\x61\x1d\x6e\xf7\x93\x06\xc0\xaf\xa8\xa2\xac\x1b\xac\xa7\x6d\x69\x1f\xfb\xd2\xdb"
+"\x07\x9f\x97\x53\x1d\x6e\xf7\xa3\x06\xc8\x59\xbd\x4e\x62\x6d\x7a\x5b\x63\x1e\xb7\x73\x6b\xa0\x61\x1b\x63\x6e\x7b\x65\x6c\x1f\x0e"
+"\x6a\x1d\x0e\x2c\x0a\x0e\x95\x0a\xf8\x5c\xf7\xf1\x15\xc6\x5c\x56\xa4\x41\x1b\xfb\x13\x2a\x2f\xfb\x0b\xfb\x0c\xed\x2f\xf7\x12\xd4"
+"\xc2\xa5\xc4\xb9\x1f\xfb\x74\x2f\x52\x0a\xf7\x55\x23\x1d\x5a\xf8\x87\xbc\x06\xa0\x96\x94\x9c\x9c\x81\x93\x75\x1f\x26\x06\xfb\x43"
+"\x66\x15\xee\xd7\x45\x30\x32\x3f\x44\x2a\x2a\x3f\xd1\xe6\xe4\xd7\xd2\xea\x1f\x0e\x6b\x1d\x0e\x3e\x0a\x0e\x83\x1d\x0e\x28\x0a\x0e"
+"\xf7\xe8\x16\xf7\x3a\xf8\x04\x05\xb0\x06\x62\x1d\xfb\x2c\x2f\x0a\xc7\x06\xfb\x22\xfb\xd1\x05\x7f\x06\xfb\x25\xf7\xd1\x05\xc4\x3d"
+"\x1d\xfb\x2c\x2f\x0a\xb1\x06\xf7\x3c\xfc\x04\x05\x0e\x40\x0a\x0e\xb3\x1d\x4e\x0a\x82\x7b\x74\x1d\x9b\x80\x94\x71\x1d\x83\x7a\x4c"
+"\x0a\x0e\x4a\x0a\x0e\xf7\xdc\xf8\x82\x15\xab\x9e\xa1\xaa\x8f\x1e\xa2\x8e\x93\x91\x9c\x1a\x9a\x80\x95\x79\x51\x5d\x5b\x4e\x1e\xfb"
+"\x3d\x07\x69\x75\x75\x6a\x89\x1e\x77\x89\x82\x83\x7a\x1a\x7b\x94\x83\x9f\x89\x1e\xac\x89\xa1\x75\x69\x1a\xfb\x3d\x07\x4e\xb9\x5b"
+"\xc5\x9d\x96\x95\x9a\x9c\x83\x91\x74\x8e\x1e\x6c\x90\x78\xa0\xab\x1a\xf7\x3d\x07\xb3\x7f\xa2\x6e\xa0\x1e\xa8\xa0\x97\xa3\xb3\x1a"
+"\x0e\xf7\xda\xf9\xcd\x15\x58\xfe\xc7\xbe\x06\x0e\xf7\xa5\x7e\x15\x6b\x78\x75\x6c\x87\x1e\x74\x88\x83\x85\x7a\x1a\x7c\x96\x81\x9d"
+"\xc5\xb9\xbb\xc8\x1e\xf7\x3d\x07\xad\xa1\xa2\xac\x8d\x1e\x9f\x8c\x94\x93\x9c\x1a\x9b\x82\x93\x77\x8d\x1e\x6a\x8d\x75\xa2\xac\x1a"
+"\xf7\x3d\x07\xc8\x5d\xbb\x51\x79\x80\x81\x7c\x7a\x93\x85\xa2\x88\x1e\xaa\x87\x9e\x75\x6b\x1a\xfb\x3d\x07\x63\x97\x74\xa8\x76\x1e"
+"\x6e\x76\x7f\x73\x63\x1a\x0e\xf8\x7d\xf7\xe2\xf0\x0a\x89\x8c\xb3\x57\x1f\xb7\x53\x7c\xf7\x34\x1d\x7d\xf7\x00\x0a\xc1\xb7\x94\x7a"
+"\x0a\x56\xcb\xa1\x7f\xac\x1b\xac\xa9\x9d\xb5\xaf\x1f\x9e\xa0\x92\x97\xf7\x09\x0a\x0e\xf7\x95\xfb\x2c\x15\x8a\x83\x8b\x85\x88\x1a"
+"\x73\x9f\x79\xa4\xa4\x9f\x9d\xa3\x8c\x8b\x91\x8a\x95\x1e\x79\xf7\xd4\x05\xa1\x89\x83\x95\x7b\x1b\x7b\x82\x81\x75\x8a\x1f\xab\xf7"
+"\x23\x15\xac\xa5\xa2\xaa\xaa\x71\xa2\x6a\x1f\x7f\x06\x69\x71\x74\x6c\x6c\xa5\x74\xad\x1f\x0e\xf7\xa7\xf8\x83\x15\x64\x83\x75\x83"
+"\x74\x7c\x08\x57\x68\x6c\x53\x4c\x1a\x2d\xd3\x3c\xea\x7f\x1e\x21\x2b\x0a\xf5\x07\xd3\x91\xd7\xaf\xa8\x1a\x9a\x81\x95\x7d\x83\x87"
+"\x89\x84\x82\x1e\x71\x6a\x5f\x7d\x5e\x1b\x36\x4c\xc6\xda\xdd\xca\xc4\xe4\xc8\xb5\x72\x63\x91\x1f\x78\x8e\x92\x83\x5c\x0a\xc7\x07"
+"\x9e\x81\x96\x7a\x82\x84\x87\x82\x86\x1e\x73\x9d\x64\x98\x69\x8c\x08\xed\x34\x1d\x0e\xf7\x56\xbe\x15\xac\xb8\x9d\xc5\xc9\x1a\x9c"
+"\x8a\x9a\x88\x9e\x1e\xde\x44\x0a\x2c\x06\x89\x94\x8b\x8b\x81\xad\x08\x83\xa8\x86\xa4\x9c\x1a\xbe\xb7\xb6\xbf\xac\xa6\x7d\x6b\xa4"
+"\x1e\x81\x94\x90\x87\x93\x1b\x98\x98\x97\x97\x97\x7f\x9c\x76\x9e\x1f\xa5\x6d\x69\x98\x65\x1b\x3a\x4a\x4a\x3a\x71\x8f\x77\xa0\x48"
+"\x1f\x34\x20\x0a\xef\x06\x8d\x7e\x8c\x77\x7d\x1a\x35\x62\x39\x5f\x89\x1e\x7b\x80\x81\x7d\x7a\x97\x82\x9f\x1f\xf7\xd7\x06\xbc\xb4"
+"\xb7\xc0\x9b\x80\x96\x7c\x7c\x82\x82\x79\x8a\x1f\x6e\x88\x7c\x7a\x74\x1b\x0e\xb2\x0a\xf7\xdb\xf7\x7d\x15\xf7\x11\x06\x9e\x93\x92"
+"\x9b\x9c\x83\x92\x78\x1f\xfb\x00\x06\xf7\x32\xf7\x7c\x05\x9f\x27\x0a\xfb\x01\x06\x75\x80\x59\x0a\xa8\x06\xfb\x21\xfb\x64\xfb\x21"
+"\xf7\x64\x05\xa8\x23\x1d\xfb\x03\x20\x0a\xa0\x06\xf7\x31\xfb\x7c\x05\x21\xf7\x33\x1d\x5b\xfb\x11\xf7\x33\x1d\x34\x3a\x20\x0a\xf7"
+"\x6a\x39\x0a\x3a\xe2\xf7\x11\xf7\x0a\x0a\xfb\x11\x06\x0e\xf7\xdb\xf8\x0e\x15\xdb\x07\xcb\xb7\xb6\xcc\x9b\x9a\x89\x85\x9c\x1e\x89"
+"\x95\x8d\x8a\x8f\x1b\x98\x96\x97\x98\x96\x86\x92\x7f\x90\x1f\x94\x77\x6e\x90\x71\x1b\x33\x46\x45\x33\x1f\x3b\x30\x07\x20\x1d\xe6"
+"\xfb\x97\x06\x4b\x62\x5f\x4f\x7f\x7c\x8d\x8d\x83\x1e\x92\x72\x88\x8c\x85\x1b\x7e\x81\x80\x7d\x82\x90\x83\x95\x86\x1f\x82\x9e\xab"
+"\x84\xa5\x1b\xe0\xcf\xcf\xe0\x1f\xf7\x9d\xe6\x07\x53\x0a\x0e\xf8\x8a\xf8\xef\x15\xfb\x6d\x06\x42\x4e\x55\x49\x7b\x8e\x81\x92\x7d"
+"\x1f\x49\x7f\x69\x6e\x5e\x1a\x5a\xb7\x5f\xf0\x53\x1e\xcc\x67\x05\xe9\x57\xad\x6c\x6b\x1a\x65\x65\x6d\x5a\x1e\xfb\x34\xcb\x06\x9d"
+"\x81\x96\x7b\x7b\x81\x80\x79\x1e\xfb\x06\xf7\x68\x07\xdb\xc6\xbd\xcf\x9c\x88\x96\x84\x9a\x1f\xcb\x93\xae\xaa\xba\x1a\xbe\x64\xb4"
+"\x2a\xc0\x1e\x53\xa9\x05\xfb\x09\xcb\x6e\xa3\xad\x1a\xb1\xb2\xab\xb9\x1e\xf7\x37\x4c\x06\x79\x95\x80\x9b\x9b\x95\x96\x9d\x1e\xfb"
+"\x0c\xfb\x61\x15\xca\x6a\xb4\x63\x70\x1a\x76\x71\x7d\x61\x8a\x1e\x81\x06\x89\x8a\x8b\x8a\x87\x1f\x79\x9c\x6d\x9e\x55\xa9\x4d\xad"
+"\x18\x3c\xb7\x60\xb0\xa5\x1a\xa2\xa8\x9b\xb3\x1e\x92\x06\x8e\x8d\x8b\x8c\x8f\x1f\xa7\x73\xa5\x7a\xcb\x69\x08\x0e\xf7\x5b\xf7\x31"
+"\x15\x73\xaf\xa7\x82\xb1\x1b\xb1\xa4\x94\xa3\xb0\x1f\xbf\x57\x05\x82\x94\x92\x88\x92\x1b\x9a\x96\x96\x99\x92\x86\x94\x84\x92\x1f"
+"\x57\xbf\x05\xa2\xac\x95\xa8\xb1\x1a\xaf\x83\xa5\x73\xaf\x1e\xbf\xbe\x05\x95\x95\x8d\x8e\x94\x1a\x9a\x80\x96\x7c\x83\x85\x88\x82"
+"\x82\x1e\x57\x58\x05\xa2\x6a\x6c\x95\x65\x1b\x65\x6e\x82\x73\x69\x1f\x57\xbe\x05\x94\x81\x86\x8e\x83\x1b\x7c\x80\x80\x7d\x83\x8e"
+"\x85\x94\x82\x1f\xbf\x58\x05\x75\x6b\x81\x6c\x67\x1a\x66\x94\x71\xa3\x67\x1e\x56\x57\x05\x82\x82\x88\x85\x83\x1a\x7d\x97\x80\x99"
+"\x93\x90\x8e\x94\x95\x1e\xf7\x2c\xf7\xc4\x15\xcd\xc0\x57\x4a\x4a\x56\x57\x4a\x4a\x56\xbf\xcc\xcb\xc0\xc0\xcb\x1f\x0e\xf7\x7a\xf8"
+"\xef\x15\xae\xfb\x92\x05\x70\x8f\x96\x7e\x9f\x1b\xa0\x96\x97\xa7\x8f\x1f\xad\xf7\x92\x05\x0e\xf7\x79\xf8\xec\xf7\x2f\x1d\x9a\x1b"
+"\x9e\x9b\x99\x9c\x8f\x8a\x91\x89\x91\x1f\xf7\x1e\xf7\x6b\xf7\x2f\x1d\x99\x1b\x9f\x9b\x99\x9c\x8f\x8a\x91\x89\x91\x1f\x0e\xc2\xf7"
+"\x66\xd5\x1d\x9c\xfb\x59\xd5\x1d\x0e\xc2\xf7\x66\xec\x1d\x8e\x93\x1a\x99\x80\x96\x7d\x83\x83\x87\x83\x82\x1e\x0e\xf8\xb9\xd3\x1d"
+"\x0e\xbe\x1d\xf7\xd6\xf8\x04\x15\x23\x2f\x0a\xbf\xfb\xd1\x43\x35\x0a\xf7\x56\x39\x0a\x45\x06\x8a\x87\x0a\xf7\x3b\xf8\x04\x15\xcd"
+"\x44\x1d\x49\xc0\x06\xb8\xa6\xae\xae\x98\xa0\x87\x85\xa1\x1e\x87\x96\x8c\xf7\x2b\x1d\x77\x66\x92\x76\x1b\x4e\x58\x50\x43\x1f\x56"
+"\x43\x07\x20\x1d\xd3\xfb\xd1\x3d\x20\x0a\xf7\x58\x21\x0a\x49\x06\xf7\xd6\xf8\xbc\x15\x23\x20\x0a\xbf\xfc\x89\x43\x20\x0a\xf7\x58"
+"\x06\xa0\x96\x53\x1d\x43\x06\x0e\xf8\x89\xf7\x93\x60\x1d\xfc\x26\x22\x1d\x0e\xd6\x1d\xfc\x22\x06\x27\x1d\x0e\xd6\x1d\x52\xfb\x0f"
+"\x06\x20\x1d\xf7\x0f\xfb\xb7\x06\x39\x1d\x96\x9f\x1e\xf7\xb7\xf7\x0f\x07\x57\x0a\xfb\x0f\x06\x0e\x67\x0a\xf8\x4f\xf8\xbc\x15\xc3"
+"\x06\x9e\x96\x95\x9b\x9a\x80\x95\x78\x1f\xfb\x5d\x06\xfb\x1c\x89\x34\x50\x8a\x2f\x08\x5d\x07\x8e\x38\xdc\x50\xf7\x0d\x85\x08\xfb"
+"\x9e\x2f\x07\x78\x7f\x81\x7b\x7c\x97\x81\x9e\x1f\xf7\x1a\x06\x9f\x96\x94\x9c\x97\x83\x95\x7e\x8d\x1f\xf8\xc7\xc8\xfc\xc7\x07\x7e"
+"\x89\x83\x81\x7f\x1a\x7b\x97\x81\x9d\x1e\xee\x06\x9f\x96\x21\x1d\x77\x1f\x52\x06\x0e\xf7\xbc\xf8\x59\x15\x38\x49\x49\x37\x38\xcd"
+"\x48\xdd\xdc\xcd\xce\xde\xdd\x49\xcf\x3b\x1f\x0e\xf0\x1d\xf7\x35\xf7\x2d\x15\x44\xfb\x74\x05\x8a\x87\x8a\x87\x87\x1a\x7a\xdd\x1d"
+"\xf7\x35\xf8\xef\x15\x44\xfb\x74\x05\x8a\x87\x8a\x87\x88\x1a\x79\xdd\x1d\xf7\xd3\xd3\x1d\xf8\x4d\xf7\x5a\x15\xfb\x67\xf7\x59\x05"
+"\x93\x82\x83\x8f\x83\x1b\x7d\x80\x80\x7d\x82\x8c\x89\x96\x7f\x1f\xf7\x1f\xfb\x35\xfb\x1f\xfb\x36\x05\x80\x7f\x8a\x89\x82\x1a\x7d"
+"\x96\x80\x99\x94\x92\x8e\x94\x94\x1e\x0e\xf1\xe8\x15\x6f\x0a\xf7\x5b\x16\x6f\x0a\xf7\x5c\x16\xf7\x14\x1d\xa8\x72\xa4\x6e\x1f\x0e"
+"\xf7\x26\xf8\xf9\x15\x4a\x59\x59\x4c\x4d\xbe\x58\xc9\xca\x99\x1d\xb5\xab\x6b\x61\x62\x6a\x6a\x63\x62\x6a\xac\xb4\xb4\xac\xac\xb3"
+"\x1f\xf7\xf5\xfb\x52\x15\x97\x8f\x90\x91\x95\x1a\x95\x82\x94\x83\x89\x87\x8a\x89\x85\x1e\xfc\x0a\xfb\x0c\x05\x7e\x87\x86\x85\x81"
+"\x1a\x81\x94\x82\x94\x8d\x8f\x8c\x8d\x91\x1e\xc7\x5c\x15\x4b\x59\x59\x4c\x4d\xbe\x58\xc9\xc9\x99\x1d\xb4\xab\x6b\x61\x62\x6b\x6a"
+"\x63\x62\x6b\xac\xb4\xb4\xab\xac\xb3\x1f\xf7\xa6\xb2\x15\x4b\x59\x59\x4c\x4d\xbe\x58\xc9\xc9\x99\x1d\xb4\xab\x6b\x61\x62\x6b\x6a"
+"\x63\x62\x6b\xac\xb4\xb4\xab\xac\xb3\x1f\x0e\xf7\xa5\xf7\x35\x15\xfb\x0f\x52\x61\x5e\x41\x1a\x2e\xd5\x4c\xf7\x02\xbf\xac\x93\xa6"
+"\xca\x1e\x9a\x92\x8f\x8c\x98\x91\x08\xd1\x79\x0a\x65\x07\x74\x58\x6f\x84\x5f\x1b\x3a\x53\xb6\xc9\xc1\xba\xb4\xf7\x0a\xba\x1f\xd1"
+"\x34\x1d\xb4\xf7\x06\x15\xb0\xa4\xa1\xab\xab\x72\xa1\x66\x1f\x6f\x06\x67\x71\x75\x6b\x6b\xa4\x75\xb0\x1f\x0e\xf7\x5a\xf9\x06\x4d"
+"\x0a\xf8\x49\xf8\xe0\x34\x0a\xf7\xc0\xf9\x12\x3c\x1d\x99\x91\x66\x0a\x95\x89\x8f\x58\x1d\xf8\x47\xf8\xed\x5f\x0a\xf8\x36\xf8\xa1"
+"\x2d\x0a\xf7\x44\xf8\xfe\x42\x1d\xf7\xc1\xf8\xf6\x26\x0a\x0e\xf7\x53\xf8\xf6\x5b\x1d\xf7\xc2\xf9\x26\x63\x0a\xf7\xa1\x96\x15\x31"
+"\xa5\x07\xa6\x99\x85\x7d\x7e\x7b\x82\x74\x7d\x7c\x8f\x95\x77\x6d\x0a\xaa\x93\x1d\xb9\x07\x0e\xf7\xbb\xf8\xdb\x55\x1d\x94\x1a\x99"
+"\xcb\x0a\x88\xa8\x0a\xf8\x3e\x96\x15\x46\x06\x4e\x6e\x76\x71\x60\xc4\x0a\x9e\xa3\xb0\x9f\x1f\x0e\xf7\xc0\xf8\x73\xaf\x0a\xca\x0a"
+"\xb2\x1d\x0e\xf7\xf8\xf7\xa9\x15\xd0\x06\x9c\x96\x94\x99\x9a\x81\x94\x79\x1f\x76\xf7\x36\x06\xbd\x5e\xb0\x4e\x72\x61\x81\x7f\x6d"
+"\x1e\x80\x86\x85\x83\x81\x1a\x7e\x95\x80\x97\x90\x8d\x8b\x8f\x94\x1e\x96\xa6\xa9\x92\x9c\x1b\xaf\xa3\x7b\x73\x1f\x66\x07\x91\x6f"
+"\x7a\x8d\x75\x1b\x3a\x51\x61\x51\x59\xb5\x6a\xc9\xb1\xa6\x92\x9d\xb0\x1f\xc0\x04\x75\x69\x6c\x82\x66\x1b\x6a\x74\x98\x9f\xad\xb2"
+"\xa3\xc0\xa1\x9d\x88\x85\xa5\x1f\x0e\xf7\x7c\xf8\x94\x15\xe6\x3e\x1d\xfb\x7e\x22\x1d\xe6\xfb\x6c\x06\xfb\x10\x44\x05\x7e\x83\x86"
+"\x85\x80\x1a\x7d\x97\x7f\x98\x90\x8f\x8c\x91\x95\x1e\xed\xc3\x05\xfb\x4e\x30\x07\x20\x1d\xf8\x5e\xf7\x60\x78\x1d\xfb\x2d\xfb\x9b"
+"\xf7\x65\x07\xf7\x2c\xe3\x05\x9a\x94\x8f\x90\x96\x1a\x98\x7f\x97\x7e\x85\x83\x89\x87\x85\x1e\xfb\x12\x42\x05\x0e\x8c\x0a\x0e\xf7"
+"\xec\xf7\x9e\x15\xce\x75\x06\x7c\x0a\xea\xac\x1d\x75\x48\xf7\x57\xf7\x48\x21\x2b\x0a\xf7\x31\xfb\xd4\x07\xfb\x29\x25\xfb\x06\xfb"
+"\x3c\xfb\x3d\xf2\xfb\x04\xf7\x2f\x1f\xf7\xe1\xf7\x1c\x06\x9e\x81\x97\x7b\x79\x83\x82\x75\x1e\x36\xfb\x5c\x07\x57\xf8\x61\x15\xfc"
+"\x61\x70\x07\x45\x5a\xa0\xb9\x65\x1f\x6a\xb5\x79\xc2\xcd\x1a\xcd\x9d\xc2\xac\xb6\x1e\xb9\xb1\xbb\xa0\xd2\x1b\x0e\xf7\xc4\xf8\xd4"
+"\x15\x34\x47\x4a\x37\x3a\xd0\x48\xdf\xdf\xcf\xce\xdd\xdc\x47\xce\x39\x1f\x87\x5c\x15\xc7\xb9\x5e\x52\x53\x5c\x5e\x52\x51\x5c\xb9"
+"\xc3\xc2\xba\xb9\xc3\x1f\x0e\xb0\x1d\x0e\x32\x1d\x0e\xf7\xd9\xf8\xef\x15\xfb\x37\x2e\x1d\xf7\x03\xfb\x73\x06\x23\x50\x05\x7c\x83"
+"\x87\x85\x80\x1a\x7d\x96\x80\x99\x91\x8e\x8c\x91\x95\x1e\xda\xb7\x05\xfb\x70\xfb\x2d\x6e\x0a\xf7\xfe\x23\x1d\xfb\x31\xf7\x86\x06"
+"\xf4\xc6\x05\x9a\x93\x8f\x91\x97\x1a\x98\x80\x97\x7d\x86\x87\x8a\x85\x81\x1e\x3b\x5e\x05\x0e\x8d\x0a\x0e\xf8\xdb\xf7\x57\x15\xba"
+"\x89\x9e\x83\xad\x1e\xe3\x78\x58\xbd\x43\x1b\x51\x5f\x68\x47\x6e\x1f\xca\x6d\x57\xb3\x56\x1b\x35\x43\x26\xfb\x0b\xfb\x10\xd4\x22"
+"\xe2\xc1\xbc\xb3\xd0\xa9\x1f\x47\xaa\xc2\x62\xc6\x1b\xac\xaa\x98\xac\xb5\x1f\xa4\x9e\x93\x95\x97\x1a\x98\x7f\x97\x7e\x85\x85\x89"
+"\x87\x86\x1e\x60\x5d\x76\x7f\x6f\x1b\x4f\x56\xd2\xe4\x83\x1f\xbe\x04\xe4\x98\xae\xba\xc3\x1b\xac\xa7\x79\x6a\x9c\x1f\x96\x77\x91"
+"\x73\x90\x62\x08\xfc\x00\xf7\x1c\x15\xc6\xbd\x3b\x2d\x2f\x58\x3a\x52\x52\x58\xdc\xe8\xe6\xbd\xdd\xc4\x1f\x0e\xf7\x0b\xf7\xd4\x15"
+"\xfb\xa1\x5a\x07\x20\x1d\xef\x06\x8c\xf8\x6c\x05\xb8\xb5\xae\xc0\xc2\xb8\x60\x56\x62\x60\x66\x5b\x1e\x86\x06\x7a\x80\x81\x7c\x7a"
+"\x96\x83\xa1\x1f\x8f\x06\xb0\xb8\x7a\x72\xac\x1f\xb0\x6e\xa1\x5e\x5a\x1a\x43\x64\x53\x5a\x68\x76\xa4\xb7\x87\x1e\x9e\x8a\x82\x94"
+"\x7c\x1b\x7b\x81\x80\x7b\x46\xbb\x57\xca\xdb\xc7\xd8\xf1\xe4\x5a\xd0\x31\xb0\x1f\xae\xa6\x9c\xa9\xb2\x1a\xde\x48\xcd\x37\x3a\x48"
+"\x50\x43\x1e\x26\x5a\x07\x20\x1d\x0e\xf7\xd5\xf8\xf7\xcd\x1d\x0e\xf8\x76\xf8\x19\x15\xfb\x55\x07\x39\x1d\x96\x9f\x1e\xf7\x88\xfc"
+"\x46\x52\x0a\x0e\xf7\x3f\x95\x15\x77\xa7\xa0\x85\xb2\x1b\xc9\xc7\xa2\xb7\xc0\x1f\x58\xdc\x07\x9e\x1d\x6e\xf8\x05\xfb\x0d\x06\x74"
+"\x81\x83\x7a\x7b\x3a\x1d\xd0\xfb\x8d\x06\x51\x55\x51\x6f\x49\x1b\x58\x69\xad\xbd\x1f\xf7\xc1\x26\x07\x75\x81\x83\xa5\x1d\xbc\xfc"
+"\xa9\x06\x27\x1d\x0e\xf7\x27\xf8\x9c\x15\xc7\x06\x8c\x48\x05\x7d\x94\x81\x98\x98\x94\x95\x9a\x1e\xf7\x01\xfb\x91\xfb\x02\x07\x7d"
+"\x94\x81\x98\x98\x94\x95\x9a\x1e\xcd\xc7\xfb\x83\x5b\x07\x7c\x81\x82\x7e\x7f\x95\x82\x9a\x1f\xf7\x21\x06\x99\x95\x94\x98\x98\x81"
+"\x93\x7c\x1f\x5b\x06\xf7\xc6\xbb\x15\xd4\xf7\x35\x05\xfb\x65\x6c\x07\x7c\x81\x83\x7e\x7e\x95\x82\x99\x1f\xe0\x06\x9a\x95\x94\x98"
+"\x97\x81\x94\x7c\x1f\x82\xf7\x83\x90\x06\x99\x95\x94\x97\x99\x81\x93\x7c\x1f\x4c\x06\x3d\xfb\x41\x3d\xf7\x41\x05\x4c\x06\x7c\x81"
+"\x83\x7e\x7e\x95\x82\x9a\x1f\x8f\xfb\x83\x82\x06\x7c\x82\x82\x7f\x7e\x95\x82\x99\x1f\xe0\x06\x99\x95\x94\x98\x97\x81\x94\x7d\x1f"
+"\x6b\xf7\x66\x06\xd5\xfb\x36\x05\x0e\x8f\x0a\xf8\x80\xf8\x6d\x15\x91\x92\x8e\x92\x8f\x1a\x98\x81\x95\x7f\x83\x87\x89\x80\x82\xd8"
+"\x0a\x97\xa4\x0a\xf7\x85\xfb\x94\x15\xf7\x37\xf7\x2a\x9b\x9d\xb6\x1a\xc2\x58\xbb\x50\x66\x69\x7b\x6e\x75\x1e\x7f\x7c\x84\x79\x7f"
+"\x1a\x81\x94\x82\x96\x96\x91\x90\x98\x8e\x1e\xa8\x94\xa8\xa0\xad\x1b\xb0\xab\x6e\x6b\x7a\x80\x79\x73\x73\x1f\x5f\x5f\x51\x54\x65"
+"\x69\x83\x84\x85\x86\x88\x88\x08\x5d\xf7\x7f\xb4\x07\x99\x83\x94\x7f\x7e\x83\x82\x7d\x1e\x0e\xf7\xda\xf7\xbb\x15\xf7\x43\x06\xa1"
+"\x96\x94\x9b\x9c\x80\x93\x75\x1f\xfb\x43\xf7\x2d\x06\x4f\x0a\xfb\x2c\xfb\x43\x07\x7a\x88\x8b\x8b\x88\x8a\x08\x84\x86\x86\x83\x82"
+"\x1a\x7b\x96\x82\xa0\x1e\xf7\x43\xfb\x2d\x06\x27\x1d\xfb\x77\x2f\x15\x66\x1d\xf8\x26\x06\xa1\x96\x94\x9b\x9b\x80\x94\x75\x1f\x0e"
+"\xf7\x3f\xf7\x14\x15\xf7\x12\x06\xf7\x08\xe7\xd6\xe9\xe9\x36\xd4\xfb\x01\x1f\xfb\x20\xbb\xf7\x19\x3d\x1d\xfb\x7e\xe4\x1d\xf7\x14"
+"\x04\xf7\x7e\xf7\x23\x07\xd8\xc9\x57\x4b\x4b\x46\x55\x37\x1f\x0e\xf7\x26\xf8\xf7\x15\x3b\x73\x6c\x81\x83\x88\x08\x83\x87\x86\x85"
+"\x82\x1a\x81\x94\x81\x96\x8e\x8e\x8b\x8c\x8e\x1e\xc9\x9f\x05\xfb\x97\x07\x8c\x75\x73\x8b\x7d\x1b\x76\x80\x84\x7c\x7f\x95\x83\x98"
+"\x1f\xf7\x47\x06\x99\x7d\x1d\x46\x06\xf8\x18\xf7\x44\x15\x91\x92\x8e\x91\x90\x1a\x98\xec\x0a\x85\x88\x84\x85\x1a\x7f\x95\x81\x97"
+"\x93\x8d\x8c\x98\x95\x1e\xf7\xd8\xa7\x15\x58\x78\x07\x6c\x83\x87\x7a\x7f\x95\x83\x99\x1f\xe1\x06\x99\x7d\x1d\x80\xbe\x06\xa5\x93"
+"\x90\x9b\x97\x82\x93\x7d\x1f\x80\xf7\x6a\x4e\x06\xfb\x16\xfb\x6d\x05\x65\x07\xf7\x2a\xb4\x15\x25\x06\xf1\xf7\x3d\x05\x0e\xf8\x89"
+"\xf7\x95\x15\xa1\x96\x94\x9b\x9b\x80\x94\x75\x1f\xfc\x26\x06\x66\x1d\xf7\x5f\xfb\x11\x15\x6f\x0a\xf8\x2c\x04\x6c\x72\x73\x6d\x6d"
+"\xa4\x73\xa9\xaa\xa3\xa3\xa9\xa9\x72\xa3\x6e\x1f\x0e\xf7\xda\xf8\xcf\x15\xa0\x82\x96\x7a\x7b\x82\x80\x76\x1e\xfb\x9a\x07\x77\x94"
+"\x80\x9c\x9b\x94\x96\x9f\x1e\xfb\x1d\x04\xa0\x82\x96\x7a\x7b\x82\x80\x76\x1e\xfb\x9a\x07\x7c\x0a\x0e\xf7\xc2\xf9\x0e\x15\x36\x48"
+"\x4a\x38\x3a\xcf\x49\xdd\xdf\xce\xcd\xdc\xdc\x48\xce\x39\x1f\x88\x58\x15\xc3\xb7\x60\x55\x56\x5f\x60\x55\x54\x5f\xb6\xc1\xbf\xb7"
+"\xb7\xc0\x1f\x0e\xf7\x2a\xf8\xe1\x15\x26\x22\x1d\xbc\xfd\x31\xae\x0a\x42\x59\x73\x4f\x59\x1f\xf7\x3e\xac\x15\xef\xd6\x46\x2f\xf7"
+"\x29\x1d\xf7\x05\xf8\x68\x15\x7c\x82\x83\x7e\x7f\x94\x83\x9a\x1f\xbf\x89\xb1\x6d\x65\x1a\x66\x65\x6c\x5f\x6c\x74\xf7\x22\x1d\xc0"
+"\xcf\xc3\xbc\xc7\xae\x78\xdc\x1d\xf8\x09\x90\x15\x91\x91\x8e\x93\x8f\x1a\x98\xc2\x0a\xf7\xf8\xa7\x15\x58\x78\x07\x6d\x83\x87\x7a"
+"\x7f\x94\x83\x99\x1f\xe1\x06\x99\x95\x93\x98\x97\x81\x93\x7d\x1f\x80\xbe\x06\xa5\x94\x90\x9b\x97\x81\x93\x7d\x1f\x80\xf7\x6a\x4e"
+"\x06\xfb\x15\xfb\x6d\x05\x65\x07\xf7\x29\xb4\x15\x26\x06\xf0\xf7\x3d\x05\x0e\xf7\x76\xf7\xbd\x15\xf7\x38\xf7\x2a\x9a\x9d\xb7\x1a"
+"\xc2\x58\xba\x50\x54\x52\x5d\x60\x81\x94\x82\x96\x96\x91\x90\x97\x8e\x1e\xa9\x94\xa8\x9f\xad\x1b\xb0\xab\x6e\x6b\x75\x81\x7e\x5a"
+"\x5b\x1f\x5e\x5f\x61\x64\x63\x67\x85\x86\x18\x5d\xf7\x7f\xb4\x07\x99\x83\x94\x7e\x7f\x83\x82\x7d\x1e\x0e\xf7\x83\xf7\x91\x15\xc4"
+"\x06\xad\x80\xb2\x59\xae\x41\x08\xb6\x06\x9a\x95\x95\x98\x99\x81\x94\x7c\x1f\x7f\x06\x85\x96\x6b\xc0\x7d\x9d\x72\xa0\x19\xb6\x9d"
+"\xa0\xa6\xb0\x1a\xc3\x5d\xb3\x4a\x1e\xfb\x1e\x06\x7b\x81\x82\x7d\x7d\x95\x82\x9b\x1f\x9e\xfb\x7f\x78\x06\x7b\x81\x82\x7d\x7d\x96"
+"\x82\x9a\x1f\xeb\x06\x9b\x95\x94\x99\x99\x81\x94\x7b\x1f\x6d\x06\xf7\x1b\x04\xef\xd3\x07\xb1\xa5\x77\x6e\x6c\x6a\x77\x57\x1f\x98"
+"\xf7\xaa\xc3\x1d\xee\xf7\xc7\x15\x76\x80\x50\x1d\xf8\x26\x27\x0a\x0e\xf8\x4e\xf8\xca\x15\x92\x8e\x90\x93\x95\x1a\x9a\x80\x96\x7d"
+"\x88\x89\x8b\x8a\x89\x1e\x2e\x63\x05\xa7\x4d\x50\x9d\x6f\x1b\x7c\x80\x80\x7c\x7e\x92\x84\x9c\x87\x1f\xb3\x83\x9a\x86\xa9\x7f\x58"
+"\x75\x18\x84\x87\x86\x84\x81\x1a\x7c\x97\x7e\x99\x8d\x8e\x8c\x8c\x8f\x1e\xe2\xb3\xac\x74\xbb\x54\xa4\x60\x19\xa7\x61\x64\x96\x5b"
+"\x1b\xfb\x15\x24\x27\xfb\x10\xfb\x11\xf2\x27\xf7\x17\xca\xc5\xa2\xb6\xb7\x1f\xb9\xb7\xa1\xc3\xd4\x1a\xf6\x4c\xf7\x10\x2b\xde\x1e"
+"\x40\xfb\x2d\x15\xf3\xdb\x3f\x29\x2a\x3a\x3e\x26\x26\x3a\xd8\xec\xeb\xdc\xd9\xee\x1f\x0e\xf7\xc0\xf7\xd1\x15\xfb\x1e\xf7\x1c\x05"
+"\x93\x82\x84\x8f\x84\x1b\x7d\x7f\x80\x7d\x83\x8e\x85\x94\x82\x1f\xf7\x1f\xfb\x1b\xfb\x1f\xfb\x1c\x05\x82\x82\x88\x85\x83\x1a\x7d"
+"\x96\x80\x9a\x93\x91\x8e\x94\x94\x1e\xf7\x1e\xf7\x1c\xf7\x1f\xfb\x1c\x05\x82\x94\x90\x88\x93\x1b\x9a\x96\x96\x99\x93\x88\x92\x82"
+"\x93\x1f\xfb\x1e\xf7\x1c\xf7\x1e\xf7\x1b\x05\x93\x93\x8f\x92\x92\x1a\x9a\x7f\x96\x7d\x84\x85\x88\x82\x82\x1e\x0e\xf7\xb4\xf8\x68"
+"\xbf\x1d\xf7\x28\xf7\x98\x15\x3b\xd4\x44\xdd\xb1\xae\x99\xa7\xa9\x1e\x9d\x9b\x92\x95\x95\x1a\x98\x81\x94\x7e\x83\x86\x89\x84\x85"
+"\x1e\x69\x6d\x76\x80\x68\x1b\x50\x5a\xbc\xc6\x1f\xb1\x07\xc6\xb6\xb9\xc2\xb6\xb0\x74\x6f\x8f\x1e\x7b\x8d\x92\x83\x99\x1b\x99\x94"
+"\x95\x9b\x1f\xc9\x07\x9b\x82\x95\x7d\x80\x83\x85\x7f\x87\x1e\x9d\x6c\x75\x92\x6c\x1b\x3c\x49\x48\x3a\x1f\xf7\x2f\xf7\xa5\xc3\x1d"
+"\x28\x1d\xd7\xf7\x73\x54\x1d\x7f\x96\x7d\xf7\x04\x1d\x28\x1d\x73\xf7\xa5\x45\x1d\x7e\xe1\x0a\x8d\x92\x93\x1e\xf4\xdf\xf3\x37\x05"
+"\x85\x94\x90\x63\x1d\x3d\x0a\x28\x1d\xfb\x1a\xf7\x89\x5b\x1d\x28\x1d\x30\xf7\x99\xdf\x1d\x28\x1d\x78\xf7\xb9\x6f\x1d\x6c\x6d\xa2"
+"\x1d\x0e\x28\x1d\xf7\x02\xf7\x81\x15\x84\x86\x88\x85\x84\x1f\x6d\x80\x0a\x81\x8f\x9e\xdf\x0a\x7e\xf4\x0a\x9e\x1b\x95\x97\x87\x80"
+"\x9d\x1f\x73\xb4\x9e\xd9\x0a\xf7\xd7\x7b\x15\x91\x06\xc5\xcc\xa6\xb7\xbb\x1f\xa7\xa5\x97\x9b\x97\x1a\x99\x81\x95\x7c\x82\x86\x88"
+"\x83\x83\x1e\x4c\x54\x5c\x73\x47\x1b\xfb\x07\x29\xed\xf7\x08\x1f\xd0\x07\xbf\xa1\xc3\xaf\xb2\x1e\xb2\xaf\xba\x9f\xc2\xb9\x0a\x47"
+"\x4f\x71\x5b\x5d\x1f\x5f\x5c\x6e\x46\x4e\x1a\x3a\x07\x8c\xfb\x0b\xea\xfb\x03\xf7\x0c\x73\x08\x47\xa5\x07\xa6\x99\x85\x7d\x7e\x3a"
+"\x0a\x95\x76\xe2\x0a\xaa\x93\x1d\x0e\x25\x0a\xf7\x71\xf9\x40\x54\x1d\x7f\x96\x7d\x83\x86\x89\x82\x82\x1e\xfb\x06\x2a\x05\x7e\x80"
+"\x89\x88\x81\x0a\x91\x68\x1d\x25\x0a\xf7\x0d\xf9\x72\x45\x1d\x7e\x82\x89\x87\x80\x1a\x7d\x96\x80\x99\x92\x90\x8d\x92\x94\x1e\xf3"
+"\xdf\xf3\x37\x05\x84\x94\x90\x89\x91\x1b\x99\x97\x96\x99\x95\x88\x90\x7f\x95\x1f\x0e\x25\x0a\x96\xf9\x56\x5b\x1d\x25\x0a\xba\xf7"
+"\x09\x1d\x93\x92\x88\x92\x1b\x99\x97\x96\x9a\x93\x8a\x8c\x83\x64\x1d\x23\x0a\xf7\x03\xf9\x40\x6d\x1d\x23\x0a\x71\xf9\x72\x8a\x1d"
+"\x96\x89\x8e\x3d\x0a\x23\x0a\xfb\x1c\xf9\x56\x43\x1d\x23\x0a\x2e\xf9\x66\xf7\x06\x1d\x9a\x96\x96\x99\x94\x8a\x8c\x83\x64\x1d\x49"
+"\x1d\x7e\xf9\x81\xd4\x1d\xa6\x94\x90\x9d\x1b\x96\xaa\x1d\x9d\x84\xa2\x1b\xa4\xa0\xe8\x0a\x2d\x1d\xf7\x02\xf7\x67\xb8\x0a\x2d\x1d"
+"\x8d\xf7\x99\x85\x1d\x2d\x1d\xfb\x00\xf7\x7d\x15\x3f\x1d\xf7\x72\x16\x3f\x1d\x0e\x2d\x1d\x44\xf7\x8d\xdf\x1d\x2d\x1d\xf7\x23\xf7"
+"\x75\x97\x0a\x69\x1d\xfb\x17\xea\x15\xf7\x1c\xf7\x01\x05\x98\x95\x8d\x8e\x96\x1a\x99\x7f\x96\x7d\x85\x85\x88\x85\x83\x1e\x22\x37"
+"\x23\xdf\x05\x91\x83\x85\x8e\x85\x1b\x7d\x7f\x46\x1d\x31\x1d\x26\xf8\xb8\x54\x1d\x80\x96\x7c\xf7\x04\x1d\x31\x1d\xfb\x61\xf8\xea"
+"\x85\x1d\x31\x1d\xfb\xcf\xf8\xce\x43\x1d\x31\x1d\xfb\xa7\xf8\xde\xd7\x0a\x93\x92\x88\x91\x1b\x9a\x97\x96\x9a\x93\x8a\x8c\x83\x64"
+"\x1d\x31\x0a\xd7\xf9\x40\x15\x96\x94\x8e\x90\x65\x1d\x82\x82\x1e\xfb\x07\x2a\x05\x81\x82\x88\x86\x82\x1a\x7c\x96\x80\x99\x93\x8f"
+"\x30\x0a\x31\x0a\xfb\x1e\xf9\x56\x43\x1d\x6c\x1d\xf7\x5b\xf9\x06\x15\xf7\x1b\xf7\x01\x05\x99\x95\x8d\x8f\x95\xf7\x1f\x1d\x84\x8e"
+"\x85\x1b\x7d\x7f\x80\x7d\x80\x8e\x87\x98\x82\x1f\x0e\x3f\x0a\x74\xf8\x19\x15\x97\x95\x8d\x8f\x70\x1d\x8f\x8d\x94\x96\x1e\x0e\x48"
+"\x1d\xfb\x10\xf8\x4b\x3c\x1d\x98\x92\x66\x0a\x96\x89\x8e\x58\x1d\x3f\x0a\xfb\x7d\xf8\x2f\xb5\x0a\x3f\x0a\xfb\x59\xf8\x3f\xf7\x11"
+"\x1d\x95\x90\x88\x92\x1b\x9a\x96\x96\x9a\x93\x8b\x8b\x7d\x9a\x1f\x0e\x3f\x0a\xfb\x0e\xf8\x5f\x6f\x1d\x6d\x6d\x72\xa2\xa7\xa7\xa3"
+"\xa2\xa9\x1f\x0e\x3f\x0a\x96\xf8\x26\x90\x1d\x8e\x9f\x67\x1f\x9d\x6b\x7d\x90\xb4\x0a\xa2\x1b\xa4\xf7\x20\x1d\xf7\xd5\x7c\x15\xc2"
+"\x8d\xb7\x96\xb5\xa0\x08\xbb\xa3\xaa\xa8\x9e\xa7\x0a\x89\x07\xdb\x0a\x42\xab\x4a\xc5\x62\x1f\xa8\x75\xa6\x81\xba\x84\x08\x49\xa5"
+"\x07\xa6\x99\x84\x7e\x7e\x7b\x82\x74\x7d\x7c\x8f\x95\x77\xe2\x0a\xab\x83\xa0\x73\x1d\x2c\x1d\x49\xf7\xea\x34\x0a\x2c\x1d\xfb\x3b"
+"\xf8\x1c\x8d\x1d\x96\x80\x99\x92\x91\x8e\x91\x93\x1e\xf3\xdf\xf3\x37\x05\x85\x94\x91\x63\x1d\x7d\x96\x1f\x0e\x2c\x1d\xfb\xa8\xf8"
+"\x00\xb5\x0a\x2c\x1d\xfb\x84\xf8\x10\x4d\x0a\x32\x1d\xcf\xf8\xad\x15\x98\x96\x8d\x8e\x95\x1a\x99\xf2\x1d\x32\x1d\x61\xf8\xdf\x45"
+"\x1d\x7e\xe1\x0a\x8e\x91\x93\x1e\xf4\xdf\xf3\x37\x05\x85\x94\x90\x63\x1d\x3d\x0a\x32\x1d\xfb\x29\xf8\xc3\x43\x1d\x32\x1d\x21\xf8"
+"\xd3\xd7\x0a\x94\x91\x88\x92\x1b\x99\x97\x96\x99\x94\x8b\x8b\x7c\x9a\x1f\x0e\xf7\x41\xf8\x37\x15\x3a\x06\xbb\x0a\xf7\x85\x06\xd5"
+"\xc7\xa5\x9b\xc8\x1b\xaf\x9e\x85\x0a\x77\x97\x74\x70\x1a\xfb\x81\x6f\x6e\x0a\xf7\x01\x06\x9f\x97\x53\x1d\x6e\xf7\x88\x06\xd9\x45"
+"\xc7\x2f\x4e\x66\x79\x53\x57\x1e\xf7\x90\xf7\x86\x90\x1d\x8e\x9f\xa0\x0a\x2c\x0a\xf2\xf7\x62\x54\x1d\x7f\x96\x7d\x83\x86\x88\x83"
+"\x81\x1e\xfb\x06\x2a\x05\x82\x83\x87\x84\x83\x1a\x7c\x96\x80\x99\x93\x8e\x8c\x95\x96\x1e\x0e\x2c\x0a\x8d\xf7\x94\xb1\x0a\x2c\x0a"
+"\xfb\x00\xf7\x78\x43\x1d\x2c\x0a\x4a\xf7\x88\xe6\x1d\x2c\x0a\xf7\x23\xf7\x6f\x15\x84\x86\x89\x84\x84\x1f\x6e\x80\x0a\x83\x8e\x9f"
+"\x67\x1f\x9e\x6a\x7e\x8f\x76\x1b\x70\x75\xcf\x0a\x9d\x1b\x96\x95\x87\x80\x9f\x1f\x73\xb4\x9d\x84\xa3\x1b\xa3\xa1\x96\xa4\xa5\x1f"
+"\x9e\x9d\x90\x92\x95\x1a\x98\x7f\x96\x7d\x1e\x0e\x3e\x0a\xf7\x31\xf8\x04\x15\xf7\x1b\xf7\x01\x05\x97\x94\x8e\x90\x95\x1a\x99\x80"
+"\x96\x7d\x84\x86\x89\x84\x82\x1e\x23\x37\x23\xdf\x05\x92\x82\x86\x8d\x85\x1b\x7c\x80\x46\x1d\x28\x0a\x5b\xf8\xa6\x54\x1d\xf2\x1d"
+"\x28\x0a\xfb\x22\xf8\xd8\xb1\x0a\x28\x0a\xfb\x90\xf8\xbc\x43\x1d\x28\x0a\xfb\x65\xf8\xcc\xe6\x1d\x5d\x0a\xf7\xee\xf7\x70\x34\x0a"
+"\x5d\x0a\xee\xf7\x86\x43\x1d\x4a\x0a\xfb\x49\xf2\x15\xf7\x1b\xf7\x00\x05\x99\x96\x8d\x8f\x95\x1a\x99\x7f\x96\x7d\x84\x86\x88\x85"
+"\xf7\x3f\x1d\x92\x82\x86\x8d\x85\x1b\x7c\x80\x46\x1d\xf7\x7a\xf8\xab\x15\x52\x06\x79\x81\x83\x7d\x7d\x95\x82\x9d\x1f\x95\xfb\x4c"
+"\x79\x06\x7a\x81\x83\x7d\x7d\x95\x82\x9c\x1f\xdd\x06\x9d\x95\x93\x9a\x99\x81\x93\x79\x1f\x7a\xf7\x24\x06\xb1\xab\x9c\x95\xaf\x1b"
+"\xaf\xa5\x77\x6f\x1f\xfb\x24\x81\x07\x79\x81\x83\x7d\x7c\x95\x83\x9d\x1f\xce\x06\x9d\x95\x94\x99\x99\x81\x93\x79\x1f\x81\xf7\x28"
+"\x06\xbe\x5c\xb1\x4e\x67\x75\x82\x72\x6f\x1e\x0e\xbe\x1d\xf7\xae\xf7\xd1\x15\xcd\x44\x1d\x49\xc0\x06\xb9\xa5\xad\xaf\x99\x9d\x88"
+"\x84\xa3\x1e\x87\x96\x8c\x8b\x8e\x1b\x99\x95\xf1\x0a\x4d\x59\x50\x43\x1f\x56\x43\x07\x20\x1d\xd3\xfb\xd1\x3d\x20\x0a\xf7\x58\x21"
+"\x0a\x49\x06\x0e\xf7\x06\xbe\x15\x3d\x20\x0a\xf8\xa5\x39\x0a\x45\xf8\x04\xfb\x39\xc0\x06\xb9\xa6\xad\xae\x9a\x99\x88\x83\xa7\x1e"
+"\x88\x95\x8d\x8b\x8e\x1b\x98\x96\xf1\x0a\x71\xeb\x1d\x06\xf7\xdd\xfb\xd1\x15\xfb\x05\xf7\xd1\xf7\x05\x06\xfb\xa9\xfb\xd1\x15\xf7"
+"\xd1\xf7\x04\xfb\xd1\x07\xf8\x04\x04\xfb\x04\xc0\x06\xb9\xa5\xad\xaf\x99\x9b\x88\x83\xa4\x1e\x8e\x8a\x05\x8d\x8d\x8a\x8a\x8e\x1f"
+"\x81\x77\x86\x76\x72\x1a\x0e\xf8\x83\xf8\xd9\x15\x58\x99\x05\x90\x79\x75\x8e\x7d\x1b\x72\xeb\x1d\xfb\xd1\x3d\x20\x0a\xf8\xa5\x39"
+"\x0a\x45\x06\x57\x16\xfb\x05\xf7\xd1\xd9\x44\x1d\x3d\xc0\x06\xb9\xa6\xad\xae\x98\x99\x89\x84\xa3\x1e\xfb\xa9\xfc\x80\x15\xf7\xd1"
+"\xf7\x04\xfb\xd1\x07\xf8\x04\x04\xfb\x04\xc0\x06\xb9\xa5\xad\xaf\x99\x9b\x88\x83\xa4\x1e\x8e\x8a\x05\x8d\x8d\x8a\x8a\x8e\x1f\x81"
+"\x77\x86\x76\x72\x1a\x0e\xf8\x82\xf8\x6d\x15\x91\x92\x8e\x91\x91\x1a\x97\x81\x95\x7f\x83\x87\x89\x80\x82\x1e\xfb\xf2\xfc\x2e\x05"
+"\x84\x83\x88\xf3\x0a\x88\xa4\x0a\xf8\x28\xfb\x09\x15\xa6\x9f\x99\xa3\xaa\x1a\xc2\x5b\xb8\x51\x51\x5b\x5e\x54\x6c\x98\x73\xa7\x77"
+"\xf7\x08\x1d\xb0\xa8\xf7\x3d\x1d\xa7\xa6\xaf\x1f\xfb\x2f\x04\xb4\xaa\x70\x68\x67\x6c\x6f\x63\x63\x6c\xa7\xaf\xae\xaa\xa6\xb2\x1f"
+"\x0e\xf8\x70\xf7\x24\x1d\x82\x1e\xfb\xf3\xfc\x2e\x05\x83\x82\x89\x87\x85\x1a\x7f\x95\x81\x98\x93\x8e\x8d\x97\x95\x1e\xf8\x2b\xf7"
+"\x08\x15\xa6\x9e\x99\xa5\xf7\x02\x0a\x71\xa6\x78\xc9\x1d\xfb\xe8\xf7\xc9\xbf\x1d\xf8\x71\xf7\x24\x1d\x81\xd8\x0a\xf8\x2b\xf7\x08"
+"\x15\xa7\x9f\x99\xa4\xa9\x1a\xc2\x5b\xb8\x51\x50\x5b\x5e\x54\x6d\x99\x72\xa7\x77\x1e\x6a\x75\x7c\x70\x69\x1a\x51\xbd\x5c\xca\xc9"
+"\xbd\xba\xc5\xad\x7c\xa6\x6a\xa1\x1e\x4a\xf7\x1a\x15\xb0\xa8\x71\x69\x6c\x6e\x73\x66\x66\x6f\xa3\xaa\xac\xa8\xa6\xaf\x1f\xfb\x2f"
+"\x04\xb4\xaa\x70\x68\x67\x6b\x6f\x64\x63\x6b\xa7\xaf\xae\xaa\xa6\xb3\x1f\xfc\x0e\xf8\x27\x15\xf7\x11\x06\x99\x7d\x1d\xfb\x3a\xfb"
+"\x2f\x06\x7e\x93\x82\x97\x90\x8f\x8c\x8f\x92\x1e\x95\x9d\xa6\x92\x9f\x1b\xb4\xa7\x6e\x5f\x58\x6a\x68\x5b\x6d\x70\x97\xa1\x72\x1f"
+"\x90\x85\x87\x8d\x85\x1b\x80\x82\x82\x7f\x71\xcf\x68\xbd\xd3\xbd\xbf\xd5\xce\x5e\xbb\x4d\x76\x7a\x88\x82\x72\x1f\x0e\xf8\x70\xf8"
+"\x6d\x15\x91\x91\x8e\x92\x91\x1a\x97\xc2\x0a\xf8\x2b\xf7\x08\x15\xa6\x9f\x99\xa4\xf7\x02\x0a\x72\xa6\x77\xc9\x1d\xfb\x86\xf8\x27"
+"\x15\x5f\xfb\x17\x5e\xfb\x25\x7f\x1a\x81\x95\x82\x95\x95\x92\x91\x96\x8e\x1e\xe5\xf7\xb1\x05\xb9\xfb\x73\x57\x07\x7d\x93\x82\x98"
+"\x97\x93\x94\x99\x1e\x96\x07\x0e\xb2\x1d\xf7\x25\xf7\x73\x6d\x1d\x28\x1d\xfb\x0e\xf7\x91\x42\x1d\x28\x1d\x0e\xf6\xf8\xa2\x4a\x1d"
+"\xf8\x05\xfb\x59\x15\xbf\xfb\x19\x05\x46\x2e\x1d\xf7\x2a\x29\x1d\x70\xf7\x05\x0a\xfb\x58\x26\x1d\xef\x06\xfb\x43\xfc\x61\x05\x71"
+"\x86\x0a\xf7\x2a\x22\x0a\x46\x06\xbd\xf7\x19\x05\xf7\x82\xbe\x15\xfb\x6f\x06\xf4\xf7\xa9\x05\x92\x06\x0e\x28\x1d\xf7\x0c\xf7\x34"
+"\x15\xa0\x97\x94\x9b\x9b\x7f\x94\x76\x5c\x1d\xf7\xe2\xf8\xc7\x15\xfb\x63\x55\x0a\x96\x1d\x6f\x35\x0a\xf7\x2b\x21\x0a\x44\x06\xbd"
+"\xf7\x19\x05\xf7\x97\x06\xbe\xfb\x19\x05\x47\x20\x0a\xe9\x06\x7a\x1d\xbe\xb5\xb3\x9f\xa0\x96\x82\x94\x82\x87\x87\x8a\x88\x87\x1e"
+"\x7e\x74\x86\x89\x79\x1b\x71\x7f\x94\x9e\xa7\xaa\xaa\xbb\x9f\x1f\xa1\x95\x90\x8f\x9a\x5b\x0a\x6a\x06\xfb\x12\xf7\x4c\xf7\x46\x1d"
+"\x0e\x28\x1d\x76\xf7\xb9\x6f\x1d\x6c\x6d\xa2\x1d\xb0\xf7\x0d\x15\x96\x95\x8e\x8f\x65\x1d\x83\x82\x1e\xfb\x06\x29\x05\x7e\x80\x89"
+"\x88\x82\x1a\x7c\x97\x80\x99\x93\x8f\x30\x0a\x92\x0a\x72\x1d\xca\xa4\xb9\xbc\x1e\xa7\xa5\x97\x9b\x98\x1a\x98\x6e\x1d\x67\xf7\x60"
+"\x15\x97\x95\x8d\x8f\x70\x1d\x90\x30\x0a\x72\x1d\xca\xa4\xb9\xbc\x1e\xa7\xa5\x97\x9b\x98\x1a\x98\x6e\x1d\xfb\x41\xea\x5a\x1d\xba"
+"\x1d\xfb\x41\xf7\x92\xd9\x1d\xba\x1d\xfb\x40\xf7\x76\x26\x0a\x0e\x8b\x0a\x9b\x0a\x90\xf8\xd3\x5a\x1d\x8f\x0a\xae\x16\xf8\xa6\x06"
+"\xfb\x84\xf8\xc6\x05\x59\x06\xfb\x38\xfc\x93\x15\xf7\x51\xf8\x47\xf7\x51\xfc\x47\x05\x0e\x25\x0a\x90\xf9\x5e\x42\x1d\x25\x0a\xf7"
+"\x15\xf8\xd3\x5a\x1d\x25\x0a\xf7\x16\xf9\x56\x26\x0a\x0e\x25\x0a\xf7\x8b\xf9\x01\x2d\x0a\xf8\x8f\xf8\x94\x15\xa8\x06\x54\x0a\xfb"
+"\x2a\x50\x0a\xd0\xfc\x42\x06\xfb\xbc\xf8\x75\x05\xfb\x02\x22\x1d\xbc\x92\x1d\xf8\x42\x06\xf7\xb6\xfc\x67\x05\x92\x7f\x8f\x7b\x77"
+"\x1a\x51\x60\x64\x4c\x1e\x4b\x2e\x1d\xcc\x06\xbc\xb3\x9c\xad\xaa\x1f\xae\xb4\x90\x9e\x8c\xf0\x08\x0e\x72\x0a\x95\xa0\xce\x1d\xf8"
+"\x10\x06\x63\x74\x78\x70\x66\xc4\x0a\x9f\xa3\xaf\x9f\x1f\xa9\x9b\x05\xf7\x34\x34\x1d\xfb\x03\xfb\xc3\x07\x0e\x94\x0a\xd5\xf8\xa2"
+"\x4a\x1d\xf7\x3a\xfb\x07\x15\xf7\x18\x64\x06\x27\x1d\xf7\x15\x34\x1d\x64\xfb\x18\xf7\x57\xf7\xa9\x30\x07\x76\x94\x80\x9c\x9b\x95"
+"\x97\x9f\x1e\xf7\x22\xfc\x30\xf7\x44\x1d\xaa\xfc\x61\x6c\x2e\x1d\xf8\x45\xf7\x36\x06\x56\x1d\x7f\x77\x1e\xfb\x03\xfb\xbe\x07\x0e"
+"\x80\x1d\xe0\xf8\xa2\x4a\x1d\xf8\x25\xfb\x07\x15\xfb\x6b\x5a\x07\x20\x1d\xf7\x21\x06\xa0\x97\x5a\x0a\x63\xf8\x61\x9f\x33\x0a\xfb"
+"\x0d\x26\x1d\xbc\xfb\x57\xfb\x94\xf7\x57\xbb\x22\x0a\xfb\x03\x25\x1d\x96\xfc\x61\x80\x06\x40\x1d\xf7\x03\x29\x1d\x5b\xf7\x6b\x06"
+"\x0e\xf7\x01\xf7\xc6\x15\xf7\x95\x33\x0a\xfb\x91\x06\xf3\xa2\xd4\xca\xeb\xb9\x0a\xfb\x0f\x26\x31\xfb\x14\x77\x1f\x50\x06\x20\x1d"
+"\xc3\x63\x55\x06\x2b\x1d\xc3\x89\x06\x95\x58\x97\x6f\xa7\x65\x08\x44\xbf\xd9\x62\xde\x1b\xcc\xc9\xa4\xb9\xbd\x1f\xa7\xa5\x97\x9b"
+"\x98\x1a\x98\xf7\x05\x1d\x49\x50\xa8\xc3\x61\x1f\x74\xa8\x81\xa2\x81\xb4\x08\x8d\xf7\x90\x07\x53\x0a\xfb\x93\x06\x0e\xc8\x1d\x7f"
+"\x1d\xfb\xd4\xf9\x6c\x5d\x1d\xe1\x4d\x1d\x68\x86\x62\x71\x55\x1b\x56\x51\x1d\xb6\x1d\xfb\x76\xf9\x80\xd9\x1d\x7f\x1d\xfb\x36\xfb"
+"\x16\x15\x91\x95\x8d\x8f\xed\x1d\xb6\x1d\xfb\x75\xf9\x64\x26\x0a\x0e\xf7\x0d\xf8\x1f\x15\xfb\xec\x63\x07\x65\x0a\x5b\xf7\x6b\xf7"
+"\x96\xfb\x6b\x5b\x06\x65\x0a\x63\xf7\xec\xad\x06\xa0\x96\x93\x9d\x9b\x80\x94\x76\x1f\x69\xcd\x9f\x3e\x1d\xfb\x0c\x50\x0a\xbb\x49"
+"\xfb\x96\xcd\xbb\x3d\x1d\xfb\x0c\x22\x1d\x9f\x49\x69\x06\x76\x80\x82\x7b\x79\x96\x83\xa0\x1f\xe1\x16\xf7\x96\x3d\xfb\x96\x06\x0e"
+"\xf8\x43\xf7\x9e\x15\xfb\x6b\x5b\x07\x65\x0a\x63\xf8\x61\x9f\x06\xa0\x96\x94\x9c\x9c\x80\x93\x76\x89\x1d\x06\xf7\x13\xf8\x9b\x3c"
+"\x1d\x99\x91\x91\x8d\x92\x93\x1e\xf3\xdf\xf4\x37\x05\x85\x93\x91\x63\x1d\x7e\x96\x1f\x0e\xf7\x07\xf8\x94\x15\xfc\x61\x3a\x07\x77"
+"\x80\x50\x1d\xf7\x68\x06\xa0\x96\x21\x1d\x77\x1f\x3a\xf8\x61\xdc\x06\x9f\x96\x83\x0a\xfb\x68\x06\x76\x80\x82\x7a\x7b\x96\x82\x9f"
+"\x1f\xf8\x5e\x16\xfc\x66\x07\x41\x4d\x51\x3c\x61\x54\xa1\xa9\x69\x1e\xa0\x73\x8a\x8c\x81\x1b\x7d\x7f\x80\x7d\x80\x8d\x88\x9d\x7d"
+"\x1f\x56\xcd\xb9\x78\xc7\x1b\xf4\xe3\xde\xef\x1f\xf8\x66\x9f\x07\x54\x0a\xfb\x49\x35\x0a\x0e\x23\x0a\xfb\x2a\xf9\x5e\x5d\x1d\xe1"
+"\x64\x0a\x23\x0a\x72\xf9\x56\x26\x0a\x0e\x23\x0a\xe7\xf9\x01\x2d\x0a\xf7\xda\xf8\x94\x15\xf7\x1a\x3d\x1d\xfb\xd4\x22\x1d\xf7\x1a"
+"\xfc\x61\xfb\x1a\x20\x0a\xf7\x9a\x06\x62\x74\x78\x6f\x67\x1a\x62\xa9\x73\xbe\xb6\xb3\x9f\xa0\x96\x82\x94\x81\x88\x87\x8a\x88\x86"
+"\x1e\x7d\x74\xa1\x1d\xa7\xa6\xa6\xc0\xa5\x1f\x9b\x93\x91\x92\x97\x5b\x0a\xfb\x1a\x06\x0e\x23\x0a\x0e\xf7\xdb\xf8\x94\x15\xf7\x19"
+"\x06\x9f\x97\x94\x9b\x9c\x7f\x94\x77\x1f\xfb\xd2\x36\x1d\xf7\x19\xfc\x61\xfb\x19\x25\x1d\xf7\xd2\x06\x9f\x97\xf7\x40\x1d\xfb\x19"
+"\x06\xfb\x16\xf9\x2b\x15\x72\x77\x77\x73\x73\x9f\x77\xaf\x1d\xf7\x63\x16\xe7\x0a\x0e\xf6\xf8\xa2\x4a\x1d\xf7\x9e\xf7\x17\x15\xf7"
+"\x19\x22\x0a\xfb\xd2\x25\x1d\xf7\x19\xfc\x61\xfb\x19\x25\x1d\xf7\xd2\x22\x0a\xfb\x19\x06\x0e\x23\x0a\xf7\x00\xf9\x4e\x15\x84\x86"
+"\x89\x84\x84\x1f\x6d\x80\x0a\x82\x8e\x9f\x68\x1f\x9d\x6b\x7d\x90\xf7\x03\x0a\x81\x1a\x7f\x96\x80\xf7\x07\x0a\x9d\x1b\x96\x97\x87"
+"\x80\x9d\x1f\x73\xb3\x9e\x84\xa2\x1b\xa5\x9f\x95\xa5\xa6\x1f\x9f\x9e\x8f\x91\x95\xa4\x1d\x9e\x0a\xfb\x3a\xf8\xfd\xe2\x1d\x3d\x0a"
+"\xf7\x3f\xf7\x70\x15\xd8\xce\xe7\x6e\xb5\x4f\xd4\xfb\x5a\x19\xe5\x27\x0a\x57\x06\x43\xf7\x4b\x65\xbe\x2f\xb3\xf7\x6a\xf7\x4f\x18"
+"\x99\x06\xa0\x97\x41\x1d\xfb\x0b\x55\x0a\x97\x82\xa0\xcb\x1d\x0e\xb5\x1d\xf7\x55\xfb\x24\x87\x1d\x41\x0a\xf7\x10\xf9\x40\xd1\x0a"
+"\x85\x83\x1a\x7c\x96\x80\x9a\x92\x90\x30\x0a\xf7\xc1\xf8\x94\x15\xf7\x46\xfc\x61\x05\x46\x25\x1d\xf7\x2a\x38\x0a\x70\xf7\x05\x0a"
+"\xfb\x63\x06\x76\x7f\x82\x7a\x7b\x96\x1d\x70\x36\x1d\xf7\x2a\x22\x0a\x46\x06\xf7\x42\xf8\x61\x05\x0e\x41\x0a\xf7\xa5\xf8\x6a\x15"
+"\x90\x92\x8e\x92\x90\x1a\x9a\x80\x96\x7d\x80\x86\x88\x7d\x82\x1e\x36\xfb\x0f\x05\x85\x81\x89\x87\x86\x1a\x7c\x97\x80\x99\x96\x90"
+"\x8e\x99\x94\x1e\x0e\x41\x0a\xf0\xfb\x24\xb6\x0a\x41\x0a\xf7\x17\xf7\xc1\x15\x61\x6b\x6c\x64\x64\xab\x6d\xb5\x1f\x95\x06\xb6\xab"
+"\xa9\xb2\xb3\x6b\xa9\x60\x1f\x0e\x81\x1d\x49\x1d\x82\xf9\x73\xe7\x1d\x49\x1d\xfb\x26\xf9\x06\x5a\x1d\x49\x1d\x25\x2e\x3c\x0a\x91"
+"\x1a\x99\xc1\x0a\x49\x1d\x0e\x2d\x1d\xfb\x0e\xf7\x85\x15\x7c\x80\x80\x7b\x4c\xcc\x5b\xe0\xe1\xcc\xbb\xca\x9b\x80\x96\x7c\x7c\x83"
+"\x83\x79\x89\x1f\x67\x86\x62\x72\x55\x1b\x56\x51\x1d\x2d\x1d\xb0\xf7\x62\x55\x1d\x93\x1a\x9a\xde\x1d\x84\x83\x68\x0a\x2d\x1d\xf7"
+"\x0c\xf7\x28\x2d\x0a\xeb\xbe\x15\xa4\x79\x0a\x3f\xf7\x78\xf7\x0e\x07\x6e\x91\x86\x8c\x7a\x91\x08\x3b\xa6\x5e\xcb\xe1\x1a\xc4\x9f"
+"\xbe\xaf\xb3\x1e\xb7\xb4\xbe\x9f\xd3\x1b\xd3\xbf\x77\x5f\xb3\x1f\xaf\x63\x9f\x57\x54\x1a\x39\x61\x4b\x44\x6e\x1e\x77\x83\x83\x89"
+"\x69\x85\x08\xfb\x0e\xf7\x77\xd7\x79\x0a\x72\xfb\x0f\xa9\x07\xf7\x07\xad\xc7\xdb\xf7\x0c\x1a\xf7\x28\xfb\x09\xf7\x04\xfb\x2f\xfb"
+"\x2f\xfb\x09\xfb\x04\xfb\x29\xfb\x0a\xc8\x39\xf7\x07\x6a\x1e\x6d\x07\xfb\x39\xf8\x6f\x4a\x1d\x0e\x2d\x1d\x0e\xf7\xd3\xf8\xd3\x15"
+"\xfb\x25\xfb\x02\xfb\x14\xfb\x3c\xfb\x39\xf7\x03\xfb\x15\xf7\x21\xf7\x21\xf7\x03\xf7\x16\xf7\x39\xf7\x38\xfb\x02\xf7\x17\xfb\x1f"
+"\x1f\x86\x58\x15\xf7\x05\xe4\x20\xfb\x1d\xfb\x1c\x32\xfb\x00\xfb\x04\xfb\x03\x33\xf7\x01\xf7\x1c\xf7\x1a\xe4\xf7\x01\xf7\x01\x1f"
+"\xfb\x87\x8d\x15\x8c\x91\x8b\x8e\x8d\x1a\x9b\x82\x94\x7b\x7b\x82\x82\x78\x88\x1e\x74\xfb\x25\x05\x89\x83\x8b\x89\x89\x1a\x7c\x94"
+"\x82\x9b\x9b\x93\x94\x9e\x8f\x1e\x0e\x8c\x0a\xf7\x80\xf9\x1b\x54\x1d\x80\x96\x7c\x83\x86\x89\x82\x82\x1e\xfb\x06\x2a\x05\x80\x82"
+"\x88\x85\x83\x1a\x7c\x96\x80\x9a\x92\x8f\x8d\x94\x95\x1e\x0e\xf7\xda\xb1\x15\xf7\x1b\x9a\xe9\xee\xf7\x14\x1a\xf7\x13\x2d\xee\xfb"
+"\x1b\x9a\x1e\xaf\xf0\x07\x62\x1d\xfb\x92\x22\x1d\xf0\x67\x06\xfb\x1b\x7c\x2d\x28\xfb\x13\x1a\xfb\x14\xe9\x28\xf7\x1b\x7c\x1e\x5d"
+"\x26\x07\x20\x1d\xf7\x92\x21\x0a\x26\x06\xf8\x72\x04\xf3\x7c\xd4\x3d\x2a\x1a\x29\x42\x3d\x23\x7c\x1e\x57\x16\x23\x9a\x42\xd9\xed"
+"\x1a\xec\xd3\xd9\xf4\x9a\x1e\x0e\x96\x0a\xf7\xda\xf8\x94\x15\xc0\x29\x1d\xfb\x32\x25\x1d\xc0\xfb\xb0\x06\xfb\x00\x93\x69\xbb\x8d"
+"\xf7\x21\x08\xf7\x1e\x33\x07\x40\x1d\xaf\x34\x06\x8c\xfb\x01\x99\x5b\xb2\x64\xaf\x6a\xba\x79\xc2\x89\x08\xfb\x11\x56\x78\x0a\xf7"
+"\x32\x22\x0a\x56\xf7\x12\x06\xbb\xb7\x9a\xa6\xad\x1f\xbd\xb2\x9a\xba\x8c\xf7\x0c\x08\xe2\xaf\x07\x32\x0a\x33\xfb\x1e\x06\x8d\xfb"
+"\x1e\x66\x56\x22\x85\x08\x0e\x47\x0a\xf7\x31\xf8\x4a\xe7\x1d\x47\x0a\x9f\xf7\xdd\x5a\x1d\x47\x0a\xdf\xfc\x1a\x87\x1d\x84\x1d\x69"
+"\x1d\x87\xf7\x60\x6d\x1d\xf7\xd2\x7c\x15\xf7\x0c\x94\xd7\xcc\xea\x1a\xbe\x73\xb8\x63\xa3\x1e\x6c\x9d\x6e\x94\x3e\x97\x4e\x95\x72"
+"\x93\x72\x9b\x08\x73\x9b\x7e\xa4\xa8\x1a\xc9\xc5\xb8\xda\xd7\xcc\x0a\x84\x07\xae\x62\x5e\xeb\x0a\xaf\x7f\xd2\xab\x0a\xa7\x6d\xbe"
+"\x74\xbe\x84\x08\x4a\xa5\x07\xa6\x99\x84\x7e\x7e\x7b\x82\x74\x7d\x7c\x8f\x95\x77\x1f\x90\x81\x89\x8c\x85\x47\x1d\x85\xa0\x1d\xb1"
+"\x73\xa3\x62\x8e\x1f\x0e\xd0\x0a\xaf\x7f\xd2\x88\x0a\xfb\x21\xf7\x92\x8a\x1d\x96\x89\x8e\x3d\x0a\x69\x1d\xfb\x09\xfd\x04\xe5\x1d"
+"\xf8\xac\xf8\xc7\x15\xfc\x26\x59\x06\xf7\x4d\xfb\x6c\xfb\x4d\xfb\x8a\x05\x58\xf8\x2d\xf7\x2a\x07\xa0\x84\x95\x7c\x7d\x83\x82\x7c"
+"\x8a\x1e\x86\x21\x05\xfb\xbd\x06\xf7\x56\xf7\x8b\xfb\x4f\xf7\x6a\x05\xf7\xac\x06\x95\xfb\x04\x05\x81\x8c\x94\x83\x97\x1b\x98\x93"
+"\x94\x9b\x1f\x0e\x61\x0a\xf7\xdb\xf7\xed\x15\xf7\x3b\xf7\x2f\x49\x07\x78\x96\x7d\x9b\x9c\x93\x95\xa2\x1e\xf7\x09\xfc\x67\xfb\x09"
+"\x07\x58\x0a\xcd\xf7\x30\xfb\x3b\x29\x07\xba\x0a\xed\xfb\x87\x28\x06\x75\x80\x71\x0a\x80\x94\x75\x1f\x28\xf7\x87\xec\x23\x1d\x0e"
+"\x62\x0a\xfb\x12\xf8\xd3\x15\xf7\x1b\xf7\x01\x05\x99\x95\x8d\x8e\x96\x94\x1d\x7d\x7f\x46\x1d\xf7\xd8\x16\xf1\x21\x0a\x28\xf8\x61"
+"\xf7\x2f\x49\x06\xe0\x1d\xee\x3c\xa5\x06\xa7\x98\x85\x7d\x7e\x7b\x82\x74\x7c\x7d\x8f\x95\x77\x1f\x90\x81\x88\x8c\x86\x47\x1d\x84"
+"\x9b\x84\x1f\x80\xa0\xa9\x84\xa1\x1b\xbd\xad\xa6\xb5\xb1\x73\xa3\x62\x8e\x1f\x0e\xf7\x5b\xf7\xc9\x15\x97\x07\x9e\x81\x96\x7b\x7b"
+"\x81\x80\x78\x1e\x3e\x07\x78\x95\x80\x9b\x9b\x95\x96\x9e\x1e\x99\xf7\x62\x7d\x07\x78\x95\x80\x9b\x9b\x95\x96\x9e\x1e\xd8\x07\x9e"
+"\x81\x96\x7b\x7b\x81\x80\x78\x1e\x7f\x07\x26\xf7\x9e\xc7\x1d\x0e\x31\x1d\xfb\xdd\xf8\xd6\xb3\x0a\x31\x1d\xfb\x3e\xf8\xb3\x15\x98"
+"\x96\x8c\x8e\x93\x1a\x9a\xcb\x0a\x89\x82\xed\x0a\x96\x95\x8d\x8f\x93\x1a\x9a\x80\x96\x7d\x83\x84\x68\x0a\x31\x1d\x34\xf8\x79\x15"
+"\xa0\x96\x94\x9b\x9b\x80\x94\x76\x5c\x1d\xf8\x8d\xf8\x94\x15\xa8\x06\xa0\x96\x94\x9c\x9c\x81\x93\x75\x1f\xfb\x2a\x22\x1d\xd0\xfb"
+"\xd9\x06\x35\x48\x49\x35\x36\x48\xcd\xe1\x1e\xf7\xd9\xd0\x07\x54\x0a\xfb\x29\x06\x3b\x0a\xa7\xfb\xd9\x06\xfb\x07\xe3\x33\xf7\x08"
+"\x97\x92\x8c\x8d\x9a\x1e\x71\x76\x7e\x73\x6e\x1a\x62\xa9\x73\xbe\xb6\xa7\x1d\x86\x1e\x7e\x74\x87\x89\x78\x1b\x71\x7f\x94\x9e\xa4"
+"\x9f\xa9\xb2\xaa\x1f\xdb\xcf\x9d\xac\x8f\xdd\x08\x0e\x31\x0a\x0e\xf7\xdb\xf7\x91\x15\xf7\x40\xf7\x97\x05\xa0\x06\x9f\x97\x94\x9c"
+"\x9b\x7f\x94\x77\x1f\xfb\x03\x25\x1d\xa8\x06\xfb\x1d\xfb\x63\xfb\x20\xf7\x63\x05\xa8\x29\x1d\xfb\x03\x35\x0a\xa0\x06\xf7\x43\xfb"
+"\x97\x05\xfb\x5e\x28\x07\x76\x7f\x71\x0a\x46\x0a\x28\x06\xfb\x15\xf9\x2b\x15\x72\x77\x77\x73\xf7\x19\x1d\x67\x1d\x9e\xa3\xa4\x77"
+"\x9f\x72\x1f\x0e\xeb\xf8\xa2\x4a\x1d\xf7\xaa\xfb\x14\x15\xf7\x40\xf7\x97\x05\xa0\x06\xa0\x97\x94\x9c\x9b\x46\x0a\xfb\x03\x4e\x1d"
+"\xa9\x06\xfb\x1e\xfb\x63\xfb\x1f\xf7\x63\x05\xa8\x29\x1d\x2e\x5c\x06\xf7\x45\xfb\x9b\x05\xfb\x5e\x29\x07\x40\x1d\xf7\x8d\x22\x0a"
+"\x28\x06\x0e\x31\x1d\xfb\x5f\xf8\xfe\x63\x0a\x31\x1d\x52\xf8\xc6\x97\x0a\x59\x1d\xf8\x0f\xf7\x73\xd1\x0a\x86\x81\x0a\x90\x30\x0a"
+"\x59\x1d\xf7\x86\xf7\xa5\x45\x1d\x7f\x82\x88\x87\x80\x1a\x7e\x97\x7f\x98\xf5\x1d\x59\x1d\xf7\x19\xf7\x89\x5b\x1d\x59\x1d\xf7\x20"
+"\xf7\x99\xf7\x11\x1d\x94\x91\x88\x91\xf7\x3b\x1d\x86\x91\x05\x0e\xf8\x73\xf8\x94\x15\x30\x2b\x0a\xf7\x22\xfc\x61\xfb\x22\x2b\x0a"
+"\xe6\x07\xe7\xfb\x62\x15\xae\x07\xa0\x82\x97\x7a\x7a\x82\x7f\x76\x1e\xfb\x0d\x9b\x1d\xae\xf7\x41\x68\x9b\x1d\xf7\x0d\x07\xa0\x82"
+"\x97\x7a\x7a\x82\x7f\x76\x1e\x68\x07\xfb\x9d\xfb\x93\x15\xe6\x34\x1d\xfb\x22\xf8\x61\xf7\x22\x34\x1d\x30\x07\x0e\x31\x0a\x6f\xf9"
+"\x72\x85\x1d\x31\x0a\xfb\x07\xf7\x09\x1d\x94\x91\x88\x91\x1b\x9a\x96\x96\x9a\x93\x8a\x8c\x84\x64\x1d\x6c\x1d\xf7\xe7\xf9\x73\xf7"
+"\x00\x1d\x96\x80\x9a\x92\x90\x30\x0a\x6c\x1d\xf7\x5f\xf9\x89\x26\x0a\x0e\xf7\x45\x1d\x79\x83\xe1\x1d\x0e\x48\x1d\xfb\x82\xf8\x37"
+"\x42\x1d\xb0\x1d\xfb\x06\xf7\xea\x15\x96\x94\x8e\x91\x93\x1a\x9a\x80\x96\x7d\x83\x87\x9d\x1d\x82\x88\x86\x81\x1a\x7d\x96\x80\x9a"
+"\x92\x8f\x30\x0a\xca\x0a\x28\x1d\x0e\xf8\x8d\xf8\xc7\x15\xfc\x44\x69\x0a\xf7\xc2\x06\xec\xd5\xd0\xe4\xf0\x37\xc5\xfb\x25\x1f\xfb"
+"\x23\xf7\x57\xf7\xab\x30\x06\x76\x94\x7f\x9c\x9c\x94\x97\xa0\x1e\xfb\xdf\xfc\x06\x15\xf7\x6b\xf7\x20\x07\xce\xe5\x0a\x92\x0a\xc8"
+"\x1d\xf8\x95\x16\x29\x07\x73\x24\x0a\xa4\x1e\xf7\x02\x07\x8a\xad\x87\x8e\x68\x8c\x08\x68\xf8\x61\xae\x24\x1d\xfc\x14\x3b\x1d\xbc"
+"\xfb\x80\x06\x8a\x2b\x81\x62\x6a\x64\x71\x6e\x6c\x79\x71\x8a\x08\x75\x89\x85\x83\x6e\x1a\xfb\x02\x07\x72\x24\x0a\xa3\x1e\xed\x07"
+"\xf7\x2f\xf8\x94\x15\xf7\x58\xfc\x61\xfb\xa0\x06\xb6\xad\xa6\xdf\x8d\xf6\x08\x0e\x94\x0a\xf7\x42\xf7\x9e\x15\xf7\x19\x64\x06\x77"
+"\x95\x7f\x9b\x9b\x95\x97\x9f\x1e\xf7\x15\x07\x9f\x82\x97\x7a\x7b\x81\x7f\x77\x1e\x64\xfb\x19\xf7\x57\xf7\xa9\x30\x07\x77\x95\x7f"
+"\x9c\x9b\x94\x96\xa0\x1e\xf7\x22\xfc\x42\x07\x76\x80\x82\x7a\x7b\x97\x82\x9f\x1f\xbc\xfc\x61\x5a\x06\x7c\x1d\xf8\x58\xf7\x36\x06"
+"\x9f\x81\x97\x7a\x7b\x82\x80\x76\x1e\xfb\x03\xfb\xbf\x07\xa2\xf9\x2d\xe3\x1d\xf7\xda\xf8\x94\x15\xa5\x2f\x1d\x24\x3b\x1d\xa4\xfb"
+"\x4d\x86\x06\x74\x8c\x7f\x9c\x5c\xeb\x08\xf6\x57\x7a\x9a\x4b\x1b\x70\x84\x83\x6c\x1f\x55\x07\x73\x94\x7f\x9c\x9b\x95\x97\xa0\x1e"
+"\xb9\x07\xa0\x88\x95\x7d\xb1\x3e\xa4\x55\xa4\x60\x98\x7c\x6f\x7a\x6c\x60\x71\x4e\x53\xfb\x1b\x18\x70\x2a\x0a\xab\x06\xa8\x8c\x8d"
+"\x8c\x96\xa5\xc4\xf7\x1d\x18\xab\xd4\xaf\xb4\xa9\x88\x08\x94\xfb\x75\x72\x06\x71\x7e\xa8\x1d\xf2\x2f\x1d\x71\xf7\x75\x94\x06\xaa"
+"\x8e\xaf\x62\xab\x42\xc4\xfb\x1d\x18\x96\x70\x8c\x8b\xa9\x8a\x08\xab\x2f\x1d\x71\x06\x52\xf7\x1b\x71\xc7\x6c\xb7\x6f\x9b\x19\x97"
+"\x99\xa6\xba\xa3\xbf\xae\xd4\x98\x9d\xa0\x8e\x08\x5d\x07\x76\x95\x7f\x9c\x9b\xf7\x0b\x1d\x06\x0e\xe3\xf8\x5e\x15\x87\x07\x84\x89"
+"\x7a\x8a\x81\x1e\x89\x7e\x89\x7a\x84\x1a\x7c\x94\x82\x9a\x98\x93\x93\x9c\x8f\x1e\xe8\xa0\xc6\xba\xeb\x1b\xe8\xc7\x63\x4c\x73\x83"
+"\x76\x7c\x7b\x1f\x6f\x71\x43\x78\x39\x1b\x6f\x33\x1d\xa7\x06\xe5\xba\x85\x7b\xa9\x1f\xaf\x78\xa0\x6c\x67\x1a\x6a\x7b\x6c\x70\x76"
+"\x1e\x74\x6c\x60\x80\x4b\x1b\x42\x57\x9b\xb6\x42\x1f\x90\x83\x85\x8d\x84\x1b\x7f\x7d\x7e\x7e\x61\xf7\x15\x5a\xf7\x03\xe2\xc4\x9a"
+"\xae\xb4\x1f\xb0\xaa\x9f\xb6\xba\x1a\xd0\x64\xb9\x3e\xa2\x1e\xca\xa6\xab\xb6\xc7\x1a\xe5\x3a\xc9\xfb\x08\x4b\x5a\x7a\x64\x5b\x1e"
+"\x86\x85\x88\x8a\x89\x1b\x86\x87\x93\x9b\x88\x1f\xa1\x87\x83\x95\x7c\x1b\x7d\x82\x82\x7c\x85\x8c\x7f\x8c\x7c\x1f\x87\x8b\x84\x8c"
+"\x83\x1e\x0e\x5e\x0a\x0e\x5e\x0a\xe9\xf7\x80\x15\x7b\x81\x80\x79\x4a\xcd\x59\xe0\xdf\xcd\xbd\xcc\x9d\x81\x96\x7b\x7b\x83\x83\x77"
+"\x89\x1f\x65\x86\x62\x70\x56\x1b\x57\x61\xa7\xb0\x87\x1f\x9e\x89\x83\x94\x7b\x1b\x0e\xb1\x1d\x0e\xf8\x7e\xf8\x94\x15\xb0\x36\x0a"
+"\xfc\x17\x2a\x0a\xbd\xfb\xd1\x06\x20\x6c\x55\x4f\x81\x83\x8c\x8f\x7e\x1e\xc4\x07\xa0\x82\x97\x7a\x7a\x82\x7e\x73\x1e\x50\x07\x78"
+"\x8e\x81\x93\x87\x1e\x82\x99\xae\x84\xa5\x1b\xe6\xbc\xd4\xf7\x1e\x1f\xf7\xd1\xf7\x58\xfc\x61\x66\x07\x70\x0a\xf7\x12\x36\x0a\x66"
+"\x06\x0e\x81\x1d\x80\x1d\x2d\x1d\x0e\x96\x0a\x84\x1d\x90\x0a\x61\x0a\xb7\x1d\x0e\xf7\xda\xf8\x94\x15\xad\x06\xa6\x7f\x0a\x70\x1f"
+"\xfb\x04\x06\x69\x7a\x83\x7a\x7a\x9c\x82\xa9\x1f\xa9\x6b\x06\x50\x8a\x63\x81\x67\x76\x08\x51\x68\x69\x4e\x44\x1a\x4a\xa8\x52\xbe"
+"\x67\x1e\xb0\x70\xb6\x80\xce\x89\x08\x6b\x6a\x07\x70\x7a\x81\x7b\x7b\x9a\x82\xa8\x1f\xf7\x0b\x06\xa5\x9a\x94\x9c\x9b\x7d\x94\x70"
+"\x1f\x69\xab\x06\xc9\x8d\xb4\x94\xae\xa1\x08\xc4\xae\xac\xc9\xd0\x1a\xcc\x6e\xc4\x57\xaf\x1e\x64\xa6\x60\x97\x4a\x8c\x08\x57\xfb"
+"\xed\x15\x5a\x8e\x69\x94\x70\x9b\x08\x62\xa5\x73\xb7\xbb\x1a\xb5\x9d\xb1\xab\xa6\x1e\xa9\xa4\xad\x96\xc8\x8f\x08\xbf\x16\xbe\x87"
+"\xad\x82\xa6\x7b\x08\xb3\x71\xa3\x60\x5a\x1a\x5e\x76\x63\x67\x70\x1e\x6f\x77\x67\x80\x54\x88\x08\x0e\x8b\x0a\xf8\x6f\xbe\x15\xf8"
+"\x61\xb2\x73\x0a\xfb\x1f\x06\x76\x7f\x76\x0a\xbb\xfc\x61\xfb\x94\xf8\x61\xbc\x23\x1d\xfb\x21\x8c\x1d\xf8\x45\x5e\x1d\x8a\xac\x86"
+"\x90\x69\x8c\x08\x0e\xf8\x38\xbe\x15\xfb\x02\x2a\x0a\xf7\x5c\x24\x1d\x65\xf8\x61\xb1\x06\xa5\x99\x94\x9b\x9c\x99\x0a\x0e\xf8\x6f"
+"\xbe\x15\xfb\x29\xf8\x61\x9b\x43\x0a\x2e\x4e\x1d\xa4\xfc\x61\xfb\x28\xf8\x61\xa3\x22\x0a\xfb\x08\xd4\x0a\x69\x2e\x1d\xf8\x9d\x22"
+"\x0a\x69\xf8\x61\x9b\x22\x0a\x2e\x36\x1d\xa4\x06\x0e\xf8\xa3\xbe\x15\xf8\x61\x9b\x07\x32\x0a\x2e\x36\x1d\xa4\xfc\x61\xfb\x29\xf8"
+"\x61\x9b\x43\x0a\x2e\x4e\x1d\xa4\xfc\x61\xfb\x28\xf8\x61\xa3\x22\x0a\xfb\x08\xd4\x0a\x69\x2e\x1d\xf8\x96\x5e\x1d\x8a\xad\x87\x8f"
+"\x68\x8c\x08\x0e\xf7\x8a\xf8\x94\x15\xbc\x43\x0a\xfb\xbb\xfb\x5f\x06\x76\x94\x7f\x9c\x9c\x94\x96\xa1\x1e\xf7\x2c\xf7\x22\xfc\x61"
+"\x79\x5f\x1d\xf7\x85\x06\xeb\xd4\xcf\xe5\xf0\x38\xc5\xfb\x25\x1f\xfb\x04\x06\xfb\x9e\x04\xf7\x6b\xf7\x01\x07\xce\xb5\x81\x73\xaa"
+"\x1f\xa4\x77\x99\x70\x6e\x1a\x50\x56\x5d\x48\x1e\x0e\xf7\x19\xf8\x94\x15\xbc\x43\x0a\xfb\x2a\x69\x0a\xf7\x6e\x06\xec\xd5\xd0\xe4"
+"\xf0\x38\xc5\xfb\x26\x1f\x50\x06\xfb\x9e\x04\xf7\x6b\xc2\x07\xf7\x06\xce\x63\x46\x4f\x57\x5d\x45\x1f\xf7\xa2\xf8\x61\x15\xbb\x22"
+"\x0a\xfb\x28\x06\x75\x7f\x82\x7b\x7a\x97\x82\xa1\x1f\xbb\xfc\x61\x5b\x06\x75\x7f\x82\x7a\x7b\x97\x82\xa1\x1f\xf7\x28\x29\x1d\x5b"
+"\x06\x0e\xf7\x42\xf8\x94\x15\xbc\x43\x0a\xfb\x2a\x69\x0a\xf7\xc2\x06\xec\xd5\xd0\xe4\xf0\x37\xc5\xfb\x25\x1f\xfb\x23\x06\xfb\x9e"
+"\x04\xf7\x6b\xf7\x1f\x07\xcf\xe5\x0a\xf8\x7c\xf7\xd1\x15\xfb\x8a\xf7\x42\x1d\xf7\x8a\x7a\x06\x57\x76\x58\x65\x61\x1e\x5d\x62\x5a"
+"\x75\x50\x1b\x4a\x53\xa7\xc5\x59\x1f\x94\x83\x85\x8e\x81\x1b\x7d\x81\x82\x7e\x77\xa5\x6d\xb3\x6f\x1f\x67\xc1\xb3\x7e\xc1\x1b\xd5"
+"\xc7\xa6\xc3\xc1\x1f\xbd\xbf\xa6\xc9\xc8\x1a\xdc\x07\xc9\x73\xc7\x60\xbd\x1e\xc1\x5b\x53\xa4\x42\x1b\x49\x54\x77\x63\x5d\x1f\x9a"
+"\x07\xa0\x81\x84\x0a\xfb\x01\x07\x76\x94\x7f\x9c\x9b\x93\x94\x9f\x8d\x1e\x8d\xa1\x91\x97\x9c\x9d\x08\xad\xac\xc1\xa0\xbf\x1b\xb8"
+"\xb9\x7b\x72\xa7\x1f\xb8\x63\xaa\x49\x56\x1a\x0e\xf7\x64\xf7\xd1\x15\x2d\xf7\x57\xb0\x22\x0a\xfb\x01\x06\x77\x7f\x50\x1d\x9f\xfc"
+"\x61\x77\x26\x1d\xf7\x01\x06\xa0\x97\x5a\x0a\x66\xf7\x6b\xe9\x6b\x06\xfb\x31\xd3\x2f\xf7\x10\xc4\xbb\xa0\xb3\xac\x1e\xaf\xb5\x9c"
+"\xc8\xe0\x1a\xe6\x07\xe0\x7a\xca\x68\xb5\x1e\xb2\x6a\x5a\xa1\x54\x1b\x55\x5a\x76\x65\x67\x1f\x63\x60\x78\x4f\x32\x1a\xbf\x16\xf7"
+"\x14\xc0\xd3\xe8\xe6\xb9\x47\xfb\x18\x1e\x30\x07\xfb\x17\x5c\x48\x30\x2e\x57\xd3\xf7\x12\x1e\x0e\xf8\x3d\xf7\x8a\x15\xfb\x57\x46"
+"\x07\x40\x1d\xf7\x3e\x06\x9f\x97\x95\x9b\x9b\xf6\x0a\x9b\x9c\x7f\x94\x77\x1f\xfb\x89\x06\x27\x37\x43\x36\x4a\xb8\x5a\xe2\x6b\x1f"
+"\x50\x60\x75\x6f\x39\xfb\x1e\x08\x6f\x06\x7c\x1d\xc4\x06\x91\x96\x8f\x92\x94\x9a\xd9\xf7\x1a\xb1\xb6\xd5\xaf\x08\xf7\x0d\xbe\x15"
+"\x23\x06\x2d\x3d\xbd\xc7\xc1\xcb\xbe\xd0\x1f\xf7\x23\x06\x0e\xf7\x49\xf8\x94\x15\xfc\x61\x30\x07\x76\x80\x82\x7a\x7a\x96\x83\xa0"
+"\x1f\xf7\x7e\x06\xa0\x96\x93\x9c\x9c\x80\x94\x76\x1f\x30\xf8\x61\xf7\xce\xf7\x5f\x78\x1d\xfb\x2c\xfc\x29\x07\x20\x1d\x0e\xf7\x8a"
+"\xf7\x62\x15\xc3\xd2\xbe\xa2\xc1\x1b\xc6\xaf\x5e\x43\x3f\x6a\x5c\x51\x85\x1f\x72\x88\x80\x82\x7b\x1a\x7a\x97\x82\xa1\xde\xca\xd9"
+"\xf1\xf2\x50\xd0\x34\x54\x55\x76\x5b\x46\x1e\xf7\x88\xf7\x12\x07\x93\x24\x05\x72\x8d\x95\x7f\x9c\x1b\x9a\x94\x95\x9a\x8e\x8b\x8f"
+"\x8a\x94\x1f\x81\xf7\x05\x05\xab\x87\x86\x90\x6b\x1b\xfb\xd9\xcf\x1d\x06\x0e\xf7\x7f\xbe\x15\xf8\x61\xf7\x95\xfb\x2c\x07\x77\x95"
+"\x7f\x9b\x9c\x94\x96\xa0\x1e\xf7\x5f\xfc\x58\x07\x7c\x1d\xe6\xfc\x61\x30\xf7\x0b\x0a\xf7\x7d\x06\xa0\x97\x57\x1d\xbc\xf9\x29\x15"
+"\x96\x95\x8e\x90\x93\x1a\x99\x7f\x97\x7d\x84\x83\x87\x85\x83\x1e\xfb\x05\x2b\x05\x81\x82\x87\x84\x83\x1a\x7d\x96\x7f\x99\x92\x91"
+"\x8e\x93\x95\x1e\x0e\xf7\x04\xf7\xd1\x15\x92\x07\xc0\xaa\xcd\xb8\xb3\x1e\xa4\xa7\xb9\x9b\xb8\x1b\xbb\xbc\x79\x6e\xac\x1f\xa2\x77"
+"\x94\x7c\x8d\x72\x08\x77\x8d\x93\x82\x9b\x1b\x9c\x94\x97\xa0\x1f\xf7\x01\x07\xa0\x82\x96\x7a\x7b\x81\x80\x76\x1e\x7c\x07\xb3\x5d"
+"\x54\x9f\x4a\x1b\x41\x53\x72\x55\x5b\x1f\x60\x59\x73\x4f\x4d\x1a\x3a\x07\x4e\xa6\x4d\xbd\x57\x1e\x53\xc1\xc7\x70\xd5\x1b\xc1\xb3"
+"\x98\xaf\xc1\x1f\xb4\xa7\xa4\xa9\x9f\x1a\x98\x81\x94\x7d\x81\x85\x88\x82\x83\x1e\x51\x59\x53\x6f\x4a\x1b\x50\x5a\xa1\xb9\x62\x1f"
+"\x65\xb5\x76\xbe\xbf\x1a\x9c\xf7\x8a\x07\xa0\x97\x95\x9b\x9b\x80\x94\x75\x1f\x0e\xd0\x0a\xaf\x7f\xd2\x88\x0a\x0e\x23\x0a\x0e\xf7"
+"\x5b\xf9\x60\x15\x71\x77\x78\x72\x73\x9f\x77\xa4\xa4\x9f\x9e\xa4\xa3\x77\x9f\x73\x1f\xf7\x61\x95\x1d\xa4\xa3\x77\x9f\x72\x1f\x3d"
+"\xfb\x60\xd0\x1d\x0e\x9d\x0a\xf8\x18\xf8\x94\x15\xbd\x36\x0a\xfb\xbe\x2a\x0a\xbd\xfb\xd1\x06\x22\x6e\x53\x55\x7f\x82\x8d\x91\x79"
+"\x1e\xc1\x07\xa0\x82\x97\x7a\x7a\x82\x7e\x74\x1e\x4f\x07\x78\x8e\x81\x92\x87\x1e\x82\x9a\xad\x84\xa8\x1b\xae\xa8\x95\x9e\xa0\x1f"
+"\xab\xa7\xa0\xd3\xdd\x1a\xf7\xd1\xe9\xfc\x61\x61\x07\x35\x1d\xbe\x06\xed\xb5\x92\xa0\xab\x1f\xb3\xa6\xa3\xbb\xc2\x1a\xc2\x75\xb8"
+"\x63\xa7\x1e\x6c\xa1\x64\x95\x4e\x8c\x08\x56\x04\xea\x89\xb5\x6b\x43\x1a\x66\x7e\x6c\x73\x79\x1e\x78\x7c\x6c\x84\x59\x8a\x08\x0e"
+"\xf7\x9a\xf7\x9e\x15\xfb\x6b\x72\x07\x40\x1d\xf7\x56\x06\xeb\xd5\xd0\xe5\xef\x38\xc5\xfb\x26\x1f\x51\xf7\x57\xbb\x27\x0a\xfb\x11"
+"\x36\x1d\xa4\xfb\x57\xfb\x2a\xf7\x57\xa4\x29\x1d\x2a\x26\x1d\x9f\xfc\x61\x6e\xf7\x0b\x0a\xf5\x38\x0a\x72\xf7\x6b\x06\xf7\x5e\xfb"
+"\x6b\x15\xf7\x6b\xc2\x07\xce\xb6\x81\x73\xaa\x1f\xa4\x77\x99\x70\x6e\x1a\x50\x56\x5d\x47\x1e\x0e\xf7\x8a\xf8\x94\x15\xf7\x14\x06"
+"\x92\x24\x05\x72\x8d\x94\x7f\x9c\x1b\x9a\x95\x95\x9c\x8c\x8b\x8b\x8a\x98\x1f\x83\xf7\x05\x88\xac\x87\x8e\x6a\x8c\x19\xfb\xdd\xcf"
+"\x1d\xf7\x2e\x06\xc7\xcc\xae\x9f\xb4\x1b\xc3\xac\x60\x40\x1f\xfb\x08\x5a\x07\x35\x1d\xf7\x0e\x24\x1d\x76\xf7\x0d\x06\xf0\x56\xcb"
+"\x39\x59\x5d\x76\x5d\x58\x1e\x0e\xb1\x1d\x22\xf7\x5b\x15\x95\x94\x8f\x91\x93\x1a\x99\x7f\x97\x7e\x84\x83\x87\x85\x83\x1e\xfb\x06"
+"\x2b\x05\x81\x82\x87\x84\x83\x1a\x7d\x97\x7f\x98\x92\x56\x0a\xb7\x1d\xfb\x07\xf8\xa9\x15\x7a\x81\x80\x79\x4a\xcd\x59\xe0\xdf\xcd"
+"\xbe\xcb\x9c\x81\x97\x7b\x7c\x82\x83\x7a\x89\x1f\x61\x86\x64\x71\x54\x1b\x57\x60\xa7\xb0\x88\x1f\x9e\x89\x83\x94\x7c\x1b\x0e\xf8"
+"\x31\x16\xf0\x23\x1d\x5a\xf7\x94\x06\xd4\x45\xc0\x2b\x65\x4a\x7e\x78\x54\xa3\x1d\x8d\x8c\x8f\x99\x1e\x9d\xc4\xb4\x93\xac\x1b\xd1"
+"\xba\x6d\x5e\x1f\x4d\x07\x97\x60\x60\x91\x5f\xef\x0a\xec\xd0\xc4\xa2\xbf\xc6\x1f\xc6\x04\x52\x52\x4f\x71\x46\x1b\x48\x61\xaa\xbb"
+"\xc5\xd1\xb3\xf1\xb5\xbf\x85\x84\xa8\x1f\x0e\xf7\xf2\xf8\x7b\x15\xdc\xba\xa6\xba\x9e\x81\x95\x78\x7d\x86\x86\x79\x84\x1f\x86\x77"
+"\x77\x84\x56\x89\x08\x30\x06\x42\x5c\x77\x5f\x6b\x1f\x6d\x63\x7f\x50\xfb\x01\x1a\xfb\x01\x9a\x55\xb5\x5e\x1e\x5b\xb9\xca\x72\xd7"
+"\x1b\xf7\x23\xee\xe7\xf7\x18\xf7\x17\x29\xe8\xfb\x1f\x3b\x4c\x71\x55\x5c\x1f\x96\xee\xac\xab\xe8\x8e\x08\xb9\x22\x15\xf7\x04\xd8"
+"\x45\x24\x27\x3e\x43\xfb\x01\x43\x58\xa3\xbe\x69\x1f\x77\xa8\x81\xad\xae\x1a\xef\xd9\xd3\xf5\x1e\x0e\xf7\x1f\xbe\x15\x5a\x26\x1d"
+"\xf7\xa0\x06\xf6\xc4\xb5\xd8\xc9\x6b\xad\x40\x9c\x1f\xba\x9d\x9d\xa2\xb4\x1a\xd0\x50\xaf\xfb\x03\x1e\xfb\x70\x20\x0a\xbc\x06\xbf"
+"\xfb\x06\x15\xf7\x06\xf7\x0b\x07\xe1\xab\x7c\x65\x63\x5d\x76\x32\x1f\x25\xfb\x5f\x15\xf7\x2c\xf4\x07\xd6\xbc\x83\x7b\xa1\x1f\x9c"
+"\x7e\x96\x76\x73\x1a\x5c\x64\x74\x3e\x1e\x0e\xa5\x0a\x0e\xf8\x8e\x16\x4b\x07\x74\x24\x0a\xa4\x1e\xd6\x07\x8a\xab\x86\x90\x69\x8c"
+"\x08\x69\xf7\xd1\xad\x06\x52\x1d\xfc\x08\x4b\x1d\xba\xfb\x36\x06\x8c\x2d\x67\x5d\x35\x7d\x72\x88\x87\x86\x8a\x6c\x08\x40\x07\x72"
+"\x24\x0a\xa2\x1e\xcb\x07\xf7\x2b\xf8\x04\x15\xf7\x4f\xfb\xd1\xfb\x88\x06\xae\xa5\xa0\xc2\x8c\xd5\x08\x0e\x2c\x1d\x0e\xf8\xa1\xf7"
+"\x56\x15\x8a\xa5\x8a\x9f\x88\x99\x08\xf6\x77\x30\xd3\xfb\x07\x1b\xfb\x18\x26\x2d\xfb\x0f\xfb\x17\xf7\x00\x27\xf7\x24\xe9\xf7\x0b"
+"\xba\xb1\x98\x7f\x97\x7e\x85\x86\x89\x85\x83\x1f\x6c\x61\x46\x77\x4e\x1b\x23\x3f\xc8\xec\x7b\x1f\x8c\xbe\x15\xde\x9d\xd1\xc1\xe5"
+"\x1b\xe4\xd2\x55\x38\x9d\x1f\xfb\xa3\xf7\xec\x15\xe7\x0a\xf7\x62\x95\x1d\xa3\xa4\x77\x9f\x72\x1f\x0e\xf7\xda\xf8\x04\x15\xa1\x24"
+"\x1d\x2a\x3b\x1d\xa2\xfb\x0a\x87\x06\x72\x8d\x7b\x9b\x64\xca\x08\xd2\x60\x72\x9c\x51\x1b\x6e\x84\x83\x6c\x1f\x6a\x07\x74\x94\x7f"
+"\x9c\x9c\x94\x96\xa0\x1e\xa3\x07\xa3\x89\x94\x82\xaf\x56\xa1\x67\x9d\x74\x99\x7e\x70\x79\x6e\x6b\x74\x62\x58\x31\x18\x72\x06\x35"
+"\x1d\xa7\x06\xa6\x8c\x8c\x8b\x99\xa3\xbf\xe8\x18\xac\xc2\xac\xa7\xa9\x89\x08\x93\xfb\x28\x74\x06\x35\x1d\xec\x24\x1d\x75\xf7\x28"
+"\x93\x06\xa8\x8d\xad\x6f\xab\x54\xc0\x2e\x18\x93\x7e\x90\x83\x8e\x8a\x08\x89\x8e\x96\x8a\x99\x1b\xa4\x06\x52\x1d\x73\x06\x58\xe5"
+"\x72\xb6\x6e\xad\x72\x99\x19\x95\x93\xa1\xa8\x98\xa0\xb4\xcc\x96\x96\xa5\x8d\x08\x73\x07\x76\x94\xf7\x32\x1d\x6d\x52\x7a\x7f\x3f"
+"\x59\x1e\x5d\x45\x80\x81\x74\x8a\x08\x87\x06\x0e\xf8\x4c\xf7\x73\x15\xc0\xa1\xa1\xa7\xb7\x1a\xd1\x3f\xb9\xfb\x0a\x40\x51\x78\x66"
+"\x62\x1e\x9c\x07\xa4\x81\x99\x7a\x7b\x82\x7d\x72\x1e\x23\x07\x7a\x93\x81\x9a\x99\x93\x94\xa0\x90\xce\x0a\x72\x7d\x81\x7a\x7b\x98"
+"\xc3\x0a\x7e\x95\x81\xa4\x80\x1f\x73\xbf\xdd\x7b\xd6\x1b\xf7\x24\xdb\xba\xe1\xbb\x67\xb6\x59\x96\x1f\x0e\x82\x1d\x0e\x82\x1d\xf7"
+"\x10\xf8\xf0\x15\x7b\x81\x80\x79\x4b\xcd\x59\xe0\xdf\xcd\xbd\xcb\x9d\x81\x96\x7b\x7b\x83\x83\x77\x89\x1f\x66\x86\x62\x70\x56\x1b"
+"\x57\x60\xa7\xaf\x88\x1f\x9e\x89\x83\x94\x7b\x1b\x0e\x89\x0a\x0e\xf8\x77\xf8\x04\x15\xae\x36\x0a\xfc\x09\x3b\x1d\xba\xfb\x72\x06"
+"\x42\x6f\x67\x54\x80\x84\x8c\x8e\x7b\x1e\xad\x07\xa1\x83\x96\x7a\x7a\x81\x7e\x75\x1e\x63\x07\x78\x8e\x81\x92\x87\x1e\x82\x9a\xaa"
+"\x85\xa6\x1b\xe5\xbb\xc3\xf4\x1f\xf7\x72\xf7\x4f\xfb\xd1\x69\x37\x0a\xf7\x0d\x2f\x1d\x68\x06\x0e\xf7\xdc\xb3\x15\xf7\x26\xf7\xcd"
+"\x05\xfb\xc2\x47\x07\x75\x7f\x82\x7b\x7a\x97\x82\xa1\x1f\xf7\x28\x21\x0a\x6f\xf7\xd1\x9e\x38\x0a\x2b\x06\xfb\x27\xfb\xd0\xfb\x2a"
+"\xf7\xd0\x05\x2a\x20\x0a\x9f\xfb\xd1\xf7\x0c\x1d\xf7\xc1\x06\xf7\x28\xfb\xcc\x05\x0e\xf8\x3d\xf7\x56\x15\xfb\x23\xe9\x1d\x24\xc5"
+"\x1d\x06\x0e\x4b\x0a\x0e\xf8\x3d\xf8\x04\x15\xfb\xd1\xe9\x1d\xfc\x2a\x06\x76\x80\x82\x7a\x7b\x97\x82\x9f\x1f\xa5\xcd\x0a\xf7\xd1"
+"\x06\x0e\x95\x0a\xf8\x66\xf8\x15\x15\xab\x62\x57\x9b\x60\x0a\x0e\xf7\xda\xf8\x04\x15\xf7\x23\xfb\x17\x06\x76\x94\x7f\x9c\x9c\x94"
+"\x97\xa0\x1e\xf7\x4a\xfc\x4e\xfb\x4a\x9b\x1d\xf7\x17\xf7\x23\xfb\xd1\x28\x07\x76\x7f\x71\x0a\x46\x0a\x28\x06\x0e\x4e\x0a\x82\x7b"
+"\x74\x1d\x9b\x80\x94\x71\x1d\x82\x7b\x4c\x0a\x0e\xf7\xda\xf8\xbc\x15\xa5\x82\x98\x79\x1e\x3a\x86\x05\x71\x89\x7e\x82\x7a\x1a\x7c"
+"\x97\x80\x9a\x8c\x1e\x8d\x06\xcd\x8f\x05\xfb\x0b\x07\x96\x73\x7b\x8f\x75\x1b\x31\x49\x2c\xfb\x17\xfb\x18\xcd\x33\xed\x9e\x97\x8d"
+"\x93\xa2\x1f\x29\x3a\x07\x72\x7d\x82\x7b\x7b\x99\x82\xa4\x1f\xf7\x6a\x06\xa4\x99\x94\x9b\x9b\x7d\x94\x72\x1f\x3a\xed\x06\x83\xa3"
+"\x96\x89\x9f\x1b\xc1\xb3\xa1\xb8\xa7\x1f\xa6\xb6\x99\xc0\xc6\x1a\xf7\x13\x48\xec\x33\x75\x79\x87\x80\x74\x1e\x51\x04\x9b\x9d\x9a"
+"\x91\xa1\x1b\xca\xb8\x42\x26\x29\x5e\x43\x4d\x76\x7c\x91\x9c\x77\x1f\x57\x16\x7a\x7a\x7c\x85\x74\x1b\x4c\x5e\xd2\xee\xb8\x95\xb5"
+"\x9e\xae\x1f\xae\x9f\xa5\x9c\xae\x1b\xa1\x9a\x85\x7b\x9b\x1f\x0e\xb3\x1d\xf8\x8e\x16\x4c\x07\xe4\x0a\x54\xc6\x1d\x0e\xf8\x39\xbe"
+"\x15\x24\x33\x1d\xf7\x53\x24\x1d\x67\xf7\xd1\xaf\x06\xc0\x1d\x0e\xf8\x6f\xbe\x15\xfb\x29\xf7\xd1\x9b\x44\x0a\x37\x86\x0a\x9b\xfb"
+"\xd1\xfb\x29\xf7\xd1\x9b\x06\xa1\x97\x94\x9b\x9c\x80\x94\x74\x1f\x36\x20\x0a\x9c\xfb\xd1\x71\x26\x1d\xf8\x8d\x29\x1d\x72\xf7\xd1"
+"\x9c\x23\x1d\x35\x20\x0a\x9c\x06\x0e\xf8\xa3\xbe\x15\xf7\xd1\x9c\x07\x7b\x0a\x35\x20\x0a\x9c\xfb\xd1\xfb\x29\xf7\xd1\x9b\x44\x0a"
+"\x37\x86\x0a\x9b\xfb\xd1\xfb\x29\xf7\xd1\x9b\x06\xa1\x97\x94\x9b\x9c\x80\x94\x74\x1f\x36\x20\x0a\x9c\xfb\xd1\x71\x26\x1d\xf8\x8a"
+"\x4c\x06\x73\x94\xf7\x41\x1d\xad\x87\x8f\x68\x8c\x08\x0e\xf7\xa6\xf8\x04\x15\xbc\xe9\x0a\xfb\xb4\xfb\x22\x06\x58\x0a\xe6\xf7\x1b"
+"\xfb\xd1\x79\x5f\x1d\xf7\x42\x06\xde\xbf\x98\xa5\xa3\x1f\xa0\xa1\x97\xac\xad\x1a\xd8\x4a\xb3\xfb\x13\x1e\x23\x06\xfb\x56\x04\xf7"
+"\x23\xf0\x07\xf5\xaf\x7a\x57\x55\x66\x77\x23\x1f\x0e\xf8\x99\xf8\x04\x15\xbb\x38\x0a\xfb\x28\x2e\x0a\xbb\xfb\xd1\x5b\x25\x1d\xf7"
+"\x28\x29\x1d\x5b\x06\xfc\x28\xf7\xd1\x15\xbc\x23\x1d\xfb\x09\x29\x0a\x9b\xfb\xd1\x79\x26\x1d\xf7\x33\xdc\x0a\x06\xfb\x56\x04\xf7"
+"\x23\xe1\x07\xf6\xae\x7a\x56\x55\x65\x78\x24\x1f\x0e\xf7\x49\xf8\x04\x15\xbc\x23\x1d\xfb\x09\x29\x0a\x9b\xfb\xd1\x79\x26\x1d\xf7"
+"\x4d\x06\xde\xbd\x97\xa6\xa5\x1f\x9f\xa0\x98\xad\xac\x1a\xd9\x4a\xb3\xfb\x13\x1e\xfb\x07\x06\xfb\x56\x04\xf7\x23\xf7\x03\x07\xf5"
+"\xb0\x79\x59\x54\x65\x77\x24\x1f\x0e\xf7\x97\xf7\x7c\x15\x76\x7f\x59\x0a\xf7\x62\x06\x2f\x7c\x49\x56\x29\x1b\x45\x56\xa0\xbc\x55"
+"\x1f\x93\x82\x85\x8e\x82\x1b\x7e\x81\x82\x7e\x75\xa4\x73\xba\x72\x1f\x70\xbf\xb9\x7f\xc2\x1b\xf7\x1c\xea\xe5\xf7\x17\xf7\x17\x29"
+"\xeb\xfb\x19\x50\x59\x7b\x6b\x62\x1f\x8d\x07\x56\x1d\x7f\x77\x1e\x31\x07\x77\x94\x7f\x9c\x9b\x93\x94\x9f\x8d\x1e\xbc\x91\xcd\xb2"
+"\xda\x1b\xed\xcb\x55\x2b\x9a\x1f\x0e\xf7\x68\xf7\x56\x15\xfb\x16\x97\xd1\x3c\xf2\x1b\xf7\x01\xd8\xe9\xf7\x18\xf7\x19\x42\xe4\xfb"
+"\x02\x29\x43\x42\xfb\x07\x7b\x1f\x42\xf7\x0f\xbc\x33\x0a\xfb\x0c\x2e\x0a\x9e\xfb\xd1\x63\x25\x1d\xf7\x21\x33\x0a\x5a\xf7\x23\x06"
+"\xf7\x92\xf7\x50\x15\xde\xc0\x47\x21\x24\x55\x46\x3b\x3c\x55\xd0\xef\xf5\xc0\xd2\xd9\x1f\x0e\xf8\x33\xf7\x38\x15\xfb\x05\x56\x07"
+"\x78\x81\x82\x7b\x7a\x95\x82\x9e\x1f\xf7\x23\x06\x9d\x95\x94\x9c\x9b\x81\x94\x79\x1f\x65\xf7\xd1\xb1\x06\x9d\x95\x94\x9b\x9c\x81"
+"\x94\x79\x1f\xfb\x73\x06\x2c\x55\x5f\x3e\x4d\xac\x62\xce\x78\x1f\x50\x70\x60\x5f\x77\x55\x08\x77\x06\x78\x81\x82\x7a\x7b\x95\x82"
+"\x9e\x1f\xc7\x06\x98\xd5\xba\xbe\xea\xb2\x08\xf7\x01\xbe\x15\x2e\x06\x29\x64\xa2\xc4\xbd\xad\xa2\xd2\x1f\xf7\x11\x06\x0e\xf7\x57"
+"\xf8\x04\x15\xfb\xd1\xd3\x0a\xf7\xd1\xf7\xb2\xf7\x5f\x06\x4f\x0a\xfb\x2c\xfc\x0d\x07\x7c\x1d\x0e\xf7\x67\xf7\xba\x15\xd4\xcd\xa3"
+"\x9a\xc2\x1b\xcf\xb8\x66\x52\x1f\xfb\xca\x07\x49\x89\x5f\x60\x4c\x1b\xfb\x14\x4e\x1d\xf7\x14\x06\xe9\xd1\xd0\xe6\x88\x1f\xf7\xcd"
+"\x07\xdc\x47\xc8\x31\x50\x5b\x76\x5e\x5e\x1e\xec\xf7\x27\x73\x0a\xfb\x27\xe3\x27\x36\x1d\xbb\x66\x50\x06\x75\x80\xbe\x0a\x06\x0e"
+"\xa5\x0a\xc3\xf8\xad\x15\x95\x93\x8f\x92\x94\x1a\x98\x7f\x97\x7e\x84\x84\x88\x83\x82\xd5\x0a\xf7\x1b\xf7\x7c\x15\xeb\x9a\xcb\xc1"
+"\xec\x1b\xdb\xcd\x64\x59\x91\x1f\x78\x8d\x93\x82\x9b\x1b\x9c\x94\x97\x9f\x1f\xe5\x07\x9f\x82\x97\x7a\x7a\x82\x7f\x77\x1e\x89\x07"
+"\xab\x61\x5a\x9b\x50\x1b\xfb\x1a\x29\x2b\xfb\x17\xfb\x17\xea\x31\xf7\x1d\xc1\xb9\x97\xa6\xc0\x1f\xba\xa3\xa4\xa4\xa1\x1a\x97\x81"
+"\x95\x7d\x83\x86\x88\x83\x81\x1e\x5a\x55\x56\x76\x45\x1b\x29\x48\xc1\xe6\x7d\x1f\xf7\x62\x06\xa1\x96\x5a\x0a\x0e\xc0\x0a\xf7\x09"
+"\xdf\xc3\xda\xaf\x77\xae\x6b\xa0\x1f\x6a\xa1\x66\x96\x4d\x91\x34\x91\x1d\xd2\x7e\x0a\x94\x82\x9a\x1b\x9b\xf7\x39\x1d\x82\x82\x7b"
+"\x88\x1e\xa5\x69\x5e\x98\x56\x1b\x26\x40\x5a\x48\x6b\x9d\x6b\x9a\x1d\xa4\x85\xa5\x7c\x08\xa4\x7e\x9b\x75\x76\x1a\x5a\x4c\x67\x36"
+"\x3a\x48\xad\xb5\x1e\x0e\x32\x1d\x89\x87\x0a\xf7\xdc\xf8\x37\x15\xfb\x38\xf7\x42\x1d\xf7\x04\xfb\xd1\xfb\x2d\x06\x78\x81\x85\x7c"
+"\x86\x1f\x8a\x07\x8a\x89\x05\x78\x8f\x96\x83\x9f\x1b\xf7\xf9\x06\xa0\x98\x94\x9c\x9b\x7f\x94\x75\x1f\xfb\x2c\x06\xfb\x40\xf8\xae"
+"\x15\x71\x78\x78\x72\x73\x9f\x77\xa3\xa5\x9f\x9e\xa4\xa3\x77\x9f\x72\x1f\xf7\x62\x16\x71\x78\x78\x72\x73\x9f\x77\xa3\xa5\x9f\x9e"
+"\xa4\xa3\x76\x9f\x73\x1f\x0e\xca\x1d\xf8\x16\xf8\x04\x15\xad\x24\x1d\xfb\xa6\x3b\x1d\xba\xfb\x72\x06\x44\x6e\x64\x56\x83\x81\x8c"
+"\x8f\x7a\x1e\xad\x07\xa0\x82\x97\x7a\x7a\x82\x7f\x74\x1e\x63\x07\x78\x8e\x80\x93\x87\x1e\x82\x9b\xa9\x85\xa6\x1b\xe3\xbc\xc5\xf3"
+"\x1f\xf7\x72\xe4\xfb\xd1\x74\x37\x0a\xe6\x06\xd0\xb7\x97\xa5\xa4\x1f\xa1\xa0\x97\xab\xac\x1a\xd9\x53\xb4\x21\x1e\x71\x06\x58\x04"
+"\xa5\x06\xd8\xa9\x77\x5a\x5b\x69\x73\x45\x1f\x6e\x06\x0e\xf7\xa9\xf7\x89\x15\xfb\x36\xf7\x0f\xc6\x0a\x23\x06\x76\x80\x82\x7a\x7b"
+"\x97\x82\x9f\x1f\xa5\xfb\xd1\x63\x25\x1d\xf7\x0a\x33\x0a\x71\xf7\x23\xf7\x36\xfb\x23\x7a\x06\x40\x1d\xf7\x32\xdc\x0a\xf7\x0f\xbb"
+"\x38\x0a\xfb\x08\x20\x0a\x9b\x06\xbf\xfb\xd1\x15\xf7\x23\xe0\x07\xf6\xaf\x7a\x58\x54\x65\x77\x24\x1f\x0e\xf7\x41\xf8\x97\x15\xe3"
+"\x27\x78\x0a\xbb\x66\x50\x06\x76\x7f\xbe\x0a\xf7\x87\x06\xd4\xcd\xa3\x9a\xc2\x1b\xcf\xb8\x66\x52\x1f\xfb\x81\x63\x07\x76\x7f\x82"
+"\x7a\x7b\xde\x0a\xdc\x47\xc8\x31\x50\x5b\x76\x5e\x5e\x1e\xec\xf7\x27\x73\x0a\x0e\x89\x0a\x30\xf7\x70\x15\x94\x93\x8f\x92\x94\x1a"
+"\x98\x7f\x97\x7e\x84\x84\x88\x83\x82\x1e\xfb\x05\xa6\x1d\x98\x92\x56\x0a\xf7\x28\xf8\x04\x15\xa6\x24\x1d\x20\x33\x1d\x9f\x06\xf7"
+"\x52\xfb\xe8\x6e\x56\x05\x54\x6c\x7b\x7e\x66\x1b\x83\x84\x8c\x8d\x7f\x1f\xc0\x07\xa3\x82\x97\x7a\x7a\x82\x7e\x72\x1e\x54\x07\x77"
+"\x90\x80\x95\x85\x1e\x83\x9b\xa5\x86\xa5\x1b\xbf\xad\xa5\xd1\xb2\x1f\xf7\x7c\xf8\x34\x05\x9f\xab\x1d\x23\x3b\x1d\xa5\x06\xfb\x33"
+"\xfb\xb2\x05\xfb\x11\xf8\x9e\x15\x7b\x81\x80\x79\x4b\xcd\x59\xdf\xe0\xcd\xbd\xcb\x9c\x80\x97\x7c\x7c\x83\x83\x7a\x88\x1f\x62\x86"
+"\x64\x71\x54\x1b\x57\x61\xa6\xb0\x87\x1f\x9e\x89\x83\x94\x7b\x1b\x0e\xf7\xa6\x16\x28\x07\x74\x24\x0a\xa3\x1e\xed\xf7\x56\x07\xf7"
+"\x0e\x1d\xfb\x20\x25\x1d\xbb\xfc\x61\xfb\x94\xf8\x61\xbb\x27\x0a\xfb\x20\x8c\x1d\x0e\xbc\x1d\xc5\xf7\x72\x15\x83\x07\x84\x07\xfb"
+"\x14\xef\x2c\xf7\x1a\xf7\x18\xf1\xe8\xf7\x0e\xf7\x17\xfb\x01\xf2\xfb\x1f\x2a\xfb\x0b\x5b\x65\x7d\x96\x80\x99\x91\x8f\x8d\x91\x93"
+"\x1e\xa9\xb3\xd3\xa1\xc8\x1b\xf1\xda\x4a\x2c\x99\x1f\x58\x04\x38\x79\x44\x56\x2f\x1b\x2f\x42\xc2\xdc\x7c\x1f\x0e\xf8\x9d\xf8\xd5"
+"\x15\x90\x92\x8d\x92\x91\x1a\x99\x7f\x98\x7d\x81\x84\x86\x81\x84\x1e\xfc\x2c\xfc\xef\x05\x87\x84\x88\x84\x85\x1a\x7c\x97\x7f\x9a"
+"\x94\x92\x90\x95\x92\x1e\xf7\x3f\xf8\x29\x15\x91\x87\x86\x8e\x85\x1b\x86\x88\x8a\x87\x85\x1f\x72\x6b\x74\x82\x72\x1b\x59\x68\xb2"
+"\xc1\xc1\xaf\xb1\xbf\x9e\x9d\x86\x81\x97\x1f\x95\x84\x8d\x86\x90\x75\x8e\x7f\x95\x83\x94\x8c\x8e\x8c\x18\x93\x8c\x05\x92\x8c\x91"
+"\x91\x92\x1a\x8c\x8b\x8e\x8a\x8d\x1e\x87\x9a\x8a\x95\x96\x1a\x91\x8c\x90\x8c\x90\x1e\x8e\x98\x8b\x8b\x8e\x1a\x98\x81\x95\x7e\x84"
+"\x84\x87\x85\x87\x1e\x89\x89\x8a\x8a\x89\x87\x08\x99\x70\x78\x90\x73\x1b\x3f\x52\x50\x3b\x3b\xc3\x4f\xd6\xbd\xd0\xae\xa4\x90\x89"
+"\x91\x89\x8e\x1f\xf7\x16\x2b\x15\x5d\x6c\x7f\x71\x71\x1f\x73\x71\x7d\x66\x65\x1a\x65\x99\x66\xa3\x72\x1e\x70\xa5\xaa\x7f\xb7\x1b"
+"\xb7\xab\x97\xa5\xa4\x1f\xa3\xa5\x99\xb0\xb1\x1a\xdd\x53\xc4\x3a\x1e\x5c\x04\xc0\xae\x66\x54\x73\x83\x73\x7b\x79\x1f\x78\x7b\x78"
+"\x84\x6a\x1b\x57\x67\xb0\xc1\xa5\x93\xa2\x9b\x9d\x1f\x9e\x9c\x9c\x92\xad\x1b\x0e\xf7\x50\xf7\x22\x15\x8d\x45\x8e\x76\x95\x76\x08"
+"\x72\x98\x9f\x7d\xa3\x1b\xa8\xa3\x99\xab\xa8\x1f\x9d\x9f\x9b\xa0\x96\x9e\x90\x94\x18\x8d\x8e\x8c\x8f\x8f\x1a\x92\x85\x90\x84\x84"
+"\x86\x87\x82\x84\x1e\x80\x7b\x05\x6c\x75\x7a\x7d\x7c\x1b\x79\x84\x9e\xc0\x97\x8b\xa4\x8c\xa0\x1f\x9e\x07\xaf\x07\xf7\x1e\xf7\x44"
+"\xbe\xec\xe1\x1a\xc1\x6e\xae\x5f\x5f\x5a\x6a\x52\x64\x1e\x60\x4b\x74\xfb\x01\x88\xfb\x3d\x8a\x4e\x18\x74\x6f\x86\x85\x79\x76\x88"
+"\x88\x19\x76\x75\x05\x85\x85\x89\x86\x86\x1a\x87\x07\x84\x8f\x8e\x88\x91\x1b\x96\x8b\x8b\xb9\xb7\x1f\xec\xf7\x3d\x15\x8d\xb1\x05"
+"\xf7\x6d\x95\x9e\xd0\xbc\x1b\xa2\x9a\x76\x6b\x44\x64\x2f\x45\x2b\x1f\x0e\xdd\xf8\x94\x15\xfc\x61\x78\x37\x0a\xf7\x06\x24\x1d\x60"
+"\xf8\x2d\x06\xf7\x38\xfc\x36\x05\x68\x99\x92\x84\x9f\x1b\xa6\x95\x9a\xb4\x1f\xf8\x5c\x9f\xf7\x0c\x0a\xfb\x08\x4c\x1d\xb7\xfc\x26"
+"\x06\xfb\x3b\xf8\x3c\x80\xa7\x8a\x8b\x6d\x8c\x19\x57\x4b\x1d\xf8\x93\x3a\x15\xb3\x6d\xaa\x65\x75\x78\x81\x77\x7d\x1e\x80\x7b\x88"
+"\x7a\x57\x1a\x42\x8d\x74\x92\x80\x1e\x78\x97\xa2\x7f\xa5\x1b\xb7\xa2\xa4\xbc\x1f\x57\x16\x7c\x86\x84\x80\x80\x86\x92\x9a\x1e\xf7"
+"\x00\x07\x98\x90\x91\x96\x96\x90\x85\x7e\x1e\x8d\xfb\xb7\x15\xa6\x98\x94\x9d\xa0\x81\x8f\x57\x5f\x80\x86\x76\x7a\x99\x82\xa5\x1f"
+"\x0e\xb9\x1d\x0e\xb9\x1d\x58\xf7\xcf\xf7\x0e\x0a\x7e\x83\x85\x88\x83\x82\xf7\x01\x0a\x97\x7f\x98\x92\x91\x68\x1d\x48\x1d\x8f\xf7"
+"\xda\x15\xa0\x97\x94\x9b\x9b\x80\x94\x75\x5c\x1d\xf7\x4f\xf7\x98\x15\xf7\x51\xfb\xfe\x05\x7c\x93\x95\x83\x95\x1b\x92\x8e\x8e\x93"
+"\x90\x8a\x8f\x87\x97\x1f\xfb\x24\xf7\xf5\xf7\x24\xf7\xf6\x05\x8e\x92\x8d\x94\x92\x1a\x91\x88\x8e\x84\x81\x86\x87\x78\x7e\x1e\x0e"
+"\xf8\x32\xf7\x98\x15\xfb\x51\xf7\xff\x05\x9d\x7f\x85\x90\x81\x1b\x84\x88\x88\x85\x84\x8d\x82\x8e\x84\x1f\xf7\x24\xfb\xf6\xfb\x24"
+"\xfb\xf5\x05\x87\x7f\x8a\x87\x86\x1a\x83\x8e\x88\x92\x95\x95\x93\x9a\x93\x1e\x0e\xf8\x66\xbe\x15\xf7\x94\x07\xd4\x44\xc0\x2b\x65"
+"\x4a\x7e\x78\x54\xa6\x0a\x9a\x4f\x72\x8e\x5e\xef\x0a\xeb\xd0\xc2\xa1\xc0\xc9\x1f\x50\xb7\x07\x7a\x1d\xbf\xee\x0a\x73\x87\x89\x79"
+"\x1b\x70\x7f\x94\x9e\xa7\xa3\xa3\xc8\xab\x1f\x95\x91\x90\x92\x96\x1a\x9b\x80\x94\x76\x1e\x26\xce\x15\x4f\x4a\x57\x74\x46\x1b\x48"
+"\x61\xaa\xbb\xc5\xd1\xb3\xef\xb7\xbb\x86\x83\xac\x1f\x0e\xf8\x82\xf8\x2a\xf0\x0a\x88\x8c\xb3\x58\x1f\xb7\x53\x7c\xf7\x34\x1d\x7e"
+"\xf7\x00\x0a\xc0\xb6\x95\x7a\x0a\x56\xcb\xa1\x7f\xac\x1b\xac\xaa\x9d\xb4\xae\x1f\x9d\xa1\x93\x97\xf7\x09\x0a\xfb\x20\x04\x7e\x87"
+"\x87\x74\x7a\x1f\x6a\x73\x75\x7b\x75\x1b\x7b\x8a\x8c\xb3\x56\x1f\xb7\x54\x7b\x93\x6a\x1b\x68\x71\x7c\x63\x68\x1f\x75\x73\x83\x7e"
+"\x81\x1a\x7e\x96\x80\x99\x94\x91\x8f\x95\x93\x1e\xc0\xb6\x95\x7a\x0a\x55\xcc\xa0\x80\xac\x1b\xac\xaa\x9e\xb4\xae\x1f\x9e\xa0\x92"
+"\x98\x94\x1a\x98\x80\x96\x7d\x1e\x0e\x48\x1d\xfb\x05\xf8\x5f\x15\x54\x5f\x61\x57\x57\xb7\x61\xc1\xf7\x1a\x1d\x6d\x6d\x73\xa2\xa7"
+"\xa7\xa3\xa2\xa8\x1f\xc3\xf7\x1b\x15\x96\x95\x8e\x8f\x65\x1d\x83\x81\x1e\xfb\x06\x29\x05\x7f\x81\x89\x87\x82\x1a\x7c\x96\x80\x9a"
+"\x93\x8e\x8d\x94\x96\x1e\x0e\xf7\x35\xf7\x9e\x15\xa9\xb8\x9a\xaa\x9a\x1a\x93\x83\x91\x82\x84\x87\x88\x7e\x80\x1e\x6c\x68\x6e\x74"
+"\x4f\x69\x08\x78\x81\x87\x87\x84\x1a\x85\x8f\x85\x92\x87\x1e\x91\x88\x8c\x8a\x8f\x89\x91\x88\x19\x99\x82\xbc\x6e\xa3\x77\xad\x64"
+"\x19\x84\x91\x8f\x89\x92\x1b\x94\x92\x92\x93\x9a\x76\xb5\x73\xab\x1f\xf7\xb3\x9f\x0a\x0e\xf7\x9b\xf8\xae\x15\xfc\x34\x07\xa2\x6c"
+"\x5e\xa1\x7c\x1b\x83\x84\x84\x82\x84\x8d\x87\x93\x85\x1f\xb8\x65\x9a\x79\xb8\x41\x08\x7e\x92\x8e\x88\x94\x1b\x92\x8f\x90\x9c\x95"
+"\x1f\xab\xc3\xa5\xab\xaf\xa9\x08\x98\x96\x8e\x90\x91\x1a\x94\x85\x93\x83\x7c\x6b\x7c\x6e\x5d\x1e\xf8\x33\x07\x0e\xf8\xdd\xf7\x9f"
+"\x15\xfc\x3c\x06\xa3\xab\xa0\xb5\x9a\x1a\x93\x84\x92\x82\x84\x87\x89\x84\x85\x1e\x64\x5e\x78\x7c\x41\x60\x08\x7d\x83\x88\x88\x83"
+"\x1a\x84\x8f\x87\x9e\x81\x1e\xc6\x6a\xaa\x73\xa9\x68\x08\x7f\x95\x90\x87\x91\x1b\x95\x93\x91\x93\x9a\x7b\xab\x6e\xb7\x1f\xf8\x3c"
+"\x06\x0e\xa3\xf7\x6b\x15\xf8\x3c\x9f\x0a\xfc\x3c\x06\x0e\xf7\xd0\x7f\x15\xf8\x34\x07\x75\xaa\xb8\x75\x9a\x1b\x93\x92\x92\x94\x92"
+"\x89\x8f\x83\x91\x1f\x63\xac\x79\xa0\x6c\xbd\x88\x8f\x88\x8f\x88\x91\x88\x90\x88\x90\x8a\x8c\x08\x98\x84\x88\x8e\x82\x1b\x84\x87"
+"\x87\x79\x81\x1f\x69\x51\x74\x6e\x66\x6c\x08\x7e\x81\x88\x86\x85\x1a\x81\x91\x84\x93\x9a\xa9\x99\xa9\xbb\x1e\xfc\x34\x07\x0e\xf7"
+"\xa6\xf7\x02\x15\xa7\x5f\x69\x9b\x7c\x1b\x84\x84\x83\x82\x85\x8f\x86\x97\x80\x1f\xae\x6e\xa5\x6b\xf7\x37\x1d\x93\x8f\x1f\xb7\xd4"
+"\x9e\xa4\xb8\xb0\x08\x92\x91\x8e\x8f\x92\x1a\x94\x84\x92\x83\x7c\x5f\x75\x74\x6b\x1e\xf7\xae\x07\x74\xab\xb7\x76\xa3\x0a\xab\x9a"
+"\xa8\xb9\x1e\x0e\xf7\x57\x63\x15\x5f\xf7\x6a\xb7\x07\xfb\x18\xf7\x51\x15\xa7\x5f\x69\x9b\x7c\x1b\x84\x84\x83\x82\x85\x8f\x86\x97"
+"\x80\x1f\xae\x70\xa5\x6a\xf7\x37\x1d\x92\x8f\x1f\xb6\xd5\x9f\xa3\xb8\xb0\x08\x92\x91\x8e\x8f\x92\x1a\x94\x84\x92\x83\x7c\x5e\x75"
+"\x75\x6c\x1e\xf7\xad\x07\x75\xaa\xb8\x75\xa3\x0a\xac\x9a\xa8\xb8\x1e\x0e\xf7\x44\xbc\x15\x5e\xbe\xba\x77\xc0\x1b\xef\xdd\xdf\xf1"
+"\xc0\x75\xb6\x61\xa9\x1f\x70\x9f\x75\x93\x5c\x94\x08\xce\xa7\xac\xb7\xc5\x1a\xdb\x48\xc7\x31\x52\x58\x72\x5f\x6e\x1e\x75\x6a\x82"
+"\x5d\x39\x1a\xfc\x9f\x2b\x0a\xe1\xf8\x51\x15\xf7\x18\x8a\xca\x62\x37\x1a\x3d\x55\x53\x3f\x5b\x5b\xa2\xb0\x6b\x1e\x7b\x9f\x84\xa6"
+"\xbc\x1a\xf7\x60\x07\xf7\x02\xae\xba\xdc\xca\xb5\x67\x56\x53\x56\x60\x39\x81\x1e\x0e\x49\x0a\x6e\xf7\x5d\xb7\x0a\x49\x0a\xfb\x1c"
+"\xe7\xd8\x1d\xf8\x66\xf8\x15\x15\xab\x62\x57\x9b\x60\x0a\xfb\x3a\xf7\x8f\xb0\x0a\x49\x0a\xfb\x1b\xf7\x73\x26\x0a\x0e\xf7\xbf\xf7"
+"\x57\x15\xfb\x14\xf7\x74\x05\x4a\x2e\x0a\xb0\x06\xf7\x13\xfb\x75\xfb\x2d\xfb\xa5\x05\x84\x7e\x88\x82\x84\x1a\x7e\x95\x81\x98\x98"
+"\x94\x92\x9e\x95\x1e\xf7\x1d\xf7\x8b\xf7\x2e\xfb\xa5\x05\xcd\x22\x0a\x65\x06\xfb\x2d\xf7\xa6\xf7\x1c\xf7\x82\x05\x92\x98\x8e\x94"
+"\x92\x1a\x98\x81\x95\x7e\x7f\x81\x83\x79\x81\x1e\x0e\xf7\xad\xf8\x88\x15\xfb\x1e\xfb\x07\xfb\x03\xfb\x1a\xfb\x22\xf7\x06\xfb\x05"
+"\xf7\x24\xf7\x1f\xf7\x05\xf7\x03\xf7\x1c\xf7\x1f\xfb\x08\xf7\x06\xfb\x21\x1f\x8f\xfb\xbe\x15\xf5\x23\x05\x72\x67\x68\x80\x61\x1b"
+"\x60\x6e\x94\xa3\x6c\x1f\x5d\xb8\x15\x70\xaf\x82\xa6\xb4\x1a\xb7\x96\xae\xa3\xac\x1e\xf7\x02\xfb\x00\x05\xe8\x16\xf7\x02\xf6\x05"
+"\xa1\x6d\x94\x72\x66\x1a\x5a\x80\x66\x73\x6a\x1e\xfb\x2c\xf7\x29\x15\xfb\x03\xf7\x00\x05\xa3\xac\xae\x96\xb5\x1b\xb7\xaa\x81\x72"
+"\xae\x1f\x0e\xf8\x82\x16\x9b\x07\xfb\x15\x9e\x50\xce\xf7\x18\x1a\x9c\x6e\x91\x81\x94\x80\x08\x68\xa9\xba\x73\xb5\x1b\xd1\xc2\xc4"
+"\xd4\xd1\x59\xc2\x4c\x78\x80\x88\x7e\x70\x1f\x89\x8a\x82\x86\x86\x89\x08\xa1\xaa\x93\xa3\xa8\x1a\xd0\x53\xc1\x44\x44\x54\x55\x45"
+"\x70\x90\x7d\xa5\x61\x1e\x9c\x68\x78\x91\x76\x1b\x4f\x58\x52\x46\x43\xc3\x53\xd2\xca\xc0\xb1\xd2\xad\x1f\x8c\x78\x05\x85\x07\x8a"
+"\x53\x6e\x4c\x62\x6a\x72\x78\x79\x84\x42\x7c\x08\x7b\x07\x0e\x9a\x0a\xf8\x03\xf7\x50\x3c\x0a\x90\x1a\x99\x7f\x97\x7d\x81\x85\x87"
+"\x7e\x82\x75\x0a\x96\x80\x9a\x95\x90\x8f\x98\x94\x1e\x0e\xf8\x90\xf8\x9c\x15\xde\x26\x07\x20\x1d\xbc\x6b\xfb\x19\x22\x1d\xf7\x19"
+"\xfb\x0c\x06\xc2\x5e\x4f\xa8\x45\x1b\xfb\x10\x28\x27\xfb\x10\xfb\x10\xee\x26\xf7\x0f\xd2\xc5\xa7\xc4\xba\x1f\x46\xf0\x07\x61\x1d"
+"\x5a\xf8\x36\xbc\x39\x0a\xfb\xa8\xfb\x1e\x15\xee\xd7\x40\x28\x2b\x3f\x3e\x2a\x2a\x3f\xd8\xec\xeb\xd7\xd8\xea\x1f\x0e\xf7\xa2\xf8"
+"\x42\x15\x64\x84\x77\x84\x6f\x7b\x08\x43\x62\x5f\x42\x3d\x1a\xfb\x11\xf3\x28\xf7\x16\xf7\x16\xf2\xee\xf7\x11\xc7\x72\xc3\x5f\xb3"
+"\x1e\x73\xa1\x7d\x94\x49\xb0\x08\x26\xc2\x7a\x9a\xb0\x1a\xb9\xab\x9e\xd5\x1e\xcf\x06\x9f\x95\x93\x9b\x9a\x80\x93\x78\x1f\x4a\x06"
+"\x56\x6a\x83\x79\x71\x1f\x6c\x76\x79\x69\x68\x1a\x61\x9d\x70\xba\x6f\x1e\xb5\x53\xe0\x0a\xf6\xf7\xa2\x15\xe1\x20\xdc\xfb\x09\xaf"
+"\x47\xba\xe0\xe3\xf7\x0f\xdb\xeb\x4d\xd1\xfb\x10\xf7\x44\x6e\xc4\x60\x3a\x53\x3c\xfb\x06\xfb\x23\x08\x0e\xf8\x22\xf8\xe0\xc1\x1d"
+"\x2c\x1d\xfb\xbc\xf8\x08\x86\x1d\x2c\x1d\xfb\x40\xf7\x7d\x15\xf7\x1b\xf7\x01\x05\x99\x95\x8d\x8f\x95\x94\x1d\x7c\x80\x46\x1d\x2c"
+"\x1d\xfb\x3f\xf8\x00\x26\x0a\x0e\xf8\xd9\xf7\x7b\x15\xbe\xfc\x8d\x07\x8f\xf7\x10\xcd\xc7\xf7\x15\x88\x08\xf7\xc6\xbe\xfb\xba\xf2"
+"\x0a\x49\x99\x50\xa4\x65\x1e\xa2\x68\xae\x6c\xac\x7e\x08\x7c\xaf\xa7\x87\xd4\x1b\xf7\xba\xbe\xfb\xc6\x06\xfb\x14\x88\x4a\xc5\x85"
+"\xf7\x0c\x08\x90\x07\x0e\x2c\x1d\x55\xf7\xab\x2d\x0a\xf7\x44\xf7\xb8\x15\xd5\xc8\xa4\x9b\xc7\x1b\xd4\xb0\x6d\x4c\x8f\x1f\xfb\xcb"
+"\x07\x4a\x8a\x5e\x5f\x4c\x1b\x4e\x29\x0a\xc9\x06\xe6\x89\xd2\xd2\x89\xe6\x08\xf7\xd1\x07\xdc\x48\xc4\x2c\x4e\x66\x79\x53\x57\x1e"
+"\xc7\x3a\x07\xbb\x0a\x06\x0e\xf7\x15\x1d\xfb\x14\xf7\x01\x21\xf7\x17\x96\x97\x8c\x8c\x9d\x1e\x71\x74\x80\x76\x6e\x1a\x62\xa9\x73"
+"\xbe\xb5\xb3\x9f\xa0\x96\x82\x94\x82\x87\x87\x8a\x88\x87\x1e\x7e\x74\x86\x89\x79\x1b\x71\x7f\x94\x9e\xab\xa2\x9f\xec\xc0\x1f\xb2"
+"\xa0\x97\x96\x9a\x1a\x99\x80\x96\x7d\x85\x87\x89\x85\x83\x1e\x6d\x63\x43\x75\x4f\x1b\x23\x3d\xcb\xeb\x7d\x1f\xbe\x04\xdd\x9c\xd3"
+"\xc1\xe7\x1b\xe6\xd4\x54\x3a\x9b\x1f\x0e\x8e\x0a\x0e\x8e\x0a\xa1\xf8\x1a\x88\x1d\xf8\x9e\xf7\x08\x6b\x0a\xf8\x50\xf7\xae\x15\x57"
+"\x0a\xfc\x50\x26\x1d\xf8\x50\xfb\x21\x6b\x0a\x0e\xf8\x71\xf7\x54\x15\x8a\xcf\x87\xa8\x7d\xaa\x08\xcc\x6e\x46\xb2\x36\x1b\xfb\x14"
+"\x3b\x37\xfb\x1a\xfb\x1a\xd8\x3c\xf7\x15\xeb\xce\xb4\xd7\xa5\x1f\x8c\x8e\x8d\x8f\x05\x5e\x06\x8a\x89\x8b\x8a\x88\x87\x08\x5a\x72"
+"\x5a\x70\x4a\x1b\x41\x69\xa1\xc8\x77\x1f\xd6\x07\xf7\x96\xb4\x15\xfb\x94\xd3\x06\xc5\xa9\xab\xa0\xc8\x1b\xcb\xbd\x6d\x5a\x9e\x1f"
+"\x0e\x98\x0a\x0e\x98\x0a\xf7\x6a\xf7\x71\xf4\x1d\x98\x92\x56\x0a\xf7\x74\xa2\x0a\xf7\xaa\xf8\x63\x15\x8c\x9b\x05\xa2\x8d\x76\x9f"
+"\x71\x1b\x72\x77\x78\x74\x86\xad\x0a\x0e\xf8\x30\xf7\x9e\x15\xfb\x6b\xfb\xb9\x58\xf7\xed\xf8\xc7\xfb\xed\x58\xf7\xb9\xfb\x57\xfb"
+"\xb9\x58\x07\x0e\xf7\xd6\xf7\xac\x15\xf6\x94\xe0\xe9\xf7\x01\x1a\xf7\x0a\x2b\xea\xfb\x0a\xfb\x0a\x2c\x2c\xfb\x0a\xfb\x01\xe0\x2d"
+"\xf5\x82\x1e\x32\xfb\x29\x64\xf7\x29\xfb\x2c\xb7\xf7\x2c\xf7\x28\xb2\xfb\x28\x07\x72\xf8\x69\x15\xeb\xd8\x40\x2f\x2d\x3f\x3f\x2d"
+"\x2e\x3f\xd6\xe9\xe6\xd7\xd8\xe5\x1f\x0e\xf7\x0b\xbe\x15\x5a\x20\x0a\xf8\x30\x06\x9f\x97\x95\x9b\x9c\x80\x93\x76\x1f\x20\xf7\x3f"
+"\x06\xa9\xc5\x8f\x94\x98\x9c\x08\xa1\x99\x9b\x96\x98\x1b\x9a\x98\x84\x7a\x9f\x1f\x7c\x9b\x8f\x89\x94\x1b\x9a\x96\x96\x99\x97\x85"
+"\x93\x79\x99\x1f\xa5\x69\x7b\x92\x71\x1b\x66\x78\x7b\x4f\x66\x1f\xe1\x33\x07\x20\x1d\xaf\x6b\xfb\x2c\xf7\x57\xf7\xc3\x5e\x06\x58"
+"\x0a\xeb\xfc\x5c\x07\x20\x1d\xbc\x06\xbf\xfb\x8a\x15\xf7\x2c\xfb\x6b\xfb\x2c\x06\x0e\xf7\xc0\xcd\x15\xfb\x45\xf7\xf5\x05\x52\x2e"
+"\x0a\xa3\x06\xf7\x4d\xfc\x07\x05\x80\x5a\x87\x6b\x6d\x1a\x61\x9b\x71\xa4\xa3\x9b\xa6\xb7\xa8\x86\xac\x7f\xb9\x1e\xf7\x38\xf7\xda"
+"\x9e\xaf\x94\x93\xa4\x8c\x19\xa0\x44\x0a\x71\x06\x5d\x8a\x7a\x7e\x6c\x4f\x08\x0e\x93\x0a\x2c\xf7\x80\x86\x1d\xbd\x1d\xa8\xf7\x94"
+"\xb0\x0a\x93\x0a\xe8\xf7\x81\x15\x91\x94\x8d\x8f\x91\x1a\x99\x80\x97\x7c\x81\x85\x87\x7e\x82\x1e\x37\xfb\x0f\x05\x83\x7f\x8a\x8a"
+"\x85\x1a\x7c\x97\x80\x99\x96\x90\x8f\x98\x94\x1e\x0e\xbd\x1d\xa9\xf7\x78\x26\x0a\x0e\xf8\xa0\xf7\xd9\x15\xfc\x3f\xf7\x7d\x05\x8d"
+"\x86\x85\x8d\x87\x1b\x82\x83\x86\x84\x87\x1f\x8a\x88\x05\x88\x87\x8a\x87\x87\x1a\x82\x90\x84\x96\x85\x1e\xf7\xee\xfb\x50\xfb\xee"
+"\xfb\x50\x05\x80\x84\x86\x85\x82\x1a\x88\x8d\x86\x8d\x86\x1e\x8c\x89\x05\x83\x90\x93\x86\x92\x1b\x90\x91\x8d\x8e\x91\x1f\x77\x61"
+"\x15\x76\x80\x82\xa5\x1d\xf8\x34\x33\x0a\x0e\xf7\x3f\xf8\x9c\x15\xde\x26\x07\x20\x1d\xbc\x6b\x4c\x06\x75\x80\x82\x7b\x7b\x97\x82"
+"\xa0\x1f\xca\xfc\x37\xd2\x0a\xf7\x87\x06\xb2\xb8\x8b\x8b\x96\x94\x08\xa3\xa8\xa6\x95\xb0\x1b\xb2\x9f\x85\x0a\x78\x97\x74\x6f\x1a"
+"\xfb\x81\x63\x07\x77\x80\x82\x7b\x7a\x96\x82\x9f\xf7\x18\x1d\x2d\x4f\x62\x77\x56\x5b\x1e\xf7\x02\xf7\x0c\x07\xa0\x97\x94\x9b\x9b"
+"\x46\x0a\x0e\xb8\x1d\xf7\x15\xf8\x3d\xe2\x1d\x58\x1d\xf7\xc0\x75\x15\x9b\xd2\xba\xdb\xe3\xf7\x02\x08\xd5\xe9\xa4\xbf\xc9\x1a\xca"
+"\x55\xc0\x4a\x4b\x5d\x62\x3f\x76\x1e\xd9\x72\x5f\xb2\x4b\x1b\x4a\x58\x56\x47\x57\x9b\x68\xcc\x33\x1f\xf7\x09\xfb\x30\xa9\x56\xa0"
+"\x3b\x08\x0e\xd1\x16\xf8\x61\xf7\xcb\x06\xfb\x7b\xf7\x92\xfb\x7a\xfb\x92\x05\xbd\xfb\x99\x15\xf7\x85\x07\xf7\x48\xf7\x5a\xf7\x49"
+"\xfb\x5a\x05\xfb\x85\x07\x0e\x32\x1d\xfb\x2a\xf8\xcb\x86\x1d\xf7\x6d\xf8\x37\x15\xfb\x39\x2f\x0a\xf7\x05\xfb\xd1\xfb\x05\x20\x0a"
+"\xf7\xaa\x21\x0a\xfb\x05\xea\x0a\xf7\xcc\xfb\x21\xbf\x0a\xfb\x89\x07\x74\x81\x2a\x1d\xf7\x5e\xf7\x49\x1d\x32\x1d\xe7\xf8\x6e\x2d"
+"\x0a\xf7\xc0\xf7\x8a\x15\x52\xba\xc8\x69\xbf\x1b\xa7\xa5\x93\x98\x9f\x1f\xaa\xa1\xa2\xba\xb2\x1a\xd0\x50\xc3\x43\x54\x4f\x68\x54"
+"\x61\x1e\xc6\x59\x56\xa9\x55\x1b\x43\x50\x52\x44\x47\xc4\x52\xd1\xc7\xb8\xa4\xca\xc1\x1f\xae\xb2\x15\xb9\xab\xbd\xa9\xb6\x1b\xba"
+"\xaa\x6d\x5e\x5e\x6c\x6b\x61\x77\x76\x91\x97\x75\x1f\x7a\x94\x8b\x8b\x5c\xb9\x08\x47\x8f\x15\x5c\x66\x58\x6d\x61\x1b\x5e\x6e\xaa"
+"\xba\xb6\xaa\xa9\xb8\xb4\xb3\x74\x58\xba\x1f\x0e\xf7\xa7\x5c\x15\x44\x84\x6f\x7b\x84\x88\x8d\x99\x83\x1e\x9a\x80\x7c\x94\x7a\x1b"
+"\x71\x79\x7a\x72\x6d\xa5\x76\xb0\xa7\xa7\x98\xa3\xa2\x1f\xa9\xab\x93\xa9\xe4\x1a\xf8\x8a\x07\xca\x92\xa6\x9d\x90\x8f\x87\x82\x91"
+"\x1e\x77\x99\x95\x85\x9f\x1b\xa5\x9d\x9c\xa3\xa9\x72\xa0\x68\x73\x72\x82\x7c\x77\x1f\x66\x6e\x7d\x60\x32\x1a\x0e\xf7\xda\xf9\x0e"
+"\x15\x57\xfd\x35\x06\x4b\x83\x70\x7a\x86\x87\x8f\x94\x85\x1e\xa0\x7d\x81\x92\x77\x1b\x72\x78\x7a\x72\x6e\xa4\x75\xae\xa3\xa4\x94"
+"\x9a\x9f\x1f\xb0\xa8\x99\xb6\xe4\x1a\x0e\xf7\xa6\xfb\x4a\x15\xbf\xf9\x35\x06\xca\x92\xa6\x9d\x90\x8f\x87\x82\x91\x1e\x77\x99\x95"
+"\x85\x9f\x1b\xa5\x9d\x9c\xa3\xa9\x72\xa0\x68\x73\x72\x82\x7c\x77\x1f\x66\x6e\x7d\x60\x32\x1a\x0e\xf8\xad\xf7\x74\x15\xf7\x2a\x86"
+"\xae\x70\xb8\x1e\xce\x61\x3e\xb4\x35\x1b\x57\x5b\x7c\x70\x62\x1f\x58\x68\x6e\x5d\x81\x4d\x08\x86\x69\x8a\x75\x2a\x1a\xfb\x52\x07"
+"\x75\x94\x7f\x9c\x9b\x95\x98\xa0\x1e\xf7\x55\x07\x8c\xe3\x8b\x8b\x95\x1a\x8e\xbf\x92\xa9\x9a\xa1\x08\xbd\xad\xc8\xab\xcb\x1b\xc8"
+"\xc6\x6e\x5e\xab\x1f\xa6\x66\x91\x66\xfb\x1c\x1a\xfb\x55\x07\x75\x94\x7f\x9b\x9b\x96\x99\x9f\x1e\x0e\xf7\xc5\xf8\xc7\x15\xfb\x33"
+"\xfb\x13\xfb\x10\xfb\x2f\xfb\x32\xf7\x11\xfb\x12\xf7\x31\xf7\x2f\xf7\x12\xf7\x12\xf7\x30\xf7\x2d\xfb\x12\xf7\x14\xfb\x2b\x1f\x30"
+"\xfb\x34\xf7\x1e\x1d\xf7\xa2\x34\x15\x86\x48\x82\x6c\x74\x69\x08\x5a\x6a\x5a\x72\x4b\x1b\x4f\x5e\xa0\xb4\x6a\x1f\x6e\xb0\x80\xad"
+"\x85\xd4\x95\x63\x93\x7a\x9e\x75\x08\x61\xae\xbc\x76\xca\x1b\xc9\xbc\xa0\xb5\xae\x1f\x9e\xa1\x93\x9c\x95\xb3\x08\x29\xe2\xf7\x1e"
+"\x1d\x0e\xef\x1d\xf7\xc3\x06\x7a\x1d\xbe\xb6\xa7\x1d\x87\x1e\x7d\x73\xa1\x1d\xa3\xa0\xa4\xae\x9e\x1f\xba\xa4\x8b\x8b\x9a\x5b\x0a"
+"\xfb\x2f\xea\x0a\x0e\xf7\xc4\xbc\x0a\x7e\x88\x78\x7e\x1d\x0e\xf7\xc4\xf8\x25\x15\x56\x1d\x7f\x77\xe6\x0a\x82\x88\x86\x82\x1e\x83"
+"\x7b\x7e\x88\x78\x7e\x1d\xfb\x0a\xf8\x88\xe3\x1d\xf7\xc4\xf8\x25\x15\x9f\x82\x97\x7a\x7a\x82\x80\x76\x1e\xfb\xea\x07\x58\xa6\x73"
+"\xc4\xc2\xb5\x9e\xa5\x98\x7f\x97\x7f\x86\x83\x88\x86\x81\x1e\x84\x7c\x7c\x87\x79\x7e\x1d\xde\xf8\x9b\xc1\x1d\xf7\xc5\xbc\x0a\x7d"
+"\x88\x79\x7e\x1d\xd0\xf8\x9b\x88\x1d\x32\x1d\xc9\xf8\xba\x5f\x0a\xf8\x30\xf8\x04\xbf\x0a\xfb\xb3\x07\x74\x81\x2a\x1d\xf7\x28\xf7"
+"\xa2\x15\xfb\x1a\xfb\x01\x05\x7e\xf3\x1d\x96\x89\x8e\x58\x1d\xf7\x64\xf7\x84\x15\xf7\x47\x27\x07\x75\x80\x38\x1d\xbb\xfb\xd1\x5b"
+"\x36\x1d\xf7\x28\x22\x0a\x5b\xf7\x1e\xa4\x06\xd7\x8c\xca\x52\xc6\xfb\x13\x8e\x85\x18\xe0\x06\xa1\x97\x94\x9b\x9c\x7f\x94\x75\x1f"
+"\x57\x06\x58\xea\x51\xcb\x58\x9d\xf7\x33\xf7\x20\x18\x9a\x06\xa0\x97\x45\x0a\x29\x2e\x0a\x92\x06\xfb\x23\xfb\x14\x05\x0e\x91\x0a"
+"\xf7\x19\x2e\x3c\x0a\x90\x1a\x9a\xc1\x0a\xa9\x0a\x9c\x80\x93\x75\x1f\xfb\x15\x06\x74\x81\x2a\x1d\x92\x06\xfb\x2d\xfb\x13\x05\xf7"
+"\x46\x97\x1d\xfb\xd1\x5a\x20\x0a\xf0\x06\x0e\x42\x0a\xf7\x03\xf9\x40\x6d\x1d\xe4\xbe\x15\x71\x36\x1d\xf7\x09\x22\x0a\x6b\x06\xf7"
+"\x2c\xf7\xb2\xf7\x39\xfb\xb2\x05\x6d\x20\x0a\xf7\x0a\x22\x0a\x71\x06\xfb\xd0\xf8\xbc\x05\x36\x06\x77\x7f\x82\xa5\x1d\xbf\x06\xe7"
+"\xfb\x35\x05\x0e\x42\x0a\xf7\x48\xf8\x9b\x15\x91\x93\x8d\x91\x90\x1a\x99\x7f\x97\x7d\x81\x86\x88\x7d\x81\x75\x0a\x97\x80\x99\x95"
+"\x90\x8f\x98\x94\x1e\x0e\x42\x0a\x89\xfb\x24\xe5\x1d\x42\x0a\xf7\x43\xf7\xdf\x15\x62\x6b\x6d\x64\x63\xab\x6d\xb4\x1f\x96\x06\xb5"
+"\xab\xa9\xb3\xb2\x6b\xa9\x61\x1f\x0e\xbc\xf7\xd9\x15\xf8\x3e\xfb\x7d\x05\x88\x91\x91\x89\x8f\x1b\x93\x93\x90\x93\x8f\x1f\x8c\x8d"
+"\x05\x8e\x90\x8c\x8f\x8f\x1a\x94\x86\x92\x80\x91\x1e\xfb\xed\xf7\x50\xf7\xee\xf7\x50\x05\x95\x90\x90\x93\x94\x1a\x90\x8a\x8e\x89"
+"\x8f\x1e\x89\x8e\x05\x92\x87\x83\x90\x83\x1b\x86\x85\x89\x89\x86\x1f\x9e\xfc\xc3\x15\x53\x0a\xfc\x34\x26\x1d\x0e\xf7\x50\xf7\x44"
+"\x15\x80\x44\x68\x55\x68\x8a\x08\x7b\x80\x81\x7d\x7a\x3a\x1d\xf7\xd7\x06\xbc\xb3\xb7\xc0\x9b\x80\x96\x7c\x7c\x83\x82\x79\x89\x1f"
+"\x6e\x88\x7c\x7a\x75\x1b\xfb\x85\x06\xa3\xaa\x9c\xb6\x92\xbe\x08\xf7\x15\xf7\x0a\x0a\xfb\x12\x06\x8a\xa0\x8b\x93\x88\x9d\x08\xf7"
+"\x16\x06\x9e\x93\x92\x9c\x9b\x83\x92\x78\x1f\xfb\x21\x06\x89\x94\x8b\x8b\x80\xae\x08\x83\xa8\x86\xa4\x9b\x1a\xbf\xb7\xb6\xbf\xad"
+"\xa3\x7e\x6a\xa6\x1e\x81\x94\x90\x87\x93\x1b\x98\x98\x97\x97\x97\x7f\x9c\x76\x9e\x1f\xa5\x6d\x69\x98\x65\x1b\x3a\x4a\x4a\x3a\x71"
+"\x90\x75\xa0\x49\x1f\x46\x06\x77\x83\x84\x7a\x7b\x93\x84\x9f\x1f\xdc\x06\x8d\x82\x8c\x79\x8c\x77\x08\x36\x06\x77\x83\x84\x7a\x7b"
+"\x93\x84\x9f\x1f\x0e\xf7\xa9\xbe\x15\xf8\x3b\x07\xb9\xb6\xab\xca\xb0\xa8\x88\x83\xc5\x1e\x8a\x92\x8f\x8b\x8d\x1b\x9b\x96\x95\x9a"
+"\x98\x83\x94\x7d\x8e\x1f\x92\x6b\x46\x91\x63\x1b\x2f\x48\x55\x40\x1f\x54\x39\x52\x0a\xdd\xfb\xd1\x2f\x29\x0a\xf7\xd0\x21\x0a\x0e"
+"\xf7\xe4\xf8\x31\x15\x91\x75\x77\x8e\x76\x1b\xfb\x0b\x2c\x2c\xfb\x0a\xfb\x0a\xea\x2c\xf7\x0a\xf7\x0a\xea\xea\xf7\x0a\xdb\x5e\xd4"
+"\x45\xb0\x1f\xe3\xf7\x53\x05\x61\xaa\xaa\x6d\x95\x1b\x92\x8f\x8f\x90\x8f\x89\x8f\x85\x95\x1f\x75\xad\x78\xc0\x88\xaf\x08\x9e\x8a"
+"\x8a\x8e\x85\x1b\x87\x87\x89\x83\x81\x1f\x78\x7a\x4a\x73\x67\x88\x08\x79\x88\x87\x89\x83\x1a\x80\xa3\x84\xb2\x1e\x9f\x06\x9f\x8c"
+"\x05\x8d\x06\xfb\x31\xfb\x79\x15\xea\xd8\x40\x2f\x2d\x40\x3f\x2d\x2e\x3f\xd6\xe8\xe7\xd7\xd8\xe5\x1f\x0e\xf7\xa8\xf7\xcf\x15\xe4"
+"\xf7\x5f\x05\x98\xa9\x8d\x92\x99\x1a\xa1\x7a\x9c\x73\x6a\x80\x7a\x49\x7f\x1e\x67\xfb\x66\x05\x0e\xf7\xa6\xf7\x28\x15\x90\x7e\x7a"
+"\x8f\x7d\x1b\x57\x5d\x5e\x59\x6e\xa1\x78\xad\xd3\xbe\xc2\xda\x1f\xf7\x8b\x07\xba\x84\xb3\x4b\x46\x1a\x60\x83\x69\x77\x5e\x1e\xa2"
+"\x06\xa9\xb0\x9b\xb9\xbc\x1a\xca\x73\xc7\x59\xc7\x1e\x61\xbe\x8a\x8c\x86\x90\x85\x94\x19\xbc\x66\x07\x0e\xf7\xd8\xf8\x81\x15\xa0"
+"\x70\xa2\x76\xa3\x7e\xc8\x68\x96\x84\x90\x82\x08\x92\x7e\x8f\x78\x73\x1a\xfb\x92\x07\x92\x78\x72\x90\x76\x1b\x3f\x48\x51\x4a\x65"
+"\xaa\x73\xbd\xc3\xc0\xa4\xb5\xac\x1f\xa2\xa8\x92\xa3\x8e\xc0\x08\xf8\x22\x07\x8c\xda\x67\xdb\x59\xab\x57\xac\x18\x71\x9c\x7c\x95"
+"\x86\x8f\x08\x7d\x9b\x84\x9e\xa5\x1a\x99\x5b\xfc\xae\x07\x93\x78\x74\x8f\x76\x1b\x41\x49\x52\x49\x65\xaa\x73\xbb\xc2\xbf\xa4\xb5"
+"\xac\x1f\xa1\xa8\x92\xa3\x8e\xc0\x08\xf7\x2c\xf7\x47\x15\xfb\x0d\xcc\x71\xb4\x87\xf7\x12\x8e\x89\x18\xf7\x0d\x49\xa5\x63\x90\xfb"
+"\x12\x08\x0e\x6a\x1d\xf7\x9c\xf7\x79\x34\x0a\xf7\x63\xf8\x37\x15\x3b\x06\x74\x81\x2a\x1d\xa7\xfb\xd1\x63\x29\x0a\xf7\x18\x06\x9f"
+"\x96\x21\x1d\x77\x1f\x63\xf7\x85\x06\xd6\xc8\xa4\x9a\xc8\x1b\xaf\x9e\x85\x0a\x77\x97\x74\x70\x1a\xfb\x81\x6f\x6e\x0a\xf7\x01\x06"
+"\x9f\x97\x53\x1d\x6e\xf7\x88\x06\xd9\x45\xc7\x2f\x4e\x67\x79\x53\x56\x1e\x52\xf7\x67\x15\x92\x95\x8d\x8f\x90\x1a\x99\x7f\x97\x7d"
+"\x80\x86\x87\x7e\x82\x1e\x36\xfb\x0f\x05\x84\x81\x8a\x88\x85\x1a\x7c\x97\x80\x99\x95\x91\x8f\x98\x94\x1e\x0e\x6a\x1d\xf7\x13\xf7"
+"\x0c\xd8\x1d\x6a\x1d\xf7\x2b\xfc\x58\xb6\x0a\xf7\xda\xf7\x7c\x15\xf7\x93\xbd\xfb\x79\x06\xec\xf7\x49\x05\xf7\x18\xbe\x22\x06\x97"
+"\xa9\x96\xa1\x96\x9a\x08\x8f\x90\x8d\x8f\x8e\x1a\x96\x7e\x96\x7f\x7e\x85\x87\x7b\x83\x1e\x60\x3a\x05\xfb\x1a\xf2\x0a\xfb\x10\xb7"
+"\x3b\xe6\x63\x1e\x6e\x55\x05\x87\x83\x89\x85\x86\x1a\x7f\x97\x80\x98\x97\x92\x90\x9a\x93\x1e\xac\xca\x05\x87\xac\x8f\x8b\xb8\x1b"
+"\xf7\xba\xbe\xfb\xc6\x06\x73\x84\x8b\x8d\x7e\x1f\xb2\xf7\x47\x15\x31\xfb\x3c\x4a\xa1\x68\xc3\x87\xe0\x19\x90\x07\xf7\xd2\xf7\x7b"
+"\x15\x2a\xfb\x49\x05\xfb\x71\x90\x06\x91\xf7\x0c\xcc\xc6\xf7\x14\x88\x08\x0e\xf8\x12\xf8\x0e\x15\xba\xe5\x05\x8f\x92\x8d\x92\x90"
+"\x1a\x98\x7f\x96\x7d\x80\x84\x86\x7d\x83\x1e\x4f\xfb\x06\x05\xfb\x89\x26\x1d\xf7\x6f\x06\x5b\x31\x05\xfb\x3f\x20\x0a\xf7\x24\x06"
+"\x61\x3a\x05\x87\x84\x89\x85\x86\x1a\x7e\x97\x7f\x99\x96\x92\x90\x9a\x92\x1e\xc2\xf3\x05\xf7\x86\x27\x0a\xfb\x6b\x06\xbb\xe5\x05"
+"\xf7\x3b\x44\x0a\x0e\xf7\x3c\xf8\x35\x15\x3c\x06\x78\x81\x83\x7a\x7b\x96\x81\x9d\x1f\xb6\x06\xf7\x3f\xfc\x02\x05\xba\x06\xf7\x0d"
+"\xf7\x18\xbd\xdf\xd3\x1a\xca\x68\xd5\x6e\x7f\x7d\x7f\x80\x85\x8e\x81\x91\x81\x1e\x9d\x6c\x92\x72\x6d\x1a\x4f\x67\x47\x3f\x32\x1e"
+"\x83\x82\x86\x86\x85\x83\x08\x0e\x4b\x0a\xfb\x0e\xf7\x80\x42\x1d\x2c\x0a\x88\xf7\x5d\x55\x1d\x94\x1a\x99\xde\x1d\x83\x84\x68\x0a"
+"\x2c\x0a\xf7\x0c\xf7\x23\x15\xa0\x97\x94\x9b\x9b\x80\x94\x75\x5c\x1d\x8a\x0a\x0e\x8a\x0a\xd2\xf8\x1b\x15\x96\x94\x8e\x90\x94\x1a"
+"\x99\x7f\x97\x7d\x84\x84\x88\x83\x83\x1e\xfb\x06\xa6\x1d\x99\x91\x56\x0a\x4b\x0a\x0e\x4b\x0a\xdb\xf7\x62\x15\x95\x93\x8f\x92\x93"
+"\x1a\x99\x7f\x97\x7e\x83\x85\x88\x83\x82\x1e\xfb\x05\x2b\x05\x80\x82\x87\x85\x83\x1a\x7d\x97\x7f\x99\x92\x92\x8e\x93\x93\x1e\x0e"
+"\xcf\x8e\x15\xf8\x66\xb5\xfc\x3c\xf8\x3c\x61\x06\x0e\x8d\x0a\x82\xf7\x82\xb8\x0a\xf7\x2b\xf8\xbc\x15\x7d\x8c\x95\x82\x9a\x1b\xac"
+"\x8c\x05\xbb\xc4\x77\x6c\xb5\x1f\xa8\x76\x9e\x76\xa7\x60\x08\xa7\x5f\x66\x96\x57\x1b\xfb\x16\x24\x28\xfb\x11\xfb\x11\xf2\x27\xf7"
+"\x17\xf7\x15\xf3\xee\xf7\x10\xe9\x64\xf7\x00\x4e\xd1\x1f\xcb\x55\x33\xb0\x29\x1b\x70\x88\x8a\x84\x84\x1f\x87\x87\x89\x84\x84\x1a"
+"\xf7\x27\xfb\x40\xe0\x0a\xf7\x3f\xf7\x77\x15\xa5\x06\xf7\x08\xe7\xd5\xea\xe9\x36\xd4\xfb\x01\x1f\xfb\x21\x76\x1d\xf7\x1a\x06\xba"
+"\x8b\x8b\x8f\x91\x1f\x93\x8f\x90\x94\x94\x5b\x0a\x49\x06\xf7\x76\x04\xf7\x7f\xb6\x07\xd8\xc9\x57\x4b\x4a\x46\x55\x37\x1f\xf7\xa4"
+"\x78\x15\xc6\x07\x9b\x83\x94\x7d\x7d\x83\x82\x7b\x1e\x50\x76\x07\x7a\x82\x84\x7d\x7e\x95\x83\x9b\x1f\xa0\xfb\x25\x06\x4c\x9a\x7a"
+"\xc0\xae\xa8\xa1\xa5\x96\x81\x94\x7f\x84\x86\x88\x82\x86\x1e\x7f\x84\x88\x89\x7e\x1b\x75\x87\x91\xac\x1f\xf7\x24\xba\x07\x9b\x95"
+"\x93\x98\x99\x82\x92\x7a\x1f\x0e\xf7\x8b\xfb\x23\x15\x72\x94\x7d\x9c\x9c\x94\x98\xa5\x1e\xf7\x14\x07\x8a\x90\x92\x8b\x91\x1b\xf7"
+"\x18\xeb\xec\xf7\x18\xf7\x0d\x3b\xee\x29\x63\x6a\x7a\x6b\x76\x1f\x78\x6f\x84\x67\x3f\x1a\xfb\x5f\x07\x6e\x94\x7d\x91\x7a\x96\x08"
+"\x59\xaa\x70\xc1\xd0\x1a\xd2\xa9\xc3\xc0\xa8\x1e\xa1\x97\x92\x93\x97\x1a\x99\x82\x95\x7e\x74\x62\x6f\x66\x6e\x1e\x6a\x63\x7b\x5a"
+"\x50\x1a\xfb\x10\xd0\x36\xf7\x0c\x75\x1e\xbf\xf7\x93\x15\xf2\x9c\xae\xbe\xcf\xc5\x3e\x31\xfb\x02\x42\x48\xfb\x0d\x88\x1e\x0e\xf8"
+"\x5e\xf8\x04\x15\xb3\x29\x1d\xfc\x1f\x25\x1d\xb3\xfb\xd1\x63\x25\x1d\xf7\x17\x22\x0a\x64\xf7\xd1\xf7\x67\xfb\xd1\x64\x36\x1d\xf7"
+"\x17\x29\x1d\x63\x06\x0e\xf8\x7d\xf8\xe3\x15\xbc\x6c\x0a\xfc\x71\xf7\x27\x1d\xbc\xfd\x02\x5a\xf7\x27\x1d\xf7\x2b\x6c\x0a\x59\xf9"
+"\x02\xf7\xa6\xfd\x02\x5a\x06\x7b\x8c\x80\x81\x8a\x7c\x08\x88\x07\x8c\x7c\x96\x81\x9b\x8c\x08\xf7\x2b\x6c\x0a\x5a\x06\x0e\xf7\xe9"
+"\xf8\x64\x15\xfb\x2b\x65\x86\x71\x5e\x1f\x46\x62\x61\x3f\x37\x1a\x3e\xad\x46\xc8\x5f\x1e\x67\xbd\xae\x85\xf7\x39\x1b\xf7\x56\x06"
+"\xa0\x99\x95\x9b\x9b\x7f\x94\x74\x1f\xfb\x58\x06\xfb\x14\x60\x90\x9e\x68\x1f\x54\xa8\x65\xcb\xcb\x1a\xc5\xab\xc7\xba\xaa\x1e\xa6"
+"\xb3\xb0\x90\xf7\x23\x1b\xf7\x58\x06\xa1\x98\x95\x9b\x9b\x7e\x94\x75\x1f\x0e\xf7\x74\x16\xf7\x2d\xb0\x90\xa5\xb8\x1f\xd0\xb4\xb5"
+"\xd7\xdf\x1a\xd8\x68\xd0\x4f\xb7\x1e\xaf\x59\x67\x91\xfb\x39\x1b\xfb\x55\x06\x75\x7e\x82\x7b\x7b\x98\x81\xa1\x1f\xf7\x58\x06\xf7"
+"\x16\xb3\x86\x78\xaf\x1f\xc2\x6f\xb1\x4a\x4b\x1a\x51\x6b\x50\x5b\x6b\x1e\x71\x65\x63\x85\xfb\x21\x1b\xfb\x58\x06\x74\x7f\x82\x7b"
+"\x7c\x99\x80\xa0\x1f\x0e\xf7\xda\xf8\xce\x15\x9f\x82\x97\x7a\x7a\x82\x7f\x77\x1e\xfc\xaa\x07\x36\x90\x70\xac\x8e\xeb\x08\xf7\x8d"
+"\x27\x78\x0a\xbb\xfb\x5a\x06\x8c\xfb\x14\xb9\x56\xf7\x06\x87\x08\xfb\x1b\x07\x27\x1d\xf7\x1b\x07\xf7\x07\x90\xba\xc1\x8a\xf7\x12"
+"\x08\xf7\x5a\xbb\x07\x32\x0a\x27\xfb\x8d\x06\x8c\x28\x73\x6d\x35\x86\x08\x0e\xf8\x5f\xf7\x3f\x15\x65\xbd\x7b\x9b\x69\xa3\x08\xe1"
+"\xa8\xba\xbe\xcb\x1a\xe0\x36\xd4\x27\x1e\xfb\x8d\x9c\x0a\xf7\x57\xf7\x12\x06\xb3\x79\xb3\x6a\xaa\x61\x41\x71\x18\x7a\x85\x85\x84"
+"\x7d\x1a\x7f\x96\x7f\x98\x8f\x90\x8c\x8e\x92\x1e\xe2\xaa\x9c\x70\x97\x76\xa9\x57\x19\x91\x80\x05\xc6\x21\x0a\x70\x06\x71\xb7\x83"
+"\x98\x7e\xa0\xe0\xa9\x18\x9c\x91\x91\x92\x98\x1a\x97\x80\x97\x7f\x87\x82\x89\x8a\x87\x1e\xfc\x15\xe6\x15\xf7\x2a\x1d\x0e\x6b\x1d"
+"\xf7\x4a\xf7\x9b\xb7\x0a\xf7\x2e\xf7\xd1\x15\x22\x06\x79\x8c\x80\x82\x8a\x7a\x08\x8a\x07\x8c\x7a\x96\x82\x9d\x8c\x08\xc7\x06\xe4"
+"\xfb\xb0\xf7\x85\xf9\x2f\x05\xf7\x3b\x06\x9c\x98\x96\x9a\x9b\x80\x94\x78\x1f\xfb\x66\x06\xfb\x55\xfc\xcc\x05\x0e\x6b\x1d\xb8\xf7"
+"\x2e\xaf\x0a\x6b\x1d\xa8\xfc\x36\x3c\x0a\x91\x1a\x98\x7f\x97\x7d\xf7\x02\x1d\xf7\x0b\xf8\x19\x15\xf8\x12\x27\x0a\xfc\x46\xfb\x88"
+"\x06\x39\x1d\x96\x9f\x1e\x0e\xf7\x28\xd1\x15\x51\xbf\xc4\x6f\xd0\x1b\xf7\x0c\xee\xf1\xf7\x0f\xc5\x77\xc1\x66\xb6\x1f\xba\x62\x57"
+"\xa1\x47\x1b\x4a\x52\x76\x65\x62\x1f\x5d\x61\x75\x4c\x32\x1a\xfb\xde\x2b\x0a\xf7\x42\xf8\xa8\x15\xf1\xd0\x46\x25\x2a\x40\x3c\x2e"
+"\x56\x58\xa5\xb7\x66\x1f\x73\xa9\x7f\xae\xb5\x1a\xee\xd4\xd2\xf0\x1e\x0e\x3e\x0a\xf7\xb3\xf8\x71\xf7\x00\x1d\x97\xf7\x48\x1d\xf7"
+"\xd2\x7c\x15\xf7\x05\x92\xd3\xbf\xd6\x1a\xaf\x77\xae\x6b\xa0\x1e\x6a\xa1\x66\x96\x4d\x91\x33\x91\x1d\xd3\x7e\x0a\x93\x82\x5c\x0a"
+"\xcf\x07\xa0\x82\x96\x7b\x7d\x81\x81\x7c\x89\x1e\xa5\x69\x5e\x98\x55\x1b\x26\x40\x5a\x48\x6a\x9d\x6c\x9a\x1d\xa5\x85\xa5\x7c\x08"
+"\xa4\x7e\x9b\x74\x77\xf7\x0f\x0a\x92\x07\x9b\x80\x96\x7c\x7a\x82\x80\x76\x1e\x3a\x07\x76\x94\x80\x9c\x9b\x94\x96\x9f\x1e\xa8\x73"
+"\xb3\x7b\xbe\x86\x08\x4a\xa5\x07\xa6\x99\x84\x7e\x7e\x7b\x82\x74\x7d\x7c\x8f\x95\x77\x1f\x90\x82\x88\x8c\x85\x47\x1d\x85\x9b\x83"
+"\x1f\x81\x9f\xaa\x93\x1d\x0e\x3e\x0a\xf7\x2a\xf8\xa3\x3c\x1d\x99\x91\xae\x1d\x84\x94\x90\x89\x92\x1b\x99\x96\x96\x99\x95\x88\x90"
+"\x7f\x95\x1f\x0e\x3e\x0a\xf7\x42\xfb\x60\x15\x91\x95\x8d\x8f\x90\x1a\x9a\x80\x96\x7c\xf7\x02\x1d\xf7\x52\xf7\xcf\x15\xe4\xf7\x5f"
+"\x05\x98\xa9\x8d\x92\x99\x1a\xa1\x7a\x9c\x73\x6a\x80\x7a\x49\x7f\x1e\x67\xfb\x66\x05\xf7\x52\x16\xe5\xf7\x5f\x05\x98\xa8\x8d\x93"
+"\x99\x1a\xa1\x79\x9c\x74\x6a\x80\x7a\x49\x7f\x1e\x67\xfb\x66\x05\x0e\xf8\xbc\xf8\x12\x15\x9d\x96\x95\x9a\x9b\x80\x95\x79\x1f\xfb"
+"\x6c\x06\x3e\x6c\x84\x71\x5d\x1f\x44\x62\x5f\x42\x3d\x1a\xfb\x11\xf3\x28\xf7\x16\xf7\x15\xf3\xee\xf7\x11\xd2\x6f\xc1\x4c\xbc\x1e"
+"\xfb\x25\x16\xf7\x25\x1d\x0e\xf7\x6d\xf8\x23\x15\x75\x79\x7a\x75\x76\x9c\x79\xa1\xa1\x9c\x9c\xa1\xa0\x7a\x9d\x76\x1f\xf7\x41\x8c"
+"\x15\x75\x79\x79\x76\x75\x9d\x79\xa1\xa0\x9d\x9d\xa0\xa1\x79\x9d\x76\x1f\xe9\x37\x15\x82\x64\x83\x7b\x77\x73\x08\x61\x66\x5c\x77"
+"\x4d\x1b\x4c\x5d\x9f\xb5\x66\x1f\x77\xa3\x83\x9b\x82\xb2\x90\x48\x93\x6c\xa2\x68\x08\x5b\xac\xbd\x72\xcb\x1b\xc6\xba\xa0\xb4\xab"
+"\x1f\xa8\xb0\x96\xae\x90\xd3\x08\xfb\x47\xf7\x8b\x15\xfb\x33\xfb\x13\xfb\x10\xfb\x2f\xfb\x32\xf7\x11\xfb\x12\xf7\x31\xf7\x2f\xf7"
+"\x12\xf7\x12\xf7\x30\xf7\x2d\xfb\x12\xf7\x14\xfb\x2b\x1f\x83\x66\x15\xf7\x1d\xf7\x03\xfb\x00\xfb\x1b\xfb\x1d\xfb\x01\xfb\x01\xfb"
+"\x1c\xfb\x1b\xfb\x01\xf7\x01\xf7\x1c\xf7\x19\xf7\x02\xf7\x03\xf7\x17\x1f\x0e\xf7\x22\x16\xf8\x09\x9d\x06\xfb\x11\x91\x51\xcd\x8d"
+"\xf7\x17\x08\x4a\xad\xaf\x72\xc3\x1b\xc1\xb8\xba\xc5\xc0\x77\xaa\x38\xd7\x1f\x37\xd8\x7c\xa1\x6d\xe5\x7f\x44\x5c\x47\x3a\x4a\x08"
+"\x4d\x58\x70\x5f\x5a\x1a\x51\xba\x5b\xc4\xc3\xb3\xa8\xc8\xa8\x1e\xfb\x14\x90\x47\x40\xfb\x0e\x1b\x0e\xf8\x55\xf8\x94\x15\x93\x21"
+"\x05\x7d\x93\x82\x99\x89\x1e\x90\x06\x9a\x8d\x92\x94\x9b\x1a\xf7\x14\x07\x9e\x82\x94\x78\x8a\x1e\xfb\xeb\x06\x7a\x8c\x81\x82\x8a"
+"\x7b\x08\x7e\x07\x80\x8b\x8a\x92\x82\x1e\xf7\x45\xfb\x8c\xfb\x47\xfb\xd7\x05\x86\x83\x8b\x8a\x82\x1a\x7c\x07\x7a\x95\x83\x9d\x1e"
+"\xf7\xf2\x06\x9e\x94\x94\x9e\x1f\xf7\x14\x07\x9b\x84\x94\x7c\x8d\x1e\x85\x06\x7d\x89\x84\x82\x8a\x7c\x87\x21\x18\xfb\xb9\x06\xf7"
+"\x45\xf7\xcd\x05\x8f\x92\x8c\x8e\x8f\x1a\x91\x89\x8f\x86\x92\x1e\xfb\x3d\xf7\x85\x05\x0e\xf7\x23\xf8\x2b\x15\x73\x6d\x7c\x68\x87"
+"\x65\x08\x2c\x5e\xeb\x06\x8f\x64\x99\x68\xa2\x6e\x48\x48\x18\xab\x6b\xce\xcf\xa9\x73\xab\x7e\xb4\x85\x19\x2c\xb8\xea\x07\xb4\x91"
+"\xad\x99\xa7\xa2\xce\x47\x18\xab\xab\x48\xcf\xa1\xa4\x9a\xaf\x90\xb4\x19\xeb\xb8\x2b\x06\x86\xb3\x7c\xaf\x75\xa6\xce\xce\x18\x6b"
+"\xab\x48\x48\x70\xa1\x63\x9b\x67\x8f\x19\xea\x5e\x2d\x07\x67\x87\x62\x79\x72\x75\x47\xcf\x18\x6b\x6b\x05\xf7\x72\x5d\x15\xdc\xcc"
+"\x4c\x3c\x3a\x4b\x4b\x3b\x3c\x4b\xcb\xda\xda\xcb\xcc\xd8\x1f\x0e\xf7\xcf\xf8\x04\x15\xf7\x11\x06\xa0\x96\x94\x9c\x9c\x81\x93\x75"
+"\x1f\xfb\xc5\x06\x77\x7f\x81\x7c\x7b\x97\x81\x9f\x1f\xf7\x14\xfb\xcb\x06\x6a\x90\x7e\x9c\x7f\x1e\x82\x99\xa0\x86\xa9\x1b\xc4\xb4"
+"\x9c\xa3\x98\x82\x96\x7f\x87\x89\x8a\x8a\x88\x1f\x7f\x70\x82\x89\x74\x1b\x68\x82\x93\xa8\x1f\x0e\xf7\x54\xf7\xc0\x15\xcf\xf7\x6a"
+"\x07\x4f\x1d\xfb\x6a\xf7\x04\x06\x8e\x1d\x47\x53\x06\x3b\x0a\xc3\xfb\x1f\x06\x3f\xca\x59\xed\xba\xc3\x96\x9d\xbb\x1e\xb0\x99\x9b"
+"\x98\x9a\x1a\x99\x80\x96\x7d\x86\x87\x8a\x85\x82\x1e\x75\x64\x46\x7b\x54\x1b\x49\x62\xa9\xbb\x1f\xf7\x1c\xf7\x49\x07\xa0\x97\x45"
+"\x0a\x0e\x83\x1d\xef\xf7\x2b\x15\x91\x93\x8d\x91\x90\x1a\x99\x7f\x97\x7d\x81\x85\x87\x7e\x82\x75\x0a\x96\x80\x9a\x95\x90\x8e\x99"
+"\x94\x1e\x0e\xf7\xb3\x7c\x15\x8a\x90\x8d\x8b\x91\x1b\xbb\xc2\x96\x9d\xbd\x1f\xaf\x99\x9b\x98\x9a\x1a\x99\x80\x96\x7d\x86\x87\x8a"
+"\x85\x82\x1e\x75\x65\x45\x7b\x54\x1b\x49\x62\xa8\xbb\x1f\xf7\x94\xf7\x6b\x07\x54\x0a\xfb\x6b\xf7\x04\x06\x8e\x1d\xfb\x96\x06\x8a"
+"\x53\xb0\x5e\xc9\x7a\x08\x36\xa5\x07\xa6\x99\x84\x7e\x7d\x3a\x0a\x96\x76\x1f\x90\x82\x87\x8c\x86\x47\x1d\x84\xa0\x1d\xb2\x73\xa3"
+"\x62\x8e\x1f\x0e\xf7\xc4\xf8\xef\x15\xfb\x17\x33\xfb\x10\xfb\x4d\xfb\x4a\xe3\xfb\x13\xf7\x13\xf7\x13\xe4\xf7\x14\xf7\x49\xf7\x49"
+"\x33\xf7\x14\xfb\x10\x1f\xfb\x3b\xfb\xb0\x15\xf7\x22\x8f\xcb\xe6\xeb\x1b\xe9\xca\x31\xfb\x23\x90\x1f\x58\x04\xfb\x20\x88\x4a\x2f"
+"\x2c\x1b\x2c\x4b\xe7\xf7\x20\x87\x1f\x0e\xf8\x0a\xf8\xe0\x88\x1d\x28\x0a\xfb\x96\xf8\xc4\x42\x1d\x28\x0a\xfb\x0b\xf8\xa1\x15\x95"
+"\x94\x8e\x90\x93\x1a\x9a\x80\x96\x7d\xf7\x0d\x0a\x80\x89\x87\xa8\x0a\x28\x0a\x7b\xf8\x67\x2d\x0a\xf8\xdd\xfb\x89\x60\x1d\xfc\xce"
+"\x06\x76\x80\x82\x7b\x79\x96\x83\xa0\x1f\xf8\xce\x43\x15\x74\x0a\xfc\xce\x06\x76\x80\x82\x7a\x7a\x96\x83\xa0\x1f\x0e\x0e\xc9\x0a"
+"\x62\x0a\x25\xfb\x24\x3c\x0a\x91\x1a\x99\x7f\x96\x7d\xf7\x03\x1d\x83\x1d\x39\xfc\x94\x87\x1d\xf8\x36\xf8\xa1\x2d\x0a\x67\x0a\xf8"
+"\xbf\x16\xfb\x71\xf8\xc7\x05\x3e\x06\xfb\x68\xfc\xc7\x05\xf8\x44\xbe\x15\xfb\xfb\x06\xf7\x42\xf8\x61\x05\x92\x06\x0e\xf8\x34\xbe"
+"\x15\xec\xc2\xc6\xeb\xf2\x1a\xf7\x2d\xfb\x0a\xf7\x09\xfb\x2e\xfb\x2e\xfb\x0a\xfb\x09\xfb\x2d\xf7\x28\x1d\x81\xa0\x1f\xf7\x62\xbc"
+"\x06\x53\xab\x7b\x95\x76\x9e\x08\x50\xc0\x6d\xcb\xd3\x1a\xd3\xa7\xc6\xc3\xb9\x1e\xad\xb3\xb4\x99\xc3\x1b\xc3\xb4\x7d\x69\xb3\x1f"
+"\xc3\x5d\xa7\x50\x43\x1a\x47\x71\x50\x57\x57\x1e\x71\x72\x7b\x80\x4d\x68\x08\x5a\xf7\x62\x07\xa0\x98\x95\x9b\x9c\x80\x93\x74\x1f"
+"\x0e\xf8\x3e\xf8\x04\x15\xfb\x46\x07\x29\x5b\x52\x38\x64\x67\x9d\xa9\x72\x1e\x7b\xa1\x84\xa9\xc2\x1a\xf7\x79\x27\x07\x75\x80\x38"
+"\x1d\xbb\xfc\x9a\x06\x27\x1d\xf7\x4c\x07\x67\xb1\xad\x7d\xbd\x1b\xbf\xb1\x9b\xb4\xb5\x1f\x62\xee\x07\x32\x0a\x5b\xf8\x04\x27\x2e"
+"\x0a\x0e\xf8\x71\xf8\x1f\x15\xa5\x5f\x5f\x97\x55\x1b\xfb\x20\x2a\x2a\xfb\x20\x45\xa6\x4b\xb7\x67\x1f\xaa\x72\xb1\x7d\xc7\x84\xbc"
+"\x85\xa0\x87\x94\x88\x08\x9d\x84\x98\x7c\x7b\x1a\x7a\x80\x79\x79\x80\x1e\x7d\x82\x79\x87\x6d\x8a\x08\x75\x80\x82\x7b\x79\x97\x83"
+"\xa4\xda\xc7\xbb\xc9\xab\x78\xab\x6e\x9a\x1f\x7b\x93\x70\x91\x51\x94\x56\x92\x6d\x94\x76\x9b\x08\x67\xa6\x76\xbf\xc5\x1a\xf7\x02"
+"\xd6\xd4\xf7\x06\xb7\xb2\x80\x76\xa5\x1e\x98\x81\x95\x79\x95\x6b\x08\x70\x93\x90\x86\x9c\x1b\x9a\x95\x95\x9b\x8e\x8b\x8b\x89\x9b"
+"\x1f\x8f\x07\x8a\x92\x8a\x96\x93\x1a\x91\x8c\x98\x8d\x9d\x1e\x8d\xa6\x8b\x8c\x91\x1a\x9d\x82\x96\x7b\x7f\x83\x85\x7e\x85\x1e\x0e"
+"\x25\x0a\xa6\xf9\x66\x15\x94\x81\xad\x1d\x86\x96\x81\x1f\xf7\x06\x2a\x05\x83\x94\x91\x88\x92\x1b\x9a\x96\x96\x9a\x92\x8a\x8d\x83"
+"\x93\x1f\x86\x91\x05\x0e\x5e\x0a\xf7\x17\xf7\x99\x15\x94\x82\x86\x8d\x83\x1b\x7d\x80\x80\x7d\x82\x8f\x85\x94\x82\x1f\xf7\x07\x2a"
+"\x05\x83\x94\x90\x88\x92\xf7\x3b\x1d\x85\x91\x05\x0e\xf7\xbe\xc3\x15\xfb\x47\xf8\x5c\x05\xcf\x44\x1d\xfb\x2b\x22\x1d\xa7\x06\xf7"
+"\x5c\xfc\x94\x05\xca\x06\xf7\x48\xf8\x33\x9c\xb9\x8d\x8e\x95\x95\x19\x94\x93\x95\x8f\x96\x1b\x93\x91\x89\x83\x99\x1f\x7f\xa2\x97"
+"\x86\x98\x1b\xa1\x9f\xa1\xa3\xad\x6a\xa3\x5b\x69\x70\x81\x75\x72\x1f\x74\x76\x87\x85\x73\x52\x08\x0e\x82\x1d\xf7\x3e\xf9\x06\x15"
+"\x94\x82\xad\x1d\x85\x96\x82\x1f\xf7\x06\x2a\x05\x82\x94\x90\x89\x92\x1b\x9a\x96\x96\x9a\x92\x8a\x8d\x84\x64\x1d\xf7\x3f\xf7\x9e"
+"\x15\xf7\x25\xbe\xfb\x25\xf7\x57\xf7\xc3\x30\x06\x27\x1d\xf7\x22\xfc\x5c\x07\x20\x1d\xbc\xfb\x57\x48\x58\xce\xfb\x6b\x5a\x20\x0a"
+"\xf7\x7e\x21\x0a\xfb\x19\x06\x0e\xf7\x57\xf7\x87\x15\xfb\x54\xd3\x0a\xf7\x54\xe6\x06\xa0\x96\x94\x9b\x9b\x7f\x94\x77\x1f\x30\xd6"
+"\xf7\x7e\xfb\x2c\x06\x76\x94\x80\x9c\x9c\x94\x96\xa0\xf7\x26\x1d\x40\x53\x06\x66\x1d\x0e\xf8\xaf\xbe\x15\x53\xf7\x1b\x71\xc7\x6c"
+"\xb7\x6f\x9b\x19\x97\x99\xa6\xba\xa3\xbf\xae\xd4\x98\x9d\xa0\x8e\x08\x5d\x07\x76\x95\x7f\x9b\x9c\xf7\x0b\x1d\xf7\x4d\xa5\x2f\x1d"
+"\x24\x3b\x1d\xa4\xfb\x4d\x86\x06\x74\x8c\x7f\x9c\x5c\xeb\x08\xf6\x57\x7a\x9a\x4b\x1b\x70\x84\x83\x6c\x1f\x55\x07\x73\x94\x7f\x9c"
+"\x9b\x95\x97\xa0\x1e\xb9\x07\xa0\x88\x95\x7d\xb1\x3e\xa4\x55\xa4\x60\x98\x7c\x6f\x7a\x6c\x60\x71\x4e\x53\xfb\x1b\x18\x70\x2a\x0a"
+"\xab\x06\xa8\x8c\x8d\x8c\x96\xa5\xc4\xf7\x1d\x18\xab\xd4\xaf\xb4\xa9\x88\x08\x94\xfb\x75\x72\x3b\x1d\xf2\x2f\x1d\x71\xf7\x75\x94"
+"\x06\xaa\x8e\xaf\x62\xab\x42\xc4\xfb\x1d\x18\x96\x70\x8c\x8b\xa9\x8a\x08\xa1\x5e\x1d\x8a\xad\x87\x8f\x69\x8c\x08\x0e\xf8\xa4\xbe"
+"\x15\x57\xe5\x72\xb6\x6e\xad\x73\x99\x19\x93\x92\xa2\xa9\x98\xa0\xb4\xcc\x96\x96\xa5\x8d\x08\x73\x07\x76\x95\xf7\x32\x1d\x6c\x52"
+"\x79\x7e\x40\x5a\x1e\x5d\x46\x80\x80\x74\x8a\x08\x87\xf7\x0a\xa1\x24\x1d\x2a\x3b\x1d\xa2\xfb\x0a\x87\x06\x73\x8d\x7c\x99\x6b\xbf"
+"\x08\xe1\x55\x77\x9a\x4e\x1b\x6e\x84\x83\x6c\x1f\x6a\x07\x74\x94\x7f\x9c\x9c\x94\x96\xa0\x1e\xa3\x07\xa3\x89\x94\x82\xaf\x56\xa1"
+"\x67\x9d\x74\x99\x7e\x70\x79\x6e\x6b\x74\x62\x58\x31\x18\x72\x06\x35\x1d\xa7\x06\xa6\x8c\x8c\x8b\x99\xa3\xbf\xe8\x18\xac\xc2\xac"
+"\xa7\xa9\x89\x08\x93\xfb\x28\x74\x06\x35\x1d\xec\x24\x1d\x75\xf7\x28\x93\x06\xa8\x8d\xad\x6f\xab\x54\xc0\x2e\x18\x93\x7d\x90\x84"
+"\x8f\x8a\x08\x89\x8d\x97\x8a\x98\x1b\x9d\x06\x8c\x49\x05\x74\x24\x0a\xa4\x1e\xd5\x07\xab\x84\x90\x65\x8f\x1e\x0e\xf7\xd3\x7c\x15"
+"\xc2\x8d\xb9\x95\xa8\x9b\x08\xc2\xaa\xab\xbf\xc6\x1a\xd0\x64\xb9\x3d\xa2\x1e\xcb\xa5\xab\xb7\xc7\x1a\xe5\x3a\xc9\xfb\x08\x4b\x5a"
+"\x7a\x64\x5b\x1e\x86\x85\x88\x8a\x89\x1b\x86\x87\x93\x9b\x88\x1f\xa1\x87\x83\x95\x7c\x1b\x7d\x82\x82\x7c\x82\x8b\x81\x8c\x7d\x1f"
+"\x8c\x85\x8b\x87\x82\x1a\x8c\x68\x05\x87\x07\x84\x07\x8a\x7b\x05\x8a\x89\x8b\x8a\x8a\x1a\x8a\x8b\x89\x8a\x87\x1e\x8a\x80\x89\x78"
+"\x84\x1a\x7c\x94\x82\x9a\x98\x93\x93\x9c\x8f\x1e\xe8\xa0\xc6\xba\xeb\x1b\xe8\xc7\x63\x4c\x73\x83\x76\x7c\x7b\x1f\x6f\x71\x43\x78"
+"\x38\x1b\x70\x33\x1d\xa6\x06\xe6\xb9\x85\x7b\xaa\x1f\xaf\x78\xa0\x6c\x67\x1a\x6a\x7b\x6c\x70\x76\x1e\x74\x6c\x60\x80\x4b\x1b\x42"
+"\x57\x9b\xb6\x42\x1f\x90\x83\x85\x8d\x84\x1b\x7f\x7d\x7e\x7e\x65\xf7\x08\x5b\xef\x87\x1f\x4b\xa5\x07\xa6\x99\x84\x7e\x7e\x3a\x0a"
+"\x95\x76\x6d\x0a\xab\x83\xa0\x73\x1d\xf7\xda\x7c\x15\xf7\x1b\x8e\xd6\xba\xdd\x1a\xbc\x67\xb6\x59\x96\x1e\x81\x8e\x05\xc0\xa1\xa1"
+"\xa7\xb7\x1a\xd1\x3f\xb9\xfb\x0a\x40\x51\x78\x66\x62\x1e\x9c\x07\xa4\x81\x99\x7a\x7b\x82\x7d\x72\x1e\x23\x07\x7a\x93\x81\x9a\x99"
+"\x92\x94\xa0\x91\xce\x0a\x71\x7d\x81\x7a\x7b\x99\xc3\x0a\x77\xa8\x79\xc2\x7d\x1f\xba\x7e\xaf\x85\xb5\x89\x08\x4a\xa5\x07\xa6\x99"
+"\x84\x7e\x7e\x3a\x0a\x95\x76\x6d\x0a\xab\x83\xa0\x73\x1d\xf8\x80\xbe\x15\x45\xf7\x1b\x69\xcb\x66\xb6\x6a\x99\x19\xa8\xaa\x92\x96"
+"\xb5\xd0\xbe\xe0\x94\x93\xb6\x8d\x08\x60\x07\x77\x0a\xac\x84\x92\x67\x41\x75\x7a\x23\x4d\x1e\x4c\x23\x80\x81\x51\x89\x08\x72\xf7"
+"\x4d\xba\x2f\x1d\xfb\x25\x4c\x1d\xb9\xfc\x61\x5d\x2a\x0a\xf7\x25\x06\xa4\x99\x94\x9c\x9b\x7d\x94\x72\x1f\x5c\xf7\x75\xa4\x06\xdc"
+"\x89\xa6\x77\xbc\x31\xf7\x47\x1d\xbd\x29\x06\x73\xf7\x06\x0a\x8a\xad\x87\x8f\x68\x8c\x08\x0e\xf8\x74\xbe\x15\x4a\xe6\x5c\xcc\x7f"
+"\x95\x65\x98\x19\xa0\x9c\x9c\x9d\xa9\xaf\xbf\xc9\x91\x8e\xb5\x8d\x08\x5e\x07\xbb\x1d\xb9\x4c\x06\x73\x95\xf7\x41\x1d\xab\x86\x90"
+"\x6d\x8d\x08\x0e\xf7\x92\xf7\xa5\x15\xc1\x83\xa4\x75\xb5\x3c\x8f\x1d\x93\x96\xb4\xf5\x0a\x60\x07\x77\x0a\xaa\x83\x93\x6b\x3d\x79"
+"\x7d\x21\x4a\x1e\x58\x36\x79\x76\x70\x86\x08\xf7\x0b\x07\xa0\x82\x84\x0a\xfb\x10\x81\xf7\x4d\xba\x07\xa5\x7f\x0a\x71\x1f\xfb\x25"
+"\x4c\x1d\xb9\xfc\x61\x5d\x2a\x0a\xf7\x25\x06\x52\x1d\x5c\xf7\x75\x95\xfb\x12\xf7\x04\x0a\xf7\x97\xf7\x58\x15\xbb\x84\xa3\x7b\xaf"
+"\x57\xcf\x28\x18\x96\x7a\x91\x87\xa4\x8a\x08\xc4\x24\x1d\x55\x06\x4a\xe6\x5c\xcc\x7f\x95\x65\x98\x19\x9e\x9a\xa1\xa2\xa6\xac\xbe"
+"\xc8\x92\x90\xb5\x8c\x08\x5e\x07\x39\x1d\x97\xa1\x1e\xc1\x07\xab\x83\x92\x65\x47\x7a\x80\x2b\x3a\x1e\x6c\x66\x79\x7c\x79\x86\x08"
+"\xcb\x07\xa0\x82\x96\x7b\x7a\x82\x7f\x77\x1e\x46\x7b\xf7\x0a\xb6\x07\xa5\x99\x94\x9c\x9b\x7e\x94\x70\x1f\xfb\x1e\x33\x1d\xb6\xfb"
+"\xd1\x60\x33\x1d\xf7\x1e\x06\x52\x1d\x60\xf7\x28\x9b\x3c\xf7\x04\x0a\xf7\x53\xf8\x94\x15\xbb\x29\x1d\xfb\x7e\xfb\x5f\x06\x27\x1d"
+"\xf7\x2c\xdd\xfc\x61\x5e\x37\x0a\xf7\x24\x36\x0a\x5c\xf7\x75\xa4\x06\xdc\x89\xa6\x77\xbc\x31\x8f\x1d\x92\x96\xb5\xf5\x0a\x60\x07"
+"\x77\x0a\xaa\x83\x93\x6b\x3d\x78\x7c\x22\x4b\x1e\x4c\x22\x80\x82\x51\x89\x08\x72\x06\x0e\xd0\xf8\x04\x15\xd9\xfb\xd1\x60\x2a\x0a"
+"\xf7\x1e\x24\x1d\x60\xf7\x28\xa3\x06\xda\x8a\xa8\x7c\xb7\x4d\xcf\x28\x18\x95\x7a\x92\x87\xa4\x8a\x08\xc4\x24\x1d\x55\x06\x4a\xe6"
+"\x5b\xcc\x80\x95\x65\x98\x19\x9e\x9b\x9f\xa0\xa8\xad\xbf\xc9\x91\x8f\xb5\x8c\x08\x5e\x07\x39\x1d\x97\xa1\x1e\xc1\x07\xab\x83\x92"
+"\x65\x49\x77\x7f\x3c\x48\x1e\x50\x44\x82\x86\x53\x89\x08\x73\xf7\x0a\xbc\x06\x9f\x98\x95\x9a\x9c\x46\x0a\xfb\x7b\xfb\x22\x06\x27"
+"\x1d\x0e\xf8\x77\xbe\x15\xf8\x61\x9f\x07\xa0\x97\x94\x9c\x9c\x80\x93\x75\x89\x1d\xf7\x96\xfb\x6b\x5b\x29\x0a\xf7\x11\x27\x06\x74"
+"\xf7\x06\x0a\xab\x84\x92\x6e\x8c\x1e\x0e\xf8\x71\xbe\x15\xf7\xd1\xa4\x07\x32\x0a\x25\xc5\x1d\xf7\x8e\xfb\x23\x63\x06\x76\x7f\x59"
+"\x0a\xf7\x08\x8a\x05\x4b\x07\x74\x24\x0a\xa3\x1e\xd5\x07\xa0\x87\x95\x82\x8f\x1e\x90\x82\x87\x8c\x80\x1b\x0e\xf7\xdc\x7b\x15\xbe"
+"\x8c\xbe\x9c\xb5\xa9\x08\xb2\xa7\xa8\xac\x9b\x1a\x99\x81\x95\x7c\x82\x86\x88\x83\x83\x1e\x4d\x55\x5b\x72\x47\x1b\xfb\x07\x29\xed"
+"\xf7\x08\x1f\xd0\x07\xf7\x06\xe2\xe7\xf7\x01\xe1\xd7\x5a\x51\x90\x1e\xf1\x1d\x48\x4e\x71\x5b\x5d\x1f\x5f\x5c\x6e\x46\x4e\x1a\x3a"
+"\x07\xfb\x0b\xef\xfb\x07\xf7\x0d\x76\x1e\x47\xa5\x07\xa6\x99\x84\x7e\x7d\x3a\x0a\x96\x76\x1f\x90\x82\x87\x8c\x86\x47\x1d\x84\xa0"
+"\x1d\xb2\x73\xa2\x62\x8f\x1f\x0e\xf7\xe2\x7c\x15\xba\x8f\xb7\x97\xb0\x9d\x08\xbb\xa3\xaa\xa8\x9e\xda\x0a\x58\x4f\x74\x43\x1b\x21"
+"\x40\xd1\xf0\xf4\xd4\xd2\xf6\xdd\xce\x65\x59\x91\x1f\x77\x8d\x93\x83\x9a\x1b\x9c\x94\x96\x9f\x1f\xe5\x07\xa0\x82\xa9\x1d\x89\x07"
+"\xdb\x0a\xfb\x0c\xe0\x31\xf7\x0d\x81\x1f\x4b\xa5\x07\xa6\x99\x84\x7e\x7e\x3a\x0a\x95\x76\xee\x1d\xa0\xa9\x83\xa1\x73\x1d\x31\x0a"
+"\x0e\xf7\xa8\x90\x15\xfb\x1c\x64\x07\xf7\x12\x1d\xf7\x19\x06\xf7\x4c\xf8\x02\xc7\x0a\xfb\xc7\xfb\x2f\xf7\xc7\x8b\x1d\x0e\xf7\xdc"
+"\xf7\x6d\x15\xb0\x07\xf7\x42\xf7\x96\xc8\x0a\xfb\x63\xfb\x22\xf7\x63\xf6\x1d\xfb\x96\x05\x66\x29\x07\x66\x1d\xed\xfb\x08\x27\x20"
+"\x0a\xf7\x90\x23\x1d\x27\xf7\x08\xe7\x06\x9e\x1d\x0e\xf7\xa8\x78\x15\x31\x06\x66\x1d\xe5\x4d\x64\x06\xf7\x12\x1d\xc9\xe9\x06\x9e"
+"\x1d\x2d\xa1\x06\xf7\x4c\xf8\x01\xc7\x0a\xfb\xc6\xfb\x2f\xf7\xc6\x8b\x1d\xf7\x4d\xfb\xff\x05\x0e\xf8\x9b\xbe\x15\xfb\x4f\xf7\x81"
+"\xf7\x43\xf7\x74\x05\x97\x06\xa1\x96\x41\x1d\xfb\x03\x06\xba\x0a\xae\x06\xfb\x23\xfb\x4b\xfb\x24\xf7\x4b\x05\xab\x06\xa0\x97\x41"
+"\x1d\xfb\x02\x20\x0a\x98\x06\xf7\x43\xfb\x74\xfb\x4c\xfb\x81\x05\x7d\x29\x0a\xf7\x16\x06\xa0\x97\x45\x0a\x56\x06\xf7\x2d\xf7\x58"
+"\xf7\x2e\xfb\x58\x05\x59\x2e\x1d\xf7\x08\x28\x06\x74\x24\x0a\xa3\x1e\xf7\x02\x07\xa9\x84\x93\x6d\x8c\x1e\x0e\xf8\x97\xbf\x15\xfb"
+"\x45\xf7\x3b\xf7\x32\xf7\x29\x05\x8f\x9f\x1d\x75\x81\x51\x0a\xae\x06\xfb\x10\xfb\x06\xfb\x0c\xf7\x06\x05\xab\x06\xa1\x96\x94\x9c"
+"\x9c\x81\x93\x74\x1f\xfb\x02\x55\x0a\x97\x82\xa0\xf7\x35\x1d\x84\x29\x0a\xf7\x18\x21\x0a\x55\x06\xf7\x23\xf7\x19\xf7\x22\xfb\x19"
+"\x05\x57\x35\x0a\xf7\x08\x4d\x06\xe4\x0a\x0e\xf8\x6c\xbe\x15\xf8\x61\xb1\x07\xa5\x99\x94\x9c\x9b\x99\x0a\xfb\x5f\xfb\x02\x07\x72"
+"\x7d\x82\x0a\xf7\x50\x5e\x1d\x8c\xa8\x83\x94\x6d\x8c\x08\x0e\xf8\x6d\xbe\x15\xf7\xd1\xaf\x07\xc0\x1d\xfb\x18\x24\x07\x70\x0a\xf7"
+"\x48\x5e\x1d\xa9\x84\x93\x70\x8c\x1e\x88\x06\x0e\xf7\xc1\xf7\x55\x15\xaf\x94\xa4\x96\xaa\xa1\xa6\x9e\x18\xfb\x5f\xfb\x02\x37\x0a"
+"\xf7\x5c\x24\x1d\x65\xf8\x61\xb1\x06\xa5\x99\x94\x9b\x9c\xe8\x1d\x5d\x66\x72\x7c\x5b\x78\x08\xf7\x1a\x07\xa0\x82\x84\x0a\xfb\x24"
+"\x07\x3c\x76\xa2\xea\x89\x1f\xf7\x31\xbc\x79\x1d\xfb\x1f\x2a\x0a\xb1\xfb\x36\x06\x8d\xfb\x0d\xaf\x64\xf7\x08\x86\x08\x2b\x07\xf7"
+"\x08\x0a\xf7\x96\xf7\x4b\x15\x74\x8c\x53\x8d\x79\x9e\x8a\xc5\x19\xf4\xb9\x07\x7b\x1d\xfb\x19\x33\x1d\xae\x22\x06\x8c\x33\xac\x6a"
+"\xe8\x82\xa2\x8a\x18\x5f\x07\x7c\x0a\xbd\x07\xbb\x96\xa6\x96\xb0\xa2\x08\xfb\x18\x24\x37\x0a\xf7\x53\x24\x1d\x67\xf7\xd1\xaf\x06"
+"\xbd\x0a\x7e\x82\x0a\xb0\xfb\x12\x06\x61\x71\x6b\x7c\x65\x81\x08\xca\x07\x9f\x82\x96\x7a\x7b\x82\x80\x77\x1e\x0e\xf7\x29\xf8\x94"
+"\x15\xf7\x02\x36\x0a\xfb\x5c\x4b\x1d\xb1\xfc\x61\x65\x4b\x1d\xf7\x18\x2f\x1d\x61\xf7\x56\x06\xc5\xd4\xbe\xa2\xc7\x1b\xcb\xa3\x6b"
+"\x34\x1f\xfb\x30\x5a\x07\x72\x7d\x82\x0a\xf7\x1f\x2f\x1d\x65\xf7\x35\x06\xd0\x7d\xb5\x6e\xa2\x1e\x9f\x72\x66\x96\x61\x1b\x56\x56"
+"\x7a\x6b\x5f\x1f\x70\x77\x05\x0e\xf7\x41\xf8\xef\x15\x27\x36\x1d\xbb\xfc\x89\x64\x2e\x1d\xf7\x17\x22\x0a\x63\xf7\x87\x06\xd4\xcd"
+"\xa3\x9a\xc3\x1b\xce\xb8\x65\x53\x1f\xfb\x81\x63\x07\x76\x7f\x82\x7a\x7b\xde\x0a\xdc\x47\xc8\x31\x50\x5b\x76\x5e\x5e\x1e\x0e\x23"
+"\x0a\x0e\xf8\x6c\xbe\x15\xf8\x61\xb2\xf7\x0c\x0a\xfb\x19\x4c\x1d\xb5\xfb\x56\x06\x51\x41\x57\x74\x51\xd7\x1d\xb4\x1b\xc0\xc1\x9d"
+"\xaa\xb7\x1f\xa6\x9e\x05\xfb\x5f\xfb\x05\x07\x6d\x8a\x83\x82\x8c\x6e\x08\xfb\x02\x07\x73\x24\x0a\xa2\x1e\xee\xf7\x51\x79\x1d\x0e"
+"\xf8\x6d\xbe\x15\xf7\xd1\xaf\x07\xbd\x0a\x7e\x82\x7b\x7a\x99\x82\xa4\xd1\x1d\xb3\x1b\xc7\xc5\x9c\xac\xbe\x1f\xfb\x18\x21\x07\x88"
+"\x06\x70\x8a\x84\x83\x6d\x1a\xfb\x02\x07\x73\x24\x0a\xa2\x1e\xee\xf7\x48\x07\xa5\x7f\x0a\x71\x1f\x0e\xb7\xf7\xbd\x15\x93\x24\x91"
+"\x6c\xa4\x60\x08\x35\xbc\xdb\x59\xe3\x1b\xf7\x22\xf7\x2d\x1d\x39\x59\x6e\x27\x32\x1f\xc4\x7f\x05\xd4\xd2\xa9\x9c\xc6\x1b\xc1\xc2"
+"\x70\x5e\xae\x1f\xae\x5f\xa2\x50\x5d\x1a\x85\x07\x8a\x59\x15\x7f\x45\x7f\x6c\x6a\x64\x08\x5d\x64\x58\x71\x56\x1b\x55\x58\xa5\xb9"
+"\x64\x1f\x6a\xb2\x7f\xaa\x80\xd1\x08\x0e\x28\x1d\xfb\x18\xf7\x91\xb3\x0a\x48\x1d\xfb\x82\xf8\x37\x42\x1d\xf7\xc4\xf8\xd3\x15\xfb"
+"\x26\xfb\x04\xfb\x14\xfb\x3c\xf7\x07\x1d\xf7\x59\xfb\xdc\x15\x85\x60\x84\x75\x7c\x6d\x08\x42\x66\x4a\x5f\x44\x1b\x4b\x4d\xb1\xca"
+"\x65\x1f\x77\xad\x82\xa7\x84\xbc\x08\x89\xbd\x15\x91\xbf\x92\xa4\x9c\xad\x08\xd3\xb0\xcc\xb7\xd1\x1b\xcc\xc8\x66\x4b\xb1\x1f\xa2"
+"\x65\x94\x6d\x91\x51\x08\x0e\xbc\x1d\x25\x0a\x78\xf9\x5e\x5d\x1d\xe1\x64\x0a\x2c\x1d\xfb\xc6\xf8\x08\x15\x7c\x80\x80\x7b\x4c\xcc"
+"\x5b\xe1\xe0\x64\x0a\xf8\xdd\xf9\x46\x15\x4f\x1d\xfc\xce\x20\x0a\x0e\xf8\x2d\xe3\x15\x94\x63\x8f\x7e\x92\x7f\x08\x78\x97\x9b\x80"
+"\x9c\x1b\xc8\xb4\xe6\xf7\x1c\xf7\x18\x60\xe6\x4e\x44\x67\x32\xfb\x40\x1f\xfb\xee\x07\x7b\x93\x81\x99\x99\x93\x95\x9c\x1e\xf8\x03"
+"\x04\xa1\x07\xed\xa7\xd7\xaf\xb0\xa5\x42\x22\xfb\x0d\x75\x4b\x61\x68\x75\xb8\xd7\x87\x1e\xfb\xe5\x81\x15\x8a\x5d\x7d\x66\x76\x81"
+"\x08\x81\x86\x85\x82\x80\x1a\x89\x07\x7c\x8c\x95\x83\x9c\x1b\xf1\x8c\x05\xf4\xc4\xec\xf7\x46\xf7\x1d\x66\xe8\x48\xac\x1f\x75\x96"
+"\x75\x8f\x65\x8a\x08\x84\x88\x8d\x8f\x95\x93\xa3\x90\x93\x1f\x8e\x90\x8c\x8d\x8f\x1a\x90\x88\x90\x87\x8e\x1e\x89\x8c\x05\x8d\x88"
+"\x87\x8c\x87\x1b\x79\x76\x69\x6c\x8a\x1f\x82\x8a\x8a\x89\x84\x1b\x7a\x06\x7a\x81\x82\x7e\x7d\x95\x83\x9c\x1f\x9c\x06\x91\x8d\x88"
+"\x86\x1f\xb7\x16\x92\x8c\x8c\x9b\xee\xaf\x4b\xfb\x43\xfb\x09\x76\x46\x60\x72\x1e\x80\x79\x68\x86\x5a\x1b\x7e\x86\x8d\x8f\x8c\x8b"
+"\x8c\x8c\x8c\x1f\xa0\xa8\x94\xaa\x8c\xba\x08\x0e\xf8\x34\xbd\x15\xec\xc2\xc6\xeb\xf2\x1a\xf7\x2e\xfb\x0a\xf7\x09\xfb\x2e\xfb\x2f"
+"\xfb\x09\xfb\x09\xfb\x2e\xf7\x28\x1d\x82\xa0\x1f\xf7\x62\xbb\x06\x54\xaa\x7b\x96\x75\x9f\x08\x51\xbf\x6d\xcc\xd3\x1a\xd3\xa7\xc6"
+"\xc2\xb9\x1e\xad\xb4\xb3\x99\xc3\x1b\xc3\xb3\x7d\x69\xb4\x1f\xc2\x5d\xa7\x50\x43\x1a\x47\x71\x4f\x57\x57\x1e\x72\x72\x7a\x7f\x4e"
+"\x69\x08\x5b\xf7\x62\x07\xa0\x98\x94\x9b\x9c\x80\x93\x74\x1f\x0e\xb2\x0a\x67\x0a\xe6\x16\xbe\x06\xf7\x34\xf8\x1a\xf7\x35\xfc\x1a"
+"\x05\xbe\x06\xfb\x42\xf8\x47\x05\x40\x06\x0e\xe6\xf8\x46\x15\xf7\x42\xfc\x46\x05\xd6\x06\xf7\x42\xf8\x47\x05\x58\x06\xfb\x35\xfc"
+"\x19\xfb\x34\xf8\x19\x05\x58\x06\x0e\xf7\xbd\xf8\x89\x15\xfb\x1b\xfb\x05\xfb\x04\xfb\x1b\xfb\x22\xf7\x02\xfb\x04\xf7\x20\xf7\x1c"
+"\xf7\x03\xf7\x04\xf7\x1f\xf7\x1f\xfb\x03\xf7\x03\xfb\x1e\x1f\x70\xfb\xad\x15\xfb\x36\x07\x35\x94\x3e\xd6\x87\xd9\x08\xc2\x04\x91"
+"\xde\xd5\xd5\xe2\x96\x08\xfb\x3c\x07\xc2\x54\x15\xf7\x3b\x06\x88\x42\x3b\x3d\x37\x80\x08\xf7\x6d\x04\xf7\x3c\x07\xdf\x82\xd7\x3f"
+"\x92\x38\x08\x0e\x9c\x16\xf8\xcb\xf8\xcb\xfc\xcb\x06\xf8\x92\xfc\x92\x15\xfc\x59\xf8\x59\xf8\x59\x06\x0e\xca\xf7\xe7\x15\xfb\x2b"
+"\x90\x68\xa6\x5f\x1e\x47\xb5\xd8\x62\xe1\x1b\xbf\xbb\x9a\xa6\xb4\x1f\xbe\xae\xa8\xb9\x95\xca\x08\x90\xac\x8c\xa1\xed\x1a\xf7\x51"
+"\x07\x9f\x80\x99\x7b\x7b\x82\x7f\x75\x1e\xfb\x54\x07\xfb\x10\x86\x62\x78\x6a\x1e\x57\x6d\x4a\x68\x49\x1b\x63\x62\x98\xa2\x6a\x1f"
+"\x62\xa8\x78\xac\x85\xbb\x87\xa9\x8b\x8b\x8a\xf7\x01\x08\xf7\x54\x07\xa0\x81\x98\x7b\x7a\x82\x7f\x75\x1e\x0e\xf7\xe1\x16\xf7\x67"
+"\xf8\xeb\x05\x55\x06\x4c\xfb\x37\x05\xfb\x97\x06\x4d\xf7\x37\x05\x58\x06\xf7\x5f\xfc\xeb\x05\xf7\x2a\xf8\x15\x15\xfb\x03\xfb\xe2"
+"\x05\x84\x06\x24\xf7\xe2\x05\x0e\xf8\x7a\xf8\x37\x15\xfb\x0d\x06\x74\x81\x2a\x1d\xd0\xfb\x8c\x06\x52\x55\x51\x6f\x4a\x1b\x5b\x65"
+"\xaf\xba\x1f\xf7\xc1\x97\x1d\xfb\x8e\x06\x3a\xc3\x56\xde\xcb\xc4\xa3\xbd\xc2\x1e\x51\xa3\x07\x7a\x1d\xbf\xf7\x2e\x1d\x7d\x73\xa1"
+"\x1d\xa8\xa1\xa0\xca\xad\x1f\x96\x91\x8f\x92\x96\x1a\x9b\x80\x94\x76\x1e\x6e\x06\x0e\x48\x0a\x0e\x48\x0a\xfb\x49\xf7\x5d\x15\x72"
+"\x77\x77\x73\xf7\x30\x1d\xf7\x63\x95\x1d\xa3\xa4\x77\x9f\x72\x1f\x0e\x48\x0a\xa0\xf7\x70\x15\x95\x93\x8f\x92\x95\x1a\x99\x81\x95"
+"\x7d\x82\x85\x88\x83\x82\x1e\xfb\x06\x2b\x05\x81\x83\x87\x84\x81\x1a\x7d\x95\x81\x99\x93\x93\x8e\x93\x93\x1e\xfb\x06\xd8\x15\x72"
+"\x77\x77\x73\x72\x9f\x78\xaf\x1d\xf7\x98\x16\x71\x77\x78\x72\x67\x1d\x9f\xa4\xa2\x77\x9f\x73\x1f\x0e\x48\x0a\x94\xf7\x70\xf7\x0e"
+"\x0a\x7d\x84\x84\x88\x83\x83\xd5\x0a\x28\x0a\xfb\x18\xf8\xec\x63\x0a\x28\x0a\x85\xf8\xb3\x5f\x0a\x40\x0a\xbc\xf8\xe0\x34\x0a\x40"
+"\x0a\x33\xf9\x12\xda\x1d\x40\x0a\xfb\x59\xf8\xf6\x5b\x1d\x40\x0a\xfb\x52\xf9\x06\x4d\x0a\xf8\x3a\xf7\xb0\x15\xbe\x84\x07\x61\x8e"
+"\x6c\x90\x77\x91\x08\x5f\x99\x6a\xb4\xb4\x1a\xa9\x9d\xa8\xaa\x9e\x1e\xa5\x9b\xb2\x94\xc5\x8e\xa1\x8c\x8b\x8b\x90\x8d\x08\x96\x8e"
+"\x91\x93\x97\x1a\x9c\x7f\x94\x75\x1e\xfb\x5e\x26\x1d\xaf\x06\x5a\x6d\x78\x6b\x5a\x1a\x53\xae\x5c\xc8\x72\x1e\x31\x6a\x5f\x55\x3c"
+"\x1a\x5a\xa0\x5e\xb1\x6d\x1e\xa9\x73\xb0\x7f\xcd\x84\x08\xd8\x83\x9d\x81\x6b\x1a\x69\x6f\x77\x50\x83\x1e\x6d\x87\x84\x87\x7a\x1a"
+"\x7a\x96\x83\xa2\xd9\xcb\xbf\xca\xa9\x7e\xa4\x74\x9b\x1e\x79\x98\x6f\x92\x5c\x90\x08\xfb\x04\x97\x5d\xad\xd1\x1a\xc3\xb3\xbe\xc6"
+"\x9e\x1e\xa4\x93\xac\x8f\xbd\x8c\x08\x0e\x4e\x0a\x83\x7a\x74\x1d\x9c\x80\x93\x71\x1d\x82\x7b\x4c\x0a\xf7\x65\xf7\xa2\xda\x1d\x5d"
+"\x0a\xf6\xf7\x96\x4d\x0a\x4a\x0a\x60\xf7\x68\x34\x0a\x4a\x0a\xfb\x47\xf7\x7e\x26\x0a\x0e\xf8\x22\xf8\xbc\x15\x49\x48\x76\x73\x6a"
+"\x60\x08\x3b\x22\x68\x3d\x3f\x1a\x54\xa8\x50\xb6\x6d\x1e\xa4\x7a\xb0\x7f\xca\x83\x08\xcc\x82\x9c\x81\x6f\x1a\x64\x6a\x75\x4f\x8a"
+"\x1e\x75\x80\x82\x7b\x7a\x97\x82\xa4\xdc\xc7\xbb\xcc\xab\x7b\xa7\x71\x9b\x1f\x7e\x93\x70\x92\x68\x90\x52\x93\x70\x92\x77\x96\x08"
+"\x66\xa0\x76\xb3\xbd\x1a\xe6\xd9\xf7\x0e\xf7\x3d\xf7\x3f\x1e\x8d\x8e\x90\x8f\x05\xbb\xfb\x6a\xf7\x44\x1d\x0e\x7b\x9b\xf8\x35\x9b"
+"\xf7\x16\x97\xa7\x98\x06\xbf\x0a\xbe\x0b\xa7\x93\x8e\x8f\x8f\x90\x8f\x8e\x92\xbb\xae\xa9\x0c\x0c\xae\x8f\x8f\x8f\x8f\x8e\x8f\x94"
+"\x90\xb4\x9f\x9e\x0c\x0d\xf8\xec\x14\xbb\x13\x00\xe7\x02\x00\x01\x00\x05\x00\x0b\x00\x0f\x00\x16\x00\x1d\x00\x24\x00\x28\x00\x2c"
+"\x00\x5d\x00\x61\x00\x65\x00\x69\x00\x73\x00\x7e\x00\x84\x00\x88\x00\x8d\x00\xb0\x00\xb5\x00\xb9\x00\xc3\x00\xc7\x00\xd2\x00\xd6"
+"\x00\xda\x00\xe0\x00\xe7\x00\xec\x00\xf2\x00\xf6\x01\x39\x01\x7a\x01\xb9\x01\xd7\x01\xf0\x01\xfb\x01\xff\x02\x04\x02\x09\x02\x3d"
+"\x02\x8c\x02\x98\x02\xc4\x02\xce\x02\xdd\x02\xee\x02\xfc\x03\x02\x03\x07\x03\x0f\x03\x15\x03\x1a\x03\x24\x03\x2b\x03\x31\x03\x36"
+"\x03\x40\x03\x48\x03\x50\x03\x57\x03\x5f\x03\x6f\x03\xa8\x03\xae\x03\xca\x03\xcd\x03\xde\x03\xe5\x03\xf0\x03\xf7\x03\xfe\x04\x18"
+"\x04\x1e\x04\x27\x04\x32\x04\x39\x04\x49\x04\x4d\x04\x51\x04\x5a\x04\x64\x04\x6f\x04\x7b\x04\x86\x04\x8b\x04\x98\x04\xa0\x04\xa8"
+"\x04\xae\x04\xb9\x04\xc3\x04\xc8\x04\xd2\x04\xdb\x04\xe4\x04\xeb\x04\xf2\x04\xfa\x05\x02\x05\x0a\x05\x12\x05\x18\x05\x23\x05\x2c"
+"\x05\x5a\x05\x7d\x06\x09\x06\x10\x06\x93\x07\x0d\x07\x81\x07\xd3\x07\xe4\x08\x00\x08\x08\x08\x10\x08\x17\x08\x35\x08\x52\x08\x5f"
+"\x08\x8a\x08\x9f\x08\xe1\x09\x21\x09\x29\x09\x2c\x09\x5a\x09\x9f\x09\xad\x09\xd0\x09\xe4\x0a\x22\x0a\x27\x0a\x45\x0a\x5a\x0a\x81"
+"\x0a\x99\x0a\xbf\x0a\xda\x0b\x04\x0b\x0e\x0b\x3c\x0b\x5a\x0b\x60\x0b\x6b\x0b\x8b\x0b\xb6\x0b\xce\x0b\xdc\x0b\xe4\x0b\xef\x0c\x03"
+"\x0c\x17\x0c\x21\x0c\x26\x0c\x2e\x0c\x43\x0c\x4a\x0c\x5a\x0c\x76\x0c\x96\x0c\x9f\x0c\xb1\x0c\xd0\x0c\xe2\x0c\xe7\x0c\xeb\x0c\xf9"
+"\x0d\x0a\x0d\x15\x0d\x20\x0d\x29\x0d\x38\x0d\x40\x0d\x5a\x0d\x68\x0d\x73\x0d\x85\x0d\x8f\x0d\x96\x0d\x9c\x0d\xa6\x0d\xb0\x0d\xb9"
+"\x0d\xc5\x0d\xcc\x0d\xd9\x0d\xe6\x0d\xfb\x0e\x0a\x0e\x15\x0e\x21\x0e\x24\x0e\x30\x0e\x3f\x0e\x44\x0e\x53\x0e\x64\x0e\x76\x0e\x84"
+"\x0e\x8f\x0e\x95\x0e\xa0\x0e\xb1\x0e\xc1\x0e\xc9\x0e\xce\x0e\xd8\x0e\xe7\x0e\xf6\x0f\x04\x0f\x12\x0f\x18\x0f\x21\x0f\x2e\x0f\x3b"
+"\x0f\x48\x0f\x55\x0f\x62\x0f\x66\x0f\x6d\x0f\x79\x0f\x85\x0f\x8f\x0f\x97\x0f\xa2\x0f\xad\x0f\xb8\x0f\xc3\x0f\xce\x0f\xd9\x06\x20"
+"\x1d\x0b\x06\xa0\x97\x45\x0a\x0b\x06\x32\x0a\x0b\xf7\xda\xf8\x94\xd0\x1d\x0b\x94\x7e\x9c\x9c\x94\x98\x0b\x72\x0a\x95\xa0\xc2\x1d"
+"\x0b\x15\x3f\x1d\x0b\x06\x74\x0a\x0b\xf8\x46\x16\xdc\x23\x1d\x6e\xf8\x04\xfb\x0d\x06\x74\x81\x2a\x1d\xd0\xfb\x8c\x06\x52\x55\x51"
+"\x6f\x4a\x1b\x5b\x65\xaf\xba\x1f\xf7\xc1\x97\x1d\xfb\x8e\x06\x3a\xc3\x56\xde\xcb\xc4\xa3\xbd\xc2\x1e\x0b\x06\x2b\x1d\x0b\x06\x35"
+"\x1d\x0b\x07\x27\x1d\x0b\xf7\x16\x1d\xf7\x12\xf7\x0f\xac\x0a\x0b\x15\xa0\x97\x94\x9b\x9b\x80\x94\x75\x5c\x1d\x06\x75\x80\x38\x1d"
+"\x0b\x06\xc5\x0a\x0b\x8d\x94\x95\x1e\x0e\xf7\xdc\xf7\x91\x15\xf7\x42\xf7\x97\xc8\x0a\xfb\x64\xfb\x22\xf7\x64\xf6\x1d\xfb\x97\x05"
+"\xfb\x5e\x27\x07\x20\x1d\xf7\x90\x23\x1d\x27\x06\x0b\xa0\x97\x5a\x0a\x0b\x06\x53\x0a\x0b\x55\x1d\x70\x1d\x8f\x8d\x94\x96\x1e\x0e"
+"\x06\x37\x1d\x0b\x06\xa4\x99\x94\x9c\x9b\x7d\x94\x72\x1f\x0b\x07\x70\x0a\x0b\x06\x7b\x0a\x0b\x06\x9f\x97\x53\x1d\x0b\x7b\x82\x74"
+"\x7d\x7d\x8f\x0b\x75\x80\x2a\x1d\x0b\x15\x91\x94\x8d\x90\x0b\x7e\x96\x1f\x0e\xc0\x0a\xf7\x0a\xdf\xc3\xda\xaf\x77\xae\x6b\xa0\x1f"
+"\x6a\xa1\x66\x96\x4d\x91\x33\x91\x1d\xd3\x7e\x0a\x93\x82\x9a\x1b\x9c\xf7\x39\x1d\x81\x81\x7c\x89\x1e\xa5\x69\x5e\x98\x55\x1b\x26"
+"\x40\x5a\x48\x6a\x9d\x6c\x9a\x1d\xa5\x85\xa5\x7c\x08\xa4\x7e\x9b\x75\x76\xf7\x0f\x0a\x0b\xf8\x32\x16\xf0\x23\x1d\x5a\xf7\x94\x06"
+"\xd4\x44\xc0\x2b\x66\x4a\x7e\x78\x53\xa6\x0a\x99\x54\x6c\x90\x5f\x1b\xfb\x15\x33\x4f\x32\x3d\xcc\x56\xeb\xd0\xc2\xa1\xc0\xc9\x1f"
+"\xc6\x04\x4f\x4a\x57\x74\x45\x1b\x49\x61\xaa\xbc\xc5\xd1\xb3\xf2\xb4\xba\x85\x83\xad\x1f\x0b\xf8\x52\x16\xdd\xf8\x04\x05\x9a\x06"
+"\xa1\x96\x94\x9c\x9c\x81\x93\x74\x1f\xfb\x03\x2f\x0a\xb7\x06\x4b\xfb\xb5\x38\xf7\x81\x05\x50\x06\x39\xfb\x81\x49\xf7\xb5\x05\xb9"
+"\x3d\x1d\xfb\x03\x2f\x0a\x9a\x06\xdf\xfc\x04\x05\xc6\x06\xe1\xf7\x88\xe2\xfb\x88\x05\x0b\xf7\x7d\xf8\x94\x15\xe6\x3e\x1d\xfb\x7e"
+"\x22\x1d\xe6\xfc\x61\x30\x20\x0a\xf8\x5d\xf7\x5f\x78\x1d\xfb\x2c\xfb\x9a\x07\x0b\xf7\xda\xf8\xef\x15\xfb\x37\x2e\x1d\xf7\x03\xfc"
+"\x89\xfb\x2f\x20\x0a\xf7\xfe\x21\x0a\xfb\x2f\x06\x0b\x06\xa0\x96\x94\x9c\x9b\x7f\x94\x77\x1f\x0b\x06\x57\x0a\x0b\x21\x1d\x75\x1f"
+"\x0b\x7f\x94\x76\x1f\x0b\xf7\x3f\xf7\x8a\x15\xf7\x12\x06\xd6\x68\xb5\x58\xe4\xfb\x34\x08\xc6\x21\x0a\x70\x06\x3e\xf7\x16\x6d\xb3"
+"\x52\xb3\x08\xe1\xa8\xba\xbe\xcb\x1a\xe0\x36\xd4\x27\x1e\xfb\x8d\x9c\x0a\x06\xf7\x8a\x04\xf7\x2a\x1d\x0b\xf8\x3e\xf8\x04\x15\xfb"
+"\x26\x07\x43\x83\x63\x77\x6f\x1e\x6d\x75\x69\x7b\x61\x1b\x62\x67\x9d\xa9\x75\x1f\x78\xa6\x83\xb3\xd2\x1a\xf7\x59\x27\x07\x75\x80"
+"\x38\x1d\xbb\xfb\x2b\x06\x39\x96\x59\xa6\x67\x1e\x60\xaa\xb9\x76\xc8\x1b\xc7\xbb\xa0\xb2\xaa\x1f\xa8\xb0\x97\xbe\xe4\x1a\xf7\x26"
+"\xbb\x07\x7b\x0a\xfb\x28\x2e\x0a\x0b\xf8\x66\xf8\x15\x15\xaa\x63\x56\x9c\x60\x0a\x0b\xf8\x74\xf8\x37\x15\xfb\xfd\x28\x06\x27\x1d"
+"\xbb\xf7\x7e\x07\xfb\xbb\xfb\xd9\x05\x60\xf8\x15\xef\x07\xa0\x83\x96\x79\x7a\x82\x80\x76\x1e\x5a\xfb\x98\x07\xf7\xbd\xf7\xd9\x05"
+"\x0b\xf7\x16\x1d\xf7\x11\xf7\x10\xac\x0a\x0b\x30\x1d\xb9\x06\xfb\x2d\xfb\xc7\xfb\x2f\xf7\xc7\x8b\x1d\x0b\x15\x94\x81\xf7\x0a\x1d"
+"\x9a\x96\x96\x9a\x93\x8b\x8b\x7d\x9a\x1f\x0e\xf7\xa8\x91\x15\x47\xfb\x1d\x05\xfb\x10\x06\x76\x80\x0b\x56\x1d\x80\x76\x1e\x0b\x55"
+"\x0a\x3a\x1d\x0b\x83\x7a\x7a\x96\x82\xa0\x1f\x0b\x07\x75\x80\x59\x0a\x0b\xa0\x96\x83\x0a\x0b\xa0\x96\x94\x9c\x9c\x80\x93\x76\x1f"
+"\x0b\x06\x75\x80\x83\x7a\x7a\x0b\x92\x8e\x93\x94\x1e\x0e\xa1\x96\x57\x1d\x0b\x75\x94\x80\x9c\x9c\x94\x96\xa1\x1e\x0b\x82\x7b\x7a"
+"\x96\x82\xa1\x1f\x0b\x94\x9b\x9c\x7f\x94\x76\x1f\x0b\x1a\x9b\x80\x94\x75\x1e\x0b\x9a\x1b\x9c\x94\x96\xa0\x1f\x0b\x4e\x0a\x83\x7a"
+"\x74\x1d\x9c\x80\x93\x71\x1d\x83\x7a\x4c\x0a\x0b\xee\xbe\x15\x5a\x26\x1d\xf7\x02\x06\xf7\xb4\xf8\x73\x05\xfc\x40\x5a\x07\x20\x1d"
+"\xf7\x2a\x06\x9f\x97\x94\x9b\x9c\xf6\x0a\x9c\x9b\x7f\x94\x77\x1f\xfb\x02\x06\xfb\xb4\xfc\x74\x05\xf8\x41\xd0\x07\x32\x0a\xfb\x3e"
+"\x4e\x1d\xbc\x06\x0b\x90\x1d\x8f\x9e\xa0\x0a\x50\x1b\xfb\x1d\x29\x2c\xfb\x19\xfb\x15\xeb\x2f\xf7\x1b\xce\xcd\x9e\xaf\xc0\x1f\xa9"
+"\x9f\x9a\x9d\x99\xa7\x0a\x0b\x62\x0a\x0e\xf7\xdb\xbe\x15\xf8\x61\xf7\x2f\x49\x07\xe0\x1d\xf7\x8e\x21\x0a\x0b\x6f\x1d\x6d\x6c\xa2"
+"\x1d\x0e\x4d\x1d\x67\x86\x62\x72\x56\x1b\x55\x51\x1d\x2b\x1d\xf7\x20\x21\x0a\x0b\xae\x1d\x85\x94\x7d\x0a\x0b\xf7\xbb\xf7\xf4\x15"
+"\x61\x6b\x6d\x63\x64\xab\x6d\xb5\x1f\x96\x06\xb5\xab\xa9\xb2\xb3\x6b\xa9\x61\x1f\x0e\xf7\x1d\x1d\x91\x68\x1d\x4e\x1d\xbc\xfc\x61"
+"\x5a\x26\x1d\x0b\xf7\x2c\x1d\xa9\xb3\xb2\x6b\xa9\x61\x1f\x0e\x60\x1d\xfc\x50\x20\x0a\x0b\x06\x9b\x8a\x97\x95\x9a\x1a\x8e\x07\x9a"
+"\x7f\x95\x7b\x8a\x1e\x0b\xee\x1d\x9f\x0b\x07\x2b\x1d\x0b\xf7\x14\x1d\xa9\x72\xa3\x6e\x1f\x0b\x71\x7d\x82\x7a\x7b\x99\x82\xa5\x1f"
+"\x0b\x76\x0a\xf7\x8e\x06\xa0\x97\x94\x9c\x9b\x0b\xf7\x3f\xf7\x9e\x15\xf7\x1a\x64\x06\x39\x1d\x0b\x07\xa0\x97\x94\x9c\x9b\x7f\x94"
+"\x76\x1f\x0b\xa1\x96\x45\x0a\x0b\x1e\x37\xfb\x0f\x05\x85\x83\x89\x85\x86\x1a\x7c\x0b\x82\x7b\x7a\x97\x82\xa0\x1f\x0b\x74\x24\x0a"
+"\xa4\x1e\xbf\x07\x0b\x07\x76\x7f\x38\x1d\x0b\x07\x9f\x82\x96\x7a\x7a\x82\x80\x77\x1e\x0b\x93\xa4\x1b\x9a\x9d\x82\x78\xa3\x1f\x0b"
+"\xa0\x97\x57\x1d\x0b\x76\x94\x80\x9b\x9c\x94\x96\xa0\x1e\x0b\x91\x88\x91\x1b\x99\x97\x96\x99\x0b\xd4\xbd\x70\x62\x90\x1e\x79\x8d"
+"\x0b\x99\x94\x9b\x9c\x7d\x94\x0b\x6e\x82\x85\x7c\x1b\x7f\x0b\x82\x1a\x7c\x96\x80\x9a\x92\x0b\x82\x7b\x7a\x99\x82\xa4\x1f\x0b\x94"
+"\x9b\x9c\x80\x94\x76\x1f\x0b\x96\x7b\x7a\x82\x80\x76\x1e\x0b\x85\x79\xa1\x1f\xa3\x0b\x06\x75\x80\x82\x7a\x7b\x96\x82\xa1\x1f\x0b"
+"\xf8\xcf\x15\x45\xfb\x05\xd1\x06\x0e\xab\x0a\x63\xb4\xc4\x75\xcc\x1b\xf7\x10\xe3\xd2\xed\xbf\x73\xb7\x63\xa3\x1f\x6c\x9e\x6f\x93"
+"\x3d\x98\x4e\x95\x71\x93\x73\x9b\x08\x73\x9a\x7e\xa4\xa8\x1a\xca\xc5\xb8\xdb\xd6\xcc\x0a\x0b\xf8\x7a\xf7\xd7\x15\xbb\x1d\xc4\x24"
+"\x1d\x55\x06\x4a\xe6\x5c\xcc\x7f\x95\x65\x98\x19\xa0\x9c\x9c\x9d\xa9\xaf\xbf\xc9\x91\x8e\xb5\x8d\x08\x0b\xf7\xda\xf7\x79\x15\x9f"
+"\x81\x97\x7b\x7a\x82\x80\x76\x1e\x6b\x07\x21\x71\x54\x58\x55\x67\xc4\xe2\xe3\xa3\xca\xbb\xac\x1e\x93\x91\x91\x8f\x97\x91\x08\xa3"
+"\x97\x8e\x8e\x98\x1a\x9a\x81\x95\x7b\x71\x67\x72\x64\x6b\x1e\x62\x59\x7b\x55\x38\x1a\x4b\x99\x5b\xa8\x68\x1e\x6b\xa5\xaf\x79\xaf"
+"\x1b\xb8\xb0\xa2\xb4\xa1\x1f\x62\xa0\xb1\x74\xb8\x1b\xaf\xaf\x9d\xab\xa5\x1f\xa8\xaf\x99\xba\xcf\x1a\xd1\x79\xcb\x6a\xb6\x1e\xb1"
+"\x6e\x5d\xab\x71\x1b\x7c\x81\x81\x7c\x7e\x8e\x88\xa4\x7e\x1f\x97\x85\x90\x88\x93\x86\x08\xba\x6a\xa4\x4b\x35\x1a\x32\x68\x52\x54"
+"\x58\x71\xc1\xf6\x1e\x0b\xf7\x38\x1d\xa1\x96\xb4\x1d\xf7\x22\xbb\x15\x5e\xbc\xbb\x78\xc9\x1b\xf7\x21\xf7\x04\xf7\x17\xf7\x39\xd6"
+"\x74\xd1\x61\xc1\x1f\xce\xde\x05\x94\x95\x8c\x8e\x91\x1a\x98\x80\x95\x7f\x82\x87\x89\x7f\x81\x1e\x4d\x3d\x05\xb9\x56\x5f\x9c\x4f"
+"\x1b\xfb\x23\xfb\x04\xfb\x16\xfb\x39\x3f\x9f\x4e\xb8\x4e\x1f\x48\x39\x05\x84\x81\x89\x88\x84\x1a\x7f\x95\x81\x98\x93\x91\x8f\x94"
+"\x93\x1e\xcb\xf7\x2d\x15\x6c\xbc\x7c\xbc\xc4\x1a\xf7\x1b\xe6\xf7\x02\xf7\x03\xba\xb1\x7b\x67\xb3\x1e\xaa\x68\x15\xaa\x59\x9a\x5a"
+"\x50\x1a\xfb\x1a\x30\xfb\x02\xfb\x03\x5c\x65\x9b\xb0\x63\x1e\x0b\xf7\x2f\xac\x15\x69\xb8\xb8\x7c\xc3\x1b\xf7\x16\xf2\xee\xf7\x11"
+"\xc3\x78\xbd\x65\xb5\x1f\xc7\xc7\x05\x94\x94\x8e\x90\x92\x1a\x98\x81\x95\x7e\x83\x88\x89\x81\x81\x1e\x4e\x4d\x05\xab\x60\x5d\x9a"
+"\x54\x1b\xfb\x16\x24\x28\xfb\x11\x54\x9d\x5c\xb0\x60\x1f\x4c\x4c\x05\x83\x82\x88\x86\x84\x1a\x7f\x95\x81\x98\x92\x90\x8e\x93\x94"
+"\x1e\xf7\xf1\xf7\xf3\x15\xa6\x6a\x99\x66\x62\x1a\x2a\x3b\x3e\x26\x60\x6c\x95\xa3\x67\x1e\x6a\xaa\x15\x71\xac\x7e\xaf\xb3\x1a\xeb"
+"\xdb\xd8\xf0\xb5\xa8\x82\x74\xaf\x1e\x0b\xf8\x04\xf7\x8f\x15\x6b\x8c\x05\x3d\x54\xab\xb9\xb3\xb2\xa4\xca\xa1\x9d\x89\x87\x98\x1f"
+"\x81\xac\x8b\x8b\x90\x1b\x98\x95\x97\x9a\x95\x86\x93\x81\x90\x1f\x94\x79\x60\x93\x6a\x1b\x2f\x48\x5b\x48\x68\xa0\x69\xae\x78\x1f"
+"\x96\x85\x94\x87\xa1\x85\x08\x3b\x78\x65\x66\x50\x1a\x40\xcc\x5b\xf3\xb9\xc0\x95\x98\xaa\x1e\x99\x92\x91\x92\x97\x1a\x9a\x82\x95"
+"\x7d\x87\x88\x8a\x89\x85\x1e\x7a\x59\x79\x88\x60\x1b\x3d\x61\xa4\xb8\xc2\xc4\xad\xe4\x1f\xa3\x06\x92\x06\x93\x8a\x05\x0b\xee\xf7"
+"\x9e\x15\xfb\x6b\x6e\x07\x20\x1d\xf7\x71\x06\xf7\x11\x88\xf7\x02\xf7\x0b\xf7\x1e\x1a\xc1\x07\xf7\x1f\xfb\x02\xf7\x0b\xfb\x11\x88"
+"\x1e\xfb\x71\x22\x1d\xa8\xfb\x57\x43\x20\x0a\xf7\x10\xf7\x8a\x15\xf7\x1e\x06\xea\x92\xe0\x31\x90\xfb\x04\x08\x43\x07\x88\x24\x35"
+"\x2e\x31\x8d\x08\xfb\x24\xf7\x6b\xf7\x31\x23\x1d\xfb\x31\x06\x0e\x72\x1d\xc9\xa4\xb9\xbd\x1e\xa7\xa5\x97\x9b\x97\x1a\x99\x6e\x1d"
+"\x0e\xa9\x0a\x9b\x80\x94\x75\x1f\xfb\x15\x06\x3b\x0a\x92\x06\xfb\x2d\xfb\x13\x05\xf7\xfe\x26\x07\xf7\x0d\x1d\x06\x0b\xf7\x01\x1d"
+"\xc0\xaa\xa3\xc4\x1d\xa1\x0a\x51\x52\x4c\xcc\x1d\x0b\x72\x0a\x96\x9f\xc2\x1d\x0e\xf7\x2a\xf8\x37\x15\x26\x2f\x0a\xbc\xfc\x87\xae"
+"\x0a\x41\x5b\x73\x4e\x58\x1f\xf7\x3e\xad\x15\xee\xd7\x45\x30\xf7\x29\x1d\xf8\x40\xf8\x94\x15\xfc\x61\x5b\x5f\x1d\xf7\x20\x06\xf7"
+"\x0e\x1d\xfc\x4c\x8c\x1d\xf7\x21\x33\x0a\x5a\xf8\x61\x06\x0e\xd4\x1d\xa7\x93\x90\x9d\x1b\x96\xaa\x1d\x9d\xd9\x0a\xf7\x53\xf8\x37"
+"\x15\x3b\x2e\x1d\xa7\xcd\x0a\xf7\x84\x06\xd4\xc9\xa7\x9d\xc2\x1b\xcd\xb8\x65\x53\x1f\xfc\x4a\x2b\x0a\xf8\x51\x07\xd9\x45\xc7\x31"
+"\x51\x65\x7a\x5a\x57\x1e\x0b\xe8\x1d\x51\x42\x57\x74\x50\xd7\x1d\xb5\x1b\xc0\xc0\x9c\xab\xb7\x1f\xa6\x9e\x05\x0b\xf8\x90\xf8\xef"
+"\x15\x26\x20\x0a\xbc\xfb\x66\x06\xc7\x5e\x4f\xaa\x44\x1b\xfb\x0f\x28\x27\xfb\x10\xfb\x10\xee\x26\xf7\x0e\xd2\xc9\xab\xc6\xb7\x1f"
+"\x40\xf0\x07\x61\x1d\x5a\x06\xfb\x77\xf7\xdf\x15\xee\xd7\x40\x28\x2b\x3e\x3e\x2b\x2a\x3f\xd8\xec\xeb\xd7\xd8\xea\x1f\x0b\xee\xbe"
+"\x15\x6e\x20\x0a\xf7\x71\x06\xf7\x16\x8a\xf3\xf7\x04\x8c\xf7\x23\x08\xc2\x07\x8a\xf7\x23\x23\xf7\x04\xfb\x16\x8a\x08\xfb\x71\x22"
+"\x1d\xa8\x06\xbf\xfc\x61\x15\xf8\x61\xf7\x1e\x07\xea\x92\xe0\x31\x90\xfb\x03\x08\x43\x07\x89\x23\x35\x2e\x30\x8d\x08\x0b\x76\x1d"
+"\xf7\x3e\x21\x0a\x46\x0b\x9e\x0a\x0e\xf8\x66\xf8\x94\x15\xe6\x3e\x1d\xfb\xbc\x50\x0a\xf7\x2d\xfb\xec\x06\x41\x4d\x50\x3c\x5b\x5e"
+"\x9f\xb7\x5a\x1e\xf7\x11\x34\x1d\xfb\x29\x07\x47\xd9\xbc\x74\xcd\x1b\xf5\xe3\xde\xf0\x1f\x0b\x06\x73\x6b\x76\x61\x7c\x1a\x83\x92"
+"\x84\x94\x92\x8f\x8d\x92\x91\x1e\xad\xb2\xa3\x9f\xbc\xa8\x99\x94\x18\x91\x8e\x8f\x8d\x8c\x8c\x08\x99\x93\x8e\x8e\x93\x1a\x92\x87"
+"\x8f\x78\x95\x1e\x4f\xad\x6e\xa2\x6c\xae\x08\x98\x80\x87\x8e\x84\x1b\x82\x83\x85\x83\x7c\x9b\x6b\xa8\x5f\x1f\x0b\x67\x1f\x9e\x6b"
+"\x7d\x8f\xb4\x0a\xa3\x1b\xa3\xf7\x20\x1d\xf8\x47\xf7\xf1\x15\xc5\x5f\x57\xa5\x46\x1b\xfb\x09\x2c\x2c\xfb\x08\xfb\x09\xea\x2c\xf7"
+"\x09\xcf\xc0\xa6\xc3\xb7\x1f\xfb\x01\x07\x8f\x50\x0b\xf8\xc1\x15\x8c\x9c\x05\xa1\x8c\x76\x9f\x72\x1b\x71\x78\x78\x73\x87\xad\x0a"
+"\x0b\x9a\x1b\x93\x92\x92\x94\x92\x88\x8f\x84\x91\x1f\x63\xac\x78\xa1\x6d\xbc\x88\x8f\x88\x90\x88\x90\x08\x88\x90\x87\x91\x8b\x1a"
+"\x98\x84\x88\x8e\x82\x1b\x84\x87\x87\x79\x81\x1f\x6a\x52\x72\x6b\x67\x6f\x08\x7e\x80\x88\x86\x85\x1a\x81\x92\x84\x93\x99\x0b\xf8"
+"\xb7\xcd\x1d\x0b\xf7\x8b\xbe\x15\xf7\xd1\xf7\x7e\xfb\x2c\x07\x77\x94\x7f\x9c\x9c\x94\x97\x9f\xf7\x26\x1d\xfb\xd1\x30\x06\xf7\x17"
+"\x1d\x0b\xa3\x1d\x8e\x8c\x8f\x98\x1e\x9d\xc4\xb5\x93\xab\x1b\xd1\xbb\x6d\x5e\x1f\x4d\x07\x0b\xda\x0a\x59\x4e\x74\x43\x1b\x21\x40"
+"\xd1\xf0\xf4\xd4\xd2\xf6\xdd\xce\x65\x59\x91\x1f\x77\x8d\x93\x83\x9a\x1b\x9c\x94\x96\x9f\x1f\xe5\x07\xa0\x82\xa9\x1d\x0b\x83\xed"
+"\x0a\x97\x97\x8d\x8d\x94\x1a\x99\x80\x96\x7c\x84\x83\xf7\x1d\x1d\x92\x8e\x93\x93\x1e\x0e\xf7\x53\xf7\x47\x15\xb4\xad\xf7\x3a\xfb"
+"\x36\x05\x7c\x35\x0a\xf7\x17\x06\x74\x0a\x61\x06\xfb\x5d\xf7\x56\xf7\x2a\xf7\x0f\x05\xb8\x06\xa0\x97\x94\x9c\x0b\x15\x44\xfb\x8d"
+"\x05\x8a\x87\x8a\x87\x87\x1a\x78\x9a\x7c\x9f\x9a\x93\x91\xa0\x97\x1e\xf7\x29\xf7\xa0\x05\x0b\x7f\xd2\x80\x9f\x85\xa3\x7c\x08\xa5"
+"\x7b\x9b\x6d\x6b\x1a\x46\x48\x58\x30\x33\x45\xba\xc9\x86\x1e\x9f\x8a\x83\x94\x7b\x1b\x7a\x82\x80\x76\x1f\xfb\x01\x2b\x0a\x99\x07"
+"\x0b\x24\xf0\xfb\x13\x1f\x85\x58\xe3\x0a\x0b\x8b\x86\x8c\x84\x1f\x9d\xfb\xd4\x05\x75\x8c\x94\x81\x9b\x1b\x9b\x93\x95\xa1\x8c\x1f"
+"\x6c\xfb\x23\x15\x69\x72\x74\x6c\x6c\xa4\x73\xad\x1f\x97\x06\xad\xa5\xa3\xaa\xaa\x71\xa2\x69\x1f\x0b\x5a\x20\x0a\xf7\x55\x27\x0a"
+"\x2f\xf7\x74\x06\x52\xb9\xc2\x71\xd4\x1b\xf7\x12\xec\xe8\xf7\x0b\xf7\x0c\x2b\xe6\xfb\x14\x0b\x75\x1d\x7c\x80\x46\x1d\x3c\x1d\x98"
+"\x92\x66\x0a\x95\x89\x8f\x58\x1d\x45\x1d\x7f\x82\x88\x87\x80\x1a\x7d\x96\x80\x9a\x91\x91\x8e\x91\x93\x1e\xf3\xdf\xf4\x37\x05\x85"
+"\x93\x7d\x0a\x95\x89\x8f\x3d\x0a\xf8\xab\xf8\x3e\x15\x97\x92\x8f\x91\x94\x1a\x97\x80\x96\x80\x86\x85\x89\x86\x83\x1e\xfc\x53\xfb"
+"\xad\x05\x7f\x84\x87\x85\x81\x1a\x7f\x95\x80\x98\x90\x8d\x8c\x92\x96\x1e\x0e\x5d\x1d\xe0\x4d\x1d\x68\x87\x61\x71\x56\x1b\x56\x61"
+"\xa5\xae\x87\x1f\x9d\x89\x83\x93\x7c\x1b\x0e\x76\x1b\x71\x74\xcf\x0a\x9e\x1b\x95\xaa\x1d\x9e\x84\x0b\x26\x0a\xf7\x70\x16\x3f\x1d"
+"\x0e\x3c\x0a\x90\x1a\x9a\x80\x96\x7c\xf7\x03\x1d\x15\x97\x95\x8d\x8f\x98\x1d\x81\x1a\x7d\x96\x80\x9a\x92\x8f\x8d\x94\x96\x1e\x0e"
+"\x55\x1d\x65\x1d\x82\x81\x1e\xfb\x06\x2a\x05\x80\x82\x88\x86\x81\x0a\x8f\x30\x0a\x1b\xe1\xd7\x5a\x51\x90\x1f\xf1\x1d\x0b\x76\x80"
+"\x51\x0a\x0b\xc5\x0a\xa8\xfb\xd1\xd2\x0a\x0b\xf8\x25\x15\x9f\x82\x97\x7a\x7a\x82\x80\x76\xe6\x0a\x84\x88\x86\x80\x1e\x83\x7b\x0b"
+"\x52\x1d\xfb\x11\x06\x71\x0b\x76\x0a\xc6\xfc\x31\x64\x06\x75\x80\x82\x7b\x7a\xf7\x23\x1d\x0b\x15\xfc\x1a\x07\x4a\x8a\x5e\x5f\x4c"
+"\x1b\xfb\x14\x06\x3b\x0a\xf7\x15\x06\xe6\x89\xd2\xd2\x89\xe6\x08\xf8\x4d\x0b\xf7\x2a\xf7\x0a\x15\x9b\x80\x96\x7c\x7a\x82\x80\x76"
+"\x1e\x3a\x07\x76\x94\x80\x9c\x9b\x94\x96\x9f\x1e\x6c\xb1\xc0\x7b\xc8\x1b\x0b\x7f\x96\x7d\x77\x1d\x83\x80\x9c\x1d\xec\x0a\x84\x88"
+"\x85\x85\x1a\x7f\x95\x81\x97\x93\x8e\x8d\x97\x95\x1e\x0b\x82\xa5\x1f\xa5\x06\xf7\x31\xc8\x77\x56\x58\x4c\x6c\x26\x3e\x4f\x98\xaa"
+"\x48\x1f\x90\x82\x86\x8c\x86\x1b\x7e\x7e\x7e\x7d\x0b\x1a\x62\xa9\x73\xbe\xee\x0a\x74\x86\x89\x79\x1b\x71\x7f\x94\x9e\xa3\x0b\x75"
+"\x81\x51\x0a\x0b\xa5\xe9\x0a\x0b\x05\x95\x3e\x1d\xfb\x02\x06\x3b\x0a\xb8\x06\xfb\x2c\x0b\x05\xa0\x06\x9e\x98\xf7\x40\x1d\xfb\x03"
+"\x50\x0a\xaa\x06\xfb\x20\x0b\xf8\x89\xf7\x90\x60\x1d\xfc\x26\x20\x0a\x0e\xf8\xd0\xf7\x94\x60\x1d\xfc\xb4\x20\x0a\x0e\x80\x96\x7c"
+"\xf7\x0d\x0a\x7f\x89\x0b\xc5\x62\x53\x90\x1e\x77\x8c\x94\x82\x5c\x0a\xf0\xac\x1d\x0b\xfb\xd1\x63\x06\xf7\x13\x1d\x0b\x1e\xc8\x9b"
+"\xc1\xa7\xee\x1b\xe6\xc2\x72\x61\x7f\x87\x80\x81\x80\x1f\x74\x75\x41\x7c\x34\x1b\x71\x06\x0b\x80\x70\x6e\x1f\x7c\x7e\x85\x81\x82"
+"\x1a\x7d\xf4\x0a\x0b\xf8\x4d\xf8\xa0\x15\xae\x63\x5d\xeb\x0a\x0b\x15\x95\x94\x8e\x91\x93\x1a\x9a\x80\x96\x7d\x83\x87\x9d\x1d\x82"
+"\x88\x0b\x63\x29\x0a\xf7\x18\x06\x61\x1d\x63\x0b\x30\x07\xf7\x17\x1d\x30\x0b\x25\x1d\xb3\xfc\x61\x0b\xf7\x01\x0a\x96\x7f\x99\x92"
+"\x91\x68\x1d\x76\x80\x82\x7a\x7b\x96\x82\xa0\x1f\x0b\xf7\x21\x1d\xf7\x07\x2a\x05\x83\x0b\x1e\xfb\xf2\xfc\x2e\x05\x83\x83\x89\xf3"
+"\x0a\x0b\x84\xa2\x1b\xa4\xa0\xe8\x0a\x1a\x98\x80\x96\x7e\x83\x86\x89\x82\x82\x1e\x5d\x0b\xaa\x63\x56\x9c\x50\x1b\xfb\x1d\x29\x2c"
+"\xfb\x19\x0b\x06\xde\xbe\x98\xa5\xa4\x1f\x9f\xa0\x98\xad\xad\x1a\xd8\x4a\xb3\xfb\x13\x1e\x32\x0b\x91\x8d\x92\x93\x1e\xf3\xdf\xf4"
+"\x37\x05\x85\x93\x7d\x0a\x0b\x3a\x1d\xf7\x18\x22\x0a\x63\xf7\x84\x06\x0b\x68\x1f\x9d\x6b\x7d\x90\xf7\x03\x0a\x81\x1a\x0b\xe3\x0a"
+"\x0e\x82\x88\x87\x80\x1a\x7d\x97\x80\x99\x91\x91\x0b\x1f\x90\x82\x88\x8c\x85\x47\x1d\x85\x9b\x83\x1f\x81\x9f\x0b\x15\xf7\x25\x1d"
+"\x0b\x73\x24\x0a\xa4\x1e\xd5\x07\x8a\xac\x85\x90\x6a\x8c\x08\x0b\xb6\x80\x74\xaa\x1f\xa4\x77\x99\x70\x6e\x1a\x50\x56\x5d\x47\x1e"
+"\x0e\x1e\xfb\xea\x07\x59\xa6\x72\xc3\xc3\xb5\x9e\xa5\x98\x7f\x97\x7f\x86\x0b\x72\x77\x78\x72\x67\x1d\x9e\xa3\xa4\x77\x9f\x72\x1f"
+"\x0b\x95\xa5\xa6\x1f\x9f\x9e\x8f\x91\x95\xa4\x1d\x06\x9f\x97\x83\x0a\x0b\x06\x89\xf8\xcf\x15\x45\xfb\x05\xd1\x06\x0b\x9b\x53\x1b"
+"\xfb\x00\x3a\x47\x32\x5f\x9f\x63\xad\x74\x1f\xaa\x75\x0b\x81\x95\x7f\x83\x88\x89\x80\x82\x1e\xfb\xf3\xfc\x2e\x05\x85\x0b\xf7\x3a"
+"\x1d\xf7\x83\xe7\x15\x0b\xf7\x2e\x1d\x7e\x0b\x1b\xfb\x16\x34\x4f\x32\x3e\xcc\x56\x0b\x15\x7e\x87\x87\x75\x7a\x1f\x6a\x73\x75\x7b"
+"\x75\x1b\x7b\x0b\x96\x99\x96\x84\x94\x7f\x90\x1f\x93\x76\x67\x92\x76\x1b\x0b\x06\x33\x66\x84\x71\x64\x1f\x47\x5e\x68\x40\x27\x1a"
+"\x0b\x86\x85\x1a\x7f\x95\x81\x97\x94\x8d\x8d\x97\x95\x1e\x0b\x96\x81\xf7\x07\x0a\x0b\xd0\xbe\xe0\x94\x93\xb6\x8d\x08\x0b\x7f\x94"
+"\x77\x1f\x5a\xf8\x61\xbc\x06\x9f\x97\x94\x0b\x81\x1a\x7e\x96\x80\x99\x94\x91\x8f\x95\x93\x1e\x0b\x1e\xfb\x06\x2b\x05\x82\x84\x87"
+"\x83\x83\x1a\x7d\x0b\xa9\x1a\xc2\x5b\xb8\x51\x51\x5b\x5e\x54\x6d\x99\x0b\x76\x1b\x70\x75\x80\x70\x6e\x1f\x7c\x7e\x85\x81\x0b\x06"
+"\xf7\x08\x0a\x06\xfb\x59\xf8\x94\x05\x0b\x94\x7f\x9c\x9c\x94\x98\xa3\x1e\xf7\x01\x07\x0b\x99\x93\x93\x8e\x91\x90\x1e\xa8\xa7\x93"
+"\x90\x0b\x76\x94\x80\x9c\x9b\x94\x96\xa0\x1e\x0e\x94\x1a\x98\x80\x96\x7d\x1e\x0b\x06\x9e\x93\x92\x9c\x9b\x83\x92\x78\x1f\x0b\x06"
+"\x77\x7f\x82\x7a\x7b\x97\x82\x9f\x1f\x0b\x07\xa4\x99\x94\x9c\x9b\x7d\x94\x72\x1f\x0b\x84\x84\x88\x84\x83\x1e\x2a\x2f\x05\x7f\x0b"
+"\x15\x95\x93\x8f\x91\x94\x1a\x99\x7f\x97\x0b\x1a\x5a\x4c\x67\x36\x39\x48\xad\xb5\x1e\x0b", 45974
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusRoman-Bold.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusRoman-Bold.cff.cpp
new file mode 100644
index 0000000000..b9b7a319d7
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusRoman-Bold.cff.cpp
@@ -0,0 +1,1585 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusRoman_Bold_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x11\x4e\x69\x6d\x62\x75\x73\x52\x6f\x6d\x61\x6e\x2d\x42\x6f\x6c\x64\x00\x01\x01\x01\x33\xf9\xbc"
+"\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x14\x04\xfb\x01\x0c\x03\xd0\x0c\x04\xfb\x3c\xfb\xe9\xfa\xcb\xfa\xa8"
+"\x05\x1c\x28\x98\x0f\x1c\x28\xab\x11\xbd\x1d\x00\x00\xb4\xf9\x12\x01\xa6\x02\x00\x01\x00\x08\x00\x0e\x00\x13\x00\x1d\x00\x24\x00"
+"\x2b\x00\x35\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00\x6e\x00\x74\x00\x7a\x00\x84\x00\x8b\x00\x8e\x00"
+"\x95\x00\x9c\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00\xe3\x00\xe7\x00\xf2\x00\xf4\x00\xfa\x01\x04\x01"
+"\x0b\x01\x12\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01\x59\x01\x5f\x01\x6b\x01\x6f\x01\x71\x01\x77\x01"
+"\x7d\x01\x89\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01\xd0\x01\xd2\x01\xd5\x01\xdb\x01\xe1\x01\xed\x01"
+"\xf0\x01\xf6\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02\x38\x02\x3e\x02\x4b\x02\x52\x02\x59\x02\x60\x02"
+"\x6f\x02\x7b\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02\xb9\x02\xbf\x02\xc9\x02\xcd\x02\xd3\x02\xda\x02"
+"\xe3\x02\xec\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03\x3d\x03\x46\x03\x4f\x03\x58\x03\x61\x03\x6a\x03"
+"\x73\x03\x7c\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03\xcd\x03\xd6\x03\xdf\x03\xe8\x03\xf1\x03\xfa\x04"
+"\x03\x04\x0c\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04\x5d\x04\x66\x04\x6f\x04\x78\x04\x81\x04\x8a\x04"
+"\x93\x04\x9c\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04\xed\x04\xf6\x04\xff\x05\x08\x05\x11\x05\x1a\x05"
+"\x23\x05\x2c\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05\x7d\x05\x86\x05\x8f\x05\x98\x05\xa1\x05\xaa\x05"
+"\xb3\x05\xbc\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06\x0d\x06\x16\x06\x1f\x06\x28\x06\x31\x06\x3a\x06"
+"\x43\x06\x4c\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06\x9a\x06\xa3\x06\xac\x06\xb5\x06\xbf\x06\xc6\x06"
+"\xcf\x06\xdb\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07\x1b\x07\x21\x07\x26\x07\x2d\x07\x3a\x07\x40\x07"
+"\x46\x07\x50\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07\x92\x07\x9a\x07\xa3\x07\xae\x07\xb4\x07\xb9\x07"
+"\xbe\x07\xc4\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08\x10\x08\x12\x08\x19\x08\x21\x08\x29\x08\x33\x08"
+"\x3d\x08\x49\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08\x9c\x08\xa8\x08\xb4\x08\xba\x08\xc0\x08\xc6\x08"
+"\xd2\x08\xd6\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09\x1c\x09\x22\x09\x2e\x09\x38\x09\x40\x09\x42\x09"
+"\x48\x09\x55\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09\xa4\x09\xa7\x09\xa9\x09\xb0\x09\xbc\x09\xca\x09"
+"\xcd\x09\xda\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e\x0a\x34\x0a\x39\x0a\x42\x0a\x47\x0a"
+"\x50\x0a\x53\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d\x0a\xa4\x0a\xab\x0a\xb2\x0a\xb9\x0a"
+"\xc0\x0a\xc7\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d\x0b\x14\x0b\x1b\x0b\x22\x0b\x29\x0b"
+"\x30\x0b\x37\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d\x0b\x84\x0b\x8b\x0b\x92\x0b\x99\x0b"
+"\xa0\x0b\xa7\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed\x0b\xf4\x0b\xfb\x0c\x02\x0c\x09\x0c"
+"\x10\x0c\x17\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d\x0c\x64\x0c\x73\x0c\x87\x0c\x93\x0c"
+"\x98\x0c\x9e\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5\x0c\xe9\x0d\x1f\x0d\x5f\x0d\x70\x0d"
+"\x7c\x41\x45\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x41\x6d\x61"
+"\x63\x72\x6f\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x42\x65\x74\x61\x43\x61\x63\x75\x74\x65\x43"
+"\x63\x61\x72\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x43\x68\x69\x44\x63\x61"
+"\x72\x6f\x6e\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65\x45\x63\x61\x72\x6f\x6e\x45\x64\x6f\x74\x61\x63"
+"\x63\x65\x6e\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65\x6b\x45\x70\x73\x69\x6c\x6f\x6e\x45\x70\x73\x69"
+"\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45\x75\x72\x6f\x47\x61\x6d\x6d\x61\x47\x62\x72\x65"
+"\x76\x65\x47\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x47\x64\x6f\x74\x61\x63\x63"
+"\x65\x6e\x74\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a\x49\x62\x72\x65\x76\x65\x49\x64\x6f\x74\x61\x63"
+"\x63\x65\x6e\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f\x74\x61\x49\x6f\x74\x61\x64\x69\x65\x72\x65\x73"
+"\x69\x73\x49\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x4b\x61\x70\x70"
+"\x61\x4b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c\x61\x6d\x62\x64\x61\x4c\x63\x61\x72\x6f\x6e\x4c"
+"\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63\x75\x74\x65\x4e\x63\x61\x72\x6f\x6e\x4e\x63\x6f"
+"\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x4f\x6d"
+"\x61\x63\x72\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72\x6f\x6e\x4f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e"
+"\x6f\x73\x4f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73\x69\x52\x61\x63\x75\x74\x65\x52\x63\x61\x72\x6f"
+"\x6e\x52\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75\x74\x65\x53\x63\x65\x64\x69\x6c\x6c\x61\x53\x63"
+"\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x53\x69\x67\x6d\x61\x54\x61\x75\x54\x62\x61"
+"\x72\x54\x63\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54\x68\x65\x74\x61\x55\x62\x72\x65\x76\x65\x55\x68"
+"\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f\x67\x6f\x6e\x65\x6b\x55\x70\x73\x69\x6c\x6f\x6e"
+"\x55\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x55\x72\x69\x6e\x67"
+"\x55\x74\x69\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x57\x64\x69\x65\x72\x65\x73\x69\x73"
+"\x57\x67\x72\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59\x67\x72\x61\x76\x65\x5a\x61\x63\x75\x74\x65\x5a"
+"\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61\x65\x61\x63\x75\x74\x65\x61\x66\x69\x69\x30\x30"
+"\x32\x30\x38\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31\x38\x61\x66\x69\x69\x31\x30\x30\x31\x39\x61\x66"
+"\x69\x69\x31\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69\x31\x30\x30\x32\x32\x61\x66\x69\x69\x31\x30\x30"
+"\x32\x33\x61\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35\x61\x66\x69\x69\x31\x30\x30\x32\x36\x61\x66\x69"
+"\x69\x31\x30\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31\x30\x30\x32\x39\x61\x66\x69\x69\x31\x30\x30\x33"
+"\x30\x61\x66\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61\x66\x69\x69\x31\x30\x30\x33\x33\x61\x66\x69\x69"
+"\x31\x30\x30\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30\x30\x33\x36\x61\x66\x69\x69\x31\x30\x30\x33\x37"
+"\x61\x66\x69\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66\x69\x69\x31\x30\x30\x34\x30\x61\x66\x69\x69\x31"
+"\x30\x30\x34\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30\x34\x33\x61\x66\x69\x69\x31\x30\x30\x34\x34\x61"
+"\x66\x69\x69\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69\x69\x31\x30\x30\x34\x37\x61\x66\x69\x69\x31\x30"
+"\x30\x34\x38\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35\x30\x61\x66\x69\x69\x31\x30\x30\x35\x31\x61\x66"
+"\x69\x69\x31\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69\x31\x30\x30\x35\x34\x61\x66\x69\x69\x31\x30\x30"
+"\x35\x35\x61\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37\x61\x66\x69\x69\x31\x30\x30\x35\x38\x61\x66\x69"
+"\x69\x31\x30\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31\x30\x30\x36\x31\x61\x66\x69\x69\x31\x30\x30\x36"
+"\x32\x61\x66\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61\x66\x69\x69\x31\x30\x30\x36\x37\x61\x66\x69\x69"
+"\x31\x30\x30\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30\x30\x37\x30\x61\x66\x69\x69\x31\x30\x30\x37\x31"
+"\x61\x66\x69\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66\x69\x69\x31\x30\x30\x37\x34\x61\x66\x69\x69\x31"
+"\x30\x30\x37\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30\x37\x37\x61\x66\x69\x69\x31\x30\x30\x37\x38\x61"
+"\x66\x69\x69\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69\x69\x31\x30\x30\x38\x31\x61\x66\x69\x69\x31\x30"
+"\x30\x38\x32\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38\x34\x61\x66\x69\x69\x31\x30\x30\x38\x35\x61\x66"
+"\x69\x69\x31\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69\x31\x30\x30\x38\x38\x61\x66\x69\x69\x31\x30\x30"
+"\x38\x39\x61\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31\x61\x66\x69\x69\x31\x30\x30\x39\x32\x61\x66\x69"
+"\x69\x31\x30\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31\x30\x30\x39\x35\x61\x66\x69\x69\x31\x30\x30\x39"
+"\x36\x61\x66\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61\x66\x69\x69\x31\x30\x30\x39\x39\x61\x66\x69\x69"
+"\x31\x30\x31\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30\x31\x30\x32\x61\x66\x69\x69\x31\x30\x31\x30\x33"
+"\x61\x66\x69\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66\x69\x69\x31\x30\x31\x30\x36\x61\x66\x69\x69\x31"
+"\x30\x31\x30\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31\x30\x39\x61\x66\x69\x69\x31\x30\x31\x31\x30\x61"
+"\x66\x69\x69\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69\x69\x31\x30\x38\x34\x36\x61\x66\x69\x69\x36\x31"
+"\x32\x34\x38\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35\x32\x61\x6c\x70\x68\x61\x61\x6c\x70\x68\x61\x74"
+"\x6f\x6e\x6f\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x61\x6e\x67\x6c\x65\x72\x69\x67\x68\x74\x61\x6f"
+"\x67\x6f\x6e\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x61\x72\x72\x6f\x77\x62"
+"\x6f\x74\x68\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x72\x69\x67\x68\x74\x61"
+"\x72\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x62\x73\x65\x62\x65\x74\x61\x63"
+"\x61\x63\x75\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x63\x64\x6f\x74\x61\x63\x63\x65\x6e\x74"
+"\x63\x68\x69\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75\x62\x64\x63\x61\x72\x6f\x6e\x64\x63\x72\x6f\x61"
+"\x74\x64\x65\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x65\x62\x72\x65\x76\x65"
+"\x65\x63\x61\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d\x65\x6e\x74\x65\x6d\x61\x63\x72\x6f\x6e\x65\x6e"
+"\x67\x65\x6f\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x65\x71\x75\x69\x76"
+"\x61\x6c\x65\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74\x61\x74\x6f\x6e\x6f\x73\x65\x78\x63\x6c\x61\x6d"
+"\x64\x62\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65\x66\x72\x61\x6e\x63\x67\x61\x6d\x6d\x61\x67\x62"
+"\x72\x65\x76\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x67\x64\x6f\x74\x61"
+"\x63\x63\x65\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61\x72\x68\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78"
+"\x68\x65\x61\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d\x61\x63\x72\x6f\x6e\x69\x6e\x66\x69\x6e\x69\x74"
+"\x79\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69\x6e\x74\x65\x67\x72\x61\x6c\x74\x70\x69\x6e\x74"
+"\x65\x72\x73\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x69\x6f\x67\x6f\x6e\x65\x6b\x69\x6f\x74\x61"
+"\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x69\x6f\x74"
+"\x61\x74\x6f\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x6b\x61\x70\x70\x61\x6b\x63\x6f\x6d"
+"\x6d\x61\x61\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63\x6c\x61\x63\x75\x74\x65\x6c\x61\x6d\x62\x64\x61"
+"\x6c\x63\x61\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64\x6f\x74\x6c\x65\x73\x73\x65\x71\x75\x61\x6c\x6c"
+"\x69\x72\x61\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x6d\x75\x73"
+"\x69\x63\x61\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70\x6f\x73\x74\x72\x6f\x70\x68\x65\x6e\x63\x61\x72"
+"\x6f\x6e\x6e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x6e\x6f\x74\x65\x71\x75\x61\x6c"
+"\x6e\x75\x6f\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x6f\x6d\x61\x63\x72\x6f\x6e\x6f\x6d\x65\x67"
+"\x61\x6f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x6f\x72"
+"\x74\x68\x6f\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70\x61\x72\x74\x69\x61\x6c\x64\x69\x66\x66\x70\x65"
+"\x73\x65\x74\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62\x73\x65\x74\x70\x72\x6f\x70"
+"\x65\x72\x73\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65\x76\x65\x72\x73\x65\x64\x72\x61\x63\x75\x74\x65"
+"\x72\x61\x64\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x72\x65\x76\x6c\x6f\x67\x69"
+"\x63\x61\x6c\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69\x6c\x6c\x61\x73\x63\x69\x72\x63\x75\x6d\x66\x6c"
+"\x65\x78\x73\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64\x73\x69\x67\x6d\x61\x73\x6d\x69\x6c\x65\x66\x61"
+"\x63\x65\x73\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74\x61\x75\x74\x62\x61\x72\x74\x63\x61\x72\x6f\x6e"
+"\x74\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e\x6f\x73\x75\x62\x72\x65\x76\x65\x75\x68\x75\x6e"
+"\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65\x72\x73\x63\x6f\x72\x65\x64\x62\x6c\x75\x6e\x69"
+"\x30\x30\x41\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e\x69\x30\x32\x31\x42\x75\x6e\x69\x30\x32\x43\x39"
+"\x75\x6e\x69\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41\x39\x75\x6e\x69\x30\x33\x42\x43\x75\x6e\x69\x30"
+"\x33\x43\x32\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69\x30\x34\x35\x30\x75\x6e\x69\x30\x34\x35\x44\x75"
+"\x6e\x69\x30\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36\x75\x6e\x69\x30\x34\x39\x37\x75\x6e\x69\x30\x34"
+"\x39\x38\x75\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30\x34\x39\x42\x75\x6e\x69\x30\x34\x39\x43\x75\x6e"
+"\x69\x30\x34\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75\x6e\x69\x30\x34\x41\x32\x75\x6e\x69\x30\x34\x41"
+"\x33\x75\x6e\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34\x41\x45\x75\x6e\x69\x30\x34\x41\x46\x75\x6e\x69"
+"\x30\x34\x42\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e\x69\x30\x34\x42\x33\x75\x6e\x69\x30\x34\x42\x36"
+"\x75\x6e\x69\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42\x39\x75\x6e\x69\x30\x34\x42\x41\x75\x6e\x69\x30"
+"\x34\x42\x42\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69\x30\x34\x43\x43\x75\x6e\x69\x30\x34\x44\x38\x75"
+"\x6e\x69\x30\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38\x75\x6e\x69\x30\x34\x45\x39\x75\x6e\x69\x30\x34"
+"\x45\x45\x75\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32\x30\x41\x46\x75\x6e\x69\x32\x31\x32\x36\x75\x6e"
+"\x69\x32\x32\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75\x6e\x69\x32\x32\x32\x38\x75\x6e\x69\x32\x32\x39"
+"\x35\x75\x6e\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x75\x6f\x67\x6f\x6e\x65\x6b\x75\x70\x73"
+"\x69\x6c\x6f\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73"
+"\x69\x73\x74\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75\x72\x69\x6e\x67\x75\x74\x69\x6c\x64\x65\x77\x61"
+"\x63\x75\x74\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72\x65\x73\x69\x73\x77\x67\x72\x61\x76\x65\x78\x69"
+"\x79\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63\x75\x74\x65\x7a\x64\x6f\x74\x61\x63\x63\x65\x6e"
+"\x74\x7a\x65\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20"
+"\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x43"
+"\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20"
+"\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x4e"
+"\x69\x6d\x62\x75\x73\x20\x52\x6f\x6d\x61\x6e\x20\x42\x6f\x6c\x64\x4e\x69\x6d\x62\x75\x73\x20\x52\x6f\x6d\x61\x6e\x00\xd4\x02\x00"
+"\x01\x00\x0a\x00\x13\x00\x1b\x00\x3e\x00\x98\x00\xd7\x01\x1e\x01\x55\x01\x6c\x01\x79\x01\x84\x01\x8b\x01\x95\x01\xa7\x02\x23\x02"
+"\x91\x02\xd8\x03\x16\x03\x19\x03\x9a\x04\x0c\x04\x4d\x04\x82\x04\xbb\x04\xdd\x04\xf9\x05\x04\x05\x09\x05\x17\x05\x24\x05\x2f\x05"
+"\x36\x05\x3e\x05\x48\x05\x51\x05\x58\x05\x60\x05\x65\x05\x6b\x05\xcd\x05\xd7\x05\xf1\x05\xf5\x06\x00\x06\x1a\x06\x24\x06\x3e\x06"
+"\x4d\x06\x64\x06\x78\x06\x7d\x06\x96\x06\xa8\x06\xb4\x06\xd1\x06\xe2\x06\xeb\x06\xee\x06\xfa\x07\x03\x07\x0e\x07\x16\x07\x27\x07"
+"\x2f\x07\x32\x07\x3b\x07\x4a\x07\x59\x07\x62\x07\x6b\x07\x72\x07\x80\x07\x88\x07\x94\x08\x14\x08\x5a\x08\xca\x09\x08\x09\x73\x09"
+"\x78\x09\xdf\x0a\x0e\x0a\x5a\x0a\x9f\x0a\xfd\x0b\x28\x0b\x7f\x0b\xd5\x0c\x27\x0c\x70\x0c\xb0\x0c\xf0\x0d\x1e\x0d\x34\x0d\x4b\x0d"
+"\x68\x0d\x9d\x0d\xa8\x0d\xd2\x0e\x00\x0e\x2e\x0e\x50\x0e\x65\x0e\x78\x0e\x90\x0e\x95\x0e\xa8\x0e\xc6\x0e\xe6\x0e\xf5\x0f\x1f\x0f"
+"\x30\x0f\x58\x0f\x70\x0f\x7d\x0f\xa1\x0f\xbc\x0f\xdf\x0f\xef\x10\x11\x10\x19\x10\x3b\x10\x4d\x10\x6c\x10\x80\x10\x98\x10\xb4\x10"
+"\xd0\x10\xec\x11\x07\x11\x11\x11\x18\x11\x32\x11\x4b\x11\x64\x11\x75\x11\x83\x11\x8e\x11\xa6\x11\xbe\x11\xd5\x11\xec\x12\x03\x12"
+"\x1a\x12\x29\x12\x3e\x12\x4b\x12\x4f\x12\x5d\x12\x69\x12\x7e\x12\x93\x12\xa8\x12\xbd\x12\xd1\x12\xe5\x12\xf2\x13\x00\x13\x14\x13"
+"\x26\x13\x39\x13\x4c\x13\x5a\x13\x68\x13\x7b\x13\x8e\x13\xa0\x13\xb2\x13\xc3\x13\xd4\x13\xd9\x13\xe3\x13\xf3\x14\x03\x14\x13\x14"
+"\x23\x14\x33\x14\x43\x14\x47\x14\x56\x14\x65\x14\x72\x14\x80\x14\x8e\x14\x9c\x14\xa8\x14\xaf\x14\xbc\x14\xc9\x14\xd6\x14\xe3\x14"
+"\xf0\x14\xf8\x15\x04\x15\x10\x15\x1c\x15\x28\x15\x34\x15\x40\x15\x4c\x15\x58\x15\x64\x15\x6f\x15\x7a\x15\x85\x15\x90\x15\x9b\x15"
+"\xa6\x15\xb1\x15\xbc\x15\xc7\x15\xd0\x06\x56\x8e\x7c\x9c\x8d\xc3\x08\x0b\x07\x8d\x53\x7c\x7a\x56\x88\x08\x0b\x15\xc3\x06\xf7\x22"
+"\xe3\x05\x0b\x76\x1d\x58\x96\xa1\x78\xbc\x1b\xb6\xaa\x9b\xb4\xb1\x1f\xfb\x57\xc4\x15\x6c\x70\x77\x7f\x73\x1b\x6d\x76\xa6\xb3\xc5"
+"\xb5\xb5\xdb\xa0\x1f\x0b\xf9\x51\xf9\x38\x15\xfb\x70\x72\x06\xd8\x86\xa0\x76\x42\x1a\xfb\xc5\x07\xfb\x28\x53\x46\xfb\x0b\x24\x5f"
+"\xc6\xf7\x1c\x1e\xf7\xe2\x07\x8d\xd8\x99\x98\xdc\x8d\x08\xa4\xfb\xe6\x72\x07\xd0\x85\x96\x7e\x8d\x42\x08\xfb\xe2\x07\x29\xa0\x5a"
+"\xc8\x5f\x1e\x68\xbb\xcb\x79\xd4\x1b\xd5\xd1\xa1\xb0\xb6\x1f\xb8\xb1\xa5\xd7\xe8\x1a\xf7\xd3\x07\x8c\xc7\x99\x9b\xca\x94\x08\x0b"
+"\xf8\x26\xf7\x11\x15\xbe\x1d\xf7\x90\x06\x85\xdf\x7c\xba\x6b\xb1\x08\xb2\x6b\x5c\x9f\x53\x1b\xfb\x10\x37\x28\xfb\x26\xfb\x26\xdd"
+"\x2b\xf7\x10\xdc\xbc\xaa\xe9\xcc\x1f\xfb\x9a\xf7\x3f\x15\xf7\x0c\x8e\x9d\xb3\xbc\x1b\xba\x9a\x69\xfb\x03\x8d\x1f\x7c\x07\x0b\xf8"
+"\x1d\xf9\x47\x15\xfb\x66\xfb\x28\xfb\x27\xfb\x65\xfb\x63\xf7\x27\xfb\x27\xf7\x63\xf7\x63\xf7\x27\xf7\x27\xf7\x64\xf7\x60\xfb\x28"
+"\xf7\x2b\xfb\x5e\x1f\x8a\x6a\x15\xf7\x02\xcb\xfb\x0d\xfb\x64\xfb\x62\x4e\xfb\x01\xfb\x08\xfb\x07\x4d\xf7\x01\xf7\x5f\xf7\x6c\xca"
+"\xf7\x08\xf7\x09\x1f\x0b\xf7\x8f\xf8\x6d\x15\xfb\x14\x29\x22\xfb\x1c\xfb\x23\xe9\x24\xf7\x18\xf7\x16\xea\xf2\xf7\x20\xf7\x21\x2b"
+"\xf2\xfb\x15\x1f\x8c\x6c\x15\xc5\x9e\x54\xfb\x38\xfb\x2e\x77\x57\x51\x50\x77\xbe\xf7\x27\xf7\x43\x9d\xbf\xc9\x1f\x0b\x15\xfb\x1d"
+"\xf7\x31\x05\x9d\x7b\x78\x95\x78\x1b\x71\x76\x77\x72\x77\x96\x7d\xa8\x79\x46\x1d\xf7\x93\x63\x1d\xb7\x83\x93\xcb\x1d\xf7\x83\x07"
+"\x0b\x15\xf1\x1d\xa8\xae\xaf\x6d\xa9\x68\x1f\x0e\x15\xc3\x06\xf7\x22\x59\x1d\xc0\x8d\x08\x9e\x9f\xfb\xd0\xb5\x1d\x0b\x5d\x65\x65"
+"\x5d\x5b\xaf\x66\xba\xbb\xb1\xaf\xba\xbb\x65\xb1\x5c\x1f\x0b\xfa\x69\xf9\x38\x15\xfb\x4a\x72\x06\xc1\x88\x9a\x81\x6c\x1a\x7e\x88"
+"\x7c\x87\x7d\x1e\xfb\x04\xfb\xeb\xfb\x00\xf7\xe4\x05\x80\xad\x88\x97\x95\x1a\xa3\x9a\x94\xb7\x8e\x1e\x8d\x90\x8b\x8c\x91\x1f\xa4"
+"\xfb\xcc\x72\x07\xb4\x89\x9f\x82\x96\x73\xae\x2b\x18\xfb\x0a\xfb\xc8\xfb\x0c\xf8\x00\x05\x86\x9c\x89\x92\x94\x1a\xa8\x97\x94\xbf"
+"\x8f\x1e\xa4\xfb\xba\x72\x07\xb5\x85\x95\x82\x9c\x5a\xf7\x68\xfc\xee\x18\xa7\x06\xf7\x4e\xf8\x71\xf7\x3f\xfc\x71\x05\xa6\x06\xf7"
+"\x5c\xf8\xee\x98\xb3\xa1\xa0\xad\x8e\x19\x0b\xf7\xe8\xf7\xda\x15\xf7\x25\x75\x07\x7c\x85\x85\x86\x7e\x1b\x85\x82\x8d\x90\x7b\x1f"
+"\x96\x6b\x74\x8f\x74\x1b\x30\x49\x4d\x37\x49\xb4\x5d\xf0\x60\x1f\xd0\x6d\xa6\x72\x6b\x1a\x64\x6d\x71\x5e\x45\x5d\xb8\xe2\x76\x1e"
+"\x6f\xfb\x39\xa4\x06\xa1\x96\x91\x91\x94\x1b\x90\x93\x89\x87\x95\x1f\x7f\xa8\xbd\x80\xa8\x1b\xe6\xca\xc9\xe5\xd2\x65\xb6\x27\xb5"
+"\x1f\x47\xa8\x6f\xa4\xad\x1a\xac\xa7\xa4\xb1\xa6\xa5\x80\x76\xa1\x1e\xa0\x77\x96\x79\x9a\x5f\x08\x0b\x9b\x16\xf7\x77\xa4\x06\x3f"
+"\x93\x79\x9e\x8a\xd3\x08\xf8\x26\x07\xf8\x53\xfc\xb4\x05\xa7\xf8\xe1\x06\xc4\x98\x99\xcc\x94\x1e\xa4\xfb\x6b\x72\x07\xd4\x84\x9f"
+"\x76\x44\x1a\xfb\xc5\x07\xfb\xf1\xf8\x41\x05\xfb\x67\x72\x06\x9f\x9c\x7c\x52\xbb\x1f\xfc\x6e\x07\x8a\x50\x7b\x7e\x44\x83\x08\x0b"
+"\xf9\x12\xf7\x77\x15\x6e\x06\x6a\x3d\x77\x6c\x68\x6b\x08\x66\x62\x53\x79\x3d\x1b\x4e\x79\x98\xb6\x1f\xf8\x6c\x07\x8d\xd8\x99\x98"
+"\xe0\x8d\x08\xa4\xfb\xf1\x72\x07\xcd\x88\x9e\x7b\x8c\x57\x08\xfc\x78\x07\x8a\x57\x7d\x80\x44\x83\x08\x72\xf8\xd6\x07\x0b\x87\x1d"
+"\x0e\xf8\x78\xf8\x6f\x15\xf7\x6d\x6d\x07\x70\x83\x85\x84\x79\x1b\x82\x7f\x8e\x92\x76\x1f\x9c\x5d\x6b\x91\x64\x1b\xfb\x1c\x38\x3e"
+"\xfb\x13\x34\xbf\x4c\xf7\x0b\x52\x1f\xce\x6b\x05\xe3\x61\xa3\x71\x56\x1a\x46\x5a\x5f\x3e\x50\x5a\xa4\xbc\x65\x1e\x70\xb0\x7d\xac"
+"\x7a\xd1\x08\x6e\xfb\x8b\xa8\x06\xa5\x91\x93\x93\x9b\x1b\x93\x96\x88\x84\xa1\x1f\x7a\xbc\xb0\x84\xb7\x1b\xf7\x28\xef\xe0\xf7\x12"
+"\xd6\x5e\xd6\x4a\xab\x1f\xfb\x27\xd4\x05\x3a\xb3\x75\xa4\xbb\x1a\xc9\xb5\xb1\xcf\xb8\xb5\x78\x66\xaf\x1e\xad\x68\x9b\x6e\x9f\x4a"
+"\x08\x0b\xf9\x5f\xa4\x15\x79\x7e\x90\x99\x81\x1f\xfb\x5d\xf7\xb1\xc6\x9e\xa4\x97\xa7\xa5\x19\xa8\xa6\x9b\xb3\xb8\x1a\xf7\x08\x28"
+"\xc9\xfb\x4b\x1e\xfb\xd6\x72\x06\xd3\x87\x99\x7d\x8d\x41\x08\xfc\x4e\x07\x89\x41\x82\x81\x3e\x83\x08\x72\xf7\xe6\xa4\x07\x3f\x94"
+"\x81\x96\x89\xd3\x08\xf7\x58\xa6\x07\xf7\x63\xfb\xcd\x05\xf7\x61\x06\xfc\x4b\xf8\xec\x15\x91\x8f\x9a\x8e\x91\x1e\x95\x91\x9b\x90"
+"\xa4\x1b\xe7\xb0\x60\x22\x4b\x7c\x64\x6b\x76\x1f\x71\x7a\x69\x84\x3f\x8a\x08\x0b\xf7\xbb\xa3\x15\x4e\x8e\x80\x98\x8a\xca\x08\xf7"
+"\x51\x07\xbf\xa7\xb6\xac\x93\x94\x84\x7b\x96\x1e\x70\x9e\x9a\x82\xa5\x1b\xb0\xa5\xa7\xb1\xb9\x69\xac\x5c\x59\x65\x71\x47\x5c\x1f"
+"\xdd\xfb\x51\x73\x07\xb5\x86\x96\x7f\x42\x1d\x81\x80\x60\x84\x08\x73\xf7\x9e\x07\x0b\xf8\x30\xf7\x01\x15\x61\x66\x71\x7d\x62\x1b"
+"\x34\x54\xe2\xf7\x1c\xf2\xab\xca\xbf\x9b\x9a\x83\x80\x91\x1f\x90\x82\x8b\x8b\x61\x62\x1d\x33\xfb\x1c\x27\x21\xfb\x24\xfb\x1f\xe4"
+"\x29\xf7\x11\xd8\xc3\xaa\xd5\xc5\x1f\x0b\xf9\x0e\xf7\x85\x15\x71\x06\x5e\xfb\x3a\x54\x66\xfb\x65\x88\x08\x41\x06\xf8\x0f\xf9\x05"
+"\x05\x9b\xfc\xa0\x07\x76\xfb\x62\x05\xa7\x06\xbb\xf7\x1f\xb8\xaa\xf7\x27\x89\x97\x8c\xad\x8c\xb0\x8c\xfc\x12\xfd\x05\x18\x7b\xf8"
+"\xd8\x07\x0b\x15\x51\x5a\x5a\x53\x4f\xba\x5b\xc6\xc7\xba\xba\xc6\xc5\x5b\xbc\x44\x1d\x6f\x6b\x6c\x70\x71\x6a\x6c\x71\xa5\xab\xab"
+"\xa6\xa6\xaa\x1f\x0e\xf7\x0e\x07\xc2\x99\xa1\xaf\x9d\x96\x84\x7f\x86\x88\x85\x85\x81\x1e\x82\x7c\x87\x81\x80\x1a\x6c\xa5\x73\xad"
+"\x0b\xd3\x1d\x8f\x7e\x9b\xb0\x1a\xf7\x9f\x07\x0b\xf9\x44\xd6\x1d\x0b\x9f\x93\x95\xa2\x1a\xa6\x78\x9c\x6e\x78\x7a\x82\x78\x0b\x77"
+"\x07\xa8\x8a\x9b\x76\x89\x66\x08\xfb\xba\x07\x0b\xa0\xa5\x8e\x08\x9f\xfb\x61\x77\x07\xa8\x0b\x08\xa8\xf7\x43\x71\x06\x0b\x3a\x08"
+"\xa8\xf7\x31\x71\x06\x0b\x07\x89\xb0\x9b\xa0\xa9\x8c\x08\x9f\x0b\x8c\x61\x08\xfb\xba\x07\x8a\x61\x0b\x08\x72\xf7\xe5\xa4\x07\x0b"
+"\x51\x1f\x8a\x5b\x15\xab\xa6\x0b\x82\x78\x7a\x1e\x0e\x1f\xf7\x22\x33\x05\x0e\xf9\x25\xf7\x2c\x15\x50\x4d\x6b\x73\x5a\x78\x08\x7f"
+"\x6e\x6a\x85\x6f\x1b\x49\x4c\xae\xbf\x6e\x1f\x6e\xc0\x7d\xd2\xf0\x1a\xf7\x63\xcb\xf7\x02\xf7\x0c\xba\xb5\x79\x65\xb7\x1e\xb6\x65"
+"\xa3\x68\xad\x40\x08\xa4\xf7\x7e\x70\x06\x67\x7c\x82\x81\x76\x1b\x82\x7d\x8f\x95\x75\x1f\xa3\x52\x5a\x96\x5b\x1b\xfb\x5c\xfb\x29"
+"\xfb\x2d\xfb\x61\xfb\x63\xf7\x26\xfb\x25\xf7\x64\xf7\x07\xcf\xae\xf7\x03\xf0\x1f\x0b\xf8\x95\xa4\x15\x7e\x1d\xf7\xf9\x07\x0b\x15"
+"\x58\x1d\x9f\xfb\xd0\x77\x9e\x06\xc0\x89\x9a\x78\x89\x51\x08\xfc\x67\x21\x1d\x78\x77\xf7\xd0\x06\x0b\x15\xf3\x8f\x1d\xf8\xa1\x07"
+"\x89\xc5\x9a\x9e\x2c\x1d\x06\x0e\xe0\x1d\x6f\x1b\x80\x89\x8c\x96\x72\x1f\x63\x9d\x05\x98\x6e\x73\x91\x76\x1b\x4e\x67\x64\x35\x79"
+"\x1f\x0e\xb0\x1d\xa8\xae\xaf\x6d\xa9\x68\x1f\x0e\xcf\x86\x99\x7c\x8d\x43\x08\xfc\x4e\x07\x8a\x4d\x7d\x75\x5e\x87\x08\x88\x81\x89"
+"\x89\x80\x1f\xf7\x8a\x0b\x22\x1d\xac\x9f\x92\x95\xa2\x1a\xa5\x78\x9d\x6e\x78\x60\x1d\xf7\x11\xf8\x35\x15\x5d\x65\x65\x5d\x5b\xaf"
+"\x66\xba\xbc\xb0\xaf\xbb\xb9\x65\xb2\x5c\x1f\x0e\x77\x98\x06\xc0\x89\x9b\x78\x89\x51\x08\xfb\x27\x07\x28\xc4\x5a\xf7\x06\xc4\x0b"
+"\xa3\x1d\xed\x05\x0e\x2d\x08\xa1\xf7\x4a\xfc\x9b\x77\x9d\x06\xc1\x89\x9a\x79\xeb\x1d\x55\x88\x08\x79\x77\xf8\xa7\x06\x0b\xfb\x49"
+"\x54\x90\x77\x05\x8e\x93\x90\x8c\x8e\x1b\xa3\x96\x77\x5f\x1f\x0b\xfb\x54\x73\x07\xb9\x82\x91\x85\x8c\x60\x08\x0b\x95\x95\x1e\xa1"
+"\xa1\xa3\x97\xa2\x1b\xae\x9c\x70\x53\x1f\xfb\x86\x07\x8a\x65\x7e\x7b\x6a\x88\x08\x73\xf7\x7f\x07\x0b\x1a\xca\x67\xb5\x55\x5d\x6e"
+"\x6e\x5e\x60\xa5\x6f\xb3\x8f\xe3\x1d\x0b\x78\x61\x1d\x9e\xc0\x8d\x08\x9e\x0b\xc5\x1d\x0e\xfb\x52\x73\x07\xac\x8a\x9c\x78\x8c\x65"
+"\x08\x0b\x06\xa8\x8c\x9c\x75\x89\x66\x08\x0b\x06\x38\x68\x84\x72\x66\x1f\x4a\x60\x69\x0b\x07\x66\x8d\x7b\x75\x6d\x1b\x0b\xbe\xba"
+"\xa8\xb9\xa4\x1e\x75\x99\x86\x89\x8a\x8a\x83\x87\x19\x81\x0b\x1e\xad\xa6\xad\x9c\xb3\x1b\x0e\x7a\x45\x1d\x20\x1d\xf8\x67\x07\x89"
+"\xc5\x9a\x0b\x1a\x59\x8c\x9c\x75\xb1\x1b\xb5\xa5\xa3\xb2\xc9\x48\xbb\x0b\xa3\x15\x69\x8f\x7e\x9a\xb1\x1a\xf8\x10\xfb\x54\x73\x07"
+"\x0b\x15\xa7\x8f\x9e\x9e\xa5\x1b\x98\x0b\x52\x5f\xc4\xfb\xe1\x06\x8a\x5f\x0b\x77\x9e\x06\xbf\x89\x9b\x0b\x8b\x8c\x91\x1e\x8c\x8e"
+"\x8d\x8b\x8d\x1b\x96\x93\x82\x0b\x15\x8d\x95\x91\xae\x05\x9d\x0b\x65\x77\x7b\x7d\x76\x1b\x6f\x80\x9c\xb3\x1f\x0b\xf7\xe0\xf7\x97"
+"\x15\xee\xfb\x49\x05\x94\x7c\x8d\x84\x82\x1a\x7b\x7b\x80\x70\x1e\x7c\x77\xf7\xb9\x9f\x7f\x06\x71\x89\x6a\xb0\x5f\xda\xfb\x23\xf7"
+"\x91\x18\xea\xf7\x1e\xcc\xe7\xa3\x9d\xc9\x92\x19\x9f\xfb\x75\x77\x97\x07\xaa\xa3\x77\x72\x7a\x83\x78\x7b\x74\x1f\x37\xfb\x0b\x3b"
+"\xf7\x26\x05\x7c\xa8\x87\x95\x94\x1a\x9c\x9c\x97\xa4\x1e\x9c\x9f\xfb\xc1\x77\x06\xbd\x88\xa7\x6f\xc5\x23\xf7\x0b\xfb\x6b\x18\xfb"
+"\x05\xfb\x37\x05\x3d\x55\x65\x6c\x63\x1b\x81\x77\xf7\x79\x9f\x78\x06\x66\x74\x9a\xa4\x98\x91\x9a\x9a\xa1\x1f\x0e\xf7\xbb\x15\x9f"
+"\xa6\xf7\x1a\xfb\x7e\x05\x99\x73\x91\x7d\xcc\x1d\x84\x91\x68\xc8\xfb\x65\xf7\xf5\x18\xcc\xdc\x05\xec\xd9\xad\xa2\xd3\x1b\x9f\xfb"
+"\x7f\xa7\x1d\x9d\xc0\x8d\x08\x93\x9f\xfb\xc5\x77\x9e\x06\xc0\x89\x9a\x79\x89\x53\x08\xfc\x6a\x21\x1d\x78\x77\xf7\xc5\x9f\x83\x20"
+"\x1d\x0b\xf8\x95\xf8\x61\x15\xfb\x6a\x74\x06\xa9\x86\x9c\x87\x90\x88\x08\x8f\x88\x8e\x85\x86\x1a\x81\x81\x79\x80\x80\x1e\xfb\x14"
+"\xfb\x14\x05\xf8\x43\xfb\x4f\x73\x07\xab\x8a\x9a\x79\x8c\x64\x08\xfc\x92\x07\x8a\x63\x7b\x78\x6c\x8a\x08\x73\xf7\x83\xa3\x07\x5c"
+"\x92\x87\x91\x8a\xba\x08\xf7\x06\x07\xa2\xa3\xea\xfb\x1a\x05\x9d\x72\x91\x7f\x83\x1a\x7f\x7d\x85\x6f\x8a\x1e\x73\xf7\x7e\xa3\x07"
+"\x80\x86\x8e\x97\x82\x1f\xfb\x56\xf7\xa0\xef\xf4\xa5\x9d\xca\x93\x19\x0b\x9e\x1d\xe0\xf7\x0d\x1a\xf7\x66\xca\xf7\x02\xf7\x0d\xba"
+"\xb5\x79\x65\xb6\x1e\xb7\x65\xa2\x68\xae\x40\x08\xa4\xf7\x7e\x70\x06\x67\x7c\x82\x81\x76\x1b\x82\x7d\x8f\x95\x75\x1f\xa3\x51\x5b"
+"\x96\x5a\x1b\xfb\x5b\xfb\x29\xfb\x2d\xfb\x62\xfb\x63\x88\x1d\x0b\xf7\xbe\xf7\x55\x15\x50\xf7\x21\x05\x7e\xab\x86\x9e\x9a\x1a\x9f"
+"\x96\x97\x9e\x1e\x94\x9f\xfb\x74\x77\x06\xac\x83\x92\x81\xb6\xfb\x01\xf7\x09\xfb\xb0\x18\x6e\x40\x05\x66\x7c\x7d\x79\x7d\x1b\x84"
+"\x86\x90\x92\x1f\x92\x07\x8c\x90\x8b\x8f\x8e\x1a\xa8\x74\xa1\x6e\x69\x74\x72\x67\x62\xaf\x6a\xba\xba\xb1\xad\xcb\xa3\x1e\xf7\x1d"
+"\xf8\x05\xb8\xf7\x0b\x90\x92\xb0\x8c\x19\x9f\xfb\x24\x77\x97\x07\x9e\x99\x7e\x78\x7a\x85\x6e\x81\x6f\x1f\x0b\xf7\xa4\x71\x1d\x0b"
+"\x15\xfb\x1f\x06\x71\x3a\x05\xd3\x65\x6b\xa1\x49\x1b\xfb\x14\x2d\xfb\x01\xfb\x28\xfb\x1a\xd6\x34\xf7\x06\xda\xcb\xb0\xd0\xb4\x1f"
+"\x94\x63\x92\x78\x9b\x76\x08\x7c\x96\x96\x81\x93\x1b\x8e\x91\x8d\x8e\x92\x1f\xec\xb3\x80\xaa\x05\x87\x7f\x85\x8a\x83\x1b\x61\x6b"
+"\xb0\xd4\x79\x1f\xfb\x02\x9d\x15\x83\x67\x70\x4c\x79\x71\x08\x7a\x80\x75\x7f\x7a\x1b\x5f\x77\xbf\xf7\x04\xf7\x1f\xab\xde\xc2\xb2"
+"\xa5\x61\xfb\x08\xac\x1f\x0e\xf7\x33\x15\xf8\x28\x07\x89\xc5\x9a\x9e\x2c\x1d\x77\xf7\xd0\x9f\x78\x06\x57\x8e\x7c\x9b\x8c\xbf\xf7"
+"\x8d\xf8\x32\x18\xfc\x2d\x96\x1d\x9f\xfb\xcf\x77\x9e\x06\xbc\x8a\x9e\x77\x89\x5c\x08\x0b\xf8\x6c\xf7\x60\x15\xfb\x4c\xf8\x5e\x05"
+"\xfb\x91\x77\x9e\x06\xc0\x89\x9a\x78\x89\x51\x08\xfc\x67\x21\x1d\x78\x77\xf7\x5f\x9f\x7e\x06\x51\x8c\x7a\x9c\x8e\xc5\x08\xf8\x9e"
+"\x07\xf7\x91\xfc\xfe\x05\x9c\x06\xf7\x95\xf8\xe5\x05\xfc\x85\x07\x8d\x53\x7b\x7a\x57\x88\x08\x71\x77\xf7\xd7\xb3\x1d\x9f\xfb\x84"
+"\x06\x0e\xf7\xb0\xf7\xd3\x15\xa6\x06\xb6\xa5\x77\x5a\x9f\x1f\x94\x75\x8f\x79\x72\x1a\x83\xa2\xf7\xd7\x74\x07\x82\x2c\x6a\x5d\x4f"
+"\x89\x08\x70\xf7\xa3\xf7\x06\x06\xe5\x88\xbf\x58\x95\x53\x1d\xab\xf7\x5f\x05\x72\x06\x74\xfb\x03\x44\x53\xfb\x09\x8c\x08\x65\x06"
+"\x5e\x7c\x9d\xc0\x8d\x1f\x0b\xf8\x05\xf7\x2b\x15\x43\x7b\x65\x63\x56\x1b\x57\x68\xb7\xcb\xa0\x8e\x9b\x93\xa0\x1f\x78\xa9\xa5\x82"
+"\xa7\x1b\xb2\xa6\xa1\xa9\xa7\x74\x9e\x69\x6f\x73\x85\x7d\x69\x1f\x7e\xa0\x86\x9a\x9c\x1a\xb0\xab\xa5\xb9\xb4\xa8\x83\x75\xb0\x1e"
+"\x9e\xe6\x05\x9d\x54\x6a\x91\x5a\x1b\xfb\x01\x45\x5d\x45\x5f\xa2\x6b\xc0\x6f\x1f\x4c\x6c\x70\x68\x56\x1a\x3d\xcb\x59\xf0\xf3\xcc"
+"\xbf\xf1\xa1\x1e\x0b\x15\x66\x8d\x7e\x9a\x8c\xb3\x08\xf7\x8f\x07\xe1\x56\xc2\x39\x4f\x5d\x6f\x50\x66\x1e\xd6\xfb\x53\x73\x07\xb7"
+"\x84\x93\x82\x8c\x60\x08\xfb\xba\x3a\x1d\x8e\x92\x96\x56\x1d\x0b\xf8\x6d\xcb\x15\x81\x81\x05\x88\x88\x88\x8a\x86\x1b\x7d\x84\x93"
+"\x9c\x1f\xf7\x99\x07\xe0\x3f\xbf\xfb\x0e\xfb\x05\x3f\x58\x40\x61\xa3\x73\xb4\xb3\xa7\xa3\xad\x99\x86\x98\x7e\x9b\x1e\x82\x95\x88"
+"\x91\x91\x1a\xa0\xa6\x9b\xaf\xc6\xa4\x70\x4e\x1e\x42\x07\xfb\x0b\x67\x5a\x78\x66\x71\x08\x5f\x6d\x77\x69\x60\x1a\x4e\xb9\x5e\xcc"
+"\xc4\xb9\x9f\xbd\xc2\x1e\x0b\xf8\x22\xf7\x0e\x15\x5c\x64\x6d\x79\x61\x1b\x65\x6e\x9c\xae\x77\x1f\x78\xaa\x84\xac\x87\xce\x08\xf7"
+"\x8b\x06\x85\xdc\x7c\xba\x6c\xb1\x08\xb0\x6b\x5e\x9f\x54\x1b\xfb\x0d\x38\x2a\xfb\x23\xfb\x23\xdb\x2d\xf7\x0e\xda\xbb\xaa\xe7\xcb"
+"\x1f\xfb\x95\xf7\x3b\x15\xf7\x0a\x8e\x9c\xb2\xbc\x1b\xa7\x9d\x7c\x6c\x93\x1f\x8f\x78\x8e\x71\x8c\x58\x08\x7c\x07\x0b\xf8\x2f\xf7"
+"\x69\x15\xbc\xfb\x06\x05\x93\x76\x8f\x7f\x82\x1a\x71\x79\x80\x60\x1e\x72\x77\xf7\xc2\x9f\x82\x06\x73\x8d\x84\x92\x7b\xae\xfb\x95"
+"\xf8\xf0\x18\x6f\x06\xfb\x61\xfc\xb8\x76\x4a\x6d\x6a\x64\x89\x19\x77\xf7\x65\x9f\x75\x07\x68\x70\x9e\xa3\x94\x8e\x98\x93\xa1\x1f"
+"\xb1\xf5\x05\xe2\xf7\x82\x15\xdf\xfb\x5e\x05\xfb\x31\x06\x0b\xf7\x90\xf8\x5d\x15\xfb\x09\x35\x27\xfb\x1b\x47\xa3\x4d\xb5\x60\x1f"
+"\x67\xae\xc0\x74\xb8\x1b\xc0\xc4\xa5\xb6\xb0\x1f\xb0\xb4\x9f\xc8\xce\x1a\xf7\x17\x35\xed\xfb\x06\x1e\x8a\x65\x15\xa2\x9f\x7a\x70"
+"\x94\x1f\x95\x70\x8e\x69\x4c\x1a\xfb\x3b\x79\x53\x55\x62\x79\xba\xf4\xf7\x4b\x9b\xc3\xbd\x1e\x0b\xbf\x96\xa2\x94\xa3\x9f\x08\xac"
+"\xa4\x9f\xb6\xb5\x1a\xc2\x6b\xbc\x51\xaa\x1e\xa2\x60\x5e\x94\x43\x1b\x4f\xfb\xe9\x15\xa3\x06\xe9\xba\x5c\x2c\x33\x60\x56\x44\x65"
+"\x7e\x99\xb2\x1f\xf8\xa8\x04\x9e\x06\xe1\xbc\x5c\x38\x36\x5c\x5b\x38\x87\x81\x8b\x8c\x81\x1f\x0e\xf7\x62\x15\x6f\x68\x7b\x76\x86"
+"\x84\x08\x65\x56\x7c\x71\x7a\x1a\x83\x8f\x88\x93\x94\x91\x8e\x99\x9b\x1e\x91\x90\xf7\x5f\xf7\x38\x05\x8f\x07\xfb\x62\xf7\x3a\x05"
+"\x9a\x78\x7f\x93\x86\x1b\x84\x86\x85\x82\x77\xa6\x61\xbe\x4e\x1f\x98\x7c\x97\x7b\x9a\x75\x08\x0b\xf7\x65\xf8\x5d\x15\x54\x1d\xfb"
+"\x6e\x07\x57\x8d\x7f\x99\x73\x1e\x7a\x95\x96\x82\x95\x1b\x90\x92\x8d\x8e\x93\x1f\xf7\x11\xbd\x84\xa1\x05\x86\x7d\x82\x88\x84\x1b"
+"\x70\x88\x96\xdb\x1f\x0b\x75\x1a\x75\x7e\x82\x68\x89\x1e\x86\x8a\x7e\x8a\x7d\x8a\x08\x72\xf7\xd8\x07\xb2\x1d\x0b\x36\x8f\x80\x96"
+"\x89\xd8\x08\xf8\xa3\x95\x1d\xfc\xa3\x07\x89\x3f\x80\x81\x37\x85\x08\x72\x0b\xf9\x2a\x15\xfc\x97\xb5\x1d\x77\xf7\xdd\x9f\x6b\x20"
+"\x1d\xf8\xa6\xf7\x0d\x07\xdb\x8e\xbc\x59\x90\x2f\x08\xa8\x06\x0b\x15\xb0\xa4\x9e\x98\xaa\x1b\xb3\xa4\x73\x66\x63\x74\x76\x4e\x79"
+"\x1f\x81\x07\xeb\x6c\xad\x6b\x51\x1a\x64\x72\x71\x65\x7b\x7f\x91\x9f\x76\x1e\x6d\xa5\x83\x8f\x6e\x8e\x08\x70\x82\x7e\x7e\x78\x1a"
+"\x6a\xb2\x76\xc8\x0b\x15\xd2\x1d\x9e\x2c\x1d\x77\xf7\xd0\x06\x0e\xf7\xc5\xf8\x61\x15\x2d\xf7\x3d\x72\x06\x4e\x35\x63\x5e\x4a\x54"
+"\x08\x70\xbf\xfb\xd8\x07\x4a\xb6\x63\xd0\xce\xb3\xa9\xdd\xb4\x1e\x72\x96\x05\x69\x1d\xf7\xc1\xe9\x07\x0b\x8c\x08\x21\x06\xf4\x8f"
+"\xae\x9a\xa6\x1e\xa1\x98\xa1\x96\xad\x1b\xa9\xa3\x7f\x7c\x8a\x8a\x88\x8a\x88\x1f\x87\x80\x88\x7f\x80\x1a\x6b\xa5\x75\xb1\xb1\xa6"
+"\xa3\xaf\xc4\x47\xae\xfb\x01\x0b\xf9\x41\xf9\x75\x15\x59\x06\x4c\x2e\x05\xad\x4b\x5a\x98\x46\x1b\xfb\x63\xfb\x28\xfb\x29\xfb\x63"
+"\x59\x93\x5d\x9c\x5f\x1f\xa3\x4f\xa3\x6b\xc6\x58\x35\xfb\x12\x18\xbd\x06\xd2\xf3\x05\x0b\xf7\xf8\x15\xf7\x08\xce\xbd\xcd\xe1\x1a"
+"\xd0\x62\xba\x4f\x59\x6a\x6b\x59\x5b\xa8\x6c\xb8\x90\x90\x67\x1d\x7e\x65\x69\x61\x40\x57\x1f\x0b\xf8\x06\xa4\x15\x41\x8f\x77\x99"
+"\x8a\xc0\xa1\x1d\x89\x58\x79\x7c\x42\x86\x08\x72\x0b\x22\x1d\xac\x9f\x92\x95\xa2\x1a\xa5\x78\x9d\x6e\x77\x7b\x82\x78\x7a\x1e\x0b"
+"\xf7\x26\xfb\x24\xf7\x66\xf2\xf7\x00\xa3\xb1\xcc\x1f\xf7\x13\x07\x8d\xd4\x96\x97\xd4\x92\x08\x0b\xfc\x1d\x8e\x1d\x0b\x15\xf4\xc6"
+"\xb8\xc6\xd9\x57\x1d\x95\x92\x83\x80\x68\x6c\x65\x48\x5c\x1f\x0e\xcc\x1d\x85\x91\x67\xc8\xfb\x65\xf7\xf5\x18\xcc\xdc\x05\xec\xd9"
+"\xae\xa2\xd2\x1b\x9f\xfb\x7f\x77\xa1\x07\xa6\x9b\x7f\x0b\x15\xf7\x08\xce\xbd\xcd\xe1\x1a\xd0\x62\xba\x4f\x59\x6a\x6b\x58\x5d\xa8"
+"\x6b\xb7\x90\x91\x67\x1d\x7f\x64\x69\x61\x40\x57\x1f\x0b\xf9\x45\xa4\x15\x5f\x7f\x99\xf7\x11\x56\x9b\x1d\x9b\x90\x0b\x15\x50\x8c"
+"\x80\x94\xb9\x1a\xf7\xe5\x80\x07\xfb\x38\x4a\x05\x76\x07\x95\xa9\x9d\x90\x93\x1b\x9b\x92\x7e\x6f\x1f\xfb\x71\x07\x5a\x8c\x7d\x80"
+"\x4b\x1b\x77\xf7\x87\x07\x0b\xc6\xb8\xc6\xd9\x57\x1d\x95\x92\x83\x80\x67\x6d\x66\x47\x5c\x1f\x0e\xa4\x15\x45\x93\x7a\x98\x8a\xbd"
+"\x08\xf8\x78\x07\x8c\xbe\xa0\x9c\xcd\x8e\x08\xa4\xfb\xe8\x72\x07\xcf\x88\x9f\x7b\x8d\x57\x08\xfb\x63\xfb\x85\xf7\x63\x07\x8c\x0b"
+"\x4d\x1b\x4b\x6c\xa5\xc8\x7f\x1f\x5f\x06\x8e\x54\x92\x72\xa0\x6e\x08\x68\xa4\xb5\x78\xc0\xca\x1d\x64\x1d\x93\x88\x78\xb6\xb8\x1d"
+"\x7c\x7e\x70\x1b\x0b\x15\xf7\x98\x57\x07\x64\x5d\x30\xfb\x02\x6c\x62\x61\x4d\x19\x48\xf7\x35\x34\xe9\xe2\xb4\xcd\x07\xfb\x1a\x16"
+"\xfb\x1d\x06\xf7\x1d\xf7\x43\x05\x0b\xa3\x15\x6b\x7b\x9f\xb3\x8a\x1f\xf8\xe4\x5a\x1d\xfc\x92\x07\x8a\x65\x79\x76\x6b\x8a\x08\x73"
+"\xf7\x83\x07\x0b\x07\xf7\x0f\x87\xbf\x5d\x9c\xfb\x0b\x08\xa8\x06\x89\xf7\x5d\x05\xfc\xec\x06\x88\xfb\x5d\x05\xa8\x06\x9c\xf7\x0b"
+"\xbf\xb9\xf7\x10\x8f\x08\x0b\x21\x1d\x78\x77\xf7\xcf\x9f\x79\x61\x1d\x9e\xc0\x8d\x08\x9d\x0b\xf7\xb8\xfb\x4c\x15\x4f\x8d\x7b\x9e"
+"\x89\xd0\x08\xf7\x21\x07\x5c\xbb\xa4\x7e\xb8\x1b\xf7\x05\xda\xf3\xf7\x28\xf7\x20\x40\xe9\xfb\x03\x0b\xa9\x1d\xca\xfb\x31\x22\x1d"
+"\x0b\xca\xf7\x0a\xf7\x06\xc6\xb0\x72\x4b\xae\x1e\x9f\x5e\x15\x9f\x4a\x91\x5b\x3b\x1a\xfb\x64\x4e\xfb\x01\xfb\x08\x4c\x64\xa5\xcb"
+"\x69\x1e\x0b\x79\x6f\x1a\x5c\xb7\x69\xc9\x5e\x1d\x77\x81\x88\x7b\x1b\x62\x75\xa1\x0b\x1f\xfb\x73\xf8\xa2\x05\x6f\x06\xfb\x72\xfc"
+"\xb8\x65\x2d\x7f\x7d\x5b\x82\x19\x72\xf7\x5f\xa4\x07\x4f\x8f\x75\x96\xa5\x1a\x0b\x8c\x08\x9f\xfb\x66\x3d\x1d\x8d\x66\x7b\x76\x6e"
+"\x8a\x08\x77\xf7\x66\x9f\x07\x0b\xe2\x15\xfb\x1d\xf7\x31\x05\x9d\x7b\x79\x95\x77\x1b\x71\x76\x77\x72\x77\x96\x7e\xa8\x78\x46\x1d"
+"\x15\xfb\xeb\x72\x06\xdf\x87\x9a\x81\x8d\x53\x08\x22\x07\x58\x6e\x75\x48\x4c\x61\x9e\xb6\x6a\x1e\x5f\xc3\x76\x0b\xf7\xfc\x15\xf3"
+"\xf7\x53\x05\xa2\xb5\x96\xa8\x9e\x1a\xa8\x74\xa0\x6b\x4c\x63\x55\x34\x8a\x1e\x88\xfb\x52\x05\x0b\x78\x7e\x92\x95\x90\x8e\x92\x91"
+"\x95\x1e\x95\x9a\x8f\x97\x95\x1a\xa9\x71\xa3\x6a\x66\x72\x72\x67\x50\xc5\x62\x0b\x08\xf8\x78\x07\x8c\xc0\xa1\x9b\xd3\x8d\x08\xa4"
+"\xfb\xf2\x72\x07\xd1\x88\xa0\x7b\x8d\x57\x08\xfc\x78\x07\x0b\xb9\xf9\x2a\x15\x77\x9e\x07\xbd\x1d\x0b\xf7\x44\x05\x2f\xea\x1d\x0b"
+"\xe2\x1a\xf1\x3f\xc9\xfb\x13\x67\x78\x87\x76\x58\x1e\x83\x78\x82\x89\x81\x1b\x76\x83\x95\xa4\x8a\x1f\x0b\xfb\x43\xa8\x06\x90\xe7"
+"\xbb\xbd\xdc\x88\x08\xb6\xfc\xa6\x06\x8d\x53\x7c\x7a\x56\x88\x08\x6e\x77\x0b\x6a\x1b\x69\x72\x95\xa0\x7c\x1f\x7f\x9b\x88\x9d\xb4"
+"\x1a\xf7\x1d\x07\x88\xc5\x9b\x9e\xc0\x8d\x08\x0b\x77\xa1\x07\xa6\x9b\x7f\x77\x7d\x84\x7e\x78\xf2\x1d\x89\xc3\x9a\x0b\xf7\x8c\x07"
+"\xe1\x56\xc2\x39\x56\x66\x77\x51\x57\x1e\x0b\x22\x1d\xac\xa0\x92\x94\xed\x1d\x7b\x1e\x0b\x9d\xbf\xc9\xac\x9d\x7a\x60\x98\x1e\x96"
+"\x51\x15\x8c\x5d\x8c\x71\x6a\x1a\xfb\x2a\x77\x57\x51\x0b\xfc\x3f\x15\xb4\xa6\x9d\xa7\xb1\x1a\xc2\x5b\xb3\x4a\x46\x57\x5e\x4f\x61"
+"\x9d\x6b\xb6\x66\x1e\x0b\x83\x05\x8e\x96\x93\x8c\x94\x1b\xa8\x9c\x7e\x74\x70\x77\x7d\x64\x7b\x7e\x8e\x94\x73\x1f\x0b\x07\x8d\x67"
+"\x7c\x76\x6e\x8a\x08\x77\xf7\x77\x07\xf7\x02\xc7\xb7\xdc\xe3\x4a\xbc\xfb\x0a\x0b\x86\x85\x8b\x8a\x85\x1e\x8a\x88\x89\x8b\x89\x1b"
+"\x80\x83\x94\x97\xb3\xad\xb4\xd6\xbf\x1f\x0b\x15\xa7\x8e\x9f\x9e\xa4\x1b\x99\x91\x89\x77\xb8\x1f\xa8\x7e\x05\x83\x9d\xa5\x85\x9f"
+"\x1b\x0b\xaf\xa7\xa7\xaf\xaf\x6e\xa9\x68\x1f\xf7\x65\x16\xf1\x1d\x0b\x15\x8c\x93\x8e\x8b\x91\x1b\xbd\xa3\x6a\x47\x50\x75\x6b\x63"
+"\x75\x84\x93\xa3\x1f\x0e\xfc\x88\xf7\x80\x15\xe9\xf7\x87\xf0\xfb\x87\x05\x0b\x9f\x58\x1d\x0b\xf0\x1d\x8d\x54\x92\x72\xa0\x6f\x08"
+"\x67\xa5\xb4\x78\x0b\x66\x1d\x78\x89\x51\x08\xfc\x67\x21\x1d\x78\x0b\x07\x8d\x66\x7b\x76\x6e\x8a\x08\x77\xf7\x6c\x9f\x87\x07\x6d"
+"\x7b\xa1\xb0\x8d\x1f\x0b\x8d\x67\x7b\x77\x6d\x89\x08\x86\x77\xf7\x67\x9f\x06\x71\x90\x7f\x9f\x8c\xac\x08\x0b\x1f\xa8\x7e\x05\x83"
+"\x9e\xa5\x85\x9e\x1b\xc4\xb0\xb3\xe2\xa2\x1f\x60\x06\x67\x7f\x0b\xfb\x10\x08\xa2\xf7\xe6\x74\x06\x6f\xfb\x15\x81\x82\xfb\x09\x80"
+"\x08\xf7\x8c\x07\x0b\x7f\x7e\x1f\xfb\x10\xfb\x1e\x05\xf7\x15\x07\x89\xad\x98\xa0\xa4\x8f\x08\x9f\x0b\x8a\x5f\x80\x7f\x5e\x87\x08"
+"\x73\xf7\x87\xa3\x07\x63\x8d\x85\x96\x8a\xcd\x08\x0b\x1f\xf7\x05\x41\x1d\x07\x5f\xfb\x76\x15\x8c\x93\x0b\xbf\x89\x9b\x78\x89\x50"
+"\x08\xfc\x66\x21\x1d\x78\x77\x0b\x5a\x62\x6d\x79\x60\x1b\x64\x6e\x9d\xae\x76\x1f\x79\xab\x83\xac\x87\xd0\x08\x0b\x06\xfb\x04\x28"
+"\xfb\x04\xee\x05\x53\x06\xf7\x0e\xfb\x44\x05\xe7\x06\x0e\x91\x2b\x08\x9a\x33\x15\x5e\x66\x66\x5f\x5d\xaf\x66\xb9\xb8\xb0\xb0\xb8"
+"\x0b\x15\x70\x74\x74\x71\x6f\xa2\x74\xa6\xa6\xa2\xa2\xa6\xa6\x74\xa2\x70\x1f\x0b\x22\x1d\xab\x9f\x93\x95\xa2\x1a\xa5\x78\x9d\x6e"
+"\x77\x0b\x22\x1d\xac\x9f\x92\x95\xa2\x1a\xa6\x78\x9c\x6e\x77\x0b\x16\x6d\x74\x74\x6e\x6e\xa2\x74\xa8\xa7\xa3\xa3\xa7\xa7\x74\xa3"
+"\x6f\x1f\x0b\xe3\x05\xac\xa0\x92\x94\xa2\x1a\xa6\x78\x9c\x6e\x77\x7a\x82\x78\x7b\x1e\x0b\xbd\xdb\x88\x08\xa6\xfc\xa6\x06\x8d\x53"
+"\x7c\x7a\x56\x88\x08\x78\x77\x0b\x65\x6c\x6c\x65\x64\xaa\x6c\xb2\xb0\xab\xaa\xb1\xb2\x6c\xaa\x64\x1f\x0b\x08\x9e\x9f\xfc\x44\xfb"
+"\x43\xa8\x06\x90\xe7\xbb\xbd\xdc\x88\x08\x0b\x77\x07\xa5\x87\x98\x76\x89\x69\x08\xfb\xe4\xfb\x04\xf7\xe4\x07\x0b\x1b\xc3\xb3\xd9"
+"\x1d\x82\x42\x1d\x84\x83\x5e\x81\x08\x73\x0b\x84\x1a\x7c\x7b\x83\x6e\x1e\x73\x77\xf7\xbb\x9f\x06\x69\x8c\x0b\x15\xfb\x08\x48\x59"
+"\x4a\x34\x1a\x46\xb4\x5c\xc7\xbd\xac\xab\x0b\x95\x93\x1a\x97\x94\x92\x9b\x1e\x9f\x9f\xfb\x41\x77\x06\xc1\x0b\xa5\xb4\x78\xc1\x1b"
+"\xc2\xb4\x9f\xb4\xa5\x1f\x9c\xa5\x92\xa4\x0b\xf7\xec\x16\xf8\xca\x06\xb4\xf7\x67\x05\x74\x06\x83\x6e\x69\x0b\x78\x08\x3c\x70\x63"
+"\x64\x58\x1a\x62\x9d\x79\xcb\x74\x1e\x4c\x0b\x78\x61\x1d\x0b\x07\x8a\x60\x83\x82\x5f\x83\x08\x73\xf7\x85\xa3\x07\x67\x0b\xb0\x8a"
+"\x19\x9f\xfb\x25\x77\x97\x07\x9f\x99\x7d\x78\x7b\x0b\xf7\xb3\xf7\xb3\x15\xfb\x87\xfb\x08\xf7\x87\x06\x0e\x15\xfc\x4d\xfd\x50\x05"
+"\xc5\x06\xf8\x4b\xf9\x50\x05\x0b\x1b\x7b\x78\xf7\xb8\x9e\x7a\x06\x55\x77\x9f\xc2\x1f\x0b\xf8\x61\x15\xfb\x2b\x73\x06\xb6\x89\x97"
+"\x84\x73\x1a\x0b\x9f\xb4\xa5\x1f\x9c\xa5\x92\xa4\x91\xbe\x08\x0e\x79\x1f\xf7\x1f\x35\x05\x0e\x83\x1a\x7c\x7b\x83\x6e\x1e\x73\x77"
+"\xf7\x1b\x06\x0b\x08\xfc\x78\x07\x89\x56\x7d\x7f\x43\x85\x08\x72\x0b\xae\x1a\xca\x6a\xb5\x5a\x5a\x6a\x61\x4c\x71\x90\x0b\x5c\x1a"
+"\x4a\xbd\x5f\xd7\xd3\xbe\xbe\xd3\xb8\x7b\x0b\x73\x70\x77\x61\x1b\x49\x60\xcb\xf3\x87\x1f\x89\x0b\x1f\x60\x06\x67\x7e\x7d\x7e\x0b"
+"\x06\x6e\xfb\x66\x05\xd9\x06\xa8\xf7\x66\x05\x0b\x07\x89\xae\x99\x9f\xa5\x8f\x08\x9f\xfb\x5c\x0b\x90\x8b\x8c\x90\x1e\x8c\x8e\x8e"
+"\x8b\x8c\x1b\x0b\x1f\xf8\x48\x07\x8d\xd5\x99\x9a\xd4\x8e\x08\x0b\xa4\xc8\x7f\x1f\x60\x06\x8e\x55\x92\x73\x9f\x0b\x37\x49\x2c\x68"
+"\x97\x6b\xa3\x6f\x1f\xa1\x72\x0b\xc0\xa6\xbc\xa7\x1e\x9e\xab\x93\xb1\xc6\x1a\x0b\xf8\x61\xf8\xb9\x15\x5d\x06\x4f\x26\x05\x9d\x0b"
+"\x76\xa8\x4e\xf7\x30\xfb\xc2\x18\xfb\x32\x07\x0b\x06\xfb\x0e\xfb\x44\x05\xc3\x06\xf7\x04\x0b\x89\x52\x08\xfc\x69\x07\x8d\x53\x7c"
+"\x7a\x0b\x9b\xa0\xa8\x8c\x08\x9f\xfb\x66\x77\x07\x0b\xa2\x1a\xa5\x78\x9d\x6e\x77\x7a\x82\x78\x0b\x33\x5d\xa2\xb7\xa0\x92\x96\xa7"
+"\xa2\x1f\x0b\xc0\x89\x9b\x78\x89\x51\x08\xfb\x6c\x07\x0b\x4d\x1b\x4c\x6b\xa5\xc8\x80\x1f\x5f\x06\x0b\x6a\x6e\x6d\x69\x66\xa6\x6e"
+"\xae\xaf\xa8\x0b\x74\x1f\xfb\x3c\xfb\x61\x05\xf7\x67\x07\x0b\xf7\xa3\x04\x31\xfa\x7c\xe5\x07\x0e\x01\x00\x01\xe3\x01\x05\x00\x01"
+"\x0a\x02\x01\x40\x03\x01\x87\xff\x02\x87\xa0\x02\x8e\x02\x00\x01\x00\x04\x00\x07\x00\x38\x00\x7a\x00\xc5\x01\x4e\x02\x19\x02\xce"
+"\x02\xd4\x03\x16\x03\x57\x04\x28\x04\x42\x04\x49\x04\x4d\x04\x57\x04\x68\x04\xb5\x04\xec\x05\x43\x05\xa5\x05\xd4\x06\x22\x06\x83"
+"\x06\xa4\x07\x10\x07\x7c\x07\x8a\x07\xaf\x07\xce\x07\xe4\x08\x01\x08\x60\x09\x0a\x09\x0d\x09\x72\x09\x75\x09\x78\x09\x7d\x09\xc8"
+"\x09\xcd\x0a\x04\x0a\x08\x0a\x4d\x0a\x52\x0a\x57\x0a\xb9\x0a\xbc\x0a\xc1\x0a\xf7\x0b\x6f\x0b\x72\x0b\x76\x0b\x7b\x0b\x7e\x0b\xcc"
+"\x0b\xd1\x0c\x62\x0c\x65\x0c\x6a\x0c\x8e\x0c\x9e\x0c\xc1\x0c\xdf\x0c\xeb\x0c\xfb\x0c\xff\x0d\x4a\x0d\x4e\x0d\x54\x0d\x58\x0d\x7f"
+"\x0d\x83\x0d\xa9\x0d\xc4\x0d\xf9\x0d\xfd\x0e\x02\x0e\x8f\x0e\x93\x0e\x97\x0e\xbb\x0f\x10\x0f\x14\x0f\x18\x0f\x1d\x0f\x21\x0f\x6a"
+"\x0f\x6d\x10\x05\x10\x09\x10\x0d\x10\x5a\x10\x66\x10\xb1\x10\xd6\x11\x17\x11\x91\x12\x39\x12\x40\x12\xc1\x13\x36\x13\xef\x14\x55"
+"\x14\x79\x14\xb5\x15\x19\x15\x32\x15\x39\x15\x7e\x15\xe8\x15\xf2\x16\x95\x17\x8b\x17\x8f\x17\xfc\x18\x15\x18\x1b\x18\x25\x18\x41"
+"\x18\x8b\x18\x9f\x19\x92\x19\xf5\x19\xfd\x1a\x04\x1a\x0c\x1a\x13\x1a\x1b\x1a\x21\x1a\x29\x1a\x30\x1a\x38\x1a\x5f\x1a\x6b\x1a\x96"
+"\x1a\x9e\x1a\xa2\x1a\xf1\x1b\x62\x1b\xba\x1b\xe9\x1c\x9a\x1c\xc6\x1d\x48\x1d\x4d\x1d\x78\x1d\xbd\x1e\x3b\x1e\xaa\x1e\xb3\x1e\xc3"
+"\x1f\x27\x1f\xb7\x1f\xb9\x20\x00\x20\x25\x20\x65\x20\x77\x20\xa5\x20\xb8\x20\xe3\x21\x09\x21\x38\x21\x75\x21\xd6\x21\xda\x22\x51"
+"\x22\x7d\x22\xa0\x22\xf3\x23\x0c\x23\x13\x23\x1f\x23\x26\x23\x54\x23\x8c\x23\xce\x23\xe2\x23\xf7\x24\x01\x24\x0d\x24\x14\x24\x1c"
+"\x24\x25\x24\x2d\x24\x43\x24\x4b\x24\x53\x24\x5d\x24\x65\x24\x78\x24\x80\x24\x8d\x24\x94\x24\xa0\x24\xa7\x24\xae\x24\xb6\x24\xbf"
+"\x24\xd0\x24\xd8\x24\xe1\x24\xec\x24\xf4\x25\x18\x25\x3c\x25\x45\x25\x4d\x25\x56\x25\x5e\x25\x68\x25\x71\x25\x84\x25\x8d\x25\x9d"
+"\x25\xaa\x25\xb2\x25\xc3\x25\xcd\x25\xdc\x25\xe4\x25\xed\x25\xf6\x25\xff\x26\x08\x26\x10\x26\x19\x26\x21\x26\x7d\x26\xe9\x27\x5b"
+"\x27\xf0\x28\x63\x28\xfb\x29\x9b\x2a\x0f\x2a\x70\x2a\x80\x2a\x82\x2a\xaf\x2a\xb7\x2a\xce\x2b\x15\x2b\x36\x2b\x3e\x2b\x46\x2b\x5d"
+"\x2b\x7c\x2b\x7e\x2b\x86\x2b\x88\x2b\xa3\x2b\xc5\x2b\xcf\x2b\xd9\x2b\xe3\x2c\x5c\x2c\xd5\x2c\xda\x2d\x2a\x2d\x2e\x2d\x72\x2d\xee"
+"\x2e\x2e\x2e\x42\x2e\x50\x2e\x82\x2e\x91\x2e\xf6\x2f\x2b\x2f\xae\x2f\xcc\x2f\xd5\x2f\xdd\x2f\xf0\x2f\xf5\x30\x11\x30\x1c\x30\x5e"
+"\x30\xa6\x30\xad\x30\xc4\x30\xd1\x31\x18\x31\x2f\x31\x57\x31\x5f\x31\x63\x31\x6b\x31\x73\x31\x99\x31\xdd\x31\xef\x32\x13\x32\x1d"
+"\x32\xa5\x32\xab\x33\x24\x33\x5d\x33\x63\x33\x88\x34\x2f\x34\x3b\x34\x43\x34\x4a\x34\x4e\x34\x57\x34\xf5\x35\x90\x35\x99\x35\xd9"
+"\x35\xf7\x36\x23\x36\x2c\x36\x3e\x36\xbb\x36\xd3\x36\xe4\x36\xf2\x37\x3e\x37\x98\x38\x01\x38\x52\x38\x5a\x38\x9e\x38\xa7\x38\xb0"
+"\x38\xba\x38\xc2\x39\x30\x39\x37\x39\x3d\x39\x45\x39\x4f\x39\x85\x39\x8d\x3a\x1b\x3a\x1f\x3a\x21\x3a\x5e\x3a\x79\x3a\x80\x3a\xe4"
+"\x3b\x15\x3b\x31\x3b\x99\x3c\x01\x3c\x06\x3c\x4b\x3c\x50\x3c\x70\x3c\x74\x3c\x78\x3c\x7e\x3c\x96\x3c\x9a\x3c\xf3\x3d\x0e\x3d\x7d"
+"\x3d\x83\x3d\x85\x3d\xae\x3d\xee\x3e\x0d\x3e\x38\x3e\x6e\x3e\xab\x3e\xe4\x3f\x61\x3f\xcb\x40\x33\x40\x6b\x40\xd0\x40\xf2\x41\x70"
+"\x42\x0c\x42\x0f\x42\x22\x42\x70\x42\xc4\x43\x0f\x43\x5f\x43\x7e\x44\x22\x44\x9c\x45\x09\x45\x6e\x45\x90\x45\xed\x46\x3a\x46\xb1"
+"\x47\x39\x47\x81\x47\x85\x47\xbe\x47\xc2\x48\x23\x48\x81\x48\xd4\x49\x12\x49\x4b\x49\xb5\x49\xf8\x4a\x31\x4a\x35\x4a\xbd\x4b\x42"
+"\x4b\x78\x4b\xba\x4b\xda\x4c\x04\x4c\x29\x4c\x83\x4c\xb6\x4d\x18\x4d\x7b\x4d\xd9\x4e\x0a\x4e\x6d\x4e\xce\x4f\x28\x4f\xa1\x4f\xd5"
+"\x50\x1e\x50\x71\x50\xe7\x51\x39\x51\x8d\x51\xad\x51\xe5\x52\x3b\x52\x74\x52\xca\x53\x3d\x53\xc7\x54\x81\x54\x88\x54\xb7\x54\xc0"
+"\x54\xf5\x55\x2b\x55\x6b\x55\xc8\x56\x6e\x56\xa3\x56\xc3\x56\xe3\x57\x03\x57\x23\x57\x2f\x57\x44\x57\xbb\x57\xc4\x57\xcc\x58\x0b"
+"\x58\x14\x58\x76\x58\xf4\x59\x60\x59\x78\x59\xbd\x5a\x2b\x5a\x57\x5a\x89\x5a\x96\x5a\x9e\x5a\xa6\x5a\xd6\x5a\xde\x5b\x3b\x5b\x97"
+"\x5b\x9b\x5b\xc5\x5b\xe4\x5c\x3c\x5c\x40\x5c\x6b\x5c\xb0\x5c\xc9\x5d\x1b\x5d\xa5\x5e\x1d\x5e\x26\x5e\x2e\x5e\x5e\x5e\xd4\x5e\xfb"
+"\x5f\x43\x5f\x69\x5f\xb1\x5f\xd8\x5f\xe4\x60\x79\x60\x82\x60\xfa\x61\x69\x61\xa0\x61\xd7\x62\x1c\x62\xa9\x62\xce\x62\xd3\x62\xf2"
+"\x63\x35\x63\x56\x63\x97\x63\xbb\x64\x1b\x64\x24\x64\x91\x64\x9b\x64\xf6\x65\x0b\x65\x13\x65\x1b\x65\x44\x65\x6f\x65\xb3\x66\x28"
+"\x66\x2f\x66\x7a\x66\xfc\x67\x05\x67\x3d\x67\x45\x67\x4c\x67\xb3\x67\xe7\x68\x36\x68\x43\x68\x54\x68\x5d\x68\x65\x68\x8a\x68\x8e"
+"\x68\xba\x68\xc8\x69\x11\x69\x83\x69\xf4\x6a\x7c\x6b\x07\x6b\x3b\x6b\x63\x6b\x99\x6c\x12\x6c\x43\x6c\x4c\x6c\x69\x6c\x83\x6c\x8a"
+"\x6c\x9c\x6c\xe1\x6c\xea\x6d\x6a\x6d\x72\x6d\x7b\x6d\x9c\x6d\xdc\x6e\x6d\x6e\xbe\x6e\xfa\x6f\x7e\x6f\xe3\x70\x0b\x70\x56\x70\x99"
+"\x71\x0e\x71\x36\x71\x4d\x71\x5c\x71\x64\x71\x79\x71\x7c\x71\x80\x71\x8a\x71\x94\x71\x9c\x71\xa0\x71\xc8\x72\x60\x72\xc7\x73\x40"
+"\x73\xbe\x73\xdc\x73\xf8\x74\x14\x74\x71\x74\xa1\x75\x41\x75\xcb\x76\x49\x76\xc6\x77\x0d\x77\x50\x77\xcf\x78\x44\x78\x72\x78\xa6"
+"\x78\xe7\x79\x47\x79\x8a\x79\xbb\x7a\x20\x7a\x58\x7a\xc0\x7b\x00\x7b\x88\x7c\x11\x7c\x68\x7c\xcb\x7d\x38\x7d\x9a\x7e\x0a\x7e\x67"
+"\x7e\x6a\x7e\xca\x7f\x2a\x7f\xa0\x80\x1a\x80\xae\x81\x07\x81\x50\x81\xbf\x81\xcc\x81\xd8\x82\x90\x83\x06\x83\x0d\x83\x11\x83\x2d"
+"\x83\x4a\x83\xba\x83\xd2\x84\x17\x84\x40\x84\x61\x84\x65\x84\xeb\x85\x30\x85\x63\x85\x6c\x85\x75\x85\x7c\x85\x83\x85\xb0\x85\xb7"
+"\x86\x69\x86\x71\x86\x89\x86\x92\x86\x9b\x87\x2e\xfb\x8a\x0e\xfb\x8a\x0e\xfb\x37\xf7\x3a\xf7\x30\x15\x2d\x1d\x99\xd9\x15\x98\xf7"
+"\x0f\x95\xbc\xa8\xeb\x08\x99\xb7\x8f\x9f\xa2\x1a\xcc\x6d\xb0\x55\x55\x6c\x66\x4c\x71\x8f\x79\x99\x5e\x1e\xa8\x2c\x95\x5a\x98\xfb"
+"\x10\x08\x0e\xc6\xf7\x3c\xf8\x28\x15\xac\xf7\x25\x96\xbf\xa2\x1a\xb2\x6f\xa7\x66\x64\x72\x6f\x60\x75\x97\x4d\xa0\x37\x1e\x8c\x84"
+"\x90\x77\x90\x76\x08\xf7\xc1\x16\xad\xf7\x26\x95\xbe\xa2\x1a\xb2\x6f\xa7\x66\x64\x72\x6f\x60\x75\x97\x4d\xa0\x37\x1e\x8c\x84\x90"
+"\x77\x90\x76\x08\x0e\x8f\xf8\x67\xf7\xaf\x15\x34\x06\x9d\xf7\x1a\x05\xed\xd4\x33\x06\xa8\xf7\x66\x05\x3e\x06\x6d\xfb\x66\x05\xfb"
+"\x05\x06\xa8\xf7\x66\x05\x3e\x06\x6d\xfb\x66\x05\x21\x42\xeb\x06\x79\xfb\x1a\x05\x20\x42\xeb\xe1\x1d\xf7\x05\xe1\x1d\xed\x06\xfb"
+"\x27\xf7\x63\x15\x79\xfb\x1a\x05\xfb\x05\x06\x9d\xf7\x1a\x05\x0e\x8f\xf8\x40\xf8\x75\x15\xf7\x21\x07\x5c\xa8\x69\x96\x3d\x97\x08"
+"\xd7\x54\x3d\x07\x5d\x86\x75\x85\x6c\x7a\x08\x54\x6b\x6c\x57\x4b\x1a\x32\xbd\x50\xf7\x1a\x48\x1e\xfb\x8f\x07\x41\x99\x63\xb8\x6b"
+"\xf7\x00\x76\x8d\x18\xfb\x30\x07\xdd\x69\xa3\x85\xc9\x88\x08\x28\xc2\xee\x07\xdd\x9a\xb2\x9b\xab\xab\x08\xac\xab\x9c\xb8\xc3\x1a"
+"\xbb\x7c\xb6\x71\xa8\x1e\x68\xb3\x6d\x9f\x2a\xbd\x08\xf7\x6b\x07\xd2\x7b\xb1\x5f\xa8\x27\x08\xfb\x1e\xfb\x7b\x15\xdb\x5e\x98\x7a"
+"\x55\x1a\x50\x6d\x6a\x4c\x7f\x1e\x53\xf8\x3c\x15\x4f\xa0\x6e\xac\xb9\x1a\xbb\xa5\xa5\xca\x9b\x1e\x0e\xf8\x8c\xf9\x8d\xf8\x08\x15"
+"\xfb\x05\xfb\x05\xfb\x10\xfb\x0f\x37\xbf\x54\xdc\xb7\xb9\x9f\xac\xaa\x1f\xc1\xc3\xad\xdf\xd9\x1a\xd1\x5d\xb8\x45\x1e\xaa\x58\x15"
+"\xa9\xa1\x6d\x61\x63\x7e\x60\x6f\x59\x1f\x54\x6d\x68\x6e\x66\x1b\x6b\x78\xa1\xad\x8d\x1f\x8d\xbb\xaa\xdd\xad\xbe\x08\xaf\xa4\xa1"
+"\x9b\xa5\x1b\x4b\xf8\x07\x15\x65\x06\x87\x85\x87\x84\x86\x1f\x6c\x74\x42\x70\x4e\x1b\x61\x76\x91\xa1\x6d\x1f\x9d\x71\x73\x94\x72"
+"\x1b\xfb\x09\xfb\x01\xfb\x0c\xfb\x14\x3b\xc0\x53\xd7\xc7\xc0\xaa\xc5\xb3\x1f\xb5\xc9\x9b\xc3\x8c\xe4\x08\x87\xa0\x97\x8a\x99\x1b"
+"\xae\xb0\x94\x9d\xb6\x1f\xfb\xf0\xfd\x00\x05\xc2\x06\xb0\xf9\x13\x15\x8f\x8e\x89\x85\x94\x1f\x93\x85\x8d\x89\x91\x89\x08\xa0\x81"
+"\x93\x80\x74\x1a\x59\x75\x4a\x67\x56\x1e\x61\x6e\x70\x78\x6b\x1b\x6d\x77\xa2\xac\x8d\x1f\x8e\xb9\xac\xe2\xae\xbf\xa1\xab\xa3\x9f"
+"\x9b\x89\x08\x0e\xf7\xe5\xf8\xd5\xf8\x37\x15\x73\x07\xc6\x84\x92\x86\x6e\x1a\x63\x79\x69\x51\x44\x1e\xfb\x2b\xf7\x6a\x05\xf5\xb2"
+"\xb9\xb7\xcb\x1a\xd4\x49\xbb\x26\xfb\x0c\x40\x4e\x29\x5f\x96\x6c\xb4\x46\x1e\xfb\x22\x45\x55\x4c\x2d\x1a\x23\xda\x43\xf7\x04\xd6"
+"\xcc\xa4\xc9\xdd\x1e\x49\xc6\xb0\x75\xc0\x1b\xaa\xb0\x98\x9d\xa4\x1f\x9b\x98\x98\x9b\xa4\xb4\x9b\xa5\x18\x77\x97\x05\x70\x7a\x7b"
+"\x80\x72\x1b\x65\x72\x9e\xd3\x53\x1f\xc2\xd7\x96\x9b\xa6\xb6\xa6\xb7\x18\x9d\xa8\x97\x92\xb6\x8f\x08\xa3\x07\xfc\x60\xfb\x19\x15"
+"\xd7\xfb\x06\xa0\x6d\xab\x61\x08\x6f\x64\x72\x80\x71\x1b\x6d\x69\x9b\xa5\x72\x1f\x60\xb7\x6e\xcc\xbf\x1a\xb1\x9e\xa3\xc2\xab\x1e"
+"\xf7\x0e\xe9\x15\x56\xcd\x76\xb6\xb4\x1a\xae\x9e\xa0\xac\xbc\xb6\x51\x48\x62\x77\x74\x59\x7a\x1e\x0e\xfb\x37\xec\x85\x1d\x0e\xfb"
+"\x37\xf7\xc6\xf9\x4a\x15\x4d\x6a\x6f\x76\x64\x62\x08\x36\x2f\x5d\xfb\x0a\xfb\x16\x1a\x2f\xa4\x34\xbb\x3e\x1e\xb9\x43\xb6\x63\xed"
+"\x50\x08\xa7\x07\x52\xb0\x72\xa4\x76\xb8\x08\x6d\xc9\x7d\xe7\xf7\x1d\x1a\xf7\x1f\x99\xef\xa7\xc7\x1e\x9f\xb7\xa4\xa5\xc7\xb3\x08"
+"\x0e\xfb\x37\xa6\xfb\x3c\x15\xc9\xac\xa7\xa0\xb2\xb5\x08\xe0\xe6\xb9\xf7\x0b\xf7\x15\x1a\xe6\x72\xe3\x5b\xd8\x1e\x5d\xd3\x60\xb3"
+"\x29\xc6\x08\x6f\x07\xc4\x67\xa4\x71\xa0\x5e\x08\xa9\x4d\x99\x2f\xfb\x1d\x1a\xfb\x1e\x7d\x26\x6f\x4f\x1e\x77\x5f\x72\x71\x4f\x63"
+"\x08\x0e\x8f\xf7\xaa\xf8\x70\x15\xac\xa1\x97\x8e\xb6\x8d\x08\xa3\x94\x8d\x90\x97\x1f\x9f\x94\x9b\xa1\x9d\x1a\xa5\x72\xa3\x6f\x76"
+"\x7f\x82\x6d\x77\x1e\x72\x66\x82\x81\x66\x6e\x83\x8e\x18\x8a\xb8\x8e\x95\x9f\xaf\x08\x98\xa2\x8e\x95\x9a\x1a\xac\x78\xa1\x6e\x6d"
+"\x75\x76\x6e\x7a\x8f\x80\x99\x72\x1e\xa0\x64\x8e\x81\x8c\x61\x84\x88\x18\x65\xa0\x84\x91\x72\xb3\x08\xad\x77\x7c\x96\x6f\x1b\x6f"
+"\x78\x77\x6e\x67\x9b\x7f\xbf\x87\x1f\xb8\x87\x9b\x87\xb4\x79\x8a\x84\x18\x6d\x75\x80\x88\x61\x89\x08\x53\x6e\x78\x66\x6f\xa1\x75"
+"\xa7\xa0\x97\x94\xaa\xa0\x1f\xa6\xb2\x93\x93\xb1\xa7\x92\x86\x18\x8a\x5d\x88\x81\x78\x69\x08\x7f\x75\x88\x82\x7b\x1a\x69\x9e\x74"
+"\xa8\xa8\xa1\xa1\xa9\x98\x88\x94\x80\x9f\x1e\x78\xb2\x85\x9d\x87\xb6\x92\x90\x18\xa8\x7c\x93\x84\x9f\x6f\x08\x59\xac\x9a\x7f\xa6"
+"\x1b\xa7\xa0\xa0\xa8\xad\x78\x98\x55\x8f\x1f\x5e\x8f\x7c\x8f\x67\x9c\x08\x0e\xd5\xf7\x85\xf7\xbd\x15\xfb\x64\x33\xf7\x64\xfb\x65"
+"\xe3\xf7\x65\xf7\x64\xe3\xfb\x64\xf7\x65\x33\x06\x0e\xfb\x8a\xc4\xfb\x48\x6f\x0a\xfb\x37\xd5\x1d\xfb\x8a\xf7\x11\xf7\x30\x15\x2d"
+"\x1d\x0e\xfb\x6e\xf7\xc2\xf9\x47\x15\x31\x06\xfb\x80\xfd\x5a\x05\xe5\x06\x0e\x8f\xf7\x8e\xf9\x44\x15\x4a\x49\x5f\x43\x62\x1f\x6b"
+"\x54\x75\x2d\x38\x1a\xfb\x63\xe9\xfb\x26\xf7\x19\xf7\x16\xea\xf7\x28\xf7\x5e\xf7\x5c\x2a\xf7\x2b\xfb\x15\x1e\xcf\xfc\x66\x15\x50"
+"\x83\x3d\x82\x70\x1e\x6e\x80\x7b\x7d\x74\x1b\x59\x78\xc5\xf7\x29\x1f\xf7\x79\x07\xf7\x2c\x9d\xc4\xbc\xbc\x9f\x4d\xfb\x27\x1e\x0e"
+"\x8f\xf8\x4e\xa3\x15\x31\x8c\x79\x9b\xd8\x1a\xf8\xce\x7a\x07\xfb\x90\xfb\x01\x05\x71\x07\x94\x8e\x92\x8e\x8f\x8d\x08\x95\xa6\xa4"
+"\x92\x98\x1b\xa4\x96\x75\x5c\x1f\xfc\x15\x07\x8c\x3a\x76\x79\x28\x8a\x08\x73\xf8\x0b\x07\x0e\x8f\xf8\x72\xf7\x67\x15\x73\x06\x6e"
+"\x44\x80\x85\x24\x8a\x08\xfb\x2b\x06\xf7\x36\xf7\x2e\x05\xda\xd6\xae\xce\xd7\x1a\xf6\x3f\xd7\xfb\x01\x59\x5b\x77\x67\x68\x1e\x64"
+"\x64\x77\x69\x6f\x40\x08\xa7\x06\xca\xaa\xb0\xa6\xc1\x1b\xb7\xad\x78\x67\xa0\x1f\x97\x76\x93\x6f\x74\x1a\x5f\x78\x54\x6b\x5a\x1e"
+"\x58\x3e\x68\x60\xfb\x26\xfb\x30\x08\x74\xf8\x34\x07\x0e\x8f\xc5\xf8\x9f\x15\xc8\xb1\xac\xa2\xbf\x1b\xca\xb2\x64\x4b\x49\x68\x68"
+"\x2c\x6d\x1f\x7a\x07\xde\x6e\xac\x7a\xaf\x69\x08\xaa\x6e\x9d\x5e\x5b\x1a\x43\x65\x5d\x4f\x73\x78\x96\xab\x6a\x1e\xb2\x64\x6e\x9b"
+"\x6c\x1b\x65\x70\x73\x69\x55\xc7\x67\xe7\xf7\x3c\xf7\x18\xf7\x06\xf7\x26\xba\x7c\xb5\x6e\xae\x1f\x76\xa4\x7a\x96\x63\x9d\x08\xcb"
+"\xb2\x9e\xa8\xc6\x1a\xe1\x4e\xbe\x25\x28\x40\x59\x24\x54\x1e\x0e\x8f\xf8\x30\xf7\x93\x15\xf8\x45\x3b\x07\x50\x3e\xfb\x12\xfb\x38"
+"\x47\x2c\x4f\x2c\x19\xfb\x05\xf7\x8c\xfb\x24\xf7\x25\xf7\x24\xca\xf7\x03\x07\xfb\x62\x16\xfb\x65\x06\xf7\x65\xf7\xbd\x05\x0e\x8f"
+"\xf7\x29\xf8\xb9\x15\xf7\xaa\x06\xb6\xf7\x13\x05\xfb\xd6\x06\x2a\xfb\xed\xea\x84\xb3\x85\xb8\x7d\x19\xe4\x6f\xc0\x53\x48\x1a\x53"
+"\x5f\x5f\x53\x74\x70\x97\xa9\x63\x1e\xab\x60\x6d\x98\x71\x1b\x67\x71\x72\x68\x56\xc5\x68\xe4\xf7\x39\xf7\x09\xef\xf7\x21\xf3\x4b"
+"\xdb\xfb\x01\xaa\x1f\x65\x96\x6c\x8f\x39\x90\x08\x0e\x8f\xf8\x6a\xf9\x44\x15\xfb\x19\x78\x4c\x75\x40\x57\x08\xfb\x04\x3e\x50\xfb"
+"\x04\xfb\x19\x1a\xfb\x41\xe6\xfb\x05\xf7\x21\xf7\x10\xe6\xee\xf7\x1c\xf7\x0d\x42\xd9\xfb\x06\x6b\x75\x87\x7e\x6d\x1e\xb0\xf7\x27"
+"\xde\xdc\xf7\x26\xa9\x08\xfb\x81\xfb\xb2\x15\xce\xa2\x55\xfb\x33\xfb\x0c\x7f\x6e\x5a\x73\x7a\x95\x9e\x81\x1f\x7a\xac\x81\xd4\xe8"
+"\x1a\xc9\x91\xc4\x92\x90\x1e\x91\x93\x98\x8f\x9a\x1b\x0e\x8f\xf8\x71\xf9\x38\x15\xfc\x34\x06\x5f\xfb\x72\x05\xa4\x06\x9c\xc9\xa8"
+"\xa3\xbf\x8a\x08\xf7\x63\x06\xfb\x5c\xfc\xaf\x05\xea\x06\x0e\x8f\xf7\x46\xf7\xd8\x15\x52\x78\x73\x7e\x72\x72\x08\x6e\x6f\x7c\x65"
+"\x5f\x1a\x25\xe0\x47\xf7\x13\xf7\x1f\xe8\xdb\xf7\x0c\xe2\x60\xc9\x20\xcf\x1e\xeb\xad\xb3\xb3\xcc\x1a\xe4\x40\xc3\xfb\x0c\xfb\x1b"
+"\x32\x46\x21\x3f\xb3\x55\xee\x50\x1e\xf7\x0c\xed\x15\x37\xb6\x5d\xc2\xc3\x1a\xba\xaf\xaf\xba\xc3\xab\x5e\x3e\x5b\x83\x74\x6a\x5f"
+"\x1e\x29\xfb\x08\x15\xf7\x01\x42\xa3\x6b\x41\x1a\x48\x6a\x62\x55\x4e\x67\xc0\xe4\xc2\x96\xa9\xb3\xc7\x1e\x0e\x8f\xaa\x7e\x15\xf7"
+"\x20\x9f\xcf\xa4\xd9\xc6\x08\xf1\xd7\xc1\xf7\x00\xf7\x13\x1a\xf7\x41\x2f\xf7\x05\xfb\x20\xfb\x11\x31\x28\xfb\x1d\xfb\x0a\xd4\x3b"
+"\xf7\x01\xb2\xa3\x90\x99\xa7\x1e\x60\xfb\x2c\x3a\x3c\xfb\x24\x6e\x08\xf7\x63\xf9\x1c\x15\xa5\x9b\x81\x73\x97\x1f\x9a\x70\x95\x44"
+"\x44\x1a\x70\x89\x6b\x88\x5e\x1e\x89\x7e\x8b\x82\x8a\x87\x8a\x7e\x8a\x86\x88\x89\x08\x86\x83\x79\x87\x7c\x1b\x4d\x74\xc5\xf7\x32"
+"\xf7\x08\x97\xa9\xbb\x1f\x0e\xfb\x37\xf7\x3a\xf7\x30\x15\x2d\x1d\xf7\xd0\x04\x9b\x0a\xfb\x37\xef\xfb\x48\xa9\x0a\x6a\x59\x5e\xa9"
+"\x6a\xb4\x1e\x93\x06\x97\x8d\x05\x92\x06\x95\x93\x81\x80\x64\x69\x61\x40\x57\x1f\xd8\xf9\x0a\x15\x9b\x0a\xd5\xf8\x7f\xf8\xed\x15"
+"\xfc\x3c\xfb\xa4\x05\x78\x07\xf8\x3c\xfb\xb0\x05\xf7\x16\x07\xfb\xb3\xf7\x54\xf7\xb3\xf7\x4e\x05\x0e\xd5\xf8\xad\xf8\x23\x15\xfc"
+"\x8c\x33\xf8\x8c\x06\xfb\x08\x04\xfc\x8c\x33\xf8\x8c\x06\x0e\xd5\xd5\xa5\x15\xf8\x3c\xf7\xa4\x05\x9f\x07\xfc\x3c\xf7\xaf\x05\xfb"
+"\x16\x07\xf7\xb3\xfb\x53\xfb\xb3\xfb\x4f\x05\x0e\x8f\xf7\x91\xf7\x7b\x15\xd4\x93\x99\xca\xb2\x1e\xe6\xc3\xa9\xb4\xd0\x1a\xef\x3c"
+"\xcd\xfb\x0d\xfb\x02\x3d\x4f\x37\x5e\xa7\x6c\xb3\xb1\xa4\xa5\xb1\x9f\x86\x97\x7a\x9e\x1e\x7f\x98\x88\x91\x95\x1a\xa3\xa3\x9b\xaf"
+"\xc1\xaa\x5c\x38\x57\x81\x69\x6a\x4c\x1e\x73\x5d\x83\x74\x6f\x1a\x80\x8b\x86\x8d\x6d\x1e\x9b\x40\x15\x5d\x64\x64\x5e\x5b\xb0\x66"
+"\xbb\xba\xb0\xb0\xba\xba\x65\xb1\x5d\x1f\x0e\xf8\x46\xf8\xe7\xf8\x66\x15\xb6\x74\x7d\x95\x67\x1b\x5f\x60\x78\x6a\x6b\x1f\x57\x54"
+"\x6b\x3c\x41\x1a\x4a\xb4\x59\xc0\xb6\xbb\xa7\xb9\xae\x1e\x5e\x92\xb0\x6d\xbd\x1b\xf1\xe2\xf7\x05\xf7\x1a\xf7\x3e\xfb\x27\xf7\x17"
+"\xfb\x52\xfb\x66\xfb\x3b\xfb\x33\xfb\x5e\xfb\x58\xf7\x3a\xfb\x2d\xf7\x69\xd6\xbf\x99\xb9\xec\x1f\x7e\xae\x05\x66\x3a\x59\x7f\x47"
+"\x1b\xfb\x43\xfb\x10\xf7\x10\xf7\x42\xf7\x52\xf7\x0c\xf7\x1d\xf7\x39\xf7\x31\xf7\x19\xfb\x0e\xfb\x25\x21\x4d\x28\x49\x72\x7e\x9c"
+"\xaa\x91\x8c\x92\x8c\x90\x1f\xcd\xf7\x98\x05\x44\x06\x44\x68\x15\xa8\x89\x9a\x73\x89\x64\x89\x5e\x7a\x4e\x76\x61\x08\x61\x75\x6d"
+"\x72\x6d\x1b\x67\x74\xac\xc0\xc1\x9d\xbe\xad\xb1\x1f\xa7\xac\xad\x9f\xa4\x89\x08\x0e\x26\x0a\x0e\xf7\x3f\x9b\x16\xf7\xd6\x06\xf7"
+"\x3d\xf7\x04\xd6\xf7\x05\xb9\x78\xb3\x68\xaa\x1f\x68\xa9\x69\x9a\x45\x9a\x08\xf7\x08\xad\xb6\xb4\xd7\x1a\xf2\x2f\xc4\xfb\x3c\x1e"
+"\xfb\xc9\x72\x06\xce\x88\x9e\x7c\x8d\x56\x08\xfc\x78\x07\x89\x57\x7c\x7e\x44\x85\x08\xf7\x8c\xf7\xd2\x15\xa9\x06\xf2\xbd\x55\xfb"
+"\x02\x2a\x62\x59\x3a\x5f\x7a\x9c\xb7\x1f\xf8\x8c\x04\xaf\x99\x98\xb3\xd1\xab\x60\x2d\x22\x6a\x6f\xfb\x0f\x88\x1e\x0e\x47\x1d\x0e"
+"\x5e\x0a\x0e\xf7\x3f\x24\x0a\x0e\xf7\x07\x9b\xf9\x1f\x15\xce\x88\x9f\x7c\x8c\x56\xdc\x1d\xf7\xfc\xa4\x07\x32\x8e\x78\x97\x89\xc3"
+"\x08\xf7\x7d\x07\xf1\x89\xb0\x66\x99\xfb\x08\x08\xa4\xf7\xe6\x72\x06\xfb\x06\x79\x68\x68\x27\x1b\xf7\x7c\x07\xb1\x98\x94\xbe\xe7"
+"\xc7\x7a\x68\xa9\x1e\xa1\x72\x96\x70\x99\x4c\x08\xa3\xf7\x5d\xfc\xcb\x06\x0e\xf7\xae\x3d\x0a\x0e\xf7\xae\xf9\x8b\x90\x1d\xbe\xa0"
+"\x9c\xcf\x8e\x08\xa4\xfb\xe5\x72\x07\xcc\x86\x9d\x7c\x8d\x58\x08\xfc\x78\x07\x8a\x59\x7b\x7e\x47\x83\x43\x1d\x44\x92\x79\x98\x8a"
+"\xbe\x46\x0a\x89\x58\x7a\x7e\x44\x84\x08\x72\xf7\xe8\x07\x0e\x20\x27\x0a\x0e\x8f\xf8\x73\xf9\x38\x15\xfb\xf4\x72\x06\xda\x8a\x9f"
+"\x7c\x8d\x54\x08\xfc\xc0\x07\x4d\x79\x72\x5d\x6f\x7a\x97\x9f\x94\x8e\x90\x94\x96\x1e\x97\x9a\x8e\x93\x9b\x1a\xb3\x69\xae\x64\x66"
+"\x6a\x69\x65\x62\xa7\x5e\xb2\x74\x1e\x7d\xa5\xb2\x82\xb3\x1b\xf7\x21\xd5\xd7\xf7\x23\xe4\x1d\x0e\xf7\xae\x52\x0a\x0e\xf7\x3f\x31"
+"\x1d\x0e\xf8\x54\xfa\x2d\xa4\x15\x3f\x94\x81\x95\x89\xd4\x08\xf8\x4e\x07\x8d\xd5\x99\x99\xd3\x8f\x08\xa4\xfb\x90\x07\xfb\x5c\xfc"
+"\x6c\xfb\x5c\xf8\x6c\x05\xfb\x91\x72\x06\xd3\x86\x9c\x7d\x57\x1a\xfc\x6f\x07\x8a\x4e\x7e\x7f\x3e\x84\x08\x72\xf7\x7e\xa4\x07\x3a"
+"\x90\x78\x9f\x8a\xd5\x08\xf8\x6a\x07\xf7\x90\xfc\xe6\x05\xa6\x06\xf7\x90\xf8\xf5\x05\xfc\x91\x07\x89\x52\x7e\x7f\x41\x85\x08\x72"
+"\xf7\xe0\x07\x0e\x30\x1d\x0e\xf7\xae\x26\x1d\x0e\xf7\x07\x9b\xb1\x0a\xf7\x4e\x07\xf7\x1b\x8c\xad\x8f\xb7\x9c\x08\xdc\xaa\xb7\xc7"
+"\xd9\x1a\xf7\x08\x2c\xcd\xfb\x3b\x1e\xfb\xd6\x72\x06\x4e\x1d\xf8\xd9\x15\xa2\x9c\x97\xac\xde\x4b\x0a\x74\x1e\x77\x73\x6a\x84\x44"
+"\x1b\x0e\xf7\xae\xf9\x6e\xfb\x09\x15\x81\x69\x7e\x89\x77\x1b\x5c\x5e\x9d\xad\x69\x1f\x78\x9e\x81\x9a\x79\xb0\xdc\xa5\xae\x9f\xb6"
+"\xb9\x08\xc8\xcc\xac\xe1\xec\x1a\xf7\x64\xfb\x28\xf7\x29\xfb\x62\xfb\x61\xfb\x29\xfb\x2c\xfb\x64\x2f\xaa\x38\xc5\x4b\x1e\xb4\x5d"
+"\xab\x77\xd7\x6f\xa0\x5f\x97\x78\xa2\x74\x08\x53\xc3\xdf\x6b\xe3\x1b\xc8\xb7\x94\xa5\xd5\x1f\xfb\xee\xf9\xb3\x15\xf7\x04\xcb\xfb"
+"\x0c\xfb\x65\xfb\x61\x4e\xfb\x02\xfb\x08\xfb\x08\x4e\xf7\x01\xf7\x64\xf7\x66\xcb\xf7\x09\xf7\x06\x1f\x0e\x34\x1d\x0e\xc7\x33\x1d"
+"\x0e\xf7\x3f\x48\x1d\x0e\x24\x1d\x0e\xf9\x51\xf9\x38\x15\xfb\x69\x72\x06\xd1\x87\x9b\x83\x6b\x1a\x7b\x88\x7f\x7a\x60\x1e\xfb\x13"
+"\xfb\xdd\xfb\x1e\xf7\xe2\x05\x78\xb9\x87\x96\x9a\x1a\xa2\x9a\x96\xb1\x8d\x1e\x90\x98\x8c\x8c\x9a\x1f\xa4\xfb\xe4\x72\x07\xbd\x84"
+"\x94\x83\xa4\x54\xf7\x94\xfc\xeb\x18\xa6\x06\xf7\x78\xf8\xdf\xa3\xc9\x99\x98\xbf\x92\x19\x0e\xf8\x8c\x2e\x1d\x0e\xf9\x44\xf9\x38"
+"\x15\xfb\x8e\x72\x06\xcb\x86\x93\x86\x70\x1a\x76\x80\x77\x5c\x4a\x1e\x7f\x7b\x77\x6f\x73\x6a\x2a\xf7\x2a\x18\x7e\x9f\x89\x90\x97"
+"\x1a\xa0\x97\x93\xaf\x8d\x1e\x90\x97\x8c\x8c\x99\x1f\xa4\xfb\xee\x72\x07\xaf\x88\x98\x81\xaa\x5e\xf7\x5a\xfb\xb7\x18\xfb\x43\xfb"
+"\x71\x6d\x66\x73\x7e\x59\x85\x19\x72\xf7\x8e\xa4\x07\x4e\x91\x77\x95\xa5\x1a\xa0\x9e\xaa\xd6\xf0\x1e\xb1\xbe\xf0\xfb\x36\x05\x97"
+"\x78\x94\x74\x7f\x1a\x7a\x7a\x82\x68\x89\x1e\x87\x80\x8a\x8a\x7e\x1f\x72\xf7\xe8\xa4\x07\x69\x8c\x7c\x98\x5b\xd3\xfb\x4a\xf7\xaf"
+"\x18\xdb\xf7\x03\xe3\xf7\x0c\xa5\x9e\xd5\x92\x19\x0e\x2c\x0a\x0e\xf7\x3f\x37\x1d\x0e\xfb\x37\xf7\xc1\xf9\x3a\x15\xfb\x7e\xfd\xcf"
+"\xf7\x7e\xac\x3b\x06\x61\x8c\x82\x95\x8c\xb5\x08\xf9\x12\x07\x8c\xc7\x93\x94\xc5\x8c\x08\xca\x06\x0e\xfb\x6e\xf7\x67\x78\x15\xe7"
+"\x06\xfb\x7f\xf9\x5a\x05\x2e\x06\x0e\xfb\x37\xab\xfb\x29\x15\xf7\x7e\xf9\xcf\xfb\x7e\x6a\xca\x06\xc4\x8a\x94\x82\x8c\x4f\x08\xfd"
+"\x12\x07\x8c\x60\x83\x82\x60\x8a\x08\x3b\x06\x0e\xe0\xf7\x36\xf7\xcb\x15\xf7\x15\xf7\xa4\xf7\x15\xfb\xa4\x05\xe4\x06\xfb\x46\xf8"
+"\x01\x05\x3b\x06\xfb\x46\xfc\x01\x05\x0e\x8f\xf8\x87\xfb\x23\x15\xd0\xfc\x85\x46\x07\x0e\xfb\x37\xf7\x80\xf9\x47\xcd\x1d\xbe\xb9"
+"\x6d\xab\x60\xae\x1d\x0e\x8f\x23\x1d\x0e\xc7\x9c\xf9\x20\x15\xb8\x83\x94\x82\x8c\x62\x08\xfc\xf3\x97\x07\xda\xc3\x05\x61\xb9\xaf"
+"\x7c\xbd\x1b\xf7\x19\xe8\xf2\xf7\x2a\xf7\x1f\x3e\xea\xfb\x03\x5a\x68\x7b\x63\x65\x1f\xf7\x97\xfb\x56\x07\xf7\x56\xfb\xd0\x15\xb6"
+"\x9d\x9e\x9b\xac\x1b\xc9\xaa\x49\xfb\x18\xfb\x1f\x6d\x4b\x4b\x61\x70\xaa\xbb\x1f\x0e\x57\x36\x1d\x0e\xc7\xf8\xaa\x5b\x0a\x0e\x57"
+"\x25\x1d\x0e\xfb\x37\x99\x16\xf7\xaa\xa3\x06\x46\x8d\x7f\x96\x8a\xcd\x08\xf7\xce\xe2\xb7\x34\x39\x1d\xb0\xa4\xa4\xb0\xc6\x51\xb4"
+"\x36\x48\x57\x73\x5f\x70\x1e\x9a\x0a\x0e\x8f\x32\x0a\x0e\xc7\xf8\xaa\xa3\x15\x68\x8c\x7d\x9d\xb4\x1a\xf7\x8c\x07\xe1\x56\xc2\x39"
+"\x56\x66\x77\x51\x57\x1e\xf7\xad\x55\x1d\xfc\x92\x3a\x1d\x8f\x92\x95\x56\x1d\x0e\xfb\x6e\x29\x1d\xfb\x09\xf9\x47\x15\x60\x68\x68"
+"\x61\x5e\xac\x6a\xb7\xb7\xad\xac\xb7\xb7\x69\xad\x60\x1f\x0e\xfb\x37\xf7\x98\xf8\x61\x15\xfb\x5e\x73\x06\xbc\x88\x98\x7f\x8c\x5f"
+"\x08\xfc\x6e\x07\x56\x7c\x74\x6a\xa0\x1d\xdd\xd0\xe7\x1d\x40\xf9\x45\x15\x60\x69\x69\x60\x5d\xab\x6b\xb8\xb7\xad\xad\xb6\xb6\x68"
+"\xae\x60\x1f\x0e\xc7\x6c\x1d\x0e\xfb\x6e\x34\x0a\x0e\xf7\xe5\xf9\xc2\xa3\x15\x65\x8c\x7e\x9a\x8c\xb4\x08\xf7\x8f\x07\xe1\x56\xc2"
+"\x39\x52\x64\x74\x4b\x58\x1e\xca\x6d\x68\xa3\x4c\x1b\x4b\x5e\x70\x4f\x65\x1f\xd6\xfb\x53\x73\x07\xb5\x86\x97\x7f\x42\x1d\x81\x80"
+"\x5f\x84\x08\x73\xf7\x84\xa3\x07\x69\x8f\x7f\x99\xb2\x1a\xf7\x9f\x07\x91\x9b\x9d\x98\x96\x1e\x9b\xa0\x9b\x92\x9d\x1b\xb2\x9a\x74"
+"\x4f\x1f\xfb\x86\x07\x8c\x64\x7e\x7c\x67\x88\x08\x73\xf7\x7e\xa3\x07\x69\x8e\x7e\x9b\xb1\x1a\xf7\x9f\x07\x90\x9b\x9e\x98\x95\x1e"
+"\x9c\xa1\x9b\x92\x9d\x1b\xb1\x9a\x73\x50\x1f\xfb\x86\x07\x8c\x63\x7e\x7c\x66\x89\x08\x73\xf7\x82\x07\x0e\xc7\x2d\x0a\x0e\x8f\x27"
+"\x1d\x0e\xc7\x97\x1d\x50\x67\x74\x51\x6c\x1f\xd0\xfb\x53\x73\x07\xb7\x85\x95\x80\x61\x1a\xfc\x89\x79\x0a\xfb\x10\x70\x50\x51\x6a"
+"\x6e\xa2\xb1\x7c\x1f\x0e\xc7\xf8\xac\xfb\x49\x15\x5e\x93\x82\x94\x8a\xb4\x08\xf8\xe7\x7c\x07\x3d\x53\x05\xb7\x58\x6c\x98\x59\x1b"
+"\xfb\x16\x2f\x22\xfb\x29\xfb\x1d\xd7\x2b\xf7\x01\xbb\xad\x9b\xb3\xb4\x1f\xfb\x1f\x07\x8a\x4c\x83\x82\x4b\x80\x08\x72\xf7\x9f\x07"
+"\xfb\x56\xf7\xc3\x15\x66\x81\x72\x76\x69\x1b\x4d\x6c\xcc\xf7\x17\xf7\x1c\xab\xd0\xca\xb3\xa6\x6b\x5b\x1f\x0e\x57\x35\x1d\x0e\x20"
+"\x2f\x1d\x0e\xfb\x37\x82\x1d\x0e\xc7\x23\x0a\x0e\x8f\xf8\x79\xd8\x1d\x7f\x88\x7d\x83\x78\x1e\x43\xfb\x4a\x3c\xf7\x5f\x05\x83\x9f"
+"\x8a\x8f\x92\x1a\x9a\x95\x92\xa4\x8d\x1e\x8e\x92\x8c\x8c\x93\x1f\xa3\xfb\x8e\x73\x07\xa2\x88\x91\x88\x91\x82\x08\x8e\xb9\x27\x63"
+"\x9b\x1f\xf7\x0c\xfb\xbc\x05\xa5\x06\xf7\x34\xf8\x20\x9e\xb7\x93\x93\xaa\x8e\x19\x0e\x2b\x0a\x0e\x8f\xf8\x78\xa3\x15\x7b\x90\x84"
+"\x8f\x84\x96\xfb\x28\xf7\x78\x18\xf0\xf7\x12\x9e\xa2\x9f\x96\xaa\x90\x19\xa3\xfb\x3c\x73\x07\xbb\x86\x8e\x8a\x79\x1a\x7c\x81\x7a"
+"\x6f\x6b\x1e\x85\x85\x7c\x78\x7c\x76\x76\xa7\x7e\x9d\x87\x91\x08\x76\xab\x7f\xa1\x93\x1a\x98\x98\x91\xad\x8c\x1e\xa3\xfb\x8e\x73"
+"\x07\xa5\x86\x91\x87\x9f\x6d\xf7\x14\xfb\x59\x18\x6e\x66\x70\x6a\x82\x7d\x6f\x64\x6f\x6c\x78\x7f\x82\x85\x80\x88\x79\x89\x08\x73"
+"\xf7\x3d\xa3\x07\x66\x8d\x7e\x92\x9a\x1a\x9b\xa5\xb4\xb1\xb9\x1e\x8e\x8e\x91\x93\x92\x94\x9d\x6f\x99\x76\x95\x7d\x9a\x75\x18\x95"
+"\x7c\x93\x78\x83\x1a\x7f\x7e\x85\x6b\x89\x1e\x73\xf7\x85\x07\x0e\x8f\x2a\x0a\x0e\x57\x2e\x0a\x0e\x25\xf7\xe8\xfb\x37\x15\x3e\x99"
+"\x6f\xac\x8a\xd7\x08\xf7\x3f\x07\x8a\xdf\x73\xa6\x2e\x9e\xe7\x9d\xa4\xa7\x8c\xdf\x08\xf7\x3f\x07\x8c\xd7\xa7\xac\xd8\x9a\x08\x97"
+"\x07\xfb\x32\x58\x69\xfb\x00\x89\x1f\xfb\x47\x07\x8a\x43\x74\x72\x38\x78\xdf\x77\xa1\x73\x8c\x43\x08\xfb\x47\x07\x8c\x21\xc0\x67"
+"\xf7\x31\x8c\x08\x0e\xfb\xa8\xcd\xfb\x8e\x15\xe3\xfa\x7a\x33\x06\x0e\x25\xc1\xfb\x43\x15\xf7\x32\xbe\xad\xf7\x00\x8d\x1f\xf7\x47"
+"\x07\x8c\xd3\xa1\xa3\xdf\x9f\x37\x9e\x75\xa3\x8a\xd4\x08\xf7\x47\x07\xf6\x89\x57\xad\xfb\x31\x1b\x7f\x07\xd8\x7d\xa7\x6a\x8c\x3f"
+"\x08\xfb\x3f\x07\x8c\x37\xa4\x6f\xe7\x79\x08\x2f\x79\x71\x6e\x38\x1a\xfb\x3f\x07\x8a\x3f\x6f\x6a\x3e\x7c\x08\x0e\xa3\xf8\x48\xf7"
+"\xd4\x15\x6b\x72\x78\x7e\x73\x1b\x79\x78\x91\x9f\x5f\x1f\xab\x45\x6b\x95\x6b\x1b\x56\x64\x71\x51\x6b\x8b\x0a\xac\xa1\xc9\xb7\x1f"
+"\x0e\xfb\x37\xf7\x3c\xf8\x89\x15\x5a\x66\x67\x5c\x5b\xb1\x65\xba\xb9\xb1\xb1\xb9\xbb\x67\xb0\x5c\x1f\x7c\xfb\x8b\x15\x7e\xfb\x10"
+"\x81\x5b\x6e\x2b\x08\x7d\x5e\x87\x79\x72\x1a\x4b\xaa\x66\xc0\xc1\xaa\xb0\xca\xa4\x87\x9e\x7d\xb8\x1e\x6e\xeb\x81\xbc\x7e\xf7\x0f"
+"\x08\x0e\x8f\xf8\x41\xf8\xe0\x15\x63\x06\x5f\xfb\x0f\x05\x91\x73\x7c\x8d\x76\x1b\xfb\x19\x28\x20\xfb\x23\x44\xa1\x4f\xb5\x60\x1f"
+"\x9d\x79\x98\x81\xac\x7b\x58\xfb\x25\x18\xb3\x06\xba\xf7\x19\x05\x86\x9e\x97\x89\x9e\x1b\xb2\xb0\x95\x9e\xad\x1f\xa6\x9a\x9f\x9e"
+"\xad\xb5\x79\x9d\x18\x62\x69\x6f\x7c\x60\x1b\x69\x75\x95\xa6\x70\x1f\xdd\xf7\x7a\x05\x7d\x97\x98\x85\x9e\x1b\xb3\xa5\xa4\xb1\xb1"
+"\x78\xa6\x5f\xa3\x1f\xfb\x30\xfb\xd8\x15\x75\xba\x82\xb3\xc6\x1a\xf2\xac\xcc\xbe\xa4\x9d\x79\x73\x1e\x88\x07\x0e\x8f\xf8\x14\xf8"
+"\x09\x15\xfb\x06\x06\x78\xe0\x77\xf7\x03\xa1\x1a\xb1\xa1\xa4\xad\xa8\x9b\x7a\x6e\x8a\x1e\x89\x5f\x05\x65\x89\xa5\x70\xb1\x1b\xb5"
+"\xa5\xa6\xb8\xd1\x51\xb6\x2e\x59\x5e\x7e\x74\x6c\x1f\x5b\x68\x6e\x4f\x4b\x1a\x6d\x8e\x72\x96\x4e\x1e\x3b\x4a\xed\x06\x8f\x80\xa9"
+"\x36\x90\x77\x8d\x68\x19\x90\x77\x7e\x8d\x79\x1b\x46\x66\x6b\x4f\x55\xab\x6c\xc3\xb8\xad\x9e\xb6\xac\x1f\x5a\xc2\xa6\x7d\xb6\x1b"
+"\xb3\xab\x9c\xaa\xa0\x1f\xa0\xaa\x95\xb2\x92\xda\x08\x74\x06\x54\x7c\x74\x7b\x4c\x1b\x70\x72\x91\x9b\x5f\x1f\x9b\xba\x8f\xa3\xbc"
+"\x1a\x9f\x8a\x9a\x8a\x9e\x1e\xf7\x01\x06\xfb\x5f\xfb\x72\x15\x5a\x7d\x76\x77\x66\x1b\x69\x75\x9e\xa9\xab\xa1\x9f\xad\xa5\x9e\x83"
+"\x73\xa6\x1f\x0e\xfb\xdd\xf7\xa5\x3b\x1d\x0e\x8f\xf8\x56\xf7\xb8\x15\xbd\xfb\x03\x07\xf7\x24\xf7\xa3\x98\xa3\x9c\x95\xad\x8e\x19"
+"\xa5\xfb\x61\x71\x07\xcb\x88\x99\x83\x6b\x1a\x7f\x88\x7f\x86\x80\x1e\xfb\x0b\xfb\x7a\x7c\xa8\x7c\xaa\x7d\xa7\x7e\xa3\x19\x6d\xc5"
+"\x05\x66\xd4\x82\xa1\x99\x1a\xa0\x9c\x92\xc7\x8c\x1e\xa5\xfb\xc1\x71\x07\xb4\x88\xa2\x7d\x9e\x67\xf7\x16\xfb\x93\x18\x28\x59\xf7"
+"\x10\x06\x96\x76\x05\x52\xfb\x1b\x59\xf7\x1b\x5a\x07\x89\x45\x7a\x7d\x38\x85\x08\x72\xf7\xdf\xa4\x07\x3a\x91\x7b\x99\x89\xd1\x08"
+"\xbc\xf7\x1b\xbd\xfb\x1b\xce\x07\x8f\x96\x05\x0e\x8f\xd5\xf8\x1e\x15\xf7\x08\x06\x7e\xfc\x2a\x05\x47\x89\x71\x5e\x66\x1b\x7f\x81"
+"\x92\x94\x8e\x8d\x8e\x90\x91\x1f\x93\x95\x8e\x92\x96\x1a\xa8\x75\x9f\x6c\x6a\x75\x74\x69\x5b\xaf\x6d\xc4\xf5\xd2\xe3\xf7\x39\xa8"
+"\x1e\x93\xba\x8d\xa2\x98\xf7\x76\x08\xf7\x0e\xb9\xfb\x0e\xe5\x06\xec\xa1\xbc\xb5\x97\x96\x84\x83\x89\x89\x87\x88\x86\x1e\x83\x7f"
+"\x86\x7e\x7f\x1a\x72\xa3\x76\xa8\xaa\xa2\xa5\xae\xba\x63\xaa\x4d\x55\x5f\x75\x60\x6a\x1e\x68\x5e\x78\x54\x7a\x26\x08\xfb\x0c\x06"
+"\x0e\x8f\xf7\xae\xab\x15\xa7\x74\x94\x7b\x6c\x1a\x5b\x71\x74\x56\x67\x6b\x99\x9a\x8f\x8f\x8f\x96\x92\x1e\xa2\x99\x93\x96\x9c\x1a"
+"\xa9\x6d\xa5\x68\x67\x70\x6f\x66\x54\xce\x5e\xde\xeb\xcf\xc1\xd6\xc1\x6f\xb4\x41\xbf\x1e\xc1\x8c\xa7\x92\xa1\x9d\x08\xa2\x9e\x99"
+"\xaa\xaf\x1a\xaa\x84\xa7\x7e\xa1\x1e\x6d\xbe\x59\xbc\x49\xb6\x08\x46\xb9\x68\xb2\xad\x1a\xb4\xad\xa7\xbd\xa6\xa5\x81\x80\x87\x86"
+"\x84\x81\x83\x1e\x79\x7d\x82\x7c\x7d\x1a\x6f\xaa\x6e\xa8\xad\xaa\xaa\xac\xc0\x48\xb9\x3d\x34\x4d\x55\x3f\x5b\x9d\x71\xdd\x43\x1e"
+"\x5d\x74\x87\x7f\x76\x1f\x69\x78\x79\x66\x59\x1a\x48\xa5\x6a\xf7\x22\xfb\x07\x1e\x64\xf7\xce\x15\xa9\xb5\x70\x4c\xcd\x1f\xac\x6c"
+"\x95\x78\x70\x1a\x69\x75\x73\x6c\x6d\x76\x97\xc1\x4d\x1e\x4f\xbf\x82\x99\xb1\x1a\xab\xa1\xa2\xab\x1e\x0e\x8f\x71\xf7\x0b\x15\xc5"
+"\x51\xeb\xed\x05\x71\xb5\xaf\x80\xb7\x1b\xb7\xaf\x96\xa5\xb5\x1f\xeb\x29\xc5\xc5\x29\xed\x05\xa5\xb0\x96\xaf\xba\x1a\xb9\x81\xac"
+"\x70\xb6\x1e\xed\xed\x51\xc3\x2b\x2b\x05\xa4\x63\x68\x95\x5c\x1b\x5d\x67\x81\x72\x63\x1f\x2b\xeb\x51\x53\xed\x29\x05\x71\x63\x80"
+"\x67\x5d\x1a\x5c\x96\x69\xa5\x64\x1e\xf7\x46\xf7\x91\x15\xd2\xc3\x50\x3f\x44\x51\x4f\x46\x44\x53\xc6\xd5\xd6\xc3\xc5\xd2\x1f\x0e"
+"\xfb\x6e\xf7\x34\xf8\x28\x15\xad\xf7\x26\x95\xbe\xa2\x1a\xb2\x6f\xa7\x66\x64\x72\x6f\x60\x75\x97\x4d\xa0\x37\x1e\x8d\x84\x8f\x78"
+"\x90\x75\x08\x0e\x8f\xf7\x5a\xf9\x47\xcd\x1d\xbe\xb9\x6d\xab\x60\xae\x1d\xf7\x97\xa1\x15\xfb\x08\x48\x59\x4a\x34\x1a\x46\xb4\x5c"
+"\xc7\xbd\xac\xab\xbd\xba\x6e\xab\x5f\x86\x85\x8b\x8a\x85\x1e\x8a\x88\x89\x8b\x89\x1b\x80\x83\x94\x97\xb3\xad\xb4\xd6\xbf\x1f\x0e"
+"\x8f\xf7\x41\xf7\x89\x74\x0a\x90\x87\x90\x86\x8f\x88\x8d\x8a\x19\x8a\x0a\xf7\x66\x9d\x15\xa7\xae\x9b\xa0\x90\x92\x08\xb1\xc0\x9a"
+"\xa5\x9c\x1a\x92\x87\x8f\x83\x83\x83\x87\x7e\x7c\x1e\x8a\x8a\x89\x89\x88\x89\xfb\x5f\xfb\x38\x18\x87\x07\xf7\x62\xfb\x3a\x8c\x8a"
+"\x8c\x8a\x8e\x89\x19\x90\x86\x8f\x88\x8d\x8a\x08\x83\x94\x91\x89\x91\x1b\x92\x8f\x91\x94\x9f\x70\xb6\x58\xc6\x1f\x7d\x9c\x7f\x9b"
+"\x7d\xa0\x08\x0e\xfb\x37\xf7\x5d\xf7\x89\x74\x0a\x8c\x8a\x8c\x8a\x8e\x89\x19\x90\x86\x8f\x88\x8d\x8a\x08\x8a\x0a\x0e\xfb\x37\xf7"
+"\x18\x7b\x1d\x0e\xc7\xf8\xac\xa3\x15\x68\x8c\x7d\x9b\xb3\x1a\xf8\x1c\x07\x39\x83\x49\x86\x74\x83\x1d\x41\x53\x79\x67\x66\x1e\x63"
+"\x63\x7c\x5d\x89\x31\x08\x65\x1d\x81\x80\x5d\x86\x08\x73\xf7\x87\x3a\x0a\xf3\x07\xa5\x8a\x93\x84\x71\x1a\xfb\xc2\x07\x8c\x65\x7e"
+"\x7c\x68\x87\x08\x73\xf7\x7f\x07\x0e\xc7\xf8\xac\xa3\x15\x7f\x8c\x05\x72\x8d\x7f\x9e\xae\x1a\xf8\xf5\x78\x07\x5c\x6d\x05\xa1\x55"
+"\x61\x94\x55\x1b\x49\x57\x77\x65\x69\x1f\x6b\x67\x7e\x5d\x88\x31\x08\x65\x1d\x81\x80\x5d\x86\x08\x73\xf7\x87\x3a\x0a\xf7\x1e\xfb"
+"\xe4\x07\x68\x80\x7a\x6f\x87\x1e\x83\x8a\x05\x73\xf7\x7f\x07\xfb\x50\xf8\x61\x15\xfb\x1e\xc9\x06\xf1\xa0\xac\xce\xa5\x9b\x83\x7e"
+"\x87\x89\x85\x88\x84\x1e\x85\x80\x89\x83\x84\x1a\x7b\x94\x7c\x97\x87\x1e\x0e\x8f\xf7\xa3\x04\x31\xf8\x88\xe5\x07\x0e\x8f\xf7\x99"
+"\xfb\x1a\x15\x90\xf7\x24\x8d\xe0\xa1\xf6\xa6\xc9\x19\x8c\x8d\x8b\x8c\x8c\x1a\x8d\x89\x8e\x88\x8f\x1e\x69\xb6\x77\xcc\x8d\xc8\xb1"
+"\x89\x93\x89\xb3\x77\x08\x7d\xa5\x99\x87\x9b\x1b\xaa\x9e\x9f\xab\xac\x78\xa0\x6b\x7c\x80\x87\x7f\x71\x1f\x64\x79\x7b\x86\x69\x86"
+"\x08\xc0\x8f\x99\xa3\xba\x1e\x99\xa7\x8f\x97\x9b\x1a\xae\x77\x9f\x67\x68\x75\x74\x66\x7c\x8e\x83\x97\x76\x1e\xa2\x62\x8f\x7b\x8d"
+"\x4b\x67\x8f\x7f\x8e\x65\x9f\x08\x98\x72\x7f\x8f\x7b\x1b\x6a\x78\x78\x69\x6a\x9f\x76\xa9\x9c\x96\x8e\x98\xa3\x1f\xb0\x9f\x95\x8e"
+"\xb5\x8f\x89\x38\x83\x71\x6c\x60\x08\x83\x80\x86\x82\x87\x1a\x87\x8d\x85\x8e\x84\x1e\xa5\x48\x9d\x2d\x8d\x39\x90\xfb\x24\x18\x0e"
+"\x8f\xf7\x71\xf8\x65\x15\x76\x8c\x80\x8f\x6a\x9b\x08\x98\x6f\x79\x91\x7b\x1b\x6e\x77\x77\x6d\x6e\xa0\x77\xa8\x99\x99\x8f\x97\xa4"
+"\x1f\xb6\x9e\x94\x8e\xb2\x8d\x89\x49\x80\x6a\x61\x47\xb4\x47\x97\x66\x8d\x4c\x68\x8d\x81\x8e\x60\x9e\x08\x97\x6f\x7d\x90\x7c\x1b"
+"\x6f\x76\x76\x6f\x6d\x9f\x77\xa9\x9a\x9d\x90\x99\xa7\x1f\xa7\x99\xa7\x94\x94\x89\x08\x9d\x06\x8a\x55\x87\x7c\x75\x5a\x08\x7f\x70"
+"\x88\x80\x7c\x1a\x6a\xa0\x76\xab\xab\xa3\xa2\xab\x9a\x87\x97\x7f\xa7\x1e\x74\xbe\x87\x9d\x8a\xba\xb0\x88\x98\x87\xb5\x79\x08\x7f"
+"\xa4\x99\x87\x97\x1b\xaa\x9f\x9e\xa8\xaa\x79\x9d\x6d\x7a\x7e\x87\x7e\x6f\x1f\x79\x62\x7e\x87\x69\x1b\x8c\xca\x99\xba\xab\xb9\x08"
+"\x90\x90\x8d\x90\x8d\x1a\x8d\x89\x90\x86\x90\x1e\x6e\xb1\x79\xc6\xc5\x1a\xb0\x8a\x99\x88\xb5\x77\x08\x7f\xa4\x96\x88\x9a\x1b\xaa"
+"\x9e\x9e\xa9\xa9\x77\x9e\x6d\x7e\x7d\x87\x7f\x72\x1f\x60\x79\x7f\x87\x66\x88\x8c\xb9\x8f\x9e\xa2\xbf\x08\x97\xa7\x8f\x98\x99\x1a"
+"\xab\x73\xa2\x6b\x6b\x76\x75\x6b\x7c\x8e\x80\x97\x70\x1e\xa1\x59\x8f\x7b\x8c\x55\x08\x0e\xfb\x8a\x50\x1d\xb7\xf7\xb9\xf9\x1f\x15"
+"\xbd\xfd\xd9\xf7\x3f\xa4\x06\x44\x92\x87\x8e\x8a\xb5\x8a\x95\x18\xb1\x07\xf8\xf8\x07\xb1\x07\x8c\x95\x05\xb2\x91\x90\xbc\x91\x1e"
+"\x8f\x96\x8c\x8c\x96\x1f\xa4\xfb\xc0\x07\xfb\x2b\x47\x4e\xfb\x1a\x32\xab\x4a\xc7\x68\x1f\xa9\x79\xa5\x84\xbe\x89\x08\xfb\xda\x07"
+"\x65\x07\x8a\x81\x05\x62\x85\x87\x41\x84\x1e\x72\xf7\x43\x07\x2d\xf8\x70\x15\x40\xa6\x69\xc8\xf4\x1a\xbc\x94\xb3\x9b\xa5\x1e\x9c"
+"\xa8\x9f\x97\xba\x97\x08\x0e\xfb\x26\xf7\x44\xf8\x72\x15\x3e\x4b\x4c\x3f\x3b\xc8\x4e\xdb\xd9\xc8\xc8\xd9\xda\x4d\xc9\x3e\x1f\x0e"
+"\xfb\x37\xec\x6d\x0a\x0e\x8f\xf7\xc2\x6d\x0a\xfb\x97\x75\x6f\x0a\x8f\xf7\xc2\x85\x1d\xfb\x97\x75\xa9\x0a\x6b\x59\x5b\xa8\x6c\xb8"
+"\x90\x90\x67\x1d\x7e\x65\x69\x61\x40\x57\x1f\x0e\x8f\xf7\x17\x7b\x1d\xf7\x4a\x79\x15\x6f\x68\x7b\x76\x86\x84\x08\x65\x56\x7c\x71"
+"\x7a\x1a\x83\x8f\x88\x93\x94\x91\x8e\x99\x9a\x1e\x8e\x8c\x8d\x8d\x8d\x8d\xf7\x5f\xf7\x38\x18\x8f\x07\xfb\x62\xf7\x3a\x05\x9a\x78"
+"\x7f\x93\x86\x1b\x84\x86\x85\x82\x77\xa6\x61\xbe\x4e\x1f\x98\x7c\x97\x7b\x9a\x75\x08\x0e\xf8\x8c\xf7\x3a\xf7\x30\x15\x2d\x1d\xf7"
+"\xe1\x16\x2d\x1d\xf7\xe1\x16\x2d\x1d\x0e\xf8\x8c\xf8\xd0\xf9\x56\x15\x5b\x06\x4b\x58\x5a\x70\x49\x1b\x67\x78\x92\xa2\x6f\x1f\xa0"
+"\x71\x78\x93\x71\x1b\x22\x2f\x27\xfb\x05\x39\xbf\x52\xd5\xaf\xb0\x9b\xa7\xa7\x1f\xb4\xb4\xa8\xd9\xcf\x1a\x98\x8a\x96\x89\x9f\x1e"
+"\x81\xa4\x99\x88\xa0\x1b\xb4\xab\x97\xa9\xb3\x1f\xfc\x18\xfd\x23\x05\xbb\x06\xd3\xf9\x2b\x15\x90\x8f\x89\x84\x95\x1f\x96\x84\x8e"
+"\x8a\x92\x88\x08\xa5\x81\x91\x81\x69\x1a\x20\x4e\x26\x4b\x6a\x7a\xa3\xb7\xe4\xc9\xf7\x14\xb4\x88\x1e\xf9\x42\xfb\xc1\x15\x21\x31"
+"\x29\xfb\x06\x36\xbd\x55\xd8\xb1\xaf\x9a\xa6\xa5\x1f\xb7\xb9\xa7\xd4\xd1\x1a\xd6\x64\xb8\x4b\x1e\x9e\x6a\x15\xad\xa4\x68\x5d\x58"
+"\x76\x48\x6e\x61\x1f\x69\x74\x72\x7c\x6e\x1b\x6b\x7a\xa2\xb7\xbf\xa5\xde\xab\xb9\x1f\xa8\x9e\x9e\x98\xa0\x1b\xfc\x11\xac\x15\x24"
+"\x2e\x27\xfb\x01\x35\xbd\x53\xd8\xb2\xae\x9a\xa6\xa5\x1f\xb8\xba\xa7\xd4\xd1\x1a\xd5\x64\xb8\x4a\x1e\x9f\x6a\x15\xad\xa4\x69\x5d"
+"\x57\x76\x48\x6e\x61\x1f\x6a\x74\x72\x7b\x6e\x1b\x69\x7b\xa2\xb9\xbe\xa6\xdc\xaa\xb9\x1f\xa8\x9f\x9e\x99\xa0\x1b\x0e\x8f\xf7\x8b"
+"\xf7\x95\x15\x42\x83\x7d\x4c\x64\x1e\x2f\x53\x6e\x62\x46\x1a\x27\xda\x49\xf7\x0d\xf7\x02\xd9\xc7\xdf\xb7\x6e\xab\x63\x66\x72\x71"
+"\x65\x77\x90\x7f\x9c\x78\x1e\x97\x7e\x8e\x85\x81\x1a\x73\x73\x7b\x67\x55\x6c\xba\xde\xc0\x95\xac\xac\xca\x1e\xa3\xb9\x93\xa2\xa7"
+"\x1a\x92\x8b\x97\x8a\x98\x1e\x8a\x99\x05\x7c\xf7\x88\x15\x5b\x66\x67\x5b\x5c\xb1\x65\xb9\xb9\xb2\xb2\xb8\xbb\x66\xb0\x5c\x1f\x0e"
+"\xfb\x37\xf7\x8a\xf8\xa4\x28\x1d\xfb\x37\xe1\xf8\xa4\x32\x1d\xfb\x37\xf7\xaa\xf8\xa4\x20\x0a\xfb\x37\xa5\xf8\xb9\x64\x0a\xfb\x37"
+"\xf7\xdf\xf9\x11\x22\x0a\xfb\x37\xf7\xa6\x6c\x0a\xfb\x37\xf7\x39\xf9\x2f\x2a\x1d\xfb\x37\xc8\xf9\x2f\x28\x0a\xfb\x37\xf7\x3b\xf9"
+"\x82\x38\x1d\xfb\x37\xf7\x08\x2b\x15\x96\x83\x05\x8e\x96\x92\x8c\x95\x1b\xa8\x9c\x7e\x74\x70\x77\x7d\x65\x7b\x7e\x8e\x94\x73\x1f"
+"\x85\x8d\x2f\x0a\xa7\xcb\x05\x61\x06\x0e\xfb\x37\x7e\xf8\xa4\x87\x1d\xca\xfb\x31\x32\x1d\xfb\x37\xf7\x32\xab\x15\x86\x85\x8a\x89"
+"\x83\x81\x08\x62\x59\x7e\x71\x6d\x1a\x5c\xb7\x69\xc9\x92\x0a\x62\x75\xa1\xb5\x9a\x8e\x9d\x94\xaa\x1f\x8e\x95\x8c\x8e\x8c\x92\x08"
+"\x0e\xfb\x37\xf7\xe3\xf9\x54\x21\x0a\xf8\x8c\xf3\x1d\xf8\x8c\xd0\x1d\x57\x69\x68\x08\x62\x63\x50\x77\x36\x1b\x4f\x7b\x96\xb6\x1f"
+"\xf7\x87\x07\xf7\x04\x84\xa4\x71\x9d\xb9\x1d\xa3\x99\x91\xc3\xe5\xc7\x7a\x68\xa7\x1e\xa0\x71\x95\x72\x98\x4c\xa4\x0a\x82\x77\x78"
+"\x6b\x1e\x8a\x88\x88\x86\x88\x86\x6b\x0a\x7c\x42\x87\x08\x3b\xf7\xd2\x15\xf7\x35\xf7\xb6\x05\x92\xfb\xb6\x06\x0e\xfb\x58\xf7\xb7"
+"\xf8\x4f\x15\x85\x85\x05\x89\x89\x8a\x8b\x88\x1b\x83\x88\x8f\x96\x1f\xf7\x30\x07\xbe\x5a\xaa\x3d\x3c\x59\x6e\x5d\x72\x9a\x7c\xa6"
+"\xa7\x9f\x99\xa0\x92\x88\x91\x83\x93\x1e\x84\x91\x89\x90\x8e\x1a\x97\x9d\x95\xa2\xaf\x99\x7c\x66\x1e\x63\x07\xfb\x1b\x68\x64\x72"
+"\x59\x1a\x64\xa9\x70\xb7\xb1\xa8\x97\xa8\xae\x1e\x6d\x92\x99\x80\xab\x1b\xa8\x9f\x94\xa4\xa3\x1f\xfb\x15\xad\x15\x79\x7e\x7d\x83"
+"\x7b\x1b\x78\x7e\x9c\xa2\xad\xa4\xa3\xbd\x9a\x1f\x0e\xf7\x3f\xf9\x12\xf7\x77\x15\x6e\x06\x6a\x3d\x77\x6c\x68\x6b\x08\x66\x62\x53"
+"\x79\x3d\x1b\x4e\x79\x98\xb6\x1f\xf7\xba\x07\xf7\x0f\xd7\x05\xc8\x07\xfb\x0f\x3f\x05\xf7\x09\x07\x8d\xd8\x99\x98\xe0\x8d\x08\xa4"
+"\xfb\xf1\x72\x07\xcd\x88\x9e\x7b\x8c\x57\x08\xfb\x7d\x07\x3a\x5a\x05\x4e\x07\xdc\xbc\x05\xfb\x52\x07\x8a\x57\x7d\x80\x44\x83\x08"
+"\x72\xf8\xd6\x07\x0e\xf7\xae\x84\x1d\x68\xca\xbf\x7d\xd3\x1b\xf7\x63\xf7\x27\xf7\x27\xf7\x64\xcf\x7b\xcb\x6c\xc2\x1f\x75\xb1\x78"
+"\xa0\x5b\xb3\x08\xfc\x09\xfc\x6b\x15\x7a\xc7\x86\xb6\xd5\x1a\xf7\x68\x99\x1d\x0e\xf8\x8c\xfa\x69\xf7\x67\x15\x70\x06\x6a\x45\x76"
+"\x6d\x67\x6f\x08\x69\x61\x5a\x7d\x41\x1b\x51\x7d\x95\xb1\x1f\xf7\x8e\x07\xf5\x85\xa9\x6b\x9a\xfb\x0b\x08\xa2\xf7\xe6\x74\x06\x71"
+"\xfb\x13\x78\x78\x21\x89\x08\xf7\x8d\x07\x9f\x98\x91\xb5\xd4\xc5\x80\x79\xa9\x1e\xb4\x71\x9b\x6b\x99\x3c\x08\xa5\xf7\x5d\xfc\x30"
+"\x06\x89\x06\x8a\x06\x5b\x8e\x78\x8c\x05\x8e\x55\x75\x8c\x79\x1b\xfb\x5f\xfb\x1f\xfb\x22\xfb\x64\xfb\x04\xb5\x29\xd4\x4f\x1f\x5e"
+"\xc2\xd8\x73\xe5\x1b\x99\x9a\x8c\x8c\x99\x1f\x8d\x9d\xb5\x8c\xba\x1b\xf8\x42\x06\xfc\x67\xf7\x68\x15\x27\x87\x6a\x7a\x76\x1e\x75"
+"\x7a\x73\x82\x5f\x1b\x48\x63\xa0\xbb\x70\x1f\x73\xb5\x7b\xe6\xe6\x1a\xf7\x70\xc9\xf7\x04\xf7\x0f\xaf\xa6\x81\x77\x98\x1e\x9a\x76"
+"\x8f\x71\x43\x1a\x0e\xfb\x3a\xf7\x39\xf9\x44\x15\x36\x4d\x4d\x37\x38\xc9\x4d\xde\xe2\xc9\xc7\xe1\xde\x4c\xc9\x37\x1f\x76\x04\xb0"
+"\x97\x6c\x27\x32\x7f\x6d\x65\x67\x7e\xab\xe4\xed\x97\xaa\xb1\x1f\x0e\xf9\x34\xf7\x14\x15\x5b\x65\x67\x78\x5a\x1b\x3a\x80\x0a\x65"
+"\x65\x99\x4a\x1b\x21\x3e\x56\x43\x64\xa6\x72\xb5\xb3\xa2\x9f\xb0\x9e\x87\x94\x7e\x9a\x1f\x82\x95\x88\x90\x92\x1a\x9f\xa6\x9a\xb1"
+"\xc3\xa1\x74\x51\x1e\x3b\x07\xfb\x15\x61\x5f\x7a\x69\x74\x08\x65\x70\x79\x6a\x5f\x1a\x44\xb4\x66\xd8\xcd\xc5\xa6\xc3\xc3\x1e\x91"
+"\x91\x05\x4d\xb1\xb2\x75\xd1\x1b\xea\xc2\xab\xe5\xc6\x1f\xfc\x21\x6b\x15\x72\x73\x7d\x84\x73\x1b\x65\x78\xa3\xba\xca\xaa\xac\xe3"
+"\xab\x1f\xf7\x1e\xb0\x15\xf7\x09\x9d\xb4\xbe\xbb\x9b\x6c\x2d\x1e\x6a\x07\x0e\xfb\x6e\x29\x1d\x0e\xfb\x6e\xf7\x62\xf8\x24\x15\xec"
+"\xdb\x05\xbd\x07\x2a\x3b\x05\xf7\x76\x5a\x1d\xfb\x7d\x07\x32\x43\x05\x59\x07\xe4\xd3\x05\xfb\x77\x98\x0a\xa3\x07\x6b\x7b\x9f\xb3"
+"\x8a\x1f\x0e\x8f\xe8\x1d\x67\x6e\x92\x65\x1b\xfb\x16\x2a\x23\xfb\x20\x3b\xa4\x52\xc7\x53\x1f\x3f\xfb\x14\x05\xba\x06\xca\xf4\x05"
+"\x78\xaf\xaa\x83\xb3\x1b\xf7\x16\xea\xf2\xf7\x20\xdd\x71\xc7\x4d\xc2\x1f\xfb\x6b\xfb\xb2\x15\x8a\x9f\x8b\xa1\xa7\x1a\xf7\x48\xaa"
+"\x1d\x68\x77\x9d\xb8\x7e\x1e\x0e\xf9\x38\xf7\x11\x15\x57\x5d\x71\x7c\x5d\x1b\x3d\x67\xc0\xf7\x06\x1f\x8e\x07\x9c\xf7\x8d\x07\x87"
+"\xd0\x84\xac\x78\xaf\x08\xc6\x6c\x53\xaa\x41\x1b\x59\x6d\x80\x65\x5a\x1f\xae\x68\x67\x99\x55\x1b\xfb\x18\x2d\x25\xfb\x22\xfb\x24"
+"\xe6\x28\xf7\x18\xc5\xb3\x99\xad\xb3\x1f\x69\xa9\xac\x7d\xbf\x1b\xdf\xbc\xa9\xe8\xcc\x1f\xfb\x90\xf7\x41\x15\xc1\x07\xd2\xa2\xb0"
+"\xb5\xb3\x9c\x6c\x40\x8e\x1e\x83\x8c\x75\x8c\x71\x1e\xfb\x9b\xfb\x19\x15\x2f\x77\x62\x5d\x53\x78\xc4\xf7\x43\xf7\x2a\x9c\xb9\xc2"
+"\xbd\x9e\x66\x2b\x1e\x0e\xc7\x9e\x16\xf7\x52\xf8\xde\x06\xbd\xa0\xa6\xb2\xbc\xa0\x64\x2d\x28\x7e\x74\x52\x8a\x1e\x69\x07\xac\x89"
+"\x9b\x86\x9a\x7f\x08\xa5\x75\x97\x59\x34\x1a\xfb\x19\x7d\x64\x5c\x82\x87\x8c\x91\x82\x1e\x81\x92\x7d\x69\x05\x80\xa9\x9b\x87\x9d"
+"\x1b\xf4\xdf\xe6\xf7\x07\xc0\x7a\xb7\x6a\xaa\x1f\x6b\xaa\x69\x9c\x3a\xa2\xbc\x96\xa1\x94\xa5\x9d\x08\xb1\xa5\xa0\xb1\xb5\x1a\xe4"
+"\x36\xcc\xfb\x06\xfb\x0d\x35\x3e\x20\x1e\xfc\x38\x07\x8a\x5c\x83\x81\x61\x85\x08\x0e\xfb\x58\xf7\xa5\xf7\xbb\x8e\x1d\x0e\xd5\xf8"
+"\x55\xf7\x00\x15\xe3\xf7\xb7\xfc\x8c\x33\xf8\x34\x06\x0e\xc7\xf8\x6f\xf8\x61\x15\xfb\x1f\xfb\xfb\x06\x79\x6f\x72\x82\x76\x1b\x69"
+"\x74\xa9\xb7\x1f\xf7\xcc\xfb\x1f\xfc\x09\x07\x54\x85\x61\x7a\x4c\x1e\x84\x6e\x88\x7c\x7e\x1a\x5a\xa3\x6f\xb4\xb4\xa1\xa6\xbc\x9d"
+"\x87\x9e\x81\xad\x1e\x7e\xb4\x89\x92\x87\xac\x08\x72\xac\xa7\x81\xb4\x1b\xb5\xa4\x98\xb2\xab\x1f\x67\xa1\xa9\x7b\xbc\x1b\xb5\x9f"
+"\x94\xb3\xb7\x1f\xa3\x07\x86\x82\x86\x8a\x84\x1b\x75\x79\xa0\xa5\x1f\x0e\xf8\x8c\xf7\x8f\xf9\x20\x15\xb9\x06\xae\xa0\x76\x60\x95"
+"\x1f\xa2\xe3\xfb\xfe\x33\xa2\x06\xb6\x95\xa0\xa0\xad\x1b\xb9\xfb\xc9\x06\x60\x8a\x8a\x5a\x87\x1e\x74\xf7\x56\xa2\x07\x59\x8f\x8a"
+"\x8c\xb6\x1a\xf8\x35\x43\x15\x98\x06\xf7\x29\xf7\xbe\x05\xfb\x76\x07\x6d\x89\x85\x85\x87\x1e\x83\x86\x87\x8b\x6d\x88\x08\x74\xf7"
+"\x56\xa2\x07\x59\x8f\x8a\x8c\xb6\x1a\xf7\x9a\x07\xb0\x95\x93\xb7\x8e\x1e\xa2\xfb\x0a\x07\xfb\x2b\xfb\xb5\xfb\x22\xf7\xb5\x05\xfb"
+"\x1f\x74\x06\xa9\x8a\xa4\x79\x9a\x6a\x08\xfb\x81\x07\x54\x83\x80\x5f\x88\x1e\x74\xf7\x19\xa2\x07\x5f\x8e\x83\x96\xc2\x1a\xf7\x5f"
+"\x07\x0e\x57\x0a\xf7\x92\xf8\xd1\x3b\x1d\xfc\x1b\x89\x1d\xf8\xad\xfb\x28\x15\x7b\x06\x79\x60\x84\x88\x47\x8a\x08\x35\x90\x06\xe8"
+"\xe2\x05\xc1\xbe\x9f\xae\xb8\x1a\xcb\x59\xb9\x46\x4a\x5e\x65\x37\x69\x1e\xa3\x06\xb2\xa0\xa0\x9a\xad\x1b\xb5\xac\x6a\x60\x51\x68"
+"\x5b\xfb\x29\xfb\x29\x1f\x7d\xf7\xa2\x07\x0e\xd5\xf7\x85\xf7\xfb\x15\xfb\x64\x33\xf7\x64\xfb\x23\xe3\xf7\x23\xf7\x64\xe3\xfb\x64"
+"\xf7\x65\x33\x06\xfb\x64\xfc\xcc\x15\xf8\x8c\xe3\xfc\x8c\x06\x0e\xf7\x07\x9b\xb1\x0a\xc3\x07\xf7\x33\x8c\xaf\x91\xc2\xac\x08\xc5"
+"\xad\xa9\xbf\xcc\x1a\xf7\x0c\x2e\xc9\xfb\x47\x1e\x49\x97\x06\x8d\xd5\x93\x94\xd9\x95\x08\xa4\xfb\xe2\x72\x07\x4e\x1d\xf8\x57\x15"
+"\xa2\x9c\x97\xad\xdd\x4b\x0a\x75\x1e\x76\x73\x6a\x84\x44\x1b\x0e\xf7\x92\xf9\x52\xf7\x2d\x93\x1d\x91\xf7\xfc\xd6\x1d\xfc\x22\x89"
+"\x1d\x0e\xd5\xc1\x0a\xf7\x90\xf7\xdc\x15\x63\x67\x67\x63\x61\xae\x68\xb5\xb3\xaf\xb0\xb3\xb3\x67\xaf\x62\x1f\xfc\x33\x04\x62\x68"
+"\x68\x63\x61\xae\x67\xb5\xb2\xb0\xb0\xb4\xb3\x67\xae\x62\x1f\x0e\xfb\xa8\xcd\x78\x15\xe3\xf7\xa9\x33\x06\xf7\x30\x04\xe3\xf7\xa9"
+"\x33\x06\x0e\x2b\xf7\x5c\xf9\x44\x15\x3b\x4c\x4c\x3b\x3c\xca\x4b\xd9\xdd\xca\xc9\xdc\xdb\x4c\xca\x3b\x1f\x67\x04\xc2\xba\x5a\x51"
+"\x50\x5d\x5b\x52\x54\x5d\xbc\xc5\xc6\xb9\xbb\xc3\x1f\x0e\xc7\x97\x1d\x4f\x68\x74\x50\x6e\x1f\xf7\xb1\xfb\x56\x73\x07\xb8\x83\x94"
+"\x82\x8c\x62\x08\xfd\x61\x79\x0a\xfb\x0e\x6f\x4e\x54\x69\x71\x9f\xb4\x78\x1f\x0e\xf7\x92\xf8\xf9\x3b\x1d\xfc\xf9\x29\x80\x1d\xf7"
+"\x00\xe1\xd0\xe2\xbc\x71\xaf\x59\x9f\x1e\x8f\x07\xb0\x9f\x98\x9e\xae\x1a\xbe\x64\xa9\x48\x4a\x5b\x6e\x4d\x67\x1e\xf9\x24\xfc\x50"
+"\x93\x1d\x0e\xfb\x58\xf7\xc0\xf8\x26\x15\x7b\x06\x60\x79\x83\x87\x48\x1b\x2f\x06\xee\xe7\x05\xc1\xbd\x9f\xaf\xb7\x1a\xcc\x5a\xb9"
+"\x45\x4a\x5e\x65\x37\x69\x1e\xa3\x06\xb2\xa0\xa0\x9a\xad\x1b\xb5\xac\x69\x61\x51\x68\x5b\xfb\x29\xfb\x29\x1f\x7d\xf7\xa2\x07\x0e"
+"\xf7\x8f\xf7\x63\xf8\x96\x15\xb8\x89\x8c\x8a\x62\x1a\xfb\x93\x07\x63\x8a\x8a\x5e\x88\x1e\x79\xf7\x40\x9d\x07\x5e\x8e\x8a\x8c\xb3"
+"\x1a\xf4\xb0\x07\xa0\x69\x95\x7b\x9d\x67\x08\x4c\xac\x99\x79\x9b\x1b\xdc\x96\x06\x76\x9f\x77\xa4\x6e\xb3\x51\xdd\x18\xc1\xa1\xa5"
+"\xad\xbc\x1a\xc6\x5f\xb0\x44\x1e\xfb\x55\x06\xf7\x12\x75\x15\xaf\x06\xb4\x9f\x71\x56\x52\x75\x6b\x63\x1f\x68\x06\xb4\xf7\xf1\x60"
+"\x0a\xd5\xc1\x0a\x0e\x8f\xf7\x94\xf8\xd2\x15\xb4\x63\xa5\x61\x9e\x52\x89\x88\x18\xa9\x71\x74\x96\x61\x1b\xfb\x13\x2a\x22\xfb\x1f"
+"\xfb\x20\xeb\x24\xf7\x16\xf7\x22\xde\xf7\x05\xf7\x56\xcf\x81\xc6\x76\xbe\x1f\x73\xc8\x72\xab\x4e\xbd\xe7\xba\x18\x5a\xa9\x31\x5d"
+"\x59\xa5\x5a\x99\x4e\x91\x19\x5d\x72\xbd\x82\xb3\x79\xb6\x6c\x19\xfb\x09\x50\xbb\x6c\x05\xf5\x3f\x15\xc4\x9f\x55\xfb\x30\xfb\x37"
+"\x78\x57\x51\x71\x78\x96\xa1\x7e\x1f\x7b\xa9\x85\xb9\xeb\x1a\xf4\x92\xbe\x9c\xaa\x1e\xa1\x97\x9d\x96\xa5\x1b\x0e\xd5\xf7\x73\xf7"
+"\x91\x15\xfb\x43\xfb\x43\xc9\x4d\xf7\x43\xf7\x44\xf7\x43\xfb\x44\xc9\xc9\xfb\x44\xf7\x43\xf7\x44\xf7\x43\x4d\xc9\xfb\x43\xfb\x44"
+"\xfb\x43\xf7\x44\x4d\x4d\x05\x0e\xfb\x58\xaf\xf8\xe2\x80\x1d\xf7\x01\xe0\xd0\xe2\xbe\x71\xad\x55\xa1\x1e\xb4\xa1\x98\x9d\xaf\x1a"
+"\xbe\x64\xa9\x48\x4a\x5b\x6e\x4d\x67\x1e\x0e\xf7\x8f\xf8\xa1\xf7\x94\x15\x4a\x6b\x67\x71\x53\x1b\x3c\x5f\xcb\xf7\x07\xf7\x06\xb7"
+"\xca\xda\xc4\xac\x70\x4d\x9c\x1f\x9e\xd3\x06\x95\x85\x90\x7b\x91\x1e\x99\x64\x70\x90\x66\x1b\xfb\x1e\x33\x3b\xfb\x11\xfb\x0d\xde"
+"\x3f\xf7\x17\xa9\xa7\x8f\x95\xb0\x1f\x90\x8d\x92\x8c\x8b\x1a\x9e\x8f\x97\x94\x95\x1a\x9b\xd5\x05\xfb\x3e\xf8\x47\x60\x0a\x26\x0a"
+"\xfb\x0e\xf8\x8a\x22\x1d\xac\x9f\x92\x95\xa2\x1a\xa5\x78\x9d\x6e\x77\x7a\x82\x78\x7b\x1e\x0e\x26\x0a\xd2\xf8\x8a\x20\x0a\x26\x0a"
+"\xfb\x27\xf9\x15\x41\x0a\xa7\xaf\x4a\x0a\x26\x0a\xbd\xf8\x8a\x28\x1d\x8d\x1d\x99\xb2\xf0\x1e\xf7\x75\x06\xad\x3c\x97\x68\x7d\x1d"
+"\x61\xf9\x5c\x15\x51\x5a\x5a\x53\x4e\xba\x5c\xc6\xc7\xba\xba\xc6\xc5\x5b\xbc\x44\x1d\x6f\x6b\x6c\x70\x71\x6b\x6b\x4c\x0a\x0e\x26"
+"\x0a\xfb\x42\xf8\x9f\x15\xa7\x8f\x9f\x9e\xa5\x1b\x98\x93\x88\x78\xb5\x1f\xa8\x7e\x05\x83\x9e\xa5\x85\x9e\x1b\xc5\xaf\xb2\xe3\xa2"
+"\x1f\x60\x06\x67\x7f\x7d\x7e\x70\x1b\x7f\x88\x8c\x96\x72\x47\x0a\x4e\x66\x64\x35\x79\x1f\x0e\xf8\x25\x78\x15\xf7\x09\x8c\xd6\xb1"
+"\xe9\xf6\x6d\xa4\x18\x7c\x0a\xb5\x79\x65\xb7\x1e\xb6\x65\xa3\x68\xad\x40\x37\x0a\x52\x5a\x96\x5b\x1b\xfb\x5c\xfb\x29\xfb\x2d\xfb"
+"\x62\xfb\x50\xf7\x11\xfb\x22\xf7\x4a\x79\x1f\x8e\x8a\x68\x3c\x96\x83\x05\x8e\x96\x93\x8c\x94\x73\x0a\xf7\x3f\x24\x0a\xf7\x7b\xc9"
+"\x15\xc3\x06\xf7\x22\xe3\x05\xaa\x3c\x1d\x7b\x1e\x0e\xf7\x3f\x24\x0a\xf8\x3b\xc9\x15\xc4\x06\xfb\x10\xf7\x44\x05\x30\xea\x1d\xed"
+"\x05\x0e\xf7\x3f\x24\x0a\xf7\x62\xf7\x5d\x33\x0a\xf7\x3f\x24\x0a\xf8\x1b\xc9\x15\xfb\x1d\x42\x0a\x20\x27\x0a\xfb\x94\x83\x0a\x20"
+"\x27\x0a\x4b\xf9\x76\x20\x0a\x20\x27\x0a\xfb\xad\xfa\x01\x33\x0a\x20\x27\x0a\x25\xf9\x76\x28\x1d\x30\x1d\xf7\x5a\xf9\x72\x92\x1d"
+"\x7f\x88\x8c\x96\x73\x1f\x63\x9d\x05\x98\x6e\x74\xbd\x0a\xf7\xae\x26\x1d\x31\xdb\x32\x1d\xf7\xae\x26\x1d\xf1\xdb\x20\x0a\xf7\xae"
+"\x26\x1d\xfb\x07\xf7\x6f\x33\x0a\xf7\xae\x26\x1d\xd1\xdb\x28\x1d\xf7\xae\x26\x1d\xfb\x2a\xf0\x92\x1d\x80\x87\x8c\x96\x73\x47\x0a"
+"\x4d\x50\x0a\xc7\x33\x1d\x82\xf8\x4b\x21\x0a\x24\x1d\xfc\x1c\xe2\x22\x1d\xab\x3c\x1d\x7a\x1e\x0e\x24\x1d\xfb\x5c\xe2\x20\x0a\x24"
+"\x1d\xfc\x3c\xf7\x76\x41\x0a\xa7\xaf\x4a\x0a\x24\x1d\xfb\x93\xe2\x28\x1d\x2c\x0a\xfc\x16\xe2\x85\x0a\x2c\x0a\xfc\x33\xf7\x76\x33"
+"\x0a\xf7\x3f\x37\x1d\x22\xfa\x26\x21\x0a\x8f\x23\x1d\xfb\x1f\xf7\xaf\x43\x0a\xa5\x78\x9d\x6e\x77\x7b\x45\x1d\x8f\x23\x1d\xd0\xf7"
+"\xaf\x20\x0a\x8f\x23\x1d\xfb\x2e\xf8\x3a\x28\x0a\x8f\x23\x1d\xaf\xf7\xaf\x15\xfb\x1c\x42\x0a\x8f\x23\x1d\x56\xf8\x8d\x38\x1d\x8f"
+"\x23\x1d\xfb\x4b\xf7\xc4\x15\xa7\x8e\x9f\x9e\xa4\x1b\x99\x91\x89\x77\xb8\x1f\xa8\x7e\x05\x83\x9d\xa5\x85\x9f\x1b\xc3\xb1\xb3\xe2"
+"\xa2\x4c\x1d\x57\xf7\x9d\x7e\x15\xd0\x95\xbc\xaa\xba\xca\x79\x9d\x18\x5a\x0a\xfb\x18\xd9\x2e\xf7\x0b\x80\x1f\x66\x38\x96\x83\x05"
+"\x8e\x96\x92\x8c\x95\x73\x0a\x57\x25\x1d\xfb\x1f\xf7\x8a\x4f\x1d\x57\x25\x1d\xbd\xf7\x8a\x20\x0a\x57\x25\x1d\xfb\x42\xf8\x15\x28"
+"\x0a\x57\x25\x1d\x99\xf7\x8a\x28\x1d\xfb\x6e\x29\x1d\xfb\x5f\xf8\xa4\x32\x1d\xfb\x6e\x29\x1d\x80\xf8\xa4\x20\x0a\xfb\x6e\x29\x1d"
+"\xfb\x78\xf9\x2f\x15\x6a\x6d\x6d\x69\x67\xa8\x6d\xad\x4d\x1d\xfb\x6e\x29\x1d\x60\xf8\xa4\x28\x1d\xc7\x2d\x0a\xfc\x25\xf8\xb9\xaf"
+"\x1d\xc4\xaf\xb3\xe2\xa3\x4c\x1d\x8f\x27\x1d\x39\xe1\x22\x1d\xaa\x3c\x1d\x7b\x1e\x0e\x8f\x27\x1d\xf7\x02\xe1\x20\x0a\x8f\x27\x1d"
+"\x20\xf7\x75\x15\x6a\x6d\x6d\x69\x67\xa7\x6d\xae\x4d\x1d\x8f\x27\x1d\xd8\xe1\x15\xfb\x1c\x42\x0a\x8f\x27\x1d\xfb\x22\xf6\xaf\x1d"
+"\xc3\xb1\xb3\xe2\xa2\x4c\x1d\x20\x2f\x1d\xbb\xf8\x0e\x21\x0a\xc7\x23\x0a\xfb\xf4\xf8\x90\x4f\x1d\xc7\x23\x0a\xfb\x2b\xf8\x90\x20"
+"\x0a\xc7\x23\x0a\xfc\x0e\xf9\x1b\x28\x0a\xc7\x23\x0a\xfb\x47\xf8\x90\x28\x1d\x8f\x2a\x0a\xfb\xca\xe6\x38\x0a\x8f\x2a\x0a\xfb\xd4"
+"\xf7\x7a\x28\x0a\x57\x2e\x0a\x88\xf9\x54\x21\x0a\x3b\xf7\xf9\xf7\xbc\x15\x74\x8c\x85\x91\xa2\x1a\xf7\x28\x07\xc0\x6a\xad\x59\x6a"
+"\x73\x7e\x6d\x73\x1e\xaf\xfb\x0b\x77\x07\xa6\x87\x8e\x87\x8c\x73\x08\xfb\x42\x07\x8a\x73\x88\x87\x70\x86\x08\x77\xf7\x29\x9f\x07"
+"\x75\x8e\x84\x92\xa0\x1a\xf7\x32\x07\x8c\x07\x90\x90\x05\x9c\x98\x99\x93\x9a\x1b\x9d\x94\x7c\x6c\x1f\xfb\x23\x07\x8a\x75\x85\x84"
+"\x77\x89\x08\x77\xf7\x25\x07\x0e\xf7\x1c\xf7\x81\xf8\x35\x15\xf2\xfb\xe1\x06\x8a\x5f\x82\x7f\x66\x87\x08\x73\xf7\xa0\xa3\x07\x46"
+"\x8d\x7f\x96\x8a\xcd\x08\xf7\xce\xe2\xb7\x34\x39\x1d\xb0\xa4\xa4\xb0\xc6\x51\xb4\x36\x58\x61\x7d\x71\x6d\x1e\xa4\x73\x5f\x9a\x59"
+"\x1b\x47\x57\x73\x5f\x70\x1f\x9a\x0a\x73\xf7\x87\xa3\x07\x63\x8d\x85\x96\x8a\xcd\x08\xf7\xfa\x04\xf7\x0e\x07\xc2\x99\xa1\xaf\x9d"
+"\x96\x84\x7f\x86\x88\xbe\x0a\x70\x9e\x76\xa8\x85\x1e\x8a\x7a\x8a\x7b\x67\x1a\x0e\xf7\xfc\xa6\xf8\x61\x15\x5f\xc4\xfb\xe1\x07\xbb"
+"\x1d\xf7\xce\xf7\x1e\xfb\xe1\x07\x8a\x5f\x83\x80\x65\x86\x08\x73\xf7\x7d\x3a\x0a\xf3\x07\xa5\x8a\x93\x84\x71\x1a\xfb\xc2\x07\x8c"
+"\x65\x7e\x7c\x68\x87\x08\x73\xf7\x7f\xa3\x07\x68\x8c\x7d\x9a\xb4\x1a\xf8\x1c\x07\x39\x83\x48\x86\x75\x83\x1d\x32\x50\x73\x56\x65"
+"\x1e\xbb\x7c\x57\xa8\x42\x1b\x48\x57\x73\x5f\x70\x1f\x76\x68\x83\x62\x35\x1a\xf7\x1f\x16\x39\x1d\x95\x90\x8c\x8f\x97\x1e\x88\x7b"
+"\x8a\x7f\x89\x5e\x08\x0e\xf7\xfc\xa5\xf8\x61\x15\x5f\xc4\xfb\xe1\x07\xbb\x1d\xf7\xce\xf7\x1e\xfb\xe1\x07\x8a\x5f\x83\x80\x65\x86"
+"\x08\x73\xf7\x7d\x3a\x0a\xf7\x1e\xfb\xe4\x07\x68\x80\x7a\x6f\x87\x1e\x83\x8a\x05\x73\xf7\x7f\xa3\x07\x7f\x8c\x05\x72\x8d\x7f\x9e"
+"\xae\x1a\xf8\xf5\x78\x07\x5c\x6d\x05\xa1\x55\x61\x94\x55\x1b\x40\x55\x73\x5a\x69\x1f\xbb\x77\x5b\xa4\x44\x1b\x48\x57\x73\x5f\x70"
+"\x1f\x76\x68\x83\x62\x35\x1a\xf7\x1f\x16\x39\x1d\x95\x90\x8c\x8f\x97\x1e\x88\x76\x8a\x7e\x89\x64\x08\xf7\xa9\x16\xfb\x1e\xc9\x06"
+"\xf1\xa0\xac\xce\xa5\x9b\x83\x7e\x87\x89\x85\x88\x84\x1e\x85\x80\x89\x83\x84\x1a\x7b\x94\x7c\x97\x87\x1e\x0e\xf7\x92\xf7\x57\xf9"
+"\x47\x15\x7c\x06\xfb\x26\x48\x94\x77\x05\x95\x9c\x94\x8e\x94\x1b\x9b\x92\x7f\x71\x1f\xfb\x8f\x07\x8c\x6a\x84\x82\x6d\x89\x08\x73"
+"\x78\xf7\x63\x9e\x7a\x06\x6e\x8d\x83\x94\x8c\xac\x08\x35\xfb\xdc\xc0\x0a\xf3\xab\x1d\x56\x6c\x7a\x71\x5c\x1a\x4a\xbd\x5f\xd7\xd3"
+"\xbe\xbe\xd3\xb7\x7b\xa9\x5a\xb7\x1e\x6c\xa3\x15\x5c\xae\x79\xa4\xab\x1a\xa4\x9e\xa0\xa1\xa4\x9b\x71\x62\x72\x85\x73\x80\x75\x1e"
+"\x57\x41\x15\xb8\x45\x0a\xbe\xb6\x8f\x9b\x9f\xa7\x1e\x0e\xf7\x92\xb4\xf8\xda\x15\xad\x9c\x9d\x97\xa9\x1b\xae\xa2\x72\x64\x63\x6e"
+"\x6f\x5c\x86\x1f\x78\x07\xd1\x79\xb1\x63\x53\x1a\x64\x76\x71\x6c\x7a\x78\x94\x9b\x7a\x1e\x9f\x75\x83\x8f\x7b\x1b\x7a\x7d\x7d\x79"
+"\x6c\xad\x77\xc0\xec\xce\xc9\xe4\xbc\x75\xb1\x62\xa0\x1f\xa9\xa1\x99\xa5\xad\x1a\xbf\x64\xaf\x53\x6b\x6a\x7f\x77\x75\x1e\x78\x7a"
+"\x82\x7c\x7f\x66\x08\xe0\xfc\xdf\xc0\x0a\xf4\xab\x1d\x57\x6d\x79\x70\x5c\x1a\x4a\xbd\x5f\xd7\xd3\xbe\xbe\xd3\xb8\x7b\xa7\x5a\xb8"
+"\x1e\x6b\xa3\x15\x5c\xae\x79\xa4\xaa\x1a\xa5\x9d\xa0\xa2\xa5\x9b\x71\x61\x73\x85\x73\x7f\x75\x1e\x57\x41\x15\xb9\x45\x0a\xbd\xb7"
+"\x8f\x9b\x9e\xa7\x1e\x0e\xf7\x92\xe2\xf8\xec\x15\xf7\x26\x06\xac\xdd\x05\xfb\x4c\x06\x45\xfb\x66\xcb\x8a\xa8\x87\xa5\x80\x19\xba"
+"\x78\xa4\x6b\x62\x1a\x67\x76\x70\x6e\x7b\x7c\x92\xa1\x67\x1e\x97\x78\x83\x8e\x80\x1b\x77\x7c\x7d\x78\x6c\xb2\x75\xc2\xe3\xcc\xcc"
+"\xe4\xe6\x43\xc6\xfb\x05\x8c\x1f\xad\xfc\xc8\x15\xc9\x06\xf8\x5d\xf9\x2a\x05\x4d\x06\xf4\xfc\x3f\x15\xb5\xa6\x9c\xa6\xb2\x1a\xc2"
+"\x5b\xb3\x4a\x46\x57\x5e\x4f\x62\x9d\x6a\xb6\x66\x1e\x56\x6c\x7a\x71\xde\x1d\xa8\x5a\xb7\x1e\x6b\xa3\x15\x5d\xae\x79\xa4\xaa\x1a"
+"\xa5\x9e\xa0\xa1\xa4\x9b\x71\x62\x72\x85\x72\x7f\x76\x1e\x57\x41\x15\xb9\x68\x9e\x6b\x64\x1a\x69\x7b\x76\x71\x6b\x7d\xa2\xbe\xb6"
+"\x8f\x9b\x9e\xa7\x1e\x0e\xf7\x92\xf7\x54\xf8\xea\x15\x29\xfb\xe8\x05\xbf\x06\xf7\x10\xf8\x3c\x05\xfb\x7c\x06\x6f\xfb\x12\x05\x9f"
+"\x06\xaa\x95\xa0\x96\xbb\x1b\xfc\xea\x04\xc9\x06\xf8\x5d\xf9\x2a\x05\x4d\x06\xf4\xfc\x3f\x15\xb5\xa6\x9c\xa7\xb1\x1a\xc2\x5b\xb3"
+"\x4a\x46\x57\x5e\x4f\x61\x9d\x6a\xb6\x67\x1e\x57\x6c\x79\x71\xde\x1d\xa7\x5a\xb8\x1e\x6c\xa3\x15\x5a\xaf\x7a\xa3\xab\x1a\xa4\x9e"
+"\xa0\xa1\xa5\x9b\x72\x61\x71\x85\x73\x80\x76\x1e\x56\x41\x15\xb9\x45\x0a\xbd\xb7\x8f\x9b\x9e\xa7\x1e\x0e\xf8\x8c\xd0\x1d\x58\x68"
+"\x67\x08\x61\x64\x50\x78\x36\x1b\x4f\x7b\x96\xb6\x1f\xf7\x87\x07\xf7\x03\x84\xa6\x71\x9c\xb9\x1d\x98\x8d\x90\x92\x8e\x1e\x90\x95"
+"\xa5\x8f\xa6\x1b\xe3\xc7\x79\x69\xa7\x1f\xa0\x71\x95\x73\x98\x4b\xa4\x0a\x83\x78\x77\x6a\x1e\x8a\x8a\x88\x85\x88\x85\x6b\x0a\x7b"
+"\x42\x88\x08\x3b\xf7\xd2\x15\xf7\x35\xf7\xb6\x05\x92\xfb\xb6\x06\xb8\xf8\x25\xc3\x1d\x7a\x82\x78\x7b\x1e\x0e\x26\x0a\xd0\xf9\x2d"
+"\x15\x4b\x79\x6e\x74\x7b\x0a\x91\xbe\x08\x0e\x5d\x0a\x78\x1d\x5c\xf7\x6c\x15\x8d\x95\x91\xae\x05\x9d\xe0\x8c\x8f\x9f\x1a\xaa\x77"
+"\xa1\x6f\x70\x76\x75\x6d\x7e\x8e\x75\x8f\x77\x1e\x93\x64\x90\x74\x8c\x84\x8d\x82\x8c\x85\x8e\x7b\x08\x0e\x26\x0a\xf7\x22\xf8\xf7"
+"\x22\x0a\x5f\x0a\xf7\xa3\x07\x69\x5d\x82\x76\x0a\xfc\x88\xf7\x80\x15\xe9\xf7\x87\xf0\xfb\x87\x05\x0e\x8d\x1d\x9a\xb2\xef\x1e\xf7"
+"\x75\x06\xac\x3e\x98\x66\x7d\x1d\x63\xf9\x3a\x15\x51\x5a\x5b\x52\x4f\xba\x5b\xc6\xc6\xbb\xba\xc6\xc6\x5b\xbb\x44\x1d\x6f\x6b\x6c"
+"\x70\x71\x6a\x6c\x4c\x0a\x24\xbc\x15\xc3\x06\xf7\x22\xc9\x05\xac\x99\x92\x91\x9c\x1a\x9d\x78\x97\x6e\x78\x79\x85\x7e\x7b\x1e\x0e"
+"\xf7\x3f\xa2\x1d\xf7\xec\x06\xc5\xc9\x9e\xaa\xb4\x1f\xaf\xa7\xa0\xb7\xc0\x1a\xbe\x77\xb3\x63\xab\x1e\x72\x9f\x78\x93\x46\x9e\x7a"
+"\x1d\x47\x1d\xfc\x02\xf8\xf7\x85\x0a\x47\x1d\xfb\x0a\xf9\xa7\x93\x0a\xf7\x85\xf9\x25\xf7\x2c\x59\x0a\xfb\x0b\xf8\xf7\x15\xfb\x0f"
+"\xa3\x1d\xee\xf7\x04\x28\x05\x0e\xf7\x85\xf8\x26\xfa\x00\x15\x64\x6b\x6c\x65\x64\xaa\x6c\xb2\xb1\xaa\xaa\xb2\xb0\x6c\xab\x66\x1f"
+"\xf7\x93\xfd\x68\x59\x0a\x0e\x6a\x1d\x5e\x0a\xf7\xa3\xf9\xc9\x21\x0a\x57\x0a\xf7\x3f\xac\x16\xf8\xee\x06\xfb\xad\xf9\x44\x05\xfb"
+"\x6b\xfc\xe6\x15\xf7\x40\xf8\x09\xf7\x2f\xfc\x09\x05\x0e\xf7\x3f\x24\x0a\xf8\x38\xf7\x75\x15\x4b\x7a\x6e\x74\x4d\x1b\x4b\x6c\xa5"
+"\xc8\x7f\x1f\x5f\x06\x8e\xb7\x0a\xae\x0a\x93\xa4\x90\xbe\x08\x0e\xf7\x3f\x24\x0a\xf8\x7a\xf7\x82\x21\x0a\xf7\x3f\x24\x0a\xf7\xd0"
+"\xf7\x5d\x2a\x1d\xf7\x3f\x24\x0a\xf8\x76\xf7\x3f\x22\x0a\xf8\x91\xea\x15\x8f\xfb\x14\x05\x83\x07\x40\x8f\x68\x53\x5a\x1b\x7a\x7e"
+"\x92\x95\x90\x8e\x92\x91\x95\x1f\x95\x9b\x8f\x95\x96\x1a\xa9\x71\xa3\x6a\x66\x72\x72\x67\x50\xc5\x62\xdd\xd0\xc3\xa7\xbb\xa5\x1e"
+"\x9c\xab\x96\xbc\xb4\x1a\x8a\xf8\xd4\x05\xc4\x98\x99\xcc\x94\x1e\xa4\xfb\x6b\x72\x07\xd4\x84\x9f\x76\x44\x1a\xfb\xc5\x07\xfb\xf1"
+"\xf8\x41\x05\xfb\x67\x72\x06\x9f\x9c\x7c\x52\xbb\x1f\xfc\x6e\x07\x8a\x50\x7b\x7e\x44\x83\x08\x72\xf7\x77\xa4\x07\x3f\x93\x79\x9e"
+"\x8a\xd3\x08\xf8\x26\x07\x0e\xf7\x3f\xf8\x5a\xf8\x94\x15\x71\x06\x7c\xfb\x06\x64\x67\xfb\x00\x8c\x08\xf7\x7c\x07\xb1\x98\x94\xbf"
+"\xf7\x37\xbc\x69\xfb\x19\xa4\x1e\xa4\xf7\x5d\xfc\xd5\x72\x06\xce\x88\x9e\x7b\x8d\x57\x08\xfc\x78\x07\x89\x56\x7d\x7f\x43\x85\x08"
+"\x72\xf8\xab\x07\x69\x5d\x82\x79\x6f\x1a\x5c\xb7\x69\xc9\x92\x0a\x65\x72\xa1\xae\x96\x8b\x8b\x9a\xd0\x1f\xad\xf7\x43\x05\x6f\x06"
+"\x6c\x48\x77\x6f\x67\x6e\x08\x66\x5d\x55\x7b\x3e\x1b\x4a\x79\x98\xb6\x1f\xf7\x86\x07\xf7\x01\xb4\x64\xfb\x08\x97\x1f\xa5\x06\x0e"
+"\xf7\x3f\x73\x1d\x0e\xf7\xc3\xf4\xf8\x65\x68\x1d\xdf\x8c\x90\xa0\x1a\xa9\x77\xa1\x6f\x70\x76\x75\x6d\x7e\x8e\x76\x8f\x76\x1e\x93"
+"\x65\x92\x6a\x90\x6e\x08\xf7\xe4\xfb\x26\x15\xa6\x06\xb6\xa5\x77\x5a\xa0\x1f\x94\x75\x8e\x88\x0a\xc0\x58\x94\x53\x1d\xac\xf7\x5f"
+"\x05\x71\x06\x75\xfb\x03\x44\x53\xfb\x0a\x8c\x08\x65\x06\x5e\x7c\x9c\xc1\x8d\x1f\x0e\xf7\xae\x55\x0a\xf8\x31\xed\x35\x0a\xf7\xe0"
+"\xfb\x27\x15\xf7\x95\xfb\x72\x06\x25\x0a\xf7\xd0\x9f\x58\x1d\x9f\xfb\xd0\x77\x9e\x06\xbf\x89\x9b\x78\x89\x51\x08\xfb\x61\xfb\x95"
+"\xf7\x61\x07\x89\xc6\x9a\x9d\xc0\x8d\x08\x9e\x9f\xfb\xd0\x77\x9e\x06\xc0\x89\x9a\xa2\x0a\xf7\xd0\x9f\x78\x20\x1d\x0e\x8f\xae\xf7"
+"\x7f\x15\xfb\x3d\xa7\xe2\x31\xf7\x1d\x1b\xd4\xc6\xa6\xc6\xbf\x1f\xbf\x07\x4b\x6a\x4a\x5e\x4f\x1b\x42\x5c\xde\xf7\x27\x7f\x1f\xe7"
+"\x06\xa8\xbd\x05\xfb\x10\xb0\x06\x9b\xf7\x39\x07\xa8\xbd\x05\xfb\x55\x06\xf7\x3d\x99\xb4\xd9\xd7\x1b\xb5\xb5\x71\x5f\xa7\x1f\x9f"
+"\x6d\x95\x69\x92\x56\x08\x9e\xf7\x73\x78\x06\x6d\x87\x7f\x7b\x7a\x1b\x83\x83\x8d\x8f\x84\x1f\xa8\x57\x78\x91\x63\x1b\x31\x38\x50"
+"\x28\x5b\x1f\x78\x63\x83\x71\x81\x55\x08\x61\x06\x6f\x59\x05\xcd\x71\x06\x70\x65\x07\x6f\x59\x05\x0e\xf7\x20\x97\xf9\x2a\x15\x75"
+"\x07\xd0\x86\x97\x7a\x89\x34\x08\xfc\x24\x07\x8d\x34\x7f\x7b\x46\x85\x08\x75\xf7\xd0\xa1\x07\x45\x91\x7f\x9b\x8d\xe2\x08\xf8\x31"
+"\x07\xcb\xa3\xa1\xd0\xce\xc0\x7a\x6a\xb0\x1e\xaa\x6f\xa0\x6a\xae\x3c\x08\xa5\x06\x64\xf7\x72\x05\x0e\xf7\xae\x3d\x0a\xfb\x96\xf9"
+"\x13\x15\x4b\x79\x6e\x74\xb4\x1d\xc1\x1b\xc2\xac\x0a\xf7\xbe\xf9\x87\xf7\xb3\x6d\x1d\xfb\x89\xf8\x70\x20\x0a\xf7\xae\x3d\x0a\xfc"
+"\x45\xfc\xef\x15\xf3\xc6\xb8\xc6\xd9\x1a\xca\x67\xb5\x55\x5e\x6e\x6e\x5e\x60\xa5\x6f\xb3\x8f\x90\x8b\x8c\x90\x1e\x8c\x8d\x8e\x8b"
+"\x8c\x1b\x95\x92\x83\x80\x67\x6d\x66\x48\x5c\x1f\x0e\xf7\xbe\xf8\x27\xfa\x04\x9d\x0a\xf7\xf3\xfc\xe5\x6d\x1d\x0e\xf7\xae\xf5\xf8"
+"\x71\x15\xfc\x11\x07\x8a\x59\x7b\x7e\x47\x83\x43\x1d\x44\x92\x79\x99\x8a\xbd\x46\x0a\x8a\x59\x79\x7d\x44\x84\x08\x72\xf7\xe7\xa4"
+"\x07\x46\x93\x7a\x98\x8a\xbd\x08\xf8\x11\xdf\xb3\x37\xca\x07\x8c\xbe\xa0\x9c\xcc\x8e\x08\xa4\xfb\xe7\x72\x07\xce\x88\xa1\x7b\x8c"
+"\x57\x08\x4c\xfb\x85\xca\x07\x8c\xbf\xa0\x9b\xa3\x0a\x87\x9e\x7b\x8c\x58\x08\x4c\x32\x63\x07\xf7\x8f\x16\xf7\x85\x23\xfb\x85\x06"
+"\x0e\xf7\xbe\xf9\x8c\x90\x1d\xbf\xa0\x9b\xa3\x0a\x86\x9e\x7c\x8c\x58\x08\xfc\x78\x07\x8a\x59\x7b\x7e\x47\x83\x43\x1d\x44\x92\x79"
+"\x98\x8a\xbe\x46\x0a\x89\x58\x7a\x7e\x44\x84\x08\x72\xf7\xe8\x07\xfb\x93\xf9\x76\x20\x0a\xf8\x1d\xf8\x06\xa0\x15\x78\x06\x56\x8d"
+"\x7c\x9d\x8d\xc4\x08\xf8\x72\x07\x89\xc7\x9a\x9d\xc0\x8e\x08\x9e\x9f\xfb\xd0\x77\x9e\x06\xc0\x88\x9a\x79\x89\x4f\x08\xfc\x72\x07"
+"\x8d\x52\x7c\x79\x56\x89\x08\x78\x76\xf7\xd0\x06\xf7\x18\xf9\x25\x15\xac\x06\xc0\x88\x9a\x79\x89\x4e\x08\xfc\x51\x07\x46\x76\x6c"
+"\x5e\x6d\x75\x98\x9c\x90\x8c\x8f\x8d\x8d\x1e\x9f\xa7\x8e\x92\x9f\x1a\xaf\x6b\xab\x66\x65\x6c\x66\x5e\x43\xd8\x52\xed\xd2\xce\xa9"
+"\xbc\xaf\x1e\xa3\xac\x92\xa8\xd3\x1a\xf8\x0f\x07\x89\xc7\x9a\x9e\xc0\x8e\x08\x9b\x9f\xfb\xdf\x06\x0e\x20\x27\x0a\x47\xfa\x19\x15"
+"\x4c\x7b\x6d\x73\x4d\x1b\x4c\x6b\xa5\xc8\x80\x1f\x5e\x06\x8e\xb7\x0a\xcf\x1d\x90\xbe\x08\x0e\x20\x27\x0a\xfb\x45\xfa\x01\x2a\x1d"
+"\x20\x27\x0a\x80\xf9\xe3\x22\x0a\x20\x86\x1d\xf7\xbf\x07\x68\x5d\x83\x9a\x1d\xb5\x9d\x8e\x96\x92\x96\x1f\x0e\x20\xf7\xf2\x67\x0a"
+"\x20\xf7\xf8\x9f\x49\x1d\xfb\x97\xf9\xef\x9d\x0a\xf7\x61\x16\x63\x4e\x0a\xb2\xaa\xaa\xb1\xb1\x6c\xab\x66\x1f\x0e\xa5\xe9\x35\x0a"
+"\xf8\x38\xfc\x51\x49\x1d\x0e\x20\xf8\x06\xa4\x15\x41\x8f\x77\x9a\x8a\xbf\xa1\x1d\x8a\x58\x78\x7c\x42\x86\x08\x72\xf7\xf2\x07\xfb"
+"\xce\xf9\x80\x15\xa7\x8e\x9f\x9e\xa5\x1b\x98\x94\x88\x78\xb5\x1f\xa8\x7e\x05\x83\x9d\xa6\xb8\x0a\x66\x7e\x7d\x7f\x70\x1b\x7f\x49"
+"\x0a\x6f\x72\x91\x77\x1b\x4d\x50\x0a\x99\xf8\x74\xf9\x38\x15\xfb\xf4\x72\x06\xda\x89\x9f\x7d\x8d\x54\x08\xfc\xc0\x07\x4d\x79\x72"
+"\x5d\x6f\x7a\x97\x9f\x94\x8e\x90\x94\x96\x1e\x97\x9a\x8e\x93\x9b\x1a\xb3\x69\xae\x64\x66\x6a\x69\x65\x62\xa7\x5e\xb2\x74\x1e\x7d"
+"\xa4\xb3\x82\xb3\x1b\xf7\x21\xd5\xd6\xf7\x24\xe4\x1d\x49\xf3\x20\x0a\xf7\xae\xf7\xce\x6b\x1d\x0e\xf7\xae\x52\x0a\xfc\x53\xfb\xe9"
+"\x15\xf4\x36\x0a\x94\x93\x83\x80\x67\x6d\x66\x47\x5c\x1f\x0e\xf7\x3f\x31\x1d\xfb\xec\xf9\x76\xc2\x1d\x7b\x45\x1d\xf7\x71\xf7\xc3"
+"\xf8\x57\x15\xf7\x27\xfb\xf4\x05\x95\x73\x8d\x83\x81\x1a\x71\x79\x80\x60\x1e\x72\x77\xf7\xc2\x9f\x82\x06\x73\x8d\x84\x91\x7b\xaf"
+"\xfb\x95\xf8\xf0\x18\x6f\x06\xfb\x61\xfc\xb8\x76\x4a\x6d\x6a\x64\x89\x19\x77\xf7\x65\x9f\x75\x07\x68\x70\x9e\xa3\x94\x8f\x99\x92"
+"\x9f\x1f\x0e\xf7\x3f\x31\x1d\xfb\x2a\xf8\x1a\x15\xf3\x36\x0a\x94\x93\x82\x81\x68\x6d\x66\x47\x5b\x1f\x0e\xf7\x3f\x31\x1d\xfb\xde"
+"\xfb\xe9\x15\xf3\xb3\x0a\x5e\x60\xa5\x6f\xb4\x8e\x90\x8b\x8c\x90\x1e\x8c\x8e\x8e\x8b\x8c\x1b\x95\x92\x83\x80\x67\x6c\x66\x48\x5c"
+"\x1f\x0e\xf7\x3f\x31\x1d\xfb\x1f\x91\x0a\xf8\x54\x72\x1d\x30\x1d\xf7\x9d\xf9\x5d\x2b\x1d\x30\x1d\xf8\x96\xfa\x0d\x21\x0a\x30\x1d"
+"\xf7\xaa\xfc\x02\x15\xf4\xb3\x0a\x5f\x5f\xa5\x6f\xb3\x8f\x90\x8b\x8c\x90\x1e\x8c\x8e\x8e\x8b\x8c\x1b\x95\x92\x83\x80\x67\x6d\x67"
+"\x47\x5b\x1f\x0e\xf7\x21\xf8\xb5\x15\xf8\x56\xfc\xb5\x05\xa0\xf8\xc8\x06\x88\xc5\x9a\x9c\xbe\x8e\x08\x9c\x9f\xfb\x5d\x77\x9e\x06"
+"\xbf\x89\x9a\x79\x8a\x51\x08\xfb\xdc\x07\xfb\xf1\xf8\x3e\x05\xfb\x63\x77\x06\xa4\x98\x84\x6f\xa4\x1f\xa1\x70\x05\xfc\x78\x07\x25"
+"\x0a\xf7\x61\x9f\x79\x20\x1d\x0e\xf7\xae\x26\x1d\xf3\xf7\x87\x15\x4c\x7b\x6d\x73\x7b\x0a\x90\xbe\x08\x0e\xf7\xae\x26\x1d\xfb\x4a"
+"\xdb\x70\x0a\xca\xfb\x31\x15\xc3\x06\xf7\x21\xe3\x05\xad\xa0\x92\x94\xa2\x1a\xa6\x78\x9c\x6e\x77\x7a\x82\x78\x7b\x1e\x0e\xf7\xae"
+"\x26\x1d\xf7\x36\xf7\x51\x22\x0a\xf7\xc5\xcb\x35\x0a\xf9\x6e\xfc\x65\x15\xab\xf7\x4f\x05\x71\x06\x4e\x7c\x76\x79\x51\x1b\xfb\x1c"
+"\x06\xde\xa8\xb2\xa3\xb6\xba\x08\xb8\xbd\xa4\xca\xcc\x1a\xd5\x6b\xd6\x53\xc0\x1e\xc3\x50\x39\xa7\xfb\x01\x1b\x25\x38\x6f\x53\x51"
+"\x1f\x53\x57\x6b\x3f\x40\x1a\x45\xa7\x49\xbe\x58\x1e\xb4\x61\xaf\x76\xda\x70\x08\xfb\x1c\x06\x51\x76\x9d\xc8\x7c\x1f\x71\x06\xab"
+"\xfb\x4f\x05\xf7\xa4\xf5\x06\x68\xa1\x7a\x99\x7a\xa0\x08\x66\xba\x75\xdb\xe5\x1a\xf7\x3a\xcb\xe6\xf7\x08\xf7\x07\xcb\x2f\xfb\x39"
+"\x3c\x79\x40\x6f\x5e\x1e\x78\x6d\x77\x79\x60\x70\x08\x21\x07\x0e\xf7\xae\xf8\x17\x5c\x0a\xf7\xae\xcf\xf8\x65\x68\x1d\xdf\x8c\x90"
+"\xa0\x1a\xa9\x77\xa1\x6f\x70\x76\x75\x6d\x7e\x8e\x76\x8f\x76\x1e\x93\x65\x92\x6a\x90\x6e\x08\xf8\x24\xf7\x63\x15\x32\x49\x73\x54"
+"\x4a\x1f\x41\x4c\x66\x35\xfb\x05\x1a\xfb\x61\xf7\x1a\xfb\x1c\xf7\x5e\xf7\x58\xf7\x1c\xf7\x1e\xf7\x5d\xf4\x6e\xd9\x4d\xcb\x1e\xcc"
+"\x4b\x3c\xaa\x24\x1b\x8e\x68\x15\xf7\x00\xc7\xfb\x00\xfb\x54\x23\x79\x37\x67\x52\x1f\x62\x73\x5b\x70\x5e\x1b\x5c\x5d\xa7\xb9\x71"
+"\x1f\x6b\xc1\x7d\xd2\xf4\x1a\xf7\x0f\x9f\xd9\xba\xc4\x5f\x1d\xf7\xae\x84\x1d\x67\xcb\xbe\x7e\xd2\x1b\xf7\x64\xf7\x27\xf7\x27\xf7"
+"\x64\xcf\x7b\xcb\x6c\xc2\x1f\x75\xb1\x78\xa0\x5b\xb3\x08\xfc\x09\xfc\x6b\x15\x7a\xc7\x86\xb5\xd5\x1a\xf7\x69\x99\x1d\xc1\xf9\x14"
+"\xc2\x1d\x7a\x82\x78\x7b\x1e\x0e\xf7\xe1\xf7\xeb\x51\x0a\xf7\xae\xf9\x7f\xf9\x2a\x15\xfd\x62\x44\x0a\xf8\x53\x07\x89\xc6\x9a\x9d"
+"\xc0\x8d\x08\xf7\x11\x06\xc0\x89\x9a\x79\x89\x50\x08\xfc\x53\x96\x1d\x06\x0e\xf7\xb0\xf8\x5d\xf7\x70\x15\xf7\x2b\x8e\xeb\xf3\x8a"
+"\xf7\x33\x8e\xd8\x18\xb8\x8c\x95\x9f\xa0\x1b\x92\x91\x89\x86\x96\x1f\x93\x9f\x05\xa0\x64\x76\x92\x6c\x1b\x47\x5f\x5d\x40\x89\x1f"
+"\x87\xfb\x0d\x8c\x2c\x60\x45\x4d\x86\x19\xf7\xc6\x07\x88\xc5\x9b\x9e\xbf\x8d\x08\x94\x9f\xfb\xae\x77\x94\x06\xbf\x89\x9b\x78\x89"
+"\x51\x08\xfb\xc6\x07\x4e\x8f\x5f\xce\xe3\x1a\x88\xeb\x8a\xae\x87\xa9\x86\x9f\x19\xb6\x7e\x60\xa8\x57\x1b\x6c\x75\x84\x76\x68\x1f"
+"\x92\x77\x05\x91\x99\x90\x8c\x92\x1b\x96\x95\x83\x81\x8f\x1f\x8f\x7e\x8b\x87\x8d\x5c\x8d\x48\x18\x8d\xfb\x2e\xed\x24\xf7\x28\x89"
+"\x08\xfb\x10\x07\x8d\x53\x7b\x7a\x57\x88\x08\x78\x77\xf7\xc2\x9f\x78\x06\x57\x8e\x7b\x9c\x8e\xc3\x08\x0e\x34\x1d\x90\xf8\x1d\x15"
+"\xc3\x06\xf7\x22\x59\x1d\x34\x1d\xf7\x92\xf8\xcd\x21\x0a\x34\x1d\x9d\xfd\x42\x71\x0a\xf7\x07\x58\x0a\xc7\x33\x1d\xfb\x96\xf7\x9b"
+"\x2b\x1d\xc7\xf8\x78\xf9\x48\x15\x6d\x06\x70\x83\x85\x84\x79\x1b\x82\x7f\x8e\x92\x76\x1f\x9c\x5d\x6b\x91\x64\x1b\xfb\x1c\x38\x3e"
+"\xfb\x13\x34\xbf\x4c\xf7\x0b\x52\x1f\xce\x6b\x05\xe3\x61\xa3\x71\x56\x1a\x46\x5a\x5f\x3e\x50\x5a\xa4\xbc\x65\x1e\x70\xb0\x7d\xac"
+"\x7a\xd1\x08\x6e\xfb\x8b\xa8\x06\xa5\x91\x93\x93\x9b\x1b\x93\x97\x88\x84\xa0\x1f\xb6\x7c\xa7\x85\xaf\x89\x69\x3d\x18\x39\x0a\x7a"
+"\x80\x8e\x94\x71\x1f\x8a\x89\x8c\x8c\x89\x1f\x2f\x0a\x9f\xb9\xbe\x8e\xb4\x96\xad\x9e\x19\xca\xaf\xb2\xcf\xd4\x1a\xd6\x5e\xd6\x4a"
+"\xab\x1e\xfb\x27\xd4\x05\x3a\xb3\x75\xa4\xbb\x1a\xc9\xb5\xb1\xcf\xb8\xb5\x78\x66\xaf\x1e\xad\x68\x9b\x6e\x9f\x4a\x08\xa7\x06\x0e"
+"\xd3\xf8\x26\xf9\x76\x15\xc4\x06\xfb\x0f\xf7\x44\x05\x2f\x06\xfb\x0d\xfb\x44\x05\xc3\x06\xf7\x03\xed\x05\xf7\x56\xfb\xfd\x15\xf7"
+"\x6d\x6d\x07\x70\x83\x85\x84\x78\x1b\x82\x80\x8e\x92\x76\x1f\x9c\x5e\x6a\x91\x64\x1b\xfb\x1c\x38\x3e\xfb\x13\x34\xbf\x4c\xf7\x0b"
+"\x52\x1f\xce\x6b\x05\xe3\x61\xa3\x71\x57\x1a\x45\x5a\x5f\x3e\x50\x5a\xa4\xbc\x65\x1e\x70\xb0\x7d\xac\x7a\xd1\x08\x6e\xfb\x8b\xa8"
+"\x06\xa5\x91\x93\x93\x9b\x1b\x93\x96\x88\x84\xa1\x1f\x7a\xbc\xb0\x84\xb7\x1b\xf7\x28\xef\xe0\xf7\x12\xd6\x5d\xd6\x4b\xab\x1f\xfb"
+"\x27\xd4\x05\x3a\xb3\x75\xa4\xbb\x1a\xc9\xb5\xb1\xcf\xb9\xb4\x78\x66\xaf\x1e\xad\x68\x9a\x6e\xa0\x4a\x08\x0e\xc7\x33\x1d\xfb\x89"
+"\xfd\xc4\x8a\x1d\xf7\x32\xf8\xc4\xf9\x2a\x15\xfc\xa2\x06\xf7\x3a\xfb\xf3\xfb\x3a\xfb\xcb\x05\xf8\xa2\x06\xbb\xf7\x70\x05\x6d\x06"
+"\x56\xfb\x10\x47\x5d\xfb\x11\x8d\x08\xfb\x05\x06\xf7\x1e\xf7\xae\xfb\x24\xf7\xb4\x05\xf7\x01\x06\xf7\x1b\x8f\xcb\x5a\x94\xfb\x06"
+"\x08\xa9\x06\x0e\xf7\x3f\xf8\x30\xf9\x06\x15\xb6\x06\xdb\x8e\xbc\x58\x90\x30\x08\xa8\xf7\x43\xfc\xcf\xa5\x1d\xf7\xf1\x9f\x6e\x20"
+"\x1d\x0e\xf7\x3f\xf7\x91\xf7\xce\x15\xfb\x59\x07\x89\x3f\x80\x81\x37\x85\x08\x72\xf7\xf9\xa4\x07\x36\x8f\x80\x96\x89\xd8\x08\xf7"
+"\x59\xde\xba\x38\xf7\xaf\x95\x1d\xfb\xaf\x36\x5c\x07\x0e\xf7\x3f\x48\x1d\x80\xfa\x26\x21\x0a\xf7\x3f\xf8\x04\x16\xf7\x25\xa4\x06"
+"\x7e\x1d\xf7\x3e\x07\x60\x2b\x68\x0a\xf7\xae\xf7\xb1\xf8\x59\x15\xfb\x7d\xa9\x07\xb9\x8c\xa3\xa2\xbc\x1b\xbb\xa4\x74\x5d\x1f\xa9"
+"\xf7\x7d\x6d\x06\x5c\x86\x76\x77\x5c\x1b\x5b\x77\x9e\xbb\x85\x1f\xd6\xf7\x75\x15\x31\x2c\x65\x4f\x4d\x1f\x52\x53\x67\x2d\x2e\x1a"
+"\x23\xac\x33\xc7\x4e\x1e\x4f\xc7\xeb\x65\xe7\x1b\xdf\xe5\xad\xc2\xc5\x1f\xcd\xc8\xb0\xe8\xf2\x1a\xf2\x66\xe9\x49\xc7\x1e\xc3\x50"
+"\x33\xac\x35\x1b\x8a\x6a\x15\xf5\xcd\xfb\x0c\xfb\x55\xfb\x55\x49\xfb\x0c\x21\x22\x47\xf7\x10\xf7\x55\xe3\x9d\xdd\xac\xc7\x1f\xbe"
+"\xa7\xb6\xa7\xbe\x1b\x0e\x24\x1d\xfb\x69\xf7\x8e\x15\x4b\x7a\x6e\x74\xa6\x0a\x6f\x08\x67\xae\x0a\x93\xa4\x90\xbe\x08\x0e\x24\x1d"
+"\xfc\x9b\xe2\x70\x0a\xca\xfb\x31\x15\xc2\x06\xf7\x23\x59\x1d\x24\x1d\xfb\x43\xf7\x58\x15\xfb\xde\x43\xf7\xde\x06\x0e\xf9\x51\x95"
+"\x0a\xfb\x0b\x24\x75\x0a\xd5\x1b\xc5\xbe\x97\xa5\xba\x1f\x5d\x51\x80\x75\x6c\x1a\x5c\xb7\x69\xc9\xbd\xba\xa8\xb9\xa5\x1e\x75\x99"
+"\x86\x89\x8a\x8a\x82\x87\x19\x81\x77\x81\x88\x7c\x1b\x5f\x77\xa2\xbf\x9e\x95\xb2\x94\x9c\x1f\xb4\xd2\x98\xb9\x8d\xdf\x08\xf7\xd3"
+"\x07\x8c\xc7\x99\x9b\xca\x94\x08\x0e\xf8\x30\xf7\xcc\x15\xfb\x1a\xf7\xa3\x05\x80\xa1\x8a\x90\x92\x1a\x9b\x9b\x94\xa6\x1e\x9b\x9f"
+"\xfb\xb5\x77\x97\x06\xac\x87\xa1\x76\xa8\x4e\xf7\x30\xfb\xc2\x18\xfb\x32\x07\x8c\x31\x0a\x6e\x77\xf7\xe5\x9f\x6d\x06\x56\x8e\x7c"
+"\x9c\x8e\xc3\x08\xf7\x48\x07\xf7\x1a\xf7\xa6\xb1\xd6\x96\x96\xb9\x91\x19\x9f\xfb\x53\x77\x9f\x07\xab\xa0\x7b\x72\x7b\x85\x7a\x7b"
+"\x6a\x1f\x0e\xf8\x43\xf7\xcc\x15\xfb\x1a\xf7\xa3\x05\x80\xa1\x8a\x90\x92\x1a\x9b\x9b\x94\xa6\x1e\x9b\x9f\xfb\xb5\x77\x97\x06\xac"
+"\x87\xa1\xe9\x1d\x8c\x31\x0a\x6e\x77\xf7\xe5\x9f\x6d\x06\x56\x8e\x7c\x9c\x8e\xc3\x08\xf7\x48\x07\xf7\x1a\xf7\xa6\xb1\xd6\x96\x96"
+"\xb9\x91\x19\x9f\xfb\x53\x77\x9f\x07\xab\xa0\x7b\x72\x7b\x85\x7a\x7b\x6a\x1f\xfb\x8f\xf7\xd8\x15\x64\x3b\x0a\xb1\x6b\xab\x66\x1f"
+"\xf7\x6f\x16\x64\x3b\x0a\xb1\x6b\xab\x66\x1f\x0e\xf8\x05\xf7\x13\x35\x0a\xf8\x71\xfb\x2d\x15\xfb\x1a\xf7\xa3\x05\x81\xa1\x89\x90"
+"\x92\x1a\x9b\x9b\x94\xa7\x1e\x9a\x9f\xfb\xb4\x77\x96\x06\xad\x87\xa0\xe9\x1d\x8d\x31\x0a\x6e\x77\xf7\xe4\x9f\x6e\x20\x1d\xf7\x48"
+"\x07\xf7\x1b\xf7\xa6\xb0\xd6\x96\x96\xb9\x91\x19\x9f\xfb\x52\x77\x9f\x07\xab\x9f\x7b\x72\x7a\x86\x7c\x7a\x69\x1f\x0e\x24\x1d\xfb"
+"\xe7\xf7\xc9\x38\x1d\xf9\x52\x95\x0a\xfb\x0c\x25\x75\x0a\xd4\x1b\xd5\xd1\xa1\xb0\xb6\x1f\xb8\xb1\xa5\xd7\xe8\x1a\xf7\xd3\x07\x8c"
+"\xc7\x99\x9b\xca\x94\x08\xfc\x59\xf0\x15\xa7\x8f\x9f\x9e\xa4\x1b\x99\x91\x89\x77\xb7\xb8\x1d\x7d\x7e\x6f\x1b\x80\x88\x8c\x96\x72"
+"\x47\x0a\x4e\x66\x64\x35\x79\x1f\x0e\xf8\x8c\x2e\x1d\xfc\xb1\xe2\x2b\x1d\xf8\x8c\x2e\x1d\xfb\xfb\xe2\x20\x0a\xf8\x8c\x2e\x1d\xfc"
+"\xd4\xf7\x76\x28\x0a\xf8\x8c\x2e\x1d\xfc\x26\x9d\x1d\xf7\x49\xf8\xe0\x16\xac\xf7\x5f\x05\x71\x06\x74\x43\x45\x67\xfb\x0a\x8c\x08"
+"\x31\x06\xfb\x0a\x8a\x44\xaf\x74\xd3\x08\x72\x06\xac\xfb\x5f\x05\xf8\x87\xf9\x2a\x15\xfc\x87\xfb\x4a\xa1\x06\x95\xc3\xbf\xa9\xe5"
+"\x8d\x08\xf7\x2b\x06\xe5\x89\xc0\x6d\x94\x53\x08\xa1\x06\x27\x7e\x15\x83\x53\x6a\x70\x4f\x8a\x08\x26\x06\x4f\x8c\x6a\xa6\x83\xc3"
+"\x08\x73\xfb\x96\xa3\x06\x89\xbc\xb7\xaf\xc6\x89\x08\xf0\x06\xc6\x8d\xb7\x68\x89\x59\x08\xa3\xf7\x96\x06\x0e\x2c\x0a\xfb\x6f\xe2"
+"\x20\x0a\x2c\x0a\xfb\x9b\x9d\x1d\xf7\x3f\x37\x1d\xfb\xf7\x83\x0a\xf7\x3f\x37\x1d\xfb\xa8\xfa\x01\x2a\x1d\xf7\x3f\xf7\x77\xb3\x15"
+"\xf8\x0a\xf9\x02\x05\xfc\x84\x06\x7d\xfb\x50\x05\xa4\x06\x95\xef\xc7\xbe\xf3\x8a\x08\xf7\x0b\x06\xfc\x08\xfd\x04\x05\xf8\xd3\x06"
+"\xa4\xf7\x7a\x05\x72\x06\x77\xfb\x13\x3e\x49\xfb\x12\x8e\x08\x0e\x8f\x23\x1d\xcc\xf8\x52\x72\x0a\xf9\x34\xf7\x14\x15\x5b\x65\x67"
+"\x78\x59\x1b\x3b\x80\x0a\x66\x64\x99\x4a\x1b\x21\x3e\x56\x43\x64\xa6\x72\xb5\xb3\xa2\x9f\xb0\x9e\x87\x95\x7e\x99\x1f\x82\x95\x88"
+"\x90\x92\x1a\xa0\xa6\x99\xb1\xc3\xa1\x74\x51\x1e\x3b\x07\xfb\x16\x61\x5f\x7a\x6a\x74\x08\x65\x70\x79\x6a\x5e\x1a\x45\xb4\x66\xd8"
+"\xcd\xc3\xa5\xc4\xc5\x1e\x91\x91\x05\x4d\xb1\xb1\x75\xd2\x1b\xea\xc2\xab\xe5\xc6\x1f\xfc\x21\x6b\x15\x72\x73\x7d\x84\x73\x1b\x65"
+"\x78\xa3\xbb\xc9\xaa\xac\xe3\xab\x1f\xf7\x1e\xb0\x15\xf7\x0a\x9d\xb3\xbf\xba\x9b\x6b\x2e\x1e\x6a\x07\xfb\xa7\xf7\x87\x43\x0a\xa5"
+"\x78\x9d\x6e\x78\x60\x1d\xf8\x8c\xf3\x1d\x5d\x0a\xf7\x39\xf8\xb8\xf9\x2a\x15\xfc\x8d\x77\x9e\x06\xbd\x1d\xf7\xd8\x06\xf7\x2e\xdf"
+"\xca\xf7\x09\xf7\x14\x30\xd1\xfb\x39\x75\x84\x8b\x88\x5d\x1f\xf7\x8f\xf7\x03\x07\xdc\x8e\xbb\x4d\x0a\x06\xfb\xa6\xfb\x2b\x15\x8c"
+"\x98\x98\x8c\x95\x1b\xde\xb9\xb0\x0a\xf7\x3f\xa2\x1d\xf7\xd8\x06\xf7\x2b\xe2\xca\xf7\x04\xbf\x77\xb3\x63\xaa\x1f\x6f\xa1\x6f\x96"
+"\x52\x99\x7a\x1d\xf7\x20\xf8\xd1\x7f\x1d\x0e\xf7\x54\xf9\x1d\xf9\x2a\x15\xfc\xa4\x77\xba\x06\xb8\x94\x77\x2a\xfb\x71\x65\xfb\x2e"
+"\x40\x3a\x1f\x74\x76\x7a\x83\x6e\x1b\x6c\x06\x85\xfb\x43\x05\xa8\x06\x9b\xf0\xb6\xb4\xe0\x86\x08\xf7\xbe\x06\xea\x89\xbb\x60\x93"
+"\x2f\x08\xa8\xf7\x43\x65\x06\x5f\x82\x90\xa8\x8a\x1f\xf8\x7f\x07\x89\xc5\x9b\x9e\xbf\x8d\x08\x9e\x06\xfb\x7b\xfc\xf0\x15\xfb\xb5"
+"\x06\xe4\xe8\xb1\xf7\x2c\x8d\xf7\xa1\x08\xd3\xf7\x34\x07\x0e\xf7\x3f\xf7\xad\xf7\xd3\x15\xa6\x06\xb6\xa5\x77\x5a\x9f\x1f\x94\x75"
+"\x8f\x88\x0a\xbf\x58\x95\x53\x1d\xab\xf7\x5f\x05\x72\x06\x74\xfb\x03\x44\x53\xfb\x09\x8c\x08\x65\x06\x5e\x7c\x9d\xc0\x8d\x1f\x0e"
+"\xf7\x3f\x73\x1d\x54\xf9\x83\x15\x65\x3b\x0a\xb2\x6c\xaa\x64\x1f\xf7\x6f\x16\x65\x3b\x0a\xb2\x6c\xaa\x64\x1f\x0e\xf8\x81\xf8\x3c"
+"\xf7\xbb\x15\xfb\x5b\x21\x1d\x83\x77\xf7\xba\x9f\x83\x20\x1d\xf7\x5b\x07\x3c\x0a\x99\x72\x91\x7e\x8b\x1d\x77\x7d\x84\x7e\x78\xf2"
+"\x1d\x89\xc3\x9a\x9d\xc0\x8d\x08\x93\x9f\xfb\xba\x77\x93\x06\xc0\x89\x9a\x79\x8f\x0a\xa1\x9f\xfb\x7f\x77\x06\xd2\xae\x74\x2a\xd9"
+"\x1f\xcc\x3a\xfb\x65\xfb\xf5\x67\x4e\x85\x85\x69\x8a\x19\x77\xf7\xbb\x9f\x73\x07\x6e\x7b\x93\x9a\x92\x91\x98\x99\xa4\x1f\xf7\x1a"
+"\xf7\x7e\x05\x0e\xab\xcf\xf9\x38\x15\xfb\x5c\xa3\x07\x92\xbf\x93\xa4\x9c\xa3\x08\xaa\xa1\xad\x9c\xb4\x1b\xcb\xad\x5e\x38\x4d\x77"
+"\x60\x66\x7c\x1f\x85\x7d\x76\x89\x68\x1b\x81\x86\x8b\x8c\x82\x1f\x63\x07\x8d\x99\x94\x8b\x97\x1b\xbb\xa8\x82\x75\xa0\x1f\xa4\x73"
+"\x97\x65\x59\x1a\x2b\x5d\x53\x3c\x3a\x57\xbd\xe9\x7b\x1e\x63\x85\x05\xfb\x0d\x99\xda\x46\xf7\x13\x1b\xf7\x2a\xf1\xd8\xf7\x05\xec"
+"\x55\xc7\x23\x9f\x1f\xe1\x9d\xb8\xc2\xa4\x1d\x0e\xf7\xae\x6f\x1d\x0e\xf7\xae\xf7\x9e\x71\x1d\xfb\x78\xf7\xad\x15\x6b\x74\x74\x6a"
+"\x54\xc9\x68\xee\xf1\xca\xad\xc3\xac\x74\xa2\x6a\x6e\x74\x78\x72\x86\x8c\x84\x8e\x7d\x1f\x8c\x87\x8c\x88\x88\x1a\x7b\x6e\x7d\x6a"
+"\x6b\x6e\x99\x9b\x8e\x8b\x8f\x8c\x8e\x1e\x90\x9b\x8c\x8f\x91\x1a\xa4\x74\x9e\x6d\x1e\x0e\xf7\x79\x53\x0a\x0e\xf7\x8d\xf8\x0b\x16"
+"\x8c\x0a\x9f\xfc\x94\x6e\x0a\xcd\xa6\x1e\xa1\xc2\x94\xc8\xf6\x1a\xf7\xcd\xf7\x36\xfc\xa4\x21\x1d\x78\x06\x0e\xf8\x54\x72\x1d\xf7"
+"\xae\x55\x0a\xf7\xae\xf8\x18\x5c\x0a\xf7\xae\xf9\x81\xf9\x2a\x15\xfd\x64\x44\x0a\xf8\xa4\xf7\x96\xfc\xa4\x07\x25\x0a\x8c\x0a\x06"
+"\x0e\xf7\x07\x58\x0a\xf9\x09\xf7\x46\x15\x2f\x52\x45\x5e\x34\x1b\xfb\x07\x4a\xf2\xf7\x4c\xe7\x9a\xcc\xad\xc1\x1f\xc0\xac\xbd\xa8"
+"\xc5\x1b\xc0\xc0\x74\x65\xb0\x1f\xa4\x70\x97\x74\x9a\x57\x08\xa2\xf7\x6a\x74\x06\x68\x85\x82\x7f\x77\x1b\x83\x8b\x8b\x9b\x64\x1f"
+"\xa3\x4d\x6e\x92\x59\x1b\xfb\x50\xfb\x20\xfb\x2a\xfb\x5d\xfb\x55\xf7\x15\xfb\x1e\xf7\x49\xf7\x08\xf0\xc3\xef\xca\x1f\x0e\xf7\x3f"
+"\xf8\x2b\xf9\x06\x15\xb6\x06\xdc\x8e\xbb\x4d\x0a\xf7\x43\xfc\xc2\xa5\x1d\xf7\xe4\x9f\x6e\x20\x1d\x0e\xf7\x82\xf8\x74\xf9\x2a\x15"
+"\x77\xbd\x07\xa7\x99\x7f\x75\x81\x88\x7d\x85\x7f\x1f\xfb\x1d\xfb\xc0\xfb\x24\xf7\xce\x05\x86\x97\x87\x98\x92\x1a\x9a\x94\x94\x9a"
+"\x1e\xbd\x9f\xfb\xbc\x77\x06\xac\x8c\x9e\x7d\x9e\x67\xf7\x7a\xfc\x6a\x18\x53\x74\x75\x74\x6f\x1b\x77\x84\x94\xa7\x8a\x1f\xb1\x8a"
+"\x75\xa2\x67\x1b\x64\x70\x70\x64\x56\xb7\x67\xcc\xb2\xad\x98\xa4\xa5\x1f\x9c\x9c\x96\x9c\xa3\xbe\xf7\x70\xf8\x68\x18\xa4\xc1\x95"
+"\x94\xad\x8c\x08\x96\x9f\x06\x0e\xf7\xff\xf7\xfa\x51\x0a\x6a\x1d\xf7\xae\xa4\x16\xf8\xb7\x06\xea\x89\xbb\x5f\x93\x30\x08\xa8\xf7"
+"\x43\x70\x06\x56\x8e\x7d\x9c\x8d\xc3\x08\xf8\x55\x07\x89\xc5\x9a\x9e\x30\x0a\xfc\xa1\xfb\x96\x4b\x1d\xf7\x82\xf8\x62\xeb\x15\x8d"
+"\x53\x7b\x7a\x56\x88\x08\x6b\x77\xf7\xdd\x9f\x78\x06\x57\x8e\x7b\x9c\x8e\xc3\x08\xf8\x67\x07\x88\xc5\x9b\x9e\xbf\x8d\x08\x9e\x9f"
+"\xfb\xc8\x77\x96\x06\xef\x1d\x77\x57\x6c\x84\xa6\x1d\x96\x9f\xfb\xc3\x51\x1d\xbc\x95\xa6\xd5\x1e\x0e\xf8\xee\xa5\x16\xfa\xaa\x9f"
+"\x78\x20\x1d\xf8\x67\x07\x89\xc6\x9a\x9d\x86\x0a\x88\xc5\x9b\x9e\x30\x0a\xfc\xa1\xfb\x6f\x4b\x1d\xf8\xee\xa5\x16\xf9\xfc\x06\xe8"
+"\x8d\xc0\x5b\x91\x30\x3f\x1d\x56\x8d\x7c\x9c\x8d\xc4\x08\xf8\x55\x07\x89\xc6\x9a\x9d\x86\x0a\x88\xc5\x9b\x9e\x30\x0a\xfc\xa1\xfb"
+"\x6f\x4b\x1d\xf7\xa1\xf8\x1b\xf8\xc7\x15\x89\xc5\x9b\x9e\xbf\x8d\xc8\x1d\xb1\xfc\xa6\x06\x25\x0a\xf7\xd8\x06\xf7\x2f\xde\xca\xf7"
+"\x09\xf7\x14\x31\xd1\xfb\x3a\x75\x84\x8b\x88\x5d\x1f\x64\x04\x8c\x98\x98\x8c\x96\x1b\xde\xb8\xb0\x0a\xf8\x7a\xf7\xb3\xf8\xc7\x15"
+"\x89\xc5\x9a\x9e\x2c\x1d\x77\xf7\xd8\x06\xf7\x2e\xdf\xca\xf7\x09\xf7\x14\x30\xd1\xfb\x39\x75\x87\x8b\x88\x5a\x1f\x64\x04\x8d\x9b"
+"\x94\x8b\x96\x1b\xde\xb9\x53\x26\x31\x61\x56\x43\x64\x7f\x99\xb4\x1f\xf9\x1d\x42\x81\x1d\xf7\x39\xf7\xa8\xf8\xc7\x15\x89\xc5\x9a"
+"\x9e\x2c\x1d\x77\xf7\xd8\x06\xf7\x2e\xdf\xca\xf7\x09\xf7\x14\x30\xd1\xfb\x39\x75\x87\x8b\x88\x5a\x1f\x64\x04\x8d\x9b\x94\x8b\x96"
+"\x1b\xde\xb9\x53\x26\x31\x61\x56\x43\x64\x7f\x99\xb4\x1f\x0e\xf7\x4a\xbc\xf9\x38\x15\xfb\x83\xa1\x07\x94\xbf\x94\xa5\xa2\xab\x08"
+"\xbf\xaf\xc6\xa7\xd1\x1b\xce\xbb\x72\x59\xad\x1f\xac\x59\x98\x5a\x8d\x2b\x08\xfb\x02\x06\x35\x8c\x6c\xa8\x86\xe0\x08\x75\xfb\xa0"
+"\xa1\x06\xe1\x91\xaa\xa9\xe0\x1b\xf7\x02\x06\x8a\x2a\x81\x5a\x6f\x5b\x08\x4e\x68\x54\x6d\x3f\x1b\x2d\x4c\xb4\xf3\x46\x1f\x68\x74"
+"\x05\xfb\x0f\xdb\xd8\x5c\xf7\x0f\x1b\xf7\x61\xf7\x25\xf7\x20\xf7\x59\xf7\x5e\xfb\x23\xf7\x29\xfb\x58\x5b\x67\x83\x78\x60\x1f\x7c"
+"\x69\x83\x88\x7f\x1b\x72\x7c\x9a\xaa\x84\x1f\x0e\xf9\x0a\xd2\x16\xf7\xd0\x9f\x78\x20\x1d\xf7\x7e\xe2\x07\xfb\x62\x8d\xf7\x18\xfb"
+"\x1a\xf7\x5d\x1b\xf7\x5a\xf7\x1b\xf7\x1e\xf7\x5e\xf2\x6e\xda\x4d\xcb\x1f\xcb\x4c\x3a\xab\x25\x1b\xfb\x00\x37\x64\x3b\x49\x1f\x61"
+"\x59\x76\x57\x83\x3d\x08\x32\xf7\x52\x06\x89\xc5\x9a\x9e\x2c\x1d\x06\xf9\x20\xf8\xfd\x15\xf6\xc8\xfb\x00\xfb\x54\xfb\x58\x4b\xfb"
+"\x09\x20\x5b\x5e\xa7\xb9\x70\x1f\x6c\xc1\x7d\xd1\xf4\x1a\xf7\x10\x9f\xd8\xba\xc5\x5f\x1d\xf8\x45\xf7\xc0\x15\xfb\x60\x21\x1d\x73"
+"\x77\xf7\xd5\x9f\x78\x20\x1d\xf8\x6a\x07\x89\xc3\x9a\x9d\xc0\x8d\x08\x9e\x9f\xfb\xe3\x06\xfb\x28\x34\x47\xfb\x07\x36\xb4\x59\xeb"
+"\x69\x1f\xfb\x09\xfb\x60\x67\x4c\x77\x78\x6a\x87\x19\x77\xf7\x51\x07\xf7\x3e\xf7\xc0\x05\xbc\xb1\x15\x8a\x78\x76\x8a\x80\x1b\x5c"
+"\x64\x98\xa2\x77\x1f\x78\xa1\x80\xb5\xbc\x1a\xba\x97\xae\xa1\xa2\x1e\xa0\xa0\xa9\x93\xc0\x1b\x92\xa3\x8b\x8a\x9d\x1f\x0e\xa3\xf7"
+"\x8b\xf9\x05\x15\xf7\xb6\xf7\x47\x6d\x06\x86\x2d\x59\x58\x39\x8e\x08\xfb\xfb\x76\x9e\x06\xc1\x89\x9b\x78\x89\x50\x08\xfc\x63\x07"
+"\x8c\x52\x7c\x79\x55\x89\x08\x78\x76\xf7\xe4\xa0\x6a\x06\x55\x8d\x7c\x9c\x8d\xc5\x08\x0e\xf7\xc4\xf8\x16\xf9\x06\x15\xcb\x06\xdb"
+"\x8e\xbc\x4d\x0a\xf7\x43\xfc\xc6\xfb\x43\xa8\x06\x90\xe7\xbb\xc6\x1d\xf7\x7b\xf7\xda\x06\xa4\xbf\x9e\x90\xb1\x1b\xb1\xa0\x82\x75"
+"\x9b\x1f\x9e\x71\x94\x60\x4d\x1a\x26\x78\x4c\x6d\x81\x84\x92\x95\x8f\x8c\x90\x8d\x90\x1e\x91\x98\x8c\x8e\x94\x1a\xa8\x76\xa0\x6d"
+"\x66\x74\x73\x65\x54\xb6\x6b\xd4\xf7\x0f\xdf\xe6\xf7\x1b\xf7\x10\x3f\xd2\xfb\x1b\x57\x65\x83\x72\x48\x1e\x0e\xf7\x20\xf8\xda\x7f"
+"\x1d\xfb\xce\xf7\x80\x15\xc2\x06\xf7\x1f\xe1\x05\xaa\x9f\x93\x95\xa1\x1a\xa5\x78\x9c\x6f\x78\x7a\x82\x79\x7b\x1e\x0e\xf7\x4a\xf8"
+"\xff\xf9\x38\x15\x74\x06\x6c\x85\x7c\x7c\x72\x1b\x82\x7f\x8e\x91\x7e\x1f\xa9\x47\x75\x91\x52\x1b\xfb\x57\xfb\x24\xfb\x29\xfb\x5e"
+"\xfb\x5a\xf7\x25\xfb\x1f\xf7\x62\xf7\x13\xdc\xba\xf7\x0f\xdf\x1f\x68\xa2\x05\x23\x42\x48\x62\x29\x1b\x43\x57\xa4\xbf\x68\x1f\x6a"
+"\xbd\x7e\xbf\x89\xf5\x08\xf7\x0e\x06\xe0\xaa\x6d\x35\x90\x1f\xa2\xf7\xa0\x74\x06\x87\x36\x6c\x6e\x35\x8a\x08\xfb\x0e\x06\x8e\xe4"
+"\x95\xb8\xa6\xba\x08\xc7\xad\xbe\xa8\xd4\x1b\xcc\xc2\x73\x5e\xaf\x1f\xa7\x69\x98\x6d\x93\x52\x08\xa2\x06\x0e\xc7\xf8\x85\xf9\x33"
+"\x15\x74\x06\x6f\x8a\x81\x7e\x77\x1b\x84\x84\x8c\x8e\x85\x1f\xaa\x39\x6d\x92\x5a\x1b\xfb\x11\x31\x3c\xfb\x01\x53\xa3\x56\xb3\x6b"
+"\x1f\xac\x71\x8c\x8a\xf7\x02\x61\xec\x66\x8b\x8b\xa1\x7e\x08\xaa\x79\x9f\x68\x67\x1a\x4d\x57\x61\x3e\x49\x4a\xa6\xb6\x65\x1e\x65"
+"\xb8\x79\xb2\x8a\xb9\x08\x71\xfb\x82\xa5\x06\xa7\x93\x96\x96\xa2\x1b\x95\x93\x89\x83\xa0\x1f\x75\xc3\xb7\x81\xb7\x1b\xc8\xca\x9f"
+"\xad\xb8\x1f\xb6\xac\xa3\xbf\xc8\x1a\xc5\x75\xbf\x63\xaf\x1e\x64\xad\x8b\x8b\xfb\x0f\xb8\x2f\xae\x8b\x8b\x75\x97\x08\x6f\x9b\x79"
+"\xaa\xaa\x1a\xc3\xbe\xb2\xd6\xc5\xc0\x74\x60\xb3\x1e\xa7\x6d\x98\x6f\x94\x5b\x08\xa2\x06\x0e\x20\x66\x0a\x20\xf7\xf6\x9f\x49\x1d"
+"\xfb\x8c\xf9\xef\x15\xc7\x1d\xf7\x47\x16\xc7\x1d\x0e\x8f\xf7\x26\xf9\x16\x15\xac\x06\xc0\x89\x9a\x78\x89\x50\x08\xfc\x47\x07\x47"
+"\x77\x6d\x5d\x6e\x74\x98\x9b\x8f\x8c\x90\x8d\x8d\x1e\x9f\xa6\x8e\x92\x9f\x1a\xae\x6b\xaa\x66\x65\x6c\x67\x5f\x45\xd8\x53\xed\xd2"
+"\xce\xa9\xba\xaf\x1e\xa3\xab\x92\xa8\xd1\x1a\xf8\x07\x07\x89\xc6\x9a\x9e\xc0\x8d\x08\x9b\x9f\xfb\xdf\x06\x0e\xf8\x8f\xf7\xda\xf9"
+"\x04\x15\xf7\x29\xfc\xa4\x06\x25\x0a\xf7\xd8\x06\xf7\x26\xdb\xca\xf7\x09\xf7\x14\x35\xd1\xfb\x32\x75\x80\x8b\x88\x61\x1f\xf7\x50"
+"\x07\x89\xc5\x9a\x9e\xc0\x8d\x08\x9e\x9f\xfc\x87\x6e\x0a\xcc\xa6\x1e\xa1\xc3\x94\xc8\xf6\x1a\xf7\xbb\xa4\x15\x8c\x99\x98\x8c\x94"
+"\x1b\xd7\xb4\x54\x25\x30\x66\x57\x49\x66\x7e\x99\xb4\x1f\x0e\xf8\x8e\xf8\x92\xf7\xd2\x15\xfb\x72\x07\x25\x0a\xf7\xd8\x06\xf7\x26"
+"\xda\xca\xf7\x09\xf7\x15\x35\xd1\xfb\x32\x76\x86\x8b\x87\x5b\x1f\xf7\x50\x07\x89\xc5\x9a\x9e\x30\x0a\xfb\x61\xfb\x89\x69\x0a\xf7"
+"\x72\x07\xf8\x1b\x9e\x15\x8c\x99\x97\x8c\x95\x1b\xd6\xb5\x53\x26\x2f\x65\x57\x49\x67\x7e\x99\xb4\x1f\x0e\xf7\xc4\xf7\xf7\xf9\x06"
+"\x15\xcc\x06\xdc\x8e\xbb\x59\x91\x2f\x08\xa8\xf7\x43\xfc\xc3\x06\x86\xfb\x43\x05\xa8\x06\x8f\xe7\xbc\xc6\x1d\xf7\xc8\x9f\x80\x20"
+"\x1d\xf7\x65\x07\xa5\xb6\xad\x96\xb6\x1b\xcc\xa0\x6e\x30\x1f\xfb\x12\x21\x1d\x80\x77\xf7\xc2\x9f\x7e\x20\x1d\xf7\x2a\x07\xef\x52"
+"\xba\xfb\x0e\x4d\x5d\x81\x6f\x4a\x1e\x0e\xf7\x79\x53\x0a\xc0\xf9\x07\x15\xc2\x06\xf7\x1f\xe1\x05\xac\xa0\x92\x93\xa2\x1a\xa5\x78"
+"\x9c\x6f\x77\x7a\x82\x79\x7b\x1e\x0e\xf7\x82\xf8\x80\xf9\x2a\x15\x77\xbd\x07\xa7\x99\x7f\x75\x81\x88\x7d\x85\x7f\x1f\xfb\x1d\xfb"
+"\xc0\xfb\x24\xf7\xce\x05\x86\x97\x87\x98\x92\x1a\x9a\x94\x94\x9a\x1e\xbd\x9f\xfb\xbc\x77\x06\xac\x8c\x9e\x7d\x9e\x67\xf7\x7a\xfc"
+"\x6a\x18\x53\x74\x75\x74\x6f\x1b\x77\x84\x94\xa7\x8a\x1f\xb1\x8a\x75\xa2\x67\x1b\x64\x70\x70\x64\x56\xb7\x67\xcc\xb2\xad\x98\xa4"
+"\xa5\x1f\x9c\x9c\x96\x9c\xa3\xbe\xf7\x70\xf8\x68\x18\xa4\xc1\x95\x94\xad\x8c\x08\x96\x9f\x06\xfb\x5f\xf7\x05\x15\x7b\x6e\x7d\x6a"
+"\x6b\x6e\x99\x9b\x1e\x8c\x95\x05\x8f\x98\x8c\x92\x91\x1a\xa4\x74\x9e\x6d\x6b\x74\x74\x6a\x54\xc9\x68\xee\xf2\xc9\xad\xc3\xac\x74"
+"\xa2\x6b\x6e\x74\x78\x72\x86\x8c\x84\x8f\x7d\x1e\x0e\x8f\xf8\x5d\xd6\x15\x77\x7c\x89\x89\x82\x1b\x7c\x85\x99\xaf\x1f\xf7\x7b\x07"
+"\xb4\x80\xab\x77\x9e\x1e\xa0\x73\x5e\x99\x5b\x1b\x25\x33\x53\x4a\x6a\xaa\x6e\xaf\xb0\xaa\xa4\xa8\x96\x86\x95\x7e\x97\x1f\x81\x96"
+"\x89\x8f\x93\x1a\x9e\xa1\x99\xaa\xb3\x9a\x76\x54\x1e\x44\x07\x56\x77\x61\x78\x66\x73\x08\x4f\x66\x70\x64\x59\x1a\x57\xb6\x62\xc1"
+"\xb1\xb8\xa4\xb5\xb2\x1e\x5f\x95\xa8\x72\xb7\x1b\xb6\xb2\xa4\xb7\xa3\x1f\xfb\x51\xb7\x15\x75\x73\x7f\x84\x7b\x1b\x76\x7e\x9e\xa8"
+"\xb9\xab\xb5\xc1\xa3\x1f\x0e\x8f\xf8\x3d\xf9\x3b\x15\x7c\x83\x7e\x87\x66\x1b\x6b\x06\x5c\x60\x88\x86\x77\x1f\x57\x7e\x62\x66\x6f"
+"\x52\x08\x6c\x49\x74\xfb\x06\x2e\x1a\x32\xa1\x41\xb6\x57\x1e\x62\xad\xbf\x71\xbb\x1b\xbd\xc5\xa7\xb4\xaf\x1f\xb0\xb5\x9f\xc8\xcf"
+"\x1a\xf7\x17\x35\xef\xfb\x05\x42\x55\x65\x3c\x66\x1e\x99\xf7\x29\xbd\xc6\xf7\x04\x8c\x08\xa8\x06\xe0\x88\xbd\xb4\x9f\xe3\x08\xfb"
+"\x5a\xfb\x95\x15\xa1\xa0\x79\x71\x94\x1f\x94\x6f\x8f\x68\x4b\x1a\xfb\x39\xa7\x0a\xb7\xc4\xf8\x58\x15\x77\x07\xa8\x9b\x75\x66\x89"
+"\x1f\xfb\xbb\x07\x8d\x67\x7b\x76\x6e\x8a\x08\x77\xf7\x78\x07\xf7\x03\xcb\xb7\xd8\xc4\x69\xaf\x41\xa0\x1f\xc2\x9b\xa9\xae\xbc\x1a"
+"\xb3\x74\xac\x62\xa1\x1e\x9b\x6d\x6c\x91\x59\x1b\x66\xfb\x82\x15\xaf\x98\x88\x83\x98\x1f\xa1\x7d\x97\x6f\x66\x1a\x52\x73\x6b\x60"
+"\x75\x84\x92\xa3\x1e\xf7\xf3\x04\xc5\x89\xa4\x73\x52\x1a\x56\x71\x6c\x5f\x89\x85\x8b\x8c\x86\x1e\x0e\x61\xf8\x14\xf8\x58\x15\xfb"
+"\xdb\x76\x06\xa8\x9b\x75\x67\x89\x1f\xfb\xba\xb6\x1d\xf7\xe4\xb1\x07\xd3\x8a\xae\x67\x8e\x40\x08\xa0\x06\x0e\x95\xf8\x6a\xb0\x15"
+"\x7d\x06\x6e\x8c\x7b\xa0\x8d\xaf\x08\xf7\xaa\x07\xb0\x89\x9b\xa0\xa7\x1b\xa0\xfc\x04\x76\x98\x07\xb1\x96\x7b\x52\xfb\x2a\x71\x26"
+"\x58\x56\x1f\x7d\x7d\x80\x87\x79\x1b\x7c\x06\x87\xfb\x28\x05\x9f\x06\x8e\xd8\xb0\xaf\xd7\x8a\x08\xf7\x50\x06\xd7\x8c\xb0\x68\x8e"
+"\x3d\x08\x9f\x06\xfb\x4a\xf7\x29\x15\xfb\x4d\x06\xc4\xcb\xa3\xee\x8d\xf7\x41\x08\xb5\xf1\x07\x0e\x57\xf8\x24\xf7\x7d\x15\x89\xca"
+"\x83\xaf\x74\xb3\x08\xc3\x6b\x58\xac\x56\x1b\x56\x56\x6c\x58\x69\x1f\x6c\x5e\x7c\x53\x47\x1a\x3e\x9f\x53\xb4\x64\x1e\x6c\xaa\xb7"
+"\x7a\xb7\x1b\xd6\xca\xbb\xdf\xb0\x1f\x72\x97\x05\x5a\xdf\x1d\xb0\x15\xee\x8c\xa3\xc1\xb6\x1b\x9e\x9c\x7b\x74\x92\x1f\x92\x72\x8b"
+"\x86\x8d\x37\x08\x0e\x57\xf8\x24\xf7\x7c\x15\x89\xc9\x83\xaf\x74\xb2\x08\xc2\x6a\x59\xac\x56\x1b\x56\x56\x6c\x59\x69\x1f\x6c\x5e"
+"\x7c\x54\x48\x1a\x3e\x9f\x54\xb4\x63\x1e\x6d\xaa\xb7\x7a\xb7\x1b\xd6\xcb\xbb\xde\xaf\x1f\x72\x98\x05\x59\xdf\x1d\xaf\x15\xee\x8c"
+"\xa3\xc0\xb6\x1b\x9e\x9c\x7b\x74\x92\x1f\x92\x72\x8b\x86\x8d\x38\x08\xfb\x21\xf8\x0f\x15\x6c\x71\x71\x6c\x6b\xa5\x71\xab\xaa\xa5"
+"\xa5\xaa\xab\x72\xa5\x6a\x1f\xf7\x44\x16\x6c\x71\x71\x6c\x6b\xa5\x71\xab\xaa\xa5\xa5\xaa\xab\x72\xa5\x6a\x1f\x0e\xf7\x79\xf7\x9b"
+"\x16\xf7\x5a\x9f\x06\x72\x90\x7e\x9f\x8d\xba\x0a\x9c\x6e\x8d\x88\x85\x1a\x82\x82\x86\x7b\x1e\x83\x77\xf7\x66\x9f\x06\x73\x8c\x8a"
+"\xbf\x0a\xc6\xd2\x9c\x95\xc0\x8c\x19\x9f\xfb\x41\x77\xa0\x07\x9a\x95\x84\x7f\x82\x86\x82\xba\x1d\xfb\x5a\x77\x07\xa4\x87\x98\x76"
+"\x8a\x69\x08\xfb\x15\x07\xfb\x10\xf7\x1e\x05\x7f\x98\x86\xce\x1d\x8a\x9b\x81\xc6\x44\xb6\x59\x18\xfb\x25\xfb\x7e\x70\x5f\x8a\x8a"
+"\x73\x8a\x19\x77\xf7\x67\x9f\x83\x07\x7a\x83\x90\x94\x90\x90\x96\x98\xa1\x1f\xde\xf7\x1f\x9a\x79\x05\xfb\x06\x07\x8c\x69\x7f\x77"
+"\x71\x86\x08\x0e\x2d\xc3\xf7\xd4\x15\xa3\x06\xd0\x91\xa6\xad\xbc\x1b\xb3\xa2\x6c\x56\x4c\x77\x76\x52\x1f\x96\x0a\x05\x36\x9f\xbd"
+"\x63\xe0\x1b\xf7\x03\xd8\xc0\xd7\xcb\x63\xb5\x3f\x9c\x1f\xca\x9b\xab\xb1\xc2\x1a\xcc\x4d\xb8\x30\x73\x7b\x88\x82\x6e\x1e\x87\x7e"
+"\x83\x89\x84\x1b\x7e\x85\x91\x97\x1f\x7a\x06\x0e\xdb\x3f\x0a\x0e\xdb\x3f\x0a\x83\xf7\x66\x15\x8c\x88\x05\x88\x07\x83\x07\x75\x76"
+"\x7d\x69\x69\x76\x99\xa1\x8e\x8b\x8d\x8c\x8e\x1e\x8c\x9a\x05\xa1\x79\x9b\x72\x71\x79\x79\x70\x5c\xc7\x68\xda\xdc\xc7\xae\xba\xa6"
+"\x79\x9d\x72\x72\x79\x7b\x75\x1e\x0e\xdb\x54\x0a\x0e\xcc\xf7\xe5\xf8\x33\x15\xfb\xe4\x07\x8d\x67\x7c\x76\x6e\x89\x08\x77\xf7\x66"
+"\xb2\x0a\xaf\x89\x9b\xa1\xa8\x1b\xa0\xfb\xf5\x76\x07\xb8\x89\x91\x7f\x36\x1a\x43\x07\x36\x88\x54\x84\x6d\x1e\x6d\x85\x80\x7a\x7f"
+"\x1b\x85\x88\x8f\x90\x8d\x8b\x8b\x8d\x95\x1f\x8c\x91\x8b\x8b\x8f\x1a\xa8\x75\xa0\x6c\x6a\x75\x74\x68\x5d\xa9\x6d\xb9\xb2\xa9\x9e"
+"\xae\x9c\x1e\x9f\xb4\x91\xbc\xf7\x10\x1a\xf7\x31\x07\x0e\xf7\x4d\xf8\x4d\xf8\x58\x15\x29\xfb\x9a\x23\xf7\x9a\x05\xfb\x38\x77\x06"
+"\xa7\x8a\x9b\x76\x89\x66\x29\x0a\x8d\x67\x7c\x76\x6e\x89\x08\x77\xf7\x0c\x9f\x07\x6f\x8c\x7b\xa1\x8d\xaf\x08\xf7\xa1\x07\xf7\x1f"
+"\xfb\xf0\x05\x9d\x06\xf7\x15\xf7\xec\x05\xfb\x9d\x07\x66\x8d\x7a\x75\x6e\x1b\x77\xf7\x67\x9f\x07\x6e\x8d\x7c\xa0\x8d\xaf\x08\xf7"
+"\xba\x07\x89\xaf\x9b\xa1\xa7\x8c\x08\x9f\x07\x0e\xdb\xf7\xed\xf7\x96\x15\xfb\x06\xf7\x07\x06\x89\xae\x99\x3e\x1d\x89\x9a\x76\x89"
+"\x67\x29\x0a\x8d\x66\x7c\x48\x0a\x8e\x7d\xa0\x8d\xae\x08\xf7\x22\xf7\x06\xfb\x22\x07\x8d\x68\x7d\x76\x71\x88\x08\x77\xf7\x61\x9f"
+"\x07\x6f\x8c\x7b\xa1\x8d\xaf\x08\xf7\xba\x07\x89\xaf\x9a\xa1\xa8\x8c\x08\x9f\xfb\x61\x77\x07\xa5\x88\x99\x76\x89\x68\x08\x0e\x8f"
+"\xf7\x90\xf8\x61\x15\xfb\x09\x35\x26\xfb\x1c\x47\xa3\x4b\xb5\x61\x1f\x67\xae\xc0\x73\xb8\x1b\xc0\xc4\xa6\xb5\xb0\x1f\xb0\xb5\x9f"
+"\xc8\xcf\x1a\xf7\x18\x35\xee\xfb\x06\x1e\x8a\x64\x15\xa1\xa0\x79\x71\x94\x1f\x95\x6f\x8e\x69\x4c\x1a\xfb\x3b\xa7\x0a\xdb\xf7\x7c"
+"\xf8\x33\x15\xf7\x04\xfb\xe4\x06\x8d\x67\x7b\x75\x6e\x8a\x08\x77\xf7\x67\xb2\x0a\xb0\x89\x9b\xa0\xa8\x1b\xa0\xfc\x54\x76\x07\xa8"
+"\x9b\x75\x67\x89\x1f\xfb\xba\x07\xad\x0a\xf7\x67\x9f\x07\x6e\x8c\x7b\xa1\x8d\xaf\x08\x0e\xc7\xf7\x86\xb0\x15\x6b\xa1\xa5\x7c\xaf"
+"\x1b\xae\xb0\x9f\xac\xa6\x1f\xad\xb7\x9b\xc3\xda\x1a\xf7\x20\x4f\xee\x37\x68\x71\x7c\x68\x6f\x1e\xb9\x74\x07\xfb\x28\x65\x05\x76"
+"\x95\x07\xa5\x85\x96\x7a\x8a\x6a\x08\xfc\x3e\x07\x68\x8d\x7a\x76\x6f\x1b\x83\x77\xf7\x7f\x9f\x81\x06\x6a\x89\x79\x9f\x8d\xb1\x08"
+"\xf8\x20\x04\xac\x8c\x92\x95\x9b\x1e\x9a\x95\x99\x94\x99\x1b\xae\x98\x5e\xfb\x0f\xfb\x1c\x81\x60\x6b\x75\x74\xa0\xa7\x81\x1f\x0e"
+"\x57\xf8\x12\xf7\x11\x15\x65\x6d\x6c\x79\x6a\x1b\x47\x54\xe8\xf7\x06\xde\xa8\xc7\xb4\x9f\x99\x7c\x75\x8c\x1f\x8c\x68\x8c\x83\x95"
+"\x78\x08\x71\x98\x9e\x7e\xa5\x1b\xac\xa4\xa4\xad\xcf\x47\xc0\x34\xfb\x08\x38\x25\xfb\x24\xfb\x1b\xd3\x31\xf7\x01\xcf\xc8\xb3\xd9"
+"\xba\x1f\x0e\x86\xf7\x1d\x16\xf7\x6d\x9f\x06\x6b\x7b\x9f\xb2\x8d\x1f\xf7\xe4\x9c\x07\xd2\xae\x67\x3f\x8f\x1f\x9f\x06\x81\xf7\x29"
+"\x05\xfc\x23\x06\x81\xfb\x29\x05\x9f\x06\xd6\x8e\xaf\xb0\xd2\x1b\x9c\xfb\xe4\x06\x8c\x64\x7c\x78\x6b\x8a\x08\x0e\x8f\x6e\x1d\x0e"
+"\xf7\x58\xf8\x2c\xf9\x22\x15\xfb\x3b\x76\x06\xa7\x9b\x75\x68\x89\x1f\xfb\x33\x07\xac\x6c\x75\x96\x67\x1b\x2e\x49\x28\xfb\x1e\xfb"
+"\x21\xca\x2e\xe9\xac\xa7\x96\xa3\xa9\x1f\x20\x07\x8d\x68\x7b\x75\x6f\x8a\x08\x77\xf7\x67\x9f\x07\x6d\x7b\xa1\xaf\x8d\x1f\xf6\x07"
+"\x73\xaa\xa6\x80\xac\x1b\xe9\xca\xe9\xf7\x20\xf7\x1e\x49\xee\x2e\x68\x71\x7e\x6c\x6f\x1f\x63\x04\x9b\x9f\x9b\x92\x9b\x1b\xb9\xa0"
+"\x58\xfb\x08\xfb\x15\x74\x53\x56\x7b\x7e\x90\x97\x7d\x1f\xfb\x11\x16\x7f\x7d\x7e\x86\x7b\x1b\x56\x74\xc3\xf7\x14\xf7\x08\xa0\xbf"
+"\xb9\x9b\x9c\x83\x7c\x9e\x1f\x0e\x8f\xf7\x68\xf7\x38\x15\xc6\x2c\x05\x96\x79\x8e\x84\x85\x1a\x7d\x7c\x85\x73\x8d\x1e\x8a\x77\xf7"
+"\x78\x9f\x82\x06\x78\x8c\x89\x8c\x6d\xba\xfb\x10\xf7\x59\x18\xdd\xf7\x02\xac\xb8\x99\x95\xb0\x8c\x19\x9f\xfb\x25\x77\x07\xa5\x87"
+"\x93\x85\x7c\x1a\x82\x83\x7a\x80\x7d\x1e\x55\x43\x55\xe2\x05\x81\x9c\x88\x90\x93\x1a\x96\x94\x90\xab\x8f\x1e\x9f\xfb\x78\x77\x07"
+"\xa7\x88\x90\x86\xb8\x44\xef\xfb\x34\x18\x39\xfb\x02\x68\x5b\x79\x7f\x60\x88\x19\x77\xf7\x36\x9f\x07\x7e\x8c\x84\x8b\x89\x8c\x08"
+"\x7d\x8e\x82\x94\x95\x1a\x94\x91\x98\x97\x9c\x1e\x0e\xdb\xf8\xa2\xb0\x15\x7f\x06\x6d\x8a\x7a\xa0\x8d\xb1\x08\xf7\xaa\x41\x1d\xfb"
+"\x62\xc9\x1d\x89\xad\x98\xa0\xa5\x8f\x08\x9f\xfb\x61\x3d\x1d\x67\x8d\x7b\x75\x6e\x1b\x76\xf7\xd8\x07\xd7\x8d\xb2\x67\x8e\x3d\x08"
+"\x9f\x06\x0e\xcf\xcd\xf8\x44\x15\xa4\x87\x99\x76\x89\x69\x08\x40\x07\x3b\xbb\x65\xf1\xa6\x9f\x8e\x95\xa9\x1e\xfb\x06\x07\x8d\x67"
+"\x7b\x75\x6f\x8a\x08\x85\x77\xf7\x6c\x9f\x06\x87\x0a\x9b\x75\x89\x67\x08\xfb\x23\x07\x84\x7e\x7f\x88\x7c\x1b\x62\x76\xa0\xb5\x1f"
+"\xe5\xe2\x1d\x07\x0e\xf7\xf0\xf8\xbb\xf8\x58\x15\x61\x0a\xf9\x31\xa0\x07\x6f\x7b\xa0\xb0\x8d\x1f\xf7\xba\x07\x89\xb0\x9a\x9f\xa8"
+"\x8d\x08\x9f\x07\x0e\xf7\xf0\xf9\x97\xb0\x15\x7f\x06\x69\x7e\x9e\xba\x8d\x1f\xf7\xa2\x07\x89\xb0\x9a\x9f\xa8\x8d\x08\x9f\xfb\x61"
+"\x61\x0a\xf8\xb8\x07\xd6\x8c\xb1\x67\x8e\x3e\x08\x9f\x06\x0e\xe2\xbd\xf8\x58\x15\x81\xfb\x29\x05\x9f\x06\xd5\x8e\xaf\xb1\xd1\x1b"
+"\xfb\xe5\xad\x1d\x7c\x7f\x8b\x89\x77\x1f\xf7\x05\x41\x1d\x07\x5f\xfb\x76\xb1\x1d\xf7\xb1\xe5\xf8\x58\x15\x77\x07\xa8\x89\x9a\x77"
+"\x89\x66\x08\xfb\xbb\x07\x8d\x67\x7c\x77\x6e\x89\x08\x77\xf7\x77\x07\xf7\x02\xc7\xb7\xdb\xe4\x4a\xbc\xfb\x0a\x7b\x86\x8b\x89\x71"
+"\xbc\x1d\x8f\x8b\x90\xaa\x0a\xf8\x48\x48\x15\x9f\x07\x6d\x8c\x7b\xa0\x8d\xb0\x08\xf7\xba\x41\x1d\xfb\x67\x77\x07\xa7\x8a\x9b\x75"
+"\x89\x67\x29\x0a\x8d\x67\x7b\x75\x6f\x8a\x08\x77\x07\x0e\xac\xc2\xf8\x58\x15\x77\x07\xa8\x89\x9a\x77\x89\x66\x08\xfb\xbb\x07\x8d"
+"\x67\x7c\x77\x6e\x89\x08\x77\xf7\x77\x07\xf7\x02\xc7\xb7\xdb\xe4\x4a\xbc\xfb\x0a\x7b\x86\x8b\x89\x71\xbc\x1d\x8f\x8b\x90\xaa\x0a"
+"\x0e\x4b\xf7\x19\xf7\x70\x15\xf7\x26\x06\x89\x53\x88\x75\x83\x70\x08\x5f\x7d\x6a\x73\x5d\x1b\x51\x64\xac\xcf\x74\x1f\x6d\x82\x05"
+"\x29\xa6\xc7\x58\xe3\x1b\xf7\x0d\xe4\xef\xf7\x1b\xf7\x1a\x34\xf1\xfb\x07\x71\x77\x86\x7e\x6e\x1f\x85\x7e\x84\x89\x82\x1b\x7d\x81"
+"\x93\x97\x89\x1f\x79\x06\x84\xfb\x2a\x05\xa3\x06\xda\x9e\xaf\xb1\xc1\x1b\xaf\xa7\x77\x68\x99\x1f\x96\x6f\x8e\x78\x8f\x4c\x08\xfb"
+"\x27\x06\x0e\xf7\xa0\xf7\x77\xf7\x97\x15\xf7\x06\x07\x89\xaf\x9a\xa1\xa8\x9c\x1d\x6e\x8d\x7c\xa0\x8d\xaf\x08\xf7\x21\xc3\x07\x8c"
+"\x5a\x96\x63\xa0\x66\x08\x4c\xae\xce\x62\xcc\x1b\xbf\xc5\xa6\xb5\xaf\x1f\xb0\xb5\x9f\xc8\xcf\x1a\xf7\x19\x36\xed\xfb\x07\x20\x3e"
+"\x3e\xfb\x11\x7a\x1e\xf7\x5c\xf7\x38\x15\xa2\xa0\x79\x71\x94\x1f\x94\x6f\x8f\x69\x4b\x1a\xfb\x3b\x78\x52\x55\x62\x79\xbb\xf5\xf7"
+"\x4b\x9b\xc4\xbd\x1e\x0e\xb8\xf7\xd5\xf7\x5c\x15\xfb\x0d\x07\x8d\x67\x7c\x76\x6e\x89\x08\x77\xf7\x65\x9f\x07\x6e\x8d\x7c\x9f\x8d"
+"\xb0\x08\xf7\xba\x07\xaf\x89\x9b\xa1\xa7\x1b\xa0\xfb\x83\x07\xfb\x00\x4a\x5b\x3c\x52\xac\x64\xcb\x78\x1f\x3c\xfb\x18\x72\x5e\x7f"
+"\x80\x77\x89\x19\x77\xf7\x26\x07\xf7\x05\xf7\x5c\x05\xa4\xf7\x69\x15\xfb\x46\x07\x8a\x7f\x85\x8b\x85\x1b\x47\x6f\xa6\xcc\xc9\xa5"
+"\xa4\xcc\x1f\x0e\x20\xf7\x58\xf8\x32\x15\xf7\x36\x06\x95\xf7\x2b\x05\x76\x06\x88\x3e\x67\x67\x42\x8a\x08\xfb\x67\x76\x06\xa9\x9b"
+"\x75\x66\x89\x1f\xfb\xb7\x5d\x1d\x76\xf7\x71\xa0\x87\x07\x6c\x7b\xa1\xb0\x8d\x1f\x0e\xb4\xf7\x69\xf9\x22\x15\xfb\x42\x77\x92\x06"
+"\xa8\x88\x9a\x77\x89\x68\x08\x77\x48\x66\xce\xfc\x4d\x07\xb7\x1d\xf7\x9a\x07\xaf\xa0\xa6\xa3\x9f\x1b\xb4\x9b\x3d\xfb\x57\xfb\x50"
+"\x7a\x42\x60\x84\x87\x8f\x92\x1f\x8c\x95\x05\x8d\x94\x8c\x92\x8f\x1a\xa7\x78\x9f\x71\x6b\x76\x75\x69\x5f\xae\x6f\xc2\xf7\x13\xde"
+"\xf7\x24\xf7\x72\xf7\x3c\x58\xef\x36\x5e\x6b\x7a\x59\x5c\x1e\xf7\x11\xf7\x21\xb0\xfb\x21\x07\x0e\x61\xc5\xf8\x42\x15\x8c\x06\x8d"
+"\x06\x8c\x06\x8c\x06\xa6\x8a\x96\x7f\x8a\x70\x08\xfb\xdd\x07\x6f\x80\x80\x71\x8a\x1e\x86\x76\xf7\x6c\xa0\x80\x06\x71\x8c\x80\x96"
+"\xa7\x1a\xf7\xf2\x8f\x07\x90\x06\x90\x06\x8f\x06\xdc\xae\x6c\x39\x95\x1f\xa2\x06\x83\xf7\x2d\x05\xfb\xdb\x06\xf7\x11\xcb\x15\xf7"
+"\x2e\xed\x05\xa0\x99\x94\x98\x9c\x1a\x9f\x7e\x97\x75\x7c\x83\x86\x78\x78\x1e\xfb\x27\xfb\x2a\x05\x0e\x4b\xf7\xbf\xf7\x70\x15\xb0"
+"\xfb\x27\x07\xf7\x09\x90\xa7\xbb\xca\x1b\xc1\xae\x65\x3c\x9f\x1f\xa3\x06\x84\xf7\x2a\x05\x79\x06\x7f\x89\x81\x83\x7c\x1b\x83\x84"
+"\x8d\x91\x7e\x1f\x98\x6e\x77\x90\x71\x1b\xfb\x07\x34\x25\xfb\x1a\xfb\x1b\xe4\x27\xf7\x0c\xe4\xc6\xbe\xed\xa7\x1f\x6d\x94\x05\x46"
+"\x73\x65\x6b\x51\x1b\x5d\x6a\xa3\xb7\x7d\x1f\x82\xa6\x89\xa2\x89\xc2\x08\x0e\x20\xf7\xd7\xf8\x64\x15\x79\x06\x79\x8a\x81\x7f\x7d"
+"\x1b\x84\x81\x8e\x93\x75\x1f\x97\x6c\x80\x8d\x76\x1b\x3e\x4e\x52\x44\x52\xac\x5b\xcf\x64\x1f\xde\x5b\x8b\x8b\x9e\x79\x08\x95\x81"
+"\x91\x7d\x7e\x1a\x6d\x6b\x71\x67\x53\x51\xbc\xcd\x78\x1e\x7b\x06\x93\xfb\x2a\x05\x99\x06\xa0\x93\x93\x92\x9b\x1b\x91\x91\x8a\x88"
+"\x91\x1f\x78\xb8\x9e\x86\xa8\x1b\xda\xcc\xc8\xd5\xc7\x69\xbb\x44\xb3\x1f\x30\xbe\x8b\x8b\x7e\x97\x08\x83\x94\x85\x98\x98\x1a\xa7"
+"\xa6\xa1\xae\xbd\xbb\x62\x47\xa7\x1e\x98\x06\x0e\xfb\x6e\xf7\x62\xf8\x58\x15\xfb\x43\x76\x91\x5b\x1d\xfb\xba\x5d\x1d\x85\x77\xf7"
+"\x76\x9f\x84\x06\x6d\x7b\xa1\xb0\x8d\x1f\x45\xf8\xd9\x15\x65\x6c\x6d\x65\x65\xa9\x6c\xb1\xb1\xa9\xaa\xb1\xb0\x6c\xaa\x67\x1f\x0e"
+"\xfb\x6e\xf7\x63\xf8\x58\x15\xfb\x43\x76\x91\x5b\x1d\xfb\xba\x5d\x1d\x85\x77\xf7\x76\x9f\x84\x06\x6d\x7b\xa1\xb0\x8d\x1f\xfb\x31"
+"\xf8\xd8\x15\x6b\x6e\x6d\x6a\x67\xa7\x6e\xac\xaf\xa6\xa7\xae\xaf\x6f\xa8\x68\x1f\xf7\x45\x16\x6b\x6f\x6d\x6a\x67\xa6\x6e\xad\xae"
+"\xa7\xa7\xae\xaf\x6e\xa8\x68\x1f\x0e\xfb\x37\xf7\x8f\xf8\x58\x15\xfb\x47\x76\x95\x5b\x1d\xfb\xe8\x07\x6e\x07\x8d\x6d\x05\x8e\x53"
+"\x8b\x88\x83\x1a\x70\x84\x7b\x80\x84\x87\x93\x97\x8f\x8b\x8e\x8c\x8e\x1e\x8c\x9c\x05\xaa\x74\xa3\x6f\x6e\x72\x70\x6a\x5d\xb7\x6d"
+"\xd0\xe1\xc0\xbf\xe2\x1e\x40\xf9\x47\x15\x63\x6b\x6c\x64\x63\xaa\x6b\xb3\xb1\xab\xab\xb2\xb2\x6c\xab\x65\x1f\x0e\xf7\xb0\xf7\xbf"
+"\x16\xf7\x77\x06\xf7\x02\xc7\xb7\xdc\xe3\x4a\xbc\xfb\x0b\x7b\x87\x8b\x89\x71\x1f\xf7\x05\x07\xb0\x89\x9b\xa0\xa8\x1b\xa0\xfb\xf5"
+"\x76\x07\xb8\x89\x91\x7f\x36\x1a\x43\x07\x37\x88\x53\x84\x6d\x1e\x6e\x85\x80\x79\x7f\x1b\x85\x88\x8f\x90\x8d\x8b\x8b\x8d\x95\x1f"
+"\x8c\x91\x8b\x8b\x8f\x1a\xa8\x75\xa0\x6c\x6a\x75\x74\x68\x5d\xa9\x6d\xb9\xb2\xa9\x9e\xae\x9c\x1e\x9f\xb3\x91\xbd\xf7\x10\x1a\xf7"
+"\x31\xee\xfb\xe5\x07\x8d\x67\x7c\x77\x6e\x89\x08\xf7\x3b\xf7\x62\xb1\x1d\xf7\xc1\xf7\xf3\xf7\x71\x15\xfb\x23\xad\x1d\x7d\x84\x8b"
+"\x89\x71\x1f\xf7\x05\xa8\x0a\x89\x9b\x76\x89\x67\x08\xfb\x07\xfb\x06\xf7\x07\x07\x89\xae\x99\x3e\x1d\x89\x9a\x76\x89\x67\x08\xfb"
+"\xbb\x07\x8d\x67\x7c\x48\x0a\x8e\x7d\xa0\x8d\xad\x08\xf7\x23\x07\xf7\x83\x90\x15\x9c\x06\xbc\xa4\x6a\x48\x50\x75\x6b\x63\x75\x84"
+"\x93\xa3\x1f\x0e\xc7\xad\xf8\x9b\x15\xce\xfc\x4d\x06\xb7\x1d\xf7\x92\x07\xbc\xa5\x9d\x9c\xa6\x1b\xa1\x96\x76\x5e\x1f\xfb\x92\x07"
+"\x8c\x6a\x80\x78\x71\x85\x08\x77\xf7\x5f\x9f\x07\x6e\x8d\x7c\x9f\x8d\xaf\x08\xf7\x80\x07\xe9\x63\xc0\x43\x62\x67\x74\x5a\x63\x1e"
+"\xf7\x16\xf7\x3e\xb0\xfb\x3e\xed\xfb\x42\x77\x92\x07\xa8\x88\x9a\x77\x89\x68\x08\x77\x48\x07\x0e\xdb\x54\x0a\x89\xc7\x15\xf7\x2e"
+"\xed\x05\xa0\x98\x94\x98\x9b\x1a\x9f\x7e\x97\x76\x7b\x82\x86\x79\x79\x1e\xfb\x27\xfb\x29\x05\x0e\x8f\x6e\x1d\x7c\xf7\x94\x15\x8c"
+"\x83\x8b\x8a\x89\x1a\x75\x76\x7d\x6a\x69\x76\x99\xa1\x1e\x93\x07\x8c\x92\x8b\x8e\x90\x1a\xa0\x79\x9c\x72\x72\x79\x79\x70\x5c\xc7"
+"\x68\xd9\xdc\xc7\xae\xba\xa6\x79\x9d\x72\x72\x79\x7b\x73\x1e\x0e\xf7\xae\xf9\x82\x16\x9f\x79\x07\x56\x8e\x7c\x9d\x8d\xc5\x08\xf8"
+"\x67\x07\x89\xc3\x9a\x9d\xc0\x8d\x08\x9d\x9f\xfb\xcf\x66\x1d\x79\x89\x53\x08\xfc\xa4\xfb\x96\xf8\xa4\x07\x89\xc3\x9a\x9d\x89\x0a"
+"\x79\x89\x53\x08\xfc\x67\x07\x8d\x51\x7c\x79\x56\x88\x08\x78\x77\xf7\x7b\x06\xcc\x8e\xb4\x58\x93\x2c\x08\x9a\x06\x99\x06\x93\xea"
+"\xb4\xbf\xcc\x87\x08\x0e\xdb\xcb\xf8\x58\x15\x3d\x1d\x67\x8d\x7b\x75\x6e\x1b\x76\xea\x07\xd8\x8d\xb2\x67\x8e\x3d\x08\x9f\x06\x8e"
+"\xd9\xb2\xaf\xd8\x89\x08\xea\xa0\x06\x6e\x7b\xa0\xb0\x8d\x1f\xb9\x0a\xfb\x61\xc9\x1d\x8a\xad\x97\x9f\xa5\x90\x08\x9f\x07\x0e\x4d"
+"\xad\xf7\x6e\x15\x8c\x4d\x94\x66\xa2\x63\x08\x53\xab\xbd\x6a\xc1\x1b\xbf\xc0\xaa\xbe\xae\x1f\xa9\xb8\x9a\xc2\xd0\x1a\xd8\x77\xc3"
+"\x62\xb2\x1e\xaa\x6c\x60\x9c\x5e\x1b\x40\x4b\x5b\x37\x68\x1f\xa3\x7f\x05\xbc\xa3\xa6\x9f\xb5\x1b\xcd\xb7\x4b\x23\x8e\x1f\x8d\x66"
+"\x15\x28\x8a\x74\x55\x60\x1b\x77\x7a\x9b\xa3\x85\x1f\x84\xa3\x8a\x92\x8a\xdd\x08\x0e\xf7\xe5\xf9\x39\xf9\x47\x15\x48\x06\xfc\x73"
+"\xfd\x63\x05\xcd\x06\xec\xf8\x5b\x15\x6d\x6e\x79\x81\x72\x1b\x4e\x5f\xd4\xf0\xcb\x9e\xb4\xa9\x9d\x94\x7e\x6e\x8f\x1f\x5d\x90\x9a"
+"\x78\xac\x1b\xa6\x9d\x9d\xa6\xbc\x59\xb1\x4c\x2a\x48\x3e\xfb\x01\x24\xca\x42\xe2\xc6\xb8\xa9\xc7\xad\x1f\xf7\xf1\x48\x15\x2c\x49"
+"\x40\xfb\x00\x21\xcd\x42\xea\xec\xcb\xd3\xf7\x00\xf6\x49\xd6\x2c\x1f\x71\x04\xb4\x98\x67\xfb\x01\xfb\x15\x7f\x66\x61\x66\x7b\xaf"
+"\xe0\xf7\x2f\x95\xae\xb6\x1f\x0e\xfb\x0d\xf7\x52\xf7\x94\x15\x8e\x8e\x93\x93\x99\x9a\xc6\xc9\x90\x91\x9b\xa1\x08\xb9\xcd\xa7\xd4"
+"\xc1\x1a\xc6\x69\xb3\x57\x2b\x47\xfb\x17\xfb\xae\x59\x1e\x7c\x77\x85\x83\x83\x82\x08\x65\x60\x8b\x8b\x7c\x1a\x7c\x95\x7a\x93\x92"
+"\x9b\x99\xa1\x9e\x1e\x8a\x81\x8b\x81\x87\x1a\x65\x8e\x68\x90\x7b\x1e\x5e\x97\xa9\x72\xb3\x1b\xaa\xa8\x9c\xab\xa2\x1f\x9c\xa3\x96"
+"\xa6\xa0\x1a\x9a\x83\x94\x7f\x80\x85\x86\x7a\x83\x1e\x68\x79\x84\x82\x80\x1b\x83\x86\x94\x9b\xa5\x93\xcc\x99\xdf\x1f\x95\xd7\x15"
+"\xf7\x45\xa6\xa5\xdb\xac\x1b\x98\x93\x7e\x77\x54\x59\x21\x52\x4c\x1f\x0e\xf8\x91\xf9\x00\x7e\x15\xf8\xa4\x07\xb0\x8d\x9b\x92\x9b"
+"\x1e\x9c\x92\x96\x97\x95\x1b\x91\x8e\x88\x86\x1f\x87\x07\x89\x84\x8b\x89\x85\x1a\x6d\xa0\x76\xa9\xab\xa1\xa4\xae\xb8\x6a\xaa\x5c"
+"\x65\x6f\x79\x68\x78\x1e\x7d\x70\x86\x6d\x4e\x1a\xfb\xa5\x07\xfb\xcc\xf8\x47\x05\xfb\x56\x71\x06\xb2\x89\xa1\x7b\xa6\x60\x08\xfc"
+"\x3b\x07\x46\x80\x6c\x71\x86\x87\x8f\x90\x8c\x8b\x8d\x8c\x8d\x1e\x8d\x92\x8c\x8e\x92\x1a\xa7\x75\xa0\x6c\x6b\x75\x71\x65\x5a\xac"
+"\x6b\xbb\xb0\xa8\x9d\xae\x9d\x1e\x99\xa6\x90\xa9\xc7\x1a\xf8\x05\x07\xf8\x18\xfc\xaf\x05\xf7\x79\xf8\x6f\x15\x30\x49\x4a\x30\x31"
+"\xcc\x49\xe5\xe8\xcc\xcb\xe7\xe6\x4a\xcc\x30\x1f\x8a\x69\x15\xb6\xa4\x5e\x3e\x3c\x73\x60\x5f\x60\x73\xb7\xda\xd7\xa4\xb8\xb5\x1f"
+"\xfb\x16\xfc\x40\x15\xf7\x9a\xd0\xfb\x9a\x06\x0e\xc9\xf8\xb3\xf8\x57\x70\x1d\xc9\xf7\xbd\xf8\xa5\x15\x8d\x93\x91\xa7\x05\x9a\xce"
+"\x8c\x90\x9b\x1a\xa5\x79\x9e\x72\x73\x79\x77\x71\x80\x8d\x7d\x8f\x78\x1e\x96\x60\x8d\x80\x8d\x81\x8b\x89\x8e\x7e\x19\xf7\xaf\x3d"
+"\x70\x1d\x8f\x23\x1d\xf7\x0e\xf8\x1c\x22\x0a\xfb\x37\xc5\xf7\x82\x15\xf7\x42\xfb\xe8\x05\x7c\x93\x95\x83\x97\x1b\x93\x90\x8f\x92"
+"\x92\x89\x93\x88\x93\x1f\xfb\x17\xf7\xdd\xf7\x17\xf7\xdd\x05\x8e\x93\x8d\x93\x92\x1a\x93\x86\x8f\x83\x7f\x83\x85\x79\x81\x1e\x0e"
+"\xfb\x37\xf7\xa7\xf7\x82\x15\xfb\x42\xf7\xe8\x05\x9c\x82\x82\x92\x7f\x1b\x83\x86\x87\x83\x85\x8d\x83\x8e\x82\x1f\xf7\x17\xfb\xdd"
+"\xfb\x17\xfb\xdd\x05\x88\x84\x89\x83\x84\x1a\x83\x90\x87\x93\x97\x93\x91\x9c\x95\x1e\x0e\x8f\x76\x1d\x91\x70\x90\x7f\x97\x7f\x08"
+"\x67\x5b\x81\x76\x6f\x1a\x5c\xb8\x69\xc8\xa0\x0a\x80\x88\x7d\x1b\x67\x6e\x9f\xa3\x9e\x9a\x9d\x9f\x92\x1f\xc5\x9d\x90\x8d\xaf\xb2"
+"\x08\xfb\x57\xc4\x15\x6c\x70\x77\x7f\x73\x1b\x6d\x76\xa6\xb3\xc5\xb5\xb5\xdb\xa0\x1f\x0e\xf8\x8c\xf9\x38\xf7\x6b\x15\x6b\x72\x78"
+"\x7e\x73\x1b\x78\x7d\x90\xa5\x50\x1f\xa7\x4d\x6d\x94\x6c\x1b\x55\x67\x73\x4f\x69\x8b\x0a\xad\xa2\xc8\xb6\x1f\x54\xf7\x80\x15\x6a"
+"\x72\x78\x7e\x73\x1b\x78\x7e\x8f\xa6\x4f\x1f\xa7\x4d\x6d\x94\x6c\x1b\x55\x67\x72\x50\x69\x1f\xc0\x5d\x05\xab\xa2\x9c\x95\xa8\x1b"
+"\xaf\xa8\x82\x71\xba\x1f\x72\xb9\xa5\x83\xac\x1b\xb9\xab\xa1\xca\xb8\x1f\x0e\x8f\xf8\x6d\xcb\x15\x81\x81\x05\x88\x88\x88\x8a\x86"
+"\x1b\x7d\x84\x93\x9c\x1f\xf7\x99\x07\xdf\x3f\xc0\xfb\x0c\xfb\x07\x3f\x59\x3f\x61\xa3\x73\xb4\xb3\xa7\xa3\xad\x99\x86\x98\x7e\x9b"
+"\x1e\x82\x95\x88\x91\x91\x1a\xa0\xa6\x9b\xaf\xc6\xa4\x70\x4e\x1e\x42\x07\xfb\x0c\x67\x5b\x77\x66\x72\x08\x5f\x6d\x77\x69\x60\x1a"
+"\x4e\xb9\x5e\xcc\xc4\xb9\x9f\xbd\xc2\x1e\x58\x96\xa1\x78\xbc\x1b\xb6\xaa\x9b\xb4\xb1\x1f\xfb\x57\xc4\x15\x6c\x70\x77\x7f\x73\x1b"
+"\x6d\x76\xa6\xb3\xc5\xb5\xb5\xdb\xa0\x1f\x56\xf8\x8d\x15\x51\x5a\x5b\x52\x4e\xba\x5c\xc6\xc7\xba\xba\xc6\xc6\x5b\xbb\x44\x1d\x70"
+"\x6a\x6c\x70\x71\x6a\x6c\x4c\x0a\x35\xcd\x22\x1d\xab\x9f\x93\x95\xa2\x1a\xa5\x78\x9d\x6e\x78\x60\x1d\xf9\x03\xf8\x37\x15\xfc\xa0"
+"\x06\xf7\x66\xdc\x74\xc0\xfb\xb2\xfb\x14\x05\x3e\x07\xf7\xb2\xfb\x13\xa2\xbf\xfb\x66\xdd\x05\xf8\xa0\x06\xfb\x66\x39\xa2\x57\xf7"
+"\xb2\xf7\x13\x05\xd8\x07\xfb\xb2\xf7\x14\x74\x56\x05\x0e\xf8\x1b\xf9\x66\x15\x4b\xfd\x03\x06\x39\xf7\x66\x57\x74\xf7\x13\xfb\xb2"
+"\x05\xd8\x06\xf7\x14\xf7\xb2\x56\xa2\x3a\xfb\x66\x05\x0e\xf9\x66\xf7\xf9\x15\xcb\xfd\x03\x07\xf7\x66\xdc\x74\xc0\xfb\xb2\xfb\x13"
+"\x05\x3e\x07\xf7\xb2\xfb\x14\xa2\xbf\xfb\x66\xdd\x05\x0e\xf7\xf9\x04\xf9\x03\x06\xfb\x66\x39\xa2\x57\xf7\xb2\xf7\x14\x05\xd8\x07"
+"\xfb\xb2\xf7\x13\x74\x56\xf7\x66\x3a\x05\xfd\x03\x06\x0e\xf8\x1b\x16\xf9\x03\x07\xdc\xfb\x66\xc0\xa3\xfb\x14\xf7\xb1\x05\x3e\x06"
+"\xfb\x13\xfb\xb1\xbf\x73\xdd\xf7\x66\x05\xfd\x03\x07\x0e\xf7\xde\xf9\x03\x7a\x0a\xa2\xb4\x0a\x74\x05\x0e\xf7\x5b\x2c\x15\x51\xf7"
+"\xdb\xc5\x07\xfb\x58\xf9\x42\x7a\x0a\xa3\xb4\x0a\x73\x05\x0e\xaa\xf7\x5f\xb1\x15\x69\xa8\xa5\x7d\xad\x1b\xf4\xe4\xf6\xf7\x13\xd0"
+"\x72\xca\x60\xaf\x1f\x80\x94\x7e\x93\x6f\x98\x08\xc4\xae\xa6\xb5\xc2\x1a\xd2\x4e\xba\x2f\x3e\x45\x69\x52\x65\x1e\x71\x65\x81\x61"
+"\x49\x1a\xfc\xfa\xf7\x13\x07\xf9\x08\x04\xf7\x13\xa0\xc4\xba\xac\xa3\x65\x55\x66\x87\x68\x82\x6b\x1e\x94\x77\x82\x8e\x7d\x1b\x6e"
+"\x77\x7a\x73\x74\x9a\x7b\xa1\x9e\x99\x91\x9c\xa0\x1f\x9e\x67\x92\x5a\x2a\x1a\x4b\x86\x69\x7d\x6b\x1e\x72\x80\x76\x7a\x76\x1b\x74"
+"\x76\x9a\xab\x76\x1f\x0e\x57\x36\x1d\xfb\x8c\xf8\x49\x38\x0a\x57\x36\x1d\x81\xf8\xf9\x93\x0a\x60\xf8\x2f\xf7\x01\x15\x61\x66\x71"
+"\x7d\x62\x1b\x34\x54\xe1\xf7\x1d\xf2\xab\xca\xbf\x9b\x99\x83\x80\x92\x1f\x90\x81\x8b\x8b\x62\x62\x1d\x34\xfb\x1d\x27\x21\xfb\x24"
+"\xfb\x1f\xe4\x29\xf7\x11\xd9\xc3\xaa\xd5\xc4\x1f\x49\xf8\x49\x15\xc3\x06\xfb\x0e\x52\x1d\x57\x36\x1d\xfb\x47\xf8\xd4\x2a\x1d\x69"
+"\xf8\x4e\xf8\x56\x15\xfb\x17\x06\x30\xfb\x57\x05\xf7\x26\x5d\x5e\xc6\x4b\x1b\x64\x70\x72\x68\x6b\xa2\x71\xa8\x94\x93\x8e\x94\x97"
+"\x1f\x94\x97\x91\x8e\x92\x1b\x99\x99\x7f\x75\x9a\x1f\x98\x76\x90\x7c\xa7\x31\xfb\x55\xfc\x0e\x18\xf7\x17\x06\xf7\x0a\xf7\x8b\xb3"
+"\xfb\x1a\xc3\xfb\x10\x9f\x8c\x19\x8e\x8f\x8d\x8d\x8f\x1f\xe0\xbd\x83\xa1\x05\x87\x7f\x86\x8a\x81\x1b\x50\x68\xc2\xf7\x49\x52\x1f"
+"\x0e\xf8\x8c\xf8\x8b\xf9\x4b\x15\xfb\x5c\xfb\x36\xfb\x35\xfb\x5c\xfb\x58\xf7\x36\xfb\x36\xf7\x57\xf7\x59\xf7\x37\xf7\x37\xf7\x57"
+"\xf7\x58\xfb\x36\xf7\x39\xfb\x55\x1f\x87\xfb\xd0\x15\xfb\x52\xf7\x50\x05\xb8\xc2\xcc\xa2\xd1\x1b\xd0\xcc\x74\x60\xc3\x1f\xb3\x63"
+"\x15\xbb\x51\xa2\x4d\x42\x1a\x43\x74\x4b\x5d\x53\x1e\xfb\x54\xf7\x57\x05\xf7\x2c\xfb\x7f\x15\x5f\x54\x48\x73\x45\x1b\x45\x4b\xa2"
+"\xba\x50\x1f\xf7\x55\xf7\x55\x05\xfb\x7d\xfb\x2d\x15\x5f\xc1\x74\xcb\xd1\x1a\xd3\xa2\xcb\xba\xc4\x1e\xf7\x52\xfb\x50\x05\x0e\xf8"
+"\x8c\xf9\x83\x16\x9f\x07\x24\x9f\x6e\x99\x5d\xbb\x5c\xbf\x7a\xc0\x8a\xeb\xa0\x66\x93\x7e\x97\x7d\x08\x5d\xb2\xc9\x6c\xc0\x1b\xe6"
+"\xd2\xd5\xe9\xe5\x4a\xd3\x3a\x6e\x84\x89\x6e\x50\x1f\xa7\xb4\x96\xaa\xb0\x1a\xe3\x42\xd2\x30\x2e\x44\x45\x30\x68\x92\x79\xad\x55"
+"\x1e\xa3\x5a\x77\x91\x6c\x1b\x40\x49\x3f\x34\x2e\xd4\x42\xe7\xdc\xcf\xbd\xe6\xb8\x1f\x8c\x7b\x8b\x80\x86\x1a\x43\x65\x3a\x55\x5f"
+"\x1e\x6b\x72\x74\x82\x2c\x77\x08\x77\x07\x0e\xf7\x6b\xf8\xab\x5b\x0a\xf7\x5e\xae\x15\xf3\x36\x0a\x94\x93\x83\x80\x68\x6d\x66\x47"
+"\x5b\x1f\x0e\xc7\xf7\xe4\xf8\xb5\x15\xfb\x1a\x07\xb9\x60\x6d\x9b\x5d\x1b\xfb\x02\x39\x20\xfb\x25\xfb\x1d\xd7\x29\xf4\xc0\xac\x9b"
+"\xbd\xba\x1f\x4a\x07\xb9\x98\xa4\x90\xc9\x92\xc9\x93\x18\xa2\x07\x5e\x8e\x7d\x98\xb5\x1a\xf8\x50\xc6\xb7\x50\xe2\xbb\x0a\x86\x2f"
+"\x5f\x07\xe7\xfc\x45\x7e\x0a\x0e\xa2\xf8\x46\xf8\xea\x15\xa8\x29\x4f\x96\x48\x1b\x3f\x62\x74\x62\x77\x96\x78\xa4\x77\x1f\x9b\x7e"
+"\x92\x87\xcb\x64\x51\x7d\x6e\x7b\x6a\x67\x08\x65\x60\x79\x57\x49\x1a\xfb\x26\xe3\x28\xf7\x16\xf7\x14\xe8\xf2\xf7\x21\xd6\x6f\xcc"
+"\x58\xb9\x1e\x6c\xa7\x75\x99\xfb\x00\xcb\x08\x4d\xaf\x83\x92\x99\x1a\x97\x99\x92\xa3\xbe\xbd\x7d\x59\xf7\x13\x1e\xfb\x45\x25\x15"
+"\xc3\xa5\x46\xfb\x25\xfb\x16\x6e\x43\x58\x57\x6e\xd3\xf7\x17\xf7\x22\xa5\xd2\xc0\x1f\x0e\xf8\x8c\xf7\x8e\xf7\xf1\x15\xf0\xfb\x11"
+"\xf7\x10\xfb\x45\xb1\x40\xc7\xf7\x00\xf7\x06\xf7\x35\xf3\xf7\x10\x3a\xe8\xfb\x36\xf7\x78\x68\xd2\x54\x24\x40\x21\xfb\x26\xfb\x4b"
+"\x08\x0e\xfb\x37\xda\xf8\xef\x9c\x0a\xf7\x45\xc4\x1d\x20\x62\x15\xae\x06\x8f\x9f\x8e\x97\x8d\x1a\x9b\xcd\x8b\x8d\x9a\x1a\xa4\x7a"
+"\x9e\x73\x74\x7a\x78\x72\x7b\x8b\x89\x9b\x4a\x1e\x8d\x82\x8c\x82\x8d\x83\x08\x0e\x57\x25\x1d\xae\xf8\x2d\x15\x4b\x7a\x6e\x74\x91"
+"\x1d\x57\x25\x1d\xe8\xf8\x3a\x21\x0a\x57\x25\x1d\x3e\xf8\x15\x2a\x1d\xf8\x8c\xf9\x93\xf7\x6c\x15\xc8\xfc\x62\x07\x91\xf6\xc3\xbd"
+"\xf7\x01\x89\x08\xf7\xb7\xc9\xfb\xac\x5c\x1d\x42\x2c\x1a\xfb\x08\xb8\x38\xbc\x0a\xc9\xfb\xb7\x06\xfb\x01\x89\x53\xbd\x85\xf5\x08"
+"\x0e\x57\x25\x1d\xe4\xf7\xf7\x22\x0a\xc7\xf7\x68\xf8\x61\x15\xfb\x53\x73\x06\xb7\x84\x93\x82\x8c\x60\x08\xfb\xba\x3a\x1d\xa7\x95"
+"\xb8\xa9\xaa\x1b\xae\x9c\x70\x53\x1f\xfc\x37\x07\x56\x7d\x74\x69\x78\x7e\x92\x95\x90\x8e\x92\x91\x95\x1e\x95\x9a\x8f\x97\x95\x1a"
+"\xa9\x71\xa3\x6a\x66\x72\x72\x67\x50\xc5\x62\xdd\xd0\xc0\xa6\xbc\xa7\x1e\x9e\xab\x93\xb1\xc6\x1a\xf7\xde\x07\xe1\x56\xc2\x39\x4f"
+"\x5d\x6f\x50\x66\x1e\x0e\x57\xf8\x39\xf7\x89\x15\x85\xdf\x7c\xba\x6b\xb1\x08\xb2\x6b\x5c\x9f\x53\x1b\xfb\x10\x37\x28\xfb\x26\xfb"
+"\x25\xdd\x2a\xf7\x0e\x8f\x92\x8b\x8c\x93\x1f\x71\x66\x84\x7a\x72\x1a\x5c\x99\x0a\x77\x81\x88\x7b\x1b\x61\x76\xa2\xb7\x9e\x90\x94"
+"\x9e\x98\x1f\xb8\xab\xa1\xa1\xaf\xc0\x73\x99\x18\xbe\x1d\x86\xb0\x15\xf7\x0c\x8e\x9d\xb3\xbc\x1b\xba\x9a\x69\xfb\x03\x8d\x1f\x7c"
+"\x07\x0e\x46\x74\x1d\x0e\x46\x74\x1d\xfb\x20\xf8\x15\x15\x8f\xa1\x8e\x97\x8d\x1a\x9b\xd0\x8c\x8e\x9b\x1a\xa4\x79\x9f\x72\x73\x79"
+"\x78\x71\x7a\x8c\x85\x9b\x4a\x1e\x8e\x77\x8e\x7f\x8c\x87\x08\x0e\xf8\x8c\xf7\x9d\x7e\x15\xf8\x6a\xd6\xfc\x6a\x06\xf7\x1d\x04\xf8"
+"\x6a\xd6\xfc\x6a\x06\xf7\x1d\x04\xf8\x6a\xd6\xfc\x6a\x06\x0e\xf3\xf8\x9e\xf7\x8f\x15\x8a\xd4\x86\xae\x7e\xb0\x08\xda\x6d\x42\xbc"
+"\x30\x1b\xfb\x1a\x36\x23\xfb\x39\xfb\x36\xdd\x29\xf7\x1c\xf2\xd0\xbf\xec\xa7\x1f\x62\x06\x45\x6e\x55\x68\x40\x1b\x61\x68\x97\xa2"
+"\x73\x1f\x7a\x9c\x82\x9c\x80\xb2\x08\xf3\x07\xf7\xaf\xae\x15\xfb\xad\xe8\x06\xd5\xab\xaf\xa6\xcf\x1b\xc0\xb0\x79\x62\xac\x1f\x96"
+"\x7d\x8f\x83\x92\x77\x08\x0e\xd3\x65\x0a\x0e\xd3\x65\x0a\xa7\xf8\xa5\x15\xb0\x06\x8f\xa1\x8e\x97\x8d\x1a\x9b\xd0\x8c\x8d\x9b\x1a"
+"\xa6\x79\x9e\x72\x73\x79\x77\x71\x80\x8d\x7c\x8f\x79\x1e\x92\x6c\x90\x79\x8c\x86\x08\x0e\xd9\xf7\x3c\xf7\x83\x15\x90\xe1\x91\xab"
+"\xa5\xe2\x08\xa7\xeb\x8d\x95\xdd\x1d\x6f\x96\x65\x1e\xb2\xfb\x17\x91\x70\xc0\x1d\xb8\x66\xb0\x5e\x1f\xf7\xae\xe3\x15\x90\xe1\x91"
+"\xaa\xa4\xe3\x08\xa8\xea\x8d\x96\xdd\x1d\x6d\x96\x67\x1e\xb2\xfb\x15\x91\x6e\xc0\x1d\xb9\x67\xaf\x5d\x1f\x0e\x43\xbd\x16\xf7\xd9"
+"\xf8\xd5\xfb\xd9\x37\xf7\x85\xfb\x36\xfb\x85\x37\xf7\x85\xfb\x37\xfb\x85\x06\x0e\xf8\x19\xf7\xa7\x15\xb3\x93\x9c\x90\xa4\x9a\x08"
+"\xd0\xb4\xb4\xd2\xd9\x1a\xf7\x0e\x29\xed\xfb\x0e\xfb\x0d\x29\x29\xfb\x0e\x3d\xb4\x44\xd0\x62\x1e\xa3\x7c\x9c\x85\xb3\x84\x08\x3e"
+"\xfb\x29\x57\xf7\x29\xfb\x2c\xc3\xf7\x2c\xf7\x28\xbf\xfb\x28\x07\x6c\xf8\x5e\x15\xe7\xd5\x43\x31\x30\x42\x42\x31\x31\x42\xd4\xe5"
+"\xe3\xd4\xd6\xe2\x1f\x0e\x8f\xf7\xa9\xab\x15\x4b\xac\x69\xf4\xf7\x37\x1a\xf3\x9b\xe6\xa7\xc1\x1e\xb6\xa1\xa7\x9f\xb1\x1b\xb4\xb3"
+"\x71\x5f\xa5\x1f\x9e\x6b\x95\x6a\x91\x57\x08\xa5\xf7\x73\x74\x06\x6c\x88\x80\x7b\x7c\x1b\x83\x84\x8d\x8f\x84\x1f\xa8\x57\x77\x92"
+"\x64\x1b\xfb\x28\xfb\x07\xfb\x2f\xfb\x5b\x29\xa4\x37\xbc\x4c\x1f\x51\xb7\xc9\x6f\xdf\x1b\xd5\xbf\xa5\xcf\xc6\x1f\x75\x9e\x71\x6c"
+"\x78\x7a\x6d\x7c\x19\xf7\x25\x07\x8c\xb3\x8f\x98\x9f\xa4\x08\x71\x9a\x9a\x81\xa3\x1b\xad\x9e\x9f\xae\xb1\x74\xa4\x69\x69\x77\x78"
+"\x4d\x6c\x1f\xd1\xfb\x18\x77\x07\xa7\x88\x91\x81\x8d\x63\x08\x0e\x6f\x9e\xf8\x26\x15\x92\x79\x05\x90\x96\x90\x8d\x92\x1b\xa1\xa8"
+"\x64\x40\xab\x1f\xa8\x48\xae\xfb\x01\x9b\x3e\x08\x70\x57\x83\x6f\x63\x1a\x55\xa6\x6b\xb8\xb6\xa5\xae\xc5\xad\x89\xa3\x80\xcf\x1e"
+"\x99\xb0\x95\x9e\xb3\xd9\x08\xcc\xf7\x0f\x9b\xb4\xb9\x1a\xb7\x70\xab\x68\x6b\x6d\x6d\x6a\x7d\x92\x79\x96\x7c\x1e\xa9\x62\x8b\x8b"
+"\x7a\x1a\x75\x75\x52\x6a\x4c\x1e\x82\x7a\x85\x7f\x89\x87\x8a\x89\x88\x85\x88\x84\x82\xcc\x78\xd5\x70\xda\x08\xdc\x70\x63\xc7\x71"
+"\x1b\x8a\x88\x8a\x89\x86\x1f\x0e\x8f\x32\x0a\xf7\x0a\xf7\x8d\x72\x0a\x8f\x32\x0a\xf7\x10\xe1\x20\x0a\x8f\x32\x0a\xd8\xf8\x05\x15"
+"\x23\x50\x5e\x50\x3d\x1a\x4c\xaf\x61\xc1\xb8\xa8\xa8\xb8\xb6\x71\xa7\x64\x87\x86\x8b\x8a\x85\x1e\x8a\x89\x88\x8b\x8a\x1b\x81\x84"
+"\x93\x96\xae\xa9\xb0\xce\xba\x1f\x0e\x99\xf7\x94\xf9\x2b\x15\x6a\x70\x71\x6a\x6a\xa5\x71\xac\xac\xa5\xa5\xac\xab\x71\xa6\x6b\x1f"
+"\xf7\x77\xfb\x9d\x15\xc0\xfb\x16\x07\x9c\x60\x6f\x90\x63\x1b\xfb\x0c\xe6\x1d\x9f\x7e\xb9\xd1\x1d\x82\x6a\x72\x82\x0a\x9f\x98\x9b"
+"\xa2\x96\x1e\x90\x97\x8b\x8b\xcc\x1b\xb9\xa5\x91\x9f\xad\x1f\xb8\xa5\xa2\xb3\xc1\x1a\xb3\x7f\xa9\x6f\xa7\x1e\xfb\x35\xb7\x15\xba"
+"\x9e\x65\x2e\x2e\x78\x67\x5c\x5b\x79\xae\xe9\xe9\x9d\xb0\xbb\x1f\xdf\xfc\x82\x15\xc1\xa5\x7b\x69\x5c\x55\x72\x27\xee\x1d\x0e\xf8"
+"\x8c\xf7\xb7\x8c\x15\xf8\x3c\xdf\xfc\x3c\x06\x9c\x04\xf8\x3c\xf7\x6c\x05\x9f\x07\xfc\x3c\xf7\x84\x05\xfb\x05\x07\xf7\xb0\xfb\x34"
+"\xfb\xb0\xfb\x1e\x05\x0e\xc7\xd0\xf8\xb4\x15\xfc\x60\xd3\x1d\x90\x7e\x9a\xb0\x1a\xf7\x9f\x07\x8f\x92\x95\x95\x95\x1e\xa1\xa0\xa4"
+"\x97\xa2\x1b\xae\x9c\x70\x53\x1f\xfb\x86\x07\x8a\x65\x7e\x7b\x6a\x88\x08\x73\xf7\x7f\xa3\x07\x68\x8c\x7d\x9d\xb4\x1a\xa8\x1d\xf7"
+"\x29\xf7\x12\xb3\xfb\x12\xe7\x55\x1d\x81\x56\x63\x07\x0e\xd3\xf8\xaa\xa3\x15\x68\x8c\x7c\x9d\x8c\xb4\x08\xa8\x1d\xf7\xad\x55\x1d"
+"\xfc\x92\x3a\x1d\x8e\x92\x96\x56\x1d\xfb\x2b\xf9\x87\x15\xc4\x06\xfb\x0f\x52\x1d\xf8\x8c\xf8\x87\x6f\x15\x9f\xe5\xc7\xf2\xf7\x08"
+"\xf7\x25\x08\xeb\xf7\x0e\xab\xce\xdb\x1a\xdd\x45\xcf\x37\x5b\x5f\x76\x65\x6a\x1e\x75\x72\x81\x75\x7e\x5d\x7f\xaf\x83\x9d\x7f\x9d"
+"\x08\xbd\x6a\x58\xa8\x54\x1b\x36\x49\x47\x32\x48\xa0\x5e\xdf\xfb\x06\x1f\xf7\x2b\xfb\x5e\xb3\x47\xa5\x24\x08\x0e\xf8\x8c\xf7\x2d"
+"\x16\xf9\x50\xf8\x25\x06\xfb\xf3\xf7\xdc\xfb\xf1\xfb\xdc\x05\xc8\xfb\xf2\x15\xf7\xdc\x07\xf7\xb4\xf7\xa2\xf7\xb6\xfb\xa2\x05\xfb"
+"\xdc\x07\x0e\xfb\x6e\xf7\x92\x7d\x0a\xf7\x83\x07\x7b\x6c\x0a\xd4\xf7\x84\xf8\x61\x15\xfb\x47\x76\x91\x06\xa9\x9c\x76\x65\x89\x1f"
+"\xfb\xc0\x07\x66\x8d\x7a\x75\x6d\x1b\x85\x76\xf7\x7b\xa0\x84\x06\x6d\x7a\xa1\xb0\x8d\x1f\x44\xf8\xe5\x15\x63\x6c\x6c\x65\x63\xaa"
+"\x6c\xb2\xb1\xaa\xaa\xb2\xb1\x6c\xab\x66\x1f\xf7\xd5\xfb\x69\x15\xfb\x4b\x76\x95\x06\xa9\x9c\x75\x66\x89\x1f\xfb\xef\x07\x6e\x07"
+"\x8d\x6c\x05\x8e\x52\x8b\x88\x83\x1a\x70\x84\x7a\x7f\x84\x87\x93\x96\x8f\x8b\x8f\x8c\x8f\x1e\x8c\x94\x8c\x91\x8d\x1a\xaa\x74\xa4"
+"\x6e\x6d\x71\x6f\x6a\x5b\xb8\x6d\xd1\xe4\xc1\xc0\xe4\x1e\x3d\xf9\x55\x15\x62\x6b\x6b\x63\x63\xab\x6a\xb3\xb3\xab\xac\xb3\xb2\x6b"
+"\xac\x64\x1f\x0e\xfb\x6e\x29\x1d\xbb\xf9\x11\x22\x0a\xf8\x8c\xf8\x88\xf7\xa4\x15\x60\xb2\x87\x8e\x78\x99\x08\xa5\x6a\x60\x9b\x6a"
+"\x1b\x45\x51\x51\x45\x45\xc5\x51\xd1\xad\xb4\x9b\xa5\xad\x1f\x9e\x99\x8f\x8e\xb6\xb2\xb8\x64\x8f\x87\x9c\x7e\x08\x71\xae\xb4\x7b"
+"\xad\x1b\xd1\xc5\xc5\xd1\xd1\x51\xc5\x45\x6a\x60\x7b\x71\x69\x1f\x7a\x7e\x86\x87\x5f\x64\x08\xac\x6d\x15\xbe\xbe\xbf\xa9\xb3\x1b"
+"\xb7\xb0\x66\x5f\x5e\x66\x66\x5f\x64\x58\xa8\xc0\x56\x1f\x4a\x16\x57\x57\x57\x6e\x64\x1b\x5f\x66\xb0\xb7\xb7\xb0\xb0\xb8\xb2\xbe"
+"\x6e\x57\xbf\x1f\x0e\xf8\x8c\xf8\x65\xf7\x87\x15\x43\x8c\x63\x8e\x51\x1e\x8d\x6d\x8c\x6f\x7a\x1a\x6f\x82\x78\x7f\x88\x87\x8f\x93"
+"\x86\x1e\x9f\x81\x80\x93\x78\x1b\x72\x77\x78\x72\x6c\xa8\x74\xb4\xb1\xac\x9e\xad\x9e\x1f\xa4\xb8\x99\xf7\x00\xf7\x24\x1a\xf7\xd6"
+"\x07\xd6\x8a\xb0\x88\xc6\x1e\x89\xa7\x8a\xac\x96\x1a\xa7\x93\xa0\x95\x8f\x8d\x89\x85\x8e\x1e\x76\x96\x9b\x81\x9e\x1b\xa5\x9e\x9e"
+"\xa3\xac\x6e\xa1\x62\x65\x6a\x77\x6a\x78\x1f\x72\x5e\x7d\xfb\x00\xfb\x24\x1a\x0e\xf7\xe3\xfa\x25\x15\xfd\x71\x07\x8d\x40\x8e\x4f"
+"\x90\x41\x08\x8f\x60\x8c\x79\x80\x1a\x75\x85\x81\x7f\x84\x89\x8c\x96\x80\x1e\x95\x82\x7f\x90\x7d\x1b\x70\x76\x75\x70\x6c\xa7\x73"
+"\xae\xe2\xaa\xf5\xf7\xb7\x1f\xf9\x6a\x07\x0e\xf8\x2e\xfb\x66\x15\xf9\x71\x07\x89\xd6\x88\xc7\x86\xd5\x08\x87\xb6\x8a\x9d\x96\x1a"
+"\xa1\x91\x95\x97\x8f\x90\x89\x88\x8e\x1e\x78\x9e\x91\x88\x9d\x1b\xa6\xa0\xa1\xa6\xaa\x6f\xa3\x68\x34\x6c\x21\xfb\xb8\x1f\xfd\x69"
+"\x07\x0e\xf8\x8c\xf9\x64\x16\xf7\x8a\x07\xf7\x1d\x86\xad\x73\xb4\x1e\xca\x65\x44\xb1\x39\x1b\x3f\x4b\x6c\x53\x62\x1f\x6a\x5e\x85"
+"\x6b\xfb\x29\x1a\xfb\x8a\xc7\xf7\x8d\x07\xf0\x91\xb6\x9c\xaa\x1e\xb9\xa4\xc2\xa9\xc4\x1b\xc0\xbf\x71\x61\xa7\x1f\xa0\x6b\x91\x66"
+"\xfb\x06\x1a\xfb\x8d\x07\x0e\xf8\x8c\xf8\x89\xf9\x6e\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61"
+"\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37\xf7\x37\xfb\x5e\x1f\xfb\x01\xfb\x63\x15\xa9\xa4\x72\x6d\x6d\x72\x72\x6d\x6e\x71\xa4\xa8"
+"\xaa\xa4\xa4\xa9\x1f\xfb\x14\xfb\x05\x15\x96\x59\x96\x75\xa5\x6d\x08\x54\xbb\xc7\x71\xdc\x1b\xdc\xc7\xa5\xc2\xbb\x1f\xa5\xa9\x96"
+"\xa1\x96\xbd\x84\x36\x80\x62\x6d\x5e\x08\x4c\x61\x4b\x6b\x38\x1b\x3e\x4f\xa6\xc1\x61\x1f\x67\xba\x7c\xb8\x84\xe8\x08\xf7\xee\xf7"
+"\x05\x15\xa9\xa4\x72\x6d\x6d\x72\x72\x6d\x6e\x71\xa4\xa8\xaa\xa4\xa4\xa9\x1f\x0e\xfb\x6e\xf7\x93\x7d\x0a\xf7\x4e\x07\x68\x5d\x83"
+"\x76\x0a\xfb\x09\xf9\x47\x15\x60\x68\x68\x61\x5e\xac\x6a\xb7\xb7\xad\xac\xb7\xb7\x69\xad\x60\x1f\x0e\xfb\x4e\x7c\x1d\x0e\xfb\x4e"
+"\x63\x0a\xfb\x18\xf8\x85\x9e\x0a\xf7\x31\x16\x6b\x71\x72\x6b\x6b\xa5\x71\xab\xaa\xa5\xa5\xab\xaa\x71\xa5\x6c\x1f\x0e\xfb\x4e\x63"
+"\x0a\xfb\x3d\xf8\x59\x9c\x0a\xf7\x64\x16\x6e\x73\x74\x6e\x6e\xa2\x74\xa8\xa8\xa2\xa2\xa8\xa7\x74\xa3\x6f\x1f\x34\x62\x15\x8f\x9e"
+"\x8d\x94\x8c\x91\x08\x9b\xcf\x8b\x8b\x9a\x1a\xa4\x7a\x9e\x73\x75\x79\x78\x73\x7b\x8c\x86\x9a\x4c\x1e\x8e\x78\x8e\x80\x87\x1a\x0e"
+"\xfb\x4e\x7c\x1d\x42\xf8\x0f\x15\xb1\x06\x8f\xa1\x8e\x97\x8d\x1a\x9b\xcf\x8c\x8e\x9c\x1a\xa5\x78\x9e\x73\x73\x79\x77\x72\xaf\x0a"
+"\x0e\xfb\x6e\xf7\x93\x63\x1d\xb6\x83\x94\x82\x42\x1d\x84\x83\x5e\x81\x08\x73\xf7\x83\x07\xfb\x98\xf8\xb9\x64\x1d\x94\x88\x78\xb5"
+"\x1f\xa8\x7e\x05\x83\x9e\xa4\x85\x9e\x1b\xc5\xb0\xb2\xe3\xa2\xe0\x1d\x70\x1b\x7f\x49\x0a\x6f\x72\x91\x76\x1b\x4e\x67\x63\x36\x79"
+"\x1f\x0e\xfb\x30\xf7\x98\xf8\x61\x15\xfb\x5e\x73\x06\xbd\x88\x97\x80\x8c\x5e\x08\xfc\x6e\x07\x56\x7c\x74\x6a\xa0\x1d\xdc\xd1\xe7"
+"\x1d\xa2\xf8\xa2\x20\x0a\xc6\xf7\xc9\xf7\xbe\x15\xbc\xa6\xaa\xae\x9a\x1b\x8f\x91\x88\x88\x8e\x1f\x6c\xa9\x93\x86\xa2\x1b\xa9\xa3"
+"\xa6\xad\xaf\x74\x9f\x62\x59\x60\x6f\x4e\x61\x1f\x69\x5a\x6b\x59\x77\x66\x08\xf7\x75\x07\x54\x1d\xfb\xd6\xf7\x11\xf7\x6c\x07\xf7"
+"\x1d\xfb\x67\x05\x7f\x93\x92\x87\x96\x1b\x91\x92\x8d\x8e\x92\x1f\xf7\x05\xc2\x82\x9d\x05\x84\x7f\x85\x89\x83\x1b\x7d\x7f\x95\xa2"
+"\x7d\x1f\x66\xc4\x05\x0e\xc7\x6c\x1d\xfb\xc2\xfd\x9f\x8a\x1d\xc7\xf7\x72\xf7\x50\x15\x98\x9a\xde\xfb\x18\x05\x9b\x74\x8b\x8b\x82"
+"\x1a\x81\x84\x86\x7b\x89\x1e\x7e\x89\x05\x77\xf7\x6f\x9f\x07\x71\x8e\x86\x8f\x72\xb3\xfb\x23\xf7\x76\x18\xc9\xd0\xbc\xc3\x93\x91"
+"\xb6\x98\x19\x9f\xfb\x54\x77\x07\xb4\x85\x9c\x80\x77\x1a\x7a\x7d\x71\x75\x73\x1e\x33\x29\x05\xf7\x72\xfb\x47\x76\x92\x07\xa9\x8c"
+"\x9b\x75\x89\x67\x08\xfb\xc1\x07\x67\x8d\x7b\x75\x6d\x1b\x84\x77\xf7\x77\x9f\x87\x06\x6d\x7b\xa1\xaf\x8d\x1f\x0e\xfb\x6e\x34\x0a"
+"\xfb\x58\xf9\x76\x2b\x1d\x86\xab\x16\xf7\x1f\x06\xf7\x01\xf7\x8c\x99\x4f\xa7\x30\x9f\x55\x19\x65\x99\x94\x7c\x94\x1b\x8e\x8f\x8c"
+"\x8d\x8e\x1f\xd7\xbd\x84\x9b\x05\x87\x7f\x83\x89\x84\x1b\x65\x78\xa8\xf7\x05\x6a\x1f\x3f\xf7\x9a\x72\xe0\x89\x93\x7a\xaf\x19\xb7"
+"\x78\x70\xa1\x66\x1b\x60\x6e\x69\x57\x62\x9d\x71\xa8\x9f\x99\x98\xa3\x8f\x1f\xa8\x90\x8d\x8f\x96\x1b\x9f\x97\x6f\xfb\x09\xa9\x1f"
+"\x0e\x44\x34\x0a\x92\xf8\x1a\x15\xf3\x36\x0a\x94\x93\x83\x80\x68\x6d\x67\x47\x5a\x1f\x0e\xfb\x6e\x34\x0a\xfb\x4b\x40\x0a\x27\xf7"
+"\x92\x94\x1d\xcb\x91\x0a\xf8\x8c\xf9\x5a\x8c\x15\xdf\xfc\x3c\x37\x07\xf8\x3c\xf8\xd4\x15\xfc\x3c\xfb\x79\x05\x77\x07\xf8\x3c\xfb"
+"\x76\x05\xf7\x05\x07\xfb\xb0\xf7\x26\xf7\xb0\xf7\x2c\x05\x0e\x2e\x0a\xf7\x8a\xf8\x24\x15\xec\xdb\x05\xbd\x07\x2a\x3b\x05\xf7\x76"
+"\x5a\x1d\xfb\x7d\x07\x32\x43\x05\x59\x07\xe4\xd3\x05\xfb\x77\x98\x0a\xa3\x07\x6b\x7b\x9f\xb3\x8a\x1f\x0e\xfb\x6e\x8a\x16\xf7\xa4"
+"\xa3\x06\x47\x8c\x80\x96\x8a\xcc\x08\xf8\x6a\x07\xc1\x99\xa1\xae\x9c\x96\x84\x80\x86\x89\xbe\x0a\x6c\xa4\x74\xac\xb0\xa3\xa4\xaf"
+"\xc5\x52\xb3\x39\x49\x58\x73\x61\x70\x1e\x76\x68\x84\x64\x36\x1a\x53\x60\xc3\xfb\xdb\x06\x8a\x60\x80\x80\x5f\x87\x08\x0e\xf8\xc1"
+"\xf8\xe5\x15\x43\xbc\x9c\x79\x9c\x1b\x95\x93\x92\x95\x91\x8a\x8f\x84\x99\x1f\x74\xb6\x7a\xcb\xb7\x1a\xa9\x89\x91\x7e\x86\x84\x88"
+"\x83\x7e\x1e\x78\x70\x3d\x75\x60\x1b\x71\x8a\x83\x86\x7e\x1a\x75\xad\x81\xe2\x85\x1e\x25\xfb\x4d\x05\x97\x6c\x6e\x91\x6b\x1b\xfb"
+"\x1a\xfb\x00\xfb\x00\xfb\x1a\xfb\x19\xf7\x00\xfb\x00\xf7\x1a\xf7\x19\xf7\x00\xf7\x00\xf7\x1a\xd8\x66\xd3\x4c\xb9\x1f\xfb\x22\x7b"
+"\x15\xee\xdc\x3b\x28\x28\x3b\x3a\x28\x27\x3b\xdb\xee\xee\xdb\xdc\xee\x1f\x0e\xfb\x6b\xf7\x0a\x9f\x1d\x0e\x8f\xf7\x81\xf7\x43\x15"
+"\x92\x7c\x77\x8f\x7a\x1b\x4d\x54\x56\x50\x68\xa5\x75\xb4\xba\xb7\xa2\xb1\xa6\x1f\x9f\xa6\x91\xa1\x8d\xbb\x08\xf7\xb9\x07\xc3\x83"
+"\xb9\x3f\x38\x1a\x59\x83\x65\x73\x54\x1e\xa6\x06\xaf\xb6\x9e\xc2\xc5\x1a\xd6\x6e\xd2\x51\xd1\x1e\x58\xc8\x8a\x8c\x86\x92\x83\x95"
+"\x19\xc5\x5f\x07\x0e\xf8\x13\xf8\x57\x15\x9e\x72\xa1\x78\xa0\x7f\xc3\x6b\x94\x85\x90\x82\x08\x91\x80\x8f\x78\x76\x1a\xfb\x7c\x07"
+"\x92\x7a\x74\x8f\x78\x1b\x46\x4d\x56\x4f\x68\xa8\x75\xb8\xbe\xbb\xa2\xb1\xaa\x1f\xa0\xa6\x92\xa1\x8d\xbc\x08\xf8\x00\x07\x8c\xd3"
+"\x6a\xd5\x5d\xa7\x54\xaf\x6d\x9f\x87\x8f\x08\x7e\x99\x85\x9d\xa2\x1a\x98\x5f\xfc\x80\x07\x92\x7b\x74\x8f\x79\x1b\x46\x4f\x56\x4f"
+"\x68\xa7\x75\xb7\xbe\xbb\xa2\xb1\xa8\x1f\xa0\xa6\x92\xa1\x8d\xbc\x08\x8e\xf8\x0a\x15\xf7\x03\x4f\xa3\x67\x8f\xfb\x08\xfb\x06\xc8"
+"\x74\xae\x87\xf7\x09\x08\x0e\xc7\x2d\x0a\xfb\xe9\xf8\xa4\x2b\x1d\xf7\x7d\xa4\xf8\x00\x15\xbf\x9b\xa3\x98\xa6\xa4\x08\xb1\xaf\xa2"
+"\xbe\xbf\x1a\xcd\x63\xbc\x55\x5f\x66\x66\x5f\x63\xaa\x69\xb0\x9c\x99\x90\x97\x99\x1e\x8c\x84\x8b\x86\x88\x1a\x58\x67\x5d\x48\x68"
+"\x1e\xf9\x43\xfb\xff\x75\x1d\x0e\xc7\x2d\x0a\x2f\xf9\x54\x21\x0a\xc7\x2d\x0a\xfb\xdc\x40\x0a\xf8\x8c\xf8\xa4\xf7\x6c\x15\xf7\x83"
+"\xc8\xfb\x60\x06\xe3\xf7\x2f\x05\xf7\x08\xc9\x3a\x06\xac\xc6\x61\xa3\x5c\x38\x05\xfb\x23\x5c\x1d\x42\x2c\x1a\xfb\x08\xb8\x37\xdc"
+"\x69\x1e\x6a\x52\xb6\x74\xb1\xce\x05\x88\xa4\x99\x8a\xb4\x1b\xf7\xac\xc9\xfb\xb7\x06\x77\x85\x8b\x8c\x81\x1f\xab\xf7\x2d\x15\x3a"
+"\xfb\x21\x57\x9d\x6c\xbe\x88\xd3\x19\xf7\xb6\xf7\x6c\x15\x33\xfb\x2f\x05\xfb\x5e\x06\x91\xf6\xc3\xbd\xf7\x01\x89\x08\x0e\xf8\x8c"
+"\xf8\xd6\xf7\xcb\x15\xf7\x42\xe3\xfb\x15\x06\xb3\xdc\x3d\xb2\x4e\xfb\x0c\x05\xfb\xa8\x33\xf7\x7c\x06\x51\xfb\x08\x05\xfb\x42\x33"
+"\xf7\x15\x06\x63\x3a\xd9\x64\xc8\xf7\x0c\x05\xf7\xa8\xe3\xfb\x7c\x06\x0e\x5a\xf7\x5c\xf8\x1c\x15\xcc\x76\x8b\x8b\x75\x1b\x82\x88"
+"\x8a\x87\x80\x1f\x21\x62\x91\x78\x05\x8d\x96\x8e\x8c\x8e\x1b\xa1\x96\x79\x3a\xa4\x1f\xeb\xfb\xc2\x05\xbb\x06\xf7\x18\xf7\xac\x05"
+"\xa4\xc0\x94\xa8\xa9\x1a\xb4\x72\xa9\x69\x6b\x6f\x6f\x6b\x7d\x91\x7c\x94\x80\x1e\xab\x66\x8b\x8b\x79\x1a\x6f\x7b\x61\x59\x24\x1e"
+"\x0e\x8f\x27\x1d\xf5\xf7\x8d\x15\x4c\x7a\x6e\x73\x91\x1d\x8f\x27\x1d\xfb\x49\xe1\x98\x1d\xac\xa0\x92\x94\xed\x1d\x7a\x1e\x0e\x8f"
+"\x27\x1d\xf7\x37\xf7\x57\x22\x0a\xf7\x7f\xf7\x51\xf8\x5d\x56\x0a\xf7\x7f\xf8\x00\xf8\xa5\x15\xb0\x06\x8f\x9e\x8d\x94\x8c\x93\x08"
+"\x9c\xd1\x8b\x8c\x9b\x1a\xa5\x79\x9f\x73\x72\x79\x78\x71\xaf\x0a\xfb\x41\x3b\x56\x0a\x8f\x79\x1d\x0e\x8f\x79\x1d\x78\xf7\x02\x15"
+"\xb0\x06\x8f\x9e\x8d\x94\x8c\x93\x08\x9c\xd2\x8b\x8b\x9b\x1a\xa6\x79\x9e\x73\x72\x79\x77\x72\x7a\x8c\x86\x9b\x49\x1e\x8c\x81\x8d"
+"\x82\x8d\x82\x08\x0e\xf8\x77\x93\x16\xfa\x56\xd3\xfe\x0e\xfa\x03\x43\x06\x0e\x8f\xe8\x1d\x68\x6d\x92\x64\x1b\xfb\x15\x2a\x23\xfb"
+"\x20\x3b\xa4\x52\xc7\x53\x1f\x3f\xfb\x14\x05\xba\x06\xca\xf4\x05\x78\xb0\xa9\x83\xb3\x1b\xf7\x16\xea\xf2\xf7\x20\xde\x71\xc6\x4d"
+"\xc2\x1f\xfb\x6b\xfb\xb2\x15\x8a\xa1\x8b\xa1\xa4\x1a\xf7\x49\xaa\x1d\x67\x79\x9d\xb8\x7d\x1e\x7e\xf8\x54\x4f\x1d\x8f\xf6\xf9\x18"
+"\x15\xa8\xc9\x99\x8f\xb4\x1b\xe8\xc2\x31\xfb\x2b\x71\x8a\x76\x87\x69\x1f\xb6\x51\x68\x98\x58\x1b\x5a\x61\x7a\x67\x67\x1f\x5a\x5b"
+"\x6f\x49\x49\x1a\xfb\x02\xe3\x33\xf7\x01\xcb\xc3\xa5\xbc\xb5\x1e\xc5\xd0\xb2\xf7\x1c\xf7\x1d\x1a\xf7\x0e\x60\xef\x38\xd1\x1e\xaf"
+"\x60\x58\x9d\x51\x1b\x60\x6c\x84\x71\x44\x1f\xf7\xc6\xfc\x2e\x15\x7b\xfb\x02\x7d\x59\x71\x5f\x08\x61\x71\x68\x73\x67\x1b\x5a\x6d"
+"\xb9\xd7\xf7\x00\xc9\xe2\xd7\xad\xa2\x7f\x68\xb0\x1f\x0e\xf8\x6d\xf7\x11\x16\xf7\xe2\xa4\x06\x3d\x94\x83\x94\x89\xd5\x08\xf7\x4e"
+"\x07\xf7\x1b\x8c\xad\x8f\xb7\x9c\x08\xdc\xaa\xb7\xc7\xd9\x1a\xf7\x08\x2c\xcd\xfb\x3b\x1e\xfb\xd6\x72\x06\x4e\x1d\xf8\xd9\x15\xa2"
+"\x9c\x97\xac\xde\x4b\x0a\x74\x1e\x77\x73\x6a\x84\x44\x1b\xf8\x5c\x50\x15\x54\xef\x77\x06\x65\x55\x77\x75\x61\x67\x08\x76\xaa\xfb"
+"\x50\x07\x63\xa6\x72\xb6\xb5\xa3\x9d\xc0\xa5\x1e\x76\x94\x05\x72\x7d\x85\x85\x7e\x1b\x7d\x86\x93\xa1\x1f\xf7\x42\xc2\x07\x0e\xf7"
+"\x14\xf7\xf9\xfb\x52\x15\xf7\x42\x07\xf7\x1b\x90\xed\xf5\xf7\x21\x1a\xcc\x75\xbf\x5e\xb7\x1e\xb3\x61\x59\xa1\x5a\x1b\x62\x66\x7b"
+"\x70\x76\x1f\x79\x74\x83\x68\x52\x1a\xfb\xb3\x07\x7a\x90\x83\x8f\x82\x92\x08\x67\xaa\x79\xcb\xef\x1a\xf7\x1b\xa3\xc8\xc9\x9f\x1e"
+"\x9d\x07\x54\x89\x6b\x81\x68\x72\x08\x4d\x5f\x67\x43\x3c\x1a\x43\xa8\x48\xbe\x5c\x1e\xb2\x69\xb1\x7b\xcc\x84\x08\xfb\x42\x07\xef"
+"\xf8\x6a\x15\xf0\x90\xa2\xa1\x9c\x9d\x7b\x72\x98\x1e\x9a\x6c\x93\x5f\x4f\x1a\x4d\x82\x55\x7a\x62\x1e\x85\x7d\x80\x7d\x7b\x7f\x81"
+"\x83\x82\x87\x77\x86\x08\x0e\xbf\xf8\x04\xf7\xf8\x15\x4d\x6e\x72\x64\x90\x4e\x08\xfb\x21\x07\x77\x8f\x7c\x94\x75\x1e\x73\x96\xa3"
+"\x78\xa0\x1b\x8f\x8e\x8c\x8c\x90\x1f\xf7\x1a\xbc\x05\xb1\x07\x80\x70\x81\x88\x80\x1b\x7e\x80\x92\x97\x85\x1f\x84\x9a\x8a\x9c\xce"
+"\x1a\xd9\x07\x8c\xc0\x8f\x9d\x9c\xa2\x08\xf2\xef\xfc\x25\x06\x45\x88\x7d\x86\x7a\x6d\x4d\xfb\x08\x18\xba\x7c\xae\xbc\xab\x9f\xc1"
+"\x8f\x19\x89\x54\x87\x68\x83\x62\x78\x37\x88\x83\x68\x72\x7e\x81\x18\x76\x7a\x84\x7d\x73\x1a\x6b\xa5\x75\xb2\xad\xa3\x9c\xad\x9a"
+"\x1e\x9d\xb3\x98\xe4\x8f\xee\x8d\xbd\x18\x8c\x91\x8b\x98\x8c\x9f\x08\x0e\xf8\x8c\xf9\x45\xf9\x55\x15\xfd\x72\x07\x54\x8a\x78\x77"
+"\x54\xd7\x1d\xf9\x3b\x07\xc4\xa0\xa2\xc0\x1e\x9c\x9d\xfd\x9f\x79\x9b\x06\xc1\x9f\x75\x51\x8c\x1f\xfd\x3b\x07\x54\x8a\x77\x77\x55"
+"\xd7\x1d\xf9\x72\x07\x0e\xf8\x8c\xf9\x93\xc9\x15\xfb\xb7\x06\xfb\x0d\x57\xc2\xf7\x16\xf7\x15\xbf\xc3\xf7\x0d\x1f\xf7\xb7\xc9\xfb"
+"\xac\x5c\x1d\x43\x2b\x1a\xfb\x07\xb8\x37\xbc\x0a\x06\x0e\xf8\x8c\xf7\x7d\xc9\x15\x4d\xf7\xac\x07\xde\xae\x92\xa4\xb1\x1f\xcc\xb7"
+"\xac\xd3\xf2\x1a\xf6\x5c\xe0\x3e\xac\x1e\x99\x69\x70\x8f\x46\x1b\xfb\xac\x4d\xf7\xb7\x06\xf7\x0d\xbf\x54\xfb\x16\xfb\x16\x57\x54"
+"\xfb\x0d\x1f\x0e\xf7\x54\xf8\x32\xf8\x55\x15\x22\x06\x8a\xfb\xf9\x32\x92\x6e\xad\x90\xe7\x19\xf7\x1c\x07\xc4\x78\xb4\x71\x87\x85"
+"\x89\x89\x84\x1e\x2a\x63\x91\x76\x05\x8e\x94\x8f\x8c\x8f\x1b\xa3\x91\x79\x38\x1f\x2a\x07\x86\xfb\x11\xe4\x38\xf7\x1a\x8e\x8a\xfb"
+"\x3d\x18\xf7\x02\xf7\x3e\x06\xd0\x95\xa6\x99\xaf\xb9\x08\xb7\xc3\xa3\xd8\xe5\x1a\xf4\x67\xcc\x50\x6c\x76\x74\x6b\x72\x99\x76\xa4"
+"\x80\x1e\xab\x7d\x8c\x8a\x96\x7e\x08\x99\x7a\x92\x78\x71\x1a\x54\x72\x56\x66\x71\x1e\x73\x7b\x6d\x81\x61\x86\x08\x0e\xfb\x37\xf7"
+"\x89\xf8\x06\x15\x43\xbe\x69\xb4\xb1\x1a\x97\x93\x94\x96\x8c\x8e\x8b\x8a\x8e\x1e\x8a\x90\x91\x8b\x8f\x1b\xb6\xa8\xaa\xb9\xbc\x6b"
+"\xab\x5a\x50\x63\x5d\x47\x37\xbb\x4b\xf7\x07\x49\x1f\x0e\x57\x35\x1d\xfb\x2d\xf8\xa4\x38\x0a\xf8\x3f\x68\x15\xb6\x06\xf7\x2c\xfa"
+"\x40\x3e\x96\xfb\x09\xfd\x69\xfb\x44\xf7\xf8\xfb\x4a\x32\xac\x44\xea\xba\x05\x0e\x57\x35\x1d\xeb\xf9\x54\x15\x51\x06\xfb\x03\x28"
+"\xfb\x04\xee\x05\x53\x06\xf7\x0e\xfb\x44\x05\xe7\x06\x0e\x57\x35\x1d\xfb\x5c\x40\x0a\xf8\x1d\xf7\xac\xf7\x00\x15\xf7\x5f\xf8\x34"
+"\xe3\xfc\x8c\xfb\xb7\x07\x0e\xb2\xf7\x5f\xa9\x15\x6d\xa8\xa1\x81\xac\x1b\xf6\xe1\xf5\xf7\x17\xc0\x7d\xbe\x71\xb2\x1f\xc5\x64\x51"
+"\xa8\x3d\x1b\x3c\x4c\x66\x4f\x72\x1f\x7f\x6d\x86\x6b\x5c\x1a\xfc\x3e\xf7\x0e\x07\xf8\x50\x04\xf6\x9c\xb6\xb7\xc4\xa4\x4c\xfb\x1f"
+"\xfb\x0a\x6e\x45\x5a\x74\x79\x99\xaf\x73\x1e\x0e\x20\x2f\x1d\xfb\x5d\xf7\x5e\x32\x1d\x20\xf7\x69\x7d\x15\xe5\x90\xc5\xc6\xe3\x1a"
+"\xd2\x65\xb6\x27\xb5\x1e\x47\xa8\x6f\xa4\xad\x1a\xac\xa7\xa4\xb1\xa6\xa5\x80\x76\xa1\x1e\xa0\x77\x96\x79\x9a\x5f\x08\xa4\xf7\x25"
+"\x75\x06\x7c\x85\x85\x86\x7e\x1b\x85\x82\x8d\x90\x7b\x1f\x96\x6b\x74\x8f\x74\x1b\x30\x49\x4d\x37\x49\xb4\x5d\xf0\x60\x1f\xd0\x6d"
+"\xa6\x72\x6b\x1a\x64\x6d\x71\x5e\x45\x5d\xb8\xe2\x76\x1e\x6f\xfb\x39\xa4\x06\xa1\x96\x91\x91\x94\x1b\x90\x93\x89\x87\x95\x1f\x9d"
+"\x83\x9d\x87\xb0\x83\x65\x36\x18\x39\x0a\x7b\x7e\x8e\x94\x73\x1f\x85\x8d\x2f\x0a\x0e\x20\x2f\x1d\x82\xf7\x5e\x20\x0a\x20\x2f\x1d"
+"\xfb\x4f\xfd\x2f\x4a\x1d\xc3\xf7\x07\x9f\x1d\xf7\x9c\x16\xf3\xf7\x53\x05\xa1\xb3\x97\xaa\x9e\x1a\xa8\x74\xa0\x6b\x4c\x63\x55\x34"
+"\x8a\x1e\x88\xfb\x52\x05\x0e\xbb\xf7\xa1\xf8\x63\x15\xfb\x1e\x8c\x31\x30\xfb\x21\x1a\xfb\x26\xe3\x28\xf7\x16\xf7\x13\xe9\xf2\xf7"
+"\x20\xdb\x70\xc6\x4f\xbd\x1e\xf7\x2f\x6b\x05\xd7\x07\xfb\xb3\x6d\x15\xc1\xa5\x45\xfb\x23\xfb\x17\x6e\x43\x58\x56\x6f\xd2\xf7\x1a"
+"\xf7\x21\xa6\xd1\xc1\x1f\x0e\xf8\x8c\xf8\x1b\xf8\x9a\xc1\x1d\xfb\x14\xfb\x00\x15\x92\x36\x96\x62\xa9\x5e\x08\x4c\xb5\xcb\x6b\xde"
+"\x1b\xd8\xc7\xa6\xc1\xb5\x1f\xaf\xba\x9a\xb8\x92\xe8\x80\x59\x80\x75\x71\x6d\x08\x54\x5b\x4f\x71\x3a\x1b\x3a\x4f\xa5\xc2\x5b\x1f"
+"\x71\xa9\x80\xa1\x80\xbd\x08\xf7\xee\xf7\x00\xc1\x1d\xfb\x01\xf7\x68\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38"
+"\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37\xf7\x37\xfb\x5e\x1f\x89\x5a\x15\xf7\x45\xf7\x21\xfb\x20\xfb\x44\xfb\x43"
+"\xfb\x21\xfb\x21\xfb\x43\xfb\x41\xfb\x23\xf7\x21\xf7\x3e\xf7\x47\xf7\x1e\xf7\x22\xf7\x44\x1f\x0e\xf8\x8c\xf7\xbb\x16\xf8\x77\xa2"
+"\x06\xfb\x35\x93\x3f\xe0\x8e\xf7\x3e\x08\x38\xb7\xb9\x6a\xd4\x1b\xd1\xc5\xc9\xd5\xcf\x71\xb4\x20\xec\x1f\xfb\x01\xf0\x78\xa6\x64"
+"\xf7\x09\x7b\x2e\x51\x37\x20\x34\x08\x3a\x48\x69\x53\x4b\x1a\x40\xc8\x4d\xd4\xb5\xb4\x9c\xa9\xab\x1e\x9e\x9d\x96\x9a\x9c\xb0\x91"
+"\xfb\x3b\x34\x2c\xfb\x33\x8a\x08\x0e\xf8\x8c\xf7\xee\xf9\x5b\x15\xf7\x85\x06\xf4\x8a\xa5\x75\x9a\x26\x08\xa2\x06\x82\xf7\x39\x05"
+"\xfc\xaf\x06\xf7\x66\xfc\x67\xfb\x6e\xfc\x2c\x05\xf8\xc8\x06\xbc\xf7\x66\x05\x74\x06\x6f\x3b\x6c\x78\x26\x8c\x08\xfb\xbc\x06\xf7"
+"\x49\xf7\xf4\x05\x0e\xf8\x8c\xf7\xcd\xf8\x77\x15\x6e\x66\x7c\x67\x85\x5b\x08\xfb\x05\x54\xf7\x05\x06\x8f\x61\x9e\x5b\xa6\x6a\x3b"
+"\x3c\x18\xb1\x65\xdb\xdb\xb1\x6e\xb2\x7b\xb8\x86\x19\xfb\x05\xc1\xf7\x05\x07\xb7\x90\xb9\x9e\xab\xa5\xdb\x3b\x18\xb0\xb1\x3b\xdb"
+"\xa8\xae\x9c\xb5\x90\xb8\x19\xf7\x05\xc2\xfb\x05\x06\x86\xb6\x79\xb7\x70\xad\xda\xda\x18\x66\xb1\x3b\x3b\x69\xa6\x62\x9d\x5c\x91"
+"\x19\xf7\x04\x55\xfb\x04\x07\x60\x86\x5f\x79\x68\x6f\x3b\xdb\x18\x65\x65\x05\xf7\x9c\x55\x15\xec\xd8\x40\x2d\x2b\x3f\x3e\x2c\x2d"
+"\x3e\xd8\xea\xe7\xd8\xd9\xe6\x1f\x0e\x68\xf8\x67\xf8\x57\x15\xfb\xcb\x06\x45\x88\x7e\x86\x79\x6d\x4d\xfb\x08\x18\xbb\x7c\xb5\xc7"
+"\xad\x9a\xe1\x8a\x19\xb7\x06\x72\x7f\x7a\x7f\x7a\x78\x7b\x78\x89\x82\x86\x51\x08\xfb\x21\x07\x77\x8f\x7c\x94\x75\x1e\x72\x96\xa3"
+"\x79\xa0\x1b\x8f\x8e\x8c\x8c\x90\x1f\xf7\x1a\xbc\x05\xb1\x07\x80\x70\x81\x88\x80\x1b\x7f\x7f\x92\x97\x86\x1f\x84\x99\x89\x9e\xcd"
+"\x1a\xd9\x07\x8c\xc0\x8f\x9c\x9c\xa3\x08\xf7\x2b\x06\x0e\xfb\x37\xf7\x67\xf7\xbd\x15\xf7\x0c\xe9\xb7\x2d\xf7\x3d\x72\x07\x4e\x35"
+"\x63\x5e\x4a\x54\x08\x70\xbf\xfb\x0c\x4f\x5c\xc7\xfb\x31\x84\x0a\xf7\x1a\xe6\xba\x07\x0e\x6b\xf7\xe7\xf8\x61\x15\xfb\x13\xf7\x3d"
+"\x72\x06\x4e\x35\x63\x5e\x4a\x54\x08\x70\xbf\xfb\xd8\x84\x0a\xf7\xc1\xd6\x07\x80\x83\x95\x78\x05\xf4\xc7\xb7\xc4\xda\x1a\xca\x67"
+"\xb5\x55\x5d\x6e\x6e\x5e\x60\xa5\x6f\xb3\x8f\x90\x8b\x8c\x90\x1e\x8c\x8e\x8e\x8b\x8c\x1b\x94\x93\x83\x80\x79\x80\x73\x7b\x79\x1f"
+"\x0e\xfb\x37\xf7\x62\x80\x15\xc2\x93\xb1\xab\xac\xd2\x72\x96\x18\x69\x1d\xf7\xc1\xe9\xb7\x2d\xf7\x3d\x72\x07\x4f\x36\x63\x5e\x49"
+"\x53\x08\x70\xbf\xfb\xd8\x07\x8d\x4e\xab\x67\xc5\x84\x64\x36\x18\x97\xac\x1d\x85\x8d\x7b\x66\x05\x7e\xb0\xa5\x86\xad\x1b\xdb\x4f"
+"\x0a\x7e\x1f\x0e\xa5\xf7\x9f\xf9\x26\x15\x44\x4c\x60\x43\x68\x1f\x76\x5f\x7d\x34\x2f\x1a\xfb\x2d\xa4\x35\xc7\x57\x1e\x72\xa7\xb4"
+"\x7d\xb4\x1b\xb4\xb3\x9a\xa4\xa6\x1f\xcb\xc7\xa8\xe5\xf7\x23\x1a\xf7\x29\x74\xe0\x52\xc4\x1e\xa7\x6f\x62\x9b\x60\x1b\x37\xfb\xaf"
+"\x15\x8c\xf1\x91\xca\x98\xb1\x08\xa5\x93\xa3\x9f\xa1\x1b\xab\xa4\x70\x5d\x96\x1f\x94\x65\x90\x57\x35\x1a\x61\x04\x8a\xfb\x08\x88"
+"\x48\x87\x6b\x08\x4a\x81\x76\x6e\x66\x1b\x6c\x74\xa2\xb8\x7f\x1f\x80\xb1\x88\xbc\x8a\xf7\x2e\x08\x0e\xfb\x37\xf7\x28\xf8\x7d\x15"
+"\xb0\x06\x8e\x99\x8d\x98\x8d\x94\x08\x9c\xd0\x8b\x8d\x9b\x1a\xa5\x79\x9f\x73\x72\x79\x77\x72\x7a\x8c\x86\x9b\x49\x1e\x90\x6f\x05"
+"\x0e\xc7\x23\x0a\xfb\x34\xf9\x33\xa5\x0a\x8e\x54\x92\x72\x9f\x6e\x08\x68\xcf\x1d\x91\xbe\x08\x0e\xc7\x23\x0a\xfc\x4a\xf8\x90\x98"
+"\x1d\xaa\x3c\x1d\x7b\x1e\x0e\xc7\x23\x0a\x2d\xf8\xfd\x22\x0a\x8f\x8e\xfb\x4d\x15\x34\xf8\x7c\xe2\x07\xfc\x7c\xf7\x20\x15\x34\xf8"
+"\x7c\xe2\x07\x0e\xfb\x8a\x0e\xfb\x37\xd5\x1d\xf7\x3f\x48\x1d\xfb\x8a\xfb\xe9\x4a\x1d\xfb\x37\x82\x1d\xfb\x61\xfd\x8a\x4a\x1d\xfb"
+"\x37\xf7\xdf\xf9\x11\x22\x0a\xfb\x8a\x50\x1d\xf7\x17\xf7\xd1\xf9\x30\x15\x6f\x06\xfb\xa1\xfd\x30\x05\xf8\xec\x06\xfb\x5e\xf1\x15"
+"\xfb\x8b\x06\x65\x7f\x8f\x99\x94\x8f\x98\x91\x9b\x1f\xf7\x14\xf7\xcf\x05\x0e\xf7\xc5\xf8\xab\xf7\x00\x15\xba\x91\xa5\x93\xa5\x9a"
+"\x08\xd0\xb1\xb5\xe2\xf3\x1a\xf7\x52\xfb\x1c\xf7\x10\xfb\x64\xfb\x65\xfb\x1c\xfb\x10\xfb\x52\x30\xad\x39\xc2\x61\x1e\xaa\x73\xaa"
+"\x80\xc6\x83\x91\x7e\x18\x8f\x6d\x78\x8d\x6c\x1b\x61\x06\x56\x8c\x81\x94\x7f\xc8\x08\x4e\x06\xb0\xfb\x40\x05\xf7\xcc\xed\x06\x5f"
+"\x9b\x79\x96\x77\xa4\x08\x66\xb9\x74\xe5\xed\x1a\xf4\xa0\xcf\xba\xba\x1e\xa6\xa6\xb5\x9b\xb6\x1b\xb6\xb4\x7b\x70\xa6\x1f\xba\x5b"
+"\xa0\x48\x22\x1a\x37\x79\x36\x6f\x5d\x1e\x74\x66\x77\x7c\x56\x78\x08\x29\xf7\xcc\x07\xb0\xf7\x40\x05\x4e\x06\x7f\x4f\x81\x81\x56"
+"\x8a\x08\x61\x06\x6d\x78\x89\x87\x6c\x1f\x0e\xd2\xf2\xf8\x56\x15\xfb\x6f\x07\x8a\xfb\x06\x84\x3d\x7a\x27\x08\x85\x6a\x89\x7b\x7f"
+"\x1a\x63\x9f\x74\xb0\xae\xa5\xa4\xac\x95\x87\x9c\x85\x9e\x1e\x7e\xaf\x81\xad\x86\xaa\x08\x76\xa0\x9f\x82\xa5\x1b\xb8\xb1\xa6\xc2"
+"\xab\x1f\x39\x07\xf7\x49\xc2\x86\x9f\x05\x89\x83\x86\x8a\x87\x1b\x74\x80\x9f\xb6\x1f\xf7\xd9\xfb\x11\xfb\xca\x07\x4f\x77\x75\x6f"
+"\x71\x1b\x82\x83\x90\x93\x84\x1f\x81\x99\x89\x98\xc1\x1a\xf7\xc4\x07\x0e\x41\xf7\xad\xf8\x5d\x15\x41\x4f\x6d\x4e\x5c\x1f\x64\x59"
+"\x75\x49\x4a\x1a\x4f\x9f\x54\xae\x67\x1e\x70\xa5\xaf\x7f\xc1\x1b\x9c\x9c\x8c\x8d\x9b\x1f\x8e\x9b\x99\x8c\x92\x1b\xa4\x9a\x7b\x6f"
+"\x69\x77\x71\x71\x82\x82\x8e\x92\x84\x1f\xa3\x6f\x84\x8e\x75\x1b\x69\x71\x72\x6c\x68\xac\x71\xb6\xe1\xd0\xd6\xe8\xce\x68\xb7\x56"
+"\x84\x7a\x8a\x89\x7b\x1f\x89\x7f\x7e\x8a\x80\x1b\x57\x76\xb2\xea\xf7\x00\xab\xcd\xc0\x9e\x97\x82\x75\x93\x1f\x57\x9f\x95\x81\xad"
+"\x1b\xaf\xa3\xa3\xb0\xc1\x5f\xaf\x49\x1f\x0e\xf7\x3f\xa2\xf9\x12\x15\xcd\x87\x9d\x7d\x8d\x57\x08\xfc\x6e\x07\x89\x57\x7d\x7f\x45"
+"\x85\x08\x73\xf8\xd1\x07\xb2\xf7\x60\x05\x70\x06\x6c\x49\x77\x6f\x68\x6f\x08\x67\x5e\x56\x7b\x40\x1b\x4c\x79\x97\xb6\x1f\xf7\x81"
+"\x07\xf6\xb3\x65\xfb\x06\x96\x1f\xa5\xf7\xe0\x71\x06\x7d\xfb\x04\x64\x67\x22\x8c\x08\xf7\x78\x07\xb0\x97\x94\xc1\xe3\xc0\x7f\x6f"
+"\xaa\x1e\xaa\x70\x99\x6d\x98\x48\x08\xa3\xf7\x59\xfc\xc9\x06\xf8\x13\xc8\x15\xfb\x1b\xf7\x2e\x05\x9d\x7c\x78\x94\x78\x1b\x71\x77"
+"\x78\x72\x78\x95\x7e\xa9\x78\xc4\x0a\xf7\xae\x6f\x1d\x59\xf7\x29\x15\xfb\x1a\xf7\x2e\x05\x9d\x7b\x79\x94\x78\x1b\x71\x77\x78\x72"
+"\x78\x95\x7d\xa8\x79\xc4\x0a\x57\x77\x1d\xa2\xf7\x85\x15\xfb\x1a\xf7\x2e\x05\x9c\x7c\x78\x95\x78\x1b\x71\x77\x77\x73\x78\x96\x7d"
+"\xa7\xda\x1d\xdb\x3f\x0a\xa3\xf7\x22\x15\xfb\x1a\xf7\x2e\x05\x9c\x7b\x79\x95\x78\x1b\x71\x77\x77\x73\x78\x95\x7d\xa8\xda\x1d\xf7"
+"\x07\xf7\x9f\xf8\xdb\x15\xb0\x97\x94\xbe\xe4\xc5\x7a\x69\xa9\x1e\xa0\x72\x96\x72\x99\x4c\x08\xa3\xf7\x59\xfc\xc0\x73\x06\xcd\x88"
+"\x9f\x7c\x8c\x57\x08\xfb\x69\x33\x6c\x07\xe3\x8a\x05\xfb\x79\x07\x89\x57\x7d\x80\x44\x84\x08\x73\xf7\xf5\xa3\x07\x34\x8e\x79\x97"
+"\x89\xc2\x08\xf7\x78\x07\xee\x89\xaf\x66\x98\xfb\x05\x08\xa4\xf7\xe0\x72\x06\x7a\xfb\x04\x68\x68\x2b\x8c\x08\x0e\x20\xf7\x5b\xf7"
+"\x8c\x15\xf7\x3a\xb1\x07\xd3\x8a\xae\x68\x8f\x40\x08\x9f\x06\x81\xf7\x28\x05\xfb\xdb\x76\x06\xa8\x9b\x75\x68\x89\x1f\xfb\x11\x54"
+"\x5f\xc2\xfb\x11\xb6\x1d\xf7\x11\xe8\xb7\x07\x0e\xf8\x8a\xf8\x20\xf7\xbb\x15\xfb\x5b\x21\x1d\x83\x77\xf7\xba\x9f\x83\x06\x55\x8e"
+"\x7d\x9c\x8d\xc3\x08\xf7\x5b\x07\x3c\x0a\x9a\x70\x90\x81\xdb\x1d\xec\x8d\xc0\x5d\x91\x2e\x08\xa9\xf7\x43\x71\x06\x65\x8c\x7c\x94"
+"\x73\xb3\xfb\x64\xf7\xf5\x18\xcb\xdc\xda\xec\xad\xa1\xd2\x8c\x19\x9f\xfb\x7e\x77\xa1\x07\xa5\x9c\x7f\x77\x7e\x83\x7d\x79\x74\x1f"
+"\xfb\x3c\xfb\x61\x05\xf7\x67\x07\x88\xc3\x9a\x9c\xc1\x8e\x08\x93\x9f\xfb\xba\x77\x93\x06\xc0\x88\x9a\x7a\x8f\x0a\xa0\x9f\xfb\x7e"
+"\x77\x06\xd3\x8a\xac\x75\xda\x2a\xcb\x3a\x18\xfb\x64\xfb\xf5\x67\x4e\x85\x85\x69\x8a\x19\x77\xf7\xba\x9f\x73\x07\x6e\x7c\x93\x9a"
+"\x92\x90\x97\x99\xa5\x1f\xf7\x1b\xf7\x7e\x05\x0e\xf7\xa0\xf7\x8b\x16\xf7\x5a\x9f\x06\x71\x90\x7e\x9f\x8d\xad\x08\xf7\x05\x07\x9a"
+"\x9e\xde\xfb\x1f\x05\x9c\x6f\x8d\x87\x85\x1a\x82\x83\x86\x7a\x1e\x82\x77\xc8\x06\xed\x8d\xc0\x63\x91\x40\x1d\x65\x8c\x7d\x94\x72"
+"\xb3\xfb\x16\x9f\x0a\x9a\x95\x83\x80\x8d\x0a\xfb\x5a\x77\x07\xa4\x86\x97\x78\x8a\x69\x08\xfb\x16\x07\xfb\x10\xf7\x1e\x05\x80\x98"
+"\x85\xce\x1d\x9c\x7f\x45\xc6\x1f\xb6\x5a\xfb\x26\xfb\x7e\x71\x5f\x89\x8a\x74\x8a\x19\x77\xf7\x66\x9f\x83\x07\x7a\x83\x90\x94\x90"
+"\x8f\x94\x9a\xa3\x1f\xde\xf7\x1f\x99\x78\x05\xfb\x05\x07\x8c\x68\x7f\x78\x72\x86\x08\x0e\xab\xf7\xa5\x7d\x15\xf7\x1d\x96\xe1\xd4"
+"\xf4\x1a\xec\x55\xc7\x23\x9f\x1e\xe1\x9c\xb8\xc3\xa4\x1d\x73\xfb\x5c\xa3\x06\x92\xbf\x93\xa4\x9c\xa3\x08\xaa\xa1\xad\x9c\xb4\x1b"
+"\xcb\xad\x5e\x38\x4d\x77\x60\x66\x7c\x1f\x85\x7d\x76\x89\x68\x1b\x81\x87\x8b\x8c\x81\x1f\x63\x07\x8d\xa0\x8b\x8b\x99\x1b\xbb\xa8"
+"\x82\x75\xa0\x1f\xa4\x73\x97\x65\x59\x1a\x2b\x5d\x53\x3c\x3a\x57\xbd\xe9\x7b\x1e\x63\x85\x97\xfb\x07\xdb\x41\xf7\x07\x8a\x19\x67"
+"\x3a\x96\xac\x1d\x88\x8c\x8b\x8b\x89\x8c\x7b\x66\x18\x7e\xaf\xa6\x86\xac\xa1\x0a\x2d\xf7\x6b\x83\x15\xec\x96\xc5\xbb\xcf\x1a\xcb"
+"\x63\xb5\x3f\x9c\x1e\xca\x9c\xab\xb0\xc2\x1a\xcc\x4d\xb8\x30\x73\x7b\x88\x82\x6e\x1e\x87\x7e\x83\x89\x84\x1b\x7e\x85\x91\x97\x1f"
+"\x7a\x06\x84\xfb\x21\x05\xa3\x06\xd0\x91\xa6\xad\xbc\x1b\xb3\xa2\x6c\x56\x68\x82\x71\x7a\x7e\x1f\x83\x80\x7f\x89\x6f\x1b\x96\x0a"
+"\x9c\x3c\xbb\x62\xdb\x86\x19\x64\x35\x96\x83\x05\x8e\x96\x92\x8c\x95\x1b\xa8\x9c\x7e\x74\x70\x77\x7d\x65\x7b\x7e\x8e\x94\x73\x1f"
+"\x85\x8d\x7b\x66\x05\x7e\xaf\xa6\x86\xad\x1b\xda\x4f\x0a\x7f\x1f\x0e\xf7\x6a\xf7\x94\xf7\xbb\x15\x3c\x0a\x9a\x71\x90\x80\xdb\x1d"
+"\xed\x8d\xbf\x5d\x92\x2e\x3f\x1d\x65\x8c\x7c\x95\x73\xb2\xfb\x64\xf7\xf5\x18\xcb\xdc\xda\xec\xad\xa1\xd2\x8c\x19\x9f\xfb\x7e\xa7"
+"\x1d\x9c\xc0\x8e\x08\x93\x9f\xfb\xc5\x77\x9e\x06\xc0\x88\x9a\x7a\x89\x53\x08\xfc\x6a\x8e\x0a\x0e\xb1\x97\xf8\x57\x15\xb5\x0a\x8d"
+"\x66\x7b\x48\x0a\x90\x7e\x9f\x8d\xad\x08\xf7\x05\x07\x9a\x9e\xde\xfb\x1f\x05\x9c\x6f\x8d\x86\x86\x1a\x82\x82\x86\x7b\x1e\x83\x77"
+"\xc8\x06\xed\x8d\xc0\x63\x91\x40\x1d\x64\x8c\x7e\x94\x72\xb3\xfb\x17\x9f\x0a\x9b\x94\x84\x7f\x8d\x0a\x07\x0e\xf7\x0b\xf7\xa7\xf8"
+"\x0f\x15\x78\x73\x05\xf7\x66\x07\x89\xc4\x9a\x9c\xbf\x8e\x08\x93\x9f\xfb\xc4\x77\x9e\x06\xc0\x88\x9a\x7a\xeb\x1d\x56\x88\x08\x78"
+"\x77\xf7\xc4\x9f\x83\x06\x56\x8e\x7d\x9b\x8d\xc4\x08\xf7\x5b\x07\x9e\xa5\x05\xfb\x74\xc9\xf7\x0a\x07\xd3\xfb\x13\x05\x98\x75\x92"
+"\x7c\x84\x1a\x7c\x7b\x82\x6f\x1e\x73\x77\xf7\xba\x9f\x06\x69\x8c\x85\x91\x67\xc8\xfb\x65\xf7\xf5\x18\xcc\xdb\xda\xed\xac\xa1\xd3"
+"\x8c\x19\x9f\xfb\x7e\x77\xa0\x07\xa6\x9c\x7f\x76\x7e\x84\x7e\x77\x73\x1f\x35\x22\x05\xf7\x0c\x4d\x07\x0e\x62\xf7\x5c\xf7\x9e\x15"
+"\x76\x74\x05\xf7\x16\x07\x8a\xad\x97\x9e\xa5\x90\x08\x9f\xfb\x61\xb5\x0a\x66\x8d\x7b\x76\x6e\x1b\x76\xf7\x61\xa0\x07\x71\x8f\x7e"
+"\x9f\x8d\xad\x08\xf7\x06\x07\x9a\x9d\x91\x81\x05\xfb\x21\xb5\xd2\x07\xae\x50\x05\x9b\x70\x8e\x86\x85\x1a\x82\x82\x87\x7a\x1e\x84"
+"\x76\xf7\x66\xa0\x06\x73\x89\x8d\xb6\x71\x1f\xfb\x25\xf7\x7e\xb6\xbd\x05\xd1\xc6\x9c\x96\xc0\x1b\x9f\xfb\x41\x77\x9f\x07\x9b\x94"
+"\x84\x7f\x83\x85\x80\x80\x7f\x1f\x4e\x47\x05\xdb\x61\x07\x0e\xf7\xdf\xf7\x88\xf9\x06\x15\xfc\xa6\x8e\x0a\xf7\x5b\x07\x3c\x0a\x99"
+"\x73\x91\x7d\x8b\x1d\x76\x7e\x84\x7d\x78\x75\x1f\xfb\x3c\xfb\x61\x05\xf7\x58\x07\x89\xd2\x97\x9c\xc3\x8e\xc8\x1d\x0e\xf7\x25\xf7"
+"\x3a\xda\x15\x78\x0a\x83\x86\x7a\x77\x0a\x7e\x83\x86\x82\x7f\x7e\x1f\xfb\x10\xfb\x1e\x05\xf7\x15\x07\x89\xb0\x9b\xa0\xa9\x8c\x08"
+"\x9f\xfb\xb4\x07\x81\xfb\x29\x05\x9f\x06\xd5\x8e\xaf\xb1\xd1\x1b\x0e\xf7\xae\xf7\x94\xf7\xd1\x15\xf7\x95\xfb\x71\x06\x25\x0a\xf7"
+"\x22\x06\xe9\x8c\xbf\x5c\x91\x30\x3f\x1d\x56\x8d\x7c\x9c\x8d\xc3\x08\xf8\x56\x07\x89\xc5\x9a\x9d\xc0\x8e\x08\x9d\x9f\xfb\xcf\x77"
+"\x9e\x06\xbf\x88\x9b\x79\x89\x51\x08\xfb\x62\xfb\x95\xf7\x62\x6a\x0a\x0e\xa9\xf7\xba\xf7\x96\x15\xfb\x06\xf7\x07\x06\x8a\xad\x98"
+"\x3e\x1d\x8a\x9a\x76\x89\x67\x29\x0a\x8d\x67\x7c\x75\x6e\x8a\x08\x77\xf7\x61\x9f\x07\x71\x8e\x7e\xa0\x8c\xae\x08\xf7\x22\xf7\x06"
+"\xfb\x22\x07\x8d\x68\x7d\x76\x70\x88\x08\x77\xcd\x07\xee\x8c\xbe\x64\x91\x40\x1d\x5f\x8c\x78\x9b\x8d\xac\x08\xf7\xb1\x07\x89\xaf"
+"\x9b\xa0\xa7\x8c\x08\x9f\xfb\x62\x77\x07\xa6\x88\x98\x77\x8a\x68\x08\x0e\xf8\x10\x79\x15\x8a\x97\x90\x8b\x94\x1b\xd0\xc6\x9d\xaf"
+"\xc1\x1f\xab\xa1\xa1\xa0\xb8\xbc\x6d\xa4\x18\x7c\x0a\xb6\x79\x65\xb6\x1e\xb6\x65\xa2\x69\xae\x3f\x37\x0a\x52\x5a\x96\x5b\x1b\xfb"
+"\x5c\xfb\x29\xfb\x2d\xfb\x62\xfb\x4b\xf7\x05\xfb\x1a\xf7\x46\x6e\x1f\x66\x39\x68\x0a\x57\xf7\x85\x7d\x15\xda\x8e\xc6\xab\xbe\xd1"
+"\x79\x9d\x18\x5a\x0a\xfb\x0f\xd0\x30\xf6\x77\x1f\x65\x36\x39\x0a\x7a\x7e\x8e\x94\x73\x1f\x88\x8c\x8b\x8b\x89\x8c\x7b\x66\x18\x7e"
+"\xaf\xa5\x86\xad\xa1\x0a\xf9\x48\xf9\x2a\x15\xfb\x6c\x72\x06\xcc\x87\x9c\x83\x6e\x1a\x78\x7d\x6a\x73\x62\x1e\xfb\x00\xfb\x49\xfb"
+"\x0a\xf7\x77\x89\x8f\x89\x8f\x88\x8f\x19\x7e\xa2\x87\x97\x96\x1a\xa1\x9a\x93\xb3\x1e\xa4\xa4\xfb\xdc\x72\x06\xab\x89\xa6\x79\x9e"
+"\x6a\xf7\x47\xfb\xd9\x18\xfb\x24\x07\x89\x42\x80\x80\x3d\x84\x08\x73\xf7\xe8\xa3\x07\x3d\x92\x81\x95\x89\xd5\x08\xf7\x48\x07\xf7"
+"\x4f\xf7\xc4\x9a\xa2\x9d\x96\xad\x8f\x19\x0e\x60\xf7\xa7\xf7\x32\x15\x52\xf7\x3c\x05\x79\xc8\x8b\x8b\x97\x90\x0a\xfb\x57\x07\x8a"
+"\x60\x83\x82\x60\x84\x08\x73\xf7\x7d\xa3\x07\x68\x8f\x7e\x9a\xb0\x1a\xf7\x67\x07\xc4\xf7\x5f\xaa\xf3\x9a\xa2\xd4\x1d\x8b\x8b\x7a"
+"\x52\x1f\x0e\xf8\x4a\xf7\x7b\x15\xcb\x07\xf7\x4e\xf7\xc4\x9a\xa2\x9d\x96\xad\x8f\x19\xa4\xfb\x6b\x72\x07\xcc\x87\x9c\x83\x6e\x1a"
+"\x78\x7d\x6b\x72\x61\x1e\xfb\x00\xfb\x49\xfb\x0a\xf7\x77\x8a\x8e\x05\x77\xaf\x89\x92\x97\x1a\xa1\x9a\x93\xb2\x1e\xa4\xa4\xfb\xdb"
+"\x72\x06\xab\x8a\xa6\x78\x9e\x6a\xf7\x47\xfb\xd9\x18\x6f\x39\x61\xdd\x41\x07\x89\x42\x80\x80\x3d\x84\x08\x73\xf7\xe7\xa3\x07\x3d"
+"\x92\x81\x95\x8a\xd5\x08\xd5\xde\xb5\x07\x0e\x60\xf7\xbf\x91\x15\xeb\x07\xc4\xf7\x5f\xab\xf4\x99\xa1\xd4\x1d\x8a\x89\x7b\x54\x1f"
+"\x5b\xfb\x3b\x52\xf7\x3d\x05\x79\xc8\x8b\x8b\x96\x90\x0a\x38\x3f\x58\xd7\x4e\x07\x8a\x60\x83\x82\x60\x84\x08\x73\xf7\x7d\xa3\x07"
+"\x67\x8f\x7f\x9a\xb0\x1a\xcb\xdc\xbe\x07\x0e\xf7\x4d\xf7\xae\xf7\x97\x15\xee\xfb\x49\x05\x91\x80\x8f\x80\x82\x1a\x7b\x7b\x80\x71"
+"\x1e\x7c\x77\xf7\x12\x06\xec\x8e\xc1\x5c\x91\x2e\x3f\x1d\x5d\x8c\x7c\x98\x5b\xdd\xfb\x22\xf7\x91\x18\xea\xf7\x1e\xcc\xe7\xa2\x9d"
+"\xc9\x92\x19\x9f\xfb\x74\x77\x97\x07\xaa\xa3\x77\x72\x7a\x83\x79\x7b\x73\x1f\x37\xfb\x0b\x3b\xf7\x26\x05\x7c\xa8\x87\x95\x94\x1a"
+"\x9c\x9c\x97\xa4\x1e\x9b\x9f\xfb\xc0\x77\x06\xbd\x88\xa7\x6f\xc4\x23\xf7\x0c\xfb\x6b\x18\xfb\x05\xfb\x37\x05\x3e\x55\x65\x6b\x63"
+"\x1b\x81\x77\xf7\x79\x9f\x78\x06\x65\x75\x9a\xa4\x98\x91\x9a\x9a\xa1\x1f\x0e\x73\xf7\x60\xf7\x38\x15\xc5\x2c\x05\x95\x7b\x8f\x82"
+"\x85\x1a\x7d\x7c\x85\x74\x8d\x1e\x8a\x77\xd2\x06\xee\x8c\xbe\x64\x92\x40\x1d\x65\x8c\x7d\x94\x72\xb3\xfb\x03\xf7\x45\x18\xdd\xf7"
+"\x02\xac\xb9\x98\x94\xb1\x8c\x19\x9f\xfb\x25\x77\x07\xa6\x86\x93\x86\x7c\x1a\x82\x83\x7b\x80\x7c\x1e\x54\x43\x55\xe2\x05\x82\x9a"
+"\x88\x93\x92\x1a\x96\x94\x90\xab\x8f\x1e\x9f\xfb\x78\x77\x07\xa7\x88\x90\x86\xb7\x44\xf0\xfb\x34\x18\x39\xfb\x01\x68\x5b\x78\x7f"
+"\x61\x88\x19\x77\xf7\x35\x9f\x07\x7f\x8c\x83\x8b\x89\x8c\x08\x7d\x8e\x82\x93\x95\x1a\x95\x91\x97\x98\x9d\x1e\x0e\xf7\x82\xf9\x48"
+"\xf9\x16\x15\x9f\xfb\xc8\x77\x96\x07\xc0\x89\x9b\x78\x89\x51\x08\xfb\x6c\x07\x77\x57\x6c\x84\xa6\x1d\x96\x9f\xfb\xc3\x51\x1d\xbc"
+"\x95\xa6\xd5\x1e\xfb\x65\x07\x8d\x53\x7b\x7a\x56\x88\x08\x6b\x77\xf7\x4a\x06\xd2\x83\xb5\x5a\x90\x3d\x08\xa8\xf7\x1b\x06\x9f\x71"
+"\x07\x5a\x8e\x7e\x97\x8f\xb4\x08\xf8\x7b\x07\x88\xc5\x9b\x9e\xbf\x8d\x08\x0e\xcf\xf8\x86\xf8\x58\x15\xfb\x66\x77\x06\xa8\x8a\x9a"
+"\x75\x89\x67\x08\xfb\x23\x07\x84\x7e\x7f\x88\x7c\x1b\x62\x76\xa0\xb6\x1f\xe4\xe2\x1d\x77\x07\xa4\x87\x99\x76\x89\x69\x08\x41\x07"
+"\x3a\xbb\x65\xf1\xa6\x9e\x8e\x96\xaa\x1e\xfb\x07\x07\x8d\x67\x7c\x76\x6e\x8a\x08\x85\x76\xdb\x06\xcc\x84\xb4\x60\x8f\x4a\x08\xa8"
+"\xf7\x1d\x71\x06\x79\x8c\x8a\x8e\x8a\xad\x08\xf7\xcd\x07\x89\xb0\x9b\xa0\xa8\x8c\x08\x0e\xf7\x51\xf8\x00\xf7\xaf\x15\xa8\x94\x95"
+"\x8e\xa5\x95\x08\xfb\x65\x21\x1d\x6b\x77\xf7\xdd\x9f\xd2\x1d\x9d\xc0\x8e\x08\x9e\x9f\xfb\xc8\x77\x96\x06\xc0\x88\x9a\x79\x89\x51"
+"\x08\xfb\x6c\x07\x77\x82\x71\x82\x78\x87\x08\xf7\x73\x40\xfb\x77\x07\x5a\x96\x79\xa7\x8d\xcd\x08\xf7\x1d\x07\x89\xc5\x9a\x9d\xc1"
+"\x8e\x08\x95\x9f\xfb\xc2\x77\x98\x06\xc0\x89\x9a\x78\x89\x51\x08\xfb\x28\x07\x27\xc4\x5b\xf7\x0c\x9a\x93\x8c\x8c\x96\x1e\xfb\x21"
+"\xd6\x07\x0e\x6a\xf7\x5a\xf7\x75\x15\x78\x94\x81\xa0\xa7\x1a\xe5\x07\x89\xad\x98\x9f\xa5\x8f\x08\x9f\xfb\x5b\x77\x07\xa5\x87\x98"
+"\x77\x89\x69\x08\x40\x07\x39\xb9\x68\xf7\x00\x8a\x1e\x20\xb8\xf7\x05\x07\x91\x8c\x96\x8e\x95\x8e\x08\xfb\x06\x07\x8d\x67\x7c\x75"
+"\x6e\x8a\x08\x85\x77\xf7\x6c\x9f\x06\xc2\x0a\x89\xaf\xec\x1d\xa8\x8a\x9a\x76\x89\x67\x08\xfb\x23\x07\x82\x86\x84\x89\x80\x89\x08"
+"\xf7\x1f\x5e\x07\x0e\xf7\x51\xf7\x94\xf8\xca\x15\x89\xc3\x9a\x9c\xc0\x8e\x08\xab\x9f\xfb\xdd\x77\x9e\x06\xc0\x88\x9a\x7a\x89\x53"
+"\x08\xfc\x67\x07\x8d\x51\x7b\x78\x57\x89\x08\x78\x77\xf7\xc7\x9f\x81\x06\x56\x8d\x7c\x9e\x8d\xc5\x08\xf7\x6c\x07\x9f\xc0\xa7\x92"
+"\xac\x1b\xad\xa4\x80\x77\x9a\x1f\x97\x7b\x8f\x78\x62\x1a\xfb\x1c\x07\x8d\x51\x7c\x78\x56\x89\x08\x80\x77\xf7\xc2\x9f\x7e\x06\x56"
+"\x8d\x7c\x9e\x8d\xc5\x08\xf7\x27\x07\xed\x52\xbd\xfb\x05\x4f\x65\x83\x6e\x39\x1e\x0e\xc7\xf8\xa4\xa2\x15\x69\x8d\x7d\x9c\xb3\x1a"
+"\xf7\x87\x07\xdf\x57\xc1\x3b\x57\x67\x78\x52\x58\x1e\xf7\xa7\xfb\x50\x73\x07\xb7\x83\x92\x84\x8c\x62\x08\xfc\x88\x07\x8a\x61\x83"
+"\x82\x60\x83\x08\x74\xf7\x80\xa2\x07\x68\x90\x7e\x9a\xaf\x1a\xf7\x9a\x07\x8e\x92\x95\x94\x95\x1e\xa1\xa1\xa3\x97\xa1\x1b\xad\x9c"
+"\x70\x54\x1f\xfb\x81\x07\x8a\x66\x7e\x7c\x6b\x87\x08\x74\xf7\x7a\x07\x0e\x20\x66\x0a\xf7\x82\xf8\x62\xd7\x15\x8e\x62\x7e\x7f\x5a"
+"\x88\x08\x71\xfb\x2f\xa8\x06\x8f\xd8\xb6\xbd\xd2\x93\x08\xf7\x49\x9f\x6c\x06\x56\x8e\x7b\x9c\x8e\xc3\x08\xf8\x67\x07\x88\xc5\x9b"
+"\x9e\xbf\x8d\x08\x9e\x9f\xfb\xc8\x77\x96\x06\xef\x1d\x78\x58\x6b\x83\x6a\x1b\x69\x72\x95\xa0\x7c\x1f\x7f\x9b\x88\x9d\xb4\x1a\xf7"
+"\x1d\x07\x88\xc5\x9b\x9e\xc0\x8d\x08\x95\x9f\xfb\xc2\x51\x1d\xbb\x95\xa6\xd6\x1e\x0e\xcf\xf7\xde\xc7\x15\x8a\x69\x8a\x88\x78\x8a"
+"\x08\x71\xfb\x1d\xa8\x06\x8f\xcb\xb5\xb7\xcc\x92\x08\xdb\xa0\x85\x06\x6e\x8c\x7c\xa0\x8d\xaf\x08\xb9\x0a\xfb\x67\x77\x07\xa8\x8a"
+"\x9b\x75\x89\x67\x08\xfb\x23\x07\x84\x7d\x80\x88\x7b\x1b\x62\x77\xa0\xb6\x1f\xe4\x07\x89\xae\x98\x9f\xa6\x8f\x08\x9f\xfb\x5c\x77"
+"\x07\xa4\x87\x99\x76\x89\x69\x08\x41\x07\x3a\xbb\x65\xf1\xa6\x9e\x8e\x96\xaa\x1e\x0e\xf7\xae\xb4\xf7\xba\x15\x8f\x51\x91\x6e\x9f"
+"\x62\x08\xfb\x0c\xc4\xf5\x4b\xf7\x1f\x1b\xe2\xe1\xa7\xbe\xcd\x1f\xdd\xc8\xb6\xe6\xf7\x03\x1a\xed\x69\xe0\x4b\xc9\x1e\xce\x45\x28"
+"\xb3\x28\x1b\x35\x38\x6c\x55\x51\x1f\x62\x65\x76\x65\x72\x39\xf7\x10\x81\x18\x9c\xd1\x9d\xbe\x9f\xa7\x08\xb8\xab\xb9\xa3\xbe\x1b"
+"\xb6\xb4\x7a\x68\xb0\x1f\xc0\x5a\xaa\x28\xfb\x0a\x1a\x81\x8b\x82\x8a\x81\x1e\x87\x61\x15\x85\x39\x5f\x2a\x61\x70\x08\x78\x6d\x69"
+"\x81\x6a\x1b\x2a\x54\xd8\xf7\x32\x7b\x1f\x0e\xf9\x3e\xa3\x15\x60\x80\x99\xf7\x0f\x56\x1f\xfb\x6e\xf8\x97\x05\x6f\x06\xfb\x6d\xfc"
+"\xad\x66\x2f\x7f\x7d\x5c\x82\x19\x73\xf7\x5b\xa3\x07\x51\x8f\x75\x96\xa5\x1a\x98\x93\xa6\x9f\xbc\x1e\x9a\xb2\x05\xf7\x70\x06\xad"
+"\x3b\x96\x6b\x75\x1a\x77\x7e\x82\x69\x88\x1e\x86\x7f\x8a\x89\x7d\x1f\x73\xf7\xd1\x07\xfc\x7e\xf7\x7b\x15\xe7\xf7\x82\xee\xfb\x82"
+"\x05\xce\xf9\x22\x15\x4c\x7a\x6e\x74\x4e\x1b\x4d\x6d\xe5\x1d\x6f\x08\x67\xa4\xb3\x79\xc0\x1b\xc1\xb3\x9f\xb3\xa5\x1f\x9b\xa5\x92"
+"\xa3\x91\xbd\x08\x0e\x8f\xf8\x69\xca\x15\x81\x81\x05\x88\x88\x89\x8a\x86\x1b\x7d\x84\x93\x9b\x1f\xf7\x94\x07\xde\x41\xbe\xfb\x0c"
+"\xfb\x03\x41\x59\x42\x62\xa2\x73\xb3\xb3\xa6\xa2\xad\x99\x86\x97\x7e\x9b\x1e\x83\x95\x88\x91\x91\x1a\x9f\xa6\x9b\xae\xc4\xa4\x71"
+"\x4f\x1e\x43\x07\xfb\x0a\x67\x5c\x79\x67\x72\x08\x60\x6d\x77\x6a\x61\x1a\x4f\xb8\x5f\xcb\xc3\xb8\x9f\xbc\xc1\x1e\x59\x95\xa1\x78"
+"\xbb\x1b\xb6\xa9\x9a\xb4\xb0\x1f\xfb\x53\xc3\x15\x6c\x70\x78\x80\x73\x1b\x6d\x77\xa6\xb2\xc3\xb4\xb4\xda\xa0\x1f\xbd\xf8\x48\x15"
+"\x4c\x7a\x6f\x74\x4e\x1b\x4d\x6c\xe5\x1d\x6e\x08\x68\xa4\xb3\x79\xc0\x1b\xc2\xb2\x9f\xb3\xa5\xc3\x0a\xf7\xae\xf8\x1c\xf9\x38\x15"
+"\xfb\x61\xfb\x25\xfb\x24\xfb\x61\xfb\x5e\xf7\x24\xfb\x24\xf7\x5e\xf7\x5f\xf7\x24\xf7\x24\xf7\x5f\xf7\x5c\xfb\x25\xf7\x28\xfb\x5a"
+"\x1f\xfb\x44\xfb\xd8\x15\xf7\x54\x93\xc6\xef\xf4\x1b\xcd\xbb\x64\x3c\xa9\x1f\x9b\x63\x93\x5a\x90\x36\x08\x50\x04\x86\x33\x83\x5f"
+"\x79\x5f\x08\x46\x6e\x5c\x68\x49\x1b\xfb\x00\x52\xe7\xf7\x50\x84\x1f\x0e\x8f\xf7\x8f\xf8\x63\x15\xfb\x11\x2b\x24\xfb\x19\xfb\x20"
+"\xe7\x26\xf7\x15\xf7\x13\xe8\xf0\xf7\x1e\xf7\x1d\x2d\xf0\xfb\x12\x1f\xd8\xfb\x90\x15\xfb\x2c\x87\x7b\x60\x52\x1b\x52\x77\xbd\xf7"
+"\x25\x1f\xb9\x04\x8e\x07\xf7\x14\x8e\x9f\xb8\xc2\x1b\xa8\x9d\x7d\x6a\x98\x1f\x93\x76\x8f\x66\x8e\x44\x08\x0e\xf7\x1f\xa1\xf9\x12"
+"\x15\xcd\x87\x9d\x7d\x8d\x57\x08\xfc\x6e\x07\x89\x57\x7d\x7f\x45\x85\x08\x73\xf8\xd1\x07\xb2\xf7\x60\x05\x70\x06\x6c\x49\x77\x6f"
+"\x68\x6f\x08\x67\x5e\x56\x7b\x40\x1b\x4c\x79\x97\xb6\x1f\xf7\x81\x07\xf6\xb3\x65\xfb\x06\x96\x1f\xa5\xf7\xe0\x71\x06\x7d\xfb\x04"
+"\x64\x67\x22\x8c\x08\xf7\x78\x07\xb0\x97\x94\xc1\xe3\xc0\x7f\x6f\xaa\x1e\xaa\x70\x99\x6d\x98\x48\x08\xa3\xf7\x59\xfc\xc9\x06\xf8"
+"\x13\xf7\x73\x94\x0a\x6f\x08\x67\x97\x0a\x57\x77\x1d\xb1\xf8\x24\x94\x0a\x6e\x08\x68\x97\x0a\x8f\xf8\x88\xf9\x85\x15\xd0\xfc\x88"
+"\x46\x07\x0e\xf8\x8c\xad\x89\x15\x92\x06\xd5\x06\xf7\x44\xcd\x97\xb7\xcc\x1f\xf1\xd0\xd5\xf7\x36\xf7\x2f\x1a\xea\x6d\xde\x5b\xb1"
+"\x1e\xa7\x67\x5a\x98\x4a\x1b\xfb\x2b\x20\x56\x2e\x69\x1f\x7d\x66\x87\x73\x8a\x49\xd9\xb1\x18\x94\x07\x8a\xea\xb0\xb7\xe6\x99\x3d"
+"\xfc\x3e\x18\x7a\x40\x72\x5c\x6d\x81\x74\x8c\x18\xe5\x16\x8f\x8e\xc2\xb9\x9e\xb6\xa1\xf7\x13\x19\xc7\xf7\xec\x05\x92\x06\x8e\x06"
+"\xb4\x96\x8a\x87\x98\x1f\xc4\x76\xa9\x49\x26\x1a\xfb\x66\x2c\xfb\x29\xfb\x1e\x84\x1e\xf7\x8d\xfb\x99\x15\xda\x06\xb1\xf7\x62\x05"
+"\x7b\xb2\x8e\x8a\xa1\x1b\xf7\x14\xf7\x01\xf7\x39\xf7\x53\xf7\x00\x5e\xc3\x36\x57\x5e\x75\x62\x6a\x1f\x66\x5d\x76\x50\x73\xfb\x18"
+"\x08\xea\xe6\x15\xe6\x9b\xb0\xc0\xb9\x1b\xb4\xa1\x61\x3c\xfb\x2a\x52\xfb\x0b\x43\x6e\x75\x96\xa5\x77\x1f\x0e\xf7\x07\xf7\x97\x16"
+"\x7c\xf7\x2f\x05\x59\xb8\x6b\xe3\xe8\x1a\xc2\x96\xc5\x9f\xbd\x1e\xca\xa4\xb4\xae\xbd\x1b\xda\xca\xfb\x08\xfb\x25\x2e\x6b\x33\x59"
+"\x5e\x1f\x7c\xfb\x2f\x05\xf7\x80\xf7\x2d\x78\x06\x84\x5e\x7b\x7a\x6a\x8a\x08\xfb\x0a\x06\x8e\xb1\x05\xf2\xb9\xc7\xe8\xf7\x07\x1a"
+"\xbb\x7f\xbe\x75\xba\x1e\xef\x5d\x38\xc5\x2d\x1b\x2e\x38\x51\x27\x5d\x1f\x75\x5c\x7f\x58\x5b\x1a\xfb\x08\xc7\x2f\xf2\x5d\x1e\x8e"
+"\x65\x05\xfb\x0a\x06\x6a\x8c\x7c\x9b\x83\xb9\x08\x78\xfb\x2d\x06\x0e\xfb\xdd\xf7\xa5\x3b\x1d\x0e\xfb\x8a\x50\x1d\xf8\x8c\xf8\xa9"
+"\xf8\x95\x15\x49\x06\xfb\x74\xfc\x95\x05\xdb\x06\xf7\x45\xf8\x2d\xf7\x45\xfc\x2d\x05\xdb\x06\x0e\xf8\x8c\xf8\xa9\x16\xf7\x74\xf8"
+"\x95\x05\x3b\x06\xfb\x45\xfc\x2d\xfb\x45\xf8\x2d\x05\x3b\x06\xf7\x74\xfc\x95\x05\x0e\xf8\x8c\xf8\x8c\xf9\x60\x15\xfb\x60\xfb\x34"
+"\xfb\x32\xfb\x5f\xfb\x5b\xf7\x34\xfb\x33\xf7\x5d\xf7\x5b\xf7\x34\xf7\x34\xf7\x5c\xf7\x59\xfb\x34\xf7\x36\xfb\x58\x1f\xa4\x52\x15"
+"\xf7\x23\x7e\xf7\x06\xfb\x06\x99\xfb\x25\x08\xfb\xa3\x06\xf7\xa4\x52\x15\x82\xfb\x22\xfb\x0d\xfb\x0f\xfb\x22\x80\x08\xf7\xa8\x07"
+"\x53\xfb\xa8\x15\xfb\x27\x99\xfb\x05\xf7\x05\x7d\xf7\x29\x08\xf7\xa6\x06\xfb\xa6\xc4\x15\x99\xf7\x24\xf7\x07\xf7\x06\xf7\x25\x99"
+"\x08\xfb\xa4\x07\x0e\xf7\x11\xf7\x10\x15\xf8\x67\xf8\x67\xfc\x67\x06\xb3\xfc\x3f\x15\xf8\x17\xf8\x17\xfc\x17\x07\x0e\xf8\x8c\xf9"
+"\x64\xf8\xc3\x15\x4f\xfb\x8d\x06\x26\x86\x62\x7c\x6e\x1e\x5b\x72\x53\x6b\x50\x1b\x57\x58\xa4\xb3\x6f\x1f\x74\xac\x85\xb4\xf7\x04"
+"\x1a\xf7\x8d\x4f\xfb\x8a\x07\xfb\x1d\x90\x69\xa3\x63\x1e\x4a\xb1\xd1\x66\xde\x1b\xd7\xcb\xaa\xc3\xb4\x1f\xac\xb8\x91\xab\xf7\x29"
+"\x1a\x0e\xec\xf8\x27\xf8\x1c\x15\xfb\x69\x06\x41\xf7\x4d\x05\x2d\x06\xf7\x7d\xfc\xd5\x05\xde\x06\xf7\x7d\xf8\xd5\x05\x2d\x06\x22"
+"\xfb\x9d\x15\x3f\xfb\x48\x40\xf7\x48\x05\x0e\xc7\x62\x0a\x30\x07\x7f\x77\x87\x7c\x78\x1a\x5d\x99\x0a\x76\x82\x88\x7b\x1b\x63\x74"
+"\xa1\xb1\xab\xa2\xa0\xb4\x8f\x1f\xc9\x92\x05\x0e\xa2\x3e\x0a\x0e\xa2\xf7\x4d\xf9\x1b\x9e\x0a\xf7\x44\x16\x6b\x71\x71\x6c\x6b\xa5"
+"\x71\xaa\xab\xa5\xa5\xab\xaa\x71\xa5\x6c\x1f\xfb\xbe\xfb\x95\x15\x8d\x95\x96\x8c\x91\x1b\x93\x92\x88\x86\x8f\x1f\x94\x81\x8b\x8a"
+"\x8c\x2a\x08\xfb\x0d\x07\x6d\x8e\x73\x91\x75\x1e\x53\x9a\xbc\x69\xcd\x1b\xf7\x08\xd8\xf6\xf7\x35\xd3\x7d\xcf\x75\xa8\x1f\x9f\x7c"
+"\x78\x95\x73\x1b\x66\x73\x73\x67\x6c\x9e\x74\xac\x7f\x1f\xa8\x82\x8e\x89\x93\x83\x08\x98\x7d\x92\x71\x65\x1a\x29\x61\x46\x50\x5f"
+"\x79\xac\xd8\x1e\xf7\x58\x07\xb8\x6f\xb2\x6a\x84\x87\x8a\x8a\x87\x1e\xfb\x04\x5d\x05\x0e\xa2\x3e\x0a\xf6\xf7\x56\x15\x6d\x74\x74"
+"\x6e\x6e\xa2\x74\xa8\xa8\xa2\xa2\xa8\xa7\x74\xa3\x6f\x1f\xf7\x6c\xc4\x1d\xfb\x13\x62\x15\xaf\x06\x8e\x9c\x8d\x93\x8d\x94\x08\x99"
+"\xcb\x8c\x8f\x9b\x1a\xa3\x7a\x9e\x74\x74\x7a\x78\x73\x7b\x8c\x86\x9a\x4c\x1e\x8c\x82\x8d\x82\x8d\x83\x08\x0e\xa2\x3e\x0a\xf7\x7e"
+"\xf7\x0c\x15\x90\xa2\x8d\x97\x8c\x1a\x9b\xcf\x8c\x8f\x9b\x1a\xa4\x79\x9f\x72\x73\x79\x77\x72\x7f\x8d\x7c\x8f\x79\x1e\x91\x71\x8f"
+"\x7d\x8d\x81\x8c\x87\x19\x8d\x81\x8b\x89\x8e\x7e\x08\x0e\xc7\x23\x0a\xfb\x96\xf9\x6e\x38\x1d\xc7\x23\x0a\xfc\x25\xf8\xa5\x64\x0a"
+"\x2b\x0a\xfc\x1d\xe6\x2b\x1d\x2b\x0a\xfb\x69\xe6\x20\x0a\x2b\x0a\xfc\x49\xf7\x7a\x15\x6a\x6d\x6d\x69\x67\xa7\x6d\xae\xaf\xa7\xa7"
+"\xaf\xaf\x6e\xa9\x68\x1f\xf7\x64\x16\x6b\x6e\x6d\x69\x66\xa6\x6e\xae\xaf\xa8\xa7\xaf\xaf\x6d\xa9\x67\x1f\x0e\x2b\x0a\xfb\x9b\xe6"
+"\x28\x1d\x59\xf7\x28\xf9\x6b\x15\x54\x5f\x05\x85\x87\x87\x84\x85\x1a\x7b\xa7\x73\xc7\x68\x1e\x57\x69\x70\x61\x5c\x1a\x5e\xa5\x66"
+"\xbe\x70\x1e\x33\x4b\x6b\x58\x3e\x1a\x25\xd1\x46\xf1\x99\xa4\x8d\x8f\xa2\x1e\x8f\xa5\x95\x8c\x95\x1b\xad\x9c\x79\x67\x6c\x79\x76"
+"\x71\x7e\x87\x8c\x9a\x74\x1f\x94\x7c\x7f\x8f\x7b\x1b\x67\x71\x74\x6c\x6b\xa8\x75\xb6\xe4\xd1\xd4\xe8\xd6\x62\xb9\x47\x82\x79\x89"
+"\x89\x7c\x1f\x89\x7d\x7b\x8a\x84\x1b\x5b\x6d\xb3\xcc\xbc\x96\xaa\xb1\xc3\x1f\x77\xbd\xaa\x83\xad\x1b\xc4\xb4\xa9\xb7\xac\x71\x9f"
+"\x62\x5e\x58\x78\x68\x5b\x1f\x78\xa7\x84\xa1\xac\x1a\xae\x91\xa2\x9e\xb2\x1e\x7b\xac\xa5\x85\xb7\x1b\xcf\xb2\xa1\xb2\xac\x72\x9e"
+"\x5e\x5d\x5b\x7c\x6b\x54\x1f\x68\xa6\x7d\x9f\xa1\x1a\x97\x8f\x92\x98\x99\x1e\x0e\x8f\x2a\x0a\xfb\x04\xe6\x20\x0a\x8f\x2a\x0a\xfb"
+"\x2d\xe6\x15\xfb\x1d\xf7\x31\x05\x9d\x7c\x77\x95\x78\xb6\x0a\x7d\xa8\x79\x46\x1d\x57\x2e\x0a\xfb\x9a\xf8\xa4\x38\x0a\x57\x2e\x0a"
+"\xfb\x4b\xf9\x2f\x2a\x1d\x38\xf7\x0f\xf9\x4a\x15\x53\x5a\x05\x86\x88\x89\x86\x87\x1a\x72\xb6\x68\xd3\x67\x1e\x5c\x4d\x76\x6d\x77"
+"\x62\x08\x6a\x4b\x7a\x46\x47\x1a\x46\x9c\x50\xaa\x67\x1e\x6c\xa5\xb6\x7b\xc6\x1b\x9f\xa7\x8d\x8e\xa4\x1f\x8c\x96\x98\x8c\x8e\x1b"
+"\xa9\x9c\x7c\x71\x6b\x74\x72\x6f\x7d\x7b\x90\x92\x7e\x1f\x9f\x6a\x83\x8e\x78\x1b\x67\x71\x74\x6a\x65\xab\x73\xbf\xeb\xd9\xd7\xea"
+"\xd5\x67\xb3\x49\x84\x7d\x8a\x8a\x7f\x1f\x6e\x8a\x05\x50\x6e\xb3\xdd\xef\x9f\xe2\xbd\xf7\x01\x1f\x84\xa5\x9a\x89\xa1\x1b\xd2\xb8"
+"\xa9\xbb\xac\x73\xa2\x67\x5e\x60\x72\x53\x56\x1f\x5c\xad\x76\xa6\xa5\x1a\x96\x8f\x94\x97\x97\x1e\x0e\x78\x9e\xf8\x61\x97\xf7\x5f"
+"\x9a\x06\xac\x0a\xf7\x1e\x0b\xa8\x8f\x90\x90\x90\x8f\x8f\x92\x8e\x92\x90\xe5\x0c\x0c\xb6\x9d\x92\xa4\x93\xa4\x97\x95\x94\x8f\x90"
+"\x97\x0c\x0d\xf9\x66\x14\xf8\x84\x15\xbd\x13\x00\xa5\x02\x00\x01\x00\x08\x00\x0c\x00\x14\x00\x22\x00\x78\x00\x7e\x00\x86\x00\x8c"
+"\x00\x97\x00\x9c\x01\x10\x01\x8c\x01\xf3\x01\xf9\x02\x2f\x02\x3e\x02\x45\x02\x4c\x02\xa3\x02\xa9\x02\xae\x02\xcd\x02\xd4\x02\xe8"
+"\x02\xeb\x02\xfd\x03\x09\x03\x10\x03\x18\x03\x49\x03\xb3\x03\xe4\x03\xe8\x03\xf4\x04\x03\x04\x0c\x04\x1f\x04\x2c\x04\x35\x04\x40"
+"\x04\x4b\x04\x55\x04\x5b\x04\x64\x04\x6d\x04\x73\x04\x7b\x04\x87\x04\x8d\x05\x1e\x05\x95\x05\x9a\x05\xaf\x05\xe0\x06\x49\x06\x8b"
+"\x06\xe8\x07\x1c\x07\x40\x07\x77\x07\xc6\x07\xc9\x07\xf3\x08\x20\x08\x66\x08\xa2\x08\xe3\x09\x20\x09\x3c\x09\x67\x09\x6b\x09\x6e"
+"\x09\x7b\x09\x80\x09\x8f\x09\xbd\x09\xcf\x09\xd4\x0a\x01\x0a\x04\x0a\x0c\x0a\x10\x0a\x22\x0a\x36\x0a\x60\x0a\x89\x0a\x93\x0a\xb0"
+"\x0a\xc5\x0a\xe7\x0b\x09\x0b\x18\x0b\x21\x0b\x29\x0b\x47\x0b\x64\x0b\x81\x0b\x9d\x0b\xb9\x0b\xc0\x0b\xd1\x0b\xde\x0b\xe8\x0b\xf5"
+"\x0c\x0e\x0c\x1c\x0c\x34\x0c\x4c\x0c\x51\x0c\x68\x0c\x72\x0c\x89\x0c\xa0\x0c\xb5\x0c\xbc\x0c\xc0\x0c\xd5\x0c\xea\x0c\xff\x0d\x0b"
+"\x0d\x17\x0d\x1d\x0d\x2b\x0d\x3d\x0d\x50\x0d\x5e\x0d\x71\x0d\x84\x0d\x88\x0d\x98\x0d\xa3\x0d\xad\x0d\xbd\x0d\xc5\x0d\xd5\x0d\xe3"
+"\x0d\xea\x0d\xf9\x0e\x08\x0e\x17\x0e\x1a\x0e\x23\x0e\x31\x0e\x3f\x0e\x4b\x0e\x58\x0e\x5d\x0e\x6a\x0e\x77\x0e\x82\x0e\x8a\x0e\x92"
+"\x0e\x9e\x0e\xaa\x0e\xb6\x0e\xc2\x0e\xce\x0e\xd4\x0e\xdf\x0e\xea\x0e\xf5\x0f\x00\x0f\x0b\x0f\x14\x0f\x1a\x15\xc4\x06\xfb\x0f\x52"
+"\x1d\x15\x52\xbf\x1d\x15\xfb\xde\x43\xf7\xde\x06\x0e\x62\x0a\x4a\x07\xb6\x9a\xa3\x8f\xcc\x92\xc9\x92\x18\x0b\x9b\xf9\x1f\x15\xce"
+"\x88\x9e\x7b\x8d\x57\xdc\x1d\xf8\xdd\x07\xb3\xf7\x64\x05\x6f\x06\x6c\x48\x77\x6f\x67\x6e\x08\x66\x5d\x55\x7b\x3e\x1b\x4a\x79\x98"
+"\xb6\x1f\xf7\x86\x07\xf7\x01\xb4\x64\xfb\x08\x97\x1f\xa5\xf7\xe6\x71\x06\x7c\xfb\x06\x64\x67\xfb\x00\x8c\x08\xf7\x7c\x07\xb1\x98"
+"\x94\xbf\xf7\x37\xbc\x69\xfb\x19\xa4\x1e\xa4\xf7\x5d\xfc\xd5\x06\x0b\x8d\x31\x0a\x78\x77\x0b\x5f\x0a\xf7\xd8\x07\xb2\x1d\x0b\x86"
+"\x1d\xf7\xf2\x07\x0b\x15\x6a\x6d\x6d\x69\x67\xa7\x6d\xae\x4d\x1d\x08\xfb\xba\x07\x0b\xf8\x74\xd8\x1d\x80\x89\x82\x82\x72\x1e\x47"
+"\xfb\x54\x43\xf7\x4d\x05\x77\xbe\x8b\x8b\x93\x1a\x9a\x97\x92\xa4\x8e\x1e\x9b\x8c\x05\xa3\xfb\x8e\x73\x07\xa2\x88\x91\x88\x91\x82"
+"\x8e\x8a\xb9\x29\x9b\x62\xf7\x0c\xfb\xbb\x18\x79\x56\x05\x59\x7a\x72\x6b\x73\x1b\x82\x83\x93\x94\x8c\x8b\x8d\x8c\x8e\x1f\x8c\x90"
+"\x8c\x90\x8f\x1a\xa8\x74\x9f\x68\x65\x71\x71\x65\x5c\xb3\x6b\xc4\xad\xa8\x96\xa1\xa0\x1e\xa0\xa2\x9f\xb3\xae\xe9\xf7\x29\xf8\x21"
+"\x18\x9c\xb5\x95\x95\xaa\x8e\x08\x0b\xf9\x57\xf8\x61\x15\xfb\x1b\x73\x06\xb0\x87\x96\x83\x74\x1a\x7e\x7e\x65\x6c\x3e\x1e\x7d\x67"
+"\x83\x75\x7e\x67\x80\xb6\x86\x9e\x79\xcc\x08\x78\xcb\x83\xab\x95\x1a\x9b\x95\x90\xb1\x8e\x1e\xa3\xfb\x7e\x73\x07\xb2\x87\x8c\x8a"
+"\x9e\x49\x8c\x88\x8d\x83\x8e\x83\x47\xfb\x3f\x18\x73\xcb\x67\xe8\x05\x78\xbd\x86\x9a\x96\x1a\x9c\x95\x92\xa7\x8f\x1e\xa3\xfb\x72"
+"\x73\x07\xa5\x86\x8f\x85\xa6\x49\xf7\x28\xfc\x0a\x18\xa3\x06\xf7\x11\xf7\xca\xf1\xfb\xca\x05\xa2\x06\xf7\x2f\xf8\x25\x9a\xb0\x93"
+"\x93\xa6\x90\x19\x0b\xf9\x4f\xf9\x38\x15\xfb\x70\x72\x06\xcf\x86\x9b\x83\x6e\x1a\x77\x7e\x6b\x71\x60\x1e\xfb\x03\xfb\x4d\xfb\x0c"
+"\xf7\x7c\x88\x90\x8a\x8d\x89\x90\x19\x7d\xa2\x87\x97\x97\x1a\xa1\x9a\x93\xb4\x1e\xa4\x8c\x05\xa4\xfb\xe3\x72\x07\xad\x89\xa5\x78"
+"\x9f\x69\xf7\x4b\xfb\xe0\x18\xfb\x27\x07\x89\x40\x80\x81\x3b\x84\x08\x72\xf7\xef\xa4\x07\x3b\x92\x81\x95\x89\xd6\x08\xf7\x4c\x07"
+"\xf7\x53\xf7\xcb\x9a\xa2\x9e\x96\xad\x90\x19\x0b\xf8\xaf\xa3\x75\x1d\x0b\xf8\x38\xf7\x34\x15\x6f\x06\x83\x6d\x82\x79\x7b\x74\x68"
+"\x5d\x73\x81\x35\x8a\x08\x6e\x06\xf7\x7b\xf8\x27\x05\xa5\xfc\x07\x07\x84\xfb\x22\x05\xa5\x06\xa4\xea\xa5\x9b\xf7\x20\x8a\xfb\x7e"
+"\xfc\x28\x18\x72\xf8\x13\x07\x0b\x7b\x66\x05\x7e\xaf\xa6\x86\xac\x1b\xdb\x4f\x0a\x7f\x1f\x0b\x89\x0a\x78\x89\x51\x08\x0b\x53\x7c"
+"\x7a\x56\x88\x08\x0b\xf8\x76\xf8\x22\x15\xc0\xfb\x16\x07\x9b\x5f\x6f\x91\x63\x1b\xfb\x0b\xe6\x1d\x9e\x7e\xba\xd1\x1d\x83\x6a\x71"
+"\x82\x0a\xaa\xa7\xa0\xb3\xe7\x8f\x8b\x9a\xac\x1e\xc7\xa5\xa9\xb6\xc9\x1a\xb3\x7f\xa9\x6f\xa7\x1e\x3e\xfc\x56\x15\xc1\xa5\x7b\x69"
+"\x5d\x54\x71\x28\xee\x1d\xe4\xf8\x82\x15\xba\x9e\x65\x2e\x2e\x79\x67\x5b\x5b\x79\xae\xe9\xe9\x9d\xb0\xbb\x1f\x0b\x41\x0a\xa8\xae"
+"\x4a\x0a\xf7\x93\x94\x1d\x0b\xf8\x65\x68\x1d\xdf\x8c\x90\xa0\x1a\xa9\x77\xa1\x6f\x70\x76\x75\x6d\x7e\x8e\x76\x8f\x76\x1e\x93\x65"
+"\x92\x6a\x90\x6e\x08\x0b\xc6\xb8\xc6\xd9\x57\x1d\x0b\x08\xa4\xf7\x7e\x70\x06\x67\x7c\x82\x81\x76\x1b\x82\x7d\x8f\x95\x75\x1f\xa3"
+"\x0b\xa9\x1d\x0e\x96\x83\x05\x8e\x96\x92\x8c\x95\x1b\xa8\x9c\x7e\x74\x70\x77\x7d\x65\x0b\xa3\x07\x68\x8f\x7e\x9b\x8c\xb0\x08\xf7"
+"\xe4\x0b\x4e\x0a\xb1\xab\xaa\xb1\x0b\x9f\xa6\xf7\x1a\xfb\x7e\x05\x0b\xf9\x87\xf7\xb3\x9e\x1d\xe1\xf7\x0c\x1a\xf7\x66\xca\xf7\x02"
+"\xf7\x0d\xba\xb6\x79\x65\xb6\x1e\xb6\x65\xa3\x68\xad\x40\x37\x0a\x52\x5a\x96\x5b\x1b\xfb\x5c\xfb\x29\xfb\x2d\xfb\x63\xfb\x62\x88"
+"\x1d\x0b\xca\xf8\x1a\x15\x8d\x95\x96\x8c\x91\x1b\x93\x92\x88\x86\x8f\x1f\x94\x81\x8b\x8a\x8c\x2a\x08\xfb\x0d\x07\x6d\x8e\x73\x91"
+"\x75\x1e\x53\x9a\xbc\x69\xcd\x1b\xf7\x08\xd8\xf6\xf7\x35\xd3\x7d\xcf\x75\xa8\x1f\x9f\x7c\x78\x95\x73\x1b\x66\x73\x73\x67\x6c\x9e"
+"\x74\xac\x7f\x1f\xa8\x82\x8e\x89\x93\x83\x08\x98\x7d\x92\x71\x65\x1a\x29\x61\x46\x50\x5f\x79\xac\xd8\x1e\xf7\x58\x07\xb8\x6f\xb2"
+"\x6a\x84\x87\x8a\x8a\x87\x1e\xfb\x04\x5d\x05\x0b\xf7\x76\xf7\x2c\x15\xf7\x71\x07\x89\xaf\x9b\xa1\xa7\x9c\x1d\x70\x8c\x7b\xa0\x8c"
+"\xab\xf7\x10\xf7\x75\x18\xfb\x70\x07\x8d\x67\x7b\x75\x6f\x8a\x08\x77\xf7\x66\x9f\x07\x87\x0a\x9a\x76\x8a\x68\x08\x0b\xfb\xe9\x71"
+"\x0a\x15\x6a\x6d\x6c\x6a\x66\xa7\x6e\xae\xb0\x1d\x0b\xf7\x31\x05\x9d\x7b\x78\x95\x78\xb6\x0a\x7d\xa8\x79\x46\x1d\x22\x1d\xac\xa0"
+"\x92\x94\xa2\x1a\x0b\x66\x1d\x78\x89\x51\x08\xfc\x67\x21\x1d\x78\x77\xf7\xd0\x9f\x78\x20\x1d\x0b\x67\x9e\x6c\x64\x1a\x69\x7b\x76"
+"\x71\x6b\x7d\xa2\x0b\x08\xf7\x7a\xf7\x85\xfb\x7a\x07\x0b\x1f\x63\x9d\x05\x98\x6f\x73\x91\x76\x1b\x0b\x76\x6e\x8a\x08\x77\xf7\x61"
+"\x9f\x07\x71\x0b\x89\x8c\x96\x72\x1f\x63\x9d\x05\x98\x0b\xaf\x6d\xa9\x68\x1f\x0e\xac\x5f\xfb\x00\x4c\x7f\x65\x71\x0b\x71\xa5\xab"
+"\xab\xa6\xa6\xaa\x1f\x0b\x59\x90\x2f\x08\xa8\x0b\x6c\x6c\x65\x64\xaa\x6c\xb1\x0b\xbd\xad\xc2\xb7\x6a\xa5\x54\x7e\x83\x8a\x87\x0b"
+"\x67\x64\x35\x79\x1f\x0e\xd0\x15\x81\x07\x8d\x59\x7a\x79\x59\x8a\x08\x73\x77\xf7\xd6\x9f\x72\x06\x59\x8c\x7b\x9d\x8c\xbd\x08\x95"
+"\x97\x07\xc8\xc6\x97\xa0\xb7\x1f\xdd\xb2\xc2\xe6\xee\x1a\xf7\x06\x47\xeb\x20\xad\x1e\x6c\x95\x7a\x8d\x43\x90\x79\x8c\x18\x96\x07"
+"\x8a\xbc\x9b\x9d\xbd\x8d\x08\xa4\x9f\xfb\xd6\x77\xa3\x06\xbd\x89\x9c\x79\x89\x5a\x08\x80\x07\x61\x88\x48\x87\x70\x84\x63\x78\x19"
+"\x37\x61\x56\x33\x28\x1a\x28\xc2\x30\xdd\x64\x1e\x75\xb8\xc5\x80\xc9\x1b\xf7\x2e\xf8\x7b\x15\xf1\x85\xc2\x3c\xfb\x20\x1a\xfb\x1f"
+"\x54\x3c\x25\x85\x1e\xfb\x23\x16\x25\x91\x54\xda\xf7\x1f\x1a\xf7\x20\xc3\xda\xf0\x91\x1e\x0e\xf9\x95\xa4\x15\x72\x8c\x80\x90\x7e"
+"\x9a\xfb\xc5\xf8\x0e\x18\xf7\x50\xf7\x56\xaf\xa4\xec\x93\x08\xa4\xfb\xb5\x72\x07\xda\x85\x91\x88\x73\x1a\x7b\x86\x83\x6c\x6c\x1e"
+"\xfb\x6d\xfb\x6e\x05\xf7\x6a\x07\x8d\xd4\x9a\x9a\xd3\x8f\x08\xa4\xfb\xe6\x72\x07\xce\x88\x9e\x7c\x8c\x56\x08\xfc\x78\x07\x8a\x57"
+"\x7b\x7e\x45\x85\x43\x1d\x45\x93\x7a\x98\x8a\xbd\x08\xf7\x58\x07\xa6\xa4\xf7\x4a\xfb\x77\x05\x9e\x73\x90\x82\x80\x1a\x7e\x7d\x86"
+"\x6a\x89\x1e\x86\x7e\x8b\x8a\x7d\x1f\x72\xf7\xe4\x07\x0b\xf7\xb4\x6b\x1d\x0b\xc4\xf8\x58\x15\x3d\x1d\x78\x0a\x82\x86\x7b\x77\x0a"
+"\x7f\x83\x86\x81\xba\x1d\x07\x0b\xf7\x9a\xf7\xd2\x15\xf7\x95\xfb\x72\x06\x25\x0a\xf7\xcf\x9f\x79\x20\x1d\xf8\x67\x07\x88\xc5\x9b"
+"\x9e\xc0\x8d\x08\x9d\x9f\xfb\xcf\x77\x9e\x06\xbf\x89\x9b\x78\x89\x51\x08\xfb\x61\xfb\x95\x69\x0a\x0e\x15\x45\x4a\x62\x2d\x2a\x1a"
+"\xfb\x0f\xce\x33\xe7\xc6\xb4\xa8\xd3\xb5\x1e\x45\xa8\xb0\x6c\xbf\x1b\xe7\xcb\xf2\xf7\x27\xf7\x11\x5a\xe7\x48\x68\x73\x74\x6b\x6a"
+"\x9e\x76\xae\x85\x1f\xb3\x84\x8c\x8a\x98\x7e\x08\x9a\x7a\x92\x6f\x5e\x1a\x26\x5e\x4b\x43\x66\x70\x9c\xb1\x74\x1e\xa6\xc6\x97\xb9"
+"\xb6\x1a\xbb\x74\xaa\x67\x65\x73\x6b\x59\x5e\x98\x55\xa2\x5b\x1e\x68\x78\x6e\x76\x6b\x1b\x52\x6d\xc6\xf7\x07\xd7\x96\xc9\xa4\xca"
+"\x1f\x0e\x91\xf7\xda\x15\xe6\xfb\x7f\x06\x5f\x70\x75\x53\x1e\x72\xf7\xd0\x07\x7f\x0a\xfb\x67\x30\x07\xf8\x03\x16\xfb\x06\xf7\x72"
+"\x06\x9c\x8c\x93\x8f\x90\x1e\x96\x93\x9e\x91\xa7\x1b\xd2\xbe\x6a\x46\xad\x1f\xa6\x56\x99\x43\x36\x1a\x2c\x77\x35\xab\x0a\xf7\x7d"
+"\xf7\x06\x07\x0e\xf7\x97\xf7\xc2\x15\x8a\xa3\x9f\x8b\x9a\x1b\xe2\xc0\x95\xa4\xba\x1f\xc0\xa8\xaa\xc1\xcb\x1a\xce\x6a\xc1\x50\xaa"
+"\x1e\x9f\x63\x69\x92\x49\x1b\xfb\xdd\x77\x9f\x06\xbf\x88\x9a\x7a\x89\x53\x08\xfc\x6a\x07\x8c\x31\x0a\x79\x77\xf7\xdd\x9f\x6b\x20"
+"\x1d\xf8\xa3\x04\x8c\x9f\x9d\x8b\x9a\x1b\xab\xa5\x85\x80\x9b\x1f\xa6\x78\x9b\x5d\x4f\x1a\x27\x66\x62\x31\x80\x7b\x8b\x8c\x7b\x1e"
+"\x0e\x15\x81\x0a\xca\xf7\x02\xf7\x0d\xba\xb6\x79\x65\xb6\x1e\xb6\x65\xa2\x69\xae\x3f\x37\x0a\x51\x5b\x96\x5b\x1b\xfb\x5c\xfb\x29"
+"\xfb\x2d\xfb\x62\xfb\x62\xf7\x26\xfb\x25\xf7\x64\xf7\x07\xcf\xae\xf7\x03\xf0\x1f\x0b\x61\x66\x71\x7d\x62\x1b\x34\x54\xe2\xf7\x1c"
+"\xf2\xab\xca\xbf\x9b\x9a\x83\x80\x91\x1f\x90\x82\x8b\x8b\x61\x62\x1d\x33\xfb\x1c\x27\x21\xfb\x24\x0b\xb6\x15\x5e\x8e\x7d\x98\xb5"
+"\x1a\xf8\xd3\xbb\x0a\xfb\x4b\x07\xb9\x60\x6d\x9b\x5d\x1b\xfb\x02\x39\x20\xfb\x25\xfb\x1d\xd7\x29\xf4\xc0\xac\x9b\xbd\xba\x1f\x4a"
+"\x07\xb9\x98\xa4\x90\xc9\x92\xc9\x93\x18\xfb\x5a\xe7\x7e\x0a\x0b\xf9\x34\x15\x33\x49\x73\x54\x4a\x1f\x41\x4c\x66\x34\xfb\x04\x1a"
+"\xfb\x61\xf7\x1a\xfb\x1c\xf7\x5d\xf7\x58\xf7\x1c\xf7\x1e\xf7\x5b\xf5\x6e\xda\x4d\xcb\x1e\xcc\x4b\x3d\xaa\x23\x1b\x8f\x68\x15\xf6"
+"\xc7\xfb\x00\xfb\x54\xfb\x58\x4b\xfb\x09\x20\x5c\x5e\xa7\xb9\x70\x1f\x6c\xc1\x7d\xd1\xf4\x1a\xf7\x10\x9f\xd9\xba\xc4\x5f\x1d\x78"
+"\x1d\x0e\x99\x16\xf7\xd0\x06\x7f\x0a\xfc\x81\x07\x5f\x70\x75\x53\x1e\xf7\x89\xf8\xda\x15\xa2\x9f\x97\xb2\xd3\xbd\x6a\x46\xae\x1e"
+"\xa6\x57\x99\x42\x36\x1a\x2d\x77\x34\xab\x0a\x0b\xf9\x45\xa4\x15\x5f\x80\x99\xf7\x11\x55\x9b\x1d\x98\x92\xa3\xa1\xc1\x1e\x9a\xb3"
+"\x05\xf7\x75\x06\xad\x3c\x97\x68\x75\x1a\x75\x7e\x82\x68\x89\x1e\x86\x8a\x7e\x8a\x7d\x8a\x08\x72\x0b\x15\xfb\x58\xfb\x2c\xfb\x2f"
+"\xfb\x5d\xfb\x59\xf7\x2c\xfb\x31\xf7\x53\xf7\x5e\xf7\x2a\xf7\x2b\xf7\x61\xf7\x5b\xfb\x2b\xf7\x2f\xfb\x58\x1f\x57\x04\xf7\x2d\xf7"
+"\x0f\xfb\x1b\xfb\x3c\xfb\x3f\xfb\x0e\xfb\x18\xfb\x32\xfb\x2a\xfb\x0f\xf7\x1c\xf7\x3a\xf7\x3d\xf7\x0f\xf7\x1b\xf7\x2e\x1f\x0e\x77"
+"\x07\xa5\x87\x99\x77\x89\x68\x08\xfb\xe4\x22\xf7\xe4\x07\x8a\xae\x98\x9f\xa5\x8f\x08\x9f\xfb\x5d\x77\x07\xa5\x87\x99\x77\x89\x68"
+"\x08\xfb\xe4\x22\xf7\xe4\x07\x89\xae\x99\x3e\x1d\x89\x9a\x77\x89\x66\x29\x0a\x67\x8d\x7b\x75\x6f\x1b\x76\x0b\xf8\xad\xb6\x15\x60"
+"\x8d\x7f\x98\x8a\xb6\x08\xf7\xfc\xfb\x5d\x73\x07\xbc\x88\x97\x7f\x8c\x5f\x08\xfb\xaf\x07\x6a\x6a\x77\x80\x6e\x1b\x62\x7c\x9f\xbe"
+"\x1f\xf7\xe7\xfb\x50\x73\x07\xb4\x83\x92\x82\x8c\x61\x08\xfb\x90\x07\x33\xbd\x57\xde\xbf\xae\x9b\xbd\xc5\x1e\x0b\xf7\x65\xf8\x5d"
+"\x15\xfb\x49\x54\x90\x77\x05\x8e\x93\x90\x8c\x8f\x1b\xa2\x96\x77\x5f\x1f\xfb\x6e\x07\x57\x8d\x7f\x9a\x73\x1e\x7a\x95\x96\x82\x94"
+"\x1b\x90\x92\x8d\x8e\x94\x1f\xf7\x11\xbd\x84\xa1\x05\x85\x7c\x82\x89\x84\x1b\x71\x87\x96\xdb\x1f\x0b\x64\x1d\x92\x89\x77\xb7\x1f"
+"\xa8\x7e\x05\x83\x9d\xa6\xb8\x0a\x67\x7e\x7d\x7e\x70\x1b\x7f\x49\x0a\x6e\x74\xbd\x0a\xf7\x81\xf7\xbe\x15\xcd\xa4\xa0\xa7\xa3\x1b"
+"\xa3\x95\x76\x5c\x1f\xfc\x87\xf7\x11\xf8\x90\x07\xd2\x5c\xc0\x4d\x5b\x67\x6e\x45\x67\x1e\xee\x07\x54\x1d\xfb\xd6\xf7\x11\x07\x0b"
+"\xf7\xf4\x67\x0a\x9f\x81\x1d\x39\x0a\x7b\x7d\x8e\x94\x74\x1f\x85\x8d\x2f\x0a\x0e\xf7\x61\x6a\x0a\x0b\x07\x89\xc6\x9a\x9d\xc0\x8d"
+"\x08\x9e\x9f\xfb\xd0\x44\x0a\x0b\xfb\x69\xfc\x19\x18\x4b\xfb\x05\x84\x82\x64\x85\x08\x72\xf7\x62\xa4\x07\x7a\x8d\x05\x57\x91\x7d"
+"\x94\xa7\x1a\x97\x8f\x97\x96\xa0\x1e\xef\xf7\x50\x05\xf7\x52\xfb\x4c\x06\x8a\x40\x7d\x0b\xf9\x47\x15\x4c\x7a\x6e\x73\xa6\x0a\x6e"
+"\x08\x68\xa4\xb4\x78\xc1\xca\x1d\xfb\x48\x8c\x1d\x0b\x77\xa6\x06\xae\x8a\xa0\x74\x65\x1a\xfb\x91\x07\xfb\x50\x6e\x2e\x52\x7b\x82"
+"\x94\x9a\x8f\x8b\x8f\x8c\x8f\x1e\x96\x07\xa9\x73\xa1\x69\x65\x74\x72\x62\x54\xb4\x66\xc7\xc6\xba\xae\x0b\x8c\x1d\x0e\x15\xc3\x06"
+"\xf7\x22\xc5\x1d\x0b\x15\xf4\x8f\x1d\xa5\x0a\x8d\x54\x92\x72\xa0\x6e\x08\x68\xa5\xb4\x78\xc0\x1b\xc3\xac\x0a\x1b\xa8\x9c\x7e\x74"
+"\x70\x77\x7d\x65\x7b\x7f\x8e\x94\x72\x1f\x85\x8d\x2f\x0a\x0e\x15\xa7\xae\x9b\xa0\x90\x92\x08\xb1\xc0\x9a\xa5\x9c\x1a\x92\x87\x8f"
+"\x83\x83\x83\x87\x7e\x7c\x1e\x8a\x8a\x89\x89\x88\x89\xfb\x5f\xfb\x38\x18\x87\x07\xf7\x62\xfb\x3a\x0b\x5f\xc6\xf7\x1c\x1e\xf7\xe2"
+"\x07\x8d\xd8\x99\x98\xdc\x8d\x08\xa4\xfb\xe6\x72\x07\xd0\x85\x96\x7e\x8d\x42\x08\xfb\xe2\x07\x29\xa0\x5a\xc8\x5f\x1e\x68\xbb\xcb"
+"\x79\x0b\x9a\x1d\xb6\x9d\x8e\x96\x94\x95\x1f\x0b\x1e\x83\x77\xf7\x67\x9f\x06\x73\x8c\x89\xbf\x0a\xc7\xd2\x9b\x95\xc1\x8c\x19\x9f"
+"\xfb\x41\x77\x9f\x07\x9b\x94\x84\x0b\xad\x0a\xf7\x60\x9f\x07\x72\x90\x7f\x9f\x8c\xba\x0a\x99\x74\x90\x81\x86\x1a\x82\x0b\x07\x8a"
+"\x61\x83\x83\x5c\x83\x08\x73\xf7\xa5\x07\x3d\xf8\xbb\x15\x92\x94\x9b\x97\x98\x1e\xa1\x9f\xa2\x97\xa1\x1b\xbf\xa3\x4f\xfb\x17\x0b"
+"\x15\xfc\xa0\x07\x3a\xf7\x66\x56\x74\xf7\x13\xfb\xb2\x05\xd8\x06\xf7\x14\xf7\xb2\x56\xa2\x3a\xfb\x66\x05\xf8\xa0\x07\xdc\xfb\x66"
+"\xc0\x0b\xb4\x1d\xc0\x1b\xc3\xb4\x9f\xb4\xa5\x1f\x9c\xa6\x92\xa3\x0b\x81\x0a\xcb\xf7\x02\xf7\x0c\xba\x0b\x63\x1d\xb7\x83\x93\xcb"
+"\x1d\x0b\x15\x85\x81\x7a\x7f\x7e\x1e\x74\x77\x76\x80\x75\x1b\x56\x72\xc6\xf7\x14\xf7\x15\xa6\xc6\xc5\xac\xaa\x73\x65\x99\x1f\x0b"
+"\xf7\x6c\xf7\x24\xf7\x1e\xf7\x63\xf7\x62\xfb\x1f\xf7\x11\xfb\x7c\x1f\xfb\xc5\x72\x06\xca\x86\x9e\x7c\x8c\x5c\x08\x0b\x69\xbc\xf7"
+"\x07\x1f\xa2\xf7\x92\x07\xc9\x86\xa9\x7a\xae\x1e\xc9\x6d\x4e\xaf\x41\x1b\x56\x66\x7c\x67\x66\x1f\xb0\x0b\x50\x4d\x6b\x73\x5a\x78"
+"\x08\x7f\x6e\x6a\x85\x6f\x1b\x49\x4c\xae\xbf\x6e\x1f\x6e\xc0\x7d\xd2\xf0\x1a\xf7\x63\x0b\x62\x1a\x51\xd6\x69\xf7\x12\xf7\x3b\xe2"
+"\xbf\xee\xd8\x51\xb6\x21\x8d\x1e\x4a\x8c\x05\x36\x8c\x7c\x90\xa7\x1a\x0b\xf9\x76\xc3\x1d\x7b\x45\x1d\x07\x4a\xb6\x63\xd0\xce\xb3"
+"\xa9\xdd\xb4\x1e\x72\x96\x05\x69\x1d\x0b\x43\x0a\xa5\x78\x9d\x6e\x77\x7a\x82\x78\x7a\x1e\x0e\x30\x0a\xfc\xa1\xfb\x6f\xf8\xa1\x07"
+"\x0b\x6e\x8c\x7b\xa0\x8d\xb0\x08\xf7\xba\xa8\x0a\x8a\x0b\x79\x72\x1a\x83\xa2\xf7\xd7\x74\x07\x82\x2c\x6a\x5d\x4f\x89\x08\x70\xf7"
+"\xa3\xf7\x06\x06\xe5\x88\x0b\xc0\x8d\x08\x9e\x9f\xfb\xd0\x77\x9e\x06\xbf\x89\x9b\x0b\x83\x94\x91\x89\x91\x1b\x92\x8f\x91\x94\x9f"
+"\x70\xb6\x58\xc6\x1f\x7d\x9c\x7f\x9b\x7d\xa0\x08\x0b\x1f\xc0\x5c\x05\xac\xa2\x9c\x95\xa8\x1b\xae\xaa\x82\x71\xb9\x1f\x72\xb9\xa5"
+"\x83\xac\x1b\xb9\x0b\xf7\xd0\xb3\x1d\x0b\x83\x86\x81\x7f\x7e\x1f\xfb\x11\xfb\x1e\x05\xf7\x16\x07\x8a\xad\x97\x9e\xa5\x90\x08\x9f"
+"\x0b\x07\x25\x0a\xf7\xc5\x9f\x83\x20\x1d\x0b\x89\x53\x08\xfb\x67\x07\xfb\x3c\xf7\x61\x05\x78\xa2\x84\x98\x99\x1a\x9f\x9b\x97\xa6"
+"\x1e\x0b\x1a\x9f\x96\x97\x9d\x1e\x95\x9f\xfb\x74\x77\x06\xa6\xa7\x60\x37\xa7\x1f\xcf\xfb\x6b\x05\x0b\xf8\x35\x15\x5d\x65\x65\x5d"
+"\x5b\xaf\x66\xba\xbc\xb0\xaf\xba\xba\x65\xb2\x5c\x1f\x0e\xa0\x0a\x81\x88\x7b\x1b\x0b\x15\x53\xbf\x1d\x15\x4c\x7b\x6e\x74\x4e\x1b"
+"\x4d\x6c\xa4\xc8\x80\x1f\x60\x06\x8d\x55\x92\x73\xa0\x0b\xf9\x38\x15\xfb\x70\x72\x06\xd8\x86\xa0\x76\x42\x1a\xfb\xc5\x07\xfb\x28"
+"\x53\x46\x0b\x6a\x66\xac\x06\xc7\xa8\x6e\x50\x52\x69\x68\x55\x5f\x6d\xa6\xc6\x76\x1f\x70\x82\x0b\xa4\xb3\x79\xbf\x1b\xc2\xb3\x9f"
+"\xb3\xa4\xc3\x0a\x07\x8a\x65\x79\x76\x6b\x8a\x08\x73\xf7\x83\x0b\xb8\x69\xc8\x5e\x1d\x0b\x76\x68\x83\x62\x35\x1a\x65\x1d\x80\x7f"
+"\x5e\x87\x08\x0b\x5d\x65\x65\x5e\x5a\xaf\x66\xbb\xba\xb1\xb1\xb9\xba\x65\xb1\x5c\x1f\x0e\x15\x6e\x73\x74\x6e\x6e\xa2\x74\xa8\xa8"
+"\xa2\xa2\xa8\xa7\x74\xa3\x6f\x1f\x0b\x15\x63\x4e\x0a\xb2\xaa\xaa\xb1\xb1\x6c\xab\x66\x1f\x0b\x15\x6b\x71\x72\x6b\x6b\xa5\x71\xab"
+"\xaa\xa5\xa5\xab\xaa\x71\xa5\x6c\x1f\x0b\xf7\x68\x18\xb6\xbc\x05\xd2\xc6\x9c\x96\xc0\x1b\x9f\xfb\x41\x77\xa0\x07\x0b\x5e\x1d\x77"
+"\x0b\x1b\xdb\xbd\xad\xc2\xb7\x6a\xa5\x54\x7d\x84\x8a\x87\x7f\x1f\x0e\x78\x89\x51\x08\xfc\x67\x21\x1d\x78\x77\x0b\xcf\x8e\x08\xa4"
+"\xfb\xe5\x72\x07\xcc\x0b\x08\xa4\xf7\x5d\xfd\x0e\x75\x06\xce\x87\x9f\x82\x73\x1a\x81\x0b\x15\x4b\x79\x6e\x74\xf0\x1d\x0b\x4d\x1b"
+"\x4b\x6c\xa5\xc8\x7f\x1f\x5f\x06\x8e\x54\x92\x72\xa0\x0b\x79\x52\x55\x62\x79\xbb\xf4\xf7\x4b\x9b\xc4\xbd\x1e\x0e\x07\x89\xb0\xec"
+"\x1d\xa7\x0b\x15\xf7\x08\xce\xbd\xcd\xe1\x1a\xd0\x62\xba\x4f\x59\x6a\x0b\x1b\xbd\xa3\x6a\x47\x50\x75\x6b\x63\x75\x84\x93\xa3\x1f"
+"\x0b\x6b\x5e\x1e\x5d\x69\x5b\x74\x4a\x1b\x5e\x7e\x98\xb8\x1f\x0b\xb4\xd9\x1d\x8d\x66\x7b\x76\x6e\x8a\x08\x77\x0b\xa4\xb5\x78\xc0"
+"\x1b\xc3\xb3\x9f\xb4\xa5\x1f\x9c\xa5\x0b\x7a\x8c\x86\x9a\x49\x1e\x8d\x81\x8d\x82\x8d\x82\x08\x0b\x54\x25\x31\x61\x56\x43\x65\x7e"
+"\x99\xb4\x1f\x0e\x16\xf7\xe2\xa4\x06\x3d\x94\x83\x94\x89\xd5\x08\x0b\x9f\x07\xc2\x0a\x0b\xc6\xb8\xc6\xd9\x1a\xca\x67\xb5\x55\x5d"
+"\x6e\x6e\x0b\xfb\x14\xf7\xb2\x05\x3e\x06\xfb\x13\xfb\xb2\xc0\x0b\x77\x07\xa8\x8a\x9b\x76\x89\x67\x29\x0a\x0b\x1b\x71\x76\x77\x72"
+"\x77\x96\x0b\x54\x92\x72\xa0\x6f\x08\x67\x0b\x85\x9e\x1b\xc4\xb0\xb3\xe2\xa2\x1f\x60\x06\x0b\xf7\xba\x07\x89\xb0\x9b\xa0\xa8\x8c"
+"\x08\x9f\x0b\xad\x08\xf7\x06\x07\x99\x9d\xde\xfb\x1f\x05\x0b\xfb\x6b\x73\x07\xcc\x87\x95\x84\x8c\x5c\x08\x0b\xda\x69\x1e\x7d\xad"
+"\xa6\x87\xd0\x1b\xf7\xac\x0b\x91\x76\x1b\x4d\x50\x0a\x85\x85\x81\x1e\x82\x7c\x87\x81\x80\x1a\x0b\x8c\x71\xb7\xfb\x26\xf7\x7e\x18"
+"\xb6\xbd\x0b\x15\xc8\x06\xf8\x5e\xf9\x2a\x05\x4d\x06\x0b\xf8\xad\xf7\x65\x15\xe3\xfc\x8c\x33\x07\x0b\x6e\x8c\x7b\xa0\x8d\xb0\x08"
+"\xf7\xba\x07\x0b\x1f\x9c\xa5\x92\xa3\x90\xbd\x08\x0e\x1f\xf7\x1f\x35\x05\x0e", 50579
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusRoman-BoldItalic.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusRoman-BoldItalic.cff.cpp
new file mode 100644
index 0000000000..bf7cfa8f9e
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusRoman-BoldItalic.cff.cpp
@@ -0,0 +1,1738 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusRoman_BoldItalic_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x17\x4e\x69\x6d\x62\x75\x73\x52\x6f\x6d\x61\x6e\x2d\x42\x6f\x6c\x64\x49\x74\x61\x6c\x69\x63\x00"
+"\x01\x01\x01\x3e\xf9\xbc\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x14\x04\x1e\xe1\x5a\x30\x00\x00\x19\xff\x0c"
+"\x02\xfb\x01\x0c\x03\xd0\x0c\x04\xfb\x5c\xfb\xd8\x1c\x04\x82\xfa\x60\x05\x1c\x2a\xe5\x0f\x1c\x2a\xf8\x11\xaf\x1d\x00\x00\xc5\xbc"
+"\x12\x01\xa6\x02\x00\x01\x00\x08\x00\x0e\x00\x13\x00\x1d\x00\x24\x00\x2b\x00\x35\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d"
+"\x00\x63\x00\x69\x00\x6e\x00\x74\x00\x7a\x00\x84\x00\x8b\x00\x8e\x00\x95\x00\x9c\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2"
+"\x00\xcd\x00\xd9\x00\xe3\x00\xe7\x00\xf2\x00\xf4\x00\xfa\x01\x04\x01\x0b\x01\x12\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41"
+"\x01\x4d\x01\x53\x01\x59\x01\x5f\x01\x6b\x01\x6f\x01\x71\x01\x77\x01\x7d\x01\x89\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6"
+"\x01\xc2\x01\xcd\x01\xd0\x01\xd2\x01\xd5\x01\xdb\x01\xe1\x01\xed\x01\xf0\x01\xf6\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21"
+"\x02\x27\x02\x33\x02\x38\x02\x3e\x02\x4b\x02\x52\x02\x59\x02\x60\x02\x6f\x02\x7b\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6"
+"\x02\xa8\x02\xb3\x02\xb9\x02\xbf\x02\xc9\x02\xcd\x02\xd3\x02\xda\x02\xe3\x02\xec\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22"
+"\x03\x2b\x03\x34\x03\x3d\x03\x46\x03\x4f\x03\x58\x03\x61\x03\x6a\x03\x73\x03\x7c\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2"
+"\x03\xbb\x03\xc4\x03\xcd\x03\xd6\x03\xdf\x03\xe8\x03\xf1\x03\xfa\x04\x03\x04\x0c\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42"
+"\x04\x4b\x04\x54\x04\x5d\x04\x66\x04\x6f\x04\x78\x04\x81\x04\x8a\x04\x93\x04\x9c\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2"
+"\x04\xdb\x04\xe4\x04\xed\x04\xf6\x04\xff\x05\x08\x05\x11\x05\x1a\x05\x23\x05\x2c\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62"
+"\x05\x6b\x05\x74\x05\x7d\x05\x86\x05\x8f\x05\x98\x05\xa1\x05\xaa\x05\xb3\x05\xbc\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2"
+"\x05\xfb\x06\x04\x06\x0d\x06\x16\x06\x1f\x06\x28\x06\x31\x06\x3a\x06\x43\x06\x4c\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e"
+"\x06\x85\x06\x90\x06\x9a\x06\xa3\x06\xac\x06\xb5\x06\xbf\x06\xc6\x06\xcf\x06\xdb\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03"
+"\x07\x11\x07\x15\x07\x1b\x07\x21\x07\x26\x07\x2d\x07\x3a\x07\x40\x07\x46\x07\x50\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b"
+"\x07\x86\x07\x8f\x07\x92\x07\x9a\x07\xa3\x07\xae\x07\xb4\x07\xb9\x07\xbe\x07\xc4\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00"
+"\x08\x05\x08\x0a\x08\x10\x08\x12\x08\x19\x08\x21\x08\x29\x08\x33\x08\x3d\x08\x49\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86"
+"\x08\x8c\x08\x97\x08\x9c\x08\xa8\x08\xb4\x08\xba\x08\xc0\x08\xc6\x08\xd2\x08\xd6\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd"
+"\x09\x0b\x09\x11\x09\x1c\x09\x22\x09\x2e\x09\x38\x09\x40\x09\x42\x09\x48\x09\x55\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88"
+"\x09\x93\x09\x9e\x09\xa4\x09\xa7\x09\xa9\x09\xb0\x09\xbc\x09\xca\x09\xcd\x09\xda\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09"
+"\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e\x0a\x34\x0a\x39\x0a\x42\x0a\x47\x0a\x50\x0a\x53\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76"
+"\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d\x0a\xa4\x0a\xab\x0a\xb2\x0a\xb9\x0a\xc0\x0a\xc7\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1"
+"\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d\x0b\x14\x0b\x1b\x0b\x22\x0b\x29\x0b\x30\x0b\x37\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61"
+"\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d\x0b\x84\x0b\x8b\x0b\x92\x0b\x99\x0b\xa0\x0b\xa7\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1"
+"\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed\x0b\xf4\x0b\xfb\x0c\x02\x0c\x09\x0c\x10\x0c\x17\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41"
+"\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d\x0c\x64\x0c\x73\x0c\x87\x0c\x93\x0c\x98\x0c\x9e\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb"
+"\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5\x0c\xe9\x0d\x1f\x0d\x5f\x0d\x77\x0d\x83\x41\x45\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41"
+"\x6c\x70\x68\x61\x41\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x41\x6d\x61\x63\x72\x6f\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e"
+"\x67\x61\x63\x75\x74\x65\x42\x65\x74\x61\x43\x61\x63\x75\x74\x65\x43\x63\x61\x72\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65"
+"\x78\x43\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x43\x68\x69\x44\x63\x61\x72\x6f\x6e\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45"
+"\x62\x72\x65\x76\x65\x45\x63\x61\x72\x6f\x6e\x45\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45"
+"\x6f\x67\x6f\x6e\x65\x6b\x45\x70\x73\x69\x6c\x6f\x6e\x45\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74"
+"\x6f\x6e\x6f\x73\x45\x75\x72\x6f\x47\x61\x6d\x6d\x61\x47\x62\x72\x65\x76\x65\x47\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63"
+"\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x47\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66"
+"\x6c\x65\x78\x49\x4a\x49\x62\x72\x65\x76\x65\x49\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f"
+"\x6e\x65\x6b\x49\x6f\x74\x61\x49\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x49\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c"
+"\x64\x65\x4a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x4b\x61\x70\x70\x61\x4b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61"
+"\x63\x75\x74\x65\x4c\x61\x6d\x62\x64\x61\x4c\x63\x61\x72\x6f\x6e\x4c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74"
+"\x4d\x75\x4e\x61\x63\x75\x74\x65\x4e\x63\x61\x72\x6f\x6e\x4e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65"
+"\x76\x65\x4f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x4f\x6d\x61\x63\x72\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73"
+"\x4f\x6d\x69\x63\x72\x6f\x6e\x4f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x4f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68"
+"\x69\x50\x69\x50\x73\x69\x52\x61\x63\x75\x74\x65\x52\x63\x61\x72\x6f\x6e\x52\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68"
+"\x6f\x53\x61\x63\x75\x74\x65\x53\x63\x65\x64\x69\x6c\x6c\x61\x53\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61"
+"\x61\x63\x63\x65\x6e\x74\x53\x69\x67\x6d\x61\x54\x61\x75\x54\x62\x61\x72\x54\x63\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63"
+"\x63\x65\x6e\x74\x54\x68\x65\x74\x61\x55\x62\x72\x65\x76\x65\x55\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63"
+"\x72\x6f\x6e\x55\x6f\x67\x6f\x6e\x65\x6b\x55\x70\x73\x69\x6c\x6f\x6e\x55\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73"
+"\x55\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x55\x72\x69\x6e\x67\x55\x74\x69\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69"
+"\x72\x63\x75\x6d\x66\x6c\x65\x78\x57\x64\x69\x65\x72\x65\x73\x69\x73\x57\x67\x72\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d"
+"\x66\x6c\x65\x78\x59\x67\x72\x61\x76\x65\x5a\x61\x63\x75\x74\x65\x5a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62"
+"\x72\x65\x76\x65\x61\x65\x61\x63\x75\x74\x65\x61\x66\x69\x69\x30\x30\x32\x30\x38\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69"
+"\x69\x31\x30\x30\x31\x38\x61\x66\x69\x69\x31\x30\x30\x31\x39\x61\x66\x69\x69\x31\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32"
+"\x31\x61\x66\x69\x69\x31\x30\x30\x32\x32\x61\x66\x69\x69\x31\x30\x30\x32\x33\x61\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69"
+"\x31\x30\x30\x32\x35\x61\x66\x69\x69\x31\x30\x30\x32\x36\x61\x66\x69\x69\x31\x30\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38"
+"\x61\x66\x69\x69\x31\x30\x30\x32\x39\x61\x66\x69\x69\x31\x30\x30\x33\x30\x61\x66\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31"
+"\x30\x30\x33\x32\x61\x66\x69\x69\x31\x30\x30\x33\x33\x61\x66\x69\x69\x31\x30\x30\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61"
+"\x66\x69\x69\x31\x30\x30\x33\x36\x61\x66\x69\x69\x31\x30\x30\x33\x37\x61\x66\x69\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30"
+"\x30\x33\x39\x61\x66\x69\x69\x31\x30\x30\x34\x30\x61\x66\x69\x69\x31\x30\x30\x34\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66"
+"\x69\x69\x31\x30\x30\x34\x33\x61\x66\x69\x69\x31\x30\x30\x34\x34\x61\x66\x69\x69\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30"
+"\x34\x36\x61\x66\x69\x69\x31\x30\x30\x34\x37\x61\x66\x69\x69\x31\x30\x30\x34\x38\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69"
+"\x69\x31\x30\x30\x35\x30\x61\x66\x69\x69\x31\x30\x30\x35\x31\x61\x66\x69\x69\x31\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35"
+"\x33\x61\x66\x69\x69\x31\x30\x30\x35\x34\x61\x66\x69\x69\x31\x30\x30\x35\x35\x61\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69"
+"\x31\x30\x30\x35\x37\x61\x66\x69\x69\x31\x30\x30\x35\x38\x61\x66\x69\x69\x31\x30\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30"
+"\x61\x66\x69\x69\x31\x30\x30\x36\x31\x61\x66\x69\x69\x31\x30\x30\x36\x32\x61\x66\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31"
+"\x30\x30\x36\x36\x61\x66\x69\x69\x31\x30\x30\x36\x37\x61\x66\x69\x69\x31\x30\x30\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61"
+"\x66\x69\x69\x31\x30\x30\x37\x30\x61\x66\x69\x69\x31\x30\x30\x37\x31\x61\x66\x69\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30"
+"\x30\x37\x33\x61\x66\x69\x69\x31\x30\x30\x37\x34\x61\x66\x69\x69\x31\x30\x30\x37\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66"
+"\x69\x69\x31\x30\x30\x37\x37\x61\x66\x69\x69\x31\x30\x30\x37\x38\x61\x66\x69\x69\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30"
+"\x38\x30\x61\x66\x69\x69\x31\x30\x30\x38\x31\x61\x66\x69\x69\x31\x30\x30\x38\x32\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69"
+"\x69\x31\x30\x30\x38\x34\x61\x66\x69\x69\x31\x30\x30\x38\x35\x61\x66\x69\x69\x31\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38"
+"\x37\x61\x66\x69\x69\x31\x30\x30\x38\x38\x61\x66\x69\x69\x31\x30\x30\x38\x39\x61\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69"
+"\x31\x30\x30\x39\x31\x61\x66\x69\x69\x31\x30\x30\x39\x32\x61\x66\x69\x69\x31\x30\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34"
+"\x61\x66\x69\x69\x31\x30\x30\x39\x35\x61\x66\x69\x69\x31\x30\x30\x39\x36\x61\x66\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31"
+"\x30\x30\x39\x38\x61\x66\x69\x69\x31\x30\x30\x39\x39\x61\x66\x69\x69\x31\x30\x31\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61"
+"\x66\x69\x69\x31\x30\x31\x30\x32\x61\x66\x69\x69\x31\x30\x31\x30\x33\x61\x66\x69\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30"
+"\x31\x30\x35\x61\x66\x69\x69\x31\x30\x31\x30\x36\x61\x66\x69\x69\x31\x30\x31\x30\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66"
+"\x69\x69\x31\x30\x31\x30\x39\x61\x66\x69\x69\x31\x30\x31\x31\x30\x61\x66\x69\x69\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31"
+"\x39\x33\x61\x66\x69\x69\x31\x30\x38\x34\x36\x61\x66\x69\x69\x36\x31\x32\x34\x38\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69"
+"\x69\x36\x31\x33\x35\x32\x61\x6c\x70\x68\x61\x61\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c"
+"\x65\x6c\x65\x66\x74\x61\x6e\x67\x6c\x65\x72\x69\x67\x68\x74\x61\x6f\x67\x6f\x6e\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61"
+"\x6c\x61\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x61\x72\x72\x6f\x77\x62\x6f\x74\x68\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72"
+"\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x72\x69\x67\x68\x74\x61\x72\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e"
+"\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x62\x73\x65\x62\x65\x74\x61\x63\x61\x63\x75\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72"
+"\x63\x75\x6d\x66\x6c\x65\x78\x63\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x63\x68\x69\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70"
+"\x6c\x79\x63\x6c\x75\x62\x64\x63\x61\x72\x6f\x6e\x64\x63\x72\x6f\x61\x74\x64\x65\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69"
+"\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x65\x62\x72\x65\x76\x65\x65\x63\x61\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e"
+"\x74\x65\x6c\x65\x6d\x65\x6e\x74\x65\x6d\x61\x63\x72\x6f\x6e\x65\x6e\x67\x65\x6f\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e"
+"\x65\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x65\x71\x75\x69\x76\x61\x6c\x65\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64"
+"\x65\x74\x61\x65\x74\x61\x74\x6f\x6e\x6f\x73\x65\x78\x63\x6c\x61\x6d\x64\x62\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66"
+"\x65\x6d\x61\x6c\x65\x66\x72\x61\x6e\x63\x67\x61\x6d\x6d\x61\x67\x62\x72\x65\x76\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78"
+"\x67\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x67\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75"
+"\x61\x6c\x68\x62\x61\x72\x68\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x68\x65\x61\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76"
+"\x65\x69\x6a\x69\x6d\x61\x63\x72\x6f\x6e\x69\x6e\x66\x69\x6e\x69\x74\x79\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72"
+"\x61\x6c\x62\x74\x69\x6e\x74\x65\x67\x72\x61\x6c\x74\x70\x69\x6e\x74\x65\x72\x73\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69"
+"\x6c\x65\x66\x61\x63\x65\x69\x6f\x67\x6f\x6e\x65\x6b\x69\x6f\x74\x61\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74"
+"\x61\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x69\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69"
+"\x72\x63\x75\x6d\x66\x6c\x65\x78\x6b\x61\x70\x70\x61\x6b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c"
+"\x61\x6e\x64\x69\x63\x6c\x61\x63\x75\x74\x65\x6c\x61\x6d\x62\x64\x61\x6c\x63\x61\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63"
+"\x65\x6e\x74\x6c\x64\x6f\x74\x6c\x65\x73\x73\x65\x71\x75\x61\x6c\x6c\x69\x72\x61\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e"
+"\x75\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75"
+"\x74\x65\x6e\x61\x70\x6f\x73\x74\x72\x6f\x70\x68\x65\x6e\x63\x61\x72\x6f\x6e\x6e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e"
+"\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x6e\x6f\x74\x65\x71\x75\x61\x6c\x6e\x75\x6f\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72"
+"\x75\x6d\x6c\x61\x75\x74\x6f\x6d\x61\x63\x72\x6f\x6e\x6f\x6d\x65\x67\x61\x6f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63"
+"\x72\x6f\x6e\x6f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x6f\x72\x74\x68\x6f\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61"
+"\x63\x75\x74\x65\x70\x61\x72\x74\x69\x61\x6c\x64\x69\x66\x66\x70\x65\x73\x65\x74\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63"
+"\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62\x73\x65\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75"
+"\x6f\x74\x65\x72\x65\x76\x65\x72\x73\x65\x64\x72\x61\x63\x75\x74\x65\x72\x61\x64\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63"
+"\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x72\x65\x76\x6c\x6f\x67\x69\x63\x61\x6c\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65"
+"\x73\x63\x65\x64\x69\x6c\x6c\x61\x73\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x73\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73"
+"\x65\x63\x6f\x6e\x64\x73\x69\x67\x6d\x61\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x73\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f"
+"\x6e\x73\x75\x6e\x74\x61\x75\x74\x62\x61\x72\x74\x63\x61\x72\x6f\x6e\x74\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65"
+"\x74\x61\x74\x6f\x6e\x6f\x73\x75\x62\x72\x65\x76\x65\x75\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f"
+"\x6e\x75\x6e\x64\x65\x72\x73\x63\x6f\x72\x65\x64\x62\x6c\x75\x6e\x69\x30\x30\x41\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30"
+"\x32\x31\x41\x75\x6e\x69\x30\x32\x31\x42\x75\x6e\x69\x30\x32\x43\x39\x75\x6e\x69\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75"
+"\x6e\x69\x30\x33\x41\x39\x75\x6e\x69\x30\x33\x42\x43\x75\x6e\x69\x30\x33\x43\x32\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34"
+"\x30\x44\x75\x6e\x69\x30\x34\x35\x30\x75\x6e\x69\x30\x34\x35\x44\x75\x6e\x69\x30\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e"
+"\x69\x30\x34\x39\x36\x75\x6e\x69\x30\x34\x39\x37\x75\x6e\x69\x30\x34\x39\x38\x75\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39"
+"\x41\x75\x6e\x69\x30\x34\x39\x42\x75\x6e\x69\x30\x34\x39\x43\x75\x6e\x69\x30\x34\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69"
+"\x30\x34\x41\x31\x75\x6e\x69\x30\x34\x41\x32\x75\x6e\x69\x30\x34\x41\x33\x75\x6e\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42"
+"\x75\x6e\x69\x30\x34\x41\x45\x75\x6e\x69\x30\x34\x41\x46\x75\x6e\x69\x30\x34\x42\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30"
+"\x34\x42\x32\x75\x6e\x69\x30\x34\x42\x33\x75\x6e\x69\x30\x34\x42\x36\x75\x6e\x69\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75"
+"\x6e\x69\x30\x34\x42\x39\x75\x6e\x69\x30\x34\x42\x41\x75\x6e\x69\x30\x34\x42\x42\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34"
+"\x43\x42\x75\x6e\x69\x30\x34\x43\x43\x75\x6e\x69\x30\x34\x44\x38\x75\x6e\x69\x30\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e"
+"\x69\x30\x34\x45\x38\x75\x6e\x69\x30\x34\x45\x39\x75\x6e\x69\x30\x34\x45\x45\x75\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33"
+"\x45\x75\x6e\x69\x32\x30\x41\x46\x75\x6e\x69\x32\x31\x32\x36\x75\x6e\x69\x32\x32\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69"
+"\x32\x32\x32\x37\x75\x6e\x69\x32\x32\x32\x38\x75\x6e\x69\x32\x32\x39\x35\x75\x6e\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e"
+"\x69\x76\x65\x72\x73\x61\x6c\x75\x6f\x67\x6f\x6e\x65\x6b\x75\x70\x73\x69\x6c\x6f\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72"
+"\x65\x73\x69\x73\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74"
+"\x6f\x6e\x6f\x73\x75\x72\x69\x6e\x67\x75\x74\x69\x6c\x64\x65\x77\x61\x63\x75\x74\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78"
+"\x77\x64\x69\x65\x72\x65\x73\x69\x73\x77\x67\x72\x61\x76\x65\x78\x69\x79\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61"
+"\x76\x65\x7a\x61\x63\x75\x74\x65\x7a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x7a\x65\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b"
+"\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69"
+"\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b"
+"\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69"
+"\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x4e\x69\x6d\x62\x75\x73\x20\x52\x6f\x6d\x61\x6e\x20\x42\x6f\x6c"
+"\x64\x20\x49\x74\x61\x6c\x69\x63\x4e\x69\x6d\x62\x75\x73\x20\x52\x6f\x6d\x61\x6e\x00\xd9\x02\x00\x01\x00\x06\x00\x0b\x00\x0f\x00"
+"\x16\x00\xa0\x00\xae\x01\x05\x01\x33\x01\x38\x01\x3e\x01\x51\x01\x5a\x01\x64\x01\x76\x01\x7c\x01\x84\x01\xe9\x02\x5f\x02\xcc\x03"
+"\x31\x03\x94\x03\xb6\x03\xd8\x03\xe3\x03\xe6\x03\xf1\x03\xfd\x04\x7d\x04\xf5\x05\x53\x05\x6d\x05\xa1\x05\xc4\x05\xe1\x06\x06\x06"
+"\x14\x06\x25\x06\x2a\x06\x38\x06\x4d\x06\x5b\x06\x70\x06\x78\x06\x80\x06\x86\x06\x8e\x06\xca\x06\xfd\x07\x38\x07\x47\x07\x4c\x07"
+"\x51\x07\x61\x07\x82\x07\x9d\x07\xb0\x07\xc2\x07\xc9\x07\xce\x07\xdf\x07\xe9\x08\x00\x08\x0d\x08\x1f\x08\x33\x08\x36\x08\x41\x08"
+"\x52\x08\x5c\x08\x61\x08\x6a\x08\x73\x08\x80\x08\x8a\x08\x92\x08\x9a\x08\xa2\x08\xad\x09\x66\x09\xe6\x0a\x6d\x0a\xf1\x0b\x12\x0b"
+"\x3b\x0b\xac\x0c\x0b\x0c\x6c\x0c\x76\x0c\xd1\x0c\xd4\x0d\x27\x0d\x7c\x0d\xd0\x0e\x06\x0e\x25\x0e\x31\x0e\x50\x0e\x96\x0e\xcd\x0f"
+"\x01\x0f\x07\x0f\x45\x0f\x6d\x0f\xac\x0f\xe9\x10\x13\x10\x4c\x10\x5f\x10\x89\x10\x9c\x10\xb5\x10\xc6\x10\xf1\x11\x1b\x11\x42\x11"
+"\x6a\x11\x85\x11\x9a\x11\xbe\x11\xcb\x11\xd8\x11\xfb\x12\x0e\x12\x30\x12\x52\x12\x74\x12\x8b\x12\xab\x12\xc8\x12\xe7\x12\xef\x12"
+"\xfc\x13\x17\x13\x28\x13\x45\x13\x60\x13\x68\x13\x7d\x13\x98\x13\xa8\x13\xb3\x13\xbe\x13\xd5\x13\xe0\x13\xf8\x14\x0a\x14\x23\x14"
+"\x3c\x14\x54\x14\x5c\x14\x6e\x14\x7b\x14\x8d\x14\xa3\x14\xb8\x14\xc0\x14\xd5\x14\xe8\x14\xec\x14\xf5\x15\x08\x15\x1b\x15\x2e\x15"
+"\x41\x15\x49\x15\x5b\x15\x6a\x15\x7c\x15\x8c\x15\x9c\x15\xab\x15\xbc\x15\xcb\x15\xdc\x15\xed\x15\xfc\x16\x06\x16\x10\x16\x20\x16"
+"\x30\x16\x40\x16\x50\x16\x60\x16\x6f\x16\x7e\x16\x8d\x16\x9c\x16\xab\x16\xb0\x16\xbe\x16\xcc\x16\xda\x16\xe8\x16\xf5\x17\x02\x17"
+"\x0f\x17\x1c\x17\x29\x17\x36\x17\x43\x17\x4e\x17\x59\x17\x65\x17\x71\x17\x7c\x17\x88\x17\x94\x17\xa0\x17\xa8\x17\xb0\x17\xbb\x17"
+"\xc6\x17\xd1\x17\xdc\x17\xe7\x17\xf2\x17\xfb\x06\x85\x75\x05\x0b\x06\x91\xa1\x05\x0b\x91\xa1\x05\x0b\x63\x1d\xf7\x17\xea\x05\x0e"
+"\xf8\xde\xf7\x56\x15\x72\x90\x68\x52\x76\x72\x64\x70\x19\x64\x53\x47\x78\x35\x1b\x60\x79\x95\xa3\x92\x8d\x96\x91\x9f\x1f\x8d\x8f"
+"\x8c\x92\x8d\x93\x8d\x91\x18\xc3\xf7\x65\x05\xf7\x06\x89\xa9\x78\x47\x1a\x7d\x8a\x7f\x88\x78\x1e\xa7\x86\xd5\xf7\xa5\x6f\x8f\x5c"
+"\x2d\x71\x7e\xfb\x18\x8c\x19\xc8\xf7\x73\x05\xae\x95\x97\x94\xb4\x1b\xd3\xc2\x7c\x70\xa6\x1f\xa2\x73\x92\x72\x4d\x1a\xa6\x86\xb6"
+"\xf7\x52\x05\xfc\xb0\x72\x06\xae\x85\xa0\x87\x92\x87\x08\x91\x87\x8f\x82\x80\x1a\x7d\x87\x73\x85\x75\x1e\xfb\x0f\xfc\x55\x7b\x56"
+"\x7f\x80\x57\x83\x19\x72\xf8\xbe\x07\x0b\x88\x1d\x66\xa9\x6e\xb0\xba\xb9\xb2\xe2\xc5\x90\x1d\x0b\xf8\x55\xf9\x41\x15\x42\x41\x71"
+"\x59\x47\x1f\xfb\x0d\x33\x35\xfb\x35\xfb\x1f\x1a\xfb\x23\xea\x2b\xf7\x21\xda\xd7\xa5\xbc\xce\x1e\xf7\x10\xe7\xdd\xf7\x33\xf7\x26"
+"\x1a\xf7\x19\x24\xed\xfb\x1f\x1e\x88\x69\x15\xc7\xb4\x5b\x44\xfb\x0d\x4d\xfb\x5c\x48\x29\x1f\x48\x5d\x5e\x6d\x55\x1b\x4c\x64\xba"
+"\xd5\xf1\xbe\xf7\x4c\xc2\xec\x1f\xe5\xbe\xc0\xb4\xcc\x1b\x0b\xf8\xe5\xa4\x15\xcd\x1d\x6b\x5a\x7c\x7e\x67\x83\x19\x72\xf7\x58\xa4"
+"\x07\x5d\x78\x96\xa3\x99\x90\x9a\x95\x9c\x1f\xc6\xf1\x05\xf7\x6b\x06\xde\x1d\xf7\xc4\x07\xfc\x44\xf7\x8c\xd0\x1d\x0b\x06\x90\xa1"
+"\x05\x0b\x15\x2b\x1d\x2d\x1d\x0e\x15\x68\x6e\x6d\x67\x69\xa9\x6d\xad\xaf\xa9\xa8\xae\xaf\x6d\xa9\x67\x1f\x0e\xf7\x2c\xe2\x05\xa9"
+"\x9c\x94\x96\x0b\x59\x1d\x51\x7e\x4b\x82\x3b\x97\x1d\x0b\x9e\x1a\xa5\x75\xa0\x71\x79\x7a\x7f\x65\x68\x1e\xfb\x0e\xfb\x17\x05\x0b"
+"\x4a\x1d\x97\x21\x1d\x0b\x7f\x5e\x79\x79\x68\x88\x19\x0b\xf8\x6b\xf7\x1b\xe1\x1d\x91\xa0\x9e\xc3\x1f\xaf\xf7\x01\x05\x9b\xba\x95"
+"\xb7\xa3\x1a\xbc\x71\xa5\x5c\x66\x67\x7c\x71\x70\x1e\x66\x68\x78\x73\x48\x28\xcb\xf7\x5a\x18\x4b\x7d\x3b\x6b\x1d\x97\x85\x78\x7f"
+"\x7d\x55\x6b\xfb\x04\x1f\x74\x39\x84\x71\x71\x2b\x08\xf7\x0d\x06\xba\xf7\x41\xb0\xe2\xc8\xdc\x08\xa6\x9f\xaa\xa1\x9d\x1b\x98\x97"
+"\x81\x80\x88\x89\x83\x88\x81\x1f\x54\xfb\x3a\x05\x7b\x5b\x7f\x52\xe7\x1d\x0b\x99\xf8\x2f\x15\x9d\x90\x8a\x87\x92\x1f\x9c\x82\x9b"
+"\x61\x9a\x44\x08\xac\xfb\x36\x9c\x2c\x6c\x1a\x74\x82\x73\x79\x72\x1e\x6f\x76\x70\x76\x7a\x1b\x84\x79\x92\x92\x82\x1f\x97\x7a\x72"
+"\x94\x79\x1b\x71\x73\x71\x6e\x69\xa6\x71\xae\xc2\xcc\xb2\xce\xc2\x1f\xf7\x16\xf7\x33\xf7\x0b\xf7\x81\xf0\x1a\xad\x6e\xa9\x6a\x6c"
+"\x71\x70\x6d\x72\x92\x7f\xa3\x79\x1e\x9e\x7d\x90\x83\x7e\x1a\x6c\x7a\x63\x45\xfb\x1a\x1e\x7f\xd6\x75\xf7\x0b\x71\xf7\x03\x79\xba"
+"\x19\x5a\x7f\x67\x85\x4b\x85\x08\x0b\x9b\xf8\x2b\x15\xa4\x94\x8a\x84\x93\x1f\x9f\x79\x99\x2e\x8e\xfb\x1e\x8d\x3d\x18\x87\x8b\x8a"
+"\x8a\x68\x1e\x8a\x5e\x05\xa6\x06\xc4\xe1\xc4\xeb\x94\x9a\xba\xe3\x19\xa2\xfb\xb1\x05\xa6\x06\xf7\x4d\xf7\x58\xe2\xf7\x19\xdf\x1a"
+"\xac\x6f\xa8\x6a\x6d\x71\x6f\x6b\x7c\x91\x7e\x9a\x76\x1e\x99\x79\x91\x7d\x81\x1a\x6d\x6c\x5c\x33\x23\x1e\x6b\xf7\xe0\x05\x70\x06"
+"\x37\xfb\x25\x7b\x6e\x53\x26\x88\xf7\x11\x84\xcb\x74\xe1\x5d\x82\x76\x87\x33\x7c\x08\x0b\xf9\x39\xf9\x41\x15\x6d\x06\x75\x7e\x81"
+"\x84\x7c\x1b\x83\x7c\x8e\x90\x7c\x1f\x99\x5e\x5e\x92\x62\x1b\xfb\x73\xfb\x4d\xfb\x5d\xfb\x87\xfb\x2f\xf7\x01\x23\xf7\x37\xd2\xcd"
+"\xa1\xb6\xc4\x1f\xa8\xa1\x9c\x9d\xab\xb7\x6d\xa1\x18\x59\x50\x6f\x74\x61\x79\x08\x7f\x6f\x6c\x85\x6c\x1b\x2d\x53\xcc\xf7\x01\xf7"
+"\x25\xd3\xf7\x42\xe6\xd7\x1f\xaa\xb0\xb2\x9a\xb4\x1b\xdc\xbd\x4f\x29\x7e\x8a\x83\x89\x7d\x1f\xab\x85\x05\x0b\x98\xf7\xbb\x15\xa7"
+"\x88\x9b\xb7\x9b\x9b\xaa\x8c\x19\xf7\x25\x06\xfb\xb8\xfb\xf6\xa4\x75\x96\x93\x05\x92\x95\x90\x8f\x8c\x1b\x92\x95\x90\x8d\x94\x1b"
+"\x9f\x9e\x82\x73\xae\x1f\x67\xc0\xb0\x7d\xb4\x1b\xc8\xba\xb2\xbf\xa7\x72\xa3\x6f\x70\x74\x73\x6f\x80\x8e\x82\x95\x80\x1f\x90\x84"
+"\x8d\x87\x87\x1a\x82\x82\x84\x7e\x79\x7f\x97\xae\x7a\x1e\x6b\xc8\x73\xa3\x58\xa0\xf7\xad\xf7\xe3\x18\x95\xfb\xcc\x07\x0b\x15\xf4"
+"\xb9\xce\xd8\xd4\x1a\xc0\x6c\xae\x5e\x66\x70\x6f\x65\x73\x94\x7d\xa6\x78\x1e\xa0\x7e\x91\x82\x7e\x1a\x6b\x68\x68\x44\x65\x1e\x0e"
+"\x69\xa9\x6d\xad\xaf\xa9\xa8\xae\xaf\x6d\xa9\x67\x1f\xf7\x68\x16\x68\x6e\x6d\x67\x69\xa9\x6d\xad\xaf\xa9\xa8\xae\xaf\x6d\xa9\x67"
+"\x1f\x0e\x15\xfb\x03\xf7\x27\x05\xa1\x7b\x76\x58\x1d\x2d\x1d\x0e\xec\xe4\xf7\x05\xbe\x70\xbd\x5e\xab\x1f\x0b\xfb\x17\xfc\x7f\x7f"
+"\x5e\x79\x79\x68\x88\x19\x0b\xf7\x03\xf9\x18\x15\xab\x86\x99\x89\x95\x88\x92\x87\x19\x91\x87\x8f\x82\x81\x1a\x7f\x86\x6c\x86\x79"
+"\x1e\xfb\x0f\xfc\x55\x7b\x57\x7c\x7d\x5a\x85\x19\x72\xf7\xbc\xa4\x07\x51\x8f\x7d\x93\xa9\x1a\x99\x90\xa4\x94\xab\x1e\xc2\xf7\x55"
+"\x05\xa8\x06\xf6\xfb\xdf\x05\xf7\x5e\xa4\x06\x52\x90\x82\x93\x75\xc6\x38\xf7\x8a\x18\xc2\x96\xa4\x95\xab\xa0\x08\xbe\xad\xa8\xbe"
+"\xc2\x1a\xec\x3e\xba\xfb\x33\x1e\xfb\xa8\x06\xf7\x72\x3f\x15\xaf\x94\x94\x93\xaa\x1b\xc4\xac\x69\x4e\x49\x6f\x4e\x5f\x70\x1f\x71"
+"\x7a\x64\x84\x4d\x8a\x08\x0b\xc8\xf7\xb7\x15\xc6\xa8\xa1\xa8\x9b\x1b\x94\x8f\x86\x82\x80\x89\x80\x80\x63\x1f\x68\xfb\x16\x85\x6e"
+"\x67\x1a\x46\xbc\x5c\xd3\xd8\xc9\xbb\xea\xb8\x1e\xab\xd0\xa0\xde\xc7\x1a\xce\x73\xb2\x62\x6b\x74\x70\x67\x79\x91\x7b\x97\x7c\x1e"
+"\x9e\x73\x8b\x8b\x8f\x83\x08\x94\x74\x90\x75\x76\x1a\x64\x79\x54\x6e\x5d\x1e\x5f\x71\x6b\x74\x6c\x1b\x6e\x76\xa4\xac\x98\x8f\xa1"
+"\x91\xa3\x1f\xba\xf7\x4a\x05\x90\xa2\x8e\x9d\x9b\x1a\xb0\x75\xa3\x68\x65\x5d\x71\x64\x6c\x1e\x79\x74\x80\x78\x79\x62\x08\x0b\xf7"
+"\xe1\xf8\x61\x15\x6e\x06\x78\x80\x88\x89\x7c\x1b\x81\x83\x8d\x92\x79\x1f\x95\x72\x7f\x8e\x76\x1b\x3a\x56\x5a\x3e\x55\x99\x6f\xcd"
+"\x3c\x1f\xb1\x5e\x9d\x69\x72\x1a\x6d\x72\x73\x6b\x74\x76\x96\x9f\x7b\x5d\x1d\x92\x96\x88\x86\x98\x1f\x83\xa3\x9d\x87\xa0\x1b\xe0"
+"\xca\xc4\xd6\xb8\x72\xbc\x53\xcc\x1f\x65\xb8\x79\xa9\xa2\x1a\xab\xa0\xa0\xab\xb9\xa6\x67\x38\x9a\x1e\xa6\x89\x05\x0b\xf7\xd2\x89"
+"\x1d\xfb\x37\xfb\x35\x32\xc9\x4d\xe6\xb7\xb6\x9b\xa8\xad\x1e\xa5\xa1\x9b\x9e\xae\xbd\x08\x0b\xf8\xbe\xf7\x56\x15\x70\x90\x3b\xfb"
+"\x10\x3e\x61\xfb\x24\x8d\x19\x45\x06\xf8\x46\xf8\xf1\x05\xa8\xfc\x68\x07\x52\xfb\x46\xa7\x87\xd4\xf5\xce\xb2\xf7\x04\x8d\x19\xd9"
+"\x06\xfc\x46\xfc\xf1\x05\x6e\xf8\x8e\x07\x0b\x15\xf7\x08\xbe\xd6\xe1\xdc\x1a\xc6\x69\xb2\x58\x62\x6d\x6c\x61\x70\x95\x7b\xa9\x77"
+"\x1e\xa2\x7c\x92\x81\x7d\x1a\x67\x64\x64\x3c\x61\x1e\x0e\xf8\x1c\x15\x99\xaa\x93\x9c\x8f\x92\x47\x1d\x85\x6c\x87\x50\x87\x50\x89"
+"\x69\x8a\x82\x8a\x7a\x8a\x87\x89\x73\x08\x0b\x08\xfb\x28\x6c\x78\x62\x63\x1b\x81\x83\x90\x91\x8d\x8d\x8e\x8d\x8f\x1f\x93\x97\x8f"
+"\x96\x96\x1a\xa3\x73\xa3\x71\x70\x73\x72\x6e\x5b\xb2\x6c\xc7\x0b\xb6\x1d\x79\x79\x69\x88\x19\x83\x20\x1d\xf7\xa5\x06\x0b\x15\xf3"
+"\xb9\xcf\xd8\xd4\x1a\xc0\x6c\x60\x1d\x68\x68\x44\x65\x1e\x0e\x49\x1d\xac\x61\x1d\x9d\xd2\x05\xee\xa4\xa9\xbd\xaf\x5e\x1d\x7f\x66"
+"\x1d\x0b\x08\xc8\xf7\x10\x90\x96\xad\x1a\xac\x73\xa2\x69\x75\x73\x80\x7a\x7f\x1e\x7f\x7c\x0b\x71\x85\x74\x05\x8c\x8f\x90\x8b\x8d"
+"\x1b\xa0\x99\x7c\x0b\x1b\xa9\x9c\x7e\x74\x72\x75\x7b\x69\x75\x7a\x8f\x98\x6f\x1f\x75\x6a\x05\x79\xb6\x0b\x97\xb8\x9d\x9d\xad\x8e"
+"\x19\x0b\x67\x1e\xfb\x0e\xfb\x17\x05\x0e\x91\xa1\x05\x6f\x06\x0b\x8b\x87\x89\x85\x1e\xfb\x17\x0b\xf7\x4f\x15\xf2\xf8\x17\x2e\x1d"
+"\xfb\xa3\x52\x1d\x8f\x99\xf7\xe8\xf8\x24\xfb\x01\xfc\x2d\x2f\x1d\x84\x20\x1d\xf7\xa5\x21\x1d\x6e\x06\x71\x8c\x7a\x9b\xa5\x1a\x8f"
+"\x8c\x92\x8d\x92\xf1\x1d\x9c\x9d\xae\x5f\x1d\x70\x1a\x86\x8a\x86\x89\x81\x1e\x0b\x7b\x57\x7d\x7e\x59\x84\x19\x72\xf7\xbc\xa4\x07"
+"\x4c\x90\x81\x91\xab\x1a\x9a\x8f\x9d\x94\xaa\x1e\x8d\x92\x8c\x90\x8c\x8f\xbd\xf7\x49\x18\xf7\x83\x06\x4b\xfb\x7c\x7d\x55\x77\x7d"
+"\x48\x87\x19\x72\xf7\xd1\x0b\x05\xf7\x0d\x06\xbe\xf7\x46\xa0\xbd\xbd\xd4\x08\xc7\xb5\xac\xa8\xa5\x1b\x97\x95\x81\x80\x85\x89\x83"
+"\x88\x82\x1f\x89\x83\x87\x80\x86\x7d\x87\x7e\x87\x80\x88\x82\x08\x5b\xfb\x20\x7e\x59\x62\x1a\x69\xa6\x73\xb2\xc8\xb3\xac\xf2\xcd"
+"\x1e\x0b\x7f\x1d\xf7\x82\x16\xf7\x2c\xe2\x05\xaa\x9d\x93\x95\x38\x1d\x06\x86\x53\x1d\x0b\x43\x1d\xc6\x1d\x0b\x8c\x96\x49\x1d\xab"
+"\x84\xb0\x1b\xd2\xc0\xb0\xbd\xb5\x65\xa9\x0b\x15\xf7\x74\x9e\x06\x5a\x81\x8f\xa1\x94\x8d\x98\x8f\x97\x1f\xef\xf7\xde\x4a\x7e\x61"
+"\x83\x45\x81\x19\x89\x76\x05\x8d\xa3\x9a\x8c\x0b\xa4\xfb\xbe\x72\x07\xab\x86\x99\x89\x95\x88\x92\x87\x19\x91\x87\x8f\x82\x81\x1a"
+"\x7f\x86\x6c\x86\x79\x1e\x0b\x15\x68\x6c\x6c\x69\x64\xa8\x6d\xb0\xb1\xaa\xa8\xb0\xb0\x6c\xaa\x65\x1f\x0e\x97\x78\x1b\x73\x76\x76"
+"\x73\x7b\x97\x7b\xa1\x7c\x1f\xf7\x19\x32\x05\x0e\xf7\x6c\xf7\x21\xb4\x1d\x0b\x5f\x9f\xb3\x69\x1d\x1b\x52\x5d\x5d\x43\x7e\x1f\xb3"
+"\x06\xab\x98\x98\x96\xa1\xaf\x1d\x0b\x08\x92\x87\x8f\x82\x7f\x1a\x7f\x87\x0b\x1e\x77\xa4\x83\xa2\x83\xc1\x70\x8e\x18\x75\xfb\x3a"
+"\x05\xa6\x06\x97\x8f\x97\x93\x98\x1b\x0b\x1b\x95\x92\x86\x83\x88\x8a\x89\x87\x85\x1f\x83\x0b\x8e\x19\x97\x21\x1d\xfb\xa3\x06\x86"
+"\x75\x05\xa0\x06\xa6\x8a\x9b\x7b\x0b\xae\x5d\x66\x70\x6f\x65\x73\x94\x7d\xa6\x78\x1e\xa0\x7e\x91\x82\x7e\x1a\x6b\x0b\xc5\x1d\x0e"
+"\x06\x38\x68\x84\x72\x66\x1f\x4a\x60\x69\x0b\x15\xbe\x06\x35\xf7\x42\x05\x3a\x06\xfb\x34\xfb\x42\x05\xc4\x06\x0b\x98\x80\x74\x82"
+"\x89\x7f\x85\x76\x1f\x0b\xdd\x1d\x71\x79\x0b\x88\x82\x81\x1a\x6f\xa0\x76\xa7\x0b\x83\x20\x1d\xf7\xa5\x06\x4c\x1d\x0b\x1e\x75\x99"
+"\x86\x89\x8a\x8a\x83\x87\x19\x81\x77\x0b\x75\xc9\x1b\xec\xcb\xc5\xf3\x9d\x1f\x0e\x7e\x1b\x84\x86\x91\x92\x8f\x0b\x80\x53\x89\x08"
+"\x70\x07\xb5\x0b\x61\x3c\x6d\x08\x68\xbe\x07\x0b\x74\x1b\x7f\x7b\x90\x96\x71\x1f\x9d\x62\x0b\x15\xfb\x03\x06\xa3\x69\x6d\x94\x5d"
+"\x1b\xfb\x0f\x28\x3a\x26\x58\xa5\x67\xc1\x74\x1f\x39\x5d\x7d\x7d\x66\x1a\x6b\x9d\x78\xb7\x7c\x1e\x4d\x7c\x77\x83\x73\x78\x08\x7b"
+"\x7d\x80\x73\x73\x1a\x4a\xd4\x62\xf7\x07\xf7\x21\xed\xc9\xe3\xc8\x63\xac\xfb\x01\xaa\x1e\x56\x9a\x05\x6b\x94\x78\x99\x9a\x1a\x9b"
+"\x9a\x9f\x98\x90\x92\x8a\x88\x93\x1e\x88\x96\x93\x8a\x97\x1b\xb7\xb8\x97\xa1\xb1\x1f\xc5\xac\xaa\xbe\xc8\x1a\x9a\x89\x95\x87\x9b"
+"\x1e\xce\x06\xfb\xff\xfc\x0f\x15\x97\x8a\xd7\x71\xa1\x81\x08\xa7\x7d\x98\x7a\x71\x1a\x5f\x5f\x72\x3f\x4a\x5d\xab\xb9\x9f\x94\x9b"
+"\xa0\x9f\x1e\x97\x97\xaa\x9d\x92\x8a\x08\xf7\x20\xf8\x49\x15\xa5\x9e\x73\x68\x69\x7f\x59\x7a\x67\x1f\x5d\x75\x72\x75\x6c\x1b\x70"
+"\x7c\xa0\xb1\xb3\x9c\xc8\xa0\xb1\x1f\xac\x9e\xa0\x9b\xa5\x1b\x0b\xf7\x4a\xf9\x2a\x15\x85\x75\x05\xa7\x06\xa5\x9c\x7a\x71\x85\x8a"
+"\x85\x8a\x85\x1f\x3a\x1d\x7c\x20\x1d\xf7\xd6\x06\xbb\xbe\x9a\xa4\xaf\x1f\xbd\xaf\xae\xcc\xc5\x1a\xb2\x77\xb4\x6c\xa6\x1e\x71\xa0"
+"\x76\x96\x59\x9a\xbd\x90\xa7\x94\xb2\xa4\x08\xc1\xae\xa7\xb8\xc1\x1a\xe3\x47\xbb\xfb\x12\x1e\xfb\x0b\xfb\xdf\x15\xb1\x9e\x88\x82"
+"\x9b\x1f\xaa\x7c\xa0\x64\x61\x1a\x60\x7c\x58\x74\x6b\x1e\x61\x6f\x61\x76\x57\x1b\x7d\x81\x8c\x8f\x78\x1f\xf7\x30\xf8\xe0\x15\xd2"
+"\xaa\x70\x4e\x47\x6a\x4c\x5b\x71\x1f\x7e\x72\x76\x87\x5f\x1b\x0e\xf8\xfb\xf7\x54\x15\x72\x90\x69\x53\x76\x72\x64\x70\x19\x64\x54"
+"\x48\x79\x36\x1b\x5f\x7a\x95\xa4\x91\x8e\x96\x90\x9e\x1f\x8d\x91\x8c\x90\x8f\x99\xc1\xf7\x63\x18\xf7\x06\x89\xa8\x78\x46\x1a\x7e"
+"\x8a\x80\x89\x78\x1e\xa6\x86\xd3\xf7\xa2\x6f\x8f\x5d\x2e\x72\x7e\xfb\x17\x8c\x19\xc6\xf7\x71\x05\xae\x95\x97\x94\xb3\x1b\xd3\xc1"
+"\x7c\x70\xa6\x1f\xa2\x74\x92\x72\x4d\x1a\xa6\x86\xb4\xf7\x50\x05\xfc\xaa\x73\x06\xbf\x83\x8b\x8b\x96\x85\x08\x91\x87\x8f\x82\x81"
+"\x1a\x7d\x87\x73\x85\x75\x1e\xfb\x0b\xfc\x51\x7b\x57\x7f\x80\x58\x83\x19\x72\xf8\xb8\x07\x0b\x1e\x8a\x82\x8a\x80\xa4\x86\xd4\xf7"
+"\xa5\x71\x8f\x67\x38\x63\x73\x28\x8c\x19\x82\x06\x81\x06\xcc\xf7\x7f\x05\xa6\x92\x95\x90\xb5\x1b\xf3\xc1\x65\x40\x8f\x1f\x8d\x63"
+"\xa3\x86\xb8\xf7\x52\x05\xfc\xe1\x74\x06\xcc\x87\x9b\x86\x78\x1a\x80\x83\x7a\x7f\x7b\x1e\xfc\x02\xfc\x6c\x63\x58\x7f\x7d\x85\x88"
+"\x19\x83\x86\x85\x89\x7b\x89\x08\x72\xf7\x57\xa4\x07\x5b\x8f\x7b\x93\xa1\x1a\x97\x90\x99\x95\x98\x1e\xf7\x06\xf7\x31\x05\xf7\x54"
+"\x06\x5d\xfb\x33\x7b\x55\x81\x82\x57\x83\x19\x64\xf7\xa1\x15\xf7\x91\xf7\xe1\x05\x97\x06\x2f\xfb\xe1\x05\x0b\xf8\x88\xf8\x50\x15"
+"\x77\x1d\xc4\xbf\xb8\xde\xb2\x1e\x77\x93\x05\x5e\x76\x79\x71\x7f\x1b\x87\x88\x8f\x90\x90\x8c\x91\x90\x9c\x1f\x0b\x8f\x1d\x91\xac"
+"\x8f\x9b\x1e\xc1\xf7\x5b\x05\x87\xae\x9e\xd2\x1d\xfb\xb3\x06\xf7\x70\x3f\x15\x92\xa3\x8b\x8b\x8f\x91\x08\x95\x94\x96\x8f\x9f\x1b"
+"\xbf\xaa\xbc\x1d\x0b\xf7\x7d\xf7\x6a\x15\x84\xf7\x1a\x81\xbc\x68\xc4\xfb\x19\x6d\x18\x84\x71\x05\x98\x06\xa7\x9c\x78\x66\x90\x1f"
+"\x92\x5b\x9c\xfb\x7a\x8c\x50\x08\x5f\x07\x8c\x87\x8b\x83\x81\x1a\x75\x78\x7e\x82\x81\x1b\x84\x82\x90\x9a\x77\x1f\x9e\x71\x7b\x92"
+"\x7a\x1b\x6e\x75\x72\x6a\x64\xaa\x6f\xb6\xc4\xbd\xb7\xf7\x2b\xf7\x05\x1f\xf7\x19\xf7\x46\xc9\xf7\x05\xca\x1a\xb4\x6b\xaf\x67\x6e"
+"\x74\x71\x6b\x74\x92\x80\xa5\x7c\x1e\x9f\x80\x93\x80\x7d\x1a\x66\x4e\x20\x46\x39\x1e\x0b\xf7\x29\xf7\x50\x15\xb2\xa6\x05\xfb\x3e"
+"\xab\xa8\x56\xc9\x1b\xbd\xae\xab\xe7\xbe\x1f\x75\x96\x05\x5b\x70\x7b\x7b\x78\x1b\x6f\x7f\xaf\xf7\x56\x65\x1f\xca\xc2\xcf\xc5\xa1"
+"\x98\xb8\x90\x19\xa4\xfb\x63\x72\x07\xb2\x89\x97\x86\x7b\x1a\x71\x65\x66\xfb\x12\x29\x1e\xf7\x0f\xf8\x5f\x3f\x7d\x57\x83\x3b\x83"
+"\x19\x70\x07\x8c\x93\x94\x8b\x8f\x1b\xa8\x64\x1d\xfb\x30\xfc\xcb\x05\xf7\x0e\x06\x0b\xf8\x04\xf7\x0e\x15\x71\x70\x87\x88\x80\x81"
+"\x08\x7b\x76\x6e\x81\x70\x1b\x51\x6c\xb2\xd5\x1f\xa1\x07\xcd\x8c\xb0\x94\xb9\xa4\x08\xce\xb0\xb5\xc3\xc2\x1a\xbf\x69\xa8\x50\xfb"
+"\x2a\xfb\x14\xfb\x23\xfb\x3c\x60\x96\x66\xa0\x72\x1e\x6e\xa4\xb9\x77\xb7\x1b\xcc\xc8\xb1\xd9\xc8\x1f\xfb\x6f\xf5\x15\xf7\x00\x9d"
+"\xc9\xf4\xb8\x1b\x9d\x98\x7b\x74\x64\x77\x54\x72\x6f\x1f\x70\x6c\x65\x79\x5d\x88\x08\x0b\x82\x1d\xb9\xab\xa5\xf1\xd9\x9a\x1d\x0b"
+"\x15\xfb\xb3\x71\x06\xb6\x87\x93\x89\x96\x85\x08\x91\x87\x91\x80\x82\x1a\x71\x87\x78\x70\x30\x1e\x74\x3f\x8b\x8b\x87\x85\x08\x7a"
+"\x7d\x62\x7e\x64\x1b\x21\x51\xcd\xf7\x0e\xf7\x29\xcf\xf7\x3b\xe6\xd8\x1f\xab\xb1\xb6\x9b\xb8\x1b\xba\xb2\x78\x6b\xa1\x1f\xa1\x6a"
+"\x92\x6e\x8d\x47\xa8\x87\x18\xbe\xf7\x71\x05\x6c\x06\x75\x80\x80\x83\x77\x1b\x82\x83\x8d\x92\x78\x1f\x9a\x0b\x7a\x1d\x0e\xf7\xfc"
+"\xf7\x64\x15\x84\xfb\x0b\x87\x5f\x77\x75\x64\x8a\x19\x84\x20\x1d\xf7\x93\x21\x1d\x7f\x06\x71\x7e\x9e\xb1\x1f\x95\x07\xa7\xf8\xd1"
+"\x05\x72\x06\xfc\x36\xfc\xc0\x61\x52\x71\x73\x77\x88\x19\x85\x75\x05\xf7\x42\x28\x1d\x7c\x06\x73\x7a\x99\xa0\x9a\x90\x98\x9b\xa0"
+"\x1f\xd6\xf1\x05\xf7\x3a\xb5\x15\xfb\x1c\x06\xf7\x26\xf7\x5c\x05\x0b\xf7\xef\xf7\x20\x15\x47\x5d\x6f\x75\x61\x1b\x61\x75\xa7\xc2"
+"\x9c\x8c\x96\x8f\x9e\x1f\xf2\x9f\xbd\xa1\xbb\xb8\x08\xad\xab\x9e\xb0\xad\x1a\xbe\x5f\xaf\x4f\xfb\x23\xfb\x21\xfb\x34\xfb\x37\x36"
+"\xcb\x4d\xe2\xd6\xc0\xb1\xee\xc6\x1e\xfb\x59\xe3\x15\xf7\x1d\xae\xb8\xd6\xbb\x1b\x9e\x94\x80\x74\x5f\x7a\x61\x6c\x6b\x1f\x70\x6f"
+"\x73\x7d\x52\x79\x08\x0b\xf7\xf8\x15\xac\xae\xa9\x9a\xab\x1b\xad\xa0\x75\x66\x72\x82\x72\x7b\x7e\x1f\x7c\x7d\x76\x7f\x55\x72\x42"
+"\x68\x89\x89\x74\x79\x08\x78\x7b\x81\x73\x6f\x1a\x44\xbf\x5c\xd8\xcb\xb7\xa4\xd3\xcc\x1e\x79\x9e\x05\x60\x62\x6a\x78\x65\x1b\x67"
+"\x74\xa7\xb6\xbb\xa4\xa6\xd9\xaf\x1f\xe9\xb7\xa7\xa9\xc3\x1a\xc8\x62\xb1\x4a\x52\x6a\x7a\x4a\x46\x1e\x0b\x97\xb8\x9d\x9d\xae\x8e"
+"\x19\x97\x28\x1d\xfb\xa2\x20\x1d\xa1\x06\xa5\x8a\x9c\x7b\x71\x1a\x86\x8a\x84\x89\x85\x1e\xfb\x24\xfc\xb2\x05\xfb\x68\x06\xf7\x22"
+"\xf8\xad\xae\x1d\x85\x8a\x85\x8a\x85\x1e\xfb\x25\xfc\xb2\x05\x0b\xf7\xb6\xa1\x15\x6f\x06\x71\x8c\x7a\x9b\xa4\x1a\x94\x8b\x8e\x8d"
+"\x92\x1e\xf7\x17\xf8\x7f\x2e\x1d\xfb\xa3\x06\x86\x43\x1d\x0e\x15\xf7\x2c\xe2\x05\xaa\x9d\x93\x95\x2d\x1d\x0b\xf7\xb6\xa1\x15\x6f"
+"\x06\x71\x8c\x7a\x9b\xa4\x1a\x94\x8b\x8e\x8d\x92\x1e\xf7\x17\xf8\x7f\x2e\x1d\xfb\xa2\x06\x85\x43\x1d\x0b\x15\xfb\x54\xfb\x2c\xfb"
+"\x30\xfb\x59\xfb\x55\xf7\x2c\xfb\x31\xf7\x4f\xf7\x5b\xf7\x2a\xf7\x2c\xf7\x5c\xf7\x58\xfb\x2c\xf7\x2f\xfb\x54\x1f\x5d\x04\xf7\x2f"
+"\xf7\x14\xfb\x1f\xfb\x3a\xfb\x3e\xfb\x13\xfb\x1c\xfb\x34\xfb\x2b\xfb\x14\xf7\x20\xf7\x39\xf7\x3c\xf7\x14\xf7\x1e\xf7\x2f\x1f\x0e"
+"\xfb\x0a\x06\x58\xfb\x56\x77\x53\x7f\x73\x71\x63\x19\x5d\x6d\x7e\x7f\x7a\x1b\x83\x86\x91\x96\x93\x8d\x95\x8d\x96\x1f\xe4\xf7\xe8"
+"\xfb\x49\xce\x1d\x83\x89\x82\x1f\x4e\xfb\x7b\x05\x86\x76\x87\x72\x7a\x1a\x66\xa7\x6f\xb0\x0b\xc4\x1d\x47\xfb\x82\x05\x7c\x57\x82"
+"\x60\x79\x1a\x64\xa7\x71\xb5\xc7\xb3\xac\xf2\xcd\x1e\x75\x99\x05\x56\x69\x71\x70\x7b\x1b\x83\x83\x92\x93\x9d\x9d\xd1\xaf\xf7\x10"
+"\x1f\x93\xaa\x92\xa3\x9d\xcb\x08\xde\x06\x0e\x86\x1d\xf7\xbc\x07\x0b\x6f\x1e\x7e\x20\x1d\xf7\x9d\x06\x91\xa1\x64\x8e\x7d\x9d\x69"
+"\xea\x19\x3c\xf7\x7e\xf7\x0a\xf7\x17\xe9\xf3\xaf\xa9\xab\x8e\x19\x22\x1d\xfb\x54\x20\x1d\x96\x06\xa1\x99\x7e\x74\x77\x85\x7f\x70"
+"\x6d\x1f\xfb\x08\xfb\x16\x5d\xf7\x1e\x05\x82\xa5\x89\x94\x0b\xa4\x15\x52\x8e\x7c\x94\xa7\x1a\x9b\x8f\xa0\x99\xbd\x1e\xf7\x06\xf8"
+"\x38\x9b\xc0\x9a\x98\xbe\x91\x19\x56\x1d\xfb\x0f\xfc\x55\x7b\x57\x7c\x7d\x5a\x85\x19\x72\x0b\xf7\x77\x15\x78\x76\x82\x81\x7a\x79"
+"\x08\x44\x42\x6d\x63\x76\x1a\x84\x91\x86\x92\x94\x98\x94\x9d\x9e\x1e\x98\x97\x95\x93\xa3\x9d\xf7\x3e\xf7\x10\x18\x94\x07\x30\xe7"
+"\x5e\xb9\x6b\xb0\x08\x93\x84\x88\x8d\x86\x1b\x82\x85\x84\x83\x7c\x94\x71\xa3\x5a\x1f\x0b\xf8\x46\xf7\x13\x15\x53\x62\x7c\x7d\x7b"
+"\x1b\x84\x86\x91\x94\xa4\x95\xb5\xa3\xdc\x1f\xd2\xf7\x80\xfb\x03\x84\x79\x50\x05\xbe\x82\x75\xa0\x60\x1b\xfb\x0f\xfb\x2a\xfb\x54"
+"\xfb\x30\x3f\xb6\x58\xcc\xc8\xb8\xaf\xeb\xc5\x1f\x7f\x62\x89\x7f\x7d\x1a\x0b\xf7\x21\x15\x48\x5b\x6c\x74\x60\x1b\x5f\x6e\xaf\xc0"
+"\xca\xa5\xe5\xaf\xcc\x1f\xba\xa6\xa7\xa3\xaa\x1b\x97\x95\x84\x81\x87\x89\x85\x85\x82\x1f\x82\x7c\x87\x7f\xbf\x1d\x0b\xf7\x29\x15"
+"\x5e\x06\xd9\xf7\x99\x05\x5d\x06\xfb\xaa\xfb\x93\x7b\x48\x05\xf7\x33\x06\x70\x33\x05\xe1\x06\xa7\xe3\x05\xb7\x06\xfb\x8a\xc8\x15"
+"\xf7\x4c\xf7\x3e\x57\xfb\x3e\x05\xd3\xf8\xaa\x15\x51\x06\xfc\x47\xfd\x4d\x05\xc5\x06\x0b\x15\x6b\x7c\x7e\x81\x6d\x1d\x6c\x93\x72"
+"\x5b\x1d\x81\xa5\x97\x88\xf7\x01\x1d\xfb\x4a\xce\x1d\x81\x89\x84\x1f\x75\x39\x05\x85\x73\x88\x7b\x7b\x1a\x61\xa4\x70\xb3\xc0\xb1"
+"\xa7\xec\xd8\x1e\x5e\xfb\x3f\x05\x86\x7a\x89\x7b\x7e\x1a\x68\xa6\x72\xb2\x0b\xf7\x23\xf8\xad\x98\x1d\xfc\x80\x7f\x5e\x7a\x7a\x68"
+"\x88\x19\x83\x20\x1d\x0b\x15\x6c\x7c\x7e\x80\x74\x1b\x80\x7a\x90\x96\x71\x1f\x9d\x62\x6b\x93\x73\x5b\x1d\x80\xa6\x96\x89\x0b\xf9"
+"\x18\x15\x9f\x1d\xf7\xba\xa4\x07\x53\x8e\x7b\x94\xa6\x1a\x95\x0b\x1e\xfb\x51\xf7\xc8\x15\xa1\x8a\x9a\x78\x70\x1a\x4f\x69\xfb\x03"
+"\x65\x46\x1e\x5a\x70\x6d\x71\x70\x1b\x71\x78\xa2\xaa\xbf\xac\xef\xb4\xd5\x1f\xa9\xc0\xac\xaa\xa6\x89\x08\x0b\x05\xa3\x73\x78\x94"
+"\x6e\x1b\xfb\x0e\xfb\x2a\xfb\x55\xfb\x31\x42\xb8\x57\xc8\xcb\xb8\xaf\xea\xc4\x1f\x82\x64\x89\x7e\x7b\x1a\x65\xa1\x74\xb1\xbc\xb8"
+"\xb1\xe3\xc2\x1e\x0b\x15\x68\x6e\x6d\x67\x69\xa9\x6d\xad\xaf\xa9\xa8\xae\xaf\x6d\xa9\x67\x1f\xf7\x68\x16\x68\x6e\x6e\x66\x69\xa9"
+"\x6d\xad\xaf\xa9\xa8\xae\xaf\x6d\xa9\x67\x1f\x0e\x15\xa1\x8a\x9a\x77\x6f\x1a\x5e\x60\xfb\x14\x68\x4a\x1e\x5a\x6f\x6f\x72\x6d\x1b"
+"\x72\x79\xa7\xae\x8d\x1f\x8e\xc1\xaa\xe7\xaf\xcc\xab\xc4\xaf\xab\xa9\x89\x08\x0b\x06\xeb\x1d\x84\x8a\x86\x8a\x85\x1e\xfb\x17\xfc"
+"\x7f\x7f\x5e\x79\x79\x69\x88\x19\x83\x20\x1d\xf7\xa5\x06\x0b\xa2\x1d\x85\x20\x1d\xf8\x71\x06\xc9\xf7\x3a\x05\x79\x06\x37\x38\x2f"
+"\x5c\x3c\x1b\x0b\x15\x7b\x06\x73\x66\x7d\x84\x57\x8a\x08\x32\x06\xf7\x11\xf0\x05\xce\xc1\xa4\xb1\xbb\x1a\xc3\x5c\xb6\x4e\x4d\x5d"
+"\x6c\x48\x67\x1e\x9d\x80\x05\x0b\xb2\x1d\x65\xa7\x72\xb4\xc7\xb0\xa9\xf5\xd1\x1e\x0b\x97\xb8\x9d\x9d\xad\x5f\x1d\x71\x1a\x83\x4d"
+"\x1d\x0b\x45\x79\x68\x4e\x1f\xfb\x18\x3e\x34\xfb\x2b\xfb\x2d\x1a\xfb\x34\xf7\x0c\xfb\x01\xf7\x44\xd9\xee\x9e\xa6\xc4\x1e\xa7\x98"
+"\xbb\xf7\x49\x9e\x0b\x1e\x86\x7b\x88\x7f\x88\x83\x08\x85\x77\x88\x7a\x7f\x1a\x72\xa2\x79\xa9\x0b\x15\xfc\xa0\x07\x3a\xf7\x66\x56"
+"\x74\xf7\x13\xfb\xb2\x05\xd8\x06\xf7\x14\xf7\xb2\x56\xa2\x3a\xfb\x66\x05\xf8\xa0\x07\xdc\xfb\x66\xc0\x0b\xf7\x52\xf7\x9c\xad\xb9"
+"\x9d\x99\xb2\x93\x19\xa4\xfb\x64\x72\x07\xc0\x8a\x99\x81\x68\x1a\x7a\x85\x7e\x77\x6e\x1e\xfb\x15\xfb\x4c\x78\x0b\xbd\xb0\xe8\xc3"
+"\x1f\x93\x5d\x93\x77\x9c\x76\x08\x6f\xa1\xb3\x7b\xbb\x1b\xdf\xce\xba\xe3\xb6\x1f\x6f\x9c\x05\x50\x69\x61\x6d\x5b\x1b\x0b\x07\x69"
+"\x5d\x82\x79\x6f\x1a\x5c\xb8\x69\xc8\xbe\xba\xa8\xb9\xa4\x68\x1d\x81\x88\x7b\x1b\x0b\xae\x86\xa0\x86\x92\x87\x08\x91\x87\x8f\x82"
+"\x81\x1a\x7c\x87\x73\x85\x75\x1e\xfb\x0f\xfc\x55\x7b\x56\x7f\x80\x57\x83\x19\x72\x0b\x7e\x5e\x79\x79\x68\x88\x19\x81\x20\x1d\xf7"
+"\xac\x06\x92\xa1\x05\x6b\x06\x71\x7a\x9c\xa3\x90\x8c\x93\x8d\x92\x1f\x0b\xf7\xb0\xf8\x62\x15\xfb\x28\xfb\x1f\xfb\x33\xfb\x3c\x36"
+"\xce\x4c\xe7\xf7\x29\xf7\x1c\xf7\x2f\xf7\x3d\xe3\x4a\xca\x2f\x1f\x0b\x8a\x86\x8a\x85\x1e\x3a\x1d\x0b\x06\xbf\xa8\x74\x61\x84\x8b"
+"\x89\x88\x73\xc2\x1d\x0b\xfb\x38\x05\xa2\x06\xb5\xd7\xca\xb5\xda\x8f\xfb\x22\xfc\xa8\x18\x7f\x5e\x79\x79\x68\x88\x08\x62\x20\x1d"
+"\x0b\xd9\x1d\xf7\x20\xf8\x8e\xe9\x8a\xb2\x60\x90\xfb\x03\x19\xa6\x89\x0b\x6c\x63\x63\x79\x88\x8d\xa7\x76\x1e\x9e\x7e\x7d\x94\x7b"
+"\x1b\x75\x7c\x7a\x73\x6b\xab\x79\xc1\xf4\xe1\xd2\xe2\xb2\x0b\x7c\x4f\x71\x6b\x66\x86\x19\x85\x75\x05\xf7\x44\x21\x1d\x60\x8f\x73"
+"\xa0\xab\x1a\x94\x8d\x97\x8f\x99\x1e\x0b\x15\x65\x1d\x7b\x80\x64\x4b\x1d\x15\xf7\x2c\xe2\x05\xaa\x9d\x93\x95\x9e\x1a\xa5\x75\xa0"
+"\x71\x79\x7b\x80\x64\x4b\x1d\x15\xfb\x03\xf7\x27\x05\xa1\x7a\x77\x97\x78\x1b\x73\x76\x76\x73\x7b\x97\x7a\xa1\x7d\x1f\xf7\x19\x32"
+"\x05\x0e\x9b\xc2\x9f\x9a\xcc\x8d\x19\xa4\xfb\xd1\x72\x07\xae\x85\xa0\x0b\xf7\x2c\xe2\x05\xa9\x9d\x94\x95\x2d\x1d\x0e\xc1\x1d\x86"
+"\x89\x1a\x26\xb7\x5b\xe9\xeb\x0b\x98\xb8\x9c\x9d\xae\x8e\x19\x97\x21\x1d\xfb\xa3\x20\x1d\xa1\x06\xa6\x8a\x9b\x7b\x71\x1a\x0b\x1b"
+"\x96\x99\x88\x86\x98\x1f\xc6\x74\x05\x0b\x06\xe7\x8e\xca\x5e\x91\x40\x08\x9d\x06\xb4\xf7\x2e\x05\xfc\x6f\x20\x1d\xa4\x06\xa5\x8a"
+"\x9c\x0b\x72\x1b\x52\x5e\x5d\x43\x7e\x1f\xb3\x06\xab\x98\x97\x96\xa2\xaf\x1d\x0b\x85\x19\x70\x07\xb7\x9a\x84\x75\x83\x88\x7c\x87"
+"\x7a\x1f\x51\xfb\x6b\x05\x83\x6e\x86\x71\x7d\x1a\x0b\x6f\x6e\x67\x58\xc2\x6d\xe7\xf6\xd2\xb3\xc7\xa8\x79\x9c\x6d\x6b\x71\x76\x70"
+"\x89\x8b\x88\x8c\x86\x0b\x15\x7d\x77\x05\x64\x71\x74\x76\x7c\x1b\x83\x84\x92\x93\x94\x90\xa5\x8f\x9c\x1f\xe6\xf7\xe2\x0b\xc6\x1d"
+"\xf7\x24\xf8\xb1\x05\x0b\x75\x05\xa0\x06\xa6\x8a\x9b\x7b\x71\x1a\x83\x4d\x1d\xfc\x7f\x7f\x5e\x0b\x6e\x1a\x62\xa0\x78\xb7\xc7\xbc"
+"\xb3\xe4\xbf\x1e\x0b\x1a\xb0\x9e\x9c\xb2\x1e\x9d\x21\x1d\xfb\xb6\x20\x1d\x98\x06\xb2\x9c\x0b\x68\x1e\xe1\xb2\x15\x62\xb0\x80\x9d"
+"\xa5\x1a\xa9\x9f\xa0\xa7\xa7\x9c\x77\x6a\x6c\x7f\x0b\x88\x08\x76\xf7\x46\xa0\x07\x6c\x8e\x88\x8c\x83\x8f\x08\x85\x8f\x89\x92\xac"
+"\x1a\x0b\xd6\x1d\xc2\xd0\xb0\x79\xb0\x0b\x6a\x51\x67\x82\x5e\x7d\x6c\x1f\x50\x71\x67\x74\x44\x1b\x7e\x7f\x8c\x8c\x7a\x1f\x0b\x15"
+"\x68\x6e\x6e\x66\x69\xa9\x6d\xad\xaf\xa9\xa8\xae\xaf\x6d\xa9\x67\x1f\x0e\x16\xc7\x1d\x0e\x7f\x1a\x6d\xa3\x75\xad\xe3\x1d\x0b\x15"
+"\x70\x74\x74\x71\x6f\xa2\x74\xa6\xa6\xa2\xa2\xa6\xa6\x74\xa2\x70\x1f\x0b\x15\x49\x6c\x68\x73\x4a\x1b\x4b\x6a\xa8\xc8\x86\x1f\x60"
+"\x06\x8a\x85\x8b\x0b\x1f\xa0\x06\xc8\xf7\x7a\x05\x76\x06\x6f\x4b\x58\x6a\x44\x8c\x08\x61\x06\x0b\x79\x53\x7d\x81\x46\x86\x19\x72"
+"\xf7\xd6\xa4\x07\x4a\x8e\x7f\x92\xb0\x1a\x0b\xf0\x1d\x55\x3b\x59\x6c\x1d\x0b\x84\xaf\x1b\xd2\xc0\xb0\xbd\xb5\x65\xa9\x57\x81\x85"
+"\x8a\x89\x81\x1f\x0b\x4c\x1d\x71\x8c\x7a\x9b\xa4\x1a\x94\x8b\x8e\x8d\x92\x1e\x0b\x68\x6f\x6e\x67\x69\xa9\x6d\xad\xae\xa9\xa8\xad"
+"\xaf\x6d\xa9\x67\x1f\x0b\x85\x1f\x60\x80\x06\x26\xb7\x5b\xe8\xea\xcb\xc5\xf1\x9c\x1e\x0e\xf7\xa3\xf7\xae\x15\xfb\x89\x06\x73\xfb"
+"\x08\x05\xf7\x8a\x06\x0e\x21\x1d\x68\x06\x71\x7a\x9c\xa4\x92\x8c\x90\x8c\x92\x1f\x0b\x08\x63\x9b\xa5\x77\xad\x1b\xb8\xa7\xa6\xec"
+"\xc1\x1f\x78\x98\x05\x0b\xad\x8e\x08\x97\x21\x1d\xfb\xee\xfc\xef\x15\x42\x96\x67\x0b\x49\x90\x86\x90\x7e\xd7\x2b\xf8\xd0\x18\x72"
+"\x06\xfc\x08\xfc\xe0\x0b\x71\x85\x74\x05\x8c\x8f\x8f\x8b\x8e\x1b\x9f\x99\x7c\x75\x84\x8a\x0b\xf7\xd8\xf9\x3f\x15\x51\x06\xfc\x47"
+"\xfd\x4d\x05\xc5\x06\x0e\x15\xf7\x28\xf7\x87\xb0\xfb\x87\x05\x0b\x1f\xc5\xf7\x46\x05\x9f\xc9\x95\xb4\x0b\x8a\xa6\x1b\xf7\x3a\xf6"
+"\xd8\xf7\x0c\xf0\x41\xc1\xfb\x1f\x1f\x0b\x1b\x53\x65\xbe\xd7\xf7\x02\xbb\xf7\x42\xc3\xe9\x1f\xca\xb0\x0b\x1e\x90\x7f\x8c\x86\x83"
+"\x1a\x71\x7e\x7a\x70\x82\x1e\x96\x73\x0b\xa4\x15\x54\x8d\x79\x95\xa8\x1a\x9a\x8f\x9f\x9a\xbf\x1e\x8d\x0b\xf7\x76\x15\x41\x6e\x6a"
+"\x68\x58\x1a\x52\xbe\x62\xd3\xdb\xc9\x0b\x15\xfb\x03\xf7\x26\x05\xa0\x7b\x76\x97\x78\x1b\x74\x76\x0b\x98\xd2\xa0\xcb\x1f\xd8\xa6"
+"\xa3\xaa\xaf\x1b\xb0\x9d\x6d\x0b\xa4\x06\x44\x8e\x7f\x91\xab\x1a\x9a\x8f\xa0\x92\xa5\x1e\x0b\x6f\x06\x70\x8c\x7a\x9b\xa4\x1a\x90"
+"\x8c\x92\x8d\x92\x1e\x0b\x74\x6e\x1b\x6f\x78\xa7\xb3\xb9\xa8\xf7\x12\xa8\xd7\x1f\x0b\x08\x83\x20\x1d\x0b\xf7\x2c\xe2\x05\xa9\x9c"
+"\x94\x96\x9e\x1a\xa5\x75\xa0\x0b\x95\x41\x90\x62\x81\x1a\x62\x7c\x80\x4b\x85\x1e\x72\x0b\x9a\x93\xc2\x8c\x1e\xa4\xfb\xaf\x72\x07"
+"\xbe\x84\x8e\x0b\xf7\x21\x15\x50\x63\x77\x76\x79\x1b\x83\x84\x92\x93\x0b\x15\x4d\x63\x7e\x7d\x7a\x1b\x83\x85\x92\x95\x95\x0b\xf9"
+"\x0d\xf9\x90\x15\x5a\x06\x56\x2f\x05\x95\x6b\x0b\xb0\xa4\xa7\xb5\xc1\x5e\xaf\x48\xfb\x21\xfb\x24\x0b\xd1\x80\x8e\x89\x6e\x1a\x81"
+"\x88\x7b\x82\x6a\x1e\x0b\x63\x1b\x7e\x86\x92\x9d\x97\x8b\x8c\x92\xa1\x1f\x0b\xfb\x14\xf7\xb2\x05\x3e\x06\xfb\x13\xfb\xb2\xc0\x0b"
+"\x71\x1a\x65\xa4\x75\xb6\xc7\xb4\xad\xec\xc5\x1e\x0b\x18\xf7\x15\x06\x94\xae\x05\xfb\x15\x06\x0e\x7a\x7f\x66\x69\x1e\xfb\x0c\xfb"
+"\x16\x05\x0e\x06\x36\xfb\x66\x05\xd9\x06\xe0\xf7\x66\x05\x0b\x86\x75\x05\xa0\x06\xa6\x8a\x9b\x7b\x71\x1a\x0b\x22\x1d\x6e\x06\x71"
+"\x8c\x7a\x9b\xa4\x1a\x0b\x15\x53\x06\xfb\x1b\x2a\x30\xec\x05\x59\x06\x0b\x1b\x80\x7f\x92\x90\x8e\x8c\x8c\x8f\x91\x1f\x0b\xda\x69"
+"\x1e\x7d\xad\xa6\x87\xd0\x1b\xf7\xac\x0b\x06\xb2\xf7\x25\x05\x68\x06\x0b\x1e\xf7\x17\xf8\x7f\x97\xb8\x0b\x89\x83\x1f\x28\xfb\xf5"
+"\x05\xf7\x0a\x06\x0b\x1b\x53\x65\xbe\xd6\xf7\x02\xbb\xf7\x41\x0b\x9d\x75\x67\x47\x6d\xfb\x15\x6a\x44\x1f\x0b\x69\x71\x70\x69\x68"
+"\xa6\x6e\xad\xac\xa5\x0b\x6b\x77\x77\x83\x7e\x80\x1e\x81\x7f\x87\x0b\x71\x84\x74\x05\x96\x06\x9f\x99\x7c\x76\x0b\x9d\x1b\xc8\xae"
+"\xae\xdf\xa1\x1f\x0e\x01\x00\x01\xe3\x01\x05\x00\x01\x0a\x02\x01\x40\x03\x01\x87\xff\x02\x87\xa0\x02\x8e\x02\x00\x01\x00\x04\x00"
+"\x07\x00\x4b\x00\x72\x00\xb2\x01\x48\x02\x0e\x02\xb3\x02\xbb\x02\xf4\x03\x2e\x04\x1e\x04\x38\x04\x3f\x04\x43\x04\x5b\x04\x6f\x04"
+"\xc9\x05\x06\x05\x4f\x05\xb6\x05\xe8\x06\x36\x06\x94\x06\xb6\x07\x22\x07\x8b\x07\x9a\x07\xab\x07\xc8\x07\xde\x07\xf9\x08\x44\x08"
+"\xf6\x08\xfa\x09\x8a\x09\x8e\x09\x92\x09\x96\x09\xe6\x09\xea\x0a\x20\x0a\x25\x0a\x30\x0a\x34\x0a\x38\x0a\xb0\x0a\xb4\x0a\xb8\x0a"
+"\xbe\x0b\x75\x0b\x79\x0b\x7d\x0b\x81\x0b\x85\x0b\xd4\x0b\xd9\x0c\x71\x0c\x75\x0c\x79\x0c\xa5\x0c\xb8\x0c\xe3\x0d\x01\x0d\x0c\x0d"
+"\x13\x0d\x16\x0d\x7b\x0d\x80\x0d\x83\x0d\x88\x0d\xd0\x0d\xd3\x0d\xdf\x0d\xe8\x0e\x17\x0e\x1a\x0e\x1f\x0e\xd6\x0e\xda\x0e\xdd\x0f"
+"\x60\x0f\xda\x0f\xdf\x0f\xe4\x0f\xee\x0f\xf2\x10\x4a\x10\x4e\x10\xd9\x10\xde\x10\xe3\x11\x47\x11\x53\x11\xb7\x11\xf1\x12\x36\x12"
+"\xa7\x13\x4d\x13\x51\x13\xda\x14\x58\x15\x0d\x15\x71\x15\x78\x15\xa2\x15\xe6\x15\xed\x15\xf4\x16\x9c\x17\x46\x17\x55\x17\xf5\x18"
+"\xf6\x18\xfe\x19\x73\x19\x8c\x19\x93\x19\xc3\x19\xd2\x1a\x16\x1a\x2a\x1b\x21\x1b\x6f\x1b\x77\x1b\x7f\x1b\x87\x1b\x8f\x1b\x97\x1b"
+"\xb0\x1b\xb8\x1b\xc0\x1b\xc8\x1b\xe0\x1b\xf0\x1c\x12\x1c\x1a\x1c\x1e\x1c\x3f\x1c\xad\x1c\xe4\x1d\x03\x1d\xd3\x1e\x16\x1e\x98\x1e"
+"\x9d\x1e\xab\x1e\xae\x1f\x55\x1f\xfe\x20\x22\x20\x32\x20\xae\x21\x31\x21\x34\x21\x80\x21\xa5\x21\xdf\x22\x00\x22\x1e\x22\x31\x22"
+"\x5d\x22\xe4\x23\x0c\x23\x30\x23\xa5\x23\xb1\x24\x1a\x24\x46\x24\x6c\x24\xb8\x24\xc0\x24\xd1\x24\xd9\x24\xeb\x24\xf3\x24\xfc\x25"
+"\x2e\x25\x37\x25\x3f\x25\x4d\x25\x55\x25\x5e\x25\x67\x25\x70\x25\x79\x25\x81\x25\x88\x25\x90\x25\x98\x25\xb8\x25\xce\x25\xd7\x25"
+"\xe0\x25\xf0\x25\xf9\x26\x0a\x26\x13\x26\x21\x26\x30\x26\x36\x26\x50\x26\x57\x26\x67\x26\x6e\x26\x95\x26\xec\x26\xf5\x26\xff\x27"
+"\x08\x27\x12\x27\x1b\x27\x2e\x27\x38\x27\x41\x27\x49\x27\x52\x27\x61\x27\x68\x27\x87\x27\x98\x27\xa2\x27\xab\x27\xb3\x27\xbc\x27"
+"\xc4\x27\xcd\x27\xd7\x27\xe1\x28\x54\x29\x00\x29\xef\x2a\xe8\x2b\x60\x2c\x04\x2c\x9c\x2d\x01\x2d\x2b\x2d\x41\x2d\x44\x2d\x60\x2d"
+"\x69\x2d\xc1\x2e\x34\x2e\x37\x2e\x40\x2e\x48\x2e\x58\x2e\x61\x2e\x98\x2e\xb1\x2e\xb4\x2e\xce\x2e\xd6\x2e\xde\x2e\xe7\x2e\xef\x2f"
+"\x4b\x2f\xdf\x30\x0a\x30\x76\x30\x81\x30\xf1\x31\x7b\x31\xd0\x31\xd9\x31\xf5\x31\xfe\x32\x07\x32\x8d\x32\xc7\x33\x4d\x33\x66\x33"
+"\x6f\x33\x79\x33\x8e\x33\x93\x33\xa9\x33\xc4\x33\xed\x33\xfd\x34\x5b\x34\x64\x34\x6d\x34\xb0\x34\xc7\x34\xd0\x34\xd8\x34\xef\x34"
+"\xf7\x35\x10\x35\x19\x35\x5d\x35\x7b\x35\x83\x35\x95\x36\x12\x36\x5c\x36\xa9\x36\xe6\x37\x6f\x37\x9b\x38\x5b\x38\x63\x38\x6c\x38"
+"\x75\x38\xbb\x38\xc4\x39\x64\x39\xd0\x39\xd8\x3a\x22\x3a\x48\x3a\x93\x3a\x9b\x3a\xcd\x3b\x66\x3b\x7d\x3b\x85\x3b\x8e\x3c\x26\x3c"
+"\x2a\x3c\x4e\x3c\xad\x3c\xb6\x3c\xdb\x3c\xe5\x3c\xf6\x3d\x05\x3d\x23\x3d\x9f\x3d\xa8\x3d\xb1\x3d\xba\x3d\xc3\x3d\xf8\x3e\x00\x3e"
+"\x89\x3e\x8d\x3e\x90\x3e\xd5\x3e\xd8\x3e\xdc\x3f\x4d\x3f\x68\x3f\x8b\x40\x65\x40\xe1\x40\xe8\x41\x17\x41\x6f\x41\xcd\x41\xe7\x41"
+"\xf0\x42\x3f\x42\x67\x42\xb3\x43\x0c\x43\x32\x43\xaf\x44\x38\x44\x6f\x44\xa2\x44\xce\x44\xf8\x45\x45\x45\x88\x45\xd5\x46\x01\x46"
+"\x8e\x46\xeb\x47\x57\x47\x9c\x48\x0f\x48\x28\x48\xb6\x49\x42\x49\x46\x49\x6a\x49\xb6\x4a\x44\x4a\xce\x4b\x30\x4b\x98\x4c\x36\x4c"
+"\xab\x4c\xfd\x4d\x60\x4d\x66\x4d\xd2\x4d\xd7\x4d\xf1\x4e\x9c\x4f\x0f\x4f\x13\x4f\x6c\x4f\x71\x4f\xdb\x50\x59\x50\xad\x50\xd3\x51"
+"\x4d\x51\xca\x52\x16\x52\xb5\x52\xba\x53\x7f\x54\x12\x54\x54\x54\x87\x55\x35\x56\x05\x56\x98\x57\x21\x57\x73\x57\xd6\x58\x2e\x58"
+"\xbb\x59\x07\x59\x91\x59\xb6\x5a\x10\x5a\x84\x5a\xe0\x5b\x43\x5b\xac\x5c\x2d\x5c\x91\x5d\x1e\x5d\x41\x5d\x83\x5d\xc8\x5e\x11\x5e"
+"\x5a\x5e\xf9\x5f\x84\x60\x35\x60\x76\x60\xdb\x60\xec\x61\x21\x61\x57\x61\x9e\x62\x10\x62\x87\x62\xbd\x62\xde\x62\xff\x63\x20\x63"
+"\x41\x63\x4e\x63\x64\x63\xe6\x63\xf2\x63\xfc\x64\x24\x64\x2d\x64\x83\x65\x01\x65\x7f\x65\xa7\x65\xe9\x66\x6c\x66\x9b\x66\xf0\x67"
+"\x13\x67\x1d\x67\x27\x67\x57\x67\x61\x67\xc1\x68\x01\x68\x06\x68\x36\x68\x56\x68\xa7\x68\xab\x68\xd6\x69\x2d\x69\x47\x69\x9a\x6a"
+"\x2d\x6a\xa4\x6a\xac\x6a\xbe\x6a\xe6\x6b\x05\x6b\x2e\x6b\x88\x6b\xd4\x6c\x1b\x6c\x42\x6c\x51\x6d\x13\x6d\x1d\x6d\x95\x6e\x04\x6e"
+"\x42\x6e\x80\x6e\xc5\x6f\x52\x6f\x81\x6f\x86\x6f\x9b\x6f\xe4\x70\x0b\x70\x21\x70\x59\x70\xd2\x70\xd9\x71\x3e\x71\x47\x71\xa1\x71"
+"\xb4\x71\xea\x71\xf9\x72\x24\x72\x33\x72\xa1\x73\x17\x73\x37\x73\x81\x74\x04\x74\x0d\x74\xa0\x74\xa8\x74\xb1\x75\x18\x75\x4c\x75"
+"\xa8\x75\xb6\x75\xd1\x75\xe2\x75\xe9\x76\x16\x76\x19\x76\x45\x76\x53\x76\x5c\x76\xd3\x77\x1f\x77\xa1\x78\x22\x78\x6c\x78\x94\x78"
+"\xca\x79\x4f\x79\x86\x79\x8f\x79\xad\x79\xb7\x79\xe8\x79\xfa\x7a\x4f\x7a\x58\x7a\x92\x7a\x9b\x7a\xc7\x7b\x07\x7b\x61\x7b\xf2\x7c"
+"\x4e\x7c\x8a\x7d\x0e\x7d\x69\x7d\x99\x7d\xc6\x7e\x0e\x7e\x73\x7e\x9d\x7e\xb9\x7e\xc2\x7e\xca\x7e\xdd\x7e\xe0\x7e\xe4\x7e\xed\x7f"
+"\x16\x7f\x1e\x7f\x26\x7f\x53\x7f\xf6\x80\x8f\x81\x1e\x81\x26\x81\x46\x81\x59\x81\x61\x81\xd1\x82\x2d\x83\x13\x83\xdc\x84\x77\x84"
+"\xff\x85\x75\x85\xf5\x86\x68\x86\xec\x87\x59\x87\xd0\x88\x45\x88\xa0\x88\xd1\x89\x27\x89\x4b\x89\x7c\x89\xb3\x89\xf6\x8a\x83\x8b"
+"\x16\x8b\x89\x8b\xd0\x8c\x63\x8c\xea\x8d\x65\x8d\x71\x8d\x75\x8d\xbb\x8e\x55\x8e\xc5\x8f\x34\x8f\xcc\x90\x2b\x90\x58\x90\x6b\x90"
+"\x80\x90\x8b\x91\x43\x91\xbc\x91\xc0\x91\xc8\x91\xe4\x92\x01\x92\x71\x92\x8a\x92\xcf\x92\xf8\x93\x3b\x93\x40\x93\x4f\x93\x9d\x93"
+"\xc7\x93\xd0\x94\x09\x94\x11\x94\x19\x94\x27\x94\x2f\x94\xed\x94\xf6\x94\xff\x95\x0b\x95\x15\x95\xa4\xfc\x27\x0e\xfc\x27\x0e\xfb"
+"\x9c\xf7\x58\xf7\x60\x15\xb5\xf7\x00\xb7\xed\xc4\xf7\x04\x08\xa5\xb9\x90\x9b\xa6\x1a\xb7\x6f\xa8\x62\x6c\x73\x7a\x6e\x7d\x1e\x83"
+"\x79\x89\x80\x89\x60\x86\x3c\x79\xfb\x0b\x6d\xfb\x30\x08\x71\x3a\x15\x61\x6b\x6b\x61\x62\xaa\x6e\xb5\xb5\xac\xaa\xb2\xb2\x68\xae"
+"\x64\x1f\x0e\x29\xf7\x45\x83\x0a\xf7\xc1\x16\xdd\xf7\x4e\x8c\x8c\x8d\x90\x8e\x93\x19\x95\xa1\x8c\x8e\x98\x1a\xa6\x77\xa1\x72\x64"
+"\x66\x68\x65\x88\x1e\x7b\xfb\x6a\x05\x0e\xf8\x55\xf7\xaf\x15\x34\x06\xc1\xf7\x1a\x05\xec\x06\x9f\xd4\x05\x33\xbe\x0a\xfb\x05\xbe"
+"\x0a\x22\x06\x77\x42\x05\xeb\x06\x55\xfb\x1a\x05\x21\x06\x77\x42\x05\xeb\xea\x1d\xf7\x05\xea\x1d\xec\x06\x30\xf7\x63\x15\x55\xfb"
+"\x1a\x05\xfb\x05\x06\xc1\xf7\x1a\x05\x0e\xf8\x85\xf8\xea\x15\x79\x99\x66\xa3\x5b\x9f\x6a\x90\x19\x9f\xd3\x05\x59\x06\x79\x4a\x05"
+"\x8d\x77\x83\x8b\x81\x1b\xfb\x04\x37\x3d\x23\x47\xa5\x67\xf5\x3a\x1f\x41\xfb\x99\x45\xab\x77\xb3\x88\xf7\x00\x19\x75\x91\x61\xfb"
+"\x22\xc0\x5c\xaa\x7a\xca\x7c\x19\x6e\x20\x05\xbf\x06\xa7\xf0\xa2\x8a\x05\xf7\x0f\x86\xf7\x00\xe9\xf7\x04\x1a\xd2\x70\xb4\xfb\x05"
+"\xec\x1e\xc6\xf7\x6b\x05\xc7\x77\xa3\x67\x46\x1a\x85\x8b\x7e\x8a\x80\x1e\xa0\x86\x05\xfb\x63\x6e\x15\x56\xb3\x7a\xa5\xb3\x1a\xc5"
+"\xb6\xb0\xce\x91\x8f\x8b\x89\x90\x1e\x59\xfb\xfd\x15\xc2\x5f\x9a\x71\x5c\x1a\x53\x6e\x5f\x5c\x79\x1e\x85\x7a\x83\x8a\x67\x1b\x0e"
+"\xf7\x48\xf9\x38\xf8\x0c\x15\x5a\x5e\x77\x64\x60\x1f\x55\x57\x68\x42\x4b\x1a\x38\xc0\x54\xdb\xb8\xb9\x9f\xad\xab\x1e\xc1\xc4\xac"
+"\xdd\xd8\x1a\xd1\x5c\xb9\x45\x1e\xab\x58\x15\xa9\x89\xa0\x6f\x64\x1a\x61\x7d\x5d\x70\x5a\x1e\x55\x6d\x68\x6e\x67\x1b\x6d\x75\xa4"
+"\xab\x8d\x1f\x8e\xb7\xad\xe7\xaa\xb7\xa2\xae\xa5\x9d\xa3\x8a\x08\xfc\x96\xfb\xe1\x15\xc3\x06\xf8\x1e\xf9\x50\x05\x64\x06\x5a\x51"
+"\x5b\x77\x4c\x1b\x61\x71\x93\x9f\x6f\x1f\xa0\x6e\x78\x92\x6e\x1b\xfb\x05\xfb\x03\xfb\x0f\xfb\x11\x3b\xc0\x52\xd6\xc8\xc0\xaa\xc4"
+"\xb2\x1f\xb6\xc9\x9c\xc4\x8c\xe4\x08\x87\xa1\x95\x8a\x96\x1b\xb0\xb2\x94\x9d\xb6\x1f\xfb\x94\x9e\x15\x91\x8d\x89\x85\x92\x1f\x93"
+"\x83\x8c\x8b\x92\x88\x08\xa7\x80\x8c\x89\x75\x1a\xfb\x06\x40\xfb\x0f\x45\x6e\x76\xa2\xaa\x8d\x1e\x8e\xba\xad\xe6\xac\xbc\xa1\xac"
+"\xa3\x9e\x9c\x89\x08\x0e\xf7\x11\xf9\x35\xf0\x15\x6e\x6e\x76\x80\x70\x1b\x64\x6b\xa0\xbe\x64\x1f\xf7\x1d\xf7\x4d\x91\x91\xc9\x97"
+"\x08\xa4\xfb\x68\x72\x07\xb5\x84\x99\x82\x75\x1a\x6f\x7a\x6e\x52\x43\x1e\x62\xcd\x6a\xe2\x7f\xd5\x08\xf7\x11\xbd\xc4\xc2\xce\x1a"
+"\xce\x51\xba\x3b\xfb\x02\x40\x38\xfb\x0f\x72\x8e\x75\x93\x5e\x1e\xfb\x08\x59\x6b\x79\x68\x67\x08\x67\x65\x76\x5b\x5d\x1a\x28\xd9"
+"\x47\xf7\x07\xd1\xc3\x9d\xb8\xcd\x1e\x5f\xb8\xb4\x79\xc0\x1b\xcd\xb6\xa3\xd5\xc8\x1f\xfc\x52\xf7\x9b\x15\xa5\xfb\x03\xa6\x4a\xc3"
+"\x34\x08\x76\x63\x71\x84\x6c\x1b\x42\x55\xc6\xda\xd1\xaa\xb4\xdf\xb5\x1f\xf7\x05\xe6\x15\x82\xc5\x89\x98\xa4\x1a\xd8\xa4\xb5\xb8"
+"\xac\x9e\x72\x61\x4f\x6b\x60\x3c\x5e\x1e\x0e\xfb\xd4\xf7\x03\xf8\x05\x40\x1d\xfb\xd4\xf7\xda\xf9\x41\x15\xfb\x2c\xfb\x04\x4f\x4a"
+"\x5d\x23\x08\x70\x4f\x7e\x4a\x43\x1a\xfb\x1d\xb4\xfb\x03\xf0\xfb\x1e\x1e\xa2\x9a\x05\x54\xec\x7b\xc8\xf7\x08\x1a\xf7\x14\xa4\xf7"
+"\x15\xb6\xeb\x1e\xaf\xdb\xb0\xbb\xdc\xd5\x08\x0e\xfb\xd4\x70\xfb\x47\x15\xf7\x0a\xdf\xbd\xbc\xbe\xda\x08\xc0\xdc\xa5\xe3\xec\x1a"
+"\xd5\x7b\xd9\x6c\xd5\x1e\x74\xc2\x76\xad\x57\xd2\x74\x7c\x18\xc1\x31\x9d\x48\xfb\x06\x1a\xfb\x19\x6b\xfb\x2c\x59\x27\x1e\x6b\x4b"
+"\x6c\x64\x3f\x45\x08\x0e\xf7\x91\xf8\x76\x15\x80\x91\x6e\x9c\x7f\x98\x73\xb0\x19\xae\x75\x7a\x98\x73\x1b\x72\x73\x71\x6f\x7a\x94"
+"\x7e\x9c\x80\x1f\x82\x99\x95\x89\xa8\x1b\xb7\x8a\x98\x88\xac\x78\x96\x85\x18\x80\x85\x6a\x79\x7f\x88\x5e\x89\x19\x6e\x7f\x88\x84"
+"\x7f\x1f\x7b\x82\x81\x7b\x7b\x1a\x6e\xa2\x72\xa6\xa4\x9b\x97\xaf\xa0\x1e\xa0\xaf\x96\x95\xac\x9f\x96\x91\x18\x7f\x07\x88\x5f\x89"
+"\x83\x76\x66\x08\x7f\x75\x86\x7e\x7d\x1a\x6b\x9f\x77\xaa\xa9\x9f\x9f\xab\x9a\x87\x97\x7e\xa1\x1e\x76\xb0\x89\x93\x88\xb7\x08\x97"
+"\x07\x96\x85\xac\x77\x96\x81\xa0\x67\x19\x67\xa0\x9b\x7f\xa4\x1b\xa6\xa2\xa4\xa8\x9b\x81\x9b\x7b\x94\x1f\x92\x7f\x7f\x8e\x6e\x1b"
+"\x5e\x8d\x7f\x8e\x6a\x9d\x80\x91\x18\x96\x91\xac\x9e\x98\x8e\xb7\x8c\x19\xa8\x95\x8d\x94\x99\x1f\x9c\x96\x94\x98\x9c\x1a\xa7\x73"
+"\xa5\x72\x73\x7a\x7e\x68\x75\x1e\x73\x66\x7f\x7e\x6e\x7a\x80\x85\x18\x97\x07\x8e\xb8\x8d\x93\xa0\xb0\x08\x98\xa1\x8f\x96\x9b\x1a"
+"\xab\x77\x9f\x6d\x6c\x77\x76\x6c\x7c\x8f\x7f\x98\x75\x1e\xa0\x66\x8d\x83\x8e\x5e\x08\x0e\x38\xf7\x85\xf7\xbd\x15\xfb\x64\x33\xf7"
+"\x64\xfb\x65\xe3\xf7\x65\xf7\x64\xe3\xfb\x64\xf7\x65\x33\x06\x0e\xfc\x27\x5c\xfb\x4a\x40\x1d\xfb\xd4\xc9\x1d\xfc\x27\xcd\xf7\x1b"
+"\x15\x60\x6b\x6b\x60\x62\xab\x6b\xb4\xb5\xac\xab\xb5\xb4\x6a\xac\x63\x1f\x0e\xfc\x0b\xf7\x93\xf9\x41\x15\xfb\xd3\xfd\x53\x05\xe2"
+"\x06\xf7\xd3\xf9\x53\x05\x0e\xf7\xdb\xf9\x3f\x15\x54\x54\x71\x5d\x5e\x1f\x2e\x2b\x4d\xfb\x35\xfb\x28\x1a\xfb\x19\xca\x34\xec\xb5"
+"\xb3\x99\xa8\xb2\x1e\xef\xd6\xda\xf7\x49\xf7\x31\x1a\xf7\x26\x50\xea\x30\x1e\x89\x6e\x15\xaa\x9d\x70\x5e\x78\x87\x6b\x84\x66\x1f"
+"\x79\x35\x59\xfb\x55\x75\x49\x08\x2b\x6a\x6e\x65\x62\x1b\x6d\x77\xa5\xb3\xcb\xc3\xf7\x7e\xba\xf7\x17\x1f\xf3\xb0\xa7\xb3\xb0\x1b"
+"\x0e\x90\x16\xf7\xed\xa2\x06\x3c\x8c\x79\x93\xb0\x1a\x95\x8c\x8e\x96\xb4\x1e\xf7\x2e\xf8\xc4\x30\x75\x4c\x7f\xfb\x08\x79\x19\x89"
+"\x74\x05\x8f\xa5\x9c\x8c\xa0\x1b\xa9\x9a\x80\x75\x85\x89\x82\x89\x82\x1f\xfb\x14\xfc\x5f\x05\x54\x7a\x6d\x78\x43\x1b\x0e\xf8\x37"
+"\xf7\x53\x15\x72\x06\x66\x49\x76\x7f\x3a\x89\x08\xfb\x29\x06\xf7\x58\xf7\x3b\x05\xea\xdc\xbc\xdc\xd6\x1a\xe9\x43\xd5\x2f\x56\x5b"
+"\x77\x63\x5f\x1e\x6e\x71\x7b\x73\x6f\x55\xa1\x7f\x18\xc6\xb3\xb4\xa6\xbf\x1b\xc6\xad\x62\x46\x2f\x4e\x31\xfb\x50\xfb\x4f\x1f\x31"
+"\x31\x05\x73\xf8\x03\x07\x0e\xf7\x14\xf7\xef\x15\xb5\x89\x9e\x87\xa3\x7f\x08\xba\x72\xa4\x5b\x48\x1a\x31\x5a\x43\x4e\x7b\x7b\x91"
+"\x93\x83\x1e\x89\x8d\x85\x95\x7a\xa3\x08\xae\x74\x7b\x96\x71\x1b\x66\x74\x75\x69\x5a\xbe\x6c\xdd\xf7\x35\xf7\x15\xf7\x09\xf7\x26"
+"\xcd\x77\xb1\x52\xb6\x1f\x97\x91\x05\xd3\xb0\xae\xba\xc7\x1a\xd9\x4b\xc5\x36\x3a\x4e\x63\x2e\x4d\x1e\xa0\x7e\x05\xc4\xb5\xa6\x9d"
+"\xba\x1b\xc0\xad\x68\x54\x3e\x4f\x5a\xfb\x15\x70\x1f\x0e\xf8\x59\xf7\x8c\x15\x46\x06\xf7\x0b\xf8\x47\x05\x4c\x06\xfc\x3f\xfc\x40"
+"\x6f\x22\x05\xf7\x88\x06\x62\xfb\x2a\x05\xf7\x14\x06\xb5\xf7\x2a\x05\xcf\x06\xfc\x09\xed\x15\xf7\xae\xf7\xac\x3c\xfb\xac\x05\x0e"
+"\xf7\x59\xf8\xc4\x15\xf7\x92\x06\xaf\xf7\x01\x05\xfb\xaf\x06\xfb\x17\xfb\xbd\xce\x88\xaa\x84\xb1\x77\x19\xc9\x6b\xaf\x52\x4b\x1a"
+"\x35\x4c\x3f\x44\x75\x80\x94\xad\x76\x1e\xb3\x73\x7a\x98\x6d\x1b\x68\x73\x74\x69\x5c\xbf\x6b\xda\xf7\x39\xf7\x13\xf7\x07\xf7\x29"
+"\xd8\x69\xcc\x4d\xb3\x1f\x69\xa2\x70\x94\x2f\x9e\x08\x0e\xf8\x8b\xf9\x3b\x15\xfb\x1a\x72\x4b\x71\x3a\x50\x08\xfb\x12\x2d\x40\xfb"
+"\x1f\xfb\x21\x1a\xfb\x18\xcc\x3d\xf7\x01\xf7\x1d\xf7\x01\xf7\x0a\xf7\x28\xf5\x52\xcc\x2e\x77\x7e\x88\x81\x6e\x1e\xc9\xf7\x0f\xdc"
+"\xd2\xf7\x1b\xbf\x08\xfb\x96\xfb\xa5\x15\xba\xa0\x76\x5d\x4c\x68\xfb\x19\x6a\x4c\x1f\x73\x7e\x75\x7c\x71\x1b\x66\x79\xa4\xc0\xc1"
+"\xa0\xe3\xac\xde\x1f\xc0\xa0\x93\x94\xac\x1b\x0e\xde\xf8\x73\x15\xaf\xcb\xa5\x97\xf5\x8c\x08\xf7\x19\x06\xfb\xe0\xfc\xc0\x05\xe7"
+"\x06\xf8\x11\xf9\x31\x05\xfc\x11\x06\x34\xfb\x52\x05\x0e\xf7\xe1\xf8\x11\x15\xf3\xb7\xb2\xb7\xd2\x1a\xae\x7f\xaa\x75\xa1\x1e\xad"
+"\x69\x55\xa0\x55\x1b\xfb\x02\x3a\x3d\x21\x51\x9d\x66\xc3\x50\x1f\x86\x07\xfb\x10\x5f\x53\x51\x36\x1a\x28\xda\x48\xf7\x07\xf7\x14"
+"\xe9\xe2\xf7\x0b\xcb\x73\xbf\x4d\xce\x1e\xfb\x10\x54\x15\xe1\x25\x96\x77\x57\x1a\x3f\x5e\x55\x4d\x4d\x66\xba\xd8\xd6\xa9\xbd\xda"
+"\xc2\x1e\xf0\xdd\x15\x46\xcc\x76\xaf\xbc\x1a\xc3\xad\xb4\xbb\xbc\xab\x61\x4b\x58\x7c\x6d\x51\x4f\x1e\x0e\x85\x81\x15\xf7\x1b\xa4"
+"\xcb\xa4\xdb\xc6\x08\xf7\x11\xe7\xd8\xf7\x23\xf7\x22\x1a\xcd\x76\xc7\x66\xb0\x1e\xa8\x6e\x64\x9a\x59\x1b\xfb\x1e\xfb\x00\xfb\x0b"
+"\xfb\x2c\x27\xc8\x48\xe5\xa1\x98\x8e\x96\xa5\x1f\x4e\xfb\x11\x2d\x39\xfb\x0e\x66\x08\xf7\xda\xf9\x10\x15\xac\x9b\x74\x5d\x75\x87"
+"\x67\x85\x6a\x1f\x83\x62\x8b\x8b\x72\x42\x08\x3c\x70\x83\x81\x61\x1b\x60\x74\xa2\xb4\xcb\xa7\xf7\x04\xa9\xc8\x1f\xb4\xa0\xa6\xa0"
+"\xaa\x1b\x0e\xfb\xd4\xed\xf7\x1b\x15\x28\x0a\xe8\xf7\xd8\x15\x28\x0a\x0e\xfb\xd4\x7f\xfb\x4b\x44\x0a\x64\x3c\x61\x1e\xf7\x6c\xf8"
+"\xfe\x2b\x0a\x38\xf8\xbd\xf8\xed\x15\xfc\x85\xfb\xa4\x86\x78\xf7\xf0\xfb\xb0\xad\xf7\x16\xfb\x7f\xf7\x54\xf7\xe5\xf7\x4e\x05\x0e"
+"\x38\xf8\xad\xf8\x23\x15\xfc\x8c\x33\xf8\x8c\x06\xfb\x08\x04\xfc\x8c\x33\xf8\x8c\x06\x0e\x38\x94\xa5\x15\xf8\x84\xf7\xa4\x91\x9f"
+"\xfb\xf0\xf7\xaf\x68\xfb\x16\xf7\x80\xfb\x53\xfb\xe5\xfb\x4f\x05\x0e\xf7\x58\xf7\x64\x15\xa7\xd1\x9b\xa2\xb1\xa4\xcd\xb6\x18\xe5"
+"\xc5\xaf\xbd\xca\x1a\xe1\x45\xc5\x21\x26\x41\x55\x40\x65\xa5\x6e\xae\xad\xa6\xa6\xac\x9a\x86\x98\x7e\x9c\x1e\x83\x95\x88\x91\x91"
+"\x1a\x9f\xa9\x9d\xab\xb6\xa5\x6d\x5a\x5b\x77\x5d\x5f\x54\x1e\x62\x58\x5d\x51\x76\x5d\x87\x54\x19\x7e\x3b\x2b\x0a\xf7\x47\xf8\xb5"
+"\xf8\x63\x15\xb5\x75\x7d\x95\x67\x1b\x60\x60\x78\x6a\x6b\x1f\x58\x55\x6b\x3c\x42\x1a\x4b\xb4\x59\xbf\xb6\xba\xa7\xb9\xae\x1e\x62"
+"\x8d\xb5\x69\xbc\x1b\xf0\xe1\xf7\x05\xf7\x18\xf7\x3c\xfb\x25\xf7\x16\xfb\x51\xfb\x64\xfb\x39\xfb\x32\xfb\x5b\xfb\x57\xf7\x38\xfb"
+"\x2b\xf7\x68\xd4\xbe\x99\xb8\xec\x1f\x7e\xae\x05\x67\x3d\x59\x7f\x45\x1b\xfb\x40\xfb\x0f\xf7\x0f\xf7\x3f\xf7\x51\xf7\x0a\xf7\x1b"
+"\xf7\x39\xf7\x31\xf7\x16\xfb\x0d\xfb\x26\x59\x79\x50\x6e\x63\x1f\x69\x74\x70\x7a\x6d\x1b\x73\x7e\x9b\xa8\x94\x8b\x90\x8d\x91\x1f"
+"\xcc\xf7\x95\x05\x44\x06\x45\x69\x15\xa8\x89\x9a\x74\x89\x63\x89\x5f\x7b\x50\x75\x61\x08\x61\x75\x6d\x72\x6e\x1b\x67\x74\xac\xbf"
+"\xc0\x9e\xbf\xab\xb0\x1f\xa7\xab\xad\x9f\xa4\x89\x08\x0e\x99\x27\x1d\x0e\x99\xf7\x08\xf9\x18\x15\xaf\x89\x94\x89\x97\x84\x08\x94"
+"\x86\x92\x7e\x7f\x1a\x81\x87\x75\x84\x72\x1e\xfb\x0e\xfc\x55\x7b\x58\x7b\x7c\x5b\x85\x19\x72\xf7\xc1\x07\xf7\x4b\xf7\x04\xd9\xf7"
+"\x13\xda\x68\xb1\x25\xac\x1f\xd7\x9e\xaa\x99\xae\xa8\x08\xa9\xa4\x9c\xb3\xb4\x1a\xeb\x3a\xbd\xfb\x2f\x1e\xfb\xa4\x06\xf7\x2d\xfb"
+"\xdf\x15\xcd\x89\xa9\x85\x9f\x7a\x08\xa2\x78\x96\x6f\x66\x1a\x50\x74\x4d\x67\x67\x1e\x70\x70\x69\x7e\x5f\x1b\x64\x79\x95\xa2\x93"
+"\x8c\x92\x8f\x99\x1f\xf7\x1b\xf8\x87\x15\xaf\x95\x95\x93\xab\x1b\xc5\xa8\x69\x46\x4c\x76\x5c\x63\x71\x1f\x6c\x77\x69\x84\x41\x88"
+"\x08\x0e\x99\x33\x1d\x0e\xd0\x65\x0a\x0e\x99\x24\x1d\x0e\x99\xf8\x97\xf8\x6c\x15\x6f\x8f\x5c\x2d\x77\x80\xfb\x17\x8a\x19\xc8\xf7"
+"\x73\xb1\x0a\x74\x91\x70\x53\x1a\xa6\x86\xb6\xf7\x52\x05\xfc\xa9\x72\x06\x9f\x1d\xf7\xbb\xa4\x07\x53\x8f\x7c\x94\xaa\x1a\x97\x8e"
+"\x9a\x93\xa5\x1e\x8d\x92\x8c\x90\x8c\x8e\xc1\xf7\x5d\x18\xf6\x89\xa9\x77\x47\x1a\x7d\x8a\x80\x88\x78\x1e\xa7\x86\x05\x0e\xd0\x35"
+"\x0a\x0e\xf7\x11\xf9\x25\xd5\x1d\x92\x8c\x90\x8e\x95\xf7\x01\xf8\x21\x18\x9b\xc0\x99\x97\xbe\x92\x08\x56\x1d\x5c\xfb\x41\x05\xfb"
+"\x83\x06\xc1\xf7\x5b\xab\x1d\x86\x91\x87\x5c\x1d\x78\x84\x70\x1e\xfb\x0e\xfc\x55\x4f\x1d\x07\x0e\xfb\x9c\x27\x0a\x0e\xf8\xa0\x6a"
+"\x0a\xc0\x9a\x98\xbc\x91\x19\x0e\x99\x58\x0a\x0e\x61\x2f\x0a\x0e\xf7\x80\xfa\x29\xf9\x31\x15\xfb\x68\x06\xfb\xca\xfc\x74\x55\xf8"
+"\x74\x05\xfb\x71\x72\x06\xca\x88\x94\x87\x6f\x1a\x7d\x87\x79\x84\x71\x1e\xfb\x01\xfc\x09\x63\xfb\x16\x84\x80\x55\x7f\x19\x72\xf7"
+"\x63\xa4\x07\x4b\x93\x7b\x97\xb4\x1a\x9c\x90\xa4\x99\xbd\x1e\xf0\xf8\x05\xce\xfc\xc3\x05\xa7\x06\xf8\x0b\xf8\xd1\xfb\x11\xfc\x64"
+"\x7b\x55\x78\x7d\x4a\x87\x19\x72\xf7\xcc\xa4\x07\x51\x8e\x7d\x93\xab\x1a\x96\x8d\x96\x91\xa2\x1e\x8c\x90\x8c\x90\xf7\x0f\xf8\x55"
+"\x9a\xbf\x9a\x99\xbe\x91\x19\x0e\xd0\x2e\x0a\x0e\xd0\x26\x1d\x0e\x61\xf7\x05\x73\x1d\x0e\xd0\xf9\x0e\x63\x15\x4f\x51\x67\x79\x4e"
+"\x1b\x70\x77\x8f\x96\x67\x1f\x61\x98\x72\x93\x63\x92\x5e\x8e\x19\x6c\x8d\x84\x8d\x8f\x1a\x8b\x8c\x8d\x8c\x8c\x1e\x92\x92\x95\x96"
+"\x95\x95\x9c\x9b\x19\xf7\x16\x93\xc2\x9f\xd8\xd0\x08\xf7\x02\xee\xce\xf7\x20\xf7\x19\x1a\xf7\x1b\x25\xed\xfb\x20\xfb\x6c\xfb\x62"
+"\xfb\x7b\xfb\x86\x49\xa4\x4f\xb8\x61\x1e\xa5\x72\x98\x84\xc0\x78\x93\x88\x8e\x89\x8e\x87\x89\x88\x8a\x89\x89\x89\x8a\x8a\x86\x87"
+"\x83\x84\xfb\x30\xfb\x16\x18\x99\x73\x05\xa1\xc3\xa5\x91\xab\x1b\xa8\xa2\x86\x7b\xbf\x1f\x77\xc9\xac\x85\xb4\x1b\xf7\x01\xd0\xb2"
+"\xf7\x02\xdc\x1f\xfb\x65\xf9\x5a\x15\xc7\xb4\x5b\x44\xfb\x0d\x4e\xfb\x5b\x47\x29\x1f\x48\x5d\x5e\x6d\x55\x1b\x4c\x64\xb9\xd4\xf2"
+"\xbe\xf7\x4c\xc2\xec\x1f\xe5\xbe\xc0\xb4\xcc\x1b\x0e\x99\x3b\x1d\x0e\x2a\x36\x0a\x0e\x61\x43\x0a\x0e\xd0\x21\x0a\x0e\x99\xf9\x5f"
+"\xf9\x31\x15\xfb\x54\x72\x06\xb8\x87\x8b\x8b\x94\x85\x08\x92\x87\x8f\x82\x82\x1a\x74\x77\x60\x64\x4d\x1e\xfb\x52\xfb\xc2\x58\xf8"
+"\x25\x05\x8a\x91\x8b\x8f\x91\x1a\xad\x93\x90\xcf\x91\x1e\xa4\xfb\xbe\x72\x07\xc9\x91\x81\xfb\x23\xa1\x1f\xd7\xfc\x91\x05\xab\x06"
+"\xf8\x1d\xf9\x02\x98\x9e\x9d\x97\xa7\x94\x19\x0e\xf7\x80\x2c\x0a\x0e\x99\xf8\xde\xa4\x15\x43\x93\x7c\x99\x6e\xe9\x41\xf7\x81\x18"
+"\xf7\x5b\xf7\x61\xb7\xb7\x9f\x97\xae\x90\x19\xa4\xfb\x5f\x72\x07\xa5\x88\x9b\x88\x90\x88\x08\x90\x88\x8e\x84\x84\x1a\x79\x78\x71"
+"\x58\x55\x1e\x2d\x28\x81\xac\x88\x97\x87\x95\x19\x74\xd3\x80\xb5\x9a\x1a\xa2\x96\x94\xac\x8f\x1e\x8f\x97\x8c\x8d\x99\x1f\xa4\xfb"
+"\xc5\x72\x07\xc7\x85\x9b\x80\x9a\x5d\xdf\xfb\xa4\x18\x71\x6f\x86\x86\x66\x62\xfb\x32\xfb\x42\x6c\x6f\x61\x83\x08\x72\xf7\x6a\xa4"
+"\x07\x5e\x8f\x77\x98\xa2\x1a\x98\x93\x98\xa1\xa4\x1e\xf7\x1a\xf7\x28\x8f\x7c\x8d\x84\x98\x65\x19\xa6\x3e\x96\x61\x75\x1a\x71\x7d"
+"\x84\x55\x86\x1e\x72\xf7\xc8\x07\x0e\x61\x2d\x0a\x0e\x61\x3f\x1d\x0e\xfb\xd4\xf7\xf7\xf9\x13\x15\x92\xae\x05\xfb\x5c\x06\xfb\x5b"
+"\xfd\xd5\x05\xf7\x6f\x06\x92\xae\x05\x3d\x06\x73\x81\x92\x9c\x8a\x1f\xf7\x32\xf9\x38\x9a\xc9\x8b\x8b\xb0\x8c\x19\x0e\xfc\x0b\x8a"
+"\xf9\x41\x15\xf7\x58\xfd\x53\x05\xdf\x06\xfb\x57\xf9\x53\x05\x0e\xfb\xd4\x5a\xfb\x0e\x15\x84\x68\x05\xf7\x5b\x06\xf7\x5c\xf9\xd3"
+"\x05\xfb\x70\x06\x84\x68\x05\xd9\x06\xa3\x95\x84\x7b\x8c\x1f\xfb\x32\xfd\x39\x7c\x4f\x8b\x8b\x66\x8a\x19\x0e\x38\xf7\x4d\xf7\xc7"
+"\x15\xf7\x15\xf7\xa7\xf7\x18\xfb\xa7\x05\xe5\x06\xfb\x4a\xf8\x05\x05\x3a\x06\xfb\x46\xfc\x05\x05\x0e\xf8\x6c\xfb\x23\x15\xd0\xfc"
+"\x85\x46\x07\x0e\xfb\xd4\xf7\xd3\x80\x0a\x0e\x25\x1d\x0e\xd7\xf9\x16\x15\xbc\x99\x84\x74\x7e\x7e\x58\x71\x2e\x1f\x2d\xfb\xdb\x05"
+"\x81\x67\x81\x63\x86\x1a\x6f\xd3\x6b\xcd\xf7\x37\xf7\x31\xf7\x40\xf7\x47\xd4\x5d\xbe\x49\x58\x67\x74\x47\x58\x1e\xe5\xf7\xdc\x44"
+"\x7e\x59\x83\x34\x82\x19\xf7\x5b\xfb\xa7\x15\xa8\x9a\x74\x5d\x50\x70\x2e\x67\x4d\x1f\x4e\x69\x64\x6d\x60\x1b\x79\x7e\x96\x9b\x96"
+"\x9b\xd4\x96\xb2\x1f\x97\xb7\x9f\xc4\x9b\xaf\x08\xc4\xa5\xaa\xa9\xad\x1b\x0e\xfb\x65\x3e\x1d\x0e\x59\x0a\x0e\xfb\x65\x22\x0a\x0e"
+"\xfb\xd4\xf7\xdc\xf8\x55\x15\x2f\x06\x46\x1d\xa9\xa0\xa1\xaa\xbc\x65\xaa\x4e\x57\x5a\x75\x64\x68\x1e\x61\x5d\x78\x62\x6e\x26\x08"
+"\x42\x06\x82\x61\x05\xd4\x06\x5b\xfb\x66\x68\xfb\x32\x86\x73\x42\x1d\xb5\xb0\x99\xa8\xaa\x1e\xb3\xaf\xa6\xc0\xac\xf2\xa3\xda\x96"
+"\xb9\xc1\xf7\x90\x08\xe5\x06\x0e\x3f\x0a\x0e\x2a\xf8\x70\xf7\x22\x15\x4d\x60\x78\x76\x5a\x0a\xfc\x0b\x2c\x1d\x5f\xf8\xc1\x57\x1d"
+"\xfc\x0b\xaa\xf8\x2b\x15\xbe\x96\x86\x71\x7e\x87\x74\x83\x6d\x1f\x2f\xfb\xf7\x81\x0a\xca\xef\xd0\xd7\xf7\x2f\xb3\x1e\xf7\x06\xf8"
+"\x4a\x4f\x7e\x65\x86\xfb\x02\x81\x19\xf7\x47\xf7\x8e\x57\x1d\x75\x1d\x0e\xfc\x0b\x41\x0a\x0e\xf7\x11\xad\xf8\x2b\x15\x93\x06\xa7"
+"\x8c\x9d\x81\x7a\x1a\x7d\x83\x6c\x70\x29\x1e\x48\xfb\x82\x05\xf7\x0d\x06\xc0\xf7\x52\xb1\xe1\xc3\xce\x08\xa5\xa2\xa7\x9f\x99\x1b"
+"\x95\x93\x81\x7e\x7b\x7f\x60\x6a\x27\x1f\x4a\xfb\x63\x05\xf7\x0c\x06\xc5\xf7\x52\x92\x9f\xaf\xca\x08\xd5\xb5\xb3\xb5\xa9\x1b\x97"
+"\x96\x81\x80\x85\x88\x80\x87\x7e\x1f\x5e\xfb\x17\x05\x76\x4c\x7c\x4d\x6f\x1a\x62\xa3\x75\xb6\xc9\xb3\xac\xed\xc5\x1e\x75\x98\x79"
+"\x70\x81\x7d\x8a\x8a\x19\x72\x78\x80\x82\x81\x1b\x82\x84\x91\x93\x96\x8b\x8b\xa0\xce\x1f\xb8\xf7\x19\x05\x9a\xb6\x93\xb1\xa5\x1a"
+"\xb4\x6a\xa9\x5f\x47\x5c\x62\xfb\x16\x38\x1e\x9f\xbe\x91\xa3\xa7\x1a\xb6\x72\xa4\x61\x6f\x6d\x80\x74\x6f\x1e\x66\x70\x6d\x64\x4a"
+"\x27\xcb\xf7\x5b\x18\x4e\x7d\x71\x87\xfb\x05\x82\x08\x0e\x2a\x30\x1d\x0e\x23\x0a\x0e\xa2\xf8\x2b\x15\xb8\x89\x94\x87\x78\x1a\x82"
+"\x83\x66\x7d\x57\x1e\x27\xfc\x18\x78\x49\x83\x82\x5b\x8c\x19\x70\xf7\x8d\xa6\x07\x59\x8c\x7c\x92\xa3\x1a\x98\x92\xab\x9e\xd0\x1e"
+"\x92\xa3\x8b\x8d\x8f\x9a\x08\x79\xae\x97\x87\xa0\x1b\xf7\x1c\xf7\x21\xf7\x48\xf7\x42\xd5\x61\xba\x49\x52\x5f\x6b\x38\x50\x1f\xb1"
+"\xf7\x07\x25\x7b\x64\x85\x57\x85\x19\xf7\x97\x60\x15\xa5\x89\x9a\x75\x89\x6a\x87\x4a\x6b\x27\x67\x4a\x08\x55\x6c\x6b\x6f\x69\x1b"
+"\x75\x7a\x9b\x9f\x9b\x93\xad\xa5\xe2\x1f\xa3\xdc\x96\xa8\x9b\xa3\xa4\xb2\xac\xa4\xa5\x89\x08\x0e\xf8\x07\xfb\x46\x15\x7d\x06\x67"
+"\x7c\x93\x9f\x9d\xb0\xf7\x1d\xb6\xf7\x20\x1f\xa2\xd6\x9e\xd1\xb6\xf7\x33\x08\xfb\x01\x06\x7c\x50\x86\xa7\x88\x96\x82\x96\x19\x99"
+"\x81\x76\x93\x74\x1b\x3f\x33\x48\x24\x50\x1f\x68\x4e\x7a\x50\x54\x1a\x3a\xb2\x5a\xcc\xc7\xb3\xa8\xdd\xbf\x1e\x4c\xfb\x69\x7a\x57"
+"\x80\x83\x4d\x88\x19\x70\xf7\x9f\x07\x3a\xf9\x04\x15\xa1\x8a\x98\x78\x6f\x1a\x56\x66\xfb\x0f\x68\x4d\x1e\x59\x6e\x6f\x73\x6c\x1b"
+"\x71\x7e\x9e\xb1\xc3\xa7\xe5\xb4\xd3\x1f\xab\xc3\xae\xaa\xa7\x89\x08\x0e\xfb\x9c\x40\x0a\x0e\xfb\x9c\x3d\x1d\x0e\xfc\x0b\xf7\xad"
+"\xf8\x55\x15\x43\x83\x1d\x2a\x26\x0a\x0e\xfb\x65\x9b\xf8\x2b\x15\xaa\x94\x88\x7e\x92\x1f\x9b\x6b\x96\x34\xfb\x00\x1a\x87\x8b\x7a"
+"\x8a\x77\x1e\x87\xfb\x1c\x05\xa5\x06\xf7\x13\xf7\x0d\xba\xc0\xc2\xdc\x08\xb3\xc4\xa0\xc1\xb5\x1a\xae\x6e\xab\x6b\x6d\x71\x70\x6c"
+"\x7a\x91\x7d\x9d\x77\x1e\x9a\x7b\x90\x81\x80\x1a\x68\x70\x63\x28\xfb\x05\x1e\x87\xf7\x58\x85\xc5\x76\xdb\x59\x7f\x74\x87\x39\x7f"
+"\x08\x0e\x99\x32\x1d\x0e\xf8\x24\xf7\x0f\x15\x59\x64\x81\x82\x79\x1b\x78\x81\x99\xb2\x83\x1f\x6b\xf7\x30\x8e\x8f\x8c\x8d\x90\x92"
+"\x19\xc5\xae\xa4\xa3\xa2\x1b\x91\x92\x88\x85\x97\x1f\x82\x99\x92\x89\x96\x1b\xa9\xa5\xa3\xa8\xab\x70\xa8\x6c\x5c\x6c\x70\xfb\x03"
+"\x3b\x1f\x79\xe2\x83\xa3\x78\xa6\xfb\x3b\x73\x18\x70\x07\x8d\x9d\x92\x8b\x95\x1b\xab\x99\x79\x5a\x95\x1f\xa9\xfb\x2e\x5f\x45\x05"
+"\x6a\x77\x81\x83\x79\x1b\x85\x86\x8d\x91\x81\x1f\x94\x7b\x80\x8f\x7e\x1b\x6c\x73\x73\x6b\x68\xa5\x73\xb1\xbd\xa1\x9f\xeb\xc6\x1f"
+"\xa3\xb2\x05\xfb\x07\xa1\xa4\x63\xbd\x1b\xbb\xb5\xad\xe3\xc8\x1f\x0e\xfb\x65\x31\x1d\x0e\xfb\x9c\x34\x1d\x0e\xfb\xc5\xf8\x48\xf9"
+"\x42\x15\xfb\x33\x51\x6a\xfb\x01\x6c\x1f\x5d\xfb\x47\x77\x43\x6f\x73\x32\x77\x19\xc9\x7b\xa1\x78\x68\x1a\x73\x81\x5f\x7b\x5b\x1e"
+"\x78\x53\x7b\x42\x6d\x1a\x71\x93\x78\x9c\x7c\x1e\xa4\x76\xb2\x83\xe8\x89\x8e\x97\x18\x50\x96\x75\xa0\xb9\x1a\xa5\x96\xbd\x9e\xcb"
+"\x1e\x9e\xc7\x95\xba\xa2\x1a\xb5\x79\x99\x41\x9f\x1e\xed\x9e\xa9\xa5\xa2\xe0\xb8\xf7\x3f\x18\x9f\xd7\xaf\xac\xdd\x9a\x08\x0e\xfc"
+"\x45\xcd\xfb\x8e\x15\xe3\xfa\x7a\x33\x06\x0e\xfb\xc5\xfb\x15\xfb\x4f\x15\xf7\x33\xc5\xac\xf7\x01\xaa\x1f\xb9\xf7\x47\x9f\xd3\xa7"
+"\xa4\xe4\x9e\x19\x4e\x9b\x74\x9e\xae\x1a\xa3\x95\xb7\x9b\xbb\x1e\x9e\xc4\x9b\xd5\xaa\x1a\xa2\x83\x9e\x7a\x9a\x1e\x72\xa0\x64\x93"
+"\x2e\x8d\x88\x7f\x18\xc5\x81\xa2\x74\x5f\x1a\x71\x81\x5e\x76\x45\x1e\x78\x49\x82\x62\x74\x1a\x61\x9c\x7d\xd6\x77\x1e\x29\x78\x6d"
+"\x71\x74\x36\x5e\xfb\x3f\x18\x77\x3f\x67\x6a\x39\x7c\x08\x0e\x38\xf8\x63\xf7\xce\x15\x6a\x72\x78\x7f\x74\x1b\x78\x7c\x90\xa1\x5a"
+"\x1f\xad\x3c\x75\x92\x66\x1b\x58\x65\x71\x51\x6a\x1f\xc1\x5c\x05\xab\xa3\x9b\x95\xa9\x1b\xae\xaa\x81\x72\xba\x1f\x72\xba\xa4\x83"
+"\xad\x1b\xba\xa9\xa0\xcb\xba\x1f\x0e\xfb\x9c\xf7\x55\xf7\xa7\x15\x60\xfb\x02\x60\x2b\x52\xfb\x04\x08\x71\x5c\x86\x7c\x71\x1a\x5e"
+"\xa6\x6e\xb5\xaa\xa3\x9c\xa8\x99\x1e\x93\x9d\x8d\x98\x8d\xb4\x8f\xd7\x9e\xf7\x11\xa9\xf7\x2d\x08\xa6\xf7\x75\x15\x61\x6a\x6c\x64"
+"\x64\xae\x68\xb2\xb5\xab\xab\xb5\xb3\x6c\xa9\x61\x1f\x0e\xf8\x43\xf8\xd4\x15\x68\x06\x62\xfb\x09\x05\x8d\x7f\x84\x8c\x82\x1b\xfb"
+"\x22\xfb\x23\xfb\x36\xfb\x36\x31\xc1\x54\xe9\x85\x1f\x5d\xfb\x16\x05\xad\x06\xba\xf7\x19\xce\x98\xb0\xa9\xca\xe5\x19\x70\x9d\x62"
+"\x4f\x68\x70\x61\x89\x19\xe7\xf7\x99\x05\x83\x95\x96\x88\x99\x1b\xb0\xa7\xa8\xb2\xad\x7b\xa4\x66\x9f\x1f\xfb\x40\xfc\x1c\x15\x77"
+"\x96\x84\x93\x84\x9b\x08\x84\x9b\x87\xa0\x9d\x1a\xc5\xa5\xe2\xaf\xcb\x1e\xbd\xa7\xa6\xa2\xaa\x1b\x98\x97\x83\x83\x88\x1f\x0e\xf8"
+"\x1e\xf8\x06\x15\xfb\x06\x06\xb2\xf7\x5e\x05\xbd\x95\xa0\xa6\xa8\x1b\x99\x95\x82\x7f\x86\x8a\x84\x89\x84\x1f\x89\x7f\x89\x7f\x81"
+"\x1a\x6e\xa2\x75\xa9\xae\xa5\xa8\xb2\xbf\x5d\xb2\x4c\x52\x55\x70\x5a\x61\x1e\x5a\x54\x73\x51\x72\xfb\x10\x08\x22\x06\x81\x4f\x05"
+"\xf7\x01\x06\x81\x37\x89\x80\x84\x48\x08\x96\x71\x7d\x8e\x76\x1b\x52\x64\x68\x57\x58\xb0\x68\xc0\xb6\xa7\x9c\xb6\xa6\x1f\x5e\xbe"
+"\xad\x7b\xb5\x1b\xb5\xb3\x9f\xae\xa4\x1f\xa0\xa7\x96\xa6\x97\xc4\x08\x72\x06\x5a\x75\x77\x7d\x5b\x1b\x6a\x6a\x94\xa2\x50\x1f\x96"
+"\x9c\xa5\xb6\xa4\xcf\x98\xc5\x19\xf7\x07\x06\xfb\xa3\xfb\x70\x15\x5a\x80\x79\x75\x6d\x1b\x6a\x74\xa0\xa9\xa9\x9f\x9f\xaa\xa1\x9d"
+"\x83\x75\xa3\x1f\x0e\xfc\x7a\xcf\x1d\xf8\x8c\xf7\xea\x15\xfb\x1b\x06\xf7\x3a\xf7\x7d\xad\xb9\x9e\x9a\xb3\x93\x19\xa4\xfb\x5c\x72"
+"\x07\xc2\x89\x9a\x82\x68\x1a\x79\x85\x7e\x77\x6e\x1e\xfb\x1b\xfb\x56\x3b\xf7\x80\x05\x87\x97\x89\x96\x94\x1a\xa2\x9d\x92\xc4\x8d"
+"\x1e\xa4\xfb\xac\x72\x07\xc2\x85\x92\x85\x9f\x58\xda\xfb\x83\x18\xfb\x11\x06\x7d\x59\x05\xf7\x22\x06\x75\x3d\x05\xfb\x21\x06\x7d"
+"\x59\x05\xf7\x21\x06\x78\x48\x79\x52\x7d\x81\x3e\x86\x19\x72\xf7\xd6\xa4\x07\x48\x8e\x7d\x92\xac\x1a\x9e\x8f\xa1\x97\xb7\x1e\x8e"
+"\x96\x05\xf7\x2c\x06\x99\xbd\x05\xfb\x2c\x06\xa0\xd9\x05\xf7\x2a\x06\x0e\xf8\x4f\xf8\x4c\x15\xfb\x0a\x06\xa1\xf7\x16\x94\xb1\x9d"
+"\xab\x08\xa3\x99\x9e\x98\xa0\x1b\x9a\x95\x85\x82\x87\x88\x88\x85\x85\x1f\x7d\x7e\x85\x80\x7b\x1a\x6d\xa0\x77\xab\xaf\xa3\xa3\xb0"
+"\xbd\x5c\xb0\x4c\xfb\x02\x34\x28\xfb\x3c\x66\x1e\x20\x06\x83\x5f\x05\xf4\x06\x45\xfc\x00\x7e\x49\x74\x4f\x77\x77\x19\x82\x81\x81"
+"\x87\x7a\x1b\x7a\x83\x8f\x94\x90\x8d\x8f\x93\x93\x1f\x97\x99\x91\x97\x97\x1a\xa7\x74\xa1\x6d\x6a\x73\x72\x68\x57\xb7\x68\xcd\xf7"
+"\x1a\xe2\xf7\x15\xf7\xa1\xba\x1e\xa6\xf7\x2e\x05\xf7\x08\x06\x0e\xf7\xb4\xf7\x11\x15\x88\x97\x92\x8a\x96\x1b\xcb\xc0\xc2\xce\xba"
+"\x76\xbe\x64\xb8\x1f\x46\xdc\x05\x58\xc7\x7a\xaa\xab\x1a\xb6\xaf\xa9\xbd\xa9\xa7\x7e\x7c\x86\x87\x86\x81\x84\x1e\x7b\x7e\x85\x81"
+"\x7c\x1a\x6d\xa4\x73\xa9\xad\xa3\xa5\xae\xc4\x52\xb4\x3c\x2f\x4c\x54\x3c\x5f\x9e\x5e\xaf\x63\x1e\x89\x88\x05\x8e\x7e\x74\x8e\x7e"
+"\x1b\x51\x5d\x53\x45\x60\x9b\x65\xae\x60\x1f\xcd\x3b\x05\xd2\x35\x97\x77\x6a\x1a\x5e\x68\x6c\x58\x69\x6a\x99\x9a\x90\x8e\x90\x95"
+"\x93\x1e\x9b\x99\x91\x96\x9f\x1a\xa8\x74\xa0\x6a\x69\x73\x72\x68\x50\xca\x5d\xdd\xe7\xd3\xc6\xd6\xb5\x7b\xad\x60\xc1\x1e\x30\xf7"
+"\xab\x15\xc5\xf7\x03\xfb\x13\x48\x6c\x70\x70\x6b\x75\x7b\x93\xa2\x73\x1f\x74\xa0\x6f\xac\x73\xac\x08\x7a\xa4\x7f\xa9\xa0\x1a\xac"
+"\xa3\xa4\xab\x1e\x0e\xad\xd5\x15\xb9\x5c\xd8\xda\x05\x75\xad\xa7\x83\xae\x1b\xaf\xa8\x94\xa0\xac\x1f\xd8\x3c\xba\xba\x3c\xd9\x05"
+"\xa0\xa8\x94\xa8\xb1\x1a\xb0\x83\xa5\x75\xae\x1e\xda\xd9\x5c\xb8\x3e\x3e\x05\x9f\x6b\x6f\x93\x66\x1b\x66\x6f\x83\x77\x6a\x1f\x3e"
+"\xd8\x5d\x5e\xd9\x3d\x05\x77\x6b\x82\x6e\x66\x1a\x66\x94\x6f\x9f\x6c\x1e\xf7\x23\xf7\x5e\x15\xc4\xb8\x5c\x4f\x51\x5c\x5c\x54\x52"
+"\x5e\xba\xc6\xc7\xb8\xb9\xc4\x1f\x0e\xfc\x0b\xf7\x3d\x83\x0a\x0e\xf7\x88\x80\x0a\xf7\x87\xa3\x15\xfb\x08\x58\x40\x36\x39\x1a\x50"
+"\xad\x64\xbe\xb4\xa9\xaa\xb5\xa6\x81\x9b\x6c\x9f\x1e\x75\x9a\x84\x95\x9a\x1a\xae\xb2\xb2\xda\xb5\x1e\x0e\xf7\x1d\x74\x0a\xf7\x25"
+"\xde\x15\x9e\xa0\x94\x94\x9c\x9e\x08\xd1\xd3\xaa\xb4\xa0\x1a\x91\x85\x91\x84\x83\x7d\x82\x78\x78\x1e\x7e\x7f\x81\x83\x73\x7a\xfb"
+"\x3e\xfb\x10\x18\x82\x07\xe0\x35\xc6\x4d\xa3\x70\x08\x83\x92\x8e\x89\x90\x1b\x94\x91\x92\x93\x9a\x81\xa6\x74\xbb\x1f\x0e\xfb\xd4"
+"\xf7\x31\x74\x0a\x0e\xfb\xd4\xf7\x30\x87\x1d\x0e\x2a\x9c\xf8\x2b\x15\xd6\x06\x2f\xfc\x2f\x05\xfb\x21\x6c\x7c\x71\x5f\x1b\x7f\x86"
+"\x8e\x91\x8f\x8d\x8e\x90\x91\x1f\x94\x95\x8e\x91\x96\x1a\xa7\x75\xa0\x6e\x6e\x77\x75\x6b\x5e\xb4\x6a\xc3\xbc\xbc\xa4\xb5\xac\x1e"
+"\xaa\xb2\xac\xd0\x98\xbf\xc1\x0a\x7d\x54\x89\x82\x7a\x1a\x61\xa5\x73\xb8\xc7\xb1\xaa\xf4\xd0\x1e\x75\x98\x05\x52\x63\x75\x75\x7c"
+"\x1b\x83\x83\x93\x93\x96\x93\xae\x98\xbc\x1f\x8c\x8f\xd4\xf7\xaf\x47\x86\x7d\x8a\x42\x87\x19\xfb\x0a\x06\xac\xf7\x0b\x97\xa8\xab"
+"\xb2\x08\xa2\x9e\xad\x99\xb0\x1b\x9c\x94\x86\x80\x87\x89\x87\x86\x84\x1f\x80\x7f\x87\x80\x7e\x1a\x6c\xa4\x73\xac\xac\xa3\xa3\xac"
+"\xc3\x51\xb2\x37\x4b\x4d\x73\x63\x65\x1e\x62\x5f\x76\x63\x67\x21\x08\x3f\x06\x0e\x2a\x9f\xf8\x2b\x15\xd5\x06\x2f\xfc\x26\x05\xfb"
+"\x24\x6a\x7c\x6c\x68\x1b\x7e\x82\x90\x92\x8e\x8d\x8f\x8f\x91\x1f\x92\x95\x8e\x93\x95\x1a\xa7\x78\x9d\x6f\x6a\x78\x77\x6a\x5b\xb2"
+"\x6a\xc5\xf2\xd5\xea\xf7\x53\xb9\x1e\xda\xf7\xda\x05\xf7\x27\x06\x3c\xfb\xd5\x05\x88\x7e\x89\x7e\x80\x1a\x69\xa9\x73\xb5\xc6\xaf"
+"\xa9\xf4\xcf\x1e\x77\x96\x05\x56\x68\x74\x75\x79\x1b\x82\x83\x93\x94\x8f\x8b\x8c\x8f\x9a\x1f\xf7\x2b\xf8\xee\x28\x7f\x05\x9a\x3d"
+"\x8b\x8b\x75\x1b\x4c\x50\x73\x64\x68\x1f\x63\x60\x78\x63\x69\xfb\x01\x08\x41\x06\xf7\xea\x16\xfb\x2b\x06\xa0\xe5\x9a\xb5\xa0\xae"
+"\x08\xb1\xa3\xaa\xa0\xac\x1b\x9d\x9d\x82\x81\x89\x8a\x8a\x86\x83\x1f\x7f\x7a\x88\x83\x7e\x1a\x7b\x91\x7f\x9a\x80\x1e\x0e\xf8\x71"
+"\xf7\xa1\x15\xfc\x88\x06\x7a\x30\x05\xf8\x88\x06\x0e\xf7\x47\xfb\x25\x15\x9b\xc4\x8f\x98\x9a\xca\xad\xf7\x20\xaf\xe7\xb2\xbc\x08"
+"\x78\xbb\x84\xac\xb0\x1a\x9d\x8d\x9a\x8f\xa2\x1e\xaf\x98\x88\x76\xb1\x1f\x7e\xa1\x97\x87\x97\x1b\xad\xa3\xa0\xaa\xab\x76\x9f\x6a"
+"\x7c\x81\x88\x7e\x72\x1f\x66\x79\x7d\x87\x6c\x8a\x93\xb0\x92\x9e\x99\x9d\x9a\x9e\x18\xa2\xa8\x94\x9f\xa1\x1a\xaa\x73\xa2\x6b\x68"
+"\x76\x74\x65\x7b\x8e\x7c\x92\x70\x1e\x92\x75\x8d\x7f\x80\x1a\x7a\x88\x7b\x85\x76\x1e\x6b\x7f\x8e\x9e\x64\x1f\x98\x70\x7e\x8f\x7b"
+"\x1b\x6b\x77\x77\x6c\x6c\x9f\x77\xaa\x9f\x99\x8f\x9a\xa6\x1f\xae\x9d\x90\x8c\xae\x8c\x82\x4e\x69\x4a\x5f\x64\x08\x90\x69\x8c\x77"
+"\x73\x1a\x5a\x85\x3b\x84\x60\x1e\x6f\xfb\x41\x05\x0e\xf7\xa0\xf8\x6b\x15\x74\x76\x91\x9a\x6b\x1f\x97\x73\x7f\x8f\x7d\x1b\x6c\x76"
+"\x77\x6e\x6e\x9d\x79\xad\x89\x1f\x9b\x8c\x90\x8c\xa5\x98\x08\x9e\xb1\x9d\x90\xab\x1b\x73\x2b\x7a\x69\x59\x5d\x08\x9f\x68\x8f\x79"
+"\x57\x1a\x69\x8a\x7f\x85\x73\x1e\x65\x8e\x82\x8e\x61\x9e\x08\x96\x72\x7d\x90\x7e\x1b\x6e\x74\x74\x6e\x70\xa1\x77\xa7\x96\x98\x8e"
+"\x95\xa2\x1f\xb5\x9b\x96\x8e\xb3\x8f\x7c\x5a\x85\x80\x6e\x61\x08\x76\x6e\x84\x7c\x79\x1a\x6d\xa2\x76\xaa\xae\x9e\xa0\xb2\x95\x89"
+"\x95\x87\xa0\x1e\x85\xa4\x89\x97\xa0\x1a\xa2\x8c\x97\x90\x9f\x1e\xb0\x97\x88\x79\xb3\x1f\x7f\xa3\x97\x87\x98\x1b\xab\xa0\x9e\xa9"
+"\xa9\x78\x9c\x6a\x8d\x1f\x7b\x86\x89\x7e\x71\x1f\x65\x79\x79\x86\x6b\x8a\xa3\xeb\x9c\xad\xbd\xb9\x08\x77\xaf\x87\x9b\xc2\x1a\xac"
+"\x8c\x97\x91\xa2\x1e\xb1\x88\x94\x89\xb5\x77\x08\x7f\xa4\x99\x87\x98\x1b\xa8\xa2\xa2\xa8\xa6\x75\x9f\x6f\x80\x7e\x87\x82\x74\x1f"
+"\x61\x7b\x80\x88\x63\x87\x9a\xbc\x91\x96\xa8\xb5\x08\xa0\xa8\x92\x9a\x9d\x1a\xa8\x74\xa1\x6c\x68\x78\x76\x65\x80\x8c\x81\x90\x77"
+"\x1e\x91\x71\x8d\x7f\x76\x1a\x75\x8a\x7f\x86\x76\x1e\x0e\xfc\x27\xf7\x12\xf8\x29\x2b\x0a\xf7\xde\xf9\x18\x15\xc2\x06\xfb\x6d\xfd"
+"\xd9\x05\xf7\x3f\x06\x92\xa4\x05\x50\x90\x7d\x90\x9c\x1a\x93\xb3\x8f\x9c\x8f\x9b\xf7\x3d\xf9\x1d\x18\x99\xc1\x8e\x8d\xdc\x92\x91"
+"\xa4\x18\xfb\xbb\x06\x32\x4a\x75\x5f\x62\x1f\x60\x5d\x6a\x2e\x3f\x1a\x5e\x9c\x64\xa9\x76\x1e\xa4\x7a\xa2\x85\xbd\x89\x36\xfb\xda"
+"\x18\x7b\x4d\x86\x7d\x83\x85\x80\x81\x7a\x87\x5a\x87\x84\x72\x18\xf7\x3e\x06\xad\xf8\x70\x15\x5d\x9f\x71\xb2\xbf\x1a\xc1\x9f\xd1"
+"\xa7\xb9\x1e\xa8\xba\xa5\x9c\xca\x9b\x08\x0e\xfb\xc3\xf7\x46\xf8\x8e\x15\x35\x49\x49\x36\x35\xcf\x47\xe0\xde\xd0\xce\xdd\xe2\x48"
+"\xd0\x35\x1f\x0e\xfb\xd4\x93\xfb\x4a\x40\x1d\xf7\x68\xfb\x4a\x44\x0a\x65\x3c\x60\x1e\xfb\x87\x73\x15\xf7\x08\xbe\xd6\xe1\xdc\x1a"
+"\xc6\x69\xb2\x58\x62\x6d\x6c\x61\x70\x95\x7b\xa9\x77\x1e\xa2\x7c\x92\x81\x7d\x1a\x67\x64\x64\x3c\x61\x1e\x0e\xf7\xd6\xf8\x05\x44"
+"\x0a\x64\x3c\x61\x1e\xfb\x87\x73\x40\x1d\xf7\xeb\x87\x1d\xfb\x25\x38\x15\x78\x76\x82\x81\x7a\x79\x08\x44\x42\x6d\x63\x76\x1a\x84"
+"\x91\x86\x92\x94\x98\x94\x9d\x9e\x1e\x98\x97\x95\x93\xa3\x9d\xf7\x3e\xf7\x10\x18\x94\x07\x30\xe7\x5e\xb9\x6b\xb0\x08\x93\x84\x88"
+"\x8d\x86\x1b\x82\x85\x84\x83\x7c\x94\x71\xa3\x5a\x1f\x0e\xf7\xef\xf7\x07\xf7\x1b\x15\x28\x0a\xf7\xe0\x16\x28\x0a\xf7\xe0\x16\x28"
+"\x0a\x0e\xf7\xef\xe1\x6e\x15\xbb\x06\xf8\x4a\xf9\x73\x05\x5b\x06\x4b\x58\x5a\x70\x49\x1b\x66\x79\x92\xa2\x6f\x1f\xa0\x72\x77\x93"
+"\x71\x1b\x20\x31\x28\xfb\x09\x3c\xbf\x52\xd4\xb0\xb0\x9b\xa7\xa7\x1f\xb4\xb5\xa8\xd8\xd0\x1a\x98\x8a\x96\x89\x9e\x1e\x81\xa3\x9a"
+"\x88\xa0\x1b\xb4\xab\x97\xa9\xb3\x1f\xfb\xa0\x93\x15\x92\x8f\x88\x82\x98\x1f\x97\x83\x8e\x89\x96\x88\x95\x88\x8f\x89\x8c\x88\x08"
+"\x8e\x84\x8f\x71\x7e\x1a\x25\x4d\x26\x4c\x6a\x7a\xa3\xb7\xe4\xc9\xf7\x14\xb4\x88\x1e\xf7\xd7\xfb\xc1\x15\x25\x2e\x28\xfb\x02\x34"
+"\xbd\x54\xd9\xb1\xaf\x9a\xa6\xa4\x1f\xb8\xba\xa7\xd4\xd1\x1a\xd5\x64\xb8\x49\x1e\xa0\x6a\x15\xad\xa4\x68\x5e\x57\x76\x48\x6e\x61"
+"\x1f\x69\x74\x73\x7c\x6d\x1b\x6a\x7b\xa1\xb9\xbf\xa5\xdd\xab\xb9\x1f\xa8\x9f\x9e\x98\x9f\x1b\xf7\xe9\xac\x15\x25\x2e\x27\xfb\x01"
+"\x35\xbd\x53\xd8\xb2\xae\x9a\xa6\xa5\x1f\xb8\xba\xa7\xd4\xd1\x1a\xd5\x64\xb8\x49\x1e\xa0\x6a\x15\xad\xa4\x68\x5e\x57\x76\x48\x6e"
+"\x61\x1f\x6a\x74\x73\x7b\x6d\x1b\x6a\x7b\xa1\xb9\xbf\xa6\xdd\xaa\xb9\x1f\xa8\x9f\x9e\x98\x9f\x1b\x0e\xf7\xc4\xf7\xa3\x15\x6f\x45"
+"\x7b\x74\x65\x72\x49\x60\x18\x31\x51\x67\x59\x4c\x1a\x35\xd1\x51\xf5\xf0\xd5\xc1\xd6\xb1\x70\xa8\x69\x69\x70\x71\x69\x7c\x90\x7e"
+"\x98\x7a\x1e\x93\x81\x8e\x85\x85\x1a\x78\x6d\x78\x6b\x60\x71\xa9\xbd\xba\x9e\xb9\xb8\xc2\x1e\xb4\xbe\xb9\xc5\x9f\xb9\x90\xc2\x19"
+"\x9a\xf7\x78\x15\x28\x0a\x0e\xfb\xd4\xf7\xbd\xf8\x98\x37\x1d\xfb\xd4\xf7\x50\xf8\x98\x29\x1d\xfb\xd4\xf7\xd0\xf8\x98\x23\x1d\xfb"
+"\xd4\xf8\x02\xf9\x23\x75\x0a\xfb\xd4\xf8\x1d\xf9\x03\x25\x0a\xfb\xd4\xf7\xf0\xf9\x3a\x15\x49\x6b\x69\x57\x0a\x7e\x06\x26\xb7\x5b"
+"\xe8\xec\xcb\xc5\xf3\x9d\x1e\x0e\xfb\xd4\xf7\x77\xf9\x23\x2a\x1d\xfb\xd4\xf7\x0b\xf9\x23\x24\x0a\xfb\xd4\xf7\x7e\xf9\x86\x30\x0a"
+"\xfb\xd4\x72\x2f\x15\x98\x7f\x05\x8e\x97\x92\x8c\x96\x49\x1d\xac\xc5\x1d\xb8\xce\x05\x5f\x06\x0e\xfb\xd4\xf7\x0a\xf8\x98\x15\x2b"
+"\x1d\x2d\x1d\xf7\x82\x16\x90\x0a\xfb\xd4\xa7\xab\x15\x87\x85\x89\x89\x83\x81\x08\x62\x59\x7e\x70\x6e\x31\x0a\xb5\x9a\x8e\x9d\x94"
+"\xaa\x1f\x8e\x95\x8c\x8e\x8c\x92\x08\x0e\xfb\xd4\xf8\x2f\xf9\x46\x20\x0a\xf7\xef\xa9\x0a\xf7\xb7\x99\x0a\x61\x7b\x96\xa5\x91\x8d"
+"\x95\x8e\x97\x1f\xca\xf7\x85\x05\xf7\x02\x84\xa2\x7c\x4b\x1a\x83\x8b\x85\x8a\x7d\x71\x1d\x0e\xfc\x17\xf7\xcd\xf8\x78\x15\x88\x88"
+"\x8b\x8b\x89\x88\x08\x74\x78\x7c\x7e\x84\x1b\x88\x89\x8e\x91\x9b\x91\xa4\x9b\xbb\x1f\xb9\xf7\x20\x3f\x87\x80\x68\x05\xaa\x84\x7d"
+"\x98\x71\x1b\x38\x2a\xfb\x05\x2b\x5e\xa7\x6c\xb5\xb7\xa8\xa2\xcc\xb0\x1f\x81\x69\x8a\x85\x80\x1a\x77\x9f\x79\xa3\xa9\xa8\xa2\xc0"
+"\xb1\x1e\xfb\x14\xf7\x4b\x15\x97\x8a\x93\x7f\x7c\x1a\x6d\x79\x4f\x76\x65\x1e\x67\x77\x75\x76\x78\x1b\x7e\x80\x98\x9a\xcd\xd0\xf7"
+"\x0f\xae\x87\x1f\x0e\x61\x86\x0a\xcd\xf7\x88\xf7\x28\xde\xa0\xd1\xfb\x2a\x3a\xb7\xf7\x36\x9b\xc2\x9e\x98\xcd\x8f\x19\xa4\xfb\xd1"
+"\x72\x07\x9c\x0a\x54\xfb\x5d\x27\x56\x75\x45\xf3\xc3\x59\xfb\x49\x7b\x57\x7d\x7e\x59\x84\x19\x72\xf8\xbd\x07\x0e\xd0\xe2\x1d\x77"
+"\x8e\x6d\x1b\xfb\x6c\xfb\x62\xfb\x7b\xfb\x86\x67\x0a\x75\x90\x75\xb3\x0a\x55\x1b\x71\x78\x91\x9b\x77\x1f\x0e\xf7\xb7\xfa\x46\xf9"
+"\x31\x15\xfb\xe3\x06\x7b\x6d\x8d\x8e\x5e\x1f\x8e\x6c\x82\x8b\x7b\x1b\xfb\x00\x49\x77\x54\x42\x1f\xfb\x0a\x32\x3f\xfb\x28\xfb\x21"
+"\x1a\x30\xaf\x46\xce\x64\x1e\xb3\x73\xca\x7f\xcc\x8e\xf7\x2e\x92\x18\xa1\x06\x90\x94\x8b\x8c\x95\x1f\xa7\x06\xf7\xbc\x06\xc7\xf7"
+"\x56\x70\x90\x05\xfb\x0d\x46\x44\x5d\xfb\x09\x1b\x57\x76\x95\xa3\x91\x8d\x95\x8d\x94\x1f\xcb\xf7\x89\xd6\x84\x9f\x86\x9a\x7e\x19"
+"\x98\x7f\x92\x7a\x78\x1a\x82\x8a\x7c\x89\x7a\x1e\x88\x8b\x84\x8a\x82\x1e\xa6\x86\xd3\xf7\xa4\x70\x8e\x6b\x3e\x61\x70\x31\x8c\x19"
+"\x87\x06\x76\x06\xc8\xf7\x70\x05\xb4\x96\x92\x91\xad\x1b\xbf\xbe\x7f\x79\xa3\x1f\xa4\x77\x98\x6e\x66\x1a\x7c\x8b\x83\x8a\x7d\x1e"
+"\xa4\x85\x05\xfc\x90\xfb\xf7\x15\x44\x77\x6e\x70\x51\x1b\x42\x5b\xc0\xdb\xf7\x0a\xc1\xf7\x46\xca\xe6\x1f\xcf\xbb\xbd\xab\xc7\x1b"
+"\xba\xa5\x75\x63\x7b\x87\x71\x83\x70\x1f\x0e\xfb\xf5\xf7\x87\xf9\x41\x15\x2b\x30\x2b\x27\x57\xb8\x66\xc8\xe7\xe3\xe3\xee\x90\x1f"
+"\xc4\x8e\x60\xb4\x4b\x1b\x89\x77\x15\x9c\x8a\x94\x7d\x8a\x74\x89\x60\x7b\x4f\x78\x62\x08\x60\x76\x78\x77\x73\x1b\x79\x81\x98\xa1"
+"\xb7\xa0\xd9\xa2\xb3\x1f\x9d\xab\xa1\x9c\x9f\x8a\x08\x0e\xd0\xf7\xf4\xf8\x20\x15\xbd\x79\x77\x9b\x5f\x1b\xfb\x12\xfb\x29\xfb\x55"
+"\xfb\x37\x47\xbb\x59\xcd\xce\x9d\x1d\x62\x72\xab\xc0\x9a\x8c\x96\x8f\x9f\x1f\xb2\x94\x05\xf7\x25\xac\xde\xce\xdd\x1a\xc2\x66\xab"
+"\x4d\x59\x6f\x7c\x59\x60\x1e\x9f\xcc\x24\x86\x05\x36\x68\x15\xa7\x9f\x73\x6b\x55\x6b\x23\x64\x47\x1f\x55\x6e\x6d\x72\x69\x1b\x6d"
+"\x77\xa5\xb3\x8d\x1f\x8e\xc5\xa5\xde\xb1\xce\x08\xc6\xac\xab\xa7\xab\x1b\xf7\x19\xfb\x50\x15\xf7\x1a\xb2\xb6\xcb\xbd\x1b\xa2\x95"
+"\x7f\x6f\x51\x6d\x5b\x50\x66\x1f\x6c\x77\x75\x83\x6f\x87\x08\x0e\xfc\x0b\x2c\x1d\x0e\xfc\x0b\xf7\x6c\xf7\x21\x73\x0a\xfb\x42\x7e"
+"\x54\xb4\x0a\x5e\x0a\x0e\xd0\xf8\xe3\xf7\x1f\x15\x46\x5e\x70\x77\x5d\x1b\x60\x73\xa6\xbe\x9b\x8d\x98\x91\xa6\x1f\xf2\xa2\xa4\x94"
+"\xb8\xa8\x08\xc4\xb0\xa9\xb7\xb9\x1a\xc3\x60\xad\x46\x57\x69\x7d\x5b\x4f\x1e\xb8\x6b\x6c\x9c\x56\x1b\x2a\x2d\x4e\x27\x51\x1f\x6e"
+"\x57\x7b\x55\x58\x1a\x2e\xcc\x4b\xea\xc6\xb9\x9d\xb2\xb6\x1e\x62\xb2\xab\x7b\xb9\x1b\xb8\xb5\x9a\xa9\xad\x1f\xa3\x9f\x9c\xa2\xa5"
+"\xbc\x08\xfb\x5a\xe9\x15\xbf\xf7\x23\x94\x9e\xaa\xaf\x08\x95\x94\x98\x91\x99\x1b\xa2\x99\x7c\x72\x72\x81\x6b\x7c\x73\x1f\x6e\x5c"
+"\x68\x73\x3f\x75\x08\xfb\x1f\xf7\x6b\x15\xaf\x9e\x72\x5a\x57\x69\xfb\x1a\x6d\x4c\x1f\x4a\x6c\x6e\x6e\x67\x1b\x69\x78\xa8\xbf\xb6"
+"\x97\xc4\xa2\xcf\x1f\xf7\x0c\xb3\xae\xbb\xbb\x1b\x0e\xf7\x85\xf8\x14\x15\xa7\x87\x97\x88\x95\x83\x08\x9a\x80\x94\x72\x6d\x1a\x4b"
+"\x76\x25\x73\x57\x1e\x64\x79\x77\x78\x74\x1b\x7b\x78\x93\x95\x83\x1f\x87\x90\x77\x68\x05\x7b\xa2\x9f\x85\xa9\x1b\xf7\x08\xf3\xf7"
+"\x10\xf7\x1e\xb6\x7c\xae\x6f\xa3\x1f\x73\xa0\x74\x95\x55\x96\xd9\xa8\xa8\x9b\xad\xab\x08\xa5\xa4\x9a\xaf\xb0\x1a\xd7\x4e\xc2\x36"
+"\xfb\x0e\x35\x23\xfb\x5a\x60\x1e\x2f\xfc\x3b\x7d\x4c\x7a\x5b\x7b\x76\x19\x7e\x81\x81\x87\x78\x1b\x7f\x87\x8e\x93\x90\x8c\x8d\x90"
+"\x90\x1f\x94\x94\x8d\x92\x9a\x1a\xa7\x79\x9c\x6d\x6c\x77\x76\x6b\x5d\xb2\x6c\xc5\xf4\xd7\xf0\xf7\x5d\xb8\x1e\xe6\xf8\x2b\x05\xf7"
+"\x09\xa5\xa9\xbc\xb9\x1b\xaa\x9a\x78\x63\xfb\x00\x61\x33\x57\x1f\x87\x06\x7b\x8c\x05\x0e\xfb\xf5\xa9\xf7\xa6\x55\x1d\x90\x1b\x99"
+"\x93\x84\x7d\x8e\x1f\x8c\x86\x67\xfb\x0c\x72\x42\x85\x78\x85\x79\x8a\x86\x08\x49\x7a\x7c\x7d\x53\x1b\x0e\x5c\xf8\x67\xf7\x00\x15"
+"\xe3\xf7\xb7\xfc\x8c\x33\xf8\x34\x06\x0e\x3e\xf8\xb6\xf8\x55\x15\xfb\x1b\x06\x59\xfb\x38\x05\xfb\x01\x69\x42\x21\x60\x1b\x7f\x84"
+"\x94\x9b\x98\x8d\x9a\x8f\x99\x1f\xe7\xf7\xcc\x05\xfb\x1b\x06\xfb\x01\xfc\x0b\x79\x5a\x85\x7b\x78\x5e\x19\x73\x51\x85\x74\x6e\x1a"
+"\x64\x9d\x75\xac\xa9\xa7\x9e\xa9\x98\x1e\x91\x98\x8c\x94\xa6\x1a\xb7\x93\xb9\x99\xb6\x1e\x78\xa4\x98\x86\xa3\x1b\xba\xaa\xa7\xe5"
+"\xbf\x1f\x82\x66\x89\x7f\x78\x1a\x67\xa6\x70\xaf\xc4\xad\xa6\xf3\xd7\x1e\x75\x9b\x05\x63\x72\x75\x75\x7c\x1b\x84\x86\x91\x93\x93"
+"\x8d\x94\x8e\x95\x1f\x0e\xf7\xef\xf7\x8a\xf9\x1b\x15\xbc\x06\xad\xa1\x76\x5e\x95\x1f\xa0\xe3\xfb\xf2\x33\xa0\x06\xb7\x95\xa0\xa1"
+"\xae\x1b\xbc\xfb\xc9\x06\x6a\x89\x84\x85\x87\x1e\x83\x87\x88\x8a\x6c\xba\x1d\xf8\x3c\x40\x15\x96\x06\xf7\x2d\xf7\xc8\x05\xfb\x7d"
+"\x07\x69\x89\x85\x85\x87\x1e\x83\x87\x89\x8a\x6b\xba\x1d\xf7\x95\x07\xb1\x99\x98\xb5\x8e\x1e\x9f\xfb\x01\x07\xfb\x31\xfb\xc2\xfb"
+"\x2a\xf7\xc2\x05\xfb\x13\x77\x06\xaa\x89\xa4\x79\x99\x6b\x08\xfb\x88\x07\x8a\x57\x83\x80\x60\x87\x08\x76\xf7\x17\xa0\x07\x60\x8f"
+"\x83\x96\x8a\xbf\x08\xf7\x6c\x07\x0e\xd0\x5c\x0a\xec\xf8\xfa\xf9\x3f\x15\x51\x06\xfc\x47\xfd\x4d\x05\xc5\x06\xf8\x9e\xf7\x14\x96"
+"\x1d\xaf\xab\x9f\x97\xa9\x1b\xb0\xa1\x72\x62\x6b\x78\x6a\x58\x53\x1f\x6e\x6b\x78\x79\x27\x2c\x08\x7b\xf7\x82\x07\xfd\x27\xf7\xa6"
+"\x55\x1d\x8f\x1b\x99\x97\x81\x80\x80\x6c\x24\x6e\x36\x1f\x7e\x62\x05\x49\x7a\x7c\x7d\x53\x1b\x0e\x38\xf7\x85\xf7\xfb\x15\xfb\x64"
+"\x33\xf7\x64\xfb\x23\xe3\xf7\x23\xf7\x64\xe3\xfb\x64\xf7\x65\x33\x06\xfb\x64\xfc\xcc\x15\xf8\x8c\xe3\xfc\x8c\x06\x0e\x61\xf7\x05"
+"\x8f\x1d\x8e\x9a\x92\xad\x1e\x99\xcb\x05\x87\xaf\x9d\xd2\x1d\x5b\x06\x98\xb1\x9f\xc4\x93\x92\xc0\x93\x19\x8c\xa4\x05\xfb\xba\x06"
+"\xf7\x48\xfb\x67\x15\x92\xa4\x8b\x8b\x8f\x90\x08\x95\x95\x95\x8f\x9e\x1b\xc1\xa9\xbc\x1d\x0e\xec\xf9\x44\x8a\x1d\xfb\x4f\xf7\xb4"
+"\x55\x1d\x8f\x1b\x99\x97\x81\x80\x80\x6c\x24\x6e\x36\x1f\x7e\x62\x05\x49\x7a\x7c\x7d\x53\x1b\x0e\x38\xf8\xad\xf7\x65\x15\xe3\xfc"
+"\x8c\x33\x07\xf7\x91\x31\x15\x28\x0a\xf8\x34\x04\x60\x6b\xc7\x0a\xb4\x6a\xac\x63\x1f\x0e\xfc\x45\xec\x78\x15\xe2\xf7\xa6\x34\x06"
+"\xf7\x2f\x04\xe2\xf7\xa6\x34\x06\x0e\xfb\x91\xf7\x76\xf9\x3f\x15\x3b\x4c\x4c\x3b\x3c\xca\x4b\xd9\xdd\xca\xc9\xdc\xdb\x4c\xca\x3b"
+"\x1f\x67\x04\xc2\xba\x5a\x51\x50\x5d\x5b\x52\x54\x5d\xbc\xc5\xc6\xb9\xbb\xc3\x1f\x0e\xf7\x15\xfb\x46\x15\x59\x8c\x7c\x92\xa3\x1a"
+"\x98\x92\xab\x9e\xd0\x1e\x92\xa3\x8b\x8d\x8f\x9a\x08\x79\xae\x97\x87\xa0\x1b\xf7\x1c\xf7\x21\xf7\x48\xf7\x42\xd5\x61\xba\x4a\x52"
+"\x60\x6d\x3f\x58\x1f\x88\x8e\xea\xf7\xe8\x45\x7e\x5a\x83\x34\x82\x19\x70\x07\xbc\x99\x84\x74\x84\x87\x78\x7e\x5a\x1f\xfb\x36\xfd"
+"\x0a\x79\x41\x80\x7f\x5a\x8c\x19\x70\xf7\x8d\x07\xf7\x2d\xf8\xe8\x15\xa5\x89\x9a\x75\x89\x6a\x87\x4a\x6b\x27\x67\x4a\x08\x55\x6c"
+"\x6b\x6f\x69\x1b\x75\x7a\x9b\x9f\x9b\x93\xad\xa5\xe2\x1f\xa3\xdc\x96\xa8\x9b\xa3\xa4\xb2\xac\xa4\xa5\x89\x08\x0e\xec\xf9\x49\x8a"
+"\x1d\x28\xf8\x83\x15\xcf\x88\xab\x6d\x50\x1a\x58\xa6\x1d\x7e\xa2\x64\xa5\x1f\x92\x8f\x05\xc5\xac\x99\x9c\xb0\x1a\xb9\x60\xae\x53"
+"\x56\x63\x95\x0a\xfb\xf5\xf7\xb7\xf8\x18\x96\x1d\xae\xaa\xa0\x98\xa9\x1b\xb0\xa1\x72\x62\x6b\x78\x6a\x58\x53\x1f\x6e\x6b\x78\x78"
+"\x27\x2d\x08\x7b\xf7\x82\x07\x0e\xe9\xf7\x66\xf8\x93\x15\xaa\x87\x8c\x8b\x93\x87\x08\x91\x87\x8c\x86\x6d\x1a\xfb\x8d\x07\x6d\x89"
+"\x84\x86\x88\x1e\x83\x87\x8a\x8b\x6c\x87\x08\x7b\xf7\x3a\x9b\x07\x6d\x8e\x89\x8c\x83\x8f\x08\x85\x8f\x89\x91\xa9\x1a\xf1\xb7\x07"
+"\xa2\x68\x96\x78\x9d\x6c\xaf\x4b\x99\x7b\x9d\x8a\x08\xd1\x96\x06\x77\x9b\x74\xa5\x6c\xb5\x50\xdd\x18\xc1\x9f\xa6\xae\xbc\x1a\xc6"
+"\x5e\xaf\x43\x1e\xfb\x4b\x06\xf7\x0a\x76\x15\xb3\x06\xb9\xa2\x71\x57\x51\x72\x6a\x60\x1f\x62\x06\xb9\xf7\xf0\x81\x1d\x5c\xf8\xbf"
+"\xf7\x65\x15\xe3\xfc\x8c\x33\x07\x0e\xf7\xaf\xf8\xd2\x15\xb2\x59\x9e\x5d\x8f\x55\x89\x87\x18\xa9\x78\x76\x97\x6c\x1b\xfb\x1e\xfb"
+"\x1d\xfb\x37\xfb\x39\x37\xcf\x4c\xe5\xf7\x2f\xf7\x17\xf7\x44\xf7\x65\xe6\x70\xcd\x48\xda\x1f\xf6\xc3\x69\xab\x20\x52\x60\xae\x63"
+"\x9d\x5a\x92\x19\x5f\x70\xb3\x84\xaf\x76\xb3\x66\x19\xfb\x0e\x4b\xac\x6c\x05\xf7\x04\x3c\x15\xa7\xf4\x1d\x4c\x6e\x6d\x6f\x68\x1b"
+"\x6a\x7b\xa2\xba\xd5\xb0\xf7\x20\xaf\xcc\x1f\xb9\xa5\xa7\xa1\xac\x1b\x0e\x38\xf7\x73\xf7\x91\x15\xfb\x43\xfb\x43\xc9\x4d\xf7\x43"
+"\xf7\x44\xf7\x43\xfb\x44\xc9\xc9\xfb\x44\xf7\x43\xf7\x44\xf7\x43\x4d\xc9\xfb\x43\xfb\x44\xfb\x43\xf7\x44\x4d\x4d\x05\x0e\xfb\xf5"
+"\xf7\x02\xf8\x75\x15\xce\x88\xac\x6d\x51\x1a\x57\xa6\x1d\x7d\xa2\x65\xa5\x1f\x92\x8f\x05\xc5\xad\x99\x9b\xb0\x1a\xb9\x60\xae\x53"
+"\x55\x64\x95\x0a\xe9\xf8\xa2\xf7\x8e\x15\x4e\x6f\x66\x71\x51\x1b\x33\x59\xcb\xf7\x07\xf7\x04\xbc\xcb\xe1\xc8\xaf\x6e\x4e\x98\x1f"
+"\x9c\xd2\x06\x94\x84\x91\x7c\x91\x1e\x98\x67\x70\x90\x66\x1b\xfb\x1c\x32\x3b\xfb\x0f\xfb\x0e\xdd\x42\xf7\x1b\xac\xc3\x96\x98\xa8"
+"\x1f\x94\x8e\x8c\x8c\x8d\x95\x9c\xd3\x18\xfb\x3e\xf8\x47\x81\x1d\x99\x27\x1d\xa7\xf8\x6f\x8d\x0a\x99\x27\x1d\xf7\x33\xf8\x6f\x15"
+"\xbe\x06\x35\xf7\x42\x05\x3a\x2a\x0a\x99\x27\x1d\x5b\xf8\xfa\x24\x0a\x99\x27\x1d\xf7\x0f\xf8\x6f\x15\xfb\x03\xf7\x27\x05\xa1\x7b"
+"\x76\x58\x1d\x99\x27\x1d\xca\xf9\x51\x30\x0a\x99\x27\x1d\xf7\x56\xf8\xfa\x8b\x1d\x99\xf7\x85\x7f\x15\x87\xa1\x9f\x89\xa0\x1b\xd2"
+"\xcd\xa1\xb6\xc4\x1f\xa8\xa1\x9c\x9d\xab\xb7\x6d\xa1\x18\x59\x50\x6f\x74\x61\x79\x08\x6e\x0a\xfb\x0b\xc9\x33\xf7\x01\x67\x1f\x4e"
+"\x31\x3e\x0a\x92\x7b\x0a\x99\x24\x1d\xfb\x2d\xf9\x67\x8c\x0a\x99\x24\x1d\x73\xf9\x67\x23\x1d\x99\x24\x1d\xfb\x77\xf9\xf2\x15\x68"
+"\x6e\x6e\x66\x36\x1d\x99\x24\x1d\x58\xf9\x67\x37\x1d\xfb\x9c\x27\x0a\x5b\xf9\x6a\xa8\x1d\xfb\x9c\x27\x0a\xf4\xf9\x67\x23\x1d\xfb"
+"\x9c\x27\x0a\x2a\xf9\xf2\x24\x0a\xfb\x9c\x27\x0a\xe9\xf9\x67\x37\x1d\xd0\x2e\x0a\xd9\xf9\x26\x8b\x1d\xd0\x26\x1d\x7e\xd3\x8d\x0a"
+"\xd0\x26\x1d\xf7\x0f\xd3\x23\x1d\xd0\x26\x1d\x2b\xf7\x67\x24\x0a\xd0\x26\x1d\xeb\xd3\x15\xfb\x03\xf7\x27\x05\xa1\x7b\x76\x97\x78"
+"\x1b\x73\x76\x76\x73\x7c\x97\x7a\xa1\x7c\x1f\xf7\x19\x32\x05\x0e\xd0\x26\x1d\xf7\x2f\xf7\x67\x7a\x0a\x81\xa5\x97\x88\x9d\x1b\xc7"
+"\xae\xae\xdf\xa2\x1f\x0e\x2a\x36\x0a\xf8\x79\xf9\x47\x20\x0a\xd0\x21\x0a\xfb\xe3\xda\x15\x76\x0a\xd0\x21\x0a\xfb\x41\xda\x15\xbe"
+"\x06\x35\xf7\x42\x05\x3a\x2a\x0a\xd0\x21\x0a\xfc\x1a\xf7\x6e\x24\x0a\xd0\x21\x0a\xfb\x55\xda\x15\xfb\x03\xf7\x27\x05\xa1\x7a\x77"
+"\x58\x1d\x61\x2d\x0a\xf7\x60\xf7\x22\x29\x0a\x61\x2d\x0a\xf7\x2b\xf7\xad\x15\x68\x6e\x6d\x67\x36\x1d\x61\x3f\x1d\xc3\xfa\x15\xed"
+"\x1d\xe2\xfb\x42\x05\xde\x06\x0e\x25\x1d\x91\xeb\x29\x1d\x25\x1d\xf7\x1a\xeb\x15\xbe\x06\x35\xf7\x42\x05\x39\x06\xfb\x33\xfb\x42"
+"\x05\xc4\x06\xf7\x17\xea\x05\x0e\x25\x1d\x42\xf7\x7f\x92\x1d\x25\x1d\xf7\x07\xeb\xa2\x0a\x7a\xa1\x7d\x1f\xf7\x18\x32\x05\x0e\x25"
+"\x1d\xbf\xf7\xe2\x30\x0a\x25\x1d\xf7\x4c\xf7\x7f\x15\x6c\x7c\x7e\x80\x74\x1b\x80\x7b\x90\x96\x70\x1f\x9d\x62\x6b\x93\x73\x5b\x1d"
+"\x80\xa6\x96\x89\x9e\x1b\xc7\xad\xae\xdf\xa2\x1f\x0e\xfb\x65\xf7\x16\x7f\x15\x8a\x92\x90\x8b\x91\x1b\xb7\xb7\x9b\xa8\xac\x1f\xa5"
+"\xa1\x9b\x9e\xae\xbd\x6f\x9d\x18\x48\x5b\x6c\x74\x60\x1b\x5f\x6e\xaf\xc0\xca\xa5\xe5\xaf\xcc\x1f\xba\xa6\xa7\xa3\xaa\x1b\x97\x95"
+"\x84\x81\x87\x89\x85\x85\x82\x1f\x82\x7b\x87\x80\xbf\x1d\xfb\x38\xfb\x34\x47\xae\x57\xc8\x75\x1e\x4f\x33\x98\x7f\x05\x8e\x97\x92"
+"\x8c\x96\x45\x1d\xfb\x65\x22\x0a\xeb\xf7\xc2\x29\x1d\xfb\x65\x22\x0a\xf7\x74\xf7\xc2\x23\x1d\xfb\x65\x22\x0a\x9c\xf8\x4d\x24\x0a"
+"\xfb\x65\x22\x0a\xf7\x6f\xf7\xc2\xaa\x1d\xfc\x0b\x70\x0a\x3e\xf8\x19\x29\x1d\xfc\x0b\xf7\xa6\xf8\x98\x48\x0a\xa9\xfc\x6a\xb4\x1d"
+"\x51\x7e\x4c\x7f\x0a\x0e\xfc\x0b\x70\x0a\xfb\x30\xf8\xa4\x24\x0a\xfc\x0b\x2c\x1d\xa1\xf8\x19\x37\x1d\x2a\x30\x1d\x6d\xf8\xa9\x75"
+"\x0a\x23\x0a\x88\xde\x15\x2b\x1d\x38\x1d\x23\x0a\xf7\x11\xde\x15\xbe\x06\x35\xf7\x42\x05\x3a\x2a\x0a\x23\x0a\x34\xf7\x72\x24\x0a"
+"\x23\x0a\xf5\xde\x15\xfb\x03\xf7\x27\x05\xa1\x7a\x77\x97\x78\x1b\x73\x76\x76\x73\x7b\x97\x7a\xa1\x7d\x1f\xf7\x19\x32\x05\x0e\x23"
+"\x0a\xf7\x43\xf7\x72\x8e\x1d\x9e\x1b\xc7\xad\xae\xdf\xa2\x1f\x0e\xfb\x9c\x3d\x1d\xf7\x15\xf8\x12\x20\x0a\x2a\x26\x0a\xfb\x54\xf8"
+"\x20\x29\x0a\x2a\x26\x0a\x47\xf8\x20\x23\x1d\x2a\x26\x0a\xfb\xa8\xf8\xab\x92\x1d\x2a\x26\x0a\x38\xf8\x20\xaa\x1d\xfb\x65\x31\x1d"
+"\xf7\x7a\xd9\x29\x0a\xfb\x65\x31\x1d\xf7\x26\xf7\x6d\x24\x0a\xfb\x9c\x34\x1d\xf8\x04\xf7\x85\x20\x0a\xfb\xae\xf7\xbf\xf7\xfa\x15"
+"\x66\x73\x82\x82\x83\x1b\x88\x89\x8e\x8f\x90\x8d\x91\x98\xb3\x1f\xa1\xca\x05\x94\xa9\x91\xa4\x9a\x1a\xa9\x7a\x9c\x6e\x61\x71\x76"
+"\x3d\x55\x1e\xac\xef\x5e\x81\x5d\x85\x67\x8a\x19\x74\x93\x07\x9d\x91\x88\x83\x83\x86\x79\x65\xfb\x1b\x1f\x7f\x5e\x85\x74\x05\xd9"
+"\x06\xa1\xdb\x94\xa3\x9f\xb3\x08\xc1\xa5\xa7\xab\x9e\x1b\x90\x91\x86\x87\x88\x8a\x87\x8a\x87\x1f\x6a\x29\x05\x81\x6c\x84\x6b\x7c"
+"\x1a\x73\x9c\x7c\xa5\xb1\xa4\xa0\xc7\xaf\x1e\x0e\x75\xf8\xe7\xf8\x55\x15\x2f\x06\x46\x1d\xa9\xa0\xa1\xaa\xbc\x65\xaa\x4e\x57\x5a"
+"\x76\x63\x68\x1e\x61\x5d\x77\x62\x6f\x26\x08\x42\x06\x82\x61\x05\xd4\x06\x36\xfc\x0e\x8b\x8b\x88\x7d\x08\xfb\x28\x6c\x78\x62\x63"
+"\x1b\x81\x83\x90\x91\x8d\x8c\x8e\x8e\x8f\x1f\x93\x97\x8f\x96\x96\x1a\xa3\x73\xa3\x71\x70\x73\x72\x6e\x5b\xb2\x6c\xc7\xb5\xb0\x99"
+"\xa8\xaa\x1e\xb2\xaf\xa7\xc0\xab\xf2\xa4\xda\x96\xb9\xc1\xf7\x90\x08\xe5\x06\xfb\x74\xb5\x15\x2f\x06\x46\x1d\xa9\xa0\xa1\xaa\xbc"
+"\x65\xaa\x4e\x57\x5a\x75\x64\x68\x1e\x61\x5d\x78\x62\x6e\x26\x08\x42\x06\x82\x61\x05\xd4\x06\x5b\xfb\x66\x68\xfb\x32\x86\x73\x42"
+"\x1d\xb5\xb0\x99\xa8\xaa\x1e\xb3\xaf\xa6\xc0\xac\xf2\xa3\xda\x96\xb9\xc1\xf7\x90\x08\xe5\x06\x0e\xf7\x69\xf8\x67\xf9\x00\x15\xba"
+"\x64\xaa\x4f\x57\x5a\x75\x64\x68\x1e\x61\x5d\x78\x62\x6e\x26\x08\x42\x06\x82\x61\x05\xd4\x06\x56\xfb\x7f\x6e\xfb\x12\x85\x6c\x42"
+"\x1d\xc9\xbe\xaa\xc9\xb1\x1e\x89\x85\x8b\x87\x85\x1a\x5f\xb4\x6a\xc3\xbc\xbc\xa4\xb5\xac\x1e\xaa\xb2\xac\xd1\x98\xbe\xc1\x0a\x7e"
+"\x58\x88\x7d\x7a\x1a\x62\xa6\x73\xb7\xc7\xb1\xaa\xf4\xd0\x1e\x75\x98\x05\x53\x64\x74\x74\x7b\x1b\x84\x83\x93\x93\x96\x93\xae\x98"
+"\xbc\x1f\x8c\x8f\xd4\xf7\xaf\x49\x86\x7b\x8a\x42\x87\x19\xfb\x0a\x06\xac\xf7\x0b\x97\xa8\xab\xb2\x08\xa2\x9e\xad\x99\xb0\x1b\x9c"
+"\x94\x86\x80\x86\x8a\x88\x85\x84\x1f\x80\x7f\x87\x80\x7e\x1a\x6c\xa4\x73\xac\xac\xa3\xa3\xac\xc3\x51\xb2\x37\x3d\x49\x6b\x51\x61"
+"\x1e\xfb\x66\xfb\x38\x15\x46\x1d\x94\x92\x8d\x8f\x93\x1e\x7c\x71\x82\x73\x72\x43\x08\x80\x61\x15\x2f\xfc\x2f\x05\xfb\x20\x6c\x7c"
+"\x70\x5f\x1b\x7f\x86\x8e\x91\x8f\x8d\x8e\x90\x91\x1f\x94\x95\x8e\x91\x96\x1a\xa7\x75\xa0\x6e\x7f\x80\x87\x83\x82\x1e\xba\xf7\x01"
+"\xa7\xf0\xc5\xf7\xae\x08\x0e\xf7\x67\xce\xf8\x55\x15\x82\x61\x05\xd4\x06\x56\xfb\x7f\x6e\xfb\x12\x85\x6c\x42\x1d\xcd\xb3\xa5\xd3"
+"\xbb\x1e\x89\x84\x8b\x87\x85\x1a\x5b\xb2\x6a\xc5\xf2\xd4\xea\xf7\x53\xba\x1e\xda\xf7\xda\x05\xf7\x27\x06\x3c\xfb\xd5\x05\x88\x7e"
+"\x89\x7f\x7f\x1a\x69\xa8\x73\xb6\xc6\xaf\xa9\xf4\xcf\x1e\x77\x96\x05\x56\x67\x75\x75\x79\x1b\x82\x83\x93\x94\x8e\x8c\x92\x8e\x95"
+"\x1f\xf7\x2b\xf8\xee\x28\x7f\x05\x9a\x3d\x8b\x8b\x75\x1b\x40\x51\x6f\x52\x60\x1f\xbc\x8a\x66\xa9\x4e\x1b\x57\x5a\x76\x63\x68\x1f"
+"\x61\x5d\x78\x62\x6e\x26\x08\xf7\x07\x16\x9d\xd2\x05\xee\xa4\xa9\xbd\xaf\x5e\x1d\x7f\x66\x1d\x93\x91\x8c\x8e\x92\x1e\x7f\x75\x83"
+"\x74\x73\x40\x08\x81\x61\x15\x2f\xfc\x26\x05\xfb\x24\x6a\x7c\x6c\x68\x1b\x7d\x83\x90\x92\x8f\x8c\x8e\x90\x91\x1f\x92\x95\x8e\x93"
+"\x95\x1a\xa7\x78\x9d\x6f\x7c\x7f\x87\x82\x80\x1e\xbc\xf7\x03\xa1\xdd\xc9\xf7\xbe\x08\xf8\x2f\xb5\x15\xfb\x2b\x06\xa0\xe5\x9a\xb5"
+"\xa0\xae\x08\xb1\xa3\xaa\xa0\xac\x1b\x9d\x9d\x82\x81\x89\x8a\x8a\x86\x83\x1f\x80\x7b\x87\x82\x7e\x1a\x7b\x91\x7f\x9a\x80\x1e\x0e"
+"\xec\xa4\xf7\xa3\x15\xf7\x72\x9e\x06\x59\x82\x8f\xa0\x94\x8d\x98\x8f\x97\x1f\xec\xf7\xdb\x45\x7d\x6a\x85\x43\x80\x19\x89\x77\x05"
+"\x8c\xa4\x99\x8c\x8f\x1b\x99\x97\x81\x80\x81\x6c\x23\x70\x39\x1f\x85\x78\x85\x7a\x8a\x85\x08\x4b\x7b\x7c\x7d\x53\x1b\xf8\xf3\xf8"
+"\x16\x15\x52\x06\xfc\x3f\xfd\x46\x05\xc4\x06\xf7\xe6\xbb\x1d\x69\xbb\x0a\x42\x56\x5d\x4c\x6c\x95\x74\xaa\xb9\x1d\x73\x6e\x73\x1e"
+"\x4c\x4f\x15\xb2\x63\x9b\x6f\x6d\x1a\x64\x71\x6f\x69\x67\x76\xa3\xb4\xb5\x9f\xab\xb5\xa5\x1e\x0e\xec\xf7\x17\xf8\x72\x15\xce\x88"
+"\xab\x6e\x51\x1a\x59\x6d\x64\x64\x79\x88\x8d\xa7\x77\x1e\x9d\x7d\x7e\x94\x7b\x1b\x76\x7c\x7a\x74\x6c\xaa\x79\xc0\xf2\xdf\xd0\xe0"
+"\xb1\x7e\xa2\x64\xa5\x1f\x92\x8f\x05\xc3\xaa\x99\x9d\xae\x1a\xb9\x61\xad\x53\x57\x64\x74\x54\x65\x1e\x99\x7e\x05\xaa\xa6\x9d\x95"
+"\xa7\x1b\xac\xa0\x77\x6c\x61\x65\x71\x3b\x7c\x1f\xf8\x87\xf7\x4c\x15\x52\x06\xfc\x3f\xfd\x46\x05\xc5\x06\xf7\xe5\xf7\x76\x15\x42"
+"\x6f\x69\x67\x58\x1a\x52\xbe\x62\xd3\xdb\xc9\xc2\xd0\xb0\x79\xb0\x6a\xab\x1e\xcb\xa8\xa1\xa2\xb4\x1a\xbf\x5f\xaf\x4b\x42\x56\x5d"
+"\x4c\x6c\x96\x74\xa9\xb9\x1d\x74\x6e\x72\x1e\x4c\x4f\x15\xb1\x65\x9c\x6d\x6d\x1a\x65\x71\x6e\x69\x67\x76\x50\x0a\xec\xea\xf8\x94"
+"\x15\x8c\x92\x90\x8b\x8e\x1b\xcc\xb9\x5c\x49\x5c\x73\x63\x6e\x81\x7b\x91\x94\x7d\x1f\x9e\x6f\x89\x8c\x7f\x1b\x7a\x7c\x7d\x7b\x73"
+"\xa5\x7a\xaf\xec\xd5\xd7\xed\xb6\x7a\xaa\x65\xa5\x1f\x74\x9b\x79\x91\x69\x8e\x9d\xae\x18\xf7\x1b\x06\x9e\xce\x05\xfb\x2e\x06\xf8"
+"\x51\x89\x15\x52\x06\xfc\x3f\xfd\x46\x05\xc5\x06\xf7\xe5\xd6\x1d\xc1\xd1\xb0\x79\xb0\x6a\xab\x1e\xcc\xa8\xa1\xa2\xb4\x1a\xbf\x5f"
+"\xaf\x4a\x42\x56\x5d\x4c\x6c\x95\x75\xaa\x67\x1e\xe1\xb2\x15\x61\xb1\x81\x9b\xa6\x1a\xa9\x9f\xa0\xa7\xa8\x9c\x77\x6a\x6c\x7e\x72"
+"\x6e\x74\x1e\x4c\x4f\x15\xb1\x65\x9c\x6d\x6d\x1a\x64\x72\x6f\x68\x68\x75\x50\x0a\xec\xf7\xb8\xf8\xf2\x15\xfb\x58\xfb\xd7\xa9\x7b"
+"\xf7\x8a\xf8\x2d\x05\xfb\x74\x06\x57\x25\x05\xa0\x06\xa3\x97\xa1\x93\xc1\x1b\xf8\x10\xd1\x15\x52\x06\xfc\x3f\xfd\x46\x05\xc4\x06"
+"\xf8\x02\xbb\x1d\x6a\xbb\x0a\x41\x56\x5d\x4c\x6c\x96\x74\xa9\x68\x1e\xe1\xb2\x15\x61\xb1\x81\x9b\xa7\x1a\xa8\x9f\xa0\xa7\xa8\x9c"
+"\x77\x6a\x6c\x7f\x73\x6d\x73\x1e\x4c\x4f\x15\xb1\x64\x9c\x6e\x6d\x1a\x64\x71\x6f\x69\x67\x76\x50\x0a\xf7\xb7\x99\x0a\x62\x7a\x96"
+"\xa5\x92\x8c\x93\x8e\x96\x1f\x8c\x8d\xca\xf7\x85\x05\xf7\x02\x84\xa2\x7c\x4b\x1a\x83\x8b\x82\x8a\x80\x71\x1d\xf7\x48\xf8\x4d\xa6"
+"\x0a\x4d\x0a\x99\x27\x1d\xf7\x55\xf9\x14\x15\x49\x6c\x68\x57\x0a\x06\x57\x8e\x79\x97\x71\x1e\x5a\x1d\x99\x79\x1d\x99\x7a\x1d\xfb"
+"\x35\x51\x15\x99\xa9\x92\x9c\x90\x93\x47\x1d\x84\x6c\x88\x51\x0a\x89\x7a\x8b\x87\x89\x73\x08\x0e\x99\x27\x1d\xf7\x88\xf8\xdd\x25"
+"\x0a\x99\xf7\xf5\xf7\x64\x15\x95\x41\x90\x62\x81\x1a\x62\x7c\x80\x4b\x85\x1e\x72\xf7\x92\x9e\x1d\x62\x75\xa1\xb6\x9a\x8d\x95\x92"
+"\x99\x1f\xa4\x07\x49\x90\x86\x90\x7e\xd7\x2b\xf8\xd0\x18\x72\x06\xfc\x08\xfc\xe0\x6b\x5a\x7c\x7e\x67\x83\x19\x72\xf7\x58\xa4\x07"
+"\x5d\x78\x96\xa3\x99\x90\x9a\x95\x9c\x1f\xc6\xf1\x05\xa2\xb3\x15\xf7\x28\xf7\x87\xb0\xfb\x87\x05\x0e\x99\xf8\xe5\xa4\x15\xcd\x1d"
+"\x6a\x59\x7d\x7f\x67\x83\x19\x72\xf7\x58\xa4\x07\x5d\x78\x96\xa3\x99\x90\x9a\x95\x9c\x1f\xc6\xf1\x05\xf7\x6b\x06\xde\x1d\xf7\xc4"
+"\x07\xfc\x44\xf7\x8c\xd0\x1d\xcb\xf8\xe7\x15\x51\x5a\x69\x64\x60\xba\x69\xc6\xc7\xba\xad\xb5\xb3\x5b\xad\x51\x1f\x89\x69\x15\xac"
+"\xa6\x78\x74\x75\x6f\x79\x6b\x6c\x71\x9e\xa0\xa2\xa5\x9e\xaa\x1f\x60\xaf\x15\xf7\x2c\xc8\x05\xa9\x97\x94\x93\x98\x1a\x9d\x75\x9a"
+"\x71\x79\x7c\x83\x70\x66\x1e\xfb\x0e\x2f\x05\x0e\x99\x6f\x1d\x99\x33\x1d\xfb\x67\xf7\xa7\xa9\x1d\x99\x33\x1d\x97\xf8\x55\x20\x0a"
+"\xa0\x33\x1d\x44\xf7\xa7\x15\xbf\x06\x35\xf7\x42\x05\x39\x2a\x0a\x99\x33\x1d\xfb\x46\xf8\x32\xbd\x1d\x99\xaf\x0a\x6e\x77\x77\x85"
+"\x1d\x97\x1a\xa3\x9a\x9e\x9f\x1e\x99\x28\x1d\xfb\x9b\x4b\x0a\xe3\xfb\x92\x18\xfb\x33\xfb\x43\x54\x4c\x60\x69\x67\x82\x33\x0a\xf7"
+"\x61\x21\x1d\x7e\x06\x6a\x79\x97\xa2\x9b\x94\x9c\xa3\xa6\x1f\x0e\xd0\x65\x0a\xf8\x34\xf9\x9a\x15\x53\x06\xfb\x1b\x2a\x2f\xec\x05"
+"\x5a\x06\xe3\xfb\x42\x05\xdd\x06\x0e\xd0\x5c\x0a\x99\xac\x16\xf8\xee\x06\xfb\xad\xf9\x44\x05\xfb\x6b\xfc\xe6\x15\xf7\x40\xf8\x09"
+"\xf7\x2f\xfc\x09\x05\x0e\x99\x24\x1d\x98\xfa\x0c\x38\x0a\x99\x24\x1d\xbe\xfa\x18\x20\x0a\x99\x24\x1d\xfb\x19\xf9\xf5\x2a\x1d\x99"
+"\x24\x1d\xc0\xf9\xd5\x25\x0a\xd0\xf8\x4d\xc8\x15\x72\x3c\x05\x37\x6f\x57\x41\x6c\x1b\x80\x7f\x92\x90\x8e\x8c\x8c\x8f\x91\x1f\x92"
+"\x96\x8e\xad\x0a\xee\xcd\xd4\xf7\x31\xb8\x1e\xf7\x18\xf8\x68\x8a\x0a\xfb\x6b\xf8\x65\x05\xfb\x57\x72\x06\xc2\x86\x94\x85\x9e\x5f"
+"\xfb\x0c\xfc\x2f\x18\x64\xfb\x17\x84\x80\x54\x80\x08\x72\xf7\x64\xa4\x07\x50\x90\x76\x9a\xb2\x1a\x9e\x91\xac\x97\xb5\x1e\xee\xf7"
+"\xf8\x05\x0e\x99\xf8\xde\xf7\x56\x15\x72\x90\x68\x52\x76\x72\x64\x70\x19\x64\x53\x47\x78\x35\x1b\x60\x79\x95\xa3\x92\x8d\x96\x91"
+"\x9f\x1f\x8d\x8f\x8c\x92\x8d\x93\x8d\x91\x18\xc3\xf7\x65\x05\xf7\x06\x89\xa9\x78\x47\x1a\x7d\x8a\x7f\x88\x78\x1e\xa7\x86\xd5\xf7"
+"\xa5\x6f\x8f\x5c\x2d\x71\x7e\xfb\x18\x8c\x19\xc8\xf7\x73\x05\xae\x95\x97\x94\xb4\x1b\xd3\xc2\x7c\x70\xa6\x1f\xa2\x73\x92\x72\x4d"
+"\x1a\xa6\x86\xb6\xf7\x52\x05\xfc\xb0\x72\x06\xae\x85\xa0\x87\xc4\x0a\x80\x1a\x7d\x87\x73\x85\x75\x1e\xfb\x0f\xfc\x55\x7b\x56\x7f"
+"\x80\x57\x83\x19\x72\xf8\x90\x07\x69\x5e\x82\x78\x6f\x31\x0a\xb4\x9e\x8f\x9e\x98\xb7\x1f\x0e\x99\xf7\xd2\xf7\xdf\x15\xca\x06\xbf"
+"\xa8\x73\x62\x83\x8b\x89\x88\x74\xc2\x1d\xcf\xf7\x96\x05\xbe\xb0\x1d\x7a\x72\x1a\x84\x95\x1d\x67\x75\x9a\xa3\x93\x8d\x97\x8e\x98"
+"\x1f\x0e\xf7\x10\xf7\x30\x41\x1d\xf7\xe8\x4e\x15\xca\x06\xbf\xa8\x73\x61\x84\x8b\x87\x88\x76\x1f\xa0\x06\xc8\xf7\x7a\x05\x76\x06"
+"\x4a\x6e\x5a\x6c\x43\x1b\x61\x06\xd0\xf7\x96\x05\xbd\x06\xe7\x8e\xca\x5e\x91\x40\x08\x9d\x06\xb4\xf7\x2e\x05\xfc\x6f\x06\x86\x75"
+"\x05\xa3\x06\xa5\x8a\x9c\x7b\x70\x1a\x84\x8a\x87\xbf\x0a\x69\x88\x19\x84\x20\x1d\xf8\x71\x06\xca\xf7\x3a\x05\x78\x06\x37\x37\x30"
+"\x5c\x3c\x1b\x67\x75\x9a\xa3\x93\x8d\x96\x8f\x99\x1f\x0e\xf7\x11\x64\x0a\xfb\xbc\x06\x85\x53\x1d\x0e\xf7\x86\xf7\x21\xf8\x1c\x15"
+"\x99\xaa\x93\x9c\x8f\x92\x47\x1d\x85\x6c\x87\x51\x0a\x8a\x7a\x8a\x87\x89\x73\x08\xf7\xe6\x44\x15\xf7\x7a\x06\x4d\xfb\x7d\x34\x0a"
+"\x66\x20\x1d\xf7\xbf\x21\x1d\x72\x06\x71\x8c\x7a\x9b\xa5\x1a\x91\x8c\x91\x8c\x91\x53\x0a\xae\x8e\x19\x97\x21\x1d\xfb\xa8\x20\x1d"
+"\xa5\x06\xa5\x9c\x7a\x72\x83\x8a\x86\x8a\x85\x1f\x51\xfb\x6d\x05\xfb\x7a\x06\xc4\xf7\x68\x97\xb8\x9c\x9d\xae\x8e\x19\xb2\x28\x1d"
+"\xfb\xbd\x94\x1d\x22\x1d\xda\x1d\x0e\xf7\xb5\xf8\x2d\x15\x8c\x8e\x05\xf7\x24\xc3\xde\xe8\xd2\x1b\xc7\xb1\x50\x2e\x1f\x80\x9e\x07"
+"\xbc\xf7\x5e\x05\x78\x06\x7a\x82\x81\x84\x7d\x1b\x84\x81\x8d\x8f\x81\x1f\x9b\x59\x7e\x8e\x6e\x1b\xfb\x17\xfb\x25\xfb\x0d\xfb\x33"
+"\x51\x1f\x5e\x06\x6a\x59\x05\xcb\x06\x85\x78\x87\x7b\x88\x79\x08\x5b\x06\x6a\x59\x05\xd9\x06\x8a\x86\x8b\x84\x8b\x1a\xfb\x31\xd3"
+"\x2f\xf7\x0d\xdf\xce\xac\xca\xb5\x1e\x98\xb5\x05\x4a\x5b\x54\x6c\x4a\x1b\x43\x62\xc4\xef\xa0\x8c\x9d\x8f\xa2\x1f\xf7\x01\x06\xac"
+"\xbd\x05\xfb\x1b\x06\x8f\x9d\x91\xa1\x90\x98\x08\xf7\x3b\x06\xac\xbd\x05\x0e\x5a\xf7\x8c\xa5\x15\x57\x8d\x79\x96\xa6\x1a\x9a\x8e"
+"\x9d\x97\xb8\x1e\xe6\xf8\x07\x99\xc3\x92\xa0\x95\x98\x19\x98\x94\xa4\x91\xb9\x1b\xda\xb5\x7f\x6b\xaa\x1f\xa9\x6d\x96\x6c\x8e\x51"
+"\xa7\x92\x18\xbb\xf7\x56\x05\xfc\xdf\x06\x8c\x71\x05\xc0\x88\x9d\x81\x6f\x1a\x7d\x8a\x86\x82\x68\x1e\x2a\xfc\x1e\x72\x25\x7f\x7b"
+"\x56\x88\x19\x71\xf7\xba\x07\x0e\xd0\x35\x0a\xfb\x0f\xf8\xdc\x38\x0a\xd8\xf8\xe6\xf9\x67\x48\x0a\xf7\x5c\xfc\x7c\x78\x1d\x5f\x69"
+"\x91\x5e\x1b\x3d\x99\x1d\xd2\x92\x91\xc0\x90\x19\x0e\xd0\x35\x0a\xfc\xbe\xfd\x08\x35\x1d\xd0\x35\x0a\xfb\x81\xf8\xc5\xbd\x1d\xf7"
+"\x11\xf7\x34\xf8\x72\x15\x23\xfc\x11\x4f\x1d\xa4\x07\x54\x8d\x79\x95\xa8\x1a\x9a\x8f\x9f\x9a\xbf\x1e\x91\xa1\xde\xf7\xc3\x05\xca"
+"\x06\x97\xb7\x05\x4c\x06\x99\xbd\x9b\xc0\x99\x97\xbe\x92\x19\xa4\xfb\xbe\x72\x07\xab\x86\x99\x8a\x95\x87\x92\x87\x19\x91\x87\x8f"
+"\x83\x80\x1a\x7f\x86\x6c\x86\x79\x1e\x84\x73\x05\xfb\x83\x06\x99\xbd\x9b\xc2\x9f\x9a\xcc\x8d\x19\xa4\xfb\xd1\x72\x07\xae\x85\xa0"
+"\x87\x91\x86\x08\x92\x87\x8f\x82\x7f\x1a\x7f\x87\x79\x84\x6f\x1e\x84\x73\x05\x4b\x06\x7e\x5f\x05\xf7\x68\x16\xf7\x84\x06\x6e\x22"
+"\x05\xfb\x83\x06\x0e\xf7\x19\xf9\x26\xd5\x1d\x91\x8d\x93\x8d\x93\xf7\x01\xf8\x21\x18\x9b\xc0\x99\x97\xbe\x92\x08\x56\x1d\x5c\xfb"
+"\x41\x05\xfb\x83\x06\xc1\xf7\x5b\xab\x1d\x86\x91\x87\x5c\x1d\x78\x84\x70\x1e\xfb\x0e\xfc\x55\x4f\x1d\x07\x66\xf9\x67\x23\x1d\xf7"
+"\x63\xf7\xda\xa1\x15\x6f\x06\x71\x8c\x7a\x9b\xa3\x1a\x92\x8c\x91\x8d\x92\x1e\xf7\x21\xf8\x7f\x98\xb8\x9d\x9d\xae\x8e\x19\x97\x06"
+"\x92\xa1\x05\xfb\xa6\x96\x0a\x7a\x79\x67\x88\x19\x83\x20\x1d\xf7\xa8\x06\xf7\xab\xf9\x14\x15\xa9\x06\xa4\x9c\x7a\x73\x83\x8a\x86"
+"\x89\x84\x1f\xfb\x24\xfc\x8a\x05\x6a\x82\x80\x7d\x7a\x1b\x80\x82\x93\x95\x90\x8d\x91\x8e\x8f\x1f\x9d\xa4\x8e\x92\x9e\x1a\xaa\x76"
+"\x9f\x6b\x66\x6f\x6a\x60\x53\xb9\x61\xca\xe7\xd7\xce\xf7\x00\xaa\x1e\xf7\x09\xf8\x2c\x98\xb8\x9e\x9d\xae\x8e\x19\x92\x06\x92\xa1"
+"\x05\xfb\xa8\x06\x0e\xfb\x9c\x27\x0a\xf7\x2a\xfa\x0c\x15\x49\x6c\x67\xc2\x0a\x56\x8d\x7a\x97\x71\x1e\x5f\xa0\xb3\x69\x1d\xfb\x9c"
+"\x27\x0a\x82\xf9\xf5\x2a\x1d\xfb\x9c\x27\x0a\xf7\x59\xf9\xd5\x25\x0a\xfb\x9c\xf7\x9c\x86\x1d\xf7\x7f\x9e\x1d\x64\x73\xa1\xb0\x9d"
+"\x92\x9b\x98\x96\x1f\x0e\xfb\x9c\x80\x1d\x0e\xfb\x9c\x80\x1d\x56\xf9\xd2\x15\x68\xb2\x0a\x6a\x1f\xf7\x57\x16\x69\xb2\x0a\x69\x1f"
+"\x0e\xfb\x27\xf7\x14\x41\x1d\xf7\xec\xfc\x06\x15\xda\x1d\xf7\x17\xf8\x7f\x97\xb8\x9c\x32\x0a\xfb\xa3\x94\x1d\x0e\xfb\x9c\xf7\x9d"
+"\x84\x1d\xf7\x49\xf9\xec\x15\x6b\x7c\x7e\x81\x74\x1b\x7f\x7b\x90\x96\x71\x1f\x9c\x62\x6b\x94\x92\x0a\xa4\x98\x88\x9d\x1b\xc7\xaf"
+"\xaf\xde\xa1\x1f\x0e\xfb\x28\xf8\xa3\x6a\x0a\xbf\x9a\x99\xbc\x91\x19\x7d\xf1\x23\x1d\x99\xf7\xc6\xf7\xf5\x15\xdc\xfb\x97\x05\x91"
+"\x7b\x8c\x84\x82\x1a\x73\x7b\x7b\x73\x1e\x7f\x20\x1d\xf7\x93\x4f\x0a\xfb\x03\xf7\xdc\xf7\x38\xf7\x2d\xc3\xb8\xb2\x9d\xba\x90\x19"
+"\x90\x3b\x0a\x9c\x98\x7c\x78\x77\x7b\x6f\x71\x73\x1f\xfb\x4e\xfb\x43\xc4\xf7\x6b\x97\xb8\x9d\x9d\xad\x8e\x19\xa1\x21\x1d\xfb\xb1"
+"\x45\x0a\xf7\xa5\x21\x1d\x6c\x06\x70\x7b\x9c\xa5\x93\x8b\x8f\x8d\x91\x1f\x0e\x99\x58\x0a\xfc\x3c\xfc\x14\x39\x0a\x61\x2f\x0a\xfb"
+"\x60\xf9\x6a\xa9\x1d\x99\xf8\x09\xf8\x56\x15\x77\xfb\xfc\x87\x5e\x77\x75\x64\x8a\x19\x84\x20\x1d\xf7\x93\x21\x1d\x7f\x06\x71\x7e"
+"\x9f\xb0\x1f\x96\x07\xa7\xf8\xd0\x05\x72\x06\xfc\x36\xfc\xc0\x60\x52\x72\x73\x77\x88\x33\x0a\xf7\x42\x28\x1d\x7c\x06\x73\x7a\x99"
+"\xa0\x9a\x90\x98\x9b\xa0\x1f\x0e\x61\x2f\x0a\x57\xf8\x25\x15\xf4\xb9\xce\xd8\xd4\x1a\xc0\x6d\x60\x1d\x67\x68\x44\x65\x1e\x0e\x61"
+"\x2f\x0a\xfc\x46\xfb\xd8\x39\x0a\x61\x2f\x0a\x44\xf8\x2c\x2b\x0a\xf7\x80\x69\x0a\xf7\xaf\x06\x9b\x0a\x97\xb8\x9e\x9d\xad\x8e\x19"
+"\x9d\x21\x1d\xfb\x53\x06\x0e\xd0\x2e\x0a\x29\xf8\x9e\x29\x0a\xd0\x2e\x0a\xf7\x11\xf9\x4c\x15\x53\x06\xfb\x1c\x2a\x31\xec\x05\x59"
+"\x06\xe3\xfb\x42\x05\xdd\x06\x0e\xd0\x2e\x0a\xfc\x05\xfc\xa4\x35\x1d\xd0\xf8\xbc\xf7\x67\x15\xfb\x62\xf8\x57\x05\xfb\x50\x06\x85"
+"\x75\xae\x8a\x9f\x81\x9e\x70\x19\xfb\x14\xfc\x77\xa7\x1d\xf7\x0b\xf8\x54\xf7\x97\xfc\xc6\x05\x9f\x06\xf7\x22\xf8\xa8\xa2\xe0\x99"
+"\x9d\xb7\x90\x19\x22\x1d\xfb\x3b\x20\x1d\xb5\x9e\x7e\x71\x7e\x89\x7c\x86\x7b\x1f\x0e\xd0\x26\x1d\xf7\x2d\xf7\x81\x15\x49\x6c\x67"
+"\x73\x4a\x1b\x4b\x6b\xa8\xc8\x85\x1f\x60\x06\x56\x8e\x7a\x97\x71\x1e\x5a\x1d\xd0\x26\x1d\xfb\x19\xd6\x51\x1d\xd0\x26\x1d\xf7\x4a"
+"\xf7\x4a\x15\xfb\xd9\x06\x7a\x45\x05\xf7\xda\x06\x0e\xf7\x18\xf7\x11\x41\x1d\xbc\xfb\x6f\x15\x7e\xfb\x41\x05\xf7\x7e\x06\xa3\xe5"
+"\x05\x6f\xc0\x84\xa9\xca\x1a\xd0\x99\xd8\xa7\xe1\x1e\xf7\x06\xb0\xbb\xbc\xd7\x1b\xce\xb5\x5d\x42\x49\x73\x29\x66\x36\x1f\x69\x3b"
+"\x70\x60\x5d\x59\x73\x31\x18\xf7\x83\x06\xd6\xf7\x41\x05\x79\x06\x5c\x49\x6b\x7a\x3b\x89\x08\x36\x06\xbe\xa3\xac\xa1\xb9\xb3\x08"
+"\xef\xe4\xbc\xe8\xef\x1a\xf7\x18\x30\xdf\xfb\x22\x44\x46\x77\x66\x55\x1e\x2c\x4d\x4a\xfb\x0e\xfb\x06\x1a\x2d\xbb\x3d\xe8\x52\x1e"
+"\x49\x06\x4a\x89\x59\xac\x7c\xc1\x08\x0e\xd0\xf8\x70\xf9\x34\x15\x3a\x2f\x67\x54\x4b\x1f\x25\x32\x4a\xfb\x23\xfb\x17\x1a\x4b\xa1"
+"\x4e\xb1\x62\x1e\x64\xae\xc6\x75\xcc\x1b\xf7\x6b\xf7\x56\xf7\x6b\xf7\x82\xf7\x21\x35\xe2\xfb\x1e\x1f\x7e\x63\x15\xc4\xb0\x5a\x3e"
+"\xfb\x09\x55\xfb\x4c\x4d\x2c\x1f\x5a\x6b\x57\x6c\x5a\xd3\x1d\xbe\xad\xc4\x1b\x0e\xd9\xf4\x41\x1d\xf8\x7d\xf7\xac\x15\x3b\x2e\x67"
+"\x54\x4b\x1f\x26\x32\x49\xfb\x22\xfb\x18\x1a\x4b\xa1\x4e\xb1\x62\x1e\x64\xae\xc6\x75\xcd\x1b\xf7\x6b\xf7\x56\xf7\x6b\xf7\x81\xf7"
+"\x22\x35\xe2\xfb\x1f\x1f\x7e\x63\x15\xc5\xb0\x5a\x3f\xfb\x09\x55\xfb\x4c\x4c\x2b\x1f\x5a\x6b\x58\x6c\x59\xd3\x1d\xbf\xad\xc3\x1b"
+"\x0e\xd0\xe2\x1d\x76\x8e\x6d\x1b\xfb\x6a\xfb\x63\xfb\x7c\xfb\x85\x67\x0a\x74\x90\x76\xb3\x0a\x56\x1b\x70\x79\x91\x9b\x76\x1f\xf7"
+"\x8c\xf9\x4b\x15\xf7\x2c\xe2\x05\xa9\x9d\x94\x95\x9e\x1a\xa5\x75\xa0\x70\x7a\x7a\x7f\x65\x68\x1e\xfb\x0e\xfb\x17\x05\x0e\xf7\x1c"
+"\xf8\x0e\xf9\x48\x15\x55\x0a\x9d\x7b\x73\x1a\x86\x8a\x83\x89\x83\x1e\x36\x88\x57\x84\x62\x7d\x08\xfb\x19\x5d\x3f\xa7\x0a\x7d\x5b"
+"\x7c\x7b\x67\x87\xdc\x1d\xf7\x9f\x21\x1d\x6e\x06\x72\x8c\x79\x9b\xa2\x1a\x92\x8d\x94\x8d\x95\x1e\xe1\x8e\xb3\x90\xb9\x9b\x08\xf7"
+"\x18\xb7\xd8\xf5\xf7\x1c\x1a\xf7\x1e\x34\xe3\xfb\x28\x97\x1e\x97\xb7\x9d\x9c\xcc\x1d\xbd\xe5\x1a\xf7\x03\xba\xf7\x0f\xcc\xc5\x1e"
+"\xac\xa9\xa9\x95\xcb\x90\x08\xf7\x12\x16\xb5\x81\x97\x85\x9b\x74\x08\xa1\x6d\x95\x66\x5a\x1a\xfb\x02\x5e\xfb\x09\x4b\x51\x1e\x64"
+"\x69\x6e\x7f\x54\x88\x08\x0e\xf7\x11\xf9\xbf\xf9\x2a\x15\xfd\x0e\x06\x85\x53\x1d\xf7\x12\xf8\x6e\x98\xb8\x9c\x9d\xae\x8e\x19\xf7"
+"\x12\x06\xa5\x9c\x7a\x71\x85\x8a\x85\x8a\x85\x1f\xfb\x13\xfc\x6e\x79\x0a\x0e\xf7\x27\xfa\x18\xf9\x1c\x15\xa0\x62\x74\x92\x6b\x1b"
+"\x69\x72\x81\x76\x78\x1f\x76\x73\x7f\x6c\x74\x2f\x68\xfb\x2e\x53\x46\xfb\x03\x74\xe1\xf7\xd6\x18\x97\xb8\x9d\x9d\xae\x8e\x08\x97"
+"\x21\x1d\xfb\xa3\x20\x1d\xa1\x06\xac\x8a\x9f\x7b\x71\x1a\x86\x8a\x85\x89\x84\x1e\x35\xfb\xd8\x71\x91\x80\x90\x7f\x94\x19\x6e\xa1"
+"\x7a\xb1\xb6\x1a\xa4\x91\xaf\x97\xb9\x1e\xa2\xe3\x8c\x8f\xa3\x1a\xb9\x6f\xa7\x5e\x6d\x73\x85\x74\x58\x1e\x8e\x71\x05\x8f\x98\x90"
+"\x8c\x92\x1b\x9b\x94\x80\x78\x81\x8a\x85\x86\x77\x1f\x7b\x50\x05\x83\x6c\x87\x73\x76\x1a\x5c\x9d\x5a\xa9\x66\x1e\xaf\x5e\xb2\x7a"
+"\xdb\x84\x68\xfb\x1a\x18\x7e\x5f\x74\x78\x64\x88\x08\x76\x06\x85\x75\x05\xf7\xb9\xca\x1d\xb0\xf7\x1c\xf7\x54\x9e\xf7\x00\xdd\xac"
+"\xf7\x30\x19\x9b\xc8\x05\xd9\xa0\x94\x9a\xa3\x1b\x92\x91\x89\x86\x98\x1f\x0e\x99\x3b\x1d\xdd\xf7\xff\xa8\x1d\x99\x3b\x1d\xf7\xc5"
+"\xf8\xad\x20\x0a\x99\x3b\x1d\xfb\x28\xfd\x43\x39\x0a\x61\x97\x0a\xfb\x8b\x20\x1d\xa6\x06\xa5\x9c\x7a\x71\x84\x8a\x86\x8a\x85\x1f"
+"\x3a\x1d\x87\x20\x1d\xf7\xac\x21\x1d\x64\x06\x71\x7a\x9c\xa5\x8f\x8c\x93\x8d\x91\x1f\xf7\x24\xf8\xb1\x15\xcb\x88\xac\x6a\x50\x1a"
+"\x67\x7d\x55\x78\x67\x1e\x5c\x72\x6e\x79\x5a\x1b\x7f\x83\x8c\x8f\x7b\x1f\x0e\x2a\x36\x0a\xf7\x9a\xf8\x9c\x29\x0a\x2a\xf7\x5e\x7b"
+"\x15\x89\x9a\x91\x8b\x98\x1b\xd0\xcb\x9f\xad\xb0\x1f\xb2\xaf\xa2\xc1\xc5\x1a\xe3\x5e\xcd\xfb\x0f\xe8\x1e\x4d\xba\x7c\xa1\xb8\x1a"
+"\xcc\xb3\xb3\xcb\xdb\xb1\x5a\xfb\x09\x99\x1e\xa6\x87\xb3\xf7\x5d\x05\x6d\x06\x79\x82\x7d\x83\x76\x1b\x80\x7c\x8e\x93\x72\x1f\x99"
+"\x62\x6f\x90\x6e\x1b\xfb\x06\x34\x37\xfb\x02\x71\x90\x74\x93\x7a\x1f\xa1\x61\xb4\x5f\xc3\x5f\x08\xda\x4f\xad\x5d\x5c\x1a\x75\x84"
+"\x72\x7f\x76\x1e\x64\x74\x69\x78\x59\x1b\x57\x5e\xa3\xb6\x71\x1f\x78\xaa\x83\xa9\x87\xc7\x6e\x8d\x18\x67\xfb\x74\x05\xa9\x06\xa8"
+"\x97\x92\x91\x9e\x1b\x95\x98\x88\x83\xa2\x1f\x9c\x85\x99\x87\x9b\x86\x53\x38\x18\x98\x7f\x05\x8e\x96\x93\x7b\x0a\x30\xf8\x61\xf9"
+"\x67\x48\x0a\xfc\x06\xfd\xd8\x89\x0a\x5d\xce\xfb\x0e\xe7\x1f\xab\x0a\xcc\xda\xb2\x5a\xfb\x09\x98\x1e\xa6\x87\xb3\xf7\x5d\x05\x6d"
+"\x06\x79\x82\x7d\x83\x76\x1b\x80\x7d\x8e\x93\x71\x1f\x99\x62\x6f\x90\x6e\x1b\xfb\x06\x34\x37\xfb\x02\x71\x90\x74\x93\x7a\x1f\xa1"
+"\x61\xb4\x5f\xc3\x5f\x08\xda\x4f\xad\x5d\x5c\x1a\x75\x84\x72\x7f\x76\x1e\x64\x74\x69\x78\x59\x1b\x57\x5e\xa3\xb6\x71\x1f\x78\xaa"
+"\x83\xa9\x87\xc7\x6e\x8d\x18\x0e\x2a\x36\x0a\xaa\xfc\xa6\x35\x1d\x69\xf8\xfe\xf9\x2b\x15\xfc\xb1\x06\xf7\x1e\xfb\xf3\xfb\xcf\xfb"
+"\xcc\x05\xf8\xd1\x06\xf0\xf7\x52\x05\x4d\x06\x67\x3e\x80\x82\x43\x89\x08\xfb\x79\x06\x76\x82\x8f\x93\x95\x92\x95\xa7\xa7\x1f\xf7"
+"\x5d\xf7\x60\x2e\xf7\x86\x05\xf7\x4c\x06\xb4\xaa\x6c\x63\x88\x8b\x87\x8a\x84\x1f\x8a\x76\x05\xc6\x06\x0e\x61\xf8\x6f\xf9\x00\x15"
+"\xad\x89\x9a\x86\x9e\x7d\x08\xa4\x78\x9a\x6f\x6e\x1a\x85\x8a\x82\x8a\x81\x1e\xa5\x06\xb6\xf7\x38\x05\xfc\x6a\x06\x5f\x42\x0a\x0e"
+"\x61\xf8\x07\xf7\xf6\x15\xd9\xf7\xac\xe9\x8a\xb2\x60\x90\xfb\x03\x19\xa6\x89\xaf\xf7\x54\x05\xfc\xbb\x06\x65\xfb\x3f\xa4\x84\xbf"
+"\xef\xca\xb5\xf1\x8c\x19\x3e\xfb\xac\x05\x31\x06\x7e\x55\x05\xe3\x06\x53\xfb\x5f\x05\x58\x7d\x71\x76\x58\x1b\x7d\x72\xf7\xdf\xd9"
+"\x1d\xba\xf7\x40\x05\xe8\x06\x97\xc1\x05\x0e\x61\x43\x0a\x7d\xf8\x3b\x20\x0a\x61\xf7\x85\x16\xf7\x20\xa5\x1d\xaf\xf7\x54\x05\x8b"
+"\x0a\xf7\x27\x06\x4c\x2f\x98\x7f\x05\x8e\x97\x92\x8c\x97\x1b\xa8\x9c\x7e\x74\x72\x75\x7b\x69\x75\x7b\x8f\x98\x6e\x1f\x75\x6a\x05"
+"\x79\xb7\xab\x61\x1d\xf7\x02\xf7\xc1\xf8\x62\x15\x52\xfb\x7e\x05\xa8\x06\xc0\x99\xa2\x9d\xbf\x1b\xaf\xa3\x79\x70\x86\x8a\x87\x88"
+"\x7a\x1f\xa8\x06\xc5\xf7\x7e\x05\x6e\x06\x58\x78\x77\x7c\x5b\x1b\x64\x76\x9a\xa8\x91\x8b\x8f\x8d\x97\x1f\xf7\x0e\xf7\x6d\x15\x4d"
+"\x4b\x7e\x74\x55\x1f\x4f\x71\x59\x61\x5a\x4a\x08\x4a\x37\x6b\x31\x2d\x1a\xfb\x34\xf1\x28\xf7\x39\xf7\x17\xf7\x0d\xbb\xd9\xcd\x1e"
+"\xd4\xe0\xbd\xf7\x15\xee\x1a\xf7\x32\x22\xee\xfb\x3b\x1e\x8c\x6a\x15\xb2\xac\x7d\x73\x9d\x1f\xa0\x6e\x98\x5e\x5d\x1a\xfb\x30\x38"
+"\xfb\x6e\x38\x4d\x1e\x76\x6f\x57\x7c\x61\x1b\x37\x61\xbe\xf2\xf7\x21\xc7\xf7\x46\xdc\xeb\x1f\xb2\xab\xc2\xa1\xc9\x1b\x0e\xd8\x21"
+"\x0a\xfb\x09\xf7\x8f\xc1\x1d\x85\x8a\x1a\x26\xb7\x5b\xe8\xec\xcc\xc6\xf2\x9c\x1e\x0e\xd0\x21\x0a\xfc\x1b\xdd\x51\x1d\xd0\x21\x0a"
+"\xfb\x08\xf7\x51\x25\x0a\xd0\xf8\xac\xf9\x31\x15\x72\x07\xc4\x86\xa2\x7b\x67\x1a\x7a\x84\x67\x7f\x60\x1e\x51\xfb\x65\x70\x29\x75"
+"\x59\x6d\x67\x19\x63\x69\x5f\x77\x54\x1b\x3f\x5d\xb1\xca\xa7\x8d\x95\xa5\xea\x1f\xdd\xf7\xc0\x9c\xc4\x9a\x97\xc9\x8e\x19\xa4\xfb"
+"\xcb\x72\x07\xd0\x81\x8f\x89\x70\x1a\x7f\x85\x6c\x82\x6a\x1e\x54\xfb\x62\x05\x74\x39\x80\x4f\x6a\x1a\x29\xe7\x47\xf7\x16\xc0\xb7"
+"\x95\xa0\xb5\x1e\x61\x57\x80\x74\x6d\x1a\x5c\xb8\x69\xc8\xbd\xba\xa8\xb9\xa5\x68\x1d\x80\x88\x7c\x1b\x63\x74\xa1\xb3\xb0\x96\xb4"
+"\x9d\xa5\x1f\xa4\xb1\x9b\xa3\x90\x96\x95\xa1\x97\xaf\x9f\xd1\xcd\xf7\x78\x18\xb3\xf7\x18\x92\x95\xc2\x96\x08\xa4\x07\x0e\x61\x60"
+"\x0a\x0e\x61\x60\x0a\xfb\x58\xf7\xb0\x15\x69\x6f\x70\x68\x68\xa8\x6e\xae\xad\xa6\xa7\xad\xae\x6e\xa8\x69\x1f\xf7\x59\x16\x68\xbc"
+"\x0a\x6f\xa8\x69\x1f\x0e\xec\xf7\x03\xf8\x1c\x15\x99\xaa\x93\x9c\x8f\x92\x47\x1d\x85\x6c\x87\x51\x0a\x8a\x7a\x8a\x87\x89\x73\x08"
+"\xf8\x5e\x53\x15\x4c\xf7\x71\x05\x89\x95\x89\x96\x93\xb8\x1d\x76\x42\xa0\x1f\xce\xfb\x91\x55\xfb\x61\x2f\x1d\x6b\x06\x86\x75\x05"
+"\xf7\xc5\xca\x1d\xc2\xf7\x60\xf7\x68\xf7\xad\xad\xb6\xa4\xa1\xa2\x92\x19\x22\x1d\xfb\x52\x20\x1d\x9e\x06\xa5\xa2\x78\x74\x7b\x84"
+"\x78\x7e\x7a\x1f\x0e\xd0\x21\x0a\xfb\xcf\xf7\xd4\x30\x0a\xd0\x21\x0a\x20\xf7\x6b\x15\x6b\x7c\x7e\x81\x74\x1b\x7f\x7c\x90\x96\x70"
+"\x1f\x9c\x63\x6a\x94\x92\x0a\xa6\x96\x88\x9e\x1b\xc7\xae\xaf\xde\xa1\x1f\x0e\xf7\x80\x2c\x0a\xfb\xf8\xdc\x15\x76\x0a\xf7\x80\x2c"
+"\x0a\xfb\xb9\xdc\x15\xbe\x06\x35\xf7\x42\x05\x3a\x2a\x0a\xf7\x80\x2c\x0a\xfc\x8b\xf7\x70\x15\x68\x6e\x6e\x66\x36\x1d\xf7\x80\x2c"
+"\x0a\xfc\x03\xdc\x15\xfb\x03\xf7\x27\x05\xa1\x7b\x77\x97\x77\x1b\x73\x76\x76\x73\x3d\x0a\xf7\x19\x32\x05\x0e\x91\xf8\x6d\xf7\x73"
+"\x15\xcb\xf7\x84\x05\x76\x06\x57\x78\x6a\x71\x5c\x1b\x40\x06\x54\x6d\x9f\xb0\x8f\x8b\x8f\x8c\x98\x1f\x76\x06\x4b\xfb\x84\x05\xa0"
+"\x06\x9e\xbf\xac\xa6\xba\x8a\x08\xd7\x06\xc1\xa9\x77\x66\x86\x8b\x87\x8a\x7f\x1f\xf7\x06\x65\x15\x5e\x55\x4c\x65\x60\x8c\x08\xfb"
+"\x62\x06\x57\x8a\x57\xb0\x73\xc2\x08\x79\x06\x79\xfb\x4d\x05\xf8\x5e\x06\xdc\xf7\x4d\x05\xe6\xf8\x71\x15\xfc\x6e\x06\x5f\xfb\x3b"
+"\x05\x9d\x06\xa7\xbc\xbe\xa9\xc1\x89\x08\xf7\x4e\x06\xce\x8d\xb9\x6e\x91\x59\x08\x9d\x06\x0e\x61\x2d\x0a\xf7\xf8\xf7\x25\x23\x1d"
+"\x61\x2d\x0a\xf7\xb7\xf7\x25\x8e\x0a\x61\x3f\x1d\xfb\x3c\xf9\x6a\x29\x1d\x61\x3f\x1d\xfb\x15\xf9\xf5\x2a\x1d\x61\xf8\xbd\xf7\x4a"
+"\x15\x72\x06\x20\xfb\x01\x4d\x6b\x20\x89\x08\x3c\x06\xf8\x76\xf8\xed\x05\xa1\xfc\x85\x07\x56\xfb\x30\x05\xac\x06\xb8\xdb\xd5\xb1"
+"\xf6\x8a\x08\xf1\x06\xfc\x72\xfc\xed\x85\x75\x05\xf8\x90\x06\x0e\x25\x1d\xf7\x3a\xf7\x96\x38\x0a\xd0\xf7\xf4\xf8\x20\x15\xbd\x79"
+"\x77\x9b\x60\x1b\xfb\x13\xfb\x29\xfb\x54\xfb\x38\x47\xbb\x59\xcc\xcf\x9d\x1d\x63\x71\xab\xbf\x9a\x8c\x97\x8f\x9f\x1f\xb2\x94\x05"
+"\xf7\x25\xac\xde\xce\xdd\x1a\xc2\x66\xab\x4d\x59\x6f\x7c\x59\x60\x1e\x9f\xcc\x24\x86\x05\x36\x68\x15\xa7\x9f\x73\x6b\x55\x6b\x23"
+"\x64\x47\x1f\x55\x6e\x6d\x72\x69\x1b\x6d\x77\xa5\xb3\x8d\x1f\x8e\xc5\xa5\xde\xb1\xce\x08\xc6\xac\xab\xa7\xab\x1b\xf7\x19\xfb\x50"
+"\x15\xf7\x1a\xb2\xb6\xcb\xbd\x1b\xa2\x95\x7e\x70\x51\x6d\x5b\x50\x66\x1f\x6c\x78\x75\x82\x6f\x87\x08\x82\xf7\xc2\xa6\x0a\x93\x0a"
+"\x0e\xf7\xef\xa9\x0a\x99\x79\x1d\x79\xf8\x19\xf9\x04\x15\xae\x06\xec\x8c\xbc\x63\x96\x35\x08\x9e\x06\xb7\xf7\x37\x05\xfc\x5f\x20"
+"\x1d\xa7\x06\xa5\x8a\x9c\x7a\x72\x1a\x85\x8a\x85\xbf\x0a\x68\x88\x19\x7c\x20\x1d\xf7\xd6\x06\xf7\x0f\x39\x1d\x65\xa6\x69\x92\x20"
+"\x8e\x08\x80\x62\x15\xaf\x9f\x88\x82\x9c\x94\x0a\x0e\x99\x6f\x1d\x5a\x6c\x0a\x0e\xa9\xf7\x69\xf9\x2a\x15\x85\x75\x05\x99\x06\xb6"
+"\x9c\x7c\x65\x6e\x83\x61\x7a\x47\x1f\x6a\xfb\x13\x67\x2d\x5d\x3d\x08\x3b\x5d\x5e\x69\x50\x1b\x76\x06\x54\xfb\x60\x05\xa4\x06\xd6"
+"\xf7\x11\xd0\xb9\xf7\x04\x89\x08\xf7\x2d\x06\xf7\x04\xbb\x5f\x25\x88\x8b\x81\x8a\x81\x1f\xa4\x06\xc1\xf7\x60\x05\x50\x06\x75\x83"
+"\x90\x9a\x8f\x8b\x8b\x8f\x98\x1f\xf7\x19\xf8\x8a\xaa\x0a\x22\x1d\xfb\xfb\xfd\x05\x15\xfb\x87\x06\xdf\xd8\xe4\xf7\x7c\xbe\xf7\xaa"
+"\x08\xf7\x43\x06\x0e\x99\xf7\xd3\xf7\xdf\x15\xc9\xa3\x1d\xd0\xf7\x96\x05\xbd\x72\x0a\x68\x75\x9a\xa3\x94\x8d\x96\x8e\x98\x1f\x0e"
+"\x99\xf7\xd2\xf7\xdf\x15\xca\xa3\x1d\xcf\xf7\x96\x05\xbe\x72\x0a\x67\x75\x9a\xa3\x93\x8d\x97\x8e\x98\x1f\xe5\xf9\x7e\xa1\x0a\xf7"
+"\x66\xbe\x1d\xf7\x9d\xf8\xd0\xf7\xce\x15\xd8\xfb\x74\x05\x8f\x7f\x8d\x7f\x80\x1a\x76\x7a\x7f\x6c\x1e\x86\x75\x05\xf7\x8a\x06\x91"
+"\xa1\x62\x8c\x79\xa1\x74\xd9\x19\x2c\xf7\xa4\xca\xc3\xa6\xa3\xba\xb8\x19\xf7\x01\xf2\x9a\x95\xc8\x92\x90\xa1\x18\xfb\x75\x06\x86"
+"\x75\x05\x96\x06\x9d\x97\x7e\x76\x5b\x39\x37\xfb\x2f\xfb\x01\x1f\x80\x06\xc3\xf7\x65\x98\xbc\xa1\x9d\xb5\x8a\x19\x22\x1d\xfb\x96"
+"\x20\x1d\x9a\x06\xab\x9d\x7d\x70\x83\x8a\x83\x86\x7b\x1f\x52\xfb\x6a\x05\x81\x06\x3e\xf7\x00\x5f\xe0\xb5\x1a\xa9\xa4\xa1\xad\x1e"
+"\x92\x21\x1d\xfb\x85\x06\x86\x75\x05\x96\x06\xc7\x89\xa9\x6e\xcf\xfb\x0b\xa0\x67\x96\x79\x9e\x6d\xfb\xc4\xfb\xdf\x18\x6e\x6c\x6c"
+"\x7a\x68\x86\x84\x75\x18\xf7\xa0\x21\x1d\x71\x8c\x84\x8f\x9c\x1a\x95\x90\x95\x98\x99\x1e\xf7\x69\xf7\x80\x05\x94\x06\x4f\xfb\x76"
+"\x7e\x5b\x78\x7a\x63\x8a\x33\x0a\xf7\x98\x21\x1d\x7b\x06\x65\x79\x98\xa7\x93\x8d\x97\x92\xa5\x1f\xc2\xf7\x61\x05\x0e\xfb\x24\xf7"
+"\x57\xf7\xea\x15\x9f\x06\xd6\xb0\x67\x43\xfb\x00\x47\x38\x33\x4a\x59\xb3\xde\x61\x1f\x6e\x7e\x9f\x59\x97\x75\xa4\x71\x19\x5e\xb5"
+"\xc2\x74\xcf\x1b\xf7\x24\xf7\x04\xf1\xf7\x15\xba\x7b\xb0\x6e\xa4\x1f\x78\x9a\x7a\x92\x5e\x95\xc1\x93\xa4\x94\xa8\xa0\x08\xb6\xaa"
+"\xa4\xbe\xc2\x1a\xe0\x4a\xc3\x27\x70\x69\x86\x84\x72\x1e\x83\x70\x8b\x8b\x82\x1b\x7c\x84\x90\x9a\x88\x1f\x77\x06\x61\xfb\x43\x05"
+"\x9e\x06\xe8\xbe\xbf\xb8\xc3\x1b\xb5\xa0\x6f\x52\x49\x74\x56\x62\x6f\x1f\x77\x6d\x70\x84\x53\x1b\x0e\xf7\x11\xf7\x9b\x4e\x1d\x0e"
+"\xf7\x11\xf7\x99\x4e\x1d\xfb\x41\xf7\xb5\x15\x67\xb3\x1d\x1f\x8c\x87\x8b\x86\x89\x1a\x73\x6f\x7a\x65\x6c\x71\x98\x9a\x8f\x8c\x8f"
+"\x8f\x94\x1e\x91\x99\x8d\x92\x92\x1a\xa0\x77\x9b\x70\x1e\x0e\xa4\xf7\xcc\xf7\xf5\x15\xdc\xfb\x97\x05\x8f\x7f\x8d\x80\x82\x1a\x73"
+"\x7b\x7b\x74\x49\x0a\xfb\x04\xf7\xdc\xf7\x39\xf7\x2d\xc3\xb8\xb2\x9e\xb9\x8f\x19\x91\x3b\x0a\x9b\x98\x7c\x79\x76\x7b\x6f\x72\x73"
+"\x1f\xfb\x4f\xfb\x43\xc4\xf7\x6b\x98\xb8\x9c\x9d\xae\x8e\x19\xa1\x28\x1d\xfb\xb5\x45\x0a\xf7\xa9\x21\x1d\x6c\x06\x71\x7a\x9c\xa4"
+"\x91\x8c\x91\x8d\x92\x1f\x0e\xac\xf8\x94\xf9\x04\x15\xfb\x23\xfc\xac\x34\x0a\x67\x1d\x70\x8c\x7b\x9b\xa5\x1a\x93\x8b\x8f\x8d\x91"
+"\x1e\xf7\x17\xf8\x7f\x2e\x1d\xfc\x7b\x06\x84\x75\x05\x99\x06\xaf\xa5\x73\x6b\x7c\x8a\x84\x80\x61\x1f\x73\x2f\x05\xfb\x9f\x45\x5a"
+"\xfb\x06\x60\x1b\x82\x84\x91\x95\x8a\x1f\xbb\x88\x7b\x9e\x66\x1b\x67\x72\x71\x65\x5c\xad\x6d\xc1\xf7\x04\xb7\xd8\xf7\xfe\xec\x1f"
+"\xbf\xf7\x58\x05\x0e\xf7\x80\x69\x0a\xf7\xb6\x06\xec\x1d\x93\x8c\x8f\x8c\x92\x53\x0a\xae\x8e\x19\x9c\x21\x1d\xfb\x59\x06\x0e\xf7"
+"\x11\x64\x0a\xfb\xbd\x52\x1d\x0e\xd0\xf8\x6e\xf9\x31\x15\x3b\x2f\x68\x53\x4b\x1f\x26\x33\x49\xfb\x22\xfb\x17\x1a\x4c\xa1\x4e\xb1"
+"\x61\x1e\x65\xae\xc6\x75\xcd\x1b\xf7\x6a\xf7\x56\xf7\x6a\xf7\x80\xf7\x22\x36\xe1\xfb\x20\x1f\x7f\x63\x15\xc4\xb0\x5a\x3f\xfb\x09"
+"\x55\xfb\x4b\x4d\x2c\x1f\x5b\x6b\x57\x6c\x5a\xf3\x1d\xc2\xe8\x1f\xca\xb1\xbe\xad\xc4\x1b\x0e\xf7\x11\xf7\x4c\xf9\x2a\x15\x82\x0a"
+"\xf7\xa5\x06\xb5\x1d\xf7\x78\x06\xfb\x22\xfc\xac\x7e\x4e\x0a\xf7\xa6\x21\x1d\x6e\xb6\x0a\xf7\x16\xf8\x7f\xaa\x0a\x22\x1d\x0e\x61"
+"\x97\x0a\xfb\x8c\x06\x86\x75\x05\xa6\x06\xa6\x9b\x7a\x71\x84\x8a\x86\x8a\x85\x1f\xfb\x17\xfc\x7f\x2f\x1d\x87\x20\x1d\xf7\xac\x21"
+"\x1d\x64\x06\x71\x7a\x9c\xa5\x8f\x8c\x92\x8d\x92\x1f\xf7\x24\xf8\xb1\x15\xcb\x88\xac\x6b\x4f\x1a\x66\x7d\x57\x78\x66\x1e\x5d\x72"
+"\x6e\x78\x5a\x1b\x7f\x83\x8c\x8f\x7b\x1f\x0e\x99\xf8\xcf\xf7\x1f\x15\x48\x5c\x49\x67\x42\x1b\x23\x4c\xd3\xf7\x0e\xf7\x6d\xf7\x19"
+"\xf7\x55\xf7\x28\xd9\xc1\x53\x3a\x88\x8b\x81\x8a\x84\x1f\x9d\x06\xbe\xf7\x54\x05\x79\x06\x7a\x84\x7f\x83\x78\x1b\x7f\x84\x8c\x97"
+"\x5d\x1f\x93\x68\x73\x8f\x75\x1b\xfb\x0a\xfb\x17\x4b\x2b\x3b\x1f\x51\x45\x6e\x3b\x31\x1a\xfb\x3c\xf2\xfb\x09\xf7\x2a\xf6\xde\xb9"
+"\xe7\xc7\x1e\x0e\x61\xf8\x6f\xf9\x00\x15\xad\x89\x9a\x86\x9f\x7d\x08\xa3\x78\x9a\x6f\x6e\x1a\x85\x8a\x82\x8a\x81\x1e\xa5\x06\xb6"
+"\xf7\x38\x05\xfc\x6a\x06\x5f\x42\x0a\x0e\xb6\xf8\x43\xf7\xb0\x15\x45\xf7\xa5\x05\x88\x94\x88\xa3\x93\x1a\xa6\xa0\x9a\xb2\x1e\x92"
+"\x06\x92\xa1\x05\xfb\xab\x06\x85\x75\xbf\x86\x98\x7a\xa3\x2a\x19\xf2\xfc\x0c\x6b\x5a\x79\x77\x6f\x77\x19\x80\x7c\x7e\x85\x85\x1b"
+"\x82\x85\x90\x94\x90\x8b\x8c\x90\x97\x1f\x8d\x92\x8c\x90\x90\x1a\xa9\x6f\xa3\x67\x63\x6f\x6e\x61\x58\xae\x6d\xc8\xbe\xb5\x9d\xb4"
+"\xb2\x1e\xa8\xa8\x9a\x9e\xd0\xf0\xf7\x7e\xf7\xeb\x18\xbd\xd2\xab\xa6\xb4\x8c\x92\xa1\x18\xfb\x68\x20\x1d\x97\x06\xa3\x9a\x7c\x73"
+"\x74\x7f\x6d\x78\x6e\x1f\x0e\xf7\x59\xf8\x2b\xf9\x48\x15\x55\x0a\x9d\x7b\x73\x1a\x86\x8a\x83\x89\x83\x1e\x36\x88\x57\x84\x63\x7d"
+"\x08\xfb\x19\x5d\x3e\xa7\x0a\x7e\x5b\x7b\x7b\x67\x87\xdc\x1d\xf7\x9f\x21\x1d\x6e\x06\x72\x8c\x79\x9b\xa3\x1a\x91\x8d\x94\x8d\x95"
+"\x1e\xe1\x8e\xb3\x90\xb9\x9b\x08\xf7\x18\xb7\xd8\xf5\xf7\x1c\x1a\xf7\x1e\x34\xe3\xfb\x28\x97\x1e\x97\xb6\x9d\x9d\xcc\x1d\xbc\xe6"
+"\x1a\xf7\x03\xba\xf7\x10\xcc\xc4\x1e\xac\xa9\xa9\x95\xcb\x90\x08\xf7\x12\x16\xb5\x81\x97\x85\x9b\x74\x08\xa1\x6d\x95\x66\x5a\x1a"
+"\xfb\x02\x5e\xfb\x09\x4b\x51\x1e\x65\x69\x6d\x7f\x54\x88\x08\x0e\x99\xaf\x0a\x6f\x77\x76\x85\x1d\x96\x1a\xa4\x9a\x9e\x9f\x1e\x99"
+"\x28\x1d\xfb\x9b\x4b\x0a\xe3\xfb\x92\x18\xfb\x33\xfb\x43\x54\x4c\x60\x69\x67\x82\x33\x0a\xf7\x61\x21\x1d\x7e\x06\x6a\x79\x97\xa2"
+"\x9b\x94\x9c\xa3\xa6\x1f\x0e\xf7\x11\xf7\x74\xb0\x15\x8d\x1d\xf8\x34\x06\xf7\x04\xbb\x5f\x25\x1f\x74\xa3\x07\xc1\xf7\x60\x05\x50"
+"\x06\x75\x84\x8f\x9b\x8f\x8c\x91\x8d\x92\x1f\xf7\x19\xf8\x8a\x98\xb8\x9c\x47\x0a\xfb\x24\xfc\xb2\x05\x0e\xea\xf8\x49\xe3\x15\x7f"
+"\x5e\x7a\x79\x68\x88\x08\x67\x1d\x71\x8c\x7a\x9b\xa4\x1a\x93\x8c\x8f\x8c\x92\x53\x0a\xae\x8e\x19\x97\x06\x68\x0a\xc0\x64\xec\xc2"
+"\xb3\x93\xa5\xd4\x1e\x0e\xf8\x6d\xf7\x7b\xb0\x15\xf7\x23\xf8\xad\x98\x1d\xfc\x80\x7f\x5e\x7a\x7a\x3c\x0a\xfa\x58\x06\x4c\x1d\x70"
+"\x7b\x9c\xa5\x91\x8c\x90\x8c\x91\x1f\xf7\x17\xf8\x80\x7d\x1d\x0e\xf8\x6d\xf7\x54\xf9\x2a\x15\x86\x75\x05\xa0\x06\xa6\x8a\x9b\x7b"
+"\x71\x1a\x83\x4d\x1d\xfc\x80\x7f\x5e\x7a\x7a\x3c\x0a\xf9\x7e\x06\xf7\x04\xba\x5f\x21\x89\x8b\x83\x8a\x82\x1f\xa4\x06\xc2\xf7\x60"
+"\x05\x49\x06\x7b\x84\x91\x96\x91\x8c\x8e\x8e\x99\x1f\xf7\x19\xf8\x87\x7d\x1d\xfb\x68\x06\xf7\x23\xf8\xad\x2e\x1d\x0e\xf6\xf7\x61"
+"\xf9\x2a\x15\x60\xfb\x36\x05\x9e\x06\xbd\xe4\xbd\xad\xe0\x8d\xfb\x23\xfc\xad\x18\x7f\x5e\x79\x79\x68\x88\x08\x7c\x20\x1d\xf7\xd6"
+"\x06\xf7\x0f\x39\x1d\x65\xa6\x69\x92\x20\x8e\xc0\xf7\x5e\x18\x98\xb8\x9c\x9d\xae\x8e\x08\x97\x21\x1d\xfb\x27\xfb\xdf\x46\x0a\x0e"
+"\xf7\xd0\xf8\x4c\xf9\x2a\x15\xfb\xa5\x06\x71\x0a\xf7\x0f\x39\x1d\x65\xa6\x69\x92\x20\x8e\xc0\xf7\x5e\x18\x91\x9b\x94\xaa\x9e\x9b"
+"\xaa\x8e\x19\x97\x06\xfb\x21\xfb\xc9\x46\x0a\xf9\x16\x7a\x15\x6e\x06\x71\x8c\x7a\x9b\xa5\x1a\x90\x8c\x92\x8d\x91\x1e\xf7\x16\xf8"
+"\x7f\xae\x1d\x84\xa2\x1d\x84\x20\x1d\xf7\xa5\x06\x0e\x78\xf8\x50\xf9\x2a\x15\xfb\xa5\x06\x71\x0a\xf7\x0f\x39\x1d\x66\xa5\x6b\x92"
+"\xfb\x02\x8f\xc0\xf7\x5e\x18\x91\x9b\x94\xaa\x9e\x9b\xaa\x8e\x19\x97\x06\xfb\x21\xfb\xc9\x46\x0a\x0e\x89\xf8\x5b\xf7\xd8\x15\x70"
+"\xfb\x01\x79\x5c\x62\x50\x08\x56\x66\x5c\x6f\x55\x1b\x5d\x5c\xa0\xaf\x66\x1f\x72\xa4\x7b\xa1\x71\xbe\x74\x80\x18\xa5\x4a\x9b\x6f"
+"\xa6\x6e\x08\x5f\xb4\xbb\x78\xcf\x1b\xf7\x68\xf7\x44\xf7\x5b\xf7\x84\xda\x77\xc8\x63\xb6\x1f\xb5\x64\x52\x9f\x3a\x1b\x69\x6d\x88"
+"\x83\x62\x1f\x86\x73\x82\x8a\x82\x1b\x7b\x85\x8f\x9c\x86\x1f\x77\x06\x5f\xfb\x5c\x05\xa0\x06\xa9\xc0\x9c\xa1\xaa\xa6\x08\xaf\xb3"
+"\xb7\x9d\xb8\x1b\xd1\xaf\x5b\x2c\x64\x87\x6f\x7d\x4f\x1f\x3c\x06\x40\x77\x9f\xd6\x88\x1f\x77\x06\x54\xfb\x7f\x05\x9f\x06\xab\xd5"
+"\xb4\xa9\xd0\x8a\x08\x0e\xf8\x27\xf8\x34\xf7\xd5\x15\x82\x67\x87\x6e\x6b\x1a\xfb\x25\xdf\x33\xf7\x1e\xf7\x68\xf7\x57\xf7\x6b\xf7"
+"\x7f\xf7\x21\x35\xe2\xfb\x1f\x21\xfb\x00\x55\x2f\x40\x1e\x64\x5b\x6a\x51\x79\x54\x08\xfb\x12\x4a\x0a\xfb\xbd\x52\x1d\xca\xf7\x82"
+"\x05\xf8\x8b\xf7\xc8\x15\xc5\xb0\x5a\x3e\xfb\x08\x55\xfb\x49\x4c\x2b\x1f\x5a\x6c\x57\x6c\x59\xf3\x1d\xc3\xe8\x1f\xca\xb0\xbf\xad"
+"\xc3\x1b\x0e\xaf\xf8\xce\x16\x9b\x0a\x98\xb8\x9c\x32\x0a\xfb\x9f\x06\xfb\x40\x22\x3f\xfb\x11\x65\x97\x69\xa0\x73\x1f\x9f\x74\xa0"
+"\x7e\xbf\x75\x44\x7c\x81\x85\x5d\x4a\x27\xfb\x20\x18\x6b\x5f\x76\x7d\x67\x8a\x08\x87\x06\x84\x75\x05\xf7\x54\x06\xf7\x51\xf7\x9e"
+"\x05\xa3\x9c\x9b\x94\xa4\x1b\x8f\x8f\x8b\x8a\x94\x1f\x53\xfb\x66\x2f\x1d\x84\x20\x1d\xf7\x25\xf7\xe9\x15\x89\x81\x87\x8a\x84\x1b"
+"\x51\x63\xbb\xd1\xe5\xd0\xd8\xdb\x97\x95\x89\x86\xa0\x1f\x0e\xfb\x4b\xf7\x5c\xf9\x2a\x15\x86\x75\x05\xa1\x06\xa5\x8a\x9c\x7a\x71"
+"\x1a\x84\x8a\x86\x8a\x85\x1e\xfb\x14\xfc\x7d\x7e\x5d\x7a\x7a\x68\x87\x19\xac\x0a\x7a\x9c\xa4\x1a\x94\x8b\x8e\x8d\x92\x1e\xf7\x21"
+"\xf8\xb0\x05\xf7\x96\x06\xae\xf7\x1c\x05\x74\x06\x6c\x45\x5c\x6c\x43\x8e\x08\x0e\xf7\x39\xf8\x7f\xf9\x00\x15\xc3\x06\xb2\xa3\x85"
+"\x7b\xa0\x1f\xa4\x7a\x9a\x6e\x6e\x1a\x84\x8a\x83\x8a\x81\x1e\xa5\x06\xb6\xf7\x38\x05\xfc\xb2\x06\x5f\xa4\x1d\xf7\x71\x06\xde\xf7"
+"\xc9\x05\x94\xb1\xa7\x8f\xa8\x1b\xc8\xaa\x6b\x4b\x5d\x80\x5a\x77\x5e\x1f\x66\x7a\x76\x78\x72\x1b\x7f\x84\x92\x96\x92\x8c\x8e\x92"
+"\x91\x1f\x95\x97\x8f\x95\x99\x1a\xac\x75\xa0\x69\x67\x73\x71\x63\x52\xbb\x65\xd2\xf7\x13\xf3\xf7\x02\xf7\x19\xe3\x4a\xc0\xfb\x02"
+"\x5d\x64\x85\x7d\x51\x1e\x0e\x5a\x6c\x0a\xf8\x1e\xf9\x5f\x15\xf7\x29\xe1\x05\xaa\x9c\x93\x96\x9e\x1a\xa4\x75\xa0\x71\x79\xe9\x1d"
+"\x8f\xf9\x47\xf9\x37\x15\x77\x06\x79\x84\x7c\x81\x76\x1b\x82\x84\x8d\x92\x7a\x1f\x98\x69\x67\x91\x62\x1b\xfb\x01\xfb\x07\x58\x38"
+"\x3b\x1f\x42\x40\x64\x2b\x25\x1a\xfb\x3d\xf0\xfb\x02\xf7\x31\xd3\xca\xa1\xb5\xc1\x1e\xa7\xa2\x9c\x9e\xa9\xb8\x78\x9a\x18\x69\x5b"
+"\x77\x78\x67\x76\x08\x78\x69\x67\x81\x66\x1b\x24\x4c\xd8\xf7\x13\xa4\x8d\x9b\x91\xaf\x1f\xe7\x06\xcc\x8d\xa6\x71\x8d\x4a\x8c\x7f"
+"\x18\x9e\x06\xc9\xf7\x7e\x05\x78\x06\x48\x66\x5c\x6e\x45\x1b\x35\x06\xa7\xeb\x9f\xb4\xb5\xbd\x08\xc7\xbe\xc9\xad\xc6\x1b\xb3\xab"
+"\x7a\x6a\xa3\x1f\xa1\x6d\x93\x6f\x90\x55\x08\x9f\x06\x0e\x2a\xf8\xd0\xf9\x30\x15\x76\x06\x77\x83\x7b\x82\x70\x1b\x84\x7f\x8d\x8e"
+"\x7e\x1f\x9d\x46\x63\x92\x6b\x1b\xfb\x03\x3d\x42\x22\x49\xac\x51\xd6\x45\x1f\xc0\x5b\x97\x7f\x94\x7f\x08\x9e\x72\x94\x71\x72\x1a"
+"\x4c\x52\x52\x4b\x68\x60\xa0\xa8\x73\x1e\x70\xab\x77\xc2\xb6\x1a\x91\x8c\x95\x8c\x98\x1e\x72\x06\x59\xfb\x88\x05\xa4\x06\x9f\x97"
+"\x97\x92\xa0\x1b\x94\x94\x8a\x89\x93\x1f\x75\xe3\xa0\x87\xb4\x1b\xf7\x14\xef\xe0\xf7\x01\xc9\x70\xb9\x3b\xd4\x1f\x58\xb9\x7e\x99"
+"\x80\x9a\x08\x75\xa8\x80\xa9\xa7\x1a\xc6\xb3\xb7\xc2\xda\xcc\x43\x32\x87\x8b\x85\x8a\x84\x1e\xa2\x06\x0e\xfb\x9c\x7e\x1d\xfb\x9c"
+"\xf7\xb6\xa1\x15\x6f\x54\x0a\x94\x8b\x8e\x8d\x92\x1e\xf7\x17\xf8\x7f\x2e\x1d\xfb\xa3\x06\x86\x43\x1d\x4b\xf9\xe9\xa1\x0a\xf7\x65"
+"\xbe\x1d\xf7\x6a\xf9\x14\x15\xa9\x06\xa5\x9c\x7a\x71\x86\x8a\x84\x89\x85\x1f\xfb\x19\xfc\x8a\x05\x6a\x82\x80\x7d\x7b\x1b\x80\x82"
+"\x93\x95\x91\x8d\x90\x8e\x8f\x1f\x9b\xa3\x8e\x92\x9e\x1a\xab\x76\x9f\x6a\x68\x70\x6b\x61\x52\xba\x60\xca\xe5\xd6\xce\xf7\x00\xa7"
+"\x1e\xf7\x01\xf8\x2c\x4a\x1d\x93\x21\x1d\xfb\xa5\x06\x0e\xf7\x93\xf8\x8b\xf9\x04\x15\xfb\x23\xfc\xac\x34\x0a\x7b\x20\x1d\xf7\xd7"
+"\x06\xf7\x0e\x39\x1d\x65\xa6\x69\x92\x20\x8e\xc1\xf7\x5e\x18\x91\x9b\x93\xaa\x9f\x9b\xa9\x8e\x19\x97\x21\x1d\xfc\x77\x06\x84\x75"
+"\x05\x99\x06\xaf\xa5\x73\x6a\x7e\x89\x80\x81\x64\x1f\x73\x2f\x05\xfb\xa1\x44\x5c\xfb\x04\x5e\x1b\x81\x85\x92\x9b\x8a\x1f\xb2\x8a"
+"\x77\xa1\x69\x1b\x67\x72\x71\x65\x5c\xad\x6c\xc1\xf7\x04\xb7\xd8\xf7\xfe\xec\x1f\xbf\xf7\x58\x05\xf7\x62\xfb\xb9\x15\xaf\x9f\x88"
+"\x82\x9c\x1f\xaa\x7c\xa0\x64\x61\x1a\x61\x7b\x57\x75\x6b\x1e\x61\x6f\x61\x76\x57\x1b\x7d\x82\x8c\x8f\x77\x1f\x0e\xf7\xd7\xf9\xbe"
+"\xf9\x2a\x15\xfb\xa3\x20\x1d\xa5\x06\xa6\x9b\x7a\x71\x83\x8b\x87\x89\x85\x1f\x51\xfb\x6d\x05\xfb\x7a\x4a\x0a\xfb\xbd\x06\x86\xb6"
+"\x1d\x7a\x79\x68\x88\x19\x67\x1d\x71\x8c\x7a\x9c\xa4\x1a\x93\x8b\x8f\x8d\x91\x1e\xca\xf7\x82\x05\xf7\x7a\x06\x4d\xfb\x7d\x34\x0a"
+"\x67\x20\x1d\xf7\xeb\x06\xf7\x0d\xed\xe4\xf7\x04\xbb\x6f\xbb\x5d\xa9\x1f\x65\xa4\x69\x92\xfb\x00\x8e\xc4\xf7\x68\x18\x91\x9b\x94"
+"\xaa\x9d\x9b\xaa\x8e\x19\x97\x06\xfb\x24\xfb\xd2\x15\x9a\x06\xd1\xb5\x64\x49\x64\x7c\x59\x75\x6c\x1f\x61\x6f\x61\x76\x57\x1b\x7d"
+"\x82\x8c\x8f\x77\x1f\x0e\xf7\x32\xf8\x5f\xf9\x00\x15\xc9\x06\xb0\xa0\x85\x7c\x9f\x1f\xa4\x79\x9a\x6e\x6e\x1a\x84\x8a\x83\x8a\x81"
+"\x1e\xa3\x06\xb6\xf7\x38\x05\xfc\x96\x06\x45\x42\x0a\xc8\xf7\x76\x05\x96\xbf\xa6\x8f\xab\x1b\xbf\xa8\x77\x67\x7c\x89\x81\x7d\x58"
+"\x1f\x70\x23\x7e\x4e\x0a\xf7\xa6\x28\x1d\x6f\x54\x0a\x92\x8c\x91\x8c\x91\x1e\xad\xf7\x13\x05\x91\xa2\x8e\x9f\x9e\x1a\xd0\x53\xb0"
+"\x20\x5c\x6b\x86\x7a\x46\x1e\x0e\xa4\xf7\xcc\xf7\xf5\x15\xdc\xfb\x97\x05\x91\x7b\x8c\x84\x82\x1a\x73\x7b\x7b\x73\x49\x0a\xfb\x03"
+"\xf7\xdc\xf7\x38\xf7\x2d\xc3\xb8\xb2\x9d\xba\x90\x19\x90\x3b\x0a\x9c\x98\x7c\x78\x77\x7b\x6f\x71\x73\x1f\xfb\x4e\xfb\x43\xc4\xf7"
+"\x6b\x4a\x1d\xa1\x21\x1d\xfb\xb1\x45\x0a\xf7\xa5\x21\x1d\x6c\x06\x71\x7a\x9c\xa5\x93\x8b\x8f\x8d\x91\x1f\xf7\x92\xf9\x0c\x15\xf7"
+"\x2a\xe1\x05\xa8\x9c\x94\x96\x9e\x1a\xa4\x75\xa0\x71\x7a\xe9\x1d\xb6\xf8\xd2\xf9\xb0\x15\x73\x6f\x7a\x65\x6d\x71\x98\x9a\x8f\x8c"
+"\x8d\x8f\x96\x1e\x90\x97\x8d\x94\x92\x1a\xa0\x77\x9b\x70\x68\xb3\x1d\x1e\xfb\x23\xfc\x9f\x15\x45\xf7\xa5\x05\x88\x94\x88\xa3\x93"
+"\x1a\xa6\xa0\x9a\xb2\x1e\x92\x06\x92\xa1\x05\xfb\xab\x06\x85\x75\xbf\x86\x98\x7a\xa3\x2a\x19\xf2\xfc\x0c\x6b\x5a\x79\x77\x6f\x77"
+"\x19\x80\x7c\x7e\x85\x85\x1b\x82\x85\x90\x94\x90\x8b\x8c\x90\x97\x1f\x8d\x92\x8c\x90\x90\x1a\xa9\x6f\xa3\x67\x63\x6f\x6e\x61\x58"
+"\xae\x6d\xc8\xbe\xb5\x9d\xb4\xb2\x1e\xa8\xa8\x9a\x9e\xd0\xf0\xf7\x7e\xf7\xeb\x18\xbd\xd2\xab\xa6\xb4\x8c\x92\xa1\x18\xfb\x68\x20"
+"\x1d\x97\x06\xa3\x9a\x7c\x73\x74\x7f\x6d\x78\x6e\x1f\x0e\xf8\x57\xf8\x50\x15\xfb\x09\x06\x7c\x55\x05\xb9\x84\x7a\x9e\x68\x1b\x61"
+"\x5f\x6f\x55\x5f\x1f\x50\x43\x68\x2b\x2f\x1a\x45\xae\x56\xba\xb9\xac\xad\xf3\xc1\x1e\x84\x6c\x89\x7a\x74\x1a\x5d\x9f\x76\xb9\xa8"
+"\xaa\x97\xa0\xa2\x1e\x9f\x9d\x99\xa0\xa3\xb8\x79\x97\x18\x5d\x73\x79\x78\x78\x1b\x83\x85\x92\x94\x94\x8d\x95\x93\xa9\x1f\x30\xf7"
+"\xc4\x15\x9c\x98\x76\x6e\x56\x7b\x52\x6a\x44\x1f\x39\x65\x75\x6d\x74\x1b\x79\x81\x9d\xaa\xb5\xa8\xf4\xa8\xca\x1f\xc5\xa6\xa1\xa5"
+"\xa2\x1b\x0e\xfb\x2e\xf7\x3b\xf8\x0c\x15\xbe\xf7\x0d\xa4\xa2\xde\x90\xf7\x1a\x8e\xb6\xaa\xad\xf7\x0c\x08\x71\x06\x7e\x6c\x81\x86"
+"\x5b\x8a\x67\x8c\x6d\x89\x76\x87\x47\x80\x51\x58\x53\x29\x08\x55\x2b\x60\xfb\x29\x2b\x1a\x36\xc3\x4e\xdb\xb8\xba\x9f\xb1\xbb\x1e"
+"\xd6\xc7\xb9\xec\xeb\x1a\xe5\x56\xcb\x40\x4c\x56\x71\x4f\x4c\x1e\xf7\x33\xbf\x7e\x0a\xfb\x62\xf7\xb1\xf7\x82\x15\xbc\x9c\x9b\x92"
+"\x9d\x97\x08\xb3\xa5\xa1\xad\xb0\x1a\xc0\x62\xaa\x45\xfb\x29\xfb\x12\xfb\x20\xfb\x3a\x2a\xc9\x4d\xec\xee\xde\xd4\xe2\xc4\x68\xaa"
+"\x4a\x1e\x20\x16\xf7\x15\xb4\xad\xc0\xb7\x1b\xa0\x99\x7b\x72\x6f\x7c\x6e\x6f\x72\x1f\x71\x73\x71\x7e\x50\x75\x08\x82\x6a\x15\x96"
+"\xa7\x98\x8e\x9b\x1b\xa7\x99\x7a\x69\x39\x6b\x4b\x62\x70\x7b\xa2\xb1\xa8\x8f\xa7\x98\xcc\x1f\x0e\xfb\xb0\xf5\x7c\x1d\x0e\xfb\x31"
+"\xf7\x3e\xf9\x13\x15\x94\xa7\x9e\x8f\xa1\x1b\xde\xbd\x44\xfb\x0a\x7b\x8a\x7f\x89\x71\x1f\xac\x7c\x78\x98\x68\x1b\xfb\x10\xfb\x06"
+"\xfb\x20\xfb\x2b\xfb\x01\xbd\x4a\xdf\xc4\xc3\xa6\xb8\xb4\x1f\xd4\xde\xb6\xf7\x12\xf7\x17\x1a\xf7\x43\x40\xf3\xfb\x13\x6f\x74\x88"
+"\x82\x68\x1e\xf7\x11\xfb\x8c\x15\xa5\x9a\x78\x68\x4e\x70\xfb\x08\x6a\x39\x1f\x51\x73\x73\x72\x6a\x1b\x71\x7c\xa1\xb0\xbc\x9d\xdd"
+"\xab\xeb\x1f\xd8\xa5\xa6\xac\xb1\x1b\x0e\xfb\x65\x76\x1d\x0e\xfb\x65\x76\x1d\xab\xf8\x54\x15\x3a\x0a\xaf\x6d\xaa\x67\x1f\xf7\x66"
+"\x16\x3a\x0a\xb0\x6d\xa9\x67\x1f\x0e\xf7\xbf\xf8\x6d\x16\xa3\xe5\xba\xe0\xe0\xf4\x08\x69\x4a\x80\x67\x5c\x1a\x35\xb5\x53\xcb\xc8"
+"\xb9\xad\xe2\xc4\x1e\x7b\x96\x05\x59\x63\x72\x78\x70\x1b\x68\x74\xb2\xc8\xf7\x0f\xcb\xf7\x27\xc1\x98\x95\x84\x81\x84\x88\x88\x7b"
+"\x80\x1f\x7e\x83\x86\x81\x7d\x1a\x70\x9e\x79\xa6\xad\xa3\xa6\xb1\xb9\x65\xaf\x59\x45\x32\x39\xfb\x40\xfb\x08\x1e\xcb\xf7\x87\x05"
+"\x26\x06\x75\x36\x5e\x3a\x37\x23\x08\xa9\xcd\x94\xaa\xb6\x1a\xdf\x5f\xc4\x4c\x4f\x5e\x69\x35\x52\x1e\x9a\x80\x05\xb9\xac\xa9\xa2"
+"\xa7\x1b\xaf\xa2\x64\x4f\xfb\x0a\x4c\xfb\x2e\x5a\x80\x80\x95\x95\x90\x8e\x8f\x92\x90\x1f\x99\x95\x90\x95\x9c\x1a\xa5\x78\x9e\x71"
+"\x6a\x72\x6e\x66\x5d\xb1\x67\xbc\xd5\xeb\xe4\xf7\x3d\xf6\x1e\x49\xfb\x8c\x05\x0e\xfb\x9b\xf7\x1e\xf7\x77\x15\x8c\x96\x90\x8b\x95"
+"\x1b\xb7\x99\x7e\x65\x41\x64\x54\x57\x65\x70\x9e\xbc\x6b\x1f\x76\x7e\x05\x3b\xae\xba\x6a\xd9\x1b\xea\xd0\xcb\xe2\xc7\x6d\xaa\x47"
+"\x96\x1f\xe7\x9a\xb1\xac\xcd\x1a\xcc\x5d\xac\x2f\x61\x6a\x84\x7d\x70\x1e\x67\x77\x75\x6b\x6c\x1a\x6e\x9e\x78\xa6\xa4\xa0\x9d\xa1"
+"\x94\x88\x94\x84\x94\x1e\x7f\x99\x8a\x8d\x92\x1a\x9c\xab\x99\xaf\xb6\xa0\x78\x67\x67\x7b\x66\x73\x79\x1e\x80\x7d\x77\x85\x71\x1b"
+"\x83\x86\x8b\x8d\x80\x1f\x0e\x2a\x72\x1d\x0e\x2a\xf8\x2d\xf8\xf6\x15\x8c\x87\x8b\x88\x88\x1a\x77\x70\x7c\x68\x6f\x76\x96\x9a\x8e"
+"\x8d\x91\x8c\x8f\x1e\x93\x9a\x8b\x8b\x93\x1a\x9f\x7b\x98\x73\x6c\x74\x73\x6c\x5e\xb9\x71\xda\xe6\xc7\xad\xbf\xa4\x7c\x9a\x73\x72"
+"\x78\x79\x74\x1e\xe6\xfb\x43\x15\x77\x1d\xc4\xbf\xb8\xde\xb2\x1e\x77\x93\x05\x5e\x76\x79\x71\x7f\x1b\x87\x88\x8f\x90\x90\x8c\x91"
+"\x90\x9c\x1f\x0e\xfb\x26\x5b\x0a\x0e\xfb\x20\xf8\x58\xf8\x50\x15\x46\x06\xfb\x12\x8c\x46\x32\x52\xfb\x83\x08\x62\x83\x85\x80\x80"
+"\x1b\x85\x88\x8e\x94\x87\x1f\x9e\x81\x7f\x93\x77\x1b\x6d\x77\x76\x6b\x66\xa5\x73\xb2\xa3\xa1\x94\x9c\x97\x1f\x9c\xa0\x95\xa5\xa8"
+"\xed\x08\xf7\x32\xb8\xac\xc2\xba\x1b\x95\x06\x43\xfb\xa7\x05\x86\x76\x89\x7e\x7d\x1a\x68\xa6\x71\xb2\xbc\xb4\xad\xd9\xb8\x1e\x7a"
+"\x96\x05\x66\x77\x7a\x7a\x7b\x1b\x83\x87\x8f\x93\x90\x8d\x93\x8e\x9a\x1f\x0e\xab\xf8\x87\xf7\xed\x15\x4b\xfb\x8c\x05\x85\x76\x89"
+"\x7d\x7f\x1a\x68\xa6\x72\xb1\xbd\xb4\xac\xd9\xb9\x1e\x79\x96\x05\x66\x77\x79\x79\x7c\x1b\x83\x87\x8f\x94\x8f\x8d\x93\x8e\x9a\x1f"
+"\xe7\xf7\xef\x05\xfb\x14\x06\xfb\x39\xfb\x9e\x69\xf7\xac\xfb\x57\x6e\x85\x75\x05\x92\x06\xa5\x99\x7e\x72\x83\x8a\x82\x89\x84\x1f"
+"\x54\xfb\x63\x7d\x55\x05\x7f\x87\x85\x85\x83\x1b\x86\x88\x8e\x95\x87\x1f\x9d\x83\x7f\x93\x77\x1b\x6c\x76\x76\x6a\x66\xa4\x73\xb2"
+"\xc2\xa3\xab\xf7\x08\xa9\x1f\xcc\xf7\x8a\xba\xfc\x1d\x05\xa3\x06\x0e\x29\xf7\x85\xf7\x94\x15\xc0\xf7\x5e\xfb\x4a\x48\x1d\x75\x84"
+"\x8a\x84\x88\x81\x1f\x30\xfb\xf1\x05\xf7\x09\x06\xc6\xf7\x73\x05\xf6\x06\x6a\xfb\x12\x05\x88\x80\x89\x79\x7d\x1a\x63\xa3\x73\xb3"
+"\xbc\xb7\xaf\xd6\xb6\x1e\x79\x95\x05\x63\x73\x7d\x7d\x7d\x1b\x84\x85\x90\x93\x8d\x8b\x8c\x90\xa3\x1f\xe6\xf7\xef\x05\xfb\x09\x06"
+"\x59\xfb\x50\x05\x0e\xf7\xd8\xf8\x5b\x15\xfb\x1f\xfb\x16\xfb\x2b\xfb\x36\x30\xc1\x4e\xdc\xb1\xb1\x98\xa6\xb4\x1f\xe4\xc7\xc3\xf2"
+"\xf6\x1a\xe5\x55\xcc\x41\x1e\x77\x69\x7e\x0a\x2a\xf7\x3b\x16\xba\xf7\x47\x94\xaf\xa8\xc5\xb1\xc5\x19\xa2\x9a\x9b\x98\x98\x1b\x95"
+"\x91\x84\x80\x7e\x8b\x8b\x82\x68\x1f\x5a\xfb\x51\x05\x81\x64\x8b\x8a\x7c\x1a\x64\xa5\x6f\xae\xa5\xaa\x97\x9e\xa1\x1e\xa1\x9e\x98"
+"\x9e\xa4\xbb\x76\x98\x18\x5c\x72\x82\x80\x7d\x1b\x84\x87\x8f\x93\x91\x8c\x93\x8e\x94\x1f\xc6\xf7\x78\x05\x91\xa3\x8e\x9b\x9b\x1a"
+"\xb8\x71\xa8\x63\x53\x54\x53\xfb\x04\x54\x1e\xb7\xf7\x3f\xfb\x49\x72\x85\x74\x05\x96\x06\xa0\x99\x7c\x75\x84\x8a\x85\x88\x81\x1f"
+"\x30\xfb\xf2\x05\x0e\xf7\x33\x8a\x15\x84\xa0\x94\x89\x9a\x1b\xc1\xc9\xab\xc2\xbb\x1f\xc2\xc8\xac\xe6\xe4\x1a\xdf\x67\xc0\x53\x71"
+"\x7a\x83\x6d\x66\x1e\x86\x86\x83\x85\x84\x85\x97\xb7\x18\x72\x06\xfb\x33\x6d\x85\x76\x05\xab\x98\x80\x6d\x82\x8a\x83\x86\x79\x1f"
+"\x22\xfc\x25\x05\x5f\x7e\x75\x73\x6c\x1b\x81\x06\x86\x78\x05\xf7\x8d\x06\x8f\x9e\x05\x87\x06\x71\x72\xa3\xa5\x96\x8c\x94\x8e\x95"
+"\x1f\xf6\xf8\x2d\x15\xa7\x98\x9c\x98\xa3\x1b\xa5\x9c\x6f\x5e\x50\x79\x3b\x70\x4f\x1f\x4d\x6f\x6e\x6d\x6a\x1b\x7b\x82\x92\xa0\x7d"
+"\x1f\x0e\xfb\x65\xf7\xf9\xf7\x0d\x15\x5c\x6b\x69\x75\x61\x1b\x4f\x6b\xb3\xd5\xca\xa8\xe4\xb1\xc3\x1f\xac\xa1\xb0\xa0\xab\x1b\x9e"
+"\x9b\x82\x81\x87\x88\x86\x86\x87\x1f\x6f\x76\x85\x81\x75\x1a\x70\x9f\x75\xa4\xac\xa9\xaf\xb2\xbd\x61\xaf\x53\xfb\x14\xfb\x24\xfb"
+"\x3b\xfb\x27\x32\xc4\x4d\xdd\xd2\xca\xb1\xda\xc4\x1e\x0e\xf7\x11\xf7\x2e\x16\xb4\xf7\x2e\x92\xa7\xb4\xe4\x9d\xa6\x19\xb6\xa8\xaa"
+"\xa6\x9f\x1b\x95\x92\x83\x7f\x82\x88\x7b\x87\x7d\x1f\x35\xfb\xc9\x05\xf7\x0b\x06\xab\xf7\x0e\x05\xf7\x1e\xaf\xd0\xf7\x03\xbd\x1b"
+"\x93\x93\x83\x82\x84\x8b\x89\x85\x71\x1f\x4d\xfb\x7f\x05\x88\x7e\x89\x7e\x81\x1a\x6a\xa6\x72\xaf\xba\xb3\xaa\xd6\xbb\x1e\x7c\x97"
+"\x05\x65\x73\x7b\x7b\x7e\x1b\x83\x87\x90\x95\x91\x8b\x8b\x8f\x9b\x1f\xc7\xf7\x78\x05\x91\xa1\x8e\xa3\x9e\x1a\xb5\x71\xa8\x65\x4e"
+"\x4d\x4f\xfb\x0d\x4d\x1e\x95\xb7\x91\xb4\xab\x1a\xb0\x74\xa6\x6c\x5f\x5d\x6d\x54\x63\x1e\x74\x6c\x80\x79\x6d\x56\xbd\xf7\x52\x18"
+"\xfb\x4a\x4c\x0a\x85\x88\x81\x1f\x30\xfb\xf2\x05\x0e\xfb\x65\x74\x1d\x0e\xca\xf8\xad\xf9\x3b\x15\xfb\x4c\x6e\x85\x75\x05\x91\x06"
+"\xa5\x9a\x7e\x73\x84\x8a\x82\x88\x83\x1f\x63\xfb\x2e\x05\xaa\x74\x75\x96\x69\x1b\xfb\x05\xfb\x09\xfb\x29\xfb\x24\x5d\x96\x5e\x9e"
+"\x6c\x1f\x69\xa1\xa7\x7b\xb3\x1b\xaf\xa6\x94\x9f\xa2\x1f\x8f\x06\x72\x2d\x05\x48\x78\x79\x7b\x57\x1b\x82\x06\x85\x76\x05\xf7\xa1"
+"\x06\x91\xa0\x05\x5d\x7b\x95\xa8\x98\x8c\x8e\x92\xa7\x1f\xa5\xef\x05\x72\xa4\xa2\x81\xac\x1b\xf7\x07\xf7\x06\xf7\x25\xf7\x26\xf4"
+"\x5b\xd0\x41\x6a\x73\x82\x74\x70\x1f\x88\x06\xfb\x46\x79\x15\xa6\x9a\x77\x6a\x64\x6e\xfb\x0e\x72\x47\x1f\x4d\x74\x73\x70\x6b\x1b"
+"\x6f\x79\x9f\xac\xb9\xa5\xf7\x08\xa5\xce\x1f\xcb\xa3\xa3\xa4\xb0\x1b\xf7\x79\x16\xa8\x9b\x77\x67\x57\x72\xfb\x02\x70\x49\x1f\x4b"
+"\x70\x75\x74\x68\x1b\x70\x7b\x9f\xac\xb4\xa6\xf7\x07\xa6\xd3\x1f\xcb\xa3\xa2\xa5\xac\x1b\x0e\xf8\x34\xf7\x0a\x15\x6c\x7a\x77\x77"
+"\x7c\x1b\x7f\x7e\x95\x9a\x83\x1f\x81\xa0\x85\x9f\x70\xf0\x83\xa8\x18\xaa\xc7\x8b\x8b\x94\x9a\x08\x9d\x96\x97\x93\x9c\x1b\x90\x91"
+"\x8a\x8a\x8f\x1f\x82\xa8\x8b\x8b\x96\x1b\xa7\xa1\xa3\xa8\xa9\x71\xa2\x69\x69\x68\x70\x5e\x73\x1f\x5f\x38\x81\xb8\x86\x9c\x6b\xea"
+"\x19\xfb\x2f\x6b\x85\x75\x05\x8d\x94\x94\x8c\x91\x1b\xa6\xa2\x6f\x59\x97\x1f\xaf\xfb\x26\x61\x41\x05\x76\x7f\x7e\x80\x7e\x1b\x85"
+"\x85\x8c\x8e\x86\x1f\x99\x72\x88\x8c\x7e\x1b\x6c\x75\x74\x6b\x6a\xa0\x76\xae\xad\xb7\xab\xb8\xa5\x1f\xb8\xd9\x05\xfb\x10\xa9\xa0"
+"\x6c\xc5\x1b\xbb\xb1\xac\xdd\xb9\x1f\x0e\x2a\xf8\x68\x66\x0a\xb9\xab\xa5\xf1\xd9\x9a\x1d\xa9\xa2\x95\xa4\xaa\x1e\x79\x6a\x85\x7b"
+"\x76\x1a\x80\x8d\x84\x90\x7d\x1e\x90\x7f\x8c\x86\x83\x1a\x71\x7e\x7a\x6f\x82\x1e\x96\x73\xab\xb9\x0a\x99\x87\x96\x7e\xa0\x1e\x7e"
+"\x9e\x87\x95\x93\x1a\x9b\x90\x97\xad\xcd\x1e\x0e\xfb\x14\xf7\xab\xf8\x5e\x15\x8c\x1d\xbc\xb3\xab\xd9\xb9\x1e\x79\x95\x05\x68\x78"
+"\x79\x78\x7c\x1b\x82\x88\x8f\x95\x92\x8b\x8c\x90\x9d\x1f\xe7\xf7\xf0\x05\xfb\x0a\x06\x7e\x59\x05\x36\x74\x51\x3e\xe5\x1d\x0e\xf7"
+"\x48\xf9\x67\xf7\x05\x15\x67\x77\x7a\x79\x7c\x1b\x82\x88\x8f\x94\x91\x8c\x91\x8f\x99\x1f\xe6\xf7\xee\x05\xfb\x0a\x06\x6b\xfb\x0e"
+"\x78\x45\x5d\x2a\x62\x54\x19\x7c\x80\x7e\x82\x81\x1b\x83\x85\x92\x94\x90\x8d\x95\x8e\x94\x1f\x8c\x8e\x8d\x92\x8d\x95\xdc\xf7\xc8"
+"\x18\xfb\x09\x06\x6a\xfb\x0e\x79\x46\x5e\x2d\x5e\x50\x19\x7c\x80\x7f\x82\x81\x1b\x83\x87\x91\x96\x93\x8b\x8d\x94\xac\x1f\xdf\xf7"
+"\xd6\xfb\x4a\x71\x85\x74\x05\x8c\x90\x8f\x8b\x8d\x1b\xa0\x99\x7c\x75\x84\x8a\x83\x89\x82\x1f\x55\xfb\x5f\x05\x81\x63\x88\x7a\x77"
+"\x1a\x5c\xa6\x6b\xb2\xbd\xb6\xb3\xf5\xcc\x1e\x7f\x61\x87\x79\x77\x1a\x63\xa5\x71\xb3\xc2\xb5\xb1\xf7\x00\xcd\x1e\x7d\x5a\x88\x7a"
+"\x78\x1a\x68\xa6\x71\xb1\xbd\xb3\xac\xda\xb9\x1e\x0e\xf7\x48\xf7\xd4\xf8\x5e\x15\xfb\x4a\x48\x1d\x76\x84\x8a\x83\x88\x81\x1f\x56"
+"\xfb\x60\x05\x80\x60\x88\x7d\x77\x1a\x5d\xa6\x6b\xb1\xbf\xb8\xb4\xf4\xcb\x1e\x7e\x62\x87\x76\x79\x1a\x63\xa5\x71\xb3\xc3\xbb\xb5"
+"\xf3\xc8\x1e\x7d\x59\x88\x7a\x79\x1a\x67\xa7\x72\xb2\xa7\x9b\x92\xaa\xb1\x1e\x71\x5d\x89\x85\x74\x1a\x82\x8d\x83\x90\x7e\x1e\x90"
+"\x7f\x8c\x87\x83\x1a\x70\x7e\x7a\x70\x82\x1e\x96\x73\xab\x9a\x98\x94\x9c\x9c\x19\xa3\xa3\x98\xa8\xa4\x1a\x99\x85\x9a\x81\x9c\x1e"
+"\x7d\xa0\x88\x92\x96\x1a\x9d\x94\xa0\xa2\xaf\x1e\x7a\x96\x05\x66\x77\x79\x78\x7d\x1b\x82\x87\x90\x95\x91\x8c\x8f\x8f\x9a\x1f\xe6"
+"\xf7\xf0\x05\xfb\x0b\x06\x6b\xfb\x0d\x78\x44\x5d\x2a\x61\x52\x19\x7c\x80\x7e\x82\x81\x1b\x83\x85\x92\x95\x8f\x8b\x8b\x95\xb4\x1f"
+"\xdc\xf7\xc8\x05\xfb\x0a\x06\x6a\xfb\x0d\x05\x22\x70\x39\xfb\x24\x6a\x1b\x83\x87\x91\x96\x94\x8d\x98\x92\xa2\x1f\x0e\xfb\x12\xf8"
+"\x0a\xf8\x59\x15\x7e\x78\x81\x87\x7a\x1b\x79\x76\x8f\x98\x5f\x1f\x94\x6b\x81\x8d\x79\x1b\x69\x6e\x80\x74\x71\x1f\x7f\x81\x89\x89"
+"\x6f\x6e\x9d\x78\x18\xa3\x9d\x99\x93\x9f\x1b\x93\x96\x89\x87\x94\x1f\x7f\xad\x8f\x8a\x99\x1b\x9c\x93\x8d\x9a\xb5\x1f\x90\x8d\x97"
+"\x8f\x99\x90\x41\x5a\x6b\x6f\x6e\x65\x08\x67\x5b\x74\x4d\x59\x1a\x64\x9a\x61\xa4\x6f\x1e\x73\xa1\xad\x7e\xb2\x1b\xf7\x07\xe6\xdc"
+"\xf2\xd4\x64\xb9\x4e\x73\x77\x86\x7d\x66\x1f\xa0\xc7\xb7\xc9\xc0\xb5\x08\xfb\x17\xfb\x59\x15\x93\xa0\x94\x8d\x95\x1b\xa7\x9e\x70"
+"\x62\x36\x5e\x3d\x5b\x74\x7e\x9f\xac\xb2\x97\xbc\xa9\xdb\x1f\x0e\xb4\xf7\xb8\xf8\x5e\x15\xfb\x4a\x72\x84\x74\x05\x96\x06\xa0\x98"
+"\x7d\x76\x84\x8a\x85\x87\x7f\x1f\x55\xfb\x4c\x05\x86\x7c\x87\x6d\x7b\x1a\x47\xc0\x5c\xd9\xf7\x08\xe9\xe2\xf6\xd0\x67\xb5\x4f\x72"
+"\x84\x89\x79\x55\x1e\x81\x6b\x15\x91\xa0\x96\x8e\x94\x1b\xa4\x9b\x77\x6a\x65\x7d\x58\x77\x68\x1f\x68\x77\x76\x79\x74\x1b\x78\x7c"
+"\x9c\xa0\x95\x8d\x95\x91\xa1\x1f\xf7\xfd\xf7\xea\x15\x31\xfb\xed\x05\x86\x78\x89\x7c\x7d\x1a\x68\xa6\x71\xb2\xbc\xb4\xac\xda\xb8"
+"\x1e\x79\x96\x05\x67\x78\x7a\x79\x7b\x1b\x83\x87\x8f\x93\x91\x8d\x94\x8e\x98\x1f\xe6\xf7\xed\x05\x0e\xfb\x58\xf7\xa5\xf8\x5e\x15"
+"\xfb\x4a\x72\x85\x74\x05\x96\x06\xa0\x99\x7c\x75\x84\x8a\x87\x88\x7f\x1f\x5b\xfb\x4c\x05\x87\x7d\x88\x70\x7b\x1a\x45\xc3\x5a\xda"
+"\xf7\x06\xe5\xde\xf4\xd4\x64\xb7\x4b\x73\x85\x89\x79\x56\x1e\x82\x6b\x15\x91\x9f\x98\x8e\x94\x1b\xa6\x9b\x75\x67\x35\x5c\x35\x5c"
+"\x78\x7b\x9d\xa1\x95\x8b\x8b\x93\xa9\x1f\x0e\xfb\x82\x89\xe8\x15\x9f\x68\x96\x7c\x9c\x7c\x08\x72\xa6\xaf\x7e\xb1\x1b\xf7\x18\xf7"
+"\x05\xf7\x18\xf7\x30\xc2\x7d\xbc\x71\xaa\x1f\xa6\x75\x64\x9a\x5a\x1b\x25\x43\x5e\x4c\x6f\x9e\x78\xa6\xa4\x9f\x9e\xa1\x94\x88\x94"
+"\x84\x93\x1f\x7f\x9a\x8a\x8c\x92\x1a\x9d\xb1\x9b\xb6\xbc\xa1\x76\x5e\x71\x86\x6e\x80\x59\x1e\xfb\x1a\x06\x82\x6b\x05\xf7\x1b\x06"
+"\xfb\x26\x69\x69\x55\x50\x1b\x5b\x64\xa8\xc3\x6f\x1f\x0e\xd8\xf7\x40\x16\xc6\xf7\x73\x05\xd5\x06\x83\x6b\x88\x76\x71\x1a\x2d\xc0"
+"\x4f\xdf\xaf\xb2\x98\xa6\xb3\x1e\xe4\xc6\xc3\xf3\xf4\x1a\xe8\x56\xcb\x40\x25\x28\x3c\xfb\x0c\x5d\x1e\x3e\x06\xc0\xf7\x5e\xfb\x4a"
+"\x4c\x0a\x84\x88\x82\x1f\x30\xfb\xf2\x05\xf8\x7c\xf8\x39\x15\xa5\x9b\x76\x68\x4b\x6c\xfb\x15\x69\x3a\x1f\x5c\x77\x72\xdb\x1d\xc1"
+"\x9f\xaa\xa9\xae\x1b\x0e\xfb\x1e\xf8\x4f\xf7\x06\x15\x61\x72\x7f\x7f\x7e\x1b\x82\x86\x90\x94\x90\x8c\x8e\x8d\x96\x1f\x8c\x8f\x05"
+"\x8c\x8d\x8b\x8d\x8c\x1a\xe5\xf7\xea\x05\xfb\x5b\x06\x28\x4c\x59\x3d\x6e\x95\x71\x9d\x79\x1f\x9b\x7c\x9c\x84\xb3\x80\x3f\x83\x6e"
+"\x73\x64\x35\x08\x61\x78\x80\x7f\x7a\x1b\x7d\x80\x97\xa0\x84\x1f\x76\x82\x05\x54\xa3\xa0\x7a\xb8\x1b\xcb\xb5\xaf\xd9\xa7\x1f\xa7"
+"\xe2\x9e\x9f\xc2\x8a\x6e\xfb\x00\x18\x87\x7a\x88\x78\x7e\x1a\x66\xa7\x71\xb1\xbd\xb4\xad\xd9\xb7\x1e\xfb\x31\xf7\x1f\x15\x89\x81"
+"\x87\x8b\x85\x1b\x66\x74\xa6\xb8\xc8\xb3\xb3\xc9\x92\x90\x8b\x89\x95\x1f\x0e\xfb\xb0\xf7\x93\xf8\x2e\x15\xf7\x3d\x06\xa7\xed\x05"
+"\x78\x06\x73\x5d\x6f\x7b\x51\x8a\x08\xfb\x79\x06\x85\x77\x05\x99\x06\x9d\x97\x81\x7c\x88\x8a\x87\x8a\x88\x1f\x2e\xfb\xdf\x84\x70"
+"\x7f\x81\x74\x89\x19\x86\x06\x85\x77\x05\xf7\x68\x06\x91\x9f\x05\x78\x06\x79\x7e\x96\x9a\x8c\x1f\x8e\x8c\x8e\x8c\x8f\x1e\x0e\xfb"
+"\x16\xf7\xf1\xf9\x3b\x15\xfb\x4d\x6e\x86\x75\x05\x91\x06\xa3\x9b\x7d\x75\x80\x8a\x85\x83\x6e\x1f\x49\x06\x82\x68\x05\xcd\x06\xfb"
+"\x1a\xfc\x93\x05\xf7\x09\x06\xb1\xf7\x23\x9a\xc2\xb9\xe7\xb2\xbc\x19\x9b\x98\x9c\x96\x95\x1b\x95\x91\x81\x7d\x55\x5a\xfb\x72\x64"
+"\xfb\x0c\x1f\x44\x74\x7b\x70\x78\x1b\x84\x88\x8d\x90\x8e\x8c\x8d\x8e\x91\x1f\x8f\x92\x8d\x8f\x91\x1a\xa2\x78\x9e\x73\x70\x78\x78"
+"\x6f\x67\xa9\x73\xb9\xc8\xc0\xb4\xdf\xbb\x1e\xc9\xf7\x03\xc6\xf7\x61\xf7\x00\x1a\xc3\x75\xab\x63\x68\x68\x78\x66\x68\x1e\x75\x74"
+"\x7e\x77\x63\x48\xc6\xf7\x72\xe8\x1d\xfb\x98\xf7\x0a\x7c\x1d\xf7\x2d\xf7\x26\x15\xf7\x2a\xe3\x05\xa8\x9c\x94\x96\x9e\x1a\xa4\x75"
+"\xa1\x72\x79\x7b\x80\x64\x67\x1e\xfb\x0c\xfb\x18\x05\x0e\xfb\x82\xf7\x3a\xf7\x91\x15\xf7\x05\xad\xba\xc3\xc7\x1b\x9e\x9a\x82\x81"
+"\x87\x88\x86\x86\x88\x1f\x70\x76\x85\x81\x75\x1a\x71\x9f\x75\xa4\xab\xa8\xae\xb1\xc2\x62\xb0\x4c\x4d\x56\x71\x55\x5a\x1e\x50\x49"
+"\x66\x30\x3d\x1a\x32\xc3\x4e\xdc\xd2\xcb\xb3\xd9\xc2\x1e\x76\x96\x05\x5d\x6b\x6a\x75\x62\x1b\x50\x6c\xb3\xd6\x9d\x8c\x99\x90\xa2"
+"\x1f\xf7\x24\x06\x93\xab\x05\x0e\xfb\x9c\xf7\xfd\xf8\x5c\x15\x6e\x06\x79\x80\x88\x89\x7d\x1b\x80\x83\x8d\x92\x7a\x1f\x94\x72\x7e"
+"\x8e\x77\x1b\x3b\x57\x5a\x41\x55\x9a\x6d\xcc\x3e\x1f\xb1\x5f\x9d\x69\x72\x1a\x6e\x72\x73\x6c\x75\x75\x96\x9f\x7b\x1e\x78\xa4\x83"
+"\xa1\x83\xc0\x70\x8e\x18\x76\xfb\x38\x05\xa6\x06\x97\x8f\x96\x93\x98\x1b\x92\x96\x88\x86\x98\x1f\x83\xa3\x9d\x87\xa0\x1b\xde\xc9"
+"\xc3\xd5\xb8\x72\xbc\x53\xcb\x1f\x64\xb7\x7a\xa9\xa2\x1a\xab\x9f\x9f\xab\xb8\xa6\x67\x3a\x9b\x1e\xa6\x89\x05\x0e\xfc\x0b\xf7\x7b"
+"\xf7\x0b\x15\x5e\x6b\x77\x78\x6a\x1d\x8b\x8b\x90\x9b\x1f\xf3\xf7\xf9\xfb\x50\x70\x85\x73\x05\x8d\x92\x92\x8c\x8f\x1b\x9c\x9a\x7d"
+"\x7d\x83\x87\x74\x87\x7e\x1f\x4d\xfb\x63\x05\x85\x78\x88\x78\x7b\x1a\x5d\xa6\x70\xb6\xa6\xa0\x95\xa9\xac\x1e\xa2\x9f\x97\x9b\xa2"
+"\xb1\x08\x77\xf8\xd0\x15\x65\x6c\x6c\x64\x63\xaa\x6a\xb3\xb1\xa9\xaa\xb2\xb2\x6b\xad\x65\x1f\x0e\xfc\x0b\xf7\x7c\xf7\x0c\x15\x60"
+"\x6c\x76\x76\x7d\x1b\x84\x86\x91\x92\x8f\x8c\x90\x8e\x96\x1f\xf7\x00\xf8\x05\xfb\x54\x69\x85\x74\x05\x8c\x92\x91\x8c\x90\x1b\x9c"
+"\x9b\x7d\x7d\x83\x87\x76\x86\x7c\x1f\x4c\xfb\x67\x05\x85\x78\x88\x79\x79\x1a\x5c\xa6\x6f\xb7\xa6\xa1\x96\xa9\xac\x1e\xa2\x9f\x98"
+"\x9b\xa2\xb2\x08\xfb\x2e\xf8\xbe\x15\x3a\x0a\xaf\x6d\xaa\x67\x1f\xf7\x66\x16\x3a\x0a\xb0\x6d\xa9\x67\x1f\x0e\xfc\x0b\xf7\x9c\xf8"
+"\x51\x15\xfb\x4f\x69\x86\x74\x05\x9a\x95\x8a\x8a\x8e\x1f\x9a\x86\x95\x7e\x7b\x1a\x82\x89\x7e\x87\x7b\x1e\x42\xfb\xc5\x05\xfb\x07"
+"\x6f\x76\x5c\x73\x1b\x85\x84\x91\x8f\x8f\x8d\x90\x90\x90\x1f\x92\x94\x8e\x91\x92\x1a\x9d\x79\x9a\x75\x70\x77\x77\x71\x6e\xaa\x75"
+"\xb5\xb3\xbd\xa1\xa9\xa9\x1e\xb1\xb2\xa9\xcb\xa0\xe0\x08\xb6\xf8\xf0\x15\x66\x6e\x6e\x65\x64\xa9\x6c\xb1\xaf\xa8\xa9\xb0\xb1\x6c"
+"\xab\x67\x1f\x0e\x91\xf8\x49\xf8\x50\x15\x46\x06\xfb\x0e\x8c\x42\x2c\x51\xfb\x7d\x08\x59\x7f\x8a\x89\x80\x1b\x85\x88\x8e\x94\x87"
+"\x1f\x9e\x81\x7f\x93\x77\x1b\x6d\x77\x76\x6b\x66\xa5\x73\xb2\xa3\xa1\x94\x9c\x97\x1f\x9c\xa0\x95\xa5\xa8\xed\x08\xf7\x32\xb8\xac"
+"\xc2\xba\x1b\x95\x06\x55\xfb\x67\x05\x87\x79\x88\x77\x7a\x1a\x44\xc1\x5c\xdc\xf7\x06\xe5\xdd\xf2\xd3\x64\xb8\x4d\x77\x7f\x89\x80"
+"\x6a\x1e\x87\x8a\x84\x88\x82\x89\x08\x83\x6a\x15\x92\xa1\x94\x8d\x95\x1b\xa6\x9a\x76\x67\x36\x5c\x34\x5d\x77\x7c\x9c\xa4\x95\x8b"
+"\x8b\x93\xa7\x1f\x0e\xc7\xf7\x85\xf7\xa0\x15\xbc\xf7\x52\xfb\x4a\x48\x1d\x75\x84\x8a\x84\x88\x81\x1f\x30\xfb\xf1\x05\xf7\x09\x06"
+"\xc9\xf7\x80\xf5\x8e\x78\x42\x05\x88\x7f\x87\x6c\x7c\x1a\x46\xc3\x5a\xda\xf7\x02\xe7\xdd\xed\xd2\x63\xb4\x47\x78\x80\x8a\x85\x5d"
+"\x1e\xb7\xf7\x3d\x05\xfb\x09\x06\x5e\xfb\x40\x05\xf7\x01\x6e\x15\x8f\xa1\x93\x8c\x93\x1b\xa8\x9b\x76\x64\x39\x5d\x37\x5e\x77\x7c"
+"\x9c\xa3\x94\x8d\x98\x90\x9c\x1f\x0e\x2a\xf7\xef\xf9\x3b\x15\xfb\x4d\x6e\x86\x75\x05\x91\x06\xa3\x9b\x7d\x75\x80\x8a\x85\x83\x6e"
+"\x1f\x49\x06\x82\x68\x05\xcd\x06\xfb\x1a\xfc\x93\x05\xf7\x09\x06\xb1\xf7\x23\x9b\xc6\xb7\xe2\xb2\xbc\x19\x9c\x99\x9c\x96\x97\x1b"
+"\x94\x90\x85\x81\x85\x8b\x8b\x85\x74\x1f\x51\xfb\x75\x05\x86\x76\x89\x7f\x7e\x1a\x68\xa7\x72\xb2\xbc\xb6\xae\xd6\xb5\x1e\x79\x95"
+"\x05\x62\x72\x7f\x7f\x7c\x1b\x83\x86\x90\x93\x90\x8c\x91\x8e\x92\x1f\x8c\x8e\x8c\x8f\x8c\x1a\xc9\xf7\x7e\x05\x90\xa0\x8e\xa0\x9c"
+"\x1a\xb5\x75\xa3\x64\x68\x69\x79\x66\x68\x1e\x75\x73\x7d\x78\x63\x46\xc6\xf7\x73\xe8\x1d\xfb\x26\x5b\x0a\xf7\x14\xf7\xa7\x15\xf7"
+"\x2a\xe3\x05\xaa\x9c\x93\x96\x9e\x1a\xa4\x75\xa1\x72\x78\x7b\x7f\x65\x68\x1e\xfb\x0c\xfb\x18\x05\x0e\xfb\x65\x74\x1d\x57\xf8\xd2"
+"\x15\x6c\x74\x73\x6c\x5e\xb9\x71\xda\xe7\xc7\xad\xc0\xa3\x7c\x9a\x72\x72\x78\x79\x74\x89\x8b\x88\x8c\x87\x1f\x8c\x87\x8b\x87\x89"
+"\x1a\x77\x70\x7c\x68\x6e\x76\x96\x9a\x8f\x8c\x90\x8d\x8f\x1e\x93\x9b\x8b\x8b\x92\x1a\x9e\x7b\x99\x73\x1e\x0e\xf7\x11\xf9\x29\x16"
+"\x4c\x1d\x70\x7b\x9c\xa5\x93\x8b\x8e\x8d\x91\x1f\xf7\x17\xf8\x80\x97\xb8\x9d\x9d\xad\x5f\x1d\x71\x1a\x83\x8a\x87\x8a\x85\x1e\xfb"
+"\x24\xfc\xb2\x05\xfb\x79\x06\x8d\x1d\xf7\x36\x06\xca\x8a\xa9\x5c\x8c\x29\x8c\x6e\x18\x9e\x06\xb5\xf7\x10\xb9\xbc\xdb\x8d\x08\x0e"
+"\x2a\xf8\x6a\x66\x0a\xa5\x9d\x93\xa2\xa9\x1e\x7b\x6f\x85\x7a\x76\x1a\x80\x8d\x84\x90\x7d\xd4\x1d\x05\xc9\xa9\xb0\xb7\xb8\x1a\x99"
+"\x87\x95\x7e\xa1\x1e\x81\x9d\x85\x99\x96\x1a\x9e\x93\x98\xb9\xc3\x1e\x86\x7b\x88\x7f\x88\x83\x08\x85\x77\x88\x7a\x7f\x1a\x72\xa2"
+"\x79\xa9\xc4\xbf\xb8\xde\xb2\x1e\x0e\xfb\x61\xc5\xf7\x6e\x15\x81\x65\x88\x77\x72\x1a\x35\xbb\x50\xd1\xf7\x1c\xf7\x1c\xf7\x3e\xf7"
+"\x3e\xda\x55\xc0\x3b\x3e\x3f\x5b\x36\x4f\x1e\xa0\x7f\x05\xbd\xb1\xac\x9f\xb6\x1b\xbc\xa7\x66\x49\x76\x89\x7d\x83\x6c\x1f\x83\x66"
+"\x15\x27\x6f\x64\x55\x60\x1b\x77\x7e\x9b\xa3\xa4\x8c\x8f\xa1\xe0\x1f\x0e\xf7\x48\xf9\x97\xf9\x40\x15\x4f\x06\xfc\xf9\xfd\x5b\x05"
+"\xc6\x06\xf7\x4a\xf8\x54\x15\x68\x68\x6a\x7b\x67\x1b\x61\x70\xad\xbd\xbb\x9a\xbc\xa6\xb7\x1f\xb8\xa6\xab\xa2\xae\x1b\x99\x96\x84"
+"\x81\x86\x87\x85\x84\x86\x1f\x7b\x7f\x84\x80\x7c\x1a\x75\x9c\x7b\xa2\xa8\xa3\xa7\xab\xb4\x6b\xa4\x56\xfb\x09\xfb\x07\xfb\x0e\xfb"
+"\x11\x44\xb5\x60\xd1\xcb\xbf\xa8\xca\xc1\x1e\xf7\xf4\x4f\x15\xfb\x0d\xfb\x07\xfb\x10\xfb\x16\x49\xb5\x62\xcf\xc8\xc2\xa6\xc1\xbb"
+"\x1f\xb9\xbf\xa4\xc7\xc6\x1a\xcd\x60\xb6\x49\x1e\x7b\x77\x15\x9f\x97\x7a\x71\x49\x70\x2d\x63\x45\x1f\x6a\x79\x79\x7c\x79\x1b\x74"
+"\x7d\x9c\xa7\xcf\xb4\xf7\x15\xb3\xc0\x1f\x9e\x98\x98\x92\x9e\x1b\x0e\xfb\x76\xf7\x87\xf7\x96\x15\xd1\xd4\x9e\xa1\x9e\xa6\x08\xb7"
+"\xcd\xa6\xd3\xc1\x1a\xc4\x6b\xb0\x5b\x2e\x49\xfb\x17\xfb\xaf\x58\x1e\x7f\x7b\x7f\x7d\x86\x85\x08\x63\x5f\x8b\x8b\x7e\x1a\x7e\x94"
+"\x7c\x93\x92\x9e\x9c\xa0\x9e\x1e\x89\x74\x8b\x7b\x76\x1a\x62\x8e\x78\x93\x77\x1e\x6c\x98\xa6\x78\xac\x1b\xaa\xa7\x9d\xac\xa3\x1f"
+"\x9a\xa2\x95\xa4\x9d\x1a\x99\x84\x93\x7f\x82\x85\x86\x7b\x83\x1e\x67\x79\x82\x80\x7e\x1b\x82\x86\x94\x9b\xa5\x93\xc9\x9b\xea\x1f"
+"\x95\xd1\x15\xf7\x5b\xab\xa3\xd3\xae\x1b\x98\x94\x7e\x77\x73\x7d\x5a\x79\x63\x1f\x76\x5b\x73\x67\x67\x62\x08\x0e\xf7\x9a\xf8\x09"
+"\xf9\x2a\x15\xfb\x56\x20\x1d\x96\x06\xaa\x8a\x9d\x7c\x99\x67\xfb\x0c\xfc\x55\x18\x55\x7d\x6f\x68\x6f\x1b\x80\x86\x93\x9d\xae\x7a"
+"\x9d\x69\x67\x74\x72\x64\x5d\xae\x6b\xbf\xd5\xb8\xbb\xf7\x01\xa8\x1f\xf7\x02\xf8\x2d\xf7\x61\xfc\xbd\x05\xa0\x06\xf7\x1f\xf8\x9f"
+"\x05\xc2\x9a\xa4\xad\xa5\x1b\x96\x90\x85\x7b\x8d\x1f\x69\x8f\x9b\x7b\xac\x1b\xad\xa0\xa1\xae\xba\x69\xaa\x57\x42\x60\x5d\xfb\x03"
+"\x6e\x1f\x41\xfb\xac\x05\x98\xfb\x82\x15\xf7\x97\x06\x9e\xd0\x05\xfb\x97\x06\xf7\x69\xf8\x1d\x15\x2f\x3f\x3a\x29\x3b\xbb\x56\xd2"
+"\xed\xda\xdc\xee\xdc\x5a\xbe\x3c\x1f\x92\x6b\x15\xa3\x97\x77\x62\x5c\x7e\x50\x79\x69\x1f\x6b\x7a\x78\x7d\x74\x1b\x73\x7e\xa0\xb0"
+"\xb9\x98\xc6\x9e\xaf\x1f\xab\x9c\x9e\x9b\xa2\x1b\x0e\x27\xf8\x17\xf8\x50\x15\x6b\x3c\x05\xc9\x80\x70\xa5\x57\x1b\x60\x58\x6f\x5d"
+"\x61\x1f\x56\x52\x6c\x38\x3c\x91\x0a\xc0\xe7\xaf\x1f\x78\x97\x05\x48\x69\x7a\x77\x75\x1b\x7b\x88\x96\xd2\x88\x1f\xf7\x15\xf7\xc0"
+"\x05\xfb\x6f\xfb\x9f\xb8\x0a\xc6\xd8\x1d\x42\x94\x1f\x0e\x27\xf8\x19\xf8\x51\x15\x6b\x3c\x05\xc9\x7f\x72\xa4\x56\x1b\x5f\x59\x70"
+"\x5c\x61\x1f\x56\x52\x6c\x39\x3b\x91\x0a\xc1\xe7\xaf\x1f\x78\x96\x05\x48\x69\x7a\x77\x75\x1b\x7b\x88\x96\xd2\x88\x1f\xf7\x15\xf7"
+"\xc1\x05\xfb\x6f\xfb\xa0\xb8\x0a\xc7\xd8\x1d\x41\x94\x1f\x99\xf7\x69\x15\x90\x94\x9b\xac\x05\xbc\xe7\x8e\x93\xa4\x1a\xa7\x75\x9d"
+"\xf6\x1d\x73\x8a\x5f\x08\x8a\x60\x8a\x71\x82\x1a\x84\x8a\x7f\x8a\x7c\x1e\x0e\x25\x1d\xf7\x67\xf7\x5f\x15\xfb\xd9\x06\x7a\x45\x05"
+"\xf7\xd9\x06\x0e\xfb\xd4\xc5\xf7\x82\x15\xf7\x42\xfb\xe8\x05\x7c\x93\x95\x83\x97\x1b\x93\x90\x8f\x92\x92\x89\x93\x88\x93\x1f\xfb"
+"\x17\xf7\xdd\xf7\x17\xf7\xdd\x05\x8e\x93\x8d\x93\x92\x1a\x93\x86\x8f\x83\x7f\x83\x85\x79\x81\x1e\x0e\xfb\xd4\xf7\xa7\xf7\x82\x15"
+"\xfb\x42\xf7\xe8\x05\x9c\x82\x82\x92\x7f\x1b\x83\x86\x87\x83\x85\x8d\x83\x8e\x82\x1f\xf7\x17\xfb\xdd\xfb\x17\xfb\xdd\x05\x88\x84"
+"\x89\x83\x84\x1a\x83\x90\x87\x93\x97\x93\x91\x9c\x95\x1e\x0e\x88\x1d\x65\xa4\x73\xb4\x87\x1e\x72\x66\x84\x7b\x72\x31\x0a\xb3\xa3"
+"\x92\x9a\xa7\xa9\x1f\xa8\xac\x96\x99\xa4\xb1\x08\xfb\x51\xf7\xc8\x15\xa1\x8a\x9a\x78\x70\x1a\x4f\x69\xfb\x03\x65\x46\x1e\x5a\x70"
+"\x6d\x71\x70\x1b\x71\x78\xa2\xaa\xbf\xac\xef\xb4\xd5\x1f\xa9\xc0\xac\xaa\xa6\x89\x08\x0e\xf7\xef\xf9\x38\xf7\x6b\x15\x6b\x72\x78"
+"\x7e\x73\x1b\x79\x7c\x90\xa1\x5a\x1f\xad\x3f\x73\x92\x67\x1b\x58\x66\x71\x51\x6a\x1f\xc0\x5c\x05\xac\xa3\x9b\x95\xa8\x1b\xae\xaa"
+"\x82\x71\xb9\x1f\x72\xba\xa4\x83\xac\x1b\xb9\xab\xa1\xc9\xb8\x1f\x54\xf7\x80\x15\x6a\x72\x78\x7e\x73\x1b\x79\x7d\x8f\xa2\x59\x1f"
+"\xad\x3f\x73\x92\x67\x1b\x59\x65\x71\x51\x6a\x1f\xc0\x5d\x05\xab\xa3\x9b\x95\xa8\x1b\xaf\xa9\x82\x71\xb9\x1f\x72\xb9\xa5\x83\xac"
+"\x1b\xb9\xab\xa1\xca\xb8\x1f\x0e\xf8\x46\xf7\x13\x15\x54\x62\x7c\x7c\x7b\x1b\x84\x86\x91\x94\xa4\x94\xb4\xa4\xdd\x1f\xd2\xf7\x80"
+"\xfb\x03\x84\x79\x50\x05\xbe\x82\x75\xa0\x60\x1b\xfb\x0f\xfb\x2a\xfb\x54\xfb\x30\x3f\xb6\x58\xcc\xc8\xb8\xaf\xeb\xc5\x1f\x7f\x62"
+"\x89\x7f\x7d\x1a\x66\xa9\x6e\xb0\xba\xba\xb2\xe2\xc4\x90\x1d\xbd\xf7\xd8\x15\x51\x5a\x5b\x52\x4f\xba\x5b\xc6\xc6\xbb\xbb\xc6\xc5"
+"\x5b\xbb\x51\x1f\x89\x5b\x15\xac\xa6\x70\x6a\x6c\x6f\x71\x6b\x6c\x71\xa5\xab\xab\xa5\xa6\xaa\x1f\x87\xcd\x15\x2b\x1d\x38\x1d\xd0"
+"\xf9\x03\xf8\x37\x15\xfc\xa0\x06\xf7\x66\xdc\x74\xc0\xfb\xb2\xfb\x14\x05\x3e\x07\xf7\xb2\xfb\x13\xa2\xbf\xfb\x66\xdd\x05\xf8\xa0"
+"\x06\xfb\x66\x39\xa2\x57\xf7\xb2\xf7\x13\x05\xd8\x07\xfb\xb2\xf7\x14\x74\x56\x05\x0e\xd0\xf8\x1b\xf9\x66\x15\x4b\xfd\x03\x06\x39"
+"\xf7\x66\x57\x74\xf7\x13\xfb\xb2\x05\xd8\x06\xf7\x14\xf7\xb2\x56\xa2\x3a\xfb\x66\x05\x0e\xd0\xf9\x66\xf7\xf9\x15\xcb\xfd\x03\x07"
+"\xf7\x66\xdc\x74\xc0\xfb\xb2\xfb\x13\x05\x3e\x07\xf7\xb2\xfb\x14\xa2\xbf\xfb\x66\xdd\x05\x0e\xd0\xf7\xf9\x04\xf9\x03\x06\xfb\x66"
+"\x39\xa2\x57\xf7\xb2\xf7\x14\x05\xd8\x07\xfb\xb2\xf7\x13\x74\x56\xf7\x66\x3a\x05\xfd\x03\x06\x0e\xd0\xf8\x1b\x16\xf9\x03\x07\xdc"
+"\xfb\x66\xc0\xa3\xfb\x14\xf7\xb1\x05\x3e\x06\xfb\x13\xfb\xb1\xbf\x73\xdd\xf7\x66\x05\xfd\x03\x07\x0e\xd0\xf7\xde\xf9\x03\x9b\x1d"
+"\xa2\xe6\x1d\x74\x05\x0e\xd0\xf7\x5b\x2c\x15\x51\xf7\xdb\xc5\x07\xfb\x58\xf9\x42\x9b\x1d\xa3\xe6\x1d\x73\x05\x0e\xfb\x21\x70\xfb"
+"\x45\x15\xf7\x05\x06\xc5\xf7\x75\x05\x60\xa7\x9f\x7e\xad\x1b\xf7\x07\xf7\x05\xf7\x1b\xf7\x1c\xd1\x72\xb9\x52\xb1\x1f\xdf\xbc\xb1"
+"\xbb\xc6\x1a\xcd\x5a\xb5\x3d\x59\x5d\x7c\x6f\x66\x1e\x60\x69\x6c\x50\x71\x28\x08\xf7\x03\x80\x15\xb4\xf7\x33\x91\x99\xb0\xa7\x08"
+"\x92\x94\x96\x8f\x95\x1b\xa3\x9a\x72\x65\x5e\x7e\x5b\x6c\x4c\x1f\x95\x73\x80\x8e\x7c\x1b\x73\x77\x7b\x76\x7b\x99\x7e\x9c\x9a\x99"
+"\x91\x9e\xa6\x1f\x8c\x7a\x8b\x83\x83\x1a\x3d\x64\xfb\x36\x6b\x57\x1e\x6f\x7a\x77\x7c\x75\x1b\x71\x7c\x97\xb6\x74\x1f\x0e\xfb\x65"
+"\x3e\x1d\x2e\xf8\x1d\x15\x2b\x1d\x38\x1d\xfb\x65\x3e\x1d\xf7\x0e\xf8\xcb\x20\x0a\xfb\x61\xf7\xd4\x89\x1d\xfb\x38\xfb\x34\x32\xc9"
+"\x4d\xe6\xb7\xb6\x9b\xa8\xad\x1e\xa5\xa1\x9b\x9e\xae\xbd\x08\xcc\xf8\x1d\x15\xbe\x06\x35\xf7\x42\x05\x3a\x2a\x0a\xfb\x65\x3e\x1d"
+"\x60\xf8\xa8\x2a\x1d\xfb\x50\xf8\x61\xf8\x51\x15\x20\x06\xfb\x26\xfb\x73\x05\xf7\x4f\x82\x7a\xb7\x48\x1b\x68\x77\x7a\x6d\x6f\x9a"
+"\x7a\xa8\x83\x1f\xc6\x80\x91\x7f\x94\xfb\x27\xfb\x8c\xfb\xfd\x18\xf7\x02\x06\xf7\x37\xf7\x8b\x8c\x54\x8f\x57\x93\x57\x19\x44\x95"
+"\x9c\x6c\xa9\x1b\xb0\xb6\xc5\xe8\xab\x1f\x76\x93\x05\x52\x74\x77\x72\x71\x1b\x63\x7b\xcb\xf7\x39\x87\x1f\x0e\xf7\xef\xf8\x8b\xf9"
+"\x4b\x15\xfb\x5c\xfb\x36\xfb\x35\xfb\x5c\xfb\x58\xf7\x36\xfb\x36\xf7\x57\xf7\x59\xf7\x37\xf7\x37\xf7\x57\xf7\x58\xfb\x36\xf7\x39"
+"\xfb\x55\x1f\x87\xfb\xd0\x15\xfb\x52\xf7\x50\x05\xb8\xc2\xcc\xa2\xd1\x1b\xd0\xcb\x75\x5f\xc4\x1f\xb3\x63\x15\xbb\x51\xa2\x4d\x42"
+"\x1a\x43\x74\x4b\x5d\x53\x1e\xfb\x54\xf7\x57\x05\xf7\x2c\xfb\x7f\x15\x5f\x54\x48\x73\x45\x1b\x45\x4b\xa2\xba\x50\x1f\xf7\x55\xf7"
+"\x55\x05\xfb\x7d\xfb\x2d\x15\x5f\xc1\x74\xcb\xd1\x1a\xd3\xa2\xcb\xba\xc4\x1e\xf7\x52\xfb\x50\x05\x0e\xf7\xef\xf9\x83\x16\x9f\x07"
+"\x84\x8d\x74\x90\x3e\x9e\x8b\x8c\x70\x9c\x19\x45\xbb\x64\xd8\xe4\x1a\x94\x07\x9b\x07\x9f\x67\x94\x7e\x97\x7c\x08\x5c\xb1\xc8\x6d"
+"\xc1\x1b\xe6\xd3\xd5\xe8\xe7\x4a\xd2\x39\x71\x80\x88\x79\x67\x1f\x88\x8a\x82\x86\x82\x87\x08\xa8\xb7\x95\xa5\xb0\x1a\xe5\x43\xd2"
+"\x2f\x2e\x44\x45\x31\x67\x92\x78\xad\x56\x1e\xa3\x58\x78\x91\x70\x1b\x3d\x49\x40\x33\x2d\xd3\x43\xe9\xdb\xd1\xbe\xe5\xb6\x1f\x8c"
+"\x72\x05\x83\x07\x54\x71\x45\x65\x5f\x1e\x5c\x5a\x8a\x8a\xfb\x0e\x6e\x83\x89\x18\x77\x07\x0e\x70\x59\x0a\xf7\x77\x78\x15\xf4\xb9"
+"\xce\xd8\xd4\x1a\xc0\x6c\xae\x5e\x66\x70\x6f\x65\x73\x94\x7d\xa6\x78\x1e\x9f\x7e\x92\x82\x7e\x1a\x6b\x68\x68\x43\x65\x1e\x0e\xf7"
+"\xec\xf8\x95\x15\x75\x37\x91\x1d\x75\x9b\x05\xa3\x0a\xc7\xf7\x6f\x05\xcd\x06\x93\xaa\x05\x49\x06\xb6\xf7\x2f\x4f\x7d\x5b\x85\x26"
+"\x82\x19\x70\xa0\x07\xa5\x9a\x81\x79\x84\x8a\x85\x83\x6e\x1f\x8a\x87\x88\x7f\x87\x7e\x08\xfb\x1e\x06\x82\x6c\x05\xcc\x2e\x93\x1d"
+"\x0e\xfb\x21\xf7\xa5\xf8\xb4\x15\x6a\xa4\x7a\xa3\xa2\x1a\x9d\x98\x95\xa5\xb4\xce\x74\x5d\xe8\x1e\x9a\xc9\x05\xa7\x3e\x47\x97\x43"
+"\x1b\x59\x6b\x80\x74\x75\x1f\x7e\x7b\x81\x73\x78\x1a\x69\xa1\x6e\xd7\x49\x1e\x46\x73\x6a\x76\x67\x5d\x08\x5d\x4f\x6f\x3d\x42\x1a"
+"\x27\xcc\x4a\xee\xe4\xe2\xbb\xd7\xbb\x1e\xac\xbf\xa3\xd4\xbc\x1a\xc3\x70\xc4\x56\xc2\x1e\x7b\x9b\x75\x9e\x7e\x95\x08\x49\x3c\x15"
+"\xc6\x52\xa2\x64\x5b\x1a\x46\x6c\x2d\x62\x53\x1e\x75\x7b\x70\x7d\x71\x1b\x5f\x6e\xae\xc0\xc0\x9b\xd8\xa4\xcb\x1f\xa6\xcf\xa1\xa8"
+"\xb5\x9f\x08\x0e\xf7\xef\xf8\x95\xf9\x89\x15\x42\xfb\x13\x4d\x33\xfb\x21\xfb\x45\xf0\xfb\x0f\xf7\x35\xfb\x78\x99\x61\xde\xf7\x20"
+"\xdf\xf7\x0b\xf7\x03\xf7\x1a\xfb\x0b\xf7\x26\x2a\xf7\x1d\x4d\xf7\x01\x08\x0e\xfb\xd4\xf7\x7e\xf8\xd5\x15\xa8\x06\x90\x93\x8f\x92"
+"\x92\x97\x08\xb1\xc6\x8d\x8e\x9d\x1a\x9d\x7a\x98\x73\x7b\x7c\x85\x83\x83\x1e\x83\x82\x8b\x8a\x89\x66\x8f\x5e\x18\x8c\x72\x05\x41"
+"\x85\x15\x6d\x73\x74\x6d\x6c\xa4\x72\xa9\xa8\xa3\xa3\xa9\xa9\x72\xa4\x6e\x1f\xf7\x39\x16\x6d\x73\x74\x6d\x6c\xa4\x72\xa9\xa8\xa3"
+"\xa3\xa9\xa9\x72\xa4\x6e\x1f\x0e\xfb\x65\x22\x0a\xf7\xa0\xf8\x64\x15\x49\x6c\x68\x73\x4a\x1b\x4b\x6a\xa8\xc8\x85\x1f\x60\x7e\x06"
+"\x26\xb7\x5b\xe8\xec\xcb\xc5\xf3\x9d\x1e\x0e\xfb\x65\x22\x0a\xf7\xd3\xf8\x70\x20\x0a\xfb\x65\x22\x0a\xf7\x1b\xf8\x4d\x2a\x1d\xf7"
+"\xef\xf9\x93\xf7\x6c\x15\xc8\xfc\x62\x07\x91\xf6\xc3\xbd\xf7\x01\x89\x08\xf7\xb7\xc9\xfb\xac\x62\x1d\x42\x2c\x1a\xfb\x08\xb8\x38"
+"\xef\x1d\xc9\xfb\xb7\x06\xfb\x01\x89\x53\xbd\x85\xf5\x08\x0e\xfb\x65\x22\x0a\xf7\xc1\xf8\x2d\x25\x0a\xfb\x11\xf7\x8c\xf8\x61\x15"
+"\x4b\x7d\x3b\x6b\x1d\x97\x85\x78\x7f\x7d\x55\x6b\xfb\x04\x1f\x74\x39\x84\x71\x71\x2b\x08\xf7\x0d\x06\xb0\xf7\x1e\xa7\xd4\xb5\xd6"
+"\x08\xc9\xae\xb7\xb5\xa7\x1b\x98\x95\x83\x81\x83\x8a\x83\x89\x83\x1f\x26\xfc\x1d\x81\x0a\xc9\xc1\xbd\xa3\xb4\xa9\x1e\xaa\xb5\xa8"
+"\xcb\x9b\xc7\xcb\xf7\x8c\x18\x9e\xd4\x92\xab\x9b\x1a\xb6\x6f\xa5\x5d\x40\x50\x55\xfb\x21\x3c\x1e\x0e\xfb\x65\x78\x0a\xe3\x9f\x9b"
+"\x8e\x92\xa2\x1e\x6a\x60\x83\x78\x70\x77\x0a\x61\x76\xa1\xb8\xae\x92\x9c\xa9\xb0\x1f\x9d\xa1\x95\x9a\xa1\xaf\x08\xfb\x5a\xe4\x15"
+"\xf7\x1f\xaf\xb9\xd7\xbb\x1b\x9e\x94\x80\x74\x5f\x7a\x60\x6b\x6a\x1f\x70\x6e\x72\x7d\x52\x79\x08\x0e\xfb\x87\x61\x0a\x0e\xfb\x87"
+"\x61\x0a\xfb\x00\xf8\x10\x15\xbe\x06\x8f\x93\x92\x99\x94\x9f\x08\xbc\xe7\x8e\x93\xa5\x1a\xa6\x75\x9d\x6b\x77\x77\x83\x7e\x80\x1e"
+"\x82\x7f\x86\x73\x8a\x5f\x8a\x60\x8b\x72\x8a\x81\x08\x0e\xf7\xef\xf7\x8c\xf7\x63\x15\xf8\x8c\xe5\xfc\x8c\x06\xfb\x94\x04\xf8\x8c"
+"\xe5\xfc\x8c\x06\xf7\x86\x04\xf8\x8c\xe5\xfc\x8c\x06\x0e\x56\xf8\x96\xf7\x8e\x15\x8a\xd3\x86\xae\x7d\xb0\x08\xda\x6d\x41\xbc\x31"
+"\x1b\xfb\x1b\x35\x23\xfb\x38\xfb\x36\xdd\x29\xf7\x1d\xf2\xd1\xbe\xec\xa7\x1f\x62\x06\x46\x6d\x56\x68\x40\x1b\x60\x68\x97\xa2\x73"
+"\x1f\x7a\x9b\x82\x9c\x80\xb2\x08\xf4\x07\xf7\xb0\xae\x15\xfb\xae\xe8\x06\xd5\xac\xaf\xa5\xce\x1b\xd2\xc0\x66\x4c\xa1\x1f\x0e\x23"
+"\x62\x0a\x0e\x23\x62\x0a\xf7\x9a\xf7\x76\x15\xbe\x06\x8e\x91\x8b\x8c\x9d\xae\x08\xbb\xe6\x8f\x94\xa4\x1a\xa7\x75\x9d\x6b\x77\x77"
+"\x83\x7e\x80\x1e\x81\x7f\x86\x75\x8a\x5d\x8a\x3d\x18\x0e\x3c\xf7\x1c\xf7\x55\x15\xa5\xd1\xb2\xe0\xd8\xf7\x30\x08\xa8\xc3\x92\x9d"
+"\xa2\x1a\xb1\x6c\xa7\x61\x73\x77\x81\x79\x7e\x1e\x7d\x77\x85\x78\x86\x57\x75\xfb\x4f\x7f\x3b\x78\x3b\x08\x78\xa0\x0a\xf8\x4a\xc5"
+"\x15\xa5\xd1\xb3\xe3\xd8\xf7\x2d\x08\xa7\xc2\x92\x9e\xa2\x1a\xb1\x6c\xa7\x61\x58\x75\x6b\x34\x82\x1e\x76\xfb\x4d\x7e\x36\x77\x3e"
+"\x08\x79\xa0\x0a\x0e\xfb\x79\xbd\x16\xf7\xd9\xf8\xd5\xfb\xd9\x37\xf7\x85\xfb\x36\xfb\x85\x37\xf7\x85\xfb\x37\xfb\x85\x06\x0e\xd0"
+"\xf8\x19\xf7\xa7\x15\xb3\x93\x9c\x90\xa4\x9a\x08\xd0\xb4\xb4\xd2\xd9\x1a\xf7\x0e\x29\xed\xfb\x0e\xfb\x0d\x29\x29\xfb\x0e\x3d\xb4"
+"\x44\xd0\x62\x1e\xa3\x7c\x9c\x85\xb3\x84\x08\x3e\xfb\x29\x57\xf7\x29\xfb\x2c\xc3\xf7\x2c\xf7\x28\xbf\xfb\x28\x07\x6c\xf8\x5e\x15"
+"\xe7\xd5\x43\x31\x30\x42\x42\x31\x31\x42\xd4\xe5\xe3\xd4\xd6\xe2\x1f\x0e\xf7\x76\xb1\x15\x6d\xa1\x7e\xac\xc5\x1a\xd5\xa6\xf7\x0d"
+"\xb0\xeb\x1e\xf7\x1b\xc0\xc8\xcf\xce\x1b\xc5\xb1\x58\x3b\x79\x8a\x7e\x87\x72\x1f\xa6\x06\xc6\xf7\x73\x05\x75\x06\x6c\x7e\x7d\x7c"
+"\x7b\x1b\x83\x84\x8d\x8f\x84\x1f\xa8\x5b\x78\x91\x62\x1b\xfb\x4b\xfb\x4c\xfb\x7f\xfb\x80\x44\xa0\x4e\xb1\x66\x1f\x6d\xaa\xb7\x7c"
+"\xc8\x1b\xd5\xc8\xa4\xca\xda\x1f\x75\xa4\x68\x6d\x70\x7a\x68\x7d\x19\xb2\xf7\x23\x97\xb4\x92\x97\xa5\xa4\x19\x71\x94\x97\x81\xa4"
+"\x1b\xb3\xa9\xac\xb7\xa5\x7b\x9a\x6f\x6a\x6c\x73\x52\x62\x1f\x9d\xd1\x05\xfb\x18\x06\x85\x77\x05\xa1\x87\x8f\x87\x7c\x1a\x81\x8a"
+"\x81\x88\x81\x1e\x0e\xfb\x81\xac\xf7\xb8\x15\xbb\x9e\xaa\xb3\x9d\x1b\x92\x90\x87\x84\x8f\x1f\x95\x76\x92\x4c\x4d\x1a\x4f\x89\x6d"
+"\x83\x27\x1e\x52\x3f\x75\x5c\x5b\x1a\x68\x9d\x78\xaa\xa0\x9c\x94\x9f\x9d\x1e\xa5\xa8\x98\xb1\xa3\xf7\x0b\xdd\xea\xb8\xbe\x91\x92"
+"\x08\xd2\xe3\xa9\xca\xc4\x1a\xb3\x74\xa8\x6c\x6d\x71\x6f\x6b\x80\x8d\x7f\x8f\x7f\x1e\x97\x67\x8c\x86\x78\x1a\x70\x80\x70\x6f\x63"
+"\x1e\x7f\x7b\x8b\x8b\x50\x41\x71\x6b\x18\x98\xdb\x91\xc7\xca\x1a\xf7\x04\x70\xc3\x54\x56\x55\x52\x2d\x67\x1e\x0e\x3f\x0a\xf7\x45"
+"\xf7\x8b\x38\x0a\xfb\x28\xf8\x71\xf8\x41\x6e\x1d\xf7\x1e\xe0\x63\x1d\xf7\x16\xea\x05\x0e\x3f\x0a\xf7\x17\xf7\xe2\x15\x22\x5d\x48"
+"\x3e\x42\x1a\x56\xaa\x68\xb8\xb0\xa6\xa7\xb0\xa4\x82\x99\x70\x9e\x1e\x76\x98\x85\x94\x98\x1a\xab\xaf\xae\xd1\xb0\x1e\x0e\xfb\x28"
+"\xf7\xb8\xf9\x2e\x15\x69\x70\x6f\x67\x68\xa6\x6e\xac\xad\xa6\xa8\xae\xae\x70\xa8\x6a\x1f\xf7\x4c\xfb\x81\x6e\x1d\x0e\xf7\xef\xf7"
+"\x73\x8c\x15\xf8\x3c\x06\xa1\xdf\x05\xfc\x3b\x06\x8f\x9c\x15\xf8\x76\xf7\x6c\x90\x9f\xfb\xfc\xf7\x84\x6d\xfb\x05\xf7\x85\xfb\x34"
+"\xfb\xd5\xfb\x1e\x05\x0e\x2a\xf7\x10\xf8\x8b\x15\xfb\x1d\xfc\x8b\x50\x1d\x75\x9a\x05\x4d\x60\x78\x76\x7e\x1b\x83\x82\x94\x92\x8d"
+"\x8c\x8f\x8d\x91\xd1\x1d\x9f\x1a\xb9\x6f\xa7\x5b\x67\x6d\x7f\x6d\x68\x56\x0a\xc3\xf7\x70\x18\xf7\x1b\x06\x97\xb3\x05\xfb\x1c\x06"
+"\xb3\xf7\x30\x3d\x7b\x59\x84\x3b\x84\x19\x70\xa1\x07\xa7\x98\x80\x75\x81\x89\x80\x85\x76\x1f\x85\x73\x05\x4b\x06\x7f\x63\x05\x0e"
+"\x30\xf8\x73\xf7\x22\x15\x4e\x60\x78\x75\x7e\x1b\x83\x82\x94\x92\x8e\x8b\x8d\x8e\x92\x1f\xc5\xf7\x46\x05\x9f\xc9\x95\xb4\x9e\x1a"
+"\xba\x6e\xa7\x5c\x67\x6e\x7f\x6d\x67\x56\x0a\xf6\xf8\x34\x18\x3d\x7c\x59\x83\x3b\x84\x08\x70\x07\x8c\x93\x94\x8b\x90\x1b\xa7\x64"
+"\x1d\xfb\x2e\xfc\xcb\x50\x1d\x59\xf8\xff\x23\x1d\xf7\xef\xf8\x87\x6f\x15\x9c\xde\xc7\xf3\xf7\x0b\xf7\x2b\xb4\xc0\x9b\xa0\x9a\xa3"
+"\x08\xb1\xca\x9d\xc2\xc1\x1a\xdc\x44\xcf\x37\x5b\x5f\x76\x65\x6a\x1e\x76\x72\x81\x75\x7e\x5d\x08\xf2\x67\x56\xbb\x3a\x1b\x36\x48"
+"\x46\x34\x4a\xa3\x56\xdc\xfb\x01\x1f\xf7\x2c\xfb\x5f\xb2\x48\xa5\x24\x08\x0e\xf7\xef\xf7\x2d\x16\xf9\x50\xf8\x25\x06\xfb\xf3\xf7"
+"\xdc\xfb\xf1\xfb\xdc\x05\xc8\xfb\xf2\x15\xf7\xdc\x07\xf7\xb4\xf7\xa2\xf7\xb6\xfb\xa2\x05\xfb\xdc\x07\x0e\xfc\x0b\x2c\x1d\xc8\xf8"
+"\xbb\xad\x1d\xcb\xc5\xf3\x9d\x1e\x0e\x26\xf7\x85\xf7\x10\x15\x5a\x68\x79\x79\x6a\x1d\x8d\x94\x8d\x93\x1f\xf7\x04\xf8\x07\xfb\x52"
+"\x6f\x84\x73\x05\x8c\x93\x92\x8c\x8f\x1b\x9c\x9a\x7d\x7c\x83\x87\x79\x85\x78\x1f\x49\xfb\x6c\x05\x84\x76\x88\x78\x79\x1a\x5d\xa5"
+"\x6f\xb6\xa6\xa1\x96\xaa\xad\x1e\xa2\x9f\x97\x9b\xa4\xb4\x08\x82\xf8\xe6\x15\x63\x6b\x6a\x62\x61\xaa\x6a\xb3\xb2\xaa\xac\xb4\xb4"
+"\x6c\xad\x65\x1f\xf7\xaf\xfb\x85\x15\xfb\x50\x68\x84\x73\x05\x9c\x94\x8a\x8a\x8e\x1f\x9b\x86\x94\x7e\x7a\x1a\x82\x89\x80\x86\x77"
+"\x1e\x3c\xfb\xd0\x05\xfb\x0e\x6c\x76\x5c\x73\x1b\x85\x84\x91\x90\x8e\x8d\x90\x90\x91\x1f\x92\x94\x8e\x92\x92\x1a\x9d\x79\x9b\x76"
+"\x6f\x76\x76\x6f\x6d\xaa\x75\xb4\xb5\xbd\xa2\xaa\xaa\x1e\xb1\xb4\xab\xce\xa2\xe3\x08\xc2\xf9\x07\x15\x65\x6d\x6c\x64\x63\xa9\x6b"
+"\xb0\xb0\xa9\xab\xb2\xb2\x6d\xab\x67\x1f\x0e\xfc\x0b\x2c\x1d\xf7\x14\xf8\x84\x25\x0a\xf7\xef\xf8\x88\xf7\xa4\x15\x60\xb2\x87\x8e"
+"\x78\x99\x08\xa5\x6a\x60\x9b\x6a\x1b\x45\x51\x51\x45\x45\xc5\x51\xd1\xad\xb4\x9b\xa5\xad\x1f\x9e\x99\x8f\x8e\xb6\xb2\xb8\x64\x8f"
+"\x87\x9c\x7e\x08\x71\xae\xb4\x7b\xad\x1b\xd1\xc5\xc5\xd1\xd1\x51\xc5\x45\x6a\x60\x7b\x71\x69\x1f\x7a\x7e\x86\x87\x5f\x64\x08\xac"
+"\x6d\x15\xbe\xbe\xbf\xa9\xb3\x1b\xb7\xb0\x66\x5f\x5e\x66\x66\x5f\x64\x58\xa8\xc0\x56\x1f\x4a\x16\x57\x57\x57\x6e\x64\x1b\x5f\x66"
+"\xb0\xb7\xb7\xb0\xb0\xb8\xb2\xbe\x6e\x57\xbf\x1f\x0e\xf7\xef\xf8\x65\xf7\x87\x15\x43\x8c\x63\x8e\x51\x1e\x8d\x6d\x8c\x6f\x7a\x1a"
+"\x6f\x82\x78\x7f\x88\x87\x8f\x93\x86\x1e\x9f\x81\x80\x93\x78\x1b\x72\x77\x78\x72\x6c\xa8\x74\xb4\xb1\xac\x9e\xad\x9e\x1f\xa4\xb8"
+"\x99\xf7\x00\xf7\x24\x1a\xf7\xd6\x07\xd6\x8a\xb0\x88\xc6\x1e\x89\xa7\x8a\xac\x96\x1a\xa7\x93\xa0\x95\x8f\x8d\x89\x84\x8f\x1e\x78"
+"\x95\x9b\x80\x9e\x1b\xa5\x9e\x9e\xa3\xac\x6e\xa1\x62\x65\x6a\x77\x6a\x78\x1f\x72\x5e\x7d\xfb\x00\xfb\x24\x1a\x0e\xd0\xf7\xe7\xf9"
+"\xb4\x15\xfc\xfb\x07\x60\x8f\x4e\x95\x23\x1e\x8f\x61\x8d\x75\x7f\x1a\x79\x85\x81\x7f\x85\x89\x8c\x96\x80\x1e\x94\x81\x80\x90\x7d"
+"\x1b\x71\x75\x75\x70\x6c\xa7\x73\xae\xb7\xaa\xaa\xc5\x99\x1f\x9b\xcb\x90\xd4\xf7\x41\x1a\xf8\xf2\x07\x0e\xd0\xf8\x30\xfb\x61\x15"
+"\xf8\xfa\x07\xb7\x87\xc8\x81\xf3\x1e\x87\xb5\x89\xa1\x97\x1a\x9d\x91\x95\x97\x91\x8d\x8a\x80\x96\x1e\x82\x95\x96\x86\x99\x1b\xa5"
+"\xa1\xa1\xa6\xaa\x6f\xa3\x68\x5f\x6c\x6c\x51\x7d\x1f\x7b\x4b\x86\x42\xfb\x41\x1a\xfc\xf2\x07\x0e\xf7\xef\xf9\x64\x16\xf7\x8a\x07"
+"\xf7\x1d\x86\xad\x73\xb4\x1e\xca\x65\x44\xb1\x39\x1b\x3f\x4b\x6c\x53\x62\x1f\x6a\x5e\x85\x6b\xfb\x29\x1a\xfb\x8a\xc7\xf7\x8d\x07"
+"\xf0\x91\xb6\x9c\xaa\x1e\xb9\xa4\xc2\xa9\xc4\x1b\xc0\xbf\x71\x61\xa7\x1f\xa0\x6b\x91\x66\xfb\x06\x1a\xfb\x8d\x07\x0e\xf7\xef\xf8"
+"\x89\xf9\x6e\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37"
+"\xf7\x37\xfb\x5e\x1f\xfb\x01\xfb\x63\x15\xa9\xa4\x72\x6d\x6d\x72\x72\x6d\x6e\x71\xa4\xa8\xaa\xa4\xa4\xa9\x1f\xfb\x14\xfb\x05\x15"
+"\x96\x59\x96\x75\xa5\x6d\x08\x54\xbb\xc7\x71\xdc\x1b\xdc\xc7\xa5\xc2\xbb\x1f\xa5\xa9\x96\xa1\x96\xbd\x84\x36\x80\x62\x6d\x5e\x08"
+"\x4c\x61\x4b\x6b\x38\x1b\x3e\x4f\xa6\xc1\x61\x1f\x67\xba\x7c\xb8\x84\xe8\x08\xf7\xee\xf7\x05\x15\xa9\xa4\x72\x6d\x6d\x72\x72\x6d"
+"\x6e\x71\xa4\xa8\xaa\xa4\xa4\xa9\x1f\x0e\xfc\x0b\x59\x1d\x51\x7e\x4b\x82\x3b\xb2\x1d\x66\xa7\x71\xb2\x8e\x93\x8b\x8c\x91\x1e\x6e"
+"\x63\x83\x79\x71\x31\x0a\xb5\xad\x93\x9b\xaf\xb0\x1f\xa3\xa4\x95\x99\xa6\xb4\x08\x5f\xf8\xc1\x57\x1d\xfc\x0b\x37\x0a\x0e\xfc\x0b"
+"\x37\x0a\x30\xf8\xb3\x15\xf5\x1d\xa7\xac\xae\x6f\xa8\x6b\x1f\xf7\x1f\x9e\x0a\xfc\x0b\x37\x0a\x5c\xf8\x7c\x15\xa8\x06\x8f\x91\x97"
+"\xa1\x05\xb1\xc7\x8d\x8f\x9e\x1a\x9e\x7a\x98\x73\x7c\x7c\x85\x82\x83\x1e\x84\x83\x87\x78\x8c\x75\x8f\x5d\x18\x71\x07\x3c\x86\x15"
+"\x9a\x0a\xaa\x72\xa5\x6e\x1f\xf7\x4d\x16\x6d\x73\x73\x6c\x6b\xa4\x71\xa9\xa8\xa3\xa4\xa9\xaa\x72\xa6\x6e\x1f\x0e\xfc\x0b\x37\x0a"
+"\x43\xf8\x32\x15\xbe\x06\x93\x9a\x92\x99\x91\x98\x08\xbb\xe6\x8f\x94\xa4\x1a\xa6\x75\x9e\xf6\x1d\x74\x8a\x5e\x08\x8a\x60\x8a\x72"
+"\x81\x1a\x0e\xfc\x0b\x2c\x1d\xef\xf8\xa4\x7a\x0a\x80\xa6\x95\x89\x9e\x1b\xc7\xae\xae\xdf\xa2\x1f\x0e\xfc\x08\xab\xf8\x2b\x15\xbe"
+"\x96\x86\x71\x7e\x87\x74\x83\x6d\x1f\x2f\xfb\xf7\x05\x26\x71\x7a\x6d\x6e\xee\x1d\x93\x96\x8d\xad\x0a\xef\xcf\xd7\xf7\x2f\xb4\x1e"
+"\xf7\x06\xf8\x4a\x4f\x7e\x65\x86\xfb\x02\x81\x19\xf7\x79\xdd\x23\x1d\xfb\x0f\xf7\xbb\xf7\xb4\x15\xbf\xbf\xaa\xa1\xa0\x1b\x8c\x9b"
+"\x88\x85\xa2\x1f\x8a\x92\x94\x8a\x96\x1b\xb8\xa5\xa1\xaf\xa6\x77\x9c\x69\x6b\x6c\x7f\x6f\x66\x1f\x6b\x73\x85\x86\xfb\x1b\xfb\x25"
+"\xc2\xf7\x6a\x18\xfb\x45\x6f\x84\x73\x05\x8c\x93\x91\x8c\x90\x1b\x9c\x9a\x7d\x7c\x83\x8b\x8b\x82\x68\x1f\x36\xfb\xdf\x05\xf7\x03"
+"\x06\xc6\xf7\x7c\xd4\xfb\x44\x05\x5f\x9d\xa0\x7a\xb0\x1b\xa9\xa4\x97\xa1\x9d\x1f\x9a\x9d\x92\x97\xa4\xbe\x78\x97\x18\x5f\x74\x81"
+"\x80\x77\x1b\x7c\x84\x94\xb9\x78\x1f\x0e\x75\x1d\x51\xfb\xd8\x35\x1d\xf7\x41\xf7\x42\x15\xce\xc4\xb2\xfb\x41\x05\x60\x94\xa0\x77"
+"\xae\x1b\xbb\xb9\xb9\xdf\xb1\x1f\x72\x06\x62\x78\x80\x7f\x7b\x1b\x7e\x83\x99\xb2\x83\x1f\x60\xf7\x4e\xd1\xc7\xb5\xb2\xb2\xa0\xa6"
+"\x8a\x19\x91\x9f\x05\xfb\x5b\x06\x86\x77\x05\xb3\x87\x95\x84\x77\x1a\x7c\x81\x7a\x7b\x7c\x1e\xfb\x2b\xfb\x19\xda\xf7\x8c\xfb\x47"
+"\x71\x85\x73\x05\xa7\x98\x81\x73\x82\x89\x7e\x87\x7f\x1f\x23\xfb\xf1\x05\xf7\x07\x06\x0e\xfc\x0b\x41\x0a\x66\xf8\xeb\x8c\x0a\xfb"
+"\x65\x61\x16\xf7\x19\x06\xf7\x39\xf7\x93\x05\x80\x4d\x87\x5b\x53\x1a\x67\x8d\x78\x91\x7f\x1e\x77\x93\x99\x81\x9d\x1b\xb2\xb7\xbd"
+"\xd8\xa8\x1f\x7a\x93\x05\x60\x6d\x7f\x81\x76\x1b\x73\x80\x9c\xaf\xd5\x9b\xf7\x68\x9a\xf7\x09\x1f\x8e\xa4\x8d\xa3\x97\x1a\xbd\x72"
+"\xa8\x60\x65\x74\x72\x62\x76\x94\x7a\x9f\x7a\x1e\xb3\x6a\x92\x7f\x69\x1a\x83\x8b\x82\x8a\x81\x1e\x0e\xfb\x8b\x41\x0a\xca\xf7\xa6"
+"\x15\xf4\xb9\xce\x98\x0a\x67\x68\x45\x65\x1e\x0e\xfc\x0b\xf7\x6b\xe0\x1d\x98\x92\xa9\x9a\xc4\xae\x0a\x96\x8e\x8b\x92\x1b\xa6\x9a"
+"\x81\x79\x7d\x7d\x4e\x78\x48\x1f\x40\xfb\x9c\x05\x76\x3e\x7e\x51\x74\x1a\x67\xa6\x73\xb4\xc8\xb1\xaa\xf4\xd0\x1e\xfb\xc7\xfc\x57"
+"\x44\x1d\xfb\xa6\xf7\x6e\x6f\x0a\xe6\xf7\xad\x15\x61\x6a\xb0\x0a\x0e\xf7\xef\xf9\x0b\x8c\x15\xa1\xdf\x05\xfc\x3b\x06\x74\x37\x05"
+"\xf8\xd6\xf8\xd4\x15\xfc\x79\xfb\x79\x86\x77\xf7\xff\xfb\x76\xa9\xf7\x05\xfb\x88\xf7\x26\xf7\xd8\xf7\x2c\x05\x0e\x99\x34\x1d\xf8"
+"\xb9\xfb\xc8\x73\x0a\xfb\x44\x7e\x56\xb4\x0a\xfb\xd4\xf7\x22\xf8\x26\x15\x5c\xfb\x69\x6c\xfb\x1f\x84\x68\x08\xfb\x25\x6e\x77\x61"
+"\x64\x1b\x81\x83\x90\x91\x8d\x8c\x8e\x8e\x8f\x1f\x93\x96\x8f\x96\x96\x1a\xa3\x73\xa3\x72\x70\x73\x72\x6f\x5b\xb2\x6c\xc6\xc0\xb6"
+"\xa1\xb6\xad\x1e\xb8\xc4\xb3\xf7\x03\xac\xf7\x31\xdb\xf8\x12\x8d\x94\xa5\xb7\x08\xa6\x9b\x9c\x98\x9d\x5e\x1d\x80\x66\x1d\xa8\xa0"
+"\xa1\xaa\xbb\x65\xaa\x4f\x57\x5b\x76\x64\x68\x1e\x62\x5d\x77\x62\x70\x27\x08\x43\x06\x82\x61\x05\x0e\xd0\xf8\xc1\xf8\xe5\x15\x43"
+"\xbc\x9c\x79\x9c\x1b\x95\x93\x92\x95\x91\x8a\x8f\x84\x99\x1f\x74\xb6\x7a\xcb\xb7\x1a\xa9\x89\x91\x7e\x86\x84\x88\x83\x7e\x1e\x78"
+"\x70\x3d\x75\x60\x1b\x71\x8a\x83\x86\x7e\x1a\x75\xad\x81\xe2\x85\x1e\x25\xfb\x4d\x05\x97\x6c\x6e\x91\x6b\x1b\xfb\x1a\xfb\x00\xfb"
+"\x00\xfb\x1a\xfb\x19\xf7\x00\xfb\x00\xf7\x1a\xf7\x19\xf7\x00\xf7\x00\xf7\x1a\xd8\x66\xd3\x4c\xb9\x1f\xfb\x22\x7b\x15\xee\xdc\x3b"
+"\x28\x28\x3b\x3a\x28\x27\x3b\xdb\xee\xee\xdb\xdc\xee\x1f\x0e\xfc\x08\xf7\x48\xf7\xf8\x15\xf2\xf7\x51\x05\xa0\xb3\x97\xaa\x9e\x1a"
+"\xa7\x74\xa0\x6c\x4c\x64\x56\x35\x89\x1e\x89\xfb\x51\x05\x0e\xf7\x81\xf7\x43\x15\x92\x7c\x77\x8f\x7a\x1b\x4d\x54\x56\x50\x68\xa5"
+"\x75\xb4\xba\xb7\xa2\xb1\xa6\x1f\x9f\xa6\x91\xa1\x8d\xbb\x08\xf7\xb9\x07\xc3\x83\xb9\x3f\x38\x1a\x59\x83\x65\x73\x54\x1e\xa6\x06"
+"\xaf\xb6\x9e\xc2\xc5\x1a\xd6\x6e\xd2\x51\xd1\x1e\x58\xc8\x8a\x8c\x86\x92\x83\x95\x19\xc5\x5f\x07\x0e\xd0\xf8\x13\xf8\x57\x15\x9e"
+"\x72\xa1\x78\xa0\x7f\xc3\x6b\x94\x85\x90\x82\x08\x91\x80\x8f\x78\x76\x1a\xfb\x7c\x07\x92\x7a\x74\x8f\x78\x1b\x46\x4d\x56\x4f\x68"
+"\xa8\x75\xb8\xbe\xbb\xa2\xb1\xaa\x1f\xa0\xa6\x92\xa1\x8d\xbc\x08\xf8\x00\x07\x8c\xd3\x6a\xd5\x5d\xa7\x54\xaf\x6d\x9f\x87\x8f\x08"
+"\x7e\x99\x85\x9d\xa2\x1a\x98\x5f\xfc\x80\x07\x92\x7b\x74\x8f\x79\x1b\x46\x4f\x56\x4f\x68\xa7\x75\xb7\xbe\xbb\xa2\xb1\xa8\x1f\xa0"
+"\xa6\x92\xa1\x8d\xbc\x08\x8e\xf8\x0a\x15\xf7\x03\x4f\xa3\x67\x8f\xfb\x08\xfb\x06\xc8\x74\xae\x87\xf7\x09\x08\x0e\x2a\x30\x1d\xfb"
+"\x55\xf8\x1e\x29\x0a\xb9\xe1\xf8\x5d\x15\xc5\x9f\xa6\x9a\xa8\xa4\x08\xb4\xad\xa0\xb3\xb5\x1a\xba\x6e\xac\x63\x67\x6e\x6d\x67\x78"
+"\x92\x7a\x9a\x79\x1e\x9b\x78\x8f\x84\x82\x1a\x6e\x6a\x70\x4f\x75\x1e\xf8\xb6\xfb\xed\xe1\x1d\x90\x9c\x9f\xc7\x1f\xb0\xf7\x01\x05"
+"\x9a\xb8\x95\xb9\xa3\x1a\xbc\x71\xa5\x5c\x66\x67\x7c\x71\x70\x1e\x66\x68\x78\x73\x49\x28\xca\xf7\x5a\x18\x4c\x7d\x3a\x6b\x1d\x8a"
+"\x97\x86\x78\x1a\x7f\x7d\x54\x6c\xfb\x03\x1e\x72\x32\x85\x78\x71\x2b\x08\xf7\x0d\x06\xba\xf7\x41\xb0\xe2\xc8\xdc\x08\xa6\x9f\xaa"
+"\xa1\x9d\x1b\x98\x97\x81\x80\x87\x89\x83\x88\x82\x1f\x54\xfb\x3a\x05\x7b\x59\x7f\x54\xe7\x1d\x0e\x2a\x30\x1d\xa9\xf8\xcc\x20\x0a"
+"\x2a\x30\x1d\xfc\x3c\xfc\x52\x35\x1d\xf7\xef\xf8\xa4\xf7\x6c\x15\xf7\x83\xc8\xfb\x60\x06\xe3\xf7\x2f\x05\xf7\x08\xc9\x3a\x06\xac"
+"\xc6\x61\xa3\x5c\x38\x05\xfb\x23\x62\x1d\x42\x2c\x1a\xfb\x08\xb8\x37\xdc\x69\x1e\x6a\x52\xb6\x74\xb1\xce\x05\x88\xa4\x99\x8a\xb4"
+"\x1b\xf7\xac\xc9\xfb\xb7\x06\x77\x85\x8b\x8c\x81\x1f\xab\xf7\x2d\x15\x3a\xfb\x21\x57\x9d\x6c\xbe\x88\xd3\x19\xf7\xb6\xf7\x6c\x15"
+"\x33\xfb\x2f\x05\xfb\x5e\x06\x91\xf6\xc3\xbd\xf7\x01\x89\x08\x0e\xf7\xef\xf8\xd6\xf7\xcb\x15\xf7\x42\xe3\xfb\x15\x06\xb3\xdc\x3d"
+"\xb2\x4e\xfb\x0c\x05\xfb\xa8\x33\xf7\x7c\x06\x51\xfb\x08\x05\xfb\x42\x33\xf7\x15\x06\x63\x3a\xd9\x64\xc8\xf7\x0c\x05\xf7\xa8\xe3"
+"\xfb\x7c\x06\x0e\xfb\x65\xd1\xf7\xbe\x15\xbd\x99\xa3\xb1\x9c\x1b\x9b\x90\x52\xfb\x52\x53\x89\x6e\x82\x55\x1f\xab\x84\x9c\x9f\x92"
+"\x92\xa7\xa5\x19\xf7\x24\xf7\x1c\xd3\xf7\x02\xde\x1a\xb5\x6d\xaf\x67\x71\x75\x72\x6d\x76\x90\x7f\xa0\x6e\x1e\x97\x7a\x91\x7b\x7d"
+"\x1a\x64\x6c\x5c\x3c\x39\x1e\x8c\xd1\x8b\x95\x9a\x1a\xc6\x88\xbc\x86\xb0\x1e\xc5\x82\x6e\xad\x61\x1b\x55\x5a\x54\x35\x76\x1f\x0e"
+"\x23\x0a\xf7\x2b\xf7\x89\xad\x1d\xcc\xc5\xf3\x9c\x1e\x0e\x23\x0a\x42\xde\x15\xf7\x2b\xe2\x05\xa9\x9c\x94\x96\x9e\x1a\xa5\x76\xa0"
+"\x70\x7a\x93\x0a\xf7\x82\x16\xac\x1d\x23\x0a\xf7\x5e\xf7\x52\x15\xfb\xd9\x06\x7a\x45\x05\xf7\xda\x06\x0e\xd1\xf7\x93\xf8\x57\x5f"
+"\x0a\xd1\xf8\x24\xf8\x9e\x15\xbf\x06\x8e\x93\x92\x99\x95\x9f\x08\xbb\xe6\x8f\x94\xa4\x1a\xa7\x75\x9d\x6b\x73\x75\x80\x7a\x81\x1e"
+"\x83\x7d\x8a\x7c\x89\x21\x89\x64\x18\xfb\x26\x39\x5f\x0a\x6d\x0a\x0e\x6d\x0a\x83\xf2\x15\xbe\x06\x8f\x94\x9c\xac\x05\xbc\xe8\x8e"
+"\x92\xa4\x1a\xa6\x75\x9e\x6b\x77\x76\x83\x7e\x81\x1e\x81\x7f\x86\x74\x8a\x5e\x8a\x4d\x18\x86\x8a\x7e\x8a\x76\x1e\x0e\xf7\xda\x93"
+"\x16\xfa\x56\xd3\xfe\x0e\xfa\x03\x43\x06\x0e\x5e\x0a\xf7\x23\xf8\x76\x15\xac\x1d\xf6\xf9\x18\x15\xa6\xc3\xa1\x91\xb3\x1b\xa0\xa3"
+"\x85\x81\x9c\x1f\xc0\x6b\xab\x39\x20\x1a\x6e\x8a\x75\x87\x69\x1e\xb5\x52\x67\x99\x58\x1b\x5a\x62\x7a\x67\x66\x1f\x5a\x5b\x6f\x49"
+"\x49\x1a\xfb\x02\xe3\x33\xf7\x01\xcb\xc3\xa5\xbc\xb5\x1e\xc6\xd0\xb1\xf7\x1c\xf7\x1f\x1a\xf7\x0c\x5f\xf0\x39\xd0\x1e\xaf\x60\x58"
+"\x9d\x51\x1b\x60\x6d\x84\x71\x43\x1f\xf7\xc6\xfc\x2e\x15\x7b\xfb\x02\x7d\x58\x71\x60\x08\x61\x70\x69\x73\x67\x1b\x59\x6e\xb9\xd8"
+"\xf6\xc9\xe2\xd7\xad\xa3\x7f\x68\xaf\x1f\x0e\xf7\x75\xf7\x55\x73\x1d\xf8\x49\x6f\x15\x59\x06\xa7\xf2\x05\x6b\x06\x63\x50\x69\x6f"
+"\x51\x75\x08\x6b\xae\x07\x5c\xfb\x37\x05\x80\x63\x85\x6f\x7e\x1a\x6d\xa1\x77\xab\xb8\xa5\xa0\xdb\xbf\x1e\x75\x99\x05\x67\x73\x77"
+"\x75\x81\x1b\x88\x87\x8e\x8f\x98\x99\xc0\xa3\xde\x1f\x92\xa3\x90\x9a\x96\xb5\x08\xc7\x06\x0e\x47\xf7\x6b\xfb\x52\x15\xb6\xf7\x42"
+"\xcd\x8e\xc7\xa5\xc0\xbc\x19\xcd\xc9\xb7\xea\xdb\x1a\xe4\x4a\xd2\x39\x65\x65\x7b\x70\x70\x1e\x75\x74\x7a\x68\x7d\x52\x44\xfb\xb3"
+"\x18\x81\x8e\x84\x8e\x87\x8f\x08\x7b\x96\x80\xa8\xac\x1a\xde\xb0\xf7\x1d\xb1\xc7\x1e\xa1\xae\xa1\x9d\xac\x96\x8f\x9d\x18\x48\x88"
+"\x5b\x77\x58\x5b\x08\x49\x4e\x64\x36\x38\x1a\x4c\xa4\x55\xb5\x6e\x1e\xa4\x7a\xa0\x84\xb5\x86\x60\xfb\x42\x18\xf7\x66\xf8\x6a\x15"
+"\xef\xa4\x96\xa3\x9f\x1b\xa1\x9b\x6c\x64\x34\x5a\xfb\x29\x5f\x5e\x1f\x75\x75\x7c\x82\x6d\x83\x08\x0e\x20\xf8\xda\xf8\x50\x15\xfc"
+"\x18\x06\x45\x7e\x86\x5f\x63\x1f\x3e\x30\xb3\x7a\xae\xb8\xaf\x9c\xcc\x8d\x19\x7d\x57\x7f\x68\x79\x62\x65\x39\x86\x84\x63\x72\x7b"
+"\x80\x18\x6f\x78\x7d\x73\x6f\x1a\x75\xa2\x7a\xab\xb5\xab\xa8\xc8\xa8\x1e\xab\xce\x8b\x8b\xc7\xf7\x63\x08\xf7\x3b\x06\x4f\x74\x68"
+"\x63\x7a\x4a\x6b\xfb\x18\x18\x87\x7c\x89\x7d\x83\x1a\x6e\xa7\x65\xa0\x8e\x91\x8d\x8e\x92\x1e\xf7\x0a\xba\x94\xaf\x05\x82\x73\x82"
+"\x88\x7f\x1b\x7c\x84\x95\xa0\x99\x8b\x8c\x92\xa8\x1f\xad\xf7\x20\x94\xae\x90\x95\xa2\xa7\x19\xf3\x06\x0e\xf7\xef\xf9\x45\xf9\x55"
+"\x15\xfd\x72\x07\x54\x8a\x78\x77\x54\x1b\x7b\x78\xf7\xb8\x9e\x7a\x06\x55\x77\x9f\xc2\x1f\xf9\x3b\x07\xc4\xa0\xa2\xc0\x1e\x9c\x9d"
+"\xfd\x9f\x79\x9b\x06\xc1\x9f\x75\x51\x8c\x1f\xfd\x3b\x07\x54\x8a\x77\x77\x55\x1b\x7b\x78\xf7\xb8\x9e\x7a\x06\x55\x77\x9f\xc2\x1f"
+"\xf9\x72\x07\x0e\xf7\xef\xf9\x93\xc9\x15\xfb\xb7\x06\xfb\x0d\x57\xc2\xf7\x16\xf7\x15\xbf\xc3\xf7\x0d\x1f\xf7\xb7\xc9\xfb\xac\x62"
+"\x1d\x43\x2b\x1a\xfb\x07\xb8\x37\xef\x1d\x06\x0e\xf7\xef\xf7\x7d\xc9\x15\x4d\xf7\xac\x07\xde\xae\x92\xa4\xb1\x1f\xcc\xb7\xac\xd3"
+"\xf2\x1a\xf6\x5c\xe0\x3e\xac\x1e\x99\x69\x70\x8f\x46\x1b\xfb\xac\x4d\xf7\xb7\x06\xf7\x0d\xbf\x54\xfb\x16\xfb\x16\x57\x54\xfb\x0d"
+"\x1f\x0e\x9a\xbf\xf7\xb8\x15\xbf\xa4\xa8\xaf\x9d\x1b\x91\x8f\x85\x83\x84\x8b\x8b\x82\x69\x1f\x83\x6a\x05\x73\x2c\x86\x71\x6d\x1a"
+"\x37\xcf\x52\xee\x1e\x5d\xfb\x46\x05\xf7\x02\x06\xb2\xf7\x41\xe5\x97\xbf\xa8\xba\xca\x19\xbf\xd1\xae\xf7\x00\xe8\x1a\xc0\x75\xa9"
+"\x65\x6b\x73\x71\x68\x77\x91\x7b\x9a\x72\x1e\x9f\x6a\x8f\x7e\x71\x1a\x64\x7b\x58\x71\x62\x1e\x64\x4c\x65\x72\x3d\x7d\xea\xf8\x37"
+"\x18\x2f\x06\x21\xfc\x32\x05\x5f\x8c\x71\xae\xc2\x1a\xa4\x91\xa8\x9d\xd3\x1e\xa1\xe1\x05\x92\xa5\x8e\x9d\x9a\x1a\xaf\x73\xa3\x67"
+"\x53\x50\x53\x2f\x61\x1e\x0e\xfb\xd4\xf7\x86\xf7\xf7\x15\x72\xc1\x81\xae\xaa\x1a\xb6\x9b\x9a\xb5\x89\x1e\xa6\x89\x9e\x8f\x96\x95"
+"\x08\x9d\x9b\x95\xa0\xa1\x1a\xb2\x68\xab\x5f\x70\x73\x7d\x70\x75\x1e\x74\x6d\x82\x6c\x5d\x1a\x4c\x9b\x54\xae\x4c\x1e\x0e\xfb\x9c"
+"\x40\x0a\xf7\x51\xdd\x29\x1d\xd0\xf8\x3f\x68\x15\xb6\x06\xf7\x2c\xfa\x40\x3e\x96\xfb\x09\xfd\x69\xfb\x44\xf7\xf8\xfb\x4a\x32\xac"
+"\x44\xea\xba\x05\x0e\xfb\x9c\x40\x0a\xf8\x30\xf7\x94\x20\x0a\xfb\x9c\xc0\x0a\x6d\xfb\x05\x43\xfb\x88\x1e\xf7\x0d\x06\xb9\xf7\x26"
+"\x9d\xa8\x0a\x91\x1f\x7a\x9a\x98\x83\x9c\x1b\xac\xa4\xaa\xb5\xb3\x74\xa5\x69\x58\x63\x59\xfb\x33\x3b\xba\x0a\x29\xfd\x8a\x44\x1d"
+"\xf7\x80\xf7\xac\xf7\x00\x15\xf7\x5f\xf8\x34\xe3\xfc\x8c\xfb\xb7\x07\x0e\xfb\x1e\x7c\xfb\x46\x15\xf7\x03\x06\xc3\xf7\x6f\x05\x6a"
+"\x9b\xa6\x7b\xb0\x1b\xf5\xf7\x05\xf7\x2a\xf7\x22\xf1\x52\xce\x34\x5a\x58\x78\x6a\x66\x1f\x63\x67\x7e\x6c\x6a\xfb\x12\x08\xf7\x19"
+"\xdd\x15\x99\xc4\x95\xa8\x95\x9a\x08\x9d\x98\x9a\x95\x9d\x1b\xa5\x99\x71\x5d\x2d\x68\xfb\x19\x63\x4f\x1f\x7a\x7f\x79\x80\x7a\x1b"
+"\x75\x7d\x98\xad\x7a\x1f\x0e\xfb\x9c\x3d\x1d\x2d\xf7\x64\x29\x1d\xfb\x9c\xf7\x06\x7f\x15\x8a\x93\x92\x8b\x8f\x1b\xde\x9d\x0a\xa6"
+"\x67\x38\x9a\x1e\xa6\x89\xa2\xf7\x2d\x05\x7d\x0a\x76\x96\x9f\x7b\x5d\x1d\x91\x97\x88\x86\x98\x1f\x8c\x8e\x8a\x8a\x8e\x1f\x4f\x32"
+"\x98\x7f\x05\x8e\x97\x92\x8c\x96\x45\x1d\xfb\x9c\x3d\x1d\xad\xf7\x64\x23\x1d\xfb\x9c\xf7\xe1\xf8\x61\x15\x7d\x0a\x75\x96\x9f\x7c"
+"\x5d\x1d\x92\x96\x88\x86\x98\x1f\x83\xa3\x9d\x87\xa0\x1b\xe0\x9d\x0a\xa5\x67\x38\x9b\x1e\xa6\x89\x05\xfb\xd8\xfd\x0c\x44\x1d\x26"
+"\xf8\x3d\xf7\xf8\x15\xf1\xf7\x51\x05\xab\xc8\x8e\x92\x9f\x1a\xa9\x75\xa0\x6c\x6f\x6e\x7d\x73\x76\x1e\x78\x74\x85\x72\x8a\x56\x87"
+"\xfb\x51\x18\xfb\x6a\x16\xf2\xf7\x51\x05\xa1\xb4\x97\xaa\x9d\x1a\xa7\x74\xa0\x6b\x4d\x63\x55\x37\x8a\x1e\x88\xfb\x52\x05\x0e\xfb"
+"\x06\xf8\xd3\xf8\x50\x15\xfb\x6f\x06\xfb\x00\x5c\x7e\x60\x53\x1f\x44\x53\x5c\x2d\x33\x1a\x29\xcd\x4b\xee\xf7\x27\xf7\x14\xf7\x06"
+"\xf7\x17\xb0\x7e\xad\x76\xa0\x1e\x7e\x97\x7e\x91\x71\x94\x08\xf7\x40\x06\xfb\x6d\x16\x97\x74\x8e\x7e\x72\x1a\x56\x77\x38\x71\x53"
+"\x1e\x55\x72\x6f\x73\x64\x1b\x60\x70\xa9\xbc\xdb\xac\xf7\x00\xae\xac\x1f\xa2\xa4\xa4\x93\xbe\x1b\x0e\xf7\xef\xf8\x1b\xf8\x9a\xc0"
+"\x1d\xfb\x14\xfb\x00\x15\x92\x36\x96\x62\xa9\x5e\x08\x4c\xb5\xcb\x6b\xde\x1b\xd8\xc7\xa6\xc1\xb5\x1f\xaf\xba\x9a\xb8\x92\xe8\x80"
+"\x59\x80\x75\x71\x6d\x08\x54\x5b\x4f\x71\x3a\x1b\x3a\x4f\xa5\xc2\x5b\x1f\x71\xa9\x80\xa1\x80\xbd\x08\xf7\xee\xf7\x00\xc0\x1d\xfb"
+"\x01\xf7\x68\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37"
+"\xf7\x37\xfb\x5e\x1f\x89\x5a\x15\xf7\x45\xf7\x21\xfb\x20\xfb\x44\xfb\x43\xfb\x21\xfb\x21\xfb\x43\xfb\x41\xfb\x23\xf7\x21\xf7\x3e"
+"\xf7\x47\xf7\x1e\xf7\x22\xf7\x44\x1f\x0e\xf7\xef\xf8\xab\xf7\x99\x15\x7f\x07\x44\x6b\x45\x5a\x66\x1e\x6c\x62\x56\x7a\x57\x1b\x7e"
+"\x74\xf8\x77\xa2\x06\xfb\x32\x91\x3c\xe3\x8e\xf7\x3d\x08\x35\xb9\xb6\x6d\xda\x1b\xcd\xc4\xca\xd4\xd0\x73\xb0\xfb\x01\xef\x1f\xfb"
+"\x02\xf1\x7a\xa5\x63\xf7\x09\x7c\x30\x4d\x30\x23\x39\x08\x3c\x49\x67\x51\x4c\x1a\x40\xc8\x4d\xd4\xb4\xb4\x9c\xa9\xac\x1e\x9e\x9d"
+"\x96\x9a\x9c\xb0\x08\x0e\xf7\xef\xf7\xee\xf9\x5b\x15\xf7\x85\x06\xf4\x8a\xa5\x75\x9a\x26\x08\xa2\x06\x82\xf7\x39\x05\xfc\xaf\x06"
+"\xf7\x66\xfc\x67\xfb\x6e\xfc\x2c\x05\xf8\xc8\x06\xbc\xf7\x66\x05\x74\x06\x6f\x3b\x6c\x78\x26\x8c\x08\xfb\xbc\x06\xf7\x49\xf7\xf4"
+"\x05\x0e\xf7\xef\xf7\xcd\xf8\x77\x15\x6e\x66\x7c\x67\x85\x5b\x08\xfb\x05\x54\xf7\x05\x06\x8f\x61\x9e\x5b\xa6\x6a\x3b\x3c\x18\xb1"
+"\x65\xdb\xdb\xb1\x6e\xb2\x7b\xb8\x86\x19\xfb\x05\xc1\xf7\x05\x07\xb7\x90\xb9\x9e\xab\xa5\xdb\x3b\x18\xb0\xb1\x3b\xdb\xa8\xae\x9c"
+"\xb5\x90\xb8\x19\xf7\x05\xc2\xfb\x05\x06\x86\xb6\x79\xb7\x70\xad\xda\xda\x18\x66\xb1\x3b\x3b\x6c\xa5\x5f\x9e\x5c\x91\x19\xf7\x04"
+"\x55\xfb\x04\x07\x60\x86\x5c\x78\x6b\x70\x3b\xdb\x18\x65\x65\x05\xf7\x9c\x55\x15\xec\xd8\x40\x2d\x2b\x3f\x3e\x2c\x2d\x3e\xd8\xea"
+"\xe7\xd8\xd9\xe6\x1f\x0e\xfb\x65\xf8\x70\xf8\x50\x15\xfb\xbc\x06\x49\x7b\x85\x6d\x73\x1f\x34\xfb\x07\xb5\x7c\xb8\xc5\xb2\x9c\xe4"
+"\x8a\x19\xbb\x06\x50\x78\x66\x62\x78\x47\x6a\xfb\x1c\x18\x89\x82\x89\x7e\x82\x1a\x69\xa5\x68\xa5\x8f\x8e\x8c\x8c\x8f\x1e\xf7\x12"
+"\xbc\x94\xb1\x05\x80\x6e\x7f\x88\x7e\x1b\x7d\x85\x91\x9a\x9b\x91\xaa\x97\xbd\x1f\x9c\xd3\x9a\xc5\x93\x9d\xa1\xa2\x19\xf7\x2b\x06"
+"\x0e\xfc\x0b\xf7\x3a\xf7\xba\x15\x91\x9e\x94\xad\x8c\x8d\x9b\xc5\x19\xde\xb5\x43\xc4\x1d\x6b\xfb\x05\x05\x5e\x06\x7d\x55\x05\xb6"
+"\x06\x77\x44\x85\x0a\x9c\x98\xbe\xa6\xeb\x1f\xe0\x06\x98\xc1\x05\x0e\xfb\x9e\xf7\xb7\xf8\x42\x15\x91\x7b\x05\xea\xc3\xba\xc9\xcc"
+"\x1a\xc0\x6c\xae\x5d\x66\x70\x6f\x65\x73\x94\x7c\xa6\x79\x1e\xa0\x7e\x91\x82\x7e\x1a\x74\x73\x6c\x66\x73\x1e\x30\x83\x1d\xfc\x0b"
+"\xdd\x84\x15\xbd\x95\xb2\xaf\xc1\xe3\x75\x99\x18\x57\x6a\x70\x6f\x7b\x1b\x83\x83\x92\x93\x9e\x9e\xd7\xae\xf7\x09\x1f\x96\xb1\x90"
+"\x9f\x9c\xc8\x08\xde\xb5\xb5\x0a\x56\x3b\x58\x6c\x1d\x47\xfb\x82\x05\x7c\x57\x82\x60\x79\x1a\x6b\x9e\x73\xa9\x84\x1e\x51\x36\x3e"
+"\x0a\x93\x8c\x95\x45\x1d\xfb\x1a\xf7\xf9\xf9\x32\x15\x21\x3d\x3b\xfb\x35\x57\x1f\x6f\x33\x75\xfb\x07\x4f\x1a\xfb\x05\xbb\x4e\xe5"
+"\xe2\xd8\xc5\xed\xb6\x1e\xb9\xf3\xaf\xf7\x30\xe8\x1a\xbc\x7f\xb9\x76\xa7\x1e\xac\x73\x6d\x98\x55\x1b\x8f\xfb\xe2\x15\x6e\xfb\x0c"
+"\x79\x4d\x76\x57\x08\x5c\x78\x6f\x6f\x6d\x1b\x70\x7a\xa3\xb4\xc1\x93\xb8\xac\xf7\x25\x1f\x94\xb0\x15\xf7\x61\xbd\xa8\xc6\xc0\x1b"
+"\xa6\x9a\x74\x60\x55\x84\x5e\x75\x28\x1f\x0e\xfb\xd4\xf7\x61\xf8\x66\x15\xbe\x06\x97\xa3\x92\x99\x8d\x8d\x08\xbb\xe4\x8f\x93\xa4"
+"\x1a\xa5\x75\x9d\x6b\x77\x77\x83\x7f\x80\x1e\x81\x80\x86\x73\x8a\x60\x8a\x40\x18\x0e\x30\xf8\x6c\xf7\x19\x5d\x0a\x72\xf8\xc2\x15"
+"\x49\x6b\x69\x57\x0a\x06\x55\x8d\x7c\x98\x70\x1e\x5f\x9e\xb4\x69\x1d\x2a\x26\x0a\xfb\x9a\xf8\x20\x51\x1d\x2a\x26\x0a\x98\xf8\x8b"
+"\x25\x0a\xfb\x5f\x04\x34\xf8\x88\xe2\x07\xfc\x88\xf7\x32\x15\x34\xf8\x88\xe2\x07\x0e\xfc\x27\x0e\xfb\xd4\xc9\x1d\x61\x43\x0a\xfc"
+"\x99\xfd\xb5\x39\x0a\xfc\x0b\xf7\xad\xf8\x55\x15\xb5\x0a\x56\x3b\x58\x6c\x1d\x47\xfb\x82\x85\x0a\x9e\x9d\xd4\xaf\xf7\x0c\x1f\x94"
+"\xad\x92\xa3\x9c\xc8\x08\xde\x06\xfb\xf2\xfd\x6f\x44\x1d\xfb\xd4\xf8\x1d\xf9\x03\x25\x0a\xfc\x27\xf7\x12\xf8\x29\x2b\x0a\x71\x74"
+"\x16\xf8\x8e\x06\xa5\xf9\x2a\x05\x70\x06\xfb\x15\xfc\xed\x15\xfb\x2e\x06\x53\x8c\x8b\x8b\x80\x8f\x08\x81\x8e\x85\x93\x94\x1a\x97"
+"\x9a\xa5\xac\xb8\x1e\xf7\x62\xf7\xab\x05\x0e\xe8\xf9\x58\xf7\x44\x15\x4d\x06\x70\x4d\x7e\x81\x55\x8a\x08\x61\x06\x6c\x77\x89\x87"
+"\x6b\x1f\x95\x98\xdd\x97\xb8\xa1\xb7\xbc\x19\xca\xd3\xb5\xf4\xe2\x1a\xbb\x79\xbe\x6d\xb0\x1e\xc6\x5d\x40\xa6\xfb\x07\x1b\xfb\x2a"
+"\xfb\x05\x54\xfb\x02\x42\x1f\x63\x4f\x74\x41\x43\x1a\x4a\x9e\x53\xad\x67\x1e\xa0\x75\x9e\x81\xb5\x82\x8e\x7e\x18\x8f\x6d\x79\x8d"
+"\x6b\x1b\x61\x06\x61\x7a\x9d\xb4\x8d\x1f\x8d\x8b\x91\x8a\x91\x1e\x4e\x06\x84\xfb\x44\x05\xf7\xcf\x06\xa4\xef\x05\x4b\xba\x77\xb2"
+"\xde\x1a\xda\x9d\xd8\xaf\xd8\x1e\xf4\xbc\xbd\xb2\xe2\x1b\xba\xba\x7a\x72\xa4\x1f\x9f\x77\x97\x67\x64\x1a\x33\x69\xfb\x08\x57\x32"
+"\x1e\x66\x4b\x69\x70\x42\x72\x72\x27\x18\xf7\xcf\x06\x0e\x2a\xf8\x51\xf7\x15\x15\x5e\x76\x79\x72\x81\x1b\x86\x88\x8f\x90\x8f\x8c"
+"\x91\x90\x9c\x1f\xe5\xf7\xf1\x05\xfb\x06\x06\x59\xfb\x54\x77\x55\x80\x75\x6f\x60\x19\x5f\x6e\x7e\x7e\x7a\x1b\x81\x86\x91\x98\x92"
+"\x8b\x8b\x91\x9e\x1f\xde\xf7\xd7\x05\xfb\x06\x06\x49\xfb\x92\x81\x66\x81\x65\x82\x66\x19\x81\x67\x84\x73\x86\x7f\x89\x86\x84\x7c"
+"\x81\x75\x08\x76\x5f\x83\x6f\x70\x1a\x6a\xa1\x74\xaa\xaa\xa4\xa2\xa8\x95\x8a\x98\x88\x98\x1e\x85\xac\x89\xa0\xaa\x1a\x97\x8b\x93"
+"\x8d\x9c\x1e\x77\x97\x95\x84\x9d\x1b\xb5\xac\xa7\xf0\xd6\x1f\x87\x7b\x88\x7f\x88\x83\x08\x85\x77\x88\x79\x7f\x1a\x72\xa1\x79\xaa"
+"\xc3\xbd\xb8\xdf\xb2\x1e\x0e\xfb\x63\xf8\x5a\xf8\x95\x15\x55\x73\x75\x77\x66\x1b\x84\x81\x8c\x8d\x7f\x1f\x8e\x7a\x7e\x8c\x81\x1b"
+"\x51\x51\x68\x42\x4e\x1f\x4b\x40\x73\x54\x47\x1a\x30\xbb\x54\xdb\x98\x90\x8c\x8f\x9f\x1e\x8e\x9d\x97\x8d\x95\x1b\xa4\x99\x7c\x73"
+"\x66\x6d\x6c\x68\x7e\x7b\x8f\x93\x7f\x1f\x9d\x6d\x84\x8e\x79\x1b\x64\x72\x72\x65\x66\xa6\x75\xb7\xf4\xf6\xf5\xf4\xbf\x71\xa6\x59"
+"\x7f\x84\x8a\x88\x74\x1f\x89\x80\x82\x8a\x82\x1b\x67\x7b\xa0\xba\xbf\x95\xd1\x98\xad\x1f\xae\x99\x9b\x95\xba\x1b\x98\xa1\x8a\x89"
+"\x9b\x1f\x87\xa6\xa5\x89\x94\x1b\xb0\xa6\x9d\xb0\x9f\x1f\x99\xa4\x92\xa0\x9a\xc2\x08\x0e\x99\x70\x1d\x57\xf9\x5f\x8f\x0a\xf7\x11"
+"\xf7\x9b\x4e\x1d\x5d\xf7\x1f\x15\xfb\x03\xf7\x26\x05\xa0\x7b\x77\x97\x78\x1b\x73\x76\x76\x74\x3d\x0a\xf7\x19\x33\x05\x0e\xfb\x65"
+"\x7b\x1d\xf7\x6b\xf7\xbf\xd7\x1d\x76\x74\x3d\x0a\xf7\x18\x33\x05\x0e\x2a\x72\x1d\x89\xf8\x37\x8f\x0a\x99\xf7\x22\xf8\x02\x15\x33"
+"\x06\x82\x6c\x05\xe3\x06\x49\xfb\x83\x7b\x56\x7f\x80\x57\x84\x19\x72\xf7\xbb\xa4\x07\x52\x8f\x7d\x94\xaa\x1a\x96\x8e\x9a\x93\xa5"
+"\x1e\x8d\x91\x8c\x91\x8c\x8d\xc1\xf7\x5b\x18\xf6\x89\xa9\x78\x47\x1a\x7d\x8a\x80\x88\x79\x1e\xa7\x86\xd5\xf7\xa2\x6f\x8f\x5d\x2e"
+"\x75\x80\xfb\x16\x8a\x19\xc8\xf7\x70\xb1\x0a\x75\x91\x71\x53\x1a\xa6\x86\xb6\xf7\x50\x05\xfc\xa9\x72\x06\xae\x86\xa0\x86\xc4\x0a"
+"\x81\x1a\x7c\x87\x74\x85\x75\x1e\x0e\xfb\xac\xf7\xc3\xf7\x96\x15\xb5\xa5\x9e\xa9\xb4\x1a\xc7\x63\xb0\x4a\x51\x6a\x7a\x4a\x44\x1e"
+"\x9b\x7a\x05\xac\xaf\xaa\x9a\xac\x1b\xad\x9f\x76\x67\x63\x7b\x74\x61\x74\x1f\xfb\x41\x06\x7f\x60\x05\xeb\x06\x3c\x67\x74\x72\x5a"
+"\x1a\x46\xbe\x5d\xd8\xcc\xb7\xa3\xd3\xce\x1e\x7a\x9e\x05\x61\x61\x69\x78\x65\x1b\x68\x74\xa6\xb5\xb8\x9f\xa3\xcc\xac\x1f\xf7\x24"
+"\x06\x97\xb6\x05\x0e\xf7\xa6\xf8\xdb\xf7\xce\x15\xd4\xfb\x74\x05\x8f\x82\x8d\x7c\x82\x1a\x74\x7a\x7f\x6c\x1e\x84\x75\x05\xd9\x06"
+"\xe2\xb2\x6d\x47\x7f\x8a\x82\x87\x79\x1f\xa8\x06\xbc\xf7\x43\x05\x71\x06\x65\x8c\x7e\x94\x7e\xb3\x24\xf7\xc7\x18\xcc\xc4\xa9\xa5"
+"\xb8\xb5\xf7\x05\xf2\x9a\x95\xc8\x92\x91\xa1\x18\xfb\x77\x20\x1d\x96\x06\x9e\x96\x7e\x77\x5b\x38\x38\xfb\x35\xfb\x03\x1f\x80\x06"
+"\xc8\xf7\x65\x99\xbc\xa1\x9d\xb5\x8a\x19\x22\x1d\xfb\x98\x20\x1d\x9a\x06\xab\x9d\x7d\x71\x82\x8a\x88\x85\x76\x1f\x4e\xfb\x6a\x05"
+"\x81\x06\x44\xee\x5c\xe8\xb5\x1a\xaa\xa4\xa1\xae\x1e\x92\x21\x1d\xfb\x87\x20\x1d\x97\x06\xc7\x89\xa9\x6e\xce\xfb\x0b\xa0\x66\x95"
+"\x7a\x9e\x6d\xfb\xce\xfb\xdf\x18\x6e\x6c\x6b\x7a\x67\x86\x84\x75\x18\xf7\xa3\x06\x22\x1d\x71\x8c\x84\x8f\x9c\x1a\x95\x90\x94\x99"
+"\x9a\x1e\xf7\x6f\xf7\x80\x05\x95\x06\x4a\xfb\x76\x7c\x5b\x79\x7a\x62\x8a\x19\x84\x75\x05\xf7\x9b\x21\x1d\x7b\x06\x66\x79\x98\xa6"
+"\x94\x8d\x96\x93\xa6\x1f\xc6\xf7\x61\x05\x0e\xf7\x93\xf8\x50\x16\xa4\xe6\xbe\xe3\xe2\xf3\x08\x67\x4a\x7f\x63\x5b\x1a\x6b\x92\x6a"
+"\x99\x71\x1e\x99\x70\x99\x83\xbb\x86\xa7\x88\x92\x88\x96\x7c\x08\x9b\x77\x93\x6f\x6b\x1a\x7f\x8a\x82\x87\x78\x1e\xa9\x06\xbb\xf7"
+"\x48\x05\x71\x06\x71\x6a\x93\x95\x7c\x1f\x75\x9a\x7e\xad\xb8\x1a\xf7\x0f\xd0\xf7\x2e\xc3\x97\x95\x84\x81\x84\x88\x88\x7a\x80\x1e"
+"\x7f\x83\x85\x81\x7c\x1a\x71\x9e\x79\xa5\xae\xa4\xa7\xb2\xb8\x65\xae\x5a\x44\x30\x39\xfb\x42\xfb\x0d\x1e\xd0\xf7\x85\x05\x25\x06"
+"\x65\x22\x6c\x56\x33\xfb\x02\x08\xac\xcf\x94\xab\xb8\x1a\xdd\x60\xc3\x4c\x4f\x5c\x69\x35\x50\x1e\x9b\x7f\x05\xba\xad\xa9\xa1\xa9"
+"\x1b\xad\xa2\x65\x53\xfb\x0a\x47\xfb\x35\x58\x80\x80\x95\x95\x90\x8e\x8f\x92\x90\x1f\x9b\x96\x90\x94\x9c\x1a\xa6\x79\x9d\x70\x69"
+"\x71\x6d\x65\x5e\xb1\x67\xbb\xd7\xec\xe4\xf7\x3f\xf7\x04\x1e\x44\xfb\x8e\x05\x0e\xfb\x24\xf7\x5f\x7f\x15\x8a\x90\x8e\x8b\x8c\x1b"
+"\xf7\x1f\xf7\x04\xf3\xf7\x13\xba\x7b\xb0\x6e\xa3\x1f\x78\x9b\x7a\x92\x5e\x95\xc1\x93\xa4\x94\xa8\xa0\x08\xb6\xaa\xa4\xbe\xc2\x1a"
+"\xe0\x4a\xc3\x27\x70\x69\x86\x84\x72\x1e\x83\x70\x8b\x8b\x82\x1b\x7c\x84\x90\x9a\x88\x1f\x77\x06\x61\xfb\x43\x05\x9e\x06\xe8\xbe"
+"\xbf\xb8\xc3\x1b\xb5\xa0\x6f\x52\x49\x74\x56\x62\x6f\x1f\x77\x6d\x70\x84\x53\x1b\x83\x66\x05\x9f\x06\xd6\xb0\x67\x43\xfb\x00\x47"
+"\x38\x33\x4a\x59\xb3\xde\x61\x1f\x6e\x7e\xac\x2e\xc7\x55\xdf\x7c\x19\x52\x38\x3e\x0a\x92\x8c\x97\x1b\xa8\x9c\x7e\x74\x72\x75\x7b"
+"\x69\x75\x7a\x8f\x98\x6f\x1f\x75\x6a\x05\x79\xb7\xab\x61\x1d\xfb\x9b\xf7\x48\x81\x15\xe7\x8e\xcc\xca\xe0\x1a\xc7\x6d\xaa\x47\x96"
+"\x1e\xe7\x9a\xb1\xac\xcd\x1a\xcc\x5d\xac\x2f\x61\x6a\x84\x7d\x70\x1e\x67\x77\x75\x6b\x6c\x1a\x6e\x9e\x78\xa6\xa4\xa0\x9d\xa1\x94"
+"\x88\x94\x84\x94\x1e\x7f\x99\x8a\x8d\x92\x1a\x9c\xab\x99\xaf\xb6\xa0\x78\x67\x67\x7b\x66\x73\x79\x1e\x80\x7d\x77\x85\x71\x1b\x83"
+"\x86\x8b\x8d\x80\x1f\x81\x67\x05\x8c\x96\x90\x8b\x95\x1b\xb7\x99\x7e\x65\x41\x64\x54\x57\x65\x70\x9e\xbc\x6b\x1f\x76\x7e\xa4\x4c"
+"\xb4\x67\xc6\x80\x19\x51\x36\x98\x7f\x05\x8e\x97\x92\x54\x1d\x57\x81\x85\x8a\x89\x81\x1f\x0e\xab\xf7\xd5\xf7\xf5\x15\xd8\xfb\x97"
+"\x05\x8f\x7f\x8d\x81\x82\x1a\x73\x7a\x7a\x74\x1e\x7e\x20\x1d\xde\x06\xe2\xb2\x6d\x47\x80\x8a\x82\x87\x78\x1f\xa8\x06\xbc\xf7\x43"
+"\x05\x71\x06\x65\x7e\x95\xb2\x7e\x1f\xfb\x00\xf7\xe0\xf7\x3d\xf7\x2d\xc3\xb7\xb4\x9f\xba\x8f\x19\x22\x1d\xfb\x75\x20\x1d\x97\x06"
+"\x9b\x98\x7c\x79\x77\x7a\x6f\x70\x72\x1f\xfb\x53\xfb\x43\xc8\xf7\x6b\x98\xb8\x9e\x9d\xae\x8e\x19\xa1\x21\x1d\xfb\xb9\x52\x0a\x73"
+"\x84\x8a\x85\x89\x84\x1f\xfb\x21\xfc\x7f\xa0\x1d\x0e\xfb\x21\xf7\xb6\xf8\x63\x15\xfb\x4d\x71\x84\x74\x05\x8c\x8f\x90\x8b\x8d\x1b"
+"\x9f\x99\x7c\x76\x83\x8a\x81\xa5\x0a\xa1\x8a\x96\x78\x8f\x5a\x91\x28\xa1\x5c\xb9\x83\x9e\x86\x94\x87\x93\x84\x08\x9b\x7d\x95\x6f"
+"\x6d\x1a\x83\x8b\x86\x89\x7f\x1e\xa8\x06\xb9\xf7\x38\x05\x71\x06\x62\x8c\x6f\xa4\x89\xaf\x7f\xef\x7b\xa3\x4f\x8e\xb3\x94\x9f\x9e"
+"\xa8\xc7\x95\xa0\x18\xa6\x98\x96\x96\x97\x1b\x91\x8f\x88\x82\x8f\x1f\x78\x95\x92\x85\x9d\x1b\xa8\x9f\xa3\xae\xaf\x76\x9f\x66\x5e"
+"\x7b\x7a\xfb\x00\x51\x1f\x4c\x6a\x6b\x73\x57\x1b\x0e\xab\xf7\xf9\xf8\x1b\x15\x69\x6c\xc8\xf7\x6b\x98\xb7\x9e\x9d\xae\x8e\x19\xa1"
+"\x21\x1d\xfb\xb9\x52\x0a\x73\x84\x8a\x85\x89\x85\x1f\xfb\x21\xfc\x80\xa0\x1d\xd9\xf7\xa2\x98\x5e\x53\xfb\x5f\x05\xbd\x06\xab\xf7"
+"\x09\xb1\xfb\x14\x05\x8f\x7f\x8d\x81\x82\x1a\x73\x7a\x7a\x74\x1e\x7e\x20\x1d\xf7\x96\x4f\x0a\x21\xf7\xdd\xf7\x3d\xf7\x2c\xc3\xb8"
+"\xb4\x9e\xba\x8f\x19\x22\x1d\xfb\x75\x20\x1d\x97\x06\x9b\x98\x7c\x7a\x76\x7a\x6f\x70\x72\x1f\x32\x3a\xad\xf7\x0e\x05\x59\x06\x0e"
+"\xfb\x21\xf7\x8f\xf7\x8c\x15\x8a\x85\x86\x8b\x80\x1b\xc8\xf7\x6c\xfb\x4d\xf7\x00\x1d\x83\x8a\x82\xa5\x0a\x8f\x8f\x8a\x89\x8f\x1f"
+"\x61\xfb\x2e\x05\xbd\x06\x9d\xcd\x05\x2c\x95\xa6\x62\xc1\x1b\xb8\xa7\xa5\xee\xc5\x1f\x78\x99\x05\x5d\x73\x78\x78\x77\x1b\x7b\x82"
+"\x98\xa9\x87\x1f\x80\xea\x7b\xa5\x57\x90\x89\x8c\x18\x8c\x8d\xad\x94\x9f\xa0\xa6\xc3\x19\xbe\xa4\x91\x93\x9a\x1b\x91\x8f\x88\x82"
+"\x8f\x1f\x78\x95\x93\x85\x9c\x1b\xa8\x9f\xa3\xae\xaf\x76\x9f\x65\x5f\x7b\x7a\xfb\x00\x51\x1f\x7b\x6d\x84\x82\x7e\x7c\xab\xf7\x0c"
+"\x18\x59\x06\x0e\xe3\xf7\xf9\xf9\x05\x15\xfb\x23\xfc\xad\x2f\x1d\x82\x20\x1d\xf7\xa9\x21\x1d\x6c\x06\x71\x7a\x9c\xa4\x91\x8c\x91"
+"\x8d\x92\x1f\xd3\xf7\xa2\xdc\xfb\x97\x05\x8f\x7f\x8d\x80\x82\x1a\x73\x7b\x7b\x74\x49\x0a\xfb\x04\xf7\xdc\xf7\x39\xf7\x2d\xc3\xb8"
+"\xb2\x9e\xb9\x8f\x19\x91\x3b\x0a\x9b\x98\x7c\x79\x76\x7b\x6f\x72\x73\x1f\xfb\x4f\xfb\x43\xc4\xf7\x6b\x98\xb8\x9c\x32\x0a\xfb\xfb"
+"\x06\x60\xfb\x36\x05\x9e\x06\xb4\xd6\xb7\xb0\xc9\x95\xa7\x8d\x18\x0e\xfb\x26\xf7\xac\xf8\x5e\x15\xfb\x84\x8a\x5c\xfb\x28\x05\x9f"
+"\x06\xa8\xcd\xb5\xac\xce\x92\xfb\x01\xfc\x33\x18\xf7\x09\x06\xc3\xf7\x6b\x05\x94\x06\xa1\x8a\x96\x79\x90\x5a\x91\x51\x8e\x7b\x94"
+"\x74\xcb\x1d\x5e\x74\x79\x79\x77\x1b\x7b\x82\x98\xa9\x87\x1f\x7e\xec\x79\xa4\x50\x8e\xb7\x95\x9c\x9e\xaf\xd9\x08\xa6\x98\x94\x96"
+"\x97\x1b\x92\x8f\x87\x83\x8f\x1f\x77\x94\x93\x86\x9c\x1b\xa8\x9e\xa2\xae\xaf\x76\xa0\x65\x5f\x7d\x7c\xfb\x01\x52\x1f\x4c\x6b\x6c"
+"\x73\x57\x1b\xac\xf7\x0e\x05\x0e\xf7\x19\xf7\xc6\xf7\xd5\x15\xf7\x7c\x06\x48\xfb\x7d\xc3\x0a\x66\x20\x1d\xf7\x10\x06\xe2\xb1\x6d"
+"\x48\x7e\x8a\x83\x87\x78\x1f\xa9\x06\xbb\xf7\x43\x05\x71\x06\x69\x75\x98\x9f\x8c\x1f\x8f\x8c\x8f\x8c\x8f\x1e\xf7\x21\xf8\x7f\x98"
+"\xb8\x9d\x9d\xae\x8e\x19\x98\x21\x1d\xfb\xab\x20\x1d\xa5\x06\xa5\x9c\x7a\x73\x83\x8a\x86\x89\x84\x1f\x4d\xfb\x6d\x05\xfb\x7c\x06"
+"\xc8\xf7\x68\x98\xb8\x9d\x9d\xae\x8e\x19\xb2\x21\x1d\xfb\xc0\x96\x0a\x79\x79\x3c\x0a\xf7\xa8\x21\x1d\x6f\xb6\x0a\x0e\x2f\xf7\x8c"
+"\xf7\x97\x15\xc4\xf7\x60\xfb\x4c\xf7\x00\x1d\x84\x8a\x81\xf2\x1d\xca\xf7\x76\x05\xf7\x01\x06\x67\xfb\x14\x05\x87\x7d\x89\x7a\x7c"
+"\x1a\x63\x9e\x79\xb9\x87\x1e\xa1\x89\x9a\x86\x93\x84\x08\x97\x80\x93\x74\x72\x1a\x82\x8a\x84\x89\x7d\x1e\xa8\x06\xb6\xf7\x34\x05"
+"\x71\x06\x6d\x74\x97\x9a\x91\x8d\x94\x8d\x94\x1f\xee\xf7\xee\x05\xfb\x0b\x06\x56\xfb\x4d\x05\x0e\x99\xf7\xc1\x79\x15\xf7\x06\xea"
+"\xbf\xec\xcd\x1f\x6d\xa1\x59\x50\x6f\x74\x61\x79\x19\x6e\x0a\xfb\x1f\xdd\x2e\xf7\x25\x73\x1f\x57\x3e\x98\x7f\x05\x8e\x96\x93\x54"
+"\x1d\x56\x81\x85\x8a\x89\x82\x1f\x0e\xfb\x65\xf7\x20\x7e\x15\x94\x06\xb6\xb7\x9b\xa8\xac\x1f\xa5\xa1\x9b\x9e\xae\xbd\x6f\x9d\x18"
+"\x48\x5b\x6c\x74\x60\x1b\x5f\x6e\xaf\xc1\xc9\xa5\xe6\xaf\xcb\x1f\xba\xa6\xa8\xa3\xa9\x1b\x97\x95\x84\x81\x86\x89\x86\x85\x82\x1f"
+"\x82\x7c\x87\x7f\x7f\x1a\x6d\xa4\x75\xac\xe3\x1d\xfb\x37\xfb\x35\x44\xb2\x54\xcd\x78\x1e\x51\x36\x3e\x0a\x92\x8c\x96\x45\x1d\x61"
+"\xf7\x7e\xf7\xca\x15\x4f\xfb\x6a\xc3\x1d\x97\x8c\x92\x92\xa4\x1e\xbf\xf7\x51\x9c\x1d\xc4\x83\xa3\x7a\xc1\x19\x74\xcc\x81\xae\x9f"
+"\x0a\x08\x0e\xfb\x61\xf7\x81\xf7\x30\x15\x7f\xf7\x39\x88\x0a\x55\xfb\x53\x7f\x61\x7f\x81\x5e\x84\x19\x85\x74\x05\xf7\x7f\x06\x92"
+"\xa2\x05\x71\x8f\x80\x94\x9d\x1a\x92\x8c\x94\x8e\x94\x1e\xc5\xf7\x63\x84\x0a\x0e\x61\xf7\xfa\xf7\x7c\x15\x9f\xd4\x9c\x1d\xc7\x81"
+"\xa9\x7c\xb8\x19\x74\xcb\x81\xaf\x9f\x0a\xe3\xfb\x9d\x18\x75\x3d\x05\x2f\x06\x7f\x61\x05\xe7\x06\x71\x2d\xc3\x1d\x98\x8c\x91\x92"
+"\xa4\x1e\x9f\xd5\x05\xef\x06\x96\xb5\x05\x0e\xfb\x61\xf7\x6f\x90\x15\xa6\xea\x84\x0a\x2c\xfb\x39\x7f\xf7\x3a\x88\x0a\x74\x39\x05"
+"\x3e\x06\x7d\x59\x05\xd8\x06\x7a\x4f\x7e\x62\x81\x81\x5d\x84\x19\x85\x74\x05\xf7\x7f\x06\x92\xa2\x05\x71\x8f\x80\x94\x9d\x1a\x92"
+"\x8c\x94\x8e\x93\x1e\x9c\xca\x05\xdd\x06\x99\xbd\x05\x0e\xa0\xf7\xe1\xf7\x9b\x15\xc0\xfb\x34\x05\x8f\x81\x8c\x82\x7f\x1a\x6e\x76"
+"\x76\x6f\x1e\x7e\x20\x1d\xea\x06\xe1\xb3\x6c\x48\x80\x8a\x82\x87\x77\x1f\xa8\x06\xbc\xf7\x44\x05\x71\x06\x65\x7e\x95\xb2\x7e\x1f"
+"\x2f\xf7\xb1\xf7\x0e\xf7\x17\xea\xf2\xb2\xaa\xab\x8e\x19\x22\x1d\xfb\x56\x20\x1d\x95\x06\xa1\x99\x7e\x75\x77\x83\x7c\x71\x6f\x1f"
+"\xfb\x0c\xfb\x16\x60\xf7\x1e\x05\x81\xa7\x8a\x92\x95\x1a\xa5\x9b\x9e\xa0\x1e\x98\x21\x1d\xfb\x9e\x4b\x0a\xde\xfb\x92\x18\xfb\x37"
+"\xfb\x43\x52\x4c\x5f\x69\x66\x82\x33\x0a\xf7\x63\x21\x1d\x7e\x06\x6b\x79\x97\xa2\x9a\x96\x9e\xa2\xa5\x1f\x0e\xfb\x28\xf8\x38\xbf"
+"\x15\x71\x06\x54\x8d\x8a\x8d\x5f\xf7\x45\x84\xa8\x18\xea\xbe\x8f\x8f\xa5\x1b\x93\x92\x8a\x87\x97\x1f\x87\x99\x91\x8a\x95\x1b\xa7"
+"\xa2\xa3\xa8\xa9\x71\xa1\x69\x69\x68\x70\x5e\x72\x1f\x5c\x39\x81\xbb\x88\x98\x6c\xea\x19\xfb\x31\x6b\x84\x75\x05\x8d\x95\x93\x8c"
+"\x91\x1b\xa7\xa1\x6f\x5a\x97\x1f\xac\xfb\x26\x60\x43\x05\x74\x7d\x7f\x81\x7e\x1b\x83\x86\x8d\x92\x7f\x1f\x92\x7d\x83\x8e\x7f\x1b"
+"\x6c\x74\x74\x6b\x6a\xa0\x77\xad\xae\xb7\xab\xb8\xa7\x1f\xba\xd8\xa3\xfb\x03\x9f\x69\xb9\x85\x19\xa4\x86\x90\x8a\x91\x87\x08\x9a"
+"\x83\x95\x73\x70\x1a\x82\x8a\x85\x88\x7d\x1e\xa9\x06\x0e\xea\xf9\x9d\xf9\x14\x15\x90\xa1\x05\xfb\xa2\xb7\x0a\x87\x8a\x83\x89\x85"
+"\x1e\x4c\xfb\x81\x05\x76\x5a\x6a\x83\x63\x1b\x5a\x70\x9f\xaf\x9b\x8e\x9b\x97\xb6\x1f\xad\xf7\x16\x97\xb8\x9d\x47\x0a\x63\xfb\x2d"
+"\x05\x84\x71\x88\x7b\x7b\x1a\x46\xc1\x64\xeb\xc2\xb3\x93\xa5\xd4\x1e\x54\xfb\x62\x7f\x4e\x0a\xe6\x06\xde\xb3\x6b\x49\x80\x8a\x82"
+"\x87\x77\x1f\xa9\x06\xb6\xf7\x36\x05\x71\x06\x6c\x75\x97\x9c\x90\x8c\x90\x8c\x91\x1f\xf7\x1c\xf8\x8d\x97\xb8\x9d\x9d\xae\x8e\x19"
+"\x0e\xfb\x14\xf8\x78\xef\x15\x79\x95\x05\x67\x77\x7a\x79\x7b\x1b\x84\x87\x90\x94\x91\x8c\x90\x8f\x9a\x1f\xe7\xf7\xf0\x05\xfb\x0a"
+"\x06\x7e\x59\x05\x37\x74\x51\x3d\xe5\x1d\xb6\xf7\x3a\x8c\x1d\x97\x94\x8d\x8f\x97\x1e\x93\x76\x8f\x75\x7b\x1a\x84\x8a\x84\x89\x7e"
+"\x1e\xa8\x06\xb8\xf7\x33\x05\x0e\xf2\xf8\x32\xf7\xa1\x15\xa8\x91\x9c\x90\xb5\x9a\x4f\xfb\x63\x18\x7e\x5e\x79\x79\x68\x88\x08\xac"
+"\x0a\x7b\x9b\xa4\x1a\x93\x8c\x8f\x8c\x92\x1e\xf7\x21\xf8\x80\x99\xb7\x9d\x32\x0a\xfb\xa5\x06\x84\x75\x05\xa1\x06\xa5\x9c\x7a\x73"
+"\x84\x8a\x85\x89\x85\x1f\x47\xfb\x82\x6a\x7d\x71\x83\x6f\x86\x19\xcb\xf7\x7b\x05\x4c\x06\x4a\xfb\x7b\x05\x69\x93\x7c\x9b\xa8\x1a"
+"\x9c\x8d\x92\x9a\xc0\x1e\xb0\xf7\x16\x98\xb7\x9d\x9d\xae\x8e\x19\x98\x21\x1d\xfb\xa6\x20\x1d\xa1\x06\xa5\x9c\x7b\x72\x86\x8a\x83"
+"\x89\x85\x1f\x5f\xfb\x2d\x05\x83\x6e\x88\x7c\x7a\x1a\x47\xc0\x65\xec\x1e\x9d\x06\x62\xfb\x26\x05\xca\x06\x0e\xfb\x0f\xf7\x96\xf7"
+"\x7f\x15\x87\x06\x7e\x86\x92\x9b\x98\x8b\x8c\x92\xa3\x1f\xb9\xf7\x3b\xfb\x4c\x71\x85\x74\x05\x96\x06\x9f\x99\x7d\x76\x83\x8a\x81"
+"\x88\x83\x1f\x74\x38\x05\x82\x6e\x89\x7d\x7b\x1a\x63\xa5\x70\xb1\xa3\xa4\x93\x98\x9f\x1e\x75\x38\x05\xb8\x06\xb0\xf7\x1b\x95\x96"
+"\x96\x98\xa2\xa8\x19\x5a\xfb\x41\x05\x85\x74\x89\x80\x7d\x1a\x68\xa6\x73\xb2\xbc\xb4\xab\xda\xbb\x1e\x7a\x96\x05\x66\x76\x79\x79"
+"\x7c\x1b\x82\x88\x8f\x94\x93\x8b\x8c\x91\x9d\x1f\xee\xf7\xef\x05\xfb\x0c\x06\x7d\x5d\x7b\x59\x7a\x69\x6c\x63\x19\xa6\xef\x05\x5d"
+"\x06\x0e\xa2\xf7\xd5\xf8\xd2\x15\x99\xb9\x9c\x9c\xae\x8e\x08\x93\x06\x92\xa1\x05\xfb\xa8\x06\x84\x75\x05\xa8\x06\xa5\x9c\x7a\x72"
+"\x86\x8a\x84\x89\x84\x1f\xfb\x21\xfc\x7f\x7e\x5e\x78\x79\x68\x88\x19\x7f\x06\x85\xbd\x0a\x7a\x9b\xa3\x1a\x91\x8c\x92\x8d\x92\x1e"
+"\xcf\xf7\x81\x05\xa0\xbd\xad\x93\xb3\x1b\xbc\xa6\x78\x67\x7a\x89\x83\x7d\x58\x1f\x65\xfb\x16\xc3\x0a\x7f\x06\x84\xbd\x0a\x7b\x9b"
+"\xa3\x1a\x94\x8c\x8f\x8c\x92\x1e\xb7\xf7\x2d\x05\x93\xa5\x8e\x9c\x9c\x1a\xcf\x56\xb1\x2b\x53\x5e\x82\x72\x45\x1e\x0e\x2a\xf8\x70"
+"\xf7\x22\x15\x4c\x5f\x79\x77\x5a\x0a\xfb\x9c\x7e\x1d\xea\xf8\x46\xd7\x15\x83\x61\x7d\x80\x58\x88\x08\x71\x06\x65\xfb\x2f\x05\xa8"
+"\x06\xa2\xd9\xc3\xbc\xd3\x93\x08\xf7\x3d\x06\x90\x9f\x05\x6b\x06\x68\x78\x98\xa3\x93\x8e\x9a\x8f\x9b\x1f\xf7\x14\xf8\x72\x97\xb8"
+"\x9d\x9d\xae\x8e\x19\x97\x06\x68\x0a\xc1\x64\xeb\xc2\xb3\x93\xa5\xd4\x1e\x0e\xfb\x2e\xf8\x5e\xf7\x12\x15\x5e\x77\x79\x71\x7f\x1b"
+"\x87\x88\x8f\x90\x90\x8d\x96\x8e\x97\x1f\xe7\xf7\xf4\x05\xfb\x0f\x06\x7d\x5f\x77\x53\x7f\x73\x71\x64\x19\x5d\x6d\x7e\x7f\x7a\x1b"
+"\x83\x86\x91\x96\x92\x8d\x96\x8d\x95\x1f\xbe\xf7\x52\xfb\x49\x48\x1d\x76\x83\x8a\x84\x88\x81\x1f\x74\x3a\x05\x86\x7a\x87\x6d\x7b"
+"\x1a\x66\xa7\x6f\xb0\xb9\xab\xa5\xf1\xd9\x1e\x5b\xfb\x4e\x05\x88\x81\x8a\x80\x7e\x1a\x87\x8b\x86\x8c\x83\x1e\x74\x69\x05\x78\x6b"
+"\x85\x7b\x76\x1a\x80\x8d\x83\x90\x7e\xd4\x1d\xaa\xb9\x0a\x98\x87\x95\x80\x9e\x1e\x80\x9d\x87\x94\x93\x1a\x90\x8c\x90\x8e\x92\x1e"
+"\x80\x92\x9b\x84\xa0\x1b\xc4\xb6\xb0\xe6\xba\x1f\x0e\xd0\xc9\xf7\xba\x15\x84\x67\x89\x78\x77\x1a\x6e\x90\x6d\x93\x70\x1e\x29\xaa"
+"\xd7\x56\xf7\x01\x1b\xf7\x83\xf7\x5b\xf7\x5e\xf7\x86\xf7\x27\x20\xf2\xfb\x2d\x3b\x3a\x6d\x53\x47\x1f\x5c\x66\x70\x66\x5d\x38\xf7"
+"\x04\x81\x18\xad\xd3\xa8\xbd\xa4\xa6\x08\xb8\xb4\xbb\xa3\xbb\x1b\xa5\xa5\x82\x7b\x9e\x1f\xb1\x6b\x9c\x60\x47\x1a\x50\x81\x49\x7a"
+"\x55\x1e\x7c\x61\x15\x7b\x5b\x70\x57\x6c\x60\x08\x4d\x5f\x57\x6d\x4a\x1b\x46\x6c\xb8\xed\xa4\x8e\xac\x90\xad\x1f\x0e\x99\xf9\x02"
+"\xa4\x15\x49\x90\x87\x8f\x7e\xd7\x28\xf8\xca\x18\x73\x06\xfc\x01\xfc\xda\x6b\x5a\x7c\x7f\x68\x83\x19\x72\xf7\x56\xa4\x07\x5d\x78"
+"\x95\xa4\x98\x8f\x99\x96\x9d\x1f\xc5\xf0\x05\xf7\x69\x06\x95\x41\x90\x62\x83\x1a\x61\x7d\x80\x4b\x86\x1e\x72\xf7\xc1\x07\xfc\x41"
+"\xf7\x8a\x15\xf7\x25\xf7\x84\xb2\xfb\x84\x05\xf7\x56\xf9\x14\x15\x49\x6b\x6a\x74\x4a\x1b\x4b\x6a\xa8\xc7\x86\x1f\x61\x06\xfb\x05"
+"\x8a\xb4\x5c\xeb\x1b\xeb\xca\xc4\xf2\x9c\x1f\x0e\xfb\x2e\xf8\x63\xf7\x12\x15\x54\x63\x7c\x7c\x7c\x1b\x83\x87\x90\x95\xa5\x94\xb6"
+"\xa2\xd9\x1f\xd0\xf7\x7d\xfb\x02\x84\x7a\x51\x05\xbd\x82\x75\xa0\x60\x1b\xfb\x0d\xfb\x27\xfb\x51\xfb\x2f\x40\xb6\x58\xcb\xc8\xb8"
+"\xaf\xea\xc3\x1f\x81\x64\x88\x7e\x7d\x1a\x66\xa8\x6e\xb0\xba\xb9\xb2\xe1\xc3\x1e\xfb\x51\xf7\xc4\x15\xa1\x89\x9a\x79\x70\x1a\x50"
+"\x6b\xfb\x02\x65\x47\x1e\x5b\x71\x6e\x71\x6f\x1b\x72\x78\xa2\xaa\xbf\xaa\xed\xb4\xd4\x1f\xa8\xbf\xac\xaa\xa5\x89\x08\xf7\x16\xf7"
+"\x8c\x15\x4a\x6c\x68\x73\x4b\x1b\x4b\x6b\xa7\xc8\x85\x1f\x61\x06\x8d\x48\x8b\x8b\x98\x6f\x08\x60\x9f\xb3\x75\xc9\x1b\xea\xca\xc4"
+"\xf2\x9c\x1f\x0e\xd0\xf8\x5c\xf9\x3d\x15\x42\x41\x71\x5a\x47\x1f\xfb\x0d\x33\x35\xfb\x35\xfb\x1d\x1a\xfb\x23\xea\x2c\xf7\x22\xd9"
+"\xd7\xa5\xbc\xce\x1e\xf7\x10\xe6\xdd\xf7\x32\xf7\x25\x1a\xf7\x18\x24\xed\xfb\x1f\x1e\xd1\xfb\xdf\x15\xfb\xc9\x06\xf7\x54\xc3\xde"
+"\xf4\xea\x1b\xca\xb3\x5d\x42\x58\x89\x7d\x71\xfb\x02\x1f\x7b\x52\x15\xfb\x4a\x51\x3a\x29\x30\x1b\x4c\x64\xb9\xd5\xb8\x92\xbb\x9c"
+"\xce\x1f\x0e\xa1\x1d\xfb\x1e\xfb\x63\x15\xf7\x07\xaa\xb9\xca\xbf\x1b\xa8\x9d\x75\x67\x69\x86\x69\x80\x57\x1f\x80\x60\x15\xfb\x17"
+"\x67\x60\x4a\x58\x1b\x6d\x78\xa2\xb2\xb0\x92\xb9\x97\xbe\x1f\x0e\x99\x70\x1d\x8d\xfa\x0a\x15\x49\x6c\x69\x74\x4a\x1b\x4c\x6b\xa8"
+"\xc7\xc8\x1d\xfb\x65\x7b\x1d\xf7\xba\xf8\x5f\x15\x4a\x6d\x68\x73\x4b\x1b\x4b\x6b\xa7\xc8\xc8\x1d\xf9\x6e\xf9\x82\x15\xd0\xfc\x85"
+"\x46\x07\x0e\xf7\xef\xad\x89\x15\x92\x06\xd5\x06\xf7\x44\xcd\x97\xb7\xcc\x1f\xf1\xd0\xd5\xf7\x36\xf7\x2f\x1a\xea\x6d\xde\x5b\xb1"
+"\x1e\xa7\x67\x5a\x98\x4a\x1b\xfb\x2b\x20\x56\x2e\x69\x1f\x7d\x66\x87\x73\x8a\x49\xd9\xb1\x18\x94\x07\x8a\xea\xb0\xb7\xe6\x99\x3d"
+"\xfc\x3e\x18\x7a\x40\x72\x5c\x6d\x81\x74\x8c\x18\xe5\x16\x8f\x8e\xc2\xb9\x9e\xb6\xa1\xf7\x13\x19\xc7\xf7\xec\x05\x92\x06\x8e\x06"
+"\xb4\x96\x8a\x87\x98\x1f\xc4\x76\xa9\x49\x26\x1a\xfb\x66\x2c\xfb\x29\xfb\x1e\x84\x1e\xf7\x8d\xfb\x99\x15\xda\x06\xb1\xf7\x62\x05"
+"\x7b\xb2\x8e\x8a\xa1\x1b\xf7\x14\xf7\x01\xf7\x39\xf7\x53\xf7\x00\x5e\xc3\x36\x57\x5e\x75\x62\x6a\x1f\x66\x5d\x76\x50\x73\xfb\x18"
+"\x08\xea\xe6\x15\xe6\x9b\xb0\xc0\xb9\x1b\xb4\xa1\x61\x3c\xfb\x2a\x52\xfb\x0b\x43\x6e\x75\x96\xa5\x77\x1f\x0e\x61\xf7\x97\x16\x7c"
+"\xf7\x2f\x05\x49\xb7\x62\xe4\xea\x1a\xc0\x98\xc6\xa2\xbc\x1e\xc9\xa9\xbc\xaf\xc3\x1b\xc3\xbc\x67\x4d\xa9\x1f\xa2\x5a\x98\x50\x56"
+"\x1a\x2c\x61\x32\x4a\x5f\x1e\x7c\xfb\x2f\x05\xf7\x88\xf7\x2d\x77\x06\x5e\x84\x7b\x79\x68\x1b\xfb\x0d\x06\x8d\xb1\x05\xf6\xb8\xc9"
+"\xe8\xf7\x08\x1a\xbb\x7f\xbe\x74\xba\x1e\xef\x5b\x36\xc5\x2a\x1b\x2a\x36\x51\x27\x5b\x1f\x74\x5c\x7f\x58\x5b\x1a\xfb\x08\xc9\x2e"
+"\xf6\x5e\x1e\x8e\x65\x05\xfb\x0e\x06\x68\x7b\x9d\xb8\x84\x1f\x77\xfb\x2d\x06\x0e\xfc\x7a\xcf\x1d\xfc\x27\xf7\x12\xf8\x29\x2b\x0a"
+"\xf7\xef\xf8\xa9\xf8\x95\x15\x49\x06\xfb\x74\xfc\x95\x05\xdb\x06\xf7\x45\xf8\x2d\xf7\x45\xfc\x2d\x05\xdb\x06\x0e\xf7\xef\xf8\xa9"
+"\x16\xf7\x74\xf8\x95\x05\x3b\x06\xfb\x45\xfc\x2d\xfb\x45\xf8\x2d\x05\x3b\x06\xf7\x74\xfc\x95\x05\x0e\xf7\xef\xf8\x8c\xf9\x60\x15"
+"\xfb\x60\xfb\x34\xfb\x32\xfb\x5f\xfb\x5b\xf7\x34\xfb\x33\xf7\x5d\xf7\x5b\xf7\x34\xf7\x34\xf7\x5c\xf7\x59\xfb\x34\xf7\x36\xfb\x58"
+"\x1f\xa4\x52\x15\xf7\x23\x7e\xf7\x06\xfb\x06\x99\xfb\x25\x08\xfb\xa3\x06\xf7\xa4\x52\x15\x82\xfb\x22\xfb\x0d\xfb\x0f\xfb\x22\x80"
+"\x08\xf7\xa8\x07\x53\xfb\xa8\x15\xfb\x27\x99\xfb\x05\xf7\x05\x7d\xf7\x29\x08\xf7\xa6\x06\xfb\xa6\xc4\x15\x99\xf7\x24\xf7\x07\xf7"
+"\x06\xf7\x25\x99\x08\xfb\xa4\x07\x0e\xd0\xf7\x11\xf7\x10\x15\xf8\x67\xf8\x67\xfc\x67\x06\xb3\xfc\x3f\x15\xf8\x17\xf8\x17\xfc\x17"
+"\x07\x0e\xf7\xef\xf9\x64\xf8\xc3\x15\x4f\xfb\x8d\x06\x26\x86\x62\x7c\x6e\x1e\x5b\x72\x53\x6b\x50\x1b\x57\x58\xa4\xb3\x6f\x1f\x74"
+"\xac\x85\xb4\xf7\x04\x1a\xf7\x8d\x4f\xfb\x8a\x07\xfb\x1d\x90\x69\xa3\x63\x1e\x4a\xb1\xd1\x66\xde\x1b\xd7\xcb\xaa\xc3\xb4\x1f\xac"
+"\xb8\x91\xab\xf7\x29\x1a\x0e\x4f\xf8\x27\xf8\x1c\x15\xfb\x69\x06\x41\xf7\x4d\x05\x2d\x06\xf7\x7d\xfc\xd5\x05\xde\x06\xf7\x7d\xf8"
+"\xd5\x05\x2d\x06\x22\xfb\x9d\x15\x3f\xfb\x48\x40\xf7\x48\x05\x0e\x2a\xf8\x06\xf8\x55\x15\x6b\x0a\x54\x85\x71\x6e\x1a\x62\xa0\x78"
+"\xb8\x97\x92\x8c\x8f\x9b\x1e\x6b\x60\x83\x79\x70\x31\x0a\xb4\xb1\x94\xa1\xaa\xb3\x1f\x9d\xa1\x92\x96\x9b\xa7\x76\x98\x18\x55\x68"
+"\x77\x77\x7a\x1b\x83\x85\x92\x95\x97\x96\xbb\x99\xb8\x1f\xd9\xf7\xa0\x05\x0e\xfb\x37\x3c\x1d\x0e\xfb\x37\x3c\x1d\xf7\x67\xf7\xee"
+"\x15\xa4\x0a\xf7\x3a\x9e\x0a\xfb\x37\x3c\x1d\xf7\x93\xf7\xb7\x15\xa8\x06\x8f\x91\x8f\x92\x8f\x92\x8f\x93\x19\xb1\xc7\x8d\x8f\x9e"
+"\x1a\x9e\x7a\x98\x73\x7c\x7c\x85\x82\x83\x1e\x83\x82\x8b\x8a\x89\x65\x8f\x5c\x18\x71\x07\x3c\x86\x15\x9a\x0a\xaa\x72\xa5\x6e\x1f"
+"\xf7\x4d\x16\x6d\x73\x73\x6c\x6b\xa4\x71\xa9\xa8\xa3\xa4\xaa\xa9\x72\xa6\x6e\x1f\x0e\xfb\x37\x3c\x1d\xf7\x85\xf7\x6d\x15\xbe\x06"
+"\x8f\x94\x9b\xac\x05\xbc\xe6\x8f\x94\xa5\x1a\xa5\x75\x9e\x6b\x73\x74\x80\x7a\x82\x1e\x82\x7d\x8a\x7c\x89\x21\x89\x64\x18\x0e\x2a"
+"\x26\x0a\xfb\x26\xf9\x0e\x30\x0a\x2a\xf8\x7a\xf9\x23\x15\x6c\x7c\x7e\x80\x6d\x1d\x6b\x93\x72\x1b\x52\x5f\x5e\x42\x7d\x1f\xb3\x06"
+"\xab\x98\x97\x96\xa2\x1b\x96\x99\x88\x86\x98\x1f\xc6\x74\x05\x80\xa6\x95\x89\x9e\x1b\xc8\xad\xae\xdf\xa2\x1f\x54\xfc\x9e\x5d\x0a"
+"\x0e\x99\x32\x1d\xf8\x0c\xdd\x29\x0a\x99\x32\x1d\xf8\x66\xdd\x23\x1d\x99\x32\x1d\xf7\x90\xf7\x71\x15\x68\x6e\x6d\x67\x36\x1d\x99"
+"\x32\x1d\xf8\x06\xdd\x8e\x0a\xfb\x60\xf7\xa7\xf9\x69\x15\x40\x71\x64\x6c\x6a\x1a\x74\x9e\x7a\xc0\x73\x1e\x76\x7e\x80\x83\x81\x81"
+"\x08\x71\x70\x79\x67\x70\x1a\x6a\x9b\x72\xb2\x71\x1e\x68\x79\x7b\x81\x72\x74\x08\x4d\x52\x6a\x49\x48\x1a\x3b\xc3\x58\xe2\x9a\x9f"
+"\x8d\x8f\xa2\x1e\x8e\x99\x98\x8c\x93\x1b\xa3\x99\x7d\x73\x68\x6d\x6d\x68\x7d\x7c\x8f\x92\x7f\x1f\x9c\x6d\x83\x8e\x79\x1b\x64\x72"
+"\x73\x66\x67\xa6\x76\xb7\xf5\xf6\xf2\xf1\xbc\x71\xa6\x5d\x80\x79\x89\x89\x7a\x1f\x89\x7b\x7c\x89\x82\x1b\x58\x78\x9d\xba\xd1\xac"
+"\xd1\xc6\xc2\x1f\x71\xbe\xa4\x83\xaf\x1b\xc6\xae\xa0\xaf\xaa\x73\x9d\x62\x61\x6a\x82\x73\x56\x1f\x82\xa5\x89\x98\x9c\x1a\xb2\x95"
+"\xae\xa1\xb5\x1e\x76\xbf\xa8\x85\xb4\x1b\xd2\xba\xa5\xb2\xaa\x70\x9d\x5c\x50\x62\x7e\x61\x45\x1f\x74\x9a\x80\x9d\x9f\x1a\xa2\x9e"
+"\x9f\xb3\x9d\x1e\x0e\xfb\x65\x31\x1d\xf7\xe8\xd9\x23\x1d\xfb\x65\x31\x1d\xf7\x7c\xd9\x37\x1d\xfb\x9c\x34\x1d\xf7\x34\xce\x15\x2b"
+"\x1d\x38\x1d\xfb\x9c\x34\x1d\xf7\x5b\xf7\x62\x2a\x1d\xfb\x68\xf7\xb0\xf9\x68\x15\x41\x6f\x5d\x66\x6b\x1a\x71\xa6\x6f\xba\x74\x1e"
+"\xfb\x09\x20\x3e\xfb\x3a\xfb\x27\x1a\x2d\xb3\x61\xe2\x9b\x97\x8c\x8d\x93\x1e\x91\xa8\x90\x8c\x98\x1b\xa6\x99\x7e\x72\x68\x6d\x6d"
+"\x68\x7d\x7c\x8f\x92\x7f\x1f\x9c\x6d\x83\x8e\x79\x1b\x64\x72\x73\x66\x67\xa6\x76\xb7\xf5\xf6\xf2\xf1\xbc\x71\xa6\x5c\x7f\x7a\x89"
+"\x89\x7c\x1f\x89\x7d\x7e\x89\x85\x1b\x6b\x79\x9e\xac\xc4\x9e\xf7\x03\x9f\xcd\x1f\x9e\xc6\xa4\xc1\xac\xc1\x08\x7f\xac\x99\x88\xb1"
+"\x1b\xe2\xc6\xaa\xb7\xa9\x73\x9e\x65\x54\x55\x74\x54\x45\x1f\x74\xa1\x82\x9c\xa2\x1a\xa8\x98\x9a\xbc\xa8\x1e\x0e\x79\x9d\xf8\x55"
+"\x98\xf7\x63\x9b\x06\xac\x0a\xf7\x0a\x0b\xa2\x91\x8f\x8f\x8f\x8f\x8f\x92\x92\x8f\x90\x90\x0c\x0c\xf8\x88\x14\xf9\x21\x15\xaf\x13"
+"\x00\xa8\x02\x00\x01\x00\x0a\x00\x7d\x00\xa3\x00\xc3\x00\xca\x00\xd5\x00\xe1\x00\xe6\x00\xeb\x00\xee\x00\xfb\x00\xff\x01\x6f\x01"
+"\xc7\x02\x06\x02\x2a\x02\x51\x02\x57\x02\x5f\x02\x64\x02\x6c\x02\x81\x02\xe4\x03\x29\x03\x38\x03\x44\x03\x51\x03\x5a\x03\x61\x03"
+"\x68\x03\x6e\x04\x2b\x04\x56\x04\x5b\x04\x6e\x04\x7b\x04\x9a\x04\xa9\x04\xb2\x04\xc9\x04\xd0\x04\xd9\x04\xe3\x04\xee\x04\xfb\x05"
+"\x00\x05\x06\x05\x11\x05\x1a\x05\x22\x05\x2a\x05\x2f\x05\x37\x05\x3f\x05\x47\x05\x52\x05\xd9\x06\x03\x06\x3a\x06\xa3\x06\xcd\x06"
+"\xd5\x07\x48\x07\xb8\x08\x08\x08\x73\x08\xdd\x08\xf8\x09\x20\x09\x34\x09\x4e\x09\xa9\x09\xde\x0a\x16\x0a\x66\x0a\xb4\x0a\xce\x0b"
+"\x16\x0b\x5c\x0b\x89\x0b\x91\x0b\xa9\x0b\xb2\x0b\xea\x0c\x29\x0c\x2e\x0c\x39\x0c\x4a\x0c\x7c\x0c\xa1\x0c\xad\x0c\xb7\x0c\xe1\x0d"
+"\x0b\x0d\x23\x0d\x28\x0d\x4d\x0d\x67\x0d\x82\x0d\xa4\x0d\xc5\x0d\xe4\x0e\x03\x0e\x21\x0e\x3e\x0e\x5b\x0e\x78\x0e\x95\x0e\x98\x0e"
+"\x9f\x0e\xaa\x0e\xb5\x0e\xb9\x0e\xd4\x0e\xd8\x0e\xe3\x0e\xfd\x0f\x15\x0f\x29\x0f\x42\x0f\x4a\x0f\x63\x0f\x70\x0f\x7d\x0f\x93\x0f"
+"\xa8\x0f\xac\x0f\xb5\x0f\xc9\x0f\xcd\x0f\xe0\x0f\xf2\x0f\xfc\x10\x05\x10\x10\x10\x21\x10\x32\x10\x41\x10\x4b\x10\x55\x10\x61\x10"
+"\x71\x10\x79\x10\x89\x10\x91\x10\xa0\x10\xa5\x10\xb4\x10\xc1\x10\xc5\x10\xce\x10\xd9\x10\xe6\x10\xf3\x11\x00\x11\x0d\x11\x1a\x11"
+"\x25\x11\x31\x11\x35\x11\x41\x11\x4d\x11\x59\x11\x61\x11\x69\x11\x74\x11\x7f\x11\x8a\xed\x1d\xe3\xfb\x42\x05\xdd\x06\x0e\xf9\x7c"
+"\xf9\x31\x15\xfb\x64\x72\x06\xc4\x86\xa2\x7b\x67\x1a\x7a\x84\x67\x7f\x60\x1e\x51\xfb\x65\x70\x29\x75\x59\x6d\x67\x19\x63\x69\x5f"
+"\x77\x54\x1b\x3f\x5d\xb1\xca\xa7\x8d\x95\xa5\xea\x1f\xdd\xf7\xc0\x9c\xc4\x9a\x97\xc9\x8e\x19\xa4\xfb\xcb\x72\x07\xd0\x81\x8f\x89"
+"\x70\x1a\x7f\x85\x6c\x82\x6a\x1e\x54\xfb\x62\x05\x74\x39\x80\x4f\x6a\x1a\x29\xe7\x47\xf7\x17\xe0\xce\xa6\xc0\xb8\x1e\xad\xb2\xa2"
+"\xc0\xab\xf7\x01\xcd\xf7\x78\x18\xb3\xf7\x18\x92\x95\xc2\x96\x08\x0b\x78\x0a\xe2\xd8\xc0\xb2\xee\xc7\x1e\xfb\x5a\xe4\x15\xf7\x1f"
+"\xaf\xb9\xd7\xbb\x1b\x9e\x94\x80\x74\x5f\x7a\x60\x6b\x6a\x1f\x70\x6e\x72\x7d\x52\x79\x08\x0b\xa1\x1d\x82\x6e\x15\xa8\xf4\x1d\x4d"
+"\x6e\x6d\x6e\x68\x1b\x6d\x78\xa2\xb2\xda\xb0\xf7\x25\xae\xc9\x1f\xb9\xa5\xa8\xa2\xab\x1b\x0b\x15\x68\x6e\x6d\x67\x36\x1d\x15\xfb"
+"\xd9\x06\x7a\x45\x05\xf7\xda\x06\x0e\xf8\x6b\xf7\x19\x63\x0a\x54\x85\x71\xb7\x1d\x0b\xf7\x9c\x84\x1d\x0b\x60\x6b\xb0\x0a\x0b\x7f"
+"\x1d\x0e\x06\xfb\x34\xfb\x42\x05\xc4\x06\xf7\x17\xea\x05\x0e\x15\x28\x0a\x0e\xfa\x40\xf9\x31\x15\xfb\x4f\x72\x06\xc3\x87\x92\x86"
+"\x67\x1a\x7f\x89\x83\x7e\x71\x1e\xfb\x30\xfb\xdb\x6a\xf7\xbb\x05\x85\xc0\x8b\x8b\x97\x1a\xb6\x95\x95\xc0\x90\x1e\xa4\xfb\xa1\x73"
+"\x07\xc7\x83\x95\x7d\x8c\x35\xfb\x2a\xfb\xcb\x18\x64\xf7\xf1\x05\x8a\x90\x8b\x92\x8f\x1a\xaf\x98\x96\xbb\x91\x1e\xa4\xfb\xa9\x73"
+"\x07\xcb\x80\x8e\x89\x95\x44\xd9\xfc\xd7\x18\xa8\x06\xf7\x7d\xf8\x7d\xc6\xfc\x7d\x05\xa8\x06\xf7\xb2\xf8\xe2\xa7\xc2\x99\x97\xb5"
+"\x91\x19\x0b\xf7\x7e\xf7\xcd\x15\x4f\xfb\x6c\x79\x52\x7d\x81\x46\x86\x19\x72\xf7\xd6\xa4\x07\x4a\x8e\x7f\x92\xb0\x1a\x98\x8c\x92"
+"\x92\xa4\x1e\xbf\xf7\x53\xf7\x52\xf7\x9f\xad\xb9\x9e\x9a\xb1\x93\x19\xa4\xfb\x64\x72\x07\xc0\x89\x99\x82\x68\x1a\x79\x86\x7f\x76"
+"\x6d\x1e\xfb\x15\xfb\x4e\x79\xc2\x81\xa9\x7b\xbe\x19\x74\xcc\x81\xaf\x9d\x1a\xa7\xdf\x1d\x88\x9e\x56\x08\x0b\xf7\xc6\xf9\x31\x15"
+"\xfb\x57\x72\x06\xc2\x86\x94\x85\x9e\x5f\xfb\x0c\xfc\x2f\x18\x64\xfb\x17\x84\x80\x54\x80\x08\x72\xf7\x64\xa4\x07\x50\x90\x76\x9a"
+"\xb2\x1a\x9e\x91\xac\x97\xb5\x1e\xee\xf7\xf8\xf7\x95\xfc\xb9\x05\xa7\x06\xf7\x23\xf8\x8e\x8a\x0a\x05\x0b\x86\x0a\xf7\x15\xf8\x72"
+"\x9b\xc2\x9e\x98\xcd\x8f\x19\xa4\xfb\xd1\x72\x07\x9c\x0a\xfb\x0f\xfc\x55\x7b\x57\x7c\x7d\x5a\x85\x19\x72\xf8\xbd\x07\x0b\x15\x51"
+"\x5a\x5b\x52\x4f\xba\x5b\xc6\xc6\xbb\xbb\xc6\xc5\x5b\xbb\x51\x1f\x89\x5b\x15\xac\xa6\x70\x6a\x6c\x70\x71\x6a\x6c\x71\xa5\xab\xab"
+"\xa5\xa6\xaa\x1f\x0e\x77\x0a\x62\x75\xa1\x0b\x9d\xae\x8e\x19\x97\x21\x1d\x0b\x19\x85\x75\x05\x0b\x7f\x5e\x79\x79\x69\x88\x19\x0b"
+"\xf9\x56\xf7\xde\x78\x1d\x60\x68\x91\x5d\x1b\x3e\x99\x1d\xd1\x92\x93\xc0\x8f\x19\x0b\x8d\x79\x89\x0a\x5e\xcd\xfb\x0f\xe8\x1f\xab"
+"\x0a\xcb\xdb\xb1\x5a\xfb\x09\x99\x1e\xa6\x87\xb3\xf7\x5d\x05\x6d\x06\x79\x82\x7d\x83\x76\x1b\x80\x7c\x8e\x93\x72\x1f\x99\x62\x6f"
+"\x90\x6e\x1b\xfb\x06\x34\x37\xfb\x02\x71\x90\x74\x93\x7a\x1f\xa1\x61\xb4\x5f\xc3\x5f\x08\xda\x4f\xad\x5d\x5c\x1a\x75\x84\x72\x7f"
+"\x76\x1e\x64\x74\x69\x78\x59\x1b\x57\x5e\xa3\xb6\x71\x1f\x78\xaa\x83\xa9\x87\xc7\x6e\x8d\x18\x0b\xf7\x7b\xf7\x0f\x15\x5c\x6a\x78"
+"\x78\x6a\x1d\x8c\x8f\x8f\x98\x1f\xf3\xf7\xfe\xfb\x50\x70\x85\x73\x05\x8c\x92\x92\x8c\x90\x1b\x9b\x9a\x7d\x7d\x83\x87\x75\x87\x7d"
+"\x1f\x4d\xfb\x67\x05\x85\x77\x88\x79\x7b\x1a\x5c\xa5\x6f\xb7\xa6\xa0\x96\xa8\xac\x1e\xa1\x9f\x96\x9a\xa4\xb4\x08\x0b\x15\x49\x6b"
+"\x68\xc2\x0a\x8d\x47\x8b\x8b\x98\x6f\x08\x5a\x1d\x15\xf4\xb9\xce\x98\x0a\x68\x68\x44\x65\x1e\x0e\x68\x6f\x6d\x67\x69\xa9\x6c\xac"
+"\xaf\xa9\xa8\xae\x0b\xa1\x05\xfb\x73\x20\x1d\x97\x06\x0b\x68\x88\x19\x83\x20\x1d\x0b\x7b\x97\x7b\xa1\x7c\x1f\x0b\x98\x7f\x05\x8e"
+"\x97\x0b\xf8\x72\xf8\x41\x15\xfb\x03\x06\xa3\x69\x6d\x94\x5d\x1b\xfb\x0f\x28\x3a\x26\x58\xa5\x67\xc1\x74\x1f\x39\x5d\x7d\x7d\x66"
+"\x1a\x6b\x9d\x78\xb7\x7c\x1e\x4d\x7c\x77\x83\x73\x78\x08\x7b\x7d\x80\x73\x73\x1a\x4a\xd4\x62\xf7\x07\xf7\x21\xed\xc9\xe3\xc8\x63"
+"\xac\xfb\x01\xaa\x1e\x56\x9a\x05\x6b\x94\x78\x99\x9a\x1a\x9b\x9a\x9f\x98\x90\x92\x8a\x88\x93\x1e\x88\x96\x93\x8a\x97\x1b\xb7\xb8"
+"\x97\xa1\xb1\x1f\xc5\xac\xaa\xbe\xc7\x1a\x9b\x89\x95\x87\x9b\x1e\xce\x06\xfb\xff\xfc\x0f\x15\x97\x8a\xd7\x71\xa1\x81\x08\xa7\x7d"
+"\x98\x7a\x71\x1a\x5f\x5f\x72\x3f\x4a\x5d\xab\xb9\x9f\x94\x9b\xa0\x9f\x1e\x97\x97\xaa\x9d\x92\x8a\x08\xf7\x20\xf8\x49\x15\xa5\x9e"
+"\x73\x68\x69\x7f\x59\x7a\x67\x1f\x5d\x75\x72\x75\x6c\x1b\x70\x7c\xa0\xb1\xb3\x9c\xc8\xa0\xb1\x1f\xac\x9e\xa0\x9b\xa5\x1b\x0b\xc0"
+"\x0a\x6b\xfb\x0b\x45\xfb\x82\x1e\xf7\x0d\x06\xba\xf7\x26\x9c\xa8\x0a\x92\x1f\x7a\x99\x98\x83\x9c\x1b\xac\xa4\xaa\xb5\xb3\x75\xa5"
+"\x68\x58\x62\x59\xfb\x33\x3c\xba\x0a\x0b\xf7\x6c\x6f\x0a\x0b\xa4\x1d\xf7\xd7\x21\x1d\x5e\x06\x71\x7a\x9c\xa4\x92\x8c\x90\x8c\x92"
+"\x1f\x0b\xf9\x1e\xf9\x31\x15\x8b\x0a\xf7\xdf\xa5\x1d\x05\x0b\x15\xf7\x08\xbe\xd6\xe1\xdc\x1a\xc6\x69\xb2\x58\x62\x6d\x6c\x61\x70"
+"\x95\x7b\xa9\x77\x1e\xa2\x7c\x92\x81\x7d\x1a\x67\x64\x0b\x52\x0a\x72\x84\x8a\x86\x8a\x84\x1f\x3a\x1d\x82\x20\x1d\x0b\x15\xb1\x9e"
+"\x88\x82\x9b\x94\x0a\x0b\x32\x0a\xfb\xa3\x06\x85\x75\x05\xa1\x06\xa5\x8a\x9c\x7b\x71\x1a\x86\x8a\x84\x89\x85\x1e\x0b\x63\x1d\xf7"
+"\x17\xea\x05\x0b\x1e\x7f\x20\x1d\xf7\x93\x4f\x0a\x0b\x06\xc4\xf7\x68\x4a\x1d\xb2\x28\x1d\x0b\x20\x1d\x98\x06\xae\x86\xa2\x71\x9a"
+"\x57\x0b\x72\x85\x74\x05\x96\x06\xa0\x99\x7c\x75\x84\x8a\x0b\x7b\x7f\x65\x4b\x1d\x5e\x7a\x79\x3c\x0a\x0b\x06\x91\xa1\x6c\x89\x76"
+"\x9f\x75\xbe\x19\x0b\xa3\xb3\xb7\x9e\xaa\xb6\xa5\x1e\x0e\x50\x87\x50\x89\x69\x8a\x82\x0b\x20\x1d\xaa\x06\xa5\x9c\x7a\x0b\xf1\x1d"
+"\x9d\x9d\x0b\x06\x71\x8c\x7a\x9b\xa4\x1a\x0b\x85\x75\x05\xa1\x06\xa4\x8a\x0b\x1e\x6c\x70\x73\x6e\x53\x3a\x0b\x73\x49\x1b\x4b\x6b"
+"\xa8\xc8\x85\x1f\x60\x0b\xf8\x1c\xf8\x22\x15\xf7\x6c\xf7\x5a\xb6\xb2\x93\x8e\xb6\x91\x19\xa4\xfb\x67\x72\x07\xbd\x85\x91\x88\x79"
+"\x1a\x78\x77\x71\x52\x56\x1e\x3f\x44\x74\x77\x29\x37\xc9\xf7\x78\x18\x9a\xbf\x9f\x9b\xc6\x8f\x08\xa4\xfb\xca\x72\x07\xae\x85\xa0"
+"\x86\x91\x87\x5c\x1d\x78\x84\x70\x1e\xfb\x0e\xfc\x55\x7b\x56\x7c\x7e\x5a\x85\x19\x72\xf7\xb5\xa4\x07\x57\x8f\x7d\x94\xac\x1a\x91"
+"\x8c\x91\x8c\x90\x1e\xcd\xf7\x8d\xf7\x06\xfb\x86\x05\x95\x76\x8e\x80\x80\x1a\x7d\x7f\x83\x71\x89\x1e\x87\x8a\x80\x8a\x7f\x8a\x08"
+"\x72\xf7\xac\xa4\x07\x65\x8f\x7d\x92\x80\xa3\x08\x0b\xf8\x3f\xf7\x17\x15\xa3\x0a\xf7\x03\xf8\x29\x4f\x7d\x5b\x84\x26\x83\x19\x70"
+"\xa0\x07\xa5\x9a\x81\x79\x82\x86\x75\x73\x34\x1f\x79\x47\x91\x1d\xfb\x46\xf7\xc5\x93\x1d\x0b\x7e\x1b\x83\x82\x94\x92\x8d\x8c\x8f"
+"\x8d\x91\xd1\x1d\x9e\x1a\xba\x6e\xa7\x5c\x67\x6e\x7f\x6d\x67\x56\x0a\xf6\xf8\x34\x18\x3d\x7c\x59\x83\x3b\x84\x08\x70\x07\x8c\x93"
+"\x94\x8b\x90\x1b\xa7\x64\x1d\xfb\x2e\xfc\xcb\x50\x1d\x0e\xf7\xac\xf8\x5e\x15\xfb\x4b\x4c\x0a\x85\x88\x81\x1f\x30\xfb\xf2\x05\xf7"
+"\x09\x06\xc3\xf7\x6b\x05\x94\x06\xa1\x8a\x96\x79\x90\x5a\x91\x50\x8d\x7d\x95\x73\xcb\x1d\x5f\x74\x79\x78\x77\x1b\x7b\x83\x98\xa9"
+"\x86\x1f\x7e\xec\x79\xa4\x50\x8e\xb7\x95\x9c\x9e\xaf\xd9\x08\xa6\x97\x95\x96\x97\x1b\x92\x8f\x88\x82\x8f\x1f\x78\x94\x93\x85\x9c"
+"\x1b\xa8\x9e\xa2\xae\xaf\x76\xa0\x65\x5f\x7c\x7b\xfb\x00\x53\x1f\x4c\x6c\x6b\x73\x57\x1b\x0b\xf7\x10\xf8\x09\x15\x25\x06\x7f\x5f"
+"\x05\xf1\x06\x4c\xfb\x7c\x87\x0a\x72\x06\xe4\x1d\xf1\xfb\x3e\x15\xc8\xf7\x77\x05\x7c\x0a\xc2\xf7\x5f\x05\xf7\x0e\x06\x97\xb7\x05"
+"\x0e\x63\x0a\x53\x85\x72\xb7\x1d\x0b\xf8\x3c\xf8\xc4\x15\x66\x06\x50\x23\x05\x90\x79\x81\x8c\x7d\x1b\xfb\x2a\xfb\x1f\xfb\x32\xfb"
+"\x3e\x52\xa3\x63\xc0\x6d\x1f\x43\xfb\x12\x05\xb3\x06\xcb\xf7\x06\x05\x85\x9f\x98\x89\x9d\x1b\xf7\x28\xf7\x1c\xf7\x2f\xf7\x3d\xcb"
+"\x72\xb4\x52\xa7\x1f\xfb\x87\xfc\x02\x15\x93\x07\xd5\xb0\xf7\x20\xaf\xcc\x1e\xb8\xa4\xa8\xa2\xab\x1b\x98\x94\x87\x81\x95\x1f\x99"
+"\x61\x15\x8c\x89\x8b\x8a\x89\x1a\x4f\x70\xfb\x0a\x6e\x46\x1e\x3f\x6c\x6c\x6a\x64\x1b\x7b\x80\x90\x98\x81\x1f\x0b\x15\x60\x6b\x74"
+"\x76\x72\x6e\x08\x57\x4f\x6e\x3f\x3f\x1a\x26\xbd\x4b\xd9\xba\xb1\xa1\xc1\xbb\x1e\x50\xa7\xa0\x7a\xb5\x1b\xf2\xea\xf7\x35\xf7\x41"
+"\xda\x6e\xbb\x5c\x6c\x73\x72\x6b\x79\x92\x77\x96\x7e\x1f\xad\x65\x8b\x8b\x90\x83\x08\x98\x78\x91\x75\x74\x1a\x2b\x3d\xfb\x05\x4a"
+"\x70\x78\x9f\xbc\x78\x1e\xc6\xdc\xa2\xc0\xc2\x1a\xb4\x78\xa6\x6e\x5b\x68\x50\x39\x6c\x8d\x73\x93\x59\x1e\x59\x63\x70\x76\x72\x1b"
+"\x71\x78\xb0\xbd\xe5\xb9\xf7\x21\xc3\xe0\x1f\x0e\xf8\x20\xf7\xe4\x15\x4c\xf7\x71\x05\x89\x95\x89\x95\x94\xb8\x1d\x77\x41\xa0\x1f"
+"\xce\xfb\x91\x55\xfb\x61\x2f\x1d\x6b\x20\x1d\xf7\xc6\x21\x1d\x68\x06\x71\x7a\x9c\xa5\x92\x8c\x90\x8c\x91\x1f\xc2\xf7\x60\xf7\x68"
+"\xf7\xad\xac\xb5\xa5\xa2\xa2\x92\x19\x22\x1d\xfb\x52\x20\x1d\x9d\x06\xa6\xa2\x78\x74\x7b\x84\x78\x7e\x7a\x1f\x0b\xf7\xe6\xf7\x2d"
+"\x15\x46\x67\x5f\x69\x55\x1b\x5e\x6c\xad\xbd\xaa\x95\xa5\xa3\xae\x1f\x75\xad\x9d\x85\xa6\x1b\xb0\xa7\x9e\xa4\xa0\x75\x9b\x6e\x7b"
+"\x79\x87\x7f\x5c\x1f\x8a\x94\x8b\x93\x8f\x1a\xd3\xb5\xca\xbb\x99\x95\x81\x7d\x8a\x8b\x89\x8a\x8a\x1e\x88\x7d\x8b\x8b\x88\x1a\x72"
+"\xa6\x73\xa9\xa8\xa1\xa1\xa9\xba\x5d\xa8\x42\xfb\x02\x3b\x59\x46\x69\x9a\x72\xaf\x71\x1e\x3a\x6e\x65\x5f\x4d\x1a\x43\xc8\x59\xe1"
+"\xe8\xc7\xb9\xf3\xb7\x1e\x0b\xce\xf7\xb2\x15\xc5\xa7\xa2\xaa\x9c\x1b\x94\x90\x84\x7e\x81\x88\x7c\x83\x6d\x1f\x3a\xfb\xc0\x05\xf7"
+"\x0a\x06\xba\xf7\x4a\x93\xa9\xac\xcd\xab\xbd\x19\xa3\x9a\x9b\x98\x97\x1b\x95\x91\x84\x7f\x80\x89\x7e\x84\x70\x1f\xfb\x0e\xfc\x6d"
+"\x05\xf7\x08\x06\xf7\x14\xf8\x86\x05\x91\xa0\x8e\xa1\x9c\x1a\xb7\x71\xa8\x65\x6d\x6f\x7b\x66\x6a\x1e\x70\x6d\x7a\x6f\x6c\x4c\x08"
+"\xa3\xef\x8b\x8b\x9b\x1a\xac\x72\xa4\x68\x50\x53\x54\x25\x5e\x1e\x0b\x15\x55\x68\x77\x77\x7a\x1b\x83\x85\x92\x95\x97\x96\xbb\x99"
+"\xb8\x1f\xd9\xf7\xa0\x05\xfb\x0a\x06\x6b\x0a\x0b\xf7\xbd\xf7\xd5\x15\xf7\x7a\x06\x4d\xfb\x7d\x79\x0a\x22\x1d\xfb\xa8\x20\x1d\xa5"
+"\x06\xa6\x9b\x7a\x71\x83\x8b\x87\x89\x85\x1f\x51\xfb\x6d\x05\xfb\x7a\x4a\x0a\x0b\xe9\xf9\x18\x15\xe4\x1d\xfb\x0d\xfc\x52\x87\x0a"
+"\x06\xf7\x74\x46\x15\x7c\x0a\x0b\xf7\x12\x15\x5e\x76\x79\x71\x7f\x1b\x87\x88\x8f\x90\x90\x8c\x91\x90\x9c\x1f\xe7\xf7\xf4\x05\x82"
+"\x1d\x0b\x51\x9f\x55\xaf\x61\x1f\x9c\x78\x98\x81\xaa\x79\x3c\xfb\x1c\x18\xbb\x06\xd1\xf7\x0c\x05\x81\xaa\xa0\x88\xaa\x1b\xd7\xd6"
+"\xa5\xbc\xce\x1f\xf7\x10\xe7\xde\xf7\x32\xf7\x26\x1a\xbe\x7a\xc0\x6d\xb1\x1e\x78\xa4\x7b\x99\x64\xa1\x08\xfc\x18\xfc\xd7\x15\x84"
+"\x9f\x87\xa1\xa1\x1a\xf1\xbc\xf7\x43\xc5\xf2\x1e\xe2\xbc\xc2\xb6\xc8\x1b\xa4\x9e\x85\x7c\x9e\x1f\xa6\x66\x15\x94\x0b\x90\xa1\x05"
+"\xfb\xa2\xb7\x0a\x87\x8a\x83\x89\x85\x1e\x4c\xfb\x81\x05\x76\x5a\x6a\x83\x63\x1b\x5a\x70\x9f\xaf\x9b\x8e\x9b\x97\xb6\x1f\xad\xf7"
+"\x16\x97\xb8\x9d\x47\x0a\x63\xfb\x2d\x05\x84\x71\x88\x7b\x7b\x1a\x46\x0b\xf8\x36\xf7\x4c\x15\x4f\xf8\x72\x05\xfb\x6c\x06\x86\x75"
+"\xbf\x85\x96\x87\x9b\x76\x19\xfb\x16\xfc\x7e\xa7\x1d\xf7\x0d\xf8\x5e\xd4\xfc\xd0\x05\x9c\x06\xf8\x18\xf8\xd0\xfb\x15\xfc\x78\x7f"
+"\x5f\x78\x78\x68\x88\x19\x74\x20\x1d\x0b\xf9\x31\x15\xfb\xbd\x72\x06\xae\x85\xa0\x86\x91\x87\x08\x91\x88\x90\x81\x82\x1a\x7f\x87"
+"\x74\x84\x71\x1e\xfb\x06\xfc\x44\x05\xfb\x29\x64\x7c\x6f\x67\x1b\x78\x83\x91\x97\x92\x8d\x90\x93\x94\x1f\x96\x98\x8d\x91\x99\x1a"
+"\xaf\x6f\xa6\x68\x67\x6f\x6d\x63\x50\xcb\x61\xe3\xf7\x00\xcd\xc8\xf7\x17\xae\x1e\xf7\x14\xf8\x73\x9c\x0b\x53\xfb\x56\x6f\x4a\x51"
+"\x43\x08\x65\x6c\x75\x7a\x77\x1b\x7d\x84\x93\x9c\x9a\x8c\x91\x99\xb8\x1f\xe9\xf7\xc8\x05\x86\x81\x89\x88\x7e\x1f\x4d\x80\x40\x81"
+"\x5f\x89\x08\x70\x07\xb9\x88\x95\x86\x77\x1a\x7b\x86\x6f\x82\x6e\x1e\x63\xfb\x19\x05\x7d\x59\x84\x6a\x72\x1a\x5a\xa4\x72\xbd\xce"
+"\xa9\xa5\xf7\x24\xf2\x1e\x79\x0b\xf7\xd9\x16\xb5\x1d\xb9\x06\xeb\x8c\xbc\x63\x96\x35\x08\x9f\x06\xb7\xf7\x37\x05\xfc\x68\x06\x82"
+"\x0a\x0b\xf7\xcd\xf8\x59\x15\xfb\x1b\xfb\x14\xfb\x2a\xfb\x33\x30\xc0\x4e\xdc\xb1\xaf\x98\xa6\xb4\x1f\xe2\xc6\xc2\xf1\xf5\x1a\xe5"
+"\x56\xcb\x40\x1e\x79\x69\x15\xa5\x9b\x76\x68\x4c\x6d\xfb\x14\x69\x3b\x1f\x5d\x77\x73\x74\x6d\x1b\x70\x78\xa7\xb3\xb9\xa7\xf7\x0f"
+"\xa8\xd7\x1f\xc0\x9e\xaa\xa9\xae\x1b\x0b\x7f\x6f\x6c\x85\x6c\x1b\x2d\x53\xcc\xf7\x01\xf7\x25\xd3\xf7\x42\xe6\xd7\x1f\xaa\xb0\xb2"
+"\x9a\xb4\x1b\xdc\xbd\x4f\x29\x7e\x8a\x83\x89\x7d\x1f\xab\x85\xbe\xf7\x7e\x05\x6d\x06\x75\x7e\x81\x84\x7c\x1b\x83\x7c\x8e\x90\x7c"
+"\x1f\x99\x5e\x5e\x92\x62\x1b\xfb\x73\xfb\x4d\xfb\x5d\xfb\x87\x0b\xe0\x1d\x99\x92\xab\x9a\xc1\xae\x0a\x95\x8e\x8b\x93\x1b\xa6\x9a"
+"\x81\x79\x7d\x7d\x50\x78\x46\x1f\x40\xfb\x9c\x05\x76\x3f\x7e\x51\x73\x1a\x67\xa6\x73\xb4\xc8\xb1\xaa\xf4\xd0\x1e\x0b\x59\x1d\x50"
+"\x7e\x4d\x7f\x0a\x0b\x85\x75\x05\xa7\x06\xa5\x9c\x7a\x71\x85\x8a\x85\x8a\x85\x1f\x3a\x1d\x7c\x20\x1d\xf7\xd6\x06\x0b\xb0\x1d\x7b"
+"\x70\x1a\x85\x95\x1d\x0b\x15\x50\x63\x77\x76\x79\x1b\x83\x84\x92\x93\x99\x93\xad\x99\xbf\x1f\xbe\xf7\x4b\xe1\xba\x9e\xcf\x35\x5c"
+"\xd6\xf7\xa4\xc6\x0a\x94\x8f\x8b\x91\x1b\xa8\x9a\x81\x79\x7a\x7c\x51\x5e\xfb\x35\x1f\x3d\x60\x78\x45\xd8\xb6\x05\x5a\x0b\xf7\x70"
+"\x15\x9e\xa0\x94\x95\x9c\x9d\x08\xd1\xd3\xaa\xb4\xa0\x1a\x91\x85\x91\x84\x83\x7d\x82\x78\x78\x1e\x7e\x7f\x81\x83\x73\x7a\xfb\x3e"
+"\xfb\x10\x18\x82\x07\xe0\x35\xc6\x4d\xa3\x70\x08\x83\x92\x8e\x89\x90\x1b\x94\x91\x92\x93\x9a\x81\xa6\x74\xbb\x1f\x0b\x8e\x1d\xf7"
+"\x01\x1d\xf7\x2c\xe2\x05\xaa\x9d\x93\x95\x2d\x1d\x0e\x1a\x5c\xb8\x69\xc8\xbe\xba\xa8\xb9\xa4\x68\x1d\x81\x88\x7b\x1b\x0b\xf7\xd1"
+"\xf7\x22\x15\x46\x5d\x6e\x75\x60\x1b\x61\x75\xa7\xc1\x9b\x8d\x98\x8f\x9f\x1f\xf3\x9f\xbc\xa1\xbd\xb9\x08\xae\xab\x9e\xb0\xaf\x1a"
+"\xbe\x5f\xaf\x4e\xfb\x25\xfb\x23\xfb\x37\xfb\x39\x36\xcb\x4d\x0b\x34\x0a\x67\x20\x1d\xf7\xbe\x21\x1d\x72\x06\x70\x8c\x7b\x9b\xa5"
+"\x1a\x90\x8c\x92\x8d\x91\x1e\xf7\x16\xf8\x7f\x98\xb8\x9c\x9d\xae\x8e\x19\x97\x06\x0b\x15\x6c\x7c\x7e\x80\x6d\x1d\x6b\x93\xb1\x1d"
+"\x0b\x54\x1d\x56\x82\x85\x8a\x89\x81\x1f\x0e\xa6\x92\x9b\x96\xaa\x1b\xf7\x04\xc1\x50\xfb\x0d\xfb\x07\x69\xfb\x0b\x55\x3e\x1f\x3e"
+"\x56\x44\x67\x2c\x1b\x65\x7b\x95\xa3\x97\x8e\x9a\x94\xa6\x1f\x8d\x8c\x8d\x8b\x1e\x0b\x6e\x06\x78\x80\x88\x89\x7c\x1b\x81\x83\x8d"
+"\x92\x79\x1f\x95\x72\x7f\x8e\x76\x1b\x3a\x56\x5a\x3e\x55\x99\x6f\xcd\x3c\x1f\xb1\x5e\x9d\x69\x72\x1a\x6d\x72\x73\x6b\x74\x0b\x15"
+"\xa5\x9b\x75\x69\x4c\x6b\xfb\x19\x6a\x3d\x1f\x5c\x76\x73\xdb\x1d\xc0\x9e\xab\xaa\xae\x1b\x0e\x82\x3a\x97\x1d\x0b\xf9\x41\x15\xfb"
+"\x08\x58\x40\x36\x39\x1a\x50\xad\x64\xbe\xb4\xa9\xaa\xb5\xa6\x81\x9b\x6c\x9f\x1e\x75\x9a\x84\x95\x9a\x1a\xae\xb2\xb2\xda\xb5\x1e"
+"\x0b\x05\x27\x71\x7a\x6c\x6e\xee\x1d\x93\x96\x8d\x92\x95\x1a\xa6\x75\xa1\x70\x70\x75\x73\x6e\x5d\xb5\x6c\x0b\x86\x75\x05\xa0\x06"
+"\xa5\x8a\x9c\x7a\x71\x1a\x84\x4d\x1d\xfc\x7f\x7f\x5e\x7a\x79\x68\x88\x19\x83\x20\x1d\x0b\xf8\x22\x15\xdd\xf7\x4e\x8c\x8c\x8d\x90"
+"\x8e\x93\x19\x95\xa1\x8c\x8e\x98\x1a\xa6\x77\xa1\x72\x64\x66\x68\x65\x88\x1e\x7b\xfb\x6a\x05\x0b\xf7\x05\xf7\x5c\xc7\xf2\xa1\xa2"
+"\xaf\x89\x19\x91\x9f\x05\xfb\x26\x06\x85\x77\x05\x97\x06\x9b\x95\x83\x7d\x7c\x86\x80\x6b\x53\x1f\x0b\x05\x7c\x57\x82\x60\x79\x1a"
+"\x64\xa7\x71\xb5\xc7\xb3\xac\xf2\xcd\x1e\x75\x99\x05\x56\x69\x71\x70\x7b\x1b\x83\x83\x92\x93\x0b\xf8\xe2\xf7\x56\x15\x73\x90\x69"
+"\x53\x75\x72\x64\x6f\x19\x65\x55\x44\x77\x39\x1b\x5e\x78\x94\xa0\x93\x8d\x98\x8e\x96\x1f\x0b\x7c\x58\x7a\x7c\x5b\x85\x19\x72\xf7"
+"\xb2\x07\xf7\x94\xf7\x51\xf7\x3d\xf7\x77\xf7\x3f\xfb\x04\xf1\xfb\x51\x1f\xfb\xb6\x0b\x8a\xba\x05\xaf\x9a\x9f\xa5\x1e\x95\x06\x90"
+"\x9f\x05\xfb\x76\x06\x86\x77\x05\xa6\x9b\x62\x37\x91\x1f\x95\xfb\x68\x0b\x15\xa9\x06\xa8\x97\x92\x91\x9e\x1b\x95\x98\x88\x83\xa2"
+"\x1f\x7a\xbc\xad\x84\xb3\x1b\xf7\x20\xe4\xda\xf7\x0f\xe3\x0b\xb1\xf7\x17\x91\x94\xc5\x98\x19\xa4\xfb\x65\x72\x07\xc6\x86\xa0\x7b"
+"\x65\x1a\x78\x84\x69\x80\x62\x1e\x3b\xfb\xb3\x0b\xfc\xbb\x06\x65\xfb\x3f\xa4\x84\xbe\xef\xcb\xb5\xf1\x8c\x19\xfb\x28\xfc\xad\x05"
+"\x58\x7d\x71\x76\x58\x1b\x7d\x72\x0b\x15\x90\x0a\x15\xdd\x1d\x72\x78\x4d\x0a\xa2\x0a\x7b\xa1\x7c\x1f\xf7\x19\x32\x05\x0e\xd7\x1d"
+"\x77\x73\x3d\x0a\xf7\x18\x33\x05\x0e\x65\x1d\x4d\x0a\x1a\x24\xbd\x4a\xdb\xcd\xbd\xac\xda\xc3\x1e\x8d\x4a\x8b\x8b\x8d\x7f\x08\x74"
+"\x90\x93\x7f\x97\x1b\xae\xb4\x0b\xb1\x1d\x81\x0b\x7a\x7f\x65\x68\x1e\xfb\x0e\xfb\x17\x05\x0b\x1f\xaa\x7c\xa0\x64\x61\x1a\x60\x7c"
+"\x58\x74\x6b\x1e\x61\x6f\x61\x76\x57\x1b\x7d\x81\x8c\x8f\x78\x1f\x0b\x73\x53\x63\x1e\x99\x7e\x05\xab\xa7\x9e\x95\xa7\x1b\xad\xa0"
+"\x77\x6b\x60\x64\x70\x39\x7c\x1f\x0e\x06\x55\x0a\x9c\x7b\x73\x1a\x82\x8b\x87\x89\x84\x1e\xfb\x21\xfc\x7f\x7d\x5e\x0b\xf7\xba\xf7"
+"\xc3\x15\x87\xaf\x9b\x8a\xa2\x1b\xf7\x25\xf7\x00\xe2\xf7\x08\xec\x3b\xcb\xfb\x0e\x1f\x0b\xd8\xd4\x1a\xc0\x6c\x60\x1d\x0b\xf7\x9c"
+"\x16\xf8\xa3\x06\xc6\xf7\x58\x71\x8e\x61\x48\x72\x6f\x66\x71\x19\x6d\x60\x4c\x7b\x44\x1b\x0b\x6d\x73\x73\x6c\x6b\xa4\x71\xa9\xa8"
+"\xa3\xa4\xaa\x0b\xec\x1d\x90\x8c\x92\x8d\x92\x1e\xf7\x16\xf8\x7f\x0b\xab\x86\x99\x89\x95\x88\x92\x87\x19\x91\x87\x8f\x82\x81\x1a"
+"\x7f\x86\x6c\x86\x79\x1e\x0b\xca\xc4\xd6\xb8\x72\xbc\x53\xcc\x1f\x65\xb8\x79\xa9\xa2\x1a\xab\xa0\xa0\xab\xb9\x0b\x16\xa4\x0a\x0e"
+"\x9d\x1a\xa6\xdf\x1d\x89\x9e\x56\x0b\x49\x15\x62\x6a\x6a\x63\x62\xac\x6a\xb4\xb3\xac\xac\xb3\xb4\x6a\xac\x63\x1f\x0b\x15\xc7\x1d"
+"\x0b\x15\xfb\x03\xf7\x27\x05\xa1\x7a\x77\x97\x78\x1b\x73\x76\x76\x73\x7b\x97\x0b\x5e\x6f\x73\x70\x7c\x1b\x85\x86\x91\x91\x94\xa1"
+"\xe2\xae\xf7\x13\x1f\x0b\xf5\x1d\xa6\xad\xae\x6f\xa8\x6b\x1f\x0b\xf2\x1d\xc8\xf7\x6d\x05\x94\x06\x0b\x15\x2b\x1d\x9f\x1a\xa4\x75"
+"\xa0\x71\x79\x0b\x22\xfb\x1c\x1a\x2b\xb2\x46\xd8\x62\x1e\xb0\x77\xa6\x85\xc8\x86\x0b\xc2\x92\x9d\x9c\xae\x19\xc7\xa8\xaf\xba\x9c"
+"\x1b\x8f\x91\x87\x82\x0b\xfa\x65\xf7\xa1\x15\xfe\x7c\x06\x7a\x30\x05\xfa\x7c\x06\x0e\x97\xb8\x9d\x9d\xae\x8e\x19\x97\x06\x0b\x4d"
+"\xba\x7c\xa1\xb8\x1a\xcc\xb3\xb3\x0b\x83\x20\x1d\xf7\xa8\x21\x1d\x6e\x06\x71\x8c\x0b\x92\x95\x1a\xa6\x75\xa1\x70\x70\x75\x73\x6e"
+"\x5d\xb5\x6c\xca\x0b\x1f\xf7\x25\xf8\x9f\xc6\x0a\x0b\xf7\xd9\xf7\x9b\x15\xc3\xfb\x34\x05\x8e\x80\x8d\x81\x80\x1a\x0b\xc7\x0a\xb3"
+"\x6a\xad\x63\x1f\x0b\x05\xae\x95\x97\x94\xb4\x1b\xd4\xbe\x7b\x6c\xa6\x1f\x9f\x0b\xbc\x0a\x6e\xa8\x0b\x75\x1a\xfb\x08\x4c\xfb\x5f"
+"\x49\x2c\x1e\x49\x5d\x5e\x6c\x0b\x70\x1a\x64\xa4\x74\xb6\xc8\xb1\xaa\xf4\xd0\x1e\x0e\x43\xf0\x1d\x0b\x54\x0a\x91\x8c\x91\x8d\x92"
+"\x1e\x0b\x20\x1d\xa1\x06\xa6\x8a\x9b\x7b\x71\x1a\x0b\x15\xfb\x07\x5d\x73\x67\x6d\x1b\x76\x7f\xaa\xc0\x0b\x9a\x98\x94\x9d\x9d\x19"
+"\xa3\xa4\x98\xa6\xa4\x1a\x0b\x1f\xcd\xf7\x65\x4c\x7c\x7f\x89\xfb\x11\x80\x19\x0b\xab\x1e\xcc\xa8\xa1\xa2\xb5\x1a\xbe\x5f\xaf\x4b"
+"\x0b\x6f\x70\x68\x68\xa8\x6e\xae\xad\xa6\xa6\xae\xae\x0b\x75\x05\xf7\xa6\x21\x1d\x75\x06\x71\x8c\x0b\x06\xe1\xf7\x66\x05\x3e\x06"
+"\x34\xfb\x66\x05\x0b\x8a\xc5\x0a\x0b\xa6\xf8\x2b\x15\xb8\x89\x94\x87\x78\x1a\x72\x0b\xe9\xf8\x15\x18\xf7\x2a\x06\x46\xfb\xa1\x05"
+"\x0b\x73\x4a\x1b\x4b\x6a\xa8\xc8\x86\x1f\x60\x06\x0b\x7e\x5e\x79\x79\x68\x88\x19\x0b\x92\x87\x08\x91\x87\x8f\x82\x0b\x85\x1e\xfb"
+"\x17\xfc\x7f\x7f\x5e\x79\x79\x0b\x33\x7a\x5c\x84\x41\x85\x19\x70\x07\x8c\x0b\x6b\x61\x61\xaa\x6b\xb5\xb5\xac\xab\xb5\x0b", 55486
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusRoman-Italic.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusRoman-Italic.cff.cpp
new file mode 100644
index 0000000000..61abb8be24
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusRoman-Italic.cff.cpp
@@ -0,0 +1,1757 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusRoman_Italic_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x13\x4e\x69\x6d\x62\x75\x73\x52\x6f\x6d\x61\x6e\x2d\x49\x74\x61\x6c\x69\x63\x00\x01\x01\x01\x35"
+"\xf9\xbc\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x18\x04\x1e\xe1\x5a\x5f\x0c\x02\x22\x0c\x03\xfb\x3d\xfb\xa2"
+"\xfa\xd1\xfa\x4b\x05\x1c\x2a\xcd\x0f\x1c\x2a\xe0\x11\xae\x1d\x00\x00\xc6\xbf\x12\x01\xa6\x02\x00\x01\x00\x08\x00\x0e\x00\x13\x00"
+"\x1d\x00\x24\x00\x2b\x00\x35\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00\x6e\x00\x74\x00\x7a\x00\x84\x00"
+"\x8b\x00\x8e\x00\x95\x00\x9c\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00\xe3\x00\xe7\x00\xf2\x00\xf4\x00"
+"\xfa\x01\x04\x01\x0b\x01\x12\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01\x59\x01\x5f\x01\x6b\x01\x6f\x01"
+"\x71\x01\x77\x01\x7d\x01\x89\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01\xd0\x01\xd2\x01\xd5\x01\xdb\x01"
+"\xe1\x01\xed\x01\xf0\x01\xf6\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02\x38\x02\x3e\x02\x4b\x02\x52\x02"
+"\x59\x02\x60\x02\x6f\x02\x7b\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02\xb9\x02\xbf\x02\xc9\x02\xcd\x02"
+"\xd3\x02\xda\x02\xe3\x02\xec\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03\x3d\x03\x46\x03\x4f\x03\x58\x03"
+"\x61\x03\x6a\x03\x73\x03\x7c\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03\xcd\x03\xd6\x03\xdf\x03\xe8\x03"
+"\xf1\x03\xfa\x04\x03\x04\x0c\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04\x5d\x04\x66\x04\x6f\x04\x78\x04"
+"\x81\x04\x8a\x04\x93\x04\x9c\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04\xed\x04\xf6\x04\xff\x05\x08\x05"
+"\x11\x05\x1a\x05\x23\x05\x2c\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05\x7d\x05\x86\x05\x8f\x05\x98\x05"
+"\xa1\x05\xaa\x05\xb3\x05\xbc\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06\x0d\x06\x16\x06\x1f\x06\x28\x06"
+"\x31\x06\x3a\x06\x43\x06\x4c\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06\x9a\x06\xa3\x06\xac\x06\xb5\x06"
+"\xbf\x06\xc6\x06\xcf\x06\xdb\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07\x1b\x07\x21\x07\x26\x07\x2d\x07"
+"\x3a\x07\x40\x07\x46\x07\x50\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07\x92\x07\x9a\x07\xa3\x07\xae\x07"
+"\xb4\x07\xb9\x07\xbe\x07\xc4\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08\x10\x08\x12\x08\x19\x08\x21\x08"
+"\x29\x08\x33\x08\x3d\x08\x49\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08\x9c\x08\xa8\x08\xb4\x08\xba\x08"
+"\xc0\x08\xc6\x08\xd2\x08\xd6\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09\x1c\x09\x22\x09\x2e\x09\x38\x09"
+"\x40\x09\x42\x09\x48\x09\x55\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09\xa4\x09\xa7\x09\xa9\x09\xb0\x09"
+"\xbc\x09\xca\x09\xcd\x09\xda\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e\x0a\x34\x0a\x39\x0a"
+"\x42\x0a\x47\x0a\x50\x0a\x53\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d\x0a\xa4\x0a\xab\x0a"
+"\xb2\x0a\xb9\x0a\xc0\x0a\xc7\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d\x0b\x14\x0b\x1b\x0b"
+"\x22\x0b\x29\x0b\x30\x0b\x37\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d\x0b\x84\x0b\x8b\x0b"
+"\x92\x0b\x99\x0b\xa0\x0b\xa7\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed\x0b\xf4\x0b\xfb\x0c"
+"\x02\x0c\x09\x0c\x10\x0c\x17\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d\x0c\x64\x0c\x73\x0c"
+"\x87\x0c\x93\x0c\x98\x0c\x9e\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5\x0c\xe9\x0d\x1f\x0d"
+"\x5f\x0d\x72\x0d\x7e\x41\x45\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41\x6c\x70\x68\x61\x74\x6f\x6e\x6f"
+"\x73\x41\x6d\x61\x63\x72\x6f\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x42\x65\x74\x61\x43\x61\x63"
+"\x75\x74\x65\x43\x63\x61\x72\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x43\x68"
+"\x69\x44\x63\x61\x72\x6f\x6e\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65\x45\x63\x61\x72\x6f\x6e\x45\x64"
+"\x6f\x74\x61\x63\x63\x65\x6e\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65\x6b\x45\x70\x73\x69\x6c\x6f\x6e"
+"\x45\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45\x75\x72\x6f\x47\x61\x6d\x6d\x61"
+"\x47\x62\x72\x65\x76\x65\x47\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x47\x64\x6f"
+"\x74\x61\x63\x63\x65\x6e\x74\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a\x49\x62\x72\x65\x76\x65\x49\x64"
+"\x6f\x74\x61\x63\x63\x65\x6e\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f\x74\x61\x49\x6f\x74\x61\x64\x69"
+"\x65\x72\x65\x73\x69\x73\x49\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78"
+"\x4b\x61\x70\x70\x61\x4b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c\x61\x6d\x62\x64\x61\x4c\x63\x61"
+"\x72\x6f\x6e\x4c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63\x75\x74\x65\x4e\x63\x61\x72\x6f"
+"\x6e\x4e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61"
+"\x75\x74\x4f\x6d\x61\x63\x72\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72\x6f\x6e\x4f\x6d\x69\x63\x72\x6f"
+"\x6e\x74\x6f\x6e\x6f\x73\x4f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73\x69\x52\x61\x63\x75\x74\x65\x52"
+"\x63\x61\x72\x6f\x6e\x52\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75\x74\x65\x53\x63\x65\x64\x69\x6c"
+"\x6c\x61\x53\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x53\x69\x67\x6d\x61\x54\x61"
+"\x75\x54\x62\x61\x72\x54\x63\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54\x68\x65\x74\x61\x55\x62\x72\x65"
+"\x76\x65\x55\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f\x67\x6f\x6e\x65\x6b\x55\x70\x73"
+"\x69\x6c\x6f\x6e\x55\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x55"
+"\x72\x69\x6e\x67\x55\x74\x69\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x57\x64\x69\x65\x72"
+"\x65\x73\x69\x73\x57\x67\x72\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59\x67\x72\x61\x76\x65\x5a\x61\x63"
+"\x75\x74\x65\x5a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61\x65\x61\x63\x75\x74\x65\x61\x66"
+"\x69\x69\x30\x30\x32\x30\x38\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31\x38\x61\x66\x69\x69\x31\x30\x30"
+"\x31\x39\x61\x66\x69\x69\x31\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69\x31\x30\x30\x32\x32\x61\x66\x69"
+"\x69\x31\x30\x30\x32\x33\x61\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35\x61\x66\x69\x69\x31\x30\x30\x32"
+"\x36\x61\x66\x69\x69\x31\x30\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31\x30\x30\x32\x39\x61\x66\x69\x69"
+"\x31\x30\x30\x33\x30\x61\x66\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61\x66\x69\x69\x31\x30\x30\x33\x33"
+"\x61\x66\x69\x69\x31\x30\x30\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30\x30\x33\x36\x61\x66\x69\x69\x31"
+"\x30\x30\x33\x37\x61\x66\x69\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66\x69\x69\x31\x30\x30\x34\x30\x61"
+"\x66\x69\x69\x31\x30\x30\x34\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30\x34\x33\x61\x66\x69\x69\x31\x30"
+"\x30\x34\x34\x61\x66\x69\x69\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69\x69\x31\x30\x30\x34\x37\x61\x66"
+"\x69\x69\x31\x30\x30\x34\x38\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35\x30\x61\x66\x69\x69\x31\x30\x30"
+"\x35\x31\x61\x66\x69\x69\x31\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69\x31\x30\x30\x35\x34\x61\x66\x69"
+"\x69\x31\x30\x30\x35\x35\x61\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37\x61\x66\x69\x69\x31\x30\x30\x35"
+"\x38\x61\x66\x69\x69\x31\x30\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31\x30\x30\x36\x31\x61\x66\x69\x69"
+"\x31\x30\x30\x36\x32\x61\x66\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61\x66\x69\x69\x31\x30\x30\x36\x37"
+"\x61\x66\x69\x69\x31\x30\x30\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30\x30\x37\x30\x61\x66\x69\x69\x31"
+"\x30\x30\x37\x31\x61\x66\x69\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66\x69\x69\x31\x30\x30\x37\x34\x61"
+"\x66\x69\x69\x31\x30\x30\x37\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30\x37\x37\x61\x66\x69\x69\x31\x30"
+"\x30\x37\x38\x61\x66\x69\x69\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69\x69\x31\x30\x30\x38\x31\x61\x66"
+"\x69\x69\x31\x30\x30\x38\x32\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38\x34\x61\x66\x69\x69\x31\x30\x30"
+"\x38\x35\x61\x66\x69\x69\x31\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69\x31\x30\x30\x38\x38\x61\x66\x69"
+"\x69\x31\x30\x30\x38\x39\x61\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31\x61\x66\x69\x69\x31\x30\x30\x39"
+"\x32\x61\x66\x69\x69\x31\x30\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31\x30\x30\x39\x35\x61\x66\x69\x69"
+"\x31\x30\x30\x39\x36\x61\x66\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61\x66\x69\x69\x31\x30\x30\x39\x39"
+"\x61\x66\x69\x69\x31\x30\x31\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30\x31\x30\x32\x61\x66\x69\x69\x31"
+"\x30\x31\x30\x33\x61\x66\x69\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66\x69\x69\x31\x30\x31\x30\x36\x61"
+"\x66\x69\x69\x31\x30\x31\x30\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31\x30\x39\x61\x66\x69\x69\x31\x30"
+"\x31\x31\x30\x61\x66\x69\x69\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69\x69\x31\x30\x38\x34\x36\x61\x66"
+"\x69\x69\x36\x31\x32\x34\x38\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35\x32\x61\x6c\x70\x68\x61\x61\x6c"
+"\x70\x68\x61\x74\x6f\x6e\x6f\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x61\x6e\x67\x6c\x65\x72\x69\x67"
+"\x68\x74\x61\x6f\x67\x6f\x6e\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x61\x72"
+"\x72\x6f\x77\x62\x6f\x74\x68\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x72\x69"
+"\x67\x68\x74\x61\x72\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x62\x73\x65\x62"
+"\x65\x74\x61\x63\x61\x63\x75\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x63\x64\x6f\x74\x61\x63"
+"\x63\x65\x6e\x74\x63\x68\x69\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75\x62\x64\x63\x61\x72\x6f\x6e\x64"
+"\x63\x72\x6f\x61\x74\x64\x65\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x65\x62"
+"\x72\x65\x76\x65\x65\x63\x61\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d\x65\x6e\x74\x65\x6d\x61\x63\x72"
+"\x6f\x6e\x65\x6e\x67\x65\x6f\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x65"
+"\x71\x75\x69\x76\x61\x6c\x65\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74\x61\x74\x6f\x6e\x6f\x73\x65\x78"
+"\x63\x6c\x61\x6d\x64\x62\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65\x66\x72\x61\x6e\x63\x67\x61\x6d"
+"\x6d\x61\x67\x62\x72\x65\x76\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x67"
+"\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61\x72\x68\x63\x69\x72\x63\x75\x6d"
+"\x66\x6c\x65\x78\x68\x65\x61\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d\x61\x63\x72\x6f\x6e\x69\x6e\x66"
+"\x69\x6e\x69\x74\x79\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69\x6e\x74\x65\x67\x72\x61\x6c\x74"
+"\x70\x69\x6e\x74\x65\x72\x73\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x69\x6f\x67\x6f\x6e\x65\x6b"
+"\x69\x6f\x74\x61\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f"
+"\x73\x69\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x6b\x61\x70\x70\x61"
+"\x6b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63\x6c\x61\x63\x75\x74\x65\x6c\x61"
+"\x6d\x62\x64\x61\x6c\x63\x61\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64\x6f\x74\x6c\x65\x73\x73\x65\x71"
+"\x75\x61\x6c\x6c\x69\x72\x61\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74"
+"\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70\x6f\x73\x74\x72\x6f\x70\x68\x65"
+"\x6e\x63\x61\x72\x6f\x6e\x6e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x6e\x6f\x74\x65"
+"\x71\x75\x61\x6c\x6e\x75\x6f\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x6f\x6d\x61\x63\x72\x6f\x6e"
+"\x6f\x6d\x65\x67\x61\x6f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e"
+"\x6f\x73\x6f\x72\x74\x68\x6f\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70\x61\x72\x74\x69\x61\x6c\x64\x69"
+"\x66\x66\x70\x65\x73\x65\x74\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62\x73\x65\x74"
+"\x70\x72\x6f\x70\x65\x72\x73\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65\x76\x65\x72\x73\x65\x64\x72\x61"
+"\x63\x75\x74\x65\x72\x61\x64\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x72\x65\x76"
+"\x6c\x6f\x67\x69\x63\x61\x6c\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69\x6c\x6c\x61\x73\x63\x69\x72\x63"
+"\x75\x6d\x66\x6c\x65\x78\x73\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64\x73\x69\x67\x6d\x61\x73\x6d\x69"
+"\x6c\x65\x66\x61\x63\x65\x73\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74\x61\x75\x74\x62\x61\x72\x74\x63"
+"\x61\x72\x6f\x6e\x74\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e\x6f\x73\x75\x62\x72\x65\x76\x65"
+"\x75\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65\x72\x73\x63\x6f\x72\x65\x64\x62"
+"\x6c\x75\x6e\x69\x30\x30\x41\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e\x69\x30\x32\x31\x42\x75\x6e\x69"
+"\x30\x32\x43\x39\x75\x6e\x69\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41\x39\x75\x6e\x69\x30\x33\x42\x43"
+"\x75\x6e\x69\x30\x33\x43\x32\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69\x30\x34\x35\x30\x75\x6e\x69\x30"
+"\x34\x35\x44\x75\x6e\x69\x30\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36\x75\x6e\x69\x30\x34\x39\x37\x75"
+"\x6e\x69\x30\x34\x39\x38\x75\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30\x34\x39\x42\x75\x6e\x69\x30\x34"
+"\x39\x43\x75\x6e\x69\x30\x34\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75\x6e\x69\x30\x34\x41\x32\x75\x6e"
+"\x69\x30\x34\x41\x33\x75\x6e\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34\x41\x45\x75\x6e\x69\x30\x34\x41"
+"\x46\x75\x6e\x69\x30\x34\x42\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e\x69\x30\x34\x42\x33\x75\x6e\x69"
+"\x30\x34\x42\x36\x75\x6e\x69\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42\x39\x75\x6e\x69\x30\x34\x42\x41"
+"\x75\x6e\x69\x30\x34\x42\x42\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69\x30\x34\x43\x43\x75\x6e\x69\x30"
+"\x34\x44\x38\x75\x6e\x69\x30\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38\x75\x6e\x69\x30\x34\x45\x39\x75"
+"\x6e\x69\x30\x34\x45\x45\x75\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32\x30\x41\x46\x75\x6e\x69\x32\x31"
+"\x32\x36\x75\x6e\x69\x32\x32\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75\x6e\x69\x32\x32\x32\x38\x75\x6e"
+"\x69\x32\x32\x39\x35\x75\x6e\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x75\x6f\x67\x6f\x6e\x65"
+"\x6b\x75\x70\x73\x69\x6c\x6f\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69"
+"\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75\x72\x69\x6e\x67\x75\x74\x69\x6c"
+"\x64\x65\x77\x61\x63\x75\x74\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72\x65\x73\x69\x73\x77\x67\x72\x61"
+"\x76\x65\x78\x69\x79\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63\x75\x74\x65\x7a\x64\x6f\x74\x61"
+"\x63\x63\x65\x6e\x74\x7a\x65\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32"
+"\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d"
+"\x65\x6e\x74\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32"
+"\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d"
+"\x65\x6e\x74\x4e\x69\x6d\x62\x75\x73\x20\x52\x6f\x6d\x61\x6e\x20\x49\x74\x61\x6c\x69\x63\x4e\x69\x6d\x62\x75\x73\x20\x52\x6f\x6d"
+"\x61\x6e\x00\xdd\x02\x00\x01\x00\x06\x00\x0b\x00\x10\x00\x13\x00\x1b\x00\x20\x00\x67\x00\xf3\x01\x45\x01\x4a\x01\x53\x01\x80\x01"
+"\x8d\x01\x94\x01\x9a\x01\xa1\x01\xb8\x02\x43\x02\x86\x02\x9b\x02\xa6\x02\xaf\x02\xb8\x02\xbd\x02\xcb\x02\xd0\x03\x4c\x03\xb9\x04"
+"\x02\x04\x0a\x04\x24\x04\x40\x04\x55\x04\x62\x04\x74\x04\x81\x04\x8b\x04\x95\x04\x9d\x04\xa2\x04\xaa\x04\xb0\x04\xba\x04\xc1\x04"
+"\xc8\x04\xd0\x05\x27\x05\x39\x05\x7a\x05\xb5\x05\xc0\x05\xc6\x05\xca\x05\xdb\x05\xed\x05\xfc\x06\x05\x06\x18\x06\x24\x06\x32\x06"
+"\x42\x06\x4e\x06\x57\x06\x68\x06\x70\x06\x7a\x06\x84\x06\x93\x06\x9c\x06\xa3\x06\xac\x06\xb9\x06\xc1\x06\xc9\x06\xd4\x06\xdf\x07"
+"\x8b\x08\x35\x08\x89\x09\x22\x09\xaa\x0a\x28\x0a\x9a\x0a\xf6\x0a\xfd\x0b\x68\x0b\x9e\x0b\xcb\x0c\x22\x0c\x6c\x0c\xca\x0c\xe1\x0d"
+"\x39\x0d\x60\x0d\xb3\x0d\xdc\x0e\x28\x0e\x34\x0e\x77\x0e\xa3\x0e\xe8\x0f\x28\x0f\x65\x0f\xa3\x0f\xc0\x0f\xf5\x10\x25\x10\x50\x10"
+"\x5d\x10\x8a\x10\xa0\x10\xca\x10\xf0\x11\x10\x11\x1a\x11\x41\x11\x67\x11\x8a\x11\xa0\x11\xa6\x11\xb9\x11\xdb\x11\xfb\x12\x1c\x12"
+"\x3d\x12\x45\x12\x65\x12\x85\x12\xa4\x12\xaf\x12\xcd\x12\xe1\x12\xef\x13\x0a\x13\x26\x13\x29\x13\x42\x13\x4b\x13\x50\x13\x5a\x13"
+"\x72\x13\x76\x13\x8f\x13\xa7\x13\xb1\x13\xbe\x13\xd6\x13\xe8\x13\xfe\x14\x14\x14\x28\x14\x3e\x14\x51\x14\x64\x14\x78\x14\x8c\x14"
+"\xa0\x14\xb4\x14\xbd\x14\xd0\x14\xd8\x14\xeb\x14\xf7\x15\x09\x15\x1b\x15\x2d\x15\x3f\x15\x51\x15\x63\x15\x74\x15\x85\x15\x96\x15"
+"\xa7\x15\xb6\x15\xc5\x15\xd4\x15\xe2\x15\xf2\x16\x02\x16\x10\x16\x20\x16\x2e\x16\x36\x16\x45\x16\x52\x16\x60\x16\x6e\x16\x7c\x16"
+"\x8a\x16\x98\x16\xa6\x16\xb4\x16\xc0\x16\xc4\x16\xd1\x16\xde\x16\xeb\x16\xf0\x16\xfd\x17\x0a\x17\x0f\x17\x1c\x17\x29\x17\x34\x17"
+"\x40\x17\x4c\x17\x58\x17\x64\x17\x6e\x17\x79\x17\x84\x17\x8f\x17\x9a\x17\xa5\x17\xb0\x17\xbb\x17\xc6\x17\xd1\x17\xdc\x17\xe7\x17"
+"\xed\x19\x86\x79\x05\x0b\x1b\x90\x9d\x05\x0b\x06\x86\x79\x05\x0b\x81\x1d\x0e\x15\x6f\x75\x76\x70\x5b\x1d\x0b\x06\x87\x79\x05\x0b"
+"\xf8\xc8\x9b\x15\x52\x90\x85\x93\x7e\xd4\x2d\xf8\xca\x18\x71\x06\xfb\xb6\xfc\x88\x3c\xfb\x19\x81\x80\x63\x83\x19\x7b\xf7\x4f\x9b"
+"\x07\x58\x90\x83\x90\xa4\x1a\x9e\x8e\x94\x9c\xad\x1e\xc4\xf7\x05\x05\xf7\x70\x06\xc7\x1d\xf7\x8a\x07\xfc\x19\xf7\x9a\x15\xf7\x2a"
+"\xf7\x98\xb7\xfb\x98\x05\x0b\xf9\x0e\xf9\x21\x15\xfc\x85\x7b\x06\xc9\x85\x9a\x83\x70\x1a\x7f\x85\x6a\x86\x78\x1e\xfb\x0f\xfc\x4e"
+"\x7a\x52\x83\x84\x53\x81\x19\x7b\xf8\x8f\x07\xc9\xf7\x36\x7b\x93\x5c\x4a\x71\x72\x60\x77\x19\x7a\x66\x47\x81\x3f\x1b\x53\x74\x95"
+"\xa3\x97\x97\xba\xa3\xe2\x1f\xab\xf7\x07\x05\x8a\x9b\x9a\x8a\x9b\x1b\xb9\x8a\xa7\x8a\xa3\x86\x92\x85\x19\x94\x84\x8d\x84\x77\x1a"
+"\x79\x89\x7f\x86\x75\x1e\x9f\x86\xcf\xf7\x7c\x79\x8f\x65\x36\x81\x84\x31\x88\x19\x7f\x6b\x8a\x8a\x68\x1f\xcd\xf7\x7d\x05\xa2\x91"
+"\x95\x8e\xc5\x1b\xf7\x30\xae\x7e\x4f\x7e\x8a\x7c\x8a\x7a\x1f\xa0\x89\x05\x0b\xf7\xfa\xf7\x01\x15\x50\x43\x6c\x7b\x5f\x1b\x53\x66"
+"\xaf\xc2\x9a\x8d\x99\x93\xab\x1f\xa7\x8f\x05\xf7\x2a\xa0\xf5\xd7\xe1\x1a\xb5\x6d\xa5\x59\xfb\x24\xfb\x31\xfb\x38\xfb\x2b\x3a\xc1"
+"\x53\xd9\xd2\xd8\xb4\xce\xc6\x1e\xfb\x6e\xf7\x2f\x15\xe4\xad\xd5\xd8\xbe\x1b\xa0\x99\x7c\x73\x6c\x78\x67\x6c\x6d\x1f\x66\x68\x65"
+"\x79\x35\x76\x08\x0b\x15\xfb\xc1\x46\x1d\x78\x1d\xfb\x00\x7c\x48\xea\x1d\x0b\x9c\x1d\xd7\x1a\xde\x51\xc4\x36\x1e\x7f\x76\x15\xb6"
+"\xa7\x66\x52\x41\x6b\x28\x5e\x4a\x1f\x56\x66\x65\x72\x60\x1b\x5c\x6c\xaf\xc2\xd5\xa8\xe3\xbc\xd2\x1f\xc4\xb2\xb5\xa8\xb6\x1b\x0b"
+"\x83\x16\xf7\x88\x9b\x06\xae\x1d\xfb\x8b\xab\x1d\x0b\x8c\x8d\x8e\x90\x1f\x8f\x0b\x9d\x05\xfb\xa0\x06\x0b\xf7\x72\xf7\x06\x7f\x1d"
+"\x0b\x15\xdf\xba\xb9\xc3\xc3\x1a\xb3\x72\xaa\x6a\x6e\x75\x77\x71\x78\x38\x1d\x70\x56\x68\x1e\x0e\x9a\xf8\x24\x15\x8e\x97\x93\x8c"
+"\x96\x1b\xb4\x9e\x7b\x55\x9f\x1f\xa6\x41\xbf\xfb\x6a\x65\x1a\x7b\x84\x7b\x7d\x78\x1e\x6f\x66\x74\x6f\x7f\x7e\x08\x75\x76\x80\x83"
+"\x7e\x1b\x84\x85\x8e\x93\x80\x1f\x97\x7c\x81\x90\x7f\x1b\x75\x7a\x7a\x75\x71\xa0\x79\xa9\xcb\xf7\x16\xf7\x29\xf7\x5b\xf7\x01\x1f"
+"\xcf\xf7\x0f\xa7\xd3\xbc\x1a\xa9\x72\xa4\x6d\x74\x7b\x7c\x75\x7b\x93\x81\x9f\x7e\x1e\x9e\x80\x92\x82\x7d\x1a\x63\x67\x3e\x35\xfb"
+"\x22\x1e\x77\xf7\x08\x05\xe4\x7c\x53\xf7\x38\x7c\x1b\x87\x06\x8a\x89\x88\x8b\x87\x1b\x83\x8a\x66\x85\x56\x81\x86\x8a\x7e\x88\x7d"
+"\x89\x08\x0b\xf8\x60\xf7\x09\x15\x47\x55\x7f\x80\x7b\x1b\x82\x84\x92\x94\x93\x8f\x9e\x95\xaf\x1f\xc4\xf7\x62\x05\x90\xa0\x8f\xa1"
+"\x99\x1a\xb0\xf7\x04\x1d\xce\xf7\x6e\x8a\x1d\x7f\x85\x6a\x83\x6c\x1f\x5f\xfb\x39\x05\x7e\x57\x88\x7e\x81\x1a\x65\x99\x7b\xac\xb8"
+"\xa4\x9f\xe8\xd1\x1e\x0b\x37\x1d\xc3\xc3\x1a\xb3\x72\xaa\x6a\x6e\x75\x77\x71\x78\x38\x1d\x70\x56\x68\x1e\x0e\x1b\x90\x9d\x05\xfb"
+"\xa4\x06\x86\x79\x05\x0b\x8d\x8e\x82\x1f\x7b\x91\x81\x99\x0b\xa5\xa3\xa9\xaa\x71\xa5\x6d\x1f\x0b\x15\xe0\xba\xb8\x0b\x91\x81\x9e"
+"\x7a\x1e\x9a\x7d\x90\x83\x81\x1a\x70\x75\x0b\xf8\x6c\x6d\x1d\x0b\xf8\xcb\x9b\x15\x5f\x8e\x77\x9c\x78\xbf\x2e\xf7\x89\x18\xd8\x9c"
+"\xac\x99\xaf\xab\x08\xac\xa8\x9d\xb2\xb8\x1a\xe8\x41\xbe\xfb\x1a\x1e\xfb\x8c\x7b\x06\xb5\x85\x90\x8a\x95\x84\x08\x93\x86\x91\x7f"
+"\x80\x1a\x7f\x86\x73\x84\x70\x1e\xfb\x0f\xfc\x4e\x79\x50\x84\x85\x53\x82\x19\x7b\xf7\x88\x9b\x07\x4d\x93\x85\x8f\xae\x1a\x95\x8d"
+"\x95\x95\xb0\x1e\xc3\xf7\x65\xcc\x86\xf7\x0f\xfb\xd8\x05\xf7\x28\x06\xfb\x97\xf8\xe7\x15\xa0\x91\x98\x92\xab\x1b\xde\xb4\x66\x3f"
+"\x29\x4b\x58\xfb\x11\x79\x83\x8c\x8f\x72\x1f\x0b\xbc\xf7\xbd\x15\xbc\xa2\xb1\xb8\x9f\x1b\x93\x91\x84\x80\x84\x89\x84\x86\x77\x1f"
+"\x60\xfb\x36\x05\x83\x6e\x87\x70\x75\x1a\x4c\xbc\x5d\xce\xd0\xcd\xbd\xde\xb5\x1e\xad\xcf\xa4\xee\xd1\x1a\xbc\x74\xae\x69\x73\x77"
+"\x77\x71\x7a\x90\x80\x9e\x6f\x1e\xa4\x68\x92\x78\x6e\x1a\x63\x78\x50\x6d\x58\x1e\x50\x68\x5d\x68\x61\x1b\x68\x74\xa9\xb7\x9f\x92"
+"\xb3\x96\xb5\x1f\xb3\xf7\x28\x05\x8e\x97\x8f\xa5\x96\x1a\xab\x77\xa3\x70\x5b\x58\x5a\x31\x5f\x1e\x0b\xf7\xf2\xf5\x15\x50\x54\x64"
+"\x75\x5a\x1b\x52\x69\xb5\xd3\xe0\xae\xe5\xc3\xc5\x1f\xa9\xa8\xb3\x9d\xb3\x1b\xa2\x99\x83\x7f\x86\x89\x86\x87\x82\x1f\x84\x7e\x89"
+"\x85\x81\x1a\x73\x9a\x7d\xa3\xa7\x9f\x9e\xa6\xba\x5f\xad\x4e\xfb\x2a\xfb\x20\xfb\x26\xfb\x30\x2c\xc1\x54\xe8\xd6\xc0\xa9\xd8\xc8"
+"\x1e\x0b\x84\x1d\xad\xa7\xec\xcc\x1e\x0b\x15\x4c\x72\x5b\x67\x4d\x1b\x4b\x64\xaf\xca\x86\x1f\x6e\x06\xfb\x00\x8c\xb4\x59\xe3\x1b"
+"\xc1\xb9\x5a\x1d\x05\xd4\x9e\x9d\x99\xd4\x34\x1d\xa3\x98\x8a\x87\x94\x1f\x9b\x85\x95\x7d\x7b\x1a\x7e\x89\x7e\x87\x7d\x55\x1d\x0b"
+"\x37\x1d\xc2\xc4\x1a\xb3\x72\xaa\x6a\x6e\x75\x77\x71\x78\x38\x1d\x71\x56\x67\x1e\x0e\x7c\x1b\x77\x7c\x7c\x78\x7f\x91\x81\x98\x81"
+"\x1f\x0e\x6f\x75\x76\x70\x70\xa2\x74\xa7\xa6\xa1\xa0\xa6\xa6\x74\xa2\x70\x1f\x0b\x1f\x86\x83\x8a\x86\x83\x1a\x73\x9a\x7b\xa1\xa2"
+"\x0b\x1b\xd1\xbc\xaf\xbd\xb5\x6b\xa5\x59\x0b\x3b\x06\xa7\xf2\x05\x8c\x8d\x8b\x8d\x0b\x06\x80\x58\x05\xf7\xc1\x06\x0e\x8a\x89\x82"
+"\x1f\x0e\x08\x91\x88\x8f\x83\x83\x1a\x0b\x7a\x4e\x8a\x20\x1d\x0b\x1b\xa6\x9e\x79\x71\x71\x78\x7c\x69\x0b\x1e\xf7\x0e\xf8\x5d\x05"
+"\x0b\x79\x05\xc2\x8a\x9c\x81\x0b\x1a\x80\x89\x7c\x87\x7d\x1e\x0b\xf8\xd2\xf8\x8d\x15\x20\xfc\x24\x79\x46\x78\x7a\x4e\xf3\x1d\x05"
+"\x54\x8c\x7a\x96\xaa\x1a\x96\x8d\x97\x8f\x9b\x1e\xf7\x0f\xf8\x5d\x05\xd3\x9d\x9e\x9a\xd4\x21\x1d\xfb\xa4\x06\x86\x67\x1d\x78\x1a"
+"\x85\x8b\x87\x89\x81\x1e\xfc\x13\xfc\x2f\xf3\xf8\x18\x05\xd4\x9e\x9d\x99\xd4\x21\x1d\xfb\xa4\x66\x1d\x7c\x87\x7f\x9d\x1d\x9c\x1a"
+"\x96\x8d\x97\x8e\x98\x1e\x0b\xa0\x1d\x43\xfb\xa7\x89\x82\x8a\x87\x93\x1d\xe3\xf7\xe1\x05\xdf\x06\x0b\xf9\x0d\xf9\x21\x15\xfc\xa8"
+"\x06\x61\xfb\x2e\x9d\x87\xc0\xf7\x00\xac\x9c\xf7\x2c\x89\x19\xfb\x24\xfc\xa4\x64\x1d\xf7\xb6\x9b\x07\x35\x92\x87\x8d\xb0\x1a\x97"
+"\x8d\x95\x95\xaf\x1e\xf7\x1f\xf8\x86\x05\xc2\x06\xd3\xab\x72\x53\x7e\x8a\x7c\x89\x7a\x1f\x9c\x89\x05\x0b\x79\x51\x84\x85\x53\x81"
+"\x19\x7b\xf7\x8a\x9b\x07\x4f\x93\x80\x92\xa8\x1a\x92\x8c\x93\x8d\x92\x1e\xcd\xf7\x88\x05\xf7\xb1\x06\x4a\xfb\x80\x7b\x57\x77\x7c"
+"\x4a\x84\x19\x7b\xf7\xa5\x9b\x07\x4a\x91\x7e\x93\xa8\x1a\x94\x8c\x91\x8d\x93\x1e\x0b\x15\x6a\x80\x7e\x8e\x1d\xaf\xcf\x99\x1f\x0e"
+"\x98\x1d\xf7\x46\xb9\x1d\x88\x1d\xb9\x0b\x1e\xfb\x0e\xfc\x5e\x7a\x47\x77\x79\x4e\x8a\x20\x1d\xf7\x97\x06\x0b\x15\xae\x06\xf7\x3f"
+"\xf5\x05\x97\x92\x90\x94\x97\x1a\xa0\x7b\x9a\xd6\x1d\x8d\x95\x4a\x1d\x76\x79\x8f\x96\x6e\x1f\x7a\x6e\x05\x7b\x0b\xf1\x1d\xfb\xa3"
+"\x06\x86\x4c\x1d\x0b\x16\x72\x77\x78\x73\x72\xa0\x76\xa4\xa4\x9e\x9e\xa3\xa4\x76\xa0\x73\x1f\x0e\xa3\xb7\xac\x1f\x9f\xa6\x94\xa0"
+"\x94\xb5\x08\x0e\x6f\xa0\x75\xa7\xa6\xa1\xa1\xa6\xa4\x74\xa3\x72\x1f\x0b\xf7\x01\x1d\xa2\xad\x7c\xb8\x1b\xc0\xba\xa3\xb7\xac\x1f"
+"\x9f\x0b\xbf\xd4\xb4\x7e\xa0\x56\xba\x1e\x72\xa1\x15\x0b\x8d\x08\x48\x06\xd1\xf7\x97\x05\x0b\x15\xae\x06\xf7\x3f\xf5\x05\x97\x92"
+"\x90\x94\x97\x1a\x9f\x7b\x9b\x0b\x4e\x8a\x20\x1d\xf7\x93\x06\x0b\x58\x62\x4e\x6b\x97\x76\xb3\x67\x1e\x0b\x69\x73\x08\x69\x5c\x4c"
+"\x78\x47\x1b\x0b\x06\x7b\x83\x81\x85\x77\x1b\x82\x80\x8d\x90\x76\x1f\x96\x0b\x7b\x56\x73\x7b\x49\x86\x19\x7b\x0b\x81\x83\x88\x84"
+"\x85\x1e\x0b\x06\x86\x4c\x1d\x6a\x1a\x81\x89\x0b\x79\x05\xa7\x92\x8a\x87\x96\x1f\x9b\x86\x95\x7c\x0b\x1f\x7b\x91\x81\x99\x9c\x1a"
+"\x0b\xf9\x21\x15\xfb\x5b\x7b\x06\x0b\x81\x82\x1b\x83\x83\x92\x93\x95\x8e\x9b\x0b\x1f\xa8\x06\xab\x95\x9b\x9a\xa4\x1b\x9c\x0b\xf9"
+"\x2d\x15\x92\xa6\x05\xfb\xaa\x06\x84\x70\x05\x97\x06\xb9\x9c\x80\x6b\x80\x8a\x83\x86\x7a\x1f\x27\x87\x51\x7d\x50\x68\x08\x2e\x55"
+"\x4b\xfb\x00\x23\x1a\x4a\xa7\x58\xbf\x6e\x1e\xb5\x73\xb9\x82\xd9\x8a\x88\x7e\x18\x7b\x50\x74\x79\x4f\x8a\x08\x80\x06\x84\x70\x05"
+"\xf7\xaa\x06\x92\xa6\x05\x80\x06\x5c\x79\x96\xab\x96\x8b\x8c\x91\xa2\x1f\x8e\x98\xf7\x12\x94\xc4\x9c\xcb\xbb\x19\xda\xc6\xbf\xf0"
+"\xed\x1a\xc6\x71\xba\x5d\xa5\x1e\x63\xa1\x5b\x94\x32\x8e\x08\xc5\x97\xa5\xa0\xc7\x1b\xfb\xd1\xfc\xb6\x15\x5f\x8d\x78\x90\x71\x97"
+"\x08\x5e\xa1\x79\xab\xc4\x1a\xe7\xb3\xef\xc3\xbe\x1e\xb7\xb1\xbe\x9e\xd5\x92\x08\xee\x8d\x15\xf5\x80\xba\x61\x37\x1a\x46\x6e\x36"
+"\x63\x57\x1e\x5b\x4e\x59\x73\x28\x80\x08\x0e\xf8\x29\x15\x4e\x06\x88\x86\x8d\x91\x83\x1f\x9d\x70\x6a\x95\x65\x1b\xfb\x03\x31\x3e"
+"\x2d\x57\xa0\x6d\xc5\x71\x1f\x50\x63\x79\x77\x73\x1a\x7e\x93\x7f\x9e\x7d\x1e\x28\x4a\x79\x77\x5d\x1a\x46\xcd\x5e\xf0\xf7\x12\xdf"
+"\xc6\xe2\xca\x5c\xb6\x2b\xa5\x1e\x5f\x96\x71\x9b\x9a\x1a\x9a\xa2\xa5\x98\x8d\x8d\x8b\x8a\x8e\x1e\x89\x94\x96\x8a\x96\x1b\xe7\xe8"
+"\xdc\xd9\x9c\x88\x9c\x85\xa1\x1f\xbd\x06\xfb\xd8\xfb\xe6\x15\x8c\x8d\x8a\x8a\x8d\x1f\x8e\x8a\x95\x88\x9b\x86\x08\xf6\x69\xaf\x70"
+"\x5d\x1a\x55\x51\x63\x3e\x3b\x5c\xb1\xcb\xa3\x91\x9c\x9b\x9e\x1e\x9d\x99\xb4\xab\x93\x1b\xf7\x28\xf8\x1b\x15\xb0\x9e\x73\x5c\x67"
+"\x7f\x60\x78\x69\x1f\x62\x75\x6c\x75\x69\x1b\x65\x75\xa7\xba\xe7\xc4\xdb\xcc\x1f\x0b\x15\xf7\xa1\x06\x4f\xfb\x75\x79\x45\x78\x7b"
+"\x49\x8a\x20\x1d\xf7\x9e\x06\x90\x9d\x05\x73\x7d\x35\x1d\x9c\x1a\x98\x8d\x97\x8f\x9a\x4b\x1d\xd3\x9e\x9d\x9a\xd0\x1b\x90\x2e\x1d"
+"\x86\x79\x05\xc0\x9e\x80\x6d\x7e\x89\x7e\x87\x7d\x1f\x57\xfb\x58\x05\xfb\xa1\x06\xbe\xf7\x52\x3f\x1d\x90\x9d\x05\x73\x7e\x35\x1d"
+"\x9b\x1a\x95\x8d\x9b\x8f\x9a\x1e\x0e\xf9\x66\xf9\x21\x15\xfb\x72\x7b\x06\x97\x8a\x94\x8a\x91\x8a\x97\x8a\x95\x89\x91\x87\x08\x8e"
+"\x89\x8e\x86\x86\x1a\x73\x54\x55\x32\x4d\x1e\xfb\x2c\x21\xc0\xf7\x56\x9a\xbd\xa6\x9f\xc6\x8f\x19\x9b\xfb\xa5\x7b\x07\xca\x85\x99"
+"\x83\x6e\x1a\x7c\x88\x77\x83\x70\x1e\xfb\x0f\xfc\x4e\x79\x4f\x86\x86\x50\x82\x19\x7b\xf7\x8c\x9b\x07\x4c\x92\x82\x91\xaa\x1a\x96"
+"\x8c\x92\x92\xa0\x1e\x8d\x91\x8d\x92\x8d\x93\xc9\xf7\x78\x18\xf7\x0d\xfb\x64\x05\xa3\x62\x99\x68\x78\x1a\x7c\x7d\x83\x6b\x88\x1e"
+"\x86\x80\x8a\x89\x7e\x1f\x7b\xf7\xa7\x9b\x07\x4c\x91\x85\x8e\x6f\xba\xfb\x42\xf7\xc3\x18\xf7\xc0\xf7\x76\xa7\xa0\xa2\x96\xa3\x8f"
+"\x19\x0b\xf8\x40\xf8\xbe\x15\x69\x06\x54\xfb\x06\x05\x8c\x83\x87\x8b\x83\x1b\xfb\x21\xfb\x2a\xfb\x34\xfb\x2b\x64\x98\x67\xa3\x72"
+"\x1f\x9a\x7b\x98\x83\xaa\x81\x4b\xfb\x17\x18\xae\x06\xc8\xf7\x12\x05\x8a\x91\x91\x8a\x93\x1b\xc9\xc7\xa6\xbf\xc4\x1f\xd1\xcc\xb7"
+"\xe4\xd6\x1a\xa7\x83\xab\x7e\xa1\x1e\x79\xa9\x78\x99\x62\x97\x08\xfb\x7a\xfc\x2a\x15\x78\x9e\x82\xa0\xa7\x1a\xea\xb8\xf7\x04\xcd"
+"\xd1\x1e\xa8\xa6\xae\x9c\xac\x1b\x8e\x8d\x8a\x8a\x90\x1f\xa8\x7f\x15\x9e\x76\x94\x72\x68\x1a\x41\x6b\x28\x5e\x4a\x1e\x56\x66\x66"
+"\x73\x5e\x1b\x82\x86\x8c\x8e\x83\x1f\x0b\xf8\x65\xf7\x09\x15\x48\x55\x7f\x7f\x7b\x1b\x82\x84\x93\x95\x96\x9b\xc9\x9c\xbf\x1f\xa8"
+"\xe8\x9e\xd6\xa4\x1a\xb3\x70\xa6\x64\x4a\x44\x4a\xfb\x26\x2e\x1e\xf7\x0c\xf8\x54\x86\x90\x4f\x7d\x64\x85\x51\x84\x19\x7b\x07\xa5"
+"\x8c\x05\xa2\x8c\x9d\x80\x7c\x1a\x7d\x86\x73\x82\x6e\x1e\x8a\x89\x87\x7d\x86\x76\xfb\x1b\xfc\x94\x18\xd6\x06\xb3\xf7\x2e\x98\xad"
+"\xb3\xc8\x08\xda\xbf\xcf\xc9\xae\x1b\x9a\x98\x7f\x7e\x87\x88\x7e\x87\x7b\x1f\x54\xfb\x63\x05\x7e\x5a\x84\x6c\x7f\x1a\x71\x9c\x7b"
+"\xa7\xbd\xae\xa6\xe2\xc7\x1e\x0e\xf8\x32\xf7\x01\x15\x4d\x67\x85\x85\x79\x1b\x76\x76\xac\xeb\x64\x1f\x86\x98\x7c\xaf\x7a\xb2\xf7"
+"\x28\xf7\x17\xa8\x9f\xbb\x8e\x08\x9b\xfb\x4b\x7b\x07\xb6\x8a\x97\x87\x7e\x1a\x77\x59\x5b\x2e\x43\x1e\x7c\x80\x7d\x80\x7d\x80\xf7"
+"\x0c\xf8\x5d\x18\xe1\x1d\x8c\x9d\x84\x8c\x78\x89\x7a\x84\x70\x7e\x5d\x87\x7d\x88\x80\x89\x83\x89\x82\x18\xfb\x13\xfc\x77\x05\xd6"
+"\x06\xbb\xf7\x48\xb5\xab\x9b\x5f\xa5\x4d\x9d\x68\x19\x4c\xab\x9d\x78\xa8\x1b\xb3\xa4\xa4\xdf\xb9\x1f\x0b\xf8\x61\xf7\x09\x15\x49"
+"\x56\x7d\x7e\x7b\x1b\x84\x87\x91\x96\x91\x8b\x8b\x9e\xd3\x1f\xda\xf7\xbf\x05\x41\x06\x55\xfb\x28\x80\x73\x5e\x43\xf2\x1d\x9b\x8e"
+"\x8b\x8d\x8c\x8e\x1f\xe6\xf7\xff\x88\x8d\x50\x7d\x67\x85\x54\x84\x19\x7d\x07\xb1\x8d\x8a\x86\x94\x1f\x91\x89\x90\x82\x84\x1a\x83"
+"\x86\x72\x82\x69\x1e\x66\xfb\x22\x05\x78\x42\x85\x6b\xd4\x1d\xfb\x02\x7c\x4a\xea\x1d\x0b\xf7\x72\xf8\x51\x76\x1d\x0b\xf8\x08\xf7"
+"\xcb\x15\xf7\x38\xf7\x76\x05\xd5\xc0\xb9\xac\xbf\x1b\x91\x9d\x05\xfb\x73\x06\x85\x79\x05\x9c\x06\xac\x9e\x81\x79\x80\x86\x80\x7b"
+"\x74\x1f\xfb\x2b\xfb\x6a\x4c\xf7\x6a\x05\x84\xa1\x8a\x90\x92\x1a\xa6\xa0\x97\xb6\x1e\xa0\x06\x8f\x9d\x05\xfb\xae\x06\x85\x79\x05"
+"\xa0\x06\xb8\x8d\xa5\x75\x9b\xe9\x1d\x40\x8c\x19\x85\x79\x05\xf7\xb5\x06\x90\x9d\x05\x72\x7a\x8c\x8d\x82\x1f\x76\x90\x7f\x99\x9f"
+"\x1a\x97\x8d\x98\x8f\x9a\x1e\x0b\x15\x5a\x7f\x52\x81\x61\x89\x86\x78\x18\x8e\x9b\x93\x8c\x94\x1b\x9e\x93\x84\x79\x81\x89\x80\x86"
+"\x77\x1f\x51\xfb\x6d\x05\x82\x6a\x89\x7f\x79\x1a\x62\xa2\x6d\xab\xc6\xd8\xd1\xf7\x15\xdf\x1e\x6d\xfb\x01\x05\x85\x1d\x0b\x4b\x1d"
+"\x8b\x1d\xb5\x92\x8c\x94\x8c\x90\x1f\xb1\xf7\x21\x58\x1d\x6a\x1a\x81\x89\x7f\x87\x7c\x1e\x69\xfb\x12\x05\x86\x76\x89\x80\x7d\x1a"
+"\x4a\xbe\x67\xe8\xc1\xc1\x93\x9e\xce\x1e\x0b\xf8\x61\xf7\x09\x15\x49\x56\x7d\x7e\x7b\x1b\x84\x87\x91\x96\x91\x8b\x8b\x9e\xd3\x1f"
+"\xda\xf7\xbf\x05\x41\x06\x55\xfb\x28\x80\x72\x5e\x44\xf2\x1d\x9a\x8e\x8b\x8e\x8c\x8e\x1f\xe6\xf7\xff\x88\x8d\x51\x7d\x66\x85\x54"
+"\x84\x19\x7d\x07\xb3\x8a\x8b\x8b\x95\x86\x08\x90\x89\x90\x82\x84\x1a\x82\x86\x73\x82\x69\x1e\x66\xfb\x22\x05\x78\x41\x85\x6c\xd4"
+"\x1d\x0b\xf7\x16\xf9\x11\x15\xca\x85\x99\x83\x70\x1a\x7c\x87\x73\x84\x72\x1e\xfb\x0f\xfc\x4e\x79\x51\x84\x99\x1d\x06\xf7\x4b\x50"
+"\x15\xa1\x91\x9a\x92\xb3\x1b\xc4\xbd\x7e\x73\xab\x1f\xbc\x68\xa6\x4b\x3d\x1a\xfb\x02\x61\xfb\x03\x47\x47\x1e\x4f\x50\x3a\x6d\x23"
+"\x1b\x5d\x78\x96\xa5\x98\x90\x9f\x9c\xc9\x1f\x0b\xf7\x6e\xf8\x51\x15\x59\x7f\x53\x82\x62\x88\x86\x78\x18\x8e\x9b\x92\x8c\x94\x1b"
+"\x9e\x93\x84\x7a\x80\x89\x7f\x86\x78\x1f\x30\xfb\xe8\x05\xd3\x06\xc5\xf7\x6c\x05\x98\x8c\x91\x8c\x8b\x1a\x98\x96\x85\x80\x92\x1f"
+"\x93\x81\x8d\x85\x98\x5e\x08\xfb\x03\xac\xa7\x63\xb9\x1b\xb3\xad\xad\xec\xc4\x1f\x7b\x94\x05\x55\x69\x75\x78\x6f\x1b\x74\x81\x98"
+"\xc1\x7b\x1f\x77\xd4\x73\xab\x63\x92\x0b\x15\x86\xfb\x09\x82\x1d\xeb\xf7\x1e\x05\xf7\x48\xaf\x15\xfb\x2f\x06\xf7\x39\xf7\x80\x05"
+"\x0e\xb3\xf7\x5b\x05\x74\x06\x76\x7d\x82\x86\x75\x1b\x7e\x7f\x8e\x93\x76\x1f\x94\x76\x6a\x90\x6c\x1b\x23\x41\x46\x29\x55\x9a\x6e"
+"\xc7\x4b\x1f\x90\x87\x9c\x78\x9c\x78\x9b\x7a\x9a\x7b\x93\x82\x08\xba\x5a\x98\x71\x60\x1a\x40\x54\x51\x41\x37\x4d\xd2\xed\x92\x8b"
+"\x8f\x8d\x94\x1e\x77\x8d\x69\xfb\x73\x05\x9d\x06\xa2\x92\x96\x95\x9f\x1b\x96\x9a\x87\x82\xa5\x1f\x0b\xf8\x65\x15\xb0\xf7\x5b\x05"
+"\x76\x63\x1d\x5f\x63\x91\x6a\x1b\xfb\x6a\xfb\x54\xfb\x5c\xfb\x73\xfb\x2d\xf7\x00\xfb\x00\xf7\x2d\xf2\xdb\xb6\xf5\xe5\x94\x1d\x0b"
+"\xf8\x07\xf7\x03\x15\x4f\x42\x6b\x7b\x5f\x1b\x52\x66\xaf\xc2\x9b\x8d\x94\x94\xb1\x1f\xa7\x8f\x05\xf7\x2d\xa0\xf7\x00\xd9\xe2\x1a"
+"\xb5\x6d\xa5\x59\xfb\x27\xfb\x35\xfb\x3c\xfb\x2d\x3a\xc1\x53\xda\xd2\xda\xb4\xcf\xc7\x1e\xfb\x6f\xf7\x32\x15\xe5\xae\xd7\xd9\xbe"
+"\x1b\xa0\x99\x7c\x74\x6b\x78\x65\x6b\x6d\x1f\x65\x67\x65\x7a\x33\x75\x08\x0b\x15\x72\x6a\x85\x83\x81\x81\x08\x7a\x7a\x7c\x6a\x1d"
+"\x92\x9d\x1f\x90\x9d\x8c\x8d\x05\x8d\x07\x9e\x1d\x4f\x85\x6e\x77\x1a\x66\x9b\x77\xa9\xba\xaf\xa9\xdf\xc4\x1e\x0b\x1a\x7f\x89\x88"
+"\x6d\x65\x1e\xfc\x05\xfc\x65\x5b\x4f\x7f\x81\x73\x85\x19\x7b\xf7\x4f\x9b\x07\x56\x91\x80\x90\x9f\x1a\xa2\xb2\xc8\xc8\xd4\x1e\x8f"
+"\x8f\x95\x97\x96\x99\x08\xf7\x52\x06\x5a\xfb\x3e\x7f\x66\x84\x86\x4e\x85\x19\x7b\xf8\x86\x07\xcb\xf7\x38\x05\xfc\xe7\xf6\x15\xf7"
+"\xa0\xf7\xea\x2c\xfb\xea\x05\x0b\x24\x1d\xf7\x5c\x16\x6f\x75\x76\x70\x5b\x1d\x0b\x05\x4f\x88\x80\x7e\x5c\x1b\x74\x25\x1d\xf7\x9c"
+"\x06\x90\x9d\x05\x74\x06\x5a\x7c\x97\xb3\x90\x8b\x8b\x8c\xa8\x1f\xa2\xf8\xc2\x05\x7a\x06\xfc\x2a\xfc\xcf\x5c\x4c\x7c\x80\x68\x8c"
+"\x19\x80\x22\x1d\xf7\x5a\x06\x8f\x9d\x05\x78\x06\x6d\x7c\x94\x9d\x91\x8f\x95\x91\x94\x1f\x0b\xf7\xca\xf8\x50\x15\xfb\x14\xfb\x12"
+"\xfb\x23\xfb\x26\x28\xf7\x02\x1d\xc4\xb1\xdd\xdd\x1a\xec\x51\xd0\x3b\x1e\x82\x72\xb5\x1d\xd6\xa5\xe8\xb3\xc9\x1f\xbb\xa9\xb0\xa5"
+"\xb2\x1b\x0b\xf7\x0f\x15\x38\x4a\x83\x83\x75\x1b\x81\x86\x91\x97\x93\x8e\x98\x90\x9d\x1f\x8c\x8f\x8c\x8e\x8c\x1a\x8d\x07\xf7\x2b"
+"\xf8\xd7\x86\x90\x4f\x7d\x65\x85\x51\x84\x19\x7b\x07\xbb\x9f\x85\x7a\x87\x8a\x85\x89\x83\x1f\xfb\x1e\xfc\xa4\x05\x88\x81\x8a\x82"
+"\x84\x1a\x66\x9c\x78\xab\xbf\x0b\x87\x7a\x88\x79\x7e\x1a\x72\x99\x7a\xa1\xae\xb7\xae\xd3\xc4\x1e\x7d\x97\x05\x68\x6f\x76\x79\x7e"
+"\x1b\x83\x86\x93\x97\x92\x8c\x93\x8d\x92\x1f\xe3\xf7\xe5\x05\x43\x06\x75\x3d\x05\xfb\x24\x62\xfb\x05\xfb\x31\x4c\x1b\x7b\x82\x97"
+"\x9f\x93\x8c\x92\x8f\x99\x1f\x0b\xf7\x23\xfb\x8d\x05\x96\x78\x91\x7a\x7f\x1a\x76\x7b\x82\x5e\x87\x1e\x85\x79\x05\xf7\xa1\x06\x91"
+"\x9d\x4c\x8a\x6d\xa2\x59\xe5\x19\xfb\x21\xf7\x93\xf7\x9c\xf7\x6b\xb6\xac\xa4\x95\xb3\x8c\x19\x91\x9d\x05\xfb\x5d\x22\x1d\xb0\x8c"
+"\x98\x86\x7e\x1a\x0b\x91\xa3\x9a\x08\xab\xa0\x9d\xa9\xaf\x1a\xca\x57\xaf\x32\x52\x63\x7e\x70\x6e\x1e\x79\x79\x7f\x73\x77\x1a\x70"
+"\x9d\x77\xa3\xa1\x9f\x9d\x9f\x93\x86\x94\x82\x94\x1e\x80\x96\x89\x8f\x93\x1a\xa0\xae\x9b\xbb\xc2\xa9\x72\x5d\x4e\x58\x64\x3a\x1e"
+"\x79\x06\x0b\x1b\x7f\x85\x8f\x92\x8f\x8c\x8d\x8f\x90\x1f\x91\x93\x8d\x90\x93\x1a\xa0\x79\x9b\x74\x74\x7a\x79\x73\x67\xac\x72\x0b"
+"\xbf\x78\xb5\x67\xa6\x1f\x79\x98\x7c\x92\x68\x95\xc3\x99\xa4\x95\xa8\xa2\x08\xb5\xab\xa0\xb6\xbe\x1a\xe1\x49\xc4\x27\x68\x7c\x88"
+"\x7a\x59\x1e\x86\x7b\x82\x89\x84\x1b\x7c\x83\x94\x9d\x1f\x7b\x06\x64\xfb\x4e\x05\x0b\x88\x8d\x56\x80\x75\x87\x34\x7b\x19\x7b\x07"
+"\xbe\x8a\x98\x85\x77\x1a\x85\x8a\x85\x8a\x86\x1e\x2b\xfb\xf2\x05\xd6\x06\xba\xf7\x32\x94\xa1\xb7\xcf\x08\xe7\xc7\xbe\xbd\xb0\x1b"
+"\x9a\x94\x80\x79\x0b\xd4\x9e\x9d\x99\xd5\x21\x1d\xfb\xa5\x25\x1d\xa6\x93\x8a\x87\x96\x1f\x9b\x86\x95\x7c\x79\x1a\x80\x89\x7f\x87"
+"\x7c\x1e\x54\xfb\x65\x05\x7b\x57\x61\x84\x61\x1b\x4a\x6a\xa1\x0b\x96\x1d\xfc\x5f\x7a\x47\x78\x7a\x4d\x8a\x20\x1d\x0b\xf9\x5c\xf7"
+"\x27\x15\x54\x06\xda\xf7\x97\x05\x67\x06\xfb\xa3\xfb\x97\x7e\x61\x05\xf7\x3c\x06\x6b\x22\x05\xca\x06\xa9\xf3\x05\xc5\x06\x59\xf7"
+"\x79\x15\x4f\xfb\x4e\x05\xfb\x15\x06\x0b\xc9\x1d\x6f\x6e\x3e\x77\x6b\x1d\xa5\x83\x76\xbf\x1f\x81\xa5\x9d\x86\x98\x1b\xbb\xac\x0b"
+"\x05\xb5\x83\x79\x9b\x64\x1b\xfb\x16\xfb\x36\xfb\x50\xfb\x2a\x44\xb3\x60\xcc\xcf\xb7\xab\xef\xcf\x1f\x80\x58\x89\x7c\x74\x1a\x70"
+"\x9c\x79\xa4\xb5\xc0\xb4\xd4\xbe\x1e\x0b\x61\x1b\x7f\x83\x92\x94\x8f\x2d\x1d\x91\x8c\x8f\x91\x1a\xa0\x79\x9c\x76\x76\x7b\x79\x74"
+"\x68\xad\x71\xb8\xe4\xd0\xed\xf7\x4d\xb5\x1e\xd3\xf7\xd4\x05\x0b\x06\xbe\xf7\x52\x05\xd4\x9e\x9d\x99\xd4\x34\x1d\xc2\x8a\x9c\x81"
+"\x6b\x1a\x81\x89\x7b\x87\x7f\x1e\xfb\x0e\xfc\x5e\x7a\x47\x77\x0b\x9c\x1d\xd6\x1a\xdf\x51\xc4\x36\x1e\x0b\x88\x83\x19\x81\x6a\x84"
+"\x6c\x81\x1a\x76\xa0\x7b\xa6\xb9\xac\xa7\xe8\xca\x1e\x7e\x92\x05\x4c\x5a\x7b\x7b\x7b\x1b\x82\x85\x92\x98\x8c\x8b\x8b\x8c\x8f\x1f"
+"\x0b\x1f\x7a\x99\x05\x33\x31\x51\x6d\x39\x1b\xfb\x03\x4b\xd6\xf7\x16\xf7\x0b\xbb\xf7\x0d\xd9\xdc\x1f\xbc\xbb\xca\xa7\xcd\x1b\xe7"
+"\xbe\x55\xfb\x00\x95\x1f\x0b\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f"
+"\xf7\x5e\xfb\x37\xf7\x37\xfb\x5e\x1f\x0b\xf7\x21\xf8\x9d\x05\xd4\x9e\x9c\x99\xd5\x21\x1d\xfb\xa3\x06\x85\x79\x05\xc2\xda\x1d\x0b"
+"\xc8\x1d\x6d\x67\xd5\x1d\x15\x6b\x72\x73\x6d\x6b\xa5\x71\xab\xaa\xa4\xa3\xaa\xaa\x71\xa5\x6c\x1f\x0b\x85\x53\x81\x19\x7b\xf7\x91"
+"\x07\xf7\x09\xf6\xaa\xc3\xd8\x1f\xec\xd2\xc4\xf7\x02\xf7\x08\x1a\xf7\x38\xfb\x06\xf4\xfb\x46\x1e\xfb\xaa\x0b\x37\x1d\xc2\xc4\x1a"
+"\xb3\x72\xaa\x6a\x6e\x75\x77\x71\x79\x91\x80\x9e\x7a\x1e\x9a\x7d\x90\x83\x80\x1a\x71\x74\x6f\x57\x69\x1e\x0b\x1b\xf7\x07\xe2\xe1"
+"\xf7\x06\xcc\x75\xb1\x30\xe7\x1f\x31\xe6\x82\x99\xbc\x1a\xca\xb5\xb2\xce\xb2\xa9\x7e\x73\xa0\x1e\xa1\x72\x93\x0b\xf7\xd9\xf8\x4d"
+"\x15\x60\x64\x80\x75\x62\x1f\x24\x51\x43\xfb\x07\x21\x1a\x34\xc3\x56\xe6\xcd\xcb\xa8\xc5\xc5\x1e\xcd\xcc\xb3\xdf\x0b\x55\x1d\x90"
+"\x9d\x6f\xf4\x1d\x0b\xe3\xf7\xd6\x88\x8d\x25\x78\x78\x88\x64\x88\x19\x7b\x07\xc1\x8a\x94\x88\x77\x1a\x83\x88\x7a\x85\x78\x1e\x5b"
+"\xfb\x45\x05\x7b\x0b\x7a\x54\x75\x7c\x49\x86\x19\x7b\xf7\xb5\x9b\x07\x8d\x7b\x7f\x8c\x83\x1b\x7a\x8c\x7d\x8e\x81\x91\x08\x84\x8f"
+"\x86\x95\x99\x1a\x0b\x89\x8e\x85\x85\x88\x8a\x83\x85\x1e\x64\x59\x4d\x58\x6b\x82\x08\x72\x83\x84\x85\x80\x1a\x8a\x8b\x89\x8c\x88"
+"\x1e\xd5\x06\x0b\x67\x4e\x1b\x4b\x63\xb0\xc9\x87\x5c\x1d\x0b\x1a\x7c\x87\x79\x7e\x5c\x1e\xfb\x0a\xfc\x3d\x79\x4f\x84\x85\x52\x83"
+"\x19\x7b\xf7\x89\x9b\x07\x4c\x94\x86\x8e\xae\x1a\x0b\x6b\x1d\xa5\x83\x76\xbf\x1f\x81\xa5\x9d\x86\x98\x1b\xbb\xac\xaf\xcf\x99\x1f"
+"\x0e\x15\x55\x5e\x5e\x55\xc8\x1d\x6e\x66\x66\x6e\x6f\x65\x0b\xb5\xac\xa4\x95\xb3\x8c\x19\x91\x9d\x05\xfb\x5a\x22\x1d\xae\x8c\x98"
+"\x86\x7e\x1a\x83\x87\x86\x7a\x7d\x1e\x0b\xc2\xf7\x53\x9f\xd1\x9e\x9b\xcb\x8c\x19\x90\x9d\x05\xfb\x9b\x06\x86\x79\x05\xc3\x8a\x9c"
+"\x82\x6c\x1a\x80\x89\x0b\xaa\x1d\x0e\xaf\x1b\xb6\xae\x6d\x66\x6b\x6c\x5d\x4d\x4e\x1f\xfb\x19\xfb\x16\x05\x79\xf7\x7b\x07\xac\xda"
+"\x05\x0e\xbd\x1d\x7b\x69\xfb\x0f\x7e\x1e\x0b\xf8\x82\xb0\x1d\x0b\x7b\x07\xc6\x83\x96\x84\x6f\xc1\x1d\x0b\x15\xae\x06\xf7\x3f\xf5"
+"\x05\x97\x93\x90\x93\x97\x1a\x9f\x7b\x9b\x76\x82\x82\x87\x85\x84\x1e\x0e\x5f\x1d\xd6\x1d\x52\x92\x80\x91\xa7\x1a\x9f\x8d\x95\x94"
+"\xac\x1e\xf7\x0f\xf8\x4f\x9d\xc5\x92\x91\xc4\x95\x19\x9b\x0b\x15\xae\x06\xf7\x3f\xf5\x05\x97\x93\x90\x93\x97\x1a\x9f\x7b\x9b\x76"
+"\x82\x82\x87\x85\x85\x1e\x0b\x5f\x1d\x77\x81\x82\x87\x85\x85\x1e\x0b\x1a\x58\xb6\x60\xbf\xde\x1d\x6b\x1b\x67\x74\xa0\x0b\xf8\x83"
+"\xf7\x1a\x15\x50\x68\x70\x72\x6f\x1b\x76\x80\xa2\xb9\x91\x8b\x92\x8c\x95\x1f\xf7\x09\x0b\x06\xf7\x3f\xf5\x05\x97\x93\x90\x93\x97"
+"\x1a\xa0\x7b\x9a\x76\x65\x1d\x0b\x15\xae\x06\xf7\x3f\xf5\x05\x97\x93\x90\x93\x97\x1a\x9f\x7b\x9b\x76\x81\x83\x88\x84\x0b\x15\xb4"
+"\xa8\x61\x51\x4a\x73\x32\x68\x4a\x1f\x52\x6c\x66\x6e\x61\x1b\x5e\x6f\xb1\xca\x0b\x1e\xfb\x17\xfc\x5e\x78\x46\x78\x7a\x4c\x8a\x20"
+"\x1d\xf7\x9c\x06\x91\x9d\x05\x0b\xf8\xe0\xf7\x05\x15\x53\x4f\x64\x76\x60\x1b\x5c\x74\xad\xcf\xa1\x8c\x93\x92\xa9\x1f\x0b\x15\x6f"
+"\x74\x75\x70\x6e\xa3\x74\xa8\xa7\xa1\xa1\xa6\xa7\x73\xa3\x6f\x1f\x0e\x16\x6b\x72\x73\x6d\x6b\xa5\x71\xab\xaa\xa4\xa3\xaa\xaa\x71"
+"\xa5\x6c\x1f\x0e\x06\xcb\xa9\x83\x74\xa1\x1f\x9a\x7c\x95\x6c\x6a\x1a\x7d\x8a\x79\x8a\x77\x1e\x0b\x15\xae\x06\xf7\x3e\xf5\x05\x98"
+"\x93\x90\x93\x97\x1a\x9f\x7b\x9b\x76\x82\x82\x0b\x15\x4b\x72\x5a\x67\x4c\x1b\x4b\x62\xb0\xca\x86\x1f\x6e\x06\x8c\x51\x93\x6c\x0b"
+"\xf8\x56\x15\xbc\x06\xa4\xc2\x05\xa7\xc6\x9a\xba\xa3\x1a\xa3\x7f\x98\x75\x5b\x0b\x15\x67\x06\xfb\x23\x22\x32\xeb\x1d\x15\x6f\x74"
+"\x75\x6f\x6f\xa2\x74\xa7\xa6\xa2\xa2\xa7\xa6\x74\xa2\x70\x1f\x0b\x15\x5a\x06\xfb\x31\xdb\x1d\x0b\x1a\x7c\x88\x77\x83\x70\x1e\xfb"
+"\x0f\xfc\x4e\x79\x51\x84\x85\x53\x81\x19\x0b\x8c\x8f\x81\x68\x1d\x98\x8d\x97\x8f\x9a\x1e\x0e\x8c\x93\x1b\xa1\x98\x81\x79\x7d\x8b"
+"\x8b\x7b\x47\x1f\x3a\xfb\xb8\x05\x0b\x15\xae\x06\xf7\x3f\xf5\x05\x97\x93\x90\x93\x97\x1a\xa0\x7b\x9a\x76\x0b\x15\x4c\x72\x5a\x67"
+"\x4d\x1b\x4c\x63\xaf\xca\x87\x1f\x6e\x06\xfb\x00\x0b\x1f\x9c\x06\xba\xf7\x42\x05\xfc\xb4\x06\x5c\xfb\x42\x05\x9e\x06\x9f\x0b\x9f"
+"\xfb\x17\x05\x8c\x82\x8c\x82\x83\x1a\x65\x7d\x82\x4b\x85\x1e\x7b\x0b\x53\xb6\x5f\xc4\xc2\xb8\xb8\xc1\xc2\x5e\xb8\x53\x1f\x69\x04"
+"\xb0\xa9\x0b\x80\x70\x1b\x7c\x7a\x90\x99\x6d\x1f\x9c\x65\x71\x92\x75\x1b\x57\x0b\x96\x48\x1b\x57\x63\x15\x8e\x9a\x92\x8c\x99\x1b"
+"\xd7\xb6\x66\x4b\x0b\x1f\x90\x84\x85\x8d\x82\x1b\x72\x7a\x7b\x75\x73\x9f\x7c\xab\xaa\x0b\x62\xb0\xca\x86\x1f\x6e\x06\x8c\x52\x93"
+"\x6b\x9f\x71\x08\x6d\xa2\x0b\x7a\x46\x77\x7a\x4c\x8a\x20\x1d\xf7\xa0\x06\x91\x9d\x05\x0b\x90\x93\x98\x1a\x9f\x7b\x9b\x76\x81\x83"
+"\x88\x84\x84\x1e\x0e\xfa\x12\xf7\x87\x15\xfe\x10\x06\x83\x5d\x05\xfa\x10\x06\x0e\x87\x7a\x1f\x9c\x06\xb6\xf7\x32\x05\xfc\x75\x25"
+"\x1d\x0b\x15\x8c\x7f\x8b\x8b\x88\x1a\x75\x69\x78\x64\x6c\x6e\x9a\x9b\x0b\xf7\xc6\xf7\x9e\x15\xbc\xfb\x47\x05\x8d\x81\x8d\x80\x85"
+"\x1a\x0b\x46\x78\x7a\x4c\x8a\x20\x1d\xf7\x63\x06\x90\x9d\x05\x0b\x79\x1a\x66\x9d\x79\xae\xd2\xc0\xc1\xf7\x55\xf7\x07\x1e\x6d\x0b"
+"\x66\x6e\x6f\x65\x66\x6f\xa8\xb0\xae\xa9\xa9\xae\x1f\x0e\x76\x82\x83\x88\x84\x84\x1e\x0e\x1a\x4a\x74\x5d\x5f\x71\x1e\x7a\x6c\x64"
+"\x83\x4d\x1b\x79\x0b\xf8\x77\x15\x58\x06\xfc\x43\xfd\x4b\x05\xbf\x06\x0e\x05\xb2\xa5\x9c\x97\xaa\x1b\xa0\xa0\x86\x82\x9c\x1f\x0b"
+"\x8a\x9c\x81\x6a\x1a\x81\x89\x7c\x87\x7f\x1e\xfb\x0e\x0b\xfb\x3d\x05\xb2\x06\xf7\x1d\xf3\xdd\x23\x05\xaf\x06\x0b\x1a\x80\x07\x8c"
+"\x78\x8b\x86\x87\x1a\x74\x83\x81\x68\x0b\x1f\xbd\xb0\xa8\xc2\xc6\x1a\xeb\x40\xc0\xfb\x1c\x1e\x0b\xbc\xb4\xa4\xbf\xae\x1e\x7a\x9d"
+"\x05\x74\x70\x73\x82\x0b\x6e\x1a\x7c\x87\x72\x84\x73\x1e\xfb\x0f\xfc\x4e\x79\x0b\x1a\xa0\x81\x96\x78\x62\x7e\x6f\x21\x80\x1e\x0e"
+"\xed\x1d\xbc\x0b\x8d\x90\x81\x1f\x7f\x91\x83\x98\x9a\x1a\x95\x8e\x0b\x19\x86\x79\x05\xf7\x97\x06\x90\x9d\x70\x8c\x83\x0b\x1e\xf7"
+"\x1f\xf8\x9b\x15\x8f\xa2\x97\x8c\x98\x1b\x0b\xf8\xa5\xf6\x1d\x0b\xbc\xf7\x28\xc8\xe2\x1f\xdc\xc3\xc8\xb1\xd4\x1b\x0b\x4c\x54\x81"
+"\x83\x7a\x1b\x81\x83\x93\x97\x9b\xaa\x0b\xf9\x38\xf6\x1d\x0b\x56\xd9\xfb\x8e\x18\x51\xfb\x6c\x78\x42\x78\x7c\x0b\x75\x1a\x6c\x9d"
+"\x7a\xa9\xba\xa1\x9e\xed\xd0\x1e\x0b\xf4\x05\x66\x06\xeb\xfb\x3d\x05\xb9\x06\x0e\x06\x85\x70\x7d\x45\x75\xfb\x05\x68\xfb\x46\x0b"
+"\x86\x90\x4e\x7d\x65\x85\x52\x84\x19\x7b\x07\x0b\x1f\x7e\xa4\x9d\x87\xa2\x1b\xf7\x26\xf7\x2e\x0b\xa9\x78\xa0\x6f\x74\x70\x7c\x70"
+"\x71\x1f\x62\x0b\x77\x7a\x4e\x8a\x20\x1d\xf7\x96\x06\x0b\x05\xd4\x9e\x9d\x99\xd5\x1b\x8f\x9d\x05\x0b\x08\x2c\x4f\x5a\x58\x6b\x1b"
+"\x7e\x83\x95\x0b\x8a\x19\x86\x79\x05\xf7\x97\x06\x90\x9d\x0b\x8c\x84\x8b\x80\x8f\x19\x7b\x90\x81\x9a\x0b\x8e\x9b\x92\x8c\x95\x1b"
+"\x9d\x93\x84\x7c\x0b\x15\x58\x06\xfc\x5b\xfd\x42\x05\xbe\x06\x0b\x1b\x57\x6f\x6e\x3e\x77\x1f\xa8\x06\xab\x0b\x1f\x6e\x06\x52\x93"
+"\x6c\x9f\x71\x1e\x6e\x0b\xc3\x48\xdc\xbc\xc0\xa2\xb8\xbe\x1f\xcb\x0b\xf8\xe2\xf7\x70\x15\xcd\xfc\x8c\x49\x07\x0b\x70\xa3\x64\x4b"
+"\x4c\x4e\xfb\x33\x24\x1e\x0b\x82\x88\x84\x85\x1e\x0e\x01\x00\x01\xe3\x01\x05\x00\x01\x0a\x02\x01\x40\x03\x01\x87\xff\x02\x87\xa0"
+"\x02\x8e\x02\x00\x01\x00\x04\x00\x07\x00\x44\x00\x7f\x00\xbf\x01\x53\x02\x12\x02\xcb\x02\xd0\x03\x0c\x03\x48\x04\x19\x04\x2b\x04"
+"\x32\x04\x36\x04\x3d\x04\x51\x04\x9e\x04\xf1\x05\x45\x05\xb5\x05\xe9\x06\x39\x06\x99\x06\xbd\x07\x26\x07\x88\x07\xa3\x07\xb0\x07"
+"\xcc\x07\xe2\x07\xfc\x08\x57\x09\x04\x09\x08\x09\x82\x09\x86\x09\x8a\x09\x8e\x09\xfe\x0a\x02\x0a\x32\x0a\x37\x0a\x3c\x0a\x40\x0a"
+"\x44\x0a\xbf\x0a\xc3\x0a\xc7\x0a\xcd\x0b\x5f\x0b\x63\x0b\x66\x0b\x6a\x0b\x6e\x0b\xb5\x0b\xba\x0c\x4f\x0c\x53\x0c\x57\x0c\x87\x0c"
+"\x9a\x0c\xc9\x0c\xe7\x0c\xf2\x0c\xfb\x0c\xfe\x0d\x6e\x0d\x73\x0d\x76\x0d\x7b\x0d\xd5\x0d\xd8\x0d\xda\x0d\xe3\x0e\x1c\x0e\x21\x0e"
+"\x28\x0e\xf6\x0e\xf9\x0e\xfc\x0f\x71\x0f\xdc\x0f\xe1\x0f\xe6\x0f\xf5\x0f\xf8\x10\x5b\x10\x5f\x11\x08\x11\x0d\x11\x12\x11\x6f\x11"
+"\x7b\x11\xdf\x12\x1d\x12\x5b\x12\xdd\x13\x71\x13\x75\x14\x0d\x14\x91\x15\x3f\x15\xa3\x15\xc3\x15\xe5\x16\x42\x16\x56\x16\xab\x17"
+"\x50\x17\xfa\x18\x09\x18\xad\x19\xb5\x19\xb9\x1a\x42\x1a\x5b\x1a\x62\x1a\x7a\x1a\x9c\x1b\x40\x1b\x64\x1c\x61\x1c\xbd\x1c\xc5\x1c"
+"\xcb\x1c\xd3\x1c\xe4\x1c\xec\x1c\xf4\x1c\xfd\x1d\x05\x1d\x12\x1d\x3b\x1d\x45\x1d\x6e\x1d\x76\x1d\x7a\x1d\x94\x1d\xf9\x1e\x4b\x1e"
+"\x6c\x1f\x1a\x1f\x52\x1f\x63\x1f\x68\x1f\xb2\x1f\xb5\x20\x5c\x21\x14\x21\x66\x21\x76\x21\xef\x22\x85\x22\x88\x22\xf8\x23\x12\x23"
+"\x62\x23\xa0\x23\xaf\x23\xc5\x23\xf1\x24\x6f\x24\xc4\x24\xfb\x25\xbb\x25\xc0\x26\x26\x26\x52\x26\xa3\x27\x39\x27\x41\x27\x49\x27"
+"\x51\x27\x59\x27\x66\x27\x97\x27\xd9\x27\xe2\x27\xeb\x27\xf4\x27\xfd\x28\x07\x28\x11\x28\x30\x28\x3a\x28\x6b\x28\x72\x28\x7f\x28"
+"\x8e\x28\x95\x28\xc9\x28\xd0\x28\xdf\x28\xe8\x28\xf1\x28\xf9\x29\x17\x29\x20\x29\x28\x29\x2e\x29\x35\x29\x3c\x29\x42\x29\x68\x29"
+"\x70\x29\xca\x29\xd3\x29\xdd\x29\xe6\x29\xfc\x2a\x1b\x2a\x24\x2a\x31\x2a\x3a\x2a\x41\x2a\x62\x2a\x69\x2a\x70\x2a\x76\x2a\x7e\x2a"
+"\x88\x2a\x90\x2a\x98\x2a\xa0\x2a\xa8\x2a\xb1\x2a\xbb\x2a\xc5\x2b\x3e\x2b\xb0\x2c\x99\x2d\x5a\x2d\xf5\x2e\x99\x2f\x24\x2f\xaf\x2f"
+"\xc7\x2f\xdc\x2f\xe3\x2f\xf4\x2f\xfd\x30\x66\x30\xab\x30\xf0\x30\xf9\x31\x01\x31\x0b\x31\x16\x31\x95\x31\x9e\x31\xa1\x31\xbb\x31"
+"\xd6\x31\xde\x31\xe8\x31\xf0\x32\x6a\x33\x0d\x33\x53\x33\xbe\x33\xc1\x33\xe3\x34\x6a\x34\x6d\x34\x85\x34\x8e\x34\x97\x34\xa1\x34"
+"\xfd\x35\x33\x35\xc7\x35\xdc\x35\xe7\x35\xf1\x36\x34\x36\x38\x36\x4b\x36\x75\x36\xa1\x36\xaa\x37\x06\x37\x0f\x37\x18\x37\x24\x37"
+"\x39\x37\x42\x37\x4a\x37\xa9\x37\xb1\x37\xb9\x37\xc2\x38\x1b\x38\x2f\x38\x3b\x38\x47\x38\xdd\x39\x29\x39\x78\x39\x9e\x39\xa3\x3a"
+"\x03\x3a\xc5\x3a\xcd\x3a\xd6\x3a\xde\x3b\x40\x3b\x48\x3b\x7f\x3b\x8e\x3b\x96\x3b\xdd\x3c\x29\x3c\x76\x3c\x7e\x3c\xd3\x3d\x77\x3d"
+"\x80\x3d\x92\x3d\x9e\x3d\xfc\x3e\x00\x3e\x08\x3e\x6f\x3e\x7d\x3e\xad\x3e\xb6\x3e\xc0\x3e\xca\x3e\xd3\x3f\x5a\x3f\x63\x3f\x77\x3f"
+"\x91\x3f\x9b\x3f\xd0\x3f\xde\x3f\xf2\x3f\xf6\x40\x52\x40\xa2\x40\xef\x40\xf2\x41\x71\x41\x75\x41\x7e\x42\x6e\x42\xb8\x42\xbc\x42"
+"\xf3\x42\xf7\x43\x58\x43\xc0\x43\xc3\x44\x17\x44\x48\x44\xae\x44\xf4\x45\x36\x45\x3d\x45\x43\x45\xc2\x46\x11\x46\x31\x46\x7d\x46"
+"\xd5\x47\x26\x47\x5d\x47\x68\x47\xeb\x48\x68\x48\xd6\x49\x1a\x49\x89\x49\xa8\x4a\x35\x4a\xbb\x4a\xbf\x4a\xec\x4b\x49\x4b\xcf\x4c"
+"\x52\x4c\xd9\x4c\xec\x4d\x26\x4d\x99\x4e\x0f\x4e\x7a\x4e\xda\x4f\x3f\x4f\x46\x4f\x53\x50\x0e\x50\x3e\x50\x41\x50\x86\x50\x9b\x50"
+"\xfd\x51\x8c\x51\xda\x52\x06\x52\x73\x52\xea\x53\x30\x53\xe5\x53\xea\x54\xa0\x55\x2f\x55\xb2\x56\x29\x56\xbd\x57\x8a\x58\x09\x58"
+"\x88\x58\xd4\x59\x31\x59\xa3\x5a\x27\x5a\x77\x5b\x0c\x5b\x7e\x5b\xdc\x5c\x48\x5c\x89\x5c\xd2\x5d\x25\x5d\x91\x5d\xfe\x5e\x9d\x5e"
+"\xc3\x5f\x00\x5f\x61\x5f\xb4\x60\x06\x60\x98\x61\x1b\x61\xc9\x61\xfd\x62\x40\x62\x48\x62\x7d\x62\xb3\x62\xed\x63\x33\x63\x5d\x63"
+"\x93\x63\xb4\x63\xd5\x63\xf6\x64\x17\x64\x24\x64\x3a\x64\xb7\x64\xc1\x64\xcb\x65\x06\x65\x10\x65\x65\x65\xe3\x66\x61\x66\x76\x66"
+"\xc0\x67\x34\x67\x63\x67\x88\x67\x9b\x67\xa5\x67\xb0\x67\xda\x67\xe4\x68\x1b\x68\x95\x68\x9a\x68\xb9\x68\xda\x69\x2b\x69\x30\x69"
+"\x44\x69\xc7\x69\xe1\x6a\x34\x6a\xca\x6b\x4e\x6b\x67\x6b\x72\x6b\x91\x6b\x99\x6b\xc0\x6b\xfa\x6c\x27\x6c\x6e\x6c\x95\x6c\xd2\x6d"
+"\x66\x6d\x70\x6d\xe8\x6e\x55\x6e\x93\x6e\xd1\x6f\x16\x6f\x63\x6f\xa3\x6f\xa8\x6f\xb8\x6f\xe0\x6f\xfe\x70\x4f\x70\x8e\x71\x05\x71"
+"\x0f\x71\x85\x71\xa2\x71\xfc\x72\x14\x72\x25\x72\x30\x72\x59\x72\xa2\x73\x10\x73\x86\x73\xab\x73\xf5\x74\x78\x74\x85\x75\x24\x75"
+"\x2b\x75\x33\x75\x94\x75\xc8\x76\x2e\x76\x36\x76\x42\x76\x4a\x76\xb5\x77\x39\x77\x3c\x77\x57\x77\x65\x77\x6c\x77\xd7\x78\x43\x78"
+"\xbd\x79\x46\x79\x7a\x79\xa2\x79\xd8\x7a\x6c\x7a\x9c\x7a\xa4\x7a\xc0\x7a\xca\x7b\x0f\x7b\x21\x7b\x6c\x7b\x76\x7b\xa1\x7b\xab\x7b"
+"\xb4\x7b\xfb\x7c\x51\x7c\xe2\x7d\x3e\x7d\x7a\x7d\xfe\x7e\x5b\x7e\x8e\x7e\xa8\x7f\x0d\x7f\x73\x7f\x90\x7f\xa5\x7f\xb7\x7f\xc1\x7f"
+"\xdc\x7f\xdf\x7f\xe3\x7f\xec\x80\x00\x80\x08\x80\x0c\x80\x32\x80\xc9\x81\x57\x81\xcc\x81\xec\x82\x0c\x82\x2d\x82\x4c\x82\xce\x83"
+"\x3c\x84\x25\x84\xee\x85\x49\x85\x8a\x85\xd1\x86\x59\x86\xb4\x87\x5b\x87\x8f\x88\x15\x88\x9e\x88\xff\x89\x65\x89\xc1\x8a\x1d\x8a"
+"\x95\x8a\xff\x8b\x8c\x8c\x39\x8c\xcb\x8c\xfe\x8d\x3d\x8d\xd0\x8e\x5e\x8e\xe0\x8e\xe2\x8e\xe6\x8f\x47\x8f\x87\x8f\xfd\x90\x73\x91"
+"\x0c\x91\x65\x91\x95\x91\xad\x91\xc4\x91\xcf\x92\x87\x93\x00\x93\x04\x93\x08\x93\x24\x93\x41\x93\xb1\x93\xca\x94\x0f\x94\x38\x94"
+"\x5c\x94\x61\x94\x6c\x94\x9a\x94\xb9\x94\xd9\x94\xfc\x95\x0b\x95\x14\x95\x1d\x95\x36\x95\xfd\x96\x07\x96\x10\x96\x1a\x96\x25\x96"
+"\xbf\xfc\x2e\x0e\xfc\x2e\x0e\xfb\xdb\xf7\x1d\xf7\x45\x15\xc3\xf7\x2d\xa5\xca\xb8\xef\x08\xa7\xc9\x95\xaa\xa9\x1a\xad\x7d\x9c\x71"
+"\x66\x78\x6a\x38\x7d\x1e\x74\xfb\x22\x83\x66\x62\xfb\x53\x08\x6e\x34\x15\x70\x72\x73\x70\x6c\xa1\x74\xa8\xaa\xa4\xa2\xa8\xa7\x72"
+"\xa4\x6d\x1f\x0e\xfb\x84\xf7\xec\xf8\x39\x15\xc6\xf7\x14\xa8\xd3\x9b\x1a\x9b\x7d\x98\x7a\x73\x71\x78\x75\x86\x1e\x85\x73\x82\x3d"
+"\x83\x25\x08\xfb\x32\x16\xc6\xf7\x13\xa8\xd4\x9b\x1a\x9b\x7d\x98\x7a\x73\x71\x78\x75\x86\x1e\x85\x72\x82\x3e\x83\x25\x08\x0e\xf8"
+"\x65\xf7\x9f\x15\x2c\x06\xc1\xf7\x23\x05\xf4\x06\x96\xc1\x05\x2b\xc7\x0a\xfb\x16\xc7\x0a\x22\x06\x80\x55\x05\xeb\x06\x55\xfb\x23"
+"\x05\x22\x06\x80\x55\x05\xea\xc8\x0a\xf7\x16\xc8\x0a\xf4\x06\x30\xf7\x59\x15\x55\xfb\x23\x05\xfb\x16\x06\xc1\xf7\x23\x05\x0e\xf8"
+"\x85\xf8\xf8\x15\x6b\xa2\x60\x9d\x5d\x95\x9b\xcf\x18\x69\x06\x7a\x4c\x05\x3c\x75\x86\x73\x61\x1f\x5c\x70\x6f\x5d\x56\x1a\x66\x97"
+"\x6d\xa8\x67\x1e\xa1\x70\x9f\x79\xbf\x67\x46\xfb\xbd\x18\x3d\x9e\x71\xb0\x80\xf4\x7b\x88\x18\x70\xfb\x0f\xaf\x6d\xbf\x74\xc9\x7f"
+"\x19\x75\x30\x05\xae\x06\xa0\xe4\xd4\x8e\xad\x92\xb2\x9f\x19\xc6\xa9\xae\xc7\xd1\x1a\xda\x72\xaf\xfb\x09\xe6\x1e\xc3\xf7\x81\xc8"
+"\x73\xa2\x68\x8c\x41\x19\x9a\x89\x05\xfb\x4f\x3d\x15\x4d\xb8\x78\xa6\xb9\x1a\xb8\xa3\xae\xb6\x9a\x1e\x92\x9e\x8f\x8c\xb8\x1b\x5c"
+"\xfb\xe3\x15\x91\x86\x05\xcf\x53\x9c\x6e\x56\x1a\x37\x57\x5d\x20\x83\x1e\x0e\xf7\x41\xf9\x3f\xf8\x07\x15\x21\xfb\x01\xfb\x0b\xfb"
+"\x09\x36\xb7\x59\xd7\xb7\xb3\x9d\xac\xab\x1f\xc1\xc4\xab\xd9\xd8\x1a\xcf\x63\xb3\x48\x1e\x96\x6b\x15\xb2\xab\x67\x5f\x4c\x6b\x3e"
+"\x5b\x58\x1f\x73\x75\x6e\x7d\x6e\x1b\x62\x77\xa3\xba\xbb\xa8\xdd\xad\xbc\x1f\xb4\xa6\xa7\x9d\xab\x1b\x62\xf7\xe5\x15\x63\x06\x59"
+"\x59\x60\x79\x47\x1b\x6a\x74\x91\x96\x7e\x1f\x79\x9b\x05\x98\x7d\x70\x93\x70\x1b\xfb\x02\xfb\x00\xfb\x0c\xfb\x0f\x42\xbf\x52\xce"
+"\xbf\xba\xa5\xbb\xb1\x1f\xb2\xbd\xa8\xd6\xbf\x1a\x97\x89\x9b\x87\x9e\x1e\x8e\x8b\x8b\x8a\x8e\x1e\x83\xa0\x98\x89\xa6\x1b\xba\xa2"
+"\x91\xa3\xb6\x1f\xfb\xf2\xfd\x06\x05\xba\x06\xf0\xf8\xf9\x15\x92\x76\x8d\x7e\x7a\x1a\xfb\x06\x3a\xfb\x04\x39\x66\x75\xa3\xb2\xf6"
+"\xdd\xf7\x1f\xcb\x90\x8e\x89\x85\x92\x1e\x9a\x7f\x95\x86\xa6\x84\x08\x0e\xf7\x0a\xf8\xa6\xf7\xf2\x15\x78\x07\xb3\x88\x95\x84\x75"
+"\x1a\x68\x7b\x6f\x4c\x3f\x1e\x6b\xbc\x6c\xe0\x73\xf2\xca\xab\xa8\x9d\xa6\xa3\x08\xae\xab\x9d\xae\xad\x1a\xc0\x5f\xb4\x51\x2d\x49"
+"\x36\xfb\x0d\x80\x8c\x7e\x8e\x70\x1e\x86\x8d\x7f\x8c\x7d\x1e\x23\x5e\x5f\x73\x68\x6e\x08\x5b\x63\x73\x5d\x55\x1a\x2a\xd2\x4e\xf7"
+"\x03\xcb\xaa\x98\xcd\xf3\x1e\x52\xb8\xb2\x75\xc0\x1b\xbd\xaf\x9e\xbc\xb6\x1f\x80\x96\x05\x74\x6e\x79\x84\x74\x1b\x5c\x68\xa6\xce"
+"\x63\x1f\xc2\xd7\x9a\xa1\xa9\xb5\x9d\xa5\x96\x99\x96\x95\x9a\x96\x96\x8f\xa8\x8e\x08\x9c\x07\xfc\x12\x86\x15\xaf\xfb\x13\xae\x36"
+"\xad\x60\x08\x64\x5c\x60\x7a\x59\x1b\x42\x54\xc3\xd5\xd3\xcc\xd3\xed\xb0\x1f\xd8\xde\x15\x87\xa9\x8a\x9f\xa5\x1a\xe5\xa0\xb3\xbb"
+"\xa9\x98\x7a\x63\x4a\x75\x6c\x36\x56\x1e\x0e\xfb\xdb\x80\x0a\x0e\xfb\xdb\xf7\x33\xfb\x43\x15\x66\xf1\x80\xc8\xec\x1a\xf7\x0d\xa7"
+"\xf7\x23\xba\xf7\x03\x1e\xac\xda\xaa\xba\xcc\xcf\x7e\x9a\x18\xfb\x16\xfb\x0a\x58\x49\x61\x23\x08\x71\x4c\x80\x4e\x3e\x1a\x3e\x97"
+"\x40\xa1\x46\x1e\x99\x61\x9a\x6b\xaf\x49\x08\x0e\xfb\xdb\xa8\xfb\x48\x15\xf7\x10\xf7\x00\xbe\xcc\xb8\xf7\x00\x08\xa7\xcd\x97\xca"
+"\xd6\x1a\xc4\x83\xca\x7d\xc7\x1e\x7a\xcf\x7c\xaf\x5e\xdb\x78\x86\x18\xad\x3a\x9a\x3a\x27\x1a\xfb\x13\x69\xfb\x35\x59\xfb\x00\x1e"
+"\x6e\x4a\x6d\x61\x4e\x4b\x08\x0e\xf7\xd3\xf8\x88\x15\xa0\x8f\x9e\x97\xb0\x1e\x93\xa5\x8e\x98\x96\x1a\xa2\x7d\x9b\x75\x75\x7e\x7c"
+"\x72\x82\x8d\x82\x91\x77\x1e\x99\x5e\x8f\x73\x60\x1a\x64\xa2\x77\x9b\x6b\xaf\x08\xa2\x77\x80\x92\x7b\x1b\x77\x7c\x7c\x77\x70\x9a"
+"\x80\xb9\x83\x1f\xb0\x85\xaa\x80\xa4\x7c\x97\x84\x18\x60\x71\x7a\x84\x5c\x83\x08\x61\x84\x7a\x7e\x73\x1a\x77\x9b\x7b\x9e\x9c\x9b"
+"\x95\xa0\x9c\x1e\xa7\xae\x97\x96\xab\x9e\x94\x90\x8e\x8d\x8e\x8e\x08\x8d\x7b\x8b\x86\x83\x1a\x75\x85\x72\x7e\x67\x1e\x84\x76\x88"
+"\x80\x82\x1a\x75\x9a\x7b\x9f\xa2\x9b\x9b\xa3\x94\x89\x92\x85\x9d\x1e\x7c\xb5\x87\xa1\x8a\xc0\x92\x87\x18\xac\x78\xa2\x77\xa5\x6a"
+"\x08\x74\x9e\x97\x83\x9a\x1b\xa1\x9b\x9c\xa1\xa2\x7a\x97\x5f\x92\x1f\x6f\x90\x74\x92\x7c\x93\x66\x9e\x18\xb6\xa6\x9c\x92\xba\x93"
+"\x08\xb5\x92\x9a\x96\xa5\x1a\xa1\x7c\x9a\x74\x7e\x83\x87\x7a\x7d\x1e\x55\x52\x89\x89\x5f\x6e\x08\x0e\x9a\xf7\xc5\xf7\xb2\x15\xfb"
+"\x6f\x49\xf7\x6f\xfb\x70\xcd\xf7\x70\xcb\x0a\xfc\x2e\x90\xfb\x15\x33\x1d\xfb\xdb\xab\x0a\xfc\x2e\xdd\xef\x4c\x0a\x0e\xfc\x12\xf7"
+"\xcd\xf9\x2e\x15\xfc\x0e\xfd\x40\x05\xd4\x06\xf8\x0e\xf9\x40\x05\x0e\xf7\xe9\xf9\x38\x15\xfb\x31\xfb\x2c\xfb\x78\xfb\x7f\xfb\x18"
+"\xcb\x33\xec\xb6\xb5\x9a\xaa\xb5\x1f\xf0\xd5\xd7\xf7\x3a\xf7\x24\x1a\xf7\x32\x50\xea\x2a\x1e\x85\x6f\x15\xc0\xa9\x5d\x3b\xfb\x1a"
+"\x63\xfb\x39\x52\x25\x1f\x49\x65\x62\x69\x5d\x1b\x56\x6b\xbd\xe0\xf6\xbe\xf7\x59\xbf\xe8\x1f\xcb\xb0\xb1\xaa\xb9\x1b\x0e\xbc\x16"
+"\xf7\xab\x9a\x7a\x06\x5a\x77\x94\xa2\x94\x8e\x9a\x94\xa7\x1f\x8d\x92\x8c\x90\x8e\x95\xf7\x23\xf8\x9b\x18\x90\x9d\x8c\x91\x90\x1a"
+"\x8f\x89\x8e\x88\x1e\x8b\x6f\x86\x55\x80\x1e\x31\x79\x89\x8a\x84\x8a\x7f\x89\x19\x7c\x07\xc4\x8d\x05\xa2\x8c\x9a\x7f\x77\x1a\x84"
+"\x89\x84\x86\x77\x1e\xfb\x1e\xfc\x80\x7f\x66\x76\x81\x3c\x84\x19\x0e\xf8\x24\xf7\x1f\x15\x74\x5a\x77\x7f\x53\x89\x08\xfb\x52\x90"
+"\x06\xf7\x54\xf7\x54\x05\xf7\x09\xf7\x09\xab\xbd\xce\x1a\xea\x44\xd5\x30\x67\x66\x82\x7a\x6d\x1e\x58\x6f\x70\x69\x6e\x43\xa0\x84"
+"\x18\xcc\xb0\xb6\xa8\xc7\x1b\xd3\xc0\x57\x45\x76\x88\x78\x85\x7e\x1f\x73\x55\x5d\x4c\x4a\x45\xfb\x66\xfb\x74\x18\x7a\xf7\xf7\x07"
+"\xbd\xf7\x18\x05\x0e\xf7\x46\xf8\xcb\x15\xba\xae\xad\x9f\xb5\x1b\xc1\xae\x67\x54\x61\x76\x67\x60\x6e\x1f\x60\x6e\x60\x7c\x32\x7c"
+"\x8c\x7b\x18\xc3\x95\x8a\x82\xa5\x1f\xc8\x74\xab\x55\x3b\x1a\x68\x83\x67\x7d\x73\x1e\x63\x74\x5e\x6f\x62\x1b\x78\x75\x95\xa1\x6d"
+"\x1f\xa0\x6e\x7b\x92\x78\x1b\x6f\x7b\x7d\x72\x65\xb3\x76\xd3\xc3\xbf\x98\xa3\xb4\x1f\xda\xb9\xbd\xdf\xe4\x1a\xd4\x6e\xb8\x49\xaa"
+"\x1e\x8e\x07\xf7\x0c\xba\xae\xac\xcf\x1a\xd4\x50\xc1\x3a\x46\x4d\x64\x4a\x6b\x1e\x0e\xf8\x59\xf7\x85\x15\x2c\x06\xf7\x0d\xf8\x47"
+"\x05\x62\x06\xfc\x35\xfc\x43\x77\x48\x05\xf7\x9a\x06\x5a\xfb\x46\x05\xda\x06\xb9\xf7\x44\x05\xef\x06\xfb\x36\xcc\x15\xfb\x68\x8f"
+"\x06\xf7\xc4\xf7\xd2\x05\x8f\x06\x0e\xf7\x82\xf8\xe7\x15\xf7\x7a\x06\xa2\xd2\x05\xfb\x94\x06\x23\xfb\x6e\x05\x7c\x07\xec\x76\xac"
+"\x7f\xaf\x6e\x08\xab\x71\xa0\x59\x56\x1a\xfb\x01\x3a\x29\x31\x76\x79\x93\xa0\x6e\x1e\x9e\x72\x7c\x92\x7b\x1b\x74\x7a\x7a\x74\x67"
+"\xb2\x76\xce\xf7\x39\xf7\x19\xf7\x14\xf7\x33\xc9\x74\xc0\x60\xb4\x1f\x65\xae\x68\x9b\x3a\x9f\x08\x0e\xf8\x9c\xf9\x42\x15\xfb\x1a"
+"\x7b\x48\x73\x35\x4c\x08\xfb\x12\x2d\x3e\xfb\x22\xfb\x23\x1a\xfb\x14\xd3\x38\xf7\x03\xf7\x1a\xf7\x06\xf7\x13\xf7\x2b\xf1\x44\xd5"
+"\x28\x6f\x6a\x83\x7e\x70\x1e\x87\x8d\xd0\xf7\x13\xf7\x1c\xf0\xf7\x09\x99\x19\xfb\x9a\xfb\x97\x15\xd0\xb7\x59\x3e\x47\x73\x3c\x66"
+"\x57\x1f\x5e\x6d\x68\x76\x60\x1b\x4e\x67\xbc\xdd\xcf\x9f\xde\xa5\xb7\x1f\xb9\xa6\xac\x9f\xba\x1b\x0e\xf8\xad\xf9\x24\x15\x85\x95"
+"\x05\xfc\x0b\x06\x3a\xfb\x1c\x99\x82\xb9\xc3\xa7\x9a\xc6\x8c\x19\xf7\x72\x06\x8d\x88\xfc\x03\xfc\xea\x05\xd1\x06\x0e\xf7\xdd\xf8"
+"\x12\x15\xf7\x0b\xb2\xb8\xb6\xd2\x1a\xde\x42\xc5\x25\x20\x42\x4e\x32\x55\x9f\x64\xce\x42\x1e\xfb\x12\x63\x46\x44\x33\x1a\x70\x93"
+"\x6d\x9a\x72\x1e\x52\xac\xc7\x6e\xde\x1b\xf7\x10\xe6\xd8\xf2\xce\x6d\xc1\x36\xe3\x1f\x39\x65\x15\xf7\x02\xfb\x06\x97\x79\x52\x1a"
+"\x3a\x52\x50\x3c\x3c\x53\xc5\xdd\xde\xc1\xd0\xea\xb0\x1e\xcb\xc2\x15\x3d\xd5\x7a\xa4\xb5\x1a\xd1\xb1\xb6\xcb\xcb\xb6\x5c\x44\x4c"
+"\x70\x6b\x34\x62\x1e\x0e\xa2\x7a\x15\xf7\x1b\xa2\xce\xa6\xde\xcc\x08\xf7\x08\xe7\xcf\xf7\x19\xf7\x1b\x1a\xf7\x18\x43\xe1\xfb\x01"
+"\xfb\x12\xfb\x08\xfb\x14\xfb\x20\x22\xc9\x41\xe3\xb4\xae\x97\xac\xc0\x1e\x8f\x89\x7a\x5d\x59\x4a\x4e\x53\x19\x42\x4e\x5a\x71\x3c"
+"\x7a\x08\xf7\xbb\xf9\x1d\x15\xc9\xb0\x5a\x38\x3d\x72\x2e\x6d\x6e\x1f\x71\x71\x62\x7a\x65\x1b\x4b\x67\xbd\xe4\xd5\xa8\xdb\xb6\xb7"
+"\x1f\xa4\xa3\xaa\x98\xad\x1b\x0e\xfb\xdb\xf5\xef\x15\x6c\x72\x71\x6c\x6e\xa4\x72\xa8\xab\xa4\xa3\xa9\xaa\x72\xa5\x6d\x1f\xee\xf7"
+"\xe9\x9c\x0a\xfb\xdb\xaf\xfb\x15\x69\x0a\xf7\x46\xf8\xbd\x9c\x0a\x9a\xf9\x01\xf8\xe8\x15\xfc\x79\xfb\x9c\x89\x85\xf7\xe3\xfb\xa8"
+"\xa8\xf3\xfb\x8d\xf7\x60\xf7\xfd\xf7\x5b\x05\x0e\x9a\xf8\xe2\xf8\x16\x15\xfc\x8c\x49\xf8\x8c\x06\xfb\x1a\x04\xfc\x8c\x49\xf8\x8c"
+"\x06\x0e\x9a\xe9\xbd\x15\xf8\x79\xf7\x9c\x8d\x92\xfb\xe4\xf7\xa7\x6f\x24\xf7\x8d\xfb\x61\xfb\xfd\xfb\x5b\x05\x0e\xf7\x6c\xf7\x42"
+"\x15\x92\xa8\x99\xc3\xa8\xb1\xd3\xc4\x19\xf7\x06\xe8\x9f\xa6\xc8\x1a\xd9\x51\xbe\x31\x39\x51\x5e\x4b\x6d\x9a\x79\xa4\xa2\x9b\x9a"
+"\x9f\x93\x89\x91\x86\x96\x1e\x85\x98\x89\x91\x93\x1a\xa9\xa5\x9d\xb7\xbe\xa8\x6d\x54\x57\x75\x61\x4a\x44\x1e\x38\x2c\x7f\x75\x7a"
+"\x28\x08\x7d\x36\x15\x6d\x74\x74\x6e\x6e\xa2\x75\xa9\xa7\xa4\xa3\xa6\xa8\x73\xa2\x6e\x1f\x0e\xf7\x98\xf8\xdf\xf8\x55\x15\xb3\x76"
+"\x7c\x96\x68\x1b\x61\x62\x79\x6b\x6d\x1f\x58\x57\x6c\x3e\x44\x1a\x4c\xb2\x5b\xbd\xb5\xb8\xa5\xb8\xaf\x1e\x60\x91\xaf\x6e\xba\x1b"
+"\xee\xe0\xf7\x02\xf7\x14\xf7\x37\xfb\x22\xf7\x13\xfb\x4c\xfb\x5e\xfb\x34\xfb\x2e\xfb\x56\xfb\x51\xf7\x33\xfb\x27\xf7\x62\xd2\xbd"
+"\x98\xb7\xe9\x1f\x7f\xa8\x05\x68\x3e\x5a\x7f\x49\x1b\xfb\x40\xfb\x0d\xf7\x0d\xf7\x3f\xf7\x50\xf7\x09\xf7\x1a\xf7\x37\xf7\x30\xf7"
+"\x15\xfb\x0e\xfb\x26\x4f\x72\x4a\x66\x63\x1f\x77\x78\x72\x80\x72\x1b\x73\x7e\x9a\xa6\x90\x8c\x94\x8d\x92\x1f\xcc\xf7\x90\x05\x46"
+"\x06\x48\x6d\x15\xa7\x89\x99\x74\x89\x66\x08\xfb\x05\x85\x53\x27\x52\x1b\x66\x75\xab\xbf\xc1\x9d\xbc\xac\xb1\x1f\xa7\xab\xae\x9f"
+"\xa3\x89\x08\x0e\x5a\x26\x1d\x0e\x5a\x83\x16\xf7\xae\x06\xf7\x31\xf7\x00\xdc\xf7\x0b\xd4\x6c\xb0\x2c\xb4\x1f\xd2\x9c\xa8\x97\xab"
+"\xa7\x08\xa7\xa3\x9a\xad\xb3\x1a\xea\x44\xbf\xfb\x15\x1e\xfb\x96\x7b\x06\xca\x86\x99\x84\xdf\x1d\x51\x84\x85\x53\x81\x19\xf7\x8a"
+"\xf7\xcf\x15\xcb\xb6\x87\x83\x9f\x1f\xb4\x7a\xa4\x60\x54\x1a\xfb\x00\x41\x49\xfb\x0e\x61\x75\x99\xa7\x98\x97\xbb\xa2\xda\x1e\x98"
+"\xb6\x93\xa9\x96\xb9\x08\xd6\xf7\x9c\x15\xa1\x91\x97\x91\xb2\x1b\xdc\xaf\x69\x41\x52\x73\x5e\x60\x73\x1f\x69\x78\x5a\x83\x32\x8c"
+"\x08\x0e\x92\x38\x0a\x0e\xc9\x79\x1d\x0e\x5a\x27\x1d\x0e\x5a\xf9\x19\x22\x0a\xfc\x86\x7b\x06\xcc\x85\x97\x85\xdf\x1d\x4f\x84\x85"
+"\x52\x83\x19\x7b\xf7\x90\x9b\x07\x51\x8e\x79\x96\xa9\x1a\x94\x8d\x97\x92\xa3\x1e\xc9\xf7\x73\x05\x89\xb0\xa1\x8a\xa1\x1b\xb2\x92"
+"\x8a\x87\x94\x1f\x9a\x83\x92\x7e\x77\x1a\x7b\x89\x7f\x85\x6c\x1e\x9c\x86\xd7\xf7\x7e\x79\x90\x5e\x31\x88\x8a\xfb\x3c\x89\x19\xcd"
+"\xf7\x7d\x05\x9f\x91\x99\x91\xb4\x1b\xf7\x3d\xae\x7e\x4b\x84\x8b\x86\x8a\x81\x1f\x8a\x82\x8b\x89\x8a\x83\xa0\x89\x18\x0e\xc9\x2e"
+"\x0a\x0e\xc9\xf9\x93\x22\x0a\xfb\x8b\x7b\x06\xc5\x84\x97\x83\x6f\x57\x0a\x5d\xfb\x38\x05\xfb\xb1\x06\xc1\xf7\x57\x4a\x0a\x88\x77"
+"\x83\x70\xb7\x0a\x51\x1d\xf7\x18\xf8\x75\x9c\xc5\x93\x91\xc4\x95\x19\x0e\xfb\xdb\x2c\x1d\x0e\xfb\x6c\x6e\x0a\x0e\x92\x6f\x1d\x0e"
+"\x23\x34\x0a\x0e\xf7\x41\xf9\xfd\x22\x0a\xfb\x3b\x06\xfb\xe4\xfc\x81\x54\xf8\x81\x05\xfb\x49\x7b\x06\xbd\x88\xa3\x80\x74\x1a\x83"
+"\x87\x7c\x85\x79\x1e\x89\x87\x88\x81\x87\x7b\x88\x80\x18\x21\xfc\x08\x6c\x23\x7c\x77\x57\x85\x19\x7b\xf7\x5a\x9b\x07\x58\x8f\x77"
+"\x97\xa7\x1a\x96\x8f\xa3\x90\x9d\x1e\xf7\x0a\xf8\x45\xc8\xfc\xb6\x05\x9c\x06\xf8\x0d\xf8\xc5\xfb\x15\xfc\x6a\x7b\x56\x77\x7c\x4a"
+"\x84\x19\x7b\xf7\xa5\x9b\x07\x47\x91\x82\x91\xaa\x1a\x9c\x8d\x98\x94\xaa\x1e\xf7\x0f\xf8\x4f\x9d\xc7\x90\x90\xc6\x94\x19\x0e\x92"
+"\x32\x0a\x0e\xc9\x26\x0a\x0e\x5a\xf7\x26\x62\x0a\x0e\xc9\xf7\xab\x7b\x15\xd8\x90\xb1\x95\xc3\xaa\x08\xf7\x28\xde\xf0\xf7\x36\xf7"
+"\x32\x1a\xf7\x1b\x2b\xed\xfb\x18\x3a\x30\x62\x43\x3c\x1e\x26\x2e\x50\xfb\x0d\xfb\x0a\x1a\x39\xa9\x47\xc1\x61\x1e\xa6\x76\xa0\x81"
+"\xb7\x81\x2f\x3a\x82\x84\x3f\x55\x95\x7c\x18\xa0\xb1\xb0\x95\xb3\x1b\x9f\xa8\x86\x7e\xb7\x1f\x7a\xc8\xc0\x82\xb1\x1b\xc2\xd1\xa5"
+"\xb2\xbe\x1f\xa3\x9e\x98\x99\xa5\xae\x7c\x96\x18\x51\x53\x62\x79\x43\x1b\x6d\x67\x91\x9b\x52\x1f\x55\x99\x67\x92\x76\x8a\x72\x8a"
+"\x18\xf7\x84\xf9\x56\x15\xdb\xbc\x51\x2c\x21\x5c\xfb\x26\x4b\x2e\x1f\x3b\x54\x4d\x65\x42\x1b\x39\x5d\xc7\xf5\xeb\xe6\x1d\x0e\x5a"
+"\x3a\x1d\x0e\x37\x0a\x0e\x23\x50\x1d\x0e\xc9\x27\x0a\x0e\x5a\xf9\x44\x22\x0a\xfb\x4e\x7b\x06\xb8\x86\x9d\x81\x78\x1a\x78\x78\x61"
+"\x6a\x51\x1e\xfb\x62\xfb\xf8\x49\xf8\x4f\x05\x8a\x90\x8b\x8f\x91\x1a\xad\x99\x94\xca\x93\x1e\x9b\xfb\x85\x7b\x07\xc3\x84\x8d\x89"
+"\xa0\xfb\x12\xe0\xfc\x9c\x18\x9e\x06\xf8\x09\xf8\xfb\x9c\xa6\x9b\x97\xa2\x8c\x19\x0e\xf7\x41\x30\x0a\x0e\x5a\xf9\x23\x22\x0a\xfb"
+"\x64\x7b\x06\xbc\x85\x97\x84\x74\x1a\x7e\x85\x7f\x7d\x7b\x1e\xfb\x25\xfb\x3b\x50\xf7\x27\x05\x81\xa5\x86\x9c\x98\x1a\xa4\x9b\x94"
+"\xc2\x92\x1e\x9b\xfb\x9c\x7b\x07\xc5\x86\x9a\x81\x9e\x5d\xf5\xfb\x9b\x18\x7a\x78\x7a\x77\x7b\x78\x76\x73\x77\x73\x77\x74\x82\x80"
+"\x81\x80\x82\x81\x5b\x53\x6d\x6b\x79\x7d\x72\x77\x7a\x82\x71\x86\x08\x7b\xf7\x6a\x9b\x07\x5b\x7a\x94\xa4\x9a\x92\x9b\x99\x9b\x1f"
+"\xf7\x2b\xf7\x40\xce\xfb\x39\x05\x92\x79\x8f\x7b\x7c\x1a\x6e\x81\x86\x49\x86\x1e\x7b\xf7\xa5\x9b\x07\x45\x93\x82\x91\x72\xc7\x25"
+"\xf7\x96\x18\xf7\x3d\xf7\x56\xbf\xc5\xa9\xa2\xb6\x99\x19\x0e\x23\x2f\x0a\x0e\x23\x39\x0a\x0e\xfb\xa3\xf8\x14\xf9\x10\x15\x92\xa6"
+"\x05\xfb\x41\x06\xfb\x59\xfd\xc4\x05\xf7\x50\x06\x92\xa6\x05\x53\x06\x6b\x7a\x94\x9e\x90\x8b\x8b\x8f\x9b\x1f\xf7\x34\xf9\x3a\x92"
+"\xa6\x95\x92\xa9\x8c\x19\x0e\xfc\x12\x62\xf9\x2e\x15\xf7\xb5\xfd\x40\x05\xd2\x06\xfb\xb4\xf9\x40\x05\x0e\xfb\xa3\x9e\xfb\x12\x15"
+"\x84\x70\x05\xf7\x41\x06\xf7\x59\xf9\xc4\x05\xfb\x51\x06\x84\x70\x05\xc4\x06\xac\x9b\x82\x79\x86\x8b\x8b\x87\x7b\x1f\xfb\x35\xfd"
+"\x3a\x85\x70\x82\x83\x6c\x8a\x19\x0e\xfb\x82\xea\xf7\xc3\x15\xf7\x23\xf7\xb9\xf7\x28\xfb\xb9\x05\xbf\x06\xfb\x43\xf7\xef\x05\x58"
+"\x06\xfb\x3d\xfb\xef\x05\x0e\xf8\x6a\xfb\x16\x15\xbd\xfc\x84\x59\x07\x0e\xfb\xdb\xf7\xc1\xf9\x2e\x73\x0a\x0e\x25\x0a\x0e\xf7\x02"
+"\xf9\x17\x15\xc7\x89\x90\x88\x75\x1a\x82\x89\x80\x84\x74\x1e\x89\x85\x89\x84\x8a\x85\x89\x84\x18\xfb\x1c\xfc\x89\x05\x87\x07\x74"
+"\xd7\x6d\xc4\xf7\x2b\xf7\x3a\xf7\x42\xf7\x32\xd1\x5a\xbd\x48\x45\x57\x62\xfb\x02\x44\x1e\xbe\xf7\x4f\x93\xa7\xb8\xf7\x41\x86\x90"
+"\x18\x58\x82\x6e\x86\x42\x82\x08\xf7\x64\xfb\xa0\x15\xb7\xa5\x6a\x56\x49\x59\x20\x4f\x4d\x1f\x65\x66\x60\x76\x60\x1b\x6c\x7c\x96"
+"\xa2\xc7\xa9\xeb\xb5\xd6\x1f\xd8\xb7\xb8\xb1\xbb\x1b\x0e\xfb\x6c\x3c\x1d\x0e\x5c\x0a\x0e\xfb\x6c\x28\x1d\x0e\xfc\x12\xae\xf8\x20"
+"\x15\xe5\x06\x33\xfc\x38\x05\x20\x75\x6a\x54\x61\x1b\x7f\x83\x92\x94\x8f\x2d\x1d\x91\x8c\x8f\x91\x52\x0a\x79\x74\x68\xad\x71\xb8"
+"\xe4\xd0\xed\xf7\x4d\x40\x0a\xf7\x01\x06\x91\xab\x05\xfb\x00\x06\xf7\x32\xa8\xb0\xd1\xc3\x1b\x99\x93\x36\x0a\x87\x43\x1d\x9e\x9d"
+"\xa1\xb1\x66\xa6\x59\x5b\x64\x75\x5d\x67\x1e\x6d\x63\x77\x5d\x6d\x2b\x08\x2f\x06\x0e\x39\x1d\x0e\x71\x1d\xfc\x12\x2f\x1d\x76\xf8"
+"\xbb\x45\x0a\xfc\x12\xf7\x8a\xf8\x4b\x15\x88\x8d\x36\x7c\x56\x83\x6b\x89\x19\x7b\x07\xa6\x8c\x05\x92\x06\xa7\x97\x81\x75\x81\x86"
+"\x71\x80\x5f\x1f\x43\xfb\xb8\x05\xfb\x1e\x69\x74\x60\x63\x54\x1d\xe2\xc7\xd6\xf7\x34\xb3\x1e\xdf\xf9\x06\x45\x0a\xfb\x6c\x72\x1d"
+"\x0e\xfc\x12\xf7\x78\x3d\x1d\x0e\xc9\xf9\x45\xf7\x09\x15\x87\x86\x86\x86\x87\x85\x7a\x77\x82\x80\x8a\x8a\x08\x73\x75\x81\x84\x7d"
+"\x1b\x83\x87\x90\x96\x8f\x8f\x9c\x91\xa3\x1f\xcf\xf7\x8f\x05\x8c\x90\x8d\x9b\x92\x1a\xaf\x72\xa6\x6a\x77\x77\x84\x7c\x73\x1e\x5a"
+"\x6b\x62\x5b\x46\xfb\x02\x08\xa5\xd9\x99\xc2\x9e\x1a\xaf\x74\xa3\x69\x4e\x45\x49\xfb\x25\x2f\x1e\xc5\xf7\x65\x88\x8d\x55\x80\x76"
+"\x87\x36\x7b\x19\x7b\x07\xb9\x8a\x8b\x8b\x94\x86\x08\x90\x89\x8f\x84\x84\x1a\x7f\x73\x2f\x68\xfb\x11\x1e\x75\x3f\x87\x7b\x7e\x58"
+"\x08\xd6\x06\xbb\xf7\x32\x9a\xb1\xad\xbf\x08\xe1\xc4\xc6\xc2\xad\x1b\x98\x92\x82\x7b\x7e\x6d\xfb\x0a\x63\xfb\x21\x1f\x83\x6e\x87"
+"\x7d\x7e\x5a\x08\xd6\x06\xb3\xf7\x30\x9f\xbe\xbe\xd1\x08\xcf\xbc\xbd\xb7\xa8\x1b\x96\x94\x82\x7f\x86\x89\x81\x86\x77\x1f\x51\xfb"
+"\x7a\x05\x81\x64\x88\x7a\x81\x1a\x6d\x99\x7b\xa5\xba\xb7\xac\xd5\xc0\x1e\x90\x92\x05\x0e\x32\x1d\x0e\x2b\x1d\x0e\xc3\xf8\x27\x15"
+"\xa2\x8c\x05\xa1\x8c\x9f\x7e\x7b\x1a\x7f\x68\xfb\x1f\x67\xfb\x18\x1e\x74\x36\x77\x40\x7c\x4c\xcc\x0a\x9a\x07\x5c\x7a\x93\xa1\x99"
+"\x9c\xd7\x9f\xd7\xee\x1d\xf7\x3b\xf7\x34\xd9\x5f\xba\x44\x4a\x5b\x6b\x39\x51\x1f\xa8\xf0\x05\x8c\x90\x8c\x8e\x8b\x1a\x8e\x89\x8d"
+"\x88\x1e\x8a\x06\xfb\x2e\x75\x05\xf7\x9b\x76\x15\xb6\x89\x9e\x71\x52\x1a\x47\x6e\x36\x60\x4d\x1e\x4f\x61\x5b\x6d\x57\x1b\x6f\x77"
+"\x9a\xa1\xad\xae\xf7\x16\xa9\xd6\x1f\xa6\xcf\xc5\xbc\xbd\x88\x08\x0e\xf8\x1b\xfb\x53\x15\x79\x06\x67\x76\x95\x9e\x8c\x1f\x8e\x8c"
+"\x8f\x8c\x8f\x1e\xf7\x38\xf8\xd5\x05\x42\x06\x7c\x5c\x05\xb9\x7b\x77\x9b\x62\x1b\xfb\x18\xfb\x35\xfb\x4c\xfb\x2c\x44\xb2\x5e\xca"
+"\xd2\xb9\xaf\xf7\x14\xe4\x1f\x32\xfb\xb9\x7e\x63\x7b\x82\x4a\x87\x19\x7b\xf7\x85\x07\x45\xf9\x08\x15\xac\xa5\x70\x6a\x37\x47\xfb"
+"\x22\x47\x52\x1f\x75\x71\x70\x7f\x73\x1b\x68\x76\xa9\xba\xd5\xbf\xf7\x02\xcc\xce\x1f\xaa\xaa\xac\x9d\xa8\x1b\x0e\xfb\xa3\x41\x0a"
+"\x0e\xfb\xa3\x31\x0a\x0e\xfc\x12\xf7\xbc\xf8\x40\x15\x45\x1d\x8d\x1a\x91\x4f\x1d\x0e\x2a\x1d\x0e\xfb\x6c\xa0\xf8\x27\x15\x8c\x96"
+"\x93\x8b\x96\x1b\xb2\x95\x7a\x2f\x99\x1f\x96\x45\x96\xfb\x27\x4e\x1a\x6e\x8c\x85\x93\xa4\xe6\xf1\xf7\x26\xf3\x1e\xae\xbd\xa5\xcb"
+"\xb1\x1a\xab\x71\xa6\x6d\x74\x7d\x7e\x76\x7b\x91\x7f\x9d\x7b\x1e\x98\x7f\x90\x83\x81\x1a\x5c\x4a\xfb\x02\x43\x41\x1e\x6c\x6b\x84"
+"\xf7\x21\x85\xbf\x7e\xd5\x19\xf1\x77\x8b\x8d\x82\x1b\x86\x84\x8a\x88\x83\x1f\x7b\x87\x4d\x7f\x6a\x86\x08\x0e\x92\x2d\x0a\x0e\xfb"
+"\x6c\xf8\x26\xf7\x03\x15\x83\x82\x86\x85\x82\x7f\x08\x6d\x74\x7f\x81\x7f\x1b\x7d\x82\x98\xa7\x84\x1f\x88\x96\x8b\x8d\x8a\x8e\x08"
+"\x72\xf1\x80\xb9\x9a\x1a\xd9\xb8\xae\xb6\x9d\x1b\x91\x94\x88\x86\x94\x1f\x84\x97\x92\x89\x94\x1b\x9f\x99\x9a\xa0\xa1\x7a\x9a\x73"
+"\x5f\x66\x67\x20\x45\x1f\x80\xc2\x05\xcf\x7d\x80\x9f\x70\x1b\x74\x6b\x83\x76\x4d\x1f\x85\x89\x8b\x8b\x86\x89\x8f\x7c\x18\x95\xb2"
+"\x92\x8c\x95\x1b\xa4\x91\x82\x4f\x99\x1f\xa8\xfb\x0f\x39\xfb\x09\x05\x6d\x76\x78\x79\x80\x1b\x85\x81\x8e\x91\x81\x1f\x92\x7e\x81"
+"\x8e\x82\x1b\x77\x7d\x7c\x77\x71\x9e\x7b\xaa\xaa\x97\x94\xc7\xbd\x1f\xa6\xac\xa1\xa9\xb4\xc2\xa9\xfb\x0c\x18\x57\x98\x98\x7c\xab"
+"\x1b\xb1\xa5\xa3\xe5\xc5\x1f\x0e\xfb\x6c\x31\x1d\x0e\xfb\xa3\x33\x0a\x0e\xfb\x98\xf8\x2b\xf9\x43\x15\xfb\x05\x5e\x69\x21\x6c\x1f"
+"\x5b\xfb\x46\x78\x42\x75\x73\x4b\x7a\x19\xb2\x7d\x98\x7d\x6e\x1a\x73\x7f\x55\x75\x40\x1e\x75\x40\x81\x5d\x74\x1a\x54\xac\x77\xe7"
+"\x88\x1e\x8e\x96\x05\x65\x96\x7c\x9d\xb0\x1a\x9b\x91\xa4\x9b\xc8\x1e\xa5\xe8\x9d\xda\x9d\x1a\xa6\x7b\x9e\x64\x9c\x1e\xcc\x9c\xa5"
+"\xa8\xa1\xde\xb8\xf7\x3c\x18\xa0\xda\xa5\xa8\xc9\x9b\x08\x0e\xfc\x15\xce\xfb\x8d\x15\xcd\xfa\x7a\x49\x06\x0e\xfb\x98\xf7\x71\xf9"
+"\x38\x15\xb1\x80\x9a\x78\x66\x1a\x7d\x84\x6e\x7c\x51\x1e\x89\x83\x8b\x8b\x82\x6a\x08\x6a\xfb\x15\x8b\x8b\x77\x1a\x6f\x9b\x79\xb2"
+"\x7a\x1e\x49\x7a\x73\x6f\x74\x37\x5e\xfb\x3c\x18\x76\x3c\x71\x6e\x4d\x7b\x88\x80\x18\xf7\x05\xb8\xad\xf5\xaa\x1f\xbb\xf7\x46\x9e"
+"\xd4\xa1\xa3\xcb\x9c\x19\x64\x99\x7e\x99\xa8\x1a\xa3\x97\xc0\xa1\xd7\x1e\xa1\xd6\x95\xb9\xa2\x1a\xc2\x6a\x9f\x2f\x8e\x1e\x0e\xfb"
+"\x0b\xf8\x94\xf7\xa8\x15\x55\xab\x05\x64\x73\x7a\x7f\x6c\x1b\x76\x77\x90\x94\x7a\x1f\xba\x32\x79\x91\x5f\x1b\x5d\x6f\x77\x4b\x5d"
+"\x1f\xc1\x6c\x05\xb1\xa4\x9c\x97\xa9\x1b\xa0\x9f\x86\x82\x9c\x1f\x5c\xe4\x9d\x85\xb7\x1b\xb1\xaf\xa0\xb3\xa8\x1f\x0e\xfb\xa3\xf7"
+"\x74\xf7\xb1\x15\x56\xfb\x24\x67\x31\x65\x39\x08\x6e\x4d\x82\x6d\x6b\x1a\x6a\x99\x7a\xa5\xaf\x9f\xac\xde\x99\x1e\x9e\xf7\x0a\x9b"
+"\xe1\xb0\xf7\x3a\x08\xa9\xf7\x54\x15\x6c\x72\x74\x6e\x6e\xa4\x73\xa9\xa6\xa4\xa3\xa6\xaa\x75\xa2\x6e\x1f\x0e\xf8\x32\xf8\xc4\x15"
+"\x6d\x06\x61\xfb\x0c\x57\x83\x72\x82\x66\x73\x19\x2e\x50\x51\x28\x26\x1a\x55\x9e\x5f\xac\x72\x1e\x9a\x7f\x99\x85\xa6\x85\x5b\xfb"
+"\x1c\x18\xaa\x06\xba\xf7\x19\x05\x8a\x90\x8c\x8b\x90\x1b\xd4\xc1\xaa\xd7\xc7\x1f\x7b\x95\x05\x4f\x53\x65\x76\x58\x1b\x81\x85\x8c"
+"\x8e\x83\x1f\xf7\x1d\xf8\x1b\x05\xa3\x8a\x96\x84\x7e\x1a\x87\x89\x86\x87\x82\x1e\xb8\x0a\xa6\xa1\x7f\xa1\x79\x99\x1e\x78\x99\x7b"
+"\x90\x68\x8e\x08\xfb\x3e\xfc\x23\x15\x70\xa2\x7f\xa9\xb8\x1a\xcb\xa0\xd3\xae\xc0\x1e\xae\xbf\xa8\xa1\xbe\x9a\x08\x0e\xf8\x20\xf7"
+"\xd3\x15\x92\xb5\x05\xfb\x0f\x06\xf7\x76\xb5\xa2\xc1\xc4\x1b\xa3\x97\x7e\x6c\x8f\x1f\x68\x90\x92\x82\xa3\x1b\xa4\x99\x99\xa6\xb8"
+"\x65\xaa\x54\x55\x59\x70\x5a\x65\x1f\x59\x4b\x76\x53\x77\xfb\x05\x08\xfb\x02\x06\x82\x61\x05\xf7\x05\x06\x72\xfb\x60\x05\x96\x63"
+"\x8a\x8b\x7c\x1b\x53\x65\x6f\x63\x64\xa5\x72\xb2\xae\xa1\x9a\xbb\xb2\x1f\x59\xcb\xaa\x7e\xbc\x1b\xce\xbd\xad\xca\xa4\x1f\x80\x94"
+"\x81\x84\x05\x77\x6f\x75\x84\x6e\x1b\x60\x5e\x96\xa6\x43\x1f\xb4\xe4\x91\x9b\xa5\xf7\x02\x08\xfb\x10\xfb\x8a\x15\x69\x7f\x6e\x74"
+"\x6d\x1b\x73\x78\x9b\xa0\xa6\xa1\x9d\xaa\xa0\x97\x86\x77\xa7\x1f\x0e\xfc\x81\xac\x0a\xf8\x5c\xf7\x4a\x15\x97\xb3\x05\xfb\x48\x06"
+"\xa3\xdd\x91\x93\x05\xf7\x3e\x06\x97\xb3\x05\xfb\x2b\x06\xf7\x49\xf7\x74\xab\xb3\x94\x92\xab\x99\x19\x9b\xfb\x51\x7b\x07\xbc\x85"
+"\x8b\x8b\x95\x85\x48\x1d\x6f\x5b\x48\xfb\x06\xfb\x17\x1e\x86\x85\x84\x84\x88\x86\x7e\x7c\x18\x7e\xb8\x89\x95\x7d\xb8\x08\x6f\xeb"
+"\x80\xb5\x9b\x1a\xa4\x96\x90\xcb\x91\x1e\x9b\xfb\x83\x7b\x07\xce\x82\x8f\x88\x9c\x55\xca\xfb\x6f\x18\xfb\x20\x06\x7f\x63\x05\xf7"
+"\x37\x06\x8e\x81\x74\x3b\x05\xfb\x38\x06\x7f\x63\x05\xf7\x39\x06\x70\x2f\x7a\x58\x6e\x78\x4c\x87\x19\x87\x7b\x05\xf7\xb1\x9b\x06"
+"\x35\x92\x85\x8e\xaa\x1a\xa1\x91\xa2\xa4\xdb\x1e\x0e\xf8\x56\xf8\x30\x15\xfb\x12\x06\x9d\xf7\x1f\x92\xae\x9c\xaa\x08\xa3\x97\x9d"
+"\x97\xa1\x1b\x97\x94\x86\x82\x88\x89\x87\x87\x84\x1f\x86\x82\x89\x86\x85\x1a\x76\x9e\x79\xa1\xa2\x9c\x9e\xa7\xb3\x68\xa8\x5c\x63"
+"\x66\x78\x65\x6d\x1e\x65\x5b\x77\x56\x78\xfb\x04\x08\xfb\x01\x06\x84\x6d\x05\xf7\x04\x06\x64\xfb\xeb\x7f\x25\x81\x5e\x7a\x71\x19"
+"\x7c\x81\x7b\x81\x7a\x1b\x7f\x82\x92\x94\x90\x8d\x8f\x8f\x92\x1f\x91\x94\x8d\x92\x91\x1a\xa0\x79\x9c\x75\x71\x79\x77\x6e\x64\xab"
+"\x70\xba\xe1\xce\xee\xf7\x36\xa1\x1e\xb5\xf7\xc3\x05\xf7\x0e\x06\x0e\xf7\x8d\xf8\x22\x15\x92\x79\x7a\x8f\x79\x1b\x51\x5b\x54\x47"
+"\x5c\xa3\x57\xba\x55\x1f\xd7\x34\x05\xb1\x5f\x97\x74\x6d\x1a\x56\x61\x66\x4f\x66\x69\x9c\x9f\x91\x8f\x90\x96\x91\x1e\x9f\x98\x92"
+"\x96\xa1\x1a\xa6\x7a\x9b\x6d\x68\x76\x76\x68\x4e\xc7\x5c\xd7\xe4\xce\xc6\xd9\xb3\x81\xa1\x56\xce\x1e\x8d\x8e\x05\x85\x97\x92\x8a"
+"\x99\x1b\xd2\xba\xbd\xd7\xb4\x7c\xb4\x71\xab\x1f\xfb\x0f\xf7\x2a\x05\x7a\xa0\x82\xa4\xa5\x1a\xbe\xae\xab\xc4\xad\xa5\x7d\x7a\x85"
+"\x87\x86\x82\x83\x1e\x7c\x7e\x85\x80\x7d\x1a\x71\x9e\x78\xa6\xab\x9f\xa0\xad\xc5\x55\xb4\x3f\x35\x4e\x57\x42\x5f\x9b\x69\xbe\x4d"
+"\x1e\x65\x7e\x15\xac\xae\x72\x58\xb2\x1f\xb6\x52\x99\x6e\x69\x1a\x64\x6e\x6b\x67\x51\x20\xf7\x16\xd2\xb0\xa8\xa8\xb0\x1e\x0e\xb0"
+"\xdd\x15\xb3\x63\xd8\xda\x05\x74\xac\xaa\x81\xb0\x1b\xb1\xaa\x95\xa2\xaa\x1f\xda\x3c\xb1\xb3\x3e\xd8\x05\xa2\xae\x94\xa8\xb1\x1a"
+"\xb1\x82\xa8\x74\xac\x1e\xd8\xd9\x65\xb2\x3c\x3e\x05\xa0\x6d\x6c\x95\x65\x1b\x65\x6d\x82\x75\x69\x1f\x3e\xd8\x63\x64\xd9\x3d\x05"
+"\x75\x6b\x81\x6d\x64\x1a\x65\x94\x6e\xa2\x69\x1e\xf7\x23\xf7\x72\x15\xca\xbf\x54\x49\x48\x57\x55\x4a\x49\x56\xc1\xcf\xce\xc0\xc0"
+"\xcf\x1f\x0e\xfc\x52\xf7\x2d\xf8\x39\x15\xc6\xf7\x13\xa8\xd4\x9b\x1a\x9b\x7d\x98\x79\x73\x72\x78\x75\x86\x1e\x85\x73\x82\x3d\x83"
+"\x25\x08\x0e\x23\xf7\xbc\xf9\x2e\x73\x0a\xf7\x5c\x9c\x15\x36\x5c\x5e\x54\x52\x1a\x63\xa4\x6c\xab\xa9\xa1\x9f\xa6\x9c\xbf\x0a\xa1"
+"\xa5\xc0\xae\x1e\x0e\xc0\xf7\x6c\x60\x0a\x71\x77\x52\x4b\x1e\x71\x74\x80\x83\x31\x45\x08\xf7\x36\x82\x15\x97\x79\xa1\x70\xac\x64"
+"\x94\x81\x92\x82\x90\x83\x08\x63\xa6\xa4\x6f\x94\x1b\x8f\x8e\x8e\x8f\x95\x72\xc2\x66\xcf\x1f\x88\x90\x83\x9c\x82\x9d\xa6\xa9\xa1"
+"\xa2\x9b\x99\x98\x97\x98\x98\x98\x98\x08\xaf\xb1\x9b\xa2\x98\x1a\x8f\x88\x8e\x88\x84\x72\x77\x52\x4a\x1e\x71\x74\x80\x83\x31\x45"
+"\x08\x0e\xfb\xdb\xbe\xf7\x6c\x60\x0a\x71\x77\x52\x4b\x1e\x71\x74\x80\x83\x31\x45\x08\x0e\xfb\xdb\xf7\xae\xf7\x74\x15\x7f\x9d\x75"
+"\xa6\x6a\xb2\x82\x95\x84\x94\x86\x93\x08\xb3\x70\x72\xa7\x82\x1b\x87\x88\x88\x87\x81\xa5\x54\xaf\x47\x1f\x8e\x86\x93\x7a\x94\x79"
+"\x70\x6d\x75\x74\x7b\x7d\x7e\x7f\x7e\x7e\x7e\x7e\x08\x67\x65\x7b\x74\x7e\x1a\x87\x8e\x88\x8e\x92\xa2\x9d\xc6\xce\x1e\xa5\xa2\x93"
+"\x91\xc4\xb8\x97\x93\x97\x95\x97\x94\x08\x0e\xf7\x18\xf8\x20\x15\x85\x7b\x76\x29\x63\xfb\x58\x6d\xfb\x28\x7f\x5e\x7a\x6b\x08\x6c"
+"\x79\x7a\x7e\x72\x1b\x7c\x86\x8e\x95\x8e\x8c\x8e\x8e\x90\x1f\x8f\x92\x8c\x8f\x90\x1a\xa0\x79\x9c\x76\x97\x0a\x90\x88\x84\x87\x8a"
+"\x89\x80\x61\x1f\x50\xfb\x68\x7c\x4e\x88\x0a\x93\xad\xf7\x15\xb1\xf7\x1e\x1f\x94\xac\x93\xa8\x90\x9c\x8c\x8f\x18\x8f\x9b\x8c\x92"
+"\x90\x1a\x86\x8e\x05\x87\x87\x8b\x89\x81\x1f\x87\x72\x70\x89\x6e\x1b\xfb\x2a\x06\xa9\xf4\x9a\xb3\x9f\xaa\x08\xb1\xa4\xa9\x9c\xb4"
+"\x1b\xa0\x98\x85\x81\x88\x8a\x89\x88\x87\x1f\x84\x84\x89\x86\x80\x1a\x72\x9b\x7a\xa4\xa4\x9c\x9c\xa4\xb5\x61\xa7\x4e\x53\x54\x73"
+"\x64\x68\x1e\x61\x5c\x77\x62\x6c\x25\x08\x34\x06\x84\x6b\x05\x0e\xf8\x0b\xf8\x20\x15\x83\x64\x88\x7e\x75\x39\x08\x69\xfb\x17\x7e"
+"\x4c\x70\x1a\x6c\x9e\x78\xa8\xb5\xa9\xa3\xdc\xc7\x1e\x7b\x94\x05\x57\x5e\x78\x7a\x7d\x1b\x85\x86\x90\x91\x9b\xe1\xf8\x00\xb4\xf7"
+"\x32\x1f\x9c\xca\x8f\x9d\x92\x8b\x0a\x76\x75\x8d\x79\x1b\x53\x53\x72\x61\x64\x1f\x60\x5c\x76\x62\x6d\x28\x08\x30\x06\x85\x6b\x05"
+"\xe4\xec\x1d\x6d\xfb\x06\x79\x6c\x08\x6c\x78\x7c\x80\x72\x1b\x7d\x85\x8f\x94\x8e\x2d\x1d\x92\x8c\x90\x90\x1a\x9f\x79\x9c\x75\x77"
+"\x7b\x7a\x74\x67\xab\x71\xb9\xe5\xd2\xf0\xf7\x51\xb5\x1e\xd0\xf7\xca\x05\x92\xab\x15\x90\x9f\x05\xf7\x26\xb0\xbc\xcd\xd3\xc9\x0a"
+"\x85\x83\x89\x85\x84\x1a\x86\x8c\x86\x8f\x84\x1e\x8f\x84\x8d\x85\x8a\x88\x8a\x88\x18\x67\xfb\x24\x05\x0e\xf8\x8d\xf7\x87\x15\xfc"
+"\x8b\x06\x83\x5d\x05\xf8\x8b\x06\x0e\xf7\x47\xfb\x33\x15\xbb\xf7\x66\x9c\xd2\xb1\xec\xa5\xb2\x19\x7e\xa2\x88\x9e\xb6\x1a\xab\x8d"
+"\x9b\x92\xae\x1e\xb7\xa0\x87\x7a\xb3\x1f\x83\x9e\x93\x89\x96\x1b\xa7\x9b\x9a\xa6\xa6\x7c\x98\x6b\x7c\x82\x89\x81\x74\x1f\x66\x7c"
+"\x80\x89\x61\x8a\x96\xbb\x92\x9e\xa8\xba\x08\x9e\xa7\x90\x99\x9d\x1a\xa8\x7c\x9b\x70\x6c\x7b\x77\x66\x81\x8c\x83\x8e\x7a\x1e\x8f"
+"\x78\x8c\x80\x80\x1a\x74\x89\x78\x83\x5f\x1e\x61\x8c\x80\x8d\x66\x9a\x08\x94\x75\x81\x8e\x7d\x1b\x6a\x7c\x7e\x70\x70\x9b\x7c\xa7"
+"\x96\x93\x8d\x94\x9f\x1f\x9b\xb2\x9b\x8f\xb4\x1b\x7e\x41\x75\x5c\x64\x60\x08\x86\x8b\x85\x8d\x7b\x1e\x8d\x78\x8c\x7f\x81\x1a\x56"
+"\x7e\x2e\x76\x21\x1e\x88\x7c\x83\x63\x82\x5d\x08\x0e\xf7\xae\xf8\x3f\x15\x78\x37\x77\x60\x66\x67\x08\x8c\x87\x8c\x88\x89\x1a\x96"
+"\x65\x8e\x7b\x78\x1a\x75\x87\x6c\x84\x6a\x1e\x71\x06\x78\x7e\x8e\x99\x6b\x1f\x95\x73\x7d\x8f\x7e\x1b\x6f\x77\x7a\x72\x73\x9d\x7b"
+"\xa6\x99\x95\x8d\x95\xa4\x1f\xb2\x9a\x98\x8d\xb2\x8c\x84\x5f\x84\x7a\x6e\x5c\x08\x77\x6d\x85\x7b\x79\x1a\x6f\x9b\x79\xa4\xa5\xa1"
+"\xa4\xa8\x91\x8a\x94\x89\x96\x1e\x87\xa2\x89\x9f\x9e\x1a\xa3\x8e\x9f\x92\xab\x1e\xb2\x8a\x97\x89\xb3\x7c\x08\x82\xa3\x96\x88\x97"
+"\x1b\xa8\x9d\x9b\xa3\xa3\x77\x9d\x6f\x7e\x7d\x87\x81\x73\x1f\x7e\x6b\x7e\x87\x78\x1b\x78\x06\x9e\xdf\x9f\xb6\xb0\xaf\x08\x7f\xb5"
+"\x87\x9e\xa1\x1a\xa1\x8f\xaa\x92\xab\x1e\xa5\x06\x9d\x99\x88\x7d\xab\x1f\x81\xa3\x98\x87\x99\x1b\xa7\x9f\x9c\xa4\xa3\x79\x9b\x70"
+"\x7d\x81\x88\x82\x72\x1f\x63\x7c\x7f\x89\x64\x8a\x92\xb7\x92\x9d\xa8\xba\x08\x9f\xa9\x91\x9b\x9d\x1a\xa6\x7a\x9d\x73\x71\x75\x72"
+"\x6e\x85\x8c\x82\x8d\x80\x1e\x8f\x74\x8d\x76\x7a\x1a\x75\x89\x78\x84\x67\x1e\x64\x8c\x7f\x8d\x63\x9a\x08\x94\x73\x80\x8e\x7e\x1b"
+"\x6f\x79\x7b\x73\x72\x9f\x7a\xa7\x99\x98\x8f\x95\xa3\x1f\x99\xab\x99\x8e\x9d\x1b\x0e\xfc\x2e\x46\x0a\xfb\x1d\xf8\xfc\x22\x0a\xfb"
+"\x95\x06\x25\x4e\x75\x55\x5e\x1f\x67\x60\x74\x47\x4c\x1a\x64\x9b\x6b\xa8\x76\x1e\xa7\x78\xa4\x84\xc2\x89\x7f\x5f\x84\x74\x80\x5e"
+"\x47\xfb\x94\x8b\x8b\x7e\x87\x7f\x85\x7b\x88\x5d\x87\x86\x76\x18\xf7\x28\x06\xf7\x5c\xf9\x87\x05\xc5\x06\xfb\x5c\xfd\x87\x05\xf7"
+"\x28\x06\x90\xa0\x05\x4c\x92\x82\x8e\x9b\x1a\x97\x8d\x96\x94\xa6\x1e\x8d\x92\x8d\x92\x8c\x1a\xf7\x30\xf8\xdd\x99\xbb\x92\x90\xd7"
+"\x90\x19\xfb\xf7\xfb\xdc\x15\x6f\x8e\x7e\x8f\x7f\x97\x08\x76\x9e\x7f\xaa\xac\x1a\xc9\xa7\xd7\xb1\xb4\x1e\xa7\xaa\xa7\x98\xb6\x8e"
+"\x08\x0e\xfb\xca\xf7\x5d\xf8\x5a\x15\x42\x51\x51\x42\x40\xc7\x4f\xd5\xd3\xc7\xc6\xd2\xd8\x50\xc6\x3f\x1f\x0e\xfb\xdb\xc0\xfb\x15"
+"\x33\x1d\x23\xcd\xfb\x15\x69\x0a\xf7\x6e\x7a\x37\x1d\xc3\xc3\x3e\x0a\x70\x79\x38\x1d\x70\x56\x68\x1e\x0e\x23\x80\x0a\xf7\x6e\x7a"
+"\x15\xe0\xba\xb8\xc2\xc4\x3e\x0a\x70\x79\x91\x81\x9e\x7a\x1e\x9a\x7d\x90\x83\x80\x1a\x71\x74\x6f\x57\x69\x1e\x0e\xf8\x53\xf7\x74"
+"\x15\x7f\x9d\x75\xa6\x6a\xb2\x82\x96\x84\x93\x86\x93\x08\xb4\x70\x72\xa6\x82\x1b\x87\x88\x88\x87\x81\xa5\x54\xaf\x47\x1f\x8e\x86"
+"\x93\x7a\x94\x79\x70\x6d\x75\x74\x7b\x7d\x7e\x7f\x7e\x7e\x7e\x7e\x08\x67\x65\x7b\x74\x7e\x1a\x87\x8e\x88\x8e\x92\xa2\x9d\xc6\xce"
+"\x1e\xa5\xa2\x93\x91\xc4\xb8\x97\x93\x97\x95\x97\x94\x08\xfb\x36\x94\x15\x7f\x9d\x75\xa6\x6a\xb2\x82\x95\x84\x94\x86\x93\x08\xb3"
+"\x70\x72\xa7\x82\x1b\x87\x88\x88\x87\x81\xa5\x54\xaf\x47\x1f\x8e\x86\x93\x7a\x94\x79\x70\x6d\x75\x74\x7b\x7d\x7e\x7f\x7e\x7e\x7e"
+"\x7e\x08\x67\x65\x7b\x74\x7e\x1a\x87\x8e\x88\x8e\x92\xa2\x9d\xc6\xce\x1e\xa5\xa2\x93\x91\xc4\xb8\x97\x93\x97\x95\x97\x94\x08\x0e"
+"\xf7\x79\xf7\x04\xef\x4c\x0a\xf7\xbd\x16\x6d\x72\x72\x6b\x6e\xa4\x72\xa7\xab\x36\x1d\xf7\xbd\x16\x6c\x73\x72\x6b\x6e\xa4\x72\xa7"
+"\xab\x36\x1d\x0e\xf7\xe8\xf8\xde\xf9\x56\x15\x5f\x06\x35\x33\x79\x80\x56\x1b\x5d\x77\x93\xaa\x66\x1f\xa1\x6f\x7f\x91\x75\x1b\x26"
+"\x2f\x26\xfb\x04\x3e\xbf\x4f\xce\xe4\xd8\xf7\x02\xf7\x13\x96\x8b\x8f\x88\x97\x1f\x8a\x92\x05\x7e\xb4\x8f\x8a\x9f\x1b\xc8\xac\x99"
+"\xb7\xb0\x1f\xfc\x1d\xfd\x27\x05\xb9\x06\xc4\xf9\x30\x15\x8f\x8a\x90\x88\x93\x83\x96\x80\x8f\x88\x92\x88\x08\xaa\x7b\x8f\x86\x69"
+"\x1a\xfb\x07\x4e\x29\x44\x66\x74\xaa\xba\x8d\x1e\x8e\xcb\xa6\xd3\xb0\xb7\x9b\x9f\xa5\x9f\x92\x8a\x08\xf7\xed\xfb\xd4\x15\x29\x2e"
+"\x26\xfb\x00\x65\x94\x6e\x9d\x72\x1f\x6e\xa1\xb1\x78\xad\x1b\xe1\xd8\xf7\x01\xf7\x0e\xd6\x69\xb6\x50\x1f\x94\x6f\x15\xae\xa5\x66"
+"\x58\x59\x78\x4e\x6e\x61\x1f\x68\x72\x6e\x79\x6a\x1b\x6a\x76\xa7\xb7\xb7\x9d\xcb\xa4\xb8\x1f\xb9\xa6\xa7\xa2\xa9\x1b\xf7\xf3\xa7"
+"\x15\x29\x2e\x26\xfb\x00\x64\x94\x6f\x9d\x72\x1f\x6e\xa1\xb1\x78\xad\x1b\xe1\xd8\xf7\x01\xf7\x0e\xd6\x69\xb6\x50\x1f\x94\x6f\x15"
+"\xae\xa5\x66\x58\x58\x78\x4f\x6e\x61\x1f\x68\x73\x6e\x79\x69\x1b\x6b\x75\xa7\xb3\xd1\xab\xe0\xb7\xba\x1f\x9a\x99\x9f\x94\x9d\x1b"
+"\x0e\xf7\xb0\xf7\xb1\x15\x84\x6e\x7d\x53\x6d\x65\x44\x52\x19\xfb\x06\x2e\x77\x70\x4e\x1a\x3d\xc5\x58\xe4\xde\xc5\xb8\xcb\xa9\x7c"
+"\x9d\x72\x74\x7b\x7d\x75\x84\x8d\x85\x90\x80\x1e\x91\x7e\x8d\x85\x83\x1a\x6d\x70\x79\x60\x58\x6e\xa9\xc1\xc0\xa1\xb5\xcc\xd2\x1e"
+"\xde\xea\x96\xa1\x9d\xee\x08\x99\xf7\x50\x15\x6e\x73\x73\x70\x6e\xa3\x74\xa8\xa9\xa2\xa2\xa8\xa8\x74\xa1\x6d\x1f\x0e\xfb\xdb\xf7"
+"\xac\xf8\x80\x28\x0a\xfb\xdb\xf7\x48\xa7\x1d\xfb\xdb\xf7\xbd\xf9\x29\x20\x0a\xfb\xdb\xf8\x23\xf9\x04\x15\x6a\x7f\x7f\x8e\x1d\xb0"
+"\xce\x99\x1f\x0e\xfb\xdb\xf8\x2f\xf8\xdb\x29\x1d\xfb\xdb\xf8\x19\xf9\x1e\x3e\x1d\xfb\xdb\xf7\x95\xf8\xf2\x24\x1d\x0e\xfb\xdb\xf7"
+"\x31\xf8\xf2\x23\x1d\xfb\xdb\xf7\x92\xf9\x57\xa4\x1d\x66\x6f\x58\x0a\x0e\xfb\xdb\xa0\x2b\x15\x94\x83\x05\x90\x99\x93\x8d\x95\x1b"
+"\xa6\x9e\x79\x71\x71\x78\x7c\x69\x76\x7a\x8f\x96\x6d\x3c\x0a\x82\x85\x8a\x89\x81\x1f\xb7\xcd\x05\x65\x06\x0e\xfb\xdb\xe8\xaa\x1d"
+"\x93\xfb\x34\x2b\x0a\xfb\xdb\xf7\x4b\x41\x15\x75\x70\x73\x81\x6b\x1b\x68\x73\xa0\xa9\xa9\x95\xa9\xa2\xae\x1f\x73\x06\x59\x65\x77"
+"\x6b\x5f\x1a\x57\xb6\x60\xbf\xbc\xb4\xa5\xbe\xae\x1e\x0e\xfb\xdb\xf8\x3e\xf9\x29\x21\x0a\xf7\x79\xcf\x1d\xf7\x79\x81\x0a\x7d\x89"
+"\x7d\x87\x73\x78\x0a\xaa\x88\x9d\x88\x91\x87\x08\x91\x88\x8e\x84\x83\x80\x1d\x0e\xfc\x14\xf7\xbf\xf9\x35\x15\x89\x89\x84\x6d\x05"
+"\xa3\x86\x77\x96\x69\x1b\x33\x26\x20\x2e\x5f\xa9\x71\xbb\xbc\xa6\x9e\xcf\xbd\x1f\x7d\x68\x88\x81\x7a\x1a\x7c\x97\x81\x9e\xa5\x99"
+"\x96\xc2\xbd\x1e\x84\x95\x05\x6d\x6e\x81\x82\x85\x1b\x89\x89\x8e\x8e\x9a\x9c\xcd\xb4\xf7\x25\x1f\x25\x7a\x15\x96\x8a\x93\x7b\x76"
+"\x1a\x6c\x76\x56\x70\x63\x1e\x67\x71\x70\x77\x73\x1b\x7c\x7d\x9e\xa0\xd5\xde\xf7\x02\xbf\x85\x1f\x0e\x23\xf8\xaf\xf7\x4d\x15\x68"
+"\x43\x70\x6b\x5f\x75\x08\x7a\x68\x62\x85\x37\x1b\x3c\x71\x93\xa5\x96\x96\xb7\xa6\xe8\x1f\x93\xa8\x90\x9f\xa0\xd5\xf7\x22\xde\x18"
+"\x99\xbc\xfb\x23\x36\xbc\xf7\x43\x4a\x0a\x87\x77\x84\x70\x1e\x53\xfb\x5c\x28\x50\x7e\x5b\xee\xc6\x55\xfb\x56\x79\x51\x84\x85\x53"
+"\x81\x19\x7b\xf8\x91\x07\xc5\xf7\x47\x05\x0e\xc9\xc3\x0a\x6d\x91\x67\x6a\x0a\x6e\x92\x6c\x64\x1a\x24\x5b\xfb\x29\x4b\x30\x1e\x3c"
+"\x55\x4d\x65\x44\x1b\x69\x74\x93\xa0\x74\x1f\x0e\xf7\xb0\xfa\x58\x22\x0a\xfc\x05\x06\xfb\x2c\x98\x05\xfb\x64\xfb\x4e\xfb\x65\xfb"
+"\x7c\xfb\x1a\xec\x28\xf7\x16\xa4\x9b\x8c\x8e\xc8\x1f\x8e\xbf\xa3\x8c\xad\x1b\xf7\xee\x06\xcc\xf7\x3a\x7b\x91\x05\xfb\x02\x3b\x50"
+"\x6e\xfb\x25\x1b\x52\x79\x94\xa6\x94\x8e\x9b\x93\xa9\x1f\x8c\x8d\x8c\x8e\x8d\x1a\x8d\x92\xbf\xf7\x52\xc9\x88\xda\x88\x9a\x82\x8c"
+"\x5c\x19\x89\x7b\x87\x71\x9f\x89\xcd\xf7\x7a\x79\x8f\x63\x31\x7e\x85\xfb\x31\x8c\x19\xcb\xf7\x77\x91\xa3\x94\x92\xa1\x8c\x19\xeb"
+"\x06\xf5\x88\x9b\x7c\x89\x28\x08\x9b\x06\xfc\x6f\xfb\xc4\x15\x76\x3f\x7e\x6c\x73\x6e\x08\x72\x77\x67\x7d\x60\x1b\x2b\x5b\xc7\xf7"
+"\x0a\xf7\x24\xce\xf7\x34\xe7\xd8\x1f\xad\xb3\xb8\x9c\xba\x1b\xc8\xb5\x6a\x5d\x7d\x8b\x8b\x77\x41\x1f\x0e\xfb\xf2\xf7\x9d\xf9\x38"
+"\x15\x26\x2a\x30\x2b\x59\xb1\x6a\xc6\xed\xef\xe9\xe7\xbc\x63\xae\x52\x1f\x84\x75\x15\xa0\x8a\x95\x7c\x6c\x1a\x57\x71\x4a\x67\x65"
+"\x1e\x7d\x7e\x78\x83\x7a\x1b\x74\x7c\x9d\xa7\xe0\xcb\xec\xc1\x87\x1f\x0e\x92\xb7\x1d\xf7\x00\xaa\xbb\x9d\xb0\x71\x0a\x6e\x1a\x35"
+"\x74\x0a\x0e\xfc\x12\x2f\x1d\x0e\xfc\x12\xf7\x65\xf8\x2e\x15\xd1\xf7\xa0\xed\x1d\xbd\x9d\x84\x7a\x82\x79\x43\x5c\xfb\x43\x1f\x43"
+"\x67\x7f\x5d\xd3\xaf\x82\x69\x84\x71\x86\x7b\x19\x76\x41\x05\x78\x45\x84\x6c\x79\x1a\x66\x9b\x78\xac\xbf\xad\xa7\xec\xcc\x1e\x7e"
+"\x94\x05\x38\x49\x83\x83\x76\x1b\x81\x86\x91\x98\x93\x8d\x97\x90\x9b\x0a\x70\x1d\x0e\x92\xf8\xe5\xf4\x15\x4f\x3d\x6e\x7c\x65\x1b"
+"\x5e\x6d\xad\xbe\xa0\x90\xac\x90\x9b\x1f\x8f\x97\x93\x8f\xa3\x8d\xb6\x8f\xd5\xa8\xb4\xa7\x08\xb6\xaa\xa5\xb3\xb2\x1a\xb5\x6d\xa4"
+"\x58\x54\x68\x79\x4d\x46\x1e\xbd\x79\x62\xa9\x56\x1b\xfb\x15\xfb\x25\xfb\x36\xfb\x24\x36\xc8\x4e\xdf\xbf\xae\x9c\xbd\xbe\x1f\x5d"
+"\xa3\xae\x75\xb8\x1b\xca\xc6\xab\xd5\xd6\x1f\xfb\xd4\xf7\xd8\x15\xaf\xa2\x71\x63\x69\x7f\x50\x76\x45\x1f\x7a\x50\x7c\x69\x76\x6d"
+"\x08\x64\x70\x70\x79\x6a\x1b\x62\x71\xad\xc4\xed\xb7\xf7\x08\xcb\xd0\x1f\xa2\xa1\xa3\x97\xa6\x1b\xf7\x00\xfb\x5f\x15\xa5\xdf\x9e"
+"\xaf\xb2\xb5\x08\xa4\xa2\xa4\x99\xa1\x1b\xa0\x98\x7c\x74\x69\x77\x66\x6a\x6d\x1f\x6c\x70\x7a\x83\x34\x70\x08\x0e\xf7\xde\xf8\x14"
+"\x15\x93\x8e\x05\xf7\x04\xb6\xb6\xb8\xd4\x1a\xda\x53\xbf\x38\xfb\x11\x3f\xfb\x00\xfb\x94\x51\x1e\x43\xfb\xd3\x05\xfb\x1b\x6d\x70"
+"\x5f\x59\x1b\x81\x84\x8e\x90\x8e\x8c\x8e\x8e\x8f\x1f\x90\x94\x8e\x95\x92\x1a\xa0\x7a\x9a\x74\x73\x7c\x7b\x71\x66\xaa\x72\xb9\xdc"
+"\xd0\xdc\xf7\x1e\xaf\x1e\xf7\x03\xf8\x3e\x05\xf7\x24\xb1\xbb\xd5\xc6\x1b\xb3\xa1\x6f\x58\x54\x7b\x56\x71\x6e\x1f\x70\x73\x66\x7b"
+"\x6a\x1b\x7e\x87\x88\x81\x81\x91\x87\x9f\x8a\x1f\xc2\x89\xa5\x68\x45\x1a\x47\x78\x3b\x6f\x58\x1e\x68\x77\x73\x78\x70\x1b\x81\x83"
+"\x91\x92\x8d\x8d\x90\x8d\x8f\x1f\x91\x95\x8d\x93\x94\x1a\xa3\x7c\x9b\x74\x70\x7a\x79\x6e\x64\xab\x70\xbb\xb9\xbc\xa0\xaf\xad\x1e"
+"\xbe\xc0\xac\xd9\xd0\x1a\xb9\x73\xba\x68\xa2\x1e\x78\x97\x7c\x90\x6c\x8f\x08\x0e\xfb\xfc\xf7\x74\xf7\xb3\x15\x65\x8c\x80\x8f\x9a"
+"\x1a\x94\x91\xa2\x98\xb5\x1e\xe2\xf7\xa6\x05\x8d\x92\x8c\x91\x8e\x1a\x8e\x89\x8d\x88\x1e\x88\x06\x88\x8a\x05\x82\x78\x87\x86\x71"
+"\x1f\x73\x86\x7a\x89\x6d\x86\x08\x78\x07\xad\x8c\x05\x98\x93\x85\x7f\x87\x8a\x84\x87\x81\x1f\x31\xfb\xb1\x85\x7c\x7f\x86\x5c\x86"
+"\x19\x7b\xf7\x49\x07\x0e\x9a\xf8\xa0\xf7\x00\x15\xcd\xf7\xaa\xfc\x8c\x49\xf8\x4a\x06\x0e\xf8\x79\xf8\x40\x15\x33\x06\x35\xfb\xcd"
+"\x05\x5d\x65\x5f\x73\x5f\x1b\x63\x72\xa4\xb4\x94\x8d\x9b\x8d\x93\x1f\xda\xf7\xb0\x05\x33\x06\x26\xfc\x0a\x84\x6f\x7f\x6c\x78\x62"
+"\x19\x69\x4e\x82\x71\x68\x1a\x6f\x95\x7e\xa2\xbd\xa5\xca\xf7\x0e\x8c\x1e\xb7\x8c\x98\x8f\xac\x1e\x95\x6b\x94\x7d\x9e\x7e\x08\x81"
+"\x9b\xa1\x84\xa1\x1b\xc2\xbc\xa6\xca\xc2\x1f\x87\x7c\x8a\x82\x80\x1a\x66\x9d\x79\xaf\xb3\xa4\x98\xb7\xb8\x1e\x8e\x94\x05\x77\x71"
+"\x7d\x85\x7a\x1b\x7b\x82\x94\x9c\x94\x8c\x8f\x92\xa2\x1f\x0e\xf7\xd4\xf7\xda\xf9\x0d\x15\xbd\x06\xae\x8a\x9f\x77\x97\x5c\x08\x9f"
+"\xe3\xfb\xed\x33\x9f\x06\x97\xba\x9f\x9f\xaf\x8c\x08\xbc\xfb\xca\x06\x68\x89\x85\x85\x87\x1e\x83\x86\x8b\x8b\x69\x87\x08\x77\xf7"
+"\x3f\x9f\x07\x69\x8f\x8b\xce\x0a\xf8\x3f\x3f\x15\x96\x06\xf7\x2e\xf7\xcc\x05\xfb\x80\x07\x69\x8a\x88\x87\x86\x1e\x85\x84\x87\x8a"
+"\x69\x87\x08\x77\xf7\x3e\x9f\x07\x6a\x8f\x8a\xce\x0a\xf7\x93\x07\xb2\x99\x98\xb5\x8e\x1e\x9f\x24\x07\xfb\x34\xfb\xc9\xfb\x2e\xf7"
+"\xc9\x05\xfb\x0d\x77\x06\xa9\x8a\xa5\x78\x98\x6d\x08\xfb\x8d\x07\x5b\x81\x7e\x61\x87\x1e\x77\xf7\x17\x9f\x07\x60\x8f\x81\x97\xbc"
+"\x1a\xf7\x73\x07\x0e\xc9\x5f\x0a\xe5\xf9\x0f\xe8\x1d\xae\x98\x0a\x92\x8e\x1a\x8e\x89\x8d\x88\x85\x73\x87\x85\x6d\x1e\x70\x86\x79"
+"\x88\x72\x87\x08\x78\x07\xaa\x8c\x05\x91\x06\x96\x92\x84\x80\x86\x8b\x8b\x86\x7b\x1f\x31\xfb\xb1\x85\x7c\x7f\x86\x5c\x86\x19\x7b"
+"\xf7\x49\x07\xf8\x84\xfb\x4c\x15\x7c\x70\x7f\x85\x65\x8a\x08\xfb\x00\x06\x89\x90\xf7\x06\xf7\x02\x05\xe2\xe0\x97\x9b\xae\x1a\xc3"
+"\x59\xb9\x4f\x69\x6a\x7f\x75\x71\x1e\x78\x7c\x81\x7c\x7d\x6a\x98\x83\x18\xb1\xa7\xa5\x9a\xa8\x1d\x9a\xe1\x16\xf8\x8c\xcd\xfc\x8c"
+"\x06\xf7\x6f\xf7\xae\x15\xfb\x6f\x49\xf7\x6f\xfb\x34\xcd\xf7\x34\xcb\x0a\x5a\xf7\x26\xf9\x11\x15\xc4\x84\x99\x83\x70\xa2\x1d\x97"
+"\x8d\x95\x95\xae\x1e\x9c\xc7\x05\x83\xa4\xa1\x89\xb5\x1b\xdf\xcf\x9c\xaa\xb6\xdd\x1d\x53\x06\x9f\xd8\x94\xa7\x98\x94\xb3\x90\x19"
+"\x9b\xfb\x82\x07\xf7\x20\xfb\x56\x15\xa0\x91\x97\x93\xa7\x1b\xb2\xb1\x82\x7c\x9f\x1f\xa5\x78\x96\x6e\x5b\xd7\x1d\x87\x8b\x90\x6d"
+"\x1f\x0e\xe5\x8d\x1d\xf7\x4d\xe5\x1d\x9f\x98\x0a\x91\x8f\x1a\x8e\x89\x8d\x88\x85\x73\x87\x85\x6d\x1e\x74\x87\x77\x87\x70\x87\x08"
+"\x78\x07\xa9\x8c\x05\x92\x06\x96\x92\x84\x80\x87\x8a\x88\x87\x7d\x1f\x31\xfb\xb1\x85\x7c\x7f\x86\x5c\x86\x19\x7b\xf7\x49\x07\x0e"
+"\x9a\xf7\x03\x1d\xf7\x90\xfb\x0c\x4c\x0a\xf8\x35\x04\xa1\x0a\xfc\x15\xf7\x0b\xfb\x2d\x15\xcc\xf8\x05\x4a\x06\xcc\xf8\x57\x15\x4a"
+"\xfb\xfa\xcc\x06\x0e\xfb\x98\xf7\x88\xf9\x38\x15\x3b\x4c\x4c\x3b\x3c\xca\x4b\xd9\xdd\xca\xc9\xdc\xdb\x4c\xca\x3b\x1f\x69\x04\xc4"
+"\xba\x59\x50\x4f\x5c\x5a\x51\x53\x5c\xbd\xc6\xc7\xba\xbc\xc4\x1f\x0e\xf7\x16\xfb\x52\x15\x5c\x7a\x93\xa2\x99\x9b\xd1\xa0\xdc\xee"
+"\x1d\xf7\x3c\xf7\x32\xda\x60\xba\x42\x4c\x56\x68\x42\x5d\x1f\x89\x8d\x95\xac\x9b\xc7\xcc\xf7\x8e\x19\x86\x90\x59\x82\x6e\x86\x42"
+"\x82\x19\x7a\x07\xc7\x89\x90\x88\x75\x1a\x82\x89\x80\x84\x74\x1e\x89\x85\x8a\x85\x89\x84\x84\x70\x80\x62\x59\xfb\x4a\x60\xfb\x35"
+"\x4c\xfb\x85\x83\x6b\xcc\x0a\x07\xf7\x4f\xf8\xef\x15\xb5\x9f\x6f\x52\x47\x6e\x36\x60\x4d\x1f\x50\x61\x5b\x6c\x57\x1b\x6f\x77\x9a"
+"\xa1\xad\xae\xf7\x16\xa9\xd6\x1f\xcf\xa6\xc1\xb9\xc1\x1b\x0e\xe5\x8d\x1d\xf7\x4e\xe5\x1d\x49\xf8\xfe\x9e\x0a\xaa\x8d\x8b\x88\x98"
+"\x1f\xb5\x80\xa4\x68\x5b\x1a\x56\x67\x63\x5b\x7f\x7f\x90\x99\x78\x1e\x96\x7a\x7e\x91\x83\x1b\x7a\x7e\x7f\x7b\x72\xa4\x7d\xbb\xf7"
+"\x00\xd8\xcc\xe7\xa5\x84\x9f\x7d\x9b\x1f\x82\x95\x8a\x8b\x6f\x99\x87\x8d\x18\xd8\xa6\xa3\xa0\xb2\x1a\xb6\x62\xac\x56\x5d\x63\x74"
+"\x65\x77\x1e\x0e\xfb\xfc\xf7\xb2\xf7\xfa\x15\x7c\x70\x7f\x85\x65\x8a\x08\xfb\x00\x06\x89\x90\xf7\x06\xf7\x02\x05\xe2\xdf\x97\x9c"
+"\xae\x1a\xc3\x59\xb8\x4e\x69\x6a\x7f\x76\x72\x1e\x78\x7b\x81\x7d\x7d\x6a\x98\x83\x18\xb2\xa9\xa3\x99\xa8\x1d\xef\xf7\x71\xf8\x84"
+"\x15\x94\x8a\x93\x8a\x92\x8a\x92\x8a\x91\x8a\x8e\x88\x08\x91\x88\x8d\x85\x6c\x1a\xfb\x83\x07\x6d\x89\x84\x85\x88\x1e\x84\x87\x89"
+"\x8a\x6c\x88\x08\x7c\xf7\x34\x9a\x07\x6b\x8e\x8a\x8c\x83\x8f\x08\x85\x8e\x8a\x91\xaa\x1a\xed\xba\x07\xa3\x67\x95\x7b\x9c\x6d\xb0"
+"\x4c\x99\x7c\x9d\x8a\x08\xca\x94\x06\x77\x9b\x73\xa5\x6c\xb5\x52\xd9\x18\xbf\xa0\xa6\xae\xba\x1a\xc3\x5f\xae\x45\x1e\xfb\x43\x06"
+"\xf7\x04\x78\x15\xb4\x06\xb9\xa2\x71\x57\x52\x73\x6b\x5f\x1f\x61\x06\xba\xf7\xe9\x15\xfb\x50\xfb\x2b\xfb\x2d\xfb\x52\xfb\x53\xf7"
+"\x2a\xfb\x2a\xf7\x53\xf7\x4e\xf7\x2b\xf7\x2a\xf7\x4f\xf7\x59\xfb\x26\xf7\x2a\xfb\x55\x1f\x8c\x61\x15\xf7\x31\xf7\x12\xfb\x1c\xfb"
+"\x3d\xfb\x33\xfb\x16\xfb\x1c\xfb\x2d\xfb\x2f\xfb\x16\xf7\x1c\xf7\x37\xf7\x38\xf7\x16\xf7\x1d\xf7\x2f\x1f\x0e\x9a\xf7\x03\x1d\x0e"
+"\xf7\xd8\xf8\xcb\x15\xb3\x57\xa1\x57\x95\x45\x89\x8a\x18\xab\x7a\x6e\x9c\x65\x1b\xfb\x1e\xfb\x25\xfb\x34\xfb\x2c\x34\xc3\x56\xe6"
+"\xf7\x31\xf7\x1c\xf7\x3f\xf7\x5b\xe8\x72\xce\x4e\xd4\x1f\xf0\xb8\x6b\xa7\x28\x60\x63\xac\x66\x9d\x5e\x95\x19\x68\x7a\xb5\x7a\xa5"
+"\x7a\xae\x6a\x19\xfb\x0f\x55\xac\x6e\x05\xf5\x2b\x15\xb6\xa7\x66\x52\x42\x6a\x27\x5e\x4a\x1f\x56\x67\xd4\x0a\xe3\xbc\xd2\x1f\xc4"
+"\xb2\xb5\xa8\xb6\x1b\x0e\x9a\xf7\xb5\xf7\x91\x15\xfb\x58\xfb\x59\xbb\x5b\xf7\x58\xf7\x59\xf7\x59\xfb\x59\xbb\xbb\xfb\x59\xf7\x59"
+"\xf7\x59\xf7\x58\x5b\xbb\xfb\x59\xfb\x59\xfb\x58\xf7\x59\x5b\x5b\x05\x0e\xfb\xfc\xf7\x29\xf8\xf4\x9e\x0a\xa8\x90\x8b\x88\x97\x1f"
+"\xb5\x80\xa4\x68\x5b\x1a\x56\x67\x63\x5b\x7f\x7f\x90\x99\x78\x1e\x96\x7a\x7e\x91\x83\x1b\x7a\x7e\x7f\x7b\x72\xa4\x7d\xbb\xf7\x00"
+"\xd8\xcc\xe7\xa5\x84\x9f\x7d\x9b\x1f\x82\x94\x8a\x8c\x6f\x99\x87\x8d\x18\xd8\xa6\xa3\xa0\xb2\x1a\xb6\x62\xac\x55\x5e\x63\x74\x65"
+"\x77\x1e\x0e\xef\xf8\xa5\xf7\x84\x15\x50\x6f\x68\x72\x52\x1b\x31\x58\xca\xf7\x04\xf7\x03\xbc\xc8\xe4\xc9\xae\x6e\x50\x95\x1f\x9b"
+"\xd0\x06\x94\x84\x92\x7d\x90\x1e\x87\x8c\x86\x8d\x05\x95\x6b\x71\x90\x6b\x1b\xfb\x15\x32\x39\xfb\x0a\xfb\x06\xdc\x42\xf7\x12\xb1"
+"\xa5\x8f\x9a\xbc\x1f\x99\x8f\x8e\x8d\x8d\x96\x9a\xcf\x18\xfb\x39\xf8\x3e\x15\xfb\x50\xfb\x2b\xfb\x2d\xfb\x52\xfb\x53\xf7\x2a\xfb"
+"\x2a\xf7\x53\xf7\x4e\xf7\x2b\xf7\x2a\xf7\x4f\xf7\x59\xfb\x26\xf7\x2a\xfb\x55\x1f\x8c\x61\x15\xf7\x31\xf7\x12\xfb\x1c\xfb\x3d\xfb"
+"\x33\xfb\x16\xfb\x1c\xfb\x2d\xfb\x2f\xfb\x16\xf7\x1c\xf7\x37\xf7\x38\xf7\x16\xf7\x1d\xf7\x2f\x1f\x0e\x5a\x26\x1d\x59\xf8\x50\xad"
+"\x1d\x5a\x26\x1d\xd3\xf8\xf7\x20\x0a\x5a\x26\x1d\x42\xf8\xc0\x23\x1d\x5a\x26\x1d\xc7\xf8\x4e\x28\x0a\x5a\x26\x1d\x9e\xf9\x16\x15"
+"\x55\x5e\x5e\x55\x97\x1d\x5a\x26\x1d\xf7\x3d\xf8\xd2\x15\x6a\x80\x7e\x80\x70\x1b\x7c\x7a\x3f\x0a\x72\x92\x74\x1b\x57\x6f\x6e\x3e"
+"\x77\x1f\xa8\x06\xab\x95\x9b\x9a\xa4\x1b\x9c\xa3\x84\x75\xc1\x1f\x81\xa5\x9e\x86\x97\xb2\x0a\x92\xf7\xa9\x7d\x15\x88\x9d\x9b\x8a"
+"\x9b\x1b\xf2\xdb\xb6\xf5\xe5\x94\x1d\x9d\x88\xb0\xf7\x5b\x05\x76\x63\x1d\x5f\x63\x91\x6a\x1b\xfb\x6a\xfb\x54\xfb\x5c\xfb\x73\xfb"
+"\x0e\xd0\x2c\xf7\x01\x6b\x1f\x53\x31\x2a\x0a\x99\x93\x57\x1d\xb5\xa1\x86\xa8\x44\x1d\x82\x85\x2c\x0a\x5a\x27\x1d\xfb\x9b\xf7\x62"
+"\x56\x1d\x5a\x27\x1d\xfb\x18\xf8\x09\x20\x0a\x5a\x27\x1d\xfb\xb2\xf7\xd2\x23\x1d\x5a\x27\x1d\xfb\x42\xf7\x60\x3a\x0a\xfb\xdb\x2c"
+"\x1d\xf7\x50\xf9\x46\xad\x1d\xfb\xdb\x2c\x1d\xf7\xed\xf9\xed\x20\x0a\xfb\xdb\x2c\x1d\xf7\x57\xf9\xb6\x24\x1d\xf7\x5c\x16\x6f\x75"
+"\x75\x71\x6f\xa0\x75\xa7\xa6\xa1\xa1\xa6\xa4\x74\xa3\x72\x1f\x0e\xfb\xdb\x2c\x1d\xf7\xde\xf9\x44\x3a\x0a\x92\x32\x0a\xfb\x20\xf7"
+"\x5b\x15\x6a\x80\x7e\x80\x70\x1b\x7c\x7a\x3f\x0a\x72\x92\x74\x1b\x57\x6f\x6e\x3e\x77\x1f\xa8\x06\xab\x95\x9b\x9a\xa4\x1b\x9c\xa3"
+"\x84\x75\xc1\x1f\x81\xa5\x9e\x86\x97\xb2\x0a\xc9\x26\x0a\x3f\x95\x0a\x0e\xc9\x26\x0a\xc0\xf7\x84\x15\x59\x06\xfb\x30\xb1\x0a\xc9"
+"\x26\x0a\x30\xf7\x4d\x15\x4d\x0a\xf7\x5c\x16\x4d\x0a\x0e\xc9\x26\x0a\xb2\xd2\x3a\x0a\xc9\x26\x0a\xf7\x1f\xf7\x5f\x15\x6a\x80\x7e"
+"\x80\x70\x1b\x7c\x7a\x90\x99\x6d\x1f\x9c\x65\x72\x92\x74\xf7\x00\x1d\x95\x9b\x9a\xa4\x1b\x9c\xa3\x84\x75\xc1\x1f\x81\xa5\x9e\x86"
+"\x98\x1b\xba\xac\xb0\xce\x99\x1f\x0e\x37\x0a\xd1\xf8\x26\x21\x0a\xc9\x27\x0a\xfb\xf9\xd0\xc4\x1d\x82\x82\x88\x84\x85\x1e\x0e\xc9"
+"\x27\x0a\xfb\x81\xf7\x80\x20\x0a\xc9\x27\x0a\xfc\x07\xf7\x49\x23\x1d\xc9\x27\x0a\xfb\x92\xce\x3a\x0a\x23\x2f\x0a\xf7\x72\xc0\x15"
+"\xae\x06\xf7\x3f\xf5\x05\x97\x93\x90\x93\x97\x1a\xa0\x7b\x9a\x76\x81\x83\x88\x84\x85\x1e\x0e\x23\x2f\x0a\xf7\x59\xf7\x39\x23\x1d"
+"\x23\x39\x0a\x51\xf7\x7e\x21\x0a\x25\x0a\x5e\xd6\x3b\x0a\x25\x0a\xd3\xf7\x86\x20\x0a\x25\x0a\x47\xf7\x4f\x23\x1d\x25\x0a\xc2\xd4"
+"\x28\x0a\x25\x0a\xa8\xf7\xb4\x15\x55\x5e\x5e\x55\x53\xb6\x5f\xc3\xc2\xb8\xb8\xc1\xc2\x5e\xb8\x54\x1f\x69\x04\xaf\xa9\x6e\x66\x66"
+"\x6e\x6f\x65\x67\x6f\x58\x0a\x0e\x25\x0a\xf7\x42\xf7\x61\x52\x1d\xfb\x6c\xf7\x3c\x80\x15\x93\x06\xd7\xc0\xa9\xd8\xc8\x1f\x7b\x95"
+"\x05\x50\x54\x64\x75\x5a\x1b\x52\x69\xb5\xd3\xe0\xae\xe5\xc3\xc5\x1f\xa9\xa8\xb3\x9d\xb3\x1b\xa2\x99\x83\x7f\x86\x89\x86\x87\x82"
+"\x1f\x84\x7e\x89\x85\x81\x1a\x73\x9a\x7d\xa3\xa7\x9f\x9e\xa5\xbb\x51\x0a\x3c\xaf\x59\xce\x7b\x1e\x53\x31\x2a\x0a\x99\x93\x57\x1d"
+"\xb4\xa2\x86\xa8\x44\x1d\x82\x85\x2c\x0a\xfb\x6c\x28\x1d\xf0\xf7\xb2\x2b\x0a\xfb\x6c\x28\x1d\xf7\x6e\xf8\x59\x20\x0a\xfb\x6c\x28"
+"\x1d\xcf\xf8\x22\x23\x1d\xfb\x6c\x28\x1d\xf7\x5c\xf7\xb0\x15\xab\x06\xfb\x08\xf7\x29\x05\x9b\x7e\x80\x92\x41\x1d\xfc\x12\x2f\x1d"
+"\x25\xf8\x1b\x15\xae\x06\xf7\x3f\xf5\x05\x97\x92\x90\x94\x97\x1a\x9f\x7b\x9b\x77\x81\x82\x87\x85\x85\x1e\x0e\xfc\x12\x2f\x1d\x90"
+"\xf8\xc2\x20\x0a\xfc\x12\xf4\xf8\xf2\x81\x1d\x38\xfc\x80\x7f\x1d\x0e\xfc\x12\x2f\x1d\x9d\xf8\x19\x28\x0a\x32\x1d\x71\xf8\x9c\x52"
+"\x1d\x92\x1d\x7f\x76\x15\xb6\xa7\x66\x52\x42\x6b\x27\x5e\x4a\x1f\x56\x66\xd4\x0a\xe2\xbc\xd3\x1f\xc4\xb2\xb5\xa8\xb6\x1b\x5a\xd5"
+"\x2b\x0a\x2b\x1d\xc4\xf7\x85\x20\x0a\x2b\x1d\x43\xf7\x4e\x23\x1d\x2b\x1d\xbe\xd3\x28\x0a\x2b\x1d\xf7\x2f\xf7\x60\x52\x1d\xfb\xa3"
+"\x31\x0a\xf8\x26\xf8\x97\x21\x0a\x73\x1d\xfb\x71\xf8\x16\x3b\x0a\x2a\x1d\xfb\x0b\xf8\xbd\x20\x0a\x73\x1d\xfb\x88\xf8\x86\x23\x1d"
+"\x2a\x1d\xfb\x03\xf8\x14\x28\x0a\xfb\x6c\x31\x1d\xf7\x71\xd8\xac\x1d\xfb\x6c\x31\x1d\xf7\x46\xf7\x51\x23\x1d\xfb\xa3\x33\x0a\xf8"
+"\x05\xf7\xf0\x21\x0a\xfb\xed\xf7\xa5\xf7\xf0\x15\x86\x85\x86\x85\x87\x85\x08\x77\x7b\x80\x81\x84\x1b\x88\x88\x8e\x8e\x8f\x8b\x8b"
+"\x93\xab\x1f\xad\xf7\x0e\x05\x8e\x98\x8d\x97\x95\x1a\xa2\x7a\x9b\x72\x67\x66\x6a\x3c\x56\x1e\xad\xf7\x01\x86\x8e\x72\x86\x6c\x85"
+"\x5f\x83\x19\x7c\x07\xab\x8a\x91\x89\x81\x1a\x8a\x82\x51\xfb\x67\x05\xbe\x06\xa6\xe5\x8e\x93\x9a\xa6\x08\xc9\xaf\xb3\xb6\xa2\x1b"
+"\x92\x8f\x86\x82\x85\x88\x79\x85\x77\x1f\x72\x2a\x05\x82\x6a\x8a\x85\x86\x1a\x72\x95\x80\xa0\xa8\x98\x95\xc7\xb8\x1e\x0e\x2d\xf7"
+"\x88\xf8\x40\x15\xf7\x32\xa8\xb0\xd1\xc3\x1b\x99\x93\x36\x0a\x87\x43\x1d\x9e\x9d\xa1\xb1\x66\xa6\x59\x5b\x64\x75\x5d\x67\x1e\x6d"
+"\x63\x77\x5d\x6d\x2b\x08\x2f\x06\x84\x6b\x05\xe5\x06\x33\xfc\x38\x05\x20\x75\x6a\x54\x61\x1b\x7f\x83\x92\x94\x8f\x2d\x1d\x91\x8c"
+"\x8f\x91\x52\x0a\x79\x74\x68\xad\x71\xb8\xe4\xd0\xed\xf7\x4d\x40\x0a\xf7\x2f\x06\x33\xfc\x38\x05\xfb\x00\x74\x6b\x55\x90\x1d\xf7"
+"\x01\x06\x91\xab\x05\xfb\x00\x06\x7a\x0a\x76\x5d\x6e\x2b\x08\x0e\xf7\x0a\xf7\x76\xf8\x40\x15\xf7\x32\xa8\xb0\xd1\xc3\x1b\x99\x93"
+"\x36\x0a\x87\x43\x1d\x9e\x9d\xa1\xb1\x66\xa6\x59\x5b\x64\x75\x5d\x67\x1e\x6d\x63\x77\x5d\x6d\x2b\x08\x2f\x06\x84\x6b\x05\xe5\x06"
+"\x33\xfc\x38\x05\x20\x75\x6a\x54\x61\x1b\x7f\x83\x92\x94\x8f\x2d\x1d\x91\x8c\x8f\x91\x52\x0a\x79\x74\x68\xad\x71\xb8\xe4\xd0\xed"
+"\xf7\x4d\x40\x0a\xf7\x45\x06\x86\x7e\x5f\xfb\x64\x6d\xfb\x2a\x08\xfb\x2e\x6d\x6f\x55\x5a\x1b\x7c\x86\x8e\x95\x8e\x8c\x8e\x8e\x90"
+"\x1f\x8f\x91\x8c\x90\x90\x1a\xa0\x7a\x9c\x75\x97\x0a\x91\x88\x84\x87\x8b\x8b\x7f\x5f\x1f\x4d\xfb\x70\x7e\x56\x88\x0a\x91\xdf\xf7"
+"\xcd\x97\xb2\x1f\x8e\x97\x8d\x94\x8f\x1a\x8b\x8b\x8c\x8a\x8d\x1e\x86\x8e\x05\x87\x87\x8b\x89\x81\x1f\x87\x72\x70\x89\x6e\x1b\xfb"
+"\x2a\x06\xa9\xf4\x9a\xb3\xa0\xaa\x08\xb1\xa4\xa8\x9c\xb4\x1b\xa0\x98\x85\x81\x88\x8a\x89\x88\x87\x1f\x84\x84\x89\x86\x80\x1a\x72"
+"\x9b\x7a\xa4\xa4\x9c\x9c\xa4\xb5\x61\xa7\x4e\x53\x54\x73\x64\x68\x1e\x61\x5c\x77\x62\x6c\x25\x08\x0e\xf7\x12\xf7\x7a\xf8\x40\x15"
+"\x7a\x0a\x77\x5d\x6d\x2b\x08\x2f\x06\x84\x6b\x05\xe5\x06\x33\xfc\x38\x05\x20\x75\x6a\x54\x90\x1d\xf7\x43\xec\x1d\x6e\xfb\x06\x78"
+"\x6c\x08\x6c\x78\x7c\x80\x72\x1b\x7d\x85\x8f\x94\x8e\x2d\x1d\x92\x8c\x90\x90\x1a\x9f\x79\x9c\x75\x77\x7b\x7a\x74\x66\xab\x72\xb9"
+"\xe6\xd1\xf0\xf7\x51\xb5\x1e\xd1\xf7\xca\x05\xf7\x3a\x06\x82\x64\x88\x7f\x76\x38\x08\x69\xfb\x17\x7e\x4d\x6f\x1a\x6d\x9e\x77\xa7"
+"\xb6\xa9\xa3\xdc\xc7\x1e\x7b\x94\x05\x55\x5d\x79\x7c\x7d\x1b\x85\x86\x90\x91\x9b\xe3\xf8\x0b\xb2\xf7\x27\x1f\x9a\xc7\x90\x9f\x93"
+"\x8b\x0a\x75\x76\x8d\x7a\x1b\x52\x53\x72\x61\x64\x1f\x60\x5c\x77\x62\x6c\x28\x08\xda\x16\x90\x9f\x05\xf7\x26\xaf\xbc\xcd\xd4\xc9"
+"\x0a\x86\x83\x88\x84\x85\x1a\x87\x8c\x86\x8f\x83\x1e\x8d\x85\x8d\x85\x87\x1a\x88\x07\x67\xfb\x24\x05\x0e\xe5\xf7\x85\xf7\xb7\x15"
+"\x64\x8c\x80\x8f\x9d\x1a\x93\x91\xa6\x95\xb0\x1e\xd6\xf7\xaa\x05\x8c\x91\x8c\x90\x8f\x1a\x8f\x89\x8d\x88\x86\x72\x87\x85\x6c\x1e"
+"\x6b\x85\x7c\x88\x74\x88\x8c\x78\x18\xab\x8c\x05\x91\x06\x96\x92\x83\x7f\x86\x8a\x87\x88\x80\x1f\x3d\xfb\xb4\x86\x7b\x7e\x86\x5c"
+"\x86\x19\x8c\x7b\x05\xf7\x4b\x06\xf8\x28\x5d\x15\xd0\xa2\xa6\xa7\xba\x1a\xc0\x5e\xaf\x48\x3f\x61\x1d\x2f\x68\x6d\x6c\x4f\x1a\x4b"
+"\xbd\x63\xdd\xe1\xc8\x5d\x1d\x5e\xb4\x82\x97\xa4\x1a\xad\xa4\xa1\xb0\xaf\xa3\x74\x67\x6b\x74\x72\x5e\x79\x1e\x62\x5a\x15\xc5\x58"
+"\x95\x7c\x69\x1a\x5d\x6b\x6d\x5c\x5b\x6d\xa7\xb7\xba\xa6\xab\xc9\xa4\x1e\xb8\xd8\x1d\xe5\xf7\x15\xf8\xfd\x15\xa7\xaa\x9b\x93\xa5"
+"\x1b\xa8\xa1\x74\x6d\x5d\x5b\x6c\x27\x79\x1f\x82\x98\x07\xcc\xb1\x66\x4c\x56\x67\x63\x5a\x80\x7e\x90\x99\x78\x1f\x97\x7a\x7e\x91"
+"\x82\x1b\x7a\x7e\x7f\x7a\x72\xa5\x7d\xbb\xf7\x01\xd8\xcc\xe8\xa6\x84\x9f\x7c\x9b\x1f\x82\x95\x8a\x8c\x6f\x99\x87\x8d\x18\xd8\xa7"
+"\xa3\xa0\xb2\x1a\xb7\x61\xad\x55\x5d\x63\x74\x64\x76\x1e\xf8\xa4\xfc\x1f\x15\xcf\xa2\xa7\xa7\xba\x1a\xc0\x5e\xaf\x48\x3f\x61\x1d"
+"\x2f\x68\x6d\x6c\x4f\x1a\x4a\xbd\x64\xdd\xe1\xc8\x5d\x1d\x5f\xb2\x81\x99\xa4\x1a\xad\xa4\xa1\xb0\xaf\xa3\x74\x67\x6b\x74\x72\x5e"
+"\x79\x1e\x61\x5a\x15\xc2\x5d\x99\x76\xaa\x0a\xc0\xf8\x77\x15\x57\x06\xfc\x42\xfd\x4b\x05\xbf\x06\x0e\xe5\xf7\x66\xf9\x0a\x15\xf7"
+"\x1c\x06\x9b\xc2\x05\xfb\x32\x06\x4c\xfb\x17\x05\x7f\x07\xb2\x82\x98\x88\x9a\x85\x08\xb6\x79\x9f\x6e\x5d\x1a\x4c\x5d\x53\x57\x7f"
+"\x81\x8f\x98\x7b\x1e\x97\x7c\x81\x8f\x81\x1b\x7b\x80\x80\x7b\x74\xa3\x7d\xb5\xee\xdb\xd8\xeb\xb0\x7d\xac\x71\xa3\x1f\x75\xa0\x77"
+"\x95\x5d\x96\x08\xf8\x5d\xfb\xfd\x15\xcf\xa2\xa7\xa7\xb9\x1a\xc1\x5e\xaf\x48\x3e\x61\x1d\x30\x68\x6d\x6c\x4f\x1a\x4b\xbd\x63\xdd"
+"\xe0\xc9\x5d\x1d\x5f\xb1\x80\x9b\xa3\x1a\xad\xa4\xa1\xb1\xaf\xa3\x74\x67\x6b\x75\x72\x5d\x79\x1e\x61\x5a\x15\xc2\x5c\x99\x77\xaa"
+"\x0a\xbd\xd8\x1d\xe5\xf7\xd1\xf8\xf9\x15\xfb\x55\xfb\xe6\xac\x7b\xf7\x79\xf8\x27\x05\xfb\x62\x06\x53\x2c\x05\xa1\x06\xa6\xb5\x92"
+"\x8e\xb8\x8c\x08\xf8\x2b\xbc\x15\xfc\x81\xfd\x2a\x05\xb9\x06\xf8\x81\xf9\x2a\x05\x67\xfc\x51\x15\xcb\xa4\xa9\xac\xb7\x1a\xba\x61"
+"\xae\x53\x4d\x55\x5e\x56\x6f\x98\x71\xac\x67\x1e\x40\x6d\x66\x62\x54\x1a\x56\xb9\x63\xc9\xcf\xc9\xc4\xc9\xae\x7b\xab\x67\xb0\x1e"
+"\x7c\x9a\x15\x62\xb5\x80\x9e\xa6\x1a\xae\xa1\xa0\xae\xaf\xa2\x76\x69\x64\x78\x72\x5e\x72\x1e\x61\x67\x15\xb9\x5e\x99\x73\x6c\x1a"
+"\x60\x67\x68\x5f\x64\x73\xa4\xb4\xbb\xa8\xb2\xc1\xa4\x1e\x0e\xf7\x79\x81\x0a\x7c\x89\x7d\x87\x74\x78\x0a\xc6\x86\x90\x88\x77\x80"
+"\x1d\xf7\x37\xf8\x35\x94\x0a\x5a\x26\x1d\xf7\x33\xf8\xec\x15\x4c\x72\x5a\x67\x4e\x1b\x4b\x64\xaf\xca\x86\x75\x0a\x5a\xf8\x07\xf7"
+"\x64\x7b\x1d\x5a\xf7\x48\xbd\x1d\x7a\x68\xfb\x0e\x7f\x1e\xf7\x4d\xfb\xc7\x7b\x1d\x5a\x26\x1d\xf7\x49\xf8\xa9\x29\x1d\x5a\xf8\x0a"
+"\xf7\x76\x15\xc7\x1d\xf7\x59\x07\x75\x6d\x85\x7b\x70\x1a\x56\xb5\x60\xc0\xbc\xb4\xa5\xbe\xae\x1e\x7a\x9d\x05\x74\x70\x73\x82\x6b"
+"\x1b\x66\x75\xa0\xaf\xa1\x90\x9b\x96\x96\x1f\x9b\x07\x52\x90\x85\x93\x7e\xd4\x2d\xf8\xca\x18\x71\x06\xfb\xb6\xfc\x88\x3c\xfb\x19"
+"\x81\x80\x63\x83\x19\x7b\xf7\x4f\x9b\x07\x58\x90\x83\x90\xa4\x1a\x9e\x8e\x94\x9c\xad\x1e\xc4\xf7\x05\x05\xa0\xaf\x15\xf7\x2a\xf7"
+"\x98\xb7\xfb\x98\x05\x0e\x5a\x26\x1d\x9e\xf8\xc8\x15\x55\x5e\x6c\x65\x63\xb6\x6c\xc4\xc1\xb9\xab\xb0\xb2\x5e\xab\x53\x1f\x73\x04"
+"\xb1\xa8\x76\x71\x72\x6e\x77\x65\x67\x6e\x9f\xa5\xa4\xa9\xa0\xae\x1f\x3a\xa9\x15\xae\x06\xf7\x3f\xd5\x05\x97\x91\x90\x90\x94\x1a"
+"\x99\x7b\x96\x76\x81\x83\x89\x86\x85\x1e\x0e\x5a\xf7\x3e\x23\x0a\x86\x7a\x05\xc4\x8a\x9f\x81\x6c\x4d\x1d\xfb\x0f\xfc\x5e\x79\x45"
+"\x78\x7b\x49\x8a\x19\x7d\x0a\x75\xb7\x6c\xa3\x1e\xa4\x6b\x5c\xca\x1d\x2c\x46\x4b\x22\x7f\x79\x8c\x8c\x78\x1f\x82\x68\x15\xa3\x06"
+"\xf0\xba\x66\x3b\x22\x3f\x42\xfb\x03\x76\x7e\x8d\x91\x6f\x1f\x0e\x92\x38\x0a\xfb\x6d\xf7\x82\x93\x0a\x92\x38\x0a\xa8\xf8\x29\x21"
+"\x0a\x92\xf9\x1f\x7d\x1d\x33\xf8\x29\x20\x0a\x92\x38\x0a\xfb\x23\xf7\xf2\x15\x4d\x0a\x0e\x5a\xd2\x1d\x70\x76\x7c\x67\x1e\x7a\x06"
+"\x85\x79\x05\xf7\x93\x29\x0a\x7e\x06\x5c\x8d\x7b\x9e\x74\xdf\x4c\xf7\x7c\x18\xf7\x33\xf7\x53\xca\xd6\xab\xa0\xc9\x8d\x19\x90\x9d"
+"\x05\xfb\x5d\x06\x85\x79\x05\x96\x06\xa3\x94\x85\x7b\x80\x87\x83\x76\x72\x1f\xfb\x26\xfb\x46\x60\xf7\x39\x05\x88\x95\x88\xa3\x93"
+"\x1a\xa3\x9f\x98\xae\x1e\x9a\x06\x91\x2e\x1d\x85\x79\x05\x9d\x06\xbd\x8a\x9d\x7a\xa1\x48\xd0\xfb\x8d\x18\xfb\x38\xfb\x5a\x05\x56"
+"\x61\x4c\x62\x67\x1b\x85\x55\x0a\x76\x06\x6c\x7b\x93\x9a\x93\x8f\x93\x99\x9c\x1f\x0e\xc9\x79\x1d\xf8\x41\xf9\x5b\x21\x0a\xc9\x5f"
+"\x0a\x92\xac\x16\xf8\xee\x06\xfb\xad\xf9\x44\x05\xfb\x8e\xfd\x11\x15\xf7\x69\xf8\x5e\xf7\x51\xfc\x5e\x05\x0e\x5a\x27\x1d\x5c\xf7"
+"\xfe\x15\x4c\x73\x59\x67\x4e\x1b\x4b\x63\xb0\xc9\x87\x5c\x1d\xa5\x94\xa0\x94\xb6\x08\x0e\x5a\x27\x1d\x8d\xf8\x09\x21\x0a\x5a\x27"
+"\x1d\xfb\x3b\xf7\xd2\x24\x1d\x0e\x5a\x27\x1d\x7e\xf7\xbb\x29\x1d\x91\xf8\x44\xc1\x15\x63\xfb\x0a\x7a\x5b\x7f\x71\x08\x6d\x7e\x77"
+"\x7b\x76\x54\x1d\xb5\xb1\x9e\xae\xa7\x1e\xa7\xae\xa4\xbf\x9a\xbe\xf7\x24\xf8\x8b\x18\xb0\xf7\x16\x8f\x90\xca\x99\x08\x9b\xfb\x5b"
+"\x7b\x07\xc4\x86\x98\x81\x67\x1a\x7f\x89\x80\x84\x76\x1e\x8a\x88\x8a\x87\x8a\x1a\x25\xfc\x10\xfb\x64\xf8\x87\x05\xfb\x35\x7b\x06"
+"\xba\x87\x9f\x7e\x9e\x64\xfb\x0b\xfc\x35\x18\x65\xfb\x14\x83\x7f\x52\x83\x08\x7b\xf7\x5a\x9b\x07\x57\x8f\x79\x96\xa7\x1a\x98\x8e"
+"\x9f\x91\xa0\x1e\xf7\x06\xf8\x3a\x05\x0e\x5a\xf8\xcc\xf7\x36\x15\x7b\x93\x5c\x4a\x71\x72\x60\x77\x19\x7a\x66\x47\x81\x3f\x1b\x53"
+"\x74\x95\xa3\x97\x97\xba\xa3\xe2\x1f\xab\xf7\x07\x05\x8a\x9b\x9a\x8a\x9b\x1b\xb9\x8a\xa7\x8a\xa3\x86\x92\x85\x19\x94\x84\x8d\x84"
+"\x77\x1a\x79\x89\x7f\x86\x75\x1e\x9f\x86\xcf\xf7\x7c\x79\x8f\x65\x36\x81\x84\x31\x88\x19\x7f\x6b\x8a\x8a\x68\x1f\xcd\xf7\x7d\x05"
+"\xa2\x91\x95\x8e\xc5\x1b\xf7\x30\xae\x7e\x4f\x7e\x8a\x7c\x8a\x7a\x1f\xa0\x89\xaa\xf7\x2d\x05\xfc\x85\x7b\x06\xc9\x85\x9a\x83\x70"
+"\x1a\x7f\x85\x6a\x86\x78\x1e\xfb\x0f\xfc\x4e\x7a\x52\x83\x84\x53\x81\x19\x7b\xf8\x60\x07\x76\x70\x84\x79\x6f\x1a\x56\xb5\x60\xc0"
+"\xb0\x0a\x69\x72\xa0\xa8\x98\x90\x9f\x94\xa2\x1f\x0e\x5a\xf7\x9d\xf7\xdf\x9a\x0a\x75\x3d\x6a\x73\x3d\x5e\x1d\xf3\x06\xf1\xb2\x73"
+"\x4d\x7f\x8a\x84\xd0\x1d\xa0\x9c\x8a\x89\x93\x1f\xa0\x86\x97\x7d\x78\xba\x0a\x78\x79\x50\x89\x20\x1d\xf8\x83\x06\xc7\xf7\x50\x05"
+"\x7b\x06\x75\x5a\x77\x72\x62\x1d\x35\x7e\x8f\xa3\x92\x8c\x91\x8f\x99\x1f\x0e\x9e\xe3\xf8\x56\x15\xbc\x06\xa4\xc2\x05\xa6\xc5\x9b"
+"\xbb\xa3\x1a\xa3\x7f\x98\x75\x5c\x79\x68\xfb\x0e\x7f\x1e\xf7\x90\xfb\x4c\x9a\x0a\x74\x3d\x6b\x73\x3d\x5e\x1d\xf3\x06\xf1\xb2\x73"
+"\x4d\x80\x8a\x83\xd0\x1d\x9f\x9d\x8a\x89\x93\x1f\xa0\x86\x97\x7d\x78\x1a\x7f\x89\x7d\x87\x7d\x1e\xfb\x0e\xfc\x5e\x7a\x48\x77\x79"
+"\x51\x89\x20\x1d\xf8\x83\x06\xc7\xf7\x50\x05\x7b\x06\x74\x5a\x78\x72\x62\x1d\x35\x7e\x8f\xa3\x92\x8c\x91\x8f\x99\x1f\x0e\xc9\x59"
+"\x0a\xf7\x18\xda\xf8\x56\x15\xbc\x06\xa5\xc2\x05\xa5\xc3\x9b\xbd\xa3\x1a\xa3\x7f\x98\x76\x5b\x7a\x69\xfb\x0f\x7f\x1e\xf7\x91\xfb"
+"\x4d\x6e\x1d\xf7\x9b\xf8\x29\x15\xf7\x2c\xbe\xf0\xf5\xe7\x1b\xc8\xad\x5e\x39\x77\x8a\x7d\x87\x77\x1f\x9d\x06\xc0\xf7\x67\x05\x78"
+"\x06\x79\x81\x7e\x80\x80\x1b\x85\x84\x8d\x90\x7e\x1f\x9f\x5a\x81\x8d\x6c\x1b\xfb\x13\xfb\x21\xfb\x0f\xfb\x39\x4c\x1f\x59\x06\x6c"
+"\x62\x05\xce\x06\x86\x7a\x87\x78\x86\x6f\x08\x57\x06\x6c\x62\x05\xda\x7b\x06\xfb\x24\xdd\x28\xf7\x0a\xce\xbd\xa1\xbb\xb5\x1e\x9c"
+"\xbc\x05\x4f\x5a\x5f\x72\x54\x1b\x38\x57\xd5\xf7\x0a\x96\x8b\x93\x8c\x99\x1f\xf7\x22\x06\xa9\xb4\x05\xfb\x3b\x06\x90\xa4\x8f\x9e"
+"\x91\x9f\x08\xf7\x5e\x06\xa9\xb4\x05\x0e\x30\x6b\x0a\xc9\x2e\x0a\x68\xf8\x21\x15\x4c\x72\x90\x0a\xb9\xa3\xb7\xad\x1f\x9f\xa6\x93"
+"\xa0\x95\xb5\x08\x0e\xbf\x2e\x0a\xfb\x01\xf8\x2c\x20\x0a\xc9\x2e\x0a\xfc\x55\xfd\x73\x30\x1d\xc9\x2e\x0a\xfb\x5c\xf7\xf5\x24\x1d"
+"\x0e\xc9\xf9\x36\xf8\x9e\x15\x96\xb4\x9c\xc5\x92\x91\xc5\x95\x19\x9b\xfb\x8b\x7b\x07\xc6\x83\x96\x84\x6f\x1a\x7b\x87\x77\x84\x71"
+"\x1e\x88\x81\x05\xfb\xb1\x06\x96\xb4\x9b\xbe\xa4\xaf\x0a\x7b\x87\x77\x84\x71\x1e\x88\x81\x05\x3f\x06\x81\x6d\x05\xd9\x06\xfb\x04"
+"\xfc\x26\x51\x1d\xf7\x05\xf8\x2e\x05\xd8\x06\x94\xa9\x05\xfc\x6a\x6d\x15\xf7\xb2\x06\x68\xfb\x10\x05\xfb\xb1\x06\x0e\xbf\xf8\xbb"
+"\xf9\xfd\xc0\x1d\xf7\x15\x58\x15\xfb\x8b\x7b\x06\xc5\x84\x97\x83\x6f\x57\x0a\x5d\xfb\x38\x05\xfb\xb1\x06\xc1\xf7\x57\x4a\x0a\x88"
+"\x77\x83\x70\xb7\x0a\x51\x1d\xf7\x18\xf8\x75\x9c\xc5\x93\x91\xc4\x95\x19\x0e\xe5\xf7\x91\x9d\x15\x73\x7f\x8d\x8e\x82\x1f\x7b\x91"
+"\x82\x98\x9c\x1a\x95\x8e\x9b\x8f\x9a\x1e\xf7\x17\xf8\x5d\x9f\xd4\x9e\x9a\xd3\x8a\x19\x90\x2e\x1d\x86\x79\x05\xa2\x98\x8a\x87\x94"
+"\x1f\x9b\x85\x94\x7e\x7a\x1a\x81\x88\x7b\x87\x7d\x1e\xfb\x17\xfc\x5e\x78\x46\x78\x7a\x60\x1d\xf7\xc9\xf9\x18\x15\xc6\x8c\x9e\x80"
+"\x6c\x4d\x1d\xfb\x14\xfc\x52\x05\x53\x7b\x6d\x68\x6c\x1b\x7a\x7f\x94\x99\x95\x8d\x8f\x97\x96\x1f\x95\x96\x8f\x94\x97\x1a\xa4\x77"
+"\x9f\x71\x68\x6f\x6b\x64\x57\xb6\x64\xc6\xb7\xbb\xa2\xb1\xb1\x1e\xa8\xa9\xa5\xbd\x9c\xc6\xf5\xf8\x04\x18\x9b\xcb\xa1\xa0\xbc\x8d"
+"\x90\x9d\x18\xfb\x91\x06\x0e\xfb\xdb\x2c\x1d\xf8\x49\xf9\xe2\x15\x4c\x72\x5a\xa1\x1d\xa6\x94\xa0\x94\xb5\x08\x0e\xfb\xdb\x2c\x1d"
+"\xf7\xc5\xf9\xb6\x24\x1d\x0e\xfb\xdb\x2c\x1d\xf8\x55\xf9\x9f\x29\x1d\xfb\xdb\xf7\x1d\x22\x0a\x7b\x07\xc6\x83\x96\x84\x6f\x9f\x0a"
+"\xf7\x56\x07\x75\x6c\x86\x7c\x70\x1a\x56\xa9\x0a\x6b\x1b\x66\x75\xa0\xaf\x9f\x90\x9a\x96\x99\x1f\x9b\x07\x52\x92\x80\x91\xa7\x1a"
+"\x9f\x8d\x95\x94\xac\x1e\xf7\x0f\xf8\x4f\x9d\xc5\x92\x91\xc4\x95\x19\x9b\x07\x0e\xfb\xdb\x42\x0a\xfb\xdb\xf7\x8e\x9d\x15\x35\x0a"
+"\xf7\x0f\xf8\x5d\x3f\x1d\x6d\xf9\xd2\x53\x1d\xfb\x96\xce\xf8\x56\x15\xbc\x06\xa5\xc2\x05\xa5\xc3\x9b\xbd\xa3\x1a\xa3\x7f\x98\x76"
+"\x5b\x7a\x69\xfb\x0f\x7f\x1e\xf7\x95\xfc\x85\x15\x35\x0a\xf7\x0f\xf8\x5d\x3f\x1d\x0e\xfb\xdb\x81\x16\xf7\x88\x9b\x06\xae\x1d\xfb"
+"\x8b\xab\x1d\xf8\x44\xf9\xbf\x15\x6a\x80\x7e\x80\x70\x1b\x7c\x7b\x90\x99\x6c\x1f\x9c\x66\x71\x92\x74\x1b\x57\x70\x6e\x3e\x76\xa3"
+"\x1d\xfb\x72\x6e\x0a\x58\xf7\x87\x20\x0a\x92\xf7\xa0\xf7\xf1\x15\xf7\x23\xfb\x8d\x05\x96\x78\x91\x7a\x7f\x1a\x76\x78\x81\x61\x88"
+"\x1e\x85\x79\x05\xf7\xa1\x06\x91\x9d\x4c\x89\x6d\xa3\x59\xe5\x19\xfb\x21\xf7\x93\xf7\x9c\xf7\x6b\xb6\xac\xa4\x95\xb3\x8c\x19\x91"
+"\x9d\x05\xfb\x5d\x22\x1d\xb9\x88\x8f\x89\x7e\x1a\x83\x8a\x89\x77\x91\x0a\xc3\x9f\x80\x6d\x80\x89\x7c\x87\x7d\x1f\xfb\x0f\xfc\x5e"
+"\xcd\x1d\x70\x7b\xc2\x1d\x92\x6f\x1d\xfc\xaf\xfe\x1f\x40\x1d\x23\x34\x0a\xfb\x03\xd0\x96\x0a\x0e\x53\xf8\x0e\xf8\x74\x15\x7b\xfc"
+"\x19\x82\x1d\x0e\x23\x34\x0a\xca\xfb\x5d\x15\xdf\xba\xb9\xc3\xc3\x48\x0a\x70\x74\x70\x57\x69\x1e\x0e\x23\x34\x0a\xfb\xa8\xfe\x1f"
+"\x30\x1d\x23\x34\x0a\x93\xfb\x98\x49\x0a\xf7\x41\xae\x0a\x88\x93\x8a\x96\x86\x19\x9a\x84\x95\x82\x83\x1a\x89\x8a\x87\x8a\x87\x1e"
+"\xfb\x19\xfc\x84\x7a\xd3\x1d\x70\x7c\xb6\x0a\x9b\x1a\x96\x8d\x9a\x8f\x9a\x1e\xf7\x10\xf8\x62\xc8\xfc\xc6\x05\x9d\x06\xf7\xfb\xf8"
+"\xaf\xfb\x0e\xfc\x46\x78\x46\x78\x7a\x4b\x8a\x20\x1d\xf7\x9f\x24\x0a\x72\x7d\x35\x1d\x9b\x1a\x98\x8d\x98\x8f\x9a\x4b\x1d\xd3\x9e"
+"\x9d\x9a\xd0\x21\x1d\xfb\x39\x06\x0e\x92\x32\x0a\xfb\xe8\xd0\x93\x0a\x92\x32\x0a\x2d\xf7\x80\x21\x0a\x92\x32\x0a\xfc\xb4\xfe\x1f"
+"\x40\x1d\x92\xf7\x97\xf8\xb0\x15\xf7\x69\xfc\xb8\x05\x9a\x06\xf7\x2b\xf8\xc9\x9d\xd0\x9d\x9b\xcb\x8d\x19\x8f\x9d\x05\xfb\x62\x22"
+"\x1d\xa4\x9a\x89\x88\x94\x1f\x9b\x85\x95\x7d\x7a\x1a\x81\x89\x7c\x87\x7c\x1e\x24\xfc\x13\xfb\x4f\xf8\x77\x05\xfb\x44\x06\x86\x7a"
+"\x05\x9f\x06\xb5\xa2\x7e\x69\xa1\x1f\xfb\x18\xfc\x81\x79\x45\x78\x7b\x4b\x8a\x19\x86\x55\x0a\x70\x7c\xc2\x1d\xc9\x26\x0a\xf7\x34"
+"\xf7\x79\x15\x4c\x72\x5a\xa1\x1d\xa5\x94\xa0\x94\xb6\x08\x0e\xc9\x26\x0a\xfb\x45\x95\x0a\x93\xfb\x34\x92\x0a\xc9\x26\x0a\xf7\x48"
+"\xf7\x36\x15\xfb\xc0\x46\x1d\xcd\xdf\xf8\x56\x15\xbc\x06\xa4\xc2\x05\xa7\xc6\x9a\xba\xa3\x1a\xa3\x7f\x98\x75\x5c\x79\x68\xfb\x0e"
+"\x7f\x1e\xf8\xd9\xfb\xf4\x15\x74\x4d\x6f\x75\x55\x88\x08\xfb\x03\x06\xcc\xb0\xb1\xa7\xb2\xb3\x08\xdf\xe2\xb7\xea\xea\x1a\xf7\x19"
+"\x3a\xdc\xfb\x19\x30\x3f\x6d\x4d\x4a\x1e\x3e\x42\x5f\x2b\x29\x1a\x2a\xb2\x3d\xdc\x4d\x1e\xfb\x0b\x06\x60\x7b\x98\xae\x95\x8c\x93"
+"\x8d\xa0\x1f\x77\x84\x7b\xfb\x30\x05\xf7\x76\x06\x9e\xd1\x05\x64\xb6\x7c\xb8\xd5\x1a\xd8\xa2\xf7\x01\xac\xda\x1e\xe2\xb0\xd1\xc1"
+"\xd7\x1b\xd7\xbb\x57\x39\x34\x6e\x21\x5b\x33\x1f\x68\x4c\x6d\x66\x4e\x56\x78\x45\x18\xf7\x77\x06\xcf\xf7\x31\x05\x0e\xc9\xf8\x6b"
+"\xf9\x34\x15\x38\x30\x5f\x40\x46\x1f\x34\x2e\x57\xfb\x0f\xfb\x04\x1a\xfb\x24\xe2\x30\xf7\x1d\xe1\xd2\xc2\x0a\xf7\x23\x32\xea\xfb"
+"\x1a\x1e\x85\x66\x15\xda\xba\x50\x28\x32\x68\xfb\x0d\x55\x25\x1f\x33\x5c\x47\x56\x47\x1b\x3f\x59\xc9\xe8\xf7\x05\xc3\xf7\x35\xd4"
+"\xee\x1f\xbf\xb1\xc1\xaa\xbe\x1b\x0e\xc9\xe0\xa9\x1d\xf8\x32\xf7\x31\x15\x37\x30\x5f\x40\x46\x1f\x34\x2d\x57\xfb\x0e\xfb\x05\x1a"
+"\xfb\x23\xe2\x30\xf7\x1e\xe0\xd3\xc2\x0a\xf7\x22\x31\xeb\xfb\x19\x1e\x85\x66\x15\xda\xba\x51\x27\x32\x68\xfb\x0e\x55\x26\x1f\x33"
+"\x5b\x47\x56\x48\x1b\x3e\x59\xc9\xe9\xf7\x04\xc3\xf7\x35\xd4\xee\x1f\xbf\xb1\xc2\xaa\xbe\x1b\x0e\xc9\xc3\x0a\x6e\x91\x66\x6a\x0a"
+"\x6d\x92\x6e\x63\x1a\x24\x5b\xfb\x28\x4b\x2f\x1e\x3c\x54\x4e\x65\x44\x1b\x69\x74\x93\xa0\x74\x1f\xf7\x70\xf9\x26\x56\x1d\xf0\xf9"
+"\x10\x6c\x1d\xc9\xf9\xb3\x23\x0a\xfd\x12\x22\x1d\xa3\x98\x89\x88\x94\x1f\x9b\x85\x95\x7d\x7a\x1a\x7e\x89\x7f\x87\x7c\x1e\xfb\x0e"
+"\xfc\x5d\x4b\x0a\x90\x9d\x05\x35\x0a\xf7\x0a\xf8\x4a\x9d\xd3\x9f\x9b\xd3\x8a\x19\xea\x06\xbe\xa0\x7e\x6e\x81\x89\x7d\x86\x7b\x1f"
+"\xfb\x09\xfc\x4a\x7a\x46\x78\x7a\xc4\x0a\x74\x7e\x8d\x8e\x82\x68\x1d\x98\x8d\x97\x8f\x9a\x1e\xf7\x0e\xf8\x5d\x05\xd4\x9e\x9e\x99"
+"\xd4\x1b\x0e\xb6\xf9\xc8\xf9\x1a\x15\xa0\x61\x79\x90\x75\x1b\x5c\x6c\x69\x41\x74\x1f\x6a\x20\x67\xfb\x02\x55\x56\x27\x76\x19\xd7"
+"\xf7\xb0\x9e\xd4\x9d\x9a\xd5\x8a\x19\x8f\x2e\x1d\x87\x79\x05\xa2\x99\x8a\x87\x94\x1f\x9b\x85\x95\x7d\x7a\x1a\x82\x89\x7b\x87\x7d"
+"\x1e\x3d\xfb\xb6\x05\x41\x9b\x6f\xaa\xce\x1a\xa4\x8e\xa8\x90\xa1\x1e\x9e\xdf\x05\x8f\x9d\x8d\x9f\x98\x1a\xb6\x71\xaa\x66\x73\x69"
+"\x7f\x7a\x70\x1e\x92\x76\x05\x91\x98\x90\x8c\x94\x1b\x99\x92\x84\x7d\x84\x8a\x86\x85\x6b\x1f\x7a\x3d\x05\x86\x73\x89\x77\x77\x1a"
+"\x4a\xb7\x4c\xcd\x6e\x1e\xa1\x81\x9f\x86\xad\x86\x65\xfb\x20\x18\x7a\x47\x78\x79\x4d\x8a\x86\x79\x18\xf7\x93\x24\x0a\x74\x7e\x35"
+"\x1d\x9b\x1a\x99\x8d\x97\x8f\x9a\x1e\xb1\xf7\x25\xf7\x3d\x9c\xed\xd4\xb0\xf7\x1e\x19\xa2\xdf\x05\xbf\x99\x9a\xa1\xa2\x1b\x93\x91"
+"\x8a\x86\x98\x1f\x0e\x5a\x3a\x1d\xd7\xf7\xe8\x56\x1d\x5a\x3a\x1d\xf7\xd6\xf8\x8f\x21\x0a\x5a\x3a\x1d\x33\xfd\x10\x40\x1d\x5a\xf7"
+"\xb9\xf7\xd8\x15\x81\xb2\x9b\x88\xaa\x1b\xf7\x26\xef\xdc\xf7\x0a\xe9\x3c\xc5\xfb\x14\x1f\xfb\x73\x22\x1d\xa4\x9a\x8a\x87\x95\x1f"
+"\x9b\x85\x95\x7d\x7b\x1a\x80\x89\x7c\x87\x7d\x1e\xfb\x0f\xfc\x5e\x7a\x45\x78\x7b\x4a\x8a\x20\x1d\xf7\xa3\x24\x0a\x6f\x7a\xb6\x0a"
+"\x9c\x1a\x94\x8d\x9b\x8f\x9a\xe4\x1d\xcd\xb3\x61\x47\x5d\x74\x56\x6a\x6d\x1f\x72\x6f\x63\x7d\x61\x1b\x77\x7e\x8d\x92\x72\x1f\x0e"
+"\x37\x0a\xfb\x4e\xf7\x7f\x92\x0a\xf7\x55\x7c\x15\x89\x9b\x93\x8a\x97\x9b\x1d\x6a\x8d\x48\x9d\x88\x18\x7c\x1d\x9a\x85\x92\x89\x98"
+"\x87\x54\x32\x18\x94\x83\x05\x90\x98\x93\x8d\x96\x4a\x1d\x75\x7b\x8f\x96\x6d\xc1\x0a\xaf\xbd\xb5\x6b\xa5\x59\x81\x85\x47\x1d\xfb"
+"\x3b\xf8\x6a\x5d\x0a\x69\x8d\x49\x08\x6b\xf8\x26\x20\x0a\x37\x0a\xfb\xf3\xfd\x79\x30\x1d\x49\xf8\xdd\xf9\x2b\x15\xfc\x73\x06\xf7"
+"\x12\xfb\xf0\xfb\xd2\xfb\xcf\x05\xf8\x9a\x06\xef\xf7\x3f\x6f\x94\x05\x39\x5a\x69\x7a\xfb\x09\x1b\xfb\x4f\x06\x6e\x81\x8f\x95\x92"
+"\x9e\xa4\xa6\xa6\x1f\xf7\x61\xf7\x63\x2a\xf7\x9d\x05\xf7\x39\x06\xee\xa9\x7a\x51\x7f\x8a\x7c\x8a\x7b\x1f\xab\x06\x0e\x23\xf8\x47"
+"\xf9\x02\x15\xec\x06\xc1\xa6\x74\x5c\x78\x89\x78\x86\x71\x1f\x9c\x06\xb9\xf7\x42\x05\xfc\xb3\x06\x5c\xfb\x42\x05\x9e\x06\x9e\xe6"
+"\xc8\xb9\xed\x88\x08\xca\x06\xfb\x1e\xfc\x99\x05\x42\x78\x78\x7d\x41\x1b\x87\x79\x05\xf7\xb6\x24\x0a\x81\x06\x6e\x7b\x8d\x8e\x81"
+"\x68\x1d\x95\x8d\x9a\x8f\x9a\x1e\x0e\x23\xf7\xed\xf7\xff\x15\xd2\xf7\x93\x05\xc2\x06\xd3\xab\x72\x53\x7e\x8a\x7c\x89\x7a\x1f\x9c"
+"\x89\xb7\xf7\x37\x05\xfc\xa8\x06\x61\xfb\x2e\x9d\x87\xc0\xf7\x00\xac\x9c\xf7\x2c\x89\x19\x45\xfb\x93\x05\x2a\x06\x83\x68\x05\xeb"
+"\x06\x4a\xfb\x82\x64\x1d\xf7\xb6\x9b\x07\x99\x0a\xc5\xf7\x64\x05\xf5\x06\x93\xae\x05\x0e\x23\x50\x1d\x76\xf8\x13\xbe\x1d\x23\xf7"
+"\x74\x16\xf7\x17\x9b\x06\x99\x0a\xf7\x1f\xf8\x86\x05\xc2\x06\xd3\xab\x72\x53\x7e\x8a\x7c\x89\x7a\x1f\x9c\x89\xb7\xf7\x37\x05\xfc"
+"\xa8\x06\x61\xfb\x2e\x9d\x87\xc0\xf7\x00\xac\x9c\xf7\x2c\x89\x19\xfb\x24\xfc\xa4\x64\x1d\xf7\x0d\x07\x50\x2c\x2a\x0a\x99\x93\x8d"
+"\x95\x4f\x0a\x7a\x8f\x96\x6d\xc1\x0a\xae\xbe\xb5\x6b\xa5\x59\x82\x85\x2c\x0a\xc9\xf8\xb6\xf8\x5d\x15\x7a\x06\x4f\x76\x77\x7e\x49"
+"\x1b\x69\x06\x58\x77\x97\xa8\x93\x8c\x97\x8d\x97\x1f\x7a\x06\x53\xfb\x6d\x05\x9c\x06\xa0\xc8\x9c\x97\xd2\x8c\x08\xab\x06\xc1\x9d"
+"\x81\x6e\x83\x8a\x7d\x88\x7e\x1f\x9c\x06\x87\xf8\x49\x15\xfb\x0c\xfb\x07\x5b\x39\x3e\x1f\x3d\x37\x58\xfb\x15\xfb\x09\x1a\xfb\x29"
+"\xe8\x36\xf7\x38\xf7\x0c\xf7\x01\xb9\xde\xd8\x1e\xdc\xe2\xbe\xf7\x16\xf7\x09\x1a\xd6\x72\xc7\x5c\xb1\x1e\xb0\x5d\x49\xa0\x45\x1b"
+"\x85\x6a\x15\xac\xb1\x81\x7c\xa3\x1f\xb3\x72\xa0\x5a\x48\x1a\x24\x65\xfb\x14\x51\x2c\x1e\x33\x56\x39\x5b\x29\x1b\x67\x66\x94\x9c"
+"\x70\x1f\x65\xa2\x77\xb9\xc9\x1a\xf7\x0d\xbf\xf7\x34\xcd\xdf\x1e\xd0\xc2\xd5\xb0\xdf\x1b\x0e\xbf\x63\x0a\xfb\x1d\xf7\x77\x3e\x1d"
+"\xc9\x27\x0a\xfc\x49\xd0\xb4\x1d\x85\x1e\x92\xfb\x34\x15\xaf\xb3\x1d\x0e\xc9\x27\x0a\xfb\x0b\xf7\x32\x15\xfb\xc1\x46\x1d\xc9\xf8"
+"\xca\x22\x0a\x7b\x07\xc0\x86\x9d\x80\x6d\x1a\x7b\x71\x27\x5b\xfb\x3f\x1e\x7e\x5a\x05\xfb\x38\x5f\x4b\x47\xfb\x02\x1b\x38\x52\xba"
+"\xd2\xae\xa7\xf7\x00\xd6\xf7\x9a\x1f\x9f\xd0\x9b\x99\xd0\x93\x44\x0a\xf7\x12\xba\xb1\x93\x9f\xb2\x1e\x72\x6f\x81\x71\x6c\xb1\x1d"
+"\xac\xaa\x94\xa2\xb3\xce\x1f\xaa\xc0\x99\xa9\x9a\xbe\xde\xf7\xb1\x18\xb1\xf7\x16\x8f\x90\xc9\x99\x08\x9b\x07\x0e\x23\x75\x1d\x0e"
+"\x23\x75\x1d\xa5\xf9\x6e\x53\x1d\x8b\xd2\xa9\x1d\xf8\x36\xfb\x60\x15\xf7\x37\xf7\x76\x05\xd5\xc0\xb9\xac\xc0\x21\x1d\xfb\x72\x06"
+"\x85\x79\x05\x9b\x06\xad\x9e\x81\x79\x80\x86\x81\x7a\x73\x1f\xfb\x2a\xfb\x6a\x4b\xf7\x6a\x05\x86\x9d\x89\x94\x92\x1a\xa6\xa0\x97"
+"\xb6\x1e\xa0\x06\x8f\x9d\x05\xfb\xaf\x22\x1d\xa0\x06\xb7\x8d\xa5\x75\x9c\xe9\x1d\x3f\x8c\x20\x1d\xf7\xb4\x29\x0a\x72\x7a\x8c\x8d"
+"\x82\x1f\x77\x90\x7e\x99\x9f\x1a\x98\x8d\x97\x8f\x9a\x1e\x0e\xc9\x27\x0a\xfb\xa8\xf7\xae\x15\x55\x5e\x5e\x55\x97\x1d\xc9\x63\x0a"
+"\xfb\x14\xf7\x58\x15\x69\x7f\x7f\x80\x6f\x1b\x7c\x7b\x3f\x0a\x71\x93\x75\xf7\x00\x1d\x94\x9b\x9a\xa4\x1b\x9d\xa3\x84\x75\xc0\x1f"
+"\x80\xa6\x9d\x86\x98\x1b\xba\xad\xb0\xcf\x99\x1f\x0e\xf7\x41\x30\x0a\xfc\x54\xd0\x94\x0a\xf7\x41\x30\x0a\xfb\xf2\xf7\x80\x20\x0a"
+"\xf7\x41\x30\x0a\xfc\x8d\xf7\x49\x23\x1d\xf7\x41\x30\x0a\xfc\x15\xce\x28\x0a\x76\xf8\xc7\xf7\x50\x15\x7b\x06\x66\x32\x5c\x69\x30"
+"\x8a\x08\x2f\x06\x30\x06\x3e\x69\xa7\xca\x94\x8c\x93\x8c\x9b\x1f\x7b\x06\x59\xfb\x50\x05\xf8\x87\x06\xf7\x33\x23\x0a\xfc\x67\x06"
+"\x5d\xfb\x3f\x05\x9c\x06\xa5\xda\xb2\xa4\xed\x89\x08\xf7\x36\x06\xe1\xa5\x7c\x57\x81\x8a\x83\x88\x7a\x1f\x9c\x06\x36\x73\x15\x7a"
+"\x06\x78\x4a\x6b\x77\x3d\x8d\x08\x52\x06\x5c\x7c\x8e\x98\x7d\x1f\x82\x93\x87\x95\x98\x1a\x94\x8c\x94\x8f\x9d\x1e\x79\x06\x4b\xfb"
+"\x85\x05\x9c\x06\x9d\xd0\xa5\x9e\xd6\x8c\x08\xdc\x06\xc3\xa1\x7e\x6a\x7f\x8a\x82\x85\x75\x1f\x9c\x06\x0e\x23\x2f\x0a\xf7\xf2\xf7"
+"\x70\x20\x0a\x23\x2f\x0a\xf7\xba\xbe\x15\xaa\x06\xfb\x08\xf7\x29\x05\x9c\x7e\x80\x91\x41\x1d\x23\x39\x0a\xfb\xce\xce\x15\xae\x06"
+"\xf7\x3f\xf5\x05\x96\x92\x90\x93\x98\x1a\xa0\x7b\x9a\x77\x65\x1d\x0e\x23\x39\x0a\xfb\x81\xf7\x47\x24\x1d\x0e\x23\xf7\x29\xb2\x15"
+"\xf8\x6f\xf9\x03\x05\xfc\x81\x06\x57\xfb\x30\x05\xa4\x06\xa9\xec\xb8\xa2\xf7\x31\x89\x08\xf7\x16\x06\xfc\x6f\xfd\x04\x05\xf8\x8b"
+"\x06\xc2\xf7\x46\x05\x76\x06\x6a\x20\x4c\x6a\xfb\x43\x8c\x08\x0e\x25\x0a\xf7\x37\xf7\x7b\x15\x4c\x73\x90\x0a\xba\x5a\x1d\x92\xb7"
+"\x1d\xf6\xaa\xbb\x9d\xb1\x71\x0a\x6d\x1a\x36\x74\x0a\x7d\xf7\xa3\x3b\x0a\xf7\x79\xcf\x1d\x5a\xf8\x07\xf7\x64\x15\x86\xfb\x09\x05"
+"\x50\x88\x80\x7d\x5c\x1b\x74\x25\x1d\xf7\x9c\x06\x90\x9d\x05\x73\x06\x5b\x7c\x97\xb4\x92\x8b\x8b\x8c\xa5\x1f\xa2\xf8\xc2\x05\x7a"
+"\x06\xfc\x2a\xfc\xcf\x5d\x4d\x7b\x7f\x68\x8c\x19\x7f\x25\x1d\xf7\x5a\x06\x8f\x9d\x05\x77\x06\x6e\x7c\x94\x9d\x91\x8f\x95\x91\x94"
+"\x1f\xeb\xf7\x1e\x05\xf7\x48\xaf\x15\xfb\x2f\x06\xf7\x39\xf7\x80\x05\x0e\x45\xf8\xea\x23\x0a\xfc\x4b\x66\x1d\x7e\xa4\x0a\xf7\xa4"
+"\x06\xf7\x37\xf7\x03\xdf\xf7\x0f\xf7\x00\x37\xcd\xfb\x1c\x79\x80\x8a\x88\x73\x1f\xcd\xf7\x8d\x05\xf7\x14\x06\xbf\xa6\x72\x5b\x76"
+"\x89\x79\x86\x71\x1f\x9c\x06\xfb\xba\xfb\x2b\x15\x91\xa0\x95\x8c\x9d\x1b\xe1\xb8\x5c\x32\x22\x43\x49\xfb\x08\x72\x7d\x8e\x95\x6d"
+"\x1f\x0e\x5a\xf7\x3e\x23\x0a\x86\x7a\xaa\x8a\x94\x8a\x96\x87\x19\x9b\x86\x95\x7d\x7a\x4d\x1d\xfb\x0f\xfc\x5e\x05\x45\x79\x78\x7a"
+"\x49\x1b\x7d\x0a\x76\xb7\x6b\xa3\x1e\xa4\x6a\x5d\xca\x1d\x2a\x46\x4d\xfb\x01\x7f\x81\x8b\x8d\x74\x1f\x82\x68\x15\xaa\x8c\x05\xe7"
+"\xbb\x63\x3f\x20\x3f\x42\xfb\x02\x76\x7e\x8d\x91\x6f\x1f\x0e\x30\x6b\x0a\x73\xf9\x60\x23\x0a\xfc\x8f\x25\x1d\x9b\x06\xb9\xa0\x7d"
+"\x6a\x6a\x7d\x40\x73\x2e\x1f\x65\xfb\x28\x62\x33\x47\x40\x08\x5e\x62\x78\x82\x58\x1b\x73\x06\x59\xfb\x4f\x05\x9d\x06\xf7\x15\xb8"
+"\xa8\xa6\xeb\x1b\xf7\xe4\x06\xbd\xa1\x75\x5a\x78\x8a\x80\x83\x65\x1f\x8a\x88\x8a\x85\x8a\x83\x08\x9d\x06\xbf\xf7\x4f\x05\x56\x06"
+"\x69\x7d\x94\xa0\x92\x8c\x93\x8e\x94\x1f\xf7\x13\xf8\x6f\x05\xd1\x9d\x9e\x99\xd3\x1b\xfb\x50\x79\x15\xfb\x32\xfc\xe2\x05\xfb\x98"
+"\x06\xe6\xd6\xc9\xf7\x12\xb5\xf7\x52\x9e\xe6\x99\xcd\x95\xb5\x08\x0e\x5a\x5e\x0a\x0e\x5a\x5e\x0a\xf7\x25\xf9\x76\x53\x1d\xf7\x94"
+"\xf8\x57\xf7\xfa\x15\x7f\x06\x2f\xf3\x4c\xf4\xbe\x1a\x9d\x99\x93\xa9\x1e\x9c\x24\x0a\xfb\x55\x06\x86\x79\xb4\x87\x9d\x78\xc9\x27"
+"\x19\xb1\x4d\x9a\x75\xb3\x54\xfb\xb9\xfb\xaf\x18\x58\x5b\x71\x7a\x5c\x7b\x86\x79\x18\xf7\x7c\x06\x8f\x9d\x05\x70\x8e\x84\x90\x99"
+"\x1a\x93\x8f\x90\x98\x97\x1e\x9b\x9a\xf7\x8b\xf7\x89\x05\x9d\x06\x57\xfb\x70\x7c\x46\x79\x7b\x4d\x89\x19\x87\x79\x05\xf7\x97\x06"
+"\x8f\x9d\x69\x8c\x80\x8d\x81\x92\x19\x7f\x93\x85\x97\x9c\x1a\x95\x8c\x93\x8f\x9c\x1e\xbf\xf7\x75\x05\x9e\x06\xf7\x06\xfb\x84\x05"
+"\x99\x6e\x8b\x8b\x83\x1a\x7a\x78\x7e\x6e\x1e\x87\x79\x05\xf7\x7b\x06\x90\x9d\x69\x8a\x6c\xa1\x76\xb4\x19\xfb\x28\xf7\xb8\xd9\xc9"
+"\xa9\xa4\xd2\xc9\x19\xf7\x05\xed\xaa\xa0\xb6\x8f\x90\x9d\x18\xfb\x56\x22\x1d\x9d\x06\xa1\x96\x87\x81\x78\x74\x73\x2b\x3c\x1f\x73"
+"\x77\x69\x6e\x6d\x71\x32\x40\x18\x7b\x06\xb9\xf7\x5b\x05\xd4\x9c\x9c\x99\xd5\x1b\x8f\x9d\x05\xfb\xa4\x25\x1d\xa6\x93\x8a\x87\x96"
+"\x1f\x9c\x85\x95\x7c\x77\x1a\x81\x89\x7d\x89\x80\x1e\x0e\xfb\x39\xf7\x28\xf8\x74\x15\xec\xa7\xbd\xbb\xd2\x1b\xcc\xb7\x5d\x48\x37"
+"\x42\x52\x20\x81\x84\x8b\x8d\x7b\x1f\x7f\x66\x05\x8c\x97\x90\x8b\x94\x1b\xe8\xc0\x5d\x3d\x29\x43\x44\x29\x3f\x58\xb0\xdb\x68\x1f"
+"\x73\x82\x9e\x5a\x97\x76\xa2\x71\x19\x5f\xb5\xc0\x75\xd0\x1b\xf7\x1f\xf2\xe4\xf7\x0c\x89\x1d\x0e\xc9\x4e\x1d\x0e\xc9\x4e\x1d\xf8"
+"\x0e\xf9\x53\xd1\x1d\x8e\x8d\x91\x8e\x91\x1e\x95\x9d\x8d\x90\x94\x1a\xa0\x7b\x99\x73\x6b\x75\x74\x69\x58\xbf\x6a\xda\xc7\xbd\x9d"
+"\xac\xaa\x1e\x9a\x9c\x95\xa0\x9b\x1a\xa1\x7a\x99\x72\x6f\x79\x78\x6c\x1e\x0e\x8f\x5a\x0a\x0e\x9c\xf8\xbf\xf9\x06\x15\xfb\x20\xfc"
+"\x9d\x79\x46\x78\x7b\x4e\x89\x20\x1d\xf7\x96\x06\x90\xb5\x0a\xf7\x0e\xf8\x5e\x05\xd3\x9e\x9d\x99\xd5\x21\x1d\xfc\x85\x25\x1d\x94"
+"\x06\xb9\xa5\x7c\x70\x68\x5c\xfb\x3f\x5e\xfb\x13\x1f\xfb\x14\x5d\x5d\x42\x68\x1b\x82\x84\x8e\x93\x7e\x1f\x99\x74\x83\x8e\x7b\x1b"
+"\x6b\x76\x78\x6e\x67\xa7\x75\xb9\xd5\xc0\xbd\xf7\x0d\xc3\x1f\xba\xf0\xac\xf4\xcd\xf7\x97\x08\x0e\xf7\x41\xae\x0a\x89\x93\x89\x96"
+"\x86\x19\x9a\x84\x95\x82\x83\x1a\x8a\x82\x05\x88\x84\x8a\x85\x8a\x1a\xfb\x15\xfc\x77\x79\xd3\x1d\x69\x7e\x8d\x90\x81\x1f\x7e\x91"
+"\x83\x99\x9b\x1a\x96\x8d\x95\x8f\x9d\x1e\xf7\x10\xf8\x62\xc8\xfc\xc6\x05\x9d\x06\xf7\xf3\xf8\xa0\xfb\x04\xfc\x37\x78\x46\x77\x7a"
+"\x4a\x8a\x20\x1d\xf7\x9f\x24\x0a\x53\x8c\x79\x95\xab\x1a\x95\x8d\x9a\x8f\x99\x4b\x1d\xd2\x9d\x9f\x9b\xcf\x21\x1d\xfb\x39\x06\x0e"
+"\xc9\x59\x0a\xc9\xf8\x6a\xf9\x33\x15\x37\x31\x5f\x42\x46\x1f\x37\x31\x55\xfb\x11\x21\x1a\xfb\x2e\xe0\x32\xf7\x25\xdb\xd5\xab\xc6"
+"\xc7\x1e\xec\xec\xcb\xf7\x1f\xf7\x08\x1a\xf7\x23\x31\xea\xfb\x1a\x1e\x85\x65\x15\xdb\xba\x50\x28\x35\x68\xfb\x0d\x56\x26\x1f\x33"
+"\x5c\x46\x55\x49\x1b\x3a\x5b\xc8\xf2\xf3\xc5\xf7\x37\xd1\xea\x1f\xbe\xb1\xc1\xaa\xbf\x1b\x0e\xc9\xf7\xdd\xf9\x06\x15\xf7\xa7\x06"
+"\xfb\x20\xfc\x9d\x7a\x46\xf0\x1d\x91\x9d\x05\x54\x8c\x7a\x96\xaa\x1a\x96\x8d\x95\x8f\x9d\x1e\xf7\x0f\xf8\x5e\x05\xd3\x9e\x9d\x99"
+"\xd4\x21\x1d\xfd\x17\x76\x0a\x0e\x5a\xf7\xa1\xf7\xd8\x15\x81\xb1\x9c\x88\xaa\x1b\xf7\x25\xef\xdc\xf7\x0a\xc3\x6b\xbb\x56\xa4\x1f"
+"\x9d\x66\x6b\x90\x42\x1b\xfb\x5f\x22\x1d\xa9\x94\x8a\x87\x96\x1f\x9b\x86\x95\x7c\x79\x1a\x80\x89\x80\x87\x7b\x1e\xfb\x0f\xfc\x5e"
+"\x7a\x45\x77\x7b\x4b\x8a\x20\x1d\xf7\xa2\x29\x0a\x6a\x82\x8c\x8f\x7f\x1f\x7b\x91\x81\x99\x9e\x1a\x95\x8d\x9a\x8f\x98\xe4\x1d\xc9"
+"\xb5\x60\x4a\x2a\x44\x42\x2d\x77\x7e\x8d\x92\x72\x1f\x0e\x92\xf9\x30\xf8\x6c\x15\xaf\xf7\x5d\x05\x75\x63\x1d\x5d\x64\x91\x69\x1b"
+"\xfb\x6c\xfb\x54\xfb\x5d\xfb\x74\xfb\x31\xf7\x03\xfb\x03\xf7\x31\xf3\xdb\xb7\xf6\xe6\x1f\x79\x99\x05\x31\x30\x52\x6e\x37\x1b\xfb"
+"\x06\x4a\xd9\xf7\x1a\xf7\x0b\xba\xad\x0a\xce\x1b\xe9\xbf\x54\xfb\x00\x96\x1f\x0e\x23\xf8\x49\xf9\x06\x15\xe5\x06\xc5\xa7\x75\x5c"
+"\x75\x89\x77\x86\x70\xc6\x1d\xe9\xc8\xba\xed\x88\x08\xcb\x06\xfb\x20\xfc\x9d\x05\x42\x78\x79\x7d\x41\x1b\x86\x79\x05\xf7\xb7\x06"
+"\x8f\x9d\x05\x6f\x82\x8b\x8c\x83\x1f\x6d\x8f\x7c\x98\xa3\x1a\x96\x8d\x97\x8f\x9c\x1e\x0e\x98\xf7\x23\xf9\x2a\x61\x0a\xf7\x24\xf9"
+"\x26\x6c\x1d\x5a\xd2\x1d\x71\x76\x7b\x67\x1e\x7a\x06\x85\x79\x05\xf7\x93\x29\x0a\x7d\x06\x5d\x8d\x7b\x9e\x74\xdf\x4c\xf7\x7c\x18"
+"\xf7\x33\xf7\x53\xca\xd6\xab\x9f\xc9\x8e\x19\x90\x9d\x05\xfb\x5d\x06\x85\x79\x05\x96\x06\xa3\x94\x85\x7b\x7f\x85\x80\x7a\x76\x1f"
+"\xfb\x28\xfb\x46\x60\xf7\x39\x05\x89\x95\x87\xa4\x93\x1a\xa2\x9f\x98\xae\x1e\x9a\x06\x91\x2e\x1d\x85\x79\x05\x9d\x06\xbd\x8a\x9d"
+"\x7a\xa1\x48\xd0\xfb\x8d\x18\xfb\x38\xfb\x5a\x05\x56\x61\x4c\x62\x67\x1b\x85\x55\x0a\x76\x06\x6c\x7b\x93\x9a\x93\x8f\x92\x99\x9d"
+"\x1f\x0e\xc9\xf8\xa3\x23\x0a\x87\x67\x1d\x78\x1a\x80\x89\x82\x87\x7a\x1e\xfb\x21\xfc\xa3\x05\xfb\xa7\x06\x96\x1d\xfc\x60\x7a\x48"
+"\x77\x49\x1d\xf8\x90\x06\xb5\x94\x8a\x82\x9a\x1f\x9d\x81\x94\x78\x6e\x1a\x70\x87\x72\x82\x67\x1e\x9d\x06\xc0\xf7\x4f\x05\x48\x06"
+"\x77\x80\x96\x9e\x93\x8d\x95\x90\x9e\x1f\xf7\x0f\xf8\x5f\xf1\x1d\x0e\xa8\xf8\x42\xf4\x15\x79\x47\x78\x79\x4c\x8a\x86\x79\x18\xf7"
+"\x97\x06\x90\x9d\x70\xf4\x1d\x9d\x1a\x96\x8d\x98\x8f\x9a\x77\x1d\x0e\xf8\x13\xf7\x6b\xaf\x15\x8c\x1d\xf9\xfc\xb3\x0a\x9c\x1a\x96"
+"\x8d\x99\x8f\x99\x1e\xf7\x0e\xf8\x5e\x05\xd4\x9e\x9d\x99\xd5\x34\x1d\xc1\x8a\x9d\x81\x6b\x1a\x80\x89\x7f\x87\x7c\x1e\xfb\x21\xfc"
+"\xa3\x05\xfb\x67\x06\xf7\x20\xf8\x9d\x05\xd4\x9e\x9d\x8a\x0a\x6b\x1a\x7f\x89\x80\x87\x7c\x1e\xfb\x21\xfc\xa3\x05\x0e\xf8\x13\xfa"
+"\x08\xfb\x30\x15\xc0\xf7\x4f\x05\x56\x06\x68\x81\x91\xa1\x92\x8d\x95\x8e\x97\x1f\xf7\x11\xf8\x69\x05\xa0\x0a\x6b\x1a\x7e\x8a\x88"
+"\x85\x75\x1e\xfb\x20\xfc\xa3\x05\xfb\x67\x06\xf7\x20\xf8\x9d\x05\xd4\x9e\x9d\x8a\x0a\x6b\x1a\x7f\x89\x80\x87\x7c\x1e\xfb\x21\xfc"
+"\xa3\x05\xfb\x67\x06\x8c\x1d\xf9\x98\x06\xbb\xa3\x75\x60\x70\x87\x6d\x82\x69\x1f\x0e\x9b\xf8\x9a\x23\x0a\xfc\x14\x06\x61\xfb\x36"
+"\x05\x9b\x06\xe1\xa9\xbb\xb3\xd6\x1b\xcb\x06\xfb\x20\xfc\x9e\x7a\x47\xf0\x1d\xdf\xc9\x98\xa8\xbc\x1f\xca\xb1\xaf\xc7\xc5\x0a\x76"
+"\x1e\xba\xf7\x45\x05\xd3\x9e\x9c\x99\xd5\x1b\xfb\x3b\xfb\xc0\x15\x8c\x98\x93\x8c\x97\x1b\xef\xbe\x60\x35\x20\x38\x42\xfb\x0c\x77"
+"\x7e\x8c\x90\x6f\x1f\x0e\xf7\x68\xf7\xd0\x70\x0a\x93\x8c\x96\xa8\x0a\xf8\xf4\x72\x15\x54\x8c\x7a\x96\xaa\x1a\x95\x8d\x98\x8f\x9b"
+"\x1e\xf7\x0f\xf8\x5d\x05\xd4\x9d\x9e\x99\xd4\x21\x1d\xfb\xa4\x06\x86\x67\x1d\x7a\x1a\x80\x89\x7b\x87\x7f\x55\x1d\x0e\x45\xf7\xcd"
+"\x70\x0a\x92\x8c\x97\xa8\x0a\x0e\x86\xf7\x3d\xf8\x6d\x15\x9d\x06\xa3\xc0\x99\xa2\xa4\xa4\x08\xb2\xb2\xbb\xa0\xc0\x1b\xe7\xc0\x4d"
+"\xfb\x00\x67\x87\x71\x82\x66\x1f\xfb\x1b\x06\x50\x79\x96\xb2\x97\x8d\x95\x90\xa2\x1f\x79\x06\x4f\xfb\x7e\x05\x9b\x06\x99\xd5\xb9"
+"\xab\xe5\x8a\x08\xf6\x06\x66\x23\x72\x5e\x5a\x54\x08\x52\x59\x4f\x6d\x4d\x1b\x3b\x55\xb8\xea\x67\x1f\x72\x81\x9f\x50\x99\x72\xa5"
+"\x6d\x19\x60\xb2\xbe\x74\xc6\x1b\xf7\x5d\xf7\x50\xf7\x6a\xf7\x79\xf7\x23\x35\xe9\xfb\x15\x5f\x6d\x84\x76\x50\x1f\x87\x7f\x7f\x88"
+"\x83\x1b\x7e\x82\x96\x99\x1f\x95\x7b\x07\x0e\xf8\x08\xf8\x39\xf7\xdf\x15\x80\x63\x87\x6c\x6a\x1a\xfb\x26\xe2\x30\xf7\x1e\xf2\xdf"
+"\xb7\xea\xd6\x1e\xd5\xe8\xb7\xf7\x04\xea\x1a\xf7\x1f\x32\xec\xfb\x15\xfb\x2c\xfb\x24\xfb\x0b\xfb\x47\x4a\x1e\xfb\x27\x91\x1d\x79"
+"\x4e\x8a\xe3\x1d\x8b\x80\x8f\x19\x7b\x91\x81\x99\x9c\x1a\x97\x8c\x94\x90\x9e\x1e\xc9\xf7\x7b\x05\xf8\x8f\xf7\xbd\x15\xda\xba\x50"
+"\x2a\x4b\x7b\x43\x6a\x37\x1f\xfb\x2a\x51\x3e\x3d\x31\x1b\x6a\x6b\x9a\xa3\x75\x1f\x70\xa9\x80\xb0\xc5\x1a\xdb\xaf\xf7\x0c\xbf\xeb"
+"\x1e\xed\xc1\xc6\xb9\xd3\x1b\x0e\x88\xf8\x5a\xf7\xbc\x15\x58\xfb\x53\x4b\x0a\x8f\xb5\x0a\xf7\x0f\xf8\x5e\x05\xd3\x9d\x9d\x99\xd5"
+"\x21\x1d\xfb\xad\x06\x34\x5c\x80\x6d\x5c\x1f\x51\x65\x69\x4c\x46\x1a\x5e\x9a\x66\xa6\x72\x1e\xa3\x76\xa3\x82\xc0\x84\x55\x7e\x80"
+"\x84\x4d\x48\x27\x21\x18\x4b\x49\x67\x73\x5b\x85\x86\x79\x18\xf7\x34\x06\xf7\x79\xf7\x8a\xb1\xb6\x90\x8e\xb0\x8f\x19\xbe\xb4\x15"
+"\x87\x70\x7e\x8a\x7b\x1b\x3b\x60\xb7\xdb\xf4\xd1\xcb\xf7\x05\x9e\x9a\x8a\x89\xb1\x1f\x0e\xfb\x70\xf7\x48\x23\x0a\x86\x79\x05\xc1"
+"\x8a\x9c\x81\x6c\x1a\x80\x89\x7f\x87\x7c\x1e\xfb\x10\xfc\x61\x79\x48\x79\x7a\x60\x1d\x90\x9d\x05\x56\x8c\x7a\x95\xab\x1a\x95\x8d"
+"\x99\x8f\x98\x1e\xf7\x22\xf8\xa4\x05\xf7\x8a\x06\xae\xf7\x17\x05\x7a\x06\x78\x44\x71\x75\x47\x89\x08\x0e\xf7\x1d\xf8\x6e\xf9\x06"
+"\x15\xf7\x10\x06\xbf\xa6\x73\x5f\x75\x89\x75\x86\x71\xc6\x1d\xe8\xc9\xbb\xec\x88\x08\xb0\x06\xfb\x20\xfc\x9d\x05\x42\x79\x78\x7d"
+"\x41\x1b\x86\x79\x05\xf7\x4d\x06\xe4\xf7\xdf\x05\x91\xc1\xad\x8d\xa8\x1b\xd2\xaf\x64\x3e\xfb\x03\x4a\x23\x46\x7b\x7f\x93\x97\x8d"
+"\x8b\x8d\x8c\x8d\x1f\x94\x9d\x8c\x8f\x95\x1a\xa2\x79\x9b\x70\x6b\x76\x73\x67\x5e\xad\x74\xce\xf7\x21\xf7\x03\xf5\xf7\x1b\xf0\x48"
+"\xca\x20\x63\x5d\x87\x82\x51\x1e\x0e\x30\xf7\xed\x6c\x0a\xf7\x3a\xf8\xfc\x15\xaf\x06\xf7\x40\xf7\x00\x05\x97\x92\x90\x93\x98\x1a"
+"\x9f\x7b\x9b\x76\x81\xf7\x05\x1d\x94\xf9\x2c\xf9\x33\x15\x75\x7c\x83\x86\x7a\x1b\x81\x82\x8d\x91\x7a\x1f\x9a\x62\x74\x8f\x66\x1b"
+"\xfb\x6b\xfb\x4c\xfb\x49\xfb\x68\xfb\x40\xf2\xfb\x08\xf7\x2b\xce\xc6\xa0\xb5\xbe\x1f\xa8\xa4\x9b\x9f\xaa\xbb\x79\x98\x18\x39\x4d"
+"\x4b\x66\x3a\x1b\xfb\x02\x4c\xde\xf7\x26\xa1\x8c\x99\x90\xab\x1f\xf7\x3b\x06\xb5\x93\x8a\x84\x97\x1f\x99\x83\x92\x7c\x77\x1a\x7a"
+"\x89\x7d\x83\x6c\x1e\x9b\x06\xcc\xf7\x89\x05\x7b\x06\x76\x42\x6c\x72\x48\x8d\x08\xfb\x45\x06\x9f\xc9\x94\xa1\x9e\xa9\x08\xe6\xc3"
+"\xe0\xc2\xe0\x1b\xdd\xc2\x57\x3d\x83\x8b\x81\x8a\x80\x1f\x9c\x06\xb5\xf7\x59\x05\x0e\xf8\x77\xf8\x6f\x15\xb1\xf7\x5d\x05\x74\x06"
+"\x76\x7d\x82\x86\x74\x1b\x7e\x81\x8e\x94\x74\x1f\x94\x75\x6a\x90\x6b\x1b\x23\x41\x46\x29\x53\x9a\x6d\xca\x4a\x1f\x93\x83\x99\x7b"
+"\x9d\x78\xa4\x70\x95\x80\x8f\x87\x08\xbc\x58\x98\x71\x5f\x1a\x3e\x54\x52\x41\x35\x4b\xd4\xec\x92\x8b\x90\x8d\x94\x1e\x76\x8d\x6b"
+"\xfb\x76\x05\x9d\x06\xa2\x92\x96\x95\xa0\x1b\x96\x99\x87\x82\xa6\x1f\x7a\xba\xa6\x85\xab\x1b\xf7\x08\xe2\xe1\xf7\x07\xce\x74\xb2"
+"\x2e\xe8\x1f\x2e\xe8\x82\x99\xbe\x1a\xca\xb5\xb2\xd0\xb1\xaa\x7e\x73\xa0\x1e\xa1\x71\x94\x69\x8d\x48\x08\x0e\xfb\xdb\x42\x0a\xfb"
+"\xdb\xf7\x8e\x9d\x15\x35\x0a\xf7\x0f\xf8\x5d\x05\xd4\x9e\x9d\x99\xd4\x34\x1d\xc0\x9e\x80\x6d\x7e\x89\x7e\x87\x7d\x1f\xfb\x0e\xfc"
+"\x5e\x4b\x0a\x6d\xf9\xd2\x98\x1d\xf7\x42\xb9\x1d\xfb\x6c\xf7\x7f\xf9\x18\x15\xa1\x9c\x8a\x89\x93\x1f\xa0\x86\x97\x7d\x78\x1a\x7d"
+"\x89\x7f\x87\x7d\x1e\xfb\x0b\xfc\x52\x05\x53\x7c\x6e\x68\x6c\x1b\x79\x7f\x95\x99\x94\x8d\x8f\x96\x96\x1f\x95\x96\x8f\x93\x97\x1a"
+"\xa5\x76\x9f\x71\x68\x6f\x6c\x64\x57\xb8\x63\xc8\xb7\xbc\xa2\xb1\xb0\x1e\xa8\xa9\xa4\xbc\x9a\xc7\xee\xf8\x04\x18\x9b\xcb\xa0\xa0"
+"\xbc\x8d\x90\x9d\x18\xfb\x95\x06\x0e\xf7\x9f\xf9\x89\x23\x0a\xfc\x85\x25\x1d\x94\x06\xba\xa4\x7d\x70\x5f\x41\xfb\x8e\x61\x26\x1f"
+"\x2a\x61\x6c\x60\x6c\x1b\x83\x84\x8e\x93\x7e\x1f\x99\x74\x83\x8e\x7b\x1b\x6b\x76\x78\x6e\x67\xa7\x75\xb9\xc6\xbe\xb0\xd3\xb4\x1f"
+"\xc8\xf6\xb5\xf7\x10\xd6\xf7\xbc\x08\xf7\x3f\x06\xfb\x1f\xfc\x9d\xbd\x0a\xee\xc3\x97\xaa\xc0\x1f\xca\xb1\xaf\xc7\xce\x1a\xf7\x02"
+"\x33\xce\xfb\x23\x7b\x81\x8a\x89\x75\x1e\xbb\xf7\x45\x05\xd3\x9e\x9c\x98\xd5\x1b\xfb\x3c\xfb\xbf\x15\x8d\x98\x91\x8b\x9c\x1b\xed"
+"\xbe\x5f\x36\x20\x38\x42\xfb\x0e\x78\x7d\x8d\x8f\x71\x1f\x0e\xf7\x99\xf8\x99\xf8\x03\x15\xfb\xa0\x91\x1d\x7a\x4e\x89\xe3\x1d\x8c"
+"\x80\x8e\x19\x7b\x91\x81\x99\x9d\x1a\x97\x8d\x94\x8f\x9d\x1e\xc9\xf7\x7b\x05\xf7\xa3\x06\x4d\xfb\x76\xbd\x0a\xef\xc1\x96\xab\xc1"
+"\x1f\xc8\xb0\xb0\xc6\xc9\x1a\xd9\x57\xc4\x30\xa0\x1e\x94\x65\x81\x8c\x31\x1b\xbe\xf7\x52\x05\xd4\x9e\x9d\x99\xd4\x21\x1d\xfb\xa3"
+"\x06\x84\x79\x05\xa7\x93\x8a\x87\x96\x1f\x9c\x86\x95\x7c\x79\x1a\x7f\x8a\x84\x86\x78\x1e\xad\xfb\x7b\x15\xcf\x9a\x89\x81\xaa\x1f"
+"\xb8\x7d\xa7\x60\x55\x1a\x28\x36\x43\xfb\x09\x77\x7e\x8c\x90\x6f\x1e\x0e\xf7\x1f\xf8\x56\xf9\x06\x15\xf7\x06\x06\xd9\xa6\x79\x55"
+"\x7e\x8a\x82\x88\x77\x1f\x9a\x06\xb3\xf7\x2a\x05\xfc\xbe\x06\x63\xfb\x2a\x05\x9a\x06\x9a\xd3\xc2\xb4\xde\x8c\x08\xc7\x06\xfb\x20"
+"\xfc\x9d\x7a\x47\x78\x79\x4d\x8a\x20\x1d\xf7\x96\x06\x8f\x9d\x05\x56\x8c\x7a\x96\xab\x1a\x95\x8d\x95\x90\x9d\x1e\xc9\xf7\x77\x05"
+"\x8e\xae\xb1\x8c\xaa\x1b\xd9\xac\x73\x50\x7c\x8a\x83\x84\x71\x1f\x71\x2d\x7a\x47\x78\x79\xc4\x0a\x55\x8c\x7a\x96\xab\x1a\x96\x8d"
+"\x9c\x8e\x95\x1e\xa0\xd5\x05\x95\xb0\x8f\xa1\x9f\x1a\xdf\x50\xae\xfb\x22\x6d\x75\x8a\x88\x5a\x1e\x0e\x8f\x5a\x0a\xf7\x85\xf8\xfc"
+"\x15\xae\x06\xf7\x40\xf7\x00\x05\x97\x92\xce\x1d\x98\xf8\xe3\xf9\xb3\xd1\x1d\x8f\x8d\x90\x8e\x91\x1e\x95\x9d\x8d\x90\x94\x1a\xa0"
+"\x7b\x99\x73\x6b\x75\x74\x6a\x57\xbf\x6a\xda\xc7\xbd\x9d\xac\xaa\x1e\x9a\x9c\x95\xa0\x9b\x1a\xa1\x7a\x99\x71\x70\x79\x78\x6c\x1e"
+"\xfc\x4c\xfb\x24\x61\x0a\xf8\x4e\xf2\x15\x62\x6f\x72\x74\x79\x1b\x83\x86\x90\x92\x90\x8c\x91\x90\x9d\x1f\x90\x9a\xe6\xf7\xea\x3f"
+"\x81\x7d\x56\x05\xb7\x81\x71\xa3\x65\x1b\xfb\x0a\xfb\x29\xfb\x52\xfb\x29\x46\xaf\x5e\xc0\xa8\xb1\x9a\xa2\xab\x1f\xa8\xa0\x9e\x9f"
+"\xb0\xbe\x87\x7b\x8b\x8b\x86\x79\x08\x82\x68\x8a\x88\x7f\x1a\x6f\x9b\x79\xa6\xb3\xb3\xaa\xd1\xbc\x1e\xfb\x31\xf7\xd6\x15\xac\xa0"
+"\x73\x64\xfb\x1c\x21\xfb\x39\x34\x69\x78\xa4\xb9\xc6\xa7\xd7\xbf\xd6\x1f\xc2\xb0\xb0\xa7\xb1\x1b\x0e\xfb\x31\xf8\x9c\xf9\x35\x15"
+"\x75\x86\x81\x84\x70\x1b\x86\x80\x8b\x8c\x81\x1f\x8c\x7e\x81\x8b\x82\x1b\x36\x47\x6a\x42\x50\x1f\x41\x33\x47\xfb\x4d\xfb\x03\x1a"
+"\x26\xbf\x49\xdc\xbc\xbf\xa3\xb7\xbe\x1e\xcb\xc3\xb1\xdd\xdd\x1a\xec\x51\xcf\x3a\x4d\x4e\x66\x46\x55\x1e\xcb\xf7\x39\xc4\xc1\xf7"
+"\x08\x8f\xef\x90\xb0\xa5\xa4\xde\x08\xfb\x7a\xfb\x94\x15\xb4\xa8\x61\x51\x4a\x73\x32\x68\x4a\x1f\x52\x6d\x66\x6e\x61\x1b\x5e\x6f"
+"\xb2\xca\xe2\xa2\xe1\xb0\xc3\x1f\xbc\xac\xb1\xa4\xb3\x1b\x0e\xfb\x76\xf7\x96\xf7\x7a\x15\xd4\x9f\xa8\x97\xa3\x9f\x08\xa7\xa1\x9b"
+"\xa8\xa6\x1a\xbc\x5f\xac\x49\xfb\x28\xfb\x18\xfb\x21\xfb\x32\x27\xbf\x55\xeb\xf5\xdc\xcc\xe0\xc7\x64\xaa\x3f\x1e\xfb\x0b\x89\x15"
+"\xa5\xd4\x9b\xa9\xaa\xad\x08\xac\xaa\xad\x9d\xac\x1b\xa7\x9d\x7a\x70\x71\x7d\x73\x6d\x72\x1f\x62\x69\x60\x7a\x32\x79\x08\x82\x6a"
+"\x15\x97\xba\xa0\x8e\xa2\x1b\xb8\xa3\x74\x5f\x42\x5e\x53\x50\x60\x74\xac\xc7\xa7\x8e\xa4\x92\xae\x1f\x0e\xfb\xa2\xf7\x09\xf7\xee"
+"\x15\xb3\xb4\xae\x9d\xae\x1b\xae\xa4\x72\x68\x5f\x70\x6d\x42\x69\x1f\x3f\x67\x7d\x83\x73\x77\x08\x74\x78\x7e\x6f\x6b\x1a\x4a\xb9"
+"\x60\xd1\xc3\xa9\x9c\xd8\xd6\x1e\x7f\x97\x05\x5d\x5d\x64\x76\x61\x1b\x5e\x70\xa8\xba\xbb\xa9\xae\xcd\xaa\x1f\xee\xb8\x8b\x8b\xa5"
+"\xa1\x08\xa0\x9d\x96\xa4\xa8\x1a\xc0\x61\xaf\x4e\x6c\x6b\x81\x79\x72\x1e\x7c\x80\x81\x83\x66\x67\x08\x0e\xfb\x2e\xf7\x4a\xf9\x0c"
+"\x15\x96\xac\xa6\x90\xa7\x1b\xde\xc1\x3f\xfb\x0a\x77\x8a\x7d\x87\x73\x1f\xab\x74\x6e\x99\x60\x1b\xfb\x18\xfb\x0c\xfb\x1a\xfb\x27"
+"\x21\xc5\x49\xe7\xd7\xcb\xb1\xd5\xbd\x1f\xc0\xd9\xaa\xf7\x0a\xf7\x0a\x1a\xf7\x3b\x45\xe3\xfb\x17\x69\x71\x87\x7f\x60\x1e\xf7\x25"
+"\xfb\x81\x15\xb5\xa3\x66\x4b\x48\x75\x3a\x6a\x51\x1f\x4a\x65\x61\x6b\x5d\x1b\x5c\x73\xaf\xd1\xf7\x24\xeb\xf7\x2e\xe5\x1f\x0e\xfb"
+"\x6c\xf7\xfe\xf3\x6d\x0a\xfb\x6c\xf7\x9c\xf8\xf3\x7f\x0a\x53\xfc\x8b\x6d\x0a\xf7\xa2\xf8\x82\xf8\x46\x15\x76\x42\x58\x34\x31\xfb"
+"\x08\x08\x9f\xc6\x91\xa9\xb6\x1a\xe9\x60\xc8\x48\x4d\x56\x68\x3d\x51\x1e\x99\x81\x05\xc1\xb3\xb1\xa5\xb2\x1b\xb8\xa8\x5e\x45\x53"
+"\x79\x45\x6f\x51\x1f\x4e\x6d\x6b\x6d\x69\x1b\x76\x7b\x95\x98\x94\x8d\x8d\x9c\x9a\x1f\x96\x94\x91\x96\x96\x1a\xa2\x7b\x9c\x75\x6d"
+"\x75\x71\x67\x5c\xaf\x69\xbe\xe8\xef\xe9\xf7\x61\xf7\x11\x1e\x40\xfb\xb4\x05\xcd\x06\x9e\xd0\xc6\xf0\xdd\xf0\x08\x77\x4a\x86\x72"
+"\x65\x1a\x2a\xb5\x52\xd1\xaf\xaf\x98\xa5\xac\x1e\x9f\x9a\x97\x98\xad\xb6\x7e\x95\x18\x5d\x63\x66\x75\x62\x1b\x5d\x6e\xb5\xcd\xf7"
+"\x12\xd9\xf7\x26\xce\x9d\x9a\x80\x7e\x82\x87\x85\x7f\x81\x1f\x7e\x80\x87\x83\x7d\x1a\x73\x9a\x7b\xa2\xa8\xa2\xa7\xaf\xb9\x66\xb0"
+"\x5c\x2f\x2d\x33\xfb\x6d\xfb\x1e\x1e\xd9\xf7\xb9\x05\x0e\xfb\xa2\xf7\x19\xf7\x6d\x15\xa2\x06\xd1\xa9\x76\x59\x44\x5b\x5b\x45\x53"
+"\x66\xa3\xc5\x69\x1f\x7b\x83\x05\x3d\xab\xbd\x69\xdd\x1b\xef\xd9\xc8\xd8\xc3\x67\xad\x3c\x9a\x1f\xb8\x8e\xa1\x87\x1d\x0e\x74\x1d"
+"\x0e\xf8\x50\xf9\x24\x15\x71\x7b\x7a\x6f\x89\x8b\x88\x8c\x89\x1f\x8c\x81\x8b\x8b\x88\x1a\x77\x6c\x7a\x68\x6e\x71\x98\x9a\x8f\x8d"
+"\x90\x8d\x90\x1e\x94\x9a\x8d\x91\x94\x1a\x9d\x7c\x98\x76\x6e\x78\x76\x6c\x5d\xba\x6d\xd3\xdb\xd0\xb7\xbe\x9e\x7c\x98\x74\x1e\xfb"
+"\x72\xfb\x67\x76\x1d\x0e\xfb\x54\x7a\x1d\xa6\x95\xa8\xaa\xa8\xba\xa2\xb5\xc0\x0a\x93\x88\x87\x8e\x8d\x0a\x0e\xfb\x74\xf8\x17\xf2"
+"\x15\x68\x6f\x75\x79\x7e\x1b\x82\x84\x91\x94\x91\x8b\x8b\x93\xa7\x1f\xe4\xf7\xe3\x05\x39\x06\x3b\x87\x80\x87\x67\x66\x6d\x69\x79"
+"\x5f\x6d\xfb\x02\x08\xfb\x13\x68\x80\x74\x6e\x1b\x82\x8a\x8c\x92\x80\xcb\x1d\xa3\x97\xa5\x9e\x1f\x9f\xa4\x99\xb2\xa8\xf1\xb9\xf7"
+"\x3d\xab\xb7\xd4\x89\x08\xa6\x06\x32\xfb\xdf\x05\x85\x74\x8a\x83\x7f\x1a\x71\x98\x7c\xa2\xb0\xb4\xaa\xd2\xc5\x1e\x0e\x75\xf8\x80"
+"\xf8\x46\x15\xfb\x4d\xfb\xcb\x6e\xf7\xd9\x45\x7b\x79\x88\x46\x83\x19\x86\x78\x05\x8e\x96\x92\x8c\x94\x1b\xa0\x98\x83\x7e\x87\x8a"
+"\x85\x89\x83\x1f\x49\xfb\x88\x05\x59\x7e\x80\x7c\x76\x1b\x85\x87\x8c\x90\x83\x1f\x92\x81\x84\x8d\x81\x1b\x73\x7b\x7c\x74\x6f\xa0"
+"\x79\xab\xa9\xa3\x99\xa6\x9e\x1f\x97\x9d\x94\xa1\x99\xc0\xd3\xf7\x9d\x18\xa9\xfc\x22\x05\x9d\x06\xf7\x87\xf8\x22\x38\xfb\xc9\x05"
+"\x87\x7a\x88\x7a\x7d\x1a\x71\x98\x7b\xa1\xa7\xac\xa0\xb2\xad\x1e\xa7\xac\x98\x99\x7c\x97\x05\x67\x6e\x76\x7a\x7e\x1b\x83\x86\x91"
+"\x95\x91\x8c\x8d\x91\xa4\x1f\xe2\xf7\xde\x05\x0e\xfb\x38\xf7\x47\xf7\x93\x15\xbe\xf7\x52\x5a\x7f\x52\x81\x62\x89\x19\x86\x78\x05"
+"\x47\x0a\xc7\xf7\x73\xf7\x33\x90\x63\xfb\x29\x05\x88\x7f\x87\x71\x80\x1a\x73\x9a\x7a\xa0\xb0\xb0\xa9\xd9\xc8\x1e\x7e\x96\x05\x61"
+"\x6b\x7d\x80\x7a\x1b\x81\x84\x91\x93\x90\x8b\x8b\x93\xa9\x1f\xe3\xf7\xde\x05\x42\x06\x5d\xfb\x43\x05\x0e\xf7\xc9\xf8\x4e\x15\xfb"
+"\x14\xfb\x12\xfb\x22\xfb\x26\x29\xf7\x02\x1d\xc3\xb1\xdd\xdd\x1a\xeb\x51\xd0\x3b\x1e\x82\x74\xb5\x1d\xd7\xa5\xe6\xb3\xca\x1f\xbb"
+"\xa9\xb0\xa5\xb2\x1b\x0e\xf7\x70\xf8\x51\x15\x59\x7f\x53\x82\x62\x88\x86\x78\x18\x47\x0a\xa9\xf7\x01\x95\xb2\x9c\xaf\xa4\xb0\x19"
+"\xf1\xd0\xc5\xc7\xa9\x1b\x9a\x94\x7c\x6f\x80\x8a\x82\x86\x7a\x1f\x4f\xfb\x74\x89\x7c\x05\x88\x7c\x8b\x8a\x7e\x1a\x6c\x96\x7c\xa2"
+"\xae\xad\xa7\xdb\xcd\x1e\x7e\x97\x05\x64\x6e\x79\x7c\x7a\x1b\x82\x86\x91\x97\x8a\x1f\x91\x07\xca\xf7\x7f\x05\x93\xa8\x8e\x9f\x9e"
+"\x1a\xb5\x79\xa4\x6b\x70\x66\x7a\x71\x6f\x1e\x64\x68\x7b\x78\x3e\x2c\x08\x0e\xf7\x15\x92\x15\x7e\xa3\x9c\x86\xa4\x1b\xf7\x11\xf7"
+"\x16\xf7\x36\xf7\x30\xdc\x63\xc1\x50\x5b\x66\x70\x43\x5b\x1f\xa5\xed\x67\x84\x67\x86\x49\x81\x19\x86\x78\x05\x8f\x9a\x90\x8c\x92"
+"\x1b\x9b\x94\x80\x78\x83\x8a\x84\x86\x7a\x1f\x21\xfc\x22\x75\x36\x86\x84\x6a\x8a\x19\x71\x22\x1d\xf7\x69\x24\x0a\x67\x06\x71\x80"
+"\x90\x99\x93\x8e\x9d\x8f\x99\x1f\xe0\xf7\xcb\x15\x9d\xcf\x96\xa4\xa3\xa8\x08\xa9\xa3\xa9\x9d\xa4\x1b\xac\x9e\x68\x50\xfb\x1e\x30"
+"\xfb\x29\x37\x71\x77\x95\x9f\x80\x1f\x0e\xfb\x6c\xf7\xfa\xf7\x01\x15\x5a\x68\x5e\x6f\x5d\x1b\x54\x65\xb9\xce\xf7\x1b\xe6\xf7\x20"
+"\xe2\x9f\x9d\x7d\x7c\x84\x8a\x89\x7e\x7e\x1f\x81\x80\x86\x80\x7f\x1a\x77\x9b\x7d\xa2\xa5\xa0\xa7\xae\xb6\x62\xae\x58\xfb\x16\xfb"
+"\x17\xfb\x2a\xfb\x2b\x30\xc1\x4e\xdc\xce\xcc\xb2\xd1\xbb\x1e\x0e\xc9\xf7\x66\xf8\x55\x15\x52\x80\x7b\x89\x4e\x85\x85\x78\x18\x8d"
+"\x99\x94\x8c\x8f\x1b\x97\x95\x81\x80\x85\x89\x7f\x88\x82\x1f\x2b\xfc\x02\x05\xd3\x06\xa9\xf7\x00\x9c\xc6\xa4\xba\xbf\xd0\x19\xd0"
+"\xbf\xb3\xac\xa8\x1b\x9a\x94\x80\x78\x83\x8a\x85\x87\x7d\x1f\x34\xfb\xdb\x05\xd3\x06\xa8\xf7\x00\x9a\xc3\xa3\xb8\xbc\xcc\x19\xe0"
+"\xcb\xa9\xa6\xaa\x1b\x9a\x97\x7e\x79\x84\x8a\x88\x87\x79\x1f\x45\xfb\x9c\x05\x85\x75\x8b\x8b\x83\x1a\x71\x9c\x79\xa4\xb5\xb4\xaa"
+"\xcb\xb8\x1e\x7e\x97\x05\x6a\x72\x6f\x74\x7c\x1b\x84\x86\x91\x92\x90\x8b\x8c\x90\x99\x1f\xc8\xf7\x7c\x05\x93\xa9\x8f\xa5\x9e\x1a"
+"\xb0\x75\xa4\x6a\x66\x64\x75\x5d\x5f\x1e\x70\x6e\x75\x6f\x53\x3b\xa3\xe5\x18\x95\xad\x8c\x93\x98\x1a\xac\x72\xa6\x6b\x4d\x47\x4b"
+"\xfb\x2b\x28\x1e\x0e\xfb\x6c\x64\x0a\x0e\xbd\xf7\x8d\x54\x15\x74\x35\x88\x86\x69\x89\x08\x71\x22\x1d\xf7\x6a\x06\x8f\x9d\x05\x70"
+"\x06\x67\x82\x8f\x9d\x90\x8c\x90\x8f\x99\x1f\xa8\xf7\x01\x05\x7d\xa4\x9b\x87\xa2\x1b\xf7\x12\xf7\x16\xf7\x36\xf7\x30\xda\x5b\xc3"
+"\x48\x67\x70\x80\x6f\x67\x1f\xd4\xf7\xa4\x67\x86\x43\x7f\x8b\x8b\x6b\x87\x19\x86\x78\x05\x8f\x9a\x90\x8c\x93\x1b\x9a\x93\x81\x78"
+"\x81\x89\x7f\x88\x80\x1f\x5d\xfb\x43\x05\xa8\x6d\x75\x95\x6a\x1b\xfb\x03\xfb\x08\xfb\x2b\xfb\x26\x2f\xc0\x4b\xd8\xa2\x9e\x8f\x99"
+"\xad\x1f\x94\xad\x15\x76\x6f\x74\x82\x72\x1b\x65\x74\xb3\xce\xf7\x20\xdb\xf7\x31\xd1\xae\xa9\x6c\x68\x82\x89\x7c\x86\x7c\x1f\xd4"
+"\x8a\x15\x95\xb4\x96\xa0\x9b\x99\x08\x9a\x9c\xa4\x94\xa0\x1b\xb1\x9f\x66\x46\xfb\x23\x33\xfb\x29\x36\x73\x7a\x94\xa0\x7b\x1f\x0e"
+"\xfb\x6c\xf7\x63\xf7\x52\x15\xb4\xfb\x15\x05\x5a\x9b\xa0\x74\xa6\x1b\xac\xaa\xa8\xd8\xba\x1f\x7d\x9c\x05\x5a\x6d\x79\x78\x7b\x1b"
+"\x7f\x7f\x9e\xb6\x7d\x1f\x55\xf7\x30\x05\xe5\xc7\xa3\xa3\xa9\x1b\x91\x91\x8a\x87\x99\x1f\x87\x98\x91\x8a\x90\x1b\x9e\x98\x99\x9f"
+"\xa4\x7a\x9c\x73\x72\x72\x7d\x6d\x6e\x1f\x7a\x78\x8b\x8b\x46\x2e\x63\xf7\x07\x7d\xa4\x6f\x9a\xfb\x13\x6f\x18\x86\x7a\x05\x90\xa0"
+"\x95\x8d\x96\x1b\xbc\xa6\x63\xfb\x25\xbf\x1f\x4e\x2f\x05\x50\x65\x72\x70\x7a\x1b\x85\x87\x8d\x98\x7d\x1f\x93\x82\x83\x8e\x82\x1b"
+"\x78\x7d\x7c\x77\x72\x9e\x7a\xa6\xaf\xae\xa8\xc8\xb4\x1f\x0e\xf8\x58\xf7\x00\x15\x66\x6f\x78\x7b\x7b\x1b\x83\x85\x92\x95\x91\x8b"
+"\x8c\x90\x9d\xd2\x0a\xfb\x24\x62\xfb\x05\xfb\x31\x4b\x1b\x7b\x82\x97\x9f\x93\x8b\x8b\x91\xa0\x1f\xe3\xf7\xdd\x5a\x7f\x52\x82\x61"
+"\x88\x89\x0a\x61\xa2\x6e\xaa\xc7\xd8\xd1\xf7\x15\xdf\x1e\x6d\xfb\x01\x05\x87\x7a\x88\x79\x7e\x1a\x72\x99\x7a\xa1\xa6\x9b\x95\xbd"
+"\xbe\x1e\x6d\x56\x83\x75\x6d\x1a\x80\x07\x8c\x79\x8b\x88\x85\x1a\x73\x84\x81\x66\x75\x1e\x96\x7e\x05\xcd\xb0\xa3\xa6\xb1\x1a\x94"
+"\x8a\x92\x87\x9c\x1e\x86\x9e\x89\x99\x9a\x1a\xa5\x91\x99\xa6\xb0\x1e\x0e\xfb\x4b\xf7\xa1\xc5\x15\x89\x83\x89\x7c\x83\x1a\x76\x9e"
+"\x7a\xa2\xb1\xb0\xa8\xd4\xc4\x1e\x7e\x96\x05\x5d\x68\x77\x79\x7b\x1b\x84\x85\x91\x92\x92\x8b\x8c\x92\xa5\x1f\xe8\xf7\xf1\x05\x43"
+"\x06\xfb\x00\x74\x2e\xfb\x04\x48\x1b\x7a\x83\x94\x9d\x92\x8b\x8d\x8f\x97\x1f\xbc\xf7\x4b\x5a\x7f\x56\x81\x5e\x88\x20\x1d\x8e\x9b"
+"\x93\x8c\x94\x1b\x9e\x93\x84\x7a\x80\x89\x82\x85\x75\x1f\x76\x3d\x05\x88\x7e\x87\x71\x7f\x1a\x68\xa1\x73\xad\xaa\xad\x99\xa6\xae"
+"\x1e\xad\xa5\x9e\xa1\xaf\xc0\x08\x0e\xea\xf7\x8d\xf8\x51\x15\x59\x7f\x54\x4e\x0a\x79\x81\x89\x81\x86\x76\x1f\x51\xfb\x6d\x05\x82"
+"\x6a\x8a\x83\x78\x1a\x5e\x9f\x6e\xab\xbe\xc7\xc5\xf7\x19\xe4\x1e\x7d\x52\x05\x82\x6c\x89\x7d\x7b\x1a\x61\xa3\x6c\xaa\xbf\xcc\xc9"
+"\xf7\x15\xe0\x1e\x6f\x26\x05\x87\x7a\x88\x77\x7f\x1a\x72\x99\x7b\xa1\xb3\xbb\xb2\xd0\xba\x1e\x7e\x96\x05\x67\x70\x77\x7a\x7b\x1b"
+"\x83\x85\x91\x93\x90\x8d\x97\x8e\x96\xd2\x0a\xfb\x25\x63\x23\xfb\x30\x53\x1b\x7b\x83\x98\xa3\x95\x8c\x96\x8c\x8e\x1f\xe0\xf7\xd2"
+"\x05\x43\x06\x78\x3d\x7f\x59\x65\x38\x67\x53\x19\x43\x5c\x62\x63\x6e\x1b\x7c\x82\x96\x9e\x94\x8b\x8b\x91\xa1\x1f\x0e\xea\xf7\x8a"
+"\xf8\x51\x15\x59\x7f\x54\x4e\x0a\x79\x81\x89\x82\x86\x75\x1f\x51\xfb\x6d\x05\x83\x6d\x89\x7f\x77\x1a\x5f\x9f\x6f\xab\xbd\xc8\xc4"
+"\xf7\x19\xe4\x1e\x7d\x53\x05\x83\x6e\x88\x79\x7b\x1a\x63\xa3\x6c\xaa\xbd\xce\xca\xf7\x0c\xda\x1e\x72\x2e\x05\x86\x79\x88\x79\x7f"
+"\x1a\x72\x9b\x7a\xa2\xa6\xa0\x98\xb6\xb8\x1e\x70\x5e\x82\x72\x68\x1a\x8c\x72\x05\x8c\x85\x8b\x86\x89\x1a\x78\x81\x7f\x69\x76\x1e"
+"\x96\x7e\x05\xce\xb0\xa2\xa6\xb1\x1a\x94\x8a\x93\x87\x9b\x1e\x86\x9e\x89\x99\x99\x1a\xa6\x95\xa3\xa0\xa6\x1e\x7e\x96\x05\x66\x70"
+"\x78\x7b\x7b\x1b\x82\x86\x91\x95\x93\x8d\x97\x8e\x98\x1f\xe3\xf7\xde\x05\x43\x06\x76\x3d\x05\xfb\x1d\x66\xfb\x02\xfb\x38\x55\x1b"
+"\x7c\x80\x98\x9d\x94\x8d\x98\x8d\x93\x1f\xe0\xf7\xd2\x05\x43\x06\x78\x3d\x7f\x59\x65\x38\x67\x53\x19\x43\x5d\x61\x63\x6e\x1b\x7c"
+"\x82\x96\x9e\x94\x8b\x8c\x91\xa0\x1f\x0e\xfb\x21\xf7\xf7\xf8\x52\x15\x7f\x79\x79\x85\x76\x1b\x7f\x85\x8c\x92\x76\x1f\x94\x6d\x73"
+"\x90\x79\x1b\x5e\x6a\x78\x52\x59\x1f\x97\x81\x05\xa5\xa2\xa2\x98\x9f\x1b\x93\x93\x89\x84\xa1\x1f\x85\xa0\x95\x89\x9b\x1b\xa4\x8c"
+"\x8c\xac\xe1\x1f\x44\x58\x76\x79\x70\x6e\x08\x4a\x47\x69\x47\x4f\x1a\x39\xbd\x54\xd6\xf7\x00\xe6\xdc\xeb\xd4\x5d\xbc\x47\x6a\x72"
+"\x83\x72\x63\x1e\xb1\xce\xbb\xc9\xc1\xbe\x08\xfb\x2c\xfb\x6e\x15\xa2\xab\xa6\x95\xa4\x1b\xb7\xa5\x6b\x56\x3b\x52\x47\x49\x65\x74"
+"\xac\xc2\xb0\x93\xa7\xa1\xba\x1f\x0e\x9c\xf8\xee\xf3\x15\x60\x59\x7a\x7c\x80\x8a\x08\x84\x84\x92\x92\x8f\x8b\x8b\x8e\x95\x1f\xed"
+"\xf8\x04\x05\x43\x06\x27\xfc\x0c\x05\x86\x7a\x8a\x85\x83\x1a\x76\x9f\x7a\xa2\xab\xb6\xac\xd0\xc5\x1e\xfc\x03\xf7\xf6\x15\x58\x7f"
+"\x55\x82\x60\x88\x85\x78\x18\x8e\x9b\xd0\x0a\x80\x84\x75\x1f\x56\xfb\x43\x05\x85\x78\x86\x6a\x7a\x1a\x4a\xb7\x61\xd0\xf7\x06\xeb"
+"\xe0\xef\xd2\x5f\xb9\x46\x6a\x72\x83\x72\x62\x1e\x7e\x61\x15\xa7\xb2\xa0\x94\xa3\x1b\xb1\xa1\x6d\x58\x38\x53\x43\x4a\x69\x76\xa4"
+"\xb5\xa0\x8c\x91\x97\xb3\x1f\x0e\xfb\x61\xf7\x7c\xf8\x51\x15\x58\x7f\x55\x4e\x0a\x7a\x7f\x89\x81\x86\x77\x1f\x5c\xfb\x43\x05\x86"
+"\x79\x87\x6e\x79\x1a\x48\xba\x5f\xd2\xf7\x03\xe7\xdc\xee\xd4\x5c\xbc\x45\x69\x74\x83\x72\x62\x1e\x80\x61\x15\xa7\xb1\x9f\x94\xa3"
+"\x1b\xb3\xa3\x6a\x53\x3c\x55\x47\x4c\x68\x75\xa6\xb8\x9d\x8d\x9a\x93\xa8\x1f\x0e\xfb\x6f\xf7\x2c\xf7\x8c\x15\x83\x6d\x05\xf7\x36"
+"\x06\x81\x5d\x81\x6f\x7c\x6f\x08\x53\x6d\x5d\x6b\x57\x1b\x5b\x6b\xa3\xc5\x6f\x1f\x7b\x84\x05\x3d\xa7\xb9\x67\xd0\x1b\xf7\x12\xf7"
+"\x04\xf7\x17\xf7\x26\xf7\x01\x48\xd4\x27\x36\x43\x5a\x51\x71\x9d\x76\xa2\xa0\x9d\x9c\xa0\x93\x87\x93\x83\x94\x1f\x82\x95\x89\x8e"
+"\x93\x1a\xa1\xb0\x9e\xb8\xc8\xb0\x5b\x3c\x7c\x8a\x80\x89\x79\x1e\x0e\xb8\xf7\x4d\xf7\x6e\x15\xeb\x06\x85\x70\x89\x7c\x76\x1a\x27"
+"\xc2\x49\xdf\xba\xc1\xa3\xb7\xbd\x1e\xcb\xc3\xb1\xdd\xdd\x1a\xeb\x51\xd0\x3a\x2c\x29\x3a\xfb\x04\x61\x1e\x2a\x06\xbf\xf7\x58\x59"
+"\x7f\x55\x82\x60\x87\x20\x1d\x8d\x9b\x91\x8c\x95\x1b\x9e\x93\x84\x7a\x80\x89\x80\x86\x78\x1f\x30\xfb\xe8\x05\xd3\x06\xf8\x1b\xf8"
+"\x37\x15\xb4\xa8\x61\x50\x4a\x73\x33\x68\x4a\x1f\x52\x6d\x65\x6e\x61\x1b\x5e\x6f\xb2\xc9\xd6\xa5\xe7\xb3\xc9\x1f\xbc\xaa\xaf\xa5"
+"\xb2\x1b\x0e\xfb\x57\xf8\x35\xf7\x00\x15\x5f\x66\x81\x82\x7d\x1b\x80\x86\x91\x97\x93\x8d\x97\x8e\x96\x1f\xe3\xf7\xdc\x05\x8d\x5c"
+"\x4b\x8c\x79\x1b\xfb\x1f\x3f\x5f\x3c\x4b\xb5\x6c\xe9\x85\x1f\x35\x7d\x6e\x74\x62\x31\x08\x5a\x74\x82\x7f\x79\x1b\x7c\x7e\x95\xa0"
+"\x80\x1f\x7b\x82\x05\x63\xa0\x9f\x7b\xa7\x1b\xb8\xb9\xb2\xd4\xb4\x1f\xba\xe2\x9e\x9a\xd2\x93\x67\xfb\x18\x18\x87\x7b\x88\x78\x7e"
+"\x1a\x71\x99\x7b\xa1\xb1\xa0\x9c\xe6\xd7\x1e\xfb\x0e\xf7\x1e\x15\x89\x6c\x88\x8b\x81\x1b\x86\x06\x52\x68\xa8\xbb\xc9\xc2\xb4\xde"
+"\x9b\x9a\x8a\x8a\x9e\x1f\x0e\xfb\xed\xf7\x60\xf8\x2f\x15\xf7\x46\x06\xa3\xe0\x05\x7d\x06\x7a\x5d\x73\x7a\x5f\x8c\x08\xfb\x74\x06"
+"\x88\x7e\x05\xaf\x8a\x95\x85\x78\x1a\x84\x8b\x88\x86\x7d\x1e\x30\xfb\xce\x05\x87\x7d\x89\x7f\x83\x1a\x77\x9f\x7a\xa1\xaa\xb6\xac"
+"\xc9\xbf\x1e\x84\xa0\x05\x58\x63\x7c\x7d\x7c\x1b\x84\x84\x91\x93\x8f\x8c\x8f\x8c\x90\x1f\x0e\xfb\x49\xf7\x80\xf8\xac\x15\xb0\xf7"
+"\x15\x4d\x81\x81\x8a\x4c\x85\x19\x85\x77\x05\x8d\x9a\x95\x8c\x8d\x1b\x97\x97\x81\x81\x84\x87\x77\x83\x6f\x1f\x85\x77\x05\x30\x06"
+"\x83\x6d\x05\xe6\x06\xfb\x21\xfc\x8e\x05\xd2\x06\x99\xbb\xaa\xf4\x93\x9d\xb2\xc7\x19\xeb\xc9\xc2\xc1\xae\x1b\xa2\x9c\x6d\x62\x35"
+"\x5b\xfb\x47\x59\x29\x1f\x46\x68\x68\x6a\x65\x1b\x83\x86\x8f\x91\x8e\x8c\x8d\x90\x8e\x1f\x92\x92\x8e\x91\x95\x1a\x9f\x7a\x9b\x75"
+"\x73\x79\x77\x70\x68\xa7\x76\xb8\xcf\xc6\xb7\xe5\xc1\x1e\xcb\xf7\x00\xb8\xf7\x27\xf3\x1a\xd9\x70\xb9\x5f\x4e\x38\x41\xfb\x17\x33"
+"\x1e\xdb\xf7\xa7\x05\xf7\x28\x06\x94\xa9\x05\x0e\xfb\xaf\xf7\x02\xf7\xf1\x15\xb4\xb4\xae\x9d\xae\x1b\xae\xa4\x72\x67\x5f\x70\x6d"
+"\x42\x68\x1f\x41\x68\x7a\x82\x74\x77\x08\x74\x77\x7e\x6f\x6b\x1a\x48\xb8\x61\xd3\xc8\xb6\xa5\xd1\xc2\x1e\x80\x96\x05\x5c\x5d\x64"
+"\x77\x61\x1b\x5e\x70\xa8\xba\xbc\xa9\xae\xcd\xaa\x1f\xee\xb8\x8b\x8b\xa5\xa2\x08\xa0\x9d\x96\xa4\xa8\x1a\xc1\x61\xaf\x4e\x55\x66"
+"\x76\x4b\x52\x1e\xf7\x10\xf7\x24\x15\xae\x06\xf7\x41\xf7\x01\x05\x97\x92\x90\x93\x98\x1a\xa0\x7b\x9b\x75\x82\xf7\x05\x1d\xfb\x74"
+"\xf7\x28\xf7\x84\x15\xf7\x03\xaf\xc9\xcf\xcc\x1b\x9f\x9d\x7d\x7c\x84\x8a\x89\x7e\x7e\x1f\x81\x80\x86\x80\x7e\x1a\x79\x9b\x7c\x9e"
+"\xa7\xa2\xa8\xae\xb6\x62\xae\x58\xfb\x15\xfb\x18\xfb\x2b\xfb\x29\x5b\x98\x64\xa3\x72\x1e\x72\xa3\xb0\x7a\xab\x1b\xcd\xd6\xb8\xce"
+"\xb9\x1f\x79\x94\x05\x59\x68\x5e\x70\x5d\x1b\x54\x65\xb9\xcf\x9f\x8d\x9c\x90\xa6\x1f\xf7\x35\x06\x93\xa9\x05\x0e\xfb\xa3\xf7\xec"
+"\xf8\x4b\x15\x7d\x06\x7d\x81\x81\x84\x82\x1b\x87\x84\x8d\x8f\x83\x1f\x98\x71\x75\x91\x74\x1b\x4f\x5a\x5a\x4f\x5f\x99\x70\xc2\x4b"
+"\x1f\xb5\x5c\x9c\x6c\x6d\x1a\x5f\x67\x67\x60\x56\x65\xbf\xd7\x87\x1e\x7b\x06\x73\xfb\x2b\x05\x9e\x06\x9a\x94\x91\x90\x98\x1b\x91"
+"\x92\x8a\x89\x92\x1f\x7b\xba\x95\x89\xa4\x1b\xd6\xc5\xc2\xd2\xb8\x7b\xa9\x51\xce\x1f\x5b\xc1\x7f\xa0\xa8\x1a\xac\xa3\xa4\xac\xc1"
+"\xab\x5e\x40\x8a\x1e\x9b\x06\x0e\xfc\x12\xf7\x6b\xf2\x15\x66\x71\x6e\x6f\x7c\x1b\x83\x84\x92\x92\x8e\x8c\x90\x8c\x90\x1f\xf1\xf8"
+"\x10\x56\x7e\x5d\x83\x5a\x87\x20\x1d\x8d\x9b\x93\x8c\x94\x50\x0a\x3f\xfb\xae\x05\x88\x7d\x89\x80\x82\x1a\x77\x9f\x79\xa3\xa9\xb6"
+"\xac\xca\xbf\x1e\x86\xf8\xa7\xb8\x1d\xfc\x12\xf7\x6b\xf2\x15\x5c\x65\x77\x79\x7f\x1b\x83\x84\x91\x93\x8e\x8c\x90\x8c\x90\x1f\xf1"
+"\xf8\x10\x56\x7e\x5d\x83\x5a\x87\x20\x1d\x8d\x9b\x92\x8c\x95\x50\x0a\x40\xfb\xae\x05\x88\x82\x8a\x82\x82\x1a\x70\x9c\x79\xa3\xaf"
+"\xb0\xa9\xd6\xc6\x1e\xfb\x03\xf8\x9f\x15\xa6\x0a\xf7\x34\x16\xa6\x0a\x0e\xfc\x12\xe8\xf8\x23\x15\x8d\x9a\x90\x8b\x93\x1b\x9d\x97"
+"\x81\x7b\x85\x89\x81\x88\x81\x1f\x2b\xfb\xfc\x78\x43\x85\x7d\x79\x72\x19\x78\x7c\x74\x7e\x76\x1b\x80\x84\x8f\x94\x84\x1f\x9b\x94"
+"\x94\x9b\x9c\x7d\x97\x77\x75\x7a\x7b\x76\x70\xaa\x77\xb5\xde\xcf\xd7\xf7\x18\xaf\x1f\xf6\xf8\x24\x54\x80\x64\x85\x58\x87\x19\xf7"
+"\x14\xf7\x59\xb8\x1d\x9e\xf8\x35\xf8\x46\x15\x39\x06\x26\x91\x4b\x43\x63\xfb\x3b\x08\xfb\x0a\x6c\x7b\x6a\x6f\x1b\x82\x89\x8c\x93"
+"\x81\xcb\x1d\xa1\x97\xa5\x9f\x1f\x9c\xa1\x9c\xba\xa7\xed\xba\xf7\x3d\xab\xb8\xd5\x88\x08\xa6\x06\x4a\xfb\x89\x05\x85\x71\x89\x7e"
+"\x77\x1a\x44\xb6\x62\xd6\xf7\x03\xe8\xdb\xeb\xd3\x5c\xbc\x45\x6a\x71\x83\x72\x63\x1e\x7f\x61\x15\xa7\xb0\xa0\x94\xa4\x1b\xb4\xa2"
+"\x6b\x55\x3b\x56\x49\x4c\x69\x73\xa6\xb0\x9d\x8f\xa5\x91\xa1\x1f\x0e\xbf\xf7\x4e\xf7\x73\x15\xf7\x37\x90\x7a\x4c\x05\x86\x78\x87"
+"\x6f\x79\x1a\x48\xba\x5f\xd2\xf5\xea\xda\xe3\xb2\x78\xae\x6b\x9e\x1e\x98\x76\x71\x90\x62\x1b\x75\x7a\x8a\x87\x69\x1f\xb8\xf7\x40"
+"\x05\x44\x06\x5c\xfb\x44\xfb\x37\x88\xbe\xf7\x52\x5a\x7f\x52\x81\x62\x89\x19\x86\x78\x05\x47\x0a\xf7\xba\xf7\x79\x15\x8c\x98\x99"
+"\x8b\x8e\x1b\xb8\x9b\x89\x86\x97\x1f\xa3\x7f\x99\x71\x68\x1a\x46\x55\x4b\x50\x66\x76\xa6\xba\x9d\x8c\x91\x94\xaf\x1e\x0e\xef\x16"
+"\x99\xc1\xad\xf7\x0d\x98\xa7\xc6\xd9\x19\xd2\xc1\xb4\xae\xaa\x1b\x98\x95\x80\x7a\x81\x88\x78\x86\x7a\x1f\x4c\xfb\x83\x05\x83\x70"
+"\x8b\x8a\x7e\x1a\x71\x9c\x79\xa4\xab\xac\xa3\xc8\xbd\x1e\x94\x97\x7e\x96\x05\x66\x6f\x72\x74\x7f\x1b\x84\x84\x93\x93\x8f\x8d\x98"
+"\x8c\x8f\x1f\xcb\xf7\x7e\x05\x92\xa7\x90\xa7\x9d\x1a\xad\x74\xa3\x6a\x6b\x6e\x7b\x5f\x5c\x1e\x68\x6b\x83\x80\x43\x28\xd7\xf7\xa5"
+"\x18\xf7\x2a\x06\x94\xa9\x05\xfb\x2a\x06\xac\xf7\x0f\x53\x82\x7b\x89\x4c\x84\x19\x85\x78\x05\x8d\x9a\x95\x8c\x8e\x1b\x98\x96\x81"
+"\x80\x86\x8a\x85\x89\x84\x1f\x89\x84\x89\x85\x88\x1a\x82\x69\x05\x33\x06\x82\x6d\x05\xe3\x06\xfb\x22\xfc\x93\x05\x0e\xfb\x54\x7a"
+"\x1d\xab\x9a\x97\x97\xb0\xc8\x08\xc3\xae\x95\x95\x9d\x1b\x92\x92\x88\x87\x8f\x8d\x0a\xe9\xf7\x95\x15\xae\x06\xf7\x41\xf6\x05\x96"
+"\x93\xce\x1d\xfb\x6c\x64\x0a\xf7\x10\xf8\xaa\x15\x8c\x82\x8b\x8b\x87\x1a\x77\x6d\x7a\x68\x6e\x71\x98\x9a\x8f\x8d\x90\x8d\x90\x1e"
+"\x94\x9a\x8d\x91\x94\x1a\x9d\x7c\x98\x76\x6e\x77\x76\x6d\x5c\xb9\x6d\xd4\xdb\xd0\xb7\xbe\x9e\x7c\x98\x74\x72\x7b\x7a\x6f\x1e\x0e"
+"\xc9\xf7\x47\xb0\x15\xf7\x21\xf8\x9c\x05\xd4\x9e\x9c\x99\xd5\x21\x1d\xfb\xa2\x06\x83\x79\x05\xc3\xda\x1d\xfc\x5f\x7a\x47\x77\x49"
+"\x1d\xf7\x41\x06\xb6\x94\x8a\x83\x98\x1f\x9d\x81\x94\x75\x6c\x1a\x70\x87\x70\x7e\x5a\x1e\x9d\x06\xbc\xf7\x26\xb0\xac\xf7\x03\x87"
+"\x08\xf7\x35\xb3\x0a\x9d\x1a\x96\x8d\x98\x8f\x99\x1e\xf7\x0e\xf8\x5e\x58\x1d\x6b\x1a\x7f\x89\x81\x87\x7b\x1e\xfb\x20\xfc\xa2\x05"
+"\x0e\xf7\x32\x37\x15\x8c\x78\x8b\x86\x87\x1a\x74\x83\x81\x68\x76\x1e\x96\x7d\x05\xce\xb2\xa1\xa4\xb2\x1a\x95\x8a\x8e\x87\x9f\x1e"
+"\x87\x9a\x89\x97\x92\x1a\xa0\xa7\xc3\xa7\xac\x1e\x9e\xa0\x98\x9e\xab\xbb\x6d\xfb\x01\x18\x85\x1d\xe3\xf7\xdd\x5a\x7f\x52\x81\x61"
+"\x89\x89\x0a\x62\xa2\x6d\xab\xa8\xab\x9c\xaf\xb5\x1e\x65\x57\x7f\x70\x67\x1a\x0e\xfb\x88\xe8\xf7\x94\x15\xd3\xc0\xc1\xae\xc3\x1b"
+"\xc0\xad\x5d\x43\x73\x89\x7b\x83\x6b\x1f\xfb\x9a\x06\x84\x6e\x89\x7d\x79\x1a\x42\xb7\x5e\xd1\xf7\x13\xf7\x0e\xf7\x29\xf7\x2d\xe3"
+"\x5c\xc4\x41\x57\x54\x71\x5d\x5e\x1e\x74\x73\x78\x6f\x6c\x56\x08\xf7\x87\xfb\x15\x15\x4b\x72\x62\x67\x5a\x1b\x6a\x75\xa4\xb1\x95"
+"\x8c\x94\x8f\x9d\x1f\x0e\xf7\x41\xf7\xef\xf8\x38\x15\x59\x5b\x6b\x7a\x61\x1b\x59\x6d\xaa\xc1\xf6\xde\xf6\xde\xa1\x9a\x83\x7e\x85"
+"\x88\x87\x83\x82\x1f\x7f\x7f\x87\x83\x82\x1a\x7d\x97\x7f\x9a\xa1\x9d\xa2\xa7\xb0\x6d\xa2\x58\xfb\x05\xfb\x04\xfb\x09\xfb\x0a\x44"
+"\xb5\x60\xd0\xc8\xbb\xa5\xcc\xc3\x1e\xf8\x49\xf7\x96\x15\x5e\x06\xfd\x47\xfd\x4a\x05\xb9\x06\xf8\xda\xf8\x02\x15\xfb\x04\xfb\x00"
+"\xfb\x06\xfb\x09\x46\xbb\x5a\xce\xf7\x05\xf4\xf7\x03\xf7\x0b\xd2\x5d\xbb\x48\x1f\x81\x78\x15\xb1\xa1\x6f\x5c\x58\x7b\x53\x6d\x59"
+"\x1f\x56\x6c\x6a\x71\x67\x1b\x66\x72\xa9\xb9\xbd\x9b\xc1\xa9\xbf\x1f\xc0\xab\xac\xa5\xb0\x1b\x0e\xfb\x87\xf7\x86\xf7\x9b\x15\xc4"
+"\xc6\xad\xb4\xa2\xb1\x08\xb2\xcb\xa3\xd1\xc0\x1a\xbd\x72\xab\x63\x39\x4f\xfb\x13\xfb\xb6\x54\x1e\x76\x72\x76\x75\x7e\x7f\x08\x7d"
+"\x7e\x86\x84\x84\x1a\x83\x92\x81\x91\x92\xa5\xa1\xa1\xa0\x1e\x84\x44\x89\x74\x72\x1a\x51\xa4\x6a\xb8\xab\xa5\x9e\xb1\xa2\x1e\x98"
+"\x9f\x92\x9e\x97\x1a\x94\x86\x91\x82\x83\x86\x86\x7e\x85\x1e\x64\x78\x7e\x7d\x7a\x1b\x80\x85\x94\x9b\xa4\x9a\xf3\x99\xd5\x1f\x94"
+"\xc2\x15\xf7\x79\xb1\xa6\xd9\xb2\x1b\x9a\x95\x7c\x75\x70\x81\x5e\x7c\x65\x1f\x74\x51\x6f\x5f\x56\x51\x08\x0e\xf7\xaf\xf7\x1f\x23"
+"\x0a\x85\x79\x05\x9b\x06\xb4\xa1\x7e\x67\x9d\x1f\xfb\x0f\xfc\x63\x05\x56\x7d\x7c\x76\x77\x1b\x84\x83\x8e\x90\x84\x1f\x9a\x77\x7e"
+"\x91\x7a\x1b\x70\x76\x76\x6f\x6d\xa6\x79\xb9\xbb\xaa\x9d\xb5\xa4\x1f\x94\x9a\x96\xa8\x95\xb1\xf7\x01\xf8\x33\x18\xf7\x7a\xfc\xb7"
+"\x05\x9e\x06\xf7\x21\xf8\xa6\x05\xc0\x99\x99\x9d\xa4\x1b\x94\x91\x89\x84\x9a\x1f\x86\x97\x92\x89\x94\x1b\xa8\xa1\x9c\xa2\xa7\x70"
+"\x9e\x62\x48\x67\x64\x24\x70\x1f\x2d\xfb\xf3\xfb\x59\xf8\x77\x05\xf7\x9b\xfd\x2a\x15\xf7\x95\x06\x9b\xc9\x05\xfb\x95\x06\xf7\x71"
+"\xf8\x46\x15\x2f\x3b\x30\x21\x34\xba\x4d\xcf\xe8\xdb\xe5\xf4\xe4\x5b\xc9\x47\x1f\x87\x6f\x15\xb2\xa1\x66\x4c\x24\x59\x34\x4f\x66"
+"\x74\xb1\xcb\xef\xbe\xe3\xc5\x1f\x0e\xfb\x1b\xb2\x1d\xf7\xb6\x05\x35\x06\x6c\x36\x05\xcc\x83\x6b\xaa\x53\x1b\x59\x55\x6e\x55\x58"
+"\x1f\x55\x51\x6d\x43\x41\x1a\x28\x7e\x0a\xc2\x9a\xd0\xa4\xc9\x1f\xdc\xad\xb7\xb6\xbc\x1b\xb8\xa1\x67\x3d\x8d\x1f\x0e\xfb\x1b\xb2"
+"\x1d\xf7\xb8\x05\x35\x06\x6c\x35\x05\xcc\x83\x6b\xaa\x53\x1b\x58\x56\x6e\x55\x58\x1f\x55\x50\x6d\x44\x41\x1a\x27\x7e\x0a\xc3\x9a"
+"\xd0\xa4\xc8\x1f\xdd\xad\xb7\xb6\xbc\x1b\xb8\xa1\x67\x3c\x8d\x1f\x5f\xf7\x49\x15\xb5\x06\xa1\xba\x05\xa1\xba\x99\xb7\x9f\xe0\x1d"
+"\x25\x0a\xf7\x4e\xf7\x38\x29\x1d\xfb\xdb\xc5\xf7\x82\x15\xf7\x42\xfb\xe8\x05\x7c\x93\x95\x83\x97\x1b\x93\x90\x8f\x92\x92\x89\x93"
+"\x88\x93\x1f\xfb\x17\xf7\xdd\xf7\x17\xf7\xdd\x05\x8e\x93\x8d\x93\x92\x1a\x93\x86\x8f\x83\x7f\x83\x85\x79\x81\x1e\x0e\xfb\xdb\xf7"
+"\xa7\xf7\x82\x15\xfb\x42\xf7\xe8\x05\x9c\x82\x82\x92\x7f\x1b\x83\x86\x87\x83\x85\x8d\x83\x8e\x82\x1f\xf7\x17\xfb\xdd\xfb\x17\xfb"
+"\xdd\x05\x88\x84\x89\x83\x84\x1a\x83\x90\x87\x93\x97\x93\x91\x9c\x95\x1e\x0e\xf8\x64\xf7\x02\x15\x6f\x6f\x05\x6b\x6b\x80\x53\x0a"
+"\xf7\x40\xba\xf7\x3f\x77\x0a\x7b\x8d\x84\x92\x83\x1e\x78\x71\x84\x76\x6f\x1a\x58\xb6\x60\xbf\xb0\x0a\x67\x74\xa0\xac\xa3\x92\x96"
+"\xa3\x98\x1f\xa6\x9a\xa8\xa8\xbb\xc7\x08\x7b\x0a\x0e\xf7\xe8\xf9\x3a\xf7\x6c\xb9\x0a\xba\x32\x79\x92\x5e\x1b\x5d\x6c\x76\x4b\x5d"
+"\x1f\xc1\x6b\xd9\x1d\x5b\xe4\x9d\x85\xb8\x1b\xb9\xaa\xa0\xcc\xb9\x1f\x55\xf7\x61\xb9\x0a\xbb\x32\x79\x91\x5e\x1b\x5d\x6d\x76\x4a"
+"\x5c\x1f\xc1\x6c\xd9\x1d\x5c\xe4\x9d\x84\xb8\x1b\xb9\xad\xa3\xc8\xb6\x1f\x0e\xf8\x64\xf7\x02\x15\x7b\x7c\x84\x83\x86\x86\x08\x6b"
+"\x6c\x7f\x53\x0a\xf7\x3f\xba\xf7\x40\x68\x0a\xb6\xf7\xb4\xa4\x1d\x67\x6e\x58\x0a\x6a\xc9\xbb\x1d\x88\x84\x85\x1e\x0e\xc9\xf9\x03"
+"\xf8\x37\x15\xfc\xa0\x06\xf7\x66\xdc\x74\xc0\xfb\xb2\xfb\x14\x05\x3e\x07\xf7\xb2\xfb\x13\xa2\xbf\xfb\x66\xdd\x05\xf8\xa0\x06\xfb"
+"\x66\x39\xa2\x57\xf7\xb2\xf7\x13\x05\xd8\x07\xfb\xb2\xf7\x14\x74\x56\x05\x0e\xc9\xf8\x1b\xf9\x66\x15\x4b\xfd\x03\x06\x39\xf7\x66"
+"\x57\x74\xf7\x13\xfb\xb2\x05\xd8\x06\xf7\x14\xf7\xb2\x56\xa2\x3a\xfb\x66\x05\x0e\xc9\xf9\x66\xf7\xf9\x15\xcb\xfd\x03\x07\xf7\x66"
+"\xdc\x74\xc0\xfb\xb2\xfb\x13\x05\x3e\x07\xf7\xb2\xfb\x14\xa2\xbf\xfb\x66\xdd\x05\x0e\xc9\xf7\xf9\x04\xf9\x03\x06\xfb\x66\x39\xa2"
+"\x57\xf7\xb2\xf7\x14\x05\xd8\x07\xfb\xb2\xf7\x13\x74\x56\xf7\x66\x3a\x05\xfd\x03\x06\x0e\xc9\xf8\x1b\x16\xf9\x03\x07\xdc\xfb\x66"
+"\xc0\xa3\xfb\x14\xf7\xb1\x05\x3e\x06\xfb\x13\xfb\xb1\xbf\x73\xdd\xf7\x66\x05\xfd\x03\x07\x0e\xc9\xf7\xde\xf9\x03\x83\x0a\xa2\xc6"
+"\x0a\x74\x05\x0e\xc9\xf7\x5b\x2c\x15\x51\xf7\xdb\xc5\x07\xfb\x58\xf9\x42\x83\x0a\xa3\xc6\x0a\x73\x05\x0e\xfb\x36\x75\xfb\x40\x15"
+"\xda\x06\xc5\xf7\x6b\x05\x66\xa6\xa8\x7b\xb3\x1b\xf7\x0e\xf7\x0a\xf7\x11\xf7\x15\xcf\x72\xc0\x5b\xae\x1f\xd4\xb1\xb6\xc3\xc4\x1a"
+"\xcb\x57\xb7\x40\x4a\x50\x6e\x58\x63\x1e\x72\x6b\x77\x5c\x78\x44\x08\xda\x16\x99\xbf\x9c\xc0\x95\xa1\x08\xbe\xa3\xae\xa7\xb4\x1b"
+"\xb0\xa3\x6e\x5e\x57\x75\x57\x63\x61\x1f\x99\x71\x7b\x8f\x78\x1b\x70\x78\x7e\x79\x78\x9d\x7f\xa8\x9b\x99\x8e\x93\xa0\x1f\x9a\x71"
+"\x90\x72\x64\x1a\x54\x76\x38\x6f\x57\x1e\x55\x6f\x5f\x6a\x60\x1b\x6d\x72\x9d\xb4\x70\x1f\x0e\xfb\x6c\x3c\x1d\xfb\x17\xf8\x22\x2b"
+"\x0a\xfb\x6c\x3c\x1d\xf7\x0a\xf8\xc9\x21\x0a\xfb\x72\xf7\xf0\xf5\x15\x50\x54\x64\x75\x5a\x1b\x52\x69\xb5\xd3\xe0\xae\xe5\xc3\xc5"
+"\x1f\xa9\xa8\xb3\x9d\xb3\x1b\xa2\x99\x83\x7f\x86\x89\x86\x87\x82\x1f\xb8\x0a\xa6\xba\x51\x0a\x2c\xc1\x54\xe8\xd6\xc0\xa9\xd8\xc8"
+"\x1e\x92\xf8\xc9\x20\x0a\xfb\x6c\x3c\x1d\x6a\xf8\x92\x24\x1d\x0e\xfb\x70\xf8\x53\xf8\x46\x15\x38\x06\xfb\x31\xfb\x7a\x05\xf7\x5d"
+"\x80\x7c\xb2\x4b\x1b\x6a\x75\x7a\x71\x75\x99\x7e\xa8\x86\x1f\xc4\x86\x92\x77\x95\xfb\x3a\xfb\x8b\xfb\xea\x18\xe0\x06\xf7\x3c\xf7"
+"\x85\x8c\x59\x90\x58\x93\x55\x19\x46\x95\x9c\x6d\xaa\x1b\xb0\xb8\xc4\xe3\xa9\x1f\x7e\x92\x05\x52\x72\x74\x73\x6e\x1b\x61\x7a\xc7"
+"\xf7\x36\x86\x1f\x0e\xf7\xe8\xf8\x8b\xf9\x4b\x15\xfb\x5c\xfb\x36\xfb\x35\xfb\x5c\xfb\x58\xf7\x36\xfb\x36\xf7\x57\xf7\x59\xf7\x37"
+"\xf7\x37\xf7\x57\xf7\x58\xfb\x36\xf7\x39\xfb\x55\x1f\x87\xfb\xd0\x15\xfb\x52\xf7\x50\x05\xb8\xc2\xcc\xa2\xd1\x1b\xd0\xcc\x74\x60"
+"\xc3\x1f\xb3\x63\x15\xbb\x51\xa2\x4d\x42\x1a\x43\x74\x4b\x5d\x53\x1e\xfb\x54\xf7\x57\x05\xf7\x2c\xfb\x7f\x15\x5f\x54\x48\x73\x45"
+"\x1b\x45\x4b\xa2\xba\x50\x1f\xf7\x55\xf7\x55\x05\xfb\x7d\xfb\x2d\x15\x5f\xc1\x74\xcb\xd1\x1a\xd3\xa2\xcb\xba\xc4\x1e\xf7\x52\xfb"
+"\x50\x05\x0e\xf7\xe8\xf9\x83\x16\x9f\x07\x84\x8d\x74\x90\x3e\x9e\x8b\x8c\x70\x9c\x19\x45\xbb\x64\xd8\xe4\x1a\x94\x07\x9b\x07\x9f"
+"\x67\x94\x7e\x97\x7c\x08\x5c\xb1\xc8\x6d\xc1\x1b\xe6\xd3\xd5\xe8\xe7\x4a\xd2\x39\x71\x80\x88\x79\x67\x1f\x88\x8a\x82\x86\x82\x87"
+"\x08\xa8\xb7\x95\xa5\xb0\x1a\xe5\x43\xd2\x2f\x2e\x44\x45\x31\x67\x92\x78\xad\x56\x1e\xa3\x58\x78\x91\x70\x1b\x3d\x49\x40\x33\x2d"
+"\xd3\x43\xe9\xdb\xd1\xbe\xe5\xb6\x1f\x8c\x72\x05\x83\x07\x54\x71\x45\x65\x5f\x1e\x5c\x5a\x8a\x8a\xfb\x0e\x6e\x83\x89\x18\x77\x07"
+"\x0e\x3f\x5c\x0a\xf7\x84\x9d\x15\xe0\xba\xb8\xc3\xc3\x48\x0a\x70\x74\x70\x57\x69\x1e\x0e\xf8\x33\xf8\xb4\x15\x60\xfb\x35\x8f\x1d"
+"\x7f\x95\x05\xe7\x1d\xf7\x0b\xad\xf7\x03\x1f\x9b\xc3\x9c\xc9\xa3\xe7\x92\xa7\x18\xc5\x06\x93\xae\x05\x52\x06\xa5\xee\x86\x90\x57"
+"\x80\x67\x86\x4a\x84\x19\x7a\x07\xc2\x89\x92\x88\x75\x1a\x81\x8a\x83\x86\x78\x1e\xfb\x3c\x06\x83\x68\x05\xc9\xfb\x12\x87\x0a\x0e"
+"\xfb\x57\xf8\x68\xf8\xfd\x15\xb1\x48\x3a\xa1\x47\x1b\x46\x63\x6d\x56\x70\x9b\x71\xaa\x72\x1f\xcc\x58\x44\x75\x63\x73\x63\x60\x19"
+"\x52\x4c\x69\x37\x3e\x1a\x2a\xc9\x4d\xeb\xf7\x30\xf7\x1b\xf7\x29\xf7\x40\xcf\x71\xbb\x52\xb1\x1e\xfb\x27\xee\x05\x5e\xa9\x8a\x8c"
+"\x97\x1a\x99\x98\x93\xa3\xc9\xf1\x64\x5b\xca\x1e\xfb\x37\x29\x15\xcd\x5e\xa4\x61\x4d\x1a\x4d\x73\x42\x64\x50\x1e\x54\x66\x5f\x6f"
+"\x5a\x1b\x51\x6d\xb3\xd9\xd1\x9f\xd4\xaf\xc5\x1f\xac\xc1\xac\xa5\xcf\xa6\x08\x0e\xf7\xe8\xf8\x95\xf9\x89\x15\x42\xfb\x13\x4d\x33"
+"\xfb\x21\xfb\x45\xf0\xfb\x0f\xf7\x35\xfb\x78\x99\x61\xde\xf7\x20\xdf\xf7\x0b\xf7\x03\xf7\x1a\xfb\x0b\xf7\x26\x2a\xf7\x1d\x4d\xf7"
+"\x01\x08\x0e\xfb\xdb\xf7\x84\xf8\xc1\x15\xad\x06\x9b\xac\x05\x9c\xae\x94\xa5\x9b\x1a\x9a\x83\x93\x7b\x6a\x81\x77\x41\x85\x1e\x4b"
+"\x70\x15\x86\x0a\xf7\x2e\x59\x1d\xfb\x6c\x28\x1d\xf7\xc4\xf8\x4e\xc5\x1d\x8c\xb4\x59\xe3\x1b\xc0\xba\x5a\x1d\xfb\x6c\x28\x1d\xf7"
+"\xef\xf8\x59\x21\x0a\xfb\x6c\x28\x1d\xf7\x46\xf8\x22\x24\x1d\x0e\xf7\xe8\xf9\x93\xf7\x6c\x15\xc8\xfc\x62\x07\x91\xf6\xc3\xbd\xf7"
+"\x01\x89\x08\xf7\xb7\xc9\xfb\xac\xa7\x0a\x38\xca\x0a\xc9\xfb\xb7\x06\xfb\x01\x89\x53\xbd\x85\xf5\x08\x0e\xfb\x6c\x28\x1d\xf7\xe0"
+"\xf8\x0b\x29\x1d\xfb\x67\xf7\x62\xf8\x4b\x15\x8a\x1d\x80\x85\x6a\x84\x6f\x1f\x3f\xfb\xb8\x05\xfb\x23\x67\x76\x65\x63\x88\x1d\xba"
+"\xb4\xae\x9d\xaf\xaa\x1e\xac\xb2\xa0\xbb\xa4\xe9\xd9\xf7\xbb\x18\x90\xa1\x8f\xa1\x99\x1a\xaf\xf7\x04\x1d\x0e\xfb\x6c\xf7\xfa\xf7"
+"\x01\x15\x50\x43\x6c\x7b\x5f\x1b\x53\x66\xaf\xc2\x9a\x8d\x99\x93\xab\x1f\xa7\x8f\x05\xf7\x2a\xa0\xf5\xd7\xe1\x1a\xb5\x6d\xa5\x59"
+"\xfb\x24\xfb\x31\xfb\x38\xfb\x2b\x3a\xc1\x53\xda\xae\xa6\x92\x9d\xaf\x1e\x70\x6d\x80\x71\x6a\x1a\x58\xb6\x60\xbf\xbc\xb4\xa4\xbf"
+"\xae\x1e\x7a\x9d\x05\x75\x70\x73\x81\x6b\x1b\x68\x73\xa0\xab\xb7\x9b\xa9\xc0\xc6\x1f\x9b\x9c\x05\xfb\x6e\xf7\x2f\x15\xe4\xad\xd5"
+"\xd8\xbe\x1b\xa0\x99\x7c\x73\x6c\x78\x67\x6c\x6d\x1f\x66\x68\x65\x79\x35\x76\x08\x0e\xfb\x9e\x65\x0a\x0e\xfb\x9e\x65\x0a\xfb\x03"
+"\xf7\xeb\x15\xb5\x06\xa0\xba\x05\xa3\xbe\x98\xb3\x9f\x1a\xa0\x81\x96\x78\x62\x7d\x6e\x22\x80\x1e\x0e\xf7\xe8\xf7\x8c\xf7\xb7\x15"
+"\x4c\xf8\x8c\xca\x07\xfc\x8c\xf7\x21\x15\x4c\xf8\x8c\xca\x07\xfc\x8c\xfb\xad\x15\x4c\xf8\x8c\xca\x07\x0e\x4f\xf8\x9b\xf7\x8e\x15"
+"\x8a\xd3\x87\xae\x7d\xb0\x08\xdb\x6e\x44\xbb\x34\x1b\xfb\x16\x39\x23\xfb\x37\xfb\x37\xda\x29\xf7\x18\xee\xcf\xbf\xeb\xa5\x1f\x64"
+"\x06\x46\x6e\x58\x68\x42\x1b\x62\x69\x97\xa2\x74\x1f\x7a\x9b\x83\x9c\x80\xb2\x08\xf4\x07\xf7\xa6\xae\x15\xfb\xa4\xe8\x06\xd5\xab"
+"\xad\xa5\xcd\x1b\xce\xc0\x66\x4c\x9f\x1f\x0e\xfb\x38\x67\x0a\x0e\xfb\x38\x67\x0a\xc2\xf9\x22\x15\xb5\x06\xa1\xba\x05\xa1\xbb\x99"
+"\xb6\x9f\xe0\x1d\xfb\x20\xdc\xf7\x46\x15\x9a\x87\x05\x8f\x94\x8d\x91\x8c\x1a\xa2\xc7\x8f\x96\x93\xa0\x9f\xba\x19\xc0\xf7\x13\x05"
+"\xaa\xd5\x9f\xcf\xa8\x1a\xa5\x7e\x99\x72\x66\x7a\x69\xfb\x0a\x75\x1e\x35\xfc\x3a\x15\x6f\x75\x75\x6f\x70\xa2\x74\xa6\xa6\xa2\xa1"
+"\xa6\xa8\x75\xa1\x6f\x1f\xf7\xf5\xe0\x15\x9a\x87\x05\x8d\x91\x8f\x94\x8c\x1a\xa2\xc7\x8e\x95\x9c\xb4\x97\xa7\x19\xc0\xf7\x13\x05"
+"\xa9\xd5\xa0\xcf\xa8\x1a\xa5\x7d\x99\x73\x66\x7a\x69\xfb\x0a\x75\x1e\x35\xfc\x3a\x15\x6f\x75\x75\x6f\x70\xa2\x74\xa6\xa6\xa2\xa1"
+"\xa6\xa8\x75\xa1\x6f\x1f\x0e\xfb\x80\xbd\x16\xf7\xd9\xf8\xd5\xfb\xd9\x37\xf7\x85\xfb\x36\xfb\x85\x37\xf7\x85\xfb\x37\xfb\x85\x06"
+"\x0e\xc9\xf8\x19\xf7\xa7\x15\xb3\x93\x9c\x90\xa4\x9a\x08\xd0\xb3\xb4\xd2\xda\x1a\xf7\x0d\x29\xed\xfb\x0e\xfb\x0d\x29\x29\xfb\x0d"
+"\x3c\xb4\x45\xd0\x62\x1e\xa3\x7c\x9c\x85\xb3\x84\x08\x3e\xfb\x29\x57\xf7\x29\xfb\x2c\xc3\xf7\x2c\xf7\x28\xbf\xfb\x28\x07\x6c\xf8"
+"\x5d\x15\xe7\xd5\x43\x32\x30\x42\x42\x31\x31\x42\xd4\xe5\xe3\xd4\xd5\xe2\x1f\x0e\xf7\x80\xa3\x15\x4e\x96\x6a\xc0\xe4\x1a\xed\xc2"
+"\xf7\x44\xc5\xe7\x1e\xcd\xb5\xc5\xb4\xbe\x1b\xc6\xb6\x53\x3d\x77\x8a\x79\x87\x73\x1f\xa4\x06\xb6\xf7\x73\x05\x76\x06\x6c\x7e\x81"
+"\x7e\x80\x1b\x88\x85\x8e\x90\x85\x1f\xa2\x6c\x66\x97\x69\x1b\x34\x31\x50\x23\x44\x1f\x4d\x32\x66\xfb\x06\x27\x1a\xfb\x1e\xce\x37"
+"\xf7\x01\xd4\xd3\xaa\xc4\xc7\x1e\x7a\x9d\x63\x69\x6f\x7a\x65\x7f\x19\xbb\xf7\x48\xaa\xb7\x9d\x9c\xa3\x91\x19\x78\x95\x93\x85\x9b"
+"\x1b\xa3\x9c\x9c\xa1\x9e\x7f\x96\x76\x6b\x71\x7a\x57\x5d\x1f\x9e\xce\x81\x8e\xfb\x05\x64\x86\x79\x05\x8e\x9a\x8f\x8c\x90\x1b\x94"
+"\x8f\x87\x82\x86\x89\x82\x87\x7c\x1f\x0e\xfb\x9e\xf7\x52\xcb\x15\x9c\xda\x92\xc5\xc7\x1a\xf7\x04\x69\xd2\x57\x62\x5a\x57\x37\x64"
+"\x1e\x98\x80\x05\xc5\xab\xaa\xaf\x9c\x1b\x96\x9b\x78\x73\x92\x1f\x96\x6a\x90\x5b\x45\x1a\x4e\x87\x51\x84\x5f\x1e\x64\x55\x84\x81"
+"\x7f\x72\x08\x7c\x6c\x80\x68\x78\x1a\x74\x9a\x7b\x9f\xa0\x9f\x9d\xad\x9c\x1e\x99\xa8\x94\xa8\xa1\xe8\xa7\xab\x9a\x9b\xaa\xaa\xe4"
+"\xe2\x95\x97\xa8\xb3\x08\xab\xb9\x9e\xbf\xb3\x1a\xb1\x76\xa5\x6d\x70\x76\x76\x70\x7d\x8d\x85\x98\x6b\x1e\x93\x79\x8e\x7f\x7d\x1a"
+"\x79\x87\x7c\x81\x7a\x1e\x79\x69\x84\x84\x52\x51\x08\x0e\x39\x1d\xf7\x45\xf7\x7b\xc5\x1d\xb5\x59\xe3\xc0\xba\xa3\xb7\xac\x1e\x9f"
+"\xa6\x94\xa0\x94\xb5\x08\x0e\xfb\x3b\xf8\x69\x6d\x1d\xdb\xf7\x86\x20\x0a\x39\x1d\xf2\xf7\xb3\xcf\x0a\xac\xa8\xa1\x9f\xa5\x9d\x85"
+"\x96\x78\x9c\x1e\x7c\x99\x86\x93\x96\x1a\xa6\xa2\xa5\xbf\xae\x1e\x0e\x39\x1d\x93\xf7\x4f\x24\x1d\x0e\xf7\xe8\xf7\x90\x16\xf8\x30"
+"\x06\x9d\xcd\x05\xfc\x30\x06\x92\xa5\x15\xf8\x72\xf7\x81\x8d\x91\xfb\xeb\xf7\x8c\x71\x2e\xf7\x93\xfb\x4c\xfb\xf6\xfb\x42\x05\x0e"
+"\xf7\x2f\xf8\x97\x15\x8a\x88\xfb\x1b\xfc\x94\x05\x79\x0a\x7e\x97\x05\x84\x0a\xd7\xf7\xb1\x05\xf7\x25\x06\x92\xac\x05\xfb\x23\x06"
+"\xae\xf7\x16\xb4\x0a\xa1\x8c\x9e\x7f\x7d\x1a\x7e\x86\x74\x83\x6f\x1e\x89\x87\x05\x57\x06\x84\x6a\x05\x0e\xfb\x3b\xf8\x66\xf7\x09"
+"\x15\x84\x0a\xf7\x0c\xf8\x54\xb4\x0a\xa2\x8c\x9d\x80\x7c\x1a\x7d\x86\x73\x82\x6e\x1e\x8a\x89\x87\x7d\x86\x76\xfb\x1b\xfc\x94\x18"
+"\x79\x0a\x3d\xf9\x9b\x20\x0a\xf7\xe8\xf8\x87\x6f\x15\x9c\xde\xc7\xf3\xf7\x0b\xf7\x2b\xb4\xc0\x9b\xa0\x9a\xa3\x08\xb1\xca\x9d\xc2"
+"\xc1\x1a\xdc\x44\xcf\x37\x5b\x5f\x76\x65\x6a\x1e\x76\x72\x81\x75\x7e\x5d\x08\xf2\x67\x56\xbb\x3a\x1b\x36\x48\x46\x34\x4a\xa3\x56"
+"\xdc\xfb\x01\x1f\xf7\x2c\xfb\x5f\xb2\x48\xa5\x24\x08\x0e\xf7\xe8\xf7\x2d\x16\xf9\x50\xf8\x25\x06\xfb\xf3\xf7\xdc\xfb\xf1\xfb\xdc"
+"\x05\xc8\xfb\xf2\x15\xf7\xdc\x07\xf7\xb4\xf7\xa2\xf7\xb6\xfb\xa2\x05\xfb\xdc\x07\x0e\xfc\x12\x8f\x0a\x92\x9d\x1f\x8c\x90\x8d\x91"
+"\x8d\x92\x08\x8d\x07\x8c\x8d\xe3\xf7\xd6\x88\x8d\x25\x78\x78\x88\x64\xa3\x0a\x83\x88\x7a\x85\x78\x1e\x5b\xfb\x45\x05\x7b\x4f\x85"
+"\x6e\x77\x1a\x66\x9b\x77\xa9\xba\xaf\xa9\xdf\xc4\x1e\xdb\xf8\xb7\x3e\x1d\xf7\x66\xf2\x15\x66\x72\x6d\x6f\x7c\x1b\x84\x84\x91\x93"
+"\x8f\x8c\x8f\x8c\x90\x1f\xf7\x01\xf8\x10\x57\x7e\x5d\x83\x5b\x87\x20\x1d\x8d\x9a\xd0\x0a\x7e\x85\x78\x1f\x3a\xfb\xae\x05\x87\x7d"
+"\x89\x7f\x83\x1a\x77\x9f\x79\xa1\xa9\xb6\xac\xca\xc0\x1e\x92\xf8\xa7\xbf\x1d\xf3\xfb\x6a\x15\x8d\x9a\x90\x8b\x93\x1b\x9d\x96\x81"
+"\x7c\x85\x8a\x84\x86\x7d\x1f\x24\xfb\xfc\x77\x43\x85\x7d\x78\x72\x19\x78\x7c\x75\x7e\x76\x1b\x7f\x84\x8f\x94\x85\x1f\x9b\x94\x94"
+"\x9b\x9d\x7e\x96\x77\x75\x7a\x7b\x75\x70\xa9\x78\xb3\xde\xd0\xd7\xf7\x18\xb1\x1f\xf7\x07\xf8\x24\x54\x80\x65\x85\x58\x87\x19\xf7"
+"\x17\xf7\x59\xbf\x1d\x0e\xfc\x12\x2f\x1d\xf7\x29\xf8\x74\x29\x1d\xf7\xe8\xf8\x88\xf7\xa4\x15\x60\xb2\x87\x8e\x78\x99\x08\xa5\x6a"
+"\x60\x9b\x6a\x1b\x45\x51\x51\x45\x45\xc5\x51\xd1\xad\xb4\x9b\xa5\xad\x1f\x9e\x99\x8f\x8e\xb6\xb2\xb8\x64\x8f\x87\x9c\x7e\x08\x71"
+"\xae\xb4\x7b\xad\x1b\xd1\xc5\xc5\xd1\xd1\x51\xc5\x45\x6a\x60\x7b\x71\x69\x1f\x7a\x7e\x86\x87\x5f\x64\x08\xac\x6d\x15\xbe\xbe\xbf"
+"\xa9\xb3\x1b\xb7\xb0\x66\x5f\x5e\x66\x66\x5f\x64\x58\xa8\xc0\x56\x1f\x4a\x16\x57\x57\x57\x6e\x64\x1b\x5f\x66\xb0\xb7\xb7\xb0\xb0"
+"\xb8\xb2\xbe\x6e\x57\xbf\x1f\x0e\xf7\xe8\xf8\xb3\xf8\xd4\x15\xd5\x8a\xb1\x88\xc5\x1e\x89\xa7\x8a\xaa\x98\x1a\xb0\x96\xa2\x9d\x90"
+"\x91\x88\x88\x8d\x1e\x6f\x9c\x92\x86\x9d\x1b\x9e\x9a\x99\x9d\xa6\x73\x9d\x68\x68\x6e\x7a\x6d\x7a\x1f\x73\x5f\x7d\x20\xfb\x21\x1a"
+"\xfb\xed\x07\x43\x8c\x65\x8e\x50\x1e\x8d\x6d\x8c\x6f\x79\x1a\x69\x7f\x74\x78\x83\x85\x90\x98\x84\x1e\x9c\x81\x84\x90\x7d\x1b\x77"
+"\x7c\x7c\x79\x71\xa3\x79\xae\xae\xa8\x9c\xa9\x9c\x1f\xa3\xb7\x99\xf6\xf7\x21\x1a\x0e\xc9\xf7\xe7\xf9\xb4\x15\xfc\xfb\x07\x60\x8f"
+"\x4e\x95\x23\x1e\x8f\x61\x8d\x75\x7f\x1a\x79\x85\x81\x7f\x85\x89\x8c\x96\x80\x1e\x94\x81\x80\x90\x7d\x1b\x71\x75\x75\x70\x6c\xa7"
+"\x73\xae\xb7\xaa\xaa\xc5\x99\x1f\x9b\xcb\x90\xd4\xf7\x41\x1a\xf8\xf2\x07\x0e\xc9\xf8\x30\xfb\x61\x15\xf8\xfa\x07\xb7\x87\xc8\x81"
+"\xf3\x1e\x87\xb5\x89\xa1\x97\x1a\x9d\x91\x95\x97\x91\x8d\x8a\x80\x96\x1e\x82\x95\x96\x86\x99\x1b\xa5\xa1\xa1\xa6\xaa\x6f\xa3\x68"
+"\x5f\x6c\x6c\x51\x7d\x1f\x7b\x4b\x86\x42\xfb\x41\x1a\xfc\xf2\x07\x0e\xf7\xe8\xf9\x64\x16\xf7\x8a\x07\xf7\x1d\x86\xad\x73\xb4\x1e"
+"\xca\x65\x44\xb1\x39\x1b\x3f\x4b\x6c\x53\x62\x1f\x6a\x5e\x85\x6b\xfb\x29\x1a\xfb\x8a\xc7\xf7\x8d\x07\xf0\x91\xb6\x9c\xaa\x1e\xb9"
+"\xa4\xc2\xa9\xc4\x1b\xc0\xbf\x71\x61\xa7\x1f\xa0\x6b\x91\x66\xfb\x06\x1a\xfb\x8d\x07\x0e\xf7\xe8\xf8\x89\xf9\x6e\x95\x1d\xfb\x01"
+"\xfb\x63\xa2\x0a\xfb\x14\xfb\x05\x15\x97\x59\x95\x75\xa5\x6d\x08\x54\xbb\xc7\x71\xdc\x1b\xdc\xc7\xa5\xc2\xbb\x1f\xa5\xa9\x95\xa1"
+"\x97\xbd\x84\x36\x80\x62\x6d\x5e\x08\x4c\x61\x4b\x6b\x38\x1b\x3e\x4f\xa6\xc1\x61\x1f\x67\xba\x7c\xb8\x84\xe8\x08\xf7\xee\xf7\x05"
+"\xa2\x0a\x0e\xfc\x12\xbc\x0a\x79\x7d\x6a\x1d\x92\x9d\x1f\x90\x9d\x8c\x8d\x05\x8d\x07\x9e\x1d\x50\x85\x6d\x77\x1a\x6c\x94\x7b\xa1"
+"\x83\x1e\x7a\x74\x86\x7b\x73\x1a\x55\xa9\x0a\x6c\x1b\x65\x75\xa0\xae\xa6\x90\x92\xae\xa8\x1f\xa7\xa2\x9b\x9e\xab\xbb\x08\x76\xf8"
+"\xbb\x45\x0a\xfc\x12\x43\x0a\x0e\xfc\x12\x43\x0a\x45\xf8\x9d\x15\x42\x1d\xf7\x21\x16\x42\x1d\x0e\xfc\x12\xf7\x66\x72\x0a\x76\xf8"
+"\x6b\x15\xad\x06\x9b\xac\x05\x9b\xac\x95\xa8\x9a\x1a\x9a\x82\x93\x7c\x6b\x80\x76\x42\x85\x1e\x41\x70\x15\x86\x0a\xf7\x43\x59\x1d"
+"\xfc\x12\x43\x0a\x68\xf8\x20\x15\xb5\x06\xa1\xba\x05\xa0\xba\x9a\xb8\x9e\x1a\xa0\x81\x96\x78\x62\x7e\x6f\x21\x80\x1e\x0e\xfc\x12"
+"\x8f\x0a\x91\x9d\x1f\x8c\x8d\x8d\x93\x8e\x93\x08\x8d\x07\x8c\x8d\xe3\xf7\xd6\x88\x8d\x25\x78\x77\x88\x65\xa3\x0a\x84\x88\x7a\x85"
+"\x77\x1e\x5b\xfb\x45\x05\x7c\x53\x84\x6a\x77\x1a\x66\x9b\x77\xa9\xb9\xb0\xa9\xdf\xc4\x1e\xe7\xf8\x9d\x15\x6a\x7f\x7f\x80\x70\x1b"
+"\x7c\x7a\x3f\x0a\x71\x92\x75\x1b\x57\x70\x6e\x3e\x76\xa3\x1d\xfc\x16\xf7\x88\xf8\x4b\x15\x88\x8d\x36\x7c\x56\x83\x6b\x89\x19\x7b"
+"\x07\xa6\x8c\x05\x92\x06\xa7\x97\x81\x75\x81\x86\x71\x80\x5f\x1f\x43\xfb\xb8\x05\xfb\x1e\x69\x74\x60\x63\x54\x1d\xe2\xc7\xd6\xf7"
+"\x34\xb3\x1e\xf7\x02\xf9\x0d\x15\x5a\x06\xfb\x31\xb1\x0a\xfb\x48\xf7\x78\xf7\x98\x15\xa3\x9e\xa3\x9e\xa2\x9f\xaf\xa8\x97\x8f\xba"
+"\x8c\x08\xb0\x93\x8c\x91\x9a\x1f\x9d\x93\x96\x9d\x9f\x1a\xa3\x7a\x9a\x71\x62\x74\x7b\xfb\x08\xfb\x14\x1e\x77\x78\x63\x67\x7a\x7c"
+"\xc2\xf7\x5f\x18\x50\x7d\x61\x84\x5b\x87\x86\x78\x18\x3d\x0a\x7a\x80\x89\x82\x86\x76\x1f\x30\xfb\xe8\x05\xd4\x06\xca\xf7\x81\xe9"
+"\xfb\x5a\x05\x68\x9c\x9e\x7b\xa3\x1b\x9f\xa4\x98\xa0\x9d\x1f\xa0\xa2\x96\x9e\xa4\xbe\x7c\x93\x18\x5a\x74\x6e\x68\x78\x1b\x7b\x7a"
+"\x9e\xb4\x78\x1f\x0e\xfb\x6c\x72\x1d\xfb\xfa\xfc\x04\x30\x1d\xfb\x6c\xf7\x0e\xf7\x44\x15\xcb\xc2\xcf\xfb\x53\x05\x68\x97\x9d\x7a"
+"\xa2\x1b\x9e\xa4\x98\xa0\x9e\x1f\xa0\xa3\x98\x9d\xa8\xbe\x7d\x93\x18\x59\x72\x6c\x69\x79\x1b\x7c\x7d\x9f\xb3\x7c\x1f\x4c\xf7\x42"
+"\xf7\x07\xf1\xcd\xb3\xc3\x8d\x19\x8f\x9a\x05\xfb\x45\x06\x87\x7c\x05\xad\x8a\x92\x88\x80\x1a\x7f\x8b\x8b\x41\x4c\x1e\xfb\x18\xfb"
+"\x06\xce\xf7\x7e\x4b\x7e\x82\x89\x4a\x84\x19\x85\x78\x05\x8e\xa1\x8b\x8b\x91\x1b\x97\x96\x82\x80\x86\x89\x80\x87\x7e\x1f\x2a\xfb"
+"\xfc\x05\xce\x06\x0e\xfc\x12\xf7\x78\x3d\x1d\x33\xf8\xe4\x15\xae\x06\xf7\x3e\xf5\x05\x98\x93\x90\x93\x97\x1a\xa0\x7b\x9a\x76\x65"
+"\x1d\x0e\xfb\x77\xf7\x9a\xf7\xc0\x15\x7b\xfb\x1c\x05\x84\x50\x87\x67\x7f\x1a\x5f\x9a\x74\xa7\xb2\xb7\xb8\xdb\xb1\x1e\x7a\x95\x05"
+"\x56\x6d\x7a\x7c\x72\x1b\x74\x7f\x9e\xaf\x9f\x8c\x9c\x8f\xb1\x1f\xaf\xf7\xed\x05\x8e\xa2\x8c\x9f\x94\x1a\xbc\x74\xa6\x62\x6b\x77"
+"\x79\x6d\x78\x93\x7d\x9d\x82\x1e\xb7\x73\x91\x82\x5f\x1a\x74\x89\x75\x87\x6f\x1e\xfb\xd3\xfc\x38\x05\xdf\x06\x0e\xfb\xe8\xf7\x7a"
+"\x3d\x1d\xbf\xf7\xd6\x15\xe0\xba\xb8\xc2\xc4\x48\x0a\x71\x74\x70\x57\x68\x1e\x0e\xfc\x12\xf7\x78\x84\x1d\xae\xa8\xeb\xcb\x1e\xfb"
+"\x91\xfc\x14\x33\x1d\xfc\x17\xf7\x5f\x3d\x1d\xd9\xf7\x9b\x49\x0a\xf7\xe8\xf9\x18\x16\x9d\xcd\x05\xfc\x30\x06\x79\x49\x05\xf8\xd1"
+"\xf8\xdb\x15\xfc\x71\xfb\x81\x89\x85\xf7\xeb\xfb\x8c\xa5\xe8\xfb\x93\xf7\x4c\xf7\xf6\xf7\x42\x05\x0e\x92\x33\x0a\xf8\xa9\xec\x15"
+"\xd1\xf7\xa0\xe1\x1d\x9e\x84\x7a\x82\x79\x43\x5c\xfb\x43\x1f\x43\x67\x7f\x5d\xd3\xaf\x82\x69\x84\x71\x86\x7b\x19\x76\x41\x05\x78"
+"\x45\x84\x6c\x79\x1a\x66\x9b\x78\xac\xbf\xad\xa7\xec\xcc\x1e\x7e\x94\x05\x37\x49\x84\x84\x75\x1b\x81\x86\x91\x97\x93\x8e\x98\x8f"
+"\x9b\x0a\xfc\x12\xc0\xf8\x26\x15\xe6\x06\x2f\xfc\x3e\x05\xfb\x02\x73\x6a\x54\x60\x1b\x7f\x83\x92\x95\x8e\x2d\x1d\x92\x8c\x8f\x91"
+"\x1a\xa1\x79\x9c\x75\x76\x7b\x78\x73\x69\xae\x70\xb7\xe5\xd4\xf1\xf7\x4d\xb5\x1e\xed\xf8\x41\x8b\x8b\x94\xa6\x9a\xbc\x98\xa7\x9b"
+"\xa1\x08\xa1\x9c\x9e\x96\xa1\x1b\x98\x94\x36\x0a\x86\x1f\x86\x83\x8a\x86\x83\x1a\x73\x9a\x7b\xa1\xa2\x9f\x9e\xa1\xb1\x66\xa6\x59"
+"\x5a\x63\x75\x5c\x66\x1e\x6d\x63\x76\x5d\x6c\x29\x08\x2d\x06\x0e\xc9\xf8\xc1\xf8\xe5\x15\x44\xbc\x9c\x78\x9c\x1b\x95\x93\x92\x95"
+"\x91\x8a\x8f\x84\x99\x1f\x74\xb6\x7a\xcb\xb7\x1a\xa9\x89\x91\x7e\x86\x84\x88\x83\x7e\x1e\x77\x70\x3d\x76\x60\x1b\x71\x8a\x83\x86"
+"\x7e\x1a\x75\xad\x81\xe2\x85\x1e\x25\xfb\x4d\x05\x97\x6c\x6e\x91\x6b\x1b\xfb\x1a\xfb\x00\xfb\x00\xfb\x1a\xfb\x19\xf7\x00\xfb\x00"
+"\xf7\x1a\xf7\x19\xf7\x00\xf7\x00\xf7\x1a\xd8\x66\xd3\x4c\xb9\x1f\xfb\x22\x7b\x15\xee\xdc\x3b\x28\x28\x3b\x3a\x28\x27\x3b\xdb\xee"
+"\xee\xdb\xdc\xee\x1f\x0e\xfc\x4d\xf7\x17\xf8\x17\x15\xa0\x06\xce\xf7\x22\x05\xad\xd5\x91\x9a\x9b\x1a\x9f\x7c\x99\x74\x77\x79\x81"
+"\x7a\x80\x1e\x7d\x77\x86\x75\x84\x45\x08\x0e\xf7\x81\xf7\x43\x15\x92\x7c\x76\x8f\x7b\x1b\x4d\x54\x56\x50\x68\xa5\x75\xb4\xba\xb7"
+"\xa2\xb1\xa6\x1f\x9f\xa6\x91\xa1\x8d\xbb\x08\xf7\xb9\x07\xc3\x83\xb9\x40\x37\x1a\x59\x83\x65\x73\x54\x1e\xa6\x06\xaf\xb6\x9e\xc2"
+"\xc5\x1a\xd7\x6e\xd1\x51\xd2\x1e\x58\xc7\x8a\x8d\x86\x91\x83\x95\x19\xc5\x5f\x07\x0e\xc9\xf8\x13\xf8\x57\x15\x9e\x72\xa1\x78\xa0"
+"\x7f\xc3\x6b\x94\x85\x90\x82\x08\x91\x80\x8f\x78\x76\x1a\xfb\x7c\x07\x92\x7a\x74\x8f\x78\x1b\x46\x4d\x56\x4f\x68\xa8\x75\xb8\xbe"
+"\xbb\xa2\xb1\xaa\x1f\xa0\xa6\x92\xa1\x8d\xbc\x08\xf8\x00\x07\x8c\xd3\x6a\xd5\x5d\xa7\x54\xaf\x6d\x9f\x87\x8f\x08\x7e\x99\x85\x9d"
+"\xa2\x1a\x98\x5f\xfc\x80\x07\x92\x7b\x74\x8f\x79\x1b\x46\x4f\x56\x4f\x68\xa7\x75\xb7\xbe\xbb\xa2\xb1\xa8\x1f\xa0\xa6\x92\xa1\x8d"
+"\xbc\x08\x8e\xf8\x0a\x15\xf7\x03\x4f\xa3\x67\x8f\xfb\x08\xfb\x06\xc8\x74\xae\x87\xf7\x09\x08\x0e\x32\x1d\xfb\x66\xf8\x1a\xbb\x1d"
+"\x87\x85\x85\x1e\x0e\x38\xca\xf8\x7d\x15\xd0\xab\xb6\xbe\xbe\x1a\xa7\x76\xa3\x72\x74\x77\x76\x73\x81\x8f\x82\x93\x84\x1e\x99\x7e"
+"\x8e\x86\x81\x1a\x73\x74\x75\x5c\x77\x1e\xf7\x8c\x49\x15\x4d\x83\x81\x8a\x4b\x86\x85\x78\x18\x8e\xa0\x8b\x8b\x92\x1b\x97\x96\x82"
+"\x80\x84\x88\x7d\x85\x77\x1f\x21\xfb\xf5\x05\xd3\x06\xac\xf7\x06\x9b\xc3\xa5\xb8\xbe\xcb\x19\xd6\xc6\xaf\xa9\xa8\x1b\x99\x96\x7e"
+"\x7a\x80\x88\x7e\x85\x76\x1f\x3e\xfb\x8e\x05\x87\x80\x89\x7f\x84\x1a\x73\x9c\x7b\xa4\xb1\xb6\xab\xca\xba\x1e\x82\x94\x05\x67\x6e"
+"\x72\x76\x7d\x1b\x84\x85\x91\x93\x8f\x8d\x93\x8d\x95\x1f\xd3\xf7\x8d\x05\x90\x9d\x8e\x9f\x9d\x1a\xb2\x77\xa2\x6a\x4f\x4b\x51\xfb"
+"\x26\x25\x1e\x0e\x32\x1d\xaf\xf8\xc1\xbe\x1d\x32\x1d\xfc\x0b\xfc\x0a\x30\x1d\xf7\xe8\xf8\xa4\xf7\x6c\x15\xf7\x83\xc8\xfb\x60\x06"
+"\xe3\xf7\x2f\x05\xf7\x08\xc9\x3a\x06\xac\xc6\x61\xa3\x5c\x38\x05\xfb\x23\xa7\x0a\x37\xdc\x69\x1e\x6a\x52\xb6\x74\xb1\xce\x05\x88"
+"\xa4\x99\x8a\xb4\x1b\xf7\xac\xc9\xfb\xb7\x06\x77\x85\x8b\x8c\x81\x1f\xab\xf7\x2d\x15\x3a\xfb\x21\x57\x9d\x6c\xbe\x88\xd3\x19\xf7"
+"\xb6\xf7\x6c\x15\x33\xfb\x2f\x05\xfb\x5e\x06\x91\xf6\xc3\xbd\xf7\x01\x89\x08\x0e\xf7\xe8\xf8\xcf\xf7\xd4\x15\xf7\x49\xcd\xfb\x28"
+"\x06\xba\xe8\x50\xa9\x4d\xfb\x0f\x05\xfb\xae\x49\xf7\x8d\x06\x47\xfb\x1a\x05\xfb\x49\x49\xf7\x28\x06\x5c\x2e\xc6\x6d\xc9\xf7\x0f"
+"\x05\xf7\xae\xcd\xfb\x8d\x06\x0e\xfb\x6c\xf7\x8f\xf7\x51\x15\x8a\xc6\x87\xbd\x84\xb2\x08\xd2\x7d\x72\xaf\x65\x1b\x5b\x61\x54\x38"
+"\x7e\x1f\x9b\x85\x05\xbe\x96\xa4\xb3\xa0\x1b\x9b\x93\x7d\x68\x92\x1f\x96\x52\x96\xfb\x0e\x4d\x1a\x51\x8a\x72\x88\x69\x1e\xa0\x06"
+"\x98\x9c\x8b\x8b\xa7\xae\xcd\xde\x93\x97\xaf\xc8\x08\xb8\xdb\xa4\xcb\xb5\x1a\xb0\x73\xa8\x6d\x74\x78\x79\x73\x7c\x93\x7c\x9a\x83"
+"\x1e\x9e\x7f\x8f\x86\x7c\x1a\x54\x5c\x2c\x40\x2a\x1e\x0e\x2b\x1d\xf7\x36\xf7\x7a\x3e\x1d\x2b\x1d\xfb\x1c\xd5\xaf\x1d\x93\xfb\x34"
+"\xac\x1d\x2b\x1d\xf7\x4a\xf7\x37\x29\x1d\xb9\xf7\x7c\xf8\x4c\x15\xfb\x0c\x32\x58\x35\xfb\x02\x1a\x2b\xc0\x46\xd3\xbf\xbc\xac\xcd"
+"\xbc\x1e\x4b\x9a\xad\x68\xbc\x1b\xf7\x02\xf4\xf7\x36\xf7\x40\xcf\x6a\xbf\x61\x74\x77\x78\x74\x7b\x93\x7c\x9c\x7b\x1f\xb6\x63\x92"
+"\x7e\x61\x1a\xfb\x09\x33\xfb\x14\x3c\x63\x6f\xad\xd0\x7d\x1e\xc1\xe6\x9d\xb8\xb9\x1a\xa6\x80\x9a\x77\x5e\x6e\x4b\x28\x78\x8c\x7d"
+"\x8e\x6e\x1e\x4c\x5f\x58\x64\x65\x1b\x65\x74\xae\xc4\xee\xc0\xf7\x2a\xc7\xd2\x1f\x0e\xb1\xf8\x22\xf8\x76\x15\xb5\x06\xa0\xba\x05"
+"\xa3\xbe\x98\xb3\xa0\x1a\x9f\x81\x96\x78\x62\x7d\x6e\x22\x80\x1e\xfb\x43\x29\x15\xfb\x0c\x32\x58\x36\xfb\x03\x1a\x2b\xc0\x46\xd3"
+"\xbf\xbd\xac\xcd\xbb\x1e\x4b\x9a\xad\x68\xbc\x1b\xf7\x02\xf4\xf7\x36\xf7\x40\xcf\x6a\xbf\x61\x74\x77\x78\x74\x7c\x94\x7b\x9b\x7b"
+"\x1f\xb7\x63\x92\x7d\x61\x1a\xfb\x08\x33\xfb\x14\x3b\x63\x70\xad\xd0\x7c\x1e\xc1\xe6\x9d\xb8\xb9\x1a\xa6\x80\x9a\x76\x5f\x6e\x4a"
+"\x29\x77\x8c\x7d\x8e\x6f\x1e\x4c\x5f\x59\x64\x64\x1b\x65\x74\xae\xc4\xee\xc0\xf7\x29\xc7\xd3\x1f\x0e\x83\x1d\x0e\x83\x1d\x8a\xca"
+"\x15\xb5\x06\xa1\xba\x05\xa1\xbc\x99\xb5\x9f\x1a\xa0\x81\x96\x78\x62\x7d\x6f\x21\x81\x1e\x0e\xf7\xd3\x93\x16\xfa\x56\xd3\xfe\x0e"
+"\xfa\x03\x43\x06\x0e\x70\x1d\xc9\xf8\x74\x3b\x0a\xf7\x03\xf9\x36\x15\xa2\xb9\xaa\x94\xb1\x1b\xed\xc6\x2a\xfb\x35\x6d\x89\x73\x86"
+"\x5b\x1f\xbe\x4b\x67\x9a\x58\x1b\x5b\x65\x7a\x68\x68\x1f\x5c\x5c\x70\x4a\x4a\x1a\x20\xde\x35\xf3\xc8\xc1\xa5\xbb\xb3\x1e\xc3\xd0"
+"\xb1\xf7\x1d\xf7\x1e\x1a\xf7\x57\xfb\x08\xf7\x2a\xfb\x2b\x64\x68\x83\x77\x54\x1e\xf7\xc0\xfc\x31\x15\x7a\xfb\x0a\x7d\x55\x6f\x5d"
+"\x08\x5c\x6f\x65\x71\x64\x1b\x54\x69\xbe\xe0\xf7\x08\xcd\xe9\xdd\xb0\xa5\x7e\x61\xb5\x1f\x0e\xf7\x82\xf7\x79\x62\x0a\xf8\x51\x67"
+"\x15\x53\x06\x9d\xcf\x05\x8c\x8d\x8b\x8d\x8c\x1a\x92\x8c\x87\x8f\x85\x1b\x83\x8b\x8b\x83\x85\x1f\x6c\x64\x68\x6f\x70\x82\x08\x77"
+"\x83\x86\x86\x82\x1a\x88\x8b\x89\x8c\x87\x1e\xbe\x06\x59\xfb\x51\x89\x82\x05\x8a\x8a\x89\x8a\x88\x1e\x84\x72\x86\x76\x83\x1a\x7a"
+"\x9c\x7e\xa0\xae\xa1\x9e\xd3\xbc\x1e\x7b\x94\x05\x5c\x67\x80\x81\x82\x1b\x87\x88\x8f\x8f\x8c\x8b\x8d\x8c\x8d\x1f\xc8\xf7\x7c\x05"
+"\xc7\x06\x0e\x20\xf7\xad\xf8\x52\x15\x4f\x86\x61\x79\x5e\x63\x08\x4e\x54\x65\x35\x35\x1a\x2b\xbf\x52\xed\x7f\x1e\x5b\xfb\x54\x05"
+"\xc7\x06\xbc\xf7\x54\xda\x94\xbd\xa2\xbf\xbc\x19\xc9\xc7\xb3\xe3\xd9\x1a\xdf\x54\xcb\x43\x68\x68\x7b\x6e\x72\x1e\x78\x76\x7e\x6e"
+"\x7c\x4e\x47\xfb\xa4\x18\x54\x9e\x75\xac\xcb\x1a\xe2\xb0\xf7\x02\xb8\xbc\x1e\xa3\xa5\x9f\x97\xaf\x96\x08\xb8\xfb\x1a\x15\x97\xbb"
+"\x90\x9a\x93\x96\x08\x9a\x96\x99\x93\x9a\x1b\xb0\xa7\x5f\x4f\x3e\x6a\x31\x5d\x5e\x1f\x6a\x6a\x6c\x7c\x52\x81\x08\x0e\xfb\x33\xf8"
+"\xd1\xf8\x46\x15\xfc\x18\x06\x5d\x81\x88\x75\x6b\x1f\x27\x45\x96\x77\xd0\xb0\xab\x94\xcf\x8a\x19\x40\xfb\x61\x86\x80\x5d\x63\x69"
+"\x72\x8b\x8b\x82\x81\x08\x7d\x7c\x83\x79\x7b\x1a\x77\x97\x80\xa2\xae\xa5\x9f\xb9\xa3\x1e\x9c\xad\xa3\xcd\x9f\xd0\x93\xa7\x91\x9e"
+"\x8d\x91\xa6\xde\x18\xf7\x5d\x06\x56\x63\x74\x6b\x7b\x51\x69\xfb\x1c\x18\x82\x69\x8a\x85\x7e\x1a\x71\x97\x71\x97\x8d\x8d\x8c\x8f"
+"\x97\x1e\xf7\x09\xb9\x8c\x9f\x05\x7d\x62\x8b\x8b\x83\x1b\x7c\x7d\x99\x99\x90\x8b\x8b\x95\xb3\x1f\xa8\xf7\x04\xa0\xe3\x8f\x96\x9e"
+"\xa9\x19\xf7\x09\x06\x0e\xf7\xe8\xf9\x45\xf9\x55\x15\xfd\x72\x07\x54\x8a\x78\x77\x54\xbb\x0a\xf9\x3b\x07\xc4\xa0\xa2\xc0\x1e\x9c"
+"\x9d\xfd\x9f\x79\x9b\x06\xc1\x9f\x75\x51\x8c\x1f\xfd\x3b\x07\x54\x8a\x77\x77\x55\xbb\x0a\xf9\x72\x07\x0e\xf7\xe8\xf9\x93\xc9\x15"
+"\xfb\xb7\x06\xfb\x0d\x57\xc2\xf7\x16\xf7\x15\xbf\xc3\xf7\x0d\x1f\xf7\xb7\xc9\xfb\xac\xcd\x0a\x43\x2b\x1a\xfb\x07\xb8\x37\xca\x0a"
+"\x06\x0e\xf7\xe8\xf7\x7d\xc9\x15\x4d\xf7\xac\x07\xde\xae\x92\xa4\xb1\x1f\xcc\xb7\xac\xd3\xf2\x1a\xf6\x5c\xe0\x3e\xac\x1e\x99\x69"
+"\x70\x8f\x46\x1b\xfb\xac\x4d\xf7\xb7\x06\xf7\x0d\xbf\x54\xfb\x16\xfb\x16\x57\x54\xfb\x0d\x1f\x0e\x64\xf8\x47\xf8\x46\x15\x43\x06"
+"\xfb\x03\xfc\x33\x05\x55\x92\x6e\xa8\xbb\x1a\xa2\x91\xb1\x93\xa8\x1e\xb1\xf7\x23\x05\x90\x9e\x8e\x9e\x99\x1a\xaa\x78\xa4\x72\x6d"
+"\x67\x77\x6b\x6e\x1e\x78\x76\x7f\x78\x74\x5f\x9a\x84\x18\xc5\xaa\xac\xaf\xa3\x1b\x94\x90\x85\x80\x84\x8a\x86\x85\x75\x1f\x6a\xfb"
+"\x0f\x05\x81\x66\x86\x6d\x77\x1a\x62\x9b\x6a\xab\x70\x1e\xa8\x73\xa2\x83\xbb\x86\x5e\xfb\x3c\x18\xd3\x06\xb7\xf7\x39\xe6\x93\xc7"
+"\xad\xbe\xd2\x19\xb6\xc7\xad\xf4\xd5\x1a\xc7\x75\xb2\x68\x72\x75\x74\x72\x7d\x91\x7b\x97\x7c\x1e\xae\x5c\x8f\x83\x69\x1a\x58\x6f"
+"\x46\x64\x5e\x1e\x62\x5b\x5e\x75\x43\x81\x08\x0e\xfb\xdb\xf7\xe0\xf8\x58\x15\x61\xad\x79\xa8\xad\x1a\x99\x92\x94\x96\x8c\x8c\x8b"
+"\x8a\x8d\x1e\x89\x94\x8f\x8a\x94\x1b\xb5\xa8\xa6\xb1\xa5\x79\x9c\x6e\x53\x5c\x56\x4b\x5a\xab\x59\xbd\x70\x1f\x0e\xfb\xa3\x41\x0a"
+"\xf7\x37\xa7\x1d\xc9\xf8\x5b\x4a\x15\xf7\x32\xfa\x68\x53\x94\xfb\x0f\xfd\x95\xfb\x4e\xf8\x0d\xfb\x37\x3c\xa3\x58\xea\xba\x05\x0e"
+"\xfb\xa3\x41\x0a\xf8\x2d\xf9\x29\x21\x0a\xfb\xa3\xf7\x0d\x16\xbf\xf7\x3e\x9c\xb6\xb9\xd7\x08\xc4\xad\xa6\xa9\x9c\x1b\x92\x8f\x87"
+"\x81\x90\x1f\x7a\x93\x93\x86\x9f\x1b\xa9\x9b\x9c\xac\xef\x1d\x61\x62\x4f\x7c\x64\x7c\x67\x18\xc1\xf7\x6d\x88\x8d\x42\x7e\x80\x89"
+"\x44\x7f\x19\x7a\x07\x8f\xa0\x90\xc3\x1d\x60\xfb\xa2\x33\x1d\xf7\x79\xf7\x97\xf7\x00\x15\xf7\x68\xf8\x4a\xcd\xfc\x8c\xfb\xaa\x07"
+"\x0e\xfb\x48\x75\xfb\x40\x15\xda\x06\xc3\xf7\x65\x05\x67\xab\xa0\x80\xb0\x1b\xf7\x0e\xf7\x0b\xf7\x22\xf7\x26\xee\x53\xce\x38\x59"
+"\x57\x76\x66\x63\x1f\x67\x6a\x78\x64\x74\x34\x08\xe8\xbe\x15\xe3\xa2\xb8\xc0\xbe\x1b\xb4\xa4\x6a\x52\x4a\x75\x2d\x6e\x4f\x1f\x4d"
+"\x6d\x61\x6a\x5b\x1b\x6e\x77\x99\xaf\x75\x1f\x0e\xfb\xa3\x31\x0a\xf7\x30\xf7\xf0\x2b\x0a\xfb\xa3\xf7\x21\x81\x15\x8a\x93\x8e\x8b"
+"\x92\x1b\xe0\x6f\x0a\x7b\x06\x77\xfb\x33\x05\x9b\x06\x9c\x94\x8f\x8f\x96\x1b\x98\x94\x89\x83\xa9\x1f\x50\x2d\x7c\x0a\x82\x85\x2c"
+"\x0a\xfb\xa3\x31\x0a\xf7\xa5\xf8\x97\x20\x0a\xfb\xa3\x31\x0a\x83\xfc\x34\x40\x1d\xfb\x87\xf7\xd6\xf8\x17\x15\xa1\x06\xcf\xf7\x21"
+"\x05\x9f\xb5\x9c\xbb\x9c\x1a\x9f\x7d\x98\x75\x76\x75\x7f\x7a\x81\x1e\x7e\x76\x87\x77\x84\x44\x08\xfb\x53\xfb\x20\x15\xa0\x06\xce"
+"\xf7\x22\x05\xae\xd6\x90\x98\x9c\x1a\x9f\x7c\x99\x75\x78\x78\x81\x7a\x7f\x1e\x7d\x77\x86\x76\x84\x44\x08\x0e\xfb\x3b\xf8\xd0\xf8"
+"\x46\x15\xfb\x85\x06\x22\x55\x76\x48\x4d\x1f\x55\x52\x6a\x3b\x44\x1a\x33\xca\x52\xed\xd1\xce\xa7\xbd\xbc\x1e\xbf\xc0\xa8\xcc\xca"
+"\x1a\xc7\x73\xb0\x59\x9e\x1e\xaa\x89\xc4\x88\xcb\x88\xa3\x8a\x05\xfb\x64\x90\x15\x9e\x69\x90\x78\x64\x1a\xfb\x1d\x3d\xfb\x07\x2e"
+"\x51\x68\xb6\xd2\xc0\x9d\xc3\xa9\xb5\x1e\xc2\xb4\xba\xa3\xd5\x1b\x0e\xf7\xe8\xf8\x1b\xf8\x9a\x15\x70\x74\x74\x71\x6f\xa2\x74\xa6"
+"\xa6\xa2\xa2\xa6\xa6\x74\xa2\x70\x1f\xfb\x14\xfb\x00\x15\x92\x36\x96\x62\xa9\x5e\x08\x4c\xb5\xcb\x6b\xde\x1b\xd8\xc7\xa6\xc1\xb5"
+"\x1f\xaf\xba\x9a\xb8\x92\xe8\x80\x59\x80\x75\x71\x6d\x08\x54\x5b\x4f\x71\x3a\x1b\x3a\x4f\xa5\xc2\x5b\x1f\x71\xa9\x80\xa1\x80\xbd"
+"\x08\xf7\xee\xf7\x00\x15\x70\x74\x74\x71\x6f\xa2\x74\xa6\xa6\xa2\xa2\xa6\xa6\x74\xa2\x70\x1f\xfb\x01\xf7\x68\x95\x1d\x89\x5a\x15"
+"\xf7\x45\xf7\x21\xfb\x20\xfb\x44\xfb\x43\xfb\x21\xfb\x21\xfb\x43\xfb\x41\xfb\x23\xf7\x21\xf7\x3e\xf7\x47\xf7\x1e\xf7\x22\xf7\x44"
+"\x1f\x0e\xf7\xe8\xf8\xab\xf7\x99\x15\x7f\x07\x44\x6b\x45\x5a\x66\x1e\x6c\x62\x56\x7a\x57\x1b\x7e\x74\xf8\x77\xa2\x06\xfb\x32\x91"
+"\x3c\xe3\x8e\xf7\x3d\x08\x35\xb9\xb6\x6d\xda\x1b\xcd\xc4\xca\xd4\xd0\x73\xb0\xfb\x01\xef\x1f\xfb\x02\xf1\x7a\xa5\x63\xf7\x09\x7c"
+"\x30\x4d\x30\x23\x39\x08\x3c\x49\x67\x51\x4c\x1a\x40\xc8\x4d\xd4\xb4\xb4\x9c\xa9\xac\x1e\x9e\x9d\x96\x9a\x9c\xb0\x08\x0e\xf7\xe8"
+"\xf7\xee\xf9\x5b\x15\xf7\x85\x06\xf4\x8a\xa5\x75\x9a\x26\x08\xa2\x06\x82\xf7\x39\x05\xfc\xaf\x06\xf7\x66\xfc\x67\xfb\x6e\xfc\x2c"
+"\x05\xf8\xc8\x06\xbc\xf7\x66\x05\x74\x06\x6f\x3b\x6c\x78\x26\x8c\x08\xfb\xbc\x06\xf7\x49\xf7\xf4\x05\x0e\xf7\xe8\xf7\xcd\xf8\x77"
+"\x15\x6e\x66\x7c\x67\x85\x5b\x08\xfb\x05\x54\xf7\x05\x06\x8f\x61\x9e\x5b\xa6\x6a\x3b\x3c\x18\xb1\x65\xdb\xdb\xb1\x6e\xb2\x7b\xb8"
+"\x86\x19\xfb\x05\xc1\xf7\x05\x07\xb7\x90\xb9\x9e\xab\xa5\xdb\x3b\x18\xb0\xb1\x3b\xdb\xa8\xae\x9c\xb5\x90\xb8\x19\xf7\x05\xc2\xfb"
+"\x05\x06\x86\xb6\x79\xb7\x70\xad\xda\xda\x18\x66\xb1\x3b\x3b\x69\xa6\x62\x9c\x5c\x92\x19\xf7\x04\x55\xfb\x04\x07\x60\x86\x5f\x79"
+"\x68\x6f\x3b\xdb\x18\x65\x65\x05\xf7\x9c\x55\x15\xec\xd8\x40\x2d\x2b\x3f\x3e\x2c\x2d\x3e\xd8\xea\xe7\xd8\xd9\xe6\x1f\x0e\xfb\xc2"
+"\xf8\x50\xf8\x46\x15\xfb\xa7\x06\x60\x7a\x86\x75\x6f\x1f\x27\x3d\x99\x75\xd6\xba\xa7\x94\xdc\x8c\x19\xb4\x06\x4e\x59\x7c\x76\x79"
+"\x4d\x64\xfb\x2c\x18\x85\x75\x8a\x84\x83\x1a\x73\x99\x71\x97\x8c\x1e\x8e\x8f\x8c\x8e\x91\x1f\xf7\x0f\xba\x90\xa1\x05\x81\x71\x72"
+"\x84\x7d\x1b\x7d\x85\x92\x9a\x94\x8b\x8b\x96\xb7\x1f\xb1\xf7\x27\x98\xbc\x91\x9a\x9d\xa8\x19\xf7\x46\x06\x0e\xfc\x12\xf7\x4a\xf7"
+"\xc0\x15\xa4\xeb\x05\xdf\x06\x90\xab\x05\x45\x1d\x8c\x1a\x92\xa0\x1d\x72\x2b\x05\x38\x06\x83\x68\x05\xdd\x06\x65\xfb\x24\x89\x81"
+"\x8a\x88\x93\x1d\xc0\xf7\x5e\x05\xf3\x06\x92\xae\x05\x0e\xfb\xe2\xf7\xbd\xf8\x40\x15\x3b\x06\xa7\xf2\x05\x8c\x8d\x8b\x8d\x8d\x1a"
+"\x91\x4f\x1d\x85\xb3\x9a\x1d\x0e\xfc\x12\xf0\x81\x15\xb3\x93\xab\xa9\xc1\xdd\x7e\x92\x18\x4b\x59\x7c\x7c\x7b\x1b\x82\x85\x92\x98"
+"\x8c\x8b\x8b\x8c\x8f\x1f\xe3\xf7\xe1\x05\xdf\x06\x90\xab\x05\x45\x1d\x8d\x1a\x91\x89\x8e\x85\x85\x88\x8a\x83\x85\x1e\x63\x57\x4f"
+"\x5a\x6b\x82\x08\x72\x83\x84\x85\x81\x1a\x84\xd5\x07\x43\xfb\xa7\x89\x82\x05\x8a\x89\x86\x89\x85\x1e\x82\x6c\x83\x6b\x80\x1a\x7c"
+"\x95\x7f\x9c\x85\x1e\x54\x32\x7c\x0a\x81\x86\x2c\x0a\xfb\x3d\xf7\xf6\xf9\x27\x15\x33\x39\x3f\xfb\x0f\x5d\x1f\x66\x25\x6e\xfb\x16"
+"\x47\x1a\xfb\x01\xb8\x4e\xda\xdc\xd7\xca\xf4\xb8\x1e\xb8\xf2\xae\xf7\x2c\xe4\x1a\xea\x5a\xc9\x40\x1e\xfb\x3b\xfb\xba\x15\xad\xf7"
+"\x0f\x9c\xba\xa7\xba\x08\xb0\xa1\xa9\xa0\xa9\x1b\xb3\xa4\x6b\x59\x62\x83\x58\x74\x26\x1f\x86\x71\x15\x6e\xfb\x07\x76\x47\x77\x5e"
+"\x08\x47\x6e\x68\x69\x62\x1b\x63\x71\xab\xbd\xbc\x9a\xde\xa9\xf7\x08\x1f\x0e\xfb\xdb\xf7\x6c\xf8\x76\x15\xb5\x06\xa1\xba\x05\xa2"
+"\xbe\x98\xb3\x9f\x1a\xa0\x81\x96\x78\x62\x7d\x6e\x22\x81\x1e\x0e\xfb\x3b\x2a\x1d\x6d\xf8\xb2\x15\x4c\x72\x5a\x67\x4e\x1b\x4b\x63"
+"\xaf\xca\x87\x75\x0a\x2a\x1d\xfb\xbe\xf8\x16\xaf\x1d\x92\xfb\x34\x15\xaf\x9d\x0a\x85\x1e\x0e\x2a\x1d\x9f\xf8\x6f\x15\xfb\xc1\x46"
+"\x1d\xaf\x32\x15\x7e\x60\x05\xf8\x8e\x06\x98\xb6\x05\xfc\xae\xfb\x09\x15\x7e\x60\x05\xf8\x8e\x06\x98\xb6\x05\x0e\xfc\x2e\x0e\xfb"
+"\xdb\xab\x0a\x23\x50\x1d\xfc\x76\xfd\x8c\x30\x1d\xfc\x12\xf7\xbc\xf8\x40\x15\x45\x1d\x8c\x1a\x92\x4f\x1d\xfb\xc3\xfd\x2e\x33\x1d"
+"\xfb\xdb\xf8\x2f\xf8\xdb\x29\x1d\xfc\x2e\x46\x0a\x42\xf8\x60\x16\x97\xf9\x2a\x05\x78\x06\xfc\x8d\xfd\x2a\x05\xf8\x34\xb4\x15\xfb"
+"\x97\x06\x71\x7c\x92\x98\x93\x95\x9e\x97\x9c\x1f\xf7\xb6\xf8\x15\x05\x0e\xca\xf9\x58\xf7\x37\x15\x6d\x06\x65\x4b\x75\x7c\x4c\x88"
+"\x08\x57\x06\x78\x83\x8a\x89\x75\x1f\x90\x8e\x91\x8e\x91\x8e\xb8\xa2\x18\xc8\xab\x9b\x97\xb1\xb8\x08\xcc\xd7\xae\xe5\xe4\x1a\xd3"
+"\x74\xc5\x62\xae\x1e\xaf\x5f\x48\xa1\x45\x1b\xfb\x0a\xfb\x06\x57\x33\x41\x1f\x4a\x3f\x67\x2c\x2f\x1a\x2e\xb0\x50\xe2\x5f\x1e\x8d"
+"\x79\x7e\x8c\x83\x1b\x59\x06\x45\x7b\x9a\xce\x89\x1f\x6d\x06\x82\xfb\x37\x05\xf7\xa2\x06\xa0\xd9\x68\x9b\x7d\x97\x7d\xa0\x19\x76"
+"\xaa\x80\xb4\xb6\x1a\xdf\xa5\xe9\xb6\xd3\x1e\xee\xc6\xda\xc0\xe3\x1b\xeb\xc0\x52\x24\x2f\x65\xfb\x05\x52\x38\x1f\x62\x51\x61\x6a"
+"\x49\x70\x77\x3d\x18\xf7\xa2\x06\x0e\xfb\x32\xf7\x27\xf8\x46\x15\x46\xfb\x97\x7e\x59\x6e\x32\x78\x5b\x19\x67\x30\x88\x80\x76\x1a"
+"\x72\x9d\x79\xa4\xa9\x9a\xa2\xb9\x92\x8b\x95\x8a\x96\x1e\x8a\x9f\x8a\x9a\x92\x1a\x98\x8c\x96\x8d\xa2\x1e\x7c\x97\x96\x85\x9c\x1b"
+"\xa8\xad\x9e\xb1\xb3\x1f\xb0\xaf\xa7\xaf\xc0\xde\x68\xfb\x17\x18\x86\x7a\x89\x7c\x80\x1a\x75\x9b\x7b\xa0\xaf\xbd\xae\xbf\xb1\x1e"
+"\x81\x95\x05\x6b\x6e\x76\x7b\x7e\x1b\x84\x87\x91\x94\x92\x90\xa4\x91\xa0\x1f\xe2\xf7\xde\x05\x44\x06\x75\x34\x73\x31\x7a\x67\x54"
+"\x3f\x19\x49\x5b\x65\x69\x6f\x1b\x76\x80\x95\x9f\x95\x8b\x8c\x92\xa3\x1f\xe1\xf7\xd8\x05\x0e\xfb\x92\xf7\xed\xf8\x50\x15\xfb\x2e"
+"\xfb\x27\xfb\x30\xfb\x39\x36\xb4\x62\xe1\x94\x95\x8b\x8c\x92\x1f\x8f\xac\x8b\x8b\x95\x1b\xa9\x99\x81\x77\x6b\x68\x6a\x6b\x81\x81"
+"\x8d\x90\x7f\x1f\x92\x75\x89\x8c\x80\x1b\x70\x78\x7b\x74\x73\xa0\x7c\xaa\xd8\xe7\xe1\xd3\xb6\x70\xa7\x61\x83\x82\x8a\x8a\x82\x1f"
+"\x87\x6a\x8b\x8b\x7d\x1b\x5a\x78\x9d\xba\xbd\x9d\xcf\xa7\xc6\x1f\xc1\xa5\xb0\xa9\xb2\x1b\x9d\x9f\x83\x7a\xa3\x1f\x79\xa4\x94\x87"
+"\x99\x1b\xa5\xa0\xa0\xa4\xab\x6d\x9f\x5e\x1f\x0e\x5a\x5b\x0a\xfb\x13\xf7\x63\x15\xab\x06\xfb\x0b\xf7\x2b\x05\x9b\x7e\x7f\x92\x7c"
+"\x1b\x77\x7c\x7c\x78\x7e\x91\x82\x98\x80\x1f\x0e\xc9\x4e\x1d\xf7\xd1\xf8\xfe\x15\xaa\x06\xfb\x0b\xf7\x2b\x05\x9b\x7e\x7f\x92\x7c"
+"\x1b\x77\x7c\x7c\x78\x7e\x91\x82\x99\x80\x1f\x0e\xfb\x6c\x7e\x1d\xf7\x62\xf7\xb4\x15\xaa\x06\xfb\x08\xf7\x2b\x05\x9b\x7e\x80\x92"
+"\x7c\x1b\x76\x7c\x7c\x77\x7f\x90\x82\x99\x80\x1f\x0e\x74\x1d\xf7\x6d\xf8\x13\x15\xab\x06\xfb\x0b\xf7\x2b\x05\x9b\x7e\x80\x92\x7b"
+"\x1b\x77\x7c\x7d\x77\x7e\x91\x82\x98\x80\x1f\x0e\x5a\xf7\xde\xf8\xee\x15\xa0\x91\x99\x91\xb4\x1b\xf7\x3e\xad\x7e\x49\x1f\x80\x07"
+"\x8a\x80\x8a\x87\x8a\x7c\xa0\x89\xab\xf7\x2f\x05\xfc\x86\x7b\x06\xba\x87\x8f\x8a\x97\x84\x08\x94\x86\x90\x80\x7e\x1a\x7b\x87\x72"
+"\x84\x72\x1e\x5b\xfb\x41\x26\x8a\x82\x6b\x05\xf0\x06\x49\xfb\x86\x79\x4e\x84\x85\x52\x83\x19\x7b\xf7\x90\x9b\x07\x51\x8f\x79\x95"
+"\xaa\x1a\x94\x8d\x98\x92\xa2\x1e\xc9\xf7\x77\xf4\x88\x9b\x8b\x98\x86\x19\x9a\x86\x94\x7a\x77\x1a\x7a\x89\x7f\x85\x6c\x1e\x9c\x86"
+"\xd7\xf7\x81\x79\x90\x5e\x30\x89\x8a\xfb\x3c\x89\x19\x0e\xfb\xa7\xf7\x91\xf7\x86\x15\x8f\x8d\x8f\x8d\x05\xca\xa7\xa9\xaf\xbc\x1a"
+"\xbf\x63\xae\x4f\x6d\x6b\x81\x79\x72\x1e\x7b\x80\x82\x83\x66\x67\x97\x7d\x18\xb4\xb5\xad\x9d\xae\x1b\xac\xa3\x73\x68\x6e\x7b\x6e"
+"\x72\x79\x1f\x7f\x82\x7b\x82\x73\x7e\x08\xfb\x2e\x06\x82\x68\x05\xe7\x06\x4f\x6e\x6f\x66\x59\x1a\x4b\xb7\x61\xce\xc3\xa8\x9c\xd9"
+"\xd8\x1e\x7f\x97\x05\x5d\x5d\x64\x76\x61\x1b\x60\x71\xa7\xb9\xb8\xa7\xb0\xc0\xa5\x1f\xf7\x34\x06\x94\xae\x05\x0e\xf7\x87\xf8\x52"
+"\xf7\xfa\x15\x7f\x06\x35\xf1\x4f\xf5\xbc\x1a\x9f\x98\x94\xaa\x1e\x9c\x24\x0a\xfb\x53\x06\x86\x79\xb2\x87\x9e\x78\xc5\x27\x19\xae"
+"\x4f\x9b\x73\xb1\x54\xfb\xbc\xfb\xaf\x18\x59\x5c\x70\x79\x5c\x7b\x86\x79\x18\xf7\x78\x06\x90\x9d\x05\x71\x8e\x84\x8f\x99\x1a\x93"
+"\x8f\x91\x99\x97\x1e\x8d\x8e\x91\x90\x92\x92\xf7\x8e\xf7\x89\x18\x9c\x06\x54\xfb\x70\x7a\x46\x79\x49\x1d\xf7\x94\x06\x8f\x9d\x05"
+"\x54\x8c\x7b\x96\xad\x1a\x95\x8c\x92\x90\x9e\x1e\xc4\xf7\x75\x05\x9c\x06\xf7\x00\xfb\x84\x05\x98\x6f\x8b\x8b\x83\x1a\x79\x78\x7e"
+"\x6e\x1e\x86\x79\x05\xbf\xba\x1d\x9d\x06\xb7\xf7\x55\x45\x8a\x7b\x97\x61\xe4\x19\xfb\x06\xf7\x85\xd9\xc9\xa8\xa3\xd4\xca\x19\xf7"
+"\x06\xee\xaa\x9f\xb5\x8f\x90\x9d\x18\xfb\x53\x22\x1d\x9c\x06\xa1\x96\x87\x82\x77\x73\x73\x2b\x3c\x1f\x74\x79\x65\x6b\x6f\x72\x6d"
+"\x72\x6e\x72\x6c\x72\x08\x7c\x06\xbd\xf7\x5b\x05\xd4\x9d\x9c\x99\xd4\x1b\x8f\x2e\x1d\x87\x79\x05\xc1\x8a\x9c\x81\x69\x1a\x82\x89"
+"\x7c\x88\x7f\x1e\x0e\xf7\x59\xf8\x81\xf8\x46\x15\x81\x50\x4e\x25\x2c\xfb\x09\x08\xa1\xc8\x92\xaa\xb7\x1a\xe5\x62\xc4\x4b\x4e\x56"
+"\x69\x3e\x50\x1e\x98\x81\x05\xc0\xb4\xb2\xa5\xb1\x1b\xb5\xa7\x60\x4b\x53\x78\x42\x6c\x50\x1f\x4e\x6c\x6c\x6e\x69\x1b\x77\x7b\x95"
+"\x98\x93\x8d\x8e\x9c\x99\x1f\x97\x94\x90\x96\x97\x1a\xa1\x7c\x9b\x75\x6e\x74\x70\x67\x5e\xad\x6a\xbc\xe8\xef\xe6\xf7\x60\xf7\x15"
+"\x1e\x3a\xfb\xb0\x05\xcc\x06\xa1\xd1\xc4\xe9\xe0\xf3\x08\x76\x49\x85\x6f\x64\x1a\x5a\x99\x5c\x9f\x78\x1e\x94\x82\x93\x88\xa0\x85"
+"\x08\xba\x80\xa2\x69\x51\x1a\x7b\x8b\x7c\x89\x79\x1e\x9d\x06\xb8\xf7\x52\x05\x63\x77\x8d\x90\x7b\x1f\x69\x96\x7a\xaa\xbd\x1a\xf7"
+"\x12\xdc\xf7\x29\xcf\x9d\x99\x80\x7f\x82\x87\x85\x7e\x81\x1e\x7e\x80\x87\x83\x7d\x1a\x74\x9a\x7c\xa0\xa9\xa2\xa8\xaf\xb7\x67\xae"
+"\x5f\x2f\x2c\x34\xfb\x69\xfb\x20\x1e\xde\xf7\xbb\x05\x0e\xfb\x39\xf7\x65\x81\x15\x93\x06\xf7\x1d\xf2\xe5\xf7\x0b\x89\x1d\x9c\x06"
+"\xec\xa7\xbd\xbb\xd2\x1b\xcc\xb7\x5d\x48\x37\x42\x52\x20\x81\x84\x8b\x8d\x7b\x1f\x7f\x66\x05\x8c\x97\x90\x8b\x94\x1b\xe8\xc0\x5d"
+"\x3d\x29\x43\x44\x29\x3f\x58\xb0\xdb\x68\x1f\x73\x82\xaa\x2f\xc8\x54\xdf\x7f\x19\x54\x32\x2a\x0a\x98\x93\x8d\x96\x4a\x1d\x75\x7a"
+"\x8f\x96\x6e\x3c\x0a\x82\x84\x47\x1d\xfb\xa2\xf7\x31\x80\x15\xf0\x8a\xda\xc8\xd9\x1a\xc3\x67\xac\x3c\x9b\x1e\xb9\x8e\xa0\x87\x1d"
+"\x83\x6e\x05\xa2\x06\xd1\xa9\x76\x59\x43\x5b\x5b\x45\x53\x66\xa3\xc6\x69\x1f\x7b\x83\xa1\x4e\xb7\x65\xc7\x81\x19\x54\x33\x2a\x0a"
+"\x98\x93\x8d\x96\x85\x0a\x81\x86\x2c\x0a\x86\xf7\x97\xf7\xf1\x15\xf7\x1c\xfb\x8d\x05\x96\x76\x90\x7d\x7f\x1a\x75\x7a\x82\x5e\x87"
+"\x1e\x85\x79\x05\xc9\xba\x1d\x9c\x06\xb8\xf7\x55\x44\x8a\x81\x93\x5a\xe7\x19\xfb\x19\xf7\x93\xf7\x9e\xf7\x6b\xa5\x1d\xfb\xad\xfb"
+"\x7e\xa6\x1d\x7c\x86\x7d\xb6\x1d\x68\x7f\xe2\x1d\x9a\x8f\x9b\x1e\x0e\xfb\x5b\xf7\x6f\xf8\x4b\x15\x5c\x7f\x52\x82\x61\x88\x85\x78"
+"\x18\xf5\x1d\x81\x89\x81\x85\x74\x1f\x29\xfb\xe3\x05\xd2\x06\xc9\xf7\x69\x05\x8c\x97\x91\x8c\x8e\x1b\x96\x95\x85\x80\x93\x1f\x91"
+"\x82\x8d\x85\x98\x5e\xa6\x2a\x99\x71\xae\x77\x08\xac\x76\x95\x77\x61\x1a\x7f\x8a\x77\x8a\x77\x1e\x9d\x06\xb8\xf7\x52\x45\x8c\x86"
+"\x8f\x79\xcd\x19\x78\xd3\x74\xab\x65\x92\xa8\x96\xae\xb1\xab\xc3\x08\xb0\x9f\x96\x95\x9e\x1b\x93\x91\x88\x84\x91\x1f\x81\x94\x93"
+"\x87\x98\x1b\xa7\x9d\x9a\xa3\xa6\x75\x9c\x69\x61\x71\x76\x49\x63\x1f\x5a\x39\x69\x71\x4a\x83\x08\x0e\x86\xf7\xbc\xf8\x1c\x15\x6c"
+"\x71\xa6\x1d\x7d\x86\x7c\xb6\x1d\x69\x7e\xe2\x1d\x9b\x8f\x9a\x1e\xd1\xf7\x8d\x9b\x6e\x4c\xfb\x6f\x05\xcb\x06\xb4\xf7\x23\xd9\xfb"
+"\x24\x05\x96\x77\x90\x7c\x7f\x1a\x76\x7a\x81\x5e\x87\x1e\x85\x79\x05\xf7\x9e\x06\x91\x9d\x4c\x8a\x6e\xa2\x5c\xe5\x19\xfb\x10\xf7"
+"\x81\x95\xac\xf7\x8b\xf7\x5c\xa5\x1d\xfb\x3b\xfb\x1f\xab\xf7\x04\x05\x4c\x06\x0e\xfb\x5b\xf7\x5d\xf7\x8d\x15\x7e\x86\x81\x89\x7a"
+"\x89\xc5\xf7\x5b\x18\x59\x7f\x55\x82\x61\x88\x85\x78\x18\x8d\x9b\x92\x8c\x94\x1b\x9e\x93\x84\x7c\x81\x89\x82\x85\x74\x1f\x29\xfb"
+"\xe3\x05\xd2\x06\xc9\xf7\x69\x05\x8c\x96\x92\x8c\x8c\x1b\x92\x8f\x8a\x87\x92\x1f\x60\xfb\x29\x05\xaf\x06\xab\xf7\x00\x05\x89\x07"
+"\xa2\x3a\x92\x75\x9a\x6f\x08\x6e\x9a\xa3\x79\xa5\x1b\xb3\xae\xad\xeb\xc4\x1f\x7c\x94\x05\x55\x68\x76\x78\x6f\x1b\x74\x82\x98\xc0"
+"\x7c\x1f\x79\xd2\x74\xab\x66\x92\x08\x8d\x07\xa4\x95\xa9\xaa\xa7\xb8\xa3\xb4\xc0\x0a\x92\x88\x87\x8f\x1f\x7d\x98\x91\x88\x99\x1b"
+"\xa7\x9d\x9a\xa3\xa6\x75\x9c\x69\x61\x72\x76\x49\x62\x1f\x73\x62\x78\x74\x76\x78\xad\xf7\x0b\x18\x66\x06\x0e\x8f\xf7\x9f\xf8\x02"
+"\x15\xbd\xf7\x54\x05\xd3\x9e\x9d\x99\xd5\x21\x1d\xfc\x14\x06\x61\xfb\x36\x05\x9a\x06\xe1\xaa\xbb\xb3\xd5\x1b\xcc\x06\xfb\x20\xfc"
+"\x9d\x82\x0a\xcd\xf7\x8d\x86\x1d\x83\x89\x88\x78\x7b\x1e\x0e\x4d\xf7\xf0\xf8\x54\x15\xfb\x83\x06\x6d\xfb\x05\x05\x9a\x06\xbf\xa5"
+"\xb7\xa4\xcc\x1b\xb1\x06\x8a\x88\x78\x46\x30\xfb\xe8\x05\xd4\x06\xc4\xf7\x6c\x05\x8c\x98\x91\x8c\x8c\x1b\xa0\x99\x7c\x6a\x95\x1f"
+"\xa3\x39\x93\x74\x9b\x6f\x08\x6d\x9b\xa4\x79\xa5\x1b\xb3\xad\xad\xec\xc4\x1f\x7c\x94\x05\x56\x69\x75\x77\x6f\x1b\x73\x82\x98\xc1"
+"\x7a\x1f\x77\xd4\x73\xab\x63\x92\xa7\x96\xa7\xa8\xa8\xbb\xa2\xb5\x8b\x8b\x8f\x8f\x08\x98\x95\x96\x92\x97\x1b\x91\x93\x88\x87\x8f"
+"\xd1\x0a\xa2\xa7\x75\x9c\x66\x61\x72\x76\x49\x63\x1f\x5b\x38\x6a\x71\x49\x83\x08\x0e\xbf\xf7\x90\xf7\xdf\x15\xf7\x9f\x06\x49\xfb"
+"\x76\x78\x45\x78\x7b\x49\x8a\x20\x1d\xe3\x06\xee\xb4\x6a\x3a\x7e\x8a\x7a\x8a\x78\x1f\x9d\x06\xb8\xf7\x55\x05\x4a\x8c\x75\x96\xac"
+"\x1a\x99\x8e\x9f\x92\xa2\x1e\xf7\x0e\xf8\x3d\x05\xd2\x9f\x9e\x9b\xcf\x21\x1d\xfb\x9b\x06\x83\x4c\x1d\x6c\x1a\x80\x89\x7d\x87\x7d"
+"\x1e\x51\xfb\x58\x05\xfb\x9c\x06\xc1\xf7\x52\x05\xd4\x9f\x9e\x99\xd3\x1b\x90\x2e\x1d\x86\x79\x05\xc0\x8a\x9c\x81\x6d\x1a\x80\x89"
+"\x7d\x86\x7c\x1e\xfb\x17\xfc\x5e\x78\x47\x78\x79\x60\x1d\x91\x9d\x05\x56\x8c\x7a\x95\xaa\x1a\x96\x8d\x96\x90\x9d\x1e\x0e\xfb\x3f"
+"\xf7\x48\xf7\x93\x15\xc2\xf7\x52\x5b\x7f\x51\x81\x63\x89\x19\x85\x78\x05\xf5\x1d\x80\x89\x81\x85\x74\x1f\x29\xfb\xe8\x05\xd2\x06"
+"\xcb\xf7\x73\xf7\x31\x90\x60\xfb\x29\x05\x88\x80\x87\x6e\x7f\x1a\x74\x93\x82\xaa\x81\x1e\xac\x80\x98\x77\x61\x1a\x7d\x8a\x76\x8a"
+"\x77\x1e\x9d\x06\xb8\xf7\x54\x05\x58\x8c\x7a\x90\x99\x1a\x90\x8b\x8c\x92\xa8\x1e\xea\xf7\xde\x05\x44\x06\x59\xfb\x43\x05\x0e\x92"
+"\xf7\xcf\x79\x15\x97\x06\xf2\xda\xb6\xf5\xe6\x1f\x7a\x99\x05\x33\x31\x51\x6d\x39\x1b\xfb\x03\x4b\xd6\xf7\x16\xf7\x0b\xbb\xad\x0a"
+"\xcd\x1b\xe7\xbe\x55\xfb\x00\x95\x1f\x9d\x88\xb0\xf7\x5b\x05\x76\x06\x7b\x83\x81\x85\x77\x1b\x82\x80\x8d\x90\x76\x1f\x96\x5f\x63"
+"\x91\x6a\x1b\xfb\x6a\xfb\x54\xfb\x5c\xfb\x73\xfb\x1b\xdf\x25\xf7\x16\x77\x1f\x58\x39\x2a\x0a\x98\x94\x57\x1d\xb4\xa2\x86\xa8\x44"
+"\x1d\x82\x84\x47\x1d\xfb\x6c\xf7\x4e\x80\x15\xd1\x8e\xc3\xac\xc1\xd2\x7b\x95\x18\x50\x54\x64\x75\x5a\x1b\x52\x69\xb5\xd3\xe0\xae"
+"\xe5\xc3\xc5\x1f\xa9\xa8\xb3\x9d\xb3\x1b\xa2\x99\x83\x7f\x86\x89\x86\x87\x82\x1f\x84\x7e\x89\x85\x81\x1a\x73\x9a\x7d\xa3\xa7\x9f"
+"\x9e\xa6\xba\x51\x0a\x36\xb4\x58\xd9\x7f\x1e\x55\x34\x94\x83\x05\x90\x98\x93\x8d\x96\x4f\x0a\x79\x8f\x96\x6e\x3c\x0a\x81\x85\x47"
+"\x1d\x23\xe6\xf9\x1a\x15\xc3\x83\x8e\x88\x9c\x53\xd8\xfb\xa5\x18\x4e\xfb\x6b\x9f\x1d\xa0\x92\xaa\xa3\xda\x1e\x8e\x93\x8d\x93\x8c"
+"\x8f\xa8\xf1\x18\xf7\x6f\xf7\xa6\xab\xb3\x93\x92\xa9\x9a\x19\x9b\xfb\x51\x7b\x07\xbb\x85\x8b\x8b\x96\x85\x48\x1d\x6f\x5d\x49\x23"
+"\xfb\x0f\x1e\x7a\x77\x85\x83\x7c\x79\x7f\xb8\x86\x9c\x7d\xbd\x08\x72\xe2\x56\x0a\x91\xc7\x91\x1e\x9b\xfb\x83\x07\x0e\xfb\x72\xf7"
+"\x2c\xb9\x15\x62\xfb\x2b\x77\x47\x83\x83\x54\x84\x19\x87\x7d\x05\xf7\x55\x06\x8e\x99\x05\x64\x8f\x81\x92\xa2\x1a\x97\x8e\x9d\x90"
+"\x9e\x1e\xb7\xf7\x37\xf7\x44\xf7\xa5\xb6\xd0\x95\x95\xaa\x92\x19\x94\x8c\x90\x9b\x05\xfb\x1a\x06\x86\x7b\x05\x90\x06\x9f\x94\x86"
+"\x7d\x7f\x80\x75\x72\x62\x1f\xfb\x18\xfb\x65\x75\xf7\x69\x05\x89\xa4\x8a\x95\x95\x1a\xa8\x9b\x9b\xa9\x1e\x92\x06\x90\x9b\x05\xfb"
+"\x4c\x06\x87\x7b\x99\x8a\x96\x8a\x95\x86\x8f\x84\x19\x90\x84\x90\x6d\x95\x34\x08\x0e\x23\xf7\xd7\xf7\x7f\x15\xa0\xd6\xf7\x6f\xf7"
+"\xa6\xab\xb3\x93\x92\xa9\x9a\x19\x9b\xfb\x51\x7b\x07\xbb\x85\x8b\x8b\x96\x85\x48\x1d\x6f\x5d\x48\x23\xfb\x0e\x1e\x7a\x77\x85\x83"
+"\x7c\x79\x7f\xb8\x86\x9c\x7d\xbd\x08\x72\xe2\x56\x0a\x91\xc7\x91\x1e\x9b\xfb\x83\x7b\x07\xc3\x83\x8e\x88\x9c\x53\xd8\xfb\xa5\x18"
+"\x77\x44\x05\x26\x06\x82\x69\x05\xef\x06\x6c\xfb\x02\x9f\x1d\xa1\x92\xa7\xa6\xe5\x1e\x8c\x8f\x05\xf7\x03\x06\x94\xad\x05\x0e\xfb"
+"\x72\xf7\x62\x87\x15\x9c\xc9\xf7\x44\xf7\xa5\xb7\xd0\x94\x95\xaa\x92\x19\x94\x8c\x90\x9b\x05\xfb\x1a\x06\x87\x7b\x05\x8f\x06\x9f"
+"\x94\x86\x7d\x7f\x80\x73\x72\x64\x1f\xfb\x18\xfb\x65\x75\xf7\x69\x05\x88\xaa\x8b\x90\x94\x1a\xa8\x9b\x9b\xa9\x1e\x92\x06\x90\x9b"
+"\x05\xfb\x4b\x06\x86\x7b\x99\x8a\x96\x8a\x95\x86\x8f\x84\x19\x91\x84\x90\x6d\x94\x34\xa3\xfb\x7e\x18\x7e\x59\x05\xfb\x01\x06\x82"
+"\x63\x05\xf6\x06\x7a\x4e\x77\x47\x83\x83\x54\x84\x19\x87\x7d\x05\xf7\x55\x06\x8f\x99\x05\x63\x8f\x81\x92\xa2\x1a\x97\x8e\x9d\x90"
+"\x9e\x1e\x9c\xc8\x05\xf7\x02\x06\x94\xb3\x05\x0e\x51\xf7\xc2\xf7\x9e\x15\xb6\xfb\x47\x05\x8e\x81\x8c\x82\x84\x1a\x70\x76\x7b\x67"
+"\x1e\x7a\x06\x85\x79\x05\xda\x06\xcc\xa8\x84\x74\xa1\x1f\x9a\x7b\x95\x6c\x6a\x1a\x7b\x8a\x7b\x8a\x78\x1e\x9d\x06\xb8\xf7\x54\x05"
+"\x62\x79\x8f\x94\x80\x1f\x6d\xa3\x82\x99\x82\xb4\x51\xf7\x7c\x18\xf7\x36\xf7\x53\xcb\xd7\xab\x9e\xc8\x8e\x19\x91\x9d\x05\xfb\x5b"
+"\x06\x85\x79\x05\x95\x06\xa2\x94\x85\x7c\x7f\x84\x7e\x7b\x77\x1f\xfb\x2a\xfb\x46\x64\xf7\x39\x05\x89\x96\x88\xa1\x94\x1a\xa3\x9f"
+"\x98\xae\x1e\x9b\x06\x91\x9d\x05\xfb\x9d\x06\x85\x79\x05\x9c\x06\xbd\x8a\x9c\x7a\x9f\x48\xca\xfb\x8d\x18\xfb\x3b\xfb\x5a\x05\x56"
+"\x60\x4d\x62\x67\x1b\x85\x79\x05\xf7\x62\x29\x0a\x76\x06\x6e\x7b\x92\x9a\x94\x8f\x92\x99\x9d\x1f\x0e\xfb\x72\xf7\x5e\xf7\x52\x15"
+"\xb1\xfb\x15\x99\x61\x98\x77\x9a\x88\x19\xae\x80\x9a\x6d\x50\x1a\x7f\x8a\x7a\x8a\x79\x1e\x9d\x06\xb8\xf7\x54\x42\x8d\x86\x8e\x79"
+"\xcb\x19\x5c\xf7\x2c\x05\xe5\xc7\xa4\xa3\xa8\x1b\x91\x92\x8a\x87\x98\x1f\x87\x99\x8f\x8a\x91\x1b\x9d\x99\x9a\x9f\xa3\x7b\x9c\x73"
+"\x72\x73\x7d\x6d\x6e\x1f\x79\x78\x8b\x8b\x45\x2e\x66\xf7\x07\x7f\xa4\x6f\x9a\xfb\x12\x6f\x18\x86\x7a\x05\x90\xa0\x94\x8d\x96\x1b"
+"\xbb\xa6\x63\xfb\x25\xba\x1f\x4d\x2f\x05\x50\x64\x71\x70\x7b\x1b\x85\x87\x8d\x98\x7e\x1f\x93\x82\x83\x8e\x83\x1b\x77\x7d\x7c\x76"
+"\x72\x9d\x7b\xa6\xae\xae\xa7\xc9\xb5\x1f\x0e\xa8\xf8\xfb\xac\x15\x67\x80\x8d\x90\x7e\x1f\x7b\x91\x78\xa1\x98\x1a\x8e\x8c\x91\x8e"
+"\x95\x77\x1d\x54\xfb\x68\x79\x47\x78\x79\x4c\x8a\x20\x1d\xf7\x14\x06\xcc\xaf\x64\x46\x7b\x8a\x7b\x8a\x77\x1f\x9d\x06\x0e\xfb\x52"
+"\x66\x0a\x83\x89\x7c\x83\x1a\x76\x9e\x7a\xa2\x9b\x98\x8f\x97\x9d\x1e\x7b\x70\x83\x72\x71\xdc\x1d\x76\x1e\x95\x7d\x05\xcf\xb2\xa1"
+"\xa4\xb2\x1a\x95\x8a\x8e\x87\x9f\x1e\x87\x99\x89\x98\x92\x1a\x96\x8e\x93\x9a\xa8\x1e\x96\x96\x9a\x9c\x9d\xa4\x08\x0e\x9e\xf8\x0e"
+"\xf7\xbb\x15\xaf\x90\xa5\x90\xb3\x97\x4f\xfb\x69\x18\x78\x47\x78\x7a\x4d\x8a\x86\x79\x18\xf7\x93\x29\x0a\x55\x8c\x7b\x95\xaa\x1a"
+"\x97\x8c\x92\x91\x9f\x1e\xf7\x17\xf8\x5e\x05\xd4\xa0\x9d\x99\xd3\x21\x1d\xfb\xa1\x25\x1d\xc0\x8a\x9c\x81\x6d\x4d\x1d\x4f\xfb\x65"
+"\x68\x80\x6c\x84\x67\x88\x19\xcc\xf7\x72\x05\x4c\x06\x4a\xfb\x72\x05\x5f\x92\x76\x9e\xad\x1a\x92\x8c\x92\x8e\x94\x1e\xb3\xf7\x21"
+"\x05\xd4\x9f\x9e\x99\xd3\x1b\x8f\x9d\x05\xfb\x9f\x22\x1d\xc0\x8a\x9c\x81\x6c\x1a\x80\x89\x7f\x86\x7b\x1e\x67\xfb\x12\x05\x83\x6e"
+"\x8a\x86\x7b\x1a\x4b\xbd\x6a\xec\x1e\x5d\xfb\x34\x05\xca\x06\x0e\xfb\x52\xf7\x81\xf7\x53\x15\xb1\xa8\xa0\xa2\xae\xbf\x48\xfb\x81"
+"\x18\x89\x84\x88\x79\x84\x1a\x77\x9e\x7a\xa0\xb1\xb1\xa8\xd4\xc4\x1e\x7e\x96\x05\x60\x6a\x75\x77\x7c\x1b\x84\x85\x91\x92\x91\x8e"
+"\x9b\x8e\x96\x1f\xef\xf7\xf1\x05\x44\x06\x80\x4c\x58\x39\x52\x5d\xae\xf7\x13\x18\x5b\x06\x5f\xfb\x2f\x05\x8a\x87\x8a\x8b\x87\x1b"
+"\x7b\x83\x94\x9c\x92\x8b\x8e\x8f\x97\x1f\xc0\xf7\x4b\x5a\x7e\x59\x83\x5c\x87\x20\x1d\x8e\x9b\x92\x8c\x95\x1b\x9d\x93\x84\x7c\x80"
+"\x8a\x83\x83\x72\x1f\x75\x3d\x05\x86\x7d\x87\x6f\x81\x1a\x68\xa0\x74\xac\x98\x97\x8d\x90\x99\x1e\x75\x3c\x05\xbb\x06\x0e\x9e\xf7"
+"\x75\xf7\xe3\x15\x9c\xe1\xa2\x8e\xae\x1b\xce\xad\x73\x5b\x79\x88\x7b\x83\x6e\x1f\x6c\xfb\x09\x05\x45\x78\x77\x7c\x41\x1b\x87\x79"
+"\x05\xf7\xae\x24\x0a\x4f\x8c\x7c\x93\xa9\x1a\x94\x8e\x9e\x90\x9d\x1e\xab\xf7\x09\x05\x91\xa3\x8f\xa5\x9f\x1a\xd3\x59\xb0\x29\x5e"
+"\x7b\x89\x73\xfb\x15\x1e\xbd\xf7\x4e\x05\xd2\x9f\x9f\x99\xd4\x21\x1d\xfb\xae\x22\x1d\xc6\x8a\x9a\x83\x6e\x1a\x80\x88\x79\x86\x79"
+"\x1e\xfb\x0f\xfc\x5c\x05\x45\x78\x77\x7c\x42\x1b\x86\x79\x05\xf7\xae\x24\x0a\x50\x8c\x7c\x93\xa8\x1a\x97\x8e\x9d\x90\x9c\x1e\x0e"
+"\x71\x1d\xfb\xdb\x42\x0a\xa8\xf9\x1a\xf8\xc1\x15\x8b\x1d\xb6\x91\x8c\x94\x8c\x90\x1f\xb1\xf7\x21\x58\x1d\x6a\x1a\x81\x89\x7f\x87"
+"\x7c\x1e\x69\xfb\x12\x05\x86\x76\x89\x80\x7c\x1a\x4b\xbf\x67\xe7\xc1\xc1\x93\x9e\xce\x1e\x5c\xfb\x48\x72\x2e\x7f\x81\x35\x8a\x19"
+"\x5b\xfb\x58\x05\x9d\x06\xbb\xf7\x0d\xbc\xb0\xf7\x07\x90\x08\xeb\x06\x8f\x9d\x63\x8c\x82\x8c\x80\x91\x19\x7e\x92\x84\x96\x9b\x1a"
+"\x9a\x92\xa9\x9a\xb6\x1e\x0e\xfb\x52\x66\x0a\x84\x89\x7b\x83\x1a\x8a\x8b\x88\x8c\x88\x1e\x6c\x62\x7c\x68\x68\xdc\x1d\x75\x1e\x95"
+"\x7e\x05\xcf\xb2\xa1\xa4\xb2\x1a\x94\x8a\x8f\x87\x9e\x1e\x87\x9a\x89\x97\x92\x1a\x95\x8d\x91\x91\x9a\x1e\x82\x95\x95\x87\x97\x1b"
+"\xb1\xb0\xa8\xd4\xc4\x1f\x0e\xc9\xcb\xf7\xc1\x15\x84\x68\x88\x76\x79\x1a\xfb\x24\xeb\x2a\xf7\x23\xf7\x75\xf7\x59\xf7\x68\xf7\x87"
+"\xbf\x81\xb5\x75\xaf\x1e\xcd\x64\x3f\xb2\x34\x1b\x39\x37\x6e\x56\x43\x1f\x57\x65\x70\x6a\x5b\x3b\xcf\x80\x18\xb6\xd4\xad\xb7\xac"
+"\xa6\x08\xb4\xc0\xc8\xa2\xc5\x1b\xbc\xb8\x75\x67\xa3\x1f\x9c\x71\x93\x67\x5a\x1a\x51\x82\x51\x79\x55\x1e\x7c\x60\x15\x72\x4d\x70"
+"\x5b\x70\x6b\x08\x4f\x56\x4a\x69\x4b\x1b\x59\x5f\xa1\xae\x74\x1f\x78\xa8\x83\xb1\xc4\x1a\xa0\x8c\x9a\x8d\x9e\x1e\x0e\x5a\xf8\xdc"
+"\x9b\x15\x51\x90\x84\x93\x7e\xd5\x26\xf8\xd3\x18\x71\x06\xfb\xb6\xfc\x90\x3d\xfb\x1a\x81\x7f\x62\x83\x19\x7b\xf7\x52\x9b\x07\x56"
+"\x91\x83\x8f\xa6\x1a\x9e\x8d\x91\x9d\xb0\x1e\xc4\xf7\x06\x05\xf7\x73\x06\xa0\xfb\x19\x05\x8d\x81\x8c\x80\x83\x1a\x67\x7d\x82\x4a"
+"\x85\x1e\x7b\xf7\x8e\x07\xfc\x21\xf7\x9e\x15\xf7\x29\xf7\x9c\xbb\xfb\x9c\x05\xf7\x2d\xf8\xf2\x15\x4b\x73\x5a\x67\x4c\x1b\x4b\xcc"
+"\x1d\xae\x7c\xb8\x1b\xc2\xba\xa3\xb8\xac\x1f\x9f\xa6\x94\xa1\x94\xb5\x08\x0e\xf8\x72\xf7\x04\x15\x6e\x6e\x05\x6b\x6c\x7f\x82\x81"
+"\x1b\x83\x85\x91\x92\xa1\xbb\xf7\x50\xb9\xf7\x32\x1f\x8e\x95\x8c\x8d\x8d\x94\x84\x8e\x18\x4d\x84\x88\x88\x80\x5b\x05\xb0\x83\x6e"
+"\xa0\x5f\x1b\xfb\x1b\xfb\x32\xfb\x4f\xfb\x34\x45\xb1\x62\xcb\xd3\xb6\xad\xf7\x11\xe6\x1f\x74\x38\x89\x83\x71\x1a\x6e\x97\x7f\xa7"
+"\xb4\xa3\x9e\xe7\xd8\x1e\xfb\x3a\xf7\xd8\x15\xad\x89\xa1\x73\x68\x1a\x37\x56\xfb\x0d\x45\x3f\x1e\x70\x72\x69\x7a\x6e\x1b\x66\x75"
+"\xa7\xb9\xc3\xb2\xf2\xb8\xcc\x1f\xb5\xc6\xba\xab\xb4\x88\x08\xf7\x36\xf7\x7e\xbc\x1d\xa0\x71\x08\x6d\xa2\xae\x7c\xb8\x1b\xc1\xba"
+"\xa3\xb8\xad\x1f\x9f\xa6\x94\xa1\x93\xb5\x08\x0e\xc9\xf8\x6e\xf9\x34\x15\x37\x31\x63\x41\x3b\x1f\x26\x2d\x50\xfb\x0e\xfb\x0b\x1a"
+"\xfb\x21\xe6\x27\xf7\x13\xf7\x64\xf7\x5e\xf7\x68\xf7\x78\x96\x1e\xf7\x22\x92\x2a\xf7\x00\xfb\x1b\x1b\xe3\xfc\x04\x15\xfb\x4b\x51"
+"\x29\x21\xfb\x03\x1b\x3a\x5a\xc9\xef\xb0\x91\xb8\x96\xb8\x1f\x97\xb6\x15\xf7\x4d\xc5\xee\xf6\xf7\x06\x1b\xda\xbd\x50\x2e\x61\x83"
+"\x55\x7f\x5f\x1f\x0e\x92\x1d\xfb\x4c\xfb\x58\x15\x8d\x8e\x05\xf7\x03\xba\xc8\xc8\xcb\x1b\xb4\xa7\x65\x53\x70\x89\x7a\x83\x66\x1f"
+"\x81\x69\x15\xfb\x0d\x68\x45\x3b\x45\x1b\x5c\x6c\xaf\xc2\xaf\x91\xae\x97\xb2\x1f\x0e\x5a\x5b\x0a\x52\xf8\x01\x15\x4b\x72\x5a\x67"
+"\x4d\x1b\x4a\xcc\x1d\xaf\x7c\xb7\x1b\xc3\xb9\xbe\x0a\xfb\x6c\x7e\x1d\xf7\xf6\xf8\x54\xbc\x1d\x9f\x71\x08\x6d\xa2\xaf\x7c\xb7\x1b"
+"\xc2\xba\xbe\x0a\xf7\x83\xf9\xbe\x15\x5a\xf8\x85\xbc\x07\x0e\xf7\xe8\xad\x89\x15\x92\x06\xd5\x06\xf7\x44\xcd\x97\xb7\xcc\x1f\xf1"
+"\xd0\xd5\xf7\x36\xf7\x2f\x1a\xea\x6d\xde\x5b\xb1\x1e\xa7\x67\x5a\x98\x4a\x1b\xfb\x2b\x20\x56\x2e\x69\x1f\x7d\x66\x87\x73\x8a\x49"
+"\xd9\xb1\x18\x94\x07\x8a\xea\xb0\xb7\xe6\x99\x3d\xfc\x3e\x18\x7a\x40\x72\x5c\x6d\x81\x74\x8c\x18\xe5\x16\x8f\x8e\xc2\xb9\x9e\xb6"
+"\xa1\xf7\x13\x19\xc7\xf7\xec\x05\x92\x06\x8e\x06\xb4\x96\x8a\x87\x98\x1f\xc4\x76\xa9\x49\x26\x1a\xfb\x66\x2c\xfb\x29\xfb\x1e\x84"
+"\x1e\xf7\x8d\xfb\x99\x15\xda\x06\xb1\xf7\x62\x05\x7b\xb2\x8e\x8a\xa1\x1b\xf7\x14\xf7\x01\xf7\x39\xf7\x53\xf7\x00\x5e\xc3\x36\x57"
+"\x5e\x75\x62\x6a\x1f\x66\x5d\x76\x50\x73\xfb\x18\x08\xea\xe6\x15\xe6\x9c\xaf\xc0\xb9\x1b\xb4\xa1\x61\x3c\xfb\x2a\x52\xfb\x0b\x43"
+"\x6e\x75\x96\xa5\x77\x1f\x0e\x5a\xf7\x97\x16\x7c\xf7\x2f\x05\x49\xb7\x62\xe4\xea\x1a\xc0\x98\xc6\xa2\xbc\x1e\xc9\xa9\xbc\xaf\xc3"
+"\x1b\xc3\xbc\x67\x4d\xa9\x1f\xa2\x5a\x98\x50\x56\x1a\x2c\x61\x32\x4a\x5f\x1e\x7c\xfb\x2f\x05\xf7\x88\xf7\x2d\x77\x06\x5e\x84\x7b"
+"\x79\x68\x1b\xfb\x0d\x06\x8d\xb1\x05\xf6\xb8\xc9\xe8\xf7\x08\x1a\xbb\x7f\xbe\x74\xba\x1e\xef\x5b\x36\xc5\x2a\x1b\x2a\x36\x51\x27"
+"\x5b\x1f\x74\x5c\x7f\x58\x5b\x1a\xfb\x08\xc9\x2e\xf6\x5e\x1e\x8e\x65\x05\xfb\x0e\x06\x68\x7b\x9d\xb8\x84\x1f\x77\xfb\x2d\x06\x0e"
+"\xfc\x81\xac\x0a\xfc\x2e\x46\x0a\xf7\xe8\xf8\xa9\xf8\x95\x15\x49\x06\xfb\x74\xfc\x95\x05\xdb\x06\xf7\x45\xf8\x2d\xf7\x45\xfc\x2d"
+"\x05\xdb\x06\x0e\xf7\xe8\xf8\xa9\x16\xf7\x74\xf8\x95\x05\x3b\x06\xfb\x45\xfc\x2d\xfb\x45\xf8\x2d\x05\x3b\x06\xf7\x74\xfc\x95\x05"
+"\x0e\xf7\xe8\xf8\x8c\xf9\x60\x15\xfb\x60\xfb\x34\xfb\x32\xfb\x5f\xfb\x5b\xf7\x34\xfb\x33\xf7\x5d\xf7\x5b\xf7\x34\xf7\x34\xf7\x5c"
+"\xf7\x59\xfb\x34\xf7\x36\xfb\x58\x1f\xa4\x52\x15\xf7\x23\x7e\xf7\x06\xfb\x06\x99\xfb\x25\x08\xfb\xa3\x06\xf7\xa4\x52\x15\x82\xfb"
+"\x22\xfb\x0d\xfb\x0f\xfb\x22\x80\x08\xf7\xa8\x07\x53\xfb\xa8\x15\xfb\x27\x99\xfb\x05\xf7\x05\x7d\xf7\x29\x08\xf7\xa6\x06\xfb\xa6"
+"\xc4\x15\x99\xf7\x24\xf7\x07\xf7\x06\xf7\x25\x99\x08\xfb\xa4\x07\x0e\xc9\xf7\x11\xf7\x10\x15\xf8\x67\xf8\x67\xfc\x67\x06\xb3\xfc"
+"\x3f\x15\xf8\x17\xf8\x17\xfc\x17\x07\x0e\xf7\xe8\xf9\x64\xf8\xc3\x15\x4f\xfb\x8d\x06\x26\x86\x62\x7c\x6e\x1e\x5b\x72\x53\x6b\x50"
+"\x1b\x57\x58\xa4\xb3\x6f\x1f\x74\xac\x85\xb4\xf7\x04\x1a\xf7\x8d\x4f\xfb\x8a\x07\xfb\x1d\x90\x69\xa3\x63\x1e\x4a\xb1\xd1\x66\xde"
+"\x1b\xd7\xcb\xaa\xc3\xb4\x1f\xac\xb8\x91\xab\xf7\x29\x1a\x0e\x48\xf8\x27\xf8\x1c\x15\xfb\x69\x06\x41\xf7\x4d\x05\x2d\x06\xf7\x7d"
+"\xfc\xd5\x05\xde\x06\xf7\x7d\xf8\xd5\x05\x2d\x06\x22\xfb\x9d\x15\x3f\xfb\x48\x40\xf7\x48\x05\x0e\x78\x1d\xfb\x01\x7c\x49\x75\x1a"
+"\x7a\x91\x7d\x96\x82\x1e\x78\x71\x84\x76\x70\xb1\x1d\xad\xa4\x91\x94\xac\x9d\x1f\xa6\x9a\x9c\x9f\xbe\xd3\x08\x0e\xfb\x5d\x3b\x1d"
+"\x0e\xfb\x5d\x3b\x1d\xf7\x67\xf7\xc2\x7f\x0a\x0e\xfb\x5d\x3b\x1d\xf7\x98\xf7\x90\x15\xac\x06\x9b\xac\x05\x9b\xac\x95\xa7\x9b\x1a"
+"\x9a\x83\x93\x7b\x6b\x80\x77\x41\x86\x1e\x41\x70\x15\x72\x77\x78\x73\x71\xa0\x77\xd3\x0a\xf7\x42\x59\x1d\xfb\x5d\x3b\x1d\xf7\x7f"
+"\xf7\x45\x15\xb5\x06\xa1\xba\x05\xa1\xbb\x99\xb6\xa0\x1a\x9f\x81\x96\x78\x62\x7d\x6e\x22\x81\x1e\x0e\x2a\x1d\xfb\x1d\xf8\xeb\x15"
+"\x55\x5e\x5f\x54\x53\xb6\x5f\xc4\xc2\xb8\xb8\xc1\xc2\x5e\xb8\x53\x1f\x69\x04\xb0\xa9\x6d\x67\xd5\x1d\x2a\x1d\x6f\xf8\x98\x15\x6a"
+"\x80\x7e\xc9\x1d\x6f\x6e\x3e\x77\x6b\x1d\xa4\x83\x76\xc0\x1f\x81\xa5\x9d\x86\x98\x1b\xbb\xac\xaf\xcf\x99\x1f\x0e\x92\x2d\x0a\xf7"
+"\xe8\xd8\xa5\x0a\x82\x82\x87\x85\x84\x1e\x0e\x92\x2d\x0a\xf8\x46\xf7\x88\x20\x0a\x92\x2d\x0a\xf7\xb2\xf7\x51\x23\x1d\x92\x2d\x0a"
+"\xf7\xf0\xd6\x54\x0a\x9b\x7f\x7f\x92\x7c\x1b\x77\x7c\x7c\x78\x7f\x91\x82\x98\x80\x1f\x0e\xfb\x7c\xf7\xb4\xf9\x69\x15\x50\x75\x5f"
+"\x6b\x75\x1a\x75\xa9\x74\xc2\x76\x1e\x48\x66\x63\x59\x5c\x1a\x69\x9c\x73\xb5\x72\x1e\xfb\x04\x54\x46\x2f\x2d\x1a\x5d\x9b\x65\xaa"
+"\x73\x1e\x7c\x9e\xa1\x86\xb5\x1b\x98\x9b\x8c\x8d\xa1\x1f\x8e\xa1\x9b\x8c\x91\x1b\xa5\x99\x81\x7a\x68\x67\x6b\x62\x82\x84\x8c\x8f"
+"\x7f\x1f\x92\x76\x85\x8c\x7f\x1b\x6e\x78\x7c\x74\x75\x9e\x7c\xa7\xac\xb6\x9a\xa5\xb3\x1f\xbd\xab\xa5\xb2\xb7\x1a\xb6\x72\xa5\x63"
+"\x82\x79\x8a\x89\x79\x1e\x89\x78\x6e\x89\x7e\x1b\x60\x73\xa3\xb8\xdc\xbb\xdd\xdb\xc3\x1f\x7c\xb1\xab\x84\xae\x1b\xbd\xad\x9e\xa7"
+"\x9e\x75\x98\x6b\x65\x66\x82\x72\x50\x1f\x7e\x9d\x86\x9c\xa3\x1a\xbe\xa2\xb9\xba\xb4\x1e\x7e\xbb\xa0\x88\xab\x1b\xce\xb6\x9e\xaa"
+"\xa0\x77\x96\x66\x5a\x56\x7c\x6c\x4f\x1f\x6c\x9f\x77\xa2\x9d\x1a\x9c\x96\x97\xae\x9e\x1e\x8d\x8f\x8e\x8f\x92\x1f\x0e\xfb\x6c\x31"
+"\x1d\xf7\xd6\xf7\x88\x20\x0a\xfb\x6c\x31\x1d\xf7\x7c\xd6\x28\x0a\xfb\xa3\x33\x0a\xf7\x23\xf7\x49\x2b\x0a\xfb\xa3\x33\x0a\xf7\x70"
+"\xf7\xb9\x24\x1d\x0e\xfb\x93\xf7\xae\xf9\x67\x15\x4d\x72\x5b\x64\x72\x1a\x71\xab\x70\xc1\x76\x1e\x4b\x57\x70\x6e\x66\x53\x08\x4f"
+"\x33\x6a\x26\x2f\x1a\x33\xbc\x52\xd8\x95\x9c\x8c\x8d\x9b\x1e\x8d\x9c\x99\x8c\x90\x1b\xa6\x9a\x82\x79\x68\x66\x6c\x63\x81\x84\x8c"
+"\x8f\x7f\x1f\x92\x76\x85\x8c\x7f\x1b\x6e\x78\x7c\x74\x75\x9e\x7c\xa7\xad\xb6\x9a\xa5\xb2\x1f\xbe\xab\xa5\xb2\xb7\x1a\xb6\x72\xa5"
+"\x63\x82\x7c\x8a\x89\x7d\x1e\x89\x7c\x7b\x8a\x81\x1b\x5b\x72\xa7\xc1\xd5\xa2\xe4\xb4\xdf\x1f\xaa\xc9\xa6\xb0\xc0\xc4\x08\x86\xa3"
+"\x97\x8a\xa2\x1b\xe0\xc6\xa6\xb2\x9f\x79\x98\x6e\x56\x6c\x7f\x53\x36\x1f\x6a\x9c\x78\xa2\xa3\x1a\xa1\xa2\xa1\xb5\x9f\x1e\x0e\x79"
+"\x9d\xf8\x44\x94\xf7\x68\x98\x06\xa2\x0a\xd9\x0b\xa2\x8f\x8f\x8e\x8f\x8f\x8f\x8e\x8f\x91\x8f\x8f\x0c\x0c\xf8\x88\x14\xf9\x28\x15"
+"\xae\x13\x00\xb7\x02\x00\x01\x00\x04\x00\x0d\x00\x11\x00\x15\x00\x1a\x00\x2f\x00\x78\x00\xa4\x00\xac\x00\xb1\x00\xb6\x00\xb9\x00"
+"\xbe\x01\x58\x01\xde\x02\x56\x02\xd0\x02\xf0\x03\x4e\x03\xab\x03\xe5\x03\xf2\x03\xf9\x04\x02\x04\x07\x04\x3e\x04\x46\x04\x4f\x04"
+"\x5b\x04\x65\x04\x6e\x04\x75\x04\x7c\x04\xbb\x04\xc8\x04\xcd\x04\xee\x05\x01\x05\x07\x05\x1e\x05\x2e\x05\x31\x05\x38\x05\x46\x05"
+"\x53\x05\x5a\x05\x63\x05\x67\x05\x73\x05\x7f\x05\x87\x05\x91\x05\x9a\x05\xa1\x05\xa8\x05\xb0\x05\xb8\x05\xbe\x05\xe4\x06\x6e\x06"
+"\xa6\x06\xb3\x07\x16\x07\x68\x07\xa5\x08\x13\x08\x54\x08\x86\x08\xf0\x09\x59\x09\xb8\x0a\x1f\x0a\x2e\x0a\x3d\x0a\x9a\x0a\x9f\x0a"
+"\xc2\x0b\x14\x0b\x5b\x0b\xa9\x0b\xcc\x0c\x18\x0c\x51\x0c\x61\x0c\xa0\x0c\xa9\x0c\xb9\x0c\xea\x0d\x1a\x0d\x49\x0d\x67\x0d\x91\x0d"
+"\x9a\x0d\xc2\x0d\xea\x0d\xf3\x0d\xfa\x0e\x1d\x0e\x32\x0e\x54\x0e\x76\x0e\x7f\x0e\x89\x0e\xa9\x0e\xc9\x0e\xe1\x0e\xec\x0f\x0a\x0f"
+"\x16\x0f\x2b\x0f\x48\x0f\x4f\x0f\x62\x0f\x7a\x0f\x7f\x0f\x84\x0f\x98\x0f\x9c\x0f\xa1\x0f\xb5\x0f\xcc\x0f\xd9\x0f\xef\x10\x03\x10"
+"\x16\x10\x21\x10\x35\x10\x39\x10\x45\x10\x51\x10\x64\x10\x6f\x10\x7c\x10\x80\x10\x92\x10\x9b\x10\xac\x10\xb2\x10\xc3\x10\xd2\x10"
+"\xd7\x10\xe1\x10\xf1\x11\x01\x11\x11\x11\x14\x11\x1c\x11\x29\x11\x38\x11\x47\x11\x50\x11\x56\x11\x64\x11\x72\x11\x80\x11\x8e\x11"
+"\x9c\x11\xa8\x11\xb4\x11\xc1\x11\xce\x11\xdb\x11\xe8\x11\xf5\x11\xfa\x12\x07\x12\x14\x12\x20\x12\x2c\x12\x38\x12\x44\x12\x4e\x12"
+"\x59\x12\x64\x12\x6f\x12\x7a\x12\x85\x12\x90\x12\x9b\x12\xa6\x12\xb1\x12\xbc\x12\xc2\xc0\x1d\x0e\x15\x67\x06\xfb\x22\x22\x31\xeb"
+"\x1d\xf9\x21\x15\x0b\xf9\x2a\x15\x0b\x06\x90\x9d\x05\x0b\xf8\x64\xf7\x02\x15\x6f\x6f\x05\x6b\x6b\x80\x53\x0a\xf7\x40\xba\xf7\x3f"
+"\x68\x0a\x0b\xf8\x6f\xf9\x2e\x15\x36\x31\x63\x42\x3b\x1f\x26\x2e\x50\xfb\x0e\xfb\x09\x1a\xfb\x20\xe6\x28\xf7\x13\xf7\x64\xf7\x5e"
+"\xf7\x66\xf7\x76\x96\x1e\xf7\x21\x92\x2a\xf6\xfb\x1a\x1b\x81\x6a\x15\xdb\xbc\x51\x2d\xfb\x00\x5c\xfb\x26\x4a\x2d\x1f\x3c\x54\x4e"
+"\x64\x44\x1b\x37\x5d\xc7\xf7\x01\xea\xe6\x1d\x0b\xf9\x91\x69\x1d\x8e\x0a\xae\xa7\xf7\x00\xd6\xf7\x9a\x1f\x9f\xd0\x9b\x99\xd0\x93"
+"\x44\x0a\xf7\x13\xf7\x17\xde\xd2\xf7\x2a\xb7\x1e\xde\xf7\xb1\xb1\xf7\x16\x8f\x90\xc9\x99\x19\x0b\x54\x0a\x9b\x7e\x80\x92\x41\x1d"
+"\x06\x91\x9d\x05\x0b\x94\x83\x05\x90\x0b\xb0\x1d\x0e\x8a\x89\x81\x1f\x0e\x9b\xf8\x27\x15\x9f\x8c\xae\x8a\x91\x89\x92\x76\x19\x97"
+"\x6a\x9c\xfb\x1c\x8f\x2d\x8f\x33\x18\x64\x8d\x8d\x83\x94\x1b\x96\x9c\xa4\xd0\xaf\x1f\x90\x96\x9f\xae\xa9\xc0\xe4\xf7\x30\x18\xa8"
+"\xfb\xd3\x05\x70\x8d\x8d\x88\x92\x1b\x93\x95\x94\xad\xa6\x1f\x8b\x90\x91\x8f\x90\x1e\xf7\x1d\xf7\x38\xd6\xf7\x10\xcb\x1a\xaa\x75"
+"\xa1\x6d\x72\x7d\x7e\x76\x7e\x90\x82\x9b\x7d\x1e\x9b\x7c\x91\x80\x7f\x1a\x60\x69\x56\xfb\x17\xfb\x37\x1e\x6b\xf7\xf4\x05\x96\x89"
+"\x8e\x85\x86\x88\x89\x83\x86\x1e\xfb\x54\xfb\xc4\x88\xd1\x80\xf4\x80\xd0\x19\xcb\x80\x89\x92\x7f\x1b\x85\x80\x88\x87\x7e\x1f\x8a"
+"\x67\x84\x6b\x86\x1e\x87\x80\x89\x89\x80\x1f\x0b\xf9\x58\x23\x0a\x7c\x8f\x05\x73\x7a\x7a\x81\x70\x1b\x81\x80\x8d\x93\x75\x1f\x9b"
+"\x5c\x5d\x93\x62\x1b\xfb\x67\xfb\x54\xfb\x5c\xfb\x70\x47\xa8\x45\xba\x5b\x1f\x58\xbe\xd4\x70\xe2\x1b\xe3\xd3\x9e\xb6\xd8\x1f\xbc"
+"\xf7\x4f\x9c\xc3\x9a\x97\xcc\x8f\x19\x9b\xfb\x9e\x7b\x07\xc0\x85\x8b\x8b\x98\x84\x08\x92\x87\x90\x82\x83\x1a\x75\x84\x6d\x76\x43"
+"\x1e\x76\x44\x87\x82\x7f\x7f\x08\x75\x75\x65\x7f\x5e\x1b\xfb\x15\x42\xd5\xf7\x17\xf7\x0f\xbc\xf7\x14\xda\xde\x1f\xba\xb8\xc9\xa6"
+"\xcd\x1b\xcc\xc2\x70\x5d\xa9\x1f\x9b\x72\x92\x75\x90\x5f\x9d\x88\x18\x0b\xe6\xf9\x11\x15\xc3\x83\x8e\x88\x9c\x54\xd8\xfb\xa1\x18"
+"\x4e\xfb\x68\x7a\x55\x75\x7b\x49\x87\x19\x7b\xf7\xb5\x9b\x07\x7b\x8c\x7f\x8c\x83\x8c\x7a\x8c\x7d\x8e\x81\x90\x08\x84\x90\x86\x95"
+"\x98\x1a\xa0\x92\xa9\xa3\xd9\x1e\x8e\x94\x8d\x92\x8c\x8f\xa8\xf0\x18\xf7\x6f\xf7\xa2\xab\xb3\x93\x92\xa9\x99\x19\x9b\xfb\x51\x7b"
+"\x07\xbb\x86\x8b\x8b\x96\x84\x48\x1d\x70\x5d\x4a\x23\xfb\x0d\x1e\x7a\x77\x85\x83\x7c\x79\x7f\xb7\x86\x9c\x7d\xbc\x08\x72\xe1\x56"
+"\x0a\x90\xc7\x91\x1e\x9b\xfb\x83\x07\x0b\xfa\x1e\x22\x0a\xfb\x4d\x7b\x06\xc1\x86\x96\x84\x6f\x1a\x7a\x84\x74\x7d\x70\x1e\xfb\x4f"
+"\xfc\x04\x63\xf8\x26\x05\x8a\x90\x8b\x92\x8e\x1a\xb3\x99\x98\xc1\x90\x1e\x9b\xfb\x82\x7b\x07\xc5\x89\x95\x84\x92\x5a\x94\x46\x18"
+"\xfb\x40\xfb\xf0\x5f\xf8\x2a\x05\x8a\x90\x8b\x92\x8d\x1a\xb2\x97\x94\xc8\x92\x1e\x9b\xfb\x80\x7b\x07\xac\x87\x94\x88\x94\x82\x97"
+"\x80\x8f\x78\x97\x2f\xc9\xfc\x99\x18\x9e\x06\xf7\x72\xf8\x5a\x05\x90\x06\xbd\xfc\x5a\x05\x9f\x06\xf7\xc3\xf8\xdb\xa6\xbe\x95\x94"
+"\xb1\x97\x19\x0b\xaf\xf7\x26\x15\x77\xfb\x33\x05\x9b\x06\x9c\x94\x8f\x8f\x96\x1b\x96\x9d\x87\x86\x9f\x1f\x84\xa2\x9a\x88\x9c\x1b"
+"\xdf\x6f\x0a\x0b\xf9\x6b\x69\x1d\xc4\x86\x98\x81\x67\x1a\x7f\x89\x80\x84\x76\x1e\x8a\x88\x8a\x87\x8a\x1a\x25\xfc\x10\xfb\x64\xf8"
+"\x87\x05\xfb\x35\x7b\x06\xba\x87\x9f\x7e\x9e\x64\xfb\x0b\xfc\x35\x18\x65\xfb\x14\x83\x7f\x52\x83\x08\x7b\xf7\x5a\x9b\x07\x57\x8f"
+"\x79\x96\xa7\x1a\x98\x8e\x9f\x91\xa0\x1e\xf7\x06\xf8\x3a\xf7\x7a\xfc\xba\x05\x9d\x06\xf7\x24\xf8\x8b\xb0\xf7\x16\x8f\x90\xca\x99"
+"\x19\x0b\xdc\xf7\xc9\x15\x9f\xbc\x9a\x96\xb9\x8a\x08\xf7\x26\x06\xfb\xca\xfc\x08\x94\x82\x05\x98\x9b\x98\x90\x9b\x1b\xa5\xab\x7e"
+"\x6e\xba\x1f\x6c\xbd\xac\x7e\xa8\x1b\xbd\xb7\xaf\xb3\xa1\x7d\x99\x76\x77\x7d\x7e\x78\x83\x8e\x82\x91\x7f\x1f\x8e\x85\x8d\x85\x88"
+"\x1a\x82\x80\x85\x7b\x72\x7f\x94\xb4\x6a\x1e\x5f\xc4\x78\x98\x51\x98\xf7\xb6\xf7\xec\x18\x96\xfb\xb0\x07\x6c\xfb\x07\x05\x0b\xf8"
+"\x27\x22\x0a\xfb\xa5\x7b\x06\xca\x85\x99\x83\x6e\x9f\x0a\xf8\x91\x07\xc5\xf7\x47\x77\x91\x68\x43\x70\x6b\x5f\x75\x19\x7a\x68\x62"
+"\x85\x33\x1b\x40\x72\x93\xa5\x93\x8f\xa0\x91\xa0\x1f\xf7\x0f\xf8\x4f\x9a\xbe\xa5\x9e\xc7\x8f\x19\x0b\x73\x7e\x35\x1d\x9b\x1a\x95"
+"\x8d\x9b\x8f\x9a\x1e\x0b\x86\x83\x89\x8a\x88\x88\x0b\xf8\x68\x5d\x0a\x6a\x8d\x48\x08\x0b\xf9\x20\x7d\x1d\x0b\xf8\xf2\x22\x0a\xfc"
+"\x7a\x06\x5d\xfb\x26\x9e\x86\xb6\xe7\xae\x9e\xf7\x17\x8f\x19\xf7\x3f\x06\xfc\x73\xfc\xef\x05\x7d\xf8\x8d\x07\xc1\xf7\x3c\x78\x8e"
+"\x57\xfb\x03\x61\x74\xfb\x30\x8a\x19\xfb\x35\x06\xf8\x77\xf8\xef\x05\x0b\x54\x0a\x9c\x7e\x80\x91\x41\x1d\xa5\x0a\x81\x83\x87\x85"
+"\x84\x1e\x0e\x1f\x7a\x6e\x05\x7b\xb5\xa2\x86\xa7\x44\x1d\x0b\x8e\x9b\x93\x8c\x94\x1b\x9e\x93\x84\x0b\x1a\xb3\x72\xaa\x6a\x6e\x75"
+"\x77\x0b\x90\x99\x6d\x1f\x9c\x65\x0b\xb5\x1e\xd3\xf7\xd4\x05\x0b\xf7\x0d\x16\xbf\xf7\x3f\x9c\xb4\xb9\xd8\x08\xc3\xad\xa6\xaa\x9c"
+"\x1b\x92\x8f\x87\x81\x90\x1f\x7a\x93\x93\x86\x9f\x1b\xa9\x9b\x9d\xab\xef\x1d\x60\x63\x51\x7b\x63\x7d\x67\x18\xc0\xf7\x6d\x88\x8d"
+"\x42\x7e\x82\x89\x42\x7f\x19\x7a\x07\x8f\xa1\x8f\xc3\x1d\x0b\xf7\x8e\x9d\x15\x35\x0a\xf7\x0f\xf8\x5d\x3f\x1d\x0e\xf7\x67\x72\x0a"
+"\x0b\x08\x9b\xfb\xa5\x7b\x07\xce\x85\x96\x85\x6e\x1a\x7f\x88\x7b\x87\x7a\x1e\x56\xfb\x54\x05\x6d\xfb\x01\x7e\x4d\x61\x1a\x2c\xe6"
+"\x46\x0b\x15\x70\x77\x75\x6c\x6b\x9e\x76\xa8\xa5\xa2\xa2\xa7\xa8\x74\xa5\x70\x1f\x0e\xf7\x11\xf7\xca\x49\x0a\x8e\x9b\x92\x8c\x94"
+"\x1b\x9e\x93\x84\x7a\x80\x89\x7f\x86\x78\x1f\x30\xfb\xe8\x05\xd3\x06\x0b\x3e\x0a\x71\x79\x91\x80\x9e\x7a\x1e\x9a\x7d\x90\x83\x80"
+"\x1a\x0b\x15\xa1\x0a\x9a\xbe\xa5\xaf\x0a\x7c\x0b\x7a\x47\x77\x79\x4e\x8a\x19\x86\x79\x05\xf7\x97\x06\x0b\x15\x6d\x72\x72\x6b\x6e"
+"\xa4\x72\xa7\xab\x36\x1d\x0b\x6f\x75\x76\x70\x5b\x1d\x0b\x82\x60\x88\x86\x78\x18\x3d\x0a\x0b\x4a\x1d\x76\x0b\x1b\x9e\x93\x84\x7a"
+"\x81\x89\x7f\x86\x78\x1f\x0b\x5f\xad\x4e\xfb\x2a\xfb\x20\xfb\x26\xfb\x30\x0b\x1a\xa0\x79\x9c\x76\x76\x7b\x0b\x82\x82\x1b\x83\x85"
+"\x91\x92\x9f\xb5\x0b\x15\xaa\x06\xfb\x08\xf7\x29\x05\x0b\x79\x05\xf7\x65\x29\x0a\x0b\x80\xb6\x9a\x1a\xa4\x97\x0b\x1a\x7c\x88\x77"
+"\x83\x70\x1e\x0b\xa8\xb0\xae\xa9\xa9\xae\x1f\x0b\xf7\x95\xf7\xde\x6e\x1d\xf7\x99\xf7\xf1\x15\x86\x1d\x82\x89\x89\x78\x91\x0a\xab"
+"\x98\x89\x86\x95\x1f\x98\x85\x93\x7e\x7b\x1a\x81\x89\x7d\x87\x7c\x1e\xfb\x0f\xfc\x5e\x82\x0a\x0b\xf9\x1d\x23\x0a\xfc\x8c\x7b\x06"
+"\xca\x85\x9b\x83\x6f\x1a\x7f\x86\x6c\x85\x76\x1e\xfb\x0d\xfc\x55\x7a\x51\x84\x84\x52\x81\x19\x7b\xf8\x96\x07\xc9\xf7\x38\x7a\x93"
+"\x5d\x4a\x70\x71\x5f\x77\x19\x79\x66\x47\x81\x3d\x1b\x53\x73\x95\xa3\x98\x96\xbb\xa3\xe3\x1f\x90\x9a\x98\xbe\x98\xbe\xbb\x88\x18"
+"\xb9\x8a\xa8\x8a\xa3\x87\x93\x84\x19\x94\x84\x8d\x84\x75\x1a\x79\x8a\x81\x86\x74\x1e\x9f\x86\xce\xf7\x7f\x78\x90\x66\x34\x81\x85"
+"\x30\x87\x19\x7e\x6b\x8a\x8a\x67\x1f\xcc\xf7\x81\x05\xa2\x91\x95\x8e\xc6\x1b\xf7\x33\xae\x7d\x4e\x7b\x8b\x7f\x8a\x7a\x1f\xa0\x89"
+"\x05\x0b\xf8\x63\xf7\x03\x15\xe7\x1d\xf7\x0a\xad\xf7\x04\x1f\xa2\xdb\x9f\xd4\xc3\xf7\x6f\x86\x90\x18\x57\x80\x67\x86\x4a\x84\x08"
+"\x7a\x07\xc2\x89\x92\x88\x76\x1a\x7d\x8a\x88\x7d\x56\x1e\x5f\xfb\x38\x8f\x1d\xfb\x38\xf7\xd1\x87\x0a\x0b\xf8\x68\x15\x7c\x1d\x7a"
+"\xb9\xa6\x85\xaa\x9b\x1d\x0b\xf7\x9e\xf7\xdf\x15\xd8\x06\xbf\xa2\x7d\x6a\x7b\x89\x82\x84\x6a\x1f\x9c\x06\xcd\xf7\x85\x05\x78\x06"
+"\x74\x3d\x6c\x73\x3e\x5e\x1d\xf2\x06\xf0\xb2\x73\x4d\x7f\x8a\x84\x87\x7a\x1f\x9d\x06\xb5\xf7\x32\x05\xfc\x75\x25\x1d\xae\x98\x8a"
+"\x85\x95\x1f\x98\x85\x93\x7e\x7c\xba\x0a\x78\x79\x50\x89\x20\x1d\xf8\x82\x06\xc8\xf7\x50\x05\x7b\x06\x75\x5b\x77\x71\x62\x1d\x37"
+"\x7e\x8f\xa3\x92\x8c\x90\x8f\x9a\x1f\x0b\xbb\xf7\xda\x15\xe5\x06\x4a\xfb\x80\x7a\x51\x83\x99\x1d\xd5\x0a\x72\x84\x73\x1e\x5d\xfb"
+"\x38\x05\x31\x06\xf7\xeb\x16\xfb\x2d\x06\xca\xf7\x76\x05\xa1\x91\x9b\x92\xb6\x1b\xf7\x1c\xd6\x3f\xfb\x1f\xfb\x01\x61\xfb\x03\x47"
+"\x47\x1f\x4f\x50\x3a\x6d\x23\x1b\x5d\x78\x96\xa5\x97\x8e\x98\x9c\xc9\x1f\x8d\x93\xb9\xf7\x38\x05\xf7\x2d\x06\x0e\x15\x97\x79\xa1"
+"\x70\xac\x64\x94\x81\x92\x82\x90\x83\x08\x63\xa6\xa4\x6f\x94\x1b\x8f\x8e\x8e\x8f\x95\x72\xc2\x66\xcf\x1f\x88\x90\x83\x9c\x82\x9d"
+"\xa6\xa9\xa1\xa2\x9b\x99\x98\x97\x98\x98\x98\x98\x08\xaf\xb1\x9b\xa2\x98\x1a\x8f\x88\x8e\x88\x84\x0b\x15\x87\x79\x05\x9e\x06\xba"
+"\x8a\x9f\x7a\x99\x58\xf7\x10\xfc\x3e\x18\x45\x61\x73\x70\x78\x1b\x81\x80\x91\x95\x82\x1f\xb4\x66\x88\x8d\x73\x1b\x6d\x75\x75\x6c"
+"\x60\xb5\x69\xc2\xb8\xb1\x9e\xb1\xa9\x1f\xad\xb5\x92\x95\xdc\xf7\x16\xf7\x37\xf7\x9c\x18\xd7\xf7\x0e\xaf\xae\xc2\x8e\x90\x9d\x18"
+"\xfb\x65\x22\x1d\xa8\x06\xa5\x9a\x84\x7f\x7e\x87\x84\x60\x47\x1f\xfb\x4d\xfb\xb8\x3e\xf7\xde\x05\x8a\x92\x8a\x91\x94\x1a\xab\x9c"
+"\x9a\xb0\x1e\xa0\x29\x0a\x0e\xf9\x11\x15\xc4\x84\x99\x82\x71\xa2\x1d\x96\x8d\x93\x95\xb1\x1e\xc0\xf7\x55\x05\x85\xa5\xa3\x89\xb5"
+"\x1b\xdd\xcf\x9c\xaa\xb5\xdd\x1d\xfb\x8c\x06\xf7\x44\x51\x15\xa0\x91\x97\x92\xa7\x1b\xb2\xb1\x82\x7c\x9f\x1f\xa5\x79\x96\x6d\x5c"
+"\xd7\x1d\x86\x8b\x90\x6e\x1f\x0b\xf9\x91\x69\x1d\x8e\x0a\xad\xa9\xf7\x09\xcf\xf7\x7f\x1f\x8d\x92\x8d\x91\x8c\x91\xa0\xd1\x9b\x99"
+"\xcf\x92\x44\x0a\xf7\x13\xf7\x17\xde\xd2\xf7\x2a\xb7\x1e\xde\xf7\xb1\xb1\xf7\x16\x8f\x90\xc9\x99\x19\x0b\xf7\x5d\xf8\x14\x15\x87"
+"\xaa\x86\x9b\x7d\x9a\xfb\x1b\x6c\x18\x87\x7b\x05\x8f\x99\x91\x8c\x94\x1b\xb8\x9b\x70\x37\x93\x1f\xa5\xfb\xbe\x05\x41\x4e\x64\x66"
+"\x7b\x1b\x86\x88\x8d\x93\x89\x1f\x9b\x85\x82\x92\x7c\x1b\x73\x74\x75\x75\x76\x9d\x79\xa1\xc1\xf7\x07\xf7\x06\xf7\x4c\xf7\x19\x1f"
+"\xde\xf7\x08\xb8\xe0\xb5\x1a\xb2\x75\xa7\x6c\x74\x7b\x7c\x74\x75\x9a\x77\xa2\x84\x1e\x96\x88\x8f\x86\x81\x1a\x67\x41\xfb\x0c\x30"
+"\xfb\x03\x1e\x0b\xf7\xe7\xf7\x29\x15\x37\x63\x5b\x62\x4f\x1b\x56\x67\xb2\xc5\xb9\x9d\xaf\xae\xa5\x1f\x77\xba\xa0\x86\xa9\x1b\xac"
+"\x9e\x97\xa0\x9f\x76\x97\x67\x6e\x78\x87\x7d\x64\x1f\x87\x9a\x8a\x93\x93\x1a\xd7\xb6\xc8\xc1\xaa\x9d\x7a\x6e\x8c\x1e\x8c\x72\x8b"
+"\x8b\x90\x81\x08\x7e\x92\x98\x83\x9b\x1b\xa5\x9e\x9f\xa7\xb9\x58\xac\x46\x23\x3c\x57\x46\x6a\x97\x75\xae\x71\x1f\x42\x6f\x5d\x57"
+"\x54\x1a\x48\xc8\x59\xdf\xe6\xc9\xba\xf1\xb8\x1e\x0b\xf8\x3e\xf1\x15\x5d\x68\x77\x79\x7b\x1b\x84\x85\x91\x92\x92\x8b\x8c\x92\xa5"
+"\x1f\xe8\xf7\xf1\x05\x43\x06\xfb\x00\x74\x2e\xfb\x04\x47\x1b\x7b\x83\x94\x9d\x92\x8b\x8d\x8f\x97\x1f\xbc\xf7\x4b\x5a\x7f\x56\x81"
+"\x5e\x88\x20\x1d\x3d\x0a\x7a\x80\x89\x82\x85\x75\x1f\x76\x3d\x05\x88\x7e\x87\x71\x7f\x1a\x68\xa1\x73\xad\xaa\xad\x99\xa6\xae\x1e"
+"\xad\xa5\x9e\xa1\xaf\xc0\x4c\xfb\x80\x18\x89\x0b\xf7\xd6\xfb\x40\x15\xf7\x17\xf8\x7f\x05\x91\xa3\x8f\xa2\x9e\x1a\xae\x73\xa3\x67"
+"\x53\x4d\x54\xfb\x16\x31\x1e\xa7\xf0\x05\x8e\x98\x8d\x99\x94\x1a\xa9\x7a\x9d\x70\x53\x4f\x57\x37\x64\x1e\x9d\x80\x05\xc0\xa5\xb1"
+"\xb5\xa2\x1b\x95\x92\x82\x7f\x85\x8b\x8b\x80\x63\x1f\x35\xfb\xd9\x05\xd3\x06\xb1\xf7\x21\x9c\xcc\xbc\xd7\xc9\xc5\x19\xac\xad\x9b"
+"\x95\x9c\x1b\x9a\x94\x80\x79\x79\x8a\x88\x7d\x59\x1f\xfb\x12\xfc\x5b\x05\x0b\x77\x0a\x6e\x97\x7f\xa7\xb3\xa3\x9e\xe6\xd6\x1e\x7b"
+"\x0a\x0b\x37\x1d\xc3\xc3\x3e\x0a\x71\x78\x38\x1d\x70\x56\x68\x1e\x0b\x1b\x3c\x30\x62\x43\x3c\x1f\x26\x2e\x50\xfb\x0d\xfb\x09\x1a"
+"\x30\xa8\x4e\xcd\x5b\x1e\x35\xfb\x13\x05\xb7\x06\xd5\xf7\x00\x05\x7c\xb1\xa4\x85\xaa\x1b\xf7\x66\xf7\x64\xf7\x73\xf7\x76\xb9\x7f"
+"\xbb\x75\xb0\x1f\x7c\xa4\x7e\x98\x6b\xa5\x08\xfc\x33\xfc\xbc\x15\x79\xad\x84\xa9\xb1\x1a\xf3\xba\xf7\x23\xca\xe6\x1e\xdb\xc2\xca"
+"\xb2\xd2\x1b\xad\xa2\x84\x78\xa4\x1f\xa3\x6a\x15\x9c\x0b\xf7\xf2\x6c\x0a\x0e\xf9\x06\x15\xf7\x27\x06\xa9\x99\x89\x84\x96\x1f\x9d"
+"\x80\x96\x75\x70\x1a\x78\x89\x79\x85\x6b\x1e\x9c\x06\xb9\xf7\x42\x05\xfc\x61\x76\x0a\x0b\x15\x5d\x5d\x63\x76\x5e\x1b\x52\x64\xb7"
+"\xcb\x98\x8c\x9b\x8d\x9d\x1f\xd9\x8e\xb8\x94\xb9\xa1\x08\xcf\xaa\xb6\xc2\xc3\x1a\xb6\x63\xaa\x52\xfb\x16\xfb\x1d\xfb\x2e\xfb\x25"
+"\x2f\xc1\x4d\xdd\xc9\xcb\xad\xce\xc8\x1e\xfb\x7e\xf7\x12\x15\xf7\x08\xab\xd0\xdf\xc9\x1b\xa2\x9d\x78\x72\x69\x75\x62\x68\x6d\x1f"
+"\x66\x6b\x67\x7f\x41\x84\x08\x0e\xf8\x7f\x22\x0a\xfb\x92\xd5\x0a\x77\x83\x6e\x1e\xfb\x17\xfc\x65\x05\x64\x80\x7d\x7c\x73\x1b\x73"
+"\x80\x97\xa7\x90\x8b\x90\x8c\x90\x1f\x94\x07\xa4\x75\xa1\x70\x70\x79\x75\x6b\x56\xba\x68\xd1\xbe\xb8\x9f\xb0\xaa\x1e\xa6\xab\x9f"
+"\xb8\xa0\xd7\xf2\xf8\x07\x18\x9d\xc7\x92\x91\xc4\x93\x08\x0b\xc7\xc1\xd7\xb2\x76\xb6\x5c\xc5\x1f\x65\xba\x7b\xaa\xa7\x1a\xac\xa0"
+"\x9f\xae\xbf\xa9\x66\x3d\x95\x1e\x9b\x06\x9f\xf7\x1f\x05\x7d\x06\x7d\x82\x85\x87\x7c\x1b\x83\x82\x8d\x90\x78\x1f\x93\x72\x7d\x8d"
+"\x7a\x1b\x41\x5c\x60\x48\x6b\xa0\x60\xb5\x55\x1f\xb2\x58\x9c\x68\x6e\x1a\x5d\x6d\x6c\x5f\x53\x6d\xb4\xea\x7b\x1e\x0b\xf8\xc1\x15"
+"\xa0\x0a\x6a\x1a\x80\x89\x7f\xa4\x0a\xf7\x96\x06\xdf\xca\x99\xa7\xbb\x1f\xc9\xb0\xb0\xc8\xc5\x0a\x75\x1e\x81\x65\x15\x8d\x99\x0b"
+"\xa4\x08\xb5\xa7\xa0\xac\xb1\x1a\xb6\x6c\xa6\x59\x62\x69\x79\x5d\x5c\x1e\xa1\xc9\x44\x89\x78\x60\x05\xaf\x7b\x7b\x96\x69\x1b\xfb"
+"\x10\xfb\x30\xfb\x5c\xfb\x32\x54\xae\x64\xbc\xcb\xb8\xb0\xf7\x11\xe1\x1f\x86\x7a\x8a\x83\x7c\x1a\x44\xb7\x58\xca\xca\xd7\xb7\xcf"
+"\xc3\x1e\xfb\xb9\xf7\xd4\x15\xa6\x8a\x9d\x77\x0b\xef\x15\x68\x73\x6f\x72\x7d\x1b\x83\x84\x91\x91\x8e\x8c\x90\x8c\x90\x1f\xf0\xf8"
+"\x0f\x59\x7f\x59\x83\x5c\x87\x20\x1d\x8d\x9b\x93\x8c\x94\x50\x0a\x3f\xfb\xae\x05\x88\x7e\x89\x7e\x81\x1a\x77\x9a\x7f\xa6\xac\xb4"
+"\xaa\xcc\xc1\x1e\x0b\xcf\x0a\xab\xa9\xa1\x9f\xa6\x9c\xbf\x0a\xa1\xa5\xc0\xae\x1e\x0b\x54\xfb\x13\x43\x3d\x1e\x72\x74\x6c\x7b\x71"
+"\x1b\x73\x7f\xa1\xb1\x8d\x1f\x92\xf7\x27\xf7\x01\xf7\x47\xdb\x87\x08\xe0\xfb\x5a\x15\xa9\xe4\x9d\xad\xae\xb1\x08\x9f\x9f\xa2\x97"
+"\xa2\x1b\xa2\x97\x7e\x74\x75\x84\x76\x7e\x77\x1f\x6c\x5c\x60\x73\x31\x74\x08\x0b\x5c\x1d\xa6\x94\xa0\x94\xb5\x08\x0e\x66\x1d\x7d"
+"\x87\x7e\x9d\x1d\x9d\x1a\x96\x8d\x96\x8f\x9c\x1e\x0b\x1f\x8e\x95\x8c\x8d\x8d\x94\x84\x8e\x18\x4e\x84\x88\x88\x80\x5b\x05\xb0\x83"
+"\x6e\xa0\x60\x1b\xfb\x19\xfb\x2d\xfb\x4a\xfb\x33\x45\xb1\x62\xcb\xd1\xb6\xac\xf7\x10\xe3\x1f\x76\x39\x89\x83\x72\x1a\x0b\x1f\x9c"
+"\x87\xd0\xf7\x7c\x79\x8f\x61\x30\x81\x86\xfb\x33\x8a\x19\xc8\xf7\x72\x05\xac\x94\x93\x8f\xbb\x1b\xf7\x37\xa7\x7f\x45\x84\x8b\x7b"
+"\x8a\x7e\x1f\x9c\x89\xac\xf7\x2d\x05\xfc\x99\x7c\x06\x0b\xd6\x06\xb3\xf7\x2e\x98\xad\xb3\xc8\x08\xda\xbf\xcf\xc9\xae\x1b\x9a\x98"
+"\x7f\x7e\x87\x88\x7e\x87\x7b\x1f\x54\xfb\x63\x05\x7e\x5a\x84\x6c\x7f\x1a\x71\x9c\x7b\xa7\xbd\xae\xa6\xe2\xc7\x1e\x0b\xf7\x32\xa8"
+"\xb0\xd1\xc3\x1b\x99\x93\x36\x0a\x87\x43\x1d\x9e\x9d\xa1\xb1\x66\xa6\x59\x5b\x64\x75\x5d\x67\x1e\x6d\x63\x0b\xfb\x3b\xf7\xd3\x15"
+"\xad\x89\xa1\x73\x68\x1a\x37\x58\xfb\x0a\x47\x41\x1e\x70\x73\x69\x7a\x6e\x1b\x67\x75\xa7\xb9\xc3\xb0\xf0\xb7\xca\x1f\xb3\xc5\xb9"
+"\xab\xb4\x88\x08\x0b\x2a\x0a\x99\x93\x8d\x95\x85\x0a\x0b\x86\x79\x05\xf7\x54\x06\xf7\x28\xbd\x93\xad\xc0\x1f\xc6\xaf\xaf\xca\xce"
+"\x1a\xd1\x68\xb7\x3f\xa6\x1e\xbf\x99\xa2\x95\xa4\x9f\x08\xb2\xa9\xa4\xbc\xb8\x1a\xb4\x0b\xc0\x48\xd9\xd1\xbd\xac\xdd\xc5\x1e\x87"
+"\x6f\x8a\x7e\x7e\x1a\x67\x9b\x72\xa2\xb2\xb2\xb4\xe9\xbb\x1e\xfb\x5f\xad\x15\x2b\x68\x61\x5a\x5b\x1b\x64\x76\xab\xc6\x0b\x15\x42"
+"\x1d\xf7\x2e\x16\x42\x1d\x0b\xf7\x34\xf8\x48\x9a\x1d\x0b\xf9\xce\xf7\x3d\x15\x20\x43\x51\x6e\xfb\x2a\x1b\x6d\x06\x68\x7b\x94\x9f"
+"\x97\x9a\xc5\xbc\xf7\x40\x1f\x92\xa3\x05\xb3\x06\xec\xa0\x82\x62\x0b\xcd\x1d\x67\x7f\x8d\x90\x81\x1f\x7e\x92\x83\x98\x9a\x1a\x98"
+"\x8d\x97\x8e\x9a\x1e\x0b\x15\xfc\xa0\x07\x3a\xf7\x66\x56\x74\xf7\x13\xfb\xb2\x05\xd8\x06\xf7\x14\xf7\xb2\x56\xa2\x3a\xfb\x66\x05"
+"\xf8\xa0\x07\xdc\xfb\x66\xc0\x0b\x48\x55\x7f\x7f\x7b\x1b\x82\x84\x93\x95\x96\x9b\xc9\x9c\xbf\x1f\xa8\xe8\x9e\xd6\xa4\x1a\xb3\x70"
+"\xa6\x64\x4a\x44\x4a\xfb\x26\x2e\x1e\x0b\x4f\x0a\x7a\x8f\x96\x6d\x3c\x0a\x0b\x72\x77\x78\x73\x72\xa0\x76\xd3\x0a\x0b\x15\xa9\x89"
+"\x9a\x78\x67\x1a\xfb\x2c\x23\xfb\x40\x2f\x68\x74\xa5\xb3\xdd\xbd\xf7\x09\xcd\xd1\x1e\xa7\xa8\xb0\x9e\xa7\x89\x08\x0b\x73\x1a\x6e"
+"\x9e\x77\xa8\xb3\xae\xa7\xd8\xc4\x1e\x7b\x94\x79\x76\x80\x7f\x87\x86\x19\x75\x75\x7e\x82\x81\x1b\x85\x86\x8f\x91\x0b\x19\x86\x78"
+"\x05\x3d\x0a\x79\x81\x89\x80\x86\x77\x1f\x51\xfb\x6d\x05\x82\x6a\x89\x7f\x79\x1a\x0b\x99\xd5\x21\x1d\xfb\xa3\x06\x85\x4c\x1d\x0b"
+"\x1a\x90\x89\x8f\x88\x89\x87\x8a\x89\x87\x1e\x87\x8a\x87\x8a\x05\x85\x7d\x8b\x8b\x85\x1b\x86\x80\x8d\x8d\x7c\x1f\x90\x0b\x06\xf7"
+"\x3f\xf5\x05\x97\x93\x90\x93\x97\x1a\x0b\xd1\x0a\xa3\xa6\x74\x9d\x68\x60\x72\x76\x48\x64\x1f\x5b\x38\x6a\x71\x48\x83\x08\x0b\xc0"
+"\x86\x9d\x80\x6d\x1a\x7b\x71\x27\x5b\xfb\x3f\x1e\x7e\x5a\x05\xfb\x38\x5f\x4b\x47\xfb\x02\x1b\x38\x52\xba\xd2\x0b\xbc\x0a\x79\x7d"
+"\x6a\x1d\x0b\x5a\x67\x4d\x1b\x4c\x63\xaf\xca\x87\xf7\x01\x1d\xa1\xae\x7c\xb8\x1b\xc0\x0b\x7b\x1e\xfb\xab\xfb\x7e\xbe\xf7\x53\x9d"
+"\xd2\x9e\x9a\xcc\x8c\x19\x90\x9d\x05\xfb\x9f\x22\x1d\x0b\xb4\x1d\x84\x1e\x0e\xc4\x1d\x82\xd6\x0a\x15\xae\x06\xf7\x3f\xf5\x05\x97"
+"\x92\x90\x94\x97\x1a\xa0\x7b\x9a\x77\x81\xd6\x0a\xd4\x96\x0a\x0b\x15\xae\xb3\x1d\x0b\x76\x7b\x7a\x74\x67\xac\x71\xb8\xe5\xd0\xec"
+"\xf7\x4e\x40\x0a\xf7\x2f\x06\x96\x0b\xf7\xbd\x15\x64\x8c\x81\x8f\x9b\x1a\x93\x92\xa4\x97\xb3\x1e\xe1\xf7\xa6\x05\x8d\x91\x8c\x0b"
+"\x35\x92\x87\x8d\xb0\x1a\x97\x8d\x95\x95\xaf\x1e\x0b\x15\xd9\x06\xc0\xa2\x7c\x6a\x7b\x89\x81\x84\x6c\x1f\x9c\x06\xcb\xf7\x85\x05"
+"\x7a\x06\x0b\x9d\x1f\x8c\x8f\x8c\x8e\x8c\x8c\x08\x8d\x07\xd0\xf7\x9d\xed\xbd\x97\xb9\x05\x0e\x15\x6c\x73\x72\x6b\x6d\xa3\x73\xa9"
+"\xab\xa4\xa3\xa9\xab\x72\xa4\x6c\x1f\x0e\x8c\x0a\x9f\x7b\x9b\x76\x82\x82\x87\x85\x0b\x15\xa7\xaa\x9b\x93\xa5\x1b\xa7\xa1\x75\x6d"
+"\x5e\x5c\x6d\x27\x78\x1f\x82\x07\x0b\xc1\x1d\x7b\x0b\xd4\x9e\x9d\x99\xd5\x34\x1d\xc2\x8a\x9c\x81\x0b\x6d\x72\x72\x6b\x6e\xa4\x72"
+"\xa8\xaa\x36\x1d\x0e\x15\xa9\xa4\x72\x6d\x6d\x72\x72\x6d\x6e\x71\xa4\xa8\xaa\xa4\xa4\xa9\x1f\x0b\x88\x19\x7b\x07\xc1\x8a\x94\x88"
+"\x77\x1a\x0b\x87\x7d\x1e\xfb\x0e\xfc\x5f\x79\x47\x78\x49\x1d\x0b\x5f\x1d\x77\x0b\x6f\x75\x76\x70\x6e\xa1\x75\xa7\xa6\xa1\xa1\xa6"
+"\xa5\x73\xa3\x72\x1f\x0b\xcd\x0a\x42\x2c\x1a\xfb\x08\xb8\x0b\x1b\xf0\xbe\x5f\x35\x22\x37\x41\xfb\x0b\x77\x7d\x8c\x90\x6f\x1f\x0b"
+"\xb5\x60\xc0\xde\x1d\x0b\x6a\x1a\x5d\x6b\x6d\x5c\x5b\x6d\xa7\xb7\xba\xa6\xab\xc8\xa4\x1e\x0b\xf7\xae\xf7\x93\x15\xfb\x6f\x06\x7d"
+"\x4c\x05\xf7\x70\x06\x0e\xf7\xe5\xe8\x1d\x0e\xf7\x0d\xd9\xdc\x1f\xbc\xbb\xca\xa7\x0b\xf8\x1b\xf7\x2c\x15\x54\xf8\x92\x05\xfb\x45"
+"\x06\x86\x79\xac\x0b\x9e\xc7\x8f\x19\x9b\xfb\xa5\x7b\x07\xca\x85\x99\x83\x6e\x1a\x0b\xbc\xb4\xa5\xbe\xae\x1e\x7a\x9d\x05\x75\x70"
+"\x73\x81\x6b\x1b\x0b\xdb\x1d\x0e\x1b\xbb\xac\xb0\xce\x99\x1f\x0e\x24\x0a\x70\x84\x8c\x8f\x80\x1f\x7b\x90\x81\x9a\x0b\x86\x90\x4f"
+"\x7d\x64\x85\x51\x84\x19\x7b\x07\xa5\x8c\x05\x0b\x9d\x05\x55\x8c\x7a\x96\xab\x1a\x95\x8d\x97\x8f\x9b\x1e\x0b\x8c\x8f\x81\x1f\x7b"
+"\x91\x81\x99\x0b\x1e\xfb\x0f\xfc\x4e\x0b\x84\x7e\x89\x85\x81\x1a\x73\x9a\x7d\xa3\xa7\x9f\x9e\x0b\x15\x64\x71\x7a\x7f\x6c\x1b\x76"
+"\x76\x90\x94\x7a\x1f\x0b\x1a\x7f\x89\x7d\x87\x7d\x1e\xfb\x0e\xfc\x5e\x7a\x48\x0b\x1b\x7b\x78\xf7\xb8\x9e\x7a\x06\x55\x77\x9f\xc2"
+"\x1f\x0b\xf7\x72\xf7\x06\x15\x72\x6a\x85\x83\x81\x81\x08\x7a\x0b\x79\x47\x78\x7a\x4e\x89\x20\x1d\xf7\x89\x06\x0b\xa3\xb8\xad\x1f"
+"\x9f\xa6\x93\xa1\x94\xb5\x08\x0e\x85\x96\x78\x9c\x1e\x7c\x99\x86\x93\x96\x1a\xa6\x0b\x8b\x8b\x8e\x8f\x08\x98\x95\x97\x92\x96\x1b"
+"\x92\x0b\x1f\x7a\x6e\x05\x7b\xb4\xa2\x86\xa8\x1b\xd1\xbc\x0b\xa8\xc8\xc9\x1e\xee\xec\xca\xf7\x1e\xf7\x0b\x1a\x0b\xf9\x31\xf9\x66"
+"\x15\x5f\x06\x57\x3d\x05\x9b\x65\x0b\x4d\xf3\x1d\x05\x0b\xce\x1a\xf7\x01\x33\xcf\xfb\x23\x7b\x81\x8a\x89\x0b\xfb\x14\xf7\xb2\x05"
+"\x3e\x06\xfb\x13\xfb\xb2\xc0\x0b\x06\xdb\xf7\x68\x05\x4e\x06\x3b\xfb\x68\x05\x0b\x06\x3b\xfb\x69\x05\xc9\x06\xda\xf7\x69\x05\x0b"
+"\x1b\xa2\x9f\x81\x7f\x89\x8a\x88\x88\x87\x1f\x0b\xda\x69\x1e\x7d\xad\xa6\x87\xd0\x1b\xf7\xac\x0b\xf7\x6f\xcd\xfb\x6f\xf7\x70\x49"
+"\x06\x0e\x81\x5d\x7d\x7f\x60\x8a\x08\x7b\xf7\x61\x0b\x06\x38\x68\x84\x72\x66\x1f\x4a\x60\x69\x0b\x8b\x83\x90\x08\x85\x8f\x89\x91"
+"\xae\x1a\x0b\x15\x36\x5c\x5e\x54\x52\x1a\x63\xa4\x6c\x0b\x93\x8c\x94\x1b\x9d\x93\x84\x7c\x80\x89\x0b\x1f\x7d\x99\x91\x88\x9a\x1b"
+"\xa7\x9c\x9a\x0b\x1f\xe3\xf7\xe5\x05\x43\x06\x75\x3d\x05\x0b\xa4\xa4\x9e\x9e\xa3\xa4\x76\xa0\x73\x1f\x0b\x65\x72\x60\x1b\x5c\x6c"
+"\xaf\xc2\xd5\xa8\x0b\x7b\x06\xca\x85\x99\x83\x70\x1a\x7c\x87\x0b\x83\x88\x84\x84\x1e\x0e", 56086
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusRoman-Regular.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusRoman-Regular.cff.cpp
new file mode 100644
index 0000000000..cd38304e97
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusRoman-Regular.cff.cpp
@@ -0,0 +1,1522 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusRoman_Regular_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x14\x4e\x69\x6d\x62\x75\x73\x52\x6f\x6d\x61\x6e\x2d\x52\x65\x67\x75\x6c\x61\x72\x00\x01\x01\x01"
+"\x2f\xf9\xbc\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x18\x04\x20\x0c\x03\xfb\x3c\xfb\xad\xfa\x7c\xfa\xb1\x05"
+"\x1c\x28\xad\x0f\x1c\x28\xc0\x11\xbc\x1d\x00\x00\xac\xae\x12\x01\xa6\x02\x00\x01\x00\x08\x00\x0e\x00\x13\x00\x1d\x00\x24\x00\x2b"
+"\x00\x35\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00\x6e\x00\x74\x00\x7a\x00\x84\x00\x8b\x00\x8e\x00\x95"
+"\x00\x9c\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00\xe3\x00\xe7\x00\xf2\x00\xf4\x00\xfa\x01\x04\x01\x0b"
+"\x01\x12\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01\x59\x01\x5f\x01\x6b\x01\x6f\x01\x71\x01\x77\x01\x7d"
+"\x01\x89\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01\xd0\x01\xd2\x01\xd5\x01\xdb\x01\xe1\x01\xed\x01\xf0"
+"\x01\xf6\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02\x38\x02\x3e\x02\x4b\x02\x52\x02\x59\x02\x60\x02\x6f"
+"\x02\x7b\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02\xb9\x02\xbf\x02\xc9\x02\xcd\x02\xd3\x02\xda\x02\xe3"
+"\x02\xec\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03\x3d\x03\x46\x03\x4f\x03\x58\x03\x61\x03\x6a\x03\x73"
+"\x03\x7c\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03\xcd\x03\xd6\x03\xdf\x03\xe8\x03\xf1\x03\xfa\x04\x03"
+"\x04\x0c\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04\x5d\x04\x66\x04\x6f\x04\x78\x04\x81\x04\x8a\x04\x93"
+"\x04\x9c\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04\xed\x04\xf6\x04\xff\x05\x08\x05\x11\x05\x1a\x05\x23"
+"\x05\x2c\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05\x7d\x05\x86\x05\x8f\x05\x98\x05\xa1\x05\xaa\x05\xb3"
+"\x05\xbc\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06\x0d\x06\x16\x06\x1f\x06\x28\x06\x31\x06\x3a\x06\x43"
+"\x06\x4c\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06\x9a\x06\xa3\x06\xac\x06\xb5\x06\xbf\x06\xc6\x06\xcf"
+"\x06\xdb\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07\x1b\x07\x21\x07\x26\x07\x2d\x07\x3a\x07\x40\x07\x46"
+"\x07\x50\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07\x92\x07\x9a\x07\xa3\x07\xae\x07\xb4\x07\xb9\x07\xbe"
+"\x07\xc4\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08\x10\x08\x12\x08\x19\x08\x21\x08\x29\x08\x33\x08\x3d"
+"\x08\x49\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08\x9c\x08\xa8\x08\xb4\x08\xba\x08\xc0\x08\xc6\x08\xd2"
+"\x08\xd6\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09\x1c\x09\x22\x09\x2e\x09\x38\x09\x40\x09\x42\x09\x48"
+"\x09\x55\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09\xa4\x09\xa7\x09\xa9\x09\xb0\x09\xbc\x09\xca\x09\xcd"
+"\x09\xda\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e\x0a\x34\x0a\x39\x0a\x42\x0a\x47\x0a\x50"
+"\x0a\x53\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d\x0a\xa4\x0a\xab\x0a\xb2\x0a\xb9\x0a\xc0"
+"\x0a\xc7\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d\x0b\x14\x0b\x1b\x0b\x22\x0b\x29\x0b\x30"
+"\x0b\x37\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d\x0b\x84\x0b\x8b\x0b\x92\x0b\x99\x0b\xa0"
+"\x0b\xa7\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed\x0b\xf4\x0b\xfb\x0c\x02\x0c\x09\x0c\x10"
+"\x0c\x17\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d\x0c\x64\x0c\x73\x0c\x87\x0c\x93\x0c\x98"
+"\x0c\x9e\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5\x0c\xe9\x0d\x1f\x0d\x5f\x0d\x73\x0d\x7f"
+"\x41\x45\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x41\x6d\x61\x63"
+"\x72\x6f\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x42\x65\x74\x61\x43\x61\x63\x75\x74\x65\x43\x63"
+"\x61\x72\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x43\x68\x69\x44\x63\x61\x72"
+"\x6f\x6e\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65\x45\x63\x61\x72\x6f\x6e\x45\x64\x6f\x74\x61\x63\x63"
+"\x65\x6e\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65\x6b\x45\x70\x73\x69\x6c\x6f\x6e\x45\x70\x73\x69\x6c"
+"\x6f\x6e\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45\x75\x72\x6f\x47\x61\x6d\x6d\x61\x47\x62\x72\x65\x76"
+"\x65\x47\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x47\x64\x6f\x74\x61\x63\x63\x65"
+"\x6e\x74\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a\x49\x62\x72\x65\x76\x65\x49\x64\x6f\x74\x61\x63\x63"
+"\x65\x6e\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f\x74\x61\x49\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69"
+"\x73\x49\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x4b\x61\x70\x70\x61"
+"\x4b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c\x61\x6d\x62\x64\x61\x4c\x63\x61\x72\x6f\x6e\x4c\x63"
+"\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63\x75\x74\x65\x4e\x63\x61\x72\x6f\x6e\x4e\x63\x6f\x6d"
+"\x6d\x61\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x4f\x6d\x61"
+"\x63\x72\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72\x6f\x6e\x4f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f"
+"\x73\x4f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73\x69\x52\x61\x63\x75\x74\x65\x52\x63\x61\x72\x6f\x6e"
+"\x52\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75\x74\x65\x53\x63\x65\x64\x69\x6c\x6c\x61\x53\x63\x69"
+"\x72\x63\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x53\x69\x67\x6d\x61\x54\x61\x75\x54\x62\x61\x72"
+"\x54\x63\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54\x68\x65\x74\x61\x55\x62\x72\x65\x76\x65\x55\x68\x75"
+"\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f\x67\x6f\x6e\x65\x6b\x55\x70\x73\x69\x6c\x6f\x6e\x55"
+"\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x55\x72\x69\x6e\x67\x55"
+"\x74\x69\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x57\x64\x69\x65\x72\x65\x73\x69\x73\x57"
+"\x67\x72\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59\x67\x72\x61\x76\x65\x5a\x61\x63\x75\x74\x65\x5a\x64"
+"\x6f\x74\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61\x65\x61\x63\x75\x74\x65\x61\x66\x69\x69\x30\x30\x32"
+"\x30\x38\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31\x38\x61\x66\x69\x69\x31\x30\x30\x31\x39\x61\x66\x69"
+"\x69\x31\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69\x31\x30\x30\x32\x32\x61\x66\x69\x69\x31\x30\x30\x32"
+"\x33\x61\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35\x61\x66\x69\x69\x31\x30\x30\x32\x36\x61\x66\x69\x69"
+"\x31\x30\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31\x30\x30\x32\x39\x61\x66\x69\x69\x31\x30\x30\x33\x30"
+"\x61\x66\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61\x66\x69\x69\x31\x30\x30\x33\x33\x61\x66\x69\x69\x31"
+"\x30\x30\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30\x30\x33\x36\x61\x66\x69\x69\x31\x30\x30\x33\x37\x61"
+"\x66\x69\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66\x69\x69\x31\x30\x30\x34\x30\x61\x66\x69\x69\x31\x30"
+"\x30\x34\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30\x34\x33\x61\x66\x69\x69\x31\x30\x30\x34\x34\x61\x66"
+"\x69\x69\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69\x69\x31\x30\x30\x34\x37\x61\x66\x69\x69\x31\x30\x30"
+"\x34\x38\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35\x30\x61\x66\x69\x69\x31\x30\x30\x35\x31\x61\x66\x69"
+"\x69\x31\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69\x31\x30\x30\x35\x34\x61\x66\x69\x69\x31\x30\x30\x35"
+"\x35\x61\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37\x61\x66\x69\x69\x31\x30\x30\x35\x38\x61\x66\x69\x69"
+"\x31\x30\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31\x30\x30\x36\x31\x61\x66\x69\x69\x31\x30\x30\x36\x32"
+"\x61\x66\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61\x66\x69\x69\x31\x30\x30\x36\x37\x61\x66\x69\x69\x31"
+"\x30\x30\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30\x30\x37\x30\x61\x66\x69\x69\x31\x30\x30\x37\x31\x61"
+"\x66\x69\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66\x69\x69\x31\x30\x30\x37\x34\x61\x66\x69\x69\x31\x30"
+"\x30\x37\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30\x37\x37\x61\x66\x69\x69\x31\x30\x30\x37\x38\x61\x66"
+"\x69\x69\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69\x69\x31\x30\x30\x38\x31\x61\x66\x69\x69\x31\x30\x30"
+"\x38\x32\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38\x34\x61\x66\x69\x69\x31\x30\x30\x38\x35\x61\x66\x69"
+"\x69\x31\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69\x31\x30\x30\x38\x38\x61\x66\x69\x69\x31\x30\x30\x38"
+"\x39\x61\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31\x61\x66\x69\x69\x31\x30\x30\x39\x32\x61\x66\x69\x69"
+"\x31\x30\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31\x30\x30\x39\x35\x61\x66\x69\x69\x31\x30\x30\x39\x36"
+"\x61\x66\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61\x66\x69\x69\x31\x30\x30\x39\x39\x61\x66\x69\x69\x31"
+"\x30\x31\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30\x31\x30\x32\x61\x66\x69\x69\x31\x30\x31\x30\x33\x61"
+"\x66\x69\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66\x69\x69\x31\x30\x31\x30\x36\x61\x66\x69\x69\x31\x30"
+"\x31\x30\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31\x30\x39\x61\x66\x69\x69\x31\x30\x31\x31\x30\x61\x66"
+"\x69\x69\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69\x69\x31\x30\x38\x34\x36\x61\x66\x69\x69\x36\x31\x32"
+"\x34\x38\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35\x32\x61\x6c\x70\x68\x61\x61\x6c\x70\x68\x61\x74\x6f"
+"\x6e\x6f\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x61\x6e\x67\x6c\x65\x72\x69\x67\x68\x74\x61\x6f\x67"
+"\x6f\x6e\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x61\x72\x72\x6f\x77\x62\x6f"
+"\x74\x68\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x72\x69\x67\x68\x74\x61\x72"
+"\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x62\x73\x65\x62\x65\x74\x61\x63\x61"
+"\x63\x75\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x63\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x63"
+"\x68\x69\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75\x62\x64\x63\x61\x72\x6f\x6e\x64\x63\x72\x6f\x61\x74"
+"\x64\x65\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x65\x62\x72\x65\x76\x65\x65"
+"\x63\x61\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d\x65\x6e\x74\x65\x6d\x61\x63\x72\x6f\x6e\x65\x6e\x67"
+"\x65\x6f\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x65\x71\x75\x69\x76\x61"
+"\x6c\x65\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74\x61\x74\x6f\x6e\x6f\x73\x65\x78\x63\x6c\x61\x6d\x64"
+"\x62\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65\x66\x72\x61\x6e\x63\x67\x61\x6d\x6d\x61\x67\x62\x72"
+"\x65\x76\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x67\x64\x6f\x74\x61\x63"
+"\x63\x65\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61\x72\x68\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x68"
+"\x65\x61\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d\x61\x63\x72\x6f\x6e\x69\x6e\x66\x69\x6e\x69\x74\x79"
+"\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69\x6e\x74\x65\x67\x72\x61\x6c\x74\x70\x69\x6e\x74\x65"
+"\x72\x73\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x69\x6f\x67\x6f\x6e\x65\x6b\x69\x6f\x74\x61\x69"
+"\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x69\x6f\x74\x61"
+"\x74\x6f\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x6b\x61\x70\x70\x61\x6b\x63\x6f\x6d\x6d"
+"\x61\x61\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63\x6c\x61\x63\x75\x74\x65\x6c\x61\x6d\x62\x64\x61\x6c"
+"\x63\x61\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64\x6f\x74\x6c\x65\x73\x73\x65\x71\x75\x61\x6c\x6c\x69"
+"\x72\x61\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x6d\x75\x73\x69"
+"\x63\x61\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70\x6f\x73\x74\x72\x6f\x70\x68\x65\x6e\x63\x61\x72\x6f"
+"\x6e\x6e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x6e\x6f\x74\x65\x71\x75\x61\x6c\x6e"
+"\x75\x6f\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x6f\x6d\x61\x63\x72\x6f\x6e\x6f\x6d\x65\x67\x61"
+"\x6f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x6f\x72\x74"
+"\x68\x6f\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70\x61\x72\x74\x69\x61\x6c\x64\x69\x66\x66\x70\x65\x73"
+"\x65\x74\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62\x73\x65\x74\x70\x72\x6f\x70\x65"
+"\x72\x73\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65\x76\x65\x72\x73\x65\x64\x72\x61\x63\x75\x74\x65\x72"
+"\x61\x64\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x72\x65\x76\x6c\x6f\x67\x69\x63"
+"\x61\x6c\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69\x6c\x6c\x61\x73\x63\x69\x72\x63\x75\x6d\x66\x6c\x65"
+"\x78\x73\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64\x73\x69\x67\x6d\x61\x73\x6d\x69\x6c\x65\x66\x61\x63"
+"\x65\x73\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74\x61\x75\x74\x62\x61\x72\x74\x63\x61\x72\x6f\x6e\x74"
+"\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e\x6f\x73\x75\x62\x72\x65\x76\x65\x75\x68\x75\x6e\x67"
+"\x61\x72\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65\x72\x73\x63\x6f\x72\x65\x64\x62\x6c\x75\x6e\x69\x30"
+"\x30\x41\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e\x69\x30\x32\x31\x42\x75\x6e\x69\x30\x32\x43\x39\x75"
+"\x6e\x69\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41\x39\x75\x6e\x69\x30\x33\x42\x43\x75\x6e\x69\x30\x33"
+"\x43\x32\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69\x30\x34\x35\x30\x75\x6e\x69\x30\x34\x35\x44\x75\x6e"
+"\x69\x30\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36\x75\x6e\x69\x30\x34\x39\x37\x75\x6e\x69\x30\x34\x39"
+"\x38\x75\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30\x34\x39\x42\x75\x6e\x69\x30\x34\x39\x43\x75\x6e\x69"
+"\x30\x34\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75\x6e\x69\x30\x34\x41\x32\x75\x6e\x69\x30\x34\x41\x33"
+"\x75\x6e\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34\x41\x45\x75\x6e\x69\x30\x34\x41\x46\x75\x6e\x69\x30"
+"\x34\x42\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e\x69\x30\x34\x42\x33\x75\x6e\x69\x30\x34\x42\x36\x75"
+"\x6e\x69\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42\x39\x75\x6e\x69\x30\x34\x42\x41\x75\x6e\x69\x30\x34"
+"\x42\x42\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69\x30\x34\x43\x43\x75\x6e\x69\x30\x34\x44\x38\x75\x6e"
+"\x69\x30\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38\x75\x6e\x69\x30\x34\x45\x39\x75\x6e\x69\x30\x34\x45"
+"\x45\x75\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32\x30\x41\x46\x75\x6e\x69\x32\x31\x32\x36\x75\x6e\x69"
+"\x32\x32\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75\x6e\x69\x32\x32\x32\x38\x75\x6e\x69\x32\x32\x39\x35"
+"\x75\x6e\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x75\x6f\x67\x6f\x6e\x65\x6b\x75\x70\x73\x69"
+"\x6c\x6f\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69"
+"\x73\x74\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75\x72\x69\x6e\x67\x75\x74\x69\x6c\x64\x65\x77\x61\x63"
+"\x75\x74\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72\x65\x73\x69\x73\x77\x67\x72\x61\x76\x65\x78\x69\x79"
+"\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63\x75\x74\x65\x7a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74"
+"\x7a\x65\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62"
+"\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x43\x6f"
+"\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62"
+"\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x4e\x69"
+"\x6d\x62\x75\x73\x20\x52\x6f\x6d\x61\x6e\x20\x52\x65\x67\x75\x6c\x61\x72\x4e\x69\x6d\x62\x75\x73\x20\x52\x6f\x6d\x61\x6e\x00\xd1"
+"\x02\x00\x01\x00\x18\x00\x1c\x00\x1f\x00\x26\x00\x42\x00\x98\x00\xa1\x00\xa6\x00\xcc\x00\xd1\x00\xe6\x00\xef\x01\x01\x01\x12\x01"
+"\x1c\x01\x23\x01\x28\x01\xb1\x02\x30\x02\xa7\x02\xfa\x03\x15\x03\x33\x03\x41\x03\x57\x03\x64\x03\x67\x03\x70\x03\x78\x03\x82\x03"
+"\x8f\x03\xf6\x04\x47\x04\x53\x04\x7a\x04\x7e\x04\x90\x04\xa1\x04\xad\x04\xb3\x04\xbd\x04\xca\x04\xd1\x04\xda\x04\xe1\x04\xe9\x04"
+"\xf0\x04\xf7\x04\xfe\x05\x06\x05\x4a\x05\x8a\x05\xa5\x05\xb2\x05\xc9\x05\xdf\x05\xe5\x05\xfa\x06\x0f\x06\x22\x06\x34\x06\x42\x06"
+"\x52\x06\x66\x06\x75\x06\x8d\x06\xa2\x06\xae\x06\xb9\x06\xc4\x06\xcf\x06\xd8\x06\xe1\x06\xef\x06\xfd\x07\x05\x07\x0d\x07\x15\x07"
+"\xb5\x07\xbe\x07\xed\x08\x64\x08\x9d\x08\xf0\x09\x5e\x09\xc9\x0a\x0c\x0a\x68\x0a\x99\x0a\xa3\x0a\xe1\x0b\x02\x0b\x5c\x0b\xb3\x0b"
+"\xeb\x0c\x08\x0c\x44\x0c\x7a\x0c\xc2\x0d\x05\x0d\x49\x0d\x4e\x0d\x88\x0d\xc0\x0d\xcd\x0e\x09\x0e\x32\x0e\x6b\x0e\x83\x0e\xba\x0e"
+"\xc0\x0e\xef\x0f\x22\x0f\x4f\x0f\x7f\x0f\x9f\x0f\xcd\x0f\xe4\x0f\xf1\x10\x0d\x10\x15\x10\x25\x10\x4c\x10\x56\x10\x7c\x10\xa2\x10"
+"\xae\x10\xd3\x10\xf0\x11\x13\x11\x2a\x11\x4c\x11\x6e\x11\x8f\x11\xa1\x11\xa9\x11\xba\x11\xda\x11\xee\x11\xfa\x12\x19\x12\x37\x12"
+"\x55\x12\x73\x12\x82\x12\x87\x12\x8d\x12\x9a\x12\xb6\x12\xba\x12\xd5\x12\xd9\x12\xed\x12\xfd\x13\x17\x13\x2b\x13\x3e\x13\x4c\x13"
+"\x64\x13\x7c\x13\x8c\x13\xa3\x13\xa7\x13\xb1\x13\xb5\x13\xc9\x13\xd3\x13\xe6\x13\xee\x14\x01\x14\x13\x14\x25\x14\x37\x14\x49\x14"
+"\x5a\x14\x69\x14\x73\x14\x79\x14\x89\x14\x99\x14\xa8\x14\xb7\x14\xc0\x14\xc6\x14\xd4\x14\xe2\x14\xf0\x14\xfe\x15\x0c\x15\x18\x15"
+"\x25\x15\x32\x15\x3f\x15\x46\x15\x52\x15\x5e\x15\x6a\x15\x76\x15\x80\x15\x8a\x15\x94\x15\x9e\x15\xa9\x15\xb4\x15\xbf\x15\xca\x15"
+"\xd5\x15\xe0\x15\xe9\x15\xfb\x11\xf7\x3b\x05\x4d\x06\xfb\x10\xfb\x3b\x05\xad\x06\xf7\x0d\xf2\xf7\x0e\x24\x05\x0e\xf9\x2a\x15\x0b"
+"\xb7\x1d\x0e\x15\x55\xf7\xcb\xc1\x07\x0e\x82\x1d\xf7\x3e\xf7\x01\xd6\xae\xcf\xb2\x1e\xa3\xb5\x94\xb9\xd8\x1a\xf7\x99\x07\x8d\xf4"
+"\x96\x99\xdc\x94\x08\x0b\xf8\x73\xbd\x15\x86\x06\x5a\x8d\x84\x93\x8a\xba\x08\xf7\xeb\xfb\x32\x7a\x07\xc9\x88\x97\x81\x59\x1a\xfb"
+"\x7f\x07\x6f\x86\x7d\x7d\x80\x1e\x75\x70\x6c\x7f\x6d\x1b\x64\x6b\xad\xb5\x1f\xf7\xda\xfb\x26\x7d\x07\xba\x89\x99\x7d\x8c\x5b\x08"
+"\xfb\x90\x07\x3c\xbb\x58\xd4\xb0\xb2\x9b\xa6\xa6\x1e\xb6\xb6\x05\x38\x07\x8f\x89\xbd\x9f\xaf\x96\xbe\x99\x19\x0b\x79\x1d\xa0\x97"
+"\xb1\xae\x7b\x1d\x0b\xf8\x2c\x7f\x1d\x0b\x9d\x16\xf7\xbd\x9e\x06\x39\x8d\x7d\x99\x89\xd5\x08\xf8\x50\x07\x8d\xd6\x98\x97\xde\x8e"
+"\x08\x9e\xfb\xbd\x78\x07\xe0\x66\x1d\x3f\x7f\x80\x37\x88\x08\x0b\x15\x7a\x9c\x07\x0b\x99\x94\x97\x9b\x1a\x9f\x7e\x97\x75\x7c\x82"
+"\x86\x79\x79\x1e\xfb\x27\xfb\x28\x05\x0b\x15\x71\x75\x74\x70\x6f\x49\x1d\x0b\x6d\x72\x72\x6b\x6e\xa4\x72\xa8\xaa\xa5\xa3\xa9\xaa"
+"\x71\xa5\x6d\x1f\x0b\xd5\x9b\x7c\x45\x8c\x1f\xfc\x5c\x07\x45\x8a\x7b\x7c\x41\x1b\x79\x0b\xa2\x8a\x05\xc0\x89\x9a\x78\x4c\x1a\x0b"
+"\xd6\x9a\x7c\x45\x8c\x1f\x0b\xf7\x2e\xec\x05\x0b\xf8\xcf\xf8\x56\x15\x7c\x07\xad\x84\x95\x84\x7a\x1a\x7c\x85\x73\x80\x70\x1e\x31"
+"\xfb\x72\x37\xf7\x74\x05\x7a\xb9\x8b\x8b\x98\x1a\xa1\x96\x92\xba\x92\x1e\x9a\xfb\x5f\x7c\x07\xb0\x87\x97\x7f\x9f\x56\x90\x7d\x94"
+"\x72\x91\x7a\x30\xfb\x5b\x18\x28\xf7\x99\x05\x87\x95\x89\x95\x95\x1a\xa0\x96\x93\xae\x8f\x1e\x9a\xfb\x48\x7c\x07\xa2\x89\x93\x81"
+"\xa1\x58\xf7\x1b\xfb\xea\x18\x6c\x97\x93\x7e\x91\x1b\x90\x93\x97\xa6\x97\x1f\xf7\x04\xf7\x84\xe6\xfb\x80\x05\x65\x9a\x8d\x86\x92"
+"\x1b\x92\x90\x94\xb3\x9b\x1f\xf7\x1e\xf7\xee\x9d\xb5\x8e\x90\x9f\x92\x19\x9a\x07\x0b\xfa\x38\x21\x1d\xfb\x5a\x78\x06\xbe\x86\x9d"
+"\x80\x70\x1a\x77\x85\x70\x81\x6f\x1e\xfb\x11\xfb\xe7\xfb\x18\xf7\xe9\x84\x9d\x88\x93\x89\x8f\x19\x82\xa0\x85\x9e\x96\x1a\xa3\xa2"
+"\x95\xc1\x8c\x1e\x9e\xfb\x9f\x78\x07\xc4\x8a\x95\x82\xad\x3b\xac\x39\x18\x20\xfb\xae\xfb\x24\xf8\x0c\x05\x84\x9d\x87\x9c\x96\x1a"
+"\xa1\x99\x91\xbe\x8f\x1e\x9e\xfb\x89\x78\x07\xbe\x86\x9a\x79\xb0\x2d\xf7\x55\xfc\xad\x18\x9a\x06\xf7\x2e\xf8\x3b\xf7\x34\xfc\x3b"
+"\x05\x9a\x06\xe1\xf7\x9a\x92\xa0\xf7\x03\xf7\xc0\x9e\xbf\x96\x94\xc0\x95\x08\x0b\xf8\x6f\xf8\x56\x15\xfb\x1b\x7c\x06\xab\x9b\x82"
+"\x7b\x87\x8a\x85\x88\x84\x1f\x2a\xfb\xa8\xfb\x07\xf7\x91\x05\x85\x99\x87\x99\x95\x1a\x9d\x9a\x92\xb6\x8d\x1e\x9a\xfb\x62\x7d\x07"
+"\xa5\x87\x9c\x80\x93\x7a\xf7\x06\xfb\x8a\x18\x97\x70\x8c\x8a\x90\x81\x08\xa7\x59\x9b\x66\x7c\x1a\x7b\x74\x4e\x7a\x6c\x1e\x72\x7c"
+"\x76\x78\x7d\x1b\x85\x82\x8d\x90\x80\x1f\x92\x79\x79\x8f\x7b\x1b\x73\x78\x78\x72\x6a\xaa\x72\xb6\xcf\xb9\xc2\xf7\x25\xc2\x1f\xf7"
+"\x2e\xf8\x2c\x98\xab\x96\x95\xa3\x8e\x19\x0b\xf9\x53\x21\x1d\xfb\x6f\x78\x06\xbf\x8a\x9c\x83\x73\x1a\x81\x87\x7f\x81\x7c\x1e\xfb"
+"\x23\xfb\x76\xfb\x28\xf7\x72\x05\x80\x9b\x85\x9c\x96\x1a\x9e\x99\x93\xab\x8d\x1e\x8f\x95\x8b\x8c\x96\x1f\x9e\xfb\xac\x78\x07\xbb"
+"\x89\x99\x7d\xef\xfb\x21\xf7\x17\xfb\x54\x18\xfb\x42\x62\x1d\xf7\x56\x07\xf7\x28\xf7\x76\xc8\xe3\xa5\xa1\xbe\x8f\x19\x0b\xf8\x22"
+"\xf7\x30\x15\x90\x1d\xfb\x15\xda\x2e\xf7\x03\xb8\xb3\x9b\xaa\xaf\x1e\xa6\xa2\x9e\xa7\xa9\xc6\x08\x0b\xf7\xba\x21\x1d\xfb\xae\x78"
+"\x06\xd4\x86\x97\x7e\x8d\x43\x08\xfc\x50\xa0\x1d\xf8\x6d\x07\x8d\xd4\x98\x98\xd9\x8f\x08\x0b\x15\x3f\x6e\x73\x76\x51\x1b\x4a\xd3"
+"\x1d\xa4\xb2\xe9\x1d\xa7\x1d\x78\x83\x90\x7b\x1b\x77\x7e\x7f\x78\x7b\x95\x7c\x9e\x7f\x1f\xf7\x2e\x2a\x05\x0e\x5a\x1d\xb2\x78\xbb"
+"\x1b\xdf\xb9\xbe\xf5\x97\x1f\x0e\x15\x5f\x1d\x8c\x05\x56\x8d\x7c\x9e\xca\x1a\x0b\x07\xca\x9a\x9e\xc0\x8d\x1e\x0b\x9b\x9a\xd5\x1e"
+"\x9d\xfb\xb2\x79\x07\x0b\x86\x82\x58\x88\x08\x7a\x7a\xf7\x76\x9c\x7b\x06\x0b\xac\xf8\x20\x15\x93\x98\x91\x8d\x96\x1b\xaa\x93\x7a"
+"\x4b\x1f\xfb\x4d\x07\x2e\xbb\x55\xdd\xc1\xbe\xa5\xbc\xb5\x1e\xb5\xbc\x9e\xc9\xde\x1a\xf7\x07\x65\xe1\x59\x72\x77\x77\x72\x78\x95"
+"\x7b\xa1\x77\x1e\xa6\x73\x91\x83\x93\x7c\x08\x97\x73\x91\x6c\x6a\x1a\x2a\x51\x44\x3b\x6f\x73\x96\x9e\x7f\x1e\x80\x9d\x87\xa3\xbb"
+"\x1a\xf7\x65\x07\xa9\x88\x97\x81\x99\x1e\x9a\x80\x82\x92\x84\x1b\x88\x87\x8a\x89\x87\x1f\x24\x55\x05\x0b\x90\x16\xf7\x84\x9a\x06"
+"\x48\x8d\x7b\x99\x89\xc6\x08\xf7\x75\x07\xab\xb5\xbd\xa7\x91\x94\x86\x81\x96\x1e\x7c\x9a\x97\x86\x98\x1b\xa3\x9a\x9c\xa7\xac\x76"
+"\x9f\x69\x61\x6f\x75\x43\x59\x1f\xe7\x07\x86\x8d\x53\x75\x67\x7d\x53\x79\x19\x7b\x07\x8e\x99\x94\x8c\x97\x1b\xa4\x94\x7b\x5f\x1f"
+"\xfb\x8e\x07\x89\x57\x85\x85\x4c\x80\x08\x0b\xae\x1d\xa6\xa2\xa1\xa7\xa6\x74\xa2\x70\x1f\x0e\x15\x55\x5e\x5e\x55\x53\xb6\x5f\xc3"
+"\xc2\xb8\xb7\xc2\xc2\x5e\xb8\x54\x1f\x8c\x69\x15\xae\xa9\x6d\x67\x67\x6e\x6e\x65\x68\x6e\xa8\xb0\xaf\xa9\xa8\xaf\x1f\x0e\x15\xa6"
+"\x1d\x0b\x1f\x7d\x6c\x05\x7f\xa8\xa2\x87\xab\x1b\xd8\xbb\xab\xbf\xb7\x6b\xa4\x0b\x9d\x07\x41\x7b\x9a\xd1\x1f\xf8\x5c\x07\xd1\x9b"
+"\x9a\xd5\x1e\x9d\x0b\x92\x62\x28\x64\x6f\x22\x89\x19\xfb\x0b\x06\x0b\x07\x51\x1d\x7a\x7a\x0b\x82\x8c\x42\x08\xfc\x45\x07\x8a\x36"
+"\x0b\xa0\x75\xa6\xa6\xa2\xa1\xa7\xa6\x74\xa2\x70\x1f\x0b\x30\x1d\xa0\x98\x94\x98\x0b\x5e\x68\x73\x74\x69\x6b\xa1\x78\x0b\x07\xd1"
+"\x9b\x9a\x6a\x1d\x0b\x6e\x74\x74\x6f\x6e\xa2\x74\x0b\x44\x57\x62\x53\x64\x98\x0b\x89\x1e\x74\x8a\x05\x79\x0b\x15\xf7\x2d\xec\x05"
+"\xa1\x0b\x8a\x2f\x86\x82\x58\x88\x08\x0b\x15\xaa\x70\xd3\x4d\xb0\x69\xc8\x4f\x19\x86\x8f\x8d\x8a\x90\x1b\x91\x8e\x8e\x91\x98\x62"
+"\xc5\x3e\xed\x1f\x88\x8f\x8a\x8b\x85\x94\xa4\xac\x9c\xa0\xac\xb2\x08\xa8\xaf\xa4\xb3\x98\x1a\x90\x86\x90\x86\x85\x77\x79\x76\x7a"
+"\x1e\x8a\x88\x6c\x6d\x6e\x71\x84\x85\x83\x84\x82\x83\x0b\xf8\x58\x9e\x15\x39\x8f\x7e\x97\x8a\xd5\x08\xf8\x93\xc1\x07\xf7\x08\x89"
+"\xa0\x7a\xa1\xfb\x01\x08\xa3\x06\x85\xf7\x3e\x05\xfc\xc8\x06\x85\xfb\x3e\x05\xa3\x06\xa2\xf7\x01\xa0\x9c\xf7\x07\x8d\x08\xc1\xfc"
+"\x88\x06\x8a\x35\x82\x81\x37\x86\x08\x78\xf7\xb8\x07\x0b\x06\xf7\x08\x89\x9f\x7d\x9b\x32\x08\xa4\x06\x88\xf7\x23\x05\xfc\xa7\x78"
+"\x06\xd4\x86\x97\x7e\x8d\x43\x08\x0b\x2d\x1d\xf7\xc6\x9d\x07\x31\x78\x99\xd1\x8a\x1f\x0b\xaf\x1f\xfb\x00\xcb\x05\x6f\x9c\x7c\xa3"
+"\xa6\x1a\xb4\xaa\xa6\xb9\xc4\xa9\x6a\x31\xa2\x1e\x0b\x15\x90\xa6\x9e\x8d\x9f\x1b\xea\xcb\x4b\x2c\x32\x4c\x4e\x31\x76\x7b\x8e\x94"
+"\x68\x1f\x0b\xc8\x1d\x75\x7b\x9b\x0b\x07\x89\x21\x7e\x7a\x39\x86\x08\x78\xf7\x7f\x9e\x07\x3e\x8f\x7c\xa0\x89\xf2\x08\x0b\x76\x51"
+"\x1b\x4b\x69\xa9\xce\x7d\x1f\x6e\x06\x8c\x58\x92\x73\x9e\x6f\x08\x68\xa4\x0b\x15\x70\x74\x74\x6f\x6e\xa1\x75\xa7\xa9\xa1\xa1\xa8"
+"\xa8\x74\xa1\x6e\x1f\x0e\x07\x44\x8a\x7b\x7c\x41\x1b\x79\xf7\xb2\x9d\x07\x41\x7b\x9a\xd2\x1f\x0b\xbd\x1d\x2f\x08\xfb\x64\x07\x51"
+"\x1d\x7a\x7a\xf7\x76\x0b\x1a\x4f\xbe\x62\xd7\xd7\xbd\xb4\xca\xb8\x76\xa7\x46\xbc\x1e\x0b\x4a\x1d\x9b\x1a\x9f\x7e\x97\x76\x7b\x82"
+"\x86\x79\x79\x1e\xfb\x27\xfb\x28\x05\x0e\x93\x9a\xbc\x8c\x1e\x9b\x9c\xfb\x76\x7a\x9c\x06\xbe\x88\x0b\xf7\x28\x05\x9d\x78\x83\x90"
+"\x7c\x1b\x76\x7e\x7f\x78\x7b\x95\x7b\x9e\x80\x1f\xf7\x2e\x2a\x05\x0e\x07\x8a\x33\x82\x82\x30\x87\x08\x78\xf7\xc6\x9e\x07\x32\x8d"
+"\x7e\x96\x8a\xd8\x08\x0b\x71\x75\x7b\x82\x75\x1b\x66\x7c\xa6\xca\x1f\x0b\x78\x1f\x73\x97\x05\x97\x74\x72\xe4\x1d\x0b\x06\x38\x68"
+"\x84\x72\x66\x1f\x4a\x60\x69\x0b\x86\x96\x81\x8c\x40\x08\xfc\x50\x07\x8a\x0b\x07\x45\x8a\x7c\x7c\x40\x1b\x79\x0b\x07\x8a\x55\x7d"
+"\x7d\x4d\x87\x08\x0b\x52\x84\x08\x7c\xf7\x6c\x9a\x07\x51\x90\x83\x96\x89\x0b\xd5\x1e\x9d\xfb\xb2\x79\x07\xd5\x9b\x7c\x45\x8c\x1f"
+"\x0b\x07\xe4\x93\x99\xbc\x8c\x1e\x0b\x9c\x8c\x18\x81\xf7\x2a\x05\x0b\xde\xfb\x0d\xfb\x45\xfb\x49\x0b\xf9\xc4\xf8\x9d\x15\xf7\x21"
+"\xfc\xc8\x77\x07\xcc\x89\xa4\x82\x75\x1a\x85\x88\x80\x85\x80\x1e\xfb\x89\xfc\x78\x6a\x4e\x7f\x80\x60\x85\x19\x78\xf7\x5b\x9e\x8a"
+"\x07\x61\x8f\x71\x96\x9a\x1a\xa1\xa2\xc5\xb4\xd9\x1e\xa7\xc0\x05\xf7\x44\xfb\x2c\x06\x89\x46\x84\x82\x4c\x82\x7a\x89\x18\x78\xf8"
+"\x92\x07\xb7\xf7\x3c\x05\x73\x06\x51\xfb\x02\x70\x79\xfb\x04\x89\x08\x3f\x06\x6c\x71\x8f\x90\x87\x1f\x86\x8e\x88\x9c\xa3\x1a\xf7"
+"\x82\xf7\x25\x07\xd2\x89\x9e\x77\x93\x3d\x08\xa0\xf7\x7e\x76\x06\x84\x3b\x77\x7c\x22\x89\x08\xfb\x03\xf7\x7a\x06\xa2\x8c\x91\x92"
+"\x9f\x1b\xe2\x06\xf7\x25\xa4\x7d\x30\x97\x1f\xfc\xbe\xfb\x72\x15\xf7\x33\xf7\xd3\x05\xfb\xd3\x07\x0b\x79\x1d\x9f\x97\xb1\xaf\x7b"
+"\x1d\x0b\xf7\x61\xf7\xd5\x15\xf7\x49\xfb\x4f\x05\xbe\x57\x9d\x73\x7b\x1a\x7b\x7c\x85\x60\x89\x1e\x79\xf7\xd2\x9d\x07\x4e\x8c\x60"
+"\xa5\x36\xe2\xfb\x78\xf7\x80\x18\x91\x92\x91\x92\x93\x93\x7e\x1d\x0b\x15\xb2\x3e\x07\x76\x7d\x8e\x92\x77\x1f\x75\x93\x05\x95\x71"
+"\x6f\x90\x71\x1b\x2e\x41\x44\x2f\x4c\xa5\x65\xce\x6a\x1f\x71\x73\x76\x77\x7f\x80\x88\x87\x19\x76\x75\x85\x80\x7a\x1a\x75\x96\x80"
+"\xb5\x77\x1e\x43\x57\x71\x6a\x66\x1a\x56\xd8\x5f\xeb\xd6\xd9\xa5\xb5\xbf\x1e\xb1\xaa\x9c\xab\xb1\x1a\xc9\x5c\xb4\x41\x8f\x1e\xfb"
+"\x15\x91\x05\x55\x8d\x73\x94\x9b\x1a\x9f\xac\xae\xa6\x93\x1e\x88\xaf\x9e\x89\x8d\x1b\xb0\xb3\x9a\xa6\xaa\x1f\xac\xa7\x9a\xae\xbd"
+"\x1a\xa8\x86\xa2\x7d\xab\x1e\x0b\xb9\x1d\xf7\x62\x9c\x84\x06\x77\x73\x98\xa4\x71\x1f\xfb\x5e\xf7\x57\xf7\x39\xf7\x22\xaa\xa6\xa6"
+"\x97\xb4\x8d\x19\x9c\xfb\x53\x7a\x97\x07\xa0\x95\x84\x7a\x84\x87\x84\x7f\x81\x1f\xfb\x3f\xfb\x2d\x05\xed\x07\xe2\x93\x9a\x97\x1d"
+"\x0b\x9b\xf9\x17\x15\xda\x84\x93\x83\x8c\x40\x08\xfb\x56\x38\x5f\xde\xfb\x62\x07\x8a\x42\x7f\x7f\x40\x86\x08\x78\xf7\xb0\x07\xf7"
+"\x08\xf4\xac\xc3\xc9\x1f\xcc\xc6\xb0\xe4\xec\x1a\xe5\x6e\xd9\x53\xc2\x1e\xd0\x47\xfb\x01\xaf\xfb\x1d\x1b\xfb\xa2\x06\xf7\xe4\xfb"
+"\xc3\x15\xfb\x26\xf7\x77\x06\xaa\x95\x93\xb2\xe5\xac\x1d\xf7\x81\xf7\x26\x07\x0e\xf7\x80\x9b\x15\x4b\x72\x76\x70\x72\x1b\x85\x88"
+"\x8c\x92\x7d\x1f\x91\x7c\x7e\x8f\x80\x1b\x6f\x74\x75\x72\x6d\xa7\x75\xb0\xae\xa9\x98\xa6\xa5\x1f\xa3\xa2\x9f\xb1\xa9\xd9\xf7\x0e"
+"\xf7\xd4\x18\xa6\xd3\x92\x95\xaa\x92\x95\x8c\x18\x9c\xfb\x23\x7a\x90\x07\xa4\x8c\x98\x81\x78\x1a\x7e\x86\x79\x7d\x65\x1e\x3a\xfb"
+"\x6d\x37\xf7\x71\x05\x79\xba\x8a\x8f\x96\x1a\xa0\x97\x96\xa6\x8a\x1e\x93\x9c\xfb\x58\x7a\x06\x9a\x8a\xad\x86\x8b\x8b\xc1\xfb\x1d"
+"\x19\x0b\x8e\x21\x1d\x79\x07\xcb\x8a\xa8\x75\xb9\x3c\xf7\x5b\xfc\x12\x18\x37\x62\x7e\x7a\x72\x1b\x7f\x82\x8f\x99\x78\x1f\x99\x77"
+"\x80\x8f\x7a\x1b\x6b\x75\x79\x70\x67\xab\x74\xbe\xb6\xb3\x9b\xa8\xa8\x1f\xa1\xa1\x94\x98\xab\xcf\xf7\x4a\xf8\x15\x18\xb6\xe1\xb1"
+"\xab\xca\x8d\x08\x9d\xfb\x73\x79\x07\xbc\x98\x84\x74\x84\x8b\x8b\x82\x72\x1f\x83\x75\xfb\x16\xfb\xaf\xfb\x1e\xf7\xa2\x05\x7d\xa5"
+"\x82\xa6\x98\x1a\xa0\x9d\x95\xb1\x1e\x98\x9d\x06\x0b\xf7\xbc\xf8\x56\x29\x1d\xb0\x8c\x9b\x7b\x8d\x68\xfb\x5d\xfb\xa0\x18\xf7\x6a"
+"\x07\xe3\x93\x9a\xbc\x8c\x5d\x1d\x9c\x7b\x06\x66\x7c\x98\xb0\x88\x1f\xf7\x5d\xf7\x9d\x05\xfb\x67\x07\x8a\x2f\x3e\x1d\x5a\x8c\x83"
+"\x9a\xe3\x1a\xf7\x64\x07\xe3\x93\x9a\xbc\x8c\x1e\x9b\x9c\x06\x0b\xf8\x7b\x9a\x15\x55\x94\x86\x92\x8a\xd2\x08\xf7\x5b\x07\xf4\x62"
+"\xc1\x39\x50\x61\x73\x4f\x5d\x1e\xf7\xc4\x07\x86\x8e\x68\x7f\x72\x83\x54\x7b\x19\x70\x83\x05\x7b\x07\x8c\x8f\x8d\x8b\x91\x1b\xb6"
+"\x93\x83\x60\x1f\xfc\x6b\x07\x89\x43\x86\x83\x69\x1d\xd2\x08\xf7\x85\x07\xb9\xb5\xa9\x9c\xb3\x1b\xbc\xa4\x67\x45\x1f\xfb\x5a\x07"
+"\x89\x44\x82\x80\x52\x86\x08\x7c\xf7\x68\x07\x0b\xf7\xcf\xf7\xae\x15\xfb\x47\x07\x4c\x7c\x78\x55\xb6\x1d\xbd\xe1\xad\xa9\xc0\x8e"
+"\x19\x96\x8c\x05\x9d\xfb\x73\x79\xa0\x07\xa6\x8a\x99\x81\x79\x1a\x7d\x86\x7e\xa9\x1d\xbd\x84\xa2\x77\xb5\x42\x19\x0b\x7c\x1d\x56"
+"\x90\x9d\x77\xb4\x1b\xad\x0b\x6f\x06\x5b\x21\x5e\x72\xfb\x23\x8a\x08\x70\x06\x23\x8e\x8a\x8c\xb2\x1a\xf7\x8b\xf7\x2e\x07\xdf\x89"
+"\x98\x7f\x98\x39\x08\xa2\xf7\x7c\x74\x06\x7f\x3a\x7d\x7f\x37\x89\x08\xfb\x2e\xf7\x72\x06\xa9\x8c\x8f\x8f\xa7\x1b\xf7\x1b\x54\x1d"
+"\xfc\x50\xd0\x1d\x0b\x1f\xfb\x2f\xde\x15\x6d\x86\x80\x76\x7f\x1e\x7d\x72\x70\x83\x76\x1b\x68\x6f\xad\xb6\x1f\x8f\x07\x8c\xc7\xb7"
+"\xb1\xf7\x09\xb4\x08\x0b\xf8\x4e\xcd\x15\x7d\x7a\x7f\x86\x7c\x1b\x74\x84\x99\xb7\x1f\xf7\x57\x07\xbf\x86\xa8\x7c\xa3\x1e\xaf\x75"
+"\x60\x9e\x50\x1b\x2d\x41\x5a\x4c\x74\x9e\x77\xa3\xa3\xa0\x9f\xa1\x8f\x8a\x90\x8a\x92\x1f\x89\x94\x8a\x93\x92\x1a\xa6\xab\xa1\xb3"
+"\xbc\xa6\x6e\x55\x1e\x4e\x07\xfb\x2d\x4e\x79\x82\x60\x65\x08\x75\x77\x7d\x69\x6a\x1a\x4c\xb7\x5f\xc8\xb7\xb4\xa0\xbf\xc8\x1e\x0b"
+"\xf7\xcf\xf7\xce\x15\x87\xf7\x1d\x05\x80\x06\x83\x86\x86\x88\x85\x1b\x85\x81\x8d\x90\x80\x1f\x93\x74\x74\x90\x73\x1b\x3c\x52\x57"
+"\x43\x53\xab\x63\xe0\x5b\x1f\xc5\x6a\x05\xae\x77\x9c\x73\x6c\x1a\x5f\x6b\x6f\x58\x46\x68\xb1\xf1\x74\x1e\x7b\xfb\x30\x98\x06\x95"
+"\x92\x8f\x8d\x97\x1b\x96\x97\x89\x85\xa2\x1f\x85\xa6\xa5\x87\x9f\x1b\xd9\xca\xc5\xd1\xbd\x0b\x9a\x9a\x9a\x9b\x9a\x9b\x95\x94\xc7"
+"\xcd\xa9\xab\xd1\xdb\xa3\x9a\xce\x8f\x08\x9e\xfb\x87\x78\x07\xba\xcb\x1d\xcc\x9b\x9d\xc4\x8c\x1e\x8d\x94\x8b\x8c\x93\x1f\x9d\xfb"
+"\xb4\x79\x07\x2d\x1d\xf7\xb4\x9d\x07\x3f\x7b\x99\xd2\x1f\x0b\x8d\x1d\xf7\x07\xea\xd6\xc6\xf7\x00\xb5\x1e\xfb\xd9\xf7\x2c\x15\xd9"
+"\x96\xad\xb0\xc8\x1b\xc8\xa3\x6f\x34\x98\x1f\x0b\xf8\x07\xf9\x31\x15\x7f\x06\xfb\x80\xfc\xb5\x63\x2d\x80\x81\x49\x89\x19\x79\xf7"
+"\x71\x9e\x7f\x07\x67\x74\x99\xa2\x92\x92\xa3\x95\xa4\x1f\xb5\xf4\x05\xf7\x86\x06\xb1\x2a\x05\x98\x6a\x8f\x7b\x7c\x1a\x73\xc1\x1d"
+"\xef\xf7\x82\xf6\xfb\x82\x05\x0b\xf7\xfb\xf9\x31\xc7\x1d\xd3\xa9\xc9\xc7\x1f\xc8\xcb\xac\xe1\xec\x1a\xf7\x55\xfb\x1c\xf7\x24\xfb"
+"\x4b\x1e\x8a\x64\x15\xf7\x0c\x6d\x1d\x3b\xfb\x0b\xfb\x0f\xfb\x09\x3b\xf7\x0e\xf7\x45\xf7\x47\xda\xf7\x0c\xf7\x0a\x1f\x0e\xf9\x55"
+"\x21\x1d\xfb\x7c\x78\x06\xd8\x86\x9a\x77\x8d\x24\x08\xfb\xa2\x07\x47\x85\x65\x7a\x6d\x1e\x5b\x70\x4b\x6c\x40\x1b\x44\x5a\xa3\xba"
+"\x70\x1f\x79\xab\x84\xb0\xca\x1a\xf7\xd4\x07\x8c\xd4\x95\x95\xdb\x92\x08\x9e\xfb\xaf\x78\x07\xda\x85\x95\x81\x8c\x41\x08\xfb\xcc"
+"\x07\xfb\x41\xdc\x39\x0b\x15\xa4\x06\x96\xb1\x05\x93\xa4\x8e\x9a\x9a\x1a\xaa\x7f\x9b\x74\x76\x7d\x79\x71\x7e\x90\x73\x91\x76\x1e"
+"\x58\x5a\x15\x72\x77\x78\x72\x73\x9f\x77\xa3\xa3\x9f\x9f\xa3\xa3\x77\x9f\x74\x1f\xf7\x2c\x16\x72\x77\x78\x72\x73\x9f\x77\xa3\xa3"
+"\x9f\x9f\xa3\xa3\x77\x9f\x74\x1f\x0e\xf9\x56\x9e\x15\x5e\x8e\x81\x95\x68\xd5\xfb\x8d\xf8\xcc\x18\x77\x06\xfb\x64\xfc\x7f\x4b\xfb"
+"\x26\x7f\x7b\x5b\x89\x19\x78\xf7\x5a\x9e\x07\x5b\x77\x97\xa8\x97\x8e\x99\x90\x98\x1f\xb9\xf7\x09\x05\xf7\x9a\x06\xb4\x2b\x05\x97"
+"\x70\x92\x71\x7d\x1a\x72\x7a\x83\x56\x8a\x1e\x78\x0b\x87\x1d\x40\x07\x0b\xf7\x42\xf8\x67\x15\x48\x6a\x80\x86\x46\x6f\x90\x7c\x18"
+"\x92\x8d\x05\x8d\x92\x93\x8c\x91\x1b\xa7\xec\x1d\x9a\x79\x1e\x82\x94\x92\x85\x8f\x1b\x8e\x8f\x8d\x8e\x91\x1f\xf2\xc1\x85\x99\x05"
+"\x83\x7e\x84\x89\x80\x1b\x6d\x83\x9c\xcb\x1f\x0b\xbe\x88\x90\x82\x8c\x2f\x08\xfb\x00\x07\x82\x6a\x6d\x86\x70\x1b\x4f\x71\xa8\xcd"
+"\x1f\xa6\x07\xe3\x92\x9a\xbd\x8c\x1e\x94\x9c\xfb\x6f\xef\x1d\x70\x07\x61\x8e\x79\x96\x79\x1e\x6d\x9e\xb2\x7b\xc4\x1b\xb2\xae\x90"
+"\x98\xbf\x1f\x0b\xf7\x92\x15\xd7\x07\x95\x1d\xf7\x6b\x2a\x47\x1d\x0b\xf7\x93\xf8\x61\x15\x4d\x5d\x77\x5e\x5f\x1f\x5e\x5e\x72\x4b"
+"\x48\x1a\xfb\x17\xe7\x28\xf7\x0e\xf7\x0e\xec\xf6\xf7\x1c\xf7\x18\x32\xeb\xfb\x0e\x1e\x7e\x68\x15\xdb\xc2\x30\xfb\x19\x20\x5c\x45"
+"\x43\x3a\x54\xdf\xf7\x0f\xf7\x0f\xb7\xd2\xd7\x1f\x0b\x15\x65\x7a\x7e\x7f\x74\x1b\x7d\x77\x91\x94\x64\x1d\xab\x96\x9c\x99\xa2\x1b"
+"\x96\x9a\x87\x84\x9a\x1f\xa2\x80\x05\x77\xb4\x9a\x87\xa4\x1b\xc2\xa8\xa8\xd8\xa0\x1f\x0e\xf7\xd3\xf7\xd8\x15\xfb\x1c\xfb\x49\x39"
+"\xfb\x02\x77\x7d\x3b\x8a\x19\x79\xf7\x88\x9d\x07\x5c\x8e\x7c\x93\x9f\x1a\x97\x90\x95\x9d\xa3\x1e\xf7\x22\xf7\x4e\xf7\x0a\xfb\x41"
+"\x05\x9c\x72\x92\x7a\x7c\x1a\x73\x7c\x83\x5d\x8a\x1e\x79\x0b\xba\x1d\xfb\xc1\x06\x37\xa9\x60\xc6\xbc\xb1\xa3\xbf\xac\x1e\x7e\x96"
+"\x05\x63\x1d\xf7\xb2\xf0\x0b\xf7\x38\x15\x3f\x5b\x60\x6e\x4b\x1b\x52\x60\xa8\xc4\x6e\x1f\x79\xb1\x84\xab\x89\xc9\x08\xf7\xc8\x06"
+"\x83\xcc\x81\xa8\x72\xab\x08\xaf\x6d\x5d\xa0\x57\x1b\x59\x5c\x79\x69\x65\x1f\x5c\x62\x70\x44\x39\x1a\xfb\x1e\xd3\x35\x0b\x7d\x94"
+"\x18\x90\x1d\x0b\xf7\xfe\x15\x3d\x55\x05\x5f\x07\xd9\xc0\x05\xfb\x7a\x68\x1d\x7c\xf7\x80\x9a\x07\x4c\x8e\x80\x95\x8a\xc3\x08\xf7"
+"\xb7\x07\xd8\xc0\x05\xb7\x07\x3e\x56\x05\xf7\x9a\x07\x87\x8d\x58\x7b\x66\x0b\x45\x5b\x67\x73\x52\x1b\x2f\x4c\xdb\xf7\x07\xf3\xc2"
+"\xd1\xdc\xaf\x98\x81\x65\x95\x1f\x91\x75\x05\x6e\x93\x9d\x7a\xa1\x1b\xa5\xa0\x9e\xa2\xc3\x45\xba\x37\x5a\x58\x77\x67\x62\x1f\x59"
+"\x5f\x6f\x47\x3b\x1a\x0b\xf7\xdd\x15\xf7\x3a\x06\xc5\x8a\x9f\x71\x89\x45\x08\x9d\xf7\x85\x79\x06\x8c\x42\x76\x70\x53\x8c\x08\xfb"
+"\x3a\xf7\x8d\xf7\x2d\x06\xf2\x8d\xab\x72\x96\x32\x6c\x1d\xfc\x8a\x79\x06\x0b\x78\x9c\x79\x93\x64\x93\xa6\x94\x97\x91\x97\x94\x08"
+"\xa4\x9f\x9b\xaa\xac\x1a\xcb\x54\xb0\x2e\x6f\x7e\x89\x83\x6b\x1e\x85\x77\x81\x89\x83\x1b\x7e\x84\x91\x96\x8a\x1f\x7d\x06\x83\xfb"
+"\x23\x05\x0b\x7a\x40\x6d\x87\x68\x1b\x2e\x68\xb0\xee\x1f\xf7\x08\x4c\x1d\xfb\x08\x07\xfb\x0e\xc7\x51\xf7\x15\xb8\x9a\x8d\xa3\xf7"
+"\x10\x1e\x0b\x07\xe9\x5f\xc3\x41\x5d\x6c\x7a\x4b\x47\x1e\xda\x07\x84\x8d\x57\x78\x69\x80\x57\x7c\x19\x7a\x07\x8e\x92\x94\x8c\x96"
+"\x1b\xa7\x94\x7c\x5a\x1f\xfb\x8c\x07\x8a\x50\x80\x7e\x59\x88\x08\x0b\xe2\x60\x1d\x90\x82\x8c\x30\x08\xfb\x65\x07\x8a\x2f\x3e\x1d"
+"\x5a\x8c\x83\x9a\xe3\x1a\xec\x0b\xf7\x54\x15\x71\x75\x74\x70\x6f\xa0\x75\xa6\xaa\x1d\xd2\x1d\x2f\x08\xfb\x65\x07\x89\x2f\x87\x82"
+"\x58\x88\x08\x7a\x7a\xf7\x76\x9c\x7b\x06\x5a\x8d\x83\x99\xe3\x1a\x0b\xd7\x1d\x94\x8c\x96\xa8\x1d\x0b\xc8\xc7\x1a\xbe\x68\xb1\xbc"
+"\x1d\x83\x6b\x6f\x66\x55\x66\x1f\x0e\xc6\x9e\xa9\xb1\xa1\x98\x81\x6e\x9d\x1e\x71\x9b\x97\x81\x9c\x1b\xa3\x9d\x9d\xa2\xaf\x5f\xa5"
+"\x4f\x4c\x57\x70\x5e\x71\x1f\x71\x5e\x83\x67\x8a\x3b\x08\x39\x0b\xa8\x1d\x55\x81\x85\x8a\x89\x81\x1f\x0b\x4e\x4f\x1a\x58\xad\x65"
+"\xb9\xae\xa3\xa2\xad\xab\x75\x9e\x66\x84\x84\x8a\x8a\x85\x1e\x89\x86\x8a\x8b\x8a\x1b\x83\x85\x91\x93\xac\xa6\xae\xc2\xb1\x1f\x0b"
+"\x9a\x83\x19\xa5\x7c\x9a\x72\x6c\x1a\x62\x70\x70\x62\x79\x80\x8f\x9b\x75\x1e\x99\x78\x80\x90\x80\x1b\x77\x7c\x7b\x76\x6b\xa9\x79"
+"\xc0\xf7\x03\xdd\xc5\x0b\xb3\x1d\xf7\xb2\x9d\x07\x41\x7b\x9a\xd1\x1f\x0b\x90\xfb\x6d\x15\xf7\x86\x9d\x06\x40\x8c\x7f\x95\x8a\xcb"
+"\x08\xf7\x31\x07\x6a\xaf\xa2\x81\xb5\x1b\xf7\x0b\xe6\xf7\x04\xf7\x25\xf7\x10\x45\xe4\x2a\x0b\xd0\x1d\xf8\xae\x07\xbb\xf7\x42\x05"
+"\x72\x06\x5c\x22\x60\x71\xfb\x15\x87\x08\x48\x06\x3e\x8d\x83\x8e\x8a\xaf\x08\x0b\x07\xab\x65\x70\x96\x63\x1b\xfb\x07\x2e\xfb\x05"
+"\xfb\x22\xfb\x14\xd5\x34\xf7\x03\xc3\xb1\x9f\xba\xad\x1f\x4b\x07\x8f\x88\xf7\x27\xbf\x05\x0b\x8a\x2f\x3e\x1d\x5a\x8c\x83\x9a\xe3"
+"\x1a\xf7\x65\x07\xe3\x93\x99\xbc\x8c\x1e\x9b\x9c\x06\x0e\x89\x49\x81\x7f\x54\x8a\x08\x7c\xf7\x70\x9a\x07\x53\x8f\x7e\x99\xc2\x1a"
+"\xf7\xdd\xe1\x07\xec\x8e\x89\x55\x8c\x1f\xfb\x9c\x07\x8a\x46\x0b\x15\xfc\xa0\x07\x3a\xf7\x66\x56\x74\xf7\x13\xfb\xb2\x05\xd8\x06"
+"\xf7\x14\xf7\xb2\x56\xa2\x3a\xfb\x66\x05\xf8\xa0\x07\xdc\xfb\x66\xc0\x0b\x87\x8e\xfb\x2f\x54\x05\x7c\x07\x93\x8c\x05\x8d\x97\x97"
+"\x8c\x95\x1b\xa3\x94\x7b\x5f\x1f\xfb\x7c\x07\x89\x41\x82\x81\x47\x88\x08\x0b\x71\x75\x74\x71\x6e\x9f\x75\xa7\xa6\xa2\xa1\xa7\xa6"
+"\x74\xa2\x70\x1f\x0b\x15\xfb\x27\xf7\x28\x05\x9d\x0b\x1b\xb1\x9a\x81\x71\x70\x76\x7a\x69\x76\x7a\x8e\x94\x70\x44\x1d\x0b\x7a\x6f"
+"\x1e\xfb\x15\xfb\x6e\xfb\x16\xf7\x61\x05\x78\xa9\x83\x9e\x9b\x1a\xa1\x9d\x95\xb0\x1e\x99\x9d\xfb\xc1\x79\x06\xa2\x89\x0b\xa6\xa2"
+"\xa1\xa7\xa6\x74\xa2\x70\x1f\xf7\x5b\x16\x71\x75\x74\x71\x6e\x49\x1d\x0e\x07\x64\x6c\x7c\x72\x69\x1a\x61\x58\x1d\xa2\x0b\xcb\x7b"
+"\x69\xbb\x1e\xd9\x55\xb4\x35\xfb\x00\x1a\xfb\x0a\x62\x37\x3a\x5c\x1e\x6e\x58\x51\x7f\x34\x1b\x63\x7f\x94\xab\x1f\x0b\x89\x3e\x84"
+"\x81\x4f\x88\x08\x7c\xf7\x74\x9a\x07\x53\x90\x7d\x97\x8a\xba\x08\xf7\xe7\xf7\x50\xfb\xe2\x07\x8a\x59\x7c\x0b\x15\x71\x75\x74\x71"
+"\x6e\x9f\x75\xa7\xa6\xa2\xa1\xa7\xa6\x74\xa2\x70\x1f\xf7\x5b\x16\x71\x75\x74\x71\x6e\x9f\x75\xa7\x0b\xa1\xf8\x7b\x15\xa8\x06\x95"
+"\xb7\x05\x9a\xc2\x8c\x92\xa0\x1a\xaf\x7d\x9e\x71\x70\x7d\x78\x67\x76\x8c\x85\x99\x53\x1e\x0b\x07\x45\x8a\x7b\x7c\x41\x1b\x79\xf7"
+"\xb2\x45\x1d\xfb\xb2\x0b\x15\xfb\x27\x61\x1d\xd3\x1d\xa3\xb3\xe9\x1d\x4c\x1d\xfc\x5c\x07\x45\x8a\x7b\x7c\x41\x1b\x79\x0b\x16\xfb"
+"\x50\x06\x8a\xbf\x05\xf0\x8a\xa2\xc0\xb7\x1b\xa1\x97\x83\x70\x9d\x1f\x6f\x9e\x98\x82\xa2\x1b\x93\x8e\x0b\xda\xb7\x1d\x0b\x89\x1e"
+"\x72\x8a\x05\x79\xf7\xbe\x9d\x07\x70\x8c\x05\x55\x8d\x7c\x9e\xca\x1a\xf7\x47\x07\xf7\x24\xf7\x86\x0b\x15\xb8\x1d\x0b\x4a\x1d\x9b"
+"\x1a\x9f\x7e\x97\x75\x7c\x82\x86\x79\x79\x1e\xfb\x27\xfb\x28\x05\x0b\xf7\x33\xf7\x6c\x15\x8f\x06\xf7\x36\xfb\x36\xde\x1d\x82\x7a"
+"\x0b\x95\x89\x8e\x86\x1e\x51\x37\x6d\x69\x6e\x7a\x08\x80\x84\x85\x85\x85\x1a\x88\x8c\x89\x8e\x89\x1e\xc0\x0b\x3c\x1d\xa1\x8c\x05"
+"\x9d\xfb\xb2\x79\x07\xa2\x8a\x05\xbf\x89\x9b\x78\x4c\x1a\x0b\x4b\x1d\xb0\x92\x92\x8c\x8c\x91\x1e\x8d\x90\x8c\x8b\x8c\x1b\x93\x91"
+"\x85\x0b\x1e\x9b\x9c\xfb\x76\x7a\x9c\x06\xbe\x88\x90\x82\x8c\x0b\xbc\x1a\xca\x56\xb6\x3d\x62\x69\x7f\x74\x74\x1e\x76\x78\x81\x78"
+"\x7b\x5d\xa4\x7d\x18\xbb\xa1\x0b\x07\x86\x8d\x5c\x7b\x69\x80\x49\x7a\x19\x7b\x07\x8c\x93\x90\x8b\x94\x1b\xb0\x94\x81\x62\x1f\x0b"
+"\xa2\x8a\x05\xbf\x89\x9b\x78\x4c\x1a\xfc\x5b\x07\x4b\xd1\x1d\x0b\x78\x7e\x67\x1e\x7b\x78\xf7\xaa\x9d\x7e\x06\x5e\x71\xa8\xe3\x67"
+"\x1f\xfc\x01\xf7\x0f\x15\x0b\xc5\x1d\x5b\x0b\x6a\x1d\xfc\x96\xfb\x8a\xf8\x96\x07\x0b\x16\xcd\x1d\x0e\x8c\xd4\x95\x95\xd8\x92\x08"
+"\x9e\xfb\xaa\x78\x07\xd8\x85\x95\x81\x8c\x41\x08\x0b\x6b\xa4\x55\x81\x85\x8a\x89\x81\x1f\x0e\x15\xfb\x48\xfb\x1b\xfb\x25\xfb\x55"
+"\xfb\x55\xf7\x1b\xfb\x25\xf7\x48\xe8\x0b\xdc\x1d\x6c\x78\x82\x76\x1b\x0b\x75\x7b\x8e\x94\x70\x1f\x7d\x6c\x05\x7f\xa7\xa3\x87\xaa"
+"\x1b\xd9\xba\xab\x0b\xf7\x6a\xf7\xcf\x15\xf7\xbb\xfb\x67\x06\x44\x8a\x7b\x7c\x41\x1b\x79\x0b\x8a\x96\x86\x77\x1a\x67\x2a\xfb\x05"
+"\xfb\x1d\xfb\x0e\x1e\xf7\x69\x07\x0b\x15\x7a\x92\x7d\x75\x82\x87\x6f\x8a\x19\xfb\x0d\x06\xe1\xe0\x05\xc8\x0b\x6e\x74\x75\x6f\x6f"
+"\xa2\x74\xa7\xa8\xa2\xa2\xa7\xa6\x74\xa2\x6f\x1f\x0b\xaa\xa6\xa6\x97\xb4\x8d\x19\x9c\xfb\x52\x7a\x97\x07\xa0\x95\x84\x0b\x5c\x46"
+"\x43\x3a\x54\xde\xf7\x0c\xf7\x0d\xb7\xd1\xd7\x1f\x0e\x07\x89\x43\x7e\x7d\x43\x87\x08\x78\x0b\x7b\x78\x57\x4f\x1d\x0b\xbc\x8c\x1e"
+"\x9b\x9c\xfb\x76\x7a\x9c\x06\xbe\x88\x8f\x83\x8d\x0b\x69\xa9\xce\x7e\x1f\x6e\x06\x8c\x58\x91\x73\x9f\x6f\x08\x68\x0b\x07\x3f\x88"
+"\x72\x80\x77\x1e\x81\x85\x7d\x83\x7d\x1b\x7c\x0b\x9d\x1e\x97\x07\x8a\xc4\x96\x97\xc5\x8d\xa2\x8c\x18\x9d\x0b\x98\x94\x98\x9b\x1a"
+"\x9f\x7e\x97\x0b\x92\x86\x05\x8e\x93\x0b\xbb\x65\x49\x52\x5f\x67\x44\x7b\x7f\x8d\x90\x71\x1f\x0b\x07\x89\xa5\x9c\x8a\xa5\x1b\xda"
+"\xc0\x95\xa3\xb6\x1f\x0b\xf7\xfd\xf9\x38\x15\xfb\x53\xfb\x1c\xfb\x23\xfb\x5e\x0b\x9d\x07\x74\x8c\x51\x8d\x80\x97\x8c\xc4\x19\x97"
+"\x07\x0b\xaa\x6a\xb5\xb4\xad\xa2\xc0\xb0\x1e\x77\x9b\x05\x70\x0b\x7b\x83\x86\x79\x79\x1e\xfb\x27\xfb\x28\x05\x0e\x05\x98\x7e\x8e"
+"\x86\x84\x1a\x81\x86\x89\x73\x1e\x0b\x15\x69\x06\xfb\x0e\x24\xfb\x0d\xf2\x05\x69\x06\x0b\xaa\x77\xa4\xa8\x1a\xa8\xa2\xa0\xac\xb0"
+"\xa1\x75\x0b\x3c\x1d\xa2\x8c\x05\x9d\x0b\x07\x89\x45\x85\x83\x52\x84\x08\x7c\xf7\x61\x0b\x89\x9b\x78\x4c\x1a\xfc\x5c\x07\x4c\x7b"
+"\x78\x0b\x91\x75\x1b\x59\x67\x67\x4a\x7c\x1f\xa8\x06\x0b\x1f\x4c\xc5\xe4\x64\xe3\x1b\xf7\x59\xf7\x1c\x0b\x7e\x7a\x6a\x78\x8c\x87"
+"\x98\x56\x1e\x0e\xf7\x6f\xcd\xfb\x6f\xf7\x70\x49\x06\x0e\xa7\xa1\xa1\xa7\xa6\x74\xa2\x70\x1f\x0e\x78\xbb\x1b\xde\xb9\xbe\xf5\x98"
+"\x1f\x0e\x82\x6f\x71\x81\x81\x90\x99\x7d\x1e\x9f\x0b\x86\x08\x7c\xf7\x70\x9a\x07\x53\x8f\x81\x0b\x92\x7d\x54\x1f\xfb\x90\x07\x68"
+"\x8e\x7f\x0b\x1a\xac\x7e\x9c\x73\x73\x7e\x7a\x6a\x78\x0b\xf8\xaa\xf7\x70\x15\xcd\xfc\x8c\x49\x07\x0b\x7a\x9c\x06\xbe\x88\x90\x82"
+"\x8c\x2f\x08\x0b\xf7\x8e\x04\x5a\xfa\x7c\xbc\x07\x0e\x01\x00\x01\xe3\x01\x05\x00\x01\x0a\x02\x01\x40\x03\x01\x87\xff\x02\x87\xa0"
+"\x02\x8e\x02\x00\x01\x00\x04\x00\x07\x00\x45\x00\x85\x00\xe6\x01\x73\x02\x2e\x02\xd3\x02\xdb\x03\x1b\x03\x5a\x04\x2b\x04\x3d\x04"
+"\x44\x04\x48\x04\x4f\x04\x60\x04\xb3\x04\xe2\x05\x2c\x05\xa0\x05\xc7\x06\x33\x06\x94\x06\xb8\x07\x1a\x07\x7a\x07\x89\x07\xcd\x07"
+"\xeb\x08\x01\x08\x1d\x08\x86\x09\x35\x09\x38\x09\xb9\x09\xbe\x09\xc1\x09\xc5\x09\xf7\x09\xfa\x09\xfd\x0a\x02\x0a\x40\x0a\x43\x0a"
+"\x47\x0a\x98\x0a\x9b\x0a\x9e\x0a\xeb\x0b\x6c\x0b\x71\x0b\x75\x0b\x79\x0b\x7c\x0b\xc9\x0b\xce\x0c\x5b\x0c\x5e\x0c\x62\x0c\x85\x0c"
+"\x98\x0c\xba\x0c\xd7\x0c\xe3\x0c\xf0\x0c\xf4\x0d\x49\x0d\x4d\x0d\x53\x0d\x57\x0d\x74\x0d\x78\x0d\x7c\x0d\x86\x0d\x8f\x0d\x93\x0d"
+"\x98\x0e\x32\x0e\x36\x0e\x3a\x0e\x6a\x0e\xcb\x0e\xd0\x0e\xd5\x0e\xda\x0e\xde\x0f\x3b\x0f\x3e\x0f\xc4\x0f\xc8\x0f\xcc\x10\x17\x10"
+"\x23\x10\x6f\x10\xa9\x10\xe8\x11\x61\x12\x17\x12\x1b\x12\x92\x13\x29\x13\xd5\x14\x3b\x14\x5d\x14\x95\x14\xb2\x14\xc1\x14\xf8\x15"
+"\x55\x15\x70\x15\x7a\x15\xcb\x16\x75\x16\x7d\x16\xce\x16\xe7\x16\xee\x17\x05\x17\x29\x17\x8f\x17\xc0\x18\x96\x18\xfa\x19\x02\x19"
+"\x0a\x19\x12\x19\x1a\x19\x21\x19\x2d\x19\x36\x19\x3d\x19\x45\x19\x5a\x19\x71\x19\x9a\x19\xa2\x19\xa6\x19\xab\x1a\x1f\x1a\x54\x1a"
+"\x57\x1a\xff\x1b\x34\x1b\xe4\x1b\xe9\x1b\xf4\x1b\xfd\x1c\x89\x1d\x00\x1d\x33\x1d\x42\x1d\xa4\x1e\x20\x1e\x22\x1e\x47\x1e\x61\x1e"
+"\xbd\x1e\xc5\x1e\xd5\x1e\xe9\x1f\x14\x1f\x45\x1f\x80\x1f\x9c\x20\x56\x20\x5a\x20\xcd\x20\xf9\x21\x32\x21\xbe\x21\xc6\x21\xcd\x21"
+"\xde\x21\xe5\x21\xec\x21\xf3\x22\x6c\x22\x75\x22\x7d\x22\x8f\x22\x9b\x22\xa5\x22\xaf\x22\xb8\x22\xc2\x22\xe5\x22\xeb\x22\xf2\x22"
+"\xf9\x22\xff\x23\x07\x23\x0f\x23\x16\x23\x1d\x23\x23\x23\x2a\x23\x31\x23\x39\x23\x42\x23\x4a\x23\x52\x23\x5b\x23\x63\x23\x6b\x23"
+"\x77\x23\x93\x23\x9f\x23\xa7\x23\xb0\x23\xb8\x23\xc1\x23\xcb\x23\xf3\x23\xfd\x24\x06\x24\x0d\x24\x15\x24\x1d\x24\x24\x24\x2d\x24"
+"\x35\x24\x3e\x24\x46\x24\x4f\x24\x58\x24\x67\x24\x70\x24\x78\x24\xe4\x25\x51\x25\xc7\x25\xf0\x26\x5e\x27\x07\x27\xb9\x28\x22\x28"
+"\x2b\x28\x32\x28\x35\x28\x51\x28\x59\x28\x90\x28\xb6\x29\x22\x29\x2c\x29\x35\x29\x3e\x29\x49\x29\xdd\x29\xe5\x29\xe7\x2a\x02\x2a"
+"\x0f\x2a\x17\x2a\x21\x2a\x2a\x2a\x91\x2a\xae\x2a\xc5\x2b\x1a\x2b\x3e\x2b\x6e\x2c\x04\x2c\x41\x2c\x49\x2c\x51\x2c\x59\x2c\x62\x2c"
+"\x8c\x2c\x94\x2c\xf9\x2d\x07\x2d\x12\x2d\x1b\x2d\x54\x2d\x58\x2d\x7d\x2d\xb2\x2d\xef\x2e\x31\x2e\x95\x2e\x9c\x2e\xa3\x2e\xe0\x2e"
+"\xea\x2e\xf6\x2e\xff\x2f\x44\x2f\x4b\x2f\x5b\x2f\x68\x2f\xa3\x2f\xb3\x2f\xbd\x2f\xc5\x30\x50\x30\x52\x30\x78\x30\x80\x30\xe1\x31"
+"\x09\x31\xa4\x31\xad\x31\xb7\x31\xc5\x31\xef\x31\xf8\x32\x47\x32\x4f\x32\x60\x32\x9e\x32\xd2\x32\xfd\x33\x05\x33\x42\x33\xb7\x33"
+"\xcb\x33\xe6\x33\xee\x34\x1b\x34\x1e\x34\x2c\x34\x77\x34\x80\x34\xbb\x34\xc4\x34\xcd\x34\xd5\x34\xdd\x35\x50\x35\x57\x35\x5d\x35"
+"\x66\x35\x70\x35\xa4\x35\xac\x36\x62\x36\x66\x36\x9a\x36\xc4\x37\x30\x37\x4d\x37\xbf\x37\xe1\x38\x34\x38\xc8\x39\x1a\x39\x1d\x39"
+"\x62\x39\x67\x39\xc1\x39\xea\x39\xf9\x39\xfb\x3a\x20\x3a\x41\x3a\x90\x3a\xbc\x3a\xc1\x3b\x29\x3b\x66\x3b\x7c\x3b\x9a\x3b\xbb\x3b"
+"\xe2\x3c\x1d\x3c\x46\x3c\x61\x3c\xd4\x3d\x18\x3d\x82\x3d\x9c\x3e\x0a\x3e\x38\x3e\xaa\x3f\x2a\x3f\x2e\x3f\x56\x3f\x92\x40\x0b\x40"
+"\x99\x40\xfe\x41\x10\x41\x53\x41\xc9\x42\x42\x42\xb8\x42\xe2\x43\x41\x43\x47\x43\x56\x43\xe7\x44\x31\x44\x35\x44\x9e\x44\xa2\x44"
+"\xd8\x45\x36\x45\x43\x45\x73\x45\x92\x46\x07\x46\x4a\x46\x74\x46\x78\x47\x22\x47\xa2\x47\xdc\x47\xf9\x48\x45\x48\x9f\x48\xe7\x49"
+"\x2c\x49\x59\x49\xb0\x49\xe6\x4a\x4e\x4a\x75\x4b\x05\x4b\x34\x4b\x8b\x4b\xfe\x4c\x2c\x4c\x4e\x4c\x91\x4d\x00\x4d\x5a\x4d\xd9\x4d"
+"\xe2\x4e\x19\x4e\x3d\x4e\x84\x4e\xca\x4f\x39\x4f\xbb\x50\x4d\x50\x54\x50\x6f\x50\x78\x50\xad\x50\xe3\x51\x27\x51\x75\x51\x81\x51"
+"\xb6\x51\xd6\x51\xf6\x52\x16\x52\x36\x52\x42\x52\x57\x52\xc7\x52\xdb\x52\xe3\x52\xeb\x52\xf5\x53\x55\x53\xd3\x54\x3f\x54\x62\x54"
+"\x85\x54\xf3\x55\x1f\x55\x27\x55\x4d\x55\x55\x55\x5e\x55\x8e\x55\x97\x55\xdb\x56\x0a\x56\x0e\x56\x28\x56\x49\x56\xa2\x56\xe9\x57"
+"\x3f\x57\xaa\x57\xc3\x58\x0b\x58\x9b\x59\x13\x59\x1c\x59\x25\x59\x56\x59\x86\x59\xab\x5a\x14\x5a\x1c\x5a\x64\x5a\x8b\x5a\x99\x5b"
+"\x0e\x5b\x1c\x5b\x94\x5c\x02\x5c\x36\x5c\x6a\x5c\xaf\x5d\x3c\x5d\x7c\x5d\x81\x5d\x9b\x5d\xa4\x5d\xc4\x5d\xd0\x5d\xd9\x5e\x4f\x5e"
+"\x60\x5e\xe2\x5e\xeb\x5f\x4b\x5f\x68\x5f\x71\x5f\x97\x5f\xbe\x5f\xca\x60\x07\x60\x7c\x60\x82\x60\xcd\x61\x4f\x61\x58\x61\xe2\x61"
+"\xeb\x61\xf4\x62\x5b\x62\x93\x62\xec\x62\xf9\x63\x09\x63\x12\x63\x81\x64\x05\x64\x09\x64\x29\x64\x37\x64\x45\x64\xb7\x65\x4a\x65"
+"\xca\x66\x4b\x66\x7f\x66\xa7\x66\xdd\x67\x5a\x67\x8a\x67\x94\x67\xaf\x67\xb9\x67\xc2\x67\xd4\x68\x1f\x68\x2a\x68\x94\x68\x9c\x68"
+"\xa6\x68\xc5\x69\x16\x69\xa7\x69\xf8\x6a\x34\x6a\xb8\x6b\x07\x6b\x2e\x6b\x46\x6b\x78\x6b\xcf\x6b\xf0\x6b\xf9\x6c\x0d\x6c\x16\x6c"
+"\x29\x6c\x2c\x6c\x30\x6c\x3d\x6c\x47\x6c\x4e\x6c\x56\x6c\x7e\x6d\x0d\x6d\x84\x6e\x00\x6e\x0c\x6e\x2c\x6e\x36\x6e\x3e\x6e\x74\x6e"
+"\xb5\x6f\x55\x6f\xee\x70\x60\x70\xc0\x70\xfd\x71\x4a\x71\xdb\x72\x22\x72\x86\x72\xf5\x73\x14\x73\x31\x73\x7a\x73\xa8\x73\xe9\x74"
+"\x42\x74\x8e\x74\xf1\x75\x3c\x75\xc2\x76\x12\x76\x49\x76\xa3\x77\x0a\x77\x35\x77\x92\x77\x96\x77\xc7\x77\xff\x78\x66\x78\x6d\x78"
+"\x75\x78\xcb\x79\x12\x79\x27\x79\x8e\x79\x99\x7a\x51\x7a\xcc\x7a\xd0\x7a\xd8\x7a\xf4\x7b\x11\x7b\x81\x7b\x99\x7b\xde\x7c\x07\x7c"
+"\x7f\x7c\x83\x7c\x9c\x7c\xe6\x7c\xfa\x7d\x03\x7d\x0b\x7d\x12\x7d\x19\x7d\x2a\x7d\x31\x7d\xeb\x7e\x07\x7e\x28\x7e\x31\x7e\x3b\x7e"
+"\xce\xfb\x95\x0e\xfb\x95\x0e\xfb\x42\xf7\x51\xf7\x44\x15\xb8\xf8\x13\x05\x8c\x97\x8c\x96\x99\x1a\xbf\x78\xa7\x69\x6a\x77\x6d\x5c"
+"\x71\x93\x3f\x97\x40\x1e\x94\x50\x91\x5a\x8d\x6d\x94\xfb\x00\x18\x92\x3b\x15\x6d\x74\x73\x6d\x6e\xa1\x75\xa9\xac\xa2\xa0\xa9\xa9"
+"\x72\xa3\x6d\x1f\x0e\x28\xf7\xbf\xf8\x43\x15\x8e\x9d\x8d\x98\x8d\x94\x08\x9b\xd7\x94\xc7\xa8\x1a\xa1\x78\x9d\x74\x73\x78\x79\x74"
+"\x7a\x99\x31\x9d\x2a\x1e\xfb\x28\x16\x8e\x9d\x8d\x98\x8d\x94\x08\x9b\xd7\x94\xc7\xa8\x1a\xa1\x78\x9d\x74\x73\x78\x79\x74\x7a\x99"
+"\x31\x9d\x2a\x1e\x0e\x84\xf8\x6b\xf7\xa3\x15\x27\x06\x9f\xf7\x1a\x05\xf4\xc2\x2a\x06\xa9\xf7\x5e\x05\x51\x06\x6d\xfb\x5e\x05\xfb"
+"\x19\x06\xaa\xf7\x5e\x05\x51\x06\x6c\xfb\x5e\x05\xfb\x0a\x54\xf7\x02\x06\x76\xfb\x1a\x05\xfb\x08\x54\xf6\x06\x6a\xfb\x6c\x05\xc5"
+"\x06\xac\xf7\x6c\x05\xf7\x1a\x06\x6c\xfb\x6c\x05\xc5\x06\xaa\xf7\x6c\x05\xf7\x01\x06\xfb\x1e\xf7\x51\x15\x77\xfb\x1a\x05\xfb\x1a"
+"\x06\xa0\xf7\x1a\x05\x0e\x84\xf8\x3d\xf8\x88\x15\xf7\x03\x07\x69\xa7\x60\x9a\x37\x95\x08\xca\x69\x4c\x07\x4c\x84\x6f\x82\x6a\x71"
+"\x08\x69\x70\x77\x63\x60\x1a\x5c\x9b\x68\xb3\x66\x1e\xa8\x6f\xa1\x7c\xd2\x63\x08\xfb\xae\x07\x2d\x8c\x56\xba\x73\xf4\x08\x7c\xfb"
+"\x16\x06\xc7\x66\xb5\x80\xdf\x88\x08\x34\xad\xe2\x07\xd5\x97\xaa\x97\xaf\xa8\x08\xac\xa7\x9e\xb4\xbb\x1a\xaf\x84\xac\x7e\xa0\x1e"
+"\x71\xb4\x70\xa0\xfb\x0c\xd0\x08\xf7\x8a\x07\xdf\x81\xb8\x61\x9c\x36\x08\xfb\x49\x2e\x15\x37\xc3\x78\xa3\xba\x1a\xc2\xad\xad\xd0"
+"\x99\x1e\xae\xfb\xec\x15\xe8\x51\xa0\x70\x4d\x1a\x49\x67\x66\x3d\x7c\x1e\x0e\xf7\xda\xf9\x31\xf8\x07\x15\xfb\x05\x20\xfb\x09\xfb"
+"\x11\x3d\xba\x58\xd4\xb8\xb0\x9b\xae\xae\x1f\xc0\xc1\xac\xdc\xd9\x1a\xcf\x65\xb2\x4a\x1e\x92\x6b\x15\xb2\xaa\x67\x5f\x52\x72\x47"
+"\x65\x5b\x1f\x64\x6b\x6e\x7a\x67\x1b\x66\x73\xa5\xb1\xc1\xa7\xdc\xb0\xbf\x1f\xb3\xa6\xa7\x9d\xaa\x1b\x61\xf7\xe5\x15\x64\x06\x58"
+"\x54\x64\x7a\x4c\x1b\x63\x75\x92\x9f\x73\x1f\xa1\x71\x7e\x90\x6c\x1b\xfb\x07\x21\xfb\x0b\xfb\x13\x45\xc0\x52\xcc\xb6\xb8\x9f\xae"
+"\xac\x1f\xbf\xc0\xab\xdb\xd3\x1a\x99\x89\x97\x86\x9d\x1e\x84\x9d\x9e\x88\xa8\x1b\xb6\xa4\x92\xa3\xb4\x1f\xfb\xf3\xfd\x07\x05\xbb"
+"\x06\xf0\xf8\xf9\x15\x91\x77\x8e\x7c\x7d\x1a\x62\x7c\x56\x74\x61\x1e\x51\x6a\x5d\x69\x5d\x1b\x68\x73\xa4\xaf\xf5\xde\xf7\x22\xc9"
+"\x90\x8d\x8a\x86\x91\x1f\x99\x7e\x97\x86\xa8\x83\x08\x0e\xf7\xa3\xf9\x5b\xf8\x3e\x15\xfb\x6c\x76\x06\xbd\x86\x99\x81\x6d\x1a\x5f"
+"\x71\x57\x4a\x35\x1e\x54\xd0\x6a\xbe\x5f\xe1\x08\xf7\x06\xc1\xb4\xb8\xd3\x1a\xd2\x53\xbd\x3c\x35\x47\x47\x35\x65\x93\x6b\xa6\x40"
+"\x1e\x65\x75\x05\x21\x4e\x58\x44\x37\x1a\x2c\xcb\x52\xf6\xdc\xc7\xa4\xcd\xd6\x1e\x4a\xca\xbc\x71\xc5\x1b\xcb\xc4\xb5\xd2\xa9\x1f"
+"\x7c\x96\x05\x63\x6b\x75\x7e\x67\x1b\x53\x58\xaa\xc8\x5c\x1f\xb7\xc6\xa4\xb0\xaa\xc1\xa5\xb9\x18\xa3\xb4\x9f\x97\xbd\x91\x08\xfc"
+"\x1a\x96\x15\x6d\xca\x81\xb1\xb8\x1a\xbb\xaa\xad\xb9\xb9\xad\x67\x5a\x54\x65\x5d\x3c\x61\x1e\x46\x42\x15\xc7\xfb\x06\xae\x54\xc4"
+"\x45\x08\x5c\x4f\x65\x79\x60\x1b\x44\x51\xca\xd9\xcb\xaa\xb6\xe2\xc3\x1f\x0e\xfb\x42\xf5\xf8\x45\x4d\x0a\x0e\xfb\x42\xf7\xbb\xf9"
+"\x38\x15\x41\x5a\x6d\x72\x66\x5d\x08\x44\x34\x68\x27\xfb\x09\x1a\xfb\x14\xb0\x2a\xe3\x25\x1e\xb4\x5b\xa5\x75\xbf\x6b\x97\x9b\x18"
+"\x3b\xca\x6f\xaf\x70\xd5\x08\x73\xce\x80\xd6\xf0\x1a\xf4\x98\xde\xa6\xc8\x1e\xa7\xc9\xa9\xaf\xd3\xc5\x08\x0e\xfb\x42\xb1\xfb\x45"
+"\x15\xd5\xbc\xa9\xa4\xb0\xb9\x08\xd2\xe2\xae\xef\xf7\x09\x1a\xf7\x14\x66\xec\x33\xf1\x1e\x62\xbb\x71\xa1\x57\xab\x7f\x7b\x18\xdb"
+"\x4c\xa6\x68\xa7\x40\x08\xa3\x48\x96\x40\x26\x1a\x22\x7e\x39\x70\x4e\x1e\x70\x4d\x6c\x66\x43\x51\x08\x0e\x84\xf7\x85\xf8\x55\x15"
+"\x8c\x82\x8c\x85\x89\x1a\x71\x85\x71\x7f\x6b\x1e\x84\x78\x87\x7a\x80\x1a\x78\x9b\x7a\x9e\xa0\x9d\x9e\xa0\x91\x88\x97\x86\x99\x1e"
+"\x7e\xae\x84\xb1\xb2\x1a\x92\x07\x92\x88\xa0\x83\xa2\x77\xa5\x6b\x19\x6c\xa4\x9c\x7f\x9d\x1b\xa0\x99\x9a\xa1\xa5\x7c\x96\x5f\x92"
+"\x1f\x64\x91\x6a\x97\x72\x9b\x83\x90\x18\xbc\xa7\x9e\x92\xb7\x92\x08\xb2\x91\x97\x95\xa5\x1a\xa2\x7d\x9b\x75\x7c\x7a\x7e\x6f\x73"
+"\x1e\x72\x6d\x73\x75\x74\x7f\x84\x87\x18\xa5\x07\xa6\xf7\x16\x05\x9f\x7b\x9b\x77\x77\x7c\x7c\x77\x80\x8f\x78\x91\x76\x1e\x95\x68"
+"\x90\x6c\x72\x1a\x7e\x07\x65\xa0\x77\x9b\x6b\xaf\x08\xa3\x77\x7f\x93\x7b\x1b\x77\x7d\x7c\x76\x72\x9e\x7e\xbc\x82\x1f\xb0\x84\xa9"
+"\x81\x9e\x7e\x96\x84\x18\x62\x72\x7b\x85\x5d\x82\x08\x5e\x83\x7a\x7f\x71\x1a\x76\x98\x7e\xa2\x9b\x94\x90\x9e\x9c\x1e\xa8\xac\x90"
+"\x90\x93\x92\x95\x93\x8f\x8f\xb0\xa3\x08\x0e\xc4\xf7\x8d\xf7\xb2\x15\xfb\x6f\x49\xf7\x6f\xfb\x70\xcd\xf7\x70\xe7\x1d\xfb\x95\xde"
+"\xfb\x21\x25\x0a\xfb\x42\xc9\x0a\xfb\x95\xf7\x11\xef\x2b\x0a\xfb\x79\xf7\xb3\xf9\x38\x15\x48\x06\xfb\x79\xfd\x46\x05\xcf\x06\x0e"
+"\x84\xf7\x92\xf9\x38\x15\x54\x61\x7b\x67\x66\x1f\x51\x53\x65\xfb\x07\xfb\x09\x1a\xfb\x02\xac\xfb\x08\xba\x53\x1e\x5f\xb0\xbe\x73"
+"\xc5\x1b\xbe\xb6\x9c\xae\xaf\x1f\xc5\xc2\xb1\xf7\x08\xf7\x0d\x1a\xf7\x61\x30\xf7\x21\xfb\x17\x1e\x88\x71\x15\xdf\xb8\xfb\x05\xfb"
+"\x65\xfb\x65\x5f\x20\x35\x35\x5f\xf6\xf7\x64\xf7\x69\xb8\xf7\x02\xe1\x1f\x0e\x84\xf7\x0a\x16\xf7\xa8\x9a\x06\x3e\x7a\x96\xbb\x8a"
+"\x1f\xf8\xec\x07\x83\x8d\xfb\x48\x30\x05\x7d\x07\x9a\xb2\xa3\x92\x94\x1b\xa0\x94\x7c\x6b\x1f\xfc\x59\x07\x89\x4c\x7a\x7d\x3f\x8a"
+"\x08\x0e\x84\xf8\x6f\xf7\x1d\x15\x7e\x90\x66\x51\x80\x84\x5c\x8a\x19\xfb\x83\x06\xf7\x3c\xf7\x44\x05\xe4\xe8\xb2\xd7\xd9\x1a\xef"
+"\x3a\xd8\x23\x54\x57\x75\x63\x66\x1e\x6b\x69\x7c\x6b\x7a\x44\xa0\x86\x18\xed\xb3\xae\xab\xd1\x1b\xe0\xc3\x52\x37\x3c\x5d\x2f\x37"
+"\x32\x1f\xfb\x46\xfb\x51\x05\x7f\xf8\x1a\x07\x0e\x84\xf7\x2d\xf7\xde\x15\xc6\xa2\x89\x82\xa2\x1f\xca\x74\xb1\x53\x46\x1a\x36\x53"
+"\x4b\x41\x6f\x77\x92\xa3\x66\x1e\x9d\x6e\x7a\x92\x7a\x1b\x74\x7c\x7d\x76\x68\xb6\x75\xd1\xd7\xda\xa5\xb4\xbb\x1f\xba\xb4\xa4\xc5"
+"\xce\x1a\xbf\x7b\xb9\x6f\xaa\x1e\x76\xa1\x78\x97\x60\x9e\x08\xcf\xba\xa4\xb0\xc1\x1a\xdd\x4c\xc2\x2e\x59\x5f\x7a\x6b\x67\x1e\x6d"
+"\x6f\x7c\x72\x76\x4f\x9a\x87\x18\xd5\xb3\xb8\xab\xca\x1b\xcd\xb7\x60\x4b\x67\x7c\x68\x72\x71\x1f\x6d\x6d\x6f\x7c\x47\x73\x08\x0e"
+"\x84\xf8\x6c\xf7\x7b\x15\x25\xf8\x51\x5f\x06\xfb\xce\xfc\x51\x05\x4b\xf7\xad\xfb\x3b\xd8\xf7\x3b\xf1\x07\xfb\x48\xcb\x15\xfb\x84"
+"\x06\xf7\x84\xf7\xeb\x05\x0e\x84\xf7\x49\xf8\xdb\x15\xf7\x58\x06\x9c\x8e\x8c\x93\x8e\x1f\xb1\xe4\x82\x92\x05\x77\x7c\x82\x85\x75"
+"\x1b\xfb\x65\x06\xfb\x01\xfb\x81\x05\x8a\x89\x8b\x8a\x89\x1a\x85\x8f\x89\x93\xab\xb2\x84\x7e\xb5\x1e\xf7\x07\x66\xbf\x4e\x27\x1a"
+"\x2b\x4f\x40\x3c\x77\x7b\x92\xa1\x6d\x1e\xa3\x6b\x75\x94\x74\x1b\x6f\x7d\x7f\x72\x65\xb9\x73\xd7\xde\xd3\xa6\xbe\xbe\x1f\xb8\xb8"
+"\xa0\xc4\xd7\x1a\xd3\x78\xb9\x5a\xbd\x1e\x5f\xb7\x52\xa2\xfb\x0a\xa0\x08\x0e\x84\xf8\x52\xf9\x40\x15\xfb\x06\x81\x51\x78\x42\x58"
+"\x08\xfb\x00\x3e\x50\xfb\x06\xfb\x1a\x1a\x34\xa6\x33\xb6\x59\x1e\x5f\xb1\xc1\x73\xc9\x1b\xf7\x10\xe1\xea\xf7\x1e\xf7\x15\x43\xdb"
+"\xfb\x09\x5f\x77\x84\x65\x4c\x1f\xa6\xf7\x2b\xf7\x04\xf7\x00\xf7\x31\xa5\x08\xfb\x62\xfb\xb2\x15\xe2\xbc\x43\xfb\x11\xfb\x02\x64"
+"\x4e\x45\x33\x55\xe9\xf7\x2f\xbe\x93\xa7\x9f\x9a\x1f\x9b\xa0\xaa\x94\xae\x1b\x0e\x84\xf8\x55\x21\x1d\xfc\x06\x06\x50\xfb\x27\x9c"
+"\x83\xb4\xce\x9e\x98\xc3\x8c\x19\xf7\x6d\x06\xfb\x5a\xfc\xe8\x05\xcc\x06\xf7\x68\xf9\x22\x05\x0e\x84\xf7\xb6\xf8\x07\x15\xef\xc1"
+"\xad\xb4\xcf\x1a\xde\x44\xc6\x26\xfb\x01\x3a\x48\x30\x4a\x9e\x6e\xf4\x2f\x1e\xfb\x01\x38\x76\x6e\x46\x1a\x29\xd9\x48\xf7\x06\xf7"
+"\x0c\xd8\xcd\xf2\xd8\x69\xbb\xfb\x0d\xe6\x1e\x79\x24\x15\xd4\x57\xa3\x67\x53\x1a\x4a\x5e\x5e\x4a\x3f\x58\xc5\xe1\xcc\xa0\xb4\xc6"
+"\xbb\x1e\xbc\xd8\x15\x32\xc5\x67\xb9\xc3\x1a\xc5\xb8\xb4\xca\xcf\xb6\x5f\x46\x4e\x71\x63\x47\x5e\x1e\x0e\x84\xc6\x75\x15\xf7\x04"
+"\x98\xc2\x9e\xcf\xbc\x08\xf3\xd7\xc8\xf7\x10\xf7\x1b\x1a\xf7\x39\x30\xf7\x09\xfb\x16\xfb\x0b\x32\x26\xfb\x1b\xfb\x0e\xd3\x3a\xf7"
+"\x00\xc2\xb5\x9b\xb4\xc0\x1e\x62\xfb\x37\xfb\x03\x20\xfb\x2c\x71\x08\xf7\xc6\xf7\xf9\x15\x77\x87\x82\x80\x82\x1e\x74\x70\x65\x7d"
+"\x67\x1b\x3f\x5b\xd6\xf7\x0b\xc4\x9b\xc7\xa0\xa5\x1f\x9f\x9c\xa4\x96\xa8\x1b\xe2\xb8\x35\xfb\x3c\x1f\x0e\xfb\x79\xf7\x1c\xf8\x5f"
+"\x15\x2c\x1d\xfb\xfb\x04\x2c\x1d\x0e\xfb\x79\xf6\xfb\x21\x15\xd0\xad\xb6\xc7\xc7\x1a\xbe\x68\xb1\x5e\x67\x74\x75\x69\x6a\xa1\x78"
+"\xb0\x92\x92\x8c\x8c\x91\x1e\x8d\x90\x8c\x8b\x8c\x1b\x93\x91\x85\x83\x6b\x6f\x66\x55\x66\x1f\xb1\xf8\xd9\x15\x6d\x72\x72\x6b\x6e"
+"\xa4\x72\xa8\xaa\xa5\xa4\xa8\xaa\x71\xa5\x6d\x1f\x0e\xc4\xf8\x7c\xf8\xe8\x15\xfc\x30\xfb\x9c\x05\x85\x07\xf8\x30\xfb\xa8\x05\xf3"
+"\x07\xfb\xc6\xf7\x60\xf7\xc6\xf7\x5b\x05\x0e\xc4\xf8\xaa\xf8\x16\x15\xfc\x8c\x49\xf8\x8c\x06\xfb\x1a\x04\xfc\x8c\x49\xf8\x8c\x06"
+"\x0e\xc4\xd7\xbd\x15\xf8\x30\xf7\x9c\x05\x92\x07\xfc\x30\xf7\xa7\x05\x24\x07\xf7\xc6\xfb\x61\xfb\xc6\xfb\x5b\x05\x0e\x4c\xf7\x88"
+"\xf7\x38\x15\x96\xcf\x9c\xb3\xb0\xb9\xb9\xc3\x8b\x8b\x99\xa0\x08\xab\xbc\x98\xaf\xb4\x1a\xb1\x7e\xaf\x74\xa2\x1e\xae\x69\x50\xa2"
+"\x54\x1b\x2f\x45\x4d\x38\x62\x9b\x76\xab\xa4\x9b\x9b\xa4\x99\x85\x97\x7c\x9c\x1f\x7e\x99\x87\x93\x94\x1a\xab\xb9\xa9\xbb\xc8\xbb"
+"\x56\x48\x5d\x7e\x54\x73\x54\x1e\x6f\x4b\x78\x5a\x81\x5a\x8a\x5f\x19\x95\x48\x15\x6d\x74\x73\x6c\x6e\xa1\x76\xaa\xab\xa2\xa0\xa9"
+"\xa9\x72\xa3\x6d\x1f\x0e\xf8\x32\xf9\x44\xd4\x15\x68\x3d\x58\x7e\x48\x1b\xfb\x3f\xfb\x0d\xf7\x0f\xf7\x43\xe8\xaf\xea\xc4\xc5\x1f"
+"\xbc\xbc\xcd\xa6\xd5\x1b\xf7\x31\xf7\x16\xfb\x0f\xfb\x29\x26\x4c\x2b\x49\x71\x7e\x9a\xaa\x92\x8c\x91\x8c\x90\x1f\xcc\xf7\x92\x05"
+"\x46\x06\x81\x65\x05\xb4\x75\x7c\x96\x68\x1b\x60\x68\x7b\x69\x68\x1f\x57\x56\x6c\x40\x41\x1a\x4c\xb2\x5a\xbc\xb7\xba\xa6\xb8\xad"
+"\x1e\x5f\x91\xb0\x6e\xbb\x1b\xee\xe0\xf7\x03\xf7\x15\xf7\x39\xfb\x23\xf7\x14\xfb\x4d\xfb\x5f\xfb\x36\xfb\x2f\xfb\x57\xfb\x54\xf7"
+"\x34\xfb\x28\xf7\x64\xd1\xbc\x98\xb7\xec\x1f\xfb\x3d\xf8\x39\x15\xa7\x89\x9a\x74\x89\x64\x89\x59\x7a\x51\x72\x5c\x08\x67\x77\x6e"
+"\x75\x70\x1b\x66\x74\xab\xc0\xc1\x9d\xbd\xad\xb1\x1f\xa7\xab\xae\x9f\xa3\x89\x08\x0e\x22\x0a\x0e\xf7\x34\x9c\xf9\x17\x15\xdf\x66"
+"\x1d\x40\x7e\x7f\x39\x88\x08\x78\xf7\xe2\x07\xd8\xd3\xa0\xad\xb0\x1f\xaf\xab\x9f\xb8\xbb\x1a\xb7\x7a\xb3\x6b\xa8\x1e\x6d\xa6\x70"
+"\x97\x4a\x9b\xbf\x98\xa0\x95\xa3\xa0\x08\xa4\xa1\x9a\xaf\xb5\x1a\xf7\x04\x31\xc5\xfb\x40\x1e\xfb\xac\x06\xf7\x5a\xfb\xe4\x15\xec"
+"\xb9\x85\x7c\xaf\x1f\xc4\x74\xa6\x62\x4d\x1a\x55\x76\x64\x63\x74\x1e\x79\x6b\x62\x83\x49\x1b\x5a\x7d\x94\xab\x1f\xf7\xb3\x04\xf7"
+"\x7a\x07\x8c\xa1\x8f\x91\x9c\x8c\xb7\x8c\x18\xf7\x03\x8e\xcc\x58\x32\x1a\x3c\x58\x61\x2b\x8a\x1e\x0e\xf7\x34\x31\x0a\x0e\x6a\x0a"
+"\x0e\xf3\x21\x0a\x0e\xbc\xf8\x73\xf7\x7b\x15\xf7\x7c\x74\x07\x80\x3c\x7a\x7d\x39\x89\x08\xfb\x25\xf7\x72\x06\x8c\xa9\x8e\x8e\xa7"
+"\x8c\x08\xf7\x1c\x54\x1d\xfc\x45\xa5\x0a\xf7\x6e\xf7\x25\x07\xdd\x8a\x9b\x7d\x97\x3a\x08\x0e\x30\x0a\x0e\x69\x0a\x0e\xfb\x42\x28"
+"\x1d\x0e\xfb\x0a\xf8\x06\x21\x1d\xfb\xb3\x78\x06\xdc\x85\x96\x81\x8c\x41\x08\xfc\x63\x07\x5e\x7f\x76\x71\x7d\x85\x93\xa4\x84\x1e"
+"\xae\x81\x7b\x9b\x71\x1b\x70\x75\x74\x70\x61\xb4\x6d\xc5\xf7\x00\xc8\xd3\xf7\x11\x1f\xf8\x06\x07\x8d\xd6\x94\x94\xdc\x91\x08\x0e"
+"\x63\x0a\x0e\xf3\x36\x1d\x0e\xf8\x12\xf9\xf3\x21\x1d\xfb\x5b\x06\xfb\x71\xfc\x8d\xfb\x7b\xf8\x8d\x05\xfb\x5a\x78\x06\xdd\x87\x96"
+"\x80\x8d\x40\x08\xfc\x2a\x59\x1d\xf8\x27\x07\xf7\x8f\xfc\xba\x05\x99\x06\xf7\x94\xf8\xd1\x05\xfc\x59\x07\x8a\x36\x80\x80\x3c\x86"
+"\x08\x78\xf7\xac\x9e\x07\x43\x8f\x7e\x99\x89\xd3\x08\xf8\x50\x07\x8d\xd3\x97\x98\xd4\x90\x08\x0e\x33\x0a\x0e\x23\x0a\x0e\xbc\x9b"
+"\xf9\x17\x15\xd5\x83\x94\x48\x1d\x84\x82\x3f\x84\x08\x78\xf7\xac\x9e\x07\x3c\x8d\x7d\x99\x8a\xd5\x08\xf7\x4a\xd9\x1d\xc7\xab\xaf"
+"\xc8\xcd\x1a\xb5\x7d\xb1\x70\xa8\x1e\xb7\x63\x34\xa7\x2d\x1b\xfb\x9c\x06\xf7\x4e\x44\x15\xa6\x92\x92\xa6\xf7\x1b\xc9\x5c\x24\x2a"
+"\x50\x59\xfb\x07\x77\x7d\x8c\x8d\x74\x1e\x0e\xf9\x51\xfb\x33\x15\xfb\x06\x8e\x3b\xb7\x3a\xf4\xcf\x98\xaf\x9c\xb9\xb3\x08\xd5\xcd"
+"\xb1\xe6\xf7\x03\x1a\xf7\x5d\xfb\x1c\xf7\x24\xfb\x53\xfb\x53\xfb\x1c\xfb\x24\xfb\x5f\x29\xa9\x39\xc6\x4b\x1e\xb2\x61\xab\x77\xd2"
+"\x73\xba\x54\x18\x3b\xcf\xf7\x0d\x61\xf7\x34\x1b\x96\x98\x8b\x8c\x95\x1f\x91\x06\xfb\xe5\xf9\xc5\x15\xb6\xb9\x78\x6c\xae\x1f\xc1"
+"\x5b\xab\x2b\xfb\x05\x1a\x28\x6e\x25\x63\x5d\x1e\x62\x66\x57\x74\x54\x1b\x5b\x5f\x9c\xab\x66\x1f\x57\xba\x6b\xee\xf7\x0a\x1a\xec"
+"\xa8\xec\xb4\xb9\x1e\xb7\xb4\xba\xa0\xc5\x1b\x0e\xf7\x34\x3b\x0a\x0e\xbc\x2f\x0a\x0e\xf3\x53\x1d\x0e\x24\x1d\x0e\xf9\x4d\x21\x1d"
+"\xfb\x61\x78\x06\xc2\x87\x9d\x81\x6f\x1a\x7b\x84\x70\x7f\x6d\x1e\xfb\x27\xfc\x03\xfb\x2b\xf7\xe6\x05\x6a\xd5\x83\xa1\x9a\x1a\x9f"
+"\x99\x94\xab\x8d\x1e\x90\x96\x8c\x8c\x98\x1f\x9e\xfb\x9e\x78\x07\xbc\x89\x99\x7d\xb6\x32\xf7\x8a\xfc\xb9\x18\x9a\x06\xf7\x72\xf8"
+"\xc5\xac\xda\x96\x96\xbb\x8e\x19\x0e\xf8\x49\x32\x1d\x0e\xf9\x4c\x21\x1d\xfb\x82\x78\x06\xc1\x89\x9b\x84\x74\x1a\x7c\x81\x79\x6d"
+"\x67\x1e\xfb\x05\xfb\x1e\x61\xc6\x05\x4e\xe1\x73\xb5\xa1\x1a\x9f\x9a\x93\xac\x8c\x1e\xa7\x8c\x05\x9e\xfb\xc2\x78\x07\xcc\x88\x9d"
+"\x7c\xed\xfb\x1f\xf7\x01\xfb\x34\x18\xfb\x31\xfb\x55\x32\x21\x86\x87\x58\x87\x19\x78\xf7\x7d\x9e\x07\x50\x8f\x7a\x93\xa2\x1a\x9a"
+"\x9a\xa4\xb0\xb9\x1e\xf7\x0b\xf7\x28\xea\xfb\x20\x05\xad\x58\x9c\x6b\x7c\x1a\x79\x7b\x81\x69\x8a\x1e\x87\x80\x8a\x8a\x7f\x1f\x78"
+"\xf7\xbd\x9e\x07\x56\x91\x7c\x95\x60\xc5\xfb\x54\xf7\xa6\x18\xf7\x26\xf7\x4a\xcc\xd9\x9f\x97\xcb\x8f\x19\x0e\x34\x1d\x0e\xf3\x3c"
+"\x0a\x0e\xfb\x42\xf7\xbf\xf9\x11\x15\xa4\xfb\x67\xfd\xc6\xf7\x67\xa4\x35\x07\x69\x8c\x7d\x9a\x8a\xaf\x08\xf9\x34\x07\x8c\xab\x96"
+"\x96\xac\x8c\x08\x0e\xfb\x79\x82\xf9\x38\x15\xf7\x78\xfd\x46\x05\xcf\x06\xfb\x79\xf9\x46\x05\x0e\xfb\x42\xad\xfb\x17\x15\x72\xf7"
+"\x67\xf9\xc6\xfb\x67\x72\xe1\x07\xad\x8a\x99\x7c\x8c\x67\x08\xfd\x34\x07\x8a\x6b\x80\x80\x6a\x8a\x08\x0e\x65\xe8\xf7\xbb\x15\xf7"
+"\x22\xf7\xb3\xf7\x21\xfb\xb3\x05\xcf\x06\xfb\x48\xf7\xfe\x05\x50\x06\xfb\x48\xfb\xfe\x05\x0e\x84\xf8\x87\xfb\x18\x15\xbd\xfc\x85"
+"\x59\x07\x0e\xfb\x42\xf7\x77\xf9\x38\x15\x48\x6a\x5e\x9c\x1d\x0e\x4c\x26\x1d\x0e\x84\xf7\x2d\xf9\x3d\x15\x86\x8d\x62\x7d\x70\x82"
+"\x5b\x7e\x19\x6e\x83\x05\x7b\x07\x8c\x91\x8e\x8b\x93\x1b\xb3\x94\x82\x61\x1f\xfc\x9b\x07\x6c\xdf\x6a\xdc\xf7\x18\xf1\xf7\x02\xf7"
+"\x23\xf7\x10\x3f\xe8\x27\x4e\x51\x68\x59\x77\x1e\x56\x04\xb2\xba\xaf\xbf\xa7\xa4\x81\x78\xa0\x1e\xab\x6c\xa1\x47\x43\x1a\xfb\x03"
+"\x5b\x4b\x39\x57\x5e\xa1\xa5\x1e\x0e\x4c\x35\x1d\x0e\x84\xf8\x7f\x67\x0a\x0e\x4c\x27\x1d\x0e\xfb\x42\xf7\xc9\x26\x0a\xfb\x0f\xf7"
+"\x08\x06\x7b\x0a\xf7\x98\x9a\x07\x39\x8e\x80\x96\xd6\x1a\xf7\xce\xf7\x0e\x07\x0e\x84\x3a\x0a\x0e\x84\x77\x1d\x0e\xfb\x79\x27\x0a"
+"\xf7\x04\xf9\x30\x5b\x1d\xfb\x79\x70\x0a\x58\xf9\x3f\x5b\x1d\x84\x62\x0a\x0e\xfb\x79\x3d\x0a\x0e\xf7\xa3\x9b\x16\xf7\x72\x9a\x06"
+"\x58\x8c\x7b\x96\x8a\xb3\x08\xf7\xae\x07\x8d\x93\x95\x92\x92\x1e\xa2\xa4\xb6\x9c\xae\x1b\xb7\xa1\x68\x45\x1f\xfb\x6d\x07\x89\x52"
+"\x81\x80\x53\x88\x08\x7c\xf7\x74\x9a\x07\x53\x7d\x9b\xcb\x89\x1f\xf7\x90\x07\xb6\xa9\xab\x9d\xba\x1b\xc4\x9d\x70\x38\x1f\xfb\x67"
+"\x07\x89\x50\x85\x84\x51\x85\x08\x7c\xf7\x6f\x9a\x07\x71\x8d\x05\x6b\x90\x80\x9a\xb2\x1a\xf7\x62\x07\xf7\x0a\x64\xc7\x3e\x51\x58"
+"\x71\x51\x55\x1e\xc4\x79\x69\xa6\x55\x1b\x5e\x70\x7e\x4b\x38\x1f\xd6\x07\x84\x8d\x56\x78\x69\x80\x56\x7c\x19\x7a\x07\x8e\x97\x94"
+"\x8c\x96\x1b\xa5\x94\x7b\x5b\x1f\xfb\x91\x07\x53\x89\x7e\x7d\x54\x1b\x0e\x84\x32\x0a\x0e\x84\x24\x0a\x0e\x84\x9f\x1d\x53\x5f\x73"
+"\x54\x5f\x1f\xd8\x07\x85\x8d\x55\x76\x68\x7e\x54\x7a\x19\x7b\x07\x8c\x94\x91\x8b\x95\x1b\xad\x92\x81\x5c\x1f\xfc\x68\x07\x56\x80"
+"\x81\x50\x85\x1e\xf7\x2e\xf8\xaa\xa3\x0a\x84\xf7\xfc\xf8\x3d\x15\xa5\x5e\x6d\x94\x63\x1b\xfb\x12\x2c\xfb\x03\xfb\x25\xfb\x11\xcd"
+"\x32\xe9\xc5\xc2\xa5\xbb\xb7\x1f\xfb\x50\x07\x8a\x53\x79\x7b\x45\x87\x08\x7a\xf7\x80\x99\x07\x55\x97\x84\x92\x89\xb6\x08\xf8\xe9"
+"\x07\x80\x8c\x05\x42\xfb\xde\x15\x73\x87\x7e\x81\x82\x1e\x79\x75\x6a\x7f\x6c\x1b\x6c\x70\x95\x9e\x77\x1f\x6b\xa9\x76\xcb\xce\x1a"
+"\xf7\x0a\xc0\xd4\xe0\xc9\xaa\x6a\x49\x1e\x0e\xfb\x42\x40\x1d\x0e\xfb\x0a\x4a\x0a\x0e\xfb\x79\x74\x0a\x0e\x84\x25\x1d\x0e\x84\xf8"
+"\x71\x26\x0a\xfb\x1f\x7c\x06\xab\x88\x9a\x81\x78\x1a\x81\x89\x81\x87\x81\x1e\x28\xfb\x97\x25\xf7\x94\x05\x85\x99\x88\x99\x94\x1a"
+"\x9d\x96\x92\xae\x8e\x1e\x9a\xfb\x58\x7c\x07\xb1\x89\x92\x81\xb9\x24\xf7\x0c\xfb\xb3\x18\x8d\x85\x8e\x84\x8e\x83\x8e\x83\x8e\x84"
+"\x8e\x86\x08\x87\x8d\x8f\x89\x8e\x1b\x91\x92\x98\xb0\x9a\x1f\xf7\x14\xf7\xd5\xa8\xcf\x91\x92\xa9\x8e\x19\x0e\x31\x1d\x0e\x84\xf7"
+"\xaa\x16\xf7\x5d\x9a\x06\x6c\x77\x9b\xb7\x6c\x1f\xfb\x14\xf7\x58\xde\xf7\x0c\x9e\xa6\xa8\x9a\xac\x8d\x19\x9a\xfb\x32\x7c\x07\xa9"
+"\x89\x95\x85\x7d\x1a\x7f\x7f\x75\x72\x6c\x1e\x86\x85\x7f\x79\x7e\x77\x83\x97\x18\x7c\xa2\x82\x98\x89\x8f\x08\x78\xaa\x84\x9b\x95"
+"\x1a\x9a\x98\x91\xa9\x8c\x1e\x9a\xfb\x63\x7c\x94\x07\xa9\x9b\x7e\x5c\xaa\x1f\xe9\xfb\x24\xfb\x06\xfb\x39\x6d\x62\x81\x84\x6a\x88"
+"\x19\x7c\xf7\x25\x9a\x07\x6e\x80\x90\x98\x92\x91\x98\x99\xa0\x1f\xda\xf7\x0f\xe6\xfb\x20\x05\x8f\x85\x8d\x86\x84\x1a\x79\x84\x87"
+"\x6a\x89\x1e\x0e\x84\x33\x1d\x0e\x4c\x34\x0a\x0e\x70\xf7\xf2\xfb\x3e\x15\x47\x9b\x75\xaa\x8a\xd7\x08\xf7\x3c\x07\x8a\xe0\x78\xa4"
+"\x41\x9d\xd5\x9e\x9e\xa5\x8c\xdf\x08\xf7\x3c\x07\x8c\xd7\xa1\xaa\xcf\x9b\x08\x96\x07\xfb\x10\x64\x6a\x21\x89\x1f\xfb\x46\x07\x8a"
+"\x45\x79\x72\x49\x79\xcd\x78\x9d\x72\x8c\x45\x08\xfb\x45\x07\x20\x8e\xb1\x6a\xf7\x10\x1b\x0e\xfb\xc7\xce\xfb\x8d\x15\xcd\xfa\x7a"
+"\x49\x06\x0e\x70\xf7\x16\xf9\x31\x15\xce\x7b\xa2\x6c\x8c\x3f\x08\xfb\x3c\x07\x8c\x36\x9e\x72\xd5\x79\x41\x78\x78\x71\x8a\x37\x08"
+"\xfb\x3c\x07\x8a\x3f\x74\x6c\x48\x7b\x08\x80\x07\xf7\x10\xb2\xac\xf5\x8d\x1f\xf7\x46\x07\x8c\xd1\x9d\xa4\xcd\x9e\x49\x9d\x79\xa4"
+"\x8a\xd1\x08\xf7\x45\x07\xf7\x00\x88\x65\xab\xfb\x10\x1b\x0e\xad\xf8\x53\xf7\xce\x15\x64\x72\x79\x7f\x6d\x1b\x76\x76\x90\x94\x7a"
+"\x1f\xba\x33\x78\x92\x5f\x1b\x5d\x6e\x77\x4a\x5c\x1f\xc1\x6c\x05\xb2\xa4\x9c\x97\xaa\x1b\xa0\x9f\x86\x82\x9d\x1f\x5b\xe3\x9d\x85"
+"\xb8\x1b\xb9\xa7\x9f\xcc\xbb\x1f\x0e\xfb\x42\xf7\x24\xf7\xae\x15\x5e\xfc\x13\x05\x8a\x7f\x8a\x7e\x7f\x1a\x57\x9e\x6f\xad\xac\x9f"
+"\xa8\xbc\xad\x83\xd2\x7f\xd2\x1e\x84\xb8\x85\xb9\x87\xba\x82\xf7\x00\x18\x85\xf7\x4d\x15\x6c\x74\x76\x6e\x6c\xa2\x73\xa9\xaa\xa3"
+"\xa3\xa9\xa8\x73\xa1\x6d\x1f\x0e\x84\xf8\x27\xf8\xd7\x15\x68\x06\x5f\xfb\x10\x05\x8f\x73\x7e\x8c\x7d\x1b\xfb\x10\x2b\x21\xfb\x1b"
+"\x54\x9c\x55\xa8\x64\x1f\x9d\x72\x9a\x7e\xb0\x76\x58\xfb\x2a\x18\xad\x06\xbc\xf7\x1e\x05\x84\xa3\x9a\x89\x9c\x1b\xb1\xb0\x99\xa3"
+"\xa7\x1f\xae\xa9\x9e\xa6\xad\xd1\x7e\x93\x18\x40\x57\x67\x72\x50\x1b\x77\x7b\x8e\x94\x74\x1f\xf0\xf7\xb7\x05\x64\x9d\x9a\x7e\xa4"
+"\x1b\xa4\x9d\x9d\xa6\xae\x70\xa9\x5b\x9e\x1f\xfb\x32\xfb\xee\x15\x5a\xb8\x78\xb8\xd3\x1a\xf1\xc1\xcf\xdd\x9c\x97\x89\x84\x9d\x1e"
+"\x0e\x84\xf7\xec\xf8\x09\x15\xfb\x11\x06\x82\xd5\x89\xa6\xaf\x1a\xe3\xae\xbe\xc7\xb0\x9e\x7a\x68\x1e\x56\x8c\x93\x7d\xa9\x1b\xa8"
+"\xa0\xa1\xaa\xc0\x54\xb3\x40\xfb\x0c\x40\x31\xfb\x24\x72\x8d\x79\x90\x71\x1f\x20\x5e\xf7\x00\x06\x8d\x7a\x8d\x7b\x05\x96\x3f\x91"
+"\x54\x79\x1a\x84\x8a\x85\x89\x83\x1e\x8f\x78\x7f\x8c\x7c\x1b\x54\x67\x6d\x5d\x65\xa5\x73\xb5\xae\xa2\x99\xbb\xb3\x1f\x5c\xcf\xac"
+"\x7d\xb6\x1b\xbb\xb8\xa0\xb0\xab\x1f\xa0\xa3\xa1\xb7\x9d\x1a\x8e\x89\x8c\x87\x85\x84\x86\x80\x81\x1e\x69\x6c\x67\x7c\x5d\x1b\x5a"
+"\x68\x93\xa6\x4a\x1f\xa1\xf7\x01\x8e\x9f\xac\x1a\x8b\x8b\x98\x8a\x9a\x1e\x8a\xa6\x05\xf7\x0e\x06\xfb\x93\xfb\x7e\x15\xa4\xa7\x81"
+"\x83\x83\x85\x7e\x80\x7f\x1f\x7a\x7e\x7e\x85\x77\x1b\x73\x7a\x9a\xa1\xa3\x9c\x98\xad\x1f\x0e\xfb\xe8\xb4\x0a\x84\xf7\xf7\x9e\x15"
+"\x4c\x8c\x7b\x9c\x8a\xd3\x08\xd4\xf7\x41\xb3\xfb\x41\xd7\x07\x92\x99\x05\xf7\x3a\xb3\xfb\x26\x06\xe7\xf7\x4c\xb0\xd0\xa9\xa6\xbe"
+"\x96\x19\x9e\xfb\x57\x78\x99\x07\xa9\xa0\x7f\x78\x81\x86\x7a\x82\x7a\x1f\xfb\x04\xfb\x70\xfb\x0a\xf7\x71\x05\x83\x9a\x86\x9c\x98"
+"\x1a\xa0\x9d\x93\xba\x1e\x9e\xfb\x87\x78\x07\xb9\x89\x9c\x7a\xc2\x28\xea\xfb\x41\x18\xfb\x24\x63\xf7\x3b\x06\x92\x7d\x05\x3f\xfb"
+"\x42\x63\xf7\x42\x4d\x07\x8a\x37\x80\x7d\x48\x88\x08\x78\xf7\x88\x07\x0e\x84\xf8\x44\xf8\x2b\x15\xfb\x12\x06\x8e\xac\x8e\xa5\x8d"
+"\x9c\x90\xc2\x98\xba\x9e\xae\x08\x9c\x94\x9d\x95\xa0\x1b\x97\x93\x86\x84\x88\x89\x86\x88\x85\x1f\x86\x82\x88\x82\x85\x1a\x79\x9d"
+"\x7b\x9f\xa4\xa0\x9f\xa4\xb1\x65\xa9\x5c\x61\x60\x74\x66\x71\x1e\x65\x52\x7a\x5b\x7b\x23\x08\x20\x06\x81\x6c\x05\xf7\x03\x06\x89"
+"\x7c\x80\x48\x8a\x87\x85\x53\x86\x56\x19\x7c\xfb\x40\x05\xfb\x09\x81\x70\x52\x5d\x1b\x7f\x83\x90\x93\x8e\x8d\x8f\x8f\x92\x1f\x91"
+"\x95\x8e\x93\x94\x1a\xa1\x7d\x99\x75\x70\x78\x79\x70\x63\xac\x6e\xba\xc2\xb2\xab\xd4\xac\x1e\xaa\xd1\x9c\xdb\xa3\xf7\x4d\x8d\x9c"
+"\x92\xc4\x92\xbe\x08\xf7\x0c\x06\x0e\x84\xf7\xca\xf7\x11\x15\xcf\xbb\xbd\xd1\xc0\x6c\xc1\x51\xbb\x1f\xfb\x1d\xf7\x05\x05\x77\x9c"
+"\x7d\xa7\xa5\x1a\xb5\xad\xa8\xbe\xae\xa6\x7d\x79\x88\x89\x88\x85\x86\x1e\x7b\x80\x81\x7a\x7b\x1a\x72\x9e\x79\xa7\xab\x9e\x9f\xac"
+"\xc3\x54\xb5\x42\x38\x53\x5a\x42\x55\x9e\x6d\xdc\x49\x1e\x8c\x81\x82\x8b\x85\x1b\x49\x5a\x58\x47\x41\xbc\x4c\xf7\x0e\x37\x1f\xcc"
+"\x5f\xa3\x6b\x64\x1a\x5c\x69\x6d\x56\x66\x69\x9c\x9d\x8f\x8f\x90\x92\x91\x1e\x9a\x98\x93\x99\x99\x1a\xa3\x76\x9d\x70\x6c\x74\x74"
+"\x6c\x53\xc7\x5f\xd9\xe2\xc4\xbe\xd7\xbf\x78\xa8\x40\xcc\x1e\x26\xf7\x96\x15\xaa\xbf\x6c\x5c\xba\x1f\xad\x69\x9e\x6a\x71\x1a\x68"
+"\x6b\x6c\x66\x65\x66\xa2\xc7\x4e\x1e\x69\xad\x7f\xa2\xa9\x1a\xb2\xa7\xa7\xb3\x1e\x0e\x84\x75\xf7\x00\x15\xbd\x59\xeb\xed\x05\x6e"
+"\xb5\xb1\x7f\xba\x1b\xba\xb1\x98\xa7\xb3\x1f\xed\x29\xbb\xbd\x2b\xeb\x05\xa8\xb8\x95\xad\xbb\x1a\xbc\x81\xac\x6e\xb6\x1e\xeb\xed"
+"\x5b\xbb\x29\x2b\x05\xa6\x64\x66\x97\x5a\x1b\x5b\x68\x80\x6f\x5f\x1f\x2b\xeb\x59\x5b\xed\x29\x05\x6e\x63\x7f\x65\x5b\x1a\x5b\x97"
+"\x67\xa8\x61\x1e\xf7\x45\xf7\xa9\x15\xda\xcc\x47\x39\x36\x4a\x48\x3a\x39\x49\xcf\xde\xe0\xcd\xcd\xdf\x1f\x0e\xfb\xdb\xf0\xf8\x43"
+"\x15\x8e\x9d\x8d\x98\x8d\x94\x08\x9b\xd7\x94\xc7\xa8\x1a\xa1\x78\x9d\x74\x73\x78\x79\x74\x7a\x99\x31\x9d\x2a\x1e\x0e\x4c\xf7\x2f"
+"\xf9\x38\x15\x47\x6a\x5f\x9c\x1d\xf7\x73\x9e\x15\x47\x6a\x5f\x4e\x4f\x1a\x58\xae\x65\xb8\xae\xa3\xa2\xad\xab\x75\x9e\x66\x84\x84"
+"\x8a\x8a\x85\x1e\x89\x86\x8a\x8b\x8a\x1b\x83\x85\x91\x93\xac\xa6\xae\xc2\xb1\x1f\x0e\x84\xb5\xf7\x72\x52\x1d\x89\x8a\x85\x85\x80"
+"\x82\x08\xf7\x13\x50\x52\x1d\x88\x89\x18\x86\x86\x86\x86\x85\x87\x08\x0e\xfb\x42\xca\xf7\x72\x52\x1d\x89\x8a\x85\x85\x80\x82\x08"
+"\x0e\xfb\x42\xf7\xa2\xf7\x72\x15\x4a\xc6\x85\x8f\x86\x90\x86\x90\x19\x88\x8d\x82\x93\x81\x94\x86\x8f\x19\x6e\xa5\x6c\xa9\x8a\x8e"
+"\x08\xa0\x7a\x77\x9d\x85\x1b\x86\x86\x86\x86\x7e\xa4\x63\xa8\x67\x1f\xac\x64\x9c\x76\x4e\x0a\x0e\xbc\xaa\xf8\x35\x15\xcf\xfb\xd7"
+"\x06\xa3\x1d\x85\x83\x4d\xeb\x1d\x98\x8a\xcc\x08\xf7\x9a\x07\x97\x8b\x9a\x8c\x9e\x1e\x8c\xbf\x87\x8e\x05\x84\x63\x6b\x88\x62\x1b"
+"\xfb\x31\xb6\x06\x8a\xb0\x8f\xb2\x90\x9b\x08\xb6\x98\xb3\xa9\xb8\x1b\xa7\x9d\x7f\x68\xa4\x1f\x70\x9e\x98\x81\x9c\x1b\xa0\x9a\x9b"
+"\xa2\xb6\x59\xa6\x3e\x3f\x51\x71\x5a\x67\x1f\x6d\x62\x80\x66\x85\x3b\x08\x46\x06\x0e\xbc\xab\xf8\x36\x15\xd0\xfb\xcd\x06\xad\x1d"
+"\x7b\x58\x88\x78\x0a\x44\x06\xf7\xe9\xb4\x1d\x8c\x91\x90\x1f\x0e\x84\xf7\x8e\x04\x5a\xf8\x88\xbc\x07\x0e\x84\xf7\x9a\xfb\x29\x15"
+"\x8c\xf7\x0f\x8d\xf7\x12\x98\xeb\xa4\xc4\x19\x6e\xaa\x7e\xc3\xed\x1a\xad\x88\x9b\x88\xb4\x7b\x08\x84\x9f\x9f\x86\x97\x1b\xa1\x9b"
+"\x9d\xa4\xa4\x7a\x9e\x75\x7f\x79\x86\x83\x78\x1f\x61\x7a\x7c\x87\x67\x8a\x08\xc0\x8f\xa4\x75\x0a\x08\x28\x7e\x54\x6e\x6c\x1e\xa1"
+"\x54\x9d\xfb\x0c\x8d\x23\x8c\xfb\x0f\x18\x0e\x84\xf7\x99\xf8\x5c\x15\xc1\x8f\xa3\x75\x0a\x8c\x34\x7f\x57\x6d\x64\xa8\x70\x97\x59"
+"\x8a\x29\x69\x8e\x7c\x8e\x61\x9b\x08\x92\x77\x77\x90\x80\x1b\x74\x7b\x7a\x71\x71\x9b\x79\xa3\x95\x9e\x90\x93\x9e\x1f\xb5\x9c\x9a"
+"\x8f\xaf\x8c\x08\x56\x87\x72\x77\x59\x1e\x84\x78\x86\x7a\x81\x1a\x73\xa1\x75\xa3\xa4\xa1\xa1\xa3\x95\x86\x9c\x84\x9e\x1e\x77\xbd"
+"\x87\xa4\xc0\x1a\xaf\x8a\x9a\x87\xb5\x7a\x08\x83\x9e\x9e\x86\x95\x1b\xa2\x9c\x9d\xa4\xa6\x7b\x9c\x74\x7f\x78\x86\x84\x77\x1f\x61"
+"\x7b\x7c\x88\x69\x88\x08\xec\x95\xb7\xaa\xad\x1e\x6c\xb0\x81\xb7\x8c\xec\xad\x88\x9b\x88\xb4\x7b\x08\x84\x9f\x9f\x86\x97\x1b\xa1"
+"\x9b\x9d\xa3\xa5\x7b\x9e\x74\x80\x79\x86\x83\x77\x1f\x61\x7a\x7c\x87\x67\x8a\x08\x0e\xfb\x95\xf7\x11\xf7\xca\x2b\x0a\x55\xf7\x82"
+"\xf9\x14\x15\xc5\xfd\xae\xf7\x2e\xa1\x06\x5e\x0a\xf8\xe7\x07\x8c\xd4\x95\x95\xd8\x92\x08\x9e\xfb\x9b\x07\xfb\x27\x4d\x54\xfb\x16"
+"\x3a\xa2\x52\xba\x6b\x1f\xac\x73\xa7\x84\xca\x88\x08\xfb\xc4\x46\x0a\x75\xf7\x2e\x07\x49\xf8\x55\x15\x35\x94\x6b\xbe\xf7\x11\x1a"
+"\xd3\x99\xb8\xa8\xa0\x1e\x9d\x98\x9c\x91\xb3\x8e\x08\x0e\xfb\x31\xf7\x42\xf8\x63\x15\x41\x50\x50\x41\x3f\xc6\x50\xd6\xd4\xc8\xc7"
+"\xd3\xd8\x50\xc6\x3f\x1f\x0e\xfb\x42\xf5\xfb\x21\x25\x0a\x4c\xd3\xfb\x21\x15\xcf\xac\xb7\x8f\x0a\x67\x55\x65\x1f\xf7\x85\x78\x15"
+"\xcf\xac\xb7\x99\x1d\x4c\xc4\xf8\x45\x4d\x0a\xf7\x85\x78\x15\xce\xac\xb8\xc8\xc7\x1a\xbe\x68\xb1\x5e\x68\x73\x74\x69\x6b\xa1\x78"
+"\xb1\x40\x0a\x6f\x67\x55\x66\x1f\x0e\x84\xf8\x5e\xf7\x72\x15\x4a\xc6\x80\x94\x85\x91\x89\x8c\x19\x81\x94\x83\x92\x85\x90\x6e\xa5"
+"\x6c\xa9\x8a\x8e\x08\xa0\x7b\x76\x9d\x85\x1b\x86\x86\x86\x86\x7e\xa3\x63\xa9\x67\x1f\xab\x65\x9d\x75\x4e\x0a\xfb\x35\xa6\x15\x4a"
+"\xc6\x85\x8f\x86\x90\x86\x90\x19\x88\x8d\x82\x93\x81\x94\x86\x8f\x19\x6e\xa5\x6c\xa9\x8a\x8e\x08\xa0\x7a\x77\x9d\x85\x1b\x86\x86"
+"\x86\x86\x7e\xa4\x63\xa8\x67\x1f\xac\x64\x9c\x76\x4e\x0a\x0e\xf8\x81\xf7\x3a\xef\x15\x2c\x1d\xf7\xe1\x16\x6d\x72\x72\x6b\x6e\xa4"
+"\x72\xa8\xaa\xa5\xa3\xa9\xaa\x71\xa5\x6d\x1f\xf7\xe1\x16\x6c\x73\x72\x6b\x6e\xa4\x72\xa8\xaa\xa5\xa3\xa9\xaa\x72\xa5\x6c\x1f\x0e"
+"\xf8\x81\xf8\xcb\xf9\x56\x15\x5f\x06\x33\x30\x7c\x82\x51\x1b\x62\x76\x94\xa9\x66\x1f\xa1\x70\x7f\x91\x76\x1b\x25\x30\x27\xfb\x05"
+"\x3d\xbe\x50\xce\xad\xa7\x98\xa8\xa8\x1f\xb9\xb9\xa8\xd3\xce\x1a\x9b\x8a\x96\x88\x9c\x1e\x80\xab\x9d\x88\xa5\x1b\xc0\xaa\x99\xb6"
+"\xb0\x1f\xfc\x1e\xfd\x26\x05\xba\x06\xc8\xf9\x2f\x15\x9c\x7a\x98\x81\x99\x84\x08\xa0\x81\x8f\x84\x6e\x1a\xfb\x07\x4d\x26\x45\x69"
+"\x74\xa7\xb5\xc4\x9d\xc8\xac\xbd\x1e\x9e\xa8\x96\x95\xb2\x9e\x08\xf7\xe6\xfb\xd3\x15\x2b\x2e\x23\x20\x3d\xc0\x4f\xcf\xe1\xd9\xf7"
+"\x03\xf7\x0d\xd5\x68\xb6\x4e\x1f\x97\x6f\x15\xaf\xa4\x67\x57\x22\x49\x26\x47\x6b\x73\xa8\xb3\xce\xad\xe3\xb7\xba\x1f\x99\x98\x9e"
+"\x94\x9e\x1b\xf7\xf2\xa7\x15\x2b\x2e\x23\x21\x3c\xc0\x4f\xcf\xe1\xd9\xf7\x03\xf7\x0d\xd5\x68\xb6\x4e\x1f\x96\x6f\x15\xb0\xa4\x67"
+"\x57\x22\x49\x26\x47\x6a\x74\xa9\xb4\xc2\xa9\xe2\xad\xb5\x1f\xa6\xa0\x9f\x97\xa2\x1b\x0e\x4c\xf7\x5c\xf7\xba\x15\x7d\x3a\x79\x68"
+"\x4c\x41\x08\x58\x4d\x73\x55\x58\x1a\x65\x98\x67\xa2\x74\x1e\x68\xad\xc6\x74\xc2\x1b\xe7\xd1\xc9\xde\xb4\x7a\xa0\x6c\x72\x7b\x7b"
+"\x72\x7d\x91\x7f\x9a\x7a\x1f\x97\x7d\x90\x83\x82\x1a\x6b\x5d\x6d\x5b\x4e\x5b\xc0\xce\xb9\x98\xc2\xa3\xc2\x1e\xa7\xcb\x9e\xbb\x95"
+"\xbd\x8c\xb7\x19\x82\xf7\x40\x15\x6b\x75\x76\x6e\x6b\xa2\x74\xa9\xaa\xa3\xa3\xa9\xa8\x74\xa1\x6c\x1f\x0e\xfb\x42\xf7\x86\xf8\x8f"
+"\x29\x0a\xfb\x42\xf7\x19\xf8\x8f\x3a\x1d\xfb\x42\xf7\xd6\xf8\x8f\x20\x1d\xfb\x42\xf7\xc2\xf9\x12\x4b\x0a\xfb\x42\x96\xf8\xed\x23"
+"\x1d\xfb\x42\xf7\xaa\xf9\x2c\x15\x3f\x6f\x72\x39\x1d\xfb\x42\xf7\x3a\xf9\x03\x43\x1d\x0e\xfb\x42\xcd\xf9\x03\x41\x1d\xfb\x42\xf7"
+"\x3a\xf9\x5b\x42\x1d\xfb\x42\xed\x28\x15\x92\x86\x05\x8e\x93\x94\x8c\x96\x9b\x1d\xa4\xcc\x05\x68\x06\x0e\xfb\x42\xf7\x55\xf8\x8f"
+"\x15\x4a\x1d\x9b\x1a\x9f\x7e\x97\x76\x7b\x44\x0a\xfb\x08\x16\x5f\x1d\xfb\x42\xf7\x79\x42\x15\x70\x6c\x78\x82\x76\x1b\x75\x7b\x9b"
+"\xa3\xa2\x98\xa0\xaa\xa4\x1f\x5d\x06\x65\x6d\x7b\x70\x6a\x1a\x61\xaa\x6a\xb5\xb4\xad\xa2\xc0\xb0\x1e\x0e\xfb\x42\xf7\xd6\xf9\x36"
+"\x20\x0a\xf8\x81\xf0\x1d\xf8\x12\x6e\x1d\x0e\xfb\x7b\xf7\xa2\xf8\x4e\x15\x82\x81\x83\x88\x81\x1b\x80\x89\x91\xa8\x1f\xf7\x07\x07"
+"\xcb\x68\xab\x45\x4c\x5e\x6f\x64\x79\x99\x7e\x9d\x9c\x99\x97\x98\x8d\x8b\x8e\x8a\x8e\x1e\x8a\x90\x8a\x90\x8f\x1a\x97\xa1\x96\xa2"
+"\xa2\x98\x7c\x70\x1e\x6d\x07\xfb\x14\x5c\x72\x78\x5b\x1a\x63\xa9\x6f\xb4\xaa\xa5\x98\xaa\xad\x1e\x6b\x91\x97\x7f\xa6\x1b\xa2\x97"
+"\x91\xa3\xa3\x1f\xfb\x04\xbd\x15\x83\x87\x84\x84\x84\x1e\x83\x7a\x7f\x88\x7e\x1b\x76\x7a\x9f\xa3\xa5\x9f\x9a\xd2\xa4\x1f\x0e\xf3"
+"\xee\xf7\xd9\x15\x34\x59\x05\x5a\x07\xe2\xbd\x05\xfb\x3b\xa0\x1d\xf7\x93\x07\xf7\x2f\xe4\x05\xbc\x07\xfb\x2f\x32\x05\xf7\x3d\x07"
+"\x8d\xd4\x98\x98\xd9\x8f\x08\x9e\xfb\xae\x78\x07\xd4\x86\x97\x7e\x8d\x43\x08\x0e\x64\x0a\x0e\xf8\x12\xf9\xda\xf8\x9d\x15\xf7\x21"
+"\xfb\xda\x07\x75\x70\x8c\x8d\x5e\x1f\x80\x06\x8e\x5b\x8a\x8b\x7c\x1b\x38\x40\x71\x5a\x54\x1f\x4c\x53\x66\x27\xfb\x07\x1a\xfb\x00"
+"\xa9\x37\xc7\x50\x1e\x59\xbd\xcf\x70\xd4\x1b\x9a\x9f\x8c\x8c\xa3\x1f\x9a\x06\x9a\x8c\x05\x8e\xb5\x93\x8b\xb4\x1b\xf7\xf2\x06\xb7"
+"\xf7\x3c\x05\x73\x06\x58\x2c\x67\x6c\x4c\x89\xfb\x10\x89\x18\x5c\x8c\x84\x91\x89\xb2\x08\xf7\x89\x07\xf7\x1e\x8c\xd1\x89\xa0\x76"
+"\x92\x3e\x19\xa0\xf7\x7e\x76\x06\x84\x3b\x78\x7d\x21\x88\x23\x8a\x18\xf7\x80\x07\xa0\x90\x8c\xc7\x8d\x1e\xbe\x06\xf7\x16\xa5\x7b"
+"\x32\x97\x1f\xfc\x14\xfc\x1a\x15\x44\x6e\x6e\x44\xfb\x0f\x49\xf2\xf7\x53\xf7\x58\xd0\xf7\x03\xf7\x0d\xd0\xa9\x6b\x42\x1e\x0e\xfb"
+"\x59\xf7\x33\xf9\x38\x15\x2f\x4e\x52\x35\x3a\xc8\x51\xdf\xe3\xcc\xcb\xdf\xda\x4f\xc2\x36\x1f\x82\x6a\x15\xbb\xac\x56\x3f\x53\x72"
+"\x6c\x5d\x72\x78\x97\xa1\x7f\x1f\x7b\xa7\x82\xb4\xb2\x1a\xb8\xa7\xa8\xb6\x1e\x0e\xf7\x34\xf9\x00\xf7\x2e\x15\x44\x5b\x64\x71\x52"
+"\x1b\x62\x65\x9f\xa9\x7b\x1f\x75\xb2\x86\xaa\xef\x1a\xf7\x9a\x06\xf7\x15\x7f\x5c\xc1\x26\x1b\x5c\x70\x81\x68\x5e\x1f\xad\x64\x6e"
+"\x96\x59\x1b\x31\x46\x5c\x4e\x6d\x9c\x79\xa6\xa7\x9a\x9c\xaa\x8f\x8b\x92\x8a\x91\x1f\x8a\x96\x05\x91\x07\xac\x8d\xa2\x9c\xb6\x1b"
+"\xa3\x9e\x83\x7d\x92\x1f\x92\x7b\x90\x6c\x74\x1a\x89\x4c\x35\x67\x05\x20\x5f\x61\x62\x4f\x1a\x4a\xbb\x5e\xcf\xbd\xad\x9b\xc4\xcf"
+"\x1e\x57\xad\xb0\x76\xc5\x1b\xb9\xb5\x9b\xab\xae\x1f\xa7\xa3\x9d\xa7\xa7\xc6\x08\xfb\xfa\xbf\x15\x8c\x66\x91\x66\x96\x67\x08\x8c"
+"\x8a\x8b\x8a\x8a\x1a\x79\x4a\x6b\x67\x66\x6d\xb2\xbb\xc7\xa6\xa3\xf7\x0d\xb7\x1e\xdd\xc1\x15\xe3\x90\xa4\xaf\xc4\x1b\xc1\xa2\x66"
+"\x34\x8d\x1f\x0e\xfb\x79\x27\x0a\x0e\xfb\x79\xed\x8f\x1d\x80\x44\x7a\x43\x0a\x0e\x84\x68\x0a\xa1\x81\x71\xa6\x1e\x0e\xf9\x3b\xf7"
+"\x25\x15\x4b\x5c\x68\x73\x5b\x1b\x66\x68\x9f\xa9\x79\x1f\x71\xb9\x82\xb0\x87\xe2\x08\xf7\x92\x06\x88\xc9\x83\xa7\x74\xaa\x08\xb2"
+"\x6f\x5c\xa2\x58\x1b\x54\x69\x77\x53\x62\x1f\xc3\x59\x63\x9f\x4d\x1b\x59\x60\x7a\x6c\x69\x1f\x5d\x60\x6e\x40\x3f\x1a\xfb\x19\xe0"
+"\x2c\xf7\x0d\xcf\xb4\xa5\xd0\xb1\x1e\x47\xa9\xaf\x70\xc9\x1b\xd9\xbb\xb3\xf7\x01\xc0\x1f\xfc\x61\xf7\xb8\x15\xd4\xb4\x37\xfb\x28"
+"\xfb\x0c\x68\x4c\x47\x3c\x62\xe1\xf7\x3d\xbf\x99\xc1\x9f\xa0\x1f\xa1\xa1\xa3\x96\xa8\x1b\xf7\x52\xfb\x10\x15\xde\x8c\xa6\xb4\xc0"
+"\x1b\xb9\xac\x62\x53\x1f\x70\x07\x0e\x84\x97\x16\xf7\x25\xf8\xb9\x06\xcc\xad\xb5\xbf\xc4\xad\x57\x33\x3c\x6d\x62\x4a\x84\x1e\x76"
+"\x89\x83\x87\x82\x1a\x80\x94\x86\xa2\x8a\x1e\xe3\x88\xb7\x46\xfb\x1b\x1a\x36\x75\x5e\x61\x78\x83\x93\xa1\x89\x1e\x89\xa1\x05\xa2"
+"\x89\x79\x9c\x75\x1b\x71\x78\x76\x70\x60\xb3\x6d\xc4\xf0\xd9\xe0\xf7\x02\xc4\x75\xbb\x63\xae\x1f\x6b\xa7\x6e\x97\x4e\x96\x08\xf6"
+"\xbc\xa9\xac\xd3\x1a\xe8\x49\xc6\x23\x47\x58\x71\x58\x6e\x1e\x76\x66\x82\x5e\x45\x1a\xfc\x06\x07\x89\x54\x82\x80\x59\x88\x08\x0e"
+"\xfb\x63\xf7\x8c\xf7\xba\x15\x5f\x8d\x7f\x93\x8a\xa5\x08\xf7\xeb\x07\x7d\x8e\xfb\x0a\x54\x05\x74\x07\x94\xa4\x99\x8f\x8f\x1b\x91"
+"\x8d\x85\x75\x1f\xfb\x95\x07\x8a\x74\x81\x84\x61\x89\x08\x73\xf7\x53\x07\x0e\xc4\xa9\xf8\x22\x15\x3b\xf8\x3c\xfb\x69\xdb\xf7\xb9"
+"\x07\x0e\x84\xf8\x40\xf8\x53\x15\x34\xfb\xe1\x06\x63\x73\x64\x75\x5d\x1b\x57\x6b\xad\xc4\x1f\xf7\xc4\x34\xfc\x1d\x07\x76\x89\x79"
+"\x81\x51\x1e\x84\x63\x86\x60\x76\x1a\x5f\x9c\x71\xa8\xa9\x9a\xa5\xbe\xa7\x86\xa6\x7e\xbf\x1e\x7f\xbc\x89\x96\x87\xb0\x08\x57\xa9"
+"\xae\x75\xbe\x1b\xc1\xb5\xa6\xc9\xb3\x1f\x4d\x8d\xa1\x70\xbb\x1b\xb1\xa2\x99\xb6\xab\x1f\x93\x07\x75\x74\x80\x85\x7c\x1b\x75\x81"
+"\x9e\xb8\x1f\x0e\xf8\x6d\xf7\x82\xf9\x16\x15\xbd\x06\xae\x8a\x9f\x77\x97\x5c\x08\x9f\xe3\xfb\xed\x33\x9f\x06\x97\xba\x9f\x9f\xaf"
+"\x8c\x08\xbc\xfb\xca\x06\x69\x89\x83\xc4\x0a\xf7\x3f\xb5\x0a\xf8\x3f\x3f\x15\x96\x06\xf7\x2e\xf7\xcc\x05\xfb\x80\x07\x68\x8a\x84"
+"\xc4\x0a\xf7\x3e\xb5\x0a\xf7\x93\x07\xb2\x99\x98\xb5\x8e\x1e\x9f\x24\x07\xfb\x34\xfb\xc9\xfb\x2e\xf7\xc9\x05\xfb\x0d\x77\x06\xa9"
+"\x8a\xa5\x78\x98\x6d\x08\xfb\x8d\x07\x8a\x5a\x82\x7f\x61\x87\x08\x77\xf7\x17\x9f\x07\x60\x8f\x82\x97\x8a\xbc\x08\xf7\x73\x07\x0e"
+"\x73\x1d\xf7\x87\xf8\xec\xf9\x38\x2c\x0a\xd3\x80\x0a\xf8\xa0\xfb\x4d\xcc\x1d\xc7\xa2\xb4\xbe\x1d\xa6\xa1\xb0\x1b\xb3\xac\x69\x61"
+"\x6d\x6c\x57\x59\x54\xcc\x0a\xc4\xa9\x16\xf8\x8c\xcd\xfc\x8c\x06\xf7\x6f\xf7\xae\x15\xfb\x6f\x49\xf7\x6f\xfb\x34\xcd\xf7\x34\xe7"
+"\x1d\xbc\xf7\xbc\x9e\x15\x3c\x8d\x7d\x99\x8a\xd5\x08\xbf\x07\x89\xa5\x9c\x8a\xa5\x1b\xda\xc0\x95\xa3\xb6\x1f\xc6\xab\xb0\xc8\xcd"
+"\x1a\xf7\x03\x27\xd1\xfb\x34\x1e\x3b\x06\x8a\xe6\x95\x98\xdd\x92\x08\x9e\xfb\xa9\x78\x07\xd5\x83\x94\x48\x1d\x84\x82\x3f\x84\x08"
+"\x78\xf7\xac\x07\x2d\xf8\x61\x15\xa5\x91\x92\xa5\xf7\x1e\xc8\x5d\x24\x2a\x50\x59\xfb\x07\x76\x7d\x8c\x8d\x75\x1e\x0e\xf7\x87\x7e"
+"\x0a\xb4\x80\x0a\x0e\xc4\xee\x1d\xf7\x90\xf7\xbc\x15\x2c\x1d\xfc\x33\x04\x2c\x1d\x0e\xfb\xc7\xce\xfb\x2c\x15\xcd\xf7\xdb\x49\x06"
+"\xf7\x1d\x04\xcd\xf7\xdb\x49\x06\x0e\x20\xf7\x5c\xf9\x38\x15\x3b\x4c\x4c\x3b\x3c\xca\x4b\xd9\xdc\xcb\xc9\xdb\xdc\x4d\xca\x3a\x1f"
+"\x69\x04\xc4\xba\x59\x50\x4f\x5c\x5a\x51\x53\x5c\xbd\xc6\xc7\xba\xbc\xc4\x1f\x0e\x84\x9f\x1d\x54\x5f\x73\x55\x5e\x1f\xf7\xbe\x07"
+"\x86\x8e\x5c\x7b\x70\x82\x44\x78\x19\x7b\x07\x8c\x91\x8e\x8b\x93\x1b\xb3\x94\x82\x61\x1f\xfd\x54\x07\x56\x80\x81\x50\x86\x1e\xf7"
+"\x2e\xf8\xa9\xa3\x0a\xf7\x87\x7e\x0a\x2e\xf8\x6e\x15\xa2\x8e\x96\x8c\xa5\x84\x9d\x1d\xd9\xbf\x6e\xb1\x52\xa2\x1f\xb6\xaa\x9c\xa2"
+"\xa7\x1a\xba\x5c\xaf\x4e\x4d\x64\x70\x47\x68\x1e\xa4\x79\x05\xb7\xaa\x9f\x98\xaf\x1b\xae\xa0\x78\x6d\x66\x71\x75\x45\x74\x1f\x0e"
+"\xfb\x63\xf7\xbc\xf7\xf7\xcc\x1d\xc8\xa2\xb3\xbe\x1d\xa5\xa1\xb1\x1b\xb3\xac\x69\x61\x6d\x6c\x56\x59\x55\xcc\x0a\xf7\x91\xf7\x6f"
+"\xf8\x8d\x15\xac\x88\x8c\x8a\x93\x87\x08\x90\x88\x8d\x83\x6d\x1a\xfb\x85\x07\x6d\x89\x84\x86\x88\x1e\x83\x87\x88\x8a\x6c\x88\x08"
+"\x7c\xf7\x36\x9a\x07\x6c\x8e\x88\x8c\x83\x8f\x08\x86\x8e\x89\x92\xa9\x1a\xee\xbb\x07\xb0\x53\x8f\x84\x96\x77\xa8\x57\xa5\x6d\x99"
+"\x8e\x08\xcb\x93\x06\x73\x9f\x73\xa5\x6f\xb2\x52\xda\x18\xbf\xa0\xa6\xae\xbb\x1a\xc3\x5f\xaf\x44\x1e\xfb\x45\x06\xf7\x05\x78\x15"
+"\xb4\x06\xba\xa3\x70\x57\x52\x72\x6b\x5f\x1f\x60\x06\xbc\xf7\xeb\x15\xfb\x53\xfb\x2c\xfb\x2d\xfb\x55\xfb\x54\xf7\x2b\xfb\x2c\xf7"
+"\x54\xf7\x51\xf7\x2c\xf7\x2c\xf7\x4f\xf7\x5a\xfb\x28\xf7\x2d\xfb\x55\x1f\x61\x04\xf7\x33\xf7\x13\xfb\x1d\xfb\x3f\xfb\x34\xfb\x18"
+"\xfb\x1e\xfb\x2e\xfb\x31\xfb\x17\xf7\x1d\xf7\x39\xf7\x3a\xf7\x17\xf7\x1e\xf7\x31\x1f\x0e\xc4\xee\x1d\x0e\x84\xf7\xa2\xf8\xd3\x15"
+"\xc6\x4f\xa2\x62\x9a\x41\x08\xba\x58\x70\x98\x5b\x1b\xfb\x0c\x2f\x24\xfb\x1a\xfb\x19\xe8\x27\xf7\x11\xc0\xb9\x9d\xae\xaf\x1f\xc2"
+"\xbf\xad\xe9\xeb\x1a\xd1\x7b\xd3\x6c\xca\x1e\x75\xb8\x79\xa3\x58\xbc\xe6\xbb\x18\x6a\xa9\x2c\x59\x58\xa9\x68\x96\x49\x91\x19\x61"
+"\x74\xc0\x82\xaa\x7e\xbc\x69\x19\xfb\x0d\x4b\xac\x6d\x05\xe5\x3d\x15\xe0\xc6\x2c\xfb\x1c\xfb\x08\x5f\x48\x3f\x63\x67\xa3\xb4\x75"
+"\x1f\x6f\xbf\x7b\xd2\xd2\x1a\xe8\xba\xc9\xd2\x1e\x0e\xc4\xf7\x7e\xf7\x91\x15\xfb\x58\xfb\x59\xbb\x5b\xf7\x58\xf7\x59\xf7\x59\xfb"
+"\x59\xbb\xbb\xfb\x59\xf7\x59\xf7\x59\xf7\x58\x5b\xbb\xfb\x59\xfb\x59\xfb\x58\xf7\x59\x5b\x5b\x05\x0e\xfb\x63\xe9\xf8\x60\x15\xa2"
+"\x8e\x96\x8d\xa5\x83\x9d\x1d\xda\xbe\x6e\xb1\x52\xa2\x1f\xb6\xaa\x9c\xa2\xa7\x1a\xba\x5c\xaf\x4e\x4d\x64\x70\x47\x68\x1e\xa4\x79"
+"\x05\xb7\xaa\x9f\x98\xaf\x1b\xae\xa0\x78\x6d\x66\x71\x75\x45\x74\x1f\x0e\xf7\x91\xf8\xa7\xf7\x8b\x15\x4d\x6d\x69\x73\x4f\x1b\x33"
+"\x57\xcc\xf7\x03\xf7\x04\xbd\xca\xe4\xca\xaf\x6d\x50\x94\x1f\x9c\xd1\x06\x92\x86\x92\x82\x8e\x1e\x99\x6a\x63\x93\x6a\x1b\xfb\x18"
+"\x32\x3a\xfb\x0c\xfb\x06\xdc\x3f\xf7\x0d\xc4\xd9\x9c\x98\x8e\x1f\x9c\xd7\x05\xfb\x35\xf8\x41\x15\xfb\x58\xfb\x2c\xfb\x2b\xfb\x57"
+"\xfb\x54\xf7\x2b\xfb\x2c\xf7\x54\xf7\x53\xf7\x2a\xf7\x2b\xf7\x55\xf7\x53\xfb\x2b\xf7\x2f\xfb\x4d\x1f\x8a\x61\x15\xf7\x2c\xf7\x16"
+"\xfb\x1f\xfb\x38\xfb\x39\xfb\x16\xfb\x1e\xfb\x30\xfb\x31\xfb\x17\xf7\x1d\xf7\x39\xf7\x3c\xf7\x17\xf7\x1c\xf7\x35\x1f\x0e\x22\x0a"
+"\xfb\x10\xf8\x62\x22\x1d\x22\x0a\xcc\xf8\x62\x20\x1d\x22\x0a\xfb\x55\xf8\xd6\x15\x71\x75\x74\x70\x6f\x9f\x75\xa7\x93\x0a\x22\x0a"
+"\x81\xf8\x62\x29\x0a\x22\x0a\x2b\xf9\x26\x42\x1d\x22\x0a\xbd\xf8\xe5\x8a\x1d\xf7\x34\xf7\xe4\x7e\x15\x8a\x94\x92\x8b\x93\x1b\xf7"
+"\x05\xef\xba\xdb\xc7\x1f\x79\x9d\x05\x44\x42\x48\x6d\x38\x1b\x4c\x53\x9f\xb1\x60\x1f\x54\xbc\x6c\xe5\xf7\x04\x1a\xf7\x49\xe8\xf7"
+"\x08\xf7\x25\xc4\xbf\x76\x64\xb3\x1e\xab\x6b\x9a\x6f\x9e\x4a\x08\xa2\x06\x82\xf7\x75\x05\x76\x06\x76\x85\x7b\x7f\x77\x1b\x82\x7c"
+"\x8e\x90\x7c\x1f\x9c\x5a\x59\x93\x5c\x1b\x39\x39\x6c\x54\x4c\x1f\x45\x4d\x65\x2f\xfb\x03\x1a\xfb\x49\xf6\xfb\x16\xf7\x3b\x73\x1e"
+"\x66\x32\x98\x1d\x54\x82\x85\x8a\x89\x81\x1f\x0e\xf3\x21\x0a\xfb\xab\xf9\x63\x22\x1d\xf3\x21\x0a\x31\xf9\x63\x20\x1d\xf3\x21\x0a"
+"\xfb\xee\xf9\xd7\x15\x71\x75\x74\x70\x6f\xa0\x75\xa6\x93\x0a\xf3\x21\x0a\xfb\x3f\xf9\x63\x15\xfb\x26\x61\x1d\xfb\x42\x28\x1d\xf7"
+"\x07\xf9\x50\x22\x1d\xfb\x42\x28\x1d\xf7\xc4\xf9\x50\x20\x1d\xfb\x42\x28\x1d\xbb\xf9\xc4\x3e\x0a\xfb\x42\x28\x1d\xf7\x75\xf9\x50"
+"\xb1\x1d\x33\x0a\xfb\x66\xf7\x63\x15\x65\x7a\x7e\x7f\x74\x1b\x7d\x77\x91\x94\x64\x1d\xab\x96\x9c\x99\xa2\x1b\x96\x9a\xb6\x0a\xa9"
+"\xa9\xd7\x9f\x1f\x0e\x23\x0a\x6a\xb5\x1d\x0e\x23\x0a\xf7\x30\xda\x20\x1d\x23\x0a\x27\xf7\x57\x3e\x0a\x23\x0a\xd7\xda\x29\x0a\x23"
+"\x0a\xf7\x1c\xf7\x66\x8a\x1d\xbc\x2f\x0a\x68\xf8\x3b\x20\x0a\x24\x1d\xfb\xf4\xd7\x22\x1d\x24\x1d\xfb\x3d\xd7\x20\x1d\x24\x1d\xfc"
+"\x3e\x96\x1d\x24\x1d\xfb\x8e\xd7\xb1\x1d\x34\x1d\xfb\xeb\xd7\x22\x1d\x34\x1d\xfc\x3e\xf7\x54\x3e\x0a\xf3\x3c\x0a\xfb\x1b\xf9\x5a"
+"\x20\x0a\x4c\x26\x1d\x29\xf7\x83\x2a\x0a\x4c\x26\x1d\xe6\xf7\x83\x20\x1d\x4c\x26\x1d\xfb\x39\xf7\xf7\x41\x1d\x4c\x26\x1d\x96\xf7"
+"\x83\x38\x1d\x4c\x26\x1d\x4a\xf8\x5a\x42\x1d\x4c\x26\x1d\xd2\xf8\x06\x15\x65\x79\x7e\x79\x0a\x4c\xf7\x76\x81\x15\xdc\x92\xc0\xb8"
+"\xbf\xf4\x8e\x1d\xfb\x0b\xcd\x33\xf0\x7e\x1e\x65\x30\x2d\x0a\x97\x9b\x1d\x0e\x4c\x27\x1d\xfb\x06\xf7\x5a\x50\x1d\x2a\x1d\x0e\x4c"
+"\x27\x1d\xd6\xf7\x5a\x20\x1d\x4c\x27\x1d\xfb\x49\xf7\xce\x41\x1d\x4c\x27\x1d\x86\xf7\x5a\x38\x1d\xfb\x79\x27\x0a\xe5\xf8\x80\x3a"
+"\x1d\xfb\x79\x27\x0a\xf7\xab\xf8\x80\x20\x1d\xfb\x79\xc6\xf9\x03\x15\x71\x75\x74\x71\x6e\x49\x1d\xf7\x33\x16\xa6\x1d\xfb\x5e\xfd"
+"\x03\x15\xf7\x81\x9a\x06\x49\x90\x84\x94\x8a\xd4\x08\xf7\xf7\x07\xa5\x1d\x0e\xfb\x79\x27\x0a\xf7\x5b\xf8\x80\x29\x0a\x84\x32\x0a"
+"\xf8\x03\xf9\x03\x77\x0a\x84\x24\x0a\x77\xd6\x2a\x0a\x84\x24\x0a\xf7\x3d\xd6\x20\x1d\x84\x24\x0a\x34\xf7\x53\x84\x0a\x84\x24\x0a"
+"\xe4\xd6\x38\x1d\x84\x24\x0a\xf7\x28\xf7\x62\x77\x0a\xfb\x0a\x65\x0a\xf7\xfc\x20\x0a\x84\x25\x1d\xfb\x9a\xf8\x6b\x2a\x0a\x84\x25"
+"\x1d\x35\xf8\x6b\x20\x1d\x84\x25\x1d\xfb\xf1\xf8\xdf\x84\x0a\x84\x25\x1d\xfb\x42\xf8\x6b\x38\x1d\x84\x33\x1d\xfb\x96\xd3\x15\xf7"
+"\x2d\xec\x05\xa1\x2a\x1d\x0e\x84\x33\x1d\xfb\xca\xf7\x50\x41\x1d\x4c\x34\x0a\x71\xf9\x36\x20\x0a\xfb\x24\xab\xf7\xb8\x15\x75\xf7"
+"\x23\xa1\x07\x68\x8d\x84\x8f\x9d\x1a\xf7\x37\x07\xa3\xa6\x98\x91\x9e\x1b\xa6\x97\x7b\x68\x1f\xfb\x0f\x07\x8a\x66\x86\x87\x69\x89"
+"\x08\x75\xf7\x20\xa1\x07\x6c\x8f\x89\x8d\x8a\xa5\x08\xf7\x1c\x07\xc6\x6c\xaf\x59\x6f\x75\x81\x6d\x68\x1e\xb0\x07\x80\x8e\x71\x82"
+"\x73\x83\x76\x85\x19\x7f\x87\x85\x8a\x05\x72\x07\x8f\x93\x92\x8c\x92\x1b\x96\x8e\x85\x72\x1f\xfb\x26\x07\x8a\x70\x87\x84\x7b\x89"
+"\x83\x89\x18\x0e\xed\xf8\xa9\x16\x9a\x07\x39\x8e\x80\x96\xd6\x1a\xf7\xce\xf7\x0e\xab\xfb\x0f\xf7\x08\x07\xc5\x9e\xaa\xbf\x0a\xa3"
+"\x9d\x9d\xa2\xaf\x60\xa5\x4f\x58\x5d\x79\x6c\x6e\x1f\xa9\x81\x64\x9e\x56\x1b\x4c\x57\x70\x5e\x71\x1f\x71\x5e\x83\x67\x8a\x3b\x08"
+"\x39\x6b\xdd\x54\x0a\x07\xf7\x3a\x47\x0a\xc6\x9e\xa9\xbf\x0a\x8f\x8c\x8b\x8c\x8f\x1f\x7c\x64\x86\x68\x52\x1a\x6b\x04\xfb\xce\x07"
+"\x89\x41\x81\x80\x49\x87\x08\x52\x8f\x83\x96\xd5\x1a\xf7\xce\x07\x0e\xf7\xe5\xf7\x54\x47\x0a\x9a\x1d\x6a\xdd\xfb\xcd\x06\x89\x40"
+"\x81\x80\x44\x88\x08\x7c\xf7\x80\x9a\x07\x4e\x8e\x83\x96\xd6\x1a\xf7\xcd\xf7\x4f\xfb\xd7\x07\xa3\x1d\x84\x83\x4e\xeb\x1d\x97\x8a"
+"\xcd\x08\xf7\x9a\x07\xa3\x8b\xa0\x8d\xc0\x1e\x87\x8e\x05\x84\x62\x6c\x88\x62\x1b\xfb\x31\xb6\x06\x8a\xb0\x8f\xb2\x90\x9b\x08\xb6"
+"\x98\xb3\xa9\xb8\x1b\xa7\x9e\x7e\x69\xa3\x1f\x70\x9e\x98\x81\x9c\x1b\xa0\x9a\x9b\xa2\xb6\x59\xa6\x3e\x3f\x51\x71\x5a\x67\x1f\x6d"
+"\x62\x80\x66\x85\x3b\x08\x0e\xf7\xe3\xf7\x54\x47\x0a\x7b\x0a\xf7\x80\x9a\x07\x4e\x8e\x83\x96\xd6\x1a\xf7\xce\xf7\x4f\xfb\xcd\x07"
+"\xad\x1d\x7c\x58\x87\x78\x0a\xf7\xa2\xb4\x1d\x8d\x90\x90\x1f\x0e\xf7\x87\xf7\x6c\xf7\xb4\x15\x61\x8e\x7d\x95\x8a\xa8\x08\xf7\xe6"
+"\x07\x84\x8c\xfb\x04\x57\x05\x82\x07\x95\xa8\x8b\x8b\x92\x1b\x97\x8e\x83\x70\x1f\xfb\x95\x07\x8a\x71\x7e\x81\x64\x89\x08\x80\xf7"
+"\x46\x07\xf8\x37\x54\x15\xc1\xa6\xa2\xa7\xb3\x1a\xbe\x5c\xb0\x4a\x4e\x1d\x78\xc5\x5a\x1e\x4e\x5f\x7c\x77\x63\x5e\x1d\x70\x4c\x15"
+"\xb3\x70\x99\x77\x6c\x1a\x6a\x74\x74\x68\x62\x70\xa9\xba\xac\x97\xa2\xa6\x50\x0a\x76\x68\x73\x1e\x97\xf8\x47\x2c\x0a\x0e\xf7\x87"
+"\xed\xf8\x69\x15\x9d\x8d\x05\x8c\x8e\x8e\x8b\x8d\x1b\xbb\xb4\x61\x5b\x60\x6e\x6e\x60\x78\x7f\x90\x9b\x75\x1f\x98\x7a\x80\x90\x81"
+"\x1b\x7a\x7e\x7d\x79\x6e\xa7\x7b\xbc\xf7\x00\xda\xc3\xd6\xab\x7c\xaa\x71\xa0\x1f\x7f\x95\x84\x8f\x6d\x97\x9a\x96\x94\x92\x8f\x8d"
+"\x08\xa2\x9d\x99\xa3\xa0\x1a\xb6\x5e\xad\x51\x5d\x62\x75\x66\x72\x1e\x86\x83\x8a\x89\x80\x78\x9d\x7e\x18\xb4\xa8\xa1\x99\xaf\x1b"
+"\xb0\xa3\x76\x6b\x65\x72\x75\x44\x72\x1f\xf8\xae\xfb\x9f\x15\xc1\xa6\xa2\xa7\xb3\x1a\xbe\x5c\xb0\x4a\x4e\x1d\x78\xc5\x5a\x1e\x4e"
+"\x5f\x7c\x77\x63\x5e\x1d\x70\x4c\x15\xb3\x70\x99\x77\x6c\x1a\x6a\x74\x74\x68\x62\x70\xa9\xba\xac\x97\xa2\xa6\x50\x0a\x75\x68\x74"
+"\x1e\x9c\xf8\x47\x2c\x0a\x0e\xf7\x87\xf7\x13\x21\x1d\x48\xfb\x1c\x05\x89\x89\x8a\x86\x88\x1a\x85\x8e\x8a\x97\x89\x1e\x99\x9c\x89"
+"\x88\x99\x1f\xdd\x79\xb5\x63\x4e\x1a\x54\x66\x60\x5c\x7e\x85\x8e\x99\x76\x1e\x87\x8e\x05\x97\x7a\x7e\x90\x7c\x1b\x76\x7f\x81\x7a"
+"\x73\xa8\x7d\xbe\xf7\x02\xd2\xc8\xe8\xb9\x7a\xb0\x6b\xa4\x1f\x6c\xa2\x6d\x96\x44\x97\xa0\xb6\x18\xf7\x1c\x06\xab\xca\x7c\x92\x05"
+"\x7e\x80\x86\x88\x7d\x1b\xf8\x0c\xfc\x4c\x15\xc0\xa6\xa2\xa8\xb2\x1a\xbe\x5c\xb0\x4a\x4e\x1d\x78\xc6\x5a\x1e\x4d\x5f\x7d\x78\x62"
+"\x1a\x4f\xbe\x62\xd7\xd7\xbd\xb4\xc9\xb9\x76\xa7\x46\xbc\x1e\x70\x4c\x15\xb3\x70\x99\x77\x6d\x1a\x69\x74\x74\x68\x62\x70\xa9\xba"
+"\xac\x96\xa2\xa7\xa2\x1e\xa9\xc7\x15\x5c\xe0\x1d\x67\x6b\x7d\x75\x69\x74\x1e\x9e\xf8\x47\x2c\x0a\x0e\xf7\x87\xf9\x0f\xf7\x72\x15"
+"\xc1\xa6\xa2\xa7\xb3\x1a\xbe\x5d\xb0\x49\x4e\x1d\x77\xc6\x5b\x1e\x4d\x60\x7c\x77\x62\x5e\x1d\x71\x4c\x15\xb2\x70\x99\x77\x6c\x1a"
+"\x69\x74\x75\x68\x62\x70\xa9\xba\xac\x96\xa2\xa7\x50\x0a\x75\x68\x74\x1e\xfb\xb9\xf8\x38\x15\xfb\x88\x06\x62\x2a\xa1\x81\x05\xaf"
+"\xa6\x95\x92\xad\x1b\xf7\x0c\x06\xfb\x11\xfb\xec\x05\xc9\x06\xf7\x1b\xf8\x1b\x05\xf7\xc0\xab\x15\x5d\x06\xfc\x59\xfd\x46\x05\xbc"
+"\x06\x0e\xf8\x12\x6e\x1d\xb6\xf8\x44\x22\x1d\x22\x0a\xa5\xf8\xff\x8b\x0a\x80\x1d\x0e\x80\x1d\xfb\xb4\xf7\x79\x37\x0a\xc3\x8c\x92"
+"\x9f\x1a\xaf\x7d\x9e\x71\x70\x7d\x78\x66\x77\x8c\x86\x99\x52\x1e\x0e\x22\x0a\xfb\x85\xf8\xc0\x23\x1d\x84\x1d\xf7\x60\x07\x63\x6b"
+"\x7d\x73\x69\x1a\x61\xaa\x6a\xb5\xb5\xac\xa2\xc0\xb0\x1e\x77\x9b\x05\x70\x6c\x79\x82\x75\x1b\x75\x7b\x9b\xa3\xa5\xa6\xb1\xa1\x90"
+"\x1f\xfc\x7e\xf7\x95\x15\xf7\x07\xf7\xa7\xf7\x08\xfb\xa7\x05\x0e\x22\x0a\x2b\xf9\x04\xa9\x0a\xc3\xc2\xb3\x0a\x6d\x6e\x66\x68\x6e"
+"\xa9\xaf\xaf\xa9\xa8\xaf\x1f\x54\xae\x15\x4a\x1d\x9c\x1a\x9e\x7e\x97\x76\x7b\x44\x0a\x0e\xf7\x34\xc2\x21\x1d\x79\x07\x36\x0a\xf7"
+"\x5d\x07\xf7\x30\xa7\x8e\xa1\xbb\x1f\xcb\xa9\xb3\xc7\xcf\x1a\xb3\x7d\xb0\x71\xa8\x1e\x74\xa4\x75\x98\x5b\x9c\xac\x9a\x9a\x95\x9a"
+"\x9b\x08\xa5\xa7\x9c\xb5\xb1\x1a\xc3\x67\xc0\x50\xaa\x1e\xa3\x60\x6a\x90\x2a\x1b\x5d\x61\x15\x8e\xa0\x94\x8c\x99\x1b\xe9\xc7\x57"
+"\x3b\x3a\x55\x5b\x31\x7a\x7f\x8c\x90\x72\x1f\x58\x04\x90\xa3\x95\x8c\x9d\x1b\xf1\xcb\x55\x33\x37\x4d\x52\x31\x73\x7e\x8d\x92\x6e"
+"\x1f\x0e\xf7\x34\x31\x0a\xfb\x81\xf7\xa0\x22\x1d\xf7\x34\x31\x0a\x3d\xf8\x47\x20\x0a\xf7\x34\x31\x0a\x37\xf7\xa0\x20\x1d\xf7\x34"
+"\x31\x0a\xfb\x88\xf8\x14\x2b\x1d\x0e\xf7\xd3\xf7\xd8\x15\xfb\x1c\xfb\x49\x39\xfb\x02\x77\x7d\x3b\x8a\x19\x79\xf7\x88\x9d\x07\x76"
+"\x8d\x05\x71\x8d\x7c\x96\x9b\x1a\x97\x90\x95\x9d\xa3\x1e\xf7\x22\xf7\x4e\xf7\x0a\xfb\x41\x05\x9c\x72\x92\x7a\x7c\x1a\x73\x7c\x83"
+"\x5d\x8a\x1e\x79\xf7\xb7\x9d\x07\x76\x8d\x63\x8f\x72\xa1\x4e\xe5\x19\xfb\x33\xf7\x7d\xf7\x16\xf7\x3f\xd4\xe9\x92\x90\xc0\x8f\x19"
+"\x97\x8c\x05\x9d\xfb\x73\x79\x9b\x07\xaa\x9c\x7f\x76\x81\x86\x81\x7a\x75\x1f\xfb\x0d\xfb\x33\x24\xf7\x2e\x05\x81\x9a\x85\x9a\x97"
+"\x1a\x9b\x94\x99\x98\x8f\x1e\x93\x8d\x8d\x8c\xa8\x8c\x08\x9d\xfb\xbc\x79\x07\xa1\x88\xb7\x86\xa3\x76\xc4\x38\x19\x0e\x6a\x0a\xf7"
+"\xcb\xf9\xbc\x20\x0a\x73\x1d\xf7\x34\xac\x16\xf8\xee\x06\xfb\xad\xf9\x44\x05\xfb\x8e\xfd\x11\x15\xf7\x69\xf8\x5e\xf7\x51\xfc\x5e"
+"\x05\x0e\xf3\x21\x0a\xfb\x1c\xfa\x00\x15\x3f\x6e\x73\x39\x1d\xf3\x21\x0a\x30\xfa\x0a\x20\x0a\xf3\x21\x0a\xfb\x8b\xf9\xd7\x2b\x1d"
+"\x0e\xf3\x21\x0a\xfc\x26\xf9\xc1\x23\x1d\xf8\xa0\xda\x15\x5d\x07\x76\x07\x57\x07\x3a\x8b\x85\x85\x7b\x1e\x73\x83\x76\x7a\x74\x1b"
+"\x7e\x80\x93\x9f\x7a\x1f\xa2\x7a\x7d\x94\x7a\x1b\x75\x79\x7a\x75\x6a\xb3\x75\xc7\xbe\xb8\x99\xa3\xa6\x1f\xae\xa9\x9c\xcf\xf7\x00"
+"\x1a\xf8\x7d\x07\x8e\xf3\x98\x9c\xda\x92\x08\x9e\xfb\x7f\x78\x07\xdb\x86\x98\x7a\x8e\x21\x08\xfb\xe5\x07\xfc\x15\xf8\x78\x05\xfb"
+"\x3f\x78\x06\xb6\x99\x83\x5c\xb3\x1f\xfc\x4d\x59\x1d\xf8\x1c\x07\x0e\xf3\xf8\xbc\x16\xb8\xf7\x3d\x05\x7a\x1d\xf8\x68\x07\x65\x6d"
+"\x7b\x71\x69\x1a\x61\x58\x1d\xa3\xac\xad\xaf\xa9\x1f\x0e\xf3\xf7\x6e\x91\x1d\xc0\x1d\xf8\x94\x07\xc4\xf7\x3b\x7b\x46\x1d\x5c\x8a"
+"\x85\x94\xca\x1a\x0e\xf7\x4f\xa4\xf8\x7b\x37\x0a\xc2\x8c\x92\xa0\x1a\xaf\x7d\x9e\x71\x70\x7d\x78\x67\x76\x8c\x85\x99\x53\x1e\xf7"
+"\xbc\xfb\x5e\x15\xf7\x3b\xa0\x0a\x8d\x42\x75\x6f\x53\x8d\x08\xfb\x3b\xf7\x8d\xf7\x2d\x06\xf3\x8d\xab\x73\x97\x31\x6c\x1d\xfc\x8c"
+"\x79\x06\x2e\x1d\xfc\x5b\x07\x4b\x59\x0a\xf8\x96\x07\xc4\xf7\x3b\x7a\x46\x1d\x5b\x8a\x85\x94\xca\x1a\x0e\xf7\x6a\xf7\xcf\x15\xf7"
+"\xbb\xfb\x67\x06\x4b\x52\x0a\xcb\x1a\xf8\x5b\xbb\x1d\xfb\x5b\xfb\xbb\xf7\x5b\xbb\x1d\xfc\x5b\x07\x4b\x52\x0a\xcb\x1a\x0e\xf7\xc1"
+"\xaf\x1d\xf7\xbe\xfb\x6c\x15\xf7\xbc\xfb\x67\x06\x4b\x42\x0a\x57\x8d\x7b\x9e\xcb\x1a\xf8\x5b\x9f\x0a\xfb\x5b\xfb\xbc\xf7\x5b\x9f"
+"\x0a\xfc\x5b\x07\x4b\x42\x0a\x57\x8d\x7b\x9e\xcb\x1a\x0e\x84\xf7\x29\xf8\x1a\x15\x90\xc1\x93\xba\x96\xac\x08\xd9\xa4\xbb\xb8\xc4"
+"\x1b\xbc\xbe\x67\x55\xa7\x1f\x99\x6f\x94\x69\x91\x5f\x08\x9c\x06\x7b\xf7\x73\x05\x79\x06\x6c\x85\x84\x7e\x7f\x1b\x87\x86\x8e\x90"
+"\x83\x1f\xa2\x69\x67\x97\x68\x1b\xfb\x0a\x2a\xfb\x07\xfb\x3c\x74\x1f\x5c\x06\x70\x62\x05\xd1\x06\x8a\x83\x8b\x84\x80\x1a\x7a\x8b"
+"\x82\x8d\x80\x1e\x5f\x06\x70\x62\x05\xd6\x06\xfb\x33\xa5\xe7\x27\xf7\x0c\x1b\xd4\xcb\xad\xc7\xb6\x1f\xad\x07\x51\x6b\x4c\x64\x50"
+"\x1b\x2e\x49\xe3\xf7\x20\x7d\x1f\xf7\x12\x06\xa5\xb4\x05\xfb\x2f\x06\x8a\x9d\x8b\x94\x8e\x1a\x8f\x8b\x92\x8c\xa1\x1e\xf7\x57\x06"
+"\xa6\xb4\x05\x0e\xd2\xf7\xa9\x9f\x15\x41\x91\x7c\x9a\xce\x1a\xf8\x5a\x07\x89\xb3\x99\x99\xbb\x8e\x08\xf7\x05\x06\xf2\x88\xbe\x68"
+"\xb1\x2d\x08\xa7\x06\x5a\xf7\x43\x05\xfc\xad\x77\x06\xd5\x85\x9a\x7c\x48\x1a\xfc\x52\x07\x48\x7c\x7c\x41\x85\x1e\x77\xf7\xae\x07"
+"\x0e\x30\x0a\xfb\x80\xf8\xb0\x8b\x0a\x30\x0a\xfb\x4b\xf8\x13\x20\x1d\x30\x0a\xfc\x1a\xfc\xfd\x25\x0a\x30\x0a\xfb\xe8\xf8\x87\x2b"
+"\x1d\x0e\xf8\xfa\xf8\x65\x15\xe6\xb3\x30\xbb\x06\xc2\x1d\xfb\xc3\xbb\x07\xc2\x1d\x32\x63\xe4\xfb\xed\x46\x0a\x78\xf7\xaa\x9e\x07"
+"\x8e\x0a\x25\xf7\xf8\x15\x21\xfb\xc3\xf5\x07\x0e\x69\x0a\xf8\x85\xf9\x50\x20\x1d\xf7\x70\xf7\xcd\x9d\x15\x75\x3b\x1d\xf8\x5c\x3c"
+"\x1d\xa1\x8c\x05\x9d\xfb\xb2\x79\x07\xa1\x8a\x05\xc0\xe3\x1d\x56\x89\x1e\x75\x8a\x05\x79\xf7\xb2\x07\xf7\x03\xf9\x18\x15\xa1\x8a"
+"\x05\xbd\xa1\x71\x51\x8d\x1f\xfc\x33\x07\x37\x84\x71\x75\x80\x81\x94\x9a\x84\x1e\xb7\x75\x7e\x96\x6d\x1b\x6e\x77\x78\x70\x5f\xb5"
+"\x6d\xc9\xf3\xcd\xd9\xf7\x0e\x1f\xf8\x02\x07\x8a\xca\x9b\x9e\xc0\x8d\x9f\x8c\x18\x9d\xfb\xb3\x07\x0e\xfb\x42\x28\x1d\xf7\x98\xf9"
+"\xed\x15\x3f\x6e\x73\x39\x1d\xfb\x42\x28\x1d\xf7\x28\xf9\xc4\x2b\x1d\x0e\xfb\x42\x28\x1d\x84\xf9\xae\x23\x1d\xfb\x42\x9d\xf9\x2a"
+"\x15\x78\x07\xe0\x66\x1d\x3f\x7f\x80\x37\x88\x08\x78\xf7\x8c\xab\x1d\x9f\x95\x9d\x9d\x9e\x1f\x95\x94\x8f\x8e\x90\x8c\x08\x9e\x07"
+"\x39\x8d\x7d\x99\x89\xd5\x08\xf8\x50\x07\x8d\xd6\x98\x97\xde\x8e\x08\x9e\x07\x0e\xfb\x42\x4c\x0a\xfb\x42\xa2\xf9\x18\x15\x2e\x1d"
+"\xfc\x5c\x07\x4c\x42\x0a\x56\x8d\x7c\x9e\xca\x1a\xf8\x5c\x5d\x0a\x07\xbe\xf7\x33\x15\x41\x0a\xf7\x4d\x16\x41\x0a\x0e\x2b\xa3\xf8"
+"\x7b\x37\x0a\xc2\x8c\x92\xa0\x1a\xaf\x7d\x9e\x71\x70\x7d\x78\x67\x76\x8c\x85\x99\x53\x1e\xef\xf7\x05\x15\x2e\x1d\xfc\x5c\x07\x4c"
+"\x7c\x78\x56\x4f\x1d\xf7\xb3\x9d\x07\x74\x3b\x1d\xf8\x5c\x5d\x0a\x07\x0e\xfb\x42\x28\x1d\xf7\xb0\xf9\xcd\x15\x65\x7a\x7e\x7f\x74"
+"\x1b\x7c\x78\x90\x95\x78\x1f\x73\x97\x05\x97\x74\x72\x91\x75\x1b\x59\x67\x67\x4a\x7c\x1f\xa8\x06\xaa\x96\x9c\x9a\xa2\x1b\x96\x9a"
+"\x48\x0a\x78\xb3\x9b\x86\xa4\x1b\xc2\xa8\xa9\xd7\xa0\x1f\x0e\xfb\x0a\xf8\x07\xf9\x2a\x15\xfb\xb3\x78\x06\xdc\x85\x96\x81\x8c\x41"
+"\x08\xfc\x63\x07\x5e\x7f\x76\x71\x7d\x85\x93\xa4\x84\x1e\xae\x81\x7b\x9b\x71\x1b\x70\x75\x74\x70\x61\xb4\x6d\xc5\xf7\x00\xc8\xd3"
+"\xf7\x11\x1f\xf8\x06\x07\x8d\xd6\x94\x94\xdc\x91\x08\x95\xd7\x20\x1d\xf7\x7d\xf7\xd5\x15\xf7\x49\xfb\x4f\x05\xbd\x58\x9e\x73\x7c"
+"\x1a\x7c\x7c\x82\x70\x8a\x1e\x7b\x8a\x05\x79\xf7\xd2\x9d\x07\x4e\x8c\x60\xbb\x0a\x92\x93\x92\x93\x91\x91\x9a\x9a\x9a\x9b\x9a\x9b"
+"\x94\x93\xcb\xd1\xa6\xa8\xce\xd7\xa2\x9a\xc4\x92\x99\x8c\x18\x9e\xfb\x87\x78\x07\xba\xcb\x1d\xcc\x9a\x9d\xc5\x8c\x1e\x9e\x8c\x05"
+"\x9d\xfb\xb4\x79\x07\x36\x0a\xf7\xb4\x9d\x07\x74\x8c\x55\x8d\x7b\x9e\x8c\xca\x19\x0e\x63\x0a\x2d\xfe\x43\x25\x0a\xf3\x36\x1d\x75"
+"\xd7\x22\x1d\xf7\x6e\xf8\x09\xc1\x0a\x82\x49\x88\x19\x79\xf7\x71\x9e\x7f\x07\x67\x74\x99\xa2\x93\x94\xa7\x93\x9f\x1f\xf7\x35\xf8"
+"\x11\xf7\x35\xfc\x09\x05\x97\x6f\x90\x79\x7a\x1a\x72\x78\x7e\x67\x1e\x7b\x78\xf7\xaa\x9d\x7e\x06\x5e\x8c\x71\xa7\x67\xe4\x08\x0e"
+"\xf3\x36\x1d\xf7\x01\xfb\x66\x4d\x0a\x0e\xf3\x36\x1d\x6c\xfe\x30\x15\xcf\xac\xb7\x85\x0a\xf3\x36\x1d\xf7\x03\xfb\x91\x2b\x0a\xf8"
+"\x12\xbe\x0a\x4c\x7b\x78\x56\x89\x1e\x78\x8a\x05\x79\xf7\xaf\x9d\x07\x75\x8c\x56\x8d\x7b\x9e\x8c\xca\x19\xf8\x5c\x07\x8a\xca\x9b"
+"\x9e\xc0\x8d\xa1\x8c\x18\x9d\xfb\x57\x07\xfb\x6b\xfc\x7f\xfb\x74\xf8\x7f\x05\xfb\x53\x79\x06\x36\x0a\xf7\x7c\x9d\x07\x73\x3b\x1d"
+"\xf8\x3a\x07\x0e\x33\x0a\xfc\x0f\xd7\x22\x1d\x33\x0a\xfb\x52\xf7\x87\xdf\x1d\xf7\x0f\xfb\x3b\x05\xca\x06\x0e\x33\x0a\xfc\x18\xfe"
+"\x30\x89\x0a\x66\x55\x66\x1f\x0e\xf8\xf2\x16\x9b\xf8\xc3\x06\xca\x9a\x9e\xc0\x8d\x1e\xa2\x8c\x05\x9d\xfb\x7b\x79\x07\x2e\x1d\xfb"
+"\xf6\x07\xfc\x1c\xf8\x5d\x05\xfb\x58\x79\x06\xc2\x8a\x98\x83\xc6\x4e\x08\xfc\x6b\x07\x4c\x59\x0a\xf7\x7b\x9d\x07\x74\x3b\x1d\xf8"
+"\x30\x07\x0e\x23\x0a\xf7\x04\xf7\x80\x15\x3f\x6e\x73\x76\x50\x1b\x4b\xb2\x1d\x23\x0a\xce\xb5\x1d\xfb\x08\x16\x99\x0a\x23\x0a\xfb"
+"\x2f\xf7\x41\x23\x1d\xf7\x80\xa8\xf8\x7b\x37\x0a\xc2\x8c\x92\xa0\x1a\xaf\x7d\x9e\x71\x70\x7d\x78\x67\x76\x8c\x85\x99\x53\x1e\xf9"
+"\x69\xfb\xff\x15\x7a\x8e\x6e\x3f\x6f\x76\x41\x89\x19\x23\x06\xf7\x17\xc4\xda\xf7\x02\xf7\x12\x1a\xf7\x3e\xfb\x1d\xf7\x1a\xfb\x42"
+"\xfb\x41\xfb\x1e\xfb\x1b\xfb\x3c\x39\xab\x41\xc8\x50\x1e\xb1\x66\xaf\x72\xb5\x7a\x08\x24\x06\x40\x8d\x6f\xa0\x6e\xd7\x7a\x88\x18"
+"\xb1\xfb\x3c\x05\xf7\x91\xd5\x06\x65\x9e\x78\x9c\x72\xb4\x08\x68\xc2\x79\xd2\xdd\x1a\xf7\x33\xdd\xf7\x04\xf7\x08\xf7\x08\xdd\xfb"
+"\x03\xfb\x32\xfb\x1f\x57\xfb\x02\x38\x65\x1e\x41\xf7\x91\x07\x0e\x81\x1d\xaf\x1d\xf8\x00\xf7\x1e\xc7\x1d\xd2\xa9\xc9\xc8\x1f\xc8"
+"\xcb\xac\xe1\xec\x1a\xf7\x55\xfb\x1c\xf7\x24\xfb\x4b\x1e\x8a\x64\x15\xf7\x0c\x6d\x1d\x3b\x86\x0a\x64\x0a\xfb\x42\xf7\x2d\x98\x0a"
+"\xf7\x74\xf7\xce\xf8\xe2\x15\xfb\x3e\x79\xfb\x09\x22\xfb\x1c\x1a\xfb\x1c\xf7\x0b\x20\xf7\x3c\x7b\x1e\x7f\x07\x8c\x52\x80\x7f\x51"
+"\x89\x74\x8a\x18\x79\xf7\xb1\xdb\x1d\xf7\x3c\x9b\xf7\x0b\xf6\xf7\x1c\x1a\xf7\x1c\xfb\x08\xf4\xfb\x3f\xd5\x1d\xfb\xb1\xb8\x0a\xfb"
+"\x00\xa1\x4d\xe0\xf7\x10\x1a\xf7\x10\xcb\xe2\xf5\xa0\x1e\xf2\x8a\x15\xf7\x00\x73\xc9\x37\xfb\x0f\x1a\xfb\x0f\x4b\x34\x21\x75\x1e"
+"\x0e\xf9\x54\x21\x1d\xfd\x42\x79\x06\x36\x0a\xf7\xb2\x9d\x07\x75\x3b\x1d\xf8\x4e\x07\xca\x9b\x9f\xbf\x8d\x1e\xf7\x33\x06\xbf\x89"
+"\x9b\x77\x4c\x1a\xfc\x4e\x8a\x0a\x0e\xf7\x7b\xf7\x76\x21\x1d\x79\x07\x2e\x1d\xfb\xc5\x07\x5f\x94\x7a\x94\x6e\xa7\x63\xb7\x80\xaf"
+"\x89\xf3\x8a\xd3\x88\xa2\x83\xa2\x08\xb8\x7c\x6d\xa1\x5d\x1b\x73\x73\x86\x82\x73\x1f\x92\x76\x05\x90\x96\x91\x8c\x93\x1b\xa8\x90"
+"\x7f\x48\x8e\x1f\x90\xfb\x35\x91\x74\xc1\x46\xbb\x55\xc2\x72\xdc\x84\x08\xfb\x0b\x07\x4c\x42\x0a\x56\x8d\x7c\x9e\xca\x1a\xf7\x0b"
+"\x07\xcc\x91\xb1\x98\xb8\xac\xd3\xc7\xa4\xc4\x8c\xf7\x09\x8f\xeb\x8b\x8b\x8e\x94\x08\x9e\x8f\x96\x93\x9d\x1b\x93\x90\x8a\x86\x96"
+"\x1f\x93\xa0\x05\x94\x72\x74\x90\x73\x1b\x60\x6e\x78\x64\x7b\x1f\x80\x72\x88\x74\x8a\x3c\x8c\xfb\x20\x5f\x45\x27\x77\x08\xf7\xc5"
+"\xe1\x1d\x07\x0e\xf7\x34\x3b\x0a\xeb\xf8\x0c\x22\x1d\xf7\x34\x3b\x0a\xf7\xb1\xf8\xb3\x20\x0a\xf7\x34\x3b\x0a\xe2\xfd\x04\x89\x0a"
+"\x67\x55\x65\x1f\x0e\xbc\x83\x0a\x36\x0a\xf7\xb4\x9d\x07\x73\x8c\x56\x8d\x7b\x9e\x8c\xca\x19\xf8\x93\x04\x93\xa1\x99\x8d\xa1\x1b"
+"\xe0\xc3\x51\x35\x36\x56\x54\x3b\x74\x79\x8f\x95\x72\x1f\x0e\xbc\x2f\x0a\xfb\x74\xf7\x94\x98\x0a\xbc\xf7\xac\x7d\x15\x94\x06\xf7"
+"\x06\xe3\xdb\xf1\xde\x54\xcb\xfb\x18\xd3\x1f\x22\xc4\x61\xb7\xc2\x1a\xc2\xb5\xb0\xc9\xb8\xb5\x78\x67\xae\x1e\xaa\x6b\x99\x71\x9b"
+"\x50\x08\xa4\x06\x75\xf7\x69\x05\x6f\x0a\xa5\x80\xa2\x86\xa7\x87\x67\x33\x18\x2d\x0a\x96\x5a\x0a\x6a\xc9\x1d\xbf\xb7\x6c\xa4\x55"
+"\x81\x84\x8a\x89\x82\x1f\x0e\xbc\x2f\x0a\x5f\xf7\x94\x20\x1d\xbc\x2f\x0a\xfb\x7d\xfd\x7c\x8d\x0a\x84\x6a\x6f\x66\x55\x66\x1f\x0e"
+"\xd6\xf8\xab\x21\x1d\xfc\x7f\x06\xf7\x3e\xfb\xf4\xfb\x3e\xfb\xca\x05\xf8\x7f\x06\xbc\xf7\x76\x05\x6c\x06\x55\xfb\x13\x46\x5b\xfb"
+"\x15\x8d\x08\xfb\x07\x06\xf7\x21\xf7\xad\xfb\x27\xf7\xb3\x05\xf7\x04\x06\xf7\x1d\x8f\xcd\x58\x94\xfb\x09\x08\xaa\x06\x0e\xf3\xf7"
+"\x36\x16\xf7\xb3\x9d\x06\x75\x8c\x05\x55\x8d\x7c\x9e\xcb\x1a\xf8\x92\xe4\x07\xe0\x8c\xac\x6c\x8f\x37\x9e\x8d\x18\x81\xf7\x34\x05"
+"\xfc\xb5\x3f\x0a\xe4\xfc\x92\x06\x4b\x7c\x78\x55\x89\x1e\x75\x8a\x05\x0e\xf3\xf7\x92\xf7\xd0\x15\xfb\x58\x07\x8a\x35\x82\x81\x37"
+"\x86\x08\x78\xf7\xb8\x9e\x07\x39\x8f\x7e\x97\x8a\xd5\x08\xf7\x63\xf4\xad\x22\xf7\xa2\x71\x0a\xfb\xa2\x23\x69\x06\x0e\xf3\x53\x1d"
+"\x94\xfa\x0a\x20\x0a\xf3\xf7\xcd\x16\xf7\x1f\x9e\x06\x39\x8f\x7e\x97\x8a\xd5\x08\xf8\x93\x71\x0a\xfc\x88\x06\x8a\x35\x82\x81\x37"
+"\x86\x08\x78\xf7\x09\x07\x63\x28\x2d\x0a\x97\x1b\xb0\x9a\x81\x72\x6f\x77\x7a\x69\xc9\x1d\xc0\xb6\x6c\xa4\x54\x82\x84\x8a\x89\x82"
+"\x1f\x0e\xf7\x93\xf8\x46\x15\xfb\x5a\xaa\x07\xba\xa4\xa3\xbd\xbc\xa4\x73\x5c\x1e\xaa\xf7\x5a\x6c\x06\x5b\x86\x76\x77\x5b\x1b\x5a"
+"\x76\x9f\xbb\x86\x1f\xd9\xf7\x85\x15\xfb\x56\xfb\x1d\xfb\x23\xfb\x5e\xfb\x5a\xf7\x1e\xfb\x25\xf7\x51\xf7\x52\xf7\x1e\xf7\x24\xf7"
+"\x5b\xf7\x5a\xfb\x1e\xf7\x27\xfb\x4e\x1f\x82\x65\x15\xb7\xb6\x7b\x6d\xad\x1f\xc9\x56\xad\x2c\xfb\x0c\x1a\xfb\x04\x6d\x30\x56\x59"
+"\x1e\x6f\x6d\x5d\x7a\x5b\x1b\xfb\x16\x35\xf7\x0f\xf7\x4f\xf7\x52\xd7\xf7\x04\xf7\x16\x1f\x0e\x24\x1d\xfb\x7e\xf7\x7c\x15\x3f\x6e"
+"\x73\x5a\x1d\xb3\x78\xba\x1b\xdf\xb9\x49\x0a\x24\x1d\xfb\xa9\xd7\x50\x1d\xd6\x1d\x75\x7c\x81\x86\x79\x79\x1e\xfb\x26\xfb\x28\x05"
+"\xfb\x08\x16\xb8\x1d\x0e\x24\x1d\xfc\x73\xf7\x3e\x23\x1d\x82\x1d\xf7\x3d\xac\xa9\x8f\x92\xab\x1e\x68\x6e\x7c\x72\x6b\x1a\x60\x58"
+"\x1d\xa1\xaa\x9d\xa7\xb4\xae\x1f\xdb\xcd\x9a\xaf\x8d\xf7\x15\x08\xf7\x99\x07\x8d\xf4\x96\x99\xdc\x94\x08\x0e\x78\x1d\x0e\x78\x1d"
+"\xf7\x30\xf7\xab\x35\x0a\xf7\x4e\x16\x41\x0a\x0e\xf7\xc9\xbc\xf8\x7b\x37\x0a\xc2\x8c\x92\xa0\x1a\xaf\x7d\x9e\x71\x70\x7d\x78\x67"
+"\x76\x8c\x85\x99\x53\x1e\xf8\x16\xfb\x8d\x15\xfb\x47\x07\x4c\x7b\x78\x56\xb6\x1d\xbc\xe1\xae\xa9\xc0\x8e\x19\x96\x8c\x05\x9d\xfb"
+"\x73\x79\xa0\x07\xa6\x8a\x99\x81\x79\x1a\x7e\x86\x7d\xa9\x1d\xbc\x84\xa3\x77\xb5\x42\x19\x0e\x24\x1d\xfb\xd8\xf7\xac\x87\x0a\x0e"
+"\x24\x1d\xfb\x66\xf7\x61\x15\x65\x7a\x7e\x7f\x74\x1b\x7c\x77\x90\x95\x79\x1f\x73\x97\x05\x96\x74\x71\x92\x76\x1b\x59\x67\x67\x4a"
+"\x7c\x1f\xa8\x06\xaa\x96\x9c\x9a\xa2\x1b\x96\x9a\x48\x0a\x78\xb2\x9c\x86\xa4\x1b\xc2\xa8\xa8\xd8\xa0\x1f\x0e\xf8\x49\x32\x1d\xfc"
+"\x86\xd7\x22\x1d\xf8\x49\x32\x1d\xfb\xc8\xd7\x20\x1d\xf8\x49\x32\x1d\xfc\xc8\x96\x1d\xf8\x49\x32\x1d\xfc\x19\x96\x0a\xf7\x1c\xf7"
+"\x28\xf7\x7b\x15\x9d\x06\x89\xca\x9e\xa1\xc6\x8c\x08\xf7\x33\x06\xc6\x8a\x9e\x75\x89\x4c\x08\x9d\xf7\x85\x79\x06\x8d\x52\x76\x76"
+"\x52\x8c\x08\xfb\x33\x06\x52\x8a\x76\xa0\x8d\xc4\x08\x79\x06\x56\xb1\x15\x94\xc9\xa4\x9b\xdb\x8a\x08\xf7\x74\x06\xdb\x8c\xa5\x7a"
+"\x93\x4e\x9c\x8d\x18\x81\xf7\x2a\x05\xfc\x66\x06\x81\xfb\x2a\x05\x99\xfc\x94\x15\xf8\x60\x06\xb4\xf7\x3d\x7a\x8f\x6e\x45\x6d\x77"
+"\x3f\x89\x19\xfb\x82\x06\x3e\x8d\x6e\x9e\x6e\xd2\x7a\x87\x18\x0e\x34\x1d\xfb\x4a\xd7\x20\x1d\x34\x1d\xfb\x9e\x96\x0a\xf3\x3c\x0a"
+"\xfb\xd9\xf8\xb3\x22\x1d\xf3\x3c\x0a\xfb\xb8\xf9\x27\x2b\x1d\x0e\xf3\xf8\x3c\xf8\xfd\x15\xfc\x36\xfc\xfd\x05\xf8\xba\x06\xaf\xf7"
+"\x4a\x78\x8d\x75\x22\x5a\x64\x20\x90\x19\xfb\x7b\x06\xf8\x34\xf8\xfd\x05\xfc\x83\x06\x78\xfb\x41\x9e\x89\x9a\xf7\x04\xa3\xa0\xf7"
+"\x05\x88\x19\x0e\x4c\x26\x1d\xba\xf8\x20\x37\x1d\xf7\x34\xf9\x00\xf7\x2e\x15\x45\x5b\x64\x70\x52\x1b\x62\x65\x9f\xa9\x7b\x1f\x75"
+"\xb2\x86\xaa\xef\x1a\xf7\x9a\x06\xf7\x15\x7f\x5c\xc1\x26\x1b\x5c\x70\x81\x68\x5e\x1f\xad\x64\x6e\x96\x59\x1b\x31\x46\x5c\x4e\x6d"
+"\x9c\x79\xa6\xa7\x9a\x9c\xaa\x8f\x8b\x92\x8a\x91\x1f\x8a\x96\x05\x91\x07\xac\x8d\xa2\x9c\xb6\x1b\xa3\x9e\x83\x7d\x92\x1f\x92\x7b"
+"\x90\x6c\x74\x1a\x89\x4c\x35\x67\x05\x20\x5f\x61\x62\x4f\x1a\x4a\xbb\x5e\xcf\xbd\xad\x9b\xc4\xcf\x1e\x57\xad\xb0\x76\xc5\x1b\xb9"
+"\xb5\x9b\xab\xae\x1f\xa7\xa3\x9d\xa7\xa7\xc6\x08\xfb\xfa\xbf\x15\x8c\x66\x91\x66\x96\x67\x08\x8c\x8a\x8b\x8a\x8a\x1a\x79\x4a\x6b"
+"\x67\x66\x6d\xb2\xbb\xc7\xa6\xa3\xf7\x0d\xb7\x1e\xdd\xc1\x15\xe3\x8f\xa5\xaf\xc4\x1b\xc1\xa2\x66\x34\x8d\x1f\xfb\x6f\xf7\x5c\x15"
+"\x99\x0a\xf8\x81\xf0\x1d\xf8\x07\xc1\x0a\x81\x49\x89\x19\x79\xf7\x71\x9e\x7f\x07\x67\x73\x9a\xa0\x8c\x1f\x94\x92\xa2\x95\xa4\x1e"
+"\xb5\xf4\x05\xf7\x86\x06\xb1\x2a\x05\x98\x6a\x8f\x7b\x7d\x1a\x72\xc1\x1d\xf1\xf7\x85\xf4\xfb\x85\x05\x0e\xce\x96\xf9\x2a\x15\x79"
+"\x07\xd5\x9b\x7c\x44\x8c\x1f\xfc\x5b\x4f\x0a\xf7\x82\xf7\x0b\x07\xf3\x8d\xab\x74\x96\x35\x9c\x8d\x18\x81\xf7\x2a\x05\xfb\xa5\xfb"
+"\xd7\x57\x1d\x0e\xf7\x34\xc2\x21\x1d\x79\x07\x2d\x1d\xf7\x5d\x07\xf7\x30\xa7\x8e\xa1\xbb\x1f\xcb\xa9\xb3\xc7\xcf\x1a\xb3\x7d\xb0"
+"\x71\xa8\x1e\x74\xa4\x75\x98\x5b\x9c\xac\x9a\x9a\x95\x9a\x9b\x08\xa5\xa7\x9c\xb5\xb1\x1a\xc3\x67\xc0\x50\xaa\x1e\xa3\x60\x6a\x90"
+"\x2a\x1b\x5d\x61\x15\x8e\xa0\x94\x8c\x99\x1b\xe9\xc7\x57\x3b\x3a\x55\x5b\x31\x7a\x7f\x8c\x90\x72\x1f\x58\x04\x90\xa3\x95\x8c\x9d"
+"\x1b\xf1\xcb\x55\x33\x37\x4d\x52\x31\x73\x7e\x8d\x92\x6e\x1f\x0e\xd2\xf7\x78\xf8\xfd\x15\xf7\x44\x06\xe0\x8c\xac\x6c\x8f\x34\x9e"
+"\x8c\x18\x81\xf7\x35\x05\xfc\x8b\x79\x06\x55\x1d\x0e\xf7\x43\xf7\x05\xf9\x2a\x15\x79\x07\xa1\x8a\x05\xc3\x8a\x98\x78\x3e\x1a\xfb"
+"\x64\x73\xfb\x41\x65\x49\x1e\x5d\x70\x6c\x74\x67\x1b\x6a\x06\x84\xfb\x54\x05\x9d\x06\x9f\xf7\x0b\xbd\xb7\xf7\x07\x8a\x08\xf7\x7d"
+"\x06\xf7\x0d\x8c\xb9\x64\xa2\xfb\x10\x08\x9d\x06\x84\xf7\x54\x05\x40\x7c\x9a\xd3\x8a\x1f\xf8\x4e\x07\xca\x9a\x9e\xc0\x8d\x1e\xa2"
+"\x8c\x05\x9d\x07\xfb\x58\x5e\x15\xfc\xd0\xfb\xb6\x07\xbb\xbd\x9f\xc3\x99\xf7\x10\x08\x93\xd5\x8f\xe0\xf7\x0d\x1a\xc9\x07\x0e\xf3"
+"\xf7\x6e\x91\x1d\xd5\x9b\x2e\x0a\xfc\x5b\x07\x44\x8a\x7b\x7c\x41\x1b\x79\xf8\x94\x07\xc4\xf7\x3b\x7b\x46\x1d\x5b\x86\x93\xca\x1f"
+"\x0e\xf3\xf7\x6d\xf7\xdd\x15\xf7\x3a\xa0\x0a\x8c\x42\x76\x70\x53\x8c\x08\xfb\x3a\xf7\x8d\xf7\x2d\x06\xf2\x8d\xab\x72\x96\x32\x6c"
+"\x1d\xfc\x8a\x79\x06\xc0\x1d\xf8\x94\x07\xc4\xf7\x3b\x7b\x46\x1d\x5c\x8a\x85\x94\xca\x1a\x80\xf9\x63\x15\x71\x75\x74\x70\x6f\x9f"
+"\x75\xa6\xa7\x57\x0a\xf7\x5b\x16\x71\x75\x74\x70\x6f\x9f\x75\xa6\xa7\x57\x0a\x0e\xf8\x19\x7a\x0a\xf7\x91\x9d\x07\x5b\x8c\x68\xa6"
+"\x47\xe1\xfb\x4a\xf7\x80\x18\xbd\xcd\xb7\xc6\xb1\xbe\xc4\xdb\x9d\x9a\xc1\x8f\x08\x9e\xfb\x56\x78\x07\xae\x8a\x96\x85\x7b\x1a\x66"
+"\x41\xfb\x02\x24\xfb\x08\x1e\x76\xf7\x5e\x06\xd1\x98\x9a\xc6\x1e\x9d\xfb\x78\x79\x07\xc6\x98\x7c\x45\x1f\xfb\x5e\x76\x07\x24\xf7"
+"\x08\x41\xf7\x02\xb0\x1a\x9c\x96\x90\xae\x8c\x1e\x9e\xfb\x56\x78\x07\xc1\x87\x9e\x7c\xc3\x3b\x9c\x73\xbe\x47\x97\x7c\x97\x7b\x97"
+"\x7b\x97\x7c\x9b\x75\x18\xfb\x4a\xfb\x80\x46\x34\x69\x71\x5b\x8a\x19\x79\xf7\x91\x9d\x07\x69\x8d\x80\x91\x9d\x1a\x9a\x92\x97\xba"
+"\xca\x1e\xf7\x16\xf7\x4f\x05\x0e\x85\xb8\xf8\x7b\x15\x9e\x06\xe6\x96\xbc\xba\xde\x1b\xd6\xb9\x5f\x42\x34\x56\x5e\x25\x87\x7f\x8b"
+"\x8c\x7f\x1f\x5e\x9a\x07\xc5\xb2\x84\x7c\xa3\x1f\xb4\x72\xa2\x5e\x54\x1a\x32\x51\x4f\x34\x42\x53\xb0\xd9\x5f\x1e\x75\x7e\xa1\x5f"
+"\x98\x79\xa4\x75\x19\x61\xb8\xc2\x76\xce\x1b\xf7\x1b\xeb\xda\xf7\x03\xc2\x75\xbc\x63\xaa\x1f\x81\x0a\x0e\x6d\x0a\x0e\xf8\x61\xf9"
+"\xec\x15\x72\x7a\x7b\x74\x85\x8c\x85\x8d\x85\x1f\x8f\x7c\x8c\x89\x86\x1a\x7a\x6b\x7a\x6a\x68\x6c\x9c\x9d\x8e\x8c\x8f\x8c\x90\x1e"
+"\x90\x9a\x8c\x8f\x93\x1a\xa2\x79\x9b\x72\x6f\x78\x78\x70\x55\xca\x62\xdf\xe0\xca\xb4\xc1\xa6\x77\x9e\x6f\x1e\xfb\x8b\xfd\x37\x6e"
+"\x0a\x0e\xf7\x34\x70\x1d\x0e\xf7\x3f\xf7\x0f\x21\x1d\x79\x07\xd5\x9b\x7c\x45\x8c\x1f\xfb\x7d\x07\xfb\x3b\x6f\x2e\x59\x81\x84\x8e"
+"\x98\x79\x1e\x98\x7a\x7e\x90\x7d\x1b\x71\x77\x75\x6f\x67\xaa\x74\xbc\xca\xb6\xaa\xce\xa7\x1f\xa3\xc4\x92\xbf\xf7\x12\x1a\xf7\xb9"
+"\xf7\x53\xfc\x96\x07\x45\x7b\x7c\x40\x1e\x79\xf7\xb3\x9d\x07\x40\x7c\x9a\xd1\x8a\x1f\xf8\x5b\x07\xd2\x8c\x9b\x9a\xd5\x1b\x9d\x07"
+"\x0e\xf8\x12\xbe\x0a\x46\x8a\x7c\x7b\x43\x1b\x79\xf7\xaf\x45\x1d\xfb\x57\x07\xfb\x6b\xfc\x7f\xfb\x74\xf8\x7f\x05\xfb\x53\x79\x06"
+"\x2d\x1d\xf7\x7c\x60\x0a\xf8\x3a\x07\x0e\xca\x1d\xf7\xb2\x9d\x07\x41\x7b\x9a\xd2\x1f\xf8\x5b\x76\x0a\x81\x1d\x97\xf9\x2a\x15\x79"
+"\x07\xd5\x9b\x2e\x0a\xfc\x5c\xae\x0a\xf8\x97\x07\xf7\xc5\x8a\x05\xfc\x96\x07\x45\x8a\x7c\x7c\x41\x1b\x79\xf7\xb1\x45\x1d\x07\x0e"
+"\xbc\x83\x0a\x2d\x1d\xf7\xb4\x60\x0a\xf8\x93\x04\x93\xa1\x99\x8d\xa1\x1b\xe0\xc3\x51\x35\x36\x56\x54\x3b\x74\x7c\x8e\x96\x6f\x1f"
+"\x0e\xf7\x34\xf8\xfd\xf7\x2f\x15\x3b\x4e\x43\x65\x30\x1b\xfb\x25\x2e\xf7\x05\xf7\x46\xf7\x4c\xe8\xf7\x0c\xf7\x22\xc7\xc3\x74\x60"
+"\xb6\x1f\xae\x68\x9c\x66\x93\x52\x9d\x8d\x18\x85\xf7\x73\x05\x76\x06\x6f\x87\x82\x7f\x7a\x1b\x81\x8a\x8b\x9e\x63\x1f\x9d\x64\x59"
+"\x95\x58\x1b\xfb\x55\xc0\x0a\xf7\x4c\xf4\xed\xc3\xea\xcb\x1f\x0e\xf3\xf7\x36\x16\xf7\xb3\x9d\x06\x40\x7b\x9a\xd2\x1f\xf8\x92\xe4"
+"\x07\xe0\x8c\xac\x6c\x8f\x37\x9e\x8d\x18\x81\xf7\x34\x05\xfc\xb5\x3f\x0a\xe4\xfc\x92\x06\x44\x7b\x7c\x40\x1e\x0e\xf7\x5d\x75\x1d"
+"\x0e\xf7\xaf\xf7\xea\xf8\xe2\x15\xfb\x50\x79\xfb\x15\x22\xfb\x1c\x1a\xfb\x1c\xf7\x18\x20\xf7\x4d\x7b\x1e\x7f\x07\x8c\x52\x7f\x7f"
+"\x52\x89\x74\x8a\x18\x79\xf7\xb3\xdb\x1d\xf7\x4e\x9b\xf7\x17\xf6\xf7\x1c\x1a\xf7\x1c\xfb\x14\xf4\xfb\x51\xd5\x1d\xfb\xb3\xb8\x0a"
+"\x61\x92\x72\x94\x6f\x9c\x08\x49\xb3\x64\xd4\xe0\x1a\xf7\x10\xd6\xe2\xf7\x11\xa0\x1e\xf4\x8a\x15\xf7\x13\x73\xd4\x37\xfb\x0f\x1a"
+"\xfb\x0f\x40\x34\xfb\x11\x75\x1e\x0e\x8b\x1d\xf7\xb7\x9d\x07\x50\x8d\x78\x9b\x46\xef\xfb\x33\xf7\x7d\x18\xf7\x16\xf7\x3f\xd7\xec"
+"\x90\x8f\xcb\x8e\x19\x9d\xfb\x73\x79\x07\xa6\x8f\x8b\x89\x92\x1f\x9a\x87\x96\x7e\x7d\x1a\x81\x86\x81\x7a\x75\x1e\x90\x0a\xcb\x86"
+"\x9e\x7d\xcb\x2e\x08\x0e\xf9\x5d\xfb\x36\x15\x83\xf7\x54\x05\x41\x7b\x9a\xd3\x1f\xf8\x4e\x7c\x0a\xf8\x88\xc7\x0a\xf7\x23\xf8\x5c"
+"\xf7\xdc\x15\x93\x1d\xfb\x4e\x07\x45\x8a\x7c\x7c\x40\x1b\x79\xf7\xb2\x45\x1d\xfb\xb2\x79\x07\x2f\x1d\x0e\xf8\x8a\xf9\xb7\xb8\x15"
+"\xfb\x8a\xf8\x96\x06\xb2\x0a\xfc\x96\xfb\x8a\x95\x0a\xfa\x70\x9d\x07\x41\x7b\x9a\xd1\x1f\xf8\x5c\x4c\x1d\x0e\xf8\x8a\xfa\x7c\xfb"
+"\x36\x15\x84\xf7\x54\x44\x8a\x7e\x96\x89\xc6\x19\xf8\x60\x07\xd1\x9b\x9a\xc3\x1d\xd2\x9b\x99\xc3\x1d\xd1\x3d\x1d\x2d\x1d\xf9\xa8"
+"\xc7\x0a\xf7\x5b\xf7\x70\xf8\xfd\x15\xfc\x96\xc3\x0a\xf7\x37\xe3\xce\xf7\x10\xf7\x10\x2d\xd1\xfb\x3b\x6c\x77\x8a\x86\x6d\x1f\xf7"
+"\x48\xa2\x0a\xf7\x3c\xfb\xaa\x15\x90\xa6\x9e\x8d\x9f\x1b\xeb\xcb\x4b\x2c\x32\x4c\x4e\x31\x75\x7b\x8e\x94\x68\x1f\x0e\xf8\x01\xf7"
+"\xce\xf9\x2a\x15\xfb\xb2\x79\x06\xd5\x9b\x2e\x0a\xfc\x5c\x4f\x0a\xf7\x48\x39\x0a\x31\xfb\xc5\x57\x1d\xf7\xe1\xf8\xe7\x15\x2f\x1d"
+"\xfc\x5c\xb0\x1d\x07\x0e\xce\xf7\xc1\x21\x1d\xfb\xb2\x79\x06\xd5\x9b\x2e\x0a\xfc\x5c\x4f\x0a\xf7\x48\x39\x0a\x31\xfb\xc5\x57\x1d"
+"\x0e\xf7\x2d\xf8\x91\xf7\xcf\x15\xfb\x42\x84\x32\x23\xfb\x22\x1b\x2f\x43\xb1\xdb\x4f\x1f\x7a\x80\x05\x2c\xca\xee\x53\xf4\x1b\xf7"
+"\x4c\xf7\x29\xf7\x2b\xf7\x4f\xf7\x51\xfb\x2d\xf7\x29\xfb\x55\x59\x59\x81\x79\x63\x1f\x78\x64\x8a\x8b\x81\x1b\x7a\x82\x97\xa7\x86"
+"\x1f\x77\x06\x84\xfb\x73\x9e\x89\x91\xbf\x9a\xac\xa8\xad\x19\xbb\xb6\xc8\xa7\xcb\x1b\xf7\x1b\xe3\x24\xfb\x3d\x97\x1f\xfb\x70\x06"
+"\x53\x8a\x76\xa6\x8d\xd4\x08\x79\xfb\x85\x9d\x06\x89\xd1\x9e\xa5\xc6\x8c\x08\x0e\xf8\x9d\xf7\x78\xf7\xfc\x15\xf7\x5b\xaf\x0a\xfc"
+"\x5b\x5c\x1d\xf7\x67\xf7\x0b\x07\xfb\x52\x94\xf7\x17\xfb\x18\xf7\x47\x1b\xf7\x48\xf7\x1a\xf7\x24\xf7\x56\xf7\x57\xfb\x1c\xf7\x23"
+"\xfb\x4b\xfb\x3e\xfb\x14\xfb\x12\xfb\x4b\x7b\x1f\xf7\xcd\xf7\xa2\x15\xf7\x0d\x6d\x1d\x3a\x86\x0a\xf7\x34\xf8\x4d\xf7\xcb\x15\xfb"
+"\x63\x07\x8a\x45\x7c\x7c\x43\x8a\x08\x79\xf7\xb0\x9d\x07\x40\x7b\x9a\xd2\x1f\xf8\x5a\x07\xd2\x8c\x9a\x9a\xd6\x1b\x9d\xfb\xa8\x07"
+"\x4f\x6e\x88\x83\x70\x1f\x41\x76\x5b\x4d\x40\x1a\x5c\xa0\x5d\xae\x6b\x1e\xa5\x74\xa1\x80\xbd\x7d\xfb\x2d\xfb\x5d\x18\x42\x2e\x80"
+"\x83\x4f\x8c\x08\x78\xf7\x41\x07\xf7\x80\xf7\xcb\x05\xbf\xae\x15\x79\x06\xfb\x06\x46\xc0\xe2\xdb\xc4\xc2\xdf\x9f\x98\x89\x82\xa6"
+"\x1f\x0e\x52\x9a\xf9\x2a\x15\x79\x07\x55\x1d\xf8\x97\xf7\x8a\xf7\x42\x79\x07\x75\x29\x62\x6d\xfb\x04\x8a\x08\x0e\xf7\x89\xf7\xd6"
+"\xf8\xfa\x15\xf7\x1d\x06\xe0\x8c\xad\x6c\x8e\x37\x9e\x8d\x18\x82\xf7\x34\x05\xfc\xb1\x3f\x0a\xaf\xfc\x92\x06\x44\x7b\x7c\x40\x1e"
+"\x79\xf7\x58\xf7\xc9\x07\xa3\xc7\xa4\x91\xb1\x1b\xe7\xb5\x53\xfb\x0f\x2c\x70\x52\x5c\x75\x80\x95\x9f\x90\x8b\x8d\x8c\x91\x1f\x8c"
+"\x8f\x8b\x8e\x8e\x1a\xa2\x79\x9c\x72\x6e\x77\x76\x6d\x5e\xb7\x70\xd3\xc4\xb7\x9c\xad\xac\x1e\xb3\xb3\xa2\xc6\xc6\x1a\xf7\x0a\x32"
+"\xd8\xfb\x1b\x56\x64\x82\x72\x52\x1e\x0e\xd2\xf7\x75\xf8\xfd\x15\xf7\x44\x06\xe0\x8c\xac\x6c\x8f\x34\x9e\x8c\x18\x81\xf7\x35\x05"
+"\xfc\x8b\x79\x06\x55\x1d\xae\xf8\xfd\x5b\x0a\x98\x95\x98\x9b\x1a\x9f\x7d\x97\x76\x7b\x44\x0a\x0e\xf7\x2d\xf8\x65\xf7\x6e\x15\xf7"
+"\x85\x79\x07\x8c\x42\x77\x70\x52\x8c\x08\xfb\x6f\x06\xf7\x3c\x95\xe5\xf3\xf7\x1a\x1b\xc7\xc3\x74\x60\xb6\x1f\xae\x68\x9d\x66\x92"
+"\x52\x9d\x8d\x18\x85\xf7\x73\x05\x76\x06\x6f\x87\x82\x7f\x7a\x1b\x81\x8a\x8b\x9e\x63\x1f\x9d\x64\x59\x95\x59\x1b\xfb\x56\xc0\x0a"
+"\xf7\x4b\xf7\x03\xe5\xbd\xf0\xce\x1f\x7a\x96\x05\x3b\x4f\x42\x65\x30\x1b\x35\x44\xb4\xd5\x62\x1f\x71\xb8\x80\xba\x88\xd2\x08\xf7"
+"\x70\x06\xc6\x8a\x9e\x72\x89\x44\x08\x0e\xbc\xf4\x16\x9f\x92\x93\x92\x9b\x1b\x94\x98\x88\x86\x9a\x1f\x71\xdd\x8b\x8b\xb2\x1b\xf7"
+"\x06\xdd\xd7\xf6\xd8\x5c\xc9\x25\xc6\x1f\x3e\xb7\x05\x4c\xaf\x69\xb4\xb3\x1a\xbf\xb7\xb1\xc7\xb1\xac\x7e\x72\xa3\x1e\xa5\x71\x9b"
+"\x69\xa2\x40\x08\x9d\xf7\x66\x77\x06\x7a\x83\x83\x84\x7f\x1b\x82\x88\x8c\x98\x63\x1f\x98\x64\x75\x8f\x6d\x1b\x22\x44\x45\x25\x44"
+"\xb1\x58\xe7\x55\x1f\xd9\x5f\xa1\x7e\xa2\x79\x9e\x78\x19\xa7\x6e\x96\x73\x6c\x1a\x4f\x59\x5c\x4a\x57\x57\xa8\xbb\x6c\x1e\x76\xaa"
+"\x82\xa5\x84\xc1\x08\x77\xfb\x74\x06\x0e\xfb\x42\x4c\x0a\xfb\x42\xa2\xf9\x18\x15\x2f\x1d\xfc\x5c\x67\x1d\xf7\xb3\x9d\x07\x40\x7c"
+"\x9a\xd1\x8a\x1f\xf8\x5c\x07\xd1\x8c\x9a\x9a\xd6\x1b\x9d\xfb\xb3\x07\xb6\xf7\x41\x3e\x0a\xfb\x0a\xdb\xf9\x18\x15\xa1\x8a\x05\xbd"
+"\xa1\x71\x51\x8d\x1f\xfc\x33\x07\x37\x84\x71\x75\x80\x81\x94\x9a\x84\x1e\xb7\x75\x7e\x96\x6e\x1b\x6e\x76\x78\x70\x5f\xb6\x6d\xc9"
+"\xf2\xcd\xd9\xf7\x0e\x1f\xf8\x02\x3c\x1d\x9f\x8c\x05\x9d\xfb\xb3\x07\x0e\xf8\x01\xe7\x21\x1d\x79\x07\x2f\x1d\xfb\x7d\x07\x20\x84"
+"\x4c\x79\x61\x1e\x6c\x7e\x78\x79\x77\x1b\x83\x81\x8f\x91\x82\x1f\x9f\x70\x81\x8f\x7b\x1b\x71\x77\x76\x6e\x68\xaa\x74\xba\xca\xb9"
+"\xad\xcf\xa8\x1f\xa0\xbe\x93\xc7\xf7\x0c\x1a\xf7\xb9\xf7\x53\xfc\x96\x07\x44\x7b\x7d\x40\x1e\x79\xf7\xb3\x07\xf7\x37\xe3\xce\xf7"
+"\x10\xf7\x10\x2c\xd1\xfb\x3a\x6c\x78\x8a\x86\x6c\x1f\xf7\x48\xba\x0a\x07\x30\xfb\xd7\x15\x90\xa4\xa0\x8d\x9f\x1b\xea\xcb\x4b\x2c"
+"\x33\x4d\x4d\x32\x73\x77\x8e\x94\x6d\x1f\x0e\xf8\x01\xf8\x4c\xf7\xcf\x15\xfb\x68\x07\x8a\x61\x87\x7a\x7c\x7e\x86\x87\x89\x8a\x81"
+"\x87\x08\x88\x7c\x85\x8a\x72\x1b\x8a\x79\xf7\x9c\x06\xf7\x2a\xde\xcc\xf7\x0b\xdb\x61\xc0\x37\xa6\x1f\x99\x60\x71\x8d\xfb\x0d\x1b"
+"\xf7\x5c\x07\xd1\x9a\x99\xcf\x1e\x9d\xfb\x9c\x79\x07\xcf\x9b\x7c\x45\x1f\xfb\x5b\xfb\x91\xf7\x5b\x07\xd2\x9a\x99\xcf\x1e\x9d\xfb"
+"\x9c\x79\x07\xd0\x99\x7c\x45\x8c\x1f\xfc\x5c\x07\x44\x8a\x7d\x7d\x46\x1b\x79\xf7\x9c\x9d\x07\x46\x7d\x99\xd2\x1f\xf7\x68\x07\xf7"
+"\xf2\x16\xe4\x91\x8a\x7f\xac\x1f\xbb\x7a\xab\x5a\x51\x1a\x39\x50\x50\x3a\x75\x77\x8e\x94\x71\x1e\x0e\xf7\x7e\xf7\x47\xf8\xfa\x15"
+"\xfc\x92\x07\x44\x7b\x7c\x40\x1e\x79\xf7\xb2\x9d\x07\x41\x7b\x9a\xd2\x1f\xf7\x54\x07\xb4\xd9\x9b\x90\xc2\x1b\xe9\xa4\x6e\x20\x1f"
+"\x24\x07\x45\x8a\x7c\x7c\x41\x1b\x79\xf7\xb2\x9d\x07\x40\x7c\x99\xd2\x8a\x1f\xf2\x07\xc6\x86\xa1\x78\xa9\x1e\xb7\x6f\x54\xa0\x33"
+"\x1b\x48\x5e\x82\x71\x49\x1f\xf7\x9f\xf7\x38\x07\xdf\x8c\xad\x6c\x8e\x37\x9f\x8d\x18\x81\xf7\x34\x05\xfc\xcb\x3f\x0a\x0e\xf7\x34"
+"\x70\x1d\xf7\x19\xf8\xfc\x15\x30\x1d\x9f\x98\x95\x98\x7f\x0a\x0e\xf7\x5d\x75\x1d\xf7\x4b\xf7\x56\x15\x72\x7a\x7b\x74\x85\x8c\x85"
+"\x8d\x85\x1f\x8f\x7c\x8b\x8a\x86\x1a\x79\x6c\x7a\x6a\x69\x6b\x9c\x9d\x8e\x8c\x8f\x8c\x90\x1e\x8f\x9a\x8c\x90\x92\x1a\xa2\x7a\x9b"
+"\x72\x6f\x78\x78\x70\x55\xca\x62\xdf\xdf\xca\xb4\xc1\xa6\x78\x9e\x6f\x1e\x0e\x4c\xf8\x3d\xd4\x15\x7b\x7a\x7c\x84\x7d\x1b\x7b\x87"
+"\x95\xb2\x1f\xf7\x6e\x07\xed\x61\xb5\x28\x30\x3e\x57\x4f\x71\x9f\x75\xa2\xa1\x9d\x9e\xa2\xb0\x8b\x8d\x90\x98\x1e\xa3\x94\xa3\x99"
+"\xab\x1b\xa8\xa1\x7f\x77\x96\x1f\x94\x78\x8d\x7e\x57\x1a\x76\x07\x2f\x69\x70\x7f\x65\x76\x08\x53\x6d\x70\x63\x57\x1a\x4d\xb7\x5b"
+"\xc3\xb8\xb2\x9f\xbd\xc3\x1e\x5d\x91\x9e\x73\xab\x1b\xb2\xad\xa2\xb9\xaa\x1f\xfb\x35\xaf\x15\x6d\x6f\x71\x7d\x6c\x1b\x61\x6e\xaa"
+"\xb7\xc2\xa7\xa3\xf7\x14\xbf\x1f\x0e\x8d\xf7\xac\xf8\xc5\x15\x8a\x93\x91\x8b\x8f\x1b\xd8\xad\xa6\xd2\x98\x1f\x7e\x06\x76\x84\x79"
+"\x85\x52\x1b\x84\x80\x8b\x8c\x7e\x1f\x74\x06\x48\x57\x6f\x55\x67\x1f\x68\x54\x74\x21\xfb\x02\x1a\x38\x99\x48\xa5\x5d\x1e\x53\xab"
+"\xc7\x69\xcc\x1b\xf7\x03\xe3\xf5\xf7\x19\xf7\x17\x3b\xe9\xfb\x04\x48\x5b\x6a\x3e\x60\x1f\x96\xd7\x90\xa0\x97\xa4\x08\xc7\xa6\xb8"
+"\xab\xc5\x1b\x7e\xfb\x1f\x15\xd0\xba\x33\xfb\x18\x21\x64\x47\x4f\x40\x5c\xde\xf7\x1a\xc5\x91\xac\x9b\xaa\x1f\xb0\x9f\xa6\x9d\xaf"
+"\x1b\x0e\x68\xa9\xf8\x56\x29\x1d\xbe\x88\x8f\x83\x8d\x2e\x08\xfb\x64\x07\x8a\x2e\x86\x83\x58\x88\x08\x7a\x7a\xf7\x31\x06\xf7\x02"
+"\x9e\x8d\x9a\xad\x1f\xb8\x9f\xa7\xb4\xb9\x1a\xc1\x6d\xac\x48\xa1\x1e\xa4\x96\x95\x91\x97\x97\x08\x9e\x9e\x97\xa7\xa5\x1a\xb1\x72"
+"\xaf\x61\xa1\x1e\x9a\x6d\x72\x8f\x48\x1b\x6b\x6e\x15\x8d\x99\x92\x8c\x95\x1b\xca\xb4\x68\x55\x53\x67\x6b\x4d\x7f\x83\x8c\x8e\x7a"
+"\x1f\x68\x04\x8f\x9b\x93\x8c\x97\x1b\xd2\xb7\x66\x4f\x52\x60\x64\x4d\x7b\x81\x8c\x90\x77\x1f\x0e\x2a\xf7\x49\xf8\x2f\x15\xde\x06"
+"\xcf\xab\x6e\x44\x96\x1f\x9c\x06\x7b\xf7\x1f\x05\xfb\xf0\x7a\x9c\x06\xbe\x88\x90\x83\x8c\x2f\x08\xfb\x66\x07\x8a\x30\x28\x0a\xe2"
+"\x1a\x0e\x8d\xf8\x76\x26\x0a\xfc\x1b\x7a\x99\x06\xb5\x99\x74\x46\x38\x7e\xfb\x06\x7c\x5d\x1f\x5e\x7d\x6e\x74\x62\x1b\x70\x06\x82"
+"\xfb\x21\x05\x9c\x06\x94\xda\xab\xac\xce\x8a\x08\xf7\x74\x06\xcd\xad\x69\x3e\x93\x1f\x9c\x06\x82\xf7\x21\x05\x67\x06\x6e\x8a\x87"
+"\x8f\xab\x1a\xf7\x9d\x07\xe3\x93\x99\xbc\x8c\x1e\x9b\x06\xfb\x2c\xfc\x1e\x15\xfb\x51\x06\xb3\xab\x9b\xf2\xf7\x81\x1a\xf7\x19\x06"
+"\x0e\x4c\xf8\x20\x72\x0a\x0e\x4c\xf8\x1e\x72\x0a\xfb\x25\xf7\xd0\x53\x0a\xf7\x2d\xc4\x1d\xf7\x4c\x7d\x0a\xf7\x5b\x9c\x85\x06\x67"
+"\x6f\x9d\xbd\x64\x1f\xfb\x19\xf7\x3a\xf7\x01\xf7\x0f\xb1\xb6\xad\x9c\xb8\x8a\x19\x9c\xfb\x4b\x7a\x94\x07\x9d\x98\x82\x7e\x82\x87"
+"\x82\x81\x80\x1f\xfb\x11\xfb\x21\x05\x71\xe4\x06\x8c\xe6\x90\x94\xbd\x8e\x08\x9d\x9c\xfb\x77\x7a\x9d\x06\xbd\x88\x90\x82\x8d\x30"
+"\x08\x32\x70\x07\xfb\x11\xf7\x21\x05\x82\x96\x87\x93\x95\x1a\x99\x96\x93\x9e\x1e\x94\x9c\xfb\x4b\x7a\x06\xb8\x8c\xad\x7a\xb1\x60"
+"\xf7\x02\xfb\x0f\x18\xfb\x19\xfb\x3a\x05\x5a\x64\x6e\x78\x69\x1b\x83\x7a\xf7\x5b\x9c\x79\x06\x80\x84\x90\x93\x92\x8e\x92\x92\x94"
+"\x1f\xf7\x10\xf7\x31\x05\x0e\xfb\x04\xc0\xf7\xcd\x15\xd7\x97\xb2\xb3\xcb\x1b\xc3\xae\x6a\x58\x5b\x67\x6a\x58\x1f\x6b\x66\x06\x8c"
+"\x92\x8f\x8b\x91\x1b\xb5\xa3\x84\x7a\x9d\x1f\x9e\x79\x96\x71\x70\x1a\x52\x5f\x63\x4b\x54\x62\xa2\xc2\x5d\x1e\x79\x7f\x05\x3d\xbd"
+"\xbe\x6c\xdb\x1b\xef\xd7\xc4\xd8\xad\x7d\xab\x73\xa1\x1f\x92\x1d\x0e\xa7\x76\x1d\x0e\xa7\xf8\x05\xf9\x05\x15\x78\x7d\x7c\x77\x85"
+"\x8c\x88\x8e\x7f\x1f\x8d\x84\x8c\x84\x88\x1a\x79\x69\x7b\x63\x60\x6a\x9c\xa2\x8f\x8c\x8f\x8d\x91\x1e\x8e\x92\x8c\x8f\x92\x1a\x9f"
+"\x7d\x9a\x78\x76\x7c\x7c\x74\xbc\x0a\x42\xfb\x43\x29\x1d\xb0\x8c\x9b\x7b\x8d\x68\xfb\x5d\xfb\xa0\x18\xf7\x6a\x07\xe3\x93\x9a\xbc"
+"\x8c\x5d\x1d\x9c\x7b\x06\x66\x7c\x98\xb0\x88\x1f\xf7\x5d\xf7\x9d\x05\xfb\x67\x07\x8a\x2f\x28\x0a\xe3\x1a\x56\x0a\x06\x0e\x76\x72"
+"\x1d\x0e\x83\xcf\x26\x0a\x7a\x97\x07\xc2\x98\x77\x34\xfb\x44\x76\x2f\x63\x84\x84\x8e\x91\x80\x1f\x92\x7e\x82\x8e\x82\x1b\x73\x78"
+"\x78\x75\x6e\xa3\x79\xb1\xe9\xb0\xe8\xf7\x7e\x9c\x8b\x9b\x8a\xc9\x1f\xf7\x1a\xfb\xb6\x06\xa2\x1d\xf7\x12\xf8\x61\xf7\xfb\x15\xfb"
+"\x82\xca\x0a\xf7\x76\x9c\x7c\x06\x59\x8c\x83\x9a\x8c\xe3\x08\xf7\x64\x07\x8a\xe3\x93\x9a\xbd\x8c\x08\x9a\x9c\xfb\x25\x06\xfb\x26"
+"\xfb\xe6\xfb\x21\xf7\xe6\x05\xfb\x34\x7a\x95\x06\xbf\x8a\x9d\x78\x8a\x56\x08\xfb\xa6\x07\x8c\x59\x79\x79\x57\x8a\x08\x81\x7a\xf7"
+"\x43\x9c\x82\x06\x5f\x8c\x7d\x9c\x8d\xbe\x08\xf7\xa3\x07\xf7\x31\xfb\xfc\x05\x9a\x06\x0e\xa7\xf7\x34\x88\x1d\xf7\x76\x45\x0a\xf7"
+"\x65\x9e\x0a\x84\xf7\x93\xf8\x5d\x15\x4e\x5c\x78\x5e\x5f\x1f\x5e\x5f\x72\x4c\x48\x1a\xfb\x15\xe7\x2a\xf7\x0e\xf7\x0e\xec\xf5\xf7"
+"\x19\xf7\x16\x32\xea\xfb\x0e\x1e\x7e\x68\x15\xdb\xc2\x32\xfb\x17\x22\xcf\x1d\xa7\x99\xf8\x56\x29\x1d\xbe\x88\x90\x83\x8c\x2f\x08"
+"\xfb\x65\x07\x8a\x2f\x28\x0a\xe3\x1a\xf7\xb6\xf7\x5f\xfb\xb6\x07\xa2\x1d\x84\xf7\x3a\xa4\x15\x73\xb2\xa2\x83\xac\x1b\xf7\x04\xec"
+"\xf7\x03\xf7\x16\xf7\x0e\x40\xf0\x32\x59\x68\x75\x49\x54\x1f\xe9\x07\x46\x6a\x80\x86\x42\x6d\x91\x7d\x18\x95\x8e\x05\x8e\x92\x91"
+"\x8c\x91\x1b\xa8\x95\x7a\x57\x1f\xfb\xfa\x07\x88\x65\x89\x6f\x8b\x8b\x89\x84\x19\x74\x83\x7e\x83\x6c\x1b\x79\x7a\xf7\x77\x9c\x7f"
+"\x06\x5a\x8c\x82\x9a\x8a\xe3\x08\xf7\xfd\x04\xbf\xb6\x9b\x96\xb0\x1b\xd2\xba\x44\xfb\x01\x23\x5a\x42\x44\x6c\x6d\x9a\xa2\x7b\x1f"
+"\x7d\x9f\x88\x9f\xbe\x1a\x0e\x4c\xf8\x20\xf7\x49\x15\x46\x72\x5a\x65\x4a\x1b\x37\x56\xd0\xf7\x01\xf1\xb8\xcd\xd0\xb1\x9c\x7b\x61"
+"\x91\x1f\x69\x90\x9c\x7a\xab\x1b\xa7\x9f\x9d\xa4\xc4\x47\xb9\x39\xfb\x0f\x34\x29\xfb\x1e\x4d\x9c\x56\xaa\x63\x1f\x5e\xae\xc2\x6f"
+"\xc0\x1b\xe1\xca\xc9\xf7\x0a\xaf\x1f\x0e\x45\xf7\x97\xf8\x2f\x15\xb0\x06\xcc\x8c\xaa\x6f\x99\x42\x08\x9a\x06\x7f\xf7\x1f\x05\xfc"
+"\x10\x58\x0a\x98\xd6\xa8\xa3\xdb\x8c\x08\xa5\xfb\xb6\x06\x8a\x2f\x86\x82\xab\x0a\x84\x74\x1d\x0e\xf7\x21\xf8\x47\xfb\x34\x15\x9c"
+"\x7e\x07\x5a\x8c\x82\x9b\x8a\xe2\x08\xb9\x07\x81\xad\x9f\x87\x9d\x1b\xee\xe0\xf7\x02\xf7\x15\xf7\x15\x41\xe9\x26\x77\x7c\x89\x83"
+"\x5d\x1f\xf7\x73\x07\x47\x69\x80\x86\x42\x6e\x91\x7c\x18\x91\x9a\x92\x8c\x95\x1b\x95\x97\x86\x85\x90\x1f\x93\x80\x8c\x84\x64\x1a"
+"\x37\x07\x97\x5a\x7d\x8d\x77\x1b\x30\x38\xfb\x03\xfb\x0f\xfb\x13\xda\x27\xf0\x9d\xa7\x8f\x93\xaa\x1f\x5f\x07\x89\x65\x89\x70\x8b"
+"\x89\x88\x85\x19\x74\x83\x7e\x83\x6c\x1b\x79\x7a\x06\xf7\x2f\xf8\xc7\x15\x9a\xa2\x96\x8f\x9f\x1b\xd1\xb6\x36\xfb\x1b\xfb\x01\x67"
+"\x4a\x50\x73\x7a\x92\xa2\x6c\x1f\x3d\x7f\x15\x7e\x75\x7d\x86\x77\x1b\x47\x5f\xdb\xf7\x10\xf7\x0e\xad\xcf\xc9\xa4\x9c\x83\x71\xa9"
+"\x1f\x0e\x84\xf7\xd0\xf7\xd5\x15\xcf\xef\x94\x93\xbb\x90\x08\x90\x9b\xfb\x35\x7b\x93\x06\xa0\x9a\x83\x7f\x8a\x1f\x83\x86\x7f\x83"
+"\x7f\x1e\x52\x39\x63\xcb\x05\x7e\x9e\x81\xa3\x95\x1a\x95\x98\x92\x9c\x1e\x92\x9b\xfb\x5c\x7b\x93\x06\xb8\x87\x8c\x8a\xdb\xfb\x15"
+"\xb8\x42\x18\x47\x21\x54\x34\x7f\x7f\x65\x86\x19\x78\x8a\x05\x7b\xf7\x3a\x9c\x80\x07\x77\x80\x91\x97\x93\x8d\x90\x9f\xab\x1f\xce"
+"\xf7\x01\xcf\xfb\x02\x05\x97\x79\x91\x7c\x82\x1a\x7e\x80\x84\x75\x1e\x83\x7a\xf7\x62\x9c\x84\x06\x5f\x8d\x7c\x9d\xfb\x20\xf7\x76"
+"\x08\x0e\xa7\xf8\x9e\xfb\x03\x15\x81\xf7\x21\x05\x8a\x85\x85\x8b\x89\x1b\x5f\x84\x9a\xe3\x1f\xf7\x59\x07\xa7\x0a\xfb\xb6\xfb\x5e"
+"\xf7\xb6\x07\xa7\x0a\xfb\x65\x07\x8a\x2f\x86\x83\x58\x88\x08\x7a\x7a\xf8\x14\x06\xd1\x88\xa8\x6e\x94\x3c\x08\x0e\x87\xf7\xe0\xf7"
+"\x0d\x15\x8a\x2f\x86\x82\x58\x88\x08\x6c\x7a\xf7\x84\x45\x0a\x56\x0a\xfb\x70\x7a\x96\x06\x87\x1d\x0e\xf7\x9b\xf9\x86\x16\x9c\x7b"
+"\x07\x5a\x8c\x83\x99\xe3\x1a\xf7\x62\x07\xe6\x38\x0a\xfb\x69\x7a\x96\x06\xb7\x86\x8f\x82\x8d\x31\x08\xfb\xb5\xfb\x44\xf7\xb5\x6b"
+"\x1d\x94\x9c\xfb\x69\x7a\x96\x06\xbe\x88\x90\x82\x8c\x2f\x08\xfb\xb5\xfb\x46\xf7\xb5\x07\xe0\x92\x9a\xb7\x8f\x1e\x94\x9c\xfb\x69"
+"\x51\x0a\x7a\x06\x0e\xf7\x9b\xf9\x88\xfb\x03\x15\x83\xf7\x20\x05\x7f\x06\x5a\x8d\x83\x94\xc8\x1a\xf7\x75\x07\xe6\x38\x0a\xfb\x69"
+"\x7a\x96\x06\xb7\x86\x8f\x82\x8d\x31\x08\xfb\xb5\xfb\x44\xf7\xb5\x6b\x1d\x94\x9c\xfb\x69\x7a\x96\x06\xbe\x88\x90\x82\x8c\x2f\x08"
+"\xfb\xb5\xfb\x46\xf7\xb5\x07\xe0\x92\x9a\xb7\x8f\x1e\x94\x9c\xfb\x69\x51\x0a\x7a\xf8\xea\x06\xdf\x8e\xac\x6e\x95\x36\x08\x0e\x95"
+"\xf7\xcd\x26\x0a\xfb\xba\x58\x0a\x9d\xd7\xa6\xa4\xce\x8a\x08\xa6\xfb\xb6\x06\x89\x2f\x86\x82\x59\x88\x08\x79\x7a\xf7\x74\x06\xf7"
+"\x08\xd3\xbd\xdd\xd8\x40\xbe\xfb\x05\x77\x7c\x8a\x88\x68\x1f\xd5\x07\xe3\x92\x99\xbd\x8c\x1e\x9b\x06\x42\xfb\x61\x15\x8d\x9c\x93"
+"\x8b\x98\x1b\xde\xd8\x1d\x0e\xf7\x39\xa0\xf8\x56\x29\x1d\xbe\x88\x90\x82\x8c\x30\x08\xfb\x65\x47\x1d\xf7\x74\x06\xf7\x08\xd2\xb9"
+"\x0a\x7c\x8a\x88\x68\x1f\xd5\xac\x0a\x42\xfb\x72\x15\x8d\x9d\x92\x8b\x99\x55\x0a\xf8\x72\x74\x15\x7b\x06\x5a\x8c\x83\x99\xe4\x1a"
+"\xf7\x64\x07\xe4\x93\x98\xbc\x8d\x5d\x1d\x06\x0e\x58\x9f\xf8\x56\x29\x1d\xbe\x88\x90\x82\x8c\x30\x08\xfb\x65\x47\x1d\xf7\x74\x06"
+"\xf7\x08\xd2\xb9\x0a\x7c\x8a\x88\x68\x1f\xd5\xac\x0a\x42\xfb\x72\x15\x8d\x9d\x92\x8b\x99\x55\x0a\x0e\x3d\xa8\xf7\xbf\x15\x9b\x06"
+"\xe0\x9c\xbb\xb9\xd6\x1b\xdf\xb8\x50\xfb\x08\x8f\x1f\xfb\x50\x67\xf7\x50\x06\x8a\x56\x85\x70\x78\x6b\x08\x5d\x70\x62\x73\x56\x1b"
+"\x50\x61\xa2\xc3\x5b\x1f\x7a\x7e\x05\x3b\xc3\xbe\x6d\xd8\x1b\xf7\x11\xeb\xf0\xf7\x18\xf7\x1c\x31\xea\xfb\x16\x72\x77\x88\x83\x71"
+"\x1f\x7f\x63\x8b\x8b\x81\x1b\x81\x86\x8f\x97\x85\x1f\x7f\x06\x0e\xf7\x84\xf7\xa6\xf7\x6e\x15\xfb\x17\x8e\xe4\x2d\xf7\x0d\x1b\xf7"
+"\x0f\xec\xf5\xf7\x1a\xf7\x17\x32\xe8\xfb\x11\xfb\x03\x34\x39\xfb\x0d\x78\x1f\x27\xd7\x06\x95\x1d\x07\xf7\xc7\xf7\x60\x15\xdb\xc2"
+"\x32\xfb\x16\x21\xcf\x1d\x5c\xf7\xc1\xf7\x0d\x15\x89\x2f\x87\x82\x58\x88\x08\x79\x7a\xf7\x77\x45\x0a\x56\x0a\xfb\x7a\x06\x59\x5e"
+"\x82\x7c\x72\x1f\x66\x73\x77\x67\x5d\x1a\x42\xb8\x66\xf0\x82\x1e\x69\x83\x7b\x81\x77\x6f\x40\xfb\x00\x18\x7d\x78\x76\x7f\x78\x8c"
+"\x08\x83\x7a\xf7\x07\x06\xf7\x05\xf7\x36\x05\xac\xa3\x9a\x95\xa7\x1b\x8f\x90\x8b\x8a\x97\x1f\xa6\x04\x86\x74\x81\x8a\x7a\x1b\x41"
+"\x5e\xaf\xc6\xc9\xb8\xb3\xd0\x9c\x97\x89\x86\xa5\x1f\x0e\xfb\x30\x90\xf8\x56\x29\x1d\xbe\x88\x90\x83\x8c\x2f\x08\xfb\x66\x07\x8a"
+"\x30\x28\x0a\xe2\x1a\xf7\xb7\xf7\x53\xf7\x16\x7a\x07\x85\x47\x79\x72\x5f\x8d\x08\x0e\x73\xf7\x36\xf9\x30\x15\x47\x69\x80\x86\x41"
+"\x6d\x92\x7d\x18\x91\x9a\x92\x8c\x94\x1b\x9a\x97\x84\x7e\x90\x1f\x8e\x83\x8b\x8a\x8c\x71\x08\x2a\x6e\xec\xfc\x17\x06\x33\x83\x7c"
+"\x5a\x8a\x1e\x7a\x7a\xf7\x74\x9c\x7d\x06\x5a\x8c\x83\x9a\xe3\x1a\xf7\x6e\x07\xb6\xb2\xab\x9d\xb2\x1b\xa5\xa2\x7e\x74\x9b\x1f\xa5"
+"\x67\x93\x54\xfb\x19\x1a\xfb\x2b\x83\x49\x75\x65\x1e\x77\x80\x7d\x82\x7a\x1b\x7a\x7e\x97\x9a\x8c\x1f\x8c\x9c\x05\xa3\x8c\x7a\x9e"
+"\x72\x1b\x73\x7c\x7b\x72\x64\xb3\x6d\xbc\xf7\x01\xcf\xf7\x1b\xf7\x6e\xf7\x4d\x5d\xdf\x25\x52\x63\x76\x53\x59\x1f\xf7\x16\xf7\x2f"
+"\xa8\xfb\x2f\x07\x0e\x2a\xf7\x45\xf8\x2f\x15\xde\x06\xcf\xab\x6e\x44\x96\x1f\x9c\x06\x7b\xf7\x1f\x05\xfb\xf0\x7a\x9c\x06\xbe\x88"
+"\x90\x83\x8c\x2f\x08\xfb\x66\x07\x8a\x30\x28\x0a\xe2\x1a\xf7\x0c\xf8\x95\xc8\x0a\x3d\xf8\x19\x26\x0a\x7f\x06\x7f\x86\x85\x87\x82"
+"\x1b\x84\x80\x8d\x8e\x80\x1f\x9a\x5d\x79\x8e\x6b\x1b\xfb\x13\x31\x2b\xfb\x1b\xfb\x18\xeb\x26\xf7\x11\xd8\xbe\xa9\xdb\xc3\x1f\x7a"
+"\x98\x05\x53\x5b\x61\x74\x50\x1b\x5a\x65\x9f\xb2\x70\x1f\x73\xad\x83\xaa\x8a\xc5\x08\xf7\x50\xaf\xfb\x50\x06\xf7\x08\x8f\xb8\xc6"
+"\xdf\x1b\xd6\xbb\x5e\x35\x9c\x1f\x9b\x06\x0e\xfb\x0a\xdc\x88\x15\x96\x8d\x8f\x8e\x95\x1b\x90\x8f\x8a\x89\x93\x1f\x7e\xbb\x9a\x89"
+"\xa7\x1b\xde\xc5\xbf\xd6\xc3\x6a\xb8\x44\xb0\x1f\x59\xa6\x05\x56\xa6\x77\xa2\xaa\x1a\xac\xa6\xa4\xb1\xc6\xb0\x64\x41\x98\x1e\x9c"
+"\xf7\x22\x79\x06\x83\x87\x87\x87\x85\x1b\x88\x89\x8b\x90\x78\x1f\x94\x6b\x7d\x8d\x76\x1b\x3c\x53\x56\x42\x68\x99\x6e\xa9\x71\x1f"
+"\x9d\x7b\x8c\x8a\xb8\x73\xb2\x75\x18\xbc\x6f\xa2\x6f\x6a\x1a\x68\x6e\x72\x65\x4b\x62\xb7\xe1\x79\x1e\x7a\xfb\x36\x06\x0e\xfb\x79"
+"\xb1\x0a\x8e\x92\x93\x8c\x90\x1b\xa8\x92\x7e\x53\x1f\xfb\x5a\x07\x8a\x2f\x28\x0a\xe3\x1a\x5e\xf8\xa7\x15\x6e\x74\x75\x6f\x6f\xa2"
+"\x74\xa8\xa7\xa2\xa2\xa7\xa6\x74\xa2\x6f\x1f\x0e\xfb\x79\xb1\x0a\x8d\x92\x93\x8d\x90\x1b\xa8\x92\x7e\x53\x1f\xfb\x5a\x07\x8a\x2f"
+"\x28\x0a\xe3\x1a\xfb\x0a\xf8\x8d\x53\x0a\xf7\x2c\xc4\x1d\xfb\x79\xf7\x55\xf8\x63\x15\x47\x69\x80\x87\x41\x6d\x92\x7d\x18\x96\x8e"
+"\x05\x8d\x91\x93\x8d\x91\x1b\xa8\x92\x7e\x53\x1f\xfb\xd3\x07\x34\xea\x1d\x75\x7c\x93\x7b\x1b\x74\x79\x79\x76\x6e\xad\x76\xb9\xc8"
+"\xc0\xa9\xbc\xa6\x1f\x9c\xac\x8f\xa4\xe1\x1a\x5d\xf8\xde\x53\x0a\x0e\xf7\x70\xf8\x3f\xf7\xde\x15\xe3\x93\x99\xbc\x8c\x1e\x9b\x9c"
+"\xfc\x22\x7a\x97\x06\xc2\x98\x77\x35\xfb\x46\x77\x30\x63\x83\x85\x8d\x92\x7f\x1f\x92\x7d\x83\x8e\x83\x1b\x72\x78\x79\x74\x6e\xa3"
+"\x79\xb1\xe9\xb0\xe7\xf7\x80\x9c\x8b\x95\x8a\xce\x1f\xf7\x1a\xfb\xb6\x06\x51\x1d\x7a\x7a\xf7\x73\x06\xf7\x09\xd2\xbd\xdd\xd8\x40"
+"\xbe\xfb\x05\x76\x7d\x8a\x88\x68\x1f\x6f\x04\x8d\x9d\x93\x8b\x97\x1b\xde\xbb\x65\x49\x52\x5f\x67\x45\x7a\x7c\x8d\x90\x74\x1f\x0e"
+"\xf7\x6c\xf8\x0a\xf7\x92\x15\xfb\x6b\xd7\x06\xe2\x60\x1d\x90\x82\x8c\x30\x08\xfb\x65\x07\x8a\x2f\x3e\x1d\x5a\x8d\x83\x99\xe3\x1a"
+"\xec\xf7\x6b\x2a\x47\x1d\xf7\x74\x06\xf7\x07\xd3\xbd\xdd\xd8\x40\xbe\xfb\x06\x78\x7b\x8a\x88\x69\x1f\xd5\x07\xe2\x93\x99\xbc\x8d"
+"\x1e\x9b\x9c\xfb\x76\x7a\x9d\x06\xbd\x88\x90\x82\x8c\x30\x08\xda\x25\x15\x8d\x9c\x92\x8b\x9a\x55\x0a\x0e\x84\xf7\x34\xf8\xad\x15"
+"\xf7\x17\x07\x47\x69\x80\x86\x41\x6d\x92\x7d\x18\x91\x9a\x92\x8c\x94\x1b\xa4\x95\x7e\x67\x8c\x1f\x85\x2a\x6e\xec\xfc\x17\x07\x33"
+"\x83\x7c\x5a\x8a\x1e\x7a\x7a\xf7\x74\x9c\x7d\x06\x5a\x8c\x83\x9a\xe3\x1a\xf7\x6c\x07\xba\xbd\xa9\x9b\xad\x1b\xa6\xa6\x78\x71\x93"
+"\x1f\x91\x7b\x8e\x6f\x6e\x1a\xfb\x35\x07\x33\x83\x7c\x5b\x8a\x1e\x80\x7a\xf7\x68\x9c\x81\x06\x5a\x8c\x84\x9a\xe3\x1a\xf7\x35\x07"
+"\xc5\x86\xaa\x7c\xa9\x1e\xad\x7b\x66\xa1\x64\x1b\x57\x67\x77\x4a\x4b\x1f\xf7\x1c\xf7\x2f\xa8\x07\x0e\x76\x72\x1d\xf7\x5f\xf8\x94"
+"\xc8\x0a\x84\x74\x1d\xf7\x88\xf7\xe3\x15\x78\x7d\x7c\x77\x85\x8c\x86\x8e\x81\x1f\x8d\x83\x8c\x86\x87\x1a\x79\x69\x7b\x63\x60\x6a"
+"\x9c\xa2\x90\x8c\x8e\x8d\x91\x1e\x8d\x91\x8c\x90\x92\x1a\x9f\x7e\x9a\x78\x76\x7c\x7b\x75\xbc\x0a\x0e\xf9\x58\x16\x9d\x07\x41\x7b"
+"\x9a\xd1\x1f\xf8\x5c\x7c\x0a\xf7\x63\x07\xdd\x92\xb7\x4d\x91\xfb\x18\x08\x9c\x06\x91\xf7\x17\xb8\xca\xdd\x84\x08\x0e\xa7\x8f\x16"
+"\xf7\x37\x06\xc5\x8a\xaa\x59\x8e\x2a\x08\x9d\x06\x8e\xee\xa9\xbb\xc5\x8c\x08\xf7\x37\x9c\x7b\x06\x5a\x8c\x83\x99\xe3\x1a\xf7\x65"
+"\x6b\x1d\x9b\x9c\xfb\x77\x7a\x9d\x06\xbe\x88\x90\x83\x8c\x2e\x08\xfb\xb6\x07\x89\x8c\x05\xfb\x70\xf7\xb5\x06\xe3\x38\x0a\xfb\x76"
+"\x51\x0a\x06\x0e\x4c\xbb\xf7\x9d\x15\xd4\xae\xbb\xb1\xc4\x1b\xdb\xc4\x3b\xfb\x09\x8d\x1f\xfb\xab\x06\xfb\x07\x8d\xca\x44\xee\x1b"
+"\xf7\x01\xdc\xee\xf7\x19\xf7\x18\x3c\xef\x22\x55\x58\x70\x5c\x68\x1f\x79\x72\x7f\x6e\x79\x53\x08\xf7\xbc\xfb\x19\x15\x49\x83\x6a"
+"\x65\x58\x1b\x59\x6c\xb1\xcd\x89\x1f\x0e\xf7\xda\xf8\x0f\xf8\x8d\x15\x5f\x7a\x70\x76\x62\x1b\x58\x6b\xb3\xca\xc6\xa6\xb1\xb4\xa2"
+"\x93\x83\x73\x8f\x1f\x75\x8f\x97\x80\xa0\x1b\x9f\x99\x97\x9c\xaf\x5f\xa8\x55\x3c\x53\x4f\x37\x3b\xc0\x4f\xd1\xc4\xb3\xb0\xd6\xa3"
+"\x1f\xfb\x6d\xfc\x85\x15\xb6\x06\xf8\x29\xf9\x2a\x05\x5f\x06\x64\xfc\x15\x15\x3a\x4d\x4c\x39\x3c\xc6\x4f\xda\xda\xc9\xcc\xdc\xdb"
+"\x52\xc5\x3c\x1f\x83\x70\x15\xbb\xac\x57\x3f\x4d\x6f\x63\x60\x5a\x6a\xbb\xd2\xd1\xa5\xb4\xb9\x1f\x0e\x6f\xf7\x84\xf7\x9a\x15\xc4"
+"\xc8\xab\xb1\xa2\xb0\x08\xb3\xcb\xa3\xd1\xc0\x1a\xbe\x71\xac\x62\x37\x4f\xfb\x14\xfb\xb4\x54\x1e\x6b\x65\x84\x84\x7b\x7c\x08\x7e"
+"\x7e\x86\x84\x84\x1a\x82\x93\x80\x91\x91\xa4\x9f\xa2\xa0\x1e\x85\x49\x8a\x75\x73\x1a\x4d\xa4\x6a\xba\xaa\xa6\x9e\xb0\xa3\x1e\x97"
+"\xa0\x93\x9f\x98\x1a\x95\x85\x91\x83\x82\x86\x86\x7d\x85\x1e\x64\x78\x7f\x7e\x7b\x1b\x80\x85\x94\x9b\xa4\x97\xe1\x9b\xe4\x1f\x94"
+"\xc5\x15\xf7\x7a\xb1\xa3\xd2\xb2\x1b\x99\x95\x7c\x77\x70\x80\x5d\x7c\x64\x1f\x75\x53\x6e\x5e\x5b\x56\x08\x0e\xf8\x53\xf7\x53\x21"
+"\x1d\xfb\x3c\x79\x06\xb1\x8a\xa6\x7b\xa1\x67\x08\xfc\x69\x07\x5e\x85\x7f\x76\x82\x88\x8c\x91\x81\x1e\x90\x82\x85\x8d\x82\x1b\x6f"
+"\x76\x78\x72\x6c\xa4\x77\xb3\xd2\xae\xbb\xed\x1f\xf8\x2c\x07\xf8\x26\xfc\xba\x05\x9e\xf8\xcf\x06\xa4\x96\x9c\x9c\x8f\x8f\x8a\x89"
+"\x8f\x1e\x81\xa7\x91\x89\x9a\x1b\xa9\x9e\x9d\xa7\xa9\x73\x9d\x63\x3f\x5c\x54\x33\x1f\xfb\xec\x07\xf7\x8c\xf7\xc3\x15\x3b\x4e\x40"
+"\x27\x27\xc5\x44\xdb\xde\xc7\xd5\xf0\xee\x50\xd3\x3a\x1f\x83\x6b\x15\xc1\xab\x53\x2e\x34\x72\x5d\x5a\x57\x6a\xc7\xe9\xdc\xa6\xba"
+"\xb9\x1f\x2a\xfc\x64\x15\xf7\x72\xc9\xfb\x72\x06\x0e\x9c\xf8\x9b\xf8\x59\x66\x0a\x9c\xf7\x70\xf8\x8b\x15\xa5\x06\x95\xb3\x05\x98"
+"\xbe\x8c\x91\xa8\x0a\x8c\x87\x99\x56\x1e\xf7\xc8\x31\x66\x0a\x4c\x26\x1d\xfb\x70\xf7\xe1\x23\x1d\xfb\x42\xc5\xf7\x82\x15\xf7\x42"
+"\xfb\xe8\x05\x7c\x93\x95\x83\x97\x1b\x93\x90\x8f\x92\x92\x89\x93\x88\x93\x1f\xfb\x17\xf7\xdd\xf7\x17\xf7\xdd\x05\x8e\x93\x8d\x93"
+"\x92\x1a\x93\x86\x8f\x83\x7f\x83\x85\x79\x81\x1e\x0e\xfb\x42\xf7\xa7\xf7\x82\x15\xfb\x42\xf7\xe8\x05\x9c\x82\x82\x92\x7f\x1b\x83"
+"\x86\x87\x83\x85\x8d\x83\x8e\x82\x1f\xf7\x17\xfb\xdd\xfb\x17\xfb\xdd\x05\x88\x84\x89\x83\x84\x1a\x83\x90\x87\x93\x97\x93\x91\x9c"
+"\x95\x1e\x0e\x4c\x7c\x1d\x8e\x6a\x91\x7c\x9b\x7c\x08\x65\x6d\x7b\x71\x6a\x1a\x60\xc8\x1d\x74\x7c\x9c\xa5\xa7\x9b\xa1\xa3\x90\x1f"
+"\xb4\x92\x96\x91\xae\xb1\x08\xfb\x2f\xde\x15\x6d\x86\x80\x76\x7f\x1e\x7d\x72\x70\x83\x76\x1b\x68\x6f\xad\xb6\x1f\x8f\x07\x8c\xc7"
+"\xb7\xb1\xf7\x09\xb4\x08\x0e\xf8\x81\xf9\x3a\xf7\x6c\xa6\x0a\x6c\x76\x4b\x5d\x1f\xc1\x6b\x05\xb2\xa5\x9c\x97\xaa\x1b\xa0\xa0\x86"
+"\x82\x9c\x1f\x5c\xe4\x9d\x84\xb8\x1b\xb9\xaa\xa0\xcc\xb9\x1f\x55\xf7\x61\xa6\x0a\x6d\x76\x4a\x5c\x1f\xc1\x6c\x05\xb2\xa5\x9c\x97"
+"\xaa\x1b\xa0\xa0\x86\x82\x9c\x1f\x5b\xe4\x9d\x85\xb8\x1b\xb9\xad\xa3\xc8\xb6\x1f\x0e\x4c\x6f\x1d\x4a\xf8\x5a\x87\x0a\x57\xcf\x3a"
+"\x1d\xf9\x03\xf8\x37\x15\xfc\xa0\x06\xf7\x66\xdc\x74\xc0\xfb\xb2\xfb\x14\x05\x3e\x07\xf7\xb2\xfb\x13\xa2\xbf\xfb\x66\xdd\x05\xf8"
+"\xa0\x06\xfb\x66\x39\xa2\x57\xf7\xb2\xf7\x13\x05\xd8\x07\xfb\xb2\xf7\x14\x74\x56\x05\x0e\xf8\x1b\xf9\x66\x15\x4b\xfd\x03\x06\x39"
+"\xf7\x66\x57\x74\xf7\x13\xfb\xb2\x05\xd8\x06\xf7\x14\xf7\xb2\x56\xa2\x3a\xfb\x66\x05\x0e\xf9\x66\xf7\xf9\x15\xcb\xfd\x03\x07\xf7"
+"\x66\xdc\x74\xc0\xfb\xb2\xfb\x13\x05\x3e\x07\xf7\xb2\xfb\x14\xa2\xbf\xfb\x66\xdd\x05\x0e\xf7\xf9\x04\xf9\x03\x06\xfb\x66\x39\xa2"
+"\x57\xf7\xb2\xf7\x14\x05\xd8\x07\xfb\xb2\xf7\x13\x74\x56\xf7\x66\x3a\x05\xfd\x03\x06\x0e\xf8\x1b\x16\xf9\x03\x07\xdc\xfb\x66\xc0"
+"\xa3\xfb\x14\xf7\xb1\x05\x3e\x06\xfb\x13\xfb\xb1\xbf\x73\xdd\xf7\x66\x05\xfd\x03\x07\x0e\xf7\xde\xf9\x03\xa4\x1d\xa2\xc2\x0a\x74"
+"\x05\x0e\xf7\x5b\x2c\x15\x51\xf7\xdb\xc5\x07\xfb\x58\xf9\x42\xa4\x1d\xa3\xc2\x0a\x73\x05\x0e\x8d\xf7\x31\xbd\x15\x60\xb3\xa7\x7d"
+"\xb7\x1b\xf7\x00\xe1\xf3\xf7\x16\xe8\x62\xd3\x40\xb1\x1f\xc5\xb3\xa4\xb3\xbc\x1a\xcd\x55\xb7\x3a\x40\x4e\x6c\x51\x63\x1e\x6b\x5c"
+"\x82\x62\x21\x1a\xfc\xc9\xda\x07\xf8\xdb\x04\xd9\x91\xba\x98\xaa\x1e\xba\x9f\xb0\xa6\xb5\x1b\xbd\xaf\x65\x57\x64\x81\x75\x66\x60"
+"\x1f\x8f\x7a\x81\x8d\x7e\x1b\x5f\x6c\x7b\x73\x7d\x9a\x7f\x9d\xa1\xa2\x93\x9f\xb0\x1f\xbc\x54\x9e\x55\x3b\x1a\xfb\x03\x56\x3c\x41"
+"\x66\x73\x99\xb8\x66\x1e\x0e\x4c\x35\x1d\xfb\x5f\xf7\xfc\x5b\x0a\x99\x94\x97\x9b\x1a\x9f\x7e\x97\x75\xdd\x1d\x4c\x35\x1d\x7d\xf8"
+"\xa3\x20\x0a\x4c\x35\x1d\x74\xf7\xfc\x20\x1d\x4c\x35\x1d\xfb\x3e\xf8\x70\x43\x1d\x0e\x4c\xf7\x97\xf7\x28\x15\xf7\x4b\xf7\xc3\x05"
+"\x31\x06\xfb\x13\xfb\x73\x6f\xd3\x05\xf0\x64\x53\xc4\x4f\x1b\x6d\x76\x78\x71\x72\xa2\x77\xa7\x1f\xc9\x8f\xa1\x79\xac\x3f\xb2\x2d"
+"\x18\xfb\x6c\xfb\xff\x05\xe6\x06\xf7\x31\xf7\xad\xba\xfb\x0f\x05\x24\xb3\xae\x4d\x9e\x1b\x8e\x8f\x8c\x8e\x90\x1f\xda\xbb\x85\x9a"
+"\x05\x86\x7e\x83\x89\x81\x1b\x72\x75\x98\xa5\x79\x1f\x76\xa8\x82\x9e\x6c\xdc\x08\x0e\xf8\x81\xf8\x8b\xf9\x4b\x15\xfb\x5c\xfb\x36"
+"\xfb\x35\xfb\x5c\xfb\x58\xf7\x36\xfb\x36\xf7\x57\xf7\x59\xf7\x37\xf7\x37\xf7\x57\xf7\x58\xfb\x36\xf7\x39\xfb\x55\x1f\x87\xfb\xd0"
+"\x15\xfb\x52\xf7\x50\x05\xb8\xc2\xcc\xa2\xd1\x1b\xd0\xcb\x75\x5f\xc4\x1f\xb3\x63\x15\xbb\x51\xa2\x4d\x42\x1a\x43\x74\x4b\x5d\x53"
+"\x1e\xfb\x54\xf7\x57\x05\xf7\x2c\xfb\x7f\x15\x5f\x54\x48\x73\x45\x1b\x45\x4b\xa2\xba\x50\x1f\xf7\x55\xf7\x55\x05\xfb\x7d\xfb\x2d"
+"\x15\x5f\xc1\x74\xcb\xd1\x1a\xd3\xa2\xcb\xba\xc4\x1e\xf7\x52\xfb\x50\x05\x0e\xf8\x81\xf9\x83\x16\x9f\x07\x24\x9f\x6e\x99\x5d\xbb"
+"\x5c\xbf\x7a\xc0\x8a\xeb\xa0\x66\x93\x7e\x97\x7d\x08\x5d\xb2\xc9\x6c\xc0\x1b\xe6\xd2\xd5\xe9\xe5\x4a\xd3\x3a\x6e\x84\x89\x6e\x50"
+"\x1f\xa7\xb4\x96\xaa\xb0\x1a\xe3\x42\xd2\x30\x2e\x44\x45\x30\x68\x92\x79\xad\x55\x1e\xa3\x5a\x77\x91\x6c\x1b\x40\x49\x3f\x34\x2e"
+"\xd4\x42\xe7\xdc\xcf\xbd\xe6\xb8\x1f\x8c\x7b\x8b\x80\x86\x1a\x43\x65\x3a\x55\x5f\x1e\x6b\x72\x74\x82\x2c\x77\x08\x77\x07\x0e\xf0"
+"\xf8\x7e\x67\x0a\xf7\x28\xf0\x15\xce\xac\xb7\xc8\xc7\x1a\xbd\x69\xb2\x5d\x69\x73\x74\x69\x6b\xa1\x78\xb0\x40\x0a\x70\x67\x55\x66"
+"\x1f\x0e\x84\xf7\xe8\xf8\xa3\x15\xfb\x02\xa1\x1d\x9b\x07\xc5\x0a\xf8\x31\xd7\xad\x3f\xf7\x0c\xbf\x1d\x7f\xfb\x0d\x69\x07\xf7\x0d"
+"\xfc\x3d\x97\x0a\x0e\x67\xf8\x23\xf9\x0a\x15\xa9\x28\x3e\x9a\x50\x1b\x4c\x61\x6f\x61\x6f\x9a\x76\xb7\x6a\x1f\xe3\x48\x05\xfb\x05"
+"\x77\x3e\x29\xfb\x0d\x1a\xfb\x18\xe6\x2b\xf7\x10\xf7\x12\xee\xf7\x00\xf7\x20\xd9\x71\xc0\x45\xc9\x1e\x6b\xa7\x7f\x95\x3e\xc0\x43"
+"\xbe\x18\x6b\xa1\x7e\x99\x99\x1a\x99\x9a\x93\xa5\xc4\xe4\x6f\x5d\xe5\x1e\xfb\x45\xfb\x24\x15\xde\xc5\x2c\xfb\x1d\xfb\x01\x62\x4c"
+"\x44\x66\x67\x9e\xaa\x76\x1f\x6d\xb7\x79\xd1\xd1\x1a\xf6\xb5\xca\xd2\x1e\x0e\xf8\x81\xf7\x8e\xf7\xf1\x15\xf0\xfb\x11\xf7\x10\xfb"
+"\x45\xb1\x40\xc7\xf7\x00\xf7\x06\xf7\x35\xf3\xf7\x10\x3a\xe8\xfb\x36\xf7\x78\x68\xd2\x54\x24\x40\x21\xfb\x26\xfb\x4b\x08\x0e\xfb"
+"\x42\xf7\x2e\xf8\xe5\x83\x1d\x4c\x27\x1d\xac\xf7\xf7\x15\x40\x6f\x72\x75\x51\x1b\x4b\x69\xa9\xce\x7d\x1f\x6e\x06\x8c\x58\x92\x73"
+"\x9e\x6f\x08\x68\xa4\xb2\x78\xbb\x1b\xdf\xb9\x49\x0a\x4c\x27\x1d\xd6\xf8\x01\x20\x0a\x4c\x27\x1d\x3a\xf7\xce\x43\x1d\x0e\xf8\x81"
+"\xf9\x93\xf7\x6c\x15\xc8\xfc\x62\x07\x91\xf6\xc3\xbd\xf7\x01\x89\x08\xf7\xb7\xc9\xfb\xac\x65\x1d\x42\x2c\x1a\xfb\x08\xb8\x38\xc6"
+"\x0a\xc9\xfb\xb7\x06\xfb\x01\x89\x53\xbd\x85\xf5\x08\x0e\x4c\x27\x1d\xfb\x80\xf7\xb8\x23\x1d\x84\xf7\x38\xf7\xf0\x15\xb8\xbb\xa1"
+"\x97\xac\x1b\xbc\xa3\x6c\x49\x1f\xfb\xf5\xd4\x1d\x80\x92\xa0\x7b\x1f\xa2\x79\x7d\x94\x7b\x1b\x74\x79\x7a\x75\x6b\xb2\x74\xc2\xb7"
+"\xb3\x99\xa4\xa6\x1f\xaf\xab\xa1\xcf\xda\x1a\xf7\xca\x94\x1d\x7c\xf7\x68\x9a\x07\x59\x8e\x7b\x98\xaf\x1a\x0e\x4c\xf8\x2c\x8d\x1d"
+"\xf7\x08\xa1\x9a\x8d\x92\xa1\x1e\x65\x6b\x7d\x73\x6a\x1a\x61\xdc\x1d\x6b\x79\x82\x76\x1b\x75\x7b\x9b\xa1\xa6\x98\xa1\xb5\xb7\x1f"
+"\xc2\xc6\xa2\xab\x9a\xb7\x08\x91\x0a\x0e\x34\x6b\x0a\x0e\x34\x6b\x0a\xfb\x1f\xf7\x19\x15\xa6\x06\x94\xb3\x05\x98\xbe\x8c\x91\x9e"
+"\x1a\xab\x7e\x9d\x73\x74\xe6\x1d\xf8\x81\xf7\x8c\xf7\xb8\x15\x4b\xf8\x8c\xcb\x07\xfc\x8c\xfb\x54\x15\x4b\xf8\x8c\xcb\x07\xfc\x8c"
+"\xf8\x14\x15\x4b\xf8\x8c\xcb\x07\x0e\xe8\xf8\xa4\xf7\x8e\x15\x89\xd4\x86\xae\x7d\xaf\x08\xdb\x6a\x3e\xbb\x2b\x1b\xfb\x23\x31\x23"
+"\xfb\x38\xfb\x36\xe2\x29\xf7\x25\xf7\x01\xd5\xbe\xec\xa9\x1f\x5f\x06\x46\x6c\x52\x68\x3b\x1b\x5e\x66\x97\xa2\x72\x1f\x78\x9b\x82"
+"\x9c\x7f\xb2\x8c\xf4\x18\xf7\xc0\xae\x15\xfb\xbe\xe8\x06\xd5\xad\xb1\xa5\xd3\x1b\xc4\xb2\x79\x62\xae\x1f\x97\x7d\x8f\x84\x92\x77"
+"\x08\x0e\x9b\xf7\x49\xf8\x67\x15\x46\x69\x81\x86\x41\x6c\x92\x7d\x18\x95\x8f\x05\x8d\x92\x91\x8c\x93\x1b\xa8\x92\x7e\x52\x1f\xfb"
+"\xd4\xda\xf7\xeb\x07\xb9\xc0\xa4\x98\xaf\x1b\xc2\x9a\x72\x30\x1f\xfc\x65\xda\xf8\x62\x07\xcd\x87\xa6\x7d\xa9\x1e\xae\x7c\x66\xa1"
+"\x62\x1b\x5a\x5e\x72\x50\x51\x1f\x0e\x9b\xf7\x45\xf8\x67\x15\x46\x69\x81\x86\x41\x6c\x92\x7d\x18\x95\x8f\x05\x8d\x92\x91\x8c\x93"
+"\x1b\xa8\x92\x7e\x52\x1f\xfb\xd4\xda\xf7\xeb\x07\xb9\xc0\xa4\x98\xaf\x1b\xc2\x9a\x72\x30\x1f\xfc\x65\xda\xf8\x62\x07\xcd\x87\xa6"
+"\x7d\xa9\x1e\xae\x7c\x66\xa1\x62\x1b\x5a\x5e\x72\x50\x51\x1f\xd2\xf7\x10\x5f\x0a\xbe\x8c\x91\xa8\x0a\x8b\x88\x99\x55\x1e\x0e\x98"
+"\xf7\x3c\xf7\x43\x15\xb4\xf7\xef\x05\x8e\xa3\x8e\xad\x99\x1a\xc0\x78\xa7\x68\x68\x78\x6f\x56\x7e\x8e\x60\x8d\x7b\x1e\xb4\xfb\xef"
+"\x05\x93\x43\x15\x6b\x71\x71\x6b\x6b\xa5\x71\xab\xaa\xa5\xa5\xab\xab\x71\xa5\x6c\x1f\xf7\x63\xd3\x15\xb4\xf7\xef\x05\x8e\xa3\x8e"
+"\xad\x99\x1a\xc0\x78\xa7\x68\x68\x78\x6f\x56\x7e\x8e\x60\x8d\x7b\x1e\xb4\xfb\xef\x05\x93\x43\x15\x6b\x71\x71\x6b\x6b\xa5\x71\xab"
+"\xaa\xa5\xa5\xab\xab\x71\xa5\x6c\x1f\x0e\x38\xbd\x16\xf7\xd9\xf8\xd5\xfb\xd9\x37\xf7\x85\xfb\x36\xfb\x85\x37\xf7\x85\xfb\x37\xfb"
+"\x85\x06\x0e\xf8\x13\xf7\xac\x15\xf7\x02\x97\xdd\xe6\xf7\x01\x1a\xf7\x0b\x2b\xea\xfb\x0a\xfb\x0a\x2c\x2b\xfb\x0a\xfb\x01\xdd\x30"
+"\xf7\x01\x7f\x1e\x32\xfb\x29\x64\xf7\x29\xfb\x2c\xb7\xf7\x2c\xf7\x28\xb2\xfb\x28\x07\x72\xf8\x6a\x15\xeb\xd8\x40\x2e\x2d\x3f\x3f"
+"\x2d\x2e\x3f\xd7\xe8\xe7\xd7\xd8\xe5\x1f\x0e\x84\xf7\xb2\xa9\x15\xfb\x02\x90\x4a\xf7\x07\xf7\x50\x1a\xf7\x4d\xd1\xf7\x0e\xf4\xb3"
+"\xb2\x74\x63\xa7\x1e\xa3\x69\x96\x6e\x9a\x47\x08\xa5\x06\x84\xf7\x75\x05\x72\x06\x77\x87\x80\x7e\x7f\x1b\x84\x82\x8e\x90\x81\x1f"
+"\x9c\x6b\x68\x93\x67\x1b\x3f\x3f\x65\x4f\x60\x1f\x5d\x4b\x72\x31\x28\x1a\xfb\x5f\xf1\xfb\x1c\xf7\x2c\xe3\xd6\xb9\xdc\xb9\x1e\x74"
+"\x9b\x6d\x63\x6d\x70\x66\x7a\x19\xf7\x3a\x07\x9d\xb6\x9a\x9d\xa1\x91\x08\x78\x9a\x95\x85\x9a\x1b\x9f\x96\x96\xa1\xa2\x7c\x98\x71"
+"\x6a\x78\x7b\x56\x6a\x1f\xce\x07\x80\x8e\x25\x64\x05\x79\x07\x8e\x99\x8f\x8c\x8f\x1b\x9a\x8f\x81\x6b\x1f\x0e\x4a\x7d\xf8\x19\x15"
+"\x91\x95\x90\x8d\x93\x1b\xa5\xa8\x67\x3f\xad\x1f\xb8\x28\xab\x2f\x9a\x45\x08\x74\x4b\x84\x6e\x68\x1a\x5e\xa2\x67\xa7\xac\xa1\xb4"
+"\xc8\xa8\x87\xa8\x82\xb5\x1e\xee\xf7\x5a\x8e\x92\x94\x9c\x99\xa3\x19\x96\x9f\x94\x9d\x93\x9c\x08\x99\xab\x93\xa8\xa4\x1a\xad\x75"
+"\xa4\x6c\x70\x77\x78\x72\x84\x8d\x80\x8f\x82\x1e\x9a\x63\x8c\x87\x7b\x1a\x6c\x87\x80\x66\x3f\x1e\x47\xfb\x22\x76\xf1\x55\xf7\x2f"
+"\x66\xcd\x19\xae\x76\x6b\xb0\x81\x1b\x8a\x87\x89\x88\x87\x1f\x3c\x4f\x05\x0e\x84\x3a\x0a\xf7\x66\xf7\xdd\x37\x1d\x84\x3a\x0a\xf7"
+"\x91\xf7\x40\x20\x1d\x84\x3a\x0a\xf7\x21\xf8\x25\x15\x48\x6a\x5e\x4e\x4f\x1a\x59\xae\x64\xb8\xad\xa3\xa2\xad\xaa\x75\x9f\x67\x84"
+"\x85\x8a\x8a\x84\x1e\x89\x85\x8b\x8b\x89\x1b\x84\x85\x91\x93\xac\xa7\xaf\xc1\xb0\x1f\x0e\x84\xf7\x8b\xf9\x10\x35\x0a\xf7\x73\xfb"
+"\x8c\x71\x1d\xfb\x7f\x59\x15\xc6\xa7\xae\xb9\xaa\xa5\x7a\x6d\x9b\x1e\x9e\x68\x96\x5e\x63\x1a\x53\x6f\x68\x5d\x4d\x62\xcc\xeb\x1e"
+"\x86\xfb\xe5\x9b\x0a\x0e\xf8\x81\xf7\xba\x16\xf8\x30\xcd\xfc\x30\x06\xa5\x04\xf8\x30\xf7\x81\x05\x91\x07\xfc\x30\xf7\x8c\x05\x2e"
+"\x07\xf7\xc6\xfb\x4c\xfb\xc6\xfb\x42\x05\x0e\x84\xd4\xf8\x92\x15\xfc\x2c\x07\x89\x43\x86\x83\x69\x1d\xd2\x08\xf7\x85\x07\xb9\xb5"
+"\xa9\x9c\xb3\x1b\xbc\xa4\x67\x45\x1f\xfb\x5a\x07\x89\x44\x82\x80\x52\x86\x08\x7c\xf7\x68\x9a\x07\x55\x94\x86\x92\x8a\xd2\x08\xf7"
+"\x5b\x07\xf4\x62\xc1\x39\x4f\x62\x73\x4f\x5d\x1e\xf7\x1a\xf7\x1f\xb2\xfb\x1f\xf7\x17\x07\x86\x8e\x68\x7f\x72\x82\x54\x7c\x19\x70"
+"\x83\x05\x7b\x07\x8c\x8e\x8f\x8b\x8f\x1b\xb7\x93\x83\x60\x1f\x73\x56\x64\x07\x0e\x84\x77\x1d\x36\xf9\x6a\x20\x1d\xf8\x81\xf8\x87"
+"\x6f\x15\x9f\xe5\xc7\xf2\xf7\x08\xf7\x25\x08\xeb\xf7\x0e\xab\xce\xdb\x1a\xdd\x45\xcf\x37\x5b\x5f\x76\x65\x6a\x1e\x75\x72\x81\x75"
+"\x7e\x5d\x7f\xaf\x83\x9d\x7f\x9d\x08\xbd\x6a\x58\xa8\x54\x1b\x36\x49\x47\x32\x48\xa0\x5e\xdf\xfb\x06\x1f\xf7\x2b\xfb\x5e\xb3\x47"
+"\xa5\x24\x08\x0e\xf8\x81\xf7\x2d\x16\xf9\x50\xf8\x25\x06\xfb\xf3\xf7\xdc\xfb\xf1\xfb\xdc\x05\xc8\xfb\xf2\x15\xf7\xdc\x07\xf7\xb4"
+"\xf7\xa2\xf7\xb6\xfb\xa2\x05\xfb\xdc\x07\x0e\xfb\x79\x27\x0a\xf7\x7a\xf9\x1d\x15\x3f\x6f\x72\x39\x1d\xb8\xf7\x58\xf8\x6a\x15\x47"
+"\x69\x80\xad\x0a\x92\x90\x8c\x93\x1b\xa8\x92\x7e\x53\x1f\xfb\x5e\x07\x8a\x2e\x86\x82\xcb\x0a\x5a\x8d\x83\x99\xe4\x1a\x5e\xf8\xb1"
+"\x15\x4d\x1d\xa8\xa7\xa2\xa2\xa8\xa7\x74\xa2\x6f\x1f\xf7\xc2\xfb\x55\x15\x46\x69\x81\x86\x41\x6d\x92\x7c\x18\x96\x8f\x05\x8d\x91"
+"\x90\x8c\x94\x1b\xa8\x92\x7e\x53\x1f\xfb\xd8\x07\x33\xea\x1d\x74\x7d\x93\x7b\x1b\x74\x79\x79\x76\x6e\xad\x75\xb9\xc8\xc0\xa9\xbd"
+"\xa6\x1f\x9c\xad\x8f\xa4\xe2\x1a\x5d\xf8\xe8\x35\x0a\x0e\xfb\x79\x27\x0a\x6b\xf8\xde\x15\x55\xf7\xc8\xc1\x07\x0e\xf8\x81\xf8\x88"
+"\xf7\xa4\x15\x60\xb2\x87\x8e\x78\x99\x08\xa5\x6a\x60\x9b\x6a\x1b\x45\x51\x51\x45\x45\xc5\x51\xd1\xad\xb4\x9b\xa5\xad\x1f\x9e\x99"
+"\x8f\x8e\xb6\xb2\xb8\x64\x8f\x87\x9c\x7e\x08\x71\xae\xb4\x7b\xad\x1b\xd1\xc5\xc5\xd1\xd1\x51\xc5\x45\x6a\x60\x7b\x71\x69\x1f\x7a"
+"\x7e\x86\x87\x5f\x64\x08\xac\x6d\x15\xbe\xbe\xbf\xa9\xb3\x1b\xb7\xb0\x66\x5f\x5e\x66\x66\x5f\x64\x58\xa8\xc0\x56\x1f\x4a\x16\x57"
+"\x57\x57\x6e\x64\x1b\x5f\x66\xb0\xb7\xb7\xb0\xb0\xb8\xb2\xbe\x6e\x57\xbf\x1f\x0e\xf8\x81\xf8\xb3\xf8\xd4\x15\xd5\x8a\xb1\x88\xc5"
+"\x1e\x89\xa8\x8a\xa9\x9a\x1a\xae\x96\xa2\x9d\x90\x91\x88\x88\x8d\x1e\x6f\x9c\x92\x86\x9d\x1b\x9e\x9a\x99\x9e\xa5\x73\x9d\x68\x69"
+"\x6d\x7a\x6e\x7b\x1f\x72\x60\x7d\xfb\x00\xfb\x22\x1a\xfb\xed\x07\x44\x8c\x61\x8e\x53\x1e\x8d\x6d\x8c\x71\x78\x1a\x68\x7e\x74\x79"
+"\x83\x85\x90\x98\x84\x1e\x9c\x82\x83\x90\x7d\x1b\x77\x7c\x7c\x79\x71\xa3\x79\xae\xad\xa8\x9c\xa8\x9c\x1f\xa4\xb6\x99\xf6\xf7\x23"
+"\x1a\x0e\xf7\xfc\xf9\x80\x15\xfd\x83\x07\x59\x07\x48\x8b\x8b\x89\x78\x1e\x77\x89\x84\x82\x7e\x1b\x82\x85\x90\x99\x82\x1f\xa0\x7e"
+"\x7e\x93\x76\x1b\x72\x78\x78\x73\x6b\xa6\x74\xb1\xe1\xc6\xe2\xf7\x14\x1f\xf9\x83\x07\x0e\xf8\x43\xfb\x6e\x15\xf9\x82\x07\xbe\x07"
+"\xcd\x8b\x8b\x8d\x9e\x1e\xa0\x8d\x92\x94\x98\x1b\x94\x91\x86\x7e\x94\x1f\x75\x98\x98\x83\xa0\x1b\xa4\x9e\x9e\xa3\xab\x70\xa2\x65"
+"\x35\x50\x33\xfb\x14\x1f\xfd\x82\x07\x0e\xf8\x81\xf9\x64\x16\xf7\x8a\x07\xf7\x1d\x86\xad\x73\xb4\x1e\xca\x65\x44\xb1\x39\x1b\x3f"
+"\x4b\x6c\x53\x62\x1f\x6a\x5e\x85\x6b\xfb\x29\x1a\xfb\x8a\xc7\xf7\x8d\x07\xf0\x91\xb6\x9c\xaa\x1e\xb9\xa4\xc2\xa9\xc4\x1b\xc0\xbf"
+"\x71\x61\xa7\x1f\xa0\x6b\x91\x66\xfb\x06\x1a\xfb\x8d\x07\x0e\xf8\x81\xf8\x89\xf9\x6e\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63"
+"\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37\xf7\x37\xfb\x5e\x1f\xfb\x01\xfb\x63\x15\xa9\xa4\x72\x6d"
+"\x6d\x72\x72\x6d\x6e\x71\xa4\xa8\xaa\xa4\xa4\xa9\x1f\xfb\x14\xfb\x05\x15\x96\x59\x96\x75\xa5\x6d\x08\x54\xbb\xc7\x71\xdc\x1b\xdc"
+"\xc7\xa5\xc2\xbb\x1f\xa5\xa9\x96\xa1\x96\xbd\x84\x36\x80\x62\x6d\x5e\x08\x4c\x61\x4b\x6b\x38\x1b\x3e\x4f\xa6\xc1\x61\x1f\x67\xba"
+"\x7c\xb8\x84\xe8\x08\xf7\xee\xf7\x05\x15\xa9\xa4\x72\x6d\x6d\x72\x72\x6d\x6e\x71\xa4\xa8\xaa\xa4\xa4\xa9\x1f\x0e\xfb\x79\xf7\x47"
+"\xf8\x5d\x15\x87\x8e\xfb\x2f\x54\x05\x7c\x07\x93\x8c\x05\x8d\x97\x97\x8c\x95\x1b\xa3\x94\x7b\x5f\x1f\xfb\x7c\x07\x89\x41\x82\x81"
+"\x47\x88\x08\x7c\xf7\x17\xab\x1d\xb0\xac\xac\xb1\x1f\xac\x9a\x06\x49\x90\x84\x94\x8a\xd4\x08\x58\xf8\xd9\x5b\x1d\xfb\x82\x86\x1d"
+"\x0e\xfb\x82\x73\x0a\xfb\x06\xf8\x8a\x35\x0a\xf7\x2c\x16\x4d\x1d\xa7\xa8\xa2\xa2\xa8\xa6\x74\xa3\x6f\x1f\x0e\xfb\x82\x73\x0a\x58"
+"\xf8\x5f\x83\x1d\xfb\x82\x86\x1d\x56\xf8\x05\x5f\x0a\xbf\x8c\x90\x9e\x1a\xac\x7e\x9c\x73\x72\x7f\x7a\x6a\x7c\x8d\x7e\x90\x76\x1e"
+"\x92\x70\x05\x0e\xfb\x79\x9c\x16\x6c\x0a\xf7\x92\xf9\x03\x4b\x0a\xfb\x79\x70\x0a\xe0\xf8\x8f\x20\x1d\x88\xf7\x49\xf8\x67\x15\x46"
+"\x69\x80\x86\x42\x6d\x92\x7d\x18\x96\x8f\x05\x8d\x91\x91\x8c\x93\x1b\xa8\x92\x7e\x53\x1f\xfb\xd6\xda\xf7\x81\x07\xf7\x3c\xfb\x7f"
+"\x05\x83\x91\x90\x87\x90\x1b\x8e\x90\x8d\x8e\x91\x1f\xec\xbd\x85\x9a\x05\x86\x7e\x84\x89\x83\x1b\x7d\x7e\x92\x98\x7e\x1f\x7b\x9a"
+"\x73\xa6\x82\x98\xfb\x01\xf7\x29\x18\xde\xd3\x9d\x99\xad\x1b\x91\x91\x8b\x8a\x92\x1f\x89\x95\x93\x8a\x8f\x1b\xa2\xa0\xa3\xa5\xa4"
+"\x77\x9d\x70\x5b\x5a\x60\xfb\x2d\xfb\x0e\x1f\x85\x83\x05\x0e\x84\x62\x0a\xf7\x5d\xfb\xbc\x8d\x0a\x84\x69\x6f\x67\x55\x66\x1f\x0e"
+"\x84\xf7\x49\xf7\x7a\x15\xf7\x08\xfb\x39\x05\x95\x7e\x92\x7d\x85\x1a\x81\x84\x86\x7e\x1e\x81\x7a\xf7\x65\x9c\x06\x58\x74\x9c\xdd"
+"\x52\x1f\xfb\x09\xf7\x35\xe5\xec\xb8\xbc\x9f\x97\xbb\x8f\x19\x98\x8c\x05\x9c\xfb\x45\x7a\x90\x07\x9c\x89\x93\x86\x80\x1a\x83\x85"
+"\x80\x81\x80\x1e\xfb\x09\xfb\x16\x05\xf7\x64\x07\x46\x69\x80\x86\x42\x6d\x91\x7d\x18\x96\x8e\x05\x8d\x92\x93\x8d\x90\x1b\x97\x96"
+"\x87\x83\x90\x1f\x93\x81\x8c\x83\x63\x1a\xfb\x5e\x07\x32\x83\x7d\x5a\x89\x1e\x7d\x7a\xf7\x70\x9c\x7e\x06\x59\x8c\x83\x9a\x8c\xe4"
+"\x08\x0e\xfb\x79\x3d\x0a\xe0\xf9\x54\x22\x1d\x75\xf8\x5a\xcb\x15\x84\x7d\x84\x89\x82\x1b\x6b\x75\xaa\xdf\x70\x1f\x2d\xf7\xb3\x71"
+"\xdd\x78\xb5\x72\xa8\x19\xad\x70\x6a\x9d\x6c\x1b\x6e\x77\x78\x6f\x6f\xa0\x75\xa5\x90\x93\x8c\x8c\x92\x1f\x8d\x93\x92\x8c\x8f\x1b"
+"\x9f\x9f\x7e\x75\x97\x1f\x96\x79\x95\x70\x9a\x56\xfb\x52\xfc\x49\x18\xe0\x06\xf7\x1f\xf7\xe2\xd2\xfb\x80\x05\x44\xa0\x9e\x65\x98"
+"\x1b\x8d\x8e\x8c\x8c\x8d\x1f\xde\xc6\x05\x0e\xfb\x15\x3d\x0a\xf7\x7b\xf8\x36\x15\xcf\xac\xb7\xc8\xc7\x1a\xbe\x68\xb1\x4b\x1d\xb1"
+"\x40\x0a\x6f\x67\x55\x66\x1f\x0e\xfb\x79\x3d\x0a\xd7\xfb\xbc\x25\x0a\xfb\x37\xa2\x16\xf7\x80\x9a\x06\x4c\x8e\x80\x95\x8a\xc3\x08"
+"\xf8\xe9\x07\x87\x8d\x58\x7b\x66\x80\x44\x7a\x43\x0a\xfc\x71\x68\x1d\xf7\x95\xf8\x0b\x2b\x0a\xf8\x81\xf9\x56\x16\xcd\xfc\x30\x49"
+"\x07\xf8\x30\xf8\xdb\x15\xfc\x30\xfb\x81\x05\x85\x07\xf8\x30\xfb\x8c\x05\xe8\x07\xfb\xc6\xf7\x4c\xf7\xc6\xf7\x42\x05\x0e\x34\x0a"
+"\xf7\x1e\x8f\x1d\x81\x44\x79\x43\x0a\x0e\xfb\x79\xf7\x90\x9a\x15\x39\x8f\x80\x95\xd6\x1a\xf8\x62\x07\xc5\x9e\xaa\xb0\xa1\x98\x81"
+"\x6e\x9d\x1e\x71\x9b\x97\x81\x9d\x1b\xa2\x9d\x9d\xa2\xaf\x5f\xa5\x4f\x4d\x56\x70\x5e\x71\x1f\x71\x5e\x83\x67\x8a\x3b\x08\x5e\x6b"
+"\xb8\x54\x0a\xf7\x98\x07\x0e\xf8\xc1\xf8\xe5\x15\x43\xbc\x9c\x79\x9c\x1b\x95\x93\x92\x95\x91\x8a\x8f\x84\x99\x1f\x74\xb6\x7a\xcb"
+"\xb7\x1a\xa9\x89\x91\x7e\x86\x84\x88\x83\x7e\x1e\x78\x70\x3d\x75\x60\x1b\x71\x8a\x83\x86\x7e\x1a\x75\xad\x81\xe2\x85\x1e\x25\xfb"
+"\x4d\x05\x97\x6c\x6e\x91\x6b\x1b\xfb\x1a\xfb\x00\xfb\x00\xfb\x1a\xfb\x19\xf7\x00\xfb\x00\xf7\x1a\xf7\x19\xf7\x00\xf7\x00\xf7\x1a"
+"\xd8\x66\xd3\x4c\xb9\x1f\xfb\x22\x7b\x15\xee\xdc\x3b\x28\x28\x3b\x3a\x28\x27\x3b\xdb\xee\xee\xdb\xdc\xee\x1f\x0e\xfb\xb4\xea\x9d"
+"\x0a\x0e\x84\xf7\x81\xf7\x43\x15\x92\x7c\x76\x8f\x7b\x1b\x4d\x54\x56\x50\x68\xa5\x75\xb4\xba\xb7\xa2\xb1\xa6\x1f\x9f\xa6\x91\xa1"
+"\x8d\xbb\x08\xf7\xb9\x07\xc3\x83\xb9\x40\x37\x1a\x59\x83\x65\x73\x54\x1e\xa6\x06\xaf\xb6\x9e\xc2\xc5\x1a\xd7\x6e\xd1\x51\xd2\x1e"
+"\x58\xc7\x8a\x8d\x86\x91\x83\x95\x19\xc5\x5f\x07\x0e\xf8\x13\xf8\x57\x15\x9e\x72\xa1\x78\xa0\x7f\xc3\x6b\x94\x85\x90\x82\x08\x91"
+"\x80\x8f\x78\x76\x1a\xfb\x7c\x07\x92\x7a\x74\x8f\x78\x1b\x46\x4d\x56\x4f\x68\xa8\x75\xb8\xbe\xbb\xa2\xb1\xaa\x1f\xa0\xa6\x92\xa1"
+"\x8d\xbc\x08\xf8\x00\x07\x8c\xd3\x6a\xd5\x5d\xa7\x54\xaf\x6d\x9f\x87\x8f\x08\x7e\x99\x85\x9d\xa2\x1a\x98\x5f\xfc\x80\x07\x92\x7b"
+"\x74\x8f\x79\x1b\x46\x4f\x56\x4f\x68\xa7\x75\xb7\xbe\xbb\xa2\xb1\xa8\x1f\xa0\xa6\x92\xa1\x8d\xbc\x08\x8e\xf8\x0a\x15\xf7\x03\x4f"
+"\xa3\x67\x8f\xfb\x08\xfb\x06\xc8\x74\xae\x87\xf7\x09\x08\x0e\x84\x32\x0a\xf7\x5b\xf8\x80\x2a\x0a\xec\x91\xf8\x59\x15\xd9\x97\xbc"
+"\xbf\xd0\x1a\xbc\x6e\xb0\x63\x6c\x73\x74\x6d\x6e\xa3\x72\xa7\x93\x91\x8c\x8f\x9b\x1e\x89\x5b\x6d\x67\x56\x7a\x08\xf7\xa3\x8c\x15"
+"\x47\x69\x80\xad\x0a\x91\x93\x8d\x91\x1b\xa8\x92\x7e\x52\x1f\xfb\x5e\x07\x32\x83\x7d\x5a\x89\x1e\x79\x7a\xf7\x74\x9d\x77\x06\x5d"
+"\x8e\x88\x91\x8a\xee\x08\xf7\x6d\x07\xba\xc1\xa3\x97\xb0\x1b\xc2\x9a\x72\x30\x1f\xfb\x34\x07\x8a\x28\x88\x85\x5d\x88\x08\x78\x79"
+"\xf7\x6a\x9d\x7c\x06\x5c\x8e\x88\x91\x8a\xee\x08\xf7\x31\x07\xcd\x87\xa6\x7e\xa9\x1e\xae\x7b\x67\xa1\x61\x1b\x5a\x5e\x72\x50\x50"
+"\x1f\x0e\x84\x32\x0a\xf8\x18\xf9\x27\x20\x0a\x84\x32\x0a\xf7\x52\xfb\xbc\x25\x0a\xf8\x81\xf8\xa4\xf7\x6c\x15\xf7\x83\xc8\xfb\x60"
+"\x06\xe3\xf7\x2f\x05\xf7\x08\xc9\x3a\x06\xac\xc6\x61\xa3\x5c\x38\x05\xfb\x23\x65\x1d\x42\x2c\x1a\xfb\x08\xb8\x37\xdc\x69\x1e\x6a"
+"\x52\xb6\x74\xb1\xce\x05\x88\xa4\x99\x8a\xb4\x1b\xf7\xac\xc9\xfb\xb7\x06\x77\x85\x8b\x8c\x81\x1f\xab\xf7\x2d\x15\x3a\xfb\x21\x57"
+"\x9d\x6c\xbe\x88\xd3\x19\xf7\xb6\xf7\x6c\x15\x33\xfb\x2f\x05\xfb\x5e\x06\x91\xf6\xc3\xbd\xf7\x01\x89\x08\x0e\xf8\x81\xf8\x14\xf7"
+"\x04\x15\x4f\xfb\x0b\xd3\x67\xd9\xf7\x2f\x05\xf7\xaa\xdb\xfb\x82\x06\xc8\xf7\x0e\x05\xf7\x45\xdb\xfb\x1c\x06\xc7\xf7\x0b\x43\xaf"
+"\x3d\xfb\x2f\x05\xfb\xaa\x3b\xf7\x82\x06\x4e\xfb\x0e\x05\xfb\x45\x3b\x06\x0e\x54\xf7\x90\xf7\x03\x15\x32\xf7\xae\x05\xb2\x7f\x71"
+"\xae\x7b\x1b\x87\x87\x89\x88\x87\x1f\x3a\x4d\x92\x7d\x05\x91\x97\x91\x8d\x94\x1b\x98\x98\x83\x7f\x91\x1f\x92\x7e\x8b\x8b\x9d\x54"
+"\xf0\xfb\xd0\x18\xa4\x06\xf7\x31\xf7\xca\x05\xa0\xb4\x96\xb0\xa6\x1a\xad\x77\xa3\x70\x70\x77\x75\x6c\x84\x8c\x81\x8d\x83\x1e\x94"
+"\x68\x8c\x86\x7c\x1a\x74\x83\x70\x77\x62\x1e\x0e\x84\x24\x0a\xf7\x10\xf7\x7c\x15\x3f\x6f\x72\x39\x1d\x84\x24\x0a\xb3\xd6\x9a\x0a"
+"\xfb\x08\x16\x30\x1d\xa0\x2a\x1d\x0e\x84\x24\x0a\xfb\x22\xf7\x3d\x23\x1d\xf7\x2b\xf7\x49\xf8\x62\x15\x39\x4f\x60\x33\x24\x1a\xfb"
+"\x11\xc9\x2e\xdf\xc1\xb9\xaf\xd0\xab\x1e\x45\xab\xb2\x68\xbb\x1b\xdf\xcc\xf5\xf7\x1d\xf7\x1a\x5a\xe7\x44\x72\x79\x79\x72\x78\x97"
+"\x79\x9b\x84\x1f\xbd\x78\x90\x88\x9a\x74\x08\x9d\x71\x95\x62\x60\x1a\x2f\x5a\x46\x48\x60\x6e\xa2\xc1\x72\x1e\x9d\xc0\x92\xad\xb5"
+"\x1a\xbd\x7d\xa7\x73\x6f\x7b\x6c\x55\x5e\x92\x6a\x9d\x5d\x1e\x57\x71\x6d\x73\x68\x1b\x51\x69\xcc\xf7\x04\xdf\xa0\xd1\xb5\xc7\x1f"
+"\x0e\xf7\x2b\xf7\x49\xf8\x63\x15\x3a\x4f\x5f\x33\x23\x1a\xfb\x11\xc9\x2e\xdf\xc1\xb9\xb0\xd0\xab\x1e\x44\xab\xb2\x68\xbb\x1b\xdf"
+"\xcc\xf6\xf7\x1d\xf7\x1a\x5a\xe8\x44\x72\x79\x79\x72\x77\x97\x79\x9b\x85\x1f\xbd\x78\x90\x88\x9a\x74\x08\x9d\x70\x95\x62\x60\x1a"
+"\x2e\x5a\x46\x48\x60\x6e\xa2\xc2\x72\x1e\x9d\xbf\x92\xae\xb6\x1a\xbd\x7d\xa7\x73\x6f\x7b\x6b\x55\x5e\x92\x6a\x9d\x5c\x1e\x57\x71"
+"\x6d\x73\x67\x1b\x52\x69\xcc\xf7\x05\xdf\xa0\xd2\xb5\xc6\x1f\xf7\x0b\xc0\x15\xa6\x06\x94\xb3\x05\x98\xbd\x8c\x91\x9f\x1a\xac\x7e"
+"\x9c\x74\x73\xe6\x1d\x84\x89\x1d\x0e\x84\x89\x1d\x85\xd8\x15\xa6\x06\x94\xb3\x05\x98\xbd\x8c\x91\x9f\x1a\xab\x7e\x9d\x73\x74\x7e"
+"\x7a\x6a\x77\x8c\x88\x98\x56\x1e\x0e\xf8\x6c\x93\x16\xfa\x56\xd3\xfe\x0e\xfa\x03\x43\x06\x0e\x84\x68\x0a\xa0\x81\x71\xa7\x1e\xfb"
+"\x0b\xf7\x03\x2a\x0a\x84\xf7\x03\xf9\x36\x15\xa2\xb8\xab\x94\xae\x1b\xf1\xc5\x2c\xfb\x38\x6e\x89\x73\x86\x5b\x1f\xbd\x4b\x67\x9b"
+"\x58\x1b\x5a\x62\x79\x64\x67\x1f\x5f\x5d\x72\x4c\x4d\x1a\xfb\x00\xde\x35\xf3\xd1\xc5\xab\xc9\xb5\x1e\xb9\xcf\xac\xf7\x19\xf7\x0a"
+"\x1a\xf7\x08\x6a\xe7\x46\xd1\x1e\xbc\x5b\x56\xa2\x4b\x1b\x64\x68\x83\x77\x54\x1f\xf7\xc0\xfc\x31\x15\x7b\xfb\x03\x81\x60\x71\x58"
+"\x08\x56\x71\x60\x6a\x5f\x1b\x54\x6a\xbf\xe1\xf7\x06\xce\xe9\xdc\xb1\xa4\x7e\x61\xb5\x1f\x0e\xf7\xec\xd3\xf9\x17\x15\xd5\x83\x94"
+"\x48\x1d\x84\x82\x3f\x84\x08\x78\xf7\xac\x9e\x07\x3c\x8d\x7d\x99\x8a\xd5\x08\xf7\x4a\xd9\x1d\xc7\xab\xaf\xc8\xcd\x1a\xb5\x7d\xb1"
+"\x70\xa8\x1e\xb7\x63\x34\xa7\x2d\x1b\xfb\x9c\x06\xf7\x4e\x44\x15\xa6\x92\x92\xa6\xf7\x1b\xc9\x5c\x24\x2a\x50\x59\xfb\x07\x77\x7d"
+"\x8c\x8d\x74\x1e\xf8\x5e\x73\x15\x48\xcf\x06\x97\x87\x8f\x7f\x1e\x6a\x5b\x71\x6c\x7a\x81\x08\x80\x84\x87\x86\x85\x1a\x86\x8d\x87"
+"\x91\x88\x1e\xa8\xfb\x51\x06\x51\xa2\x6c\xb6\xa7\xa8\x99\xa2\x9d\x1e\x8e\x8f\x8b\x8b\x96\x9c\x78\x9b\x18\x76\x78\x86\x87\x7c\x1b"
+"\x77\x84\x99\xaf\x1f\xf7\x47\xce\x07\x0e\xd1\xf7\x78\xf8\x61\x15\xfb\x11\x82\x3f\x37\xfb\x14\x1a\xfb\x1f\xdd\x31\xf7\x1f\x7c\x1e"
+"\xfb\x59\xce\xf7\x59\x07\xce\x92\xaf\x98\xb1\xa7\x08\xc7\xb8\xae\xd4\xdc\x1a\xca\x77\xbf\x63\xb5\x1e\xb2\x66\x5d\xa1\x5c\x1b\x65"
+"\x69\x7a\x6e\x77\x1f\x7b\x75\x86\x6e\x4c\x1a\xfb\xaa\x07\x6a\x95\x7d\x92\x7a\x9a\x08\x5f\xb1\x75\xca\xe4\x1a\xde\x9f\xc5\xb3\xad"
+"\x1e\x98\x95\x97\x91\xa4\x92\x08\xe2\xfb\x1c\x15\xbb\x8c\x9a\x92\x97\x1e\x9a\x92\x98\x93\x9c\x1b\xc8\xbd\x37\x26\x3d\x74\x54\x5c"
+"\x6a\x1f\x74\x7b\x78\x84\x5f\x83\x08\x0e\x89\xf8\xa4\xf8\x54\x15\xfc\x23\x06\x5d\x80\x87\x75\x71\x1f\x37\x41\x9c\x77\xc7\xba\xa9"
+"\x96\xd2\x8a\x19\x79\xfb\x57\x80\x5b\x69\x6c\x08\x62\x65\x86\x83\x71\x1a\x6e\x9c\x7a\xa8\xc7\x9f\xc1\xf7\x4f\x93\x1e\x8d\xad\x8c"
+"\xa2\x94\x1a\x91\xe0\x05\xf7\x62\x06\x5f\x61\x7c\x6b\x8a\x50\x08\xfb\x2b\x07\x61\x8c\x82\x92\x78\x1e\x78\x93\x9c\x78\x94\x1b\x8d"
+"\x8d\x8c\x8f\x96\x1f\xf7\x00\xba\x87\xa0\x05\x82\x70\x7c\x86\x87\x1b\x7b\x79\x99\x9a\x87\x1f\x8a\x90\x8b\x8b\xb3\x1a\xf7\x13\x07"
+"\x8a\xe6\x8c\x95\x96\xaa\x08\xf7\x0d\x06\x0e\xf8\x81\xf9\x45\xf9\x55\x15\xfd\x72\x07\x54\x8a\x78\x77\x54\xbd\x0a\xf9\x3b\x07\xc4"
+"\xa0\xa2\xc0\x1e\x9c\x9d\xfd\x9f\x79\x9b\x06\xc1\x9f\x75\x51\x8c\x1f\xfd\x3b\x07\x54\x8a\x77\x77\x55\xbd\x0a\xf9\x72\x07\x0e\xf8"
+"\x81\xf9\x93\xc9\x15\xfb\xb7\x06\xfb\x0d\x57\xc2\xf7\x16\xf7\x15\xbf\xc3\xf7\x0d\x1f\xf7\xb7\xc9\xfb\xac\x65\x1d\x43\x2b\x1a\xfb"
+"\x07\xb8\x37\xc6\x0a\x06\x0e\xf8\x81\xf7\x7d\xc9\x15\x4d\xf7\xac\x07\xde\xae\x92\xa4\xb1\x1f\xcc\xb7\xac\xd3\xf2\x1a\xf6\x5c\xe0"
+"\x3e\xac\x1e\x99\x69\x70\x8f\x46\x1b\xfb\xac\x4d\xf7\xb7\x06\xf7\x0d\xbf\x54\xfb\x16\xfb\x16\x57\x54\xfb\x0d\x1f\x0e\xf7\x0b\xf7"
+"\xba\xf8\x56\x15\xfc\x14\x07\x31\x93\x68\xb3\x8f\xe4\x08\xf7\x46\x07\xa9\x89\x95\x82\x99\x1e\x99\x82\x81\x93\x85\x1b\x89\x86\x89"
+"\x88\x85\x1f\x26\x58\x91\x7e\x05\x93\x98\x92\x8d\x96\x1b\xaa\x94\x7a\x4c\x1f\xfb\x1b\x07\x88\xfb\x06\xcf\x49\xf7\x15\x81\x08\xfb"
+"\x40\xd6\xf7\x3e\x07\xf7\x13\xa8\xd5\xf0\xf7\x24\x1a\xf7\x00\x65\xdf\x59\x73\x76\x77\x74\x7b\x93\x7c\x9e\x79\x1e\xb0\x68\x8b\x8b"
+"\x95\x7b\x08\x98\x76\x91\x71\x6c\x1a\x53\x76\x58\x68\x6e\x1e\x71\x75\x71\x82\x56\x84\x08\xf8\x18\x07\x0e\xfb\x42\xf7\x80\xf8\x58"
+"\x15\x55\xb1\x6f\xae\xac\x1a\x93\x91\x91\x93\x8c\x8c\x8b\x8a\x8d\x1e\x89\x95\x8f\x8a\x94\x1b\xb0\xa1\x9e\xab\xad\x73\xa2\x68\x5e"
+"\x68\x65\x58\x4f\xb8\x4e\xce\x6a\x1f\x0e\xfb\x42\x40\x1d\xf7\x14\xf8\x80\x3a\x1d\xf8\x5b\x4a\x15\xf7\x32\xfa\x68\x53\x94\xfb\x0f"
+"\xfd\x95\xfb\x4e\xf8\x0d\xfb\x37\x3c\xa3\x58\xea\xba\x05\x0e\xfb\x42\x40\x1d\xf7\xd1\xf9\x27\x20\x0a\xfb\x42\x40\x1d\xda\xfb\xbc"
+"\x25\x0a\xf8\x12\xf9\x4c\xf8\x22\x15\xfc\x8c\xfb\xb9\xdb\xf7\x69\xf8\x3c\x06\x0e\x83\xf7\x2c\xfb\x4a\x15\xf7\x6c\x07\x6b\xae\xa7"
+"\x7f\xb5\x1b\xf7\x07\xe2\xf2\xf7\x1c\xf7\x20\x3c\xe7\xfb\x0b\x4d\x54\x72\x5f\x6a\x1f\x70\x66\x80\x59\x2e\x1a\xfc\x1e\x07\xda\xf8"
+"\x66\x15\xb8\x90\xa6\x99\xa2\x1e\xa9\x9b\xa8\x9c\xac\x1b\xd6\xba\x3c\xfb\x15\xfb\x09\x5d\x41\x43\x67\x70\x99\xb0\x65\x1f\x0e\xfb"
+"\x0a\x4a\x0a\xfb\x0b\xf7\x55\x15\x5f\x1d\xfb\x0a\xf7\x5a\x81\x15\x96\x06\xd7\xca\xc5\xd1\xbd\x73\xac\x4f\x56\x1d\x9a\x06\x87\xf7"
+"\x1d\x05\x80\x06\x83\x86\x86\x88\x85\x1b\x85\x81\x8d\x90\x80\x1f\x93\x74\x74\x90\x73\x1b\x3c\x52\x57\x43\x53\xab\x63\xe0\x5b\x1f"
+"\xc5\x6a\x05\xae\x77\x9c\x73\x6c\x1a\x5f\x6b\x6f\x58\x46\x68\xb1\xf1\x74\x1e\x7b\xfb\x30\x98\x06\x95\x92\x8f\x8d\x97\x1b\x96\x96"
+"\x89\x85\xa3\x1f\x97\x89\x91\x89\x98\x89\x64\x2e\x18\x98\x1d\x55\x81\x5c\x0a\x0e\xfb\x0a\x65\x0a\xf7\x55\x20\x1d\xfb\x0a\x4a\x0a"
+"\xfb\x28\xfc\xe7\x25\x0a\x31\xf7\x17\x9d\x0a\xf7\x32\x16\xab\xcb\x05\xa7\xc4\x98\xb0\xa5\x1a\xa3\x7a\x9c\x73\x68\x7b\x62\x23\x84"
+"\x1e\x86\x3b\x05\x0e\xab\xf8\xac\xf8\x5f\x15\xfb\x89\x06\x46\x7c\x89\x7c\x69\x1f\x37\x67\x53\x31\x28\x1a\xfb\x18\xe6\x2b\xf7\x10"
+"\xf7\x12\xee\xf7\x00\xf7\x1f\xbd\x7c\xbc\x72\xad\x1e\x7c\x9f\x7d\x97\x6b\x9f\xf7\x38\x76\x18\xfb\xbf\xa5\x15\xe1\xc4\x2e\xfb\x22"
+"\x21\x61\x4c\x45\x66\x67\x9e\xaa\x76\x1f\x6d\xb8\x79\xd0\xd2\x1a\xf4\xb5\xcb\xd0\x1e\x0e\xf8\x81\xf8\x1b\xf8\x9a\xaa\x0a\xfb\x14"
+"\xfb\x00\x15\x92\x36\x96\x62\xa9\x5e\x08\x4c\xb5\xcb\x6b\xde\x1b\xd8\xc7\xa6\xc1\xb5\x1f\xaf\xba\x9a\xb8\x92\xe8\x80\x59\x80\x75"
+"\x71\x6d\x08\x54\x5b\x4f\x71\x3a\x1b\x3a\x4f\xa5\xc2\x5b\x1f\x71\xa9\x80\xa1\x80\xbd\x08\xf7\xee\xf7\x00\xaa\x0a\xfb\x01\xf7\x68"
+"\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37\xf7\x37\xfb"
+"\x5e\x1f\x89\x5a\x15\xf7\x45\xf7\x21\xfb\x20\xfb\x44\xfb\x43\xfb\x21\xfb\x21\xfb\x43\xfb\x41\xfb\x23\xf7\x21\xf7\x3e\xf7\x47\xf7"
+"\x1e\xf7\x22\xf7\x44\x1f\x0e\xf8\x81\xf7\xbb\x16\xf8\x77\xa2\x06\xfb\x35\x93\x3f\xe0\x8e\xf7\x3e\x08\x38\xb7\xb9\x6a\xd4\x1b\xd1"
+"\xc5\xc9\xd5\xcf\x71\xb4\x20\xec\x1f\xfb\x01\xf0\x78\xa6\x64\xf7\x09\x7b\x2e\x51\x37\x20\x34\x08\x3a\x48\x69\x53\x4b\x1a\x40\xc8"
+"\x4d\xd4\xb5\xb4\x9c\xa9\xab\x1e\x9e\x9d\x96\x9a\x9c\xb0\x91\xfb\x3b\x34\x2c\xfb\x33\x8a\x08\x0e\xf8\x81\xf7\xee\xf9\x5b\x15\xf7"
+"\x85\x06\xf4\x8a\xa5\x75\x9a\x26\x08\xa2\x06\x82\xf7\x39\x05\xfc\xaf\x06\xf7\x66\xfc\x67\xfb\x6e\xfc\x2c\x05\xf8\xc8\x06\xbc\xf7"
+"\x66\x05\x74\x06\x6f\x3b\x6c\x78\x26\x8c\x08\xfb\xbc\x06\xf7\x49\xf7\xf4\x05\x0e\xf8\x81\xf7\xcd\xf8\x77\x15\x6e\x66\x7c\x67\x85"
+"\x5b\x08\xfb\x05\x54\xf7\x05\x06\x8f\x61\x9e\x5b\xa6\x6a\x3b\x3c\x18\xb1\x65\xdb\xdb\xb1\x6e\xb2\x7b\xb8\x86\x19\xfb\x05\xc1\xf7"
+"\x05\x07\xb7\x90\xb9\x9e\xab\xa5\xdb\x3b\x18\xb0\xb1\x3b\xdb\xa8\xae\x9c\xb5\x90\xb8\x19\xf7\x05\xc2\xfb\x05\x06\x86\xb6\x79\xb7"
+"\x70\xad\xda\xda\x18\x66\xb1\x3b\x3b\x69\xa6\x62\x9c\x5c\x92\x19\xf7\x04\x55\xfb\x04\x07\x60\x86\x5f\x79\x68\x6f\x3b\xdb\x18\x65"
+"\x65\x05\xf7\x9c\x55\x15\xec\xd8\x40\x2d\x2b\x3f\x3e\x2c\x2d\x3e\xd8\xea\xe7\xd8\xd9\xe6\x1f\x0e\x22\xf8\x3c\x26\x0a\xfb\xae\x06"
+"\x4c\x8a\x79\x85\x74\x6b\x54\x3e\x18\xb4\x74\xb6\xc8\xae\x9b\xe2\x8a\x19\x9a\x06\x6a\x4d\x83\x6b\x89\x49\x08\xfb\x24\x07\x56\x9b"
+"\x5f\x9e\x8e\x8b\x8b\x95\x9e\x1e\xf7\x0e\xb6\x05\xb2\x07\x7f\x70\x80\x88\x7f\x1b\x70\x7e\xa7\xc5\x1f\xf7\x1a\x07\x8d\xc7\x90\xa1"
+"\x9c\xa1\x08\xf7\x2a\x06\x0e\xfb\x79\xf7\x2e\xf7\xd1\x15\xf0\x92\x0a\x26\x45\x69\xd1\xfb\x3a\x06\x37\xa9\x60\xc6\xbc\xb1\xa3\xbf"
+"\xac\x1e\x7e\x96\x05\x63\x1d\xf7\x2b\xf7\x10\xad\x07\x0e\xfb\x0a\xf7\x32\x47\x0a\x8c\x1d\xab\x07\x6b\x76\x15\xa8\xa0\x05\xbf\xb2"
+"\xa9\xbc\xbc\x8c\x0a\x0e\xfb\x79\xf7\x42\x82\x15\xb8\x92\xad\xa3\xa5\xb7\x7e\x96\x18\x63\x1d\xf7\xb2\x92\x0a\xfb\xc1\x06\x8d\x3c"
+"\x9f\x67\xbb\x81\x65\x30\x18\x2d\x0a\x97\x5a\x0a\x6a\x75\x7a\x8e\x94\x70\xa1\x0a\xc0\xb6\xc6\x1d\x6f\xf7\x88\xf9\x31\x15\x51\x5c"
+"\x6d\x4d\x64\x1f\x60\x48\x73\x31\x2b\x1a\x36\x9e\x3b\xae\x4b\x1e\x49\xae\xc0\x67\xc8\x1b\xf7\x0a\xe7\xf7\x2c\xf7\x56\xf7\x51\x35"
+"\xf7\x21\xfb\x08\x1f\xfb\x0d\xfb\xb2\x15\xf7\x36\x93\xb1\xe4\xc9\x1b\xcd\xb7\x30\xfb\x34\x98\x1f\x8d\x66\x15\x8c\x79\x8b\x7f\x7e"
+"\x1a\xfb\x3a\x60\xfb\x01\x48\x3e\x5b\xf7\x0e\xf7\x58\x1e\x0e\xfb\x42\xf7\x2e\xf8\x8b\x15\xa5\x06\x95\xb3\x05\x98\xc0\x8c\x8e\x9f"
+"\x1a\xac\x7e\x9c\x73\x73\x7e\x7a\x6a\x78\x8c\x85\x98\x58\x1e\x0e\x84\x25\x1d\xfb\x0f\xf9\x08\x37\x1d\x84\x25\x1d\xfb\x5e\xf8\x6b"
+"\x50\x1d\x2a\x1d\xfb\x08\x16\x30\x1d\xa0\x2a\x1d\x0e\x84\x25\x1d\xfc\x14\xf8\xc9\x23\x1d\x84\xfb\x44\x04\x5a\xf8\x88\xbc\x07\xfc"
+"\x88\xe8\x15\x5a\xf8\x88\xbc\x07\x0e\xfb\x95\x0e\xfb\x42\xc9\x0a\xf3\x53\x1d\xfb\x51\xfb\xad\x15\xce\xac\xb8\x99\x1d\xfb\x79\x74"
+"\x0a\xfb\x32\xfd\x4f\x25\x0a\xfb\x42\x96\xf8\xed\x23\x1d\xfb\x95\xf7\x11\xf7\xca\x2b\x0a\xf7\x1c\xf7\xd9\xf9\x31\x15\x82\x06\xfb"
+"\xb8\xfd\x31\x05\xf8\xe8\x06\xfb\x22\xd7\x15\xfb\xd7\x06\x73\x82\x8f\x96\x92\x8f\x9a\x92\x9a\x1f\xf7\x36\xf8\x0a\x05\x0e\xf7\x80"
+"\xf7\xc2\xf7\x22\x15\x60\x9b\x75\x9a\x75\xa7\x08\x68\xba\x78\xcc\xd8\x1a\xdd\xa1\xcf\xb5\xb9\x1e\xaf\xac\xbd\x9e\xcb\x1b\xca\xbd"
+"\x78\x67\xac\x1f\xb5\x5d\xa1\x48\x37\x1a\x3e\x78\x4b\x68\x5c\x1e\x75\x6f\x75\x7c\x60\x7b\x7c\xfb\x22\x18\xf7\xbb\xf7\x37\x7b\x06"
+"\x59\x7f\x7f\x81\x5b\x1b\xfb\x28\x99\x06\xc1\x9b\xb0\x9c\xaa\xa4\x08\xc5\xbb\xb0\xdd\xde\x1a\xdb\x67\xdb\x4e\xbf\x1e\xbc\x52\x39"
+"\xa5\x2c\x1b\x2d\x39\x71\x5a\x52\x1f\x4e\x57\x67\x3b\x3b\x1a\x3f\xaa\x3e\xbe\x5b\x1e\xac\x6c\xb2\x76\xca\x79\x08\x7d\xfb\x28\x07"
+"\x5b\x80\x95\xbd\x7f\x1f\x7a\xfb\x37\xf7\xbb\x06\x0e\xa8\xf8\x43\xf8\x56\x15\x3c\xfb\xe1\x06\x5b\x53\x78\x81\x69\x1b\x59\x77\xaa"
+"\xd9\x1f\xf7\xae\x3c\xfb\x23\x07\x89\xfb\x37\x88\x69\x79\xfb\x16\x08\x7c\x2b\x8b\x8b\x7c\x1a\x6b\x9d\x75\xa5\xa3\x9b\x9f\xa9\x96"
+"\x89\x9c\x87\x9b\x1e\x78\xdc\x89\x9c\x89\xcc\x08\x55\x9e\xa9\x72\xba\x1b\xac\xae\x99\xa4\xa6\x1f\x9a\x98\x90\x90\xa9\xad\x08\x7a"
+"\x07\x69\x8e\x80\x9b\x7a\x1e\x81\x93\x92\x86\x8f\x1b\x8d\x90\x8d\x8e\x91\x1f\xf2\xbf\x85\x99\x05\x83\x7f\x84\x88\x80\x1b\x6c\x83"
+"\x9c\xcc\x1f\x0e\xfb\x03\xf7\xcc\xd9\x15\x81\x82\x8a\x88\x6f\x1f\x89\x79\x78\x8a\x81\x1b\x3e\x60\xbe\xe7\xc5\x9a\xb9\xa9\xab\x1f"
+"\xa9\xa6\xb4\xa0\xac\x1b\x99\x99\x87\x80\xa0\x1f\x7d\xa6\x94\x88\x9b\x1b\xa5\x9d\x9d\xa3\xab\x6b\x9f\x58\xfb\x29\xfb\x0d\xfb\x12"
+"\xfb\x2e\x4f\x9d\x5a\xad\x69\x1f\x6d\xa9\xb3\x7e\xc6\x1b\x99\x98\x8c\x8c\x98\x1f\x8e\xa5\xa1\x8d\x90\x1b\xa2\x98\x7f\x78\x69\x70"
+"\x6e\x6d\x82\x85\x8c\x90\x7d\x1f\x8f\x7f\x83\x8d\x84\x1b\x73\x7b\x7d\x75\x72\xa2\x7a\xaf\xcf\xcc\xd5\xda\xbf\x71\xa8\x5c\x1f\x0e"
+"\xf3\x21\x0a\xfb\x3f\xf9\x63\x15\xfb\x26\x61\x1d\x6d\x0a\x36\xf7\x33\x15\xfb\x27\xf7\x28\x05\x9d\x79\x82\x90\x7b\x1b\x77\x7e\x7f"
+"\x78\x7b\x95\x7c\x9e\x7f\x1f\xf7\x2e\x2a\x05\x0e\x4c\xf8\x33\x7f\x1d\xb0\xf7\x5a\x29\x0a\xa7\x76\x1d\xfb\x3c\xc4\x38\x1d\xbc\xf7"
+"\x5d\xf7\xdb\x15\xf7\x25\x06\xdd\x8a\x9b\x7d\x97\x3a\x08\xa2\xf7\x7c\x74\x06\x80\x3c\x7a\x7d\x39\x89\x08\xfb\x25\xf7\x72\x06\x8c"
+"\xa9\x8e\x8e\xa7\x8c\x08\xf7\x1c\x54\x1d\xfb\x4d\x3c\x62\xda\xfb\x63\xa5\x0a\x0e\x2a\xf7\x49\xf7\x81\x15\xf7\x42\xdd\x07\xcf\xac"
+"\x6e\x44\x95\x1f\x9d\x06\x7a\xf7\x1f\x05\xfb\xef\x7a\x9c\x06\xbe\x88\x90\x83\x8c\x2e\x08\x2f\x3d\x6a\xd9\x37\x07\x8a\x2f\x86\x83"
+"\x58\x88\x08\x7a\x7a\xf7\x75\x9c\x7c\x06\x5a\x8c\x83\x9a\xe2\x1a\xdf\xf4\xac\x07\x0e\xf8\x19\x7a\x0a\xc9\x07\xf7\x0e\xb3\x67\xfb"
+"\x12\xa2\x1f\x9d\x06\x84\xf7\x54\x05\x45\x82\x90\xea\x3c\x1f\xfb\x48\xf7\x82\xbd\xcd\xb7\xc6\xb1\xbe\x19\xc4\xdb\x9d\x9a\xc1\x8f"
+"\x08\x9e\xfb\x56\x78\x07\xae\x8a\x96\x85\x7b\x1a\x66\x41\xfb\x02\x24\xfb\x08\x1e\x76\xf7\x5e\x06\xd1\x98\x9a\xc6\x1e\x9d\xfb\x78"
+"\x79\x07\xc6\x98\x7c\x45\x1f\xfb\x5e\x76\x07\x24\xf7\x08\x41\xf7\x02\xb0\x1a\x9c\x96\x90\xae\x8c\x1e\x9e\xfb\x56\x78\x07\xc1\x87"
+"\x9e\x7c\xc3\x3b\x9c\x73\xbe\x47\x97\x7c\x97\x7b\x97\x7b\x97\x7c\x9b\x75\x18\xfb\x4a\xfb\x80\x46\x34\x69\x71\x5b\x8a\x19\x79\xf7"
+"\x91\x9d\x07\x69\x8d\x80\x91\x9d\x1a\x9a\x92\x97\xba\xca\x1e\xf7\x16\xf7\x4f\x05\x0e\xf7\x4c\x7d\x0a\xb0\x06\xee\xa6\x76\x29\xa5"
+"\x1f\x9e\xf7\x28\x06\x4c\x8c\x7e\x91\x61\xbc\xfb\x19\xf7\x3a\x18\xf7\x01\xf7\x0f\xb1\xb6\xad\x9c\xb8\x8a\x19\x9c\xfb\x4b\x7a\x94"
+"\x07\x9d\x98\x82\x7e\x82\x87\x82\x81\x80\x1f\xfb\x11\xfb\x21\x05\x71\xe4\x06\x8c\xe6\x90\x94\xbd\x8e\x08\x9d\x9c\xfb\x77\x7a\x9d"
+"\x06\xbd\x88\x90\x82\x8d\x30\x08\x32\x70\x07\xfb\x11\xf7\x21\x05\x82\x96\x87\x93\x95\x1a\x99\x96\x93\x9e\x1e\x94\x9c\xfb\x4b\x7a"
+"\x06\xb8\x8c\xad\x7a\xb1\x60\xf7\x02\xfb\x0f\x18\xfb\x19\xfb\x3a\x05\x5a\x64\x6e\x78\x69\x1b\x83\x7a\xf7\x5b\x9c\x79\x06\x80\x84"
+"\x90\x93\x92\x8e\x92\x92\x94\x1f\xf7\x10\xf7\x31\x05\x0e\x85\xf7\x8c\x82\x15\xf7\x15\x93\xe1\xd7\xf5\x1a\xc2\x75\xbc\x63\xaa\x1e"
+"\x81\x0a\x86\xfb\x47\x05\x9e\x06\xe6\x96\xbc\xba\xde\x1b\xd6\xb9\x5f\x42\x34\x56\x5e\x25\x87\x7f\x8b\x8c\x7f\x1f\x5e\x9a\x07\xc5"
+"\xb2\x84\x7c\xa3\x1f\xb4\x72\xa2\x5e\x54\x1a\x32\x51\x4f\x34\x42\x53\xb0\xd9\x5f\x1e\x75\x7e\xb5\x31\xd4\x58\xe8\x86\x19\x65\x30"
+"\x92\x86\x05\x8e\x94\x93\x8c\x97\x1b\xb0\x9a\x81\x71\x70\x77\x7a\x69\x75\x7b\x8e\x94\x6f\x44\x1d\x56\x80\x85\x8a\x89\x81\x1f\x0e"
+"\xfb\x04\xf7\x59\x85\x15\xea\x90\xcf\xc2\xd4\x1a\xad\x7d\xab\x73\xa1\x1e\x92\x1d\x9c\x06\xd7\x97\xb2\xb3\xcb\x1b\xc3\xae\x6a\x58"
+"\x5b\x67\x6a\x58\x1f\x6b\x65\x06\x8d\x92\x8e\x8b\x92\x1b\xb5\xa3\x84\x7a\x9d\x1f\x9e\x79\x96\x72\x6f\x1a\x52\x5f\x64\x4b\x54\x62"
+"\xa1\xc2\x5d\x1e\x79\x7f\xb2\x49\xbf\x68\xcf\x85\x19\x64\x2d\x2d\x0a\x97\x5a\x0a\x69\x76\x7a\x8e\x94\x70\xa1\x0a\xc0\xb6\xc6\x1d"
+"\xf7\x60\xf7\x6a\xf7\xd5\x15\xf7\x49\xfb\x4f\x05\xbe\x57\x9d\x73\x7b\x1a\x7b\x7c\x85\x60\x89\x1e\x79\xee\x07\xf7\x09\xb8\x64\xfb"
+"\x0f\xa2\x1f\x9d\x06\x84\xf7\x54\x4b\x8a\x7c\x94\x31\xe9\x19\xfb\x75\xf7\x80\x91\x92\x91\x92\x93\x93\x19\x7e\x1d\x0e\xa5\xb9\x1d"
+"\xbd\x06\xee\xa6\x75\x2a\xa5\x1f\x9d\x06\x8c\xf7\x28\x05\x58\x76\x91\x9f\x77\x1f\xfb\x5e\xf7\x57\xf7\x39\xf7\x22\xaa\xa6\xa6\x97"
+"\xb4\x8d\x19\x9c\xfb\x53\x7a\x97\x07\xa0\x95\x84\x7a\x84\x87\x84\x7f\x81\x1f\xfb\x3f\xfb\x2d\x05\xec\x07\xe3\x93\x9a\xd2\x1d\x2e"
+"\x08\xfb\x64\x07\x89\x2e\x87\x83\xab\x0a\xf7\x3d\xf7\x95\xf8\x16\x15\x86\x86\x89\x89\x81\x82\x82\x83\x82\x83\x83\x83\x08\xf7\x69"
+"\x07\xcc\x9a\x9d\xc4\x8c\x1e\x8e\x93\x8b\x8c\x94\x1f\x9d\xfb\xb4\x79\x07\xd6\x9a\x7d\x44\x8c\x1f\xfc\x5b\x07\x44\x8a\x7b\x7c\x41"
+"\x1b\x79\xf7\xb4\x60\x0a\xf7\x6e\x07\xb6\x5e\x05\xfb\x44\xc9\xf7\x04\x07\xd7\x3d\x05\xbd\x58\x9d\x72\x7b\x1a\x7b\x7c\x85\x61\x89"
+"\x1e\x79\xf7\xd1\x9d\x07\x4f\x8c\x5f\xa5\x36\xe2\xfb\x6b\xf7\x73\x18\xa6\x07\x8f\x8f\x8e\x8f\xcb\xcd\x91\x92\xd6\xdd\x19\xd1\xda"
+"\xa4\x9a\xcd\x90\x08\x9d\xfb\x86\x79\x07\xb9\x89\x97\x86\x78\x1a\x72\x5b\x4b\x3a\x38\x1e\xf7\x15\x4d\x07\x0e\x76\xf7\x66\xf7\xaa"
+"\x15\x58\x5d\x05\xed\x07\xe3\x93\x99\x97\x1d\xeb\x8f\x07\xba\x5c\x05\xfb\x01\xae\xd4\x07\xdb\x3b\xde\x1d\x81\x7a\xf7\x62\x9c\x84"
+"\x06\x77\x73\x98\xa4\x72\x1f\xfb\x4f\xf7\x48\x05\xa7\x07\xf7\x29\xf7\x15\xce\x1d\x7b\x83\x88\x86\x7e\x7f\x1f\x36\x40\x05\xe3\x68"
+"\x07\x0e\xf7\xaf\xf7\x72\xf8\xfd\x15\xfc\x96\x67\x1d\xf7\xb5\x9d\x07\x3e\x7b\x9a\xd1\x1f\xf7\x6d\x07\xf7\x4a\xfb\x4e\x05\xbd\x57"
+"\x9d\x73\x7b\x1a\x7b\x7c\x85\x61\x89\x1e\x79\xf7\xd1\x9d\x07\x4f\x8c\x5f\xbb\x0a\x92\x92\x92\x93\x91\x92\x9a\x9a\x9a\x9b\x9a\x9b"
+"\x8e\x8c\xd4\xdb\xa3\xa5\xd1\xdb\xa4\x9a\xcd\x8f\x08\x9e\xfb\x86\x78\x07\xb9\x8a\x96\x86\x77\x1a\x67\x2a\xfb\x05\xfb\x1d\xfb\x0e"
+"\x1e\xf7\x69\xa2\x0a\x0e\xc6\xf7\x35\xf8\x2f\x15\xfb\xb6\x07\x88\x4b\x8b\x8a\x89\x83\x08\x74\x83\x7d\x83\x6d\x1b\x79\x7a\xf7\x77"
+"\x9c\x7b\x06\x59\x8d\x84\x99\xe3\x1a\xea\x8f\x07\xf7\x36\xfb\x36\x05\x97\x7e\x8f\x86\x84\x1a\x81\x86\x89\x73\x1e\x81\x7a\xf7\x63"
+"\x9c\x84\x06\x76\x74\x98\xa4\x71\x1f\xfb\x5e\xf7\x57\xf7\x38\xf7\x22\xce\x1d\x7a\x83\x87\x86\x7f\x80\x1f\xfb\x3f\xfb\x2d\x05\xed"
+"\x07\xe3\x92\x98\xbd\x8d\x1e\x9b\x9c\xfb\xba\x58\x0a\x9d\xd7\xa6\xa4\xce\x8a\x08\x0e\xf7\x79\xca\x1d\xf4\x07\xf7\x0a\x8a\xb8\x64"
+"\xa1\xfb\x0f\x08\x9e\x06\x83\xf7\x55\x32\x8c\x7a\x9b\x8c\xe0\x19\xf8\x3f\x76\x0a\xa7\xf7\x35\x88\x1d\xd5\x06\xee\xa6\x76\x29\xa5"
+"\x1f\x9d\x06\x8c\xf7\x28\x3b\x8e\x7c\x94\x8e\xb6\x19\xf7\x8a\x9e\x0a\xf7\x34\xf7\xeb\x7d\x15\x9c\x06\xf7\x05\xef\xb9\xdc\xc7\x1f"
+"\x82\x0a\xa2\x06\x9c\x0a\x38\x6c\x54\x4d\x1f\x45\x4d\x65\x2f\xfb\x02\x1a\xfb\x4d\xf5\xfb\x13\xf7\x43\x72\x1e\x66\x33\x92\x86\x05"
+"\x8e\x93\x94\x8c\x96\x1b\xb1\x9a\x81\x72\x6f\x77\x7a\x68\x76\x7a\x8e\x94\x70\x44\x1d\x55\x81\x5c\x0a\x0e\x4c\xf7\x7d\x82\x15\xd8"
+"\x94\xbf\xb7\xbd\xf2\x8e\x1d\xfb\x0e\xcf\x34\xf3\x7f\x1e\x66\x31\x2d\x0a\x97\x1b\xb1\x9a\x81\x72\x6f\x77\x7a\x69\x75\x7b\x8e\x94"
+"\x6f\x44\x1d\x55\x81\x5c\x0a\x0e\xf9\x53\x21\x1d\xfb\x6f\x78\x06\xbf\x8a\x9c\x83\x73\x1a\x81\x87\x7f\x81\x7c\x1e\xfb\x23\xfb\x76"
+"\xfb\x28\xf7\x72\x05\x80\x9b\x85\x9b\x97\x88\x0a\x99\x7d\xef\xfb\x21\xf7\x17\xfb\x54\x18\xfb\x42\x62\x1d\xf7\x56\x07\xf7\x28\xf7"
+"\x76\xc8\xe3\xa5\xa1\xbe\x8f\x19\x0e\x68\xf7\x61\xbb\x15\xfb\x31\xe2\x1d\x9a\x07\x52\x90\x82\x95\x89\xd1\x08\xf7\x3e\x07\xf7\x01"
+"\xf7\xae\xa6\xd3\x92\x95\xaa\x92\x19\x95\x8c\x05\x9c\xfb\x23\x7a\x90\x07\xa4\x8c\x98\x81\x78\x1a\x7e\x86\x78\x7d\x66\x1e\x3b\xfb"
+"\x6c\x37\xf7\x70\x05\x7b\xb4\x88\x95\x96\x1a\xa0\x97\x96\xa5\x8a\x1e\x93\x9c\xfb\x57\x7a\x06\x99\x8a\xad\x87\x8c\x88\xc0\xfb\x1b"
+"\x19\x0e\xf8\x35\xf7\x81\x15\xcd\x07\xf7\x28\xf7\x76\xc8\xe3\xa5\xa1\xbe\x8f\x19\x9e\xfb\x6f\x78\x07\xbf\x8a\x9c\x83\x73\x1a\x81"
+"\x87\x80\x81\x7b\x1e\xfb\x23\xfb\x76\xfb\x28\xf7\x72\x05\x80\x9b\x85\x9b\x97\x88\x0a\x9a\x7d\xee\xfb\x21\xf7\x17\xfb\x54\x18\x52"
+"\xfb\x08\x63\xf7\x08\x3e\x62\x1d\xe3\xf7\x04\xb3\x07\x0e\x68\xf7\xa9\x86\x15\xb9\x07\xf7\x02\xf7\xc2\xa3\xd0\x96\x9a\xa8\x90\x19"
+"\x95\x8c\x05\x9c\xfb\x23\x7a\x90\x07\xa4\x8c\x98\x81\x78\x1a\x7d\x89\x84\x7a\x5b\x1e\x3a\xfb\x80\x37\xf7\x84\x05\x7a\xb9\x8a\x90"
+"\x96\x1a\xa0\x97\x96\xa5\x8a\x1e\x93\x9c\xfb\x57\x7a\x06\x9a\x8a\xab\x88\x92\x81\xbc\xfb\x15\x19\xe7\xfb\x9a\x05\x6a\x2a\x64\xec"
+"\x4a\xe2\x1d\x99\x07\x51\x91\x82\x95\x8a\xd1\x08\xcc\xf2\xb2\x07\x0e\xf7\x85\x8b\x1d\xef\x07\xf7\x0a\x8c\xb8\x63\xa1\xfb\x0f\x08"
+"\x9d\x06\x84\xf7\x58\x47\x89\x78\x99\x4a\xe5\x19\xfb\x33\xf7\x7d\xf7\x16\xf7\x3f\xd7\xec\x90\x8f\xcb\x8e\x19\x9d\xfb\x73\x79\x07"
+"\xa6\x8f\x8b\x89\x92\x1f\x9a\x87\x96\x7e\x7d\x1a\x81\x86\x81\x7a\x75\x1e\x90\x0a\xcb\x86\x9e\x7d\xcb\x2e\x08\x0e\x67\xf7\x99\xf7"
+"\x9b\x15\xb2\xc5\xcf\xef\x94\x93\xbb\x90\x19\x90\x9b\xfb\x35\x7b\x93\x06\xa0\x9a\x83\x7f\x8a\x1f\x83\x86\x7f\x83\x7f\x1e\x52\x39"
+"\x63\xcb\x05\x7e\x9e\x81\xa3\x95\x1a\x95\x98\x92\x9c\x1e\x92\x9b\xfb\x5c\x7b\x93\x06\xb8\x87\x8c\x8a\xdb\xfb\x15\xb8\x42\x18\x47"
+"\x21\x54\x34\x7f\x7f\x65\x86\x19\x78\x8a\x05\x7b\xf7\x3a\x9c\x80\x07\x77\x80\x91\x97\x93\x8d\x90\x9f\xab\x1f\xce\xf7\x01\xcf\xfb"
+"\x02\x05\x97\x79\x91\x7c\x82\x1a\x7e\x80\x84\x75\x1e\x83\x7a\xc5\x06\xee\xa6\x75\x2a\xa5\x1f\x9d\xf7\x28\x06\x4b\x79\x93\xb5\x6f"
+"\x1f\x0e\xf7\x23\xf9\x1f\x21\x1d\xfb\xb2\x79\x06\xd6\x9a\x2e\x0a\xfb\x7b\x07\x7a\x40\x6d\x87\x68\x1b\x2e\x68\xb0\xee\x1f\xf7\x08"
+"\x4c\x1d\xfb\x08\x07\xfb\x0e\xc7\x51\xf7\x15\xb8\x9a\x8d\xa3\xf7\x10\x1e\xfb\x4e\x67\x1d\xeb\x07\xf7\x06\x86\xb4\x66\xa2\xfb\x0d"
+"\x08\x9d\x06\x84\xf7\x58\x3d\x8c\x7e\x95\x8d\xc6\x19\xf8\x5c\x39\x0a\x0e\x77\xf8\x78\xf8\x45\x15\x9c\xfb\x70\x7a\x96\x07\x85\x1d"
+"\x51\x1d\x6c\x7a\xf4\x06\xd4\x85\xa4\x73\xa2\x33\x08\x9d\x06\x8c\xf7\x28\x05\x62\x74\x8f\x93\x85\x1f\x86\x8f\x88\xa5\xbc\x1a\xf7"
+"\x64\x07\xe3\x93\x9a\xbc\x8c\x1e\x0e\xf7\x37\xf7\xf3\xf7\xa2\x15\x90\x8c\x9b\x8d\x9b\x8e\x9b\x8e\x19\x94\x8d\x9c\x8e\xa5\x90\x08"
+"\xfb\x4d\x5c\x1d\xf8\x5a\x07\xd2\x3d\x1d\xd6\x9a\x7c\x44\x8c\x1f\xfb\x7b\x07\x57\x80\x73\x87\x6e\x88\x08\xf7\x8d\x49\xfb\x8d\x07"
+"\x43\x95\x70\xb1\x8d\xe0\x08\xf7\x08\x07\xd2\x3d\x1d\xd5\x9b\x7c\x44\x8c\x1f\xfb\x08\x07\xfb\x0d\xc7\x51\xf7\x13\x1e\x9a\xfb\x18"
+"\xcd\x06\x0e\x87\xf7\xa1\xf7\x4b\x15\xa3\x8f\x94\x8d\xa9\x92\x08\x40\x07\x89\x2f\x87\x82\x59\x88\x08\x6c\x7a\xf7\x83\x45\x0a\xf7"
+"\x65\x07\xe2\x38\x0a\xfb\x6f\x7a\x96\x06\xbd\x88\x8f\x83\x8d\x2f\x08\xfb\x01\x07\x74\x85\x82\x89\x6c\x87\x08\xf7\x2b\x5a\xfb\x2b"
+"\x07\x5f\x93\x77\xa8\xc4\x1a\xa6\x07\xe2\x93\x9a\xbc\x8c\x1e\x94\x9c\xfb\x6f\x7a\x9d\x06\xbd\x88\x90\x83\x8c\x2f\x08\x70\x07\x31"
+"\x87\xb2\x69\xf4\x1b\x8e\x28\xbc\x06\x0e\xf7\x37\xf7\x6a\xf7\xe2\x15\x9c\xd6\xa8\x8f\xae\x1b\xe8\xaf\x66\x28\x1f\xfb\x08\xae\x0a"
+"\xf7\x08\x07\xf7\x0f\x4e\xc4\xfb\x15\x5f\x7d\x89\x73\xfb\x11\x1e\xf7\x4e\x9e\x1d\x0e\x84\xf8\x7b\x9a\x15\x55\x94\x87\x91\x89\xd1"
+"\x08\xf7\x59\x07\xf2\x62\xc0\x39\x50\x61\x73\x50\x5d\x1e\xf7\xc0\x07\x86\x8e\x67\x7f\x71\x82\x56\x7c\x19\x70\x83\x05\x7c\x07\x8c"
+"\x8f\x8f\x8b\x91\x1b\xb4\x93\x82\x61\x1f\xfc\x64\x07\x8a\x44\x85\x84\x69\x1d\xd0\x08\xf7\x82\x07\xb8\xb5\xa9\x9c\xb2\x1b\xbd\xa4"
+"\x67\x47\x1f\xfb\x58\x07\x89\x46\x82\x80\x52\x86\x08\x7c\xf7\x68\x07\x0e\xfb\x42\x4c\x0a\xf7\x23\xf8\x5c\xf2\x15\x8c\x50\x7f\x81"
+"\x3d\x8a\x84\xfb\x58\x18\x9d\x06\xa1\xf7\x0d\xb4\xb0\xf7\x06\x90\x08\xeb\x9d\x06\x41\x7b\x9a\xd1\x1f\xf8\x5c\x07\xd1\x3d\x1d\x2f"
+"\x1d\xfb\x7b\x07\x93\x1d\x0e\x77\xf7\x92\xa9\x15\x8c\xfb\x28\x05\x9d\x06\xa2\xe3\xa4\xa3\xd4\x91\x08\xf4\x9c\x6c\x06\x58\x8e\x87"
+"\x93\x89\xe8\x08\xf7\x64\x07\xe3\x38\x0a\xfb\x70\x7a\x96\x06\x85\x1d\x64\x88\x6b\x88\x86\x1e\x88\x82\x79\x86\x65\x8a\x08\x0e\xad"
+"\xf7\xc0\x15\x8f\x50\x92\x6f\x9f\x61\x08\xfb\x09\xc3\xf7\x01\x47\xf7\x17\x1b\xf7\x55\xf7\x1a\xf7\x22\xf7\x5e\xf7\x5e\xfb\x1c\xf7"
+"\x24\xfb\x53\x3a\x3c\x6e\x56\x4f\x1f\x5f\x65\x77\x69\x70\x3b\xd5\x80\x18\xa3\xd5\xa2\xb6\xa7\xa7\x08\xb4\xb6\xc4\xa2\xc4\x1b\xbe"
+"\xb9\x7a\x6a\xaf\x1f\xbf\x5d\xac\x25\xfb\x03\x1a\x79\x8b\x8b\x8a\x7e\x1e\x87\x60\x15\xfb\x29\x79\x3f\x35\xfb\x05\x1b\xfb\x06\x40"
+"\xdf\xf7\x2b\x75\x1f\x0e\x22\x0a\xa5\xf8\xf9\x37\x1d\x4c\x6f\x1d\xba\xf8\x20\x37\x1d\xda\x1d\x2e\xab\x2f\xc1\x51\xe5\x1d\xf7\x20"
+"\xf7\x5e\xee\x6e\xe0\x54\xc6\x1f\xd0\x4c\x37\xaf\x2b\x1b\xf7\x68\xfc\x05\x15\x87\x3b\x79\x45\x71\x62\x08\x4e\x65\x51\x6a\x48\x1b"
+"\x44\x48\xb3\xc7\x6c\x1f\x72\xbe\x7c\xc8\x87\xd4\x08\x8a\xb7\x15\x8e\xd4\x9a\xc9\xa7\xc1\x08\xc7\xaa\xce\xb3\xd0\x1b\xd0\xce\x63"
+"\x4f\xaa\x1f\xa7\x55\x9a\x4d\x8e\x42\x08\x0e\x84\xf7\x8e\xf8\x59\x15\xfb\x17\x31\x2d\xfb\x1d\xfb\x19\xe8\x28\xf7\x12\xf7\x12\xeb"
+"\xf3\xf7\x1c\xf7\x16\x2f\xe8\xfb\x14\x1f\xf7\x16\xfb\x85\x15\x79\x07\xfb\x01\x5e\x48\x42\x42\x5b\xce\xf7\x13\x79\x1e\x88\xaf\x15"
+"\x8a\x96\x8b\x91\x92\x1a\xe7\xba\xc8\xd2\xd3\xc1\x47\xfb\x01\x98\x1e\x0e\xf3\x21\x0a\xfb\x24\xf9\xfa\x15\x3f\x6f\x72\x5a\x1d\xb3"
+"\x78\xba\x1b\xdf\xb9\x49\x0a\x4c\xf8\x31\xf7\x38\x15\x3f\x5b\x60\x6e\x4b\x1b\x52\x60\xa8\xc4\x6e\x1f\x79\xb1\x84\xab\x89\xc9\x08"
+"\xf7\xc8\x06\x83\xcc\x81\xa8\x72\xab\x08\xaf\x6d\x5d\xa0\x57\x1b\x59\x5c\x79\x69\x65\x1f\x5c\x62\x70\x44\x39\x1a\xfb\x1e\xd3\x35"
+"\xf7\x07\xea\xd6\xc6\xf7\x00\xb5\x1e\x91\x0a\xb3\xf7\xf7\x15\x3f\x6e\x73\x76\x51\x1b\x4b\x69\xa9\xce\x7d\x1f\x6e\x06\x8c\x58\x92"
+"\x73\x9e\x6f\x08\x68\xa4\xb2\x78\xbb\x1b\xde\xba\x49\x0a\x84\x8d\xf9\xbe\x15\x5a\xf8\x85\xbc\x07\x0e\xf8\x81\xad\x89\x15\x92\x06"
+"\xd5\x06\xf7\x44\xcd\x97\xb7\xcc\x1f\xf1\xd0\xd5\xf7\x36\xf7\x2f\x1a\xea\x6d\xde\x5b\xb1\x1e\xa7\x67\x5a\x98\x4a\x1b\xfb\x2b\x20"
+"\x56\x2e\x69\x1f\x7d\x66\x87\x73\x8a\x49\xd9\xb1\x18\x94\x07\x8a\xea\xb0\xb7\xe6\x99\x3d\xfc\x3e\x18\x7a\x40\x72\x5c\x6d\x81\x74"
+"\x8c\x18\xe5\x16\x8f\x8e\xc2\xb9\x9e\xb6\xa1\xf7\x13\x19\xc7\xf7\xec\x05\x92\x06\x8e\x06\xb4\x96\x8a\x87\x98\x1f\xc4\x76\xa9\x49"
+"\x26\x1a\xfb\x66\x2c\xfb\x29\xfb\x1e\x84\x1e\xf7\x8d\xfb\x99\x15\xda\x06\xb1\xf7\x62\x05\x7b\xb2\x8e\x8a\xa1\x1b\xf7\x14\xf7\x01"
+"\xf7\x39\xf7\x53\xf7\x00\x5e\xc3\x36\x57\x5e\x75\x62\x6a\x1f\x66\x5d\x76\x50\x73\xfb\x18\x08\xea\xe6\x15\xe6\x9b\xb0\xc0\xb9\x1b"
+"\xb4\xa1\x61\x3c\xfb\x2a\x52\xfb\x0b\x43\x6e\x75\x96\xa5\x77\x1f\x0e\xf3\xf7\x92\x16\x7c\xf7\x2f\x05\x49\xb9\x62\xe2\xea\x1a\xbf"
+"\x98\xc7\xa2\xbc\x1e\xc9\xa9\xbc\xaf\xc4\x1b\xc2\xbc\x67\x4d\xa9\x1f\xa2\x5a\x98\x50\x56\x1a\x2c\x62\x33\x49\x5e\x1e\x7c\xfb\x2f"
+"\x05\xf7\x88\xf7\x2d\x77\x06\x5e\x84\x7b\x79\x68\x1b\xfb\x0d\x06\x8d\xb1\x05\xf7\x00\xb9\xc8\xe7\xf7\x09\x1a\xcf\x73\xd3\x60\xc4"
+"\x1e\xd1\x58\x47\xaf\x3c\x1b\x46\x4e\x6f\x55\x5a\x1f\x56\x50\x6a\x38\x3c\x1a\xfb\x09\xc9\x2e\xf6\x5e\x1e\x8d\x65\x05\xfb\x0d\x06"
+"\x68\x8c\x7b\x9c\x84\xb8\x08\x77\xfb\x2d\x06\x0e\xfb\xe8\xb4\x0a\xfb\x95\xf7\x11\xf7\xca\x2b\x0a\xf8\x81\xf8\xa9\xf8\x95\x15\x49"
+"\x06\xfb\x74\xfc\x95\x05\xdb\x06\xf7\x45\xf8\x2d\xf7\x45\xfc\x2d\x05\xdb\x06\x0e\xf8\x81\xf8\xa9\x16\xf7\x74\xf8\x95\x05\x3b\x06"
+"\xfb\x45\xfc\x2d\xfb\x45\xf8\x2d\x05\x3b\x06\xf7\x74\xfc\x95\x05\x0e\xf8\x81\xf8\x8c\xf9\x60\x15\xfb\x60\xfb\x34\xfb\x32\xfb\x5f"
+"\xfb\x5b\xf7\x34\xfb\x33\xf7\x5d\xf7\x5b\xf7\x34\xf7\x34\xf7\x5c\xf7\x59\xfb\x34\xf7\x36\xfb\x58\x1f\xa4\x52\x15\xf7\x23\x7e\xf7"
+"\x06\xfb\x06\x99\xfb\x25\x08\xfb\xa3\x06\xf7\xa4\x52\x15\x82\xfb\x22\xfb\x0d\xfb\x0f\xfb\x22\x80\x08\xf7\xa8\x07\x53\xfb\xa8\x15"
+"\xfb\x27\x99\xfb\x05\xf7\x05\x7d\xf7\x29\x08\xf7\xa6\x06\xfb\xa6\xc4\x15\x99\xf7\x24\xf7\x07\xf7\x06\xf7\x25\x99\x08\xfb\xa4\x07"
+"\x0e\xf7\x11\xf7\x10\x15\xf8\x67\xf8\x67\xfc\x67\x06\xb3\xfc\x3f\x15\xf8\x17\xf8\x17\xfc\x17\x07\x0e\xf8\x81\xf9\x64\xf8\xc3\x15"
+"\x4f\xfb\x8d\x06\x26\x86\x62\x7c\x6e\x1e\x5b\x72\x53\x6b\x50\x1b\x57\x58\xa4\xb3\x6f\x1f\x74\xac\x85\xb4\xf7\x04\x1a\xf7\x8d\x4f"
+"\xfb\x8a\x07\xfb\x1d\x90\x69\xa3\x63\x1e\x4a\xb1\xd1\x66\xde\x1b\xd7\xcb\xaa\xc3\xb4\x1f\xac\xb8\x91\xab\xf7\x29\x1a\x0e\xe1\xf8"
+"\x27\xf8\x1c\x15\xfb\x69\x06\x41\xf7\x4d\x05\x2d\x06\xf7\x7d\xfc\xd5\x05\xde\x06\xf7\x7d\xf8\xd5\x05\x2d\x06\x22\xfb\x9d\x15\x3f"
+"\xfb\x48\x40\xf7\x48\x05\x0e\x84\xf8\x73\xbd\x15\x86\x06\x5a\x8d\x84\x93\x8a\xba\x08\xf7\xeb\xfb\x32\x7a\x07\xc9\x88\x97\x81\x59"
+"\x1a\xfb\x7f\x07\x6f\x86\x7d\x7d\x80\x1e\x75\x70\x6c\x7f\x6d\x1b\x64\x6b\xad\xb5\x1f\xf7\xda\xfb\x26\x7d\x07\xba\x89\x99\x7d\x8c"
+"\x5b\x08\xfb\x90\x07\x3c\xbb\x58\xd4\xb0\xb2\x9b\xa6\xa6\x1e\xb6\xb6\x05\x22\x07\x7a\x74\x85\x7b\x76\x1a\x60\xaa\x6a\xb5\xb4\xad"
+"\xa1\xc1\xb0\x1e\x77\x9b\x05\x70\x6c\x78\x82\x76\x1b\x75\x7b\x9b\xa2\xa3\x9d\xa9\xa5\xa1\x1f\x9f\x9b\x99\x92\xa9\x92\x08\x0e\x7f"
+"\x3f\x1d\x0e\x7f\x3f\x1d\xf7\x25\xf7\x76\x35\x0a\xf7\x2c\x16\x4d\x1d\xa8\xa7\xa2\xa2\xa8\xa6\x74\xa3\x6f\x1f\x0e\x7f\x3f\x1d\xf7"
+"\x64\xf7\x4b\x15\xa4\x06\x97\xb1\x05\x93\xa5\x8e\x99\x99\x1a\xab\x7f\x9b\x73\x76\x7d\x79\x71\x7e\x8f\x77\x93\x72\x1e\x58\x5a\x15"
+"\x72\x77\x78\x72\x73\x9e\x77\xa4\xa3\x9f\x9f\xa3\xa3\x77\x9f\x74\x1f\xf7\x2c\x16\x72\x77\x78\x72\x73\x9f\x77\xa3\xa3\x9f\x9f\xa3"
+"\xa3\x77\x9f\x74\x1f\x0e\x7f\x3f\x1d\xf7\x63\xe8\x5f\x0a\xc0\x8c\x8f\x9e\xed\x1d\x8c\x84\x98\x59\x1e\x0e\x84\x25\x1d\xfb\x79\xf9"
+"\x37\x42\x1d\x84\x25\x1d\x28\xf8\xee\x4b\x0a\x31\x1d\xfc\x07\xc4\x3a\x1d\x31\x1d\xfb\x49\xc4\x20\x1d\x31\x1d\xfc\x49\xf7\x41\x15"
+"\x71\x75\x74\x70\x6f\x9f\x75\xa7\xaa\x1d\x31\x1d\xfb\x9a\xc4\x29\x0a\x4e\xf7\x2c\xf9\x60\x15\x56\x5e\x05\x86\x86\x87\x85\x87\x1a"
+"\x7e\xb3\x75\xc6\x79\x1e\x50\x64\x72\x68\x5c\x1a\x5b\xa3\x6c\xbe\x77\x1e\x34\x4a\x64\x4a\x3c\x1a\x57\x9f\x5c\xae\x6a\x1e\x6c\xad"
+"\xb2\x7d\xc2\x1b\xa0\x9b\x8c\x8f\xb3\x1f\x8c\x96\x96\x8c\x92\x1b\xa3\x99\x7d\x75\x6c\x71\x72\x6b\x84\x86\x8c\x8f\x7f\x1f\x90\x7c"
+"\x82\x8d\x82\x1b\x75\x7b\x7b\x76\x71\xa2\x7a\xab\xd3\xcc\xd4\xda\xbf\x6f\xa9\x59\x84\x7c\x8a\x89\x7b\x1f\x89\x71\x71\x89\x7c\x1b"
+"\x4a\x64\xb9\xd9\xce\xa5\xc6\xc1\xc0\x1f\x87\xa1\x96\x8a\x9c\x1b\xd0\xc7\xa9\xad\x9d\x76\x98\x6e\x69\x5f\x78\x65\x55\x1f\x6f\xa5"
+"\x81\xa2\xae\x1a\xb3\x99\xa8\xaf\xac\x1e\x82\xb2\x9f\x88\xa8\x1b\xcd\xbe\xa3\xaa\x9e\x72\x99\x69\x63\x5e\x7d\x6d\x53\x1f\x4c\xa2"
+"\x7d\x94\x9d\x1a\x95\x8f\x96\x93\x97\x1e\x0e\x84\x33\x1d\x47\xd3\x15\xfb\x11\xf7\x3b\x05\x4d\x06\xfb\x10\xfb\x3b\x05\xad\x06\xf7"
+"\x0d\xf2\xf7\x0e\x24\x05\x0e\x84\x33\x1d\xfb\x30\xd3\x15\xfb\x27\xf7\x28\x05\x9d\x79\x82\x90\x7b\x1b\x77\x7e\x7f\x78\x7b\x95\x7c"
+"\x9e\x7f\x1f\xf7\x2e\x2a\x05\x0e\x4c\x34\x0a\xfb\x6b\xf8\x8f\x2a\x0a\x4c\x34\x0a\xfb\x4a\xf9\x03\x43\x1d\x0e\x2e\xf7\x0e\xf9\x3e"
+"\x15\x57\x5a\x05\x89\x88\x89\x87\x88\x1a\x72\xc5\x64\xd1\x75\x1e\x20\xfb\x02\x56\xfb\x07\xfb\x11\x1a\x4a\x9c\x5f\xb1\x67\x1e\x6c"
+"\xad\xb2\x7d\xc2\x1b\xa0\x9b\x8c\x8f\xb3\x1f\x8c\x96\x96\x8c\x92\x1b\xa3\x99\x7d\x75\x6c\x71\x72\x6b\x84\x86\x8c\x8f\x7f\x1f\x90"
+"\x7c\x82\x8d\x82\x1b\x75\x7b\x7b\x76\x71\xa2\x7a\xab\xd3\xcc\xd4\xda\xbf\x6f\xa9\x59\x84\x7c\x8a\x89\x7b\x1f\x89\x70\x72\x89\x7c"
+"\x1b\x48\x66\xb9\xdc\xf7\x07\xaf\xf4\xd8\xf7\x04\x1f\x8a\x98\x94\x8b\x96\x1b\xd5\xd7\xb4\xb4\x9b\x78\x99\x75\x60\x5c\x72\x55\x4e"
+"\x1f\x4d\xa2\x69\xa7\xa6\x1a\x95\x90\x95\x97\x99\x1e\x0e\x7d\x99\xf8\x56\x95\xf7\x5e\x99\x06\xb1\x0a\xde\x0b\xa4\x8f\x8f\x90\x8e"
+"\x8e\x8f\x91\x8f\x8f\x8f\xb2\x0c\x0c\xb2\x8f\x9f\x90\x8f\x8f\x8e\x8f\x8f\x8f\x95\x8f\x0c\x0d\xf9\x66\x14\xf8\x8f\x15\xbc\x13\x00"
+"\xad\x02\x00\x01\x00\x0b\x00\x16\x00\x2a\x00\x7f\x00\xbc\x00\xc2\x00\xc6\x00\xcb\x00\xd0\x00\xd8\x00\xdb\x00\xdf\x00\xea\x00\xef"
+"\x00\xf4\x01\x27\x01\x9f\x01\xc4\x01\xf9\x02\x32\x02\x66\x02\x6a\x02\x74\x02\x7c\x02\x84\x02\x8b\x02\xb5\x03\x1a\x03\x52\x03\x71"
+"\x03\x7e\x03\x8c\x03\x9e\x03\xab\x03\xb5\x03\xc5\x03\xd0\x03\xda\x03\xe3\x03\xe9\x03\xf1\x03\xf6\x03\xfe\x04\x1b\x04\x31\x04\x3a"
+"\x04\x5a\x04\x6f\x04\x7b\x04\x89\x04\x97\x04\x9b\x04\xa7\x04\xac\x04\xb8\x04\xc1\x04\xc9\x04\xcf\x04\xd8\x04\xdd\x04\xe3\x04\xe8"
+"\x04\xf0\x04\xf8\x05\x00\x05\x06\x05\x87\x06\x03\x06\x79\x06\x82\x06\xed\x06\xff\x07\x68\x07\x81\x07\xc3\x08\x20\x08\x31\x08\x38"
+"\x08\x51\x08\xa5\x08\xe7\x09\x0c\x09\x50\x09\x8a\x09\x96\x09\xd5\x09\xe8\x09\xee\x0a\x26\x0a\x4e\x0a\x84\x0a\x8b\x0a\x9d\x0a\xc7"
+"\x0a\xf0\x0a\xfa\x0b\x29\x0b\x56\x0b\x81\x0b\xab\x0b\xaf\x0b\xb6\x0b\xca\x0b\xdd\x0b\xf2\x0c\x12\x0c\x20\x0c\x2a\x0c\x39\x0c\x40"
+"\x0c\x52\x0c\x58\x0c\x79\x0c\x8b\x0c\x94\x0c\xa4\x0c\xad\x0c\xb2\x0c\xbb\x0c\xd8\x0c\xe0\x0c\xe8\x0c\xed\x0d\x08\x0d\x22\x0d\x3c"
+"\x0d\x49\x0d\x50\x0d\x5e\x0d\x6c\x0d\x7e\x0d\x93\x0d\x97\x0d\xac\x0d\xc1\x0d\xca\x0d\xce\x0d\xd7\x0d\xea\x0d\xef\x0d\xfa\x0e\x05"
+"\x0e\x17\x0e\x1b\x0e\x28\x0e\x3a\x0e\x40\x0e\x51\x0e\x58\x0e\x68\x0e\x72\x0e\x79\x0e\x88\x0e\x91\x0e\x9a\x0e\xa3\x0e\xb1\x0e\xbf"
+"\x0e\xcd\x0e\xdb\x0e\xe8\x0e\xf5\x0f\x02\x0f\x0e\x0f\x1a\x0f\x26\x0f\x32\x0f\x3c\x0f\x46\x0f\x50\x0f\x5b\x0f\x66\x0f\x6f\xdf\x1d"
+"\xf7\x10\xfb\x3b\x05\xc9\x06\x0e\xf8\xe9\xf7\x3d\x15\x7a\x1d\xf8\xb0\x07\x0b\x84\x1d\xf7\x93\x07\xfc\x7e\xf7\x95\x15\xf7\x07\xf7"
+"\xa7\xf7\x08\xfb\xa7\x05\x0b\xda\x1d\x2d\xab\x2f\xc1\x52\xe5\x1d\xf7\x1f\xf7\x5e\xee\x6e\xe1\x54\xc6\x1f\xd0\x4c\x37\xaf\x2b\x1b"
+"\x67\x04\xb9\xb9\x79\x6b\xaf\x1f\xc1\x5a\xaa\x2d\xfb\x0b\x1a\x50\x7f\x46\x76\x57\x1e\x82\x72\x7a\x72\x74\x74\x08\x68\x68\x5e\x79"
+"\x56\x1b\x5d\x5e\x9d\xaa\x67\x1f\x58\xb9\x6a\xf0\xf7\x03\x1a\xf1\xa7\xec\xb5\xba\x1e\xb6\xb2\xbc\xa1\xc2\x1b\x0b\xf7\x8e\xf8\x60"
+"\x15\xfb\x17\x31\x2b\xfb\x1e\xfb\x1c\xe8\x27\xf7\x12\xf7\x12\xeb\xf4\xf7\x1f\xf7\x18\x2f\xe9\xfb\x14\x1f\x7e\x6f\x15\xdf\xc6\x2b"
+"\xfb\x1d\xfb\x06\x5e\x48\x40\x64\x66\xa3\xb3\x76\x1f\x6f\xbf\x7b\xd1\xd2\x1a\xea\xb9\xc9\xd3\x1e\x0b\x15\xce\xac\xb8\x85\x0a\xf8"
+"\x56\x15\x0b\x9b\x16\x6c\x0a\x0b\x86\x82\xb7\x0a\x0b\xb0\x0a\x95\x7c\x9e\x7f\x61\x0a\x9a\x0a\x0e\x15\x2c\x1d\x0e\x15\x5d\x06\xfc"
+"\x59\xfd\x46\x05\xbc\x06\x0b\xd7\x1d\x93\x8c\x0b\x7c\x45\x8c\x1f\x0b\xf8\x53\xf9\x38\x15\x6f\x0a\x7c\xb1\xb4\x83\xb2\x1b\xf7\x08"
+"\xe3\xda\xf3\xdd\x54\xcb\xfb\x18\xd3\x1f\x22\xc4\x61\xb7\xc2\x1a\xc2\xb5\xb0\xc9\xb8\xb5\x78\x67\xae\x1e\xaa\x6b\x99\x71\x9b\x50"
+"\x08\xa4\x06\x0b\xf9\x59\xf7\xf6\x15\xfb\x93\x79\x06\xd9\x86\x93\x83\x8d\x3f\x08\xfb\x36\x07\x6b\x4f\x70\x42\xfb\x37\x27\xf7\x06"
+"\xf7\x4e\xe9\xa7\xe6\xb7\xbc\x1e\xbc\xb6\xca\xa6\xcf\x1b\xc3\xbd\x78\x67\xb1\x1f\xa9\x6e\x9b\x71\xa4\x4e\x08\xa2\x06\x83\xf7\x67"
+"\x05\x75\x06\x77\x85\x79\x7e\x76\x1b\x81\x7b\x8e\x92\x79\x1f\x9a\x5e\x5c\x93\x5e\x1b\xfb\x5b\xfb\x23\xfb\x27\xfb\x60\x29\xa6\x40"
+"\xc3\x50\x1f\x46\xcd\xec\x65\xf7\x02\x1b\xe2\xf7\x10\xae\xae\xb3\x1f\xf7\x5f\x07\x8d\xc8\x96\x97\xc4\x8f\x08\x0b\xf9\x00\xf8\x57"
+"\x15\x9c\x0a\x38\x6c\x54\x4d\x1f\x45\x4d\x65\x2f\xfb\x02\x1a\xfb\x60\xf7\x19\xfb\x1c\xf7\x5b\xf7\x05\xef\xb9\xdc\xc7\x1e\x82\x0a"
+"\x0b\x9d\x16\xf7\x68\x9a\x06\x59\x8e\x7b\x98\xaf\x1a\xf7\xad\x07\xb8\xbb\xa1\x97\xac\x1b\xbc\xa3\x6c\x49\x1f\xfb\x65\x07\x89\x4a"
+"\x7f\x7b\x5a\x88\x08\x7c\xf7\x64\x9a\x07\x5a\x90\x80\x97\x8a\xbc\x08\xf7\x79\x94\x1d\x0b\xf9\x57\x21\x1d\xfb\x7f\x78\x06\xdb\x86"
+"\x98\x7a\x8e\x21\x08\xfb\xe5\x07\xfc\x15\xf8\x78\x05\xfb\x3f\x78\x06\xb6\x99\x83\x5c\xb3\x1f\xfc\x4d\x59\x1d\xf8\x1c\x07\xf8\x4e"
+"\xfc\xba\x05\x9c\xf8\xa2\x06\x8e\xf3\x98\x9c\xda\x92\x08\x0b\xf8\x36\xf7\x1b\x15\x79\x8f\x79\x2d\x7d\x7f\x2b\x88\x19\xfb\x1e\x06"
+"\xf7\xa1\xf8\x29\x05\x9a\xfb\xef\x07\x88\xfb\x0a\x05\x9d\x06\x93\xd2\x99\x9a\xc9\x8d\x08\xf7\x1e\x06\xfb\x9e\xfc\x29\x05\x7c\xf8"
+"\x0d\x07\x0b\x15\x41\x0a\x0b\xa2\x8a\x05\xbf\xe3\x1d\x57\x4f\x1d\x0b\x15\xa8\x06\x95\xb7\x05\x9a\x0b\x93\x9a\xbc\x8c\x1e\x9b\x9c"
+"\x0b\x07\xd1\x9b\x9a\xd5\x1e\x0b\xf8\x6a\xf8\x18\x71\x1d\xfb\x84\xfc\x1a\x9b\x0a\x90\xf7\xe8\x15\xc6\xa7\xae\xb9\xaa\xa5\x7a\x6d"
+"\x9b\x1e\x9e\x68\x96\x5e\x63\x1a\x53\x6f\x68\x5d\x4d\x62\xcc\xeb\x1e\x0b\xf9\x27\x9e\x15\x65\x8e\x77\x95\x6e\xad\xfb\x62\xf7\x91"
+"\x18\xf7\x13\xa4\xc1\xbd\xe7\x1a\xb6\x7e\xb0\x71\xa8\x1e\xb4\x65\x37\xa5\x2e\x1b\xfb\xa8\x78\x06\xd5\x83\x95\x48\x1d\x82\x81\x40"
+"\x85\x08\x78\xf7\xa9\x9e\x07\x3e\x90\x7f\x97\x8a\xd4\x08\xf7\x59\x07\xc3\x8d\xf7\x82\xfb\xc8\x05\xf7\x35\x06\xfc\x5b\xf8\xe1\x15"
+"\xa7\x96\x93\xb3\xf7\x11\xc5\x60\x2d\x59\x76\x61\x67\x78\x1e\x5d\x71\x68\x85\x2b\x89\x08\x0b\xf8\xd2\xf7\x44\x15\x6d\x20\x69\x70"
+"\xfb\x00\x87\x08\xfb\x95\x06\xf8\x44\xf8\xf5\x05\x9a\xfc\xa2\x07\x77\xfb\x3f\x05\xa5\x06\x9c\xf0\xaf\xa8\xf7\x07\x8e\x08\xf7\x71"
+"\x06\xfc\x49\xfc\xf5\x05\x7c\xf8\xc8\x07\xa3\xf7\x44\x05\x0b\xa0\x16\xf7\x80\x9a\x06\x4c\x8e\x80\x95\x8a\xc3\x08\xf8\xe9\x07\x87"
+"\x8d\x58\x7b\x66\x80\x44\x7a\x43\x0a\xfc\x71\x68\x1d\x0b\x2b\x1d\xf7\x5b\x16\x71\x75\x74\x70\x6f\x49\x1d\x0e\x06\x81\xfb\x34\x9e"
+"\x89\x8f\xdf\xac\xaa\xe0\x8a\x19\x0b\x92\x91\x8c\x8c\x91\x1e\x8d\x90\x8b\x8b\x8d\x1b\x93\x91\x85\x83\x6a\x0b\x4d\x1d\xa7\xa8\xa2"
+"\xa2\xa8\xa7\x74\xa2\x6f\x1f\x0b\x59\x0a\xf7\xb3\x9d\x07\x74\x8c\x05\x0b\x19\x7b\x91\x07\x8c\x96\x97\x8c\x93\x1b\xab\x95\x7d\x5c"
+"\x1f\x0b\x82\x86\x79\x79\x1e\xfb\x27\xfb\x28\x05\x0b\x9c\x7b\x06\x5a\x8c\x83\x9a\xe3\x1a\x0b\x07\x8a\x36\x82\x80\x3d\x86\x08\x0b"
+"\x26\x0a\xf7\x08\x07\x0b\x87\x84\x9a\x1f\xa2\x80\x05\x0b\xbe\xf5\x97\x1f\x0e\x7d\x1d\x73\xac\x4f\x56\x1d\x0b\x15\x65\x7a\x7e\x7f"
+"\x74\x1b\x7c\x78\x91\x94\x64\x1d\xaa\x96\x9c\x9a\xa2\x1b\x97\x99\xb6\x0a\xa8\xa9\xd7\xa0\x1f\x0e\xa3\xf9\x18\x15\xa2\x8a\x05\xbf"
+"\x89\x9b\x78\x4c\x1a\xfc\x5c\x8a\x0a\x9d\xfb\xb2\x07\x0e\x15\xce\xac\xb8\xc8\xc7\x8c\x0a\x0b\xa4\x6a\x87\x85\x18\x85\x84\x05\x3e"
+"\x29\x62\x51\x7e\x1a\x85\x8e\x88\x91\x90\x8d\x8c\x90\x8f\x1e\xc6\xc5\xb3\xb0\xd2\xc8\x08\x0b\xc3\x0a\xf7\x36\xe4\xce\xf7\x10\xf7"
+"\x10\x2c\xd1\xfb\x3a\x6c\x77\x8a\x86\x6d\x1f\x0b\xa2\x1e\xa9\xc7\x15\x5d\xe0\x1d\x66\x6c\x7d\x0b\xef\x1d\xfb\x65\x07\x8a\x2f\x86"
+"\x82\x58\x89\x08\x7a\x0b\xd1\x1d\xf7\xb2\x9d\x07\x75\x8c\x05\x56\x8d\x7c\x9e\x0b\x15\xcd\x1d\x0b\xfb\xce\x06\x89\x40\x81\x80\x44"
+"\x88\x08\x7c\x0b\x1b\xdd\xd8\x1d\x0b\xf7\x64\x07\xe3\x93\x9a\xbc\x8c\x1e\x9b\x9c\x0b\xa2\xa1\xa7\xa6\x74\xa2\x70\x1f\x0b\x06\x7e"
+"\xfb\x1f\x05\x9b\x06\x0b\x7c\x78\x56\x4f\x1d\x0b\x1b\xb1\x9a\x81\x71\x70\x76\x7a\x0b\x15\x30\x1d\xa0\x0b\x85\x8a\x89\x81\x1f\x0b"
+"\xe1\x1d\xfb\xb3\x0b\x40\x91\x7f\x97\x8a\xd3\x08\x0b\x15\xa6\x06\x94\xb3\x05\x99\x0b\x9d\x07\x3f\x7b\x99\xd2\x1f\x0b\x1f\xf7\x2e"
+"\x2a\x05\x0e\x92\x16\xf7\x7e\x9a\x06\x77\x8c\x61\x8e\x7f\x96\x8a\xb0\x19\xf7\x4c\x07\xf7\x20\xfb\x4f\x8f\x86\x8e\x86\x8e\x88\x19"
+"\x93\x81\x8e\x85\x86\x1a\x82\x82\x85\x7f\x1e\x78\x7c\xf7\x6e\x9a\x06\x5f\x8e\x6c\x9e\x61\xbe\xfb\x2d\xf7\x56\x18\xa8\xa6\xf7\x11"
+"\xf7\x04\xa6\x9b\xcb\x89\x19\x9a\xfb\x60\x7d\x07\xb2\x8a\x96\x87\x7e\x1a\x82\x82\x7e\x7d\x7e\x1e\xfb\x1d\xfb\x0e\x05\xf8\x38\x07"
+"\x87\x8d\x64\x7f\x6e\x82\x52\x7c\x19\x6d\x83\x05\x7b\x07\x8c\x98\x94\x8c\x95\x1b\xad\x94\x7e\x5b\x1f\xfc\x76\x07\x8a\x56\x88\x88"
+"\x44\x80\x08\x0b\xf8\x31\xf9\x17\x15\xc7\x88\x93\x87\x73\x1a\x75\x74\x6d\x54\x58\x1e\xfb\x45\xfb\x35\x05\xf7\x61\x07\x8c\xd6\x95"
+"\x94\xdc\x91\x08\x9e\xfb\xb0\x78\x07\xd8\x86\x96\x7f\x8d\x42\x08\xfc\x45\x07\x8a\x36\x80\x80\x3d\x86\x08\x78\xf7\xae\x9e\x07\x3e"
+"\x90\x7f\x96\x8a\xd5\x08\xf7\x4f\x07\xa5\xa0\xf5\x22\x05\xd8\x3e\xc0\x46\x73\x1a\x7c\x7e\x85\x6e\x8a\x1e\x86\x80\x8b\x8a\x7f\x1f"
+"\x78\xf7\xc5\x9e\x07\x57\x8c\x7d\x95\x30\xec\xfb\x7d\xf7\x8e\x18\xf7\x52\xf7\x50\xcf\xcc\x9b\x93\xcf\x90\x19\x9e\xfb\x9a\x07\x0b"
+"\xf9\x26\xf9\x72\x15\x5a\x06\x43\x20\x05\xaf\x4b\x5e\x98\x49\x1b\xfb\x55\xfb\x1b\xfb\x23\xfb\x5f\x4b\x9a\x4b\xa5\x59\x1f\x9d\x68"
+"\x9b\x77\xb5\x65\x2c\xfb\x1f\x18\xbc\x06\xda\xf7\x08\x05\x66\xc9\xb9\x7e\xcf\x1b\xf7\x56\xf7\x1a\xf7\x21\xf7\x61\xcb\x7c\xcc\x70"
+"\xbd\x1f\x79\xae\x7a\x9f\x62\xb1\x08\x60\x4b\x15\xad\x4a\x98\x53\x31\x1a\xfb\x52\x3a\xfb\x09\xfb\x18\x51\x62\x9e\xba\x60\x1e\x72"
+"\xae\x15\x69\xcb\x7f\xc2\xe3\x1a\xf7\x53\xdd\xf7\x0b\xf7\x17\xc3\xb4\x78\x5d\xb7\x1e\x0b\x7d\x1d\x74\xac\x4e\x56\x1d\xbd\x0b\x15"
+"\x25\x06\x64\xfb\x17\x7c\xbb\x86\x99\x82\x9d\x19\xb9\x72\x65\xa3\x5a\x1b\xfb\x07\x2e\xfb\x0d\xfb\x29\xfb\x14\xd3\x31\xf2\xd6\xc4"
+"\xae\xd3\xb5\x1f\x91\x65\x93\x77\x9a\x74\x08\x7a\x96\x96\x82\x92\x1b\x8e\x90\x8d\x8e\x92\x1f\xe6\xb4\x05\xaf\x07\x84\x7a\x83\x89"
+"\x81\x1b\x63\x6e\xb0\xd6\x7a\x1f\x34\x9d\x15\xfb\x08\x66\x66\x53\x62\x1b\x58\x68\xdb\xf7\x09\xf7\x1f\xb4\xdf\xce\xa8\xa2\x7c\x69"
+"\x9f\x1f\x99\x74\x93\x72\xa0\x3d\x08\x0e\xc5\x15\xc5\x0a\xf8\xcb\xbf\x1d\xfb\x30\xa1\x1d\xfb\x2b\xc7\x97\x0a\x0b\xf8\x49\xf8\xbb"
+"\x15\x64\x06\x52\xfb\x01\x05\x98\x68\x74\x90\x69\x1b\xfb\x15\x30\x2a\xfb\x1c\x5d\x97\x5d\xa0\x65\x1f\x9b\x70\x98\x7c\xad\x70\x42"
+"\xfb\x20\x18\xb0\x06\xcc\xf7\x0f\x05\x7b\xae\xa2\x86\xae\x1b\xf7\x13\xeb\xf4\xf7\x1f\xbb\x7d\xbc\x73\xb0\x1f\x7b\xa3\x7e\x97\x6c"
+"\xa1\x08\x6b\x4f\x15\xa8\x55\x96\x5e\x4b\x1a\xfb\x09\x5f\x47\x40\x69\x74\x97\xa9\x72\x1e\x76\xab\x15\x70\xc5\x7f\xc4\xd0\x1a\xe9"
+"\xba\xc9\xd2\xaa\x0b\x9e\x16\xf7\xaa\x9e\x06\x8e\x0a\xf8\x50\xa4\x0a\xfb\x56\xfb\xc3\xf7\x56\xa4\x0a\xfc\x45\x46\x0a\x0b\x9b\x16"
+"\xf7\xb0\x06\xf7\x08\xf4\xac\xc3\xc9\x1f\xcc\xc6\xb0\xe4\xec\x1a\xe5\x6e\xd9\x53\xc2\x1e\xd0\x47\xfb\x01\xaf\xfb\x1d\x1b\xfb\xa2"
+"\x78\x06\xda\x84\x93\x83\x8c\x40\x08\xfc\x50\x07\x8a\x42\x7f\x7f\x40\x86\x08\xf7\x52\xf8\xcb\x15\xaa\x95\x93\xb5\xe2\xac\x1d\x0b"
+"\xf8\x04\xf8\x51\x15\x97\x5c\x5c\x91\x5d\x1b\x2b\x40\x5a\x4b\x66\xa0\x6f\xbd\x6e\x1f\x4b\x62\x75\x6a\x57\x1a\x3b\xd1\x52\xec\xef"
+"\xd1\xc8\xf3\x9f\x1e\x78\x8e\x05\x3d\x72\x5b\x62\x48\x1b\x48\x58\xbd\xcf\xa8\x93\xa0\xa2\xaa\x1f\x7d\xab\xa8\x84\xaa\x1b\xa9\x9e"
+"\x97\xa0\x9f\x74\x98\x68\x72\x75\x86\x7e\x67\x1f\x7a\x9a\x84\x9c\xa1\x1a\xbb\xaf\xa6\xcb\xb7\xb0\x83\x78\xb8\x1e\x0b\xf7\x81\x9a"
+"\x06\x49\x90\x84\x94\x8a\xd4\x08\xf7\xf7\x07\xa5\x1d\x0b\xf7\x6a\xf7\x49\x6e\x0a\x0b\x15\xf8\x0e\x9e\x1d\x91\x07\xf7\xbb\xf8\x0e"
+"\x05\xfc\x14\xb0\x1d\x79\x07\xd5\x9b\x7d\x45\x8c\x1f\x0b\x76\x06\x75\x87\x80\x7f\x7a\x1b\x81\x7a\x8f\x93\x7a\x1f\x99\x66\x66\x93"
+"\x6a\x1b\x61\x5f\x7a\x6e\x6a\x1f\x68\x6c\x79\x61\x57\x1a\x3b\xb7\x53\xf7\x04\x50\x1e\xd3\x64\xbf\x63\xa4\x65\x08\x94\x7e\x90\x76"
+"\x72\x1a\x49\x59\x5d\x42\x31\x4d\xc2\xf7\x0e\x59\x1e\x74\x06\xa9\xfb\x68\x05\xa1\x06\x9e\x8c\x97\x99\x9a\x1b\x96\x9c\x87\x84\x9e"
+"\x1f\x0b\xf7\x55\xf8\x5d\x15\x86\x8e\x4d\x73\x65\x7e\x53\x7a\x19\x7b\x07\x90\x8c\x05\x8d\x9a\x9a\x8c\x95\x1b\xa2\x94\x7a\x60\x1f"
+"\xfc\x0f\xd4\x1d\x81\x92\xa0\x7a\x1f\xa2\x79\x7d\x94\x7b\x1b\x74\x79\x7a\x75\x6b\xb2\x74\xc2\xb7\xb3\x99\xa4\xa6\x1f\xaf\xab\xa1"
+"\xcf\xda\x1a\x0b\xc1\x07\xf7\x08\x89\xa0\x7a\xa1\xfb\x01\x08\xa3\x06\x85\xf7\x3e\x05\xfc\xc8\x06\x85\xfb\x3e\x05\xa3\x06\xa2\xf7"
+"\x01\xa0\x9c\xf7\x07\x8d\x08\xc1\x0b\xf7\x4d\x15\x42\x67\x5b\x65\x52\x1b\x3b\x53\xdb\xf7\x09\x88\x1f\xf7\xac\x06\xf7\x07\x88\x4c"
+"\xd2\x29\x1b\xfb\x01\x3a\x27\xfb\x18\xfb\x18\xda\x27\xf4\xc1\xbe\xa6\xbb\xad\x1f\x9d\xa3\x98\xa8\x9d\xc3\x08\xfb\xbd\xf7\x19\x15"
+"\xcd\x93\xad\xb1\xbd\x1b\xbe\xa9\x65\x49\x8e\x1f\x0b\xf7\x41\xf8\x67\x15\x48\x6a\x81\x86\x45\x6f\x91\x7c\x18\x91\x8d\x05\x8d\x93"
+"\x92\x8c\x92\x1b\xa6\xec\x1d\x9b\x79\x1e\x82\x93\x92\x85\x8f\x1b\x8e\x90\x8d\x8e\x90\x1f\xf2\xc1\x85\x99\x05\x83\x7e\x85\x89\x80"
+"\x1b\x6c\x83\x9c\xcb\x1f\x0b\xf7\x93\x26\x0a\x26\xf7\x08\x06\x8c\x1d\x07\x0b\x9f\xbd\x1e\x92\x9e\x90\x9c\x95\x1a\xa3\x75\xa1\x72"
+"\x73\x75\x75\x73\x81\x90\x7a\x92\x78\x1e\x9f\x58\x8f\x73\x56\x1a\x67\x8c\x7c\x8f\x61\x9c\x08\x93\x78\x78\x90\x81\x1b\x74\x7a\x79"
+"\x71\x6f\x9a\x7c\xa8\x97\x95\x8e\x94\xa3\x1f\xb2\x9a\x9c\x8f\xae\x8e\x0b\x07\xd1\x3d\x1d\x2f\x1d\xfb\x5b\xfb\xbb\xf7\x5b\xaf\x0a"
+"\xfc\x5b\x5c\x1d\x0e\x15\x65\x7b\x7d\x79\x0a\x08\x7c\xf7\x6b\x9a\x07\x55\x8f\x81\x94\xc0\x1a\xf8\xec\x07\x86\x8d\x82\x89\x81\x88"
+"\x7f\x85\x19\x82\x78\x7c\x86\x83\x1b\x86\x81\x8e\x90\x7c\x1f\x96\x6f\x6e\x91\x72\x1b\x5d\x5d\x73\x64\x6f\x1f\x6d\x60\x81\x64\x87"
+"\x33\x08\x0b\x7f\x74\x1b\x7d\x77\x91\x94\x79\x1f\x73\x97\x05\x97\x73\x73\xe4\x1d\xaa\x96\x9b\x9a\xa3\x1b\x96\x9a\x48\x0a\x77\xb4"
+"\x99\x87\xa4\x1b\xc3\xa8\xa9\xd7\xa0\x1f\x0e\xf8\x28\xf7\xd5\x15\xfb\x6e\x07\x4c\x7f\x78\x61\x89\x1e\x79\x8a\x05\x79\xf7\x78\x9d"
+"\x07\x79\x8c\x05\x61\x8d\x7f\x9e\xca\x1a\xf7\x6e\xa5\x07\xf7\x16\xfb\x4f\x05\xba\x4c\x92\x7f\x7c\x1a\x79\x80\x85\x69\x89\x1e\x79"
+"\x0b\x9a\x1d\x6b\xdd\x54\x0a\x0b\x39\x0a\x9d\xfb\xb1\x79\x07\xd5\x9a\x2e\x0a\xfc\x96\xfb\xc5\x95\x0a\x0b\xf7\xc7\xf7\x66\x15\x32"
+"\xca\x0a\xf7\x77\x9c\x79\x06\x59\x8e\x86\x94\x8a\xe7\x08\xe4\xa6\x07\xf7\x10\xfb\x31\x05\x93\x82\x8e\x84\x84\x1a\x83\x84\x86\x7f"
+"\x1e\x79\x7a\x0b\xf9\x62\xf7\x27\x15\x54\xf7\x96\x5c\x06\xfb\x5f\xfb\x9e\x05\x5a\xf7\x48\x31\xd1\xe5\xc2\x07\xfb\x11\xc4\x15\xfb"
+"\x1b\x06\xf7\x1b\xf7\x47\x05\xb7\xf7\xf2\x2c\x0a\x0b\x9b\x1a\x9f\x7e\x97\x75\x7c\x44\x0a\x0b\xf7\xc8\x15\x5f\x8d\x7f\x93\x8a\xa5"
+"\x08\xf7\xeb\x07\x7d\x8e\xfb\x0a\x54\x05\x74\x07\x94\xa4\x99\x8f\x8f\x1b\x91\x8d\x85\x75\x1f\xfb\x95\x07\x8a\x74\x81\x84\x61\x89"
+"\x08\x73\xf7\x53\x07\x0b\x6d\xa4\x6f\x95\x53\x92\xbb\x98\xa0\x94\xa2\x9d\x08\xb0\xa9\xa1\xb8\xbb\x1a\xe4\x3f\xc8\xfb\x04\x66\x6f"
+"\x85\x7b\x62\x1e\x83\x74\x81\x88\x80\x1b\x76\x81\x94\x9e\x88\x1f\x7b\x06\x0b\x79\x9d\x05\x44\x42\x48\x6d\x38\x1b\x4c\x53\x9f\xb1"
+"\x60\x1f\x54\xbc\x6c\xe5\xf7\x04\x1a\xf7\x49\xe8\xf7\x08\xf7\x25\xc4\xbf\x76\x64\xb3\x1e\xab\x6b\x9a\x6f\x9e\x4a\x08\x0b\xf7\x6d"
+"\xf7\xd0\x15\x7e\xb0\xa7\x86\xae\x1b\xc8\xc6\x9e\xac\xb4\x1f\xae\xa7\x9f\xb9\xc0\x1a\xd8\x67\xc0\x40\xad\x1e\x62\x9d\x77\x8d\xfb"
+"\x12\x8c\x08\xfb\x6a\x79\x06\x0b\xae\x1d\xe8\x1d\x8f\x0a\x66\x55\x66\x1f\x0e\xfb\x0b\xfb\x0f\xfb\x09\x3b\xf7\x0e\xf7\x45\xf7\x47"
+"\xda\xf7\x0c\xf7\x0a\x1f\x0e\xa9\x0a\xc2\xc3\xb3\x0a\x6e\x6e\x65\x68\x6e\xa8\xb0\xaf\xa9\xa8\xaf\x1f\x0b\x1a\x9e\x99\x93\xab\x8d"
+"\x1e\x8f\x95\x8b\x8c\x96\x1f\x9e\xfb\xac\x78\x07\xbb\x89\x0b\x15\xce\xac\xb8\xc8\xc7\x1a\xbd\x68\xb2\x4b\x1d\xb0\x92\x91\x8c\x8c"
+"\x91\x1e\x8d\x91\x8c\x8b\x8c\x1b\x93\x91\x85\x83\x6b\x6f\x0b\x07\x4c\x52\x0a\xca\x1a\xf8\x5c\x3c\x1d\xa1\x8c\x05\x0b\x15\x3f\x6e"
+"\x73\x76\x51\x1b\x4a\xb2\x1d\x1a\xbd\x68\xb2\x4b\x1d\xb1\x40\x0a\x6f\x67\x55\x66\x1f\x0b\x15\xce\xac\xb8\x94\x0a\x0b\x5e\x0a\xf7"
+"\x62\xf7\xc3\xfb\x57\x46\x0a\x78\xf7\xaa\x9e\x07\x5e\x0a\x0b\x94\x0a\x83\x6b\x6f\x0b\xfb\x0d\xfb\x33\x24\xf7\x2e\x05\x81\x9a\x85"
+"\x9a\x97\x1a\x9b\x94\x99\x98\x8f\x1e\x93\x8d\x8d\x8c\xa8\x8c\x08\x9d\xfb\xbc\x79\x07\x0b\xfb\xd9\xf7\x2c\x15\xd9\x96\xad\xb0\xc8"
+"\x1b\xc8\xa3\x6f\x34\x98\x1f\x0b\xf0\xab\x26\xf7\x08\x07\xba\x1d\x0b\xa6\x57\x0a\xf7\x5b\x16\x71\x75\x74\x70\x6f\xa0\x75\xa6\xe8"
+"\x1d\xc8\xc7\x1a\xbd\x68\xb2\xbc\x1d\x0b\xf8\x96\xb3\x1d\x0b\xd7\xb0\x0a\x96\x7b\x9d\x80\x61\x0a\x15\x84\x84\x7f\x81\x80\x1e\x77"
+"\x7a\x71\x81\x6e\x1b\x37\x55\xdb\xf7\x10\xf7\x04\xbc\xd5\xd7\xc1\xbb\x5c\x56\x1f\x0b\x50\x1d\x98\x94\x98\x7f\x0a\x0e\x30\x1d\x9f"
+"\xd6\x1d\x76\xdd\x1d\x5b\x0a\x2a\x1d\x0b\x15\x84\xad\xd9\x85\xbe\x1b\xe5\xac\x7e\x67\x51\x3f\x64\xfb\x05\x32\x52\xa8\xb7\xa2\x94"
+"\x9a\xb3\xbb\x1f\x0b\x82\xf7\x75\x05\x76\x06\x76\x85\x7b\x7f\x77\x1b\x82\x7c\x8e\x90\x7c\x1f\x9c\x5a\x59\x93\x5c\x1b\x39\x0b\xf8"
+"\x53\x15\xab\xcb\x05\xa7\xc3\x98\xb1\xa5\x1a\xa3\x7a\x9c\x73\x68\x7a\x62\x23\x85\x1e\x86\x3b\x05\x0b\x07\xe2\x93\x99\xbc\x8d\xbd"
+"\x1d\x30\x08\x3f\x07\x0e\x5d\x0a\x79\x07\x2e\x1d\x0b\x06\xc5\x8a\x9f\x71\x89\x45\x08\x9d\xf7\x85\x79\x06\x0b\x1f\x7d\x6c\x05\x7f"
+"\xa8\xa2\x87\xab\x1b\xd8\xbb\xab\x0b\xba\x0a\xfc\x1a\x07\x81\xfb\x35\x9e\x8a\x8f\xe2\xac\xaa\xe0\x8a\x19\x0b\x15\xa9\xc3\xaf\xb9"
+"\xd5\xbc\x3f\xfb\x09\xfb\x02\x5a\x40\x43\x5c\x52\xaf\xa9\x1e\x0e\x07\xc5\x1d\x0b\x07\x8a\x36\x81\x80\x3f\x86\x08\x78\xf7\xac\x9e"
+"\x07\x3f\x8e\x7d\x99\x8a\xd4\x08\x0b\x15\x64\x71\x7a\x7f\x6c\x1b\x76\x76\x90\x94\x7a\x1f\xba\x32\x79\x92\x5e\x1b\x5d\x0b\xe3\x60"
+"\x1d\x90\x82\x8c\x2f\x08\x0b\x9e\xed\x1d\x0b\x15\x55\x5e\x5e\x55\x53\xb6\x5f\x0b\x15\x70\x74\x74\x71\x6f\xa2\x74\xa6\xa6\xa2\xa2"
+"\xa6\xa6\x74\xa2\x70\x1f\x0b\xb7\x0a\xe3\x1a\x0e\x07\xe3\x93\x99\xbc\x8c\x1e\x9b\x9c\x06\x0b\x86\x41\x6d\x92\x7c\x18\x96\x8f\x05"
+"\x8d\x0b\x07\x45\x8a\x7b\x7c\x41\x1b\x79\xf7\xb2\x9d\x07\x41\x7b\x9a\xd1\x1f\x0b\x07\xb2\x0a\x0b\xa7\x1d\x79\x82\x90\x7c\x1b\x76"
+"\x7e\x7f\x78\x7b\x0b\xf7\x49\xf8\x63\x15\x47\x69\x80\x87\x41\x6d\x92\x7d\x18\x96\x8e\x05\x0b\xd2\x9b\x99\x6a\x1d\x0b\xb8\xb7\xc2"
+"\xc2\x5e\xb8\x54\x1f\x8c\x69\x15\xae\xa9\x6d\x67\x67\x0b\xf7\xdf\xf9\x38\x2c\x0a\x0e\x9f\x07\x6b\x8f\x89\x8b\x83\x90\x08\x85\x8e"
+"\x89\x93\xad\x1a\x0b\x48\x0a\x77\xb4\x9a\x87\xa4\x1b\xc2\x0b\xcb\x0a\x5a\x8c\x83\x9a\x0b\x79\x07\xa2\x8a\xc5\x89\x96\x7f\x8a\x52"
+"\x19\xfc\x8a\x04\x0b\xbd\xdd\xd8\x40\xbe\xfb\x06\x78\x0b\x07\xd1\x8c\x9b\x9a\xd5\x1b\x9d\x0b\xa5\x36\xe2\xfb\x78\xf7\x80\x18\x0b"
+"\x56\xc6\x64\xdb\xd9\xc4\xb2\xc0\xa2\x7c\x9a\x76\x1e\x0b\x1b\x7b\x78\xf7\xb8\x9e\x7a\x06\x55\x77\x9f\xc2\x1f\x0b\xf8\x2e\x16\x9b"
+"\x06\xf7\x80\xf8\xa7\x05\xfc\x40\x07\x0b\xb1\xa1\x98\x81\x6e\x9d\x1e\x71\x9b\x97\x81\x9c\x1b\x0b\xfb\x2c\xfb\x29\xfb\x51\xfb\x4e"
+"\xf7\x29\xfb\x2c\x0b\xf9\x31\x15\x7f\x06\xfb\x80\xfc\xb5\x63\x2d\x80\x0b\xfb\x14\xf7\xb2\x05\x3e\x06\xfb\x13\xfb\xb2\xc0\x0b\x07"
+"\x44\x8a\x7c\x7d\x40\x1b\x79\xf7\xb3\x07\x0b\x85\x88\x1e\x83\x86\x89\x8b\x6b\x87\x08\x77\x0b\x8a\x7e\x85\x8b\x87\x1b\x68\x82\x96"
+"\xb9\x1f\x0b\xda\x69\x1e\x7d\xad\xa6\x87\xd0\x1b\xf7\xac\x0b\x07\xf7\x0a\xb8\x64\xfb\x0f\xa1\x1f\x0e\x15\x38\x06\x61\xfb\x13\x98"
+"\x81\x05\x0e\xb2\xf7\x95\x15\x4c\xf7\x8a\xca\x07\x0e\x07\x89\x2f\x86\x82\x59\x88\x08\x79\x7a\x0b\x58\x88\x08\x7a\x7a\xf7\x76\x9c"
+"\x7b\x06\x0b\x1f\x29\x20\x05\x74\xf7\x91\x07\x0e", 48556
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusSans-Bold.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusSans-Bold.cff.cpp
new file mode 100644
index 0000000000..f0c89f2b2d
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusSans-Bold.cff.cpp
@@ -0,0 +1,1068 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusSans_Bold_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x10\x4e\x69\x6d\x62\x75\x73\x53\x61\x6e\x73\x2d\x42\x6f\x6c\x64\x00\x01\x01\x01\x31\xf9\xbc\x00"
+"\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x14\x04\xfb\x2f\x0c\x03\xd0\x0c\x04\xfb\x50\xfb\xc7\xfa\xc1\xfa\xc2\x05"
+"\x1c\x1f\x20\x0f\x1c\x1f\x33\x11\xc0\x1c\x79\x91\x12\x01\xa6\x02\x00\x01\x00\x08\x00\x0e\x00\x13\x00\x1d\x00\x24\x00\x2b\x00\x35"
+"\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00\x6e\x00\x74\x00\x7a\x00\x84\x00\x8b\x00\x8e\x00\x95\x00\x9c"
+"\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00\xe3\x00\xe7\x00\xf2\x00\xf4\x00\xfa\x01\x04\x01\x0b\x01\x12"
+"\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01\x59\x01\x5f\x01\x6b\x01\x6f\x01\x71\x01\x77\x01\x7d\x01\x89"
+"\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01\xd0\x01\xd2\x01\xd5\x01\xdb\x01\xe1\x01\xed\x01\xf0\x01\xf6"
+"\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02\x38\x02\x3e\x02\x4b\x02\x52\x02\x59\x02\x60\x02\x6f\x02\x7b"
+"\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02\xb9\x02\xbf\x02\xc9\x02\xcd\x02\xd3\x02\xda\x02\xe3\x02\xec"
+"\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03\x3d\x03\x46\x03\x4f\x03\x58\x03\x61\x03\x6a\x03\x73\x03\x7c"
+"\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03\xcd\x03\xd6\x03\xdf\x03\xe8\x03\xf1\x03\xfa\x04\x03\x04\x0c"
+"\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04\x5d\x04\x66\x04\x6f\x04\x78\x04\x81\x04\x8a\x04\x93\x04\x9c"
+"\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04\xed\x04\xf6\x04\xff\x05\x08\x05\x11\x05\x1a\x05\x23\x05\x2c"
+"\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05\x7d\x05\x86\x05\x8f\x05\x98\x05\xa1\x05\xaa\x05\xb3\x05\xbc"
+"\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06\x0d\x06\x16\x06\x1f\x06\x28\x06\x31\x06\x3a\x06\x43\x06\x4c"
+"\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06\x9a\x06\xa3\x06\xac\x06\xb5\x06\xbf\x06\xc6\x06\xcf\x06\xdb"
+"\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07\x1b\x07\x21\x07\x26\x07\x2d\x07\x3a\x07\x40\x07\x46\x07\x50"
+"\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07\x92\x07\x9a\x07\xa3\x07\xae\x07\xb4\x07\xb9\x07\xbe\x07\xc4"
+"\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08\x10\x08\x12\x08\x19\x08\x21\x08\x29\x08\x33\x08\x3d\x08\x49"
+"\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08\x9c\x08\xa8\x08\xb4\x08\xba\x08\xc0\x08\xc6\x08\xd2\x08\xd6"
+"\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09\x1c\x09\x22\x09\x2e\x09\x38\x09\x40\x09\x42\x09\x48\x09\x55"
+"\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09\xa4\x09\xa7\x09\xa9\x09\xb0\x09\xbc\x09\xca\x09\xcd\x09\xda"
+"\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e\x0a\x34\x0a\x39\x0a\x42\x0a\x47\x0a\x50\x0a\x53"
+"\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d\x0a\xa4\x0a\xab\x0a\xb2\x0a\xb9\x0a\xc0\x0a\xc7"
+"\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d\x0b\x14\x0b\x1b\x0b\x22\x0b\x29\x0b\x30\x0b\x37"
+"\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d\x0b\x84\x0b\x8b\x0b\x92\x0b\x99\x0b\xa0\x0b\xa7"
+"\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed\x0b\xf4\x0b\xfb\x0c\x02\x0c\x09\x0c\x10\x0c\x17"
+"\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d\x0c\x64\x0c\x73\x0c\x87\x0c\x93\x0c\x98\x0c\x9e"
+"\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5\x0c\xe9\x0d\x1f\x0d\x5f\x0d\x6f\x0d\x7a\x41\x45"
+"\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x41\x6d\x61\x63\x72\x6f"
+"\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x42\x65\x74\x61\x43\x61\x63\x75\x74\x65\x43\x63\x61\x72"
+"\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x43\x68\x69\x44\x63\x61\x72\x6f\x6e"
+"\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65\x45\x63\x61\x72\x6f\x6e\x45\x64\x6f\x74\x61\x63\x63\x65\x6e"
+"\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65\x6b\x45\x70\x73\x69\x6c\x6f\x6e\x45\x70\x73\x69\x6c\x6f\x6e"
+"\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45\x75\x72\x6f\x47\x61\x6d\x6d\x61\x47\x62\x72\x65\x76\x65\x47"
+"\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x47\x64\x6f\x74\x61\x63\x63\x65\x6e\x74"
+"\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a\x49\x62\x72\x65\x76\x65\x49\x64\x6f\x74\x61\x63\x63\x65\x6e"
+"\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f\x74\x61\x49\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x49"
+"\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x4b\x61\x70\x70\x61\x4b\x63"
+"\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c\x61\x6d\x62\x64\x61\x4c\x63\x61\x72\x6f\x6e\x4c\x63\x6f\x6d"
+"\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63\x75\x74\x65\x4e\x63\x61\x72\x6f\x6e\x4e\x63\x6f\x6d\x6d\x61"
+"\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x4f\x6d\x61\x63\x72"
+"\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72\x6f\x6e\x4f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x4f"
+"\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73\x69\x52\x61\x63\x75\x74\x65\x52\x63\x61\x72\x6f\x6e\x52\x63"
+"\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75\x74\x65\x53\x63\x65\x64\x69\x6c\x6c\x61\x53\x63\x69\x72\x63"
+"\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x53\x69\x67\x6d\x61\x54\x61\x75\x54\x62\x61\x72\x54\x63"
+"\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54\x68\x65\x74\x61\x55\x62\x72\x65\x76\x65\x55\x68\x75\x6e\x67"
+"\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f\x67\x6f\x6e\x65\x6b\x55\x70\x73\x69\x6c\x6f\x6e\x55\x70\x73"
+"\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x55\x72\x69\x6e\x67\x55\x74\x69"
+"\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x57\x64\x69\x65\x72\x65\x73\x69\x73\x57\x67\x72"
+"\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59\x67\x72\x61\x76\x65\x5a\x61\x63\x75\x74\x65\x5a\x64\x6f\x74"
+"\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61\x65\x61\x63\x75\x74\x65\x61\x66\x69\x69\x30\x30\x32\x30\x38"
+"\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31\x38\x61\x66\x69\x69\x31\x30\x30\x31\x39\x61\x66\x69\x69\x31"
+"\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69\x31\x30\x30\x32\x32\x61\x66\x69\x69\x31\x30\x30\x32\x33\x61"
+"\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35\x61\x66\x69\x69\x31\x30\x30\x32\x36\x61\x66\x69\x69\x31\x30"
+"\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31\x30\x30\x32\x39\x61\x66\x69\x69\x31\x30\x30\x33\x30\x61\x66"
+"\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61\x66\x69\x69\x31\x30\x30\x33\x33\x61\x66\x69\x69\x31\x30\x30"
+"\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30\x30\x33\x36\x61\x66\x69\x69\x31\x30\x30\x33\x37\x61\x66\x69"
+"\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66\x69\x69\x31\x30\x30\x34\x30\x61\x66\x69\x69\x31\x30\x30\x34"
+"\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30\x34\x33\x61\x66\x69\x69\x31\x30\x30\x34\x34\x61\x66\x69\x69"
+"\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69\x69\x31\x30\x30\x34\x37\x61\x66\x69\x69\x31\x30\x30\x34\x38"
+"\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35\x30\x61\x66\x69\x69\x31\x30\x30\x35\x31\x61\x66\x69\x69\x31"
+"\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69\x31\x30\x30\x35\x34\x61\x66\x69\x69\x31\x30\x30\x35\x35\x61"
+"\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37\x61\x66\x69\x69\x31\x30\x30\x35\x38\x61\x66\x69\x69\x31\x30"
+"\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31\x30\x30\x36\x31\x61\x66\x69\x69\x31\x30\x30\x36\x32\x61\x66"
+"\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61\x66\x69\x69\x31\x30\x30\x36\x37\x61\x66\x69\x69\x31\x30\x30"
+"\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30\x30\x37\x30\x61\x66\x69\x69\x31\x30\x30\x37\x31\x61\x66\x69"
+"\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66\x69\x69\x31\x30\x30\x37\x34\x61\x66\x69\x69\x31\x30\x30\x37"
+"\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30\x37\x37\x61\x66\x69\x69\x31\x30\x30\x37\x38\x61\x66\x69\x69"
+"\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69\x69\x31\x30\x30\x38\x31\x61\x66\x69\x69\x31\x30\x30\x38\x32"
+"\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38\x34\x61\x66\x69\x69\x31\x30\x30\x38\x35\x61\x66\x69\x69\x31"
+"\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69\x31\x30\x30\x38\x38\x61\x66\x69\x69\x31\x30\x30\x38\x39\x61"
+"\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31\x61\x66\x69\x69\x31\x30\x30\x39\x32\x61\x66\x69\x69\x31\x30"
+"\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31\x30\x30\x39\x35\x61\x66\x69\x69\x31\x30\x30\x39\x36\x61\x66"
+"\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61\x66\x69\x69\x31\x30\x30\x39\x39\x61\x66\x69\x69\x31\x30\x31"
+"\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30\x31\x30\x32\x61\x66\x69\x69\x31\x30\x31\x30\x33\x61\x66\x69"
+"\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66\x69\x69\x31\x30\x31\x30\x36\x61\x66\x69\x69\x31\x30\x31\x30"
+"\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31\x30\x39\x61\x66\x69\x69\x31\x30\x31\x31\x30\x61\x66\x69\x69"
+"\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69\x69\x31\x30\x38\x34\x36\x61\x66\x69\x69\x36\x31\x32\x34\x38"
+"\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35\x32\x61\x6c\x70\x68\x61\x61\x6c\x70\x68\x61\x74\x6f\x6e\x6f"
+"\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x61\x6e\x67\x6c\x65\x72\x69\x67\x68\x74\x61\x6f\x67\x6f\x6e"
+"\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x61\x72\x72\x6f\x77\x62\x6f\x74\x68"
+"\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x72\x69\x67\x68\x74\x61\x72\x72\x6f"
+"\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x62\x73\x65\x62\x65\x74\x61\x63\x61\x63\x75"
+"\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x63\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x63\x68\x69"
+"\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75\x62\x64\x63\x61\x72\x6f\x6e\x64\x63\x72\x6f\x61\x74\x64\x65"
+"\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x65\x62\x72\x65\x76\x65\x65\x63\x61"
+"\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d\x65\x6e\x74\x65\x6d\x61\x63\x72\x6f\x6e\x65\x6e\x67\x65\x6f"
+"\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x65\x71\x75\x69\x76\x61\x6c\x65"
+"\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74\x61\x74\x6f\x6e\x6f\x73\x65\x78\x63\x6c\x61\x6d\x64\x62\x6c"
+"\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65\x66\x72\x61\x6e\x63\x67\x61\x6d\x6d\x61\x67\x62\x72\x65\x76"
+"\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x67\x64\x6f\x74\x61\x63\x63\x65"
+"\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61\x72\x68\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x68\x65\x61"
+"\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d\x61\x63\x72\x6f\x6e\x69\x6e\x66\x69\x6e\x69\x74\x79\x69\x6e"
+"\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69\x6e\x74\x65\x67\x72\x61\x6c\x74\x70\x69\x6e\x74\x65\x72\x73"
+"\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x69\x6f\x67\x6f\x6e\x65\x6b\x69\x6f\x74\x61\x69\x6f\x74"
+"\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x69\x6f\x74\x61\x74\x6f"
+"\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x6b\x61\x70\x70\x61\x6b\x63\x6f\x6d\x6d\x61\x61"
+"\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63\x6c\x61\x63\x75\x74\x65\x6c\x61\x6d\x62\x64\x61\x6c\x63\x61"
+"\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64\x6f\x74\x6c\x65\x73\x73\x65\x71\x75\x61\x6c\x6c\x69\x72\x61"
+"\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x6d\x75\x73\x69\x63\x61"
+"\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70\x6f\x73\x74\x72\x6f\x70\x68\x65\x6e\x63\x61\x72\x6f\x6e\x6e"
+"\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x6e\x6f\x74\x65\x71\x75\x61\x6c\x6e\x75\x6f"
+"\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x6f\x6d\x61\x63\x72\x6f\x6e\x6f\x6d\x65\x67\x61\x6f\x6d"
+"\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x6f\x72\x74\x68\x6f"
+"\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70\x61\x72\x74\x69\x61\x6c\x64\x69\x66\x66\x70\x65\x73\x65\x74"
+"\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62\x73\x65\x74\x70\x72\x6f\x70\x65\x72\x73"
+"\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65\x76\x65\x72\x73\x65\x64\x72\x61\x63\x75\x74\x65\x72\x61\x64"
+"\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x72\x65\x76\x6c\x6f\x67\x69\x63\x61\x6c"
+"\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69\x6c\x6c\x61\x73\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x73"
+"\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64\x73\x69\x67\x6d\x61\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x73"
+"\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74\x61\x75\x74\x62\x61\x72\x74\x63\x61\x72\x6f\x6e\x74\x63\x6f"
+"\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e\x6f\x73\x75\x62\x72\x65\x76\x65\x75\x68\x75\x6e\x67\x61\x72"
+"\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65\x72\x73\x63\x6f\x72\x65\x64\x62\x6c\x75\x6e\x69\x30\x30\x41"
+"\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e\x69\x30\x32\x31\x42\x75\x6e\x69\x30\x32\x43\x39\x75\x6e\x69"
+"\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41\x39\x75\x6e\x69\x30\x33\x42\x43\x75\x6e\x69\x30\x33\x43\x32"
+"\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69\x30\x34\x35\x30\x75\x6e\x69\x30\x34\x35\x44\x75\x6e\x69\x30"
+"\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36\x75\x6e\x69\x30\x34\x39\x37\x75\x6e\x69\x30\x34\x39\x38\x75"
+"\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30\x34\x39\x42\x75\x6e\x69\x30\x34\x39\x43\x75\x6e\x69\x30\x34"
+"\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75\x6e\x69\x30\x34\x41\x32\x75\x6e\x69\x30\x34\x41\x33\x75\x6e"
+"\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34\x41\x45\x75\x6e\x69\x30\x34\x41\x46\x75\x6e\x69\x30\x34\x42"
+"\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e\x69\x30\x34\x42\x33\x75\x6e\x69\x30\x34\x42\x36\x75\x6e\x69"
+"\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42\x39\x75\x6e\x69\x30\x34\x42\x41\x75\x6e\x69\x30\x34\x42\x42"
+"\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69\x30\x34\x43\x43\x75\x6e\x69\x30\x34\x44\x38\x75\x6e\x69\x30"
+"\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38\x75\x6e\x69\x30\x34\x45\x39\x75\x6e\x69\x30\x34\x45\x45\x75"
+"\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32\x30\x41\x46\x75\x6e\x69\x32\x31\x32\x36\x75\x6e\x69\x32\x32"
+"\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75\x6e\x69\x32\x32\x32\x38\x75\x6e\x69\x32\x32\x39\x35\x75\x6e"
+"\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x75\x6f\x67\x6f\x6e\x65\x6b\x75\x70\x73\x69\x6c\x6f"
+"\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x74"
+"\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75\x72\x69\x6e\x67\x75\x74\x69\x6c\x64\x65\x77\x61\x63\x75\x74"
+"\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72\x65\x73\x69\x73\x77\x67\x72\x61\x76\x65\x78\x69\x79\x63\x69"
+"\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63\x75\x74\x65\x7a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x7a\x65"
+"\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20"
+"\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x43\x6f\x70\x79"
+"\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20"
+"\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x4e\x69\x6d\x62"
+"\x75\x73\x20\x53\x61\x6e\x73\x20\x42\x6f\x6c\x64\x4e\x69\x6d\x62\x75\x73\x20\x53\x61\x6e\x73\x00\xa6\x02\x00\x01\x00\x0c\x00\x19"
+"\x00\x31\x00\x36\x00\x3a\x00\x43\x00\x8e\x00\xe0\x00\xfa\x00\xff\x01\x23\x01\x27\x01\x4d\x01\x54\x01\x59\x01\x5e\x01\x66\x01\x6c"
+"\x01\x72\x01\x7a\x01\xe6\x02\x40\x02\x5a\x02\x66\x02\x72\x02\x7b\x02\x80\x02\xe4\x03\x25\x03\x44\x03\x60\x03\x80\x03\x87\x03\x8b"
+"\x03\x90\x03\x94\x03\x9b\x03\xa4\x03\xb2\x03\xbb\x03\xc2\x03\xc8\x03\xce\x03\xd3\x03\xf9\x04\x0e\x04\x18\x04\x28\x04\x3b\x04\x49"
+"\x04\x5a\x04\x67\x04\x87\x04\xa0\x04\xa4\x04\xa8\x04\xab\x04\xb3\x04\xc2\x04\xcf\x04\xd7\x04\xdf\x04\xe7\x04\xf3\x04\xf9\x05\x04"
+"\x05\x0f\x05\x16\x05\x1f\x05\x25\x05\x2b\x05\x4d\x05\x54\x05\xb3\x05\xb8\x05\xc0\x06\x06\x06\x3b\x06\x77\x06\xb1\x06\xe9\x07\x16"
+"\x07\x47\x07\x77\x07\x7b\x07\xa7\x07\xc2\x07\xc7\x07\xf1\x08\x1b\x08\x46\x08\x4c\x08\x67\x08\x73\x08\x9b\x08\xb7\x08\xbb\x08\xc4"
+"\x08\xdc\x08\xfb\x09\x00\x09\x1e\x09\x27\x09\x3f\x09\x5c\x09\x6c\x09\x88\x09\x9f\x09\xb9\x09\xd3\x09\xd6\x09\xef\x0a\x07\x0a\x17"
+"\x0a\x2e\x0a\x42\x0a\x57\x0a\x6c\x0a\x81\x0a\x94\x0a\xa8\x0a\xbc\x0a\xd0\x0a\xdd\x0a\xf0\x0b\x03\x0b\x15\x0b\x27\x0b\x39\x0b\x49"
+"\x0b\x53\x0b\x60\x0b\x70\x0b\x7f\x0b\x88\x0b\x96\x0b\xa1\x0b\xaf\x0b\xb9\x0b\xc5\x0b\xd2\x0b\xdf\x0b\xe4\x0b\xf1\x0b\xfd\x0c\x07"
+"\x0c\x12\x0c\x1d\x0c\x28\x0c\x33\x0c\x36\x0c\x3d\x0c\x47\x0c\x51\x0c\x5b\x0c\x65\x0c\x6f\x0c\x77\x0c\x80\x0c\x89\x0c\x92\x0c\x9b"
+"\x0c\xa4\x0c\xad\x0c\xb3\x0c\xb9\x15\xfb\x12\x06\x45\xfb\x2a\x05\xd1\x06\x0e\x15\xf7\x12\xfb\x2a\x05\xd1\x06\x45\xf7\x2a\x05\x0e"
+"\x15\xfb\x04\xce\x07\x8c\x59\x75\x6d\x5d\x82\x08\x5d\x07\xd1\x8d\xc2\xcb\x88\xd9\x08\xf2\x07\x0e\x15\x25\x27\xb1\x1d\xf8\xb0\x15"
+"\x0b\x45\x1d\xf7\x4e\xf7\x0e\x45\x1d\x0e\xf8\xa0\x9c\x15\x73\xa2\x83\x9b\xa6\x1a\xf7\xc0\x07\xf7\x02\x40\xc3\xfb\x26\xfb\x26\x3f"
+"\x4d\xfb\x11\x82\x1e\xf7\x1b\x06\xc3\x92\xa2\x9d\xd0\x1b\xc1\xa6\x79\x67\x79\x82\x7c\x7c\x82\x62\x1d\x20\x79\x57\x54\x2a\x1a\x2a"
+"\xcc\x4a\xee\xc7\xc1\xa4\xbf\xbd\x1e\x6f\x8e\x81\x98\x7b\x1e\xf7\x2c\x06\x88\x1d\x0b\xf8\xa0\xf7\x76\x15\x8c\x97\x8b\x90\x92\x1a"
+"\xc1\x83\xbd\x7e\xb1\x1e\xed\x67\x34\xc6\xfb\x01\x1b\xfb\x2f\x2c\xfb\x04\xfb\x49\xfb\x41\xe9\x21\xf7\x2d\xf7\x0d\xed\xcf\xf6\xaa"
+"\x1f\xfb\x1e\x06\x60\x7a\x64\x72\x58\x1b\x63\x6b\x9c\xa9\x77\x1f\x7e\x9f\x86\xa3\x89\xbe\x08\x8d\xe8\x15\xde\x94\xae\xb3\xc9\x1b"
+"\xcb\xb1\x60\x3b\x92\x1f\x0b\xf7\xc1\x54\x1d\x8c\xfb\x05\x15\xd8\xbd\x46\x21\x26\x57\x45\x40\x3f\x58\xd0\xf3\xf3\xbe\xd0\xd7\x1f"
+"\x0b\xf7\x69\x31\x1d\x0b\xf8\x37\xf7\xa2\x15\xf7\x7b\xf8\x5f\x05\xfb\x3c\x06\xfb\x1f\xfb\xd6\xfb\x29\xf7\xd6\x05\xfb\x3b\x06\xf7"
+"\x86\xfc\x5f\x05\xfb\xa2\xf7\x2a\x07\x0b\x15\x20\x52\x1d\x15\x58\x63\x64\x58\x59\xb3\x63\xbd\xbc\xb4\xb3\xbc\xbf\x64\xb2\x59\x1f"
+"\x5b\x04\xa2\x9d\x79\x73\x74\x78\x78\x75\x73\x78\x9e\xa2\xa3\x9e\x9d\xa3\x1f\x0b\xfb\x20\xfc\xb0\xf7\x20\x0b\xf7\x2a\xf7\xdf\x0b"
+"\xf9\x5f\x46\x1d\x0b\xf7\x63\x24\x1d\x2d\x1d\x06\x0b\x5c\x1d\xf7\x2a\x06\x0b\xfd\x6d\xf7\x2a\x06\x0b\xfb\x2a\xfb\x26\xf7\x2a\x06"
+"\x0b\xf8\x8d\xf8\x02\x15\xf7\x06\x89\x33\xd0\xfb\x25\x1b\xfb\x1d\x36\x46\xfb\x03\x67\x96\x6c\x9e\x76\x1f\x9e\x78\x9c\x82\xbf\x7a"
+"\xf7\x3b\x57\x18\xae\x80\x97\x80\x75\x1a\x6a\x64\x77\x4a\x66\x6f\x91\x98\x79\x1e\x7c\x96\x85\x96\x85\xa8\x08\xfb\x1d\x06\xfb\x0b"
+"\x8f\xe2\x4e\xf7\x38\x1b\xd6\xc4\x9b\xab\xb3\x1f\xb3\xab\xa3\xbd\xc0\x1a\xd1\x68\xb8\x44\xa0\x1e\xfb\x45\xbe\x05\x64\x97\x81\x93"
+"\xa1\x1a\xa9\xab\x9f\xbc\xce\xac\x73\x5a\x8c\x1e\x0b\xf9\x5b\xf8\x1c\x15\xfb\xb8\xfb\x11\xf7\x3a\x06\x87\x62\x81\x72\x75\x71\x08"
+"\x5f\x67\x53\x71\x52\x1b\xfb\x0e\x35\xf5\xf7\x2a\xf7\x31\xd7\xea\xf7\x14\xbf\xb7\x7c\x6e\xac\x1f\xa0\x79\x96\x7a\x98\x65\x08\xf7"
+"\x21\x06\xf7\x2b\x79\xfb\x0e\xe9\xfb\x44\x1b\xfb\x66\xfb\x23\xfb\x2f\xfb\x77\xfb\x71\xf7\x24\xfb\x35\xf7\x59\xed\xcd\xae\xdd\xc3"
+"\x1f\x9d\x2b\x05\xe5\x06\x0b\xf8\x9e\xf7\xe6\x15\xf7\x18\x81\x34\xda\xfb\x1c\x1b\xfb\x36\x2e\x21\xfb\x4c\xfb\x46\xe8\x23\x7c\x1d"
+"\x0b\xca\x9a\x1d\xfb\xe1\xf7\x20\xf7\xfe\x89\x1d\x0b\xf7\x7a\x5c\x1d\xf8\x87\xf7\x11\xfb\xf1\x06\x0b\x15\x2d\x1d\x06\xf9\x6d\xbf"
+"\x1d\x0b\xf8\x3f\xfb\x20\x0b\xf7\x7a\xf7\xb5\x15\xf7\x40\x06\xcc\xa7\x71\x4f\x1f\x6d\x07\x8a\x78\x8b\x79\x80\x1a\x46\x8f\x76\x9d"
+"\x68\x1e\xf7\x35\xa6\x06\x74\x98\x82\x9a\xab\x1a\x87\xf7\x6b\x87\x95\x2e\xb3\x08\xdd\xab\xb4\xc6\xe4\x1a\xc5\x77\xc0\x68\xaf\x1e"
+"\xad\x6a\x5d\x9b\x4d\x1b\xfc\x1b\x32\x1d\xf8\x32\x04\xf7\x52\xf7\x49\x07\xb6\x9c\x87\x7c\x9e\x1f\x9d\x7c\x94\x72\x69\x1a\x68\x82"
+"\x6f\x79\x7c\x1e\x7d\x7a\x78\x86\x60\x1b\x0b\xf7\x52\x24\x1d\xfb\x20\xfb\xdc\x06\x35\x9b\x56\xaf\x67\x1e\x63\xb3\xcc\x77\xe1\x1b"
+"\xe5\xcf\xa2\xb9\xb2\x1f\xaa\xaf\x97\xb8\xe0\x1a\xf7\xdc\xfb\x20\xfb\xd6\x07\x54\x85\x74\x79\x77\x1e\x78\x79\x6f\x80\x6c\x1b\x6c"
+"\x6e\x96\x9d\x7a\x1f\x78\x9f\x85\xa1\xc4\x1a\x0b\xca\x24\x1d\xfc\xb0\xf7\x20\xf7\xb3\x07\xdd\xb4\xb4\xdd\x9a\x95\xb9\x1d\x88\x8b"
+"\x85\x1b\x4b\x54\x61\x42\x6c\x1f\xf5\x07\x0b\xcc\x16\xf7\x2a\xe4\x06\xf7\xb5\xf7\xfa\x05\xfc\x53\x48\x1d\x30\x07\xfb\xb5\xfb\xfc"
+"\x05\xf8\x57\xfb\x2a\x07\x0b\xd1\x16\xf7\x20\xd2\x06\xf7\x57\xf7\x92\x05\xfb\xd9\xf7\x20\xf8\xb0\xfb\x20\x44\x07\xfb\x57\xfb\x92"
+"\x05\xf7\xd9\xfb\x20\x07\x0b\xf7\xcd\xf8\xa5\x67\x1d\x0b\xf9\x7b\x25\x1d\xf8\x15\x9d\x1d\x0b\xf9\x89\x20\x1d\xf7\x63\xf9\x6d\x64"
+"\x1d\x0b\x15\xfb\x02\xfb\x0e\xf7\x02\x06\x0b\x15\xfc\x3b\xfd\x73\x05\xe2\x06\xf8\x3b\xf9\x73\x05\x0b\xec\x05\x3d\x06\xf2\xfb\x2a"
+"\x05\x0e\xf7\x2a\xf9\x6d\xfb\x2a\x0b\x7f\x89\x86\x7c\x1f\x0b\x15\xd2\xba\x47\x23\x0b\xe5\xfb\x83\x05\x0b\xf7\xc1\xf8\xa5\x15\xb5"
+"\x1d\xfb\xe0\x06\x36\xb8\x61\xe7\xab\xa2\x8e\x93\xa5\x1e\xed\x07\x89\x7d\x84\x8a\x80\x1b\x66\x82\x96\xbb\x1f\xf7\xba\xd9\x07\x0b"
+"\x1f\x43\xa4\x05\x98\x67\x8a\x8b\x79\x1b\x53\x68\x5d\x3d\x87\x1f\xca\x06\xab\x90\x0b\x99\x1d\xf8\xb5\xf7\x11\xfc\x1f\x06\x0b\x63"
+"\x1d\xd8\x06\xdd\xef\xdd\x27\x05\xd8\x06\x24\xf7\x2a\x05\x0e\x15\xd8\xbd\x46\x21\x26\x57\x45\x40\x3f\x58\xd0\xf3\xf3\xbe\xd0\xd7"
+"\x1f\x0e\x68\x5d\x3d\x87\x1f\xca\x06\xab\x90\x96\x98\xa3\x1b\x0b\xfb\x2a\x05\xd7\x06\xdd\xef\xdd\x27\x05\xd9\x06\x24\xf7\x2a\x05"
+"\x0e\xf7\x1e\xf0\xea\xf7\x17\xf7\x17\x27\xea\x59\x1d\x0b\xf8\xb9\x15\xfb\x39\x26\xfb\x01\xfb\x45\xfb\x46\xf0\xfb\x00\xf7\x3a\xf7"
+"\x39\xf1\xf7\x00\xf7\x42\xf7\x4b\x28\xf6\xfb\x3d\x1f\x0b\xf7\xdf\x15\xfb\xdf\xf7\x2a\xf9\x6d\xfb\x2b\xfb\xa5\xfb\xb4\xf7\xa5\xfb"
+"\x2a\xfd\x6d\x2e\x1d\x07\x0b\x77\x95\x1d\x0b\xb4\x1d\x6f\x0b\xbf\x1d\x0e\xfb\x1f\x1f\xfb\x34\xf7\xa9\x0b\x46\x1e\x47\xca\xdd\x6a"
+"\xf3\x1b\xf3\xdd\xac\xcf\xca\x1f\x0b\xa9\x9b\xaa\x9b\xb3\x1b\xc4\xa6\x70\x44\x9b\x1f\x0b\xf9\x6d\x15\xfb\x2a\xfd\x6d\x0b\x15\xfb"
+"\xbf\x3c\xf7\xbf\x06\x0b\xfb\x1a\x06\x45\x7a\x6f\x70\x0b\x1f\xd2\x71\x05\x83\xa0\x9e\x87\x9a\x1b\xc6\x0b\xf8\xf0\xfb\x2a\x06\x0e"
+"\x15\xb3\xa0\x9b\xa3\xb5\x1a\xcd\x51\xbc\x0b\x1f\x78\x81\x8b\x8b\x46\x80\x53\x81\x18\x0b\x15\xfb\x00\xfb\x2a\x05\x0b\x15\xfb\x20"
+"\xfd\x6d\xf7\x20\x06\x0b\x26\xfb\x00\xfb\x46\x0b\xf7\x20\xf7\xae\x06\x0b\x15\x38\xc0\x06\xa7\x97\x99\xa5\x98\xc1\x1d\x6d\x6e\x8c"
+"\x76\x1b\x2e\x5e\x5f\x30\x1f\x4a\x3f\x2e\xd7\xfc\x48\xf7\x20\xf8\x48\xde\x07\x0b\xf8\x24\xf8\xb0\x69\x1d\x0b\x15\x38\x07\xca\x64"
+"\x60\xa8\x52\x1b\x5b\x56\x73\x64\x66\x1f\x55\x53\x6f\x3d\x2c\x1a\xfb\x3a\xe3\xfb\x06\xf7\x15\xc5\xae\x9e\xc6\xbc\x1e\x42\x07\x4a"
+"\x5d\x5e\x49\x59\x6c\xa1\xb4\x80\x1e\xfb\x24\x06\x8c\x61\x9a\x6e\xb0\x6d\x08\x68\xb6\xc6\x7a\xd7\x1b\xf7\x30\xe9\xd6\xf7\x11\x1f"
+"\xf8\xc2\x07\xfb\x8a\xfb\x00\x15\xcd\xbc\x42\x27\x29\x5c\x48\x45\x4e\x60\xce\xed\xf1\xb6\xd2\xca\x1f\x0b\x6b\x1d\xf7\x77\x0b\x40"
+"\x1d\xf7\xe1\xe8\x67\x1d\x0b\x15\x25\x37\x69\x48\x4d\x1f\x4a\x45\x66\x25\xfb\x01\x1a\xfb\x01\xb0\x24\xcc\x5a\x1d\xca\xce\xb2\xf5"
+"\xf2\x1a\xf7\x06\x66\xf2\x4a\xd0\x1e\xd0\x4b\x3b\xab\x21\x1b\x8c\xfb\x14\x15\xf7\x0f\xd9\x27\xfb\x32\xfb\x2a\x3a\x27\xfb\x0c\xfb"
+"\x0e\x3c\xef\xf7\x2e\xf7\x2e\xda\xef\xf7\x0e\x1f\x0b\x16\xf7\x20\xf9\x6d\xfb\x20\xfb\x97\x06\xc1\x68\x5d\xa4\x47\x1b\xfb\x15\x29"
+"\xfb\x10\xfb\x37\x42\xa1\x41\xaf\x57\x1f\x56\xb0\xcd\x6a\xcd\x1b\xcf\xb9\xa3\xc1\xae\x1f\xfb\x0a\xf8\x0d\xa8\x1d\xf0\xbb\xd0\xd1"
+"\x1f\x0b\xd8\x16\xf7\xb1\x06\xf7\x03\xd1\xa5\xc6\xbd\x1f\xc4\xcf\xaa\xed\xf7\x06\x1a\xf7\x05\x6c\xed\x52\xd0\x1e\xc6\x59\x46\xa4"
+"\xfb\x04\x1b\xfb\xb1\x06\xf7\x2a\xfc\xf0\x15\xf8\x73\xf7\x1b\x07\xf7\x05\xc3\x3c\xfb\x35\xfb\x34\x53\x3c\xfb\x05\x1f\x0b\xf8\x42"
+"\xf7\x2c\x15\xfb\x2c\xf8\xac\xf7\x11\xfc\x16\xf7\x51\xf7\xe7\xf7\x11\xfb\xe7\xf7\x39\xf8\x02\xf7\x11\xfd\x3e\x07\xfb\x9b\xfd\x6d"
+"\x05\xf7\x2d\x06\xc0\xf7\x2c\x05\xf7\x73\xf7\x11\x15\xfb\x49\x06\xf7\x06\xf7\xdb\x05\xce\x06\x0b\xb0\x79\x1b\x82\x84\x83\x81\x83"
+"\x8e\x88\x9c\x7c\x1f\xba\x63\xad\x5f\xb4\x42\x08\x77\x96\x91\x84\x92\x1b\x93\x90\x8f\x93\x90\x1f\xc6\xf0\xa1\xa7\xc7\xbd\x08\x94"
+"\x93\x8d\x8f\x92\x1a\x95\x84\x93\x82\x85\x6a\x7f\x83\x7b\x1e\x0b\x61\x1d\x3c\x3c\x51\x5a\x49\x62\x9c\x71\xb2\x77\x1e\x5a\x70\x76"
+"\x6b\x59\x1a\x3a\xc9\x53\xe4\xe4\xc9\xc3\xdc\xbd\x76\xab\x5a\xa6\x1e\x3b\xf7\x1a\x15\xb0\xa5\x75\x6a\x6a\x71\x74\x0b\x85\xda\x82"
+"\xe8\x1e\x87\xb5\x89\xa0\x98\x1a\x9d\x91\x95\x97\x91\x8d\x8a\x80\x96\x1e\x81\x95\x97\x86\x98\x1b\xa6\xa0\xa1\xa7\xa9\x6f\xa3\x68"
+"\x60\x6c\x6c\x51\x7d\x1f\x7b\x4b\x86\x46\xfb\x45\x1a\x0b\xbe\x16\xf7\x23\x06\xce\x8c\xbd\xab\xa9\xc7\xf7\xb0\xf9\x10\x18\xfb\x2f"
+"\x06\xfb\x2e\xfc\x05\xfb\x2f\xf8\x05\x05\xfb\x2f\x06\xf7\x7d\xfc\x9e\x78\x63\x7d\x67\x89\x89\x73\x87\x19\xfb\x15\x06\x0b\xf7\x76"
+"\x76\x1d\xf7\xa4\x15\xf7\x44\xf7\xa0\x05\xfb\x3c\x06\x34\xfb\x37\x33\xf7\x37\x05\xfb\x3c\x06\xf7\x44\xfb\xa0\xfb\x48\xfb\xa4\x05"
+"\xf7\x3c\x06\xe7\xf7\x3c\xe6\xfb\x3c\x05\xf7\x3c\x06\x0e\xf7\x98\x15\xf7\x4f\x06\xf7\x1a\xe1\xea\xf7\x28\xf7\x26\x38\xdb\xfb\x2c"
+"\x1f\xfb\xd6\x32\x1d\xf8\x15\xa1\x1d\xf7\xe4\x7a\x1d\x0b\x15\xfb\x04\xfc\x1d\xfb\x0b\xf8\x1d\x05\xfb\x2e\x06\xf7\x5d\xfc\xc6\x81"
+"\x44\x74\x7c\x30\x8e\x19\xfb\x05\x07\xe7\x98\x8c\x92\xa7\x1f\xc0\x9e\x9f\xa1\xa3\xd1\xc5\x1d\x0b\xf7\x74\xf7\x88\x15\xd6\xd9\xf7"
+"\x83\xfb\xd6\x05\xf7\x47\x06\xfb\xd6\xf8\x33\xf7\xb7\xf7\xce\x05\xfb\x45\x06\xfb\xb1\xfb\xd4\x05\xf7\xd4\xfb\x2a\xfd\x6d\xf7\x2a"
+"\x07\x0e\xf9\x6d\x15\xfc\xaf\x07\x54\x6e\x6d\x57\x52\x73\xa7\xce\x1e\xd1\xfb\x2a\x43\x07\x3f\x9d\x5c\xb6\x63\x1e\x65\xb5\xc3\x77"
+"\xd0\x1b\xf7\x29\xe0\xd8\xf7\x1c\x1f\xf8\xaf\x07\x0b\x83\x1d\xf9\xcb\x58\x1d\xf7\x34\xf7\x17\xe6\xdc\xf7\x15\x98\x1f\x5e\x1d\x53"
+"\x1b\x44\x61\xca\xf5\xbf\x95\xba\x9c\xab\x1f\x5b\x1d\x0b\xcd\x9a\x1d\xfc\xbb\xf7\x20\xf8\xd8\x89\x1d\x0b\x06\xf7\x2a\xfb\x11\x15"
+"\xf7\x37\x06\xd1\xaf\x6f\x55\x54\x67\x6f\x45\x1f\xfb\x37\x06\xfb\x11\x04\xf7\x47\x06\xd4\xb1\x6b\x4c\x4d\x65\x6b\x42\x1f\xfb\x47"
+"\x06\x0e\xf7\x5b\xf7\xde\x15\xf8\x23\xfb\x20\xfd\x6d\xf7\x20\xf7\x45\x07\xc3\xc8\xf7\x15\xfb\x82\x05\xf7\x38\xa7\x1d\x0b\xf9\x7b"
+"\x82\x1d\x57\x1d\x75\x91\xa3\x55\x9c\x1d\x0b\x15\x2a\xfb\x0e\xec\x06\xf7\x5b\xf7\x0e\x15\x2a\xfb\x0e\xec\x06\x2a\xf7\xa0\x15\x25"
+"\x31\xb1\x1d\x15\xfb\x20\xfc\xef\x06\x6c\x80\x80\x6d\x82\x84\x8c\x8e\x82\x1e\xfb\x04\x07\x88\xa6\xad\x89\xa1\x1b\xe2\xaf\xaf\xe3"
+"\x1f\x0b\xf8\x8f\x55\x1d\x0e\xfc\x82\x07\x33\x5e\x61\x2d\x2d\x5e\xb5\xe3\x1e\xf8\x82\xfb\x2a\xfc\x82\x07\x39\xa1\x51\xbc\x5f\x1e"
+"\x5b\xc0\xd8\x71\x0b\x15\x53\x06\x5d\x83\x74\x56\x1d\x0e\xf9\x6a\x15\xfb\x2a\xfb\x66\x06\xb4\xfb\xc9\x05\xce\x06\xb5\xf7\xc9\x05"
+"\xfc\x06\x04\x33\x1d\x0b\xfb\x3d\xf7\x6d\x15\x3a\x63\x5d\x44\x5c\x6e\xa4\xb3\xb5\xa1\x9f\xc5\x97\x1e\xbb\x94\xb0\x92\x91\x8d\x9b"
+"\x93\x19\x0b\x07\xf7\x0c\x4a\xce\xfb\x08\x42\x5a\x71\x4e\x63\x1e\xd9\x07\x0b\x07\x93\x79\x7a\x8e\x79\x1b\x4a\x52\x55\x4e\x65\xa6"
+"\x74\xb7\xba\xb9\xa3\xb3\xa7\x1f\xa0\xa8\x93\xa9\xbc\x1a\x0b\x6e\x4f\x69\x1f\xf7\x0a\x6f\x4a\x1d\x29\x5b\x47\x45\x44\x5c\xcf\xef"
+"\xf1\xba\xcf\xd2\x1f\x0e\x06\xfb\x97\xfd\x6d\x05\xf7\x2d\x06\xbc\xf7\x27\x05\xf7\x7c\xf7\x11\x15\xfb\x52\x06\xea\xf7\xb1\x05\x0b"
+"\x1b\x57\x6b\x9f\xab\x1f\xf7\x71\xfb\x20\xfb\x71\x07\x57\x96\x66\xa1\x71\x1e\x6c\xa8\xc0\x78\xc9\x1b\x0b\x90\x1d\x0e\xf7\x6e\x15"
+"\xf7\x3b\xfb\x26\x05\xf7\x06\x07\x26\xe4\xf0\xe4\x05\xf7\x09\x07\xfb\x3b\xfb\x29\x05\x0b\xfb\x11\xdb\x07\x8d\x59\x71\x6e\x53\x81"
+"\x08\x5d\x07\xe3\x93\xbe\xc3\x87\xe2\x08\xf7\x01\x07\x0b\xb8\x1d\x31\xb4\xfb\x01\x1b\xfb\x62\xfb\x14\xfb\x27\xfb\x80\x0b\x39\xce"
+"\x49\xde\xdc\xcf\xcd\xdb\xdf\x49\xcd\x37\x1f\x3b\x04\xb3\xaa\x6c\x64\x65\x6b\x6c\x0b\x15\xf7\x00\xf7\x2a\x05\x3e\x06\x39\x2a\x39"
+"\xec\x05\x3e\x06\xf2\xfb\x2a\x05\x0e\x06\x30\xf7\xa5\x05\xfb\x2c\x06\xf7\x07\xfb\xe5\xfb\x32\xfc\x1c\x05\xf7\x32\x06\x0b\x5f\x1b"
+"\x5d\x72\xa0\xb8\x85\x1f\x53\x81\x06\x3f\xc3\x52\xd7\xd6\xc4\xc4\xd6\x1e\x0b\xf7\x50\xf9\x6d\x15\xfb\x1e\xfb\x16\x06\xb3\xfb\x15"
+"\x05\xc3\x06\xb5\xf7\x15\x05\x0b\x07\xf8\x7d\xfb\x4a\x05\xf7\x03\x07\xfc\x12\xf7\x17\xf8\x12\xf7\x19\x05\x0e\xd9\x2d\xfb\x25\x3f"
+"\x78\x48\x69\x5e\x1e\x77\x71\x76\x7a\x56\x69\x08\xfb\x11\x0b\xf7\xce\x15\xf7\xf1\xf7\x11\xfb\xf1\xf7\x39\xf8\x0d\xf7\x11\xfc\xa3"
+"\xfd\x6d\x0b\xf8\xb0\x15\xfc\xb0\xf7\x20\xf7\xd8\x07\xcb\xb7\xb5\xd0\xc7\xa9\x6a\x4b\x1e\x0b\xc0\x1d\xfb\x0d\x04\xfc\x78\xfb\x0b"
+"\xf8\x78\x06\x0b\x1f\x78\x57\x05\x75\xcc\xa8\x85\xb8\x1b\xde\xb8\xac\xc7\xb7\x6e\xa6\x5c\x0b\xf8\xf0\x15\xf7\x69\xf7\x11\xfc\xdc"
+"\xfb\x11\xf7\x71\xfc\xf0\xf7\x2a\x06\x0b\xf7\xaf\x06\xf5\xd9\xd4\xef\xee\x41\xcf\xfb\x02\x1f\xfb\x23\xf7\x5c\x0b\x1b\x38\x5b\xac"
+"\xc6\x1f\xf7\xb5\xfb\x2a\xfb\xb5\x07\xfb\x1f\xf2\x3a\x0b\xf8\x79\x15\xfb\x47\xf7\x74\xfb\x1a\xfb\x74\xfb\x47\xfb\x08\xf7\x47\x0b"
+"\x04\xf7\x6f\xf7\x20\x07\xdb\xb0\x68\x41\x40\x66\x68\x3b\x1f\x0e\x94\x89\x87\x97\x1f\xd2\x71\x05\x83\x0b\xfb\x2a\xfb\xa5\xfb\xb5"
+"\xf7\xa5\xfb\x2a\x32\x1d\x0b\x15\xf7\x06\xf7\x1c\x07\xa9\xa0\x73\x6a\x6a\x76\x73\x6d\x1f\x0b\xfb\x27\xfb\x25\xfb\x5b\x3a\xa1\x46"
+"\xb5\x58\x1e\xa1\x70\x0b\x9f\x7d\x76\x74\x72\x79\x6b\x6f\x0b\x06\xfb\x59\xf7\xe4\xf7\x4c\xf7\x60\x05\xfb\x33\x06\x0b\x4a\x1d\x29"
+"\x5b\x47\x45\x45\x5b\xd0\xee\x0b\x73\x76\x94\x9a\x7e\x1e\x80\x99\x86\x9c\x8a\xad\x08\x0b\xfb\x20\xfc\x3f\xfb\x41\x3a\x1d\x06\x0e"
+"\xfa\x7f\xf7\xcb\x15\xfe\x86\x23\xfa\x86\x06\x0e\x06\xfb\x04\xf7\xc1\xe6\xf7\x83\x05\xfb\x23\x06\x0b\x15\xfb\x4f\x06\x99\x9c\x91"
+"\x91\x93\x92\x91\x90\x0b\xd9\xe8\xb5\x1d\x0b\x7b\x76\x1b\x84\x77\x8e\x8e\x84\x1f\x44\xa4\x05\x0b\x08\x73\xbc\x88\x93\xa0\x1a\xbf"
+"\xb4\xb1\xc4\x0b\x06\xa9\x28\x05\xb3\x06\xab\xee\x05\x0e\xc7\xba\xa8\x70\x60\x1e\xfb\xfc\xf7\x20\x0b\xf8\x99\xdc\x15\xfc\x7d\x30"
+"\xf8\x7d\x06\x0b\x9f\x1b\xa9\x9f\x7d\x76\x74\x72\x79\x6b\x0b\x3d\xf7\x25\xfb\x20\xfb\x25\x46\x2e\xd0\x0b\x64\x1d\x0e\x71\xa2\xac"
+"\xac\xa5\xa1\x0b\x86\xca\x7e\xb3\x6c\xb4\x08\xd5\x53\x0b\x8a\x88\x9e\x1e\xf7\x22\x07\x8c\x83\x0b\x16\xf7\x20\xf7\x77\xf7\x57\xfb"
+"\x77\x0b\x1a\x4f\xc1\x68\xea\xa7\x9e\x8d\x92\x0b\xf7\x20\xf7\xd8\x07\xc9\xb8\xb7\xca\x0b\x15\xfc\xec\x46\xf8\xec\x06\x0e\xf7\x2a"
+"\xf8\xf0\xf7\x8d\xf7\x11\x0b\x04\xfb\x20\xfb\x11\xf7\x20\x06\x0b\x15\xfc\x78\xfb\x0b\xf8\x78\x06\x0b\x98\x8a\x89\x99\x1e\xf4\x07"
+"\x8d\x0b\x1f\x9a\x7f\x94\x78\x75\x1a\x64\x0b\xad\xbb\x6f\xcf\x1b\xf7\x16\xeb\x0b\x06\x30\xfb\xa5\x05\x0b\xf7\x72\xf9\x13\x18\x0b"
+"\x01\x00\x01\xe3\x01\x05\x00\x01\x0a\x02\x01\x40\x03\x01\x87\xff\x02\x87\xa0\x02\x8e\x02\x00\x01\x00\x02\x00\x03\x00\x09\x00\x22"
+"\x00\x6a\x00\xec\x01\x50\x01\xde\x01\xe4\x02\x13\x02\x43\x02\x6c\x02\x8a\x02\xa7\x02\xab\x02\xb3\x02\xc5\x03\x33\x03\x4b\x03\x91"
+"\x03\xf8\x04\x23\x04\x6c\x04\xd6\x05\x01\x05\x6a\x05\xca\x05\xd6\x05\xfb\x06\x0a\x06\x12\x06\x30\x06\x74\x07\x4c\x07\x50\x07\x53"
+"\x07\x57\x07\x5b\x07\x5f\x07\x6f\x07\x74\x07\x77\x07\x7a\x07\x7e\x07\x81\x07\x85\x07\x89\x07\x8d\x07\x92\x07\x95\x07\xfb\x07\xff"
+"\x08\x03\x08\x07\x08\x0b\x08\x29\x08\x2e\x08\x31\x08\x35\x08\x39\x08\x4e\x08\x5c\x08\x71\x08\x91\x08\x98\x08\xb5\x08\xb9\x08\xfc"
+"\x09\x00\x09\x06\x09\x0a\x09\x0f\x09\x13\x09\x17\x09\x1e\x09\x24\x09\x28\x09\x2b\x09\x62\x09\x66\x09\x6a\x09\xa1\x09\xe5\x09\xea"
+"\x09\xee\x09\xf3\x09\xf7\x09\xfc\x0a\x01\x0a\x06\x0a\x0a\x0a\x0f\x0a\x62\x0a\x6e\x0a\xc1\x0b\x0e\x0b\x2e\x0b\x85\x0c\x1e\x0c\x23"
+"\x0c\x60\x0c\xc0\x0d\x6b\x0d\xd2\x0d\xd7\x0e\x10\x0e\x2f\x0e\x35\x0e\x3c\x0e\x45\x0e\x4e\x0e\x5b\x0e\x6a\x0e\x89\x0e\x8b\x0e\xb6"
+"\x0e\xcf\x0e\xd5\x0e\xe0\x0e\xeb\x0f\x0b\x0f\x1a\x0f\x7e\x0f\xc7\x0f\xce\x0f\xd4\x0f\xdc\x0f\xe2\x0f\xea\x0f\xf2\x0f\xfa\x10\x00"
+"\x10\x09\x10\x1e\x10\x26\x10\x4e\x10\x61\x10\x65\x10\x6a\x10\xdd\x11\x05\x11\x0a\x11\x60\x11\x98\x11\x9d\x11\xa0\x11\xc1\x11\xc5"
+"\x12\x45\x12\xaa\x12\xb3\x12\xc2\x13\x0c\x13\x42\x13\x45\x13\x93\x13\xba\x13\xe1\x13\xf3\x14\x06\x14\x1a\x14\x46\x14\x63\x14\x75"
+"\x14\xb7\x15\x4e\x15\x5c\x15\xd1\x15\xff\x16\x08\x16\x8e\x16\x97\x16\x9f\x16\xa7\x16\xb0\x16\xb9\x16\xe0\x17\x1d\x17\x26\x17\x2e"
+"\x17\x36\x17\x3e\x17\x43\x17\x4b\x17\x4d\x17\x55\x17\x73\x17\x7d\x17\x86\x17\x8f\x17\x99\x17\xc3\x17\xcb\x17\xd4\x17\xdd\x17\xe6"
+"\x17\xef\x17\xf5\x17\xfc\x18\x05\x18\x0d\x18\x16\x18\x1f\x18\x28\x18\x31\x18\x47\x18\x9c\x18\xa4\x18\xad\x18\xb6\x18\xb9\x18\xbe"
+"\x18\xc6\x18\xca\x18\xd2\x18\xe9\x18\xf2\x18\xfa\x19\x02\x19\x0b\x19\x33\x19\x3b\x19\x41\x19\x4a\x19\x51\x19\x5a\x19\x63\x19\x6c"
+"\x19\x76\x19\xa6\x19\xaa\x19\xb2\x19\xba\x19\xd1\x1a\x62\x1a\xdf\x1b\x0e\x1b\x18\x1b\x20\x1b\x24\x1b\x2d\x1b\x36\x1b\x5f\x1b\x6c"
+"\x1b\x6f\x1b\x77\x1b\x80\x1b\x89\x1b\x92\x1b\x95\x1b\x9d\x1b\xa0\x1b\xb9\x1b\xc2\x1b\xce\x1b\xd7\x1b\xe0\x1c\x32\x1c\x5b\x1c\x5f"
+"\x1c\x6b\x1c\x6e\x1c\x7a\x1c\xf6\x1d\x05\x1d\x29\x1d\x33\x1d\x51\x1d\x5b\x1d\x8c\x1d\x96\x1d\xa1\x1d\xa8\x1d\xaf\x1d\xbc\x1d\xe5"
+"\x1d\xe8\x1d\xea\x1d\xf6\x1e\x21\x1e\x2a\x1e\x2d\x1e\x57\x1e\x5f\x1e\x78\x1e\x80\x1e\x88\x1e\x91\x1e\x95\x1e\x9e\x1e\xa7\x1e\xaf"
+"\x1e\xb3\x1e\xbc\x1e\xc5\x1e\xcf\x1f\x03\x1f\x08\x1f\x14\x1f\x1d\x1f\x8a\x1f\x9d\x1f\xf3\x20\x04\x20\x0d\x20\x15\x20\x18\x20\x20"
+"\x20\x5c\x20\x65\x20\x6e\x20\x94\x20\x98\x20\xbc\x20\xc4\x20\xec\x21\x00\x21\x09\x21\x12\x21\x1b\x21\x61\x21\x65\x21\x6c\x21\x97"
+"\x21\xa1\x21\xc8\x21\xcf\x21\xd9\x21\xe1\x21\xeb\x22\x0c\x22\x15\x22\x1e\x22\x27\x22\x30\x22\x34\x22\x3c\x22\x46\x22\x4a\x22\x59"
+"\x22\x8c\x22\xba\x22\xbe\x22\xf2\x22\xf8\x23\x1a\x23\x3a\x23\xa6\x23\xaa\x23\xdb\x23\xef\x24\x10\x24\x16\x24\x1d\x24\x24\x24\x35"
+"\x24\x3a\x24\x5f\x24\x65\x24\x69\x24\xc0\x24\xe2\x24\xf2\x24\xfa\x25\x10\x25\x2b\x25\x42\x25\x5d\x25\x6e\x25\xcd\x26\x2d\x26\x88"
+"\x26\x98\x26\xe7\x26\xf4\x27\x54\x27\xa9\x27\xae\x27\xb4\x27\xe1\x28\x21\x28\x43\x28\x8d\x28\xac\x28\xdd\x29\x13\x29\x69\x29\xad"
+"\x29\xb2\x29\xe6\x2a\x0c\x2a\x2f\x2a\x65\x2a\xb7\x2a\xbb\x2a\xe4\x2a\xf8\x2b\x1d\x2b\x45\x2b\x4e\x2b\x54\x2b\x67\x2b\x8b\x2b\x9a"
+"\x2b\xaf\x2b\xb3\x2c\x2e\x2c\x33\x2c\x43\x2c\x4d\x2c\x63\x2c\x7e\x2c\x92\x2c\xaa\x2c\xb5\x2c\xfe\x2d\x46\x2d\x8d\x2d\xa3\x2d\xea"
+"\x2d\xfc\x2e\x40\x2e\x7d\x2e\x84\x2e\x8a\x2e\xad\x2e\xf1\x2f\x0e\x2f\x3b\x2f\x68\x2f\x92\x2f\xa3\x2f\xb4\x30\x06\x30\x7f\x30\xfd"
+"\x31\x5a\x31\xb5\x32\x14\x32\x1c\x32\x51\x32\x87\x32\xc4\x33\x5b\x33\x68\x33\xee\x34\x3b\x34\x88\x34\xd6\x35\x22\x35\x7a\x35\xdb"
+"\x36\x54\x36\x65\x36\x6d\x36\x78\x36\x80\x36\xb3\x37\x31\x37\x9c\x37\xa7\x37\xe5\x38\x22\x38\x4d\x38\x53\x38\x5b\x38\x63\x38\x6b"
+"\x38\x96\x38\xa4\x38\xe3\x39\x59\x39\xc0\x3a\x2b\x3a\x3d\x3a\xa7\x3a\xab\x3a\xb4\x3a\xbd\x3a\xd7\x3b\x18\x3b\x40\x3b\x65\x3b\x78"
+"\x3b\x80\x3b\xfe\x3c\x66\x3c\x88\x3c\xb4\x3c\xbd\x3d\x04\x3d\x29\x3d\x30\x3d\x3c\x3d\x4b\x3d\xc2\x3d\xec\x3e\x15\x3e\x25\x3e\x6a"
+"\x3e\xd7\x3f\x0f\x3f\x12\x3f\x18\x3f\x1e\x3f\x25\x3f\x2a\x3f\x36\x3f\x4f\x3f\x58\x3f\x81\x3f\x86\x3f\xa5\x3f\xae\x3f\xb5\x3f\xc2"
+"\x3f\xd1\x40\x79\x40\x98\x41\x27\x41\x2e\x41\x72\x41\x8b\x41\x94\x41\xbd\x41\xc7\x41\xcf\x42\x3e\x42\x75\x42\x7a\x42\x83\x42\x8b"
+"\x42\x9a\x42\x9f\x42\xa9\x42\xaf\x42\xb9\x42\xc7\x42\xcf\x43\x41\x43\xe2\x44\x52\x44\x6e\x44\x97\x44\xba\x44\xf1\x45\x3c\x45\x59"
+"\x45\x63\x45\x82\x45\x95\x45\x9f\x45\xaf\x45\xf4\x46\x05\x46\x4f\x46\x5f\x46\x68\x46\x75\x46\xb0\x47\x60\x47\xb0\x47\xe5\x48\x69"
+"\x48\x7e\x48\xac\x48\xca\x49\x11\x49\x7e\x49\x86\x49\xab\x49\xb3\x49\xbb\x49\xd1\x49\xd2\x49\xd6\x49\xde\x49\xfd\x4a\x05\x4a\x07"
+"\x4a\x23\x4a\x52\x4a\x7e\x4a\xe5\x4a\xed\x4a\xf6\x4a\xf9\x4b\x01\x4b\x22\x4b\x40\x4b\x73\x4b\xb6\x4c\x29\x4c\x93\x4c\xac\x4c\xd1"
+"\x4c\xee\x4d\x08\x4d\x2a\x4d\x46\x4d\x55\x4d\x64\x4d\x9f\x4d\xe7\x4d\xeb\x4e\x0a\x4e\x3e\x4e\x64\x4e\x8d\x4e\xc3\x4e\xd3\x4e\xe3"
+"\x4f\x1f\x4f\x68\x4f\x92\x4f\xb5\x4f\xba\x4f\xda\x4f\xfd\x50\x50\x50\x5f\x50\x68\x50\xbb\x50\xe0\x51\x1a\x51\x26\x51\x2e\x51\xf0"
+"\x52\x58\x52\x5d\x52\x5f\x52\x7b\x52\x98\x53\x08\x53\x1f\x53\x64\x53\x8d\x53\xce\x53\xd2\x53\xda\x53\xe2\x53\xeb\x53\xf4\x53\xfa"
+"\x54\x01\x54\x0b\x54\x15\x54\x1f\x54\xb7\x54\xc0\x54\xc9\x54\xd2\x54\xdc\x55\x3e\x0e\x0e\xfb\xcf\xf7\x9a\x72\x0a\xfb\x42\x96\x1d"
+"\xf7\x80\xf7\x16\x15\xfb\x1e\xfb\x16\x06\xb3\xfb\x15\x05\xc3\x06\xb5\xf7\x15\x05\x0e\x2f\xf7\x26\x6b\x15\xb3\xf7\x60\x05\xf2\x06"
+"\x63\xfb\x60\x05\xf4\x06\xb3\xf7\x60\x05\xf7\x0b\xee\x27\x06\xaa\xf7\x2d\x05\xf7\x01\xee\x31\x98\x0a\x24\x98\x0a\xfb\x0b\x28\xee"
+"\x06\x6d\xfb\x2d\x05\x2a\x28\xd8\x06\x63\xfb\x60\x05\xf7\x39\xf7\xc3\x15\xa9\xf7\x2d\x05\xf2\x06\x6d\xfb\x2d\x05\x0e\x2f\xf8\x99"
+"\xf8\x86\x15\x89\xf7\x11\x3d\xda\xfb\x12\x92\x08\xc1\x47\x55\x07\xfb\x15\x7f\x40\x42\xfb\x04\x1a\xfb\x03\xd0\x44\xf7\x1b\x6c\x1e"
+"\xfb\x69\x07\x53\x95\x6c\xb4\x88\xd1\x08\xfb\x17\x82\x06\x42\xa9\x50\xc3\x62\x1e\xb1\x70\xb0\x7e\xc7\x85\x08\x22\xcf\xf4\x07\xc2"
+"\x91\xb5\x99\xac\xa0\x08\xc1\xae\xab\xcb\xd7\x1a\xf7\x02\x4f\xc6\xfb\x30\xb6\x1e\xf7\x5d\x07\xbe\x84\xa8\x61\x89\x4e\x08\xfb\x26"
+"\x44\x15\x53\x9d\x72\xa6\xb7\x1a\xbf\xa5\xa8\xc2\x96\x1e\xcf\xfb\xda\x15\xc3\x7a\xa7\x69\x5b\x1a\x59\x6f\x6a\x53\x7d\x1e\x0e\xf7"
+"\x85\xf7\x62\xf9\x51\x15\x26\x38\x39\x27\x27\xde\x39\xf0\xf0\xde\xdc\xee\xf2\x3a\xdc\x24\x1f\x28\x04\xbb\xb0\x66\x5c\x5d\x65\x66"
+"\x5c\x5c\x65\xb0\xba\xb9\xb1\xb0\xba\x1f\xf8\x24\xf6\x15\xfc\x20\xfd\x6d\x05\xd8\x06\xf8\x1f\xf9\x6d\x05\x88\xfb\xf9\x15\x25\x39"
+"\x39\x27\x26\xdd\x39\xf1\xf0\xde\xdd\xed\xf3\x3a\xdc\x24\x1f\x28\x04\xbb\xb0\x66\x5b\x5e\x64\x65\x5d\x5c\x65\xb1\xb9\xb9\xb1\xb1"
+"\xba\x1f\x0e\xd5\xf8\xa2\xf8\x09\x15\x81\x07\x5f\x83\x6e\x75\x61\x1e\xfb\x08\xf7\x24\x05\xe4\xc8\xa7\xb5\xd5\x1a\xe7\x44\xc9\x20"
+"\x20\x39\x43\x2c\x66\x99\x67\xa7\x6a\x1e\x94\x80\x94\x80\x95\x7f\x8d\x89\x8f\x86\x91\x83\x08\xfb\x09\x4e\x63\x56\x2d\x1a\xfb\x16"
+"\xea\x35\xf7\x22\xd0\xb7\x9d\xc8\xdd\x1e\xb9\x53\x05\xf7\x35\x06\xfb\x0f\xf7\x2e\xb3\xb9\xa5\xdc\x8d\xd7\x19\x90\x07\x96\x07\xfb"
+"\xfd\x55\x15\xf7\x1c\xfb\x3f\x05\x67\x5c\x61\x78\x6c\x1b\x55\x57\xc4\xc7\xac\x9b\xa8\xa6\x9d\x1f\xe1\xf7\x48\x15\x59\xc9\x86\x94"
+"\xa4\x1a\xa8\xa2\x9e\xae\xaf\xa0\x76\x66\x67\x78\x70\x62\x74\x1e\x0e\xcd\xf9\x6d\x37\x0a\x0e\xfb\xcf\xf7\x5f\x21\x0a\xfb\x07\xfb"
+"\x42\x5b\xfb\x1c\xfb\x2e\x1a\xfb\x2f\xbb\xfb\x1c\xf7\x07\xfb\x42\x1e\xef\x06\x20\xf7\x62\x6a\xf7\x03\xf7\x28\x1a\xf7\x27\xad\xf7"
+"\x05\xf5\xf7\x60\x1e\x0e\xfb\xcf\xf7\x0e\xfb\x5c\x15\xf7\x07\xf7\x42\xbb\xf7\x1c\xf7\x2e\x1a\xf7\x2f\x5b\xf7\x1c\xfb\x07\xf7\x42"
+"\x1e\x27\x06\xf6\xfb\x62\xac\xfb\x03\xfb\x28\x1a\xfb\x27\x69\xfb\x05\x21\xfb\x60\x1e\x0e\xfb\x97\xf7\x17\xf8\xb4\x15\x48\x2d\xc5"
+"\x60\xcf\xe9\xce\x2d\xc5\xb6\x48\xe9\xf7\x00\xae\x75\xd1\xfb\x00\x67\x05\xf7\x08\x43\xfb\x08\x07\xfb\x01\xaf\x75\x46\x05\x0e\x4b"
+"\xf8\xa9\xf7\xb7\x15\xfb\x4a\xf7\x4a\xfb\x0b\xfb\x4a\xfb\x4a\xfb\x0b\xf7\x4a\xfb\x4a\xf7\x0b\xf7\x4a\xf7\x4a\x06\x0e\xcb\xf7\x26"
+"\x15\xfb\x26\xe1\x07\x8d\x47\x6f\x64\x4f\x80\x08\x53\x07\xf6\x9b\xba\xc4\x87\xf7\x02\x08\xf7\x1d\x07\x0e\xfb\xcf\x8e\x0a\xf7\x6a"
+"\xf7\x26\x15\x33\x1d\x0e\xf7\x64\xf9\x5e\x15\xfb\x62\xfd\x6c\x05\xce\x06\xf7\x62\xf9\x6c\x05\x0e\x2f\xf7\xa5\xf9\x68\x15\x3f\x4a"
+"\x6b\x50\x60\x1f\x62\x54\x78\x31\xfb\x1e\x1a\xfb\x12\x9b\x33\xad\x55\x1e\x47\xb5\xd0\x66\xde\x1b\xd8\xca\xaa\xc6\xb7\x1f\xb3\xc2"
+"\x9f\xe6\xf7\x19\x1a\xf7\x16\x7b\xe3\x69\xc2\x1e\xcf\x61\x46\xb0\x38\x1b\xfb\x05\x04\xaf\xa8\x77\x66\x9c\x1f\x99\x6d\x93\x3e\x29"
+"\x1a\x3b\x84\x3d\x80\x6e\x1e\x61\x7b\x6d\x74\x63\x1b\x66\x6f\x9e\xaf\x7a\x1f\x7d\xa9\x83\xd5\xea\x1a\xdf\x92\xdb\x96\xa8\x1e\xb6"
+"\x9a\xaa\xa3\xb3\x1b\x0e\x2f\xf7\x82\xf8\x7d\x15\xfc\x7d\xf7\x20\xf9\x59\x2e\x07\x37\x75\x42\x60\xfb\x0e\x1b\x2e\x07\x0e\x2f\xf8"
+"\x94\xf7\x11\x15\xfb\xc1\x06\x9e\xb1\xa1\xa0\xf3\xd6\x08\xf7\x0f\xe5\xaf\xc0\xec\x1a\xf7\x1d\x2c\xe3\xfb\x28\xfb\x27\x35\x34\xfb"
+"\x2a\x1e\x72\xf7\x1b\xa2\x07\xda\xb0\xb9\xcb\xc9\xb1\x60\x44\x3c\x73\x6e\xfb\x32\xfb\x04\x1e\xfb\x0c\x39\x66\x4d\x85\xfb\x18\x08"
+"\xf8\x76\x06\x0e\x2f\xf7\x6d\xf7\xd1\x15\xc1\x8e\x8b\x84\xa4\x1f\xba\x7e\xa9\x62\x57\x1a\x4c\x5f\x5f\x4e\x49\x67\xb1\xd4\x87\x1e"
+"\xfb\x1c\x06\xfb\x22\x8c\xe7\x32\xf7\x26\x1b\xf7\x2b\xec\xe4\xf7\x1e\xde\x67\xc1\x3b\xb2\x1f\xcc\xb4\xa7\xb8\xcc\x1a\xf7\x0a\x33"
+"\xd6\xfb\x1d\x24\x3c\x5e\x3e\x6c\x1e\x7e\x69\x87\x74\x50\x1a\xf7\x16\x06\x8c\xb1\x8e\x9e\x92\x9d\x08\xaa\x98\xab\x9e\xb4\x1b\xc3"
+"\xab\x69\x50\x43\x62\x68\x38\x1f\x7f\x06\x0e\x2f\xf8\x9e\xf7\xa5\x15\x41\xf8\x48\xfb\x39\x06\xfb\x97\xfc\x46\x05\xfb\x0a\xf7\xb0"
+"\xfb\x31\xf7\x20\xf7\x31\xd5\x07\xfb\x6a\xf7\x08\x15\xfb\x4d\x06\xf7\x4d\xf7\xc3\x05\x0e\x2f\xf8\x7d\xf9\x59\x15\xfc\x0f\x06\x4c"
+"\xfc\x1f\x05\xf7\x12\x06\xae\x9a\xab\x9e\xb6\x1b\xd2\xb6\x58\x35\x38\x60\x58\x44\x4e\x69\xaa\xc4\x88\x1f\xfb\x1e\x06\xfb\x10\x8d"
+"\xe9\x37\xf7\x1e\x1b\xf7\x2c\xf3\xf3\xf7\x2d\xf7\x26\x31\xee\xfb\x17\x5c\x68\x7f\x6c\x62\x1f\xa2\xf7\x28\x05\xf7\xb9\x06\x0e\x2f"
+"\xf8\x8f\xf8\xb8\x15\x84\xb9\x82\xa2\x79\xa5\x08\xbe\x66\x4a\xa9\x3e\x1b\x33\x43\x64\x44\x60\x1f\x61\x46\x7a\x3c\xfb\x15\x1a\xfb"
+"\x0e\x9a\x3f\xaf\x52\x1e\x49\xb4\xd5\x64\xdf\x1b\xf7\x21\xeb\xf4\xf7\x2f\xf7\x1c\x37\xe9\xfb\x0e\x51\x64\x7a\x5d\x5f\x1f\x8c\x9a"
+"\x8d\xcd\x8e\xa0\x95\xa6\x19\xbf\x9e\xad\xa5\xbc\x1b\xb8\xa3\x79\x5e\x9d\x1f\x28\xfb\x54\x15\xcd\xb5\x59\x3c\x40\x5d\x54\x4d\x4b"
+"\x5f\xbf\xd7\xd8\xb7\xc1\xcb\x1f\x0e\x2f\xf8\xa4\xf9\x59\x15\xfc\x87\xfb\x11\xf7\xf5\x06\x60\x5d\x36\xfb\x15\x6f\x4d\x5a\x24\x72"
+"\x2e\x78\xfb\x2b\x08\xf7\x21\x06\x98\xf7\x74\xd4\xf7\x40\xf7\x3c\xf7\x5f\x08\x0e\x2f\xf8\x2d\xf8\x16\x15\xa3\x98\x96\x92\x96\x95"
+"\x08\xa8\xa6\x9c\xb6\xb9\x1a\xf7\x03\x2b\xdc\xfb\x17\xfb\x18\x2b\x3a\xfb\x04\x47\xa7\x60\xcb\x69\x1e\x39\x5e\x69\x56\x37\x1a\xfb"
+"\x1a\xf2\x2e\xf7\x29\xf7\x28\xf2\xe8\xf7\x1a\xdf\x69\xc0\x39\xb8\x1e\xfb\x1a\xf7\x75\x15\xc9\xb6\x65\x54\x55\x5f\x64\x4e\x4c\x60"
+"\xb1\xc3\xc1\xb6\xb1\xca\x1f\x89\xfb\xad\x15\xd0\xb6\x5d\x41\x47\x5f\x5e\x47\x47\x60\xb8\xd1\xd3\xb6\xb9\xcf\x1f\x0e\x2f\xb1\xf7"
+"\x39\x15\xfb\x01\x8e\xe7\x3b\xf7\x0e\x1b\xe6\xd0\xb1\xd3\xb5\x1f\xb0\xca\xa1\xf6\xf7\x06\x1a\xf3\x7b\xdb\x6a\xc1\x1e\xd7\x5e\x45"
+"\xb3\x36\x1b\xfb\x22\x2a\x25\xfb\x28\xfb\x26\xe1\x27\xf7\x12\xaf\xad\x95\x9b\xa1\x1f\x98\x94\x93\x94\xa2\xa5\x08\xfb\x1d\x65\x4a"
+"\x3c\x59\x6a\xa6\xb5\x88\x1e\xe5\xf8\x51\x15\xcf\xb5\x57\x37\x3d\x60\x57\x4a\x4b\x63\xbd\xdd\xdd\xb2\xbf\xca\x1f\x0e\xfb\xcf\xf7"
+"\x9b\x3d\x0a\xf8\x9c\x04\x33\x1d\x0e\xfb\xcf\xf7\x05\xf7\x26\x15\xfb\x26\xe1\x07\x8d\x47\x6f\x64\x4f\x80\x08\x53\x07\xf6\x9b\xba"
+"\xc4\x87\xf7\x02\x08\xf7\x1d\x07\xf8\x0a\x04\x33\x1d\x0e\x4b\xf8\xa5\xf8\x6e\x15\xfc\x7d\xfb\x49\x05\xfb\x0d\x97\x1d\x4b\xf8\xaa"
+"\xf8\x2f\x9b\x1d\x0e\x4b\xb3\x81\x15\xf8\x7d\xf7\x49\x05\xf7\x0d\x07\xfc\x7d\xf7\x4a\x05\xfb\x03\x07\xf8\x12\xfb\x17\xfc\x12\xfb"
+"\x19\x05\x0e\x66\xf8\x05\xf7\x5d\x15\xcd\x92\x96\xc7\xb5\x1e\xe8\xcd\xa6\xb7\xdf\x1a\xf7\x1c\x25\xe9\xfb\x27\x35\x48\x6d\x50\x60"
+"\x1e\x6a\x5f\x7e\x5b\x8a\x39\x08\xf7\x1c\x06\xe5\xb5\xc2\xd0\xc6\xb8\x5a\x49\x5e\x7f\x78\x51\x5b\x1e\x3b\x47\x74\x5e\x8e\x36\x08"
+"\xf7\x20\x54\x15\x33\x1d\x0e\xf7\xdb\xf9\x18\xf8\x90\x15\x7b\x4d\x05\xbd\x73\x69\xa1\x53\x1b\x47\x46\x69\x52\x5e\x1f\x5d\x52\x6f"
+"\x40\x47\x1a\x2c\xd4\x3f\xe6\xc2\xc3\xa7\xba\xb2\x1e\x93\x72\x93\x81\x9f\x7d\x08\x7a\xa4\xaa\x82\xac\x1b\xc7\xc7\xa9\xc1\xbb\x1f"
+"\xc2\xca\xa6\xd0\xde\x1a\xf6\x68\xdf\x3f\xd5\x1e\xdd\x36\xfb\x01\xb6\xfb\x13\x1b\xfb\x1b\xfb\x0a\x5a\x2c\x2f\x1f\x32\x2f\x55\xfb"
+"\x14\xfb\x0d\x1a\xfb\x07\xc4\xfb\x05\xe9\x41\x1e\x4a\xdd\xec\x6d\xf7\x13\x1b\xea\xd3\x99\xaa\xd1\x1f\x6f\xd4\x05\x72\x51\x3e\x7c"
+"\x43\x1b\x30\x35\xa8\xbf\x48\x1f\x3d\xc8\x63\xde\xef\x1a\xef\xb1\xf0\xcc\xd6\x1e\xde\xd3\xeb\xb6\xf7\x08\x1b\xed\xdc\x6d\x4d\xd1"
+"\x1f\xcd\x50\xab\x48\x3b\x1a\x51\x79\x52\x6a\x5d\x1e\x5f\x6a\x61\x6f\x68\x1b\x6d\x78\x9e\xa9\x97\x8b\x8c\x93\xa8\x1f\xd9\xf7\xac"
+"\x05\xfb\x73\x4e\x15\xbf\xab\x64\x4c\x58\x71\x48\x66\x60\x1f\x6f\x73\x68\x78\x6e\x1b\x58\x65\xb9\xc8\xf2\xd8\xef\xda\x1f\x0e\xd5"
+"\x20\x0a\x0e\xd5\x5e\x0a\xd5\x2d\x0a\x0e\xd5\x6e\x1d\x0e\x9e\x22\x0a\x0e\x66\xf7\x74\xf7\xce\x15\xf7\xd3\xf7\x11\xfb\xd3\x93\x0a"
+"\x06\x0e\xf7\x16\x35\x1d\x0e\xd5\x84\x1d\x29\x1d\x0e\x2f\x77\x1d\x0e\xd5\x79\x1d\x66\x38\x1d\x0e\xf7\x4d\x66\x0a\xd5\x29\x0a\x0e"
+"\xf7\x16\x24\x0a\x0e\x9e\x74\x1d\xf7\x16\xf9\x2d\xf2\x15\xbc\xc7\xaa\xef\xed\x1a\xf6\x65\xf2\x4b\xd0\x1e\xcf\x4c\x39\xac\x23\x1b"
+"\x23\x39\x6a\x47\x4c\x1f\x4a\x46\x66\x24\xfb\x01\x1a\xfb\x01\xb1\x24\xcb\x46\x1e\x47\xca\xdd\x6a\xf3\x1b\xd7\xc2\x9a\xae\xc5\x1f"
+"\xe1\x3a\xd7\xdc\x05\xfb\x9d\xf7\x8f\x15\x3f\x3a\xd8\x42\x05\x7f\x73\x6b\x84\x6b\x1b\xfb\x0c\x3b\xf0\xf7\x2d\xf7\x2e\xda\xef\xf7"
+"\x0e\xf7\x0e\xda\x27\xfb\x2f\x4f\x80\x55\x75\x5f\x1f\x0e\xd5\x3b\x1d\x0e\x9e\x2c\x0a\x0e\x66\x42\x1d\x0e\xd5\x25\x0a\x0e\x9e\xf8"
+"\x21\x16\xf7\x8e\xf9\x6d\x05\xfb\x2b\x06\xfb\x33\xfc\xb9\xfb\x36\xf8\xb9\x05\xfb\x2b\x06\xf7\x8a\xfd\x6d\x05\x0e\xf7\xbc\x2f\x0a"
+"\x0e\x9e\x62\x0a\x9e\x2a\x1d\x0e\x66\x31\x0a\x0e\xfb\xcf\xf7\xc8\x21\x0a\xfb\x86\xfe\x35\xf7\x86\xf1\xfb\x04\xf9\x69\xf7\x04\x06"
+"\x0e\xc2\xf9\x5e\x15\x48\x06\xf7\x7e\xfd\x6c\x05\xce\x06\x0e\xfb\xcf\x9d\xfb\x5c\x15\xf7\x86\xfa\x35\xfb\x86\x25\xf7\x04\xfd\x69"
+"\xfb\x04\x06\x0e\x4b\xf8\x9e\xf7\xa2\x15\xfb\x3f\xf8\x3d\x05\xfb\x11\x06\xfb\x39\xfc\x3d\x05\xf7\x04\x06\xf7\x07\xf7\xc0\xf7\x0d"
+"\xfb\xc0\x05\x0e\x2f\xf8\xd6\xfb\x0c\xbd\x1d\xf7\x62\xf8\x69\x15\xf7\x11\x3b\x07\x89\xbd\xa5\xa8\xc3\x95\x08\xb9\x07\x33\x84\x58"
+"\x52\x8f\x34\x08\xfb\x01\x07\x0e\x2f\x26\x1d\x0e\x66\xc6\x21\x0a\xfd\x6d\xf7\x20\xc2\x07\x56\xad\xba\x72\xcf\x1b\xf7\x15\xed\xf7"
+"\x0f\xf7\x37\xd4\x75\xd5\x67\xbf\x1f\xc0\x66\x49\xad\x49\x1b\x47\x5c\x72\x55\x69\x1f\xf7\x97\x07\xf7\x0a\xfb\xbd\x15\xd0\xbc\x45"
+"\x27\x28\x5b\x46\x45\x44\x5c\xce\xf3\xee\xbb\xcf\xd1\x1f\x0e\x2f\x36\x1d\x0e\x66\xf8\x29\x6d\x1d\x0e\x2f\x27\x1d\x0e\xfb\xcf\x40"
+"\x1d\x0e\x66\x68\x1d\x0e\x66\x61\x0a\x0e\xf7\x63\xf8\xb0\x39\x1d\x0e\xf7\x66\xf8\xb0\x7b\x1d\x2f\x7f\x1d\x0e\x44\x1d\x0e\xf7\x85"
+"\xc7\xf8\xb0\x15\xfc\xb0\xf7\x20\xf7\xd8\x07\xce\xaf\xb2\xb2\x1d\xf7\xd8\x07\xcd\xaf\xb3\xb2\x1d\xf8\x12\x07\xf4\x4b\xc9\xfb\x00"
+"\x46\x5c\x73\x53\x61\x1e\xbe\x71\x55\xa8\x48\x1b\x4d\x63\x77\x53\x5d\x1f\xce\x07\x0e\x66\x37\x1d\x0e\x66\x28\x1d\x0e\x66\xf7\x5a"
+"\x24\x1d\xfb\x20\xfd\x8a\x66\x1d\x4f\xc3\x1d\xf7\x0e\xf7\x38\xd7\x75\xd7\x67\xbd\x1f\xbe\x67\x48\xad\x4a\x1b\x47\x5b\x6e\x4f\x69"
+"\x1f\xf7\x0a\x6f\x4a\x1d\x28\x5b\x47\x45\x44\x5c\xcf\xf0\xf1\xba\xcf\xd2\x1f\x0e\x66\xf8\x28\x24\x1d\x3b\x07\xc6\x6a\x59\xa9\x48"
+"\x1b\xfb\x16\x2b\xfb\x0e\xfb\x39\x3f\xa1\x3f\xaf\x5a\x1f\x58\xaf\xce\x69\xcb\x1b\xcf\xbd\xa8\xc6\xac\x1f\xfb\xae\xf7\x20\xf9\x8a"
+"\x07\xfb\x96\xfb\x00\x15\xd3\xb9\x47\x22\x29\x5b\x47\x45\x45\x5b\xcf\xf0\xf0\xbb\xd0\xd1\x1f\x0e\xfb\x97\x3d\x1d\x0e\x2f\x34\x1d"
+"\x0e\xfb\xcf\x4c\x1d\x0e\x66\x26\x0a\x0e\x2f\xf7\xf2\x75\x0a\xf7\x16\x30\x0a\x0e\x2f\xf7\xf7\x75\x1d\x2f\x2e\x0a\x0e\xfb\x28\x36"
+"\x0a\x0e\xfb\x97\xf7\xd1\x21\x0a\x3f\x06\x44\x8c\x56\x4e\x8c\x3b\x08\xfb\x67\x07\x61\x8c\x76\x76\x5e\x1b\x7f\x06\x87\x2f\x06\xca"
+"\x8c\x9e\x7a\x8a\x52\x08\xfb\x66\x07\x89\x3b\xc1\x4e\xd2\x8c\x08\xd7\xee\x66\x06\x69\x7f\x9e\xb9\x8c\x1f\xf7\x57\x07\xd3\x71\xa8"
+"\x44\x94\x1e\xd2\x93\xa5\xa8\xd3\x1a\xf7\x57\x07\xb2\x8a\x9a\x9d\xaa\x1b\xb0\x06\x0e\xfc\x04\xf7\x48\x21\x0a\x3b\xfe\x35\xdb\x06"
+"\x0e\xfb\x97\xd3\xfb\x5c\x15\xd7\x06\xd2\x8a\xc0\xc8\x8a\xdb\x08\xf7\x67\x07\xb5\x8a\xa0\xa0\xb8\x1b\x97\x06\x8f\xe7\x06\x4c\x8a"
+"\x78\x9c\x8c\xc4\x08\xf7\x66\x07\x8d\xdb\x55\xc8\x44\x8a\x08\x3f\x28\xb0\x06\xad\x97\x78\x5d\x8a\x1f\xfb\x57\x07\x43\xa5\x6e\xd2"
+"\x82\x1e\x44\x83\x71\x6e\x43\x1a\xfb\x57\x07\x64\x8c\x7c\x79\x6c\x1b\x66\x06\x0e\x4b\xf8\x4d\xf8\x2f\x15\x8a\x70\x8a\x87\x88\x83"
+"\x08\x79\x83\x7b\x82\x73\x1b\x76\x7d\x90\x9f\x71\x1f\x52\xb5\x05\x9c\x73\x71\x93\x6a\x1b\x3c\x60\x5b\x2a\x86\x1f\xd9\x06\x8c\xa6"
+"\x8c\x8e\x8e\x93\x08\x9d\x93\x9b\x94\xa3\x1b\xa0\x9c\x84\x7a\xa2\x1f\xc4\x61\x05\x79\xa5\xa3\x83\xac\x1b\xdb\xb4\xbb\xed\x91\x1f"
+"\x0e\xfb\xcf\xcd\xfb\x4e\x15\xf7\x2a\xf7\x66\x06\x62\xf7\xc9\x05\x48\x06\x61\xfb\xc9\x05\xf8\x06\x04\xf7\x2a\xf7\x26\xfb\x2a\x06"
+"\x0e\x2f\xf7\xc3\xf8\x47\x15\xba\x84\xa4\x6f\x98\x4d\x08\xf7\x1a\x06\x83\xf7\x10\x33\xe0\xfb\x0f\x8d\x08\xe0\x5f\x35\x07\xfb\x24"
+"\x7c\x3d\x26\xfb\x41\x1a\xfb\x3a\xde\x22\xf7\x1f\x82\x1e\x25\x07\xb7\x8a\x05\xf1\x07\xf7\x0b\x8f\xe4\xe0\x96\xf7\x0c\x08\xfb\x1a"
+"\x06\x7c\x4e\x73\x6f\x5d\x84\x08\x5f\x8e\x15\x56\x9a\x6e\xc5\xe8\x1a\xee\xa8\xc8\xc0\x98\x1e\x0e\x2f\xf8\x0b\xf8\x07\x15\xfb\x1f"
+"\x06\x85\x99\x86\x98\x78\xb1\xb0\x1d\xaa\xa5\x82\x79\x9f\x1e\xa0\x79\x93\x79\x91\x5d\x8c\x80\x18\xf7\x18\x06\x86\xc6\x83\xac\x7c"
+"\xa8\x08\xd2\x67\x3d\xb2\x23\x1b\x48\x54\x7a\x6b\x61\x1f\x5d\x66\x6f\x53\x52\x1a\x5e\x93\x76\xb8\x3c\x1e\x4f\x54\xe4\x06\x9b\x63"
+"\x90\x77\x72\x1a\x51\x70\x66\x38\x53\x1e\xc2\x26\x05\xa2\xb7\xa6\x92\xb1\x1b\xa6\xa1\x87\x7f\xbc\x1f\x7f\xbc\xa2\x87\xa6\x1b\xbc"
+"\xb3\x97\xac\xc3\x1f\x62\xf7\x01\x05\x77\x63\x6b\x82\x6a\x1b\x7a\x77\x8e\x92\x71\x1f\x95\x64\x84\x8c\x79\x1b\x6e\x77\x85\x6c\x4c"
+"\x1f\xe0\xce\xaa\xb9\xc5\x1a\x9f\x88\x98\x7f\xa5\x1e\xf7\x0e\x06\x0e\xf7\xc5\x2f\x1d\x0e\x2f\xf8\x85\xf7\xf3\x15\xfb\x1d\x06\xf7"
+"\x54\xf7\xf5\x05\xfb\x1b\x06\xfb\x1a\xfb\x92\xfb\x1f\xf7\x92\x05\xfb\x1f\x06\xf7\x5f\xfb\xf5\x05\xfb\x1e\x50\xf7\x25\x56\xfb\x25"
+"\x50\xf7\x25\xfb\x48\xf7\x20\xf7\x48\xf7\x22\xc6\xfb\x22\xc0\xf7\x22\x06\x0e\x2f\xf8\x88\xf8\x74\x15\xfb\x0f\x06\x92\xb4\x05\xd3"
+"\x97\xa4\xae\xb2\x1b\x9c\x95\x88\x7e\xa7\x1f\x9f\xf7\x07\x05\x98\x60\x76\x8f\x6b\x1b\x22\x52\x4c\xfb\x22\x73\x1f\x81\x50\x05\xfb"
+"\x1f\x2a\xf7\x0f\x06\x50\xfc\x0c\x05\x38\x7e\x7a\x6f\x67\x1b\x7b\x7a\x91\x9a\x73\x1f\x73\xfb\x07\x05\x7b\xac\xa4\x85\xab\x1b\xbd"
+"\xb9\x9d\xa9\xa8\x1f\xad\xad\xa0\xc1\x98\xe0\xc6\xf8\x12\x18\xf7\x1d\x06\x0e\x2f\xf8\x6d\xf8\xb4\x15\x89\xbc\x84\xa6\x7a\xa6\x08"
+"\xbb\x6c\x4a\xa7\x3d\x1b\xfb\x0d\x33\x43\x27\x6c\x95\x6a\x9c\x75\x1f\x91\x83\x8e\x87\xa4\x72\x08\x43\x54\x77\x6b\x4f\x1a\x54\xa7"
+"\x5c\xbe\x6d\x1e\xf7\x3f\x27\xb4\x74\x8b\x8b\x96\x81\x19\x96\x80\x92\x7b\x79\x1a\x67\x6c\x72\x5e\x71\x75\x93\x99\x7d\x1e\x7e\x97"
+"\x87\x99\x89\xab\x08\x95\xfb\x17\x07\xfb\x19\x8c\xd2\x47\xf7\x1f\x1b\xf7\x16\xe3\xd8\xf7\x06\xc4\x74\xb7\x5c\xac\x1f\xce\xaa\xa6"
+"\xb3\xce\x1a\xcf\x6d\xbb\x48\xb0\x1e\xfb\x13\xd1\x05\x44\xb2\x78\x9d\xa8\x1a\xa9\xa4\x9f\xb2\xba\xa3\x73\x56\x92\x1e\x82\xfb\x82"
+"\x15\xba\x72\x99\x7a\x6b\x1a\x74\x7f\x79\x69\x73\x1e\xfb\x27\xdb\x05\x61\xa2\x7f\x9b\xaa\x1a\xa8\x98\x9d\xa9\x9d\x1e\x0e\x2f\xf8"
+"\x18\xf8\xa4\x15\x9e\x6e\x63\x96\x65\x1b\x66\x62\x7f\x78\x6c\x1f\x3e\xd8\x46\x47\xda\x3c\x05\x78\x6d\x81\x66\x65\x1a\x64\x93\x70"
+"\xa1\x63\x1e\x3d\x3e\xcf\x46\xda\xd9\x05\x78\xa6\xb7\x7f\xb3\x1b\xb0\x9b\x90\xa4\xba\x1f\xd6\x40\xd0\xcf\x3e\xd7\x05\x9f\xae\x94"
+"\xad\xb2\x1a\xb1\x85\xa3\x76\xb4\x1e\xd6\xd6\x46\xd0\x05\xfb\x49\xfb\x21\x15\xc5\xbb\x5a\x51\x4f\x5b\x5b\x50\x50\x5b\xbb\xc6\xc8"
+"\xbb\xba\xc7\x1f\x0e\xfc\x2e\x96\x1d\x0e\xfb\x28\xf7\x66\xf8\x69\x15\xf7\x11\x3b\x07\x89\xbd\xa5\xa8\xc3\x95\x08\xb9\x07\x33\x84"
+"\x58\x52\x8f\x34\x08\xfb\x01\x07\xf7\xfe\x16\xf7\x11\x3b\x07\x89\xbd\xa5\xa8\xc3\x95\x08\xb9\x07\x33\x84\x58\x52\x8f\x34\x08\xfb"
+"\x01\x07\x0e\x2f\xe3\x8f\x1d\xf7\x69\xfb\x06\x15\xf7\x3b\xfb\x26\x05\xf7\x06\x07\x26\xe4\xf0\xe4\x05\xf7\x09\x07\xfb\x3b\xfb\x29"
+"\x05\x0e\xfb\xcf\xde\x8f\x1d\x0e\xfb\xcf\xf7\x8b\x79\x0a\x0e\x66\x40\x1d\xf7\x77\xf3\x39\x1d\x0e\x66\x40\x1d\xf7\x77\xf7\xb9\xb6"
+"\x1d\x2f\xf8\xc1\xf7\xcb\x15\xfc\xca\x23\xf8\xca\x06\x0e\x2f\xf8\x9f\xa0\x1d\xfc\xc7\xf7\x1a\xf8\xc7\xf7\x47\x06\x0e\x2f\xf8\x9c"
+"\xa0\x1d\xfb\x73\xfb\x47\xfb\x08\xf7\x47\xfb\x74\xf7\x1a\xf7\x74\xf7\x47\xf7\x08\xfb\x47\xf7\x73\xf7\x47\x06\x0e\x4b\x0a\x2f\xf8"
+"\xa5\xf9\x6d\x15\xfb\xc3\x06\x4a\x57\x71\x56\x65\x1f\x6a\x5f\x79\x53\x54\x1a\xfb\x15\xe0\x2e\xf7\x0e\x85\x1e\xfc\x5e\xed\xf9\xe4"
+"\xca\xfd\xe4\xed\xf9\xe4\xb6\x07\x0e\xfb\xbe\xf7\x45\xf8\x3d\x15\x44\x53\x54\x45\x46\xc3\x53\xd0\xd0\xc3\xc3\xd0\xd0\x53\xc3\x48"
+"\x1f\x0e\xcd\xf7\x11\x37\x0a\x0e\xfb\x28\xd3\xf7\x11\x37\x0a\xe5\x16\x8e\x1d\xfb\x28\xd4\xf9\x6d\x37\x0a\xec\x16\x8e\x1d\x2f\xf7"
+"\x93\x79\x0a\xf7\x63\xf7\x07\x15\xfb\x3b\xf7\x26\x05\xfb\x06\x07\xf0\x32\x26\x32\x05\xfb\x09\x07\xf7\x3b\xf7\x28\x05\x0e\xf7\xf4"
+"\xf7\x86\x3d\x0a\xf7\xe1\x3d\x0a\xf7\xe1\x3d\x0a\x0e\xf7\xf4\xf7\x34\xf9\x77\x15\x39\x48\x49\x39\x92\x1d\x64\x65\x6b\xaa\xb2\xb1"
+"\xaa\xaa\xb2\x1f\xf7\xe4\xda\x15\xfc\x38\xfd\x8b\x05\xcd\x06\xf8\x39\xf9\x8b\x05\x2f\xfc\x64\x15\x39\x48\x48\x3a\x39\xce\x49\xde"
+"\xdc\xcf\xcd\xdb\xdf\x49\xcd\x37\x1f\x3b\x04\xb3\xaa\x6c\x64\x65\x6b\x6c\x65\x64\x6b\xaa\xb2\xb1\xab\xaa\xb1\x1f\xf8\x05\xdb\x15"
+"\x39\x48\x49\x39\x92\x1d\x65\x64\x6b\xaa\xb2\xb1\xaa\xaa\xb2\x1f\x0e\x66\xf7\x83\xf7\xe7\x15\x4a\x84\x7f\x4f\x61\x1e\x2d\x49\x70"
+"\x5f\x37\x1a\xfb\x1c\xf1\x2d\xf7\x28\xe1\xce\xa9\xc6\xb6\x1e\xac\xb7\x98\xbb\x8c\xdd\x08\xfb\x1c\x06\x31\x61\x54\x46\x4f\x5e\xbc"
+"\xcd\xb8\x97\x9e\xc6\xbb\x1e\xdb\xcf\xa2\xb8\x88\xe0\x08\xfb\x20\xc2\x15\xf7\x2a\xf7\x26\xfb\x2a\x06\x0e\xfb\xcf\x9c\xf9\x89\x21"
+"\x1d\xfb\xcf\xf7\xd1\x43\x1d\xfb\xcf\xf7\x08\xf9\x89\x23\x0a\xfb\xcf\xf7\xae\x40\x0a\xfb\xcf\xf7\xcf\xf9\x63\x28\x0a\xfb\xcf\xf7"
+"\xbf\xf9\x80\x44\x0a\xfb\xcf\xf7\x72\xf9\x7b\x27\x0a\xfb\xcf\xf7\x14\x41\x1d\xfb\xcf\xf7\x3c\xf9\x96\x2c\x1d\x0e\xfb\xcf\xf7\x36"
+"\x16\x55\x21\x05\x95\x9f\x94\x8d\x81\x1d\x7c\x49\x1d\xa8\xca\x05\x0e\xfb\xcf\xf7\x2c\xf9\x89\x32\x0a\xfb\xcf\xf7\x3d\x16\x3e\x6f"
+"\x5c\x57\x50\x1a\x51\xc2\x66\xe4\xa7\xa3\x8e\x92\xa6\x1e\xba\x07\x87\x79\x78\x89\x77\x1b\x56\x74\x9b\xad\xbe\xa3\xa9\xe0\xbf\x1f"
+"\x0e\xfb\xcf\xf7\x6f\xf8\xf3\x15\xf7\x00\xf7\x2a\x05\x3f\x06\x39\x2a\x39\x47\x1d\xf7\xf4\xab\x1d\xf7\xf4\x6f\x1d\x0e\xfb\xaa\xf7"
+"\xd5\xf7\xe8\x15\xfb\xb0\x3d\xf7\xb0\x06\x93\xf7\x28\x15\x7c\x99\x86\x94\x9c\x1a\xf7\x47\x07\xcd\x5e\xad\x33\x32\x5e\x65\x41\x89"
+"\x1e\xda\x06\xac\x8f\x9a\x96\xb3\x1b\xab\x9c\x80\x77\x80\x86\x83\x81\x86\x1f\x80\x85\x8b\x8b\x61\x84\x6a\x85\x18\x4a\x80\x6c\x6a"
+"\x50\x1a\x50\xb2\x64\xc7\xaf\xac\x9b\xa9\xa8\x1e\x7b\x8d\x85\x93\x81\x1e\xe7\x06\x25\xf7\x16\x15\x5b\x72\x6f\x61\x6e\x7a\x9a\xa3"
+"\xa4\x98\x97\xae\x92\x1e\xa8\x91\xa1\x8f\x8f\x8c\x95\x90\x19\x0e\x66\xf7\x7a\xf8\x3b\x15\xf7\xc6\xfb\x2a\xfc\x13\x07\x3b\x53\x05"
+"\x32\x07\xdb\xc3\x05\xfb\x95\xf8\x99\xf7\x11\xfc\x03\xf7\x65\x07\xf7\x39\xf7\x05\x05\xe3\x07\x0e\xf7\x16\x5a\x0a\x0e\xf7\xf4\xf9"
+"\x04\xf7\xce\x15\xf7\xbf\xf7\x11\xfb\xbf\xf7\x39\xf7\xdb\xf7\x11\xfc\x6b\x57\x06\xbb\x5b\x64\x9b\x4b\x1b\xfb\x46\xfb\x0f\xfb\x30"
+"\xfb\x76\xfb\x73\xf7\x10\xfb\x33\xf7\x41\xcf\xb1\x9f\xc9\xbc\x1f\x50\xf8\x7e\xf7\x11\xfb\xee\x07\xfb\x2a\xc0\x15\x58\x6e\x68\x75"
+"\x55\x1b\x20\x44\xf0\xf7\x2d\xf7\x2d\xd2\xf0\xf6\xc1\xae\x75\x58\xa8\x1f\x0e\xfb\xaf\xf7\xe2\xf7\xe8\x15\xfb\xc1\x3d\xf7\xc1\x06"
+"\xfb\x2b\xf8\x67\x15\x27\x4f\x4a\x20\x21\xc8\x4a\xee\xee\xc8\xcc\xf3\xf7\x02\x50\xcb\x26\x1f\x47\x04\xb9\xa9\x62\x4b\x4f\x6c\x61"
+"\x5e\x5d\x6d\xb5\xc9\xc9\xa9\xb4\xb9\x1f\x0e\xf7\x85\x58\x0a\x0e\x30\x1d\x0e\xf7\x58\xf8\x4e\x15\xf7\xb3\xfb\x20\xfb\xf8\x07\x53"
+"\x63\x05\x3c\x07\xc3\xb3\x05\xfb\xba\xf7\x20\xf7\xff\x07\xc3\xb3\x05\xda\x07\x0e\x66\x5c\x0a\x0e\xf7\xbc\xf9\x9c\xf7\x2c\x15\x63"
+"\x7e\x60\x6f\x5a\x1b\x63\x68\x9d\xa9\x79\x1f\x7d\xa2\x85\xa4\x8a\xb9\x08\xf7\xfe\x06\x8c\x97\x8b\x90\x92\x1a\xc1\x83\xbd\x7e\xb1"
+"\x1e\xed\x67\x34\xc6\xfb\x03\x1b\x3f\x4e\x71\x59\x60\x1f\xbe\x5a\x4a\xa4\x3a\x1b\xfb\x3a\x65\x1d\xfb\x46\xf0\xfb\x00\xf7\x3a\xdb"
+"\xcb\xa4\xbd\xbe\x1f\x5a\xb7\xc9\x71\xd4\x1b\xf7\x0d\xed\xd0\xf5\xaa\x1f\xfd\x04\xf7\xb0\x70\x0a\xf7\xa1\xfb\x09\x15\x8e\xab\x90"
+"\x9e\x94\x9d\x08\xac\x9c\xae\xa0\xb1\x1b\xac\xac\x7a\x6f\x9e\x1f\x98\x78\x91\x77\x8f\x64\x08\x0e\x66\xf7\xb1\xf7\xf1\x15\x98\x06"
+"\xe1\xbe\x5d\x3d\x45\x5b\x58\x46\x89\x1f\x77\x06\x89\x86\x8b\x8a\x85\x1f\xfb\x04\x07\x87\xac\x9c\x89\xa1\x1b\xf7\x17\xe2\xf0\xf7"
+"\x2c\xc9\x7d\xb1\x66\xad\x1f\x71\xa3\x79\x95\x68\x92\x08\xc4\xa1\xa9\xba\xce\x1a\xf6\x2d\xd6\xfb\x1b\x46\x48\x78\x6c\x64\x1e\x60"
+"\x69\x79\x5a\x3d\x1a\xfc\x9a\xf7\x20\xf8\xad\x07\xbd\xab\xa8\xc2\xc8\xb0\x6c\x57\x55\x66\x69\x4e\x8a\x1e\x82\x06\x0e\xfb\xcf\xf7"
+"\x1e\xf8\xd1\x3c\x0a\x0e\x4b\xb3\xf8\x0b\x15\x3e\xf8\x3f\xfb\x68\xd8\xf7\xb5\x07\x0e\x66\xf7\x54\xfb\x70\x15\xf7\x7f\x07\x70\xa7"
+"\xa9\x80\xb5\x1b\xb9\xa9\x99\xb3\xb3\x1f\x63\xa3\xa3\x7d\xba\x1b\xa7\x9e\x90\x97\xa2\x1f\xe2\x07\x88\x81\x87\x8a\x85\x1b\x73\x85"
+"\x9a\xc5\x1f\xf8\x1a\x55\x0a\x4d\x61\x5f\x50\x6f\x73\x97\xa0\x7d\x1e\x7d\x9f\x87\x9d\xb2\x1a\xf7\xe2\xfb\x20\xfd\x8c\x07\x0e\xf7"
+"\xf4\xf7\xc3\xf9\x1f\x15\xf7\x19\xd9\xfc\x01\x3d\xf7\x1d\xfc\x0e\xea\x06\xf8\x58\x16\xde\xf7\xf1\x05\xfb\xf1\xe6\xf8\x5c\xfb\x1d"
+"\x07\x37\xfb\xf2\x35\xf7\xf2\x05\xfb\x1d\xfc\x5c\xe6\xf7\xf1\x06\xe0\xfb\xf1\x05\x0e\xd5\x5d\x0a\xf7\x4e\xf7\x16\xf8\xd1\x3c\x0a"
+"\xf8\xb7\xf7\x22\x46\x1d\xf7\x3e\xfd\x0e\xad\x1d\xa3\x9c\xa8\xa0\x08\xdb\xc2\xa1\xaa\xc7\x1a\xe1\x55\xbb\x2a\x27\x53\x58\x2f\x88"
+"\x8b\x84\x8c\x83\x1e\xe7\x06\x8a\x92\x8a\x92\x8d\x1a\xb8\xa1\xa5\xb1\xb2\xa1\x73\x63\x5e\x7d\x7c\x28\x48\x1e\x3d\x59\x74\x65\x88"
+"\x3a\x08\xf7\xca\x06\x0e\x4b\xf8\xa3\xf2\x15\xfc\x6b\xfb\x0b\xf8\x6b\x06\xf8\x54\x04\xfb\x44\xf7\x44\xfb\x0b\xfb\x44\xfb\x44\xfb"
+"\x0b\xf7\x44\xfb\x44\xf7\x0b\xf7\x44\xf7\x44\x06\x0e\x9e\xf7\x76\xf7\x20\x15\xf7\x4f\x06\xf7\x1b\xe0\xe8\xf7\x29\xd5\x77\xc3\x61"
+"\xb4\x1f\xb2\x63\x58\x9c\x39\x1b\xfb\x40\xf7\x0c\xfb\x2a\x32\x1d\xf7\x9d\xa1\x1d\xf7\x4e\xf7\x16\xf8\xd1\x3c\x0a\xf8\xbd\xf7\x22"
+"\x46\x1d\xf7\x23\x6f\x0a\x4b\xf8\xaa\xf7\xb7\xc0\x1d\xfb\xc4\xf7\xc2\xa8\x0a\xfb\x10\xfb\xfe\x3e\x0a\xfc\x04\xf7\x48\x21\x0a\x3b"
+"\xfc\x19\xdb\x06\xfb\x2b\x04\x3b\xfc\x19\xdb\x06\x0e\xfb\x8c\xf7\x5c\xf9\x42\x15\x37\x47\x47\x38\x38\xcf\x46\xdd\xe0\xcf\xce\xe0"
+"\xde\x47\xcf\x38\x1f\x4c\x04\xbb\xb3\x64\x5a\x59\x63\x64\x59\x5c\x63\xb3\xbb\xbc\xb3\xb3\xbc\x1f\x0e\x66\xf7\x5a\x21\x0a\xfb\x20"
+"\xfe\x47\x66\x1d\x50\xc3\x1d\xf7\x0d\xf7\x38\xf7\x39\x2b\xf7\x0e\xfb\x16\x47\x5b\x8b\x1d\xf7\x4e\xf7\x1d\xf8\x6b\x5f\x0a\xf8\x6b"
+"\xf7\x4a\x46\x1d\xf7\x0a\x6f\x0a\xfb\xcf\xf7\xd1\xf8\x01\xad\x1d\xa2\x9b\xa9\xa1\x08\xdb\xc2\xa1\xaa\xc7\x1a\xe1\x55\xbb\x2a\x27"
+"\x53\x58\x2f\x88\x8b\x84\x8c\x83\x1e\xe7\x06\x8a\x92\x8a\x92\x8d\x1a\xb8\xa1\xa5\xb1\xb1\xa2\x73\x63\x5e\x7c\x7b\x29\x49\x1e\x3d"
+"\x59\x74\x65\x88\x3a\x08\xf7\xca\x06\x0e\xe4\xf7\xb4\xf7\xcd\x15\xe6\x06\xb5\x9e\x7c\x69\x1f\x7a\x07\x8a\x82\x8b\x80\x85\x1a\x5d"
+"\x8d\x7f\x98\x74\x1e\xf1\xa0\x06\x7d\x93\x86\x92\x9e\x1a\x88\xf7\x14\x89\x92\x58\xa3\x08\xbb\xa3\xa0\xac\xbe\x1a\xd7\x5e\xb8\x3f"
+"\x1e\xfb\x81\xfc\x4f\xeb\x06\xf7\x92\x04\xf7\x00\xf1\x07\xbc\x9b\x7e\x62\x62\x7b\x7e\x5a\x1f\x76\xf7\xf1\x15\xfb\x67\xfb\x40\xfb"
+"\x40\xfb\x66\xfb\x65\xf7\x40\xfb\x42\xf7\x62\xf7\x6c\xf7\x3f\xf7\x3d\xf7\x6a\xf7\x67\xfb\x3f\xf7\x3f\xfb\x67\x1f\x8a\x43\x15\xf7"
+"\x3c\xf7\x1d\xfb\x1f\xfb\x3f\xfb\x42\xfb\x1c\xfb\x1d\xfb\x40\xfb\x38\xfb\x1d\xf7\x21\xf7\x3e\xf7\x3f\xf7\x1c\xf7\x1f\xf7\x3c\x1f"
+"\x0e\x4b\xf8\xb4\xf7\xb7\x15\xfc\x8c\xfb\x0b\xf8\x8c\x06\x0e\x66\xf8\x44\xf9\x5a\x15\x58\xad\x34\x57\x83\x8e\x85\x8e\x8a\x8c\x19"
+"\x6d\x9c\x7c\x93\x7a\x93\x72\x94\x19\x48\x5c\xbc\x73\x99\x83\xa6\x7b\x19\x45\x5f\xb5\x66\xd8\xb9\xb1\x75\xa9\x6c\xa6\x60\x19\x9a"
+"\x64\x77\x8f\x71\x1b\x60\x5f\x7e\x73\x64\x1f\x3f\x5e\x66\x3e\xfb\x02\x1a\xfb\x48\xef\xfb\x00\xf7\x3b\xe1\xd4\xaa\xc3\xba\x1e\xb4"
+"\xbe\x9f\xcd\xe3\x1a\xf7\x3a\x46\xf7\x0f\xfb\x2c\xf1\x1e\x5d\xfb\x7b\x15\xd8\xbc\x49\x21\x27\x59\x48\x3f\x3e\x5a\xcd\xf3\xf1\xbc"
+"\xce\xd8\x1f\x0e\x4b\xf8\x39\xf8\x50\x15\xfb\x15\xfb\x15\xfb\x15\xf7\x15\x37\x36\xf7\x15\xfb\x14\xfb\x14\xfb\x14\xdf\x37\xf7\x14"
+"\xf7\x14\xf7\x14\xfb\x15\xdf\xdf\xfb\x14\xf7\x15\xf7\x15\xf7\x15\x05\x0e\xfb\xcf\xf7\x11\xf8\x6b\x5f\x0a\x0e\xe4\xf8\xbc\xf8\x43"
+"\x15\x88\xb4\x83\xa3\x78\xa5\x08\xb8\x69\x54\xa4\x48\x1b\xfb\x11\x3d\x32\xfb\x23\xfb\x23\xd8\x32\xf7\x10\xf7\x04\xd4\xcb\xf4\x90"
+"\x1f\x2f\x06\x53\x86\x69\x6d\x52\x1b\x45\x62\xc1\xe9\xe9\xb6\xc3\xd2\xc0\xa8\x73\x55\x96\x1f\x2e\xf7\xcc\x15\xfb\x67\xfb\x40\xfb"
+"\x40\xfb\x66\xfb\x65\xf7\x40\xfb\x42\xf7\x62\xf7\x6c\xf7\x3f\xf7\x3d\xf7\x6a\xf7\x67\xfb\x3f\xf7\x3f\xfb\x67\x1f\x8a\x43\x15\xf7"
+"\x3c\xf7\x1d\xfb\x1f\xfb\x3f\xfb\x42\xfb\x1c\xfb\x1d\xfb\x40\xfb\x38\xfb\x1d\xf7\x21\xf7\x3e\xf7\x3f\xf7\x1c\xf7\x1f\xf7\x3c\x1f"
+"\x0e\xd5\x20\x0a\xf7\x25\xf8\x0f\x20\x1d\xd5\x20\x0a\x57\xf8\x0f\x4f\x1d\xd5\x20\x0a\x64\xf8\x01\x25\x1d\xd5\x20\x0a\xfb\x24\xf8"
+"\x0f\x21\x1d\xd5\x20\x0a\x8c\xf8\x1c\x2c\x1d\x0e\xd5\x20\x0a\xf7\x0b\xf8\x07\x15\x6b\x87\x7f\x7b\x77\x1b\x84\x77\x53\x0a\x6b\x86"
+"\x4f\x0a\x88\x1f\xc9\x87\x0a\xa0\x9d\x87\x9b\x1b\xc6\xaa\xb5\xe0\x90\x1f\x0e\xd5\xf8\x0f\x74\x15\xf7\x4a\x8f\xf7\x08\xf2\x93\xf7"
+"\x39\x08\x45\x0a\xf7\x23\x06\x86\xca\x7e\xb3\x6c\xb4\x08\xd5\x53\x31\x8f\x0a\xfb\x27\xfb\x80\xfb\x15\xb1\x24\xd4\x45\x1f\xbb\x5e"
+"\xb2\x79\xe8\x7b\x60\x38\x18\x94\x9e\x95\x8e\x81\x1d\x7b\x50\x0a\x9e\x22\x0a\xf7\x8f\xf9\xbf\x20\x1d\x9e\x22\x0a\xcb\xf9\xbf\x2b"
+"\x1d\x9e\x22\x0a\xd9\xf9\xb1\x25\x1d\x9e\x22\x0a\x76\xf9\xbf\x21\x1d\x29\x1d\xd8\x39\x0a\x29\x1d\xfb\x10\xfa\x3c\x23\x0a\x6b\x0a"
+"\x29\x1d\xfb\x73\xfa\x3c\x21\x1d\xd5\x29\x0a\xf7\xa0\xf8\x3c\x15\x6b\x87\x7f\x7b\x76\x1b\x84\x78\x53\x0a\x6a\x87\x8c\x79\x1b\x53"
+"\x51\x1d\x95\x94\x43\x0a\xf7\x16\x24\x0a\xf7\x1f\xf7\xd7\x20\x1d\xf7\x16\x24\x0a\x58\xf7\xd7\x23\x0a\xf7\x16\x24\x0a\x65\xf7\xc9"
+"\x25\x1d\xf7\x16\x24\x0a\xfb\x1d\xf7\xd7\x21\x1d\xf7\x16\x24\x0a\xf7\x0d\xf7\xcf\x15\x6b\x87\x80\xaf\x1d\x97\x6a\x86\x4f\x0a\x88"
+"\x1f\xc9\x06\xab\x90\x97\x98\xa3\x1b\x94\x94\x89\x87\x97\x5f\x1d\xaa\xb5\xe0\x90\x1f\x0e\x9e\x2c\x0a\x35\xf7\xab\x2a\x0a\xd5\x25"
+"\x0a\xfb\x2a\xf7\x63\x20\x1d\xd5\x25\x0a\xfb\xe8\xf7\x63\x23\x0a\xd5\x25\x0a\xfb\xdb\xf7\x55\x25\x1d\xd5\x25\x0a\xfc\x3e\xf7\x63"
+"\x21\x1d\x9e\x2a\x1d\xc8\x39\x0a\x9e\x2a\x1d\xfb\x07\x38\x0a\x66\x31\x0a\xfb\x6f\xf7\x4a\x2a\x0a\x2f\x26\x1d\xc3\xf8\x8a\x20\x1d"
+"\x2f\x26\x1d\xfb\x1a\xf8\x8a\x7d\x0a\x2f\x26\x1d\xfb\x0d\xf8\x7c\x25\x1d\x2f\x26\x1d\xfb\x73\xf8\x8a\x21\x1d\x2f\x26\x1d\x39\xf8"
+"\x97\x2c\x1d\x0e\x2f\x26\x1d\xab\xf8\x82\x15\x6b\x87\xa7\x0a\x85\x4d\x1d\x96\x98\xa3\x1b\x94\x95\x43\x0a\x2f\xf7\xb7\x74\x15\xf7"
+"\x11\x8a\xea\xe1\x96\xf7\x11\x08\x5e\x1d\x55\x1b\x6c\x6d\x97\x9f\x7b\x1f\x73\xa8\x7d\xbf\xc4\x1a\xbe\x95\xba\x9c\xab\x1e\x5b\x1d"
+"\xf7\x1a\x06\x47\x0a\xfb\x38\xd7\x29\xf7\x1e\x79\x1f\x60\x36\x05\x94\x9e\x96\x8e\x9e\x1b\xaa\xa6\x1d\x71\x92\xa2\x59\x34\x0a\xc9"
+"\xaa\x85\xb8\x1b\xde\xb9\x52\x0a\x7c\x7e\x89\x86\x7e\x1f\x0e\x2f\x27\x1d\xb3\xf8\x4a\x20\x1d\x2f\x27\x1d\xfb\x2a\xf8\x4a\x7d\x0a"
+"\x2f\x27\x1d\xfb\x1d\xf8\x3c\x25\x1d\x2f\x5b\x0a\x30\x1d\xde\x43\x1d\x30\x1d\xfb\x0a\xf9\x89\x23\x0a\xf7\x63\x6e\x0a\x30\x1d\xfb"
+"\x6d\xf9\x89\x21\x1d\x66\x37\x1d\xf7\x69\xf7\x65\x15\x6b\x87\xa7\x0a\x85\x4d\x1d\x96\x98\xa3\x1b\x94\x95\x43\x0a\x66\x28\x1d\xf7"
+"\x1f\xf7\xd5\x20\x1d\x66\x28\x1d\x58\xf7\xd5\x23\x0a\x66\x28\x1d\x65\xf7\xc7\x25\x1d\x66\x28\x1d\xfb\x1d\xf7\xd5\x21\x1d\x66\x28"
+"\x1d\xf7\x0a\xf7\xcd\x15\x6b\x87\x7f\x7b\x77\x1b\x83\x78\x8e\x8e\x84\x4d\x1d\x97\x98\xa2\x1b\x95\xa2\x1d\x9f\x9e\x87\x9a\x1b\xc7"
+"\xaa\xb5\xe0\x8f\x1f\x0e\x2f\x34\x1d\x66\xf7\x85\x2a\x0a\x66\x26\x0a\xb0\x43\x1d\x66\x26\x0a\xfb\x2d\xf9\x89\x4f\x1d\x66\x26\x0a"
+"\xfb\x20\x41\x1d\x66\x26\x0a\xfb\x82\xf9\x89\x21\x1d\x2f\x2e\x0a\xfb\x12\xf7\x6d\x20\x1d\x2f\x2e\x0a\xfb\xc3\xf7\x5f\x25\x1d\xfb"
+"\x28\x36\x0a\xfb\x30\xf7\x48\x2a\x0a\xfb\x90\xb5\xf8\xde\x15\xfb\xd3\xed\xf7\x36\x07\xc8\xa0\xa6\xbb\xaf\x9b\x79\x62\x1e\xfb\x53"
+"\xed\xf7\x5a\x07\xb3\x87\xa1\x7f\x9d\x1e\xa9\x78\x63\x9e\x5f\x1b\x5f\x6d\x7d\x69\x71\x1f\xb3\x07\x0e\x9d\x6b\x1d\x0e\xf7\xbb\x6a"
+"\x1d\xf3\x39\x1d\x0e\xf7\xbb\x6a\x1d\xf7\xb9\xb6\x1d\xf7\x4e\xf8\xc8\x2f\x1d\xfc\xa2\xfb\x22\x3c\x0a\xf9\x69\xfb\xe9\x71\x1d\x66"
+"\x65\x73\x0a\x0e\xf7\x4e\xf8\xe9\x2f\x1d\xcd\xfc\x77\x61\x1d\x3c\x3c\x51\x5a\x49\x62\x9c\x7a\x0a\x3a\xf7\x1a\x15\xb1\xa5\x75\x6a"
+"\x6a\x71\x74\x65\x66\xb7\x1d\xb0\x1f\xfb\x3c\x04\xb4\xa5\x70\x5e\x62\x71\x70\x62\x62\x71\xa6\xb5\xb6\xa5\xa7\xb4\x1f\xfc\xa3\xf7"
+"\xa5\x15\xa6\x9d\x89\x89\x94\x1f\xa7\x84\x9d\x74\x6e\x1a\x68\x71\x72\x67\x61\x76\xa0\xb8\x89\x1e\x2f\x06\x30\x8c\xc3\x57\xec\x1b"
+"\xec\xca\xc1\xdf\xba\x75\xad\x5f\xa1\x1f\xad\xa0\x9d\xaa\xb0\x1a\xd2\x52\xb9\x33\x57\x60\x7a\x6b\x72\x1e\x78\x74\x84\x72\x88\x59"
+"\x08\xe4\x06\xc2\x8c\x9a\x9e\xb4\x1b\xab\xa0\x76\x6a\x65\x71\x77\x59\x1f\x81\x06\x0e\xf7\x4e\xf8\xdc\x2f\x1d\xda\xfc\x77\x61\x1d"
+"\x3d\x3c\x51\x5a\x49\x62\x9b\x7a\x0a\x3b\xf7\x1a\x15\xb0\xa5\x74\x6b\x6a\x71\x74\x65\x67\x71\xa3\xab\xab\xa5\xa2\xb0\x1f\x8a\xfb"
+"\x3c\x15\xb4\xa5\x70\x5e\x62\x71\x70\x62\x62\x71\xa6\xb5\xb6\xa5\xa7\xb4\x1f\xfc\x08\xf8\xa4\x15\xfb\x77\x06\x65\xfb\x81\x05\xd7"
+"\x06\xa0\x94\x9e\x97\xa4\x1b\xb7\xa4\x6c\x57\x59\x71\x6c\x61\x66\x76\x9d\xae\x89\x1f\x39\x06\x42\x8a\xc5\x57\xde\x1b\xe7\xc9\xca"
+"\xe7\xe2\x55\xc7\x3c\x6f\x76\x84\x78\x73\x1f\x98\xe4\x05\xf7\x44\x06\x0e\xf7\x4e\xf8\xbf\x2f\x1d\xe7\xfc\x77\x71\x1d\x65\x66\x73"
+"\x0a\xfb\xc1\xf8\xa4\x15\xfb\xbf\x40\xf7\x67\x06\x2f\xfb\x05\x64\x2f\x79\xfb\x26\x08\xe0\x06\x93\xf7\x1b\xb7\xf2\xef\xf7\x0e\x08"
+"\x0e\xf7\xf4\x6f\x1d\xf7\x9c\xf7\xe0\x20\x1d\xd5\x20\x0a\xd4\xf8\x06\x42\x0a\xd5\x20\x0a\x0e\xd5\x20\x0a\xfb\x60\xf7\x40\x23\x1d"
+"\xd5\x20\x0a\xf7\x29\xf7\xe9\x28\x0a\xd5\xf8\x89\xf7\x27\x15\xbb\xfb\x27\x05\xd6\x06\x3d\x6f\x5d\x58\x50\x1a\x4e\xc0\x69\xea\xa6"
+"\xa0\x8e\x91\xa6\x9f\x0a\x74\x9b\xb0\xbc\xb7\xbd\xd0\xa9\x1f\x71\x0a\x0e\xd5\x20\x0a\x89\xf8\x1c\x2c\x1d\xa9\xf7\x3d\x20\x1d\xd5"
+"\x5e\x0a\xd5\x2d\x0a\x6e\xf8\x5a\x20\x1d\xd5\x2d\x0a\xfb\x04\xf7\xc4\x7c\x0a\xd5\x2d\x0a\xfb\x70\xf8\x5a\x2b\x1d\xd5\x2d\x0a\xfb"
+"\x0b\xf8\x4c\x27\x0a\x9e\x62\x0a\xd5\x6e\x1d\xa8\xf9\x29\x2a\x0a\xd5\x5d\x0a\x67\x8f\x16\xf8\xf0\x06\xfb\x97\xf9\x0a\x05\x33\x06"
+"\xb7\x25\x15\xf7\x4b\xfc\x5b\x05\xfc\x01\x06\x0e\x9e\x22\x0a\xf7\x8b\xf9\xb6\x74\x0a\x9e\x22\x0a\xf7\x3b\xf9\x29\x15\xf7\x00\x3a"
+"\x0a\x9e\x22\x0a\xf7\x3f\xf9\xb1\x27\x0a\x9e\x22\x0a\xf7\x9d\xf9\x99\x28\x0a\xd6\xf8\x1e\xfb\xb3\x15\x86\xb6\xb0\x89\xa9\x1b\xc7"
+"\xb6\x9c\xad\xa2\x1f\x9d\xa6\x92\xac\xd0\x1a\xf8\xef\x07\xea\x77\xc3\x58\xb8\x1e\xb0\x62\x54\x9e\x4d\x1b\x2d\x4a\x67\x39\x58\x1f"
+"\xf5\x33\x0a\xf8\x56\x07\xb9\x9c\xb2\xaa\xa5\x1e\xa1\xa6\xab\x95\xbe\x1b\xea\xae\x69\x2c\x1f\xfc\xb7\x07\x51\x80\x7e\x5e\x79\x7e"
+"\x8d\x8f\x74\x1e\x0e\x9e\xf7\x79\x99\x1d\xf8\x6b\x06\x35\x64\x64\x60\x53\xbb\x1d\xa6\x1e\xba\x07\x88\x79\x78\x89\x77\x1b\x58\x73"
+"\x9c\xaf\xba\xb0\xb6\xd2\xb2\x1f\xf7\x11\xfc\x1f\x07\x0e\x9e\x22\x0a\x0e\xf7\x61\xf8\x00\x4e\x1d\xfb\x66\xf8\xf0\x23\x1d\xd5\x84"
+"\x1d\xf7\x96\xf9\x1a\x55\x1d\xfb\x66\xf8\x22\x23\x1d\x2f\xa9\xf7\xd2\x15\x73\x47\x05\xd3\x06\x98\x4b\x9f\x57\xaa\x5d\x08\x48\xb8"
+"\xde\x5f\xda\x1b\xb2\xad\x93\xa5\xda\x1f\xf7\x29\x07\x61\x3d\x6f\x81\x63\x1b\x4f\x5b\xbe\xe6\x71\x1f\xf7\x49\x06\xa4\xcf\x05\xfb"
+"\x6d\x06\x89\x95\x8b\x92\x95\x1a\x99\x8c\x96\x8d\x9b\x1e\xf7\x84\x06\xa3\xcf\x05\xfb\x8f\x06\xe7\xa3\xb8\xbb\xc9\x1b\xb9\xb0\x7a"
+"\x59\xca\x1f\xb8\xf7\x15\x05\xc0\x43\x63\x9a\x45\x1b\xfb\x24\x22\x28\xfb\x3f\x66\x1f\x5b\x06\x73\x47\x05\xca\x06\x8a\x7f\x8b\x82"
+"\x7f\x1a\x7f\x8b\x82\x8d\x7d\x1e\x0e\x5c\xd5\x16\xf7\x2a\xf8\xf0\xf7\xfe\xf7\x11\xfc\x94\x06\x0e\xf7\x16\x35\x1d\xfb\x49\xfa\x35"
+"\x15\x53\x06\x5c\x82\x75\x78\x5e\x1b\x5e\x72\xa0\xb8\x85\x1f\x53\x81\x06\x3f\xc3\x52\xd7\xd6\xc4\xc4\xd6\x1e\x0e\xf7\x16\x35\x1d"
+"\xfc\x09\xfa\x3e\x2b\x1d\xf7\x16\x35\x1d\xfc\x0f\x51\x15\xfb\x04\xce\x07\x8c\x59\x75\x6d\x5d\x82\x08\x5d\x07\xd1\x8d\xc2\xcb\x35"
+"\x0a\xf2\x07\x0e\xf7\x16\x35\x1d\xfb\xab\xfa\x30\x27\x0a\xd5\xf8\x8f\xf7\xdf\x15\xfb\xdf\xf7\x2a\xf8\xad\xce\xdb\x48\xf7\x04\xfb"
+"\x2a\xfb\x04\xfb\xb5\xf7\x04\xfb\x2a\xfb\x04\x48\x3b\xce\xfc\xad\x2e\x1d\x07\xf7\xb5\xf7\x11\x15\xfb\xb5\xdc\xf7\xb5\x06\x0e\xd5"
+"\xf8\x8f\x55\x1d\xe7\xf8\xf1\x2b\x1d\xf7\x1d\xf7\x6a\x31\x1d\xf7\xfd\x7a\x1d\x0e\x29\x1d\xc5\xfa\x33\x74\x0a\x29\x1d\x77\xfa\x2e"
+"\x27\x0a\x29\x1d\xc8\xfa\x16\x15\xfb\xa4\x3c\xf7\xa4\x06\x0e\xf7\x69\x5c\x1d\xdf\x06\x3e\x62\x67\x60\x57\x1a\x4f\xbe\x66\xdd\xa2"
+"\xa0\x8e\x91\xa5\x1e\xba\x07\x88\x7b\x76\x89\x7e\x1b\x66\x71\xa0\xa9\xb6\xab\xba\xc4\xb4\x1f\x0e\x29\x1d\x0e\x6b\x0a\xfb\x42\xf7"
+"\xfd\x31\x1d\xfb\x66\xf9\x6d\x23\x1d\x29\x1d\xb4\xfa\x34\x15\x6b\x88\x7f\x7b\x76\x1b\x84\x78\x8e\x8e\x83\x1f\x44\xa4\x05\x97\x6a"
+"\x86\x8c\x79\x1b\x54\x51\x1d\x95\x94\x89\x87\x96\x5f\x1d\xaa\xb5\xe0\x90\x1f\x0e\x2f\x77\x1d\xfb\x13\xf7\x63\x2b\x1d\xd5\x79\x1d"
+"\xd5\xf7\x74\xf7\x88\x15\xd6\xd9\xf7\x83\xfb\xd6\x05\xf7\x47\x06\xfb\xd6\xf8\x33\xf7\xb7\xf7\xce\x05\xfb\x45\x06\xfb\xb1\xfb\xd4"
+"\x05\xf7\xd4\x33\x0a\x07\xe6\x4f\x22\x1d\x66\x38\x1d\xcf\xf9\xbf\x20\x1d\x9e\x86\x16\xf7\x2d\x06\xf7\x4e\xf8\xc1\xf7\x4d\xfc\xc1"
+"\x05\xf7\x2d\x06\xfb\x97\xf9\x6d\x56\x0a\x0e\x66\x38\x1d\xef\xf8\xf0\x22\x1d\x66\x38\x1d\xb2\xfb\x4d\x22\x1d\x66\x38\x1d\xf7\x2b"
+"\xf7\xc0\x3e\x0a\xf7\x4d\x66\x0a\xd5\x29\x0a\xf7\xae\xf8\x44\x20\x1d\xd5\x29\x0a\xf7\x5b\xf7\xae\x7c\x0a\xd5\x29\x0a\xdd\xfc\xc8"
+"\x22\x1d\xd5\x29\x0a\x0e\xf7\x16\x24\x0a\xd6\xf7\xce\x42\x0a\xf7\x16\x24\x0a\xd1\xf7\xd7\x32\x0a\xf7\x16\x24\x0a\xf7\x2a\xf7\xb1"
+"\x28\x0a\xf7\x52\xf8\x19\x7b\x0a\xf7\x0c\x98\x1d\xf7\xcd\xf7\x11\xfb\x38\x07\xb6\xa6\xa0\xa0\x0a\xf7\x5b\xfb\x27\xf7\x25\xfb\x5f"
+"\xfb\x5f\xa5\x1d\xa0\x7a\xb6\x70\x08\xfb\x38\xfb\x11\xf7\xcd\x06\xfb\xaa\xf9\x6d\x23\x1d\xf7\x16\x24\x0a\x0e\xf7\x45\xf8\x46\x3f"
+"\x0a\xfb\xde\xf7\x08\x23\x1d\xf7\x16\x5a\x0a\x6a\xf8\x11\x20\x1d\xf7\x41\xf7\xf1\x7d\x15\xf7\x11\xe4\x06\xcf\x91\xb4\x96\xb7\xa3"
+"\x08\xe0\xb9\xbd\xe7\xf7\x03\x1a\xf7\x02\x59\xe7\x36\xb9\x1e\x5f\xa3\x62\x96\x47\x91\x08\xe4\xfb\x11\x32\x07\x4a\x85\x64\x80\x61"
+"\x75\x08\x33\x5e\x54\x2a\xfb\x00\x1a\xfb\x01\xc2\x2a\xe3\x5e\x1e\xb5\x75\xb2\x80\xcc\x85\x08\xf7\x09\x04\x2c\x9c\x57\xc8\xea\x1a"
+"\xeb\xbe\xc6\xeb\x9a\x1e\xf7\x11\x16\xb8\x85\xa2\x82\xa2\x78\x08\xae\x6e\x9f\x5a\x55\x1a\x2c\x55\x4a\x2f\x7a\x1e\x0e\xd5\xcd\x16"
+"\xf7\x2a\xf8\xf0\xf7\xb4\xfc\xf0\xf7\x2b\xf9\x6d\xfc\xe1\x06\x0e\xf7\x35\xf7\xe1\x16\xf7\x27\xf7\x16\x06\xd8\x8e\xc9\x9e\xb9\xb0"
+"\xd4\xc9\x9f\xd3\x8a\xf7\x50\x08\xf7\x6e\xfb\x2a\xfb\x6e\x07\xfb\x21\x87\x6b\x75\x69\x1e\x6a\x71\x69\x7a\x62\x1b\xf8\x6f\xfb\x27"
+"\xfc\x6f\x07\x66\x6d\x97\xa6\x72\x1f\x6c\xad\x86\xab\xf7\x2c\x1a\xf7\x6e\xfb\x2a\xfb\x6e\x07\x8a\xfb\x41\x9a\x4b\xc3\x4b\xba\x59"
+"\xd1\x70\xe6\x88\x08\x0e\xd5\x3b\x1d\xde\xf8\x9e\x15\xfb\x13\x06\x46\xfb\x2a\x05\xd0\x06\x0e\xd5\x3b\x1d\xf8\x08\x04\xf6\x3a\x0a"
+"\xd5\x3b\x1d\x2e\xfc\x6e\x22\x1d\x9e\x74\x1d\x9e\x2c\x0a\x8a\xf8\x41\x20\x1d\x9e\xf7\xe8\x74\x15\xf7\x57\x94\xed\xda\xf7\x29\x1a"
+"\xf7\x06\x51\xc7\xfb\x1b\xa5\x1e\x7e\x0a\xf7\x20\x06\x67\x0a\x95\xfb\x26\xdf\x3e\xf7\x3f\x79\x61\x38\x18\x95\x9e\x95\x8d\x78\x0a"
+"\xdd\xb9\xac\xc7\xb8\x6e\xa5\x5b\x7c\x80\x89\x87\x7c\x1f\x0e\x9e\x2c\x0a\xfb\x5c\xf8\x41\x23\x0a\x9e\x2c\x0a\xfb\x4d\xfc\xcb\x22"
+"\x1d\x5b\xa5\x16\xf8\xbd\xf7\x11\xfc\x02\x06\xf7\x7e\xf7\x87\xfb\x7a\xf7\x80\x05\xf7\xee\xf7\x11\xfc\xaa\xfb\x11\x06\xf7\x7e\xfb"
+"\x80\xfb\x81\xfb\x8d\x05\x0e\x66\x42\x1d\x0e\x66\xf8\x15\xf8\x5a\x15\xf7\x2a\xf7\x69\xf7\x11\xfc\xdc\xfb\x11\xf7\x71\xfb\x2a\xfb"
+"\x26\x3b\xf7\x26\xfc\x0a\xf7\x2a\xf8\x0a\xf7\x27\xdb\x07\x0e\x66\x42\x1d\x74\xf9\xa6\x2a\x0a\x66\xf7\xff\x16\xa1\xf8\xf0\xf7\x69"
+"\xf7\x11\xfc\xdc\xfb\x11\xf7\x71\xfc\xf0\xe0\x06\x55\x21\x05\x95\x9e\x95\x8d\x57\x1d\x74\x92\xa2\x56\x9c\x1d\x7c\x49\x1d\x0e\xf7"
+"\x16\xf8\xa1\xf8\x2b\x15\xfb\x9f\x29\xf7\x9f\x06\xfb\x1b\xf8\x44\x6c\x1d\x0e\xd5\x25\x0a\xfb\x6c\xf7\x5a\x42\x0a\xd5\x25\x0a\xfb"
+"\x71\xf7\x63\x32\x0a\xd5\x25\x0a\xfb\x1f\xf7\x3d\x28\x0a\xd5\xf8\xe9\xfb\x45\x15\x87\x78\x79\x89\x76\x1b\x57\x72\x9c\xad\xae\x9e"
+"\xae\xb9\xbc\x1f\xf7\x00\xf7\x03\x9a\xaa\x8f\xf5\x08\xf8\x82\xfb\x2a\x85\x1d\xe6\x1b\xb2\xa2\x8e\x98\xba\x1f\x3e\x5b\x70\x68\x5b"
+"\x1a\x62\xa1\x6f\xb9\x7c\x1e\x83\xa3\xa4\x87\xa6\x1b\xa8\xa3\x8e\x92\xa6\x1f\x0e\x9e\x2a\x1d\x0e\x9e\x2a\x1d\xfb\x0f\x38\x0a\xf7"
+"\xab\xf8\xee\xf7\xa2\x15\xf7\x7b\xf8\x5f\x05\xfb\x3c\x06\xfb\x1f\xfb\xd6\xfb\x29\xf7\xd6\x05\xfb\x3b\x06\xf7\x86\xfc\x5f\x05\xfb"
+"\xa2\xf7\x2a\x07\xfc\x3a\xf9\x6d\x23\x1d\xd5\x25\x0a\xfb\xb4\xf7\x70\x2c\x1d\x0e\xd5\x25\x0a\xfb\x45\xf7\x5b\x15\x6b\x87\x7f\x7b"
+"\x77\x1b\x84\x77\x53\x0a\x6b\x86\x4f\x0a\x88\x1f\xc9\x87\x0a\xa0\x9d\x87\x9b\x1b\xc6\xaa\xb5\xe0\x90\x1f\x0e\xf7\xbc\x2f\x0a\xad"
+"\x39\x0a\xf7\xbc\x2f\x0a\xfb\x42\xfa\x3c\x2b\x1d\xf7\xbc\x2f\x0a\xfb\x35\x38\x0a\xf7\xbc\x2f\x0a\xfb\x86\xfa\x3c\x21\x1d\x87\xa6"
+"\x16\xf8\xe1\xf7\x11\xfc\xe1\x06\xae\xf7\x51\x15\xf8\x93\xf7\x11\xfc\x93\x06\x6d\xf7\x39\x15\xf8\xd6\xf7\x11\xfc\xd6\x06\x0e\x9e"
+"\x2a\x1d\xfb\x1c\xfa\x3c\x23\x0a\x9e\x2a\x1d\xfb\x48\xfa\x3c\x21\x1d\x66\x31\x0a\xfb\x1d\xf7\xe0\x20\x1d\x66\x31\x0a\xfb\x6c\xf7"
+"\xd2\x27\x0a\x66\x31\x0a\x0e\x2f\x26\x1d\xbf\xf8\x81\x86\x1d\xf7\x85\x58\x0a\xfb\x35\xf8\x4a\x20\x1d\xf7\xf4\xab\x1d\xd5\xf8\x86"
+"\xa2\x0a\xfb\x87\xf9\x6d\x05\xfb\x43\x8c\x1d\x0e\xd2\xd5\x16\xf7\xf3\x06\xf7\x20\xf3\xe9\xf7\x11\xf7\x0e\xfb\x00\xed\xfb\x1c\x1f"
+"\xfb\x5d\xf7\x39\xf8\x0f\xf7\x11\xfc\xa5\x06\xf7\x2a\xfc\xf0\x15\xf7\x51\xf7\x6b\x07\xb8\xae\x62\x54\x54\x6a\x65\x5c\x1f\x0e\xd5"
+"\xda\x16\xf7\xdd\x06\xdf\xc2\x9b\xb0\xb7\x1f\xb7\xb0\xa7\xc8\xc6\x1a\xd3\x65\xc4\x38\xbb\x1e\xd4\xb9\xa6\xb5\xc9\x1a\xbe\x73\xbf"
+"\x62\xaf\x1e\xb0\x61\x59\x9b\x3e\x1b\xfb\xdd\x7e\x1d\x3a\x8d\x0a\x0e\xcb\x7e\xfb\x1c\x15\xf7\x2a\xf7\x1c\xf8\x3b\xfb\x1c\xf7\x2a"
+"\xf7\x99\x49\xf8\xf0\xfc\x74\xfc\x55\x06\x8c\x35\x48\x47\x35\x8a\x08\x72\x06\xf8\x8f\x16\xfb\x9b\x06\xbe\xad\xab\xc4\xc5\x1a\xf7"
+"\xde\xf7\x48\x07\x0e\x9e\xf7\x73\x4e\x1d\x0e\xa0\xf7\x74\xf7\xce\x15\xf7\xf1\xf7\x11\xfb\xf1\xf7\x39\xf8\x0d\xf7\x11\xfc\xa3\xfd"
+"\x6d\xf8\xb5\xf7\x11\xfc\x1f\x06\xdf\xf9\xb1\x25\x1d\xf7\x94\xf8\x0d\x16\x2e\x1d\xe2\x83\x0a\xfb\x2b\xc4\x1d\x2d\xf7\xa5\xfb\x2a"
+"\xfb\xa5\x24\x94\x1d\xf7\x1a\xf7\xdf\x05\xec\x06\x0e\x75\xc6\xf7\x86\x15\x6f\x07\x4a\x9d\x58\xb0\x63\x1e\x58\xba\xd5\x6d\xdb\x1b"
+"\xf7\x25\xf7\x03\xf2\xf7\x19\xe1\x61\xcc\x42\xa4\x1f\xcc\xaf\xaa\xbd\xd0\x1a\xf7\x06\x26\xde\xfb\x1e\x3f\x42\x72\x63\x61\x1e\x64"
+"\x66\x7b\x5e\x44\x1a\x72\xf7\x2a\xa4\x07\xc3\xad\xad\xc4\xc3\xb1\x69\x59\x56\x62\x66\x51\x1e\x5e\xfb\x11\xc3\x06\xa2\xa2\x84\x7e"
+"\x9f\x1f\xa6\x79\x97\x71\x64\x1a\x49\x64\x63\x4c\x66\x6c\x98\xa1\x7a\x1e\x7b\xa0\x84\xa7\xc0\x1a\x0e\xd2\x3e\x1d\x0e\xd2\x3e\x1d"
+"\xf8\x08\xf7\x60\x15\x5a\x85\x70\x72\x5f\x1b\x5e\x71\xa4\xbc\x84\x1f\x33\x06\x8c\x65\x8e\x7b\x95\x76\x08\x55\xa7\xbe\x6f\xd4\x1b"
+"\xce\xba\xa2\xbb\xa9\x1f\x9b\xa4\x8f\x9d\x8d\xb6\x08\x0e\x65\xc5\x16\x2e\x1d\xe5\x06\x7f\x0a\x26\xfb\xa5\x05\x35\xf7\xa5\xfb\x2a"
+"\x06\x0e\xc1\x90\x16\xdf\x06\xdf\x8a\xd5\xd3\x35\x0a\xf8\x5b\xf7\x7b\xfc\xf0\x2b\x0a\xfc\xa7\xfc\xcd\x07\x73\x8a\x7f\x80\x74\x1b"
+"\x56\x06\x0e\xf7\x4d\xf7\x68\x68\x0a\xd5\xa3\x0a\x2b\x0a\x89\x0a\xf7\x16\xf8\x18\x3f\x0a\x0e\xd2\xd3\x16\xf7\x2a\xf8\xf2\xf7\xa8"
+"\xfc\xf2\x2b\x0a\xfc\xd4\x06\x0e\x9e\xf7\x6f\x76\x1d\xd5\xf9\x3d\xf8\x76\x15\xb8\x1d\x30\x8f\x0a\xfb\x26\xfb\x81\xfb\x7f\xf7\x12"
+"\xfb\x26\xf7\x5f\xf7\x49\xf7\x0c\xf4\xf7\x3b\x94\x1f\xfb\x24\x77\x0a\x0e\x66\xf8\x14\x9d\x1d\x0e\x71\x73\x1d\x0e\xf7\x62\xf7\xf3"
+"\x16\xf7\x2a\xf0\xbc\x06\xf7\x2a\xf7\x04\xf7\x05\xf7\x2c\xf7\x2a\xfb\x04\xf7\x04\xfb\x2a\x1f\x5a\xf0\xfb\x2a\x26\x55\x06\xfb\x2a"
+"\xfb\x04\xfb\x04\xfb\x2a\xfb\x2c\xf7\x04\xfb\x05\xf7\x2a\x1f\xc1\x06\x88\xf8\x26\x15\xfb\xa9\x72\x07\x3a\x52\xc5\xdd\xdc\xc3\xc3"
+"\xdd\x1f\xf7\x48\x16\x9f\x06\xdd\xc4\x53\x3a\x39\x52\x51\x39\x1f\x77\x06\x0e\x9e\xf8\x33\xf8\x06\x15\xf7\x79\xf7\xfb\x05\xfb\x43"
+"\x06\xfb\x1e\x81\x0a\xf7\x3e\x06\xf7\x1f\xf7\x91\xf7\x1e\xfb\x91\x05\xf7\x43\x06\x0e\xdd\xcf\x16\xf8\x76\xfb\x33\xf7\x2a\xf7\xb0"
+"\x49\xf8\xf0\x91\x0a\xc2\xf8\x81\x16\x2b\x0a\x6c\x0a\xf7\xf9\xbc\x16\xfa\x1e\xf9\x6d\xfb\x2a\xfc\xf0\xfb\x78\x57\x0a\xfc\xf0\xfb"
+"\x78\x60\x1d\xf8\x07\xbf\x16\xf9\xba\xfb\x33\xf7\x2a\xf7\xb0\x49\x57\x0a\xfc\xf0\xfb\x71\x57\x0a\xfc\xf0\xfb\x6f\x60\x1d\xf7\x72"
+"\xf7\x9a\x16\xf7\xca\x06\x53\x1d\xfc\x20\xfb\x11\xf7\x8a\x06\xf7\x2a\xfc\x73\x4a\x0a\xf7\xdf\xf6\x16\xf7\xca\x06\x53\x1d\xfb\x2a"
+"\x06\xf7\x2a\xfc\xf0\x76\x0a\xf7\xc5\xfb\x11\x15\x48\x1d\x06\x0e\xd2\xef\x16\xf7\xca\x06\x53\x1d\xfb\x2a\x06\xf7\x2a\xfc\xf0\x4a"
+"\x0a\xca\xf8\xa5\xf7\xce\x15\xfb\x1a\x7c\x4a\x40\x23\x1b\x2f\x4f\xbf\xf7\x02\x69\x1f\xfb\x20\x5e\x05\xfb\x2f\xba\xf7\x0d\x31\xf7"
+"\x36\x1b\xef\xda\xae\xd1\xc7\x1f\xc6\xd0\xad\xf0\xf6\x1a\xed\x6e\xe9\x58\xcf\x1e\xdc\x50\x35\xb4\xfb\x00\x1b\xfb\x20\x23\x4b\xfb"
+"\x11\x4c\x1f\xf7\x16\x4b\x05\xe2\xb3\xc0\xb1\xdc\x1b\xc7\xbd\x70\x5c\xaa\x1f\x9d\x6e\x93\x75\x96\x5a\x08\xfb\xbc\xfb\x11\x06\x0e"
+"\xf8\x13\xf7\x5f\xf8\x5c\x15\xf7\xa5\x33\x0a\xf7\xdf\xf5\x07\x90\x46\x9a\x50\xa8\x55\x08\xfb\x06\xc8\xed\x51\xf7\x18\x1b\xef\xdc"
+"\xad\xce\xc7\x1f\xca\xd1\xaf\xf1\xf7\x01\x1a\xf7\x01\x67\xf1\x4c\xd1\x1e\xce\x4f\x3b\xad\x26\x1b\xfb\x40\xfb\x0c\x24\xfb\x4a\x64"
+"\x1f\xf7\xde\xf7\x31\x15\xf7\x09\xd5\x27\xfb\x32\xfb\x2a\x3f\x27\xfb\x06\xfb\x08\x40\xef\xf7\x2e\xf7\x2e\xd6\xef\xf7\x07\x1f\x0e"
+"\xd2\xf8\x81\x16\x2b\x0a\xfb\xe9\x06\x4c\x5a\x7a\x66\x61\x1f\x5b\x61\x70\x4e\x4d\x1a\x5a\x9b\x59\xa8\x66\x1e\x9b\x76\x9b\x80\xac"
+"\x7d\x53\x89\x6a\x61\x8c\x47\x08\xfb\x0d\x07\x87\x4f\x7f\x72\x6e\x81\x08\xf7\x1e\x06\xae\x8a\x9e\xa7\x8e\xc4\x08\xf7\x1f\x07\xaf"
+"\x99\x99\xb1\x8d\x1e\xf7\x58\x06\xf7\x11\x04\xfb\x42\x06\x51\x65\xb3\xc8\xc7\xb3\xb6\xc3\x1f\xf7\x42\x06\x0e\xfb\x35\xf8\x03\x21"
+"\x0a\xfb\xb4\xfd\x6d\xbe\x1d\x06\xe4\x4e\x0a\xf7\x81\xf7\x91\x16\xf7\x2a\xf7\xb8\x06\xb8\xa6\xbe\xa3\xce\x1b\xc5\xad\x71\x60\x1f"
+"\xfb\x05\x07\x89\x69\x73\x76\x67\x8c\x08\x44\xfb\x11\xf7\x14\x06\xdc\x87\xd2\xd0\x8e\xe0\x08\xf7\x43\x07\xb2\x7e\xb0\x74\xa8\x1e"
+"\xb3\x6a\x5b\x9e\x46\x1b\x3b\x4c\x76\x5e\x51\x1f\xf7\x49\xf7\x56\xf7\x11\xfc\xb7\xfb\x11\xf7\x5f\x07\x0e\x3a\x8d\x0a\xf7\x0a\xcd"
+"\x15\xf7\x04\x06\xe3\x4e\x0a\xca\xf8\x78\xf7\xce\x15\xf7\x11\xfb\xbc\x07\x96\xbc\x93\xa1\x9d\xa8\x08\xba\xaa\xbd\xa6\xc7\x1b\xdc"
+"\xc0\x65\x34\xb3\x1f\xf7\x16\xcb\x05\xf7\x11\x4c\x23\xcb\xfb\x20\x1b\x28\x3b\x68\x48\x50\x1f\x4f\x46\x68\x24\xfb\x00\x1a\x2a\xa7"
+"\x2e\xbd\x47\x1e\x38\xc8\xdf\x62\xf7\x01\x1b\xf7\x36\xf7\x09\xe2\xf7\x32\xbe\x1f\xfb\x20\xb8\x05\xfb\x02\x69\x4f\x57\x2f\x1b\x23"
+"\x4a\xd6\xf7\x1a\x7c\x1f\x0e\x9e\xf8\xf3\xf8\x8f\x15\xf7\x2b\x8a\x26\xde\xfb\x4d\x1b\xfb\x42\x95\x0a\xf0\x77\x05\xf0\x78\xb0\x6f"
+"\x50\x1a\x4e\x53\x66\x30\x25\x52\xb5\xda\x86\x1e\xfb\x26\x06\xfb\x30\x94\xf6\x36\xf7\x4e\x1b\xf7\x51\xf7\x02\xe2\xf7\x2a\xf7\x06"
+"\x50\xc7\xfb\x1a\xa5\x1f\xfb\x06\xa1\x05\xfb\x00\xa0\x6d\xa0\xc0\x1a\xc3\xbb\xad\xd9\xea\xc0\x63\x41\x90\x1e\x0e\xf7\x6a\x31\x1d"
+"\x0e\xfc\x08\xf7\x68\x6d\x0a\x2f\xf7\xe7\x21\x0a\xfc\xab\x07\x51\x6e\x6c\x56\x53\x73\xa5\xca\x1e\xd7\xfb\x2a\x3f\x07\x40\x9d\x5d"
+"\xb6\x64\x1e\x65\xb5\xc3\x78\xcf\x1b\xf7\x2a\xe0\xd9\xf7\x1f\x1f\xf8\xab\x07\x0e\xf8\x52\x9b\x16\xdf\x06\xdf\x8a\xd5\xd3\x35\x0a"
+"\xf8\x5b\xf7\x7b\xfc\xf0\xf7\xca\x07\xf7\x1e\xf0\xea\xf7\x17\xf7\x17\x27\xea\x59\x1d\xfc\xa7\xfc\xcd\x06\x73\x8a\x7f\x80\x74\x1b"
+"\x56\x06\xf9\x00\x16\xf7\x5e\xf7\x34\x07\xc2\xad\x65\x4d\x4d\x68\x63\x55\x1f\x0e\xf8\x33\xf7\x5e\xf7\xdf\x15\xf7\xb5\xfb\xdf\xf7"
+"\xca\x06\xf7\x1e\xf0\xea\xf7\x17\xf7\x18\x27\xe9\x59\x1d\xa3\x1d\xf8\x4b\xf7\x11\x4a\x0a\xf7\x77\xf7\x8b\x16\xf7\x2a\xf7\xb8\x06"
+"\x95\x9c\x91\x94\x94\x94\x08\xa0\xa0\xb6\x98\xbf\x1b\xbf\xa2\x85\x7c\x99\x1f\x96\x7d\x92\x7a\x7a\x1a\xfb\xb8\xf7\x2a\xf7\xd9\x07"
+"\xb0\x7d\xb3\x73\xa7\x1e\xb5\x69\x5c\x9c\x38\x1b\x2d\x63\x7d\x57\x4d\x1f\xf7\x49\xf7\x59\xf7\x11\xfc\xa7\xfb\x11\xf7\x4c\x07\x0e"
+"\x65\xac\x16\x2e\x1d\xe1\x83\x0a\xfb\x2c\x06\x2b\xfb\xa5\x05\x34\xf7\xa5\xfb\x2a\x06\xf7\x68\xcd\x15\xf7\x03\x06\xe4\x4e\x0a\x71"
+"\x73\x1d\xf7\xe5\xf9\xbc\x15\x5a\x84\x71\x72\x5e\x1b\x5f\x70\xa4\xbc\x85\x1f\x32\x06\x8c\x65\x8f\x7b\x95\x76\x08\x55\xa6\xbf\x6f"
+"\xd3\x1b\xcf\xba\xa2\xbb\xa9\x1f\x9a\xa4\x90\x9d\x8c\xb6\x08\x0e\x2f\xf8\xa0\x9c\x15\x74\xa1\x84\x9c\xa6\x1a\xf7\xc0\x07\xf7\x02"
+"\x3f\xc3\xfb\x28\x60\x0a\xf7\x2d\x06\xfb\x3e\xf7\x6d\x15\x3a\x63\x5d\x44\x5c\x6e\xa4\xb3\xb5\xa1\x9f\xc5\x97\x1e\xbb\x94\xb0\x92"
+"\x91\x8d\x9b\x93\x19\x0e\x6d\xf8\x0c\xf9\xe3\x15\x89\x40\x79\x6f\x56\x7c\x2c\x6d\x5d\x6e\x61\x51\x08\x56\x44\x72\x2a\xfb\x17\x1a"
+"\x32\x94\x4c\x9e\x61\x1e\x31\xb3\xe3\x57\xf7\x03\x1b\xf7\x3a\xf0\xf7\x00\xf7\x46\xdc\x77\xcc\x62\xbd\x1f\xc1\x5e\x46\xab\x44\x1b"
+"\x54\x5a\x7b\x67\x56\x1f\x93\xcb\xb8\xa9\xf7\x0c\xa4\xf7\x1a\xa7\xb0\xbc\x90\xf7\x32\x08\xfb\x69\xfc\x2f\x50\x1d\x6a\xe2\x16\xf7"
+"\xcb\x06\xe7\xcd\xca\xe3\xcd\x6b\xb5\x48\xa1\x1f\xc7\xa4\xa7\xb2\xc4\x1a\xd9\x4b\xc7\x38\x1e\xfb\xcb\x06\xf7\x20\xfc\x3f\x15\xf7"
+"\x0c\xf7\x18\x07\xab\xa4\x70\x6a\x69\x72\x71\x6b\x1f\xfb\x18\xf7\x6b\x15\xee\xf7\x18\x07\xa6\x9e\x77\x6e\x6d\x78\x77\x70\x1f\x0e"
+"\xfb\x7b\x90\x0a\x0e\x7e\x92\xfb\x04\x15\xf7\x20\xf7\x04\xf7\xdd\xfb\x04\xf7\x20\xf7\x75\x59\xf8\x3f\xfc\x3d\xfb\xbd\x06\x3d\x8c"
+"\x6c\x57\x5b\x1b\x53\x06\xf8\x37\x16\xfb\x63\x06\xb4\xac\x9f\xba\x8c\xd0\x08\xf7\x39\xf7\x25\x07\x0e\x2f\x65\x0a\x61\x7a\x65\x74"
+"\x59\x1b\x63\x6b\x9b\xa9\x77\x1f\x7e\x9f\x86\xa2\x89\xbd\x08\x8d\xe8\x15\xdc\x94\xae\xb2\xc9\x1b\xcb\xb1\x61\x3d\x92\x1f\x0e\x2f"
+"\x65\x0a\x5f\x7a\x65\x73\x59\x1b\x63\x6b\x9b\xaa\x77\x1f\x7e\xa0\x86\xa2\x89\xbe\x08\x8d\xe8\xad\x0a\xc9\x97\x0a\xfb\x23\xf8\x3c"
+"\x25\x1d\xc8\xf8\x3d\x16\xf7\x83\xbe\x07\x4b\x1d\xf7\x23\xac\x1d\x46\xfb\x50\x05\x58\xf7\x50\xfb\x20\xfb\x50\x4f\x06\x46\xf7\x50"
+"\x05\xfb\x21\x06\xe4\xfb\x83\xfb\x04\xfb\xc1\x05\xf7\x24\x06\xe4\xf7\x83\x05\xc7\xfb\x83\x06\x0e\xfb\x2b\xad\xf7\x47\x15\x8f\x48"
+"\x96\x6b\xa9\x69\x08\x5e\xb2\xc6\x73\xd1\x1b\xf7\x0c\xe3\xd4\xee\xc4\x72\xb1\x4f\xad\x1f\xbd\xa5\xa6\xb7\xc1\x1a\xe3\x3b\xc6\xfb"
+"\x0d\xfb\x09\x37\x50\x39\x1e\x64\xf7\x1a\x97\x07\xac\xa4\xa1\xb2\xb3\xa3\x75\x67\x63\x71\x78\x56\x1e\x70\x2c\xa6\x06\xb4\x95\x89"
+"\x7f\x9a\xc2\x1d\x6f\x6f\x62\xa9\x1d\x0e\x6a\x3f\x1d\x0e\x6a\x3f\x1d\xf7\xca\xa6\x0a\x5a\x77\x9a\xb3\x87\x1f\x48\x06\x6e\x8f\x7b"
+"\x93\x7a\x1e\x63\x9f\xbf\x6f\xc3\x1b\xc2\xbf\xa7\xb3\x9f\x1f\x93\x9c\x8f\x9b\x8c\xa8\x08\x0e\xfb\x28\xae\x24\x1d\xfc\xb0\xf7\x20"
+"\xf7\x83\xcc\x07\x46\x0a\x4a\xf7\x50\x06\x0e\x7e\xb0\x16\xeb\x06\xd4\x8c\xc8\xc7\x8a\xd3\x08\xf7\xba\xf7\x25\xfc\x3f\xf7\x20\xf8"
+"\xb0\xfc\x3d\xfc\x0f\x07\x8c\x72\x79\x76\x74\x89\x08\x5a\x06\x0e\xe7\xf9\x27\x16\xf8\xb0\xfb\x51\x07\x24\xfc\x29\x29\xf8\x29\x05"
+"\xfb\x50\xfc\xb0\xf7\x17\xf8\x30\x06\xef\xfc\x30\x05\xf7\x03\x06\xf1\xf8\x30\x05\xfc\x30\x07\x0e\x5f\x9d\x0a\xf7\x20\xf8\xb0\x92"
+"\x0a\x66\xf7\xc5\x41\x0a\x0e\x5f\xd4\x16\xf7\x20\xf8\x3f\xf7\x46\xfc\x3f\xf7\x20\xf8\xb0\xfc\x5e\x06\x0e\x66\xf7\x5c\xf8\xb0\x15"
+"\xfb\x20\xfd\x8a\x66\x1d\x50\xac\xbc\x6f\xce\x1b\xf7\x17\xeb\xf7\x0d\xf7\x39\xf7\x3c\x2f\xf7\x0a\xfb\x16\x46\x58\x8b\x1d\x2f\xf8"
+"\xa0\xf7\xe6\x15\x47\x0a\xfb\x47\xe8\x24\x7c\x1d\x0e\xfb\x32\xf7\x43\x16\xf7\x20\xf8\x3f\xf7\x33\xf7\x05\xfc\x5e\xfb\x05\xf7\x33"
+"\x06\x0e\x2f\x64\x0a\x0e\xf7\x77\xf8\x04\x16\xfb\x6e\xf7\x20\xf7\x6e\xa0\x07\xcd\xdc\xa6\xb2\xbe\x1f\xc8\xbb\xb2\xda\xd7\x1a\xd3"
+"\x67\xd8\x55\xbb\x1e\xbb\x55\x41\xa5\x3b\x1b\x76\xf7\x58\xfb\x20\xfb\x58\x76\x06\xfb\x3e\xfb\x16\xfb\x06\xfb\x2b\xfb\x2d\xf7\x19"
+"\xfb\x0e\xf7\x3b\x1f\xa0\xf7\x05\x15\x4d\x8f\x6e\x94\x6a\xa6\x08\x68\xa9\x75\xb8\xb7\x1a\xb5\x9f\xb4\xad\xa8\x1e\xac\xa7\xa9\x95"
+"\xcb\x90\x08\xf7\x20\x16\xca\x87\xa8\x82\xac\x6f\x08\xad\x6d\x9f\x60\x5e\x1a\x5c\x75\x5f\x66\x6f\x1e\x6c\x73\x6f\x82\x4e\x88\x08"
+"\x0e\x2f\xf7\xfa\x75\x1d\x6a\xd2\x16\xf8\x05\xfb\x34\xf7\x20\xf7\xa5\x53\xf8\x3f\xaa\x1d\x48\xf8\x13\x16\xf7\x23\xf8\xb0\x69\x0a"
+"\xf7\x4d\xc7\x16\xf9\x5e\xf8\xb0\xfb\x20\xfc\x3f\xfb\x27\x3a\x1d\xfc\x3f\xfb\x27\x9c\x0a\xf7\x58\xb6\x16\xf9\x21\xfb\x33\xf7\x20"
+"\xf7\xa4\x53\x3a\x1d\xfc\x3f\xfb\x32\x3a\x1d\xfc\x3f\xfb\x33\x9c\x0a\xdc\xf7\x60\x16\x9e\x1d\xfb\xd3\xfb\x05\xf7\x47\x06\xf7\x20"
+"\xfb\xce\xa4\x1d\x0e\xf7\x62\xf0\x16\x80\x0a\x06\xf7\x20\x49\x0a\xf7\x7f\xfb\x05\x15\xf7\x20\xf8\xb0\xfb\x20\x06\x0e\x6a\xe7\x16"
+"\x80\x0a\x06\xf7\x20\x49\x0a\x0e\x2b\xf7\x41\xf7\x76\x15\xf7\x6b\x06\x34\x7f\x5e\x5a\x48\x1b\x50\x62\xaf\xd1\x77\x1f\xfb\x1b\x67"
+"\x05\xfb\x0b\xae\xe4\x4b\xf7\x16\x1b\xf7\x3a\xf0\xf7\x00\xf7\x46\xf7\x46\x26\xf7\x00\xfb\x39\x21\x37\x5d\x39\x60\x1f\xf7\x10\x4f"
+"\x05\xbe\xa4\xad\xa3\xbc\x1b\xc8\xbc\x5d\x46\x96\x1f\xfb\x67\x06\x0e\xf7\x62\xf7\x51\xf7\xe8\x15\xf7\x5c\x2d\x1d\xf7\x77\xef\x07"
+"\xfb\x35\x9a\xea\x32\xf7\x2f\x1b\xf7\x3a\xf0\xf7\x00\xf7\x45\xf7\x47\x26\xf7\x00\xfb\x3a\x35\x43\x6d\x52\x5c\x1f\x6e\x68\x7d\x6c"
+"\x7f\x53\x08\xf7\x98\xeb\x15\xd8\xbd\x46\x21\x25\x57\x46\x40\x3f\x58\xd0\xf3\xf2\xbe\xd1\xd7\x1f\x0e\x4a\xf8\x09\x16\xf7\x20\xf8"
+"\xb0\xfb\xbf\x06\x29\x48\x4b\x2c\x49\xa9\x5a\xc1\x74\x1f\x62\x70\x83\x7a\x88\x49\x88\x42\x85\x71\x74\x69\x08\xf7\x25\x06\x97\xa3"
+"\x93\xaf\xb4\x1a\xad\x07\xbc\x9c\x9c\xbd\x1e\xe7\x06\xf7\x05\x04\xfb\x21\x06\x6f\x76\xa2\xac\xad\x9f\xa2\xa8\x1f\xf7\x21\x06\x0e"
+"\xfb\x5d\xf7\xdd\x24\x1d\xfb\x85\xfc\xb0\xab\x0a\x06\xf7\x1a\xf7\x32\x05\xfb\x1a\x06\x0e\x66\xf7\x22\x16\xf7\x20\xf7\x71\x06\xb1"
+"\xa9\x9e\x97\xa8\x1b\xad\x9d\x7a\x6a\x1f\xfb\x5e\x07\x8c\x65\x72\x70\x66\x8a\x08\x2c\x2e\xf7\x10\x06\xed\x8c\xd8\xdb\x88\xee\x08"
+"\xf7\x49\x07\xe6\x50\xc8\x34\x60\x6a\x7e\x69\x5b\x1e\xf7\x69\xf7\x1a\xe8\xfb\x1a\xf3\xfb\x20\x23\x21\x2e\xf5\x07\x0e\xfb\x7b\x90"
+"\x0a\xe0\xc5\x15\xe4\x06\xf7\x1a\xf7\x32\x05\xfb\x1a\x06\x0e\x2b\xf8\x0f\xf7\x76\x15\xea\xfb\x67\x07\xd0\x96\xbc\xb9\xc8\x1b\xbc"
+"\xad\x73\x58\xa4\x1f\xf7\x10\xc7\x05\xdd\x60\x37\xb9\x21\x1b\xfb\x39\x65\x1d\xfb\x46\xef\xfb\x00\xf7\x3b\xf7\x16\xe3\xcb\xf7\x0b"
+"\xaf\x1f\xfb\x1c\xaf\x05\x45\x78\x62\x67\x50\x1b\x48\x5e\xbc\xe2\x7f\x1f\x0e\x2f\xf8\x8d\xf8\x02\x15\xf7\x06\x89\x33\xd0\xfb\x26"
+"\x1b\xfb\x1c\x63\x0a\x69\x64\x78\x49\x44\x6f\x9d\xbf\x81\x1e\xfb\x1d\x06\xfb\x0b\x8f\xe0\x4e\xf7\x36\x1b\xdc\xc8\x9d\xb0\xb5\x1f"
+"\xae\xaa\xa0\xbb\xbd\x1a\xd0\x67\xb8\x45\xa0\x1e\x85\x0a\x1e\x0e\xf7\x65\xf8\xb0\x39\x1d\x0e\xfc\x03\xf7\x64\x6e\x0a\xf7\x67\x24"
+"\x1d\xfb\x20\xfc\xef\x06\x6a\x81\x82\x62\x1e\x7c\xfb\x05\x9a\x06\xf3\x92\x8b\x97\xa7\x1f\xad\x9b\x9d\xaf\xc4\x1a\xf9\xce\x58\x1d"
+"\xf7\xd5\xac\x16\xeb\x06\xd4\x8c\xc8\xc7\x8a\xd3\x08\xf7\xba\xf7\x3f\xfc\x3f\xf7\xc6\x07\xf5\xd9\xd4\xef\xee\x41\xcf\xfb\x02\x1f"
+"\xfb\x3a\xf7\x5c\xfc\x57\xfc\x0f\x06\x8c\x72\x79\x76\x74\x89\x08\x5a\x06\xf8\xb0\x16\xf7\x06\xf7\x34\x07\xa8\xa0\x73\x6a\x6a\x76"
+"\x73\x6e\x1f\x0e\xf7\x96\xd1\xba\x1d\xf7\xaf\x06\xf5\xd9\xd4\xef\xee\x41\xcf\xfb\x02\x1f\xfb\x23\xf7\x5c\x9b\x0a\xf8\x6f\x49\x0a"
+"\x0e\x66\xdb\x16\xf7\x20\xf7\xbb\x06\xc7\xa7\xab\xa5\xbc\x1b\xc0\xad\x69\xa5\x0a\xed\x44\xd1\x28\x51\x64\x7b\x57\x46\x1e\xf7\x07"
+"\xf7\x1d\xe8\xfb\x1d\xf0\xfb\x20\x26\x24\x2e\xf2\x07\x0e\xfb\x28\xf7\x52\xf8\xea\x15\xe7\x06\xf7\x17\xf7\x32\x05\xfb\x17\x06\xfb"
+"\x8b\xfb\x6c\x15\xfc\xb0\xf7\x20\xf7\x83\xc9\x07\x4b\x1d\xf7\x24\xac\x1d\x45\xfb\x50\x05\x4d\xf7\x50\x06\x0e\x2f\x64\x0a\xfb\x4b"
+"\xa6\x0a\x5b\x77\x9a\xb3\x87\x1f\x47\x06\x8c\x6e\x8e\x7b\x94\x7a\x08\x63\x9e\xc0\x6f\xc2\x1b\xc2\xc0\xa7\xb3\x9e\x1f\x94\x9c\x8e"
+"\x9b\x8c\xa8\x08\x0e\xd2\xd8\x16\xf7\x64\xfb\x34\xf7\x2a\xf7\x34\xf7\x64\xf9\x6d\x91\x0a\x5f\xd7\x16\xf7\x30\xfb\x34\xf7\x20\xf7"
+"\x34\xf7\x31\xf8\xb0\xaa\x1d\x42\xaf\xf7\xc0\x15\x8a\x80\x8b\x82\x85\x1a\x58\x93\x56\x98\x67\x1e\x29\xaf\xe2\x50\xf7\x01\x1b\xf7"
+"\x2e\xea\xf7\x04\xf7\x49\xf7\x41\x2c\xf5\xfb\x2e\xfb\x0f\x29\x46\x21\x6c\x1f\xf7\x24\x06\xb5\x9c\xb0\xa2\xbe\x1b\xb3\xab\x7b\x6d"
+"\x9e\x1f\x98\x77\x90\x74\x8d\x59\x08\x8a\x2e\x15\x3a\x82\x68\x64\x4d\x1b\x4a\x65\xb5\xd9\x85\x1f\x0e\xf7\x81\xf8\x1f\xf8\xd4\x15"
+"\xec\x83\x4c\xc5\x29\x1b\xfb\x09\x48\x3e\xfb\x19\xfb\x15\xce\x40\xf7\x08\xe9\xcd\xc7\xe9\x95\x1f\xfb\x06\x06\x61\x81\x7b\x7b\x6d"
+"\x1b\x63\x73\xb3\xcf\xd7\xa0\xb1\xb6\xaa\x9a\x7c\x5f\x95\x1f\xf8\x05\xfb\x47\x15\xfb\x0b\x42\x3d\xfb\x15\xfb\x14\xd4\x3d\xf7\x0c"
+"\xf7\x0b\xd5\xd9\xf7\x12\xf7\x18\x44\xd8\xfb\x0f\x1f\x8c\x2b\x15\xb8\xa8\x5f\x47\x4a\x6d\x5f\x5f\x5f\x6d\xb7\xcd\xce\xa9\xb7\xb7"
+"\x1f\x42\xf8\x2c\x15\xfc\x14\xfd\x59\x05\xdb\x06\xf8\x13\xf9\x59\x05\x0e\xfb\x33\xf7\x3e\xf7\xb6\x15\xca\xce\xb2\xba\xa5\xb7\x08"
+"\xb4\xd1\xa4\xd9\xc5\x1a\xc1\x70\xae\x61\x33\x49\xfb\x22\xfb\xd4\x4e\x1e\x70\x6c\x79\x79\x7c\x7e\x08\x79\x7b\x85\x83\x83\x1a\x82"
+"\x93\x81\x93\x92\xa6\x9f\xa3\xa4\x1e\x7f\x2f\x8a\x7b\x6b\x1a\x51\xa8\x68\xba\xaf\xa9\xa0\xb8\xa5\x1e\x98\xa1\x92\x9f\x97\x1a\x95"
+"\x84\x92\x81\x82\x85\x85\x7c\x83\x1e\x5e\x75\x7e\x7d\x79\x1b\x7e\x86\x92\x9d\xa4\x9e\xf7\x13\x9b\xd8\x1f\x96\xce\x15\xf7\x8b\xb4"
+"\xaa\xe7\xb5\x1b\x9a\x95\x7b\x74\x31\x55\xfb\x08\x36\x2d\x1f\x0e\xf8\x67\xf8\x40\x16\xf7\x0d\xf9\x6d\xfb\x0d\xfc\x84\x06\xfb\x7d"
+"\xf8\x84\x05\xfb\x10\xfd\x6d\xf7\x0d\xf8\x8c\x06\xf8\x5b\xfc\x8c\x15\xf8\x38\xea\xfc\x38\x06\xf7\x62\xf9\x1a\x15\xfb\x19\x39\xfb"
+"\x01\xfb\x45\xfb\x46\xdc\xfb\x00\xf7\x1a\xf7\x19\xde\xf7\x00\xf7\x42\xf7\x4b\x3b\xf6\xfb\x1c\x1f\xfb\x05\x04\xc9\xb4\x46\x21\x26"
+"\x61\x45\x4f\x4d\x62\xd0\xf3\xf3\xb4\xd0\xc8\x1f\x0e\x6a\xf8\x8d\xf7\xa6\x15\xf5\xf7\x9e\x05\xfb\x26\x06\x63\xfb\x19\x76\xb3\x7f"
+"\x9d\x76\xa0\x19\xb3\x65\x58\xa2\x5a\x1b\xfb\x0d\x31\xfb\x0f\xfb\x39\xfb\x38\xe3\xfb\x0d\xf7\x0d\xde\xc8\xbe\xf7\x04\xc0\x1f\xbd"
+"\xfb\x1f\x05\xf7\x2d\x06\xfb\x94\xf7\xa6\x15\x71\x38\x82\x72\x7c\x74\x08\x69\x75\x6e\x77\x71\x1b\x55\x65\xd3\xf2\xf3\xb0\xd0\xc3"
+"\xbf\xb2\x59\xfb\x05\xae\x1f\x0e\x6a\xf8\x98\xf7\xa6\x15\xf6\xf7\x9e\x05\xfb\x26\x06\x62\xfb\x19\x77\xb3\x7e\x9d\x77\xa0\x19\xb3"
+"\x64\x58\xa2\x59\x1b\xfb\x11\x2d\xfb\x10\xfb\x38\xfb\x37\xe7\xfb\x0d\xf7\x11\xdf\xc8\xbd\xf7\x04\xc0\x1f\xbd\xfb\x1f\x05\xf7\x2e"
+"\x06\xfb\x94\xf7\xa6\x15\x71\x38\x81\x73\x7d\x74\x08\x68\x74\x6f\x78\x6f\x1b\x50\x62\xd4\xf2\xf0\xb4\xd1\xc7\xc0\xb2\x5a\xfb\x06"
+"\xaf\x1f\x47\xf8\x97\x23\x1d\x2f\x26\x1d\xce\xf8\x64\x28\x0a\xfb\xcf\xc5\xf7\x82\x15\xf7\x42\xfb\xe8\x05\x7b\x93\x95\x84\x97\x1b"
+"\x93\x90\x8f\x92\x92\x89\x93\x88\x93\x1f\xfb\x17\xf7\xdd\xf7\x17\xf7\xdd\x05\x8e\x93\x8d\x93\x92\x1a\x93\x86\x8f\x83\x7f\x83\x85"
+"\x79\x81\x1e\x0e\xfb\xcf\xf7\xa7\xf7\x82\x15\xfb\x42\xf7\xe8\x05\x9c\x82\x82\x92\x7f\x1b\x83\x86\x87\x83\x85\x8d\x83\x8e\x82\x1f"
+"\xf7\x17\xfb\xdd\xfb\x17\xfb\xdd\x05\x88\x84\x89\x83\x84\x1a\x83\x90\x87\x93\x97\x93\x91\x9c\x95\x1e\x0e\x2f\xf8\xa0\x9c\x15\x73"
+"\xa2\x83\x9b\xa6\x1a\xf7\xc0\x07\xf7\x02\x40\xc3\xfb\x26\x60\x0a\xd8\x06\x3e\x70\x5c\x56\x50\x1a\x50\xc1\x68\xe9\xa7\x9f\x8d\x92"
+"\xa6\x1e\xba\x07\x88\x78\x78\x89\x78\x1b\x57\x73\x9c\xaf\xba\xb1\xb8\xd2\xb0\x1f\x88\x1d\x0e\x28\xf8\x73\xf8\x25\x15\x6c\x6d\x75"
+"\x81\x64\x1b\x71\x7e\x8e\x9b\x51\x1f\x9c\x4a\x6a\x92\x73\x1b\x71\x74\x82\x7a\x75\x1f\x7c\x80\x83\x80\x72\x67\x88\x86\x84\x80\x83"
+"\x81\xb0\x5a\x18\xaf\xa9\xa5\x98\xb3\x1b\xa1\xa6\x86\x7c\xc4\x1f\x76\xd9\x97\x89\xa5\x1b\xa9\xa8\x97\xa1\xa1\x1f\x98\x98\x8c\x8c"
+"\xae\xb4\x08\x65\xfb\x11\x15\x6c\x6d\x75\x81\x64\x1b\x71\x7e\x8e\x9b\x51\x1f\x9c\x4a\x6a\x92\x73\x1b\x71\x74\x82\x7a\x75\x1f\x7c"
+"\x80\x82\x80\x73\x67\x88\x87\x84\x80\x83\x80\xb0\x5a\x18\xaf\xa9\xa5\x98\xb3\x1b\xa1\xa6\x86\x7c\xc4\x1f\x76\xd9\x97\x89\xa5\x1b"
+"\xaa\xa7\x97\xa2\xa1\x1f\x98\x97\x8d\x8d\xad\xb3\x08\x0e\x2f\x26\x1d\x32\xf8\x97\x2c\x1d\xb0\xf7\x3e\x20\x1d\xf7\xf4\xf9\x5d\xf7"
+"\xac\x15\x6a\x5e\x6e\x53\x78\x1a\x81\x93\x84\x95\x92\x8f\x8d\x94\x93\x1e\xbc\xc6\xa6\xa0\xea\xc4\x08\x9c\x94\x8d\x8e\x95\x1a\x92"
+"\x85\x90\x76\x97\x1e\x42\xb5\x5f\xad\x64\xb9\x08\x9c\x7d\x87\x8e\x83\x1b\x81\x83\x84\x82\x79\xb0\x40\xa4\x6d\x1f\xfc\x3f\x06\xa6"
+"\xac\xaf\xd3\x9e\x1a\x93\x83\x92\x81\x83\x88\x88\x7a\x7c\x1e\x63\x5c\x61\x6a\x41\x61\x08\x77\x80\x84\x85\x84\x1a\x83\x8f\x86\x93"
+"\x86\x1e\xe9\x54\xaa\x73\xb7\x58\x08\x76\x9d\x8c\x8a\x94\x1b\x95\x93\x92\x94\x91\x7f\xab\x83\x9b\x1f\x80\xa0\x80\x9d\x76\xa7\x08"
+"\x0e\xfb\x28\xf7\xa2\xf9\x65\x15\x4f\xfd\x2a\x06\x74\x9c\x7b\x95\x77\x96\x08\x95\x78\x67\x99\x83\x1b\x82\x84\x83\x81\x84\x8d\x87"
+"\x94\x83\x1f\xc7\x59\x9e\x73\xc5\x2a\x08\x79\x95\x8e\x89\x94\x1b\x92\x91\x92\x9f\x96\x1f\xb4\xd4\xad\xb7\xba\xb3\x08\x9c\x9a\x8e"
+"\x8e\x93\x1a\x95\x84\x93\x82\x79\x40\x65\x73\x6e\x1e\x0e\xf7\xf4\xfa\x25\xf7\xad\x15\xc7\xfd\x2a\x07\x9c\xa2\x95\x9b\x96\x9f\x08"
+"\x95\x9e\x99\xaf\x93\x1a\x94\x83\x92\x81\x84\x87\x89\x82\x83\x1e\x59\x4f\x73\x78\x2a\x51\x08\x79\x81\x89\x88\x82\x1a\x84\x92\x85"
+"\x9f\x80\x1e\xd4\x62\xb7\x69\xb3\x5c\x08\x7a\x9a\x8e\x88\x93\x1b\x95\x93\x92\x94\x9d\x65\xd6\x73\xa8\x1f\x0e\xf7\xf4\xe0\xf7\xad"
+"\x15\xf9\x2a\x06\x73\x6e\x65\x40\x79\x1a\x82\x93\x84\x95\x93\x8e\x8e\x9c\x9a\x1e\xb3\xba\xb7\xad\xd4\xb4\x08\x9f\x96\x92\x91\x92"
+"\x1a\x93\x87\x90\x83\x90\x1e\x26\xc6\x70\xa1\x58\xc7\x08\x94\x83\x87\x8d\x84\x1b\x81\x83\x84\x82\x85\x97\x6a\x93\x7b\x1f\x96\x74"
+"\x97\x79\x9e\x71\x08\xfd\x2a\x06\x0e\xfb\x28\xf7\x66\x20\x15\xc7\xf9\x2a\x06\xa2\x7a\x9b\x81\x9f\x80\x08\x81\x9e\xaf\x7d\x93\x1b"
+"\x94\x92\x93\x95\x92\x89\x8f\x82\x93\x1f\x4f\xbd\x78\xa3\x51\xec\x08\x9d\x81\x88\x8d\x82\x1b\x84\x85\x84\x77\x80\x1f\x62\x42\x69"
+"\x5f\x5c\x63\x08\x7a\x7c\x88\x88\x83\x1a\x81\x92\x83\x94\x9d\xd5\xb1\xa3\xa9\x1e\x0e\xfb\x28\xf7\x67\xf7\x19\x15\xa5\x6c\x42\x70"
+"\x1d\x73\x7f\x79\x7f\x72\x78\x8a\xf8\x3a\x18\xa2\x7a\x9b\x81\x9f\x80\x08\x81\x9e\xaf\x7d\x93\x1b\x94\x92\x93\x95\x92\x89\x8f\x82"
+"\x93\x1f\x4f\xbd\x78\xa3\x51\xec\x08\x9d\x81\x88\x8d\x82\x1b\x84\x85\x84\x77\x80\x1f\x62\x42\x69\x5f\x5c\x63\x08\x7a\x7c\x88\x88"
+"\x83\x1a\x81\x92\x83\x94\x9d\xd5\xb1\xa3\xa9\x1e\x0e\xfb\x28\xf7\x0c\x47\x15\x60\xf7\x9c\xb6\x07\xfb\x41\xf7\x94\x15\xa4\x6d\x41"
+"\x70\x1d\x74\x80\x79\x7f\x71\x78\x8a\xf8\x3a\x18\xa3\x7a\x9a\x81\x9f\x80\x08\x81\x9e\xaf\x7d\x93\x1b\x94\x92\x93\x95\x92\x89\x8f"
+"\x82\x93\x1f\x4f\xbd\x78\xa3\x51\xec\x08\x9d\x81\x88\x8d\x82\x1b\x84\x85\x84\x77\x80\x1f\x62\x42\x69\x5f\x5c\x63\x08\x7a\x7c\x88"
+"\x88\x83\x1a\x81\x92\x83\x94\x9d\xd6\xb1\xa3\xa8\x1e\x0e\x65\xcd\xfb\x6e\x15\xf7\x20\xf7\x8b\x06\x66\xb6\xb5\x7c\xc5\x1b\xf7\x15"
+"\xeb\xee\xf7\x17\xc6\x77\xc2\x6a\xac\x1f\x77\x9f\x76\x96\x5f\x9a\x08\xca\xb3\xa7\xb9\xcc\x1a\xf7\x04\x2f\xd8\xfb\x19\x36\x44\x6e"
+"\x57\x63\x1e\x6d\x63\x81\x5f\x2b\x1a\xf7\x20\x99\x15\xc9\x8e\xa1\x97\xa1\x1e\xa6\x9a\xab\x9d\xad\x1b\xc2\xaf\x64\x50\x63\x79\x67"
+"\x6f\x7c\x1f\x79\x81\x7a\x88\x66\x89\x08\x39\x90\x07\x9a\x8c\x9b\x8c\xae\x82\xa0\x80\x19\xb6\x76\xa3\x5f\x52\x1a\x3b\x58\x50\x44"
+"\x65\x67\x97\xa3\x6b\x1e\x0e\x2f\x36\x1d\xb2\xf8\x37\x15\xfb\x12\x06\x45\xfb\x2a\x05\xd1\x06\x0e\x2f\x36\x1d\x5c\xf7\xa1\x93\x1d"
+"\x2f\x36\x1d\xfb\x35\xf8\x37\x15\x20\x52\x1d\x2f\x36\x1d\x5e\xf8\x29\x27\x0a\x43\xf7\xb5\xf7\xbb\x15\xfb\x04\xf7\x89\x05\xfb\x2b"
+"\x06\xf7\x52\xfc\x03\xfb\x61\xfc\x1b\x05\xf7\x29\x06\xf7\x13\xf7\xa5\xf7\x11\xfb\xa5\x05\xf7\x2e\x06\xfb\x62\xf8\x1f\xf7\x51\xf7"
+"\xff\x05\xfb\x27\x06\x0e\xf7\xf4\xf8\x8b\xf9\x4b\x15\xfb\x5c\xfb\x36\xfb\x35\xfb\x5c\xfb\x58\xf7\x36\xfb\x36\xf7\x57\xf7\x59\xf7"
+"\x37\xf7\x37\xf7\x57\xf7\x58\xfb\x36\xf7\x39\xfb\x55\x1f\x87\xfb\xd0\x15\xfb\x52\xf7\x50\x05\xb8\xc2\xcc\xa2\xd1\x1b\xd0\xcb\x74"
+"\x60\xc4\x1f\xb3\x63\x15\xbb\x52\xa2\x4c\x42\x1a\x43\x74\x4b\x5d\x53\x1e\xfb\x54\xf7\x57\x05\xf7\x2c\xfb\x7f\x15\x5f\x54\x48\x73"
+"\x45\x1b\x45\x4b\xa2\xba\x50\x1f\xf7\x55\xf7\x55\x05\xfb\x7d\xfb\x2d\x15\x5f\xc1\x74\xcb\xd1\x1a\xd3\xa2\xcb\xba\xc4\x1e\xf7\x52"
+"\xfb\x50\x05\x0e\x93\xf8\xd7\x16\x9f\x07\x24\x9f\x6e\x99\x5d\xbb\x5c\xbf\x7a\xc0\x8a\xeb\xa0\x66\x93\x7e\x97\x7d\x08\x5d\xb2\xc9"
+"\x6c\xc0\x1b\xe6\xd2\xd5\xe9\xe5\x4a\xd3\x3a\x6e\x84\x89\x6e\x50\x1f\xa7\xb4\x96\xaa\xb0\x1a\xe3\x42\xd2\x30\x2e\x44\x45\x31\x67"
+"\x92\x78\xad\x56\x1e\xa3\x5b\x76\x91\x6c\x1b\x40\x49\x3f\x34\x2e\xd4\x42\xe7\xdc\xcf\xbd\xe6\xb8\x1f\x8c\x7b\x8b\x80\x86\x1a\x43"
+"\x65\x3a\x55\x5f\x1e\x6b\x72\x74\x82\x2c\x77\x08\x77\x07\x0e\xea\xf8\x2b\x6d\x1d\xf7\xcb\xf7\xbd\x22\x1d\x66\xf8\x29\xf8\xe8\x15"
+"\xfb\x12\x07\xc1\x68\x5d\xa4\x47\x1b\xfb\x15\x29\xfb\x10\xfb\x37\xfb\x36\xed\xfb\x0f\xf7\x15\xcf\xb9\xa3\xc1\xae\x1f\x54\xf7\x20"
+"\xf8\xe8\xc7\xce\x4f\xcd\xfb\x20\x49\xfb\x19\x48\x07\x9a\xfb\x38\xa8\x1d\xef\xbb\xd1\xd1\x1f\x0e\x61\xf6\xf9\x81\x15\x2a\x07\xf7"
+"\x2f\xfb\x0c\x45\x85\x68\x7e\x65\x69\x19\x55\x59\x6e\x41\x2d\x1a\xfb\x44\xf1\xfb\x00\xf7\x39\xf7\x3a\xf0\xf7\x00\xf7\x46\xf7\x0b"
+"\x67\xd3\x2b\xd4\x1e\xfb\x26\xf7\x03\x05\xf7\x6a\xf7\x03\x06\xfb\x5f\xfb\xcd\x50\x1d\xfb\x1e\x90\xf7\xf1\x15\xf0\xfb\x11\xf7\x10"
+"\xfb\x45\xb1\x40\xc7\xf7\x00\xf7\x05\xf7\x34\xf4\xf7\x11\x3b\xe6\xfb\x39\xf7\x7d\x6a\xcf\x53\x24\x41\x22\xfb\x26\xfb\x4c\x08\x0e"
+"\xfb\x4b\xf7\x4a\x80\x1d\x2f\x27\x1d\xac\xf8\x41\x86\x1d\x2f\x27\x1d\x5b\xf7\xb4\x93\x1d\x2f\x27\x1d\x5f\xf8\x3c\x27\x0a\xf7\xf4"
+"\xf9\x93\xf7\x6c\x15\xc8\xfc\x62\x07\x91\xf6\xc3\xbd\xf7\x01\x89\x08\x8c\x0a\x42\x2c\x1a\xfb\x08\xb8\x38\x9a\x0a\xc9\xfb\xb7\x06"
+"\xfb\x01\x89\x53\xbd\x85\xf5\x08\x0e\x2f\x27\x1d\xbe\xf8\x24\x15\xfb\xbf\x3c\xf7\xbf\x06\x0e\x66\xf7\xe8\xfb\x69\x15\x88\xa6\xad"
+"\x89\xa1\x1b\xe5\xac\xad\xe5\x1f\xf8\x5c\x07\xd0\x7a\xb8\x65\xab\x1e\xa5\x6c\x5f\x9a\x58\x1b\x42\x5a\x71\x4e\x63\x1f\xd9\xfb\x20"
+"\xa1\x0a\xcf\xca\xa7\x6d\x49\x1e\xfc\x1a\x07\x67\x81\x7e\x6f\x81\x85\x8c\x8f\x7f\x1e\x0e\x2f\xf8\x72\xfb\x45\x15\x87\x78\x79\x89"
+"\x77\x1b\x57\x73\x9b\xaf\xb7\x9f\xad\xd0\xd5\x1f\xc5\xc9\x97\x9d\x99\xbe\x08\xfb\x1e\x06\x5f\x7a\x65\x72\x58\x1b\x63\x6a\x9c\xa9"
+"\x78\x1f\x7e\xa0\x86\xa3\x89\xbe\x08\xf7\xfe\x06\x8c\x97\x8b\x92\x90\x1a\xc1\x83\xbe\x7e\xb0\x1e\xed\x67\x34\xc6\xfb\x02\x1b\xfb"
+"\x2f\x2c\xfb\x04\xfb\x49\xfb\x41\xe9\x20\xf7\x2d\xa7\x9d\x8e\x95\xaf\x1f\x44\x5a\x73\x6b\x5e\x1a\x4f\xc2\x66\xe4\xa7\xa3\x8e\x92"
+"\xa6\x1e\xfb\xcf\xf8\xb3\xad\x0a\xca\x97\x0a\x0e\xfb\x41\xf7\xc5\xf7\xcb\x15\x5d\x8c\x7d\x8c\x74\x91\x08\x6b\x93\x79\xa1\xa9\x1a"
+"\xb3\xa9\xa3\xbc\xc0\xaa\x76\x5d\x97\x1e\xf7\x20\x06\xf7\x05\x78\x37\xc7\xfb\x1f\x1b\xfb\x14\x39\x51\x30\x59\xa1\x64\xb9\x67\x1f"
+"\x51\x75\x6f\x61\x4c\x1a\x23\xe3\x48\xf7\x1c\xe4\xc6\xa1\xbe\xbb\x1e\xab\xac\x99\xa8\x97\xc0\x08\xfb\x20\x06\x4e\x79\x6c\x73\x50"
+"\x1b\x54\x68\xa7\xb7\xa9\x9d\xa3\xa8\x92\x1f\xa3\x91\x8e\x8c\xd5\x8c\x08\x0e\xfb\x59\xf7\xb9\xf7\xcb\x15\x5e\x8c\x7e\x8c\x76\x91"
+"\x08\x6c\x93\x79\xa1\xa9\x1a\xb3\xa7\xa3\xba\xbf\xaa\x76\x5d\x97\x1e\xf7\x20\x06\xf7\x05\x78\x37\xc7\xfb\x1e\x1b\xfb\x12\x3b\x51"
+"\x2f\x5b\x9f\x63\xb6\x67\x1f\x55\x75\x70\x61\x4d\x1a\x21\xe1\x49\xf7\x1c\xe0\xc7\xa2\xbd\xbb\x1e\xab\xac\x99\xa8\x97\xc0\x08\xfb"
+"\x20\x06\x4f\x79\x6c\x72\x51\x1b\x57\x69\xa7\xb7\xa9\x9c\xa3\xa7\x92\x1f\xa3\x91\x8e\x8c\xd2\x8c\x08\x7a\xf8\xcc\x23\x1d\x4a\xf8"
+"\xaa\xf7\xb7\x9b\x1d\xf8\xeb\x04\xfc\x78\xfb\x0b\xf8\x78\x06\x0e\x5b\xf8\xa9\xf7\x88\x15\x92\x07\x94\x07\x89\xd4\x86\xa8\x7c\xb2"
+"\x08\xde\x69\x3a\xbd\x28\x1b\xfb\x29\x2c\xfb\x00\xfb\x3c\xfb\x3c\xe6\x26\xf7\x2b\xf7\x06\xd8\xc1\xf0\xaa\x1f\x8d\x90\x8d\x92\x05"
+"\x4b\x06\x8a\x89\x89\x86\x8a\x88\x08\x4f\x70\x53\x69\x42\x1b\x60\x68\x96\xa0\x73\x1f\x7b\x9a\x82\x9b\x80\xae\x8c\xe9\x18\xf7\xac"
+"\xc1\x15\xfb\xaa\xdb\x06\xcf\xab\xae\xa3\xce\x1b\xc1\xaf\x7b\x64\xac\x1f\x96\x7f\x8f\x84\x91\x7a\x08\x0e\x66\x7d\x1d\x0e\x66\x7d"
+"\x1d\xf7\x53\xf7\x8d\x23\x1d\x5f\xf7\x8a\x87\x1d\xf7\xc4\x72\x0a\xfb\x74\xbe\x16\xf7\xd9\xf8\xd5\xfb\xd9\x37\xf7\x85\xfb\x36\xfb"
+"\x85\x37\xf7\x85\xfb\x37\xfb\x85\x06\x0e\xf1\xf7\xf4\xf7\x98\x15\xfb\x37\x60\xf7\x37\xfb\x3a\xbb\xf7\x3a\xf7\x35\xb6\xfb\x35\xf3"
+"\x06\xe4\x98\xcf\xda\xe6\x1a\xee\x37\xde\x28\x29\x38\x34\x26\x34\xcf\x3e\xe6\x7e\x1e\xa6\xf7\xcb\x15\xd0\xc5\x50\x45\x43\x51\x51"
+"\x44\x42\x52\xc5\xd4\xd2\xc5\xc4\xd5\x1f\x0e\x2f\xf8\x3a\xf8\x4b\x15\xfb\x8e\x93\x0a\xf7\xce\xf7\x02\xfb\xce\xf7\x20\xf7\x4e\x06"
+"\xdd\xb4\xb4\xdd\x99\x96\xb9\x1d\x87\x8b\x86\x1b\x4a\x55\x61\x42\x6c\x1f\x0e\x2f\xf7\x68\xfb\x6e\x15\xf7\x18\xf7\x78\x06\xf7\x5a"
+"\xf8\xa6\x05\xfb\x2a\x06\xfb\x06\xfc\x1b\xfb\x06\xf8\x1b\x05\xfb\x2a\x06\xf7\x5a\xfc\xa6\x05\x0e\x66\xf8\x48\xf9\x80\x15\x53\x06"
+"\x5d\x83\x74\x56\x1d\x67\xfb\x59\x69\x1d\x0e\x66\x68\x1d\x3c\xf7\xd9\x23\x0a\x66\xf7\xfa\xf8\xf2\x15\xf7\x04\x48\x07\x8a\xbd\xa1"
+"\xa9\xb9\x94\x08\xb9\x07\x45\x89\x54\x4b\x8e\x3d\x08\x24\x07\xf7\x38\x49\x15\x38\x07\xca\x64\x60\xa8\x52\x1b\x5b\x56\x73\x64\x66"
+"\x1f\x55\x53\x6f\x3d\x2c\x1a\xfb\x3a\xe3\xfb\x06\xf7\x15\xc5\xae\x9e\xc6\xbc\x1e\x42\x07\x4a\x5d\x5e\x49\x59\x6c\xa1\xb4\x80\x1e"
+"\xfb\x24\x06\x8c\x61\x9a\x6e\xb0\x6d\x08\x68\xb6\xc6\x7a\xd7\x1b\xf7\x30\xe9\xd6\xf7\x11\x1f\xf8\xc2\x07\xfb\x8a\xfb\x00\x15\xcd"
+"\xbc\x42\x27\x29\x5c\x48\x45\x4e\x60\xce\xed\xf1\xb6\xd2\xca\x1f\x0e\x66\xf7\xf3\xf9\x7b\x45\x1d\xbc\x3a\x15\x38\x07\xca\x64\x60"
+"\xa8\x52\x1b\x5b\x56\x73\x64\x66\x1f\x55\x53\x6f\x3d\x2c\x1a\xfb\x3a\xe3\xfb\x06\xf7\x15\xc5\xae\x9e\xc6\xbc\x1e\x42\x07\x4a\x5d"
+"\x5e\x49\x59\x6c\xa1\xb4\x80\x1e\xfb\x24\x06\x8c\x61\x9a\x6e\xb0\x6d\x08\x68\xb6\xc6\x7a\xd7\x1b\xf7\x30\xe9\xd6\xf7\x11\x1f\xf8"
+"\xc2\x07\xfb\x8a\xfb\x00\x15\xcd\xbc\x42\x27\x29\x5c\x48\x45\x4e\x60\xce\xed\xf1\xb6\xd2\xca\x1f\x0e\x28\xb3\x1d\xfc\x7d\xf7\x39"
+"\x15\xf8\x7d\xf7\x49\x05\xf7\x0d\x07\xfc\x7d\xf7\x4a\x05\xfb\x03\x07\xf8\x12\xfb\x17\xfc\x12\xfb\x19\x05\x0e\x66\xf7\x63\xf9\x34"
+"\x15\xc4\xfb\x20\x52\x4d\x3b\xc9\xfc\xe4\xbc\x1d\xa9\xa2\x80\x75\x9b\x1e\x98\x78\x8f\x7d\x82\x0a\x5d\x1b\x47\x59\x6f\x50\x64\x1f"
+"\xf7\x16\xf7\x47\xdb\x07\x0e\x66\x61\x0a\xfb\x05\xf7\x63\x23\x0a\x55\xf7\xbc\x6f\x15\x9f\xe5\xc7\xf2\xf7\x08\xf7\x25\x08\xeb\xf7"
+"\x0e\xab\xce\xda\x1a\xde\x45\xcf\x37\x5b\x5f\x76\x65\x6a\x1e\x75\x72\x81\x75\x7e\x5d\x7f\xaf\x83\x9d\x7f\x9d\x08\xbd\x6a\x58\xa8"
+"\x54\x1b\x36\x49\x47\x32\x48\xa0\x5e\xdf\xfb\x06\x1f\xf7\x2b\xfb\x5e\xb3\x47\xa5\x24\x08\x0e\x5f\xa6\x16\xf8\xba\xf8\x25\x06\xfb"
+"\xa7\xf7\xdc\xfb\xa7\xfb\xdc\x05\xbe\xfb\xf2\x15\xf7\xdc\x07\xf7\x74\xf7\xa2\xf7\x74\xfb\xa2\x05\xfb\xdc\x07\x0e\x30\x1d\xc7\xf9"
+"\x78\x44\x0a\x2f\xf7\x74\xf8\xb0\x39\x1d\xf7\x93\x4b\x7b\x1d\xf7\x64\x48\x0a\xc6\xf9\x63\x15\xfb\x97\x3c\xf7\x97\x06\x0e\xcc\xf7"
+"\xf8\xf7\xbd\x15\x5b\xb6\x86\x8f\x78\x99\x08\xa7\x67\x5c\x9d\x67\x1b\x3e\x4c\x4c\x3e\x3e\xca\x4c\xd8\xb0\xb8\x9d\xa7\xb0\x1f\x9e"
+"\x99\x90\x8f\xbb\xb6\xbc\x60\x90\x87\x9e\x7d\x08\x6f\xaf\xb9\x79\xb0\x1b\xd8\xca\xca\xd8\xd8\x4c\xca\x3e\x67\x5c\x79\x6f\x67\x1f"
+"\x78\x7d\x86\x87\x5a\x60\x08\xaf\x6a\x15\xc4\xc5\xc2\xaa\xb5\x1b\xbc\xb3\x63\x5b\x5a\x63\x63\x5a\x61\x53\xab\xc4\x52\x1f\x44\x16"
+"\x53\x52\x53\x6b\x61\x1b\x5a\x63\xb3\xbb\xbb\xb3\xb3\xbc\xb5\xc3\x6c\x52\xc4\x1f\x0e\xfc\x0a\xf7\x50\xf8\x9f\x15\xb0\x72\x1d\xfb"
+"\x78\x07\x5f\x8f\x4d\x95\x24\x88\x0a\x94\x81\x80\x90\x7d\x1b\x71\x75\x75\x70\x6c\xa7\x73\xae\xb7\xaa\x0a\xd4\xf7\x41\x1a\x0e\x5f"
+"\xf7\xab\xfa\x25\x15\xfd\x79\x07\x66\x91\x3c\x94\x2e\x88\x0a\x95\x81\x7f\x90\x7e\x1b\x70\x76\x75\x6f\x6d\xa7\x73\xae\xb6\xaa\x0a"
+"\xcf\xf7\x46\x1a\xf9\x70\x07\x0e\x5f\xf7\xf5\xfb\x6e\x15\xf9\x78\x07\xb1\x72\x1d\xfd\x70\x07\x0e\xd2\xf8\xeb\x16\xf7\xa1\x07\xf7"
+"\x29\x86\xb1\x71\xb7\x1e\xd1\x61\x3e\xb4\x31\x1b\x38\x46\x6a\x4d\x5e\x1f\x66\x5a\x85\x67\xfb\x36\x1a\xfb\xa1\xd1\xf7\xa4\x07\xf7"
+"\x05\x91\xba\x9d\xad\x1e\xbd\xa6\xc5\xad\xc8\x1b\xc4\xc2\x6e\x5d\xa8\x1f\xa2\x67\x91\x62\xfb\x12\x1a\xfb\xa4\x07\x0e\xf8\x28\xf8"
+"\xa3\xf9\x6e\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37"
+"\xf7\x37\xfb\x5e\x1f\xfb\x01\xfb\x63\x84\x0a\xfb\x14\xfb\x05\x15\x96\x59\x96\x75\xa5\x6d\x08\x54\xbb\xc7\x71\xdc\x1b\xdc\xc7\xa5"
+"\xc2\xbb\x1f\xa5\xa9\x96\xa1\x96\xbd\x84\x36\x80\x62\x6d\x5e\x08\x4c\x61\x4b\x6b\x38\x1b\x3e\x4f\xa6\xc1\x61\x1f\x67\xba\x7c\xb8"
+"\x84\xe8\x08\xf7\xee\xf7\x05\x84\x0a\x0e\xf7\x63\x24\x1d\xfb\x20\xfc\xb0\xd8\x06\x40\x5f\x68\x60\x5a\x1a\x4f\xbe\x66\xde\x9f\x97"
+"\x8d\x92\xaa\x1e\xba\x07\x87\x74\x80\x8a\x81\x1b\x7c\x7d\x8f\x92\x7e\x1f\x7b\x95\x86\x96\xa1\x1a\xb8\xa8\xb7\xc1\xb2\x1e\xf9\x6d"
+"\x58\x1d\x3b\x0a\x0e\x3b\x0a\xfb\x00\x41\x1d\x3b\x0a\xfb\x0d\x80\x1d\x3b\x0a\x78\xf9\xa9\x23\x1d\x30\x1d\xba\x40\x0a\xf7\x66\xf8"
+"\xb0\x83\x1d\xfb\x0f\xf9\xe7\x23\x0a\x31\xf7\x5c\xf7\xde\x15\xf7\x66\x2d\x1d\xf7\x45\x07\xc5\xca\xf7\x15\xfb\x84\x05\xf7\x36\xa7"
+"\x1d\x0e\x2f\x7f\x1d\xfb\x27\xfc\xec\x22\x1d\x2f\xf7\x33\xf7\x3e\x15\xbf\xc2\xf7\x3b\xfb\x75\x05\xf7\x12\x06\xfb\x75\xf7\xb7\xf7"
+"\x60\xf7\x6f\x05\xfb\x11\x06\xfb\x5b\xfb\x74\x05\xf7\x74\x22\xfc\x92\xf4\x07\x0e\x44\x1d\xd2\x39\x0a\x2f\x9b\x16\xf7\x24\x06\xf7"
+"\x09\xf7\xf3\xf7\x07\xfb\xf3\x05\xf7\x2d\x06\xfb\xb6\xf9\x6d\x05\xfb\x21\x06\xe8\xfb\x82\x05\x0e\xfb\x8c\x44\x1d\xc0\xf9\x6d\x22"
+"\x1d\x44\x1d\xfb\x15\x4f\x22\x1d\xfb\x3d\xf7\x6f\xf9\x6d\x64\x1d\xec\xf8\x3d\x3e\x0a\x28\xb3\x1d\xf9\x1d\x04\xfc\x7d\xfb\x4a\x05"
+"\xfb\x0c\x97\x1d\x2f\xf8\x0b\xf7\xd0\x15\xc2\xfb\x1f\x07\x87\x95\x82\x9f\x7a\xae\xb0\x1d\xa9\xa6\x82\x79\x9f\x1e\xa0\x79\x93\x79"
+"\x91\x5d\x8c\x80\x18\xf7\x17\x06\x87\xc6\x83\xac\x7c\xa8\x08\xd2\x66\x3e\xb2\x23\x1b\x48\x54\x7b\x6a\x61\x1f\x5d\x66\x6f\x53\x52"
+"\x1a\x60\x93\x74\xb4\x43\x1e\x8f\x84\x05\x4f\x54\xe4\x06\x8f\x7f\x90\x7e\x8d\x84\x08\x27\x54\xf7\x01\x06\x8a\x51\x72\x69\x38\x52"
+"\xc2\x26\x18\xa2\xb7\xa6\x92\xb1\x1b\xa6\xa1\x87\x7f\xbc\x1f\x7f\xbc\xa2\x87\xa6\x1b\xbc\xb3\x97\xac\xc3\x1f\x62\xf7\x01\x05\x77"
+"\x63\x6b\x82\x6a\x1b\x79\x78\x8e\x92\x70\x1f\x95\x64\x84\x8c\x7a\x1b\x6e\x76\x84\x6d\x4d\x1f\xd0\xc0\xae\xb8\x94\xb8\x08\xf7\x02"
+"\xc2\xfb\x02\x06\x88\x96\x88\x92\x85\x99\x08\x0e\xf7\x5f\x16\xf8\xda\x07\xa7\x97\x99\xa5\x97\xc1\x1d\x6c\x6f\x8c\x75\x1b\x30\x5e"
+"\x5f\x30\x1f\x4a\x3e\x2e\xd8\xfc\x48\x07\x0e\xf1\xf8\x14\xf8\x82\x15\x9f\x64\x73\x92\x69\x1b\x28\x36\x36\x27\x2b\xe0\x39\xef\xed"
+"\xdf\xe1\xf0\xb9\x79\xb5\x68\xae\x1f\xf7\x2a\xf7\x2a\x90\x72\x9f\x5a\x9a\x6d\x19\x77\x96\x90\x85\x95\x1b\x92\x90\x91\x92\x90\x8a"
+"\x8f\x89\x96\x1f\x84\xab\x89\xa1\xa8\x1a\xb1\x8e\xa9\x92\xa4\x1e\x90\x9c\x8b\x8c\x8f\x1a\x91\x87\x8f\x85\x87\x82\x89\x88\x82\x1e"
+"\x83\x71\x79\x89\x5c\x1b\x6f\x73\x8e\x91\x6e\x1f\x8d\x80\x88\x8c\x86\x1b\x83\x85\x86\x83\x7e\xa6\x79\xb2\x7c\x1f\xb4\x7c\x91\x89"
+"\x98\x88\x08\xfb\x8c\xfb\x41\x15\xd3\xc7\x4e\x42\x41\x4f\x4f\x41\x41\x4f\xc7\xd6\xd5\xc7\xc6\xd7\x1f\x0e\xfc\x2c\xf7\x4e\x99\x0a"
+"\x0e\xfb\x28\xf7\x7f\xf7\x53\x15\x92\x7b\x75\x90\x78\x1b\x48\x4f\x52\x4a\x64\xa7\x73\xb8\xe8\xcd\xd3\xf0\x1f\xf7\xd4\x07\xc8\x82"
+"\xbd\x39\x30\x1a\x54\x82\x60\x72\x50\x1e\xa8\x06\xb2\xbb\xa0\xc6\xcb\x1a\xdd\x6c\xd9\x4b\xd7\x1e\x53\xce\x8a\x8c\x85\x92\x83\x96"
+"\x19\xcb\x5b\x07\x0e\xf1\xf7\x95\xf9\x19\x15\xfc\x59\x8a\x1d\xf7\xf0\x07\xf7\xb5\x5f\x05\xfc\x03\x8a\x1d\xf8\x52\x07\x0e\x66\x37"
+"\x1d\xf7\x80\xf7\x6d\x20\x1d\xc7\xf7\x26\xf8\xb0\x15\xa1\x0a\xd0\xc7\xa9\x6a\x4b\x1e\xfb\xe1\xf7\x20\xf7\xfe\x07\xf7\x0c\x4a\xce"
+"\xfb\x08\x42\x5a\x71\x4e\x63\x1e\xd9\x07\xfb\xa3\xf7\x51\x22\x1d\x66\x37\x1d\xf7\x29\xce\x15\xf6\x3a\x0a\x66\x37\x1d\xb4\xfc\xec"
+"\x22\x1d\xf7\xf4\xf8\xa4\xf7\x6c\x15\xf7\x83\xc8\xfb\x60\x06\xe3\xf7\x2f\x05\xf7\x08\xc9\x3a\x06\xac\xc6\x61\xa3\x5c\x38\x05\xfb"
+"\x23\x06\x38\x68\x84\x72\x65\x1f\x4b\x60\x69\x42\x2c\x1a\xfb\x08\xb8\x37\xdc\x69\x1e\x6a\x52\xb6\x74\xb1\xce\x05\x88\xa5\x97\x8a"
+"\xb5\x1b\xf7\xac\xc9\xfb\xb7\x06\x77\x85\x8b\x8c\x82\x1f\xaa\xf7\x2d\x15\x3a\xfb\x21\x57\x9d\x6c\xbe\x88\xd3\x19\xf7\xb6\xf7\x6c"
+"\x15\x33\xfb\x2f\x05\xfb\x5e\x06\x91\xf6\xc3\xbd\xf7\x01\x89\x08\x0e\x28\xf7\x0f\xbf\x15\x64\x4a\xec\x53\xcf\xf7\x0d\x05\xf7\xb1"
+"\xf7\x0b\xfb\x6e\x06\xcf\xf7\x0d\x05\xf7\x2a\xf7\x0b\x37\x06\xae\xc8\x29\xc3\x4a\xfb\x09\x05\xfb\xa4\xfb\x0b\xf7\x61\x06\x47\xfb"
+"\x0d\x05\xfb\x1d\xfb\x0b\x06\x0e\x2f\xf7\xf5\x75\x0a\x66\x28\x1d\xf7\x15\xf7\xcc\x44\x0a\x66\x28\x1d\xd0\xf7\xd5\x32\x0a\x66\x28"
+"\x1d\xf7\x2a\xf7\xaf\x15\xfb\xbf\x3c\xf7\xbf\x06\x0e\xf7\x59\x59\x0a\x0e\xf7\x59\x59\x0a\xfb\x58\xf7\x8d\x23\x1d\x66\xf7\xc5\x41"
+"\x0a\x0e\x66\xf7\xc5\x41\x0a\xbe\xf7\xf5\x23\x1d\xf7\xdf\xbd\x16\xfa\x04\xcd\xfd\xc2\xf9\xb8\x49\x06\x0e\x66\x5c\x0a\xa5\xf8\x03"
+"\x20\x1d\xfb\x2e\xf5\xf9\x32\x15\xac\xd5\x8b\x8b\xb1\x1b\xba\xb2\x79\x69\xa3\x1f\xad\x5c\xa0\x40\x41\x1a\x6f\x89\x73\x82\x4f\x1e"
+"\xc0\x46\x70\x97\x55\x1b\x5a\x64\x7b\x69\x69\x1f\x5d\x5c\x6f\x48\x4a\x1a\xfb\x01\xde\x36\xf6\xd7\xc8\xb4\xd8\xb6\x1e\xb1\xcf\xa7"
+"\xf7\x16\xf3\x1a\xf7\x5c\xfb\x03\xf7\x25\xfb\x2d\x5e\x5c\x81\x79\x63\x1e\xf7\xbf\xfc\x36\x15\x7d\x32\x84\x6a\x7d\x60\x08\x3d\x70"
+"\x5d\x5f\x55\x1b\x53\x6a\xbe\xe2\xf7\x08\xcd\xeb\xdb\xb6\xaf\x75\x62\xa5\x1f\x0e\xf8\x52\xf9\x2e\xf7\xb2\x15\x5f\xd9\x37\x3d\x64"
+"\x55\xb2\xfb\x44\x06\x5d\xa4\x75\xc3\x9d\x98\x8d\x8f\x9b\x1e\xc0\x07\x89\x82\x86\x8b\x84\x1b\x78\x87\x91\xa4\x1f\xf7\x30\xb7\x07"
+"\xd1\xfb\x27\x15\x4b\x8d\xbe\x6a\xea\x1b\xe0\xbf\xb1\xc8\xb0\x76\xa4\x61\x96\x1f\x26\xa7\x05\x76\x91\x86\x8f\x98\x1a\x9c\x9c\x95"
+"\xa6\xb1\x9b\x80\x6e\x8d\x1e\xdc\x06\xc8\x8a\x57\xb1\x37\x1b\x3d\x59\x66\x4f\x64\x9b\x7a\xc0\x7b\x1f\xeb\x6e\x05\x9e\x86\x91\x85"
+"\x7f\x1a\x78\x77\x81\x65\x62\x7c\x95\xa7\x86\x1e\xfc\xd5\xf7\x43\x15\xb0\x06\xf7\x1a\xe1\xea\xf7\x28\xf7\x26\x38\xdb\xfb\x2c\x1f"
+"\xfb\x40\x32\x1d\xf8\x15\x04\xf7\x6f\x9f\x07\xc6\xa7\x68\x40\x41\x6f\x68\x50\x1f\x0e\xce\xf7\xb8\xe2\x15\x63\x90\x73\x96\x75\xa5"
+"\x08\x6d\xaf\x7c\xbc\xc7\x1a\xd7\xa3\xc7\xb7\xad\x1e\xe2\x07\xfb\x13\x6b\x44\x2b\xfb\x1f\x1a\xfb\x00\xb2\x3a\xd7\x5c\x1e\xb5\x71"
+"\xaf\x81\xcf\x86\x08\xfb\x61\xf7\x17\xf7\x61\x07\xcf\x90\xaf\x95\xb6\xa5\x08\xd6\xba\xb2\xdc\xf6\x1a\xf7\x4d\xfb\x08\xf0\xfb\x68"
+"\x72\x7d\x8a\x88\x72\x1e\xf7\x17\x26\x15\xb4\x87\xa2\x80\xa1\x71\x08\xa9\x69\x9a\x5b\x52\x1a\x52\x7c\x5d\x6d\x69\x1e\x75\x72\x74"
+"\x80\x62\x87\x08\x0e\xf7\x0a\xf9\x4c\x24\x1d\xfd\x06\xfb\x04\xd4\xfc\x40\xf7\x20\xf8\x40\xf7\x5c\xfc\x40\xf7\x20\xf8\x40\xd4\x06"
+"\x0e\xf7\xf0\xf7\x68\xfb\x30\x15\x3e\x36\xf7\x8f\x06\x8a\xe0\x05\x40\xf9\xab\xf7\xfe\xfd\xab\x45\x06\x8c\x36\x05\xf7\x84\xe0\x42"
+"\xf9\xab\xf0\xe0\xfd\x8f\x36\xf3\x06\x0e\xf7\xf4\xf9\x93\xc9\x15\xfb\xb7\x06\xfb\x0d\x57\xc2\xf7\x16\xf7\x15\xbf\xc3\xf7\x0d\x1f"
+"\x8c\x0a\x43\x2b\x1a\xfb\x07\xb8\x37\x9a\x0a\x06\x0e\xf7\xf4\xf7\x7d\xc9\x15\x4d\xf7\xac\x07\xde\xae\x92\xa4\xb1\x1f\xcc\xb6\xac"
+"\xd4\xee\x1a\xf7\x03\x5d\xe0\x3d\xac\x1e\x99\x69\x70\x8f\x46\x1b\xfb\xac\x4d\xf7\xb7\x06\xf7\x0d\xbf\x54\xfb\x16\xfb\x16\x57\x54"
+"\xfb\x0d\x1f\x0e\xf4\xf7\xca\xfb\x6e\x15\xf7\x19\xf7\x60\x06\xe3\x8c\xc8\xa2\xbd\xbe\x08\xb7\xbd\x97\xb3\xec\x1a\xf7\xb8\xfb\x20"
+"\xfb\xb1\x07\x8d\xfb\x03\x68\x59\x39\x8a\x08\xf8\x53\xfb\x19\xfc\x53\x07\x38\x8e\x6a\xb9\x8d\xf7\x05\x08\xf7\xb1\xfb\x20\xfb\xb8"
+"\x07\x2e\x94\x69\xb0\x5a\x1e\xbc\x51\xcd\x70\xe8\x8a\x08\x0e\xf7\x6c\xf9\x6d\x15\xfb\x1b\xfb\x01\x06\x87\x34\xbe\x53\xe3\x83\x08"
+"\xb9\x07\x53\x95\x71\xa8\x8d\xbd\x08\xdb\x06\x0e\xfb\x97\x3d\x1d\xf7\x25\xf7\x6d\x20\x1d\x28\xf8\x73\xfa\x25\x15\xfb\x14\xfd\xa8"
+"\xfb\x55\xf8\x20\xfb\x28\x42\x9d\x6a\xe9\xb9\xf7\x85\xfc\x85\xf7\x2c\xfa\x44\x05\x0e\xfb\x97\x3d\x1d\xc8\xce\x15\xf7\x00\xf7\x2a"
+"\x05\x3f\x06\x39\x2a\x39\x47\x1d\xfb\x97\x3d\x1d\xfb\x15\xfc\xec\x22\x1d\x4b\xf8\xab\xf7\xd1\x15\xd8\xfc\x79\xfb\xc8\xd8\xf7\x7b"
+"\x07\x0e\x6e\xcc\xfb\x6e\x15\xf7\x20\xf7\xaf\x06\x4d\xae\xb6\x71\xd0\x1b\xf7\x1c\xe8\xf7\x07\xf7\x3a\xf7\x4b\x2b\xf7\x00\xfb\x36"
+"\x39\x44\x6d\x56\x5f\x1f\x5e\x56\x7b\x4f\xfb\x00\x1a\xf7\x99\xf7\x53\x15\xd3\xb6\x49\xfb\x04\x22\x5f\x4c\x42\x40\x5f\xcb\xf7\x01"
+"\xf7\x02\xb7\xca\xd8\x1f\x0e\x2f\x34\x1d\xbc\xf8\x1b\x15\xfb\x13\x06\x46\xfb\x2a\x05\xd0\x06\x0e\x2f\xf7\xaf\x74\x15\x9d\x06\xf7"
+"\x15\xe5\xd6\xf7\x00\xd1\x68\xb8\x44\xa0\x1f\x85\x0a\x8c\x1e\xf7\x1b\x06\xf7\x06\x89\x33\xd0\xfb\x25\x1b\xfb\x1d\x63\x0a\x6a\x64"
+"\x77\x4a\x66\x6f\x91\x98\x79\x1e\x7c\x96\x85\x96\x85\xa8\x08\xfb\x1d\x06\x90\xfb\x01\xc9\x56\xf7\x23\x7a\x60\x37\x18\x94\x9d\x96"
+"\x6a\x0a\x2f\x34\x1d\xfb\x20\xf8\x1b\x63\x1d\xd8\x06\xdd\xef\xdc\x8a\x0a\x2f\x34\x1d\xfb\x23\xfc\x3e\x22\x1d\xfb\x3d\xf7\x85\x99"
+"\x0a\xf7\x60\xf7\x94\xa4\x0a\x0e\xaf\xf9\x10\x24\x1d\xfb\x6a\x06\x92\x5b\x76\x8d\x70\x1b\x45\x43\x6c\x5a\x5e\x1f\x5d\x59\x73\x45"
+"\x35\x1a\xfb\x46\xf0\xfb\x00\xf7\x39\xdc\xd0\xa7\xbe\xb9\x1e\xb6\xbc\xa6\xd2\xd0\x1a\xd5\x71\xc3\x50\xc0\x1e\xf7\x0c\x06\xfb\xc0"
+"\x93\x50\x1d\xf8\x09\xf8\x93\xf9\x6e\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36"
+"\xf7\x5f\xf7\x5e\xfb\x37\xf7\x37\xfb\x5e\x1f\x5a\x04\xf7\x43\xf7\x21\xfb\x21\xfb\x43\xfb\x44\xfb\x21\xfb\x20\xfb\x45\xfb\x43\xfb"
+"\x1f\xf7\x22\xf7\x47\xf7\x3e\xf7\x23\xf7\x21\xf7\x41\x1f\xfb\x01\xfb\x37\x15\x70\x74\x74\x71\x6f\xa2\x74\xa6\xa6\xa2\xa2\xa6\xa6"
+"\x74\xa2\x70\x1f\xfb\x14\xfb\x00\x15\x92\x36\x96\x62\xa9\x5e\x08\x4c\xb5\xcb\x6b\xde\x1b\xd8\xc7\xa6\xc1\xb5\x1f\xaf\xba\x9a\xb8"
+"\x92\xe8\x80\x59\x80\x75\x71\x6d\x08\x54\x5b\x4f\x71\x3a\x1b\x3a\x4f\xa5\xc2\x5b\x1f\x71\xa9\x80\xa1\x80\xbd\x08\xf7\xee\xf7\x00"
+"\x15\x70\x74\x74\x71\x6f\xa2\x74\xa6\xa6\xa2\xa2\xa6\xa6\x74\xa2\x70\x1f\x0e\xfb\x09\xc7\x16\xf8\x77\xa2\x06\xfb\x35\x93\x3f\xe0"
+"\x8e\xf7\x3e\x08\x38\xb7\xb9\x6a\xd4\x1b\xd1\xc5\xc9\xd5\xcf\x71\xb4\x20\xec\x1f\xfb\x01\xf0\x78\xa6\x64\xf7\x09\x7b\x2f\x50\x35"
+"\x21\x35\x08\x3b\x48\x68\x53\x4b\x1a\x40\xc8\x4d\xd4\xb5\xb4\x9c\xa9\xab\x1e\x9e\x9d\x96\x9a\x9c\xb0\x91\xfb\x3b\x34\x2c\xfb\x33"
+"\x8a\x08\x0e\xf7\xf0\xf9\x6a\xf9\x7e\x15\xfc\x7f\x38\x06\xf7\x55\xfb\xe8\xfb\x55\xfc\x06\x05\x36\xf8\x87\xf7\x7d\x2d\x07\x89\xfb"
+"\x1e\x05\xfb\xb2\x06\xf7\x4f\xf7\xfe\xfb\x4e\xf7\xda\x05\xf7\xaa\x06\x8f\xfb\x1e\x05\xe6\x06\x0e\xf7\xa1\xf7\x94\xf8\xa3\x15\x6b"
+"\x62\x7a\x63\x85\x58\x08\xfb\x10\x4f\xf7\x10\x06\x90\x5b\x9f\x5a\xa8\x67\x34\x34\x18\xb5\x62\xe2\xe2\xb5\x6b\xb7\x79\xb9\x86\x19"
+"\xfb\x0f\xc6\xf7\x0f\x07\xba\x90\xba\x9e\xb3\xaa\xe2\x34\x18\xb4\xb4\x34\xe2\xa9\xb1\x9e\xb8\x91\xbd\x19\xf7\x0f\xc7\xfb\x0f\x06"
+"\x85\xbd\x78\xb8\x6d\xb1\xe2\xe1\x18\x62\xb4\x34\x34\x66\xa9\x5c\x9e\x59\x91\x19\xf7\x0f\x50\xfb\x0e\x07\x5b\x85\x5e\x78\x64\x6c"
+"\x34\xe2\x18\x61\x62\x05\xf7\xb9\x50\x15\xf0\xdf\x36\x26\x24\x37\x37\x24\x23\x39\xde\xf4\xf2\xde\xdd\xf4\x1f\x0e\xfb\x5e\xf7\x2e"
+"\x16\xf7\x20\xf8\x40\xf7\x22\xf7\x04\xfc\x3d\xfb\x04\xf7\x23\x06\x0e\xfb\xcf\xf7\x73\xf7\xe5\x15\xee\xae\x1d\x28\x50\x48\xc6\xfb"
+"\x3a\x07\x36\xb8\x61\xe7\xab\xa1\x8e\x93\xa6\x1e\xed\x07\x89\x7d\x83\x8a\x80\x1b\x67\x82\x96\xbb\x1f\xf7\x14\xd2\xce\x07\x0e\xfb"
+"\x97\x4c\x1d\x72\xf8\x1d\x15\xfb\x04\xce\x07\x8c\x59\x75\x6d\x5d\x82\x08\x5d\x07\xd1\x8d\xc2\xcb\x35\x0a\xf2\x07\x0e\xfb\xcf\xf7"
+"\x3f\x79\x15\x87\x9c\x9b\x8a\x9b\x1b\xaa\xa3\x8e\x93\xa5\x1f\xed\x07\x89\x7d\x84\x8a\x7f\x1b\x66\x83\x96\xba\x1f\xf7\xbb\xae\x1d"
+"\xfb\xe0\x07\x54\x9a\x6d\xb0\x74\x1e\x56\x25\x05\x95\x9f\x95\x8d\x4c\x0a\x76\x91\xa3\x54\x34\x0a\xcd\xa6\x85\xb8\x1b\xde\xb9\x52"
+"\x0a\x7c\x50\x0a\x20\xf7\xa4\xf9\x76\x15\x3c\x4c\x6d\x51\x5e\x1f\x5d\x4e\x75\x30\xfb\x17\x1a\x22\x9c\x26\xa5\x54\x1e\x35\xb5\xd0"
+"\x60\xed\x1b\xf7\x3b\xe3\xf7\x14\xf7\x89\xf7\x08\x79\xe9\x69\xc7\x1f\xda\x5e\x48\xb2\x33\x1b\xfb\x07\xfb\xd4\x15\x8d\xd0\x8f\xac"
+"\x93\xa5\x08\xbf\x9d\xac\xa6\xba\x1b\xc2\xae\x6b\x4b\x99\x1f\x92\x6a\x8e\x75\x8c\x53\x08\x2e\x04\x3a\x87\x61\x7e\x67\x1e\x58\x78"
+"\x6d\x72\x5d\x1b\x52\x65\xb2\xd3\x7f\x1f\x84\xb0\x8a\xa1\xcc\x1a\x0e\xfb\xcf\xf7\x6e\xf9\xa9\x23\x1d\x66\x26\x0a\x68\xf9\x80\x15"
+"\x5d\x82\x75\x77\x5e\x1b\x5e\x72\xa0\xb8\x84\x1f\x54\x06\x8a\x87\x8b\x86\x8a\x1a\x3f\xc3\x52\xd7\xdb\xbf\xc3\xe2\x1e\x0e\x66\x26"
+"\x0a\x6d\xf9\x89\x32\x0a\x66\x26\x0a\xbb\xf9\x63\x28\x0a\x2b\xf8\xd4\xfb\x6b\x15\xfc\xec\x46\xf8\xec\x06\xf7\x63\x04\xfc\xec\x46"
+"\xf8\xec\x06\x0e\x0e\xfb\xcf\x8e\x0a\x66\x42\x1d\xfb\x19\x4f\x22\x1d\xfb\xcf\x4c\x1d\xfb\x42\xfc\x84\x15\xfb\x04\xce\x07\x8c\x59"
+"\x75\x6d\x5d\x82\x08\x5d\x07\xd1\x8d\xc2\xcb\x35\x0a\xf2\x07\x0e\xfb\xcf\xf7\xcf\xf9\x63\x28\x0a\x4b\x0a\xd2\x8e\x16\xf9\x5d\x06"
+"\xfb\x98\xf9\x6d\x05\xfb\x55\x06\x4c\xfc\xf0\x15\xf7\x33\xf8\x60\xf7\x34\xfc\x60\x05\x0e\xf7\x2e\xf7\xf1\x7b\x0a\xf7\x0d\x98\x1d"
+"\xf7\xcc\xf7\x11\xfb\x37\x07\xb6\xa6\x9f\xa0\x0a\xf7\x5c\xfb\x27\xf7\x24\xfb\x5f\xfb\x5e\xa5\x1d\x9f\x7a\xb6\x70\x08\xfb\x37\xfb"
+"\x11\xf7\xcc\x06\x0e\x67\xcc\xf8\xb0\x15\xfd\x8a\xf7\x19\xf7\x9b\x07\x5f\xa1\xa7\x78\xb5\x1b\xbf\xaa\xa1\xcb\xae\x1f\x47\xf7\x20"
+"\xf8\xb0\x55\x0a\x49\x64\x63\x4c\x49\x68\xb0\xd1\x1e\xf7\xe5\x07\x0e\xfb\x14\xf8\x94\xf7\xe0\x15\x87\xca\x80\xac\x6d\xb0\x08\xc2"
+"\x5f\x48\xa8\x39\x1b\x47\x4e\x77\x66\x5f\x1f\x52\x5a\x67\x36\x36\x1a\xfb\x1d\xd7\x2e\xf7\x25\x64\x1e\xe3\x73\x05\xb9\x7e\x9a\x7e"
+"\x6f\x1a\x73\x7c\x5c\x6b\x42\x1e\xf7\x09\x06\xb2\xf3\x92\xa8\xb5\x1a\xac\x80\xa5\x75\xa1\x1e\x78\x9d\x78\x94\x4a\xa2\x53\x9e\x18"
+"\x5f\x9a\x61\xa1\x77\x9d\x08\x6d\xa6\x79\xbb\xbf\x1a\xe3\xbd\xc6\xd4\xca\xb1\x66\x48\x91\x1e\x0e\x9e\x22\x0a\x6d\xf9\xbf\x21\x1d"
+"\xd2\x3e\x1d\xf7\x2e\xf7\x63\x21\x1d\x2f\x5b\x0a\x6a\x3f\x1d\xe6\xf7\x6d\x21\x1d\xfb\x3d\xf7\x75\xf8\x4b\x15\xf7\x39\xf7\x8d\xf7"
+"\x11\xfc\x23\xfb\xb6\x59\xfb\x11\xbd\xfb\xce\xf7\x2a\xf7\xce\xf7\x51\xf7\x11\x07\x0e\xfb\x8c\xf7\x60\xf7\xd5\x15\xf5\xf7\x52\xf7"
+"\x05\xfb\xde\xfb\x6f\x62\x2c\xb4\xfb\x76\xf7\x20\xf7\x76\xf7\x34\xea\x07\x0e\xf8\x70\xf8\x62\x16\x2e\x1d\xf0\x51\x0a\xc5\xfb\x33"
+"\xf7\x2a\xf7\xb0\x27\x06\xfb\x00\xf7\x9f\xf7\x06\xf7\xe5\x05\xfb\x2b\xc4\x1d\x20\xf7\xa5\xfb\x2a\xfb\xa5\xfb\x02\x94\x1d\xf7\x1b"
+"\xf7\xdf\x05\xf2\x06\x0e\xf7\x8c\xf8\x83\x16\xf7\x83\xcc\x07\x4b\x1d\xbd\xfb\x34\xf7\x20\xf7\xa5\x32\x06\x46\xf7\x50\xe5\xf7\x83"
+"\x05\xfb\x22\xac\x0a\x4a\xf7\x50\xfb\x20\xfb\x50\x45\x06\x46\xf7\x50\x05\xfb\x21\x06\xe4\xfb\x83\xfb\x04\xfb\xc1\x05\xf7\x24\x06"
+"\xe4\xf7\x83\x05\xd1\xfb\x83\x06\x0e\x75\xf7\xd6\x74\x15\xf7\x23\x8d\xf7\x00\xf1\xf7\x18\x1a\xe1\x61\xcc\x42\xa4\x1e\xcc\xaf\xaa"
+"\xbd\xd0\x1a\xf7\x06\x26\xde\xfb\x1e\x3f\x42\x72\x63\x61\x1e\x64\x66\x7b\x5e\x44\x1a\x72\xf7\x2a\xa4\x07\xc3\xad\xad\xc4\xc3\xb1"
+"\x69\x59\x56\x62\x66\x51\x1e\x5e\xfb\x11\xc3\x06\xa2\xa2\x84\x7e\x9f\x1f\xa6\x79\x97\x71\x64\x1a\x49\x64\x63\x4c\x66\x6c\x98\xa1"
+"\x7a\x1e\x7b\xa0\x84\xa7\xc0\x1a\xfb\x2a\x6f\x06\x89\xfb\x13\xdd\x32\xf7\x1e\x78\x5f\x36\x18\x94\x9e\x95\x6a\x0a\xfb\x2b\xf7\x95"
+"\x74\x15\xf7\x08\x8f\xdd\xd3\xeb\x1a\xc4\x72\xb1\x4f\xad\x1e\xbd\xa5\xa6\xb7\xc1\x1a\xe3\x3b\xc6\xfb\x0d\xfb\x09\x37\x50\x39\x1e"
+"\x64\xf7\x1a\x97\x07\xac\xa4\xa1\xb2\xb3\xa3\x75\x67\x63\x71\x78\x56\x1e\x70\x2c\xa6\x06\xb4\x96\x89\x7f\x99\xc2\x1d\x6e\x6f\x63"
+"\xa9\x1d\xfb\x20\x06\x8d\xfb\x06\xcc\x43\xf7\x05\x7d\x60\x36\x18\x95\x9f\x94\x8d\x4c\x0a\x74\x92\xa2\x56\x34\x0a\xcd\xa7\x85\x8b"
+"\x0a\x5b\x7d\x49\x1d\x0e\xdb\xf8\x7d\x16\xfb\x34\xf7\x2a\xf7\xb1\x2b\x07\xfb\x00\xf7\x9f\x94\x0a\x3a\x86\x0a\xe0\x51\x0a\x0e\x60"
+"\xf8\x2f\x16\xfb\x34\xf7\x20\xf7\xa5\x22\x07\x45\xf7\x50\xe6\xf7\x83\x05\xfb\x23\xac\x0a\x59\xf7\x50\x2d\x1d\xf7\x83\xbd\x06\xe5"
+"\xfb\x83\x05\x0e\xa9\xf7\x8b\xf8\x5c\x15\x6d\x86\x0a\xa9\xfb\x20\xda\xf7\x20\x9f\x06\x7f\x0a\x30\xfb\xa5\x05\x71\xf7\x20\x3c\x06"
+"\x0e\x32\xf7\x80\xf7\xf4\x15\x6b\xf7\x50\x2d\x1d\xf7\x83\xab\x28\xa9\xee\xa6\x06\x46\x0a\x70\xf4\x6d\x06\x0e\x65\xc5\xf8\xf0\x15"
+"\xfc\xf0\x2e\x1d\xe5\x07\xf7\x1a\xfb\xdf\x05\xf7\x32\x06\xfb\x32\xf8\x1c\x94\x0a\x35\xf7\xa5\xfc\x20\xfb\x11\x06\x0e\xfb\x28\xf7"
+"\x42\xf8\xaf\x15\xfb\xd1\x8c\x05\xfb\x05\xf7\x45\xfc\x3f\xf7\x20\xf7\x83\xcc\x07\x46\x0a\x4a\x06\x0e\xd5\xa3\x0a\xcd\xfb\x34\xf7"
+"\x2a\xf7\xb1\x49\xf8\xf0\x89\x0a\x5e\x9d\x0a\xc3\xfb\x35\xf7\x20\xf7\xa6\x53\xf8\x3f\x92\x0a\xd5\xf8\x23\x75\x15\xf7\x3e\x96\xf7"
+"\x01\xf2\x92\xf7\x31\x08\x45\x0a\xf7\x23\x06\x91\x1d\xfb\x77\xf7\x0b\xfb\x26\xf7\x54\x83\x1f\x60\x38\x05\x94\x9e\x96\x8e\x4c\x0a"
+"\x74\x91\xa3\x56\x34\x0a\xcc\xa7\x85\xb8\x1b\xde\xb9\x52\x0a\x7c\x50\x0a\x2f\xf7\xcb\x75\x15\xf7\x07\x92\xe1\xe0\x95\xf7\x09\x08"
+"\x5e\x1d\x53\x1b\x44\x61\xca\xf5\xbf\x95\xba\x9c\xab\x1f\x5b\x1d\xf7\x1a\x06\x47\x0a\xfb\x3f\xdc\x29\xf7\x2c\x7f\x1f\x60\x37\x05"
+"\x94\x9d\x96\x8e\xb4\x1d\x70\x70\x93\xa1\x59\x34\x0a\xca\xaa\x85\x8b\x0a\x5c\x7c\x7e\x89\x86\x7e\x1f\x0e\x9e\x2a\x1d\x0e\x22\xf8"
+"\x20\x24\x1d\xfb\x03\xfc\x1d\xfb\x0c\x4d\x0a\xf7\x59\xfc\xb0\x05\xfb\x6e\xf7\x20\xf7\x6e\x07\xf7\x54\xf8\xb0\x05\x0e\x9e\xf8\x37"
+"\xf7\x83\x15\xab\x07\xf7\x7b\xf8\x5e\x05\xfb\x3c\x06\xfb\x1f\xfb\xd5\xfb\x29\xf7\xd5\x05\xfb\x3b\x06\xf7\x86\xfc\x5e\x05\x6b\xfb"
+"\x17\xfb\x11\xf7\x17\xfb\x06\xf7\x2a\xf7\x06\xf7\x17\xf7\x11\x07\x0e\x22\xf7\xf0\x16\xf7\x54\xf8\xb0\x05\xfb\x24\x06\xfb\x03\xfc"
+"\x1d\xfb\x0c\x4d\x0a\xf7\x59\xfc\xb0\x05\x20\x2c\xf6\xfb\x0f\xf7\x20\xf7\x0f\xf6\xea\x06\x0e\xd0\xf8\x32\xf8\x06\x15\xf7\x7a\xf7"
+"\xfb\x05\xfb\x44\x06\xfb\x1d\x81\x0a\xf7\x3d\x06\xf7\x20\xf7\x91\xf7\x1d\xfb\x91\x05\xd7\xfb\x33\xf7\x2a\xf7\xb0\xfb\x14\x06\x0e"
+"\x46\xf7\xf3\xf7\xa4\x15\xf7\x44\xf7\xa0\x05\xfb\x3c\x06\x34\xfb\x37\x33\xf7\x37\x05\xfb\x3c\x06\xf7\x44\xfb\xa0\xfb\x48\xfb\xa4"
+"\x05\xf7\x3c\x06\xe7\xf7\x3c\xe6\xfb\x3c\x05\xd6\xfb\x33\xf7\x20\xf7\xa4\xfb\x0e\x06\x0e\xd0\xf8\x88\x16\xcd\xfb\x36\xf7\x2a\xf7"
+"\xb3\x49\xf8\xf0\x6c\x0a\x5c\xf8\x1d\x16\xc6\xfb\x31\xf7\x20\xf7\xa2\x53\xf8\x3f\x69\x0a\xd0\xf8\x15\xf7\x74\x15\xaa\x8e\x9e\x90"
+"\xcd\x9c\x08\xfb\x8d\x48\x1d\xfb\xf4\x07\x62\x7f\x68\x84\x63\x86\x08\xf7\x27\x3c\xfb\x2c\x07\x41\x90\x62\xab\xc2\x1a\xf7\xb5\xfb"
+"\x2a\xfb\xb5\x07\x8a\xfb\x1a\xef\x38\xf7\x3a\x88\x08\xfb\x1b\xda\x07\x0e\x5c\xf7\xd7\xf7\x37\x15\xa6\x90\x9d\x8f\xa4\x93\x08\xfb"
+"\x48\xf7\x23\xf8\xb0\xfb\x20\xfb\x8d\x07\x70\x81\x78\x86\x70\x86\x08\xf7\x0d\x4f\xfb\x11\x07\x5c\x8e\x71\x9e\xa9\x1a\xf7\x71\xfb"
+"\x20\xfb\x71\x07\x57\x96\x65\xa1\x72\x1e\x6c\xa8\xc0\x78\xca\x1b\x96\x93\x8b\x8c\x9b\x1f\xfb\x08\xc7\x07\x0e\xd0\xf7\x6d\xf9\x6d"
+"\x15\x33\x0a\xf7\xf4\x06\x9e\xd0\xc9\x95\xbb\x1b\xde\xbb\x6a\x50\x1f\xfb\xb5\xf7\x2a\xf7\xb5\x07\xf7\x1f\x24\xdc\xfb\x43\x4f\x6f"
+"\x87\x72\x2d\x1e\x0e\x6a\xdd\x16\xf7\x20\xf7\xbb\x06\xc8\xa7\xab\xa5\xbc\x1b\xbf\xad\x68\xa5\x0a\xee\x44\xd1\x28\x52\x64\x7b\x56"
+"\x46\x1e\xf7\xc9\xfb\x20\x07\x0e\xf7\x6a\x31\x1d\x0e\xc2\xf8\x81\xf7\x11\x15\x21\xfb\xb0\xf7\x2a\xf7\x33\xf5\xf9\x6d\x96\x0a\x4e"
+"\x81\x5a\x9f\x1d\xf7\x44\xc6\xa7\x8f\xa4\xe9\x1e\x0e\x48\xf8\x13\xf7\x05\x15\x47\xfb\xa5\xf7\x20\xf7\x34\xd2\xf8\xb0\xfb\x20\xfb"
+"\x8d\x06\x7a\x5e\x65\x84\x64\x8d\x1d\xbf\xc4\x94\x9c\xc4\x1f\x0e\xf7\x16\xb5\xf8\x3b\x15\x88\x71\x8a\x7a\x75\x1a\xfb\x00\xb1\x24"
+"\xcb\x5a\x1d\xcb\xd0\xb1\xf2\xf7\x01\x1a\xf7\x0f\x5c\xf7\x07\x3d\xcf\x1e\xbd\x50\x41\xa5\x34\x1b\xfb\x24\x21\x4b\xfb\x11\x4b\x1f"
+"\xf7\x16\x4b\x05\xe3\xb5\xc1\xb0\xe1\x1b\xf3\xcb\x4c\xfb\x13\xa3\x1f\xfb\x11\x04\xfb\x10\x76\x45\x46\x22\x1b\x23\x44\xd0\xf7\x10"
+"\x76\x1f\x0e\xd2\x3e\x1d\xf8\x4b\xf7\x2d\x15\xfb\xbf\x3c\xf7\xbf\x06\x0e\x6a\x3f\x1d\xf8\x0c\xf7\x1c\x28\x0a\xf7\x16\xf8\x18\xf9"
+"\x79\x15\x25\x37\x69\x48\x4d\x1f\x4a\x45\x66\x25\xfb\x01\x1a\xfb\x01\xb0\x24\xcc\x5a\x1d\xca\xce\xb2\xf5\xf2\x1a\xf7\x06\x66\xf2"
+"\x4a\xd0\x1e\xd0\x4b\x3b\xab\x21\x1b\xf7\x59\xfc\x4f\x15\xfb\x10\x76\x45\x46\x22\x1b\x23\x44\xd0\xf7\x10\x76\x1f\xf7\x11\x04\xf7"
+"\x0e\xa1\xd1\xcf\xf3\x1b\xf3\xd1\x47\xfb\x0e\xa1\x1f\x0e\x66\xf7\xc5\x54\x1d\xf7\x10\xfb\xe1\x15\x3a\x7c\x5f\x5e\x4b\x1b\x4b\x5f"
+"\xb8\xdc\x7c\x1f\xe9\x04\xdc\x9a\xb7\xb8\xcb\x1b\xcb\xb7\x5e\x3a\x9a\x1f\x0e\x71\xf8\x66\xfa\x16\x5d\x1d\xfc\x33\xfd\xc7\x15\xf7"
+"\x23\x06\xce\x8c\xbd\xab\xa9\xc7\xf7\xb0\xf9\x10\x18\xfb\x2f\x06\xfb\x2e\xfc\x05\xfb\x2f\xf8\x05\x05\xfb\x2f\x06\xf7\x7d\xfc\x9e"
+"\x78\x63\x7d\x67\x89\x89\x73\x87\x19\xfb\x15\x06\x0e\x2f\xf8\x4c\xf9\x4f\x5d\x1d\x66\x3b\x78\x1d\x0e\xfb\xcf\xf8\x66\xfa\x2a\xbd"
+"\x1d\xf7\xa0\xb0\x89\x15\xf7\x69\xaf\x8f\xa5\xc8\x1f\xf7\x05\xbd\xdf\xf7\x33\xf7\x37\x1a\xe1\x70\xd6\x5f\xad\x1e\xa4\x6c\x5e\x97"
+"\x50\x1b\xfb\x08\x38\x6b\x4d\x5e\x1f\x71\x67\x81\x64\x89\x42\xcc\xab\x18\x97\x07\xc1\x9c\xb1\xad\xa2\x1e\x9c\x96\x95\x8e\xb9\x94"
+"\x42\xfc\x1f\x18\x7c\x45\x73\x61\x6e\x81\x08\x77\x06\xd3\x8a\x15\xc8\xbc\x9a\xac\xa1\xf7\x0f\xc2\xf7\xd2\x18\x92\x06\x90\x06\x9e"
+"\x06\xa9\x97\x88\x7f\x9e\x1f\xb3\x72\xa1\x51\x3a\x1a\x20\x73\x34\x5c\x4c\x1e\x64\x59\x58\x6e\x54\x88\x08\xf7\x7b\xfb\x7d\x15\xce"
+"\x06\xad\xf7\x52\x05\x7d\xaa\x97\x88\x9e\x1b\xf7\x06\xee\xf7\x29\xf7\x42\xec\x64\xbd\x3e\x5c\x63\x77\x66\x6d\x1f\x69\x61\x79\x55"
+"\x75\xfb\x0b\x08\xb9\xfb\x00\x15\xae\xf7\x54\x05\xe1\x9b\xad\xbc\xb7\x1b\xb2\xa0\x63\x41\xfb\x20\x56\xfb\x02\x47\x71\x77\x95\xa1"
+"\x79\x1f\x0e\xf7\x0c\xf7\xe0\xf7\x11\x15\x5a\xaa\x76\x9c\x78\xa2\x08\x66\xb8\x76\xd0\xda\x1a\xf7\x26\xd9\xe9\xf7\x0c\xf7\x0d\xd9"
+"\x2d\xfb\x26\x42\x79\x49\x6a\x5e\x1e\x77\x70\x75\x79\x55\x68\x08\xfb\x11\xf7\xcc\xf7\x11\xfb\x3e\x07\xbf\xad\x9c\x99\x9f\xa2\x08"
+"\xb7\xbe\xa2\xd0\xdd\x1a\xf7\x5a\xfb\x27\xf7\x25\xfb\x5e\xfb\x5f\xfb\x27\xfb\x25\xfb\x5b\x40\x9f\x49\xb1\x5a\x1e\xa2\x6e\x9d\x7c"
+"\xc4\x65\x08\xfb\x3e\xfb\x11\xf7\xcc\x06\x0e\xf7\xc5\x2f\x1d\x0e\x4b\x0a\xf7\xf4\xf8\xa9\xf8\x95\x15\x49\x06\xfb\x74\xfc\x95\x05"
+"\xdb\x06\xf7\x45\xf8\x2d\xf7\x45\xfc\x2d\x05\xdb\x06\x0e\xf7\xf4\xf8\xa9\x16\xf7\x74\xf8\x95\x05\x3b\x06\xfb\x45\xfc\x2d\xfb\x45"
+"\xf8\x2d\x05\x3b\x06\xf7\x74\xfc\x95\x05\x0e\xf7\xf4\xf8\x8c\xf9\x60\x15\xfb\x60\xfb\x34\xfb\x33\xfb\x5e\xfb\x5b\xf7\x34\xfb\x33"
+"\xf7\x5d\xf7\x5b\xf7\x34\xf7\x34\xf7\x5c\xf7\x59\xfb\x35\xf7\x36\xfb\x57\x1f\xa4\x52\x15\xf7\x23\x7e\xf7\x06\xfb\x06\x99\xfb\x25"
+"\x08\xfb\xa3\x06\xf7\xa4\x52\x15\x82\xfb\x22\xfb\x0d\xfb\x0f\xfb\x22\x80\x08\xf7\xa8\x07\x53\xfb\xa8\x15\xfb\x27\x99\xfb\x05\xf7"
+"\x05\x7d\xf7\x29\x08\xf7\xa6\x06\xfb\xa6\xc4\x15\x99\xf7\x24\xf7\x07\xf7\x06\xf7\x25\x99\x08\xfb\xa4\x07\x0e\x5f\xb6\x16\xf8\x9b"
+"\xf8\x9b\xfc\x9b\x06\xf8\x67\xfc\x67\x15\xfc\x33\xf8\x33\xf8\x33\x06\x0e\xd2\xf8\xeb\xf8\xf7\x15\x45\xfb\xa4\x06\xfb\x05\x86\x5f"
+"\x7b\x6b\x1e\x56\x70\x50\x67\x4c\x1b\x54\x54\xa7\xb7\x6e\x1f\x73\xb0\x84\xb7\xf7\x11\x1a\xf7\xa4\x45\xfb\xa1\x07\xfb\x29\x90\x65"
+"\xa6\x5f\x1e\x45\xb5\xd7\x62\xe5\x1b\xde\xd1\xac\xc9\xb8\x1f\xaf\xbc\x91\xaf\xf7\x36\x1a\x0e\x54\xf8\x27\xf8\x1c\x15\xfb\x69\x06"
+"\x41\xf7\x4d\x05\x2d\x06\xf7\x7d\xfc\xd5\x05\xde\x06\xf7\x7d\xf8\xd5\x05\x2d\x06\x22\xfb\x9d\x15\x3f\xfb\x48\x40\xf7\x48\x05\x0e"
+"\x66\xf8\x65\x16\x73\x82\x83\x88\x7d\x82\x08\x5a\x6f\x6d\x5d\x60\xbb\x1d\xa7\x9f\x0a\x73\x9c\xaf\xba\xb1\xb8\xd4\xb0\x1f\xf8\xb0"
+"\x55\x0a\x4b\x5f\x61\x46\x4f\x6d\xab\xcc\x1e\xf7\xef\xfb\x20\xfc\x0c\x07\xfb\x0c\xcc\x48\xf7\x08\xd4\xbc\xa5\xc8\xb3\x1e\x4b\x07"
+"\x0e\x49\x3c\x1d\x0e\x49\x3c\x1d\xcb\xf8\xa1\x25\x1d\x49\x3c\x1d\xbe\xf8\xa1\x82\x1d\x49\x3c\x1d\xf7\x2d\xf8\xcf\x23\x1d\x66\x26"
+"\x0a\x27\xf9\x96\x2c\x1d\x0e\x66\x26\x0a\x9f\x40\x0a\xf7\x16\x30\x0a\xa2\x43\x1d\xf7\x16\x30\x0a\xfb\x17\xf9\x7d\x4f\x1d\xf7\x16"
+"\x30\x0a\xfb\x11\xf9\x7b\x25\x1d\xf7\x16\x30\x0a\xfb\x62\xf9\x89\x21\x1d\xfb\x5f\xf8\x35\xfb\x6e\x15\xb1\xef\x97\xbb\xc0\x1a\xb0"
+"\x7f\xab\x76\x9e\x1e\x78\x9d\x74\x93\x59\x91\x46\x93\x18\x54\x92\x7f\x8e\x79\x98\x08\x76\x9a\x7e\xa9\xaa\x1a\xb7\xa5\xb2\xb3\x9a"
+"\x1e\x96\xa9\xa8\x8f\xc9\x1b\xcb\xf7\x05\x4d\x06\x63\x6d\x90\x95\x73\x1f\x6c\x98\x75\xaa\xac\x1a\xa9\x9d\xa7\xa7\x99\x1e\x97\xa4"
+"\xa3\x8f\xbf\x1b\xe4\xf7\x05\xfc\x22\xfb\x05\xdd\x06\x66\x6c\x7b\x6c\x61\x1a\x4e\xac\x62\xd0\x72\x1e\x5d\x7c\x76\x81\x73\x76\x08"
+"\x64\x6b\x76\x5b\x51\x1a\x49\xa8\x4f\xb9\x6a\x1e\xab\x74\xb2\x80\xcd\x84\xb9\x87\x18\xb5\x87\x94\x89\x97\x82\x08\x95\x84\x91\x7b"
+"\x79\x1a\x6e\x84\x76\x5f\xfb\x01\x1e\x0e\x2f\x2e\x0a\xfb\xcc\xf7\x6d\x2b\x1d\x2f\x2e\x0a\xfc\x2d\xf7\x6d\x21\x1d\xfb\x28\x36\x0a"
+"\x43\xf7\xde\x20\x1d\xfb\x28\x36\x0a\xfb\x2d\xf7\xd0\x27\x0a\xfb\x50\xd1\xf8\xfc\x15\xf7\x58\x06\x3f\x57\x69\x6a\x5e\x4c\x08\x50"
+"\x38\x6f\x3c\x34\x1a\x33\xad\x44\xc4\x6e\x1e\xa8\x7d\xb7\x80\xc0\x86\xb0\x88\x18\xcf\x85\x99\x82\x66\x1a\x69\x7e\x62\x63\x32\x1e"
+"\xf7\x0a\x06\xb3\xf4\x94\xb0\xc7\x1a\xdc\x68\xab\x2a\x94\x1e\x65\x8f\x54\x90\x74\x90\x79\x96\x19\x70\x9b\x7c\xb0\xbb\x1a\xd4\xa9"
+"\xd7\xc5\xd8\x1e\xc4\xd7\xb7\xae\xeb\xba\x08\xf7\x05\xfc\x11\x07\x0e\x74\xa2\xf8\xb0\x94\xf7\x48\x97\x6b\x9a\x06\xf7\x10\x0a\xf7"
+"\x1f\x0b\xc8\x92\x90\x8e\x8f\x9a\x96\x92\x90\x8e\x8e\x8f\x0c\x0c\xca\x90\x95\x90\x99\x90\x92\x97\x97\x8e\x8e\x97\x0c\x0d\xf7\xaa"
+"\x14\xf9\x1c\x15\xc0\x13\x00\x8e\x02\x00\x01\x00\x08\x00\x0c\x00\x11\x00\x16\x00\x1b\x00\x33\x00\x5c\x00\x5f\x00\x62\x00\x79\x00"
+"\x7d\x00\x82\x00\xa3\x00\xbe\x00\xf1\x01\x22\x01\x51\x01\x70\x01\x79\x01\x80\x01\x86\x01\x8a\x01\xa9\x01\xad\x01\xb1\x01\xb5\x01"
+"\xbf\x01\xc4\x01\xd5\x01\xdb\x01\xde\x01\xe3\x02\x01\x02\x09\x02\x29\x02\x3d\x02\x46\x02\x4b\x02\x60\x02\x6f\x02\x75\x02\x7a\x02"
+"\x7d\x02\x82\x02\x88\x02\x8f\x02\x96\x02\x9e\x02\xa4\x02\xab\x02\xaf\x02\xb8\x02\xbe\x02\xc4\x02\xc9\x02\xce\x03\x6d\x03\xdc\x04"
+"\x4a\x04\x5d\x04\xb9\x05\x0e\x05\x3b\x05\x8f\x05\xc2\x05\xe1\x06\x13\x06\x2e\x06\x35\x06\x65\x06\x69\x06\x8c\x06\xb1\x06\xc4\x06"
+"\xd0\x06\xd4\x06\xe4\x06\xea\x06\xef\x07\x10\x07\x23\x07\x2d\x07\x30\x07\x4a\x07\x54\x07\x6f\x07\x7f\x07\x99\x07\xaa\x07\xc3\x07"
+"\xdc\x07\xf3\x08\x00\x08\x09\x08\x1e\x08\x2d\x08\x32\x08\x46\x08\x5a\x08\x69\x08\x7c\x08\x8f\x08\x96\x08\xa1\x08\xb3\x08\xb6\x08"
+"\xbf\x08\xc6\x08\xd6\x08\xdf\x08\xec\x08\xf5\x08\xfd\x09\x05\x09\x08\x09\x15\x09\x1c\x09\x29\x09\x31\x09\x39\x09\x45\x09\x4a\x09"
+"\x56\x09\x62\x09\x66\x09\x6a\x09\x75\x09\x80\x09\x8b\x09\x96\x09\xa1\x09\xab\x09\xb5\x09\xbf\x09\xc9\x09\xd2\x09\xdb\x09\xe4\x09"
+"\xed\x09\xf6\x09\xfc\x0a\x02\xf8\x89\xa2\x0a\x71\x0a\x0b\xf9\x6d\x15\x0b\xf7\x79\x4e\x1d\x0b\x15\xfb\x00\x52\x1d\xf8\x1a\x3f\x0a"
+"\x0b\xf8\x8c\x21\x0a\x85\x1d\xe3\x1b\xe3\xd8\xa5\xbb\xc0\x1f\xbc\xb7\xa1\xc5\xdd\x1a\xf8\x82\x07\x0b\xf8\xb1\x16\xf8\xb0\xfb\x20"
+"\xfb\xe6\x07\x4b\x5f\x61\x46\x4f\x6d\xab\xcc\x1e\xf7\xef\xfb\x20\xfc\x0c\x07\xfb\x0c\xcc\x48\xf7\x08\xd4\xbc\xa5\xc8\xb3\x1e\x4b"
+"\x07\x0b\x45\x1d\x0e\x5d\x1d\x0e\xf8\x93\x16\x48\x1d\xfc\x84\x06\xfb\xb5\xf8\x84\x05\xfb\x2e\xfd\x6d\xf7\x2a\xf8\x8c\x06\x0b\x15"
+"\xf6\x3a\x0a\xf7\x2a\xf9\x6d\x0b\xf8\xf3\xf8\x8f\x15\x67\x0a\xfb\x30\x94\xf6\x36\xf7\x4e\x1b\xf7\x50\xf7\x03\xe2\xf7\x29\xf7\x07"
+"\x51\xc7\xfb\x1b\xa5\x1f\x7e\x0a\x0b\xf9\x3e\xf8\x76\x15\x91\x1d\xfb\x7f\xf7\x13\xfb\x26\xf7\x5f\xf7\x4a\xf7\x0c\xf4\xf7\x3b\x94"
+"\x1f\x45\x0a\x0b\xf8\x1e\xf8\xb0\x15\xfb\x04\xfc\x1d\xfb\x0b\x4d\x0a\xf7\x5d\xfc\xc6\x05\x53\x68\x65\x57\x80\x82\x8d\x8f\x7a\x1e"
+"\x22\x07\x88\xa0\x97\x8a\x9c\x1b\xaf\xb3\x92\x95\xa4\x1f\xb2\x9b\x9c\xa1\xa2\xcc\xc5\x1d\x0b\xf9\x6e\x16\xf7\x5e\xf9\x6d\x56\x0a"
+"\xfb\x01\xfc\xb7\xfb\x0a\xf8\xb7\x05\xfb\x28\x06\xfb\x05\xfc\xb6\xfb\x05\xf8\xb6\x56\x0a\xf7\x62\xfd\x6d\x05\xf7\x1b\x06\xf7\x0b"
+"\xf8\xcd\xf7\x0e\xfc\xcd\x05\x0b\xf8\xf9\x16\xf7\x2d\xf8\xb0\x05\xfb\x25\x06\x39\xfc\x0e\x3a\xf8\x0e\x05\xfb\x20\x06\x39\xfc\x0e"
+"\x35\xf8\x0e\x05\xfb\x25\x06\xf7\x2c\xfc\xb0\x05\xf7\x24\x06\xe1\xf8\x11\xdc\xfc\x11\x05\x0b\xf8\xd6\x21\x0a\xfc\xb8\xfb\x11\xf8"
+"\x09\x06\xfc\x09\xfc\x73\x05\xfb\x11\xf8\xb8\xf7\x11\xfc\x08\x07\xf8\x08\xf8\x73\x05\x0b\x9e\x0a\xf7\xce\xf7\x27\x9e\x0a\x0e\xfb"
+"\x2a\xfd\x6d\xf7\x2a\x0b\x1f\x78\x57\x05\x75\x0b\x88\xd9\x08\x0b\xf8\x5f\x24\x1d\xfc\x38\xfb\x05\xf7\x8d\x06\xfb\x9f\xfb\xce\x05"
+"\xfb\x05\xf8\x53\xf7\x05\xfb\xa6\x07\xf7\x9d\xf7\xce\x05\x0b\x15\x90\x1d\x0b\xfa\x2e\x25\x1d\xfa\x3c\x20\x1d\xf7\x2a\x05\x3f\x06"
+"\x39\x2a\x39\x47\x1d\xf7\x65\x48\x0a\x0b\x15\xfb\xb5\xea\xf8\x3d\x4b\x07\x59\x7d\x5d\x72\x3d\x1b\x4e\x07\x0b\xf7\x26\x15\x33\x1d"
+"\x0b\xa8\x0a\x0e\xf9\x79\x6c\x1d\x0b\xf9\x81\x15\x6b\x88\x7f\xaf\x1d\x98\x67\x8a\x8b\x78\x1b\x54\x51\x1d\x94\x95\x89\x87\x96\x5f"
+"\x1d\xab\xb5\xe0\x8f\x1f\x0e\x54\x1d\x8c\xfb\x05\x70\x0a\x0b\x15\x5c\x82\x75\x78\x5e\x1b\x5e\x72\xa0\xb8\x84\x1f\x54\x06\x32\x8d"
+"\xbd\x55\xdb\x1b\xd6\xc4\xc4\xd6\x8d\x8b\x8f\x8a\x90\x1f\x0e\x89\x87\x96\x1f\xd3\x71\x05\x83\x9f\x9e\x87\x9a\x1b\xc6\xab\xb5\xe0"
+"\x8f\x1f\x0e\x15\x53\x06\x5d\x82\x75\x56\x1d\x0e\xfb\x26\x77\x0a\x0b\x4b\x1d\xf7\x23\x06\xfb\x03\xf7\xc1\xe5\xf7\x83\x05\xfb\x22"
+"\x06\x45\xfb\x50\x05\x0b\xf7\x18\x81\x34\xda\xfb\x1c\x1b\xfb\x36\x2e\x21\xfb\x4c\x0b\x24\x1d\x2d\x1d\x06\x0b\xfc\x3f\xa4\x1d\x0b"
+"\x76\x0a\x0e\xcb\xf7\xe7\x3e\x0a\x9e\x1b\xaa\xa6\x1d\x0b\xf8\x1d\x05\xfb\x2e\x06\x0b\xf7\x0e\x05\xfb\x19\x06\x0e\x8c\x79\x1b\x53"
+"\x68\x5d\x3d\x0b\x7f\x89\x86\x7d\x1f\x0e\x06\xf7\x1a\xfb\xdf\x05\x0b\x54\x0a\x5b\x0b\x8e\x8e\x84\x1f\x43\xa4\x05\x97\x0b\xac\xc7"
+"\xb7\x6e\xa6\x0b\xfb\x20\xfb\xe6\x07\x0b\x05\xfb\x33\x06\x0b\xf8\xf0\xfb\x2a\x0b\xf9\x5c\xf7\x2c\x15\x63\x7f\x5f\x6f\x5b\x1b\x64"
+"\x68\x9d\xaa\x77\x1f\x7c\xa2\x86\xa3\xb9\x1a\xf7\xfe\x06\x8c\x97\x8b\x92\x90\x1a\xc1\x83\xbf\x7e\xaf\x1e\xee\x66\x35\xc5\xfb\x04"
+"\x1b\x4e\x56\x7a\x6a\x62\x1f\xac\x65\x50\x9c\x3d\x1b\xfb\x29\x3e\x4c\xfb\x10\x89\x1f\xf7\x17\x06\xc1\x92\xa4\x9f\xca\x1b\xc4\xa7"
+"\x7a\x67\x7b\x82\x7b\x7c\x83\x62\x1d\xfb\x00\x79\x58\x54\x29\x1a\x26\xcc\x4b\xf2\xdc\xc9\xaa\xd5\xc9\x1e\x47\xb5\xd1\x67\xe3\x1b"
+"\xf7\x0e\xec\xcf\xf6\xaa\x1f\xfc\x84\xcb\x15\x39\x64\x5e\x43\x5c\x6e\xa4\xb4\xb4\xa6\xa4\xc0\x92\x1e\xbb\x92\xa9\x90\x97\x8f\x9c"
+"\x95\x19\xf7\x21\xcc\x15\xdc\x91\xb0\xb5\xcb\x1b\xcc\xb0\x61\x3a\x92\x1f\x0b\xf8\x9a\x24\x1d\xda\x30\xb0\x2c\xfb\x02\x1a\x2c\x6d"
+"\x52\x59\x75\x7b\x95\x9f\x7e\x1e\x7e\xa1\x87\xa5\xcb\x1a\xf7\x3e\xfb\x12\xfb\x3e\x07\x51\x88\x72\x81\x76\x1e\x72\x7f\x78\x7e\x73"
+"\x1b\x59\x6d\xc4\xea\xf7\x03\xb0\xe9\xda\xe6\x1f\xfb\x2c\x06\x43\x31\x6b\x2f\xfb\x07\x1a\x33\x9f\x4b\xb5\x5a\x1e\x61\xaf\xbd\x74"
+"\xc1\x1b\xcd\xbc\xac\xcf\xad\x1f\x46\xae\xbb\x6b\xcd\x1b\xc1\xbe\xa3\xb5\xaf\x1f\xb4\xbc\x9f\xcb\xe1\x1a\xf7\x08\x6b\xe7\x43\xe5"
+"\x1e\x0b\xf7\x39\xbf\x15\x59\xc5\xd5\x72\xe6\x1b\xf2\xdd\xac\xcf\xcb\x1f\xcb\xcf\xb1\xf3\xf6\x1a\xe8\x6f\xe9\x5e\xc8\x1e\xe4\xee"
+"\x57\xb8\x38\x2f\x05\xc6\x48\x45\xa4\x2c\x1b\x22\x39\x6a\x47\x4c\x1f\x49\x46\x66\x24\xfb\x01\x1a\x29\xa6\x36\xc2\x41\x1e\x35\x2c"
+"\xbe\x5d\x05\xf8\x79\xf8\xac\x15\x99\x64\x93\x5a\x5b\x1a\xfb\x30\x3c\x27\xfb\x0f\x57\x5b\x9d\xa9\x6c\x1e\x61\xc3\x15\x78\xb6\x81"
+"\xbc\xc2\x1a\xf7\x31\xda\xef\xf7\x10\xc3\xba\x78\x64\xb0\x1e\x0b\x27\x1d\xfb\x8a\xf8\x4a\x15\xf7\x13\xfb\x2a\x05\xd0\x06\x46\xf7"
+"\x2a\x05\x0e\xf7\x12\xae\x15\x67\xb3\xcf\x75\xd3\x1b\xf7\x39\xf1\xf7\x01\xf7\x45\xd3\x7c\xc5\x6b\xbd\x1f\xd3\xd4\x60\xb4\x47\x45"
+"\x05\xb5\x58\x51\x9f\x42\x1b\xfb\x3c\x65\x1d\x40\x9b\x4f\xad\x5a\x1f\x40\x3e\xb6\x63\x05\xf8\x03\xf8\x0a\x15\x93\x73\x8f\x72\x70"
+"\x1a\x27\x56\x45\x41\x6a\x6e\x99\xa7\x73\x1e\x6d\xbf\x15\x82\xa2\x86\xa7\xaa\x1a\xf0\xbf\xd1\xd6\xae\xa6\x7d\x6a\xa6\x1e\x0b\xd8"
+"\xf7\xe7\x15\xfb\xe7\xf7\xb1\x07\xf7\x06\xd0\xa4\xc7\xbb\x1f\xc2\xcf\xac\xf3\xf7\x00\x1a\xf7\x00\x6a\xf2\x54\xd0\x1e\xc6\x5a\x48"
+"\xa4\xfb\x07\x1b\xfb\xb1\xfb\xca\x3e\x3b\x06\xf7\x77\x16\xf7\x2a\xdb\xfb\x2a\xf7\x4d\xf7\x1b\x06\xcc\xb1\x7b\x65\xa5\x1f\xaa\x5f"
+"\x9a\x4e\x3a\x1a\x3b\x7c\x4e\x6c\x5f\x1e\x65\x71\x65\x7b\x4a\x1b\xfb\x1b\x06\x0e\xdd\x16\xf7\xdc\x06\xdf\xc3\x9b\xb0\xb7\x1f\xb7"
+"\xb0\xa7\xc8\xc6\x1a\xd3\x65\xc4\x38\xbb\x1e\xd3\xb9\xa7\xb5\xc9\x1a\xbe\x72\xbf\x62\xaf\x1e\xb0\x60\x58\x9b\x3d\x1b\xfb\xd9\x7e"
+"\x1d\x15\xa6\x9d\x89\x89\x94\x1f\xa7\x84\x9d\x74\x6e\x1a\x68\x71\x72\x67\x61\x76\xa0\xb8\x89\x1e\x2f\x06\x30\x8c\xc3\x57\xec\x1b"
+"\xec\xca\xc1\xdf\xba\x75\xad\x5f\xa1\x1f\xad\xa0\x9d\xaa\xb0\x1a\xd2\x52\xb9\x33\x57\x60\x7a\x6b\x72\x1e\x78\x74\x84\x72\x88\x59"
+"\x08\xe4\x06\xc2\x8c\x9a\x9e\xb4\x1b\xab\xa0\x76\x6a\x65\x71\x77\x59\x1f\x81\x06\x0b\xfb\x26\x3f\x4d\xfb\x11\x82\x1e\xf7\x1b\x06"
+"\xc3\x92\xa2\x9d\xd0\x1b\xc1\xa6\x79\x67\x79\x82\x7c\x7c\x82\x62\x1d\x20\x79\x57\x54\x2a\x1a\x2a\xcc\x4a\xee\xc7\xc1\xa4\xbf\xbd"
+"\x1e\x6f\x8e\x81\x98\x7b\x1e\x0b\xce\x21\x0a\xfd\x6d\xbc\x1d\xaa\xa2\x80\x75\x9b\x1e\x98\x79\x8e\x7c\x82\x0a\x5e\x1b\x46\x59\x70"
+"\x4f\x64\x1f\xf7\x9f\x07\x0b\xf8\x37\xf8\x08\x15\xf7\x75\xf7\xf9\x05\xfb\x42\x06\xfb\x1a\xfb\x84\xfb\x14\xf7\x84\x05\xfb\x46\x06"
+"\xf7\x72\xfb\xfe\xfb\x7a\xfc\x03\x05\xf7\x42\x06\xf7\x1f\xf7\x91\xf7\x20\xfb\x91\x05\xf7\x46\x06\x0e\x36\x46\xfb\x03\x67\x96\x6c"
+"\x9e\x76\x1f\x9e\x78\x9c\x82\xbf\x7a\xf7\x3b\x57\x18\xae\x80\x97\x80\x75\x1a\x0b\xf8\x27\xf8\xb0\x78\x1d\x0b\xf8\xa6\xf7\x76\x15"
+"\x8c\x96\x8b\x95\x90\x1a\xbe\x83\xc0\x7e\xaf\x1e\xed\x67\x34\xc6\xfb\x01\x1b\xfb\x2e\x2c\xfb\x04\xfb\x49\xfb\x41\xea\x21\xf7\x2e"
+"\xf7\x0e\xee\xd0\xf5\xaa\x1f\xfb\x24\x06\x0b\xf7\x6c\x68\x0a\xf7\x2b\x8a\x26\xde\xfb\x4c\x1b\xfb\x43\x95\x0a\xf1\x77\x05\xef\x78"
+"\xb0\x6f\x50\x1a\x4e\x53\x66\x30\x25\x52\xb6\xd9\x86\x1e\xfb\x26\x06\x0b\xf8\xcc\x15\xf7\x17\xfc\xcc\x05\xf7\x2a\x06\xf7\x15\xf8"
+"\xcc\x05\xfc\xcc\x2b\x0a\xfb\x76\x07\xfb\x14\xfc\xd8\xfb\x18\xf8\xd8\x05\xfb\x74\x32\x1d\x0e\xfb\x20\xfb\x8d\x06\x7b\x5e\x64\x83"
+"\x65\x8d\x1d\xbe\xc4\x94\x9c\xc5\x1f\x0e\x8e\x78\x0a\xde\xb8\x54\x0a\x5c\x7c\x49\x1d\x0e\xf7\x69\x6d\x0a\x96\x0a\x4d\x81\x5b\x9f"
+"\x1d\xf7\x43\xc7\xa7\x8f\xa4\xe9\x1e\x0e\x31\x1d\xfb\x04\x38\x0a\x48\x0a\x21\x41\x1d\xfc\xb7\x15\x5d\xf7\x95\xfb\x01\x06\xfb\x39"
+"\xfb\x96\x05\x41\xf7\x47\x2e\xea\xe8\xb9\x07\xfb\x21\xd6\x15\x21\x06\xf5\xf7\x38\x05\x0e\x15\xd8\xbd\x46\x21\x26\x57\x45\x40\x3f"
+"\x58\xd0\xf3\xf3\xbe\xd0\xd7\x1f\x0b\xfb\x90\xf9\x6d\x05\xfb\x3a\x8c\x1d\x0b\x87\x1d\x0e\xb7\x1d\xb1\x1f\x8a\xfb\x3c\x15\xb4\xa5"
+"\x70\x5e\x62\x71\x70\x62\x62\x71\xa6\xb5\xb6\xa5\xa7\xb4\x1f\x0b\x15\x53\x06\x5c\x82\x75\x78\x95\x1d\x0e\x16\xf7\x4e\xf8\xb0\x05"
+"\xfb\x28\x06\xfb\x01\xfc\x1f\xfb\x09\xf8\x1f\x05\xfb\x28\x06\xf7\x51\xfc\xb0\x05\x0e\x15\xf7\x5e\xf7\x34\x07\xc2\xad\x65\x4d\x4d"
+"\x68\x63\x55\x1f\x0b\x06\x2e\x81\x51\x56\x2e\x1b\xfb\x08\x47\xe9\xf7\x33\xf7\x35\xd2\xeb\xf7\x0a\xe2\xbc\x61\x32\x9f\x1f\x0b\x57"
+"\x1d\x72\x92\xa2\x58\x1f\x78\x57\x05\x76\xc8\xac\x84\xb8\x1b\x0b\xf7\xe3\x15\xfb\x3b\xf7\x26\x05\xfb\x06\x07\xf0\x32\x26\x32\x05"
+"\xfb\x09\x07\xf7\x3b\xf7\x28\x05\x0b\x71\xb2\x77\x1e\x5a\x70\x76\x6b\x59\x1a\x3a\xc9\x53\xe4\xe4\xc9\xc3\xdc\xbd\x76\xab\x5a\xa6"
+"\x1e\x0b\xf7\x11\x15\x5c\xa9\x77\x9a\x79\xa0\x08\x63\xb9\x75\xd1\xde\x1a\xf7\x25\xd9\xe9\xf7\x0c\x0b\x15\xf7\x00\xf7\x2a\x05\x3f"
+"\x06\x38\x2a\x3a\x47\x1d\x63\x1d\xd7\x06\xde\xef\xdc\x8a\x0a\xfb\x06\xa1\x05\x20\xa0\x6c\xa0\xc0\x1a\xc2\xbb\xae\xd9\xea\xc0\x63"
+"\x41\x90\x1e\x0b\xf7\x1a\xfb\xdf\x05\xf7\x32\x06\xfb\x32\xf8\x1c\xa9\x0a\x0b\x9e\x1d\xfb\x20\x0b\xfb\x84\xfb\x13\xf7\x84\x05\xfb"
+"\x4a\x06\xf7\x76\xfb\xfb\xfb\x76\xfc\x06\x05\x0b\x69\x1a\xfb\xde\xf7\x20\xf7\xfe\x07\xce\x79\xbb\x66\xaa\x1e\xa5\x6c\x5e\x9a\x0b"
+"\x51\x0a\xf7\x33\x06\xfb\x33\xf8\x1c\xf7\x07\xf7\xe5\x05\x0b\x15\xa9\xa4\x72\x6d\x6d\x72\x72\x6d\x6d\x72\xa4\xaa\xa8\xa5\xa4\xa8"
+"\x1f\x0b\xfb\x45\xbe\x05\x64\x97\x81\x93\xa1\x1a\xa9\xab\x9f\xbc\xce\xac\x73\x5a\x0b\xf7\xa5\x33\x0a\xf7\xdf\x0b\x06\xab\x90\x97"
+"\x98\xa2\x1b\x95\xa2\x1d\x0b\x1e\x8f\x61\x8d\x75\x7f\x1a\x79\x85\x81\x7f\x85\x89\x8c\x96\x80\x1e\x0b\xa3\x1d\x0e\x27\x05\xd9\x06"
+"\x24\xf7\x2a\x05\x0e\xb8\x1b\xde\xb8\x54\x0a\x0b\xf7\xb7\xc9\xfb\xac\x06\x38\x68\x84\x72\x66\x1f\x4a\x60\x69\x0b\xf7\x0b\x16\xbe"
+"\x1d\xfc\x23\x06\x0b\xf7\xbe\xf7\xea\x15\xfb\xa4\xfb\x1b\xf7\xa4\x06\x0e\xb4\xfb\x01\x1b\xfb\x62\xfb\x14\x0b\xd4\x16\xab\x0a\xfb"
+"\xde\x06\x0b\xfb\x2a\xfc\xf0\xfb\x9e\x60\x1d\x9b\x0a\x0e\xf7\x39\xf7\xfe\xf7\x11\xfc\x94\xfd\x6d\xf7\x2a\x0b\xa9\x0a\x26\xfb\xa5"
+"\x05\x0b\x26\x39\xfb\x22\xfb\x05\xc4\x54\xf7\x28\x6f\x1f\x0b\xfb\x2a\xfb\xf4\x06\x78\x46\x0b\x1b\xcb\xb1\x60\x3b\x92\x1f\x0b\x06"
+"\xad\xf7\x42\x05\x22\x06\x69\xfb\x42\x05\x0b\xf9\x35\xa4\x0a\x0b\xda\x69\x1e\x7d\xad\xa6\x87\xd0\x1b\xf7\xac\x0b\xfb\x20\xfb\x5c"
+"\xfb\x57\xf7\x5c\xfb\x20\x06\x0b\x3a\x1d\x06\x0e\xcb\xba\x1d\x0b\x15\xfb\x12\x06\x45\xfb\x27\x05\xd1\x06\x0b\x1e\xba\x07\x88\x78"
+"\x78\x89\x77\x1b\x57\x0b\x9c\xa1\xa6\x08\xb5\xbe\xa1\xd0\xdc\x1a\x0b\xfc\xb0\xf7\x20\xf7\xd8\x07\xcb\xb7\xb5\x0b\xf7\x27\x15\xbb"
+"\xfb\x27\x05\xf7\x2e\x06\x0b\xf7\x6d\xf7\xdf\x15\xf7\xb5\xfb\xdf\x0b\x15\x41\x06\x55\xfb\x94\x05\xc4\x06\x0b\x57\x1f\xfb\xbb\xf7"
+"\x20\xf7\xdb\x07\x0b\xf7\x62\x15\x63\x87\x77\x7c\x5b\x1b\x0b\x7f\x7b\x76\x1b\x84\x77\x8e\x8e\x0b\x15\xfb\x0f\xf7\x10\xf7\x0f\x07"
+"\x0b\xf7\x07\xf7\xe5\x05\xfb\x2c\x06\x0b\xaa\xaa\xc5\x99\x1f\x9b\xcb\x90\x0b\xf7\x20\xf8\x3f\xf7\x52\xf7\x05\x0b\x06\x45\xfb\x50"
+"\x05\x0b\x15\xde\x94\xae\xb3\x0b", 34024
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusSans-BoldItalic.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusSans-BoldItalic.cff.cpp
new file mode 100644
index 0000000000..becc7420ee
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusSans-BoldItalic.cff.cpp
@@ -0,0 +1,1236 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusSans_BoldItalic_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x16\x4e\x69\x6d\x62\x75\x73\x53\x61\x6e\x73\x2d\x42\x6f\x6c\x64\x49\x74\x61\x6c\x69\x63\x00\x01"
+"\x01\x01\x37\xf9\xbc\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x14\x04\x7f\x0c\x02\xfb\x03\x0c\x03\xd0\x0c\x04"
+"\xfb\x0e\xfb\xc9\x1c\x04\xac\xfa\xc5\x05\x1c\x25\xfe\x0f\x1c\x26\x11\x11\xb2\x1d\x00\x00\x8c\x28\x12\x01\xa6\x02\x00\x01\x00\x08"
+"\x00\x0e\x00\x13\x00\x1d\x00\x24\x00\x2b\x00\x35\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00\x6e\x00\x74"
+"\x00\x7a\x00\x84\x00\x8b\x00\x8e\x00\x95\x00\x9c\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00\xe3\x00\xe7"
+"\x00\xf2\x00\xf4\x00\xfa\x01\x04\x01\x0b\x01\x12\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01\x59\x01\x5f"
+"\x01\x6b\x01\x6f\x01\x71\x01\x77\x01\x7d\x01\x89\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01\xd0\x01\xd2"
+"\x01\xd5\x01\xdb\x01\xe1\x01\xed\x01\xf0\x01\xf6\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02\x38\x02\x3e"
+"\x02\x4b\x02\x52\x02\x59\x02\x60\x02\x6f\x02\x7b\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02\xb9\x02\xbf"
+"\x02\xc9\x02\xcd\x02\xd3\x02\xda\x02\xe3\x02\xec\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03\x3d\x03\x46"
+"\x03\x4f\x03\x58\x03\x61\x03\x6a\x03\x73\x03\x7c\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03\xcd\x03\xd6"
+"\x03\xdf\x03\xe8\x03\xf1\x03\xfa\x04\x03\x04\x0c\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04\x5d\x04\x66"
+"\x04\x6f\x04\x78\x04\x81\x04\x8a\x04\x93\x04\x9c\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04\xed\x04\xf6"
+"\x04\xff\x05\x08\x05\x11\x05\x1a\x05\x23\x05\x2c\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05\x7d\x05\x86"
+"\x05\x8f\x05\x98\x05\xa1\x05\xaa\x05\xb3\x05\xbc\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06\x0d\x06\x16"
+"\x06\x1f\x06\x28\x06\x31\x06\x3a\x06\x43\x06\x4c\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06\x9a\x06\xa3"
+"\x06\xac\x06\xb5\x06\xbf\x06\xc6\x06\xcf\x06\xdb\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07\x1b\x07\x21"
+"\x07\x26\x07\x2d\x07\x3a\x07\x40\x07\x46\x07\x50\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07\x92\x07\x9a"
+"\x07\xa3\x07\xae\x07\xb4\x07\xb9\x07\xbe\x07\xc4\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08\x10\x08\x12"
+"\x08\x19\x08\x21\x08\x29\x08\x33\x08\x3d\x08\x49\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08\x9c\x08\xa8"
+"\x08\xb4\x08\xba\x08\xc0\x08\xc6\x08\xd2\x08\xd6\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09\x1c\x09\x22"
+"\x09\x2e\x09\x38\x09\x40\x09\x42\x09\x48\x09\x55\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09\xa4\x09\xa7"
+"\x09\xa9\x09\xb0\x09\xbc\x09\xca\x09\xcd\x09\xda\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e"
+"\x0a\x34\x0a\x39\x0a\x42\x0a\x47\x0a\x50\x0a\x53\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d"
+"\x0a\xa4\x0a\xab\x0a\xb2\x0a\xb9\x0a\xc0\x0a\xc7\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d"
+"\x0b\x14\x0b\x1b\x0b\x22\x0b\x29\x0b\x30\x0b\x37\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d"
+"\x0b\x84\x0b\x8b\x0b\x92\x0b\x99\x0b\xa0\x0b\xa7\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed"
+"\x0b\xf4\x0b\xfb\x0c\x02\x0c\x09\x0c\x10\x0c\x17\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d"
+"\x0c\x64\x0c\x73\x0c\x87\x0c\x93\x0c\x98\x0c\x9e\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5"
+"\x0c\xe9\x0d\x1f\x0d\x5f\x0d\x76\x0d\x81\x41\x45\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41\x6c\x70\x68"
+"\x61\x74\x6f\x6e\x6f\x73\x41\x6d\x61\x63\x72\x6f\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x42\x65"
+"\x74\x61\x43\x61\x63\x75\x74\x65\x43\x63\x61\x72\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74\x61\x63\x63"
+"\x65\x6e\x74\x43\x68\x69\x44\x63\x61\x72\x6f\x6e\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65\x45\x63\x61"
+"\x72\x6f\x6e\x45\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65\x6b\x45\x70"
+"\x73\x69\x6c\x6f\x6e\x45\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45\x75\x72\x6f"
+"\x47\x61\x6d\x6d\x61\x47\x62\x72\x65\x76\x65\x47\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65"
+"\x6e\x74\x47\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a\x49\x62\x72"
+"\x65\x76\x65\x49\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f\x74\x61\x49"
+"\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x49\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69\x72\x63\x75"
+"\x6d\x66\x6c\x65\x78\x4b\x61\x70\x70\x61\x4b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c\x61\x6d\x62"
+"\x64\x61\x4c\x63\x61\x72\x6f\x6e\x4c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63\x75\x74\x65"
+"\x4e\x63\x61\x72\x6f\x6e\x4e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75\x6e\x67\x61"
+"\x72\x75\x6d\x6c\x61\x75\x74\x4f\x6d\x61\x63\x72\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72\x6f\x6e\x4f"
+"\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x4f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73\x69\x52\x61"
+"\x63\x75\x74\x65\x52\x63\x61\x72\x6f\x6e\x52\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75\x74\x65\x53"
+"\x63\x65\x64\x69\x6c\x6c\x61\x53\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x53\x69"
+"\x67\x6d\x61\x54\x61\x75\x54\x62\x61\x72\x54\x63\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54\x68\x65\x74"
+"\x61\x55\x62\x72\x65\x76\x65\x55\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f\x67\x6f\x6e"
+"\x65\x6b\x55\x70\x73\x69\x6c\x6f\x6e\x55\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c\x6f\x6e\x74"
+"\x6f\x6e\x6f\x73\x55\x72\x69\x6e\x67\x55\x74\x69\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78"
+"\x57\x64\x69\x65\x72\x65\x73\x69\x73\x57\x67\x72\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59\x67\x72\x61"
+"\x76\x65\x5a\x61\x63\x75\x74\x65\x5a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61\x65\x61\x63"
+"\x75\x74\x65\x61\x66\x69\x69\x30\x30\x32\x30\x38\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31\x38\x61\x66"
+"\x69\x69\x31\x30\x30\x31\x39\x61\x66\x69\x69\x31\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69\x31\x30\x30"
+"\x32\x32\x61\x66\x69\x69\x31\x30\x30\x32\x33\x61\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35\x61\x66\x69"
+"\x69\x31\x30\x30\x32\x36\x61\x66\x69\x69\x31\x30\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31\x30\x30\x32"
+"\x39\x61\x66\x69\x69\x31\x30\x30\x33\x30\x61\x66\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61\x66\x69\x69"
+"\x31\x30\x30\x33\x33\x61\x66\x69\x69\x31\x30\x30\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30\x30\x33\x36"
+"\x61\x66\x69\x69\x31\x30\x30\x33\x37\x61\x66\x69\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66\x69\x69\x31"
+"\x30\x30\x34\x30\x61\x66\x69\x69\x31\x30\x30\x34\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30\x34\x33\x61"
+"\x66\x69\x69\x31\x30\x30\x34\x34\x61\x66\x69\x69\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69\x69\x31\x30"
+"\x30\x34\x37\x61\x66\x69\x69\x31\x30\x30\x34\x38\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35\x30\x61\x66"
+"\x69\x69\x31\x30\x30\x35\x31\x61\x66\x69\x69\x31\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69\x31\x30\x30"
+"\x35\x34\x61\x66\x69\x69\x31\x30\x30\x35\x35\x61\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37\x61\x66\x69"
+"\x69\x31\x30\x30\x35\x38\x61\x66\x69\x69\x31\x30\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31\x30\x30\x36"
+"\x31\x61\x66\x69\x69\x31\x30\x30\x36\x32\x61\x66\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61\x66\x69\x69"
+"\x31\x30\x30\x36\x37\x61\x66\x69\x69\x31\x30\x30\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30\x30\x37\x30"
+"\x61\x66\x69\x69\x31\x30\x30\x37\x31\x61\x66\x69\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66\x69\x69\x31"
+"\x30\x30\x37\x34\x61\x66\x69\x69\x31\x30\x30\x37\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30\x37\x37\x61"
+"\x66\x69\x69\x31\x30\x30\x37\x38\x61\x66\x69\x69\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69\x69\x31\x30"
+"\x30\x38\x31\x61\x66\x69\x69\x31\x30\x30\x38\x32\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38\x34\x61\x66"
+"\x69\x69\x31\x30\x30\x38\x35\x61\x66\x69\x69\x31\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69\x31\x30\x30"
+"\x38\x38\x61\x66\x69\x69\x31\x30\x30\x38\x39\x61\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31\x61\x66\x69"
+"\x69\x31\x30\x30\x39\x32\x61\x66\x69\x69\x31\x30\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31\x30\x30\x39"
+"\x35\x61\x66\x69\x69\x31\x30\x30\x39\x36\x61\x66\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61\x66\x69\x69"
+"\x31\x30\x30\x39\x39\x61\x66\x69\x69\x31\x30\x31\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30\x31\x30\x32"
+"\x61\x66\x69\x69\x31\x30\x31\x30\x33\x61\x66\x69\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66\x69\x69\x31"
+"\x30\x31\x30\x36\x61\x66\x69\x69\x31\x30\x31\x30\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31\x30\x39\x61"
+"\x66\x69\x69\x31\x30\x31\x31\x30\x61\x66\x69\x69\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69\x69\x31\x30"
+"\x38\x34\x36\x61\x66\x69\x69\x36\x31\x32\x34\x38\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35\x32\x61\x6c"
+"\x70\x68\x61\x61\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x61\x6e\x67"
+"\x6c\x65\x72\x69\x67\x68\x74\x61\x6f\x67\x6f\x6e\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e\x67\x61\x63"
+"\x75\x74\x65\x61\x72\x72\x6f\x77\x62\x6f\x74\x68\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72"
+"\x72\x6f\x77\x72\x69\x67\x68\x74\x61\x72\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77\x75\x70\x64"
+"\x6e\x62\x73\x65\x62\x65\x74\x61\x63\x61\x63\x75\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x63"
+"\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x63\x68\x69\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75\x62\x64\x63"
+"\x61\x72\x6f\x6e\x64\x63\x72\x6f\x61\x74\x64\x65\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f"
+"\x6e\x6f\x73\x65\x62\x72\x65\x76\x65\x65\x63\x61\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d\x65\x6e\x74"
+"\x65\x6d\x61\x63\x72\x6f\x6e\x65\x6e\x67\x65\x6f\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c\x6f\x6e\x74"
+"\x6f\x6e\x6f\x73\x65\x71\x75\x69\x76\x61\x6c\x65\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74\x61\x74\x6f"
+"\x6e\x6f\x73\x65\x78\x63\x6c\x61\x6d\x64\x62\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65\x66\x72\x61"
+"\x6e\x63\x67\x61\x6d\x6d\x61\x67\x62\x72\x65\x76\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d\x61\x61\x63"
+"\x63\x65\x6e\x74\x67\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61\x72\x68\x63"
+"\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x68\x65\x61\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d\x61\x63\x72"
+"\x6f\x6e\x69\x6e\x66\x69\x6e\x69\x74\x79\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69\x6e\x74\x65"
+"\x67\x72\x61\x6c\x74\x70\x69\x6e\x74\x65\x72\x73\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x69\x6f"
+"\x67\x6f\x6e\x65\x6b\x69\x6f\x74\x61\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69"
+"\x73\x74\x6f\x6e\x6f\x73\x69\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78"
+"\x6b\x61\x70\x70\x61\x6b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63\x6c\x61\x63"
+"\x75\x74\x65\x6c\x61\x6d\x62\x64\x61\x6c\x63\x61\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64\x6f\x74\x6c"
+"\x65\x73\x73\x65\x71\x75\x61\x6c\x6c\x69\x72\x61\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75\x73\x69\x63"
+"\x61\x6c\x6e\x6f\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70\x6f\x73\x74"
+"\x72\x6f\x70\x68\x65\x6e\x63\x61\x72\x6f\x6e\x6e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e"
+"\x74\x6e\x6f\x74\x65\x71\x75\x61\x6c\x6e\x75\x6f\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x6f\x6d"
+"\x61\x63\x72\x6f\x6e\x6f\x6d\x65\x67\x61\x6f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d\x69\x63\x72"
+"\x6f\x6e\x74\x6f\x6e\x6f\x73\x6f\x72\x74\x68\x6f\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70\x61\x72\x74"
+"\x69\x61\x6c\x64\x69\x66\x66\x70\x65\x73\x65\x74\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70\x65\x72\x73"
+"\x75\x62\x73\x65\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65\x76\x65\x72"
+"\x73\x65\x64\x72\x61\x63\x75\x74\x65\x72\x61\x64\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65"
+"\x6e\x74\x72\x65\x76\x6c\x6f\x67\x69\x63\x61\x6c\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69\x6c\x6c\x61"
+"\x73\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x73\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64\x73\x69\x67"
+"\x6d\x61\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x73\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74\x61\x75\x74"
+"\x62\x61\x72\x74\x63\x61\x72\x6f\x6e\x74\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e\x6f\x73\x75"
+"\x62\x72\x65\x76\x65\x75\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65\x72\x73\x63"
+"\x6f\x72\x65\x64\x62\x6c\x75\x6e\x69\x30\x30\x41\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e\x69\x30\x32"
+"\x31\x42\x75\x6e\x69\x30\x32\x43\x39\x75\x6e\x69\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41\x39\x75\x6e"
+"\x69\x30\x33\x42\x43\x75\x6e\x69\x30\x33\x43\x32\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69\x30\x34\x35"
+"\x30\x75\x6e\x69\x30\x34\x35\x44\x75\x6e\x69\x30\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36\x75\x6e\x69"
+"\x30\x34\x39\x37\x75\x6e\x69\x30\x34\x39\x38\x75\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30\x34\x39\x42"
+"\x75\x6e\x69\x30\x34\x39\x43\x75\x6e\x69\x30\x34\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75\x6e\x69\x30"
+"\x34\x41\x32\x75\x6e\x69\x30\x34\x41\x33\x75\x6e\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34\x41\x45\x75"
+"\x6e\x69\x30\x34\x41\x46\x75\x6e\x69\x30\x34\x42\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e\x69\x30\x34"
+"\x42\x33\x75\x6e\x69\x30\x34\x42\x36\x75\x6e\x69\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42\x39\x75\x6e"
+"\x69\x30\x34\x42\x41\x75\x6e\x69\x30\x34\x42\x42\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69\x30\x34\x43"
+"\x43\x75\x6e\x69\x30\x34\x44\x38\x75\x6e\x69\x30\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38\x75\x6e\x69"
+"\x30\x34\x45\x39\x75\x6e\x69\x30\x34\x45\x45\x75\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32\x30\x41\x46"
+"\x75\x6e\x69\x32\x31\x32\x36\x75\x6e\x69\x32\x32\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75\x6e\x69\x32"
+"\x32\x32\x38\x75\x6e\x69\x32\x32\x39\x35\x75\x6e\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x75"
+"\x6f\x67\x6f\x6e\x65\x6b\x75\x70\x73\x69\x6c\x6f\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75\x70\x73\x69"
+"\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75\x72\x69\x6e"
+"\x67\x75\x74\x69\x6c\x64\x65\x77\x61\x63\x75\x74\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72\x65\x73\x69"
+"\x73\x77\x67\x72\x61\x76\x65\x78\x69\x79\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63\x75\x74\x65"
+"\x7a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x7a\x65\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69"
+"\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76"
+"\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69"
+"\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76"
+"\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x4e\x69\x6d\x62\x75\x73\x20\x53\x61\x6e\x73\x20\x42\x6f\x6c\x64\x20\x49\x74\x61\x6c\x69\x63\x4e"
+"\x69\x6d\x62\x75\x73\x20\x53\x61\x6e\x73\x00\xce\x02\x00\x01\x00\x06\x00\x0c\x00\x10\x00\x15\x00\x1b\x00\x21\x00\x2f\x00\x3b\x00"
+"\x42\x00\x45\x00\x4a\x00\x55\x00\x5c\x00\x62\x00\x6f\x00\x7f\x00\x84\x00\x8a\x00\x94\x00\x99\x00\xb5\x00\xe6\x01\x06\x01\x12\x01"
+"\x15\x01\x35\x01\x49\x01\x4f\x01\x59\x01\x66\x01\xe7\x01\xea\x02\x34\x02\x44\x02\x86\x02\xa7\x02\xce\x02\xd3\x02\xe7\x02\xec\x03"
+"\x02\x03\x0e\x03\x1d\x03\x26\x03\x2b\x03\x36\x03\x3c\x03\x50\x03\x84\x03\xa5\x03\xcc\x03\xd4\x03\xf0\x03\xff\x04\x15\x04\x2a\x04"
+"\x3d\x04\x5f\x04\x6b\x04\x7c\x04\x80\x04\x87\x04\x94\x04\x9f\x04\xa6\x04\xb2\x04\xbe\x04\xca\x04\xde\x04\xeb\x04\xf3\x04\xfd\x05"
+"\x06\x05\x0f\x05\x16\x05\x24\x05\x2c\x05\x37\x05\xe5\x06\x5d\x06\xdd\x07\x5a\x07\x61\x07\xda\x08\x29\x08\x4c\x08\x56\x08\x6b\x08"
+"\xcf\x08\xff\x09\x24\x09\x49\x09\x4e\x09\xa3\x09\xc2\x0a\x15\x0a\x67\x0a\xb0\x0a\xf0\x0b\x1b\x0b\x48\x0b\x5e\x0b\x91\x0b\x97\x0b"
+"\xa4\x0b\xd2\x0c\x0b\x0c\x41\x0c\x73\x0c\x8b\x0c\xaf\x0c\xdf\x0c\xe6\x0d\x15\x0d\x2e\x0d\x5b\x0d\x87\x0d\xb2\x0d\xdc\x0e\x04\x0e"
+"\x28\x0e\x41\x0e\x61\x0e\x81\x0e\xa2\x0e\xaf\x0e\xce\x0e\xd8\x0e\xf6\x0e\xf9\x0f\x16\x0f\x1a\x0f\x2a\x0f\x3a\x0f\x54\x0f\x64\x0f"
+"\x68\x0f\x6f\x0f\x76\x0f\x90\x0f\x95\x0f\xae\x0f\xc7\x0f\xd2\x0f\xea\x0f\xee\x0f\xfc\x10\x13\x10\x29\x10\x3f\x10\x53\x10\x68\x10"
+"\x71\x10\x86\x10\x9b\x10\xae\x10\xb2\x10\xc6\x10\xd9\x10\xec\x10\xfe\x11\x10\x11\x14\x11\x24\x11\x35\x11\x46\x11\x57\x11\x67\x11"
+"\x77\x11\x87\x11\x97\x11\xa4\x11\xb4\x11\xc2\x11\xcc\x11\xd8\x11\xe7\x11\xf6\x11\xff\x12\x0d\x12\x1b\x12\x27\x12\x33\x12\x3f\x12"
+"\x4c\x12\x56\x12\x63\x12\x68\x12\x70\x12\x7c\x12\x88\x12\x94\x12\xa0\x12\xac\x12\xb8\x12\xc4\x12\xd0\x12\xdc\x12\xe8\x12\xf2\x12"
+"\xfd\x13\x08\x13\x13\x13\x1e\x13\x29\x13\x34\x05\xf7\x20\x06\x0b\x06\xa6\xf7\x11\x05\x0b\xf9\x6d\x15\x0b\x15\xfb\x20\x06\x0b\x06"
+"\x70\xfb\x11\x05\x0b\x06\xa5\xf7\x11\x05\x0b\x15\x25\x06\x76\x27\x94\x28\x05\xb2\x06\xc1\xee\x05\x0e\x15\xfb\x2a\x06\x6c\xfb\x26"
+"\x05\xf7\x2a\x06\x0b\x06\xfb\x2f\xfd\x6d\x05\x0b\x46\x1d\x0e\xf7\xd6\xaa\x1d\x0b\x15\xfb\x13\x06\x26\xfb\x2a\x05\xd1\x06\x0e\xfb"
+"\x07\xfc\xb0\x20\x1d\x0b\xf8\xa3\x9c\x6f\x1d\x0b\x15\x51\xe5\x1d\xb4\x6d\xa9\x61\x1f\x81\xbd\x1d\x0b\xcf\xf7\x01\xd9\xa7\xe3\xb7"
+"\xc8\x1f\xcf\xbd\xcc\xaf\xd8\x1b\x0b\xf9\x89\x4d\x1d\x0b\x06\x72\xfb\x0c\x05\x0b\x05\xf7\x2a\x06\xf7\x2f\xf9\x6d\x05\x0b\x06\x77"
+"\x2e\x05\x0b\xf7\x46\xf8\xb0\x15\xfb\x07\xfc\xb0\x05\x58\x1d\x89\x7f\x87\x74\x1f\x48\xfb\xcd\x20\x1d\xd8\xf7\xfe\xb7\x1d\x0b\xf9"
+"\x6e\x16\xf7\xf9\xf9\x6d\x05\xfb\x33\x06\xfb\x75\xfc\xb8\x8e\xf8\xb8\x05\xfb\x32\x06\xfb\x74\xfc\xb6\x8e\xf8\xb6\x05\xfb\x33\x06"
+"\xbe\xfd\x6d\x05\xf7\x1b\x06\xf7\x81\xf8\xbf\x8f\xfc\xbf\x05\x0b\xf9\x71\x22\x1d\xfc\xb8\x24\x1d\xf8\x09\x06\xfc\x6e\xfc\x73\x70"
+"\xfb\x11\x05\xf8\xb8\x21\x1d\xfc\x09\x06\xf8\x6e\xf8\x73\x05\x0b\xf8\x15\x60\x1d\xf8\x87\x21\x1d\xfb\xf1\x06\x0b\x55\x1d\x0e\x5c"
+"\xfb\x12\xfb\x07\x1a\xfb\x43\xf7\x03\xfb\x01\xf7\x46\xf7\x15\xea\xb8\xf1\xe1\x1e\xd9\xe6\xb8\xf7\x0e\xf7\x0a\x1a\xf7\x49\x0b\x15"
+"\xf7\x1f\xf7\x27\x05\x3f\x06\x24\x2a\x4e\xec\x05\x3d\x06\xd2\xfb\x27\x05\x0e\x06\xb3\xf7\x50\x05\x0b\x06\xf7\x14\xf8\xf0\x05\xfb"
+"\x2a\x06\x0b\xfb\x14\x15\xef\xc7\x49\xfb\x02\x3c\x70\x33\x60\x0b\xf7\xb7\xf7\xb5\x15\xf7\x40\x06\xc4\xa7\x79\x66\x7f\x89\x7f\x81"
+"\x66\x1f\x78\x47\x84\x65\x71\x1a\x7e\x8d\x81\x91\x79\x1e\xf7\x33\x06\x91\xa6\x05\x7e\x95\x86\x95\x99\x1a\x92\x8c\x94\x8d\x95\x1e"
+"\xa2\xf7\x0f\x90\xae\xa4\x1a\xb1\x71\xa6\x57\x9c\x1e\xc0\xa5\xa5\x9c\xa3\xa4\x08\xb2\xb3\xa4\xca\xc3\x1a\xb1\x7b\xb2\x70\xa6\x1e"
+"\xab\x6b\x63\x99\x51\x1b\xfc\x0d\x28\x1d\xf7\x2a\x06\xe3\xf8\x32\x15\xb3\xf7\x52\x05\xf7\x3c\x06\xb9\xa2\x85\x7c\x9e\x1f\x99\x7e"
+"\x93\x7a\x78\x1a\x6f\x80\x6c\x78\x77\x1e\x6e\x71\x6c\x7f\x59\x1b\x0b\x6f\x1d\x0e\xf7\xc9\xf8\xb0\x23\x1d\x48\xfb\xcf\x05\x82\x62"
+"\x86\x65\x75\x1a\x6f\x96\x6d\x9e\x75\x1e\x5d\xb1\xc6\x76\xe3\x1b\xe3\xd0\xa0\xb4\xb7\x1f\xb1\xad\x9f\xb9\x9f\xe8\xd1\xf7\xdc\x18"
+"\xfb\x20\x06\x46\xfb\xd6\x80\x54\x81\x75\x74\x76\x19\x78\x75\x6c\x80\x6c\x1b\x59\x6a\xa6\xb3\x96\x8f\xa4\x90\xa4\x1f\x0b\x59\x1d"
+"\x68\x87\x6d\x75\x1a\xfb\x09\xea\x41\xf7\x2c\x5b\x1d\x0e\xc7\x1d\x52\xa3\x41\x1b\x3d\x3b\x6c\x5a\x5c\x1f\x4b\x48\x5d\xfb\x09\x27"
+"\x1a\xfb\x10\xe0\x37\xf7\x12\xf7\x0d\xf0\xca\xf7\x04\xc2\x1e\xfb\x1e\x06\x65\x78\x5e\x72\x5b\x1b\x52\x65\xb0\xc2\x95\x8c\x95\x8d"
+"\xa4\x1f\x9d\xe8\x15\xd9\xa0\xb9\xb3\xcd\x6d\x1d\x89\x68\x1a\x0e\xcc\x16\xf7\x2a\x06\x9e\xe4\xf8\x01\xf7\xfa\x2c\xfc\x53\x32\x1d"
+"\xfb\x2a\x06\x78\x30\xfc\x02\xfb\xfc\xeb\xf8\x57\x05\xfb\x2a\x06\x0b\xf8\xd3\xf8\xb0\x15\xfc\x39\x06\x73\xfb\x05\x05\xf7\x8d\x06"
+"\xfb\xe2\xfb\xce\x73\xfb\x05\x05\xf8\x54\x06\xa3\xf7\x05\x05\xfb\xa6\x06\xf7\xe0\xf7\xce\x05\x0b\xfa\x2c\x55\x1d\x0b\x15\xfb\x1f"
+"\xfb\x27\x05\xd7\x06\xf2\xec\xc8\x2a\x05\xd9\x06\x44\xf7\x27\x05\x0b\xf7\xfe\xce\x1d\x0b\x8c\x8e\x87\x1f\x73\xfb\x03\x05\x87\x99"
+"\x97\x8a\x9e\x1b\xf7\x06\xc3\xb0\xe2\x9d\x1f\x0b\x15\xfb\x02\x06\x71\xfb\x0e\x05\xf7\x02\x06\x0e\x1b\xac\xad\x9a\xa5\xa4\x1f\x9e"
+"\x9f\x96\xa0\x96\xb3\x08\x0e\x15\xfb\x02\x06\x71\xfb\x0c\x05\x0b\xf9\x89\x61\x1d\x0b\x15\xfb\x12\x06\x25\xfb\x2a\x05\xd1\x06\x0b"
+"\x06\x73\xfb\x04\x05\x0b\xf9\x27\xf9\x6d\x59\x1d\x69\x87\x6c\x74\x1a\xfb\x08\xeb\x41\xf7\x2b\x5b\x1d\x0b\xf8\x91\xf8\xb0\x15\xfb"
+"\x57\xfc\x1d\x67\xf8\x1d\x05\xfb\x2e\x06\xd7\xfc\xb0\x8c\x7c\x05\x52\x5f\x67\x46\x7f\x86\x8b\x8d\x80\x1e\x74\xfb\x01\x05\x88\x98"
+"\x96\x8a\x9f\x1b\xb8\xb0\x91\x96\xaa\x1f\xb6\xec\x1d\x0b\x15\xfb\x10\x26\x5b\x29\x39\x1f\x3d\x2e\x39\x1d\x21\xf4\xfb\x4c\x1e\x78"
+"\x3d\x1d\x4f\x1f\x44\x59\x4c\x69\x3e\x1b\x25\x4d\x2f\x1d\x0b\x15\x2a\x06\x71\xfb\x0e\x05\xec\x06\xf7\x75\xf7\x0e\x15\x2a\x06\x71"
+"\xfb\x0e\x05\xec\x06\x63\xf7\xa0\x15\x25\x06\x78\x31\x94\x28\x05\xb2\x06\xc1\xee\x05\x0e\x15\x60\x7a\x68\x75\x58\xa7\x1d\x15\xc9"
+"\xb1\x5e\x43\x5a\x7d\x56\x73\x61\x1f\x53\x6c\x5d\x6c\x57\x1b\x4f\x64\xb8\xd2\xf7\x13\xd6\xf4\xe6\x1f\x0b\x4b\x1d\xf7\x02\x06\xf7"
+"\x68\xf7\x0c\x4b\x1d\xf7\x02\x06\x0b\x75\x92\xa2\x5b\x1f\x6d\x58\x05\x75\xc4\xaa\x84\xb8\x1b\xe6\xc6\xb5\xcc\xaf\x73\xa0\x0b\xcc"
+"\x1d\xc5\xa3\xbb\xdc\x1d\xac\xa4\x7f\x76\x98\x1f\x93\x7c\x8d\x7f\x8c\x64\x08\x0b\xf7\x20\x06\xcc\xf7\xc4\x05\xde\x9c\xbf\xbd\xcf"
+"\x1b\xbb\xa5\x71\x5a\x7d\x0b\x15\x22\xfc\x82\x05\x31\x78\x59\x63\x2f\x1b\x3e\x5e\xaa\xc1\x9a\x8d\x99\x8e\x9b\x1f\xf4\xf8\x82\x05"
+"\xfb\x2a\x06\x26\xfc\x6e\x05\x84\x0b\xf7\x68\x21\x1d\xfc\xdc\x24\x1d\xf7\x72\x06\x0b\xe3\xdd\xa5\xbb\xc8\x1e\xc4\xb8\xab\xc3\x9d"
+"\xde\xf4\xf8\x82\x18\x0b\x1a\x4d\xe7\x1d\x05\xfb\x20\x06\x2c\x1d\x0b\x15\x8f\x9d\x8c\x93\x97\x1a\xe6\x3f\xc1\xfb\x12\x0b\x68\xb8"
+"\xcf\xf7\x12\xd5\xf7\x01\xe1\x1f\x0e\x22\x1d\xfb\x2a\x28\x1d\x0b\x15\xf0\xfb\x2a\x05\xca\x06\x5e\xf7\x2a\x05\x0b\x94\x8a\x88\x9d"
+"\x1f\xa9\xf7\x22\x05\x8c\x83\x0b\xf7\x20\x06\xf7\x07\xf8\xb0\x05\xfb\x20\x06\x0b\xfb\x20\x06\x47\xfb\xd2\x05\x3a\x7a\x57\x57\x4a"
+"\x1b\x58\x72\xa4\xbd\x9a\x8c\x0b\xf7\x46\xf8\xb0\x15\x2c\x1d\xc8\xf7\xb3\x05\xdd\x0b\xf7\x29\x06\xd1\xf7\xdf\x05\x0b\xeb\xe2\xe0"
+"\xe9\xcf\x57\xbc\x43\x1f\x0b\x83\x81\x5d\x18\xd7\x91\xce\xce\x0b\x97\xb8\x91\xb5\xb1\x1a\xb9\x7a\x0b\x06\xfb\x15\xfc\xf0\x05\x0b"
+"\x8e\xa3\x8c\x94\x95\x1a\xb5\x7a\xb3\x6c\xaa\x1e\xb1\x0b\xf7\x20\x06\xe6\xf8\x40\x05\x0b\x1b\xba\xac\x6f\x60\x90\x1f\x8d\x81\x8b"
+"\x0b\xf9\x82\xdd\x1d\xad\xbf\x99\x8c\x96\x91\xa5\x1f\xf7\xfe\x06\x69\x1d\xbb\x6f\xae\x1e\xb8\x67\x52\xa3\x44\x1b\x4f\x50\x7a\x6b"
+"\x5d\x1f\xad\x6a\x59\x9a\x3d\x1b\x31\x45\x76\x63\x5e\x1f\x6a\x6e\x7a\x69\x7e\x4c\x08\xf7\x17\x06\xc2\x9c\xaa\x9f\xcc\x1b\xbd\xa1"
+"\x7e\x6d\x76\x7d\x75\x77\x81\x1f\x76\x80\x8b\x8b\x43\x81\x52\x82\x18\x5b\x83\x66\x7d\x6b\x74\x08\x56\x65\x6b\x4f\x4d\x1a\x3a\xc5"
+"\x5b\xec\xe8\xc0\xa4\xd6\xd1\x1e\x4b\xa7\xcc\x67\xe3\x1b\xf7\x0c\xf7\x01\xcf\xf6\xc0\x1f\xfc\x78\xcb\x15\x39\x79\x5b\x5e\x45\x1b"
+"\x5c\x73\x9c\xac\xba\xaf\xac\xcd\x96\x1f\xbd\x93\x9b\x8e\x05\x8c\x95\x92\x8d\x8f\x1b\x96\x8e\x8e\x8c\x97\x91\x08\xf8\x08\xcc\x15"
+"\xfb\x6c\x06\xd9\xa0\xb8\xb3\xcc\x1b\xc2\xa9\x6a\x51\x1f\x0b\x15\x7c\x9c\x85\x98\x9a\x1a\x91\x8c\x92\x8d\x93\x1e\xca\xf7\xc0\x05"
+"\x8f\x9d\x8d\x9a\x97\x1a\xa8\x7a\xae\x73\x9e\x1e\xa5\x6b\x5b\x97\x44\x1b\xfb\x31\x3a\x52\xfb\x16\x6f\x1f\xf7\x17\x06\xc2\x9c\xa9"
+"\x9f\xcc\x1b\xbe\xa1\x7e\x6d\x76\x7d\x75\x77\x81\x1f\x77\x80\x8b\x8b\x43\x81\x51\x82\x18\x5b\x83\x66\x7d\x6c\x75\x08\x56\x65\x6a"
+"\x4e\x4f\x1a\x65\x9d\x65\xa8\x73\x1e\x76\xa4\xad\x81\xb7\x1b\xc4\xbc\xa1\xc2\xc7\x1f\x88\x7c\x8b\x86\x84\x1a\x81\x8d\x85\x90\x80"
+"\x1e\xf7\x2d\x06\x97\x1d\x0b\x15\x76\x9b\x7c\x95\x75\x97\x08\x95\x79\x65\x99\x84\x1b\x82\x84\x83\x81\x82\x8d\x88\x9f\x7b\x1f\xba"
+"\x63\xa4\x6b\xc1\x31\x08\x7a\x94\x8e\x89\x93\x1b\x94\x91\x91\xa0\x96\x1f\xa7\xc3\xbd\xca\xb7\xb0\x08\x98\x95\x92\x93\x90\x1a\x98"
+"\x85\x93\x81\x78\x42\x66\x72\x6c\x1e\xf8\x3f\x07\x72\xa9\xd6\x65\x9d\x1b\x95\x91\x93\x97\x90\x88\x8f\x7a\x9a\x1f\x69\xa6\x53\xd0"
+"\x76\xb3\x08\xb3\x75\x86\x92\x83\x1b\x83\x86\x88\x82\x86\x1f\x4f\x27\x7a\x75\x56\x5c\x08\x76\x78\x8a\x8a\x82\x1a\x81\x92\x84\x94"
+"\x9f\xc9\xab\xaa\xb2\x1e\x0e\xf9\x07\xf8\xb0\x15\xb6\x48\x9e\x4c\x3e\x1a\x54\x7e\x4e\x76\x5a\x1e\x5b\x76\x6a\x6f\x69\x1b\x6d\x78"
+"\xa2\xb0\xa2\x8e\x9d\x96\xc2\x1f\xad\xf7\x30\x05\xfb\x12\x06\x66\xfb\x3e\x81\x5c\x86\x77\x80\x75\x19\x6a\x7b\x70\x76\x6e\x1b\x69"
+"\x75\xa9\xb9\xf7\x10\xc9\xf7\x10\xf7\x0f\xf7\x11\x1f\xfb\x33\x06\x27\xfb\x01\x4e\xfb\x20\xfb\x0d\x1a\xfb\x07\xd0\x3b\xef\xcd\xbe"
+"\xb0\xd4\xaf\x1e\x98\x6c\x92\x7f\x95\x7d\x08\x6a\xa5\xb3\x78\xba\x1b\xcd\xc7\xad\xcb\xb7\x1f\xba\xcf\xa7\xec\xec\x1a\xdd\x7c\xc4"
+"\x65\xcc\x1e\x0b\xf9\x61\xf8\x8f\x74\x1d\x0b\xf7\x1b\xaf\x15\x64\xb3\xc5\x77\xd2\x1b\xf1\xe5\xb7\xda\xc7\x1f\xba\xc9\xac\xef\xde"
+"\x1a\xae\x85\xa9\x7f\xa9\x1e\xe6\xd7\x69\xb4\x36\x44\x05\xb4\x64\x4f\xa1\x41\x1b\x24\x31\x5f\x3c\x4f\x1f\x5b\x4c\x6b\x28\x35\x1a"
+"\x68\x92\x6b\x99\x6c\x1e\x2e\x3d\xad\x63\x05\xf8\x53\xf8\x0a\x15\x8c\x84\x8b\x86\x88\x1a\x65\x82\x5f\x7b\x67\x1e\x43\x6d\x57\x61"
+"\x50\x1b\x69\x6c\x9a\xa4\x7a\x1f\x79\xc1\x15\x8a\x96\x8b\x90\x94\x1a\xb9\x9a\xc2\xa2\xb4\x1e\xc3\xaa\xb9\xaa\xc0\x1b\xae\xa9\x7b"
+"\x6e\x9d\x1f\x0b\x15\x94\x1d\x22\x31\x57\xac\xc5\x8f\x8c\x94\x8c\x94\x1e\xfb\x26\x06\x88\x77\x8a\x81\x7d\x1a\x56\x9f\x5d\xaf\x6a"
+"\x1e\x5f\xbb\xcf\x76\xec\x1b\xf7\x0e\xe8\xae\xce\xc5\x1f\xb5\xbb\xa6\xd3\xcd\x1a\xd8\x54\xbf\x25\x9f\x1e\xfb\x01\xa1\x05\x2d\x9e"
+"\x70\x9b\xb1\x1a\xcb\xc3\xb3\xe6\xe1\xb9\x6e\x55\x86\x8a\x82\x8a\x82\x1e\x0b\xf8\x9f\xf8\xb0\x15\x79\x38\x05\xca\x70\x62\xa8\x50"
+"\x1b\x3f\x3f\x65\x49\x57\x1f\x51\x43\x66\xfb\x01\x2a\x1a\xfb\x02\xd4\x3b\xf1\x7f\x1d\x0b\xf7\xbd\x4c\x1d\xf7\x31\xfc\xa7\x42\x1d"
+"\x89\x1d\x93\x1a\xf7\x13\xfb\x01\xe0\xfb\x37\xfb\x10\xfb\x00\x59\x2c\x39\xa2\x1d\x0b\xdd\x16\xf7\xdc\x06\xef\xd0\xa3\xc1\xc3\x1f"
+"\xbc\xbb\xab\xd0\xc7\x1a\xc2\x77\xb1\x58\xb3\x1e\xd8\xbd\xb3\xca\xd1\x1a\xb2\x7c\xb2\x72\xa6\x1e\xaf\x67\x59\x9c\x41\x1b\xfb\xd9"
+"\x06\xe3\xfb\xb6\x15\xae\xf7\x39\x05\xf7\x38\x06\xc9\xa6\x78\x60\x72\x81\x70\x79\x78\x1f\x72\x75\x75\x84\x57\x1b\xfb\x7a\xfb\xce"
+"\x15\xb3\xf7\x51\x05\xf7\x46\x06\xc9\xa8\x75\x5c\x72\x82\x6f\x7d\x76\x1f\x69\x74\x6f\x7f\x52\x1b\x0e\xf8\xe5\xf7\xe6\x15\x6b\x1d"
+"\x66\x5c\x9c\x48\x1b\x2d\x41\x6c\x4b\x57\x1f\x50\x45\x61\xfb\x09\x2c\x1a\x59\x9d\x5a\xaa\x68\x1e\x62\xaf\xc3\x77\xd4\x1b\xf7\x16"
+"\xed\xd7\xf7\x1a\xb5\x1f\x57\x1d\x0b\xf8\xae\xf9\x79\x15\xfb\x10\x26\x5b\x28\x39\x1f\x3d\x2f\x39\x1d\x20\xf4\xfb\x4b\x1e\x78\x3d"
+"\x1d\x4e\x1f\x45\x59\x4c\x69\x3e\x1b\x26\x4c\x2f\x1d\x0e\xf8\xae\xf9\x79\x15\xfb\x10\x26\x5b\x29\x39\x1f\x3d\x2e\x39\x1d\x20\xf4"
+"\xfb\x4b\x1e\x78\x3d\x1d\x4f\x1f\x44\x59\x4c\x69\x3e\x1b\x25\x4d\x2f\x1d\x0b\xfb\x57\x51\x1d\x0e\xf7\x2a\xf7\xe9\x15\x42\xfb\xe9"
+"\x05\xf7\xb1\x06\xf7\x25\xdf\xb2\xf0\xd4\x1f\xd3\xed\xb3\xf7\x0f\xf7\x0a\x1a\xf7\x43\x3d\xd6\xfb\x49\x1e\xfb\xb1\x06\x49\xfb\xc8"
+"\x05\x3f\x06\x7a\x3b\x05\xf7\x77\x16\xf7\x41\x06\x9c\xdb\x05\xfb\x42\x06\xb2\xf7\x4b\x05\xf7\x1b\x06\xe7\xb8\x5f\x30\x3c\x71\x24"
+"\x69\x50\x1f\x40\x60\x5a\x6f\x34\x1b\xfb\x1a\x06\x0e\x8a\x1d\x2a\x59\xc1\xf4\xde\xa5\xe2\xb8\xd1\x1f\xd5\xba\xc8\xae\xdc\x1b\xc1"
+"\xb3\x79\x68\xa0\x1f\x98\x77\x8f\x78\x64\x1a\x0b\xc9\xb3\x9e\xc6\xcb\x1e\x7b\x42\x05\x49\x7d\x50\x5f\x42\x1b\x59\x67\xa0\xa9\x1f"
+"\x8c\x97\x05\xfb\x24\x06\x89\x7f\x8a\x80\x83\x1a\x64\xa5\x66\xb3\x77\x1e\x79\xb0\xb7\x83\xc9\x1b\xf7\x3a\xf7\x01\xd3\xf7\x14\xa6"
+"\x1f\xf7\x0b\xf8\xc2\x05\xfb\xa9\x24\x15\xc3\xaf\x5b\x41\xfb\x0e\x3f\x23\x32\x57\x6b\xb5\xd1\xf7\x0f\xd6\xf7\x05\xdd\x1f\x0b\xf8"
+"\xd8\xf7\x76\x15\x96\xbc\x8f\xae\xb0\x1a\xf7\x0d\x34\xdc\xfb\x15\x36\x3c\x65\x47\x55\x1e\x56\x49\x69\x24\x2b\x1a\xfb\x11\xdd\x3e"
+"\xf7\x17\xf7\x0d\xea\xc9\xf7\x06\xbf\x1e\xfb\x24\x06\x61\x72\x63\x74\x5b\x1b\x53\x6c\xaa\xc2\x9b\x8d\x9a\x8f\xa1\x1f\xa1\xe8\x15"
+"\xdc\xa5\xb7\xb2\xc9\x1b\xbf\xac\x6a\x56\x80\x8a\x83\x8a\x7c\x1f\x0b\xf8\x2f\xf8\xb9\x15\x32\x3d\x6c\x53\x54\x1f\x4b\x49\x63\x25"
+"\x28\x1a\xfb\x1a\xe3\x37\xf7\x21\xe1\xd8\xaa\xc4\xc4\x1e\xc8\xc8\xb5\xf3\xe6\x1a\xf7\x25\x38\xde\xfb\x23\x1e\x7e\xfb\x05\x15\xc9"
+"\xae\x61\x40\x5b\x7b\x54\x72\x61\x1f\x54\x6b\x5e\x6e\x57\x1b\x4e\x67\xb5\xd3\xf7\x12\xd8\xf5\xe8\x1f\x0b\xf7\x49\xf8\xb0\x15\x2c"
+"\x1d\xcc\xf7\xc7\x96\xbb\x99\xa5\xa7\xa0\x19\x9d\xa3\xa8\x95\xab\x1b\xba\xa7\x74\x65\x82\x87\x73\x86\x74\x1f\xfb\x04\xfc\xa7\x20"
+"\x1d\xf7\x0f\xf8\xd8\x05\x90\xa1\x8d\x9f\x9a\x1a\xd7\x4c\xc1\x30\x41\x5c\x73\x4c\x55\x1e\x9c\xd9\x05\x0b\x16\xf7\x20\x06\xf7\x2f"
+"\xf9\x6d\x05\xfb\x20\x06\x54\xfb\x97\x9e\x1d\x66\xf8\x12\x15\xc1\xad\x5f\x45\xfb\x12\x42\xfb\x00\x35\x55\x6a\xb8\xd3\xf7\x0d\xd6"
+"\xf7\x02\xde\x1f\x0b\x15\x23\x32\x5f\x3c\x50\x1f\x5b\x4b\x6c\x28\x35\x1a\xfb\x0e\xdf\x3d\xf7\x19\xf7\x00\xe2\xb5\xdc\xc8\x1e\xbb"
+"\xca\xaa\xee\xe2\x1a\xf7\x10\x37\xd7\xfb\x1d\x1e\x75\xfb\x04\x54\x1d\x0b\xc8\x1d\x75\x92\xa2\x5b\x1f\x6d\x58\x05\x75\xc4\xaa\x84"
+"\xb8\x1b\xe6\xc6\xb5\xcc\xaf\x0b\xf7\x72\x22\x1d\xfb\x2f\xfd\x6d\x20\x1d\xcc\xf7\xc4\x05\xdc\x9c\xc0\xbf\xcc\x1b\xba\xa4\x70\x5a"
+"\x7e\x89\x7e\x87\x75\x1f\x48\xd6\x1d\x9d\x9d\x1a\xda\x51\xc0\x34\x43\x55\x6f\x4c\x55\x1e\xc5\xf7\xa3\x05\x0b\xf8\xb1\x16\x88\x1d"
+"\x0b\xf7\x07\xf8\xb0\x05\x64\x1d\x94\x91\xa4\x9d\x1d\x0b\xf9\xaf\xcf\x1d\x62\x7d\x72\x70\x71\x08\x5e\x5e\x50\x72\x51\x1b\x28\x44"
+"\xd6\xf3\xd2\xa5\xe6\xaf\xc2\x1f\xd6\xbb\xcf\xb0\xe0\x1b\xea\xc4\x62\x3f\x93\x1f\xf7\x1e\x06\x8c\x99\x8c\x96\x0b\xf9\xa9\xf8\x76"
+"\x15\x8e\xa6\x8c\x96\x97\x1a\xf7\x11\x22\xdf\xfb\x2f\xfb\x0f\x20\x56\x26\x39\x1e\x45\x33\x5f\xfb\x1b\xfb\x15\x1a\xfb\x34\xf3\x29"
+"\xf7\x3f\xf7\x4a\xf7\x1a\xf0\xf7\x3f\xb7\x1e\xfb\x23\x06\x2f\x6e\x44\x57\x2b\x1b\x0b\xf8\xa9\xf9\x79\x15\xfb\x0d\xfb\x02\x57\x2d"
+"\x3b\x1f\x44\x37\x60\xfb\x0a\xfb\x03\x1a\xfb\x4f\xf7\x05\xfb\x0a\xf7\x45\xf7\x13\xf6\xbd\xe8\xd8\x1e\xd2\xe3\xb5\xf7\x08\xf7\x04"
+"\x1a\xf7\x51\xfb\x02\xf7\x08\xfb\x47\x1e\x0b\x06\xf7\x07\xf8\xb0\x05\xfb\x20\x06\x56\xfb\x8d\x05\x7b\x5d\x60\x83\x62\x1b\x60\x6f"
+"\x9c\xa5\x8f\x8b\x8d\x8c\x8e\x1f\xba\xf7\x71\x05\xfb\x20\x06\x5c\xfb\x71\x05\x87\x77\x88\x77\x7e\x1a\x49\xce\x5d\x0b\x65\x1d\x9d"
+"\xbd\xb4\xde\x1b\x9a\x62\x1d\x88\x8b\x85\x1b\x4a\x4c\x61\x42\x5c\x1f\xa2\xf5\x05\x0b\xf8\xd5\xf7\xdf\x15\x45\xfb\xdf\x32\x1d\xfb"
+"\x2b\x06\x51\xfb\xa5\x05\xfb\xb4\x06\xc5\xf7\xa5\x05\xfb\x2a\x28\x1d\xf7\x2a\x06\xd1\xf7\xdf\x05\x0e\xa8\x5c\xb7\x72\x1e\x74\xb2"
+"\xba\x81\xc9\x1b\xf7\x3e\xf7\x00\xdd\xf7\x14\xc7\x64\xb2\x38\xa4\x1f\x2b\xa7\x05\x58\x9a\x7d\x95\x9f\x1a\xab\xae\xa0\xc0\xc2\xac"
+"\x78\x6a\x85\x8a\x87\x89\x82\x1e\x0b\xf8\x95\xf8\xb0\x95\x1d\x0b\xda\x16\xf7\x24\x06\xd9\x8d\xba\xa5\xb4\xcc\xf8\x37\xf9\x10\x18"
+"\xfb\x35\x06\xfb\x7d\xfc\x05\x3f\xf8\x05\x05\xfb\x29\x06\xf7\x0e\xfc\x9e\x6b\x5a\x79\x70\x84\x86\x6a\x8a\x19\xfb\x07\x06\x0b\xf7"
+"\xb6\xf7\xce\x15\xf7\xf1\x25\x1d\xfb\xf1\x06\xae\xf7\x39\x05\xf8\x0d\x21\x1d\xfc\xa3\x9f\x1d\x0b\xf8\x81\xf8\x06\x15\xf7\xc6\xf7"
+"\xfb\x05\xfb\x4c\x06\xfb\x50\xfb\x84\x3f\xf7\x84\x05\xfb\x42\x06\xf7\x2a\xfb\xfb\xfb\xc5\xfc\x06\x05\xf7\x46\x06\xf7\x55\xf7\x91"
+"\xdf\xfb\x91\x05\x0b\x91\xa7\x8d\x99\x9f\x1a\xf7\x00\x2e\xcb\xfb\x33\x2a\x3f\x73\x59\x52\x1e\x52\x5a\x68\x40\x44\x1a\x38\xbd\x5f"
+"\xf7\x0b\x73\x1e\xed\x77\x05\xe6\x79\xa8\x77\x5c\x1a\x47\x48\x60\x0b\x15\xfb\x57\xfc\x1d\x67\xf8\x1d\x05\xfb\x29\x06\xdd\xfc\xc6"
+"\x77\x4e\x6b\x74\x4f\x8c\x19\x7f\x06\x79\x06\x73\xfb\x05\xf7\x32\x87\xb2\x9e\xc5\xf4\x19\xf7\xfa\xf9\x12\x05\x0b\xf7\x1b\x15\xad"
+"\xa1\x7a\x71\x64\x69\x6d\x60\x6c\x77\x9d\xa6\xb1\xab\xa8\xb3\x1f\x6a\xfb\x3d\x15\xac\xa0\x78\x6c\x57\x6a\x66\x5c\x6a\x73\x9f\xa7"
+"\xbe\xb0\xb3\xb9\x1f\x0b\xfb\x0f\xf7\x6d\x15\x39\x79\x5b\x5d\x47\x1b\x5b\x72\x9c\xac\xba\xb0\xac\xcc\x96\x1f\xbd\x93\x9b\x8e\x95"
+"\x8d\x92\x8c\x8f\x8c\x19\x96\x8d\x8e\x8c\x97\x92\x08\x0b\x15\xea\xc3\x4b\xfb\x02\x3a\x70\x35\x5e\x4c\x1f\x46\x59\x4c\x68\x3f\x1b"
+"\x2e\x53\xcc\xf7\x01\xdd\xa7\xe2\xb8\xc9\x1f\xcf\xbc\xcb\xae\xd4\x1b\x0e\xf7\xbc\xf7\xce\x15\xf7\xf1\x25\x1d\xfb\xf1\x06\xae\xf7"
+"\x39\x05\xf8\x0e\x21\x1d\xfc\xa4\x28\x1d\x0b\x20\x1d\xb1\xf7\x45\xcf\xc9\xda\xfb\x83\x05\xf7\x38\x06\xfb\x15\xf7\xe2\xf7\x7c\xf7"
+"\x62\x05\xfb\x33\x06\xfb\x73\xfb\x66\x05\x0b\x15\x60\x7b\x68\x75\x58\x1b\x58\x75\x9f\xb8\x8a\x1f\x60\x06\x87\x7a\x8a\x81\x7e\x1a"
+"\x4d\xb5\x62\xcb\xd9\xd0\xc8\xdd\x99\x1e\x0e\x1a\x52\xb4\x65\xe3\x6e\x1e\xda\x72\x05\xca\x77\x98\x82\x74\x1a\x6b\x60\x74\x4e\x48"
+"\x67\xa2\xb8\x88\x1e\xfb\x1d\x06\x88\x7d\x8a\x0b\x1f\xd0\xb5\x1d\xc0\xa6\xcb\xc2\x1e\x7c\x47\x05\x0b\x05\xc1\x74\x61\xa4\x47\x1b"
+"\x3a\x39\x5d\x40\x57\x1f\x5a\x44\x6e\x31\x39\x1a\xfb\x13\xce\x3a\xf4\xcf\xbf\xa3\xc1\xb9\x1e\x0b\x28\x1d\xf8\xb5\x21\x1d\xfc\x1f"
+"\x06\x0b\x99\x1a\xc5\xc0\xbc\xc8\xc9\xaa\x6c\x4d\x86\x8b\x81\x8a\x80\x1e\xf7\x17\x06\x8e\xa4\x8c\x98\x9c\x1a\xf7\x08\x46\xc7\x0b"
+"\xa5\x1d\x0e\x1e\x3d\x30\x5b\xfb\x13\xfb\x08\x1a\xfb\x42\xf7\x04\xfb\x03\xf7\x44\xe8\xcd\xab\xda\xd5\x1e\x84\x31\x05\xe5\x06\x0b"
+"\x16\xab\x1d\x0e\xc8\xf7\xb5\x05\xfb\x2a\x06\x4e\xfb\xb5\x05\x87\x79\x89\x78\x0b\x23\x1d\x2c\x1d\xf7\x2f\x22\x1d\xfb\x20\x24\x1d"
+"\xf7\x20\x06\x0b\x15\x73\xfb\x04\x05\xce\x06\x85\x5f\x68\x66\x5e\x83\x82\x5d\x18\xd6\x91\xcf\xce\x95\xd9\x9f\xeb\x18\x0e\x1b\x5c"
+"\x70\xa0\xaf\x1f\x93\x61\x07\x86\x7a\x8a\x81\x7e\x5c\x1d\x15\xab\x1d\x0b\x15\x69\x7d\x7a\xb3\x1d\x0b\xf8\xb0\x23\x1d\x2c\x1d\x0b"
+"\x70\xfb\x11\x05\xdc\x06\x82\x59\x6b\x6e\x51\x81\x81\x5d\x18\xe4\x92\xcb\xc4\x99\xe2\xa2\xf7\x01\x18\x0b\x06\xcb\xb2\x1d\x0b\x06"
+"\x6e\xf7\x50\x05\xfb\x1d\x06\xb2\xfb\x83\xfb\x44\xfb\xc1\x05\xf7\x29\x06\xf7\x20\xf7\x83\x05\x0b\xf8\xd1\x15\x4d\xfb\xb5\x05\xe9"
+"\x06\xe5\xf8\x3d\x05\x4c\x06\x59\x73\x59\x72\x3d\x1b\x7e\x4e\x05\x0b\x79\xa8\x76\x1e\x4b\xc6\x1d\x67\xa1\x1e\x0b\xf7\xe3\x15\xfb"
+"\x1c\xf7\x26\x73\xfb\x06\xdd\x32\xfb\x0c\x32\x72\xfb\x09\xf7\x5b\xf7\x28\x05\x0b\xf7\x63\xb6\x1d\xfb\xdf\x05\xf7\x2a\x06\x40\xf8"
+"\x1c\xf7\x4f\xe4\x1d\x0b\x7b\x74\x1b\x80\x88\x8c\x93\x78\x1f\x59\xa0\x05\x9b\x67\x83\x8d\x71\x1b\x54\x60\x61\x3f\x0b\xf9\x89\x15"
+"\xfb\x20\xfb\x27\x05\xd8\x06\xf2\xec\xc8\x2a\x05\xd8\x06\x44\xf7\x27\x05\x0b\xf7\xdb\x05\xfb\x20\x06\x3b\xfc\x0c\x05\x87\x78\x89"
+"\x79\x79\x1a\x3b\xc5\x57\xe3\xd5\x0b\x15\xfb\x20\xfb\x27\x05\xd8\x06\xf2\xec\xc7\x2a\x05\xd9\x06\x44\xf7\x27\x05\x0e\x05\x8f\x9e"
+"\x8d\x9d\x9d\x1a\xdb\x51\xbf\x32\x41\x55\x70\x4b\x55\x1e\x9d\xdd\x05\x0b\x06\xe8\xbf\x99\xb2\xbd\xd0\x1d\x0b\x1f\xc1\x06\xad\x9c"
+"\x9b\x9a\x9d\x1b\x93\x9e\x85\x82\x9c\x1f\xbd\x72\x05\x85\x98\x0b\xa3\xc4\xc1\x1f\xc1\xc4\xad\xe0\xd8\x1a\xbf\x74\xba\x62\xaa\x1e"
+"\xa7\x67\x62\x96\x0b\x05\xfb\x20\x06\x30\xfc\x3f\x05\xfb\x41\x06\xe6\xf8\x3f\x05\xfb\x20\x06\x0e\xbf\x1d\x81\x0b\x59\x15\x9e\x99"
+"\x7e\x79\x72\x72\x73\x70\x77\x7d\x99\x9d\xa4\xa5\xa2\xa6\x1f\x0b\x05\xfb\x20\x06\x61\xfb\x5c\x05\xfb\x58\x06\xb6\xf7\x5c\x05\xfb"
+"\x20\x06\x0b\x15\x60\x7b\x68\x75\x58\x1b\x5c\x70\xa0\xaf\x1f\x93\x60\x07\x87\x7a\x8a\x0b\x1e\x8f\x61\x8d\x75\x7f\x1a\x79\x85\x81"
+"\x7f\x85\x89\x8c\x96\x80\x1e\x0b\xaa\xa2\x9d\x9f\xa1\x08\xa5\xaa\x99\xaf\xb1\x1a\xcd\x5a\xb2\x38\x27\x0b\xf7\x8d\xcd\x1d\x68\x5f"
+"\x82\x81\x5d\x18\xd6\x91\xcf\xce\x95\xd9\xa0\xeb\x18\x0e\x06\x6a\xf7\xa5\x05\xfb\x24\x06\xb7\xfb\xe5\xfb\x86\xfc\x1c\x05\x0b\xbc"
+"\x6f\xe2\xa7\xa0\x8d\x92\xaa\x1e\x96\xbf\x05\x83\x72\x76\x88\x0b\x6c\x6a\x5b\x4f\x1a\x49\xbd\x62\xda\xef\xdb\xd5\xe7\xaf\x7d\xa1"
+"\x0b\x15\x97\xb9\x91\xb3\xb1\x1a\xb9\x7a\xbb\x6f\xaf\x1e\xb8\x67\x0b\x95\xa3\x97\x8e\x9c\x1b\xa5\x9d\x7e\x77\x72\x6e\x78\x65\x6e"
+"\x0b\x9b\xa6\xae\x1f\xbb\xb2\xa9\xc6\xc4\x1a\xda\x48\xca\x37\x1e\x0b\xcf\xa1\xb7\xc0\x1e\xb3\xac\xa0\xac\x9b\xc3\x08\xfb\x20\x06"
+"\x0b\xf8\xf2\xf7\xb8\x15\xfc\x8c\x31\x1d\xf8\x8c\x06\x0b\xfb\x1a\x06\x44\x6c\x6a\x70\x55\x1b\x4f\x6e\xac\xd1\xc1\x98\x0b\x15\x25"
+"\x06\x75\x27\x95\x28\x05\xb2\x06\xc0\xee\x05\x0e\x22\x1d\xfb\x20\x28\x1d\xf7\x20\x06\x0b\xf8\x1c\x15\xfb\xb8\x24\x1d\xf7\x3a\x06"
+"\x7e\x0b\x1f\xcb\xbe\xb1\xd9\xdc\x1a\xf7\x0a\x3f\xd2\xfb\x14\x1e\x0b\xab\xa2\xac\xb8\x1a\xc1\x5a\xb1\x45\x34\x42\x4d\x40\x71\x0b"
+"\x15\xfb\x20\x28\x1d\xf7\x20\x06\x0e\x06\x30\xfc\x3f\x05\xf7\x20\x06\xf7\x07\xf8\xb0\x05\x0b\x16\xeb\x06\xd5\x8c\xd4\xc7\x9a\xd3"
+"\xc9\xf7\xba\x18\x0b\x1f\x4c\xfb\xbb\x20\x1d\xd1\xf7\xdb\x05\x8e\x0b\xfb\xcd\x20\x1d\xd8\xf7\xfe\x05\x8f\x9e\x8d\x0b\x15\xf7\x2a"
+"\x06\xaa\xf7\x26\x05\xfb\x2a\x06\x0e\x05\xfb\x46\x06\x72\xfb\x08\x05\xf7\x47\x06\x5b\x0b\x3b\x1d\xfb\x20\x06\x63\xfb\x50\x05\x0b"
+"\x1e\x87\xb5\x89\xa1\x97\x1a\x9d\x91\x95\x97\x91\x0b\xed\x1d\xd1\x06\x0b\x1f\xc6\xa7\xb0\xa5\xc2\x1b\x0b\xf7\x2c\x15\x65\x77\x5e"
+"\x72\x5a\x1b\x52\x64\x0b\x06\xd3\xf7\x41\x05\x21\x06\x44\xfb\x41\x05\x0b\x86\x9b\x1b\xac\xad\x9a\xa5\xa5\x1f\x9e\x9f\x0b\x8c\x94"
+"\x78\x1f\x59\xa0\x05\x99\x6b\x7d\x8e\x0b\x15\xfb\x1e\x06\x6f\xfb\x16\x98\xfb\x15\x05\x0b\x15\xfb\x03\x06\x72\xfb\x0c\x05\xf7\x02"
+"\x06\x0b\x1b\x73\x7d\x94\x9b\x90\x8d\x98\x8e\x9b\x1f\x0b\xf7\xe5\x05\xfb\x34\x06\xfb\x29\xfb\xa5\x05\x0b\x55\x57\x52\x62\xa9\x6d"
+"\xb5\xc5\xc1\xbf\xc4\x0b\xf7\xa2\x15\xf7\xdc\xf8\x5f\x05\xfb\x3b\x06\x0b\xb5\x62\xcb\xda\xcf\xc8\xdd\x99\x1e\x0e\x15\xfb\xc0\x06"
+"\x7a\x3b\x05\xf7\xc1\x06\x0b\x15\xc1\xad\x5f\x45\xfb\x12\x41\xfb\x00\x0b\x15\xfb\x13\x06\x26\xfb\x27\x05\xd1\x06\x0b\x15\xfc\xec"
+"\x06\x7c\x46\x05\xf8\xec\x06\x0b\x9c\xa1\xa1\xaf\xcc\xf7\xfa\xf9\x12\x18\x0b\xfa\x3c\x15\xfb\x13\x06\x26\xfb\x2a\x05\x0b\x01\x00"
+"\x01\xe3\x01\x05\x00\x01\x0a\x02\x01\x40\x03\x01\x87\xff\x02\x87\xa0\x02\x8e\x02\x00\x01\x00\x02\x00\x03\x00\x0a\x00\x19\x00\x6c"
+"\x01\x12\x01\x83\x02\x0a\x02\x1b\x02\x4d\x02\x84\x02\xae\x02\xc4\x02\xe4\x02\xe8\x02\xef\x03\x01\x03\x59\x03\x76\x03\xc8\x04\x46"
+"\x04\x79\x04\xd0\x05\x35\x05\x62\x05\xd7\x06\x3c\x06\x4b\x06\x73\x06\x91\x06\xaa\x06\xc6\x07\x25\x07\xf8\x07\xfc\x07\xff\x08\x03"
+"\x08\x07\x08\x0b\x08\x22\x08\x27\x08\x2a\x08\x2d\x08\x31\x08\x34\x08\x38\x08\x3c\x08\x40\x08\x44\x08\x47\x08\xac\x08\xb0\x08\xb4"
+"\x08\xb8\x08\xbc\x08\xd8\x08\xdd\x08\xe0\x08\xe4\x08\xe8\x09\x08\x09\x18\x09\x38\x09\x56\x09\x5c\x09\x61\x09\x65\x09\xab\x09\xaf"
+"\x09\xb5\x09\xb9\x09\xc2\x09\xc6\x09\xca\x09\xce\x09\xdd\x09\xe1\x09\xe4\x0a\x42\x0a\x46\x0a\x4a\x0a\x75\x0a\xbe\x0a\xc3\x0a\xde"
+"\x0a\xe3\x0a\xe7\x0b\x03\x0b\x08\x0b\x39\x0b\x3d\x0b\x42\x0b\xb9\x0b\xca\x0c\x41\x0c\x80\x0c\x9a\x0d\x0c\x0d\x91\x0d\x96\x0d\xe3"
+"\x0e\x44\x0e\xf7\x0f\x5e\x0f\x6d\x0f\x90\x0f\x9e\x0f\xa7\x0f\xae\x0f\xba\x0f\xc7\x0f\xd7\x10\x06\x10\x3b\x10\x3d\x10\x73\x10\x8c"
+"\x10\x9c\x10\xa6\x10\xb1\x10\xd0\x10\xe5\x11\x60\x11\xb1\x11\xb8\x11\xbf\x11\xc7\x11\xcf\x11\xd7\x11\xdf\x11\xe7\x11\xef\x11\xf8"
+"\x12\x12\x12\x18\x12\x4f\x12\x57\x12\x5b\x12\x60\x12\xf2\x13\x1c\x13\x21\x13\x85\x13\xc7\x13\xcc\x13\xcf\x13\xf0\x13\xf4\x14\x76"
+"\x14\xe1\x14\xfe\x15\x17\x15\x70\x15\xb7\x15\xba\x15\xfc\x16\x20\x16\x4b\x16\x80\x16\xae\x16\xca\x16\xf7\x17\x1a\x17\x5c\x17\x97"
+"\x18\x25\x18\x29\x18\xb5\x18\xdf\x18\xe6\x19\x52\x19\x5b\x19\x63\x19\x6b\x19\x73\x19\x7c\x19\xa5\x1a\x0e\x1a\x17\x1a\x20\x1a\x29"
+"\x1a\x32\x1a\x38\x1a\x3f\x1a\x46\x1a\x4d\x1a\x87\x1a\xae\x1a\xba\x1a\xc6\x1a\xd1\x1a\xed\x1a\xff\x1b\x0b\x1b\x17\x1b\x20\x1b\x2d"
+"\x1b\x34\x1b\x3b\x1b\x56\x1b\x60\x1b\x6c\x1b\x76\x1b\x80\x1b\x89\x1b\x92\x1b\xf4\x1b\xff\x1c\x09\x1c\x1b\x1c\x1e\x1c\x25\x1c\x2c"
+"\x1c\x32\x1c\x38\x1c\x41\x1c\x75\x1c\x7e\x1c\xb3\x1c\xc1\x1d\x02\x1d\x14\x1d\x29\x1d\x33\x1d\x45\x1d\x51\x1d\x59\x1d\x62\x1d\x6c"
+"\x1d\xad\x1d\xb1\x1d\xba\x1d\xc4\x1d\xeb\x1e\x8f\x1e\xf2\x1f\x26\x1f\x30\x1f\x3c\x1f\x40\x1f\x49\x1f\x52\x1f\x9b\x1f\xa8\x1f\xab"
+"\x1f\xbc\x1f\xc4\x1f\xcd\x20\x38\x20\x3b\x20\x49\x20\x4c\x20\x65\x20\x6e\x20\x77\x20\x80\x20\x8a\x20\xe0\x21\x05\x21\x09\x21\x25"
+"\x21\x28\x21\x3c\x21\xb0\x21\xc2\x21\xd0\x21\xda\x21\xed\x22\x63\x22\xa6\x22\xbf\x23\x00\x23\x0e\x23\x16\x23\x25\x23\x4f\x23\x52"
+"\x23\x59\x23\x64\x23\x74\x23\x7a\x23\x7d\x23\x84\x23\x8d\x23\xa6\x23\xaf\x23\xb7\x23\xc9\x23\xcd\x23\xd6\x23\xe3\x23\xeb\x23\xef"
+"\x24\x03\x24\x14\x24\x1e\x24\x2a\x24\x2e\x24\x3a\x24\x43\x24\xb7\x24\xcb\x25\x32\x25\x3b\x25\x43\x25\x4c\x25\x4f\x25\x57\x25\xc7"
+"\x25\xd0\x25\xdd\x26\x07\x26\x0b\x26\x32\x26\x3b\x26\x7e\x26\xd1\x26\xda\x26\xe3\x26\xeb\x27\x5c\x27\x60\x27\x68\x27\x88\x27\x92"
+"\x27\xa5\x27\xae\x27\xb7\x27\xbf\x27\xc8\x27\xe9\x27\xf1\x27\xf9\x28\x01\x28\x0b\x28\x0f\x28\x2f\x28\x38\x28\x3c\x28\x6a\x28\xa3"
+"\x28\xfa\x29\x06\x29\x47\x29\x4b\x29\x54\x29\x7a\x29\x9a\x29\x9e\x29\xda\x29\xe6\x2a\x0f\x2a\x35\x2a\x42\x2a\x4b\x2a\x62\x2a\xa1"
+"\x2b\x00\x2b\x18\x2b\x1c\x2b\x7c\x2b\x83\x2b\x9a\x2b\xab\x2b\xc5\x2b\xee\x2c\x2a\x2c\x3a\x2c\x3f\x2c\xa0\x2c\xe4\x2d\x3d\x2d\x5a"
+"\x2d\xbf\x2d\xda\x2e\x3c\x2e\xb9\x2e\xbe\x2e\xc5\x2f\x0a\x2f\x55\x2f\x88\x2f\xd4\x2f\xef\x30\x2b\x30\xc7\x31\x31\x31\x87\x31\x93"
+"\x31\xd1\x31\xd5\x31\xdd\x31\xfc\x32\x16\x32\x1a\x32\x4a\x32\x71\x32\x7e\x32\xb0\x32\xbb\x32\xdd\x32\xe9\x33\x28\x33\x84\x33\x96"
+"\x33\x9a\x34\x1e\x34\x4f\x34\x62\x34\x72\x34\x7f\x34\x96\x34\xbb\x34\xc8\x34\xcd\x35\x28\x35\x79\x35\xca\x35\xe8\x36\x48\x36\x63"
+"\x36\xc4\x37\x38\x37\x3c\x37\x43\x37\x74\x37\xa3\x37\xce\x38\x11\x38\x41\x38\x73\x38\x8b\x38\xa3\x38\xf5\x39\x81\x3a\x05\x3a\x83"
+"\x3a\xdc\x3b\x3e\x3b\x4e\x3b\x83\x3b\xb9\x3c\x57\x3c\xd4\x3c\xe1\x3d\x67\x3d\xaf\x3d\xf5\x3e\x3c\x3e\x81\x3e\x89\x3e\x9a\x3f\x12"
+"\x3f\x1b\x3f\x35\x3f\x3d\x3f\x46\x3f\x77\x3f\xf5\x40\x72\x40\x82\x40\xba\x41\x17\x41\x46\x41\x4e\x41\x56\x41\x70\x41\x78\x41\xa3"
+"\x41\xac\x41\xcd\x42\x29\x42\x88\x42\xf0\x43\x0a\x43\x74\x43\x78\x43\x7f\x43\x9e\x43\xb8\x43\xfa\x44\x43\x44\x65\x44\x76\x44\x7e"
+"\x44\x9f\x45\x27\x45\x52\x45\xa8\x45\xae\x45\xf4\x46\x19\x46\x21\x46\x35\x46\x44\x46\xbc\x46\xf8\x47\x0f\x47\x43\x47\x88\x48\x15"
+"\x48\x51\x48\x54\x48\x5b\x48\x62\x48\x6a\x48\x9f\x48\xae\x48\xd2\x48\xe6\x48\xf4\x48\xfa\x49\x16\x49\x20\x49\x27\x49\x34\x49\x5f"
+"\x4a\x01\x4a\x0b\x4a\xa1\x4a\xa8\x4a\xfa\x4b\x14\x4b\x1d\x4b\x48\x4b\x55\x4b\x69\x4b\xd8\x4c\x12\x4c\x2e\x4c\x37\x4c\x4b\x4c\x5b"
+"\x4c\x60\x4c\x68\x4c\x6c\x4c\x75\x4c\x83\x4c\x8b\x4c\xfd\x4d\xeb\x4e\x5d\x4e\x7a\x4e\xa3\x4e\xc6\x4e\xfd\x4f\x5e\x4f\x87\x4f\x91"
+"\x4f\xb0\x4f\xcd\x4f\xf5\x50\x0d\x50\x5f\x50\x68\x50\xd6\x50\xf0\x51\x58\x51\x6c\x51\xc1\x52\x51\x52\xac\x52\xe1\x53\x82\x53\x98"
+"\x53\xd5\x53\xea\x54\x32\x54\x9e\x54\xa6\x54\xaf\x54\xb6\x54\xcc\x54\xd8\x54\xd9\x54\xdd\x54\xf7\x55\x25\x55\x2d\x55\x2f\x55\x4a"
+"\x55\x51\x55\x8c\x55\xf7\x56\x00\x56\x09\x56\x0c\x56\x16\x56\x48\x56\x74\x56\xb3\x56\xea\x57\x1a\x57\x60\x57\x8b\x57\xb4\x57\xd7"
+"\x58\x10\x58\x2b\x58\x50\x58\x78\x58\x8d\x58\xe5\x59\x23\x59\x27\x59\x3e\x59\x75\x59\xa8\x59\xba\x59\xf6\x5a\x2c\x5a\x72\x5a\xc5"
+"\x5b\x1e\x5b\x52\x5b\x83\x5b\x88\x5b\xa5\x5b\xc1\x5c\x22\x5c\x2b\x5c\x3b\x5c\x67\x5c\x94\x5c\xcd\x5c\xd9\x5c\xe1\x5d\xa3\x5e\x05"
+"\x5e\x0a\x5e\x0c\x5e\x28\x5e\x45\x5e\xb5\x5e\xcc\x5f\x11\x5f\x3a\x5f\x69\x5f\x6d\x5f\x76\x5f\x7f\x5f\x94\x5f\xa7\x5f\xb0\x5f\xb9"
+"\x5f\xc1\x5f\xd1\x5f\xdb\x60\x6b\x60\x74\x60\x7e\x60\x87\x60\x90\x60\xf7\x0e\x0e\xfb\xc5\xf8\x35\x81\x0a\x0e\xfb\x38\xf7\xeb\xf9"
+"\x6d\xa3\x0a\xf7\x9c\xf7\x16\xa3\x0a\x0e\x39\xf7\x1e\x6b\x15\xdf\xf7\x60\x05\xf1\x06\x38\xfb\x60\x05\xf4\x06\xdf\xf7\x60\x05\xf7"
+"\x0b\x06\xa0\xef\x05\x28\x06\xc9\xf7\x2c\x05\xf5\x06\xa0\xef\x05\x34\xde\x1d\x24\xde\x1d\xfb\x0a\x06\x75\x27\x05\xee\x06\x4d\xfb"
+"\x2c\x05\x2a\x06\x76\x27\x05\xd8\x06\x38\xfb\x60\x05\xf7\x79\xf7\xc4\x15\xca\xf7\x2c\x05\xf1\x06\x4d\xfb\x2c\x05\x0e\x39\xf9\x03"
+"\xf8\x86\x15\x8f\xa0\x8c\x97\x9b\x1a\xbe\x79\xb6\x6b\xa7\x1e\x70\xa2\x69\x97\x53\x90\x97\xc1\x18\x47\x06\x80\x55\x57\x86\x68\x81"
+"\x65\x77\x19\x3d\x63\x5a\x3d\x3a\x1a\x30\xc1\x52\xf7\x03\x6f\x1e\x5d\xfb\x69\x05\x5f\x94\x76\xa7\xbe\x1a\x96\x8b\x93\x8c\x99\x1e"
+"\xfb\x16\x06\x85\x73\x89\x7b\x78\x1a\x2a\xcb\x4f\xf7\x08\x7f\x1e\x74\x22\x05\xcf\x06\xa1\xf4\xc3\x91\xb7\x98\xb2\xa0\x19\xd7\xb5"
+"\xbf\xe3\xe3\x1a\xdc\x56\xbe\xfb\x0f\xb1\x1e\xb6\xf7\x5d\x05\xaf\x85\xa1\x71\x65\x1a\x7f\x8a\x82\x89\x78\x1e\xfb\x35\x44\x15\x61"
+"\x9b\x77\xa4\xac\x1a\xad\x9e\xae\xa7\x9e\x1e\x99\x95\x99\x8f\xa4\x90\x08\x8a\xfb\xda\x15\xb2\x7b\x9f\x6f\x63\x1a\x53\x66\x62\x4b"
+"\x7c\x1e\x0e\xf7\x8f\xf9\x88\xf9\x59\x15\xfc\xba\xfd\x6d\x05\xd7\x06\xf8\xbb\xf9\x6d\x05\xfc\x75\x83\x15\xfb\x07\xfb\x00\x21\xfb"
+"\x05\x38\xcb\x4d\xe2\xf7\x0a\xf6\xf4\xf7\x07\xdf\x4b\xc7\x32\x1f\x76\x29\x15\xb6\xaa\x6f\x64\x56\x5b\x5b\x54\x61\x6c\xa7\xb1\xc1"
+"\xbc\xbb\xc0\x1f\xf8\x37\xfb\x97\x15\xfb\x07\xfb\x00\x21\xfb\x05\x38\xcb\x4d\xe2\xf7\x0a\xf6\xf4\xf7\x07\xdf\x4b\xc7\x32\x1f\x76"
+"\x29\x15\xb6\xaa\x6f\x64\x56\x5b\x5b\x54\x61\x6c\xa7\xb1\xc1\xbc\xbb\xc0\x1f\x0e\xdf\xf8\xf3\xf8\x09\x15\x80\x52\x7c\x6d\x69\x6c"
+"\x39\xf7\x1d\x18\xc1\xab\xa9\xa1\xa1\xa4\x08\xac\xb0\x9f\xbe\xba\x1a\xd1\x4d\xba\x30\xfb\x0c\x22\x2e\x20\x6c\x9c\x64\xaf\x57\x1e"
+"\x59\x74\x74\x7f\x6c\x75\x08\x46\x5c\x66\x49\x40\x1a\xfb\x05\xd4\x49\xf7\x11\xd8\xb5\x9b\xce\xe8\x1e\xb0\x4f\x05\xf7\x34\x06\x2d"
+"\xf7\x34\xc6\xc0\xbb\xe2\x96\xd4\x19\xfc\x09\x55\x15\xee\xfb\x3b\x05\x5d\x48\x6d\x7e\x69\x1b\x5a\x63\xb5\xbf\xb9\x9e\xa8\xbd\xa7"
+"\x1f\xf7\x10\xf7\x48\x15\x6b\xc2\x87\x94\x9d\x1a\xb0\xa6\xa5\xb1\xab\x9e\x7c\x71\x62\x6f\x67\x57\x70\x1e\x0e\xf7\x70\xf9\x6d\x86"
+"\x0a\xe9\x92\xc9\xc3\x97\xe3\xa2\xf7\x01\x18\x0e\xfb\xc5\xf7\xfa\xf9\x6d\x15\xfb\x53\xfb\x70\x38\xfb\x4c\xfb\x5f\x1a\x29\xa4\x21"
+"\xbf\xfb\x0a\x1e\xef\x06\x5f\xf7\x25\x7d\xd6\xe7\x1a\xf7\x19\xb0\xf7\x18\xd6\xf7\x1c\x1e\xae\xcb\xb0\xc2\xd2\xec\x08\x0e\xfb\xc5"
+"\xda\xfb\x5c\x15\xc4\xcd\xc1\xd1\xaf\xc2\x08\xe0\xf7\x18\xb8\xf7\x25\xf7\x1e\x1a\xee\x72\xf1\x54\xf7\x0e\x1e\x27\x06\xba\xfb\x28"
+"\x99\x44\x2d\x1a\xfb\x18\x66\xfb\x18\x3f\xfb\x1c\x1e\x67\x4b\x6b\x5b\x3e\x23\x08\x0e\xfb\x8d\xf7\x8a\xf8\xb4\x15\x34\x2d\xbc\x60"
+"\xe2\xe9\xba\x2d\xce\xb6\x5c\xe9\xf7\x08\xae\x84\xd1\xfb\x09\x67\xa4\xf7\x08\x05\x43\x06\x73\xfb\x08\x26\xaf\x66\x46\x05\x0e\x55"
+"\xf8\xe8\xf7\xb8\x91\x0a\x64\xfb\x4a\x05\xf7\x0b\x06\xb2\xf7\x4a\x05\xf7\x4b\x06\x0e\xea\xf7\x26\x15\x6c\xfb\x26\x05\xe1\x06\x7e"
+"\x47\x67\x64\x4d\x80\x7f\x53\x18\xf7\x02\x9b\xc7\xc4\x9e\xf7\x02\xa8\xf7\x1d\x18\x0e\xfb\xc5\xa6\x0a\xf7\x89\xf7\x26\x27\x1d\x0e"
+"\xf7\xfc\xf9\x5e\x15\xfb\xfd\xfd\x6c\x05\xce\x06\xf7\xfd\xf9\x6c\x05\x0e\x39\xf8\x39\xf9\x68\x15\xfb\x05\x2f\x4a\xfb\x0a\x54\x1f"
+"\x61\x2f\x65\xfb\x3f\x25\x1a\xfb\x10\xd3\x40\xf7\x0a\xf7\x08\xe7\xcb\xf7\x0b\xc2\x1e\xb5\xe6\xb1\xf7\x41\xf1\x1a\xf7\x10\x43\xd5"
+"\xfb\x0d\x1e\x70\xfb\x04\x15\xba\xa9\x6a\x58\x4d\x74\xfb\x1a\x70\x2c\x1f\x28\x6f\x69\x64\x50\x1b\x5d\x6d\xac\xbe\xec\xbc\xf7\x72"
+"\xac\xc0\x1f\xb1\xa3\xa8\x9e\xae\x1b\x0e\x39\xf7\xea\xf8\x7d\x15\x23\xfc\x7d\x20\x1d\xf7\x2b\xf9\x59\x05\x2e\x06\x37\x63\x39\x60"
+"\xfb\x0e\x1b\x77\x2e\x05\x0e\x39\xf8\xae\xf7\x11\x15\xfb\xc0\x06\xa4\xb0\xa9\xa1\xf7\x0a\xd6\xde\xbf\xb0\xa8\xab\xb1\x08\xb5\xbd"
+"\xa2\xc8\xca\x1a\xf7\x00\x3e\xcb\xfb\x16\xfb\x30\x26\x2d\xfb\x3c\x71\x1e\xf7\x1a\x06\xec\x98\xb8\xc0\xd1\x1b\xc0\xab\x6d\x59\x5c"
+"\x77\x5d\x69\x68\x1f\x6c\x6a\x6b\x75\xfb\x07\x43\xfb\x1f\x38\x5a\x4d\x68\xfb\x18\x08\xf8\x76\x06\x0e\x39\xf7\xb0\xf7\xd1\x15\xc1"
+"\x8e\x8b\x84\xa3\x1f\xaf\x80\xa0\x6f\x63\x1a\x71\x83\x70\x7d\x75\x1e\x65\x72\x6a\x78\x61\x1b\x52\x6b\xa7\xbc\x8a\x1f\xa1\x07\x8a"
+"\x95\x05\xfb\x1c\x06\x87\x75\x89\x7b\x78\x1a\xfb\x02\xd6\x4b\xf7\x16\xed\xda\xac\xc9\xbe\x1e\xb3\xbd\xa4\xd2\xcb\x1a\xc1\x75\xb2"
+"\x59\xa9\x1e\xdb\xbc\xb3\xcc\xda\x1a\xeb\x42\xc2\xfb\x13\x35\x46\x71\x58\x5d\x1e\x66\x63\x79\x60\x7c\x3d\x08\xf7\x15\x06\x94\xb2"
+"\x91\x9e\x95\x9c\x08\xac\x9e\xac\x9d\xb3\x1b\xb9\xaa\x6f\x61\x3b\x50\x58\x30\x1f\x80\x06\x0e\x39\xf8\xd8\xf7\xa5\x15\x41\x06\xe8"
+"\xf8\x48\x05\xfb\x39\x06\xfb\xf4\xfc\x46\x72\xfb\x0a\x05\xf7\xb1\x06\x69\xfb\x31\x20\x1d\xad\xf7\x31\x05\xd4\x06\xfb\x51\xf7\x08"
+"\x15\xfb\x4c\x06\xf7\x8d\xf7\xc4\x05\x0e\x39\xf9\x15\xf9\x59\x15\xfc\x13\x06\xfb\x26\xfc\x1f\x05\xf7\x12\x06\xad\xa2\xae\x9e\xb6"
+"\x1b\xc5\xab\x6b\x50\x26\x4f\x3f\x3a\x55\x69\xa4\xb1\x91\x8c\x93\x8c\x94\x1f\xfb\x1e\x06\x87\x77\x8a\x81\x7d\x1a\x28\xda\x4a\xf7"
+"\x0d\xf0\xe3\xb7\xdb\xc6\x1e\xb4\xc4\xa3\xd3\xd1\x1a\xf7\x03\x48\xcf\xfb\x00\x5a\x66\x7f\x6c\x5c\x1e\xc1\xf7\x28\x05\xf7\xbc\x06"
+"\x0e\x39\xf9\x04\xf8\xb8\x15\x8c\x94\x8b\x94\x90\x1a\xea\x47\xc5\xfb\x06\x20\x35\x55\x21\x4a\x1e\x56\x34\x5c\xfb\x4c\xfb\x0e\x1a"
+"\xfb\x0b\xd9\x40\xf7\x0d\xe2\xda\xb3\xd2\xc0\x1e\xb9\xc8\xa7\xda\xd3\x1a\xf3\x4c\xca\x22\x56\x5d\x7a\x64\x59\x1e\x9c\xc9\x8d\x92"
+"\x98\xab\x08\xd1\xa7\xb0\xa9\xc4\x1b\xbb\xa2\x79\x5d\x94\x1f\xfb\x22\xfb\x55\x15\xbd\xab\x69\x57\x2e\x4f\x3e\x42\x58\x68\xb0\xbf"
+"\xe5\xca\xd8\xd5\x1f\x0e\x39\xf9\x3b\xf9\x59\x15\xfc\x89\x24\x1d\xf7\xf5\x06\xfb\x57\xfb\x50\x29\xfb\x2e\x3b\xfb\x86\x08\xf7\x22"
+"\x06\xc0\xf7\x53\xd9\xf7\x1d\xf7\x27\xf7\x37\xc9\xcb\xae\xaf\x93\x93\x08\x0e\x39\xf8\x7f\xf8\x16\x15\xad\x9f\x9e\x98\x9b\x9c\x08"
+"\xb1\xb0\xa1\xbc\xbb\x1a\xe6\x3a\xca\xfb\x09\xfb\x25\xfb\x0d\x23\xfb\x11\x5f\x9d\x6e\xba\x67\x1e\x59\x72\x70\x78\x72\x6e\x08\x66"
+"\x5f\x75\x50\x54\x1a\xfb\x01\xde\x46\xf7\x19\xde\xd7\xa8\xbf\xc1\x1e\xc0\xbf\xac\xd6\xcf\x1a\xc7\x74\xaf\x4e\xb0\x1e\x2e\xf7\x76"
+"\x15\xc2\xb0\x6e\x60\x4b\x53\x58\x44\x57\x6a\xa8\xb9\xca\xbf\xbc\xcf\x1f\x53\xfb\xae\x15\xc2\xae\x6b\x58\x35\x53\x4d\x3c\x54\x64"
+"\xad\xba\xdf\xc8\xcd\xd9\x1f\x0e\x39\xd3\xf7\x39\x15\x88\x7c\x8a\x83\x81\x1a\x2f\xd4\x4c\xf6\xf7\x02\xe4\xc1\xf3\xc7\x1e\xc9\xf5"
+"\xb5\xf7\x31\xf7\x0d\x1a\xf7\x11\x3d\xdb\xfb\x0c\xfb\x38\xfb\x15\xfb\x21\xfb\x48\xfb\x01\xcb\x49\xf4\xc3\xae\x9a\xbb\xc3\x1e\x80"
+"\x5b\x80\x6a\x7f\x6f\x08\x56\x73\x60\x6d\x59\x1b\x5c\x6b\xa1\xab\x8e\x8b\x8f\x8c\x90\x1f\xf7\x4a\xf8\x53\x15\xc3\xaf\x67\x52\x2a"
+"\x4b\x3d\x3b\x5a\x6c\xad\xc0\xf0\xc5\xdb\xd5\x1f\x0e\xfb\xc5\xf7\xba\xf7\x26\x27\x1d\xf7\x03\xf8\x9c\x27\x1d\x0e\xfb\xc5\xf7\x24"
+"\xf7\x26\x15\x6c\xfb\x26\x05\xe1\x06\x7e\x47\x67\x64\x4d\x80\x7f\x53\x18\xf7\x02\x9b\xc7\xc4\x9e\xf7\x02\xa8\xf7\x1d\x18\xdb\xf8"
+"\x0a\x27\x1d\x0e\x55\xf9\x0a\xf8\x6e\x15\xfc\xa3\xfb\x49\x71\xfb\x0d\xf8\x56\xfb\x4a\xa7\xf7\x17\xfb\xb8\xf7\x03\xf7\xe8\xf7\x05"
+"\x05\x0e\x55\xf9\x02\xf8\x30\x15\xfc\x79\x31\x1d\xf8\x79\x06\x71\xfb\x0c\x15\xfc\x79\x31\x1d\xf8\x79\x06\x0e\x55\xb1\x81\x15\xf8"
+"\xa3\xf7\x49\xa5\xf7\x0d\xfc\x56\xf7\x4a\x6f\xfb\x17\xf7\xb8\xfb\x03\xfb\xe8\xfb\x05\x05\x0e\x70\xf8\x32\xf7\x5d\x15\x99\xcd\x94"
+"\x96\xcf\xb5\xc6\xaf\xb0\xa9\xa0\xa6\x08\xa9\xb2\x9f\xc7\xc1\x1a\xc0\x74\xbd\x63\xaa\x1e\xa8\x68\x56\x9a\x4b\x1b\x35\x45\x6d\x52"
+"\x56\x1f\x64\x60\x75\x5a\x78\x37\x08\xf7\x1c\x06\xe3\x9c\xbc\xbe\xcf\x1b\xc1\xb0\x67\x58\x76\x85\x77\x81\x78\x1f\x7c\x71\x81\x82"
+"\x53\x64\x2d\x49\x64\x53\x84\x3f\x08\xf7\x12\x54\x15\x2a\x0a\x6c\xfb\x26\x05\x23\x0a\x0e\xf7\xe5\xf9\x82\xf8\x90\x15\x70\x50\x05"
+"\xbd\x77\x70\x9e\x5a\x1b\x3b\x34\x5c\x3a\x46\x1f\x53\x49\x69\x40\x4f\x1a\x3b\xc3\x53\xdc\xc2\xc1\xa4\xbb\xbd\x1e\x5d\x9a\xb0\x73"
+"\xc3\x1b\xdd\xe1\xbd\xe2\xd2\x1f\xc5\xd2\xa9\xdf\xe6\x1a\xcd\x75\xc6\x5e\xc1\x1e\xe0\x46\x29\xb5\xfb\x14\x1b\xfb\x38\xfb\x31\x47"
+"\xfb\x0c\xfb\x06\x1f\x25\x20\x4f\xfb\x1f\xfb\x16\x1a\x36\xad\x3a\xc7\x52\x1e\x4a\xd0\xe6\x6d\xf7\x12\x1b\xeb\xd5\x99\xaa\xd8\x1f"
+"\x7f\xda\x05\x6c\x2c\x55\x81\x4c\x1b\xfb\x46\xfb\x11\xf2\xf7\x27\xe5\xaf\xf2\xca\xe1\x1f\xf7\x0d\xe3\xf7\x16\xcd\xf7\x2c\x1b\xf3"
+"\xd2\x6f\x4c\xc6\x1f\xb5\x5e\xa0\x5a\x57\x1a\x4d\x72\x45\x5f\x53\x1e\x51\x5e\x50\x63\x61\x1b\x73\x7c\x98\xa1\x9a\x8d\x91\x9c\xac"
+"\x1f\xf7\x1c\xf7\xac\x05\xfb\x7e\x4d\x15\xb3\x89\xa4\x6f\x63\x1a\x62\x73\x51\x64\x59\x1e\x51\x5f\x58\x6a\x5e\x1b\x63\x70\xab\xba"
+"\xf2\xf7\x0b\xf7\x19\xe1\x86\x1f\x0e\xdf\x24\x0a\x0e\xdf\x78\x1d\xdf\x7e\x1d\x0e\xdf\x73\x0a\x0e\xa8\x26\x0a\x0e\x70\xf7\xb7\xf7"
+"\xce\x15\xf7\xd3\x21\x1d\xfb\xd4\x40\x0a\xf7\xfe\x21\x1d\xfc\x94\x35\x0a\x0e\xf7\x20\x77\x1d\x0e\xdf\x8e\x1d\x25\x0a\x0e\x39\x70"
+"\x0a\x0e\xdf\x79\x0a\x70\x37\x1d\x0e\xf7\x57\x75\x0a\xdf\x30\x0a\x0e\xf7\x20\x7a\x1d\xa8\x6e\x0a\xf7\x20\xf9\x42\xf2\x15\xe0\xdd"
+"\xc7\xf7\x25\xf7\x0f\x1a\xf7\x48\xfb\x02\xf7\x00\xfb\x4b\xfb\x10\x28\x5c\x27\x37\x1e\x3f\x31\x5d\xfb\x12\xfb\x08\x1a\xfb\x43\xf7"
+"\x03\xfb\x02\xf7\x45\xd3\xc5\x9a\xae\xc8\x1e\xd0\x3a\xe8\xdc\x05\xfb\x67\xf7\x8f\x15\x2d\x3a\xc9\x42\x05\x7f\x71\x6c\x84\x6b\x1b"
+"\x28\x4e\xce\xf7\x02\xda\xa6\xe1\xb7\xc8\x1f\xd1\xbd\xca\xae\xd7\x1b\xf2\xc8\x49\xfb\x03\x39\x6b\x2b\x5d\x51\x1f\x0e\xdf\x3e\x1d"
+"\x0e\xa8\x5f\x0a\x0e\x70\x46\x0a\x0e\xdf\x4f\x1d\x0e\xa8\xf8\x24\x16\xf8\x26\xf9\x6d\x05\xfb\x2b\x06\xfb\xa8\xfc\xb9\x5e\xf8\xb9"
+"\x05\xfb\x2b\x06\xe9\xfd\x6d\x05\x0e\xf7\xc6\x35\x1d\x0e\xa8\x78\x0a\xa8\x2c\x0a\x0e\x70\x36\x1d\x0e\xfb\xc5\xf8\x63\x22\x1d\xfb"
+"\x87\x06\xfb\x59\xfe\x35\x05\xf7\x87\x06\xa0\xef\x05\xfb\x05\x06\xf7\x2e\xf9\x6d\x05\xf7\x05\x06\x0e\xf7\x1e\xf9\x59\x15\xd3\xfd"
+"\x70\x05\xd6\x06\x42\xf9\x70\x05\x0e\xfb\xc5\x72\xfb\x5c\x15\xf7\x87\x06\xf7\x59\xfa\x35\x05\xfb\x87\x06\x76\x27\x05\xf7\x05\x06"
+"\xfb\x2e\xfd\x6d\x05\xfb\x05\x06\x0e\x55\xf8\xd8\xf7\xa2\x15\x3a\xf8\x3d\x05\xfb\x11\x06\xfb\x93\xfc\x3d\x05\xf7\x04\x06\xf7\x46"
+"\xf7\xc0\xc5\xfb\xc0\x05\x0e\x39\xf8\xba\x3f\x57\x0a\xf7\xc2\x89\x0a\x0e\x39\x2d\x1d\x0e\x70\xf7\x6a\x22\x1d\xfb\x2f\xfd\x6d\x05"
+"\x21\x0a\x97\xc2\x05\x55\xa2\xb4\x73\xcf\x1b\xf7\x2f\xf7\x22\xf7\x43\xf7\x52\xf7\x11\x46\xdd\x21\x47\x57\x72\x55\x5d\x1f\xc2\xf7"
+"\x97\x05\xc2\xfb\xb8\x15\xc2\xac\x5e\x42\xfb\x0e\x40\xfb\x00\x35\x56\x68\xb8\xcf\xf7\x12\xd6\xf7\x01\xe1\x1f\x0e\x39\x79\x1d\x0e"
+"\x70\xf8\x29\x83\x1d\x0e\x39\x65\x0a\x0e\xfb\xc5\xf8\x3d\xf8\xa5\x37\x0a\x0e\x70\x75\x1d\x0e\x70\x86\x1d\x0e\xf7\xd6\x84\x0a\xf8"
+"\x01\xf9\x6d\x9f\x0a\x7e\x4b\x5b\x0a\x7d\x84\x48\x1d\x0e\x39\x7b\x0a\x0e\x47\x1d\x0e\xf7\x8f\xf7\x43\x29\x0a\x2c\x1d\xd0\xf7\xd8"
+"\x05\xd1\x9a\xb8\xb6\xc5\x1b\xb2\xa3\x74\x68\x7f\x8a\x81\x89\x80\x1f\x41\xfb\xee\x20\x1d\xd0\xf7\xd8\x05\xd3\x9a\xb8\xb4\xca\x1b"
+"\xb1\x9f\x77\x67\x7f\x89\x7c\x88\x7d\x1f\x43\xfb\xe8\x20\x1d\xd8\xf7\xfe\x05\x91\xa9\x8d\x97\x9e\x1a\xdb\x57\xb9\x31\x47\x55\x72"
+"\x52\x54\x1e\xbd\x7d\x5b\xab\x4d\x1b\x49\x5d\x73\x49\x50\x1f\x9c\xdc\x05\x0e\x70\x34\x1d\x0e\x70\x36\x0a\x0e\x70\xf7\xcc\xf8\xb0"
+"\x23\x1d\xfb\x35\xfd\x8a\x9b\x0a\xf7\x5c\xf7\x13\x48\xdb\x20\x48\x54\x6e\x4f\x5d\x1f\xf7\x03\x74\x15\xc1\xad\x5f\x45\xfb\x12\x41"
+"\xfb\x00\x34\x57\x5f\x1d\x70\xf8\x9b\x29\x0a\x7a\x3b\x05\xc7\x77\x5f\xa8\x46\x1b\x38\x3b\x5f\x40\x55\x1f\x59\x44\x6d\x2f\x35\x1a"
+"\xfb\x10\xd1\x3b\xf6\xce\xc3\xa8\xc5\xb9\x1e\x4f\xfb\xae\x20\x1d\xf7\x35\xf9\x8a\x05\xfb\xae\x24\x15\xc1\xae\x5f\x46\xfb\x13\x41"
+"\xfb\x00\x33\x55\x68\xb8\xcf\xf7\x11\xd7\xf7\x02\xe1\x1f\x0e\xfb\x8d\x8d\x1d\x0e\x39\xf8\xdc\xf8\x02\x5e\x1d\x3c\x48\x76\x65\x60"
+"\x1e\x60\x65\x6f\x52\x59\x9c\x1d\x84\x82\x1a\x5e\x8f\x1d\x0e\xfb\xc5\x6f\x0a\x0e\x70\x4f\x0a\x0e\x39\xf7\xf2\x16\xf7\xc1\xf8\xb0"
+"\x05\xfb\x28\x06\xfb\x58\xfc\x1f\x6d\xf8\x1f\x05\xfb\x28\x06\xd5\xfc\xb0\x05\x0e\xf7\x20\x38\x0a\x0e\x39\xf8\x2f\xf7\xa6\x15\xf7"
+"\x81\xf7\x9e\x05\xfb\x3c\x06\xfb\x0f\xfb\x37\x58\xf7\x37\x05\xfb\x3c\x06\xf7\x03\xfb\x9e\xfb\x7d\xfb\xa6\x05\xf7\x3c\x06\xf7\x0f"
+"\xf7\x3c\xc6\xfb\x3c\x05\xf7\x3c\x06\x0e\x39\x50\x1d\x0e\xfb\x1e\x44\x1d\x0e\xfb\x8d\xf8\x6c\x22\x1d\x3f\x06\x3a\x89\x54\x59\x7a"
+"\x33\x5e\xfb\x67\x18\x61\x83\x71\x76\x5f\x1b\x7f\x06\x87\x06\x77\x2f\x8f\x8a\x05\x98\x06\xad\x9f\x7d\x73\x85\x89\x7e\x88\x7c\x1f"
+"\x5e\xfb\x66\x05\x88\x7e\x8a\x7e\x7d\x1a\x4f\xb2\x63\xc5\x1e\xd8\x06\xa0\xee\x05\x68\x06\x72\x7d\x94\x9b\x95\x8d\x98\x8e\x9c\x1f"
+"\xb5\xf7\x57\x05\x8e\x9a\x8d\x9b\x95\x1a\xa6\x7e\xa0\x76\x94\x1e\x7f\x91\x83\x8d\x72\x8f\xd4\x93\xab\xa8\x9b\xd3\xb4\xf7\x57\x18"
+"\x93\xb8\x96\x96\xb1\x8c\x08\xb0\x06\x0e\xfb\xfa\xf7\xe3\xf9\x6d\x15\x3b\x06\xfb\x5a\xfe\x35\x05\xdb\x06\x0e\xfb\x8d\xa8\xfb\x5c"
+"\x15\xd8\x06\xdc\x8d\xc2\xbd\x9c\xe3\xb8\xf7\x67\x18\xb5\x93\xa5\xa0\xb7\x1b\x98\x06\x8f\x06\x9f\xe7\x87\x8c\x05\x7d\x06\x69\x77"
+"\x99\xa3\x91\x8d\x98\x8e\x9a\x1f\xb8\xf7\x66\x05\x8e\x98\x8c\x98\x99\x1a\xc7\x64\xb3\x51\x1e\x3d\x06\x76\x28\x05\xaf\x06\xa4\x99"
+"\x82\x7b\x81\x89\x7e\x88\x7a\x1f\x61\xfb\x57\x05\x88\x7c\x89\x7b\x81\x1a\x70\x98\x76\xa0\x82\x1e\x97\x85\x93\x89\xa4\x87\x42\x83"
+"\x6b\x6e\x7b\x43\x62\xfb\x57\x18\x83\x5e\x80\x80\x65\x8a\x08\x65\x06\x0e\x55\xf8\x8c\xf8\x2f\x15\x58\x7d\x7c\x7c\x65\x1b\x75\x7e"
+"\x91\x9e\x76\x1f\x5a\xb5\x05\x9c\x77\x73\x93\x6b\x1b\x3a\x57\x5b\x2a\x71\x1f\xd9\x06\xbd\x99\x9a\x9a\xb1\x1b\xa0\x9a\x85\x79\x9f"
+"\x1f\xbb\x61\x05\x79\xa0\xa2\x83\xac\x1b\xdb\xc2\xbe\xea\xa2\x1f\x0e\xfb\xc5\xa5\xfb\x4e\x15\x23\x0a\xb8\xf7\x66\xa3\xf7\xc9\x05"
+"\x48\x06\x20\xfb\xc9\x05\xda\xf8\x06\xd7\x1d\x39\xf8\x2e\xf8\x47\x15\xb1\x7f\x97\x72\x4f\x1a\xf7\x1a\x06\x8e\xa3\x8c\x94\x95\x1a"
+"\xcd\x5f\xc9\x4a\xa5\x1e\x7b\x91\x7c\x8e\x73\x8e\x9e\xe2\x18\x49\x06\x78\x35\x33\x84\x47\x65\x5a\x45\x19\x59\x44\x69\x21\x37\x1a"
+"\x3b\xb7\x44\xcf\x71\x1e\x9b\x84\x9c\x87\xa3\x87\x75\x23\x18\xcd\x06\xa0\xf1\xf7\x09\x91\xeb\xdc\xaf\xf7\x0e\x19\xfb\x1a\x06\x73"
+"\x50\x71\x6e\x62\x81\x08\x4a\x8f\x15\x66\x9b\x7e\xa6\xc2\x1a\xd3\xa3\xdc\xaf\xbc\x1e\x9a\xa0\xa0\x99\xa5\x92\x08\x0e\x39\xf8\x5b"
+"\xf8\x07\x15\xfb\x1f\x06\x88\x9a\x87\x9b\x82\xad\x08\x81\xb0\x89\x94\xa0\x1d\xfb\x1b\x3a\x47\x72\x5b\x57\x1e\x5a\x5e\x6d\x4d\x52"
+"\x1a\x6f\x8f\x7a\xa1\x4d\x1e\x4f\x06\x7f\x54\x05\xe4\x06\x8f\x6f\x8c\x7f\x7c\x1a\x45\x63\x59\x23\x4e\x1e\xac\x26\x05\xa0\xbc\xa8"
+"\x92\xb0\x1b\xa6\xa2\x87\x80\xb8\x1f\x7f\xbc\x9f\x88\xa6\x1b\xbc\xb5\x97\xac\xcb\x1f\x79\xf7\x01\x05\x76\x5e\x6a\x83\x67\x1b\x7a"
+"\x74\x8e\x90\x71\x1f\x94\x5f\x88\x8b\x79\x1b\x6c\x7f\x87\x6e\x4a\x1f\xf7\x03\xd9\xb3\xc1\xd4\x1a\x92\x8b\x91\x89\x97\x1e\xf7\x0e"
+"\x06\x0e\xf8\x5f\x32\x0a\x0e\x39\xf8\xd2\xf7\xf4\x15\xfb\x1f\x06\xf7\x9f\xf7\xf4\x05\xfb\x1c\x06\xfb\x4f\xfb\x92\x36\xf7\x92\x05"
+"\xfb\x1f\x06\xf7\x14\xfb\xf4\x22\x0a\x7f\x4f\x05\xf7\x26\x06\x80\x57\x05\xfb\x26\x06\x7e\x4f\x05\xf7\x26\x06\x65\xfb\x48\x20\x1d"
+"\xb1\xf7\x48\x05\xf7\x24\x06\x98\xc7\x05\xfb\x24\x06\x96\xbf\x05\xf7\x24\x06\x0e\x39\xf8\xef\xf8\x77\x15\xfb\x0f\x06\x9a\xb4\x05"
+"\xd2\xa7\xab\xad\xb2\x1b\x9c\x95\x88\x7e\xa4\x1f\xb7\xf7\x06\x05\x98\x63\x77\x8f\x6b\x1b\x22\x44\x4c\xfb\x1f\x55\x1f\x74\x50\x05"
+"\xfb\x1e\x06\x76\x27\x05\xf7\x0f\x06\xfb\x1f\xfc\x0c\x05\x38\x6c\x74\x6f\x67\x1b\x7b\x78\x93\x98\x7a\x1f\x5a\xfb\x07\x05\x7b\xa9"
+"\xa3\x85\xab\x1b\xf7\x03\xd4\xce\xf7\x2e\xc3\x1f\xf7\x20\xf8\x12\x05\xf7\x1d\x06\x0e\x39\xf8\xe1\xf8\xb4\x15\x90\xa4\x8d\x96\x99"
+"\x1a\xdc\x4b\xbb\x20\x41\x4b\x74\x62\x5f\x1e\x62\x66\x73\x58\x5c\x1a\x63\x97\x6e\xa5\x70\x1e\x57\x6a\x7c\x7f\x76\x73\x08\x71\x6d"
+"\x7e\x65\x5f\x1a\x64\x9f\x67\xad\x74\x1e\xf7\x2a\x27\x05\xbd\x6c\x90\x85\x70\x1a\x61\x64\x6b\x58\x61\x74\x9e\xaf\x95\x8c\x92\x8d"
+"\x9c\x1e\xfb\x17\x06\x84\x71\x89\x7d\x78\x1a\x34\xcf\x54\xf7\x00\xe3\xd3\xaa\xc6\xbd\x1e\xad\xb4\x9f\xbd\xba\x1a\xb5\x7c\xa9\x6a"
+"\xa6\x1e\xe7\xad\xb1\xbe\xe6\x1a\xbb\x76\xae\x5b\xa9\x1e\xfb\x04\xd1\x05\x58\xaa\x77\xa0\xa1\x1a\xaf\xab\xa5\xb6\xb3\xa1\x76\x65"
+"\x87\x8b\x84\x8a\x84\x1e\xfb\x60\xfb\xbd\x15\x6e\x9c\x81\x9a\xa1\x1a\xae\x9d\xa5\xb1\x9f\x1e\xf7\x13\x3f\x05\xae\x76\x96\x7d\x73"
+"\x1a\x6a\x79\x75\x5c\x75\x1e\x0e\x39\xf8\x89\xf8\xa4\x15\x9d\x72\x66\x97\x68\x1b\x63\x60\x7f\x78\x68\x1f\x4e\xd8\x38\x47\xc9\x3c"
+"\x05\x68\x61\x77\x54\x58\x1a\x75\x8e\x7a\x93\x73\x1e\x2d\x3e\xc1\x46\xe9\xd9\x05\x79\xa0\xb7\x7e\xb1\x1b\xb0\xa2\x91\xa3\xbb\x1f"
+"\xc6\x40\xde\xcf\x4f\xd7\x05\xaf\xb9\x9f\xc1\xbe\x1a\x9f\x88\x9b\x84\xa3\x1e\xe6\xd6\x55\xd0\x05\xfb\x69\xfb\x21\x15\xbe\xae\x68"
+"\x59\x42\x53\x52\x43\x58\x68\xad\xbe\xd5\xc3\xc3\xd3\x1f\x0e\xfc\x24\xf7\xeb\xf9\x6d\xe1\x1d\xc2\x06\xd1\xf7\x15\x05\x0e\xfb\x1e"
+"\xf7\xc6\x89\x0a\xf7\xfe\x16\xa6\xf7\x11\x05\x3a\x06\x94\xbd\xab\xa8\xc5\x95\x95\xb9\x18\x32\x84\x4b\x52\x7d\x34\x74\xfb\x01\x18"
+"\x0e\x39\xf7\x1b\xf7\x6e\x53\x0a\xf7\x51\xfb\x06\x53\x0a\x0e\xfb\xc5\xf7\x14\xf7\x6e\x53\x0a\x0e\xfb\xc5\xf7\xd3\xb0\x1d\x0e\x70"
+"\xf8\x3d\xf8\xa5\x37\x0a\xf7\x8e\xf3\xa1\x1d\x70\xf8\x3d\xf8\xa5\x37\x0a\xf7\xb6\xf7\xb9\xd2\x1d\x39\xf9\x04\xf7\xcb\x15\xfc\xcb"
+"\x06\x75\x23\x05\xf8\xcb\x06\x0e\x39\xf9\x06\xf8\x79\x15\xfb\x47\x06\xba\xf7\x74\x05\xfb\x19\x06\x5b\xfb\x74\x05\xfb\x47\x06\x72"
+"\xfb\x08\x05\xf7\x47\x06\xfb\x0b\xfc\xc7\x05\xf7\x1a\x06\xf7\x0b\xf8\xc7\x05\xf7\x47\x06\x0e\x39\xf9\x03\xf8\x79\x15\xfb\x47\x06"
+"\xbb\xf7\x74\x05\xfb\x1a\x06\x5b\xfb\x74\xd8\x1d\xfb\x73\xd8\x1d\xfb\x74\x05\xf7\x1a\x06\xbb\xf7\x74\x05\xf7\x46\x06\xa4\xf7\x08"
+"\x05\xfb\x47\x06\xbb\xf7\x73\x05\xf7\x46\x06\x0e\x55\x0a\x39\xf9\x40\x22\x1d\xfb\xc2\x06\x4a\x53\x71\x55\x58\x1f\x52\x4e\x6b\x3f"
+"\x3e\x1a\x29\xca\x4a\xef\x86\x1e\x2a\xfc\x5e\x05\xed\x06\xf7\x48\xf9\xe3\x05\xc9\x06\xfb\x48\xfd\xe3\x05\xed\x06\xf7\x48\xf9\xe3"
+"\x05\xb7\x06\x0e\xfb\xb4\xf7\x96\xf8\x3d\x15\x3d\x46\x46\x3e\x4f\xb8\x5f\xc8\xd9\xd3\xd1\xd7\xc6\x5c\xb8\x4d\x1f\x0e\xe7\xf7\x11"
+"\x86\x0a\xe9\x92\xc9\xc3\x97\xe3\xa2\xf7\x01\x18\x0e\xfb\x1e\xe7\xf7\x11\xa8\x1d\xef\xa3\x1d\xfb\x1e\xf7\x78\xf9\x6d\xa8\x1d\xec"
+"\xa3\x1d\x39\xf7\xda\xb0\x1d\xf7\x7b\xf7\x07\x15\xfb\x1c\xf7\x26\x73\xfb\x06\xdd\x32\xfb\x0c\x32\x72\xfb\x09\xf7\x5b\xf7\x28\x05"
+"\x0e\xf7\xfe\xf7\xa5\xf7\x26\x27\x1d\xf8\x00\xf7\x26\x27\x1d\xf8\x00\xf7\x26\x27\x1d\x0e\xf7\xfe\xf9\x22\xf9\x76\x15\xfc\xda\xfd"
+"\x8b\x05\xcd\x06\xf8\xdb\xf9\x8b\x05\xfc\x29\x8c\x15\x2c\x34\x35\x2e\x48\xbf\x59\xd2\x67\x1d\x7a\x3d\x15\xae\xa5\x73\x6b\x5e\x63"
+"\x64\x5e\x68\x71\xa2\xaa\xb8\xb4\xb4\xb7\x1f\xf7\x79\xfc\x15\x15\x2d\x34\x35\x2e\x48\xbf\x59\xd1\x67\x1d\x7b\x3d\x15\xae\xa4\x73"
+"\x6a\x5f\x63\x64\x5e\x69\x71\xa2\xaa\xb8\xb3\xb4\xb8\x1f\xf8\x15\xd9\x15\x2d\x34\x35\x2e\x48\xbf\x59\xd1\x67\x1d\x7b\x3d\x15\xae"
+"\xa4\x73\x6a\x5f\x63\x64\x5e\x69\x71\xa2\xaa\xb8\xb3\xb4\xb8\x1f\x0e\x70\xf7\xca\xf7\xe7\x15\x7d\x49\x82\x7f\x47\x62\x43\x5f\x67"
+"\x6b\x75\x67\x08\x74\x64\x7d\x58\x5f\x1a\xfb\x02\xde\x47\xf7\x18\xe1\xd1\xa8\xc5\xc0\x1e\xb2\xb6\xa1\xbc\x9e\xdf\x08\xfb\x1c\x06"
+"\x34\x7b\x59\x57\x48\x1b\x55\x65\xaf\xbe\x9f\x91\xa0\x95\x9e\x1f\x9a\xa5\x96\x95\xc2\xb1\xe9\xcd\xb2\xc2\x92\xd8\x08\xfb\x12\xc2"
+"\xd7\x1d\xfb\xc5\xf7\x43\x4c\x1d\x0e\xfb\xc5\xf8\x6f\x30\x1d\x0e\xfb\xc5\xf7\xa6\xf9\x89\x29\x1d\xfb\xc5\xf8\x52\xf9\x7c\x41\x0a"
+"\xfb\xc5\xf8\x67\xf9\x66\x2d\x0a\xfb\xc5\xf8\x31\xf9\x86\x53\x1d\xfb\xc5\xf8\x0d\xf9\x79\x3b\x0a\xfb\xc5\xf7\xaf\xf9\x79\x38\x1d"
+"\xfb\xc5\xf7\xda\xf9\x99\x2e\x1d\x0e\xfb\xc5\xf7\x2e\x16\x47\x21\xbc\x0a\x6d\x78\x65\x6f\x56\x1d\x63\x7c\x7f\x89\x87\x7b\x1f\xb4"
+"\xc9\x05\x0e\xfb\xc5\xf7\xca\x8a\x0a\xfb\xc5\xf7\x42\x16\x62\x7a\x78\x82\x73\x7a\x08\x61\x6e\x72\x60\x61\x1a\x5c\xbe\x6e\xde\xa5"
+"\x9e\x8d\x92\xab\x1e\x95\xbf\x05\x83\x76\x74\x88\x70\x1b\x6a\x7a\x98\xa6\xa2\x96\xa4\xa2\xa8\x1f\x9e\xa3\x91\x8f\xcd\xb1\x08\x0e"
+"\xfb\xc5\xf7\xee\xf8\xf6\x3a\x1d\xf7\xfe\xaa\x0a\xf7\xfe\x6c\x0a\x0e\xfb\xa0\xf8\x20\xf7\xea\x15\xfb\xaf\x27\x0a\xf7\xb0\x06\xb3"
+"\xf7\x27\x15\x82\x96\x88\x92\x94\x1a\x90\x8b\x8f\x8c\x8f\x1e\xb2\xf7\x48\x05\x8d\x96\x8c\x94\x93\x1a\xb8\x61\xa6\x43\x30\x56\x66"
+"\x40\x7a\x1e\xda\x06\xab\x95\x9d\x97\xb2\x1b\xaa\x98\x83\x7a\x7e\x83\x7e\x7f\x85\x1f\x7e\x85\x8b\x8b\x60\x85\x69\x85\x18\x41\x80"
+"\x5b\x5a\x4c\x1a\x5b\xab\x6d\xbe\xb3\xaa\x98\xac\xaf\x1e\x89\x81\x8b\x89\x87\x1a\x85\x8c\x87\x8e\x85\x1e\xe7\x06\x41\xf7\x16\x15"
+"\x5b\x81\x6d\x6f\x62\x1b\x70\x7c\x95\x9f\xa7\xa1\x9f\xb1\x91\x1f\xa9\x91\x95\x8c\x05\x8c\x91\x8f\x8c\x8d\x1b\x92\x8d\x8d\x8c\x92"
+"\x8e\x08\x0e\x70\xf7\xe6\xf8\x39\x15\xcc\xf7\xc8\x28\x0a\x3c\xfc\x09\x27\x4e\x77\x2d\xef\xc8\x53\xfb\x9a\x05\xf8\x87\x21\x1d\xfb"
+"\xf1\x06\xb6\xf7\x5e\xf7\x4f\xf7\x02\x9f\xe9\x05\x0e\xf7\x20\x5e\x0a\x0e\xf7\xfe\xf9\x48\xf7\xce\x15\xf7\xbe\x21\x1d\xfb\xbe\x40"
+"\x0a\xf7\xda\x21\x1d\xfc\x6b\x06\x80\x57\x05\xb9\x66\x63\x9d\x49\x1b\x2d\x36\x62\x3a\x41\x1f\x38\x2f\x53\xfb\x29\xfb\x19\x1a\xfb"
+"\x35\xe9\x20\xf7\x22\xce\xb7\xa1\xc7\xc3\x1e\x7f\x50\x05\xf8\x7e\x25\x1d\xfb\xed\x06\xfb\x1f\xc0\x15\x57\x64\x66\x76\x55\x1b\x30"
+"\x56\xc9\xf6\xd1\x9e\xd6\xae\xca\x1f\xe2\xba\xcb\xb7\xd9\x1b\xc3\xac\x75\x58\x9e\x1f\x0e\xfb\xa5\xf8\x2e\xf7\xea\x15\xfb\xc1\x27"
+"\x0a\xf7\xc1\x06\x55\xf8\x67\x15\xfb\x06\x36\x2c\xfb\x14\x41\xbd\x5d\xda\xcb\xc0\xa4\xbc\xb0\x1f\xa8\xb0\x9e\xc7\xc0\x1a\xd5\x5a"
+"\xb8\x38\x1e\x7d\x47\x15\xaf\xa2\x70\x5f\x3e\x5e\x4b\x55\x68\x74\xa7\xb6\xd8\xb7\xcb\xc1\x1f\x0e\xf7\x8f\x6e\x1d\x0e\x2a\x1d\x0e"
+"\xf7\xbc\xf8\x47\x15\xca\xf7\xba\x22\x0a\x3f\xfb\xf5\x3f\x5c\x7a\x38\xd7\xbb\x4d\xfb\xba\x20\x1d\xd6\xf7\xf5\xd7\xb8\x9c\xdd\x05"
+"\x0e\x70\x73\x1d\x0e\xf7\xc6\xf9\xbd\xdd\x1d\xae\xbd\x9a\x8c\x96\x91\xa5\x1f\xf7\xfe\x06\x69\x1d\xba\x6f\xaf\x1e\xb8\x67\x52\xa3"
+"\x45\x1b\x3f\x42\x70\x5e\x5d\x1f\xb9\x69\x48\xa5\x3c\x1b\x25\x31\x5f\x3c\x4f\x1f\x5b\x4b\x6b\x28\x34\x1a\xfb\x0f\xde\x3f\xf7\x1a"
+"\xdc\xd8\xa6\xb9\xbf\x1e\x5f\xa7\xcd\x6e\xd5\x1b\xf7\x0b\xf7\x01\xcf\xf6\xc0\x1f\xfc\xcb\xf7\xb1\x15\xc9\xb1\x5e\x43\x5a\x7d\x56"
+"\x73\x61\x1f\x53\x6c\x5d\x6c\x57\x1b\x4f\x64\xb8\xd2\xf7\x13\xd6\xf4\xe6\x1f\xf8\x63\xfb\x0a\x15\xfb\x6c\x06\xd8\xa0\xb9\xb4\xcb"
+"\x1b\xc1\xaa\x6a\x52\x1f\x0e\x70\xf7\xfb\xf7\xf1\x15\x9a\x06\xd6\xb1\x6a\x4a\x5f\x77\x5f\x69\x6d\x1f\x6c\x70\x6f\x82\x54\x8a\x08"
+"\x7d\x06\x73\xfb\x04\x05\x86\xab\x9c\x89\x9e\x1b\xe5\xdb\xb8\xdc\xc2\x1f\xac\xbd\xa2\xd1\xc1\x1a\xd2\x67\xbc\x4d\x99\x1e\xd6\xa5"
+"\xba\xce\xd9\x1a\xe4\x3b\xc5\xfb\x0e\xfb\x20\x23\x48\x23\x75\x1e\xfb\x0b\xfc\xc2\x20\x1d\xf7\x06\xf8\xad\x05\xc0\x96\xad\xa6\xc3"
+"\x1b\xc3\xac\x73\x62\x6d\x7c\x6b\x72\x78\x1f\x79\x75\x6f\x82\x61\x1b\x0e\xfb\xc5\xf7\x98\xf8\xd1\x15\x4d\xfb\xb5\x05\xe9\x06\xe5"
+"\xf8\x3d\x05\x4c\x06\x59\x73\x59\x72\x3d\x1b\x7e\x4e\x05\x0e\x55\xf7\x14\xf8\x0c\x15\x72\xfb\x0c\x05\xf8\x15\x06\x67\xfb\x3e\x05"
+"\xf7\x0b\x06\xc8\xf7\xb6\x05\x0e\x70\xf7\x26\xfb\x70\x15\xbd\xf7\x7f\x05\x6f\xa4\xa4\x81\xb8\x1b\xc4\xaf\x99\xb4\xbb\x1f\x62\x9b"
+"\x9f\x7d\xba\x1b\xa7\x9f\x90\x98\xa5\x1f\x9d\xe1\x05\x88\x81\x87\x8a\x84\x1b\x7d\x84\x93\x9a\x96\x8d\x9b\x90\xa2\x1f\xde\xf8\x1a"
+"\x22\x0a\x43\xfb\xe6\x05\x4c\x7e\x57\x63\x48\x1b\x5c\x6e\xa3\xb1\x94\x8e\x9d\x8f\x9e\x1f\xd2\xf7\xe1\x22\x0a\xfb\x36\xfd\x8c\x05"
+"\x0e\xf7\xfe\xf8\x51\xf9\x1d\x15\xf7\x19\x06\x9c\xdb\x05\xfc\x01\x27\x0a\xf7\x1d\x06\x3b\xfc\x0c\x05\xea\x06\xf8\x57\x16\xf7\x31"
+"\xf7\xf1\x41\xfb\xf1\x05\xe6\x06\xec\xf8\x5c\x05\xfb\x1d\x06\xfb\x32\xfb\xf3\x80\xf7\xf3\x05\xfb\x1e\x06\x2a\xfc\x5c\x05\xe6\x06"
+"\xd6\xf7\xf1\x95\xfb\xf1\x05\x0e\xdf\x7d\x1d\xf7\x58\xf7\x89\xae\x1d\xf8\xe0\xae\x0a\xa7\xfd\x0f\x15\xfb\x4c\x06\x99\x9d\x9e\x99"
+"\xd0\xb4\xbe\xc1\x1d\x4d\x52\x23\x7a\x1e\xe6\x06\xc5\x92\xa5\xaa\xb5\x1b\xac\x9e\x7a\x6e\x71\x80\x71\x76\x77\x1f\x78\x78\x75\x7d"
+"\x47\x62\x33\x59\x6b\x64\x76\x3a\x08\xf7\xc6\x06\x0e\x55\xf9\x0a\xf8\x58\x91\x0a\x68\xfb\x36\x05\xf7\x0b\x06\xae\xf7\x36\x05\xf7"
+"\x4b\x06\x5d\xfb\x69\x15\xfc\x78\x06\x72\xfb\x0b\x05\xf8\x78\x06\x0e\xa8\xf7\x94\xf7\x20\x15\xf7\x4f\x06\xda\xc4\xba\x1d\x49\x1b"
+"\xfb\x33\x06\xa5\xf7\x0c\x34\x0a\xc3\xf7\x9d\x15\xba\xf7\x6f\x05\xf7\x2d\x06\xc1\xaf\x6c\x5b\x6e\x80\x64\xc3\x0a\xf7\x58\xf7\x90"
+"\xae\x1d\xf8\xe3\xae\x0a\x9c\xfc\xb9\x15\x5d\x06\xc2\xf7\x97\x05\xfb\x00\x06\xfb\x6d\xfb\x98\x7b\x43\x05\xf7\x45\x33\x1d\xe9\x06"
+"\x9e\xe8\x05\xb9\x06\xfb\x0f\xd4\x15\x22\x06\xf7\x20\xf7\x3a\x05\x0e\x55\xcb\x1d\xfb\x9b\x5b\x15\x64\x66\x67\x64\x6f\xa0\x76\xa8"
+"\xb2\xb0\xae\xb1\xa9\x77\xa0\x6d\x1f\xd3\xf7\xe6\x15\x64\x66\x67\x64\x6f\xa0\x76\xa8\xb2\xb0\xaf\xb0\xa9\x77\xa0\x6d\x1f\x0e\xfb"
+"\xfa\xf7\xe3\xf9\x6d\x15\x3b\x06\x38\xfc\x19\x05\xdb\x06\x6b\xfb\x2b\x15\x3b\x06\x38\xfc\x19\x05\xdb\x06\x0e\xfb\x82\xf7\xcf\xf9"
+"\x42\x15\x38\x47\x47\x38\x38\xcf\x46\xdd\xe0\xcf\xce\xe0\xde\x47\xcf\x37\x1f\x8c\x4c\x15\xbb\xb3\x64\x5a\x59\x63\x64\x59\x5c\x63"
+"\xb3\xbb\xbc\xb3\xb3\xbc\x1f\x0e\x70\xf7\xf4\xf9\x6d\x23\x1d\xfb\x5d\xfe\x47\x9b\x0a\xf7\x5d\xf7\x12\x48\xdb\x21\x48\x53\x6e\x4f"
+"\x5d\x1f\xf7\x03\x74\xe9\x1d\x35\x56\x5f\x1d\xf7\x58\xf7\x80\x66\x0a\xf8\x90\xf7\x49\x15\xfc\xd9\xfd\x73\x05\xe0\x06\xf8\xd9\xf9"
+"\x73\x05\x8f\xfc\xb9\x15\x5d\x06\xc2\xf7\x97\x05\xfb\x00\x06\xfb\x6e\xfb\x98\x7c\x43\x05\xf7\x45\x33\x1d\xe8\x06\x9f\xe8\x05\xb9"
+"\x06\xfb\x0f\xd4\x15\x21\x06\xf7\x20\xf7\x3a\x05\x0e\xfb\xc5\xf8\x1b\xf8\x00\x15\xfb\x4c\x06\x98\x9d\x9f\x99\xcf\xb4\xbf\xc1\x1d"
+"\x4c\x52\x23\x7b\x1e\xe6\x06\xc5\x91\xa5\xaa\xb6\x1b\xac\x9e\x7a\x6e\x71\x7f\x71\x77\x77\x1f\x78\x78\x76\x7d\x45\x62\x34\x59\x6b"
+"\x64\x76\x3a\x08\xf7\xc6\x06\x0e\xee\xf7\xf8\xf7\xcd\x15\xe6\x06\xaf\x9c\x80\x73\x85\x89\x83\x87\x7a\x1f\x83\x6a\x85\x6c\x7c\x1a"
+"\x82\x8c\x85\x8f\x7e\x1e\xf1\x06\x90\xa0\x05\x82\x91\x88\x91\x94\x1a\x8c\x98\x05\x97\xd2\x8e\xa0\x9c\x1a\xa1\x80\x99\x6f\x98\x1e"
+"\xcb\xa8\xac\xba\xcb\x1a\xc6\x6a\xa9\x49\x1e\xfb\x82\x06\x2d\xfc\x4e\x05\xeb\x06\xc1\xf7\x92\x15\xa2\xf7\x00\x05\xf1\x06\xb3\x9a"
+"\x82\x73\x78\x84\x73\x82\x80\x1f\x7c\x80\x79\x85\x6a\x1b\xc2\xf7\xf1\x15\xfb\x8a\xb1\x0a\xf7\x8b\xf7\x79\xf7\x72\xf7\x84\xf7\x43"
+"\xfb\x15\xf7\x14\x9c\x0a\xfb\x20\x25\xf3\xf7\x21\xf7\x57\xf7\x4b\xf7\x49\xf7\x58\x1f\x0e\x55\xcb\x1d\x0e\x70\xf7\xf7\xf8\xf5\x15"
+"\xb1\x70\xae\x65\xa3\x62\x08\xa0\x65\x77\x91\x6b\x1b\x45\x48\x6d\x58\x5e\x1f\x50\x48\x65\x21\x29\x1a\xfb\x12\xde\x40\xf7\x1f\xf3"
+"\xe1\xb4\xda\xc5\x1e\xbf\xd0\xa7\xe3\xe6\x1a\xf7\x14\x5a\xdf\xfb\x16\xec\x1e\xe8\xb4\x60\xb6\x23\x5e\x85\x8f\x86\x8d\x89\x8d\x19"
+"\x6f\x9b\x7a\x95\x7e\x92\x73\x95\x19\x45\x59\xb1\x73\x91\x87\xa5\x79\x19\x33\x62\xb4\x60\x05\xf7\x15\xfb\x19\x15\xa3\xa6\x82\x7d"
+"\x9f\x1f\xa2\x7a\x95\x72\x63\x1a\xfb\x1c\x45\x26\x2c\x73\x73\x94\x9a\x78\x1e\x75\x9e\x81\xa8\xb8\x1a\xbd\x98\xc1\xa3\xb4\x1e\xbf"
+"\xa8\xb6\xa7\xbe\x1b\x0e\x55\xf8\x98\xf8\x50\x15\xfb\x31\xfb\x15\x26\xf7\x15\x25\x36\xf0\xfb\x14\xfb\x2f\xfb\x14\xcd\x37\xf7\x2f"
+"\xf7\x14\xf0\xfb\x15\xf1\xdf\x26\xf7\x15\xf7\x31\xf7\x15\x05\x0e\xfb\xc5\xf7\x74\x66\x0a\x0e\xee\xf9\x18\xf8\x43\x15\x8d\x9c\x8c"
+"\x92\x94\x1a\xd8\x4e\xbe\x2e\x3f\x48\x6a\x4e\x5b\x1e\x60\x54\x70\x3b\x3f\x1a\x28\xc7\x4f\xed\xf7\x06\xe1\xcb\xf4\xa7\x1e\x2f\x06"
+"\x53\x79\x63\x6d\x52\x1b\x53\x6d\xac\xc8\xbc\x9b\xc1\xa4\xb1\x1f\xb5\xa8\xb0\xa0\xb9\x1b\xc0\xa2\x73\x55\x1f\x73\xf7\xcc\x15\xfb"
+"\x8b\xb1\x0a\xf7\x8c\xf7\x79\xf7\x72\xf7\x84\xf7\x44\xfb\x15\xf7\x13\x9c\x0a\xfb\x21\x25\xf2\xf7\x22\xf7\x57\xf7\x4b\xf7\x49\xf7"
+"\x59\x1f\x0e\xdf\x24\x0a\xf7\x7b\xf8\x11\x2b\x0a\xdf\x24\x0a\xa7\xf8\x11\x29\x1d\xdf\x24\x0a\xb2\xf8\x01\x38\x1d\xdf\x24\x0a\x3f"
+"\xf8\x11\x3d\x0a\xdf\x24\x0a\xdd\xf8\x22\x2e\x1d\x0e\xdf\x24\x0a\xf7\x5e\xf8\x04\x15\x69\x7d\x79\x7b\x75\x1b\x7f\x88\x8c\x93\x79"
+"\x1f\x59\xa0\x05\x9b\x67\x82\x8d\x71\x1b\x54\x61\x61\x3f\x73\xb9\x1d\xa1\x86\x9b\x4a\x1d\xdf\xf8\x19\x74\x15\xf7\x44\x8c\xf7\x1c"
+"\xf3\xb4\xf7\x3b\x08\xfb\x23\x06\x2f\x6e\x44\x57\x2a\x1b\x2a\x5a\xc1\xf5\xdd\x51\x0a\xf7\x21\x06\x8e\xa5\x8c\x96\x97\x1a\xf7\x12"
+"\x22\xdf\xfb\x2f\xfb\x0f\x20\x56\x26\x3a\x1e\x44\x33\x5f\xfb\x1b\xfb\x15\x1a\xfb\x25\xe7\x26\xf7\x21\x80\x1e\x54\x37\x05\xb6\x0a"
+"\x66\x6e\x74\x92\xa2\x5b\x1f\x6d\x58\x05\x74\xc5\xa9\x85\xb8\x1b\xe7\xc6\xb5\xcc\xaf\x73\xa0\x63\x7b\x7f\x89\x86\x7c\x1f\x0e\xa8"
+"\x26\x0a\xf8\x37\xf9\xbf\x2b\x0a\xa8\x26\x0a\xf7\x82\xf9\xbf\x39\x0a\xa8\x26\x0a\xf7\x8a\xf9\xaf\x38\x1d\xa8\x26\x0a\xf7\x24\xf9"
+"\xbf\x3d\x0a\x25\x0a\xf7\xa8\x56\x0a\x25\x0a\xd6\xfa\x3c\x29\x1d\x25\x0a\xdf\xfa\x2c\x38\x1d\x25\x0a\x6b\xfa\x3c\xbb\x0a\xdf\x30"
+"\x0a\xa1\xfa\x2f\x15\x69\x7d\x79\x7b\x74\x1b\x80\x88\x8c\x93\x79\x1f\x59\xa0\x05\x9b\x67\x82\x8d\x71\x1b\x54\x60\x61\x3f\x74\x1f"
+"\xc1\x06\xad\x9c\x9b\x9a\x9d\x1b\x93\x9e\x85\x82\x9c\x1f\xbd\x72\x05\x85\x98\xa0\x86\x9c\x4a\x1d\xf7\x20\xf9\x70\xdb\x1d\x67\x5e"
+"\x15\xfb\x10\x26\x5b\x29\x39\x1f\x3d\x2e\x39\x1d\x21\xf4\xfb\x4c\xaf\x0a\x4f\x1f\x44\x59\x4c\x69\x3e\x1b\x25\x4d\x2f\x1d\x0e\xf7"
+"\x20\xf8\xb1\xfa\x3c\x46\x1d\xfb\x03\x7c\x1d\xf7\x20\xf8\xba\x45\x1d\xfb\x40\x50\x51\x1d\x0e\xf7\x20\xf8\x56\xfa\x3c\x3e\x0a\x6c"
+"\x7c\x1d\xf7\x20\xf8\xae\xf9\x79\x51\x1d\xf7\x57\xf7\xca\x15\x69\x7e\x79\xb3\x1d\x74\x1f\xc1\x06\xac\x9b\x9b\x9b\x83\x0a\xa8\xf8"
+"\xad\xf9\xa9\x3a\x0a\xd2\xfb\x27\x05\xf7\xb4\xfb\xae\x74\x1d\x0e\xdf\xf9\x48\xfa\x3c\x4d\x1d\xf7\x11\x52\x41\x1d\xdf\xf8\x98\xfa"
+"\x3c\x46\x1d\xae\xfb\x63\x41\x1d\xdf\xf8\x9b\x45\x1d\x77\x44\x41\x1d\xdf\xf8\x42\xfa\x3c\x61\x1d\xf7\x02\xfb\x63\x41\x1d\xa8\x2c"
+"\x0a\xf7\x8d\x56\x0a\xa8\x2c\x0a\xd7\x45\x1d\x0e\x70\x36\x1d\xfb\x4b\xf7\x4d\x15\xf7\x1f\xf7\x27\x05\x3e\x06\x25\x2a\x4e\xec\x05"
+"\x3d\x06\xd2\xfb\x27\x05\x0e\x39\xf8\xdf\x30\x1d\xed\xfc\xe2\x3f\x1d\x39\xf8\x16\xf9\x89\x46\x1d\xac\xfd\x78\x3f\x1d\x39\xf8\x1f"
+"\x52\x0a\x6f\xfc\xf0\x3f\x1d\x39\xf7\xc3\x4c\x1d\xf4\xfd\x78\x3f\x1d\x39\x2d\x1d\xac\xf8\x9a\x2e\x1d\x0e\x39\x2d\x1d\xf7\x2a\xf8"
+"\x7d\x41\x0a\x39\xf7\xb4\x74\x15\xf7\x13\x88\xf6\xdd\xb2\xf7\x17\x08\x57\x1d\xf7\x1a\x06\x8e\xa3\x8c\x94\x95\x1a\xb5\x7a\xb3\x6c"
+"\xaa\x1e\xb1\x65\x5d\x9c\x48\x1b\x2d\x42\x6c\x4b\x56\x1f\x50\x45\x61\xfb\x09\x2d\x1a\x43\xaf\x48\xc2\x6d\x1e\x9e\x81\x9d\x85\xaf"
+"\x84\x52\x34\x18\xb6\x0a\x65\x6e\x75\x92\xa3\x5b\x1f\x6d\x57\x05\x75\xc4\xaa\x84\xb8\x1b\xe7\xc6\xb5\xcc\xaf\x73\xa0\x63\x7b\x7f"
+"\x89\x87\x7c\x1f\x0e\x39\xf8\xc6\x30\x1d\xf7\x3d\xfc\x11\x42\x1d\x39\xf8\x0e\xb4\x1d\xe3\xfc\xa7\x42\x1d\x39\xf8\x1c\xf9\x79\x2e"
+"\x0a\xf7\x67\xf7\x0c\x2e\x0a\x9f\xfc\x1f\x42\x1d\x39\x76\x1d\x2a\x1d\xf7\x85\x30\x1d\x0e\x2a\x1d\xb3\xf9\x89\x29\x1d\x2a\x1d\xbc"
+"\x52\x0a\x0e\x2a\x1d\x4f\x4c\x1d\x0e\x70\x34\x1d\xf7\xa6\xf7\x60\x41\x0a\x70\xf8\xeb\x30\x1d\x6f\x51\x15\x23\x32\x5f\x3c\x50\x1f"
+"\x5b\x4b\x6c\x28\x35\x1a\xfb\x0e\xdf\x3d\xf7\x19\xf7\x00\xe2\xb5\xdc\xc8\x1e\xbb\xca\xaa\xee\xe2\x1a\xf7\x10\x37\xd7\xfb\x1d\x1e"
+"\x75\xfb\x04\x54\x1d\x0e\x70\xf8\x33\x99\x0a\xfb\x01\x6d\x0a\x70\xf8\x39\x52\x0a\xfb\x3c\x43\x15\x23\x32\x5f\x3c\x50\x1f\x5b\x4b"
+"\x6c\x28\x35\x1a\xfb\x0e\xdf\x3d\xf7\x19\xf7\x00\xe2\xb5\xdc\xc8\x1e\xbb\xca\xaa\xee\xe2\x1a\xf7\x10\x37\xd7\xfb\x1d\x1e\x75\xfb"
+"\x04\x54\x1d\x0e\x70\xf7\xdb\xf9\x89\xa7\x0a\x5f\xf7\x2a\x05\x69\x6d\x0a\x70\x36\x0a\xf7\x56\xf7\xc7\x15\x69\x76\x76\x7a\x74\x1b"
+"\x80\x88\x8c\x94\x7a\x1f\x5e\xa0\x05\x99\x6e\x7d\x8e\x73\x1b\x54\x57\x61\x40\x64\x1f\xc1\x06\xac\xa2\x9e\x9a\x9d\x1b\x93\xa0\x84"
+"\x84\x98\x1f\xb8\x72\x05\x84\x96\x9f\x87\x9c\x1b\xcb\xc5\xb7\xd9\xb0\x1f\x0e\x39\xf8\x5e\xf8\xf6\x3a\x0a\xd2\xfb\x27\x05\xf7\x7e"
+"\xfb\x88\x63\x0a\x0e\x70\xf8\xdf\xf9\x89\x15\xfb\x13\x06\x26\xfb\x2a\x05\xd1\x06\xf7\x04\xfc\xf3\x42\x0a\x70\xf8\x2a\xb4\x1d\xa7"
+"\xfd\x89\x42\x0a\x70\xf8\x38\xf9\x79\x2e\x0a\xf7\x67\xf7\x0c\x2e\x0a\x63\xfd\x01\x42\x0a\x70\xf7\xd9\xf9\x89\x3e\x0a\xec\xfd\x89"
+"\x42\x0a\x39\x72\x0a\x34\xf7\x6d\x2b\x0a\x39\x72\x0a\xfb\x94\xf7\x5d\x45\x0a\xfb\x1e\x44\x1d\xfb\x09\xf7\x4b\x9a\x0a\xfb\x86\xf7"
+"\x42\xf8\xf5\x15\x46\xfb\xd9\x05\xe8\x06\xb2\xf7\x4b\x05\xbb\x96\xa8\xa7\xb4\x1b\xa7\x9a\x7c\x6e\x83\x8a\x83\x89\x80\x1f\x63\xfb"
+"\x50\x05\xe8\x06\xb9\xf7\x6d\x05\x8e\x96\x8c\x97\x95\x1a\xbb\x64\xac\x53\x64\x66\x7c\x70\x70\x1e\x87\x86\x94\xb4\x05\x0e\xa7\x4b"
+"\x0a\x0e\xf7\xc5\x4b\x0a\xf7\x8e\xf3\xa1\x1d\xf7\xc5\x4b\x0a\xf7\xb6\xf7\xb9\xd2\x1d\xf7\x58\xf9\x60\x32\x0a\xfc\xbe\xfb\x22\x15"
+"\x4d\xfb\xb5\x05\xe9\x06\xe5\xf8\x3d\x05\x4c\x06\x59\x73\x59\x72\x3d\x1b\x7e\x4e\x05\xf9\x1c\xfb\xe9\x6a\x0a\x0e\xf7\x58\xf9\x81"
+"\x32\x0a\x64\xfc\x77\x15\xc1\xab\xa2\xac\xb8\x1a\xc1\x5b\xb1\x45\x33\x43\x4d\x40\x71\x95\xaf\x1d\x53\xf7\x1b\x15\xac\xa1\x7a\x71"
+"\x64\x69\x6d\x61\x6c\x77\x9d\xa6\xb1\xaa\xa8\xb4\x1f\x69\xfb\x3d\x15\xac\xa0\x78\x6c\x57\x6a\x66\x5c\x6a\x73\x9f\xa7\xbe\xb0\xb3"
+"\xb9\x1f\xfc\x63\xf7\xa5\x15\x8c\x90\x8e\x8b\x90\x1b\xc0\xa2\x7c\x69\x62\x6a\x6a\x63\x66\x78\x9b\xaa\x91\x8b\x8f\x8d\x93\x1f\x30"
+"\x06\x88\x7b\x8a\x82\x80\x1a\x47\xbb\x64\xde\xf7\x01\xd6\xd0\xee\xab\x7d\xa2\x6e\x9d\x1e\xba\xa8\xa3\xb1\xb9\x1a\xc6\x5c\xad\x3a"
+"\x27\x57\x5e\x25\x77\x1e\xe2\x06\xc3\x97\x9c\x9e\xb2\x1b\xa6\x9d\x7b\x73\x76\x82\x78\x7c\x7e\x1f\x7b\x7d\x7a\x87\x63\x8a\x08\x0e"
+"\xf7\x58\xf9\x74\x32\x0a\x71\xfc\x77\x15\xc2\xd1\x1d\x95\x7a\xa8\x75\x1e\x4c\xc6\x1d\x66\xa1\x1e\x53\x96\x1d\xfb\x91\xf8\xa3\x15"
+"\xfb\x79\x06\x33\xfb\x81\x05\xd6\x06\xa0\x99\xa0\x96\xa5\x1b\xae\x9e\x77\x68\x4e\x67\x5e\x5a\x6b\x76\x9a\xa2\x8e\x8c\x91\x8c\x90"
+"\x1f\x38\x06\x89\x7f\x8a\x85\x83\x1a\x4f\xbb\x64\xd3\xf4\xde\xe1\xf7\x00\xcd\x63\xb4\x4a\x6e\x74\x84\x79\x6f\x1e\xab\xe3\x05\xf7"
+"\x46\x06\x0e\xf7\x58\xf9\x5d\x32\x0a\x7f\xfc\x77\x6a\x0a\xfb\x51\xf8\xa2\x15\xfb\xc1\x06\x7b\x40\x05\xf7\x68\x06\xfb\x09\xfb\x05"
+"\x50\x2f\x5b\xfb\x25\x08\xe0\x06\xab\xf7\x06\xba\xde\xe3\xec\xb0\xb2\xa0\xa0\x90\x90\x08\x0e\xf7\xfe\x6c\x0a\xf7\xdc\xf7\xe0\x2b"
+"\x1d\xdf\x24\x0a\xf7\x3b\xf8\x0f\xbc\x1d\x7e\x5c\x1d\xdf\x24\x0a\x0e\xdf\x24\x0a\xfb\x3b\xf7\x42\x26\x1d\xdf\x24\x0a\xf7\x73\xf7"
+"\xee\x2d\x0a\xdf\xf8\xa8\xf7\x27\x15\x9d\xfb\x27\x05\xd6\x06\x5f\x7c\x77\x81\x73\x79\x08\x60\x6c\x72\x62\x63\x1a\x59\xc5\x1d\x71"
+"\x1b\x65\x7a\x98\xa9\xbd\xc3\xc5\xd9\xab\x1f\x2a\xf9\x6d\x05\xfb\x41\x06\xfc\x2b\xfd\x6d\x05\xf7\x2d\x06\xdc\xf7\x27\x05\xf7\x96"
+"\xf7\x11\x15\xfb\x51\x06\xf7\x2e\xf7\xaf\x05\x0e\xdf\x24\x0a\xd2\xf8\x22\x2e\x1d\xc0\xf7\x3e\x2b\x0a\xdf\x78\x1d\xdf\x69\x0a\xdd"
+"\xf8\x5a\x15\xfb\x1a\x06\x2d\xfb\x2a\x05\xca\x06\x0e\xdf\x69\x0a\x65\xf7\xc7\x3a\x1d\xdf\x7e\x1d\xfb\x19\xf8\x5b\x39\x0a\xdf\xf9"
+"\xa4\xf8\x76\x15\x8d\x9b\x8d\x9d\x91\x1a\xc5\x75\xbe\x61\xb5\x1e\xb9\x5b\x4e\xa1\x3a\x1b\xfb\x17\xfb\x09\x54\x2c\x47\x1f\x4a\x33"
+"\x5e\xfb\x22\xfb\x04\x1a\x47\xa3\x46\xb4\x58\x1e\x51\xb9\xc8\x71\xe3\x1b\xf5\xef\xae\xc6\xca\x1f\xbc\xb9\xab\xc2\x9f\xd8\x08\xfb"
+"\x27\x06\x31\x6f\x40\x53\x31\x1b\x2f\x5b\xbe\xee\xe8\xa5\xe6\xb9\xcc\x1f\xd5\xc0\xc8\xb0\xd2\x1b\xce\xb6\x70\x5a\x96\x1f\x8f\x7a"
+"\x8c\x83\x6d\x1a\x71\xf8\x4c\x49\x1d\xa8\x78\x0a\xdf\x73\x0a\xf7\x33\xf9\x2c\x3a\x0a\xd3\xfb\x27\x05\x0e\xdf\x7d\x1d\x71\x8f\x16"
+"\xf8\xf0\x06\xfb\x97\xf9\x0a\x05\x33\x06\xb7\x25\x15\xf7\x4b\xfc\x5b\x05\xfc\x01\x06\x0e\xa8\x26\x0a\xf8\x0a\xf9\xbd\x53\x1d\xa8"
+"\x26\x0a\xf7\xc7\xf9\x2c\x3a\x1d\xa8\x26\x0a\xf7\xe4\xf9\xad\x3b\x0a\xa8\x26\x0a\xf8\x42\xf9\x9c\xe8\x1d\x0e\xe0\xd6\x16\x23\x0a"
+"\xf3\xf8\x7c\x05\xe6\x9e\xc2\xb3\xf4\x1b\xd3\xac\x74\x58\x7d\x89\x7e\x87\x76\x1f\xfb\x09\xfc\xba\x05\x6c\x84\x7d\x7f\x6c\x1b\x7d"
+"\x85\x8c\x8d\x87\x1f\x71\xfb\x0c\x05\x87\x99\x99\x8a\xa3\x1b\xf7\x09\xc3\xaf\xe3\x9d\x1f\xf7\x1e\xf9\x1c\x05\x8f\x9e\x8d\x9d\x9d"
+"\x1a\xdf\x45\xbb\xfb\x10\x2d\x51\x73\x48\x49\x1e\x9d\xdd\x28\x0a\x0e\xa8\x99\x1d\xf8\x6c\x06\x5f\x7c\x77\x81\x73\x79\x08\x5f\x6c"
+"\x73\x62\x62\x1a\x5a\xc5\x1d\x70\x1b\x66\x7a\x97\xa7\xbd\xb1\xb5\xe6\xbe\x1f\xbf\x0a\x0e\xa8\x26\x0a\x0e\xf7\x6c\xf8\x43\xf7\xce"
+"\x15\xf7\xf1\x25\x1d\xfb\xf0\x40\x0a\xf8\x0e\x25\x1d\xfc\xa4\x9f\x1d\x39\xf8\xf0\x26\x1d\xdf\x8e\x1d\xf7\xa0\xf9\x61\xf7\xdf\x15"
+"\x44\x7f\x0a\xd2\xf7\xdf\x05\xfb\x12\xf8\x22\x26\x1d\x39\xc7\xf7\xd2\x15\x64\x47\x05\xd4\x06\x8c\x47\x93\x5a\x9f\x5e\x08\x4a\xa9"
+"\xd5\x5d\xd9\x1b\xb3\xad\x92\xa6\xe2\x1f\xaa\xf7\x29\x05\x61\x34\x6e\x81\x62\x1b\x4f\x67\xbd\xe7\x84\x1f\xf7\x49\x06\xb1\xcf\x05"
+"\xfb\x6d\x06\x8f\xa1\x8f\x9e\x93\xa6\x08\xf7\x84\x06\xb2\xcf\x05\xfb\x8f\x06\xe7\xb5\xc4\xbb\xca\x1b\xb7\xad\x7a\x59\xbf\x1f\xd4"
+"\xf7\x15\x05\xc1\x4d\x67\x99\x44\x1b\xfb\x23\xfb\x11\x28\xfb\x3f\x41\x1f\x5b\x06\x64\x47\x05\xcb\x06\x83\x6f\x89\x80\x86\x6e\x08"
+"\x0e\x6f\xd9\x16\x23\x0a\xf7\x14\xf8\xf0\x05\xf7\xfe\x21\x1d\xfc\x94\x06\x0e\xf7\x20\x64\x0a\x6a\xfa\x3c\xbc\x1d\x7f\x1a\x4c\xe7"
+"\x1d\xf7\x20\x77\x1d\xfb\x44\xfa\x3e\x29\x1d\xf7\x20\x64\x0a\xfc\x18\x51\x15\x73\xfb\x04\x05\xce\x06\x85\x5e\x68\xc3\x1d\xf7\x20"
+"\xf9\xae\xcf\x1d\x63\x7d\x75\x6d\x6f\x08\x5c\x58\x52\x72\x53\x1b\x28\x4d\xcc\xf3\xdc\xa4\xdf\xb6\xc6\x1f\xd7\xc2\xcf\xb2\xd9\x1b"
+"\xbe\xb7\x7c\x70\xa4\x1f\x9c\x7a\x90\x7b\x90\x61\x08\xf7\x21\x06\x8c\x97\x8b\x92\x92\x1a\xc3\x70\xc4\x5d\xb4\x1e\xb7\x5a\x4c\xa0"
+"\x3a\x1b\xfb\x16\xfb\x0a\x57\x32\x43\x1f\x3f\x2e\x5d\xfb\x11\xfb\x03\x1a\x45\x9e\x4f\xb1\x55\x1e\x3e\xc2\xcc\x6a\xeb\x1b\xc2\xbf"
+"\x98\xa3\xba\x1f\xae\x9d\x9a\x99\xb0\xbb\x88\x2b\x18\xe5\x06\x38\xfa\x30\x49\x1d\xdf\xbd\x0a\xf7\x06\xf8\xad\x05\xce\x06\x9c\xdb"
+"\x05\x48\x06\xa3\xf7\x04\x05\xfb\x2b\x06\x74\xfb\x04\x05\xfb\xb5\x06\xa3\xf7\x04\x05\xfb\x2a\x4e\x1d\x48\x27\x0a\xce\x06\xfb\x06"
+"\xfc\xad\x20\x0a\xd1\xf7\xdf\x05\xf7\xd0\xf7\x11\x15\xfb\xb5\x06\x9c\xdc\x05\xf7\xb5\x06\x0e\xdf\xbd\x0a\xf7\x2f\xf9\x6d\x05\xfb"
+"\x2b\x06\x51\xfb\xa5\x05\xfb\xb4\x54\x0a\xf7\x6c\xf8\xf1\x39\x0a\xf7\x24\x25\x0a\xf8\x91\x22\x1d\xfb\x06\xfc\xaf\x05\x54\x7f\x68"
+"\x6d\x56\x1b\x64\x70\xa1\xab\x94\x8d\x97\x8d\x98\x1f\x9c\xd8\x28\x0a\x7b\x43\x05\x87\x75\x88\x73\x78\x1a\x2a\xd2\x50\xf7\x09\xce"
+"\xd0\x9d\xa7\xb6\x1e\xbc\xab\xae\xc5\x9c\xd8\xf7\x06\xf8\xaf\x18\x0e\xf8\x05\x33\x0a\xf7\x61\xfa\x3a\xbf\x1d\x82\x7d\x5c\x1d\x25"
+"\x0a\xf7\x43\xfa\x2a\x3b\x0a\x25\x0a\xf7\x91\xfa\x19\x15\xfb\xa5\x27\x0a\xf7\xa5\x06\x0e\xf8\x04\x60\x1d\xd7\x06\x31\x59\x61\x5b"
+"\x52\x1a\x5a\xb9\x6e\xd6\xa2\x99\x8d\x92\xad\x1e\x96\xbf\x05\x85\x79\x6f\x86\x7d\x1b\x6e\x7a\x9b\xa7\xb7\xbc\xca\xc7\xab\x1f\x0e"
+"\x25\x0a\x0e\x25\x0a\xdf\xfa\x2e\x44\x0a\xfb\x39\xf8\x97\x33\x0a\x54\xf9\x6d\x26\x1d\x25\x0a\xf7\x8f\xfa\x2f\xa9\x1d\x73\xb9\x1d"
+"\xa1\x86\x9b\x4a\x1d\x39\x70\x0a\x2e\xb1\x1d\xdf\x79\x0a\xdf\x7a\x0a\xdc\x4f\x8d\x0a\x70\x37\x1d\xf7\x81\xf9\xbf\x2b\x0a\xa8\x86"
+"\x16\xf7\x32\x06\xf7\xc4\xf8\xc1\xce\xfc\xc1\x05\xf7\x28\x06\x23\xf9\x6d\x05\xfb\x33\x06\x0e\x70\x37\x1d\xf7\x78\xf8\xf0\x31\x0a"
+"\x70\x37\x1d\x93\xfb\x4f\xa6\x1d\x70\x37\x1d\xf8\x09\xf7\xf3\x15\x2a\x0a\x6c\xfb\x26\x05\xf7\x29\x06\x0e\xf7\x57\x75\x0a\xdf\x30"
+"\x0a\xa8\xed\x1d\xd0\x06\x0e\xdf\x30\x0a\x37\xf9\xa9\x3a\x0a\xd3\xfb\x27\x05\x0e\xdf\x30\x0a\xfc\x09\x4f\xa6\x1d\xdf\x30\x0a\x0e"
+"\xf7\x20\xf8\xae\x67\x0a\xf7\x2a\xf7\xd5\x15\x60\x7b\x68\x75\x58\x1b\x5b\x88\x0a\xf7\x20\x7b\x1d\xf7\x1a\xf7\xd7\xea\x1d\xf7\xee"
+"\xf7\x27\xea\x1d\x0e\xf7\x20\x7b\x1d\xf7\x6a\xf7\xb4\x2d\x0a\xf7\x65\xf8\x38\x62\x0a\xfb\x22\xf9\x6d\xcd\x1d\xf7\x20\x7a\x1d\xf7"
+"\x62\xf8\xe3\x67\x0a\xfb\xc3\xf7\x08\x26\x1d\xf7\x20\x5e\x0a\xae\xf8\x0f\x2b\x1d\xf7\x4c\xf7\xee\x7d\x15\xf7\x11\x06\x9e\xe4\xd8"
+"\x8f\xc4\x9a\xc5\xab\x19\xf2\xc3\xcc\xf7\x02\xf7\x09\x1a\xf7\x16\x32\xe7\xfb\x28\xa2\x1e\x9e\xe4\x05\xfb\x11\x06\x78\x32\x43\x88"
+"\x54\x7d\x52\x6c\x19\xfb\x00\x52\x48\x20\xfb\x09\x1a\x37\xb5\x3e\xd1\x5f\x1e\xb0\x73\xac\x80\xc1\x81\x08\xa4\xf7\x09\x15\x41\x9a"
+"\x61\xbe\xd8\x1a\xc9\xaa\xc9\xbe\xb0\x1e\xaa\xa1\xa5\x95\xbd\x92\x08\xf7\x11\x16\xd6\x7d\xb5\x58\x3e\x1a\x4c\x6c\x4e\x58\x66\x1e"
+"\x6c\x75\x71\x81\x58\x83\x08\x0e\xdb\xcb\x5a\x0a\xf7\xb4\x06\xfb\x14\xfc\xf0\x05\xf7\x2b\x4a\x0a\xfc\xe1\x06\x0e\xf7\x53\xf7\xe9"
+"\x16\xf7\x27\x06\xa7\xf7\x16\xf7\x58\x90\xe8\xd4\xb7\xf7\x4b\x19\x94\xb3\x93\xb3\x93\xb3\xba\xf7\x6e\x18\x2a\x0a\x5c\xfb\x6e\x6e"
+"\xfb\x20\x7f\x69\x6e\x6a\x19\x69\x6a\x65\x7b\x62\x1b\xf0\xf8\x6f\x05\xfb\x27\x06\x26\xfc\x6f\x05\x4e\x8c\x64\xb1\xc4\x1a\xa3\x8b"
+"\x8b\xa6\xf7\x1d\x1e\xba\xf7\x6e\x05\x2a\x0a\x5c\xfb\x6e\x05\x79\x36\x82\x4e\x69\x1a\x45\xb3\x4b\xcd\x67\x1e\xae\x77\xaa\x83\xbf"
+"\x88\x08\x0e\xdf\x3e\x1d\xf7\x42\xf8\x9e\x2b\x1d\xdf\x3e\x1d\xcc\xf8\x0b\x3a\x1d\xdf\x3e\x1d\xfb\x5d\xfc\x6e\x8d\x0a\xa8\x6e\x0a"
+"\xa8\x72\x1d\xd3\xf8\x41\x2b\x1d\xa8\xf7\xef\x74\x15\xf3\x8c\xd6\xa1\xc7\xbb\x08\xc8\xbb\xb3\xe1\xde\x98\x0a\xe1\xb9\xb3\x0a\xf7"
+"\x20\x06\x91\xa7\x8d\x99\x9f\x1a\xf7\x00\x2e\xcb\xfb\x33\x2a\x3f\x73\x59\x52\x1e\x52\x5a\x68\x40\x44\x1a\x38\xbd\x5f\xf7\x0b\x73"
+"\x1e\xed\x77\x05\xe6\x79\xa8\x77\x5c\x1a\x47\x48\x60\x22\x31\x57\xac\xc5\x8f\x8c\x94\x8c\x94\x1e\xfb\x26\x06\x88\x77\x8a\x81\x7d"
+"\x1a\x4c\xa7\x56\xbf\x67\x1e\xac\x74\xaa\x82\xd9\x7f\x54\x37\x18\x50\x0a\x7f\x89\x87\x7b\x1f\x0e\xa8\x5f\x0a\xfb\x0e\xf8\x41\x29"
+"\x1d\xa8\x72\x1d\xfb\xc5\xfc\xcb\x3c\x0a\x5f\x68\xa5\x0a\x5b\xa0\x16\xf8\xc7\x25\x1d\xfc\x0d\x06\xf7\xb3\xf7\x8e\xfb\x49\xf7\x7c"
+"\x05\xf7\xe6\x06\xa4\xf7\x0e\x05\xfc\x9f\x06\x73\xfb\x03\xf7\x4a\xfb\x7a\xfb\xb4\xfb\x95\x05\x0e\x70\x46\x0a\x0e\x70\xf8\x75\xf8"
+"\x57\x15\xac\xf7\x2d\x05\x5a\x1d\x6a\xfb\x2d\x05\xfb\x2d\x27\x0a\xf7\x2d\x06\x3c\xfc\x07\x20\x0a\xda\xf8\x07\x05\xf7\x2d\x06\x9c"
+"\xdb\x05\x0e\x70\x46\x0a\xf7\x26\xf9\xa9\x9a\x0a\x70\xf7\xf8\x16\xa8\x06\xf7\x15\xf8\xf0\x05\x5a\x1d\xfb\x15\xfc\xf0\x05\xd2\x06"
+"\x4d\x2b\x05\x96\xa4\x97\x8e\x9c\x1b\xa5\x9d\x7e\x77\x72\x6e\x78\x65\x6e\x76\x91\xa3\x5a\x1f\x6d\x57\x05\x75\xc6\xa7\x85\xb9\x1b"
+"\xe6\xc6\xb5\xcc\xaf\x73\xa0\x63\x7c\x7f\x89\x86\x7b\x1f\x0e\xf7\x20\xf8\xf7\xf8\x2b\x15\xfb\x9f\x06\x76\x29\x05\xf7\x9f\x06\x50"
+"\xf8\x44\x15\xfb\x09\x23\x5c\x32\x3d\x1f\x3e\x35\x5a\xfb\x16\xfb\x07\x1a\xfb\x46\xf7\x0c\xfb\x0b\xf7\x45\xf7\x0e\xf0\xba\xe8\xdd"
+"\x1e\xd6\xe1\xb8\xf7\x0e\xf7\x09\x1a\xf7\x4b\xfb\x07\xf7\x08\xfb\x4a\x1e\x7f\x3d\x1d\x4e\x1f\x45\x59\x4c\x69\x3e\x1b\x26\x4c\x2f"
+"\x1d\x0e\xdf\x4f\x1d\xfb\x44\xf7\x61\x9b\x1d\xdf\x4e\x0a\xfb\x5d\xf7\x63\x90\x0a\xdf\x4e\x0a\x25\xf7\x40\x2d\x0a\xdf\xf8\xcd\xfb"
+"\x40\x15\x83\x76\x73\x88\x71\x1b\x65\x79\x99\xa9\xa2\x95\xa2\xa1\xa9\x1f\xa1\xa9\x9b\x99\xc6\xba\xd9\xc6\xac\xbe\xa1\xec\xf4\xf8"
+"\x82\x18\xfb\x2a\x06\x22\xfc\x82\x05\x31\x78\x59\x63\x2f\x1b\x3e\x5e\xaa\xc1\x9a\x8d\x99\x8e\x9b\x1f\xf4\xf8\x82\x05\x2a\x0a\x26"
+"\xfc\x6e\x05\x84\x69\x87\x6c\x74\x1a\xfb\x09\xeb\x42\xf7\x2d\xac\xa1\x8e\x95\xbd\x1e\x61\x78\x71\x7b\x7b\x7c\x08\x6c\x6f\x7b\x69"
+"\x68\x1a\x5b\xbe\x6f\xe4\xa4\x9f\x8e\x91\xaa\x1e\x0e\xa8\x2c\x0a\x0e\xa8\x2c\x0a\xd4\xfa\x2e\x44\x0a\xf7\xb8\xf9\x29\xe6\x1d\xfb"
+"\x62\xfb\xcf\x39\xf7\xcf\x05\xfb\x3c\x06\xf7\x25\xfc\x5f\x52\xfb\xa2\x20\x0a\xfb\xa0\xf9\x6d\x26\x1d\xdf\x4e\x0a\xfb\x86\xf7\x74"
+"\x2e\x1d\x0e\xdf\x4f\x1d\xfb\x3d\xf7\x56\xa9\x1d\x74\x1f\xc1\x06\xad\x9b\x9b\x9a\x83\x0a\xf7\xc6\x35\x1d\xf7\x76\xdb\x1d\x0e\xf7"
+"\xc6\x35\x1d\x93\xfa\x3c\x39\x0a\xf7\xc6\x35\x1d\xa7\x45\x1d\x0e\xf7\xc6\x35\x1d\x45\xfa\x39\x3d\x0a\x9e\xad\x16\xf8\xe1\x21\x1d"
+"\xfc\xe1\x06\xd6\xf7\x51\x15\xf8\x93\x21\x1d\xfc\x93\x06\x90\xf7\x39\x15\xf8\xd6\x25\x1d\xfc\xd6\x06\x0e\xa8\x2c\x0a\xbb\xfa\x3c"
+"\x29\x1d\xa8\x2c\x0a\x79\xfa\x3c\x3d\x0a\x70\x36\x1d\x39\xf7\xe0\x2b\x0a\x70\x36\x1d\xfb\x31\xf7\xce\x2e\x0a\x0e\x70\x36\x1d\x0e"
+"\x39\x2d\x1d\xf7\x08\xf8\x87\x15\x60\x7b\x68\x75\x58\x1b\x58\x75\x9f\xb8\x8a\x1f\x60\x06\x87\xab\x0a\xd9\xd0\xc8\xdd\x99\x1e\x0e"
+"\xf7\x8f\x6e\x1d\x3e\xf8\x2e\x2b\x1d\xf7\xfe\xaa\x0a\xdf\xf8\xaf\xf7\x27\x15\x9c\xfb\x27\x05\xf7\x24\x06\x33\xf9\x6d\x05\xfb\x43"
+"\x06\xfc\x32\xfd\x6d\x05\xf7\x37\x06\xdb\xf7\x27\x05\xf7\x97\xf7\x11\x15\xfb\x53\x06\xf7\x31\xf7\xb1\x05\x0e\xd1\xd0\x16\xf7\xf3"
+"\x06\xe4\xbc\x96\xab\xbb\x1f\xce\xb7\xb5\xd8\xda\x1a\xf7\x06\x37\xdd\xfb\x09\x1e\xfb\x5e\x40\x0a\xf8\x0f\x21\x1d\xfc\xa5\x06\xa1"
+"\xfc\xf0\x15\xb3\xf7\x51\x05\xf7\x6a\x06\xb1\xa4\x6f\x60\x4c\x5b\x54\x54\x1f\x0e\xdf\xda\x16\xf7\xdd\x06\xf7\x05\xc6\x9b\xb9\xc3"
+"\x1f\xbe\xb4\xab\xd1\xce\x1a\xc5\x71\xb4\x47\xbb\x1e\xe3\xb0\xb7\xc5\xdc\x1a\xf1\x40\xcb\xfb\x0b\x1e\xfb\xdd\x06\xf7\x0f\xfb\x11"
+"\x15\xf7\x38\x06\xc7\xa9\x76\x61\x6c\x7b\x6b\x71\x79\x1f\x7c\x77\x6f\x85\x61\x1b\xfb\x31\x06\x71\xfb\x11\x15\xf7\x46\x06\xca\xaa"
+"\x74\x5d\x43\x57\x5b\x3d\x1f\xfb\x4a\x06\x0e\x73\xe1\x5a\x0a\xf7\xc5\x21\x1d\xfc\x5b\x06\x0e\xdf\x70\xfb\x1c\x15\x23\x0a\xa8\xf7"
+"\x1c\x05\xf8\x29\x06\x6e\xfb\x1c\x20\x0a\xc2\xf7\x99\x05\x49\x06\xf7\x14\xf8\xf0\x05\xfc\x61\x06\x2b\xfc\x55\x7b\x35\x39\x47\x34"
+"\x8a\x19\x72\x06\xf8\x7d\x16\xfb\x89\x06\xc6\xad\xb7\xc4\x97\xc5\xd1\xf7\xde\x18\xf7\x35\x06\x0e\xa8\x92\x1d\x0e\xa8\x92\x1d\xf7"
+"\x84\xf9\xaf\x38\x1d\xf7\xb5\xf8\x19\x16\xf7\x29\x06\xd2\xf7\xdf\x05\xf7\x02\x93\x0a\x26\x5c\x0a\x51\xfb\xa5\x05\xfb\x0d\xc4\x1d"
+"\xf7\x3b\x06\xf7\x60\xf7\xdf\x05\xee\x06\x0e\x90\xf7\x0a\xf7\x86\x15\x85\x6f\x05\x87\x77\x89\x7a\x7d\x1a\x21\xee\x3b\xf7\x17\xf7"
+"\x3a\xf7\x11\xf7\x06\xf7\x2c\xc9\x68\x0a\x0e\xdc\x43\x1d\x0e\xdc\x43\x1d\xf7\x39\xf7\x46\x15\x88\x79\x89\x7b\x7f\x1a\x6d\x98\x6e"
+"\xa2\x75\x1e\x77\xa2\xab\x81\xbb\x1b\xc3\xb6\x9b\xad\xb2\x1f\xac\xa8\x98\xa2\x9a\xc2\x08\x32\x06\x58\x77\x6e\x74\x5f\x1b\x71\x76"
+"\x97\xa0\x82\x1f\x86\x94\x8a\x95\xa1\x1a\x0e\x74\xc3\x16\x66\x1d\xf0\x93\x0a\x30\x5c\x0a\x0e\xbc\x88\x16\xdf\x06\xde\x8a\xe4\xd3"
+"\x99\xd9\xec\xf8\x5b\x18\xf7\x7c\x06\xfb\x15\xfc\xf0\x32\x1d\xfc\xa7\x06\xfb\x0d\xfc\xcd\x05\x73\x85\x7c\x80\x75\x1b\x56\x06\x0e"
+"\xf7\x57\xf7\xe0\xf8\xcc\x15\x95\xfc\xcc\x20\x0a\xf7\x8e\xf8\xcc\xfb\x0d\xfc\xcc\x32\x1d\xfb\x76\x06\xfb\x8f\xfc\xd8\x82\xf8\xd8"
+"\x05\xfb\x74\x35\x0a\x0e\xdf\xf7\xb2\xf7\xdf\x15\xf7\xb5\x06\x45\x7f\x0a\x0e\xf7\x20\x8b\x1d\x7d\xfb\x14\x98\x1d\xdc\xd3\x16\x23"
+"\x0a\xf7\x15\xf8\xf2\x05\xf7\xa8\x06\xfb\x15\xfc\xf2\x32\x1d\xfc\xd4\x06\x0e\xa8\xf7\xa6\xf7\x98\x15\xf7\x4f\x06\xda\xc9\xa3\xc0"
+"\xbf\x1f\xbe\xbd\xab\xde\xde\x1a\xbf\x76\xbe\x69\xa7\x1e\xa6\x6c\x53\x9d\x5a\x1b\xfb\xd6\x35\x0a\xdd\xf8\x15\x15\xb9\xf7\x6f\x20"
+"\x1d\xce\xaa\x73\x58\x6a\x81\x68\x7a\x73\x1f\x67\x73\x66\x7b\x53\x1b\x0e\xdf\xf9\xa2\xf8\x76\x15\x8d\x9e\x8c\x93\x96\x1a\xf7\x16"
+"\xfb\x02\xe6\xfb\x33\xfb\x08\x28\x5d\x30\x3f\x1e\x40\x31\x5d\xfb\x18\xfb\x11\x1a\x36\xa9\x3e\xbf\x5a\x1e\x5e\xb9\xd1\x73\xdd\x1b"
+"\xf2\xe7\xaf\xcc\xcc\x1f\xbd\xbd\xaa\xc4\x96\xcb\x08\xfb\x2a\x06\x2e\x6e\x47\x56\x2e\x1b\x32\x58\xc4\xef\xdf\xa4\xe7\xb5\xcc\x1f"
+"\xd6\xba\xca\xb0\xd8\x1b\xd5\xbd\x63\x4f\x84\x8a\x7f\x8a\x7f\x1f\x0e\x70\xf8\x95\xf8\xf0\x15\xf7\x69\x21\x1d\xfc\xdc\x24\x1d\xf7"
+"\x71\x06\xfb\x14\xfc\xf0\x20\x0a\x0e\xb2\x91\x1d\x0e\xf7\x23\xf7\xbf\x16\xf7\x2b\x06\xa0\xf0\x05\xe1\x06\xcd\xcb\xa7\xba\xb5\x1f"
+"\xbe\xc4\xad\xe6\xdd\x1a\xf7\x18\x46\xe5\x26\x1e\x49\x06\xa0\xf0\x05\xfb\x2b\x06\x76\x26\x05\x3c\x06\xfb\x1e\xfb\x06\xfb\x1d\xfb"
+"\x3b\xfb\x1a\xcd\x32\xed\x1f\xc7\x06\xda\xf8\x26\x15\x53\xfb\xa9\x05\x58\x06\x6c\x77\xb4\xcb\xeb\xbb\xd7\xc6\x1f\xf7\x63\x16\xc5"
+"\x06\xad\xa0\x63\x4b\x2c\x59\x3d\x4e\x1f\x51\x06\x0e\xa8\x93\x1d\xf7\x3b\x06\x0e\xe6\xcf\x16\xf8\x76\x06\x6a\xfb\x30\x20\x0a\xc7"
+"\xf7\xad\x05\x48\x06\xf7\x15\xf8\xf0\x96\x0a\xd1\xf8\x83\x16\xf7\x2a\x77\x0a\xf7\x2a\xc9\xc3\x94\x9f\xcc\x1e\x0e\xf7\xe9\xce\x16"
+"\xf9\xe1\x59\x0a\xfb\x14\xfc\xf0\x05\xfb\x5a\x3c\x1d\xfb\x14\xfc\xf0\x05\xfb\x59\x58\x0a\xf7\xf3\xca\x16\xf9\x84\x06\x69\xfb\x35"
+"\x05\x23\x0a\xc8\xf7\xb2\x05\x48\x3c\x1d\xfb\x14\xfc\xf0\x05\xfb\x55\x06\xf7\x15\xf8\xf0\x05\xfb\x2a\x6a\x1d\xfb\x54\x58\x0a\xf7"
+"\x6c\xf7\x37\x22\x1d\x70\xfb\x11\x05\xf7\x8a\x06\xfb\x14\xfc\xf0\x05\xf7\xbf\x06\xe8\xc0\x99\xb2\xbc\x1f\xcb\xbe\xb1\xd9\xdc\x1a"
+"\xf7\x0a\x3f\xd2\xfb\x14\x1e\xfb\x26\x06\xc6\xf7\xa9\x05\xfb\x15\xfc\xf0\x15\xb6\xf7\x5e\x05\xf7\x2d\x9e\x0a\xf7\xfe\xf7\x09\x71"
+"\x0a\xf7\xab\xfb\x11\x15\xf7\x2a\x59\x0a\x0e\xd1\xe9\x71\x0a\x0e\xdc\xf8\xec\xf7\xce\x15\xfb\x1b\x60\x3a\x41\x22\x1b\x30\x5a\xbf"
+"\xf7\x02\x80\x1f\xfb\x28\x5f\x05\xfb\x32\xa5\xf4\x33\xf7\x36\x1b\xf7\x0a\xf1\xbd\xea\xd8\x1f\xd0\xe1\xb5\xf7\x0a\xf7\x01\x1a\xf7"
+"\x51\xfb\x01\xf7\x09\xfb\x44\x39\x3b\x71\x5d\x4a\x1e\x65\x6f\x6e\x6e\x61\x54\xf7\x12\x47\x18\xe0\xc4\xca\xb2\xdb\x1b\xc7\xba\x70"
+"\x5b\x9f\x1f\x97\x6f\x8f\x75\x5a\x1a\xfb\xbd\x06\x71\xfb\x11\x05\x0e\xf8\x28\xf8\x0a\xf7\xdf\x15\x8a\x77\x8a\x7f\x7b\x1a\xfb\x51"
+"\xf7\x04\xfb\x09\xf7\x4a\xf7\x0e\xf7\x02\xbf\xe6\xd6\x1e\xd2\xe4\xb5\xf7\x08\xf7\x04\x1a\xe4\x72\xd5\x5a\xc2\x1e\xc5\x57\x46\xa7"
+"\x2d\x1b\xfb\x43\xfb\x2a\xfb\x01\xfb\x44\x48\x1f\x20\x54\x0a\xf8\x94\xf7\xae\x98\x1d\xe6\xf8\x86\x16\xf7\x2a\x4a\x0a\xfb\xef\x06"
+"\x45\x48\x71\x5e\x58\x1f\x56\x5c\x69\x41\x4a\x1a\x4c\xa8\x55\xba\x70\x1e\x53\x89\x62\x61\x7c\x47\x72\xfb\x0d\x18\x79\x4d\x7c\x74"
+"\x6b\x81\x08\xf7\x2c\x06\xaa\x95\x9e\xa4\x98\xbc\xa5\xf7\x19\x18\x94\xb6\x9d\x99\xb7\x8c\x08\xf7\x52\x06\xa5\xf7\x11\x15\xfb\x42"
+"\x06\x5b\x6e\xa7\xbb\xd0\xc2\xc6\xcd\x1f\xf7\x42\x06\x0e\x4c\xf8\xc9\x22\x1d\xfb\xb3\x35\x0a\xf7\x14\xf8\xf0\x05\xf7\x8d\x06\xa6"
+"\xf7\x11\xf7\x06\xf7\x0e\x05\xfb\x19\x06\x0e\xf7\x8c\xf7\x93\x16\x23\x0a\xc9\xf7\xb8\x99\x9b\x93\x94\x95\x93\x19\xa3\xa7\xb6\x98"
+"\xbb\x1b\xc9\xa8\x7a\x65\x86\x8a\x81\x88\x81\x1f\x76\x24\x82\x6a\x6e\x75\x68\x8c\x19\x43\x06\x71\xfb\x11\x05\xf7\x14\x06\xe9\xd4"
+"\xc8\xea\xa0\x1f\xaa\xf7\x29\x05\x8f\x9a\x8c\x98\x98\x1a\xc0\x6d\xbf\x61\x9f\x1e\x98\x71\x62\x92\x5f\x1b\x3e\x61\x7c\x56\x47\x1f"
+"\xb1\xf7\x49\x05\xf7\x70\x25\x1d\xfc\xb9\x24\x1d\xf7\x48\x06\x0e\x73\xda\x5a\x0a\xf7\xcd\x25\x1d\xfc\x62\x06\xf7\x41\xc5\x15\xf7"
+"\x03\x06\xf7\x07\xf7\x0e\x05\xfb\x19\x06\x0e\xdc\xf8\xbf\xf7\xce\x15\xa5\xf7\x11\x05\xfb\xc0\x06\xa1\xbc\x99\xa3\xa3\xa6\x08\xbb"
+"\xb5\xc5\xa6\xc7\x1b\xda\xb9\x63\x35\xa0\x1f\xf7\x1f\xc9\x05\xf7\x10\x69\x2c\xce\xfb\x24\x1b\xfb\x0f\x26\x59\x26\x3d\x1f\x47\x33"
+"\x5f\xfb\x16\xfb\x04\x1a\xfb\x3e\xf7\x02\xfb\x05\xf7\x39\xf7\x38\xf7\x0a\xd7\xf7\x3a\xeb\x1e\xfb\x20\xbb\x05\xfb\x02\x52\x44\x57"
+"\x2f\x1b\x35\x53\xc8\xea\x97\x8c\xa0\x8d\x9f\x1f\x0e\xa8\xf9\x5e\xf8\x8f\x15\x8f\xa6\x8c\x98\x9a\x1a\xc3\x74\xb9\x61\xa7\x1e\xaa"
+"\x5c\x45\x9d\x3f\x1b\x34\x3b\x72\x5f\x55\x1f\x52\x5e\x68\x40\x3e\x1a\x3a\xc0\x5c\xf7\x09\x73\x1e\xec\x78\x05\xdf\x7a\xac\x73\x5d"
+"\x1a\x44\x47\x5c\x25\x35\x57\xae\xc4\x91\x8c\x96\x8c\x95\x1e\xfb\x26\x06\x88\x75\x8a\x81\x7b\x1a\xfb\x0a\xf3\x40\xf7\x38\xf7\x00"
+"\xe9\xaa\xc1\xc1\x1e\xbd\xbc\xaa\xd4\xcf\x1a\xe3\x58\xc1\x25\x9f\x1e\xfb\x02\xa1\x05\x30\x9d\x6d\x9d\xb0\x1a\xcd\xc7\xb7\xe3\xd9"
+"\xbb\x6a\x56\x85\x8a\x81\x89\x81\x1e\x0e\xf8\x05\x33\x0a\x0e\x25\x0a\xde\xfa\x2c\x45\x0a\x39\xf8\x83\x22\x1d\xfb\x06\xfc\xab\x05"
+"\x51\x7e\x68\x6c\x55\x1b\x62\x73\x9d\xab\x95\x8d\x9a\x8e\x99\x1f\x9b\xd7\x28\x0a\x7b\x3f\x05\x86\x75\x89\x79\x7a\x1a\x60\x9f\x61"
+"\xae\x6c\x1e\x6e\xad\xbc\x7c\xc8\x1b\xd2\xcc\x9f\xae\xba\x1f\xb7\xac\xa4\xba\x9b\xd6\xf7\x08\xf8\xb2\x18\x0e\xf8\x5c\x9b\x16\xdf"
+"\x06\xde\x8a\xe4\xd3\x99\xd9\xec\xf8\x5b\x18\xf7\x7c\x6a\x1d\xf7\xc0\xb8\x1d\xfb\x27\x06\xc6\xf7\xa9\x05\xfc\xa7\x06\xfb\x0d\xfc"
+"\xcd\x85\x73\x7c\x7f\x75\x8c\x19\x56\x06\xf9\x00\x16\xb6\xf7\x5e\x05\xf7\x2d\x06\xa8\x99\x87\x7d\x97\x1f\x96\x7d\x91\x79\x74\x1a"
+"\x44\x5a\x51\x4f\x1e\x0e\xf8\x28\xf7\xa8\xf7\xdf\x15\xf7\xa7\x06\x45\xfb\xdf\x05\xf7\xaf\xb8\x1d\xfb\x16\x06\xc6\xf7\xa9\x28\x0a"
+"\x51\xfb\xa5\x05\xfb\xa7\x06\xc5\xf7\xa5\x34\x0a\xf8\x57\xf7\x11\x15\xb6\xf7\x5e\x05\xf7\x1d\x9e\x0a\xf7\x6c\xf7\x60\x16\x23\x0a"
+"\xc9\xf7\xb8\x05\xbf\xb7\xaf\x9d\xc9\x1b\xc1\xa7\x79\x68\x85\x8a\x81\x88\x80\x1f\x4f\xfb\xae\x20\x0a\xcc\xf7\xc5\x05\x8f\x9d\x8d"
+"\x9b\x98\x1a\xba\x6c\xbf\x64\x9e\x1e\x98\x72\x63\x93\x63\x1b\x47\x61\x7b\x57\x47\x1f\xb2\xf7\x49\x05\xf7\x66\x21\x1d\xfc\xa9\x24"
+"\x1d\xf7\x41\x06\x0e\x7b\xc7\x16\x66\x1d\xf1\xac\x1d\x2f\x5c\x0a\xf7\x51\xcc\x15\xf7\x04\x06\xf7\x05\xf7\x05\x05\xfb\x1b\x06\x0e"
+"\xb2\x91\x1d\xf7\x98\xf9\xba\x15\x88\x78\x89\x7a\x7f\x1a\x6e\x99\x6d\xa2\x75\x1e\x75\xa2\xad\x81\xba\x1b\xc5\xb9\x9b\xae\xb2\x1f"
+"\xad\xa9\x99\xa2\x9a\xc4\x08\x30\x06\x57\x76\x6d\x73\x5d\x1b\x63\x71\xa7\xb3\x8e\x1f\x8d\x8b\x8d\x8c\x8f\x1e\x0e\x39\xf8\xa3\x9c"
+"\x15\x7e\x9c\x86\x98\x98\x1a\x92\x8c\x92\x8d\x94\x1e\xca\xf7\xc0\x05\x8f\x9a\x8c\x98\x99\x1a\xab\x7a\xad\x73\x9e\x1e\xa5\x69\x59"
+"\x98\x42\x1b\x32\x4e\x79\x63\x5f\x1f\x65\x67\x73\x60\x83\x59\x08\xf7\x1c\x06\xc1\x99\xaa\x9f\xce\x1b\xba\xa3\x7d\x70\x7b\x85\x7b"
+"\x7f\x80\x1f\x7a\x7a\x81\x88\x38\x7e\x52\x81\x18\x4e\x82\x61\x78\x6a\x6c\x08\x64\x66\x75\x57\x55\x1a\x3a\xbf\x5a\xe2\xcc\xbf\xa2"
+"\xc1\xc2\x1e\x89\x7c\x8a\x86\x84\x1a\x81\x8d\x85\x91\x80\x1e\xf7\x2d\x06\xfb\x10\xf7\x6d\x15\x3a\x7a\x59\x5d\x44\x1b\x62\x74\x9d"
+"\xab\xa1\x95\xa0\x9b\x9b\x1f\x9c\x9b\x99\x91\xb3\x93\xbe\x94\x18\xb0\x92\x93\x8d\x9c\x93\x08\x0e\x78\xf8\xc4\xf9\xe3\x15\x78\x40"
+"\x74\x6f\x52\x7c\xfb\x0b\x67\x4f\x65\x4f\x3c\x08\x43\x2e\x4f\xfb\x48\xfb\x0d\x1a\xfb\x10\xe6\x3a\xf7\x1f\xec\xe2\xb3\xd2\xc3\x1e"
+"\xbc\xc9\xac\xf0\xe4\x1a\xf7\x0f\x33\xe1\xfb\x11\x52\x5b\x79\x65\x5e\x1e\xa4\xcd\xb8\xa6\xf7\x13\xa5\xf7\x20\xa8\xb9\xbb\xb2\xf7"
+"\x32\x08\xfb\xbe\xfc\x2f\x15\xc6\xb0\x5f\x44\x5a\x7d\x55\x72\x61\x1f\x53\x6b\x5d\x6d\x56\x1b\x50\x66\xb7\xd1\xf7\x13\xd8\xf4\xe8"
+"\x1f\x0e\x69\xdd\x16\xf7\xcb\x06\xbe\xc2\x9e\xa8\xad\x1f\xae\xaa\xa3\xbf\xba\x1a\xbc\x70\xae\x55\x9e\x1e\xae\x98\x9b\x94\x9c\x9b"
+"\x08\xa7\xa5\x9b\xb1\xb2\x1a\xcf\x57\xbd\x45\x1e\xfb\xc4\x06\xbc\xfc\x3f\x15\xa4\xf7\x0c\x05\xf7\x18\x06\xa7\x9d\x78\x6e\x65\x6a"
+"\x69\x65\x1f\x33\xf7\x65\x15\xa2\xf7\x00\x05\xf7\x18\x06\xa2\x98\x7c\x72\x66\x70\x6c\x6b\x1f\x0e\x23\xcf\x48\x0a\xf7\x91\x2f\x0a"
+"\xfc\x1d\x06\x0e\x77\x82\xfb\x04\x15\x21\x0a\xa3\xf7\x04\x05\xf7\xc1\x4e\x1d\x21\x0a\xbb\xf7\x75\x05\x58\x06\xe6\xf8\x3f\x05\xfc"
+"\x20\x06\x4b\xfb\xbd\x05\x3d\x7c\x61\x57\x5b\x1b\x53\x06\xf8\x1a\x16\xfb\x46\x06\xbc\xad\xa7\xb8\x9b\xd1\xaf\xf7\x39\x18\xf7\x08"
+"\x06\x0e\x39\x80\x1d\x0e\x39\x80\x1d\x50\xf8\x3a\x45\x0a\xed\xf8\x4a\x16\xbd\xf7\x83\x05\xdd\x06\xa9\xa4\x0a\xfb\x02\xfb\x50\x05"
+"\x4d\xd9\x1d\x42\xad\x1d\xca\x06\x59\xfb\x83\x05\x0e\xfb\x14\xda\xf7\x47\x15\x88\x76\x89\x77\x7e\x1a\x32\xd6\x50\xf7\x03\xf7\x1c"
+"\xf6\xe1\xf7\x00\x6b\x0a\x0e\x70\x43\x0a\x0e\x70\x43\x0a\xf7\x1d\xf7\x4e\x15\x88\x7b\x89\x7d\x81\x1a\x58\xbe\x64\xcd\xba\xb8\x9d"
+"\xab\xac\x1e\xa3\xa1\x93\x9c\x95\xb4\x08\x47\x06\x62\x7e\x74\x7c\x5b\x1b\x63\x75\x99\xa5\x1f\x8c\x9b\x05\x0e\xfb\x17\xf7\x3b\xf8"
+"\xb0\x15\x2c\x1d\xbe\xf7\x83\x05\xd2\x5d\x0a\xf7\x1f\x06\x5b\xf7\xc1\xf7\x22\xf7\x83\x05\xfb\x28\x06\xfb\x02\xfb\x50\x05\x4e\x3b"
+"\x1d\x0e\x7b\xa9\xd4\x1d\xf7\x25\xd3\x1d\xfc\x3d\xb4\x0a\x0e\xf1\xf9\x27\x16\xf7\x07\xf8\xb0\x05\xfb\x51\x06\xfb\x51\xfc\x29\x7f"
+"\xf8\x29\x05\xfb\x50\x06\xfb\x07\xfc\xb0\x05\xf7\x17\x06\xe3\xf8\x30\x97\xfc\x30\x05\xf7\x03\x06\xf7\x52\xf8\x30\x33\xfc\x30\x05"
+"\x0e\x69\xa9\x0a\x21\x0a\xf7\x07\xf8\xb0\x9d\x0a\x70\x7d\x0a\x81\xfb\x05\x15\xc5\xb0\x5e\x45\x5a\x7d\x56\x72\x60\x1f\x54\x6b\x5b"
+"\x6c\x57\x1b\x51\x66\xb7\xd1\xf7\x13\xd9\xf4\xe8\x1f\x0e\x70\xd7\x48\x0a\xf7\x46\xd3\x1d\xfc\x5e\x06\x0e\x70\xf7\xcf\xf8\xb0\x23"
+"\x1d\xfb\x35\xfd\x8a\x20\x1d\xc7\xf7\xae\x05\x4f\xa1\xb7\x70\xd4\x1b\xdf\xd4\xb2\xd4\xc0\x1f\xbc\xce\xa7\xe9\xe7\x1a\xf7\x0e\x44"
+"\xe0\x25\x47\x53\x6e\x4f\x5e\x1e\xf7\x03\x74\x15\xc1\xad\x5f\x45\xfb\x12\x41\xfb\x00\x35\x56\x5f\x1d\x39\xf8\xe8\xf7\xe6\x15\x8c"
+"\x9a\x8c\x99\x95\x1a\xb2\x7c\xb3\x70\xa9\x1e\xb6\x65\x58\x9f\x41\x1b\x38\x46\x6e\x52\x55\x1f\x4d\x4a\x5f\xfb\x0d\x24\x1a\xfb\x0b"
+"\xdf\x3e\xf7\x18\xd9\xc7\xa1\xba\xbb\x1e\xb3\xb2\xa5\xb7\x9c\xc4\x08\xfb\x23\x06\x47\x6d\x6a\x6f\x58\x1b\x54\x6d\xae\xcd\xc1\x9a"
+"\xc8\xa5\xbb\x1f\xc2\xa8\xb0\xa5\xbd\x1b\xbb\xaa\x70\x62\x81\x8a\x84\x88\x7e\x1f\x0e\xf7\x8f\xf8\x0b\x48\x0a\xf7\x70\x2f\x0a\xfc"
+"\xf0\x3f\x0a\xf7\x88\x06\x0e\x39\x90\x1d\x0e\xf7\x8b\xf7\xdb\xfb\x6e\x15\x21\x0a\xb9\xf7\x6e\x05\xd3\xb6\x93\xa3\xc1\x1f\xf7\x0a"
+"\xc0\xda\xf7\x09\xf7\x0e\x1a\xf7\x13\x23\xe5\xfb\x27\x8a\x1e\xb4\xf7\x58\x22\x0a\x62\xfb\x58\x05\x42\x63\x84\x77\x59\x1f\xfb\x0f"
+"\x57\x3b\xfb\x07\xfb\x15\x1a\x2d\xc6\x40\xf0\x69\x1e\x7f\xad\x9c\x89\xb3\x1b\xa3\xf7\x05\x15\x62\x8e\x79\x8f\x75\x98\x08\x68\x9e"
+"\x77\xb1\xb8\x1a\xc0\xa7\xc2\xbc\xb2\x1e\xae\xa8\xaa\x96\xc7\x90\x08\xf7\x20\x16\xb4\x89\x9e\x86\xa1\x7f\x08\xad\x78\x9f\x66\x60"
+"\x1a\x50\x6c\x4f\x58\x65\x1e\x69\x71\x6d\x82\x52\x87\x08\x0e\x39\xf8\x33\xf7\xa4\x15\xf7\x7d\xf7\xa0\x05\xfb\x41\x06\xfb\x0e\xfb"
+"\x37\x56\xf7\x37\x05\xfb\x37\x06\xf7\x0b\xfb\xa0\xfb\x82\xfb\xa4\x05\xf7\x41\x06\xf7\x14\xf7\x3c\xc2\xfb\x3c\x05\xf7\x37\x06\x0e"
+"\x93\xe2\x16\xf8\x05\x06\x69\xfb\x2f\x05\x21\x0a\xc5\xf7\xa0\x05\x53\x94\x0a\x54\xf8\x15\x16\xf7\x22\x8c\x1d\xec\xc1\xc1\x94\x9c"
+"\xbc\x1e\x0e\xf7\x8f\xc9\x16\xf9\x92\x06\xf7\x06\xf8\xb0\x80\x0a\xf7\xbd\xd6\x16\xf9\x3e\x06\x68\xfb\x31\x20\x1d\xc6\xf7\xa2\x05"
+"\x53\x06\xe5\xf8\x3f\x80\x0a\xd0\xf7\x15\x29\x0a\x73\xfb\x05\x05\xf7\x47\x06\x30\xfc\x3f\x05\xf7\xaf\xa0\x0a\xfb\x23\x06\xb6\xf7"
+"\x5c\x05\x30\xfc\x3f\x15\xa3\xb9\x0a\x69\x1f\x0e\xf7\x6c\xf0\x76\x0a\xf7\x67\xfb\x05\x15\x63\x1d\x0e\x5f\xdd\x76\x0a\x0e\x35\xf7"
+"\x6e\xf7\x76\x15\xf7\x6b\x06\x34\x6d\x53\x5a\x48\x1b\x67\x6c\x9d\xa9\x7c\x1f\x82\x9b\x88\x98\x89\xa8\xfb\x21\x68\x18\x94\x58\x95"
+"\x71\x9f\x6f\x08\x59\xb0\xd0\x6e\xdd\x1b\xe8\xe1\xaf\xc8\xbf\x1f\xc4\xcd\xaf\xef\xe6\x1a\xf7\x1a\x33\xdf\xfb\x22\x25\x35\x60\x38"
+"\x4d\x1e\xf7\x07\x4d\x05\xbf\xb0\xb2\xa2\xbd\x1b\xc2\xb7\x5c\x52\x88\x1f\x8a\x80\x05\xfb\x67\x06\x0e\xf7\x77\xf7\xe5\xf7\x77\x15"
+"\x89\x7d\x8b\x84\x80\x1a\xfb\x1d\xe0\x3a\xf7\x25\xe9\xe0\xb1\xcd\xc2\x1e\xc1\xcc\xad\xed\xe4\x1a\xf7\x1a\x35\xdd\xfb\x22\xfb\x20"
+"\x24\x42\xfb\x1c\x56\x1e\x2d\x06\xb6\xf7\x5c\x5d\x1d\xbb\xf7\x77\x05\xf8\x28\xf7\x65\x15\xc5\xb0\x5e\x45\xfb\x11\x3d\x21\x2e\x51"
+"\x66\xb7\xd1\xf7\x13\xd9\xf4\xe8\x1f\x0e\x5a\xf8\x0c\x16\x21\x0a\xf7\x07\xf8\xb0\x05\xfb\xbf\x06\xfb\x0a\x33\x3d\x22\x58\x9e\x68"
+"\xb6\x6f\x1f\x5f\x77\x79\x73\x7f\x55\x84\x6a\x18\x7e\x59\x7b\x6a\x71\x6e\x08\xf7\x24\x06\x9f\xa3\x98\xab\x94\xb8\x93\xad\x18\xbc"
+"\x95\xa0\x9c\xbd\x1b\xe7\x06\xa3\xf7\x05\x15\xfb\x21\x06\x73\x7d\x9a\xa6\xb3\xa6\xaa\xae\x1f\xf7\x21\x06\x0e\xfb\x3f\xf8\x59\x29"
+"\x0a\xfb\xa1\x06\x2c\x1d\xe6\xf8\x3f\x05\xf7\x6e\x06\xa3\xf7\x05\xf7\x3b\xf7\x32\x05\xfb\x19\x06\x0e\x70\xf7\x22\x16\x21\x0a\xba"
+"\xf7\x71\x05\xaf\xb0\xa4\x98\xa7\x1b\xa5\x9b\x7e\x78\x81\x8b\x8a\x8a\x85\x1f\x60\xfb\x5e\x84\x65\x6c\x70\x66\x8a\x19\x2b\x06\x78"
+"\x2e\x05\xf7\x10\x06\xf7\x0a\x91\xcf\xc5\xa3\xf7\x08\xb2\xf7\x49\x18\x8e\x99\x8c\x98\x9a\x1a\xcc\x5b\xb7\x45\x60\x66\x7e\x6a\x54"
+"\x1e\xb6\xf7\x60\x05\xf7\x1a\x06\x9f\xe8\x05\xfb\x1a\x2f\x0a\xfb\x20\x3f\x0a\x21\x33\x1d\xf5\x06\x0e\xfb\x3d\xca\x48\x0a\xf7\x75"
+"\x2f\x0a\xfc\x01\x06\xf7\x18\xc5\x15\xe4\x06\xf7\x3c\xf7\x32\x05\xfb\x1a\x06\x0e\x40\xf8\x45\xf7\x76\x15\x9f\xea\x05\xfb\x67\x06"
+"\xd0\xa5\xc5\xb9\xc8\x1b\xbc\xa8\x73\x58\x99\x1f\xf7\x18\xc5\x7e\xaa\x7f\x9d\x7a\x9d\x19\xb2\x64\x4a\xa3\x44\x1b\x34\x39\x68\x4e"
+"\x52\x1f\x52\x4d\x65\x24\x2e\x1a\x4f\xa3\x4d\xb1\x66\x1e\x65\xb2\xc7\x76\xd0\x1b\xd6\xd0\xa3\xba\xc4\x1f\xb3\xab\xa0\xa7\xa1\xbe"
+"\xfb\x18\xb0\x18\x44\x68\x5b\x68\x4e\x1b\x54\x64\xb8\xc9\x94\x8b\x94\x8c\x96\x1f\x0e\x39\xf8\xdd\xf8\x02\x15\x8d\xa3\x8b\x8c\x92"
+"\x1a\xe7\x38\xc6\xfb\x14\x46\x50\x78\x67\x5e\x1e\x5d\x67\x6d\x50\x57\x1a\x5a\xab\x66\xc5\x78\x1e\xf7\x30\x58\x05\xa3\x82\x98\x7d"
+"\x78\x1a\x64\x5f\x74\x42\x4e\x6c\x9d\xad\x91\x8b\x8e\x8d\x94\x1e\xfb\x20\x06\x89\x7e\x8b\x85\x83\x1a\x27\xd6\x56\xf7\x1e\xeb\xd6"
+"\xa4\xba\xbb\x1e\xb0\xaf\xa3\xc0\xb6\x1a\xb9\x6c\xb4\x5d\x99\x1e\xfb\x39\xbf\x05\x70\x93\x7c\x9c\xa0\x1a\xae\xb1\xa3\xc2\xc2\xab"
+"\x78\x69\x84\x8a\x87\x87\x82\x1e\x0e\xf7\xd8\x84\x0a\x2a\x1d\xbc\xf9\x79\x45\x0a\xf7\xda\xf8\xb0\x23\x1d\xfb\x14\xfc\xee\x05\x69"
+"\x84\x7f\x82\x63\x1b\x7b\x3f\x0a\x9a\x06\xc0\x06\xc4\xa2\x90\x9a\xa3\x1f\xa8\x9e\xa0\xad\x95\xbb\x08\xf7\x43\xf9\xce\x23\x1d\x71"
+"\xfb\x11\x20\x1d\x0e\xf7\xdf\xac\xd4\x1d\xf7\x3e\x06\x31\xfc\x3f\x05\xf7\xc4\xa0\x0a\xfb\x38\x06\xb6\xf7\x5c\x05\xfc\x57\xb4\x0a"
+"\xf8\xb0\x16\xa3\xf7\x06\x05\xf7\x31\x06\xa3\x9b\x7b\x71\x64\x6d\x6a\x69\x1f\x0e\xf7\xa0\xd1\x16\x21\x0a\xbb\xf7\x77\x05\xf7\x58"
+"\x06\x5a\xfb\x77\x05\xf7\xaf\x06\xc5\xc0\xc9\x1d\xfb\x23\x06\xb5\xf7\x5c\xbe\x1d\xf8\x14\xfc\x3f\x15\xa4\xb9\x0a\x68\x1f\x0e\x70"
+"\xea\x16\x21\x0a\xca\xf7\xbb\x05\xc7\xb5\xb2\xa5\xbd\x1b\xb4\xa4\x72\x62\x84\x8a\x84\x8a\x85\xd5\x1d\x98\x8c\x98\x98\x1a\xd2\x4b"
+"\xc5\x3e\x52\x5a\x78\x5a\x44\x1e\xa3\xf7\x07\x05\xf7\x1d\x06\x9f\xe8\x05\xfb\x1d\x06\xa0\xf0\x22\x0a\x76\x26\x05\x24\x33\x1d\xf2"
+"\x06\x0e\xfb\x17\xf7\x40\xad\x0a\xd1\x06\xb2\xfb\x83\x05\xf7\x1e\x06\x5c\xf7\xc1\xf7\x21\xf7\x83\x05\xfb\x27\x06\xfb\x02\xfb\x50"
+"\x05\x4f\x3b\x1d\xa6\xc5\x15\xe7\x06\xf7\x39\xf7\x32\x05\xfb\x17\x06\x0e\x39\x90\x1d\xfb\xfc\xf7\x5b\x15\x88\x7b\x8a\x7d\x80\x1a"
+"\x56\xbe\x64\xd0\xba\xb9\x9d\xab\xac\x1e\xa2\xa2\x94\x9d\x96\xb5\x08\x46\x06\x5f\x7c\x77\x7e\x58\x1b\x60\x77\x98\xa6\x8f\x8b\x92"
+"\x8c\x91\x1f\x0e\xdc\xd8\x16\xf7\x64\x06\x6a\xfb\x33\x20\x0a\xac\xf7\x33\x05\xf7\x64\x06\xf7\x2f\xf9\x6d\x96\x0a\x70\xda\x16\xf7"
+"\x30\x06\x6b\xfb\x31\x20\x1d\xab\xf7\x31\x05\xf7\x31\x06\xf7\x07\xf8\xb0\xbb\x1d\x4c\xee\xf7\xc0\x15\x80\x5a\x87\x68\x66\x1a\xfb"
+"\x0d\xe2\x3a\xf7\x16\xe0\xda\xb1\xcf\xc1\x1e\xc0\xcd\xad\xf1\xeb\x1a\xf7\x11\x39\xd8\xfb\x18\xfb\x0c\x2c\x4d\xfb\x05\x57\x1e\xf7"
+"\x24\x06\xb4\xa3\xb3\xa2\xbc\x1b\xc3\xaa\x6d\x54\x7a\x89\x7d\x86\x75\x1f\x76\x2e\x15\x3a\x70\x60\x64\x4c\x1b\x57\x6a\xac\xc0\x95"
+"\x8c\x94\x8d\x9a\x1f\x0e\xf7\x8b\xf8\x99\xf8\xd4\x15\x8c\x98\x8c\x92\x94\x1a\xda\x58\xba\x35\x4a\x53\x73\x5f\x62\x1e\x5e\x5a\x6d"
+"\x37\x3f\x1a\x35\xc1\x58\xe8\xe9\xd9\xc6\xea\xa9\x1e\xfb\x06\x06\x61\x79\x78\x7b\x6c\x1b\x6d\x7b\xa0\xb2\xad\x94\xb4\x9a\xab\x1f"
+"\xb2\x9d\x9f\x9b\xaa\x1b\xab\x96\x7c\x5f\x8c\x1f\xf7\xe0\xfb\x47\x15\x41\x47\x6a\x53\x60\x1f\x67\x5d\x74\x45\x4c\x1a\x30\xc5\x55"
+"\xed\xf7\x20\xf3\xf7\x07\xf7\x2f\xe5\x51\xc0\x29\x1e\x78\x2b\x15\xac\xa0\x70\x60\x3a\x5b\x45\x54\x69\x76\xa6\xb6\xdc\xbb\xd1\xc3"
+"\x1f\x97\xf8\x2c\x15\xfc\xaa\xfd\x59\x05\xda\x06\xf8\xab\xf9\x59\x05\x0e\xfb\x0e\xf7\xb0\xf7\xb8\x15\xda\xcd\xbc\xbb\xab\xb6\x08"
+"\xbf\xd1\xaa\xd8\xc4\x1a\xc0\x6b\xac\x59\x20\x38\xfb\x23\xfb\xd1\x40\x1e\x69\x6d\x71\x75\x7b\x81\x08\x76\x7c\x83\x83\x83\x1a\x85"
+"\x94\x82\x92\x94\xb0\xa3\xa5\xac\x1e\x7c\x29\x89\x79\x6b\x1a\x52\xad\x69\xc3\xb8\xae\xa0\xb7\xac\x1e\x9a\xa0\x94\x9f\x97\x1a\x92"
+"\x84\x91\x82\x80\x84\x86\x7d\x83\x1e\x5d\x6f\x7a\x7c\x71\x1b\x79\x83\x94\x9e\xa5\xa1\xf7\x0a\xa0\xe2\x1f\x97\xc2\x15\xf7\x9d\xc3"
+"\xaf\xe2\xc3\x1b\xa1\x99\x7a\x71\x6d\x7e\x5a\x78\x62\x1f\x6c\x48\x5f\x53\x3e\x49\x08\x0e\xf8\x90\xf8\x46\x16\xf7\x0b\x06\xf7\x2e"
+"\xf9\x6d\x05\xfb\x10\x06\x20\xfc\x8e\xfb\x1f\xf8\x8e\x05\xfb\x0f\x06\xfb\x2e\xfd\x6d\x05\xf7\x11\x06\xf7\x00\xf8\x96\x05\xf7\xfd"
+"\xfc\x96\x15\xf8\x45\x06\x9f\xea\x05\xfc\x45\x06\xf7\xe5\xf9\x1a\x15\x38\x40\x60\x3c\x57\x1f\x64\x4f\x6c\xfb\x04\x38\x1a\xfb\x09"
+"\xd5\x3d\xf7\x02\xdf\xd4\xb5\xda\xc0\x1e\xb3\xc7\xaa\xf7\x04\xe0\x1a\xf7\x08\x41\xd9\xfb\x03\x1e\x6b\xfb\x05\x15\xbe\x88\xa7\x62"
+"\x44\x1a\xfb\x11\x4b\x21\x3e\x5a\x6c\xb6\xd2\xf7\x12\xce\xf7\x02\xd6\x87\x1e\x0e\x79\xf8\xc9\xf7\x9d\x15\xf7\x3d\xf7\xa7\x22\x0a"
+"\x42\xba\x0a\x56\x1b\x43\x49\x65\x49\x5c\x1f\x59\x44\x6f\x30\x32\x1a\xfb\x18\xce\x36\xf1\xc4\xc4\xa5\xb7\xb3\x1e\xa0\xa3\x97\x9b"
+"\xaa\xbb\x9f\xfb\x1b\x18\xf7\x20\x06\xfb\x4c\xf7\xa6\x15\x6a\x4c\x83\x7d\x79\x6f\x08\x5b\x6c\x5f\x6c\x67\x1b\x6c\x75\xba\xcc\xf7"
+"\x10\xc9\xf7\x02\xd0\xbf\xa7\x59\xfb\x04\x97\x1f\x0e\x79\xf8\xca\xf7\x9d\x15\xf7\x3d\xf7\xa7\x22\x0a\x41\xba\x0a\x57\x1b\x44\x4a"
+"\x65\x49\x5c\x1f\x5b\x44\x6f\x30\x32\x1a\xfb\x18\xcc\x36\xef\xc3\xc5\xa5\xb7\xb2\x1e\xa0\xa3\x97\x9b\xaa\xbb\x9f\xfb\x1b\x18\x21"
+"\x0a\xfb\x4c\xf7\xa6\x15\x60\x38\x7c\x73\x77\x74\x08\x69\x6d\x6b\x77\x72\x1b\x6a\x77\xb6\xd2\xbf\x98\xc3\xa1\xbb\x1f\xbb\xa2\xad"
+"\xa7\xad\x1b\xbf\xa8\x59\xfb\x04\x96\x1f\xb4\xf8\x97\x26\x1d\x39\x2d\x1d\xf7\x3f\xf8\x67\x15\xfb\xc0\x27\x0a\xf7\xc0\x06\x0e\xfb"
+"\xc5\xc5\xf7\x82\x15\xf7\x42\xfb\xe8\x05\x7b\x93\x95\x84\x97\x1b\x93\x90\x8f\x92\x92\x89\x93\x88\x93\x1f\xfb\x17\xf7\xdd\xf7\x17"
+"\xf7\xdd\x05\x8e\x93\x8d\x93\x92\x1a\x93\x86\x8f\x83\x7f\x83\x85\x79\x81\x1e\x0e\xfb\xc5\xf7\xa7\xf7\x82\x15\xfb\x42\xf7\xe8\x05"
+"\x9c\x82\x82\x92\x7f\x1b\x83\x86\x87\x83\x85\x8d\x83\x8e\x82\x1f\xf7\x17\xfb\xdd\xfb\x17\xfb\xdd\x05\x88\x84\x89\x83\x84\x1a\x83"
+"\x90\x87\x93\x97\x93\x91\x9c\x95\x1e\x0e\x39\xf8\xa3\x9c\x15\x7c\x9c\x85\x98\x9a\x1a\x91\x8c\x92\x8d\x93\x1e\xca\xf7\xc0\x05\x8f"
+"\x9d\x8d\x9a\x97\x1a\xa8\x7a\xae\x73\x9e\x1e\xa5\x6b\x5b\x97\x44\x1b\xfb\x31\x3a\x52\xfb\x16\x6f\x1f\xf7\x17\x06\xc2\x9c\xa9\x9f"
+"\xcc\x1b\xbe\xa1\x7e\x6d\x76\x7d\x75\x77\x81\x1f\x77\x80\x8b\x8b\x43\x81\x51\x82\x18\x5b\x83\x66\x7d\x6c\x75\x08\x56\x65\x6a\x4e"
+"\x4f\x1a\x65\x9d\x65\xa8\x73\x1e\x76\xa4\xad\x81\xb7\x1b\xc4\xbc\xa1\xc2\xc7\x1f\x88\x7c\x8b\x86\x84\x1a\x81\x8d\x85\x90\x80\x1e"
+"\xda\x06\x24\x64\x56\x56\x4d\x1a\x57\xba\x70\xe3\xa8\x9f\x8d\x92\xab\x1e\x95\xbf\x05\x83\x72\x77\x88\x6c\x1b\x68\x7b\x98\xa9\xba"
+"\xb5\xb9\xe4\xba\x1f\x97\x1d\x0e\x32\xf7\x31\xf7\x84\x15\xbc\xae\xa0\x99\xac\x1b\x9d\x90\x89\x73\xc8\x1f\x78\xba\xa4\x84\x9f\x1b"
+"\xa9\xac\x95\x9e\xa9\x1f\xa9\x9f\xa0\xa1\xb3\xc5\x50\xb2\x18\x62\x6a\x76\x7e\x6a\x1b\x76\x82\x8d\xa2\x56\x1f\x9e\x5c\x6f\x93\x72"
+"\x1b\x47\x5d\x68\x28\x4c\x1f\x98\xfb\x8b\x15\xbc\xaf\x9f\x99\xac\x1b\x9e\x8f\x89\x73\xc8\x1f\x78\xbb\xa4\x84\x9f\x1b\xa9\xac\x95"
+"\x9e\xa9\x1f\xa9\x9f\x9f\xa1\xb4\xc5\x4f\xb2\x18\x61\x6a\x77\x7f\x69\x1b\x76\x83\x8d\xa2\x55\x1f\x9e\x5c\x6f\x93\x73\x1b\x47\x5c"
+"\x68\x28\x4d\x1f\x0e\x39\x2d\x1d\xa9\xf8\x9a\x2e\x1d\xc9\xf7\x35\x2b\x1d\xf7\xfe\xf9\x5e\xf7\xac\x15\x7b\x77\x81\x7b\x7f\x75\x08"
+"\x81\x79\x7d\x65\x84\x1a\x82\x93\x84\x95\x94\x8e\x8d\x9f\x9b\x1e\xb3\xba\xab\xa4\xe5\xc1\x08\x9c\x94\x8d\x8e\x93\x1a\x94\x85\x91"
+"\x76\x96\x1e\x53\xa7\x4c\xbd\x66\xb7\x08\x98\x81\x83\x92\x86\x1b\x7e\x83\x85\x81\x78\xb0\x41\xa4\x6d\x1f\xfc\x3f\x06\xa4\xa9\xb1"
+"\xd6\x9d\x1a\x95\x83\x91\x7f\x86\x87\x88\x7a\x7c\x1e\x70\x69\x46\x53\x63\x76\x08\x63\x75\x84\x86\x83\x1a\x83\x8e\x86\x94\x86\x1e"
+"\xef\x4f\xa1\x7a\xba\x56\x08\x76\x9e\x8c\x8a\x94\x1b\x95\x92\x92\x94\x9f\x6b\xc8\x6c\xb3\x1f\x0e\xfb\x1e\xf7\x6e\xf9\x69\x15\xfd"
+"\x29\x07\xa4\x6d\x41\xb0\x79\x1b\x83\x83\x83\x83\x81\x8f\x86\x9b\x7e\x1f\xbb\x61\xa6\x69\xba\x3a\x08\x74\x98\x8e\x87\x92\x1b\x97"
+"\x8c\x8c\xac\x9e\x1f\xb0\xcc\xac\xb6\xba\xb3\x08\xa0\x9d\x8c\x8d\x94\x1a\x95\x84\x92\x82\x76\x4c\x6b\x6d\x65\x1e\xf9\x29\x07\x0e"
+"\xf7\xfe\xfa\x25\xf7\xad\x15\xc7\xfd\x29\x07\xa9\xb1\xab\xca\xa0\x1a\x94\x84\x92\x81\x82\x89\x8a\x76\x79\x1e\x67\x61\x63\x6b\x56"
+"\x6b\x08\x56\x6c\x8b\x8b\x7f\x1a\x84\x8f\x88\xa2\x7e\x1e\xdc\x5c\xad\x70\xb5\x5b\x08\x7b\x98\x90\x87\x95\x1b\x93\x93\x93\x93\x9d"
+"\x66\xd5\x72\xa9\x1f\x0e\xf7\xfe\xe1\xf7\xad\x15\xf9\x29\x06\x72\x6d\x66\x41\x79\x1a\x83\x93\x83\x93\x95\x90\x8f\x9b\x98\x1e\xb5"
+"\xbb\xad\xa6\xdc\xba\x08\xa2\x98\x8f\x8e\x92\x1a\x97\x8a\x8c\x6a\x9e\x1e\x4a\xb0\x60\xac\x63\xba\x08\xa0\x79\x89\x8c\x82\x1b\x81"
+"\x84\x84\x82\x76\xab\x4c\xa9\x65\x1f\xfd\x29\x06\x0e\xfb\x1e\xf7\x6e\x25\x15\xc7\xf9\x29\x06\x6d\xb1\xca\x6b\xa0\x1b\x94\x92\x92"
+"\x95\x94\x8a\x8d\x76\x9d\x1f\x61\xaf\x6b\xb3\x6b\xc0\x08\xc0\x6c\x8b\x8b\x7f\x1b\x84\x88\x87\x74\x7e\x1f\x5c\x3a\x70\x69\x5b\x61"
+"\x08\x7b\x7e\x87\x86\x81\x1a\x83\x93\x83\x93\x9d\xd4\xb0\xa4\xaa\x1e\x0e\xfb\x1e\xf7\x6f\xf7\x16\x70\x1d\xfb\x1e\xf7\x0d\x47\x15"
+"\x60\xf7\x9b\xb6\x07\xfb\x39\xf7\x96\x70\x1d\x7a\xa5\xfb\x6e\x15\x21\x0a\xbf\xf7\x8b\x05\x68\xb0\xbe\x79\xc6\x1b\xf7\x23\xf7\x0e"
+"\xf7\x17\xf7\x2c\xd2\x6d\xb4\x43\xa8\x1f\xe0\xb8\xb5\xc6\xd7\x1a\xec\x3d\xca\xfb\x0c\x36\x43\x70\x58\x5c\x1e\x63\x60\x79\x62\x76"
+"\x28\x08\xf7\x23\x99\x15\x98\xc8\x93\xa2\x9c\xa1\x08\xa6\x9f\xaf\x9d\xae\x1b\xb7\xa8\x6f\x60\x5b\x6e\x59\x63\x77\x1f\x79\x82\x78"
+"\x87\x65\x89\x79\x39\x18\x8c\x92\x95\x8b\x8d\x1b\xae\xa0\x86\x7e\x9d\x1f\xa4\x78\x9b\x6a\x6a\x1a\x2c\x42\x39\x36\x66\x69\x98\xa2"
+"\x72\x1e\x0e\x39\x4c\x0a\xf7\x06\xf8\x37\x2b\x0a\x39\x4c\x0a\x93\xf7\xa4\x15\xf7\x20\xf7\x27\x05\x3e\x06\x24\x2a\x4e\xec\x05\x3e"
+"\x06\xd2\xfb\x27\x05\x0e\x39\x79\x1d\x4b\xf8\x37\x29\x1d\x39\x4c\x0a\xb2\xf8\x27\x2e\x0a\x0e\x4f\xf7\xef\xf7\xbb\x15\x4f\xf7\x89"
+"\x05\xfb\x26\x06\xf7\x04\xfc\x03\xfb\xb4\xfc\x1b\x05\xf7\x2f\x06\xf7\x4c\xf7\xa5\xcf\xfb\xa5\x05\xf7\x28\x06\xfb\x0e\xf8\x1f\xf7"
+"\x9e\xf7\xff\x05\xfb\x2c\x06\x0e\xf7\xfe\xf8\x8b\xf9\x4b\x15\xfb\x5c\xfb\x36\xfb\x35\xfb\x5c\xfb\x58\xf7\x36\xfb\x36\xf7\x57\xf7"
+"\x59\xf7\x37\xf7\x37\xf7\x57\xf7\x58\xfb\x36\xf7\x39\xfb\x55\x1f\x87\xfb\xd0\x15\xfb\x52\xf7\x50\x05\xb8\xc2\xcc\xa2\xd1\x1b\xd0"
+"\xcb\x74\x60\xc4\x1f\xb3\x63\x15\xbb\x52\xa2\x4c\x42\x1a\x43\x74\x4b\x5d\x53\x1e\xfb\x54\xf7\x57\x05\xf7\x2c\xfb\x7f\x15\x5f\x54"
+"\x48\x73\x45\x1b\x45\x4b\xa2\xba\x50\x1f\xf7\x55\xf7\x55\x05\xfb\x7d\xfb\x2d\x15\x5f\xc1\x74\xcb\xd1\x1a\xd3\xa2\xcb\xba\xc4\x1e"
+"\xf7\x52\xfb\x50\x05\x0e\x9d\xf8\xd7\x16\x9f\x07\x84\x8d\x74\x90\x3e\x9e\x8b\x8c\x70\x9c\x19\x45\xbb\x64\xd8\xe4\x1a\x94\x07\x9b"
+"\x07\x9f\x67\x94\x7e\x97\x7c\x08\x5c\xb1\xc8\x6d\xc1\x1b\xe6\xd3\xd5\xe8\xe7\x4a\xd2\x39\x71\x80\x88\x79\x67\x1f\x88\x8a\x83\x86"
+"\x81\x87\x08\xa9\xb7\x94\xa5\xb0\x1a\xe5\x43\xd2\x2f\x2e\x44\x45\x31\x67\x92\x78\xad\x56\x1e\xa3\x58\x78\x91\x70\x1b\x3d\x49\x40"
+"\x33\x2d\xd3\x43\xe9\xdb\xd1\xbe\xe5\xb6\x1f\x8c\x72\x05\x83\x07\x54\x71\x45\x65\x5f\x1e\x5c\x5a\x8a\x8a\xfb\x0e\x6e\x83\x89\x18"
+"\x77\x07\x0e\xf4\xf8\x34\x83\x1d\xf8\x10\xf7\xb8\xa8\x0a\xd6\x91\xcf\xa2\x0a\x70\xf8\xb6\xf9\x2b\x23\x1d\x7d\x48\x20\x1d\x70\xfb"
+"\x12\x9e\x1d\x7f\x54\x05\x21\x0a\xf7\x13\xf8\xe8\x05\xc7\x06\x99\xce\x05\x4f\x06\x99\xcd\x22\x0a\xfb\x48\xfb\xb8\xe9\x1d\x36\x55"
+"\x6a\xb8\xd3\xf7\x0e\xd6\xf7\x01\xde\x1f\x0e\x6f\xf8\x0d\xf8\xa8\x15\x3a\x88\x59\x77\x56\x59\x08\x49\x4d\x61\x24\x29\x1a\xfb\x1a"
+"\xe5\x36\xf7\x22\xea\xe1\xb3\xd4\xc5\x1e\xba\xc6\xac\xee\xe0\x1a\xd4\x6e\xc3\x43\xcc\x1e\xfb\x0e\xf7\x03\x05\xf7\x7a\x06\xa3\xf7"
+"\x03\x05\xfc\x23\x06\x76\x2a\x05\xf7\x2c\xfb\x6c\x15\xc6\xaf\x5f\x41\x5b\x7b\x53\x71\x60\x1f\x57\x6b\x5c\x6e\x58\x1b\x51\x66\xb7"
+"\xd1\xf7\x13\xd9\xf4\xe9\x1f\x0e\xfb\x14\xf7\xa0\xf9\x89\x15\x42\xfb\x12\x4c\x31\xfb\x20\xfb\x44\xf0\xfb\x0f\xf7\x35\xfb\x78\x99"
+"\x61\xde\xf7\x20\xdf\xf7\x0b\xf7\x03\xf7\x1a\xfb\x0a\xf7\x25\x29\xf7\x1f\x4d\xf7\x00\x08\x0e\xfb\xc5\xf7\xa5\xf9\x7b\x52\x1d\x39"
+"\x65\x0a\xd4\xf8\x47\x82\x0a\x39\x4d\x0a\x91\xf7\xb7\x15\xf7\x1f\xf7\x27\x05\x3f\x06\x24\x2a\x4e\xec\x05\x3d\x06\xd3\xfb\x27\x05"
+"\x0e\x39\x4d\x0a\xad\xf8\x3a\x3b\x0a\xf7\xfe\xf9\x93\xf7\x6c\x15\xc8\xfc\x62\x07\x91\xf6\xc3\xbd\xf7\x01\x89\x08\xac\x0a\x42\x2c"
+"\x1a\xfb\x08\xb8\x38\xc2\x0a\xc9\xfb\xb7\x06\xfb\x01\x89\x53\xbd\x85\xf5\x08\x0e\x39\x4d\x0a\xf7\x15\xf8\x27\x2d\x0a\x70\xca\x16"
+"\x58\x1d\x89\x7f\x87\x74\x1f\x3b\xfc\x0b\x05\x6b\x84\x7d\x7f\x6d\x1b\x7c\x85\x48\x1d\xec\xf8\x5c\xb7\x1d\xfb\x20\x06\x0e\x39\xf8"
+"\x4f\xfb\x40\x15\x83\x76\x74\x88\x70\x1b\x6a\x79\x9a\xa7\xb1\xb1\xc3\xc3\xb8\x1f\xd2\xc1\xb3\xb8\xa5\xc1\x08\xfb\x1e\x06\x65\x77"
+"\x5f\x72\x5b\x1b\x52\x65\xaf\xc3\x95\x8c\x95\x8d\xa4\x1f\xf7\xff\x06\x8c\x0a\xfb\x0a\x27\x1a\xfb\x10\xe1\x37\xf7\x12\x9f\x97\x8c"
+"\x91\xa6\x1e\x35\x57\x70\x6b\x58\x1a\x57\xbc\x6e\xe0\xa5\x9e\x8d\x92\xaa\x1e\xfb\x60\xf8\xb3\x8f\x0a\x0e\xfb\x33\xf8\x09\xf7\xcb"
+"\x15\x32\x8c\x6d\x98\xb5\x1a\xb7\xb3\xab\xc2\xc1\xa4\x76\x5d\x8d\x1e\xf7\x20\x96\x06\xf0\x39\xc8\xfb\x1b\x45\x59\x7c\x6c\x61\x1e"
+"\x60\x6a\x73\x5d\x59\x1a\x61\x99\x6c\xa8\x74\x1e\x63\x7d\x79\x80\x78\x75\x08\x73\x70\x7c\x63\x66\x1a\x2e\xd9\x52\xf7\x10\xdc\xca"
+"\x1d\x50\x6b\x67\x74\x4f\x1b\x5c\x70\x9f\xae\xa9\x9d\xa7\xa8\x98\x1f\x9f\x94\x9d\x8d\xda\x8c\x08\x0e\xfb\x33\xf8\x09\xf7\xcb\x15"
+"\x36\x8c\x70\x98\xb5\x1a\xb7\xb0\xab\xbf\xc0\xa4\x76\x5d\x8c\x1e\xf7\x20\x06\x8c\x90\x8b\x90\x8c\x1a\xf0\x39\xc8\xfb\x1a\x47\x59"
+"\x7c\x6c\x63\x1e\x61\x6a\x74\x5d\x58\x1a\x62\x97\x6c\xa3\x74\x1e\x66\x7d\x79\x80\x79\x75\x08\x75\x71\x7d\x62\x66\x1a\x2e\xd6\x52"
+"\xf7\x0d\xdb\xca\x1d\x51\x6b\x66\x73\x51\x1b\x60\x72\x9f\xae\xa9\x9d\xa7\xa6\x98\x1f\x9f\x94\x9b\x8d\xd7\x8c\x08\xe9\xf8\xcc\x26"
+"\x1d\x54\xf8\xe6\xf7\xac\xc5\x0a\xc9\xf7\xb6\x15\xfc\x79\x06\x75\x27\x05\xf8\x79\x06\x51\xfb\xac\xc5\x0a\x0e\x65\xf8\xb8\xf7\x84"
+"\x15\x92\x07\x94\x07\x89\xd5\x86\xa8\x7c\xb2\x08\xde\x69\x3a\xbe\x28\x1b\xfb\x29\x2c\xfb\x00\xfb\x3e\xfb\x3c\xe6\x25\xf7\x2b\xf7"
+"\x06\xd7\xc0\xf2\xab\x1f\x8d\x90\x8d\x92\x05\x4b\x06\x8a\x89\x89\x86\x8a\x88\x08\x4f\x70\x53\x69\x42\x1b\x60\x68\x96\xa0\x73\x1f"
+"\x7b\x9a\x82\x9b\x80\xae\x8c\xe9\x18\xf7\xac\xc2\x15\xfb\xaa\xdc\x06\xcf\xab\xae\xa3\xce\x1b\xc1\xaf\x7b\x64\xac\x1f\x96\x7e\x8f"
+"\x84\x91\x7a\x08\x0e\x70\x82\x1d\x0e\x70\x82\x1d\xf7\x74\xc2\x1d\x69\xf8\x16\x81\x0a\xf8\x52\xf9\x6a\x15\x2a\x0a\x5e\xfb\x66\x72"
+"\xfb\xc9\x05\xcf\x06\xf6\xf7\xc9\x05\x3c\xfc\x06\x27\x1d\x0e\xfb\x6a\xbe\x16\xf7\xd9\xf8\xd5\xfb\xd9\x37\xf7\x85\xfb\x36\xfb\x85"
+"\x37\xf7\x85\xfb\x37\xfb\x85\x06\x0e\xf7\x04\xf7\xf4\xf7\x98\x15\xfb\x37\x60\xf7\x37\xfb\x3a\xbb\xf7\x3a\xf7\x35\xb6\xfb\x35\xf3"
+"\x06\xe7\xa2\xcc\xd9\xe2\x1a\xeb\x36\xdc\x27\x2a\x39\x38\x2a\x36\xcd\x3e\xe8\x74\x1e\xa6\xf7\xcb\x15\xd0\xc5\x50\x45\x43\x51\x51"
+"\x43\x43\x52\xc5\xd4\xd3\xc5\xc3\xd5\x1f\x0e\x39\xf8\x09\xf8\x40\x15\xfb\x08\x06\xaf\xf7\x38\x05\xf7\x92\x06\xa4\xf7\x0c\x05\xfc"
+"\x1e\x06\xfb\x2b\xfd\x5c\x20\x1d\xcd\xf7\xc8\x05\xf7\x07\x06\x49\xfb\xc8\x05\xf7\x17\x06\xba\xf7\x6d\x05\xda\x9b\xbe\xb7\xd4\x1b"
+"\x99\x62\x1d\x87\x8b\x86\x1b\x52\x4f\x61\x42\x5d\x1f\xa1\xf5\x05\xfb\x17\x06\x0e\x39\xf7\x3a\xfb\x6e\x15\xf7\x18\x06\xbb\xf7\x78"
+"\xf7\xcb\xf8\xa6\x28\x0a\xfb\x57\xfc\x14\x68\xf8\x14\x05\xfb\x28\x06\xe1\xfc\xa6\x05\x0e\x70\x60\x0a\xf7\x44\xf7\xd1\x15\x60\x7b"
+"\x68\x75\x57\x1b\x5c\x88\x0a\x70\x75\x1d\x90\xf7\xd4\x29\x1d\x70\x60\x0a\xf7\x05\xf7\x3e\x15\xa3\xf7\x04\x05\x48\x06\x92\xb8\xad"
+"\xaf\xb8\x93\x95\xb9\x18\x3f\x85\x48\x48\x80\x3d\x77\x2b\x18\x0e\x70\xf8\x9e\x29\x0a\x79\x38\x82\x9c\x84\x94\x77\xa2\x19\xaa\x70"
+"\x71\x97\x64\x1b\x3e\x3e\x64\x4a\x59\x1f\x53\x42\x67\x24\x30\x1a\x4b\x9c\x5a\xaf\x63\x1e\x6a\xaa\xb0\x7c\xbe\x1b\xd2\xc5\xa6\xbe"
+"\xb1\x1f\x7b\x42\x05\x4d\x7e\x4d\x5b\x48\x1b\x6c\x6e\x95\x9a\x7d\x1f\x83\x94\x87\x95\x9e\x1a\xfb\x25\x06\x8a\x82\x8a\x84\x87\x1a"
+"\x63\xaa\x5e\xb4\x76\x1e\x78\xae\xb6\x83\xc7\x1b\xf7\x3d\xf1\xcf\xf7\x18\xa7\x1f\xf7\x0a\xf8\xc2\x05\xfb\xa6\xfb\x00\x15\xc4\xac"
+"\x62\x42\xfb\x0c\x3d\x23\x32\x57\x6d\xb0\xcb\xf7\x0f\xd7\xf7\x06\xde\x1f\xf7\x0b\xf7\xcb\x49\x1d\x32\xf8\xae\xf3\x15\xfc\x7d\x06"
+"\x75\x23\x05\xf8\x7d\x06\xfc\x5f\xf7\x20\x15\xf8\xa3\xf7\x49\xa5\xf7\x0d\xfc\x56\xf7\x4a\x6f\xfb\x17\xf7\xb8\xfb\x03\xfb\xe7\xfb"
+"\x05\x05\x0e\x70\xf7\xf2\xf9\x34\x15\x97\xc4\x22\x0a\x7f\x52\x05\x4d\x27\x0a\xc9\x06\xfb\x12\xfc\xe4\x20\x1d\xd0\xf7\xd8\x05\xc7"
+"\x98\xc4\xb9\xc9\x1b\xb5\xa6\x74\x67\x83\x89\x7a\x87\x7b\x1f\x45\xfb\xde\x20\x1d\xd8\xf7\xfe\x05\x8f\x9d\x8d\x9f\x9b\x1a\xdc\x53"
+"\xbf\x33\x67\x63\x81\x7a\x69\x1e\x71\x7e\x7f\x7f\x70\x68\xa7\xf7\x16\x18\xf7\x48\x06\x9c\xdb\x05\x0e\x70\x86\x1d\x3c\xb1\x1d\x5f"
+"\xf7\xbc\x6f\x15\x9c\xde\xc7\xf3\xf7\x0b\xf7\x2b\xb4\xc0\x9b\xa0\x9a\xa3\x08\xb1\xca\x9d\xc2\xc1\x1a\xdc\x45\xcf\x36\x5b\x5f\x76"
+"\x65\x6b\x1e\x76\x72\x80\x75\x7e\x5d\x08\xf2\x67\x56\xbb\x3a\x1b\x36\x48\x46\x34\x4a\xa3\x57\xdc\xfb\x02\x1f\xf7\x2c\xfb\x60\xb2"
+"\x49\xa5\x24\x08\x0e\x69\x96\x16\xf8\xdb\xf8\x25\x06\xfb\xb8\xf7\xdc\xfb\xb7\xfb\xdc\x05\xbe\xfb\xf2\x15\xf7\xdc\x07\xf7\x84\xf7"
+"\xa2\xf7\x85\xfb\xa2\x05\xfb\xdc\x07\x0e\x2a\x1d\xf7\x46\xf9\x86\x9b\x1d\x39\xf7\xea\x87\x0a\xf7\xaa\xf7\x11\x9f\x0a\x7e\x4b\x5b"
+"\x0a\x7c\x85\x48\x1d\x0e\x2a\x1d\xf7\x6d\xf9\x66\x15\xfb\x9f\x27\x0a\xf7\x9f\x06\x0e\xd6\xf8\x37\xf7\xbd\x15\x6d\xae\x80\x96\x79"
+"\x9b\x08\xa8\x6b\x63\x9b\x65\x1b\x32\x38\x39\x34\x4a\xb9\x5d\xcd\xc5\xc2\xa7\xda\xf1\x1f\x37\xd7\xb0\x74\xc2\x1b\xe6\xde\xdc\xe3"
+"\xcc\x5d\xb9\x4b\x63\x5b\x7b\x6e\x5f\x1f\x75\x7c\x85\x87\x51\x60\x08\xa8\x6a\x15\xc7\xd5\xc4\xa9\xb6\x1b\xb3\xab\x6b\x65\x53\x54"
+"\x55\x52\x6f\x79\x93\xa9\x66\x1f\x74\x9e\x81\x95\x79\xa2\x08\x44\x16\x71\x75\x80\x83\x67\x75\x08\x6e\x5c\x73\x82\x6e\x1b\x62\x6b"
+"\xaa\xb3\xc4\xc1\xbf\xc5\xb4\xb9\x6c\x50\xba\x1f\x0e\xfc\x00\xf7\x50\xf8\x9f\x15\xb0\x85\xda\x82\xe8\xda\x1d\x8e\x8a\x80\x95\x1e"
+"\x81\x95\x97\x86\x98\x1b\xa6\xa0\xa1\xa7\xa9\x6f\xa3\x68\x60\x6c\x6c\x51\x7d\x1f\x7b\x4b\x86\x46\xfb\x45\x1a\xfb\x78\x07\x5f\x8f"
+"\x4e\x95\x22\xc0\x1d\x95\x8e\x0a\x0e\x69\xf7\xab\xf9\xb4\x15\xfc\xfa\x07\x5f\x8f\x4e\x95\x23\xc0\x1d\x94\x8e\x0a\xf8\xf2\x07\x0e"
+"\x69\xf7\xf4\xfb\x61\x15\xf8\xfa\x07\xb7\x87\xc8\x81\xf3\xda\x1d\x8d\x8a\x80\x96\x1e\x82\x95\x96\x86\x99\x1b\xa5\xa1\xa1\xa6\xaa"
+"\x6f\xa3\x68\x5f\x6c\x6c\x51\x7d\x1f\x7b\x4b\x86\x42\xfb\x41\x1a\xfc\xf2\x07\x0e\xdc\xf8\xeb\x16\xf7\xa1\x07\xf7\x29\x86\xb1\x71"
+"\xb7\x1e\xd1\x61\x3e\xb4\x31\x1b\x38\x46\x6a\x4d\x5e\x1f\x66\x5a\x85\x67\xfb\x36\x1a\xfb\xa1\xd1\xf7\xa4\x07\xf7\x05\x91\xba\x9d"
+"\xad\x1e\xbd\xa6\xc5\xad\xc8\x1b\xc4\xc2\x6e\x5d\xa8\x1f\xa2\x67\x91\x62\xfb\x12\x1a\xfb\xa4\x07\x0e\xf8\x32\xf8\xa3\xf9\x6e\x15"
+"\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37\xf7\x37\xfb\x5e"
+"\x1f\xfb\x01\xfb\x63\x15\xa9\xa4\x72\x6d\x6d\x72\x72\x6d\x6d\x72\xa4\xaa\xa8\xa5\xa4\xa8\x1f\xfb\x14\xfb\x05\x15\x96\x59\x96\x75"
+"\xa5\x6d\x08\x54\xbb\xc7\x71\xdc\x1b\xdc\xc7\xa5\xc2\xbb\x1f\xa5\xa9\x96\xa1\x96\xbd\x84\x36\x80\x62\x6d\x5e\x08\x4c\x61\x4b\x6b"
+"\x38\x1b\x3e\x4f\xa6\xc1\x61\x1f\x67\xba\x7c\xb8\x84\xe8\x08\xf7\xee\xf7\x05\x15\xa9\xa4\x72\x6d\x6d\x72\x72\x6d\x6d\x72\xa4\xaa"
+"\xa8\xa5\xa4\xa8\x1f\x0e\xf7\xd2\xf8\xb0\x23\x1d\xfb\x07\xfc\xb0\x05\xd4\x06\x2e\x53\x67\x61\x57\x1a\x57\xb8\x6c\xd5\x9e\x8e\x8b"
+"\x94\xb4\x1e\x96\xbf\x05\x82\x6d\x86\x8a\x7c\x1b\x6c\x7b\x9a\xa6\xb8\xaf\xbd\xcb\xb8\x1f\xf7\x2f\xf9\x6d\x23\x1d\x71\xfb\x11\x20"
+"\x1d\x0e\x47\x0a\x0e\x47\x0a\xbd\xf9\x7b\x44\x0a\x47\x0a\xb0\xf9\x7b\x52\x1d\x47\x0a\xf7\x29\xf9\xa9\x26\x1d\x2a\x1d\xf7\x67\xf9"
+"\x7c\x15\x69\x7e\x79\x7a\x74\x1b\x80\x88\xe0\x1d\x73\x1b\x54\x60\x61\x40\x74\x1f\xc1\x06\xac\x9b\x9b\x9a\x9d\x1b\x93\xa1\x84\x84"
+"\x99\x1f\xbe\x72\x05\x85\x98\xa0\xdf\x1d\x96\xa0\x96\xb3\x08\x0e\xf7\xd9\xf8\xb0\x5b\x0a\x7d\x84\x48\x1d\xc4\xf9\xe7\x39\x0a\x43"
+"\xf7\xa6\xf7\xde\x15\xb8\xf7\x66\x5d\x1d\xaf\xf7\x3b\xd8\xd1\xd9\xfb\x81\x05\xf7\x27\x06\xfb\x0b\xf7\xd8\xf7\x87\xf7\x6c\x05\xfb"
+"\x3e\x06\x0e\x39\x7b\x0a\x5a\xfc\x1a\x3c\x0a\x5f\x68\x66\x5f\x83\x81\xb2\x0a\xa0\xeb\x18\x0e\x39\xf7\xcc\xf8\xb0\x23\x1d\xfb\x05"
+"\xfc\xb0\x9a\x1d\x0e\x47\x1d\xf7\x9f\x56\x0a\x39\x9b\x16\xf7\x26\x06\xf7\x50\xf7\xec\xbc\xfb\xec\x05\xf7\x26\x06\xfb\x1c\xf9\x6d"
+"\x22\x0a\xb5\xfb\x82\x05\x0e\xfb\x82\x47\x1d\xf7\x6b\xf9\x6d\x31\x0a\x47\x1d\xfb\x24\x4f\x31\x0a\xfb\x33\xf7\xff\xce\x1d\xf7\xe6"
+"\xf8\x53\x27\x1d\x0e\x32\xf8\xa5\xf3\x15\xfc\x7d\x06\x75\x23\x05\xf8\x7d\x06\xf7\x19\xf9\x04\x15\xfc\xa4\xfb\x49\x72\xfb\x0d\xf8"
+"\x56\xfb\x4a\xa7\xf7\x17\xfb\xb8\xf7\x03\xf7\xe7\xf7\x05\x05\x0e\x39\xf8\x4f\xf7\xd0\x15\x97\xc2\x05\xfb\x1f\x06\x8a\x91\x89\x95"
+"\x87\x9c\x82\xab\x19\x81\xb1\x89\x93\xa0\x1d\xfb\x1c\x3b\x47\x72\x5b\x57\x1e\x5a\x5e\x6d\x4d\x51\x1a\x71\x8f\x79\x9e\x54\x1e\x8e"
+"\x84\x05\x4f\x06\x7f\x54\x05\xe4\x06\x8c\x86\x05\x87\x07\x8c\x84\x8c\x86\x8c\x82\x08\x24\x06\x7f\x54\x05\xf7\x04\x06\x81\x53\x63"
+"\x61\x31\x56\xac\x26\x18\xa0\xbc\xa8\x92\xb0\x1b\xa6\xa2\x87\x80\xb8\x1f\x7f\xbc\x9f\x88\xa6\x1b\xbc\xb5\x97\xac\xcb\x1f\x79\xf7"
+"\x02\x05\x76\x5e\x6a\x82\x67\x1b\x7a\x74\x8e\x90\x71\x1f\x94\x5f\x88\x8b\x79\x1b\x6c\x7e\x87\x6e\x4b\x1f\xd9\xc1\xb8\xba\x9b\xb7"
+"\x08\xf7\x02\x06\x97\xc2\x05\xfb\x02\x90\x06\x93\x8b\x8e\x89\x99\x1e\x0e\xf7\x5e\x16\xf7\x10\xf8\xda\x7c\x0a\x0e\xf7\x04\xf8\x14"
+"\xf8\x82\x15\x9f\x64\x72\x92\x6a\x1b\x27\x37\x38\x29\x2a\xe5\x36\xf2\xab\xa9\x93\x9b\xa6\x1f\xbe\xaa\xae\xc4\xbf\x1a\xb6\x78\xbd"
+"\x68\xc0\x1e\xf7\x2a\xf7\x2a\x8e\x79\xa1\x52\x9a\x6e\x19\x77\x96\x90\x85\x95\x1b\x92\x90\x90\x92\x8e\x8b\x8b\x88\x9d\x1f\x84\xae"
+"\x89\xa1\xa6\x1a\xab\x91\xbd\x92\xa2\x1e\x8d\x90\x8b\x8d\x8d\x1a\x91\x87\x8f\x84\x88\x88\x8b\x8a\x88\x1e\x81\x69\x6d\x87\x67\x1b"
+"\x70\x75\x8d\x92\x68\x1f\x8e\x79\x8b\x8b\x88\x1b\x85\x85\x84\x85\x7b\xb5\x73\xc2\x7a\x1f\xa2\x84\x91\x89\x05\xfb\x8c\xfb\x41\x15"
+"\xd3\xc7\x4e\x42\x41\x4f\x4f\x41\x40\x4f\xc7\xd6\xd5\xc7\xc6\xd8\x1f\x0e\xfc\x22\xf7\x7b\xc1\x0a\x0e\xfb\x1e\xf7\x7f\xf7\x53\x15"
+"\x93\x75\x7b\x8f\x7a\x1b\x46\x4f\x52\x49\x65\xa8\x73\xb8\xbe\xba\xa4\xb5\xa9\x1f\xa0\xa9\x94\xaa\xb8\x1a\xf7\xd4\x07\xab\x85\xa1"
+"\x7b\xa2\x66\x08\xa3\x65\x95\x65\x55\x1a\x59\x81\x61\x73\x51\x1e\xa8\x06\xb2\xb9\xa0\xc7\xcc\x1a\xdc\x6b\xdb\x4c\xd6\x1e\x53\xce"
+"\x89\x8d\x83\x95\x86\x92\x19\xcb\x5b\x07\x0e\xf7\x04\xf7\x95\xf9\x19\x15\xfc\x59\x8b\x0a\xf7\xf0\x07\xf7\xb5\x5f\x05\xfc\x03\x8b"
+"\x0a\xf8\x52\x07\x0e\x70\x34\x1d\xf7\xa8\xf7\x6d\x2b\x0a\xd1\xf7\xa5\xf8\xb0\x15\xfb\x07\xfc\xb0\x05\x58\x1d\x8a\x80\x85\x73\x1f"
+"\x49\xd6\x1d\x9e\x9c\x1a\xdb\x51\xbf\x32\x41\x55\x70\x4b\x55\x1e\x9d\xdd\x05\xfb\x94\xf7\x51\x31\x0a\x70\x34\x1d\xf7\x34\xd1\x3a"
+"\x0a\xd3\xfb\x27\x05\x0e\x70\x34\x1d\x34\xfc\xec\x3c\x0a\x5f\x68\x66\x5f\x68\x1d\x95\xd9\xa0\xeb\x18\x0e\xf7\xfe\xf8\xa4\xf7\x6c"
+"\x15\xf7\x83\xc8\xfb\x60\x06\xe3\xf7\x2f\x05\xf7\x08\xc9\x3a\x06\xac\xc6\x61\xa3\x5c\x38\x05\xfb\x23\x06\x38\x68\x84\x72\x65\x1f"
+"\x4b\x60\x69\x42\x2c\x1a\xfb\x08\xb8\x37\xdc\x69\x1e\x6a\x52\xb6\x74\xb1\xce\x05\x88\xa5\x97\x8a\xb5\x1b\xf7\xac\xc9\xfb\xb7\x06"
+"\x77\x85\x8b\x8c\x82\x1f\xaa\xf7\x2d\x15\x3a\xfb\x21\x57\x9d\x6c\xbe\x88\xd3\x19\xf7\xb6\xf7\x6c\x15\x33\xfb\x2f\x05\xfb\x5e\x06"
+"\x91\xf6\xc3\xbd\xf7\x01\x89\x08\x0e\x32\xf7\x04\xbf\x15\x5b\x4c\xea\x4c\xec\xf7\x12\x05\xf7\xa5\x06\xa4\xf7\x0c\x05\xfb\x63\x06"
+"\xe8\xf7\x0c\x20\x1d\xa4\xf7\x0c\x05\x42\x06\xc0\xd0\x2c\xca\x25\xfb\x18\x05\xfb\xa0\x31\x1d\xf7\x5d\x06\x2e\xfb\x0c\x05\xfb\x1a"
+"\x31\x1d\x0e\x39\xf7\xf1\x16\xf7\xc1\xf8\xb0\x05\xfb\x2b\x06\xfb\x55\xfc\x1f\x6a\xf8\x1f\x05\xfb\x25\x06\xd5\xfc\xb0\x05\x0e\x70"
+"\x36\x0a\xf7\x35\xf7\xd1\x53\x1d\x70\x36\x0a\xf7\x17\xf7\xd4\x49\x0a\xd2\x06\xf7\xed\xf7\x27\x49\x0a\xd2\x06\x0e\x70\x36\x0a\xf7"
+"\x6b\xf7\xb1\x15\xfb\xc0\x27\x0a\xf7\xc0\x06\x0e\xf7\x58\x71\x1d\x0e\xf7\x58\x71\x1d\xfb\x1b\xc2\x1d\x70\x81\x1d\x0e\x70\x81\x1d"
+"\xf7\x08\xf7\xf5\x26\x1d\xf7\xe9\xbd\x16\xfa\x04\xcd\xfd\xc2\xf9\xb8\x49\x06\x0e\x70\x73\x1d\xec\xf8\x01\x2b\x0a\xfb\x24\xf5\xf9"
+"\x32\x15\xac\xd5\x8b\x8b\xb1\x1b\xb9\xb2\x79\x69\xa3\x1f\xad\x5c\xa0\x40\x41\x1a\x6e\x89\x74\x83\x4f\x1e\xc0\x46\x70\x97\x55\x1b"
+"\x5a\x64\x7b\x69\x69\x1f\x5d\x5c\x6f\x48\x4a\x1a\xfb\x01\xde\x36\xf6\xd7\xc8\xb4\xd8\xb6\x1e\xb1\xcf\xa7\xf7\x16\xf3\x1a\xf7\x5c"
+"\xfb\x03\xf7\x25\xfb\x2d\x5e\x5c\x81\x79\x63\x1e\xf7\xbf\xfc\x36\x15\x7e\x33\x83\x6a\x7c\x5f\x08\x3d\x70\x5e\x5f\x54\x1b\x53\x6a"
+"\xbe\xe1\xf7\x08\xcd\xea\xdc\xb5\xb0\x76\x63\xa5\x1f\x0e\xf8\x66\xf7\x9f\xf7\x8c\x15\xec\x06\xd6\xc7\xa5\xc2\xbd\x1f\xbe\xc3\xab"
+"\xdb\xd5\x1a\xc0\x75\xbc\x64\xaa\x1e\xa8\x68\x64\x96\x4b\x1b\xfb\x64\x06\xfb\x2b\xfd\x5c\x20\x1d\xd9\xf8\x01\x15\xbb\xf7\x77\x05"
+"\xca\x06\xc6\xac\x6d\x55\x6a\x80\x66\x7c\x75\x1f\x68\x72\x68\x7b\x55\x1b\xf8\x2a\xfb\xab\x15\x89\x81\x85\x8a\x82\x1b\x75\x7b\x95"
+"\x9a\x8c\x1f\x8f\x8d\x97\x8f\x9d\x1e\x9f\xe6\x05\xcd\x06\x9d\xe1\x05\x49\x06\xa4\xf7\x0b\x05\xfb\x17\x06\x72\xfb\x0b\x05\x57\x06"
+"\x79\x35\x05\xbf\x06\x6f\xfb\x15\x05\x88\x7d\x89\x7b\x80\x1a\x53\xb3\x6d\xd7\xa5\x96\x8d\x94\xa5\x1e\xf8\x02\xf7\x82\x15\x8f\x99"
+"\x8c\x91\x93\x1a\xc1\x5a\xae\x3e\x59\x62\x7e\x71\x6f\x1e\x70\x72\x7a\x67\x68\x1a\x64\xa3\x73\xc4\x79\x1e\xb7\x7c\x05\xab\x81\x8f"
+"\x89\x81\x1a\x78\x7a\x80\x6c\x69\x7b\x96\xa1\x8a\x1e\x26\x06\x89\x80\x8b\x87\x85\x1a\x52\xc2\x65\xdd\xf7\x00\xcd\xc1\xe3\xb0\x71"
+"\xa5\x57\x9a\x1e\x54\x9c\x05\x73\x92\x87\x8e\x96\x1a\x9c\x99\x93\xa7\xa4\x98\x84\x7d\x86\x8a\x88\x88\x86\x1e\x0e\xcd\xf7\xc1\xe2"
+"\x15\x70\x8e\x7e\x8f\x7d\x96\x08\x6f\x9f\x7b\xb2\xba\x1a\xea\xb8\xea\xcd\xb6\x1e\x9d\xe2\x05\xfb\x32\x65\x22\xfb\x1d\xfb\x3f\x1a"
+"\x55\x99\x60\xaa\x69\x1e\xaf\x61\xbb\x78\xdd\x85\x5f\xfb\x61\x18\xf7\x17\x06\xb7\xf7\x61\xe6\x91\xc6\xa1\xc4\xbc\x19\xd6\xcb\xb9"
+"\xf3\xf6\x1a\xf7\x1e\x2d\xd3\xfb\x49\x72\x7c\x8a\x88\x72\x1e\xf7\x01\x26\x15\xa7\x88\x97\x87\x9a\x81\x08\xa6\x78\x9c\x63\x5c\x1a"
+"\x54\x78\x4f\x6d\x60\x1e\x69\x5b\x67\x75\x53\x85\x08\x0e\xd5\xf9\xa1\x29\x0a\xfd\x07\x4e\x1d\xd8\x06\x30\xfc\x40\x05\x6c\x1d\xf7"
+"\x5c\x06\x30\xfc\x40\x05\x6c\x1d\xd1\x06\x0e\xf7\xfa\xf7\x80\xfb\x30\x15\x3e\x36\xf7\x8f\x06\x8a\xe0\x05\x40\xf9\xab\xf7\xfe\xfd"
+"\xab\x45\x06\x8c\x36\x05\xf7\x84\xe0\x42\xf9\xab\xf0\xe0\xfd\x8f\x36\xf3\x06\x0e\xf7\xfe\xf9\x93\xc9\x15\xfb\xb7\x06\xfb\x0d\x57"
+"\xc2\xf7\x16\xf7\x15\xbf\xc3\xf7\x0d\x1f\xac\x0a\x43\x2b\x1a\xfb\x07\xb8\x37\xc2\x0a\x06\x0e\xf7\xfe\xf7\x7d\xc9\x15\x4d\xf7\xac"
+"\x07\xde\xae\x92\xa4\xb1\x1f\xcc\xb6\xac\xd4\xee\x1a\xf7\x03\x5d\xe0\x3d\xac\x1e\x99\x69\x70\x8f\x46\x1b\xfb\xac\x4d\xf7\xb7\x06"
+"\xf7\x0d\xbf\x54\xfb\x16\xfb\x16\x57\x54\xfb\x0d\x1f\x0e\xf7\x1b\xf7\xa6\xfb\x6e\x15\xf7\x19\x06\xb6\xf7\x60\x05\xdf\xbe\x97\xac"
+"\xc1\x1f\xd1\xb9\xa4\xb7\xa5\xf7\x13\xc9\xf7\xb8\x18\xfb\x20\x06\x4f\xfb\xb1\x75\xfb\x03\x5f\x5a\x38\x89\x19\xea\xf8\x53\x05\xfb"
+"\x19\x06\x2c\xfc\x53\x05\x4c\x8e\x70\xa5\xc5\x1a\x9b\x8f\xaa\x91\xa7\x1e\xc7\xf7\xb1\x22\x0a\x4d\xfb\xb8\x05\x85\x6b\x87\x6d\x72"
+"\x1a\x64\x9c\x62\xa8\x6e\x1e\xb5\x61\xb5\x7a\xda\x84\x08\x0e\xf8\x04\x22\x1d\xfb\x1c\x06\x74\xfb\x01\x05\x86\x74\x88\x76\x82\x1a"
+"\x54\xb8\x64\xce\x87\x1e\x94\xb9\x05\x60\x94\x76\x9e\xab\x1a\x92\x8c\x93\x8d\x99\x1e\xdc\x06\x0e\xfb\x8d\x8d\x1d\xf7\x4a\xf7\x6d"
+"\x2b\x1d\x32\xf9\x36\xfa\x25\x15\xfb\xbb\xfd\xa8\xfb\x02\xf8\x20\xfb\x37\x42\x96\x6a\xf3\xb9\xf7\x1b\xfc\x85\xf7\xf5\xfa\x44\x05"
+"\x0e\xfb\x8d\x65\x1d\x9c\xbe\xb4\xde\x1b\x9a\x62\x1d\x87\x8b\x86\x1b\x4a\x4b\x61\x42\x5d\x1f\xa2\xf5\x05\xd7\xd1\x3a\x1d\xfb\x8d"
+"\x65\x1d\x9d\xbd\xb4\xde\x1b\x9a\x95\x8a\x88\x9c\x1f\xa9\xf7\x22\x05\x8c\x83\x88\x8b\x85\x1b\x4b\x4b\x61\x42\x5d\x1f\xa1\xf5\x05"
+"\xfb\x96\xfc\xec\x31\x0a\x55\xf9\x0c\xf8\x0c\x15\xfc\x8c\x06\x4e\xfb\xb6\x05\xf7\x0b\x06\xaf\xf7\x3e\x05\xf8\x15\x06\x0e\x6a\x97"
+"\xfb\x6e\x15\x21\x0a\xc7\xf7\xaf\x94\x7a\x8f\x83\x94\x81\x19\x6b\xa6\xbc\x76\xbe\x1b\xf7\x2a\xf7\x15\xf7\x33\xf7\x4e\xf7\x21\x35"
+"\xe2\xfb\x20\x3d\x45\x6e\x56\x55\x1f\x57\x57\x72\x53\x72\xfb\x07\x08\xf7\xbd\xf7\x53\x15\xc6\xab\x63\x41\xfb\x11\x43\x20\x36\x54"
+"\x64\xb8\xc9\xc1\x9c\xca\xa6\xba\x1f\xba\xa6\xb6\xa7\xb9\x1b\x0e\x39\x61\x0a\xf7\x0d\xf8\x1b\x2b\x1d\x39\xf7\xb4\x75\x15\xf7\x3a"
+"\xf4\xdd\xf7\x13\x95\x0a\x6a\x85\x8a\x87\x89\x82\x1e\xf7\x1b\x06\x8f\x9d\x8c\x93\x97\x1a\xe6\x3f\xc1\xfb\x12\x3c\x48\x76\x65\x60"
+"\x1e\x60\x65\x6f\x52\x59\x1a\x52\xb4\x65\xe3\x6e\x1e\xda\x72\x05\xca\x77\x98\x82\x74\x1a\x6b\x60\x74\x4e\x48\x67\xa2\xb8\x88\x1e"
+"\xfb\x1d\x06\x88\x7d\x8a\x84\x82\x1a\x54\xb2\x58\xc7\x74\x1e\x7e\xab\xa3\x85\xa2\x1b\x55\x36\xbc\x0a\x6d\x78\x65\x6f\x56\x1d\x64"
+"\x7b\x7f\x89\x87\x7c\x1f\x0e\x39\x61\x0a\x51\xf8\x1b\x15\xfb\x20\xfb\x27\x05\xd8\x06\xf2\xec\xc8\x2a\x05\xd8\x06\x44\xf7\x27\x05"
+"\x0e\x39\xf8\xdc\xf8\x02\x5e\x1d\x3b\x4a\x77\x64\x5f\x1e\x5f\x65\x70\x53\x58\x1a\x52\xb3\x65\xe4\x6e\x1e\xda\x72\x05\xca\x77\x98"
+"\x82\x74\x1a\x6b\x60\x74\x4e\x68\x6c\x93\x99\x78\x1e\x7d\x97\x85\x96\x8a\xa2\x08\xfb\x1d\x06\x88\x7e\x8a\x84\x82\x1a\x5d\xa8\x5c"
+"\xb7\x72\x1e\x74\xb2\xba\x81\xc9\x1b\xf7\x3e\xf7\x00\xdd\xf7\x14\x95\x0a\x69\x86\x8a\x87\x89\x82\x1e\xfb\x83\xfc\x3e\x15\x73\xfb"
+"\x04\x05\xce\x06\x84\x5e\x69\xc3\x1d\xfb\x33\xf7\x93\xc1\x0a\xf7\x60\xf7\x94\x15\x41\x06\x55\xfb\x94\x05\xc4\x06\x0e\xa5\xf8\x91"
+"\x29\x0a\x93\x67\x7a\x8d\x70\x1b\x37\x3c\x6b\x54\x56\x1f\x4b\x48\x63\x26\x29\x1a\xfb\x1a\xe5\x35\xf7\x21\xde\xd9\xa9\xc1\xc3\x1e"
+"\xc5\xc3\xb0\xe2\xdb\x1a\xc8\x7b\xb6\x66\xb3\x1e\xf7\x07\x06\xa3\xf7\x04\x05\xfb\xd0\x23\x15\xc8\xae\x61\x40\x5c\x7b\x53\x73\x61"
+"\x1f\x54\x6a\x5e\x6e\x58\x1b\x4e\x67\xb6\xd2\xf7\x12\xd8\xf5\xe8\x1f\x0e\xf8\x13\xf8\x93\xf9\x6e\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb"
+"\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37\xf7\x37\xfb\x5e\x1f\x5a\x04\xf7\x43\xf7\x21"
+"\xfb\x21\xfb\x43\xfb\x44\xfb\x21\xfb\x20\xfb\x45\xfb\x43\xfb\x1f\xf7\x22\xf7\x47\xf7\x3e\xf7\x23\xf7\x21\xf7\x41\x1f\xfb\x01\xfb"
+"\x37\xa1\x0a\xfb\x14\xfb\x00\x15\x92\x36\x96\x62\xa9\x5e\x08\x4c\xb5\xcb\x6b\xde\x1b\xd8\xc7\xa6\xc1\xb5\x1f\xaf\xba\x9a\xb8\x92"
+"\xe8\x80\x59\x80\x75\x71\x6d\x08\x54\x5b\x4f\x71\x3a\x1b\x3a\x4f\xa5\xc2\x5b\x1f\x71\xa9\x80\xa1\x80\xbd\x08\xf7\xee\xf7\x00\xa1"
+"\x0a\x0e\x20\xf7\xc0\xf7\x99\x15\x7f\x07\x44\x6b\x45\x5a\x66\x1e\x6c\x62\x56\x7a\x57\x1b\x7e\x74\xf8\x77\xa2\x06\xfb\x32\x91\x3c"
+"\xe3\x8e\xf7\x3d\x08\x35\xb9\xb6\x6d\xda\x1b\xcd\xc4\xca\xd4\xd0\x73\xb0\xfb\x01\xef\x1f\xfb\x02\xf1\x7a\xa5\x63\xf7\x09\x7c\x30"
+"\x4d\x31\x23\x38\x08\x3c\x49\x67\x51\x4c\x1a\x40\xc8\x4d\xd4\xb4\xb4\x9c\xa9\xac\x1e\x9e\x9d\x96\x9a\x9c\xb0\x08\x0e\xf7\xfa\xf9"
+"\x6a\xf9\x7e\x15\xfc\x7f\x38\x06\xf7\x55\xfb\xe8\xfb\x55\xfc\x06\x05\x36\xf8\x87\xf7\x7d\x2d\x07\x89\xfb\x1e\x05\xfb\xb2\x06\xf7"
+"\x4f\xf7\xfe\xfb\x4e\xf7\xda\x05\xf7\xaa\x06\x8f\xfb\x1e\x05\xe6\x06\x0e\xf7\xab\xf7\x94\xf8\xa3\x15\x73\x74\x6c\x42\x67\x1a\xfb"
+"\x10\x4f\xf7\x10\x06\x68\x9c\x60\xb0\x54\x1e\x34\x34\xb4\x62\xe3\xe2\x9d\x78\xa1\x7e\xa1\x86\x19\xce\x7a\x8e\x8a\x05\xfb\x0f\xc6"
+"\xf7\x0f\x07\x8f\x8c\xb2\x95\xa5\x91\x8d\x8c\x19\x96\x90\x9e\x96\xab\xa0\xe3\x34\x18\xb4\xb4\x34\xe2\x9d\xa6\x99\xa4\x8f\x96\x19"
+"\x8e\x92\x90\x9f\x96\xb6\x08\xf7\x0f\xc7\xfb\x0f\x06\x81\xb3\x85\xa2\x88\x92\x87\x96\x7d\xa4\x79\xa6\xe2\xe1\x18\x62\xb4\x33\x35"
+"\x6d\xa6\x7e\x91\x31\xa1\x19\xf7\x0e\x50\xfb\x0e\x07\x88\x8a\x48\x79\x84\x89\x77\x7f\x68\x74\x19\x33\xe2\x62\x62\x05\xf7\xba\x50"
+"\x15\xef\xde\x36\x26\x24\x38\x37\x24\x22\x3a\xdd\xf5\xf3\xde\xdc\xf5\x1f\x0e\xfb\x79\xf7\x1b\x16\x6c\x1d\xf7\x05\x06\xa3\xf7\x04"
+"\x05\xfc\x09\x4e\x1d\xf7\x0c\x06\x0e\xfb\xc5\x92\x0a\x77\x2b\x05\x4f\x06\x7d\x48\x05\xc6\x06\x68\xfb\x3d\x05\x87\x7d\x8a\x7e\x7d"
+"\x1a\x53\xb3\x6d\xd4\xac\xa3\x8e\x93\xa7\x1e\x9f\xed\x05\x89\x7d\x84\x8a\x7f\xe3\x1d\xa7\xf7\x17\x05\xd3\x06\x99\xce\x05\x44\x06"
+"\x9f\xeb\x05\xd9\x06\x0e\xfb\x8d\x6f\x0a\xc9\xf8\x1d\x3c\x0a\x5e\x68\x67\x5e\x83\x82\xb2\x0a\x9f\xeb\x18\x0e\xfb\xc5\xf7\x52\x75"
+"\x15\x8a\x94\x92\x8b\x95\x1b\xaa\xa3\x8e\x93\xa7\x1f\x9f\xbe\x0a\x8f\x8d\x98\x8f\x9c\x1f\xc9\xf7\xba\x05\xd9\x06\x9f\xe8\x05\x85"
+"\x0a\x69\x9b\x71\xa9\x7d\x1e\x4e\x2c\x05\x95\xa3\x97\x8e\x9c\x1b\xa5\x9d\x7e\x78\x71\x6e\x78\x65\x6e\x56\x1d\x63\x7c\x7f\x89\x87"
+"\x7b\x1f\x0e\x3b\xf8\x3b\xf9\x76\x15\x2a\x38\x5b\x33\x54\x1f\x51\x30\x5e\xfb\x40\xfb\x11\x1a\x4c\x9f\x4a\xac\x61\x1e\x5f\xae\xc2"
+"\x73\xce\x1b\xed\xd7\xbd\xf3\xca\x1f\xbe\xe0\xb7\xf7\x3e\xf7\x03\x1a\xf7\x30\x43\xe1\xfb\x18\x1e\xfb\x3b\xfb\xd4\x15\x98\xc4\x91"
+"\xa0\x98\xaa\x08\xc9\xa3\xb9\xaf\xc1\x1b\xc2\xa7\x6a\x49\x6d\x88\x71\x82\x57\x1f\x77\x2e\x15\x7c\x44\x82\x6e\x79\x62\x08\x4f\x70"
+"\x60\x69\x58\x1b\x57\x6c\xb0\xca\xb0\x8f\xaa\x9a\xce\x1f\x0e\xfb\xc5\xf8\x15\xf9\xa9\x26\x1d\x70\x4f\x0a\xf7\x1a\xf9\x86\x82\x0a"
+"\x70\x87\x1d\xf7\x00\x8a\x0a\x70\xf8\xb1\x16\xf7\x07\xf8\xb0\x05\x64\x1d\x93\x91\xa5\x9d\x1d\xf7\x5f\xf9\x66\x2d\x0a\x35\xf8\x9a"
+"\xfb\x6e\xeb\x1d\xb8\xf7\x67\x57\x0a\x0e\xfb\xc5\xa6\x0a\x70\x46\x0a\xfb\x28\x4f\x15\x74\xfb\x04\x05\xcd\x06\x85\x5e\x69\x67\x5e"
+"\x68\x1d\x96\xd9\x9f\xeb\x18\x0e\xfb\xc5\x92\x0a\x45\xfb\xe0\x05\x87\x7d\x8a\x7e\x7d\x1a\x53\xb3\x6d\xd4\xac\xa3\x8e\x93\xa6\x1e"
+"\xa0\xed\x05\x89\x7d\x83\x8a\x80\xe3\x1d\xca\xf7\xba\x05\xd9\x06\xfb\xac\xfc\x84\x31\x0a\xfb\xc5\xf8\x67\xf9\x66\x2d\x0a\x55\x0a"
+"\xac\x79\x16\xf9\x56\x06\x22\xf9\x6d\x05\xfb\x4e\x06\xfb\x51\xfc\xf0\x15\xf7\x95\xf8\x60\xc8\xfc\x60\x05\x0e\xf7\x23\xf8\x02\x62"
+"\x0a\x0e\x68\xf7\x43\x29\x0a\xfb\x35\xfd\x8a\x05\xf7\x19\x06\xc3\xf7\x9b\x05\x60\x97\xa3\x77\xb5\x1b\xbf\xb4\xa4\xc8\xb7\x1f\x7c"
+"\x47\x05\x63\x1d\x43\xfb\xe6\x05\x49\x7d\x5c\x63\x4c\x1b\x58\x6b\xa6\xb6\x95\x8d\x99\x8d\x98\x1f\xd3\xf7\xe5\x05\x0e\x21\xf8\xe8"
+"\xf7\xe0\x15\x8a\xc7\x83\xaa\x75\xaf\x08\xc5\x67\x45\xac\x34\x1b\x38\x47\x6e\x51\x56\x1f\x54\x50\x69\x33\x3b\x1a\xfb\x00\xc7\x3b"
+"\xf7\x02\x63\x1e\xbe\x78\x05\xba\x7a\x94\x83\x71\x1a\x78\x83\x78\x73\x65\x1e\x66\x52\x8b\x8b\x7b\x74\x08\xf7\x17\x06\xd7\xf7\x0e"
+"\x9b\xaf\xb8\x1a\xa2\x83\x9f\x7a\x9b\x1e\x7c\x9a\x77\x95\x58\x9e\x58\x9e\x18\x3b\xa9\x6b\xb3\xcf\x1a\xf2\xd0\xe3\xdc\xc2\xab\x68"
+"\x50\x8a\x8b\x86\x8a\x87\x1e\x0e\xa8\x26\x0a\xf7\x33\xf9\xbf\x3d\x0a\xdc\x43\x1d\xf7\x3f\xf7\x63\xbb\x0a\x39\x76\x1d\x70\x43\x0a"
+"\xf7\x15\xf7\x6d\x3e\x0a\x0e\xfb\x33\xf7\xd2\xf8\x4b\x15\xae\xf7\x39\x05\xf7\x8d\x06\xa6\xf7\x11\x05\xfc\x23\x06\x4d\xfb\xb6\x05"
+"\x5b\x06\x71\xfb\x11\x05\xbb\x06\x48\xfb\xce\x20\x0a\xce\xf7\xce\x05\xf7\x50\x06\xa6\xf7\x11\x05\x0e\xfb\x82\xf7\xa4\xf7\xd5\x15"
+"\xa2\xf5\x05\xf7\x52\x2f\x0a\xfb\xde\x06\x5c\xfb\x6f\x05\x5f\x06\x77\x2c\x05\xb7\x06\x5b\xfb\x76\x20\x1d\xbb\xf7\x76\x05\xf7\x34"
+"\x06\x9f\xea\x05\x0e\xf8\x7c\xf8\x62\x16\x23\x0a\xd2\xf7\xdf\x05\xf7\x13\x06\xca\xfb\xdf\x05\xbe\x06\x6a\xfb\x31\x20\x0a\xc7\xf7"
+"\xae\x05\x26\x06\x58\xf7\x9f\xb7\x0a\xfb\x0a\x06\xc5\xf7\xa5\x28\x0a\x51\xfb\xa5\x05\xfb\x15\xc4\x1d\xf7\x3a\x06\xf7\x61\xf7\xdf"
+"\x05\xf6\x06\x0e\xf7\x96\xf8\x83\x16\xbe\xf7\x83\x05\xdf\x5d\x0a\xb8\x06\x64\xfb\x35\x05\x21\x0a\xca\xf7\xa6\x05\x32\x06\x6e\xf7"
+"\x50\xf7\x21\xf7\x83\x05\xfb\x27\x06\xfb\x02\xfb\x50\x05\x41\xd9\x1d\x38\xad\x1d\xd4\x06\x58\xfb\x83\x05\x0e\x90\xf7\xf1\x74\x15"
+"\xf7\x34\x91\xf7\x0a\xf7\x05\xf7\x26\x1a\xca\x68\x0a\xfb\x2a\x06\x85\x6f\x05\x87\x77\x89\x7a\x7d\x1a\x2c\xdb\x3f\xf7\x07\x7e\x1e"
+"\x54\x36\x05\x50\x0a\x80\x89\x86\x7b\x1f\x0e\xfb\x14\xf7\xb3\x75\x15\xb5\x8f\xac\x94\xa7\x99\x08\xcf\xae\xb8\xcd\xcc\x1a\x6b\x0a"
+"\xfb\x20\x06\x88\x76\x89\x77\x7d\x1a\x3a\xcb\x52\xee\x83\x1e\x55\x37\x05\xc8\x1d\x76\x91\xa4\x5a\x1f\x6d\x57\x05\x75\xc5\xa9\x84"
+"\xb8\x1b\xe6\xc6\xb5\xcc\xaf\x74\xa0\x63\x7b\x7f\x89\x87\x7c\x1f\x0e\xe5\xce\x16\x23\x0a\xd1\xf7\xdf\x05\xf4\x06\xca\xfb\xdf\x05"
+"\xbe\x06\x68\xfb\x30\x20\x0a\xc8\xf7\xad\x05\x27\x06\x58\xf7\x9f\xf7\x4e\xe4\x1d\x2d\x06\xc5\xf7\xa5\x28\x0a\x0e\x6a\xf7\x47\xad"
+"\x0a\xd3\x5d\x0a\xb8\x06\x68\xfb\x34\x20\x1d\xc6\xf7\xa5\x05\x32\x06\x6d\xf7\x50\xf7\x22\xf7\x83\x05\xfb\x28\x06\xfb\x02\xfb\x50"
+"\x05\x4e\x3b\x1d\x0e\xb3\xf8\x0a\xf8\x5c\x15\x4f\x54\x0a\xc7\x06\x6e\xfb\x20\x05\xda\x06\xa9\xf7\x20\x05\xa7\x06\xca\xb2\x1d\x79"
+"\x06\xa9\xf7\x20\x05\x3c\x06\x0e\x3c\xf7\xd8\xf7\xf4\x15\x5d\x06\xb3\xf7\x50\x5d\x1d\xbe\xf7\x83\x05\xb9\x06\x71\xfb\x0c\x05\xc7"
+"\x06\xa5\xf7\x0c\xb3\xfb\x83\x05\xf7\x23\x06\x5b\xf7\xc1\xf7\x22\xf7\x83\x05\xfb\x23\x06\xfb\x02\xfb\x50\xa4\xf7\x0c\x05\x4f\x06"
+"\x0e\x74\xf7\x4d\xf8\xf0\x15\xfb\x15\xfc\xf0\x05\x66\x1d\xf0\xac\x1d\x30\x06\xc5\xf7\xa5\x05\xfc\x1b\x24\x1d\x0e\xfb\x17\xf7\x24"
+"\xf8\x41\x15\x2f\xfc\x41\x20\x1d\xbe\xf7\x83\x05\xd3\x06\xb2\xa4\x0a\xfb\x01\xfb\x50\x05\x4d\x3b\x1d\xfb\xd5\x3f\x0a\xf7\x47\x06"
+"\x0e\xdf\xf7\xb3\xf7\xdf\x15\xf7\xb5\x06\x45\xfb\xdf\x05\xcd\x06\x69\xfb\x31\x20\x0a\xc8\xf7\xae\x05\x49\x3c\x1d\x51\xfb\xa5\x05"
+"\xfb\xb5\x06\xc5\xf7\xa5\x34\x0a\x0e\x68\xa9\x0a\xc3\x06\x67\xfb\x33\x20\x1d\xc7\xf7\xa4\x05\x53\x06\xe6\xf8\x3f\x9d\x0a\xdf\xf8"
+"\x18\x74\x15\xf7\x47\x8d\xf7\x19\xf2\xb5\xf7\x3b\x08\xfb\x23\x06\x2f\x6e\x44\x57\x2b\x1b\x2a\x59\xc1\xf4\xde\x51\x0a\xf7\x21\x06"
+"\x8e\xa6\x8c\x96\x97\x1a\xf7\x11\x22\xdf\xfb\x2f\xfb\x0f\x20\x56\x26\x39\x1e\x45\x33\x5f\xfb\x1b\xfb\x15\x1a\x21\xbe\x33\xde\x66"
+"\x1e\xa8\x7f\xaa\x83\xb2\x86\x54\x36\x18\x85\x1d\x74\xa0\x63\x7b\x80\x89\x87\x7b\x1f\x0e\x39\xf7\xc0\x74\x15\xf7\x0e\x8c\xf1\xdd"
+"\xb0\xf7\x13\x08\x57\x1d\xf7\x1a\x06\x6b\x1d\x66\x5c\x9c\x48\x1b\x2d\x41\x6c\x4b\x57\x1f\x50\x45\x61\xfb\x09\x2c\x1a\x3f\xb3\x47"
+"\xc8\x6e\x1e\xa1\x81\xa2\x85\xa8\x87\x54\x36\x18\x50\x0a\x7f\x89\x87\x7c\x1f\x0e\xa8\x2c\x0a\x0e\x2c\xf8\x93\xb0\x0a\xdd\xfc\xb0"
+"\x5d\xfb\x6e\x05\x21\x0a\xb9\xf7\x6e\xf7\xc7\xf8\xb0\x05\x0e\xa8\xf8\x6a\xf7\x83\x15\x91\xab\xf7\xdd\xf8\x5e\x05\xfb\x3c\x06\xfb"
+"\x63\xfb\xd5\x3a\xf7\xd5\x05\xfb\x3b\x06\xf7\x24\xfc\x5e\x85\x6b\x05\xfb\x17\x24\x1d\xf7\x17\x06\x73\xfb\x06\x20\x0a\xa3\xf7\x06"
+"\x05\xf7\x17\x21\x1d\x0e\x2c\xf7\xf0\x16\xf7\xc7\xf8\xb0\x05\xfb\x24\x06\xfb\x57\xfc\x1d\x67\xf8\x1d\x05\xfb\x2e\x06\xdd\xfc\xb0"
+"\x05\x20\x06\x77\x2c\x05\xf6\x06\x71\xfb\x0f\x05\xf7\x20\x06\xa5\xf7\x0f\x05\xf6\x06\x9f\xea\x05\x0e\xda\x93\x1d\xce\x06\x68\xfb"
+"\x31\x20\x0a\xc9\xf7\xae\x05\xfb\x14\x06\x0e\x5a\xf8\x2d\xf7\xa4\x15\xf7\x7d\xf7\xa0\x05\xfb\x41\x06\xfb\x0e\xfb\x37\x56\xf7\x37"
+"\x05\xfb\x37\x06\xf7\x0b\xfb\xa0\xfb\x82\xfb\xa4\x05\xf7\x41\x06\xf7\x14\xf7\x3c\xc2\xfb\x3c\x05\xd1\x06\x6a\xfb\x33\x20\x1d\xc4"
+"\xf7\xa4\x05\xfb\x0e\x06\x0e\xda\xf8\x88\x16\xcd\x06\x68\xfb\x30\x20\x0a\xc9\xf7\xad\x05\x49\x3c\x1d\x41\xfb\xf4\x05\x78\x40\x4d"
+"\x81\x57\x1b\x46\x62\xa6\xb8\x92\x8c\x92\x8c\x91\x1f\xa4\x1d\x7b\x1a\x21\xe3\x4e\xf7\x2a\xc6\xa8\x8f\xa4\xee\x1e\x0e\x66\xf8\x1e"
+"\x16\xc6\x06\x69\xfb\x33\x20\x1d\xc5\xf7\xa4\x05\x53\x06\xe6\xf8\x3f\x22\x0a\x56\xfb\x8d\x05\x7b\x5d\x60\x83\x63\x1b\x5f\x6f\x9c"
+"\xa5\x8f\x8b\x8e\x8c\x8d\x1f\xba\xf7\x71\x05\xfb\x20\x06\x5c\xfb\x71\x05\x86\x77\x89\x77\x79\x1a\x47\xc0\x64\xea\xbf\xc6\x94\x9c"
+"\xc9\x1e\x0e\xda\xf8\x45\xf7\x74\x15\xaa\x8e\x9e\x8f\xd1\x9d\x56\xfb\x8d\x18\xf7\x2a\x97\x0a\x5f\x7f\x67\x84\x62\x86\x19\xaa\xf7"
+"\x27\x05\x3c\x06\x6b\xfb\x2c\x05\x49\x90\x6b\xa3\xb6\x1a\x92\x8c\x92\x8c\x91\x1e\xc8\xf7\xb5\x28\x0a\x4e\xfb\xb5\x05\x87\x79\x89"
+"\x78\x7a\x1a\x4b\xaf\x57\xca\x70\x1e\xad\x7d\xb2\x83\xbf\x8a\x6f\xfb\x1b\x18\xda\x06\x0e\x66\xf7\xfa\xf7\x37\x15\xa7\x90\x9e\x8f"
+"\xa7\x93\x64\xfb\x48\x18\xf7\x23\x06\xf7\x07\xf8\xb0\x22\x0a\x56\xfb\x8d\x6f\x81\x77\x86\x6d\x86\x19\xa5\xf7\x0d\x05\x49\x06\x71"
+"\xfb\x11\x05\x5d\x96\x80\x93\xa3\x1a\x8f\x8b\x8e\x8c\x8d\x1e\xba\xf7\x71\x22\x0a\x5c\xfb\x71\x05\x86\x77\x89\x77\x79\x1a\x44\xc1"
+"\x67\xf3\x94\x8f\x8b\x8c\x93\x1e\x72\xfb\x08\x05\xcd\x06\x0e\xda\xf8\x08\x33\x0a\xd6\xf7\xf4\x05\x9d\xd4\xd0\x96\xba\x1b\xd0\xb3"
+"\x70\x5e\x7f\x8b\x8a\x89\x84\x1f\x4e\xfb\xb5\x20\x0a\xc9\xf7\xb5\x05\x8e\x9d\x8d\x9b\x9f\x1a\xf2\x2f\xca\xfb\x2a\x4d\x53\x82\x77"
+"\x4a\x1e\x0e\x56\xdd\x16\x21\x0a\xca\xf7\xbb\x05\xc8\xb5\xb2\xa5\xbd\x1b\xb4\xa4\x72\x62\x83\x8a\x85\x8a\x84\xd5\x1d\x99\x8c\x98"
+"\x97\x1a\xd2\x4b\xc6\x3e\x52\x5a\x78\x59\x44\x1e\xcc\xf7\xc9\x05\xfb\x20\x06\x0e\xf8\x05\x33\x0a\x0e\xd1\xf8\x9e\xf7\x11\x15\x36"
+"\x06\x51\xfb\xad\x20\x0a\xab\xf7\x30\x05\xdf\x77\x0a\xf7\x2b\xc8\xc4\x94\x9f\xcb\x1e\x0e\x54\xf8\x2d\xf7\x05\x15\x44\x06\x55\xfb"
+"\xa6\x20\x1d\xa9\xf7\x35\x05\xd4\x8c\x1d\xed\xc0\xc1\x94\x9c\xbc\x1e\x0e\xf7\x20\xf7\x18\xf8\x3b\x15\x77\x50\x83\x5b\x54\x1a\x43"
+"\x9d\x4d\xae\x5a\x1e\x47\xba\xd7\x6a\xf4\x1b\xf7\x10\xf7\x00\xbd\xeb\xde\x1f\xdb\xe9\xba\xf7\x0e\xf7\x0a\x1a\xf7\x47\x26\xf4\xfb"
+"\x41\xfb\x24\xfb\x0c\x4c\xfb\x12\x30\x1e\xf7\x09\x4b\x05\xe3\xc7\xca\xb0\xe0\x1b\xee\xc1\x4e\xfb\x02\x89\x8b\x81\x8a\x84\x1f\x71"
+"\xfb\x11\x15\xfb\x10\x5a\x37\x46\x23\x1b\x29\x51\xcc\xf7\x00\x1f\x9f\x07\x0e\xdc\x43\x1d\xf8\x62\xf7\x34\x2d\x0a\x70\x43\x0a\xf8"
+"\x1f\xf7\x1e\x15\xfb\xc0\x27\x0a\xf7\xc0\x06\x0e\xf7\x20\x8b\x1d\xfb\xa5\xfc\x4f\x15\xf8\x15\x06\xfb\x0c\x5f\x33\x42\x26\x1b\x2c"
+"\x52\xcb\xf7\x00\x1f\xa5\xf7\x26\x15\xf7\x0c\xb9\xe1\xd1\xf0\x1b\xf0\xbe\x4b\xfb\x12\x8a\x1f\x0e\x70\x7d\x0a\xfb\x49\xfb\xe1\x15"
+"\xf7\x8a\x06\x39\x6a\x56\x5f\x4a\x1b\x51\x66\xb7\xcf\x1f\x9f\xf7\x00\x15\xdd\xac\xc0\xb7\xcc\x1b\xaf\xab\x77\x6d\x99\x1f\x95\x75"
+"\x8e\x78\x68\x1a\x0e\xb2\xf9\x28\xfa\x01\xc4\x0a\xfc\xc8\xfd\xb1\x15\xf7\x24\x06\xd9\x8d\xba\xa5\xb4\xcc\xf8\x37\xf9\x10\x18\xfb"
+"\x35\x06\xfb\x7d\xfc\x05\x3f\xf8\x05\x05\xfb\x29\x06\xf7\x0e\xfc\x9e\x6b\x5a\x79\x70\x84\x86\x6a\x8a\x19\xfb\x07\x06\x0e\x39\xf8"
+"\xc6\xf9\x48\xe8\x1d\x6a\x43\x95\x1d\x0e\xfb\xc5\xf9\x14\xf9\xfe\x57\x0a\xf7\xaa\xb0\x89\x15\xf7\x69\xaf\x8f\xa5\xc8\x1f\xf7\x05"
+"\xbd\xdf\xf7\x33\xf7\x37\x1a\xe1\x70\xd6\x5f\xad\x1e\xa4\x6c\x5e\x97\x50\x1b\xfb\x08\x38\x6b\x4d\x5e\x1f\x71\x67\x81\x64\x89\x42"
+"\xcc\xab\x18\x97\x07\xc1\x9c\xb1\xad\xa2\x1e\x9c\x96\x95\x8e\xb9\x94\x42\xfc\x1f\x18\x7c\x45\x73\x61\x6e\x81\x08\x77\x06\xd3\x8a"
+"\x15\xc8\xbc\x9a\xac\xa1\xf7\x0f\xc2\xf7\xd2\x18\x92\x06\x90\x06\x9e\x06\xa9\x97\x88\x7f\x9e\x1f\xb3\x72\xa1\x51\x3a\x1a\x20\x73"
+"\x34\x5c\x4c\x1e\x64\x59\x58\x6e\x54\x88\x08\xf7\x7b\xfb\x7d\x15\xce\x06\xad\xf7\x52\x05\x7d\xaa\x97\x88\x9e\x1b\xf7\x06\xee\xf7"
+"\x29\xf7\x42\xec\x64\xbd\x3e\x5c\x63\x77\x66\x6d\x1f\x69\x61\x79\x55\x75\xfb\x0b\x08\xb9\xfb\x00\x15\xae\xf7\x54\x05\xe1\x9b\xad"
+"\xbc\xb7\x1b\xb2\xa0\x63\x41\xfb\x20\x56\xfb\x02\x47\x71\x77\x95\xa1\x79\x1f\x0e\xf7\x16\xa0\x16\xf7\xcc\x06\xa6\xf7\x11\x69\xa4"
+"\x7f\x96\x7b\x9d\x19\x72\xa9\x7e\xb5\xbf\x1a\xf7\x4b\xf7\x05\xf7\x23\xf7\x23\xeb\xca\x4c\x2b\x39\x69\x28\x58\x4b\x1e\x6c\x64\x77"
+"\x7a\x3f\x5f\x70\xc7\x0a\xfb\x3e\x06\xd3\xb5\xa9\xa3\xab\xb2\x08\xc1\xcc\xab\xea\xe5\x1a\xf7\x2f\xfb\x07\xf5\xfb\x3c\xfb\x7c\xfb"
+"\x5b\xfb\x57\xfb\x78\x52\x9b\x5b\xab\x67\x1e\x98\x7c\x97\x80\xad\x71\x08\xfb\x3e\x06\x0e\xf8\x5f\x32\x0a\x0e\x55\x0a\xf7\xfe\xf8"
+"\xa9\xf8\x95\x15\x49\x06\xfb\x74\xfc\x95\x05\xdb\x06\xf7\x45\xf8\x2d\xf7\x45\xfc\x2d\x05\xdb\x06\x0e\xf7\xfe\xf8\xa9\x16\xf7\x74"
+"\xf8\x95\x05\x3b\x06\xfb\x45\xfc\x2d\xfb\x45\xf8\x2d\x05\x3b\x06\xf7\x74\xfc\x95\x05\x0e\xf7\xfe\xf8\x8c\xf9\x60\x15\xfb\x60\xfb"
+"\x34\xfb\x33\xfb\x5e\xfb\x5b\xf7\x34\xfb\x33\xf7\x5d\xf7\x5b\xf7\x34\xf7\x34\xf7\x5c\xf7\x59\xfb\x35\xf7\x36\xfb\x57\x1f\xa4\x52"
+"\x15\xf7\x23\x7e\xf7\x06\xfb\x06\x99\xfb\x25\x08\xfb\xa3\x06\xf7\xa4\x52\x15\x82\xfb\x22\xfb\x0d\xfb\x0f\xfb\x22\x80\x08\xf7\xa8"
+"\x07\x53\xfb\xa8\x15\xfb\x27\x99\xfb\x05\xf7\x05\x7d\xf7\x29\x08\xf7\xa6\x06\xfb\xa6\xc4\x15\x99\xf7\x24\xf7\x07\xf7\x06\xf7\x25"
+"\x99\x08\xfb\xa4\x07\x0e\x69\xb6\x16\xf8\x9b\xf8\x9b\xfc\x9b\x06\xf8\x67\xfc\x67\x15\xfc\x33\xf8\x33\xf8\x33\x06\x0e\xdc\xf8\xeb"
+"\xf8\xf7\x15\x45\xfb\xa4\x06\xfb\x05\x86\x5f\x7b\x6b\x1e\x56\x70\x50\x67\x4c\x1b\x54\x54\xa7\xb7\x6e\x1f\x73\xb0\x84\xb7\xf7\x11"
+"\x1a\xf7\xa4\x45\xfb\xa1\x07\xfb\x29\x90\x65\xa6\x5f\x1e\x45\xb5\xd7\x62\xe5\x1b\xde\xd1\xac\xc9\xb8\x1f\xaf\xbc\x91\xaf\xf7\x36"
+"\x1a\x0e\x5e\xf8\x27\xf8\x1c\x15\xfb\x69\x06\x41\xf7\x4d\x05\x2d\x06\xf7\x7d\xfc\xd5\x05\xde\x06\xf7\x7d\xf8\xd5\x05\x2d\x06\x22"
+"\xfb\x9d\x15\x3f\xfb\x48\x40\xf7\x48\x05\x0e\x70\xf9\x24\x29\x0a\x74\x0a\xcc\x06\x26\x5e\x5b\x5a\x4f\x1a\x56\xb9\x71\xe8\xa2\x93"
+"\x8c\x90\xa3\x1e\x9a\x8e\x96\xbf\x05\x83\x74\x74\x88\x75\x1b\x68\x79\x99\xa6\xbd\xb8\xbe\xdb\xb4\x1f\x0e\x5c\x40\x1d\x0e\x5c\x40"
+"\x1d\xf7\x43\xf8\xa1\x44\x0a\x5c\x40\x1d\xf7\x36\xf8\xa1\x52\x1d\x5c\x40\x1d\xf7\xa5\xf8\xcf\x15\x25\x06\x76\x27\x94\x28\x05\xb3"
+"\x06\xc0\xee\x05\x0e\x70\x87\x1d\xca\xf9\x99\x15\x52\xe5\x1d\xb5\x6d\xa8\x60\x1f\x82\xbd\x1d\x0e\x70\x4f\x0a\xf7\x4c\xf9\x7c\x41"
+"\x0a\xf7\x20\x38\x0a\xf7\x4b\x30\x1d\x0e\xf7\x20\x38\x0a\x9d\x99\x0a\x0e\xf7\x20\x38\x0a\xa5\xf9\x79\x2e\x0a\xf7\x67\xf7\x0c\x2e"
+"\x0a\x0e\xf7\x20\x38\x0a\x48\xf9\x89\x3e\x0a\x0e\xfb\x50\xf7\xfc\xfb\x6e\x15\xd8\xf7\x0a\xab\xd0\xbe\x1a\xa1\x81\xa2\x7c\x98\x1e"
+"\x7b\x99\x74\x93\x64\x8f\x48\x92\x18\x62\x90\x7a\x8f\x7d\x93\x08\x79\x95\x80\xa2\xa4\x1a\xb5\xa3\xb4\xb1\xa4\x1e\xa1\xac\xb1\x92"
+"\xdc\x1b\xcb\x2f\x0a\x4d\x06\x34\x61\xa3\xbe\xaf\xa5\xaf\xb0\x9c\x1f\x97\xa6\xa4\x8f\xbf\x1b\xe4\x2f\x0a\xfc\x22\x3f\x0a\xdd\x06"
+"\x55\x64\x73\x65\x5a\x1a\x59\xa5\x68\xbf\x77\x1e\x50\x7d\x6d\x7c\x6b\x6d\x08\x5f\x63\x70\x4e\x4e\x1a\x57\xa0\x5e\xaf\x70\x1e\xa7"
+"\x77\xac\x81\xc1\x86\xb7\x86\x18\xb4\x87\x8b\x8b\x96\x83\x08\x90\x87\x8f\x83\x84\x1a\x6d\x6f\x59\x3e\x20\x1e\x0e\x39\x50\x1d\xfb"
+"\xaa\xf7\x6d\xb6\x1d\x39\x50\x1d\xfb\xee\xf7\x6d\x3e\x0a\x0e\xfb\x1e\x44\x1d\x82\xf7\xde\x2b\x1d\xfb\x1e\x44\x1d\x34\xf7\xce\x3b"
+"\x0a\xfb\x26\xf7\x6a\xf8\xfc\x15\xf7\x59\x06\x31\x57\x56\x60\x50\x46\x08\x38\x2b\x5d\x24\x2e\x1a\x31\xc5\x57\xf7\x05\x7f\x1e\xba"
+"\x87\x05\xb5\x86\x98\x84\x78\x1a\x6f\x72\x5e\x3b\xfb\x08\x1e\xf7\x17\x06\xd8\xf7\x06\xac\xd3\xc1\x1a\xa2\x80\xa3\x7a\x98\x1e\x79"
+"\x98\x7a\x90\x5b\x91\x66\x8f\x18\x4d\x92\x7d\x8e\x7b\x95\x08\x7a\x95\x80\xa4\xa6\x1a\xd7\xc2\xf3\xe3\xe7\x1e\xd2\xd4\xcd\xba\xec"
+"\xb8\xa0\xef\x18\xfc\x11\x06\x0e\x74\xa2\xf8\xb0\x94\xf7\x48\x97\x6b\x9a\x06\xf7\x05\x0a\xf7\x23\x0b\xbf\x94\x92\x8e\x8f\x90\x9a"
+"\x99\x8f\x93\x8e\x8f\x0c\x0c\xf7\xaa\x14\xf9\x12\x15\xb2\x13\x00\xa8\x02\x00\x01\x00\x05\x00\x09\x00\x0e\x00\x12\x00\x3f\x00\x44"
+"\x00\x4c\x00\x51\x00\x55\x00\x59\x00\x5d\x00\x60\x00\x79\x00\x7c\x00\x82\x00\x88\x00\xac\x00\xb3\x00\xb8\x00\xbd\x00\xc3\x00\xc8"
+"\x00\xcf\x00\xdf\x01\x0f\x01\x16\x01\x26\x01\x2c\x01\x35\x01\x38\x01\x44\x01\x4a\x01\x50\x01\x7b\x01\x7f\x01\x9b\x01\xac\x01\xb5"
+"\x01\xc3\x01\xc8\x01\xd1\x01\xda\x01\xe1\x01\xed\x02\x2f\x02\x6d\x02\x81\x02\x8c\x02\x93\x02\xab\x02\xb0\x02\xc6\x02\xd1\x02\xe2"
+"\x02\xe7\x02\xea\x02\xed\x02\xf2\x02\xfc\x03\x0a\x03\x13\x03\x19\x03\x9a\x03\xd4\x03\xf6\x03\xfd\x04\x5f\x04\x75\x04\x8a\x04\xbb"
+"\x05\x17\x05\x38\x05\x8a\x05\x94\x05\x9f\x05\xf0\x06\x32\x06\x37\x06\x5d\x06\x7e\x06\xbb\x06\xe3\x07\x0b\x07\x45\x07\x57\x07\x82"
+"\x07\xb4\x07\xcf\x07\xff\x08\x02\x08\x27\x08\x34\x08\x5d\x08\x88\x08\x98\x08\xab\x08\xb5\x08\xcd\x08\xd5\x08\xeb\x08\xee\x09\x00"
+"\x09\x11\x09\x16\x09\x2b\x09\x48\x09\x4c\x09\x68\x09\x76\x09\x82\x09\x9d\x09\xb0\x09\xbd\x09\xd4\x09\xe3\x09\xef\x09\xf5\x0a\x0c"
+"\x0a\x15\x0a\x1b\x0a\x31\x0a\x3a\x0a\x4e\x0a\x61\x0a\x76\x0a\x79\x0a\x83\x0a\x8b\x0a\x91\x0a\xa4\x0a\xab\x0a\xb4\x0a\xc6\x0a\xd0"
+"\x0a\xe0\x0a\xe8\x0a\xf3\x0b\x03\x0b\x12\x0b\x1c\x0b\x2c\x0b\x35\x0b\x3a\x0b\x3f\x0b\x4e\x0b\x5d\x0b\x66\x0b\x6f\x0b\x7d\x0b\x8b"
+"\x0b\x99\x0b\xa7\x0b\xb3\x0b\xc1\x0b\xcf\x0b\xd6\x0b\xe3\x0b\xee\x0b\xfb\x0c\x03\x0c\x0f\x0c\x1b\x0c\x27\x0c\x31\x0c\x3c\x0c\x47"
+"\x0c\x52\x0c\x5d\x05\x23\x0a\x0b\xf7\x20\x06\x0b\x05\xfb\x20\x06\x0b\xf7\x2a\x06\x0b\xf8\xa8\xf7\x27\x15\x9d\xfb\x27\x05\xf7\x2d"
+"\x06\x2a\xf9\x6d\x05\xfb\x41\x06\xfc\x2b\xfd\x6d\x05\xf7\x2d\x06\xdc\xf7\x27\x05\xf7\x96\xf7\x11\x15\xfb\x51\x06\xf7\x2e\xf7\xaf"
+"\x05\x0b\xf8\x04\x33\x0a\x0b\x99\x1d\xf8\xb5\x06\xbf\x0a\x0b\x06\x7a\x3b\x05\x0b\x05\x2a\x0a\x0b\xf8\xb0\x15\x0b\xfb\x2a\x06\x0b"
+"\x4d\x1d\x0e\xf8\x71\xe6\x1d\xfb\x63\xfb\xcf\x39\xf7\xcf\x05\xfb\x3b\x06\xf7\x25\xfc\x5f\x51\xfb\xa2\x20\x0a\x0b\xc4\x0a\x0e\x4b"
+"\x1d\xf7\x03\x06\x0b\x06\xa3\xf7\x05\x05\x0b\xf9\xc4\x22\x1d\xfb\x22\x06\xfb\x01\xfc\x97\xfb\x54\xf8\x97\x05\xfb\x2a\x28\x1d\xf7"
+"\x22\x06\xf7\x03\xf8\x9f\xf7\x54\xfc\x9f\x05\xf7\x28\x06\x0b\xa8\x0a\xd7\x91\xce\xa2\x0a\xf9\x5f\xb5\x0a\x0b\x60\x1d\x23\x0a\x0b"
+"\x05\xfb\x2a\x35\x0a\x0b\x28\x1d\x23\x0a\x0b\xf8\x31\xf8\xb9\x84\x1d\x0b\x15\x38\x06\x97\xc0\x7c\x0a\x21\x0a\xe8\xf8\x48\x05\xdd"
+"\x06\x0b\xf8\xfd\x16\xf7\x9c\xf8\xb0\x05\xfb\x25\x06\xfb\x37\xfc\x0e\x05\xf8\x0e\xfb\x24\x07\xfb\x33\xfc\x0e\x86\xf8\x0e\x05\xfb"
+"\x25\x06\xb0\xfc\xb0\x05\xf7\x25\x06\xf7\x3a\xf8\x10\x8f\xfc\x10\x05\x0b\x7e\x0a\x43\xf7\x27\x05\x0e\x15\xf7\x1f\xf7\x27\x05\x3f"
+"\x06\x24\x2a\x4e\xec\x05\x3d\x06\x0b\x4b\x1d\xf7\x02\x06\x0e\x15\x73\xfb\x04\x05\xce\x06\x85\x0b\x61\x1d\x0e\x15\xef\xfb\x2a\x05"
+"\xcb\x06\x5e\xf7\x2a\x05\x0b\x06\x73\xfb\x05\x05\x0b\x06\xae\xf7\x39\x05\x0b\x15\x69\x7d\x7a\x7a\x74\x1b\x7f\x89\xe0\x1d\x72\x1b"
+"\x55\x5f\x61\x40\x74\x1f\xc1\x06\xac\x9c\x9b\x9a\x9d\x1b\x93\xa0\x84\x84\x9a\x1f\xbd\x72\x05\x85\x98\xa0\x86\x9c\x4a\x1d\x15\x88"
+"\x1d\x0e\xcf\x16\x21\x0a\x9a\xd2\xf7\x8d\xf7\x92\x46\xfb\xd9\x05\x63\x1d\x7c\x44\xfb\x8d\xfb\x92\xd0\xf7\xd9\x22\x0a\x0b\x15\xfb"
+"\x02\x06\x71\xfb\x0e\x05\xf7\x02\x06\xf7\x68\xf7\x0e\x49\x1d\xe2\x1d\xf7\x68\xf7\x0c\xe2\x1d\x0e\xf8\x96\xf8\xf0\x15\x5a\x1d\xfb"
+"\x15\xfc\xf0\x20\x0a\x0b\xf7\xd8\xaa\x1d\x0b\x16\xf7\x20\x06\xe6\xf8\x3f\x05\x0b\x15\xfb\x12\x06\x25\xfb\x27\x05\x0b\x06\xf7\x2f"
+"\xf9\x6d\x05\x0b\xf8\x3d\xf8\xa5\x37\x0a\xf7\xf5\xe8\x37\x0a\x0b\xf8\xe5\xf7\xe6\x15\x6b\x1d\x66\x5c\x9c\x48\x1b\x2d\x41\x6c\x4b"
+"\x57\x1f\x50\x45\x61\xfb\x09\x2c\x1a\x59\x9d\x5a\xaa\x68\x1e\x62\xaf\xc3\x77\xd4\x1b\xf7\x16\xed\xd7\xf7\x1a\xb5\x1f\xcc\x1d\xc4"
+"\xa3\xbc\xdc\x1d\xad\xa3\x7f\x76\x98\x1f\x93\x7c\x8d\x7e\x8c\x65\x08\x0b\xf8\xd1\xf7\x76\xc7\x1d\x51\xa3\x42\xc6\x0a\xfb\x09\x27"
+"\x1a\xfb\x10\xe0\x37\xf7\x12\xf7\x0d\xf0\xca\xf7\x04\xc2\x1e\xfb\x1e\x06\x65\x78\x5e\x72\x5b\x1b\x52\x65\xb0\xc2\x95\x8c\x95\x8d"
+"\xa4\x1f\x9d\xe8\x15\xd9\xa0\xb9\xb3\xcd\x6d\x1d\x89\x68\x1a\x0b\xf9\x27\xf9\x6d\x59\x1d\x68\x87\x6d\x75\x1a\xfb\x09\xea\x41\xf7"
+"\x2c\x5b\x1d\x0b\xf8\xb1\x16\xf7\x07\xf8\xb0\x05\x74\x0a\x0b\x85\x1d\x73\xa0\x64\x7b\x0b\xa5\xe2\xb8\xd1\x1f\xd5\xba\xc8\xae\xdc"
+"\x1b\xc1\xb3\x79\x68\xa0\x1f\x98\x77\x8f\x78\x64\x1a\x0b\xf9\x79\x55\x1d\x0b\x15\xf7\x1c\xfb\x26\xa3\xf7\x06\x39\xe4\xf7\x0c\xe4"
+"\xa4\xf7\x09\xfb\x5b\xfb\x29\x05\x0b\x06\xc5\xf7\xa5\x34\x0a\xd1\xf7\xdf\x05\x0b\xf7\x1c\xf7\xe7\x15\x71\xfb\x0f\x05\xf7\x10\x06"
+"\xa5\xf7\x0f\x05\x0e\xfa\x3c\x4d\x1d\x0e\xeb\x1d\x0e\x3c\x1d\x0e\x4a\x0a\x2a\x0a\x0b\x16\xf7\x2a\x06\xf7\x14\xf8\xf0\x05\x0b\x23"
+"\x1d\xfb\x14\xfc\xee\x05\x6b\x84\x7d\x7f\x6d\x1b\x0b\x06\xc5\xf7\xa5\x05\xfb\x29\x06\x0b\x06\xb2\xfb\x83\x05\x0b\xf7\x49\xc3\x15"
+"\x57\xba\xd5\x70\xe8\x1b\xf7\x10\xf5\xbc\xec\xdd\x1f\xd9\xe7\xba\xf7\x10\xf7\x05\x1a\xc5\x80\xbd\x74\xba\x1e\xf7\x00\xec\x61\xb8"
+"\x26\x31\x05\xc2\x59\x43\xa6\x2d\x1b\xfb\x11\x22\x5a\x2a\x38\x1f\x3d\x2f\x5c\xfb\x11\xfb\x07\x1a\x4f\x97\x56\xa3\x5f\x1e\xfb\x03"
+"\x28\xb4\x5d\x05\xf8\xef\xf8\xaf\x15\x8f\x76\x8c\x79\x75\x1a\x39\x70\x35\x5e\x4d\x1e\x46\x59\x4b\x68\x3f\x1b\x54\x60\x9d\xad\x6e"
+"\x1f\x6d\xc3\x15\x87\xa2\x89\xa0\xa2\x1a\xdb\xa7\xe2\xb7\xc9\x1e\xcf\xbc\xcc\xaf\xd8\x1b\xc3\xb6\x79\x65\xa9\x1f\x0b\xf9\x61\xf8"
+"\x8f\x15\x94\x1d\x23\x30\x57\xac\xc4\x90\x8c\x94\x8c\x94\x1e\xfb\x26\x06\x88\x77\x8a\x81\x7d\x1a\x56\x9f\x5d\xaf\x6a\x1e\x5f\xbb"
+"\xcf\x76\xec\x1b\xf7\x0e\xe8\xae\xce\xc5\x1f\xb5\xba\xa6\xd4\xcd\x98\x0a\xe0\xba\xb3\x0a\x0b\xf8\x9f\x29\x0a\x79\x38\x05\xca\x70"
+"\x62\xa8\x50\x1b\x3f\x40\x65\x49\x56\x1f\x51\x43\x66\xfb\x01\x2a\x1a\xfb\x02\xd5\x3b\xf0\x7f\x1d\x0b\xf8\xdc\xf8\x02\x63\x0a\x0b"
+"\xf7\x11\x15\x6e\xa0\x7f\x96\x7c\x9a\x08\x6d\xaa\x7c\xb8\xc3\x1a\xf7\x49\xf7\x01\xf7\x1c\xf7\x24\xed\xcc\x4c\x2c\x3b\x6a\x2b\x5a"
+"\x4d\x1e\x6d\x65\x72\x77\x3f\x61\x71\xc7\x0a\xfb\x38\x06\xca\xac\xad\xa4\xad\xb1\x08\xc0\xc6\xac\xe6\xdf\x1a\xd5\x6c\xd5\x57\xbf"
+"\x1e\xc4\x51\x3d\xa9\x2d\x1b\x21\x26\x63\x43\x3f\x1f\x40\x43\x5b\xfb\x03\x23\x1a\x33\xb0\x43\xd6\x51\x1e\xfb\x41\x24\x1d\xf7\xcc"
+"\x06\x0b\x5e\x1d\x3b\x4a\x77\x64\x5f\x1e\x5f\x65\x70\x53\x58\x9c\x1d\x85\x82\x1a\x5d\x8f\x1d\x0b\x89\x1d\x92\x1a\xf7\x14\xfb\x01"
+"\xe0\xfb\x37\xfb\x10\xfb\x01\x59\x2c\x3a\xa2\x1d\x0b\xf8\xd1\xf7\x76\x15\x8c\x0a\xfb\x09\x26\x1a\xfb\x0f\xe0\x37\xf7\x12\xf7\x0d"
+"\xf0\xca\xf7\x04\xc2\x1e\xfb\x1e\x06\x65\x77\x5f\x72\x5b\x1b\x52\x65\xaf\xc3\x95\x8c\x95\x8d\xa4\x1f\x9d\xe8\x8f\x0a\x0b\xf8\x6b"
+"\x15\x8c\x90\x8e\x8b\x90\x1b\xc0\xa2\x7c\x69\x62\x6a\x6a\x63\x66\x78\x9b\xaa\x91\x8b\x8f\x8d\x93\x1f\x30\x06\x88\x7b\x8a\x82\x80"
+"\x1a\x47\xbb\x64\xde\xf7\x01\xd6\xd0\xee\xab\x7d\xa2\x6e\x9d\x1e\xba\xa8\xa3\xb1\xb9\x1a\xc6\x5c\xad\x3a\x27\x57\x5e\x25\x77\x1e"
+"\xe2\x06\xc3\x97\x9c\x9e\xb2\x1b\xa6\x9d\x7b\x73\x76\x82\x78\x7c\x7e\x1f\x7b\x7d\x7a\x87\x63\x8a\x08\x0b\xf9\x79\x15\xfb\x10\x26"
+"\x5b\x28\x39\x1f\x3d\x2f\x39\x1d\x20\xf4\xfb\x4b\xaf\x0a\x4e\x1f\x45\x59\x4c\x69\x3e\x1b\x26\x4c\x2f\x1d\x0b\x70\xbb\x55\xaf\x1e"
+"\xb6\x9e\x9f\x98\xa0\xa5\x08\xa8\xac\x9c\xb9\xb7\x1a\xf2\x33\xcf\xfb\x18\x41\x4e\x78\x67\x5e\x1e\x5b\x65\x72\x5c\x7a\x3d\x86\x72"
+"\x18\x23\x0a\x90\xa4\x05\xc3\x97\xb5\xad\xc3\x1b\xba\xaa\x72\x65\x4d\x56\x5a\x49\x1f\x5e\x24\x1d\xc2\x06\xbf\xae\x6e\x5f\x3d\x54"
+"\x51\x42\x56\x6a\xa9\xbd\x9c\x8d\x97\x90\xa7\x1f\x0b\x8a\x1d\x29\x5a\xc1\xf5\xdd\x51\x0a\x0b\x15\xc1\xd1\x1d\x96\xaf\x1d\x52\x96"
+"\x1d\x0b\xb8\x75\xae\x5f\xa6\x1e\xc9\xa5\xb2\xc1\xc7\x1a\xdb\x44\xbe\xfb\x03\x3c\x4f\x75\x5e\x5f\x1e\x70\x6f\x81\x74\x80\x4d\x08"
+"\x21\x0a\xba\x93\xa5\xa2\xb7\x1b\xac\xa1\x79\x70\x5c\x68\x6f\x50\x1f\x6f\x06\x77\x2c\x05\xa7\x06\xb0\x92\x8a\x82\x98\x1f\x98\x83"
+"\x92\x7c\x79\x1a\x5c\x64\x64\x5c\x67\x73\xa2\xad\x94\x8c\x92\x8e\x9e\x1e\x0b\xf8\x64\xf7\x2c\x15\x6b\xfb\x2c\x05\xf8\xac\x21\x1d"
+"\xfc\x16\x06\xb3\xf7\x51\x05\xf7\xe7\x25\x1d\xfb\xe7\x06\xaf\xf7\x39\x05\xf8\x03\x25\x1d\xfd\x3f\x06\xfc\x38\xfd\x6d\x05\xf7\x33"
+"\x06\xe0\xf7\x2c\x05\xf7\x8a\xf7\x11\x15\xfb\x49\x06\xf7\x4d\xf7\xdb\x05\xcd\x06\x0b\xfb\x64\x84\x1d\x0e\xf7\xad\xf7\x98\x15\xf7"
+"\x4f\x06\xda\xc5\xba\x1d\x48\x1b\xfb\xc8\x35\x0a\xdd\xf8\x15\x15\xb9\xf7\x6f\x05\xf7\x2e\x06\xc1\xaf\x6b\x5c\x6d\x80\x65\xc3\x0a"
+"\xf8\x32\xf8\xa5\x15\x85\x0a\x53\xb3\x6d\xd4\xac\xa3\x8e\x93\xa7\x1e\x9f\xbe\x0a\x8f\x8d\x98\x8f\x9c\x1f\xc9\xf7\xba\x05\xd9\x06"
+"\x0b\xf8\x7f\x22\x1d\xfb\x07\xfc\xaf\x05\x54\x80\x68\x6d\x56\x1b\x64\x70\xa1\xab\x95\x8c\x97\x8e\x97\x1f\x9b\xd8\x28\x0a\x7c\x43"
+"\x05\x86\x75\x89\x75\x76\x1a\x2a\xd2\x50\xf7\x09\xce\xd0\x9d\xa7\xb6\x1e\xbc\xab\xae\xc5\x9b\xd8\xf7\x07\xf8\xaf\x18\x0b\x16\xf7"
+"\xc0\x06\xe7\xc0\x99\xb2\xbc\xd0\x1d\xfb\x26\x06\xc6\xf7\xa9\x05\x2a\x0a\xa1\xfc\xf0\x15\xb6\xf7\x5e\x05\xf7\x2d\x06\xa8\x98\xc0"
+"\x0a\x5b\x51\x4f\x1e\x0b\xf8\x91\xb0\x0a\xd7\xfc\xb0\x8c\x7c\x05\x52\x5f\x67\x46\x7f\x86\x8b\x8d\x80\x1e\x74\xfb\x01\x05\x88\x98"
+"\x95\x8a\xa1\x1b\xb7\xb1\x91\x96\xa8\x1f\xb7\xec\x1d\x0b\xd8\x16\xf7\xb1\x06\xf7\x25\xdf\xb2\xf0\xd4\x1f\xd3\xed\xb3\xf7\x0f\xf7"
+"\x0a\x1a\xf7\x43\x3d\xd6\xfb\x49\x1e\xfb\xb1\x06\xa1\xfc\xf0\x15\xf0\xf8\x73\x05\xf7\x1b\x06\xe7\xb8\x5f\x30\x3c\x71\x24\x69\x50"
+"\x1f\x40\x60\x5a\x6f\x34\x1b\x0b\x64\x1d\x95\x90\xa3\x1f\xd1\xb5\x1d\xc1\xa6\xcb\xc1\x1e\x7c\x47\x05\x0b\xf8\x85\x16\xf7\xa1\xf8"
+"\xff\xfb\x18\xfc\xff\x05\xf7\x22\x4a\x0a\xfb\x6f\x06\xfb\x92\xfc\xc4\x77\xf8\xc4\x05\xfb\x6d\x28\x1d\xf7\x22\x06\xf7\x18\xf8\xff"
+"\x92\xfc\xff\x05\x0e\x16\xf7\xaf\x06\xc5\xc0\x9b\xa6\xae\x1f\xbb\xb2\xa9\xc6\xc4\x1a\xda\x48\xca\x36\x1e\xfb\x23\x06\xb6\xf7\x5c"
+"\x22\x0a\xbc\xfc\x3f\x15\xa3\xf7\x06\x05\xf7\x1c\x06\xa4\x9b\x7b\x71\x64\x6d\x6a\x68\x1f\x0b\x97\x0a\x05\x79\x41\x46\x80\x5c\x1b"
+"\x46\x63\xa6\xb8\x93\x8c\x90\x8c\x92\x1f\xa4\x1d\x7a\x1a\x24\xe7\x4c\x0b\xf8\x87\xf8\x08\x15\xf7\xc3\xf7\xf9\x05\xfb\x43\x06\xfb"
+"\x4b\xfb\x80\x3c\xf7\x80\x05\xfb\x46\x06\xf7\x25\xfb\xfe\xfb\xca\xfc\x03\x05\xf7\x43\x06\xf7\x51\xf7\x8d\xe5\xfb\x8d\x05\xf7\x47"
+"\x06\x0e\x7a\x0a\x0e\xf7\xa6\xf7\x7e\x15\xe6\xdb\xf7\x41\xfb\xce\x05\xf7\x47\x06\xfb\x7f\xf8\x2e\xf7\xfd\xf7\xd3\x05\xfb\x46\x06"
+"\xfb\xf6\xfb\xd4\xcf\xf7\xd4\x34\x0a\x0b\xf7\xf6\xf9\x6d\x23\x1d\xfb\x2f\xfd\x6d\x9a\x1d\x0b\x05\xa8\x91\x99\x99\xa5\x1b\x95\x92"
+"\x8a\x88\xa4\x1f\xa1\xf4\x05\x8e\x5c\x81\x8b\x77\x1b\x29\x56\x61\x2e\x77\x1f\x7d\x4a\x05\x3f\x33\x1d\xd8\x06\x2e\xfc\x48\x05\x0b"
+"\xf8\x2d\xf8\xb9\x15\x2b\x36\x65\x49\x54\x1f\x55\x4a\x69\x29\x32\x1a\xfb\x1b\xe1\x3a\xf7\x22\xec\xdf\xb0\xce\xc2\x1e\xc0\xcc\xae"
+"\xee\xe3\x1a\xf7\x1b\x35\xdc\xfb\x22\x1e\x0b\x15\xfb\x1f\xfb\x27\x05\xd7\x06\xf2\xec\xc8\x2a\x05\xd9\x06\x0b\xfb\xdf\x32\x1d\x2a"
+"\x0a\x51\xfb\xa5\x05\xfb\xb5\x06\xc5\xf7\xa5\x34\x0a\x0b\x22\x0a\x31\xfc\x3f\x05\xfb\x41\x94\x0a\xf9\x6a\x15\x2a\x0a\x5e\xfb\x66"
+"\x73\xfb\xc9\x05\xce\x06\xf6\xf7\xc9\x05\x3c\xfc\x06\x27\x1d\x0b\x15\x60\x7b\x68\x75\x57\xa7\x1d\x9d\x1b\x93\x9e\x85\x82\x9c\x1f"
+"\xbe\x72\x05\x85\x97\xa1\xdf\x1d\x95\xa0\x97\xb3\x08\x0e\x87\x0a\x0e\xb8\x0a\x46\x33\x1d\xd0\x06\x45\xfb\xe0\x05\x88\x7d\x89\x7d"
+"\x7e\x1a\x0b\x15\x70\xfb\x11\x05\xdc\x06\x82\x59\x6b\x6e\x51\x81\x81\x5d\x18\x0b\xf8\xb0\xa5\x1d\x0b\x70\xa0\xaf\x8c\x8b\x8e\x8c"
+"\x8f\x1f\x60\x06\x86\xab\x0a\xda\xd0\xc8\xdd\x98\x1e\x0e\xf8\x69\x15\xa6\xf7\x11\x05\x3a\x06\x94\xbd\xab\xa8\xc5\x95\x95\xb9\x18"
+"\x32\x84\x4b\x52\x7d\x34\x74\xfb\x01\x18\x0b\xf9\x89\x90\x0a\x07\x93\x79\x7a\x8e\x79\x1b\x4a\x52\x55\x4e\x65\xa6\x74\xb7\xba\xb9"
+"\xa3\xb3\xa7\x1f\xa0\xa8\x93\xa9\xbc\x1a\x0b\x69\x1d\xba\x6f\xaf\x1e\xb8\x67\x51\xa3\x42\xc6\x0a\x0b\x15\x74\xfb\x04\x05\xcd\x06"
+"\x85\x5f\x69\xa5\x0a\x81\x80\x90\x7d\x1b\x71\x75\x75\x70\x6c\xa7\x73\xae\xb7\xaa\xaa\xc5\x99\x1f\x9b\xcb\x90\xd4\xf7\x41\x1a\x0b"
+"\x15\x94\xab\x93\x9e\x98\x9b\x08\xab\xa3\xb2\x9e\xb3\x6d\x1d\x8b\x66\x1a\x0b\x49\x0a\xd1\x06\xf7\xee\xf7\x27\x49\x0a\xd1\x06\x0e"
+"\x15\xfb\x4b\x06\xb2\xf7\x49\x05\xfb\x0b\x06\x64\xfb\x49\x05\xfb\x4a\x31\x1d\xf7\x4a\x06\x0b\xf8\x32\xf8\xa5\x15\xb8\x0a\x45\x06"
+"\x78\x2e\x05\xd0\x06\x0b\x06\xcb\xfb\xdf\x20\x0a\x40\xf8\x1c\xb7\x0a\x0b\x06\xe6\xf8\x3f\xbb\x1d\xc7\x64\xb2\x38\xa4\x1f\x2b\xa7"
+"\x05\x58\x9a\x7d\x95\x9f\x1a\xab\xae\xa0\xc0\xc2\xac\x78\x0b\x05\xfb\x2a\x6a\x1d\xfb\x9d\x58\x0a\x59\x0a\x41\xfb\xf4\x0b\x1a\xd8"
+"\x54\xbf\x25\x9f\x1e\xfb\x01\xa1\x05\x2d\x9e\x70\x9b\xb1\x1a\xcb\xc3\xb3\xe6\x0b\xf9\x89\x7e\x0a\x43\xf7\x27\x05\x0b\x15\xf7\x20"
+"\xf7\x27\x05\x3e\x06\x24\x2a\x4f\xec\x05\x3d\x06\xd2\xfb\x27\x05\x0e\x20\x1d\xc7\xf7\xae\x05\x4f\xa0\xb5\x70\xd1\x1b\xf7\x35\xf7"
+"\x18\xf7\x39\x0b\xfb\x46\x1f\x7b\x43\x15\xf7\x21\xf1\x24\xfb\x21\xfb\x57\xfb\x4b\xfb\x4a\xfb\x59\x0b\xbe\x1d\x0e\x06\xa9\x98\xc0"
+"\x0a\x5a\x51\x50\x1e\x0e\x15\xfb\x20\x24\x1d\x21\x0a\x0b\x06\xc5\xbf\xc9\x1d\x0b\x15\x70\x74\x74\x71\x6f\xa2\x74\xa6\xa6\xa2\xa2"
+"\xa6\xa6\x74\xa2\x70\x1f\x0b\xce\x95\xd9\xa0\xeb\x18\x0e\xe1\x1d\xc3\x06\xd0\xf7\x15\x05\x0b\xfb\x83\x05\xf7\x1e\x06\x5b\xf7\xc1"
+"\xf7\x22\xf7\x83\x05\xfb\x28\x06\x0b\x66\x5e\x68\x1d\x96\xd9\x9f\xeb\x18\x0e\xf8\x07\xf7\xea\x15\xfb\xa4\x06\x6e\xfb\x1b\x05\xf7"
+"\xa4\x06\x0e\x15\xf0\xfb\x2a\x05\xca\x06\x0b\x3c\x0a\x5e\x68\x67\x5f\x83\x81\x5d\x18\x0b\xcb\x16\x21\x0a\xbb\xf7\x77\x05\xf7\x58"
+"\x06\x5a\xfb\x77\x05\x0b\xfa\xc2\xf7\xcb\x15\xfe\x87\x06\x75\x23\x05\xfa\x87\x06\x0e\x7a\x8a\x81\x7e\x1a\x4d\xb5\x62\xcb\x0b\xf7"
+"\xb7\xc9\xfb\xac\x06\x38\x68\x84\x72\x66\x1f\x4a\x60\x69\x0b\x29\x0a\x2c\x1d\xbe\xf7\x83\x05\x0b\xf7\x22\xb5\x0a\x0b\x1e\x78\x3d"
+"\x1d\x0b\xf8\xb0\x15\xfb\x57\xfc\x1d\x67\xf8\x1d\x05\xfb\x2e\x06\x0b\xfb\x79\xfb\x73\xfb\x83\xfb\x43\xf7\x15\xfb\x14\xf7\x45\x0b"
+"\x5d\x18\xd6\x91\xcf\xce\x95\xd9\x0b\x6e\x55\x86\x8a\x82\x8a\x82\x1e\x0b\x06\x3b\xfc\x0f\x86\x72\x75\x76\x73\x89\x19\x5a\x06\x0b"
+"\x15\xfc\xd9\xfd\x73\x05\xe0\x06\xf8\xd9\xf9\x73\x05\x0b\x95\xa3\x97\x8e\x9d\x1b\xa5\x9d\x7e\x77\x72\x6d\x78\x0b\xf7\x4e\xf7\xe5"
+"\x05\xfb\x33\x06\xfb\x29\xfb\xa5\x05\x0b\x3d\x06\xaa\xf7\x25\x22\x0a\x6c\xfb\x25\x05\x0b\xf7\x06\x05\xf7\x1c\x06\xa3\x9b\x7b\x71"
+"\x64\x6d\x6a\x0b\xfb\x22\x7e\xb9\x80\xa5\x7a\x9f\x19\xb0\x6c\x5b\xa1\x0b\xa7\x0a\x5f\xf7\x2a\x05\x0e\x05\x95\xa3\x97\x8e\x9c\x1b"
+"\xa5\x9d\x7e\x77\x72\x0b\xf8\xd5\xf7\xdf\x15\x45\xfb\xdf\x20\x0a\x0b\xed\x05\x89\x7d\x83\x8a\x80\x1b\x73\x7d\x94\x9b\x0b\xa6\xf7"
+"\x11\x05\xfc\x1f\x06\x0b\x87\x7d\x97\x1f\x96\x7d\x91\x79\x74\x1a\x44\x0b\xf9\x35\x15\x41\x06\x55\xfb\x94\x05\xc4\x06\x0b\xda\x69"
+"\x1e\x7d\xad\xa6\x87\xd0\x1b\xf7\xac\x0b\x7d\x76\x1f\x68\x72\x69\x7b\x56\x1b\x0e\x15\xfb\xc0\x06\x7a\x3b\x05\xf7\xc0\x06\x0b\x15"
+"\xfc\x79\x06\x75\x27\x05\xf8\x79\x06\x0b\x1b\x3d\x3b\x6c\x5a\x5c\x1f\x4b\x48\x5d\x0b\xfb\x11\x18\xf7\xcc\x06\xa6\xf7\x11\x05\x0b", 39424
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusSans-Italic.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusSans-Italic.cff.cpp
new file mode 100644
index 0000000000..d91e23c8e9
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusSans-Italic.cff.cpp
@@ -0,0 +1,1252 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusSans_Italic_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x12\x4e\x69\x6d\x62\x75\x73\x53\x61\x6e\x73\x2d\x49\x74\x61\x6c\x69\x63\x00\x01\x01\x01\x34\xf9"
+"\xbc\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xc0\x03\xf8\x18\x04\x7f\x0c\x02\xfb\x2b\x0c\x03\xfb\x0f\xfb\xb0\x1c\x04\x82"
+"\xfa\xc2\x05\x1c\x26\x00\x0f\x1c\x26\x13\x11\xb0\x1d\x00\x00\x8d\xa6\x12\x01\xa6\x02\x00\x01\x00\x08\x00\x0e\x00\x13\x00\x1d\x00"
+"\x24\x00\x2b\x00\x35\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00\x6e\x00\x74\x00\x7a\x00\x84\x00\x8b\x00"
+"\x8e\x00\x95\x00\x9c\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00\xe3\x00\xe7\x00\xf2\x00\xf4\x00\xfa\x01"
+"\x04\x01\x0b\x01\x12\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01\x59\x01\x5f\x01\x6b\x01\x6f\x01\x71\x01"
+"\x77\x01\x7d\x01\x89\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01\xd0\x01\xd2\x01\xd5\x01\xdb\x01\xe1\x01"
+"\xed\x01\xf0\x01\xf6\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02\x38\x02\x3e\x02\x4b\x02\x52\x02\x59\x02"
+"\x60\x02\x6f\x02\x7b\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02\xb9\x02\xbf\x02\xc9\x02\xcd\x02\xd3\x02"
+"\xda\x02\xe3\x02\xec\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03\x3d\x03\x46\x03\x4f\x03\x58\x03\x61\x03"
+"\x6a\x03\x73\x03\x7c\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03\xcd\x03\xd6\x03\xdf\x03\xe8\x03\xf1\x03"
+"\xfa\x04\x03\x04\x0c\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04\x5d\x04\x66\x04\x6f\x04\x78\x04\x81\x04"
+"\x8a\x04\x93\x04\x9c\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04\xed\x04\xf6\x04\xff\x05\x08\x05\x11\x05"
+"\x1a\x05\x23\x05\x2c\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05\x7d\x05\x86\x05\x8f\x05\x98\x05\xa1\x05"
+"\xaa\x05\xb3\x05\xbc\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06\x0d\x06\x16\x06\x1f\x06\x28\x06\x31\x06"
+"\x3a\x06\x43\x06\x4c\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06\x9a\x06\xa3\x06\xac\x06\xb5\x06\xbf\x06"
+"\xc6\x06\xcf\x06\xdb\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07\x1b\x07\x21\x07\x26\x07\x2d\x07\x3a\x07"
+"\x40\x07\x46\x07\x50\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07\x92\x07\x9a\x07\xa3\x07\xae\x07\xb4\x07"
+"\xb9\x07\xbe\x07\xc4\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08\x10\x08\x12\x08\x19\x08\x21\x08\x29\x08"
+"\x33\x08\x3d\x08\x49\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08\x9c\x08\xa8\x08\xb4\x08\xba\x08\xc0\x08"
+"\xc6\x08\xd2\x08\xd6\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09\x1c\x09\x22\x09\x2e\x09\x38\x09\x40\x09"
+"\x42\x09\x48\x09\x55\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09\xa4\x09\xa7\x09\xa9\x09\xb0\x09\xbc\x09"
+"\xca\x09\xcd\x09\xda\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e\x0a\x34\x0a\x39\x0a\x42\x0a"
+"\x47\x0a\x50\x0a\x53\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d\x0a\xa4\x0a\xab\x0a\xb2\x0a"
+"\xb9\x0a\xc0\x0a\xc7\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d\x0b\x14\x0b\x1b\x0b\x22\x0b"
+"\x29\x0b\x30\x0b\x37\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d\x0b\x84\x0b\x8b\x0b\x92\x0b"
+"\x99\x0b\xa0\x0b\xa7\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed\x0b\xf4\x0b\xfb\x0c\x02\x0c"
+"\x09\x0c\x10\x0c\x17\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d\x0c\x64\x0c\x73\x0c\x87\x0c"
+"\x93\x0c\x98\x0c\x9e\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5\x0c\xe9\x0d\x1f\x0d\x5f\x0d"
+"\x71\x0d\x7c\x41\x45\x61\x63\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x41"
+"\x6d\x61\x63\x72\x6f\x6e\x41\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x42\x65\x74\x61\x43\x61\x63\x75\x74"
+"\x65\x43\x63\x61\x72\x6f\x6e\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x43\x68\x69\x44"
+"\x63\x61\x72\x6f\x6e\x44\x63\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65\x45\x63\x61\x72\x6f\x6e\x45\x64\x6f\x74"
+"\x61\x63\x63\x65\x6e\x74\x45\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65\x6b\x45\x70\x73\x69\x6c\x6f\x6e\x45\x70"
+"\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45\x75\x72\x6f\x47\x61\x6d\x6d\x61\x47\x62"
+"\x72\x65\x76\x65\x47\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x47\x64\x6f\x74\x61"
+"\x63\x63\x65\x6e\x74\x48\x62\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a\x49\x62\x72\x65\x76\x65\x49\x64\x6f\x74"
+"\x61\x63\x63\x65\x6e\x74\x49\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f\x74\x61\x49\x6f\x74\x61\x64\x69\x65\x72"
+"\x65\x73\x69\x73\x49\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x4b\x61"
+"\x70\x70\x61\x4b\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c\x61\x6d\x62\x64\x61\x4c\x63\x61\x72\x6f"
+"\x6e\x4c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63\x75\x74\x65\x4e\x63\x61\x72\x6f\x6e\x4e"
+"\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74"
+"\x4f\x6d\x61\x63\x72\x6f\x6e\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72\x6f\x6e\x4f\x6d\x69\x63\x72\x6f\x6e\x74"
+"\x6f\x6e\x6f\x73\x4f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73\x69\x52\x61\x63\x75\x74\x65\x52\x63\x61"
+"\x72\x6f\x6e\x52\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75\x74\x65\x53\x63\x65\x64\x69\x6c\x6c\x61"
+"\x53\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x53\x69\x67\x6d\x61\x54\x61\x75\x54"
+"\x62\x61\x72\x54\x63\x61\x72\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54\x68\x65\x74\x61\x55\x62\x72\x65\x76\x65"
+"\x55\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f\x67\x6f\x6e\x65\x6b\x55\x70\x73\x69\x6c"
+"\x6f\x6e\x55\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x55\x72\x69"
+"\x6e\x67\x55\x74\x69\x6c\x64\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x57\x64\x69\x65\x72\x65\x73"
+"\x69\x73\x57\x67\x72\x61\x76\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59\x67\x72\x61\x76\x65\x5a\x61\x63\x75\x74"
+"\x65\x5a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61\x65\x61\x63\x75\x74\x65\x61\x66\x69\x69"
+"\x30\x30\x32\x30\x38\x61\x66\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31\x38\x61\x66\x69\x69\x31\x30\x30\x31\x39"
+"\x61\x66\x69\x69\x31\x30\x30\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69\x31\x30\x30\x32\x32\x61\x66\x69\x69\x31"
+"\x30\x30\x32\x33\x61\x66\x69\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35\x61\x66\x69\x69\x31\x30\x30\x32\x36\x61"
+"\x66\x69\x69\x31\x30\x30\x32\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31\x30\x30\x32\x39\x61\x66\x69\x69\x31\x30"
+"\x30\x33\x30\x61\x66\x69\x69\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61\x66\x69\x69\x31\x30\x30\x33\x33\x61\x66"
+"\x69\x69\x31\x30\x30\x33\x34\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30\x30\x33\x36\x61\x66\x69\x69\x31\x30\x30"
+"\x33\x37\x61\x66\x69\x69\x31\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66\x69\x69\x31\x30\x30\x34\x30\x61\x66\x69"
+"\x69\x31\x30\x30\x34\x31\x61\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30\x34\x33\x61\x66\x69\x69\x31\x30\x30\x34"
+"\x34\x61\x66\x69\x69\x31\x30\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69\x69\x31\x30\x30\x34\x37\x61\x66\x69\x69"
+"\x31\x30\x30\x34\x38\x61\x66\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35\x30\x61\x66\x69\x69\x31\x30\x30\x35\x31"
+"\x61\x66\x69\x69\x31\x30\x30\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69\x31\x30\x30\x35\x34\x61\x66\x69\x69\x31"
+"\x30\x30\x35\x35\x61\x66\x69\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37\x61\x66\x69\x69\x31\x30\x30\x35\x38\x61"
+"\x66\x69\x69\x31\x30\x30\x35\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31\x30\x30\x36\x31\x61\x66\x69\x69\x31\x30"
+"\x30\x36\x32\x61\x66\x69\x69\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61\x66\x69\x69\x31\x30\x30\x36\x37\x61\x66"
+"\x69\x69\x31\x30\x30\x36\x38\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30\x30\x37\x30\x61\x66\x69\x69\x31\x30\x30"
+"\x37\x31\x61\x66\x69\x69\x31\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66\x69\x69\x31\x30\x30\x37\x34\x61\x66\x69"
+"\x69\x31\x30\x30\x37\x35\x61\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30\x37\x37\x61\x66\x69\x69\x31\x30\x30\x37"
+"\x38\x61\x66\x69\x69\x31\x30\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69\x69\x31\x30\x30\x38\x31\x61\x66\x69\x69"
+"\x31\x30\x30\x38\x32\x61\x66\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38\x34\x61\x66\x69\x69\x31\x30\x30\x38\x35"
+"\x61\x66\x69\x69\x31\x30\x30\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69\x31\x30\x30\x38\x38\x61\x66\x69\x69\x31"
+"\x30\x30\x38\x39\x61\x66\x69\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31\x61\x66\x69\x69\x31\x30\x30\x39\x32\x61"
+"\x66\x69\x69\x31\x30\x30\x39\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31\x30\x30\x39\x35\x61\x66\x69\x69\x31\x30"
+"\x30\x39\x36\x61\x66\x69\x69\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61\x66\x69\x69\x31\x30\x30\x39\x39\x61\x66"
+"\x69\x69\x31\x30\x31\x30\x30\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30\x31\x30\x32\x61\x66\x69\x69\x31\x30\x31"
+"\x30\x33\x61\x66\x69\x69\x31\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66\x69\x69\x31\x30\x31\x30\x36\x61\x66\x69"
+"\x69\x31\x30\x31\x30\x37\x61\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31\x30\x39\x61\x66\x69\x69\x31\x30\x31\x31"
+"\x30\x61\x66\x69\x69\x31\x30\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69\x69\x31\x30\x38\x34\x36\x61\x66\x69\x69"
+"\x36\x31\x32\x34\x38\x61\x66\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35\x32\x61\x6c\x70\x68\x61\x61\x6c\x70\x68"
+"\x61\x74\x6f\x6e\x6f\x73\x61\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x61\x6e\x67\x6c\x65\x72\x69\x67\x68\x74"
+"\x61\x6f\x67\x6f\x6e\x65\x6b\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x61\x72\x72\x6f"
+"\x77\x62\x6f\x74\x68\x61\x72\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x72\x69\x67\x68"
+"\x74\x61\x72\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x62\x73\x65\x62\x65\x74"
+"\x61\x63\x61\x63\x75\x74\x65\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x63\x64\x6f\x74\x61\x63\x63\x65"
+"\x6e\x74\x63\x68\x69\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75\x62\x64\x63\x61\x72\x6f\x6e\x64\x63\x72"
+"\x6f\x61\x74\x64\x65\x6c\x74\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x65\x62\x72\x65"
+"\x76\x65\x65\x63\x61\x72\x6f\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d\x65\x6e\x74\x65\x6d\x61\x63\x72\x6f\x6e"
+"\x65\x6e\x67\x65\x6f\x67\x6f\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x65\x71\x75"
+"\x69\x76\x61\x6c\x65\x6e\x63\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74\x61\x74\x6f\x6e\x6f\x73\x65\x78\x63\x6c"
+"\x61\x6d\x64\x62\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65\x66\x72\x61\x6e\x63\x67\x61\x6d\x6d\x61"
+"\x67\x62\x72\x65\x76\x65\x67\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x67\x64\x6f"
+"\x74\x61\x63\x63\x65\x6e\x74\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61\x72\x68\x63\x69\x72\x63\x75\x6d\x66\x6c"
+"\x65\x78\x68\x65\x61\x72\x74\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d\x61\x63\x72\x6f\x6e\x69\x6e\x66\x69\x6e"
+"\x69\x74\x79\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69\x6e\x74\x65\x67\x72\x61\x6c\x74\x70\x69"
+"\x6e\x74\x65\x72\x73\x65\x63\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x69\x6f\x67\x6f\x6e\x65\x6b\x69\x6f"
+"\x74\x61\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x69"
+"\x6f\x74\x61\x74\x6f\x6e\x6f\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x6b\x61\x70\x70\x61\x6b\x63"
+"\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63\x6c\x61\x63\x75\x74\x65\x6c\x61\x6d\x62"
+"\x64\x61\x6c\x63\x61\x72\x6f\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64\x6f\x74\x6c\x65\x73\x73\x65\x71\x75\x61"
+"\x6c\x6c\x69\x72\x61\x6c\x6f\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x6d"
+"\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70\x6f\x73\x74\x72\x6f\x70\x68\x65\x6e\x63"
+"\x61\x72\x6f\x6e\x6e\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x6e\x6f\x74\x65\x71\x75"
+"\x61\x6c\x6e\x75\x6f\x62\x72\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x6f\x6d\x61\x63\x72\x6f\x6e\x6f\x6d"
+"\x65\x67\x61\x6f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73"
+"\x6f\x72\x74\x68\x6f\x67\x6f\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70\x61\x72\x74\x69\x61\x6c\x64\x69\x66\x66"
+"\x70\x65\x73\x65\x74\x61\x70\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62\x73\x65\x74\x70\x72"
+"\x6f\x70\x65\x72\x73\x75\x70\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65\x76\x65\x72\x73\x65\x64\x72\x61\x63\x75"
+"\x74\x65\x72\x61\x64\x69\x63\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x72\x65\x76\x6c\x6f"
+"\x67\x69\x63\x61\x6c\x6e\x6f\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69\x6c\x6c\x61\x73\x63\x69\x72\x63\x75\x6d"
+"\x66\x6c\x65\x78\x73\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64\x73\x69\x67\x6d\x61\x73\x6d\x69\x6c\x65"
+"\x66\x61\x63\x65\x73\x70\x61\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74\x61\x75\x74\x62\x61\x72\x74\x63\x61\x72"
+"\x6f\x6e\x74\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e\x6f\x73\x75\x62\x72\x65\x76\x65\x75\x68"
+"\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65\x72\x73\x63\x6f\x72\x65\x64\x62\x6c\x75"
+"\x6e\x69\x30\x30\x41\x30\x75\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e\x69\x30\x32\x31\x42\x75\x6e\x69\x30\x32"
+"\x43\x39\x75\x6e\x69\x30\x33\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41\x39\x75\x6e\x69\x30\x33\x42\x43\x75\x6e"
+"\x69\x30\x33\x43\x32\x75\x6e\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69\x30\x34\x35\x30\x75\x6e\x69\x30\x34\x35"
+"\x44\x75\x6e\x69\x30\x34\x39\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36\x75\x6e\x69\x30\x34\x39\x37\x75\x6e\x69"
+"\x30\x34\x39\x38\x75\x6e\x69\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30\x34\x39\x42\x75\x6e\x69\x30\x34\x39\x43"
+"\x75\x6e\x69\x30\x34\x39\x44\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75\x6e\x69\x30\x34\x41\x32\x75\x6e\x69\x30"
+"\x34\x41\x33\x75\x6e\x69\x30\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34\x41\x45\x75\x6e\x69\x30\x34\x41\x46\x75"
+"\x6e\x69\x30\x34\x42\x30\x75\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e\x69\x30\x34\x42\x33\x75\x6e\x69\x30\x34"
+"\x42\x36\x75\x6e\x69\x30\x34\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42\x39\x75\x6e\x69\x30\x34\x42\x41\x75\x6e"
+"\x69\x30\x34\x42\x42\x75\x6e\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69\x30\x34\x43\x43\x75\x6e\x69\x30\x34\x44"
+"\x38\x75\x6e\x69\x30\x34\x45\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38\x75\x6e\x69\x30\x34\x45\x39\x75\x6e\x69"
+"\x30\x34\x45\x45\x75\x6e\x69\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32\x30\x41\x46\x75\x6e\x69\x32\x31\x32\x36"
+"\x75\x6e\x69\x32\x32\x31\x35\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75\x6e\x69\x32\x32\x32\x38\x75\x6e\x69\x32"
+"\x32\x39\x35\x75\x6e\x69\x32\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x75\x6f\x67\x6f\x6e\x65\x6b\x75"
+"\x70\x73\x69\x6c\x6f\x6e\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72"
+"\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75\x72\x69\x6e\x67\x75\x74\x69\x6c\x64\x65"
+"\x77\x61\x63\x75\x74\x65\x77\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72\x65\x73\x69\x73\x77\x67\x72\x61\x76\x65"
+"\x78\x69\x79\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63\x75\x74\x65\x7a\x64\x6f\x74\x61\x63\x63"
+"\x65\x6e\x74\x7a\x65\x74\x61\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31"
+"\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e"
+"\x74\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31"
+"\x34\x20\x62\x79\x20\x28\x55\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e"
+"\x74\x4e\x69\x6d\x62\x75\x73\x20\x53\x61\x6e\x73\x20\x49\x74\x61\x6c\x69\x63\x4e\x69\x6d\x62\x75\x73\x20\x53\x61\x6e\x73\x00\xc8"
+"\x02\x00\x01\x00\x06\x00\x0a\x00\x0e\x00\x11\x00\x14\x00\x19\x00\x20\x00\x25\x00\x3e\x00\x48\x00\x54\x00\x62\x00\x70\x00\x75\x00"
+"\x7c\x00\xa0\x00\xb4\x00\xb9\x00\xbf\x00\xc5\x00\xca\x00\xe3\x00\xee\x00\xf3\x00\xf9\x01\x1d\x01\x4a\x01\x82\x01\xc2\x01\xd9\x01"
+"\xe8\x01\xf9\x02\x04\x02\x0c\x02\x13\x02\x1a\x02\x5f\x02\x77\x02\x99\x02\x9d\x02\xb7\x02\xc7\x02\xdb\x02\xe9\x03\x07\x03\x23\x03"
+"\x2e\x03\x39\x03\x3f\x03\x4e\x03\x5b\x03\x63\x03\xa0\x03\xdd\x03\xfd\x04\x28\x04\x61\x04\x6d\x04\x94\x04\xa7\x04\xc1\x04\xca\x04"
+"\xd1\x04\xe0\x04\xe5\x04\xea\x05\x03\x05\x30\x05\x35\x05\x49\x05\x5b\x05\x63\x05\x72\x05\x8a\x05\x97\x05\xa2\x05\xb7\x05\xc3\x05"
+"\xd7\x05\xde\x05\xe3\x05\xea\x05\xf4\x05\xfb\x06\x04\x06\x0b\x06\x13\x06\x1f\x06\x2b\x06\x36\x06\x41\x07\x06\x07\x46\x07\x4d\x07"
+"\x72\x07\xb6\x08\x35\x08\xb1\x09\x29\x09\x6c\x09\xd0\x0a\x34\x0a\x70\x0a\xbb\x0a\xea\x0b\x3b\x0b\x40\x0b\x83\x0b\xc3\x0c\x04\x0c"
+"\x3c\x0c\x69\x0c\x87\x0c\xc3\x0c\xfe\x0d\x22\x0d\x3c\x0d\x65\x0d\x77\x0d\xa4\x0d\xc6\x0d\xf2\x0e\x1d\x0e\x3c\x0e\x5c\x0e\x6d\x0e"
+"\x94\x0e\xba\x0e\xde\x0f\x00\x0f\x07\x0f\x29\x0f\x3c\x0f\x5e\x0f\x77\x0f\x8b\x0f\xa8\x0f\xb2\x0f\xba\x0f\xd1\x0f\xd7\x0f\xf3\x10"
+"\x0d\x10\x18\x10\x31\x10\x36\x10\x4a\x10\x62\x10\x7a\x10\x91\x10\xa0\x10\xb3\x10\xc9\x10\xde\x10\xed\x10\xf6\x11\x0a\x11\x1e\x11"
+"\x30\x11\x43\x11\x56\x11\x69\x11\x76\x11\x87\x11\x8e\x11\x9e\x11\xaf\x11\xc0\x11\xcd\x11\xde\x11\xeb\x11\xf8\x12\x05\x12\x15\x12"
+"\x25\x12\x33\x12\x42\x12\x51\x12\x5e\x12\x6c\x12\x7a\x12\x88\x12\x96\x12\x9e\x12\xaa\x12\xb7\x12\xc2\x12\xc5\x12\xd1\x12\xdd\x12"
+"\xe9\x12\xf5\x13\x01\x13\x0c\x13\x17\x13\x22\x13\x2d\x13\x38\x13\x43\x13\x4e\x06\x9c\xdd\x05\x0b\x05\x37\x06\x0b\xf9\x6d\x15\x0b"
+"\x2c\x1d\x0e\x4b\x1d\x0e\x06\xeb\xf8\x56\x0b\x06\xfb\x2f\xfd\x6d\x05\x0b\x06\x7c\x43\x05\x0b\xf8\xa0\xf7\x6f\x15\xa6\xfb\x6f\x05"
+"\xf1\x06\xd9\x1d\xee\x06\xf7\x0f\xf7\x6f\x05\xf7\xa7\xe7\x1d\x0b\xf7\xf1\x22\x1d\x2d\x26\x1d\xe9\x06\x0b\x15\xf7\x14\xf7\x28\x05"
+"\x4b\x06\x23\x79\x1d\x0e\x15\x78\x30\x8f\x23\x05\xa9\x06\xbb\xf3\x9e\xe6\x05\x0e\x15\xfb\x14\xfb\x28\x05\xc7\x06\xf7\x48\xf7\x28"
+"\x05\x0b\x06\x9b\xd5\x05\x0b\x06\xf7\x1e\xf9\x1b\x05\x0b\xf8\x54\xf7\xb2\x15\xf8\x04\xf8\x4f\x05\xfb\x03\x06\xfb\xb5\xfb\xf9\xfb"
+"\x1c\xf7\xf9\x05\xfb\x04\x06\xf7\x4e\xfc\x4f\x4e\xfb\xb2\x05\xe9\x06\x0b\x15\x23\x06\x75\x24\x05\xf2\x06\xf7\x4c\xf2\x15\x23\x06"
+"\x75\x24\x05\xf2\x06\x0b\xb5\xcc\xa0\x1f\x0e\xfb\x3a\x05\xe9\x06\x0b\x1f\x6f\x65\x05\x71\x0b\x2b\xfc\x56\x05\x0b\x15\x76\x29\x05"
+"\xc2\x06\x50\x80\x73\x6e\x64\x1b\x83\x65\x05\xca\xbb\xbc\xdd\x9d\x1f\x9e\xe8\x05\x0e\x15\xfb\xa6\x06\x7c\x46\x05\xf7\xa6\x06\x0e"
+"\xf9\x6d\xe4\x1d\x0b\xf7\x03\xf8\xa0\x05\x0b\xf7\x49\xf8\xa0\x15\xfb\x03\xfc\xa0\x05\x78\x1d\xe5\x1b\xbd\xb0\x68\x5d\x85\x89\x7d"
+"\x87\x7a\x1f\x41\xfb\xf1\x05\xdf\x06\xdb\xf8\x0c\x6c\x1d\x0b\xf8\xc0\x16\xf7\x9c\xf8\xa0\x05\x30\x06\xfb\x58\xfc\x2c\x80\xf8\x2c"
+"\x05\x22\x06\xfb\x51\xfc\x2c\x78\xf8\x2c\x05\x30\x06\xb3\xfc\xa0\x05\xeb\x06\xf7\x57\xf8\x36\x97\xfc\x36\x05\x0b\x15\x35\x06\x9a"
+"\xd0\x05\xbe\x96\x9c\x9b\xb7\x1b\x92\x92\x8b\x89\x98\x1f\x9a\xd0\x05\x8f\x79\x80\x8c\x7b\x1b\x3e\x53\x5e\x41\x7b\x1f\x78\x32\x05"
+"\x45\x06\x7d\x48\x05\xd1\x06\x2a\xfc\x5d\x05\xdf\x06\xec\xf8\x5d\x05\xe1\x06\x0b\x44\x4e\x76\x64\x62\x1e\x66\x68\x74\x57\x5c\x1a"
+"\x4e\xae\x6e\xf2\x70\x1e\xd5\x78\xac\x82\x9a\x85\x94\x80\x19\x92\x82\x91\x7c\x82\x1a\x78\x7c\x6d\x7a\x7e\x1e\x76\x72\x60\x7e\x60"
+"\x1b\x45\x65\xa6\xbd\x91\x8c\x94\x8c\x95\x1f\x32\x06\x86\x74\x8a\x7f\x7b\x1a\x0b\x15\x89\x82\x87\x8b\x87\x1b\x71\x7f\x94\x9f\x8e"
+"\x8b\x8f\x8c\x8e\x1f\xcb\xf7\xc1\x05\x91\x0b\xf7\xdd\x22\x1d\x2d\x26\x1d\xf8\x5a\x20\x1d\xfb\xfc\x06\x0b\x8d\x9a\x8e\x9a\x1f\xf7"
+"\x01\xf8\x94\x05\x2d\x06\x25\xfc\x72\x05\x0b\x15\x87\x79\x8a\x83\x81\x1a\x50\xbf\x63\x0b\x06\xb5\xf7\x5d\x05\x37\x06\x0b\x96\x89"
+"\x87\x95\x1f\x75\x0b\x98\x93\x8c\xb7\x9a\x08\x0b\xf7\x46\xf8\xa0\x15\x42\xfb\xe7\x05\x84\x6a\x87\x6c\x7c\x1a\x3e\xd8\x57\xf7\x05"
+"\xd1\xc4\x9e\xb1\xb5\x1e\xb1\xad\x97\xa5\x9e\xe6\xd4\xf7\xe7\x18\x37\x06\x42\xfb\xe7\x80\x54\x7b\x6f\x6d\x76\x19\x7a\x71\x68\x81"
+"\x67\x1b\x4c\x63\xa8\xb9\x94\x8e\xa2\x90\xa3\x1f\xd4\xf7\xe7\x05\x0b\x9b\x51\x1b\x7e\x3e\x15\xd5\xb6\x5b\x3a\x50\x7b\x4a\x6f\x59"
+"\x1f\x46\x65\x55\x67\x46\x66\x1d\x0b\xf8\xc1\xf8\xa0\x15\xfc\x1c\x27\x1d\xf7\xba\x06\xfc\x1f\xfc\x0e\x79\x41\x05\xf8\x3f\x06\x9a"
+"\xd3\x05\xfb\xda\x06\xf8\x1c\xf8\x0d\x05\x0b\x15\x69\x1d\x0b\xf8\x81\xf9\x1b\x15\xf7\x82\x20\x1d\xfc\xd1\x06\x7a\x39\x05\xf7\x85"
+"\x06\xfb\x1e\xfd\x1b\x05\xe9\x06\x0b\xfb\x01\xfc\x94\x05\x28\x76\x3a\x4f\xfb\x06\x1b\x2a\x4b\xb9\x0b\x15\x23\x06\x75\x24\x05\xf3"
+"\x06\xf7\x4b\xf2\x15\x23\x06\x75\x24\x05\xf3\x06\x0b\xbb\x1d\xf3\xee\xc3\x28\x05\xca\x06\x4b\xf7\x2a\x05\x0b\xfb\x20\x37\x50\xfb"
+"\x03\x78\x1e\xdf\x06\x94\xa7\x92\x99\x99\x99\x08\xa2\xa1\xb5\x99\xb6\x1b\xc8\xb8\x70\x66\x86\x8a\x0b\x1f\x88\x79\x82\x62\x78\x80"
+"\x42\x84\x19\xfb\x1a\x7f\x61\x81\x5a\x6c\x08\x57\x6a\x6d\x56\x51\x1a\x3b\xc1\x5b\x0b\xf8\xa0\x15\xfb\x03\xfc\xa0\x05\xdf\x06\x0b"
+"\x06\xdd\xb3\x6c\x4b\x31\x3e\x44\x28\x1f\x0b\x9d\x1f\x9f\xe8\x05\x0e\xa2\xb6\xac\x9e\xac\xa9\x9d\x1f\xa4\x9a\xa7\x93\xbc\x92\x0b"
+"\x1f\xfb\x00\xf7\x46\x15\x4d\x7e\x33\x56\x33\x1b\x0b\x15\xfb\xa7\x06\x7c\x46\x05\x0b\x3d\x1d\xa6\x8b\x8b\x95\x1a\xcf\x46\xb8\x22"
+"\x4c\x1d\x85\x8a\x83\x4d\x1d\xe5\xaf\xb3\x92\x98\xb0\x1e\xaa\x96\x9a\x95\xb5\xaf\x08\x84\x07\x87\x07\x61\xa7\x73\xbb\x97\x8e\x8b"
+"\x91\xa3\x1e\x8d\x91\x8d\x8c\x91\x52\x1d\x52\x6b\x51\x1d\xea\x43\x1d\x0e\xf7\x92\xf7\xce\x15\xf7\x83\x06\xcd\xae\x71\x5a\x79\x88"
+"\x76\x86\x76\x1f\x73\x27\x8b\x8b\x6c\x1a\x7b\x8c\x80\x8e\x76\x1e\xf7\x05\x06\x90\xa2\x05\x7e\x97\x83\x9e\xa1\x1a\x95\x8d\x9d\x8f"
+"\xa1\x1e\x9f\xf7\x02\x8c\x93\x8c\x1d\x6d\x61\x7a\x4b\x1b\x0b\xf8\xc7\xf7\x7e\x15\x99\xd6\x8e\xa5\xab\x1a\xed\x5f\x1d\xdf\xa1\x8c"
+"\x95\x8f\x9a\x1f\x9d\xd3\x77\x1d\x81\x8a\x84\x89\x7b\x1f\x0b\xf9\x56\x22\x1d\x49\x1d\xd0\x99\x3f\x1d\x84\x68\x84\x5e\x7b\x1a\x62"
+"\xa2\x59\xab\x6e\x1e\x66\xb4\xcd\x76\xd8\x1b\xf7\x3c\xf7\x15\xe9\xf7\x26\xaa\x1f\xf7\x01\xf8\x94\x05\x0b\xf8\x77\x16\x38\x1d\x37"
+"\x06\x4c\xfb\xbd\x05\xfb\x00\x74\x45\x45\x35\x1b\x54\x69\xa8\xbb\x93\x8c\x94\x8d\x95\x1f\xda\xf8\x07\x21\x1d\x35\xfc\x28\x05\x89"
+"\x81\x8a\x80\x7e\x1a\x47\xbf\x62\xe1\xd9\xc4\xa3\xc3\xc5\x1e\x7f\x52\x05\x0b\xa6\x1d\x5a\x6a\x9f\xa9\x1f\x90\x07\x93\x07\x0e\x6a"
+"\xa8\x1e\xaf\x62\x56\x9b\x3d\x1b\x24\x3a\x6e\x53\x55\x1f\x62\x61\x6c\x44\x58\x1a\x4c\xb7\x56\xce\x78\x1e\xf7\x3f\x5b\x05\xdc\x74"
+"\xab\x6f\x5a\x1a\x6c\x0b\xd6\x16\xe9\x06\x9d\xde\xf8\x68\xf8\x42\xfb\x01\xfc\x95\x05\xe8\xb8\x1d\x0b\xef\x8c\x19\x90\x06\x95\x06"
+"\x9d\xe0\x05\x8d\x7e\x83\x8c\x80\x1b\x51\x5f\x71\x44\x4c\x1f\x9c\xdd\x05\x0b\x18\x60\x1d\x92\xa1\x62\x33\x1d\x0b\xe5\x1d\x64\x1b"
+"\x83\xd7\x1d\xad\x1d\xc4\x1b\xf7\x0c\xf2\xd5\xf7\x00\xaa\x1f\xdf\x1d\x0b\xb6\x1d\x6e\x73\x0b\xf9\x79\x63\x1d\x0b\x79\xb3\x71\xa6"
+"\x1e\xab\x6c\x62\x9a\x52\x1b\x31\x3a\x65\x46\x56\x1f\x5c\x4e\x69\xfb\x01\x2f\x1a\x0b\x15\xfb\x05\x2a\x61\x36\x3a\x1f\x32\x2f\x56"
+"\xfb\x17\xfb\x14\x1a\x34\xa6\x3f\xb9\x5d\x1e\x5b\xbb\xdc\x6e\xe0\x1b\xe9\xe0\xa6\xbd\xcc\x1f\xf7\x09\xe5\xd7\xf7\x36\xf7\x32\x1a"
+"\xda\x0b\xfa\x40\x4b\x1d\x0e\x15\x23\x06\x75\x24\x05\xf3\x06\xf7\x4c\xf2\x15\x23\x06\x75\x24\x05\xf3\x06\x0e\x1b\x44\x5f\xbc\xdc"
+"\xc5\x9c\xcc\xa6\xbd\x1f\xcf\xaf\xc4\xb0\xcd\x1b\x0b\xf7\x48\x4e\x1d\xc5\xf7\xa4\x0b\x98\x8c\x94\x8e\x9e\x1f\x34\x06\x84\x71\x89"
+"\x7b\x76\x1a\x0b\x75\x24\x05\xbb\x06\x81\x52\x76\x6f\x67\x86\x83\x65\x18\xc8\x8f\xb7\xbb\x9c\xda\xa0\xef\x18\x0b\xfb\x14\xfb\x2a"
+"\x05\xc7\x06\xf7\x48\xf7\x2a\x05\x0b\x15\xfc\xeb\x06\x80\x59\x05\xf8\xeb\x06\x0e\x05\x8e\x98\x8c\x97\x98\x1a\xd7\x56\xbc\x38\x3f"
+"\x49\x70\x56\x57\x1e\x98\xcc\x05\x0b\x8b\x90\x1b\x9c\x99\x81\x7f\x6b\x71\x74\x66\x0b\x06\xdb\xc7\x9f\xb5\xbb\x1f\xc0\xba\xab\xd3"
+"\xd3\x1a\xf5\x46\xc8\xfb\x0d\x1e\x0b\xd0\x1d\x6d\xa7\x61\x1f\x0b\x15\x20\x74\x1d\x0b\xf7\x82\x05\x25\x75\x1d\x0b\x08\xc0\x06\xa8"
+"\xa0\x91\x8f\xa2\x1b\x0b\xdf\x06\x38\x1d\x37\x06\x0b\x06\xf7\x11\xfb\x28\x05\xc0\x06\x0b\x06\xfb\x28\xfb\x5d\x05\x0b\xdf\x06\xf7"
+"\x04\xf8\xa0\x05\x0b\x15\xe7\xa5\xd5\xcb\xdc\x1b\xd2\xb8\x5b\x40\x0b\xdf\x06\xc8\xf7\xb5\x05\xf7\x02\xa3\xd1\xcf\x0b\x29\x53\xed"
+"\x05\x4c\x06\xcb\xfb\x28\x05\x0b\x71\x71\x6f\x77\x7c\x99\xa0\xa5\xa6\xa5\x0b\xf7\x75\xf8\x05\x15\xcd\xa0\xb4\xa6\xda\x1b\xcc\xb2"
+"\x76\x67\x85\x8a\x85\x8a\x84\x1f\x86\x72\x81\x60\x79\x80\x43\x84\x19\xfb\x15\x80\x60\x81\x59\x6d\x08\x58\x6b\x6c\x55\x51\x1a\x3c"
+"\xc2\x5a\xe2\xe2\xe2\xb0\xcc\xce\x1e\x45\xb2\xc2\x6b\xdb\x1b\xf7\x0d\xf1\xd4\xf7\x01\xab\x1f\x37\x06\x46\x67\x56\x67\x49\x1b\x68"
+"\x70\x93\x9c\x77\x1f\x71\xa1\x7a\xad\xa7\x1a\x91\x07\x97\x07\xa4\x8c\x96\x8f\x9c\x1e\xf8\x16\x06\x99\xd8\x8e\xa5\xac\x1a\xe8\x36"
+"\xd7\x25\x47\x46\x72\x63\x5e\x1e\x88\x92\x89\x8d\x78\x9b\x08\xa9\x67\x68\x95\x4b\x1b\x38\x46\x75\x64\x62\x1f\x73\x73\x7e\x70\x7b"
+"\x51\x08\xf7\xac\xfb\x61\x15\x4f\x7e\x34\x54\x37\x1b\x50\x6c\xa2\xb6\xac\x9e\xab\xa9\x9e\x1f\xa3\x9a\xa6\x93\xbf\x92\xee\x99\x91"
+"\x8c\xb0\x98\x08\xe4\xbc\x15\xed\xaa\xcf\xc5\xdf\x1b\xd1\xb7\x5c\x3f\x80\x8a\x84\x89\x7c\x1f\x0b\xf8\xbc\xbe\x3d\x1d\xa5\x8b\x8b"
+"\x96\x1a\xcf\x46\xb8\x22\x4c\x1d\x85\x8a\x83\x4d\x1d\xe5\xaf\xb3\x92\x98\xb0\x1e\xaa\x96\x9a\x95\xb5\xaf\x08\x84\x07\x87\x07\x61"
+"\xa7\x73\xbb\x97\x8e\x8b\x91\xa3\x1e\x8d\x91\x8d\x8c\x91\x52\x1d\x52\x6b\x51\x1d\xea\x43\x1d\x0b\xf9\x56\xf8\x97\x7e\x1d\x0b\x15"
+"\x91\xa7\x8d\x97\x9b\x1a\xb6\x76\xb9\x5a\x1d\x78\x65\x6f\x71\xe6\x1d\xb5\xe6\x68\x1d\xfb\x0d\xe5\x44\xf7\x2b\xf4\xe3\x92\x1d\x83"
+"\x88\x78\x1e\x0b\xf8\x96\xf8\x0e\x15\x90\xa0\x8c\x94\x98\x1a\xd1\x49\xbb\x29\x3c\x1d\x3b\xd0\x5b\xf7\x09\xf7\x29\xec\xd8\xf7\x0b"
+"\xc8\x6a\xab\x33\xa1\x1e\x3f\x9e\x05\x53\x99\x6e\x9f\xa5\x1a\x9f\x97\xa4\x9d\x9c\x1e\xa2\xa3\xa9\x95\xb7\x1b\xc6\xac\x75\x63\x1f"
+"\x85\x07\x86\x07\x8a\x80\x05\x0b\xf8\xa0\x15\x7a\x3d\x7c\xac\x81\x99\x75\x9b\x19\x9e\x71\x6b\x96\x69\x1b\x3e\x3d\x65\x4d\x5a\x1f"
+"\x55\x48\x66\xfb\x03\x2e\x1a\xfb\x01\xd2\x3f\xf1\xca\xc5\xa6\xc0\xbe\x1e\x87\x78\x05\xfb\x1d\x6e\x56\x56\x20\x1b\x47\x63\xa6\xb8"
+"\x1f\x91\x07\x93\x37\x07\x89\x73\x8b\x8a\x85\x1a\x3e\xd0\x59\xf7\x00\xdb\xd1\xa3\xb6\xb8\x1e\xbd\xbb\xa6\xc8\xa6\xf7\x13\xe8\xf8"
+"\x4b\x18\xfb\x82\x4d\x15\xcb\xb5\x5b\x41\x4c\x79\x41\x6f\x5a\x1f\x4e\x6a\x50\x65\x4f\x1b\x48\x61\xbc\xdb\xc7\x9b\xcb\xa8\xbf\x1f"
+"\xcc\xb0\xc2\xb0\xcb\x1b\x0b\xf9\xad\xf8\x15\x15\xfb\xc4\x06\x79\x39\x05\xf7\x72\x06\x85\x71\x7c\x49\x6e\x5d\x58\x61\x19\x5f\x55"
+"\x51\x76\x46\x1b\x41\x4b\xa7\xb9\x6c\x1f\x73\xae\x7e\xc0\xc4\x1a\xe3\xae\xf2\xc0\xd1\x1e\xda\xc8\xe1\xb6\xec\x1b\xc8\xbd\x79\x69"
+"\xac\x1f\xa5\x70\x95\x70\x8c\x5d\x08\xe6\x92\x06\x8f\x07\x91\x07\xf7\x19\x2a\xde\xfb\x31\xfb\x08\x29\x63\x3d\x3d\x1e\x2b\x2b\x51"
+"\xfb\x1c\xfb\x16\x1a\x2d\xad\x35\xc3\x5d\x1e\x66\xb8\xcd\x76\xcf\x1b\xcc\xd0\x9d\xaa\xc1\x1f\xa3\x99\x9e\x99\xb1\xab\x8f\x31\x18"
+"\xc6\x06\x0b\x9e\x89\x15\xa5\x6f\xd9\xd2\x05\x61\xa9\xc0\x75\xcf\x1b\xe7\xd8\xb3\xd7\xc2\x1f\xb9\xcb\xac\xf7\x00\xe4\x1a\xa8\x85"
+"\xa4\x7e\xa8\x1e\xdc\xd5\x71\xa9\x3f\x46\x05\xb8\x6a\x59\xa1\x44\x1b\x2f\x3a\x62\x40\x58\x1f\x5e\x4a\x6a\xfb\x01\x36\x1a\x6c\x91"
+"\x70\x9a\x6b\x1e\xd4\xce\x15\x86\x9a\x8a\x92\x9c\x1a\xc9\x9b\xcb\xa7\xbe\x1e\xcf\xaf\xc3\xb0\xcb\x1b\xb9\xaf\x79\x69\x9e\x1f\x99"
+"\x63\x15\x8f\x77\x8c\x80\x80\x1a\x5b\x78\x3f\x73\x5e\x1e\x49\x67\x52\x64\x4b\x1b\x5f\x67\x9c\xaa\x78\x1f\x0b\xf8\xbc\xbe\x3d\x1d"
+"\xa6\x8b\x8b\x95\x1a\xcf\x46\xb8\x22\xfb\x20\x37\x50\xfb\x03\x78\x1e\xdf\x06\x94\xa7\x92\x99\x99\x99\x08\xa2\xa1\xb5\x99\xb6\x1b"
+"\xc7\xb9\x70\x66\x87\x8a\x84\x8a\x83\x4d\x1d\xe4\xb0\xb3\x92\x98\xb0\x1e\xaa\x96\x9b\x95\xb4\xaf\x08\x84\x07\x87\x07\x0b\xda\x16"
+"\xf7\xde\x06\xdd\xcb\xa7\xc6\xbf\x1f\xb6\xbb\xa1\xc5\xcc\x1a\xc8\x70\xae\x45\xa9\x1e\xe3\xb2\xbb\xd3\xe5\x1a\xb1\x80\xa7\x72\xa6"
+"\x1e\xaf\x69\x61\x9a\x46\x1b\xfb\xbc\x06\xa6\xfb\xce\x15\xbd\xf7\x7c\x05\xf7\x48\x06\xe1\xb1\x70\x50\x66\x7d\x67\x73\x70\x1f\x6b"
+"\x6d\x64\x7d\x48\x1b\xfb\x8f\xfb\xe1\x15\xc1\xf7\x8f\x05\xf7\x76\x06\xd0\xb0\x6c\x4f\x64\x80\x69\x74\x6d\x1f\x63\x6c\x65\x7a\x53"
+"\x1b\x0e\xf7\xee\xf7\xc4\x15\x22\x60\x9f\xbc\xbc\xc2\xb3\xce\xb0\xae\x7d\x75\x9b\x1f\x95\x7e\x8f\x7d\x8d\x6d\x08\xe0\x06\x8a\xba"
+"\x85\xa4\x78\xa6\x08\xb8\x6c\x51\xa5\x45\x1b\xfb\x09\x2c\x40\x30\x65\x9c\x6f\xb6\x6c\x1f\x39\x75\x5c\x53\x41\x1a\x33\xd5\x50\xf7"
+"\x03\xd3\xcd\xa3\xb7\xbb\x1e\xb0\xac\x9e\xac\x9e\xc4\x08\x2e\x06\x41\x72\x53\x63\x3c\x1b\x47\x65\xa7\xbf\xcd\xca\xae\xf7\x09\x8e"
+"\x94\x8b\x8a\x95\x1f\x0b\xf7\x35\xf7\xe9\x15\x43\xfb\xe9\x05\xa3\x1d\x47\xfb\xd5\x05\x45\x06\x7e\x48\x05\xf7\x36\x16\xf7\x3b\x06"
+"\x99\xce\x05\xfb\x3a\x06\xbe\xf7\x83\x05\xf7\x3f\x06\xf6\xcb\x4d\x22\x2f\x6b\xfb\x0c\x63\x4c\x1f\x3b\x58\x3e\x60\x30\x1b\xfb\x40"
+"\x06\x0e\xfc\x79\x15\xc4\xaa\xa1\xaa\xbc\x1a\xc3\x62\xad\x4a\x36\x46\x4e\x40\x6f\x94\x7d\xab\x74\x1e\x4b\x6e\x69\x5d\x4f\x1a\x4b"
+"\xb8\x64\xd3\xe9\xdb\xd3\xdf\xaf\x7a\xa6\x67\x9e\x1e\x66\xf7\x2e\x15\xb2\xa1\x78\x6b\x5c\x65\x68\x58\x64\x75\x9e\xab\xb9\xb2\xaf"
+"\xbd\xd4\x1d\x60\x6f\xa4\xb2\xc5\xbb\xb9\xc7\x1f\x0b\x22\x1d\x37\x06\x4f\xfb\xad\x9f\x1d\xfb\x20\xf8\x62\x15\xd6\xb6\x59\x36\x4f"
+"\x7b\x4f\x6d\x57\x1f\x48\x64\x5a\x69\x4e\x1b\x41\x60\xbd\xe1\xc4\x9b\xca\xa7\xbe\x1f\xd0\xb1\xbb\xab\xcb\x1b\x0b\xf8\xc9\xf7\x7e"
+"\x15\x98\xb8\x90\xa7\xae\x1a\xf7\x0d\x40\xd7\xfb\x0c\x36\x3e\x65\x47\x53\x1e\x58\x4b\x6a\x27\x2d\x1a\xfb\x0f\xd7\x40\xf7\x10\xf7"
+"\x0d\xe5\xcb\xf7\x0a\xb8\x1e\x32\x06\x46\x66\x55\x67\x49\x1b\x42\x59\xbd\xd4\x9d\x8d\x98\x90\xa5\x1f\x9a\xcf\x15\xed\xa7\xd2\xc9"
+"\xe0\x1b\xd1\xb8\x5c\x42\x7e\x8a\x82\x87\x79\x1f\x0b\xb1\x1d\xcc\x1d\x0b\x15\xfb\x8a\xfb\x79\xfb\x72\xfb\x83\xfb\x43\xf7\x15\xfb"
+"\x14\xf7\x45\xf7\x8a\xf7\x79\xf7\x72\xf7\x84\xf7\x43\xfb\x15\xf7\x13\xfb\x45\x1f\x7d\x4d\x15\xf7\x25\xf4\x21\xfb\x26\xfb\x5d\xfb"
+"\x51\xfb\x4f\xfb\x5e\xfb\x24\x21\xf6\xf7\x26\xf7\x5c\xf7\x51\xf7\x4f\xf7\x5e\x1f\x0e\x9f\x1a\xb8\x7e\x9f\x5c\xaa\x1e\xb2\xa1\x9b"
+"\x96\x9d\x9b\x08\xb3\xb0\xa6\xce\xc9\x1a\xf5\x51\xbb\xfb\x14\x1e\xfb\xe4\x26\x1d\xe9\x06\xdf\xf8\x20\x15\xc1\xf7\x8f\x05\xf7\x7a"
+"\x06\xc0\xa5\x84\x76\x9e\x1f\x98\x7d\x93\x74\x73\x1a\x65\x7d\x60\x75\x6f\x1e\x67\x0b\x65\xbe\x4b\x99\x1e\xb1\x95\x9f\x96\xa4\xa4"
+"\x08\xb3\xb2\xa2\xc1\xc1\x1a\xf0\x40\xce\xfb\x05\x34\x3c\x64\x48\x5c\x1e\x71\x66\x7c\x65\x81\x50\x08\xec\x06\xf0\x9c\xc5\xc4\xe0"
+"\x1b\xcb\xb0\x6a\x50\x35\x44\x4a\x2c\x1f\x6a\x06\x7a\x3a\x05\xb3\x06\xe5\xb3\x6e\x49\x0b\xf7\x47\x4e\x1d\xc8\xf7\xb5\x05\xf3\xa2"
+"\xda\xd4\xe7\x1b\xbc\xa7\x76\x66\x81\x87\x72\x86\x73\x1f\xfb\x0c\xfc\xcb\x05\xdf\x06\xf7\x0e\xf8\xd2\x05\x92\xac\x8f\xa6\x96\x1a"
+"\xcd\x4e\xb9\x36\x3a\x52\x6c\x43\x59\x1e\x9d\xe3\x05\x0b\x08\x29\x06\x72\x52\x7b\x6d\x79\x72\x08\x50\x61\x3f\x66\x3c\x1b\x23\x46"
+"\xdc\xf7\x0d\xe7\xa9\xee\xbe\xd7\x1f\xe5\xc8\xd4\xb6\xe7\x1b\xf0\xbd\x5a\xfb\x00\x93\x1f\xeb\x06\xb9\x1d\x0b\xf9\x63\x15\x6e\x79"
+"\x81\x83\x78\xbc\x1d\x7f\x7c\x83\x7a\x80\x68\x72\x1d\x90\x42\x1d\xcc\x9c\x87\xa1\x1b\xb7\xb6\x31\x1d\xf8\x85\xf8\xa0\x15\xfb\x7b"
+"\xfc\x2c\x5b\xf8\x2c\x05\x36\x06\xcd\xfc\xa0\x59\x36\x05\x61\x73\x78\x7d\x69\x1b\x7c\x81\x8d\x94\x78\x1f\x7b\x3e\x05\x83\xa2\x98"
+"\x88\x9f\x1b\xa8\xa9\x94\x9a\xa3\x1f\xa6\x9d\x9c\x9f\xa6\xb9\xf8\x05\xf9\x0e\x18\x0b\xa8\xc2\xc6\x1e\xbf\xba\xae\xd3\xc4\x1a\xa6"
+"\x83\xa5\x7b\xa4\x1e\x75\xae\x6e\x9f\x5c\x98\xfb\x40\xbc\x18\x3e\xa1\x73\x9f\xb7\x1a\xaf\x99\xa9\xa9\xa6\x1e\xac\xb0\xbb\x9b\xce"
+"\x1b\xc3\xb5\x80\x77\xa1\x1f\x9e\x7a\x98\x6b\x6e\x1a\x82\x8a\x0b\x62\x1d\x5b\x9b\x5b\xa7\x68\x1e\x60\xad\xb7\x78\xcc\x1b\xdd\xd0"
+"\xa8\xc1\xb9\x1f\xa5\xa9\x9b\xad\x9b\xc3\x08\x37\x06\x39\x6d\x54\x5f\x43\x1b\x0b\xf8\x38\x15\xcd\xf7\xc9\x05\x2d\x26\x1d\xf7\xd3"
+"\x6e\x1d\xfb\x80\x39\x15\xf7\x66\x4f\x1d\xfb\x67\x06\x0b\x06\xf7\x2f\xf9\x6d\x05\x2d\x06\x3c\xfc\x04\x05\x76\x39\x4f\x82\x50\x1b"
+"\x20\x5f\xa3\xc4\x92\x8c\x96\x8d\x94\x1f\xd5\x1d\x7f\x80\x1a\x5d\xa3\x61\xb3\x72\x1e\x71\x0b\xa0\x1d\xbe\x68\xad\x1e\xac\x69\x5e"
+"\x9b\x51\x1b\x7e\x3e\x15\xd5\xb6\x0b\xf8\x67\x16\xf7\xe2\xf8\xf1\xfb\x15\xfc\xf1\x05\xe4\x06\xf7\x2f\xf9\x6d\x05\xfb\x17\x06\xfb"
+"\xee\xfd\x07\x3b\xf9\x07\x05\xfb\x15\x26\x1d\xe4\x06\xf7\x15\xf8\xf1\xd8\xfc\xf1\x05\x0e\xf7\xbd\x37\x1d\xb6\xf7\x5f\xf6\xe3\xf7"
+"\x06\xfb\xb7\x05\xeb\x06\xfb\x20\xf7\xeb\xf7\x72\xf7\x49\x05\xfb\x00\x06\xfb\xa1\xfb\x6e\x05\x0b\xf7\x24\x16\xe3\x06\xc4\xb3\xa5"
+"\xcd\xb7\x1f\xf8\x30\xf9\x11\x05\xfb\x06\x06\xfb\xb2\xfc\x62\x26\xf8\x62\x05\xfb\x00\x06\xf7\x22\xfc\xcd\x69\x51\x72\x78\x61\x8a"
+"\x19\x53\x06\x0b\xf8\x15\xf8\xaf\x15\x33\x3a\x63\x43\x56\x1f\x5c\x4d\x6c\x25\x2f\x1a\xfb\x09\xd8\x3e\xf7\x09\xe6\xda\xb2\xd4\xc1"
+"\x1e\xba\xc9\xaa\xf0\xe7\x1a\xf7\x0b\x3f\xd7\xfb\x0c\x1e\x0b\xf7\x2e\x15\xb1\xa2\x78\x6b\x5c\x64\x68\x58\x65\x74\x9e\xab\xb9\xb2"
+"\xaf\xbe\xd4\x1d\x5f\x6f\xa4\xb2\xc5\xbb\xb9\xc8\x1f\x0b\xf7\x8d\xf7\xe0\x15\xf8\x21\x20\x1d\xfc\x21\x06\xbd\xf7\x7d\x05\xf8\x30"
+"\x20\x1d\xfc\x8d\x26\x1d\xf8\x9f\x20\x1d\xfc\x42\x06\x0b\xf7\xd7\x6f\x1d\x83\x5f\x15\x9f\x9a\x7d\x77\x70\x7a\x1d\xa6\x1f\x0b\xe9"
+"\x06\xd4\xf7\xed\x05\xd7\x06\xf7\x2c\xfb\xed\x05\xee\x06\xfb\x3e\xf8\x14\xf7\xd4\xf7\xed\x05\xfb\x2b\x06\xfb\x88\xfb\xc2\x05\x4b"
+"\x06\xcb\xf7\xc2\x05\x0b\x05\xcc\x6b\x63\xa5\x44\x1b\xfb\x3a\xfb\x10\xfb\x32\xfb\x67\xfb\x09\xce\x3f\xf3\xb7\xb8\x98\xa4\xb3\x1f"
+"\xa9\x9d\x98\x9a\x99\xa7\x7b\x3f\x18\xdc\x06\x0b\x15\x2e\x39\x61\x41\x58\x1f\x5e\x4b\x6a\xfb\x02\x36\x1a\xfb\x03\xd8\x3f\xf7\x04"
+"\xeb\xd7\xb2\xd8\xc3\x1e\xb9\xca\xac\xf7\x01\xe2\x1a\xc0\x77\x0b\x15\xd6\xb7\x58\x34\x54\x7a\x4b\x70\x59\x1f\x47\x66\x59\x6a\x4a"
+"\x1b\x41\x5e\xbd\xdb\xc7\x9c\xcc\xa9\xbf\x1f\xce\xb0\xbd\xad\xc9\x1b\x0e\xab\x1d\xf8\x9f\x20\x1d\x0b\xf7\xae\x06\xf7\x00\xe6\xb8"
+"\xe4\xd4\x1f\xcf\xdf\xbb\xf7\x25\xf7\x11\x1a\xd4\x6d\xd5\x5c\xb5\x1e\xad\x65\x56\x9d\x4a\x1b\xfb\xae\x06\x0b\x15\xd4\xb6\x5b\x3a"
+"\x50\x7b\x4a\x6f\x59\x1f\x45\x65\x55\x68\x47\x66\x1d\x0b\x92\xfb\x69\x15\xdf\x06\xc7\xf7\xad\x05\x4a\xaa\xb4\x71\xd2\x1b\xd9\xd6"
+"\xaf\xc9\xbe\x1f\xc1\xce\xad\xf2\xee\x1a\xf7\x0c\x48\xd6\x20\x0b\x40\x1d\xd6\xbc\xbe\x9e\xa9\xac\x1e\xa3\xa0\x96\xa0\x96\xb7\x08"
+"\x53\x06\x63\x81\x63\x74\x4f\x1b\x0b\x21\x1d\x34\x1d\xfb\x66\x25\x1d\x21\x1d\x34\x1d\xfb\x66\x25\x1d\x05\x35\x06\x0e\x06\xbb\xf3"
+"\x9e\xe6\x05\xc7\xfb\x2b\x15\x2f\x06\x75\x24\x05\xe7\x06\xfb\x2c\xf2\x15\x2f\x06\x75\x24\x05\xe7\x06\x0e\x32\x1d\xc0\xf7\x8c\x05"
+"\x53\x2e\x1d\x0b\xd8\x1d\xb3\x06\xce\xd1\x1d\x0b\x15\xf8\x1f\x06\x9d\xdd\x05\xfc\x20\x06\xbd\xf7\x7d\x05\xf8\x30\x20\x1d\xfc\x8e"
+"\x26\x1d\x0b\xd3\x1d\x51\xd6\x1d\x0b\x38\xd5\xfb\x00\x34\x38\x62\x48\x58\x1e\x5c\x4c\x66\xfb\x05\x39\x1a\x55\xa3\x54\xb1\x66\x1e"
+"\x69\xae\xb7\x7b\x0b\x1e\xa3\xa0\x96\xa0\x96\xb7\x08\x53\x06\x63\x81\x63\x74\x4f\x1b\x5a\x6a\x9f\xa9\x1f\x90\x07\x93\x07\x0e\x6f"
+"\x1d\x84\x5f\x15\x9f\x99\x7c\x77\x71\x0b\x15\x76\x29\x05\xc2\x06\x50\x80\x73\x6e\x64\x1b\x83\x65\x05\xca\xba\xbb\xde\x9e\x1f\x9e"
+"\xe8\x05\x0e\xb6\x1d\x6f\x72\x0b\x06\xf7\x1d\xf9\x1b\x05\x2d\x06\xfb\x1d\xfd\x1b\x05\xfb\x93\x2e\x1d\x2d\x06\x0e\x22\x1d\xfb\x01"
+"\xfc\x95\x7f\x53\x7e\x6a\x75\x72\x19\x70\x73\x66\x7a\x66\x1b\x55\x67\xa9\xb9\x0b\x32\x06\xaa\xf7\x24\x21\x1d\x6c\xfb\x24\x05\x44"
+"\x06\x7d\x48\x05\xd2\x06\x3c\xfc\x06\x05\x89\x0b\x15\xf8\x51\xfb\x63\x9c\xd8\xfb\xf5\xf7\x37\xf8\x3a\xf7\x38\x9c\xda\xfc\xa9\xfb"
+"\x63\x05\x0e\x98\x85\x90\x8c\x8b\x8b\x91\x8c\x19\x8d\x95\x8c\x6d\x1d\x0b\x06\xea\xfb\x8d\x05\xe9\x06\x21\xf7\xb2\xf7\x42\xf7\x82"
+"\x05\x26\x75\x1d\x0b\x06\xf7\x2f\xf9\x6d\x05\x2d\x06\x7a\x39\xfc\x67\xfc\x40\xf7\x00\xf8\x92\x05\x2d\x06\x0b\x88\xc6\x81\xb1\x78"
+"\xad\x08\xd1\x62\x45\xb0\x2c\x1b\xfb\x09\x2a\x5c\x2d\x3d\x1f\x0b\x05\x2d\x06\xfb\x1e\xfd\x1b\x05\xfc\x0a\x2e\x1d\x2d\x06\x0e\x15"
+"\xfb\x14\xfb\x2a\x05\xcb\x06\x0b\x1b\x80\x70\x91\x94\x71\x1f\x98\x64\x7b\x8f\x7a\x1b\x71\x6d\x7c\x76\x7a\x1f\x0b\x6b\x69\x1f\x67"
+"\x6a\x5f\x79\x55\x1b\x3c\x60\xb1\xd1\x9e\x8d\x99\x8f\xa3\x1f\x0b\x06\xd9\xb5\x69\x4c\x67\x80\x6b\x73\x6d\x1f\x61\x6a\x60\x78\x4b"
+"\x1b\x0e\x06\xce\xb8\x9b\xaf\xb1\x1f\xae\xad\x9f\xbc\xbd\x1a\xd8\x53\xbf\x38\x1e\x0b\x15\x6e\x74\x74\x6e\x6e\xa2\x74\xa8\xa7\xa3"
+"\xa2\xa7\xa9\x74\xa2\x6e\x1f\x0b\x15\xa9\xa4\x72\x6d\x6d\x72\x72\x6d\x6d\x72\xa4\xaa\xa8\xa5\xa4\xa8\x1f\x0b\x21\x1d\x34\x1d\xfb"
+"\x6e\x06\xea\xf8\x56\x21\x1d\x0e\xb4\xf7\x56\x21\x1d\x5e\xfb\x69\x05\x88\x7c\x89\x7c\x80\x1a\x4f\x0b\xd5\x1d\x7e\x7e\x1a\x2e\x0b"
+"\xf7\x93\x15\x77\x30\x8f\x23\x05\xa9\x06\xbb\xf3\x9f\xe6\x05\x0e\x81\xbc\x1b\xf7\x19\xe6\xd5\xf7\x17\xa7\x1f\xf7\x08\xf8\xb7\x05"
+"\x0b\x06\xdb\xc6\x9f\xb5\xbb\x1f\xc0\xba\xab\xd3\xd3\x1a\xf5\x46\xc8\x0b\x16\xdf\x25\x1d\x05\xf7\x7c\x2d\x1d\xfb\xd1\x06\x0b\xb2"
+"\xb0\xc8\x1b\xb6\xa6\x72\x64\x70\x7c\x70\x74\x7c\x1f\x7e\x77\x0b\xfa\xc0\xf7\xcc\x15\xfe\x87\x27\x1d\xfa\x87\x06\x0e\xf7\xf3\xf7"
+"\xcc\x15\xfb\x83\x27\x1d\xf7\x83\x06\x0e\x92\xa1\x62\x33\x1d\xbf\xa6\x83\xb2\x1b\xe0\xc7\x0b\x1f\x98\x64\x7b\x8f\x79\x1b\x71\x6e"
+"\x7c\x76\x7a\x1f\x7f\x7c\x0b\xf7\x8c\xf8\xd8\x15\x4c\xfb\xbc\x05\xc9\x06\xe5\xf8\x3d\x05\x0b\x15\x78\x30\x8e\x23\x05\xaa\x06\xbb"
+"\xf3\x9e\xe6\x05\x0e\x15\x55\x55\x57\x56\x64\xaa\x6c\xb3\xc4\xbf\xbe\xc4\xb2\x0b\xf7\x67\x05\x50\xfb\xa8\x15\x37\x06\x75\x24\x05"
+"\xdf\x06\x0b\xf8\xe3\xf7\xa1\x15\xfc\x78\x27\x1d\xf8\x78\x06\x0b\x15\xd1\xb7\x59\x3d\x52\x7a\x46\x71\x5b\x1f\x47\x66\x0b\x1f\x65"
+"\xfb\x45\x15\xb8\xa7\x72\x64\x50\x5b\x5e\x4d\x0b\xc9\xf7\xb6\x05\x2d\x06\x4c\xfb\xbb\x05\x88\x7e\x8a\x0b\x65\x49\x1b\x45\x5f\xbd"
+"\xd8\xc5\x9c\xcf\xa5\xbc\x1f\x0b\x65\x05\xcb\xba\xbb\xde\x50\x1d\x22\x1d\x37\x06\x41\xfb\xf2\x74\xfb\x67\x05\x0b\x26\xf9\x6d\x05"
+"\xfb\x0c\x06\xfc\x33\xfd\x6d\x05\x0b\x06\xb8\xa2\x76\x62\x4f\x60\x5f\x4f\x1f\x0e\xe4\x1d\x0e\x06\x38\xfb\x67\x05\xd7\x06\xde\xf7"
+"\x67\x05\x0b\xf7\xaa\xf7\xed\x05\x23\x06\xfb\x87\xfb\xc2\x0b\x15\xbf\xb2\xa9\xa0\xaf\x1b\x9c\x9f\x85\x7e\x0b\x37\x06\x46\x67\x56"
+"\x67\x48\x1b\x3c\x5e\xbc\x0b\xf9\x35\x15\x41\x06\x55\xfb\x94\x05\xc4\x06\x0b\x05\x37\x06\xfb\x03\xfc\xa0\x05\xdf\x06\x0b\x06\xf7"
+"\x1a\xfb\xed\xfb\xe1\xfc\x14\x05\x0b\x15\xfc\x78\x06\x7d\x43\x05\xf8\x77\x06\x0b\x15\x37\x06\xfb\x2f\xfd\x6d\x05\xdf\x06\x0b\x15"
+"\x76\x29\x05\xc1\x06\x50\x80\x73\x6e\x0b\x1e\x65\x62\x50\x79\x3b\x1b\xfb\x05\x57\x0b\xd9\x15\xfb\x7b\x06\xf7\x53\xf7\xe1\x05\x0b"
+"\x01\x00\x01\xe3\x01\x05\x00\x01\x0a\x02\x01\x40\x03\x01\x87\xff\x02\x87\xa0\x02\x8e\x02\x00\x01\x00\x04\x00\x07\x00\x0e\x00\x27"
+"\x00\x7b\x01\x23\x01\x90\x02\x13\x02\x1c\x02\x4d\x02\x7e\x02\xa6\x02\xc6\x02\xcd\x02\xd1\x02\xd8\x02\xec\x03\x46\x03\x65\x03\xb9"
+"\x04\x34\x04\x64\x04\xb9\x05\x1d\x05\x46\x05\xb9\x06\x27\x06\x36\x06\x46\x06\x4c\x06\x57\x06\x5e\x06\xad\x07\x7e\x07\x82\x07\x85"
+"\x07\x89\x07\x8d\x07\x91\x07\xab\x07\xaf\x07\xb2\x07\xb7\x07\xbc\x07\xbf\x07\xc2\x07\xc6\x07\xca\x07\xce\x07\xd1\x08\x43\x08\x80"
+"\x08\x84\x08\x88\x08\x8c\x08\xa6\x08\xab\x08\xae\x08\xb2\x08\xb6\x08\xd4\x08\xe5\x09\x01\x09\x1e\x09\x24\x09\x43\x09\x46\x09\xa1"
+"\x09\xa6\x09\xab\x09\xae\x09\xb7\x09\xba\x09\xbd\x09\xc4\x09\xd3\x09\xd8\x09\xdf\x0a\x43\x0a\x46\x0a\x49\x0a\x5b\x0a\xb7\x0a\xd7"
+"\x0b\x03\x0b\x0a\x0b\x0d\x0b\x28\x0b\x2c\x0b\x5a\x0b\x5f\x0b\x64\x0b\xce\x0b\xe2\x0c\x4c\x0c\x92\x0c\xb3\x0d\x2e\x0d\xce\x0d\xd5"
+"\x0e\x23\x0e\x7e\x0f\x3b\x0f\xa7\x0f\xae\x0f\xe7\x10\x02\x10\x09\x10\x12\x10\x1f\x10\x2d\x10\x3a\x10\x5c\x10\x96\x10\x9a\x10\xce"
+"\x10\xe7\x10\xee\x10\xf9\x11\x06\x11\x23\x11\x38\x11\x5c\x11\xb3\x11\xbb\x11\xc3\x11\xcb\x11\xe0\x11\xe4\x11\xec\x11\xf4\x11\xfa"
+"\x12\x0f\x12\x20\x12\x28\x12\x65\x12\x6d\x12\x71\x12\x76\x13\x26\x13\x50\x13\x54\x13\xbb\x14\x0c\x14\x11\x14\x16\x14\x39\x14\x3d"
+"\x14\xd9\x15\x4e\x15\x6b\x15\x82\x15\xe1\x16\x28\x16\x2b\x16\x86\x16\xb1\x16\xd4\x17\x0a\x17\x18\x17\x27\x17\x54\x17\x68\x17\x97"
+"\x17\xda\x18\x51\x18\x5f\x18\xe2\x19\x10\x19\x7c\x19\xc8\x19\xd0\x19\xd9\x19\xeb\x19\xf4\x19\xfb\x1a\x14\x1a\x56\x1a\x6e\x1a\x7b"
+"\x1a\x88\x1a\x95\x1a\x9d\x1a\xa4\x1a\xae\x1a\xb8\x1a\xe1\x1a\xf4\x1b\x06\x1b\x42\x1b\x7d\x1b\x95\x1b\xa3\x1b\xaf\x1b\xe1\x1c\x12"
+"\x1c\x1e\x1c\x2c\x1c\x36\x1c\x3f\x1c\x62\x1c\x6d\x1c\x78\x1c\x83\x1c\xaf\x1c\xde\x1d\x1b\x1d\x26\x1d\x2f\x1d\x3a\x1d\x45\x1d\x4f"
+"\x1d\x58\x1d\x61\x1d\x6a\x1d\x7a\x1d\xb1\x1d\xbf\x1d\xf5\x1e\x2a\x1e\x5b\x1e\x8f\x1e\x9a\x1e\xa3\x1e\xae\x1e\xbb\x1e\xc5\x1e\xd0"
+"\x1e\xe3\x1f\x22\x1f\x25\x1f\x2d\x1f\x36\x1f\x69\x1f\x79\x1f\xcc\x1f\xfa\x20\x04\x20\x0c\x20\x10\x20\x1e\x20\x30\x20\x74\x20\x86"
+"\x20\x89\x20\x91\x20\xa2\x20\xab\x21\x22\x21\x25\x21\x2e\x21\x31\x21\x4a\x21\x53\x21\x5c\x21\x65\x21\x6e\x21\xc2\x22\x03\x22\x07"
+"\x22\x17\x22\x1a\x22\x26\x22\x9c\x22\xaa\x22\xb3\x22\xbc\x22\xc9\x23\x3e\x23\x79\x23\x82\x23\xaf\x23\xb8\x23\xc2\x23\xd5\x24\x0f"
+"\x24\x14\x24\x1e\x24\x29\x24\x54\x24\x5d\x24\x60\x24\x68\x24\x70\x24\x8b\x24\x98\x24\x9f\x24\xa7\x24\xab\x24\xb1\x24\xb9\x24\xc6"
+"\x24\xca\x24\xd2\x24\xda\x24\xe3\x25\x49\x25\x4d\x25\x69\x25\x72\x25\xf0\x25\xf3\x26\x54\x26\x5c\x26\x6d\x26\x7f\x26\x82\x26\x8a"
+"\x27\x08\x27\x11\x27\x2d\x27\x53\x27\x57\x27\x8a\x27\x93\x27\xb3\x28\x23\x28\x34\x28\x3d\x28\x4f\x28\xaf\x28\xb3\x28\xbc\x28\xca"
+"\x28\xe0\x28\xf9\x29\x02\x29\x09\x29\x12\x29\x1c\x29\x3d\x29\x43\x29\x4b\x29\x54\x29\x5d\x29\x61\x29\x8b\x29\x95\x29\x99\x29\xc5"
+"\x29\xe7\x2a\x46\x2a\x5e\x2a\x94\x2a\x98\x2a\xa1\x2a\xd4\x2a\xfb\x2a\xff\x2b\x1d\x2b\x25\x2b\x34\x2b\x5f\x2b\x81\x2b\xb6\x2b\xb9"
+"\x2b\xf0\x2c\x48\x2c\x5d\x2c\x61\x2c\xce\x2c\xf1\x2d\x06\x2d\x19\x2d\x28\x2d\x40\x2d\x67\x2d\x77\x2d\x7d\x2d\xe6\x2e\x49\x2e\xae"
+"\x2e\xcb\x2f\x32\x2f\x48\x2f\xbb\x30\x46\x30\x4d\x30\x59\x30\x9a\x30\xc8\x31\x00\x31\x4e\x31\x6a\x31\x73\x32\x12\x32\x6a\x32\xbb"
+"\x32\xc2\x32\xfe\x33\x01\x33\x08\x33\x3e\x33\x94\x33\x97\x33\xa6\x33\xb3\x33\xc4\x33\xe9\x33\xf5\x34\x02\x34\x15\x34\x5a\x34\xa9"
+"\x34\xc0\x34\xc5\x35\x33\x35\x48\x35\x5d\x35\x90\x35\x9d\x35\xb2\x35\xd4\x35\xe8\x35\xf7\x36\x47\x36\x8d\x36\xe1\x37\x01\x37\x55"
+"\x37\x67\x37\xbe\x38\x28\x38\x34\x38\x3f\x38\x76\x38\xa2\x38\xcc\x39\x0c\x39\x25\x39\x58\x39\x6e\x39\x85\x39\xd5\x3a\x71\x3a\xf5"
+"\x3b\x6a\x3b\xd1\x3c\x3c\x3c\x44\x3c\x79\x3c\xaf\x3c\xf9\x3d\x59\x3d\x71\x3d\xf7\x3e\x3f\x3e\x85\x3e\xcc\x3f\x13\x3f\x69\x3f\xc8"
+"\x40\x4d\x40\x56\x40\x5f\x40\x68\x40\x71\x40\x9e\x41\x1c\x41\x99\x41\xa4\x41\xed\x42\x4d\x42\x7c\x42\x8b\x42\x97\x42\x9e\x42\xa5"
+"\x42\xdd\x42\xe4\x43\x00\x43\x67\x43\x6c\x43\x75\x43\x82\x43\xe8\x43\xed\x43\xf5\x44\x05\x44\x1f\x44\x60\x44\xab\x44\xcd\x44\xed"
+"\x44\xf4\x45\x14\x45\x8e\x45\xa1\x45\xf5\x45\xfc\x46\x42\x46\x67\x46\x70\x46\xa4\x46\xb7\x47\x2f\x47\x92\x47\xd0\x48\x04\x48\x49"
+"\x48\xb6\x48\xec\x48\xf1\x49\x04\x49\x29\x49\x30\x49\x38\x49\x41\x49\x67\x49\x70\x49\x9d\x49\xa7\x49\xc3\x49\xcf\x49\xd9\x49\xe5"
+"\x49\xf8\x4a\x97\x4a\xcb\x4b\x60\x4b\x67\x4b\xb9\x4b\xd2\x4b\xda\x4b\xf6\x4b\xfd\x4c\x04\x4c\x73\x4c\xb0\x4c\xcb\x4c\xd2\x4c\xe9"
+"\x4c\xf1\x4c\xf5\x4c\xfd\x4d\x00\x4d\x07\x4d\x15\x4d\x1e\x4d\x90\x4e\x78\x4e\xf5\x4f\x16\x4f\x3f\x4f\x6f\x4f\xa6\x4f\xfc\x50\x26"
+"\x50\x37\x50\x57\x50\x66\x50\x82\x50\x99\x50\xf0\x50\xf9\x51\x69\x51\x9b\x51\xa5\x51\xb9\x51\xf3\x52\x83\x52\xdf\x53\x14\x53\xb5"
+"\x53\xca\x54\x1f\x54\x2a\x54\x7f\x54\xf6\x54\xfe\x55\x06\x55\x0d\x55\x15\x55\x28\x55\x2b\x55\x2f\x55\x37\x55\x69\x55\x6d\x55\x71"
+"\x55\x8c\x55\xee\x56\x35\x56\x9f\x56\xa8\x56\xb2\x56\xbd\x56\xc6\x56\xf2\x57\x1a\x57\x69\x57\xad\x57\xf7\x58\x67\x58\x8e\x58\xb6"
+"\x58\xeb\x59\x23\x59\x35\x59\x5a\x59\x85\x59\x99\x59\xcf\x5a\x0c\x5a\x10\x5a\x32\x5a\x6f\x5a\xa7\x5a\xd2\x5a\xf2\x5b\x1e\x5b\x53"
+"\x5b\x97\x5b\xd5\x5c\x13\x5c\x4b\x5c\x52\x5c\x74\x5c\xb9\x5d\x18\x5d\x25\x5d\x36\x5d\x81\x5d\xab\x5d\xe3\x5e\x28\x5e\x30\x5e\xf2"
+"\x5f\x58\x5f\x5f\x5f\x63\x5f\x7f\x5f\x9c\x60\x0c\x60\x23\x60\x68\x60\x91\x60\xda\x60\xdf\x60\xe9\x60\xfa\x61\x04\x61\x1c\x61\x22"
+"\x61\x2a\x61\x32\x61\x38\x61\x41\x61\xd1\x61\xdb\x61\xe5\x61\xf5\x61\xfe\x62\x73\xfc\x20\x0e\xfc\x20\x0e\xfc\x20\xf7\xff\xaa\x1d"
+"\x0e\xfb\xd3\xf7\x5e\x9a\x0a\xcc\x16\x73\xfb\x03\x8a\xfb\x1a\x05\xb3\x06\xc2\xf7\x1a\xa3\xf7\x03\x05\x0e\xf9\x0c\xf9\x4d\x15\x3f"
+"\x06\x3e\xfb\x56\x05\xfb\x10\x06\xd7\xf7\x56\x05\x3f\x06\x3e\xfb\x56\x05\xfb\x0d\x06\x7e\x4b\x05\xf7\x01\x06\x42\xfb\x4c\x05\xfb"
+"\x04\x06\x7d\x4b\x05\xf0\xdc\x1d\xf7\x11\xdc\x1d\xf7\x0a\x06\x99\xcb\x05\x20\x06\xd4\xf7\x4c\x05\xf4\x06\x99\xcb\x05\x2d\x06\x26"
+"\x4b\x15\x42\xfb\x4c\x05\xfb\x11\x06\xd5\xf7\x4c\x05\x0e\xf8\x2b\xf9\x96\x15\x80\x55\x47\x86\x4e\x73\x63\x66\x19\x5e\x61\x6d\x43"
+"\x48\x1a\x62\x99\x6b\xaa\x71\x1e\xa0\x79\x9f\x82\xd4\x72\x51\xfb\xa4\x18\x42\xa0\x6f\xa7\xc2\x1a\x94\x8c\x9e\x8d\x9e\x1e\x8c\x96"
+"\x05\x3c\x06\x85\x69\x89\x7a\x74\x1a\x30\xc0\x5b\xf7\x09\x79\x1e\x75\x24\x05\xc6\x06\xa1\xf2\xd4\x8d\xcd\xa3\xb7\xb3\x19\xbe\xb8"
+"\xac\xdb\xd6\x1a\xbb\x7b\xaa\x62\xa6\x1e\x73\x9b\x7c\x92\x39\xa4\xc0\xf7\x8d\x18\xc2\x88\xae\x68\x56\x1a\x87\x8b\x83\x8a\x82\x1e"
+"\x8a\x7c\x05\xda\x06\x90\x9f\x8c\x95\x9b\x1a\xe5\x51\xc3\x27\x90\x1e\x96\xc1\x05\xfb\x1c\xfc\x01\x15\x46\xa0\x71\xa5\xbc\x1a\xd7"
+"\xc9\xc8\xdf\x92\x1e\x7e\xfb\xe4\x15\xdc\x73\xa7\x71\x5b\x1a\x29\x50\x50\x21\x83\x1e\x0e\xf7\x6b\xf9\x8b\xf9\x59\x15\xfc\xba\xfd"
+"\x6d\x05\xcd\x06\xf8\xba\xf9\x6d\x05\xfc\x74\x70\x15\xfb\x00\x24\x28\x22\x3f\xc5\x53\xd9\xf7\x04\xf0\xed\xf7\x00\xd4\x4f\xc4\x3d"
+"\x1f\x7b\x49\x15\xbe\xac\x6a\x5a\x4c\x4d\x50\x4a\x5c\x68\xae\xba\xca\xc7\xc6\xcc\x1f\xf8\x40\xfb\xbc\x15\xfb\x00\x24\x28\x22\x3f"
+"\xc5\x53\xd9\xf7\x04\xf0\xed\xf7\x00\xd4\x4f\xc4\x3d\x1f\x7b\x49\x15\xbe\xac\x6a\x5a\x4c\x4d\x50\x4a\x5c\x68\xae\xba\xca\xc7\xc6"
+"\xcc\x1f\x0e\x84\xf8\xc9\xf7\xe2\x15\x7f\x5a\x7b\x6a\x6b\x66\x29\xf7\x37\x18\xf7\x11\xc4\xc3\xcb\xe3\x1a\xd6\x58\xba\x39\xfb\x01"
+"\x28\x32\x2a\x74\x90\x73\x94\x76\x1e\x9d\x61\x8d\x87\x8e\x83\x8f\x80\x19\x64\x75\x6f\x7a\x71\x78\x08\x40\x54\x66\x47\x3a\x1a\x2d"
+"\xcc\x52\xf4\xdc\xc4\xa4\xd7\xe6\x1e\xb9\x3d\x05\xf5\x06\x31\xf7\x2b\xbc\xbe\xb2\xd2\x97\xc8\x19\xfb\x9f\xef\x15\x62\xc6\x85\x97"
+"\xa7\x1a\xc6\xba\xba\xc6\xb6\xa5\x72\x63\x55\x65\x62\x31\x5e\x1e\xd2\xfb\xbd\x15\x4f\x42\x5e\x74\x59\x1b\x47\x62\xb2\xcc\xcd\xb8"
+"\xbe\xf7\x05\xc8\x1f\x0e\xfc\x58\xf7\x6b\xf9\x58\x47\x1d\x0e\xfb\xe9\xf8\x1b\x22\x1d\x46\x43\x5a\x49\x59\x31\x08\x40\xfb\x1c\x68"
+"\xfb\x0d\xfb\x14\x1a\xfb\x0c\xa8\xfb\x0e\xbc\x34\x1e\xc2\x06\x65\xec\x7a\xe7\xf2\x1a\xf7\x73\xe2\xf7\x71\xf7\x3c\xf7\x62\x1e\x0e"
+"\xfb\xe9\xbb\xfb\x69\x15\xcb\xcd\xc5\xda\xb9\xde\x08\xd5\xf7\x19\xae\xf7\x12\xf7\x19\x1a\xf7\x06\x6d\xf7\x11\x5c\xde\x1e\x54\x06"
+"\xb1\x29\x9c\x2e\x20\x1a\xfb\x6c\x32\xfb\x74\xfb\x3a\xfb\x60\x1e\x0e\xfb\xb1\xf7\xd3\x22\x1d\x77\xfb\x04\x27\xb3\x6d\x50\xf3\x6c"
+"\x2f\x33\xba\x63\xdc\xea\xb7\x2b\xc5\xb0\x56\xe6\xf7\x05\xa6\x82\xc9\xfb\x02\x65\xa8\xf7\x04\x05\x0e\x31\xf8\xe3\xf7\xa1\x15\xfb"
+"\x63\x06\xb7\xf7\x60\x05\x45\x06\x5f\xb1\x0a\x5f\xfb\x64\x05\xd1\x06\xb7\xf7\x64\x05\xf7\x63\x06\x0e\xfc\x20\xf7\x01\xf2\x8a\x0a"
+"\xfb\xe9\xcb\x1d\xfc\x20\xf7\x69\xf2\x23\x0a\xfc\x20\xf8\x0f\xf9\x6d\x15\xfc\x1b\xfd\x81\x05\xc2\x06\xf8\x1b\xf9\x81\x05\x0e\xf8"
+"\x39\xf9\x67\x15\x38\x46\x62\x38\x53\x1f\x4b\x2d\x59\xfb\x4e\xfb\x26\x1a\x4d\x9d\x55\xaa\x6c\x1e\x6d\xaa\xbc\x78\xbb\x1b\xe1\xcd"
+"\xb2\xe0\xc5\x1f\xcc\xea\xbc\xf7\x4c\xf7\x26\x1a\xf7\x10\x48\xd4\xfb\x04\x1e\x7f\x3e\x15\xcc\xb1\x5b\x39\x2c\x69\xfb\x32\x65\x39"
+"\x1f\x33\x62\x5c\x64\x4a\x1b\x4d\x65\xbc\xdb\xeb\xac\xf7\x30\xb2\xe0\x1f\xe0\xb2\xbb\xb4\xca\x1b\x0e\xf8\x06\xf8\x9b\x15\xfb\x03"
+"\xfc\x9b\x05\xe3\x06\xf7\x2e\xf9\x67\x05\x51\x06\x56\xfb\x00\x75\x7e\xfb\x24\x77\x7e\x4c\x18\x0e\xf8\xa0\xe2\x15\xfc\x0d\x06\x9c"
+"\xbd\xc3\xbf\xe6\xb9\xf7\x04\xc6\x18\xf7\x1a\xd0\xcc\xdf\xf1\x1a\xb8\x7c\xb5\x70\xa9\x1e\xb2\x6a\x5b\x9d\x47\x1b\xfb\x2e\x33\x3d"
+"\xfb\x40\x63\x1f\xe3\x06\x97\xb8\x97\xaa\x9d\xa5\x08\xb8\xaa\xbe\xa5\xc5\x1b\xd1\xb8\x60\x49\x49\x5b\x4d\x37\x60\x1f\x23\x55\xfb"
+"\x42\x2d\x5e\x56\x5e\xfb\x38\x19\xf8\x6b\x06\x0e\xf7\xb8\xf7\xe0\x15\x8d\x9f\x96\x8b\x99\x1b\xde\xbb\x69\x50\xfb\x02\x3d\x3e\xfb"
+"\x04\x42\x5e\xb3\xca\x9a\x8c\x97\x8f\xa5\x1f\x33\x06\x87\x6c\x8a\x7c\x7a\x1a\xfb\x02\xcf\x4f\xf7\x10\xe5\xd7\xaa\xc4\xbf\x1e\xb8"
+"\xbd\xa8\xd4\xcd\x1a\xc6\x76\xab\x53\xa8\x1e\xe0\xbc\xb1\xc8\xe5\x1a\xe6\x44\xc5\xfb\x02\x38\x44\x6d\x53\x5a\x1e\x6e\x69\x79\x64"
+"\x77\x41\x08\xe3\x06\x96\xb9\x94\xa3\x9a\xa0\x08\xb5\xaa\xba\xa2\xc3\x1b\xcd\xb3\x6a\x54\x63\x7e\x64\x76\x73\x1f\x6b\x6f\x57\x7b"
+"\x41\x1b\x85\x06\x7f\x06\x0e\xf7\xff\xf7\x43\x15\x66\xfb\x43\x05\xe3\x06\xb0\xf7\x43\x05\xf5\x06\x9c\xd9\x05\x21\x06\xef\xf8\x6a"
+"\x05\x49\x06\xfc\x36\xfc\x5c\x77\x2f\x05\xf7\xd0\xd9\x15\xfb\x71\x06\xf7\xb4\xf7\xd1\x05\x0e\xf9\x09\xf9\x59\x15\xfc\x06\x06\xfb"
+"\x1b\xfc\x16\x05\xdb\x06\xc1\xc8\xa8\x98\xc6\x1b\xdb\xb9\x5f\x3e\xfb\x11\x39\x31\xfb\x06\x3b\x61\xb3\xdb\x88\x1f\x33\x7f\x06\x81"
+"\x07\x50\x9a\x65\xad\x6e\x1e\x6b\xb1\xbe\x7a\xca\x1b\xe9\xd5\xb1\xd8\xc6\x1f\xb7\xc5\xa4\xd4\xd3\x1a\xf4\x42\xce\xfb\x05\x5b\x61"
+"\x7e\x6d\x59\x1e\xd1\xf7\x5a\x05\xf7\xc0\x06\x0e\xf8\xf9\xf8\xab\x15\x8c\xa7\x05\xed\x47\xc9\x20\x2c\x3b\x58\x26\x4c\x1e\x50\x2e"
+"\x5b\xfb\x4a\xfb\x13\x1a\xfb\x0a\xd5\x41\xf7\x0a\xe0\xd4\xb1\xd4\xc3\x1e\xb4\xc1\xa5\xd4\xc9\x1a\xf3\x45\xd0\x20\x49\x52\x70\x4f"
+"\x52\x1e\xf7\x43\xaa\xdd\xf7\x00\xf1\x1b\xb8\xaf\x74\x65\x96\x1f\x8f\x7e\x8d\x7d\x8d\x74\x08\xfb\x33\xfb\x36\x15\xcf\xb8\x5e\x49"
+"\xfb\x07\x3b\x2e\x27\x46\x5b\xbd\xd3\xf7\x02\xdc\xe2\xf2\x1f\x0e\xf9\x33\xf9\x59\x15\xfc\x6f\x06\x78\x34\x05\xf8\x13\x06\xfb\x75"
+"\xfb\x91\xfb\x00\xfb\x32\x31\xfb\x67\x08\xed\x06\xcf\xf7\x53\xf7\x48\xf7\xa1\xf7\x3f\xf7\x3c\x08\x0e\xf8\x71\xf8\x10\x15\xaa\x9c"
+"\x9b\x96\x9e\x9b\x08\xb2\xaf\xa4\xc4\xc3\x1a\xe4\x42\xc8\x20\xfb\x26\xfb\x02\x26\xfb\x1a\x5c\x9c\x6e\xbb\x6c\x1e\x21\x5a\x54\x3b"
+"\x22\x1a\x23\xdb\x49\xf7\x12\xdf\xd2\xab\xcc\xc4\x1e\xb6\xbd\xa4\xc9\xc5\x1a\xc7\x6e\xba\x54\xa8\x1e\x49\xf7\x9e\x15\xcf\xb3\x6a"
+"\x54\x6c\x7e\x68\x77\x72\x1f\x68\x6e\x64\x7a\x56\x1b\x48\x64\xaa\xc0\xe2\xc9\xc7\xe5\x1f\x4a\xfb\xc5\x15\xd9\xbc\x60\x48\x27\x3a"
+"\x3e\x23\x40\x59\xb6\xcc\xee\xdc\xdb\xf1\x1f\x0e\xe0\xf7\x39\x15\x8a\x80\x8b\x80\x85\x1a\x2a\xd0\x4c\xf4\xc9\xc4\xa1\xb8\xbf\x1e"
+"\xcc\xc3\xb0\xcc\xa7\xf6\x08\xa4\xea\x9d\xf7\x01\xc8\x1a\xbb\x79\xbb\x6d\xac\x1e\xb0\x6a\x58\x9f\x4c\x1b\xfb\x30\xfb\x0e\xfb\x16"
+"\xfb\x3b\x22\xd0\x48\xf6\xb7\xba\x98\xa1\xab\x1f\x98\x94\x98\x95\xa8\xa5\x08\xfb\x4e\x63\x43\x2d\x27\x1b\x4f\x64\xb3\xc8\x1f\x95"
+"\x07\xf7\x73\xf8\x75\x15\xcf\xbe\x58\x48\xfb\x01\x39\x33\x25\x44\x61\xb6\xd3\xf7\x02\xdc\xe5\xec\x1f\x0e\xfc\x20\xf7\x80\xf2\x37"
+"\x0a\xf3\x06\xf7\x04\xf8\xa0\x23\x0a\xfc\x20\xf7\xd9\xf8\xa0\x37\x0a\xf3\x06\xfb\x3f\xfb\xd2\x8a\x0a\x31\xe2\xf7\x5a\xb5\x1d\x31"
+"\xf8\xf5\xf7\xf7\xe3\x1d\x75\x27\xb2\x0a\x31\xf8\xe8\xf7\x9f\x8f\x0a\xf8\x07\xf7\x5b\x15\x95\xba\x99\xbd\x9b\x9e\xd5\xc2\x19\xf2"
+"\xd9\xb5\xcb\xd9\x1a\xb8\x75\xb7\x67\xa7\x1e\xa2\x6e\x62\x96\x56\x1b\xfb\x24\x31\x3c\xfb\x2f\x6c\x1f\xe0\x06\xf7\x02\xa1\xbb\xba"
+"\xe3\x1b\xcb\xb6\x68\x58\x52\x6f\x61\x3e\x4d\x1f\x20\x38\x7c\x78\x7d\x4e\x7f\x54\x18\xd1\x2b\x15\x31\x06\x75\x24\x05\xe5\x06\x0e"
+"\xf7\xe9\xf9\x97\xf8\x89\x15\x67\x49\x05\xc6\x7f\x65\xa9\x50\x1b\xfb\x29\xfb\x3b\xfb\x3f\xfb\x2c\x37\xc0\x54\xdd\xbb\xae\x9b\xb7"
+"\xc1\x1f\x8d\x8d\x91\x90\x92\x90\x08\x82\x07\x86\x07\x7b\x97\x75\x99\x82\x1e\x81\x9a\xa5\x85\xab\x1b\xe7\xf7\x02\xc4\xda\xc8\x1f"
+"\xba\xc8\xa9\xe9\xe2\x1a\xf7\x44\xfb\x2a\xf7\x16\xfb\x61\xfb\x32\xfb\x34\x49\xfb\x04\xfb\x03\x1e\xfb\x01\xfb\x01\x4c\xfb\x21\xfb"
+"\x17\x1a\x3d\xa3\x49\xbc\x54\x1e\x3c\xd2\xf7\x00\x5d\xf7\x07\x1b\xdd\xe4\x9a\xa6\xd5\x1f\x7e\xce\x05\x73\x32\x56\x83\x4d\x1b\xfb"
+"\x4c\xfb\x0f\xf4\xf7\x30\xf7\x80\xf7\x89\xf7\x7c\xf7\x8b\xf7\x3e\xf7\x0f\x22\xfb\x25\xfb\x1b\xfb\x0f\xfb\x2c\xfb\x01\x75\x78\x9c"
+"\x9e\x94\x92\x9b\x9c\xac\x1f\xf7\x29\xf7\xac\x05\xfb\x82\x5d\x15\xb6\xa3\x74\x61\x5f\x6c\x40\x60\x4f\x1f\x53\x64\x5c\x6c\x5f\x1b"
+"\x5f\x6b\xaf\xbd\xbd\xa7\xcc\xb6\xbf\x1f\xbd\xb6\xbd\xa7\xbc\x1b\x0e\x84\x28\x1d\x0e\x84\x84\x1d\xbb\x3a\x0a\x0e\xbb\x72\x0a\x0e"
+"\x84\x27\x0a\x0e\x4c\xf7\x93\xf7\xe0\x15\xf7\xef\x20\x1d\xfb\xef\x06\xbd\xf7\x7d\x05\xf8\x1f\x20\x1d\xfc\x7d\x22\x0a\x0e\xf3\x81"
+"\x1d\x0e\xbb\x7a\x0a\xfc\x20\x29\x1d\x0e\xfb\x42\x6c\x0a\x0e\x84\x78\x0a\x3e\x1d\x0e\xf7\x33\x97\x1d\xbb\x2b\x0a\x0e\xf3\x30\x0a"
+"\x0e\x84\x71\x0a\xf3\xf9\x71\x8a\x15\x3d\xd8\x05\xf7\x03\xee\xc9\xf7\x1d\xf7\x24\x1a\xdf\x70\xd8\x5d\xba\x1e\xbc\x5b\x3b\xa7\x30"
+"\x1b\x33\x3d\x72\x57\x46\x1f\xfb\x0b\x32\x3d\xfb\x32\xfb\x2d\x1a\xfb\x49\xf5\x21\xf7\x48\xd9\xb8\x97\xb2\xd4\x1e\xe2\x34\x05\xfb"
+"\x29\xf7\x9c\x15\x51\x53\xc9\x4d\x05\x75\x59\x70\x84\x61\x1b\xfb\x17\x3d\xda\xf7\x1a\xe8\xaa\xeb\xc0\xd4\x1f\xdb\xc5\xe4\xba\xe9"
+"\x1b\xcf\xca\x70\x5e\xae\x1f\xa6\x68\x99\x5c\x4f\x1a\xfb\x0c\x5c\xfb\x02\x34\x37\x1e\x0e\xbb\xf7\x92\xf7\xce\x15\xf7\x83\x06\xcc"
+"\xaf\x71\x5a\x7a\x88\x76\x86\x75\x1f\x73\x27\x8b\x8b\x6b\x1a\x7b\x8c\x80\x8e\x77\x1e\xf7\x05\x06\x90\xa2\x05\x7e\x97\x83\x9e\xa1"
+"\x1a\x96\x8d\x9c\x8f\xa1\x1e\x9e\xf4\x8d\x98\x8c\x1d\x6e\x60\x7a\x4b\x1b\x0e\x84\x61\x0a\x0e\x4c\x48\x1d\x0e\xbb\x57\x1d\x0e\x84"
+"\xf8\x1c\x16\xf8\x2c\xf9\x6d\x05\x28\x06\xfb\xe4\xfc\xfd\x38\xf8\xfd\x05\x2a\x06\xf6\xfd\x6d\x05\x0e\xf7\xa2\x32\x0a\x0e\x84\x75"
+"\x0a\x84\x2f\x1d\x0e\x4c\x33\x0a\x0e\xfc\x20\xf8\x29\x22\x1d\xfb\x4e\x06\xfb\x5c\xfe\x42\x05\xf7\x4e\x06\x9a\xd3\x05\x25\x06\xf7"
+"\x3e\xf9\xb2\x05\xf1\x06\x0e\xfc\x20\xf7\x27\x22\x1d\xd9\xfd\x81\x05\xc2\x06\x3d\xf9\x81\x05\x0e\xfc\x20\x74\xfb\x69\x15\xf7\x4f"
+"\x06\xf7\x5c\xfa\x42\x05\xfb\x4f\x27\x1d\xf2\x06\xfb\x3e\xfd\xb2\x05\x24\x06\x0e\xfb\x61\xf7\xf1\xf9\x59\x15\xfb\x7e\xfc\x10\x05"
+"\xd3\x06\xf7\x4a\xf7\xbf\xc5\xfb\xbf\x05\xd0\x06\x41\xf8\x10\x05\x0e\xf8\xbb\xfb\x12\x6b\x1d\xfc\x58\xf7\x94\xf8\x71\x15\xa1\xf2"
+"\x05\x5c\x06\x96\xc7\x9f\xa5\xb1\x8f\x93\xb2\x18\x4d\x87\x5f\x5c\x79\x3a\x76\x27\x18\x0e\x60\x0a\x0e\xf7\x65\x22\x1d\xfb\x2f\xfd"
+"\x6d\x05\xd6\x06\x9c\xd9\x05\x43\xab\xb5\x6e\xd5\x1b\xce\xd2\xa9\xbb\xb8\x1f\xce\xd2\xb7\xf7\x06\xf2\x1a\xf7\x04\x3f\xdf\x26\x62"
+"\x5f\x7f\x79\x6d\x1e\x7a\x81\x7e\x7f\x6c\x6a\xc5\xf7\xa7\x18\xe5\xfb\x9f\x15\xd4\xb7\x57\x35\x51\x7a\x4c\x6e\x5b\x1f\x47\x62\x57"
+"\x6a\x4a\x1b\x47\x60\xbd\xda\xc9\x9d\xcf\xa7\xbb\x1f\xcd\xb2\xc0\xae\xc7\x1b\x0e\xfb\x42\x66\x0a\x0e\xf9\x1e\x88\x1d\x0e\x68\x0a"
+"\x0e\xfc\x20\xf8\x06\xf8\xa0\x3b\x1d\x0e\x62\x0a\x0e\x73\x0a\x0e\xfc\x58\xf7\x99\x8d\x0a\x0e\xfc\x58\x7b\x0a\xb7\xf7\x61\x15\x37"
+"\x06\x75\x24\x20\x0a\x0e\xfb\x42\x98\x1d\x0e\xfc\x58\xf7\xc7\x37\x1d\x0e\xf7\x33\xf7\x4a\x4e\x1d\xd1\xf7\xdd\x05\xd7\x9b\xcf\xc9"
+"\xce\x1b\xbc\xac\x70\x61\x80\x89\x7e\x89\x7e\x1f\x3e\xfb\xfd\x20\x0a\xd1\xf7\xdd\x05\xd9\x9b\xd0\xc7\xd3\x1b\xba\xa8\x6e\x5b\x7c"
+"\x8b\x8b\x82\x69\x1f\x43\xfb\xe9\x20\x0a\xda\xf8\x09\x05\x8e\x96\x8e\xac\x96\x1a\xa6\x7f\xa7\x77\xa1\x1e\xa3\x75\x71\x95\x5c\x1b"
+"\x49\x53\x71\x52\x50\x1f\xc3\x7b\x64\xa6\x49\x1b\x46\x5e\x77\x4f\x4b\x1f\x98\xcc\x05\x0e\x39\x1d\x0e\x69\x0a\x0e\xa5\x1d\x3d\x3b"
+"\x60\x53\x70\x1e\x9d\xdf\x05\x3a\x06\xf7\x6b\x4d\xa1\x1d\xf8\x56\xfb\x69\x15\xf7\x31\xf9\x75\x05\x40\x06\x78\x35\x05\xcd\x74\x58"
+"\xae\x42\x1b\x47\x44\x6d\x5b\x5e\x1f\x48\x44\x5f\xfb\x06\x24\x1a\xfb\x04\xd7\x37\xf0\xb4\xb8\x97\x9d\xa8\x1e\x9b\x95\x97\x96\xad"
+"\xad\x50\xfb\xa7\x18\x89\xf9\x37\x15\xce\xb6\x59\x3c\x4d\x79\x47\x6f\x5b\x1f\x49\x64\x56\x68\x4f\x1b\x44\x5d\xbf\xdb\xc5\x9e\xd3"
+"\xa6\xb8\x1f\xcd\xb2\xc3\xae\xcb\x1b\x0e\xfb\xe9\x67\x1d\xa5\xf7\x0e\xd2\xc8\xf7\x02\x87\x19\x9d\xe0\x05\x8d\x7e\x83\x8c\x80\x1b"
+"\x51\x5f\x71\x44\x4c\x1f\x9c\xdd\x05\x0e\xfb\x42\xf8\x96\xf8\x0e\x15\x90\xa0\x8c\x94\x98\x1a\xd1\x49\xbb\x29\x3c\x1d\x3b\xd0\x5b"
+"\xf7\x09\xf7\x29\xec\xd8\xf7\x0b\x5a\x0a\xa4\x9d\x9c\x44\x0a\x85\x8b\x83\x8a\x83\x1f\x0e\xfc\x20\xf8\x02\x6f\x0a\x0e\x58\x1d\x0e"
+"\xfb\x42\xf7\xb3\x16\xf7\xcb\xf8\xa0\x05\x30\x06\xfb\x88\xfc\x3a\x5a\xf8\x3a\x05\x2f\x06\xd5\xfc\xa0\x05\x0e\xbb\x3a\x1d\x0e\xfb"
+"\x42\xf7\xf2\xf7\x9f\x15\xf7\x7d\xf7\x95\x05\x2a\x06\xfb\x3b\xfb\x54\x33\xf7\x54\x05\x2e\x06\xf7\x0a\xfb\x95\xfb\x83\xfb\x9f\x05"
+"\xed\x06\xf7\x42\xf7\x5c\xe5\xfb\x5c\x05\xe9\x06\x0e\xfb\x42\x4d\x0a\x0e\xfb\x42\x46\x1d\x0e\xfb\xe8\xf8\x43\x22\x1d\x5c\x06\x46"
+"\x8a\x56\x58\x7d\x3b\x67\xfb\x3a\x18\x79\x32\x6d\x64\x51\x81\x7c\x45\x18\xb1\x85\x9e\x73\x62\x1a\x7b\x88\x75\x85\x6e\x1e\x68\xfb"
+"\x3a\x05\x87\x79\x89\x78\x7a\x1a\x5a\xab\x6e\xc1\x1e\xba\x06\x99\xcc\x05\x7b\x06\x65\x7b\x95\xa3\x95\x8c\x96\x8e\x97\x1f\xb2\xf7"
+"\x49\x05\x8f\x9e\x8d\x9f\xa1\x1a\xbe\x80\xa1\x66\xa4\x1e\xc3\xa9\xb1\xc3\x99\xd2\xb2\xf7\x49\x18\xbf\x96\x9c\x9a\xbd\x1b\x9b\x06"
+"\x0e\xfc\x32\xf7\x93\xf9\x6d\x15\xfb\x5d\xfe\x41\x05\xc7\x06\xf7\x5d\xfa\x41\x05\x0e\xfb\xe8\x7b\xfb\x69\x15\xba\x06\xcf\x87\xbd"
+"\xbc\x9d\xe2\xaf\xf7\x3a\x18\x99\xdf\xad\xb8\xc5\x94\x9a\xd1\x18\x66\x91\x77\xa2\xb0\x1a\xa0\x8e\x9f\x91\xaa\x1e\xae\xf7\x3a\x05"
+"\x8f\x9e\x8d\x9c\x99\x1a\xbc\x68\xac\x58\x1e\x5c\x06\x7d\x4a\x05\x9b\x06\xb1\x9b\x81\x73\x81\x8a\x80\x88\x7f\x1f\x64\xfb\x49\x05"
+"\x87\x78\x89\x79\x7a\x1a\x60\x9a\x6a\xac\x6e\x1e\x49\x6c\x72\x67\x7a\x31\x64\xfb\x49\x18\x57\x80\x7a\x7c\x59\x1b\x7b\x06\x0e\x31"
+"\xf8\xb2\xf8\x2f\x15\x57\x80\x76\x74\x67\x1b\x7d\x7d\x90\x97\x79\x1f\x25\xd0\x05\x96\x7c\x7a\x90\x78\x1b\x4b\x5a\x58\x2d\x72\x1f"
+"\xbf\x06\xbf\x9b\xa3\xa6\xaa\x1b\x95\x9d\x84\x83\x96\x1f\xe0\x4c\x05\x7b\xa1\xa7\x81\xa3\x1b\xb1\xb2\xa0\xad\xa4\x1f\x9d\xa3\x94"
+"\xa2\x92\xb4\x08\x0e\xfb\xe9\xd7\xfb\x61\x15\xdf\x06\xd5\xf7\xf2\xa2\xf7\x67\x05\x63\x06\x48\xfb\x67\x05\xc8\xf7\xa8\x15\xdf\x06"
+"\xa1\xf2\x05\x37\x06\x0e\xf8\x2b\xf8\x63\x15\xaf\x85\x8c\x8b\x96\x85\x08\xa6\x7d\x9c\x6d\x67\x1a\x85\x8b\x83\x8a\x82\x1e\xdf\x06"
+"\x8c\x9a\x05\x8c\x9a\x8c\x96\x8e\x1a\xc4\x60\xc5\x52\xa0\x1e\x92\x77\x7a\x8e\x72\x1b\x9e\xe5\x05\x63\x06\x78\x31\x44\x84\x59\x76"
+"\x5b\x60\x19\x43\x4a\x5d\xfb\x08\xfb\x07\x1a\x20\xcc\x40\xf2\x80\x1e\x76\x29\x05\xb3\x06\xa0\xec\xf7\x1a\x93\xd7\xcb\xae\xf7\x17"
+"\x19\x37\x06\x6c\x39\x60\x66\x44\x83\x08\x64\x8e\x15\x4f\x93\x66\xbc\xd1\x1a\xe1\xb0\xe8\xc2\xc0\x1e\xa5\xa4\xa5\x98\xb1\x92\x08"
+"\x0e\xf8\x53\xf8\x0c\x15\xfb\x34\x06\x85\x9f\x8b\x8c\x82\xa2\x08\x7c\xb5\x8a\x91\xa3\x1a\xe6\xd4\xd0\xea\xd2\xb8\x65\x4f\x79\x89"
+"\x7d\x84\x72\x1e\xe3\x06\x92\xb5\x8d\x9d\xa1\x1a\xe5\x40\xc7\xfb\x03\xfb\x27\xfb\x1b\xfb\x0b\xfb\x16\x72\x8f\x7b\x9c\x62\x1e\x8e"
+"\x85\x8e\x83\x8e\x83\x08\x38\x06\x7f\x54\x05\xf7\x05\x06\x94\x6d\x8c\x86\x7c\x1a\x44\x53\x44\xfb\x0a\x3e\x1e\xb0\x49\x05\xa5\xba"
+"\xad\x96\xb0\x1b\xa2\x9f\x88\x83\x9f\x1f\x71\xcf\xad\x82\xb0\x1b\xbc\xbd\x9e\xae\xb6\x1f\x72\xd1\x05\x73\x60\x78\x92\x0a\x91\x90"
+"\x92\x90\x92\x90\xa6\x9f\x18\xb7\xad\x9b\x9a\x9a\x9f\x08\xa4\xaf\x9d\xbc\xac\x1a\x8f\x8a\x95\x8a\x98\x1e\x8a\x96\x05\xf7\x1d\x06"
+"\x0e\xfc\x20\xf8\x78\x34\x0a\x0e\xf8\xd1\xf7\xf6\x15\xfb\x2e\x06\xf7\xa9\xf7\xf7\x05\x36\x06\xfb\x8c\xfb\xd6\xfb\x08\xf7\xd6\x05"
+"\x36\x06\xf7\x16\xfb\xf7\x05\xfb\x2e\x06\x80\x58\x05\xf7\x43\x06\x7a\x3e\x05\xfb\x42\x06\x80\x58\x05\xf7\x42\x06\x66\xfb\x43\x05"
+"\xe3\x06\xb0\xf7\x43\x05\xf7\x41\x06\x95\xbe\x05\xfb\x40\x06\x9c\xd8\x05\xf7\x40\x06\x0e\xf8\xcb\xf8\x64\x15\xfb\x05\x06\xa6\xd0"
+"\x05\xdf\xab\xb5\xb7\xba\x1b\x9c\x96\x86\x7c\x9f\x1f\xb9\xd9\x05\x98\x72\x73\x91\x71\x1b\x35\x37\x48\x23\x60\x1f\x60\x24\x05\xfb"
+"\x11\x27\x1d\xf7\x04\x06\xfb\x39\xfc\x31\x05\x3d\x6c\x65\x67\x59\x1b\x77\x7e\x90\x99\x7a\x1f\x68\x35\x05\x83\x9c\x97\x89\xa2\x1b"
+"\xf7\x05\xd9\xcc\xf7\x22\xc3\x1f\xf7\x32\xf8\x21\x05\xf7\x13\x06\x0e\xf8\xd3\x21\x0a\x8d\x93\x8b\x8b\x8d\x94\x08\x94\xa4\x8c\x94"
+"\x9e\x1a\xdb\x4c\xc2\x31\xfb\x04\x24\x31\x28\x6d\x93\x73\x9d\x74\x1e\x4f\x6b\x7f\x83\x74\x71\x08\x6f\x6b\x77\x59\x62\x1a\x61\x9c"
+"\x6c\xb9\x64\x1e\xf7\x25\xfb\x10\x05\xa7\x73\x95\x78\x6e\x1a\x53\x58\x5d\x4e\x58\x67\xab\xb8\x98\x8d\x96\x91\xa0\x1e\x36\x06\x83"
+"\x71\x88\x7d\x76\x1a\x37\xcb\x55\xed\xcb\xc6\xa4\xb8\xb3\x1e\xad\xb2\x9f\xba\xb4\x1a\xad\x83\xa2\x75\xa9\x1e\xb3\x98\xab\x9f\xa2"
+"\xa6\x08\xa9\xae\xa1\xc4\xb7\x1a\xa8\x83\xa3\x7b\xa1\x1e\x81\x97\x82\x94\x69\xa6\xfb\x13\xf0\x18\x69\xa6\x83\x97\xa2\x1a\xbf\xbc"
+"\xba\xc3\xbe\xab\x6d\x5c\x7a\x88\x7d\x84\x77\x1e\xfb\x93\xfb\xbb\x15\x69\xa8\x81\x9e\xab\x1a\xbb\xa4\xaa\xd1\xb3\x1e\xf7\x17\x21"
+"\x05\xac\x71\x9f\x68\x6d\x1a\x5b\x6a\x61\x4b\x6a\x1e\x0e\xf8\xa2\xf7\x53\x15\x60\xc1\x05\xa9\xa8\xa3\xc7\xba\x1a\xa5\x88\x9a\x81"
+"\x9b\x1e\xd0\xc3\x5c\xc5\x47\x53\x05\x9d\x77\x68\x96\x65\x1b\x69\x63\x80\x7b\x6f\x1f\x5e\xc5\x49\x53\xb5\x54\x77\x70\x80\x7b\x89"
+"\x88\x19\x7b\x6c\x82\x6b\x6c\x1a\x72\x90\x75\x94\x79\x1e\x4f\x5a\xb7\x51\xcc\xbf\x05\x7a\x9f\xa9\x83\xb3\x1b\xb2\xb1\x96\x9e\xa7"
+"\x1f\xb5\x56\x05\x34\xf7\xcb\x15\xbd\xb2\x66\x5c\x49\x4b\x4e\x46\x58\x64\xb0\xbc\xcc\xcc\xc7\xd0\x1f\x0e\xfc\x77\xf7\x5a\x9a\x0a"
+"\x0e\xfb\xe9\xf7\x83\xf8\x71\x15\xa1\xf2\x05\x5c\x06\x95\xc5\xa0\xa6\xae\x90\x93\xb2\x18\x4f\x86\x5f\x5b\x7a\x3c\x76\x27\x18\xf7"
+"\x92\x16\xa1\xf2\x05\x5b\x06\x96\xc5\x9f\xa6\xaf\x90\x93\xb2\x18\x4f\x86\x5f\x5b\x7a\x3c\x76\x27\x18\x0e\xf7\x27\x93\x0a\xf7\x4e"
+"\x32\x15\xf7\x11\xfb\x0d\x9d\xdd\x35\xde\xf7\x0d\xdf\x9d\xde\xfb\x45\xfb\x0e\x05\x0e\xfb\xe9\xf7\x20\x93\x0a\x0e\xfb\xe9\xf7\xc7"
+"\xf7\xd1\x99\x0a\x0e\xfb\x42\xf8\x00\xf8\xa0\x3b\x1d\xf7\x59\xce\x8e\x0a\xfb\x42\xf8\x06\xf8\xa0\x3b\x1d\xf7\x79\xf7\xa4\xdb\x1d"
+"\xf9\x08\xf7\xcc\x15\xfc\xcb\x27\x1d\xf8\xcb\x06\x0e\xf9\x00\xf8\x89\x15\xfb\x56\xb5\x0a\xfb\x56\x06\x7a\x3a\x05\xf7\x55\x06\xfb"
+"\x12\xfc\xe9\x05\xe3\x06\xf7\x12\xf8\xe9\x05\xf7\x57\x06\x0e\xf9\x00\xf8\x89\x15\xfb\x53\xb5\x0a\xfb\x52\x06\x7a\x3a\x05\xf7\x52"
+"\x06\x49\xfb\xc8\x05\xfb\x52\x06\x7a\x3a\x05\xf7\x52\x06\x5f\xfb\x64\x05\xe3\x06\xb7\xf7\x64\x05\xf7\x53\x06\x9c\xdc\x05\xfb\x53"
+"\x06\xcd\xf7\xc8\x05\xf7\x53\x06\x0e\xfc\x20\x58\x0a\xfb\x1d\xf9\x39\x22\x1d\xfb\x8e\x06\xfb\x26\xfb\x1c\xfb\x21\xfb\x2c\xfb\x00"
+"\xc8\x49\xf3\x88\x1f\x2e\xfc\x49\x05\xcb\x06\xf7\x47\xf9\xdf\x05\xde\x06\xfb\x47\xfd\xdf\x05\xcb\x06\xf7\x47\xf9\xdf\x05\xc3\x06"
+"\x0e\xfb\xd8\xf7\xa6\xf8\x6a\x15\x3b\x41\x42\x3b\x55\xb7\x60\xc3\xdd\xd5\xd4\xda\xc5\x61\xb3\x4f\x1f\x0e\xfc\x58\xe1\xf2\x47\x1d"
+"\x0e\xfb\xe9\xd0\xf2\x47\x1d\xcc\x16\x69\x1d\x0e\xfb\xe9\xf7\x5b\xf9\x58\x47\x1d\xcc\x16\x69\x1d\x0e\xf7\xd3\xf7\xd1\x99\x0a\xf7"
+"\x6e\xe4\x15\xfb\x13\xf7\x0d\x79\x39\xe3\x38\xfb\x0f\x37\x79\x38\xf7\x47\xf7\x0e\x05\x0e\xf7\xda\xf7\x85\xf2\x37\x0a\xf3\x06\xf7"
+"\xf7\xf2\x37\x0a\xf3\x06\xf7\xf7\xf2\x23\x0a\xf7\xda\xf9\x1d\xf9\x76\x15\xfc\xc0\xfd\x8a\x05\xcd\x06\xf8\xc0\xf9\x8a\x05\xfc\x25"
+"\x7e\x51\x0a\xf7\x86\xfc\x1e\x51\x0a\xf8\x0a\xc2\x51\x0a\x0e\x4c\xf7\xec\xf7\xd9\x15\x81\x5c\x7d\x59\x7b\x78\x41\x54\x19\x5b\x66"
+"\x72\x74\x77\x71\x08\x6b\x61\x78\x57\x5d\x1a\x6b\x98\x6a\xa1\x72\x1e\x65\xac\xb8\x7a\xce\x1b\xf7\x24\xe5\xda\xf7\x2f\xaa\x1f\x36"
+"\x06\xfb\x02\x75\x5b\x5c\x33\x1b\x4a\x61\xad\xc0\xc1\xab\xbc\xd3\xc4\x1f\xf4\xdb\x9d\xa1\x99\xc8\x97\xc2\x18\x45\xeb\x15\xe5\x06"
+"\xa1\xf2\x05\x31\x06\x0e\xfb\xe9\xf7\xb1\xf9\x78\x2e\x0a\xfb\xe9\xf7\xee\xf9\x78\x23\x1d\xfb\xe9\xf7\xa6\xf9\x79\x24\x1d\xfb\xe9"
+"\xf8\x36\xf9\x63\x46\x0a\x77\x1b\x81\x70\x91\x94\x71\x50\x0a\xb8\xb5\x31\x1d\xfb\xe9\xa5\x0a\xfb\xe9\xf7\x3e\xf9\x6d\x59\x1d\xfb"
+"\xe9\xf8\x06\xf9\x5f\x23\x0a\xfb\xe9\xf7\xb1\x53\x0a\xfb\xe9\xf7\xd8\xf9\x86\x6f\x1d\x83\x5f\x15\x9f\x9a\x7d\x77\x70\x7a\x1d\xa6"
+"\x1f\x0e\xfb\xe9\xf7\x39\x16\x59\x2f\x8a\x1d\xb8\xcb\x57\x0a\xa9\xc3\x05\x0e\xfb\xe9\xf7\x6f\xf9\x78\x40\x0a\xfb\xe9\xf7\x39\x16"
+"\x68\x7e\x7a\x82\x78\x7f\x08\x65\x72\x76\x69\x66\x1a\x5b\xbc\x70\xe0\xa7\x9e\x8e\x92\xa0\x1e\x94\xb8\x05\x84\x78\x73\x88\x70\x1b"
+"\x64\x70\x9d\xa5\x9b\x92\x9e\x98\x9a\x1f\x9c\x9f\x99\x95\xbe\xa4\x92\x8e\x93\x8f\x92\x8f\x08\x0e\xfb\xe9\xf7\xe3\xf8\xe4\x2a\x1d"
+"\xf7\xda\xca\x1d\xf7\xda\x6d\x0a\x0e\xfb\xc4\xf8\x2a\xf7\xf6\x15\xfb\xb4\x06\x80\x58\x05\xf7\xb4\x06\xb0\xf7\x26\x15\x83\x8a\x05"
+"\x8a\x87\x88\x8b\x89\x1b\x82\x83\x91\x93\x8d\x8b\x8d\x8c\x8e\x1f\xb4\xf7\x52\x05\x8c\x8e\x8b\x93\x92\x1a\xb4\x63\xa4\x4b\x57\x61"
+"\x7e\x73\x72\x1e\x7b\x7c\x85\x7e\x7f\x60\x08\xc3\x06\xb1\x96\xa5\x9e\xb6\x1b\xa1\xa2\x85\x85\x91\x1f\x95\x7f\x8c\x88\x83\x1a\x86"
+"\x8a\x86\x8a\x86\x1e\x89\x83\x84\x72\x84\x88\x5f\x86\x19\x3c\x83\x71\x85\x6e\x79\x08\x6b\x77\x79\x6b\x66\x1a\x58\xad\x6e\xc8\xb5"
+"\xb0\x99\xa8\xa9\x1e\x6f\x8e\x9a\x7c\xa8\x1b\x92\x8c\x8b\x8f\x9d\x1f\x8c\x90\x8c\x8c\x8f\x1f\x45\xf7\x02\x15\x6a\x85\x56\x6a\x5e"
+"\x1b\x67\x7a\x97\xa4\x9c\x96\x9f\x9c\x95\x1f\x9d\x96\x98\x8e\xc4\x93\xa3\x8e\x95\x8d\x9c\x91\x08\x0e\xf7\x99\xf7\xcf\x15\xf7\x58"
+"\xf7\x0a\x9c\xda\xfb\x58\xfb\x0a\xd2\xf7\xe3\x05\x2d\x06\x3b\xfc\x0a\x38\x58\x7a\x3c\xde\xbe\x51\xfb\xa8\x05\xf8\x58\x2f\x0a\xfb"
+"\xfb\x06\x0e\xf3\x65\x0a\x0e\xf7\xda\xf9\x43\xf7\xdb\x15\xf7\xda\x2f\x0a\xfb\xdb\x06\xbe\xf7\x82\x05\xf7\xe4\x20\x1d\xfc\x42\x06"
+"\x7b\x3f\x05\xc8\x6c\x58\xa6\x37\x1b\x2e\x28\x5b\x3e\x46\x1f\x3e\x34\x52\xfb\x3e\xfb\x20\x1a\xfb\x26\xe7\x2b\xf7\x1f\xe2\xca\xa9"
+"\xd1\xc4\x1e\x7b\x3e\x05\xf8\x46\x20\x1d\xfb\xe8\x06\x43\xef\x15\x38\x52\x46\x62\x37\x1b\x2b\x50\xc9\xf1\xeb\xab\xf7\x1c\xb2\xd0"
+"\x1f\xe5\xbf\xd3\xba\xe3\x1b\xe3\xbe\x64\x39\x9e\x1f\x0e\xfb\xc9\xf8\x18\xf7\xf6\x15\xfb\x9b\x06\x80\x58\x05\xf7\x9b\x06\x62\xf8"
+"\x4b\x15\x54\x57\x71\x5f\x6a\x1f\x70\x66\x77\x45\x53\x1a\x49\xb9\x5f\xce\xc6\xbd\xa4\xb9\xac\x1e\xa6\xb1\xa0\xcf\xbe\x1a\xac\x7c"
+"\xb1\x77\x9d\x1e\x9b\x79\x6d\x95\x6a\x1b\x82\x57\x15\xb3\xa4\x6f\x5e\x2e\x58\x42\x4a\x61\x72\xa6\xba\xe8\xbf\xd3\xcd\x1f\x0e\xf7"
+"\x6b\x7b\x1d\x0e\xfc\x20\x2d\x0a\x0e\xfc\x58\xf7\x83\xf8\x32\x15\xce\xf7\xcf\x21\x1d\x42\xfb\xef\x42\x5e\x7d\x48\xd3\xb7\x48\xfb"
+"\xce\x20\x0a\xd5\xf7\xef\xd4\xb5\x99\xce\x05\x0e\x4c\x82\x1d\x0e\xf7\xa2\xf9\xda\xf7\x33\x15\x45\x67\x56\x68\x49\x1b\x3d\x5a\xba"
+"\xd6\x9f\x8d\x98\x90\xa4\x1f\xf8\x16\x06\x99\xd9\x8e\xa3\xab\x1a\xec\x38\xd5\xfb\x00\x38\x30\x60\x4f\x60\x1e\xce\x6e\x50\xaf\x37"
+"\x1b\x2c\x3c\x62\x3f\x59\x1f\x5e\x47\x6b\xfb\x00\x3a\x1a\x56\x9f\x58\xad\x68\x1e\x6a\xab\xb9\x7b\xc5\x1b\xe2\xda\xb2\xcf\xbd\x1f"
+"\x90\x7f\x8e\x85\x94\x80\x08\x54\xb5\xbb\x74\xd0\x1b\xf7\x0d\xf1\xd4\xf7\x01\xab\x1f\xfc\xbb\xf7\xc3\x15\xd3\xb7\x5b\x3b\x50\x7b"
+"\x47\x71\x5b\x1f\x48\x66\x52\x65\x49\x1b\x46\x60\xbb\xda\xf7\x31\xe2\xf7\x10\xf7\x03\x1f\xf7\x66\xfb\x30\x15\xe8\xa6\xd5\xca\xdd"
+"\x1b\xd1\xb7\x5b\x3f\x81\x8a\x83\x89\x7d\x1f\x0e\x4c\xf7\xed\xf7\xf1\x15\x9b\x06\xc0\xa2\x88\x81\xa2\x1f\xb0\x7c\x9f\x6c\x60\x1a"
+"\x24\x31\x39\xfb\x06\x1e\x6c\x06\x81\x06\x7a\x3d\x05\x88\x9d\x96\x8a\x9e\x1b\xeb\xde\xb0\xcf\xc3\x1f\xb4\xbb\xa7\xd5\xc4\x1a\xb4"
+"\x76\xb2\x67\xa4\x1e\x77\x99\x7c\x92\x68\x96\x08\xf6\xab\xc1\xc9\xe6\x1a\xe2\x43\xc3\xfb\x03\x47\x48\x77\x68\x57\x1e\x5c\x6b\x71"
+"\x63\x7d\x4b\xfb\x06\xfc\xae\x18\xde\x06\xf7\x06\xf8\xae\x05\xd0\x9a\xcc\xb7\xe2\x1b\xd2\xb9\x68\x56\x41\x3d\x51\x27\x1f\x81\x06"
+"\x0e\xfb\xe9\xf7\xa5\xf8\xd8\x15\x4c\xfb\xbc\x05\xcb\x06\xe5\xf8\x3d\x05\x5f\x06\x6a\x4a\x81\x85\x30\x7f\x81\x5d\x18\x0e\x31\xf7"
+"\x06\xf8\x0d\x15\x7c\x43\x05\xf8\x47\x06\x5d\xfb\x6f\x05\xd1\x06\xc8\xf7\xb7\x05\x0e\xf8\xbe\xbc\x15\x89\x84\x87\x8a\x85\x1b\x72"
+"\x7e\x95\xa0\x8f\x8b\x8f\x8c\x8e\x1f\xe8\xf8\x48\x21\x1d\x4c\xfb\xbd\x05\x20\x74\x44\x45\x35\x1b\x55\x6b\xa9\xbd\x95\x8c\x96\x8d"
+"\x94\x1f\xd8\xf8\x00\x21\x1d\xfb\x32\xfd\x7c\x20\x0a\xbb\xf7\x76\x05\x76\xa0\xa2\x83\xb0\x1b\xd1\xc6\xa6\xc3\xc1\x1f\x89\x83\x8a"
+"\x84\x87\x1a\x5d\xa0\x79\xc1\x99\x90\x8c\x90\xa1\x1e\x8d\x90\x8d\x8c\x91\x1f\x0e\xf7\xda\xf8\x42\xf9\x36\x15\xf7\x2d\x06\x96\xc2"
+"\x05\xfc\x0a\x06\x7f\x54\x05\xf7\x2e\x06\x3a\xfc\x12\x05\xcf\x06\xf8\x65\x16\xf7\x57\xf7\xe9\x42\xfb\xe9\x05\xce\x06\xe8\xf8\x49"
+"\x05\x31\x06\xfb\x65\xfb\xfe\x54\xf7\xfe\x05\x2d\x06\x2e\xfc\x49\x05\xce\x06\xd4\xf7\xe9\xbb\xfb\xe9\x05\x0e\xbb\x86\x1d\xf7\x34"
+"\xce\x1d\x60\x06\x6a\x48\x7e\x82\x31\x84\x82\x5d\x18\xf8\xdd\xf7\x15\x35\x0a\xa5\xfd\x1f\x15\xfb\x7a\x06\x9f\xb1\xa1\x9e\xbc\xa2"
+"\xd0\xab\x18\xdc\xaf\xb8\xc3\xc9\x1a\xca\x5d\xb1\x3f\x28\x50\x5a\x24\x72\x1e\xc9\x06\x94\xaa\x91\x9b\x96\x98\x08\xa4\x9e\xaa\x99"
+"\xac\x1b\xb4\xa8\x73\x67\x66\x70\x6a\x59\x73\x1f\x4a\x6c\x21\x59\x67\x63\x72\x2a\x19\xf7\xc4\x06\x0e\x31\xf9\x05\xf8\x41\x15\xfb"
+"\x63\x06\xb7\xf7\x60\x05\x44\x06\x60\xb1\x0a\x5e\xfb\x64\x05\xd2\x06\xb7\xf7\x64\x05\xf7\x63\x06\x4e\xfb\xb1\x15\xfc\x78\x27\x1d"
+"\xf8\x78\x06\x0e\x84\xf7\x76\xf7\x53\xa4\x0a\xf6\x4d\xc1\xfb\x0f\x1e\xfb\x64\x06\xa4\xf7\x0a\x05\x2d\x22\x0a\xc5\xf7\xa5\x15\xc1"
+"\xf7\x94\x05\xf7\x57\xbe\x1d\xf7\x34\xce\x1d\x61\x06\x69\x48\x7e\x82\x32\x84\x81\x5d\x18\xf8\xf5\xf7\x15\x35\x0a\xfb\x02\xfc\xf5"
+"\x15\x76\x27\x05\xc9\x06\xa0\xa9\x0a\xfb\x98\xfb\x9e\x7e\x50\x05\xf7\x5b\xc0\x15\xfb\x15\x06\xf7\x39\xf7\x3e\x05\x0e\x31\xd2\x1d"
+"\xfb\xa3\x2e\xc0\x1d\xd5\xf7\xfa\xc0\x1d\x0e\xfc\x32\xf7\x93\xf9\x6d\xb6\x0a\xfb\x43\xfc\xb0\xb6\x0a\x0e\xfb\xa6\xf7\xe7\xf9\x42"
+"\x15\x38\x47\x47\x38\x38\xcf\x46\xdd\xe0\xcf\xce\xe0\xde\x47\xcf\x37\x1f\x8c\x60\x15\xc5\xbb\x5b\x4f\x4e\x5b\x5b\x4f\x52\x5b\xbd"
+"\xc6\xc6\xbb\xbc\xc6\x1f\x0e\xa5\x1d\x3f\x3f\x62\x51\x6d\x1e\xc8\xf7\xb5\x05\x37\x06\xf7\x40\xfb\x9f\xa1\x1d\xf7\x34\xf7\x89\xf8"
+"\x70\x67\x0a\xf8\xa6\xf7\x4a\x35\x0a\xfb\x20\xfc\xf5\x15\x75\x27\x05\xc9\x06\xa1\xa9\x0a\xfb\x99\xfb\x9e\x7f\x50\x05\xf7\x5b\xc0"
+"\x15\xfb\x16\x06\xf7\x3a\xf7\x3e\x05\x0e\xfb\xe9\xf8\x13\xf7\xec\x15\xfb\x7b\x06\x9e\xaa\xa1\x9c\xc1\xa6\xcf\xac\x18\xde\xb4\xb4"
+"\xbd\xc7\x1a\xcc\x5c\xb4\x3f\x28\x54\x5c\x20\x73\x1e\xca\x06\xd0\x9c\xab\xa9\xc4\x1b\xb4\xa5\x73\x67\x68\x6f\x69\x5c\x75\x1f\x4c"
+"\x6c\xfb\x02\x53\x70\x6c\x6f\x26\x19\xf7\xc0\x06\x0e\xca\xf7\xe9\xf7\xd9\x15\xf7\x1a\x06\xaf\x9d\x7e\x70\x82\x89\x7f\x88\x80\x1f"
+"\x7e\x53\x8a\x88\x71\x1a\x80\x8c\x86\x8e\x7f\x1e\xd9\x06\x90\xa4\x05\x82\x93\x88\x92\x99\x1a\x96\x8d\x96\x90\xab\x1e\x91\xa8\x8d"
+"\x9c\x95\x1a\xa6\x85\x96\x74\x9d\x1e\xae\xa0\x9a\x99\x97\xa2\x08\x96\xa1\x92\xa9\xa5\x1a\xc8\x65\xa7\x3a\x1e\xfb\x62\x06\x2d\xfc"
+"\x51\x05\xd1\x06\xc0\xf7\x8c\x15\xa7\xf7\x1a\x05\xf7\x15\x06\xb7\x9e\x7e\x6a\x76\x83\x73\x80\x7c\x1f\x77\x7b\x76\x83\x68\x1b\xb9"
+"\xf7\xf6\x8b\x1d\x31\xf8\xed\xf7\xa1\x15\xfc\x8d\x27\x1d\xf8\x8d\x06\x0e\xf7\x8f\xf8\xc8\x15\xef\xb8\xaf\x6a\x9b\x7a\xab\x61\x19"
+"\x99\x6f\x7f\x8e\x71\x1b\x36\x3d\x62\x45\x5b\x1f\x5e\x4a\x6a\xfb\x01\x36\x1a\x56\xa0\x58\xad\x69\x1e\x6b\xac\xba\x7a\xc5\x1b\xe7"
+"\xd9\xb3\xd7\xc1\x1f\xb8\xc9\xad\xf7\x02\xdd\x1a\xf6\x58\xeb\x22\xe5\x1e\xea\xb4\x64\xb1\x28\x60\x05\x8e\x87\x88\x8d\x8a\x1b\x7f"
+"\x94\x7f\x93\x7e\x94\x87\x8e\x7f\x93\x78\x96\x85\x8f\x83\x90\x83\x90\x61\x5e\x18\x97\x82\x97\x83\x8f\x89\x9a\x81\x95\x85\x8d\x89"
+"\x8e\x89\x93\x84\x94\x83\x32\x62\x18\xf7\x2c\xfb\x21\x15\xd5\xb6\x5c\x39\x4f\x0a\x0e\x31\xf8\xa5\xf8\x3f\x15\xfb\x46\xfb\x26\xfb"
+"\x07\xf7\x25\x4f\x5a\xf7\x07\xfb\x26\xfb\x46\xfb\x27\xb2\x5a\xf7\x46\xf7\x26\xf7\x08\xfb\x27\xc8\xbd\xfb\x09\xf7\x27\xf7\x46\xf7"
+"\x26\x05\x0e\xfb\xe9\xf7\x77\xf8\x6e\x15\x8c\x9a\x92\x8b\x94\x1b\xbd\xa7\x79\x6b\x4f\x5f\x63\x4a\x62\x70\xa1\xad\x90\x8b\x93\x8c"
+"\x93\x1f\x8c\x97\x05\x4b\x06\x89\x76\x8a\x82\x80\x1a\x49\xb7\x66\xdb\xf4\xd9\xd1\xe9\xac\x7e\xa1\x6c\x9a\x1e\xbd\xab\x9e\xaa\xbf"
+"\x1a\xc2\x5d\xae\x44\x57\x5f\x79\x69\x6c\x1e\x77\x76\x80\x74\x7f\x5b\x08\xca\x06\x92\xaa\x90\x97\x94\x96\x08\xa2\x9c\xa6\x97\xab"
+"\x1b\xb2\xa2\x79\x6e\x54\x6a\x72\x41\x1f\x87\x06\x7f\x06\x0e\xca\xf9\x11\xf8\x49\x15\xf5\x89\x61\xbc\x31\x1b\x47\x4e\x6d\x53\x5b"
+"\x1f\x5b\x51\x6e\x3a\x40\x1a\x24\xc4\x4c\xe9\xc6\xbd\xa2\xba\xb6\x1e\xa5\xa7\x9b\xa7\xa3\xc7\x08\x44\x06\x3a\x6d\x5d\x60\x54\x1b"
+"\x52\x65\xb8\xcf\xc0\x9c\xc6\xa7\xb6\x1f\xbb\xab\xb5\xa5\xbb\x1b\xbf\xa2\x70\x49\x8e\x1f\x67\xf7\xc5\x8b\x1d\x84\x28\x1d\xdc\xf7"
+"\xc9\x23\x1d\x84\x28\x1d\x97\xf7\xca\x41\x0a\x0e\x84\x28\x1d\xa6\xf7\xb0\x15\x23\x06\x75\xa1\x0a\x75\x24\x05\xf3\x06\x0e\x84\x28"
+"\x1d\x94\xf7\xc9\x24\x0a\x0e\x84\x28\x1d\xc6\x9d\x1d\x0e\x84\x28\x1d\xf7\x2d\xf7\xb4\x15\x6e\x79\x81\x83\x77\x1b\x81\x70\x91\x94"
+"\x71\x50\x0a\xb8\xb5\x31\x1d\xbb\xf8\x04\x74\x15\xf7\x42\x8d\xf7\x06\xe4\xda\xf7\x5a\x8f\x1d\x3c\x2c\x5a\xfb\x1d\xfb\x12\x1a\x35"
+"\xa9\x40\xc2\x5a\x1e\xae\x6c\xa8\x7f\xce\x81\x65\x44\x18\x60\x1d\x92\xa1\x62\x33\x1d\xbe\xa7\x83\xb2\x1b\xdf\xc8\xb8\xcb\xa7\x6d"
+"\xa2\x66\x86\x87\x8b\x89\x7f\x1f\x0e\x84\xf8\xda\xfa\x3f\x15\xfb\x14\xfb\x28\x05\xc8\x06\xf7\x47\xf7\x28\x05\xfc\x4b\xfc\xf3\x3d"
+"\x0a\x84\xf8\x83\xfa\x40\x4b\x1d\xfb\xe3\xfc\xf4\x3d\x0a\x84\xf8\x8d\xfa\x26\x4a\x1d\xfc\x19\xfc\x73\x3d\x0a\x84\xf8\x84\xfa\x3f"
+"\x70\x1d\xfb\xcc\xfc\x5f\x3d\x0a\xfc\x20\x29\x1d\xf7\x41\x55\x0a\xfc\x20\x29\x1d\xf0\x64\x1d\xfc\x20\x29\x1d\xf7\x04\xfa\x1f\x2c"
+"\x0a\xfc\x20\x29\x1d\xf7\x04\xfa\x3f\x2e\x0a\xbb\x2b\x0a\xa2\xfa\x2a\x98\x0a\x72\x6d\x7c\x76\x7a\x1f\x7f\x7c\x83\x7a\x7f\x68\x08"
+"\xc1\x06\xa8\xa0\x91\x8f\xa1\x1b\x91\x42\x1d\xcb\x9d\x87\xa0\x1b\xb8\xb5\x31\x1d\xf3\xf9\x01\xfa\x3f\x2c\x1d\xfb\x58\xfb\x5a\x63"
+"\x1d\x70\xd7\x5e\x28\x0a\x0e\xf3\xf8\xae\xfa\x40\x41\x0a\x2c\xfb\x5b\x63\x1d\x70\xd7\x5e\x28\x0a\x0e\xf3\xf8\xba\xfa\x26\x30\x1d"
+"\xfb\x2b\x45\x15\xfb\x05\x2a\x61\x36\x3a\x1f\x32\x2f\x56\xfb\x17\xfb\x14\x1a\x34\xa6\x3f\xb9\x5d\x1e\x5b\xbb\xdc\x6e\xe0\x1b\xe9"
+"\xe0\xa6\xbd\xcc\x1f\xf7\x09\xe5\xd7\xf7\x36\xf7\x32\x1a\xda\x70\xd7\x5e\x28\x0a\x0e\xf3\xf8\xae\xfa\x3f\x24\x0a\x42\x59\x15\xfb"
+"\x05\x2a\x61\x36\x3a\x1f\x32\x2f\x56\xfb\x17\xfb\x14\x1a\x34\xa6\x3f\xb9\x5d\x1e\x5b\xbb\xdc\x6e\xe0\x1b\xe9\xe0\xa6\xbd\xcc\x1f"
+"\xf7\x09\xe5\xd7\xf7\x36\xf7\x32\x1a\xda\x70\xd7\x5e\x28\x0a\x0e\xf3\xf8\xad\x61\x1d\x70\xd7\x5e\x28\x0a\xf7\x3c\xf7\x96\x15\x6e"
+"\x79\x82\x83\x77\x77\x0a\x31\x1d\x84\xf8\xb7\xf9\xab\x81\x0a\xf7\x92\xfb\xa8\x7e\x1d\x0e\xbb\xf8\xe3\xfa\x3f\x2c\x1d\x8e\xfb\x66"
+"\x6e\x0a\xbb\xf8\x99\xfa\x40\x41\x0a\xea\xfb\x67\x15\x49\x1d\xd1\x98\x3f\x1d\x83\x67\x85\x60\x7a\x1a\x62\xa2\x59\xab\x6e\x1e\x66"
+"\xb4\xcd\x76\xd8\x1b\xf7\x3c\xf7\x15\xe9\xf7\x26\xaa\x1f\xf7\x01\xf8\x94\x05\x0e\xbb\xf8\xa8\xfa\x26\x30\x1d\xaf\x39\x15\x49\x1d"
+"\xd1\x98\x3f\x1d\x83\x67\x85\x60\x7a\x1a\x62\xa2\x59\xab\x6e\x1e\x66\xb4\xcd\x76\xd8\x1b\xf7\x3c\xf7\x15\xe9\xf7\x26\xaa\x1f\xf7"
+"\x01\xf8\x94\x05\x0e\xbb\xf8\x96\xfa\x3f\x24\x0a\xf7\x0c\x4d\x6e\x0a\x84\xf8\xc8\xfa\x3f\x2c\x1d\xfb\x78\xfd\x21\x85\x0a\x0e\x84"
+"\x2f\x1d\xf7\x09\xfa\x26\x30\x1d\x0e\x4c\x33\x0a\xfb\x50\xf7\x26\x2a\x1d\xf8\x5e\xf9\x78\x2c\x1d\x79\xfd\x45\x3d\x1d\xa5\x8b\x8b"
+"\x96\x1a\xcf\x46\xb8\x22\x4c\x1d\x85\x8a\x83\x6b\x0a\x52\x6b\x51\x1d\xea\x43\x1d\x0e\xf8\x1d\xf9\x79\x4b\x1d\xcb\xfd\x46\x54\x1d"
+"\xf8\x27\xf9\x5f\x4a\x1d\x95\xfc\xc5\x54\x1d\xf8\x1c\xf9\x78\x70\x1d\xe4\xfc\xb1\x54\x1d\x7c\x1d\x81\xf8\x84\x15\x55\x55\x57\x56"
+"\x63\xaa\x6d\xb3\xc4\xbf\xbe\xc4\xb1\x6d\xa8\x61\x1f\x83\x5f\x15\xa0\x99\x7d\x76\x71\x71\x71\x6f\x76\x7d\x99\xa0\xa5\xa6\xa5\xa6"
+"\x1f\x0e\x5f\x0a\xda\xf8\x61\x15\x6f\x7a\x80\x82\x77\x1b\x81\x70\x91\x94\x71\xcd\x1d\x83\x7b\x7f\x67\x08\xc0\x06\xa7\x9f\x93\x90"
+"\xa1\x1b\x91\x42\x1d\xcb\x9d\x87\xa0\x1b\xb8\xb6\xb6\xcb\x9f\x1f\x0e\xfb\x42\xf7\xa3\x74\x15\xf7\x15\x8f\xe1\xd1\xab\xf7\x15\xa6"
+"\x0a\x46\x5f\x3f\x0a\xdf\x06\x8c\x9a\x05\x8c\x9b\x8c\x96\x8e\x1a\xab\x62\x1d\x51\xa3\x52\xb2\x67\x1e\xa3\x74\x9f\x82\xba\x82\x65"
+"\x45\x5d\x1d\xbe\xa7\x39\x0a\x87\x87\x8b\x89\x7e\x1f\x0e\xf8\x68\xf9\x78\x2c\x1d\x7a\xfc\x8e\x31\x0a\xf8\x19\x54\x0a\xdb\xfc\x8f"
+"\x31\x0a\xf8\x24\xf9\x5f\x30\x1d\xa4\xfc\x0e\x31\x0a\xf8\x14\xf9\x78\x24\x0a\xf6\xfb\xfa\x31\x0a\xfc\x20\x2d\x0a\xf7\x21\xf9\x78"
+"\x23\x1d\xfc\x20\x2d\x0a\xd0\xf9\x79\x24\x1d\xfc\x20\x2d\x0a\xdb\xf9\x58\x2c\x0a\xfc\x20\x2d\x0a\xdb\xf9\x78\x2e\x0a\x39\x1d\xf7"
+"\xaa\xf7\x57\x46\x0a\x78\x77\x0a\xb6\xcb\xa0\x1f\x0e\xf8\x64\xf9\x78\x2c\x1d\xfb\x54\xfb\x5d\x15\x2e\x39\x61\x41\x58\x1f\x5e\x4b"
+"\x6a\xfb\x02\x36\x1a\xfb\x03\xd8\x3f\xf7\x04\xeb\xd7\xb2\xd8\xc3\x1e\xb9\xca\xac\xf7\x01\xe2\x1a\xc0\x77\xbe\x68\xad\x1e\xac\x69"
+"\x5e\x45\x1d\x0e\xf8\x13\x54\x0a\x2e\xfb\x5e\x96\x1d\x5b\x3a\x4f\x0a\x0e\xf8\x1f\xf9\x5f\x30\x1d\xfb\x29\x42\x15\x2e\x39\x61\x41"
+"\x58\x1f\x5e\x4b\x6a\xfb\x02\x36\x1a\xfb\x03\xd8\x3f\xf7\x04\xeb\xd7\xb2\xd8\xc3\x1e\xb9\xca\xac\xf7\x01\xe2\x1a\xc0\x77\xbe\x68"
+"\xad\x1e\xac\x69\x5e\x45\x1d\x0e\xf8\x10\xf9\x78\x24\x0a\x47\x56\x15\x2e\x39\x61\x41\x58\x1f\x5e\x4b\x6a\xfb\x02\x36\x1a\xfb\x03"
+"\xd8\x3f\xf7\x04\xeb\xd7\xb2\xd8\xc3\x1e\xb9\xca\xac\xf7\x01\xe2\x1a\xc0\x77\xbe\x68\xad\x1e\xac\x69\x5e\x45\x1d\x0e\x4a\x0a\xf7"
+"\x33\xf7\x95\x46\x0a\x77\x1b\x81\x6f\x92\x93\x72\xcd\x1d\x84\x7c\x7e\x66\x08\xc0\x06\xa8\xa0\x91\x8f\xa2\x1b\x91\x95\x89\x87\x96"
+"\x1f\x75\xcb\x9c\x87\xa1\x1b\xb8\xb6\xb6\xcb\x9f\x1f\x0e\xfb\x42\xf8\x37\xf8\xe4\x81\x0a\xf7\x52\xfb\x6a\x15\x90\xa0\x8c\x94\x98"
+"\x1a\xd1\x49\xbb\x29\x3c\x1d\x3b\xd0\x5b\xf7\x09\xf7\x29\xec\xd8\xf7\x0b\x5a\x0a\xa4\x9d\x9c\x44\x0a\x1f\x85\x07\x86\x07\x8a\x80"
+"\x05\x0e\xf8\x63\xf9\x78\x2c\x1d\x2f\xfd\x78\x3b\x0a\xf8\x10\x54\x0a\x94\xfd\x79\x3b\x0a\xf8\x1e\xf9\x5f\x30\x1d\x5a\xfc\xf8\x3b"
+"\x0a\xf8\x0c\xf9\x78\x15\x21\x74\x1d\xae\xfc\xe4\x3b\x0a\xfb\x42\x74\x0a\xfb\x30\xf7\x6c\x23\x1d\xfb\x42\x74\x0a\xfb\x6e\xf7\x53"
+"\x30\x1d\x0e\xfb\x42\x46\x1d\xfb\x0c\xf7\x23\x15\xf7\x15\xf7\x28\x05\x4a\x06\x24\x59\x0a\xfb\xc9\xf7\x45\xf8\xec\x15\x48\xfb\xd0"
+"\x05\xc8\x06\xb0\xf7\x42\x05\xc8\x98\xb3\xb1\xc0\x1b\xa8\xa0\x79\x72\x87\x8a\x82\x89\x83\x1f\x5f\xfb\x65\x05\xc8\x06\xba\xf7\x75"
+"\x05\x8d\x93\x8c\x93\x92\x1a\xb9\x68\xaa\x56\x60\x64\x7e\x71\x6c\x1e\x91\xa9\x05\x0e\x48\x0a\x0e\xf3\x48\x0a\xf7\x4b\xce\x8e\x0a"
+"\xf3\x48\x0a\xf7\x79\xf7\xa4\xdb\x1d\xf7\x34\xf9\x79\xf9\x59\x35\x0a\xfc\x9e\xfb\x15\x15\x4c\xfb\xbc\x05\xc9\x06\xe6\xf8\x3d\x05"
+"\x60\x06\x6a\x48\x7d\x82\x32\x84\x81\x5d\x18\xf8\xe5\xfb\xf8\x15\xc5\x82\x0a\x79\xa6\x67\x9e\x1e\x67\x9b\x1d\x0e\xf7\x34\xf9\x96"
+"\x34\x0a\x55\x87\x1d\xfc\x4f\xf7\xa7\x67\x0a\x0e\xf7\x34\xf9\x96\x34\x0a\x55\xfc\x79\x15\xc4\x82\x0a\x7a\xa6\x67\x9e\x1e\x66\x9b"
+"\x1d\xfb\x87\x21\x0a\xfb\x6f\x06\x39\xfb\x7b\x05\xbc\x06\xa8\xaa\xa1\x95\xad\x1b\xba\xa6\x71\x5d\x41\x59\x55\x47\x5e\x73\xa3\xba"
+"\x89\x1f\x56\x80\x06\x46\xb4\x65\xd6\xee\xde\xe1\xf2\xcc\x60\xb3\x47\x6d\x71\x83\x7a\x6f\x1e\xb5\xf7\x0a\x05\xf7\x45\x06\x0e\xf7"
+"\x34\xf9\x57\x34\x0a\x8a\x87\x1d\xfb\x58\x21\x0a\xfb\xb0\x06\x7f\x57\x05\xf7\x7a\x06\xfb\x19\xfb\x26\x51\x35\x4c\xfb\x21\x08\xc4"
+"\x06\xc0\xf7\x1d\xd8\xf7\x08\xf7\x10\xf7\x14\x08\x0e\xf7\xda\x6d\x0a\xf7\x68\xf7\xb8\x23\x1d\x84\x28\x1d\x2f\xf7\xbe\x59\x1d\x84"
+"\x28\x1d\x0e\x84\x28\x1d\xfb\x9d\xee\x15\x78\x97\x0a\x9e\xe6\x05\x0e\x84\x28\x1d\xf7\x51\xf7\x9d\x15\xfb\xa6\x06\x7b\x46\x05\xf7"
+"\xa6\x06\x0e\x84\xf8\xa0\xf7\x6f\x15\xa6\xfb\x6f\x05\xaa\x06\x66\x7e\x7b\x83\x77\x7d\x08\x68\x73\x75\x66\x69\x1a\x5d\xbd\x6e\xdb"
+"\xa2\x92\x8c\x94\xb5\x1e\x94\xb8\x05\x84\x76\x75\x88\x72\x1b\x62\x70\x9c\xa6\xb6\xb0\xad\xe4\xb2\x1f\xd9\x1d\xee\x06\xf7\x02\xf7"
+"\x6f\x05\xf7\xb4\xe7\x1d\x0e\x84\x28\x1d\xc8\x9d\x1d\x6a\xf7\x35\x15\xfb\x14\xfb\x28\x05\xc7\x45\x0a\x84\x84\x1d\xbb\x3a\x0a\x56"
+"\xf8\x48\x23\x1d\xbb\x3a\x0a\x3d\xf7\xb4\x15\xf7\x14\xf7\x28\x05\x4b\x06\x23\x59\x0a\xbb\x3a\x0a\xfb\x35\xf8\x49\x24\x1d\xbb\xf9"
+"\x95\xf8\x8b\x15\x99\x07\xf7\x25\x39\xda\xfb\x2a\xfb\x12\x25\x5c\x30\x43\x1e\x3f\x2c\x5b\xfb\x1b\xfb\x0a\x1a\x3e\x9d\x4f\xb3\x56"
+"\x1e\x4e\xba\xc8\x70\xe8\x1b\xf7\x4d\xf7\x04\xe4\xf7\x5c\xcb\x1f\x2c\x06\x77\x59\x7b\x6a\x75\x6e\x08\x4e\x5d\x47\x69\x3e\x1b\x5c"
+"\x5e\x99\xa5\x6b\x1f\x64\xaa\x77\xbf\xd1\x1a\xed\xa9\xf1\xbe\xd6\x1e\xe3\xc7\xd6\xb7\xe5\x1b\xb8\xb8\x80\x79\xa5\x1f\xaa\x77\x9a"
+"\x66\x57\x1a\x89\x8b\x82\x8a\x84\x1e\x5f\xf8\x30\x15\x23\x06\x74\x23\x05\xf3\x06\x0e\x84\x75\x0a\xbb\x72\x0a\xf7\x38\xf9\x59\x2a"
+"\x1d\xbb\x86\x1d\x4d\x8f\x16\xf8\xf0\x06\xfb\x97\xf9\x0a\x05\x33\x06\xb7\x25\x15\xf7\x4b\xfc\x5b\x05\xfc\x01\x06\x0e\x84\x27\x0a"
+"\xf7\x4b\xf9\xe2\x4e\x0a\x84\x27\x0a\xf7\xf6\xf9\x59\x2a\x1d\x84\x27\x0a\xf8\x14\xf9\xd4\x23\x0a\x84\x27\x0a\xf8\x65\xf9\xc1\x36"
+"\x1d\xbc\xf7\x01\x16\xe9\x06\xf1\xf8\x76\x05\xf7\x0d\xa5\xd0\xc4\xf7\x0d\x1b\xdd\xc0\x6c\x5a\x84\x89\x7e\x87\x79\x1f\xfb\x15\xfc"
+"\xf6\x5c\x0a\x85\x8b\x8d\x7e\x1f\x7a\x3c\x05\x88\x92\x8e\x8b\x94\x1b\xf7\x12\xb5\xa4\xdf\x9d\x1f\xf7\x26\xf9\x43\x05\x8e\x98\x8c"
+"\x98\x97\x1a\xdf\x50\xb4\xfb\x0f\xfb\x08\x4a\x75\x51\x51\x1e\x99\xcc\x05\x35\x06\x0e\x84\xf7\x93\xf7\xe0\xab\x1d\xf8\x58\x06\x66"
+"\x7d\x7b\x84\x77\x7d\x08\x68\x73\x75\x66\x69\x1a\x5d\xbd\x6e\xdb\xa2\x92\x8c\x94\xb5\x1e\x94\xb8\x05\x84\x76\x75\x88\x72\x1b\x61"
+"\x71\x9c\xa6\xa1\x97\xa0\xa1\xa0\x1f\x9d\x9a\x97\x92\xc9\xa9\x9c\xdd\x18\xfc\x41\x06\x0e\x84\x27\x0a\x0e\xf7\x07\xf7\xde\xf7\xe0"
+"\xa2\x1d\xfc\x40\x06\x2e\xf9\x1b\x2b\x1d\xbb\x7a\x0a\xf7\x40\xf9\x4d\x7f\x0a\xfb\x26\xf8\x21\x2b\x1d\xba\xf7\xcd\x15\x68\x50\x05"
+"\xdf\x06\x8a\x80\x8b\x7c\x88\x1a\xfb\x37\xcf\x37\xf7\x17\xc9\xc6\x9a\xaa\xc4\x1e\x9f\xe8\x05\x5b\x2f\x65\x7e\x5a\x1b\x37\x60\xc9"
+"\xf7\x0e\x1f\x99\xf7\x6b\x07\xaf\xc6\x05\xfb\x8a\x06\x8e\xa0\x91\xa6\x91\x9d\x08\xf7\xa2\x06\xaf\xc6\x05\xfb\xb1\x06\xf7\x1e\xc7"
+"\xc9\xc4\xe2\x1b\xbf\xb0\x79\x56\xc9\x1f\xbc\xdb\x05\xba\x53\x56\x9f\x46\x1b\x35\x42\x6a\x47\x4f\x1f\x5f\x5a\x6a\x53\x72\x4a\x08"
+"\x4c\x06\x68\x50\x05\xda\x06\x84\x74\x85\x72\x88\x79\x08\x0e\x23\xd4\x16\xe9\x2e\x1d\xf8\x26\x2f\x0a\xfc\x85\x06\x0e\xf3\x64\x0a"
+"\xfb\x9f\xfa\x38\x3c\x0a\xf3\x81\x1d\xfb\x45\xfa\x44\x24\x1d\xf3\x64\x0a\xfc\x0e\x53\xe5\x1d\x65\x1b\x82\xd7\x1d\xf3\xf9\xab\xf8"
+"\x15\x15\xfb\xc4\x26\x0a\xf7\x71\x06\x87\x77\x7f\x51\x68\x54\x57\x5f\x19\x5d\x55\x52\x76\x46\x1b\x42\x49\xa7\xb6\x6c\x1f\x75\xac"
+"\x7f\xbb\xc6\x1a\xec\xac\xea\xc5\xd4\x1e\xdd\xcc\xdd\xb5\xe7\x1b\xdb\xc7\x6e\x57\xa4\x1f\x95\x76\x8e\x7d\x68\x1a\xea\x06\xc5\x81"
+"\xb1\x71\xb0\x1e\xce\x5e\x42\xac\x25\x1b\xfb\x0a\x28\x64\x3e\x40\x1f\x30\x30\x51\xfb\x22\xfb\x17\x1a\xfb\x40\xf4\xfb\x04\xf7\x35"
+"\xf2\xf7\x04\xbb\xcf\xc3\x1e\x8e\x2a\x05\xc5\x06\x43\xfa\x2b\xbf\x0a\xbb\xf7\x52\xf8\x8a\x15\x20\xfc\x8a\x05\xe9\x06\xd2\xf7\xe0"
+"\x05\xf8\x0a\x06\x44\xfb\xe0\x05\xe8\x06\xf6\xf8\x8a\x05\xd6\x06\x99\xd1\x05\x40\xb4\x0a\xfc\x0b\xb4\x0a\x41\x06\x7c\x45\x05\xf7"
+"\x3c\x16\xf8\x0b\x06\x78\x33\x05\xfc\x0b\x06\x0e\xbb\x7c\x0a\xf7\x91\xf8\xf4\x24\x1d\xc6\xf7\xb6\xf9\x6d\x15\x2d\x22\x0a\xf8\xae"
+"\xb3\x1d\x95\x8c\x97\x8e\x97\x1f\x99\xcd\x05\x2d\x06\x7d\x4b\x05\x87\x79\x89\x7a\x7e\x1a\x60\x9f\x61\xae\x6f\x1e\x75\xa7\xad\xc6"
+"\x1d\x0e\xfc\x20\x29\x1d\x85\xfa\x34\x59\x1d\xfc\x20\x29\x1d\xf7\x57\xfa\x26\x23\x0a\xfc\x20\x29\x1d\xf7\x9c\xfa\x13\x15\xfb\x8b"
+"\x06\x7b\x46\x05\xf7\x8c\x06\x0e\xfc\x20\xf7\xf1\xa0\x0a\xae\x06\x74\x7e\x82\x84\x79\x7c\x08\x61\x67\x7c\x73\x69\x1a\x5e\xbb\x6c"
+"\xce\xa0\x97\x8d\x93\xa3\x1e\x94\xb8\x05\x83\x70\x87\x8a\x7c\x1b\x66\x74\x9c\xa6\xa9\xa4\xad\xbd\xb2\x1f\x91\x8f\x91\x90\x8f\x8e"
+"\x08\x0e\xfc\x20\x29\x1d\x0e\xfc\x20\x29\x1d\xf7\x02\xfa\x26\x65\x1d\xfb\xb1\xf8\x31\x36\x0a\x40\xf9\x6d\x2b\x1d\xfc\x20\x29\x1d"
+"\xf7\x88\xfa\x2a\x98\x0a\x71\x6e\x7c\x76\x7a\x1f\x7f\x7c\x83\x7a\x7f\x68\x08\xc0\x06\xa8\xa0\x92\x8f\xa1\x1b\x91\x42\x1d\xcb\x9d"
+"\x87\xa0\x1b\xb8\xb5\x31\x1d\xfb\x42\x6c\x0a\x4e\xf7\x67\x24\x1d\x84\x78\x0a\x84\x79\x0a\xf7\x05\x4f\xb0\x1d\x3e\x1d\xf7\x45\xf9"
+"\xed\x23\x1d\x84\xf8\xbb\xf9\x6d\x15\xfb\x0c\x06\xfc\x33\xfd\x6d\x05\xef\x06\xf7\xfa\xf9\x09\xdc\xfd\x09\x05\xec\x06\x0e\x3e\x1d"
+"\xf7\x82\xf9\x1b\x42\x0a\xba\xbc\xdd\x50\x1d\x3e\x1d\xc1\xfb\x22\x5e\x1d\x3e\x1d\xf7\xf8\xf7\xfd\x23\x0a\xf7\x33\x97\x1d\xbb\x2b"
+"\x0a\x57\x55\x0a\xbb\x2b\x0a\x3f\xf9\xab\x2a\x1d\xbb\x2b\x0a\xfc\x00\x4f\x42\x0a\xba\xbb\xde\x50\x1d\xbb\x2b\x0a\x0e\xf3\x30\x0a"
+"\x5d\xf7\xa0\x4e\x0a\xf3\x30\x0a\xa9\xf7\xab\x40\x0a\xf3\x30\x0a\xf7\x4f\xf7\x7f\x36\x1d\xf0\xb2\x16\xf7\xb4\x20\x1d\x2f\xca\x6a"
+"\xc5\xf0\x1a\xf7\x5d\xf7\x17\xf7\x2f\xf7\x3f\xf7\x0b\xdb\x3c\xfb\x0b\x37\x6b\x31\x52\x41\x1e\x61\x55\x61\x6a\x35\x5e\x7a\x39\x18"
+"\xf7\xb4\x20\x1d\xfb\x50\x06\xf7\x33\xce\xe8\xf7\x1c\xf7\x38\x1a\xf7\x45\xfb\x07\xf7\x08\xfb\x44\xfb\x05\xfb\x01\x58\x35\x43\x1e"
+"\x4c\x41\x64\xfb\x02\x26\x1a\x4c\x9f\x4b\xaf\x5b\x1e\x9d\x72\x9a\x7d\xad\x73\x08\xfb\x55\x06\xdd\xf9\x1b\xcf\x1d\xf3\x30\x0a\x0e"
+"\xf7\x0c\xf8\xb4\x61\x1d\x6f\xd7\x5f\x28\x0a\xfc\x1b\xd0\x15\x78\x30\x8e\x23\x05\xaa\x06\xbb\xf3\x9e\xe6\x05\x0e\xf3\x65\x0a\xf7"
+"\xe1\xf9\xc4\x23\x1d\xf7\x37\xf8\x06\x7f\x15\xe9\x06\x9e\xe5\xef\x90\xcd\x9f\xcd\xba\x19\xe4\xca\xc2\xf2\xf3\x1a\xd6\x64\xd2\x4d"
+"\xb2\x1e\x5e\xa7\x66\x97\x44\x91\x9e\xe5\x18\x2d\x06\x78\x31\x2b\x86\x4b\x78\x4b\x61\x19\x2b\x4d\x4f\x21\x20\x1a\x3e\xb5\x42\xcd"
+"\x64\x1e\xb8\x71\xaf\x80\xd0\x85\x08\x9c\xd9\x15\x56\x90\x72\x93\x6c\x9e\x08\x61\xa5\x73\xb8\xc0\x1a\xd4\xb0\xd7\xc6\xba\x1e\xba"
+"\xb2\xbc\x9e\xd3\x92\x08\xe8\x16\xc1\x89\xa5\x84\xa9\x78\x08\xb6\x71\xa4\x5c\x56\x1a\x42\x68\x40\x53\x5c\x1e\x59\x61\x58\x77\x41"
+"\x85\x08\x0e\xbe\x84\x0a\xf7\x31\xf8\x08\x16\xe7\x06\xa8\xf7\x1e\xe1\x8d\xd5\x9f\xc6\xaf\x19\xe7\xc6\xaf\xce\xb2\xf7\x52\xb9\xf7"
+"\x6d\x18\x2d\x06\x5d\xfb\x6d\x6d\xfb\x23\x77\x5d\x58\x60\x19\x5c\x66\x50\x77\x48\x88\xf7\x00\xf8\x91\x18\x2f\x06\xfb\x01\xfc\x91"
+"\x05\xfb\x0a\x91\x53\xb5\xde\x1a\xae\x90\xae\x9f\xe6\x1e\xb9\xf7\x6d\x05\x2d\x06\x5d\xfb\x6d\x05\x7a\x3b\x83\x56\x64\x1a\xfb\x0c"
+"\xe9\x3f\xf7\x31\x85\x1e\x0e\xbb\x55\x1d\xd6\xf8\xb3\x23\x1d\xbb\x55\x1d\xc1\xf8\x1f\x15\xf7\x14\xf7\x28\x05\x4b\x06\x23\x59\x0a"
+"\xbb\x55\x1d\xfb\x54\xfc\x5c\x42\x0a\xbb\xbb\xde\x9d\x1f\x9e\xe8\x05\x0e\x84\x71\x0a\x84\x7d\x1d\x57\xf8\x3c\x23\x1d\x84\xf7\xe6"
+"\x75\x15\xdf\xce\x9d\xaf\xc3\x1f\xd2\xb9\xc0\xe2\xd3\x1a\xa6\x83\xa5\x7b\xa4\x1e\x75\xae\x6e\x9f\x5c\x98\xfb\x40\xbc\x18\x3e\xa1"
+"\x73\x9f\xb7\x1a\xaf\x99\xa9\xa9\xa6\x1e\xac\xb0\xbb\x9b\xce\x1b\xc3\xb5\x80\x77\xa1\x1f\x9e\x7a\x98\x6b\x6e\x1a\x82\x8a\x83\x88"
+"\x78\x1e\xe3\x06\x91\xa7\x8d\x97\x9b\x1a\xb6\x76\xb9\x5a\x1d\x78\x65\x6f\x71\x1e\x65\x62\x50\x79\x3b\x1b\xfb\x05\x57\xb5\xe6\x68"
+"\x1d\x4b\xa8\x53\xbe\x69\x1e\xa9\x78\xa7\x82\xd0\x82\x66\x45\x5d\x1d\xbf\xa6\x5d\x0a\x88\x8b\x89\x7e\x1f\x0e\x84\x61\x0a\xfb\x25"
+"\xf8\x3d\x24\x1d\x84\x7d\x1d\xfb\xea\xfc\xd3\x15\x76\x29\x05\xc1\x06\x50\x81\x73\x6e\x64\x1b\x83\x65\x05\xca\xba\xbc\xdd\x50\x1d"
+"\x41\xa8\x16\xf8\xb5\x2f\x0a\xfc\x3e\x06\xf7\xd1\xf7\xb3\xfb\x5b\xf7\xaa\x05\xf8\x2f\x20\x1d\xfc\xa2\x06\x79\x36\xf7\x56\xfb\xa7"
+"\xfb\xd0\xfb\xb3\x05\x0e\x4c\x48\x1d\x0e\x4c\xf8\x5b\xf8\x6a\x15\xb1\xf7\x45\x05\xf7\x82\x20\x1d\xfc\xd1\x26\x0a\xf7\x85\x06\x65"
+"\xfb\x45\x05\xfb\x34\x06\x7d\x48\x05\xf7\x34\x06\x35\xfc\x27\x05\xe9\x06\xe1\xf8\x27\x05\xf7\x34\x06\x99\xce\x05\x0e\x4c\x48\x1d"
+"\xf7\x3d\xf9\xab\x2a\x1d\x4c\xf7\xeb\x16\x97\x2e\x1d\xf7\x82\x20\x1d\xfc\xd0\x06\x79\x39\x05\xf7\x85\x38\x0a\xb4\x06\x59\x2f\x8a"
+"\x1d\xb8\xcb\x57\x0a\x0e\xf3\xf9\x02\xf8\x35\x15\xfb\xb2\x06\x79\x39\x05\xf7\xb3\x06\x53\xf8\x2a\x15\xfb\x29\xfb\x16\x41\xfb\x15"
+"\x3a\x1f\x56\x36\x6d\x20\x27\x1a\xfb\x36\xf7\x02\x20\xf7\x3a\xf7\x23\xf7\x14\xce\xf7\x09\xdb\x1e\xc5\xe1\xad\xf7\x02\xf3\x1a\xf7"
+"\x46\x26\xf1\xfb\x43\x1e\x77\x3a\x15\xd6\xc3\x71\x59\xac\x1f\xa2\x69\x98\x5d\x59\x1a\x35\x73\x34\x5f\x42\x1e\x2b\x51\x2d\x55\xfb"
+"\x02\x1b\xfb\x0c\x3e\xda\xf7\x0e\xdd\xa3\xe5\xb5\xd3\x1f\xef\xc4\xea\xc4\xf7\x01\x1b\x0e\xbb\x57\x1d\xfc\x30\xf7\x5b\x40\x1d\xd7"
+"\xbb\xbe\x9e\xa9\xac\xae\x1d\xbb\x4b\x0a\xfb\xac\xf7\x66\x40\x0a\xbb\x4b\x0a\xfb\x00\xf7\x3a\x15\xfb\xa6\x06\x7c\x46\x05\xf7\xa6"
+"\x06\x0e\xbb\xf8\xcc\xfb\x2a\x15\x84\x78\x73\x88\x6f\x1b\x63\x71\x9d\xa5\xab\xab\xb6\xbe\xae\x1f\xf7\x02\xd2\xb7\xc3\xa2\xeb\xf7"
+"\x01\xf8\x94\x18\x2d\x06\xfb\x01\xfc\x94\x05\x28\x76\x3a\x4f\xfb\x06\x1b\x2a\x4b\xb9\xd0\x99\x3f\x1d\x84\x69\x84\x5d\x7b\x1a\x62"
+"\xa2\x59\xab\x6e\x1e\x65\xb5\xcb\x77\xdc\x1b\xaa\x9d\x8d\x93\xb1\x1f\x4a\x69\x6b\x66\x60\x1a\x59\xba\x6f\xdf\xab\x9d\x8d\x93\xa1"
+"\x1e\x0e\x84\x2f\x1d\x0e\x84\x2f\x1d\xf7\x04\xfa\x26\x65\x1d\xf7\x53\xf8\xdc\xf7\xb2\x85\x0a\xfb\xdf\xf9\x6d\x2b\x1d\xbb\x4b\x0a"
+"\xfb\x7d\xf7\x74\xaf\x1d\x70\x71\x70\x76\x7d\x99\x9f\xa6\xa5\xa5\xa8\x1f\x0e\xbb\x57\x1d\xfb\x2d\xf7\x51\x15\x6e\x7a\x81\x83\x77"
+"\x1b\x80\x70\x91\x94\x72\x50\x0a\xb7\xb6\x31\x1d\xf7\xa2\x32\x0a\xd6\xfa\x3f\x23\x1d\xf7\xa2\x32\x0a\x6c\x64\x1d\xf7\xa2\x32\x0a"
+"\x80\xfa\x26\x2c\x0a\xf7\xa2\x32\x0a\x75\xfa\x38\x70\x1d\x0e\x71\xc9\x16\xf8\x9f\x20\x1d\xfc\x9f\x06\xdf\xf7\x8e\x15\xf8\x60\x20"
+"\x1d\xfc\x5f\x06\x9f\xf7\x7d\x15\xf8\x9c\x20\x1d\xfc\x9c\x06\x0e\x84\x2f\x1d\xe4\x64\x1d\x84\x2f\x1d\xea\xfa\x3f\x2e\x0a\x4c\x33"
+"\x0a\xfb\x3b\xf7\xba\x23\x1d\x4c\x33\x0a\xfb\x31\xf7\xa1\x23\x0a\x4c\x33\x0a\x0e\x7c\x1d\xfb\x3d\xf8\x6b\x15\x87\x79\x8a\x83\x81"
+"\x1a\x50\xbf\x63\xd6\xbc\xbe\x9e\xa9\xab\x1e\xa3\xa0\x96\xa0\x97\x47\x0a\x80\x63\x74\x4f\x1b\x53\x70\xa0\xb5\x8d\x1f\x0e\xf7\x6b"
+"\x7b\x1d\xfb\x71\xf8\x46\x23\x1d\xf7\xda\xca\x1d\x84\xf8\xa1\xf7\x6f\x15\xa7\xfb\x6f\x05\xee\x06\x26\xf9\x6d\x05\xfb\x0c\x06\xfc"
+"\x33\xfd\x6d\x05\xf3\x06\xf7\x0f\xf7\x6f\x05\xf7\xa4\xd9\x15\xfb\x7b\x06\xf7\x52\xf7\xe0\x05\x0e\x74\xf7\x95\xf8\x38\x15\xbc\xf7"
+"\x77\x05\xf8\x13\x2f\x0a\xfc\x72\x26\x1d\xf7\xd3\x6e\x1d\xfb\x80\x39\x15\xf7\x66\x4f\x1d\xfb\x67\x06\x0e\x84\xdc\x16\xf7\xdd\x06"
+"\xd9\xcc\xa3\xbb\xbb\x1f\xb8\xb8\xa7\xcd\xc9\x1a\xcb\x69\xba\x49\xa8\x1e\xb2\x9a\xa0\x98\xa3\xa7\x08\xad\xb1\x9e\xbd\xbc\x1a\xe8"
+"\x46\xc5\xfb\x02\x1e\xfb\xbc\x06\xa6\xfb\xcf\x15\xbd\xf7\x7d\x05\xf7\x47\x06\xe8\xab\x76\x4e\x61\x7a\x64\x6b\x6e\x1f\x6d\x6b\x6a"
+"\x80\x4e\x1b\xfb\x8e\xfb\xe0\x15\xc1\xf7\x8e\x05\xf7\x75\x06\xd5\xad\x6e\x4d\x33\x43\x44\x32\x1f\x0e\xfb\x16\xf7\x83\xf9\x6d\x15"
+"\xfb\x2f\xfd\x6d\x05\xe8\x06\xf7\x1e\xf9\x1b\x05\xf7\xfd\x20\x1d\x0e\xa9\xf8\xda\x16\x68\xa9\x1d\xfc\x42\x06\x3f\xfb\xfd\x6b\xfb"
+"\x3c\x32\x20\xfb\x09\x80\x19\x56\xfb\x8c\x05\xe9\x06\xae\xf7\x3a\x05\xf8\x48\xdd\x15\xfb\xf7\x06\xde\xb8\xcb\xf4\xa7\xf7\x1f\xc6"
+"\xf7\xa8\x18\xf7\x85\x06\x0e\x84\x9c\x1d\x0e\x84\x9c\x1d\xf7\xd1\xf9\xd4\x2c\x0a\xf7\x87\xf8\x2f\x5e\x0a\xf4\x06\xf7\x2c\xfb\xed"
+"\x05\xec\x06\xfb\x3d\xf8\x14\xf7\xa9\xb8\x0a\x2f\xb3\x0a\x4b\xfb\xc2\x05\x25\x06\xfb\x08\xf7\xc2\x05\x27\xe2\x1d\xf7\x02\x06\xf7"
+"\xbd\xf7\xed\x05\xe7\x06\x0e\x4f\xf7\x00\xf7\x74\x15\x86\x71\x89\x7d\x76\x1a\xfb\x06\xde\x43\xf7\x19\xe0\xd1\xa7\xc2\xbf\x1e\xba"
+"\xbc\xa7\xd0\xcc\x1a\xd3\x8d\x1d\x5e\x77\x5b\xbd\x1d\x0e\xb4\x5b\x1d\x0e\xb4\xd6\x16\xe9\x06\x9d\xde\xf8\x67\xf8\x42\xfb\x01\xfc"
+"\x95\x05\xe9\xb8\x1d\xf7\x3f\xf7\x5b\x87\x0a\x63\x74\x4e\x56\x0a\x36\xcd\x16\x9e\x1d\x2d\x06\x0e\x97\xf8\xa6\x16\xe9\x25\x0a\xfc"
+"\x7b\x83\x0a\xf7\xc0\x06\x0e\xf7\x33\xf8\x66\x16\xf7\xe3\xf8\xf7\xfb\x16\xfc\xf7\x05\xe3\x25\x0a\xfb\x15\x06\xfb\xef\xfd\x0f\x3a"
+"\xf9\x0f\x05\xfb\x15\x26\x1d\xe3\x06\xf7\x16\xf8\xf7\xd8\xfc\xf7\x05\x0e\xbb\xf8\xff\xf7\xe0\x15\x44\xfb\xe0\x05\xe8\x25\x0a\x2e"
+"\x06\x48\xfb\xcf\x05\xfc\x0b\x06\xce\xf7\xcf\x05\x2e\x22\x0a\xd2\xf7\xe0\x05\x0e\xf3\x95\x0a\xfb\x47\xae\x0a\xe0\xe4\xc0\xaf\x0a"
+"\x1e\x81\x39\x15\xf7\x11\xd6\x3b\xfb\x1a\x30\x6c\x2c\x55\x41\x1f\x3a\x4f\x33\x5e\x2a\x1b\xfb\x0e\x40\xdc\xf7\x19\xe6\xaa\xeb\xc1"
+"\xd4\x1f\xdb\xc6\xe4\xb9\xe9\x1b\x0e\xbe\x84\x0a\x84\xf7\x90\xf7\xc9\x15\xf7\x77\x06\xf7\x24\xf7\x01\xf7\x02\xf7\x24\xf4\x47\xc8"
+"\xfb\x08\x1f\xfb\xc1\x22\x0a\xde\xf8\x1b\x15\xc2\xf7\x94\x05\xf7\x55\x06\xd8\xb4\x69\x4c\x67\x7d\x66\x74\x6e\x1f\x64\x6a\x60\x79"
+"\x4f\x1b\x0e\xbb\xf9\x17\xf7\x95\x15\xfb\x0a\x6f\x27\x3b\xfb\x0b\x1b\xfb\x0e\x4b\xd1\xf7\x19\xf5\xaf\xf4\xc9\xd7\x1f\xd1\xc4\xdc"
+"\xb3\xe1\x1b\xe8\xc9\x5c\x43\x7f\x8a\x81\x87\x75\x1f\xe9\x06\x8f\x9d\x8c\x94\x9a\x1a\xf7\x0c\x27\xde\xfb\x23\xfb\x06\x24\x5d\x36"
+"\x40\x1e\x3a\x31\x5a\xfb\x17\xfb\x12\x1a\xfb\x48\xee\x21\xf7\x3b\xf7\x47\xf7\x26\xf7\x07\xf7\x39\xab\x1e\x0e\x4c\xf8\x7e\xf9\x1b"
+"\x15\xf7\x83\x20\x1d\xfc\xd0\x26\x0a\xf7\x84\x38\x0a\xe8\x06\x0e\x68\x99\x1d\x0e\xf7\x0d\xf7\xf0\x81\x15\xe9\x06\x9e\xe6\xe6\x8d"
+"\xd0\xa0\xcd\xb9\x19\xe3\xc8\xbf\xf2\xf7\x03\x1a\xf7\x19\x35\xda\xfb\x33\x96\x1e\x9e\xe6\x05\x2d\x06\x78\x30\x36\x88\x4b\x78\x4d"
+"\x63\x19\x2c\x4d\x50\x22\xfb\x00\x1a\xfb\x1a\xe7\x34\xf7\x2c\x82\x1e\x9c\xdc\x15\xfb\x02\x93\x4c\xc1\xe4\x1a\xd3\xae\xd6\xc2\xb7"
+"\x1e\xbb\xb2\xbe\x9e\xd2\x90\x08\xe9\x16\xbd\x88\xa3\x85\xaa\x79\x08\xb6\x73\xa5\x5c\x57\x1a\xfb\x1e\xfb\x00\x21\xfb\x2d\x80\x1e"
+"\x0e\x84\xbe\x0a\xfb\x08\x06\xfb\x8d\xfb\xb2\xfb\x12\xf7\xb2\x05\xfb\x00\x06\xf7\x3b\xfb\xf7\xfb\xe6\xfc\x0a\x05\xf7\x0a\xba\x0a"
+"\xf7\x02\x06\x0e\xc0\xd7\x16\xf8\x9f\x06\x68\x32\x1d\xc0\xf7\x8c\x05\x53\x06\xf7\x1e\xf9\x1b\xba\x1d\x8a\xf8\x92\x16\xe9\x95\x1d"
+"\xb4\xbc\x81\xda\x1b\xd9\xbc\x92\x9f\xd1\x1f\x0e\xf7\x8a\xcc\x16\xf9\xa6\x25\x0a\x2d\x38\x0a\xfb\x8d\xb2\x1d\xf7\x8d\xc7\x16\xf9"
+"\x84\x06\x68\x32\x1d\xbf\xf7\x8c\x05\x54\x2e\x1d\x2d\x38\x0a\xfb\x92\xb2\x1d\xf7\x17\xf8\x46\xf8\x38\x15\xcc\xf7\xc9\x05\xfc\x04"
+"\x26\x0a\xf7\xa6\x06\xfb\x1d\xfd\x1b\x05\xf7\xbb\x6e\x1d\xfb\x69\x39\x15\xf7\x4f\x4f\x1d\xfb\x4f\x06\x0e\xf7\x68\xf7\xa0\x94\x1d"
+"\xf8\x92\x39\x15\xe9\x25\x0a\x2d\x06\x0e\x74\xf7\x96\x94\x1d\x0e\x9f\xf8\x02\xf8\x2a\x15\x79\x38\x05\xf7\xb0\x06\xfb\x3a\x5d\x21"
+"\x29\xfb\x1a\x1b\x49\x4f\xa6\xb8\x69\x1f\x71\xac\x81\xab\x86\xc8\x2f\x7b\x18\x95\x3e\x98\x65\xa9\x60\x08\x47\xbb\xdf\x65\xee\x1b"
+"\xf6\xec\xb5\xd8\xd1\x1f\xdd\xe4\xbd\xf7\x1c\xf7\x17\x1a\xe0\x73\xd5\x5f\xbe\x1e\xc0\x5f\x4b\xa5\x38\x1b\xfb\x2e\xfb\x15\x3c\xfb"
+"\x23\x3a\x1f\xe7\x78\x05\xf2\xcc\xe7\xc3\xf6\x1b\xf7\x01\xcd\x3c\xfb\x17\x83\x8a\x7b\x8a\x78\x1f\x0e\xf7\xf0\xf7\xed\xf7\xe0\x15"
+"\x87\x73\x8a\x79\x76\x1a\xfb\x4b\xf7\x00\xfb\x01\xf7\x48\xf7\x04\xef\xb5\xda\xd8\x1e\xe1\xe4\xbf\xaf\x0a\xfb\x4f\xfb\x30\xfb\x12"
+"\xfb\x5d\x4a\x1e\xfb\x11\x06\xce\xf7\xcf\x05\x2e\x22\x0a\xd2\xf7\xe0\x05\xf8\xb0\xf7\xdb\x15\xf7\x14\xd7\x3b\xfb\x1a\x30\x6b\x2b"
+"\x55\x42\x1f\x3a\x4e\x32\x5e\x28\x1b\xfb\x10\x3e\xdc\xf7\x18\xe7\xab\xea\xc2\xd5\x1f\xdb\xc6\xe5\xb9\xeb\x1b\x0e\x93\xf8\xe0\xf7"
+"\xce\x15\x48\xfb\xce\x05\xe8\x25\x0a\xfb\xe1\x06\x38\x52\x7b\x66\x5e\x1f\x56\x61\x6b\x46\x47\x1a\x4e\xa3\x62\xc5\x68\x1e\x37\x73"
+"\x6c\x61\x71\xfb\x0e\x73\xfb\x04\x7e\x6e\x66\x6c\x08\xf7\x00\x06\xa3\xaa\x9d\xbb\x9a\xd9\xa0\xf7\x07\xb1\xb3\xe6\x8d\x08\xf7\x95"
+"\xdd\x15\xfb\x74\x06\x62\x72\x90\x97\x79\x1f\x74\x99\x7d\xa8\xad\x1a\xb7\x9e\xb9\xaa\xa8\x1e\xa6\xa8\xae\x96\xc7\x1b\xf7\x75\x06"
+"\x0e\xfb\x4a\xf8\xf3\x22\x1d\xfc\x1e\x22\x0a\xf7\x1e\xf9\x1b\x05\xf7\xfc\x06\x9c\xdd\xf7\x48\xf7\x28\x05\xfb\x04\x06\x0e\xf7\x3d"
+"\xf7\x8b\x16\xe9\x06\xc6\xf7\xaa\x93\xb3\x98\xa1\xa9\xa2\x19\xac\xb5\xba\x98\xdc\x1b\xdb\xad\x77\x5c\x85\x8a\x81\x89\x82\x1f\x6a"
+"\xfb\x30\x05\x58\x82\x6d\x6f\x5e\x1b\xfb\x1b\x06\x79\x39\x05\xf7\x27\x06\xf1\x8a\xd0\xc9\x99\xf7\x00\xac\xf7\x2c\x18\x8e\x99\x8c"
+"\x96\x97\x1a\xad\x7b\xac\x6f\xa5\x1e\xa6\x6e\x5a\x98\x44\x1b\x24\x5e\x7b\x4d\x4e\x1f\xbc\xf7\x7e\x05\xf7\x5e\x20\x1d\xfc\x84\x26"
+"\x0a\xf7\x5c\x06\x0e\xfb\x16\xf7\x86\x22\x1d\xfb\x2f\xfd\x6d\x05\xe8\x2e\x1d\xf7\xfd\x20\x1d\xfb\x57\xa2\x0a\xad\xf7\x72\xf8\x2a"
+"\x15\xf7\x37\xbe\xf1\xe5\xf7\x18\x1b\xcd\xc7\x70\x5e\xad\x1f\x9d\x74\x95\x73\x93\x64\xe8\x9c\x18\x7c\xca\x7c\xae\x6d\xae\x08\xc4"
+"\x5b\x3a\xac\x2d\x1b\x22\x2f\x63\x3e\x43\x1f\x36\x30\x58\xfb\x1b\xfb\x17\x1a\x36\xa1\x44\xb7\x57\x1e\x54\xb9\xcc\x70\xe3\x1b\xf3"
+"\xed\xb1\xce\xd3\x1f\xb6\xb4\xa7\xb3\xb0\xd8\x2e\x9c\x18\x72\x54\x77\x6e\x67\x6a\x08\x57\x52\x41\x6e\x42\x1b\xfb\x03\x49\xda\xf7"
+"\x1b\x9c\x8c\x97\x8d\xa0\x1f\xf7\xb2\x06\x9d\xde\x05\x0e\x84\xf9\x58\xf8\x97\x15\x8f\x9f\x8c\x96\x9a\x1a\xf7\x03\x31\xd0\xfb\x25"
+"\x34\x43\x74\x5d\x54\x1e\x56\x60\x6b\x4a\x4d\x1a\x44\xb9\x56\xda\x75\x1e\xf7\x30\x60\x05\xdc\x74\xa9\x71\x5c\x1a\x69\x77\x64\x6a"
+"\x6c\x1e\x67\x64\x53\x79\x43\x1b\x21\x50\xba\xde\x96\x8c\x95\x8f\xa1\x1f\x2d\x06\x87\x73\x8a\x80\x79\x1a\xfb\x15\xe8\x42\xf7\x3a"
+"\xe8\xd5\xa2\xb9\xc4\x1e\xc4\xba\xae\xd2\xd3\x1a\xd5\x61\xba\x30\xa5\x1e\xfb\x33\xb8\x5c\x99\x79\x93\x7c\x9b\x19\x7f\x97\x83\xa0"
+"\x9e\x1a\xb0\xa2\xb4\xb0\xa5\x1e\xa4\xae\xb7\x97\xc0\x1b\xeb\xc3\x64\x47\x80\x8a\x82\x87\x7a\x1f\x0e\xfc\x20\xf7\xe9\x36\x0a\x0e"
+"\xfc\x20\xf7\xe9\x36\x0a\xf7\x0c\xfa\x26\x2c\x0a\xfb\x42\xf8\x7a\x22\x1d\xfb\x01\xfc\x95\x7f\x52\x7d\x6a\x74\x71\x19\x6f\x73\x66"
+"\x7a\x65\x1b\x55\x6a\xa8\xbb\x9a\x8e\xa0\x8f\x9e\x1f\x95\xba\x05\x2d\x06\x81\x5c\x05\x86\x77\x89\x77\x7a\x1a\x30\xd3\x4d\xf3\xf7"
+"\x12\xdf\xd3\xf7\x19\xa8\x1e\xf7\x08\xf8\xb7\x05\x0e\xf8\x1c\xf8\x72\x16\xf7\xd4\xc7\x1d\xfb\x0c\x1e\xfb\x6f\x06\xcc\xf7\xc9\x05"
+"\xfc\x34\x83\x0a\xf7\x79\x06\xa7\xfb\xc9\x15\xf7\x67\x06\xdc\xb3\x6c\x4b\x31\x3e\x44\x28\x1f\xfb\x66\x06\x0e\xf7\xc8\xf8\xab\xf7"
+"\xe6\x15\x43\xfb\xe6\x05\xf7\x92\xc7\x1d\xfb\x0d\x1e\xfb\x2d\x06\xcd\xf7\xc9\x05\x2d\x06\x49\xfb\xc9\x05\xfb\xc2\x06\xcd\xf7\xc9"
+"\x05\x2e\x22\x0a\xd3\xf7\xe6\x05\xf8\x1f\x16\xf7\x24\x4f\x1d\xfb\x24\x06\x0e\xf7\x3e\xf7\x8b\x16\xe9\x06\xc6\xf7\xaa\x05\xe2\x9e"
+"\xd3\xb8\xf7\x0f\x1b\xda\xad\x76\x5c\x87\x89\x80\x89\x81\x1f\x48\xfb\xd1\x05\xe9\x06\xcf\xf7\xd5\x05\x8e\x9a\x8d\x98\x94\x1a\xaf"
+"\x7c\xab\x6e\xa5\x1e\xa5\x6e\x59\x99\x4a\x1b\x27\x5f\x7a\x4d\x4d\x1f\xbd\xf7\x7e\x05\xf7\x3d\x20\x1d\xfc\x61\x26\x0a\xf7\x5a\x06"
+"\x0e\x36\xcd\x5e\x0a\xd9\x06\xf7\x2b\xfb\xed\x05\xee\x06\xfb\x3e\xf8\x14\xf7\xaa\xb8\x0a\x49\xb3\x0a\xf7\xbb\xa2\x0a\x68\x99\x1d"
+"\xf7\x5f\xf9\xe2\x3c\x0a\xf8\xb7\xc0\x15\x86\x7c\x85\x8a\x83\x1b\x7a\x80\x95\x9b\x90\x8c\x94\x8d\x93\x1f\xc9\xf7\xb6\x05\x8e\x9b"
+"\x8d\x9b\x96\x1a\xcf\x46\xb6\xfb\x01\x3e\x4e\x77\x64\x62\x1e\x6c\x6f\x7c\x6e\x7d\x53\x08\xe2\x06\xcd\x9e\xb7\xa8\xdc\x1b\xca\xb2"
+"\x76\x6a\x89\x1f\x84\x89\x83\x89\x81\x1e\x88\x7b\x83\x69\x74\x7e\x46\x82\x19\xfb\x27\x79\x74\x85\x5f\x70\x08\x57\x6b\x6a\x4f\x4c"
+"\x1a\x3c\xc4\x5a\xe7\xcf\xc5\xa2\xbe\xc4\x1e\x8a\x86\x8b\x86\x87\x1a\x66\xaa\x74\xbe\x9c\x97\x8d\x90\xa1\x1e\xfb\x00\xf7\x48\x15"
+"\x85\x71\x80\x7a\x70\x76\x08\x6a\x61\x5b\x7a\x5a\x1b\x54\x6d\xa2\xb5\xa7\x98\xa6\xa1\x9f\x1f\xa1\x9f\xad\x96\xc4\x93\xe7\x98\x9d"
+"\x8f\xa9\x97\x08\x0e\xfb\x03\xf8\x94\xf9\xa4\x15\x82\x63\x80\x60\x6e\x79\x38\x7c\x19\x30\x79\x55\x64\x5a\x37\x08\x56\x30\x5f\xfb"
+"\x33\x23\x1a\xfb\x0c\xd6\x3f\xf7\x0b\xe9\xda\xb3\xd7\xc1\x1e\xb9\xc9\xa8\xee\xe6\x1a\xf7\x06\x3e\xdc\xfb\x01\x52\x54\x75\x63\x61"
+"\x1e\xa2\xca\xba\xb2\xd2\x97\xf7\x1d\x9c\xb8\xb3\xa9\xf7\x1b\x08\xfb\x6c\xfb\xd6\xac\x1d\xcf\xaf\xc6\xb1\xcd\x1b\x0e\xfb\x2c\xc0"
+"\x16\xf7\xbb\x06\xc2\xaf\x97\xa8\xad\x1f\xb1\xac\xa3\xc1\xc0\x1a\xb7\x7a\xa9\x62\xa5\x1e\xc6\xad\xa5\xb2\xc1\x1a\xce\x55\xbc\x41"
+"\x1e\xfb\xa2\x06\x80\xfc\x56\x15\xae\xf7\x3a\x05\xf7\x4e\x06\xb9\xa5\x74\x62\x50\x5d\x60\x4e\x1f\xfb\x1b\xf7\x84\x15\xa8\xf7\x1c"
+"\x05\xf7\x4e\x06\xae\x9e\x79\x6b\x58\x66\x68\x53\x1f\x0e\xfb\x49\xf7\x0f\xc8\x1d\x0e\xfb\x0d\x77\x2a\x15\xe2\x06\x9f\xec\x05\xf7"
+"\xf9\x06\x77\x2a\x05\xe1\x06\xaf\xf7\x3f\x05\x60\x25\x1d\x05\xfb\xe2\x06\x61\xfb\x8a\x2f\xfb\x3b\xfb\x07\x66\x08\xf8\x27\x16\xfb"
+"\xa9\x06\xdc\xc8\xcc\xf7\x0c\xaf\xf7\x34\x93\xae\x18\xf7\x3b\x06\x0e\x89\x1d\x0e\x89\x1d\x2f\xf8\x31\x2c\x0a\x99\xf7\xc2\x16\x29"
+"\x0a\xd6\x06\xea\xfb\x8d\x05\xe8\x06\x21\xf7\xb2\xf7\x42\x71\x1d\x4a\x41\x1d\x61\xfb\x5d\x05\x3f\x06\x4d\xf7\x5d\x05\x2e\x06\xd5"
+"\xfb\x82\xfb\x78\xfb\xb2\x05\xf2\x06\xf7\x5d\xf7\x8d\x05\xcc\x06\x0e\xfb\x65\xdb\xf7\x38\x15\x86\x75\x05\x89\x81\x8a\x82\x7f\x1a"
+"\x39\xc9\x57\xed\xf7\x0f\xea\xe0\xf7\x02\xb9\x77\xab\x60\xa2\x1e\xd1\xab\xab\xb6\xc8\x1a\xd8\x4d\xc0\x32\xfb\x01\x3e\x46\xfb\x0a"
+"\x74\x1e\xe4\x06\xd4\x98\xc9\x1d\x6c\x81\x76\x1b\x68\x2a\x0a\xae\x06\xc1\xab\x71\x5f\x4e\x57\x5c\x47\x57\x6e\xa2\xb4\x98\x8b\x8d"
+"\x8d\x94\x1f\x90\xa1\x05\x0e\x3e\x0a\x0e\x3e\x0a\xe6\xf7\x61\x40\x1d\xd7\xbb\xbf\x9e\xa9\xab\xae\x1d\xfb\x5e\xc1\x16\x29\x0a\xca"
+"\xb7\x1d\x54\x41\x1d\x0e\xfb\x02\xf8\x1b\x16\xdf\x06\x38\x1d\xfb\xee\x8b\x0a\xf7\x47\x06\x0e\x97\xc0\x16\xdf\x25\x1d\xc7\xfc\x56"
+"\x05\xe1\x06\xf7\x8d\xf8\x56\x2b\xfc\x56\x05\x76\x1d\xfb\x14\x06\xfb\x8a\xfc\x4b\x4d\xf8\x4b\x05\xfb\x14\x06\x0e\xfb\x10\xa8\x0a"
+"\xdf\x06\xf7\x03\xf8\xa0\x9f\x0a\x9a\x1d\x84\x3e\xac\x1d\xce\xaf\xc6\xb2\xcd\x1b\x0e\xfb\x10\xd6\x16\xdf\x25\x1d\x05\xf7\x7c\x06"
+"\x34\x1d\x76\x1d\xfc\x25\x06\x0e\x97\xfb\x6e\x15\xdd\x06\xc5\xf7\xa5\x05\x55\xaf\xb9\x73\xd1\x1b\xf7\x3a\xf7\x0e\xf7\x2e\xf7\x65"
+"\xf7\x0d\x44\xd9\xfb\x01\x45\x53\x6f\x4e\x59\x1f\x9b\xd5\x05\x39\x06\xf7\x6d\x4c\x15\xd2\xb8\x57\x39\xfb\x28\x2f\xfb\x10\xfb\x03"
+"\x47\x60\xbe\xdb\xf7\x2a\xe5\xf7\x11\xf7\x00\x1f\x0e\xfb\x42\xf8\xb7\xf7\xf0\x15\x8c\xa6\x8b\x8d\x90\x1a\xeb\x47\xc8\xfb\x00\x37"
+"\x40\x65\x45\x55\x1e\x58\x48\x6b\x2b\x31\x1a\xfb\x11\xd2\x3f\xf7\x0a\xf7\x11\xe3\xd2\xf7\x18\xb0\x1e\x32\x06\x37\x6c\x58\x61\x46"
+"\x1b\x47\x60\xba\xd7\xce\xa2\xdc\xad\xbe\x1f\xc4\xb0\xbc\xa8\xc7\x1b\xc5\xae\x6d\x57\x84\x8a\x7e\x8a\x7f\x1f\x0e\xf7\x33\xf8\x0b"
+"\x16\xdf\x06\xea\xf8\x56\x05\xf7\x73\x2d\x1d\xfc\xa6\x2a\x0a\xf7\x73\x06\x0e\xfb\x42\x91\x1d\x0e\xf7\x35\xf7\xdd\xfb\x6e\x15\xdf"
+"\x06\xb5\xf7\x58\xe4\x8f\xc6\x9d\xc5\xb5\x19\xe2\xca\xc2\xf7\x01\xf7\x03\x1a\xf7\x12\x3a\xd7\xfb\x28\x97\x1e\xa5\xf7\x0f\x21\x1d"
+"\x71\xfb\x0f\x33\x87\x50\x78\x52\x61\x19\x36\x4c\x55\xfb\x01\xfb\x00\x1a\xfb\x14\xd9\x3f\xf7\x26\x7f\x1e\x9b\xd6\x15\x26\x93\x58"
+"\xbc\xe3\x1a\xd6\xac\xd9\xbf\xbc\x1e\xb5\xb2\xb8\x9e\xce\x91\x08\xdf\x16\xf4\x82\xbf\x5a\x33\x1a\x40\x6a\x3d\x55\x5b\x1e\x60\x64"
+"\x5d\x78\x47\x85\x08\x0e\xfb\x42\xf7\xf6\xf7\xa1\x15\xf7\x7c\xf7\x93\x05\x26\x06\xfb\x3d\x89\x0a\xe5\x06\x0e\x25\xe2\x16\xf7\xee"
+"\x06\x69\xfb\x35\x05\xe2\x06\xbc\xf7\x7f\x05\x5d\x25\x1d\xc2\x1d\xfb\x30\xf7\xf8\x16\xdf\x96\x0a\x05\x7d\x5d\x63\x85\x63\x1b\x56"
+"\x6e\x9f\xb0\x94\x8c\x96\x8e\x97\x1f\xb3\xf7\x4f\x21\x1d\x5d\xfb\x69\x05\x89\x80\x8a\x81\x80\x1a\x4b\xc9\x5f\xe6\xba\xb0\x93\xa0"
+"\xb9\x1e\x0e\xf7\x30\xd9\x16\xf9\x35\x06\xf7\x04\xf8\xa0\xa7\x1d\xf7\x45\xdf\x16\xf9\x0c\x06\x69\xfb\x32\x20\x0a\xbd\xf7\x7c\x05"
+"\x60\x25\x1d\xa7\x1d\x56\xf7\x4d\x16\xf7\x7e\xbf\x1d\xfb\x29\x06\xb7\xf7\x66\x05\xfb\xb9\x2a\x0a\xf7\x66\x06\x8f\xfc\x0c\x15\xae"
+"\xf7\x3a\x05\xf7\x27\xda\x1d\xc9\xe4\x7d\x0a\xb9\xa2\x76\x62\x4f\x5f\x5f\x4e\x1f\xf7\x67\x41\x15\x73\x1d\x0e\xfb\x28\xd2\x7d\x0a"
+"\xb8\xa2\x76\x62\x4f\x60\x5f\x4e\x1f\x0e\xfb\x4a\xf7\x45\xf7\xf2\x15\xd1\xae\xc8\xb5\xcc\x1b\xc7\xb2\x5d\x44\x82\x8a\x7d\x8a\x7d"
+"\x1f\xfb\x3a\x2a\x0a\xf7\x3d\x06\xfb\x02\x73\x48\x45\x39\x1b\x45\x61\xbc\xdc\x1f\x98\x07\x33\x76\x05\xfb\x12\xd2\x42\xf7\x0d\xdf"
+"\xd1\xaf\xd1\xbd\x1e\xbd\xd0\xa8\xe9\xe4\x1a\xf7\x14\x48\xd7\xfb\x05\xfb\x00\x2f\x4c\xfb\x00\x57\x1e\x0e\xd9\xf7\x37\x4e\x1d\xbe"
+"\xf7\x83\x05\xe1\x06\x87\x70\x8a\x79\x76\x1a\xfb\x0c\xd7\x3f\xf7\x0c\xe3\xdb\xb3\xd3\xc0\x1e\xba\xc9\xaa\xf0\xe8\x1a\xf7\x0a\x3e"
+"\xd7\xfb\x0b\xfb\x18\x25\x38\xfb\x23\x60\x1e\x34\x06\xb7\xf7\x67\x05\xf7\xcd\x4d\xd3\x1d\x52\xd6\x1d\xce\xaf\xc5\xb2\xcd\x1b\x0e"
+"\xfb\x20\xf8\x0d\x16\x76\x1d\xfb\x8e\x06\x53\x62\x81\x75\x69\x1f\x5e\x6d\x6e\x55\x52\x1a\x5a\xa4\x64\xbe\x6d\x1e\x5a\x80\x6e\x6b"
+"\x7e\x4f\x7f\x53\x18\x81\x5d\x84\x7c\x78\x7e\x08\xe4\x06\x9b\x99\x93\x9b\x94\xb7\x96\xbd\x18\x96\xc3\xb0\xab\xc0\x89\x08\xf7\x19"
+"\x06\x9b\xd5\x15\xfb\x3a\x06\x60\x74\xa1\xb4\xc5\xb7\xb8\xc4\x1f\xf7\x3a\x06\x0e\xfb\xe3\xf8\x32\x21\x0a\xfb\x95\x06\xfb\x03\xfc"
+"\xa0\x05\xdf\x25\x1d\x05\xf7\x7c\x06\x9b\xd5\xf7\x48\xf7\x28\x05\xfb\x04\x06\x0e\xd7\xa7\x0a\x6e\x5e\x80\x8b\x86\x89\x84\x1f\x4a"
+"\xfb\xc7\x7e\x52\x51\x58\x59\x8c\x19\xfb\x15\x06\x7a\x3e\x05\xf7\x16\x06\xf7\x04\x8c\xe1\xd3\xa2\xf7\x03\xcc\xf7\xc7\x18\x8f\x9b"
+"\x8c\x99\x9b\x1a\xd2\x50\xc4\x42\x4a\x54\x6f\x46\x45\x1e\xaa\xf7\x2a\x05\xf7\x02\x2d\x1d\xfb\x02\x06\x9a\xd1\x21\x1d\x7c\x45\x05"
+"\xfb\x01\x2a\x0a\xf7\x01\x06\x0e\xfb\xbc\xd1\xc8\x1d\xf7\x6e\xf7\x6c\x15\xfb\x1b\xfb\x28\x05\xcf\x45\x0a\xfb\x46\xf8\xbf\xf8\x04"
+"\x15\x86\xaf\x85\xa1\x7f\xa2\x08\xc4\x6d\x4d\xac\x3e\x1b\x35\x44\x65\x40\x57\x1f\x5d\x49\x71\x35\x34\x1a\xfb\x1a\xcb\x3f\xf7\x04"
+"\xf7\x0e\xe7\xd0\xf7\x15\xbe\x1e\x35\xa1\x05\x2f\x66\x4f\x58\x42\x1b\x4e\x66\xbd\xde\x9a\x8c\x96\x8d\xa0\x1f\xf7\x3c\x06\x9a\xd5"
+"\x05\xfb\x38\x06\xf0\xab\xc2\xc0\xd4\x1b\xcd\xb6\x61\x45\x90\x1f\x0e\xfb\x42\xf8\xa0\xf8\x0e\x15\x8e\x9a\x8c\x93\x97\x1a\xd9\x4b"
+"\xbb\x25\xfb\x1a\x2b\x3f\x21\x4a\xb0\x68\xe9\x73\x1e\xdb\x77\x05\xbb\x7e\x9e\x79\x6b\x1a\x53\x4e\x63\x35\x43\x6b\xa1\xbb\x96\x8c"
+"\x91\x8d\x9a\x1e\x35\x06\x87\x76\x8a\x80\x7d\x1a\x36\xce\x5b\xf7\x0a\xd8\xc8\x9e\xb2\xb5\x1e\xb3\xae\xa2\xbd\xba\x1a\xc8\x65\xb0"
+"\x3a\xa0\x1e\x3f\x9d\x05\x4f\x9a\x74\x9d\xaa\x1a\xc2\xc1\xb2\xd7\xc1\xae\x73\x67\x85\x8a\x82\x8a\x82\x1e\x0e\xfc\x58\xf7\x9c\xf8"
+"\xa0\x9e\x0a\x22\x20\x0a\x0e\xfc\x58\xf7\x9f\xf8\xa0\xbb\x0a\xd5\x53\x0a\xfc\x58\xf7\x48\x21\x0a\xfb\x10\xfc\xdb\x83\x66\x86\x7f"
+"\x82\x80\x19\x7c\x7e\x75\x84\x6f\x1b\x86\x84\x8b\x8c\x82\x1f\x7b\x3d\xf7\x0c\x88\xc1\xa9\xa0\xdd\x19\xf7\x1b\xf9\x0d\x05\xb6\xf7"
+"\x61\x15\x37\x06\x75\x22\x20\x0a\x0e\xf7\x80\xf8\x3c\x16\xf7\x9f\x9c\x0a\xfb\x4b\x06\xb8\xf7\x66\x05\xfc\x0d\x8b\x0a\xf7\x65\x06"
+"\x8f\xfc\x0c\x15\xaf\xf7\x3a\x05\xf7\x48\x06\xb8\xa2\x76\x62\x4f\x60\x5f\x4e\x1f\x0e\xf7\x2e\xc7\x16\xdf\x06\xbe\xf7\x83\x05\xf7"
+"\x84\x06\x59\xfb\x83\x05\xf7\x8e\xbf\x1d\xfb\x3a\x06\xb8\xf7\x66\xa3\x0a\xf7\xcd\xfc\x56\x15\xaf\xf7\x3a\x05\xf7\x37\xda\x1d\xd7"
+"\xa7\x0a\x6d\x5f\x7f\x8b\x88\x89\x83\x1f\x3f\xfb\xfa\x20\x0a\xd7\xf7\xfa\x05\x8f\x9b\x8c\x99\x9b\x1a\xd2\x51\xc4\x41\x4a\x54\x6f"
+"\x46\x45\x1e\xaa\xf7\x2a\x05\xf7\x03\x2d\x1d\xfb\x03\x06\x9a\xd1\x21\x1d\x7c\x45\x05\xfb\x00\x06\x7b\x41\x05\xf7\x00\x06\x0e\xfb"
+"\x5e\xc1\x16\x29\x0a\xcf\xb7\x1d\x4f\x41\x1d\xf7\x8e\xf7\x6c\x15\xfb\x13\xfb\x28\x05\xc7\x45\x0a\xfb\x42\x91\x1d\xfb\xe6\xf7\x61"
+"\x15\x88\x78\x8a\x82\x7f\x1a\x51\xbc\x66\xd7\xc2\xb7\x9b\xab\xae\x1e\xa3\xa2\x97\xa0\x95\xb6\x08\x51\x06\x60\x7c\x6b\x78\x50\x1b"
+"\x59\x6e\x9d\xa9\x8e\x8b\x91\x8c\x90\x1f\x0e\xbd\xdc\x16\xf7\x7d\x06\x67\x32\x1d\xaf\xf7\x3a\x05\xf7\x7f\x06\xf7\x2f\xf9\x6d\xba"
+"\x1d\xe0\x16\xf7\x2d\x06\x68\xfb\x35\x20\x0a\xae\xf7\x35\x05\xf7\x2a\x06\xf7\x03\xf8\xa0\xc2\x1d\xf3\xf7\xae\x15\x7e\x5e\x86\x6f"
+"\x68\x1a\xfb\x0d\xd6\x3f\xf7\x0c\xe0\xd8\xb1\xcf\xc3\x1e\xbe\xcb\xac\xef\xe9\x1a\xf7\x0f\x3f\xd6\xfb\x10\xfb\x0d\x31\x4b\xfb\x0a"
+"\x5e\x1e\xe4\x06\xd0\xb0\xc1\xaf\xcd\x1b\xd4\xbd\x59\x42\x79\x89\x7e\x86\x71\x1f\x7c\x47\x15\x29\x6f\x44\x4d\x36\x1b\x45\x5e\xba"
+"\xd4\x98\x8c\x94\x8f\x9d\x1f\x0e\xf7\x6b\xf8\x82\xf8\xe0\x15\x8c\x99\x8c\x93\x93\x1a\xd0\x5e\xb3\x3e\x4e\x56\x70\x57\x62\x1e\x64"
+"\x59\x72\x43\x4a\x1a\x32\xbb\x59\xdf\xe5\xd0\xc2\xe8\xa6\x1e\x43\x06\x54\x77\x69\x6f\x5e\x1b\x5f\x6f\xaa\xbd\xb7\x9a\xc2\xa0\xae"
+"\x1f\xb2\xa2\xac\xa0\xb0\x1b\xb2\xa4\x73\x65\x89\x8b\x86\x8a\x86\x1f\xf7\xd3\xfb\x5a\x15\x49\x52\x6d\x55\x62\x1f\x69\x5c\x74\x40"
+"\x49\x1a\x37\xbe\x59\xe0\xcd\xc4\xa8\xc3\xb3\x1e\xaf\xba\xa1\xd5\xcf\x1a\xdd\x58\xbd\x36\x1e\x7e\x4a\x15\xb8\xa7\x6a\x56\x65\x80"
+"\x5c\x79\x6a\x1f\x5d\x73\x66\x71\x61\x1b\x5e\x6f\xac\xc0\xf4\xc6\xe0\xd4\x1f\x9b\xf8\x14\x15\xfc\xab\xfd\x59\x05\xcd\x06\xf8\xab"
+"\xf9\x59\x05\x0e\xfb\xf3\xf7\x46\xf7\xb8\x15\xca\xcd\xb2\xba\xa5\xb8\x08\xb4\xd0\xa4\xd8\xc4\x1a\xbf\x71\xad\x64\x35\x49\xfb\x22"
+"\xfb\xd2\x4f\x1e\x6f\x6c\x77\x77\x7e\x80\x08\x7a\x7b\x85\x84\x84\x1a\x84\x92\x82\x91\x92\xa9\xa3\xa5\xa5\x1e\x7f\x2f\x89\x71\x6c"
+"\x1a\x53\xa6\x69\xb9\xae\xa8\xa0\xb7\xa4\x1e\x98\xa0\x92\x9f\x97\x1a\x92\x85\x91\x84\x83\x85\x86\x7d\x84\x1e\x5e\x76\x7c\x7b\x77"
+"\x1b\x7d\x84\x94\x9e\xa5\x9e\xf7\x11\x9a\xdb\x1f\x95\xc2\x15\xf7\x9f\xb8\xa7\xe0\xb8\x1b\x9c\x96\x7a\x71\x6d\x81\x5a\x7c\x62\x1f"
+"\x72\x48\x68\x54\x4e\x48\x08\x0e\xf8\x2d\xf9\x5d\x22\x1d\x41\x06\xfb\x14\xfc\xf0\xfb\x57\xf8\xf0\x05\x3a\x26\x1d\xd5\x06\xf7\x13"
+"\xf8\xeb\xf7\x54\xfc\xeb\x05\xe0\x06\xf8\x3f\xf9\x79\x15\x41\x47\x66\x46\x57\x1f\x59\x49\x6c\x2c\x36\x1a\xfb\x10\xce\x3d\xf4\xd4"
+"\xcc\xae\xce\xbd\x1e\xbf\xcf\xab\xe9\xdc\x1a\xf7\x13\x48\xdd\x25\x1e\x81\x38\x15\xcb\xb2\x59\x3a\xfb\x1c\x33\xfb\x0d\x29\x4b\x62"
+"\xbe\xdd\xc3\x9e\xca\xaa\xbc\x1f\xc6\xb1\xb8\xa7\xc2\x1b\xfb\xee\xfd\x26\x15\xf8\x2c\x06\x9d\xde\x05\xfc\x2c\x06\x0e\x23\xf9\x47"
+"\x21\x0a\x31\x06\x36\xfb\x2b\x7f\xbb\x81\xa1\x78\xa6\x19\xb6\x6d\x59\xa4\x51\x1b\x43\x4a\x65\x45\x5b\x1f\x5b\x46\x70\x35\x34\x1a"
+"\x52\x9a\x51\xa4\x66\x1e\x62\xa5\xaf\x79\xbe\x1b\xe7\xd6\xc5\xf7\x15\xd7\x1f\xa0\xfb\x38\x05\xe7\x06\x5d\xf7\xa3\x05\x37\x16\xfb"
+"\x2b\x36\x48\x49\x48\x1b\x60\x6d\xc3\xda\xca\x9d\xce\xad\xc4\x1f\xc3\xab\xb6\xa9\xba\x1b\xae\xa5\x7b\x6a\x9e\x1f\x9c\x6e\x94\x6b"
+"\x97\x3a\x08\x0e\x23\xf9\x47\x21\x0a\x31\x06\x37\xfb\x2b\x7e\xbb\x82\xa1\x78\xa6\x19\xb6\x6c\x59\xa4\x51\x1b\x45\x4b\x65\x45\x5b"
+"\x1f\x5c\x46\x71\x35\x34\x1a\x52\x9a\x51\xa3\x66\x1e\x62\xa4\xae\x79\xbd\x1b\xe6\xd7\xc5\xf7\x15\xd6\x1f\xa1\xfb\x38\x05\xe7\x06"
+"\x5c\xf7\xa3\x05\x38\x16\xfb\x2b\x35\x48\x49\x49\x1b\x62\x6f\xc2\xda\xcb\x9d\xce\xab\xc4\x1f\xc3\xab\xb4\xa9\xb9\x1b\xae\xa5\x7b"
+"\x6a\x9f\x1f\x9c\x6e\x93\x6b\x98\x3a\x08\x27\xf8\x90\x2b\x1d\x5f\x0a\xf7\x07\xf8\x4a\x36\x1d\xfb\xe9\xc5\xf7\x82\x15\xf7\x42\xfb"
+"\xe8\x05\x7b\x93\x95\x84\x97\x1b\x93\x90\x8f\x92\x92\x89\x93\x88\x93\x1f\xfb\x17\xf7\xdd\xf7\x17\xf7\xdd\x05\x8e\x93\x8d\x93\x92"
+"\x1a\x93\x86\x8f\x83\x7f\x83\x85\x79\x81\x1e\x0e\xfb\xe9\xf7\xa7\xf7\x82\x15\xfb\x42\xf7\xe8\x05\x9c\x82\x82\x92\x7f\x1b\x83\x86"
+"\x87\x83\x85\x8d\x83\x8e\x82\x1f\xf7\x17\xfb\xdd\xfb\x17\xfb\xdd\x05\x88\x84\x89\x83\x84\x1a\x83\x90\x87\x93\x97\x93\x91\x9c\x95"
+"\x1e\x0e\x83\x1d\x6b\x9d\x73\xa6\x85\x1e\x44\x66\x73\x70\x5e\x1a\x5a\xbb\x6f\xdd\xa3\x92\x8c\x94\xb4\x1e\x94\xb8\x05\x84\x76\x75"
+"\x88\x72\x1b\x62\x70\x9c\xa6\xb4\xbc\xbb\xc2\x98\x1f\xfb\x00\xf7\x46\x15\x4d\x7e\x33\x56\x33\x1b\x52\x6b\xa3\xb5\xac\x9e\xac\xa9"
+"\x9d\x1f\xa3\x9a\xa8\x93\xbd\x92\xe9\x43\x1d\x0e\xfb\x11\xf7\x12\xf7\x87\xde\x1d\xa4\x1f\x62\xdd\x9f\x84\xa6\x1b\xc8\xbf\xae\xd8"
+"\xc1\x1f\x66\xa4\x05\x57\x61\x71\x7a\x64\x1b\x73\x7e\x90\xa6\x56\x1f\xa4\x5a\x6e\x95\x70\x1b\x51\x5a\x68\x3c\x56\x1f\x91\xfb\x57"
+"\xde\x1d\xa5\x1f\x62\xdc\x9f\x84\xa7\x1b\xc7\xbf\xae\xd8\xc1\x1f\x66\xa4\x05\x58\x62\x70\x79\x65\x1b\x73\x7d\x90\xa6\x56\x1f\xa4"
+"\x5a\x6f\x95\x6f\x1b\x52\x5a\x68\x3c\x55\x1f\x0e\x60\x0a\x7c\xf8\x84\xaf\x1d\x71\x71\x6f\x77\x7c\x99\xa0\xa5\xa6\xa5\xa7\x1f\x69"
+"\xf7\x3e\x23\x1d\xf7\xda\xf9\x5e\xf7\xac\x15\x7b\x77\x81\x7b\x7f\x75\x08\x81\x79\x7d\x65\x84\x1a\x82\x93\x84\x95\x94\x8e\x8d\x9f"
+"\x9b\x1e\xb3\xba\xab\xa4\xe5\xc1\x08\x9c\x94\x8d\x8e\x93\x1a\x94\x85\x91\x76\x96\x1e\x53\xa7\x4c\xbd\x66\xb7\x08\x98\x81\x83\x92"
+"\x86\x1b\x7e\x83\x85\x81\x78\xb0\x41\xa4\x6d\x1f\xfc\x3f\x06\xa4\xa9\xb1\xd6\x9d\x1a\x95\x83\x91\x7f\x86\x87\x88\x7a\x7c\x1e\x70"
+"\x69\x46\x53\x63\x76\x08\x63\x75\x84\x86\x83\x1a\x83\x8e\x86\x94\x86\x1e\xef\x4f\xa1\x7a\xba\x56\x08\x76\x9e\x8c\x8a\x94\x1b\x95"
+"\x92\x92\x94\x9f\x6b\xc8\x6c\xb3\x1f\x0e\xfb\x42\xf7\x6e\xf9\x69\x15\xfd\x29\x07\xa4\x6d\x41\xb0\x79\x1b\x83\x83\x83\x83\x81\x8f"
+"\x86\x9b\x7e\x1f\xbb\x61\xa6\x69\xba\x3a\x08\x74\x98\x8e\x87\x92\x1b\x97\x8c\x8c\xac\x9e\x1f\xb0\xcc\xac\xb6\xba\xb3\x08\xa0\x9d"
+"\x8c\x8d\x94\x1a\x95\x84\x92\x82\x76\x4c\x6b\x6d\x65\x1e\xf9\x29\x07\x0e\xf7\xda\xfa\x25\xf7\xad\x15\xc7\xfd\x29\x07\xa9\xb1\xab"
+"\xca\xa0\x1a\x94\x84\x92\x81\x82\x89\x8a\x76\x79\x1e\x67\x61\x63\x6b\x56\x6b\x08\x56\x6c\x8b\x8b\x7f\x1a\x84\x8f\x88\xa2\x7e\x1e"
+"\xdc\x5c\xad\x70\xb5\x5b\x08\x7b\x98\x90\x87\x95\x1b\x93\x93\x93\x93\x9d\x66\xd5\x72\xa9\x1f\x0e\xf7\xda\xe1\xf7\xad\x15\xf9\x29"
+"\x06\x72\x6d\x66\x41\x79\x1a\x83\x93\x83\x93\x95\x90\x8f\x9b\x98\x1e\xb5\xbb\xad\xa6\xdc\xba\x08\xa2\x98\x8f\x8e\x92\x1a\x97\x8a"
+"\x8c\x6a\x9e\x1e\x4a\xb0\x60\xac\x63\xba\x08\xa0\x79\x89\x8c\x82\x1b\x81\x84\x84\x82\x76\xab\x4c\xa9\x65\x1f\xfd\x29\x06\x0e\xfb"
+"\x42\xf7\xaa\x25\x15\xf9\x29\x07\x72\xaa\xd4\x66\x9d\x1b\x93\x93\x93\x93\x95\x87\x90\x7b\x98\x1f\x5b\xb5\x70\xad\x5c\xdc\x08\xa2"
+"\x7e\x88\x8f\x84\x1b\x7f\x8a\x8a\x6a\x78\x1f\x66\x4a\x6a\x60\x5c\x63\x08\x76\x79\x8a\x89\x82\x1a\x81\x92\x84\x94\xa0\xca\xab\xa9"
+"\xb1\x1e\xfd\x29\x07\x0e\xfb\x42\xf7\x6f\xf7\x0f\x15\x76\x9b\x7c\x95\x75\x97\x08\x95\x79\x65\x99\x84\x1b\x82\x84\x83\x81\x82\x8d"
+"\x88\x9f\x7b\x1f\xba\x63\xa4\x6b\xc1\x31\x08\x7a\x94\x8e\x89\x93\x1b\x94\x91\x91\xa0\x96\x1f\xa7\xc3\xbd\xca\xb7\xb0\x08\x98\x95"
+"\x92\x93\x90\x1a\x98\x85\x93\x81\x78\x42\x66\x72\x6c\x1e\xf8\x3f\x07\x72\xa9\xd6\x76\x0a\xc8\xaa\xab\xb3\x1e\x0e\xfb\x42\xf7\x0d"
+"\x47\x15\x60\xf7\x9b\xb6\x07\xfb\x39\xf7\x97\x15\x77\x9b\x7b\x96\x75\x97\x08\x95\x78\x66\x99\x84\x1b\x82\x84\x83\x81\x82\x8d\x88"
+"\x9f\x7b\x1f\xba\x62\xa3\x6c\xc2\x30\x08\x7a\x95\x8d\x89\x93\x1b\x94\x91\x91\xa0\x96\x1f\xa7\xc3\xbd\xca\xb7\xb0\x08\x98\x95\x92"
+"\x93\x90\x1a\x98\x85\x93\x81\x78\x41\x66\x72\x6d\x1e\xf8\x3f\x07\x72\xaa\xd5\x76\x0a\xc9\xab\xaa\xb2\x1e\x0e\x24\xab\xfb\x6e\x15"
+"\xde\x06\xc0\xf7\x8b\x05\x69\xa9\xba\x79\xc7\x1b\xf7\x28\xf7\x0f\xf7\x14\xf7\x2e\xb9\x7a\xb8\x71\xa6\x1f\x7d\x98\x7d\x93\x6f\x96"
+"\xad\x99\x9b\x95\x9e\x9e\x08\xb1\xae\xa1\xbc\xba\x1a\xe8\x41\xcc\x21\x4b\x4e\x73\x62\x62\x1e\x65\x65\x7b\x64\x75\x27\x08\xdf\x90"
+"\x15\x9a\xd1\x98\xaa\xa4\xa4\x08\xa3\xa2\xb0\x99\xb3\x1b\xca\xae\x6a\x50\x61\x77\x65\x67\x6f\x1f\x70\x76\x73\x84\x4a\x88\x7d\x47"
+"\x18\x8c\x97\x98\x8c\x92\x1b\xa9\xa8\x83\x7c\xa2\x1f\xa8\x78\x98\x6e\x5f\x1a\xfb\x06\x37\x33\xfb\x02\x59\x66\x9b\xac\x72\x1e\x0e"
+"\xfb\x42\x49\x0a\x87\xf8\x1c\x23\x1d\xfb\x42\x49\x0a\x6b\xf7\x88\x2a\x1d\xfb\x42\x66\x0a\x2b\xf8\x1d\x24\x1d\xfb\x42\x49\x0a\x8f"
+"\xf8\x03\x23\x0a\xfb\x14\xf7\xd7\xf7\x8e\x15\x42\xf7\xa6\x05\x31\x06\xef\xfb\xf5\xfb\x9f\xfc\x19\x05\xeb\x06\xf7\x5e\xf7\xc3\xdb"
+"\xfb\xc3\x05\xe4\x06\xfb\x00\xf8\x12\xf7\x8d\xf7\xfc\x05\x29\x06\x0e\xf7\xda\xf8\x8b\xf9\x4b\x15\xfb\x5c\xfb\x36\xfb\x35\xfb\x5c"
+"\xfb\x58\xf7\x36\xfb\x36\xf7\x57\xf7\x59\xf7\x37\xf7\x37\xf7\x57\xf7\x58\xfb\x36\xf7\x39\xfb\x55\x1f\x87\xfb\xd0\x15\xfb\x52\xf7"
+"\x50\x05\xb8\xc2\xcc\xa2\xd1\x1b\xd0\xcb\x74\x60\xc4\x1f\xb3\x63\x15\xbb\x52\xa2\x4c\x42\x1a\x43\x74\x4b\x5d\x53\x1e\xfb\x54\xf7"
+"\x57\x05\xf7\x2c\xfb\x7f\x15\x5f\x54\x48\x73\x45\x1b\x45\x4b\xa2\xba\x50\x1f\xf7\x55\xf7\x55\x05\xfb\x7d\xfb\x2d\x15\x5f\xc1\x74"
+"\xcb\xd1\x1a\xd3\xa2\xcb\xba\xc4\x1e\xf7\x52\xfb\x50\x05\x0e\x79\xf8\xd7\x16\x9f\x07\x84\x8d\x74\x90\x3e\x9e\x8b\x8c\x70\x9c\x19"
+"\x45\xbb\x64\xd8\xe4\x1a\x94\x07\x9b\x07\x9f\x67\x94\x7e\x97\x7c\x08\x5c\xb1\xc8\x6d\xc1\x1b\xe6\xd3\xd5\xe8\xe7\x4a\xd2\x39\x71"
+"\x80\x88\x79\x67\x1f\x88\x8a\x83\x86\x81\x87\x08\xa9\xb7\x94\xa5\xb0\x1a\xe5\x43\xd2\x2f\x2e\x44\x45\x31\x67\x92\x78\xad\x56\x1e"
+"\xa3\x58\x78\x91\x70\x1b\x3d\x49\x40\x33\x2d\xd3\x43\xe9\xdb\xd1\xbe\xe5\xb6\x1f\x8c\x72\x05\x83\x07\x54\x71\x45\x65\x5f\x1e\x5c"
+"\x5a\x8a\x8a\xfb\x0e\x6e\x83\x89\x18\x77\x07\x0e\x6c\xf9\x1a\x88\x1d\xf7\xf7\xf7\x9f\x8c\x0a\xf8\xba\xf9\x21\x15\xfb\x2a\x06\x7f"
+"\x56\x05\xf7\x2a\x06\x6b\xfb\x2c\x9f\x1d\xf7\x13\xf8\xec\x05\xc9\x06\x96\xc0\x05\x4e\x06\x9b\xd7\x21\x1d\xfb\x67\xfb\x9f\x15\xd6"
+"\xb6\x59\x36\x4f\x7b\x4f\x6d\x57\x1f\x48\x64\x5a\x69\x4e\x1b\x41\x60\xbd\xe1\xc4\x9b\xca\xa7\xbe\x1f\xd0\xb1\xbb\xab\xcb\x1b\x0e"
+"\xf8\x0d\xf8\xa2\x15\x7e\x06\x3f\x45\x6a\x4f\x5c\x1f\x57\x4b\x69\x25\x32\x1a\xfb\x11\xd6\x3f\xf7\x11\xe3\xd6\xb0\xd0\xbf\x1e\xbb"
+"\xca\xac\xf1\xde\x1a\xd8\x6f\xc3\x40\xcf\x1e\xfb\x19\xf7\x0f\x05\xf7\x98\x2d\x1d\xfc\x06\x06\x7c\x44\x05\xf7\x22\xfb\x58\x15\xd0"
+"\xb7\x59\x3c\x53\x7a\x46\x71\x5b\x1f\x47\x66\x52\x65\x4a\x1b\x44\x60\xbc\xdb\xc2\x9c\xd1\xa5\xbb\x1f\xcf\xaf\xc5\xb1\xcd\x1b\x0e"
+"\xfb\x38\xf7\xa0\xf9\x89\x15\x42\xfb\x12\x4c\x31\xfb\x20\xfb\x44\xf0\xfb\x0f\xf7\x35\xfb\x78\x99\x61\xde\xf7\x20\xdf\xf7\x0b\xf7"
+"\x03\xf7\x1a\xfb\x0a\xf7\x25\x29\xf7\x1f\x4d\xf7\x00\x08\x0e\xfb\xe9\xf7\xc8\xf9\xef\x15\x78\x30\x8e\x23\x05\xaa\xa8\x1d\x68\x0a"
+"\xfb\x60\xf8\x3b\xa6\x1d\x59\x6b\xaa\x0a\x56\x1d\x64\xf7\xb2\x2a\x1d\x56\x1d\x84\xf8\x2d\x23\x0a\xf7\xda\xf9\x93\xf7\x6c\x15\xc8"
+"\xfc\x62\x07\x91\xf6\xc3\xbd\xf7\x01\x89\x08\xf7\xb7\xc9\xfb\xac\x06\x38\x68\x84\x72\x66\x1f\x4a\x60\x69\x42\x2c\x1a\xfb\x08\xb8"
+"\x38\xb9\x0a\xc9\xfb\xb7\x06\xfb\x01\x89\x53\xbd\x85\xf5\x08\x0e\x56\x1d\xd4\xf8\x1a\x36\x1d\xd1\x16\x90\x0a\x31\xfc\x3d\x9b\x0a"
+"\x8d\x8b\x95\x1b\xf7\x06\xb7\xa6\xdd\x9d\x1f\xf2\xf8\x79\x6c\x1d\x3f\x06\x0e\xf8\x64\xfb\x2a\x15\x84\x79\x72\x88\x70\x1b\x63\x70"
+"\x9e\xa6\xa7\xa6\xb3\xb4\xab\x1f\xe0\xcc\xb2\xbb\x9c\xc7\x08\xdf\x1d\xe0\xa1\x8c\x94\x8f\x9a\x1f\xf8\x16\x06\x99\xd9\x8e\xa3\xab"
+"\x1a\xec\xad\x1d\xc2\x1b\x9f\x9a\x8c\x91\xaa\x1f\x45\x61\x74\x6f\x62\x1a\x70\x97\x77\xa3\x7f\x1e\x80\xa1\xb2\x83\xb0\x1b\xa8\x9d"
+"\x8e\x92\xa0\x1f\xfb\x98\xf8\x89\x15\xe7\xa5\xd5\xcb\xdc\x1b\xd2\xb8\x5b\x40\x82\x8a\x83\x89\x7b\x1f\x0e\xfb\x7f\x85\x1d\x0e\xfb"
+"\x7f\x85\x1d\x8d\xf8\xb5\x2b\x1d\x31\xd2\x1d\xb9\xf7\x6e\xe3\x1d\x5b\xfb\x70\xb2\x0a\x41\xf8\xb6\xf7\x88\x15\x92\x07\x8a\xc7\x8a"
+"\x97\x84\xac\x08\xf5\x75\x34\xce\xfb\x07\x1b\xfb\x27\x2e\x20\xfb\x3b\xfb\x3b\xe5\x26\xf7\x28\xf7\x06\xd5\xbf\xf2\xab\x1f\x8d\x92"
+"\x05\x52\x06\x84\x7b\x86\x82\x88\x87\x08\x59\x6c\x58\x71\x4a\x1b\x5f\x67\x97\xa1\x73\x1f\x7a\x9a\x82\x9b\x80\xb0\x08\xed\x07\xf7"
+"\xb3\xbb\x15\xfb\xb1\xe0\x06\xd1\xac\xaf\xa4\xd0\x1b\xc1\xb0\x7a\x63\xae\x1f\x96\x7e\x8f\x84\x91\x79\x08\x0e\xfb\x0b\x8e\x1d\x0e"
+"\xfb\x0b\x8e\x1d\xf7\x30\xc5\x1d\xfb\x42\xf7\xdc\xaa\x1d\xf8\x30\xd8\x1d\xb2\x06\xcf\xd1\x1d\x0e\xfb\x8e\xbe\x16\xf7\xd9\xf8\xd5"
+"\xfb\xd9\x37\xf7\x85\xfb\x36\xfb\x85\x37\xf7\x85\xfb\x37\xfb\x85\x06\x0e\xd7\xf7\xf4\xf7\x98\x15\xfb\x37\x60\xf7\x37\xfb\x3a\xbb"
+"\xf7\x3a\xf7\x35\xb6\xfb\x35\xf3\x06\xe7\xa2\xcc\xd9\xe2\x1a\xeb\x36\xdc\x27\x2a\x39\x38\x2a\x36\xcd\x3e\xe8\x74\x1e\xa6\xf7\xcb"
+"\x15\xd0\xc5\x50\x45\x43\x51\x51\x43\x43\x52\xc5\xd4\xd3\xc5\xc3\xd5\x1f\x0e\xf7\x51\xf7\xd4\x15\xf7\x67\x06\x9b\xd9\x05\xfb\x67"
+"\x06\xbd\xf7\x7e\x05\xf7\xd3\x06\x9b\xd9\x05\xfc\x2a\x06\xfb\x2b\xfd\x5a\x05\xe3\x06\xf7\xd8\xf8\x82\x15\x22\xfc\x82\x05\xdb\x06"
+"\xbe\xf7\x86\xa0\xf7\x00\xd6\xd5\xe1\x88\x19\x9d\xe0\x05\x8d\x7f\x85\x8c\x84\x1b\x61\x59\x6a\x4b\x55\x1f\x9c\xdd\x05\x0e\xfb\x42"
+"\xf7\x39\xfb\x6e\x15\xdf\x06\xbc\xf7\x7e\xf7\xc1\xf8\x90\x05\x28\x06\xfb\x73\xfc\x19\x4a\xf8\x19\x05\x32\x06\xe6\xfc\x90\x05\x0e"
+"\xf8\xa1\x80\x1d\x40\xf7\x9f\x40\x1d\xd7\xbb\xbe\x9e\xa9\xac\xb7\x0a\x82\x62\x74\x4f\x1b\x59\x6b\x9f\xaa\x1f\x90\x07\x92\x07\x0e"
+"\x62\x0a\x81\xf7\xab\x24\x1d\xf8\x92\x80\x1d\xeb\xf7\x13\x15\xa0\xed\x05\x54\x06\xc6\x96\xa3\xa8\xb2\x1b\x93\xb1\x05\x4c\x5c\x5b"
+"\x38\x79\x1f\x77\x2e\x05\x0e\xf8\x9f\xf8\xa0\x15\x7b\x3f\x05\xcc\x66\x63\xa5\x4c\x1b\x3e\x3f\x65\x4d\x5a\x1f\x55\x46\x66\xfb\x00"
+"\x31\x1a\xfb\x05\xd1\x39\xeb\xd2\xc1\xa8\xcc\xc1\x1e\x85\x70\x7c\x45\x79\x62\x6f\x6c\x19\x6b\x6d\x5e\x79\x58\x1b\x47\x63\xa6\xb8"
+"\x1f\x9b\x36\x07\x8a\x82\x8b\x83\x87\x1a\x37\xcf\x56\xf7\x00\xdb\xd7\xa4\xb3\xb4\x1e\xb9\xb7\xa8\xd1\xa6\xf7\x11\xe8\xf8\x4a\x18"
+"\xfb\x82\x4d\x15\xce\xb2\x5e\x3e\xfb\x31\x33\xfb\x15\xfb\x01\x46\x63\xb9\xd9\xf7\x30\xe5\xf7\x14\xf7\x02\x1f\xf7\x0c\xf7\x91\x23"
+"\x0a\xfb\x11\xc1\xd3\x15\x7c\x43\x05\xf8\x7d\x06\x9a\xd3\x05\xcd\xf7\xc5\x8f\x0a\xf7\xb8\xf9\x21\x15\x9b\xd7\x05\x38\x06\x7b\x3f"
+"\x05\x4f\x06\x7f\x56\x05\xc7\x06\xfb\x13\xfc\xec\x05\xde\x06\xc8\xf7\xb5\x05\xf3\xa2\xd5\xd4\xde\x1b\xc0\xaf\x6f\x62\x7b\x8a\x83"
+"\x89\x81\x1f\x3e\xfb\xff\x05\xde\x06\xdf\xf8\x20\x05\x8d\x94\x8c\x94\x97\x1a\xd2\x58\xb5\x34\x3d\x55\x72\x4d\x55\x1e\xaa\xf7\x28"
+"\x05\xf7\x63\x06\x97\xc0\x05\x0e\x73\x0a\x62\xf7\x67\x24\x1d\x3b\xf7\xbc\x6f\x15\x9c\xde\xc7\xf3\xf7\x0b\xf7\x2b\xb4\xc0\x9b\xa0"
+"\x9a\xa3\x08\xb1\xca\x9d\xc2\xc1\x1a\xdc\x45\xcf\x36\x5b\x5f\x76\x65\x6b\x1e\x76\x72\x80\x75\x7e\x5d\x08\xf2\x67\x56\xbb\x3a\x1b"
+"\x36\x48\x46\x34\x4a\xa3\x57\xdc\xfb\x02\x1f\xf7\x2c\xfb\x60\xb2\x49\xa5\x24\x08\x0e\x45\x96\x16\xf8\xdb\xf8\x25\x06\xfb\xb8\xf7"
+"\xdc\xfb\xb7\xfb\xdc\x05\xbe\xfb\xf2\x15\xf7\xdc\x07\xf7\x84\xf7\xa2\xf7\x85\xfb\xa2\x05\xfb\xdc\x07\x0e\xfc\x20\x2d\x0a\x68\xf9"
+"\x6d\x3c\x0a\xfb\x7a\xf7\xa7\x8d\x0a\xe8\x25\x15\xfb\x13\xfc\xec\x5c\x0a\x85\x8b\x8d\x7e\x1f\x7c\x44\x05\x88\x91\x8e\x8b\x94\x1b"
+"\xf7\x07\xb7\xa6\xdd\x9d\x1f\xf7\x1a\xf9\x0d\x05\xb7\xf7\x61\x15\x37\x06\x74\x24\x20\x0a\x0e\xfc\x20\xab\x0a\xf7\x73\xf9\x4c\x15"
+"\xfb\x7e\x06\x7c\x46\x05\xf7\x7e\x06\x0e\xb2\xf8\x37\xf7\xbd\x15\x6d\xae\x80\x96\x79\x9b\x08\xa8\x6b\x63\x9b\x65\x1b\x32\x38\x39"
+"\x34\x4a\xb9\x5d\xcd\xc5\xc2\xa7\xda\xf1\x1f\x37\xd7\xb0\x74\xc2\x1b\xe6\xde\xdc\xe3\xcc\x5d\xb9\x4b\x63\x5b\x7b\x6e\x5f\x1f\x75"
+"\x7c\x85\x87\x51\x60\x08\xa8\x6a\x15\xc7\xd5\xc4\xa8\xb6\x1b\xb3\xab\x6c\x65\x53\x54\x56\x52\x6f\x79\x93\xa9\x66\x1f\x74\x9e\x81"
+"\x95\x79\xa1\x08\x44\x16\x71\x75\x80\x84\x67\x75\x08\x6e\x5c\x73\x82\x6e\x1b\x62\x6b\xa9\xb3\xc3\xc1\xbf\xc5\xb4\xb9\x6c\x51\xba"
+"\x1f\x0e\xfc\x24\xf7\x50\xf8\x9f\x15\xb0\x85\xda\x82\xe8\xb0\x0a\x8e\x8a\x80\x95\x1e\x81\x95\x97\x86\x98\x1b\xa6\xa0\xa1\xa7\xa9"
+"\x6f\xa3\x68\x60\x6c\x6c\x51\x7d\x1f\x7b\x4b\x86\x46\xfb\x45\x1a\xfb\x78\x07\x5f\x8f\x4e\x95\x22\x1e\x8f\x61\x8d\x75\x7f\x1a\x79"
+"\x85\x81\x7f\x85\x89\x8c\x96\x80\x1e\x95\x81\x80\x90\x7d\x1b\x71\x75\x75\x70\x6c\xa7\x73\xae\xb7\xaa\xaa\xc5\x99\x1f\x9b\xcb\x90"
+"\xd4\xf7\x41\x1a\x0e\x45\xf7\xab\xf9\xb4\x15\xfc\xfa\x07\x5f\x8f\x4d\x95\x23\x1e\x8f\x61\x8d\x75\x7f\x1a\x79\x85\x81\x7f\x85\x89"
+"\x8c\x96\x80\x1e\x95\x80\x81\x90\x7d\x1b\x71\x75\x75\x70\x6c\xa7\x73\xae\xb7\xaa\xaa\xc5\x99\x1f\x9b\xcb\x90\xd4\xf7\x41\x1a\xf8"
+"\xf2\x07\x0e\x45\xf7\xf4\xfb\x61\x15\xf8\xfa\x07\xb7\x87\xc9\x81\xf3\xb0\x0a\x8d\x8a\x80\x96\x1e\x81\x96\x95\x86\x99\x1b\xa5\xa1"
+"\xa1\xa6\xaa\x6f\xa3\x68\x5f\x6c\x6c\x51\x7d\x1f\x7b\x4b\x86\x42\xfb\x41\x1a\xfc\xf2\x07\x0e\xb8\xf8\xeb\x16\xf7\xa1\x07\xf7\x29"
+"\x86\xb1\x71\xb7\x1e\xd1\x61\x3e\xb4\x31\x1b\x38\x46\x6a\x4d\x5e\x1f\x66\x5a\x85\x67\xfb\x36\x1a\xfb\xa1\xd1\xf7\xa4\x07\xf7\x05"
+"\x91\xba\x9d\xad\x1e\xbd\xa6\xc5\xad\xc8\x1b\xc4\xc2\x6e\x5d\xa8\x1f\xa2\x67\x91\x62\xfb\x12\x1a\xfb\xa4\x07\x0e\xf8\x0e\xf8\xa3"
+"\xf9\x6e\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37\xf7"
+"\x37\xfb\x5e\x1f\xfb\x01\xfb\x63\xc1\x1d\xfb\x14\xfb\x05\x15\x96\x59\x96\x75\xa5\x6d\x08\x54\xbb\xc7\x71\xdc\x1b\xdc\xc7\xa5\xc2"
+"\xbb\x1f\xa5\xa9\x96\xa1\x96\xbd\x84\x36\x80\x62\x6d\x5e\x08\x4c\x61\x4b\x6b\x38\x1b\x3e\x4f\xa6\xc1\x61\x1f\x67\xba\x7c\xb8\x84"
+"\xe8\x08\xf7\xee\xf7\x05\xc1\x1d\x0e\xfc\x58\xf7\x99\xbc\x0a\xad\x06\x4b\x61\x67\x5d\x63\x1a\x5e\xb5\x6b\xc7\x9d\x98\x8e\x92\xa1"
+"\x1e\x94\xb8\x05\x82\x74\x8a\x8b\x7f\x1b\x69\x76\x9c\xa5\xab\xab\xbc\xb8\xae\x1f\xf7\x2f\x22\x1d\x37\x06\x74\x24\x20\x0a\x0e\xfc"
+"\x58\x43\x0a\x0e\xfc\x58\x43\x0a\xbd\xf7\x53\x15\x23\x06\x76\xa1\x0a\x76\x24\x05\xf3\x06\x0e\xfc\x58\x43\x0a\xd4\xf7\xe3\x15\x77"
+"\x97\x0a\x9f\xe6\x05\xc7\xfb\x2b\x15\x2f\x06\x75\x24\x05\xe7\x06\xfb\x2c\xf2\x15\x2f\x06\x75\x24\x05\xe7\x06\x0e\xfc\x58\x43\x0a"
+"\xc3\xc5\x1d\xfc\x20\xab\x0a\xf7\x68\x90\x1d\xfc\x58\x7b\x0a\x55\xf7\x6d\x24\x1d\xfb\x42\xf7\x60\xf7\xc3\x15\xba\xf7\x71\xe1\x1d"
+"\xb4\xf7\x57\xf7\x03\xe6\xf7\x07\xfb\xb2\x05\xe8\x06\xfb\x1f\xf7\xe6\xf7\x76\xf7\x4e\x05\xfb\x07\x06\x0e\xfb\x42\x98\x1d\x8c\xfc"
+"\x02\x5e\x1d\xfb\x42\xf7\x47\xf7\x47\x15\xf0\xde\xf3\xfb\x9a\x05\xec\x06\xfb\x25\xf7\xc2\xf7\x96\xf7\x72\x05\xfb\x0c\x06\xfb\xa7"
+"\xfb\x92\xc3\xf7\x92\x05\x35\x06\xfb\x06\xfc\xa0\x05\xe1\x06\x0e\xfc\x58\xf7\xc7\x37\x1d\xf7\x5b\x55\x0a\xfb\x4a\x9d\x16\xea\x06"
+"\xf7\x6e\xf8\x1b\xc5\xfc\x1b\x05\xe2\x06\xfb\x05\xf9\x6d\x05\x34\x06\xaf\xfb\x66\x05\x0e\xfc\x0b\xf7\xc3\x37\x1d\xf7\x6b\xf9\x6d"
+"\x8c\x0a\xfc\x58\xf7\xc7\x37\x1d\x22\x4f\x35\x1d\xfb\xa6\xf7\xd8\x37\x1d\xf7\xa2\xf8\x4d\x23\x0a\xfb\x11\xf8\xa8\xd3\x15\xfc\x7d"
+"\x27\x1d\xf8\x7d\x06\xfc\x3b\xf7\xc8\xb5\x1d\xf7\xbe\xf7\xd5\x15\xf7\x1d\x06\x97\xc2\x05\xfb\x34\x06\x86\x9c\x88\x93\x8a\x8e\x08"
+"\x75\xc9\x8b\x8b\xa5\x1a\xe6\xd4\xd0\xea\xd2\xb8\x65\x4f\x79\x89\x7d\x84\x72\x1e\xe3\x06\x92\xb5\x8d\x9d\xa1\x1a\xe5\x40\xc7\xfb"
+"\x03\xfb\x28\xfb\x1a\xfb\x0b\xfb\x16\x6e\x8d\x85\xa6\x49\x1e\x8c\x88\x05\x38\x06\x7f\x54\x05\xf7\x05\x06\x91\x78\x8e\x7f\x85\x1a"
+"\xfb\x1b\x06\x7f\x54\x05\xf7\x21\x06\x7a\x53\x4e\x4a\x32\x53\xb0\x49\x18\xa5\xba\xad\x96\xb0\x1b\xa2\x9f\x88\x83\x9f\x1f\x71\xcf"
+"\xad\x82\xb0\x1b\xbc\xbd\x9e\xae\xb6\x1f\x72\xd1\x05\x73\x61\x77\x92\x0a\xf7\x0b\xe5\x93\x92\xa6\xd2\x08\xf7\x0c\x06\x97\xc2\x05"
+"\xfb\x0d\x06\x90\x8b\x91\x89\x9a\x1e\x0e\xfc\x58\xf7\x25\x16\xf7\x12\xf8\xe5\x05\xbe\x96\x9c\x9b\xb7\x1b\x92\x92\x8b\x89\x98\x1f"
+"\x9a\xd0\x05\x8f\x79\x80\x8c\x7b\x1b\x3e\x53\x5e\x41\x7b\x1f\x78\x32\x05\x45\x06\x7d\x48\x05\xd1\x06\x2a\xfc\x5d\x05\x0e\xd7\xf8"
+"\x14\xf8\x82\x15\x9f\x64\x72\x92\x6a\x1b\x27\x37\x38\x29\x2a\xe5\x36\xf2\xab\xa9\x93\x9b\xa6\x1f\xbe\xaa\xae\xc4\xbf\x1a\xb6\x78"
+"\xbd\x68\xc0\x1e\xf7\x2a\xf7\x2a\x8e\x79\xa1\x52\x9a\x6e\x19\x77\x96\x90\x85\x95\x1b\x92\x90\x90\x92\x8e\x8b\x8b\x88\x9d\x1f\x84"
+"\xae\x89\xa1\xa6\x1a\xab\x91\xbd\x92\xa2\x1e\x8d\x90\x8b\x8d\x8d\x1a\x91\x87\x8f\x84\x88\x88\x8b\x8a\x88\x1e\x81\x69\x6d\x87\x67"
+"\x1b\x70\x75\x8d\x92\x68\x1f\x8e\x79\x8b\x8b\x88\x1b\x85\x85\x84\x85\x7b\xb5\x73\xc2\x7a\x1f\xa2\x84\x91\x89\x05\xfb\x8c\xfb\x41"
+"\x15\xd3\xc7\x4e\x42\x41\x4f\x4f\x41\x40\x4f\xc7\xd6\xd5\xc7\xc6\xd8\x1f\x0e\xfc\x7a\xf7\x6e\xe0\x1d\x0e\xfb\x42\xf7\x7f\xf7\x53"
+"\x15\x93\x75\x7b\x8f\x7a\x1b\x46\x4f\x52\x49\x65\xa8\x73\xb8\xbe\xba\xa4\xb5\xa9\x1f\xa0\xa9\x94\xaa\xb8\x1a\xf7\xd4\x07\xab\x85"
+"\xa1\x7b\xa2\x66\x08\xa3\x65\x95\x65\x55\x1a\x59\x81\x61\x73\x51\x1e\xa8\x06\xb2\xb9\xa0\xc7\xcc\x1a\xdc\x6b\xdb\x4c\xd6\x1e\x53"
+"\xce\x89\x8d\x83\x95\x86\x92\x19\xcb\x5b\x07\x0e\xd7\xf7\x95\xf9\x19\x15\xfc\x59\x88\x0a\xf7\xf0\x07\xf7\xb5\x5f\x05\xfc\x03\x88"
+"\x0a\xf8\x52\x07\x0e\x39\x1d\xf7\x67\xf7\x6c\x23\x1d\x50\xf7\x73\x21\x0a\xfb\x03\xfc\xa0\x05\x90\x0a\x41\xfb\xf1\x20\x0a\xdb\xf8"
+"\x0c\x6c\x1d\xfb\x2a\xf7\x61\x35\x1d\x39\x1d\xf7\x55\xcf\x2a\x1d\x39\x1d\x64\xfc\xdc\x5e\x1d\xf7\xda\xf8\xa4\xf7\x6c\x15\xf7\x83"
+"\xc8\xfb\x60\x06\xe3\xf7\x2f\x05\xf7\x08\xc9\x3a\x06\xac\xc6\x61\xa3\x5c\x38\x05\xfb\x23\x06\x38\x68\x84\x72\x65\x1f\x4b\x60\x69"
+"\x42\x2c\x1a\xfb\x08\xb8\x37\xdc\x69\x1e\x6a\x52\xb6\x74\xb1\xce\x05\x88\xa5\x97\x8a\xb5\x1b\xf7\xac\xc9\xfb\xb7\x06\x77\x85\x8b"
+"\x8c\x82\x1f\xaa\xf7\x2d\x15\x3a\xfb\x21\x57\x9d\x6c\xbe\x88\xd3\x19\xf7\xb6\xf7\x6c\x15\x33\xfb\x2f\x05\xfb\x5e\x06\x91\xf6\xc3"
+"\xbd\xf7\x01\x89\x08\x0e\xfb\x11\xf7\x48\xf7\x03\x15\x55\x45\xc9\x64\xde\xf7\x01\x05\xf7\xa2\x06\x99\xd3\x05\xfb\x7a\x06\xd9\xef"
+"\x05\xf7\x42\x06\x9a\xd3\x05\xfb\x1b\x06\xcd\xe1\x4d\xb2\x2b\xfb\x11\x05\xfb\x95\x06\x7d\x43\x05\xf7\x6e\x06\x3c\x27\x05\xfb\x35"
+"\x27\x1d\x0e\xfb\x42\xf7\xb3\x16\xf7\xcc\xf8\xa0\x05\x28\x06\xfb\x80\xfc\x31\x57\xf8\x31\x05\x32\x06\xd4\xfc\xa0\x05\x0e\x69\x0a"
+"\x32\xf7\x9f\x3c\x0a\x4a\x0a\xa5\xf7\xaa\x15\x6a\x1d\xc9\x16\xfb\x14\xfb\x2a\x05\xc7\x06\xf7\x48\xf7\x2a\x05\x0e\x4a\x0a\xf7\x4f"
+"\xf7\x7e\x36\x1d\xf4\x63\x0a\x0e\xf4\x63\x0a\x89\xf8\x12\xcf\x1d\x6a\x0a\x0e\x6a\x0a\x9b\xf7\xd1\x2b\x1d\xf7\xc5\xbd\x16\xfa\x04"
+"\xcd\xfd\xc2\xf9\xb8\x49\x06\x0e\x4c\x82\x1d\xf7\x8c\xf9\x12\x23\x1d\xfb\x5a\xf1\xf9\x32\x15\xac\xd5\x8b\x8b\xb1\x1b\xba\xb2\x79"
+"\x69\xa3\x1f\xad\x5c\xa0\x40\x42\x1a\x6d\x89\x73\x82\x50\x1e\xc0\x46\x70\x97\x55\x1b\x5a\x64\x7b\x69\x69\x1f\x5d\x5c\x6f\x48\x4a"
+"\x1a\xfb\x01\xde\x36\xf6\xd7\xc8\xb4\xd8\xb6\x1e\xb1\xcf\xa7\xf7\x16\xf3\x1a\xf7\x5c\xfb\x03\xf7\x25\xfb\x2d\x5e\x5c\x81\x79\x63"
+"\x1e\xf7\xbf\xfc\x36\x15\x7d\x32\x84\x6b\x7d\x5f\x08\x3d\x70\x5d\x5f\x55\x1b\x53\x6a\xbe\xe1\xf7\x08\xcd\xea\xdc\xb4\xb0\x76\x63"
+"\xa5\x1f\x0e\xf8\x38\xf7\x98\xf7\xc4\x15\xf7\x04\x06\xc9\xb8\x9b\xb0\xb8\x1f\xc6\xbc\xb0\xd5\xd1\x1a\xb5\x7a\xb9\x71\xa5\x1e\xab"
+"\x6d\x5f\x99\x4a\x1b\xfb\x48\x06\xfb\x2b\xfd\x5a\x05\xe3\x06\xdc\xf8\x12\x15\xc0\xf7\x8e\x05\xda\x06\xdc\xb6\x68\x4a\x5f\x76\x61"
+"\x66\x6e\x1f\x73\x6b\x67\x80\x57\x1b\xf7\xdf\xfb\x0e\x15\xd9\x06\x99\xcb\x05\x3c\x06\xa4\xf7\x09\x05\x3b\x06\x72\xfb\x09\x05\x4c"
+"\x06\x7e\x4b\x05\xca\x06\x66\xfb\x3e\x05\x89\x81\x8a\x7f\x82\x1a\x58\xab\x6f\xc5\x9b\x96\x8c\x8f\xa2\x1e\x98\xd3\x05\x87\x7a\x83"
+"\x8a\x80\x1b\x76\x7d\x96\x9b\x8d\x8c\x91\x8c\x91\x1f\xf8\x41\xf7\x18\x15\x8f\x9c\x8c\x92\x94\x1a\xba\x5e\xab\x49\x32\x49\x55\x43"
+"\x62\xa1\x79\xd2\x78\x1e\xb8\x80\x05\xa3\x85\x94\x83\x7c\x1a\x6d\x6d\x76\x5f\x67\x79\x98\xa5\x90\x8c\x94\x8c\x93\x1e\x3d\x06\x87"
+"\x79\x8a\x83\x80\x1a\x55\xb9\x6b\xda\xec\xcc\xbe\xd7\xb4\x75\xa0\x4f\x9a\x1e\x5d\x96\x05\x6d\x93\x7e\x94\x99\x1a\xa9\xa4\x9e\xb4"
+"\xa9\x99\x81\x75\x85\x8b\x87\x89\x83\x1e\x0e\x75\xf7\x7e\xfb\x6e\x15\xdf\x06\xb5\xf7\x58\xe0\x93\xc6\xa4\xc4\xc3\x19\xd1\xcd\xb4"
+"\xec\xea\x1a\xf7\x1f\x34\xd6\xfb\x34\x81\x86\x8b\x8a\x7c\x1e\x23\xfc\x79\x69\x8f\x7d\x8f\x79\x95\x19\x6a\x9e\x78\xb6\xc4\x1a\xc3"
+"\x9a\xc7\xa5\xbb\x1e\xa3\xba\xa1\xa0\xb7\xa1\x9c\xde\x18\x3f\x6e\x60\x6c\x5c\x51\x08\x5a\x4f\x71\x3b\x36\x1a\x48\x9f\x56\xb0\x68"
+"\x1e\xac\x6c\xaf\x7e\xd1\x84\x08\xf7\x4f\xf8\x79\x15\xa6\x89\x98\x88\x9d\x82\x08\xb0\x78\xa2\x5e\x55\x1a\x4c\x74\x40\x68\x58\x1e"
+"\x64\x51\x63\x73\x46\x84\x08\x0e\x87\xf9\x69\x21\x0a\xfc\xc1\x06\x7c\x41\x05\xd6\x06\x2b\xfc\x56\x05\xdf\x25\x1d\x05\xf7\x83\x06"
+"\x34\x1d\xdf\x25\x1d\x05\xd6\x06\x0e\xf7\xd6\xf7\x88\xfb\x30\x15\x3e\x36\xf7\x8f\x06\x8a\xe0\x05\x40\xf9\xab\xf7\xfe\xfd\xab\x45"
+"\x06\x8c\x36\x05\xf7\x84\xe0\x42\xf9\xab\xf0\xe0\xfd\x8f\x36\xf3\x06\x0e\xf7\xda\xf9\x93\xc9\x15\xfb\xb7\x06\xfb\x0d\x57\xc2\xf7"
+"\x16\xf7\x15\xbf\xc3\xf7\x0d\x1f\xf7\xb7\xc9\xfb\xac\x06\x38\x68\x84\x72\x66\x1f\x4a\x60\x69\x43\x2b\x1a\xfb\x07\xb8\x37\xb9\x0a"
+"\x06\x0e\xf7\xda\xf7\x7d\xc9\x15\x4d\xf7\xac\x07\xde\xae\x92\xa4\xb1\x1f\xcc\xb6\xac\xd4\xee\x1a\xf7\x03\x5d\xe0\x3d\xac\x1e\x99"
+"\x69\x70\x8f\x46\x1b\xfb\xac\x4d\xf7\xb7\x06\xf7\x0d\xbf\x54\xfb\x16\xfb\x16\x57\x54\xfb\x0d\x1f\x0e\xc1\xf8\x99\x21\x0a\x37\x06"
+"\x28\xfc\x66\x05\x37\x93\x66\xa9\xc8\x1a\x9c\x8f\xaa\x92\xaa\x1e\xc8\xf7\xb4\x21\x1d\x4d\xfb\xb7\x05\x83\x66\x86\x66\x79\x1a\x65"
+"\x9a\x66\xa5\x72\x1e\xb1\x67\xb0\x7c\xd7\x82\x60\xfb\x5b\x18\xdf\x06\xb6\xf7\x5b\xf7\x46\x9c\xd9\xd0\xa8\xf7\x3a\x19\xc9\xf7\xb7"
+"\x21\x1d\x4e\xfb\xb4\x73\xfb\x06\x57\x59\xfb\x02\x7d\x19\x0e\xfc\x58\xf7\xc8\xf9\x58\x15\x2d\x06\x76\x27\x05\x88\x7b\x89\x7a\x7c"
+"\x1a\x59\xa4\x6e\xb9\x87\x1e\x93\xb1\x05\x72\x90\x81\x98\xa8\x1a\x96\x8c\x96\x90\xa0\x1e\xbc\x06\x0e\xfb\xe9\x67\x1d\xa2\xf7\x07"
+"\xd0\xca\x5c\x1d\xf7\x16\xf7\x6c\x23\x1d\xfb\x71\xf9\x06\xfa\x25\x15\xfb\xbb\xfd\xa8\xfb\x02\xf8\x20\xfb\x37\x42\x96\x6a\xf3\xb9"
+"\xf7\x1c\xfc\x85\xf7\xf4\xfa\x44\x05\x0e\xfb\xe9\x67\x1d\xa3\xf7\x07\xcf\xca\x5c\x1d\xf1\xcf\x2a\x1d\xfb\xe9\xf7\x49\x21\x0a\xfb"
+"\x04\xfc\xa0\x20\x0a\xc5\xf7\xa4\xa2\xf7\x06\xd0\xcb\x5c\x1d\xfb\x5f\xfc\xdc\x35\x1d\x31\xf8\xfe\xf8\x0d\x15\xfc\x8d\x06\x4e\xfb"
+"\xb7\x05\xd1\x06\xb9\xf7\x6f\x05\xf8\x47\x06\x0e\x26\x98\xfb\x6e\x15\xdf\x06\xc5\xf7\xa5\x05\x56\xa9\xbb\x72\xd3\x1b\xdf\xd3\xb0"
+"\xce\xbe\x1f\xbf\xd0\xa9\xe6\xe4\x1a\xf7\x13\x3c\xde\xfb\x0f\x47\x48\x6f\x5a\x5a\x1e\x59\x59\x76\x5a\x71\xfb\x0d\x08\xf7\xac\xf7"
+"\x6f\x15\xd3\xb5\x5b\x39\x46\x75\x40\x66\x55\x1f\x5b\x6a\x54\x6c\x54\x1b\x44\x61\xbf\xe1\xc5\xa4\xde\xac\xbc\x1f\xbc\xab\xc2\xa9"
+"\xc3\x1b\x0e\xfb\x42\x7f\x1d\x8e\xf7\xfe\x23\x1d\xfb\x42\xf7\x92\x74\x15\xd0\x8e\xb5\x96\xb6\xa5\x08\xbf\xab\xac\xc7\xcb\x1a\xc8"
+"\x6a\xab\x33\xa1\x1e\x3f\x9e\x05\x53\x99\x6e\x9f\xa5\x1a\x9f\x97\xa4\x9d\x9c\x44\x0a\x1f\x85\x07\x86\x07\x8a\x80\x20\x0a\x90\xa0"
+"\x8c\x94\x98\x1a\xd1\x49\xbb\x29\x3c\x1d\x43\xbd\x61\xf1\x7e\x1e\x65\x45\x98\x85\x91\x8c\x8b\x8b\x90\x8c\x19\x8d\x96\x8b\x8b\x90"
+"\x1b\x9c\x99\x81\x7f\x6b\x71\x74\x66\x6f\x73\x92\xa1\x61\x33\x1d\xbf\xa7\x83\xb2\x1b\xdf\xc7\xb8\xcb\x57\x0a\x0e\xfb\x42\xf8\x96"
+"\xf8\x0e\x15\x90\xa0\x8c\x94\x98\x1a\xd1\x48\xbb\x2a\x3c\x1d\x3b\xd0\x5b\xf7\x09\xf7\x29\xec\xd8\xf7\x0b\x5a\x0a\xa3\x9d\x9d\x44"
+"\x0a\x1f\x85\x07\x86\x07\x8a\x80\x05\x40\xf7\xff\x24\x1d\xfb\x42\x7f\x1d\xfb\x83\xfc\x4a\xb0\x1d\xfb\xd4\xf7\x73\xe0\x1d\xf7\x60"
+"\xf7\x94\x15\x41\x06\x55\xfb\x94\x05\xc4\x06\x0e\x44\xf8\x71\xf8\xa0\x15\x96\x6d\x73\x8f\x6c\x1b\x39\x3d\x66\x4b\x59\x1f\x58\x4b"
+"\x6a\x25\x31\x1a\xfb\x11\xda\x3b\xf7\x0f\xde\xd6\xaf\xcc\xbf\x1e\xbb\xc7\xae\xf5\xde\x1a\xbd\x7d\xb1\x6b\xae\x1e\xf7\x0b\x2d\x1d"
+"\xfb\xb8\x4d\xa4\x1d\x0e\xf7\xef\xf8\x93\xf9\x6e\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7"
+"\x37\xf7\x36\xf7\x5f\xf7\x5e\xfb\x37\xf7\x37\xfb\x5e\x1f\x5a\x04\xf7\x43\xf7\x21\xfb\x21\xfb\x43\xfb\x44\xfb\x21\xfb\x20\xfb\x45"
+"\xfb\x43\xfb\x1f\xf7\x22\xf7\x47\xf7\x3e\xf7\x23\xf7\x21\xf7\x41\x1f\xfb\x01\xfb\x37\x9d\x0a\xfb\x14\xfb\x00\x15\x92\x36\x96\x62"
+"\xa9\x5e\x08\x4c\xb5\xcb\x6b\xde\x1b\xd8\xc7\xa6\xc1\xb5\x1f\xaf\xba\x9a\xb8\x92\xe8\x80\x59\x80\x75\x71\x6d\x08\x54\x5b\x4f\x71"
+"\x3a\x1b\x3a\x4f\xa5\xc2\x5b\x1f\x71\xa9\x80\xa1\x80\xbd\x08\xf7\xee\xf7\x00\x9d\x0a\x0e\xfb\x23\xf7\xc0\xf7\x99\x15\x7f\x07\x44"
+"\x6b\x45\x5a\x66\x1e\x6c\x62\x56\x7a\x57\x1b\x7e\x74\xf8\x77\xa2\x06\xfb\x32\x91\x3c\xe3\x8e\xf7\x3d\x08\x35\xb9\xb6\x6d\xda\x1b"
+"\xcd\xc4\xca\xd4\xd0\x73\xb0\xfb\x01\xef\x1f\xfb\x02\xf1\x7a\xa5\x63\xf7\x09\x7c\x30\x4d\x31\x23\x38\x08\x3c\x49\x67\x51\x4c\x1a"
+"\x40\xc8\x4d\xd4\xb4\xb4\x9c\xa9\xac\x1e\x9e\x9d\x96\x9a\x9c\xb0\x08\x0e\xf7\xd6\xf9\x63\xf9\x7e\x15\xfc\x80\x45\x06\xf7\x61\xfb"
+"\xf5\xfb\x61\xfc\x16\x05\x44\xf8\x87\xf7\x6b\x43\x07\x88\xfb\x23\x05\xfb\xe3\x06\xf7\x60\xf8\x16\xfb\x5f\xf7\xf1\x05\xf7\xdb\x06"
+"\x8f\xfb\x22\x05\xd2\x06\x0e\xf7\x87\xf7\x94\xf8\xa3\x15\x73\x74\x6c\x42\x67\x1a\xfb\x10\x4f\xf7\x10\x06\x68\x9c\x60\xb0\x54\x1e"
+"\x34\x34\xb4\x62\xe3\xe2\x9d\x78\xa1\x7e\xa1\x86\x19\xce\x7a\x8e\x8a\x05\xfb\x0f\xc6\xf7\x0f\x07\x8f\x8c\xb2\x95\xa5\x91\x8d\x8c"
+"\x19\x96\x90\x9e\x96\xab\xa0\xe3\x34\x18\xb4\xb4\x34\xe2\x9d\xa6\x99\xa4\x8f\x96\x19\x8e\x92\x90\x9f\x96\xb6\x08\xf7\x0f\xc7\xfb"
+"\x0f\x06\x81\xb3\x85\xa2\x88\x92\x87\x96\x7d\xa4\x79\xa6\xe2\xe1\x18\x62\xb4\x33\x35\x6d\xa6\x7e\x91\x31\xa1\x19\xf7\x0e\x50\xfb"
+"\x0e\x07\x88\x8a\x48\x79\x84\x89\x77\x7f\x68\x74\x19\x33\xe2\x62\x62\x05\xf7\xba\x50\x15\xef\xde\x36\x26\x24\x38\x37\x24\x22\x3a"
+"\xdd\xf5\xf3\xde\xdc\xf5\x1f\x0e\xfb\xc0\xf7\x25\x16\xdf\x25\x1d\x05\xf7\x21\x2d\x1d\xfc\x02\x2a\x0a\xf7\x21\x06\x0e\xfc\x20\xf8"
+"\x02\x21\x0a\x33\x06\xa9\xf7\x24\x21\x1d\x6d\xfb\x24\x05\x43\x06\x7d\x48\x05\xd2\x06\x7a\x37\x05\x4d\x06\x80\x56\x05\xc8\x06\x5a"
+"\xfb\x7d\x05\x88\x80\x8a\x7f\x83\x1a\x5a\xad\x6d\xc2\xa0\xa9\x8e\x8f\x9a\x1e\x9a\x5b\x0a\x7c\x97\x9a\x8c\x1f\x8e\x8c\x8f\x8c\x92"
+"\x1e\xbc\xf7\x7a\x05\xdd\x06\x96\xc0\x05\x3a\x06\x9c\xdf\x05\xe4\x06\x0e\xfb\xf9\xf8\x01\x6f\x0a\xb3\xf7\xec\x35\x1d\xfc\x20\xf7"
+"\x39\x76\x15\x8a\x94\x90\x8a\x92\x1b\xa0\xa8\x8e\x8f\x9b\x1f\x9a\x5b\x0a\x7d\x96\x9b\x8d\x8c\x91\x8c\x91\x1f\xd9\xf8\x03\x05\xe4"
+"\x06\x99\xce\x05\xb4\x1d\x80\x8a\x81\x81\x1a\x6c\x95\x77\xa2\x7e\x1e\x5e\x37\x98\x85\x90\x8c\x8b\x8b\x91\x8c\x19\x8d\x95\x8c\x6d"
+"\x1d\x6f\x72\xcc\x1d\xb9\xca\xa7\x6d\xa2\x66\x87\x87\x8b\x89\x7e\x1f\x0e\xfb\x18\xf8\x37\xf9\x7d\x15\x55\x57\x78\x69\x5f\x1f\x4f"
+"\x5a\x68\x4d\x6b\xfb\x0b\x08\x6c\xfb\x03\x78\xfb\x07\x48\x1a\xfb\x09\xd2\x40\xf7\x04\xcb\xbf\x9e\xb2\xb9\x1e\xbf\xb8\xab\xc9\xab"
+"\xf7\x06\x08\xaa\xf7\x03\x9f\xf7\x09\xcd\x1a\xf7\x0b\x43\xd7\xfb\x05\x1e\xfb\x61\xfb\xde\x15\xa5\xf2\x9a\xb1\xab\xb8\x08\xb6\xa9"
+"\xb9\xa3\xbd\x1b\xd1\xb2\x5e\x3c\x6d\x87\x6d\x7f\x46\x1f\x7c\x48\x15\x76\x2e\x7d\x5a\x7a\x66\x08\x3f\x67\x56\x63\x47\x1b\x47\x64"
+"\xb8\xd8\xb3\x91\xb9\x9d\xe2\x1f\x0e\xfb\xe9\xf7\xb7\xf9\x9f\x2b\x1d\x58\x1d\xfb\x1e\xf9\x6d\x4e\x0a\x4c\x0a\x81\xf9\x78\x40\x0a"
+"\x4c\x0a\xf7\x2c\xf9\x4c\x36\x1d\xfb\x0e\xf8\xc4\x3f\x15\xfc\xeb\x06\x80\x59\x05\xf8\xeb\x06\x7e\x4f\x6b\x1d\xfc\x20\x0e\xfb\xe9"
+"\xcb\x1d\x4c\x48\x1d\xfb\x03\x4f\x35\x1d\xfc\x20\xf8\x02\x86\x0a\x82\x7f\x1a\x5a\xad\x6d\xc2\x9f\xa9\x8e\x8f\x9a\x1e\x9b\xd4\x05"
+"\x84\x6b\x87\x8a\x7e\x1b\x76\x7d\x96\x9b\x8f\x8c\x90\x8c\x90\x1f\xd9\xf8\x03\x05\xe3\x06\xfb\x8c\xfc\x99\x35\x1d\xfb\xe9\xa5\x0a"
+"\xfc\x20\x58\x0a\x88\x81\x16\xf9\x47\x06\xfb\x22\xf9\x6d\x05\x27\x06\xfb\xbf\xfd\x1b\x15\xf7\xd9\xf8\xaa\xee\xfc\xaa\x05\x0e\xe2"
+"\xab\x16\xf7\xb4\x20\x1d\x2f\xca\x6a\xc5\xf0\x1a\xf7\x5d\xf7\x17\xf7\x2f\xf7\x3f\xf7\x0b\xdb\x3c\xfb\x0b\x37\x6b\x31\x52\x41\x1e"
+"\x61\x55\x61\x6a\x35\x5e\x7a\x39\x18\xf7\xb4\x20\x1d\xfb\x50\x06\xf7\x33\xce\xe8\xf7\x1c\xf7\x38\x1a\xf7\x45\xfb\x07\xf7\x08\xfb"
+"\x44\xfb\x05\xfb\x01\x58\x35\x43\x1e\x4c\x41\x64\xfb\x02\x26\x1a\x4c\x9f\x4b\xaf\x5b\x1e\x9d\x72\x9a\x7d\xad\x73\x08\xfb\x55\x06"
+"\x0e\xfb\x12\xf8\x92\x21\x0a\x4e\xfb\xaf\x7d\x47\x7a\x69\x65\x68\x19\x6a\x69\x63\x7a\x64\x1b\x59\x64\xa9\xb3\x91\x8e\x9c\x8f\x9f"
+"\x1f\xd7\xf7\xf9\x21\x1d\xfb\x32\xfd\x7a\x05\xde\x06\xbe\xf7\x85\x05\x6a\xa8\xa6\x7e\xb6\x1b\xcb\xc6\xac\xca\xbb\x1f\x7b\x42\x05"
+"\xd6\x06\xf7\x04\xf8\xa0\x05\x0e\xfb\x50\xf8\x07\xfb\x6e\x15\xd3\xf7\x12\x96\xa3\xb3\x1a\xa3\x82\x9d\x78\x9a\x1e\x7f\x96\x8b\x8b"
+"\x4e\xa2\x55\xa0\x18\x46\xa6\x82\x8f\x78\x9c\x08\x71\xa1\x7e\xae\xb7\x1a\xf7\x0c\xec\xf7\x01\xf6\xc9\xb5\x68\x57\x84\x8a\x7f\x89"
+"\x7f\x1e\xe3\x06\x8d\x9b\x8c\x9a\x95\x1a\xe7\x41\xc9\xfb\x01\x39\x42\x6b\x4e\x54\x1e\x54\x4f\x68\x33\x3b\x1a\x2e\xbd\x47\xe9\x69"
+"\x1e\xe2\x6c\x05\xbc\x79\x96\x83\x78\x1a\x74\x82\x78\x3f\xfb\x0f\x1e\x0e\x84\x27\x0a\xf7\xad\xf9\xed\x2e\x0a\xb4\x5b\x1d\xf7\x93"
+"\xf7\x66\x24\x0a\x0e\xf8\x14\xf9\x78\x24\x0a\xf6\xfb\xfa\x31\x0a\x3e\x0a\xf7\x43\xf7\x6c\x24\x0a\x0e\xfb\x1c\xf7\x9a\xf8\x32\x15"
+"\xbd\xf7\x7d\x05\xf7\xfc\x20\x1d\xfc\x5a\x06\x48\xfb\xcf\x05\x5c\x06\x79\x39\x05\xbb\x06\x44\xfb\xe0\x05\xe9\x06\xd2\xf7\xe0\x05"
+"\xf7\x94\x20\x1d\x0e\xfb\xb1\xf7\x74\xf7\xd7\x15\xa6\xf7\x13\x05\xf7\x7c\x2d\x1d\xfb\xd1\x06\x61\xfb\x5d\x05\x65\x06\x7c\x41\x05"
+"\xb0\x06\x56\xfb\x8d\x05\x29\x0a\xf7\x2b\x2d\x1d\x0e\xf7\xf5\xf8\x4d\x5e\x0a\xf7\x07\x06\xf7\x2b\xfb\xed\x05\xbf\x06\x68\xfb\x33"
+"\x05\xe8\x06\xbf\xf7\x85\x05\x2b\x06\xfb\x19\xf7\xc2\xf7\xaa\xf7\xed\x05\x23\x06\xfb\x88\xfb\xc2\x05\xfb\x03\x06\xcb\xf7\xc2\x05"
+"\x2d\x06\x4b\xfb\xc2\x05\xfb\x03\x06\xfb\x08\xf7\xc2\x05\x22\xe2\x1d\xf4\x06\xf7\xbd\xf7\xed\x05\xf7\x03\x06\x0e\xf7\x25\xf7\xf3"
+"\x16\x29\x0a\xf7\x00\x06\xea\xfb\x8d\x05\xb6\x06\x6c\xfb\x35\x20\x0a\xb9\xf7\x7f\x05\x3e\x06\x3d\xf7\x68\xf7\x42\x71\x1d\x29\x41"
+"\x1d\x61\xfb\x5d\x05\xfb\x01\x06\x4d\xf7\x5d\x05\x2e\x06\xd5\xfb\x82\xfb\x78\xfb\xb2\x05\xf2\x06\xf7\x5d\xf7\x8d\x05\xed\x06\x0e"
+"\x4f\xf7\xda\x74\x15\xd3\x8e\xbf\x9d\xba\xb0\x08\xc9\xbd\xb3\xdb\xda\x1a\xd2\x8d\x1d\x5f\x77\x5a\xbd\x1d\x2b\x06\x86\x71\x89\x7d"
+"\x76\x1a\x22\xd2\x44\xf7\x06\x82\x1e\x65\x45\x98\x85\x90\x8c\x8b\x8b\x91\x8c\x19\x8d\x95\x8c\x6d\x1d\x6e\x73\x93\xa0\x62\x33\x1d"
+"\xbe\xa7\x5d\x0a\x87\x8b\x89\x7f\x1f\x0e\xfb\x65\xf7\x96\x75\x15\xf7\x01\x94\xdf\xdf\xef\x1a\xba\x77\xab\x5f\xa2\x1e\xd1\xab\xac"
+"\xb6\xc8\x1a\xd8\x4d\xc0\x32\xfb\x01\x3d\x46\xfb\x0a\x74\x1e\xe4\x06\xd4\x99\xc9\x1d\x6b\x81\x77\x1b\x67\x06\x7c\x41\x05\xae\x06"
+"\xc1\xab\x71\x5f\x4e\x57\x5c\x46\x57\x6e\xa2\xb4\x93\x8c\x93\x8d\x93\x1f\x8f\xa1\x05\x34\x06\x87\x75\x05\x88\x80\x8a\x80\x82\x1a"
+"\x3d\xbf\x5b\xe8\x83\x1e\x65\x46\xb1\x1d\x93\xa0\x62\x33\x1d\xbf\xa6\x39\x0a\x87\x87\x8b\x89\x7e\x1f\x0e\x83\xdb\x16\xc0\x0a\xd6"
+"\x06\xf7\x1a\xfb\xed\x05\xc5\x06\x68\x32\x1d\xc0\xf7\x8c\x05\x25\x06\xfb\x1a\xf7\xc2\xdd\x1d\x05\x53\x06\xcb\xf7\xc2\x05\x2d\x06"
+"\x0e\xfb\x1b\xd2\x16\x29\x0a\xc7\x06\xea\xfb\x8d\x05\xbb\x06\x68\xfb\x33\x20\x0a\xbe\xf7\x7d\x05\x3d\x06\x3d\xf7\x68\xf7\x42\xf7"
+"\x82\x05\x2a\x75\x1d\x4f\x41\x1d\x0e\x53\xf7\xd1\xf8\x3f\x15\x57\x06\xcb\xf7\xc2\x05\x2d\x22\x0a\xd4\xf7\xed\x05\xbf\x06\x65\xfb"
+"\x4b\x05\xc7\x06\xb1\xf7\x4b\x05\x8d\x06\xf7\x2b\xfb\xed\x05\xf3\x06\xfb\x3e\xf8\x14\xdd\x1d\xb2\xf7\x4c\x05\x4f\x06\x0e\xfb\x3d"
+"\xf7\xa6\xf7\xd7\x15\x59\x06\xb5\xf7\x5d\xe1\x1d\xc0\xf7\x8d\x05\xbd\x06\x70\xfb\x14\x05\xc1\x06\xa6\xf7\x14\xe9\xfb\x8d\x05\xed"
+"\x06\x21\xf7\xb2\xf7\x42\xf7\x82\x05\x2a\x06\xfb\x27\xfb\x5d\xa6\xf7\x14\x05\x55\x06\x0e\x36\xf7\x5f\xf9\x1b\x15\xfb\x1d\xfd\x1b"
+"\x05\x9e\x1d\xfb\xfe\x26\x0a\x0e\xfb\x5e\xf7\x2a\xf8\x56\x15\x34\x1d\x29\x0a\xca\x06\xea\xfb\x8d\x05\xe9\x06\x21\xf7\xb2\xf7\x43"
+"\x71\x1d\x54\x06\xb6\xf7\x5d\x05\xfb\xb9\x2a\x0a\x0e\xbb\xf8\xff\xf7\xe0\x15\x44\xfb\xe0\x05\xc3\x06\x68\x32\x1d\xbf\xf7\x8c\x05"
+"\x53\x2e\x1d\x2d\x06\x48\xfb\xcf\x05\xfc\x0a\x06\xce\xf7\xcf\x05\x2e\x22\x0a\xd2\xf7\xe0\x05\x0e\xfb\x10\xa8\x0a\xad\x06\x69\xfb"
+"\x35\x20\x0a\xbc\xf7\x7f\x05\x69\x25\x1d\x9f\x0a\xbb\xf8\x0b\x74\x15\xf7\x42\x92\xf5\xe0\xdb\xf7\x59\x8f\x1d\x3d\x2c\x59\xfb\x1d"
+"\xfb\x10\x1a\x30\xaa\x3f\xc5\x5b\x1e\xb0\x6d\xb0\x7c\xc7\x85\x65\x45\x18\x60\x1d\x93\xa0\xad\x0a\xbe\xa7\x5d\x0a\x87\x8b\x89\x7f"
+"\x1f\x0e\xfb\x42\xf7\xa9\x74\x15\xf7\x13\x92\xdd\xd0\xab\xf7\x13\xa6\x0a\x45\x60\x3f\x0a\xdf\x06\x8c\x9a\x05\x8c\x9a\x8c\x96\x8e"
+"\x1a\xac\x62\x1d\x4f\xa4\x50\xb4\x68\x1e\xa5\x75\xa7\x7f\xb3\x87\x65\x45\x5d\x1d\xbf\xa6\x39\x0a\x87\x87\x8b\x89\x7e\x1f\x0e\x84"
+"\x2f\x1d\x0e\xfb\x42\xf8\x8a\x21\x0a\xfb\x77\xfc\x2c\x56\xf8\x2c\x05\x32\x06\xd7\xfc\xa0\x5c\xfb\x6e\x05\xdf\x06\xba\xf7\x6e\xf7"
+"\xbe\xf8\xa0\x05\x0e\x84\xf8\x47\xf7\x72\x15\x98\xcb\xf8\x04\xf8\x4f\x05\xfb\x03\x06\xfb\xb4\xfb\xfa\xfb\x1d\xf7\xfa\x05\xfb\x04"
+"\x06\xf7\x4e\xfc\x4f\x7e\x4b\x05\xfb\x2f\x06\x79\x37\x05\xf7\x2f\x06\x6d\xfb\x1e\x05\xe9\x06\xa9\xf7\x1e\x05\xf7\x28\x06\x9d\xdf"
+"\x05\x0e\xfb\x42\xf7\xb8\x89\x15\x8c\x8d\xf7\xbe\xf8\xa0\x05\x32\x06\xfb\x77\xfc\x2c\x56\xf8\x2c\x05\x32\x06\xd7\xfc\xa0\x8a\x89"
+"\x05\xfb\x0d\x06\x7f\x52\x05\xf7\x0d\x06\x69\xfb\x33\x20\x0a\xad\xf7\x33\x05\xf7\x0b\x06\x97\xc4\x05\x0e\xae\xbe\x0a\xfb\x03\x06"
+"\xfb\x8d\xfb\xb2\xfb\x12\xf7\xb2\x05\xfb\x05\x06\xf7\x3b\xfb\xf7\xfb\xe6\xfc\x0a\x05\xf7\x05\xba\x0a\xca\x06\x68\x32\x1d\xbf\xf7"
+"\x8c\x05\x29\x06\x0e\xfb\x27\xf7\xf2\xf7\xa1\x15\xf7\x7c\xf7\x93\x05\x2c\x06\xfb\x43\x89\x0a\xb3\x06\x69\xfb\x33\x20\x0a\xbc\xf7"
+"\x7d\x05\x38\x06\x0e\xa0\xf8\x9d\x16\xc3\x06\x67\xa9\x1d\x2d\x06\x3c\xfc\x06\x05\x77\x3b\x59\x83\x4f\x1b\x21\x53\xa8\xc1\x91\x8c"
+"\x95\x8d\x94\x1f\xc4\x1d\xd9\x56\xf7\x1f\xce\xd3\x95\x9d\xd6\x1e\x0e\xfb\x3e\xf7\xf4\x16\xad\x06\x67\xfb\x33\x20\x0a\xbe\xf7\x7d"
+"\x05\x69\x25\x1d\x21\x1d\x55\xfb\x94\x05\x7d\x5c\x64\x85\x63\x1b\x56\x6e\xa0\xb2\x95\x8b\x8f\x8d\x93\x1f\xc3\x1d\xc4\x64\xe1\xbb"
+"\xb6\x94\x9f\xbd\x1e\x0e\xa0\xf8\x39\xf7\x8f\x15\xc5\x90\xbd\x93\xbe\x98\x50\xfb\xa9\x18\xe9\x25\x0a\x2d\x06\x3c\xfc\x06\x4b\x7a"
+"\x5e\x84\x59\x88\x19\xbb\xf7\x75\x05\x4f\x06\x5b\xfb\x75\x05\x32\x91\x5f\xa6\xbc\x1a\x91\x8c\x95\x8d\x94\x1e\xc4\x1d\xd3\x59\xf7"
+"\x20\x88\x1e\x6d\xfb\x21\x05\xc7\x06\x0e\xfb\x3e\xf7\xc6\xf7\x43\x15\xab\x90\xa2\x92\xac\x98\x61\xfb\x5c\x18\xdf\x96\x0a\x6c\x82"
+"\x71\x86\x6d\x87\x19\xa5\xf7\x0d\x05\x55\x06\x71\xfb\x0e\x05\x5e\x8f\x75\x9f\xae\x1a\x95\x8b\x8f\x8d\x93\x1e\xc3\x1d\xc0\x66\xe3"
+"\x89\x1e\x77\x25\x05\xc1\x06\x0e\xa0\xf7\xca\x36\x0a\xd9\xf8\x04\x05\xa0\xde\xc7\x94\xc6\x1b\xf5\xbb\x71\x54\x88\x1f\x83\x89\x82"
+"\x89\x81\x1e\x4e\xfb\xb6\x05\xe9\x06\xc9\xf7\xbb\x05\x8e\x98\x8d\x9a\x93\x1a\xb9\x73\xb5\x63\xa4\x1e\xa5\x62\x5a\x95\x3b\x1b\x3e"
+"\x59\x84\x77\x45\x1f\x0e\x20\xdd\x16\xdf\x06\xd4\xf7\xed\x05\xd3\xc8\xca\xb1\xc5\x1b\xb7\xa8\x6d\x5f\x7f\x8b\x88\x89\x83\x1f\x3f"
+"\xfb\xfa\x20\x0a\xd7\xf7\xfa\x05\x8f\x9b\x8c\x99\x9b\x1a\xd2\x51\xc4\x41\x4a\x54\x6f\x46\x45\x1e\xc9\xf7\xba\x21\x1d\x0e\xfc\x20"
+"\xf7\xe9\x36\x0a\x0e\x8a\xf8\xa3\xdd\x15\x52\x06\x7c\x39\x69\xfb\x33\x05\xe8\x06\xad\xf7\x33\x05\xc3\x95\x1d\xb5\xbb\x81\xdc\x1b"
+"\xd7\xbd\x92\x9f\xd0\x1f\x0e\xfb\x30\xf8\x08\xd5\x15\x59\x06\x5f\xfb\x7f\x20\x0a\xaa\xf7\x35\x05\xba\x06\x38\x1d\x37\x06\x55\xfb"
+"\x94\x05\x7d\x5c\x64\x85\x63\x1b\x56\x6e\x9f\xb0\x94\x8c\x96\x8e\x97\x1f\xb3\xf7\x4f\x21\x1d\x5d\xfb\x69\x05\x89\x80\x8a\x81\x80"
+"\x1a\x4b\xc9\x5f\xe6\xba\xb0\x93\xa0\xb9\x1e\x0e\xf3\xf7\x10\xf8\x24\x15\x7c\x57\x85\x61\x59\x1a\xfb\x43\xf4\x22\xf7\x44\xf7\x07"
+"\xf4\xb7\xdd\xdb\x1e\xe5\xe8\xc1\xf7\x1b\xf7\x17\x1a\xf7\x43\x22\xf4\xfb\x44\xfb\x31\xfb\x11\x40\xfb\x27\x31\x1e\xe3\x79\x05\xf2"
+"\xcb\xe8\xc2\xf7\x01\x1b\xf7\x14\xd7\x3b\xfb\x1a\x7c\x8b\x82\x89\x76\x1f\x7a\x38\x15\xfb\x37\x56\xfb\x08\x2b\xfb\x24\x1b\xfb\x14"
+"\x3f\xdb\xf7\x1b\x99\x8c\x97\x8d\x9d\x1f\x0e\xb4\x5b\x1d\xf8\x47\xf7\x1e\x53\x1d\xf7\xa7\x06\x0e\x3e\x0a\xf7\xf5\xf7\x1a\x15\xfb"
+"\xa6\x06\x7b\x46\x05\xf7\xa7\x06\x0e\xf3\x95\x0a\xfb\x48\xae\x0a\xe1\xe4\xbf\xf7\x1a\xf7\x16\x1a\xf7\x48\xfb\x00\xf7\x03\xfb\x44"
+"\x1e\xf7\x3e\xfc\x3c\x15\xfb\x34\x5a\xfb\x09\x28\xfb\x21\x1b\xfb\x12\x41\xdb\xf7\x1b\x9a\x8c\x96\x8d\x9d\x1f\x9c\xde\x15\xf7\x36"
+"\xbe\xf7\x07\xec\xf7\x21\x1b\xf7\x12\xd5\x3b\xfb\x1b\x7c\x8a\x80\x89\x79\x1f\x0e\x9a\x1d\xe3\xfb\xd2\x15\x20\x69\x49\x4f\x36\x1b"
+"\x45\x5f\xbc\xda\x97\x8c\x95\x8d\x9c\x1f\x9b\xd5\x15\xf5\xab\xcf\xc8\xe0\x1b\xd2\xb6\x5a\x3a\x7f\x8a\x82\x89\x7b\x1f\x0e\x68\xf9"
+"\x03\xfa\x02\x53\x1d\xf7\xa8\x06\xfc\x65\xfd\xbd\x15\xe3\x06\xc4\xb3\xa5\xcd\xb7\x1f\xf8\x30\xf9\x11\x05\xfb\x06\x06\xfb\xb2\xfc"
+"\x62\x26\xf8\x62\x05\xfb\x00\x06\xf7\x22\xfc\xcd\x69\x51\x72\x78\x61\x8a\x19\x53\x06\x0e\xfb\x42\xf8\x94\xf9\x30\x53\x1d\xf7\xa6"
+"\x06\x8c\x40\x15\xfb\x7b\xfc\x2c\x5b\xf8\x2c\x05\x36\x06\xcd\xfc\xa0\x59\x36\x05\x61\x73\x78\x7d\x69\x1b\x7c\x81\x8d\x94\x78\x1f"
+"\x7b\x3e\x05\x83\xa2\x98\x88\x9f\x1b\xa8\xa9\x94\x9a\xa3\x1f\xa6\x9d\x9c\x9f\xa6\xb9\xf8\x05\xf9\x0e\x18\x0e\xfb\xe9\xf9\x27\xfa"
+"\x1d\x6b\x1d\xf7\x86\xb0\x89\x15\xf7\x69\xaf\x8f\xa5\xc8\x1f\xf7\x05\xbd\xdf\xf7\x33\xf7\x37\x1a\xe1\x70\xd6\x5f\xad\x1e\xa4\x6c"
+"\x5e\x97\x50\x1b\xfb\x08\x38\x6b\x4d\x5e\x1f\x71\x67\x81\x64\x89\x42\xcc\xab\x18\x97\x07\xc1\x9c\xb1\xad\xa2\x1e\x9c\x96\x95\x8e"
+"\xb9\x94\x42\xfc\x1f\x18\x7c\x45\x73\x61\x6e\x81\x08\x77\x06\xd3\x8a\x15\xc8\xbc\x9a\xac\xa1\xf7\x0f\xc2\xf7\xd2\x18\x92\x06\x90"
+"\x06\x9e\x06\xa9\x97\x88\x7f\x9e\x1f\xb3\x72\xa1\x51\x3a\x1a\x20\x73\x34\x5c\x4c\x1e\x64\x59\x58\x6e\x54\x88\x08\xf7\x7b\xfb\x7d"
+"\x15\xce\x06\xad\xf7\x52\x05\x7d\xaa\x97\x88\x9e\x1b\xf7\x06\xee\xf7\x29\xf7\x42\xec\x64\xbd\x3e\x5c\x63\x77\x66\x6d\x1f\x69\x61"
+"\x79\x55\x75\xfb\x0b\x08\xb9\xfb\x00\x15\xae\xf7\x54\x05\xe1\x9b\xad\xbc\xb7\x1b\xb2\xa0\x63\x41\xfb\x20\x56\xfb\x02\x47\x71\x77"
+"\x95\xa1\x79\x1f\x0e\xe9\xa7\x16\xf7\xc2\x06\x9b\xd9\x05\x2d\xc6\x60\xd4\xee\x1a\xf7\x53\xf7\x26\xf7\x34\xf7\x41\xd1\xbb\x74\x58"
+"\xb1\x1e\xa9\x64\x99\x61\x5a\x1a\x2e\x62\x28\x45\x41\x1e\x5f\x5d\x63\x6f\x3d\x65\x7b\x3d\x18\xf7\xc1\x20\x1d\xfb\x5d\x06\xd7\xb2"
+"\xc0\xb3\xb6\xbf\x08\xc6\xd3\xb0\xef\xe6\x1a\xf7\x2f\xfb\x09\xf7\x02\xfb\x39\xfb\x02\x23\x5e\x36\x33\x1e\x3a\x3c\x5d\x21\xfb\x02"
+"\x1a\x25\xb3\x44\xe9\x4e\x1e\xfb\x5e\x06\x0e\xfc\x20\xf8\x78\x34\x0a\x0e\xfc\x20\x58\x0a\xf7\xda\xf8\xa9\xf8\x95\x15\x49\x06\xfb"
+"\x74\xfc\x95\x05\xdb\x06\xf7\x45\xf8\x2d\xf7\x45\xfc\x2d\x05\xdb\x06\x0e\xf7\xda\xf8\xa9\x16\xf7\x74\xf8\x95\x05\x3b\x06\xfb\x45"
+"\xfc\x2d\xfb\x45\xf8\x2d\x05\x3b\x06\xf7\x74\xfc\x95\x05\x0e\xf7\xda\xf8\x8c\xf9\x60\x15\xfb\x60\xfb\x34\xfb\x33\xfb\x5e\xfb\x5b"
+"\xf7\x34\xfb\x33\xf7\x5d\xf7\x5b\xf7\x34\xf7\x34\xf7\x5c\xf7\x59\xfb\x35\xf7\x36\xfb\x57\x1f\xa4\x52\x15\xf7\x23\x7e\xf7\x06\xfb"
+"\x06\x99\xfb\x25\x08\xfb\xa3\x06\xf7\xa4\x52\x15\x82\xfb\x22\xfb\x0d\xfb\x0f\xfb\x22\x80\x08\xf7\xa8\x07\x53\xfb\xa8\x15\xfb\x27"
+"\x99\xfb\x05\xf7\x05\x7d\xf7\x29\x08\xf7\xa6\x06\xfb\xa6\xc4\x15\x99\xf7\x24\xf7\x07\xf7\x06\xf7\x25\x99\x08\xfb\xa4\x07\x0e\x45"
+"\xb6\x16\xf8\x9b\xf8\x9b\xfc\x9b\x06\xf8\x67\xfc\x67\x15\xfc\x33\xf8\x33\xf8\x33\x06\x0e\xb8\xf8\xeb\xf8\xf7\x15\x45\xfb\xa4\x06"
+"\xfb\x05\x86\x5f\x7b\x6b\x1e\x56\x70\x50\x67\x4c\x1b\x54\x54\xa7\xb7\x6e\x1f\x73\xb0\x84\xb7\xf7\x11\x1a\xf7\xa4\x45\xfb\xa1\x07"
+"\xfb\x29\x90\x65\xa6\x5f\x1e\x45\xb5\xd7\x62\xe5\x1b\xde\xd1\xac\xc9\xb8\x1f\xaf\xbc\x91\xaf\xf7\x36\x1a\x0e\x3a\xf8\x27\xf8\x1c"
+"\x15\xfb\x69\x06\x41\xf7\x4d\x05\x2d\x06\xf7\x7d\xfc\xd5\x05\xde\x06\xf7\x7d\xf8\xd5\x05\x2d\x06\x22\xfb\x9d\x15\x3f\xfb\x48\x40"
+"\xf7\x48\x05\x0e\xf8\xe6\x21\x0a\x37\x06\x4c\xfb\xbd\x05\xfb\x00\x74\x45\x45\x35\x1b\x54\x69\xa8\xbb\x93\x8c\x94\x8d\x95\x52\x0a"
+"\x9f\x06\x3c\x6a\x5f\x5d\x5b\x1a\x5b\xb7\x6d\xd2\xa6\x9e\x8e\x92\xa0\x1e\x94\xb8\x05\x85\x7a\x72\x87\x77\x1b\x6d\x72\x9f\xa4\x9f"
+"\x96\x9f\xa3\xa1\x1f\xad\xaa\x98\x95\xa2\x97\x08\x0e\xfb\x10\x44\x1d\x0e\xfb\x10\x44\x1d\xf7\x1c\xf7\x53\x65\x1d\xfb\x10\x44\x1d"
+"\xf7\x2e\xf7\xe3\x15\x78\x30\x8f\x23\x05\xa9\xa8\x1d\xfb\x10\x44\x1d\xf7\x1d\xf7\x93\x2b\x1d\x4c\x0a\xa4\xf9\x86\xd0\x1d\x6c\xa7"
+"\x62\x1f\x83\x5f\x15\xa0\x99\x7d\x77\x70\x7a\x1d\xa6\x1f\x0e\x58\x1d\xf7\x0e\x90\x1d\xbb\x3a\x1d\xdb\xf9\x78\x23\x1d\xbb\x3a\x1d"
+"\x83\xf9\x79\x24\x1d\xbb\x3a\x1d\x97\x53\x0a\xbb\x3a\x1d\x8d\xf9\x78\x24\x0a\x0e\xfb\x77\xf7\x4d\xf9\x23\x15\xf4\x06\x49\x6f\x5f"
+"\x4d\x4a\x1a\x57\xa8\x64\xc4\x73\x1e\x54\x80\x6a\x7c\x68\x6d\x08\x5a\x61\x6f\x4c\x49\x1a\x58\x9d\x60\xac\x72\x1e\xa6\x77\xaa\x81"
+"\xc1\x87\xbd\x87\x18\xd0\x86\x96\x85\x70\x1a\x6b\x81\x76\x3e\xfb\x14\x1e\xe4\x06\xcd\xf7\x04\xa2\xc3\xb8\x1a\x9b\x85\x9a\x82\x96"
+"\x1e\x79\x9f\x74\x93\x52\x91\x5a\x90\x18\x4d\x92\x7c\x8e\x79\x94\x08\x75\x96\x7d\xa6\xab\x1a\xc5\xac\xc3\xc1\xaa\x1e\xa4\xb7\xb9"
+"\x95\xdb\x1b\xbd\x06\x9b\xd5\x05\x5c\x06\xfb\x03\x58\xa6\xc7\xb5\xa8\xbd\xb4\xa6\x1f\xa1\xac\xae\x93\xc5\x1b\xe5\x06\x9a\xd5\x05"
+"\xfc\x07\x06\x0e\xfb\x42\x4d\x0a\xfb\x8a\xf7\x6d\x24\x1d\xfb\x42\x4d\x0a\xfb\x86\xf7\x6c\x2e\x0a\xfb\x42\x46\x1d\x28\xf7\xb7\x15"
+"\xfb\x14\xfb\x28\x05\xc7\x45\x0a\xfb\x42\x46\x1d\x32\xf7\x9e\x23\x0a\xfb\x67\xf7\x80\xf9\x23\x15\xf7\x74\x06\x40\x66\x45\x55\x48"
+"\x42\x08\x27\xfb\x00\x53\xfb\x0f\xfb\x03\x1a\x55\xa3\x5e\xb1\x77\x1e\xa5\x7e\xa4\x85\xc2\x85\xaf\x87\x18\xc4\x85\x96\x85\x73\x1a"
+"\x6e\x7d\x6b\x57\x36\x1e\x83\x7e\x84\x7f\x84\x7f\x08\xe4\x06\xd5\xf7\x13\x99\xac\xbd\x1a\xa5\x81\xa0\x79\x97\x1e\x79\x96\x7b\x8f"
+"\x5b\x91\x64\x90\x18\x44\x93\x8b\x8b\x78\x95\x08\x74\x96\x7e\xa5\xac\x1a\xdf\xc2\xf7\x04\xe4\xec\x1e\xd7\xde\xda\xc7\xf2\xc1\x9b"
+"\xd5\x18\xfb\xec\x06\x0e\x74\xa2\xf8\xa0\x9a\xf7\x52\x97\x6b\x99\x06\xdc\x0a\xe4\x0b\xb3\x8f\x8f\x8e\x8e\x92\x92\x90\x90\x8e\x9d"
+"\x90\x0c\x0c\xf8\xc0\x14\xf9\x36\x15\xb0\x13\x00\xa1\x02\x00\x01\x00\x05\x00\x09\x00\x0e\x00\x13\x00\x1e\x00\x25\x00\x2a\x00\x31"
+"\x00\x6d\x00\x74\x00\x79\x00\x99\x00\x9c\x00\xaa\x00\xaf\x00\xb4\x00\xbe\x00\xda\x01\x07\x01\x26\x01\x2b\x01\x39\x01\x3e\x01\x45"
+"\x01\x4c\x01\x58\x01\xa8\x01\xbb\x01\xcc\x01\xcf\x01\xeb\x02\x04\x02\x0c\x02\x1a\x02\x2b\x02\x30\x02\x3c\x02\x43\x02\x49\x02\x4f"
+"\x02\x5b\x02\x71\x02\x81\x02\x88\x02\x9d\x02\xc1\x02\xc8\x02\xd6\x02\xf8\x03\x1f\x03\x3d\x03\x42\x03\x47\x03\x4c\x03\x51\x03\x5c"
+"\x03\x62\x03\x65\x03\x77\x03\x81\x03\x8a\x03\x8e\x03\x92\x03\xb3\x03\xda\x04\x03\x04\x83\x05\x00\x05\x7c\x05\xf4\x06\x0a\x06\x67"
+"\x06\x87\x06\x92\x06\xc1\x06\xe7\x07\x0b\x07\x4c\x07\x4f\x07\x71\x07\x99\x07\xb5\x07\xd7\x08\x0c\x08\x34\x08\x66\x08\x99\x08\xae"
+"\x08\xb1\x08\xda\x08\xdd\x08\xf8\x08\xfd\x09\x16\x09\x1e\x09\x3d\x09\x43\x09\x4f\x09\x6a\x09\x8c\x09\x9d\x09\xbd\x09\xc4\x09\xd1"
+"\x09\xed\x0a\x09\x0a\x23\x0a\x3e\x0a\x49\x0a\x4e\x0a\x51\x0a\x68\x0a\x77\x0a\x7d\x0a\x93\x0a\xa9\x0a\xbd\x0a\xd2\x0a\xdb\x0a\xe4"
+"\x0a\xf5\x0b\x09\x0b\x1d\x0b\x2a\x0b\x3d\x0b\x50\x0b\x5a\x0b\x5d\x0b\x63\x0b\x6e\x0b\x7e\x0b\x8d\x0b\x9e\x0b\xa8\x0b\xb2\x0b\xc2"
+"\x0b\xd2\x0b\xe2\x0b\xea\x0b\xf1\x0b\xfd\x0c\x01\x0c\x0f\x0c\x1d\x0c\x2a\x0c\x35\x0c\x3e\x0c\x46\x0c\x52\x0c\x5e\x0c\x6a\x0c\x73"
+"\x0c\x7f\x0c\x8b\x0c\x96\x0c\xa1\x0c\xac\x0c\xb7\x0c\xc2\x0c\xcb\x0c\xd2\x05\xdf\x06\x0b\xf8\xa0\x15\x0b\x26\x1d\xe9\x06\x0b\x37"
+"\x0a\xf3\x06\x0e\x15\x21\x06\xf7\x10\xfb\x28\x05\xc1\x06\x0b\x06\xf7\x2f\xf9\x6d\x05\x0b\x06\x7a\x39\x05\x0b\xf7\x93\xf7\xe0\x80"
+"\x0a\x0b\xb8\x1e\xbc\x5a\x3c\xa7\x30\x1b\x7f\x3a\x15\xcf\xcb\x6f\x5f\xad\x1f\xa6\x68\x99\x5c\x4f\x1a\x2f\x6c\x2b\x56\x42\x1e\x3a"
+"\x50\x33\x5d\x2a\x1b\x4a\x4c\xa7\xb7\x68\x1f\x70\xae\x7d\xba\xc6\x1a\xe7\xaa\xec\xc0\xd5\x1e\xda\xc5\xe4\xba\xe9\x1b\x0b\xdf\x06"
+"\xc0\xf7\x8d\x05\x0b\x06\x7b\x41\x05\x0b\xf9\xb5\x22\x1d\x32\x06\xfb\x13\xfc\xea\xfb\x8e\xf8\xea\x05\x23\x26\x1d\xe4\x06\xf7\x12"
+"\xf8\xe3\xf7\x8d\xfc\xe3\x05\xf5\x06\x0b\x4a\x1d\x0e\xf7\xb6\xf8\xa3\x15\x37\x06\xfb\x04\xfc\xa3\x20\x0a\x0b\x15\x21\x74\x1d\x0e"
+"\x06\x9d\xdd\x05\x0b\xf8\xad\x61\x1d\x6f\xd7\x5f\x28\x0a\x0b\x15\x99\xd6\x8e\xa5\xab\x1a\xed\x5f\x1d\xdf\xa1\x8c\x95\x8f\x9a\x1f"
+"\x9d\xd3\x77\x1d\x81\x8a\x84\x89\x7b\x1f\x0e\xf9\x7c\x16\xf7\xe8\xf9\x6d\x05\x23\x06\xfb\x9b\xfc\xe4\x62\xf8\xe4\x05\x2b\x06\xfb"
+"\xb4\xfc\xe4\x7c\xf8\xe4\x05\x27\x06\xab\xfd\x6d\x05\xf1\x06\xf7\xb6\xf8\xe4\xb4\xfc\xe4\x05\x0b\xf9\x75\x22\x1d\xfc\xa1\x26\x0a"
+"\xf8\x2a\x06\xfc\xbf\xfc\xc7\x79\x37\x05\xf8\xc0\x20\x1d\xfc\x4a\x06\xf8\xc0\xf8\xc7\x05\x0b\xf9\x59\x35\x0a\x0b\x15\xfc\xf3\xfd"
+"\x6d\x05\xc5\x06\xf8\xf3\xf9\x6d\x05\x0b\xa0\x0a\xe9\x06\x0b\x15\x23\x06\x75\x24\x05\x0b\x06\xfb\x1e\xfd\x1b\x05\x0b\x83\xb2\x1b"
+"\xe0\xc7\xb8\xcb\xa7\x6d\xa2\x66\x0b\xf9\x96\xf8\x8b\x15\xb9\x1d\x3c\x2c\x5a\xfb\x1d\xfb\x12\x1a\x45\x9f\x4c\xb0\x5c\x1e\x51\xb9"
+"\xca\x70\xe4\x1b\xf5\xe7\xb2\xd2\xcc\x1f\xb2\xb6\xab\xc2\xad\xdc\x08\x29\x06\x72\x52\x7b\x6d\x79\x72\x08\x50\x61\x3f\x66\x3c\x1b"
+"\x23\x46\xdc\xf7\x0d\xe7\xa9\xee\xbe\xd7\x1f\xe5\xc8\xd4\xb6\xe7\x1b\xf0\xbd\x5a\xfb\x00\x93\x1f\x0b\x15\xac\x0a\x44\x45\x36\x1b"
+"\x54\x69\xa8\xbb\x93\x8c\x95\x8d\x94\x52\x0a\x0e\x7e\x0a\xab\x1e\xa3\xa0\x96\xa0\x97\x47\x0a\x81\x62\x74\x4f\x56\x0a\x80\x0a\x0e"
+"\xda\x16\xdf\x06\x95\xbb\xf7\xbc\xf7\xca\x3f\xfb\xfa\x05\x73\x1d\x82\x5f\xfb\xbb\xfb\xc7\xd5\xf7\xf3\x21\x1d\x0b\xbc\xd9\xcb\xa0"
+"\xd7\xac\xbf\x1f\xc6\xb1\xbc\xa9\xc8\x1b\xca\xb2\x68\x52\x85\x8b\x84\x8a\x82\x1f\x0b\x15\x6a\x1d\xc9\x16\x6a\x1d\x0e\xbb\x1d\xf2"
+"\xee\xc3\x28\x05\xcb\x06\x4a\xf7\x2a\x05\x0b\x15\x76\x29\x05\xc2\x06\x50\x80\x73\x6e\x64\x1b\x83\x65\x05\xca\x0b\xd0\x16\x73\x1d"
+"\x0b\x1e\xa2\xa3\xa9\x95\xb7\x1b\xc6\xac\x75\x63\x0b\x06\xf7\x48\xf7\x28\x05\x0e\x15\x6e\x79\x81\x83\x0b\xb7\x08\x53\x06\x63\x0b"
+"\xf8\x06\xf8\xa0\x3b\x1d\xf7\xb8\xce\x3b\x1d\x0b\xf8\xbb\xf7\xf0\x15\x8c\x9a\x05\x8c\x9b\x8c\x96\x8e\x1a\xab\x93\x1d\x46\x5f\x3f"
+"\x0a\x0b\xf8\x14\xf8\xaf\xa0\x1d\xbf\x68\xac\x1e\xac\x6a\x5d\x45\x1d\x0b\xf9\x56\xf9\x6d\x70\x0a\x0b\xf8\x77\x16\xac\x0a\x44\x45"
+"\x36\x1b\x54\x69\xa8\xbb\x93\x8c\x95\x8d\x94\x52\x0a\x0b\x94\x0a\x05\x61\x70\x7c\x81\x64\x1b\x81\x87\x8b\x8f\x6e\x1f\x7b\x40\x05"
+"\x83\x9d\x97\x89\x9e\x1b\xd2\xbe\xac\xd6\xb6\x1f\xf8\x04\xf9\x0e\x05\x0b\x87\x0a\x62\x74\x4f\x56\x0a\x50\x7b\x4a\x6f\x59\x1f\x46"
+"\x65\x55\x67\x46\x66\x1d\x0b\x1f\x98\x64\x7b\x8f\x79\x1b\x71\x6d\x7c\x76\x7b\x1f\x7f\x7c\x83\x7a\x7f\x68\x72\x1d\x91\x95\x89\x87"
+"\x96\x1f\x75\xcb\x9c\x87\xa1\x1b\x0b\x15\x2b\x31\x35\x2e\x49\xbe\x59\xcf\xef\xe2\xe0\xec\xcd\x59\xba\x45\x1f\x7e\x54\x15\xb4\xab"
+"\x6c\x64\x4e\x57\x55\x4f\x60\x6c\xa8\xb5\xc8\xc0\xc0\xc7\x1f\x0b\x1f\xda\xf8\x07\x21\x1d\x35\xfc\x28\x05\x89\x81\x8a\x80\x7e\x1a"
+"\x47\xbf\x62\xe1\xd9\xc4\xa3\xc3\xc5\x1e\x7f\x52\x05\x0b\xf9\x5f\x4a\x1d\x0e\xf9\x79\x41\x0a\x0b\xfa\x3f\x2c\x1d\x0e\x1b\x5a\x6b"
+"\xaa\x0a\xa7\x6d\xa2\x66\x87\x87\x8b\x89\x7e\x1f\x0b\xf7\xb0\xf7\xdf\xbf\x0a\x79\x1d\x0e\xc8\x6a\xab\x33\xa1\x1e\x3f\x9e\x05\x53"
+"\x99\x6e\x9f\xa5\x1a\x9f\x97\x0b\xd4\x05\x83\x6a\x89\x8b\x7e\x1b\x75\x0b\x05\x53\x7f\x7c\x7d\x58\x1b\x85\x0b\x39\x0a\x86\x0b\x16"
+"\xc0\x0a\x0b\xf8\xbc\xbe\x3d\x1d\xa5\x8b\x8b\x96\x1a\xcf\x47\xb8\x21\x4c\x1d\x84\x8a\x84\x6b\x0a\x51\x6c\x51\x1d\xe9\x98\x94\x8c"
+"\xb7\x9a\x08\x0b\x83\x1d\x61\xa7\x73\xbb\x97\x8e\x8b\x91\xa3\x1e\x8d\x91\x8d\x8c\x91\x52\x1d\x52\x6b\xa3\xb5\xac\x9e\xac\xa9\x9d"
+"\x1f\xa3\x9a\xa8\x93\xbd\x92\xe9\x43\x1d\x0b\xf9\x56\xf8\x97\x15\x91\xa7\x8d\x98\x9a\x1a\xb7\x76\xb8\x5a\x1d\x79\x66\x6e\x70\xe6"
+"\x1d\xb4\xe7\x68\x1d\xfb\x0d\xe5\x44\xf7\x2b\xf5\xe2\x92\x1d\x84\x88\x77\x1e\x0b\xf8\xa1\x21\x0a\x7a\x3d\x7c\xac\x81\x99\x75\x9b"
+"\x19\x9e\x71\x6b\x96\x69\x1b\x3e\x3d\x65\x4d\x5a\x1f\x55\x48\x66\xfb\x03\x2e\x1a\xfb\x01\xd2\x3f\xf1\xca\xc5\xa6\xc0\xbe\x1e\x87"
+"\x78\x05\xfb\x1c\x6e\x56\x55\x20\x1b\x47\x63\xa6\xb8\x1f\x91\x07\x93\x37\x07\x8a\x79\x8a\x81\x88\x1a\x3e\xd0\x59\xf7\x00\xdb\xd1"
+"\xa3\xb6\xb8\x1e\xbd\xbb\xa6\xc8\xa6\xf7\x13\xe8\xf8\x4b\x18\xfb\x82\x4d\x15\xcc\xb4\x5b\x40\x4d\x79\x42\x6f\x59\x1f\x4e\x6a\x50"
+"\x65\x4f\x1b\x48\x61\xbc\xdb\xc7\x9b\xcb\xa9\xbf\x1f\xcd\xaf\xc2\xaf\xcb\x1b\x0b\xf8\x44\xf8\x21\x15\x61\xfb\x5c\x80\x59\x7d\x68"
+"\x78\x76\x19\x74\x78\x6f\x7c\x74\x1b\x64\x74\xac\xc4\xf7\x15\xd6\xf7\x25\xf7\x0d\xf6\x1f\x23\x06\x67\x6e\x6c\x67\x6a\x57\x08\x56"
+"\x39\x70\x32\x32\x1a\x22\xbe\x4a\xdd\xc4\xb7\xa6\xc9\xb7\x1e\x93\x71\x91\x80\x96\x7e\x08\x73\x9f\xaf\x7c\xae\x1b\xc0\xc2\xa9\xbd"
+"\xb3\x1f\xbe\xcc\xad\xf5\xec\x1a\xd9\x77\xcf\x64\xc0\x1e\x30\x06\xb5\x4e\x9e\x4d\x41\x1a\x46\x79\x40\x6c\x52\x1e\x5e\x72\x64\x6f"
+"\x66\x1b\x69\x79\xa2\xb6\x9f\x8c\x93\x96\xbd\x1f\xb5\xf7\x5c\x05\x0b\xf9\xad\xf8\x15\x15\xfb\xc4\x06\x79\x39\x05\xf7\x72\x06\x85"
+"\x71\x7c\x49\x6e\x5d\x58\x61\x19\x5f\x55\x51\x76\x46\x1b\x41\x4b\xa7\xb9\x6c\x1f\x73\xae\x7e\xc0\xc4\x1a\xe3\xae\xf2\xc0\xd1\x1e"
+"\xda\xc8\xe1\xb6\xec\x1b\xc8\xbd\x79\x69\xac\x1f\xa5\x70\x95\x71\x8c\x5c\x08\xe6\x92\x06\x8f\x07\x91\x07\xf7\x19\x2a\xde\xfb\x31"
+"\xfb\x08\x29\x63\x3d\x3d\x1e\x2b\x2b\x51\xfb\x1c\xfb\x16\x1a\x2d\xad\x35\xc3\x5d\x1e\x66\xb8\xcd\x76\xcf\x1b\xcc\xd0\x9d\xaa\xc1"
+"\x1f\xa3\x99\x9e\x99\xb1\xab\x8f\x31\x18\xc6\x06\x0b\xab\x9a\x15\xae\x64\xe6\xdc\x05\x57\xbe\xd7\x6f\xe8\x1b\xe4\xdf\xa6\xbd\xce"
+"\x1f\xf7\x08\xe1\xd9\xf7\x39\xf7\x32\x1a\xc3\x7f\xbe\x72\xb6\x1e\xe7\xde\x68\xb2\x34\x3d\x05\xbf\x5f\x36\xab\x2a\x1b\xfb\x05\x2a"
+"\x60\x37\x3b\x1f\x34\x2f\x55\xfb\x18\xfb\x0e\x1a\x4b\x99\x4d\xa3\x61\x1e\xd7\xcf\x15\x7e\xa9\x86\xa5\xb3\x1a\xf7\x72\xf7\x22\xf7"
+"\x42\xf7\x4a\xce\xc8\x72\x60\xaf\x1e\xa7\x5d\x15\x96\x72\x90\x67\x61\x1a\x33\x6b\x28\x57\x43\x1e\x3c\x51\x31\x5c\x2e\x1b\x49\x4e"
+"\xa3\xb4\x69\x1f\x0b\xf8\xbb\xf7\xf0\x15\x8c\x9a\x05\x8c\x9a\x8c\x96\x8e\x1a\xac\x93\x1d\x45\x60\x3f\x0a\x0b\x15\x94\x06\xa2\x06"
+"\xc1\xa4\x7a\x67\x50\x5d\x62\x4b\x5a\x71\xa0\xb3\x93\x8c\x92\x8d\x98\x1f\x4d\x06\x88\x7b\x8a\x82\x7f\x1a\x47\xb6\x66\xdd\xf5\xdc"
+"\xd1\xe7\xb0\x7b\xa1\x66\x98\x1e\xbd\x9f\xa7\xb4\xbf\x1a\xc6\x61\xac\x40\x2e\x50\x5b\x2d\x76\x1e\xc9\x06\x91\xa6\x91\x99\x94\x98"
+"\x08\xa1\x9c\xa9\x98\xac\x1b\xb2\xa3\x79\x6c\x6d\x7e\x72\x76\x80\x1f\x80\x77\x77\x88\x58\x1b\x0b\xf8\xc7\xf7\x7e\x15\x99\xd9\x8e"
+"\xa3\xab\x1a\xec\x5f\x1d\xe0\xa1\x8c\x94\x8f\x9a\x1f\x9d\xd3\x77\x1d\x82\x8a\x83\x89\x7b\x1f\x0b\xf8\x14\xf8\xaf\x96\x1d\x5c\x39"
+"\x4f\x0a\x0b\xf8\x0f\xf8\xaf\x15\x38\x3e\x66\x4b\x58\x1f\x58\x4b\x6a\x25\x30\x1a\xfb\x0f\xda\x3a\xf7\x0d\xe1\xd6\xaf\xcc\xbf\x1e"
+"\xbe\xcc\xac\xef\xe4\x1a\xf7\x13\x3d\xdb\xfb\x10\x1e\x88\x3e\xa4\x1d\x0b\x4d\x1d\xe5\xaf\xb3\x92\x98\xb0\x1e\xaa\x96\x9a\x95\xb5"
+"\xaf\x08\x84\x07\x87\x07\x61\xa7\x73\xbb\x97\x8e\x8b\x91\xa3\x1e\x8d\x91\x8d\x8c\x91\x52\x1d\x0b\xf8\x7b\xb3\x1d\x96\x8c\x96\x8e"
+"\x97\x1f\x99\xcd\x05\x2d\x06\x7d\x4b\x05\x87\x7a\x89\x7a\x7d\x1a\x60\xa0\x61\xad\x6f\x1e\x75\xa6\xae\xc6\x1d\x0b\xf8\x95\xf7\x6a"
+"\x15\x5e\xfb\x6a\x05\xf8\x76\x20\x1d\xfc\x18\x06\xc0\xf7\x8e\x05\xf7\xf3\x2f\x0a\xfb\xf3\x06\xbc\xf7\x7d\x05\xf8\x07\x20\x1d\xfd"
+"\x02\x06\xfc\x5a\xfd\x6d\x05\xf2\x06\xf7\x16\xf7\x6a\x05\xf7\xb3\xdc\x15\xfb\x82\x06\xf7\x68\xf7\xf4\x05\xef\x06\x0b\x70\x0a\x0e"
+"\x86\x0a\x80\x81\x1a\x5a\xad\x6d\xc2\xa0\xa8\x8e\x8f\x9a\x1e\x9b\x5b\x0a\x7d\x96\x9b\x8e\x8c\x90\x8c\x91\x1f\xd9\xf8\x03\x05\xe4"
+"\x06\x0b\x15\x49\x1d\xd1\x98\x3f\x1d\x83\x67\x85\x60\x7a\x1a\x62\xa2\x59\xab\x6e\x1e\x66\xb4\xcd\x76\xd8\x1b\xf7\x3c\xf7\x15\xe9"
+"\xf7\x26\xaa\x1f\xf7\x01\xf8\x94\x05\x0b\xf7\x8f\xf7\xc9\xa4\x0a\xf5\x4d\xc2\xfb\x0f\x1e\xfb\xc2\x22\x0a\xde\xf8\x1b\x15\xc2\xf7"
+"\x94\x05\xf7\x56\xbe\x1d\xe4\x16\xa3\x1d\x5f\xfd\x1b\x15\xf7\x0d\xf8\xc9\x05\xf7\x3f\x06\xf6\xcb\x4d\x22\x2f\x6c\xfb\x0c\x62\x4c"
+"\x1f\x3b\x58\x3e\x60\x30\x1b\x0b\xf7\x75\x22\x1d\xfb\x2f\xfd\x6d\x05\x78\x1d\xe6\x1b\xbe\xad\x69\x58\x7f\x8b\x8b\x85\x70\x1f\x42"
+"\xfb\xeb\x20\x0a\xdb\xf8\x0c\x05\x8e\x98\x8c\x97\x97\x1a\xda\x59\xba\x36\x40\x5b\x76\x50\x4b\x1e\xc4\xf7\xa2\x05\x0b\x94\x0a\x74"
+"\x64\x7a\x80\x66\x8a\x19\x7f\x06\x81\x06\x7c\x8d\x86\x8b\x86\x8c\x7b\x40\x18\x83\x9d\x96\x89\xa0\x1b\xd1\xbd\xac\xd6\xb7\x1f\xf8"
+"\x04\xf9\x0e\x05\x0b\xf8\x6b\xf8\x0a\x15\xf7\xd7\xf7\xf7\x05\xfb\x06\x06\xfb\x8c\xfb\xb1\xfb\x11\xf7\xb1\x05\xfb\x05\x06\xf7\x3b"
+"\xfb\xf7\xfb\xe7\xfc\x0a\x05\xf7\x07\x06\xf7\x9c\xf7\xc4\xf7\x1a\xfb\xc4\x05\xf7\x07\x06\x0e\x65\x9d\x1b\x95\x91\x93\x97\x90\x88"
+"\x8f\x7a\x9a\x1f\x69\xa6\x53\xd0\x76\xb3\x08\xb3\x75\x86\x92\x83\x1b\x83\x86\x88\x82\x86\x1f\x4f\x27\x7a\x75\x56\x5c\x08\x76\x78"
+"\x8a\x8a\x82\x1a\x81\x92\x84\x94\x9f\x0b\xbc\x1d\x80\x7c\x83\x7b\x7f\x67\x72\x1d\x90\x42\x1d\xcc\x9c\x87\xa1\x1b\xb7\xb6\x0b\x79"
+"\x0a\x0e\xf7\x76\xf7\x8d\x15\xf7\x2e\xf7\x13\xf7\x3c\xfc\x0c\x05\xf7\x02\x06\xfb\x62\xf8\x43\xf7\xfd\xf7\xbe\x05\xfb\x0c\x06\xfc"
+"\x50\xfc\x09\xda\xf8\x09\x05\x2d\x22\x0a\x0b\x7c\x0a\x0e\xf7\x48\x21\x0a\xfb\x13\xfc\xec\x9b\x0a\x8e\x8b\x94\x1b\xf7\x07\xb6\xa6"
+"\xdd\x9d\x1f\xf7\x1a\xf9\x0d\x05\x0b\xf9\x01\x7f\x0a\x0b\x16\xf7\x8f\x9c\x0a\xfb\x3a\x06\xb7\xf7\x66\x21\x1d\x80\xfc\x56\x15\xae"
+"\xf7\x3a\x05\xf7\x38\x06\x0b\x40\x1d\xd6\xbc\xbe\x9e\xa9\x0b\xf7\xe0\x15\x44\xfb\xe0\x05\xe9\x25\x0a\x2d\x06\x48\xfb\xcf\x05\xfc"
+"\x09\x06\xce\xf7\xcf\x05\x2d\x22\x0a\xd2\xf7\xe0\x05\x0b\xa2\x1d\xfc\x41\x06\x0b\x15\xf7\x14\xf7\x28\x05\x4b\x06\x23\x79\x1d\x0b"
+"\xbd\x0a\x45\x4e\x40\x6f\x94\x7d\xac\x74\x1e\x4a\x6f\x69\x5c\x4f\x1a\x4b\xb8\x64\xd3\xea\xdb\xd3\xdf\xaf\x0b\x06\x2a\xfc\x59\x71"
+"\xfb\x07\x4f\x43\x3e\x84\x19\x7a\x39\x05\x9b\x06\xca\x89\xbd\xa2\xc1\xc3\xb7\xba\xa4\xc0\xa2\xf0\xd9\xf8\x05\x18\x0b\xf7\xce\xf9"
+"\x1b\x15\xf8\x09\x38\x0a\xe9\x25\x0a\xfc\xc5\x22\x0a\x0e\x15\xf8\x04\xf8\x4f\x05\xfb\x03\x06\xfb\xb5\xfb\xf9\xfb\x1c\xf7\xf9\x05"
+"\xfb\x04\x06\xf7\x4e\xfc\x4f\x4e\xfb\xb2\x05\xe9\x06\x0b\x21\x0a\xb4\x1d\x81\x8a\x0b\x7e\x0a\xac\x1e\xa2\xa0\x97\xa0\x96\x47\x0a"
+"\x81\x0b\x07\x93\x79\x7a\x8e\x79\x1b\x4a\x52\x55\x4e\x65\xa6\x74\xb7\xba\xb9\xa3\xb3\xa7\x1f\xa0\xa8\x93\xa9\xbc\x1a\x0b\xfb\x52"
+"\x37\xf7\x52\x05\x2c\x06\xf7\x12\xfb\x93\xfb\x81\xfb\xa1\x05\xeb\x06\xf7\x45\xf7\x5d\xe1\xfb\x5d\x05\x0b\x15\x75\x24\x05\xc6\x06"
+"\x39\x7d\x76\x70\x5b\x1b\x83\x65\xcd\x88\xbd\xbc\x9c\xe0\x19\xa5\xf7\x0b\x05\x0e\x06\x49\xfb\xce\x7d\x45\x5e\x55\x55\x7f\x19\x7b"
+"\x41\xf7\x04\x90\xd7\xd8\xa5\xf7\x1b\x19\xbc\xf7\x7d\x05\x0b\x42\x0a\xbb\xbc\xdd\x9c\x1f\x9f\xe8\x05\x0e\xf8\xa0\x91\x0a\x0b\x91"
+"\x0a\x0e\x15\xfc\x51\xf7\x63\x7a\x3e\xf7\xf5\xfb\x37\xfc\x3a\xfb\x38\x7a\x3c\xf8\xa9\xf7\x63\x05\x0e\x78\x1d\xe5\x1b\xbd\xb0\x68"
+"\x5d\x85\x89\x7d\x87\x7a\x1f\x0b\x9e\x0a\x24\x20\x0a\x0b\x84\x6b\x1b\x6f\x6d\x91\x9a\x5f\x1f\x93\x74\x84\x8c\x74\x1b\x64\x66\x80"
+"\x6f\x52\x1f\x0b\xf7\x77\x15\xf7\x11\xfb\x0d\x9d\xdd\x35\xde\xf7\x0d\xdf\x9d\xde\xfb\x45\xfb\x0e\x05\x0b\xf8\x89\x21\x0a\xfb\x7d"
+"\xfc\x2b\x5d\xf8\x2b\x05\x31\x06\xcf\xfc\xa4\x57\x3a\x0b\xf8\xaf\xf9\x79\x15\xfb\x03\x26\x60\x39\x3d\x1f\x34\x30\x55\xfb\x19\xfb"
+"\x12\x1a\x0b\x06\x38\x1d\x37\x06\x55\xfb\x94\x0b\x30\x8f\x23\x05\xa9\x06\xbb\xf3\x0b\x46\x0a\x77\x1b\x81\x70\x91\x94\x71\x1f\x98"
+"\x64\x7b\x8f\x79\x1b\x0b\x15\xfb\x13\xf7\x0d\x79\x39\xe3\x38\xfb\x0f\x37\x79\x38\xf7\x47\xf7\x0e\x05\x0b\xf9\x59\x15\x73\xfb\x03"
+"\x8a\xfb\x1a\x05\xb3\x06\xc2\xf7\x1a\xa3\xf7\x03\x05\x0b\x5c\x0a\x86\x8b\x8d\x7d\x1f\x7c\x44\x05\x88\x92\x0b\x06\xce\xb8\x9b\xaf"
+"\xb0\x1f\xaf\xad\x9f\xbc\xbd\x1a\xd8\x52\xbf\x39\x1e\x0b\x15\x70\x74\x74\x71\x6f\xa2\x74\xa6\xa6\xa2\xa2\xa6\xa6\x74\xa2\x70\x1f"
+"\x0b\xbb\x0a\xf7\x2f\x22\x1d\x37\x06\x75\x0b\xa3\x0a\x0e\x22\x1d\x2d\x26\x1d\x0b\x24\x05\xf3\x06\xf7\x4b\xf2\x15\x23\x06\x0b\xf7"
+"\x66\x15\xfb\x14\xfb\x28\x05\xc7\x06\xf7\x49\xf7\x28\x05\x0e\x21\x1d\x5e\xfb\x67\x05\xfb\x84\x06\xb7\xf7\x67\x21\x1d\x0b\x15\xf7"
+"\x78\x06\xca\xba\x9b\xaf\xb8\x1f\xca\xbd\xaf\xd7\xdc\x1a\x0b\xf8\x56\xf9\x4c\x53\x1d\xf7\xa7\x06\x0e\x08\x37\x06\x39\x6d\x54\x5f"
+"\x43\x1b\x0b\x16\xdf\x06\xd4\xf7\xed\x05\xd3\xc8\xca\xb1\xc5\x1b\xb7\xa8\x0b\xd2\x16\xdf\x06\xbe\xf7\x83\x05\xf7\x84\x06\x59\xfb"
+"\x83\x05\x0b\xef\x05\xce\x06\x96\xc0\x05\x48\x06\xc5\xf7\xa4\x05\x5d\x06\x0b\x9f\xa9\x1f\x90\x07\x93\x07\x0e\xf7\xb5\xbc\x0a\xdf"
+"\x06\x0b\x38\x1d\x37\x06\x4c\xfb\xbd\x05\xfb\x00\x74\x0b\x62\x33\x1d\x0b\xf7\x01\xfb\x02\xf7\x44\xf7\x08\xed\xb4\xdb\xd9\x1e\x0b"
+"\xf7\x1a\xf7\x16\x1a\xf7\x47\xfb\x00\xf7\x03\xfb\x44\x0b\x1e\x87\xb5\x89\xa1\x97\x1a\x9d\x91\x95\x97\x91\x0b\xfb\x60\x05\xfb\x63"
+"\x27\x1d\xf7\x63\x06\x0b\x15\xfc\x77\x27\x1d\xf8\x78\x06\x0e\x06\xcb\xf7\xc2\x05\x2d\x06\x0b\x06\xad\xf7\x31\x05\x2e\x06\x69\xfb"
+"\x31\x05\x0b\x06\xb7\xf7\x64\x05\x33\x06\x5f\xfb\x64\x05\x0b\x15\x35\xfc\x25\x05\xc7\x06\xe1\xf8\x25\x05\x0b\x1e\xa3\xa0\x96\xa0"
+"\x96\x47\x0a\x0b\xf7\xed\x05\xfb\x01\x06\xfb\x87\xfb\xc2\x05\x0b\xda\x69\x1e\x7d\xad\xa6\x87\xd0\x1b\xf7\xac\x0b\x06\xf7\x9d\xf7"
+"\xc4\xf7\x1a\xfb\xc4\x05\x0b\x15\x37\x06\xfb\x03\xfc\xa0\x05\xdf\x06\x0b\xf8\xa0\x15\x37\x06\xfb\x03\xfc\xa0\x05\x0b\xaa\xa1\xaa"
+"\xbc\x1a\xc3\x62\xad\x4a\x36\x0b\xf8\x68\xf8\x0a\x15\xf7\xd6\xf7\xf7\x05\x0b\x15\x23\x06\x75\x23\x05\xf3\x06\x0e\xe9\x06\xd4\xf7"
+"\xed\x05\x0b", 39907
+};
diff --git a/dviware/dvisvgm/src/fonts/NimbusSans-Regular.cff.cpp b/dviware/dvisvgm/src/fonts/NimbusSans-Regular.cff.cpp
new file mode 100644
index 0000000000..3df2473a83
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/NimbusSans-Regular.cff.cpp
@@ -0,0 +1,1040 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData NimbusSans_Regular_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x13\x4e\x69\x6d\x62\x75\x73\x53\x61\x6e\x73\x2d\x52\x65\x67\x75\x6c\x61\x72\x00\x01\x01\x01\x2e"
+"\xf9\xbc\x00\xf9\xbd\x01\xf9\xbe\x0c\x00\xf9\xbf\x02\xf9\xbf\x03\xf8\x18\x04\xfb\x2b\x0c\x03\xfb\x66\xfb\xbf\xfa\x9c\xfa\xc7\x05"
+"\x1c\x1f\x97\x0f\x1c\x1f\xaa\x11\xbe\x1c\x76\x2b\x12\x01\xa5\x02\x00\x01\x00\x08\x00\x0e\x00\x13\x00\x1d\x00\x24\x00\x2b\x00\x35"
+"\x00\x39\x00\x3f\x00\x45\x00\x50\x00\x5a\x00\x5d\x00\x63\x00\x69\x00\x6e\x00\x74\x00\x7a\x00\x84\x00\x8b\x00\x8e\x00\x95\x00\x9c"
+"\x00\xa8\x00\xab\x00\xb3\x00\xb7\x00\xbc\x00\xc2\x00\xcd\x00\xd9\x00\xe3\x00\xe7\x00\xf2\x00\xf4\x00\xfa\x01\x04\x01\x0b\x01\x12"
+"\x01\x16\x01\x22\x01\x2b\x01\x31\x01\x3c\x01\x41\x01\x4d\x01\x53\x01\x59\x01\x5f\x01\x6b\x01\x6f\x01\x71\x01\x77\x01\x7d\x01\x89"
+"\x01\x8b\x01\x91\x01\x9e\x01\xa5\x01\xaf\x01\xb6\x01\xc2\x01\xcd\x01\xd0\x01\xd2\x01\xd5\x01\xdb\x01\xe1\x01\xed\x01\xf0\x01\xf6"
+"\x01\xfe\x02\x09\x02\x15\x02\x1a\x02\x1d\x02\x21\x02\x27\x02\x33\x02\x38\x02\x3e\x02\x4b\x02\x52\x02\x59\x02\x60\x02\x6f\x02\x7b"
+"\x02\x80\x02\x86\x02\x8c\x02\x97\x02\xa0\x02\xa6\x02\xa8\x02\xb3\x02\xb9\x02\xbf\x02\xc9\x02\xcd\x02\xd3\x02\xda\x02\xe3\x02\xec"
+"\x02\xf5\x02\xfe\x03\x07\x03\x10\x03\x19\x03\x22\x03\x2b\x03\x34\x03\x3d\x03\x46\x03\x4f\x03\x58\x03\x61\x03\x6a\x03\x73\x03\x7c"
+"\x03\x85\x03\x8e\x03\x97\x03\xa0\x03\xa9\x03\xb2\x03\xbb\x03\xc4\x03\xcd\x03\xd6\x03\xdf\x03\xe8\x03\xf1\x03\xfa\x04\x03\x04\x0c"
+"\x04\x15\x04\x1e\x04\x27\x04\x30\x04\x39\x04\x42\x04\x4b\x04\x54\x04\x5d\x04\x66\x04\x6f\x04\x78\x04\x81\x04\x8a\x04\x93\x04\x9c"
+"\x04\xa5\x04\xae\x04\xb7\x04\xc0\x04\xc9\x04\xd2\x04\xdb\x04\xe4\x04\xed\x04\xf6\x04\xff\x05\x08\x05\x11\x05\x1a\x05\x23\x05\x2c"
+"\x05\x35\x05\x3e\x05\x47\x05\x50\x05\x59\x05\x62\x05\x6b\x05\x74\x05\x7d\x05\x86\x05\x8f\x05\x98\x05\xa1\x05\xaa\x05\xb3\x05\xbc"
+"\x05\xc5\x05\xce\x05\xd7\x05\xe0\x05\xe9\x05\xf2\x05\xfb\x06\x04\x06\x0d\x06\x16\x06\x1f\x06\x28\x06\x31\x06\x3a\x06\x43\x06\x4c"
+"\x06\x55\x06\x5a\x06\x64\x06\x6b\x06\x74\x06\x7e\x06\x85\x06\x90\x06\x9a\x06\xa3\x06\xac\x06\xb5\x06\xbf\x06\xc6\x06\xcf\x06\xdb"
+"\x06\xdf\x06\xe5\x06\xeb\x06\xf6\x07\x00\x07\x03\x07\x11\x07\x15\x07\x1b\x07\x21\x07\x26\x07\x2d\x07\x3a\x07\x40\x07\x46\x07\x50"
+"\x07\x57\x07\x5e\x07\x61\x07\x68\x07\x6f\x07\x7b\x07\x86\x07\x8f\x07\x92\x07\x9a\x07\xa3\x07\xae\x07\xb4\x07\xb9\x07\xbe\x07\xc4"
+"\x07\xcf\x07\xdb\x07\xe5\x07\xf1\x07\xf5\x08\x00\x08\x05\x08\x0a\x08\x10\x08\x12\x08\x19\x08\x21\x08\x29\x08\x33\x08\x3d\x08\x49"
+"\x08\x55\x08\x5c\x08\x60\x08\x6c\x08\x7d\x08\x86\x08\x8c\x08\x97\x08\x9c\x08\xa8\x08\xb4\x08\xba\x08\xc0\x08\xc6\x08\xd2\x08\xd6"
+"\x08\xdf\x08\xe3\x08\xe8\x08\xec\x08\xf2\x08\xfd\x09\x0b\x09\x11\x09\x1c\x09\x22\x09\x2e\x09\x38\x09\x40\x09\x42\x09\x48\x09\x55"
+"\x09\x5c\x09\x61\x09\x6b\x09\x72\x09\x7e\x09\x88\x09\x93\x09\x9e\x09\xa4\x09\xa7\x09\xa9\x09\xb0\x09\xbc\x09\xca\x09\xcd\x09\xda"
+"\x09\xe0\x09\xe7\x09\xed\x09\xf9\x0a\x06\x0a\x09\x0a\x0f\x0a\x17\x0a\x22\x0a\x2e\x0a\x34\x0a\x39\x0a\x42\x0a\x47\x0a\x50\x0a\x53"
+"\x0a\x56\x0a\x5a\x0a\x60\x0a\x6c\x0a\x71\x0a\x76\x0a\x7c\x0a\x89\x0a\x90\x0a\x9d\x0a\xa4\x0a\xab\x0a\xb2\x0a\xb9\x0a\xc0\x0a\xc7"
+"\x0a\xce\x0a\xd5\x0a\xdc\x0a\xe3\x0a\xea\x0a\xf1\x0a\xf8\x0a\xff\x0b\x06\x0b\x0d\x0b\x14\x0b\x1b\x0b\x22\x0b\x29\x0b\x30\x0b\x37"
+"\x0b\x3e\x0b\x45\x0b\x4c\x0b\x53\x0b\x5a\x0b\x61\x0b\x68\x0b\x6f\x0b\x76\x0b\x7d\x0b\x84\x0b\x8b\x0b\x92\x0b\x99\x0b\xa0\x0b\xa7"
+"\x0b\xae\x0b\xb5\x0b\xbc\x0b\xc3\x0b\xca\x0b\xd1\x0b\xd8\x0b\xdf\x0b\xe6\x0b\xed\x0b\xf4\x0b\xfb\x0c\x02\x0c\x09\x0c\x10\x0c\x17"
+"\x0c\x1e\x0c\x25\x0c\x2c\x0c\x33\x0c\x3a\x0c\x41\x0c\x48\x0c\x4d\x0c\x56\x0c\x5d\x0c\x64\x0c\x73\x0c\x87\x0c\x93\x0c\x98\x0c\x9e"
+"\x0c\xa4\x0c\xaf\x0c\xb8\x0c\xbe\x0c\xc0\x0c\xcb\x0c\xd1\x0c\xd7\x0c\xe1\x0c\xe5\x0c\xe9\x0d\x1f\x0d\x5f\x0d\x6a\x41\x45\x61\x63"
+"\x75\x74\x65\x41\x62\x72\x65\x76\x65\x41\x6c\x70\x68\x61\x41\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x41\x6d\x61\x63\x72\x6f\x6e\x41"
+"\x6f\x67\x6f\x6e\x65\x6b\x41\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x42\x65\x74\x61\x43\x61\x63\x75\x74\x65\x43\x63\x61\x72\x6f\x6e"
+"\x43\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x43\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x43\x68\x69\x44\x63\x61\x72\x6f\x6e\x44\x63"
+"\x72\x6f\x61\x74\x44\x65\x6c\x74\x61\x45\x62\x72\x65\x76\x65\x45\x63\x61\x72\x6f\x6e\x45\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x45"
+"\x6d\x61\x63\x72\x6f\x6e\x45\x6e\x67\x45\x6f\x67\x6f\x6e\x65\x6b\x45\x70\x73\x69\x6c\x6f\x6e\x45\x70\x73\x69\x6c\x6f\x6e\x74\x6f"
+"\x6e\x6f\x73\x45\x74\x61\x45\x74\x61\x74\x6f\x6e\x6f\x73\x45\x75\x72\x6f\x47\x61\x6d\x6d\x61\x47\x62\x72\x65\x76\x65\x47\x63\x69"
+"\x72\x63\x75\x6d\x66\x6c\x65\x78\x47\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x47\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x48\x62"
+"\x61\x72\x48\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x49\x4a\x49\x62\x72\x65\x76\x65\x49\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x49"
+"\x6d\x61\x63\x72\x6f\x6e\x49\x6f\x67\x6f\x6e\x65\x6b\x49\x6f\x74\x61\x49\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x49\x6f\x74"
+"\x61\x74\x6f\x6e\x6f\x73\x49\x74\x69\x6c\x64\x65\x4a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x4b\x61\x70\x70\x61\x4b\x63\x6f\x6d"
+"\x6d\x61\x61\x63\x63\x65\x6e\x74\x4c\x61\x63\x75\x74\x65\x4c\x61\x6d\x62\x64\x61\x4c\x63\x61\x72\x6f\x6e\x4c\x63\x6f\x6d\x6d\x61"
+"\x61\x63\x63\x65\x6e\x74\x4c\x64\x6f\x74\x4d\x75\x4e\x61\x63\x75\x74\x65\x4e\x63\x61\x72\x6f\x6e\x4e\x63\x6f\x6d\x6d\x61\x61\x63"
+"\x63\x65\x6e\x74\x4e\x75\x4f\x62\x72\x65\x76\x65\x4f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x4f\x6d\x61\x63\x72\x6f\x6e"
+"\x4f\x6d\x65\x67\x61\x74\x6f\x6e\x6f\x73\x4f\x6d\x69\x63\x72\x6f\x6e\x4f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x4f\x73\x6c"
+"\x61\x73\x68\x61\x63\x75\x74\x65\x50\x68\x69\x50\x69\x50\x73\x69\x52\x61\x63\x75\x74\x65\x52\x63\x61\x72\x6f\x6e\x52\x63\x6f\x6d"
+"\x6d\x61\x61\x63\x63\x65\x6e\x74\x52\x68\x6f\x53\x61\x63\x75\x74\x65\x53\x63\x65\x64\x69\x6c\x6c\x61\x53\x63\x69\x72\x63\x75\x6d"
+"\x66\x6c\x65\x78\x53\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x53\x69\x67\x6d\x61\x54\x61\x75\x54\x62\x61\x72\x54\x63\x61\x72"
+"\x6f\x6e\x54\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x54\x68\x65\x74\x61\x55\x62\x72\x65\x76\x65\x55\x68\x75\x6e\x67\x61\x72"
+"\x75\x6d\x6c\x61\x75\x74\x55\x6d\x61\x63\x72\x6f\x6e\x55\x6f\x67\x6f\x6e\x65\x6b\x55\x70\x73\x69\x6c\x6f\x6e\x55\x70\x73\x69\x6c"
+"\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x55\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x55\x72\x69\x6e\x67\x55\x74\x69\x6c\x64"
+"\x65\x57\x61\x63\x75\x74\x65\x57\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x57\x64\x69\x65\x72\x65\x73\x69\x73\x57\x67\x72\x61\x76"
+"\x65\x58\x69\x59\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x59\x67\x72\x61\x76\x65\x5a\x61\x63\x75\x74\x65\x5a\x64\x6f\x74\x61\x63"
+"\x63\x65\x6e\x74\x5a\x65\x74\x61\x61\x62\x72\x65\x76\x65\x61\x65\x61\x63\x75\x74\x65\x61\x66\x69\x69\x30\x30\x32\x30\x38\x61\x66"
+"\x69\x69\x31\x30\x30\x31\x37\x61\x66\x69\x69\x31\x30\x30\x31\x38\x61\x66\x69\x69\x31\x30\x30\x31\x39\x61\x66\x69\x69\x31\x30\x30"
+"\x32\x30\x61\x66\x69\x69\x31\x30\x30\x32\x31\x61\x66\x69\x69\x31\x30\x30\x32\x32\x61\x66\x69\x69\x31\x30\x30\x32\x33\x61\x66\x69"
+"\x69\x31\x30\x30\x32\x34\x61\x66\x69\x69\x31\x30\x30\x32\x35\x61\x66\x69\x69\x31\x30\x30\x32\x36\x61\x66\x69\x69\x31\x30\x30\x32"
+"\x37\x61\x66\x69\x69\x31\x30\x30\x32\x38\x61\x66\x69\x69\x31\x30\x30\x32\x39\x61\x66\x69\x69\x31\x30\x30\x33\x30\x61\x66\x69\x69"
+"\x31\x30\x30\x33\x31\x61\x66\x69\x69\x31\x30\x30\x33\x32\x61\x66\x69\x69\x31\x30\x30\x33\x33\x61\x66\x69\x69\x31\x30\x30\x33\x34"
+"\x61\x66\x69\x69\x31\x30\x30\x33\x35\x61\x66\x69\x69\x31\x30\x30\x33\x36\x61\x66\x69\x69\x31\x30\x30\x33\x37\x61\x66\x69\x69\x31"
+"\x30\x30\x33\x38\x61\x66\x69\x69\x31\x30\x30\x33\x39\x61\x66\x69\x69\x31\x30\x30\x34\x30\x61\x66\x69\x69\x31\x30\x30\x34\x31\x61"
+"\x66\x69\x69\x31\x30\x30\x34\x32\x61\x66\x69\x69\x31\x30\x30\x34\x33\x61\x66\x69\x69\x31\x30\x30\x34\x34\x61\x66\x69\x69\x31\x30"
+"\x30\x34\x35\x61\x66\x69\x69\x31\x30\x30\x34\x36\x61\x66\x69\x69\x31\x30\x30\x34\x37\x61\x66\x69\x69\x31\x30\x30\x34\x38\x61\x66"
+"\x69\x69\x31\x30\x30\x34\x39\x61\x66\x69\x69\x31\x30\x30\x35\x30\x61\x66\x69\x69\x31\x30\x30\x35\x31\x61\x66\x69\x69\x31\x30\x30"
+"\x35\x32\x61\x66\x69\x69\x31\x30\x30\x35\x33\x61\x66\x69\x69\x31\x30\x30\x35\x34\x61\x66\x69\x69\x31\x30\x30\x35\x35\x61\x66\x69"
+"\x69\x31\x30\x30\x35\x36\x61\x66\x69\x69\x31\x30\x30\x35\x37\x61\x66\x69\x69\x31\x30\x30\x35\x38\x61\x66\x69\x69\x31\x30\x30\x35"
+"\x39\x61\x66\x69\x69\x31\x30\x30\x36\x30\x61\x66\x69\x69\x31\x30\x30\x36\x31\x61\x66\x69\x69\x31\x30\x30\x36\x32\x61\x66\x69\x69"
+"\x31\x30\x30\x36\x35\x61\x66\x69\x69\x31\x30\x30\x36\x36\x61\x66\x69\x69\x31\x30\x30\x36\x37\x61\x66\x69\x69\x31\x30\x30\x36\x38"
+"\x61\x66\x69\x69\x31\x30\x30\x36\x39\x61\x66\x69\x69\x31\x30\x30\x37\x30\x61\x66\x69\x69\x31\x30\x30\x37\x31\x61\x66\x69\x69\x31"
+"\x30\x30\x37\x32\x61\x66\x69\x69\x31\x30\x30\x37\x33\x61\x66\x69\x69\x31\x30\x30\x37\x34\x61\x66\x69\x69\x31\x30\x30\x37\x35\x61"
+"\x66\x69\x69\x31\x30\x30\x37\x36\x61\x66\x69\x69\x31\x30\x30\x37\x37\x61\x66\x69\x69\x31\x30\x30\x37\x38\x61\x66\x69\x69\x31\x30"
+"\x30\x37\x39\x61\x66\x69\x69\x31\x30\x30\x38\x30\x61\x66\x69\x69\x31\x30\x30\x38\x31\x61\x66\x69\x69\x31\x30\x30\x38\x32\x61\x66"
+"\x69\x69\x31\x30\x30\x38\x33\x61\x66\x69\x69\x31\x30\x30\x38\x34\x61\x66\x69\x69\x31\x30\x30\x38\x35\x61\x66\x69\x69\x31\x30\x30"
+"\x38\x36\x61\x66\x69\x69\x31\x30\x30\x38\x37\x61\x66\x69\x69\x31\x30\x30\x38\x38\x61\x66\x69\x69\x31\x30\x30\x38\x39\x61\x66\x69"
+"\x69\x31\x30\x30\x39\x30\x61\x66\x69\x69\x31\x30\x30\x39\x31\x61\x66\x69\x69\x31\x30\x30\x39\x32\x61\x66\x69\x69\x31\x30\x30\x39"
+"\x33\x61\x66\x69\x69\x31\x30\x30\x39\x34\x61\x66\x69\x69\x31\x30\x30\x39\x35\x61\x66\x69\x69\x31\x30\x30\x39\x36\x61\x66\x69\x69"
+"\x31\x30\x30\x39\x37\x61\x66\x69\x69\x31\x30\x30\x39\x38\x61\x66\x69\x69\x31\x30\x30\x39\x39\x61\x66\x69\x69\x31\x30\x31\x30\x30"
+"\x61\x66\x69\x69\x31\x30\x31\x30\x31\x61\x66\x69\x69\x31\x30\x31\x30\x32\x61\x66\x69\x69\x31\x30\x31\x30\x33\x61\x66\x69\x69\x31"
+"\x30\x31\x30\x34\x61\x66\x69\x69\x31\x30\x31\x30\x35\x61\x66\x69\x69\x31\x30\x31\x30\x36\x61\x66\x69\x69\x31\x30\x31\x30\x37\x61"
+"\x66\x69\x69\x31\x30\x31\x30\x38\x61\x66\x69\x69\x31\x30\x31\x30\x39\x61\x66\x69\x69\x31\x30\x31\x31\x30\x61\x66\x69\x69\x31\x30"
+"\x31\x34\x35\x61\x66\x69\x69\x31\x30\x31\x39\x33\x61\x66\x69\x69\x31\x30\x38\x34\x36\x61\x66\x69\x69\x36\x31\x32\x34\x38\x61\x66"
+"\x69\x69\x36\x31\x32\x38\x39\x61\x66\x69\x69\x36\x31\x33\x35\x32\x61\x6c\x70\x68\x61\x61\x6c\x70\x68\x61\x74\x6f\x6e\x6f\x73\x61"
+"\x6d\x61\x63\x72\x6f\x6e\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x61\x6e\x67\x6c\x65\x72\x69\x67\x68\x74\x61\x6f\x67\x6f\x6e\x65\x6b"
+"\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x69\x6e\x67\x61\x63\x75\x74\x65\x61\x72\x72\x6f\x77\x62\x6f\x74\x68\x61\x72"
+"\x72\x6f\x77\x64\x6f\x77\x6e\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x72\x69\x67\x68\x74\x61\x72\x72\x6f\x77\x75"
+"\x70\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x61\x72\x72\x6f\x77\x75\x70\x64\x6e\x62\x73\x65\x62\x65\x74\x61\x63\x61\x63\x75\x74\x65"
+"\x63\x63\x61\x72\x6f\x6e\x63\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x63\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x63\x68\x69\x63\x69"
+"\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79\x63\x6c\x75\x62\x64\x63\x61\x72\x6f\x6e\x64\x63\x72\x6f\x61\x74\x64\x65\x6c\x74"
+"\x61\x64\x69\x61\x6d\x6f\x6e\x64\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x65\x62\x72\x65\x76\x65\x65\x63\x61\x72\x6f"
+"\x6e\x65\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x65\x6c\x65\x6d\x65\x6e\x74\x65\x6d\x61\x63\x72\x6f\x6e\x65\x6e\x67\x65\x6f\x67\x6f"
+"\x6e\x65\x6b\x65\x70\x73\x69\x6c\x6f\x6e\x65\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x65\x71\x75\x69\x76\x61\x6c\x65\x6e\x63"
+"\x65\x65\x73\x74\x69\x6d\x61\x74\x65\x64\x65\x74\x61\x65\x74\x61\x74\x6f\x6e\x6f\x73\x65\x78\x63\x6c\x61\x6d\x64\x62\x6c\x65\x78"
+"\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x66\x65\x6d\x61\x6c\x65\x66\x72\x61\x6e\x63\x67\x61\x6d\x6d\x61\x67\x62\x72\x65\x76\x65\x67"
+"\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x67\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x67\x64\x6f\x74\x61\x63\x63\x65\x6e\x74"
+"\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x68\x62\x61\x72\x68\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x68\x65\x61\x72\x74"
+"\x68\x6f\x75\x73\x65\x69\x62\x72\x65\x76\x65\x69\x6a\x69\x6d\x61\x63\x72\x6f\x6e\x69\x6e\x66\x69\x6e\x69\x74\x79\x69\x6e\x74\x65"
+"\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x69\x6e\x74\x65\x67\x72\x61\x6c\x74\x70\x69\x6e\x74\x65\x72\x73\x65\x63"
+"\x74\x69\x6f\x6e\x69\x6e\x76\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x69\x6f\x67\x6f\x6e\x65\x6b\x69\x6f\x74\x61\x69\x6f\x74\x61\x64"
+"\x69\x65\x72\x65\x73\x69\x73\x69\x6f\x74\x61\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e\x6f\x73\x69\x6f\x74\x61\x74\x6f\x6e\x6f"
+"\x73\x69\x74\x69\x6c\x64\x65\x6a\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x6b\x61\x70\x70\x61\x6b\x63\x6f\x6d\x6d\x61\x61\x63\x63"
+"\x65\x6e\x74\x6b\x67\x72\x65\x65\x6e\x6c\x61\x6e\x64\x69\x63\x6c\x61\x63\x75\x74\x65\x6c\x61\x6d\x62\x64\x61\x6c\x63\x61\x72\x6f"
+"\x6e\x6c\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6c\x64\x6f\x74\x6c\x65\x73\x73\x65\x71\x75\x61\x6c\x6c\x69\x72\x61\x6c\x6f"
+"\x6e\x67\x73\x6d\x61\x6c\x65\x6d\x69\x6e\x75\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e\x6f\x74\x65\x6d\x75\x73\x69\x63\x61\x6c\x6e"
+"\x6f\x74\x65\x64\x62\x6c\x6e\x61\x63\x75\x74\x65\x6e\x61\x70\x6f\x73\x74\x72\x6f\x70\x68\x65\x6e\x63\x61\x72\x6f\x6e\x6e\x63\x6f"
+"\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x6e\x6f\x74\x65\x71\x75\x61\x6c\x6e\x75\x6f\x62\x72"
+"\x65\x76\x65\x6f\x68\x75\x6e\x67\x61\x72\x75\x6d\x6c\x61\x75\x74\x6f\x6d\x61\x63\x72\x6f\x6e\x6f\x6d\x65\x67\x61\x6f\x6d\x65\x67"
+"\x61\x74\x6f\x6e\x6f\x73\x6f\x6d\x69\x63\x72\x6f\x6e\x6f\x6d\x69\x63\x72\x6f\x6e\x74\x6f\x6e\x6f\x73\x6f\x72\x74\x68\x6f\x67\x6f"
+"\x6e\x61\x6c\x6f\x73\x6c\x61\x73\x68\x61\x63\x75\x74\x65\x70\x61\x72\x74\x69\x61\x6c\x64\x69\x66\x66\x70\x65\x73\x65\x74\x61\x70"
+"\x68\x69\x70\x69\x70\x72\x6f\x64\x75\x63\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62\x73\x65\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x70"
+"\x65\x72\x73\x65\x74\x70\x73\x69\x71\x75\x6f\x74\x65\x72\x65\x76\x65\x72\x73\x65\x64\x72\x61\x63\x75\x74\x65\x72\x61\x64\x69\x63"
+"\x61\x6c\x72\x63\x61\x72\x6f\x6e\x72\x63\x6f\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x72\x65\x76\x6c\x6f\x67\x69\x63\x61\x6c\x6e\x6f"
+"\x74\x72\x68\x6f\x73\x61\x63\x75\x74\x65\x73\x63\x65\x64\x69\x6c\x6c\x61\x73\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x73\x63\x6f"
+"\x6d\x6d\x61\x61\x63\x63\x65\x6e\x74\x73\x65\x63\x6f\x6e\x64\x73\x69\x67\x6d\x61\x73\x6d\x69\x6c\x65\x66\x61\x63\x65\x73\x70\x61"
+"\x64\x65\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x73\x75\x6e\x74\x61\x75\x74\x62\x61\x72\x74\x63\x61\x72\x6f\x6e\x74\x63\x6f\x6d\x6d"
+"\x61\x61\x63\x63\x65\x6e\x74\x74\x68\x65\x74\x61\x74\x6f\x6e\x6f\x73\x75\x62\x72\x65\x76\x65\x75\x68\x75\x6e\x67\x61\x72\x75\x6d"
+"\x6c\x61\x75\x74\x75\x6d\x61\x63\x72\x6f\x6e\x75\x6e\x64\x65\x72\x73\x63\x6f\x72\x65\x64\x62\x6c\x75\x6e\x69\x30\x30\x41\x30\x75"
+"\x6e\x69\x30\x30\x41\x44\x75\x6e\x69\x30\x32\x31\x41\x75\x6e\x69\x30\x32\x31\x42\x75\x6e\x69\x30\x32\x43\x39\x75\x6e\x69\x30\x33"
+"\x38\x37\x75\x6e\x69\x30\x33\x39\x34\x75\x6e\x69\x30\x33\x41\x39\x75\x6e\x69\x30\x33\x42\x43\x75\x6e\x69\x30\x33\x43\x32\x75\x6e"
+"\x69\x30\x34\x30\x30\x75\x6e\x69\x30\x34\x30\x44\x75\x6e\x69\x30\x34\x35\x30\x75\x6e\x69\x30\x34\x35\x44\x75\x6e\x69\x30\x34\x39"
+"\x32\x75\x6e\x69\x30\x34\x39\x33\x75\x6e\x69\x30\x34\x39\x36\x75\x6e\x69\x30\x34\x39\x37\x75\x6e\x69\x30\x34\x39\x38\x75\x6e\x69"
+"\x30\x34\x39\x39\x75\x6e\x69\x30\x34\x39\x41\x75\x6e\x69\x30\x34\x39\x42\x75\x6e\x69\x30\x34\x39\x43\x75\x6e\x69\x30\x34\x39\x44"
+"\x75\x6e\x69\x30\x34\x41\x30\x75\x6e\x69\x30\x34\x41\x31\x75\x6e\x69\x30\x34\x41\x32\x75\x6e\x69\x30\x34\x41\x33\x75\x6e\x69\x30"
+"\x34\x41\x41\x75\x6e\x69\x30\x34\x41\x42\x75\x6e\x69\x30\x34\x41\x45\x75\x6e\x69\x30\x34\x41\x46\x75\x6e\x69\x30\x34\x42\x30\x75"
+"\x6e\x69\x30\x34\x42\x31\x75\x6e\x69\x30\x34\x42\x32\x75\x6e\x69\x30\x34\x42\x33\x75\x6e\x69\x30\x34\x42\x36\x75\x6e\x69\x30\x34"
+"\x42\x37\x75\x6e\x69\x30\x34\x42\x38\x75\x6e\x69\x30\x34\x42\x39\x75\x6e\x69\x30\x34\x42\x41\x75\x6e\x69\x30\x34\x42\x42\x75\x6e"
+"\x69\x30\x34\x43\x30\x75\x6e\x69\x30\x34\x43\x42\x75\x6e\x69\x30\x34\x43\x43\x75\x6e\x69\x30\x34\x44\x38\x75\x6e\x69\x30\x34\x45"
+"\x32\x75\x6e\x69\x30\x34\x45\x33\x75\x6e\x69\x30\x34\x45\x38\x75\x6e\x69\x30\x34\x45\x39\x75\x6e\x69\x30\x34\x45\x45\x75\x6e\x69"
+"\x30\x34\x45\x46\x75\x6e\x69\x32\x30\x33\x45\x75\x6e\x69\x32\x30\x41\x46\x75\x6e\x69\x32\x31\x32\x36\x75\x6e\x69\x32\x32\x31\x35"
+"\x75\x6e\x69\x32\x32\x31\x39\x75\x6e\x69\x32\x32\x32\x37\x75\x6e\x69\x32\x32\x32\x38\x75\x6e\x69\x32\x32\x39\x35\x75\x6e\x69\x32"
+"\x35\x41\x31\x75\x6e\x69\x6f\x6e\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x75\x6f\x67\x6f\x6e\x65\x6b\x75\x70\x73\x69\x6c\x6f\x6e\x75"
+"\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x75\x70\x73\x69\x6c\x6f\x6e\x64\x69\x65\x72\x65\x73\x69\x73\x74\x6f\x6e"
+"\x6f\x73\x75\x70\x73\x69\x6c\x6f\x6e\x74\x6f\x6e\x6f\x73\x75\x72\x69\x6e\x67\x75\x74\x69\x6c\x64\x65\x77\x61\x63\x75\x74\x65\x77"
+"\x63\x69\x72\x63\x75\x6d\x66\x6c\x65\x78\x77\x64\x69\x65\x72\x65\x73\x69\x73\x77\x67\x72\x61\x76\x65\x78\x69\x79\x63\x69\x72\x63"
+"\x75\x6d\x66\x6c\x65\x78\x79\x67\x72\x61\x76\x65\x7a\x61\x63\x75\x74\x65\x7a\x64\x6f\x74\x61\x63\x63\x65\x6e\x74\x7a\x65\x74\x61"
+"\x31\x2e\x30\x30\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55"
+"\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x43\x6f\x70\x79\x72\x69"
+"\x67\x68\x74\x20\x28\x55\x52\x57\x29\x2b\x2b\x2c\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x34\x20\x62\x79\x20\x28\x55"
+"\x52\x57\x29\x2b\x2b\x20\x44\x65\x73\x69\x67\x6e\x20\x26\x20\x44\x65\x76\x65\x6c\x6f\x70\x6d\x65\x6e\x74\x4e\x69\x6d\x62\x75\x73"
+"\x20\x53\x61\x6e\x73\x00\xa2\x02\x00\x01\x00\x05\x00\x09\x00\x11\x00\x1e\x00\x21\x00\x75\x00\x9a\x00\xa6\x00\xae\x00\xeb\x00\xf0"
+"\x00\xf3\x00\xfb\x01\x13\x01\x1e\x01\x23\x01\x28\x01\x49\x01\xa2\x01\xc9\x01\xfa\x02\x20\x02\x3c\x02\x4f\x02\x53\x02\x57\x02\x65"
+"\x02\x6b\x02\x70\x02\x8f\x02\xac\x02\xc8\x02\xcb\x02\xcf\x02\xd4\x02\xdf\x02\xe9\x02\xf7\x03\x0b\x03\x11\x03\x19\x03\x1e\x03\x51"
+"\x03\x77\x03\xa3\x03\xb0\x03\xcd\x03\xd1\x03\xe2\x03\xf6\x04\x09\x04\x14\x04\x1d\x04\x2d\x04\x34\x04\x3c\x04\x42\x04\x49\x04\x50"
+"\x04\x57\x04\x61\x04\x6a\x04\x70\x04\x76\x04\x7c\x04\xfc\x05\x61\x05\xc4\x05\xd6\x06\x08\x06\x4f\x06\x9a\x06\x9d\x06\xdd\x07\x15"
+"\x07\x32\x07\x49\x07\x66\x07\x98\x07\xc8\x07\xf5\x08\x21\x08\x4e\x08\x5d\x08\x89\x08\xa8\x08\xcf\x08\xd3\x08\xea\x08\xf4\x08\xfd"
+"\x09\x05\x09\x0d\x09\x16\x09\x39\x09\x5a\x09\x6e\x09\x8f\x09\xaf\x09\xbe\x09\xdc\x09\xf9\x0a\x16\x0a\x31\x0a\x48\x0a\x63\x0a\x7c"
+"\x0a\x96\x0a\xa5\x0a\xaa\x0a\xb5\x0a\xbe\x0a\xd5\x0a\xdc\x0a\xf3\x0b\x09\x0b\x1f\x0b\x35\x0b\x42\x0b\x57\x0b\x64\x0b\x70\x0b\x81"
+"\x0b\x8c\x0b\x9e\x0b\xb0\x0b\xc0\x0b\xd1\x0b\xe2\x0b\xf2\x0c\x00\x0c\x0f\x0c\x1e\x0c\x27\x0c\x35\x0c\x43\x0c\x4f\x0c\x5c\x0c\x69"
+"\x0c\x76\x0c\x7d\x0c\x88\x0c\x94\x0c\xa0\x0c\xac\x0c\xb8\x0c\xc2\x0c\xcd\x0c\xd8\x0c\xe3\x0c\xe8\x0c\xef\x0c\xf9\x0d\x03\x0d\x0d"
+"\x0d\x17\x0d\x21\x0d\x29\x0d\x31\x0d\x3a\x0d\x43\x0d\x4a\xf9\x6d\x15\x0b\x15\x2b\xac\x1d\x58\x1d\xf7\x36\xf2\x58\x1d\x0e\xaf\x1d"
+"\x07\xc7\x89\xb2\xba\x8c\xd7\x08\xf2\x07\x0e\x3b\x1d\x0e\xf8\xab\x9f\x1d\xe8\x47\xbd\xfb\x15\x3e\x4e\x75\x64\x67\x1e\x73\x70\x81"
+"\x6d\x89\x57\x08\xdf\x06\xcb\x92\xb1\xa8\xd9\x1b\xd7\xb4\x6f\x59\x1f\x75\x07\x8a\x67\x79\x7e\x47\x82\xfb\x0a\x7c\x79\x87\x6b\x7e"
+"\x08\x4e\x71\x6c\x5d\x47\x1a\x2c\xcd\x4f\xf5\xcd\xc0\xa2\xc1\xc6\x1e\x55\x91\xa5\x74\xc1\x1b\x9d\x96\x8d\x92\xa7\x1f\xfb\x26\x81"
+"\x1d\x0b\xf8\x76\x16\xf8\xa0\x38\xfb\xbd\x07\x20\x53\x45\x34\x49\x61\xb3\xca\x1e\xf8\x07\x38\xfc\x28\x07\x34\xcc\x53\xf1\xd8\xbc"
+"\xa6\xd0\xbc\x1e\x42\x07\x0b\x79\x1d\xdc\x2b\x05\xca\x06\x2b\xf7\x2a\x05\x0e\x15\xfb\xa6\x45\xf7\xa6\x06\x0e\xf8\x95\xf7\x7e\x15"
+"\xdb\x85\xbb\x7c\xb2\x1e\xe1\x69\x3b\x5d\x1d\xfb\x41\xfb\x41\xe5\x22\xf7\x28\xf7\x0c\xde\xcf\xf7\x06\xa0\x1f\x37\x06\x46\x74\x5c"
+"\x67\x48\x1b\x56\x5e\xa3\xb7\x6f\x1f\x77\xa9\x84\xa9\x8a\xbf\x08\x8d\xcf\x5c\x1d\x49\x2d\x1f\x0b\xf7\xa4\x3d\x1d\x0b\x99\x1d\x0e"
+"\x20\x1d\x2d\xfd\x6d\xe9\x06\x0b\xf8\xbc\x20\x1d\x88\x1d\xfb\x28\xf5\x2f\xf7\x41\xf7\x3f\xf7\x02\xe9\xf7\x26\x1e\xf8\x94\x07\x0b"
+"\xf7\x45\xf8\xa0\x15\x38\xfc\xa0\xde\x06\x0b\xf9\x59\x45\x1d\x0b\x37\xfc\xa0\xdf\x0b\xf8\x4a\xf8\x0e\x15\xf2\x8a\x47\xc5\x4c\x1d"
+"\xfb\x0d\x8f\xcf\x51\xf7\x1d\x1b\xf7\x18\xdf\xcc\xf0\xd9\x5f\xb6\x23\xa4\x1f\x51\x1d\x0b\xf9\x59\xf8\x15\x15\xfb\xc4\x39\xf7\x72"
+"\x77\x06\xfb\x16\x2b\x2d\xfb\x19\x41\x48\xa6\xba\x60\x1e\x5b\xbf\x6e\xe2\xe5\x1a\xf7\x47\xf1\xf7\x0a\xf7\x2e\xf7\x03\xdb\x52\x2d"
+"\x9f\x1e\xea\x06\xf7\x28\x71\xfb\x04\xe0\xfb\x3b\x1b\x32\x43\x74\x5c\x52\x1f\x36\x45\x5c\xfb\x05\xfb\x17\x1a\xfb\x74\xf7\x1d\xfb"
+"\x30\xf7\x59\xee\xd9\xb0\xda\xd3\x1e\xa2\x2a\x05\xc6\x06\x0b\xf8\x6b\xf7\xf0\x15\x96\x1d\xfb\x3d\xe5\x20\xf7\x22\xf7\x11\xda\xd6"
+"\xf7\x14\x95\x1f\x37\x06\x37\x7d\x60\x61\x44\x1b\x2f\x54\xd6\xf7\x10\xf7\x17\xb8\x1d\x0b\xf9\x7c\x16\xf7\x4d\xf9\x6d\x05\x23\x06"
+"\xfb\x1a\xfc\xe4\xfb\x3a\xf8\xe4\x05\x27\x06\xfb\x36\xfc\xe4\xfb\x1d\xf8\xe4\x05\x23\x06\xf7\x4f\xfd\x6d\x05\xf1\x06\xf7\x37\xf8"
+"\xeb\xf7\x3c\xfc\xeb\x05\x0b\xd1\xf8\xa0\x15\xfc\xa0\xdf\xf7\xb5\x07\xf6\xc3\xd1\xe1\xcd\xb5\x63\x4c\x1e\xfb\xff\xde\xf8\x20\x07"
+"\xe2\x4a\xc3\x26\x3d\x59\x6d\x42\x5d\x1e\xe3\x07\x0b\xf9\x1a\x20\x1d\x33\xfc\xe8\x06\xfc\x11\xf8\xe8\x05\x26\xfd\x6d\xe3\xf8\xe3"
+"\x06\xf8\x0d\xfc\xe3\x05\xf4\x06\x0b\x15\x2b\xfb\x2a\x05\xcc\x06\xda\xeb\xdb\x2b\x05\xca\x06\x2b\xf7\x2a\x05\x0e\xfa\x26\x22\x1d"
+"\xf7\x6c\x21\x1d\xf7\x41\x20\x1d\x2e\xfd\x6d\xf8\x59\xdd\xfb\xfc\x06\x0b\x15\x23\x23\xf3\x06\x0b\xf7\x29\xf7\x28\x0b\xf8\xaf\x15"
+"\xfb\x28\x33\x22\xfb\x44\xfb\x45\xe3\x23\x3c\x1d\xe4\xf4\xf7\x40\xf7\x4a\x35\xf2\xfb\x2c\x1f\x8c\x3e\x90\x1d\x0b\xf8\x4f\xf8\xa0"
+"\x15\xfc\x1b\x42\xf7\xb8\x06\xfb\xcd\xfc\x0c\x05\x40\xf8\x3e\xd4\xfb\xd9\x07\xf7\xcb\xf8\x0d\x05\x0b\xdc\x16\xdf\xbb\x06\xf7\x7a"
+"\xf7\xca\x05\xfb\xfa\xdf\xf8\xa0\x37\x5f\x07\xfb\x7a\xfb\xc7\x05\xf7\xf3\x37\x07\x0b\x90\x1d\x0e\xf9\x78\x21\x1d\xb9\x1d\x3a\x54"
+"\x1d\xf7\x2c\xf9\x6d\x15\x37\xfd\x6d\xdf\x06\x0b\xf7\x55\x20\x1d\x2e\xfd\x6d\xe8\x06\x0b\x15\xfc\x58\xfd\x6d\x05\xc5\x06\xf8\x58"
+"\xf9\x6d\x05\x0b\xd0\x07\x8f\x78\x80\x8c\x7a\x1b\x3e\x5d\x5f\x40\x1f\x32\x45\x47\xd1\xfc\x5c\x0b\xd0\x49\x1d\x37\x06\x0b\xf8\x2c"
+"\x05\x32\x06\xf7\x45\x0b\x16\xdf\xf8\xa0\x0b\x1b\xfb\x34\x28\x39\xfb\x18\x32\xba\x53\xeb\x72\x1f\xf7\x49\x5b\x05\xe8\x73\xb4\x66"
+"\x52\x1a\x64\x76\x63\x6c\x75\x1e\x76\x6e\x5d\x81\x50\x1b\x3b\x56\x9e\xb5\x68\x1f\x70\xab\x7f\xae\x8c\xb8\x08\x33\x06\x0b\xf7\x92"
+"\xf8\xa0\x15\xbc\x1d\xfc\x20\x06\x55\xaf\x6e\xcc\xa1\x9d\x8d\x90\xa7\x1e\xd1\x07\x88\x7f\x80\x8a\x7a\x1b\x67\x81\x95\xb0\x1f\xf7"
+"\xfb\xe1\x07\x0b\xfb\x0d\x1b\xfb\x0e\x3c\x4c\x2a\x39\xb5\x64\xf7\x10\x6d\x1f\xd9\x78\x05\xc5\x7d\xa2\x76\x66\x1a\x59\x5a\x6a\x42"
+"\x5e\x65\x98\xa1\x76\x1e\x7e\x9a\x85\x9a\x86\xb0\x08\x33\x06\x0b\x91\x1d\x63\x05\x6f\xc9\xa3\x85\xb2\x1b\xd7\xba\x0b\x77\x08\x66"
+"\xa6\xb7\x77\xc4\x1b\xe8\xbf\xb9\xe4\x92\x1f\x50\x06\x61\x87\x6a\x73\x55\x1b\x52\x6d\xa1\xb7\x86\x1f\x0e\x16\xa0\x1d\x0b\xfb\x8d"
+"\x05\xed\x06\xfb\x3b\xf7\xb2\xf7\x10\xf7\x82\x05\x2a\x06\x0b\x3b\x9e\x05\x47\x9b\x6e\xa1\xb0\x1a\xbc\xb6\xa9\xcf\xce\xaf\x6e\x54"
+"\x8d\x1e\x0b\x1b\xa8\x9c\x7d\x74\x71\x74\x78\x6c\x71\x79\x91\xa2\x5e\x1f\x82\x8f\x76\x0b\x80\x79\x1b\x7f\x71\x92\x95\x72\x1f\x9c"
+"\x0b\xeb\x05\x4c\x06\xeb\xfb\x2a\x05\x0e\xf7\xb2\x15\xf7\xa6\xf8\x4f\x05\xfb\x03\x06\xfb\x64\xfb\xf7\x0b\xfb\x5d\x05\x24\xf7\x5d"
+"\x0b\xc3\x1b\xc1\xb2\x62\x53\x1f\x0b\x15\x23\x24\xf3\x06\x0b\xc1\x5c\x3a\x3b\x55\x5b\x0b\xf8\x94\x2e\xfc\x94\x07\x0b\xa0\x71\xb5"
+"\x7b\x1e\x83\x0b\x15\xec\x92\xc6\xca\xdf\x1b\xe0\xc6\x0b\xbf\x29\x1b\xfb\x26\x2d\xfb\x03\x0b\x06\x38\x68\x84\x72\x0b\xfb\x34\xdf"
+"\xf7\x7e\x0b\xac\x90\x90\xa3\x1f\x0b\x15\xab\x5e\x53\xa8\x78\x1b\x81\x84\x83\x81\x84\x8d\x87\x94\x83\x1f\xc6\x5a\xa0\x70\xc4\x2c"
+"\x08\x7a\x94\x8e\x89\x95\x1b\x92\x90\x91\xa0\x97\x1f\xb5\xd4\xad\xb7\xb9\xb2\x08\x9c\x99\x8e\x8f\x93\x1a\x95\x84\x93\x82\x79\x40"
+"\x66\x73\x6d\x1e\xf8\x3e\x07\x70\xac\xd2\x67\x9f\x1b\x93\x92\x93\x95\x93\x88\x8e\x7a\x9a\x1f\x5c\xb3\x6a\xb5\x61\xd5\x08\x9f\x80"
+"\x85\x92\x84\x1b\x83\x86\x87\x83\x86\x1f\x54\x2d\x73\x6c\x58\x5f\x08\x76\x79\x8a\x8a\x82\x1a\x81\x92\x83\x94\x91\xab\x97\x93\x9b"
+"\x1e\xa0\x96\x9d\x96\xa7\xa0\x08\x0e\xf7\xb2\xf7\xc4\x15\x4c\x68\x91\x98\x72\x1f\x70\x9a\x7c\xa1\xa3\x1a\xb9\xb8\xac\xca\xce\xb0"
+"\x6e\x4a\x9c\x1e\xdc\x06\x84\xbc\x81\xa3\x72\xa7\x08\xb8\x64\x52\xa3\x47\x1b\xfb\x03\x3b\x4f\x39\x58\xa7\x5f\xc0\x6f\x1f\x4f\x76"
+"\x68\x5c\x4d\x1a\x2a\xdf\x45\xf7\x09\xd4\xc5\xa4\xbd\xb7\x1e\xa7\xac\x99\xa8\x97\xc1\x08\x38\x06\x3a\x74\x62\x69\x40\x1b\x43\x5a"
+"\xb2\xc4\xc6\xbc\xa6\xf7\x01\x8e\x94\x8b\x8a\x94\x1f\x0b\xf7\xf0\xf8\x21\x15\xfb\x5c\x07\x57\x89\x78\x83\x74\x1e\x6a\x80\x70\x78"
+"\x6b\x1b\x52\x67\xcf\xf7\x00\xf7\x09\xb1\xea\xdb\xe0\x1f\x29\x06\x45\x3e\x66\x27\xfb\x07\x1a\xfb\x30\xce\x27\xf3\xc7\xad\xa2\xce"
+"\xb0\x1e\x4c\xab\xb1\x71\xc6\x1b\xf4\xcf\xef\xf7\x2f\xf7\x07\x66\xf0\x45\xd7\x1f\x29\x06\xdb\x37\xb1\x2c\xfb\x09\x1a\x20\x66\x46"
+"\x52\x6a\x72\x9e\xab\x80\x1e\x83\xa2\x89\x9f\xbe\x1a\xf7\x5c\x07\x0b\x29\x1d\xfb\x40\xf8\x4a\x15\xfb\x04\x06\xf7\x29\xfb\x28\x05"
+"\xc7\x06\x0e\xf7\x96\xf8\xa0\x15\x34\xdd\x06\xae\x9e\x9d\xb2\x92\x8e\x8b\x8a\x9e\x1e\x46\x1d\xde\xf8\x5c\xe2\x07\xf7\xaa\xcf\x15"
+"\x34\xdd\x06\xae\x9e\x9d\xb2\x92\x8e\x8b\x8a\x9e\x1e\x46\x1d\xde\xf8\x5c\xe2\x07\x0b\x15\xb7\xa6\x99\xa0\xb3\x1a\xce\x57\xb9\x3f"
+"\x40\x56\x5d\x48\x63\x99\x76\xb7\x70\x1e\x5a\x73\x73\x68\x5c\x1a\x3d\xc5\x55\xe0\xdf\xc6\xc1\xd9\xba\x73\xae\x5a\xa3\x1e\x45\xf7"
+"\x2e\x15\xb8\xa4\x1d\xb8\x1f\xfb\x45\x04\xc0\xaf\x69\x59\x58\x67\x6a\x55\x57\x67\xad\xbd\xbd\xaf\xad\xc0\x1f\x0b\x15\x94\x06\xa2"
+"\x06\xc9\xa9\x73\x5b\x58\x6a\x6d\x52\x4f\x6f\xa6\xc9\x88\x1f\x4d\x06\x30\xc2\x58\xeb\xe9\xc8\xc0\xdc\xbe\x74\xac\x5b\x9b\x1e\xb0"
+"\x9c\x9f\xa8\xb2\x1a\xd6\x56\xb8\x35\x2d\x5b\x5b\x2d\x89\x1e\xca\x06\xa7\x8d\x98\x92\x98\x1e\xa1\x97\xa6\x98\xac\x1b\xbb\xa7\x72"
+"\x60\x5c\x73\x7d\x35\x1f\x0b\x69\x1d\x0e\x15\xfb\x65\xfb\x22\xfb\x2e\xfb\x78\xfb\x79\xf7\x21\xfb\x2d\xf7\x67\xe4\xd9\xa6\xbd\xc6"
+"\x1f\xda\xce\xba\xf7\x05\xf7\x0b\xb4\x1d\x39\x04\xf7\x32\xf1\xfb\x0b\xfb\x4d\xfb\x44\x22\xfb\x0c\xfb\x2e\xfb\x30\x24\xf7\x0c\xf7"
+"\x48\xf7\x48\xf2\xf7\x0c\xf7\x2f\x1f\x0b\xf8\x1a\xf8\xa0\x15\xfb\x24\xfc\x2c\xfb\x1b\x48\x1d\xfc\xa0\x6b\x36\x05\x64\x7d\x79\x7d"
+"\x69\x1b\x7c\x7e\x8d\x91\x7a\x1f\x3e\x07\x83\x9c\x9c\x88\xa0\x1b\xa7\xa7\x94\x9b\xa2\x1f\xa4\x9e\x9a\xa1\x9b\xb5\xf7\x7e\xf9\x0e"
+"\x18\x0b\x2d\xfc\x06\x06\x77\x40\x5a\x83\x50\x1b\xfb\x0e\x4e\xaf\xd3\x1f\xf7\xb6\x2d\xfb\xbb\x07\xfb\x09\xe9\x47\xf7\x36\x0b\x98"
+"\x1d\x6c\x66\x49\x80\x1f\xc5\x06\xa2\x91\x97\x98\x9a\xa7\x1d\xbc\xaa\xae\xd0\x94\x1f\x0e\xf7\x4c\xf7\xc9\x15\xf7\x79\x8c\x1d\xe8"
+"\x06\xf8\x1b\x04\xf7\x94\xf7\x56\x07\xe4\xc0\x5b\x3b\x3b\x56\x5b\x32\x1f\x0e\xf8\x1b\xf8\x0a\x15\xf7\x8a\xf7\xf7\x05\xfb\x03\x06"
+"\xfb\x50\xfb\xb2\xfb\x4f\xf7\xb2\x05\xfb\x05\x06\xf7\x86\xfb\xf7\xfb\x96\xfc\x0a\x05\xf7\x05\x06\xf7\x5c\xf7\xc4\xf7\x5b\xfb\xc4"
+"\x05\xf7\x07\x06\x0e\xe4\x16\xf7\xad\x06\xf7\x4c\xf7\x05\xf7\x1e\xf7\x77\xf7\x76\xfb\x04\xf7\x1e\xfb\x4d\x1f\xfb\xad\x06\xe8\xfd"
+"\x1b\x15\xf8\xc9\xf7\x40\x07\xf7\x24\xd7\x2a\xfb\x4e\xfb\x4d\x3f\x2a\xfb\x24\x1f\x0b\xd1\x20\x1d\xfd\x6d\xde\xf7\xb5\x07\xf6\xc3"
+"\xd1\xe1\xa7\xa5\x83\x7c\x9f\x1e\xa3\x79\x95\x72\x66\x1a\xfb\xff\xde\xf8\x20\x07\xe3\x4c\xc2\x25\x41\x5e\x74\x4b\x5a\x1e\xf7\xa9"
+"\x07\x0b\x15\x23\xbb\x07\x8c\x51\x7d\x70\x68\x86\x08\x65\x07\xc7\x8f\xac\xba\xdb\x1a\xf0\x07\xce\x16\x23\xbb\x07\x8c\x51\x7d\x70"
+"\x68\x86\x08\x65\x07\xc7\x8f\xac\xba\xdb\x1a\xf0\x07\x0e\xf7\x22\x16\xe3\x06\xbf\xb5\xaa\xc8\xa6\x1f\xf7\xa9\xf9\x11\x05\xfb\x02"
+"\x06\xfb\x50\xfc\x62\xfb\x5b\xf8\x62\x05\xfb\x04\x06\xf7\x9d\xfc\xd1\x73\x4e\x7d\x80\x5b\x89\x19\x53\x06\x0b\xaa\x1d\xea\x06\x93"
+"\x1d\xfb\x22\xc0\xfb\x0d\xe6\x4b\x1e\x0b\x16\xf7\xdd\x06\xd0\xbe\x9e\xb5\xb2\x1f\xaf\xb1\x9f\xbf\xc4\x1a\xe3\x63\xc0\x2e\xaf\x1e"
+"\xce\xaa\xad\xc0\xd6\x1a\xc1\x77\xb9\x65\xad\x1e\xae\x64\x5a\x9b\x45\x1b\xfb\xbc\x06\x0b\x37\xfb\x94\x06\x7d\x60\x65\x85\x65\x1b"
+"\x49\x69\xa7\xc1\x1f\xf7\x56\x37\xfb\x69\xae\x1d\xc8\x1b\xba\xb4\x94\x9f\xb9\x1f\x0e\xf8\x68\x16\xf7\x61\xf8\xf7\x05\xfc\xf7\xe3"
+"\xf9\x6d\xfb\x15\x07\xfb\x68\xfd\x0f\xfb\x6c\xf9\x0f\x05\xfb\x15\xfd\x6d\xe3\xf8\xf7\x06\xf7\x63\xfc\xf7\x05\x0e\xf9\x70\x7b\x1d"
+"\x4f\x1d\x37\x06\xdf\xfc\x56\x15\xf7\x3a\xf7\x38\x07\xc0\xaa\x6d\x56\x56\x6c\x6d\x56\x1f\x0b\x15\x2b\xfb\x2a\x05\xcb\x06\xda\xeb"
+"\x0b\x83\x1d\xaf\xc4\xb6\x6e\xa3\x58\x0b\x15\x8c\x64\x91\x78\x99\x4e\x1d\x15\x8c\x64\x90\x78\x9a\x4e\x1d\x6b\x1d\xcb\xd1\x95\x9d"
+"\xd1\x1e\x0e\xf8\xa0\x15\xfc\xa0\xdf\xf7\xa4\x07\x8c\xf7\x12\xbf\xc3\xf7\x07\x88\x08\xe0\x07\x8d\x7d\x83\x8c\x81\x1b\x55\x62\x6b"
+"\x3d\x5b\x1f\xea\x07\x0b\xfc\xf5\x15\x27\xc9\xef\xce\xc0\x48\xf7\xa4\x5d\x07\xfb\x60\xfb\x9e\x05\x50\x07\xf7\x50\xc0\x15\xfb\x15"
+"\x06\xf7\x15\xf7\x3e\x05\x0e\x55\x1d\xfb\x6a\xf7\xf7\x05\xfb\x07\x06\xf7\xad\xfc\x4f\x05\xfb\xb2\xe8\x07\x0b\xf7\x47\x15\x6f\x83"
+"\x7a\x72\x74\x1e\x6c\x69\x62\x7b\x5a\x1b\x4a\x65\xaa\xc0\xc2\xaf\xa7\xe5\x98\x1f\xe4\x97\x9c\x8f\xa7\x98\x08\x0b\xfb\x94\xf9\x6d"
+"\x05\xfb\x0c\x06\xfb\x98\xfd\x6d\x05\xee\x06\xd8\xf7\x6f\x05\xf7\x93\xd9\x15\xfb\x7c\x06\xf7\x0c\xf7\xe0\x05\x0b\x8d\x97\x52\x1d"
+"\x63\x05\x70\xc9\xa3\x84\xb2\x1b\xd7\xba\x0b\xfc\x59\x06\x8d\xfb\x0c\x60\x47\x3a\x85\x08\x39\x9b\x07\xc6\x89\xb5\xa1\xb7\xc5\xaf"
+"\xbb\x9b\xc4\x8e\xea\x08\xf8\x05\x0b\x1a\xe5\x53\xcd\x28\xa6\x1e\xfb\x4b\xbc\x05\x33\xa3\x6b\xa7\xc3\x1a\xd5\xcc\xbc\xed\xf7\x08"
+"\xcc\x57\x2b\x8c\x1e\x0b\xe9\xf7\xed\xcc\x06\xf7\x75\xfb\xed\x05\xf3\x06\xfb\x90\xf8\x14\xf7\x60\xf7\xed\x05\x24\x06\xfb\x48\xfb"
+"\xc2\x05\x0b\x1f\x82\x8f\x76\x63\x05\x6f\xca\xa2\x85\xb2\x1b\xd7\xba\xae\xc5\xb6\x6e\xa3\x59\x82\x85\x8b\x89\x7e\x1f\x0e\xfc\x94"
+"\x07\x29\x44\x4f\xfb\x09\x55\x5f\x98\xa4\x68\x1e\x67\xa7\x7a\xb0\xc2\x1a\x5a\x1d\x0b\x5c\x67\x48\x1b\x56\x5e\xa3\xb7\x6f\x1f\x77"
+"\xa9\x84\xa9\x8a\xbf\x08\xf8\x16\x06\xdb\x85\xbb\x7c\xb2\x1e\x0b\x15\xf8\x7d\xfb\x63\x05\xda\x07\xfc\x1e\xf7\x38\xf8\x1e\xf7\x35"
+"\x05\xda\x07\xfc\x7d\xfb\x63\x05\x0e\xf7\x47\xf7\xe0\x15\xf8\x20\xdd\xfc\x20\xf7\x7d\xf8\x2f\xdd\xfc\x8d\xfd\x6d\xf8\x9f\xdd\xfc"
+"\x41\x06\x0b\x06\xc4\xb8\xab\x1d\x3a\xd8\xfb\x24\x1e\xfb\xc1\xfd\x6d\x0b\xf8\xbb\x92\x1d\x0b\x15\xe7\xc7\x3a\xfb\x11\xfb\x0b\x4e"
+"\xa2\x1d\x9d\x1d\xf8\x9f\xdd\xfc\x42\x06\x0b\x15\xe9\xc3\x3e\xfb\x16\xfb\x10\x51\x3e\x2f\x2e\x52\xd8\xf7\x13\xf7\x13\xc4\xd8\xe8"
+"\x1f\x0b\x97\x92\x8d\x97\x52\x1d\x0b\xf7\xe0\x15\xfb\xe0\xe8\xf9\x6d\x2e\xfb\xcf\xfc\x0b\xf7\xcf\x2e\xfd\x6d\xe9\xf7\xe0\x07\x0b"
+"\xf7\x34\x6e\x2f\xd9\xfb\x34\x1b\x29\x3c\x6c\x4f\x55\x1f\x49\x43\x67\x23\xfb\x0a\x1a\x0b\x15\xfb\x63\xf7\x63\x45\xfb\x63\xfb\x63"
+"\x45\xf7\x63\xfb\x63\xd1\xf7\x63\xf7\x63\x06\x0b\xf8\xd8\x15\xfb\xbc\xc9\xf8\x3d\x60\x07\x7a\x4b\x7d\x80\x43\x84\x7c\x8a\x18\x5d"
+"\x07\x0b\x87\xbe\x80\xac\x77\xb5\x1d\x30\xfb\x04\xfb\x42\x0b\x15\x8d\x64\x90\x78\x99\x77\x08\x66\xa6\xb8\x77\xc3\x1b\xe8\xbf\xb9"
+"\xe4\x92\x1f\x0b\x15\x72\x83\x7f\x53\x1d\x62\x83\x8d\x76\x1b\x5f\x0b\x79\x1d\xdb\x2b\x05\xcb\x06\x2a\xf7\x2a\x05\x0b\x37\xfc\x56"
+"\xfb\x66\xf8\x56\x37\xfc\x56\xfb\x66\xf8\x56\x36\x06\x0e\xb6\x6e\xa3\x58\x82\x86\x8b\x89\x7e\x1f\x0b\xf8\x95\xf8\x8a\x15\xfb\x56"
+"\xf7\x63\x33\xfb\x63\xfb\x55\x39\xf7\x55\x0b\xf7\xe0\x15\xf8\x21\xdd\xfc\x21\xf7\x7d\xf8\x30\xdd\xfc\x8d\xfd\x6d\x0b\x1e\xf7\x2a"
+"\xf7\x08\xd5\xfb\x08\xd1\x37\x45\x24\x41\xf2\x07\x0e\xbc\x15\x89\x82\x87\x8b\x86\x1b\x6e\x7b\x9a\xa5\x1f\xf7\xc8\x07\x0b\xf7\x8f"
+"\x06\xf1\xcd\xc7\xe9\xed\x49\xc9\x24\x1f\xfb\x3a\xf7\x66\x0b\x15\xfc\x78\x45\xf8\x78\x06\x25\x04\xfc\x78\x45\xf8\x78\x06\x0b\x3a"
+"\x30\x32\x52\xdb\xf7\x0f\xf7\x0f\xc4\xdb\xe4\x1f\x0e\xfd\x6d\xf7\xd3\x07\xf7\x23\xdd\xd8\xf7\x19\xd3\x73\xc2\x0b\xa8\x71\x61\x64"
+"\x6d\x71\x5f\x5e\x6e\xa5\xb3\xb4\xa8\xa5\x0b\xfb\x3a\xe9\xf7\x8c\x53\xf9\x1b\x0b\x15\x30\x07\xa5\x23\x05\xa9\x06\xa5\xf3\x05\xe6"
+"\x07\x0b\x1b\x97\x98\x88\x81\xa3\x1f\x75\xc6\x92\x89\x9e\x1b\x0b\xf7\xb0\xf7\xcc\x15\xfb\x82\x43\xf7\x82\x06\x0e\x06\xa1\xf7\x73"
+"\x05\xfb\xb3\x04\x37\x23\xdf\x06\x0b\xc2\x7a\x6e\xa9\x1f\xa6\x72\x9a\x6d\x96\x54\x08\x0b\x9c\xae\xb2\x1f\xb7\xb3\x9e\xba\xce\x1a"
+"\xf7\x1d\x0b\xfb\x28\x05\xc7\xb6\x1d\x0e\x6a\x73\x56\x1b\x51\x6d\xa1\xb7\x86\x1f\x0e\x07\x62\x93\x72\xa0\x74\x1e\x6a\xa9\xbc\x79"
+"\x0b\x15\x27\xc2\x07\x54\x8d\x78\x6c\x65\x1b\x65\x0b\xda\x69\x1e\x7d\xad\xa6\x87\xd0\x1b\xf7\xac\x0b\xf8\x42\x05\xfc\x95\xe9\xf9"
+"\x6d\x2d\x39\x07\x0b\x37\xfc\x56\xfb\x6f\xf8\x56\x37\x06\x0e\xf8\x99\xc3\x15\xfc\x7d\x48\xf8\x7d\x06\x0b\x1a\xf7\x7f\xfb\x1f\xf7"
+"\x2d\xfb\x6a\x1e\x0b\xa8\x08\xbc\x67\x4c\xa8\x42\x1b\xfb\x22\x0b\x06\x3c\x1d\x05\x0b\xb8\x07\x84\x78\x77\x88\x0b\xc1\xd9\xe6\xd1"
+"\xb7\x62\x42\x95\x1f\x0b\x15\xeb\xf7\x2a\x05\x4b\x06\x3c\x2b\x0b\xf7\x82\x05\x29\x06\x22\xfb\x5d\x05\x0b\x71\x77\x1e\x78\x72\x6e"
+"\x84\x57\x1b\x0b\x35\xf7\x24\x38\xfb\x24\x44\x47\xd2\x0b\x04\xfc\x78\x45\xf8\x78\x06\x0e\x1b\x52\x6c\xa1\xb7\x86\x1f\x0e\xf7\x83"
+"\xdd\xfc\xd0\x39\xf7\x84\x0b\x62\xb4\xbd\xbd\xb3\xb3\xbd\x1f\x0b\x3c\x3d\x5a\x5c\x39\x1f\x0e\x01\x00\x01\xe3\x01\x05\x00\x01\x0a"
+"\x02\x01\x40\x03\x01\x87\xff\x02\x87\xa0\x02\x8e\x02\x00\x01\x00\x04\x00\x07\x00\x19\x00\x36\x00\x7e\x01\x11\x01\x75\x01\xf2\x02"
+"\x0d\x02\x3a\x02\x67\x02\x90\x02\x98\x02\x9e\x02\xa2\x02\xa9\x02\xbc\x03\x01\x03\x19\x03\x70\x03\xd7\x03\xfc\x04\x47\x04\xa4\x04"
+"\xc8\x05\x28\x05\x84\x05\x93\x05\xa0\x05\xa6\x05\xae\x05\xcc\x06\x0e\x06\xbf\x06\xc3\x06\xc6\x06\xca\x06\xce\x06\xd2\x06\xe0\x06"
+"\xe4\x06\xfb\x07\x00\x07\x05\x07\x08\x07\x0b\x07\x0f\x07\x13\x07\x17\x07\x1a\x07\x76\x07\x7a\x07\x7e\x07\x82\x07\x86\x07\xa2\x07"
+"\xa7\x07\xaa\x07\xae\x07\xb2\x07\xc5\x07\xd5\x07\xe8\x08\x07\x08\x0d\x08\x29\x08\x2c\x08\x60\x08\x65\x08\x68\x08\x6b\x08\x72\x08"
+"\x78\x08\x7b\x08\x82\x08\x89\x08\x8e\x08\x93\x08\xc9\x08\xcc\x08\xcf\x08\xe7\x09\x1e\x09\x23\x09\x28\x09\x2d\x09\x30\x09\x45\x09"
+"\x49\x09\x79\x09\x7e\x09\x83\x09\xd5\x09\xe1\x0a\x33\x0a\x7b\x0a\x99\x0a\xed\x0b\x80\x0b\x87\x0b\xc0\x0c\x22\x0c\xbe\x0d\x25\x0d"
+"\x36\x0d\x69\x0d\x72\x0d\x78\x0d\x81\x0d\x91\x0d\xa2\x0d\xae\x0d\xb9\x0d\xd2\x0d\xd6\x0e\x00\x0e\x19\x0e\x33\x0e\x39\x0e\x40\x0e"
+"\x60\x0e\x71\x0e\xdf\x0f\x22\x0f\x2a\x0f\x30\x0f\x38\x0f\x40\x0f\x48\x0f\x4d\x0f\x55\x0f\x5b\x0f\x64\x0f\x79\x0f\x80\x0f\xa5\x0f"
+"\xad\x0f\xb1\x0f\xb6\x10\x31\x10\x56\x10\x5a\x10\xc4\x10\xfe\x11\x03\x11\x0d\x11\x2e\x11\x32\x11\x9a\x11\xff\x12\x06\x12\x15\x12"
+"\x55\x12\x8d\x12\x90\x12\xbe\x12\xc9\x12\xfa\x13\x09\x13\x25\x13\x3b\x13\x67\x13\x85\x13\x94\x13\xa5\x14\x37\x14\x44\x14\x9c\x14"
+"\xca\x14\xd1\x15\x5d\x15\x65\x15\x6d\x15\x75\x15\x7d\x15\x86\x15\x8e\x15\xce\x15\xd7\x15\xe0\x15\xe9\x15\xf2\x15\xf9\x16\x02\x16"
+"\x0b\x16\x14\x16\x4b\x16\x53\x16\x5b\x16\x63\x16\x6b\x16\x73\x16\x7c\x16\xac\x16\xb5\x16\xbe\x16\xc7\x16\xdd\x16\xe3\x16\xec\x16"
+"\xf3\x17\x0c\x17\x14\x17\x1c\x17\x25\x17\x42\x17\x7e\x17\x86\x17\x8e\x17\x96\x17\x98\x17\x9f\x17\xa8\x17\xb1\x17\xba\x17\xcf\x17"
+"\xd6\x17\xdd\x17\xe4\x17\xeb\x17\xf2\x17\xfb\x18\x01\x18\x09\x18\x0f\x18\x17\x18\x1f\x18\x29\x18\x44\x18\x6c\x18\x76\x18\x7f\x18"
+"\x8d\x18\xb1\x18\xc1\x19\x57\x19\x80\x19\x8a\x19\xa1\x19\xa5\x19\xad\x19\xb6\x19\xe4\x19\xf1\x19\xf4\x19\xfd\x1a\x06\x1a\x0f\x1a"
+"\x18\x1a\x1b\x1a\x23\x1a\x26\x1a\x3f\x1a\x47\x1a\x50\x1a\x59\x1a\x62\x1a\xc6\x1a\xf9\x1a\xfd\x1b\x09\x1b\x0d\x1b\x19\x1b\x95\x1b"
+"\xa5\x1b\xae\x1b\xb7\x1b\xbf\x1b\xc8\x1b\xf5\x1b\xfe\x1c\x08\x1c\x14\x1c\x1f\x1c\x2e\x1c\x5c\x1c\x61\x1c\x68\x1c\x74\x1c\x7d\x1c"
+"\x86\x1c\x89\x1c\x91\x1c\x98\x1c\xb3\x1c\xba\x1c\xc1\x1c\xcd\x1c\xd1\x1c\xda\x1c\xe3\x1c\xeb\x1c\xef\x1d\x06\x1d\x0e\x1d\x17\x1d"
+"\x85\x1d\x89\x1d\x9f\x1d\xa8\x1e\x12\x1e\x26\x1e\x7b\x1e\x83\x1e\x8b\x1e\x93\x1e\x96\x1e\x9f\x1e\xe5\x1e\xee\x1e\xf7\x1f\x1a\x1f"
+"\x1e\x1f\x39\x1f\x41\x1f\x61\x1f\x73\x1f\x82\x1f\x8b\x1f\x94\x1f\xd8\x1f\xdc\x1f\xe2\x1f\xee\x1f\xf8\x20\x01\x20\x08\x20\x12\x20"
+"\x1a\x20\x24\x20\x42\x20\x4a\x20\x52\x20\x5b\x20\x64\x20\x68\x20\x73\x20\x7d\x20\x81\x20\x87\x20\x9d\x20\xca\x20\xda\x21\x0f\x21"
+"\x13\x21\x1c\x21\x5b\x21\xc6\x21\xca\x21\xe9\x21\xf4\x22\x03\x22\x2c\x22\x36\x22\x3d\x22\x51\x22\x6b\x22\xbd\x22\xd0\x22\xd4\x23"
+"\x3f\x23\x48\x23\x57\x23\x60\x23\x76\x23\x92\x23\xc9\x23\xe5\x23\xf7\x24\x56\x24\xaf\x25\x09\x25\x21\x25\x72\x25\x87\x25\xe0\x26"
+"\x25\x26\x2c\x26\x35\x26\x70\x26\xa8\x26\xd2\x27\x08\x27\x1f\x27\x27\x27\xa7\x28\x01\x28\x46\x28\x50\x28\x84\x28\xa0\x28\xc1\x28"
+"\xfa\x29\x54\x29\x59\x29\x65\x29\x6a\x29\x77\x29\x9f\x29\xb7\x29\xbc\x29\xce\x29\xf1\x2a\x2b\x2a\x3d\x2a\x42\x2a\xac\x2a\xb5\x2a"
+"\xc4\x2a\xcc\x2a\xd6\x2a\xe6\x2a\xf6\x2b\x04\x2b\x0a\x2b\x52\x2b\x83\x2b\xcd\x2b\xe1\x2c\x0e\x2c\x1b\x2c\x63\x2c\x86\x2c\x97\x2c"
+"\xa4\x2c\xcb\x2c\xdd\x2d\x0f\x2d\x28\x2d\x30\x2d\x3a\x2d\x4a\x2d\x5b\x2d\xa6\x2e\x20\x2e\xa4\x2f\x06\x2f\x5c\x2f\xb2\x2f\xb9\x2f"
+"\xee\x30\x24\x30\x96\x31\x22\x31\x2f\x31\xb5\x32\x04\x32\x51\x32\x9f\x32\xeb\x32\xf3\x33\x04\x33\x6e\x33\x77\x33\x80\x33\x8a\x33"
+"\x93\x33\xc3\x34\x41\x34\xac\x34\xb5\x35\x01\x35\x3a\x35\x65\x35\x6d\x35\x7b\x35\x8c\x35\x93\x35\xc8\x35\xcf\x36\x23\x36\x96\x36"
+"\x9b\x36\xa4\x36\xaf\x37\x15\x37\x18\x37\x20\x37\x2b\x37\x45\x37\x86\x37\x97\x37\xb8\x37\xcc\x37\xd7\x38\x58\x38\x62\x38\x81\x38"
+"\xb9\x38\xc0\x39\x07\x39\x2c\x39\x34\x39\x3f\x39\x55\x39\xcc\x3a\x39\x3a\x77\x3a\xb5\x3a\xfa\x3b\x45\x3b\x7a\x3b\x7f\x3b\x88\x3b"
+"\x91\x3b\x9a\x3b\xa3\x3b\xaf\x3b\xd3\x3b\xdc\x3c\x03\x3c\x0a\x3c\x27\x3c\x30\x3c\x38\x3c\x4c\x3c\x56\x3c\xf7\x3d\x0b\x3d\x9a\x3d"
+"\xa1\x3d\xe5\x3d\xfe\x3e\x04\x3e\x22\x3e\x29\x3e\x30\x3e\x9c\x3e\xd0\x3e\xe5\x3e\xed\x3e\xfc\x3f\x0a\x3f\x0e\x3f\x16\x3f\x1b\x3f"
+"\x24\x3f\x32\x3f\x3a\x3f\xac\x40\x46\x40\xc0\x40\xd8\x41\x01\x41\x2e\x41\x65\x41\xa5\x41\xc0\x41\xc7\x41\xe7\x41\xef\x41\xf8\x42"
+"\x09\x42\x4b\x42\x54\x42\x92\x42\x9c\x42\xa6\x42\xb3\x42\xf2\x43\x80\x43\xd0\x44\x05\x44\x89\x44\x9b\x44\xcf\x44\xec\x45\x29\x45"
+"\x9f\x45\xa7\x45\xaf\x45\xb7\x45\xbe\x45\xd5\x45\xd8\x45\xdc\x45\xe3\x45\xed\x45\xf5\x45\xf9\x46\x13\x46\x7d\x46\xb2\x47\x24\x47"
+"\x2d\x47\x36\x47\x38\x47\x42\x47\x5f\x47\x7e\x47\xbd\x47\xfd\x48\x76\x48\xde\x48\xfb\x49\x1f\x49\x3f\x49\x61\x49\x75\x49\x8e\x49"
+"\x98\x49\xb3\x49\xeb\x4a\x1a\x4a\x2e\x4a\x45\x4a\x76\x4a\x99\x4a\xa7\x4a\xb6\x4a\xbf\x4a\xcc\x4b\x0a\x4b\x45\x4b\x70\x4b\x8e\x4b"
+"\x95\x4b\xac\x4b\xda\x4c\x30\x4c\x38\x4c\x48\x4c\x8f\x4c\xcd\x4d\x03\x4d\x41\x4d\x49\x4e\x0b\x4e\x77\x4e\x7e\x4e\x82\x4e\x9e\x4e"
+"\xbb\x4f\x2b\x4f\x42\x4f\x87\x4f\xb0\x4f\xff\x50\x04\x50\x0d\x50\x16\x50\x1f\x50\x28\x50\x2f\x50\x35\x50\x3e\x50\x45\x50\x4e\x50"
+"\xce\x50\xd8\x50\xe2\x50\xf3\x50\xfd\x51\x61\xfc\x20\x0e\xfc\x20\x0e\xfc\x20\xf7\x64\x20\x1d\x38\xfb\xe6\x06\xa1\xfb\x73\x05\xb2"
+"\xa9\x1d\x0e\xfb\xd3\xbf\xf9\x59\x15\xfb\x03\x07\xa6\xfb\x1a\x05\xb2\x48\x0a\xce\x16\xfb\x03\x07\xa6\xfb\x1a\x05\xb2\x48\x0a\x0e"
+"\xf8\x79\xf9\x4d\x15\x3e\x06\x68\xfb\x58\x05\xfb\x11\x06\xaf\xf7\x58\x05\x3f\x06\x67\xfb\x58\x05\xfb\x0d\x47\xf7\x00\x06\x6c\xfb"
+"\x42\x05\xfb\x06\x47\xf0\x90\x0a\xf7\x10\x90\x0a\xf7\x09\xcf\x22\x06\xaa\xf7\x42\x05\xf5\xcf\x2e\x06\x32\x47\x15\x6c\xfb\x42\x05"
+"\xfb\x11\x06\xab\xf7\x42\x05\x0e\xf7\x8e\xf9\x96\x15\x55\x07\xfb\x14\x7b\x46\x45\xfb\x06\x1a\x4c\xa3\x5a\xb9\x69\x1e\xa6\x78\xa7"
+"\x80\xd3\x75\x08\xfb\xa4\x07\x5e\x91\x65\x9f\x74\xaa\x7c\xa2\x87\x9c\x85\xcc\x08\x3c\x06\x84\xfb\x1f\xd7\x38\xf7\x21\x82\x08\x24"
+"\xc6\xf2\x07\xc1\x8f\xb0\x96\xac\x9f\x08\xc5\xaf\xad\xcf\xda\x1a\xd2\x70\xbd\x51\xac\x1e\x71\x9a\x7e\x90\x2f\xa7\x08\xf7\x8d\x07"
+"\xce\x88\xba\x58\x8c\x42\x08\xda\x06\xf7\x06\x42\xd5\xfb\x0d\x94\x1e\xc1\x07\x50\xfc\x01\x15\x3c\xa0\x66\xb2\xc8\x1a\xcd\xb5\xb6"
+"\xd5\x95\x1e\xc6\xfb\xe4\x15\xf1\x6d\xab\x6d\x49\x1a\x64\x7c\x68\x70\x71\x1e\x73\x74\x72\x82\x60\x86\x08\x0e\xf7\x6b\xf7\x5b\xf9"
+"\x41\x15\x2d\x3f\x3e\x2d\x2d\xd7\x3e\xea\xe8\xd8\xd8\xe7\xec\x40\xd7\x2b\x1f\x45\x04\xc4\xb8\x5e\x52\x54\x5d\x5e\x54\x53\x5d\xb8"
+"\xc3\xc3\xb8\xb8\xc3\x1f\xf8\x2e\xe9\x15\xfc\x1f\xfd\x6d\x05\xcd\x06\xf8\x1f\xf9\x6d\x05\x98\xfc\x17\x15\x2d\x3f\x3f\x2d\x2c\xd7"
+"\x3f\xea\xe8\xd8\xd7\xe8\xeb\x40\xd7\x2b\x1f\x45\x04\xc4\xb8\x5e\x52\x55\x5d\x5e\x54\x52\x5e\xb8\xc3\xc2\xb8\xb8\xc3\x1f\x0e\x84"
+"\xf8\x81\xf7\xe2\x15\x8c\x67\x7f\x5b\x77\x68\xfb\x19\xf7\x37\x18\xf3\xc6\xad\xb6\xd3\x1a\xe7\x47\xcc\x2c\x2b\x40\x46\x33\x5c\x9d"
+"\x66\xca\x3c\x1e\xfb\x11\x43\x66\x5a\x2f\x1a\xfb\x0c\xdd\x3c\xf7\x0f\xbd\xb9\x97\xa2\xaf\x1e\xa0\x99\x9c\x99\xb2\xb1\xc9\x3d\x18"
+"\xf7\x01\x06\xfb\x0e\xf7\x2b\x05\xb0\xc4\xa0\xcd\xc7\x1a\xfb\xb4\xec\x15\x4e\xd1\x82\x9b\xaf\x1a\xbf\xad\xad\xbf\xbd\xb0\x67\x5a"
+"\x5f\x70\x6b\x3f\x5c\x1e\xf7\x19\xfb\xba\x15\x50\x53\x60\x74\x57\x1b\x43\x50\xc4\xd2\xc3\xaa\xb3\xe6\xc5\x1f\x0e\xfc\x58\xcc\xf9"
+"\x6d\x15\x23\xbb\x07\x8c\x51\x7d\x70\x68\x86\x08\x65\x07\xc7\x8f\xac\xba\xdb\x1a\xf0\x07\x0e\xfb\xe9\xf7\x80\x20\x1d\x27\xfb\x17"
+"\x4c\xfb\x4a\xfb\x31\x1a\xfb\x32\xca\xfb\x4a\xef\xfb\x17\x1e\xc2\x06\x33\xf7\x23\x5a\xf7\x3c\xf7\x34\x1a\xf7\x33\xbc\xf7\x3d\xe3"
+"\xf7\x22\x1e\x0e\xfb\xe9\xe8\xfb\x68\x15\xef\xf7\x17\xca\xf7\x4a\xf7\x31\x1a\xf7\x32\x4c\xf7\x4a\x27\xf7\x17\x1e\x54\x06\xe3\xfb"
+"\x23\xbc\xfb\x3c\xfb\x34\x1a\xfb\x33\x5a\xfb\x3d\x33\xfb\x22\x1e\x0e\xfb\xb1\xf7\x34\xf9\x6d\x15\x90\xfb\x04\x21\xb1\x78\x50\xf7"
+"\x00\x6d\x46\x32\xbd\x67\xca\xe8\xc9\x2e\xbe\xaf\x45\xe4\xf7\x00\xa9\x78\xc6\x21\x65\x90\xf7\x04\x05\x0e\x31\xf8\xaa\xf7\x9f\x94"
+"\x1d\x0e\xfc\x20\xe2\xf3\x7c\x0a\xfb\xe9\xa8\x1d\xfc\x20\xf7\x53\xf3\x24\x1d\xfc\x20\xf7\x79\x20\x1d\xfb\x81\xfd\x81\x05\xc2\x06"
+"\xf7\x81\xf9\x81\x05\x0e\xf7\xa7\xf9\x67\x15\x49\x4f\x6d\x5a\x66\x1f\x5d\x4b\x74\x2b\xfb\x1a\x1a\xfb\x88\xdb\xfb\x15\xf7\x2c\xf7"
+"\x2a\xdd\xf7\x15\xf7\x82\xf7\x20\x75\xe9\x5c\xcd\x1e\xbd\x66\x50\xa8\x48\x1b\x3d\x04\xea\xba\x2a\xfb\x58\xfb\x62\x5d\x2b\x29\x2e"
+"\x5c\xef\xf7\x5b\xf7\x5b\xba\xec\xea\x1f\x0e\xf7\x97\xf8\x97\x15\xfc\x97\xe3\xf9\x67\x51\x07\x6c\xfb\x03\x77\x7c\xfb\x1c\x79\x08"
+"\x4b\x07\x0e\xf8\x8e\xe2\x15\xfc\x09\x06\x94\xc7\xab\xb1\xe2\xc0\xef\xc3\x18\xee\xc2\xbe\xd5\xe4\x1a\xc7\x73\xc3\x61\xb2\x1e\xb1"
+"\x61\x57\x9d\x48\x1b\x31\x48\x6b\x4d\x64\x1f\x72\x65\x80\x5e\x89\x42\x08\xe3\x06\x8e\xbc\x91\xa8\x97\xa3\x08\xb7\xa2\xb9\xa6\xc0"
+"\x1b\xdb\xc7\x51\x3d\x51\x6a\x59\x4c\x67\x1f\x2f\x55\xfb\x28\x36\x60\x47\x83\xfb\x32\x19\xf8\x6c\x06\x0e\xf7\x71\xf7\xe1\x15\x96"
+"\x06\xb0\x06\xeb\xbe\x5e\x34\x30\x54\x54\x30\x2a\x5c\xbc\xf5\x85\x1f\x33\x06\x8f\x51\x95\x65\x9c\x6b\x08\x45\xb0\xd0\x68\xec\x1b"
+"\xf7\x26\xe9\xe3\xf7\x1d\xe7\x68\xbd\x36\xa9\x1f\xcd\xa6\xac\xbd\xd4\x1a\xf7\x10\x3a\xd6\xfb\x1b\xfb\x23\x3f\x3b\xfb\x2d\x88\x1e"
+"\xe3\x06\x8c\xb7\x8f\xa4\x96\xa1\x08\xb4\x9f\xb7\xa3\xc2\x1b\xd9\xba\x5c\x3d\x58\x79\x6c\x64\x7a\x1f\x73\x81\x6b\x87\x4e\x8a\x08"
+"\x0e\xf7\xdb\xf7\x43\x15\xfb\x43\xe3\xf7\x43\xf4\xda\x22\xf8\x69\x4a\x07\xfb\xd6\xfc\x5b\x05\x2e\x07\xf7\xbf\xda\x15\xfb\x72\x06"
+"\xf7\x72\xf7\xd3\x05\x0e\xf8\x70\xf9\x59\x15\xfc\x02\x06\x56\xfc\x16\x05\xdc\x06\xbc\xb4\xad\x9c\xc3\x1b\xea\xc6\x4a\x22\x25\x50"
+"\x4d\x2b\x3e\x5c\xb2\xdb\x76\x1f\x33\x06\x97\x51\x95\x6f\xa0\x71\x08\x55\xb3\xd3\x6c\xdb\x1b\xf7\x23\xef\xf3\xf7\x2a\xf7\x20\x2e"
+"\xeb\xfb\x1c\x59\x63\x7e\x6d\x62\x1f\xa7\xf7\x5a\x05\xf7\xbb\x06\x0e\xf8\x86\xf8\xab\x15\xf7\x0a\x7a\x3f\xd1\xfb\x00\x1b\x3d\x45"
+"\x65\x4a\x61\x1f\x5e\x44\x78\x33\xfb\x17\x1a\xfb\x0e\x9c\x3e\xb6\x4b\x1e\x50\xb1\xc9\x6c\xd9\x1b\xf7\x1b\xec\xf0\xf7\x21\xf7\x19"
+"\x31\xe9\xfb\x13\x45\x54\x71\x56\x65\x1f\xf7\x47\x8c\xc3\xee\xf0\x1b\xc9\xb6\x63\x45\x99\x1f\xfb\x11\xfb\x3b\x15\xe0\xc0\x4f\x2b"
+"\x30\x4f\x49\x3a\x39\x4d\xd0\xe7\xe5\xc7\xc9\xe2\x1f\x0e\xf8\x9c\xf9\x59\x15\xfc\x6e\x34\xf8\x13\x06\xfb\x3d\xfb\x85\x46\xfb\x28"
+"\x56\xfb\x7d\x08\xe9\x06\xb2\xf7\x77\xe4\xf7\x57\xf7\x34\xf7\x69\x08\x0e\xf8\x1b\xf8\x11\x15\xd5\xb8\xa2\xaf\xcf\x1a\xf7\x06\x34"
+"\xda\xfb\x12\xfb\x11\x33\x3c\xfb\x05\x46\xa2\x68\xd4\x5d\x1e\x3a\x62\x63\x50\x3b\x1a\xfb\x18\xec\x2f\xf7\x21\xf7\x20\xed\xe7\xf7"
+"\x18\xdb\x63\xc6\x39\xb4\x1e\xfb\x08\xf7\x9c\x15\xd6\xbb\x5e\x43\x47\x5a\x5e\x41\x40\x5b\xb8\xd1\xd1\xbb\xb8\xd6\x1f\xfb\xc4\x04"
+"\xe3\xc7\x51\x37\x34\x50\x52\x30\x35\x4f\xc6\xdf\xe1\xc6\xc4\xe4\x1f\x0e\xc0\xf7\x39\x15\xfb\x0a\x9c\xd7\x45\xf7\x00\x1b\xda\xd1"
+"\xb1\xcc\xb5\x1f\xb7\xd2\x9f\xe3\xf7\x17\x1a\xf7\x0e\x79\xd8\x61\xcb\x1e\xc6\x64\x4d\xaa\x3d\x1b\xfb\x1b\x2a\x26\xfb\x20\xfb\x19"
+"\xe5\x2d\xf7\x14\xce\xbd\xa3\xc2\xb8\x1f\xfb\x48\x8a\x53\x28\x26\x1b\x4d\x60\xb3\xd1\x7d\x1f\xf7\x14\xf8\x75\x15\xdd\xc9\x46\x2e"
+"\x32\x4f\x4d\x34\x36\x56\xc7\xeb\xe6\xc6\xcd\xdd\x1f\x0e\xfc\x20\xf7\x6a\xf3\x3b\x1d\xf8\xa0\x04\x23\x23\xf3\x06\x0e\xfc\x20\xf7"
+"\x6b\xf8\xa0\x3b\x1d\x22\xfb\xd0\x7c\x0a\x31\xb8\xf7\x5a\x8a\x1d\x31\xf8\xaa\xf7\xf5\xa1\x1d\x0e\x31\xf8\xaf\xf7\x9f\x15\xfc\x7d"
+"\xf7\x63\x05\x3c\x07\xf8\x1e\xfb\x38\xfc\x1e\xfb\x35\x05\x3c\x07\xf8\x7d\xf7\x63\x05\x0e\xf7\xde\xf7\x5b\x15\xba\x07\x8c\xb8\x99"
+"\xa1\xcb\xc4\x08\xd6\xcf\xa4\xb7\xce\x1a\xf7\x09\x38\xd6\xfb\x16\xfb\x25\x41\x3c\xfb\x2f\x1e\xe0\x06\xf7\x00\xb2\xbb\xe5\xd8\xbe"
+"\x5d\x47\x5d\x75\x64\x56\x5c\x1e\x36\x40\x78\x6e\x50\x1a\x54\x07\xe5\x2c\x15\x31\x23\xe5\x06\x0e\xf7\xe9\xf9\x2d\xf8\x89\x15\x75"
+"\x49\x05\xc5\x72\x61\xa8\x54\x1b\xfb\x1a\xfb\x0f\xfb\x18\xfb\x25\x23\xd1\x3c\xe8\xc0\xb6\xa1\xbd\xb9\x1f\x58\x94\xb0\x71\xcb\x1b"
+"\xd6\xc7\xa8\xc7\xbe\x1f\xc2\xcb\xaa\xdb\xda\x1a\xf7\x60\xfb\x55\xf7\x3c\xfb\x7d\xfb\x0b\xfb\x12\x5a\x3b\x33\x1e\x29\x32\x4f\xfb"
+"\x1a\xfb\x17\x1a\xfb\x72\xf7\x5e\xfb\x46\xf7\x91\xd5\xda\x9a\xa6\xd4\x1e\x6f\xce\x05\x74\x38\x54\x82\x53\x1b\xfb\x67\xfb\x37\xf7"
+"\x27\xf7\x53\xf7\x66\xf7\x4a\xf7\x49\xf7\x67\xf7\x54\xf7\x34\xfb\x20\xfb\x3c\xfb\x08\x38\xfb\x05\x36\x70\x74\x9f\xa3\x94\x8f\x9d"
+"\x93\xa2\x1f\xe5\xf7\xac\x05\xfb\x7d\x60\x15\xc3\xb4\x62\x54\x88\x1f\x89\x59\x70\x37\x72\x66\x08\x62\x6f\x66\x73\x66\x1b\x54\x5f"
+"\xbf\xcd\xf7\x04\xd8\xf1\xdf\x1f\x0e\x84\x23\x0a\x0e\x84\x54\x0a\xbb\x2a\x0a\x0e\xbb\x6f\x1d\x0e\x84\x24\x0a\x0e\x4c\xf7\x4b\xf7"
+"\xe0\x15\xf7\xf0\xdd\xfb\xf0\x92\x0a\x0e\xf3\x32\x1d\x0e\xbb\xf8\xbb\x4e\x0a\xe8\xf9\x6d\x2e\xfb\xcf\xfc\x0b\xf7\xcf\x2e\xfd\x6d"
+"\xe8\xf7\xe0\x07\x0e\xfc\x20\x30\x0a\x0e\xfb\x42\x60\x0a\x0e\x84\x64\x0a\x3a\x1d\x0e\xf7\x33\x76\x1d\xbb\x36\x1d\x0e\xf3\x25\x0a"
+"\x0e\x84\x6d\x1d\xf3\xf9\x71\x8a\x15\x2d\xd8\x05\xd0\xd7\xad\xe8\xf7\x08\x1a\xf7\x77\xfb\x22\xf7\x2d\xfb\x66\xfb\x67\xfb\x21\xfb"
+"\x2d\xfb\x79\xfb\x78\xf7\x21\xfb\x2e\xf7\x67\xd4\xc6\x9b\xae\xc6\x1e\xf4\x34\x05\xfb\x61\xf7\x9c\x15\x5d\x53\xd5\x4d\x05\x76\x60"
+"\x6a\x84\x5f\x1b\xfb\x2f\x24\xf7\x0c\xf7\x48\xf7\x48\xf2\xf7\x0c\xf7\x30\xf7\x2f\xf3\xfb\x0c\xfb\x47\x2c\x72\x43\x55\x4e\x1f\x0e"
+"\xbb\x33\x0a\x0e\x84\x29\x0a\x0e\x4c\x3e\x0a\x0e\xbb\x2d\x1d\x0e\x84\xf8\x1c\x16\xf7\x91\xf9\x6d\x05\x28\x06\xfb\x5e\xfc\xfd\xfb"
+"\x6a\xf8\xfd\x05\x27\x06\xf7\x9a\xfd\x6d\x05\x0e\xf7\xa2\x34\x1d\x0e\x84\x6e\x1d\x84\x28\x0a\x0e\x4c\x2d\x0a\x0e\xfc\x20\xf7\x8e"
+"\x20\x1d\xfb\x4e\xfe\x41\xf7\x4e\xd3\x24\xf9\xb1\xf2\x06\x0e\xfc\x20\xba\xf9\x6d\x15\x54\x06\xf7\x81\xfd\x81\x05\xc2\x06\x0e\xfc"
+"\x20\xa2\xfb\x68\x15\xf7\x4e\xfa\x41\xfb\x4e\x43\xf2\xfd\xb1\x24\x06\x0e\xfb\x61\xf7\x59\xf9\x59\x15\xfb\x2d\xfc\x10\x05\xd0\x06"
+"\xf7\x0d\xf7\xc0\xf7\x0e\xfb\xc0\x05\xd0\x06\xfb\x2f\xf8\x10\x05\x0e\xf8\xd6\xfb\x12\x9c\x0a\xfc\x58\xf7\x32\xf8\x71\x15\xf3\x5b"
+"\x07\x8a\xc4\x9a\xa7\xad\x90\x08\xb1\x07\x50\x86\x69\x5c\x3c\x1a\x26\x07\x0e\x25\x1d\x0e\xc1\xf9\x6d\x15\xfd\x6d\xd6\xce\x07\x4e"
+"\xb3\xc0\x6e\xd4\x1b\xf7\x1e\xe5\xf7\x05\xf7\x42\xf7\x3e\x36\xf4\xfb\x1f\x43\x58\x70\x50\x64\x1f\xf7\xa8\x07\xf7\x26\xfb\xa0\x15"
+"\xe8\xc7\x3a\xfb\x11\xfb\x0b\x4d\xa2\x1d\xfb\x42\x33\x1d\x0e\x5a\x0a\x0e\x29\x1d\x0e\xfc\x20\xf7\x96\x35\x0a\x0e\xf8\x28\xf8\xa0"
+"\x32\x0a\x70\x1d\x0e\xfc\x58\xf7\x2a\x88\x0a\x0e\xfc\x58\xd1\xf8\xa0\x6a\x0a\xfb\x42\x6b\x0a\x0e\xfc\x58\x43\x1d\x0e\xf7\x33\xd1"
+"\x20\x0a\xfc\xa0\x9f\x0a\xc9\xae\x65\x48\x1e\xfb\xfd\x9f\x0a\xc8\xaf\x64\x49\x1e\xfb\xfd\xdf\xf8\x1d\x07\xe9\x55\xbf\x29\x45\x61"
+"\x76\x50\x5a\x1e\xc3\x6c\x61\xa3\x47\x1b\x45\x5c\x71\x4c\x5f\x1f\xd5\x07\x0e\x35\x1d\x0e\x2a\x1d\x0e\xc1\xfb\x6e\x15\xdf\x86\x0a"
+"\xf7\x44\x35\xf7\x02\xfb\x1f\x44\x52\x6b\x4d\x64\x1f\xda\x3e\x77\x0a\xf8\x83\xfb\x6e\x15\xf9\x7a\x41\x45\x07\xc2\x64\x50\xa9\x46"
+"\x1b\xfb\x1e\x31\xfb\x05\xfb\x42\xfb\x3e\xe0\x22\xf7\x1f\xd4\xbd\xa5\xc4\xb2\x1f\xfb\xaa\x07\xfb\x26\xf9\x3b\x15\xe4\xc4\x3c\xfb"
+"\x13\xfb\x0c\x8e\x0a\xe7\x1f\x0e\xfb\xe9\x37\x0a\x0e\xfb\x42\x31\x1d\x0e\xfc\x20\x4b\x1d\x0e\x26\x1d\x0e\xfb\x42\xf7\xb1\x96\x0a"
+"\xfc\x3d\xfb\x20\xf8\x3d\x05\x2d\x06\xf7\x4c\xfc\xa0\x05\x0e\xbb\x2c\x0a\x0e\xfb\x42\xf7\xb8\xf7\xa3\x15\xf7\x44\xf7\x91\x05\x2d"
+"\x06\xfb\x12\xfb\x52\xfb\x12\xf7\x52\x05\x2c\x06\xf7\x43\xfb\x95\xfb\x4d\xfb\x9f\x05\xea\x06\xf7\x19\xf7\x5d\xf7\x17\xfb\x5d\x05"
+"\xec\x06\x0e\xfb\x42\x2b\x0a\x0e\xfb\x42\x3e\x1d\x0e\xfb\xe8\xf7\xa8\x20\x1d\x5d\x06\x46\x8a\x61\x59\x8d\x3a\x08\xfb\x3a\x07\x8c"
+"\x32\x76\x65\x51\x80\x08\x46\x07\xc5\x80\xa0\x65\x8a\x32\x08\xfb\x3a\x07\x89\x3a\xb5\x59\xd0\x8a\x08\xb9\xcc\x7c\x06\x59\x8c\x7e"
+"\x99\xbf\x1a\xf7\x49\x07\x8a\xde\x6f\xc1\x56\xa0\x08\xc5\xa0\xa3\xb9\xe5\x1a\xf7\x49\x07\xbf\x98\x99\xbd\x8c\x1e\x9a\x06\x0e\xfc"
+"\x32\xef\x20\x1d\xfe\x41\xc7\xfa\x41\x07\x0e\xfb\xe8\xa8\xfb\x68\x15\xba\x06\xd1\x8c\xb5\xbd\x89\xdc\x08\xf7\x3a\x07\x8a\xe4\xa0"
+"\xb1\xc3\x96\x08\xd0\x07\x53\x96\x76\xb1\x8c\xe4\x08\xf7\x3a\x07\x8d\xdc\x61\xbd\x45\x8c\x08\x5c\x4a\x9b\x06\xbd\x8a\x99\x7d\x57"
+"\x1a\xfb\x49\x07\x8c\x38\xa7\x55\xc0\x76\x56\x77\x6f\x55\x8a\x38\x08\xfb\x49\x07\x57\x7e\x7d\x58\x8a\x1e\x7b\x06\x0e\x31\xf8\x5b"
+"\xf8\x2f\x15\x56\x8c\x7c\x75\x66\x1b\x7c\x7c\x90\x97\x77\x1f\xfb\x09\xd0\x05\x96\x7a\x78\x90\x79\x1b\x4a\x65\x59\x2c\x86\x1f\xc0"
+"\x06\x8d\xa2\x8d\x95\x8f\x95\x08\xa1\x95\x9b\x98\x9e\x1b\x95\xa2\x83\x85\x95\x1f\xed\x4c\x05\x7b\xa5\xa9\x81\xa4\x1b\xcc\xb3\xbc"
+"\xd9\x1f\x9b\x07\x0e\xfb\xe9\xf7\x0e\xfb\x61\x15\xde\xf7\xe6\x06\x75\xf7\x73\x05\x64\x06\x75\xfb\x73\x05\x8a\xf7\xb3\x15\xdf\xf3"
+"\x37\x06\x0e\xf7\xcc\xf8\x62\x15\xc8\x86\xb3\x61\x92\x48\x08\xdf\x06\x85\xf7\x06\x46\xd0\xfb\x09\x93\x08\xe4\x61\x31\x07\xfb\x1b"
+"\x7d\x38\xfb\x00\xfb\x37\x1a\xfb\x33\xde\x23\xf7\x1b\x7f\x1e\x29\xb5\xec\x07\xf7\x08\x91\xd6\xd8\x92\xf7\x0c\x08\x37\x06\x7f\x3c"
+"\x65\x62\x4b\x84\x08\x61\x8d\x15\x38\x98\x5b\xd3\xf7\x05\x1a\xf7\x0d\xb8\xd2\xe1\x9b\x1e\x0e\xf8\x02\xf8\x0c\x15\xfb\x34\x06\x84"
+"\x98\x86\x94\x87\x91\x76\xb2\x18\x7c\xa6\x84\xa5\xa7\x1a\xd7\xc3\xbe\xe0\xe2\xb9\x58\x24\x8e\x1e\xe3\x06\x8a\xc8\x83\xb2\x78\xac"
+"\x08\xc9\x67\x44\xb0\x36\x1b\xfb\x1a\x23\x2e\xfb\x0d\x5f\x92\x78\xb9\x3f\x1f\x3a\x54\xf7\x02\x06\x9b\x71\x93\x70\x72\x1a\x4d\x6a"
+"\x59\x2f\x3c\x1e\xbb\x49\x05\xa4\xb2\xae\x97\xae\x1b\xa0\xa3\x87\x84\xa0\x1f\x6e\xde\xa5\x85\xb0\x1b\xbf\xb2\x9c\xb2\xb3\x1f\x61"
+"\xcd\x05\x77\x6e\x6f\x81\x71\x1b\x79\x78\x8f\x97\x61\x1f\x97\x64\x7b\x8e\x70\x1b\x60\x63\x7e\x71\x64\x1f\xe5\xe6\xa7\xb9\xbf\x1a"
+"\x9e\x86\xa2\x81\xa8\x1e\xf7\x1c\x06\x0e\xfc\x20\xf7\xe1\x2f\x1d\x0e\xf8\x83\xf7\xf6\x15\xfb\x2b\x06\xf7\x5d\xf7\xf7\x05\x36\x06"
+"\xfb\x47\xfb\xd6\xfb\x4d\xf7\xd6\x05\x36\x06\xf7\x61\xfb\xf7\x05\xfb\x2b\x58\xf7\x40\x3e\xfb\x40\x58\xf7\x40\xfb\x43\xe3\xf7\x43"
+"\xf7\x3e\xbe\xfb\x3e\xd8\xf7\x3e\x06\x0e\xf8\x67\xf8\x62\x15\xfb\x05\x06\x97\xd1\x05\xdd\x9a\xab\xb7\xba\x1b\x9b\x96\x87\x7d\xa4"
+"\x1f\xa9\xda\x05\x98\x6d\x74\x91\x71\x1b\x63\x60\x79\x6d\x6b\x1f\x6d\x6e\x77\x64\x80\x53\x75\x23\x18\xfb\x11\x45\xf7\x05\x06\x3d"
+"\xfc\x31\x05\x3e\x7c\x6d\x67\x57\x1b\x78\x7d\x90\x96\x7a\x1f\x7a\x37\x05\x84\x98\x9d\x88\xa3\x1b\xbd\xbe\xa1\xae\xad\x1f\xab\xac"
+"\x9f\xba\x98\xd1\xd6\xf8\x21\x18\xf7\x12\x06\x0e\xf8\x64\x20\x0a\x93\x07\x9f\x07\xf5\x45\xd2\x22\x24\x3a\x42\x2f\x65\x98\x6e\xaa"
+"\x68\x1e\x41\x64\x6c\x5f\x48\x1a\x49\xa6\x5d\xcc\x5e\x1e\xf7\x3e\xfb\x09\x05\xb0\x71\x9c\x70\x68\x1a\x58\x64\x68\x53\x66\x6f\x9a"
+"\xa8\x77\x1e\x7e\x9e\x87\x9f\xb2\x1a\x36\x7c\x06\x6e\x8e\x77\x93\x75\x1e\x44\xa5\xcc\x61\xdf\x1b\xf6\xda\xd2\xec\xb6\x7e\xa9\x64"
+"\xb8\x1f\xd3\xa6\xaf\xbf\xd8\x1a\xd3\x6e\xb7\x3c\xbe\x1e\xfb\x26\xe9\x05\x61\xa7\x7c\x9f\xa8\x1a\xbc\xb1\xaf\xbe\xc6\xb1\x63\x4d"
+"\x1e\x7a\x07\x82\x07\xfb\x54\xfb\xbb\x15\x56\xb2\x7e\x9f\xb3\x1a\xb3\x9e\xa6\xbf\xad\x1e\xf7\x34\xfb\x01\x05\xbc\x6a\xa3\x66\x62"
+"\x1a\x62\x71\x66\x5d\x72\x1e\x0e\xf8\x79\xf7\x52\x15\x55\xc1\x05\x9f\xaa\x94\xab\xad\x1a\xac\x81\xad\x7b\xa5\x1e\xc2\xc2\x52\xc5"
+"\x50\x56\x05\x9d\x71\x68\x95\x66\x1b\x67\x6b\x82\x7a\x6e\x1f\x54\xc2\x53\x56\xc1\x54\x05\x77\x6e\x7f\x66\x67\x1a\x66\x97\x65\x9f"
+"\x70\x1e\x5b\x5a\xc3\x52\xbe\xbe\x05\x7b\xa5\xae\x82\xac\x1b\xb3\xac\x95\x9f\xa6\x1f\xc0\x56\x05\xfb\x2d\xf7\xc9\x15\xc7\xba\x5c"
+"\x50\x53\x5b\x5c\x51\x50\x5b\xba\xc4\xc5\xbb\xba\xc5\x1f\x0e\xfc\x77\xbb\xf9\x59\x15\xfb\x03\x07\xa6\xfb\x1a\x05\xb3\x48\x0a\x0e"
+"\xfb\xe9\xf7\x21\xf8\x71\x15\xf3\x5b\x07\x8a\xc4\x9a\xa7\xad\x90\x08\xb1\x07\x50\x86\x69\x5c\x3c\x1a\x26\x07\xf7\x8f\x16\xf3\x5b"
+"\x07\x8a\xc4\x9a\xa7\xad\x90\x08\xb1\x07\x50\x86\x69\x5c\x3c\x1a\x26\x07\x0e\xed\x7e\x0a\xf7\x61\x32\x82\x0a\x0e\xfb\xe9\xe6\x7e"
+"\x0a\x0e\xfb\xe9\xf7\x83\xf7\xd1\x7f\x0a\x0e\xfb\x42\xf7\x90\x35\x0a\xf7\x4c\xcf\x9a\x0a\x38\x22\xde\x06\x0e\xfb\x42\xf7\x95\x35"
+"\x0a\xf7\x41\xf7\xa5\x15\x38\xfd\x6d\xde\x06\x0e\xf8\xc5\xf7\xcc\x15\xfc\xca\x43\xf8\xca\x06\x0e\x9c\x1d\xfc\xe9\xe3\xf8\xe9\xf7"
+"\x56\x06\x0e\x9c\x1d\xfb\xc7\xfb\x55\x39\xf7\x55\xfb\x64\xe3\xf7\x64\xf7\x56\xdd\xfb\x56\xf7\xc7\xf7\x56\x06\x0e\xfc\x20\x46\x0a"
+"\xfb\x1d\xf8\x9e\x20\x1d\xfb\x8e\x06\xfb\x12\x29\x22\xfb\x1b\x41\xa9\x46\xbf\x60\x1f\xae\x6e\xae\x7f\xc2\x88\x08\xfc\x48\xcb\xf9"
+"\xde\xdd\xfd\xde\xcb\xf9\xde\xc4\x07\x0e\xfb\xd8\xf7\x43\xf8\x6a\x15\x46\x53\x53\x46\x46\xc3\x53\xd0\xcf\xc4\xc3\xce\xd2\x54\xc3"
+"\x45\x1f\x0e\xfc\x58\xcc\xf3\x15\x23\xbb\x07\x8d\x51\x7c\x70\x67\x86\x08\x65\x07\xc7\x8f\xad\xba\xdb\x1a\xf0\x07\x0e\xfb\xe9\xba"
+"\xf3\x71\x1d\xfb\xe9\xbc\xf9\x59\x71\x1d\xf7\x90\xf7\xd1\x7f\x0a\xf7\x5b\xe4\x15\xfb\x2e\xf7\x0d\x05\x38\x07\xf7\x00\x38\xfb\x00"
+"\x38\x05\x38\x07\xf7\x2e\xf7\x0e\x05\x0e\xf7\xda\xf7\x6f\xf3\x3b\x1d\xf7\xe1\xf3\x3b\x1d\xf7\xe1\xf3\x24\x1d\xf7\xda\xf7\x32\xf9"
+"\x6c\x15\x39\x48\x48\x38\x37\xce\x48\xde\xdc\xcf\xce\xdd\x93\x0a\x59\x62\x63\x5a\x58\x63\xb4\xbd\xbd\xb3\xb3\xbd\x1f\xf7\xe2\xd1"
+"\x15\xfc\x1f\xfd\x8a\x05\xcd\x06\xf8\x1f\xf9\x8a\x05\x40\xfc\x5f\x15\x39\x48\x48\x38\x37\xce\x48\xde\xdc\xcf\xcf\xdc\xe0\x49\xce"
+"\x37\x1f\x4f\x04\xbe\xb3\x63\x58\x5a\x62\x62\x59\x5a\xc0\x1d\xf7\xfc\xc7\x15\x39\x48\x47\x39\x38\xce\x47\xde\xdc\xcf\xce\xdd\x93"
+"\x0a\x5a\x62\x62\x5a\x59\xc0\x1d\x0e\x4c\xf7\xa7\xf7\xd9\x15\x5c\x07\x8a\x5e\x7d\x75\x4a\x52\x08\x40\x47\x72\x5f\x48\x1a\xfb\x09"
+"\xde\x40\xf7\x17\xf7\x25\xd5\xda\xf7\x2f\x1e\x36\x06\xfb\x00\x64\x5b\x31\x3d\x58\xb9\xcf\xb9\xa1\xb2\xc0\xba\x1e\xe1\xd6\x9e\xa8"
+"\xc6\x1a\xc2\x07\x31\xea\x15\xe5\xf3\x31\x06\x0e\xfb\xe9\xf7\x1b\xf9\x78\x22\x0a\xfb\xe9\xf7\x50\x41\x1d\xfb\xe9\xf7\x08\xf9\x79"
+"\x27\x1d\xfb\xe9\xf7\x99\xf9\x61\x36\x0a\xfb\xe9\xf7\xc2\xf9\x51\x28\x1d\xfb\xe9\x9a\x77\x1d\xfb\xe9\xf7\x6f\xf9\x60\x24\x1d\xfb"
+"\xe9\xf7\x1a\x3a\x0a\xfb\xe9\xf7\x3b\xf9\x86\x27\x0a\x0e\xfb\xe9\xf7\x39\x16\x61\x2f\x97\x84\x05\x91\x4d\x1d\xae\xc5\x9b\x1d\xa2"
+"\xc3\x05\x0e\xfb\xe9\xc8\xf9\x78\x39\x0a\xfb\xe9\xf7\x2e\x16\x4e\x75\x67\x62\x5b\x1a\x64\x5b\x1d\xa1\xa4\x86\xa1\x1b\x9e\x60\x1d"
+"\xb7\x1d\x73\x1b\x5c\x72\x9e\xae\xb5\xa0\xa2\xd4\xb4\x1f\x0e\xfb\xe9\xf7\x66\xf8\xe3\x42\x1d\xf7\xda\x8c\x0a\xf7\xda\x5e\x0a\x0e"
+"\xfb\xc4\xf7\xd4\xf7\xf6\x15\xfb\xa9\x58\xf7\xa9\x06\x98\xf7\x26\x15\x89\x87\x89\x8a\x87\x1b\x7c\x83\x93\x9a\x1f\xf7\x47\x07\xca"
+"\x63\xaa\x39\x39\x5e\x66\x44\x89\x1e\xc6\x06\xb6\x92\x9b\x98\xb8\x1b\xb7\xa2\x7c\x6e\x1f\x7e\x07\x89\x73\x82\x85\x65\x88\x61\x88"
+"\x62\x83\x7a\x84\x08\x66\x7b\x77\x6d\x62\x1a\x50\xb3\x66\xcb\xb2\xac\x99\xa8\xac\x1e\x6c\x91\x9b\x7f\xac\x1b\x97\x92\x8c\x90\x98"
+"\x1f\x31\xf7\x04\x15\x67\x61\x6d\x5a\x67\x76\x9c\xa9\xab\x9f\x9a\xbf\x92\x1e\xbd\x93\x97\x8d\x99\x91\x08\x0e\xf7\x41\xf8\x2a\x15"
+"\xf7\xd7\x2e\xfc\x09\x07\x3b\x53\x05\x3e\x07\xdb\xc4\x05\xfb\xac\xf8\x6c\xdd\xfc\x0f\xf7\x8b\x07\xf7\x3f\xf7\x0e\x05\xd7\x07\x0e"
+"\xf3\x53\x0a\x0e\xf7\xda\xf8\xfe\xf7\xdb\x15\xf7\xdc\xdd\xfb\xdc\xf7\x82\xf7\xe4\xdd\xfc\x41\x3f\x06\xc7\x60\x51\xa7\x39\x1b\x42"
+"\x41\x6e\x5a\x59\x1f\x47\x48\x69\x23\xfb\x1c\x1a\xfb\x10\xa7\x2f\xc6\x47\x1e\x4f\xbf\xd5\x6b\xe0\x1b\xdc\xc4\xa8\xcc\xb9\x1f\x41"
+"\xf8\x46\xdd\xfb\xe9\x07\x2e\xef\x15\x3a\x63\x4f\x64\x37\x1b\x49\x56\xa6\xbe\x68\x1f\x67\xc1\x7c\xcb\xf1\x1a\xf1\x9a\xcc\xaf\xc1"
+"\x1e\xbe\xae\xc0\xa6\xce\x1b\xdf\xc6\x64\x3a\xb3\x1f\x0e\xfb\xc9\xf7\xce\xf7\xf6\x15\xfb\x9b\x58\xf7\x9b\x06\xfb\x18\xf8\x4b\x15"
+"\x30\x58\x4d\xfb\x02\xfb\x01\xbe\x4d\xe6\xe5\xbf\xc9\xf6\xf7\x05\x59\xc8\x2f\x1f\x57\x04\xc0\xaa\x5e\x3f\x42\x6b\x5e\x57\x57\x6b"
+"\xb8\xd6\xd5\xab\xb8\xbf\x1f\x0e\xf7\x6b\x51\x0a\x0e\xfc\x20\xf7\x46\x20\x0a\x30\x1d\x06\x0e\xfc\x58\xf7\x26\xf8\x39\x15\xf7\xc8"
+"\x38\xfb\xf4\x07\x4c\x59\x05\x4b\x07\xca\xbd\x05\xfb\xcd\xde\xf7\xf9\x07\xcd\xbe\x05\xcb\x07\x0e\x4c\x55\x0a\x0e\xf7\xa2\xf9\xb8"
+"\xf7\x33\x15\x46\x74\x89\x1d\xe1\x69\x3b\xbf\x29\x1b\x39\x45\x64\x48\x62\x1f\xd1\x63\x48\xaf\x32\x1b\xfb\x2c\x36\x26\xfb\x47\xfb"
+"\x48\xe0\x25\xf7\x2c\xe3\xcb\xad\xd0\xb5\x1f\x48\xb3\xd0\x67\xe0\x1b\xf7\x0b\xde\xcf\xf7\x06\xa0\x1f\xfc\xf7\xf7\xc3\x15\xe9\xc3"
+"\x3f\xfb\x16\xfb\x11\x52\x3e\x2e\x2e\x52\xd8\xf7\x14\xf7\x12\xc4\xd8\xe8\x1f\xf7\x82\xfb\x34\x15\xec\x92\xc5\xca\xe0\x1b\xe0\xc6"
+"\x4a\x2c\x1f\x0e\x4c\xf7\xa3\xf7\xf1\x15\x9b\x06\xc0\xa3\x88\x81\xa4\x1f\xbe\x78\xa7\x5f\x4f\x1a\x31\x46\x4e\x28\x1e\x6b\x06\x82"
+"\x3d\x06\x88\x9d\x95\x8a\x9f\x1b\xf7\x2c\xeb\xe7\xf7\x26\xc3\x7b\xb1\x65\xae\x1f\x70\xa4\x70\x98\x57\x9b\x08\xe1\xa7\xb2\xb8\xd2"
+"\x1a\xf7\x02\x33\xd5\xfb\x16\x48\x4d\x77\x68\x5d\x1e\x63\x6b\x7a\x63\x4b\x1a\xfc\xae\xde\xf8\xae\x07\xd0\xc3\xb7\xe1\xdc\xc4\x5e"
+"\x4b\x4a\x4c\x5d\x32\x1e\x81\x06\x0e\xfb\xe9\xf7\x2b\x95\x1d\x0e\x31\xb3\xf8\x0b\x15\x45\xf8\x46\xfb\x6f\xd1\xf7\xb5\x07\x0e\xf8"
+"\xb4\xbc\x15\x89\x81\x87\x8b\x87\x1b\x6e\x7b\x99\xa6\x1f\xf8\x48\x38\xfb\xbd\x07\x20\x53\x45\x34\x4a\x61\xb3\xca\x1e\xf8\x07\x38"
+"\xfd\x7c\xde\xf7\x73\x07\x79\xa4\xa8\x83\xaf\x1b\xcf\xc2\xa7\xc2\xb3\x1f\x52\x8d\xa6\x71\xc4\x1b\x9d\x98\x8d\x92\xa5\x1f\x0e\xf7"
+"\xda\xf7\xb1\xf9\x36\x15\xf7\x2d\xc2\xfc\x0b\x54\xf7\x2e\xfc\x12\xcf\x06\xf8\x63\x16\xf7\x0f\xf7\xe9\x05\xfb\xe9\xce\xf8\x49\x30"
+"\x07\xfb\x17\xfb\xfe\xfb\x18\xf7\xfe\x05\x2d\xfc\x49\xce\xf7\xe9\x06\xf7\x0d\xfb\xe9\x05\x0e\xbb\x59\x0a\xf7\x34\xf7\x10\xf8\xd8"
+"\x15\xfb\xbc\xc9\xf8\x3d\x60\x07\x7a\x4b\x7d\x80\x43\x84\x7c\x8a\x18\x5d\x07\xf8\xc2\xf7\x15\x45\x1d\xf7\x38\xfd\x1f\x5b\x0a\x71"
+"\x64\x86\x2a\x19\xf7\xc4\x06\x0e\x31\xf8\xaa\xf8\x34\x94\x1d\xfb\xb3\xbd\x1d\x84\xf7\x4c\xf7\x51\x15\xf7\x79\x06\xf7\x0b\xdf\xe1"
+"\xf7\x0e\xf7\x18\x36\xdb\xfb\x1f\x1f\xfb\x64\xf7\x0c\x2e\xfd\x6d\xe8\x06\xf7\xa3\x04\xf7\x94\xf7\x56\x07\xe2\xbe\x5b\x3b\x3a\x58"
+"\x5c\x34\x1f\x0e\xf7\x34\xf7\x11\x95\x1d\xf8\xda\xf7\x15\x45\x1d\x9e\x7f\x1d\x31\xf8\xaa\xf7\xa3\x15\xfc\x78\x45\xf8\x78\x06\xfb"
+"\x52\x2a\x15\x23\x23\xf3\x06\xf8\x6c\x04\x23\x23\xf3\x06\x0e\xfc\x32\xef\x20\x1d\xfc\x25\xc7\xf8\x25\x07\x4f\xfc\xb0\x15\xfc\x25"
+"\xc7\xf8\x25\x07\x0e\xfb\xa6\xf7\x5c\xf9\x42\x15\x37\x47\x47\x38\x38\xcf\x46\xdd\xe0\xcf\xce\xe0\xde\x47\xcf\x38\x1f\x52\x04\xbf"
+"\xb5\x61\x57\x56\x61\x61\x55\x59\x60\xb6\xbf\xbf\xb5\xb5\xc0\x1f\x0e\xc1\xfb\x6e\x15\xde\x86\x0a\xf7\x42\x33\xf7\x04\xfb\x1c\x48"
+"\x51\x6e\x58\x67\x1f\xf7\x93\x38\x07\xf7\x79\xfb\x91\x8e\x1d\xf7\x34\xf7\x24\x57\x0a\xf8\x80\xf7\x4a\x45\x1d\x80\x7f\x1d\xfb\xe9"
+"\xf7\xce\xf7\xea\x5b\x0a\x70\x64\x87\x2a\x19\xf7\xc4\x06\x0e\xca\xf7\xa4\xf7\xd9\x15\xf7\x1a\x06\xb8\x9e\x77\x5b\x1f\x8a\x63\x05"
+"\x6f\x91\x6f\x94\x76\x1e\xda\xa4\x06\x79\x98\x87\x97\x8a\xc5\x8a\xd2\x84\x9c\x66\xa3\x08\xb5\xa9\x97\xa2\xb9\x1a\xe0\x5d\xb4\x2c"
+"\x1e\xfb\x62\xfc\x51\xd1\x06\xf7\x8c\x04\xf7\x1a\xf7\x15\x07\xc0\xa1\x77\x5c\x5c\x74\x77\x57\x1f\x6b\xf7\xf6\x15\xfb\x67\xfb\x3f"
+"\xfb\x3f\xfb\x67\xfb\x64\xf7\x40\xfb\x42\xf7\x61\xf7\x6d\xf7\x3e\xf7\x3d\xf7\x6a\xf7\x66\xfb\x3f\xf7\x3f\xfb\x67\x1f\x4d\x04\xf7"
+"\x41\xf7\x21\xfb\x23\xfb\x44\xfb\x47\xfb\x20\xfb\x22\xfb\x46\xfb\x3d\xfb\x21\xf7\x26\xf7\x42\xf7\x45\xf7\x21\xf7\x23\xf7\x41\x1f"
+"\x0e\x31\xf8\xb4\xf7\x9f\x15\xfc\x8c\x45\xf8\x8c\x06\x0e\xf7\x6f\xf8\xf9\x15\xbf\x5f\x96\x81\xae\x68\x08\x95\x6d\x7d\x8e\x78\x1b"
+"\x63\x63\x7f\x74\x68\x1f\x47\x5f\x68\x38\xfb\x09\x1a\xfb\x47\xe1\x25\xf7\x2b\xf7\x2c\xe0\xf0\xf7\x49\xe7\x76\xcf\x58\xd9\x1e\x65"
+"\xc4\x66\xb1\x43\xc2\xe5\xb4\x18\x63\xb0\x2a\x5e\x48\xb6\x7e\x92\x6c\x98\x19\x5f\x5f\xb6\x73\x98\x83\xa5\x77\x19\x36\x63\xaf\x64"
+"\x05\xf7\x2b\x21\x40\x1d\x31\xf8\x4a\xf8\x3f\x15\xfb\x27\xfb\x26\xfb\x26\xf7\x25\x5a\x5a\xf7\x26\xfb\x26\xfb\x27\xfb\x27\xbd\x5a"
+"\xf7\x26\xf7\x26\xf7\x27\xfb\x27\xbd\xbd\xfb\x27\xf7\x27\xf7\x26\xf7\x26\x05\x0e\xfb\xe9\xf7\x12\x57\x0a\x0e\xca\xf8\xb4\xf8\x49"
+"\x15\xf5\x73\x56\xbc\x32\x1b\xfb\x0a\x3c\x2d\xfb\x21\xfb\x1d\xda\x2d\xf7\x07\xc4\xb9\xa2\xba\xac\x1f\x9e\xa7\x95\xa7\x97\xc7\x08"
+"\x44\x06\x3a\x7e\x66\x60\x53\x1b\x6b\x67\x9d\xa7\x76\x1f\x74\xa8\x7e\xb7\xbe\x1a\xf4\xbc\xce\xd7\xc0\xa7\x70\x49\x9c\x1e\x23\xf7"
+"\xc5\x15\xfb\x67\xfb\x3f\xfb\x3f\xfb\x67\xfb\x64\xf7\x40\xfb\x42\xf7\x61\xf7\x6d\xf7\x3e\xf7\x3d\xf7\x6a\xf7\x66\xfb\x3f\xf7\x3f"
+"\xfb\x67\x1f\x4d\x04\xf7\x41\xf7\x21\xfb\x23\xfb\x44\xfb\x47\xfb\x20\xfb\x22\xfb\x46\xfb\x3d\xfb\x21\xf7\x26\xf7\x42\xf7\x45\xf7"
+"\x21\xf7\x23\xf7\x41\x1f\x0e\x84\x23\x0a\xad\xf7\xca\x21\x1d\x84\x23\x0a\x5b\xf7\xcb\x2b\x1d\x84\x23\x0a\x6d\xf7\xb1\x22\x1d\x84"
+"\x23\x0a\x6a\xf7\xca\x3d\x0a\x84\x23\x0a\x8a\xf7\xd8\x27\x0a\x0e\x84\x23\x0a\xed\xf7\xb3\x36\x0a\xbb\xf8\x0f\x74\x15\xf7\x44\xef"
+"\xed\xf7\x53\xa1\x1f\x2b\x06\x83\x59\x81\x69\x7c\x6d\x45\x0a\xf7\x4b\xf7\x4f\xe3\xf7\x07\xf7\x22\xc5\x73\x1d\xb6\x6d\xa9\x80\xd7"
+"\x80\x6c\x46\x18\x96\x84\x05\x91\x79\x0a\x7a\x90\xa3\x5d\x6f\x0a\x58\x82\x86\x8b\x89\x7e\x1f\x0e\x84\x24\x0a\xf7\x4c\xf9\xed\x26"
+"\x0a\x84\x24\x0a\xf7\x06\xf9\xee\x37\x1d\x84\x24\x0a\xf7\x18\xf9\xd4\x22\x1d\x84\x24\x0a\xf7\x1d\xf9\xed\x22\x0a\xfc\x20\x44\x1d"
+"\x71\x3b\x0a\xfc\x20\x44\x1d\x29\xfa\x40\x27\x1d\xfc\x20\x44\x1d\x3b\xfa\x1f\x22\x1d\xfc\x20\x44\x1d\x3c\xfa\x3f\x22\x0a\xbb\xf9"
+"\x1a\x20\x1d\x33\xfc\xe8\x06\xfc\x11\xf8\xe8\x05\x26\xfd\x6d\xe3\xf8\xe3\x06\xf8\x0c\xfc\xe3\x05\xf5\x06\xfb\x47\xfa\x28\x15\x72"
+"\x83\x7f\x80\x7a\x1b\x7e\x71\x92\x95\x73\x1f\x9c\x61\x83\x8d\x77\x1b\x5f\x6c\x42\x0a\xf3\x25\x0a\xa9\xf7\xac\x26\x0a\xf3\x25\x0a"
+"\x5d\xf7\xad\x2b\x1d\xf3\x25\x0a\x6f\xf7\x93\x22\x1d\xf3\x25\x0a\x6c\xf7\xac\x3d\x0a\xf3\x25\x0a\xf3\xf7\x95\x6c\x1d\x84\x29\x0a"
+"\xfb\x14\xf7\xa7\x2e\x0a\xbb\xf8\xbb\xf9\x6d\x15\x8c\xfc\x94\x05\x29\x44\x4f\xfb\x08\xfb\x08\x44\xc7\xed\x1e\x5a\x1d\xfb\x26\xf7"
+"\x02\x2d\xf7\x3e\xf7\x3e\xf7\x02\xea\xf7\x25\x1e\x8a\xf8\x94\x05\xfb\x95\xf7\x66\x21\x1d\xbb\x41\x0a\xfb\xdb\xf7\x67\x2b\x1d\xbb"
+"\x41\x0a\xfb\xc9\xf7\x4d\x22\x1d\xbb\x41\x0a\xfb\xcc\xf7\x66\x3d\x0a\x84\xf8\x16\x55\x1d\xfb\x69\xf7\xf7\x05\xfb\x07\x06\xf7\xac"
+"\xa0\x0a\xe8\x07\x76\x3b\x0a\x84\x28\x0a\x40\x38\x1d\x4c\x2d\x0a\xfb\x6b\xf7\x25\x2e\x0a\x25\x1d\x36\xf8\x75\x26\x0a\x25\x1d\xfb"
+"\x35\xf8\x76\x15\x2b\xfb\x2a\x05\xcb\x06\xda\xeb\xdb\x2b\x05\xcb\x06\x2a\xf7\x2a\x05\x0e\x25\x1d\xfb\x25\xf8\x5c\x22\x1d\x25\x1d"
+"\xfb\x1f\xf8\x75\x22\x0a\x25\x1d\xfb\x06\xf8\x83\x27\x0a\x0e\x25\x1d\x7d\xf8\x5e\x15\x72\x83\x7f\x73\x0a\x99\x88\x81\xa3\x1f\x75"
+"\xc5\x93\x89\x9e\x1b\xbc\xa9\xae\xd0\x95\x1f\x0e\xfb\x42\xf7\x9c\x74\x15\xf7\x0f\xde\xd9\xf7\x11\x92\x1f\x37\x06\x36\x84\x0a\xf7"
+"\x18\x72\x0a\x21\xaf\x36\xcc\x5d\x1f\xa6\x77\xa2\x82\xb6\x83\x6c\x44\x18\x97\x84\x05\x91\x91\x1d\x62\x05\x70\xcc\xa0\x95\x0a\xaf"
+"\xc4\xb6\x6e\xa3\x59\x82\x31\x0a\x29\x1d\xfb\x07\xf8\x4a\x21\x1d\x29\x1d\xfb\x4c\xf8\x4b\x27\x1d\x29\x1d\xfb\x3a\xf8\x31\x22\x1d"
+"\x64\x1d\xfc\x20\x2e\x1d\x7b\x41\x1d\xfc\x20\x2e\x1d\x33\xf9\x79\x27\x1d\xfc\x20\x2e\x1d\x45\xf9\x58\x22\x1d\xfc\x20\x2e\x1d\x46"
+"\xf9\x78\x22\x0a\x35\x1d\xf7\x7b\xf7\x55\x15\x72\x83\x7f\x53\x1d\x62\x83\x8d\x76\x1b\x5f\x6d\x42\x0a\x2a\x1d\xa4\xf7\xaa\x21\x1d"
+"\x2a\x1d\x5c\xf7\xab\x2b\x1d\x2a\x1d\x6e\xf7\x91\x22\x1d\x2a\x1d\x6f\xf7\xaa\x22\x0a\x2a\x1d\xf2\xf7\x93\x6c\x1d\xfb\x42\x31\x1d"
+"\x53\xf7\x69\x42\x1d\x26\x1d\xfb\x03\x41\x1d\x26\x1d\xfb\x48\xf9\x79\x27\x1d\x26\x1d\xfb\x36\x3a\x0a\x26\x1d\xfb\x38\xf9\x78\x22"
+"\x0a\xfb\x42\x2b\x0a\xfb\x63\x39\x1d\xfb\x42\x2b\x0a\xfb\x99\xf7\x53\x22\x1d\xfb\x42\x3e\x1d\xfb\x25\xf7\x21\x15\xeb\xf7\x2a\x05"
+"\x4b\x06\x3c\x2b\x3b\xeb\x05\x4b\x06\xec\xfb\x2a\x05\x0e\xfb\xc9\xbd\xf8\xd4\x15\xfb\xc9\xc6\xf7\x3e\x07\xcb\xac\xb4\xbf\xb1\xa3"
+"\x73\x66\x1e\xfb\x6a\xc6\xf7\x7d\x07\xbe\x61\xad\x4a\x5e\x6b\x7b\x67\x70\x1e\xb6\x07\x0e\xf7\x98\x35\x0a\xf7\xa1\xcf\x58\x0a\x0e"
+"\xf3\x65\x1d\xf7\x3e\xcf\x8b\x0a\x0e\xf3\x65\x1d\xf7\x40\xf7\xa5\x15\x37\xfd\x6d\xdf\x06\x0e\xf7\x34\xf8\xe2\x2f\x1d\xfc\x82\xfb"
+"\x15\x15\xfb\xbc\xc9\xf8\x3d\x60\x07\x7a\x4b\x7d\x80\x43\x84\x7c\x8a\x18\x5d\x07\xf9\x31\xfb\xf8\x66\x1d\x0e\xf7\x34\xf8\xff\x2f"
+"\x1d\xbc\x56\x0a\xfc\x8a\xf7\xa7\x67\x1d\x0e\xf7\x34\xf8\xff\x2f\x1d\xbb\xfc\x79\x15\xb8\xa6\x99\xa0\xb3\x1a\xce\x56\xb9\x40\x3f"
+"\x57\x5d\x48\x63\x98\x76\xb8\x70\x1e\x5a\x73\x73\x68\x5c\x1a\x3d\xc5\x55\xe0\xdf\xc6\xc1\xd9\xba\x73\xae\x59\xa3\x1e\x45\xf7\x2e"
+"\x15\xb9\xa4\x1d\xb7\x1f\x8c\xfb\x45\x15\xc0\xaf\x69\x59\x58\x67\x6a\x54\x57\x68\xad\xbd\xbd\xae\xad\xc1\x1f\xfb\xf6\x20\x0a\xfb"
+"\x70\x06\x6b\xfb\x7b\x05\xbc\x06\xa8\xa3\xa0\x95\xac\x1b\xc4\xaf\x64\x4c\x4e\x67\x66\x52\x5d\x6e\xa2\xbb\x7f\x1f\x56\x06\x92\x68"
+"\x91\x7b\x98\x7b\x08\x6b\xa3\xb6\x78\xbb\x1b\xe1\xc7\xc9\xe5\xe0\x53\xc4\x39\x6d\x73\x83\x7a\x73\x1f\x9b\xf7\x0a\x05\xf7\x46\x06"
+"\x0e\xf7\x34\xf8\xc1\x2f\x1d\xf1\x56\x0a\xfb\xc8\x20\x0a\xfb\xb0\x57\xf7\x79\x06\x26\xfb\x25\x62\x33\x6b\xfb\x20\x08\xc3\x06\xa3"
+"\xf7\x1c\xc0\xf7\x09\xeb\xf7\x14\x08\x0e\xf7\xda\x5e\x0a\xf7\x24\xf7\xb8\x26\x0a\x84\x23\x0a\xfb\x2b\xf7\xc2\x15\x8c\x2f\x0a\xe8"
+"\x3f\x0a\x50\x06\x61\x86\x6b\x73\x55\xbe\x1d\x84\x23\x0a\x0e\x84\x23\x0a\xfb\xad\xef\x21\x0a\x84\x23\x0a\xf7\x1c\xf7\xa3\x28\x1d"
+"\x84\xf8\x6e\xf7\x6f\x15\xd6\xfb\x6f\x05\xaf\x06\x44\x6c\x6d\x6b\x5b\x1a\x64\x5b\x1d\xa1\xa4\x86\xa1\x1b\x9e\x60\x1d\xb7\x1d\x72"
+"\x1b\x5c\x73\x9e\xaf\xb4\xa9\xac\xcd\xaa\x1f\x82\x1d\x0e\x84\x23\x0a\x89\xf7\xd8\x27\x0a\x53\xf7\x3a\x21\x1d\x84\x54\x0a\xbb\x2a"
+"\x0a\xfb\x35\xf8\x48\x21\x1d\xbb\x2a\x0a\xfb\x1f\xf7\xb3\x2e\x0a\xbb\x2a\x0a\xfb\x85\xf8\x49\x27\x1d\xbb\x2a\x0a\xfb\x19\xf8\x30"
+"\x24\x1d\x84\x6e\x1d\xbb\x6f\x1d\xab\xf9\x58\x3c\x0a\xbb\x59\x0a\x4d\x8f\x16\xf8\xf0\x06\xfb\x97\xf9\x0a\x05\x33\x06\xb7\x25\x15"
+"\xf7\x4b\xfc\x5b\x05\xfc\x01\x06\x0e\x84\x24\x0a\x96\xf9\xe5\x6e\x0a\x84\x24\x0a\xf7\x65\xf9\x58\x2e\x0a\x84\x24\x0a\xf7\x6a\xf9"
+"\xd5\x24\x1d\x84\x24\x0a\xf7\xbf\xf9\xc6\x28\x1d\xbc\xf8\x2e\xfb\xbc\x15\x89\xa5\x96\x8a\x9a\x1b\xc2\xb5\x98\xa4\xa9\x1f\xac\xa9"
+"\x97\xaf\xd8\x1a\xf9\x1d\x07\xd0\x78\xbc\x64\xae\x1e\xaf\x62\x4f\xa0\x4d\x1b\x2a\x49\x64\x25\x42\x1f\xf7\x0c\x38\xfd\x64\xe8\xf8"
+"\x34\x07\xdb\x9c\xc3\xb1\xb6\x1e\xb5\xb0\xbd\xa1\xc6\x1b\xbe\xb9\x7a\x6e\xa3\x1f\xa1\x72\x95\x67\x57\x1a\xfc\xe3\x07\x48\x8a\x80"
+"\x81\x7d\x1e\x76\x7e\x72\x82\x62\x1b\x7f\x80\x8b\x8d\x79\x1f\x0e\x84\xf7\x4b\x9d\x1d\xf8\x5b\x06\x44\x6d\x6d\x6a\x5b\x1a\x64\x5b"
+"\x1d\xa2\xa4\x86\xa1\x1b\x9d\xad\x90\x90\xa2\x1f\xb8\x07\x84\x78\x78\x88\x72\x1b\x5c\x72\x9e\xae\xb4\xaa\xae\xcc\xa9\x1f\xdd\xfc"
+"\x42\x07\x0e\x84\x24\x0a\x0e\xf7\x02\xf7\x94\x8f\x1d\xfb\x79\xf9\x1b\x21\x0a\xbb\x8d\x1d\x0e\xf7\x38\xf9\x04\x92\x1d\xfb\x7a\xf8"
+"\x21\x21\x0a\xda\xf7\xcd\x15\x54\x06\x75\x50\x05\xde\x06\x97\x47\x9f\x52\xa9\x5b\x08\x4b\xb2\xd5\x64\xe0\x1b\xc7\xc3\x9a\xaa\xbd"
+"\x1f\xe8\x07\x5b\x39\x68\x7e\x5a\x1b\x34\x52\xce\xf7\x17\x72\x1f\xf7\x6a\x06\xa3\xc6\x05\xfb\x8a\x06\x8a\x96\x8b\x93\x96\x1a\x98"
+"\x8c\x95\x8c\x98\x1e\xf7\xa2\x06\xa2\xc6\x05\xfb\xb0\x06\xf7\x19\xa7\xbf\xc9\xe1\x1b\xc0\xb4\x7a\x55\xd4\x1f\xab\xdb\x05\xba\x49"
+"\x52\x9f\x46\x1b\x35\x4a\x6a\x47\x5c\x1f\x69\x59\x75\x53\x81\x4b\x08\x4c\x06\x75\x50\x05\xda\x06\x89\x78\x8b\x81\x7e\x1a\x0e\xfb"
+"\x0f\xd9\xf9\x6d\x15\xfd\x6d\xe8\xf9\x1b\xf8\x0c\xdd\x07\x0e\xf3\x32\x1d\xfc\x60\xfa\x3b\x6e\x0a\xf3\x32\x1d\xfc\x07\xfa\x44\x37"
+"\x1d\xf3\x32\x1d\xfc\x08\x53\x23\x1d\xf3\x32\x1d\xfb\x9f\xfa\x2b\x24\x1d\xbb\xde\xf8\x8a\x15\xfc\x8a\xe9\xf7\xe0\xf8\x0a\xfb\xe0"
+"\xe8\xf8\x8a\xd6\xd1\x40\xf7\x31\x2e\xfb\x31\xfc\x0b\xf7\x31\x2e\xfb\x31\x40\x45\x07\xf7\x3c\x16\xf8\x0b\x33\xfc\x0b\x06\x0e\xbb"
+"\x8d\x1d\xf7\x27\xf8\xf4\x27\x1d\xc8\xf7\x58\x2c\x1d\xf8\x03\x63\x0a\x0e\xfc\x20\xf7\x50\x2c\x1d\xfb\x5c\xfa\x37\x7c\x1d\xfc\x20"
+"\xf7\x57\x2c\x1d\x8c\xfa\x27\x24\x1d\xfc\x20\x30\x0a\xdb\xfa\x18\x15\xfb\x92\x45\xf7\x92\x06\x0e\xfc\x20\xf7\x56\x20\x1d\x2d\xfd"
+"\x6d\xb6\x06\x52\x62\x77\x6c\x5f\x1a\x56\xb7\x68\xcc\x9d\xa2\x8f\x90\x9d\x1e\xb8\x07\x85\x79\x7e\x88\x7d\x1b\x6c\x77\xa0\xaa\xaf"
+"\x9e\xb1\xb0\xac\x1f\x0e\xfc\x20\x30\x0a\x0e\xfc\x20\x30\x0a\x37\x38\x1d\xfb\xb6\xf7\x94\x2c\x1d\xfb\x7a\xf9\x6d\x21\x0a\xfc\x20"
+"\x30\x0a\xb2\xfa\x28\x36\x0a\xfb\x42\x60\x0a\x20\xf7\x67\x2b\x1d\x84\x64\x0a\x84\x66\x0a\xf7\x13\x4f\x23\x1d\x3a\x1d\x84\xf9\xed"
+"\x21\x1d\x85\xf8\x20\x20\x1d\xfb\x10\x06\xfb\x94\xfd\x6d\x05\xf3\x06\xf7\x6a\xf9\x09\xf7\x6a\xfd\x09\x05\xf3\x06\x0e\x3a\x1d\xef"
+"\xf9\x1b\x38\x0a\x3a\x1d\xdf\xfb\x22\x23\x1d\x3a\x1d\xf7\x3c\xf7\xda\x15\x22\xf1\xf4\x07\x0e\xf7\x33\x76\x1d\xbb\x36\x1d\xfb\x94"
+"\xfa\x3f\x26\x0a\xbb\x36\x1d\xfb\x81\xf9\xaa\x3c\x0a\xbb\x36\x1d\xfb\xf0\x4f\x23\x1d\xbb\x36\x1d\x0e\xf3\x25\x0a\xfb\x2b\xf7\xa4"
+"\x15\x8c\x2f\x0a\xe8\x3f\x0a\x50\x06\x61\x86\x6b\x73\x55\xbe\x1d\xf3\x25\x0a\x72\xf7\xac\x39\x0a\xf3\x25\x0a\xf7\x1e\xf7\x85\x28"
+"\x1d\xd9\xa8\x16\xf7\xb4\xdd\x06\x4e\xaf\x6e\xa4\x6f\xb1\x08\x63\xc1\x75\xd8\xdd\x1a\xf7\x37\xe7\xf1\xf7\x27\xf7\x26\xe7\x25\xfb"
+"\x37\x39\x75\x3e\x63\x55\x1e\x6f\x65\x6e\x72\x4e\x67\x08\x39\xf7\xb4\xdd\xfb\x55\x07\xc8\xaf\xa6\xa2\xa7\xb2\x08\xb4\xc3\xa0\xd4"
+"\xe1\x1a\xe5\x74\xd8\x60\xc3\x1e\xd8\x4e\x29\xb9\x20\x1b\x2e\x34\x68\x4c\x4d\x1f\x50\x50\x6d\x37\x22\x1a\x35\xa0\x42\xb4\x53\x1e"
+"\xa7\x64\xa6\x74\xc8\x67\x08\xfb\x55\x06\x58\xf9\x1b\x21\x0a\xf3\x25\x0a\x0e\xef\xf8\x16\x52\x0a\xfc\x2e\xd1\x15\x30\x07\xa5\x23"
+"\x05\xa9\x06\xa5\xf3\x05\xe6\x07\x0e\xf3\x53\x0a\xf7\x4e\xf9\xba\x26\x0a\xf7\x10\xf7\xf4\x81\x15\xe8\xe6\x06\xf7\x41\x95\xf1\xf4"
+"\xf7\x3d\x1a\xf7\x3d\x26\xf3\xfb\x42\x95\x1e\xe6\x2e\x30\x07\xfb\x3b\x81\xfb\x00\xfb\x03\xfb\x36\x1a\xfb\x37\xf7\x00\xfb\x02\xf7"
+"\x3b\x80\x1e\xdc\x04\x61\x8f\x74\x92\x6e\x9e\x08\x4e\xb2\x70\xc0\xdb\x1a\xdd\xa7\xc2\xc5\xb0\x1e\xa8\x9d\xa3\x93\xb6\x8e\x08\xe8"
+"\x16\xb6\x88\xa3\x83\xa8\x79\x08\xc5\x66\xa7\x54\x39\x1a\x3b\x70\x56\x4e\x64\x1e\x6e\x78\x74\x84\x61\x87\x08\x0e\xbb\xf7\x43\xf9"
+"\x1b\x15\xf8\x09\xfd\x1b\xe9\xf9\x6d\xfc\xc5\xfd\x6d\xe9\x06\x0e\xf7\x35\xf8\x63\x20\x1d\x2f\xfc\x91\x06\x4f\x8d\x59\x9b\x65\xa7"
+"\x55\xb6\x80\xb6\x8c\xf7\x34\x08\xf7\x6d\x2d\xfb\x6d\x07\xfb\x3e\x9c\x49\xc8\x50\x1e\xc3\x59\xd9\x70\xe9\x89\x08\xfb\x1e\xe7\xf7"
+"\x1e\x07\xdc\x8d\xcf\x9f\xc1\xb1\x08\xdc\xc6\xa1\xd0\xf7\x4e\x1a\xf7\x6d\x2d\xfb\x6d\x07\x8c\xfb\x2a\x82\x63\x62\x5f\x65\x68\x52"
+"\x77\x47\x88\x08\x0e\xbb\x33\x0a\x6f\xf8\xb3\x21\x1d\xbb\x33\x0a\x84\xf8\x1e\x3c\x0a\xbb\x33\x0a\x2f\xfc\x5c\x23\x1d\x84\x6d\x1d"
+"\x84\x29\x0a\xfb\x26\xf8\x3c\x21\x1d\x84\xf7\xe6\x73\x15\xd2\x8e\xb3\x92\xb4\x9b\x08\xdc\xac\xc0\xda\xe1\x85\x1d\xe3\x06\xbd\x88"
+"\x99\x7b\xad\x1e\xdf\x63\x36\xb7\xfb\x0f\x4a\x1d\x88\xfb\x10\xd5\x2c\xf7\x0d\x71\xb7\x84\x18\x8c\x8f\x8a\x89\x91\x1f\x6c\x46\x96"
+"\x85\x05\x90\x97\x93\x8d\x96\x44\x0a\x7a\x91\xa2\x5d\x87\x1d\x84\x29\x0a\xfb\x75\xf8\x3d\x27\x1d\x84\x29\x0a\xfb\x6d\xfc\xd3\x23"
+"\x1d\x53\xb7\x16\xf8\xa8\xdd\xfc\x32\x06\xf7\xad\xf7\xb4\xfb\xa7\xf7\xa9\x05\xf8\x1b\xdd\xfc\x96\x39\x06\xf7\xac\xfb\xa9\xfb\xad"
+"\xfb\xb5\x05\x0e\x4c\x3e\x0a\x0e\x4c\xf7\x99\xf8\x27\x15\xfc\x27\xe8\xf8\x27\xf7\x34\xce\xfb\x34\xf7\x45\xbf\x1d\xfb\x45\xfb\x34"
+"\x48\x07\x0e\x4c\x3e\x0a\x8c\xf9\xaa\x3c\x0a\x4c\xf7\xef\x16\x92\xf9\x1b\xf7\x83\xdd\xfc\xd0\x39\xf7\x84\xfd\x1b\xbb\x06\x61\x2f"
+"\x50\x0a\x4d\x1d\xaf\xc4\xa2\x0a\x83\x31\x0a\xf3\xf8\xaf\xf8\x20\x15\xfb\xbf\x42\xf7\xbf\x06\xfb\x2b\xf8\x36\x68\x1d\xbb\x2d\x1d"
+"\xfc\x47\xf7\x5e\x75\x0a\x6c\xa1\xb7\x86\x1f\x0e\xbb\x2d\x1d\xfb\xd0\xf7\x66\x39\x0a\xbb\x2d\x1d\xfb\x23\xf7\x3f\x28\x1d\xbb\xf8"
+"\xee\xfb\x2a\x15\x84\x79\x77\x88\x72\x1b\x5c\x72\x9e\xae\xa9\xa0\xad\xb7\xb5\x1f\xdf\xd8\xa5\xbe\x8e\xe4\x08\xf8\x94\x2e\x88\x1d"
+"\xfb\x29\xf6\x30\xf7\x42\xaf\xa0\x8e\x95\xb7\x1e\x57\x6b\x76\x6e\x62\x1a\x65\xa0\x71\xb5\x7b\x1e\x83\xa2\xa4\x86\xa1\x1b\x9d\x60"
+"\x1d\x0e\x84\x28\x0a\x0e\x84\x28\x0a\x39\x38\x1d\xf7\x49\xf8\x9b\x80\x1d\xfc\x7a\xf9\x6d\x21\x0a\xbb\x2d\x1d\xfb\xac\xf7\x74\x27"
+"\x0a\x0e\xbb\x2d\x1d\xfb\x51\xf7\x4f\x5d\x0a\xf7\xa2\x34\x1d\x2f\x3b\x0a\xf7\xa2\x34\x1d\xfb\x71\xfa\x40\x37\x1d\xf7\xa2\x34\x1d"
+"\xfb\x5b\x38\x1d\xf7\xa2\x34\x1d\xfb\x4a\xfa\x3f\x22\x0a\x73\xcb\x16\xf8\x9f\xdd\xfc\x9f\x06\xaa\xf7\x8e\x15\xf8\x5f\xdd\xfc\x5f"
+"\x06\x6e\xf7\x7d\x15\xf8\x9b\xdd\xfc\x9b\x06\x0e\x84\x28\x0a\x31\xfa\x40\x2b\x1d\x84\x28\x0a\x36\xfa\x3f\x22\x0a\x4c\x2d\x0a\xfb"
+"\x7e\xf7\xba\x21\x1d\x4c\x2d\x0a\xfb\x66\xf7\xa2\x24\x1d\x4c\x2d\x0a\x0e\x25\x1d\xfb\x9c\xf8\x6d\x71\x0a\x85\x1f\x0e\xf7\x6b\x51"
+"\x0a\xfb\xb5\xf8\x4a\x21\x1d\xf7\xda\x8c\x0a\x84\xf8\x6d\x69\x0a\x0e\x79\xf7\x3e\xf8\x38\x15\xf7\x77\xf8\x14\xdd\xfc\x72\xa3\x1d"
+"\x5d\xb0\x1f\xac\x62\x7a\x0a\x84\xdc\x74\x1d\xe9\xfb\xcf\x15\xf7\x7d\xf7\x47\x07\xbf\xa8\x84\x78\xa4\x1f\xa5\x77\x99\x6d\x63\x1a"
+"\x63\x7d\x6c\xbb\x1d\xfb\x47\xfb\xe0\x15\xf7\x8e\xf7\x76\x07\xdd\xbc\x5d\xc1\x1d\xfb\x18\xde\xf9\x6d\x15\xfd\x6d\xe9\xf9\x1b\xf7"
+"\xfc\xdd\x07\x0e\x8e\xf8\xcd\x16\xfb\x3a\xe9\xf7\x8c\x53\xf9\x1b\xfc\x38\xfb\xfd\x07\x8f\xfb\x3c\x49\x20\xfb\x07\x80\x08\xfb\x8c"
+"\xe9\xf7\x3a\x07\xf8\x2d\xdd\x15\xfb\xee\x06\xd4\xb8\xb5\xf4\x8a\xf7\x1f\x08\xf7\xa8\xf7\x7c\x07\x0e\x84\x8b\x1d\x0e\x84\x8b\x1d"
+"\xf7\x17\xf9\xd4\x22\x1d\xf7\x8d\xf8\x32\x16\xe9\xf7\xed\xef\x49\x0a\xf1\x06\xfb\x8f\xf8\x14\xf7\x60\xf7\xed\x05\x24\x06\xfb\x48"
+"\xfb\xc2\x05\x2a\xf7\xc2\x2d\xfb\xc2\x2a\x06\xfb\x48\xf7\xc2\x05\x22\x06\xf7\x63\xfb\xed\xfb\x8f\xfc\x14\x05\xf4\x06\xf7\x74\xf7"
+"\xed\x05\xec\x06\x0e\x45\xc3\xf7\x74\x15\x8c\x4d\x93\x68\xa3\x63\x08\x43\xb6\xd6\x65\xed\x1b\xd7\xc8\xa2\xb6\xb3\x1f\xb2\xb4\xa2"
+"\xc9\xc7\x1a\xe9\x5a\xcb\x37\x9b\x1e\xad\x96\x9c\x95\x9c\xa0\x08\xa6\xab\x9b\xb8\xb8\x1a\xf7\x06\x2e\xde\xfb\x13\xfb\x1a\x32\x32"
+"\xfb\x1a\x1e\x7a\xe9\xad\x07\xd5\xc0\xbd\xd8\xd6\xbd\x5a\x43\x41\x54\x5b\x37\x1e\x6a\x3a\xb3\x06\xba\xa5\x85\x7a\xa5\x1f\xaf\x74"
+"\x9e\x64\x58\x1a\x33\x55\x57\x2f\x2d\x4f\xc5\xe5\x1e\x9c\x07\x0e\xb8\x43\x0a\x0e\xb8\xd8\x16\xe9\xde\x06\xf8\x0c\xb1\x1d\xfc\x0c"
+"\xfc\x40\x05\xf8\x92\x2d\x07\xf7\x17\xf7\x5e\x97\x1d\x50\x06\x61\x87\xad\x1d\x30\xca\x16\x86\x1d\x4c\xf7\xc2\x2d\x06\x0e\x79\xf8"
+"\x97\x16\xe9\xf9\x6d\xfc\x7b\x84\x1d\xf7\xbf\x07\x0e\xf7\x33\xf8\x67\x16\xf7\x61\xf8\xf7\x05\xfc\xf7\xe3\xf9\x6d\xfb\x15\x07\xfb"
+"\x68\xfd\x0f\xfb\x6c\xf9\x0f\x05\xfb\x15\xfd\x6d\xe3\xf8\xf7\x06\xf7\x63\xfc\xf7\x05\x0e\xbb\xf8\xb8\x4e\x0a\xe9\xf9\x6d\x87\x0a"
+"\xf3\xf8\x18\xf9\x79\x68\x1d\xb8\xf7\x41\xf9\x1b\x15\xf8\x09\xfd\x1b\xe9\xf9\x6d\xfc\xc5\xfd\x6d\xe9\x06\x0e\x84\xf7\x4e\xf7\xc9"
+"\x15\xf7\x78\x8c\x1d\xe9\x97\x0a\xf7\x55\x07\xe4\xc0\x5b\x3b\x3b\x56\x5b\x32\x1f\x0e\xbb\xf8\xdb\xf7\x95\x15\xfb\x0b\x89\x3a\x3c"
+"\xfb\x0c\x1b\xfb\x2a\x2d\xf7\x06\xf7\x4d\xf7\x51\xe7\xf7\x04\xf7\x30\xf7\x08\xd2\x4d\x26\x8c\x1f\xee\x06\xf7\x23\x88\xfb\x0c\xf1"
+"\xfb\x39\x1b\xfb\x61\xfb\x1c\xfb\x2c\xfb\x7b\xfb\x13\xb7\xfb\x04\xd7\x48\x1f\x59\xc3\xd2\x72\xe0\x1b\xf7\x0f\xec\xc0\xed\xc2\x1f"
+"\xa4\xb8\x93\xa8\xc2\x1a\x0e\x4c\xf7\xf5\xf9\x1b\x15\xf7\x83\xdd\xfc\xd0\x39\xf7\x83\xfd\x1b\xe9\x06\x0e\x64\x72\x1d\x0e\xe1\xf7"
+"\xe1\x81\x15\xe9\xe6\x06\xf7\x54\x95\xf7\x05\xf4\xf7\x3d\x1a\xf7\x3d\xfb\x04\xf3\xfb\x55\x95\x1e\xe6\x2d\x30\x07\xfb\x4e\x81\xfb"
+"\x0b\xfb\x03\xfb\x36\x1a\xfb\x37\xf7\x0b\xfb\x02\xf7\x4e\x80\x1e\xdc\x04\x5b\x8f\x70\x92\x68\x9e\x08\x45\xb2\x6c\xc0\xdb\x1a\xdc"
+"\xac\xc4\xce\xaf\x1e\xad\x9e\xa6\x92\xbd\x8e\x08\xe9\x16\xbd\x88\xa6\x84\xad\x78\x08\xce\x67\xac\x52\x3a\x1a\x3b\x6c\x56\x44\x64"
+"\x1e\x69\x78\x70\x84\x5b\x87\x08\x0e\x84\xf8\x19\x61\x0a\xf7\x07\x06\x0e\xcd\xde\x16\xf8\x9f\xfb\x3a\xe9\xf7\x8c\x54\xf9\x1b\x94"
+"\x0a\x84\xf8\x8f\x16\xe9\xf9\x6d\x7d\x1d\xf7\x87\xbe\x16\xf9\xc2\xf9\x6d\x2d\xfd\x1b\xfb\x9e\xf9\x1b\x2d\xfd\x1b\xfb\x9e\x4c\x0a"
+"\xf7\x9c\xc0\x16\xf9\xaa\xfb\x3a\xe9\xf7\x8c\x53\xf9\x1b\x2d\xfd\x1b\xfb\xaa\xf9\x1b\x2d\xfd\x1b\xfb\xa0\x4c\x0a\xf7\x0a\xf7\xe6"
+"\x20\x1d\xfc\x04\x39\xf7\xa6\xfd\x1b\xf7\xb9\x06\xf7\x23\xdd\xd8\xf7\x19\xd3\x73\xc2\x5d\xb0\x1f\xac\x62\x5d\x98\x41\x1b\xfb\x55"
+"\x06\x39\x04\xf7\x4c\x06\xe7\xc1\x5b\x3b\x3b\x55\x5b\x2f\x1f\xfb\x4c\x06\x0e\xf7\x67\xf7\x47\xf8\x38\x15\xf7\xc9\x2d\xfd\x6d\x62"
+"\x0a\x39\x15\x68\x0a\xf8\xa3\x39\x15\xe9\xf9\x6d\x2d\x06\x0e\x79\xf7\x40\xf8\x38\x15\xf7\xc9\x2d\xa3\x1d\x5c\xb0\x1f\xac\x63\x7a"
+"\x0a\xb8\xf8\xf6\xf7\xd7\x15\xfb\x39\x7b\x2b\x28\xfb\x25\x1b\x45\x4b\xa5\xb9\x5e\x1f\x6a\xac\x7a\xab\x79\xc8\x30\x7b\x18\xa3\x3b"
+"\xa0\x64\xb5\x5e\x08\x4a\xca\xe1\x68\xf1\x1b\xf7\x66\xf7\x22\xf7\x2d\xf7\x79\xf7\x79\xfb\x22\xf7\x2d\xfb\x66\xfb\x31\xfb\x01\x40"
+"\xfb\x27\x50\x1f\xe6\x79\x05\xf2\xb6\xdd\xc2\xf7\x01\x1b\xe1\xd8\x63\x48\xb7\x1f\xa5\x63\x99\x60\x94\x4c\x08\xfb\xcd\x38\x06\x0e"
+"\xf7\xe4\xf7\x38\xf8\x32\x15\xf7\xcf\x2d\xfd\x6d\xe9\xf7\xe0\xf7\x2a\x07\xfb\x6e\x99\xf7\x16\xfb\x1d\xf7\x55\x1b\xf7\x53\xf7\x12"
+"\xf7\x2c\xf7\x7a\xf7\x7a\xfb\x12\xf7\x2c\xfb\x53\xfb\x4c\xfb\x12\xfb\x0f\xfb\x60\x72\x1f\xf7\xe2\xf7\x89\x15\xf7\x1e\xe2\xfb\x0a"
+"\xfb\x4e\xfb\x46\x31\xfb\x0a\xfb\x1b\xfb\x25\x28\xf7\x0e\xf7\x46\xf7\x46\xee\xf7\x0e\xf7\x25\x1f\x0e\xbb\xf8\xb0\xf7\xce\x15\xfb"
+"\xce\xe9\xf9\x6d\xfb\xe1\x07\xfb\x23\x3c\x46\xfb\x12\x36\xab\x5a\xdb\x63\x1f\x3c\x69\x78\x66\xfb\x0b\x1a\x89\xfb\x09\x86\x77\x6a"
+"\x6a\x08\xf7\x00\x06\x9a\xae\x91\xaa\xc1\x1a\xab\x07\x8a\x99\x8b\x96\x93\x1a\xe4\xb0\xb3\xde\x1e\xf7\x83\xdd\x15\xfb\x74\x06\x28"
+"\x5f\xb2\xe2\xb6\x98\xac\xa4\xa0\x1f\x9f\xa2\xa9\x93\xbf\x1b\xf7\x74\x06\x0e\xfb\x4d\xf8\x46\x20\x1d\xfc\x0e\xfd\x6d\xe9\xf9\x1b"
+"\xf7\xec\xdd\x06\x3c\x1d\x05\xfb\x05\x06\x0e\xf7\x53\xf7\x96\x16\xe9\xf7\xb7\x06\xa9\x95\xa3\xa1\xa0\x1e\xab\xac\xb3\x97\xd6\x1b"
+"\xf3\xb8\x6f\x4a\x1f\xfb\x3d\x07\x63\x76\x73\x67\x89\x1e\xfb\x25\x39\xf7\x26\x06\xdb\x89\xd3\xd6\x89\xdd\x08\xf7\x3a\x07\xb9\x7d"
+"\xaf\x6c\xaa\x1e\xb5\x61\x5b\x9b\x31\x1b\x25\x5c\x78\x4f\x5a\x1f\xf7\x7e\xf7\x3d\xdd\xfc\x84\x39\xf7\x7d\x07\x0e\xfb\x18\xe1\xf9"
+"\x6d\x15\xfd\x6d\xe9\xf9\x1b\xf7\xfc\xdd\x07\xfb\x83\xf7\x66\x21\x1d\xb8\xf8\x3c\xf7\xd7\x15\xde\xfb\xcd\x07\x92\xc1\x95\xaf\x9f"
+"\xaf\x08\xdb\xb6\xdc\xba\xea\x1b\xf7\x01\xdc\x54\x24\xb6\x1f\xe7\x9d\x05\xf7\x27\x50\xfb\x02\xd6\xfb\x30\x1b\xfb\x67\xfb\x21\xfb"
+"\x2d\xfb\x79\x9d\x0a\xf0\xe1\xae\xcc\xca\x1f\xb6\xb8\xa0\xb2\xa3\xdb\x2f\x9b\x18\x79\x4e\x7a\x6b\x6b\x6a\x08\x5d\x5e\x4a\x71\x46"
+"\x1b\xfb\x25\x2b\xee\xf7\x39\x7b\x1f\x0e\x84\xf8\xe8\xf8\x97\x15\xf7\x21\x8c\x26\xe0\xfb\x3b\x4a\x1d\x8c\x48\x98\x5f\xa8\x63\x08"
+"\x46\xbd\xdf\x68\xf7\x04\x1b\xe1\xd2\x9f\xaf\xba\x1f\xbc\xb2\xaa\xcc\xca\x1a\xe6\x53\xcc\x28\xa6\x1e\xfb\x4b\xbc\x05\x33\xa3\x6b"
+"\xa7\xc3\x1a\xd5\xcc\xbc\xed\xf7\x08\xcc\x57\x2b\x8c\x1e\x0e\xfc\x20\xf7\x4e\x2c\x1d\x0e\xfc\x20\xf7\x4e\x2c\x1d\x3f\x38\x1d\xfb"
+"\x42\xf7\xde\x20\x1d\xfc\x95\x07\x50\x85\x6b\x7a\x72\x1e\x6f\x79\x6a\x7a\x66\x1b\x69\x6c\x99\xa3\x78\x1f\x78\xa3\x84\xa5\xb7\x1a"
+"\xba\x2d\x4b\x07\xfb\x0a\xda\x40\xf7\x0e\xce\xba\x9d\xb2\xb2\x1e\xb1\xb1\x9c\xb9\xcb\x1a\xf8\xb7\x07\x0e\xf8\x13\xf8\x94\xf9\x1b"
+"\x15\xfd\x1b\xf7\xbc\x07\xf7\x23\xdc\xd8\xf7\x1c\xd2\x75\xbf\x5b\xb1\x1f\xac\x62\x5d\x98\x41\x1b\xfb\x57\xf7\xc9\xfc\x5f\x84\x1d"
+"\x07\xf8\x01\xfb\xc9\x15\xf7\x4f\x06\xe6\x59\x1d\x30\x1f\xfb\x4f\x06\x0e\xf7\xe4\xf8\x4e\xf7\xe6\x15\xfb\xe6\x62\x0a\xf7\xc9\x2d"
+"\xfb\xc9\xfb\xb9\xf7\xc9\x2e\xfd\x6d\xe9\xf7\xe6\x06\xf8\x16\x16\xf7\x66\x06\xe7\x59\x1d\x2f\x1f\xfb\x66\x06\x0e\xf7\x48\xf7\x91"
+"\x16\xe9\xf7\xb7\x06\xd3\xcb\xb9\xf0\xed\xb7\x6f\x4b\x1e\xfb\xd1\xe9\xf7\xd5\x07\xb9\x7d\xad\x6c\xab\x1e\xb4\x64\x59\x9c\x3b\x1b"
+"\x2f\x5b\x77\x51\x5c\x1f\xf7\x7e\xf7\x67\xdd\xfc\xb1\x39\xf7\x80\x07\x0e\x30\xca\x16\xe9\xf7\xed\xca\x06\xf7\x75\x81\x0a\x4d\xf7"
+"\xc2\x2d\x06\xf7\x8e\xf7\x66\x21\x1d\x64\x72\x1d\xa4\xf9\xe5\x7c\x1d\xf8\xab\xbe\x15\x88\x83\x86\x8a\x84\x1b\x70\x7b\x9a\xa5\x1f"
+"\xf7\xc7\x07\xe9\x47\xbd\xfb\x15\x3e\x4e\x75\x63\x67\x1e\x73\x70\x82\x6d\x88\x56\x08\xdf\x06\xcc\x92\xb1\xa9\xd8\x1b\xd7\xb4\x6f"
+"\x58\x1f\x7b\x07\x8a\x66\x79\x7f\x48\x81\xfb\x0b\x7c\x7a\x88\x6b\x7d\x08\x4e\x71\x6c\x5c\x47\x1a\x29\xcc\x4f\xf4\xcd\xbe\xa1\xbf"
+"\xc6\x1e\x58\x91\xa6\x74\xc2\x1b\x9e\x97\x8d\x92\xa7\x1f\xfb\x27\xf7\x46\x15\x70\x83\x79\x73\x75\x1e\x6c\x69\x61\x7b\x5b\x1b\x4a"
+"\x65\xaa\xc0\xc2\xaf\xa6\xe4\x98\x1f\xe5\x98\x9c\x8f\xa6\x97\x08\x0e\x26\xf7\xf2\xf9\xa4\x15\x63\x07\x87\x5d\x76\x7b\x3d\x7b\x44"
+"\x7c\x5f\x6c\x6d\x53\x08\x69\x4b\x79\x2a\xfb\x0e\x1a\xfb\x01\x9b\x4d\xb7\x55\x1e\x57\xb4\xc8\x70\xd6\x1b\xf7\x29\xe3\xf3\xf7\x45"
+"\xe1\x78\xcd\x63\xbd\x1f\xbc\x63\x4b\xa9\x4b\x1b\x51\x59\x76\x63\x62\x1f\x94\xca\xb3\xb1\xcf\x98\xe8\x9b\x8f\x8d\xab\xa7\x08\xab"
+"\xaf\x95\xac\xd8\x1a\xfb\x29\xfb\xd6\x40\x1d\xfb\x23\xc5\x16\xf7\xbb\x06\xe7\xc6\xc6\xe8\xc8\x75\xaf\x4f\xab\x1f\xb5\xaa\x9d\xac"
+"\xb8\x1a\xd9\x4a\xc3\x32\x1e\xfb\xa2\x06\xdf\xfc\x56\x15\xf7\x3a\xf7\x4e\x07\xc1\xae\x6a\x58\x59\x68\x6b\x55\x1f\xfb\x4e\xf7\x84"
+"\x15\xf7\x1c\xf7\x4e\x07\xb5\xa4\x72\x61\x62\x6f\x6f\x64\x1f\x0e\xfb\xc9\xc6\x16\x4b\x0a\xfb\xd1\x06\x0e\x30\x9b\x2a\x15\xe2\xec"
+"\xf7\xf8\x2a\xe2\xf7\x3f\x60\xf8\x56\xfb\xe2\x4c\x06\x25\x7f\x37\x72\x4b\x1e\x6f\x3f\x68\x62\x56\x77\x08\xf8\x27\x16\xfb\xa9\x06"
+"\xcf\xc9\xb1\xf7\x0b\x8e\xf7\x34\x08\xae\xf7\x3c\x07\x0e\xf8\x97\xf7\x7e\x15\xdb\x85\xbd\x7c\xb0\x5c\x0a\x3c\x06\x46\x74\x5a\x67"
+"\x47\x1b\x56\x5d\xa3\xb7\x6e\x65\x0a\x0e\xf8\x98\xf7\x7e\x15\xdb\x85\xbd\x7c\xb0\x5c\x0a\x3c\x06\x46\x74\x5a\x67\x47\x1b\x56\x5d"
+"\xa3\xb7\x6e\x65\x0a\xfb\x45\xf8\x31\x22\x1d\x86\xf7\xb9\x16\xdf\xf7\x8d\xc9\x06\xf7\x28\xfb\x8d\x05\xec\x06\xfb\x3b\xf7\xb2\xf7"
+"\x11\xba\x1d\x4d\xf7\x5d\x37\xfb\x5d\x4c\x06\x21\xf7\x5d\x05\x2a\x06\xf7\x10\xfb\x82\xfb\x3b\xfb\xb2\x05\xed\x06\xf7\x28\xf7\x8d"
+"\x05\xca\x06\x0e\xfb\x6c\xb6\xf7\x38\x15\x75\x07\x26\xd2\x4b\xf7\x05\xf7\x02\xd8\xd1\xed\xc7\x6f\xb4\x50\xa6\x1e\xbe\xa7\xa4\xb2"
+"\xbd\x1a\xdf\x41\xcc\x2a\x51\x59\x75\x65\x6b\x1e\x76\x71\x7a\x5d\x6b\x1a\x74\xe2\xa2\x07\xbd\xb1\xb0\xbf\xbd\xae\x69\x5c\x7a\x85"
+"\x7a\x81\x81\x1e\x79\x79\x6a\x7e\x72\x1b\x68\x41\xae\x06\xc9\xb4\x67\x55\x54\x65\x6a\x4e\x4b\x69\xaa\xc4\x1f\xa1\x07\x0e\xfb\x07"
+"\x3f\x1d\x0e\xfb\x07\x3f\x1d\xbb\xf7\x64\x71\x0a\x86\x1f\x0e\xfb\x80\x70\x0a\x0e\x30\xf8\x35\x49\x1d\xfc\x18\x80\x0a\xf7\x70\x07"
+"\x0e\x99\xb5\x16\xdf\xf8\x56\x06\xf7\x43\xfc\x56\x05\xe1\x06\xf7\x42\xf8\x56\x05\xfc\x56\xdf\xf8\xa0\xfb\x14\x07\xfb\x42\xfc\x4b"
+"\xfb\x42\xf8\x4b\x05\xfb\x13\x06\x0e\xfb\x0e\xd3\x16\xdf\xf7\x83\xf7\x85\xfb\x83\xdf\xf8\xa0\x37\xfb\x67\xfb\x85\xf7\x67\x37\x06"
+"\x0e\xf7\xa9\x3d\x1d\x0e\xfb\x18\xd2\x16\xdf\xf8\x56\xf7\x7c\xfc\x56\xdf\xf8\xa0\xfc\x24\x06\x0e\xc5\xfb\x6e\x15\xdd\x4d\x0a\xbc"
+"\x73\xd0\x1b\xf7\x1c\xe4\xf7\x01\xf7\x3b\xf7\x45\x36\xf7\x01\xfb\x1d\x45\x52\x6c\x51\x65\x1f\xd5\x39\x77\x0a\xfb\x42\xf8\x6c\xf7"
+"\xf0\x15\x86\xbe\x81\xac\x76\xb5\x1d\x2f\xfb\x04\xfb\x42\xfb\x3d\xe4\x20\xf7\x21\xf7\x10\xd9\xd6\xf7\x14\x95\x1f\x38\x06\x37\x7e"
+"\x60\x61\x44\x1b\x31\x54\xd6\xf7\x10\xf7\x17\xc2\xd9\xe7\xd1\xb8\x62\x42\x95\x1f\x0e\xfb\x6c\xf7\x4f\x16\xdf\xf8\x56\xf7\x2c\xd5"
+"\xfc\x19\x41\xf7\x2d\x06\x0e\xfb\x42\x6a\x1d\x0e\xf7\x29\xf8\x05\x4f\x0a\xf7\x58\x06\xd2\x8f\xb3\x95\xbb\xa3\x08\xe5\xb7\xc0\xe6"
+"\xf6\x1a\xf7\x00\x56\xe6\x31\xb7\x1e\x5b\xa3\x63\x94\x44\x90\x08\xf7\x0f\x37\xfb\x0f\x07\x45\x86\x64\x82\x5c\x73\x08\x32\x5e\x57"
+"\x31\xfb\x00\x1a\x20\xbf\x30\xe4\x5f\x1e\xba\x73\xb2\x81\xd1\x87\x08\xd6\x04\xfb\x1c\x95\x41\xd3\xf7\x0f\x1a\xf7\x0f\xd5\xd3\xf7"
+"\x1c\x96\x1e\xdf\x16\xf7\x20\x80\xd6\x43\xfb\x0f\x1a\xfb\x0e\x40\x43\xfb\x20\x80\x1e\x0e\xfb\x42\xf7\xbd\x67\x0a\xeb\x06\x0e\x26"
+"\xe2\x16\xf7\xef\xfb\x33\xe1\xf7\x7d\x5d\xf8\x56\xb2\x1d\xfb\x2d\xf7\xfc\x49\x1d\x75\x1d\xf7\x14\xcb\x16\xf9\x35\xf8\xa0\x9a\x1d"
+"\xf7\x29\xd1\x16\xf9\x0c\xfb\x33\xdf\xf7\x7d\x60\xf8\x56\x9a\x1d\x5a\xf7\x50\x4f\x1d\xfb\xba\x41\xf7\x66\x06\xdf\xfc\x0c\x85\x0a"
+"\xb8\xdc\x78\x1d\xf7\x76\x41\x15\xdf\xf8\xa0\x37\x06\x0e\xfb\x2d\xd0\x78\x1d\x0e\xfb\x38\xf7\x05\xf7\xf2\x15\xd2\x9f\xbf\xb4\xcf"
+"\x1b\xdb\xc1\x52\x2a\x96\x1f\xfb\x4c\x41\xf7\x4e\x06\xfb\x01\x88\x50\x44\x33\x1b\x3f\x5a\xbd\xe8\x79\x1f\x35\x75\x05\xfb\x17\xa7"
+"\xd9\x48\xf7\x0f\x1b\xf7\x27\xe6\xf7\x00\xf7\x42\xf7\x3f\x2e\xf7\x01\xfb\x25\xfb\x05\x3b\x4e\xfb\x02\x6d\x1f\x0e\xd7\xf7\x1b\xf7"
+"\xcd\x15\xf7\x67\x30\x1d\xf7\x83\xf7\x0b\x07\xfb\x3d\x93\xdf\x2e\xf7\x24\x1b\xf7\x29\xe3\xf3\xf7\x45\xf7\x45\x33\xf3\xfb\x29\xfb"
+"\x18\x38\x3a\xfb\x25\x78\x1f\xf7\x7e\xf7\x29\x40\x1d\xfb\x18\xf8\x11\x49\x1d\xfb\x8e\x06\x27\x45\x4a\x30\x45\xa9\x63\xd4\x6e\x1f"
+"\x5d\x79\x75\x6c\x89\x59\x08\x53\x07\x8a\x5c\x87\x7c\x7c\x7f\x08\xe2\x06\x97\x97\x92\xa5\x8c\xaf\x08\xc3\x07\x8c\xba\xa8\xab\xb5"
+"\x8c\x08\xf7\x24\x06\xd5\x04\xfb\x3a\x06\x58\x6b\xab\xbf\xbd\xac\xab\xbd\x1f\xf7\x3a\x06\x0e\xfb\x9b\xf7\xec\x20\x0a\xfb\x95\xfc"
+"\xa0\x4b\x0a\x06\x3c\x1d\x05\xfb\x05\x06\x0e\xd7\x16\xdf\xf7\xed\x06\xd3\xb9\xc2\xb1\x57\x1d\xfb\xc7\x07\x8a\x51\x5d\x59\x58\x8c"
+"\x08\xfb\x15\x3e\xf7\x15\x06\xf3\x90\xd8\xd9\x8c\xf0\x08\xf7\xc7\x4a\x0a\x57\x6e\x47\x52\x9e\x1d\xfb\xc9\xcb\x16\x4b\x0a\xfb\xd1"
+"\x06\xf7\x40\x39\x1d\xfb\x38\xf8\x77\xf8\x04\x15\xf7\x02\x6d\x3a\xc8\xfb\x04\x1b\xfb\x26\x2f\xfb\x01\xfb\x3f\xfb\x42\xe6\xfb\x00"
+"\xf7\x26\xf7\x10\xd8\xce\xf7\x17\xa8\x1f\x35\xa1\x05\x2e\x79\x59\x59\x40\x1b\x33\x50\xd2\xf7\x01\x87\x1f\xf7\x4f\xd5\xfb\x4c\x06"
+"\xec\x96\xc0\xc4\xdc\x1b\xcf\xbf\x62\x44\x9f\x1f\x0e\xfb\x42\xf8\x4a\xf8\x0e\x15\xf3\x8a\x47\xc4\x4c\x1d\xfb\x0d\x8f\xcf\x51\xf7"
+"\x1d\x1b\xf7\x18\xdf\xcc\xf0\xd9\x5f\xb6\x23\xa4\x1f\x51\x1d\x0e\xfc\x58\xf7\x2d\x20\x0a\x30\x1d\x06\xf9\x6d\x04\x37\x22\xdf\x06"
+"\x0e\xfc\x20\xf7\x4c\xf8\xa0\x15\x30\x1d\x06\x41\x3a\x0a\xfc\x58\xd0\x20\x0a\xfc\xe8\x07\x57\x7b\x7a\x57\x86\x84\x8b\x8c\x83\x1e"
+"\x3d\x07\xf7\x07\x87\xc0\xac\x8f\xdb\x08\xf9\x0d\x07\xf7\x61\x04\x37\x22\xdf\x06\x0e\xf7\x7c\xf8\x3f\x4f\x1d\xfc\x22\x80\x0a\xf7"
+"\x7a\x07\xdf\xfc\x0c\x85\x0a\xf7\x1f\xbf\x16\xdf\xf7\x83\xf7\x85\xfb\x83\xa0\x1d\x37\xfb\x67\xfb\x85\xf7\x67\x37\x06\xf8\x2d\xfc"
+"\x56\x15\xf7\x3a\xf7\x38\x07\xa4\x99\x87\x81\x98\x1f\x9f\x7d\x97\x70\x6f\x1a\x56\x6c\x6d\x56\x1e\x0e\xd7\x16\xdf\xf7\xed\x06\xd2"
+"\xb9\xc2\xb2\x57\x1d\xfb\xfa\xdf\xf7\xfa\x4a\x0a\x56\x6e\x47\x53\x9e\x1d\xfb\x80\x70\x0a\xf7\x63\x39\x1d\xfb\x42\x6a\x1d\xfc\x11"
+"\xf7\x64\x7b\x1d\xb8\xda\x16\xf7\x7d\xfb\x3a\xe9\xf7\x3a\xf7\x7f\xf9\x6d\x94\x0a\xfb\x0e\xde\x16\xf7\x2d\xfb\x34\xdf\xf7\x34\xf7"
+"\x2a\xf8\xa0\xb2\x1d\xfb\x0b\xb4\xf7\xae\x15\x3b\x91\x59\x9a\x66\x1e\x35\xad\xdb\x57\xed\x1b\xf7\x26\xe9\xf7\x03\xf7\x41\xf7\x41"
+"\x31\xf4\xfb\x28\xfb\x0c\x38\x47\xfb\x06\x76\x1f\xda\x06\xd0\xa2\xbc\xaf\xcf\x1b\xc0\xb9\x73\x5f\xa8\x1f\x9f\x6d\x92\x6d\x8c\x57"
+"\x08\x89\x47\x15\x2a\x84\x50\x4c\x37\x1b\x36\x50\xcd\xe9\x1f\x0e\xf7\x67\xf8\x03\xf8\xe0\x15\x88\xb1\x83\xa3\x7c\x9f\x08\xaf\x72"
+"\x5d\xa0\x57\x1b\x24\x49\x3a\xfb\x11\xfb\x0e\xcc\x3e\xf1\xe6\xc5\xc2\xe8\x91\x1f\x44\x06\x54\x82\x6f\x6f\x5e\x1b\x4f\x68\xbd\xdf"
+"\xe4\xae\xbf\xc6\xb7\xa8\x70\x5c\x91\x1f\xf7\xfd\xfb\x5a\x15\x20\x4b\x3f\xfb\x13\xfb\x14\xca\x40\xf7\x00\xf6\xcb\xd6\xf7\x11\xf7"
+"\x17\x4d\xd6\xfb\x01\x1f\x4a\x04\xc8\xaf\x57\x33\x37\x66\x57\x4f\x4f\x66\xbf\xe1\xe1\xb0\xbf\xc7\x1f\x49\xf8\x14\x15\xfc\x14\xfd"
+"\x59\x05\xcd\x06\xf8\x14\xf9\x59\x05\x0e\xfb\xf3\xf7\x16\xf7\xb8\x15\xca\xcd\xb2\xba\xa5\xb8\x08\xb4\xd0\xa4\xd8\xc4\x1a\xbf\x71"
+"\xad\x64\x35\x49\xfb\x22\xfb\xd2\x4f\x1e\x6f\x6c\x77\x77\x7e\x80\x08\x7a\x7b\x85\x84\x84\x1a\x84\x92\x82\x91\x92\xa9\xa3\xa5\xa5"
+"\x1e\x7f\x2f\x89\x71\x6c\x1a\x53\xa6\x69\xb9\xae\xa8\xa0\xb7\xa4\x1e\x98\xa0\x92\x9f\x97\x1a\x92\x85\x91\x84\x83\x85\x86\x7d\x84"
+"\x1e\x5e\x76\x7c\x7b\x77\x1b\x7d\x84\x94\x9e\xa5\x9e\xf7\x11\x9a\xdb\x1f\x95\xc2\x15\xf7\x9f\xb8\xa7\xe0\xb8\x1b\x9c\x96\x7a\x71"
+"\x6d\x81\x5a\x7c\x62\x1f\x72\x48\x68\x54\x4e\x48\x08\x0e\xf8\x23\xf8\xaa\x20\x1d\x40\xfc\xe8\x06\xfb\xd8\xf8\xe8\x05\x35\xfd\x6d"
+"\xd6\xf8\xe3\x06\xf7\xd5\xfc\xe3\x05\xe4\x06\xf7\xad\xf9\x79\x15\xfb\x11\x30\xfb\x09\xfb\x33\xfb\x3a\xe3\xfb\x04\xf7\x16\xf7\x12"
+"\xe4\xf7\x08\xf7\x37\xf7\x32\x2f\xf7\x09\xfb\x11\x1f\x38\x04\xe1\xc3\x3d\xfb\x0b\xfb\x03\x51\x3b\x39\x36\x51\xdb\xf7\x08\xf7\x05"
+"\xc5\xda\xde\x1f\xfb\x62\xfd\x26\x15\xf8\x32\xde\xfc\x32\x06\x0e\x2b\xf8\xe1\x20\x0a\x31\x06\x57\xfb\x2b\x74\xbc\x7e\xa1\x74\xa6"
+"\x19\xb6\x67\x56\xa3\x54\x1b\xfb\x10\x33\xfb\x09\xfb\x38\xfb\x39\xe0\xfb\x07\xf7\x0e\xc8\xc3\xa9\xc1\xb1\x1f\xa0\xa9\x97\xa2\xa0"
+"\xbd\xc3\xfb\x38\x18\xe7\x06\x23\xf7\xa3\x05\x37\x16\xfb\x2c\x5a\x5a\x4b\x49\x1b\x42\x57\xdf\xf7\x0a\xf7\x0f\xbf\xdd\xd8\xcc\xb5"
+"\x59\xfb\x21\xc0\x1f\x0e\x2b\xf8\xdf\x20\x0a\x30\x06\x57\xfb\x2b\x75\xbc\x7e\xa1\x74\xa6\x19\xb6\x66\x57\xa3\x50\x1b\xfb\x1a\x29"
+"\xfb\x0b\xfb\x36\xfb\x37\xea\xfb\x09\xf7\x18\xec\xc7\xc0\xf7\x1a\xc2\x1f\xc4\xfb\x38\x05\xe7\x06\x23\xf7\xa3\x05\x37\x16\xfb\x2e"
+"\x59\x5b\x4d\x46\x1b\x36\x4e\xe1\xf7\x0a\xf7\x0a\xc9\xe0\xe2\xd0\xb4\x5c\xfb\x24\xc1\x1f\xfb\x60\xf8\x90\x21\x0a\x25\x1d\xa1\xf8"
+"\x4e\x28\x1d\xfb\xe9\xc5\xf7\x82\x15\xf7\x42\xfb\xe8\x05\x7b\x93\x95\x84\x97\x1b\x93\x90\x8f\x92\x92\x89\x93\x88\x93\x1f\xfb\x17"
+"\xf7\xdd\xf7\x17\xf7\xdd\x05\x8e\x93\x8d\x93\x92\x1a\x93\x86\x8f\x83\x7f\x83\x85\x79\x81\x1e\x0e\xfb\xe9\xf7\xa7\xf7\x82\x15\xfb"
+"\x42\xf7\xe8\x05\x9c\x82\x82\x92\x7f\x1b\x83\x86\x87\x83\x85\x8d\x83\x8e\x82\x1f\xf7\x17\xfb\xdd\xfb\x17\xfb\xdd\x05\x88\x84\x89"
+"\x83\x84\x1a\x83\x90\x87\x93\x97\x93\x91\x9c\x95\x1e\x0e\xf8\xac\x9f\x1d\xe9\x47\xbc\xfb\x15\x3f\x4d\x75\x64\x67\x1e\x74\x9b\x0a"
+"\x91\xb1\xa8\xd9\x1b\xd7\xb4\x6f\x59\x1f\x75\x07\x67\x78\x7e\x48\x82\x1e\xfb\x0b\x7c\x79\x87\x6c\x7e\x08\x4d\x71\x6c\x5d\x47\x1a"
+"\x2c\xcd\x4f\xf5\xce\xc0\xa2\xc1\xc5\x1e\x8f\x5f\xa0\x71\xb1\x84\x08\x5a\x70\x78\x72\x65\x1a\x66\xa2\x6e\xb3\x7e\x1e\x83\xa1\xab"
+"\x86\x9f\x1b\x9c\xa7\x8f\x91\xa5\x1f\xb8\x07\x84\x79\x76\x88\x72\x1b\x5c\x72\x9e\xaf\xb2\xa7\xac\xbb\x9e\x1f\xfb\x27\x81\x1d\x0e"
+"\xfb\x11\xf8\x73\xf8\x18\x15\x56\x6d\x75\x7b\x64\x1b\x71\x7d\x8f\xa2\x52\x1f\xa5\x4a\x6a\x95\x72\x1b\x68\x6b\x79\x69\x71\x1f\x7f"
+"\x7b\x84\x81\x73\x65\xb0\x67\x18\xc2\xa9\xa5\xa0\xb3\x1b\xa1\xa5\x84\x75\xc5\x1f\x6b\xde\x91\x89\xa6\x1b\xa9\xa8\x9a\xa6\xa1\x1f"
+"\x98\x9b\x8d\x8d\xad\xbc\x08\x65\xfb\x10\x15\x56\x6d\x75\x7b\x64\x1b\x71\x7d\x8f\xa2\x52\x1f\xa5\x4a\x6a\x95\x72\x1b\x68\x6b\x79"
+"\x69\x71\x1f\x7f\x7b\x84\x81\x73\x65\xb0\x67\x18\xc2\xa9\xa5\xa0\xb3\x1b\xa1\xa5\x84\x75\xc5\x1f\x6b\xde\x91\x89\xa6\x1b\xa9\xa8"
+"\x9a\xa6\xa1\x1f\x98\x9b\x8d\x8d\xad\xbc\x08\x0e\x25\x1d\xfb\x02\xf8\x83\x27\x0a\x61\xf7\x53\x26\x0a\xf7\xda\xf9\x5d\xf7\xac\x15"
+"\x6a\x5e\x6e\x53\x78\x1a\x81\x93\x84\x95\x92\x8f\x8d\x94\x93\x1e\xbc\xc6\xa6\xa0\xea\xc4\x08\x9c\x94\x8d\x8e\x95\x1a\x92\x85\x90"
+"\x76\x97\x1e\x42\xb5\x5f\xad\x64\xb9\x08\x9c\x7d\x87\x8e\x83\x1b\x81\x83\x84\x82\x79\xb0\x40\xa4\x6d\x1f\xfc\x3f\x06\xa6\xac\xaf"
+"\xd3\x9e\x1a\x93\x83\x92\x81\x83\x88\x88\x7a\x7c\x1e\x63\x5c\x61\x6a\x41\x61\x08\x77\x80\x84\x85\x84\x1a\x83\x8f\x86\x93\x86\x1e"
+"\xe9\x54\xaa\x73\xb7\x58\x08\x76\x9d\x8c\x8a\x94\x1b\x95\x93\x92\x94\x91\x7f\xab\x83\x9b\x1f\x80\xa0\x80\x9d\x76\xa7\x08\x0e\xfb"
+"\x42\xf7\x66\xf9\x65\x15\xfd\x2a\x07\xa3\x6e\x40\xb1\x79\x1b\x82\x84\x83\x81\x83\x8e\x88\x9c\x7c\x1f\xba\x63\xad\x5f\xb4\x42\x08"
+"\x77\x96\x91\x84\x92\x1b\x93\x90\x8f\x93\x90\x1f\xc6\xf0\xa1\xa7\xc7\xbd\x08\x94\x93\x8d\x8f\x92\x1a\x95\x84\x93\x82\x85\x6a\x7f"
+"\x83\x7b\x1e\x74\x80\x79\x7f\x71\x78\x08\xf9\x2a\x07\x0e\xf7\xda\xfa\x25\xf7\xad\x15\xc7\xfd\x2a\x07\x9c\xa2\x95\x9b\x96\x9f\x08"
+"\x95\x9e\x99\xaf\x93\x1a\x94\x83\x92\x81\x84\x87\x89\x82\x83\x1e\x59\x4f\x73\x78\x2a\x51\x08\x79\x81\x89\x88\x82\x1a\x84\x92\x85"
+"\x9f\x80\x1e\xd4\x62\xb7\x69\xb3\x5c\x08\x7a\x9a\x8e\x88\x93\x1b\x95\x93\x92\x94\x9d\x65\xd6\x73\xa8\x1f\x0e\xf7\xda\xe0\xf7\xad"
+"\x15\xf9\x2a\x06\x73\x6e\x65\x40\x79\x1a\x82\x93\x84\x95\x93\x8e\x8e\x9c\x9a\x1e\xb3\xba\xb7\xad\xd4\xb4\x08\x9f\x96\x92\x91\x92"
+"\x1a\x93\x87\x90\x83\x90\x1e\x26\xc6\x70\xa1\x58\xc7\x08\x94\x83\x87\x8d\x84\x1b\x81\x83\x84\x82\x85\x97\x6a\x93\x7b\x1f\x96\x74"
+"\x97\x79\x9e\x71\x08\xfd\x2a\x06\x0e\xfb\x42\xf7\x66\x20\x15\xc7\xf9\x2a\x06\xa2\x7a\x9b\x81\x9f\x80\x08\x81\x9e\xaf\x7d\x93\x1b"
+"\x94\x92\x93\x95\x92\x89\x8f\x82\x93\x1f\x4f\xbd\x78\xa3\x51\xec\x08\x9d\x81\x88\x8d\x82\x1b\x84\x85\x84\x77\x80\x1f\x62\x42\x69"
+"\x5f\x5c\x63\x08\x7a\x7c\x88\x88\x83\x1a\x81\x92\x83\x94\x9d\xd5\xb1\xa3\xa9\x1e\x0e\xfb\x42\xf7\x6e\xf7\x15\x61\x1d\xfb\x42\xf7"
+"\x0c\x47\x15\x60\xf7\x9c\xb6\x07\xfb\x3a\xf7\x9c\x61\x1d\x28\xda\xfb\x6e\x15\xde\xf7\x85\x06\x6c\xb1\xb7\x7c\xc4\x1b\xf7\x1b\xe3"
+"\xe9\xf7\x23\xef\x62\xcb\x36\xad\x1f\xc3\xaa\xa8\xbc\xcc\x1a\xf7\x00\x39\xd7\xfb\x09\x46\x4c\x71\x61\x69\x1e\x6d\x67\x82\x62\x2a"
+"\x1a\xde\x90\x15\xd4\x90\xa8\x9e\xa3\x1e\xa3\x9d\xae\x99\xb1\x1b\xd4\xb9\x60\x46\x5d\x74\x61\x6a\x7c\x1f\x77\x81\x7b\x89\x5a\x88"
+"\x08\x46\x07\x8c\x9a\x97\x8c\x97\x1b\xe1\xc4\x4d\x2c\x29\x51\x4d\x30\x56\x63\x9c\xb2\x6a\x1f\x0e\xfb\x42\x33\x1d\x33\xf8\x1c\x26"
+"\x0a\xfb\x42\x33\x1d\x41\xf7\x87\x2e\x0a\xfb\x42\x33\x1d\xfb\x3b\xf8\x1d\x2b\x1d\xfb\x42\x33\x1d\x46\xf8\x04\x24\x1d\xfb\x29\xf7"
+"\x99\xf7\x98\x15\xfb\x13\xf7\x9c\x05\x2b\x06\xf7\x44\xfb\xfb\xfb\x4d\xfc\x13\x05\xe5\x06\xf7\x20\xf7\xb9\xf7\x22\xfb\xb9\x05\xea"
+"\x06\xfb\x51\xf8\x18\xf7\x40\xf7\xf6\x05\x2f\x06\x0e\xf7\xda\xf8\x8b\xf9\x4b\x15\xfb\x5c\xfb\x36\xfb\x35\xfb\x5c\xfb\x58\xf7\x36"
+"\xfb\x36\xf7\x57\xf7\x59\xf7\x37\xf7\x37\xf7\x57\xf7\x58\xfb\x36\xf7\x39\xfb\x55\x1f\x87\xfb\xd0\x15\xfb\x52\xf7\x50\x05\xb8\xc2"
+"\xcc\xa2\xd1\x1b\xd0\xcb\x74\x60\xc4\x1f\xb3\x63\x15\xbb\x52\xa2\x4c\x42\x1a\x43\x74\x4b\x5d\x53\x1e\xfb\x54\xf7\x57\x05\xf7\x2c"
+"\xfb\x7f\x15\x5f\x54\x48\x73\x45\x1b\x45\x4b\xa2\xba\x50\x1f\xf7\x55\xf7\x55\x05\xfb\x7d\xfb\x2d\x15\x5f\xc1\x74\xcb\xd1\x1a\xd3"
+"\xa2\xcb\xba\xc4\x1e\xf7\x52\xfb\x50\x05\x0e\x79\xf8\xd7\x16\x9f\x07\x24\x9f\x6e\x99\x5d\xbb\x5c\xbf\x7a\xc0\x8a\xeb\xa0\x66\x93"
+"\x7e\x97\x7d\x08\x5d\xb2\xc9\x6c\xc0\x1b\xe6\xd2\xd5\xe9\xe5\x4a\xd3\x3a\x6e\x84\x89\x6e\x50\x1f\xa7\xb4\x96\xaa\xb0\x1a\xe3\x42"
+"\xd2\x30\x2e\x44\x45\x31\x67\x92\x78\xad\x56\x1e\xa3\x5b\x76\x91\x6c\x1b\x40\x49\x3f\x34\x2e\xd4\x42\xe7\xdc\xcf\xbd\xe6\xb8\x1f"
+"\x8c\x7b\x8b\x80\x86\x1a\x43\x65\x3a\x55\x5f\x1e\x6b\x72\x74\x82\x2c\x77\x08\x77\x07\x0e\x6c\x5a\x0a\xf7\xaf\xf7\xa0\x38\x0a\xf8"
+"\x82\xf9\x21\x15\xd7\x38\x3f\xfb\x2a\x56\xf7\x2a\xfb\x1f\x07\xc1\x5f\x5a\xa3\x47\x1b\xfb\x1b\x32\xfb\x01\xfb\x3a\xfb\x41\xe5\xfb"
+"\x06\xf7\x1c\xce\xc0\xa5\xc3\xbb\x1f\x50\xd5\xf8\xec\xca\xc0\x07\xfb\xb8\xfb\x58\x15\xe4\xc4\x3d\xfb\x0f\xfb\x0b\x51\x3d\x33\x2f"
+"\x4f\xda\xf7\x0c\xf7\x0c\xc7\xda\xe7\x1f\x0e\xfb\x09\xf7\x96\xf8\xa8\x15\xfb\x1c\x86\x3b\x26\xfb\x3c\x1a\xfb\x45\xe3\x23\xf7\x29"
+"\xf7\x29\xe3\xf3\xf7\x45\xe1\x78\xcd\x63\xbd\x1e\x7a\xa0\x85\x90\x45\xc1\xfb\x28\xf7\x07\x18\xf7\x8f\xd5\xfc\x05\x44\x06\xf7\x49"
+"\xfb\x58\x40\x1d\xfb\x38\x90\xf7\xf1\x15\xf0\xfb\x11\xf7\x10\xfb\x45\xb1\x40\xc7\xf7\x00\xf7\x05\xf7\x34\xf4\xf7\x11\x3b\xe6\xfb"
+"\x39\xf7\x7d\x6a\xcf\x53\x24\x41\x22\xfb\x26\xfb\x4c\x08\x0e\xfb\xe9\xf7\x12\xf9\xef\x40\x0a\x29\x1d\xfb\xb3\xf8\x42\x15\x8c\x64"
+"\x91\x78\x99\x4e\x1d\x29\x1d\x32\xf7\xb5\x15\xeb\xf7\x2a\x05\x4b\x06\x3c\x2b\x3a\x54\x1d\x29\x1d\x35\xf8\x32\x24\x1d\xf7\xda\xf9"
+"\x93\xf7\x6c\x15\xc8\xfc\x62\x07\x91\xf6\xc3\xbd\xf7\x01\x89\x08\xf7\xb7\xc9\xfb\xac\x5e\x1d\x66\x1f\x4a\x60\x69\x42\x2c\x1a\xfb"
+"\x08\xb8\x38\xb0\x1d\xc9\xfb\xb7\x06\xfb\x01\x89\x53\xbd\x85\xf5\x08\x0e\x29\x1d\x8a\xf8\x23\x28\x1d\xf7\xd1\xfb\x6b\x15\x89\x9d"
+"\x93\x8a\x9a\x1b\xb5\xa9\x94\xa0\xa2\x1f\xa7\xa2\x91\xa2\xd7\x1a\xf8\x55\x07\xbc\x81\xab\x73\xa4\x1e\xab\x6e\x5d\x9d\x56\x1b\x3f"
+"\x5e\x71\x3e\x53\x1f\xe3\x3e\xfc\xa0\xdf\xf7\xb5\x07\xf7\x01\xc3\xcf\xe5\xca\xb3\x63\x4d\x1e\xfc\x2b\x07\x4e\x8a\x83\x84\x80\x1e"
+"\x7d\x83\x79\x84\x6f\x1b\x83\x86\x8b\x8c\x7f\x1f\x0e\xf8\x95\xf7\x7e\x15\x8c\xdb\x84\xbc\x7c\xb1\x08\xe1\x6a\x3a\x5d\x1d\xfb\x42"
+"\xfb\x41\xe5\x23\xf7\x29\xa3\x99\x8d\x91\xa9\x1f\x71\x77\x84\x85\x84\x84\x08\x7a\x78\x80\x71\x74\x1a\x55\xc2\x69\xdf\xa2\x9e\x8e"
+"\x91\xa6\x1e\xb8\x07\x84\x78\x77\x88\x72\x1b\x5e\x70\x9e\xab\xb1\x9c\xa8\xc1\xc4\x1f\xb9\xb9\xa3\xb6\x96\xc2\x08\x37\x06\x46\x74"
+"\x5b\x66\x48\x1b\x57\x5e\xa4\xb6\x6e\x1f\x78\xaa\x83\xa9\x8a\xbf\x08\x8e\xcf\x15\xec\x91\xc6\xca\xdf\x1b\xe0\xc7\x49\x2d\x1f\x0e"
+"\xfb\x78\x62\x1d\x0e\xfb\x78\x62\x1d\x23\xf8\xb5\x21\x0a\x30\xf8\xaa\xf7\x9f\xa1\x1d\xf8\x32\xbd\x1d\x41\xf8\xa4\xf7\x88\x15\x92"
+"\x07\x8a\xc7\x8a\x97\x84\xac\x08\xf5\x75\x34\xce\xfb\x07\x1b\xfb\x27\x2e\x20\xfb\x3b\xfb\x3b\xe5\x26\xf7\x28\xf7\x06\xd5\xbf\xf2"
+"\xab\x1f\x8d\x92\x05\x52\x06\x84\x7b\x86\x82\x88\x87\x08\x59\x6c\x58\x71\x4a\x1b\x5f\x67\x97\xa1\x73\x1f\x7a\x9a\x82\x9b\x80\xb0"
+"\x08\xed\x07\xf7\xb3\xbb\x15\xfb\xb1\xe0\x06\xd1\xac\xaf\xa4\xd0\x1b\xc1\xb0\x7a\x63\xae\x1f\x96\x7e\x8f\x84\x91\x79\x08\x0e\x5f"
+"\x0a\x0e\x5f\x0a\xf7\x02\xf7\x93\x21\x0a\xfb\x42\xf7\x57\x7b\x0a\xf7\x8d\x7b\x0a\x0e\xfb\x8e\xbe\x16\xf7\xd9\xf8\xd5\xfb\xd9\x37"
+"\xf7\x85\xfb\x36\xfb\x85\x37\xf7\x85\xfb\x37\xfb\x85\x06\x0e\xd7\xf7\xf4\xf7\x98\x15\xfb\x37\x60\xf7\x37\xfb\x3a\xbb\xf7\x3a\xf7"
+"\x35\xb6\xfb\x35\xf3\x06\xe4\x98\xcf\xda\xe6\x1a\xee\x37\xde\x28\x29\x38\x34\x26\x34\xcf\x3e\xe6\x7e\x1e\xa6\xf7\xcb\x15\xd0\xc5"
+"\x50\x45\x43\x51\x51\x44\x42\x52\xc5\xd4\xd2\xc5\xc4\xd5\x1f\x0e\xf7\x1b\xf7\xe0\x15\xf7\x28\xdd\xfb\x28\x92\x0a\xf7\x38\x7e\x1d"
+"\x0e\xfb\x42\xf7\x68\x4f\x0a\xf7\x7e\x06\xf7\x54\xf8\x90\x05\x2d\x06\xfb\x20\xfc\x19\xfb\x28\xf8\x19\x05\x2d\x06\xf7\x5c\xfc\x90"
+"\x05\x0e\xf7\x0b\xf9\x70\x15\x8d\x2f\x0a\xe7\x3f\x0a\x51\x8a\x0a\xf7\x76\xfb\x64\x32\x0a\xf7\x75\xf9\x79\x99\x1d\xe0\xfb\x6d\x32"
+"\x0a\xf7\xcf\xf8\xe4\x15\xef\x54\x07\x89\xc2\x9d\xa8\xb0\x8c\x8d\x8c\x18\xb1\x07\x4f\x8d\x64\x5c\x8a\x3f\x08\x24\x07\xf7\x51\x47"
+"\x15\x3f\x07\xca\x61\x5d\xa7\x49\x1b\xfb\x13\x33\xfb\x0a\xfb\x3c\x33\xa0\x4b\xb8\x56\x1f\x5d\xb2\xbd\x72\xc1\x1b\xca\xb8\xa7\xcd"
+"\xb7\x1f\x70\x07\xfb\x20\x64\x57\x23\x44\x66\xa7\xc7\x83\x1e\x36\x06\x2a\x93\xd8\x4e\xf7\x06\x1b\xd8\xcb\xa4\xb5\xad\x1f\xb3\xbc"
+"\x9a\xcc\xf7\x0f\x1a\xf8\x4a\x07\xfb\x73\x4d\x15\xe3\xbd\x41\xfb\x19\xfb\x13\x58\x41\x34\x35\x59\xd6\xf7\x15\xf7\x14\xbd\xd7\xe1"
+"\x1f\x0e\xf7\xd1\xf9\x5f\x58\x1d\xe2\x33\x32\x0a\xfb\x11\xb3\x1d\xf8\x4f\x04\xfc\x7d\xf7\x63\x05\x3c\x07\xf8\x1e\xfb\x38\xfc\x1e"
+"\xfb\x35\x05\x3c\x07\xf8\x7d\xf7\x63\x05\x0e\xf7\x2d\xf9\x21\x15\xd7\x38\x3f\x4f\x56\xc7\xfc\xec\xde\xf7\xb5\x07\xf6\xc3\xd1\xe2"
+"\xa6\xa5\x83\x7c\x9f\x1e\xa3\x79\x95\x73\x65\x1a\xfb\xff\xde\xf8\x20\x07\xe3\x4c\xc2\x25\x41\x5e\x74\x4b\x5a\x1e\xf7\x28\xf7\x63"
+"\xc0\x07\x0e\x70\x1d\x34\xf7\x67\x27\x1d\x3b\xf7\xbc\x6f\x15\x9f\xe5\xc7\xf2\xf7\x08\xf7\x25\x08\xeb\xf7\x0e\xab\xce\xda\x1a\xde"
+"\x45\xcf\x37\x5b\x5f\x76\x65\x6a\x1e\x75\x72\x81\x75\x7e\x5d\x7f\xaf\x83\x9d\x7f\x9d\x08\xbd\x6a\x58\xa8\x54\x1b\x36\x49\x47\x32"
+"\x48\xa0\x5e\xdf\xfb\x06\x1f\xf7\x2b\xfb\x5e\xb3\x47\xa5\x24\x08\x0e\x45\xb4\x16\xf8\x9e\xf8\x25\x06\xfb\x99\xf7\xdc\xfb\x99\xfb"
+"\xdc\x05\xbe\xfb\xf2\x15\xf7\xdc\x07\xf7\x66\xf7\xa2\xf7\x66\xfb\xa2\x05\xfb\xdc\x07\x0e\xfc\x20\x2e\x1d\xfb\x51\x77\x1d\xfb\x7a"
+"\xf7\x3f\x88\x0a\xf7\x01\x27\x6a\x0a\xfc\x20\xf7\x48\x20\x0a\x38\xfc\xa0\xde\x06\xdd\xf9\x51\x15\xfb\x8b\x45\xf7\x8b\x06\x0e\xb2"
+"\xf7\xf8\xf7\xbd\x15\x5b\xb6\x87\x8e\x77\x9a\x08\xa7\x66\x5d\x9d\x67\x1b\x3e\x4c\x4c\x3e\x3e\xca\x4c\xd8\xb0\xb8\x9c\xa8\xb0\x1f"
+"\x9f\x99\x8f\x8f\xbb\xb6\xbc\x60\x90\x87\x9e\x7d\x08\x6f\xb0\xb8\x79\xb0\x1b\xd8\xca\xca\xd8\xd8\x4c\xca\x3e\x67\x5c\x79\x6f\x67"
+"\x1f\x77\x7d\x87\x87\x5a\x60\x08\xaf\x6a\x15\xc3\xc4\xc3\xab\xb5\x1b\xbc\xb3\x63\x5b\x5a\x63\x63\x5a\x61\x53\xab\xc4\x52\x1f\x44"
+"\x16\x53\x52\x53\x6b\x61\x1b\x5a\x63\xb3\xbb\xbb\xb3\xb3\xbc\xb5\xc3\x6c\x52\xc4\x1f\x0e\xfc\x24\xf7\x50\xf8\x9f\x15\xb0\x85\xda"
+"\x82\xe8\x1e\x87\xb5\x89\xa1\x97\x1a\x9d\x91\x95\x97\x91\x8e\x8a\x80\x95\x1e\x81\x95\x97\x86\x98\x1b\xa6\xa0\xa1\xa7\xa9\x6f\xa3"
+"\x68\x60\x6c\x6c\x51\x7d\x1f\x7b\x4b\x86\x46\xfb\x45\x1a\xfb\x78\x07\x5f\x8f\x4e\x95\x22\x1e\x8f\x61\x8d\x75\x7f\x1a\x79\x85\x81"
+"\x7f\x85\x89\x8c\x96\x80\x1e\x95\x81\x80\x90\x7d\x1b\x71\x75\x75\x70\x6c\xa7\x73\xae\xb7\xaa\xaa\xc5\x99\x1f\x9b\xcb\x90\xd4\xf7"
+"\x41\x1a\x0e\x45\xf7\x9d\xfa\x25\x15\xfd\x79\x07\x66\x91\x3c\x94\x2e\x1e\x8f\x61\x8d\x75\x7f\x1a\x79\x85\x81\x7f\x85\x88\x8c\x96"
+"\x81\x1e\x95\x81\x7f\x90\x7e\x1b\x70\x76\x75\x6f\x6d\xa7\x73\xae\xb6\xaa\xaa\xc5\x99\x1f\x9b\xcb\x90\xd0\xf7\x45\x1a\xf9\x70\x07"
+"\x0e\x45\xf7\xe7\xfb\x6e\x15\xf9\x79\x07\xb0\x85\xda\x82\xe8\x1e\x87\xb5\x89\xa1\x97\x1a\x9d\x91\x95\x97\x91\x8e\x8a\x80\x95\x1e"
+"\x81\x95\x97\x86\x98\x1b\xa6\xa0\xa1\xa7\xa9\x6f\xa3\x68\x60\x6c\x6c\x51\x7d\x1f\x7b\x4b\x86\x46\xfb\x45\x1a\xfd\x70\x07\x0e\xb8"
+"\xf8\xeb\x16\xf7\xa1\x07\xf7\x29\x86\xb1\x71\xb7\x1e\xd1\x61\x3e\xb4\x31\x1b\x38\x46\x6a\x4d\x5e\x1f\x66\x5a\x85\x67\xfb\x36\x1a"
+"\xfb\xa1\xd1\xf7\xa4\x07\xf7\x05\x91\xba\x9d\xad\x1e\xbd\xa6\xc5\xad\xc8\x1b\xc4\xc2\x6e\x5d\xa8\x1f\xa2\x67\x91\x62\xfb\x12\x1a"
+"\xfb\xa4\x07\x0e\xf8\x0e\xf8\xa3\x6c\x0a\xfb\x01\xfb\x63\x83\x0a\xfb\x14\xfb\x05\x15\x96\x59\x96\x75\xa5\x6d\x08\x54\xbb\xc7\x71"
+"\xdc\x1b\xdc\xc7\xa5\xc2\xbb\x1f\xa5\xa9\x96\xa1\x96\xbd\x84\x36\x80\x62\x6d\x5e\x08\x4c\x61\x4b\x6b\x38\x1b\x3e\x4f\xa6\xc1\x61"
+"\x1f\x67\xba\x7c\xb8\x84\xe8\x08\xf7\xee\xf7\x05\x83\x0a\x0e\xfc\x58\xf7\x2a\x20\x0a\x38\xfc\xa0\xab\x06\x53\x5e\x79\x6e\x61\x1a"
+"\x57\xb7\x67\xca\x9c\xa2\x8f\x90\x9d\x1e\xb8\x07\x85\x79\x7f\x88\x7e\x1b\x6d\x77\xa1\xad\xab\xa2\xb7\xa9\xa6\x1f\xf9\x6d\x04\x37"
+"\x22\xdf\x06\x0e\xfc\x58\x47\x1d\x0e\xfc\x58\x47\x1d\x94\xf7\x53\x22\x1d\xfc\x58\x47\x1d\x8c\xf7\xe3\x40\x0a\xfc\x58\x47\x1d\x8c"
+"\xf7\x93\x21\x0a\xfc\x20\x2e\x1d\xc3\xf9\x61\x36\x0a\xfc\x58\xd1\xf8\xa0\x74\x0a\x2e\xf7\x6d\x27\x1d\xfb\x42\xf7\x21\xf7\xc3\x15"
+"\xf7\x71\x30\x1d\xf7\x5b\x07\xde\xdc\xf7\x42\xfb\xac\x05\xf2\x06\xfb\x6a\xf7\xea\xf7\x4c\xf7\x4a\x05\xfb\x01\x06\x0e\xfb\x42\x6b"
+"\x0a\xd7\xfb\xfe\x23\x1d\xfb\x42\xf5\xf7\x47\x15\xde\xdd\xf7\x48\xfb\x99\x05\xd8\x06\xfb\x66\xf7\xc2\xf7\x64\xf7\x64\x05\x37\x06"
+"\xfb\x92\xfb\x96\x05\xf7\x96\x4a\xfc\x92\xcc\x07\x0e\xfc\x58\x43\x1d\x92\x3b\x0a\xfb\x42\xa1\x16\xe5\x06\xf7\x1b\xf8\x1b\xf7\x21"
+"\xfc\x1b\x05\xe7\x06\xfb\xa0\xf9\x6d\x05\x30\x06\xdd\xfb\x70\x05\x0e\xfc\x0b\x43\x1d\xc0\xf9\x6d\x38\x0a\xfc\x58\x43\x1d\x32\x4f"
+"\x23\x1d\xfb\xe8\xf7\x32\x20\x1d\x38\xfd\x6d\xde\x06\xce\xf8\x2c\x15\x22\xf1\xf4\x07\x0e\xfb\x11\xb3\x1d\xfc\x7d\xf8\x0a\x8a\x1d"
+"\xf8\x02\xf7\xd5\x15\xc2\xfb\x34\x07\x86\x95\x87\x91\x84\x97\x08\x67\xca\x84\x9e\xb1\x1a\xd7\xc3\xbe\xe0\xe2\xb8\x58\x24\x8f\x1e"
+"\xe3\x06\x8a\xc8\x83\xb2\x77\xac\x08\xc9\x68\x44\xb0\x37\x1b\xfb\x1b\x23\x2e\xfb\x0d\x61\x93\x74\xb1\x4c\x1f\x92\x80\x05\x3a\x54"
+"\xf7\x02\x06\x92\x7f\x8f\x82\x91\x7b\x08\xfb\x12\x54\xf7\x18\x06\x83\x50\x68\x59\x39\x48\xbc\x49\x18\xa3\xb1\xaf\x97\xae\x1b\xa0"
+"\xa3\x87\x84\xa0\x1f\x6e\xde\xa5\x85\xaf\x1b\xc0\xb2\x9c\xb3\xb3\x1f\x61\xcd\x05\x76\x6d\x70\x81\x70\x1b\x79\x7a\x8f\x97\x60\x1f"
+"\x97\x64\x7a\x8e\x70\x1b\x61\x63\x7e\x71\x64\x1f\xd6\xd6\xab\xb9\x94\xba\x08\xf7\x10\xc2\xfb\x12\x06\x88\x98\x88\x95\x86\x99\x08"
+"\x0e\xfc\x58\xf7\x23\x16\xf8\xf2\x07\xae\x9e\x9d\xb1\x1e\xa9\x8a\x05\x46\x1d\x07\x0e\xd7\xf8\x14\xf8\x82\x15\x9f\x64\x73\x92\x69"
+"\x1b\x28\x36\x36\x27\x2b\xe0\x39\xef\xed\xdf\xe1\xf0\xb9\x79\xb5\x68\xae\x1f\xf7\x2a\xf7\x2a\x90\x72\x9f\x5a\x9a\x6d\x19\x77\x96"
+"\x90\x85\x95\x1b\x92\x90\x91\x92\x90\x8a\x8f\x89\x96\x1f\x84\xab\x89\xa1\xa8\x1a\xb1\x8e\xa9\x92\xa4\x1e\x90\x9c\x8b\x8c\x8f\x1a"
+"\x91\x87\x8f\x85\x87\x82\x89\x88\x82\x1e\x83\x71\x79\x89\x5c\x1b\x6f\x73\x8e\x91\x6e\x1f\x8d\x80\x88\x8c\x86\x1b\x83\x85\x86\x83"
+"\x7e\xa6\x79\xb2\x7c\x1f\xb4\x7c\x91\x89\x98\x88\x08\xfb\x8c\xfb\x41\x15\xd3\xc7\x4e\x42\x41\x4f\x4f\x41\x41\x4f\xc7\xd6\xd5\xc7"
+"\xc6\xd7\x1f\x0e\xfc\x7a\xf7\x35\x91\x0a\x0e\xfb\x42\xf7\x7f\xf7\x53\x15\x92\x7b\x75\x90\x78\x1b\x48\x4f\x52\x4a\x64\xa7\x73\xb8"
+"\xe8\xcd\xd3\xf0\x1f\xf7\xd4\x07\xc8\x82\xbd\x39\x30\x1a\x54\x82\x60\x72\x50\x1e\xa8\x06\xb2\xbb\xa0\xc6\xcb\x1a\xdd\x6c\xd9\x4b"
+"\xd7\x1e\x53\xce\x8a\x8c\x85\x92\x83\x96\x19\xcb\x5b\x07\x0e\xd7\xf7\x95\xf9\x19\x15\xfc\x59\x78\x0a\xf7\xf0\x07\xf7\xb5\x5f\x05"
+"\xfc\x03\x78\x0a\xf8\x52\x07\x0e\x35\x1d\xf7\x37\x39\x1d\x45\xf7\x0a\x98\x0a\xf7\xb5\x07\xf6\xc3\xd1\xe1\xcd\xb5\x63\x4c\x1e\xfb"
+"\xff\xde\xf8\x20\x7d\x0a\xfb\x4d\xf7\x84\x38\x0a\x35\x1d\xf7\x47\xce\x42\x1d\x35\x1d\xdd\xfc\xdc\x23\x1d\xf7\xda\xf8\xa4\xf7\x6c"
+"\x15\xf7\x83\xc8\xfb\x60\x06\xe3\xf7\x2f\x05\xf7\x08\xc9\x3a\x06\xac\xc6\x61\xa3\x5c\x38\x05\xfb\x23\x5e\x1d\x65\x1f\x4b\x60\x69"
+"\x42\x2c\x1a\xfb\x08\xb8\x37\xdc\x69\x1e\x6a\x52\xb6\x74\xb1\xce\x05\x88\xa5\x97\x8a\xb5\x1b\xf7\xac\xc9\xfb\xb7\x06\x77\x85\x8b"
+"\x8c\x82\x1f\xaa\xf7\x2d\x15\x3a\xfb\x21\x57\x9d\x6c\xbe\x88\xd3\x19\xf7\xb6\xf7\x6c\x15\x33\xfb\x2f\x05\xfb\x5e\x06\x91\xf6\xc3"
+"\xbd\xf7\x01\x89\x08\x0e\xfb\x11\xf7\x31\xf7\x03\x15\x4f\x20\xbe\x6e\xd7\xf7\x1c\x05\xf7\xb8\xd1\xfb\x91\x06\xc4\xf1\x05\xf7\x58"
+"\xd1\xfb\x31\x06\xc6\xf4\x59\xa7\x3f\xfb\x19\x05\xfb\x98\x45\xf7\x71\x06\x52\x25\x05\xfb\x38\x45\x06\x0e\xfb\x42\xf7\xb3\x96\x0a"
+"\xfc\x31\xfb\x20\xf8\x31\x05\x2d\x06\xf7\x4c\xfc\xa0\x05\x0e\x2a\x1d\xfb\x2b\xf7\xa2\x6d\x0a\x2a\x1d\x6a\xf7\xaa\x15\x2a\x47\x0a"
+"\xc9\x16\x2a\x47\x0a\x0e\x2a\x1d\xf7\x1d\xf7\x83\x15\xfb\xa6\x45\xf7\xa6\x06\x0e\xf6\x63\x1d\x0e\xf6\x63\x1d\x38\xf8\x12\x21\x0a"
+"\xf7\xa9\x3d\x1d\x0e\xf7\xa9\x3d\x1d\x62\xf7\xd1\x21\x0a\xf7\xc5\xbd\x16\xfa\x04\xcd\xfd\xc2\xf9\xb8\x49\x06\x0e\x4c\x55\x0a\x2c"
+"\xf7\xec\x21\x1d\xfb\x5a\xf1\xf9\x32\x15\xac\xd5\x8b\x8b\xb1\x1b\xba\xb2\x79\x69\xa3\x1f\xad\x5c\xa0\x40\x42\x1a\x6d\x89\x73\x82"
+"\x50\x1e\xc0\x46\x70\x97\x55\x1b\x5a\x64\x7b\x69\x69\x1f\x5d\x5c\x6f\x48\x4a\x1a\xfb\x01\xde\x36\xf6\xd7\xc8\xb4\xd8\xb6\x1e\xb1"
+"\xcf\xa7\xf7\x16\xf3\x1a\xf7\x5c\xfb\x03\xf7\x25\xfb\x2d\x5e\x5c\x81\x79\x63\x1e\xf7\xbf\xfc\x36\x15\x7e\x33\x83\x6a\x7c\x5f\x08"
+"\x3d\x70\x5e\x5f\x54\x1b\x53\x6a\xbe\xe2\xf7\x08\xcd\xeb\xdc\xb5\xb0\x75\x62\xa5\x1f\x0e\xf8\x38\xf9\x0d\xf7\xc9\x15\x55\xe0\x51"
+"\x36\x5f\x63\xb7\xfb\x7e\x06\x6c\xa3\x79\xb5\x99\x96\x8c\x8f\xa0\x1e\xb5\x07\x88\x80\x85\x8a\x81\x1b\x74\x87\x8f\xa3\x1f\xf7\x68"
+"\xc1\x07\xf7\xfa\x5d\x15\xc8\x8a\x5f\xad\x3e\x1b\x3e\x58\x65\x52\x5b\xa6\x75\xdb\x79\x1f\xbb\x7f\x05\xac\x84\x98\x7e\x74\x1a\x6d"
+"\x6f\x78\x5f\x5a\x77\x9b\xb8\x84\x1e\x4e\x06\x44\x8e\xb6\x68\xe2\x1b\xde\xc1\xb2\xc6\xb9\x6f\xa5\x48\x9a\x1f\x5a\x96\x05\x62\x94"
+"\x7b\x98\xa1\x1a\xa9\xa3\x9c\xb5\xb3\x9f\x7b\x69\x8c\x1e\xfd\x66\xe1\x15\xc3\x06\xc5\xb7\xab\x1d\x3b\xd8\xfb\x24\x1e\xfb\x15\xfd"
+"\x6d\xe8\x97\x0a\xa1\x07\xe3\xc0\x5b\x3b\x3b\x56\x5b\x33\x1f\x0e\x71\xf7\xaa\x4f\x0a\xf7\x58\x06\xcc\x91\xb0\x98\xb4\xab\x08\xcd"
+"\xbd\xb0\xdd\xe9\x1a\xf7\x09\x52\xed\x2d\xb4\x1e\x9d\x64\x55\x95\x55\x1b\x7f\x87\x8b\x8a\x7b\x1f\xfc\x79\x07\x5a\x90\x71\x95\x73"
+"\xa3\x08\x68\xad\x76\xca\xd3\x1a\xbe\x95\xb7\x9e\xae\x1e\x98\xa4\x98\x97\xa8\x9b\x08\xde\x07\x50\x73\x6f\x77\x6a\x61\x08\x63\x58"
+"\x7a\x56\x44\x1a\x25\xaf\x35\xca\x5a\x1e\xb3\x6c\xb1\x7e\xd2\x84\x08\xdf\xf8\x79\x15\xec\x85\xc3\x43\xfb\x0b\x1a\x45\x79\x50\x69"
+"\x64\x1e\x72\x6f\x70\x7f\x5a\x86\x08\x0e\x9b\xf9\x03\x20\x0a\xfc\xc1\x41\xd6\xfc\x56\xdf\xf8\x56\xf7\x83\xfc\x56\xdf\xf8\x56\xd6"
+"\x06\x0e\xf7\xd6\xf7\x70\xfb\x30\x15\x3e\x36\xf7\x8f\x06\x8a\xe0\x05\x40\xf9\xab\xf7\xfe\xfd\xab\x45\x06\x8c\x36\x05\xf7\x84\xe0"
+"\x42\xf9\xab\xf0\xe0\xfd\x8f\x36\xf3\x06\x0e\xf7\xda\xf9\x93\xc9\x15\xfb\xb7\x06\xfb\x0d\x57\xc2\xf7\x16\xf7\x15\xbf\xc3\xf7\x0d"
+"\x1f\xf7\xb7\xc9\xfb\xac\x5e\x1d\x66\x1f\x4a\x60\x69\x43\x2b\x1a\xfb\x07\xb8\x37\xb0\x1d\x06\x0e\xf7\xda\xf7\x7d\xc9\x15\x4d\xf7"
+"\xac\x07\xde\xae\x92\xa4\xb1\x1f\xcc\xb6\xac\xd4\xee\x1a\xf7\x03\x5d\xe0\x3d\xac\x1e\x99\x69\x70\x8f\x46\x1b\xfb\xac\x4d\xf7\xb7"
+"\x06\xf7\x0d\xbf\x54\xfb\x16\xfb\x16\x57\x54\xfb\x0d\x1f\x0e\xb2\xf8\x2b\x20\x0a\x37\xfc\x66\x06\xfb\x02\x94\x61\xbd\x8f\xf7\x0b"
+"\x08\xf7\xb4\x37\xfb\xb7\x07\x83\xfb\x31\xd1\x3f\xf7\x3e\x78\x08\xfb\x5b\xdf\xf7\x5b\x07\xf7\x3e\x9e\xd1\xd7\x83\xf7\x31\x08\xf7"
+"\xb7\x37\xfb\xb4\x07\x8f\xfb\x0b\x61\x59\xfb\x02\x82\x08\x0e\xfc\x58\xf7\x32\x20\x1d\x2e\x26\x06\x3b\xac\x5c\xc7\x87\x1e\xb1\x07"
+"\x68\x90\x7d\xa6\x8c\xc5\x08\xbb\x06\x0e\xfb\xe9\x37\x0a\xd3\x39\x1d\xfb\x71\xf8\x44\xfa\x25\x15\xfb\x14\xfd\xa8\xfb\x55\xf8\x20"
+"\xfb\x28\x42\x9d\x6a\xe9\xb9\xf7\x85\xfc\x85\xf7\x2c\xfa\x44\x05\x0e\xfb\xe9\x37\x0a\xe8\xce\x42\x1d\xfb\xe9\x37\x0a\x3a\xfc\xdc"
+"\x23\x1d\x31\xf8\xb4\xf8\x0b\x15\xfc\x8c\xfb\xb5\xd1\xf7\x6f\xf8\x46\x06\x0e\x22\xc6\xfb\x6e\x15\xdf\x4d\x0a\xbb\x73\xce\x1b\xf7"
+"\x1d\xe4\xf7\x02\xf7\x3d\xf7\x42\x31\xf7\x01\xfb\x22\x41\x4a\x6d\x55\x60\x1f\x61\x57\x7e\x59\xfb\x02\x1a\xf7\x7e\xf7\x6f\x15\xe6"
+"\xc4\x3b\xfb\x14\xfb\x0c\x4f\x3c\x31\x30\x52\xd9\xf7\x11\xf7\x11\xc5\xda\xe7\x1f\x0e\xfb\x42\x31\x1d\x40\xf7\xfe\x21\x1d\xfb\x42"
+"\xf7\x88\x73\x15\xc7\x8f\xa9\x91\xa6\x97\x08\xc8\xa6\xb0\xc2\xca\x1a\xd9\x5f\xb6\x23\xa4\x1e\x51\x1d\xe3\x06\xf2\x8a\x47\xc5\x4c"
+"\x1d\x8d\xfb\x00\xc4\x51\xf7\x04\x80\x6c\x44\x18\x96\x85\x05\x90\x79\x0a\x7a\x91\xa2\x5d\x6f\x0a\x59\x82\x31\x0a\xfb\x42\x31\x1d"
+"\xfb\x28\xf7\xff\x37\x1d\xfb\x42\x31\x1d\xfb\x2d\xfc\x4a\x23\x1d\xfb\xd4\xf7\x46\x91\x0a\xf7\x60\xf7\x94\x99\x0a\x0e\x52\xf8\xda"
+"\x20\x0a\xfb\x4a\x06\x97\x5c\x74\x8e\x68\x1b\xfb\x25\x31\xfb\x00\xfb\x41\xfb\x45\xe3\x23\x3c\x1d\xe4\xf4\xf7\x40\xe3\x78\xc3\x5b"
+"\xbf\x1f\xf7\x07\x06\xfb\xb1\x97\x15\xea\xc2\x3f\xfb\x16\xfb\x11\x52\x3e\x2e\x2e\x52\xd8\xf7\x13\xa1\x0a\x1f\x0e\xf7\xef\xf8\x93"
+"\x6c\x0a\x5a\x04\xf7\x43\xf7\x21\xfb\x21\xfb\x43\xfb\x44\xfb\x21\xfb\x20\xfb\x45\xfb\x43\xfb\x1f\xf7\x22\xf7\x47\xf7\x3e\xf7\x23"
+"\xf7\x21\xf7\x41\x1f\xfb\x01\xfb\x37\x15\x70\x74\x74\x71\x6f\xa2\x74\xa6\xa6\xa2\xa2\xa6\xa6\x74\xa2\x70\x1f\xfb\x14\xfb\x00\x15"
+"\x92\x36\x96\x62\xa9\x5e\x08\x4c\xb5\xcb\x6b\xde\x1b\xd8\xc7\xa6\xc1\xb5\x1f\xaf\xba\x9a\xb8\x92\xe8\x80\x59\x80\x75\x71\x6d\x08"
+"\x54\x5b\x4f\x71\x3a\x1b\x3a\x4f\xa5\xc2\x5b\x1f\x71\xa9\x80\xa1\x80\xbd\x08\xf7\xee\xf7\x00\x15\x70\x74\x74\x71\x6f\xa2\x74\xa6"
+"\xa6\xa2\xa2\xa6\xa6\x74\xa2\x70\x1f\x0e\xfb\x23\xc7\x16\xf8\x77\xa2\x06\xfb\x35\x93\x3f\xe0\x8e\xf7\x3e\x08\x38\xb7\xb9\x6a\xd4"
+"\x1b\xd1\xc5\xc9\xd5\xcf\x71\xb4\x20\xec\x1f\xfb\x01\xf0\x78\xa6\x64\xf7\x09\x7b\x2f\x50\x35\x21\x35\x08\x3b\x48\x68\x53\x4b\x1a"
+"\x40\xc8\x4d\xd4\xb5\xb4\x9c\xa9\xab\x1e\x9e\x9d\x96\x9a\x9c\xb0\x91\xfb\x3b\x34\x2c\xfb\x33\x8a\x08\x0e\xf7\xd6\xf9\x63\xf9\x7e"
+"\x15\xfc\x80\x45\x06\xf7\x61\xfb\xf5\xfb\x61\xfc\x16\x05\x44\xf8\x87\xf7\x6b\x43\x07\x88\xfb\x23\x05\xfb\xe3\x06\xf7\x60\xf8\x16"
+"\xfb\x5f\xf7\xf1\x05\xf7\xdb\x06\x8f\xfb\x22\x05\xd2\x06\x0e\xf7\x87\xf7\x94\xf8\xa3\x15\x6b\x62\x7a\x63\x85\x58\x08\xfb\x10\x4f"
+"\xf7\x10\x06\x90\x5b\x9f\x5a\xa8\x67\x34\x34\x18\xb5\x62\xe2\xe2\xb5\x6b\xb7\x79\xb9\x86\x19\xfb\x0f\xc6\xf7\x0f\x07\xba\x90\xba"
+"\x9e\xb3\xaa\xe2\x34\x18\xb4\xb4\x34\xe2\xa9\xb1\x9e\xb8\x91\xbd\x19\xf7\x0f\xc7\xfb\x0f\x06\x85\xbc\x78\xb9\x6d\xb0\xe2\xe2\x18"
+"\x62\xb4\x34\x34\x66\xa9\x5c\x9e\x59\x91\x19\xf7\x0f\x50\xfb\x0e\x07\x5b\x85\x5e\x78\x64\x6c\x34\xe2\x18\x61\x62\x05\xf7\xb9\x50"
+"\x15\xf0\xdf\x36\x26\x24\x37\x37\x24\x23\x39\xde\xf4\xf2\xde\xdd\xf4\x1f\x0e\xfb\xab\xf7\x2f\x16\xdf\xf8\x56\xf7\x42\xd5\xfc\x43"
+"\x41\xf7\x41\x06\x0e\xfc\x20\xf7\x92\xc1\x15\x88\x7f\x80\x8a\x7a\x1b\x67\x81\x95\xb0\x1f\xf7\x73\xd7\xc0\x3f\xde\xe1\xcf\x35\xf7"
+"\x24\x38\xfb\x24\x44\x47\xd2\x38\x4e\x56\xc8\xfb\x98\x07\x55\xaf\x6e\xcc\xa1\x9d\x8d\x90\xa7\x1e\x0e\xfb\xf9\x4b\x1d\x6a\xf7\xed"
+"\x15\x27\xc2\x07\x54\x8d\x78\x6c\x65\x1b\x65\x07\xc7\x89\xb2\xba\x8c\xd7\x08\xf2\x07\x0e\xfc\x20\xf7\x39\x75\x15\x8a\x93\x90\x8b"
+"\x94\x1b\xa0\x9d\x8d\x90\xa7\x1f\xd1\x07\x88\x7f\x80\x8a\x7a\x1b\x67\x81\x95\xb0\x1f\xf7\xfb\xe1\xcf\xbc\x1d\xfc\x20\x07\x69\x9a"
+"\x71\xa9\x7e\x1e\x67\x3c\x97\x85\x05\x90\x4d\x1d\xaf\xc4\xa2\x0a\x83\x31\x0a\xf7\xaa\xf9\x7c\x15\x41\x4f\x6c\x54\x65\x1f\x60\x4a"
+"\x7c\x3e\xfb\x2c\x1a\xfb\x27\x99\x3e\xb0\x4a\x1e\x4c\xaf\xca\x68\xd7\x1b\xe0\xc7\xab\xcd\xb1\x1f\xb0\xcb\x99\xd9\xf7\x25\x1a\xf7"
+"\x2e\x7c\xd7\x60\xcd\x1e\xc3\x65\x4f\xa9\x41\x1b\xfb\x25\xfb\xdd\x15\x8f\xf3\x91\xaf\xa2\xb9\x08\xb6\xa0\xb3\xa2\xbf\x1b\xbf\xb2"
+"\x74\x60\xa1\x1f\xa1\x5d\x92\x67\x8f\x23\x08\x8a\x48\x15\x8a\x2d\x87\x5b\x82\x67\x08\x3e\x78\x5d\x63\x48\x1b\x4c\x60\xae\xcd\x75"
+"\x1f\x7f\xb2\x86\xbc\x8a\xf5\x08\x0e\xfb\xe9\xf7\x12\xf9\x9f\x21\x0a\x26\x1d\xfb\xab\xf9\x70\x6d\x0a\x26\x1d\xfb\x38\xf9\x78\x39"
+"\x0a\x26\x1d\x8f\xf9\x51\x28\x1d\xfb\x0e\xf8\xd4\xfb\x47\x15\xfc\xec\x59\xf8\xec\x06\xf7\x2a\x04\xfc\xec\x59\xf8\xec\x06\x0e\xfc"
+"\x20\x0e\xfb\xe9\xa8\x1d\x4c\x3e\x0a\x2d\x4f\x23\x1d\xfc\x20\x4b\x1d\xfb\x23\xfc\x98\x23\x1d\xfb\xe9\xf7\xc2\xf9\x51\x28\x1d\xfc"
+"\x20\x46\x0a\x85\x7f\x16\xf9\x47\x06\xfb\xbd\xf9\x6d\x05\x27\x06\xbe\xfb\x05\x15\xf7\x67\xfc\xaa\x05\xfc\x3b\x06\x0e\xd5\xa7\x16"
+"\xf7\xb4\xdd\x06\x4e\xaf\x6e\xa4\x6f\xb1\x08\x63\xc1\x75\xd8\xdd\x1a\xf7\x37\xe7\xf1\xf7\x27\xf7\x26\xe7\x25\xfb\x37\x39\x75\x3e"
+"\x63\x55\x1e\x6f\x65\x6e\x72\x4e\x67\x08\x39\xf7\xb4\xdd\xfb\x55\x07\xc8\xaf\xa6\xa2\xa7\xb2\x08\xb4\xc3\xa0\xd4\xe1\x1a\xe5\x74"
+"\xd8\x60\xc3\x1e\xd8\x4e\x29\xb9\x20\x1b\x2e\x34\x68\x4c\x4d\x1f\x50\x50\x6d\x37\x22\x1a\x35\xa0\x42\xb4\x53\x1e\xa7\x64\xa6\x74"
+"\xc8\x67\x08\xfb\x55\x06\x0e\x29\xf8\x31\xf8\xa0\x15\xfb\xaf\x07\x43\x81\x65\x6e\x6a\x1e\x6d\x71\x65\x79\x64\x1b\x4a\x61\xb3\xca"
+"\x1f\xf8\x07\x37\xfd\x7a\xde\xf7\x6a\x07\x7f\xa4\xaa\x84\xac\x1b\xd4\xbc\xa7\xcf\xbb\x1f\x42\xd6\xf8\xa0\x07\x0e\xfb\x54\xf8\x37"
+"\xfb\x6e\x15\xaf\xea\x98\xba\xa9\x1a\xa3\x81\xa2\x7b\x9a\x1e\x73\xa1\x87\x8d\x36\xa8\x5e\x9b\x18\x48\xa3\x71\x98\x75\xa0\x08\x68"
+"\xab\x76\xc1\xc2\x1a\xf1\xcd\xd7\xe4\xb6\xb3\x78\x6c\xa2\x1e\x99\x79\x91\x7a\x8f\x6a\x08\xe3\x06\x86\xc2\x80\xa8\x70\xad\x08\xbc"
+"\x63\x4c\xa7\x44\x1b\x49\x4e\x72\x60\x60\x1f\x5f\x5d\x6e\x40\x45\x1a\x47\xa5\x43\xb4\x5f\x1e\xa8\x6b\xaf\x76\xc8\x76\xf7\x05\x65"
+"\x18\xae\x7f\x99\x7d\x75\x1a\x76\x7f\x65\x67\x2c\x1e\x0e\x84\x24\x0a\xf7\x28\xf9\xed\x22\x0a\xb8\x43\x0a\xf7\xa4\xf7\x66\x22\x0a"
+"\x64\x1d\xfb\x07\x3f\x1d\xf7\x2d\xf7\x6c\x22\x0a\xfb\x1c\xf7\x43\xf8\x32\x15\xf7\x7d\xf7\xfc\xdd\xfc\x5a\xfb\xcf\x5d\x39\xb9\xfb"
+"\xe0\xe9\xf7\xe0\xf7\x94\xdd\x07\x0e\xfb\xb1\xf7\x2e\xf7\xd7\x15\xf7\x13\xf7\x7d\xd5\xfb\xd1\xfb\x5d\x68\x41\xae\xfb\x8d\xdf\xf7"
+"\x8d\xf7\x2b\x07\x8c\xd5\x05\x0e\xf7\xef\xf8\x4d\x16\xe9\xf7\xed\xf7\x06\x49\x0a\xbf\xfb\x26\xe8\xf7\x78\x2b\x8d\x0a\xfb\x48\xfb"
+"\xc2\x05\xfb\x03\xf7\xc2\x2d\xfb\xc2\xfb\x03\x06\xfb\x48\xf7\xc2\x05\x22\x06\xf7\x63\xfb\xed\xfb\x8f\xfc\x14\x05\xf4\x06\xf7\x74"
+"\xf7\xed\x05\xf7\x03\x06\x0e\xf7\x25\xf7\xf3\x16\xdf\xf7\x8d\xf2\x06\xf7\x28\xfb\x8d\x05\xbb\xfb\x31\xdf\xf7\x7c\x3e\x06\xfb\x10"
+"\xf7\x67\xf7\x10\xba\x1d\x24\xf7\x5d\x37\xfb\x5d\x24\x06\x21\xf7\x5d\x05\x2a\x06\xf7\x10\xfb\x82\xfb\x3b\xfb\xb2\x05\xed\x06\xf7"
+"\x28\xf7\x8d\x05\xf2\x06\x0e\x45\xf7\xc8\x74\x15\xc1\xbc\x97\xa1\xaf\x1f\xc8\xb0\xb3\xd8\xdc\x1a\xe9\x5a\xcb\x37\x9b\x1e\xad\x96"
+"\x9c\x95\x9c\xa0\x08\xa6\xab\x9b\xb8\xb8\x1a\xf7\x06\x2e\xde\xfb\x13\xfb\x1a\x32\x32\xfb\x1a\x1e\x7a\xe9\xad\x07\xd5\xc0\xbd\xd8"
+"\xd6\xbd\x5a\x43\x41\x54\x5b\x37\x1e\x6a\x3a\xb3\x06\xba\xa5\x85\x7a\xa5\x1f\xaf\x74\x9e\x64\x58\x1a\x33\x55\x57\x2f\x2d\x4f\xc5"
+"\xe5\x1e\x9c\x2d\x07\x87\xfb\x19\xdf\x28\xf7\x16\x7e\x6b\x44\x18\x96\x85\x05\x90\x98\x92\x8d\x96\x44\x0a\x79\x91\xa2\x5e\x87\x1d"
+"\xfb\x6c\xf7\x86\x74\x15\xf1\x91\xd1\xcf\xe9\x1a\xc6\x6f\xb5\x50\xa6\x1e\xbe\xa7\xa4\xb2\xbd\x1a\xdf\x41\xcc\x2a\x51\x59\x75\x65"
+"\x6b\x1e\x76\x71\x7a\x5d\x6b\x1a\x74\xe2\xa2\x07\xbd\xb1\xb0\xbf\xbd\xae\x69\x5c\x7a\x85\x7a\x81\x81\x1e\x79\x79\x6a\x7e\x72\x1b"
+"\x68\x41\xae\x06\xc9\xb4\x67\x55\x54\x66\x6a\x4d\x4b\x69\xaa\xc4\x1f\xa1\x34\x75\x07\x2d\xc8\x4d\xed\x83\x1e\x6c\x45\x97\x84\x05"
+"\x91\x97\x92\x7a\x1d\x83\x31\x0a\x83\xdb\x16\xe9\xf7\xed\xd4\x49\x0a\xc5\xfb\x3a\xe9\xf7\x8c\x25\x8d\x0a\xfb\x47\xfb\xc2\x05\x43"
+"\xf7\xc2\x2d\x06\x0e\xfb\x1b\xd2\x16\xdf\xf7\x8d\xf2\x06\xf7\x28\xfb\x8d\x05\xbb\x5f\x1d\x3e\x06\xfb\x10\xf7\x68\xf7\x10\xf7\x82"
+"\x05\x2a\x06\x21\x56\x1d\x37\x06\x0e\x53\xf7\x76\xf8\x3f\x15\x57\xf7\xc2\x2d\xfd\x6d\xe9\xf7\xed\xbf\xfb\x4b\xc7\xf7\x4b\x8d\x06"
+"\xf7\x74\x81\x0a\xf7\x4c\x4f\x07\x0e\xfb\x3d\xf7\x61\xf7\xd7\x15\x59\xf7\x5d\x30\x1d\xf7\x8d\xbd\xfb\x14\xc1\xf7\x14\x06\xf7\x27"
+"\x50\x1d\x22\xfb\x5d\x05\xf7\x14\x55\x07\x0e\x30\xf7\x31\xf8\x3f\x15\x8c\xf7\xc2\x05\xfc\x04\x39\xf7\xa5\xfd\x1b\x86\x1d\x0e\xfb"
+"\x80\xb0\xf8\x56\x15\xfc\x56\xdf\xf7\x8d\xf2\x07\xf7\x28\x50\x1d\x21\x56\x1d\xfb\xb9\x41\x06\x0e\xbb\xf8\xb8\x4e\x0a\xc3\xa5\x1d"
+"\x87\x0a\xfb\x10\xd2\x16\xdf\xf7\x83\xf7\x85\xfb\x83\xad\x5f\x1d\x69\xf8\x56\x37\xfb\x67\xfb\x85\xf7\x67\x37\x06\x0e\xbb\xf8\x1a"
+"\x74\x15\xf7\x3d\x8f\xeb\xec\xa1\xf7\x50\x08\x2b\x06\x83\x59\x81\x69\x7c\x6e\x45\x0a\xf7\x4a\xf7\x4f\xe2\xf7\x07\xf7\x22\xc6\x73"
+"\x1d\xb9\x6b\xba\x7c\xcc\x87\x6c\x45\x18\x50\x0a\x97\x92\x83\x1d\xae\xc5\x9b\x1d\x0e\xfb\x42\xf7\xab\x74\x15\xf7\x07\x91\xd7\xd8"
+"\x92\xf7\x0c\x08\x37\x06\x37\x84\x0a\xf7\x17\x72\x0a\xfb\x33\xd9\x24\xf7\x16\x7e\x1f\x6c\x45\x50\x0a\x96\x93\x7a\x1d\x82\x85\x8b"
+"\x89\x7f\x1f\x0e\x8b\xf8\x17\x55\x1d\xfb\x6a\xf7\xf7\x05\xfb\x07\x06\xf7\xac\xa0\x0a\xe9\x07\x0e\xfb\x42\xf8\x1b\xf8\xa0\x15\xfb"
+"\x20\x89\x0a\xfb\x6e\xdf\xf7\x6e\x07\xf7\x4f\xf8\xa0\x05\x0e\x8b\xf8\x17\xf7\x72\x15\xcb\x07\xf7\xa6\xf8\x4f\x05\xfb\x03\x06\xfb"
+"\x64\xfb\xf7\xfb\x6b\xf7\xf7\x05\xfb\x06\x06\xf7\xac\xfc\x4f\x05\x4b\xfb\x2f\x37\xf7\x2f\xfb\x1e\xe9\xf7\x1e\xf7\x28\xdf\x07\x0e"
+"\xfb\x42\xf7\xb9\x89\x15\x8d\x07\xf7\x4f\xf8\xa0\x05\x31\x06\xfb\x1f\x89\x0a\x89\xfb\x0d\x52\xf7\x0d\xfb\x33\xdf\xf7\x33\xf7\x0b"
+"\xc4\x07\x0e\xae\xf8\x19\x61\x0a\xca\xfb\x3a\xe9\xf7\x8c\x28\x06\x0e\xfb\x27\xf7\xb9\x67\x0a\xb9\xfb\x33\xdf\xf7\x7d\x38\x06\x0e"
+"\xa0\xf8\x9d\x16\xc3\xa5\x1d\x7d\x1d\xfb\x3a\xf7\xf5\x16\xad\x5f\x1d\x69\xf8\x56\x75\x1d\xa0\xf8\x04\xf7\x8f\x15\xc4\x90\xbb\x93"
+"\xbb\x98\x08\xfb\xa9\xe9\xf9\x6d\x2d\xfc\x06\x07\x4f\x7b\x60\x83\x59\x88\x08\xf7\x75\x4f\xfb\x75\x07\x23\x91\x59\xae\x8c\xcd\x08"
+"\xf7\xb6\x2d\xfb\xbb\x07\x8c\xfb\x08\xe5\x48\xf7\x30\x89\x08\xfb\x21\xc7\x07\x0e\xfb\x3a\xf7\xa6\xf7\x43\x15\xaa\x90\xa1\x92\xa9"
+"\x97\x08\xfb\x5b\xdf\xf8\xa0\x37\xfb\x94\x07\x6e\x82\x73\x85\x6d\x88\x08\xf7\x0d\x55\xfb\x0e\x07\x56\x8f\x6e\xa7\xbc\x1a\xf7\x56"
+"\x37\xfb\x69\x07\x87\x36\xcb\x55\xf5\x8a\x08\x31\xc1\x07\x0e\xa0\xf7\x2f\x20\x1d\x2d\xfd\x6d\xe9\xf8\x06\x06\x9f\xd6\xbc\x93\xc6"
+"\x1b\xf7\x0e\xc8\x67\x43\x1f\xfb\xb6\xe9\xf7\xbb\x07\xf7\x09\x2d\xcf\xfb\x36\x4b\x45\x81\x79\x45\x1e\x0e\x20\xdd\x16\xdf\xf7\xed"
+"\x06\xd2\xb9\xc2\xb2\x57\x1d\xfb\xfa\xdf\xf7\xfa\x4a\x0a\x57\x6e\x47\x52\x1e\xf7\xba\x37\x07\x0e\xfc\x20\xf7\x4e\x2c\x1d\x0e\x84"
+"\xf8\x8f\xdd\x15\x53\xfb\x8c\xe9\xf7\x3a\xc3\xf9\x6d\x6b\x1d\xcc\xd0\x95\x9d\xd1\x1e\x0e\xfb\x2d\xf7\xfc\xd6\x15\x52\xfb\x7c\xdf"
+"\xf7\x31\xc4\xf8\xa0\x37\xfb\x93\x06\x7d\x5f\x66\x85\x64\x1b\x4a\x69\xa7\xc1\x1f\xf7\x55\x37\xfb\x68\xae\x1d\xc7\x1b\xba\xb5\x94"
+"\x9e\xb9\x1f\x0e\xf3\xb2\xf8\x24\x15\x89\x7a\x8b\x81\x7d\x1a\xfb\x79\xf7\x21\xfb\x2e\xf7\x67\xf7\x67\xf7\x21\xf7\x2d\xf7\x79\xf7"
+"\x79\xfb\x21\xf7\x2e\xfb\x67\xfb\x30\xfb\x02\x40\xfb\x27\x50\x1e\xe7\x79\x05\xf2\xb6\xdc\xc2\xf7\x01\x1b\xe2\xd8\x63\x48\xb6\x1f"
+"\xa6\x61\x9b\x5d\x92\x4b\x08\x38\x04\xfb\x37\x79\x2b\x2b\xfb\x23\x1b\xfb\x23\x2b\xec\xf7\x36\x79\x1f\x0e\xb8\x43\x0a\xf8\x45\xf6"
+"\x28\x1d\xfb\x07\x3f\x1d\xf7\xd8\xf7\x10\x15\xfb\xa6\x45\xf7\xa6\x06\x0e\xf3\xf8\x18\xf9\x79\x15\xfb\x66\xfb\x21\xfb\x2e\xfb\x79"
+"\x9d\x0a\xe4\xd9\xa6\xbd\xc6\x1f\xda\xce\xba\xf7\x05\xf7\x0c\xb4\x1d\xf7\x96\xfc\x3c\x15\xfb\x37\x79\x2b\x2b\xfb\x23\x1b\xfb\x23"
+"\x2b\xec\xf7\x36\x79\x1f\xde\x04\xf7\x36\x9d\xeb\xec\xf7\x23\x1b\xf7\x23\xeb\x2b\xfb\x37\x9d\x1f\x0e\xf7\xa9\xf8\xaf\x15\xfb\x28"
+"\x33\x22\xfb\x44\xfb\x45\xe3\x23\xf7\x29\xf7\x28\xe4\xf4\xf7\x40\xf7\x4a\x35\xf2\xfb\x2c\x1f\xf7\x29\xfb\xd2\x15\x20\x80\x56\x4f"
+"\x37\x1b\x37\x56\xc7\xf6\x80\x1f\xd5\x04\xf6\x96\xc0\xc7\xdf\x1b\xdf\xc0\x4f\x20\x96\x1f\x0e\x64\xf8\x68\xfa\x01\x8f\x0a\xfb\xda"
+"\xfd\xbb\x15\xe3\x06\xbf\xb5\xaa\xc8\xa6\x1f\xf7\xa9\xf9\x11\x05\xfb\x02\x06\xfb\x50\xfc\x62\xfb\x5b\xf8\x62\x05\xfb\x04\x06\xf7"
+"\x9d\xfc\xd1\x73\x4e\x7d\x80\x5b\x89\x19\x53\x06\x0e\xfb\x42\xf8\x11\xf9\x26\x8f\x0a\x94\x4b\x15\xfb\x24\xfc\x2c\xfb\x1b\x48\x1d"
+"\xfc\xa0\x6b\x36\x05\x64\x7d\x79\x7d\x69\x1b\x7c\x7e\x8d\x91\x7a\x1f\x3e\x07\x83\x9c\x9c\x88\xa0\x1b\xa7\xa7\x94\x9b\xa2\x1f\xa4"
+"\x9e\x9a\xa1\x9b\xb5\xf7\x7e\xf9\x0e\x18\x0e\xfb\xe9\xf8\x66\xfa\x1d\x9c\x0a\xf7\x86\xb0\x89\x15\xf7\x69\xaf\x8f\xa5\xc8\x1f\xf7"
+"\x05\xbd\xdf\xf7\x33\xf7\x37\x1a\xe1\x70\xd6\x5f\xad\x1e\xa4\x6c\x5e\x97\x50\x1b\xfb\x08\x38\x6b\x4d\x5e\x1f\x71\x67\x81\x64\x89"
+"\x42\xcc\xab\x18\x97\x07\xc1\x9c\xb1\xad\xa2\x1e\x9c\x96\x95\x8e\xb9\x94\x42\xfc\x1f\x18\x7c\x45\x73\x61\x6e\x81\x08\x77\x06\xd3"
+"\x8a\x15\xc8\xbc\x9a\xac\xa1\xf7\x0f\xc2\xf7\xd2\x18\x92\x06\x90\x06\x9e\x06\xa9\x97\x88\x7f\x9e\x1f\xb3\x72\xa1\x51\x3a\x1a\x20"
+"\x73\x34\x5c\x4c\x1e\x64\x59\x58\x6e\x54\x88\x08\xf7\x7b\xfb\x7d\x15\xce\x06\xad\xf7\x52\x05\x7d\xaa\x97\x88\x9e\x1b\xf7\x06\xee"
+"\xf7\x29\xf7\x42\xec\x64\xbd\x3e\x5c\x63\x77\x66\x6d\x1f\x69\x61\x79\x55\x75\xfb\x0b\x08\xb9\xfb\x00\x15\xae\xf7\x54\x05\xe1\x9b"
+"\xad\xbc\xb7\x1b\xb2\xa0\x63\x41\xfb\x20\x56\xfb\x02\x47\x71\x77\x95\xa1\x79\x1f\x0e\xe9\xf8\xaf\xdd\x15\xf7\x17\xd6\xc8\xf0\xf7"
+"\x1f\x1a\xf3\x65\xe1\x3e\xcf\x1e\xc4\x4a\x3e\xa8\x31\x1b\x31\x3e\x6e\x52\x4a\x1f\x3e\x47\x65\x35\x23\x1a\xfb\x1f\xc8\x26\xf7\x17"
+"\x40\x1e\xfb\x5d\x39\xf7\xc1\xd9\x06\x57\xa7\x72\x9d\x6f\xa7\x08\x4d\xc9\x6b\xdb\xe7\x1a\xdc\xa3\xc9\xc1\xc3\x1e\xbf\xbd\xbf\xa1"
+"\xd5\x1b\xd5\xbf\x75\x57\xbd\x1f\xc1\x53\xa3\x4d\x3a\x1a\x35\x6f\x40\x55\x4e\x1e\x6c\x6a\x6f\x76\x51\x6b\x08\x3d\xf7\xc1\xdd\x07"
+"\x0e\xfc\x20\xf7\xe1\x2f\x1d\x0e\xfc\x20\x46\x0a\xf7\xda\xf8\xa9\xf8\x95\x15\x49\x06\xfb\x74\xfc\x95\x05\xdb\x06\xf7\x45\xf8\x2d"
+"\xf7\x45\xfc\x2d\x05\xdb\x06\x0e\xf7\xda\xf8\xa9\x16\xf7\x74\xf8\x95\x05\x3b\x06\xfb\x45\xfc\x2d\xfb\x45\xf8\x2d\x05\x3b\x06\xf7"
+"\x74\xfc\x95\x05\x0e\xf7\xda\xf8\x8c\xf9\x60\x15\xfb\x60\xfb\x34\xfb\x33\xfb\x5e\xfb\x5b\xf7\x34\xfb\x33\xf7\x5d\xf7\x5b\xf7\x34"
+"\xf7\x34\xf7\x5c\xf7\x59\xfb\x35\xf7\x36\xfb\x57\x1f\xa4\x52\x15\xf7\x23\x7e\xf7\x06\xfb\x06\x99\xfb\x25\x08\xfb\xa3\x06\xf7\xa4"
+"\x52\x15\x82\xfb\x22\xfb\x0d\xfb\x0f\xfb\x22\x80\x08\xf7\xa8\x07\x53\xfb\xa8\x15\xfb\x27\x99\xfb\x05\xf7\x05\x7d\xf7\x29\x08\xf7"
+"\xa6\x06\xfb\xa6\xc4\x15\x99\xf7\x24\xf7\x07\xf7\x06\xf7\x25\x99\x08\xfb\xa4\x07\x0e\x45\xb6\x16\xf8\x9b\xf8\x9b\xfc\x9b\x06\xf8"
+"\x67\xfc\x67\x15\xfc\x33\xf8\x33\xf8\x33\x06\x0e\xb8\xf8\xeb\xf8\xf7\x15\x45\xfb\xa4\x06\xfb\x05\x86\x5f\x7b\x6b\x1e\x56\x70\x50"
+"\x67\x4c\x1b\x54\x54\xa7\xb7\x6e\x1f\x73\xb0\x84\xb7\xf7\x11\x1a\xf7\xa4\x45\xfb\xa1\x07\xfb\x29\x90\x65\xa6\x5f\x1e\x45\xb5\xd7"
+"\x62\xe5\x1b\xde\xd1\xac\xc9\xb8\x1f\xaf\xbc\x91\xaf\xf7\x36\x1a\x0e\x3a\xf8\x27\xf8\x1c\x15\xfb\x69\x06\x41\xf7\x4d\x05\x2d\x06"
+"\xf7\x7d\xfc\xd5\x05\xde\x06\xf7\x7d\xf8\xd5\x05\x2d\x06\x22\xfb\x9d\x15\x3f\xfb\x48\x40\xf7\x48\x05\x0e\xf8\x76\xf8\xa0\x15\x38"
+"\xfb\xbd\x06\x20\x53\x45\x34\x49\x61\xb3\xca\x1e\xf8\x07\x38\xfc\x28\x07\x34\xcc\x53\xf1\xd8\xbc\xa6\xd0\xbc\x1e\x42\xa1\x07\x49"
+"\x69\x6d\x69\x60\x1a\x52\xc0\x67\xde\x97\x92\x8c\x90\x9f\x1e\x8d\x8c\x90\x8c\x91\x8c\x08\xb8\x07\x83\x76\x7f\x89\x7b\x1b\x63\x71"
+"\x9f\xab\xb2\xa9\xb6\xb9\xa5\x1f\x0e\xfb\x13\x34\x0a\x0e\xfb\x13\x34\x0a\xeb\xf7\x53\x22\x1d\xfb\x13\x34\x0a\xdf\xf7\xe3\x40\x0a"
+"\xfb\x13\x34\x0a\xdf\xf7\x93\x21\x0a\x26\x1d\xfb\x19\xf9\x86\x27\x0a\x0e\x26\x1d\x69\xf9\x61\x5d\x0a\xbb\x2c\x0a\x30\x41\x1d\xbb"
+"\x2c\x0a\xfb\x2b\xf9\x79\x37\x1d\xbb\x2c\x0a\xfb\x1f\x3a\x0a\xbb\x2c\x0a\xfb\x16\xf9\x78\x3d\x0a\xfb\x76\xba\xf9\x23\x15\xf4\x06"
+"\x56\x6c\x70\x60\x54\x1a\x63\x9c\x63\xa8\x70\x1e\x9e\x7a\x9a\x83\xac\x81\x08\x20\x6b\x5b\x52\x2b\x1a\x48\xa6\x50\xb9\x6a\x1e\xaa"
+"\x74\xad\x81\xc8\x87\xc5\x87\x18\xd5\x86\x9a\x82\x65\x1a\x6b\x80\x65\x65\x2c\x1e\xe1\x06\xaf\xeb\x97\xb7\xb8\x1a\xd0\x69\xa7\x29"
+"\x94\x1e\x52\x90\x4b\x91\x76\x90\x75\x99\x19\x6f\x9d\x78\xb3\xb4\x1a\xc1\xaa\xbb\xbc\x9f\x1e\x9a\xb0\xb4\x91\xcc\x1b\xbe\xd5\x5b"
+"\x06\xfb\x0a\x4a\xb4\xd6\xb2\xa2\xb3\xad\x9f\x1f\x9a\xa5\xab\x91\xc0\x1b\xe4\xd5\xfc\x07\x06\x0e\xfb\x42\x2b\x0a\xfb\xa7\xf7\x6d"
+"\x2b\x1d\xfb\x42\x2b\x0a\xfb\x9e\xf7\x6c\x22\x0a\xfb\x42\x3e\x1d\xfb\x38\xf7\xb6\x15\x2a\xfb\x28\x05\xc7\xb6\x1d\x0e\xfb\x42\x3e"
+"\x1d\xfb\x20\xf7\x9e\x24\x1d\xfb\x7d\xe0\xf9\x23\x15\xf7\x74\x06\x5c\x6f\x67\x6c\x61\x5d\x08\x2c\x23\x5a\xfb\x07\xfb\x09\x1a\x31"
+"\xad\x47\xc8\x6f\x1e\xa6\x7e\xaf\x83\xbc\x87\xb7\x87\x18\xca\x85\x99\x82\x66\x1a\x69\x88\x81\x5d\xfb\x0d\x1e\xe0\x06\xb7\xf7\x0b"
+"\x90\x9d\xbb\x1a\xce\x69\xa7\x2c\x95\x1e\x5d\x90\x41\x92\x85\x8d\x76\x97\x19\x6b\x9e\x79\xb8\xc7\x1a\xe7\xb5\xee\xda\xea\x1e\xbd"
+"\xc7\xbf\xb5\xda\xb8\x08\xd5\xfb\xec\x07\x0e\x74\xa2\xf8\xa0\x9a\xf7\x52\x97\x6b\x99\x06\xdc\x0a\xe8\x0b\xb6\x8e\x92\x8f\x8f\x92"
+"\x90\x90\x8e\x95\x95\x8e\x0c\x0c\xb4\x97\x91\x8f\x90\x93\x8e\x8f\x90\x90\x95\xcc\x0c\x0d\xf8\xc0\x14\xf9\x36\x15\xbe\x13\x00\x83"
+"\x02\x00\x01\x00\x05\x00\x08\x00\x14\x00\x19\x00\x1e\x00\x23\x00\x27\x00\x4d\x00\x52\x00\x81\x00\xb4\x00\xeb\x01\x16\x01\x32\x01"
+"\x3e\x01\x4b\x01\x55\x01\x5b\x01\xbd\x02\x12\x02\x52\x02\x57\x02\x6f\x02\x73\x02\x7f\x02\x87\x02\x8b\x02\x8f\x02\x9b\x02\xa7\x02"
+"\xb3\x02\xb9\x02\xcc\x02\xf3\x03\x07\x03\x1a\x03\x25\x03\x32\x03\x38\x03\x43\x03\x4c\x03\x53\x03\x5a\x03\x61\x03\x66\x03\x6c\x03"
+"\x72\x03\x77\x03\x7c\x04\x07\x04\x0c\x04\x70\x04\x9c\x04\xf7\x04\xfc\x05\x01\x05\x17\x05\x5c\x05\x92\x05\xcd\x05\xe4\x05\xe9\x06"
+"\x1e\x06\x3d\x06\x42\x06\x6f\x06\x87\x06\xb2\x06\xb5\x06\xbf\x06\xe9\x07\x13\x07\x1f\x07\x2b\x07\x35\x07\x5b\x07\x80\x07\x8e\x07"
+"\x96\x07\xa7\x07\xb8\x07\xbe\x07\xc5\x07\xdc\x07\xfb\x08\x0c\x08\x10\x08\x16\x08\x32\x08\x39\x08\x44\x08\x52\x08\x69\x08\x77\x08"
+"\x7c\x08\x93\x08\xaa\x08\xc0\x08\xd5\x08\xe8\x08\xf3\x09\x03\x09\x11\x09\x20\x09\x25\x09\x34\x09\x42\x09\x49\x09\x55\x09\x62\x09"
+"\x6f\x09\x77\x09\x83\x09\x88\x09\x94\x09\xa0\x09\xa7\x09\xad\x09\xb8\x09\xbf\x09\xc5\x09\xcf\x09\xd9\x09\xe3\x09\xeb\x09\xf4\x09"
+"\xfd\x0a\x06\x0a\x0c\x0a\x12\x0a\x17\xf8\xa0\x15\x0b\xa6\x1d\x0e\x15\xfb\x05\x06\xf7\x29\xfb\x28\x05\xc7\x06\x0e\xf8\x6e\x69\x0a"
+"\x0b\xf7\x4b\x8f\x1d\x0b\xf8\x19\x52\x0a\x0b\x15\x2a\xac\x1d\x15\x5b\x63\x64\x5b\x5a\xb2\x64\xbc\xbb\xb3\xb2\xbb\xbc\x64\xb2\x5a"
+"\x1f\x5f\x04\xa4\x9e\x78\x72\x74\x77\x77\x73\x73\x77\x9f\xa2\xa3\x9f\x9f\xa3\x1f\x0b\xf8\x17\x80\x1d\x0b\xf8\xe8\xf8\x97\x15\xbd"
+"\x88\x99\x7b\xad\x1e\xdf\x63\x36\xb7\xfb\x0f\x4a\x1d\x8c\x48\x98\x5f\xa8\x63\x08\x46\xbd\xdf\x68\xf7\x03\x1b\xe2\xd2\x9f\xaf\xba"
+"\x1f\xbc\xb2\xaa\xcc\xca\x85\x1d\x0b\xf9\x2a\xf8\x8b\x15\x93\x1d\xfb\x0c\xb0\x24\xcf\x44\x1e\x51\xc4\xd3\x70\xea\x1b\xf7\x46\xef"
+"\xeb\xf7\x55\xa1\x1f\x2b\x06\x83\x59\x81\x69\x7c\x6e\x45\x0a\xf7\x4a\xf7\x4f\xe2\xf7\x07\xf7\x22\xc6\xaa\x1d\x0b\xf8\x18\x20\x0a"
+"\xfb\x25\xfc\x2c\xfb\x1a\x48\x1d\xfc\xa2\x6b\x38\x05\x66\x7d\x79\x7d\x68\x1b\x7d\x7f\x8d\x8f\x79\x1f\x40\x07\x82\x9c\x9c\x87\xa1"
+"\x1b\xa6\xa8\x94\x9b\xa1\x1f\xa5\x9e\x9a\xa1\x9b\xb5\xf7\x7d\xf9\x0e\x18\x0b\xf8\xbe\x16\xf7\x2e\xf8\xa0\x05\x2d\x06\x23\xfc\x2c"
+"\x24\xf8\x2c\x05\x25\x06\x27\xfc\x2c\x20\xf8\x2c\x05\x2f\x06\xf7\x2c\xfc\xa0\x05\xe9\x06\xf0\xf8\x2f\xf5\xfc\x2f\x05\x0b\xf8\xd9"
+"\x20\x1d\xfc\xa1\x39\xf8\x2e\x06\xfc\x4a\xfc\xc9\x05\x39\xf8\xbf\xdd\xfc\x4a\x07\xf8\x48\xf8\xc7\x05\x0b\xb9\x1d\x3b\xeb\x05\x4b"
+"\x06\xec\xfb\x2a\x05\x0e\x64\x90\x78\x9a\x77\x08\x66\xa5\xb8\x77\xc4\x1b\x0b\xf7\x56\x20\x1d\x2d\xfd\x6d\xe9\x06\x0b\x85\x8b\x89"
+"\x7e\x1f\x0e\x15\x3f\x07\xca\x61\x5d\xa7\x49\x1b\xfb\x13\x33\xfb\x0a\xfb\x3c\x33\xa0\x4b\xb8\x56\x1f\x5d\xb2\xbd\x72\xc1\x1b\xca"
+"\xb8\xa7\xcd\xb7\x1f\x70\x07\xfb\x20\x64\x57\x23\x44\x66\xa7\xc7\x83\x1e\x36\x06\x2a\x93\xd8\x4e\xf7\x06\x1b\xd8\xcb\xa4\xb5\xad"
+"\x1f\xb3\xbc\x9a\xcc\xf7\x0f\x1a\xf8\x4a\x07\xfb\x73\x4d\x15\xe3\xbd\x41\xfb\x19\xfb\x13\x58\x41\x34\x35\x59\xd6\xf7\x15\xf7\x14"
+"\xbd\xd7\xe1\x1f\x0e\xf7\x4e\xf7\xce\x15\xf7\x84\x06\xde\xb0\x63\x31\x1f\x8a\x4a\x05\x5e\x93\x5f\x98\x6d\x1e\xf7\x05\xa2\x06\x68"
+"\xa3\x84\xa5\x89\xec\x8a\xf7\x0c\x78\xaf\x3c\xad\x08\xdd\xb4\xac\xbc\xdf\x1a\xf7\x12\x3d\xd0\xfb\x24\x1e\xfb\xe4\xfd\x6d\xe8\x06"
+"\xf8\x20\x04\xf7\x8f\xf7\x75\x07\xbf\xa9\x83\x77\xa2\x1f\xa4\x76\x98\x6a\x60\x1a\x34\x5f\x64\x28\x1e\x0b\xcc\x20\x0a\xfb\xe7\x07"
+"\x39\x96\x66\xab\x6b\x1e\x66\xaf\xc6\x77\xd2\x1b\xd4\xc6\xa0\xb1\xaf\x1f\xaa\xac\x94\xae\xdc\x1a\xf7\xe7\x37\xfb\xe7\x07\x50\x83"
+"\x72\x70\x77\x1e\x7a\x75\x6a\x81\x69\x1b\x69\x6a\x95\x9c\x74\x1f\x71\x9e\x82\xa5\xc6\x1a\xf7\xe7\x07\x0b\xf8\xa0\x58\x0a\x0b\x15"
+"\x72\x83\x80\x73\x0a\x98\x88\x81\xa4\x1f\x75\xc5\x93\x89\x9e\x1b\xbc\xa9\xae\xd0\x95\x1f\x0e\xd0\x7e\x1d\x0b\xaf\x1d\x93\x07\xc1"
+"\xb1\xbe\xd1\x1f\xf2\x07\x0e\x15\x76\x0a\xc8\x16\x76\x0a\x0e\xf9\x5f\x22\x1d\xfa\x3f\x21\x1d\x15\xeb\xf7\x2a\x05\x4a\x06\x3c\x2b"
+"\x3b\x54\x1d\x15\xfb\x04\x06\xf7\x28\xfb\x28\x05\xc8\x06\x0e\xf7\xf6\xf9\x1b\x15\xbf\x1d\xfd\x1b\xe8\x06\x0b\xbf\xb9\xe4\x92\x1f"
+"\x0b\xa6\x1d\xe7\xfb\x2b\x15\x2f\x24\xe7\x06\xfb\x42\xf2\x15\x2f\x24\xe7\x06\x0e\xf8\xbc\x20\x1d\xfc\x94\x07\x29\x44\x4f\xfb\x08"
+"\xfb\x08\x44\xc7\xed\x1e\x5a\x1d\xfb\x26\xf7\x02\x2d\xf7\x3e\xf7\x3e\xf7\x02\xe9\xf7\x26\x1e\xf8\x94\x07\x0b\x66\x49\x80\x1f\xc4"
+"\x06\xa2\x92\x97\x98\x99\xa7\x1d\xbd\xa9\xae\xd0\x95\x1f\x0e\xd8\x16\xe9\xde\x06\xf8\x0d\xb1\x1d\xfc\x0d\xfc\x40\x05\xf8\x92\x2d"
+"\x07\x0b\x1b\xa8\x9c\x7d\x74\x71\x74\x78\x6c\x71\x0b\x08\x4f\x6d\x4d\x69\x3d\x1b\xfb\x25\x2f\xf7\x08\x0b\xf7\x6a\xf7\xdf\x24\x1d"
+"\xfb\x2a\x05\xc7\x06\xf7\x29\xf7\x2a\x05\x0b\x06\xa6\xf7\x1a\x05\xf7\x03\x07\x0b\x06\xf7\x75\xfb\xed\x05\x0b\x07\xf1\x49\xd3\x2e"
+"\x49\x0b\xdf\xf8\x56\xf7\x7d\xd5\x0b\xf9\x1b\x2d\x06\x0e\xf7\xa5\x06\x55\xb7\x0b\xf7\xe0\x15\xfb\xe0\x0b\xfb\x6e\x15\xdf\x0b\x97"
+"\x85\x05\x90\x0b\xf9\x83\xf7\x33\x15\x46\x73\x89\x1d\xe0\x69\x3b\xc0\x2a\x1b\x43\x4a\x6d\x57\x67\x1f\xc2\x6c\x50\xa6\x36\x1b\x40"
+"\x4d\x75\x64\x68\x1f\x73\x9b\x0a\x92\xb1\xa8\xd8\x1b\xd8\xb4\x70\x58\x1f\x75\x07\x8a\x62\x7b\x80\x45\x84\x37\x84\x58\x81\x6a\x7d"
+"\x08\x4e\x71\x6c\x5d\x47\x1a\x2d\xcd\x4e\xf1\xd9\xca\xab\xd9\xd6\x1e\x92\x7f\x8f\x84\x90\x83\x08\x57\xae\xcd\x6c\xd8\x1b\xf7\x0a"
+"\xde\xcf\xf7\x06\xa1\x1f\xfc\x5a\x89\x15\x78\x78\x70\x6d\x74\x1e\x72\x6a\x66\x7e\x62\x1b\x4d\x65\xab\xbf\xc2\xaf\xa6\xe5\x98\x1f"
+"\xe4\x98\x9c\x8f\xa7\x97\x08\xdb\xb7\x5c\x1d\x4a\x2c\x1f\x0b\xf9\x79\x69\x1d\x0b\xa9\x9e\x15\xb2\x67\xd8\xdf\x05\x4e\xcd\xd9\x6e"
+"\xec\x1b\xf7\x66\xf7\x22\xf7\x2d\xf7\x78\xf2\x6d\xe8\x55\xcf\x1f\xe4\xec\x63\xaf\x34\x2c\x05\xc1\x4d\x3e\xa6\x30\x1b\xfb\x66\xfb"
+"\x22\xfb\x2d\xfb\x78\x2a\xa4\x36\xbe\x45\x1f\xca\xcf\x15\x6c\xc0\x7c\xc8\xd1\x1a\xf7\x47\xf3\xf7\x0c\xf7\x2f\xcc\xc5\x76\x60\xbb"
+"\x1e\xae\x62\x15\xae\x55\x9d\x48\x40\x1a\xfb\x47\x23\xfb\x0c\xfb\x2f\x44\x4e\xa4\xbc\x5a\x1e\x0b\xda\x74\x1d\xe8\xfb\xce\x15\xf7"
+"\x7c\xf7\x48\x07\xbf\xa8\x84\x78\xa4\x1f\xa5\x77\x99\x6d\x63\x1a\x63\x7d\x6d\xbb\x1d\xfb\x48\xfb\xe1\x15\xf7\x8f\xf7\x77\x07\xdd"
+"\xbc\x5c\xc1\x1d\xf8\xa5\xf8\x93\x15\x6b\xa7\x51\x4a\x05\xb8\x5e\x57\x9f\x46\x1b\xfb\x29\x33\x23\xfb\x45\x3d\x9a\x50\xac\x5a\x1f"
+"\x49\x41\xab\x6f\xc8\xd0\x05\x62\xb3\xc2\x76\xcf\x1b\xf7\x28\xe3\xf4\xf7\x44\xd7\x7d\xc3\x6d\xbd\x1f\x4e\x46\x15\x97\x6b\x91\x66"
+"\x5f\x1a\xfb\x13\x52\x3e\x2e\x61\x68\x9b\xab\x6e\x1e\x74\xb2\x15\x7d\xad\x84\xaf\xba\x1a\xa1\x0a\xb7\xb3\x78\x6a\xa5\x1e\x0b\xfc"
+"\x79\x66\x1d\x0b\xf8\x70\x67\x1d\x0b\x15\x34\xdd\x06\xae\x9e\x9d\xb2\x92\x8e\x8b\x8a\x9e\x1e\x46\x1d\xde\xf8\x5c\xe2\x07\x0b\xe4"
+"\xf7\xe7\x15\xfb\xe7\xf7\xae\x07\xf7\x4c\xf7\x04\xf7\x1e\xf7\x77\xf7\x76\xfb\x04\xf7\x1e\xfb\x4c\x1f\xfb\xae\xfb\xd7\x46\x48\x06"
+"\xf7\x36\x16\xf7\x3f\xce\xfb\x3f\xf7\x85\xf7\x41\x06\xd1\xc4\x72\x5b\xb0\x1f\xb1\x5a\x9c\x4a\x2c\x1a\xfb\x4e\x3f\x2a\xfb\x23\x1e"
+"\xfb\x41\x06\x0e\xf8\x83\x20\x1d\x38\xfb\xa3\x06\xc0\x68\x53\xa7\x45\x1b\xfb\x1c\x32\xfb\x01\xfb\x3b\xfb\x45\xe1\xfb\x01\xf7\x22"
+"\xd3\xbd\xa6\xcc\xb8\x1f\x46\xd5\x07\xfb\x7a\xf8\x61\x15\xe5\xc4\x3c\xfb\x12\xfb\x0d\x8e\x0a\xe6\x1f\x0b\x15\xfb\x79\x06\x97\xb1"
+"\x9d\x9e\xb6\xa2\xca\xab\x18\xca\xab\xac\xb7\xc0\x1a\xd5\x4f\xbf\x35\x28\x5a\x5a\x24\x88\x1e\xc9\x06\x8d\xaa\x8e\x9b\x93\x98\x08"
+"\xa3\x99\xa7\x9a\xab\x1b\xbc\xaf\x6b\x60\x6c\x77\x70\x64\x76\x1f\x51\x6c\x2b\x58\x0b\x1e\xe1\x69\x3b\x5d\x1d\xfb\x41\xfb\x41\xe5"
+"\x22\xf7\x28\xf7\x0c\xde\xcf\xf7\x06\xa0\x1f\x0b\x98\x1d\x6d\x42\x0a\xf8\x68\xf7\x6a\x15\xfb\x6a\xf8\x76\xdd\xfc\x19\xf7\x8e\xf7"
+"\xf4\xdd\xfb\xf4\xf7\x7d\xf8\x07\xdd\xfd\x02\x07\xfb\xbf\xfd\x6d\x05\xf2\x06\xe0\xf7\x6a\x05\xf7\xa1\xdd\x15\xfb\x82\x06\xf7\x1e"
+"\xf7\xf3\x05\xef\x06\x0b\xd1\x98\x0a\xf7\xb5\x07\xca\x98\xb2\xa9\xab\x1e\xa7\xa6\xae\x9a\xb0\x1b\xcc\xb5\x63\x4c\x1f\xfc\xd9\xdf"
+"\xf8\xfa\x7d\x0a\x0b\xf7\xe1\x63\x0a\x0b\xf8\x0a\x15\xf7\x8a\xf7\xf7\x05\xfb\x03\x06\xfb\x50\xfb\xb2\xfb\x4f\xf7\xb2\x05\xfb\x05"
+"\x06\xf7\x86\xfb\xf7\xfb\x96\xfc\x0a\x05\xf7\x05\x06\xf7\x5c\xf7\xc4\xf7\x5b\xfb\xc4\x05\x0b\xf7\xd3\x07\xf7\x23\xdd\xd8\xf7\x19"
+"\xd3\x73\xc2\x5c\xb0\x1f\xac\x63\x5d\x98\x41\x1b\xfb\x6f\x0b\x20\x1d\xfc\x95\x07\x51\x85\x6a\x7a\x72\x1e\x6f\x79\x69\x7a\x66\x1b"
+"\x45\x64\xba\xe0\x1f\xba\x2c\x4b\x07\xfb\x0a\xd9\x40\xf7\x11\xf7\x13\xda\xda\xf7\x12\x1e\xf8\xb7\x07\x0b\x66\x0a\x0e\x9e\x0a\x8d"
+"\xcf\x5c\x1d\x49\x2d\x1f\x0b\xf7\x40\xf7\x93\x15\xf7\x0b\xf7\x0b\xf7\x95\xfc\x0a\x05\xf7\x02\x06\xfb\xc0\xf8\x44\xf7\xbd\xf7\xbd"
+"\x05\xfb\x0c\x06\xfb\xff\xfc\x05\x05\xf8\x05\x2e\xfd\x6d\xe8\x07\x0b\xf7\xa1\x15\xf7\x46\xf7\x93\x05\x2b\x06\xfb\x14\xfb\x52\xfb"
+"\x10\xf7\x52\x05\x26\x06\xf7\x48\xfb\x93\xfb\x48\xfb\xa1\x05\xe5\x06\xf7\x1b\xf7\x5d\xf7\x14\xfb\x5d\x05\x0b\xf7\x66\x06\xe7\x59"
+"\x1d\x2f\x1f\xfb\x66\x06\x0b\xf7\x6f\x15\xd6\xfb\x6f\x05\xf3\x06\x82\x1d\x0b\x74\x0a\xf7\x61\x04\x38\x22\xde\x06\x0e\xf7\x21\xf9"
+"\x6d\x15\x38\xfd\x6d\xde\xf7\x60\x06\xdc\xdb\xf7\x45\xfb\xb0\x05\xf2\x06\xfb\x6a\xf7\xeb\xf7\x4a\xf7\x49\x05\x20\x06\xfb\x72\xfb"
+"\x72\x05\x0b\xf9\x6e\x15\xfb\x5b\xfb\x3a\xfb\x38\xfb\x57\xfb\x63\xf7\x35\xfb\x38\xf7\x5d\xf7\x61\xf7\x37\xf7\x36\xf7\x5f\xf7\x5e"
+"\xfb\x37\xf7\x37\xfb\x5e\x1f\x0b\x15\x8c\x2f\x0a\xe7\xbf\xb9\xe4\x93\x1f\x50\x8a\x0a\x0e\x97\x1d\x51\x06\x61\x86\xad\x1d\x1f\x82"
+"\x8f\x76\x63\x05\x6f\xc9\xa3\x95\x0a\xaf\xc4\xb6\x6e\xa3\x0b\xb0\x16\xdf\xf7\x8d\xf2\x06\xf7\x28\x50\x1d\x21\x56\x1d\x37\x06\x0b"
+"\x75\x0a\x6d\xa1\xb7\x0b\xb8\x1d\xdf\x06\x96\x1d\x0b\x53\x1d\x61\x84\x8d\x76\x1b\x5f\x6c\x66\x49\x80\x1f\xc5\x06\xa2\x91\x97\x98"
+"\x9a\x1b\x96\x0b\x15\xfc\xec\x07\x57\x7b\x7a\x57\x85\x88\x8b\x8c\x80\x1e\x44\x07\x89\x95\x90\x8a\x98\x1b\xe9\xbc\xb0\xd3\x1f\xf9"
+"\x0d\x07\x0b\x15\x8c\x2f\x0a\xe8\x3f\x0a\x50\x06\x61\x86\x6b\x73\x55\x1b\x52\x0b\x2b\x47\x0a\x0b\x07\xf7\x7a\x4c\x8e\x1d\x07\x93"
+"\x79\x7a\x8e\x79\x1b\x4a\x52\x55\x4e\x65\xa6\x74\xb7\xba\xb9\xa3\xb3\xa7\x1f\xa0\xa8\x93\xa9\xbc\x1a\x0b\x97\x92\x8d\x97\x44\x0a"
+"\x0b\x5d\x98\x41\x1b\xfb\x6f\x39\x15\x68\x0a\x0e\x20\x1d\x38\xfb\xe6\x06\xa0\xfb\x73\x05\xb3\xa9\x1d\x0b\x15\x23\xc7\x79\x07\x46"
+"\x7e\x77\x5c\x89\x1e\x65\x07\xcd\x89\xb2\xbb\xe0\x1a\xf7\x0c\x07\x0e\x07\xe2\x4a\xc3\x26\x3d\x59\x6d\x42\x5d\x1e\xe3\x07\x0b\xf7"
+"\x77\x82\x0a\x0b\x15\xfb\x2e\xf7\x0d\x05\x38\x07\xf7\x00\x38\xfb\x00\x38\x05\x38\x07\xf7\x2e\xf7\x0e\x05\x0b\xfb\xd8\x06\x89\x4b"
+"\x69\x57\x5b\x81\x08\x41\x07\xf4\x90\xcc\xe0\x89\xf7\x13\x08\xf7\x7d\x0b\xfb\xed\x05\xf3\x06\xfb\x90\xf8\x14\xf7\x61\xf7\xed\x05"
+"\x23\x06\xfb\x47\xfb\xc2\x05\x0b\x15\xf7\x2c\xfb\x0d\x05\xde\x07\x21\xde\xf5\xde\x05\xde\x07\xfb\x2c\xfb\x0e\x05\x0b\x15\xa9\xa4"
+"\x72\x6d\x6d\x72\x72\x6d\x6d\x72\xa4\xaa\xa8\xa5\xa4\xa8\x1f\x0b\x7d\x60\x61\x44\x1b\x2f\x54\xd6\xf7\x10\x0b\x15\xf7\x3a\xf7\x38"
+"\x07\xc0\xaa\x6d\x56\x56\x6c\x6d\x56\x1f\x0e\x4d\x0a\xbc\x73\xcf\x1b\xf7\x1c\xe3\xf7\x01\xf7\x3b\x0b\x2d\xfb\xcf\xfc\x0a\xf7\xcf"
+"\x2e\xfd\x6d\xe9\xf7\xe0\x07\x0e\xf8\xa0\x8b\x0a\x0b\xfc\x2c\xfb\x20\xf8\x2c\x05\x32\x06\xf7\x4f\xfc\xa0\x05\x0b\x06\x61\x86\x6a"
+"\x73\x56\x1b\x52\x6c\xa1\xb7\x86\x1f\x0b\x9a\x0a\x37\x22\xdf\x06\x0b\xfa\x7d\xf7\xcc\x15\xfe\x86\x43\xfa\x86\x06\x0e\x06\xfb\x5a"
+"\xf7\xc2\xf7\x61\xf7\xed\x05\x23\x06\x0b\x51\x3b\x33\x2f\x4e\xdc\xf7\x0e\xf7\x0e\xc8\xdc\x0b\x15\xfb\xa6\x45\xf7\xa6\x06\x0b\x06"
+"\x65\xfb\x67\x05\xd7\x06\xb2\xf7\x67\x05\x0b\xf9\x35\x99\x0a\x0b\xf7\x7d\xf8\x20\xdd\xfc\x7d\xfd\x6d\xe8\x06\x0b\xe0\x49\xce\x37"
+"\x1f\x4f\x04\xbe\xb3\x63\x58\x0b\x2d\xfd\x1b\xfc\x0a\x4c\x0a\x85\xb2\x1b\xd7\xba\x0b\x16\xf7\x5d\xf8\xa0\x05\x2d\x06\xfb\x28\x0b"
+"\x06\xf8\x1b\x04\xf7\x94\x0b\x20\x0a\xfc\xa0\xdf\x0b\x15\x41\x06\x55\xfb\x94\x05\xc4\x06\x0b\x15\x38\xfc\xa0\xde\x06\xf9\x6d\x04"
+"\x0b\x70\x81\x6d\x89\x57\x08\xdf\x06\xcb\x0b\x15\xfc\xec\x59\xf8\xec\x06\x0e\xfb\x79\xf7\x21\xfb\x2d\xf7\x67\x0b\x1f\x77\xa9\x84"
+"\xa9\x8a\xbf\x08\x0b\xdf\xf7\xdd\x07\xd7\xc2\xc8\xcf\x0b\xfc\x4f\x05\xfb\xb2\x0b\xf7\x13\xc4\xd8\xe8\x0b\xb6\x6e\xa3\x58\x0b", 33151
+};
diff --git a/dviware/dvisvgm/src/fonts/StandardSymbolsPS.cff.cpp b/dviware/dvisvgm/src/fonts/StandardSymbolsPS.cff.cpp
new file mode 100644
index 0000000000..ab9e256274
--- /dev/null
+++ b/dviware/dvisvgm/src/fonts/StandardSymbolsPS.cff.cpp
@@ -0,0 +1,511 @@
+#include "Base14Fonts.hpp"
+
+extern const MemoryFontData StandardSymbolsPS_cff = {
+"\x01\x00\x04\x02\x00\x01\x01\x01\x12\x53\x74\x61\x6e\x64\x61\x72\x64\x53\x79\x6d\x62\x6f\x6c\x73\x50\x53\x00\x01\x01\x01\x3b\xf8"
+"\xad\x00\xf8\xae\x01\xf8\xaf\x0c\x00\xf8\xb0\x02\xf8\xb0\x03\xf8\x18\x04\xfb\x79\x0c\x03\xb9\x0c\x04\xfb\x48\xfb\xb9\xfa\xd6\xfa"
+"\x86\x05\x1d\x00\x4c\x9e\x9b\x0d\x1c\x06\x86\x0f\x1c\x06\xf9\x10\x1c\x07\x03\x11\xbb\x1c\x3b\xbc\x12\x00\x96\x02\x00\x01\x00\x0a"
+"\x00\x15\x00\x1d\x00\x29\x00\x32\x00\x37\x00\x3b\x00\x3e\x00\x43\x00\x4a\x00\x4d\x00\x52\x00\x55\x00\x59\x00\x5f\x00\x64\x00\x6a"
+"\x00\x6c\x00\x6e\x00\x75\x00\x77\x00\x7c\x00\x7f\x00\x84\x00\x87\x00\x8e\x00\x94\x00\x99\x00\x9b\x00\x9e\x00\xa2\x00\xab\x00\xb8"
+"\x00\xc1\x00\xc6\x00\xca\x00\xcd\x00\xd2\x00\xd9\x00\xdc\x00\xe1\x00\xe4\x00\xe8\x00\xec\x00\xf1\x00\xf7\x00\xf9\x01\x00\x01\x02"
+"\x01\x07\x01\x0a\x01\x0f\x01\x12\x01\x19\x01\x1f\x01\x24\x01\x26\x01\x29\x01\x2d\x01\x34\x01\x39\x01\x3d\x01\x45\x01\x4b\x01\x54"
+"\x01\x5c\x01\x60\x01\x67\x01\x6c\x01\x71\x01\x7a\x01\x83\x01\x8a\x01\x94\x01\x9d\x01\xa3\x01\xaf\x01\xbb\x01\xc6\x01\xce\x01\xd9"
+"\x01\xe4\x01\xef\x01\xfb\x02\x09\x02\x0e\x02\x16\x02\x1e\x02\x29\x02\x37\x02\x41\x02\x49\x02\x55\x02\x5a\x02\x68\x02\x76\x02\x7f"
+"\x02\x8b\x02\x97\x02\x9e\x02\xa8\x02\xad\x02\xb5\x02\xc2\x02\xd0\x02\xde\x02\xe5\x02\xec\x02\xf3\x02\xfd\x03\x06\x03\x12\x03\x1e"
+"\x03\x28\x03\x35\x03\x41\x03\x48\x03\x51\x03\x5d\x03\x6a\x03\x77\x03\x80\x03\x8b\x03\x96\x03\xa1\x03\xae\x03\xbb\x03\xc8\x03\xd3"
+"\x03\xdf\x03\xea\x03\xf1\x03\xfb\x04\x03\x04\x0d\x04\x17\x04\x21\x04\x2d\x04\x39\x04\x45\x04\x53\x04\x61\x04\x6f\x04\x7b\x04\x88"
+"\x04\x94\x04\x98\x04\xbb\x04\xe8\x04\xfb\x75\x6e\x69\x76\x65\x72\x73\x61\x6c\x65\x78\x69\x73\x74\x65\x6e\x74\x69\x61\x6c\x73\x75"
+"\x63\x68\x74\x68\x61\x74\x61\x73\x74\x65\x72\x69\x73\x6b\x6d\x61\x74\x68\x63\x6f\x6e\x67\x72\x75\x65\x6e\x74\x41\x6c\x70\x68\x61"
+"\x42\x65\x74\x61\x43\x68\x69\x44\x65\x6c\x74\x61\x45\x70\x73\x69\x6c\x6f\x6e\x50\x68\x69\x47\x61\x6d\x6d\x61\x45\x74\x61\x49\x6f"
+"\x74\x61\x74\x68\x65\x74\x61\x31\x4b\x61\x70\x70\x61\x4c\x61\x6d\x62\x64\x61\x4d\x75\x4e\x75\x4f\x6d\x69\x63\x72\x6f\x6e\x50\x69"
+"\x54\x68\x65\x74\x61\x52\x68\x6f\x53\x69\x67\x6d\x61\x54\x61\x75\x55\x70\x73\x69\x6c\x6f\x6e\x73\x69\x67\x6d\x61\x31\x4f\x6d\x65"
+"\x67\x61\x58\x69\x50\x73\x69\x5a\x65\x74\x61\x74\x68\x65\x72\x65\x66\x6f\x72\x65\x70\x65\x72\x70\x65\x6e\x64\x69\x63\x75\x6c\x61"
+"\x72\x72\x61\x64\x69\x63\x61\x6c\x65\x78\x61\x6c\x70\x68\x61\x62\x65\x74\x61\x63\x68\x69\x64\x65\x6c\x74\x61\x65\x70\x73\x69\x6c"
+"\x6f\x6e\x70\x68\x69\x67\x61\x6d\x6d\x61\x65\x74\x61\x69\x6f\x74\x61\x70\x68\x69\x31\x6b\x61\x70\x70\x61\x6c\x61\x6d\x62\x64\x61"
+"\x6e\x75\x6f\x6d\x69\x63\x72\x6f\x6e\x70\x69\x74\x68\x65\x74\x61\x72\x68\x6f\x73\x69\x67\x6d\x61\x74\x61\x75\x75\x70\x73\x69\x6c"
+"\x6f\x6e\x6f\x6d\x65\x67\x61\x31\x6f\x6d\x65\x67\x61\x78\x69\x70\x73\x69\x7a\x65\x74\x61\x73\x69\x6d\x69\x6c\x61\x72\x61\x70\x70"
+"\x6c\x65\x45\x75\x72\x6f\x55\x70\x73\x69\x6c\x6f\x6e\x31\x6d\x69\x6e\x75\x74\x65\x6c\x65\x73\x73\x65\x71\x75\x61\x6c\x69\x6e\x66"
+"\x69\x6e\x69\x74\x79\x63\x6c\x75\x62\x64\x69\x61\x6d\x6f\x6e\x64\x68\x65\x61\x72\x74\x73\x70\x61\x64\x65\x61\x72\x72\x6f\x77\x62"
+"\x6f\x74\x68\x61\x72\x72\x6f\x77\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x75\x70\x61\x72\x72\x6f\x77\x72\x69\x67\x68\x74\x61\x72\x72"
+"\x6f\x77\x64\x6f\x77\x6e\x73\x65\x63\x6f\x6e\x64\x67\x72\x65\x61\x74\x65\x72\x65\x71\x75\x61\x6c\x70\x72\x6f\x70\x6f\x72\x74\x69"
+"\x6f\x6e\x61\x6c\x70\x61\x72\x74\x69\x61\x6c\x64\x69\x66\x66\x6e\x6f\x74\x65\x71\x75\x61\x6c\x65\x71\x75\x69\x76\x61\x6c\x65\x6e"
+"\x63\x65\x61\x70\x70\x72\x6f\x78\x65\x71\x75\x61\x6c\x61\x72\x72\x6f\x77\x76\x65\x72\x74\x65\x78\x61\x72\x72\x6f\x77\x68\x6f\x72"
+"\x69\x7a\x65\x78\x63\x61\x72\x72\x69\x61\x67\x65\x72\x65\x74\x75\x72\x6e\x61\x6c\x65\x70\x68\x49\x66\x72\x61\x6b\x74\x75\x72\x52"
+"\x66\x72\x61\x6b\x74\x75\x72\x77\x65\x69\x65\x72\x73\x74\x72\x61\x73\x73\x63\x69\x72\x63\x6c\x65\x6d\x75\x6c\x74\x69\x70\x6c\x79"
+"\x63\x69\x72\x63\x6c\x65\x70\x6c\x75\x73\x65\x6d\x70\x74\x79\x73\x65\x74\x69\x6e\x74\x65\x72\x73\x65\x63\x74\x69\x6f\x6e\x75\x6e"
+"\x69\x6f\x6e\x70\x72\x6f\x70\x65\x72\x73\x75\x70\x65\x72\x73\x65\x74\x72\x65\x66\x6c\x65\x78\x73\x75\x70\x65\x72\x73\x65\x74\x6e"
+"\x6f\x74\x73\x75\x62\x73\x65\x74\x70\x72\x6f\x70\x65\x72\x73\x75\x62\x73\x65\x74\x72\x65\x66\x6c\x65\x78\x73\x75\x62\x73\x65\x74"
+"\x65\x6c\x65\x6d\x65\x6e\x74\x6e\x6f\x74\x65\x6c\x65\x6d\x65\x6e\x74\x61\x6e\x67\x6c\x65\x67\x72\x61\x64\x69\x65\x6e\x74\x72\x65"
+"\x67\x69\x73\x74\x65\x72\x73\x65\x72\x69\x66\x63\x6f\x70\x79\x72\x69\x67\x68\x74\x73\x65\x72\x69\x66\x74\x72\x61\x64\x65\x6d\x61"
+"\x72\x6b\x73\x65\x72\x69\x66\x70\x72\x6f\x64\x75\x63\x74\x72\x61\x64\x69\x63\x61\x6c\x64\x6f\x74\x6d\x61\x74\x68\x6c\x6f\x67\x69"
+"\x63\x61\x6c\x61\x6e\x64\x6c\x6f\x67\x69\x63\x61\x6c\x6f\x72\x61\x72\x72\x6f\x77\x64\x62\x6c\x62\x6f\x74\x68\x61\x72\x72\x6f\x77"
+"\x64\x62\x6c\x6c\x65\x66\x74\x61\x72\x72\x6f\x77\x64\x62\x6c\x75\x70\x61\x72\x72\x6f\x77\x64\x62\x6c\x72\x69\x67\x68\x74\x61\x72"
+"\x72\x6f\x77\x64\x62\x6c\x64\x6f\x77\x6e\x6c\x6f\x7a\x65\x6e\x67\x65\x61\x6e\x67\x6c\x65\x6c\x65\x66\x74\x72\x65\x67\x69\x73\x74"
+"\x65\x72\x73\x61\x6e\x73\x63\x6f\x70\x79\x72\x69\x67\x68\x74\x73\x61\x6e\x73\x74\x72\x61\x64\x65\x6d\x61\x72\x6b\x73\x61\x6e\x73"
+"\x73\x75\x6d\x6d\x61\x74\x69\x6f\x6e\x70\x61\x72\x65\x6e\x6c\x65\x66\x74\x74\x70\x70\x61\x72\x65\x6e\x6c\x65\x66\x74\x65\x78\x70"
+"\x61\x72\x65\x6e\x6c\x65\x66\x74\x62\x74\x62\x72\x61\x63\x6b\x65\x74\x6c\x65\x66\x74\x74\x70\x62\x72\x61\x63\x6b\x65\x74\x6c\x65"
+"\x66\x74\x65\x78\x62\x72\x61\x63\x6b\x65\x74\x6c\x65\x66\x74\x62\x74\x62\x72\x61\x63\x65\x6c\x65\x66\x74\x74\x70\x62\x72\x61\x63"
+"\x65\x6c\x65\x66\x74\x6d\x69\x64\x62\x72\x61\x63\x65\x6c\x65\x66\x74\x62\x74\x62\x72\x61\x63\x65\x65\x78\x61\x6e\x67\x6c\x65\x72"
+"\x69\x67\x68\x74\x69\x6e\x74\x65\x67\x72\x61\x6c\x69\x6e\x74\x65\x67\x72\x61\x6c\x74\x70\x69\x6e\x74\x65\x67\x72\x61\x6c\x65\x78"
+"\x69\x6e\x74\x65\x67\x72\x61\x6c\x62\x74\x70\x61\x72\x65\x6e\x72\x69\x67\x68\x74\x74\x70\x70\x61\x72\x65\x6e\x72\x69\x67\x68\x74"
+"\x65\x78\x70\x61\x72\x65\x6e\x72\x69\x67\x68\x74\x62\x74\x62\x72\x61\x63\x6b\x65\x74\x72\x69\x67\x68\x74\x74\x70\x62\x72\x61\x63"
+"\x6b\x65\x74\x72\x69\x67\x68\x74\x65\x78\x62\x72\x61\x63\x6b\x65\x74\x72\x69\x67\x68\x74\x62\x74\x62\x72\x61\x63\x65\x72\x69\x67"
+"\x68\x74\x74\x70\x62\x72\x61\x63\x65\x72\x69\x67\x68\x74\x6d\x69\x64\x62\x72\x61\x63\x65\x72\x69\x67\x68\x74\x62\x74\x32\x2e\x30"
+"\x30\x55\x52\x57\x20\x53\x6f\x66\x74\x77\x61\x72\x65\x2c\x20\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x32\x30\x31\x35\x20\x62\x79"
+"\x20\x55\x52\x57\x43\x6f\x70\x79\x72\x69\x67\x68\x74\x20\x55\x52\x57\x20\x53\x6f\x66\x74\x77\x61\x72\x65\x2c\x20\x43\x6f\x70\x79"
+"\x72\x69\x67\x68\x74\x20\x32\x30\x31\x35\x20\x62\x79\x20\x55\x52\x57\x53\x74\x61\x6e\x64\x61\x72\x64\x20\x53\x79\x6d\x62\x6f\x6c"
+"\x73\x20\x50\x53\x00\x00\x01\x00\x01\x01\x01\x87\x00\x00\x04\x00\x01\x88\x00\x00\x06\x01\x01\x89\x00\x00\x09\x01\x01\x8a\x00\x00"
+"\x0c\x01\x00\xa6\x00\x00\x0f\x11\x01\x8b\x1a\x00\x3c\x00\x01\xa6\x00\x00\x3e\x00\x01\xa7\x00\x00\x40\x00\x01\xa8\x0c\x00\x98\x00"
+"\x01\xb5\x0c\x00\x5c\x02\x01\xc2\x05\x00\x63\x00\x01\xc8\x00\x00\x65\x00\x01\xc9\x08\x00\xa1\x00\x00\x9c\x00\x01\xd2\x01\x00\xa8"
+"\x00\x01\xd4\x01\x00\x74\x00\x00\x9f\x00\x01\xd6\x02\x00\x79\x00\x01\xd9\x1a\x00\x97\x00\x01\xf4\x24\x01\x04\x20\x5e\x80\x00\xa0"
+"\x4f\xf1\x0d\x00\xbf\x02\x00\x01\x00\x04\x00\x07\x00\x2f\x00\x58\x00\xb8\x00\xd1\x01\x86\x02\x3b\x02\x8f\x02\xd5\x03\x1a\x04\x08"
+"\x04\x0e\x04\x15\x04\x1f\x04\x28\x04\x38\x04\x7a\x04\xb6\x05\x0d\x05\x72\x05\x93\x05\xe9\x06\x4a\x06\x6f\x06\xd7\x07\x39\x07\x4e"
+"\x07\x65\x07\x82\x07\x97\x07\x9c\x07\xfc\x08\x2e\x08\x69\x08\xd0\x09\x51\x09\x6b\x09\xab\x0a\x39\x0a\x54\x0a\x71\x0a\x80\x0b\x29"
+"\x0b\x97\x0b\xc4\x0b\xf3\x0c\x38\x0c\x3f\x0c\x65\x0c\x72\x0c\xcc\x0d\x09\x0d\x43\x0d\x8e\x0e\x06\x0e\x89\x0e\xd4\x0f\x67\x0f\xa0"
+"\x0f\xc0\x0f\xd5\x0f\xf5\x10\x07\x10\x13\x10\x20\x10\x9d\x11\x1b\x11\x92\x12\x09\x12\x93\x13\x0b\x13\x74\x13\xcd\x14\x13\x14\x77"
+"\x14\xe9\x15\x59\x15\xc6\x16\x1b\x16\x5c\x16\xd1\x17\x4c\x17\xb2\x17\xfd\x18\x52\x18\xc8\x19\x47\x19\xb2\x1a\x87\x1a\xfe\x1b\x89"
+"\x1b\xe5\x1b\xf1\x1c\x4c\x1c\x7a\x1d\x1e\x1d\x9c\x1e\x03\x1e\x09\x1e\x26\x1e\x35\x1e\x92\x1f\x1a\x1f\x9c\x1f\xaf\x1f\xf8\x20\x50"
+"\x20\xa8\x20\xdc\x21\x11\x21\x45\x21\x7b\x21\xa8\x21\xb6\x21\xc1\x21\xc9\x21\xf4\x22\x54\x22\xc6\x22\xdf\x23\x14\x23\x4a\x23\x67"
+"\x23\x83\x23\x96\x23\xa2\x23\xaf\x23\xc9\x24\x75\x25\x2c\x26\x2e\x26\xed\x27\x64\x27\xc7\x28\x2f\x28\x6c\x28\xab\x29\x08\x29\x6f"
+"\x29\xb9\x29\xc0\x29\xce\x2a\x04\x2a\x70\x2a\x84\x2a\xa1\x2b\x0b\x2b\x60\x2b\xf3\x2c\x32\x2c\x4d\x2c\x66\x2c\x75\x2c\x8d\x2c\xa4"
+"\x2d\x0d\x2d\x55\x2d\xaa\x2d\xf7\x2e\x47\x2e\x71\x2e\x8c\x2f\x18\x2f\x8d\x2f\xc6\x30\x03\x30\x31\x30\x3c\x30\x68\x30\x76\x30\x82"
+"\x30\x92\x30\xb2\x30\xe9\x31\x08\x31\x16\x31\x2e\x31\x99\x31\xd8\x31\xe3\x32\x23\x32\x53\x32\x60\x32\x8f\x32\xa0\x32\xae\x32\xbf"
+"\x32\xdd\x33\x16\x33\x37\xfc\x45\x0e\xfc\x45\x0e\xfb\xf2\xf7\x41\xf7\x4e\x15\xa2\x06\xaf\xf7\xf8\x05\x92\xcb\x8b\x8b\x99\x1a\xb4"
+"\x76\xa4\x68\x67\x78\x72\x5d\x7b\x8b\x8b\x91\x53\x1e\xbe\xfc\x4f\x15\x22\x0a\x0e\xa9\xf9\x3d\x20\x0a\x56\x06\x39\xfb\x56\x05\xfc"
+"\x0e\x06\x36\xf7\x56\x05\x57\x06\xf7\xc3\xfd\x35\x05\xc4\x06\xfb\x5c\xf8\x42\x15\xf7\xe2\x06\xfb\x36\xfc\x01\x05\x0e\xfb\x4b\xf8"
+"\x5e\xf7\x95\x15\x2d\x06\x9e\xf7\x16\x05\xed\xbf\x31\x06\xa7\xf7\x54\x05\x54\x06\x6f\xfb\x54\x05\xfb\x12\x06\xa7\xf7\x54\x05\x56"
+"\x06\x6e\xfb\x54\x05\xfb\x03\x55\xf0\x06\x7a\xfb\x14\x05\xfb\x01\x57\xf0\x06\x6c\xfb\x61\x05\xc3\x06\xa8\xf7\x61\x05\xf7\x12\x06"
+"\x6d\xfb\x61\x05\xc2\x06\xa9\xf7\x61\x05\xf1\x06\xfb\x16\xf7\x4a\x15\x78\xfb\x16\x05\xfb\x11\x06\x9d\xf7\x16\x05\x0e\xf8\x72\x20"
+"\x0a\xfc\x59\x58\xf8\x22\xfb\x89\xfb\xf5\x5a\xf7\xf5\xfb\xab\xfc\x22\x5a\xf8\x59\x06\x0e\xf7\x2a\xf7\x7b\x16\xf8\x37\xf9\x35\x05"
+"\x56\x06\x60\x72\x55\x70\x4d\x1b\x6d\x76\x92\xa3\x69\x1f\xa7\x61\x7b\x92\x6c\x1b\xfb\x01\xfb\x02\xfb\x0d\xfb\x0d\x3e\xbc\x58\xd6"
+"\xf7\x01\xeb\xf7\x09\xf7\x19\x99\x8a\x93\x87\x9b\x1f\x84\x9f\xa4\x87\xa5\x1b\xae\xa7\x93\x9e\xb2\x1f\xfc\x13\xfc\xef\x05\xf7\x4a"
+"\xf8\xe7\x15\x8f\x82\x8c\x84\x75\x1a\x4b\x79\x57\x66\x5e\x1e\x65\x6b\x63\x74\x68\x1b\x65\x73\xa1\xb0\xea\xe2\xf7\x26\xc4\x90\x8e"
+"\x8b\x8a\x90\x1f\x9d\x78\x92\x86\xb0\x7c\x08\xf7\xbf\xfb\x7f\x15\xfb\x07\xfb\x03\xfb\x0d\xfb\x11\x44\xbf\x59\xd4\xbf\xb6\xa0\xb7"
+"\xb1\x1f\xbd\xc4\xaa\xd6\xcb\x1a\xca\x5e\xb6\x47\x1e\x97\x67\x15\xb3\xa8\x6b\x60\x52\x6f\x47\x61\x5d\x1f\x6d\x70\x61\x78\x67\x1b"
+"\x69\x76\xa2\xb1\xf3\xe4\xf7\x16\xd3\x1f\x0e\xea\xf8\x84\xf8\x3e\x15\x77\x07\xb9\x88\x9d\x7e\x6c\x1a\x61\x63\x3c\x58\x50\x1e\x6a"
+"\xad\x4e\xeb\x68\xd4\xaf\x9c\xa1\x97\x9e\x99\x08\xbd\xaf\xa6\xb9\xbb\x1a\xd0\x53\xbe\x3f\x36\x42\x44\x38\x5f\x98\x58\xa3\x54\x1e"
+"\x47\x66\x7d\x83\x79\x7f\x08\x47\x5a\x6b\x55\x4a\x1a\x2b\xd2\x4c\xf6\xdc\xd1\xa9\xc8\xc7\x1e\x4f\xc0\xc6\x6c\xc8\x1b\xc6\xb6\xac"
+"\xdb\xb8\x1f\x7b\x98\x05\x64\x6e\x72\x7b\x6b\x1b\x56\x5b\xa8\xca\x55\x1f\xa4\xa9\xa1\xaa\xa1\xb0\x92\x96\x9c\xa9\xa7\xbb\x95\x9b"
+"\x93\x96\x93\x94\x9c\x9d\xa2\x95\xad\x90\x08\x9f\x07\xfc\x1a\x7e\x15\x74\xb9\x7b\xc3\xb0\x1a\xc2\xa8\xae\xb8\xba\xac\x67\x59\x4e"
+"\x67\x5e\x3c\x66\x1e\x48\x41\x15\xbc\x29\xb9\x42\xbf\x4b\x08\x61\x63\x5d\x75\x5b\x1b\x42\x50\xcb\xda\xcb\xb6\xc4\xd7\xae\x1f\x0e"
+"\xfb\x88\xbb\x91\x15\x7d\xad\xa4\x86\xb0\x1b\xd2\xc8\xa3\xbb\xbf\x1f\xc1\xbe\xab\xcf\xce\x1a\xf7\x1c\xfb\x11\xf7\x0e\xfb\x20\x75"
+"\x7a\x88\x83\x6c\x1e\x66\x07\x8c\x9d\x93\x8c\x96\x1b\xc7\xc5\x76\x68\xae\x1f\xaf\x67\x9c\x66\x93\x50\x08\xfb\x6e\x5b\xf7\x6e\x06"
+"\x83\x53\x7c\x6a\x6b\x67\x08\x65\x68\x50\x73\x4f\x1b\x73\x77\x8d\x92\x6e\x1f\x0e\xfb\xf2\xf7\xc0\xfb\x2f\x15\x69\xa2\x7b\x9a\x77"
+"\xa5\x08\x55\xd3\x6c\xf7\x10\xf7\x29\x1a\xf7\x1c\xa5\xf7\x0a\xb9\xd3\x1e\xa1\xae\x9e\x9e\xb5\xa8\x7e\x9c\x18\x5d\x73\x77\x7d\x71"
+"\x73\x08\x31\x38\x57\xfb\x1a\xfb\x27\x1a\xfb\x1d\xb8\xfb\x12\xdb\x37\x1e\xaa\x6a\xa3\x7a\xc1\x6e\x08\x0e\xfb\xf2\xb6\xfb\x40\x15"
+"\xb9\xa4\x9f\x98\xa5\xa3\x08\xe5\xde\xbf\xf7\x1b\xf7\x26\x1a\xf7\x1d\x5e\xf7\x12\x3b\xe0\x1e\x6b\xab\x74\x9d\x55\xa7\x7e\x7a\x18"
+"\xae\x73\x9a\x7d\x9f\x71\x08\xc1\x43\xaa\xfb\x10\xfb\x29\x1a\xfb\x1c\x71\xfb\x0a\x5d\x43\x1e\x74\x68\x77\x77\x63\x6f\x08\x0e\xfb"
+"\x4b\xf7\x33\xf8\x31\x15\x86\x91\x87\x90\x87\x8f\x08\xa5\x74\x7f\x93\x7d\x1b\x7a\x7c\x77\x76\x73\x98\x81\xb6\x82\x1f\xce\x7c\xa5"
+"\x80\x7c\x1a\x7d\x70\x7e\x5c\x80\x1e\x67\x83\x88\x8b\x83\x88\x08\x78\x83\x82\x80\x7a\x1a\x76\x9a\x77\x9c\x9b\x92\x90\xb7\xb2\x1e"
+"\x90\x91\x05\xa8\xa5\xa0\x9a\x99\x1b\x92\x8f\x83\x7d\x7a\x87\x7a\x82\x6d\x1f\x7c\x5b\x8b\x8b\x7e\x1a\x76\x9a\x7c\xa2\xa2\x9a\x99"
+"\xa1\x98\x8a\x8e\x7c\xb8\x1e\x81\xaa\x88\x9b\x9d\x1a\x99\x8f\x92\x92\x99\xa0\x7b\x6f\xa5\x1e\x90\x85\x99\x7c\x05\x71\xa2\x97\x83"
+"\x99\x1b\x9c\x9a\x9f\xa1\x9a\x83\x96\x7a\x92\x1f\x83\x8f\x88\x8c\x64\x93\x08\x5c\x96\x71\x98\x99\x1a\x9a\xa4\x96\xce\x9a\x1e\xb5"
+"\x94\x99\x96\xa1\x1a\xa1\x7c\x9f\x7a\x7d\x7e\x82\x72\x75\x1e\x84\x83\x86\x86\x89\x89\x86\x86\x18\x6f\x72\x75\x7b\x7e\x1b\x83\x87"
+"\x92\x99\x9d\x8f\x9c\x94\xa9\x1f\x9a\xb8\x8c\x8e\x97\x1a\xa0\x7c\x9a\x74\x74\x7c\x7d\x75\x7f\x8b\x8b\x9a\x5b\x1e\x95\x6d\x8e\x7a"
+"\x79\x1a\x7e\x87\x83\x84\x7d\x75\x9b\xa7\x72\x1e\x0e\xf7\xc2\xf8\xa9\x39\x0a\xfc\x45\xc3\xfb\x0c\x2a\x0a\x96\xf7\xba\x15\x54\xf8"
+"\xa0\xc2\x07\x0e\xfc\x45\xf7\x12\xef\x15\x22\x0a\x0e\xfc\x29\xf7\x92\x20\x0a\x53\x06\xfb\x5a\xfd\x35\x05\xc3\x06\x0e\xfb\x4b\xf7"
+"\x90\xf9\x42\x15\x34\x4c\x5e\x2f\x63\x1f\x70\x4e\x7f\x48\x36\x1a\xfb\x68\xe3\xfb\x1d\xf7\x1c\xf7\x1c\xe3\xf7\x1d\xf7\x68\xf7\x66"
+"\x33\xf7\x20\xfb\x17\x1e\x89\x67\x15\xe1\xb2\x2a\xfb\x6a\xfb\x6d\x64\x2d\x33\x31\x64\xe9\xf7\x6e\xf7\x6e\xb2\xe7\xe7\x1f\x0e\xfb"
+"\x4b\xf8\x1a\xa5\x15\x37\x91\x7e\x9a\x8d\xea\x08\xf8\xa7\x79\x07\x68\x75\x5e\x73\x3b\x64\x08\x6e\x07\x98\xaa\x9e\x91\x97\x1b\x97"
+"\x96\x84\x81\x8f\x1f\x90\x7d\x8b\x8b\x8d\x4c\x08\xfb\xea\x07\x8c\x2d\x7e\x7b\x37\x85\x08\x71\xf7\xa5\x07\x0e\xfb\x4b\xa4\x16\xf8"
+"\x20\x06\xc1\xf7\x1a\x05\x72\x06\x56\x6c\x78\x83\x35\x1b\xfb\x54\x06\xf7\x61\xf7\x5b\xd3\xf7\x05\xf7\x0a\x1a\xf5\x41\xd8\x25\x57"
+"\x61\x77\x62\x69\x1e\x6f\x6a\x7f\x6c\x81\x4e\x08\x9c\x06\x96\xac\x93\x9a\x99\x9c\x08\xa8\xa3\xaf\x9c\xaf\x1b\xd1\xc8\x46\x3c\x2c"
+"\x43\xfb\x12\xfb\x12\xfb\x13\x1f\x40\x3e\x88\x89\x83\x82\x7e\x7e\x19\x0e\xfb\x4b\xf7\x50\xf7\xfd\x15\x72\x94\x07\xc0\xad\x7d\x69"
+"\xaa\x1f\xa7\x6a\x9a\x63\x5c\x1a\x3b\x5a\x54\x44\x63\x74\x93\xa9\x62\x1e\xa0\x6d\x7d\x92\x7b\x1b\x78\x7b\x7a\x77\x64\xd0\x67\xd9"
+"\xf7\x1d\xf7\x04\xf3\xf7\x15\xd6\x69\xbe\x3e\xb3\x1f\xd0\xc0\xa6\xb8\xc7\x1a\xdc\x49\xc8\x35\x35\x57\x60\x29\x69\x1e\x9a\x82\x05"
+"\xc8\xb0\xad\xa2\xc0\x1b\xca\xb8\x5c\x49\x67\x7d\x68\x70\x70\x1f\x6f\x70\x5f\x77\x6b\x1b\x0e\xfb\x4b\xf7\xb4\x16\xdd\xf7\x4b\xee"
+"\xcb\x28\xf8\x45\x58\x06\xfb\xc3\xfc\x45\x05\x4b\xf7\xa4\x07\xf8\x09\x04\xfb\xc9\xfb\x6e\x07\x0e\xfb\x4b\xf8\x22\xf8\xe8\x15\xb8"
+"\xea\x7c\x93\x7b\x77\x80\x84\x74\x8c\x19\xfb\x4e\x06\xfb\x07\xfb\x9a\xc7\x8a\xb1\x81\xb8\x73\x19\xd8\x62\xb8\x47\x41\x1a\x39\x50"
+"\x48\x43\x6d\x6b\x95\x9f\x6e\x1e\xa4\x66\x87\x8d\x7b\x1b\x78\x7c\x7b\x77\x61\xc8\x67\xd3\xf7\x19\xf7\x05\xf7\x06\xf7\x18\xd5\x6a"
+"\xd0\x4f\xbc\x1f\x64\xab\x65\x9c\x3a\xa0\xb7\xf0\x18\x0e\xfb\x4b\xf8\x45\xf9\x41\x15\x31\x5f\x81\x67\x4f\x1f\xfb\x0f\x43\x3b\xfb"
+"\x29\xfb\x2d\x1a\xfb\x33\xe7\xfb\x0b\xf7\x0f\xf7\x0b\xec\xf2\xf7\x12\xf7\x0b\x39\xdf\xfb\x07\x5f\x60\x7e\x6e\x5f\x1e\xb2\xf7\x3a"
+"\xf7\x07\xf7\x06\xf7\x20\x95\x08\xfb\xc3\xfb\xe0\x15\xa7\xbd\xa4\x93\xaf\x1b\xbe\xac\x76\x5b\xa2\x1f\x9f\x64\x96\x59\x5c\x1a\x34"
+"\x5f\x53\x47\x34\x53\xe6\xf7\x23\xaa\x8d\xa0\x8f\xa5\x1e\x0e\xfb\x4b\xf8\x54\x20\x0a\xfb\xfe\x06\x4d\xfb\x38\x05\xa9\x06\xb4\xd8"
+"\x9b\x94\xe9\x88\x08\xf7\x2f\x06\xfb\x66\xfc\xdb\xa5\x85\x8f\x8a\xa6\x82\x19\x0e\xfb\x4b\xf7\x58\xf7\xe2\x15\x25\x49\x63\x56\x44"
+"\x1a\x30\xdc\x49\xf7\x05\xf7\x03\xdc\xd2\xec\xd2\x66\xc0\xfb\x03\xe3\x1e\xe7\xbe\xb5\xc0\xc7\x1a\xe2\x3b\xcf\x26\x22\x3d\x47\x2f"
+"\x4a\xaa\x5e\xf2\x39\x1e\xa7\x77\x15\xb7\x64\x91\x86\xa0\x77\x08\xbf\x5b\xa0\x65\x61\x1a\x53\x5c\x62\x49\x3d\x5d\xbc\xde\xc5\xa7"
+"\xbb\xcc\xbe\x1e\xb5\xd5\x15\x2c\xcf\x66\xb9\xbe\x1a\xc0\xbd\xb7\xc7\xcd\xbb\x58\x46\x52\x73\x66\x47\x5b\x1e\x0e\xfb\x4b\xb9\x7f"
+"\x15\x8a\x9a\x97\x8b\x92\x1b\xe3\xe5\xb2\xcd\xd0\x1f\xdd\xdc\xbe\xf7\x0e\xf7\x07\x1a\xcb\x7a\xcc\x6c\xbe\x1e\xc8\x66\x4d\xae\x42"
+"\x1b\xfb\x0c\x32\x2a\xfb\x18\xfb\x0d\xda\x38\xf7\x06\xb5\xa7\x93\xa9\xc5\x1f\x5a\xfb\x3d\xfb\x0d\xfb\x04\xfb\x1c\x89\x08\xf7\xd0"
+"\xf7\xd7\x15\x72\x56\x6f\x83\x6a\x1b\x3f\x5d\xd9\xf7\x14\xe4\xb7\xc5\xcd\xdc\xc2\x32\xfb\x18\x69\x88\x72\x84\x63\x1f\x0e\xfc\x29"
+"\xf7\x1e\xef\x15\x22\x0a\xf7\xff\x04\x49\x0a\xa5\xaa\xa9\x72\xa5\x6d\x1f\x0e\xfc\x29\xf7\x30\xf8\x63\x15\x4f\x0a\xab\xa3\xa3\xac"
+"\xaa\x73\xa4\x6c\x1f\x42\xfc\xdb\x2a\x0a\xf8\x9f\xf8\x9e\x15\xfc\x85\xfb\x7e\x05\x54\x07\xf8\x85\xfb\x7d\x05\xc9\x07\xfc\x36\xf7"
+"\x5b\xf8\x36\xf7\x5b\x05\x0e\xf8\xad\xf8\x1b\x15\xfc\xa2\x54\xf8\xa2\x06\xfb\x1f\x04\xfc\xa2\x54\xf8\xa2\x06\x0e\xa5\xf8\x9e\x35"
+"\x0a\xfb\x83\xf7\x87\xf7\x44\x15\x8c\xc9\x9b\xb8\xb1\xba\xc8\xce\x8b\x8b\x9b\xa3\x08\xa4\xb0\x97\xb1\xb3\x1a\xe3\x44\xc9\x25\x2d"
+"\x40\x4d\x3d\x60\xa2\x6b\xab\xa3\x9e\x9d\xa2\x96\x87\x96\x82\x97\x1e\x79\xa3\x8a\x8e\x99\x1a\xb0\xb0\xa8\xbb\xc7\xaf\x5e\x3f\x5e"
+"\x84\x76\x5f\x32\x1e\x66\x40\x85\x71\x89\x27\x08\x9e\x3e\x15\x6b\x72\x72\x6c\x6c\xa4\x72\xaa\xaa\xa4\xa4\xaa\xaa\x72\xa4\x6d\x1f"
+"\x0e\xf8\xad\xf7\x89\x15\xfc\xa2\x54\xf8\xa2\x06\xfb\x1b\x04\xfc\xa2\x54\xf8\xa2\x06\x5b\xf8\x6f\x40\x0a\x43\x72\x90\x6f\x1b\x52"
+"\x5c\x70\x52\x64\x1f\xb6\x69\x05\xc0\xb8\x9b\x95\xb1\x41\x0a\xcc\xbb\x4b\x0a\xb2\xf7\xf5\x20\x0a\x7f\x06\xfb\x73\xfc\xa7\x61\x29"
+"\x84\x84\x4a\x80\x19\x71\xf7\x56\x4a\x0a\x90\x9d\x9d\xb4\x1e\xa9\xd3\x05\xf7\x87\x06\xaa\x43\x05\x9e\x5c\x8f\x7f\x7b\x3c\x0a\x08"
+"\xfb\x9d\xf7\xfb\x15\xf7\x01\xfb\x8a\x05\xfb\x6b\x06\x0e\x7b\xa8\x16\xf7\xda\x06\xc5\xb7\x93\x9d\xae\x1f\xcb\xab\xaf\xc5\xcf\x1a"
+"\xc4\x71\xb8\x57\xa9\x1e\x71\x9b\x73\x93\x59\x95\x08\xe3\x9a\xc2\xc2\xd5\x1a\xcc\x69\xc2\x4f\xab\x1e\x9e\x66\x5d\x93\x3d\x1b\xfb"
+"\xa5\x38\x0a\xf7\x55\xf7\xec\x15\xf7\x8f\x07\x98\x8b\x8b\xc9\xc1\xa2\x88\x82\xa1\x1e\xb6\x7a\xa7\x5d\x56\x1a\x37\x4e\x57\x27\x1e"
+"\x44\x65\x15\xd1\x06\xf7\x08\xc8\x58\x2c\x2b\x4f\x59\xfb\x07\x4d\x81\x8d\x99\x1f\x0e\xb2\xf8\x15\x16\xf7\xd3\xa5\x06\x3c\x90\x6c"
+"\xa1\x56\xe3\xfb\x22\xf7\x79\x18\xf7\x0c\xf7\x36\xcc\xe3\xb0\xa2\xde\x8f\x19\xa5\xfb\x8f\x71\x99\x07\xae\x9a\x81\x75\x7d\x80\x78"
+"\x64\x59\x1f\x2d\xfb\x0f\x3d\xf7\x0e\x05\x6c\xbe\x83\x9a\x99\x1a\xa2\x9e\x98\xac\x1e\xa0\xa5\xfb\xd9\x71\x06\xdd\x86\xab\x76\xc1"
+"\x32\xf7\x1c\xfb\x67\x18\xfb\x20\xfb\x48\x4a\x34\x6a\x76\x3c\x84\x19\x71\xf7\x8c\xa5\x7d\x07\x6a\x7b\x95\xa1\x99\x8b\x8b\xbe\xd0"
+"\x1f\xf0\xf7\x1e\xe6\xfb\x1d\x05\xa4\x64\x99\x6f\x7c\x1a\x75\x77\x7f\x66\x1e\x7b\x06\x0e\x44\x91\x16\xf8\xee\x06\xfb\xad\xf9\x44"
+"\x05\xfb\x8e\xfd\x11\x15\xf7\x69\xf8\x5e\xf7\x51\xfc\x5e\x05\x0e\x43\xab\x16\xf8\xa8\x06\xc0\xf7\x41\x05\x70\x06\x26\x65\x5f\x6c"
+"\xfb\x03\x1b\xfb\x16\x06\x68\x8a\x84\x94\xb6\x1a\xf7\x81\xf7\x22\x07\xe0\x8c\xa0\x78\x8e\x3c\x08\xa4\xf7\x82\x72\x06\x8a\x3c\x73"
+"\x75\x37\x8c\x08\xfb\x22\xf7\x9a\xf7\x39\x3f\x0a\xfc\x96\x34\x0a\xdb\xf7\x82\x16\xf7\xb8\xa5\x06\x42\x8c\x71\xa7\x8d\xd5\x08\xc5"
+"\xa3\x8e\x93\xb1\x1f\xf7\x08\xa6\xd4\xd6\xe9\x1a\xee\x40\xd8\xfb\x0c\xa5\x1e\x68\x92\x6b\x8e\x5c\x8c\x8a\xd1\xa6\xa6\xd2\x8c\x08"
+"\xa5\xfb\xb8\x71\x07\xd2\x8a\xa6\x70\x8a\x45\x5c\x8a\x6b\x88\x68\x84\x08\xfb\x0c\x71\x40\x3e\x28\x1a\x2d\xd4\x40\xf7\x08\x70\x1e"
+"\x83\xb1\xa3\x88\xc5\x1b\x8d\x41\x71\x6f\x42\x8a\x08\xec\xf7\x21\x15\xfb\x1b\x93\x49\xc4\xf7\x03\x1a\xc7\xa1\xb5\xbc\xaa\x1e\xae"
+"\xa1\xac\x94\xc9\x90\x08\xed\x16\xf7\x1b\x83\xcd\x52\xfb\x03\x1a\x4f\x75\x61\x5a\x6c\x1e\x68\x76\x6a\x82\x4d\x85\x08\x0e\x3b\xf7"
+"\x6d\xf9\x0c\x15\xf7\x76\x3f\x0a\xfc\xd3\x23\x0a\xf7\xc1\xa5\x81\x06\x3a\x90\x77\xa2\x8e\xe3\x08\x0e\xb2\xf7\x7c\xf8\x00\x15\xf7"
+"\x3b\x07\x2d\x0a\x21\x0a\xf7\x48\xf7\xc4\xfb\x48\x2e\x0a\xfb\xb0\x24\x0a\xfb\x3b\x07\x0e\xfb\xf2\xf7\xd0\xa5\x15\x36\x0a\xf8\x19"
+"\x07\x2d\x0a\x06\x0e\x57\xf9\x03\xf7\xde\x15\x78\x90\x81\x8e\x88\x8c\x76\x92\x7d\x91\x83\x8d\x7e\xf7\x27\x7c\xbe\x5c\xc9\x08\xba"
+"\x67\x61\xa4\x60\x1b\x4d\x5f\x5a\x47\x2d\xdb\x35\xf7\x24\x4f\x1f\x8c\x5c\x05\xfb\x32\x51\x26\x2f\x67\x6b\x9d\xa7\x7c\x1e\x81\x9f"
+"\x83\xaf\xa7\x1a\x9e\x8e\xad\x90\xb8\x1e\x96\xea\x8b\x8e\x9f\x1a\xc1\x63\xb3\x54\x65\x71\x7b\x64\x71\x1e\x7e\x78\x87\x82\x78\x59"
+"\x08\xa6\x06\xc0\xa8\x96\x97\xa0\x1b\xa5\x9e\x79\x72\x82\x8a\x7e\x89\x7d\x1f\x7d\x20\x89\x76\x66\x1a\x28\xcd\x4a\xf0\xf6\xd5\xc0"
+"\xf3\xb2\x1e\x9f\xbf\x93\xba\x8c\xc3\xa9\x7e\xa4\x80\x9f\x83\x08\xfb\x2d\xf7\x07\x15\xfb\x05\xb6\x3e\xdb\xd7\x1a\xb4\xa4\xa7\xb0"
+"\xb2\xab\x6c\x51\xa2\x1e\x9a\x66\x92\x65\x97\x23\x08\x0e\xb2\xf7\x78\xf8\xa7\x15\x88\xe0\xa0\xa6\xd1\x8f\x08\x8e\xa5\xfb\xb0\x23"
+"\x0a\xf7\xb0\x21\x0a\xf7\x23\x07\xb3\xac\xbe\x58\x99\x7b\xe4\x22\x19\xbc\x51\x99\x76\x7b\x1a\x7a\x7d\x83\x6c\x1e\x6a\x71\xf7\xcf"
+"\xa5\x06\x4f\x90\x6a\xa1\x4b\xd9\xfb\x72\xf7\x94\x18\xb6\xb6\xa2\xa4\xa3\xa4\xa3\xa5\x19\xf7\x16\xf7\x1d\x91\x8e\xe0\x8c\x08\xa5"
+"\xfb\xa3\x71\x07\xb7\x8a\x91\x8b\x95\x87\x08\x97\x87\x93\x82\x82\x1a\x73\xfb\x1d\xfb\x2a\xfb\x0e\xfb\x02\x1e\x0e\x8e\xf7\xcd\xf8"
+"\x89\x15\xf7\x2d\xfb\xfb\x05\x9f\x5c\x8e\x80\x7a\x3c\x0a\xfb\x7f\xf8\xb6\x18\xfb\x79\xfc\xb6\x62\x2c\x84\x83\x4f\x7e\x19\x71\xf7"
+"\x50\x4a\x0a\x91\x9d\x9c\xb4\x1e\x0e\xf7\x62\xf8\x3c\x8c\x15\xf7\xa2\xf8\xb0\x05\xfc\x23\x2f\x0a\xdf\xa0\xa6\xd1\x90\x08\x8e\xa5"
+"\xfb\x42\x06\xfb\x91\xfc\x8b\xfb\x89\xf8\x8b\x05\xfb\x4f\x23\x0a\xf7\x76\x21\x0a\xf8\x23\x07\x0e\xb2\xf7\x96\xa5\x15\x86\x4d\x0a"
+"\xf8\x1a\x07\xf8\x37\xfc\xa8\x05\xb8\xf8\xa7\x06\x88\xdf\x9f\xa6\xd0\x90\x08\x90\xa5\xfb\x74\x24\x0a\xfc\x07\x07\xfc\x22\xf8\x95"
+"\x05\xfb\x33\x71\x8f\x06\xd1\x87\xa0\x70\x88\x37\x08\xfc\x1a\x07\x8f\x37\x75\x6e\x45\x88\x08\x86\x71\xf7\x79\x06\x0e\xb2\xf8\x12"
+"\xf9\x42\x28\x0a\xe0\xa4\x16\xf7\xb0\x21\x0a\xf8\x0e\x07\xcd\x8d\x97\x9c\x9a\x1e\x9c\x9c\x9c\x8d\xf7\x22\x1b\xf7\x1a\x90\x87\xfb"
+"\x00\x1f\xfc\x0e\x2e\x0a\xfd\x64\x34\x0a\xc5\xf8\x8d\xf8\x5d\x2b\x0a\xfb\x0f\xf8\x5f\x28\x0a\xfb\x13\xf7\xe5\xa5\x15\x7c\x06\x37"
+"\x90\x77\xa2\x8e\xe3\x08\xf7\x41\x07\x83\xae\xb4\x87\xac\x1b\xf7\x28\xe0\xcf\xf7\x0c\xd4\x65\xc6\x47\xa8\x1f\x9d\x64\x6c\x8e\xfb"
+"\x05\x1b\xfb\x8a\x23\x0a\xf7\xc9\x06\xfb\x08\xf8\xf8\x15\x9e\x92\x8d\xd6\xac\xa1\x87\x83\x9e\x1e\xb8\x77\xa5\x5c\x4f\x1a\x59\x79"
+"\x5f\x6c\x72\x1e\x78\x74\x6d\x82\x5f\x1b\x72\x79\x8e\x94\x65\x1f\x0e\x30\xf7\x3b\xf9\x0c\x15\xf7\x3d\x06\xf7\x0a\x8a\xa9\x75\x9b"
+"\x28\x08\xa5\x06\x81\xf7\x37\x05\xfc\x82\x06\xf7\x6e\xfb\xf5\xfb\x7f\xfb\xd4\x05\xf8\xa6\x06\xc1\xf7\x48\x05\x71\x06\x6d\x3c\x69"
+"\x78\xfb\x06\x8c\x08\xfb\x9f\x06\xf7\x67\xf7\xb2\x05\x0e\x43\xf8\x73\xa5\x15\x77\x4c\x0a\xf8\x7a\xd5\x07\xe9\x8c\xae\x6e\x93\x36"
+"\x08\xa4\x06\x80\xf7\x32\x05\xfc\xbc\x06\x80\xfb\x32\x05\xa5\x06\x92\xe1\xad\xa5\xf3\x8c\x08\xcc\xfc\x7a\x06\x8e\x36\x76\x70\x45"
+"\x87\x08\x77\x71\xf7\xd2\x06\x0e\x92\xf8\x20\xf7\xb7\x15\xf7\x26\xf7\x84\xbd\xe1\xa6\xa0\xd6\x94\x19\xa5\xfb\x79\x71\x96\x07\xb3"
+"\x9a\x81\x72\x7b\x7e\x6c\x76\x69\x1f\xfb\x09\xfb\x4c\xfb\x06\xf7\x4c\x05\x6f\xb8\x81\xa1\x9b\x1a\xa0\x9e\x97\xae\x1e\x9e\xa5\xfb"
+"\xc9\x71\x06\xda\x82\xa5\x77\xbe\x34\xf7\x26\xfb\x84\x18\xfb\x29\x37\x0a\x0e\xfb\x88\xf7\xc0\xf8\x3c\x15\x83\xb5\x8b\x8b\x9d\x1b"
+"\xae\xa0\x99\xa4\xae\x5e\xa2\x47\xfb\x22\xfb\x0d\xfb\x20\xfb\x38\xfb\x0f\xd5\x2e\xec\x9c\xc9\x8d\x8d\xa4\x1f\x8c\x95\x94\x8b\x90"
+"\x1b\xae\x9d\x79\x69\x60\x6f\x69\x67\x82\x8b\x8b\x94\x72\x1f\x84\x8d\x05\x91\x78\x83\x8c\x7d\x1b\x68\x76\x7a\x6e\x69\xb0\x6e\xb7"
+"\xe5\xd6\xe0\xef\xb8\x7a\xb4\x6e\xa5\x1f\x9f\x75\x75\x92\x65\x1b\x7a\x82\x8b\x89\x6d\x1f\x89\x64\x7b\x8a\x89\x1b\x4c\x5a\xca\xdc"
+"\xf1\xd4\xe5\xde\x97\x96\x8a\x85\xa6\x1f\x0e\xe0\xf7\xda\x16\x79\xf7\x2f\x05\x3d\xb7\x59\xe4\xe9\x1a\xbf\x9a\xc6\xa5\xba\x1e\xcc"
+"\xaf\xc7\xb0\xcf\x1b\xcf\xc7\x66\x4a\xaf\x1f\xa5\x5c\x9a\x50\x57\x1a\x2d\x59\x32\x3d\x5f\x1e\x79\xfb\x2f\x05\xf7\xb8\xf7\x2d\x73"
+"\x06\x5e\x83\x77\x79\x62\x1b\xfb\x26\x06\x8e\xb1\xae\x98\xa1\x95\xa2\x9a\x19\xd8\xbc\xb8\xdc\xe1\x1a\xce\x6e\xd4\x5b\xc3\x1e\xd1"
+"\x4e\x37\xb1\x2c\x1b\x2c\x37\x65\x45\x4e\x1f\x5b\x53\x6e\x42\x48\x1a\x35\xb8\x3a\xd8\x5a\x1e\xa2\x7c\xa1\x81\xae\x7e\x8e\x65\x18"
+"\xfb\x26\x06\x62\x77\x9d\xb8\x83\x1f\x73\xfb\x2d\x06\x0e\x65\xf8\xc4\x20\x0a\xfc\x76\x06\x81\xfb\x3c\x05\xa5\x06\x97\xd3\x98\x95"
+"\xe3\x8d\x08\xf7\x75\x06\xe1\x89\x99\x81\x97\x43\x08\xa5\x06\x8c\xfb\xd9\x15\x72\x38\x75\x7f\xfb\x12\x8a\x08\xfb\x40\x06\xfb\x05"
+"\x75\x99\xdd\x72\x1f\x71\x06\xb1\xfb\x48\x05\xf8\x76\x06\xb2\xf7\x48\x05\xfb\x2d\xf7\xa9\x2b\x0a\x0e\xf7\x04\xf8\x52\xf7\xa3\x15"
+"\xdb\x8a\xc2\x94\xb5\xa0\x08\xcf\xab\xb1\xc9\xda\x1a\x8a\xdf\x05\xd5\x97\xa3\xb3\x93\x1e\xa2\x07\xfb\x08\x82\x62\x5a\x84\xfb\x1e"
+"\x86\xfb\x00\x84\x76\x60\x6e\x74\x7c\x69\x84\x51\x8c\x08\xf7\x70\x07\x8c\xe6\x9d\xa2\xd5\x8d\x08\xa5\xfb\xaf\x71\x07\xd5\x89\x9d"
+"\x74\x8c\x30\x08\xfb\x70\x07\x5a\x8a\x69\x90\x76\x95\x57\xa8\x82\xa2\x86\xf7\x05\x84\xf7\x1e\x63\xbc\xfb\x09\x94\x08\x74\x07\xb3"
+"\x82\x97\x73\x42\x1a\x8a\x37\x05\x45\xa9\x52\xc2\x68\x1e\xb8\x6f\xc7\x7e\xe8\x8c\x08\xfb\x06\x07\x27\x7b\x74\x42\x85\x1e\x78\x6f"
+"\xf7\xcd\xa7\x78\x06\x42\x91\x7b\xa2\xef\x1a\x0e\x43\xf8\xfe\x20\x0a\xfc\x8a\x06\x7a\xfb\x44\x05\xa5\x06\x97\xf7\x01\xa7\xa4\xf7"
+"\x0a\x8a\x08\xf7\x4a\x06\xfc\x39\xfd\x0a\x05\xf8\xbf\x06\xb0\xf7\x3f\x05\x71\x06\x82\x63\x7a\x6d\x6e\x71\x6b\x70\x7a\x87\x3a\x88"
+"\x08\xfb\x7a\x06\x0e\xfb\xf2\xf7\xbf\xfb\x39\x15\xad\x24\x07\x7b\x84\x91\x9c\x1f\xf9\x62\x07\xa3\x8a\x91\x90\xa1\x1b\xee\xad\xfb"
+"\x69\xfd\xda\x06\x0e\xf7\x48\xf7\x76\xf7\x04\x26\x0a\xf7\x60\xf7\xd5\x26\x0a\xf7\x66\xfb\xd5\x26\x0a\x0e\xfb\xf2\xac\xfb\x39\x15"
+"\xf7\x69\xf9\xda\xfb\x69\x69\xee\x06\xa1\x90\x86\x73\x1f\xfd\x5e\x07\x76\x84\x84\x75\x8c\x1e\x2a\x06\x0e\x72\xf7\xfd\x20\x0a\x54"
+"\xfc\xfd\xfb\xb7\x53\xf9\x11\xc3\xfb\xb7\x06\x0e\xfb\x4b\x89\xfb\x62\x15\x5d\xf8\x8c\xb9\x07\x0e\xfb\x4b\xf8\x74\xfa\x25\x15\x53"
+"\xf8\xf6\xc3\x07\x0e\x57\xf8\x84\xf8\x88\x15\x4e\xfb\x40\x05\xf7\x0d\x71\x4e\xcb\x30\x1b\x5d\x5a\x78\x6b\x66\x1f\x52\x5b\x70\x44"
+"\x28\x1a\xfb\x34\xda\x2a\xf7\x16\xe3\xcc\xb8\xe4\xb4\x1e\x90\x78\x92\x79\x96\x72\x08\x53\xa5\x9c\x7b\xab\x1b\xac\xa2\xa0\xb5\x98"
+"\x1f\x92\xa2\x8e\xa1\x8c\xc3\x08\x71\x06\x58\x89\x78\x66\x72\x1b\x6a\x6a\xc0\xd0\x7f\x1f\xf7\x05\xf7\xcf\x05\xfb\x47\xfb\x97\x15"
+"\x74\x4a\x05\x25\x68\x63\x5a\x59\x1b\x44\x62\xdd\xf7\x22\xd5\x99\xc7\xa5\xb7\x1f\xa8\x9d\xa2\x99\xaa\x1b\xd2\xb9\x52\xfb\x06\x9f"
+"\x1f\x0e\xda\x4d\x15\x88\x35\x86\x65\x81\x67\x08\xdd\x06\x96\x9d\x90\xb2\xd2\x1a\xf7\x1c\x07\x63\xc0\xb7\x7c\xc5\x1b\xf7\x0c\xdc"
+"\xe3\xf7\x15\xf6\x56\xd6\xfb\x02\xba\x1f\xd7\xb4\xaf\xb9\xc4\x1a\xe4\x32\xd5\x20\xfb\x00\x3a\x44\x2c\x1e\xdb\x95\x15\xd1\xb4\xbc"
+"\xc7\xca\xb8\x51\x3b\x55\x70\x53\x70\x87\x87\x8c\x8e\x7d\x1e\x8e\x7b\x86\x8c\x81\x1b\x73\x78\x7c\x77\x78\x9c\x7f\xa5\x92\x91\x8c"
+"\x8c\x93\x1f\x8e\x96\x97\x8c\x93\x1b\x98\x92\x89\x85\x91\x1f\xb8\x62\xa6\x3f\x38\x1a\x28\x5f\x50\x41\x58\x5a\xa2\xb2\x69\x1e\x0e"
+"\xf8\x1b\xf8\x88\x15\xfb\x15\xfb\x81\x67\xf7\x29\x05\xca\x7c\x65\xb1\x5a\x1b\x4f\x61\x48\xfb\x03\x81\x1f\xa6\x06\xc7\x92\xa8\xb2"
+"\xb1\x1b\xa4\xa4\x7b\x73\x9b\x1f\x93\x7e\x94\x74\x91\x70\xa9\xfb\x0f\x18\xfb\x6e\xfc\x23\x05\xf5\x06\xf7\x22\xf7\x9d\x9b\x33\x9a"
+"\x40\x8e\x7d\x92\x78\x19\x52\xa0\xad\x6c\xb4\x1b\xaf\xaf\xa4\xb3\xa1\x1f\x9c\xaa\x94\xb0\x8e\xbf\x08\x73\x06\x81\x69\x87\x81\x84"
+"\x80\x08\x74\x7d\x73\x7e\x71\x1b\x5c\x72\xb5\xf7\x0f\x6d\x1f\x78\xd9\xf7\x5f\xf8\x09\x05\x0e\xfb\x51\xf7\x94\xf8\x50\x15\x57\x7b"
+"\x6c\x7e\x6e\x77\x08\x49\x5e\x65\x45\x40\x1a\xfb\x0b\xea\x28\xf7\x07\xc8\xc0\xa3\xbd\xbb\x1e\xba\xbc\xa1\xc2\xce\x1a\xcc\x75\xc8"
+"\x62\xbc\x1e\x69\xb4\x74\x9d\x37\xbd\x08\x31\xc1\x64\xb0\xac\x1a\xab\xaa\xa5\xb3\xab\xa6\x7f\x71\xa4\x1e\x54\xc2\x94\x85\xa6\x1b"
+"\xa6\x9f\x9d\xa3\xc2\x34\xb7\x22\x2d\x52\x66\x4d\x66\x9b\x6f\xb7\x62\x1f\xf7\x12\xfb\x09\x15\xcf\x4c\xaa\x45\x35\x1a\x28\x5c\x49"
+"\x45\x45\x5b\xd9\xf7\x07\xf7\x00\xb8\xca\xe6\x9f\x1e\x0e\xfb\x88\xf8\x27\xf7\x11\x15\x4c\x76\x66\x72\x44\x1b\x5a\x63\x97\xa3\x70"
+"\x1f\x77\x9d\x83\x9e\xac\x1a\xc6\xad\xb1\xc0\x95\x93\x8a\x89\x95\x1e\x87\x9a\x95\x8a\x95\x1b\xa9\xa1\x99\x9e\x9a\x7f\x93\x74\x80"
+"\x8b\x8b\x88\x6e\x1f\x85\x06\x88\x70\x88\x8b\x83\x1b\x58\x6a\xae\xc1\xc7\xb5\xba\xbf\xaf\xa2\x7b\x6b\x96\x1f\x8d\x84\x05\x67\x97"
+"\x9c\x7b\xa5\x1b\xa6\xa0\xa1\xa7\xc0\x48\xb2\x2d\x4b\x5e\x7d\x6c\x64\x1f\x66\x6f\x7b\x6d\x65\x1a\x6a\x9a\x6c\xa4\x79\x1e\x99\x82"
+"\x94\x86\xaa\x7c\x08\x41\x72\x69\x62\x4f\x1a\x35\xe3\x4d\xf7\x10\xf7\x03\xc9\xb4\xe3\x9f\x1e\x0e\xfb\x36\xf7\xab\x84\x15\xf7\x10"
+"\x9c\xe2\xf7\x04\xf7\x21\x1a\xf7\x1e\x37\xec\xfb\x13\x95\x1e\xdb\x07\xbb\x8c\x93\x8d\xa2\x1e\x5c\x9e\x05\x8d\x74\x8c\x7d\x57\x1a"
+"\x32\x07\xfb\x0d\x7d\x31\xfb\x06\xfb\x1e\x1a\xfb\x1f\xe1\x25\xf7\x11\x81\x1e\x26\x07\x50\x8a\x7c\x89\x70\x1e\xba\x80\x89\xac\x8b"
+"\x8e\x8a\xb7\x19\xa6\x07\x62\xf7\x28\x15\x6f\x96\x77\x9b\x7c\xa2\x08\x6b\xbc\x78\xd7\xda\x1a\xf7\x05\xb6\xd1\xd2\x8e\x1e\xb4\x84"
+"\x15\xd2\x70\xb6\x2e\xfb\x14\x1a\xfb\x0b\x62\x48\x42\x87\x1e\x0e\xfb\xa4\xf8\x0d\xf8\x88\x15\xfb\x03\xfb\xec\x6d\xf7\x2f\x05\xf7"
+"\x2c\x6d\x6b\xbd\x48\x1b\x6d\x70\x7e\x73\x7b\x1f\x75\x6c\x86\x72\x89\x37\x08\x7e\xa1\x07\x8d\xa6\x8d\x9b\x8f\x98\x08\xac\x96\xa2"
+"\x9e\xa9\x1b\xa6\x9e\x7a\x63\x9e\x1f\xa3\x56\xa5\x30\x95\x41\x97\x38\x18\x8a\x86\x89\x86\x89\x86\x82\x6f\x81\x70\x82\x71\x08\x77"
+"\x55\x85\x6e\x68\x1a\x5b\xa0\x6d\xab\xb4\xa6\xbe\xdb\xab\x86\xb8\x7f\xd9\x1e\xf7\x5f\xf8\x45\x05\x0e\x3b\xf7\x0b\x16\xe3\xf8\x00"
+"\x06\xc2\xaf\xae\xa3\xb7\x1b\xc4\xae\x64\x4b\x1f\xfc\x4b\x07\x8c\x66\x91\x62\x98\x5e\x08\xe8\x06\x7c\xb9\x84\xa8\xa4\x1a\xf8\x7f"
+"\x07\xdf\x4f\xc7\x38\x50\x62\x70\x40\x54\x1e\x86\xa9\x86\x99\x82\x98\x08\xa2\x7a\x6e\x99\x6d\x1b\x63\x64\x72\x63\x79\x1f\x80\x73"
+"\x87\x76\x66\x1a\xa3\x06\xc9\x91\x99\xa8\xa3\x1b\xa9\xa1\x65\x54\x1f\x0e\xfb\xf6\xf7\x43\xf8\x95\x15\x62\x78\x3e\x74\x52\x80\x08"
+"\x72\x07\x8d\x9d\x97\x8c\x94\x1b\xb3\x94\x7b\x4a\x1f\xfb\x85\x07\x56\x90\x75\x9a\x77\x1e\x75\x9b\xa5\x7f\xa8\x1b\xb1\xaf\x9f\xaa"
+"\xa1\x1f\x97\x9d\x91\x9d\x93\xac\x6f\x8c\x18\x59\x81\x7d\x78\x72\x1b\x6a\x7a\xaa\xc8\x8c\x1f\x0e\x3b\xf7\x8d\xf8\x90\x15\x5d\x88"
+"\x6c\x81\x66\x72\x08\x4a\x5e\x69\x47\x34\x1a\xfb\x27\xf4\xfb\x07\xf7\x21\x84\x1e\xfb\x73\xce\xf7\x73\x07\xf7\x16\x8e\xf7\x00\xf7"
+"\x0c\xf7\x24\x1a\xf7\x16\x33\xf7\x07\x26\x3f\x5a\x4c\x2b\x88\x8b\x87\x8c\x6d\x1e\x93\xfb\xa5\x05\x34\x97\x5a\xe2\xf7\x20\x1a\xf7"
+"\x01\xad\xcd\xd0\xa6\x1e\xe3\xfb\x48\x15\xdf\x87\x9e\xba\xb1\x1b\xc1\xc2\x26\x27\xfb\x01\x4f\x3e\x31\x84\x1f\x0e\xf7\x59\xf7\xb6"
+"\x15\xf7\x73\x07\x6c\x79\x58\x7a\x39\x79\x08\x72\x07\x8d\x9c\x96\x8c\x94\x1b\xb3\x94\x7c\x49\x1f\xfb\xf9\xd9\xf7\x8e\x07\xf7\x25"
+"\xfb\x44\x05\xa2\x6f\x8b\x8a\x84\x1a\x7f\x84\x87\x6b\x89\x1e\x86\x77\xf7\x81\xa3\x82\x06\x5c\x8e\x84\x90\x4b\xda\xfb\x2f\xf7\x57"
+"\x18\xb7\xb4\x05\xcc\xd0\x9d\x98\x9e\x1b\x93\x93\x87\x82\x96\x1f\x79\xa1\x91\x89\x9c\x1b\xac\xa6\xa3\xa8\xac\x6c\xa2\x5f\x72\x76"
+"\x85\x7b\x74\x1f\x68\x75\x3c\x48\x57\x56\x78\x79\x18\x0e\xd6\xf8\xce\x15\xc4\x92\xa8\xac\xb8\x1b\xac\xa5\x72\x5e\x9a\x1f\x92\x76"
+"\x94\x6a\x94\x65\xfb\x7b\xfc\x86\x18\xe9\x06\xf7\x3e\xf7\xfa\xab\xfb\x55\x9b\x42\x9d\x64\x19\x60\xa1\xaa\x74\xb1\x1b\xcc\xaf\xc7"
+"\xf7\x01\x8d\x1f\x76\x06\x57\x83\x74\x6e\x67\x1b\x6d\x71\x9e\xae\x7b\x1f\x7e\xa5\x84\xa4\x7d\xd6\x70\xf7\x15\x18\x8d\x8a\x8d\x8a"
+"\x93\x1e\x85\xab\x8a\x90\x86\xa1\x73\xf7\x03\x7b\xc2\x75\xbd\x08\xb5\x78\x66\xa6\x63\x1b\x4e\x6b\x58\xfb\x0b\x80\x1f\x0e\x20\xf8"
+"\x4e\xf8\x88\x15\x32\x06\x8c\xfc\x05\x05\x58\x67\x69\x75\x61\x1b\x51\x69\xb4\xd1\x1f\xf7\xdf\x33\xfc\x74\x07\x76\x87\x72\x84\x6d"
+"\x1e\x7a\x4d\x8a\x86\x73\x1a\x60\xa0\x6e\xa8\xa8\x9f\xa9\xb7\xa0\x88\x99\x7b\xc4\x1e\x80\xaf\x8a\x94\xa8\x1a\x97\x07\x67\xb5\xa1"
+"\x81\xae\x1b\xbd\xbe\xaa\xc9\xc0\x1f\x93\x6b\x90\x7f\x95\x7c\x08\x76\x9a\xa6\x7e\xa9\x1b\xc8\xb6\xb7\xd8\x99\x1f\x70\x8c\x05\x65"
+"\x87\x76\x6d\x74\x1b\x6d\x77\xaf\xc1\x1f\x0e\xfb\x36\x82\xf8\x5f\x15\xc4\x8a\x8d\x89\xa3\x4f\xf7\x35\xfc\x2d\x18\xa9\x06\x9a\xb1"
+"\x94\xa2\x92\x99\xa6\xc2\x18\x94\x9e\xc6\xf7\x02\x05\xc7\xf7\x04\xa3\xc6\xaf\x1a\xac\x71\xa6\x6b\x6e\x73\x72\x6c\x84\x8b\x8b\x91"
+"\x6c\x1e\x8d\x82\x05\x92\x6a\x8d\x7e\x7d\x1a\x70\x83\x73\x73\x5f\x1e\x46\xfb\x1a\xfb\x2f\xf8\x1c\x5e\x7c\x63\x83\x5a\x89\x19\x0e"
+"\xf7\xa8\xf8\x95\x15\xfb\x1d\x23\xfb\x0a\xfb\x2e\xfb\x26\xec\xfb\x00\xf7\x16\xf7\x1a\xf4\xf7\x0d\xf7\x2f\xf7\x24\x2c\xf5\xfb\x16"
+"\x1f\x75\x66\x15\xe3\xc8\x21\xfb\x2d\xfb\x0f\x60\x45\x3f\x65\x64\xa1\xad\x75\x1f\x6b\xbc\x78\xd9\xd9\x1a\xf7\x0d\xb7\xd1\xd7\x1e"
+"\x0e\xa9\xf7\xf0\x15\xa9\xbd\x9d\x97\xbd\x8c\x08\xb9\x06\x71\xfb\x72\x87\x6f\x7e\x76\x69\x6b\x19\x6c\x6f\x82\x7c\x74\x1a\x6c\xa3"
+"\x73\xaa\xaa\xa3\xa2\xb6\x98\x1e\x94\xa5\x99\xf1\x94\xf0\x97\xf7\x15\x18\xf7\x01\x06\x7f\x3a\x82\x23\x50\x1a\xfb\x04\xb0\x47\xc9"
+"\xb2\xae\xa6\xba\xa3\x1e\x99\xa7\x8f\x9e\x8e\xbd\x08\x73\x06\x5b\x86\x78\x72\x6a\x1b\x77\x76\x99\xa0\x80\x1f\x82\x9d\x88\x9b\xac"
+"\x1a\xd9\x90\xe5\x92\xc3\x1e\xf7\x12\xe4\xfb\xf2\x06\x3a\x90\x57\x5b\x6d\xfb\x01\x08\x0e\xfb\x36\xf7\x9c\xf9\x42\x15\x64\x63\x7b"
+"\x6c\x66\x1f\x47\x54\x66\x20\xfb\x21\x1a\xfb\x17\xac\x23\xc6\x53\x1e\x65\xb3\xb8\x77\xb7\x1b\xb2\xb2\x9b\xaa\xb1\x1f\xcf\xc2\xb0"
+"\xf5\xf7\x1c\x1a\xf7\x1d\x6b\xf1\x4f\xc5\x1e\xb0\x64\x5d\xa0\x5f\x1b\xf7\x0a\xfc\x0a\x15\x89\xfb\x06\x7f\x4a\x6e\x56\x08\x6c\x79"
+"\x6b\x74\x72\x1b\x71\x6b\xa2\xaa\x7a\x1f\x6e\xc0\x7f\xcc\x89\xf7\x06\x08\xc3\x04\x8d\xf7\x01\x98\xcd\xa7\xbf\x08\xaa\x9c\xab\xa2"
+"\xa5\x1b\xa4\xab\x74\x6c\x9d\x1f\xa7\x57\x98\x49\x8d\xfb\x01\x08\x0e\xf7\x2a\xb9\x15\x65\xa5\xb4\x76\xbd\x1b\xf7\x0b\xf3\xf7\x16"
+"\xf7\x2a\xf7\x22\x30\xf3\xfb\x11\x6a\x75\x86\x7d\x73\x1f\x65\x76\x69\x6e\x71\x6b\x08\x6f\x68\x82\x69\x44\x1a\xfc\x1c\x07\x61\x89"
+"\x74\x83\x68\x1e\xe9\x06\x90\xad\x8b\x8d\x8c\xda\x08\x85\xf8\x3f\x15\x8a\xa9\x8f\xac\x92\x99\x08\xae\x9c\xa4\x9e\xa7\x1b\xe9\xdb"
+"\xfb\x00\xfb\x14\xfb\x00\x53\x42\x39\x62\x61\xa8\xb3\x78\x1f\x85\x97\x8a\x92\x8a\xaa\x08\x0e\x3b\xf8\xe0\xf8\x31\x15\xe2\xfb\x77"
+"\x07\x3c\x55\x82\x77\x5d\x1f\x2a\x5f\x54\x3d\x2e\x1a\x49\xa4\x4a\xb9\x57\x1e\x4f\xbf\xc4\x71\xda\x1b\xd0\xc4\xa0\xb4\xb9\x1f\xb8"
+"\xb4\xa6\xc4\xc1\x1a\xd7\x51\xd6\x21\xc8\x1e\x5c\x16\xe1\x32\x9e\x66\x38\x1a\x23\x59\x45\x41\x2f\x3f\xf0\xf7\x0f\xeb\xc9\xca\xe9"
+"\x1e\x0e\xfb\x88\xaf\xf7\xc9\x15\xa7\xd5\xa4\xa4\xb3\x88\x08\xd4\x06\x7c\xfb\x04\x85\x43\x4b\x1a\x21\xb0\x4b\xc9\xb3\xb3\xa8\xb4"
+"\x9b\x1e\x97\xa8\x8f\xa7\x8d\xba\x08\x72\x06\x52\x83\x7d\x77\x6c\x1b\x5f\x69\xb5\xc1\x9b\x8d\xab\x8e\xad\x1f\x8c\x98\x8d\xa7\x8d"
+"\xaa\x8e\xb3\x8b\x93\x8e\xa2\x08\xf7\x38\xea\xfb\x77\x06\x32\x90\x4b\x47\x6f\xfb\x14\x08\x0e\x20\x92\xf8\x00\x15\xa9\x06\xb7\x98"
+"\xa1\xa3\xa7\x1b\xa8\x93\x76\x44\x8c\x1f\x8e\xfb\x36\x8c\x46\xa3\x51\xb3\x6b\x19\x75\xa6\xad\x81\xb7\x1b\xcd\xc5\xa3\xb6\xb0\x1f"
+"\xb2\xba\xa3\xd5\xd5\x1a\xd2\x75\xcb\x64\xb9\x1e\x6b\xb0\x6b\x9f\x48\xa5\x83\x72\x18\xb3\x75\x9d\x7d\x9b\x74\x08\xa7\x65\x9b\x50"
+"\x4a\x1a\x4f\x7e\x4e\x73\x59\x1e\x5f\x76\x6c\x74\x64\x1b\x52\x62\xc7\xe1\x8a\x1f\x88\xf7\x44\x05\xf7\x08\x8a\x70\xb9\x4b\x1b\x6a"
+"\x71\x7e\x70\x78\x1f\x7a\x74\x85\x7e\x79\x51\x08\x0e\xa9\xf9\x33\xf8\x81\x15\xe5\xfc\x88\x07\x4b\x91\x48\x4e\x6f\x34\x08\x9c\x06"
+"\xb9\xb2\xb0\x97\xd3\x8c\x08\x2a\x70\x4d\x24\xfb\x19\x1a\xfb\x1e\x3d\x0a\xf7\x1e\xf7\x1a\x4c\xf3\x29\xa4\x1f\x2c\x16\xb0\x80\xa1"
+"\x7f\xa1\x76\x08\xb6\x63\xa5\x3b\x30\x44\x0a\x70\x1b\x6b\x6c\xa1\xac\x7c\x1f\x82\x9e\x88\x9a\x85\xac\x08\xa3\xcf\x91\xa9\xbd\x1a"
+"\xd0\x77\xb5\x69\x69\x77\x61\x46\x59\x91\x6d\xa3\x47\x1e\x85\x6a\x88\x7c\x82\x78\x08\x6a\x7c\x6c\x75\x6b\x1b\x70\x45\x0a\xde\xa2"
+"\xd9\xb0\xb4\x1e\xa2\xa5\xa4\x9a\xb5\x97\x08\x0e\x8e\xf8\x40\xf8\x7b\x15\xb0\x81\xa1\x7f\xa1\x77\x08\xb6\x63\xa5\x3d\x32\x44\x0a"
+"\x71\x1b\x58\x6b\xb4\xdc\x7d\x1f\xa3\xcf\x91\xa9\xbd\x1a\xd0\x77\xb5\x69\x69\x77\x61\x46\x59\x91\x6d\xa3\x47\x1e\x3a\x7d\x6b\x62"
+"\x58\x1b\x71\x45\x0a\xdc\xa2\xd7\xb0\xb4\x1e\xa2\xa4\xa4\x99\xb5\x97\x08\xa5\x07\x55\x8a\x68\x85\x6c\x7e\x08\x38\x67\x56\x25\xfb"
+"\x10\x1a\xfb\x1f\x3d\x0a\xf7\x1f\xf7\x0a\x5a\xee\x3f\xb3\x1f\x6a\x9c\x65\x92\x4f\x8c\x08\x0e\xfb\x52\xf7\x41\xf9\x90\x15\x8c\x82"
+"\x83\x8c\x86\x1b\x5d\x64\x68\x61\x66\xa0\x75\xbc\x7d\x1f\x72\x73\x7f\x6e\x69\x1a\x64\x9a\x6d\xb1\x65\x1e\x6a\x72\x7a\x7c\x7a\x77"
+"\x08\x67\x61\x75\x4d\x51\x1a\x3c\xb3\x42\xc8\x6e\x1e\x7b\xab\xb2\x85\xc8\x1b\x9c\x8f\x8b\x8c\xa2\x1f\x96\x06\xab\x8d\x05\xb3\x8d"
+"\xa9\x6e\x64\x1a\x65\x70\x6f\x66\x84\x80\x8c\x90\x70\x1e\x8e\x74\x83\x8c\x81\x1b\x72\x7a\x7b\x71\x69\xad\x73\xbc\xbb\xaf\x9e\xb7"
+"\xab\x1f\xa8\xb1\x9b\xb9\xb9\x1a\xb8\x7b\xad\x6a\xa3\x1e\x9d\x74\x75\x90\x5d\x1b\x35\x06\x5f\x6a\x8f\x93\x79\x1f\x60\x9e\x6e\xba"
+"\xc0\x1a\xd1\xb6\xc9\xde\xba\x1e\x81\xa8\x9e\x88\xab\x1b\xda\xbb\xa0\xae\xa2\x71\x98\x5f\x63\x69\x81\x6a\x43\x1f\x61\xaa\x7d\xa0"
+"\xab\x1a\xab\x9e\xa8\xb0\xa7\x1e\xbd\x8d\xad\x91\xa6\x99\x08\xae\x9c\xa0\xa4\xa2\x1a\x9e\x7b\x96\x6f\x66\x61\x74\x52\x4b\x1e\x6c"
+"\x8c\x75\x9d\xa6\x1a\xa1\x9c\x9a\xaf\x95\x1e\x0e\x8e\xf8\x19\xf8\x88\x15\x4a\xfc\x60\x06\x49\x9a\x70\xb3\x84\xe8\x79\xf7\x3d\x18"
+"\x86\xbd\x86\x9e\x7b\xa5\x08\xb0\x74\x62\xa3\x63\x1b\x79\x7c\x88\x81\x6c\x1f\x78\x07\xcc\x80\x95\x80\x94\x44\x99\xfb\x37\x18\x95"
+"\xfb\x0a\xe2\x2e\xf7\x09\x7a\x08\xfb\x6f\xcc\xf7\x6f\x07\xf7\x09\x9c\xe2\xe8\x95\xf7\x0a\x99\xf7\x37\x18\x8d\x98\x8f\xc0\x9c\x9c"
+"\xc8\x95\x19\x9e\x07\x95\x6c\x7c\x8e\x79\x1b\x67\x64\x77\x6b\x74\x1f\x78\x70\x83\x74\x86\x55\x79\xfb\x3d\x18\x84\x2e\x70\x63\x49"
+"\x7c\x08\x0e\xfb\x51\xf7\x6b\xf9\x88\x15\x47\x86\x5e\x65\x56\x1a\x64\xa2\x78\xce\x7b\x1e\x2c\xfb\x12\x66\x27\xfb\x16\x1a\x29\xa1"
+"\x54\xc5\x5e\x1e\x71\xad\xac\x7f\xb5\x1b\x94\x8c\x8b\x8d\xac\x1f\x96\x06\x8d\xa8\x92\x8b\x95\x1b\xba\xa8\x73\x64\x64\x6c\x69\x68"
+"\x83\x84\x8c\x91\x76\x1f\x94\x6a\x82\x8d\x80\x1b\x6b\x73\x77\x70\x6b\xaf\x74\xbe\xec\xd0\xd4\xf4\xe8\x4e\xbd\xfb\x06\x83\x73\x8b"
+"\x8a\x80\x1f\x78\x06\x43\x5b\xc9\xe8\xf7\x0c\xc7\xf7\x1e\xdf\xd6\x1f\xed\x96\xdd\xbe\xbe\x1a\x9e\x7b\x98\x75\x67\x55\x68\x3a\x30"
+"\x1e\x67\x96\x7a\x9e\xa8\x1a\xa6\x9d\xa0\xae\x99\x1e\x0e\xfb\x5f\xf7\x9f\xf8\xc0\x15\x88\xca\xab\xa2\xef\x92\x08\xa3\x07\xfb\x33"
+"\x8f\x54\x6e\x88\x30\x08\xfb\x46\x07\x8e\x56\x6b\x73\x2f\x7e\x08\x73\x07\xb8\x85\x9a\x87\xa5\x7f\xa7\x7d\x91\x80\x8c\x60\x08\xfb"
+"\x69\x07\x8d\x25\xbd\x6e\xf7\x3a\x8f\x08\xa3\x07\x6e\x8c\x6b\x90\x75\x94\x64\x9b\x84\x97\x8a\xbd\x08\xf7\x69\x07\x89\xd0\x6b\xa7"
+"\x2e\x9a\xe6\x9a\xae\xa9\x8c\xc9\x08\x0e\xfc\x77\xcc\x20\x0a\xfd\xe6\xd1\xf9\xe6\x07\x0e\xfb\x5f\xf7\x65\x5b\x15\x8a\x5a\x84\x7f"
+"\x68\x7c\x76\x81\x68\x85\x6c\x8a\x08\x73\x07\xf7\x3a\x87\xbd\xa8\x8d\xf1\x08\xf7\x69\x07\x8c\xb6\x91\x96\xa7\x99\xa4\x97\x9b\x8f"
+"\xb8\x91\x08\xa3\x07\x2f\x98\x6b\xa3\x8e\xc0\x08\xf7\x46\x07\x87\xe6\x55\xa8\xfb\x33\x87\x08\x73\x07\xef\x84\xab\x74\x88\x4c\x08"
+"\xfb\x40\x07\x4d\xaf\x6d\xe5\x7c\x1e\x2f\x7c\x6b\x6f\x89\x46\x08\x0e\xf8\x7d\xf7\xd9\x46\x0a\xa1\x46\x1f\xa2\x42\x73\x90\x6f\x1b"
+"\x52\x5c\x6f\x52\x64\x1f\xb6\x6a\x05\xc0\xb8\x9b\x95\xb1\x1b\xa1\x8b\x8b\x70\xe5\x1f\x72\xdb\x8e\x8a\xaa\x1b\xcc\xbb\x4b\x0a\xf6"
+"\xf9\x71\xf7\x69\x15\x5c\xa1\x79\x9a\x77\xaa\x08\x79\xa8\x80\xb0\xac\x1a\xa8\x93\xad\x98\xa3\x1e\x99\xa5\x9c\x9c\xb4\xab\x08\xc5"
+"\x56\x60\x9f\x42\x1b\x6e\x7c\x88\x7f\x6e\x1f\x7e\x6f\x7b\x87\x79\x1b\x7b\x7d\x8f\x96\x71\x1f\x99\x6a\x7e\x8e\x69\x1b\xfb\x11\x30"
+"\x28\xfb\x1d\xfb\x06\xb9\xfb\x0e\xd9\x2f\x1f\x64\xac\xae\x76\xac\x1b\x9d\x95\x8d\x98\xa9\x1f\x99\xad\xa0\x90\x9e\x1b\x9a\x98\x87"
+"\x7b\xb0\x1f\x81\xa0\x9a\x88\x9f\x1b\xb0\xa0\x95\xab\xab\x1f\xb9\xb9\x8d\x8e\xc8\xf7\x11\x08\xfb\x3b\xf8\xe7\x15\x51\x7b\x70\x7c"
+"\x74\x70\x08\x6d\x6a\x74\x57\x6b\x1a\x8a\x8b\x8b\x8c\x7b\x1e\xc4\x93\xa6\x95\xa6\xa6\x08\xa9\xa9\x9f\xb8\xb4\x1a\x8e\x8b\x90\x8a"
+"\x93\x1e\x0e\xce\xba\xf7\xfd\x15\xe8\x06\x8a\x7e\x8b\x85\x83\x1a\x84\x8b\x84\x8c\x7d\x1e\x46\x06\x74\x52\x05\xf1\x06\xfb\x2b\xb5"
+"\xf7\x17\x25\xf7\x2e\x1b\xd9\xd0\xa4\xc0\xcf\x1f\xdb\x07\x4a\x53\x3f\x67\x37\x1b\xfb\x0e\xfb\x04\xdd\xf7\x06\x6a\x1f\xf8\x09\x06"
+"\xa2\xc4\x05\xfc\x2c\x06\x8a\x98\x8b\x92\x93\x1a\x94\x8b\x90\x8c\x98\x1e\xf8\x43\x06\xa3\xc4\x05\x40\x06\xfc\x04\x06\xf7\x08\xaf"
+"\xf7\x01\xdb\xf7\x0e\x1b\xe0\xd4\x68\x49\xc5\x1f\xa3\xc4\x05\xcf\x45\x3c\xac\x31\x1b\xfb\x2e\xfb\x18\x25\xfb\x2b\x62\x1f\x3c\x06"
+"\x0e\x4c\x95\xf9\x17\x15\x8e\xa1\x95\x8c\x9a\x1b\xd9\xc4\x5e\x39\xa2\x1f\x9c\x51\x95\x3e\x40\x1a\xfb\x3c\x07\x8e\x37\x76\x6f\x45"
+"\x87\x08\x86\x71\xf7\xb3\xa5\x86\x4c\x0a\xf7\x40\x07\xf7\x46\xb8\xf7\x10\xcc\x99\x90\x87\x76\x9c\x1e\x6f\xa2\x99\x83\xa3\x1b\xb0"
+"\xa2\xa2\xb0\xb7\x69\xa7\x54\x41\x4c\x60\x40\x69\x1f\x74\x58\x85\x6c\x7d\xfb\x08\x89\xda\x85\xc4\x80\xb4\x08\xdf\x74\x37\xc1\x20"
+"\x1b\x70\x79\x89\x82\x6c\x1f\x0e\xfc\x48\xa6\x31\x0a\x0e\x47\x0a\xf9\x13\x04\xfc\x85\xfb\x7e\x05\x54\x07\xf8\x85\xfb\x7d\x05\xc9"
+"\x07\xfc\x36\xf7\x5b\xf8\x36\xf7\x5b\x05\x0e\xfc\x98\xfb\x48\x16\xbc\x06\xf8\x6b\xf9\x35\x05\x59\x06\x0e\xa9\xf7\xf9\xf7\x77\x15"
+"\x44\xc5\xd1\x62\xca\x1b\xde\xc4\xc8\xe5\xe3\x50\xc7\x35\x48\x4b\x65\x42\x54\x1f\xd3\x52\x49\xb2\x4c\x1b\x36\x4f\x4c\x33\x34\xc5"
+"\x4e\xde\xc4\xc4\xa6\xbd\xb9\x1f\xcb\xd3\x15\xc8\xb6\xc6\xb0\xc0\x1b\xc1\xb1\x62\x52\x50\x68\x65\x55\x55\x69\xa0\xd7\x45\x1f\x48"
+"\x8d\x15\x4c\x5a\x50\x67\x56\x1b\x57\x68\xb3\xc6\xc4\xb0\xb2\xc1\xbe\xb3\x72\x44\xcd\x1f\x0e\xfb\x4b\xf7\x08\xf8\x3a\x15\x81\x6b"
+"\x05\xf7\x00\x06\x7f\x33\x82\x35\x81\x23\x7e\xfb\x28\x82\x5a\x76\x69\x08\x79\x7f\x7a\x80\x79\x1b\x80\x84\x8f\x92\x8e\x8c\x8f\x8d"
+"\x8d\x1f\x95\x9c\x8d\x90\x97\x1a\x9f\x7b\x9a\x75\x6e\x76\x77\x6e\x65\xad\x6f\xbb\xca\xbc\xba\xe5\xa9\x1e\xac\xeb\x9b\xe2\xa5\xf7"
+"\x76\x8d\x9d\x18\xf7\x0b\x06\x95\xab\x05\xfb\x11\x06\x9d\xf7\x20\x8f\xa3\x97\xa7\x08\xaa\x98\x9e\x9b\xa2\x1b\x98\x92\x86\x83\x87"
+"\x8b\x8b\x84\x7f\x1f\x88\x84\x89\x85\x84\x1a\x75\x9c\x7c\xa3\xa7\xa0\xa0\xa7\xaf\x66\xa6\x58\x2a\x53\x3a\xfb\x4c\x69\x1e\x0e\xd1"
+"\xf8\x4b\x71\x15\x6c\xb9\x84\xa1\xbf\x1a\xa7\x8f\x9b\x93\x92\x90\x87\x70\xa6\x1e\x67\xaf\xa7\x7d\xb3\x1b\xcb\xb3\xb9\xd4\xdb\x5e"
+"\xc2\x4b\x72\x6f\x82\x79\x6f\x1f\x78\x6d\x88\x8a\x80\x1b\x81\x86\x90\x95\x96\x8f\x8f\xa8\x9f\x1f\xb5\xa9\xa2\xb2\xb5\x1a\xce\x4f"
+"\xbf\x3f\x3f\x4f\x57\x48\x61\xa2\x64\xb5\x6d\x1e\xa8\x77\x8f\x87\x80\x1a\x81\x86\x86\x81\x80\x88\x8c\x9e\x6d\x1e\x9d\x6f\x6f\x94"
+"\x72\x1b\x4b\x5e\x54\x3b\x42\xb4\x5d\xcb\xb2\xa8\x99\xaf\xaf\x1f\xa6\xa5\x90\x8f\x93\x1b\x93\x8f\x7b\x6f\x57\x84\x75\x6b\x5d\x1f"
+"\x0e\xd1\xf8\x0a\x67\x15\xf7\x76\xf7\xb9\xfb\x76\xf7\xb9\xfb\x7c\xfb\xb9\x05\x0e\xd1\xf8\x0a\x6a\x15\xc1\xd7\x99\x9f\x96\x9a\xae"
+"\xb8\x19\xc9\xdb\x8b\x8b\x95\x98\x08\xc0\xd3\x9d\xb7\xc8\x1a\xdb\x5d\xc2\x47\x4f\x66\x6c\x43\x70\x1e\x77\x84\x88\x87\x82\x1b\x82"
+"\x88\x8f\x9f\x84\x1f\xd3\x70\x66\xaa\x4f\x1b\x47\x5d\x54\x3b\x48\xa0\x5d\xd1\x32\x1f\xd5\x2b\x90\x85\xac\x5d\x08\x0e\xd1\xf8\x48"
+"\x67\x15\x6d\xb6\x84\xa2\xc4\x1a\xa1\x8f\x97\x93\x8d\x8f\x88\x87\x8e\x1e\x9e\x6d\x8b\x8a\x94\x82\x08\x78\x9c\xa4\x81\xa7\x1b\xca"
+"\xbb\xbf\xce\xbb\x76\xbd\x58\xd2\x1f\xfb\x4e\xf7\x96\xfb\x4e\xfb\x96\x05\x58\x44\x76\x59\x5b\x1a\x48\xbb\x57\xcb\xb1\xa7\x9c\xad"
+"\xa0\x1e\xa2\x99\x8c\x8d\x91\x1b\x92\x8c\x8f\x7e\x75\x1a\x52\x84\x75\x6c\x5f\x1e\x0e\xf7\xfb\xfa\x1d\xf7\xa8\x15\xfd\x8e\x06\x93"
+"\x94\xc5\xc9\xd1\xdd\xad\xb8\x19\x65\xb1\x25\xfb\x0c\x4b\x48\x36\x3e\x19\xdf\x3f\xcc\x46\xf1\xfb\x0b\xb1\xb1\x18\x68\xb8\x46\xdd"
+"\x51\xc9\x83\x94\x18\xf9\x8e\x06\x83\x82\x51\x4d\x46\x3a\x68\x5d\x19\xb1\x65\xf1\xf7\x0b\xcc\xd0\xdf\xd7\x19\x36\xd8\x4b\xce\x25"
+"\xf7\x0c\x65\x65\x18\xad\x5e\xd1\x39\xc5\x4d\x08\x0e\xf7\xc4\xf7\x2c\xf7\x70\x15\xf9\xaa\xc3\xfd\xaa\x06\x93\x94\xc2\xc6\xd4\xe0"
+"\xac\xb7\x19\x65\xb1\x28\xfb\x08\x34\x2f\x4a\x54\x19\xcb\x54\xe3\x2f\xee\xfb\x08\xb1\xb1\x18\x6c\xb4\x45\xdd\x57\xc4\x83\x93\x18"
+"\x0e\x3b\xde\xf9\x01\x15\xb3\xa9\xdf\xd3\xc3\xbe\x93\x93\x18\x94\x93\x05\xfd\xaa\xc3\xf9\xaa\x07\x94\x83\x93\x83\xc3\x58\xdf\x43"
+"\xb3\x6d\x19\xb1\xb1\xfb\x05\xeb\x2a\xe8\x56\xc9\x19\x56\x4d\x2a\x2e\xfb\x05\x2b\x08\x0e\xf7\xc4\xf9\xdb\xf7\x70\x15\x83\x82\x83"
+"\x83\x57\x52\x45\x39\x6c\x62\x19\xb1\x65\xee\xf7\x08\xe3\xe7\xcb\xc2\x19\x4b\xc2\x33\xe7\x28\xf7\x08\x65\x65\x18\xac\x5f\xd5\x35"
+"\xc1\x51\x93\x82\x18\xfd\xaa\x53\x06\x0e\x3b\xf8\xa9\xf7\x9f\x15\x63\x6d\x37\x43\x53\x58\x83\x83\x18\x82\x83\x05\xf9\xaa\x53\xfd"
+"\xaa\x07\x82\x93\x83\x93\x53\xbe\x37\xd3\x63\xa9\x19\x65\x65\xf7\x05\x2b\xec\x2e\xc0\x4d\x19\xc0\xc9\xec\xe8\xf7\x05\xeb\x08\x0e"
+"\xfb\xaf\xf7\x5f\xf9\x42\x15\x35\x48\x48\x36\x35\xcd\x47\xdf\xdf\xcd\xce\xe1\xe1\x4b\xce\x38\x1f\x8a\x52\x15\xbd\xb4\x60\x56\x55"
+"\x62\x61\x57\x57\x61\xb6\xbf\xc2\xb5\xb5\xc1\x1f\x0e\x96\xc2\x15\x54\xf8\xa0\xc2\x07\xfb\x7d\xf8\xf3\x39\x0a\xfb\xa4\x9f\x31\x0a"
+"\xe5\xfb\x66\x33\x0a\x0e\x47\x0a\xfc\x85\xf9\x13\x35\x0a\xf7\x80\xf7\x9f\x15\xfb\x6f\xfb\x70\xb2\x65\xf7\x6f\xf7\x6f\xf7\x6f\xfb"
+"\x6f\xb2\xb1\xfb\x6f\xf7\x70\xf7\x6f\xf7\x6f\x64\xb2\xfb\x6f\xfb\x70\xfb\x6f\xf7\x70\x64\x64\x05\x0e\xa9\xf9\x13\xf8\x31\x15\xfb"
+"\x10\x8e\x5f\x77\x35\x2c\x81\x98\x85\x93\x7c\x9a\x08\xc0\x53\x5b\xa2\x4f\x1b\x2d\x46\x4c\x34\x35\xd0\x4c\xe9\xc7\xbb\xa1\xc1\xc3"
+"\x1f\x9a\x9a\x91\x93\x95\x99\x08\x37\xd3\xc3\x6e\xe7\x1b\xad\x06\x82\xbf\x3d\x88\x46\xab\x4a\xd0\x19\xcc\xcf\xd1\xab\xd8\x88\x08"
+"\xfb\xab\x2a\x15\x46\x50\x5b\x6e\x53\x1b\x4b\x5c\xb4\xc3\xc4\xba\xb4\xcb\xc3\xbd\x6e\x47\xc4\x1f\x0e\xfb\x51\xf6\xf9\x36\x15\xa2"
+"\xb8\xab\x94\xae\x1b\xf1\xc5\x2c\xfb\x38\x6e\x89\x73\x86\x5b\x1f\xbd\x4b\x67\x9b\x58\x1b\x5a\x62\x79\x64\x67\x1f\x5f\x5d\x72\x4c"
+"\x4d\x1a\xfb\x00\xde\x35\xf3\xd0\xc6\xab\xc9\xb5\x1e\xb9\xcf\xac\xf7\x1a\xf7\x09\x1a\xf7\x08\x69\xe7\x47\xd1\x1e\xbc\x5b\x56\xa2"
+"\x4b\x1b\x63\x6a\x84\x76\x53\x1f\xf7\xc0\xfc\x31\x15\x7b\xfb\x03\x81\x60\x71\x58\x08\x56\x71\x60\x6a\x5f\x1b\x54\x6a\xbf\xe1\xf7"
+"\x06\xce\xe9\xdc\xb1\xa4\x7e\x61\xb5\x1f\x0e\xfb\x73\xf7\x7d\xf8\x9a\x15\x25\x3a\x3b\x27\x25\xdb\x3a\xef\xf0\xda\xdb\xf1\xef\x3c"
+"\xdc\x29\x1f\x0e\xf7\xa5\xf7\x12\x15\x69\x6f\x70\x68\x69\xa6\x6f\xae\xac\xa7\xa7\xad\xad\x6f\xa7\x6a\x1f\xf8\x23\x04\x69\x6f\x70"
+"\x68\x69\xa6\x6f\xae\xac\xa7\xa7\xad\xad\x6f\xa7\x6a\x1f\xfb\x9b\xfb\x7b\x15\x54\xf8\xa2\xc2\x07\x0e\xf7\x4f\xf7\x22\x15\x43\xfb"
+"\x23\xb9\x73\xe0\xf7\x3b\x05\xf7\xba\xc2\xfb\x9f\x06\xd2\xf7\x1f\x05\xf7\x58\xc2\xfb\x3d\x06\xcf\xf7\x1a\x5c\xa3\x3b\xfb\x32\x05"
+"\xfb\xbd\x54\xf7\xa2\x06\x45\xfb\x1f\x05\xfb\x5c\x54\x06\x0e\xf8\xae\xf7\xba\x15\xfc\xa0\x54\xf8\xa0\x06\x2a\x04\xfc\xa0\x54\xf8"
+"\xa0\x06\xf7\xfb\x04\xfc\xa0\x54\xf8\xa0\x06\x0e\xf8\x7d\xf7\x8f\x3a\x0a\x6f\x53\x32\x0a\xa7\xc4\xaa\x1f\x65\xf7\x53\x3a\x0a\x70"
+"\x52\x32\x0a\xa8\xc4\xaa\x1f\x0e\xf7\xd1\xf7\x3c\xef\x15\x22\x0a\xf7\xe1\x16\x22\x0a\xf7\xe1\x16\x22\x0a\x0e\x3b\xf7\xe4\xfa\x86"
+"\x15\x53\xfe\xfe\xc3\x06\x0e\xf7\xd1\x4f\xf7\x70\x15\xfa\xea\xc3\xfe\xea\x06\x0e\x72\xf8\xee\xcf\x15\xf8\xc5\x54\xfc\x8d\xfb\xfe"
+"\xdf\x07\xfb\x3e\xfb\x04\xf7\x3e\xfb\x04\x05\xdf\x07\x0e\xf7\x20\xf8\x6c\xf7\xd3\x15\xfb\xac\xf7\xf7\x05\x7f\x74\x86\x75\x73\x1a"
+"\x76\x92\x7b\xa3\x6e\x1e\xd7\x2c\x4d\xfb\x07\x05\x76\x64\x81\x6f\x76\x1a\x75\x95\x72\xa2\x66\x1e\xa7\x5d\x8b\x8a\x7e\x1a\x78\x7d"
+"\x80\x72\x1e\x78\x48\xe5\x06\xb8\xa9\x8f\x92\x99\x1f\x9f\x96\x96\xa4\xad\x1a\xb7\x81\x9f\x50\xdc\x1e\x65\xbd\x7e\xa9\xab\x1a\xa0"
+"\x8f\x97\xa0\xb2\x1e\xf7\xda\xfc\x2e\x05\x97\xa2\x90\x9f\xa0\x1a\xa3\x82\x9d\x6f\xaf\x1e\x61\xc0\x05\x64\xbd\x7f\xa4\xad\x1a\x9e"
+"\x92\xa8\x94\xa2\x1e\xbb\xf7\x08\x05\xa3\x06\xa3\x96\x81\x6f\x90\x1f\x94\xac\x8f\xa8\xaa\x1a\xc4\x79\xa1\x5b\x1e\x41\x06\x60\x7d"
+"\x97\xaf\x1f\x9b\x07\x6b\x6a\x7c\x67\x5f\x1a\x6d\x94\x71\x99\x7d\x1e\x80\x97\x9a\x87\xad\x1b\xb7\x06\x0e\x8e\x95\xc9\x15\x9d\x78"
+"\xa6\x97\x05\x90\x98\x98\x8e\x94\x1b\x97\x93\x88\x7f\xa2\x1f\xf7\x36\x32\x05\x83\x9c\x98\x86\x95\x1b\x9e\xac\x9c\xb3\xc4\x1f\xbb"
+"\xae\x05\xc4\xb3\xa8\xbb\xc3\x1a\xa3\x87\x9e\x80\x9e\x1e\x35\xf7\x35\x05\x77\xaf\x81\xa9\xa0\x1a\x9b\x93\x9c\x9c\x9e\x1e\xe7\xf6"
+"\x05\xcb\xfb\x0f\x47\xa0\x3b\x1b\xfb\x1d\x28\x34\xfb\x0b\x4e\xa8\x52\xbb\x6c\x1f\xa9\x77\xab\x83\xc6\x88\x8d\xa5\x18\x5f\x8e\x74"
+"\x91\x74\x98\x08\x60\xa4\x71\xb9\xbe\x1a\xd5\xcb\xbf\xe5\xc5\xb5\x7f\x59\xf7\x07\x1e\x4a\x3f\x05\x76\x72\x82\x74\x6e\x1a\x72\x92"
+"\x73\x9a\x70\x1e\xde\xfb\x2c\x05\x9a\x6f\x93\x72\x73\x1a\x70\x81\x75\x78\x7b\x1e\x7a\x76\x68\x7f\x6f\x1b\x7b\x80\x8e\x98\x74\x1f"
+"\xfb\x27\xd9\x05\x94\x7b\x80\x8e\x7f\x1b\x7e\x7f\x87\x81\x7c\x1f\x0e\xf7\x04\xd4\xac\x15\x9e\x7b\x05\x99\xa2\x96\x8f\x98\x1b\x9a"
+"\x9a\x83\x77\xa4\x1f\x92\x85\x94\x84\x98\x81\xc0\xa9\xc4\xbe\xba\xc5\x08\xb6\xc4\x98\xb9\xec\x1a\x8c\xd2\x05\xb7\x84\xd4\x7f\xdc"
+"\x1e\xcc\xb5\x05\x94\x99\x95\x8e\x95\x1b\x9b\x97\x85\x79\x9f\x1f\xdf\x3f\xfb\x54\xfb\x19\x98\x75\x05\x94\x06\x9c\x98\x83\x7b\x94"
+"\x1f\x97\x75\x99\x52\x93\x4b\x9e\xfb\x44\x97\x6d\xcd\x6b\xf7\x02\xe3\x18\x7a\xa2\x05\x83\x77\x82\x88\x82\x1b\x78\x82\x99\xaa\x87"
+"\x1f\x6f\xf7\x53\x77\xc9\x56\xd0\xf7\x49\xf7\x15\x18\xfb\x2f\xf7\x1a\x05\x95\x7e\x84\x8f\x83\x1b\x81\x84\x88\x7d\x78\x1f\xfb\x13"
+"\x2f\x05\xd8\x65\x5b\xaa\x39\x1b\xfb\x0e\x31\x37\xfb\x07\x69\x94\x6b\x9c\x72\x1f\x99\x74\x9a\x80\xb0\x79\xbb\x73\x18\xa7\x7d\x96"
+"\x81\x7f\x1a\x82\x86\x84\x7d\x80\x1e\xa4\x78\xaf\xc1\x05\x92\x96\x8f\x95\x96\x1a\xa1\x7c\x9e\x6e\x99\x1e\x55\xa7\x5e\xa1\x7a\x96"
+"\x81\x95\x19\x7b\x9c\x82\xa1\xa3\x1a\xc9\xc4\xbe\xd2\xc2\xb7\x6f\x5b\xa1\x1e\x9a\x69\x98\x33\x40\x1a\x8c\x51\x87\xfb\x25\x7d\x53"
+"\x5b\x43\x19\x42\xbe\x05\x91\x83\x85\x8d\x87\x1b\x86\x86\x88\x84\x82\x1f\x0e\xf7\xc4\xf8\x6b\xf8\xd2\x15\x2c\x4b\x67\x6e\x66\x5e"
+"\x08\x55\x4a\x70\x4b\x4d\x1a\x64\x92\x72\xa5\x51\x1e\x66\x5c\x7d\x77\x7f\x75\x08\x76\x64\x7f\x60\x65\x1a\x6c\x96\x6d\x9e\x73\x1e"
+"\x6f\xa1\xa6\x7f\xb1\x1b\xd4\xb9\xcc\xf2\xc5\x7e\xba\x5a\xf7\x08\x1f\xf7\x59\xf7\x2d\xf5\xe0\xe7\x1b\xc4\xab\x66\x49\x4c\x6f\x38"
+"\x5c\x43\x1f\x3d\x58\x53\x64\x4e\x1b\x6a\x70\xa6\xae\x93\x8d\x98\x8e\x99\x1f\x9a\x8a\x05\xa7\xa2\xa0\xa5\xa2\x7b\x9b\x75\x66\x6e"
+"\x5f\x54\x43\xb9\x5d\xd2\xd9\xe4\xc1\xde\xc5\x1f\xca\xe5\xa7\xd1\xd2\x1a\xe3\x4f\xc1\x28\x3a\x45\x68\x35\x2f\x1e\x66\x69\x6e\x6a"
+"\x3a\x25\x08\x83\xa9\x87\xa4\xa7\x1a\xef\xbd\xda\xf7\x0d\xe4\x1e\xfb\x67\xfc\x61\x15\xba\x30\x9d\x56\x5c\x1a\x72\x83\x73\x7f\x7c"
+"\x1e\x80\x82\x80\x87\x77\x1b\x5d\x71\xaf\xcc\xc4\x9c\xb7\xbd\xcf\x1f\x0e\xe0\xf7\x61\xf8\x7e\x15\xf7\x24\xfb\x21\xfb\x24\xfb\x24"
+"\xb2\x65\xf7\x24\xf7\x24\xf7\x21\xfb\x24\xb1\xb1\xfb\x21\xf7\x24\xf7\x21\xf7\x21\x65\xb2\xfb\x21\xfb\x21\xfb\x24\xf7\x21\x05\xf7"
+"\x27\xf7\x36\x15\xfb\x54\xfb\x30\xfb\x2f\xfb\x53\xfb\x51\xf7\x30\xfb\x30\xf7\x50\xf7\x51\xf7\x31\xf7\x30\xf7\x50\xf7\x50\xfb\x30"
+"\xf7\x33\xfb\x4e\x1f\x51\x04\xf7\x31\xf7\x16\xfb\x16\xfb\x31\xfb\x33\xfb\x16\xfb\x15\xfb\x34\xfb\x33\xfb\x16\xf7\x14\xf7\x32\xf7"
+"\x36\xf7\x15\xf7\x13\xf7\x37\x1f\x0e\xe0\xf7\xfc\xf8\xde\x15\xfb\x6a\xfb\x64\x54\xf7\x64\xfb\x6a\xc3\xf7\x6a\xf7\x64\xc2\xfb\x64"
+"\xf7\x6a\x07\x73\xf2\x15\xfb\x58\xfb\x2d\xfb\x2c\xfb\x56\xfb\x52\xf7\x2e\xfb\x2d\xf7\x54\xf7\x53\xf7\x2d\xf7\x2d\xf7\x54\xf7\x51"
+"\xfb\x2e\xf7\x2f\xfb\x4f\x1f\x8c\x56\x15\xf7\x2f\xf7\x15\xfb\x19\xfb\x34\xfb\x33\xfb\x16\xfb\x17\xfb\x33\xfb\x33\xfb\x16\xf7\x17"
+"\xf7\x35\xf7\x37\xf7\x16\xf7\x14\xf7\x38\x1f\x0e\xf7\x20\xb2\x98\x15\xb0\x66\xef\xef\x05\x52\xce\xe0\x6b\xe3\x1b\xf7\x5e\xf7\x37"
+"\xf7\x37\xf7\x5e\xe4\x6d\xdb\x50\xd2\x1f\xe4\xe4\x66\xb0\x31\x31\x05\xc6\x46\x3a\xa9\x33\x1b\xfb\x5e\xfb\x37\xfb\x37\xfb\x5e\x33"
+"\xab\x36\xc4\x4a\x1f\xb2\xb2\x15\x5b\xc6\x72\xce\xd4\x1a\xf7\x3f\xf7\x1f\xf7\x1e\xf7\x3f\xd4\xd2\x71\x5d\xc2\x1e\xb0\x66\x15\xba"
+"\x55\xa6\x43\x41\x1a\xfb\x3f\xfb\x1f\xfb\x1e\xfb\x3f\x42\x43\xa5\xba\x54\x1e\x0e\xe0\xf9\x70\x16\xf7\x44\x07\x8a\xe4\x79\xc7\x5f"
+"\xc2\x08\xdd\x4a\x27\xb8\xfb\x0a\x1b\xfb\x5d\xfb\x25\xfb\x17\xfb\x4a\x1f\xfb\x56\xc4\x07\x8c\xf7\x5f\x05\xf7\x20\xf7\x11\xf6\xf7"
+"\x37\xe5\xdf\x69\x51\xc0\x1e\xb9\x5a\x9b\x5d\x3c\x1a\xfb\x4c\x07\x0e\xe0\xb3\xf8\x7d\x15\xfb\x44\x07\x8c\x32\x9d\x4f\xb7\x54\x08"
+"\x39\xcc\xef\x5e\xf7\x0a\x1b\xf7\x5d\xf7\x24\xf7\x17\xf7\x4a\x8c\x1f\xf7\x56\x52\xfb\x5f\x07\xfb\x20\x8a\xfb\x11\x20\xfb\x37\x1b"
+"\x31\x37\xad\xc5\x56\x1f\x5d\xbc\x7b\xba\xd9\x1a\xf7\x4c\x07\x0e\xa9\x9f\x16\xf7\xc6\x06\xd0\xab\x8b\x8d\x9c\x1f\xbf\x8e\xb2\x96"
+"\xa8\x9d\x08\xce\xb7\xb5\xd7\xdc\x1a\xbc\x7c\xbb\x6f\xb3\x1e\x67\xbe\x5d\xa9\x4f\x95\x08\x91\x69\x78\x8c\xfb\x01\x1b\xfb\xc6\x53"
+"\xf7\xc8\x06\xc6\xaa\x8b\x8a\x9a\x1f\xba\x87\xaf\x82\xa2\x7d\x08\xbd\x6b\xa9\x52\x4d\x1a\x63\x7f\x65\x74\x6d\x1e\x71\x66\x6a\x78"
+"\x5a\x82\x08\x86\x6a\x79\x8a\x2a\x1b\xfb\xc8\x06\x0e\xa9\x9f\x46\x15\x53\xf9\x1c\xc3\x07\xfd\x1c\xd0\x15\xf7\xc6\x06\xd0\xab\x8b"
+"\x8d\x9c\x1f\xbf\x8e\xb2\x96\xa8\x9d\x08\xce\xb7\xb5\xd7\xdc\x1a\xbc\x7c\xbb\x6f\xb3\x1e\x67\xbe\x5d\xa9\x4f\x95\x08\x91\x69\x78"
+"\x8c\xfb\x01\x1b\xfb\xc6\x53\xf7\xc8\x06\xc6\xaa\x8b\x8a\x9a\x1f\xba\x87\xaf\x82\xa2\x7d\x08\xbd\x6b\xa9\x52\x4d\x1a\x63\x7f\x65"
+"\x74\x6d\x1e\x71\x66\x6a\x78\x5a\x82\x08\x86\x6a\x79\x8a\x2a\x1b\xfb\xc8\x06\x0e\xa9\xf8\xae\xf8\x6a\x15\xab\xd1\x05\x59\x06\x6b"
+"\x45\x05\x23\x06\x46\x6b\x4e\x0a\x6d\x50\x0a\x40\xae\x45\xc6\x5e\x1e\xb0\x6f\xb2\x7f\xcf\x87\x6a\x44\x18\xbd\x06\xab\xd1\x05\xf8"
+"\x03\xc3\xfb\xe9\x06\xf7\x38\xf7\xfa\x05\xf7\x45\xc3\x06\xfc\x1b\xfc\x31\x15\x52\x8c\x60\x94\x6f\x9c\x30\x0a\xdc\x06\x0e\xa9\xf9"
+"\x46\xf8\x6a\x27\x0a\xa9\xb0\x46\x15\x53\xf9\x1c\xc3\x07\x90\xf8\xaf\x27\x0a\xa9\xf0\xf7\x9b\x15\x91\xb2\x9c\xae\xa6\xa5\xb9\xb7"
+"\xb3\x93\xf7\x2d\x8a\x08\xf7\x07\xc3\xfb\x05\x06\x47\x6a\x2c\x0a\xf7\x05\xc3\xfb\x07\x06\xfb\x2d\x8a\x63\x93\x5d\xb7\x70\xa5\x7a"
+"\xae\x85\xb2\x08\xf8\x28\xc3\x06\x0e\xa9\xf8\x13\xf8\x32\x15\xf7\x0e\xc3\x2d\x06\xaa\xc8\x5c\xa3\x60\x36\x20\x8a\x7d\x8a\x5f\x7b"
+"\x19\x39\x6d\x4f\x2f\x2c\x1a\x40\xac\x48\xc7\x5c\x1e\x63\x3b\xb9\x73\xb2\xd9\x05\x79\xc2\xa0\x89\xf7\x19\x1b\xf7\x05\xc3\xfb\x07"
+"\x06\xfb\x08\x78\x8c\x99\x5d\x1f\xd0\xf7\x1c\x05\xf7\x77\xc3\xfb\x5b\x06\x9d\xf7\x2b\x15\x3f\xfb\x2b\x05\xfb\x27\x06\x9f\xf3\xcf"
+"\xbb\xf7\x12\x8a\x08\xfb\x2b\xfb\xd2\x15\x69\xa6\x75\xb1\x84\xb9\x08\xf7\x0b\x06\x0e\xe0\xa5\x16\xf9\x37\x8a\x8d\xc5\x05\xfc\xaa"
+"\x06\xf8\xcd\xf8\xd3\x5e\xb3\x05\x0e\xa9\xf9\x3d\xf9\x43\x15\xfd\x19\x06\xf7\xc3\xfd\x43\x05\xf7\xa3\xf9\x10\x15\xfb\x7e\xfc\x5e"
+"\xfb\x67\xf8\x5f\x05\x0e\xf6\xf8\x8b\xf7\x32\x15\xee\x9d\x06\x71\x8d\x80\x92\x72\xa8\x21\xf7\x13\x18\xcc\x95\xb1\xaf\xc0\x1a\xb4"
+"\x76\xaa\x65\x9c\x1e\x96\x72\x71\x8f\x54\x1b\xfb\x32\x79\x06\xb9\x88\x92\x84\x66\x1a\xfb\x93\x07\x65\x84\x84\x5d\x88\x1e\x79\xf7"
+"\x43\x9d\x07\x5d\x8e\x84\x92\xb1\x1a\xf7\x01\xa6\x07\x70\xf7\x33\x15\xa0\x8d\x8c\xad\xca\xa8\x74\x57\x53\x6b\x75\x3b\x87\x86\x8b"
+"\x8c\x84\x1e\xc5\xf7\xdc\x29\x0a\xf7\x17\xf7\x1d\xf7\x36\x1f\x0e\xf6\xf8\xc2\xf8\x27\x15\x86\xf7\x1c\x05\x77\x06\x78\x82\x89\x89"
+"\x80\x1b\x86\x85\x8c\x8f\x82\x1f\x96\x6c\x73\x90\x6d\x1b\xfb\x0d\x36\x37\xfb\x0c\xfb\x0a\xdd\x3c\xf7\x0e\xcc\xbc\xa2\xbf\xbb\x1f"
+"\x7c\x9c\x05\x5f\x5b\x68\x7c\x56\x1b\x35\x56\xcb\xf3\xf4\xbe\xcb\xdf\xcc\xb6\x67\x46\x9c\x1f\xfb\x21\xf7\xb3\x29\x0a\xf7\x18\xf7"
+"\x1d\xf7\x35\x1f\x0e\xf7\x63\xf9\xeb\x20\x0a\xfb\x1a\x06\xfb\x0a\xfb\xb7\xfb\x0b\xf7\xb7\x05\xfb\x0c\x75\x06\xb3\x8c\x8b\x7a\x1f"
+"\xfb\xc3\x07\x68\x8a\x85\x86\x61\x1b\x75\xf7\x1b\xa1\x07\x68\x7e\x95\xa8\x8c\x1f\xf7\xa1\x07\xf7\x18\xfb\xde\x05\xa1\x06\xf7\x1f"
+"\xf7\xee\x05\xfb\xb6\x07\x70\x89\x81\x84\x63\x1b\x75\xf7\x3e\xa1\x07\x62\x8d\x84\x90\x8a\xa6\x08\xf7\xc9\x07\x8a\x98\x94\x90\xa4"
+"\x8a\x08\x9b\x06\xfc\x94\xa1\x15\xfb\xd9\xfb\x02\x9f\x06\x90\xc8\x99\x95\xdd\x8e\x08\x91\xfb\xce\x06\x6f\x8a\x84\x87\x54\x1b\x75"
+"\xf7\x55\xa1\x07\x53\x85\x8e\xa6\x8c\x1f\xf7\xd0\x8d\x07\xe2\x8a\x9b\x80\x8c\x4d\x08\xa2\x06\x0e\xf7\x20\xa4\xfb\x10\x15\xf7\xb6"
+"\x21\x0a\xf8\xd4\x07\xc9\x8f\xa0\x99\x98\x1e\x9c\x9d\x97\x8c\xf7\x21\x1b\xf7\x23\x97\x8a\x7a\x9d\x1f\x99\x7e\x8f\x76\x4d\x1a\xfc"
+"\xd4\x25\x0a\x71\xf7\xb6\x21\x0a\xf8\xe3\x07\x3e\x0a\xfd\x9e\x24\x0a\xfc\xe3\x25\x0a\x06\x0e\xf7\xff\x68\x15\xf7\x2c\xfa\x43\x68"
+"\x90\xfb\x13\xfd\xaa\xfb\x59\xf8\x21\xfb\x26\x44\x9b\x68\xea\xba\x05\x0e\xfc\x45\xf7\x0c\xf7\xcb\x15\x6f\x74\x74\x6f\x6f\xa1\x74"
+"\xa7\xa7\xa1\xa2\xa7\xa7\x75\xa2\x70\x1f\x0e\xa9\x9a\xf8\x03\x15\x4f\xf8\xf2\xfb\x9f\xc6\xf7\xdb\x07\x0e\x3b\xf7\xc4\xf8\x70\x15"
+"\xfb\xad\xfc\x53\xb9\x6d\xf7\x7e\xf8\x07\xf7\x7e\xfc\x06\xb9\xab\x05\x0e\x3b\xf7\xc3\x8a\x15\xf7\xa7\xf8\x53\x5d\xa9\xfb\x78\xfc"
+"\x06\xfb\x78\xf8\x05\x5d\x6b\x05\x0e\xf7\xfb\xf7\x85\xf8\x0b\x15\x9d\x9f\x98\x9b\x96\x99\x9e\xa4\x97\x9a\x90\x92\x60\xad\x18\x44"
+"\x30\x27\x22\x3d\x49\xdb\x47\xec\x24\x43\x0a\xf8\xcc\x06\x79\x77\x7f\x7c\x7f\x7c\x78\x72\x7f\x7b\x86\x85\xb6\x69\x18\xd3\xe7\xec"
+"\xf2\xdb\xcf\x3d\xcd\x27\xf4\x44\xe6\x48\x0a\xfc\xfc\x54\x15\xf9\x2c\x06\xb4\x61\xa3\x74\x99\x80\x7b\x7d\x79\x7a\x5e\x5d\x08\xfd"
+"\x2c\x06\x5e\xb8\x78\x9e\x7c\x98\x9a\x97\x92\x92\x9d\x9d\xab\xaa\x18\x0e\xf7\xc4\xfa\x3f\xf7\xd4\x15\xc2\xfd\x4b\x07\x9d\x9f\x98"
+"\x9b\x96\x99\x9e\xa4\x97\x9a\x90\x92\x60\xad\x18\x50\x3d\xfb\x07\xfb\x0d\x40\x4c\xda\x48\xed\x23\x43\x0a\xf9\x4b\xc2\xfd\x7a\x06"
+"\x88\x8d\x89\x8e\x89\x8d\x80\x96\x80\x96\x80\x95\x7a\x9c\x83\x93\x7c\x98\x9c\x9a\x95\x94\xc0\xc0\x08\x0e\x3b\xf8\x10\xf9\x7a\x15"
+"\xfd\x7a\xc2\xf9\x4b\x07\x9f\x7a\x9a\x7e\x9a\x7f\xae\x70\x18\x98\x81\xad\xb6\x3e\xc5\xfb\x10\xf7\x0a\x4c\xd5\x19\x48\x3c\x22\x28"
+"\x2f\x43\xad\x60\x18\xb9\xaf\xab\xa5\x9f\x9c\x08\xfd\x4b\xc2\xf9\x7a\x07\x8d\x8e\x8d\x8d\x8e\x8d\x98\x98\x18\x91\x92\x92\x91\x92"
+"\x92\x9c\x9c\x92\x93\x98\x9a\x9c\x78\x8b\x8a\xc1\x55\x08\x0e\xf7\xc4\xb8\xf7\x3b\x15\x54\xf9\x4b\x07\x79\x77\x7f\x7c\x7f\x7c\x78"
+"\x72\x7f\x7b\x86\x85\xb6\x69\x18\xd3\xe8\xe8\xec\xdf\xd4\x38\xd2\x2c\xee\x44\xe7\x48\x0a\xfd\x4b\x54\x06\xf9\x7a\x8c\x92\x84\xac"
+"\x6a\x9c\x7a\x93\x83\x9a\x7f\x19\x7b\x7d\x82\x82\x7c\x7c\x80\x7f\x80\x81\x81\x80\x89\x8a\x89\x88\x87\x88\x08\x0e\x3b\xf7\x7b\xf7"
+"\x3b\x15\xf9\x7a\x54\xfd\x4b\x07\x77\x9c\x7c\x98\x7c\x97\x68\xa6\x18\x86\x8f\x88\x8e\x86\x8e\x69\x60\x18\xda\x50\xf7\x0e\xfb\x08"
+"\xca\x40\xcd\xd9\xf7\x01\xf2\xe4\xd0\x69\xb6\x18\x5d\x67\x6b\x71\x77\x7a\x08\xf9\x4b\x54\xfd\x7a\x07\x84\x84\x6a\x6a\x7a\x7a\x84"
+"\x83\x7e\x7c\x19\x7a\x9e\x8b\x8c\x55\xc1\x08\x0e\xfb\x51\xf7\x65\x16\xc7\x8a\xf7\x59\xf8\x0b\xfb\x51\xf8\x02\x05\x4c\x06\xfb\x58"
+"\xfb\xff\x05\xf7\x72\xfb\xd3\x15\xfb\x33\xf7\xd2\xf7\x38\xf7\xc7\xf7\x31\xfb\xca\x05\x0e\xfb\xf6\xf7\x92\xf9\x89\x15\xfb\x79\xfc"
+"\x5a\xf7\x79\xfc\x5b\xbf\xa4\xfb\x6b\xf8\x42\xf7\x6b\xf8\x42\x05\x0e\xf6\xf7\x8d\xf8\xa3\x15\xfc\x1a\xbe\xf7\x3c\xe2\x07\xdf\x8a"
+"\x9d\x7c\x8f\x3e\x8d\x58\x8d\x7d\x91\x81\x08\xbd\x06\x85\x97\x89\x97\x89\xb2\x89\xdf\x7f\xa2\x59\x9d\x08\xb8\x9e\xa2\xab\xb7\x1a"
+"\xb1\x7a\xaa\x6b\x9e\x1e\x99\x76\x71\x90\x61\x1b\xfb\x01\x62\x15\xed\x06\xce\xab\x74\x5c\x5a\x69\x74\x43\x1f\x30\x06\xef\xf7\xe3"
+"\x15\xfb\x58\xfb\x2e\x42\x0a\xf7\x53\xf7\x2e\xf7\x2f\xf7\x52\xf7\x51\xfb\x2e\xf7\x31\xfb\x4e\x1f\x8a\x65\x15\xf7\x37\xf7\x1c\xfb"
+"\x20\xfb\x3c\xfb\x3d\xfb\x1c\xfb\x1e\xfb\x3b\xfb\x3b\xfb\x1c\xf7\x1e\xf7\x3d\xf7\x40\xf7\x1b\xf7\x1c\xf7\x40\x1f\x0e\xf6\xf8\xa3"
+"\xf7\xbc\x15\x3e\x81\x5c\x5f\x42\x1b\x37\x53\xca\xec\xeb\xc3\xcc\xe0\xcc\xba\x68\x50\x97\x1f\xbc\x06\xda\x84\x43\xc5\x2f\x1b\xfb"
+"\x07\x3c\x38\xfb\x0d\xfb\x0d\xd8\x39\xf7\x06\xf0\xd2\xcc\xee\x93\x1f\xfb\x46\xf8\x13\x15\xfb\x57\xfb\x2f\x42\x0a\xf7\x52\xf7\x2f"
+"\xf7\x2f\xf7\x52\xf7\x51\xfb\x2e\xf7\x31\xfb\x4e\x1f\x8a\x65\x15\xf7\x37\xf7\x1c\xfb\x20\xfb\x3c\xfb\x3d\xfb\x1c\xfb\x1e\xfb\x3b"
+"\xfb\x3a\xfb\x1d\xf7\x1e\xf7\x3d\xf7\x40\xf7\x1c\xf7\x1c\xf7\x3f\x1f\x0e\xf2\xf8\xad\xf7\xa9\x15\xf7\x19\xf7\xee\x05\xfb\xee\xc2"
+"\xf8\x20\x32\x07\xfb\x08\xfb\xb7\xfb\x02\xf7\xb7\x05\x31\xfc\x20\xc2\xf7\xee\x06\xf7\x15\xfb\xee\x05\xfb\xd8\xf7\xee\x15\xf7\x02"
+"\xbd\xfb\xb1\x59\xf7\x04\xfb\xee\xca\x06\x0e\xa9\xf7\x44\xf9\x5b\x15\xf7\xa0\x06\xf7\x08\x8a\xa9\x75\x9b\x26\x08\xa5\x06\x81\xf7"
+"\x39\x05\xfc\xeb\x06\xf7\x7d\xfc\x67\xfb\x86\xfc\x2c\x05\xf9\x07\x06\xc1\xf7\x66\x05\x71\x06\x6d\x3b\x69\x78\xfb\x06\x8c\x08\xfb"
+"\xdc\x06\xf7\x5d\xf7\xf4\x05\x0e\xfb\xbf\xb3\xfb\xb9\x15\xbf\xf8\x43\x06\xf7\x62\xcd\xf7\x92\xe0\xf7\x0b\x1e\xc8\xe5\xd1\xd3\xc9"
+"\xaf\x7d\x96\x18\x32\x5a\x54\x62\x59\x4f\x08\xfb\x0a\xfb\x20\x45\xfb\x78\xfb\x84\x1a\x0e\xfb\xbf\xb3\x3c\x15\xbf\xfa\x80\x57\x06"
+"\x0e\xfb\xbf\xb3\xfa\x32\x15\xfc\x61\x07\xfb\x73\xc6\xfb\x65\xf4\xfb\x26\x1e\xc2\x40\xc2\x5e\xf7\x00\x4f\x99\x96\x18\xfb\x71\xf7"
+"\x24\xfb\x08\xf7\x9b\x84\xf8\x06\x08\xf8\x43\x07\x0e\xfb\xbf\x3b\x04\xc2\xfa\x4b\xf7\xb2\xc2\xfb\xe9\x06\x0e\xfb\xbf\xfa\x31\x04"
+"\xfe\x86\xc2\xfa\x86\x07\x0e\xfb\xbf\xfa\x32\x04\xfe\x82\xf7\xe8\xc2\xfb\xb1\xfa\x4b\x07\x0e\xfb\x51\xf7\x93\x40\x15\xf9\x4a\x07"
+"\x89\xf7\x42\xb9\xd2\xf7\x20\xb3\x08\xa1\x07\xfb\x44\x71\x4d\x3f\xfb\x4f\x1a\xfd\x5c\x07\x0e\xfb\x51\xf7\x93\xfa\x3b\x15\x55\xfb"
+"\x84\x06\x8e\xfb\x26\x54\x46\xfb\x1b\x78\x08\x4e\x07\xf7\x1b\x78\xc2\x46\x88\xfb\x26\x08\xfb\x8f\xc1\xf7\xa4\x07\x8d\xf7\x1d\x55"
+"\xd5\xfb\x15\xac\xf7\x14\xaa\xc3\xd6\x88\xf7\x1d\x08\x0e\xfb\x51\xf7\x93\xfa\x32\x15\x55\xfd\x57\x06\xfb\x4f\xc9\x3f\xf7\x44\x71"
+"\x1e\xa1\x07\xfb\x20\xb3\x5d\xd2\x8d\xf7\x42\x08\x0e\xfb\x51\xf7\x5d\xfa\x31\x15\xfe\x80\xc1\xfa\x80\x07\x0e\xfb\xf6\xd4\xf9\x89"
+"\x15\x57\x73\xf7\x6b\xfc\x42\xfb\x6b\xfc\x42\xbf\x72\xf7\x79\xf8\x5b\x05\x0e\xfc\x2d\xf7\x48\xf8\xd4\x15\xd8\x8a\xb1\x88\xc2\x1e"
+"\x89\xa7\x8a\xa5\x9a\x1a\xb3\x96\xa2\x9d\x91\x90\x89\x87\x8d\x1e\x70\x9c\x92\x85\x9c\x1b\x9f\x9a\x99\x9d\xa6\x73\x9d\x67\x5e\x69"
+"\x6e\x5a\x7d\x1f\x7c\x55\x81\x25\x22\x1a\xfb\xed\x07\x43\x8c\x67\x8e\x4e\x1e\x8d\x6e\x8c\x6d\x7b\x1a\x68\x7f\x74\x78\x83\x84\x90"
+"\x98\x85\x1e\x9c\x82\x83\x90\x7d\x1b\x77\x7c\x7d\x78\x71\xa3\x79\xaf\xb8\xad\xa8\xbc\x99\x1f\x9a\xc1\x95\xf0\xf5\x1a\x0e\x8e\xf7"
+"\xe0\x38\x15\xde\xf8\x68\x06\xf7\x42\xab\xf7\x33\xbe\xd9\x1e\xb9\xa9\xae\xa6\xaa\x1b\x90\x8e\x8a\x89\x92\x1f\x7c\x7e\x85\x80\x7a"
+"\x1a\x6d\xa6\x73\xad\xb2\xa6\xa9\xb4\xb9\x67\xad\x5b\x50\x48\x5b\x37\x52\x1e\x3d\xfb\x06\x65\xfb\x29\xfb\x56\x1a\x0e\x8e\xf7\xe0"
+"\x33\x15\xde\xfa\xbb\x38\x06\x0e\x8e\xf8\x33\xfa\x2d\x15\x38\xfc\x65\x06\xfb\x42\x6b\xfb\x33\x58\x3d\x1e\x5d\x6d\x68\x70\x6c\x1b"
+"\x86\x88\x8c\x8d\x84\x1f\x9a\x98\x91\x96\x9c\x1a\xa9\x70\xa3\x69\x69\x72\x6e\x61\x5d\xac\x69\xb8\xc5\xcd\xbb\xdf\xc5\x1e\xd9\xf7"
+"\x06\xb1\xf7\x29\xf7\x56\x1a\x0e\xfb\xbf\xf8\x56\xfb\xb9\x15\xf8\x61\x07\xf7\x73\x4f\xf7\x68\x23\xf7\x23\x1e\x53\xd6\x4f\xbd\x25"
+"\xc2\x7d\x80\x18\xc3\x6a\xc6\x52\xc4\x3f\xf4\xfb\x17\xcd\xfb\x80\x8c\xfb\x88\x08\xfc\x43\x07\x0e\xfb\xbf\xf8\x56\xfa\x3b\x15\x57"
+"\xfe\x81\xbf\x06\x0e\xfb\xbf\xf8\x56\xfa\x32\x15\x57\xfc\x43\x06\xfb\x70\x4f\xfb\x7c\x31\xfb\x14\x1e\x4e\x32\x46\x44\x4b\x66\x99"
+"\x80\x18\xe1\xb9\xc4\xb7\xbe\xc7\x08\xf7\x0a\xf7\x20\xd1\xf7\x78\xf7\x84\x1a\x0e\xfb\xbf\xf7\xfc\x3b\x15\xfa\x82\xfb\xe6\x54\xf7"
+"\xaf\xfe\x4b\x07\x0e\xfb\xbf\xf7\xc5\xfa\x31\x15\xfe\x86\xc2\xfa\x86\x07\x0e\xfb\xbf\xf7\xfc\xfa\x32\x15\x54\xfe\x4b\xfb\xb1\x54"
+"\xf7\xe8\x06\x0e\xfb\x51\xf7\x5d\x40\x15\xc1\xf9\x5c\x06\xf7\x4f\x4d\xd7\xfb\x44\xa5\x1e\x75\x07\xf7\x20\x63\xb9\x44\x89\xfb\x42"
+"\x08\x0e\xfb\x51\xf7\x60\xfa\x3b\x15\xfb\x99\x07\x88\xfb\x1c\xc3\x40\xf7\x15\x6b\xfb\x15\x6a\x53\x41\x8e\xfb\x1d\x08\xfb\xa4\xc1"
+"\xf7\x8f\x07\x86\xf7\x25\xc3\xd1\xf7\x1c\x9e\x08\xc8\x07\xfb\x1c\x9e\x53\xd1\x90\xf7\x25\x08\xf7\x84\x07\x0e\xfb\x51\xf7\x5d\xfa"
+"\x32\x15\xfd\x45\x07\x8d\xfb\x42\x5d\x44\xfb\x20\x63\x08\x75\x07\xf7\x44\xa5\xc9\xd7\xf7\x4f\x1a\xf9\x57\x07\x0e\xfb\x8e\x8b\x1c"
+"\x05\x46\x8b\x06\xc3\x0a\xe3\x0b\xaa\x8e\x8f\x90\x8e\x8e\x8f\x8e\x8e\x9c\x92\x91\x0c\x0c\xb6\x91\x8f\x8e\x95\x8e\x94\x90\x90\x95"
+"\x90\x90\x0c\x0d\xf8\xb9\x14\xf9\x3f\x15\xbb\x13\x00\x31\x02\x00\x01\x00\x05\x00\x09\x00\x13\x00\x17\x00\x22\x00\x2c\x00\x3f\x00"
+"\x5f\x00\xae\x00\xed\x01\x15\x01\x3e\x01\x58\x01\x61\x01\x6c\x01\x73\x01\x8e\x01\x93\x01\xa2\x01\xbb\x01\xbe\x01\xd4\x01\xd8\x01"
+"\xe0\x01\xe4\x01\xf9\x02\x03\x02\x0a\x02\x1d\x02\x30\x02\x3a\x02\x49\x02\x50\x02\x5e\x02\x6b\x02\x78\x02\x84\x02\x90\x02\x9b\x02"
+"\xa6\x02\xb1\x02\xb6\x02\xc0\x02\xc5\x02\xce\x02\xd7\x02\xe0\x02\xe9\x02\xf2\xf9\x35\x15\x0b\xa5\x36\x0a\x0b\x49\x0a\xa4\xab\xa9"
+"\x72\xa5\x6d\x1f\x0b\x3b\x0a\x71\x0b\x71\x8e\x06\xd1\x87\xa0\x70\x88\x36\x08\x0b\x07\x8e\x36\x76\x70\x45\x87\x08\x88\x0b\x15\x68"
+"\x6f\x6f\x69\x68\xa7\x6f\xad\xad\xa7\xa7\xae\xac\x6f\xa8\x6a\x1f\x0b\x15\xfb\xc6\x06\x46\x6b\x2c\x0a\xf7\xc6\xc3\xfb\xc8\x06\x50"
+"\x6c\x8b\x8c\x7c\x1f\x5c\x8f\x67\x94\x74\x99\x30\x0a\xf7\xc8\x06\x0e\x15\xfb\x5c\xfb\x21\xfb\x25\xfb\x61\xfb\x5e\xf7\x22\xfb\x27"
+"\xf7\x57\xf7\x57\xf7\x22\xf7\x26\xf7\x5f\xf7\x5d\xfb\x22\xf7\x29\xfb\x53\x1f\x81\x64\x15\xb8\xb9\x7a\x6d\xae\x1f\xcb\x56\xae\x2a"
+"\xfb\x0e\x1a\xfb\x05\x6c\x2e\x54\x59\x1e\x6e\x6c\x5b\x7a\x5a\x1b\xfb\x1b\x32\xf7\x11\xf7\x51\xf7\x55\xda\xf7\x06\xf7\x1a\x1f\x0e"
+"\x15\xfb\x51\xfb\x2f\xfb\x32\xfb\x56\xfb\x56\xf7\x2f\xfb\x31\xf7\x52\xf7\x50\xf7\x31\xf7\x31\xf7\x52\xf7\x5b\xfb\x2c\xf7\x31\xfb"
+"\x56\x1f\x5e\x04\xf7\x39\xf7\x16\xfb\x1d\xfb\x41\xfb\x3a\xfb\x19\xfb\x1d\xfb\x35\xfb\x36\xfb\x18\xf7\x1d\xf7\x3d\xf7\x3e\x0b\x15"
+"\xb0\x8f\x9d\x92\xa6\x9f\x08\xb2\xa8\x9c\xab\xb6\x1a\xbc\x6a\xb1\x5f\x6d\x74\x72\x6b\x6b\xa2\x71\xa8\x94\x92\x8c\x8f\x99\x1e\x8d"
+"\x61\x60\x5e\x5a\x82\x08\x0e\x15\x73\x06\x86\x4f\x79\x7b\x4b\x8c\x08\x69\x06\x4e\x77\x9c\xc5\x88\x1f\x73\xfb\x7a\xa3\x06\x90\xc9"
+"\x9a\x98\xce\x8c\x08\xac\x06\xcd\x9a\x7d\x4d\x8f\x1f\xa3\x06\x0b\x4e\x0a\x6e\x50\x0a\x5a\x9a\x5b\xa7\x63\x1e\xaf\x58\xb9\x6d\xc7"
+"\x81\x08\x85\xad\x9e\x8a\xf7\x01\x1b\x0b\x3e\x0a\xfb\xb0\x23\x0a\xf7\xb0\x0b\x2f\x0a\xe0\xa0\xa6\xd1\x8f\x08\x8e\xa5\x0b\x37\x0a"
+"\xf8\x19\x07\x88\x0b\x08\x59\xab\x6d\xc4\xc9\x1a\xb3\x97\xb1\xa2\xa9\x1e\xa5\xb0\xac\x9e\xbc\x94\x08\x90\xac\x9d\x8c\xec\x1b\x0b"
+"\xf8\x7a\x33\x0a\x0b\x63\x1f\xb6\x69\x05\xc0\xb9\x9c\x95\xb2\x41\x0a\xcb\xba\x0b\x15\x9a\x81\xf7\x3a\xf7\x41\x05\x9a\x9c\x90\x94"
+"\x99\x1a\xa3\x70\xa1\x6e\x79\x80\x81\x6e\x7d\x1e\x0b\x38\x0a\x0e\x15\x4d\x07\xf8\x36\xfb\x5b\xfc\x36\xfb\x5b\x05\x4d\x07\xf8\x85"
+"\xf7\x7d\x05\xc2\x07\x0e\x88\x4d\x0a\x0b\x25\x0a\x71\xf7\xb0\x21\x0a\x0b\x3b\x0a\x06\x0b\x15\x54\xfb\x83\xfb\x81\x54\xf7\x81\xfb"
+"\x83\xc2\xf7\x83\xf7\x81\xc2\xfb\x81\x06\x0e\x40\x0a\x42\x73\x90\x6f\x1b\x50\x5c\x0b\x24\x0a\xfc\x19\x25\x0a\x0b\x1a\x72\x7e\x7f"
+"\x69\x87\x1e\x71\xf7\x82\xa5\x07\x54\x98\x89\x8d\x5e\xf0\x0b\xd9\x22\xf1\xc8\xb9\xac\xcf\xad\x1e\x47\xad\xb9\x6a\xc8\x1b\xf1\xd9"
+"\xf4\x0b\x88\xe0\xa0\xa6\xd1\x8f\x08\x8e\xa5\x0b\x06\xe6\x89\xae\x6d\x99\x32\x08\xa5\x06\x81\xf7\x36\x05\x0b\x46\x0a\xa0\x46\x1f"
+"\xa2\x0b\x1b\xa0\x8b\x8b\x70\xe6\x1f\x73\xda\x8f\x8a\xaa\x1b\x0b\xfb\x2d\xfb\x55\xfb\x52\xf7\x2f\xfb\x2f\xf7\x52\x0b\xd3\x2f\xb6"
+"\xad\x18\x68\xb8\x71\xab\x7a\x9f\x08\x0b\x1a\x4a\x7f\x4d\x78\x67\x1e\x74\x7f\x72\x7c\x0b\x72\x9a\xa2\x7f\x1f\x78\xaf\x7f\xc9\xcc"
+"\x1a\x0b\x15\x57\x5e\x76\x7f\x64\x1b\x78\x80\x8e\x0b\xf8\xa2\xc2\x15\xfc\x85\x54\xf8\x85\x06\x0b\x60\x69\x18\xae\x5f\xa5\x6a\x9c"
+"\x77\x08\x0b\x4f\x0a\xaa\xa4\x0b\xa5\x07\x64\x8d\x7b\x98\xa5\x1a\x9b\x0b\xa8\xc4\xaa\x1f\x0e\x06\x45\x8f\x76\xa7\x8e\xdf\x08\x0b"
+"\x06\x45\x8f\x76\xa6\x8e\xe0\x08\x0b\x8b\x89\x7a\x1f\x57\x88\x64\x80\x0b\x6b\x72\x72\x6c\x6b\xa4\x72\xaa\x0b\x79\x08\x48\x5f\x61"
+"\x3f\x3a\x1a\x0b", 16196
+};
diff --git a/dviware/dvisvgm/src/macros.hpp b/dviware/dvisvgm/src/macros.hpp
index 489c4de002..d4091c83b9 100644
--- a/dviware/dvisvgm/src/macros.hpp
+++ b/dviware/dvisvgm/src/macros.hpp
@@ -2,7 +2,7 @@
** macros.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/AttributeExtractor.cpp b/dviware/dvisvgm/src/optimizer/AttributeExtractor.cpp
index 1d1c6579b8..c058f342ef 100644
--- a/dviware/dvisvgm/src/optimizer/AttributeExtractor.cpp
+++ b/dviware/dvisvgm/src/optimizer/AttributeExtractor.cpp
@@ -2,7 +2,7 @@
** AttributeExtractor.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/AttributeExtractor.hpp b/dviware/dvisvgm/src/optimizer/AttributeExtractor.hpp
index 4b53b66551..a0feb09918 100644
--- a/dviware/dvisvgm/src/optimizer/AttributeExtractor.hpp
+++ b/dviware/dvisvgm/src/optimizer/AttributeExtractor.hpp
@@ -2,7 +2,7 @@
** AttributeExtractor.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/ClipPathReassigner.cpp b/dviware/dvisvgm/src/optimizer/ClipPathReassigner.cpp
index 0f684cd7eb..28d9a64346 100644
--- a/dviware/dvisvgm/src/optimizer/ClipPathReassigner.cpp
+++ b/dviware/dvisvgm/src/optimizer/ClipPathReassigner.cpp
@@ -2,7 +2,7 @@
** ClipPathReassigner.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -35,12 +35,14 @@ const char* ClipPathReassigner::info () const {
/** Returns a hash value for an XML element where the id attribute is not taken into account.
* Two elements that differ only by their id attribute get the same hash value. */
static uint64_t hash_value (XMLElement *elem) {
- const char *id = elem->getAttributeValue("id");
+ string id;
+ if (const char* idval = elem->getAttributeValue("id"))
+ id = idval;
elem->removeAttribute("id");
ostringstream oss;
elem->write(oss);
uint64_t value = XXH64HashFunction(oss.str().data(), oss.str().length()).digestValue();
- if (id)
+ if (!id.empty())
elem->addAttribute("id", id);
return value;
}
diff --git a/dviware/dvisvgm/src/optimizer/ClipPathReassigner.hpp b/dviware/dvisvgm/src/optimizer/ClipPathReassigner.hpp
index 6abe6d1e00..8d01a9db78 100644
--- a/dviware/dvisvgm/src/optimizer/ClipPathReassigner.hpp
+++ b/dviware/dvisvgm/src/optimizer/ClipPathReassigner.hpp
@@ -2,7 +2,7 @@
** ClipPathReassigner.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/DependencyGraph.hpp b/dviware/dvisvgm/src/optimizer/DependencyGraph.hpp
index bf1c1cc973..b6bf7ef3db 100644
--- a/dviware/dvisvgm/src/optimizer/DependencyGraph.hpp
+++ b/dviware/dvisvgm/src/optimizer/DependencyGraph.hpp
@@ -2,7 +2,7 @@
** DependencyGraph.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/GroupCollapser.cpp b/dviware/dvisvgm/src/optimizer/GroupCollapser.cpp
index e86313e74b..2eb8746245 100644
--- a/dviware/dvisvgm/src/optimizer/GroupCollapser.cpp
+++ b/dviware/dvisvgm/src/optimizer/GroupCollapser.cpp
@@ -2,7 +2,7 @@
** GroupCollapser.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/GroupCollapser.hpp b/dviware/dvisvgm/src/optimizer/GroupCollapser.hpp
index addf65b4ac..25f3cf23c4 100644
--- a/dviware/dvisvgm/src/optimizer/GroupCollapser.hpp
+++ b/dviware/dvisvgm/src/optimizer/GroupCollapser.hpp
@@ -2,7 +2,7 @@
** GroupCollapser.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/Makefile.in b/dviware/dvisvgm/src/optimizer/Makefile.in
index a100cb9d65..2f1424683a 100644
--- a/dviware/dvisvgm/src/optimizer/Makefile.in
+++ b/dviware/dvisvgm/src/optimizer/Makefile.in
@@ -88,14 +88,24 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
@HAVE_BROTLI_FALSE@am__append_1 = -I$(dvisvgm_srcdir)/libs/brotli/include
@HAVE_BROTLI_FALSE@am__append_2 = ../libs/brotli/libbrotli.a
@HAVE_WOFF2_FALSE@am__append_3 = -I$(dvisvgm_srcdir)/libs/woff2/include
@HAVE_WOFF2_FALSE@am__append_4 = ../libs/woff2/libwoff2.a
subdir = src/optimizer
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -220,7 +230,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -336,6 +345,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -355,11 +366,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -394,9 +401,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/../../libs/defs.am $(am_
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/optimizer/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/optimizer/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu src/optimizer/Makefile
+ $(AUTOMAKE) --foreign src/optimizer/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
diff --git a/dviware/dvisvgm/src/optimizer/OptimizerModule.hpp b/dviware/dvisvgm/src/optimizer/OptimizerModule.hpp
index 94e4c74381..ac69a0cb5e 100644
--- a/dviware/dvisvgm/src/optimizer/OptimizerModule.hpp
+++ b/dviware/dvisvgm/src/optimizer/OptimizerModule.hpp
@@ -2,7 +2,7 @@
** OptimizerModule.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/RedundantElementRemover.cpp b/dviware/dvisvgm/src/optimizer/RedundantElementRemover.cpp
index 7d34bbcd11..7dc17f04a7 100644
--- a/dviware/dvisvgm/src/optimizer/RedundantElementRemover.cpp
+++ b/dviware/dvisvgm/src/optimizer/RedundantElementRemover.cpp
@@ -2,7 +2,7 @@
** RedundantElementRemover.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/RedundantElementRemover.hpp b/dviware/dvisvgm/src/optimizer/RedundantElementRemover.hpp
index ce87bf4751..88c8680d6e 100644
--- a/dviware/dvisvgm/src/optimizer/RedundantElementRemover.hpp
+++ b/dviware/dvisvgm/src/optimizer/RedundantElementRemover.hpp
@@ -2,7 +2,7 @@
** RedundantElementRemover.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/SVGOptimizer.cpp b/dviware/dvisvgm/src/optimizer/SVGOptimizer.cpp
index 4809439c8e..d6a7f35bc4 100644
--- a/dviware/dvisvgm/src/optimizer/SVGOptimizer.cpp
+++ b/dviware/dvisvgm/src/optimizer/SVGOptimizer.cpp
@@ -2,7 +2,7 @@
** SVGOptimizer.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/SVGOptimizer.hpp b/dviware/dvisvgm/src/optimizer/SVGOptimizer.hpp
index 9cd9e64da3..942cff8972 100644
--- a/dviware/dvisvgm/src/optimizer/SVGOptimizer.hpp
+++ b/dviware/dvisvgm/src/optimizer/SVGOptimizer.hpp
@@ -2,7 +2,7 @@
** SVGOptimizer.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/TextSimplifier.cpp b/dviware/dvisvgm/src/optimizer/TextSimplifier.cpp
index 855d88c101..05a5b40c47 100644
--- a/dviware/dvisvgm/src/optimizer/TextSimplifier.cpp
+++ b/dviware/dvisvgm/src/optimizer/TextSimplifier.cpp
@@ -2,7 +2,7 @@
** TextSimplifier.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/TextSimplifier.hpp b/dviware/dvisvgm/src/optimizer/TextSimplifier.hpp
index 8908861366..7d16f59e7a 100644
--- a/dviware/dvisvgm/src/optimizer/TextSimplifier.hpp
+++ b/dviware/dvisvgm/src/optimizer/TextSimplifier.hpp
@@ -2,7 +2,7 @@
** TextSimplifier.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/TransformSimplifier.cpp b/dviware/dvisvgm/src/optimizer/TransformSimplifier.cpp
index 3eca47fc3d..4cf3f67d4a 100644
--- a/dviware/dvisvgm/src/optimizer/TransformSimplifier.cpp
+++ b/dviware/dvisvgm/src/optimizer/TransformSimplifier.cpp
@@ -2,7 +2,7 @@
** TransformSimplifier.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/TransformSimplifier.hpp b/dviware/dvisvgm/src/optimizer/TransformSimplifier.hpp
index 023c9655ea..659a7b5f96 100644
--- a/dviware/dvisvgm/src/optimizer/TransformSimplifier.hpp
+++ b/dviware/dvisvgm/src/optimizer/TransformSimplifier.hpp
@@ -2,7 +2,7 @@
** TransformSimplifier.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/WSNodeRemover.cpp b/dviware/dvisvgm/src/optimizer/WSNodeRemover.cpp
index 864c13905b..9d4dc6d847 100644
--- a/dviware/dvisvgm/src/optimizer/WSNodeRemover.cpp
+++ b/dviware/dvisvgm/src/optimizer/WSNodeRemover.cpp
@@ -2,7 +2,7 @@
** WSNodeRemover.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/optimizer/WSNodeRemover.hpp b/dviware/dvisvgm/src/optimizer/WSNodeRemover.hpp
index b050b52390..5c7783ed62 100644
--- a/dviware/dvisvgm/src/optimizer/WSNodeRemover.hpp
+++ b/dviware/dvisvgm/src/optimizer/WSNodeRemover.hpp
@@ -2,7 +2,7 @@
** WSNodeRemover.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/options.dtd b/dviware/dvisvgm/src/options.dtd
index 1b454e3850..43f75b1691 100644
--- a/dviware/dvisvgm/src/options.dtd
+++ b/dviware/dvisvgm/src/options.dtd
@@ -3,7 +3,7 @@
** options.dtd **
** **
** This file is part of dvisvgm - a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/options.xml b/dviware/dvisvgm/src/options.xml
index d39dc17b9b..889fe7f081 100644
--- a/dviware/dvisvgm/src/options.xml
+++ b/dviware/dvisvgm/src/options.xml
@@ -3,7 +3,7 @@
** options.xml **
** **
** This file is part of dvisvgm - a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -26,7 +26,7 @@
<usage>--eps [options] epsfile</usage>
<usage>--pdf [options] pdffile</usage>
<description>This program converts DVI files, as created by TeX/LaTeX, as well as\nEPS and PDF files to the XML-based scalable vector graphics format SVG.</description>
- <copyright>Copyright (C) 2005-2022 Martin Gieseking &lt;martin.gieseking@uos.de></copyright>
+ <copyright>Copyright (C) 2005-2023 Martin Gieseking &lt;martin.gieseking@uos.de></copyright>
</program>
<options>
<section title="Input options">
@@ -66,6 +66,9 @@
<option long="comments">
<description>add comments with additional information</description>
</option>
+ <option long="embed-bitmaps">
+ <description>prevent references to external bitmap files</description>
+ </option>
<option long="font-format" short="f" if="!defined(DISABLE_WOFF)">
<arg type="string" name="format" default="svg"/>
<description>set file format of embedded fonts</description>
@@ -149,6 +152,9 @@
<arg type="string" name="dir" optional="yes"/>
<description>set/print path of cache directory</description>
</option>
+ <option long="debug-glyphs" if="defined(TTFDEBUG)">
+ <description>create PS files for all glyphs converted to TTF</description>
+ </option>
<option long="exact-bbox" short="e">
<description>compute exact glyph bounding boxes</description>
</option>
diff --git a/dviware/dvisvgm/src/psdefs.cpp b/dviware/dvisvgm/src/psdefs.cpp
index 8feade148e..e3a8372671 100644
--- a/dviware/dvisvgm/src/psdefs.cpp
+++ b/dviware/dvisvgm/src/psdefs.cpp
@@ -2,7 +2,7 @@
** psdefs.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/ttf/CmapTable.cpp b/dviware/dvisvgm/src/ttf/CmapTable.cpp
new file mode 100644
index 0000000000..02731b57e9
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/CmapTable.cpp
@@ -0,0 +1,131 @@
+/*************************************************************************
+** CmapTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <algorithm>
+#include "CmapTable.hpp"
+#include "TTFWriter.hpp"
+#include "../Font.hpp"
+#include "../utility.hpp"
+
+using namespace std;
+using namespace ttf;
+
+void CmapTable::write (ostream &os) const {
+ writeUInt16(os, 0); // version
+ writeUInt16(os, 2); // number of encoding tables
+
+ const RangeMap &charmap = ttfWriter()->getUnicodeCharMap();
+ bool isUCS2 = (charmap.maxKey() <= 0xFFFF);
+ uint32_t offset = 4+2*8; // offset to subtable
+
+ writeUInt16(os, 0); // platform ID 0 = Unicode
+ writeUInt16(os, isUCS2 ? 3 : 4); // encoding ID (Unicode 2.0, UCS-2 or UCS-4)
+ writeUInt32(os, offset);
+
+ writeUInt16(os, 3); // platform ID 3 = Windows
+ writeUInt16(os, isUCS2 ? 1 : 10); // encoding ID (UCS-2 or UCS-4)
+ writeUInt32(os, offset); // platform ID 0 = Unicode
+
+ if (isUCS2)
+ writeSubTableFormat4(os, charmap);
+ else
+ writeSubTableFormat12(os, charmap);
+}
+
+
+/** Writes mapping data in subtable format 0 (byte encoding table). */
+void CmapTable::writeSubTableFormat0 (ostream &os, const RangeMap &charmap) const {
+ writeUInt16(os, 0); // subtable format
+ writeUInt16(os, 3*2+256); // table length
+ writeUInt16(os, 0); // language: none
+ vector<uint8_t> indexes(256, 0);
+ int count=1;
+ for (auto cppair : charmap) {
+ if (cppair.first > 255 || count > 255)
+ break;
+ indexes[cppair.first] = uint8_t(count++);
+ }
+ for (uint8_t c : indexes)
+ writeUInt8(os, c);
+}
+
+
+/** Writes mapping data in subtable format 4 (segment mapping to delta values, UCS-2). */
+void CmapTable::writeSubTableFormat4 (ostream &os, const RangeMap &charmap) const {
+ uint16_t numSegments = charmap.numRanges()+1;
+ uint16_t searchRange = 1 << (util::ilog2(numSegments)+1);
+ uint16_t entrySelector = util::ilog2(searchRange/2);
+ uint16_t rangeShift = 2*numSegments - searchRange;
+
+ writeUInt16(os, 4); // subtable format
+ writeUInt16(os, 8*2+4*2*numSegments); // table length
+ writeUInt16(os, 0); // language: none
+ writeUInt16(os, numSegments*2);
+ writeUInt16(os, searchRange);
+ writeUInt16(os, entrySelector);
+ writeUInt16(os, rangeShift);
+ for (size_t i=0; i < charmap.numRanges(); i++)
+ writeUInt16(os, charmap.getRange(i).max()); // end character code of current segment
+ writeUInt16(os, 0xFFFF); // final end character code
+ writeUInt16(os, 0); // reserved pad
+ for (size_t i=0; i < charmap.numRanges(); i++)
+ writeUInt16(os, charmap.getRange(i).min()); // start character code of current segment
+ writeUInt16(os, 0xFFFF); // final start character code
+ int count=1;
+ for (size_t i=0; i < charmap.numRanges(); i++) {
+ const auto &range = charmap.getRange(i);
+ int cstart = range.min();
+ writeInt16(os, count-cstart); // idDelta of current segment
+ count += range.numKeys();
+ }
+ writeUInt16(os, 1); // final idRange (maps 0xFFFF to 0)
+ for (uint16_t i=0; i < numSegments; i++)
+ writeUInt16(os, 0); // idRangeOffsets = 0 (no offsets into glyphIdArray required)
+}
+
+
+/** Writes mapping data in subtable format 6 (trimmed table mapping, UCS-2). */
+void CmapTable::writeSubTableFormat6 (ostream &os, const RangeMap &charmap) const {
+ writeUInt16(os, 6); // subtable format
+ writeUInt16(os, 5*2+2*charmap.numValues()); // table length
+ writeUInt16(os, 0); // language: none
+ writeUInt16(os, charmap.getRange(0).min()); // first character code
+ writeUInt16(os, charmap.getRange(0).numKeys());
+ for (size_t i=0; i < charmap.getRange(0).numKeys(); i++)
+ writeUInt16(os, i+1);
+}
+
+
+/** Writes mapping data in subtable format 12 (segmented coverage, UCS-4). */
+void CmapTable::writeSubTableFormat12 (ostream &os, const RangeMap &charmap) const {
+ writeUInt16(os, 12); // subtable format
+ writeUInt16(os, 0); // reserved
+ writeUInt32(os, 2*2+3*4+charmap.numRanges()*3*4); // table length
+ writeUInt32(os, 0); // language
+ writeUInt32(os, charmap.numRanges());
+ uint32_t startIndex=1;
+ for (size_t i=0; i < charmap.numRanges(); i++) {
+ const auto &range = charmap.getRange(i);
+ writeUInt32(os, range.min()); // startCharCode
+ writeUInt32(os, range.max()); // endCharCode
+ writeUInt32(os, startIndex); // startGlyphID
+ startIndex += range.numKeys();
+ }
+}
diff --git a/dviware/dvisvgm/src/ttf/CmapTable.hpp b/dviware/dvisvgm/src/ttf/CmapTable.hpp
new file mode 100644
index 0000000000..d9c9eea5ae
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/CmapTable.hpp
@@ -0,0 +1,43 @@
+/*************************************************************************
+** CmapTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+#include <vector>
+#include "TTFTable.hpp"
+
+class RangeMap;
+
+namespace ttf {
+
+/** This class provides the functions required to write the character mapping table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/cmap.htm */
+class CmapTable : public TTFTable {
+ public:
+ uint32_t tag () const override {return name2id("cmap");}
+ void write (std::ostream &os) const override;
+
+ protected:
+ void writeSubTableFormat0 (std::ostream &os, const RangeMap &charmap) const;
+ void writeSubTableFormat4 (std::ostream &os, const RangeMap &charmap) const;
+ void writeSubTableFormat6 (std::ostream &os, const RangeMap &charmap) const;
+ void writeSubTableFormat12 (std::ostream &os, const RangeMap &charmap) const;
+};
+
+} // namespace ttf \ No newline at end of file
diff --git a/dviware/dvisvgm/src/ttf/GlyfTable.cpp b/dviware/dvisvgm/src/ttf/GlyfTable.cpp
new file mode 100644
index 0000000000..4005b661e0
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/GlyfTable.cpp
@@ -0,0 +1,501 @@
+/*************************************************************************
+** GlyfTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <algorithm>
+#include <limits>
+#include <cmath>
+#include <numeric>
+#include <sstream>
+#include "GlyfTable.hpp"
+#include "TTFWriter.hpp"
+#include "../Bezier.hpp"
+#include "../Font.hpp"
+
+using namespace std;
+using namespace ttf;
+
+/** Creates a contour by concatenating several contours given in a list. */
+Contour::Contour (std::list<Contour> &&contours) {
+ if (_pointInfos.empty() && !contours.empty()) {
+ _pointInfos = std::move(contours.front()._pointInfos);
+ contours.pop_front();
+ }
+ for (auto it=contours.begin(); it != contours.end(); it=contours.erase(it))
+ std::move(it->begin(), it->end(), std::back_inserter(_pointInfos));
+}
+
+
+void Contour::reverse () {
+ std::reverse(_pointInfos.begin(), _pointInfos.end());
+}
+
+
+/** Converts the absolute coordinates of a Contour to relative ones. */
+void Contour::convertAbsoluteToRelative () {
+ Pair<int> prevPoint;
+ for (PointInfo &info : _pointInfos) {
+ Pair<int> p = info.coords;
+ info.coords -= prevPoint;
+ prevPoint = p;
+ }
+}
+
+
+/** Returns an iterator pointing to the next PointInfo object in a vector that isn't marked for removal.
+ * If there's no such object, the function returns infos.end().
+ * @param[in] it current position
+ * @param[in] infos vector the iterator belongs to */
+static vector<PointInfo>::iterator next (vector<PointInfo>::iterator it, const vector<PointInfo> &infos) {
+ do
+ ++it;
+ while (it != infos.end() && it->removed());
+ return it;
+}
+
+
+/** Reduces the number of contour points without affecting the appearance significantly. */
+void Contour::reduceNumberOfPoints () {
+ if (_pointInfos.size() > 2) {
+ for (auto it1 = _pointInfos.begin(); it1+2 != _pointInfos.end(); ++it1) {
+ auto it2 = it1+1;
+ auto it3 = it2+1;
+ bool remove=false;
+ if (it1->oncurve() && it2->offcurve() && it3->oncurve()) {
+ // remove off-curve points that are close to an on-curve point
+ Pair<int> diff12 = it1->coords - it2->coords;
+ Pair<int> diff23 = it2->coords - it3->coords;
+ int sqrdist12 = diff12.x()*diff12.x() + diff12.y()*diff12.y();
+ int sqrdist23 = diff23.x()*diff23.x() + diff23.y()*diff23.y();
+ remove = (sqrdist12 < 4 || sqrdist23 < 4);
+ if (!remove) {
+ // remove in-between off-curve points that are very close to
+ // the line through the two adjacent on-curve points (curve height <= 0.5)
+ // distance(line(p1,p3), p2) = |det(p1-p3, p1-p2)| / |p1-p3|
+ Pair<int> diff13 = it1->coords - it3->coords;
+ DPair extremum = QuadBezier(it1->coords, it2->coords, it3->coords).valueAt(0.5);
+ int sqrdist13 = diff13.x()*diff13.x() + diff13.y()*diff13.y();
+ double det1312 = det(DPair(diff13), DPair(it3->coords)-extremum);
+ remove = (sqrdist13 == 0 || det1312/sqrdist13*det1312 < 0.25);
+ }
+ }
+ else if (it2->offcurve() || (it1->oncurve() && it3->oncurve())) {
+ // remove in-between points located on same line
+ Pair<int> diff13 = it3->coords - it1->coords;
+ Pair<int> diff12 = it2->coords - it1->coords;
+ int sqrdist13 = diff13.x()*diff13.x() + diff13.y()*diff13.y();
+ double det1312 = det(diff13, diff12);
+ remove = (sqrdist13 == 0 || det1312/sqrdist13*det1312 < 1);
+ }
+ else if (it1->offcurve() && it2->oncurve() && it3->offcurve()) {
+ // remove on-curve points located (almost) halfway between two off-curve points
+ Pair<int> mid = DPair(it1->coords + it3->coords)/2.0;
+ Pair<int> vec = mid - it2->coords;
+ double dist2 = vec.x()*vec.x() + vec.y()*vec.y();
+ remove = (dist2 < 2.25); // remove point if dist < 1.5
+ }
+ if (remove)
+ it2->markForRemoval();
+ }
+ }
+ // remove duplicate points, prefer control (off-curve) points
+ for (auto it1 = _pointInfos.begin(); it1 != _pointInfos.end(); it1=next(it1, _pointInfos)) {
+ auto it2 = next(it1, _pointInfos);
+ if (it2 == _pointInfos.end())
+ it2 = _pointInfos.begin();
+ if (it1->oncurve() && it2->oncurve() && (it1->coords-it2->coords).length() < 6) {
+ auto i1=it1, i2=it2;
+ if (i1 == _pointInfos.begin())
+ swap(i1, i2);
+ i2->coords = DPair(i1->coords+i2->coords)/2.0;
+ i1->markForRemoval();
+ }
+ else if (it1->coords == it2->coords) {
+ if (it1->offcurve() || it2 == _pointInfos.begin())
+ it1->markForRemoval();
+ else
+ it2->markForRemoval();
+ }
+ }
+ // actually remove marked points from vector
+ _pointInfos.erase(
+ remove_if(_pointInfos.begin(), _pointInfos.end(), [](const PointInfo &pi) {
+ return pi.removed();
+ }),
+ _pointInfos.end());
+}
+
+
+/** Bits of the "Simple Glyph Flags". See section "Simple Glyph Description" of glyf table documentation. */
+enum : uint8_t {
+ ON_CURVE_PT = 1, ///< if set, corresponing point is on the curve, otherwise off the curve (= control point)
+ X_SHORT = 2, ///< if set, the corresponding x-coordinate is 1 byte long, otherwise it's two bytes long
+ Y_SHORT = 4, ///< if set, the corresponding y-coordinate is 1 byte long, otherwise it's two bytes long
+ REPEAT_FLAG = 8, ///< if set, the next byte specifies the number of additional times this flag is to be repeated
+ X_IS_SAME_OR_POSITIVE_SHORT = 16, ///< if X_SHORT set: indicates if value >0, else if x-coord equals prev. one
+ Y_IS_SAME_OR_POSITIVE_SHORT = 32 ///< if Y_SHORT set: indicates if value >0, else if y-coord equals prev. one
+};
+
+
+/** Computes the "simple glyph flags" (except the repeat flag) for a given contour.
+ * The function expects the contour points to be relative to the respective preceding point.
+ * In order to simplify checking the equality of two flag bytes, which requires to
+ * exclude the repeat flag, this function does not set the repeat flag. */
+vector<uint8_t> Contour::glyphFlags () const {
+ vector<uint8_t> flags(_pointInfos.size());
+ for (size_t i=0; i < _pointInfos.size(); i++) {
+ flags[i] = _pointInfos[i].oncurve() ? ON_CURVE_PT : 0;
+ if (_pointInfos[i].coords.x() == 0)
+ flags[i] |= X_IS_SAME_OR_POSITIVE_SHORT;
+ else if (abs(_pointInfos[i].coords.x()) <= 0xff) { // x-coordinate 1 byte long?
+ flags[i] |= X_SHORT;
+ if (_pointInfos[i].coords.x() > 0) // positive x-coordinate?
+ flags[i] |= X_IS_SAME_OR_POSITIVE_SHORT;
+ }
+ if (_pointInfos[i].coords.y() == 0)
+ flags[i] |= Y_IS_SAME_OR_POSITIVE_SHORT;
+ else if (abs(_pointInfos[i].coords.y()) <= 0xff) { // y-coordinate 1 byte long?
+ flags[i] |= Y_SHORT;
+ if (_pointInfos[i].coords.y() > 0) // positive y-coordinate?
+ flags[i] |= Y_IS_SAME_OR_POSITIVE_SHORT;
+ }
+ }
+ return flags;
+}
+
+
+////////////////////////////////////////////////////////////////////////////////////////////////
+
+
+/** Writes the contours describing the glyphs to a given stream.
+ * The glyphs must be ordered by the local glyph index used in the generated TTF font.
+ * In order to get compact mapping tables, we ensure that a greater glyph index also
+ * indicates a greater Unicode point (idx1 > idx2 <=> cp1 > cp2). */
+void GlyfTable::write (ostream &os) const {
+ // add offset for .notdef character
+ size_t offset = 0;
+ ttfWriter()->addGlyphOffset(0);
+ ttfWriter()->updateGlobalBbox(0, 0, 0, 0, 0);
+ // iterate in ascending Unicode point order over all characters to be added to the TTF
+ for (auto cp2charcode : ttfWriter()->getUnicodeCharMap()) {
+ ttfWriter()->addGlyphOffset(offset); // update loca table
+ offset += writeGlyphContours(os, cp2charcode.second);
+ }
+ ttfWriter()->addGlyphOffset(offset); // add extra offset after last valid one
+}
+
+
+/** Writes the contour data of a single glyph to a given output stream.
+ * @param[in] os stream to write to
+ * @param[in] charcode character code of glyph in current font
+ * @return number of bytes written */
+size_t GlyfTable::writeGlyphContours (ostream &os, uint32_t charcode) const {
+ list<Contour> contours = computeContours(charcode);
+ if (contours.empty()) {
+ ttfWriter()->updateGlobalBbox(charcode, 0, 0, 0, 0);
+ return 0;
+ }
+ ttfWriter()->updateContourInfo(contours.size(),
+ std::accumulate(contours.begin(), contours.end(), size_t(0), [](size_t sum, const Contour &contour) {
+ return sum + contour.numPoints();
+ }));
+ auto offset = os.tellp();
+ // glyph header
+ writeInt16(os, int16_t(contours.size())); // numberOfContours
+
+ int xmin, xmax, ymin, ymax;
+ computeBbox(contours, xmin, ymin, xmax, ymax);
+ ttfWriter()->updateGlobalBbox(charcode, xmin, ymin, xmax, ymax);
+ writeInt16(os, xmin);
+ writeInt16(os, ymin);
+ writeInt16(os, xmax);
+ writeInt16(os, ymax);
+
+ // write indices of endpoints of each contour
+ size_t endPtsOfContours = 0;
+ for (const Contour &contour : contours) {
+ endPtsOfContours += contour.numPoints();
+ writeUInt16(os, endPtsOfContours-1);
+ }
+ writeUInt16(os, 0); // instructionLength
+
+ Contour combinedContour(std::move(contours));
+ combinedContour.convertAbsoluteToRelative();
+
+ // write contour flags
+ vector<uint8_t> flags = combinedContour.glyphFlags();
+ for (auto first=flags.begin(); first != flags.end(); ++first) {
+ auto last = std::find_if(first+1, flags.end(), [&first](uint8_t flagbyte) {
+ return flagbyte != *first;
+ });
+ if (--last == first) // run-length == 0?
+ writeUInt8(os, *first);
+ else {
+ writeUInt8(os, (*first) | REPEAT_FLAG); // write flag only once and
+ writeUInt8(os, last-first); // append number of additional repeats
+ first = last;
+ }
+ }
+ // write x-coordinates
+ for (size_t i=0; i < combinedContour.numPoints(); i++) {
+ if (flags[i] & X_SHORT) // short (one byte) x coordinate?
+ writeUInt8(os, abs(combinedContour[i].coords.x()));
+ else if ((flags[i] & X_IS_SAME_OR_POSITIVE_SHORT) == 0) // does long x-coordinate differ from previous one?
+ writeInt16(os, int16_t(combinedContour[i].coords.x()));
+ }
+ // write y-coordinates
+ for (size_t i=0; i < combinedContour.numPoints(); i++) {
+ if (flags[i] & Y_SHORT) // short (one byte) y coordinate?
+ writeUInt8(os, abs(combinedContour[i].coords.y()));
+ else if ((flags[i] & Y_IS_SAME_OR_POSITIVE_SHORT) == 0) // does long y-coordinate differ from previous one?
+ writeInt16(os, int16_t(combinedContour[i].coords.y()));
+ }
+ // ensure that the number of glyph data bytes is a multiple of 4 (pad at dword boundary)
+ for (int i = (1 + ~(os.tellp()-offset)) & 3; i > 0; i--)
+ writeUInt8(os, 0);
+ return os.tellp()-offset;
+}
+
+
+/** Computes the absolute global bounds of multiple contours.
+ * @param[in] contours point data with absolute coordinates */
+void GlyfTable::computeBbox (const list<Contour> &contours, int &xmin, int &ymin, int &xmax, int &ymax) {
+ if (contours.empty())
+ xmin = xmax = ymin = ymax = 0;
+ else {
+ xmin = ymin = numeric_limits<int16_t>::max();
+ xmax = ymax = numeric_limits<int16_t>::min();
+ for (const Contour &contour : contours) {
+ for (const PointInfo &info : contour) {
+ const auto &p = info.coords;
+ xmin = min(xmin, p.x());
+ xmax = max(xmax, p.x());
+ ymin = min(ymin, p.y());
+ ymax = max(ymax, p.y());
+ }
+ }
+ }
+}
+
+
+static Glyph::Point to_point (const DPair &p) {
+ return Glyph::Point(int(std::round(p.x())), int(std::round(p.y())));
+}
+
+
+struct GlyphToContourActions : Glyph::IterationActions {
+ GlyphToContourActions (list<Contour> &cnts, double s) : contours(cnts), scale(s) {}
+
+ void moveto (const Glyph::Point &p) override {
+ contours.emplace_back(Contour());
+ add(p, true);
+ }
+
+ void lineto (const Glyph::Point &p) override {
+ if (contours.empty())
+ moveto(currentPoint()); // (0, 0)
+ if (p != currentPoint())
+ add(p, true);
+ }
+
+ void quadto (const Glyph::Point &p1, const Glyph::Point &p2) override {
+ if (contours.empty())
+ moveto(currentPoint()); // (0, 0)
+ // if the maximum distance between the curve and the line through p0 and p2 is < 0.5,
+ // treat the curve as a line
+ DPair extremum = QuadBezier(currentPoint(), p1, p2).valueAt(0.5);
+ double height = det(DPair(currentPoint()-p2), DPair(currentPoint())-extremum)/(currentPoint()-p2).length();
+ if (p1 != currentPoint() && abs(height) >= 0.5 && p2 != currentPoint())
+ add(p1, false);
+ if (p2 != currentPoint())
+ add(p2, true);
+ }
+
+ void cubicto (const Glyph::Point &p1, const Glyph::Point &p2, const Glyph::Point &p3) override {
+ // approximate cubic Bézier curve with a sequence of quadratic ones
+ CubicBezier cubic(
+ DPair(currentPoint().x(), currentPoint().y()),
+ DPair(p1.x(), p1.y()),
+ DPair(p2.x(), p2.y()),
+ DPair(p3.x(), p3.y())
+ );
+ vector<QuadBezier> quadBeziers = cubic.toQuadBeziers(0.8);
+ for (const QuadBezier &quad : quadBeziers)
+ quadto(to_point(quad.point(1)), to_point(quad.point(2)));
+ }
+
+ void add (const Glyph::Point &p, bool oncurve) {
+ contours.back().append(PointInfo(scale*p.x(), scale*p.y(), oncurve));
+ }
+
+ list<Contour> &contours;
+ double scale;
+};
+
+
+/** Returns a sequence of contours describing the glyph of a given character.
+ * The contour points are stored with absolute coordinates. */
+list<Contour> GlyfTable::computeContours (uint32_t charcode) const {
+ list<Contour> contours;
+ Glyph glyph;
+ if (ttfWriter()->getFont().getGlyph(int(charcode), glyph, ttfWriter()->getTracerCallback())) {
+ if (!glyph.empty()) {
+ GlyphToContourActions actions(contours, ttfWriter()->unitsPerEmFactor());
+ glyph.iterate(actions, false);
+ for (auto it = contours.begin(); it != contours.end();) {
+ it->reverse(); // TTF contours must be clockwise-oriented
+ it->reduceNumberOfPoints();
+ if (it->numPoints() < 3)
+ it = contours.erase(it);
+ else
+ ++it;
+ }
+ }
+#ifdef TTFDEBUG
+ if (TTFWriter::CREATE_PS_GLYPH_OUTLINES) {
+ string fontname = ttfWriter()->getFont().name();
+ ostringstream oss;
+ oss << "g-" << ttfWriter()->getFont().name() << '-';
+ oss << setw(4) << setfill('0') << charcode;
+ oss << ".eps";
+ ofstream ofs(oss.str());
+ writePS(ofs, contours, charcode);
+ }
+#endif
+ }
+ return contours;
+}
+
+
+#if 0
+/** Creates a contour for the .notdef character. */
+Contour GlyfTable::getNotDefContour () const {
+ Contour contour;
+ const PhysicalFont &font = ttfWriter()->getFont();
+ double extend = font.style() ? font.style()->extend : 1;
+ double scale = ttfWriter()->unitsPerEmFactor();
+ int base = int(round(scale*extend*(font.ascent()+font.descent())));
+ Pair<int> pmin(base/30, 0);
+ Pair<int> pmax(3*base/5, 2*base/3);
+ contour.append(PointInfo(pmin.x(), pmin.y()));
+ contour.append(PointInfo(pmin.x(), pmax.y()));
+ contour.append(PointInfo(pmax.x(), pmax.y()));
+ contour.append(PointInfo(pmax.x(), pmin.y()));
+ return contour;
+}
+#endif
+
+
+#ifdef TTFDEBUG
+/** Creates PostScript code from a list of contours that describe the outline of a single glyph.
+ * This is just required for analysis and debugging purposes. */
+void GlyfTable::writePS (ostream &os, const list<Contour> &contours, uint32_t charcode) const {
+ os << "%!PS-Adobe-3.0 EPSF-3.0\n"
+ << "%%BoundingBox: (atend)\n"
+ << "/dot {moveto gsave 5 setlinewidth 1 setlinecap currentpoint lineto stroke grestore} bind def\n"
+ << "/oncurvedot {dot} bind def\n"
+ << "/offcurvedot {gsave 0 1 0 setrgbcolor dot grestore} bind def\n"
+ << "/Helvetica findfont 8 scalefont setfont\n\n";
+ auto &font = ttfWriter()->getFont();
+ os << "% Font: " << font.name() << " at " << font.designSize() << "pt, " << font.unitsPerEm() << " units per em\n"
+ << "% Glyph: " << charcode << "\n";
+ Pair<int> llp(numeric_limits<int>::max(), numeric_limits<int>::max());
+ Pair<int> urp(numeric_limits<int>::min(), numeric_limits<int>::min());
+ size_t count=0, numPoints=0;
+ for (const Contour &contour : contours) {
+ os << "\n% contour " << ++count << ", " << contour.numPoints() << " points\n";
+ contour.writePS(os);
+ numPoints += contour.numPoints();
+ }
+ int minx, miny, maxx, maxy;
+ computeBbox(contours, minx, miny, maxx, maxy);
+ os << minx << " " << maxy+30
+ << " moveto (Glyph " << charcode << " of font " << font.name() << ", "
+ << contours.size() << " contour" << (contours.size() > 1 ? "s" : "") << ", " << numPoints << " points) show\n";
+ os << "%%Trailer\n"
+ << "%%BoundingBox: " << minx-10 << " " << miny-10 << " " << maxx+10 << " " << maxy+50 << "\n";
+}
+
+
+static ostream& write (ostream &os, const Pair<int> &p) {
+ return os << p.x() << " " << p.y();
+}
+
+template <typename ...Ts>
+static ostream& write (ostream &os, const Pair<int> &p, const Ts& ...args) {
+ write(os, p) << " ";
+ return write(os, args...);
+}
+
+
+void Contour::writePS (ostream &os) const {
+ if (_pointInfos.empty())
+ return;
+ auto p0 = _pointInfos[0].coords;
+ write(os, p0) << " moveto\n";
+ for (size_t i=1; i <= _pointInfos.size(); i++) {
+ size_t imod = i % _pointInfos.size();
+ auto pi1 = _pointInfos[imod];
+ if (pi1.oncurve() && i == _pointInfos.size())
+ os << "closepath\n";
+ else
+ write(os, pi1.coords) << " ";
+ if (pi1.oncurve()) {
+ if (i < _pointInfos.size()) {
+ auto v = pi1.coords-p0;
+ os << " lineto % " << i << "; len=" << v.length()
+ << "; " << math::rad2deg(atan2(v.y(), v.x())) << "°\n";
+ }
+ p0 = pi1.coords;
+ }
+ else {
+ auto p1 = pi1.coords;
+ auto pi2 = _pointInfos[(i+1) % _pointInfos.size()];
+ auto p2 = pi2.oncurve() ? pi2.coords : (p1+pi2.coords)/2;
+ DPair v1 = p1-p0, v2 = p1-p2;
+ Pair<int> c1 = DPair(p0) + round(v1*2.0/3.0);
+ Pair<int> c2 = DPair(p2) + round(v2*2.0/3.0);
+ QuadBezier bezier(p0, p1, p2);
+ double cordlen = (p2-p0).length();
+ double arclen = bezier.arclen();
+ DPair extremum = bezier.valueAt(0.5);
+ double height = det(DPair(p0-p2), DPair(p0)-extremum)/(p0-p2).length();
+ write(os, c1, c2, p2) << " curveto"
+ << " % " << i
+ << "; (" << math::rad2deg(atan2(v1.y(), v1.x())) << "°," << math::rad2deg(atan2(v2.y(), v2.x())) << "°)"
+ << "; cordlen=" << cordlen
+ << "; arclen=" << arclen
+ << "; quot=" << cordlen/arclen
+ << "; diff=" << arclen-cordlen
+ << "; height=" << height
+ << "\n";
+ p0 = p2;
+ if (pi2.oncurve())
+ i++;
+ }
+ }
+ os << "stroke\n";
+ for (size_t i=0; i < _pointInfos.size(); i++) {
+ auto p = _pointInfos[i].coords;
+ write(os, p) << " 2 copy "
+ << (_pointInfos[i].oncurve() ? "on" : "off") << "curvedot "
+ << "moveto (" << i << ") show\n";
+ }
+}
+#endif
diff --git a/dviware/dvisvgm/src/ttf/GlyfTable.hpp b/dviware/dvisvgm/src/ttf/GlyfTable.hpp
new file mode 100644
index 0000000000..5ff80559a5
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/GlyfTable.hpp
@@ -0,0 +1,96 @@
+/*************************************************************************
+** GlyfTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+#include <cmath>
+#include <list>
+#include <ostream>
+#include <vector>
+#include "TTFTable.hpp"
+#include "../Pair.hpp"
+
+namespace ttf {
+
+struct PointInfo {
+ enum State {OFFCURVE, ONCURVE, REMOVED};
+
+ PointInfo (double x, double y, bool oncurve) : coords(std::round(x), std::round(y)), state(oncurve ? ONCURVE : OFFCURVE) {}
+ PointInfo (int x, int y) : coords(x, y), state(ONCURVE) {}
+ bool oncurve () const {return state == ONCURVE;}
+ bool offcurve () const {return state == OFFCURVE;}
+ bool removed () const {return state == REMOVED;}
+ void markForRemoval () {state = REMOVED;}
+ Pair<int> coords; ///< relative coordinates to previous one in contour
+ State state;
+};
+
+
+class Contour {
+ friend class GlyfTable;
+ using Iterator = std::vector<PointInfo>::iterator;
+ using ConstIterator = std::vector<PointInfo>::const_iterator;
+ public:
+ Contour () =default;
+ Contour (Contour &&contour) =default;
+ Contour (std::list<Contour> &&contours);
+ Contour (const Contour &contour) =delete;
+ Iterator begin () {return _pointInfos.begin();}
+ Iterator end () {return _pointInfos.end();}
+ ConstIterator begin () const {return _pointInfos.begin();}
+ ConstIterator end () const {return _pointInfos.end();}
+ size_t numPoints () const {return _pointInfos.size();}
+ const PointInfo& operator [] (size_t pos) const {return _pointInfos[pos];}
+ bool empty () const {return _pointInfos.empty();}
+ std::vector<uint8_t> glyphFlags () const;
+ void reverse ();
+ void reduceNumberOfPoints ();
+ void append (PointInfo &&pinfo) {_pointInfos.emplace_back(std::move(pinfo));}
+ void reserve (size_t n) {_pointInfos.reserve(n);}
+
+ protected:
+ void convertAbsoluteToRelative ();
+#ifdef TTFDEBUG
+ void writePS (std::ostream &os) const;
+#endif
+
+ private:
+ std::vector<PointInfo> _pointInfos;
+};
+
+
+/** This class provides the functions required to write the glyf data table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/glyf.htm */
+class GlyfTable : public TTFTable {
+ public:
+ uint32_t tag () const override {return name2id("glyf");}
+ void write (std::ostream &os) const override;
+
+ protected:
+ std::vector<Contour> computeContours () const;
+ std::list<Contour> computeContours (uint32_t charcode) const;
+ static void computeBbox (const std::list<Contour> &contours, int &xmin, int &ymin, int &xmax, int &ymax);
+ size_t writeGlyphContours (std::ostream &os, uint32_t charcode) const;
+// Contour getNotDefContour () const;
+#ifdef TTFDEBUG
+ void writePS (std::ostream &os, const std::list<Contour> &contours, uint32_t charcode) const;
+#endif
+};
+
+} // namespace ttf \ No newline at end of file
diff --git a/dviware/dvisvgm/src/ttf/HeadTable.cpp b/dviware/dvisvgm/src/ttf/HeadTable.cpp
new file mode 100644
index 0000000000..fff759898a
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/HeadTable.cpp
@@ -0,0 +1,78 @@
+/*************************************************************************
+** HeadTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <cmath>
+#include <chrono>
+#include <ctime>
+#include <utility>
+#include "HeadTable.hpp"
+#include "TTFWriter.hpp"
+
+using namespace std;
+using namespace ttf;
+
+
+void HeadTable::updateGlobalBbox (int16_t xmin, int16_t ymin, int16_t xmax, int16_t ymax) {
+ if (xmin < _xMin) _xMin = xmin;
+ if (ymin < _yMin) _yMin = ymin;
+ if (xmax > _xMax) _xMax = xmax;
+ if (ymax > _yMax) _yMax = ymax;
+}
+
+
+/** Returns the number of seconds elapsed since 1.1.1904 00:00:00 until now.
+ * @return number of seconds separated in upper and lower dword of a 64-bit value */
+static pair<uint32_t,uint32_t> seconds_since_1904 () {
+ auto now = chrono::system_clock::now();
+ time_t now_time = chrono::system_clock::to_time_t(now);
+ struct tm *comp = gmtime(&now_time);
+ util::Date date1(1904, 1, 1);
+ util::Date date2(comp->tm_year+1900, comp->tm_mon+1, comp->tm_mday);
+ uint64_t days = date2 - date1 - 1;
+ uint64_t seconds = ((days*24 + comp->tm_hour)*60 + comp->tm_min)*60 + comp->tm_sec;
+ return {uint32_t(seconds >> 32), uint32_t(seconds & 0xffffffff)};
+}
+
+
+/** Writes the head table to a given output stream.
+ * https://docs.microsoft.com/en-us/typography/opentype/spec/head */
+void HeadTable::write (ostream &os) const {
+ writeUInt16(os, 1); // major version
+ writeUInt16(os, 0); // minor version
+ writeUInt32(os, 0x10000); // font revision (1.0)
+ writeUInt32(os, 0); // global checksum, computed and set by TTFWriter
+ writeUInt32(os, 0x5F0F3CF5); // magic number
+ writeUInt16(os, 1+2); // flags (baseline at y=0, left sidebearing point at x=0)
+ writeUInt16(os, uint16_t(std::round(ttfWriter()->targetUnitsPerEm())));
+ auto seconds = seconds_since_1904();
+ writeUInt32(os, seconds.first); // creation time, upper dword
+ writeUInt32(os, seconds.second); // creation time, lower dword
+ writeUInt32(os, seconds.first); // modification time, upper dword
+ writeUInt32(os, seconds.second); // modification time, lower dword
+ writeInt16(os, _xMin);
+ writeInt16(os, _yMin);
+ writeInt16(os, _xMax);
+ writeInt16(os, _yMax);
+ writeUInt16(os, 0); // macStyle
+ writeUInt16(os, 8); // smallest readable size in pixels
+ writeInt16(os, 2); // fontDirectionHint (deprecated, always 2)
+ writeInt16(os, _indexToLocFormat);
+ writeInt16(os, 0); // glyphDataFormat
+}
diff --git a/dviware/dvisvgm/src/ttf/HeadTable.hpp b/dviware/dvisvgm/src/ttf/HeadTable.hpp
new file mode 100644
index 0000000000..6c51957ba0
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/HeadTable.hpp
@@ -0,0 +1,49 @@
+/*************************************************************************
+** HeadTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+
+#include <limits>
+#include "TTFTable.hpp"
+
+namespace ttf {
+
+/** This class provides the functions required to write the font header table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/head.htm */
+class HeadTable : public TTFTable {
+ friend class TTFWriter;
+ public:
+ uint32_t tag () const override {return name2id("head");}
+ void updateGlobalBbox (int16_t xmin, int16_t ymin, int16_t xmax, int16_t ymax);
+ void write (std::ostream &os) const override;
+ static int offsetToChecksum () {return 2+2+4;}
+
+ protected:
+ void setLongOffsetFormat () {_indexToLocFormat = 1;}
+
+ private:
+ int16_t _xMin = std::numeric_limits<int16_t>::max();
+ int16_t _yMin = std::numeric_limits<int16_t>::max();
+ int16_t _xMax = std::numeric_limits<int16_t>::min();
+ int16_t _yMax = std::numeric_limits<int16_t>::min();
+ int16_t _indexToLocFormat = 0; // 0: short (16-bit) format, 1: long (32-bit) format
+};
+
+} // namespace ttf
diff --git a/dviware/dvisvgm/src/ttf/HheaTable.cpp b/dviware/dvisvgm/src/ttf/HheaTable.cpp
new file mode 100644
index 0000000000..76a41d86da
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/HheaTable.cpp
@@ -0,0 +1,67 @@
+/*************************************************************************
+** HheaTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include "HheaTable.hpp"
+#include "TTFWriter.hpp"
+#include "../Font.hpp"
+
+using namespace std;
+using namespace ttf;
+
+
+void HheaTable::write (ostream &os) const {
+ const PhysicalFont &font = ttfWriter()->getFont();
+ double scale = ttfWriter()->unitsPerEmFactor();
+ writeUInt16(os, 1); // major version
+ writeUInt16(os, 0); // minor version
+ writeInt16(os, round(font.ascent()*scale));
+ writeInt16(os, round(-font.descent()*scale));
+ writeInt16(os, 0); // line gap
+ writeUInt16(os, _advanceWidthMax);
+ writeInt16(os, _minLeftSideBearing);
+ writeInt16(os, _minRightSideBearing);
+ writeInt16(os, _xMaxExtent);
+ writeInt16(os, 1); // caretSlopeRise (1 = vertical)
+ writeInt16(os, 0); // caretSlopeRun (0 = vertical)
+ writeInt16(os, 0); // caretOffset
+ writeInt16(os, 0); // reserved
+ writeInt16(os, 0); // reserved
+ writeInt16(os, 0); // reserved
+ writeInt16(os, 0); // reserved
+ writeInt16(os, 0); // metricDataFormat (always 0)
+ writeUInt16(os, _numberOfHMetrics);
+}
+
+
+void HheaTable::updateXMinMax (uint32_t c, int16_t xmin, int16_t xmax) {
+ const PhysicalFont &font = ttfWriter()->getFont();
+ double extend = font.style() ? font.style()->extend : 1;
+ double scale = ttfWriter()->unitsPerEmFactor();
+ int16_t advance = (c == 0 ? xmax : round(scale*extend*font.hAdvance(c)));
+ _xMaxExtent = max(_xMaxExtent, xmax);
+ _minLeftSideBearing = min(_minLeftSideBearing, xmin);
+ _minRightSideBearing = min(_minRightSideBearing, int16_t(advance-xmax));
+}
+
+
+void HheaTable::updateAdvanceWidth (uint16_t w, uint16_t numberOfHMetrics) {
+ _advanceWidthMax = max(_advanceWidthMax, w);
+ _numberOfHMetrics = numberOfHMetrics;
+}
diff --git a/dviware/dvisvgm/src/ttf/HheaTable.hpp b/dviware/dvisvgm/src/ttf/HheaTable.hpp
new file mode 100644
index 0000000000..56fc1ddc4e
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/HheaTable.hpp
@@ -0,0 +1,47 @@
+/*************************************************************************
+** HheaTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+#include <limits>
+#include "TTFTable.hpp"
+
+namespace ttf {
+
+/** This class provides the functions required to write the horizontal header table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/hhea.htm */
+class HheaTable : public TTFTable {
+ friend class TTFWriter;
+ public:
+ uint32_t tag () const override {return name2id("hhea");}
+ void write (std::ostream &os) const override;
+
+ protected:
+ void updateXMinMax (uint32_t c, int16_t xmin, int16_t xmax);
+ void updateAdvanceWidth (uint16_t w, uint16_t numberOfHMetrics);
+
+ private:
+ uint16_t _advanceWidthMax = 0;
+ int16_t _minLeftSideBearing = std::numeric_limits<int16_t>::max();
+ int16_t _minRightSideBearing = std::numeric_limits<int16_t>::max();
+ int16_t _xMaxExtent = std::numeric_limits<int16_t>::min();
+ uint16_t _numberOfHMetrics = 0;
+};
+
+} // namespace ttf
diff --git a/dviware/dvisvgm/src/ttf/HmtxTable.cpp b/dviware/dvisvgm/src/ttf/HmtxTable.cpp
new file mode 100644
index 0000000000..6e849768fd
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/HmtxTable.cpp
@@ -0,0 +1,62 @@
+/*************************************************************************
+** HmtxTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <cmath>
+#include "HmtxTable.hpp"
+#include "TTFWriter.hpp"
+#include "../Font.hpp"
+
+using namespace std;
+using namespace ttf;
+
+void HmtxTable::write (ostream &os) const {
+ auto runStart = _widthInfos.end();
+ if (!_widthInfos.empty())
+ runStart -= _runLengthOfAdvWidth-1;
+ // write longHorMetrics up to the beginning of the repeating
+ // advance widths at the end of the container
+ for (auto it = _widthInfos.begin(); it != runStart; ++it) {
+ writeUInt16(os, it->advWidth);
+ writeInt16(os, it->lsb);
+ }
+ // write the trailing left side bearings
+ for (; runStart != _widthInfos.end(); ++runStart)
+ writeInt16(os, runStart->lsb);
+}
+
+
+void HmtxTable::updateWidthData (uint32_t c, int16_t xmin, int16_t xmax) {
+ const PhysicalFont &font = ttfWriter()->getFont();
+ double extend = font.style() ? font.style()->extend : 1;
+ double scale = ttfWriter()->unitsPerEmFactor();
+ int16_t w = (c == 0 ? xmax : int16_t(round(scale*extend*font.hAdvance(c))));
+ if (_isFixedPitch && c > 0 && w != _width) {
+ if (_width == 0)
+ _width = w;
+ else
+ _isFixedPitch = false;
+ }
+ if (_widthInfos.empty() || w == _widthInfos.back().advWidth)
+ _runLengthOfAdvWidth++;
+ else
+ _runLengthOfAdvWidth = 1;
+ _widthInfos.emplace_back(CharWidthInfo(xmin, w));
+ ttfWriter()->updateGlobalAdvanceWidth(w, _widthInfos.size()-_runLengthOfAdvWidth+1);
+} \ No newline at end of file
diff --git a/dviware/dvisvgm/src/ttf/HmtxTable.hpp b/dviware/dvisvgm/src/ttf/HmtxTable.hpp
new file mode 100644
index 0000000000..95c9eba513
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/HmtxTable.hpp
@@ -0,0 +1,52 @@
+/*************************************************************************
+** HmtxTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+
+#include <vector>
+#include "TTFTable.hpp"
+
+namespace ttf {
+
+/** This class provides the functions required to write the horizontal metrics table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/hmtx.htm */
+class HmtxTable : public TTFTable {
+ friend TTFWriter;
+ struct CharWidthInfo {
+ CharWidthInfo (int16_t l, int16_t w) : lsb(l), advWidth(w) {}
+ uint16_t lsb; // left side bearing
+ uint16_t advWidth; // unscaled advance width
+ };
+ public:
+ uint32_t tag () const override {return name2id("hmtx");}
+ void write (std::ostream &os) const override;
+ bool isFixedPitch () const {return _isFixedPitch;}
+
+ protected:
+ void updateWidthData (uint32_t c, int16_t xmin, int16_t xmax);
+
+ private:
+ std::vector<CharWidthInfo> _widthInfos;
+ size_t _runLengthOfAdvWidth=0; // number of identical advWidth values at end of _widthInfos
+ bool _isFixedPitch=true;
+ int16_t _width=0;
+};
+
+} // namespace ttf
diff --git a/dviware/dvisvgm/src/ttf/LocaTable.hpp b/dviware/dvisvgm/src/ttf/LocaTable.hpp
new file mode 100644
index 0000000000..8ff51a7bb1
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/LocaTable.hpp
@@ -0,0 +1,56 @@
+/*************************************************************************
+** LocaTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+
+#include <vector>
+#include "TTFTable.hpp"
+
+namespace ttf {
+
+/** This class provides the functions required to write the loca table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/loca.htm */
+class LocaTable : public TTFTable {
+ friend class TTFWriter;
+ public:
+ uint32_t tag () const override {return name2id("loca");}
+
+ void write (std::ostream &os) const override {
+ for (uint32_t offs : _offsets) {
+ if (_isShortFormat)
+ writeUInt16(os, offs/2);
+ else
+ writeUInt32(os, offs);
+ }
+ }
+
+ protected:
+ void addOffset (uint32_t offset) {
+ _offsets.push_back(offset);
+ if (offset/2 > 0xFFFF)
+ _isShortFormat = false;
+ }
+
+ private:
+ bool _isShortFormat=true;
+ std::vector<uint32_t> _offsets;
+};
+
+} // namespace ttf
diff --git a/dviware/dvisvgm/src/ttf/Makefile.am b/dviware/dvisvgm/src/ttf/Makefile.am
new file mode 100644
index 0000000000..60883f64cc
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/Makefile.am
@@ -0,0 +1,25 @@
+noinst_LTLIBRARIES = libttf.la
+
+libttf_la_SOURCES = \
+ CmapTable.hpp CmapTable.cpp \
+ GlyfTable.hpp GlyfTable.cpp \
+ HeadTable.hpp HeadTable.cpp \
+ HheaTable.hpp HheaTable.cpp \
+ HmtxTable.hpp HmtxTable.cpp \
+ LocaTable.hpp MaxpTable.cpp \
+ MaxpTable.hpp NameTable.cpp \
+ NameTable.hpp OS2Table.cpp \
+ OS2Table.hpp PostTable.cpp \
+ PostTable.hpp \
+ TTFAutohint.hpp TTFAutohint.cpp \
+ TTFTable.hpp TTFTable.cpp \
+ TTFWriter.hpp TTFWriter.cpp \
+ VheaTable.hpp VheaTable.cpp \
+ VmtxTable.hpp VmtxTable.cpp
+
+include ../../libs/defs.am
+
+AM_CXXFLAGS = \
+ -I$(dvisvgm_srcdir)/libs/boost \
+ -I$(dvisvgm_srcdir)/libs/variant/include \
+ $(BROTLI_CFLAGS) $(WOFF2_CFLAGS)
diff --git a/dviware/dvisvgm/src/ttf/Makefile.in b/dviware/dvisvgm/src/ttf/Makefile.in
new file mode 100644
index 0000000000..b3e1721d82
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/Makefile.in
@@ -0,0 +1,743 @@
+# Makefile.in generated by automake 1.16.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2021 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+@HAVE_BROTLI_FALSE@am__append_1 = -I$(dvisvgm_srcdir)/libs/brotli/include
+@HAVE_BROTLI_FALSE@am__append_2 = ../libs/brotli/libbrotli.a
+@HAVE_WOFF2_FALSE@am__append_3 = -I$(dvisvgm_srcdir)/libs/woff2/include
+@HAVE_WOFF2_FALSE@am__append_4 = ../libs/woff2/libwoff2.a
+subdir = src/ttf
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+LTLIBRARIES = $(noinst_LTLIBRARIES)
+libttf_la_LIBADD =
+am_libttf_la_OBJECTS = CmapTable.lo GlyfTable.lo HeadTable.lo \
+ HheaTable.lo HmtxTable.lo MaxpTable.lo NameTable.lo \
+ OS2Table.lo PostTable.lo TTFAutohint.lo TTFTable.lo \
+ TTFWriter.lo VheaTable.lo VmtxTable.lo
+libttf_la_OBJECTS = $(am_libttf_la_OBJECTS)
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/CmapTable.Plo \
+ ./$(DEPDIR)/GlyfTable.Plo ./$(DEPDIR)/HeadTable.Plo \
+ ./$(DEPDIR)/HheaTable.Plo ./$(DEPDIR)/HmtxTable.Plo \
+ ./$(DEPDIR)/MaxpTable.Plo ./$(DEPDIR)/NameTable.Plo \
+ ./$(DEPDIR)/OS2Table.Plo ./$(DEPDIR)/PostTable.Plo \
+ ./$(DEPDIR)/TTFAutohint.Plo ./$(DEPDIR)/TTFTable.Plo \
+ ./$(DEPDIR)/TTFWriter.Plo ./$(DEPDIR)/VheaTable.Plo \
+ ./$(DEPDIR)/VmtxTable.Plo
+am__mv = mv -f
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CXXFLAGS) $(CXXFLAGS)
+AM_V_CXX = $(am__v_CXX_@AM_V@)
+am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
+am__v_CXX_0 = @echo " CXX " $@;
+am__v_CXX_1 =
+CXXLD = $(CXX)
+CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+ $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
+am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
+am__v_CXXLD_0 = @echo " CXXLD " $@;
+am__v_CXXLD_1 =
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo " CC " $@;
+am__v_CC_1 =
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
+SOURCES = $(libttf_la_SOURCES)
+DIST_SOURCES = $(libttf_la_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
+am__DIST_COMMON = $(srcdir)/../../libs/defs.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/depcomp
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_CPPFLAGS = @AM_CPPFLAGS@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AM_LDFLAGS = @AM_LDFLAGS@
+AR = @AR@
+ASCIIDOC = @ASCIIDOC@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BROTLI_CFLAGS = @BROTLI_CFLAGS@ $(am__append_1)
+BROTLI_LIBS = @BROTLI_LIBS@ $(am__append_2)
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
+CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
+CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
+CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
+CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CSCOPE = @CSCOPE@
+CTAGS = @CTAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATE = @DATE@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ETAGS = @ETAGS@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+FILECMD = @FILECMD@
+FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
+FREETYPE_LIBS = @FREETYPE_LIBS@
+GCOV = @GCOV@
+GENHTML = @GENHTML@
+GREP = @GREP@
+HAVE_CXX11 = @HAVE_CXX11@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+KPSE_CFLAGS = @KPSE_CFLAGS@
+KPSE_LIBS = @KPSE_LIBS@
+LCOV = @LCOV@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBCRYPTO_CFLAGS = @LIBCRYPTO_CFLAGS@
+LIBCRYPTO_LIBS = @LIBCRYPTO_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+TTFAUTOHINT_CFLAGS = @TTFAUTOHINT_CFLAGS@
+TTFAUTOHINT_LIBS = @TTFAUTOHINT_LIBS@
+VERSION = @VERSION@
+WOFF2_CFLAGS = @WOFF2_CFLAGS@ $(am__append_3)
+WOFF2_LIBS = @WOFF2_LIBS@ $(am__append_4)
+XMLTO = @XMLTO@
+XSLTPROC = @XSLTPROC@
+ZLIB_CFLAGS = @ZLIB_CFLAGS@
+ZLIB_LIBS = @ZLIB_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+dvisvgm_srcdir = @dvisvgm_srcdir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+noinst_LTLIBRARIES = libttf.la
+libttf_la_SOURCES = \
+ CmapTable.hpp CmapTable.cpp \
+ GlyfTable.hpp GlyfTable.cpp \
+ HeadTable.hpp HeadTable.cpp \
+ HheaTable.hpp HheaTable.cpp \
+ HmtxTable.hpp HmtxTable.cpp \
+ LocaTable.hpp MaxpTable.cpp \
+ MaxpTable.hpp NameTable.cpp \
+ NameTable.hpp OS2Table.cpp \
+ OS2Table.hpp PostTable.cpp \
+ PostTable.hpp \
+ TTFAutohint.hpp TTFAutohint.cpp \
+ TTFTable.hpp TTFTable.cpp \
+ TTFWriter.hpp TTFWriter.cpp \
+ VheaTable.hpp VheaTable.cpp \
+ VmtxTable.hpp VmtxTable.cpp
+
+@HAVE_POTRACE_FALSE@POTRACE_CFLAGS = -I$(dvisvgm_srcdir)/libs/potrace
+@HAVE_POTRACE_FALSE@POTRACE_LIBS = ../libs/potrace/libpotrace.a
+@HAVE_XXHASH_FALSE@XXHASH_CFLAGS = -I$(dvisvgm_srcdir)/libs/xxHash
+@HAVE_XXHASH_FALSE@XXHASH_LIBS = ../libs/xxHash/libxxhash.a
+AM_CXXFLAGS = \
+ -I$(dvisvgm_srcdir)/libs/boost \
+ -I$(dvisvgm_srcdir)/libs/variant/include \
+ $(BROTLI_CFLAGS) $(WOFF2_CFLAGS)
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .cpp .lo .o .obj
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/../../libs/defs.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/ttf/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign src/ttf/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
+ esac;
+$(srcdir)/../../libs/defs.am $(am__empty):
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+clean-noinstLTLIBRARIES:
+ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
+ @list='$(noinst_LTLIBRARIES)'; \
+ locs=`for p in $$list; do echo $$p; done | \
+ sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
+ sort -u`; \
+ test -z "$$locs" || { \
+ echo rm -f $${locs}; \
+ rm -f $${locs}; \
+ }
+
+libttf.la: $(libttf_la_OBJECTS) $(libttf_la_DEPENDENCIES) $(EXTRA_libttf_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libttf_la_OBJECTS) $(libttf_la_LIBADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CmapTable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GlyfTable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HeadTable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HheaTable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HmtxTable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MaxpTable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NameTable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OS2Table.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PostTable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TTFAutohint.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TTFTable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TTFWriter.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/VheaTable.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/VmtxTable.Plo@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+ @$(MKDIR_P) $(@D)
+ @echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
+
+.cpp.o:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
+@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $<
+
+.cpp.obj:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
+@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
+@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.cpp.lo:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
+@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ set x; \
+ here=`pwd`; \
+ $(am__define_uniq_tagged_files); \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+distdir: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(LTLIBRARIES)
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -f ./$(DEPDIR)/CmapTable.Plo
+ -rm -f ./$(DEPDIR)/GlyfTable.Plo
+ -rm -f ./$(DEPDIR)/HeadTable.Plo
+ -rm -f ./$(DEPDIR)/HheaTable.Plo
+ -rm -f ./$(DEPDIR)/HmtxTable.Plo
+ -rm -f ./$(DEPDIR)/MaxpTable.Plo
+ -rm -f ./$(DEPDIR)/NameTable.Plo
+ -rm -f ./$(DEPDIR)/OS2Table.Plo
+ -rm -f ./$(DEPDIR)/PostTable.Plo
+ -rm -f ./$(DEPDIR)/TTFAutohint.Plo
+ -rm -f ./$(DEPDIR)/TTFTable.Plo
+ -rm -f ./$(DEPDIR)/TTFWriter.Plo
+ -rm -f ./$(DEPDIR)/VheaTable.Plo
+ -rm -f ./$(DEPDIR)/VmtxTable.Plo
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f ./$(DEPDIR)/CmapTable.Plo
+ -rm -f ./$(DEPDIR)/GlyfTable.Plo
+ -rm -f ./$(DEPDIR)/HeadTable.Plo
+ -rm -f ./$(DEPDIR)/HheaTable.Plo
+ -rm -f ./$(DEPDIR)/HmtxTable.Plo
+ -rm -f ./$(DEPDIR)/MaxpTable.Plo
+ -rm -f ./$(DEPDIR)/NameTable.Plo
+ -rm -f ./$(DEPDIR)/OS2Table.Plo
+ -rm -f ./$(DEPDIR)/PostTable.Plo
+ -rm -f ./$(DEPDIR)/TTFAutohint.Plo
+ -rm -f ./$(DEPDIR)/TTFTable.Plo
+ -rm -f ./$(DEPDIR)/TTFWriter.Plo
+ -rm -f ./$(DEPDIR)/VheaTable.Plo
+ -rm -f ./$(DEPDIR)/VmtxTable.Plo
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
+ clean-generic clean-libtool clean-noinstLTLIBRARIES \
+ cscopelist-am ctags ctags-am distclean distclean-compile \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags tags-am uninstall uninstall-am
+
+.PRECIOUS: Makefile
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/dviware/dvisvgm/src/ttf/MaxpTable.cpp b/dviware/dvisvgm/src/ttf/MaxpTable.cpp
new file mode 100644
index 0000000000..176c9ffcb0
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/MaxpTable.cpp
@@ -0,0 +1,50 @@
+/*************************************************************************
+** MaxpTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <algorithm>
+#include "MaxpTable.hpp"
+#include "TTFWriter.hpp"
+
+using namespace std;
+using namespace ttf;
+
+void MaxpTable::write (ostream &os) const {
+ writeUInt32(os, 0x10000); // version 1.0, required for TTF fonts
+ writeUInt16(os, ttfWriter()->getUnicodeCharMap().numValues()+1); // number of glyphs including .notdef
+ writeUInt16(os, _maxPoints);
+ writeUInt16(os, _maxContours);
+ writeUInt16(os, 0); // maxCompositePoints
+ writeUInt16(os, 0); // maxCompositeContours
+ writeUInt16(os, 1); // maxZones (1 = don't use twilight zone, 2 otherwise)
+ writeUInt16(os, 0); // maxTwilightPoints
+ writeUInt16(os, 0); // maxStorage
+ writeUInt16(os, 0); // maxFunctionDefs
+ writeUInt16(os, 0); // maxInstructionDefs
+ writeUInt16(os, 0); // maxStackElements
+ writeUInt16(os, 0); // maxSizeOfInstructions
+ writeUInt16(os, 0); // maxComponentElements
+ writeUInt16(os, 0); // maxComponentDepth
+}
+
+
+void MaxpTable::updateContourInfo (uint16_t maxPoints, uint16_t maxContours) {
+ _maxPoints = max(_maxPoints, maxPoints);
+ _maxContours = max(_maxContours, maxContours);
+} \ No newline at end of file
diff --git a/dviware/dvisvgm/src/ttf/MaxpTable.hpp b/dviware/dvisvgm/src/ttf/MaxpTable.hpp
new file mode 100644
index 0000000000..b1a08a1aea
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/MaxpTable.hpp
@@ -0,0 +1,42 @@
+/*************************************************************************
+** MaxpTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+#include "TTFTable.hpp"
+
+namespace ttf {
+
+/** This class provides the functions required to write the maximum profile table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/maxp.htm */
+class MaxpTable : public TTFTable {
+ friend class TTFWriter;
+ public:
+ uint32_t tag () const override {return name2id("maxp");}
+ void write(std::ostream &os) const override;
+
+ protected:
+ void updateContourInfo (uint16_t maxPoints, uint16_t maxContours);
+
+ private:
+ uint16_t _maxPoints=0; ///< maximum number of points used by a contour
+ uint16_t _maxContours=0; ///< maximum number of contours used by a glyph
+};
+
+} // namespace ttf
diff --git a/dviware/dvisvgm/src/ttf/NameTable.cpp b/dviware/dvisvgm/src/ttf/NameTable.cpp
new file mode 100644
index 0000000000..949b6c336c
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/NameTable.cpp
@@ -0,0 +1,105 @@
+/*************************************************************************
+** NameTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <array>
+#include "NameTable.hpp"
+#include "TTFWriter.hpp"
+#include "../Font.hpp"
+#include "../version.hpp"
+
+using namespace std;
+using namespace ttf;
+
+enum NameID {
+ COPYRIGHT_NOTICE = 0,
+ FONT_FAMILY = 1,
+ FONT_SUBFAMILY = 2,
+ FONT_ID = 3,
+ FULL_FONT_NAME = 4,
+ VERSION_STRING = 5,
+ PS_NAME = 6,
+ TRADEMARK = 7,
+ MANUFACTURER_NAME = 8,
+ DESIGNER = 9,
+ DESCRIPTION = 10,
+ URL_VENDOR = 11,
+ URL_DESIGNER = 12,
+ LICENSE_DESCRIPTION = 13,
+ LICENSE_INFO_URL = 14,
+ TYPOGRAPHIC_FAMILY_NAME = 16,
+ TYPOGRAPHIC_SUBFAMILY_NAME = 17,
+ COMPATIBLE_FULL = 18,
+ SAMPLE_TEXT = 19,
+ PS_CID_FINDFONT_NAME = 20,
+ WWS_FAMILY_NAME = 21,
+ WWS_SUBFAMILY_NAME = 22,
+ LIGHT_BG_PALLETTE = 23,
+ DARK_BG_PALLETTE = 24,
+ VAR_PS_NAME_PREFIX = 25
+};
+
+
+void NameTable::write (ostream &os) const {
+ struct NameEntry {
+ NameID nameID;
+ std::string name;
+ };
+ array<NameEntry,5> nameEntries {{
+ {FONT_FAMILY, ttfWriter()->getFont().familyName()},
+ {FULL_FONT_NAME, ttfWriter()->getFont().name()},
+ {VERSION_STRING, string("Version 1.0")},
+ {PS_NAME, ttfWriter()->getFont().name()},
+ {DESCRIPTION, string("Generated by ")+PROGRAM_NAME+" "+PROGRAM_VERSION}
+ }};
+ writeUInt16(os, 0); // table format
+ writeUInt16(os, 2*nameEntries.size()); // number of name records
+ writeUInt16(os, 6+2*12*nameEntries.size()); // offset to start of string storage
+ size_t offset=0;
+ // write name entry records ordered by platform ID
+ for (const NameEntry &entry : nameEntries) {
+ writeUInt16(os, 1); // Mac
+ writeUInt16(os, 0); // Roman, UTF-8 encoding
+ writeUInt16(os, 0); // English
+ writeUInt16(os, entry.nameID);
+ writeUInt16(os, entry.name.length());
+ writeUInt16(os, offset);
+ offset += entry.name.length();
+ }
+ for (const NameEntry &entry : nameEntries) {
+ writeUInt16(os, 3); // Windows
+ writeUInt16(os, 1); // UCS-2 encoding
+ writeUInt16(os, 0x0409); // US English
+ writeUInt16(os, entry.nameID);
+ writeUInt16(os, 2*entry.name.length());
+ writeUInt16(os, offset);
+ offset += 2*entry.name.length();
+ }
+ // write string data
+ for (const NameEntry &entry : nameEntries) {
+ for (char c : entry.name)
+ writeUInt8(os, c);
+ }
+ for (const NameEntry &entry : nameEntries) {
+ for (char c : entry.name) {
+ writeUInt8(os, 0);
+ writeUInt8(os, c);
+ }
+ }
+}
diff --git a/dviware/dvisvgm/src/ttf/NameTable.hpp b/dviware/dvisvgm/src/ttf/NameTable.hpp
new file mode 100644
index 0000000000..78262ed927
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/NameTable.hpp
@@ -0,0 +1,37 @@
+/*************************************************************************
+** NameTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+
+#include <string>
+#include <vector>
+#include "TTFTable.hpp"
+
+namespace ttf {
+
+/** This class provides the functions required to write the naming table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/name.htm */
+class NameTable : public TTFTable {
+ public:
+ uint32_t tag () const override {return name2id("name");}
+ void write (std::ostream &os) const override;
+};
+
+} // namespace ttf \ No newline at end of file
diff --git a/dviware/dvisvgm/src/ttf/OS2Table.cpp b/dviware/dvisvgm/src/ttf/OS2Table.cpp
new file mode 100644
index 0000000000..4ce5ff613b
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/OS2Table.cpp
@@ -0,0 +1,246 @@
+/*************************************************************************
+** OS2Table.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <algorithm>
+#include <array>
+#include <cmath>
+#include <vector>
+#include "OS2Table.hpp"
+#include "TTFWriter.hpp"
+#include "../Font.hpp"
+
+using namespace std;
+using namespace ttf;
+
+
+/** Returns the average width of all non-zero width glyphs.
+ * https://docs.microsoft.com/en-us/typography/opentype/spec/os2#acw */
+int16_t OS2Table::averageCharWidth () const {
+ const RangeMap &charmap = ttfWriter()->getUnicodeCharMap();
+ if (charmap.empty())
+ return 0;
+ int sum=ttfWriter()->hAdvance(0); // width of .notdef character
+ int count=1;
+ for (auto uc2charcode : charmap) {
+ int c = int(uc2charcode.second);
+ if (int w = ttfWriter()->hAdvance(c)) {
+ sum += w;
+ count++;
+ }
+ }
+ return int16_t(double(sum)/count);
+}
+
+static vector<uint32_t> compute_unicode_range_bits (const RangeMap &charmap);
+
+
+void OS2Table::write (ostream &os) const {
+ const PhysicalFont &font = ttfWriter()->getFont();
+ int upem = ttfWriter()->targetUnitsPerEm();
+ double scale = ttfWriter()->unitsPerEmFactor();
+ const RangeMap &charmap = ttfWriter()->getUnicodeCharMap();
+
+ writeUInt16(os, 3); // table version
+ writeInt16(os, averageCharWidth()); // average char width
+ writeUInt16(os, 400); // usWeightClass, "normal" for now
+ writeUInt16(os, 5); // usWidthClass, "medium" for now
+ writeUInt16(os, 0); // fsType
+ writeInt16(os, round(0.65*upem)); // ySubscriptXSize
+ writeInt16(os, round(0.7*upem)); // ySubscriptYSize
+ writeInt16(os, round(-0.48*upem)); // ySubscriptXOffset
+ writeInt16(os, round(0.14*upem)); // ySubscriptYOffset
+ writeInt16(os, round(0.65*upem)); // ySuperscriptXSize
+ writeInt16(os, round(0.7*upem)); // ySuperscriptYSize
+ writeInt16(os, round(0.48*upem)); // ySuperscriptXOffset
+ writeInt16(os, round(0.48*upem)); // ySuperscriptYOffset
+ writeInt16(os, 102*upem/2048); // yStrikeoutSize
+ writeInt16(os, 530*upem/2048); // yStrikeoutPosition
+ writeInt16(os, 0); // sFamilyClass (no classification)
+ for (uint8_t p : {0, 0, 6, 0, 0, 0, 0, 0, 0, 0}) // Panose
+ writeUInt8(os, p);
+ for (uint32_t bits : compute_unicode_range_bits(charmap))
+ writeUInt32(os, bits);
+ writeUInt32(os, name2id("dsvg"));
+ writeUInt16(os, 6); // fsSelection, "regular" for now
+ writeUInt16(os, min(charmap.minKey(), uint32_t(0xFFFF))); // usFirstCharIndex
+ writeUInt16(os, min(charmap.maxKey(), uint32_t(0xFFFF))); // usLastCharIndex
+ writeInt16(os, round(scale*font.ascent())); // sTypoAscender
+ writeInt16(os, round(-scale*font.descent())); // sTypoDescender
+ writeInt16(os, 0); // sTypoLineGap
+ writeUInt16(os, round(scale*font.ascent()));
+ writeUInt16(os, round(scale*font.descent()));
+ writeUInt32(os, 1); // ulCodePageRange1, "Latin 1" for now
+ writeUInt32(os, 0); // ulCodePageRange2
+ writeInt16(os, 0); // sxHeight
+ writeInt16(os, charmap.valueExists(0x48) ? 0x48 : 0); // sCapHeight
+ writeUInt16(os, 0); // usDefaultChar
+ writeUInt16(os, charmap.valueExists(0x20) ? 0x20 : 0xffff); // usBreakChar (space or .notdef)
+ writeUInt16(os, 0); // usMaxContext
+}
+
+#if 0
+void OS2Table::updateYMinMax (int16_t ymin, int16_t ymax) {
+ _usWinAscent = max(_usWinAscent, uint16_t(ymax));
+ _usWinDescent = max(_usWinDescent, uint16_t(ymin < 0 ? -ymin : 0));
+}
+#endif
+
+
+/** Returns the bit number denoting the Unicode range for a codepoint according to
+ * the OS/2 table specification. If there's no matching range for the codepoint,
+ * the function returns -1. Currently, only the ranges specified by OS/2 table
+ * version 1 are considered. */
+static int unicode_range_bit (uint32_t codepoint) {
+ struct UCRange {
+ UCRange (uint32_t cp) : first(cp), last(cp), os2bit(0) {}
+ UCRange (uint32_t cp1, uint32_t cp2, int bit) : first(cp1), last(cp2), os2bit(bit) {}
+ uint32_t first, last;
+ int os2bit;
+ };
+ // Unicode ranges according to http://unicode.org/Public/UNIDATA/Blocks.txt
+ static array<UCRange, 100> ucranges {{
+ {0x00020, 0x0007E, 0}, // Basic Latin
+ {0x000A0, 0x000FF, 1}, // Latin-1 Supplement
+ {0x00100, 0x0017F, 2}, // Latin Extended-A
+ {0x00180, 0x0024F, 3}, // Latin Extended-B
+ {0x00250, 0x002AF, 4}, // IPA Extensions
+ {0x002B0, 0x002FF, 5}, // Spacing Modifier Letters
+ {0x00300, 0x0036F, 6}, // Combining Diacritical Marks
+ {0x00370, 0x003FF, 7}, // Greek and Coptic
+ {0x00400, 0x0052F, 9}, // Cyrillic / Cyrillic Supplement
+ {0x00530, 0x0058F, 10}, // Armenian
+ {0x00590, 0x005FF, 11}, // Hebrew
+ {0x00600, 0x006FF, 13}, // Arabic
+ {0x00700, 0x0074F, 71}, // Syriac
+ {0x00750, 0x0077F, 13}, // Arabic Supplement
+ {0x00780, 0x007BF, 72}, // Thaana
+ {0x007C0, 0x007FF, 14}, // N'Ko
+ {0x00800, 0x0083F, 12}, // Samaritan
+ {0x00900, 0x0097F, 15}, // Devanagari
+ {0x00980, 0x009FF, 16}, // Bengali
+ {0x00A00, 0x00A7F, 17}, // Gurmukhi
+ {0x00A80, 0x00AFF, 18}, // Gujarati
+ {0x00B00, 0x00B7F, 19}, // Oriya
+ {0x00B80, 0x00BFF, 20}, // Tamil
+ {0x00C00, 0x00C7F, 21}, // Telugu
+ {0x00C80, 0x00CFF, 22}, // Kannada
+ {0x00D00, 0x00D7F, 23}, // Malayalam
+ {0x00E00, 0x00E7F, 24}, // Thai
+ {0x00E80, 0x00EFF, 25}, // Lao
+ {0x010A0, 0x010FF, 26}, // Georgian
+ {0x01100, 0x011FF, 28}, // Hangul Jamo
+ {0x01B00, 0x01B7F, 27}, // Balinese
+ {0x01D00, 0x01DBF, 4}, // Phonetic Extensions & Supplement
+ {0x01D80, 0x01DFF, 6}, // Combining Diacritical Marks Supplement
+ {0x01E00, 0x01EFF, 29}, // Latin Extended Additional
+ {0x01F00, 0x01FFF, 30}, // Greek Extended
+ {0x02000, 0x0206F, 31}, // General Punctuation
+ {0x02070, 0x0209F, 32}, // Superscripts and Subscripts
+ {0x020A0, 0x020CF, 33}, // Currency Symbols
+ {0x020D0, 0x020FF, 34}, // Combining Marks for Symbols
+ {0x02100, 0x0214F, 35}, // Letterlike Symbols
+ {0x02150, 0x0218F, 36}, // Number Forms
+ {0x02190, 0x021FF, 37}, // Arrows
+ {0x02200, 0x022FF, 38}, // Mathematical Operators
+ {0x02300, 0x0237F, 39}, // Miscellaneous Technical
+ {0x02400, 0x0243F, 40}, // Control Pictures
+ {0x02440, 0x0245F, 41}, // Optical Character Recognition
+ {0x02460, 0x024FF, 42}, // Enclosed Alphanumerics
+ {0x02500, 0x0257F, 43}, // Box Drawing
+ {0x02580, 0x0259F, 44}, // Block Elements
+ {0x025A0, 0x025FF, 45}, // Geometric Shapes
+ {0x02600, 0x0267F, 46}, // Miscellaneous Symbols
+ {0x02700, 0x027BF, 47}, // Dingbats
+ {0x027C0, 0x027EF, 38}, // Miscellaneous Mathematical Symbols-A
+ {0x027F0, 0x027FF, 37}, // Supplementary Arrows-A
+ {0x02800, 0x028FF, 82}, // Braille Patterns
+ {0x02900, 0x0297F, 37}, // Supplementary Arrows-B
+ {0x02980, 0x02AFF, 38}, // Miscellaneous Mathematical Symbols-B + Supplemental Mathematical Operators
+ {0x02B00, 0x02BFF, 37}, // Miscellaneous Symbols and Arrows
+ {0x02C60, 0x02C7F, 29}, // Latin Extended-C
+ {0x02C80, 0x02CFF, 8}, // Coptic
+ {0x02D00, 0x02D25, 26}, // Georgian Supplement
+ {0x02DE0, 0x02DFF, 9}, // Cyrillic Extended-A
+ {0x02E00, 0x02E7F, 31}, // Supplemental Punctuation
+ {0x02E80, 0x02FFF, 59}, // CJK Radicals Supplement + Kangxi Radicals + Ideographic Description Characters
+ {0x03000, 0x0303F, 48}, // CJK Symbols and Punctuation
+ {0x03040, 0x0309F, 49}, // Hiragana
+ {0x030A0, 0x030FF, 50}, // Katakana
+ {0x03100, 0x0312F, 51}, // Bopomofo
+ {0x03130, 0x0318F, 52}, // Hangul Compatibility Jamo
+ {0x03190, 0x0319F, 59}, // Kanbun
+ {0x031A0, 0x031BF, 51}, // Bopomofo Extended
+ {0x031F0, 0x031FF, 50}, // Katakana Phonetic Extensions
+ {0x03200, 0x032FF, 54}, // Enclosed CJK Letters and Months
+ {0x03300, 0x033FF, 55}, // CJK compatability
+ {0x03400, 0x04DBF, 59}, // CJK Unified Ideographs Extension A
+ {0x04E00, 0x09FFF, 59}, // CJK Unified Ideographs
+ {0x0A500, 0x0A62B, 12}, // Vai
+ {0x0A640, 0x0A69F, 9}, // Cyrillic Extended-B
+ {0x0A700, 0x0A71F, 5}, // Modifier Tone Letters
+ {0x0A720, 0x0A7FF, 29}, // Latin Extended-D
+ {0x0A840, 0x0A87F, 53}, // Phags-pa
+ {0x0AC00, 0x0D7AF, 56}, // Hangul Syllables
+ {0x0D800, 0x0DFFF, 57}, // Non-Plane 0
+ {0x0E000, 0x0F8FF, 60}, // Private Use Area
+ {0x0F900, 0x0FAFF, 61}, // CJK Compatibility Ideographs
+ {0x0FA2A, 0x0FAFF, 61}, // CJK Compatibility Ideographs
+ {0x0FB00, 0x0FB4F, 62}, // Alphabetic Presentation Forms
+ {0x0FB50, 0x0FDFF, 63}, // Arabic Presentation Forms-A
+ {0x0FE00, 0x0FE0F, 91}, // Variation Selectors
+ {0x0FE20, 0x0FE2F, 64}, // Combining Half Marks
+ {0x0FE30, 0x0FE4F, 65}, // CJK Compatibility Forms
+ {0x0FE50, 0x0FE6F, 66}, // Small Form Variants
+ {0x0FE70, 0x0FEEF, 67}, // Arabic Presentation Forms-B
+ {0x0FF00, 0x0FFEF, 68}, // Halfwidth and Fullwidth Forms
+ {0x0FFF0, 0x0FFFF, 69}, // Specials
+ {0x10900, 0x1091F, 58}, // Phoenician
+ {0x20000, 0x2A6DF, 59}, // CJK Unified Ideographs Extension B
+ {0x2A700, 0x2B73F, 59}, // CJK Unified Ideographs Extension C
+ {0x2B740, 0x2B81F, 59}, // CJK Unified Ideographs Extension D
+ {0x2F800, 0x2FA1F, 61}, // CJK Compatibility Ideographs Supplement
+ }};
+ auto it = lower_bound(ucranges.begin(), ucranges.end(), UCRange(codepoint), [](const UCRange &r1, const UCRange &r2) {
+ return r1.last < r2.first;
+ });
+ if (it != ucranges.end() && codepoint >= it->first && codepoint <= it->last)
+ return it->os2bit;
+ return -1;
+}
+
+
+/** Returns the Unicode ranges encompassed by the font. The ranges are encoded by four dwords,
+ * where each of the 128 bits represents a certain range. The returned vector contains the
+ * dwords in little-endian order, i.e. [bits 0-31, bits 32-63, bits 64-95, bits 96-127]. */
+static vector<uint32_t> compute_unicode_range_bits (const RangeMap &charmap) {
+ vector<uint32_t> rangeBits(4, 0);
+ for (auto uc2charcode : charmap) {
+ int bit = unicode_range_bit(uc2charcode.first);
+ if (bit >= 0) {
+ for (int i=0; i < 4; i++) {
+ if (bit < 32*(i+1)) {
+ rangeBits[i] |= (1 << (bit-32*i));
+ break;
+ }
+ }
+ }
+ }
+ return rangeBits;
+}
diff --git a/dviware/dvisvgm/src/ttf/OS2Table.hpp b/dviware/dvisvgm/src/ttf/OS2Table.hpp
new file mode 100644
index 0000000000..8861fdea7a
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/OS2Table.hpp
@@ -0,0 +1,46 @@
+/*************************************************************************
+** OS2Table.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+
+#include <array>
+#include "TTFTable.hpp"
+
+namespace ttf {
+
+/** This class provides the functions required to write the OS/2 and Windows metrics
+ * table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/os2.htm */
+class OS2Table : public TTFTable {
+ friend class TTFWriter;
+ public:
+ uint32_t tag () const override {return name2id("OS/2");}
+ void write (std::ostream &os) const override;
+
+ protected:
+ int16_t averageCharWidth () const;
+ void updateXMinMax (int16_t xmin, int16_t xmax) {_xmax = xmax;}
+ void updateYMinMax (int16_t ymin, int16_t ymax) {}
+
+ private:
+ int16_t _xmax=0;
+};
+
+} // namespace ttf \ No newline at end of file
diff --git a/dviware/dvisvgm/src/ttf/PostTable.cpp b/dviware/dvisvgm/src/ttf/PostTable.cpp
new file mode 100644
index 0000000000..650faf5467
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/PostTable.cpp
@@ -0,0 +1,63 @@
+/*************************************************************************
+** PostTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include "PostTable.hpp"
+#include "TTFWriter.hpp"
+#include "../Font.hpp"
+
+using namespace std;
+using namespace ttf;
+
+#if 0
+/** Writes a string in Pascal format to an output stream. The string should not be
+ * longer than 255 characters. Otherwise, it's truncated accordingly. */
+static void write_pascal_string (ostream &os, const string &str) {
+ size_t len = std::min(str.length(), size_t(255));
+ writeUInt8(os, len); // first byte determines the string length
+ for (size_t i=0; i < len; i++)
+ writeUInt8(os, str[i]);
+}
+#endif
+
+
+void PostTable::write (ostream &os) const {
+ writeUInt32(os, 0x30000); // table version 3
+ writeInt32(os, 0); // italic angle
+ writeInt16(os, 0); // underline position
+ writeInt16(os, 0); // underline thickness
+ writeUInt32(os, ttfWriter()->isFixedPitch()); // 1 = fixed pitch
+ writeUInt32(os, 0); // minMemType42
+ writeUInt32(os, 0); // maxMemType42
+ writeUInt32(os, 0); // minMemType1
+ writeUInt32(os, 0); // maxMemType1
+/* writeUInt16(os, ttfWriter()->getUnicodeCharMap().numValues());
+ // write name indexes in glyph ID order (index 0 = ".notdef")
+ uint16_t index=0;
+ for (auto cp2charcode : ttfWriter()->getUnicodeCharMap()) {
+ string name = ttfWriter()->getFont().glyphName(cp2charcode.second);
+ writeUInt16(os, name.empty() || name == ".notdef" ? 0 : ++index);
+ }
+ // write the glyph names in glyph ID order
+ for (auto cp2charcode : ttfWriter()->getUnicodeCharMap()) {
+ string name = ttfWriter()->getFont().glyphName(cp2charcode.second);
+ if (!name.empty() && name != ".notdef")
+ write_pascal_string(os, name);
+ }*/
+}
diff --git a/dviware/dvisvgm/src/ttf/PostTable.hpp b/dviware/dvisvgm/src/ttf/PostTable.hpp
new file mode 100644
index 0000000000..782f15085e
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/PostTable.hpp
@@ -0,0 +1,37 @@
+/*************************************************************************
+** PostTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+
+#include <algorithm>
+#include <map>
+#include "TTFTable.hpp"
+
+namespace ttf {
+
+/** This class provides the functions required to write the PostScript table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/post.htm */
+class PostTable : public TTFTable {
+ public:
+ uint32_t tag () const override {return name2id("post");}
+ void write (std::ostream &os) const override;
+};
+
+} // namespace ttf \ No newline at end of file
diff --git a/dviware/dvisvgm/src/TTFAutohint.cpp b/dviware/dvisvgm/src/ttf/TTFAutohint.cpp
index d04cbf77b9..fe6c6bafc2 100644
--- a/dviware/dvisvgm/src/TTFAutohint.cpp
+++ b/dviware/dvisvgm/src/ttf/TTFAutohint.cpp
@@ -2,7 +2,7 @@
** TTFAutohint.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -18,9 +18,14 @@
** along with this program; if not, see <http://www.gnu.org/licenses/>. **
*************************************************************************/
+#include <fstream>
+#include <memory>
+#include "../MessageException.hpp"
+#include "../utility.hpp"
#include "TTFAutohint.hpp"
using namespace std;
+using namespace ttf;
#ifndef HAVE_TTFAUTOHINT_H
TTFAutohint::TTFAutohint () {}
@@ -62,11 +67,10 @@ static string get_libttfautohint () {
#endif // HAVE_LIBTTFAUTOHINT
-TTFAutohint::TTFAutohint () :
+TTFAutohint::TTFAutohint ()
#ifndef HAVE_LIBTTFAUTOHINT
- DLLoader(get_libttfautohint()),
+ : DLLoader(get_libttfautohint())
#endif
- _lastErrorMessage()
{
}
@@ -94,16 +98,34 @@ int TTFAutohint::autohint (const string &source, const string &target, bool rehi
#endif
int ret=0;
if (fn) {
- FILE *ttf_in = fopen(source.c_str(), "rb");
- FILE *ttf_out = fopen(target.c_str(), "wb");
- ret = fn("in-file, out-file, default-script, error-string", ttf_in, ttf_out, "latn", &_lastErrorMessage);
+ _lastErrorMessage = nullptr;
+ ifstream ifs(source, ios::binary|ios::ate);
+ if (!ifs)
+ throw MessageException("failed to open '"+source+"' for reading");
+ size_t inbufSize = ifs.tellg();
+ ifs.seekg(0, ios::beg);
+ auto inbuf = util::make_unique<char[]>(inbufSize);
+ if (!ifs.read(inbuf.get(), inbufSize))
+ throw MessageException("failed to read from '"+source+"'");
+ char *outbuf = nullptr;
+ size_t outbufSize;
+ ret = fn("in-buffer, in-buffer-len, out-buffer, out-buffer-len, default-script, error-string, alloc-func",
+ inbuf.get(), inbufSize, &outbuf, &outbufSize, "latn", &_lastErrorMessage, &std::malloc);
if (ret == TA_Err_Missing_Glyph && rehintIfSymbolFont) {
- fseek(ttf_in, 0, SEEK_SET);
- fseek(ttf_out, 0, SEEK_SET);
- ret = fn("in-file, out-file, symbol, error-string", ttf_in, ttf_out, true, &_lastErrorMessage);
+ ifs.clear();
+ ifs.seekg(0, ios::beg);
+ std::free(outbuf);
+ ret = fn("in-buffer, in-buffer-len, out-buffer, out-buffer-len, symbol, error-string, alloc-func",
+ inbuf.get(), inbufSize, &outbuf, &outbufSize, true, &_lastErrorMessage, &std::malloc);
}
- fclose(ttf_out);
- fclose(ttf_in);
+ if (ret == 0) {
+ ofstream ofs(target, ios::binary);
+ if (ofs)
+ ofs.write(outbuf, outbufSize);
+ else
+ throw MessageException("failed to open '"+target+"' for writing");
+ }
+ std::free(outbuf);
}
return ret;
}
diff --git a/dviware/dvisvgm/src/TTFAutohint.hpp b/dviware/dvisvgm/src/ttf/TTFAutohint.hpp
index 7739895c38..9389d33114 100644
--- a/dviware/dvisvgm/src/TTFAutohint.hpp
+++ b/dviware/dvisvgm/src/ttf/TTFAutohint.hpp
@@ -2,7 +2,7 @@
** TTFAutohint.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -18,16 +18,17 @@
** along with this program; if not, see <http://www.gnu.org/licenses/>. **
*************************************************************************/
-#ifndef TTFAUTOHINT_HPP
-#define TTFAUTOHINT_HPP
+#pragma once
#include <config.h>
#include <string>
#if defined(HAVE_TTFAUTOHINT_H) && !defined(HAVE_LIBTTFAUTOHINT)
-#include "DLLoader.hpp"
+#include "../DLLoader.hpp"
#endif
+namespace ttf {
+
class TTFAutohint
#if defined(HAVE_TTFAUTOHINT_H) && !defined(HAVE_LIBTTFAUTOHINT)
: public DLLoader
@@ -43,9 +44,9 @@ class TTFAutohint
#ifdef HAVE_TTFAUTOHINT_H
private:
- const unsigned char *_lastErrorMessage;
+ const unsigned char *_lastErrorMessage; ///< message created by last call of 'autohint'
#endif
};
-#endif
+} // namespace ttf
diff --git a/dviware/dvisvgm/src/ttf/TTFTable.cpp b/dviware/dvisvgm/src/ttf/TTFTable.cpp
new file mode 100644
index 0000000000..2b04f3335f
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/TTFTable.cpp
@@ -0,0 +1,94 @@
+/*************************************************************************
+** TTFTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <vectorstream.hpp>
+#include <zlib.h>
+#include "TTFTable.hpp"
+
+using namespace std;
+using namespace ttf;
+
+
+TableBuffer::TableBuffer (uint32_t tag, vector<char> data)
+ : _tag(tag), _unpaddedSize(data.size()), _compressedSize(_unpaddedSize), _data(std::move(data))
+{
+ _data.resize((_unpaddedSize+3) & ~3, 0); // ensure data.size() % 4 == 0
+ for (size_t i=0; i < paddedSize(); i+=4) {
+ auto *bytes = reinterpret_cast<const uint8_t*>(_data.data());
+ _checksum += bytes[i]*0x1000000 + bytes[i+1]*0x010000 + bytes[i+2]*0x0100 + bytes[i+3];
+ }
+}
+
+
+TableBuffer::TableBuffer (uint32_t tag, vector<char> data, size_t checksumExcludeOffset)
+ : TableBuffer(tag, std::move(data))
+{
+ if (checksumExcludeOffset+4 < _data.size())
+ _checksum -= getUInt32(checksumExcludeOffset);
+}
+
+
+string TableBuffer::name () const {
+ string ret;
+ for (int i=3; i >= 0; i--) {
+ char c = char(_tag >> (8*i));
+ ret += (c >= 32 && c <= 126 ? c : '*');
+ }
+ return ret;
+}
+
+
+/** Tries to compress the buffer data. If the size of the compressed buffer data is
+ * greater or equal than the size of the uncompressed data, the buffer stays uncompressed.
+ * @returns true if the data was compressed */
+void TableBuffer::compress () {
+ if (_data.size() < 16)
+ return;
+ uLong compressedSize = compressBound(_data.size());
+ vector<char> compressedData(compressedSize, 0);
+ // Compress with zlib for now. We could also use zopfli for slightly better but much slower compression.
+ // Only use the compressed data if it actually leads to a size reduction. Otherwise, use the original table data.
+ auto source = reinterpret_cast<const Bytef*>(_data.data());
+ auto target = reinterpret_cast<Bytef*>(&compressedData[0]);
+ if (compress2(target, &compressedSize, source, _unpaddedSize, Z_BEST_COMPRESSION) == Z_OK && compressedSize < _unpaddedSize) {
+ _compressedSize = compressedSize;
+ _data = std::move(compressedData);
+ _data.resize((compressedSize+3) & ~3, 0); // reduce buffer to padded compressed size
+ }
+}
+
+////////////////////////////////////////////////////////////////////////////////////
+
+/** Creates a buffer object containing the binary data represented by this table. */
+TableBuffer TTFTable::createBuffer () const {
+ ovectorstream<vector<char>> vecstream;
+ write(vecstream);
+ vector<char> vec;
+ vecstream.swap_vector(vec); // move data from vector stream to vec
+ return TableBuffer(tag(), std::move(vec));
+}
+
+
+string TTFTable::name () const {
+ string ret;
+ for (int i=3; i >= 0; i--)
+ ret += char(tag() >> (8*i));
+ return ret;
+}
diff --git a/dviware/dvisvgm/src/ttf/TTFTable.hpp b/dviware/dvisvgm/src/ttf/TTFTable.hpp
new file mode 100644
index 0000000000..c47610ec7c
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/TTFTable.hpp
@@ -0,0 +1,108 @@
+/*************************************************************************
+** TTFTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+#include <ostream>
+#include <sstream>
+#include <vector>
+
+namespace ttf {
+
+/** Class to handle the binary TTF table data. */
+class TableBuffer {
+ friend class TTFWriter;
+ public:
+ TableBuffer (uint32_t tag, std::vector<char> data);
+ TableBuffer (uint32_t tag, std::vector<char> data, size_t checksumExcludeOffset);
+ uint32_t tag () const {return _tag;}
+ uint32_t unpaddedSize () const {return _unpaddedSize;}
+ uint32_t paddedSize () const {return uint32_t(_data.size());}
+ uint32_t compressedSize () const {return _compressedSize;}
+ uint32_t checksum () const {return _checksum;}
+ void compress ();
+ std::string name () const;
+
+ uint8_t getUInt8 (size_t offs) const {return _data[offs];}
+ uint16_t getUInt16 (size_t offs) const {return getUInt8(offs)*0x100 + getUInt8(offs+1);}
+ uint32_t getUInt32 (size_t offs) const {return getUInt16(offs)*0x10000 + getUInt16(offs+2);}
+
+ /** Writes the n bytes of a given value in big-endian order to the buffer.
+ * The buffer must be big enough to take the value at the desired position.
+ * It is not resized automatically.
+ * @param[in] offset offset/index the first byte is written to
+ * @param[in] val the value to write */
+ template <typename T>
+ void setData (size_t offset, const T val) {
+ if (offset+sizeof(T) <= _data.size()) {
+ typename std::make_unsigned<T>::type uval = val;
+ for (int i = sizeof(T)-1; i >= 0; i--) {
+ _data[offset+i] = uint8_t(uval & 0xff);
+ uval >>= 8;
+ }
+ }
+ }
+
+ /** Writes the buffer data to the given output stream. */
+ void write (std::ostream &os) const {
+ os.write(_data.data(), _data.size());
+ }
+
+ private:
+ uint32_t _tag; ///< tag/ID of corresponding TTF table
+ uint32_t _unpaddedSize; ///< size of the buffer excluding pad bytes
+ uint32_t _compressedSize; ///< sizeof compressed buffer excluding pad bytes
+ uint32_t _checksum=0; ///< checksum of uncompressed data
+ std::vector<char> _data; ///< the (compressed/uncompressed) table data including pad bytes
+};
+
+
+class TTFWriter;
+
+/** Abstract base class for all TTF tables. */
+class TTFTable {
+ friend class TTFWriter;
+ public:
+ virtual ~TTFTable () =default;
+ virtual uint32_t tag () const =0;
+ virtual void write (std::ostream &os) const =0;
+ bool active () const {return _ttfWriter != nullptr;}
+ TableBuffer createBuffer () const;
+ std::string name () const;
+
+ static constexpr uint32_t name2id (const char *str) {
+ return (str[0] << 24) | (str[1] << 16) | (str[2] << 8) | str[3];
+ }
+
+ protected:
+ void setTTFWriter (TTFWriter *ttfWriter) {_ttfWriter = ttfWriter;}
+ TTFWriter* ttfWriter () const {return _ttfWriter;}
+
+ static void writeUInt8 (std::ostream &os, uint8_t val) {os.put(val);}
+ static void writeUInt16 (std::ostream &os, uint16_t val) {os.put(val >> 8); os.put(val & 0xff);}
+ static void writeUInt32 (std::ostream &os, uint32_t val) {writeUInt16(os, val >> 16); writeUInt16(os, val & 0xffff);}
+ static void writeInt8 (std::ostream &os, int8_t val) {writeUInt8(os, uint8_t(val));}
+ static void writeInt16 (std::ostream &os, int16_t val) {writeUInt16(os, uint16_t(val));}
+ static void writeInt32 (std::ostream &os, int32_t val) {writeUInt32(os, uint32_t(val));}
+
+ private:
+ TTFWriter *_ttfWriter=nullptr;
+};
+
+} // namespace ttf
diff --git a/dviware/dvisvgm/src/ttf/TTFWriter.cpp b/dviware/dvisvgm/src/ttf/TTFWriter.cpp
new file mode 100644
index 0000000000..2dacdfc567
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/TTFWriter.cpp
@@ -0,0 +1,422 @@
+/*************************************************************************
+** TTFWriter.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <cmath>
+#include <iterator>
+#include <fstream>
+#include <list>
+#include <numeric>
+#include <woff2/encode.h>
+#include "TTFWriter.hpp"
+#include "../Font.hpp"
+#include "../utility.hpp"
+
+using namespace std;
+using namespace ttf;
+
+#ifdef TTFDEBUG
+bool TTFWriter::CREATE_PS_GLYPH_OUTLINES;
+#endif
+
+
+TTFWriter::TTFWriter (const PhysicalFont &font, const set<int> &chars) :
+ _font(font),
+ _tracerCallback(),
+ _tables({&_cmap, &_glyf, &_hmtx, &_hhea, &_loca, &_maxp, &_name, &_os2, &_post, &_head}) // mandatory tables
+{
+ if (font.verticalLayout()) { // is font designed for vertical layout?
+ _tables.push_back(&_vmtx);
+ _tables.push_back(&_vhea);
+ }
+ for (TTFTable *table : _tables)
+ table->setTTFWriter(this);
+ for (uint32_t c : chars) {
+ uint32_t codepoint = font.unicode(c);
+ _unicodeCharMap.addRange(codepoint, codepoint, c);
+ }
+}
+
+
+/** Pseudo table representing the TTF header (aka "offset table"). */
+class TTFHeader : public TTFTable {
+ public:
+ explicit TTFHeader (uint16_t numTables) : _numTables(numTables) {}
+ uint32_t tag () const override {return 0;}
+
+ void write (ostream &os) const override {
+ writeUInt32(os, 0x00010000); // sfntVersion
+ writeUInt16(os, _numTables);
+ uint16_t entrySelector = util::ilog2(_numTables);
+ uint16_t searchRange = (1 << entrySelector)*16;
+ writeUInt16(os, searchRange);
+ writeUInt16(os, entrySelector);
+ writeUInt16(os, _numTables*16-searchRange); // rangeShift
+ }
+
+ private:
+ uint16_t _numTables;
+};
+
+
+/** Pseudo table representing the table records. */
+class TTFTableRecords : public TTFTable {
+ public:
+ explicit TTFTableRecords (const list<TableBuffer> &buffers) : _buffers(buffers) {}
+ uint32_t tag () const override {return 0;}
+
+ void write (ostream &os) const override {
+ int numTables = 0;
+ for (const TableBuffer &buffer : _buffers)
+ if (buffer.tag())
+ numTables++;
+ uint32_t offset = 12 + 16*numTables;
+ for (const TableBuffer &buffer : _buffers) {
+ if (buffer.tag()) {
+ writeUInt32(os, buffer.tag());
+ writeUInt32(os, buffer.checksum());
+ writeUInt32(os, offset);
+ writeUInt32(os, buffer.unpaddedSize());
+ offset += buffer.paddedSize();
+ }
+ }
+ }
+
+ private:
+ const list<TableBuffer> &_buffers;
+};
+
+
+/** Writes the font data in TrueType format to the given output stream. */
+bool TTFWriter::writeTTF (ostream &os) {
+ list<TableBuffer> buffers = createTableBuffers();
+ // write TTF data
+ for (; !buffers.empty(); buffers.pop_front())
+ buffers.front().write(os);
+ return true; // @@
+}
+
+
+/** Writes the font data in TrueType format to the given file. */
+bool TTFWriter::writeTTF (const string &ttfname) {
+ ofstream ofs(ttfname, ios::binary);
+ if (ofs)
+ return writeTTF(ofs);
+ return false;
+}
+
+
+/** Returns a list containing the binary TTF data segmented by the TTF tables.
+ * The first two list entries represent the TTF header (aka "offset table") and
+ * the table records, respectively. */
+std::list<TableBuffer> TTFWriter::createTableBuffers () {
+ list<TableBuffer> buffers;
+ for (const TTFTable *table : _tables)
+ buffers.emplace_back(table->createBuffer());
+ // sort table buffers according to their tag/ID in ascending order
+ buffers.sort([](const TableBuffer &buf1, const TableBuffer &buf2) {
+ return buf1.tag() < buf2.tag();
+ });
+ TTFHeader header(_tables.size());
+ TTFTableRecords records(buffers);
+ buffers.emplace_front(records.createBuffer());
+ buffers.emplace_front(header.createBuffer());
+ // compute global checksum (checkSumAdjustment entry of head table)
+ uint32_t checksum=0;
+ for (const TableBuffer &buffer : buffers)
+ checksum += buffer.checksum();
+ checksum = 0xB1B0AFBA-checksum;
+ // write checksum directly to the head table buffer
+ auto headBufferIt = find_if(buffers.begin(), buffers.end(), [](const TableBuffer &buf) {
+ return buf.tag() == TTFTable::name2id("head");
+ });
+ headBufferIt->setData(_head.offsetToChecksum(), checksum);
+ return buffers;
+}
+
+
+/** Returns a factor c that scales the units per EM of the source font to
+ * a value which is a power of 2, i.e. log2(c*upem) is an integer. */
+double TTFWriter::unitsPerEmFactor () const {
+ double target_upem = targetUnitsPerEm();
+ return target_upem > 0 ? (target_upem/_font.unitsPerEm()) : 0.0;
+}
+
+
+/** Returns the units per EM of the TTF font to be written.
+ * According to the OTF specification, the value should be a power of 2
+ * if the font contains TTF outlines. */
+int TTFWriter::targetUnitsPerEm () const {
+ int upem = _font.unitsPerEm();
+ if (upem == 0)
+ return 0;
+
+ if (upem < 16)
+ return 16; // minimum allowed upem in TTF/OTF
+ if (upem > 0x4000)
+ return 0x4000; // maximum allowed upem in TTF/OTF
+ int log2_upem = util::ilog2(upem);
+ if ((1 << log2_upem) == upem) // is upem of source font a power of 2?
+ return upem;
+ return 1 << (log2_upem+1);
+}
+
+
+int16_t TTFWriter::hAdvance (uint16_t c) const {
+ double scale = unitsPerEmFactor();
+ double extend = _font.style() ? _font.style()->extend : 1;
+ return int16_t(round(scale*extend*_font.hAdvance(c)));
+}
+
+
+void TTFWriter::updateGlobalBbox (uint32_t c, int16_t xmin, int16_t ymin, int16_t xmax, int16_t ymax) {
+ if (xmin != 0 || ymin != 0 || xmax != 0 || ymax != 0)
+ _hhea.updateXMinMax(c, xmin, xmax);
+ if (xmin == 0 && xmax == 0)
+ xmax = hAdvance(c);
+ _head.updateGlobalBbox(xmin, ymin, xmax, ymax);
+ _hmtx.updateWidthData(c, xmin, xmax);
+ _os2.updateXMinMax(xmin, xmax);
+ _os2.updateYMinMax(ymin, ymax);
+ if (_vhea.active()) {
+ _vhea.updateYMinMax(c, ymin, ymax);
+ _vmtx.updateHeightData(c, ymin, ymax);
+ }
+}
+
+
+/** Converts TTF data to WOFF2 and writes the result to an output stream.
+ * @param[in] buffer contents of TTF file
+ * @param[in,out] os WOFF2 output stream
+ * @return true on success */
+static bool ttf_to_woff2 (const string &buffer, ostream &os) {
+ const uint8_t* input_data = reinterpret_cast<const uint8_t*>(buffer.data());
+ size_t output_size = woff2::MaxWOFF2CompressedSize(input_data, buffer.size());
+ string output(output_size, 0);
+ uint8_t* output_data = reinterpret_cast<uint8_t*>(&output[0]);
+ woff2::WOFF2Params params;
+ if (woff2::ConvertTTFToWOFF2(input_data, buffer.size(), output_data, &output_size, params)) {
+ output.resize(output_size);
+ copy(output.begin(), output.end(), ostream_iterator<uint8_t>(os));
+ return true;
+ }
+ return false;
+}
+
+
+/** Writes the font data in WOFF2 format to the given output stream. */
+bool TTFWriter::writeWOFF2 (ostream &os) {
+ ostringstream oss;
+ if (writeTTF(oss))
+ return ttf_to_woff2(oss.str(), os);
+ return false;
+}
+
+
+/** Writes the font data in WOFF2 format to the given file. */
+bool TTFWriter::writeWOFF2 (const string &woff2name) {
+ ofstream ofs(woff2name, ios::binary);
+ if (ofs)
+ return writeWOFF2(ofs);
+ return false;
+}
+
+
+/** Reads TTF data from an input stream, converts it to WOFF2, and
+ * writes the result to an output stream.
+ * @param[in,out] is TTF input stream
+ * @param[in,out] os WOFF2 output stream
+ * @return true on success */
+bool TTFWriter::convertTTFToWOFF2 (istream &is, ostream &os) {
+ ostringstream oss;
+ oss << is.rdbuf();
+ return ttf_to_woff2(oss.str(), os);
+}
+
+
+/** Reads TTF data from an input file, converts it to WOFF2, and
+ * writes the result to an output file.
+ * @param[in] ttfname name/path of TTF file
+ * @param[in] woff2name name/path of WOFF2 file
+ * @return true on success */
+bool TTFWriter::convertTTFToWOFF2 (const string &ttfname, const string &woff2name) {
+ ifstream ifs(ttfname, ios::binary);
+ if (ifs) {
+ ofstream ofs(woff2name, ios::binary);
+ if (ofs)
+ return convertTTFToWOFF2(ifs, ofs);
+ }
+ return false;
+}
+
+
+/** Pseudo table representing the WOFF header. */
+class WOFFHeader : public TTFTable {
+ public:
+ WOFFHeader (uint16_t numTables, uint32_t ttfSize, uint32_t woffSize)
+ : _numTables(numTables), _ttfSize(ttfSize), _woffSize(woffSize) {}
+
+ uint32_t tag () const override {return 0;}
+
+ void write (ostream &os) const override {
+ writeUInt32(os, 0x774F4646); // "WOFF"
+ writeUInt32(os, 0x10000); // version of contained TTF font (1.0)
+ writeUInt32(os, _woffSize); // total length of WOFF file
+ writeUInt16(os, _numTables); // number of tables
+ writeUInt16(os, 0); // reserved
+ writeUInt32(os, _ttfSize); // size of uncompressed TTF data
+ writeUInt32(os, 0); // WOFF version (not required)
+ writeUInt32(os, 0); // offset to metadata block
+ writeUInt32(os, 0); // compressed size of metadata block
+ writeUInt32(os, 0); // uncompressed size of metadata block
+ writeUInt32(os, 0); // offset to private data block
+ writeUInt32(os, 0); // size of private data block
+ }
+
+ private:
+ uint16_t _numTables; ///< number of tables in WOFF file
+ uint32_t _ttfSize; ///< total length of TTF file
+ uint32_t _woffSize; ///< total length of WOFF file
+};
+
+
+/** Pseudo table representing the WOFF table records. */
+class WOFFTableRecords : public TTFTable {
+ public:
+ explicit WOFFTableRecords (const list<TableBuffer> &buffers) : _buffers(buffers) {}
+ uint32_t tag () const override {return 0;}
+
+ void write (ostream &os) const override {
+ uint32_t offset = 44 + 20*_buffers.size(); // offset to first byte of table data
+ for (const TableBuffer &buffer : _buffers) {
+ if (buffer.tag()) {
+ writeUInt32(os, buffer.tag()); // table tag/ID
+ writeUInt32(os, offset); // offset to table from beginning of WOFF file
+ writeUInt32(os, buffer.compressedSize()); // compressed length excluding padding
+ writeUInt32(os, buffer.unpaddedSize()); // uncompressed length excluding padding
+ writeUInt32(os, buffer.checksum()); // checksum of the uncompressed table
+ }
+ offset += buffer.paddedSize();
+ }
+ }
+
+ private:
+ const list<TableBuffer> &_buffers;
+};
+
+
+static bool ttf_to_woff (list<TableBuffer> &&buffers, ostream &os) {
+ size_t ttfSize = std::accumulate(buffers.begin(), buffers.end(), size_t(0), [](size_t sum, const TableBuffer &buf) {
+ return sum + buf.paddedSize();
+ });
+ buffers.pop_front(); // remove TTF header
+ buffers.pop_front(); // remove TTF table records
+ for (TableBuffer &buffer : buffers)
+ buffer.compress();
+ size_t woffSize = std::accumulate(buffers.begin(), buffers.end(), size_t(0), [](size_t sum, const TableBuffer &buf) {
+ return sum + buf.paddedSize();
+ });
+ woffSize += 44 + 20*buffers.size(); // add size of header and table records
+ WOFFHeader header(buffers.size(), ttfSize, woffSize);
+ WOFFTableRecords records(buffers);
+ buffers.emplace_front(records.createBuffer());
+ buffers.emplace_front(header.createBuffer());
+ for (; !buffers.empty(); buffers.pop_front())
+ buffers.front().write(os);
+ return true; // @@
+}
+
+
+/** Writes the font data in WOFF format to the given output stream. */
+bool TTFWriter::writeWOFF (ostream &os) {
+ return ttf_to_woff(createTableBuffers(), os);
+}
+
+
+/** Writes the font data in WOFF format to the given file. */
+bool TTFWriter::writeWOFF (const string &woffname) {
+ ofstream ofs(woffname, ios::binary);
+ if (ofs)
+ return writeWOFF(ofs);
+ return false;
+}
+
+
+/** Reads TTF data from an input stream, converts it to WOFF, and
+ * writes the result to an output stream.
+ * @param[in,out] is TTF input stream
+ * @param[in,out] os WOFF output stream
+ * @return true on success */
+bool TTFWriter::convertTTFToWOFF (istream &is, ostream &os) {
+ list<TableBuffer> buffers;
+ // read and process TTF header
+ vector<char> bufvec(12, 0);
+ is.read(&bufvec[0], 12);
+ buffers.emplace_back(TableBuffer(0, std::move(bufvec)));
+ int numTables = buffers.back().getUInt16(4);
+
+ // read and process table records
+ bufvec.clear();
+ bufvec.resize(4 * 4 * numTables);
+ is.read(&bufvec[0], 4 * 4 * numTables);
+ buffers.emplace_back(TableBuffer(0, std::move(bufvec)));
+
+ struct TableRecord {
+ TableRecord (const TableBuffer &buf, size_t ofs)
+ : tag(buf.getUInt32(ofs)), checksum(buf.getUInt32(ofs+4)), offset(buf.getUInt32(ofs+8)), length(buf.getUInt32(ofs+12)) {}
+ uint32_t tag;
+ uint32_t checksum;
+ uint32_t offset;
+ uint32_t length;
+ };
+ vector<TableRecord> tableRecords;
+ tableRecords.reserve(numTables);
+ const TableBuffer &recbuf = buffers.back();
+ for (int i=0; i < numTables; i++)
+ tableRecords.emplace_back(TableRecord(recbuf, 16*i));
+
+ // read and process tables
+ for (const TableRecord &record : tableRecords) {
+ bufvec.clear();
+ bufvec.resize(record.length);
+ is.seekg(record.offset);
+ is.read(&bufvec[0], record.length);
+ if (record.tag == TTFTable::name2id("head"))
+ buffers.emplace_back(TableBuffer(record.tag, std::move(bufvec), HeadTable::offsetToChecksum()));
+ else
+ buffers.emplace_back(TableBuffer(record.tag, std::move(bufvec)));
+ }
+ return ttf_to_woff(std::move(buffers), os);
+}
+
+
+/** Reads TTF data from an input file, converts it to WOFF, and
+ * writes the result to an output file.
+ * @param[in] ttfname name/path of TTF file
+ * @param[in] woffname name/path of WOFF file
+ * @return true on success */
+bool TTFWriter::convertTTFToWOFF (const string &ttfname, const string &woffname) {
+ ifstream ifs(ttfname, ios::binary);
+ if (ifs) {
+ ofstream ofs(woffname, ios::binary);
+ if (ofs)
+ return convertTTFToWOFF(ifs, ofs);
+ }
+ return false;
+}
diff --git a/dviware/dvisvgm/src/ttf/TTFWriter.hpp b/dviware/dvisvgm/src/ttf/TTFWriter.hpp
new file mode 100644
index 0000000000..2580326859
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/TTFWriter.hpp
@@ -0,0 +1,113 @@
+/*************************************************************************
+** TTFWriter.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+
+#include <set>
+#include <vector>
+#include "CmapTable.hpp"
+#include "GlyfTable.hpp"
+#include "HeadTable.hpp"
+#include "HheaTable.hpp"
+#include "HmtxTable.hpp"
+#include "LocaTable.hpp"
+#include "MaxpTable.hpp"
+#include "NameTable.hpp"
+#include "OS2Table.hpp"
+#include "PostTable.hpp"
+#include "VheaTable.hpp"
+#include "VmtxTable.hpp"
+#include "../GFGlyphTracer.hpp"
+#include "../RangeMap.hpp"
+
+class PhysicalFont;
+
+namespace ttf {
+
+class TTFWriter {
+ public:
+ TTFWriter (const PhysicalFont &font, const std::set<int> &chars);
+ bool writeTTF (std::ostream &os);
+ bool writeWOFF (std::ostream &os);
+ bool writeWOFF2 (std::ostream &os);
+ bool writeTTF (const std::string &ttfname);
+ bool writeWOFF (const std::string &woffname);
+ bool writeWOFF2 (const std::string &woff2name);
+ static bool convertTTFToWOFF (std::istream &is, std::ostream &os);
+ static bool convertTTFToWOFF2 (std::istream &is, std::ostream &os);
+ static bool convertTTFToWOFF (const std::string &ttfname, const std::string &woffname);
+ static bool convertTTFToWOFF2 (const std::string &ttfname, const std::string &woff2name);
+ void setTracerCallback (GFGlyphTracer::Callback &callback) {_tracerCallback = &callback;}
+ GFGlyphTracer::Callback* getTracerCallback () const {return _tracerCallback;}
+ const PhysicalFont& getFont () const {return _font;}
+ const RangeMap& getUnicodeCharMap () const {return _unicodeCharMap;}
+ int targetUnitsPerEm () const;
+ double unitsPerEmFactor () const;
+ int16_t hAdvance (uint16_t c) const;
+ void updateGlobalBbox (uint32_t c, int16_t xmin, int16_t ymin, int16_t xmax, int16_t ymax);
+ bool isFixedPitch () const {return _hmtx.isFixedPitch();}
+
+ void updateContourInfo (uint16_t maxContours, uint16_t maxPoints) {
+ _maxp.updateContourInfo(maxPoints, maxContours);
+ }
+
+ void updateGlobalAdvanceWidth (uint16_t w, uint16_t numHMetrics) {_hhea.updateAdvanceWidth(w, numHMetrics);}
+ void updateGlobalAdvanceHeight (uint16_t h, uint16_t numVMetrics) {
+ if (_vhea.active())
+ _vhea.updateAdvanceHeight(h, numVMetrics);
+ }
+
+ void addGlyphOffset (uint32_t offset) {
+ _loca.addOffset(offset);
+ if (offset > 0xFFFF)
+ _head.setLongOffsetFormat();
+ }
+
+#ifdef TTFDEBUG
+ static bool CREATE_PS_GLYPH_OUTLINES;
+#endif
+
+ protected:
+ std::list<TableBuffer> createTableBuffers ();
+
+ private:
+ const PhysicalFont &_font;
+ RangeMap _unicodeCharMap; ///< Unicode -> character code
+ GFGlyphTracer::Callback *_tracerCallback;
+ CmapTable _cmap; ///< glyph index to character code mapping table
+ GlyfTable _glyf; ///< glyph data table
+ HeadTable _head; ///< font header table
+ HheaTable _hhea; ///< horizontal header table
+ HmtxTable _hmtx; ///< horizontal metrics table
+ LocaTable _loca; ///< glyph index to location/offset table
+ MaxpTable _maxp; ///< maximum profile table
+ NameTable _name; ///< naming table
+ OS2Table _os2; ///< OS/2 and Windows specific metrics table
+ PostTable _post; ///< PostScript information table
+ VheaTable _vhea; ///< vertical header table
+ VmtxTable _vmtx; ///< vertical metrics table
+ // The following vector contains pointers to the TTF table objects declared above.
+ // If a table t1 contains data that computation depends on data of table t2,
+ // t1 must be inserted after t2. For example, the loca and head tables require data
+ // from the glyf table to compute their data, so that glyf must precede loca and head.
+ std::vector<TTFTable*> _tables;
+};
+
+} // namespace ttf \ No newline at end of file
diff --git a/dviware/dvisvgm/src/ttf/VheaTable.cpp b/dviware/dvisvgm/src/ttf/VheaTable.cpp
new file mode 100644
index 0000000000..d49b76f523
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/VheaTable.cpp
@@ -0,0 +1,66 @@
+/*************************************************************************
+** VheaTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include "VheaTable.hpp"
+#include "TTFWriter.hpp"
+#include "../Font.hpp"
+
+using namespace std;
+using namespace ttf;
+
+
+void VheaTable::write (ostream &os) const {
+ const PhysicalFont &font = ttfWriter()->getFont();
+ double scale = ttfWriter()->unitsPerEmFactor();
+ writeUInt32(os, 0x10000); // table version 1.0
+ writeInt16(os, round(font.ascent()*scale));
+ writeInt16(os, round(-font.descent()*scale));
+ writeInt16(os, 0); // line gap, always 0
+ writeUInt16(os, _advanceHeightMax);
+ writeInt16(os, _minTopSideBearing);
+ writeInt16(os, _minBottomSideBearing);
+ writeInt16(os, _yMaxExtent);
+ writeInt16(os, 1); // caretSlopeRise (1 = vertical)
+ writeInt16(os, 0); // caretSlopeRun (0 = vertical)
+ writeInt16(os, 0); // caretOffset
+ writeInt16(os, 0); // reserved
+ writeInt16(os, 0); // reserved
+ writeInt16(os, 0); // reserved
+ writeInt16(os, 0); // reserved
+ writeInt16(os, 0); // metricDataFormat (always 0)
+ writeUInt16(os, _numberOfVMetrics);
+}
+
+
+void VheaTable::updateYMinMax (uint32_t c, int16_t ymin, int16_t ymax) {
+ const PhysicalFont &font = ttfWriter()->getFont();
+ double extend = font.style() ? font.style()->extend : 1;
+ double scale = ttfWriter()->unitsPerEmFactor();
+ int16_t advance = (c == 0 ? ymax : round(scale*extend*font.vAdvance(c)));
+ _yMaxExtent = max(_yMaxExtent, ymax);
+ _minTopSideBearing = min(_minTopSideBearing, ymin);
+ _minBottomSideBearing = min(_minBottomSideBearing, int16_t(advance-ymax));
+}
+
+
+void VheaTable::updateAdvanceHeight (uint16_t h, uint16_t numberOfVMetrics) {
+ _advanceHeightMax = max(_advanceHeightMax, h);
+ _numberOfVMetrics = numberOfVMetrics;
+}
diff --git a/dviware/dvisvgm/src/ttf/VheaTable.hpp b/dviware/dvisvgm/src/ttf/VheaTable.hpp
new file mode 100644
index 0000000000..3031da4999
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/VheaTable.hpp
@@ -0,0 +1,47 @@
+/*************************************************************************
+** VheaTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+#include <limits>
+#include "TTFTable.hpp"
+
+namespace ttf {
+
+/** This class provides the functions required to write the vertical header table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/vhea.htm */
+class VheaTable : public TTFTable {
+ friend class TTFWriter;
+ public:
+ uint32_t tag () const override {return name2id("vhea");}
+ void write (std::ostream &os) const override;
+
+ protected:
+ void updateYMinMax (uint32_t c, int16_t ymin, int16_t ymax);
+ void updateAdvanceHeight (uint16_t h, uint16_t numberOfVMetrics);
+
+ private:
+ uint16_t _advanceHeightMax = 0;
+ int16_t _minTopSideBearing = std::numeric_limits<int16_t>::max();
+ int16_t _minBottomSideBearing = std::numeric_limits<int16_t>::max();
+ int16_t _yMaxExtent = std::numeric_limits<int16_t>::min();
+ uint16_t _numberOfVMetrics = 0;
+};
+
+} // namespace ttf
diff --git a/dviware/dvisvgm/src/ttf/VmtxTable.cpp b/dviware/dvisvgm/src/ttf/VmtxTable.cpp
new file mode 100644
index 0000000000..6873bac9d2
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/VmtxTable.cpp
@@ -0,0 +1,57 @@
+/*************************************************************************
+** VmtxTable.cpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#include <cmath>
+#include "VmtxTable.hpp"
+#include "TTFWriter.hpp"
+#include "../Font.hpp"
+
+using namespace std;
+using namespace ttf;
+
+
+void VmtxTable::write (ostream &os) const {
+ auto runStart = _heightInfos.end();
+ if (!_heightInfos.empty())
+ runStart -= _runLengthOfAdvHeight-1;
+ // write longVerMetrics up to the beginning of the repeating
+ // advance heights at the end of the container
+ for (auto it = _heightInfos.begin(); it != runStart; ++it) {
+ writeUInt16(os, it->advHeight);
+ writeInt16(os, it->tsb);
+ }
+ // write the trailing top side bearings
+ for (; runStart != _heightInfos.end(); ++runStart)
+ writeInt16(os, runStart->tsb);
+}
+
+
+void VmtxTable::updateHeightData (uint32_t c, int16_t ymin, int16_t ymax) {
+ const PhysicalFont &font = ttfWriter()->getFont();
+ double extend = font.style() ? font.style()->extend : 1;
+ double scale = ttfWriter()->unitsPerEmFactor();
+ int16_t h = (c == 0 ? ymax : round(scale*extend*font.vAdvance(c)));
+ if (_heightInfos.empty() || h == _heightInfos.back().advHeight)
+ _runLengthOfAdvHeight++;
+ else
+ _runLengthOfAdvHeight = 1;
+ _heightInfos.emplace_back(CharHeightInfo(ymin, h));
+ ttfWriter()->updateGlobalAdvanceHeight(h, _heightInfos.size()-_runLengthOfAdvHeight+1);
+} \ No newline at end of file
diff --git a/dviware/dvisvgm/src/ttf/VmtxTable.hpp b/dviware/dvisvgm/src/ttf/VmtxTable.hpp
new file mode 100644
index 0000000000..4bcdda0df0
--- /dev/null
+++ b/dviware/dvisvgm/src/ttf/VmtxTable.hpp
@@ -0,0 +1,49 @@
+/*************************************************************************
+** VmtxTable.hpp **
+** **
+** This file is part of dvisvgm -- a fast DVI to SVG converter **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
+** **
+** This program is free software; you can redistribute it and/or **
+** modify it under the terms of the GNU General Public License as **
+** published by the Free Software Foundation; either version 3 of **
+** the License, or (at your option) any later version. **
+** **
+** This program is distributed in the hope that it will be useful, but **
+** WITHOUT ANY WARRANTY; without even the implied warranty of **
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the **
+** GNU General Public License for more details. **
+** **
+** You should have received a copy of the GNU General Public License **
+** along with this program; if not, see <http://www.gnu.org/licenses/>. **
+*************************************************************************/
+
+#pragma once
+
+#include <vector>
+#include "TTFTable.hpp"
+
+namespace ttf {
+
+/** This class provides the functions required to write the horizontal metrics table of a TTF/OTF font.
+ * https://www.microsoft.com/typography/otspec/vmtx.htm */
+class VmtxTable : public TTFTable {
+ friend TTFWriter;
+ struct CharHeightInfo {
+ CharHeightInfo (int16_t l, int16_t h) : tsb(l), advHeight(h) {}
+ uint16_t tsb; // top side bearing
+ uint16_t advHeight; // unscaled advance height
+ };
+ public:
+ uint32_t tag () const override {return name2id("vmtx");}
+ void write (std::ostream &os) const override;
+
+ protected:
+ void updateHeightData (uint32_t c, int16_t ymin, int16_t ymax);
+
+ private:
+ std::vector<CharHeightInfo> _heightInfos;
+ size_t _runLengthOfAdvHeight=0; // number of identical advHeight values at end of _heightInfos
+};
+
+} // namespace ttf
diff --git a/dviware/dvisvgm/src/utility.cpp b/dviware/dvisvgm/src/utility.cpp
index 4877690ef4..947be91634 100644
--- a/dviware/dvisvgm/src/utility.cpp
+++ b/dviware/dvisvgm/src/utility.cpp
@@ -2,7 +2,7 @@
** utility.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -62,6 +62,26 @@ vector<double> math::svd (const double (&m)[2][2]) {
}
+/** Returns the value of the definite integral of f:R->R over the interval [t0,t1]
+ * using a simple Simpson/Runge-Kutta (rk4) approximation.
+ * @param[in] t0 lower interval boundary
+ * @param[in] t1 upper interval boundary
+ * @param[in] n number of slices the interval is divided into
+ * @param[in] f function to integrate */
+double math::integral (double t0, double t1, int n, const std::function<double(double)> &f) {
+ double ti = t0, ui=0;
+ double h = (t1-t0)/n;
+ for (int i=0; i < n; i++) {
+ double k1 = f(ti);
+ double k2 = f(ti + h/2);
+ double k4 = f(ti + h);
+ ui += h*(k1 + 4*k2 + k4)/6;
+ ti += h;
+ }
+ return ui;
+}
+
+
/** Normalizes an angle to the interval [-mod, mod). */
double math::normalize_angle (double angle, double mod) {
angle = fmod(angle+mod, 2.0*mod);
@@ -202,3 +222,83 @@ void util::write_file_contents (const string &fname, string::iterator start, str
ofstream ofs(fname, ios::binary);
copy(start, end, ostream_iterator<char>(ofs));
}
+
+
+string util::mimetype (const string &fname) {
+ string ret;
+ auto pos = fname.rfind('.');
+ if (pos != string::npos) {
+ string suffix = fname.substr(pos+1);
+ if (suffix == "svg")
+ ret = "svg+xml";
+ else if (suffix == "png" || suffix == "gif")
+ ret = suffix;
+ else if (suffix == "jpg" || suffix == "jpeg")
+ ret = "jpeg";
+ else if (suffix == "tif" || suffix == "tiff")
+ ret = "tiff";
+ }
+ if (!ret.empty())
+ ret = "image/"+ret;
+ return ret;
+}
+
+///////////////////////////////////////////////////////////////////////
+
+static bool is_leap_year (int year) {
+ return year % 4 == 0 && (year % 100 != 0 || year % 400 == 0);
+}
+
+
+/** Returns the number of leap years in the interval [year1, year2]. */
+static size_t number_of_leap_years (int year1, int year2) {
+ year1--;
+ size_t ly1 = year1/4 - year1/100 + year1/400;
+ size_t ly2 = year2/4 - year2/100 + year2/400;
+ return ly2-ly1;
+}
+
+
+static size_t number_of_days (int year, int month1, int month2) {
+ const int mdays[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
+ size_t days = is_leap_year(year) ? 366 : 365;
+ for (int i=0; i < month1; i++)
+ days -= mdays[i];
+ for (int i=month2+1; i < 12; i++)
+ days -= mdays[i];
+ return days;
+}
+
+
+static size_t number_of_days (int year1, int month1, int year2, int month2) {
+ size_t days = 0;
+ if (year1 == year2)
+ days = number_of_days(year1, month1, month2);
+ else {
+ if (year2-year1 > 1)
+ days = (year2-year1-1)*365 + number_of_leap_years(year1+1, year2-1);
+ days += number_of_days(year1, month1, 11);
+ days += number_of_days(year2, 0, month2);
+ }
+ return days;
+}
+
+
+/** Returns the number of days spanning the interval from this date up to another one. */
+size_t util::Date::operator - (Date date2) const {
+ Date date1 = *this;
+ if (date2 < date1)
+ std::swap(date1, date2);
+ size_t days = ::number_of_days(date1._year, date1._month, date2._year, date2._month-1);
+ days += date2._day - date1._day + 1;
+ return days;
+}
+
+
+bool util::Date::operator < (const Date &date) const {
+ if (_year < date._year) return true;
+ if (_year > date._year) return false;
+ if (_month < date._month) return true;
+ if (_month > date._month) return false;
+ return _day < date._day;
+} \ No newline at end of file
diff --git a/dviware/dvisvgm/src/utility.hpp b/dviware/dvisvgm/src/utility.hpp
index b8a36daceb..9b1b7006ad 100644
--- a/dviware/dvisvgm/src/utility.hpp
+++ b/dviware/dvisvgm/src/utility.hpp
@@ -2,7 +2,7 @@
** utility.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -21,7 +21,12 @@
#ifndef UTILITY_HPP
#define UTILITY_HPP
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
#include <iomanip>
+#include <functional>
#include <memory>
#include <sstream>
#include <string>
@@ -40,6 +45,7 @@ inline double rad2deg (double rad) {return 180.0*rad/PI;}
double normalize_angle (double angle, double mod);
double normalize_0_2pi (double rad);
std::vector<double> svd (const double (&m)[2][2]);
+double integral (double t0, double t1, int n, const std::function<double(double)> &f);
/** Signum function (returns x/abs(x) if x != 0, and 0 otherwise). */
template <typename T>
@@ -61,6 +67,8 @@ std::string normalize_space (std::string str, const char *ws=" \t\n\r\f");
std::string tolower (const std::string &str);
std::string replace (std::string str, const std::string &find, const std::string &repl);
std::string to_string (double val);
+std::string mimetype (const std::string &fname);
+
std::vector<std::string> split (const std::string &str, const std::string &sep);
int ilog10 (int n);
@@ -136,16 +144,80 @@ inline void base64_copy (std::istream &is, std::ostream &os, int wrap=0) {
* Constructs an object of class T on the heap and returns a unique_ptr<T> to it.
* @param[in] args arguments forwarded to an constructor of T */
template<typename T, typename... Args>
-std::unique_ptr<T> make_unique (Args&&... args) {
+inline std::unique_ptr<T> make_unique (Args&&... args) {
return std::unique_ptr<T>(new T(std::forward<Args>(args)...));
}
+/** Simple implementation mimicking array variant of std::make_unique introduced in C++14.
+ * Constructs an array of class T on the heap and returns a unique_ptr<T>(size) to it.
+ * @param[in] size size of array */
+template<typename T>
+inline std::unique_ptr<T> make_unique (std::size_t size) {
+ return std::unique_ptr<T>(new typename std::remove_extent<T>::type[size]());
+}
+
+
template<typename T, typename U>
-std::unique_ptr<T> static_unique_ptr_cast (std::unique_ptr<U> &&old){
+inline std::unique_ptr<T> static_unique_ptr_cast (std::unique_ptr<U> &&old){
return std::unique_ptr<T>{static_cast<T*>(old.release())};
}
+#ifdef HAVE___BUILTIN_CLZ
+
+template <typename T>
+typename std::enable_if<sizeof(T) <= sizeof(unsigned int), int>::type
+count_leading_zeros (T val) {
+ return val == 0 ? 8*sizeof(T) : __builtin_clz(val) - 8*(sizeof(unsigned int)-sizeof(T));
+}
+
+template <typename T>
+typename std::enable_if<sizeof(T) == sizeof(unsigned long) && sizeof(unsigned long) != sizeof(unsigned int), int>::type
+count_leading_zeros (T val) {
+ return val == 0 ? 8*sizeof(T) : __builtin_clzl(val);
+}
+
+template <typename T>
+typename std::enable_if<sizeof(T) == sizeof(unsigned long long) && sizeof(unsigned long long) != sizeof(unsigned long), int>::type
+count_leading_zeros (T val) {
+ return val == 0 ? 8*sizeof(T) : __builtin_clzll(val);
+}
+
+#elif defined(_MSC_VER)
+
+#include <intrin.h>
+
+template <typename T>
+typename std::enable_if<sizeof(T) <= 4, int>::type
+count_leading_zeros (T val) {
+ unsigned long index;
+ return _BitScanReverse(&index, val) ? static_cast<int>(8*sizeof(T)-1-index) : 8*sizeof(T);
+}
+
+#else
+
+// fallback implementation if no built-in clz function is available
+template <typename T>
+typename std::enable_if<sizeof(T) <= 4, int>::type
+count_leading_zeros (T val) {
+ uint32_t val32 = val;
+ static const uint8_t clz_table[16] = {4, 3, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0};
+ int n=0;
+ if ((val32 & 0xFFFF0000) == 0) {n = 16; val32 <<= 16;}
+ if ((val32 & 0xFF000000) == 0) {n += 8; val32 <<= 8;}
+ if ((val32 & 0xF0000000) == 0) {n += 4; val32 <<= 4;}
+ return n + clz_table[val32 >> (32-4)] - (32-8*sizeof(T));
+}
+
+#endif
+
+/** Returns floor(log2(n)) where n is a positive integer.
+ * If n < 1, it returns -1. */
+template <typename T>
+int ilog2 (T n) {
+ return n > 0 ? 8*sizeof(T)-1-count_leading_zeros(n) : -1;
+}
+
template <typename T>
struct set_const_of {
template <typename U>
@@ -157,6 +229,17 @@ struct set_const_of {
>::type;
};
};
+
+class Date {
+ public:
+ Date (int year, int month, int day) : _year(year), _month(month-1), _day(day-1) {}
+ bool operator < (const Date &date) const;
+ size_t operator - (Date date2) const;
+
+ private:
+ int _year, _month, _day; // _month and _day are 0-based
+};
+
} // namespace util
#endif
diff --git a/dviware/dvisvgm/src/version.hpp.in b/dviware/dvisvgm/src/version.hpp.in
index 7f673d167a..fc8d9ef289 100644
--- a/dviware/dvisvgm/src/version.hpp.in
+++ b/dviware/dvisvgm/src/version.hpp.in
@@ -2,7 +2,7 @@
** version.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/src/windows.hpp b/dviware/dvisvgm/src/windows.hpp
index 2316f1a1cd..196bd5f495 100644
--- a/dviware/dvisvgm/src/windows.hpp
+++ b/dviware/dvisvgm/src/windows.hpp
@@ -2,7 +2,7 @@
** windows.hpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/BezierTest.cpp b/dviware/dvisvgm/tests/BezierTest.cpp
index 058342ca4d..5a4724c642 100644
--- a/dviware/dvisvgm/tests/BezierTest.cpp
+++ b/dviware/dvisvgm/tests/BezierTest.cpp
@@ -2,7 +2,7 @@
** BezierTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -34,60 +34,66 @@ const double EPS = 0.001;
TEST(BezierTest, construct) {
// quadratic Bézier curve
- Bezier bezier1(DPair(0,0), DPair(12,12), DPair(24,6));
+ QuadBezier bezier1(DPair(0,0), DPair(12,12), DPair(24,6));
EXPECT_EQ(bezier1.point(0), DPair(0,0));
- EXPECT_EQ(bezier1.point(1), DPair(8,8));
- EXPECT_EQ(bezier1.point(2), DPair(16,10));
- EXPECT_EQ(bezier1.point(3), DPair(24,6));
+ EXPECT_EQ(bezier1.point(1), DPair(12,12));
+ EXPECT_EQ(bezier1.point(2), DPair(24,6));
- // cubic Bézier curve
- Bezier bezier2(DPair(0,0), DPair(12,12), DPair(24,6), DPair(19,-4));
+ // cubic from quadratic (elevate degree)
+ CubicBezier bezier2(bezier1);
EXPECT_EQ(bezier2.point(0), DPair(0,0));
- EXPECT_EQ(bezier2.point(1), DPair(12,12));
- EXPECT_EQ(bezier2.point(2), DPair(24,6));
- EXPECT_EQ(bezier2.point(3), DPair(19,-4));
+ EXPECT_EQ(bezier2.point(1), DPair(8,8));
+ EXPECT_EQ(bezier2.point(2), DPair(16,10));
+ EXPECT_EQ(bezier2.point(3), DPair(24,6));
+
+ // cubic Bézier curve
+ CubicBezier bezier3(DPair(0,0), DPair(12,12), DPair(24,6), DPair(19,-4));
+ EXPECT_EQ(bezier3.point(0), DPair(0,0));
+ EXPECT_EQ(bezier3.point(1), DPair(12,12));
+ EXPECT_EQ(bezier3.point(2), DPair(24,6));
+ EXPECT_EQ(bezier3.point(3), DPair(19,-4));
}
TEST(BezierTest, subcurve) {
- Bezier bezier1(DPair(0,0), DPair(12,12), DPair(24,6), DPair(19,-4));
+ CubicBezier bezier1(DPair(0,0), DPair(12,12), DPair(24,6), DPair(19,-4));
{
- Bezier subcurve(bezier1, 0, 1);
+ CubicBezier subcurve(bezier1, 0, 1);
EXPECT_EQ(subcurve.point(0), DPair(0,0));
EXPECT_EQ(subcurve.point(1), DPair(12,12));
EXPECT_EQ(subcurve.point(2), DPair(24,6));
EXPECT_EQ(subcurve.point(3), DPair(19,-4));
}
{
- Bezier subcurve(bezier1, 0, 0.5);
+ CubicBezier subcurve(bezier1, 0, 0.5);
EXPECT_EQ(subcurve.point(0), DPair(0,0));
EXPECT_EQ(subcurve.point(1), DPair(6,6));
EXPECT_EQ(subcurve.point(2), DPair(12,7.5));
EXPECT_EQ(subcurve.point(3), DPair(15.875,6.25));
}
{
- Bezier subcurve(bezier1, 1, 0.5);
+ CubicBezier subcurve(bezier1, 1, 0.5);
EXPECT_EQ(subcurve.point(0), DPair(15.875,6.25));
EXPECT_EQ(subcurve.point(1), DPair(19.75,5));
EXPECT_EQ(subcurve.point(2), DPair(21.5,1));
EXPECT_EQ(subcurve.point(3), DPair(19,-4));
}
{
- Bezier subcurve(bezier1, 0.2, 0.8);
+ CubicBezier subcurve(bezier1, 0.2, 0.8);
EXPECT_PAIR_NEAR(subcurve.point(0), DPair(7.064,5.152));
EXPECT_PAIR_NEAR(subcurve.point(1), DPair(13.856,8.368));
EXPECT_PAIR_NEAR(subcurve.point(2), DPair(19.424,6.112));
EXPECT_PAIR_NEAR(subcurve.point(3), DPair(20.096,1.408));
}
{
- Bezier subcurve(bezier1, 0, 0);
+ CubicBezier subcurve(bezier1, 0, 0);
EXPECT_EQ(subcurve.point(0), DPair(0,0));
EXPECT_EQ(subcurve.point(1), DPair(0,0));
EXPECT_EQ(subcurve.point(2), DPair(0,0));
EXPECT_EQ(subcurve.point(3), DPair(0,0));
}
{
- Bezier subcurve(bezier1, 1, 1);
+ CubicBezier subcurve(bezier1, 1, 1);
EXPECT_EQ(subcurve.point(0), DPair(19,-4));
EXPECT_EQ(subcurve.point(1), DPair(19,-4));
EXPECT_EQ(subcurve.point(2), DPair(19,-4));
@@ -97,7 +103,7 @@ TEST(BezierTest, subcurve) {
TEST(BezierTest, reverse) {
- Bezier bezier(DPair(0,0), DPair(12,12), DPair(24,6), DPair(19,-4));
+ CubicBezier bezier(DPair(0,0), DPair(12,12), DPair(24,6), DPair(19,-4));
bezier.reverse();
EXPECT_EQ(bezier.point(0), DPair(19,-4));
EXPECT_EQ(bezier.point(1), DPair(24,6));
@@ -107,7 +113,7 @@ TEST(BezierTest, reverse) {
TEST(BezierTest, bbox) {
- Bezier bezier(DPair(0,0), DPair(12,12), DPair(24,6), DPair(30,-5));
+ CubicBezier bezier(DPair(0,0), DPair(12,12), DPair(24,6), DPair(30,-5));
EXPECT_BBOX_NEAR(bezier.getBBox(), BoundingBox(0, -5, 30, 6.598));
}
@@ -115,7 +121,7 @@ TEST(BezierTest, bbox) {
TEST(BezierTest, approximate) {
vector<DPair> points;
vector<double> times;
- Bezier bezier(DPair(0,0), DPair(12,12), DPair(24,6), DPair(30,-5));
+ CubicBezier bezier(DPair(0,0), DPair(12,12), DPair(24,6), DPair(30,-5));
size_t size = bezier.approximate(0.1, points, &times);
double t[] = {0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 1};
DPair p[] = {
@@ -134,7 +140,7 @@ TEST(BezierTest, approximate) {
TEST(BezierTest, reduceDegree) {
vector<DPair> points;
- Bezier bezier(DPair(0,0), DPair(5,10), DPair(10,5));
+ CubicBezier bezier(QuadBezier(DPair(0,0), DPair(5,10), DPair(10,5)));
int degree = bezier.reduceDegree(0.1, points);
EXPECT_EQ(degree, 2);
EXPECT_EQ(points[0], DPair(0,0));
diff --git a/dviware/dvisvgm/tests/BitmapTest.cpp b/dviware/dvisvgm/tests/BitmapTest.cpp
index 7fdb51073a..eacc8530dd 100644
--- a/dviware/dvisvgm/tests/BitmapTest.cpp
+++ b/dviware/dvisvgm/tests/BitmapTest.cpp
@@ -2,7 +2,7 @@
** BitmapTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/BoundingBoxTest.cpp b/dviware/dvisvgm/tests/BoundingBoxTest.cpp
index 3810983958..6916dac08d 100644
--- a/dviware/dvisvgm/tests/BoundingBoxTest.cpp
+++ b/dviware/dvisvgm/tests/BoundingBoxTest.cpp
@@ -2,7 +2,7 @@
** BoundingBoxTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/CMapManagerTest.cpp b/dviware/dvisvgm/tests/CMapManagerTest.cpp
index 3b1fbbcf7c..185186b5f3 100644
--- a/dviware/dvisvgm/tests/CMapManagerTest.cpp
+++ b/dviware/dvisvgm/tests/CMapManagerTest.cpp
@@ -2,7 +2,7 @@
** CMapManagerTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/CMapReaderTest.cpp b/dviware/dvisvgm/tests/CMapReaderTest.cpp
index 7507910da5..c3387b3041 100644
--- a/dviware/dvisvgm/tests/CMapReaderTest.cpp
+++ b/dviware/dvisvgm/tests/CMapReaderTest.cpp
@@ -2,7 +2,7 @@
** CMapReaderTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/CMapTest.cpp b/dviware/dvisvgm/tests/CMapTest.cpp
index bbbf3ad0db..10de080cf2 100644
--- a/dviware/dvisvgm/tests/CMapTest.cpp
+++ b/dviware/dvisvgm/tests/CMapTest.cpp
@@ -2,7 +2,7 @@
** CMapTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/CalculatorTest.cpp b/dviware/dvisvgm/tests/CalculatorTest.cpp
index 600a4f136d..9e0119371f 100644
--- a/dviware/dvisvgm/tests/CalculatorTest.cpp
+++ b/dviware/dvisvgm/tests/CalculatorTest.cpp
@@ -2,7 +2,7 @@
** CalculatorTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/ColorSpecialTest.cpp b/dviware/dvisvgm/tests/ColorSpecialTest.cpp
index 7211ba0753..cdbdb6b8f9 100644
--- a/dviware/dvisvgm/tests/ColorSpecialTest.cpp
+++ b/dviware/dvisvgm/tests/ColorSpecialTest.cpp
@@ -2,7 +2,7 @@
** ColorSpecialTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/ColorTest.cpp b/dviware/dvisvgm/tests/ColorTest.cpp
index aa5b18b716..ed41fb253c 100644
--- a/dviware/dvisvgm/tests/ColorTest.cpp
+++ b/dviware/dvisvgm/tests/ColorTest.cpp
@@ -2,7 +2,7 @@
** ColorTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/CommandLineTest.cpp b/dviware/dvisvgm/tests/CommandLineTest.cpp
index 7e28c334cf..06a4d08078 100644
--- a/dviware/dvisvgm/tests/CommandLineTest.cpp
+++ b/dviware/dvisvgm/tests/CommandLineTest.cpp
@@ -2,7 +2,7 @@
** CommandLineTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/DVIReaderTest.cpp b/dviware/dvisvgm/tests/DVIReaderTest.cpp
index 6473513876..47711a77c8 100644
--- a/dviware/dvisvgm/tests/DVIReaderTest.cpp
+++ b/dviware/dvisvgm/tests/DVIReaderTest.cpp
@@ -2,7 +2,7 @@
** DVIReaderTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/DependencyGraphTest.cpp b/dviware/dvisvgm/tests/DependencyGraphTest.cpp
index 2f73c00bb1..fd8ee29fd1 100644
--- a/dviware/dvisvgm/tests/DependencyGraphTest.cpp
+++ b/dviware/dvisvgm/tests/DependencyGraphTest.cpp
@@ -2,7 +2,7 @@
** DependencyGraphTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/DirectoryTest.cpp b/dviware/dvisvgm/tests/DirectoryTest.cpp
index 2df574b06a..ff7b276457 100644
--- a/dviware/dvisvgm/tests/DirectoryTest.cpp
+++ b/dviware/dvisvgm/tests/DirectoryTest.cpp
@@ -2,7 +2,7 @@
** DirectoryTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/DvisvgmSpecialTest.cpp b/dviware/dvisvgm/tests/DvisvgmSpecialTest.cpp
index abc8535221..873453ebb1 100644
--- a/dviware/dvisvgm/tests/DvisvgmSpecialTest.cpp
+++ b/dviware/dvisvgm/tests/DvisvgmSpecialTest.cpp
@@ -2,7 +2,7 @@
** DvisvgmSpecialTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -30,15 +30,20 @@ using namespace std;
class MyDvisvgmSpecialHandler : public DvisvgmSpecialHandler {
public:
+ explicit MyDvisvgmSpecialHandler (EmptySpecialActions &actions) : _actions(actions) {}
void finishPreprocessing () {dviPreprocessingFinished();}
+ void beginPage () {dviBeginPage(0, _actions);}
void finishPage () {dviEndPage(0, _actions);}
protected:
- EmptySpecialActions _actions;
+ EmptySpecialActions &_actions;
};
class DvisvgmSpecialTest : public ::testing::Test {
+ public:
+ DvisvgmSpecialTest () : handler(recorder) {}
+
protected:
class ActionsRecorder : public EmptySpecialActions {
public:
@@ -59,7 +64,7 @@ class DvisvgmSpecialTest : public ::testing::Test {
}
protected:
- string toString (const XMLNode *node) const {
+ static string toString (const XMLNode *node) {
ostringstream oss;
if (node)
node->write(oss);
@@ -72,12 +77,13 @@ class DvisvgmSpecialTest : public ::testing::Test {
void SetUp () override {
recorder.clear();
+ handler.beginPage();
XMLElement::WRITE_NEWLINES = false;
}
protected:
- MyDvisvgmSpecialHandler handler;
ActionsRecorder recorder;
+ MyDvisvgmSpecialHandler handler;
};
diff --git a/dviware/dvisvgm/tests/EllipticalArcTest.cpp b/dviware/dvisvgm/tests/EllipticalArcTest.cpp
index babddde215..7edd7666f6 100644
--- a/dviware/dvisvgm/tests/EllipticalArcTest.cpp
+++ b/dviware/dvisvgm/tests/EllipticalArcTest.cpp
@@ -2,7 +2,7 @@
** EllipticalArcTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/EmSpecialTest.cpp b/dviware/dvisvgm/tests/EmSpecialTest.cpp
index 60aef9ba2a..a2c12daeae 100644
--- a/dviware/dvisvgm/tests/EmSpecialTest.cpp
+++ b/dviware/dvisvgm/tests/EmSpecialTest.cpp
@@ -2,7 +2,7 @@
** EmSpecialTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/FileFinderTest.cpp b/dviware/dvisvgm/tests/FileFinderTest.cpp
index 07e4071d55..95145fbb25 100644
--- a/dviware/dvisvgm/tests/FileFinderTest.cpp
+++ b/dviware/dvisvgm/tests/FileFinderTest.cpp
@@ -2,7 +2,7 @@
** FileFinderTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/FilePathTest.cpp b/dviware/dvisvgm/tests/FilePathTest.cpp
index 75d7166a66..96ac6c85f8 100644
--- a/dviware/dvisvgm/tests/FilePathTest.cpp
+++ b/dviware/dvisvgm/tests/FilePathTest.cpp
@@ -2,7 +2,7 @@
** FilePathTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/FileSystemTest.cpp b/dviware/dvisvgm/tests/FileSystemTest.cpp
index b0a392db3e..5e4f5059d6 100644
--- a/dviware/dvisvgm/tests/FileSystemTest.cpp
+++ b/dviware/dvisvgm/tests/FileSystemTest.cpp
@@ -2,7 +2,7 @@
** FileSystemTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/FontCacheTest.cpp b/dviware/dvisvgm/tests/FontCacheTest.cpp
index 56853ca73e..c53aed2841 100644
--- a/dviware/dvisvgm/tests/FontCacheTest.cpp
+++ b/dviware/dvisvgm/tests/FontCacheTest.cpp
@@ -2,7 +2,7 @@
** FontCacheTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/FontManagerTest.cpp b/dviware/dvisvgm/tests/FontManagerTest.cpp
index 1d14478a4f..c754f6be11 100644
--- a/dviware/dvisvgm/tests/FontManagerTest.cpp
+++ b/dviware/dvisvgm/tests/FontManagerTest.cpp
@@ -2,7 +2,7 @@
** FontManagerTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/FontMapTest.cpp b/dviware/dvisvgm/tests/FontMapTest.cpp
index 9f88d4d129..2ce66ac94c 100644
--- a/dviware/dvisvgm/tests/FontMapTest.cpp
+++ b/dviware/dvisvgm/tests/FontMapTest.cpp
@@ -2,7 +2,7 @@
** FontMapTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/GFGlyphTracerTest.cpp b/dviware/dvisvgm/tests/GFGlyphTracerTest.cpp
index 4ec071c174..5cf923bf19 100644
--- a/dviware/dvisvgm/tests/GFGlyphTracerTest.cpp
+++ b/dviware/dvisvgm/tests/GFGlyphTracerTest.cpp
@@ -2,7 +2,7 @@
** GFGlyphTracerTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/GFReaderTest.cpp b/dviware/dvisvgm/tests/GFReaderTest.cpp
index eb5246e175..7baee9eed3 100644
--- a/dviware/dvisvgm/tests/GFReaderTest.cpp
+++ b/dviware/dvisvgm/tests/GFReaderTest.cpp
@@ -2,7 +2,7 @@
** GFReaderTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/GhostscriptTest.cpp b/dviware/dvisvgm/tests/GhostscriptTest.cpp
index b01c08f52a..2ae3991b60 100644
--- a/dviware/dvisvgm/tests/GhostscriptTest.cpp
+++ b/dviware/dvisvgm/tests/GhostscriptTest.cpp
@@ -2,7 +2,7 @@
** GhostscriptTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/GraphicsPathParserTest.cpp b/dviware/dvisvgm/tests/GraphicsPathParserTest.cpp
index 15298c299f..7de23c9374 100644
--- a/dviware/dvisvgm/tests/GraphicsPathParserTest.cpp
+++ b/dviware/dvisvgm/tests/GraphicsPathParserTest.cpp
@@ -2,7 +2,7 @@
** GraphicsPathParserTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2020 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/GraphicsPathTest.cpp b/dviware/dvisvgm/tests/GraphicsPathTest.cpp
index feabb61dcb..973542984b 100644
--- a/dviware/dvisvgm/tests/GraphicsPathTest.cpp
+++ b/dviware/dvisvgm/tests/GraphicsPathTest.cpp
@@ -2,7 +2,7 @@
** GraphicsPathTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/HashFunctionTest.cpp b/dviware/dvisvgm/tests/HashFunctionTest.cpp
index 26d6cf542c..7c2704c86c 100644
--- a/dviware/dvisvgm/tests/HashFunctionTest.cpp
+++ b/dviware/dvisvgm/tests/HashFunctionTest.cpp
@@ -2,7 +2,7 @@
** HashFunctionTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/JFMReaderTest.cpp b/dviware/dvisvgm/tests/JFMReaderTest.cpp
index 65f807ef4b..6ca10c7a83 100644
--- a/dviware/dvisvgm/tests/JFMReaderTest.cpp
+++ b/dviware/dvisvgm/tests/JFMReaderTest.cpp
@@ -2,7 +2,7 @@
** JFMReaderTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/LengthTest.cpp b/dviware/dvisvgm/tests/LengthTest.cpp
index 7c5edcc8ff..c0f4f76041 100644
--- a/dviware/dvisvgm/tests/LengthTest.cpp
+++ b/dviware/dvisvgm/tests/LengthTest.cpp
@@ -2,7 +2,7 @@
** LengthTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/Makefile.am b/dviware/dvisvgm/tests/Makefile.am
index 2faaacf353..3197481f7a 100644
--- a/dviware/dvisvgm/tests/Makefile.am
+++ b/dviware/dvisvgm/tests/Makefile.am
@@ -1,5 +1,5 @@
## This file is part of dvisvgm
-## Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de>
+## Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de>
##
## Process this file with automake.
@@ -53,9 +53,6 @@ hashcheck.cpp: genhashcheck.py $(dvisvgm_srcdir)/src/AGLTable.hpp $(dvisvgm_srcd
python $^ >$@
TESTLIBS = libgtest.la ../src/libdvisvgm.la $(LIBS_LIBS) -lfreetype
-if ENABLE_WOFF
-TESTLIBS += ../libs/ff-woff/libfontforge.a
-endif
TESTLIBS += $(CODE_COVERAGE_LDFLAGS)
TESTS += BezierTest
@@ -421,6 +418,4 @@ XMLStringTest_LDADD = $(TESTLIBS)
EXTRA_DIST += check-conv genhashcheck.py normalize.xsl
TESTS += check-conv
-@CODE_COVERAGE_RULES@
-
CLEANFILES = *.gcda *.gcno hashcheck.cpp
diff --git a/dviware/dvisvgm/tests/Makefile.in b/dviware/dvisvgm/tests/Makefile.in
index f6359bad6c..05fd5a87b9 100644
--- a/dviware/dvisvgm/tests/Makefile.in
+++ b/dviware/dvisvgm/tests/Makefile.in
@@ -87,7 +87,6 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
@HAVE_BROTLI_FALSE@am__append_1 = -I$(dvisvgm_srcdir)/libs/brotli/include
@HAVE_BROTLI_FALSE@am__append_2 = ../libs/brotli/libbrotli.a
@HAVE_WOFF2_FALSE@am__append_3 = -I$(dvisvgm_srcdir)/libs/woff2/include
@@ -158,10 +157,20 @@ check_PROGRAMS = hashcheck$(EXEEXT) BezierTest$(EXEEXT) \
UtilityTest$(EXEEXT) VectorIteratorTest$(EXEEXT) \
VectorStreamTest$(EXEEXT) XMLNodeTest$(EXEEXT) \
XMLStringTest$(EXEEXT)
-@ENABLE_WOFF_TRUE@am__append_10 = ../libs/ff-woff/libfontforge.a
subdir = tests
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -192,7 +201,7 @@ am__DEPENDENCIES_4 =
am__DEPENDENCIES_6 = $(POTRACE_LIBS) $(XXHASH_LIBS) \
$(am__DEPENDENCIES_3) $(am__append_7) $(am__DEPENDENCIES_5)
am__DEPENDENCIES_7 = libgtest.la ../src/libdvisvgm.la \
- $(am__DEPENDENCIES_6) $(am__append_10) $(am__DEPENDENCIES_4)
+ $(am__DEPENDENCIES_6)
BezierTest_DEPENDENCIES = $(am__DEPENDENCIES_7)
am_BitmapTest_OBJECTS = BitmapTest-BitmapTest.$(OBJEXT)
BitmapTest_OBJECTS = $(am_BitmapTest_OBJECTS)
@@ -872,7 +881,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -988,6 +996,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -1007,11 +1017,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -1043,7 +1049,7 @@ nodist_hashcheck_SOURCES = hashcheck.cpp
hashcheck_CPPFLAGS = $(LIBS_CFLAGS)
hashcheck_LDADD = $(LIBS_LIBS)
TESTLIBS = libgtest.la ../src/libdvisvgm.la $(LIBS_LIBS) -lfreetype \
- $(am__append_10) $(CODE_COVERAGE_LDFLAGS)
+ $(CODE_COVERAGE_LDFLAGS)
BezierTest_SOURCES = BezierTest.cpp testutil.hpp
BezierTest_CPPFLAGS = -I$(dvisvgm_srcdir)/tests/gtest/include $(LIBS_CFLAGS)
BezierTest_LDADD = $(TESTLIBS)
@@ -1238,9 +1244,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/../libs/defs.am $(am__co
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu tests/Makefile
+ $(AUTOMAKE) --foreign tests/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -3544,8 +3550,6 @@ uninstall-am:
hashcheck.cpp: genhashcheck.py $(dvisvgm_srcdir)/src/AGLTable.hpp $(dvisvgm_srcdir)/libs/xxHash/xxhash.h
python $^ >$@
-@CODE_COVERAGE_RULES@
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/dviware/dvisvgm/tests/MapLineTest.cpp b/dviware/dvisvgm/tests/MapLineTest.cpp
index e49ba3bd95..b38f274281 100644
--- a/dviware/dvisvgm/tests/MapLineTest.cpp
+++ b/dviware/dvisvgm/tests/MapLineTest.cpp
@@ -2,7 +2,7 @@
** MapLineTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/MatrixTest.cpp b/dviware/dvisvgm/tests/MatrixTest.cpp
index 18d6ae0855..3ff8257b43 100644
--- a/dviware/dvisvgm/tests/MatrixTest.cpp
+++ b/dviware/dvisvgm/tests/MatrixTest.cpp
@@ -2,7 +2,7 @@
** MatrixTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/MessageExceptionTest.cpp b/dviware/dvisvgm/tests/MessageExceptionTest.cpp
index 13ab01f155..4de260b272 100644
--- a/dviware/dvisvgm/tests/MessageExceptionTest.cpp
+++ b/dviware/dvisvgm/tests/MessageExceptionTest.cpp
@@ -2,7 +2,7 @@
** MessageExceptionTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/PDFParserTest.cpp b/dviware/dvisvgm/tests/PDFParserTest.cpp
index 292d1df177..555ced406d 100644
--- a/dviware/dvisvgm/tests/PDFParserTest.cpp
+++ b/dviware/dvisvgm/tests/PDFParserTest.cpp
@@ -2,7 +2,7 @@
** PDFParserTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/PSInterpreterTest.cpp b/dviware/dvisvgm/tests/PSInterpreterTest.cpp
index 74eed6959f..76f27af3a9 100644
--- a/dviware/dvisvgm/tests/PSInterpreterTest.cpp
+++ b/dviware/dvisvgm/tests/PSInterpreterTest.cpp
@@ -2,7 +2,7 @@
** PSInterpreterTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/PageRagesTest.cpp b/dviware/dvisvgm/tests/PageRagesTest.cpp
index 6b0e00878b..465c806a48 100644
--- a/dviware/dvisvgm/tests/PageRagesTest.cpp
+++ b/dviware/dvisvgm/tests/PageRagesTest.cpp
@@ -2,7 +2,7 @@
** PageRagesTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -154,10 +154,43 @@ TEST(PageRangesTest, overlap4) {
}
+TEST(PageRangesTest, even1) {
+ PageRanges pr;
+ ASSERT_TRUE(pr.parse("3-7, 1, 6-9:even"));
+ EXPECT_EQ(pr.size(), 3u);
+ Range cmp[] = {{4,4},{6,6},{8,8}};
+ EXPECT_TRUE(is_equal(pr, cmp));
+}
+
+
+TEST(PageRangesTest, even2) {
+ PageRanges pr;
+ ASSERT_TRUE(pr.parse("1,3,5:even"));
+ EXPECT_EQ(pr.size(), 0u);
+}
+
+
+TEST(PageRangesTest, odd1) {
+ PageRanges pr;
+ ASSERT_TRUE(pr.parse("3-7, 1, 6-9:odd"));
+ EXPECT_EQ(pr.size(), 5u);
+ Range cmp[] = {{1,1},{3,3},{5,5},{7,7},{9,9}};
+ EXPECT_TRUE(is_equal(pr, cmp));
+}
+
+
+TEST(PageRangesTest, odd2) {
+ PageRanges pr;
+ ASSERT_TRUE(pr.parse("2,8,10:odd"));
+ EXPECT_EQ(pr.size(), 0u);
+}
+
+
TEST(PageRangesTest, error) {
PageRanges pr;
- ASSERT_FALSE(pr.parse("x"));
- ASSERT_FALSE(pr.parse("5-x"));
- ASSERT_FALSE(pr.parse("5 6"));
- ASSERT_FALSE(pr.parse("5,"));
+ EXPECT_FALSE(pr.parse("x"));
+ EXPECT_FALSE(pr.parse("5-x"));
+ EXPECT_FALSE(pr.parse("5 6"));
+ EXPECT_FALSE(pr.parse("5,"));
+ EXPECT_FALSE(pr.parse("1-9:dummy"));
}
diff --git a/dviware/dvisvgm/tests/PageSizeTest.cpp b/dviware/dvisvgm/tests/PageSizeTest.cpp
index eb562e38bf..cb69f76a28 100644
--- a/dviware/dvisvgm/tests/PageSizeTest.cpp
+++ b/dviware/dvisvgm/tests/PageSizeTest.cpp
@@ -2,7 +2,7 @@
** PageSizeTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/PairTest.cpp b/dviware/dvisvgm/tests/PairTest.cpp
index c53b270c6f..a5c9b8f896 100644
--- a/dviware/dvisvgm/tests/PairTest.cpp
+++ b/dviware/dvisvgm/tests/PairTest.cpp
@@ -2,7 +2,7 @@
** PairTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/PapersizeSpecialTest.cpp b/dviware/dvisvgm/tests/PapersizeSpecialTest.cpp
index 536f6ff0a8..9f49f935be 100644
--- a/dviware/dvisvgm/tests/PapersizeSpecialTest.cpp
+++ b/dviware/dvisvgm/tests/PapersizeSpecialTest.cpp
@@ -2,7 +2,7 @@
** PapersizeSpecialTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/RangeMapTest.cpp b/dviware/dvisvgm/tests/RangeMapTest.cpp
index 34ee95ebe6..25701fcd6f 100644
--- a/dviware/dvisvgm/tests/RangeMapTest.cpp
+++ b/dviware/dvisvgm/tests/RangeMapTest.cpp
@@ -2,7 +2,7 @@
** RangeMapTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/SVGOutputTest.cpp b/dviware/dvisvgm/tests/SVGOutputTest.cpp
index 5544c7bfe2..9ea39e6311 100644
--- a/dviware/dvisvgm/tests/SVGOutputTest.cpp
+++ b/dviware/dvisvgm/tests/SVGOutputTest.cpp
@@ -2,7 +2,7 @@
** SVGOutputTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/ShadingPatchTest.cpp b/dviware/dvisvgm/tests/ShadingPatchTest.cpp
index 066617c029..8d79ba5a4f 100644
--- a/dviware/dvisvgm/tests/ShadingPatchTest.cpp
+++ b/dviware/dvisvgm/tests/ShadingPatchTest.cpp
@@ -2,7 +2,7 @@
** ShadingPatchTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/SpecialManagerTest.cpp b/dviware/dvisvgm/tests/SpecialManagerTest.cpp
index e3da75a417..a425029c74 100644
--- a/dviware/dvisvgm/tests/SpecialManagerTest.cpp
+++ b/dviware/dvisvgm/tests/SpecialManagerTest.cpp
@@ -2,7 +2,7 @@
** SpecialManagerTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/SplittedCharInputBufferTest.cpp b/dviware/dvisvgm/tests/SplittedCharInputBufferTest.cpp
index df5ec5d1d6..de393100e2 100644
--- a/dviware/dvisvgm/tests/SplittedCharInputBufferTest.cpp
+++ b/dviware/dvisvgm/tests/SplittedCharInputBufferTest.cpp
@@ -2,7 +2,7 @@
** SplittedCharInputBufferTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/StreamInputBufferTest.cpp b/dviware/dvisvgm/tests/StreamInputBufferTest.cpp
index 1d9e7e31ce..428c50f945 100644
--- a/dviware/dvisvgm/tests/StreamInputBufferTest.cpp
+++ b/dviware/dvisvgm/tests/StreamInputBufferTest.cpp
@@ -2,7 +2,7 @@
** StreamInputBufferTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/StreamReaderTest.cpp b/dviware/dvisvgm/tests/StreamReaderTest.cpp
index 56d21d4da2..c1ed3b60bc 100644
--- a/dviware/dvisvgm/tests/StreamReaderTest.cpp
+++ b/dviware/dvisvgm/tests/StreamReaderTest.cpp
@@ -2,7 +2,7 @@
** StreamReaderTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/StreamWriterTest.cpp b/dviware/dvisvgm/tests/StreamWriterTest.cpp
index a84d5cfb70..931ca04095 100644
--- a/dviware/dvisvgm/tests/StreamWriterTest.cpp
+++ b/dviware/dvisvgm/tests/StreamWriterTest.cpp
@@ -2,7 +2,7 @@
** StreamWriterTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/StringMatcherTest.cpp b/dviware/dvisvgm/tests/StringMatcherTest.cpp
index e8979424d7..5383595fc5 100644
--- a/dviware/dvisvgm/tests/StringMatcherTest.cpp
+++ b/dviware/dvisvgm/tests/StringMatcherTest.cpp
@@ -2,7 +2,7 @@
** StringMatcherTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/SubfontTest.cpp b/dviware/dvisvgm/tests/SubfontTest.cpp
index adac8d1648..1a43465cfb 100644
--- a/dviware/dvisvgm/tests/SubfontTest.cpp
+++ b/dviware/dvisvgm/tests/SubfontTest.cpp
@@ -2,7 +2,7 @@
** SubfontTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/TFMReaderTest.cpp b/dviware/dvisvgm/tests/TFMReaderTest.cpp
index 9123ceb9e9..40d40e2967 100644
--- a/dviware/dvisvgm/tests/TFMReaderTest.cpp
+++ b/dviware/dvisvgm/tests/TFMReaderTest.cpp
@@ -2,7 +2,7 @@
** TFMReaderTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/TensorProductPatchTest.cpp b/dviware/dvisvgm/tests/TensorProductPatchTest.cpp
index 0453cb2835..3381d46d7f 100644
--- a/dviware/dvisvgm/tests/TensorProductPatchTest.cpp
+++ b/dviware/dvisvgm/tests/TensorProductPatchTest.cpp
@@ -2,7 +2,7 @@
** TensorProductPatchTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -78,7 +78,7 @@ class TensorProductPatchTest : public ::testing::Test {
_patch.setColors(colors, 0, 0);
}
- void checkBezierPoints (const Bezier &b, const DPair &p1, const DPair &p2, const DPair &p3, const DPair &p4) const {
+ void checkBezierPoints (const CubicBezier &b, const DPair &p1, const DPair &p2, const DPair &p3, const DPair &p4) const {
EXPECT_EQ(b.point(0), p1);
EXPECT_EQ(b.point(1), p2);
EXPECT_EQ(b.point(2), p3);
@@ -184,7 +184,7 @@ TEST_F(TensorProductPatchTest, vertices) {
TEST_F(TensorProductPatchTest, curves) {
- Bezier bezier;
+ CubicBezier bezier;
_patch.horizontalCurve(0, bezier);
CHECK_BEZIER_POINTS("A", bezier, DPair(10, 10), DPair(20, 0), DPair(50, 30), DPair(70, 20));
_patch.horizontalCurve(1, bezier);
diff --git a/dviware/dvisvgm/tests/ToUnicodeMapTest.cpp b/dviware/dvisvgm/tests/ToUnicodeMapTest.cpp
index 5cfa366bd9..2cc49e2b3e 100644
--- a/dviware/dvisvgm/tests/ToUnicodeMapTest.cpp
+++ b/dviware/dvisvgm/tests/ToUnicodeMapTest.cpp
@@ -2,7 +2,7 @@
** ToUnicodeMapTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/TpicSpecialTest.cpp b/dviware/dvisvgm/tests/TpicSpecialTest.cpp
index fc98e02017..04f112792a 100644
--- a/dviware/dvisvgm/tests/TpicSpecialTest.cpp
+++ b/dviware/dvisvgm/tests/TpicSpecialTest.cpp
@@ -2,7 +2,7 @@
** TpicSpecialTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/TriangularPatchTest.cpp b/dviware/dvisvgm/tests/TriangularPatchTest.cpp
index 780fba77e0..068a280681 100644
--- a/dviware/dvisvgm/tests/TriangularPatchTest.cpp
+++ b/dviware/dvisvgm/tests/TriangularPatchTest.cpp
@@ -2,7 +2,7 @@
** TriangularPatchTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/UnicodeTest.cpp b/dviware/dvisvgm/tests/UnicodeTest.cpp
index 2cb8753e0b..c5429810f4 100644
--- a/dviware/dvisvgm/tests/UnicodeTest.cpp
+++ b/dviware/dvisvgm/tests/UnicodeTest.cpp
@@ -2,7 +2,7 @@
** UnicodeTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/UtilityTest.cpp b/dviware/dvisvgm/tests/UtilityTest.cpp
index b0f0320f69..4c920e417c 100644
--- a/dviware/dvisvgm/tests/UtilityTest.cpp
+++ b/dviware/dvisvgm/tests/UtilityTest.cpp
@@ -2,7 +2,7 @@
** UtilityTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
@@ -146,3 +146,45 @@ TEST(UtilityTest, base64_copy) {
ASSERT_EQ(base64("abcd"), "YWJjZA==");
ASSERT_EQ(base64("aBcDe\nFgHiJ\n"), "YUJjRGUKRmdIaUoK");
}
+
+
+TEST(UtilityTest, count_leading_zeros) {
+ EXPECT_EQ(count_leading_zeros(int8_t(0)), 8);
+ EXPECT_EQ(count_leading_zeros(int16_t(0)), 16);
+ EXPECT_EQ(count_leading_zeros(int32_t(0)), 32);
+ for (int i=0; i < 8; i++) {
+ EXPECT_EQ(count_leading_zeros(uint8_t(1 << i)), 7-i);
+ EXPECT_EQ(count_leading_zeros(uint8_t((1 << i) | 1)), 7-i);
+ EXPECT_EQ(count_leading_zeros(uint8_t(0xff >> i)), i);
+ }
+ for (int i=0; i < 16; i++) {
+ EXPECT_EQ(count_leading_zeros(uint16_t(1 << i)), 15-i);
+ EXPECT_EQ(count_leading_zeros(uint16_t((1 << i) | 1)), 15-i);
+ EXPECT_EQ(count_leading_zeros(uint16_t(0xffff >> i)), i);
+ }
+ for (int i=0; i < 32; i++) {
+ EXPECT_EQ(count_leading_zeros(uint32_t(1 << i)), 31-i);
+ EXPECT_EQ(count_leading_zeros(uint32_t((1 << i) | 1)), 31-i);
+ EXPECT_EQ(count_leading_zeros(uint32_t(0xffffffff >> i)), i);
+ }
+}
+
+
+TEST(UtilityTest, ilog2) {
+ EXPECT_EQ(ilog2(0), -1);
+ for (int i=0; i < 8; i++) {
+ EXPECT_EQ(ilog2(uint8_t(1 << i)), i);
+ EXPECT_EQ(ilog2(uint8_t((1 << i)|1)), i);
+ EXPECT_EQ(ilog2(uint8_t(0xff >> i)), 7-i);
+ }
+ for (int i=0; i < 16; i++) {
+ EXPECT_EQ(ilog2(uint16_t(1 << i)), i);
+ EXPECT_EQ(ilog2(uint16_t((1 << i)|1)), i);
+ EXPECT_EQ(ilog2(uint16_t(0xffff >> i)), 15-i);
+ }
+ for (int i=0; i < 32; i++) {
+ EXPECT_EQ(ilog2(uint32_t(1 << i)), i);
+ EXPECT_EQ(ilog2(uint32_t((1 << i)|1)), i);
+ EXPECT_EQ(ilog2(uint32_t(0xffffffff >> i)), 31-i);
+ }
+}
diff --git a/dviware/dvisvgm/tests/VectorIteratorTest.cpp b/dviware/dvisvgm/tests/VectorIteratorTest.cpp
index 13d17de2a3..45d54e245d 100644
--- a/dviware/dvisvgm/tests/VectorIteratorTest.cpp
+++ b/dviware/dvisvgm/tests/VectorIteratorTest.cpp
@@ -2,7 +2,7 @@
** VectorIteratorTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/VectorStreamTest.cpp b/dviware/dvisvgm/tests/VectorStreamTest.cpp
index e67dbfcbbe..497b3266eb 100644
--- a/dviware/dvisvgm/tests/VectorStreamTest.cpp
+++ b/dviware/dvisvgm/tests/VectorStreamTest.cpp
@@ -2,7 +2,7 @@
** VectorStreamTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/XMLNodeTest.cpp b/dviware/dvisvgm/tests/XMLNodeTest.cpp
index 413a3a64da..bc65c681b0 100644
--- a/dviware/dvisvgm/tests/XMLNodeTest.cpp
+++ b/dviware/dvisvgm/tests/XMLNodeTest.cpp
@@ -2,7 +2,7 @@
** XMLNodeTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/XMLStringTest.cpp b/dviware/dvisvgm/tests/XMLStringTest.cpp
index 7896bd0ac1..65944573f7 100644
--- a/dviware/dvisvgm/tests/XMLStringTest.cpp
+++ b/dviware/dvisvgm/tests/XMLStringTest.cpp
@@ -2,7 +2,7 @@
** XMLStringTest.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/check-conv b/dviware/dvisvgm/tests/check-conv
index 2ab0f1199c..89ba4fd9b5 100755
--- a/dviware/dvisvgm/tests/check-conv
+++ b/dviware/dvisvgm/tests/check-conv
@@ -2,7 +2,7 @@
# This file is part of the dvisvgm package and published under the
# terms of the GNU General Public License version 3 or later.
# See file COPYING for further details.
-# Copyright (C) 2009-2022 Martin Gieseking <martin.gieseking@uos.de>
+# Copyright (C) 2009-2023 Martin Gieseking <martin.gieseking@uos.de>
files=(sample frktest)
diff --git a/dviware/dvisvgm/tests/data/Makefile.am b/dviware/dvisvgm/tests/data/Makefile.am
index 62ab94c498..52caa64fef 100644
--- a/dviware/dvisvgm/tests/data/Makefile.am
+++ b/dviware/dvisvgm/tests/data/Makefile.am
@@ -1,5 +1,5 @@
## This file is part of dvisvgm
-## Copyright (C) 2016-2022 Martin Gieseking <martin.gieseking@uos.de>
+## Copyright (C) 2016-2023 Martin Gieseking <martin.gieseking@uos.de>
##
## Process this file with automake.
diff --git a/dviware/dvisvgm/tests/data/Makefile.in b/dviware/dvisvgm/tests/data/Makefile.in
index 631a6a51ac..944d237691 100644
--- a/dviware/dvisvgm/tests/data/Makefile.in
+++ b/dviware/dvisvgm/tests/data/Makefile.in
@@ -87,10 +87,20 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-target_triplet = @target@
subdir = tests/data
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_ac_append_to_file.m4 \
+ $(top_srcdir)/m4/ax_ac_print_to_file.m4 \
+ $(top_srcdir)/m4/ax_add_am_macro_static.m4 \
+ $(top_srcdir)/m4/ax_am_macros_static.m4 \
+ $(top_srcdir)/m4/ax_check_compile_flag.m4 \
+ $(top_srcdir)/m4/ax_code_coverage.m4 \
+ $(top_srcdir)/m4/ax_cxx_compile_stdcxx.m4 \
+ $(top_srcdir)/m4/ax_file_escapes.m4 \
+ $(top_srcdir)/m4/ax_gcc_builtin.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -140,7 +150,6 @@ CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@
CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@
CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
-CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
@@ -256,6 +265,8 @@ host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
+ifGNUmake = @ifGNUmake@
+ifnGNUmake = @ifnGNUmake@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -275,11 +286,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
-target = @target@
target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -314,9 +321,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/data/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/data/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu tests/data/Makefile
+ $(AUTOMAKE) --foreign tests/data/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
diff --git a/dviware/dvisvgm/tests/genhashcheck.py b/dviware/dvisvgm/tests/genhashcheck.py
index a145857a42..efa1f1ef48 100755
--- a/dviware/dvisvgm/tests/genhashcheck.py
+++ b/dviware/dvisvgm/tests/genhashcheck.py
@@ -2,7 +2,7 @@
# This file is part of the dvisvgm package and published under the
# terms of the GNU General Public License version 3 or later.
# See file COPYING for further details.
-# Copyright (C) 2016-2022 Martin Gieseking <martin.gieseking@uos.de>
+# Copyright (C) 2016-2023 Martin Gieseking <martin.gieseking@uos.de>
import re
import sys
diff --git a/dviware/dvisvgm/tests/normalize.xsl b/dviware/dvisvgm/tests/normalize.xsl
index ca9d2c639d..89df7ea746 100644
--- a/dviware/dvisvgm/tests/normalize.xsl
+++ b/dviware/dvisvgm/tests/normalize.xsl
@@ -2,7 +2,7 @@
<!-- *********************************************************************
** Stylesheet to rearrange font-/path-elements in an SVG file. **
** It's part of the dvisvgm package. **
-** Copyright (C) 2009-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2009-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/dviware/dvisvgm/tests/testmain.cpp b/dviware/dvisvgm/tests/testmain.cpp
index 9003c19eaa..4c73ce4cf8 100644
--- a/dviware/dvisvgm/tests/testmain.cpp
+++ b/dviware/dvisvgm/tests/testmain.cpp
@@ -2,7 +2,7 @@
** testmain.cpp **
** **
** This file is part of dvisvgm -- a fast DVI to SVG converter **
-** Copyright (C) 2005-2022 Martin Gieseking <martin.gieseking@uos.de> **
+** Copyright (C) 2005-2023 Martin Gieseking <martin.gieseking@uos.de> **
** **
** This program is free software; you can redistribute it and/or **
** modify it under the terms of the GNU General Public License as **
diff --git a/fonts/musixtex-fonts/README b/fonts/musixtex-fonts/README
index 0fbd6798c4..3e6c73c09b 100644
--- a/fonts/musixtex-fonts/README
+++ b/fonts/musixtex-fonts/README
@@ -1,4 +1,4 @@
-This is musixtex-fonts version 2.0 packaged 2021-08-30.
+This is musixtex-fonts version 2.0 packaged 2023-01-11.
It contains all of the font-related files for MusiXTeX,
including both the original metafont sources and Type 1
versions by Takanori Uchiyama, and the specialized frenchtab
@@ -51,6 +51,9 @@ https://github.com/musescore/MuseScore/blob/master/fonts
and is licensed under the SIL Open Font Licence,
Version 1.1; the text may be found in the doc directory.
+The font file feta20.pfb is Copyright (C) 1997--2022 Han-Wen Nienhuys
+<hanwen@xs4all.nl> and is licensed under the SIL Open Font Licence.
+
Additional documentation, additional add-on packages, and many examples
of MusiXTeX typesetting may be found at the Werner Icking Music Archive
at
diff --git a/fonts/musixtex-fonts/map/musix.map b/fonts/musixtex-fonts/map/musix.map
index 085929af51..759be20e14 100644
--- a/fonts/musixtex-fonts/map/musix.map
+++ b/fonts/musixtex-fonts/map/musix.map
@@ -1,4 +1,5 @@
frenchtab frenchtab <frenchtab.pfb
+feta20 feta20 <feta20.pfb
MuseJazzText MuseJazzText <MuseJazzText.pfb
musix11 musix11 <musix11.pfb
musix13 musix13 <musix13.pfb
diff --git a/fonts/musixtex-fonts/tfm/feta20.tfm b/fonts/musixtex-fonts/tfm/feta20.tfm
new file mode 100644
index 0000000000..32b255ec67
--- /dev/null
+++ b/fonts/musixtex-fonts/tfm/feta20.tfm
Binary files differ
diff --git a/fonts/musixtex-fonts/type1/feta20.pfb b/fonts/musixtex-fonts/type1/feta20.pfb
new file mode 100644
index 0000000000..5bf5f92308
--- /dev/null
+++ b/fonts/musixtex-fonts/type1/feta20.pfb
Binary files differ
diff --git a/info/biblio/texbook2.bib b/info/biblio/texbook2.bib
index a91adec163..e75c8c86a8 100644
--- a/info/biblio/texbook2.bib
+++ b/info/biblio/texbook2.bib
@@ -16,7 +16,7 @@
%%% USA",
%%% telephone = "+1 801 581 5254",
%%% FAX = "+1 801 581 4148",
-%%% checksum = "27043 11752 47690 460820",
+%%% checksum = "24989 11837 48139 465277",
%%% email = "beebe at math.utah.edu, beebe at acm.org,
%%% beebe at computer.org (Internet)",
%%% codetable = "ISO/ASCII",
@@ -807,6 +807,9 @@
@String{pub-PHPTR = "Pren{\-}tice-Hall PTR"}
@String{pub-PHPTR:adr = "Upper Saddle River, NJ 07458, USA"}
+@String{pub-PRINCETON = "Princeton University Press"}
+@String{pub-PRINCETON:adr = "Princeton, NJ, USA"}
+
@String{pub-PUP = "Princeton University Press"}
@String{pub-PUP:adr = "Princeton, NJ, USA"}
@@ -10665,6 +10668,88 @@
bibsource = "http://www.math.utah.edu/pub/tex/bib/texbook2.bib",
}
+@Book{vonNeumann:2018:MFQd,
+ author = "John von Neumann",
+ title = "Mathematical Foundations of Quantum Mechanics",
+ publisher = pub-PRINCETON,
+ address = pub-PRINCETON:adr,
+ pages = "xviii + 304",
+ year = "2018",
+ DOI = "https://doi.org/10.2307/j.ctt1wq8zhp",
+ ISBN = "0-691-17856-9 (hardcover), 0-691-17857-7 (paperback),
+ 1-4008-8992-8 (e-book)",
+ ISBN-13 = "978-0-691-17856-1 (hardcover), 978-0-691-17857-8
+ (paperback), 978-1-4008-8992-1 (e-book)",
+ LCCN = "QC174.3 .V613 2018",
+ bibdate = "Wed Apr 13 11:41:40 MDT 2022",
+ bibsource = "fsz3950.oclc.org:210/WorldCat;
+ http://www.math.utah.edu/pub/bibnet/authors/v/von-neumann-john.bib;
+ http://www.math.utah.edu/pub/tex/bib/texbook2.bib",
+ note = "Translated from the German by Robert T. Beyer. Edited
+ by Nicholas A. Wheeler.",
+ URL = "https://www.jstor.org/stable/j.ctt1wq8zhp",
+ abstract = "Quantum mechanics was still in its infancy in 1932
+ when the young John von Neumann, who would go on to
+ become one of the greatest mathematicians of the
+ twentieth century, published \booktitle{Mathematical
+ Foundations of Quantum Mechanics}, a revolutionary work
+ that for the first time provided a rigorous
+ mathematical framework for the new science. Robert
+ Beyer's 1955 English translation, which von Neumann
+ reviewed and approved, is cited more frequently today
+ than ever before. But its many treasures and insights
+ were too often obscured by the limitations of the way
+ the text and equations were set on the page. This new
+ edition of this classic work has been completely reset
+ in \TeX{}, making the text and equations far easier to
+ read.",
+ acknowledgement = ack-nhfb,
+ subject = "Matrix mechanics; M{\'e}canique des matrices;
+ MATHEMATICS; General; SCIENCE; Energy.; Mechanics;
+ Physics; Matrix mechanics.",
+ tableofcontents = "I: Introductory Considerations \\
+ 1: Origin of the Transformation Theory \\
+ 2: Original Formulations of Quantum Mechanics \\
+ 3: Equivalence of the Two Theories: The Transformation
+ Theory \\
+ 4: Equivalence of the Two Theories: Hilbert Space \\
+ II: Abstract Hilbert Space \\
+ 1: Definition of Hilbert Space \\
+ 2: Geometry of Hilbert Space \\
+ 3: Digression on the Conditions A-E \\
+ 4: Closed Linear Manifolds \\
+ 5: Operators in Hilbert Space \\
+ 6: Eigenvalue Problem \\
+ 7: Continuation \\
+ 8: Initial Considerations Concerning the Eigenvalue
+ Problem \\
+ 9: Digression on the Existence and Uniqueness of the
+ Solutions of the Eigenvalue Problem \\
+ 10: Commutative Operators \\
+ 11: Trace \\
+ III: Quantum Statistics \\
+ 1: Statistical Assertions of Quantum Mechanics \\
+ 2: Statistical Interpretation \\
+ 3: Simultaneous Measurability and Measurability in
+ General \\
+ 4: Uncertainty Relations \\
+ 5: Projections as Propositions \\
+ 6: Radiation Theory \\
+ IV: Deductive Development of the Theory \\
+ 1: Fundamental Basis of the Statistical Theory \\
+ 2: Proof of the Statistical Formulas \\
+ 3: Conclusions from Experiments \\
+ V: General Considerations \\
+ 1: Measurement and Reversibility \\
+ 2: Thermodynamic Considerations \\
+ 3: Reversibility and Equilibrium Problems \\
+ 4: Macroscopic Measurement \\
+ VI: Measuring Process \\
+ 1: Formulation of the Problem \\
+ 2: Composite Systems \\
+ 3: Discussion of the Measuring Process",
+}
+
@Book{Wakerly:MAP89,
author = "John F. Wakerly",
title = "Microcomputer architecture and programming: the 68000
diff --git a/info/biblio/texbook3.bib b/info/biblio/texbook3.bib
index 36efee6d40..af2bbf16a7 100644
--- a/info/biblio/texbook3.bib
+++ b/info/biblio/texbook3.bib
@@ -5,9 +5,9 @@
%%% ====================================================================
%%% BibTeX-file{
%%% author = "Nelson H. F. Beebe",
-%%% version = "3.91",
-%%% date = "22 September 2022",
-%%% time = "10:28:33 MDT",
+%%% version = "3.93",
+%%% date = "10 January 2023",
+%%% time = "15:32:55 MDT",
%%% filename = "texbook3.bib",
%%% address = "University of Utah
%%% Department of Mathematics, 110 LCB
@@ -17,7 +17,7 @@
%%% telephone = "+1 801 581 5254",
%%% FAX = "+1 801 581 4148",
%%% URL = "http://www.math.utah.edu/~beebe",
-%%% checksum = "14913 23344 105596 1002752",
+%%% checksum = "37827 23387 105749 1004505",
%%% email = "beebe at math.utah.edu, beebe at acm.org,
%%% beebe at computer.org (Internet)",
%%% codetable = "ISO/ASCII",
@@ -37,7 +37,7 @@
%%% covered in separate bibliographies
%%% (ep.bib, epodd.bib, and sgml.bib).
%%%
-%%% At version 3.91, the year coverage looks
+%%% At version 3.93, the year coverage looks
%%% like this:
%%%
%%% 1928 ( 1) 1960 ( 0) 1992 ( 83)
@@ -68,13 +68,13 @@
%%% 1953 ( 0) 1985 ( 35) 2017 ( 3)
%%% 1954 ( 0) 1986 ( 41) 2018 ( 1)
%%% 1955 ( 0) 1987 ( 49) 2019 ( 4)
-%%% 1956 ( 0) 1988 ( 50) 2020 ( 2)
+%%% 1956 ( 0) 1988 ( 50) 2020 ( 3)
%%% 1957 ( 0) 1989 ( 55) 2021 ( 0)
%%% 1958 ( 0) 1990 ( 54) 2022 ( 1)
-%%% 1959 ( 0) 1991 ( 41)
+%%% 1959 ( 0) 1991 ( 41) 2023 ( 1)
%%% 19xx ( 2)
%%%
-%%% Article: 222
+%%% Article: 224
%%% Book: 335
%%% Booklet: 12
%%% InCollection: 14
@@ -88,7 +88,7 @@
%%% TechReport: 60
%%% Unpublished: 2
%%%
-%%% Total entries: 857
+%%% Total entries: 859
%%%
%%% The ISBN and ISSN fields will be printed if
%%% the is-alpha.bst or is-plain.bst style
@@ -14445,6 +14445,27 @@
bibsource = "http://www.math.utah.edu/pub/tex/bib/texbook3.bib",
}
+@Article{Larson:2023:MAD,
+ author = "Eric Larson and Isabel Vogt",
+ title = "Making Accessible Documents Using {\LaTeX}",
+ journal = j-NAMS,
+ volume = "70",
+ number = "1",
+ pages = "68--71",
+ month = jan,
+ year = "2023",
+ CODEN = "AMNOAN",
+ DOI = "https://doi.org/10.1090/noti2606",
+ ISSN = "0002-9920 (print), 1088-9477 (electronic)",
+ ISSN-L = "0002-9920",
+ bibdate = "Tue Jan 10 14:52:02 2023",
+ bibsource = "http://www.math.utah.edu/pub/tex/bib/texbook3.bib",
+ URL = "https://www.ams.org/journals/notices/202301/rnoti-p68.pdf",
+ acknowledgement = ack-nhfb,
+ fjournal = "Notices of the American Mathematical Society",
+ journal-URL = "http://www.ams.org/notices/",
+}
+
@InProceedings{Laurens:2004:IIT,
author = "J{\'e}r{\^o}me Laurens",
title = "i{\TeX}Mac: An Integrated {\TeX} Environment for {Mac
@@ -15859,6 +15880,28 @@
acknowledgement = ack-nhfb,
}
+@Article{McCarthy:2020:DTS,
+ author = "Steven McCarthy",
+ title = "Digital Typography at {Stanford}",
+ journal = "She Ji: The Journal of Design, Economics, and
+ Innovation",
+ volume = "6",
+ number = "4",
+ pages = "546--560",
+ month = "Winter",
+ year = "2020",
+ ISSN = "2405-8726",
+ DOI = "https://doi.org/10.1016/j.sheji.2020.08.006",
+ bibdate = "Thu Dec 08 13:54:52 2022",
+ bibsource = "http://www.math.utah.edu/pub/tex/bib/font.bib;
+ http://www.math.utah.edu/pub/tex/bib/texbook3.bib;
+ http://www.math.utah.edu/pub/tex/bib/typeset.bib",
+ acknowledgement = ack-jf,
+ journal-URL = "http://www.journals.elsevier.com/she-ji-the-journal-of-design-economics-and-innovation",
+ keywords = "Charles Bigelow; design education; design history;
+ digitization; Stanford University; typography",
+}
+
@Article{McClelland:1988:LTD,
author = "Bruce McClelland",
title = "From logon to typeset document in under ten minutes",
diff --git a/info/biblio/texbook3.ltx b/info/biblio/texbook3.ltx
index 7f3851b5e8..3040ee2efb 100644
--- a/info/biblio/texbook3.ltx
+++ b/info/biblio/texbook3.ltx
@@ -6,9 +6,9 @@
%%% ====================================================================
%%% @LaTeX-file{
%%% author = "Nelson H. F. Beebe",
-%%% version = "3.91",
-%%% date = "22 September 2022",
-%%% time = "10:28:37 MDT",
+%%% version = "3.93",
+%%% date = "10 January 2023",
+%%% time = "15:32:47 MDT",
%%% filename = "texbook3.ltx",
%%% address = "University of Utah
%%% Department of Mathematics, 110 LCB
@@ -18,7 +18,7 @@
%%% telephone = "+1 801 581 5254",
%%% FAX = "+1 801 581 4148",
%%% URL = "http://www.math.utah.edu/~beebe",
-%%% checksum = "10908 107 404 3918",
+%%% checksum = "20742 107 404 3914",
%%% email = "beebe@math.utah.edu, beebe@acm.org,
%%% beebe@computer.org (Internet)",
%%% codetable = "ISO/ASCII",
@@ -79,8 +79,8 @@
WWW URL: \protect\path=http://www.math.utah.edu/~beebe/=
}
-\date{22 September 2022 \\
-Version 3.91}
+\date{10 January 2023 \\
+Version 3.93}
\begin{document}
\nocite{*}
diff --git a/macros/latex/contrib/diffcoeff/README.txt b/macros/latex/contrib/diffcoeff/README.txt
index 79754f22e3..0122d5d56c 100644
--- a/macros/latex/contrib/diffcoeff/README.txt
+++ b/macros/latex/contrib/diffcoeff/README.txt
@@ -11,19 +11,26 @@ version. The latest version of this license is in
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-This is version 4.1 of diffcoeff.sty, and associated files,
-and requires the LaTeX3 bundles l3kernel and l3packages. The
-package eases the consistent writing of ordinary, partial
-and other derivatives of arbitrary order. Version 4.1 resolves
-an error arising from changes to xtemplate and some spacing
-issues in derivative denominators.
+Version 5.0 of diffcoeff introduces many interface incompat-
+ibilities with version 4. For that reason v5.0 and v4.2 are
+are packaged together. Version 4 can always be used to comp-
+ile an older document by using the trailing optional argument
+in the \usepackage statement, e.g., \usepackage{diffcoeff}[=v4]
+The aim in both versions is to ease the writing of differential
+coefficients (derivatives) and related quantities (jacobians,
+differentials). Both versions require xtemplate from the
+l3packages bundle. Version 5 also requires the mleftright
+package.
Manifest
%%%%%%%%
README.txt this document
-diffcoeff.sty LaTeX .sty file
-diffcoeff-doc.def definition file of variant forms
- to be placed with the .sty file
-diffcoeff.pdf documentation
-diffcoeff.tex LaTeX source of documentation
+diffcoeff.sty LaTeX .sty file (current version, v5.0)
+diffcoeff4.sty LaTeX .sty file (older version, v4.2)
+diffcoeff5.def definition file of variant forms in v5
+diffcoeff-doc.def definition file of variant forms in v4
+diffcoeff.pdf documentation for current version, v5
+diffcoeff.tex LaTeX source of documentation for v5.
+diffcoeff4.pdf documentation for older version, v4
+diffcoeff4.tex LaTeX source of documentation for v4
diff --git a/macros/latex/contrib/diffcoeff/diffcoeff-doc.def b/macros/latex/contrib/diffcoeff/diffcoeff-doc.def
index 884d41760b..879285dea0 100644
--- a/macros/latex/contrib/diffcoeff/diffcoeff-doc.def
+++ b/macros/latex/contrib/diffcoeff/diffcoeff-doc.def
@@ -114,4 +114,8 @@
left-delim = \left ( ,
right-delim = \right ),
subscr-nudge = -6 mu
- } \ No newline at end of file
+ }
+
+ %%%%%%%%%% differential %%%%%%%%%%
+ \diffdef { up }
+ { op-symbol = \mathrm{d} } \ No newline at end of file
diff --git a/macros/latex/contrib/diffcoeff/diffcoeff.pdf b/macros/latex/contrib/diffcoeff/diffcoeff.pdf
index 78a8eb2265..bdeb96b06a 100644
--- a/macros/latex/contrib/diffcoeff/diffcoeff.pdf
+++ b/macros/latex/contrib/diffcoeff/diffcoeff.pdf
@@ -1,3571 +1,5084 @@
%PDF-1.5
%ÐÔÅØ
1 0 obj
-<< /S /GoTo /D (section.1) >>
+<< /S /GoTo /D (chapter.1) >>
endobj
4 0 obj
(\376\377\0001\000\040\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n)
endobj
5 0 obj
-<< /S /GoTo /D (subsection.1.1) >>
+<< /S /GoTo /D (section.1.1) >>
endobj
8 0 obj
(\376\377\0001\000.\0001\000\040\000P\000a\000c\000k\000a\000g\000e\000\040\000o\000p\000t\000i\000o\000n\000s)
endobj
9 0 obj
-<< /S /GoTo /D (section.2) >>
+<< /S /GoTo /D (section.1.2) >>
endobj
12 0 obj
-(\376\377\0002\000\040\000A\000\040\000R\000o\000g\000u\000e\000s\000'\000\040\000G\000a\000l\000l\000e\000r\000y\000\040\000o\000f\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+(\376\377\0001\000.\0002\000\040\000A\000\040\000R\000o\000g\000u\000e\000s\000'\000\040\000G\000a\000l\000l\000e\000r\000y\000\040\000o\000f\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
endobj
13 0 obj
-<< /S /GoTo /D (section.3) >>
+<< /S /GoTo /D (chapter.2) >>
endobj
16 0 obj
-(\376\377\0003\000\040\000O\000r\000d\000i\000n\000a\000r\000y\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s\000\040)
+(\376\377\0002\000\040\000S\000y\000n\000t\000a\000x\000\040\000a\000n\000d\000\040\000u\000s\000e)
endobj
17 0 obj
-<< /S /GoTo /D (subsection.3.1) >>
+<< /S /GoTo /D (section.2.1) >>
endobj
20 0 obj
-(\376\377\0003\000.\0001\000\040\000S\000p\000a\000c\000i\000n\000g\000\040\000b\000e\000f\000o\000r\000e\000\040\000t\000h\000e\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000n\000d)
+(\376\377\0002\000.\0001\000\040\000S\000y\000n\000t\000a\000x)
endobj
21 0 obj
-<< /S /GoTo /D (subsubsection.3.1.1) >>
+<< /S /GoTo /D (section.2.2) >>
endobj
24 0 obj
-(\376\377\0003\000.\0001\000.\0001\000\040\000L\000i\000g\000a\000t\000u\000r\000e\000s\000:\000\040)
+(\376\377\0002\000.\0002\000\040\000G\000e\000n\000e\000r\000a\000l\000\040\000u\000s\000e)
endobj
25 0 obj
-<< /S /GoTo /D (subsubsection.3.1.2) >>
+<< /S /GoTo /D (subsection.2.2.1) >>
endobj
28 0 obj
-(\376\377\0003\000.\0001\000.\0002\000\040\000S\000p\000a\000c\000i\000n\000g\000\040\000c\000o\000m\000m\000a\000n\000d\000s)
+(\376\377\0002\000.\0002\000.\0001\000\040\000S\000p\000a\000c\000i\000n\000g\000\040\000b\000e\000f\000o\000r\000e\000\040\000t\000h\000e\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000n\000d)
endobj
29 0 obj
-<< /S /GoTo /D (subsection.3.2) >>
+<< /S /GoTo /D (subsubsection.2.2.1.1) >>
endobj
32 0 obj
-(\376\377\0003\000.\0002\000\040\000A\000p\000p\000e\000n\000d\000i\000n\000g\000\040\000t\000h\000e\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000n\000d\000:\000\040\000\134\000d\000i\000f\000f\000*)
+(\376\377\0002\000.\0002\000.\0001\000.\0001\000\040\000S\000p\000a\000c\000i\000n\000g\000\040\000c\000o\000m\000m\000a\000n\000d\000s)
endobj
33 0 obj
-<< /S /GoTo /D (subsection.3.3) >>
+<< /S /GoTo /D (subsection.2.2.2) >>
endobj
36 0 obj
-(\376\377\0003\000.\0003\000\040\000P\000o\000i\000n\000t\000\040\000o\000f\000\040\000e\000v\000a\000l\000u\000a\000t\000i\000o\000n)
+(\376\377\0002\000.\0002\000.\0002\000\040\000H\000i\000g\000h\000e\000r\000\040\000o\000r\000d\000e\000r\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
endobj
37 0 obj
-<< /S /GoTo /D (subsubsection.3.3.1) >>
+<< /S /GoTo /D (subsection.2.2.3) >>
endobj
40 0 obj
-(\376\377\0003\000.\0003\000.\0001\000\040\000S\000u\000p\000e\000r\000s\000c\000r\000i\000p\000t\000s)
+(\376\377\0002\000.\0002\000.\0003\000\040\000A\000p\000p\000e\000n\000d\000i\000n\000g\000\040\000t\000h\000e\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000n\000d)
endobj
41 0 obj
-<< /S /GoTo /D (subsection.3.4) >>
+<< /S /GoTo /D (subsubsection.2.2.3.1) >>
endobj
44 0 obj
-(\376\377\0003\000.\0004\000\040\000O\000r\000d\000e\000r\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000t\000i\000o\000n)
+(\376\377\0002\000.\0002\000.\0003\000.\0001\000\040\000T\000r\000a\000n\000s\000p\000o\000s\000i\000n\000g\000\040\000t\000h\000e\000\040\000a\000r\000g\000u\000m\000e\000n\000t\000\040\000o\000r\000d\000e\000r)
endobj
45 0 obj
-<< /S /GoTo /D (subsection.3.5) >>
+<< /S /GoTo /D (subsubsection.2.2.3.2) >>
endobj
48 0 obj
-(\376\377\0003\000.\0005\000\040\000M\000u\000l\000t\000i\000-\000c\000h\000a\000r\000a\000c\000t\000e\000r\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000s\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000t\000i\000o\000n)
+(\376\377\0002\000.\0002\000.\0003\000.\0002\000\040\000O\000p\000e\000r\000a\000t\000o\000r\000\040\000p\000a\000r\000e\000n\000t\000h\000e\000s\000i\000z\000i\000n\000g)
endobj
49 0 obj
-<< /S /GoTo /D (section.4) >>
+<< /S /GoTo /D (subsection.2.2.4) >>
endobj
52 0 obj
-(\376\377\0004\000\040\000P\000a\000r\000t\000i\000a\000l\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+(\376\377\0002\000.\0002\000.\0004\000\040\000P\000o\000i\000n\000t\000\040\000o\000f\000\040\000e\000v\000a\000l\000u\000a\000t\000i\000o\000n\000/\000v\000a\000r\000i\000a\000b\000l\000e\000s\000\040\000h\000e\000l\000d\000\040\000c\000o\000n\000s\000t\000a\000n\000t)
endobj
53 0 obj
-<< /S /GoTo /D (subsection.4.1) >>
+<< /S /GoTo /D (subsubsection.2.2.4.1) >>
endobj
56 0 obj
-(\376\377\0004\000.\0001\000\040\000V\000a\000r\000i\000a\000b\000l\000e\000s\000\040\000h\000e\000l\000d\000\040\000c\000o\000n\000s\000t\000a\000n\000t)
+(\376\377\0002\000.\0002\000.\0004\000.\0001\000\040\000S\000u\000p\000e\000r\000s\000c\000r\000i\000p\000t\000s)
endobj
57 0 obj
-<< /S /GoTo /D (subsubsection.4.1.1) >>
+<< /S /GoTo /D (subsubsection.2.2.4.2) >>
endobj
60 0 obj
-(\376\377\0004\000.\0001\000.\0001\000\040\000T\000e\000x\000t\000-\000s\000t\000y\000l\000e\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+(\376\377\0002\000.\0002\000.\0004\000.\0002\000\040\000E\000m\000p\000t\000y\000\040\000t\000r\000a\000i\000l\000i\000n\000g\000\040\000a\000r\000g\000u\000m\000e\000n\000t)
endobj
61 0 obj
-<< /S /GoTo /D (subsection.4.2) >>
+<< /S /GoTo /D (subsubsection.2.2.4.3) >>
endobj
64 0 obj
-(\376\377\0004\000.\0002\000\040\000A\000p\000p\000e\000n\000d\000i\000n\000g\000\040\000t\000h\000e\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000n\000d)
+(\376\377\0002\000.\0002\000.\0004\000.\0003\000\040\000U\000s\000e\000\040\000o\000f\000\040\000t\000h\000e\000\040\000p\000a\000c\000k\000a\000g\000e\000\040\000m\000l\000e\000f\000t\000r\000i\000g\000h\000t)
endobj
65 0 obj
-<< /S /GoTo /D (subsection.4.3) >>
+<< /S /GoTo /D (subsection.2.2.5) >>
endobj
68 0 obj
-(\376\377\0004\000.\0003\000\040\000I\000t\000e\000r\000a\000t\000e\000d\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+(\376\377\0002\000.\0002\000.\0005\000\040\000M\000i\000x\000e\000d\000\040\000p\000a\000r\000t\000i\000a\000l\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
endobj
69 0 obj
-<< /S /GoTo /D (subsection.4.4) >>
+<< /S /GoTo /D (subsubsection.2.2.5.1) >>
endobj
72 0 obj
-(\376\377\0004\000.\0004\000\040\000M\000i\000x\000e\000d\000\040\000p\000a\000r\000t\000i\000a\000l\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+(\376\377\0002\000.\0002\000.\0005\000.\0001\000\040\000A\000l\000g\000e\000b\000r\000a\000i\000c\000\040\000o\000r\000d\000e\000r\000s\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000t\000i\000o\000n)
endobj
73 0 obj
-<< /S /GoTo /D (subsubsection.4.4.1) >>
+<< /S /GoTo /D (subsubsection.2.2.5.2) >>
endobj
76 0 obj
-(\376\377\0004\000.\0004\000.\0001\000\040\000M\000i\000n\000u\000t\000i\000a\000e\000\040\000o\000f\000\040\000s\000p\000a\000c\000i\000n\000g\000\040\000\050\000a\000g\000a\000i\000n\000\051)
+(\376\377\0002\000.\0002\000.\0005\000.\0002\000\040\000O\000r\000d\000e\000r\000-\000o\000v\000e\000r\000r\000i\000d\000e\000\040\000c\000o\000m\000m\000a\000n\000d\000:\000\040\000\134\000d\000i\000f\000o\000v\000e\000r\000r\000i\000d\000e)
endobj
77 0 obj
-<< /S /GoTo /D (subsubsection.4.4.2) >>
+<< /S /GoTo /D (subsubsection.2.2.5.3) >>
endobj
80 0 obj
-(\376\377\0004\000.\0004\000.\0002\000\040\000A\000l\000g\000e\000b\000r\000a\000i\000c\000\040\000o\000r\000d\000e\000r\000s\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000t\000i\000o\000n)
+(\376\377\0002\000.\0002\000.\0005\000.\0003\000\040\000P\000a\000r\000e\000n\000t\000h\000e\000s\000e\000s)
endobj
81 0 obj
-<< /S /GoTo /D (subsubsection.4.4.3) >>
+<< /S /GoTo /D (subsubsection.2.2.5.4) >>
endobj
84 0 obj
-(\376\377\0004\000.\0004\000.\0003\000\040\000E\000r\000r\000o\000r\000\040\000m\000e\000s\000s\000a\000g\000e\000s)
+(\376\377\0002\000.\0002\000.\0005\000.\0004\000\040\000E\000r\000r\000o\000r\000\040\000m\000e\000s\000s\000a\000g\000e\000s)
endobj
85 0 obj
-<< /S /GoTo /D (subsubsection.4.4.4) >>
+<< /S /GoTo /D (subsubsection.2.2.5.5) >>
endobj
88 0 obj
-(\376\377\0004\000.\0004\000.\0004\000\040\000T\000h\000e\000\040\000o\000r\000d\000e\000r\000-\000o\000v\000e\000r\000r\000i\000d\000e\000\040\000o\000p\000t\000i\000o\000n)
+(\376\377\0002\000.\0002\000.\0005\000.\0005\000\040\000C\000o\000m\000m\000a\000\040\000l\000i\000s\000t\000\040\000o\000f\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000s\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000t\000i\000o\000n)
endobj
89 0 obj
-<< /S /GoTo /D (subsubsection.4.4.5) >>
+<< /S /GoTo /D (subsubsection.2.2.5.6) >>
endobj
92 0 obj
-(\376\377\0004\000.\0004\000.\0005\000\040\000C\000o\000m\000m\000a\000\040\000l\000i\000s\000t\000\040\000o\000f\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000s\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000t\000i\000o\000n)
+(\376\377\0002\000.\0002\000.\0005\000.\0006\000\040\000S\000p\000a\000c\000i\000n\000g\000\040\000i\000n\000\040\000t\000h\000e\000\040\000d\000e\000n\000o\000m\000i\000n\000a\000t\000o\000r)
endobj
93 0 obj
-<< /S /GoTo /D (subsubsection.4.4.6) >>
+<< /S /GoTo /D (subsection.2.2.6) >>
endobj
96 0 obj
-(\376\377\0004\000.\0004\000.\0006\000\040\000O\000v\000e\000r\000k\000i\000l\000l\000\040\000t\000e\000r\000r\000i\000t\000o\000r\000y)
+(\376\377\0002\000.\0002\000.\0006\000\040\000M\000u\000l\000t\000i\000-\000t\000o\000k\000e\000n\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000s\000:\000\040\000p\000a\000r\000e\000n\000t\000h\000e\000s\000i\000z\000i\000n\000g)
endobj
97 0 obj
-<< /S /GoTo /D (subsection.4.5) >>
+<< /S /GoTo /D (chapter.3) >>
endobj
100 0 obj
-(\376\377\0004\000.\0005\000\040\000P\000a\000r\000e\000n\000t\000h\000e\000s\000e\000s\000\040\000a\000r\000o\000u\000n\000d\000\040\000m\000u\000l\000t\000i\000-\000c\000h\000a\000r\000a\000c\000t\000e\000r\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000s)
+(\376\377\0003\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000s\000,\000\040\000d\000e\000f\000a\000u\000l\000t\000s\000\040\000\046\000\040\000v\000a\000r\000i\000a\000n\000t\000s)
endobj
101 0 obj
-<< /S /GoTo /D (subsection.4.6) >>
+<< /S /GoTo /D (section.3.1) >>
endobj
104 0 obj
-(\376\377\0004\000.\0006\000\040\000J\000a\000c\000o\000b\000i\000a\000n\000s)
+(\376\377\0003\000.\0001\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000\040\000s\000t\000r\000u\000c\000t\000u\000r\000e)
endobj
105 0 obj
-<< /S /GoTo /D (section.5) >>
+<< /S /GoTo /D (section.3.2) >>
endobj
108 0 obj
-(\376\377\0005\000\040\000C\000h\000a\000n\000g\000i\000n\000g\000\040\000d\000e\000f\000a\000u\000l\000t\000s\000;\000\040\000v\000a\000r\000i\000a\000n\000t\000\040\000f\000o\000r\000m\000s)
+(\376\377\0003\000.\0002\000\040\000D\000e\000f\000a\000u\000l\000t\000\040\000v\000a\000l\000u\000e\000s\000\040\000f\000o\000r\000\040\000t\000e\000m\000p\000l\000a\000t\000e\000\040\000D\000I\000F)
endobj
109 0 obj
-<< /S /GoTo /D (subsection.5.1) >>
+<< /S /GoTo /D (subsection.3.2.1) >>
endobj
112 0 obj
-(\376\377\0005\000.\0001\000\040\000D\000e\000f\000a\000u\000l\000t\000\040\000v\000a\000l\000u\000e\000s\000:\000\040\000o\000r\000d\000i\000n\000a\000r\000y\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+(\376\377\0003\000.\0002\000.\0001\000\040\000O\000r\000d\000i\000n\000a\000r\000y\000\040\000u\000p\000r\000i\000g\000h\000t\000-\000f\000r\000a\000c\000t\000i\000o\000n\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s\000;\000\040\000t\000e\000m\000p\000l\000a\000t\000e\000\040\000D\000I\000F\000F)
endobj
113 0 obj
-<< /S /GoTo /D (subsection.5.2) >>
+<< /S /GoTo /D (subsection.3.2.2) >>
endobj
116 0 obj
-(\376\377\0005\000.\0002\000\040\000I\000S\000O\000\040\000d\000e\000f\000a\000u\000l\000t\000s)
+(\376\377\0003\000.\0002\000.\0002\000\040\000O\000r\000d\000i\000n\000a\000r\000y\000\040\000s\000l\000a\000s\000h\000-\000f\000r\000a\000c\000t\000i\000o\000n\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s\000;\000\040\000t\000e\000m\000p\000l\000a\000t\000e\000\040\000D\000I\000F\000S)
endobj
117 0 obj
-<< /S /GoTo /D (subsection.5.3) >>
+<< /S /GoTo /D (subsection.3.2.3) >>
endobj
120 0 obj
-(\376\377\0005\000.\0003\000\040\000P\000a\000r\000t\000i\000a\000l\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+(\376\377\0003\000.\0002\000.\0003\000\040\000O\000r\000d\000i\000n\000a\000r\000y\000\040\000c\000o\000m\000p\000a\000c\000t\000-\000f\000o\000r\000m\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s\000;\000\040\000t\000e\000m\000p\000l\000a\000t\000e\000\040\000D\000I\000F\000C)
endobj
121 0 obj
-<< /S /GoTo /D (subsection.5.4) >>
+<< /S /GoTo /D (subsection.3.2.4) >>
endobj
124 0 obj
-(\376\377\0005\000.\0004\000\040\000S\000e\000t\000t\000i\000n\000g\000\040\000y\000o\000u\000r\000\040\000o\000w\000n\000\040\000d\000e\000f\000a\000u\000l\000t\000s\000:\000\040\000\134\000d\000i\000f\000f\000d\000e\000f)
+(\376\377\0003\000.\0002\000.\0004\000\040\000P\000a\000r\000t\000i\000a\000l\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s\000;\000\040\000t\000e\000m\000p\000l\000a\000t\000e\000s\000\040\000D\000I\000F\000F\000P\000,\000\040\000D\000I\000F\000S\000P\000,\000\040\000D\000I\000F\000C\000P)
endobj
125 0 obj
-<< /S /GoTo /D (subsubsection.5.4.1) >>
+<< /S /GoTo /D (section.3.3) >>
endobj
128 0 obj
-(\376\377\0005\000.\0004\000.\0001\000\040\000S\000p\000a\000c\000e\000\040\000b\000e\000f\000o\000r\000e\000\040\000t\000h\000e\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000n\000d)
+(\376\377\0003\000.\0003\000\040\000V\000a\000r\000i\000a\000n\000t\000\040\000f\000o\000r\000m\000s\000:\000\040\000t\000h\000e\000\040\000\134\000d\000i\000f\000d\000e\000f\000\040\000c\000o\000m\000m\000a\000n\000d)
endobj
129 0 obj
-<< /S /GoTo /D (subsection.5.5) >>
+<< /S /GoTo /D (subsection.3.3.1) >>
endobj
132 0 obj
-(\376\377\0005\000.\0005\000\040\000V\000a\000r\000i\000a\000n\000t\000\040\000f\000o\000r\000m\000s)
+(\376\377\0003\000.\0003\000.\0001\000\040\000T\000h\000e\000\040\000.\000d\000e\000f\000\040\000f\000i\000l\000e)
endobj
133 0 obj
-<< /S /GoTo /D (subsubsection.5.5.1) >>
+<< /S /GoTo /D (subsubsection.3.3.1.1) >>
endobj
136 0 obj
-(\376\377\0005\000.\0005\000.\0001\000\040\000T\000e\000x\000t\000-\000s\000t\000y\000l\000e\000\040\000a\000n\000d\000\040\000s\000c\000r\000i\000p\000t\000-\000s\000t\000y\000l\000e\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+(\376\377\0003\000.\0003\000.\0001\000.\0001\000\040\000L\000o\000g\000\040\000f\000i\000l\000e\000\040\000m\000e\000s\000s\000a\000g\000e)
endobj
137 0 obj
-<< /S /GoTo /D (subsubsection.5.5.2) >>
+<< /S /GoTo /D (subsection.3.3.2) >>
endobj
140 0 obj
-(\376\377\0005\000.\0005\000.\0002\000\040\000D\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s\000\040\000f\000r\000o\000m\000\040\000D\000,\000\040\000\134\000d\000e\000l\000t\000a\000,\000\040\000\134\000D\000e\000l\000t\000a)
+(\376\377\0003\000.\0003\000.\0002\000\040\000E\000x\000a\000m\000p\000l\000e\000s\000\040\000o\000f\000\040\000v\000a\000r\000i\000a\000n\000t\000s)
endobj
141 0 obj
-<< /S /GoTo /D (subsection.5.6) >>
+<< /S /GoTo /D (subsubsection.3.3.2.1) >>
endobj
144 0 obj
-(\376\377\0005\000.\0006\000\040\000T\000h\000e\000\040\000.\000d\000e\000f\000\040\000f\000i\000l\000e)
+(\376\377\0003\000.\0003\000.\0002\000.\0001\000\040\000E\000d\000i\000t\000i\000n\000g\000\040\000v\000a\000r\000i\000a\000n\000t\000\040\000f\000o\000r\000m\000s)
endobj
145 0 obj
-<< /S /GoTo /D (subsubsection.5.6.1) >>
+<< /S /GoTo /D (subsubsection.3.3.2.2) >>
endobj
148 0 obj
-(\376\377\0005\000.\0006\000.\0001\000\040\000S\000t\000r\000u\000c\000t\000u\000r\000e\000\040\000o\000f\000\040\000t\000h\000e\000\040\000.\000d\000e\000f\000\040\000f\000i\000l\000e)
+(\376\377\0003\000.\0003\000.\0002\000.\0002\000\040\000P\000a\000r\000e\000n\000t\000h\000e\000s\000i\000z\000i\000n\000g\000\040\000m\000u\000l\000t\000i\000-\000t\000o\000k\000e\000n\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000s)
endobj
149 0 obj
-<< /S /GoTo /D (subsubsection.5.6.2) >>
+<< /S /GoTo /D (subsubsection.3.3.2.3) >>
endobj
152 0 obj
-(\376\377\0005\000.\0006\000.\0002\000\040\000d\000i\000f\000f\000c\000o\000e\000f\000f\000.\000d\000e\000f)
+(\376\377\0003\000.\0003\000.\0002\000.\0003\000\040\000P\000o\000i\000n\000t\000\040\000o\000f\000\040\000e\000v\000a\000l\000u\000a\000t\000i\000o\000n)
endobj
153 0 obj
-<< /S /GoTo /D (section.6) >>
+<< /S /GoTo /D (subsubsection.3.3.2.4) >>
endobj
156 0 obj
-(\376\377\0006\000\040\000D\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l\000s\000\040\000i\000n\000\040\000i\000n\000t\000e\000g\000r\000a\000l\000s\000,\000\040\000e\000t\000c\000.)
+(\376\377\0003\000.\0003\000.\0002\000.\0004\000\040\000U\000p\000r\000i\000g\000h\000t\000\040\000t\000e\000x\000t\000-\000s\000t\000y\000l\000e\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
endobj
157 0 obj
-<< /S /GoTo /D (subsection.6.1) >>
+<< /S /GoTo /D (subsubsection.3.3.2.5) >>
endobj
160 0 obj
-(\376\377\0006\000.\0001\000\040\000O\000p\000t\000i\000o\000n\000s)
+(\376\377\0003\000.\0003\000.\0002\000.\0005\000\040\000S\000l\000a\000s\000h\000-\000f\000r\000a\000c\000t\000i\000o\000n\000\040\000s\000t\000y\000l\000e\000s)
endobj
161 0 obj
-<< /S /GoTo /D (subsubsection.6.1.1) >>
+<< /S /GoTo /D (subsubsection.3.3.2.6) >>
endobj
164 0 obj
-(\376\377\0006\000.\0001\000.\0001\000\040\000P\000a\000r\000t\000i\000a\000l\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l)
+(\376\377\0003\000.\0003\000.\0002\000.\0006\000\040\000C\000o\000m\000p\000a\000c\000t\040\023\000f\000o\000r\000m\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
endobj
165 0 obj
-<< /S /GoTo /D (subsubsection.6.1.2) >>
+<< /S /GoTo /D (subsubsection.3.3.2.7) >>
endobj
168 0 obj
-(\376\377\0006\000.\0001\000.\0002\000\040\000S\000p\000a\000c\000i\000n\000g)
+(\376\377\0003\000.\0003\000.\0002\000.\0007\000\040\000D\000,\000\040\000\134\000d\000e\000l\000t\000a\000,\000\040\000\134\000D\000e\000l\000t\000a\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
endobj
169 0 obj
-<< /S /GoTo /D (section.7) >>
+<< /S /GoTo /D (subsection.3.3.3) >>
endobj
172 0 obj
-(\376\377\0007\000\040\000R\000a\000t\000i\000o\000n\000a\000l\000e)
+(\376\377\0003\000.\0003\000.\0003\000\040\000O\000t\000h\000e\000r\000\040\000n\000o\000t\000a\000t\000i\000o\000n\000s)
endobj
173 0 obj
-<< /S /GoTo /D (subsection.7.1) >>
+<< /S /GoTo /D (section.3.4) >>
endobj
176 0 obj
-(\376\377\0007\000.\0001\000\040\000d\000i\000f\000f\000c\000o\000e\000f\000f\000.\000s\000t\000y)
+(\376\377\0003\000.\0004\000\040\000D\000e\000f\000a\000u\000l\000t\000s\000:\000\040\000s\000e\000t\000t\000i\000n\000g\000\040\000y\000o\000u\000r\000\040\000o\000w\000n)
endobj
177 0 obj
-<< /S /GoTo /D (section.8) >>
+<< /S /GoTo /D (subsection.3.4.1) >>
endobj
180 0 obj
-(\376\377\0008\000\040\000V\000e\000r\000s\000i\000o\000n\000\040\000c\000o\000m\000p\000a\000r\000i\000s\000o\000n)
+(\376\377\0003\000.\0004\000.\0001\000\040\000C\000h\000a\000n\000g\000i\000n\000g\000\040\000d\000e\000f\000a\000u\000l\000t\000s\000\040\000i\000n\000\040\000D\000I\000F)
endobj
181 0 obj
-<< /S /GoTo /D (section.9) >>
+<< /S /GoTo /D (chapter.4) >>
endobj
184 0 obj
-(\376\377\0009\000\040\000C\000o\000m\000m\000a\000n\000d\000s)
+(\376\377\0004\000\040\000D\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l\000s\000\040\000a\000n\000d\000\040\000j\000a\000c\000o\000b\000i\000a\000n\000s)
endobj
185 0 obj
-<< /S /GoTo /D [186 0 R /Fit] >>
+<< /S /GoTo /D (section.4.1) >>
+endobj
+188 0 obj
+(\376\377\0004\000.\0001\000\040\000D\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l\000s)
+endobj
+189 0 obj
+<< /S /GoTo /D (subsection.4.1.1) >>
+endobj
+192 0 obj
+(\376\377\0004\000.\0001\000.\0001\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000\040\000D\000I\000F\000L)
+endobj
+193 0 obj
+<< /S /GoTo /D (subsection.4.1.2) >>
+endobj
+196 0 obj
+(\376\377\0004\000.\0001\000.\0002\000\040\000S\000y\000n\000t\000a\000x\000\040\000a\000n\000d\000\040\000o\000p\000t\000i\000o\000n\000s)
+endobj
+197 0 obj
+<< /S /GoTo /D (subsection.4.1.3) >>
+endobj
+200 0 obj
+(\376\377\0004\000.\0001\000.\0003\000\040\000V\000a\000r\000i\000a\000n\000t\000\040\000f\000o\000r\000m\000s\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l)
endobj
201 0 obj
+<< /S /GoTo /D (subsubsection.4.1.3.1) >>
+endobj
+204 0 obj
+(\376\377\0004\000.\0001\000.\0003\000.\0001\000\040\000L\000i\000n\000e\000\040\000e\000l\000e\000m\000e\000n\000t\000s)
+endobj
+205 0 obj
+<< /S /GoTo /D (subsection.4.1.4) >>
+endobj
+208 0 obj
+(\376\377\0004\000.\0001\000.\0004\000\040\000C\000h\000a\000n\000g\000i\000n\000g\000\040\000d\000e\000f\000a\000u\000l\000t\000s)
+endobj
+209 0 obj
+<< /S /GoTo /D (subsection.4.1.5) >>
+endobj
+212 0 obj
+(\376\377\0004\000.\0001\000.\0005\000\040\000R\000a\000t\000i\000o\000n\000a\000l\000e)
+endobj
+213 0 obj
+<< /S /GoTo /D (section.4.2) >>
+endobj
+216 0 obj
+(\376\377\0004\000.\0002\000\040\000J\000a\000c\000o\000b\000i\000a\000n\000s)
+endobj
+217 0 obj
+<< /S /GoTo /D (subsection.4.2.1) >>
+endobj
+220 0 obj
+(\376\377\0004\000.\0002\000.\0001\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000\040\000D\000I\000F\000J)
+endobj
+221 0 obj
+<< /S /GoTo /D (subsection.4.2.2) >>
+endobj
+224 0 obj
+(\376\377\0004\000.\0002\000.\0002\000\040\000S\000y\000n\000t\000a\000x\000\040\000a\000n\000d\000\040\000v\000a\000r\000i\000a\000n\000t\000\040\000f\000o\000r\000m\000s)
+endobj
+225 0 obj
+<< /S /GoTo /D (subsection.4.2.3) >>
+endobj
+228 0 obj
+(\376\377\0004\000.\0002\000.\0003\000\040\000C\000h\000a\000n\000g\000i\000n\000g\000\040\000d\000e\000f\000a\000u\000l\000t\000s)
+endobj
+229 0 obj
+<< /S /GoTo /D (chapter.5) >>
+endobj
+232 0 obj
+(\376\377\0005\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+233 0 obj
+<< /S /GoTo /D (section.5.1) >>
+endobj
+236 0 obj
+(\376\377\0005\000.\0001\000\040\000C\000o\000m\000m\000a\000n\000d\000s)
+endobj
+237 0 obj
+<< /S /GoTo /D (section.5.2) >>
+endobj
+240 0 obj
+(\376\377\0005\000.\0002\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000s)
+endobj
+241 0 obj
+<< /S /GoTo /D (subsection.5.2.1) >>
+endobj
+244 0 obj
+(\376\377\0005\000.\0002\000.\0001\000\040\000D\000I\000F\000\040\000\050\000p\000r\000i\000m\000o\000g\000e\000n\000i\000t\000o\000r\000\051)
+endobj
+245 0 obj
+<< /S /GoTo /D (subsection.5.2.2) >>
+endobj
+248 0 obj
+(\376\377\0005\000.\0002\000.\0002\000\040\000D\000I\000F\000F\000\040\000\050\000u\000p\000r\000i\000g\000h\000t\000-\000f\000r\000a\000c\000t\000i\000o\000n\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000\051)
+endobj
+249 0 obj
+<< /S /GoTo /D (subsubsection.5.2.2.1) >>
+endobj
+252 0 obj
+(\376\377\0005\000.\0002\000.\0002\000.\0001\000\040\000D\000I\000F\000F\000P)
+endobj
+253 0 obj
+<< /S /GoTo /D (subsection.5.2.3) >>
+endobj
+256 0 obj
+(\376\377\0005\000.\0002\000.\0003\000\040\000D\000I\000F\000S\000\040\000\050\000s\000l\000a\000s\000h\000-\000f\000r\000a\000c\000t\000i\000o\000n\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000\051)
+endobj
+257 0 obj
+<< /S /GoTo /D (subsubsection.5.2.3.1) >>
+endobj
+260 0 obj
+(\376\377\0005\000.\0002\000.\0003\000.\0001\000\040\000D\000I\000F\000S\000P)
+endobj
+261 0 obj
+<< /S /GoTo /D (subsection.5.2.4) >>
+endobj
+264 0 obj
+(\376\377\0005\000.\0002\000.\0004\000\040\000D\000I\000F\000C\000\040\000\050\000c\000o\000m\000p\000a\000c\000t\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000\051)
+endobj
+265 0 obj
+<< /S /GoTo /D (subsubsection.5.2.4.1) >>
+endobj
+268 0 obj
+(\376\377\0005\000.\0002\000.\0004\000.\0001\000\040\000D\000I\000F\000C\000P)
+endobj
+269 0 obj
+<< /S /GoTo /D (subsection.5.2.5) >>
+endobj
+272 0 obj
+(\376\377\0005\000.\0002\000.\0005\000\040\000D\000I\000F\000J\000\040\000\050\000j\000a\000c\000o\000b\000i\000a\000n\000\051)
+endobj
+273 0 obj
+<< /S /GoTo /D (subsection.5.2.6) >>
+endobj
+276 0 obj
+(\376\377\0005\000.\0002\000.\0006\000\040\000D\000I\000F\000L\000\040\000\050\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l\000\051)
+endobj
+277 0 obj
+<< /S /GoTo /D (section.5.3) >>
+endobj
+280 0 obj
+(\376\377\0005\000.\0003\000\040\000T\000h\000e\000\040\000f\000i\000l\000e\000\040\000d\000i\000f\000f\000c\000o\000e\000f\000f\0005\000.\000d\000e\000f)
+endobj
+281 0 obj
+<< /S /GoTo /D (section.5.4) >>
+endobj
+284 0 obj
+(\376\377\0005\000.\0004\000\040\000P\000r\000e\000a\000m\000b\000l\000e\000\040\000d\000e\000f\000i\000n\000i\000t\000i\000o\000n\000s)
+endobj
+285 0 obj
+<< /S /GoTo /D (section.5.5) >>
+endobj
+288 0 obj
+(\376\377\0005\000.\0005\000\040\000\134\000D\000e\000c\000l\000a\000r\000e\000C\000h\000i\000l\000d\000T\000e\000m\000p\000l\000a\000t\000e)
+endobj
+289 0 obj
+<< /S /GoTo /D [290 0 R /Fit] >>
+endobj
+292 0 obj
<<
-/Length 1612
+/Length 363
/Filter /FlateDecode
>>
stream
-xÚÝX[oÛ6~ϯÐÛä¡âx—اe[[¬èС5†í‰v´É²!ÉKòïwIɲ­,A6¬Áž(Sä¹|ç;‹FëˆFo.è=ëwË‹o^ ±”p¦d´\E\+’*i¦ˆ0<Z–ѧ¸¬V«bkW«ÅoË·pƒNo$*#œÊ(጖ùù"”Çïü*à¥R/À]Áe$ˆâ©?}9'WIu”LŽ-ñX”‘L3ÜO©òû¯†}:îþêMØåÅ‚ëø|mýF¿õ«Í;ØQLÆýµu¥ˆf&x”Þ´U_5kg»òkY}¦BØÖ6 žÆý"aqµ`è5‹k<ÂâÔ€^ uQáA÷Ó“J²ô°_iÛ¶«¶¿gæÀK8à`ƒ»Cx.›²µ7p TüŒåmW£ú4¶^†–
-$0Œe°¼®ºE"ólÈpYÞ! ÜC±mºªë1fƒ‹{# $ó4ÀÍm[VMÞÞ-2ƒ£$z}•×þ\Þ”á Èn]ì)XF=2˶՟ !ëaEÈ1&¨0Ê«
-¼S½¶Wm^ádë×Ûo@`á‚^‚²H4XøÍNoª[[úÇÁäÇ™ç*<X‚ù·=º‹NYx\ùuš(€erÁá†D°,.0qêb_ç=Z„[Wxø.ÈMBGæl}¿CÙÎE·5`áµva«ZƒÌiâBû;ÇõmutØ9
-àiôOƒç謠Ö5¸ÒåòÞñ
-q k¾ó°Ú¦´%0Í(¤¡õ÷](Í…pzIè+•žd3—ðœr°ËÙsÛÛÍi2SÔ$'xÐψÙ±Wž&¾ñUr¢»ƒdß
-°éÀôÿοñ€Ã›µmÏ–Ã NŽÂfÐù0Dˆ›Iºq)G ^ÔûÒ™Ä>æJ¾¸ÚWuïWívÀ2Ó*›As•X?ÌÀ™’ ŠèM8N(Â|¦”Íï„¥lÛ9K(Ôùì ‡é¹ØÉG1À%)Œ ÎAèLlºdç±W±ç`"ç0ºÆ̣Ц›nßÚð#¤Ã‰©&%”‰ÁŒòvÎaNRÉÞ`™˜Ášœ#xåŒ.èÐl<0§ }“EÌ[+ýSÕŒ+zj×íèkÖÓ6‡{7U}Ž ’h‘ C‹G^bƒJɽJØ™)LÄ»Qô]HFlö XpDB«þÒF@/¶~qUႧ4jבø€m?c‘8¸FQôx˜4 Wñ æ½>˜Ùö…KÊé}‚BÒò{õp3уã $Nâ   5À†sœ½²K[:Œ›BÄ[×–º3µ†!•¥_~‘Æ<åÞ‰GLe2G»Æ-
-›Ì0ÿUUˆ,30ìõ
-Nùð,ñ/Í’3Œ¯™Â?„ø 8%ZŽ#ÿôì«åÅ_ùëJÍ
+xÚuRMOƒ@¼÷WìqIä¹o¿¹©I5i<x ÆÄzØÀ‚h Å4þ{w»Åh¬§G†™7ói #w öϼ)—·B4ÀQIR6„kFDZa )kòLë®iªÁ7MöR®‚BþTäÊg’ä¡@›.Ëãô> ”%^*Å£ h—D€â:±¯ÏíÕ ™&ùZiÄ‚ÕqÃT—3—~£O)ÂÎU×ôݵ>Ó¦wû€(”tzõÇ ¹R ±ø}Éa즮o“fhÒ¬»5¾ϸ¡S–#í2ŒW#ÝD
+Ò*Ø_ˆºê"QÓiô10T›lN?fÆR?Ozì\y9}„²¥
endstream
endobj
-186 0 obj
+290 0 obj
<<
/Type /Page
-/Contents 201 0 R
-/Resources 200 0 R
+/Contents 292 0 R
+/Resources 291 0 R
/MediaBox [0 0 612 792]
-/Parent 217 0 R
-/Annots [ 187 0 R 188 0 R 189 0 R 190 0 R 191 0 R 192 0 R 193 0 R 194 0 R 195 0 R 196 0 R 197 0 R 198 0 R ]
+/Parent 299 0 R
>>
endobj
-187 0 obj
+293 0 obj
+<<
+/D [290 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+294 0 obj
+<<
+/D [290 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+291 0 obj
+<<
+/Font << /F35 295 0 R /F34 296 0 R /F58 297 0 R /F73 298 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+302 0 obj
+<<
+/Length 1327
+/Filter /FlateDecode
+>>
+stream
+xÚµWßã4~ï_áÇTl'A‚wHé„®BH»ûà¦î®¹´)Iz»ñ¿3c»Ù¤NðÀ“Ýñdæ›ñÌç)#„‘ìÖ×ëÅ—osEJZaÈzGD!iÎ ÑBPÅYoÉmöݦë[[õËûõ ¯Gú+®à‡,ÈJpZò"~°õ»]Õ¸Ý.~!åè Í(+$¸š¾[®$™ËOñƒ’CËÌ"$F¥,‰ L— ÏŒYEea
+ñY<Œ_=Ïq#͹$’*™Êï)g¡y¶ïbºjÿ!Üd2PŒ šç¹& ŠO\ YƒÙ«CœQ!Ô¿64LI%°F>µÁKjÌ‘ogR¦!£%Ò·2râê
+‹1†Œ”Î3x
+Zh1ài]¬A[wMªBLjì_c¦äÛ.’´Ð’j!§Åün¢F’„ΰ]\gº.lN¾îq«³]ÛìçR"ÁË’ïgãÐB_nfî.§œ
+wŒñY#ð]™à¸2ÂÍì›[°’”m¤ È hB=œZÌeŒù7[5à‹”A71
+Ôx¢Œ7P>¹˜&{ œºC–€;{ÞP¸&™à¡AîâÏ¡IÒ¯CÚ¹Úx%È™sP
+j”ü¯-0!ãEýlxŠ@Ì82@ePU#­/€ …˜uÉ5Ue>aµ+ŸÐ ¥ù}þ1ëKrÆç´ZT>q‰Q¼‚ø‚ÀF—U¼·Ëí`£Æö3@²àuòŒÃPækd1)³cÛ„—z{ªðÁ¸¢%<“"ú§×vá­VŒe:.Ínf¼ÕÐjý³c-“gÒÜ7È/hvwªësܺ=F!V@žTÜ Í‚-`7¾ö=Ž|éÃfèŽ8š1œ€òáö§ó¸< ù¹wû#ÎOóã¸aîþÑâCˆ³míCoi•Åù3ä¬Ø|0_½‡m³wQߪf„ à=FˆâÇĪ©ãtÓ¹r«8N}’"…;‰m®IÐâñªë¦ë¿‚L(L§ëÄ3—0>J•u½¦å Áƒ7ÊÀK¨ôäûǨ‡Ø@4ûáÑš¤x®¨î¸T§ÎÁ Šóçí×M=»oîÿjæ¯ÛWÕ}C®ÿ†ÁXò7 flŸ
+endstream
+endobj
+301 0 obj
+<<
+/Type /Page
+/Contents 302 0 R
+/Resources 300 0 R
+/MediaBox [0 0 612 792]
+/Parent 299 0 R
+>>
+endobj
+300 0 obj
+<<
+/Font << /F74 303 0 R /F75 304 0 R /F33 305 0 R /F90 306 0 R /F76 307 0 R /F78 308 0 R /F38 309 0 R /F41 310 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+315 0 obj
+<<
+/Length 2304
+/Filter /FlateDecode
+>>
+stream
+xÚµÙrä¶ñ]_Á<‰ãh°ÄA(¿¤R•u%qÅ–ŸìT‰"1d9Ã1ÉYYùút£A9‚V›kU[ÄÑhô}`²ä)É’ïn²ðåI’1­ £ Žò¤J^­ýðõp¿d<áB±2‰0‚y™Ô‡Üš3­|SE‘ô6ÙÝüí«ñOtÿñþæÃÇB%†-tr¿K¸”¬Ðe¢g2Ë“û&ù9ý¸1:íúÍV–*=¶p(ÓnGßÏ)RXuÝ‘`Ôæï÷ùðQÊæ,Ùò’IC(ï÷–`Š|#2V”@=Ì/\ªÆívd°NÀêØDqÃôfBvŠ`“9Ë2=AÖÝá
+Ð}¦@œœ™<¨hyn•ÔéƧéªÝñ‰†g7úãûÛ¥f–öï"Ä–ƒuLÌòìyïáFY(™Ù¿d2·õ覕ç(Òj IEÐ7ŒÕ'/GÀÅÃÞ±v•æé¡ëÇntµÝ»<㞊»Õcû²Ëãœ÷ÒäéÃÐVÃÇï1Î3Ťž•þ!¦&$Ÿ
+¤[öÄîb1«ƒ×eÏ7ßD”E^©äBYy)‚²
+¦ D>{—Ü®,>RFHH¦¯
+·ÆÆ*µ‘W9…nôꄯ­úÖyC)PýhÚTyùp,ËÌ[>…‚ kÙMÚà&ýÂò•/ÌN7î{T‘½0Z k#ÌÛÎ!8Ü]ç£8×4ŸE½öyðɦqS€Ar
+ g
+w
+’/Ö‘dTˆX,îâ%¨nQ¬),Ölô´
+.\ÙÑÊøFU×–3í»7J¥ o¯QL]ŠÜá¿EPÿ‡æê"ÚpȆš=QŠ™¬œ@@бŠˆÉKYY¿rÊa =MIÊδiWå #uô)Kd—°9Û ˆG­CCh>v˜‹!ôx¯Çc¯BZKäp4ê
+*³Ì¬<¡qfXYÌ"ôé ï\ø+N{ûÜ;Hý!p máU¶‘–§.Ôh0\DsžîÎmë#l~q€
+°ò’‘ñ]‡Ò°„šam×Tqº‘
+É߇óãP÷îä‹Î°—†D¸·ƒ øì±n;jppZÑçõ‹YŒTÌ (·q5z¾ŸUô¡¶ªsSqƒkÞ·àk©ôiÏ^¦¾- ÀñìÂvÓùn¹^´ðþš°=Õ4¡÷9{òaD܀Ũþè5úÉîý!Qh_g,baÎÕàzêjqãyßÑàäùíiz¨ÆýÖU u½_xÀ—‚Û&>Åùatä„ë!ÞeTmŒòþŒ5‘Ô†$¯W’×$y‘¼ž·ìJòþ{êr
+endstream
+endobj
+314 0 obj
+<<
+/Type /Page
+/Contents 315 0 R
+/Resources 313 0 R
+/MediaBox [0 0 612 792]
+/Parent 299 0 R
+/Annots [ 311 0 R 312 0 R ]
+>>
+endobj
+311 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [132.772 277.449 212.874 286.406]
-/A << /S /GoTo /D (section.1) >>
+/Rect [341.586 300.728 356.309 311.521]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-188 0 obj
+312 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 263.556 242.832 274.349]
-/A << /S /GoTo /D (subsection.1.1) >>
+/Rect [360.404 300.728 375.127 311.521]
+/A << /S /GoTo /D (section.3.4) >>
>>
endobj
-189 0 obj
+316 0 obj
+<<
+/D [314 0 R /XYZ 133.768 653.26 null]
+>>
+endobj
+317 0 obj
+<<
+/D [314 0 R /XYZ 133.768 405.737 null]
+>>
+endobj
+313 0 obj
+<<
+/Font << /F74 303 0 R /F33 305 0 R /F75 304 0 R /F38 309 0 R /F78 308 0 R /F41 310 0 R /F76 307 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+353 0 obj
+<<
+/Length 1461
+/Filter /FlateDecode
+>>
+stream
+xÚÕY]s›F}÷¯à©…™@ØïÝäÉu7éÔ«}Iú€¥•Ì  LÒ_ß», °±*»O`KìrÏ=÷ܳW¡³pBçú"¬®¿L.^PØÁ4R g2w!àÒaBŒPg2s>»WéÊ#È-´½äÞß“ß.,:Ù±7Ÿ®a-A(Ž¹Y*t|ŽÊÅÊEç+ÌÜ°v‹,õ|¸Î6Ó"†ÕÍ‚õ[9Ÿ}ÌCÉ\zpBvöA4P”:>Bb¬Ú,€íPˆ±{ãaéFS ÷k´Ð°+!nº6»æmrÏgaøüªÔ˜çZ!&i…cýß.ž&Sûàá
+¼Ku?¥‹ö›ÿlÿ¾Ž’Dg?*,çö:ÓYüÍcÌ
+¸躃¯ââùíC† Ób´_S Z¨â5¶¼¾ýa‰}8$q£ÕÌÜPw“ëϨ Ü•ãéz›mk³mk
+Ÿ¾2ÿwEЗUùP¾óÍšï×z¥³(±„îIgâÿ O+
+5ÆÀþ#-'¥îí:šÆ«…ÕŠ;ÏéÕó4«´·¸×ö“Yü%$DgÚ286Ódõ,Ú ( @JÔƒC‰±3H€n6`LÓåÂì6Íó³¥7j<µ(l\¥ÿ×xq¯3pšÍìmÓø‘þÀŸG²öpJØ…ƒTp\®×PîjVñ ©ò L¾€nYÂ@ÆVi*bâÁBY´Ê-(iÞÅ$Ê›eÈ.‹Z¯$ÐÉã£o®Bûcm¥.‹Š´¢ÿ:Ê üM,ÂÄ—-øÇD|î÷†ËF—:­¸}cKãm®¶vP[/˜l"cµ_ÛÊÏâè.ÊoÜëdfï¦àÅ‹¨Z¥õªRªÓLðÁx·Š¾©³œO³x]äÝ÷%/Å ô&2Úpüýr]˜4UÞ¿È¢8i*x¯pÛÕÊÕ9©=.JREùg®÷ÉÜh“éç^y’„à|Àv­:æ"/]&z^dÐ ÷Ñhù{‚Dý̉qƒ%Žq»Âƪÿ=þ®gœA‹JÜÏÕck÷”~·9VX£
+endstream
+endobj
+352 0 obj
+<<
+/Type /Page
+/Contents 353 0 R
+/Resources 351 0 R
+/MediaBox [0 0 612 792]
+/Parent 299 0 R
+/Annots [ 318 0 R 319 0 R 320 0 R 321 0 R 322 0 R 323 0 R 324 0 R 325 0 R 326 0 R 327 0 R 328 0 R 329 0 R 330 0 R 331 0 R 332 0 R 333 0 R 334 0 R 335 0 R 336 0 R 337 0 R 338 0 R 339 0 R 340 0 R 341 0 R 342 0 R 343 0 R 344 0 R 345 0 R 346 0 R 347 0 R 348 0 R 349 0 R ]
+>>
+endobj
+318 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [132.772 241.639 312.836 252.533]
-/A << /S /GoTo /D (section.2) >>
+/Rect [132.772 514.77 212.874 523.727]
+/A << /S /GoTo /D (chapter.1) >>
>>
endobj
-190 0 obj
+319 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [132.772 219.721 256.552 230.615]
-/A << /S /GoTo /D (section.3) >>
+/Rect [147.716 500.877 242.832 511.67]
+/A << /S /GoTo /D (section.1.1) >>
>>
endobj
-191 0 obj
+320 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 207.766 311.601 218.558]
-/A << /S /GoTo /D (subsection.3.1) >>
+/Rect [147.716 488.922 313.581 499.715]
+/A << /S /GoTo /D (section.1.2) >>
>>
endobj
-192 0 obj
+321 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 195.811 252.324 206.603]
-/A << /S /GoTo /D (subsubsection.3.1.1) >>
+/Rect [132.772 467.004 226.312 477.898]
+/A << /S /GoTo /D (chapter.2) >>
>>
endobj
-193 0 obj
+322 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 183.855 287.58 194.648]
-/A << /S /GoTo /D (subsubsection.3.1.2) >>
+/Rect [147.716 455.049 202.788 465.842]
+/A << /S /GoTo /D (section.2.1) >>
>>
endobj
-194 0 obj
+323 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 171.9 334.1 182.748]
-/A << /S /GoTo /D (subsection.3.2) >>
+/Rect [147.716 445.031 223.695 453.887]
+/A << /S /GoTo /D (section.2.2) >>
>>
endobj
-195 0 obj
+324 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 161.882 255.23 170.738]
-/A << /S /GoTo /D (subsection.3.3) >>
+/Rect [170.63 431.139 343.482 441.932]
+/A << /S /GoTo /D (subsection.2.2.1) >>
>>
endobj
-196 0 obj
+325 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 147.99 258.08 158.783]
-/A << /S /GoTo /D (subsubsection.3.3.1) >>
+/Rect [202.511 419.184 328.426 429.976]
+/A << /S /GoTo /D (subsubsection.2.2.1.1) >>
>>
endobj
-197 0 obj
+326 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 137.972 273.716 146.827]
-/A << /S /GoTo /D (subsection.3.4) >>
+/Rect [170.63 407.228 309.277 418.021]
+/A << /S /GoTo /D (subsection.2.2.2) >>
>>
endobj
-198 0 obj
+327 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 126.017 357.098 134.872]
-/A << /S /GoTo /D (subsection.3.5) >>
+/Rect [170.63 395.273 327.403 406.066]
+/A << /S /GoTo /D (subsection.2.2.3) >>
>>
endobj
-202 0 obj
+328 0 obj
<<
-/D [186 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.511 383.318 385.878 394.111]
+/A << /S /GoTo /D (subsubsection.2.2.3.1) >>
>>
endobj
-203 0 obj
+329 0 obj
<<
-/D [186 0 R /XYZ 133.768 667.198 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.511 371.363 350.65 382.156]
+/A << /S /GoTo /D (subsubsection.2.2.3.2) >>
>>
endobj
-212 0 obj
+330 0 obj
<<
-/D [186 0 R /XYZ 133.768 318.296 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 358.854 391.857 370.809]
+/A << /S /GoTo /D (subsection.2.2.4) >>
>>
endobj
-200 0 obj
+331 0 obj
<<
-/Font << /F31 204 0 R /F30 205 0 R /F51 206 0 R /F64 207 0 R /F65 208 0 R /F66 209 0 R /F69 210 0 R /F67 211 0 R /F80 213 0 R /F81 214 0 R /F29 215 0 R /F88 216 0 R >>
-/ProcSet [ /PDF /Text ]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.511 347.453 298.927 358.245]
+/A << /S /GoTo /D (subsubsection.2.2.4.1) >>
>>
endobj
-253 0 obj
+332 0 obj
<<
-/Length 1856
-/Filter /FlateDecode
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.511 335.497 354.302 346.29]
+/A << /S /GoTo /D (subsubsection.2.2.4.2) >>
>>
-stream
-xÚÝZ]sÓ8}ï¯ð£3Ó}ÛfŸX
- ÌîÀ@‡ÙØ7QRO];+;´ý÷{õa×± iRš^Õº:º::çÊ8X8xs„ý/¿8ÐËÀ||sôçéѳ×1 ”H*ƒÓE@C‘Œ)"D™NçÁ—O¦ ᇠ£aªë,Í'S³p®töm"y˜Öð 7U5ù÷ô]Û`ðeJ©4$Ô^ðì5Mº­s”pL A‰hGd2%˜ÒðóÚLu–žåÐД1ž«|îŽfeQÕi1¡qX÷ƒ ˜$!šLÆOógoÌCÂ6.± (E ¢eñ"œ‡§/u]O«ÚÀr“+çÚ‘ÂÜ9É~”ø6”¦ã0QŸT/V«ÉÔ
-wÂ¥‚£ÁT‘0‘~òh ¤xx³°Ÿ«67”ž–&›hÍ›ù³Ë Ôý´ð}€ˆ—ååeê È3P9Äá–© ¹¸ÓäIbö³ûšì¾  éûúþ›!H¥/²<÷2Å w]ê›~c‚ÈGÐ÷Æâ=…œðKî3”©ÒœáÌJyÒLu¹.àÊÜ3‹yt×ÙtfŽÎSÎ
-endstream
endobj
-252 0 obj
+333 0 obj
<<
-/Type /Page
-/Contents 253 0 R
-/Resources 251 0 R
-/MediaBox [0 0 612 792]
-/Parent 217 0 R
-/Annots [ 199 0 R 218 0 R 219 0 R 220 0 R 221 0 R 222 0 R 223 0 R 224 0 R 225 0 R 226 0 R 227 0 R 228 0 R 229 0 R 230 0 R 231 0 R 232 0 R 233 0 R 234 0 R 235 0 R 236 0 R 237 0 R 238 0 R 239 0 R 240 0 R 241 0 R 242 0 R 243 0 R 244 0 R 245 0 R 246 0 R 247 0 R 248 0 R 249 0 R 250 0 R ]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.511 323.266 382.945 334.335]
+/A << /S /GoTo /D (subsubsection.2.2.4.3) >>
>>
endobj
-199 0 obj
+334 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [132.772 656.239 241.351 665.196]
-/A << /S /GoTo /D (section.4) >>
+/Rect [170.63 311.587 313.374 322.38]
+/A << /S /GoTo /D (subsection.2.2.5) >>
>>
endobj
-218 0 obj
+335 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 644.284 274.325 653.139]
-/A << /S /GoTo /D (subsection.4.1) >>
+/Rect [202.511 299.632 392.188 310.425]
+/A << /S /GoTo /D (subsubsection.2.2.5.1) >>
>>
endobj
-219 0 obj
+336 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 630.392 297.35 641.184]
-/A << /S /GoTo /D (subsubsection.4.1.1) >>
+/Rect [202.511 288.787 424.179 298.525]
+/A << /S /GoTo /D (subsubsection.2.2.5.2) >>
>>
endobj
-220 0 obj
+337 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 618.436 295.522 629.229]
-/A << /S /GoTo /D (subsection.4.2) >>
+/Rect [202.511 277.659 296.547 286.514]
+/A << /S /GoTo /D (subsubsection.2.2.5.3) >>
>>
endobj
-221 0 obj
+338 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 608.418 256.863 617.274]
-/A << /S /GoTo /D (subsection.4.3) >>
+/Rect [202.511 263.766 311.048 274.559]
+/A << /S /GoTo /D (subsubsection.2.2.5.4) >>
>>
endobj
-222 0 obj
+339 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 594.526 281.493 605.319]
-/A << /S /GoTo /D (subsection.4.4) >>
+/Rect [202.511 253.748 424.012 262.604]
+/A << /S /GoTo /D (subsubsection.2.2.5.5) >>
>>
endobj
-223 0 obj
+340 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 582.017 324.387 593.973]
-/A << /S /GoTo /D (subsubsection.4.4.1) >>
+/Rect [202.511 239.856 366.036 250.649]
+/A << /S /GoTo /D (subsubsection.2.2.5.6) >>
>>
endobj
-224 0 obj
+341 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 570.616 351.341 581.408]
-/A << /S /GoTo /D (subsubsection.4.4.2) >>
+/Rect [170.63 227.901 366.563 238.694]
+/A << /S /GoTo /D (subsection.2.2.6) >>
>>
endobj
-225 0 obj
+342 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 558.661 270.201 569.453]
-/A << /S /GoTo /D (subsubsection.4.4.3) >>
+/Rect [132.772 205.983 303.094 216.877]
+/A << /S /GoTo /D (chapter.3) >>
>>
endobj
-226 0 obj
+343 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 546.705 316.693 557.498]
-/A << /S /GoTo /D (subsubsection.4.4.4) >>
+/Rect [147.716 194.028 256.032 204.821]
+/A << /S /GoTo /D (section.3.1) >>
>>
endobj
-227 0 obj
+344 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 536.687 383.166 545.543]
-/A << /S /GoTo /D (subsubsection.4.4.5) >>
+/Rect [147.716 182.073 310.301 192.865]
+/A << /S /GoTo /D (section.3.2) >>
>>
endobj
-228 0 obj
+345 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 522.795 279.335 533.588]
-/A << /S /GoTo /D (subsubsection.4.4.6) >>
+/Rect [170.63 170.118 434.281 180.91]
+/A << /S /GoTo /D (subsection.3.2.1) >>
>>
endobj
-229 0 obj
+346 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 512.777 368.721 521.633]
-/A << /S /GoTo /D (subsection.4.5) >>
+/Rect [170.63 158.162 423.571 168.955]
+/A << /S /GoTo /D (subsection.3.2.2) >>
>>
endobj
-230 0 obj
+347 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 500.822 214.881 509.677]
-/A << /S /GoTo /D (subsection.4.6) >>
+/Rect [170.63 146.207 425.674 157]
+/A << /S /GoTo /D (subsection.3.2.3) >>
>>
endobj
-231 0 obj
+348 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [132.772 476.967 314.101 487.861]
-/A << /S /GoTo /D (section.5) >>
+/Rect [170.63 134.252 426.061 145.045]
+/A << /S /GoTo /D (subsection.3.2.4) >>
>>
endobj
-232 0 obj
+349 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 465.012 328.207 475.804]
-/A << /S /GoTo /D (subsection.5.1) >>
+/Rect [147.716 123.407 338.859 133.145]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-233 0 obj
+354 0 obj
+<<
+/D [352 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+355 0 obj
+<<
+/D [352 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+351 0 obj
+<<
+/Font << /F92 356 0 R /F74 303 0 R /F33 305 0 R /F75 304 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+398 0 obj
+<<
+/Length 1430
+/Filter /FlateDecode
+>>
+stream
+xÚíšMs£F†ïþQU4;ß@Ž‘í­¸\—­ä²›–‰ ÂŽ_¿Í§Œ bemr±ÂýÌ;Ýý΀…Ïg8%ðÑÂÈn?Ÿý2=ûtɘá GRiL=ƒX%‡RXˆ2aLçÆ“!†ÈhLçæt©FN¯>]ZbçßEL8ð¥éõh®¼ì¢ÊwSŽ(gÅE_1ãAú]å _Æ&ƃyᎳï³ÚÍls“ñÊé&tcÌ9²(1
+Œl‡5‰Ò.D/÷íšW>n7L*› ÕufÈÙOIYS:ꌉ˜Òíôò`›ô´ŠäÀš[»ün^kx
+jžÍt“™sœûž7 •ç‰â)Í}iÁf[|Ði¡'QÂa΃£¯Õ¦bÿ&Rnú<Ù}öô7çPPTlŒn£Èbì„L¥ÎÙÈC׋„6kæ~²˜³éS0³ÀÔdéóéÎÒå>Õ°Ÿžìduu©ü8a†!-ÚIð…ÙC•K/¦gß
+endstream
+endobj
+397 0 obj
+<<
+/Type /Page
+/Contents 398 0 R
+/Resources 396 0 R
+/MediaBox [0 0 612 792]
+/Parent 299 0 R
+/Annots [ 350 0 R 357 0 R 358 0 R 359 0 R 360 0 R 361 0 R 362 0 R 363 0 R 364 0 R 365 0 R 366 0 R 367 0 R 368 0 R 369 0 R 370 0 R 371 0 R 372 0 R 373 0 R 374 0 R 375 0 R 376 0 R 377 0 R 378 0 R 379 0 R 380 0 R 381 0 R 382 0 R 383 0 R 384 0 R 385 0 R 386 0 R 387 0 R 388 0 R 389 0 R 390 0 R 391 0 R 392 0 R 393 0 R 394 0 R 395 0 R ]
+>>
+endobj
+350 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 454.994 226.919 463.849]
-/A << /S /GoTo /D (subsection.5.2) >>
+/Rect [170.63 656.239 261.954 665.095]
+/A << /S /GoTo /D (subsection.3.3.1) >>
>>
endobj
-234 0 obj
+357 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 443.039 252.02 451.894]
-/A << /S /GoTo /D (subsection.5.3) >>
+/Rect [202.511 642.347 315.891 653.139]
+/A << /S /GoTo /D (subsubsection.3.3.1.1) >>
>>
endobj
-235 0 obj
+358 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 429.146 333.547 439.995]
-/A << /S /GoTo /D (subsection.5.4) >>
+/Rect [170.63 630.392 295.551 641.184]
+/A << /S /GoTo /D (subsection.3.3.2) >>
>>
endobj
-236 0 obj
+359 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 417.191 334.626 427.984]
-/A << /S /GoTo /D (subsubsection.5.4.1) >>
+/Rect [202.511 618.436 338.86 629.229]
+/A << /S /GoTo /D (subsubsection.3.3.2.1) >>
>>
endobj
-237 0 obj
+360 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 407.173 232.509 416.029]
-/A << /S /GoTo /D (subsection.5.5) >>
+/Rect [202.511 606.481 403.396 617.274]
+/A << /S /GoTo /D (subsubsection.3.3.2.2) >>
>>
endobj
-238 0 obj
+361 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 393.281 367.781 404.073]
-/A << /S /GoTo /D (subsubsection.5.5.1) >>
+/Rect [202.511 596.463 327.957 605.319]
+/A << /S /GoTo /D (subsubsection.3.3.2.3) >>
>>
endobj
-239 0 obj
+362 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 380.772 354.746 392.727]
-/A << /S /GoTo /D (subsubsection.5.5.2) >>
+/Rect [202.511 582.571 372.818 593.364]
+/A << /S /GoTo /D (subsubsection.3.3.2.4) >>
>>
endobj
-240 0 obj
+363 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 371.308 230.074 380.163]
-/A << /S /GoTo /D (subsection.5.6) >>
+/Rect [202.511 570.616 332.164 581.408]
+/A << /S /GoTo /D (subsubsection.3.3.2.5) >>
>>
endobj
-241 0 obj
+364 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 359.352 314.314 368.208]
-/A << /S /GoTo /D (subsubsection.5.6.1) >>
+/Rect [202.511 558.661 359.477 569.453]
+/A << /S /GoTo /D (subsubsection.3.3.2.6) >>
>>
endobj
-242 0 obj
+365 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 347.397 272.498 355.664]
-/A << /S /GoTo /D (subsubsection.5.6.2) >>
+/Rect [202.511 546.152 369.967 558.107]
+/A << /S /GoTo /D (subsubsection.3.3.2.7) >>
>>
endobj
-243 0 obj
+366 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [132.772 323.542 295.358 334.436]
-/A << /S /GoTo /D (section.6) >>
+/Rect [170.63 536.687 273.772 545.543]
+/A << /S /GoTo /D (subsection.3.3.3) >>
>>
endobj
-244 0 obj
+367 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 311.587 206.994 322.38]
-/A << /S /GoTo /D (subsection.6.1) >>
+/Rect [147.716 522.795 288.854 533.588]
+/A << /S /GoTo /D (section.3.4) >>
>>
endobj
-245 0 obj
+368 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 301.569 284.121 310.425]
-/A << /S /GoTo /D (subsubsection.6.1.1) >>
+/Rect [170.63 510.84 314.136 521.633]
+/A << /S /GoTo /D (subsection.3.4.1) >>
>>
endobj
-246 0 obj
+369 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [170.63 287.677 238.265 298.469]
-/A << /S /GoTo /D (subsubsection.6.1.2) >>
+/Rect [132.772 488.922 282.365 499.816]
+/A << /S /GoTo /D (chapter.4) >>
>>
endobj
-247 0 obj
+370 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [132.772 267.696 197.605 276.653]
-/A << /S /GoTo /D (section.7) >>
+/Rect [147.716 478.904 225.148 487.76]
+/A << /S /GoTo /D (section.4.1) >>
>>
endobj
-248 0 obj
+371 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [147.716 253.527 240.618 264.007]
-/A << /S /GoTo /D (subsection.7.1) >>
+/Rect [170.63 465.012 269.426 475.804]
+/A << /S /GoTo /D (subsection.4.1.1) >>
>>
endobj
-249 0 obj
+372 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [132.772 231.886 247.815 242.78]
-/A << /S /GoTo /D (section.8) >>
+/Rect [170.63 453.057 288.964 463.849]
+/A << /S /GoTo /D (subsection.4.1.2) >>
>>
endobj
-250 0 obj
+373 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [132.772 211.905 205.625 220.862]
-/A << /S /GoTo /D (section.9) >>
+/Rect [170.63 443.039 325.576 451.894]
+/A << /S /GoTo /D (subsection.4.1.3) >>
>>
endobj
-254 0 obj
+374 0 obj
<<
-/D [252 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.511 431.083 305.043 439.939]
+/A << /S /GoTo /D (subsubsection.4.1.3.1) >>
>>
endobj
-2 0 obj
+375 0 obj
<<
-/D [252 0 R /XYZ 133.768 197.889 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 417.191 283.429 427.984]
+/A << /S /GoTo /D (subsection.4.1.4) >>
>>
endobj
-251 0 obj
+376 0 obj
<<
-/Font << /F81 214 0 R /F29 215 0 R /F88 216 0 R /F80 213 0 R /F89 255 0 R >>
-/ProcSet [ /PDF /Text ]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 407.173 246.152 416.029]
+/A << /S /GoTo /D (subsection.4.1.5) >>
>>
endobj
-264 0 obj
+377 0 obj
<<
-/Length 2112
-/Filter /FlateDecode
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 395.218 214.881 404.073]
+/A << /S /GoTo /D (section.4.2) >>
>>
-stream
-xÚXÛŽã¸}ï¯Pžbk¶Hêºû¶@v±`³É4’‡™¢‘i[hYòHr÷4‚ü{N±¨››=³È‹)óR¬b:Udƒ0øù.|£ýñáîþ§, r‘'* Œ3‘¤qÄ©P:öÁûÍ©£ko.EùXÍöÕáP¶æpøïöãï÷?©|!`§"‘‡)Z)r™²€ªÙî´Ö›ádè#Ú\¶rÓ™â¼UéæSmx´=pû²UÙ¦½v<ußnw˜U^Ϧ¡Að®™\ìb¿XdyÂûýÖ$3ƒLÚ9‹6ƒéÎUÓÖíñÅ£4–ËLè,çå¿`ÔPð`:þN4n¯ÇS{\W;þø|-XÁj æ…{['ápmÊ¡²êàß'k“©š#ÿßWB­MçL¬ŠÁìy¤èçm¬ây¸P\ËTÈ0VñQÌŽ¦»qt'á‹Øi ¾Ù{NA'"’ù( Š¿ÞO*¡ÂhÚÎtÕ“_V$}¹‰Â81PWó÷s5œ<{
-+‡Â§­Vظg` áÛpÌçÃ{gÜ™}P:¥w³Â ;üñŸï05³Cctïm
-¾)+×Ñ™ÏWÓ³nÅÈ*”rÖ¶'jõ(«c‘ä“®ò¨™‰8–Slf¦-LanO!­P.ñÈT¹ˆÒÉt ö Ò üÀâû?ZÈ
-¡ì·2I7>»á–t¦ÍáD.&Ùç¢ë(#Ð7©QÙlä4x¢,j(AÙØÅ©DaqåÆǶiIïgþƒÈ
-n:SW%ºöÌ_‹Î’›öà‹•°‰Ô UWÕû
-,”d鲊€\Š@+ý4ªæÒ#Îʸý÷lUÚjÖå„’Œ×¾ê«¦tt¾2€:”¿ÚïËšÿ[ëPºå²±€YÜüŒMô§!D†ëЕø(™°öîïik+L†÷8Ñç %’‰E)6wOHÙÏ]ᣮ5x:U»½†Y|Ë-×'öUíÇ.Û\ºöÓX Á(›W¾¨  ¤rÅÅ9¾lÙH³ÑÜ]ùJ›\ ­'H}ÌùRÃû>Há3K—¢D>lfÀÇ`üúë«[j.ât"ÙÓ0\úïïïóE ¤ÊGó¥´Š
-$Š{G‰´xe¬­’(eÞ'Q’§É½éº¥œlíç/wíå?«(y I
-7©,‘«ÊÍOñ°+(eéÌ&‘áî­E"ÇúkÛDZã–7O•p—Êuü7Ihýr²3AKÅ(>´Rç]Í€oíÚ½ã>¬«¡ž—QPR·?ÁãùVÙ´¸«CÛõ¾tÎÉØrxB~±7–1צ›1=ã°"¹­ï] ,IÊj4z$›0à¹jÍ6)ª¢l$Ø)%î¿om%²yD׆ëÿ4v©¬ÿösÎ׭)ø#¢ãúÖ‹Y0]K³xó|ª84WâÑ‘¶Æ³"-/¦6#Rc‹¨½êtîµsêªV¹(~㧥œ1USÇ:U/ŸsÞà<\Ú©–•ÚüÄäs{(²8¾¹ˆÛb>Ë…Ê×p÷Søƒ5$M 3Ù^—ðŸr.µö”pïðñ~ç3"$ò‰Å~y÷7_L7(¹|L€ø•×p‰¸vÛØf+tQ5U8n§~Ô Ôåþ'üþ„~·)ù‹Žè†Ï‘}qT¨õ‹ 3pÉ¥CÊ­.¸R¿pÇ=ÇÓÂyÿÞÿ¹ÿ~up3 ­¯tôÌ—¹ç¾ÌçÌ÷Ððã· =RØEšžÎêÚ=ÁØ/‡Á `Öi¹Ë0U܇
-­¢w‹¾¼ö½E¹v†¾^{Ç·u÷Hy¸ûìÊ@Ò‹Q’ÕR(Ô¢åùîýÇ0Øc±$4Òì³zÆÔTDöZ_ïîþÎo°¹
-bº¸¸Ðˆ>01‰ZäL“= %Ó¿¤›<n–Ró¬ 61ŽEh núëñH¹ŽªÅqØј*GüqE;²ã,\†‘Hç‡Å_[¸Ób5Ûü‹ 2xBˆ¦ÑTè‹7гv<°
-»H‰(rÆêÛsþ H®0
-endstream
endobj
-263 0 obj
+378 0 obj
<<
-/Type /Page
-/Contents 264 0 R
-/Resources 262 0 R
-/MediaBox [0 0 612 792]
-/Parent 217 0 R
-/Annots [ 256 0 R 257 0 R 258 0 R 259 0 R 276 0 R 260 0 R 261 0 R ]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 381.326 269.426 392.118]
+/A << /S /GoTo /D (subsection.4.2.1) >>
>>
endobj
-256 0 obj
+379 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [159.18 531.305 166.154 543.261]
-/A << /S /GoTo /D (section.8) >>
+/Rect [170.63 369.37 315.31 380.163]
+/A << /S /GoTo /D (subsection.4.2.2) >>
>>
endobj
-257 0 obj
+380 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [332.861 487.47 347.583 499.425]
-/A << /S /GoTo /D (subsection.3.1) >>
+/Rect [170.63 357.415 283.429 368.208]
+/A << /S /GoTo /D (subsection.4.2.3) >>
>>
endobj
-258 0 obj
+381 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [453.237 435.941 475.708 447.066]
-/A << /S /GoTo /D (subsubsection.6.1.1) >>
+/Rect [132.772 337.435 198.983 346.392]
+/A << /S /GoTo /D (chapter.5) >>
>>
endobj
-259 0 obj
+382 0 obj
<<
/Type /Annot
-/Border[0 0 0]/H/I/C[0 1 1]
-/Rect [319.572 323.633 478.476 335.588]
-/Subtype/Link/A<</Type/Action/S/URI/URI(https://tex.stackexchange.com/questions/646976/error-with-package-diffcoeff)>>
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 325.479 221.383 334.335]
+/A << /S /GoTo /D (section.5.1) >>
>>
endobj
-276 0 obj
+383 0 obj
<<
/Type /Annot
-/Border[0 0 0]/H/I/C[0 1 1]
-/Rect [157.679 311.678 396.532 324.168]
-/Subtype/Link/A<</Type/Action/S/URI/URI(https://tex.stackexchange.com/questions/646976/error-with-package-diffcoeff)>>
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 311.587 217.233 322.38]
+/A << /S /GoTo /D (section.5.2) >>
>>
endobj
-260 0 obj
+384 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [398.414 311.678 404.876 324.168]
-/A << /S /GoTo /D (Hfootnote.1) >>
+/Rect [170.63 299.078 287.221 311.034]
+/A << /S /GoTo /D (subsection.5.2.1) >>
>>
endobj
-261 0 obj
+385 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [357.38 146.402 364.354 157.195]
-/A << /S /GoTo /D (section.5) >>
+/Rect [170.63 287.123 350.872 299.078]
+/A << /S /GoTo /D (subsection.5.2.2) >>
>>
endobj
-265 0 obj
+386 0 obj
<<
-/D [263 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.511 277.659 271.502 285.925]
+/A << /S /GoTo /D (subsubsection.5.2.2.1) >>
>>
endobj
-266 0 obj
+387 0 obj
<<
-/D [263 0 R /XYZ 133.768 621.377 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 263.213 340.162 275.168]
+/A << /S /GoTo /D (subsection.5.2.3) >>
>>
endobj
-268 0 obj
+388 0 obj
<<
-/D [263 0 R /XYZ 133.768 565.137 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.511 253.748 271.502 262.015]
+/A << /S /GoTo /D (subsubsection.5.2.3.1) >>
>>
endobj
-269 0 obj
+389 0 obj
<<
-/D [263 0 R /XYZ 133.768 528.317 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 239.303 318.714 251.258]
+/A << /S /GoTo /D (subsection.5.2.4) >>
>>
endobj
-270 0 obj
+390 0 obj
<<
-/D [263 0 R /XYZ 133.768 484.481 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.511 229.838 271.502 238.104]
+/A << /S /GoTo /D (subsubsection.5.2.4.1) >>
>>
endobj
-272 0 obj
+391 0 obj
<<
-/D [263 0 R /XYZ 133.768 453.154 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 215.392 272.747 227.347]
+/A << /S /GoTo /D (subsection.5.2.5) >>
>>
endobj
-273 0 obj
+392 0 obj
<<
-/D [263 0 R /XYZ 133.768 432.952 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 203.437 283.014 215.392]
+/A << /S /GoTo /D (subsection.5.2.6) >>
>>
endobj
-274 0 obj
+393 0 obj
<<
-/D [263 0 R /XYZ 133.768 369.42 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 193.973 282.377 202.828]
+/A << /S /GoTo /D (section.5.3) >>
>>
endobj
-275 0 obj
+394 0 obj
<<
-/D [263 0 R /XYZ 133.768 355.015 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 182.017 261.677 190.873]
+/A << /S /GoTo /D (section.5.4) >>
>>
endobj
-277 0 obj
+395 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 167.848 282.46 178.973]
+/A << /S /GoTo /D (section.5.5) >>
+>>
+endobj
+399 0 obj
+<<
+/D [397 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+396 0 obj
+<<
+/Font << /F33 305 0 R /F75 304 0 R /F74 303 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+403 0 obj
+<<
+/Length 1775
+/Filter /FlateDecode
+>>
+stream
+xÚ½XÛnÜ6}÷W¨OÕ^–WQjšm‘)
+ôf •WÒ®`­´Ñ%ŽQôß;á䕬Nú²”†ÃáhæÌápy°xðý÷ã·W_¼Nd 9‹"i‚«"J1ʼn%3"
+®²à:üîžú¼Ýl•5¡ØÜ\ý@Ë4³±¸Œ[°XhZð¦Þ(ömKD˜ »¾ljZgM°$’‘_f‹¹¡eYY»&/
+Öõ¤®Ô™ºåLZ «œvÙm¶R&á}[ö}^ÓKéÇþ¯ì%Ìh9È?œ*µ²Œ™VzÔªÒz?¤ûœì6?ú(ð b‰U1®3ŠqɸIhé7+Æ5S± ¶gZW¨f`O í£ñj’›àLü‡º ëf#ãðžü9¥m?÷°ëÓ:KÛÌYÙJe™I°‚%Æ›ZûÉ"í¾!~Ö7Äÿí
+»€„írz{½‰U˜ƒè¶Òö„’87[£$x¹ê´
+O¥t·‘6¼sÈtªU×ÐS›¿Ê6÷&úƒW8áŠØ­èVjCª„©ôúüxª¼‹(BÅžŒšo¹á>ÜÁ7nút‹­L8Tû…•Ïμšof˜•“[·CU9l) ŠZ…€ð•mLÄx2ÑÄ±Ê ÈÖþЯ™—Lñ©Ô!ÌÚj
+3š?‹ 0-8VMšå™—Õ4ö´J‡$§ÒŠÞîÑBŠ?>ß‘†JÔóÜ’ÂV)íJ ÆÜ€Êz«&ÆÇeî8K¤“ ’Þä[¡ôÐå>¶MÜú÷J¶3#ñÃÔøaࢮÍÓ#úv[å4‹Çñ¿ ZRÍ
+ò%‘BáðkÁ½þÊ»ýõͧÄÙ'Šà&$œ²^¸òvR৷‚EGÔ´çÂ9ñT ÷e ÍÞã^yÛ…ÀÐpH;Ú×%˜kï€3žã`*OÛªtìF†bo¨ÃRqø¦ðP—p¸K1‡º
+.Ž|uÐw“„Ð&LX¤Ç²*Ó–ÄWIïKÈü`<ó‚‘&’0Í2o¸™6èrzÜ5Ç#PHGo©ŸoSØ—ê”sß)Í®´<÷ |Wåóc,œ²»üäòž°ë—ïõÍsa†DMé—&ÁæÁÝÉMHCáN,”º$àß/?÷zå¾þ ‰S aý© ù2Ñyå)³ør_VÙ­›žDû¼_˜¯ó{z(ò´Zd¾Ž„úeügY–@‹îð8ü}#»Ü9†À ÿ¥R=]£i öNâ¼ÛÁaNøÊüœW%GQ©qóg|¶r€FÐ7rñ¤(5;ek•i“ð4=c[ „¥t$]"•†B‡Æf«$KôÈ_ Ž?!¤ Æ6(º£;…D£Ð¤4útWˆ¨¯Ê‘|É
+íÙ
+_]zAÏb¢gW[Ð{Jb‰…#°œ‘À%¨Aƒ«»-€y®….ëUÐWM VÒOÜÇçuo‹:Œ©Æ™õ6D(MÅĉóJ[ Y$ ¯SâI€ñÄ‘·[!8Ÿós"ãq ˆ@¨ðÓŒËlÈn¤&õ©«™ÛÄbSß…Iˆ¯¿Î:3Ýt”º’C®òGZT
+Ìt´¯O
+~»øÅÿiÁå4±Ö£Y³8E¸©Æú¬Ç=XÐã‚®¿Â¼æÆBùKr½w}¼ÑpéÆrJàQ<Ì%(-ë¬Äƒe‡WA'94€`»®¤+
+endstream
+endobj
+402 0 obj
+<<
+/Type /Page
+/Contents 403 0 R
+/Resources 401 0 R
+/MediaBox [0 0 612 792]
+/Parent 299 0 R
+/Annots [ 400 0 R ]
+>>
+endobj
+400 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [446.816 390.292 453.278 402.229]
+/A << /S /GoTo /D (Hfootnote.1) >>
+>>
+endobj
+404 0 obj
+<<
+/D [402 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+2 0 obj
<<
-/D [263 0 R /XYZ 133.768 308.689 null]
+/D [402 0 R /XYZ 133.768 667.198 null]
>>
endobj
6 0 obj
<<
-/D [263 0 R /XYZ 133.768 269.344 null]
+/D [402 0 R /XYZ 133.768 260.432 null]
>>
endobj
-278 0 obj
+406 0 obj
<<
-/D [263 0 R /XYZ 133.768 218.853 null]
+/D [402 0 R /XYZ 133.768 194.997 null]
>>
endobj
-280 0 obj
+407 0 obj
<<
-/D [263 0 R /XYZ 149.011 141.271 null]
+/D [402 0 R /XYZ 133.768 170.865 null]
>>
endobj
-262 0 obj
+409 0 obj
<<
-/Font << /F88 216 0 R /F29 215 0 R /F81 214 0 R /F90 267 0 R /F37 271 0 R /F89 255 0 R /F80 213 0 R /F92 279 0 R /F91 281 0 R /F93 282 0 R >>
+/D [402 0 R /XYZ 149.011 138.835 null]
+>>
+endobj
+401 0 obj
+<<
+/Font << /F92 356 0 R /F75 304 0 R /F33 305 0 R /F90 306 0 R /F100 405 0 R /F96 408 0 R /F95 410 0 R /F97 411 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-288 0 obj
+419 0 obj
<<
-/Length 2603
+/Length 2241
/Filter /FlateDecode
>>
stream
-xÚÅZßsÛÆ~÷_é‹¡ó|¿pwHê6ÍLœ¤“>4Ö›íÓ$$aB2
-CŒÈåINƸã'£CNtM“œ’a©}(Ó‚çO•qC¤NFB‡ÊÆUCe‚Y£ž¢jÜ«úýUCrt¹iÍgi; ˜¿DlB§=%zز;V¢]†æƒI){Ç¥ˆ8eLØcDCÒªŽhBäÄP  DD”,Ð+a
-G)«ákÕ™öSyyUÔ‹ª^û\•~0Á¬Q†”Í&ôÝ-di˜Å˜ˆ¡W`öÀ`¾š$k/O#1=·U~Uu‹4ÕuÑ–×s¹r»Úì s]L†šn¯Ã ]Ý„#´zÙVu¬(8t; ™~-Œzjžð)F¸ Ó&ÛDãgÇÚŒa™9ÊX{]
-¥UÛG@0j¡€ÌÓj¸² ¢äágÿË´0¨R
-Zá±ÁMøËì# ”t
+xÚ­X]sÛ¸}ϯà[©™‹/`Òô¡Ó¦Ó}kë7'Òes"‰^’Ú8Ûéï¹
+=ºª8n߇åævYǸ’ýzÛj·ÛÔån·`YÆ—£eѨêX­©s²–V2§]²‚åYtÞW¿”[tÖ2íêtƤ̯sÌFÖq·¢ µj×·”¡æ
+õú±«êcì؆òXÇ‘§Ýœc2–™+,[Ã.Ƶžï–QJ¥EÛžepÿ€tµLd䮌åz„ÒæU(…qs«ÖbÉa93¹¼Ä’M¡hW"= .ÒýŠþBcĪs|™Þ·ø²€¯`à|jl.Yîô`Q®Òª åf•‰´>vŒ‹(Ò’kæž<Ô uÄÒŠ;:ñc¨ÕǾ©þC.=à(ìúÅßÒš<%KÖ<Ä“ã~¿+?;ýª±ÅækÕ–hb«µ–6½ñ›ÆˆÇ¦lã†CÃÖO‘np¾±Ùo",¶`Ââ€X»
+ÿŠò¬Ç~CÎb?Rœ÷Ôþ2~Õ%v{©
+÷ ËfüŒþ¼„Iäæ`H‡’Ðùn6Ó3B7úÌÊr1†8 Hœná·5yñÃèËÏÿî0ÿ[Tê—“Á$­Nûr‹!D’ÿr å«.ZI‘º‘ú\Dê¥H¦æ‰ó2ZÔ £gÑ„†M—`ãg|ÑûjðO¶àŸ<GB´3•9åà62A<eý<(¨¼]}j(Ô”;§§ž7çŒ{é wÿò÷ ÆŠLÌHæ,ÂZ^u…¯Ó|c¯<æ—‡SÓ¿|)¿}ø¹ØŸÊež›ñ®Ú]ÙZ±Â“äÌ÷
+Pú:æ1PC¼AÞíý#ƒ1%Pmº1-ex¸@{¼Ë…ñ*Ø ÏKÔûÔÒ}iùi `Ë´¹xÀùM·}º¨³üü ùÅk¿BUééóñ+¤À¦Ï}K-é\æßé…;wÕõ{¶ýwב}&|¼²w¯’ýá%¶?¼H÷‡3¾?\MøDÐ\ÿn—\@;\Cøú\¾w×ò½{ï%ËòTŠ³â÷1¾djñAñ"ãëk¦+õ„É¿?ãëkß¼Èø+¾ûUJõ2ˆæ©a n#:ADNÉfá<ü{ `
endstream
endobj
-287 0 obj
+418 0 obj
<<
/Type /Page
-/Contents 288 0 R
-/Resources 286 0 R
+/Contents 419 0 R
+/Resources 417 0 R
/MediaBox [0 0 612 792]
-/Parent 217 0 R
-/Annots [ 283 0 R 284 0 R 285 0 R ]
+/Parent 428 0 R
+/Annots [ 412 0 R 413 0 R 414 0 R 415 0 R 416 0 R ]
>>
endobj
-283 0 obj
+412 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [250.227 586.556 264.949 597.349]
-/A << /S /GoTo /D (subsection.3.1) >>
+/Rect [281.222 570.616 303.693 581.408]
+/A << /S /GoTo /D (subsection.2.2.1) >>
>>
endobj
-284 0 obj
+413 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [250.227 510.84 264.949 521.633]
-/A << /S /GoTo /D (subsection.5.6) >>
+/Rect [389.71 502.593 419.93 513.718]
+/A << /S /GoTo /D (subsubsection.2.2.4.3) >>
>>
endobj
-285 0 obj
+414 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [452.152 215.879 459.125 227.834]
-/A << /S /GoTo /D (equation.2.3) >>
+/Rect [459.879 458.481 474.601 470.436]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-289 0 obj
+415 0 obj
<<
-/D [287 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [247.857 399.258 270.328 410.051]
+/A << /S /GoTo /D (subsection.3.3.1) >>
>>
endobj
-290 0 obj
+416 0 obj
<<
-/D [287 0 R /XYZ 133.768 667.198 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.501 343.468 184.972 354.26]
+/A << /S /GoTo /D (subsection.3.4.1) >>
>>
endobj
-291 0 obj
+420 0 obj
<<
-/D [287 0 R /XYZ 133.768 583.567 null]
+/D [418 0 R /XYZ 132.768 705.06 null]
>>
endobj
-10 0 obj
+421 0 obj
<<
-/D [287 0 R /XYZ 133.768 474.629 null]
+/D [418 0 R /XYZ 133.768 667.198 null]
>>
endobj
-292 0 obj
+422 0 obj
<<
-/D [287 0 R /XYZ 209.644 383.619 null]
+/D [418 0 R /XYZ 133.768 629.395 null]
>>
endobj
-297 0 obj
+423 0 obj
<<
-/D [287 0 R /XYZ 259.126 329.785 null]
+/D [418 0 R /XYZ 133.768 567.627 null]
>>
endobj
-299 0 obj
+424 0 obj
<<
-/D [287 0 R /XYZ 215.27 259.29 null]
+/D [418 0 R /XYZ 133.768 487.926 null]
>>
endobj
-300 0 obj
+425 0 obj
<<
-/D [287 0 R /XYZ 198.191 179.316 null]
+/D [418 0 R /XYZ 133.768 386.252 null]
>>
endobj
-286 0 obj
+417 0 obj
<<
-/Font << /F29 215 0 R /F88 216 0 R /F90 267 0 R /F80 213 0 R /F37 271 0 R /F83 293 0 R /F82 294 0 R /F34 295 0 R /F40 296 0 R /F41 298 0 R /F68 301 0 R >>
+/Font << /F33 305 0 R /F75 304 0 R /F100 405 0 R /F38 309 0 R /F44 426 0 R /F45 427 0 R /F41 310 0 R /F76 307 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-306 0 obj
+432 0 obj
<<
-/Length 3454
+/Length 3015
/Filter /FlateDecode
>>
stream
-xÚµZßoä¶~÷_±}ŠŒfñ—H%Ðí)Š^šsÒ‡$@t»²­žVòIÚØî_ßoHJ+ÉôÚ×¢~0¹ÔhHÎ g¾*ÝÜlÒÍ7ihÿtuñÅ‘or–g"Û\]o¸”Ìdv“iÄԛ«ýæ§äÛwo/·*5‰Mñ·þÇÏ©N«¡<Ð/›Æ9ãƒÜ?¾..…M~£í±ëýàp[zòºè?Ô^Oúrä,´ïÝ]Ù ÷´_>¶ÉuÛ&ݾÚ^þrõWlk‹…ä:,½)ºGð4Ù—]õۥΒb@+LR^ò¤g—ÛÌèä»®ì‡â}ýxiUò9Þ)M’¡*ê8ØÄ-úÛöXï}ÿº­ë–Þ‡gÇj ~"OŠz
-:Ð4&Ù?6Å("k×ʈd…f*;Ï¢²å"¢ µT43CNy”L§Cô¹qaË•?§R+Heï¯÷ìâ!nd°Ø4ÏG֎έá7ÓÅÑXð€°`dšÌ?eY*gÙJ›<Fü+Å]ø-,Ä9ë_SœËüœyÁ›”¯&𓳠‡;cVª™«ÚpÍ´EˆD@ÎGÑA "²j•2­^·jÉ2“[µâL‚ÇbÕ~òÁ/ Èd½äO‰~j¥ÄÜ?»¶´UЕ'·úCD˜ó5B
-j
-$†ÀGZ
-ižóZî¥_÷Ÿ…è4¾ŠÝU¡I+¿Œ…L³Ô*N$— ø³Ð¼·œŒ9fr8ªŒ#Å—g}(ÄYg5ò€ÉGúâ¢|øG^4så1+ã1ã‰IúfffÀ»ÀçÎoe£:ÿy‹L¹· Õž'û
-±K–cŠ]9¬CU(=¬j=ùûêÆ»òÚ‚,ðþÃ=½ ‹:½CÔ}5fn ú¾›ðx(»b˜˜ùÉsš|Ž«@.îî<nö„5Ušú™¨õÕ“4iï<ó\©ºÀ}i%‚d¥¦JžƒË@)'¤Õvñdßfù9´œ3+&'‡ùr×BÀ<Ú›²Áp]?úŸ» ¡nܺ«õø“›a:Øýâè¾?Ò 3˜¢ ¢öZ"=RyGkçBÜá|zßÅugÑxñº–ÖëxÜ„Õ¦¨N¼;ÂUþ-Mò4Õ—ÃP57á&¼|_Õu 8÷
-&=ËÝ8Aù„ÂSÙ®qE‚]ò•óÂ9ñ Ö*:¯Ö“ÈÉÍrâ•ø2ÁLþ*ñ…\âŒüF^Ÿ ?3—߇È>€X0éËÔÌêœèøp–P¨™ZA,äõ–ñ
-@Aöœ&Vsì‡X¢
-&MãëQÿÀ è*áÉ¡òÉcÛ9D(}qÕM謀®Åv”‡JcOŒÊ¦1¢¯±R*ðc±Û•5­Ú垎KïÛ¾‹œ®û®À7â ©\(Ô·ðš#u÷Rµã·Hˆ!ÃðÈ$›!“âÐT( äá³üóõ*›žElÚ¸‹7¡á‹9_†ÛU
-ËŒ6ó”ïëø•”áb^µÙǶ‰ÃOâöiµ®¯Ù§t÷t箬(•R¯Ù'²Qµ¨RþAˆY[l…<•rµ›ÓV6[»¶Ó&ÑÙV9ÏÍÒ¤Åò˜Ñ×sÖaæSÝFï~¤¶àä~ºm>Æ5 „™kàCW(ÄæÔ¾JšIqNR>Y×ÀÂ9n…«R¶¨™ƒþ½sdOž°Xb¾ªš}ú¡3‘t`Y2ÚÀ˜Sõ«Äï×â=Ýã ºŒ§ÑRM!D¦¢å$—Ÿž^§ëò·µ¿½ÙU>K†s$v§Ðù_ïHºkÞùŽBH"Ç)^ú¾Éç­;©¤I„o\x–ôMùüеš¢# éÜCP™zÂÙûêúz×–××±(ÉX _Y¸¸üÁ%øÄÿ¶èý„4 ã c€ôTw¡8ä¾ê á°J$á>Y2d¹¾ ÕüÏGœF½‚ÀuÂ/"W‰Ë]åÂIïûÏ\¨×—ìg!;bþtu7ßùþ› Ìè
-%Ó·=›ŸV\¦ÏOÜ/*Z¹¶÷¬ÍX~¥ZŒ£oB{Ä{]X‰ÿÒ%R¶jJ*MˆÌ—&¨Ýù¢GúvOnÝlîT1šçâ-ŒAJqë2NŽY0uê”}Áã„êÊǪ×á ÖrÚïÛº&-ûÏb±ù,¸ìÉJÙxÛôe¼ tå*™¥ã)àmyïGÇ7 `íôHù¦½ŽY´¦…xE+¤'FÎo=³,`±„…Ù‹÷U=É×=i} ¬ã|ÉàöÐCŽ,¶K×;Ë›·aÈÒª ]Ekª´˜œ{
-bµ¹ÞmAâ²cÅ-¹†¡r–S΂œ§œ˜óVói-ÎVÌü'Xo‰¯ ²~¨ z£“¹áügÕ|¨-Þøÿ@P^@ÍÓ½wvEd½Í⎾µ‘€Ô˜RQÉòñ(Vɹ Ó\[¦ø %Jp‘sy-4±<ïcö±œJ0Ž¼UÂmž
-Òuå•ôŸ=L‚Á;6»m0Ÿ ù³Xå’áÞe¤èŽÉ„ßD”a&ÿ”¯c"<´»Ý~rÓµü~…¥§ÂöÝéã
-o¼‚Nx>Xœv Ù=³+.¨@¦WÛ²j¦·­Y°L#˦ò^„Ô3Ðÿ«
+xÚíZÝÛ6Ï_!ô%^ fùMªAp¹MÑCïáÒ¼¥9ÔkË»B½ÖÖ²³»w¸ÿý~CR²dÓ^§í½öa%jHÎg~34/n
+^|ÿ‚§ÿ¢(8³Ö•¶¤'SlnŠ£±÷—ÓýJŽ?Q©™ç²ÐαҪb~÷‚>(+˜Õº®dÒÉbSËÿ¸xýŽïo?¼øúRE‰µ¥->, ¡sÖV ¦LñaQ|œü°¼š*]Nž®¤Ÿ4»ør¿Û^}úð·¯ß93˜®3Üaí0ñg¡ôݪZn7õÍm"í)8/;òz—ÞÞVôà'÷›jvG›^¯ªW2jòp[Ïiä6’Öm¤|¸m÷“ùÆ2áD·ÓY¦ŒaÎùŽô~öûuJ”ÅTIδ5ÅTVš¤ Ù ÖRMšûmݬéYOÍÕTºIÕ‚s­-1¶ŽT³Õ*‘ƒÂOæóÝfS­çU›F—9¼`h–dÈ°/!©‘á«ÌZŽÉ½Òi¥SšP†Ù¡qˆ»`zX$îww Û(öC 邪¤ápÝU]‡IdßROf?s¥ªù¶Z° ›0™õŠÀ–y#.X ÕQÎgëÈç€i3ÙTí¶Ù\‰IµˆÛ&RA3õ&­›ÍÝl5š|;#%}®›]¢¹¦÷§~jÔ÷²´cÍ›»»Ùz‘;n†ù=¿ããù¬2R–š ÝRv55NMÞÏÀ±æÈUƒäÎMv- šÙÙ+fJ{´sN§$^7•c!NÙGs†ÈבV÷«z^oWOW^Ç•q@94‡åÆ”„à1ÂàŒ0¼Ä³»û\„Ù·³»*RVÉEã[ô<\dz_šëí¬^wŸ’]ñ¼këõMFb‰À'Ty©s‹sÚ3¬ä—9·f{«'¢€æÄX_¼ójA¼O•Jgž q¸Ub½?Ô[
+ÄŠ<88Jx>í¯¢4LŽõùPŒt¢ú ÷ Qô¹«û°ÅTjÉ”&0Hcù0w$2Q|ÄQ&šc=xƼŸ¹áô¼Ü „/O½²ñQ¼¢·ßv³ýoëÌôÇÊÑ ¶'ùtŠ£SÇÙ%”’:Óä7‘cxθßû8È,&$BŠ¤ m˜Ö*ÒBqµQ`Ê€hƵ2Š¡‘e1uLñDø ù݇Α^2ãMa8ðŽ•„s>~âÅ¡¦J_<Ò;8¼-É'VÅO€<ÂŒö£¥¼…†³•¶|ÊH€¸cu„î½è%P Àº¢ˆB²ºHù:§; >û£H>p¼§€sr pÀ±´'ç™=53y`@ø˜”ã¥#Á–Iˆç"™JföĹÇ
+žeû-ÅE[Æ÷¥¨òàO6‡þ”gR'Þ]y ÍA|¡èÒ£
+% D•Cœñª‹8iÒ<à)z¼ BÀ॔ããBgm×V
+§çý¯”YÍä}s³«Ú—ñå{ˆPmžâK³ŒÿÕ¦þ|eåd¶Å…ðÚfB$‚†4”Ƀ¿Ý4¤¤‡6oÊu›fwCaZ"±5!±a˜"Ò¦ËùxoV¤ëÂ;´:ß­vmZ¤zÜÆœ­Ñüš>Pœ+E‹ÙOÚ-8o·
+¤[q.MAl!+¢Þ<ЇéƒÔ¦BL‰±$ÇWɬÑà Ií(£[Š£RÚ8¡ À®K-!/¢Ü†vhѽ\0»œ|Èã'o>d0È>pƒ K€U”ç4‹Ê‘R:<ë
+V7c#Ž@Ît@•J«Ð.¸D™%ÜHžq´~­ñž‹p~Øp6/£ªu^ `½':ž‰ Ê(Wý1¡_ꂘàC0àpeÆÔ£…Ú‡ý‘ü1#“‡MÄEñ7DjsÎzÝZÜÊõPˆŒÒÉ€(
+¥».ÿ,¸¡¹&¸apƒ†nh~nÉÖˆ3ºjKp>jŸ
+`Áì_PÔ
+SÎÊÒîôØpI4TšòlƒÌyyq¾ü"üyÂP×qà§Kü:×çšhXÊ=v‡E:
endstream
endobj
-305 0 obj
+431 0 obj
<<
/Type /Page
-/Contents 306 0 R
-/Resources 304 0 R
+/Contents 432 0 R
+/Resources 430 0 R
/MediaBox [0 0 612 792]
-/Parent 217 0 R
-/Annots [ 302 0 R ]
+/Parent 428 0 R
+/Annots [ 429 0 R ]
>>
endobj
-302 0 obj
+429 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [289.97 212.763 296.944 223.556]
-/A << /S /GoTo /D (section.5) >>
+/Rect [457.111 208.208 471.834 220.163]
+/A << /S /GoTo /D (equation.1.2.2) >>
>>
endobj
-307 0 obj
+433 0 obj
<<
-/D [305 0 R /XYZ 132.768 705.06 null]
+/D [431 0 R /XYZ 132.768 705.06 null]
>>
endobj
-308 0 obj
+10 0 obj
<<
-/D [305 0 R /XYZ 214.009 617.938 null]
+/D [431 0 R /XYZ 133.768 426.974 null]
>>
endobj
-309 0 obj
+435 0 obj
<<
-/D [305 0 R /XYZ 212.073 537.49 null]
+/D [431 0 R /XYZ 220.591 328.05 null]
>>
endobj
-310 0 obj
+436 0 obj
<<
-/D [305 0 R /XYZ 297.43 470.697 null]
+/D [431 0 R /XYZ 227.664 250.987 null]
>>
endobj
-311 0 obj
+437 0 obj
<<
-/D [305 0 R /XYZ 240.445 379.845 null]
+/D [431 0 R /XYZ 209.937 163.676 null]
>>
endobj
-304 0 obj
+430 0 obj
<<
-/Font << /F29 215 0 R /F41 298 0 R /F37 271 0 R /F83 293 0 R /F82 294 0 R /F68 301 0 R /F34 295 0 R /F40 296 0 R /F90 267 0 R /F72 312 0 R /F95 313 0 R /F88 216 0 R /F84 314 0 R >>
+/Font << /F33 305 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F45 427 0 R /F41 310 0 R /F76 307 0 R /F92 356 0 R /F101 434 0 R /F78 308 0 R /F100 405 0 R /F77 438 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-317 0 obj
+442 0 obj
<<
-/Length 599
+/Length 3515
/Filter /FlateDecode
>>
stream
-xÚ­T=oÛ0Ýõ+8Ê@Å:ñ«E—M€lm½ÅX‰²Ø–#ÉI~~::±]¤»Óãã}= ¶e‚=d"½¬³»ûÒ1Ç.5[·Lp£-ÓÊð[7ì)¯ûUQÚ<lèº Ç:ÓŒ—{|i•¿ß'óäë@æ߈ÉôÂç[<ððüeÚ…ÕóúñîÌõíZr‡A÷6¹IÐp‹Føc³Äb¹vås¿@"¯àц°)­£ŸÎƒO…L}*(œüà§ð™y2ºã6’³B:Ë­5h`þ*u­?Q×âÑfU
+xÚµZmã¶þ¾¿ÂýT-zVÄw)A€CÑ^ hÒÜ&ý¨Ö–×êÉ–O’³»ýõ}†¤dIæz}‡v?¬)¾ ‡ÃáÌ3C&‹‡E²øæ&ñ¿¾»ùâ‹,Î4׋»Í‚©4ÖF-´21jq·^ü}ûþûÛ¥Ld”&ø[rúPѯ‰Jʮع&33Jæ*6ù-7Ñï·<êcÓºÊn[¸B•·#So†¦Ö7þšpåyS쉄mm§Í˜£nn»ûkYböLy~ëf]îó昌ÖESþ~«t”w¥e§hãÛ¥NMôCS´Ç]~_=ߦ2zƒîÂNÙ•yõâX×ÐnëcµvåM]U55>ú¶cÙ½ ñ•W†=lo—BˆóµQ%ê¨ Ñ·­]Õ±-Ö®Ôùšr¿.WyW¸/ð§0®Ä:z*Û¢òCVõ¾ír7Í—ÄÓï¤í·V±ÈŒeSIæØ„|¹ïÊƪÁciÄbib‘¤®ç[êvó×»›7 ‹MlÁuš%1çf±ÚÝüò[²X£òÀdéâÑvÝ-˜ˆ qÕâýÍ?œ2Nfh%Iœ%¢Ÿs‰ýøÉÊ—™Ø¤œ)ã›°¤0o*®a‰è]b”´™òs*ÎPš-x§éI¦ÂuÄ:ÎŒH©£Š­K.ãÄwü9 ùËËì·Ÿó«ÀœLb%ô?‘æò>²Xr5ÛG’éû€è2gü*ѱ4Ì\^Oë|7ÿîE£G¢Á¦¦2…fÆ2ó燖­b­å‚óX`ô§‰ú§[¦£¯~†-àÑW= f!ã,eÂrLsËÅüfž8 TCäz e*›ì&žíÉÕ3©’
+|äÕêX[WAK·ƒ6Ãð<v ¯S¹Ï]±"^¶ù¾\ ƒ@fíÊ´SË ÜÕvËÖÏû|çFZ'µ+BÚ(¬¢ ŠÆt@Úi̸:Û²é¾CL†Ÿè$,HG$CŸ7Ž/¿zAC¨#–W®Ý÷|ù~A­ãЪlP»¿æÆ´îË€ –,Mã”)*X£x¤=ì6W1géBar­øE»à¸g—ìö@ ¹™Mþä1‹5,¥ŽS!G&p2V)Yu#ûåÓöCœ<ä§0²ë˜ðÃú¢§1Ž0í&ïgðŽCN•½àU'Û Ó‰Soª™+ÚÌÆŽí§Ë…«z¸F
+:f³›ðD¤
+Y¤s 2à Œ Ž· PqÆä9蘰(ã4!<ÅÄ+pBÌà„ú8A¢Ôú3àÄ|¹ÖLz/)ø­º-(dI4ò¾™\©Ë·Î ÍŽºÞ[‡ˆêï›ë
+j4¾3‡(9tX{^Ö!R\ô 9¦T\½?Þ·«¦<tÅú$”ÖË]ˆØÌÒ~”ITgI;kE¨ÞÚ[°;@%•QÉ'aÌ6•5®\<å»CU¼ ‚Ѓ“7y„Bä–@µ=Êy
+
+)38¶§Nï‚!‚ÉFщLåÀ#i­ÀåViýe»:"X«}äâD†-7ØòI¼¸.ÆEѧ"m擬]p“´ÑG7õÞç%[„9]¹#sÙºø¸ì媩[_.ž`T-¾bð§vu Hk|Ê
+ø˜†_AT:öîƆE÷”Eé\y_ûB^¹í²øÍf¯€Í¾Ý»Æ®xêìÅO”VZ£Gµµ«òJ ñP¸wŸÄÈ,Ž€é¥3ñÔ×Ò÷ûÑ]Wî‚×G{³òXV•·zäœák‡ŒÜ÷÷2[?`––ô÷<Çv;½Áq¶ÚÛd|YfoßüÖTŦ A˜?“^N @'Ø>œTÀóòmb6ÁÁ3msó—óû¯d\<)Ä¥*›\,<Œ!]8 3ŽD+× àf”•¢„t–‰Á؉΃WÈ ,Ž.ÈT§Fp›D°ºÇÙepêj,âd”Ï q8‚+$H—âb¦Í(@ÒO’ KðC`2–‰¼B‚@ä@¯ì•„Ì<·€wˆW@W$‹™àÂÔX /!ÕÁõvÁìN· ½dÈ 2cõhI฿òÙ…¼}:¶Ó»ã.…Æ.O¡@Ý”¼FVè)25S5‰tzZÒ^«Ú99%ú1cûe—õUÇòòþô¤RÀtvC6Å+, à•‰èmi.Ñ1ô£l’«ûK׊NšN¼Šþ!8—²W‹&N„~95e /I: ýL(ô£ä/²J”R‘»Å~Y¸\ÄÚUçÀ—TîcïnP¢¤<òùW·þ÷±ívÞÃöû­ëÙõ‘'jZßÔm3BxÛ<‰dy¹n›ÓmNÎh9Ãœÿ6þ¥rرÖÑ"4!tŸ±AÅM´®Ñ%}lïµ_5¹†ªìºÊw"¹[¿‰æªÜûÚãÁÕ8hA5»º'ë_… ø‰i{Æ«®Š>>ñís
+ÿäÂ;ñª¿g<ðW;Õqç;ù ð^?`ALƒø4¹x Sïʽ•©\|‘3ËEi6JCÉψ8ˆS¶îÎðlg•÷ot}ÿQãêzûÉ»5—ÔÖG þu½t{Y_SG”~¬Ò‰¬
+†2d£„Û×ýå¡a|Ž*fÔ'.ä%¹˜×ä?›Â?\#Jn]ÊŠÄÝ»üäB`c,Ÿf89ÊÉBy0$Æ9Ò›; õÆY8RtM~Í%R5N4¼,ÔÑTÛPÞ:6ea?/ퟞ¤­Ï“e°Š£ýûÀ.
+€ƒtñŠý3ç`{ºTI¥®Ú¿9¸œØQ{ÉAÐkI‘™òÐëÑšÑsC
+4 Œ=Qî05 Wøñ›Œ…x'PañËŒÎèí*¾ÊÎÿúùŽtõÙßÙUÏnF‹ii¨½´óìøw³TÞõ¥N$¨Y¹¥£Tû±Ý6ìwW9v¥nüF©Þž1°‡o£‹Ü1Â*žº´ÆwS|<–MŸ©qW·¶n~¬ŽEëÄ7`µhž gL¡Ù‚iz–ån¦ÓÔÇ*fÒFí¿Ñ
+Ê{
endstream
endobj
-316 0 obj
+441 0 obj
<<
/Type /Page
-/Contents 317 0 R
-/Resources 315 0 R
+/Contents 442 0 R
+/Resources 440 0 R
/MediaBox [0 0 612 792]
-/Parent 217 0 R
-/Annots [ 303 0 R ]
+/Parent 428 0 R
+/Annots [ 439 0 R ]
>>
endobj
-303 0 obj
+439 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [286.675 578.628 301.397 589.421]
-/A << /S /GoTo /D (subsection.3.1) >>
+/Rect [187.474 128.275 202.196 139.067]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-318 0 obj
+443 0 obj
<<
-/D [316 0 R /XYZ 132.768 705.06 null]
+/D [441 0 R /XYZ 132.768 705.06 null]
>>
endobj
-315 0 obj
+444 0 obj
+<<
+/D [441 0 R /XYZ 224.072 619.692 null]
+>>
+endobj
+445 0 obj
+<<
+/D [441 0 R /XYZ 224.022 539.116 null]
+>>
+endobj
+446 0 obj
<<
-/Font << /F29 215 0 R /F37 271 0 R /F84 314 0 R /F34 295 0 R /F88 216 0 R >>
+/D [441 0 R /XYZ 291.072 458.931 null]
+>>
+endobj
+448 0 obj
+<<
+/D [441 0 R /XYZ 250.195 306.387 null]
+>>
+endobj
+440 0 obj
+<<
+/Font << /F33 305 0 R /F45 427 0 R /F41 310 0 R /F78 308 0 R /F76 307 0 R /F77 438 0 R /F38 309 0 R /F101 434 0 R /F44 426 0 R /F102 447 0 R /F100 405 0 R /F81 449 0 R /F75 304 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-323 0 obj
+454 0 obj
<<
-/Length 3079
+/Length 2434
/Filter /FlateDecode
>>
stream
-xÚ­ZKoÜ8¾ûWè0@d Íð-r¹ØÌd.ƒÙØC r·ìÖXÝr$uìFÿ¾U,J-ɲNj_š¤JE²_=džÜ$<ùåŒÇßwgoÞ;žÍ”¶2¹¸N„R,³.±&cR™äb“|JÕùJiÒß›M¹Ï›ãùJe&ÝMùíÜÊ4ïàWÉ´hÏ?_üöæ½ô‰gÞJ‹ y²’’yåˆÕÏJ›²+÷7Dì܈Xá¦Þ ´—BéMy}ýýøãûÃÞ–3çmO~_VœL¹ôî\¤M}¾’.ÝÖEÜH%–ù rÇ„‘‰fZkz{sD²³_œ}=À¤’H{¬²,sY²Þ}úÌ“ <ü-áLy—ÜÒ]☵FUòñì(Øñ†'Vpf+âž —ŠI©Å´²DVîñZYÚÒîöÐÑ=Ûî®x¬
-š^rÃKV°×Q
-U¾.6ôêUFèïÏe–Èg¿ ¡A4ÙXÈö|e@ÿq&N½R"cÆ&`(Ì›xðºYÚ@2É¥ýDœZ„aÖ‹á$¸/ÜE \U6‘šc™6°?gš›§uª8gÂi°ŒÙçu
-¬\æ§JlÚó2Þ1…þó¤RWÂZ¦ÊG3©ÝH±N¤›²e]â‚œ(žëÕI±@‰ŠÍ¦Š]ÔªUìä)¨ÇO'•~^8°„¡™ŸÁ Χ♯óu·°‘6`zîÁ´×qI2ð‚Õr´¯weð!ìÓmƒÿŠ8ÃX&YXÔðU¢h£mhÑc€æéÝ
-pj "kŠöPu-ÊSKx©ÛÒzN?mÐÅ7:Ìë=q¸ÅåâØvM}dÝ‚\´ÍÒ‹mäMG¢ò†ϧ~±/ŠMï™õ¾&GšÜo‹èëyÿÛÜv°w´rÉ¥Á‘ ¢ K›ò’+U4‘®Ì÷=ó&"QÚôÛ¹1À³Ì¯ª¸R_/óXMÅ Hd^ØC§eK+;|ÄZ®ºš$µgÁÿúpó潟ÈPŸ°3:Ï¥|öÎ$ËTo,àèàë <ج>àÄ¢8” W ß»¦¼Ù¢Ê:zåK„=âíÁEô`º›[ÛV¦'xÕ«<þnŠën6¥¥V?|üŽÃßJÒ¤)ÖõÔºi9DÄTÔ¡{Ï4ÀÎDðÝ6wQ•0ØÁ+«²Ë«rM _`îÊ}þNÂMm0OÁ©
-t¡`ç2>^÷‡)ò¶¬Ž4ŽHD“M½£è\ã“ßåkTÅí*Þ×1#åÌÐnŠöwÁä€ð>sƒ)€˜ÿ*‚ü‹8¶EAv{)UlBCs“Ðà?¿œµ™˜aò‰Næ*¹!ˆ
-Ìpåä
-q?Þ,¹ A7„ßqhjœVK¦„œ9íª,szpÚj¿”qÆOXõðv1+‘‚3\<æ]¿‚LÐxúø ìíTœMñõP6Ë b¼Ñ3}„g徧éÇ:o#y >v¤ÀÒÅç5i%‰¡¦n"MÆà›2¦Ñ‡
-œpdÙ×#s*ÅD,n>,‘;Cms…nCûÀÝ«žSœ
-Šµ‹U€œÐyÚåañQ†”
-
-Khí¡þ¨òZ¸†KU/ žœiï{RÄ9OÕâe:YÈt\_Rà2P\avàô©[“¯˜)¢s†Ù}S#v­#“PœÒ¸…:!ò^®C‘GDìÙe¥'pâ¹vŒcœ»™æA P²X+æ=¡e4ËÌ븸…r“†kU a H_+*¢„y‚yø࢞?¿:%/”‘<ÉMY&ìpÔ‡Åæ”õzÚ„^ò(™Þ¡3§‚ÿâuéŠÎ›*^»&•þY¬»Ðõò)Ö£§7£wìPa±JC™Wá wÒš°p2¡§Zë‹1,^!"
-/^N
-S†.
-4uúRIíí9ušpp}Ø­¼^°ÐL²Ó—ì>!ÒãOÐpÔqÏ„/8‚dÙ¬U>Æ.@)دž!é„Ó#$]º/01£øj¤O¯›zG—z^¼+duRÏ.;ÛÞ›qÈyâ
-柸¸¡é…N &‹W šm±oã0t¨=ÉÚ€­éÿ) `¡žG•A–9ËG| F嘕i€éÐM6jÔ.2‘
+xÚ­Y[Û¸~Ÿ_! +1‡wI Øn‘.¶Z´ ’ «Ø²-Œm9’œÌ`±Ø¿¾ß!)ëÍÄ‹öŤÈÃÃCžÛwhm#ýpÃCûýÝÍí_2Iά•&ºÛDB)–Ø42©dFØèn½ÿ¼ËOmQ/–*1±\¼¿û«_¦Y’&‚–ñh©3–
+í¼y<.”ˆÛüÁ¯Ékß97…_ž˜(c™•6¬6Š •úÕër³YUÅfãI•Á¤J°ÂQæå¡Y,µHã¶òm‘c?²s$þ\—myÜúÑjãÛuQ—ŸÆÆy‹V&qÑxêwÜð¦:my(ï|ßî«|¿/ÖC¹Y’€ÝË´‚eÆxÉ6E]b”ùg7*^-D >+ÞqeWe h°¥`‹¥á2¾Ûa'Ï}GÆûê¸]M›Ø—ÍŽ¶§ÑfWÕíÛøïœáOTîA—ÇÀÍnŠÏNf>–v…[k^†ëN×­$”šu×ý_O¡Å€b)X¢;‚‡ ÎO/ƒ%|¹Œgš_綉‚íÕûl*˜«Ö*˜u PßûR÷Ð éZkoÚÝ5›ós«¶¬Ž3B‰rcäkR].°ãîdù’Ÿ²L q;ÃN1ÓßÓ« Kä…àѤ<²,KȽà@Lj >VÝó™m&!ôr@uÑÛh7mÍïÛnn¿¥R)H°¥0ÌPHéu(eСæLÐ\ê½îbAûO¨íIiòTOdI“1­/‡¢xpnÎpüGòÓËv_r6%Ÿ3ÃlvÙŸn=ÏCÕ´ûǯœ“‚‚‹9RXÆDGn\<œê¢iŠlï£ÝÔ9Åw!~ ª“À\Ï¥‹8ø8T]ïÞmþØ´uußÉAãn©]U‡“ iUSP³Yücv¤.¢Íįv& $âr‹Ï¦Ž uq-·¦èw(ÖE§Ò‹‚1d0Ûîê‚Ž¦M|ÊË:Œ’õP‹Ó(¢¾œ‘Kdðu~‰@ï„Ò$ÜŒ\2:éÅq&ܘΒ)³Ó¬kÉ”Ì&—G÷Ïr[¶…ÿr¶zªËíÎ%o¯ŠsgAý #õ7~ÂœÚz]óúÑx«Àð)¯Cþâd”ØkÆ.‰p_Þû@êj@ -D5 ¯
+ð »‘t@†i.F^yóúîæã ñHDZ'L¤‘F@URG«ÃÍÛ÷<Zc–Å.ü³£<D)Ë]ÿ>zsóOqFuœ¸Æ²äY‰žwæD(D6­Jz1Ã;azpôïK+fÏg!‚äÌÅä€#Á;VÃÒÆò©ETÓ“Àò4gYÞ¶85ECrM1†L­8®]ÔÁˆ‹ÚÔY—ÍiŸÓôã²i]ëP ¦ù
+)ÕÕŒ¾ší^Ìp°pyÛ|GÙà dâoýÇS™0ËeÏò›Múܘ¥Lš›ž*Tâµjhð¡Y(îÙcsg¡‡§¿¢„ÆŸ2­ÕšÚéjÞN“Þ Ÿ4TÛ綎Ù–š™ 7—p$ªy
+ߥ £ Wc3xÓÔhƒ™f‰7Sj{3ÅWN^ºöý>%àch¦ ¹R4çRB:o¦e…ššé(†yëZJàK52±‰ bÑ€f͉>Ó> c97½%ΉCøÿ ÇÃ=´0wJÛÿ¨Û/¨Â ¥ þÔ|Ôg`VÌ«g@qˆ¸+‡BL£.jùn^oÏ=ûïèùŒ!&)}÷ì±L9ñ÷/ƒx©®Á<°i} (óR:L‹ÃyS«›ÒÕ"ã:\”ÖÌ&ÐÔ¡öñS:¹o6ðD CR!‚+ëƒ$…ïÿ´úÆÏ žƒ§˜"OB î—T~ÎxœÅå æð‡õ6òý@¯5ÃâJX’ Ë+áVv<ÓàZÇeƒˆþRôtJhÓ¢š†ÅAi!„þ½j‹™{!\Ÿ2•fžêGœÆ[÷bäì˜PjuÞî**vÜPÕM¾óñœ‡ç‡ýh8\ê9÷õ”ïÞtè{]¾ãJ \Zâ1“7ý6NpÁùÐÎðYŸ‚:>]‚³ãëþ—7 5.ÞûÁgö’nGÁsž—vX‚:»—
+QõH7&uü¹„ÉÍlbì°€*Йñ¶¦ß'vCø˲‰çŽ™¢Ø¼ä˜êD¬ŠgÒ¢yŠ4qÑ®X¨ uWbà͉۟­vó> ¤'ÈQŸ@D1lí4HÍÂ=¬¡‹EÁ|bs¸3e6¦ó‡Ùh…’ÊOAöéŸ$©=䯹/Â*TGQ
+• ‚s s‚`O–{#wCdÞ;ý$¹…#ÚïÃÀ\d“©¯O6ÿS螯žãº–;Œ•&QÇèë
+Ì}aJìòÚ.PÌi`{ž9´à^è$´´à‚D(àjƒç÷Ùp-KexdûÙFfíòìÜzżʿ¾jIH¢ê÷{!"Ø?‚½Lé
+pÂJL†ã¥SËû Œa
endstream
endobj
-322 0 obj
+453 0 obj
<<
/Type /Page
-/Contents 323 0 R
-/Resources 321 0 R
+/Contents 454 0 R
+/Resources 452 0 R
/MediaBox [0 0 612 792]
-/Parent 327 0 R
-/Annots [ 319 0 R 320 0 R ]
+/Parent 428 0 R
+/Annots [ 450 0 R 451 0 R 460 0 R 461 0 R ]
>>
endobj
-319 0 obj
+450 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [249.165 501.742 256.138 512.535]
-/A << /S /GoTo /D (section.5) >>
+/Rect [354.911 332.615 361.373 345.105]
+/A << /S /GoTo /D (Hfootnote.2) >>
>>
endobj
-320 0 obj
+451 0 obj
<<
/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [437.926 399.44 444.388 411.93]
-/A << /S /GoTo /D (Hfootnote.2) >>
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [349.46 136.776 478.476 147.165]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://tex.stackexchange.com/questions/652223/write-a-derivative-operator-without-denominator-using-diffcoef/652298#652298)>>
>>
endobj
-324 0 obj
+460 0 obj
<<
-/D [322 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [132.772 127.312 478.476 136.533]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://tex.stackexchange.com/questions/652223/write-a-derivative-operator-without-denominator-using-diffcoef/652298#652298)>>
+>>
+endobj
+461 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [132.772 116.779 189.8 126.398]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://tex.stackexchange.com/questions/652223/write-a-derivative-operator-without-denominator-using-diffcoef/652298#652298)>>
+>>
+endobj
+455 0 obj
+<<
+/D [453 0 R /XYZ 132.768 705.06 null]
>>
endobj
14 0 obj
<<
-/D [322 0 R /XYZ 133.768 667.198 null]
+/D [453 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+457 0 obj
+<<
+/D [453 0 R /XYZ 133.768 322.161 null]
>>
endobj
18 0 obj
<<
-/D [322 0 R /XYZ 133.768 433.327 null]
+/D [453 0 R /XYZ 133.768 238.448 null]
>>
endobj
-326 0 obj
+458 0 obj
<<
-/D [322 0 R /XYZ 149.011 138.182 null]
+/D [453 0 R /XYZ 149.011 149.008 null]
>>
endobj
-321 0 obj
+452 0 obj
<<
-/Font << /F80 213 0 R /F29 215 0 R /F88 216 0 R /F83 293 0 R /F37 271 0 R /F98 325 0 R /F34 295 0 R /F89 255 0 R /F40 296 0 R /F90 267 0 R /F84 314 0 R /F92 279 0 R /F91 281 0 R /F93 282 0 R >>
+/Font << /F92 356 0 R /F75 304 0 R /F33 305 0 R /F38 309 0 R /F41 310 0 R /F80 456 0 R /F76 307 0 R /F78 308 0 R /F90 306 0 R /F74 303 0 R /F100 405 0 R /F96 408 0 R /F95 410 0 R /F107 459 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-334 0 obj
+472 0 obj
<<
-/Length 3033
+/Length 2272
/Filter /FlateDecode
>>
stream
-xÚ½ZÝܶ¿¿BXDŒHñCJàˆÛ}h›{H‘°¼ÒÞªÖ®6’6w×"ÿ{g8C­´'¯íË-5‘CÎÌo>xit¥ÑŸnRþýæîæËתˆ
-QXe£»m$³L8›GÖ8¡2ÝUÑOqy<¶OÍáþöÍÝ÷_¾Î³ÈŠÂe9òk#lVD™(TFÌrÝ|{wóË„EÒHFÒ9!5NZëlö7?½I£
-^~¥"+òèÁ³î£\Xk`ÔF?Üüä[¬wž*9/øHr-÷¡…Í È¥Ã&ÆŽØ2·Ø.°¡˜žeËzÆaD¡‹ÀðsjÒ•Y@gÏãê$¶Ð³IäŠÄ8ÉÄ#n“¼pñ«vÜu§ûÝm¢s?Ü*×4n›öTÕk[J ¡ÒíÉü?¶Ê,¦³k$ù¸ã-nUŸöu_Ž]$7#ïn`–nÄi£D)-ŒqQ"%ÈÌrË N²««Û$Ë2Ô1üÒÏ÷äR‘Jä©V6éÄPxÖtÐòøÝm Öü¢>– }X}Ûw{Z÷AÜÀüD´’¿Ù—mËÃc¹©¿òî’^8&X}>×i.8e¿¹Ô|æ2Ó?Ý&F™xûµøˆZx‰äªÙn?û÷v"þöH|øîÍŠ.,Ò<ìû%qètÆaá}ñ\Û‹ãM
-8> €²„Tra~¹žù°7?-¤dÄHWDRÂS2ãºb¨ú÷j¢\v¹t\d%u:ØH"­[õ!Iþ/¼h žY
-JÓ·©9€ÙðT0»X¢çRiAE62…FÊ9~F°< áݵâ!‰J•0€õ¨å ¼Ûsþ¹îÁ%”ÜÝʘÇo·}¹›îðŸUÜOM„¾hLé½ß—àöÀ"ãžžåžgÜv=±òY\y¾æW½Üž~Ù5…¤>r{Ž—Ö©1 Yiæ¹8#2©¢dÆåÑ%j@ P+ƒÒ: –%Æž†±ELHu¼,ðè‘2.â ªq?ƾá¾m€Þm×LVåsÚ®Êz¶Sˆ+ãWMù„Ów§ ÌCÍ+–üÌ…C„,îJž!¿æ¯›ÃP÷ˆ‰þZ¬ÖKàfqõ¿Cÿqa?
-œïN"3°g/BäC3bò s»0(ß5m3r`òo:úƾ)ž£×Š°(d: yMVp”|Ú•ó¸Ò®oï?²ˆM…9+]Íalìï#üÝÌbæÄ*…„Tν8[ÄÙgq¿È²¥;$Þa#0¤`äžÌð­a
-Šž¨¡Ì9B ôÂCI1S¡^ÚcaÃ< †8D[\± 8µ>?`ëCC ³òå
-¥Y0(OãÎã©âT‰•¶Ä×0mK\³OÛÒÃ/ŒlJ<ù`XöΘU¸Ù ÍðJ¿íNcÒm $$°w‡GL¤åÃ]ô<îÊqÍ 5Ô{³$ oÓÕ«¸g •=»+jÐk&_ùlÏe µ¦ÎŠÄ õ>;ð¦$â²UÎo%€©É—{ô©Iæ` yËé Ðà\÷4:z¯º}sà˜N
-hêe@òCâ·'~8±×Þx|ÇÏ:â>~òç#2
-½~‰Ž6Ž•¢ àPè)8¬¨{æÊÕ¿7  ^?©Éé`yß,™59??7.©©‰£ö€Ì&ðåão_róóÕ>VuÅmnÊL¨<»hA,ZôŽ[M:ž¶2ˆTœã/Wo0”ÆÌ7\u@%ZäÏãêJž
-(ìä'¤©ªÊN’szŠð«¸Ç#“0''¥•eKOeOÒ@$´µZÜ{Ìw”˜KD3Ž•bžˆÈ1
-&í+š?ã6Wu“™Ô¥s¢(ÜÓÍó˜,</À­(Þ{„ˆ6u&a¼(ñK,¾@§È}°%6]•§º¸Ùïë
-Ö«}þ_@ÀW_ ½Î}L„‡‘8|´qîüIˆ1
-GQ ¨>ÐÍÙVfe˜ÚÿÂ)xÎÍÈ+•ÛŽzEêé^‚/>ðƒqþØrž3$-dv3ê¶,H‚#á¯}‹qÏsÊñÔ—­`–3Ë•JñE_&$Ä Ù¤ñ_š{ü®ÖšÔ©‘,çîô_ûs¬ùѯB!4U—­'+TñI©Žv"=Ý_¬Íµ
-'í¼ý¬…‹fÄe sP¥¼ÇÃ’Lçkff®ÈlB¿€¹= 4’eS ©Ðä_ˆ_
+xÚ½XMsã6½ûWð5µÂà‹ ‘TÙª©ä´ÙuÕlh‘²X¡H…¤l«¦üß· J¤ k<S©\$ŸÝÀë×àÑCÄ£ÏWÜÿÿóúêã§4‰,³Fšèz‰D3c#£&³èºˆnâ[¡tQ­ŸY“oKöáÃMÛe·ìwåêîËcÞUù}]Þò„÷ð#^w׿E’3+E´‚Ù$¡y¾À$ë²+›¡Ê›âåf7,–‰LâvMÿåc^ßá蟔š˜´Ô‚eZÁd–%™¤É®7åb©•ŠûC³Y<äÏô]õþ¿(©¡Zå5U­ÛŽ¦Ÿ{,%K…†ý˜y» X¢S`€ïÉËT«‰%å#.˺ϼ{Øo½ Þ¦MŽ_Ô‹j†qðº­ëžªæÁmá‚[3ßÄm™7УÿûÏñã'ÁÅÌ'&Òt¾c·Rð³AgûÀR5ú†GØ
+ÖIâ|¨èH~‚#⦨'X·ñjß÷èÖ¬÷ž˜ˆ;úÞ{ˆÕôy+Uê¶XÀñ¨{ˆ¨ðŸÏW`“ší~t㬸‡‘°´?ûÀ—Nc²±ßQóªZ“³|î&b»>,2ÃH0úŠìÜ
+ã“i¨íuÐÈ;?¦jfceì†
+æ´ú­4Ä`]ö½‡?f¡²¤¦|<Ž©wÑ»jÇcž#×$,µæv3–$G T~UR< Ÿ¨ÆÛ ¿’ÉoÈ,e<Íþâ˜Ì7ê혔™¦˜”YïÿÐ㕯pŒ
+=òP”  gqJ¯°ÿ€Ãþ´áXƒ äÇ-¦øÆÉ}$ÓÇ°ÉZ{ «ô,Ýú#yúøF±4µg º>`Â…x6§À>¦Ÿ©°¡>#ÿ° “Ø„© &÷±
+b<ËaNçU½§Àvlç¤,^®¬%ºÀšãvà¨×ÛÑûþþ(…–G.”gLè°¡)f-äŒ{ªÚ Ú¯ ú€Œ Úf!ݤᶖ·u´V“<ªP2¨ð­D铸p™\öæÑ{êr=%ýŸû|l¾y&ýáv€ CÉ s3Gê7p¤rÜÇOV‚—pe‚«‚ „¢åb”dY*h$XX ò¹là&SSNÙ÷!ßî%¸/ýØÿὸ«ÿ r†K•°„›³WŸõ—ÃË—ç—$-ËøÇOUí®ühÿÖ±^±_y“RfS•y$[ÖšiíÙz¼xd“^Ð<Î|p{õ¯ë«?ý~ŠÒ0³{eb@¥›hµ½º¹ãQ☲YôäºnAÆ[‘A©Žþ{õ»Ý›šsšŠ3¡ì»,ze f3)¦•G^>q;r÷ŸÂw]5%Õmsp®tÔ—U×6ۓܤAê+™{±ñ®ÎW>‘;ížè3)ëÑ=¸§‡Ø² tÆ´I§' ù/ÖÝz*Ò‚O‡Çú¦ü!0—H˜±bBi>‘Ž³Â¦O6ò‚B–…³MfG¤§d øU—`£8gÀÞ°±ŒCH\@ ì©”v›™EãT"7Ì;M
+áf)@_¤)R Ü
+³ìÅñ=¥‡3µ>Ç×÷áò.'|(PZ
+é•G¸92Åg"פF-2b#}ÂBYÎoNȸ{ã:Æíô(2³‰õ^àF¾‹i{IzN9´Ü!´]QÌ2á¶|™Æ{$Ü5Ï<Óƒ=È饿Ábq–fÜ5ê}nø{ð¤0jèõTacSN÷ôš}\3-þSò8ôC×R±‡2&s’* ËÉ@|½„™_ˆš²,
+ÿÕÔêA·¬£g+~~¶ø>,j£+®}¥â¬WqV/¿(7Ðm®}ˆm6ÓkxH×Qo±ñbºuïqõP-¿1Íüÿ-4£3á’[’ê R]îÂBÝPåóËókOcZp ÁœàúÙ‡³žêdƳÒÓ, 4G›‰¨‘èîÞ8ú&}d; ºG2Àøöb¶Á¸—‘¯ð–
endstream
endobj
-333 0 obj
+471 0 obj
<<
/Type /Page
-/Contents 334 0 R
-/Resources 332 0 R
+/Contents 472 0 R
+/Resources 470 0 R
/MediaBox [0 0 612 792]
-/Parent 327 0 R
-/Annots [ 328 0 R 329 0 R 330 0 R 331 0 R ]
+/Parent 428 0 R
+/Annots [ 462 0 R 463 0 R 464 0 R 465 0 R 466 0 R 467 0 R 468 0 R ]
>>
endobj
-328 0 obj
+462 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [376.452 542.939 382.914 555.083]
-/A << /S /GoTo /D (Hfootnote.3) >>
+/Rect [393.093 566.764 400.067 578.719]
+/A << /S /GoTo /D (chapter.3) >>
>>
endobj
-329 0 obj
+463 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [178.607 430.684 185.581 441.476]
-/A << /S /GoTo /D (section.5) >>
+/Rect [190.728 555.362 205.451 566.155]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-330 0 obj
+464 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [250.698 353.533 273.169 365.488]
-/A << /S /GoTo /D (subsubsection.5.4.1) >>
+/Rect [400.416 499.19 422.887 511.145]
+/A << /S /GoTo /D (subsection.2.2.3) >>
>>
endobj
-331 0 obj
+465 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [194.935 317.667 201.908 329.622]
-/A << /S /GoTo /D (section.5) >>
+/Rect [342.271 444.124 372.491 454.917]
+/A << /S /GoTo /D (subsubsection.2.2.3.1) >>
>>
endobj
-335 0 obj
+466 0 obj
<<
-/D [333 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [259.194 400.46 281.666 411.253]
+/A << /S /GoTo /D (subsection.2.2.2) >>
>>
endobj
-22 0 obj
+467 0 obj
<<
-/D [333 0 R /XYZ 133.768 234.443 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [307.187 400.46 329.659 411.253]
+/A << /S /GoTo /D (subsection.2.2.5) >>
>>
endobj
-336 0 obj
+468 0 obj
<<
-/D [333 0 R /XYZ 149.011 128.717 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.607 305.334 201.078 316.127]
+/A << /S /GoTo /D (subsection.2.2.4) >>
>>
endobj
-332 0 obj
+473 0 obj
<<
-/Font << /F29 215 0 R /F83 293 0 R /F37 271 0 R /F34 295 0 R /F88 216 0 R /F40 296 0 R /F84 314 0 R /F89 255 0 R /F98 325 0 R /F90 267 0 R /F81 214 0 R /F92 279 0 R /F91 281 0 R /F101 337 0 R >>
+/D [471 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+22 0 obj
+<<
+/D [471 0 R /XYZ 133.768 291.391 null]
+>>
+endobj
+470 0 obj
+<<
+/Font << /F75 304 0 R /F33 305 0 R /F101 434 0 R /F100 405 0 R /F92 356 0 R /F76 307 0 R /F78 308 0 R /F38 309 0 R /F41 310 0 R /F44 426 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-340 0 obj
+477 0 obj
<<
-/Length 2179
+/Length 3326
/Filter /FlateDecode
>>
stream
-xÚÍYKÛȾϯ O¡â¨Ý/²›|p€8@.ÁÂäàq
-ÙÛ]™©fA†õÆÈ›âû*ŠÃ´Ã/¾ç­#À‰Ž¢§¬Á¬q¿îÓjÅUØ]a„nÉj-ed¬ØúÓÆŠ5¸òÝ'Fù+ûs¸Ò
-zÇŒ6ÛýѦ™‘ELÄ莢jó¦s§ör[I:Ù«$Äú½w”RG$䔈(™ô4lÁ͈há ¶Æ\û³Z®I’ÄxHÅï¨lQþ¡ÊÎõ˜)KO("Ž±üîhD6ÞŸûÞ›} Àí68òí~ïL Ü—û&}ðÄ»´hÜ‘sc°(‚Jƒù~û}A.†ôÖ|tSÄÎÛ—kh’po_5Ú·®òŸe_v¥}Ï
-àR¿”î¹þYŠðëPÒÀ! ŸËωïÙÂ2»Ä
-§ŠP:d¨1å?/Ƚîig0ÿ¹ÞâL÷¿ã±PËÛº¼ðàÀßj·|_<ºåºñtfãó·gó“6™[´{@to·úã,¸#C<M•§]yptEå÷=ùC-´îA¿Í›´«m.Y¼œ
-ý«‰
-ÛÑY@q55¦€@j€ÅôÅÛŒh>”ж°R‚Ä,šýQÿC9jé„êíÂq`5é‚î_1N">\fò°ä;"ØPšQ¢Ï0A–M¬%]L:i…f@Ïd׶ ÕZ„Ñ~³}…Çú\~~L\Έ3Åâùý¬jÕ{v¢
-Ö6åŠð Œ|¾(›C…ûͪñòoþöþå탑ÿ÷—‘äë’ òy°ß‡…–8&T'Ç­Ö‘›ÖŒb¬`
-1‰…—0³šýíöæ×s:€Ç¨ÿJhÆÙ*xØÞ|ùJƒ ÿÖ-Ï–tk\¯m´–Áç›_Ü7çž—FÁ|/‘ˆ3ª"h¢±<¸{A#å " còt‚ÀZë ÕRl›'q)?˜–çòÃ>¥ÇŒ…IþÚ{ÇM
-"OE½Ä<=6YoøâI Ón‹Šdç]Ï´nNð ƒiLól±dlGçc´á¼ëŠº2p(U˜fYa^Mc>¶;×a¹7÷}Ç{–oÌç}Ù-Ç„Á˜+ÂõÛÀAT)Êçp²+ Ö›Äc ³Û¢ê×øv¿d._ª™¯fý zvÛ¿uyæî]y²ˆ­Óy^Íú1ï¡úá,;jz–kΕ¸„É@]Ä¥7ÿ0I ò"2éËÈ2_L(k.DE?ŠLžDŠ³È„AV\‹LÑÿ2‰KÈ$.!»à½™Öï—¡Km0Wk–ð£éjãð{ÑtûÜÍ vÂÚ¾uCMµ·¿¾Ú;B;»˜ÕÙ„ƒ›-†b¡vvb²”içW6þô*ïIª?uK³N»7³¤¤èêŸrwƒf^R÷³|$>´Oõ¾ôÏà i7Žâçþ{íyVul”Hs;êaÅ
-n6Uî7OÛƒ{Ú¦vXØvD:v7’×—
-X·hcúÙ¼Ì;ßÛú&wjr»ìY¡ÚÙ‘zFÛä-àØ\Æ”…ŸV˜B{ÞùKŠÃsÛø¢]Ÿ‰é½Íj‹wŒŸš~Í' ±Œ¹‹+óÞÄÌû¯.?Ýúå‘{²6
-Ïàù©Š^S÷5;qü¦n¶^_kͽã•›™ß¡Ýp÷*d¾
-ÏcSÊÄ%<ÿ¿<|xÕöí¯]?¼\Äù„¡³•?ÞrF"ªìÍg˜?‚É€›,M8j†Mv‚›P*†R$AñcI„Ÿ­ÌsCÁîXa:"zþÊÃa¸¨O£¼&à,Æ4ø°4Z¡¾1c¢äÉ¢(h‚JÁ®RñRQx½ÖÑ”A™(ó Ò,X\`
-0Ç"NÏkÉäóô¶!jZ%½I§>iÒ¶uã[/
-38:'Œ×åhr>G¹ÍÑèLŽ2¢0¾)"Ž!MLÎÓ„ Ì!£s¹ƒhQ&Ç`zv¶¿E´ÇG–˜7°Â¸˜$3K‰6Ñüýzõ¥ö¢çd¾Â?
-_0ÿ©¿<P\Þ9©’d¶âþƒ‚M(
+xÚÅZKã6¾Ï¯Ða¨¶"R¤(° °“Í^ö‘rȈƖÛÊÈVG’§§ä¿ïW,êi¶§³3Àö¡%>Td½¾ª"÷A|÷*^=¿½{õåk‹ òT¦ÁÝ>JG¹ÒAªM$Üí‚ŸÂ7RÄ7?ßýcüðË×I2ÿHF&Á€üýþf“d:|º‘YØœ¹ñHâDÿ{î9ýaSõE]m¹ãZ„³9á8‹2“¤wnÊ|milÓMø¢cZ…{îÊ}q®û[´ò,ìnDX–<òF&Ʋ$ðm´÷¿üç»W “DjÁoð“ý¨9ñÇ[âãPœî«Óýb!nte¿¡Ïƒ*RBÑK”k'Í_uÑÍF%yø mTäá©éË¿–E[WeK{–"<?´Õýa†Ù}á¾Ù6§}Ó¹Ñ7ôĬCÉ]_œvEëˆ~ÿÃ?y<‹ñ·‘v{ñr_˜9ImÉ/çÎn*QauâžþPuü¶Ã‚ØÕö|,Y­³,U”ÇOPS~}“%aÓ’tbÚÖgh¢«Xœ1dzàG]J~köüìË=¿ÍŒ*3É ùЖûÒ-bÅ'8XÐîê¢;löm±íÇåy=\ve[½¿ÑiXôxJ–Ø=é¯w‡¢'9ˆä"i!6Žª|OO’>VýÇIAÖŠžz*¢4ÌøHÔ®Úws—ÜÓ ·Íñµ}塨01)þåf£¥žÛÖÓ~þųN
+¿Ò£ã=´¬íÝyKÌwWÝ$±ŽD*W²ã™J<ç±O|~íõýHÊdåúÏúàņ4WÃh,3“23x¢Æ#©u„'êéúª®é5 °\
+ÝË:Þ Q÷©ëÛ†[Ý-aŠN—þ/Rr[$Q.oÿõf“J¤%”ãýíîÕo. A¢r$läJ!ƒíñÕO?ÇÁcH °÷,x´3ž²˜@¹~xõoN¥Ë&šh¨@##’Y:-,¼±
+î©%6©!ës.Î~H>=Éç©vˆ8šÿÈ6`7—™ÍÀÆua>†eŽ ùšŽe$ð¯qœDi’,9^¬,ó<Ê
+8 gø„ÌÎÅ"Þ«ŽsUÚù'õ¾…g—nùÊ=¬!6˜ý¶v?Ê¡²¨‡ª 1¤\B±5z-´ó
+-yutªËMO†`?ñà®z'Iٺ컲àBÓ Æèé&À-ìCs‹èsŽEmU¼Å•!.ÏrJÖÕH¤:ÙlÜ“#»¹}|§œk‚òç1A™(žªG+ý…ú­p Å=OІáLy0r8 ¿~Þð8ä„ŒÏqžþ(¢a¼#Ç/Ý8LSMûö%-2Ë_´dðð٤מ šhʬó¨ð;FœQ÷TÅxp°!ê]âü<Ú¤"`ä¬/Þ ¹VÆ0Æ}–OöhÃ8{:{Sé`¾¨ë) ¤ùc¨€É;Ë‹h1#O¡ÂÖkv¯¹ ˜it»ÝHc3l»g aCfør}ŽFȵßR–Ø@Éœš=÷EÌ`_¼Ml.Éyäe–Ä_ /„iTOÒ{]K<¨ÙsŠHøÂ+ÿçN®cë£DhäPqa:NÌB·*júÓ;~µÙ÷¦“
+•Ú„³}ûάªTî‹cUW•äjÀ5êg¹)"pO'G‡O<e|瘲§Ê1gi±j˜n“_úb[ÔÛs}îxÔDÕcñ;×ùè¤Ù…oÏÛsû~‰N,¢Ó³;pj~ºe‹ã N“9v{ã‡ÃþjÔ†v©‡/«UúCÛœïÜ€‚ÀÝ–8;,(³ÚšÖ­|(ÜÞ˜ÏÂðY´o<âúàŽEnÔH²w÷Ãøaæ{MÏzàC Zó ½q³;:U›p<¤Ú¬vŽjK<Ù+@Á%Æ@ ‹¶¾ÍwÕÎB‚ÎÁí,#D»&8Ý÷¨æ"jV½Š”ŽužË¶b£.BÀ‚œÈ£T^’óÕ…”ÉED±»u*wØ„ÄÊš[îèÉæ‘¡,`±ÛÊ®/y´ø`}OËy)— î­óï®nd¨»J"χD&ž«žšUç ;9E(D'µà;e¾WÉ£D¶œê
+úZòHÀ'¯dË#)<c•¯Öö©0tfl¾œN±M©ðÛ'æop+}ê°æJ„Ô°:²½@³QJ·G'åÆ ˜4~Id¤;¼X@À-µœïK‡-%_‰§¹ÍÒIâúGšž§`ɽDêø)H :‡zÀ"#’™Ä‹T_îÀ“<–øžÛ#µÉz
+E¿_JÜÇdH­L¶L®¤h—&<¶U_úÎQ¨"ÐùõSG5_^–qÅTX©ÈÄ×KHèPæK-¶4Ê !c^¸%©eDd !FÉTÌN<N¨Œ÷º:V6~iw~i¯Åô‹íæB,`ýeæ'Ù«#…ú6ÍÄ "›WÔ×~ß3«åu°=·ö¬EçqÆu¹K+
+?NR`muž¥0ôA3Ȧ)ÂwãüK«“
+¯]I‡&Ckåp–ˆ¡Á)|i¡IeÕç0õ¹DÁÔ¿©ûƒ;#®â¥wû[©-Î<}’®NÖÇ@ÿW0‘˜~ÅT¹ko’P8ÙÃÄc }ÚÊc¶ÔLøWö¦»êPJŒ÷âhÜŸï‘b6×ÓG: X¤ Ü8y'Ò.½æÆ`n»åìF?Ü$&JÉ @8 “_ýH^ø_þ„
endstream
endobj
-339 0 obj
+476 0 obj
<<
/Type /Page
-/Contents 340 0 R
-/Resources 338 0 R
+/Contents 477 0 R
+/Resources 475 0 R
/MediaBox [0 0 612 792]
-/Parent 327 0 R
+/Parent 428 0 R
+/Annots [ 469 0 R ]
>>
endobj
-341 0 obj
+469 0 obj
<<
-/D [339 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [353.711 654.302 368.434 665.095]
+/A << /S /GoTo /D (section.3.4) >>
>>
endobj
-26 0 obj
+478 0 obj
<<
-/D [339 0 R /XYZ 133.768 667.198 null]
+/D [476 0 R /XYZ 132.768 705.06 null]
>>
endobj
-30 0 obj
+26 0 obj
<<
-/D [339 0 R /XYZ 133.768 535.813 null]
+/D [476 0 R /XYZ 133.768 422.384 null]
>>
endobj
-338 0 obj
+475 0 obj
<<
-/Font << /F81 214 0 R /F29 215 0 R /F88 216 0 R /F102 342 0 R /F40 296 0 R /F34 295 0 R /F80 213 0 R /F37 271 0 R /F82 294 0 R /F83 293 0 R >>
+/Font << /F101 434 0 R /F33 305 0 R /F38 309 0 R /F75 304 0 R /F41 310 0 R /F100 405 0 R /F78 308 0 R /F92 356 0 R /F80 456 0 R /F76 307 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-348 0 obj
+489 0 obj
<<
-/Length 2567
+/Length 3393
/Filter /FlateDecode
>>
stream
-xÚÕYmã¶þ¾¿BÔî¹|“H¥¸ ®(š´Y ö¶¨Ö¢×ÊÉ’#ÉçÝòß;ádÉ«íîEÑú‹(r8œ¡f>Cóè.âÑw<<¿¹º¸|+Ó(ei"“èj ¥˜Il”ĆIGWyt½ÈÊn[î¶Ë•JÄâ¸]Š…붮¡wh-o®þxù6å#E©a†+XÅkعe,YUTw$;YTs&Ó´—-ZÒ»†eJ—5ý:ÔÏ»z¹’vQwl¹ŠU²x×Q?Ïeíõt5õ´Ç¢[/aNðàp»ŽKlº
-ÍŠVBYƹ„†`iÜGWJ©ÅiBM›ºÙµÔ¬+|ê“pSÀ†|÷šÞÛb·/¨}‹:B»¨Z×t¸1¤§ Óø Ó?†‘‘æ¬í\S´˜·Yh–j=µø]Ö,³vš_³ :`GÂÀ ¶í²†Vª÷]QW¯ÏÆ÷´íåCU¤NwŸ[®w %ܺ޹mâ¬^¾µvôÝM‘D+ ¦ K¦¿J_Ç•±oæÅfóûOïy̳ûÈW·÷¯Öð"~½¼?ÉÜPH)=Žc­Y¬ESoHD#4a¬ ¨tF ìjÌeÀF 6êA˜a3VÌš¸W˜¿Éïg‚«\'ãUŸP飇”È‚*+ÁêÔ(ë]ä i&z³äÌz°ÃVE«‘Ô«™Å°5äêíœÝB2a‘gu¬gTh¦„x¼ß$€PPLÚxºßGÀ1¤:±‹=
-
-M¥œi¨ºÖ»‹ëå01Ìxtô¢»¶KãXF?^ü…
-¸)Ø¢ªTFÊ
-€
-¬"­I#8Q؆œô“`8@ƒ†è{&tŸ\±?:?§ÛL»Ïl,“"Z%L›°[|–%êؽ+Gˆ%,eøPtŽSON#’D|mËbO2H}*jž’léÓUöi3N°z©‡ŽqÒ
-……‚jÎ,¿ÑCÓcP<õžz‚Ó±îëlzé—SÆYmxÒÀ¨[N™§zy ¯[ù°»û}ãÚ¶¨«¾0/K_>‡Â:€œž9^B¥›áÙáé›çñáHk‘¸ÀÌ«ktp± ÒÁ‘`ÏX„û
-˜R*ûH
-~6gzý‚Ð݃F´Ï`ëÏ`|?7þFÚþ~Cˆ…(ìh·íº)ö]Ï`§g”²L$öÑ!ÔøC¨
-UÔãÃÃ$>q­P`ùÕ·aU ÚÓx|dŸ,”P<åE¨,`\*Òé÷[gxÔ*¬¼èqΰÏWðt´RÏe|ß{.ã  ¥ç»¿§†åð[IziŠC¼æíù<p§ê[t•”ú+¨¬š ¸¬-ümŽNzìÀ`Sùò(îË#ø¼òÈ«ñ~Á“â,«î(ŽAYî6Ù¡ìh¸uXÔ•w-fªß7Í1^“5aùpódÕ" Úe ƒ[Ééªëq…$ ñ7¸±ãë!Ÿ)¨ð[%@öÏ3ãQé€.Øè/° ‰%lè„Èü‹Î±Fì¯5¶uSüRS@ù²>lˆ–/P¾'Tg_ž°q99FW`êþB//B<+σG—g§xÆ= ôkÏ_½¤FœÐJLKÄ/§„é6ÊŠ:Û"4î½ü4z¹¾ƒbûâ2 ÌêË9V•&Ìjý«JŸ)ýÕŽ =‰6[´Y= Âhïß S,=Ý+ß¿™S±Ëßæõ€ái2¸?WÆÀ:õLù¦&Ü=[ fÒt¢i€4‹Å9¨I€Ö
-e%ªɱ* Þž%³ô¹éÈ ŸJZ°BOôkÀm”Z ľ§9ø‹zzÁ¯êoÓ ýÏ}ÎÐßQA¯Ð
-Ž½X&g15%”½Ì$Ó©vNÄ@#GâwºL4á2ëëuà˜0š¬‹q õ(–¸ç¬ÿ>IðI„ÿ4—Òÿoô’ð6ÿ½ð6ãèÆc953`߸pô!‡}ÜÖe_QK¬‚ή*×åÿ‡™Byû°Ã¸ x®Ë6ðÉúÎuþ_³fÊ'E`ÿ×›0Pwrýo‹@e˜¶rZBÑç ¬áÿ u›áLô…[(¸`Ó ÈqA{$b<G˜í¯ÀüGpŒ~d¸õ±¿RöóOÄëÐÓöŸ]iO–@Öɇoþš”Žë—2%Ò/HÿÝ*we±+€Ä"§1éâíÒ`Þ“a2(¡[ªÇš!…š!¨Úføú‰ãWIý}þØF.»ÁB(zW)àa×íY.Ö0hQKíÜÁáG;¦Ð°´7LƒaÚÃ$$ŽXú»uô-`Ã_Á³¬«;>8¸^»½W;öO™V’ÐI’@Q‡Ø>++ °þwÒTÖ
+xÚÅZYä¶~ß_¡
+üèM*êÚo‹]ùúâ—«_)XUFÝMÄ…|Ëç2JDžê —OˆÓ4Ò"Q ¯ÓDOÐWošQ“‘¤Y´%¥xÂ=Nøêm6_ÖŠØÄ‘J$yôN‹Å"Ím´z/­¸ØU‹,5@ùXÉŠ$À"êb§Ùæ T&´5@\êvÙ¶H…ZäâD«-ðDòY:ístêÈëï®^ýænJEZf"Ébàt,l¦¢ÝéÕÏ¿Èh?FRè<‹îhè)Š­È2(ÕÑO¯þîDg¾›V‰DD(¶ÉㇷÂê%#r¡,0-ÓŽk¯Ýyæ r Džå$¹NyäeW^l­²›áè
+‡®Ø UÛ`-ÙðwÖÝU7Gé«UÏ㊦Å!jÓq½)N~½¶[-±/»ê®QîyðáÜÀLÞ5pUîbªÇe5Ã.exÁmàä ;[\t (¤AJ>|=÷C}Ïåèiéú‘zZSI9×y%Ek:âèhÅP}*˜T˜tÚgUšÄ`%Üú1áÛÜØÍ7Žö{dj{öÄãÕIµéñZJ.Üç,ÑqñXô$P[•&ÂÂ.["cGC¶Å++qÕ8ÙT ­Û Ä hpýÒpw§ÚÖ¹·zØ'™8.°7xÆ·5_oÁ=¸_äOq–3ÙȾjF$þ|*»bh;`®’±Þ|{Ï{<Ï¡8×ÂàR–ÊìrÊëøjò E‹(ƒ3“j(ŽöEãŠvs:H&Ó1òèú<ð¢wÕpÄRÎÔcSq]ÕÕàð†–GôCW;ì8r‡¥‡T)›‹Ä*¿›z1]¨ä¸rìªæ#oûè.‰‚[¥<~ñ&ïelË’f"ÕKqXJßÛúÜsI-;NUã{ž"DÊó¹à°dWl€S0D
+ «PÆYà糖õ¬ùŸÛþ–Õ¤øø2ЇmcÏA_¯@A&
+-~nÀÁÍäêoçb/ØA‚®<‘}õïrœ€‡’¡ÓxOŽ‹hÙ.bímá=—÷Þ~`… 4 ‘àJYôUíüEVÙ¢¹)÷_»]J7ì}¬ÓG$eD,¥$ú™&1—`áçf›Õl
+ÒÿŒ
+˜ÄwîS
+X¹«ú#oCꈫSPÀeÖ‡„¦ª¹¹|ÄE"ý±0— b3/ZÎúXvåð‹7ÒÛn`FbÓ$‹¥¡çŒÆðûW¾•Eü¤2Ø<ÖÏH›3 ß„Ä^h3·³QW³Ž‚$’ì$Ñ™š}(֗¦ê%êRfóֈ˰ê¾eF‡8Í(q²`í¯íõ:J¨N§r_Cé#
+'„5{s—/‰ÀKJ¨`D
+Óï>‰ƒ t—!‚ðuRªßïR=õ
+µõ˯Þ*§?]LÏvÎÝ çÝg¹vçDÛsíÊ÷ÈjŠ‚ ‚QПŽ÷¡Ù f?p#^„v1`ÎÓh·ûh·û¿¡‹V¶xöwÑøÿ“ÿŒÍÆŒ€DKr›òç±îYÂì‚°!ô\ ~ŽšSÖ#Óä¢)0‰kDÃ@™_­Ìèri£ùA šê²w¥:N—w
+ðIÆæ%€‘O‰£åS ì8>•XŸ±>—‡ôÐÿV°¯$‹¼Üž¢a½ŽÌó\ÿ
+òÿSàV£7òÄ¿‚àÝßfÿ ÊŸÿô€g6FdIDá\ngÿú‚q6Âwg©XJÐgË”“¥wxèJ˜nÿ轆|6 ßy쨦?Ký´;¾×©©K¯ ‹­ˆaGk~`A’ôúÛQ&6튪'@Ñô2Â"ÞiߟKnä/`ãɵ°1„†qIîò·3BbNÉdZŒ³ËÐp8×Ç%ðKeÑ´!±SºÐMì]ŽxÉWˆ1 8Ú&ärNïêϲõo“ŽO¸¸‡Q`g§YZÍMˆ>äÔ ƒ)BµØ#Ùb¯4±2 UXø¥m
endstream
endobj
-347 0 obj
+488 0 obj
<<
/Type /Page
-/Contents 348 0 R
-/Resources 346 0 R
+/Contents 489 0 R
+/Resources 487 0 R
/MediaBox [0 0 612 792]
-/Parent 327 0 R
-/Annots [ 343 0 R 344 0 R 345 0 R ]
+/Parent 494 0 R
+/Annots [ 474 0 R 479 0 R 480 0 R 481 0 R 482 0 R 483 0 R 484 0 R 485 0 R 486 0 R ]
>>
endobj
-343 0 obj
+474 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [204.399 538.735 211.373 549.528]
-/A << /S /GoTo /D (section.5) >>
+/Rect [207.049 654.302 213.511 666.239]
+/A << /S /GoTo /D (Hfootnote.3) >>
>>
endobj
-344 0 obj
+479 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [240.479 411.76 246.941 423.697]
+/Rect [327.469 568.122 333.931 580.335]
/A << /S /GoTo /D (Hfootnote.4) >>
>>
endobj
-345 0 obj
+480 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [246.783 291.473 253.757 302.266]
-/A << /S /GoTo /D (section.5) >>
+/Rect [383.035 544.489 397.758 555.281]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-349 0 obj
+481 0 obj
<<
-/D [347 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [423.28 544.489 438.002 555.281]
+/A << /S /GoTo /D (section.3.4) >>
>>
endobj
-34 0 obj
+482 0 obj
<<
-/D [347 0 R /XYZ 133.768 468.45 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [285.981 373.852 316.201 384.644]
+/A << /S /GoTo /D (subsubsection.2.2.1.1) >>
>>
endobj
-350 0 obj
+483 0 obj
<<
-/D [347 0 R /XYZ 149.011 176.753 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [303.033 318.541 317.756 329.334]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-346 0 obj
+484 0 obj
<<
-/Font << /F29 215 0 R /F90 267 0 R /F88 216 0 R /F34 295 0 R /F40 296 0 R /F37 271 0 R /F82 294 0 R /F80 213 0 R /F89 255 0 R /F41 298 0 R /F98 325 0 R /F83 293 0 R /F92 279 0 R /F91 281 0 R /F101 337 0 R >>
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [342.597 318.541 357.319 329.334]
+/A << /S /GoTo /D (section.3.4) >>
+>>
+endobj
+485 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [350.019 205.928 364.742 216.721]
+/A << /S /GoTo /D (section.3.3) >>
+>>
+endobj
+486 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [390.264 205.928 404.986 216.721]
+/A << /S /GoTo /D (section.3.4) >>
+>>
+endobj
+490 0 obj
+<<
+/D [488 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+491 0 obj
+<<
+/D [488 0 R /XYZ 149.011 147.646 null]
+>>
+endobj
+493 0 obj
+<<
+/D [488 0 R /XYZ 149.011 128.717 null]
+>>
+endobj
+487 0 obj
+<<
+/Font << /F33 305 0 R /F90 306 0 R /F41 310 0 R /F80 456 0 R /F38 309 0 R /F100 405 0 R /F75 304 0 R /F101 434 0 R /F44 426 0 R /F78 308 0 R /F96 408 0 R /F95 410 0 R /F109 492 0 R /F107 459 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-353 0 obj
+499 0 obj
<<
-/Length 2254
+/Length 2407
/Filter /FlateDecode
>>
stream
-xÚµYMoã8½çWh>Ș˜¿©iÌa»½è‹Åä–Î
-­Óªϲ¨_B«Ù„g1ŸÇFxÔ4‰°Ý$GÒá1/wÕ׉6iÑàIÒÔ¯RHótÚÕz^ÍŠ¦ŒC×{ŒØ¬£²¦ ß&Â¥q²
-|É4jlOfÊ3Å”&“9SíÑšLh˜S¦ÕFVŸ*ãMÕÊ<{‡ýýöê·+Ž¾,á‰pŠi›'Úq–i—ÌVWw÷Y2ÇGl#“¹K¾yÑU" ÓéZ&?_ý;ÄÄ`2‘ à‰¶œYX Ž~DOÎ
-×:ƒ«öèh–Ûÿ­Û»q$¼“[éh6„¥H¸fª“ˆRiÚ-r¢'ìXžóÖaÂO2 }´9î¿d#áŒ`æÌIHrÃLgûŒ³%µM_èDoöáÅPB†z@k:Õ/á%œwÈ…
-vÀäö?‘!¡;.–°œJÎZp>€UüW{Ü
+xÚ½YKoãF¾ûWpO¡«§Ÿ|Ì`€M€8;Á^6ñ!€g€Ðe¡(‡¤ÖùïûUw“"嶬s±šý¨®ª®úêaÝG<úñ‚ûßïo.Þ\+å,Odݬ#¡K“,JLʤ2ÑÍ*ºWe[ý÷Ò$qÑãW¦qy)âŽ].t&â›Í¥Ìâ}w¹P:‰«~sùéæ§7ש™’å’q…;-½î¡X–«÷ÂmœÝ¯ “™6îÚ-ÉFsZ‹ ±”ñt¼õ*@+ù°A].Œ4ñvï~jŠFb¾°­šaEŽ+Ïo_Hpš-„À¯×ån E¥|C‡`Ý}U¤¾TÇUÓ•m_®ÜìÝå‚”½Þµ~[¿)ݾUõ‘+U¶eCÊï«¢Y…4•+– Ò]ä†?]}ÆOHWÊ0!FÅW»Ç_hb\§Û®w³ÛrKVàÙkÝ'˜;ò_f,É™øë]]ïˆçǪ¹‡ÉÜÓS±}¨Ë+L5Q -ƒnÈ Ëô(›ü{_N@\fSehRóƳԕË]Wža¯}ˆœp–¥É\dk¡ÐRaYTŠáh„âÿEœE3>“„øpÏªè± FÕ®ÞÒцß#FBçLšrr–çŽäGÜpë áªZ¯þœÚÚ_OW´ðίv'W—óÕ§«åO^ºlæb’¥àGÀÒòÔ1ôÞíÓzææ<5|p
+ô{žÞ].D’ÆŸÃÔT¢¼øáæâ i‰HÊœ¥°-“d,I’h¹½¸ýÄ£Š8Sy=Ú­ÛHANYG¿\üÇ¡üŒ1©“BDÆäLaeÿd-Y& ¼Bo™ÒnÜk­i R‰„Í+s†Jô—«äµ÷^€‘Sçjˆe,OA›XÌGZH¼±ò<Èfà“M!qS²¼¿óýÕÂŽÔގƳ)
+8˜LýÃ}¿jËŒz[7è
+i&ŽàCõÓ.¨_*=6hÌÂàJ¤f:÷—|X“Í8w·wEýHŸýùܹ¹G²ëâ`™b°L$®°˜Á81jËÎ[0‚Ì%RÙ2”q¤€Êìœ V 3÷ÑÌâ*ÄwS:mÏgÙ'V‚I©¼»$Cb2š ë7ØN®“Æý‚&y<,Z×Y¬­Ãмw3qÊiD:žx¬àkvÔïÜ罞Þ~I§6nÅû<-¿ Íývg¿Bξssåü<¬äò‰1Gúç¯êŸyRSçZ ÔkØûId’{ýI&™`‚ÌÔðøз ªÊT¼Üm·
+Ÿ_Æ­÷©ÌƒÆ¿Ý–œOcCCõcüžïB<ƒDJaiÜucµ„@¤È˜Ð^Q?Œó&šLÿê8ÝT½¸\»qåÓC]-«Þ}‘)û;“Ð+×ñ{HÂîÚ¾Zîë"T‹IÄäéˆT@¼«Pª0cØõ¸©«±¼v¡¤8gFˆç•Y
+¢„<ßTÁ“€©ô»¯%Œ<[6`ÍÀôÄ[?P–$]D¿EÝQ%…‡ƒÖb+ÚrYÔµïˆñxS¶¥ù–íXí—T1ÑÇûˆh»Û7ÃÈwµ?³*ëj[õeÛ…R®~Sr¸mB¾}ms|¯ÛÝÖöÔ祛B]ÁÒCg‰Þg[—ë>ÔZHoä©6,Ï<æn©ö ÒÊQ›¤³~ø|¨Çf*×á÷Eþh´˜Þñ·sX;‹Û™ ŽR@ ˜béÙü(Uj­Ù•hí}ä?ÿxAîÄÄÌÔ£[÷6¾X†Ë#KàÉñ›†KH4¾”}¥—86Ȉ¥ eë9}µk®\ÅÆÒµq}dó¡ô´˜”v#û=uHÛs9ñ¤E†‰^FíÔCÊM$eíp×Aª±Ý®†¡+réŠ%Q伞Ê×øÊÉŠ\Ôî«hï' ;3ô³;÷í<Ö–\–;\ûj븿B¤ý1_\ùžúPO¹cIçt¹¢Ì Ég^Ç=\((Q´P!×s¡)Ÿ­¸ÙÂo³ÿ¹ÙÒ_¿ÜRóÌØ2Ôî(êûò®-ÞÚs“+¬L˜ZQ±y+ubQS¦q*ŸÆyYÚu¹ìë`X,—åCïðËZPç³´ÎœûÜVOóxl“à¡¡}H¶Îêü çÕ<{­ós+?}žö¢Ÿõ~Ö·Í·{^ëüä ŠSóŸyÛ[Àtêñ±È%ÛÞõ“Iñé
+EÅa†Àö¼‘¤fAk²ës¨¤™H³HHHùéþ!¨˜÷æâ–­ ÅŒýãF¬:t‹òá&$ø’eiþ²|À´„”0Ú»ÐÓ@ñŠzÅCßtèÔ髉&À“Fz0>ñ·¡ÎàÈ5ŒÓxò¢Æn‹sk¹<¡ðÔ9ú6ÇúÎNéû €Ü!›¾ÈÛSiªTD\Ò—_GÈÙ (î—n]
endstream
endobj
-352 0 obj
+498 0 obj
<<
/Type /Page
-/Contents 353 0 R
-/Resources 351 0 R
+/Contents 499 0 R
+/Resources 497 0 R
/MediaBox [0 0 612 792]
-/Parent 327 0 R
+/Parent 494 0 R
+/Annots [ 495 0 R 496 0 R ]
>>
endobj
-354 0 obj
+495 0 obj
<<
-/D [352 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [448.801 247.69 463.523 258.815]
+/A << /S /GoTo /D (section.1.1) >>
+>>
+endobj
+496 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [369.502 235.735 399.722 246.804]
+/A << /S /GoTo /D (subsubsection.2.2.4.3) >>
+>>
+endobj
+500 0 obj
+<<
+/D [498 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+30 0 obj
+<<
+/D [498 0 R /XYZ 133.768 423.229 null]
+>>
+endobj
+34 0 obj
+<<
+/D [498 0 R /XYZ 133.768 222.99 null]
+>>
+endobj
+497 0 obj
+<<
+/Font << /F33 305 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F78 308 0 R /F74 303 0 R /F90 306 0 R /F110 501 0 R /F92 356 0 R /F76 307 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+505 0 obj
+<<
+/Length 2351
+/Filter /FlateDecode
+>>
+stream
+xÚÕZßoã¸~Ï_¡‡{°›˜ËߤvQ [ 9ôzh/oÉPl%6V–¼–sIPôï IÉ¢Ìؾô¶@Ÿb‘#r83ç›Qhö˜ÑìÇ þþùæâõYNrÍuvó1!ˆÑ6ÓÊ.Tv³Èn'ŸÛéLÒ|².ë)·“ݪ©ËÅŒáòô“÷Ûb^ÁyQ‡Áé d‚DQ/üeËü:ÝO¹2¼Ö¬W»]¤‹móÔ½‰»}¹ùéõd¥µDGrê¾x‘è\91¦›G=á”0Þ˼&Ö˜ a‰4ÙŒ1’«`›vUÏá‚;å^ý¯b†`ö±ê¦›¯îÄuKà0RLn–Ô·§)Û¿„–œr3ñ⻶[Ó›ÁïòAºÙ ?Š*<måvÖ<ÌP8L¤ëbuG…(· |ÞV|êÜ‹#2¨SeÛö/TNu9ùkí…Ú
+o—þé¡Ù®¯pã>Àº¿®F™"*WÙŒƒrÌzå~˜ÎW“;&äbõÐÞò/¯/Wû±oOÅb$Q_2ñƒ?Ùá.–¦ú°øcpºˆhBmÞ ÜQÅRËÂm¿J£áÝÜ€ HÀi
+Õ’è,:·&
+ú4ßØïYB×þô˜Þ.Øô|ò3‚Šçj2ožª…ÿY•Ñ—¸õ‚yaÎíôÔÙÖ Å”.×›>¾z磰Èa»ƒF$Ý—¡ÒHc’æýí]{È—,×ãµ6ÉÄå($¿82æÍzí|¹`~ _«ªÆE«ŸðÖ€q¨
+W»åh~q’+´ ái—´%FíKdÐ}Þ”IcHøÙ›ÂïÒî«\­F+ÐÝý$ßEÅ>ç¬Ó™† ¬Ýa.í/F¡þÞ×vGü%€‚ì¿¥ýYwßë:æ/¡À2½d0<±Ñ|rƒz™N벪ÚÄV9ÜdšŸcZ)û,áÁŸµ$±€¡Ø¬xɺÏUxO˜Žî›¤ë±hÖ
+µE µ^®}
+K4myz /±
+ïþOx¿z­Kƒkà
+û°¶wl"½.Ä"YR’ä;ûÒÀ”EÄ2/Û᯾ytÿ’î ±=ýzkÞ}ó"€i:>®§ÿ³Áb1ø$ B€»,Lí¾-6dÛ¯ŽúÊ­ÙWp‰È•PSPyÞµ% EîyVÿYìÜüá_î(/ÿä—÷/—s<ÿ_Ž·hÔÓ‚±wÐæh™£à{ªSè+àE¢¯¢µëþ1•õѾ
+#œú*qw©[J=í ؙ߶¢•°‘Ç´Bö‡¤©/ç®_KOa…A2&N‚e u2Ðÿ °ˆ1Xì,ìDIûö¤d6jü¼Åë.º×Q¹g/ù ¹
+0WxËwIAb½z\vŸ-4 ™ªÿ¡ò@Žrà‹Õ¼Ø•ÝS˜]†ô5ŠjUÕÑþê°ÎŸLºˆ>:ÊÉ
+¿øŸ‹¯cƒ¡A¡¬Éy°ÐÊb"Ìürd=C
+endstream
+endobj
+504 0 obj
+<<
+/Type /Page
+/Contents 505 0 R
+/Resources 503 0 R
+/MediaBox [0 0 612 792]
+/Parent 494 0 R
+/Annots [ 502 0 R ]
+>>
+endobj
+502 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [211.623 321.674 234.094 332.467]
+/A << /S /GoTo /D (subsection.2.2.5) >>
+>>
+endobj
+506 0 obj
+<<
+/D [504 0 R /XYZ 132.768 705.06 null]
>>
endobj
38 0 obj
<<
-/D [352 0 R /XYZ 133.768 667.198 null]
+/D [504 0 R /XYZ 133.768 308.729 null]
>>
endobj
-42 0 obj
+503 0 obj
<<
-/D [352 0 R /XYZ 133.768 490.944 null]
+/Font << /F33 305 0 R /F41 310 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F76 307 0 R /F78 308 0 R /F100 405 0 R /F92 356 0 R >>
+/ProcSet [ /PDF /Text ]
>>
endobj
-46 0 obj
+509 0 obj
+<<
+/Length 2183
+/Filter /FlateDecode
+>>
+stream
+xÚ­YK“Û6¾Ï¯àm){„àýHÊUÙ­ZomN›ÊÜl§Š#Q#V$qLRžQ¦üß·
+MXÂ"ܘD F •Éb{óáM–°øKB‰p6yò¤[ПH…Úm’ßn~ .hÖñâœP0*6W:}žP1â\‰5¶§ÞÈi†®À§tëFÑ힆ԴÞ{þi6gÚ¤‡Ù\èÔ¿èôÏ \«ù§ ÐRµ4?F.¢¿+œRN„쎊»òÏÙ\J~)ªfŸãX¥å*Ìíëb÷†Ù.>ë&¯Šú@Ø”qöñq6ç6ÍwË0Ѭ#«%ÄŸy•ïf°ÞYKQÔ-eÖÄ™U”¾Ë[’Ý?´ŒšãN¨#õ¾Átú´ÎAT…/&ÍÂc9ciOª©0ããr½.÷›eøü>h?÷F4"´eèves #NÓ¢ +¨>® _ð=ÏêCm³¦ÉãwàŸ)õ‹íã©…H‹]WM{iB¦Ë|“7y˜óŽÄÁ«ãýtH`Y¹}̼?à½#¯òz¿ijâå3Iœáïg6J4µh²2ËÑNK½/a¡ÎanQzßÁëTø2S*ÍxF×á÷uxzoà;èš5y÷0™þð#å*Œü®]Âói],rY{KæSâq‹ZéÈܤÑ«²ÚÖ#7NÆ£wþ*x0ƒ½“Q¦wkäº+jNc¤Á´¶„rá±Ï1s¥£Žß WÞ¼´£0x¾ˆÛŽ„ÊoÀí›9¤QFDÜÑ¿À¨ˆÊã¶
+©¯“Q·Óù®Þ–øå—†ýÇùTFi“Ãí5ðd°°žì7ÀÓ_G'«‰°:Aý‹*Ϲ ”òkÐI]…Nê :YaœHæ
+ïˆükœPXFãü¨Bõ¹
+ØãBpå8y„^¢§Êvuð|YÛ²Zæ±= •2t$ÕÃ~714pû˜N}àZ×VˆZn ËeŠ¦w3§Ó(Qpè(l+ÓÊN
+ê!=Qþ‹A®óX¹
+'½ö8Xduá…ãj´:‰Ëþ³2ÌdÅ®žÂÆØl
+Ú¶ŽÜÅ;R˜
+¥Jk.…VX‚Úf /uxÛ„Âãxß±ÈTŒ÷7~Ue‹©dµ÷ëÉ-«)fâµêóª?WÍE^Uþy_„B
+µ½Gðϱ`—3¢ähS óÇ«.æ(aærçûèÁ;z½´6¼@ÜÏ!ä¿~½€áœBsEÕ÷ÿ‰Â¡Æ5Âëý‡2nQ)¡.eàQ¼:áj|Û2ú{$ò™Î°‰¿G† €‹¿/ŠPÍ&tZ6v‚’ÊÄHÁFµ¼¸õ¢½ÌÇ©ë5üGz:AÅ9™PᵞÃ4Óò‚
+endstream
+endobj
+508 0 obj
<<
-/D [352 0 R /XYZ 133.768 218.246 null]
+/Type /Page
+/Contents 509 0 R
+/Resources 507 0 R
+/MediaBox [0 0 612 792]
+/Parent 494 0 R
>>
endobj
-351 0 obj
+510 0 obj
<<
-/Font << /F81 214 0 R /F29 215 0 R /F88 216 0 R /F34 295 0 R /F40 296 0 R /F37 271 0 R /F41 298 0 R /F83 293 0 R /F82 294 0 R /F80 213 0 R >>
+/D [508 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+42 0 obj
+<<
+/D [508 0 R /XYZ 133.768 339.138 null]
+>>
+endobj
+507 0 obj
+<<
+/Font << /F75 304 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F76 307 0 R /F33 305 0 R /F78 308 0 R /F100 405 0 R /F74 303 0 R /F45 427 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-360 0 obj
+517 0 obj
<<
-/Length 2765
+/Length 2325
/Filter /FlateDecode
>>
stream
-xÚÍYKÛȾϯPNËAFmö‹lz±HvƒØØ ‡Ífn¶Ð5"L‘2›òÌ`àÿžª®æS­ñc ©ß]]]ýÕWÅxu·ŠW¯¯bÿÿËíÕ‹W"[e,KD²ºÝ­¸”,MÌ*Ñ)R¯n·«7ÑÛXÇ?Wݾ9Ýí¯×"åѯø'¢ü@ÕC^ÖÕ#•O¶¬ï|±^Ûc¾)¶TÝ–oc)‹¶¨¯…‰º2¯·–Ö)kÑíKëÇ6ðo¢ÍéàGß`]E9u»e¯ßÝþŽ±æœeÚ‹úÞM+vM[@)É`I_Ø–×<H
-k˦¦¦®¡1Üë‘ÊÅ£;;áns®X¦Ô|ëW×vhÎ2TlFµdñäÌÚ0>9tq­y´ÁŸ¦ÞT$32é‡/[¹«sS¥šï¤…é§Vp>žª,×M§—%Y–eý؇€ <™¾ÿ¾¬*:cíî垤(ëá’šjÏD»©Zð¡å‡ªîy
-1sU6 º–Tÿñ”û—Ô•…í/`xÜýÿÂö g1g-`QXœ8—ê þlËÝîx÷„åªÆ_ÔÉZ =|~ZÔ±ú. \žh¦Ñkä'¢¦7°Ø *í%_è}ÍcÎtªQÌ€ÈtÍþ9 X#K¥q·ÉR™­$KxBƒD@ª„i­'ƒ¾ùÖ¯þ~{õñŠC[¼â+@#f”\éD2©²Õæpõæ]¼ÚB' “™YÝ»¡‡•‚s$8¯Zýûê_„ºóÍL
-—kiÎR®g'Û-؃žè- ÏSxK“],”dêüfj•Ì€ö5‹ãl¦Ö™í¯A gH
-Šzx±yÛœê²ÁJ=˜ñMƒ™$ê9p
-y×àKÿè€7äA¤ÜRW^“>\åSiOyEå=ANG3»}ÞQû=ù*šÜú™kî&áLÙÉ°÷cAu Ð:ÕÈÂ!?ß+>E}Ù°`HFÖbNeŠ¥†Ï÷¸u¢‰±°¹+Á£Ò¾X•Æúé ÐuÏ–÷<`ï<7Z¨›U/ƶ%°¯Ih?V@=þ «8úgsçMüÛ öK€}F Õ£Çñ©KôècMUŽ¡ÍoªÓ¶ ÊàgZÔVzxù!oˆÐ0ØôË
-Ý áÒΆ:·þß‘©ûÒNg <ÙÒO?ä=Ç]®á+›üd½Mí»î×#»²ÜÁgà4—ç@qs[¸Ñ MÇ©ï,ÝFœûƒCx®ü*ó÷‰žF?SYˆ[MGÍ©s\Ñ-Xú’#ú\¸-Àz´ŽëSTƒR÷êÅ0â3ìNÖúx
-¶E×æ›ÎßµÍJ›B–vØ’‹cÙGZ%h*jüó\ÒÅ~X¿«0jùáeèÅi€–T8rÇÉw0Æ4ìü¨`(úùTýj@\ÒMé¢&˜æϲ͘™8[°M5c›´”Ì€&¦És3·ƒ‹„¨¼aft^?…4Àc¸¸é:ü‚_HY
-dûœ”Îö}ð*`üjæÌ5MÈ\1÷zøÛÉ"åD¼ÞŸà]tT†ÈŽü=Uë¦sЃ`ÅD2°}—ʪÌ[jvŒ/à X¹£²~¼wU™ËzÔ¨è?‹G~Š¦)zolIÀ7x
-O<ÅÉÇø­Ý´å±³=Ó q¹ŸWn{7Øy@ÂÞªü@=pO’ÆüœÏîˆ8¸´Î/_dÂ=¯a¨$¹ÅÙ`†   mÓØÀÆB0!¿ô¬ÏÁ Û‚¥ >± /ñ€qˆv³+ ‹½ï ]é Lº(¾“OÁ@ÅüjwEÞZ‡Ã†nUúha-Á,Îs7˜8ãˆC^×ógÓK¿à}›»Þ4±õ¸ Ô¦“«>±ð$¹ Kø¼kÚPR'àw¸¾=i'Ÿ n1·³-Ú›…§Ë˹¿eéÝËƽÚÒ¢4?z_Rx§òVÈô2ÿÐKþAQÆì<ErHc¡Êã1?ˆ ^è?}—WOÄÅ{ÿ¾ðë>ñ÷éN<VZüº”…µ7'$v‰Òѯ;ê{tqà‰*SêA-ÏBÈôö»ºïx Ü ÷JôA;5.ÉŠ£±Äu1ýt Šô©ŒØH½~Rk‹j÷òkòYR±J—óY”®zÚ¡sz@¯òù‰¿xø|Cí8êã)ߎµ sœo{Av)õ…‰Ý$ξ”ú2_L}%Š w*ð‹ªO „èÜ*—_C@ô% IÆD¢W"o“çˆP>zº˜ïJQj kr–hþ•ù.äh™sfq²;ˆÐz÷ÿ#µ§Lgè.Rõÿ P‰œG|B Hþ\qXë›ú]K¾L×ô¬HZ:½OÂLŒß$fˆÑÔEœ€‰£GÙ” ¡
-½<¼Àß®%&j\”¾–©öКH‚VÉý'…÷ˆÁgÙH¿ŠIC
-¿i©­mù¾BJ­÷˜Äq¥ O7=ÿØpþUž²æŽèJã%‚Bà#OšYBj’sÇ’ܾ±ó/ÀÒ|©Î"§Ni.¨S¢:3ñêœñzüÒÇb—ÎðZ¼Gâb6
-¬ô¿<=#t
+xÚ½YmoãÆþî_Áù@ÝY{ûN²‡
+Ø.°–(‹=YRHª–ä¿ç™Ý%%ÊôËA8šÎîÎÎóÌÌš'w O¾;ãñù—˳J%+¬´Éå"J±Ìæ‰5“Ê$—óä*½˜ä*ÝÔ“©Ì‹t¶¹ßºY;]lêû ™—uõ߉1©kñ”yZ6a ]–x)xZ­«¶r«‰HÏIP¤n»ÅK––ëyµ¾ J®iË*Uó9~͸ÕYu|ðeÕývUͪvõ8¹¹ü63‚&.x[—M¹¦Z6™›§ÝÐ/o§ k¬±•›´jñÌtzOæw˜¿ñ“ÞÒLiIö?\Î^’ÌêÓúéÊýñbN<ª%3p$²²0í‚üJÓyg‘¤)g›õ<¼{Ÿx‡Ð¯vUÝçI·4l<3Läjèòš+UÎÚ?‘NÞÝóÃEfŽ–¨,v#’©äLe*¸J_ÁwÒø×yµ˜mÃÏÇý9I~Þ¹ùÉø»†0vÝD?åG‹Fcö¢sÔ×AEë#ËxÞ;ýšuÄ‘ÎTXÅ
+nýnŠ\åo‚f†ÀfE†y¡i jLÛ¸çýˆ=ÃL–é<âlúqo[;jWjVHñÿ1ü8jXi•<=;v%¼£Y.ÈMXH§)™dŠIZƒáé8p%×ú  l]è…ÑÚTÿ#ì>xcÎœë~¿Æ·J¥ÍÊ5ËøÚz,¯Êðó¡jã@
+è>(ñùÈ¡LóSì Ì vrÙ)ÌÇãñ@Sû †ÙB ‹0~E#æhë¶Óv]Ú£pÀ§M³ˆÂ}#“‚™ˆÚŽ´Þî¾°ýÒn÷£gŽÔÊs6zÍF=¨„9,5€Už3$¸ˆ€ û°,k”<â‡Øø¡4IÂ¥#IÈJAc·D6Z‰Ûµ›{ä×™[­ƒ¨Z7eÝ–ó¨PovëøP"‘™+Ÿº9#P805K›éȘZëôSu_­\Ù€û¿¬:,O ÆycM›k{,Æ¢Àço¡-˜ÈŠ! >Ìhܾ»Zßü² ý1£ö(–$RñÇCr$ž˳Octn(ƒø_¢RËaüý U4=©[ô*GLžàøÔä3©”(Ct;XŒZ*̼ _cý*ª2άÉ#ªD,¥N± €™2¾ß¹j^#V06cC<…O‚4Ï‚H8† RØ„Ô!fL?TŸ{Dgé=vlZ®Êûh®‰ƒ‹ðtT~Æu Ù®m‘gσ ]Vñ£È‘<ªÍ.šïÆwØñÔÍÿ³C*½…ÝUùql™MóåµTý÷ ¥cçI}—„—~wUÅÔ
+‹êŒ]øú¾|‡Ä—äx6±Ÿ™U‹Ç qáä´úÃG.>–8gˆ—ƒ/æÁ§Uòg‹œ[†AÚv9§Èö¸¥˜Cüê5ÂväìCiÕ1¶«ïv]`¾©mÀá0¿Ú7,®äÍãþŠß¼\ÿ ŽžªÈ7ëãEMmÆ„ ªŒë.p9V\ä¾&šfLñ|P ê”P]šAr•ÚTÍQi~öíåÙÏ"ß3­³D¡}¤&{vvuÓ9q6La÷^õž¨\ún•|:ûGlÔíRg )MkõeuÝ`˜ ­¬QçÃý™!M[
+tƒNwé1âßBñd|‡žƒÖâÀmˆöÑö¥%常éµo›3¨©›MŒì¾vêœeêPF~÷k
+©…ÞWå".£A³ÛiÜÖÎã9TðT6_jW­bç„ý£ï`½0¡xkUø‚ù뇪¡Ô$rq¡E†îiµ
+’Î%þG[—ÎW‡¤ãšð¤- Ó²H2Õœ2Ér–eÌŽARî§Ïݳ4 ò¯Œ¤ŒvŽEÌ–yfËdw·!G®Š‚Üža}dÄ…+âjª1cºm¼W!uMPkvAý5OhF.CŠ¤Áå†2jH
+qÐŽmbævMÌ.²?ÄÅâZ!9Y˜p£õÏc!„’Q‡Þk]ú) „šäBÇY¿íåd´ÿ+v²u²¢£¸#|pÙÍArƒºèZ
+~òÕðŠäÓG¹Os˜ð‘N˧9j®ërQÆJß'8<{5»ÛfVW[Š­Ñ«1´¢ºgi‚Ýà”
endstream
endobj
-359 0 obj
+516 0 obj
<<
/Type /Page
-/Contents 360 0 R
-/Resources 358 0 R
+/Contents 517 0 R
+/Resources 515 0 R
/MediaBox [0 0 612 792]
-/Parent 327 0 R
-/Annots [ 355 0 R 356 0 R ]
+/Parent 494 0 R
+/Annots [ 511 0 R 512 0 R 513 0 R 514 0 R ]
>>
endobj
-355 0 obj
+511 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [459.611 467.143 466.584 479.099]
-/A << /S /GoTo /D (equation.2.3) >>
+/Rect [158.522 431.709 173.245 442.502]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-356 0 obj
+512 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [388.554 338.764 395.527 349.557]
-/A << /S /GoTo /D (section.5) >>
+/Rect [177.341 431.709 192.063 442.502]
+/A << /S /GoTo /D (section.3.4) >>
>>
endobj
-361 0 obj
+513 0 obj
<<
-/D [359 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.85 127.721 219.07 139.676]
+/A << /S /GoTo /D (subsubsection.3.3.2.3) >>
+>>
+endobj
+514 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.416 127.721 256.139 139.676]
+/A << /S /GoTo /D (section.3.4) >>
+>>
+endobj
+518 0 obj
+<<
+/D [516 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+46 0 obj
+<<
+/D [516 0 R /XYZ 133.768 574.541 null]
>>
endobj
50 0 obj
<<
-/D [359 0 R /XYZ 133.768 244.148 null]
+/D [516 0 R /XYZ 133.768 419.097 null]
>>
endobj
-358 0 obj
+515 0 obj
<<
-/Font << /F29 215 0 R /F88 216 0 R /F90 267 0 R /F34 295 0 R /F37 271 0 R /F40 296 0 R /F82 294 0 R /F80 213 0 R /F83 293 0 R >>
+/Font << /F33 305 0 R /F100 405 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F78 308 0 R /F74 303 0 R /F76 307 0 R /F92 356 0 R /F45 427 0 R /F90 306 0 R /F101 434 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-364 0 obj
+523 0 obj
<<
-/Length 2466
+/Length 2577
/Filter /FlateDecode
>>
stream
-xÚ¥YMsÛF½ëW U9€q<Ÿøp*µ›T­RÉekW*ïÁÖ&Ak Ò’jkÿû¾ž€ YÞĘiöt÷ô¼~=’ÑC$£_¯dxþrwõæFçQ.òD'ÑÝ*Rƈ4ɢĥBÝ-£÷ñ~]¶ålnŒŠ«Žž:.ø³ÛÝš_WM»½æɇ².Ûb³yæ™][®Ê¶-—< Á «ÞTuÐ{èÊëÙýÝïon²ldŽ¶J8ga¬7äƒ2vY­V»ÙÜiß¼yâßœ¸à´0røI0iYu»M1ÓYü\Õô«h®s#2—Es¥DEÇ*M:Ž
-Œ ò¯X=‰ofóÌÄ?ч‹§ìйpyÚÿHÌæÖØø×êËL§qYÃ,iÙb?á¶K°^:özW´ûªØL,c­È’¤—ÝŸÈÉ’¶IÚ8ãexì¹Û·ÍÉô¾ føÀ ª4GS’6'û=Æ+í1›Ëqx2-¤â³lfNÑ—ÆÎvÂœ…¼\4u³­:Ÿ
-&nj~~ò"£g*nø«ã©B†ÓÐÆ;H„
-?—QûñË?½‚*%”ŸìÏ/%‡t*¨mYÅ´éÊ:‘ªÁöï&ÌÎ…tƒÕÝcµ÷v¯Y{ÁʽÏ×áü¤©pÉÙf.ËUqØìéÍ­Í)Å.I”Ðn°ÅðiÞ¦Ò%$ý^‘Ú®Ù"bÖÉùQ–ÒTQ/à ¼n«ú2Ú¦y¼(j–øȉÎUÝ•ížÀi4… Ó!šÑ<KD2€Eœ­>Hc
-Qnìë¸bEêÜ4®@w³  BëuüD]] [ù.hTØã®NáB&9… —…À 4z0°õe`Û|™,Ø0w,Ó…?AÏ|Ԍ΄Vg8]>íÛ‚QßHô)3‰ê??•¯±„ôÌBx|‰ Ñöá
-æ¶z
-ã+~²ùÆS4~$­ÍÛ“ZÓ?ϱM
-•‘F¹Ê^F¸÷æžèš¼>Î}>ËsÉú(ùj™‚ä¹×0{ •Í°æk˜?@  y
-¶âµ™<‰¬PÊôEëR6É£ùHjD“ž$žèÕÆéÿ[1+!ko«ë”"ÍÒ±ÎzB§V›×5çÆÚ Å'1WE
-‡Ï@Æš‹
-wæ'ÀÇ™$Ò¨fÙŸrÔ%)`-ê9Œà4§”SD7ð[P¹D™Œí7ËÁ2Ûªø¸ñ4?uñºÜ,ù B·£SÜOÔIÚ=%òJ#ž';+]Ü2ÿ].ö<²©¸à/býÛÆ‹,Ÿëb[-:bŒÚô/颂:ÒY—ž1b€z(©êe…ÂÄG
-ˆPfãšy;Q­së©•¶°áëý(Ö•6ûjµº°ÿéi?z7áZ–Ü.C®öºnA846Ä
-©ÔI
-œyíRN óµn7C× Î‡4‡µêX_}Ößþ†›AŸ™C'ÑÛð6‚ÿ½áÒÔ|
-×y¾D}C¾åZà'§ùöýt®½9&Û÷S‰¦…6éi!ì)ûÑ™ý†K{z}|‹ô·ÇwzÑJKi.?ÙjÖ;WÂæöåÃy•G#!îïÐüøTQ¹'yŒQkÏtCWüB="= ~ìŠn×eWñý‚Í=Íêmµã»´¤Ï zó OÏ‘f¾p ÞyõšÕÚŠÖmùÙÏÌ'‰ÓE@F NôvhNÊxST¾ô×ß$Öø†E5pÕÅËçCÙmy;›§JÇY¢¹eÃÏÇžCâ½-)Å©¦ö÷ 4Zðƒ—iª—‹¸oÃsœ®Ù›ó8ÿe6O¿¿Ýþ2‰sÍÛÑe?>k*Š Ñà( ‘xµìù †WtÞN'ºŸL†¸#Öô⟌F[3äååE{÷cÿÇà=ãQ£Ã[FWI6DÞ¬€¾û LÁÐ,#Œ{‚UËCÁó£Û˜æ¿$þb¦ª‹öyŠÁ^Ò«;½
-]nÒ½iÚßü)s"„rñ?ëÕ½
+xÚÍYmܸ þ¾¿b
+pÞbG±^,Ë)\¸;¤(´ÙÍ—Í^ëõhfÜxì‰_nwzÈ/)Ê{ÖûÒ
+Ø7´‘ïΗ‘ˆ‚O\ªU¾n~ÇAQ±Éýàþëï£ñõýäÚç¯ä ѾÃÕÁ¾f¼X™æ
+ôpë¼!¥F,š…&é>…Ÿ#™0rÄ®ð\L€JòX’°ýÒKç£7¥f¶ïß¼3'<d:Ö= æ:v»~( ÎŒGƒ²÷3Â"¦õp71¸8Kb`E˜‰x‹3‘Z¹‹À<Óƒ›ˆq}\Jrð
+=pŽE–$¼ç”^ëñ5TLéd1Rˆ9w_J¡™ 9è
+¼Â{ýŸqÐŪ[ðYt|-ƒº+,ÍeiI›:Ëz¼«ÁKYµ³ô
+ú>P*š®í®jý̺®vD¥[ƒŠ.ƒ-ór3sô"N˜6G;>ÜfÖÜ-:Š—Á*‡C”¶^ÒÞ…1ÌÀ“ïCCð #ý-¼©³ÜϾžQ΀“%ÑÈÉ&Þ‹qaÖ{“ÿSßÜĉïþkÆãÄêN†%pcÿw¤;_jžïÑ"9¬Í­8³'"¸ÛV…§eE×´¶¦ðç<Ž™4ÑÔšÃ%“?WEÓGò¹5Ý´‰RÓ÷Þ•¸(°ÕT%
+x°F«âÀÞ§»}aqY
+Ù YÒ=¹Š-Wh@G*WÄ4Èië4/œÒn¾Þt;Û{2æ ͸W+¢ YÒSù%FuoP$‘Aå‰A_”1 ÀM3&Ì}®'YÓzÿG—7­ë4£‰÷—_¯®?úìèÍ3ÌüòëÇë«›#×Í,Ä…,Œ¿!›Rãý,9B›Á/YóžYˆØà‚©ÒE‚¡ßûîÐ~º<ûr†Á9\ð…ˆ “€ J‡ Î.Û]ß„‹Ì‘˜„´âÎqî0•‹%¾V,>œýJ‚)Nõ¢"ÎTŸsü
+ãíúz&¯Y
+㪠>Æ‹#Ü‘IHè
+IŠËBº ·D¼¡¬Ïbâà wuÞ™ËÎxÛåÅÊEa|òˆ¸‡L£qb Tퟷ}A œ `õýÆc([ÄdJÈOã±n:¨I<h«9¬5íºÅªnæ$¤bq80;$Á 0¤Ê¼Ù’öXuϯe@!`þãjf¸BJI&ó2Ô$^ª„™oÄLâ3$Á 22È]9ÂàC¨'D”ã43+áé€õûTõ-`
+"Øjåô×t¾ò‹œpÓßL"4bS£6ƒ[tÚC A½`—@œS}†„iØÌ™|0Çb¸L³Ï2O¼¥}ô+ÀЖ“÷z /:xÝ6/ÂimÜÌgqšžüŽú÷×áͯŽø‡ágŸ¿_ŸFäoopœ@2\ŠÆPÀA|HNCù´–d‘äx¨ûðÄ©û3|Z÷ ¥‰ Ì2°!ÆOÅTˆE‘Ûë(¨Nó“D1­2Œ«hRˆOtŠ`Ñi):Á5äuù“QäkÒP«ÿ¶¢TÿàyÆä6Ê_î¹H—7fa¹[lz»Åž¢P†î—J($ˆf¾ûˆ6w @ŒÌøØ|é\ÎŒ|·˜çgÇÞ6D­<gJÓ† R¨áâXzIYaa\ÓÕ¨,0Úwµ¿ÅÍl
+Q˜Òu 5æÜ: ʪ%µ!"UÑwVqÂÑ»ÕƵá6ô%û09~DG¥ˆì ˆfX÷ YÊy¦¶:Vç›-
+³E`‘ï
+㈻¹B´²”+Ü£ê˜c_¥¢á°>øv7œv1,V´™[(%øiÏzÚ5rÐ/m}ëÞ3‘>)°ó‡˜QB7çÝÕ'COðâ$Cø좆…#¥g[ZlÇlô˜¿ ý¥d"Žý®ÑŽJmAÿ»éWŸ ´×7¿Š'¾h@.Çü9À73ß
endstream
endobj
-363 0 obj
+522 0 obj
<<
/Type /Page
-/Contents 364 0 R
-/Resources 362 0 R
+/Contents 523 0 R
+/Resources 521 0 R
/MediaBox [0 0 612 792]
-/Parent 366 0 R
-/Annots [ 357 0 R ]
+/Parent 494 0 R
+/Annots [ 519 0 R ]
>>
endobj
-357 0 obj
+519 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [350.501 617.883 365.223 629.838]
-/A << /S /GoTo /D (subsection.1.1) >>
+/Rect [202.434 252.801 217.157 264.756]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-365 0 obj
+524 0 obj
<<
-/D [363 0 R /XYZ 132.768 705.06 null]
+/D [522 0 R /XYZ 132.768 705.06 null]
>>
endobj
54 0 obj
<<
-/D [363 0 R /XYZ 133.768 392.402 null]
+/D [522 0 R /XYZ 133.768 401.645 null]
>>
endobj
-362 0 obj
+58 0 obj
<<
-/Font << /F29 215 0 R /F88 216 0 R /F37 271 0 R /F90 267 0 R /F34 295 0 R /F40 296 0 R /F82 294 0 R /F83 293 0 R /F80 213 0 R /F41 298 0 R >>
+/D [522 0 R /XYZ 133.768 239.856 null]
+>>
+endobj
+521 0 obj
+<<
+/Font << /F33 305 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F78 308 0 R /F76 307 0 R /F45 427 0 R /F74 303 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-371 0 obj
+529 0 obj
<<
-/Length 2536
+/Length 2478
/Filter /FlateDecode
>>
stream
-xÚ½Ymoã6þž_¡o•‹˜å«(µ(p{ÀmïŠ-pwôK6h[I„µ-¯$o’.ö¿ß3ÊoÑƹÛâ¾X9"‡äÌ3ÏŒer›Èä§3ù…ç_/ξ{çI!ŠLgÉÅM¢U!”5Iæ¼ÐÆ%óä2}§Œ½œLv¡9¯onÖüúéõ;éäÃù#êóÃ%½ÉsIoW»®&W?÷Úؽ…”ËD¡ÔKüÈ"Vî‰dBB·(@SFµ'3UJ
-ç34´Èí °Ô:®é÷„sát‘L½02gÁ¿@É,}=¦Ÿ™1{«Ë‘ Ƚd~˜LUæÓÇÑÝ
-“™ã½œýíâìÃLT¢s)dá’Ì`'Xz¶<»¼’Ƀ?'R˜"Oîƒè21™ð6Cs‘¼=û_ãbºÐÂ'™6Ânõaä 5”3Y¢¥Ès½=@Ã’èÁEy““¤™2ÉT[!quÛ“‰G“›=Q˳Æ™KãD²A@î®7´½¹&÷hÂÚ¸•¿7§÷ôS}œhŸVíùdªs³G_³Á‹—鲤·G~Y·ÕMÕr›t.»Ahµ'5o‚"¡Ý7üÜt7J~| ë¶}=+ÜÓn&*]D©›&®ÒßÕqõ¦]“~iƒ©Túýˆ%)££•Âõ§§}±qÚÆé½È¼NàjB;õ•Æ)…†Ëº Ö ý‹ÌÓ™„Ε%A¬1u0¨ÿ®Ûv™%ÌM«dš ÿ/^W€å
-¹;+jÇ[ÃqG×ý]ÕÆÑ’ÌYÛ:Ðó`V½ÈwÍ\£HïªE¸ô<5Œ" ¤]LlŸzˆ¥“zFƒøÛ‹Ë_¯FNi˜6[t+·´Õ„`†³"Ò­@Ô)0nHÛ䃜¿|£…>S^¨ðÑsô8ðˆ=È?Xv;WŽ•ó]é#Ó
-yb*²lˆô5ÙóI¾ôš<>„ak(`ÐcÑÐÜÔâXæ¹
-Ÿe;çÁ½õȆi=XŽõF=K„¨ŒçmµBD]wÐëà¨Á…¨Nþ4®j_åwÑ[waç#›ÂÝâäÑayÂÞV
+xÚµZ[oã6~ϯPŸF)j–WQlQ`wm»E±E·Ù§Ì £ØJ,Œ-%’<³ƒÁü÷=‡‡’%‡N¼ÏK$‘ôá¹|<7†'w O~ºàGž»ºøöGkÇ\&³äê6:c¹•If,“Ê$W«ä:}-”¾¾\iü몺½½§Ï_?=üùîóbýúëþÓ‘u~ é?=|†\¿¡áÏôø|ÿÓ7—o®~ùöG•OXS\0m$0î™ú–h=Y’1ž»aÁknDX#&kÂ&ÎBrÕÑâ¿ÀÞYú+®¿øûÕÅÃ…
+ªRëô¯uƒ‡=•"Í(Mšï]WÒ q3÷ øÂãû]qÓ‚È%3#w[´u[Ý­cP1À# Äô̹(í=-À
+„±W 6@_ÛÑÁO¨Á‰D6†l[põHŒc›fœef´DKÖ´]ùš+U.û
+XxN§D#ãþý®­OÝòabIˆ Žr—™ü¬—Ë] g9– t¬…¹(/86Zª“°¢!ÖŽ>¡"‰š(-î$¸p]ê9îfkû”31Òú>N+wqóCï1Ð=&ë,@oDt[ž² ~ˆa2}D!«=‹µÀEœx²ÕT>”þ”T-½6ð˪.6ôÕ¡kÚ’ÑÙižƒ³ƒ1ŸéÀ‚û6 ÒY5½`¦`}j o;HhûŲj—;ðœ«W¤¯8ËÝ<¼¥ÒÎ2Å MÉqDpȳ}˜W,›òö6»83{4]°SsßCºƒG> O‡GìÍ@99Ò®jÞÛ>†£ ¼´'»P6 ÁÚƒ`TGÒž¶,¶h9(@¾§é® éÑÓŽxTÝP²ƒ© Óz¾õÏ;2  `á¢Ç¢D+GÚ˜Ú†„Ž{(áäu4
+C>b¤÷òãÐÏéï›®¡‘bµ
+Cô}Ð ²|èÁܱ^PćE{AŠÙ\Æ{AS÷ÿT/Hª“zAPWØ}-¢Ùw§„Œ…ààœž{Ö3ýº¯¾ÀUÒ"ö^\bƒ|668ŸJ¨,dÖ/‹ –ÔûöêI±AŸòcƒ~"4
+ €{Bƒ<khqÎ`Ö‘Öܬ_:4ès‡†ü<¡!ƒ])48±ï³BÆí°:ÆVϦÜÒ·¯šá9\×ätw
+z¼¥âµÅ†AAbÐÄ- 4íö}!(}Ä<ÙDï°B׶Äyè‡~gè‚¡Þv¡˜]Ô¡\žÅò'ªŽuZÜßSó¬^ùþL; ו¿›1(2üÏœÜô„-‚˜ð_†‹ì
endstream
endobj
-370 0 obj
+528 0 obj
<<
/Type /Page
-/Contents 371 0 R
-/Resources 369 0 R
+/Contents 529 0 R
+/Resources 527 0 R
/MediaBox [0 0 612 792]
-/Parent 366 0 R
-/Annots [ 367 0 R 368 0 R ]
+/Parent 531 0 R
+/Annots [ 520 0 R 525 0 R 526 0 R ]
>>
endobj
-367 0 obj
+520 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [346.367 542.025 353.341 552.817]
-/A << /S /GoTo /D (section.5) >>
+/Rect [158.507 597.238 188.727 609.193]
+/A << /S /GoTo /D (subsubsection.2.2.3.1) >>
>>
endobj
-368 0 obj
+525 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [162.003 246.776 184.474 261.519]
-/A << /S /GoTo /D (subsubsection.5.5.1) >>
+/Rect [228.171 445.91 242.893 456.703]
+/A << /S /GoTo /D (section.1.1) >>
>>
endobj
-372 0 obj
+526 0 obj
<<
-/D [370 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [390.804 168.007 405.526 179.962]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-58 0 obj
+530 0 obj
<<
-/D [370 0 R /XYZ 133.768 361.794 null]
+/D [528 0 R /XYZ 132.768 705.06 null]
>>
endobj
62 0 obj
<<
-/D [370 0 R /XYZ 133.768 233.957 null]
+/D [528 0 R /XYZ 133.768 548.705 null]
>>
endobj
-369 0 obj
+527 0 obj
<<
-/Font << /F88 216 0 R /F34 295 0 R /F40 296 0 R /F41 298 0 R /F37 271 0 R /F82 294 0 R /F83 293 0 R /F29 215 0 R /F81 214 0 R /F90 267 0 R /F80 213 0 R >>
+/Font << /F75 304 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F78 308 0 R /F45 427 0 R /F33 305 0 R /F76 307 0 R /F74 303 0 R /F110 501 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-376 0 obj
+534 0 obj
<<
-/Length 2324
+/Length 2560
/Filter /FlateDecode
>>
stream
-xÚ­YÝsã¶÷_Á<•îX8|ÉÜLÛi“\殉ïúàs3´DIœ“H›¤b;ÿïÝ@Š´q’šöÅ&Àåbw±øýv!š¬šüpFÃÿ¿]ž½ùžÛÄ«¸J.— ‚he•iÂE–\.’«ô_e·>Ÿ ™¥Ýº8¿¾üéÍ÷ÆŒ>’‚0¡@£“noóy±ðbÝBÃE/Rçܤ_òUºUZßvå9KëêÇ6­¿æ}X]}euÆ%¡fXþ›Èʆ(Íû@¡[:øT.÷ÚÝDÔ²º
-Ò-êOfœQ¢™NfŒ›…@UuRB¤»"àž>ӌޯKШ݂0*Ü¿ <ÌóÖ=Étéœvïz©E}>kæ»mQ¡Yhdþ]] «¢sv ;Ûÿ+õ­'T
-oôg&äÕù,ã™{\”Ëåퟯøõ7O8ü°.Ñ…‡‹Ç‹ßqå燽èµµãÝP‘jö[/"éHDÁvÙ^
-pDÌ~Sö1Ÿœ’³šX& èa*ì“×L“W¦yÆÛÛ¦Æ÷¿áŸ¢OR/„>tµÜâü£Ÿ/0ÚAÜqb’X)§‡é¯›®hª¼+½æ |˪€Q½óƒy½Û,ðQ§›"Ç3æ…ý”;`(ö™
-Ù´lój‘wuóè…òfå–N;?Slo»`,ʃøðáÌþ‰¹aÏvùM”¦ùí­;³~)%õ†à›&!Š&D©Ýp”¥RéÍ®ó"7hIP´(6EWV+¯±g˪-š0«UþuÞB¼ÊöKPX}°è4¸EÞº5À6ØÉ-„r{›7E˜tì Ä=šÄ
-º6y»öè.EmŠðF®‹¶hý{÷°ëê-äåÜï8NÁ–€¡°+öp½«Â³Çy À&’NÁÀ:ÄÀ°w·¨^0G$¤ÓXìc öA8/Na ÀII³ÀòKT×OKGŽÞãnˆÉþ5ŒµÌ¬¼Î<ÃÙ CKÀ;,Øó‡xÅ’0ü¬"Z€Ñp½‘ÔÛ)ä5…dÌÄTʃ*¿B„èì=XF5Ùl±£QxˆêPVaä‰!ßÅèƒSJìËÉ7ݺޭÖ/ËšŸ–ëÜqGYsÈSÏ-ÒÉè´è_àIÏ«Õ¸²úÌ…ví¹¾Y%þáçÎ`íl’ìÉ•?«¼¬3Ï»%B(ÛS îK
-|rˆ©x0¯îÂôõQÎ(<ÄN©‹Ÿç>§šìËØAfcˆ,“—Õ@¨ «üv™7%_ë§ÖÅfÊU¨Ñ­TS?çuÕv¹7
-‘Ï:›1ø&P€Ð6‘¦qA‡Y,Pp¹¸½„ÿŽÚw»ý3PMY4^—c’¼¯`ÂU äKîuYôüíµ”-ƒfDz¹vk´1ÂèKŒâ ¿í‘ϧMSlòP½cµ²Ðfë ëÅc•oËy{2€i{
-2ºÚyÙ€[îŇËçWŸ®ýàíavùüéêãõa,嚎
-ÁÿK%›”|F] ‡rÖô²œÇ*OÓ Õ*5#D}Ql+(Œ KD&A±=XlC«)Ø¡b»×%.ûÍöÈûÑ^Eç¨(Ó¡›ù¯ÿ§˜¤ áHõo§ö\FÂ
-ý&ˆAëbÌÀO\DÈBBãÂñt?EöÚ‚:åÆbºÝã5¡Í  <£RÛÈ @äÈF
-f
-w
+xÚÍYKÛȾϯÐa¥€Q›ýds Á™À’ عÙ––¨±)‹TfäÅþ÷Ô£I‘rÏX^’‹Ôêêîªêª¯Šéìa–Îþv“†ÿŸïo^Ýåj&¥È­U³ûõLj-2çgÎfBi;»_ÍÞ%J(aç )•MþQ=•«ùBg6Ù‡®*¶ÜY•‡ê?s§’¢ƒ­’²¸ÿû«;­g¹ÈrÈ>-¤ÚçÌø~SÂjo’º|äF·©êlÚä±ê6<xÞ:¼‘u¼‘ò°Ñ-ÌäYR7¯Üæ†Ëz®²¤ãegnÍaUÕÅáe—;88•äÂG­Z W.i›Å²ØnAt;™¦£ëÙThÃRZ²QÍ­LVA¨\¤©í)Ï„‰,žî1
+&³äqSJn®`²zŸj #|S$/à¾0­¦fºf¾
++¿èørð¸ûà¡]ÕmyèZîKn~$ß\®9ÂÁ
+°Cå h{(
+š-0ÔðÏC ßC ª!Àé¯Ùrf¼â¼[$Â~±;:‡sAðŽøwQâÏ#‡+yâ;áPÖlÀ2É ¡ÝW LJe!sg‹C ^ÄpøÎmµ¬:„†óY{¾ ÜþÛðlƒ?-Bôdˆ†M†hä[6zðâ&ƒb‚Bè Gˆé§kü/æƽì€ß©[ýá
+ÿ«ðyåÿƒØ©®|ËÑä0Õô„Õ·Çê¯íwú†ýž‰
+ê_®®óå·ÀI«.… bÏÍ å“ˆ<WaÐów×D2+2gÿDIÄ]¥¾¬ˆxxÀJTÂÄù…$Ü
+D>º(e…œL÷ØÄ°W.¤hvåH°Q8^±í6Íl@º°ËÉAøƒAqPä4 bCÐê6üTòOä3¥Ç¨'ø°B–åT2Àí$Ò¶m zXq'¼'P
+I^üÖóôj29Ÿ`‡d&ä¶HÚ0YS_ΰàq®¨ûº
+tÚãG–Kp½Ù²¤/”`ÜítjOiÿÁ F°.Âú’†”`Ï0zâÑU¹.ŽÛ.ÌHž€ç{ly JÏJnÀ›†âS:ª7á]¶ý¼¼BgbY>
+¥¹ÏÎ2X'ð¹eý°9W(mÈ@Ìó‘Dœ¡VÂfÙKŸ–<à27þ܆Ì$oס‚ìHf2ù™“-¬« Û<N°4`-2DMZ é‚ýI?!hñ_cÄÂu
endstream
endobj
-375 0 obj
+533 0 obj
<<
/Type /Page
-/Contents 376 0 R
-/Resources 374 0 R
+/Contents 534 0 R
+/Resources 532 0 R
/MediaBox [0 0 612 792]
-/Parent 366 0 R
-/Annots [ 373 0 R ]
->>
-endobj
-373 0 obj
-<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [318.942 432.236 325.916 444.191]
-/A << /S /GoTo /D (section.5) >>
+/Parent 531 0 R
>>
endobj
-377 0 obj
+535 0 obj
<<
-/D [375 0 R /XYZ 132.768 705.06 null]
+/D [533 0 R /XYZ 132.768 705.06 null]
>>
endobj
66 0 obj
<<
-/D [375 0 R /XYZ 133.768 308.911 null]
+/D [533 0 R /XYZ 133.768 667.198 null]
>>
endobj
-374 0 obj
+532 0 obj
<<
-/Font << /F29 215 0 R /F88 216 0 R /F34 295 0 R /F40 296 0 R /F37 271 0 R /F82 294 0 R /F83 293 0 R /F90 267 0 R /F41 298 0 R /F80 213 0 R >>
+/Font << /F92 356 0 R /F33 305 0 R /F100 405 0 R /F41 310 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F76 307 0 R /F78 308 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-380 0 obj
+538 0 obj
<<
-/Length 2324
+/Length 2360
/Filter /FlateDecode
>>
stream
-xÚ­YKoãF¾ûW(@4`qúÝÍ ,¬³ÀXÄ·™9p$Ê""‘ŠH­íùï[&EÊmƒÉ©_ÕUÕUÕU_“bq¿‹]‰Øþtwõî6ˆ…”ya­ZÜmRëÜ»°pÖçJÛÅÝzñ13¹¹^J©löŸú±Z_/µ·Ù¡<öu¹ãÁº:Öÿ»v*+{hµÊªîúóÝ¿ßݪbQä…S™‹ÅR†\‡‚ÙÞm+ØLÖTÜé·us]›=Ôý–'Ï‚`À‚¬cA*€ X)|Ö´=ï<¯%LW͵òYÏÛÎÜÚãºnÊãS’'v 8©JVaUëxœBLŽSä¡Ð@I{°Ìµ•Ù:qnò„ò|%IPt°GR:{ØVÇŠéú¡+PšÚ·çŲᵶ‰S|¨c]~ÙÅ™v%‚¸ú“Ð6(®¯—td0HŒœtj›üziŒÉ> -²ª\á>4¨TGIÀ˜„Á$éíúBRÙSøÀJÛ ùú6¶Û¸v™c׳<pYu¼)š(¢ŸŠB­º3·„ »Ãõ»ª7ä|¥9DÁÄpb[ˆì—Ówµ]Å~Õ~âWidî
-;8ö6ázÐÀn  ]ArÉÍæԬо<"‘ZàWˆ`Í»‹±™PBÁ•Š"JXÐÒ )nzŒ§‡"Æe³Né×ÁŽ4¿'Õ^yŒ9#àn˜è*7&†—ÇD5´­ÂT¤€$e!bl–ž7’Ú|÷A¶ÂîºÞl<¼ýãñæéæ÷?Ï‹Ÿã9ÌÌc:—v´çLbÄÌ\"Œ×ù“°2aŽ¥³¹¶†tSA3í?˜0(`Qx˜™†
-ù|¡9ÔåAÇS¿§žºn)EÈÑ`Ÿ; ÿŠï¾ûã -Èhñ?ßæKp‚qêk¾,¾æKTÖõ79ÓåR?wæ…ê>÷SµD‚΃oíã{p…óèí2¸áÎ+“§/O|JÄC™àóB¯…’Uy¡ÂBÉøÛ`ÿJ(›C
-ÒÜ­ãùq
-´b6«ËýaWQfYjšU“«„³soÁ'¡l"T¥S¹s#ˆÂª°j«Í&1•¾²å(ìX"ã="W§Ým‹mDÎdmÉ
-p€Âœ?ƒÃ»®Á†Éº]Ùmyý÷Ã[` $×ò£–ÀŒ¿O#–w³2÷}ªÄ*Ô7Ã<l1â·àW\Ô¶%܆Ç„™žûàóBNÓý…+ ¤}wDB5R>:ú„óœçlRMú%‡1ÏÐÚÄ‹„¦@îF7߶­ï·tŸ½?¿GBÞ#¯CUO "ƒ¦â³áY%‡Ðù‚ ~*i¸P‡]½ª{Lj&£Ç˜Íî°ßr®cL±yêªY®bº™˜n8\y5>ºtLæô2Ž“Lò¦°.B–YT§ðÜGu£?¿Šúá›Ñ›·y6‚7õ–¾q¯"qû
-W¹±Ð
-¸pZýGàÈ0Nª\ˆü:ŒÓpÔÀ0nøFôs ëWã²z4!{F G¨#¼K/u7L7¨Ä÷#& ÒCŽ›aBSù™ò¾¤Ò‡ÝYíJÜê¡Âp±3ôd†ÀIH-“2h0YÐt§˜ŽÝêXzž%Äa'Hq#
-‹¯Gªãâô#›#^Mq™ÎíBEpB8
-¨”ŸM
-³O£ÀLr3šE³ùð9#möÓ©çé'~=&>ÌK¨8ÎŒàq…ßåË]ž(;šžZjžËAy
-ªËëAŽðH[ †
+xÚÅYßoã¸~Ï_¡G‰yü!RÔ
+\ t‹íKqh€>d÷A±åDˆm¥’¼Ùìbÿ÷~CR²ä0‰s=´/%†3Ãá7ßP<¹Mxò·3®¹:ûéƒà<)Xa¤I®Ö‰PŠåÆ&FçL*\­’ëty®EZîvMþùêï?}Pjò^È2¨s’û®:_dœCÚ_›vUµ~Ø=œ/¤M«eý‰«lYöu„6õý9ýãµçzffš‹Aÿõå¥ü1B&´¤~Z•¥õî\¤]_•+šF¤-îë>6±LævœE\Šø<gº(¹O\óÇ»zIÆßyWêŽÞJŠ+VäÉBVèÆþÁQ"Kwe¿oË¿éïêÝ- UÚ7þÑ*\ျ"˜˜áÉß,Ë®ÂÄ‚/4ÏÒ}íüµÙmž‚¶»àé|…¥Ìh3øЗõ&â¨ÈY!òA¨Y†øIüªÒ°CLc ë¢ UÁt®æa˜DL)H)–ëZò´ò7ͶîûjÅœ‘±96Óò‘rGf>¨4h0jýpU·Õ’¬¸Ä}–§õz”mƒt9 ¶Í0rNuaìÞÐÐ÷à•Â‹X„<ík¸‡g.u!à’:|¯VÞï˜ÁýwTfаô•~9×wuy³©ºËQÎÿ¹©»Þ?r A×`+ÝÊCª§ôÞï˜áŸ4^b[ö‡ˆOôº´Úoé÷Æ/a;NC~ðàñÌldae“¤¼ÔÌÁcÉ$ÓLœC‰æéŸ7·ÕM[bíʪƒ4&¯,­Ûj2³3é(9É.ËTá§ùǨ)ÄÇŠ©&¸5hr"nsáJhæ•‹F.^x;#üíƒTµõ²ÜЦ+xzuW=ù}öârÓų·Kx½˜3Ç…âgúg„ãáz„M¹e™E2aßÂä*»†-È@®êõúáZnâr{AÐõáû×˧Ëo?"šÙÙ&çÌjØåò"ÙtI ãÖNðN1‘Y.˜4Ú™(­ô¿†1ÐQä˜×i“…I3"DA!;"àÑ’3>"Ó…Œ$€ÒæL&úà"ý׫³Ÿ‘nžÔ ïe’(yy²Üž]æÉ
+ÿa±]6yt’Û$/˜5¦Mòϳß|ÙœM8ª²Š¡°À~ùq€ò H$³yXNyb,! Ÿ8çñxËQ&¶tšq)±nS¼ÕOƒ`µV3³_X3È‹ØœÐ# çù¤ßâ¡R&Äj És¦°9Pq˜Q™—¼p®ozWm•yÀdîÖ^à%¸À_]}ëëMP(Xî7¤½ñú9±
+k Ç-FuÙTëuŒ[ЂŽLŠQéÊ
+)ÜŽ"l(/0x#öê¿"û*ýQ©7uJ½ìT7¯¡:H7òWÈÆϲ†½fY. êU˜É唳ÉÀÙµZ4ÄƾÐOÕ¶õªò¤mÙl·ånT 1ë"ÁY”:$¬‡œæKx?†
+Š—<ÔLéâùIE„þÿÙÁzÉA~ùëì_"Cì«ì_"Ä"…=ÏßÏþÅ;Øö6û·ïaÿöÂþÕï8Ó™
+ÍÉÇ6zZ±>€->„O4+Ä ƒÖ k$iÏL1¸­ÓnÜ!–}¬¢@€”ŠÜ}’Q…£ÐžRÒÍ#¤¤< ü)xÈüãÎ1
endstream
endobj
-379 0 obj
+537 0 obj
<<
/Type /Page
-/Contents 380 0 R
-/Resources 378 0 R
+/Contents 538 0 R
+/Resources 536 0 R
/MediaBox [0 0 612 792]
-/Parent 366 0 R
+/Parent 531 0 R
>>
endobj
-381 0 obj
+539 0 obj
<<
-/D [379 0 R /XYZ 132.768 705.06 null]
+/D [537 0 R /XYZ 132.768 705.06 null]
>>
endobj
70 0 obj
<<
-/D [379 0 R /XYZ 133.768 667.198 null]
+/D [537 0 R /XYZ 133.768 583.519 null]
>>
endobj
-378 0 obj
+74 0 obj
+<<
+/D [537 0 R /XYZ 133.768 390.69 null]
+>>
+endobj
+536 0 obj
<<
-/Font << /F80 213 0 R /F29 215 0 R /F90 267 0 R /F37 271 0 R /F88 216 0 R /F34 295 0 R /F40 296 0 R /F82 294 0 R >>
+/Font << /F100 405 0 R /F33 305 0 R /F75 304 0 R /F74 303 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F76 307 0 R /F78 308 0 R /F80 456 0 R /F110 501 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-386 0 obj
+542 0 obj
<<
-/Length 2535
+/Length 2553
/Filter /FlateDecode
>>
stream
-xÚÍYKãƾϯ O¡`©Ýv7é…ĆǰƒHvvG¢$&’(“ÔîÎþï©Gó¥áŒÇÙru7ûUÕUßWU#£]$£ndøýöîæ«ÛTE™ÈœvÑÝ6RÆïÒÈY/´±ÑÝ&z'"j±RÊÊø/åiat|i˼X¬Ljâj‹¿IÜœóuyÚñà[ie¾ËË4ÔâÝÝO_ÝêltŽŒV*&Íø„O‹U¢eüÝ>?·ÅBÅ5÷UÊ¿xF¢²¸Ý¼Y&G›e^¥`OÚën_Üá¤Hka¥…J‚$ßÓ+’ÔF£áÜ/¬Š+úóï™Ûj+¼ñÝK¸K¢â?Ÿ:EìùŠÍe·+š¶á‹–§¦¨[R~Ì»ë—APTV±ä£Òtü
-Ô¨Dfƒ¨õªžÛÕ §zÌbeµ—9Q¥Èt¯K|=Wªø~±qñmÚ…öñ¾(NøÜ>Þ”o¥1E]NÀ6 (Äü|®«s]æ-YM¯a£ê„;µÅǶ¡Cd¼+ßJã<l‘‡-Šùñ|ï¯1V†Ö¤S]l>‚Å:¸ÚCX‘Œ¥ëö½”ßÌì©´¶0G•%ñ†~m¼y+µžS^*è=,‹•×:ض#ۥƦ8UÇò”·Y¹eë†y÷½.ß/,ô[ø dqi¼¯Í¿§¿5}AÃÊÛnñ®.Š~_4÷•õ(=U(½†ót&Ç¥NQn¶=yÅ=ØÏÀ&š}ÌT|Ä{<ðxñ@—
-F£3t²‡¢Þ‚LÝJô™pX?JêÁA|° Ô€ @³CAdÁ±ÿ$ 1õfLØW‡â°v9÷žN¿'´ƒL ïðÇà*:r"ó`A0Ñ “¹È€¿¸Î[ïˆèÁì†I·8éæû»›ŸoЬd¤À¬HAíÖ#z˜h}¼yóNFø¢À)iô¦#ãD
-RÉè½¾ùÃòä¼~/çD"³îö+02s:øR‡Î'RšIÁQÀ<€Ö½šÃ•I!Að•6p—ÎHš3{ý<ú
-{  -(
-¬±)¶ùåÐÎÁ: µU®»à¦Ün×U±ÝΈb%ÐE?“é©™ÙÒ( ÓôsD1ìgvhÑYGÔ(›œçâÊ - Æ­¯´ÅËÁÉ·u¾nËêzliàõdi0r…šˆô=?mæ4g œÑ3€zNP'8P¯9>®¿Y>…—,‹rVeSY^ï«ËaƒØ¬ëõc¥°ˆ8ƒÑw½¾ÔÜGÄÅ%ûr·/ÂXUo¸©INk¼œ»ì}À¼÷`_‡"|[ÿ|)뢻
-_9Y
-°Ú) =–ôkƒ8;õi‡'…€­´Á ½ŸÕS™JüœrŒT3T6± 28v„˜7I_d˜
-Žê×ù¥)Æj¹?ú~ÀiåáÒ©åˆ7ÈXÆÅë£ZÞ—›¢á‘†[Å9¯óÉÝH“¤ÂPÀ|\r³:fžZCàdeò",
-¸f‚·üµ¸šä6¶ 3Pµx–XZBÎ F ^ziøQ`$z¨‚hŒê °ìùÛcAçZZöa_œx£
-Cˆú3NDßlŠZ O WM†7ÂZñG.K\§p@»Œ,ïRÝ(0è>?‡}N§2'Ã¥ Ð^ç‡õåpi–!ë²hƒ{·9—¢BJð„9ÃúkE¥ —†dÚ¸)’O€ÇA’äúà÷‹„lFö´Ò@ÊË–¸ä÷/·|zX7ÔðPIë\
-7BÑ#Øš…„«*”AM•¬ýÕêîêÓ‹ìºOØàØ!írHUT >mG€?†8¨l®"âó!_ƒëãéÉ0çQÜ{"=`2¿m‹ð´s.»uyØ©ì~›ÞÓ>èXmûzbÔÝïÕãeŽ°B0L8û2Ûflb"u~£ß}qûËÇåÃòÓ¯`:`˜ôíÝL9 †n¯ÊIÉøé|ÏÆUµ9bñ±Xº™
-ù¼à²óÒàPg"åÿMp7©üC™aRßî‚C#…óz(oëPÞþÓaWÜ×y¹µm̯®os{bºF÷)Ûo–¸¿#œêò;é˜ìdW”@
-3q]L?Ì
-^¿À?™3”¦-û…}úØð@(†™Ò{Íf(ˆQÔÇtl°ûΉ±¸»)!Æ»äÝ„N[¸ª.ºåƒF¡{Å%8Ñ S%íM4-¦Ì#cèê‘–ß.èiæ%‰—O  Wä*Ad¡r)=ºš¡¼•Š ,ÙLŠY†îCu¬{RúeßZÍýûÃbÁz”¿
-X(›ðO3g†LuæÌdz¦½”³¥‡dOÍò
-’™Àn8\Ç)pËÊ{a‚å(?Yø®
+xÚ½YëÛ¸ÿ¾…?¨ŒØ<>$JjqÀµE·Èp½C÷ÛîUly-DŸ$g× ò¿w†CÉ’Lïzƒ\¾ØÃápæ7òÙÃŒÏþ}Åíÿ?n®~¸Vj³XK=»ÙÌ„R,ÔÑL!“*˜Ý¬g·^»MçK¥#¯œËÈÛi´UÍæËÀ½;ðëy¤¼ª¦I«ªØ%«¹ðÚå|)¼ ´ªº ±uZgçö’þeè¥ÍFBí=n³RßÚ‰þ‡^YµÔ±o, ´U›äÔSÕ@v~ó3œi)‹Ëwµ JyëìŽ+•Ö©á¿Í`óªÄ}•gþRjçER®iQÖØÿºNó”˜.‘å–Á‘…ÙOø,öýñ¦¿V-ó‘ÅmÒbK{YÙõØ¡ô))vyŠD~¸ƒáH΄pCíN(mªi]gk»`tc:d¾ð»ùÛ¤¡ÞÏ—(ÞÔî â[ÓbÁùpuÄ8´ìêǬݯ§›(ɸ
+»iý1Šć‚X*.Y äX$ïY]•…•=* ¼›­o`Å ÿpá0~×Ô·«“U›­R³È÷Þ¡*>tÃuÀ,KÒ % ð©< ºp*lq¸Àðra/»ãsÖp´Ú7ùt¦2ç6<"¥¬|è”-µPe­‚uZš'mZ[…%3 ¬™
+"MÈS/hìým&aQÏÑçŒ=œÐ,Šõ+<‚A0ôQD?)]Mi0¤nrZìÚƒƒ¤ŒY¤{’ ›}wöPÁíRʈù?†³)Òþòå"üüÖðûìò)_\·ÿÌßÜ5ÓÜ Ü Ä,¿¿8Á]G‚ÐE¿
+Üåò9pS¾ÜõEà®_ î‚\.wý,¸‡/Ÿô!xÉ]…í^pWò‰&ÛXw%EÈ”žDÀÿÌÓ¤î£ÂÒc³­öùšBBÊk”:ÅÚ£Óæ&Ä“{Ëc
+p>ˆç,Çð¸y&ÜÝŒÉp¬sê>[kì¡?2vÈ Â°OÎIb Ò
+ÿ°aÞë”-Dˆ)@Câï&Çl«å*ÉWûÜäjàªtle©;÷ 6”}hz“ʪ2r 1uc'Ó*ˆ2“z™N#}³~C»¤Ë »¹ð8T4€Å":ìí?7»[Y,1[þðV è-äàcYܾÆo@×Å'ìùòÙ4aú½se
+Ü®NW©É†¨8Fɶú³¥Mü}ojPèNp ª‰‚×d%¤Q‘xïlmÍó=ø*L!G•>룈Òå\;r¢IxŽîbU¥›+JDÜŽúƒlçm¶Ë³´+(íÛÓÚfú"hè0þ»Ðªº‹>’vX÷ÔªRS<]µ¨ó6ÖPÉĘçÿ —Ž„õ³‘ô*hÕÔ·…Èeù¦4Šˆ]Æf³#¯°Lë¯:#yöòIG£ô
+v»ÁÓ”Ö³ÒÇÒ|Ü;d @‘Þ'šBìF¬Ic#KÔÅ>¤!““’ýp
+HðŸD%¸5qOˆBÏrÓÂI]¦#!?ŽäÓ!úTÕ°›h÷¤ë‚%­‹ChlÀ\ó,©iÅÿ6{“ý‰›ƒT£éyMly-–+òö†ðëŽË€Z™íi ö`ËZ!´Ðv¤ô`7ØlÕív’ÄŒó]º/8~?ùBêMUØ}¨fZgÉû<}ó}ˆµ²õÓýbˆ×ãÞm=92÷Pgé ŒÝ   ,ÇQ&A€¢Æ)õ“#ˆÁµÓ
+ÚöVhkV5à”)ÚÇܼõÀ_çøØ2;ëˆíøÕa;¶Q3¬% ~RMÞj0QÂÒ|Ø=Ö`Ë…ÿ2ÍÁ̇Ë=˜Ê6Ð1XeG²#õˆîÌ*bä{øžjzÏ€Ñ5=z¤Ý¾•íoëƒmTô_ ö`FùÁùäµ·0Þìûç´ý7­J ð€!%Íí3-z§ä¢Ý+[÷dÁÎ>{ݘ%€ž›ÊVa‰
endstream
endobj
-385 0 obj
+541 0 obj
<<
/Type /Page
-/Contents 386 0 R
-/Resources 384 0 R
+/Contents 542 0 R
+/Resources 540 0 R
/MediaBox [0 0 612 792]
-/Parent 366 0 R
-/Annots [ 382 0 R 383 0 R ]
+/Parent 531 0 R
>>
endobj
-382 0 obj
+543 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [333.902 384.464 340.876 395.257]
-/A << /S /GoTo /D (section.5) >>
+/D [541 0 R /XYZ 132.768 705.06 null]
>>
endobj
-383 0 obj
+78 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [257.555 372.509 280.027 383.302]
-/A << /S /GoTo /D (subsubsection.4.4.5) >>
+/D [541 0 R /XYZ 133.768 406.239 null]
>>
endobj
-387 0 obj
+540 0 obj
<<
-/D [385 0 R /XYZ 132.768 705.06 null]
+/Font << /F33 305 0 R /F75 304 0 R /F100 405 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F78 308 0 R /F76 307 0 R /F74 303 0 R /F80 456 0 R >>
+/ProcSet [ /PDF /Text ]
>>
endobj
-74 0 obj
+546 0 obj
<<
-/D [385 0 R /XYZ 133.768 667.198 null]
+/Length 2051
+/Filter /FlateDecode
>>
+stream
+xÚíÙnäÆñ]_Á<™ƒÕô²/ ˆX‰ ?$°‚<ì®`§G"ÄcBrV,üï©êjrHºm #‚¼L_źºÎž(¸¢àOW‘¿¹½z{#e±,qp{¸”,‰Ó Ö R·ûà}ø÷Ó™ÍV*¶ÍáÔ—mC;yWö¦Ç9ËžöžÊáfýq³IhŠòC$U‘ðªÊÇHC³ùxûýÛ›Dϸ\3¥$ðh鿯?D:zÜrø~MË7v¹å ÁRŒH°$å#‚'+À/él%O™*ØrÎ2íÄ­=S¦aâÐí©Úƒ’‡;eƒ ¦;vf0"ïi4 ÚëÜ6 ‡SS ¤KXµö0?m´Fýæ»
+¿d›­R*üÚ!쇈\ûÔ—¦Œs1²»/‡¢5‡ò(š«@d1‹eºTA^=åçޣəóp˜["SÈ;•9 4;æ!¸Ó—
+>(P¦=ª 7vÐã™æ=Ym†‡²¹§á!wØFM;,èY
+§±¸;é}¼bËñB<Ò³$=½ò¾q=¸“W•¥ëŸæ÷$Ãö
+ž°ŒãÈ"á$ûîp LHŒÜ0BþÉ‹Á—BT Ž¿öUFTBO‰ 'tcBhl\—"¢ˆ*0ßy’„ÁdÒǧ1Óy²#éD òˆã3ª¥Òv{Óm[$þic2$ڮ܂+ںΛ½ã±§o†±(€ðÃí§b™$†–‚}gúâdhNmÊN¶˜B_ñEÄ2ÀŸE|˘Šù’¾Kí'c%ù,êÇŸ-pä…û”ážÓ‹/x|Édëcýצ®áÊ5 ƒ„¢Õ2¡¬Ì;KlBqR
+¯¿eÉä'õ£· Û¢C«Ò’E
+§šØð…K3£J¸;#­¯°I˜2àhWVåPÜ<y *Ëì…Ve¡,…ž0Ù
+5Ýls'|ªÖPúNªö"ð¥Á5”5Š©Á@›—ÌD¾†ò’6Þ
+¿ ð™  i£ÔÖ´qR¡ =R¥a7ð]$?ÚjZ] wR÷ÌY ¤Ý8N–Šþæ–!yì¯DérÒá©Þm4w­íºF‚ô«/Ohfˆu7.æÖ 5x(ÆK.­cÛTg1¨)ÓK¸͉¤€![jS¯}9˜«€pcõpà”È5ÞŸ\*ñk wv/X©ý24I|F(]ƒÿTV•+ïò²wÕÕ€QõØv®³¿Ù¤Ê=(¨pû!o
+ó%5“(ñ´ùd¾—ÊMÜ=ŽõÙtâ{×Ú^PΊ103+íþTØ`›ÚW Îír-œJî˦!5ÁÞO>ϕ๓%ý2ääð/yAÁù»Äi»´Ùîχd:¢ú
+ UJî„L„ÀêN[ç%iÄøêÁø½þµU6z TdÔ:À†A\íÎ4ÞÑ€=ŽÖËõ”ÿì´?š‚Ñ/ëšt /xVeãP<?»¯þ8æÞÖQi+j.ñ®SÖ\@ýCüo†r†ñ—U¿¥t;EÞÇÊßzs!ýrC16îû±…"ViF>_ƒùHühÌ곕EíÛâTú¹xíx‰§{·Þx´€ªíGÌÛÏíãRpÞ>x_¡Óñ”žŸ}ö -È¥çqAE«YÔ…EgŽU^Ør̹`©ÉKaX¥yÚ$ÂÙô´™Žx;:°M<Œ†j|r×ö¦±þÃËŽ’ð‡ Í®3ù#:>=‹¦ .c¡¼:Ÿâ¸ËIŽ7\Éñé6][Íl³ìv˜-¾·J¦áí
+`w”Oål[îi«?MŒ^ h@9AK
+
+endstream
endobj
-78 0 obj
+545 0 obj
<<
-/D [385 0 R /XYZ 133.768 266.926 null]
+/Type /Page
+/Contents 546 0 R
+/Resources 544 0 R
+/MediaBox [0 0 612 792]
+/Parent 531 0 R
>>
endobj
-384 0 obj
+547 0 obj
+<<
+/D [545 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+82 0 obj
+<<
+/D [545 0 R /XYZ 133.768 428.083 null]
+>>
+endobj
+544 0 obj
<<
-/Font << /F81 214 0 R /F29 215 0 R /F90 267 0 R /F88 216 0 R /F37 271 0 R /F34 295 0 R /F82 294 0 R /F40 296 0 R /F83 293 0 R /F84 314 0 R >>
+/Font << /F33 305 0 R /F75 304 0 R /F100 405 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F78 308 0 R /F76 307 0 R /F80 456 0 R /F74 303 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-390 0 obj
+551 0 obj
<<
-/Length 2432
+/Length 2703
/Filter /FlateDecode
>>
stream
-xÚíYKoÜȾëWLnT¤i÷›¤vƒØY9l`H Û
-—å)˲ :‚åÆ« 6ë`;ÍmR„ÎùÁQUÜÔe sR£D»ªöûjn’Ǫ®iù¦¨|¯Ø®C‡Ú’ ë½!hþðñ ÉMkúr{.Ód ÑÐ:¹ù Á²V&CÙ5Õ¶¨q$èhœþ3i¬jYžª 5Ÿ‚¸XHÆ7öû€ÿdv±œ¬ºrf”Æy¡½ ïÆy³˜Lÿ$¨Û[ê°ó¥Q<yžéÄù#Ì•OE³«ËKåIµ¡YT*¶Ÿ¸á}Î÷ ]á÷«¶%]Ò(¿ÜÖ¸•Ô_·N“«}ƒJÌ@‰Îè¹aÊع
-?ÀZFüœc¢΄ɂ»^‹Ëf ÿ.Ä¥üQ^*˜æ£soÜuá ²t‚»»þ†Úõ¹HÐ_¸ ¾‚ïc¸àf?P‡‚À}»­cŠ­‘‡ó~º|¾üúKDÎ¥‚(àyî5b§ò*ååUúE L~T_Æù2~ƒ¾œRèèÚ#y rž‚S"%!~î"MòS±ºw›ã`]m6«¶Ülhè€í-õ55A±®¿9|…:*Ræ4ŒüûÚ½*×ô…S
-NpC
-¬EzÄ?ˆÒ88ïÙÒrà8uFý€áˆ¾pÂG³Ð’™\ÎÕí0É
-Ãgß—4¢S80`‘±HÁEðÑ%!®ƒ#ø¡õ_zäÉ=òÀL
-Ëä@¨Ò‘Hü6²‰Ò?6¦Êà
-ÈÙ4ðjÏïuWy’Ú‚š¾\µÎ T¨Ó
-ÿ\Pt·Óç ü´iʵwFzQhkÏ7éjú 0ÒoEô; ô{{ ¬Òs¬ fŽ®¤Åä1KȽëè¤.Ü[)ô&oÍH˜`çº&1àG?DGôQæ•:©Hq©{ ‰<ÇXÃRy: å,ScÖº­li¨`á苘Ûf Œ¾+½ À;¡4=‰wÊ HŽ™—ãßd׳‹üJšKKÿs
-I‹»bC2.²ÍA­ã æDNóJŽO_R£=Ä!©ÜGö€BˆëOxåfB¹¹åDâ×8ª8¤êIµDRíë$UFR…ÌÝ7þ7Hª
+xÚYKsÜ6¾ëWðfªVÀ
+PÒ\*º <‡}œ¢Ýü'²¬ (Q/bÖ8º¸¸õ©>Ñ™˜óÆ9ïž)ù>¨QZ+o&¾ÔÆÌ´SwpCVv õ'‡`DXñØ(IºYùn¹_wæ8ÝÊL†kØ!=½ncšr¨z²"ÛÓÑô¡´’?p-Ç­ã#U÷CÏ#Ã2×1Ó`åèËÞµÈò±²åÞ{!SjÅgÒx|ì˜jýkÜìùåÀ!Óê0j¢Nµšc²îÀÝ<4åÁ¬{ž°ºá®j°°6ÿ³ÏkºR–sÔ O0K ˜)ë‡Á¬ýXx¨,ÖÄ°TšÆ
+îÊ>`Öø½Û;ÝR§äÏÚY1šÎŠg ÜÐHã{¦!y™g6:r”[«p=ûÃí¹ƒfGãyÈHÛ¶'º$86¹¼’ñeI÷²¤ò[?Oñ–hØ·Psô-¼ö obM3‰Ã7µµ´ö´Ûi’¤7íãiOµã898êà**Ÿ-Y{Ì‹ð®3CÅM6E4¦1¾â'º. j1iðñþá³Gͱö™–ÉÏÇîPún0•Q,ô™ë•Ÿ­Ž
+5±e'g™²+q  ¬#ê}ê$Jå„Ó÷ž­t”ä“E•ÍÆ^êH«x¤yð2gc³°G™ƙ“ŠS„ˆùòV¬SoköíòíbD“" :]ÉMº6C>Ç}‹<ø°kMÔ!Éy”9¨ñÑ¿3KV;wìx8‚ÞŽ5E3÷qw›Úàq|™²ð`]y=˜•C‚®\UÇ“Ë{‰C²l=wÝ ½ð~(›u5öøK }$šyôîÆè
+ñÛH7×éO]מl®fl˜±`¤ÅÃ×/A£¾‰töR4züøê3¬âñöÕçoaRŽð¨Pß%ý-P*²(q$_IéK )}$¥Ï@Rx+)RXþ(é(ËŠgQÉñÊa¿iòÇQÄá’Žµ¥|^Ym$”‘€ÍŸÆ­ÅŽ B¹Äî©žÝ7¢L=nˆ B¾¸!3=r…J‹±F£ãÅ»æ‘1þÆX›s=Š'ïÌ°÷ÀÁ)òþ9‘¥[‹'S÷¡9òd‚K@ŠÖ,Šê*3àåÖ#0!Ã΋' d{ °€H. £æÝÈÜ˵›šGâèî«ú8¶ºŠà1˜­iÑ£|þÖ0‚ð…A›þ5î8gÊ1OÒ1Ço0êªßO¦#,£àjKZ½³0FNEKàQoAŠfôØ6§¤Dqj¸8E£%ž^g;‰þj¶C|L³®O›jâ䫽ÐyH/Z»ä(·U«fjqc<7šMUmz7Ýò÷Æ渎´Â®-gŒèljOJn$Ϩ„:Õ0UŽ D»î¨ áKpm˜«r›{¹@µçžA¤Êé.ØkV.ˆUãa” XÛΠƣ¢¯¬u WE»èêÉ‚º´)1Íþ~ÓIŒâ yŒvÝ.àÆ¿~¼ Òr/‹ƒn ß– $ËkPc!«%µpfÒ!e+YöãÊlðf\oX¯áèpÞª–põ¬t^ÏÊ\=ëW<&vÚ•ôè§u‚ü¸iT˜h»¯×ªæ¥*‡ßïË#ç èÄš¿\ËÏÕîe´€@gOGö²JD^[ýHò]v€‡þ?؉®9 fÃÿ¾¡Âjkn})-àRM¥ò+®Ýÿb«Ð§aÏöT
endstream
endobj
-389 0 obj
+550 0 obj
<<
/Type /Page
-/Contents 390 0 R
-/Resources 388 0 R
+/Contents 551 0 R
+/Resources 549 0 R
/MediaBox [0 0 612 792]
-/Parent 366 0 R
+/Parent 531 0 R
+/Annots [ 548 0 R ]
>>
endobj
-391 0 obj
+548 0 obj
<<
-/D [389 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.713 202.873 442.436 214.828]
+/A << /S /GoTo /D (equation.1.2.1) >>
>>
endobj
-82 0 obj
+552 0 obj
<<
-/D [389 0 R /XYZ 133.768 667.198 null]
+/D [550 0 R /XYZ 132.768 705.06 null]
>>
endobj
86 0 obj
<<
-/D [389 0 R /XYZ 133.768 367.371 null]
+/D [550 0 R /XYZ 133.768 553.434 null]
>>
endobj
-388 0 obj
+90 0 obj
<<
-/Font << /F81 214 0 R /F29 215 0 R /F90 267 0 R /F89 255 0 R /F88 216 0 R /F34 295 0 R /F40 296 0 R /F37 271 0 R /F82 294 0 R /F83 293 0 R /F84 314 0 R >>
+/D [550 0 R /XYZ 133.768 180.464 null]
+>>
+endobj
+549 0 obj
+<<
+/Font << /F38 309 0 R /F44 426 0 R /F41 310 0 R /F76 307 0 R /F79 553 0 R /F77 438 0 R /F80 456 0 R /F33 305 0 R /F75 304 0 R /F100 405 0 R /F74 303 0 R /F78 308 0 R /F81 449 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-397 0 obj
+558 0 obj
<<
-/Length 2499
+/Length 2513
/Filter /FlateDecode
>>
stream
-xÚíYK“ܸ ¾Ï¯è£¦<M‹/=6µUë¤â-oÕ’LN¶7¥‘ØÓ\ë1+©=Óžšÿ€ ÕÓöl²‡riñ |Øéêv•®~¼Hý÷Ï×/_‹rU²2Ùêz³âR²<+V™Î™zuݬÞ&¯¦Ëµ”2©úaÞš‘:æ¡êîZs…=•´f3Óø<Ð×Î~Õp)ò侧Nc>ÚÚLW—ï¯zùº(ŽE—Šñ¢ÅœÐÆn6õ`6"=ÑR§L–*PÞ RI³ÎH½ì/|Ï$­y^2žëÕZpVòœØ¼ãR½½\k¡]åß½í^ŠýKqß+ø¾ýøpµ¿úôt {OúIu²•ŒJ¿'•‘d,<Á»TsÏ&?ÑSd 6¾‚¥¼$Ú¼é°(sY3Yf+É2îOLx"yD$¡ÅƒÄþû›’¥i(Ä‹®Xª½»Î׋ Ù—b*_­Ô}íNí¯×¿]àÂtÅWBkØ3ˆNA+½ª»‹·ïÓUs?­ðô‹Õ½£ìVeÁ”FghWÿ¸øùô‰¸ÀJ—%Ó*f\ë,yˆm‘3 ë+òâ[ÛkÅ8¥pÈù7Mž}ÍV ºàmHó}\ó´ÐÏÓœÿ'B?Å7Yru,ô¾•™e
-\BŠˆþ |ˆ„”úk‘;œr”÷
- à Å‹°oÎ(échÈÊ%"Ùå:/TòÏÉö·'Û„e`´2e<ã
-§ÅïÀÓ·Ý‹þ™ *
-¦‹åfžöªxã¼dðz …‚× ×íÌXÍÃÈ<.𓈖Še
-ÑFCdûŒ™éK0ŠN“¿ ]û’…„„f“‚ ßEŒ|¼Ì˜ÆV7­35 …©Æ¾K¥„L©¿”Mé\ìó]¡ñ & _o¸*1Õé§a¤6ìnò3äÎű:,”à‰ªÑUm78­];¸ažì=¡]är;€/#zÙÚOŒ1w™v7tÌ.9à Ðϵ=¸ÉèP‚·áÎT¹
-4:ûà@šwÕ8;|rË]‰×–Œšýõ…vTJ$¯Úy;ìn·´ÎÎ1§9ªl$W‡ò;½­ئ‘{¸ÕüäéímúDb ?”r±ÝãÃþ)b`¡Xª–T œrÀFÇøœ-ÔEV¸^íc\!{KùäÕ§›Yã¶iï4E-Þæî”" ¿Ð’ñü¬êyˆ/Y&–Z¬ê›X5Í|qÀ}” _ò:z
-½9ÜôCK§wžJË€ž²®Ý©¢™«áÜò‰¾3¸ ùtPAGê9¨ZØô7’µ-½Ày•„‚å¹8‹‹/zˆ`Y8Ħ Ñ€’à뮹];Û5¡
-‡/´: )ùßSü¡œ— \á3Y¸0j{—vC^åë
- ÖY"˜iÑIÂx€Ü¤z¨éJ—úG´ àëëJÊ®E¨ ¡5ì楈ôS†tõŽ.í€. S:ãn²,1ì–ùæ² ­&ÏËü¶ ŠØ88!
-ý5’ýÜßT.¯w#ø@mbµYê‹2oÇŸ­«¤và,è>;ÄïtWÕô
-½D«¾ò4y'dþe;ayxn+X†9‘ •£W ù¼LÞ\ºyÌz7¹º¿¡‘ŠäM­½Ý’;¹a—è®)`ƒŠ'Fnvµ?Ý,#¿É‚dÚÄ„¹ÉŒôÔ=Ÿ¸Î.Cq
-šóµ¡„±£3¢Üh‘² hL?tXÔÄ«C
-xéÊ(Z|†ŽÍ%CÇé†ÒóìžÓ8å¢H^ÑÀ åR½¼`ó‹x"©Ø’XRÈNO‘öøG%¤k¥ð¦æå Ü¿ÿxqi
+xÚ­YKÛȾϯà-`Ôîw7m,o/ ‡ÄìÁön85¢-‰c’²Çkø¿§ª«I‘G–¹ŒúY쪮ªï«žÜ'<ùåŠÇߟo¯ž½R*ÉXf¥Mn׉PŠ9ëk“Ê$·«äMZ<¶u~½J¦ÍC¾,÷÷ÔyË¥¡V[ÑïîZúô µ‹/×Ò¥ÅtiS×"Ý5ØS´Ñ¥qû}]äí ´JË=Êj‹z]ÔÐé=íø\¶›NŒýiÚMüÖ
+6|º6&Í[ø!Åõ»Û‚Â !Xf¢RÿÍá
+æø£ÓÏ›j[ü$Þàêg¯´šÅ
+&2$p­HÂ_i¡³‰e™SZ&3—(f…¥EjFšfÚfÉb°ê®ºúÇíÕÇ+å‰H¤7Ì ™X ½O–»«7ïx²‚IÐ…©Ì'ŸÃÒ]¢,óÆBs›¼¾ú7ÝêèƒGYœY«»ã/ŒM¯ÂÚØÁ›ã2vþVSžq;™WQí¤ÑÈm"ãŒg6 `RF­Šæ‚ý—e¾Ý‚pe}º®jj„ûR6K›mÞl0¾£‰jMãñíñŸÏ]÷Ì:Ú_p)æ¢K1Ý¥,„ÊҟІ åž4ÔÄ :cVºîP %ðôuµ+HÅ>ŒPϲ¡ÁU±&_HØÍ­ûkSÖùݶ¸Áµ.½;´Øé¶h/mús°09ëü°m£!ÌÐVÒ2Î{[­ÊõzYëõŒ=Åv+Ë}SÔm3#Rá³nÄ“˜tw˜‘(53¢ÿö[n8…2jÑ´5Ær»Ä”±!5òý*Nnêf÷`ˆ‚4%àúFº#gkÑU>)öâäjä«ò-W
+óF sð­<³î¬g ðe÷=DzÿÇäKKhwα<3R+˜C@¶¶ßdŽ}¯7Õa &ÔR`ŽÓRvêÝ=êÞ–ÕžVTÁxË塦>&fܲ)ï7E«ê5%]Ž5q]N]Ê»u™ß]£oƹåÇCYÝQèÈšeZO\üóEÝ,ñŠÊ­5|.JZ½?4í.žŸÆ0|ðw—¯ŠñÙõc#6cäAÈ8ž… †y2dÐ÷þ-Îù·aBê>bÒS)Ǹ8Qô´l‹ù纮vSOE'¥C…>a¡ILz»A"ˆÁÔ9ÔÊB^îÇzÞÝÄg@K3áEb
+b»GAìÌ׶´%®XÙ1"Ö£Ù§+ikwI dŽsEú ’G¤këPÆûPÆ+Ëxœ2>Öð„“Õì … VQ,`šRŽ*ág¯2™ÐÙ$Ý †0
+li&¼« ÖÕaÙ^cÚ1…ãw`ì+6¶{ü‹ö!4ûöuÒ­Œ?žG8|NÓÆ}áü)ÂÄ,°‰Œã³œƒb8úS ÿó· ÀâÝ̤lÆ –
+LŸ)ÏŒž¼,ŒÕu†)Èç
+ÏÜ‘r.·[|ÅàXÀi¢¦j&bBÁ¢òf¾«èù‡§U»¡ú£È1ie”^>ò˜TÛ²hn.É0À_9¤NÊ0bbºtñF¾»<¿ÌRdàÀ2þEž$.TžF½‘#WQdrÕÁÐäŒ8¸Ê`Ñ#ÌÌë&ÐmlÂÚ³›ŠqáÎ¥ àÉÊ!Y±Ìu›+¤ROžM‘r.”fúÔ¾#«¿÷ºÇ‡o¤·™ò_8›FÖÇt—Íåøqìó?…U¼
endstream
endobj
-396 0 obj
+557 0 obj
<<
/Type /Page
-/Contents 397 0 R
-/Resources 395 0 R
+/Contents 558 0 R
+/Resources 556 0 R
/MediaBox [0 0 612 792]
-/Parent 400 0 R
-/Annots [ 392 0 R 393 0 R ]
+/Parent 560 0 R
+/Annots [ 554 0 R 555 0 R ]
>>
endobj
-392 0 obj
+554 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [423.762 186.566 430.735 198.521]
-/A << /S /GoTo /D (equation.2.1) >>
+/Rect [383.831 453.396 390.805 464.188]
+/A << /S /GoTo /D (chapter.3) >>
>>
endobj
-393 0 obj
+555 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [322.275 148.715 344.746 160.67]
-/A << /S /GoTo /D (subsubsection.4.4.1) >>
+/Rect [153.7 405.575 183.92 416.368]
+/A << /S /GoTo /D (subsubsection.2.2.1.1) >>
>>
endobj
-398 0 obj
+559 0 obj
<<
-/D [396 0 R /XYZ 132.768 705.06 null]
+/D [557 0 R /XYZ 132.768 705.06 null]
>>
endobj
-90 0 obj
+94 0 obj
<<
-/D [396 0 R /XYZ 133.768 425.614 null]
+/D [557 0 R /XYZ 133.768 307.585 null]
>>
endobj
-399 0 obj
+556 0 obj
<<
-/D [396 0 R /XYZ 133.768 164.157 null]
+/Font << /F33 305 0 R /F41 310 0 R /F76 307 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F78 308 0 R /F92 356 0 R /F100 405 0 R >>
+/ProcSet [ /PDF /Text ]
>>
endobj
-395 0 obj
+566 0 obj
+<<
+/Length 2965
+/Filter /FlateDecode
+>>
+stream
+xÚÅZ[Û¸~Ÿ_á·Õ cE¼JÚÅ¢{Adчv;X H¬bÓc5²4‘äLÜ`ÿ{Ï…”%[ÎLv‹öeH‘‡äáá¹|çx’ÅÝ"Y¼¸J|ûÃíÕ³çJ-ò8·Ò.n7 ¡TœÚlaMKe·ëÅ«èo×2‹ŠÖÕØö[×¹îz)ó$Ú8òáZ¦‘ã‘·Ðdð!" †•5|t®íÝšIŠ}ß슾\Uu«`‡Ãõ›ÛŸž=O͈)dœ%0KŒ¬ËÍfո͆I'œkìê@Y´Í¾^{²lD÷S6PuÀ‘h1‘Áx§3ge±ÉL (k¾IK%²Øfb±"ΗáÚÕÍ®¬‹¾i¯—*•Qß`«¢ Â,jÊ5O5˃>>”ݾ¨¸¿-ù xe¿-zð/@‹[ßY—¯¥\x¶D^ßñJd™xØzZ„ã©f3#‘dz/’Ô.lœ§ ^ 1±ÍõBÅVx"9÷F±¶9èH3•H’ Yz*¾[¼ëù†RÇ&QÃK€Z*)üµdÝ·ÍÛÊí¾¾^j•Ee¿e‚‚›ª!@ïub’Ši_õår…½mÑ«Þµ0%˜èõ± Þ²€=opH…“@Á÷÷¬ùm·}oËûÞ+CkN/ƒâךØÀf[Š»­kù³iס ’OíKRÇã;RšT ܼó›vØ&Q¹áï²÷ã÷÷Uéü$*UW~—û¢õ„¯i<ÕÖŸW_'(‚å‹L…BVC¯Ùp[p3oŠ«àÖ£…pO¤_/S•F·×($OwM5H@ ¯ûØóo|3ç=r[õ$ï± ´'…Ž µ*MQB#ˆNǽ«¡¾7¨t¢+<‚ÁÞ\ÀŒÖË$‰…I·ÛUb ´†a†iðÑæèÌN”%%/Ü¡¢fYôvßóáuãSÂj›«é…‘5ªn•n»~”†Î•±ã‰àÓq—5:þUüJÖÐ@,PäÓÑ[ƒ®ý“ÞzÏGý¦­Ü&\ò¼'^é‘àÊÁcÒZ2l'O[þÛñè[Ïö×nS€ò³ZÊèÇmQß‘7¥]¶nBÄëû=¶®èÊêÀàyšÜ¡X­šØi·uëoàÁ”‚}w^K•âÊ+÷HíÝ‚;?¿¸‚•*Ö4B{ð­ ¡ã\ëé1ߣ¾êÔ°“€ö€úBÒ‡|.l(쇈£S–(…§Á
+@ÃŒwpLüî5/c­€tzØÎD÷U±r¾^fiýµ¹óˆ
+CÝóÊÆ뀟l`«ö=:hP—Á‡=06Í\Ño¿*öÁ* ø„:éÄu<D hxôÀƒ«",%öäIØ.‡Ù­ßø$P£ck˜äø>4Ê
+5^úëú«¹[t‚:|™¦ÂFCÌì FK”;ÁÅl)z@çaÛT¾°"¤·a°@½Ä‡/èükßù^Ùw³²,—G÷@A}G'ñ
+ð}WõÊ}5 „9©D«‰;IŒšsÂ/gc¡&>x3ëòsó„Øóåaãê/·Wï½7 ™Á.ð®:Åib«ÝÕ«7Éb “ ÎXA
+Îyü…ŒÄ‹ÄN3Þ€Öxj\>“ KxS¥.äÂœ{¢C'H}E6[v>ìczžè‹S,ô8±OV€Ñ,Ÿ2üœ’Z2k5D_øÐC‘ºkG#Û8µ†¹ðBµÔ;¿l”TK
+ð^­ö~û¡ÜŠ`ÂçWj…^nfò,Ïú*’{,è“LG|¡CŸ:4»hgêä°rÙ0ÉO¦ú¨ÁSSõBÓS\\;·öLømÖ¾”ZΩüMÚÎU›¯'Ú“º‚Òq"Qõ ˳ÁÑ¥_á¬2€½J}Ú Ê|DøíÓÇgï~»áq¤z¿/Öǯ k¨ûì}ÄH÷fÎ{š<¶¸§ÂÞIO¼S’eç)àd›¥°á '€ Æ8eâëÀîŽðâÿ ?,` V d~Iú9ø¶oHñGšÀSš…̲fêò夙ر9€–a„òK¿™ƒ#)hªÿ…pÍcÂUŸ®ANž"Üœ"äeᆽ¦Â½À<l&¾Ö;0=zY°&“ ,ò&õ`-Ô”Un¹$}à¾#7u}-ãžÜúŠ½cúÍߘ
+}ø!%?¯$¢§Êÿ‰¬Å%ìs;ä×ЭÝÊu"Hpvñ\Ry;ÔËbWG»à÷PÖ§ò"øþQͦCqB äõ­/drödý…›"íL¼ô¥Î—µßÀb»ãð²>,縬Ê®üoƒ|t:„½]Ï@vΧ˜õ@Ly>Í…Rþt8 ;ô[ÃíylñëÇ?ÆQ§u«ò¾õA‘ËS§\SÀRáÇ
+d£_ùβšÊ)bdž#m>A\`È ‹d¡Œ3Í™A*ÿ×àú
+endstream
+endobj
+565 0 obj
<<
-/Font << /F29 215 0 R /F88 216 0 R /F34 295 0 R /F40 296 0 R /F37 271 0 R /F82 294 0 R /F83 293 0 R /F81 214 0 R >>
+/Type /Page
+/Contents 566 0 R
+/Resources 564 0 R
+/MediaBox [0 0 612 792]
+/Parent 560 0 R
+/Annots [ 561 0 R 562 0 R 563 0 R ]
+>>
+endobj
+561 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [217.406 546.705 232.128 557.498]
+/A << /S /GoTo /D (section.3.4) >>
+>>
+endobj
+562 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.218 498.331 205.941 510.286]
+/A << /S /GoTo /D (equation.1.2.2) >>
+>>
+endobj
+563 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [286.819 374.87 301.541 386.825]
+/A << /S /GoTo /D (section.3.4) >>
+>>
+endobj
+567 0 obj
+<<
+/D [565 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+564 0 obj
+<<
+/Font << /F33 305 0 R /F75 304 0 R /F38 309 0 R /F41 310 0 R /F76 307 0 R /F100 405 0 R /F44 426 0 R /F45 427 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-403 0 obj
+574 0 obj
<<
-/Length 2851
+/Length 2448
/Filter /FlateDecode
>>
stream
-xÚYYoÜÈ~ׯ˜<…kÚì›ô"Àz±Öfƒ ×*@
-éqên-lT€^
-ʪ ª¾h뎭7ZÅÑwGÿ×qõÐÝlSìrØæØu¨9ä;^2\:ê[üiª[wl•
-lQ=`OG`Õv½Ÿn·EKóAót´–í·D¿oh¢;æHuM£¶Ø¯ÜfÊáǾ©a§<«àü
- =ù|OO²š)î-®ÍÌNÑqô×Ûµ%n($õÑ–}Ó>ŒA%\EJk wjÅÀjbÌá·esìh䃎ÁüÛ¬/h\•uÙi'0žk“îq"«®`度!#ìA~ÍìÔ +E(Û6#<(Ú̉ñqÀ
-p*Õ|´wýZ¼û×" ) i<íí².œ´ozêt%hUC&‚É W$š ÈoT¿ÚƒÍŘù0ëx‡à˜Œ4â¦~%êÐÍ•\0 SK¤åø—ÿ"Úe9¸HÙ9  O±>KW¢ÆäzóŠOá{y» „Z1Ç3Vz˜‚‰Û‚Θ©ÑZA.>9MM>ôLs«
-¤9àqÉ—Úú M‰v×øü 0 Ïð±SVžCLßè
-¾ì|‡r»l,9Ǥ˜o’¢{ó’ìêTCöNŸÎÞïE½™æ\Ì›úãç ߟ?œÿŠ3_>»îWºÐŠÉ)Ú=•Ð“¯%tnÀ@½À
-1@
-2çÈ.(Ó-¾ "áÁ²³žòû‡}VÃi#REÑ; ¤2:¸Ð']8G ˆÌø
-žò쌹2ý¿1£_½;&áEÛ®¢€ØAÓS| ÃSÝ®á7«ð0cK¤YGA8ô´’aµÃå§Øð‡¦}NˆgÏÜE.J!ÒM(xëÕÈ’)K& Lù¶wù6ŸËLÐøÑÙnª*v=õÿX§ÔÚy’A5$<€T@KKáA§y±u`€në©­›Î÷|µƒV©éÊ+§±”«Ó‚ËuGÇGïí7¸’xî¤-¯®‡ ‹€‡O"8¼uq°kªjV'Ù.°£Ï2NHÄ^HÅ£ 0› ©ûjÏè
-`YN-•ò£· ÇÉ‚iõ>´žC;rèfGàïYϸ bt¢Û¡Äð"xÚË‘ i²qw– Ö§
-˪"¼î,Fú‘êÒ1¯!o+œçC’7Îc6§ÿETÍ•ï”7ëI®‘Ã麷ºðµ·YõÌIÖuǺÂ.ÂuiNŠÖŒk»’ü)qþ´ç9U¤#"ÝžÚªÜûjé«Ã¾ž6n¹¥ra~*–è^/ß
-FÝvNÄC6xn[nÃ
-;L›ãµÃÎX{†wzM‡áÒñ*lQ‹ÁÜ §ŠMS›úK-D˜0Á˜
-¶ô©{½'+è»uut‘gî\½Íÿ‹r4d‡TŸ˜ãäëðP„—Κ5õü7ׄBM¹‚Ÿ„«ÚôÃYW.(ºáÏÔ÷}±ïügYï<rxõH¬ã«Ž.¨û`šŒ/Æ@*¿™->öqcœ¹Ÿ°$ñQLÄ ¢w—gÿ•ŒŠ
+xÚYK䶾ϯÐ)«ܲHŠ… ‡M` Iæ`×€9-u¼j©£ÇŽçßç+õêÑÀ{‘Å"‹¬çW=qp âেØÿúøðý¹ d¥©ÔÁã9JEYjmd¤E<Á§ðoÏö6”Ýá¨2ªÃ/ÿàmI”™Lж88&ydDÂy–×[m‡²ÿŽ÷åÙŽõÐóìOt
+m“Øf oûzHeh»Ê6%C°:I™ò(Oeêi™XóŽ¢:ŸOmy>3«R+VG"K±ÃqV$Xˆði¬ê‡mC_z.™p¶§ª®†ªô¼íçX©²+ ¿õ ³ð•Ç´çííDª#­Ì$ó÷Áëà½Ûé‰ófOiÂ/öâ¯ò9Öq՜걀tRÕQâlcòà(D”kÿþŠž Sÿ þé­i”g¸
+D)(,SŒbíýqçBI¤L1 ×£L/Jˆ./ô‡™®ƒù¿Š¯ð46E½§Äàbzr­ðhzp¿§©XM¬P†ˆ0¼ §‡öÃHÖáI{Þ—¦Q&Å7Ú"•+Gq"Ž×–#™$ÏtÖÞÕ“8ÊÔìväü©s±ªc;*‘F†4êìè#¬(ñ˜¤ïµ m/ð Óðj›ê6B V¡‡$‘á£Â¶ÛóA­ »ù9!Jæ§%aÙü6íÂT¿XWýÀ#¨Ü1Ülg¯%eöÒXE©[/ýz€l=º¸J^ þkÕTÍ… Ï-yÿ OHTš€é ®Â^âå_‰£dŽº=1k¿øó\àËQ€ÁÍ­gr¥¼Ó}º¬ßxµtê+OžÜ¦rJLë<u­-ŽOÝØ?ƒI&a_¤ŠðÒ3¡®¾Pv(i¦Â—çwéxÉÝŠEéž“®ŸCôÊŸáS Ï]{ݱ­Ôy¤“Ù¶Ÿ…JÎRÇ[ÓJƒpž¨½¿J_[<å­
+éò^µû÷ÔùúТ¬‡½C¡£³#$&D`ˆ4Û|R—f7v2“iÌ&rÈsäÐâ9nâYÙ/­š²ðˆ•uÔ»3à-Ø7B¿uǺèؾŸM‚„‡ÂVÊŽØ[Ú¾ª)p“ çô=_ðÔ¼ÁòçdûösãKm›SÉã§q`þKõµÂv—‹0íÛ«ç8Î÷\âÓè-E::[×›„áóyéÃi l­ê-˜O§²§¼£´ôV|—˜ÀàÒ.è§Ã‰¹kÇ˳?aÚ‰HCy(ö î'bã$Õ0ŒxˆÝ%àÁ¿z¸G i”
+ ¨&(ÜÆ <¾I
+Ï]±“¥bu㫤Œr)·ÖµÝe¼–Î([(ãìMß—çÊa"ʸ*ç$ ²Ý«Î¹‰b1ÇØ—òõ/_©Üìmép9“Y<K]Ê™›rõ¡ÊE–þøÁ.—2a?žÈüÌŸ†ÑtÙ‹÷›†5 2Pî4@ÕG‡unÇaûJ¦QhNmSðx«+bÝÅ=
+o -ø÷ö,ä8Ê“d«„éÈÛž• |1¨øþÛ˜œ!O\{IòÃس;À™„kÊ¡Š0Dåu=}‹ª?}ï¼Cy4†ïg©²wîˆcR7÷>¹ÓÉÖpÚåØ—hî5¡¤^éôgt„rE jôÉFEð\!¤ÞôžÜköC7žà¿{ù€:P¤I¤ßò¬¦û£t•;CËŸ·.ÎtJqÌÀÀ´¤rÔ|põ%f—µ‹óå9ø>Û¥’lWœ¯¿Þ¦ºººCÝr¤äOâ9 l“¢Ì1þ¦¤xô¬‡ì(p
+²t‡Éí”ò”Á=«k Aq {¯q’
+¹y†*þW€} ¢ÍÌ·i yɤ,·eòG|í™Zyæì Ìæ/ö3át‡°äª;§"Ü›=°‘Oýt¼þÕäu’p@[*sˆÚ"ø£(2¹;bÄ”mo~ÚÈN­/·a£ª±Ýë$òm›@tÛíö&—–s§ñ°ÂÈѤ+ë’kÈpSÏ„ðh`ùã‚ãêf MÐ×Mvo…ÇÖämÍ‘°;õ;‰ºrd³’£²IΪçsÊÀ¿8ß êBâx¹”ýà §®7Ç…á@Á©®}¼²Z1_õµÄÔ¯˜³ð×~œzãž’»’—Û¾Bkòú²”‡*Y>;µ›¬=—æ®”·ëé‰S(–›{wcZt œ˜â¨jÎæLJû‹ºäk¨%L»„ªä¥©_]‘ß ÔL
+XCEP™ô࣠˳¦\ðæzÐí˽zýÏ
+UxvAŽhä®wÀ%}”Sq,] ÓôŸ8ñ²0²ó»èÐ?õnÎtÉG'S©F€Tþçz¶WÐítŸßì©}ª¬×䣿ÛÓ¤L²H©mï\ï¼^h´“óOJï¹C
+Ãfë³ÜMö\VGIœlÌ2+àÀ~¤ß{ãœà°ˆÔÔ{CIw¹àÿ胖\
endstream
endobj
-402 0 obj
+573 0 obj
<<
/Type /Page
-/Contents 403 0 R
-/Resources 401 0 R
+/Contents 574 0 R
+/Resources 572 0 R
/MediaBox [0 0 612 792]
-/Parent 400 0 R
-/Annots [ 394 0 R ]
+/Parent 560 0 R
+/Annots [ 568 0 R 569 0 R 571 0 R 570 0 R ]
>>
endobj
-394 0 obj
+568 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [387.746 605.928 410.217 617.883]
-/A << /S /GoTo /D (subsubsection.3.1.2) >>
+/Rect [451.225 352.434 457.687 364.371]
+/A << /S /GoTo /D (Hfootnote.5) >>
>>
endobj
-404 0 obj
+569 0 obj
<<
-/D [402 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [213.469 304.337 219.93 316.55]
+/A << /S /GoTo /D (Hfootnote.6) >>
>>
endobj
-94 0 obj
+571 0 obj
<<
-/D [402 0 R /XYZ 133.768 504.163 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [330.688 304.337 345.411 316.55]
+/A << /S /GoTo /D (section.3.3) >>
>>
endobj
-405 0 obj
+570 0 obj
<<
-/D [402 0 R /XYZ 133.768 374.24 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.278 116.845 226.505 128.303]
+/A << /S /GoTo /D (chapter.4) >>
>>
endobj
-406 0 obj
+575 0 obj
<<
-/D [402 0 R /XYZ 133.768 179.029 null]
+/D [573 0 R /XYZ 132.768 705.06 null]
>>
endobj
-401 0 obj
+98 0 obj
+<<
+/D [573 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+102 0 obj
+<<
+/D [573 0 R /XYZ 133.768 290.32 null]
+>>
+endobj
+576 0 obj
+<<
+/D [573 0 R /XYZ 149.011 149.075 null]
+>>
+endobj
+577 0 obj
<<
-/Font << /F29 215 0 R /F90 267 0 R /F88 216 0 R /F34 295 0 R /F40 296 0 R /F37 271 0 R /F82 294 0 R /F83 293 0 R /F81 214 0 R /F84 314 0 R /F89 255 0 R >>
+/D [573 0 R /XYZ 149.011 130.146 null]
+>>
+endobj
+572 0 obj
+<<
+/Font << /F92 356 0 R /F75 304 0 R /F33 305 0 R /F90 306 0 R /F100 405 0 R /F96 408 0 R /F95 410 0 R /F97 411 0 R /F107 459 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-409 0 obj
+583 0 obj
<<
-/Length 2688
+/Length 2651
/Filter /FlateDecode
>>
stream
-xÚ½Ymoã6þž_áok#±*’¢^¶(p(°{wz½Có¥ØÝÃ)²œ«W’7q‹þ÷{†C½ØaœìÝv¿X9‡3óÌŒýÅíÂ_üõÂâùýõÅ7oãx‘xI(ÃÅõv!bß‹£E¨#O*½¸Þ,Þ-ß ¼[­µÔf¸)¶ÛÝ»í{_û/âR\ñëÚ¼®Å‡ßßÒûÃÕÞÿøƒ?&V®øæ­
-fûJ¥¼@GÊlù“þŒ$ô|ˆj ˆ¯eÍhÖ"TžŽÄb-…Óÿ…)cI¤b榒p¡¼PX¢­%’3¢À Ãh¶¥ï`¤<!Ô@óÑGL?˜˜ø¾c£Ð“r܈uêØJ(OD_T\ù”¸|¿EC”0‰ë™ß:®5ò¢D<–舕‚Á>|»ÂF˃ƒ™Ðž
-ƒS ¸xs}ñëmâ/ÄBê÷+áA°¬ºx÷Á_l°öÃÂÇ•Ç‹{CY-pSÄ­\ü|ñ/v…#¹FV0%øÃ`Jk.\—#<ï%NŸ¿¢ðO¸¢K×%É
-¨°†$Úžý6¯ó§­oWkå±Í3oÛ¦õÀEûË_V±¢ƒ›…l ¨ó®çĪ®háó $)+~üMQgå~“óË e1ïŒÀþ±¤t–‚ø(E†×/7‡z‘+Ãï»´h¿eŠmÓò H«]™_™ sŠœ'°‰hF( ÎÀ¦$ŸQ— —dÕ?ÅZÑÔ4¿&ÊÿHÃÀ‹Uò&Ï©öŠð. •N µêÓS“@:<U=åòÿOð ž žê™ÓÓi$ƒ›>n_Ûè¡GK„¢@Ÿ7~‘:n/–8.p“gÁͲ H"ODâëæ)“'¹r•ºÕg`Pž…Að(ŒÄç ˜z☄`Á×וóH3&/9’|Âyb/‚êOõ9<…k¥,žÚøò7 jøÉ?Žå-àAÆ>#œ„󴴀嶳kô¬›ž;<
-?§^ ŠÈ¥‰à±Ψ^r†?¹x’âï#Uü†Å ½ 
-4ÑZ†^ÒI…:è*ô´>ÆóïÛ4Ë7‹Qyµ·û*þÔ¦@%$$_¡QŽìÖTP:ÀHÂâñàÕ¾ì‹"/LFØÃng¥°OÄ—´D0AO ³pIS}ÃOÔË!ÕËk[‡ÐP,O2€%aŠ”HÊ’FÂÍeyà“³Ðü]Zö<•5Õ®( àñÄÍ2ôÇŒärßí6àZ  ½ÕÀ3œ·ÈRKÛækWªÒA‡UßH¯H-*òyƒÇÚ×1ê5ßmíÊGÊ̤oó´§Ë'¾Ì•ûÞ{;W-­˜ªÛP`Þâsç‘FËädœMV´Ù¾BŽUg9ß
-G(¢&g#ÀÍš|»u= 80z+Õ[ BDj¢˜ŒÏzÒOŸ(»Ë۶ظlY+|2fV×P
-‹*sÙ?Ž¨ÒÓ}ôMk<ªŽ ê‹‡|ã¦8\0°ç¶àËé +‹³&6Á
-q{ß1YÚPŒ
+xÚ¥YYÜÆ~ׯ˜@IÄ2-öIÒyrì¬!Á@k<XDqzf˜pÈÉ‘¼ÿÞu4¯Y®v=±»Y¬®®®úê`¼9nâÍO/âGžÿ¸}ñúFëM&2§Üæö°QÚŠ4QgS‘ªls»ßüÝnSåŸ*¿Ýi­#-äwÛ1†_øó]•÷á]YŸ|[öy]øínߎ;½¾Iìl'E»ÍNÁS&¼Ëonð“×7ÆÌ(wN g6; ”Ö1¥`:;§ÓF#a/¢øó
+'í„tÙ@ñr‡é@ñ—*)Æ]þÊ‹“í¤±"ˉíx¶¶;™º‡ïa˜(‹Ã§pø†.68üyekØ9Y2} *7ÀŸؽ\'6µ¥y»iC¿Ç±Šc’çÝÕµ-¬cçÐ*àÞ4Ø@¢™Û›ze_©„ÊÜ ¨}y8?˜rÁÓ$"NÌ@ù78‹’QB{’IÔOÖ%SXÞÊ(i£ž_—Ýð"мkËssôuÙ7í+^kWDUYûð!¿K¢½?ä—ªGù6»Ä-¯lnnØ;£%mm´Šêüì÷+Èœ°N ç{qvi…ËFÁ ßôË Hl´þn»SpžwÏ‹x
+;?ÒÎd’¤ÇçO~᪾Üñ>@ÅF¯ïò¶/óŠ'ADuü‚ƒƒ®¬•ß1ÑœOÓîË:ó\‘í![§C¦qôéÒÏŽ‹ÏŽŸuC °yÑ_ÀPïyùÒ¡ãˆîž¨S=TeÞeaáö”_±gX€AÛP„ƒšÃBúz´ ,㩬ö<0ª[±çT
+«ô Ö`@Å"Sj‚À‡l¬06›qy¿ÆE 'Ç­ð¢VÜ+‰™‹óÓŒŠ¦m}€< nΖ¥&m»™¶ù!^îà;ö€ô]@šDCªqåj3·2ænÕ TA|d„ÁèO8!‚;v ÆíÉw>ÐLW…Óéª`:f+áÝɯÛ,E2,ãJ«&.–O@}&
+öþÍ™G!¸ƒï†MÚ¼'•ÂRwF–ŸØ†+Äé¢sÓ.œÌxt“ÚaFZ¿.P5A«¸þÿß­àÿ†±1y
+ €eò 
+å]uÏphƒ}½ÙœoG©VfJ*KÈÜ wŽ`Ý4„& E!i82ݱ?ÄÊòˆnß•uG)kø=”Å"ˆ>þÒ/¾{ÅËGˆ°¾½³u‰?(P€æoÚㆿüôÞJ¡EÄæWÈéÓ ŽºËñè;‚T5¤å
+l““¦-ÏÿzÌyqB>
+ÔE 7CgÀY¾ß—ˆ/dhÈkR%mÄ ó
+¼¼²õ˜
+âtLzðfˆßjÖ¦e,tœ=£B_Z8x•‰uŽ|ið  U”ü¤Ààùß¼h>•ygÁtž“]_dÈKóyû˜ùÈyvá¢{„>í#({ÎÆŠ»€ÓÆ??ÏnÑÍ—¯J3öY`¢#®Ðª A%Ì¥+RSÞ Ï)'ÜHcßÔ¾ªV‘Â
+=¹Ë×Z6†gÔ/XgÇûÕ%¥
+ëÏ“I,mŸ,˜­é'2äªw'‡#y¨ d<í¥ÀÔ!TŒƒp¸ îÛ¥ÏéIp]B+ò$(LFÇå鸾âaØ‹«ø›åž®c9ºUÙw¾:„ú‰:8ú˜\”‘ÚL¤”=¾ÚJ óLaA¥ dÓX›(é„Â
+\+°hÉ¢bÐF?ŽV•äç­S£¯&vªW—0"e<ßBi#’Ô}ýÀ»
+¤J^ÿtxÜa
endstream
endobj
-408 0 obj
+582 0 obj
<<
/Type /Page
-/Contents 409 0 R
-/Resources 407 0 R
+/Contents 583 0 R
+/Resources 581 0 R
/MediaBox [0 0 612 792]
-/Parent 400 0 R
+/Parent 560 0 R
+/Annots [ 578 0 R 579 0 R 580 0 R ]
>>
endobj
-410 0 obj
+578 0 obj
<<
-/D [408 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.594 385.612 152.317 396.405]
+/A << /S /GoTo /D (section.1.2) >>
>>
endobj
-411 0 obj
+579 0 obj
<<
-/D [408 0 R /XYZ 133.768 473.416 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [223.108 301.926 237.83 312.718]
+/A << /S /GoTo /D (table.caption.6) >>
>>
endobj
-412 0 obj
+580 0 obj
<<
-/D [408 0 R /XYZ 133.768 308.959 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.3 223.314 175.023 234.106]
+/A << /S /GoTo /D (table.caption.6) >>
>>
endobj
-98 0 obj
+584 0 obj
<<
-/D [408 0 R /XYZ 133.768 161.608 null]
+/D [582 0 R /XYZ 132.768 705.06 null]
>>
endobj
-407 0 obj
+585 0 obj
+<<
+/D [582 0 R /XYZ 133.768 673.176 null]
+>>
+endobj
+106 0 obj
+<<
+/D [582 0 R /XYZ 133.768 263.51 null]
+>>
+endobj
+587 0 obj
+<<
+/D [582 0 R /XYZ 133.768 172.73 null]
+>>
+endobj
+588 0 obj
+<<
+/D [582 0 R /XYZ 133.768 152.955 null]
+>>
+endobj
+589 0 obj
+<<
+/D [582 0 R /XYZ 133.768 133.181 null]
+>>
+endobj
+581 0 obj
<<
-/Font << /F88 216 0 R /F34 295 0 R /F40 296 0 R /F37 271 0 R /F83 293 0 R /F82 294 0 R /F84 314 0 R /F29 215 0 R /F90 267 0 R /F81 214 0 R /F68 301 0 R /F80 213 0 R >>
+/Font << /F33 305 0 R /F75 304 0 R /F44 426 0 R /F54 586 0 R /F100 405 0 R /F92 356 0 R /F110 501 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-419 0 obj
+596 0 obj
<<
-/Length 2418
+/Length 2651
/Filter /FlateDecode
>>
stream
-xÚ½Y[oÛF~÷¯à[)Àb8W’)è^š A±Ømv$ÀÒ%±‘H‡¤ì¸Aþû~gÎ"eÚî"‹}Òpxæ\æܾCÅÁ6ˆƒ×ñ#¿¹ºxñ*Mƒ,ʬ´ÁÕ&BG©Mk’H*\­ƒ·á;¡ôÛÅÒHã–ër³¹y+ßüLO›&_ñ;AW»¢Ë¿œˆß/Þ_½yñJé‘aM¤­„
-ŽýŸ˜DÇ#ÅiÖ¼‹ðl’Í2‹£X¨`)²Èfši¿cÂT‚E–¨”™©Ì*²Â$g¸i¨”ËÕG¢ºøþêâã…€*q  ‘™±U*’™ V‡‹·ïã`—o‚bÒàΑi#cS,÷ÁÏÿä«žxÉ8J`ÆXýÉu™(Õjtñ¬‰BK˜˜IÉtâ¡ò*ðmP>VO)vÂNuŸˆX „I’ôªÅrFý$RÂ#­ì¹;§<£41063êq/™ÈZ_‰>6_2‘ÌÆ!R 6ÞÄÕ?T‹¥JdØíÊ–W«¼-x•Wk^lê†u·+æSÒ°÷Æ®ÜÙRe*ÄI#Âuj¢²)ÕÃ)Д· cüïLÃÂ)~ Íã¾+—+ZíräXWxÍødSæ×{œƒ,Ø›¨(VK!\H9)ÄÌÄq¸.ßÅJMQ¯®„кºÄ;MwQ‘oòþý®hI:‰=^”U[4]±öÛÇ®>€Ë*ßïïyëz!“ðÞ;uRO2r«,GéXÕÅf3sG:‰âdˆóˆ-SI¢µ·ÌûüM±*Û‚„«Ì„wpAÁËfÐf»«û5¯¯KºoO½ÏW…áb"³á¡E÷G‹¥U"¼Ú‰ž»?Sñ™n·Ä€4Ž§ªŸòÃÍ,$èH†Ä¹ªîx£íšrÕ‘ô´—z»X‚V¸]8IÅ:Ì÷,ØîøpéÏnŠbïùA¨ÜË>œÜA^=­s³|h½[å՜⧋R*\[¸W¾æg*Bï¤J\áòÒl^üôúÇ{Õ÷ŸôìSt˜‡%…Î}'3Í!èÓ £­STÒÓ¾ü°`鉓œL®+\&1œÞô¾O\Z×ͺ_Rf‚)fÂ|é“kFß!o%©Öá¯;¨¾ÔÖ_µ¶É)íÀýÙÇd¤#¯™´ºi;Þt
-]rfM"ºlËj;ep¼äåÝé‹ÁWõrâ“þ÷,aã
-ûMÉêäñþÏ€
-™ea}íøýn¼AÀšÐ!dÌøT CÄ™~àÓQñú2ã’ Y~*Ýw»’½âUiYò&oÆiøÿ|¨jR玟v¹Ÿã$æU‰þ8nUÍ ûPäª|tjwÝÇJß²”Œlâ“ßø.÷×]^m¹3$àv“c¨l¿åÇÛ…•ÎCÕBI7Ò$ Úk!@bäï{îÕ"U.‚lÞ5eç²³,È-ø5ç–8Cy“Ç#¸ÇuLGÕbF!Š{°×¼Íé<ˆÃŸêí±h¿áÝט Šæžß<?›È¹Ùd.êà,ÌŸ!Mw9¹ëvÑD|¶æ·]͇¼Ÿ?h·øÔU[ŽO[ÿÎÝ6ø®ÝÒmáÕÃ/þHÇŸ@Š¤®¼dR¬è:ßFÀ™‘QÏà‘ ÕÍ¥§#Ë}ÇK_
-· Ý×7söåS÷`Aª¯h¼Ëgèf1ã<1LH7Ÿî|bá9êì œ#“ˆ?þ&Ar°¡B¸zè³=æ€&ÛªXSΉÌåœ'ì ®íÎ<§'¾é#|TÔ-?{ÔCû5JM~º+Ñ ÆæMf 8‰M¨µ6yjÖ*‰t*§ÃF&é«|’pŠh‚úàE³†]-èÆò,‰×FAEAFiÿ×ÆßkŒîq©Ñn@Æp$ú#¯]×9½ú7}=ä°Ï=«²ûæ’×â…HyåÚçéÌÇcÎÉ83ÇNaµ‘U”œ…¥<¿Êÿ
+xÚ­ZK“ÛÈ ¾ûWèfÊ5j³Ÿ$ãÊÁ®¬S›ÚC²™œìT-‡j¸æC&©™š Ñ¤HŠÒŒ'.Wú‰ÐÀ épu¿
+Wú_¾Z…̘(1 ¶ôª¹_ýþòußaeÿøŠ ÅâP¬4,ŽãUV¾Á i83J­¸RLªhÕØÕîÍ¿^L¿çûÓí›÷Ÿ¥\%,1¬nw+.%‹L¼2Š3ÂÐvõ%øOk›v½1JõMð°q
+ñล‘ öiuo·4pÍ$a2ýáå±èòMg›rÓÚïQÄ"5Hµ«›%³0L)9X…­êò*IГÐ3ñU,Qùp1ONDÜ­7(Ý}^UyuOjÆ€õWozãB‹Ñ1‹ñ¿-Ÿ·ßn˜Á/øpú»%Óebæ-PEêÔû É‹ ¥SvuQÔ8üˆü¹¡=vŸ{ë¹p\ÄàõÃ!ï¶Àí˜ûe…EñÀr“‚Y7D¿ƒ _ ¿ g2’Sóy·yþœ…‹‰Zò0_ô+Œ?ÿ°Öè¸y»wf#¨ôÃ-(6žôç½_àl5¥?{Ęƒ<UâYHÀß>9”
+[>xŒõ:u¡d#¥ èWmT@t[úk§Y,Ò› 6†Ü
+÷Ô•…- øá$Y¹‰+‡n¤.©’"mDz¢‰Üÿvé]aý¹˜Y»Ã°'¬¾¸mÞÜ‚áÀ/ƒv¼.ýe{õ@˜q!Š½Ÿà5Z¸-TLu'f¶v—BFåAU;-ÅÇâhUŽ›ñž<w7Ül©9æÞà÷qŸ\Qà¨$ýHKM¼+üuqßÜåC´æÉéÌ“ÜÐÉ=œñ09éÌ®›5
+6ÂB}Zøášâ
+…‰Œð0ìÅi¯‹AØR²¶HÛý¹$
+ãtüäþ¼ÆoÌT<°Û§!×Ï -Ý×àF.&¨‚2ÂZ…Tu’ÐZ øR™àv j‡㊋‹aW.„Ù?g`cV7â ^ÎF1 ã[‰to3}° ¾‡›å˜+< »Ó~:u0ÍÆ~?æïV)«ååB½#!éÖ§‡‚lç!Sf\“à9¡j¾#vi0¯²âè|eûÁËIîŽ%þõÚž˜M¸5ÛšfZš©êŽÆÛ#\¤É,ÖB‘v‚|¤™?Áã[¸ß˜ö“)>àêäíÍ°¥Žˆò÷<†³eì _@Á•R÷û1ݺT‚Ÿ >Ò¥Ã8M—±TúK÷‚1ª n–4+Yȇ"ÙGò’h“hÌç‰pú¿
+3UÍÇ5çÜûk^¸L²;5~.åzÊåÎyCc>cli"müFŸlÊ,ð1缧i4ô|Gí'<£>ú#¿o›·-Àuë’†íå„”ŒQÞg$ÑÈBê-ˆ74ù ‘õ…ÂÉ¿åäýñí€ÒgV*
endstream
endobj
-418 0 obj
+595 0 obj
<<
/Type /Page
-/Contents 419 0 R
-/Resources 417 0 R
+/Contents 596 0 R
+/Resources 594 0 R
/MediaBox [0 0 612 792]
-/Parent 400 0 R
-/Annots [ 413 0 R 414 0 R 415 0 R 416 0 R ]
+/Parent 560 0 R
+/Annots [ 591 0 R 592 0 R 593 0 R ]
>>
endobj
-413 0 obj
+591 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [206.059 548.739 213.033 560.694]
-/A << /S /GoTo /D (section.5) >>
+/Rect [265.905 496.28 280.627 507.073]
+/A << /S /GoTo /D (table.caption.6) >>
>>
endobj
-414 0 obj
+592 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [467.627 238.439 474.601 250.395]
-/A << /S /GoTo /D (section.2) >>
+/Rect [172.873 330.21 187.595 341.003]
+/A << /S /GoTo /D (table.caption.6) >>
>>
endobj
-415 0 obj
+593 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [160.574 145.168 167.548 157.105]
-/A << /S /GoTo /D (table.1) >>
+/Rect [409.132 269.881 423.854 281.836]
+/A << /S /GoTo /D (section.3.4) >>
>>
endobj
-416 0 obj
+597 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [472.014 145.168 478.476 157.105]
-/A << /S /GoTo /D (Hfootnote.5) >>
+/D [595 0 R /XYZ 132.768 705.06 null]
>>
endobj
-420 0 obj
+594 0 obj
<<
-/D [418 0 R /XYZ 132.768 705.06 null]
+/Font << /F33 305 0 R /F75 304 0 R /F100 405 0 R /F74 303 0 R /F101 434 0 R >>
+/ProcSet [ /PDF /Text ]
>>
endobj
-102 0 obj
+600 0 obj
<<
-/D [418 0 R /XYZ 133.768 444.855 null]
+/Length 945
+/Filter /FlateDecode
>>
+stream
+xÚŘKsÚ:Ç÷|
+-íε¢÷£ËN›ÎítÓ\vIB+µ!™L§ßýÊÏàV¶1vƒ…ÖOçüÏ‘d–
+4Ô‚0]
+–eRBì‹‹Aïÿ½.;IzÐÛ×3Z÷‰âE¸7»,ïØ ùa:ù>Á¶ˆ
+>æ£Òð5Š6W) ©¨VITë‹—…ùÏt¡ì
+endstream
endobj
-106 0 obj
+599 0 obj
<<
-/D [418 0 R /XYZ 133.768 279.743 null]
+/Type /Page
+/Contents 600 0 R
+/Resources 598 0 R
+/MediaBox [0 0 612 792]
+/Parent 560 0 R
>>
endobj
-110 0 obj
+601 0 obj
<<
-/D [418 0 R /XYZ 133.768 178.501 null]
+/D [599 0 R /XYZ 132.768 705.06 null]
>>
endobj
-421 0 obj
+590 0 obj
<<
-/D [418 0 R /XYZ 149.011 128.717 null]
+/D [599 0 R /XYZ 133.768 599.024 null]
>>
endobj
-417 0 obj
+598 0 obj
<<
-/Font << /F88 216 0 R /F34 295 0 R /F40 296 0 R /F37 271 0 R /F82 294 0 R /F29 215 0 R /F90 267 0 R /F80 213 0 R /F89 255 0 R /F92 279 0 R /F91 281 0 R >>
+/Font << /F33 305 0 R /F115 602 0 R /F73 298 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-426 0 obj
+606 0 obj
<<
-/Length 1943
+/Length 2937
/Filter /FlateDecode
>>
stream
-xÚ½YKãD¾Ï¯ð gµî釻m³â
-–EðK¸\¤*Ìïêr)¥Bñéâ×å7·_™8H@¨2¦\-ÅÛrê¡‚X…ï¸æmWTMÞ=àŽ ‹²«þ\è$ÌxÊ,,{âé’3Á'¦ÀFà© þ—Ë›?n,y ‘¥Ìdk–&i°ÚÝüò+
-øøMÀY’%Á½=º ¤
-€±:ôy£3[Mó2& °JáóT‰bh€é6-~üú(ÁáÌÿ
-61C “^×Ä‚þ³I¢¨/.ÁWÕú‹Œ=šÓ£ßç«’–Îcôâê0jª8ï7~¯L ÝäÔúÆ9ØŸš8‹ð.3$¥¥çMø²qAм{¥†äP~-Ê©xÙr
-REØÒ¯g}É™>ûÑΞã“qunÐãð"…ï.¼€ciêvÿÌðÕ’)?=åÅétŸ; -=Žu³Ð„dZz?>8HoÿHÈ®òC>Ã
-
+xÚÅZێܸ}Ÿ¯Ð[f€G¼ˆ¤`,°ð&^dŸ’¬ßìÅFn©§«[Ií±7È¿§ŠE]›ÓÓk/Q»HOºÐIô%Ñ7ÉêùúíÍ㢌eZèèí6âÖ²”ËH§† ™Fo‹èÝíûD¤w¿¼ýiüü(ÿ(a†Ã78?õ ~x#ålŒPL‹l´mÚ}wK#nû]I®Î»5·m¾é«æ@oOU¿#‰ËYeÂR-‘ï¹Tu¹íÙ]œŠÔ½î«¢¨Ë‡©£­w0à|u\$LdvuC¢X˜”)›E1ç,K½2ºM^çêr­¹cÒHÌ%Ë”ý
+%~¨C«L™Îøb‘+!†i-‡¯¿Aˆ˜­$$E¤,MÆAù¡ÈjÉg«yYââ.V:!X¨4`},ðÃXdY:‡ìá!4µf<—4F
+à›&]YÒ·÷B·4lµ5þñã ,E2ø·Xyôn9_N³­Åç=Š ³
+zó®«{?–‡pƒÌäü “Ôk<\>0ÓÔ¨Ðtåñ…#HF£ë *‹íʶwjF¿z â!@ÚP¶ôÚUE9w¼Òme‘§
+–5Î2‡Æz9 º‰¹_½¤#™¹mûá eªûÓeŸc ³Z{]é­0¢Ð
+Ùù%•iËø”à횶ú­¡cÍkL­ì G•šÛ¼(P‰ØûRÀ1@¨¤Ÿ£™s·tð?©¶4`Rë"Amq­§W”궬Ð#Ì £q¶ù#ž!d.ÍÑ×  ]uôìÊžCQbå‰-›rasñjfÈ®AâÊ HØ‘Óc«‚ã®â‘ áSPOn¹[¿Ê ž`Û (µªC<§-Hõ’ÉîZ&µ$tæ´„}NKØñŒ–ä<bŽCzשô öü4¤¥»Ë{ši™¯à·@¾Bòy’,L0cväô¼Ž‰ªdb˜NVÈxÊ¿táãiïòÉgáIQïœ> åñÍGД«ñ~FNÎǶ9¶UÞûß8’ÅF~ çéØ"ñ<îÐÀæ‡:ÆÀ¶¸¬Å¼R´W
+ytUÐçi¬¶Œ¾H‰829Ö§ŽZ|èÚW‡¡O¼À5BC%–TÓãîËþN
+…Ë45*\  ÑÕ!o¿à_+ÈgPðáÑùY…ø¡Ía˜3”Q(ç¨(‚)¥šH ˜R4PAü¼N´Ïû]»ÿOñß·&'³ºE:c—ÿÝÅü¡ƒ‘þTo<l²‰]d÷ǼuR>‹3«ä3>˽„ð–Þ”šÏ°ØëóîË@àhW®þSqNó9\pÆSsô 첎f\ç¶möŸ¸#‡0¨×yÉT«,hÎA«ò=¾¨ +* Ø›G¹@ˆ Šf©]qº+…LqßXÕÑc§þ§]Ui„œéåö>„w#ÇM9¿)ÇZµ*4œnO{2]‡ 'öÈü¾ ʸv‰—J³y¹Šg^4òÍ µF)ž ÞØd–(‚ËÏ2 ™"æKTµ dõRq—Ÿü€,‚pÍréÀí®1¤Ëýi‡Uy{óo:sp Ú…ªRBÒ(E´Ùß¼û%‰
+øøS”0™ÙèÉ Ýcõ\%è\ëè盿û ”y~+Ð.´‰$¤hi¢Ÿ/Å(6±btÐå‚¥~>WLQÚù;jÿnºö8äê<”Ö&…z±Ä,„=›Ã™ç|ž qZ…‘XÈcs,±˜µ¿slã‹c¢–~:Åà×Ù«—¨× ýÅ<N^ÖœOÙÆœïT<–—ˆÉr&¦riù¹os ‡ìY }C ‘6öúȲǡOÎØ‘ið‹³løý‹ap㺈ÅùH2ŠÁK•®bÇÓà~» Xa[]¦$ p;õÍ-=Ï¢Ö!€¤”Ÿ;ˆmÆŸM±ƆÖø † Ó X.Y®±%U-†
+˜°œȶ €xŒÐëê§^T¹ Õ —Žr_Cµ§!œ/šó â.O§eöÒt@:[Lw,ˆisVL]Îeįؚ½vk“o|®äj¾B•€’’Δ l1¬•ªízê=5t:”Á³¤\f7yšÄÝ9ÍP³É;ÌI!•Úå6RHC¨Ã›¢šâ{ì¥TÕEÿ¾§+7Íйà ÌËÁ`Ÿè·œ¨PBk˜™*O|žÏ_,¾Â’&„ÀÕaª?@J'ôœè‡äG0›­’Ÿ—iQ"¥‹-NÔK—2¾`™‹K[(š‚ÿ,þte„È!%‘SåùÊê¤CJ©%Se£·®#a“Î=ÛìäϪVOhHÇjôújG9ÉDÂn  p Ò>¼u=Õa%MÙ¢?, ³øÊíÍcÃÄR
+ž9=‚1_â9¾fh|>¹HT<—=’9¦I.ø¿V‡ìî
+e^dø¦‘>`R¼Ù†êh‚;.H.9ÖõQÕŒ…)ðÕ ŠbéDÐü:ôÃÜmß,7qæDõœ²Ý¿T\3@¨ Å5‚[ux¤—©L‰oæœã7s©JmÚÝÎü1žrÞ‘¼{„9XÂEÀ‹-?çûc]âPHIv¢–ÉŠJ¨*Šrzì«Ï›‚Þ†„Òÿô«Ø|B†bKS3¡ò¶kêªX Îý¦>u½ÃOVמ gaf³ÕÍ>R¼/‚„ev_´fBÉR9/[InÉ'ºI}¶’\(àËÒÉSŠK„¯æ·TkBÙó;¶e^P;6Ý÷xJXG¿çëÛ6Üò3eëC&kG`þ¼•)°²4=WÀºø´ü0+A]g˜z¸¡šæ`Žq^ü  r1(—‹ÿ®äÆï§*AJ…¼Swòe£”.H ¿-‹“KÆ}õ m± ^dÌNÔ&5W`´0®ê ë TÌ4ã|åן‰ÂQw•{º%ã+qòà˜°§qÞa³9µ^éh–î^‚guפëüÚï†ïHºZ@$¶ÎHt ÿýò‚‰+X­ÆøR0©}æ/²Å H»ÿŠ òœ
endstream
endobj
-425 0 obj
+605 0 obj
<<
/Type /Page
-/Contents 426 0 R
-/Resources 424 0 R
+/Contents 606 0 R
+/Resources 604 0 R
/MediaBox [0 0 612 792]
-/Parent 400 0 R
-/Annots [ 423 0 R ]
+/Parent 608 0 R
+/Annots [ 603 0 R ]
>>
endobj
-423 0 obj
+603 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [177.402 208.913 199.873 220.868]
-/A << /S /GoTo /D (subsubsection.5.5.1) >>
+/Rect [393.959 506.301 416.43 518.257]
+/A << /S /GoTo /D (subsection.3.3.3) >>
>>
endobj
-427 0 obj
-<<
-/D [425 0 R /XYZ 132.768 705.06 null]
->>
-endobj
-422 0 obj
+607 0 obj
<<
-/D [425 0 R /XYZ 263.422 661.719 null]
+/D [605 0 R /XYZ 132.768 705.06 null]
>>
endobj
-424 0 obj
+604 0 obj
<<
-/Font << /F29 215 0 R /F64 207 0 R /F66 209 0 R /F90 267 0 R /F88 216 0 R /F89 255 0 R /F81 214 0 R >>
+/Font << /F74 303 0 R /F75 304 0 R /F33 305 0 R /F101 434 0 R /F38 309 0 R /F78 308 0 R /F41 310 0 R /F76 307 0 R /F100 405 0 R /F80 456 0 R /F79 553 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-430 0 obj
+611 0 obj
<<
-/Length 2595
+/Length 2500
/Filter /FlateDecode
>>
stream
-xÚåZKܸ¾Ï¯Pnš…›ß$Œ‚
-¸¦{¬‰|[aö}ÙQÓñ ‰”Xì
-T1j‘Ò„¨å]´héùˆ~¥òúĸ‚xÁ»ø—5'È´ :àÚ€Uü‰¯ûøì¨ýxêH2†NøjŠ(8ô\+ŸoÁ]¶O‡*–ú¶Â- ˜€Žoöm}üô*©ïPYŧ̸Á•KÀfÀè¹¹tTâ©éPS›xÂÜÓî†ã*Þo~ÅÖ2˽>Exéa™MÙí© ý5¢sÖkç„
-5?:FˆqW‚/– ‰ ñß… Ä—Bªaße…f£ÕœžHA.ݽMŒP gä«F!¼Ó6­ÓŒë\ƒƒTä –Œn{ÎY¢"Kdd‰X¢rÔ“ÃjÃÛ‰16À½^GØ¥V3-í¥?ý(;-Œ05!L‚ŒêÞâ2ñey>‡8¯:î·ŽPø$!Š ¡ÆÅ0ñÏŽPý'AhdâO?&¤ÓO?R•<»r* )¶‘b#
-)¶DT˜(¤6ÒgýÌ‚€Ð® 0ÆHi›†­–‹¬-æ,È
-p
-ƒçz¨¿pHeʽ‰l½tG/NÇán¾YFÍØ3ûúøLõúØUmO'Ÿm ú‹õ¯§üR`~
-å+|68%QP$R2 aCê#^±Ñ›ÌË’ªiÑÐ2.G˜/ƒüiú’<ü ½ ¡E0;Õ»ÔÝ©I-[ˆ{¼ €ˆ¦þDÚ°–¶[V¸I¶¹i|Á‡ 6±éÛ$ÈÅô–IxM9m˜ùXЉy\
-cÊ,@b°“ÿû]LŠ3#6åî_ ‚oÄ^ºXcžä(Ñ«ˆ‡?ñK…0ä!bÚ°ÛšU ‚-HZÛjwÙb`>Â.¿ Öúu;þ aÆ(u)×^טÁë?ñ,{Tƒ”­ Òµ‰eB…WãW,§ØI™ø[fS…e^.®”hkÛº|lbTx
-ìÜn/-n´VÁýɾFƒ6
-¼üŸXQ'¥W”0áÒzò³^ŠrÃzètâ6jÏxÁç2ÄÚQì¡]5x$`Cq¶vk±GhÁFun«ØD^%Ï»°©:%¹IG'Clj»¼»lÖ¤yü=$ã9HOÂWLµŽ§az$ßàjVBY°ÂûÒ†£4¯Ý¢@¡ÍÄjøµn>¬cF™ù¨_×~r„žÜô€qAè΀OòèWáÀŘ)¯¨Üb(ˆÙ &Ü" jO
-m⧷ãì[·™+f´¼aÁwúê§ÎygžI+æ}­ÑƒãÝ«šþ¬yË*d_F _mns,B*æ‚(O<KS=õ ‘M}xÍ©hÁ,
-´X¦¤
-5ûâ—‡»ÿ
+xÚÅY[oë¸~ϯÐ[m âò*Š8(PØ-Z(º›·=û XJ¬­l¹’œl¶èï ‡’EEIœn¾˜äpxÑÌ77š' OþtÃCûÇ»›o¾Ó"qÌe2Kîar–Y“dÆ2©LrW&?nþ°MM¶ùeûÓÝ_¾ùÎfIÆœU¹g̹D±LdÄ*‰)ÚÓ0.U’θh×mêDèÿJ딚­“– £à¢~MÝoS•ç›a_Q§¬Ží¡>CÛ¡} ¶ æPÿR•Ô=ÝP͸®«Ÿ¶pf1@+óMد>ŽtU ›Ù]âí’Tk&²,Iñ«MMqßTýí6Õ’oî·)n·+Î[±éaÍ•¿¶þÞšËM>_×ïºú4,§OÅ®>>w´›jØÂﳿku\‘°Ô‚I¸¿B_FÙ…E‚Ï™ÎE¤°âX®ËÏT|êËÊ~àì\‘øm]Ä*]Æ´Ö±\ËóÎkOh|}Ø×êÙ¾Z2ë̸ïPu‡´¯NiQþ|ï,3ÿC×ð
+€öCqn† Ö\‚)/àúû F]Ÿ].Ÿ
+8RšÍጜ“§XH>U0eao É°wÓÓ§m¦ÁdÒç®8-vˆîoAÕµ håÀr%ü´uHÞ×çÚ«á…Èh¬ØîëÇ}ÕQ¿íʱ[¢B½™›‹™÷aé@í¡˜íWŒçí°wX=L »wLi™Í® .§ïù‹‚ôëthÿá<Ò9›®ö®‚Hè°Å{Ö_¹RUÜ°ÜÔP·aaZp_av_õUÊ=†Ìíf‡WÝ·õ®B·ã¯ÌNª«º‚Ï”ÁcE–OïiN‚êùdõGƒRÊËá†sKÊ=²€Ú|®uǬÌǵåj°0jÂÅš 3,sÚ{0y0›Ï˜àƒ2&y<ΊýXp‰dÆ)â ²bŒ6Ñc|}›œ !à6N†}„Ý·w7ÿ¼°'0ËáœÌ&&ãL$»ÃÍ?ñ¤„)ÐS.Ož=ã¶x“üpów
+ÎÑaÓF‘ ~åÜK
+ò¶ˆ}X–”_¹áOð#®‡ ™ "ƒâ7tÆàŠfA”öؼlsµyCB‚_3bÞfEwŽiî–@Ê_)L;ãd~š©ÚdÆ4~÷R7,·k°|ºXÍgaÝÊ°\O²½ º IKMù64’Z‰Ä`jcÜo縕Ê!s\€sé@¨h5Ze
+Õ|$Ô€éט–Â2 çÏ12,ÿkLSžÐBA8>¥ý Å-šhˆŽ::Š€Ý&ól®êrìâƒõìJ¬›k°¾
+õ…1Ï¡þ†)Óyxá®!Gã" ð¿ é—­àòîÿŠô/ZÇ Žö¬G·-‚§ Ù¡ÇÛZ"‹Ì%?~ÓÍÇ™ 3Lef‘ >¡m¤-«¦>¼›‚|ì”4Õæfò7\X>ƒáós)Åù”f½ byOësvÌm‹(>"nlÆ”§(eôIž‘L[±(B^•Š˜{»)šó ÅæéÔÔ˜Ö)í|Rè[ã`–¾I³/‰sï«M™,¶Mü\ìÚûº8úƒ²™Î€eMg‹Lï«Pú@§b?Ô›Ú“ÚW.¤½,ÒÞ÷kÏAá0ÅØäê“T(0I…¾7©G5M;bý!¥>F¬A¤4L„d,‚Ph£×õg °#ý!ˤ? HŸQÑ7ùý.ßCR"öü ]†%®$ãŸ4C¯Q¼ÇE¥ïdÁ “«ÙŸOéq«äæ\>VïiÖ)fó)ÐíÛ®þµ¥
+Ä¿¢à—ú"ûê¢yøâC=uØÙSRéù£íkªt ÜKÐ+6ËÁ!.j×ÕKçbÌ$±–
+¨¢f€ÖÃêx`(ÃdX‰ö‘× 5Í¡˜Šk-_PyN»ýÒ!PFœå˹¹¢ƒ•ë•ªÝ?fA{l‡
+»#:•ÇÁcs4;Ôí8h©îˆeòàxi î¶x
+ÁYfAOèË)å«Gª€ÌŒµxõdãK*NoQÒÍð…£‚&—øÂ)o_0·ÄÒPÏÈ•çÞ â,
+çcP­hßCLI‰›ð…cÄìxDÃBˆá[]˜ò(áÌsG(’žp³^æ#´`¼-i³¹?El}&ž*.Xžå± ¬š{<pÓb4}îZ¼ 4ãX~yò\ÆO£„×£QrzÆ>ø˜¡êO@(vôöŸÑÅEÎ!JLÉõÒi/}µfÖLÌ·+û啨x·ñ¡9‡ŒÃÆÚÿþ­ƒü_bþ~ؓЂú®i)±Òæ ŽzªÇÙÿ7È:bÙ{,w¾®žwUt
endstream
endobj
-429 0 obj
+610 0 obj
<<
/Type /Page
-/Contents 430 0 R
-/Resources 428 0 R
+/Contents 611 0 R
+/Resources 609 0 R
/MediaBox [0 0 612 792]
-/Parent 400 0 R
+/Parent 608 0 R
>>
endobj
-431 0 obj
+612 0 obj
<<
-/D [429 0 R /XYZ 132.768 705.06 null]
+/D [610 0 R /XYZ 132.768 705.06 null]
>>
endobj
-428 0 obj
+609 0 obj
<<
-/Font << /F29 215 0 R /F81 214 0 R /F84 314 0 R /F83 293 0 R /F70 432 0 R /F88 216 0 R /F37 271 0 R /F82 294 0 R >>
+/Font << /F41 310 0 R /F76 307 0 R /F33 305 0 R /F74 303 0 R /F75 304 0 R /F110 501 0 R /F38 309 0 R /F78 308 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-436 0 obj
+617 0 obj
<<
-/Length 2817
+/Length 2641
/Filter /FlateDecode
>>
stream
-xÚÅZK㸾÷¯ð-ò¢ÅŸ¢0X`  · sÛ݃ÆRw++KŽ%÷ìùñ©bQʲÛ==›\,Š¤ø¨úêcËÉæi“lþz—,žþt÷ðÑòMÆ2#ÌæÓã†KÉRc7F§LH½ùTl~ŽŽÕÓóVŠ¨‹²®öÛ_?ýmâá£Èfß›„)áÅ}Ø?—ÛX
-A#õôº/÷øöyÃoy¤Êö‘ž9=ÜTU?´òÊ—¾óáÚò¨y¢Šq–¢<V/[­£¼‡'íGl
-\ó&–ši­61ç,Ó~sÝés·;V‡¾,¶±â2ê[|ª¨jŠj—÷%ÕæTy€%§Q[5[xôÔ„ Ƕæ6Q^Ÿ`ú¶¡ºöH}hYÇ*ÿ\—U=—uAv°™¶éúœFýà›„Ë,ÊÇüT£ü¤Œ~Ä 9;“¼R°7=Hþ.
->ÐBGÿYè,Ðyl2Pš€ù2f¹¡âº|¼Eá‚ “Ó>â~…R¤,tuÞÁöžé Ú÷TB¡áÓëÌL:»‡#¦pT:ƒPr(Æaƒ¯6¤û”IÊ”ä`$ý’±°XRùz„‘+8ÈÀ¦Ô¸¯[|j‡h"à`ENíKà`C¼<ΊöQ¬¨øŒ°Š`„¥Ý€!‹rU3Ô¨UÔpПár„M¢“«Pá6eú *o ˆ4aI’…xÉmCñòLE–Ìë8ë`‘ Ÿ>Ÿ ¾ž#&ãh9 >!ÆáDiÆŠß“×sÈð2P}\·S9Âë9rœä¹Úaë3½V=‰©
-”á`‚#SÉNèòQ”å
-t»¥` gqWqßþ¶%w]1Ê<F+ª_)ËP*ïmb·O°Íè¦Dºé¤Ú_w5ªá,cÒƒš—ÁÅ\hG$,ã}ŇÅÙK^x[íÇ·Ð5Æ
-£Ê²Œ#^™PÂ/àå>¸fJÇnÓÒDCœqïýs8Ahõ2 I)£]üîE!6†e©´nø„h$y^^Âw’³N RÃDb½½®È)ei¶Lgr HÏ—6*’‘#‹•Õ¤Li «É„— ¹ýùt÷¯;ÔB²ápÆ72±LÁl»ýÝÏ¿&›š@õLfvóÅuÜðܑR½ùÇÝßý]Ö|²a X¶1C ‘¸ýÃB$GÅÌ¥ì=5` XSÔë~eÓ†%S ópŠ‰VõÀ™†ïþŠøie9dÇ"äEEH±>tÿª˜†úÎʸl‰"I€¹ÑMÐÌJ¾Æ—LRÀ,Éx|åÍx!¤8ªi›úëÖÊ躽r!˜Ñ|a!RÍNÆ­^^Ç,†‘̦cŸßW`¤!XƃÚT
-s³¸0Ÿb“šò±Ý¸\÷$'W«õlºÆìTI9Jð¬ArË;Ê‚¤éy°ïr!Ѐù,|B„ë¸§Š¢Úõ0ÞXa˜«§kx™F>»ô˜lé@â>áUë2Ÿ ¯¼ûžwÿÃÔåa'œ¥oóÒ‰_~ćh&"i–ù°k#~\5”4{Ë9òû‡mÌ ^­lRÂÔùŠ„+ò£«Q5íÍé@ ì)ÌÒ,.ßæ¦``±Aú4\—Ž¹b¸ŠÎ½™áÂîÃ5æ‚á”*}Ýrõ$K–‹÷
-K
+xÚ­YK㸾ϯð-ò`Ì_…ÁA$ éÛÎÔ¶l+#KŽ$Ïloÿž*%Q2mwor’ø*YU_=¯«xõ§wñâû»§w?§j•±,Éêi¿âR²41«D§LH½zÚ­~ŒÞü¶NT”×»MWœ×?=ýe$òñ³”…T2“ ±K¿‹z½‘<‰úc?iDÄt‚Ĩ§ìhJ~>¯7ÂDE½+v OÄÑqÍ£¦-iêµH£>¯hjwηŽ^¾ƒ)°€ZÏDaß´Ð[ £«2,3zµáœeډ؉e´+¿ÄR-ð û’¸‚/±Ž¯y…6wKŠ‘Oؤ¬Ø­¢¦¦á‘tWô½•Q³§Y8
+\Á½kïÖDÂ×j¸6{¼͛ݮTLÅã4˜…LÝÐ9E¦™Öf~Ðü€ÜH`àÜ—Mý‰»bŸ_ª*úÁ1ä+B–°XdÃF!Xp–$LÇbZ@ôçŠ2ÛaÃMÊ”Dv¡S ºÖœaƒ~SûþžšÁ}Å:¶ËAJEö6ŽM‰ªm¸óë«VÀh6^aß^ŠÀi„dRËa(Ó5¸dÐÄaÊ>¯º !ôw+ë]¹ÍI)A0Ї–Vo,Ûp/'< isSQ?Ú ~ñnœÈ¹Ò,ËÒ…È«òP“AäÝ~릧ŸÁ$3ØÐÚˆýÍ
+²OãÛ'.Ü¡. ŠWµyU½±²Ÿ/Ü:ãjq ò;†Çðù\•Eçô´¶dà¯oH?/ç¶<-…;ͷ¨Ç4Ìü4,Û»EÖú`ê,°EæÛƒú"ç÷ÔfÆ0›+éÞTfÉ%\/”¹À*·›z-EtÙŠ» (¥GEÙl’ÇLšqÊÒRätÆLÂGz]Hƒc¦ d 1œg´kDåŒG§ü+êˆYš*À×Ä—þóÝ?/]r’wãnÉZM»€”<uNÀ{ÌÔùT´yß´vë4êP)Œ¹¥êì»®í¦£´¯Ž,/G†HÉalWÔÍ &òhÔdHô[Z»ðuwæHtuùÉþñ¨«rçL,øÃض©.'‹½:C¥ <¯á$„ý†¥“ Â4“é¨ _¸Tç¼C®ÔথçZ £`‰mæ–÷î,ä©«‹;äÉ" ƒ“W–±t)/炃gdz<¢\o´ÐÑéòPéœÑ:ºÛüÒ7m~tžçJÝ›€oç”÷ÇöôïÝBöwK_ïç¸!ƒ¸¡c–¨qØ?âMè ÄZiâ # £®‹vó½ÍïF[ J1›G[*Öt#ø³CÅ"Âu ˜h¿ËÐK N‡|§Ší S\1©Ì#,Qó¨pÆÓG^BÁpÐ3ÅßÚ;ç*SϹbÃAŽºŽ÷*êoÜ Ø’¿µ„Úñzvn¤¦/˜—£s,º¢ûà0¥ Å+ÅÌU=ˆ1'ÍQÜú˜IG¥ú-(Uý€ý¢š;!¿ [¯I*ŸFq}PIÁ°ßÂÖÏ`¥<I£—
+ú±)-³7F,|¸!A|¡Å$™‹ÔAû뮨ÊÓݤR1#Å£àh
+æà¹ÄLÅÄ”:ÜŠŒt–¾&2âžÆªØ¥¹
+<¥ Ë(X*¼˜ÄâQ&ÈueVñco ìiD›—­ó°:a ÊÛæb£–ÉóÉ0¬Ik©ƒµOW^ò¦x9À"SK¸íÄ0þù2þµrøûcùBN&å]ùf,1¯°dJ‰»†°Åˆ·ÊWòÁ€™Œ) öÇ!Ç súÀ5`½`3ôørÖLéäÿ%iêúôʨ…gœ%\/úŽ°A^B,Œ¹¹ô¯3f8ib³ÊÞbÎâ±9‹·›³‹£Ð"ïš3Ÿ›s|ßœàa1 ™ ¤æ¶I5ɃRÇ ‹°»r¢Å—˜â:¼¬·åÓf“nÅõù¥q‘x1WIñ"5O96^¨ñLúIîòÜmÛòÜÛ
+(P²Ÿ %’‚zsê¤C4å˜LJg\0¥ ?_]ò¡.`\h¹äœÜ¸Ì犊 eÕŽþ¶MÝõ.o³v“:–`‰sËÈ›Cئ։ֽP+BïÁyUËá XÐïUÊÂüBîÕ9 wéÎû€ÅØ:WgšûÕk“áóœþUà&ž¢Ó%š_ç"FüfeÏå¡¢ÄéÇy“`ZgAz…ËI÷ŽvÃåL8õØåõÈå$êí.g¬'›™ËæÜ1Ö£~ª4“íÄf†EqºÀ¢Xf7\Žpx€áfÐåÀ„eÎ$¸«§ØÕù#B r:ÏEm!1ñÐ&Oh @‹MÈB&Q‚ìU… B°•Ó‡¸™ ûð¦ð[ –æ ÄŽµô]€vhàŽ ÐP©F&Œ.!2B2BT‚È9.•©i‰ƒÌ³1X: h7!Í*aܤ ݾ3^jvMßd@—uè÷
+•ñºæ‘diì±p½TÁ„—øYÃMl²‹»äÔ^Øg­¾WÖ­²!@ØpF³¥Þú&làoiñø
+0ÃÂ÷P*©Š¡tw,2¸ðâ†Ó;›à<öÜ°$ýþü9Tõ¦mà+6ŸHb#rvÔÊ»nx„–-XjH_Qª>#ó+ÓœMÐ
+\˜
+s› ƒïüš‰Ôð6
+S¬ê‚ Ôìú¶Üöø~‰­KmF·E×YÕÁ¾ç *° Ás8"Žµ€ƒÅîaÑ;!ðøp©2Ê(Š…
+;pãÂ;ìïBåFD§’RÅL þ¤Xç¶ý۶ȭä±AZø¡l~ºü«El!T #mýמ–]?ú%ì«ó½ãbfqYú¾ $õ`º*æÎdçu‹?>½û/£ªÞœ
endstream
endobj
-435 0 obj
+616 0 obj
<<
/Type /Page
-/Contents 436 0 R
-/Resources 434 0 R
+/Contents 617 0 R
+/Resources 615 0 R
/MediaBox [0 0 612 792]
-/Parent 438 0 R
+/Parent 608 0 R
>>
endobj
-437 0 obj
+618 0 obj
<<
-/D [435 0 R /XYZ 132.768 705.06 null]
+/D [616 0 R /XYZ 132.768 705.06 null]
>>
endobj
-434 0 obj
+110 0 obj
+<<
+/D [616 0 R /XYZ 133.768 183.076 null]
+>>
+endobj
+615 0 obj
<<
-/Font << /F81 214 0 R /F29 215 0 R /F88 216 0 R /F102 342 0 R /F37 271 0 R /F82 294 0 R /F83 293 0 R /F34 295 0 R >>
+/Font << /F74 303 0 R /F33 305 0 R /F75 304 0 R /F38 309 0 R /F41 310 0 R /F92 356 0 R /F110 501 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-449 0 obj
+629 0 obj
<<
-/Length 2973
+/Length 1956
/Filter /FlateDecode
>>
stream
-xÚZmܶþî_¡oÖ^†o"%#uÚmÒæ ° DÞÕÞ Ö®6’6—kÿÞy!w¥=ÞùÜû²|q†ÃáÌ3ÓÙM&³ï^ÈðûæúÅWoK™)%ª¢ÐÙõ6SÆïÊÌ^hSd×›ì]^}µRJùß~üþje|‘ošm}ì¦ñêÃõß¿z««¬•Ó—ÙJ•Â”üŸ«Òäý>ÓU¾«¯t™ßsgßOÜèÚO8Üpoº Àƒ;c3MíþfŒ4u_÷»@~×^)˜`‰Êr&‘6Vxé@2’hÓn·ë¾ÙnÂ[/¤7‘R\­¬5ùu”èP¯QÐOõMƒßf+]*á};&†õû«ne-LØfaómßu=~Ç}V&P”þVšGßK]p«xz±žë™ü86<r< íÍ-®f~Þ¼<ÉEâÚwC}à‘zO[’˽ôæÝל˜…¯7í{iL34{bÖÖ¯Ãâ0ëÖm˜å©vÏ¿ãñã¸ÚžQ³á±CM+y<5¢¡p8>õñÛM»®§†{uøˆXõm`’’y‹6êóæ׫¢ÈëîXOm¿‡³,¼ËßôÀ ¦KP2Ý6ëi|É#kÐ}ù‘·Ã¡Ù5›eæ©`ÀDßu°˜%÷Ùrhn'4s×2WO4s™]ù€2&l×(!‰&óÐhU!\¥"Ík¤x]™ 77þý^õ*s¢ò¦¤KA÷ܧ‚Ž¾“>"þ^ˆµÒ¾Ã×à
-Ã+¼WÆ‚QÂîqçï@Ø¿Ÿ.Û‹å/wPBÛ(XÜNÔÉ5zŽúc‡:4&ׯyëÎf%|?¨žJçûÊ7
-nìÙuXÓYÜÖ{8 • 1þrýâ— *•¸ü:+Œ¥­²õîÅ»2ÛÀœ–ð•Ïîˆp—)mÀK ?é²_ü‹ýèR¬Âåˬ@õT–¥ NN¡ùxPþIJ”(%‰ª„·úR[•ÿ$|²ñÑÚVãýÅaKï» Z7ûÒY!íÉòðlwõt;ì~ßü‘8ˆU ¿°ê8fXQ$8T”s²[ BÌî˜Z=.îy×l§Õ¦éÚ]bm_
-媹ôHÎ,ÞËB¦˜„oLسBÄyœ“Öé9'üæÌJ%YñG Vì"W{dwÜpˆ¹àUzQ”6òZ¹¹ÊR&d +JU|±1//§-…W`°¤²RHÔ
-`¥ ¡²ªÀ‡¯û›};6ÎZ’?ÁRZ¡ËÏyÛJ¸³Ë â»˜Ê Q¿åºBWny5ÎN #28: z¦´!ˆ”süA8µeZð–=dÚågïˆL-| ‚cS±³kG
-ϺrºuåŸÃÉôBOFçßìCÈD¢ó>ï¢ô{àž e1ÎÌbÂã;2ý`Ç084S×a-C#b:èàƒ0òahÉ{•ïI¬yx¨o]þÏžà±Òr+ EÌÆI*r Ô°eoŽ‚˜”Hc¸—kÄl÷?¿ðÆ­6`÷JÎl< q' ŒÇóÐþµêìµÃM¼ eQÕâÀ8ÕûM=l^ñ-¨JQ~)äÝm˶ä¤#ñþ8¼¾<Œ·w&²©Ã]ƒ¹:D®ãÄ4ઓ
-_Ž øˆµÅÕÀñ(Àå¾9N¯Á9„H8‡B ©tÚù^èÈ@˜Vç؉'µ
-¾ ÔÂê‹ sÉˈm…hf@¦ÊË˼=ì¹¹CäílÛ~Jd~Óþš°šqU
-æÝ]YQY»”ÿM³®)²2^I¹pàìÂ0î)+"Ösü.uÖàäÕgã€Wqà™bÅśߦ¡ææ¨8Hš_ŽíüÝJU{ÜÅýˆgÃY#6Ô—Œ
-Å…/€Í‚Ž/ÉŽ²”fˆ.GÛ°ZÍ?·
-`
-€º–ÐS*\öÀ&EÞ½ÈÿÚì×Í™WÂÌ‘äkùZînÙžõ#gà¡é«³~/¡äâ0¦3v–· PH°õÙ„”üäÈÅAÈD)…câ>õád,,nÍÒ±ÌrSé(7…Ÿ‹Ü”ÆðÖàow³Q!%hçƒÃ}à -yDÉ!yA<a,¤Åôé>¤¯º-Ñq =|•Ï*8³P
-H¼š@NsF_±â("’¢ÔBÖ·ô<D™Á0BäZ ¿yèò_ñL¥úü=Å;çù>„0TjðnÏ)j
-q6<jéyB‡£Å$K
-dHVi,ÉœM K~Ÿ±$Kà?2bZž€¶¦Û¡¡Aµ
-!ÁRW !$nÇŒgfÏhø f‘©ÈxÓv±i $öÃSÙ×)¦R@„ˆ]F8ñˆKØ…Tèç;ù! é)Þ<S…N›'Tˆk9ŸÐàuj3dTÏÕ ^hð§ô–}5×àëÇòbÔF«t ñ“›ö–z¹ëJgˆçÃF,˜¬¥Á$æO¥@§2t(6nCø€)J$ü~Þçù]ßØ)2àôCžþÕ[%ç‹8°;UÍ®¯§áØ$¸~uÕ)<ÓÛ¬?‡À‰ý#4bB†Lû(Æ~“b^á ¡3ß‚À)î`LƪÏrŽàh@
-[hQW`GÁè´»<úÿ1s¥6
+xÚå™KÛ6€ïû+t‹\T ßÛ[“nд@Òì=dƒFkËkµò£’œÅþû9”,Ù²×.rЋEIC΃3I™FÞ\Ñ#ןn¯^^ Yb5×Ñí<b©!ʪH«”¤ÜF·³èc|;IEœÝ—ù$BÄ‚ˆ&‰”2~ϳmÙÔø|VÜQ!òªX=¸2žOX\­—xÓ,B÷MVå« Oãï›|¹)³&Ÿ|º}ÛYöòŒ0ÄʼYŠp&¢„SÂŒD«î¨¢ü0×ñå5£¦ßA- åE_ÿr}ã‡ÿùöêŸ+iÄ@Æ0 Ò‚)x4]^}üD£¼|Qb¬‰½è2bšá QÝ\ýŽ3"J!pZz…ÂÂX¤™%©1¨÷ï ·qþ4I§JÇ3 × K˜$&bÏiÓÿb åÄr4¤nœ%OebÅÔ ƒ$©Öm°^¢Ì`̤•I#V)”œÁ\™(g«YRç›±Á5ô“¼›/·›r[³åvY¬¶5ÜŽ) }P—Æžëm“WÉo³¼,–g8á’ãl?pìŒÍλÞÞ'+üíìa<úRMÊvp:IWñx`ZÙ†ïŠÕ
+̬²Íã7Õ6?ž€
+®êæÒR«0ŠOC]¥D·Vº ¹?Z­’0&{ÕúêÐDé,¹9«Z ˆ¤é‰4%’ʃjM±ZÓ'ªµ³äŒj=ß’ÃjCâ#« Óx—ŽæJ¹¸b ô£¬› +–'fè3¨Ø¥ '°H`€[SÈ$Lí¦Ÿ¬€ ;ðª<Éfmëæ ôbÏò‡k¢ÒtwLÈûâ¡D=Gi:]F£QMU§)TØ`Y×Ø”ž`“"
++¨Jx?lãEï}Æ_Zž‚p=R)
+»Ú#ÈôÄzÏL½¿~?B9­I
+*J OO#„sѧ–Y œŠOˆá„@¾CñÒK~°E¦ÎòÓ9߈lK³õ&©Ÿ| ÞOø]—£Å¨6ƒ\‚íYSdåh•£ð0[7ɺ¬œ^ä,¬”ŸUáAto‰k²²˜^¢COÕ.ô’¦ìÅi0\ì̦‡©:;{±»yÿ=+˜_øFÒV€Lš¯“¶‚§„qu¶¸O=³­!_%g;CFrÖúœµß@βќ=…3{Áüœ8ˆI˜%MÁpÎa‹`¨Q}IK$3ýpÌŠù|d€€ËΟéz¹„M
+AYÃØp^çU6mŠ5tÚ´{p¡«ã29”:~·*ŸP$ìøj¼{,š¶²0Äç9è7ñ ¼+ÂS<ÉúFQÍ°9]—Ûex¿žãuwlv)ƒÙR=DØøðæ*úèÅუox §dï*úSåT*†æ(±µñçmOûi^×à®´6þ„÷ÎAØ]`÷,t÷>¦ÞGx
+Óábò„ïVë00Ô×¾Ò<tè)lžu2E5ðA·»PLã²Lù,à ”î\÷պÊgàHJM|“‡Çw\˜£1á‡uÃB^ao¼k@lʼ weQ7hÀzÞ‚›êGe» ¯&àl^æ_²U3RÂfí3å8v@=ìmÒñ«
+Á°®ã[îz@(¹!)lŸp™óÎBw`Ó»jV¬²ÊÍQq]fõ"é•<Ã’ÐKBpتÀ£þßö?Ä8Ò¾^wNIåþ•wP*a)iøzôÇ"wꥬrû-Þ8æø¦’4’FØè»530®ã‹%šîø²Æ‘‘(®•áå 8ÒóR°À|l‘¯Š&\ëÉCLÁºÎÅ0½wTá:Ejjë£ ãï<ðÐ
+Kä ÏÏâ#uŸ³C@éò)¬âžÝp¾\¬}>A³uÖòÆñå²Ex¹ÙVÜcgÚwÆ xg|£®F8 ꎵcˆî­›#°‰Û©Úo¦ž%-G³‡Q½[Vçø=Õºýh·õkÓaRiH*!žI*EôŽiGó¤VŸAZq05Ö„P[jÛš@Zÿ!
endstream
endobj
-448 0 obj
+628 0 obj
<<
/Type /Page
-/Contents 449 0 R
-/Resources 447 0 R
+/Contents 629 0 R
+/Resources 627 0 R
/MediaBox [0 0 612 792]
-/Parent 438 0 R
-/Annots [ 433 0 R 439 0 R 440 0 R 441 0 R 442 0 R 443 0 R 444 0 R 445 0 R 446 0 R ]
+/Parent 608 0 R
+/Annots [ 613 0 R 614 0 R 619 0 R 620 0 R 621 0 R 622 0 R 623 0 R 624 0 R ]
>>
endobj
-433 0 obj
+613 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [182.297 588.092 188.759 600.029]
-/A << /S /GoTo /D (Hfootnote.6) >>
+/Rect [446.785 387.021 461.508 397.814]
+/A << /S /GoTo /D (table.caption.6) >>
>>
endobj
-439 0 obj
+614 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [311.327 520.906 318.3 531.699]
-/A << /S /GoTo /D (table.1) >>
+/Rect [282.853 363.111 305.324 373.904]
+/A << /S /GoTo /D (subsection.5.2.2) >>
>>
endobj
-440 0 obj
+619 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [197.314 508.951 204.288 519.744]
-/A << /S /GoTo /D (table.2) >>
+/Rect [395.047 292.923 409.77 303.716]
+/A << /S /GoTo /D (table.caption.6) >>
>>
endobj
-441 0 obj
+620 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [172.388 496.996 179.361 507.788]
-/A << /S /GoTo /D (table.2) >>
+/Rect [160.444 280.968 180.147 291.761]
+/A << /S /GoTo /D (subtable.3.3.1) >>
>>
endobj
-442 0 obj
+621 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [149.826 485.041 156.799 495.833]
-/A << /S /GoTo /D (table.1) >>
+/Rect [312.436 269.013 334.907 279.805]
+/A << /S /GoTo /D (subsection.5.2.3) >>
>>
endobj
-443 0 obj
+622 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [196.484 317.668 218.955 328.461]
-/A << /S /GoTo /D (subsubsection.5.5.2) >>
+/Rect [389.786 198.825 404.508 209.618]
+/A << /S /GoTo /D (table.caption.6) >>
>>
endobj
-444 0 obj
+623 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [274.839 271.439 281.813 282.232]
-/A << /S /GoTo /D (table.1) >>
+/Rect [160.397 186.87 180.655 197.662]
+/A << /S /GoTo /D (subtable.3.3.2) >>
>>
endobj
-445 0 obj
+624 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [169.849 235.573 176.822 246.366]
-/A << /S /GoTo /D (table.3) >>
+/Rect [312.436 174.915 334.907 185.707]
+/A << /S /GoTo /D (subsection.5.2.4) >>
>>
endobj
-446 0 obj
+630 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [218.75 225.555 225.724 234.411]
-/A << /S /GoTo /D (table.1) >>
+/D [628 0 R /XYZ 132.768 705.06 null]
>>
endobj
-450 0 obj
+631 0 obj
<<
-/D [448 0 R /XYZ 132.768 705.06 null]
+/D [628 0 R /XYZ 133.768 673.176 null]
>>
endobj
-114 0 obj
+632 0 obj
<<
-/D [448 0 R /XYZ 133.768 667.198 null]
+/D [628 0 R /XYZ 133.768 645.28 null]
>>
endobj
-451 0 obj
+633 0 obj
<<
-/D [448 0 R /XYZ 388.179 554.087 null]
+/D [628 0 R /XYZ 302.427 643.786 null]
>>
endobj
-118 0 obj
+634 0 obj
<<
-/D [448 0 R /XYZ 133.768 304.772 null]
+/D [628 0 R /XYZ 133.768 515.127 null]
>>
endobj
-452 0 obj
+635 0 obj
<<
-/D [448 0 R /XYZ 379.783 280.709 null]
+/D [628 0 R /XYZ 322.147 512.636 null]
>>
endobj
-453 0 obj
+114 0 obj
<<
-/D [448 0 R /XYZ 149.011 128.717 null]
+/D [628 0 R /XYZ 133.768 340.149 null]
>>
endobj
-447 0 obj
+118 0 obj
+<<
+/D [628 0 R /XYZ 133.768 246.05 null]
+>>
+endobj
+627 0 obj
<<
-/Font << /F80 213 0 R /F29 215 0 R /F88 216 0 R /F89 255 0 R /F64 207 0 R /F66 209 0 R /F90 267 0 R /F41 298 0 R /F37 271 0 R /F83 293 0 R /F34 295 0 R /F92 279 0 R /F91 281 0 R /F101 337 0 R >>
+/Font << /F33 305 0 R /F95 410 0 R /F107 459 0 R /F73 298 0 R /F115 602 0 R /F75 304 0 R /F100 405 0 R /F92 356 0 R /F110 501 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-457 0 obj
+641 0 obj
<<
-/Length 2750
+/Length 2621
/Filter /FlateDecode
>>
stream
-xÚ½YKÜƾëWLNâŠýàK@.,ÁÉ!‰µXÂöìâc’ãÕBÐÏWUM9Ëu$rYv×twUW×ã«Úhs¿‰6ï^Dþûýí‹×o³h£T˜Ç±ÞÜî7ʘ0M²M§¡6ñæ¶ÜüÄ¡½Ù*¥ãཆª¹¿Ùš4oŒ
-Ús'³–fLJ·/Îõп¹ùåö/¯ßªH/˜ä*LcøøÊزÚï±I–ë|“‡y¢Z¼WoUš,—=ÿ¼ÉL຾j›,Mhú$AÑ”2¨‹Áu2l÷²d88ae3Jåad’Q’d׺ýš,qZ•+OÅîFgÁÇâÞ ŸS×á·ªô„B>»èéx„h¯Öøë<LlòuÚ°*Ìì¤9>n³56
-sk¡!Ö±ü6Š#\SÜÕŽÔ”EÁ¹w¦ó³¡•%½<áàªNh|~PÐI𛆰…(Ž‚·ô­_ì>ÇSí^a–« ÚË®G:¢=Ë’‡ª?,¹’,th)ùùÔU÷ÚJBü§|ÙËèîìIMëû¶®ER™ÓóàÇ÷wˆ!Ø ?ßõ»ªNƒ+…v*:×0ÓƒëßÉ’â[5eµƒA­‰Ël‚ÓÍ–.[53Á… õ·›ÖPŸ‹ûʱ2 ¼‘°¯¿
-uBÞToÞ¿ø‡T‡‰Ýd¸>d°Yj"£p-”t|  À<•Šu¢æÑéI€Óà:×’Ø<û’ Å ŠÇÀÈŠI)3Xä÷O’Ù¾Ô¢”œ –tdyªÏ½ŒÔHB¼iZæ•[Öš¿Û~…
-È3Óöϱc¹zÁg\¾`ôúÿÅ軯ã¤\/)Êï™­_·M]äïoµÊ¥“ù–…‰óÐÙÎ0PJeUï¨ÒQ‘ˆ•2æ¢OD¬¡¡f[-ñ<ô!¼3"qÍe³JÚ©
-M#¬\÷êÈ®\Àfz† ÿ¡´yðoîQœ¶}Nè(Û\¤C‘PuÓÊ÷XŒES~
-%‹Z«W©žIÔX&°+èL² ÍÖA<"‰ãÿñŒ M4­óÏäá°Rd$KC;Ò’jÏ)Å¢B¹eÁ’TÀ~‚R¥DÑ*£»‹Š®»2=§¢ÌÚgž,6¡½T±tßµ²Õäpo»ÖBã+äqÝ^7
-OÀ KP°ß‘±&öØ»ªù(ÓU.©‚J§¤¾…MáuwËÊG³Ø°Õ¡²VÿÀ?Äa ŽDö&ø/ÿXEœ¹*ô¡ß é=DöÝZj BzZmr7wÖu1(Ô­Û±ñò¤‹
-E¦™QêÈ)Ïol ‘¤Ñ¥a$¿?T\cà± ¢]”ç“’¢±A•“ûËwþ’Ë&Gœ ŽÄ¤²ÔR^wþ ]•0
+xÚ­]Û¸ñ=¿Â@QDF#ž(Šú¸Ã=\sÝ\}8¤‹Å¥@¸6m«‘%W”²qƒü÷Îp(ZÒÊÙMÚ‹GÃùžq´Ú¯¢Õ«g‘{þùöÙw7E¼âœRÆ«ÛÝŠ Á²4_¥2c±«Ûíê÷@°˜%ëóX¿­TÛ•ªZ‡"“ÁV·å‡u*ÕÁ6µùv:}<UªÓfýÏÛ_¿»á<)æ9‹ã±ßøùõÍÍo„8åHp&röb‘PâňÒß®S_G饣$Ī`E§ˆÆEÆ’X®B¸ƒÈ ¾=h¸wÂA";ÕW½|XË4PUR°ï{Rœz̓!qPÖ´Ó ç;uWᾡ}ˆ–;ÕŠ:
+„®uZK¯ð‡¢1ã°r#[À w—kšÀÐhjâ7>²`§ïiáfhwƒŒT½×Èkž¢`&LÕjBªJÓé-I€Yp»ÎÁ
+AvÖàžqà*Zµû-Þ¼z¶úÝâ &6cðƒÁ–Ž„
+Ħ´(`ÁYsÂÿÚsÓƒŽ3jôL/wø@uã˶4üͼD‚.°û²;à*&sA!¿ÒG÷ŽödF‡/c£Ã÷ÁͺÂ<ÅS«7"Îo47¤Ž1id5m÷¥9Ðʆ,x¾{£ÃcÓW¡ìèYk°ávŠJ†‹_`³{îhÿ¬MÙêçk.
+tA ºý¥Á›ÞOƒo9*Æ=K³Ä5ÈrÓƒWN¢Ü^Ÿoc‘])`UÉ,ØCwäœq¼¥i¼®—B.X$K#9Jw(Í‚•€k™G2èöcåfŸ†žÊ˜þ8Ü¢;¨nXiZô¥;>Q©v¯!@£PBžH&ó©h¦6&’ÁÆ„t øl¹¯„KXǽ»¾#ðA9H­LTBîÛ²HÕ´ÕX)n6ÊÀe±æÀÍYžÁÈ7Vf:ˆQY³Æó¡´…ˆ}۵͑VΔs@€Píý ·‘
+Z¡­$`m
+ø¥î(e?8`S<›ÚV,X(I205(N­-ÁFCkðÜjŒÂ5Y ¼+üì–Ö½ñ`ïböÍ3Kt$K÷Tôè(o¢ñ…÷OcNrˉun¹t‰âáÞY&Дà( -1vßB!+s†+¢øŒâÄᦄÀw&ÜSßr>@juÔ²b
+;umiI½
+âVºë(%&÷¡wE,›®ú#þºJÑ#žúzÓQ£E¸GÕ¾_¬QRú#rGå7¶;½ÃÊtÍÉ ¨l#”Ú¾Kô~Æyôý¦2õ|>4åëîÜëëO‹atôGÆU‡¸Ô’?>žà€«ŒÆ8È^ݸŦ¡”ß6é.N ÆËfÊ3úß½®7Cå88•Ï®±r¤á¿U+U€T/×Â2a<ñó°?.
+AÊDzkî¥ô‡Ç( Lß{øOÊÌE‹ˆEi:-ÁÄÓ]t¡]`(Ë@iââ©KÓDÎâbDõG¢úè©H½¹j.‡þ|HÓ’‚, ø7ª/O ÝäëÑ @3µÉ‰­]»…|ŒÃíI_> Û¤# ÷†
+•…dn.šÖ QÌe(;[×›ãŒÂ6ídvt'°+á ¬¾@ÙI·3껦rÓj*¶„ŒR;ˆqðû§4a“&éA FÖý‰îíóx€vHBòÄv>]vfƒµS±ô®Á¸ÊeAÍRŸè/ÌKáŽÙ±PX÷Û½s?w”ÓãØ;S~øÍÏ3ŸÖB²¤ˆí¿PI’»˜ &Gþrûì¿Wí,
endstream
endobj
-456 0 obj
+640 0 obj
<<
/Type /Page
-/Contents 457 0 R
-/Resources 455 0 R
+/Contents 641 0 R
+/Resources 639 0 R
/MediaBox [0 0 612 792]
-/Parent 438 0 R
-/Annots [ 454 0 R ]
+/Parent 608 0 R
+/Annots [ 625 0 R 626 0 R 636 0 R 637 0 R 638 0 R ]
>>
endobj
-454 0 obj
+625 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [238.618 400.794 245.592 411.587]
-/A << /S /GoTo /D (section.2) >>
+/Rect [456.558 623.957 475.708 634.75]
+/A << /S /GoTo /D (subtable.3.3.3) >>
>>
endobj
-458 0 obj
+626 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.772 612.002 153.029 622.795]
+/A << /S /GoTo /D (subtable.3.3.4) >>
+>>
+endobj
+636 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.045 521.37 208.768 532.163]
+/A << /S /GoTo /D (section.3.4) >>
+>>
+endobj
+637 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [326.761 484.951 341.483 496.906]
+/A << /S /GoTo /D (section.1.2) >>
+>>
+endobj
+638 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [386.626 305.624 393.599 317.579]
+/A << /S /GoTo /D (chapter.4) >>
+>>
+endobj
+642 0 obj
<<
-/D [456 0 R /XYZ 132.768 705.06 null]
+/D [640 0 R /XYZ 132.768 705.06 null]
>>
endobj
122 0 obj
<<
-/D [456 0 R /XYZ 133.768 667.198 null]
+/D [640 0 R /XYZ 133.768 667.198 null]
>>
endobj
126 0 obj
<<
-/D [456 0 R /XYZ 133.768 387.85 null]
+/D [640 0 R /XYZ 133.768 586.03 null]
>>
endobj
-459 0 obj
+643 0 obj
<<
-/D [456 0 R /XYZ 329.173 348.622 null]
+/D [640 0 R /XYZ 133.768 347.024 null]
>>
endobj
-455 0 obj
+644 0 obj
+<<
+/D [640 0 R /XYZ 133.768 302.635 null]
+>>
+endobj
+645 0 obj
<<
-/Font << /F80 213 0 R /F102 342 0 R /F29 215 0 R /F88 216 0 R /F90 267 0 R /F81 214 0 R /F64 207 0 R /F66 209 0 R /F34 295 0 R >>
+/D [640 0 R /XYZ 133.768 247.398 null]
+>>
+endobj
+639 0 obj
+<<
+/Font << /F92 356 0 R /F110 501 0 R /F33 305 0 R /F100 405 0 R /F75 304 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-463 0 obj
+650 0 obj
<<
-/Length 2290
+/Length 2931
/Filter /FlateDecode
>>
stream
-xÚYKoãȾϯPNKV›ý »`.Ö ç#—Ìh‹’ˆ¡H…¤â,òßS/¾dz<§nV?ª»_WãÍqo~ùKûקO÷&Ûd*KMºy:l´µÊ§a“&^›lžö›Gû¢-ÿ»MÒ(¯÷Ûµ.*klm”sÓUywâ®ÌM¢¼‡Ö„¨PÛßžþ¶ÑNeÎmvZ«,‘}ŸN8áÚÁJ££¾áö\=÷ž·;oú¾–[u§BæÃÅÍU•GØÌG´2Ž.WÙ‚Š›Ÿ
-î\Ú"?ãÊçJ(Ía±_Ë_û†˜¿\ÏE=Ýb·v®9ý©¬,ªüJ÷Æ£¤‡öþ!„™¸ lûÍÎÀv:ðv_´uûòpØp°Ä$Ñÿc ÆÊ¥zÉúid9@j
-ø_«~å>ý€'ßF†r#Ê‘.>ØØÓé\ÖÍp
-u ï€ïqæf„ Æä„2$\øÛز\ ¤7|ÜJΦ5au &‹÷“Ó,îG&˜B†ÛÔØï!ŠäŠ45à`õ‘Rkl¾k†­W.ïÊ~b³AW6LºjÝp;(ËrÈïG™àqÝÃ-ÇðD.;d_Âv3At€öÎ9HO .sÌ"œÕ§ÓOû§UÿM’ÑÛáî(Ü°(ºRzˤl®íéÆV€«³ÊR½À«¤^
-­º2{™ä5糤÷z,ÌŽd©!УàÚ®ç%äÒ×Ô°ìЭ
-‰;í½2Æ-ëloK‰ò>q³RWL?¨+6—]÷íüÜ`ÑNÇñPDF—¼­˜°Z\¬ŠC Už—%I\còñØx}—¶<ž¦mpÚl÷Ñß9Lw}î^Ú]}Ý#´ÍꜻôýBgò£…Î0:1tŽQ™/X\DoÄO6mì5Ôš™àÐÉ qÃ9Sô $Š²ñ[ÞLì÷§­„çð6»–ü™,G®kV›(cG«½CÀ«¥—œ`ò#Ï0”ê›ÐpßP–æ3Ò¬”¯ÚR"KmŒU3®ôúÃÄ®o.D@^Š~VsYBƒ$?5sB [8œ›Òôö8Õöi{Bÿ^iÇl%oðx t͈ˆ”GšñÇ`V
-/pv“´´…È(ïG,ÈœŠßsH_†¢]ÏØ! b±(Ⱥ ´_Œõ„¨ÂxÓ7ÜùÇ/Ÿ€‘Sf-¤áA§©
-ô ¹ŠÓ¢O“~~úô Ï
+xÚYK“Û¸¾Ï¯Ð-TÊ‚`R®¼v×µ{H6›±/¶´DÍ0¦H-Iy<åòO?
+¢Jš`”OE¦ÃÁ””Taf×ųD+Jø¸úò'|œpƒ§fsZÊ=ݱ->•Í©« .zêÓÊžÿ0Ä7§Ê/ßSRói˜V>p:)j¿'ÅͦëÊ•?úb<é•,¥jðX8ËK8CÐÆUø^ÀY*€J‡.êyñ¦ÆGjðÙg z»àgžÃÒCxDžx}™nñ©P~+JÕV •Ê¹
+Òõ(h²¯zMá1ïï1…g eô"ßñúÉïoU¬$|±ñ¯ú°qÁc”ìÉï‹Â  yY6ÀŠU|wjóe&€ Ž²ŽT­,Ú3bÆj8¿D£¡f² \`ÃÑ޳ψWòðÒ€ýÞÇçP°drËÚ4³Ž’U{·ºXûõÕÕt³@)!
+¹X­
+„Ђ¦`w€!¬‘-Âü"†yꃑ<ÞkK0Ï‹BÅH}ß0 ¹;” à¶<bOE >à˜ˆ#ö<­ç³LBÔ²¦j <ĬI
+Âð ÜyúrÿÈO&2ÁiSûsW‡¦-–@%Xç‹Ríl4iÀ2[å¥æ2_c`Ø?Ñû ΕÆPûwÏw4–wÈö÷î0ð°w
+™\ÏdØi!J0`ÚŠÊܤ…¢4”é,ôP$öM  P_ð_”ê,ú©æ…!ÜàdnðevB|Fè'÷Š–4(¶Ø›è:‚¸Hg[øÃà}ÂÛKžSà׿bà®=$‚ñ±-ÜkŠ…Ž=‘¥³ÐýíRÝ ïÿ»ÄÀ]‡õ‚0´(Z™XaÝÒ ÊÄp!Ž¹ÛIàB:¸i (8ÿàbÎ Dw:àïnµü  ¦V04) :lÒ%
+ÙêBKÒˆ ðÒL19*OÇØürÇ“’wmxÖÀØ/ܵÍéˆP׿jjnÅ)ã˜Ø7%UF\~@+ÅbKFž `-íž—h€tö”o¢²QU~ ºÇ®â™Y-²$þ{¢þ'Œî¼ÝÔÔÛÅR©+ïjº<¥kÁYUðF eσHç°ÊW?¥ë‰ÏY°² X\†’:áÑ™3Øï©Ô%üÚÜŠî<y•WU¾àL„(Å*¤‡^¢Ž$J+3ÙñéUÙQKÇáÐwJ§ÞìD“­ã
+`¥cìD…ó–”cRc3ÁAl̘úoKAÊe.OÇk(ÅRsv(¨ÄÒ§ÜB+·”WåTÄ©žµ˜ië’,$ÅXŒÓ¾ø܇3Çó'fƵÊø*—Gl?öÂI‡GéE g+¹§N·¤fy1¥7±ò}OŸ ”;jû¼»÷¥¤ó½¡ái: ø:[}3vÏf îta/Fï°Ç±Ê·¾1å¢îä1õBd¸,â
endstream
endobj
-462 0 obj
+649 0 obj
<<
/Type /Page
-/Contents 463 0 R
-/Resources 461 0 R
+/Contents 650 0 R
+/Resources 648 0 R
/MediaBox [0 0 612 792]
-/Parent 438 0 R
-/Annots [ 460 0 R ]
+/Parent 608 0 R
+/Annots [ 646 0 R 647 0 R ]
>>
endobj
-460 0 obj
+646 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [293.98 123.847 308.702 134.64]
-/A << /S /GoTo /D (subsection.4.2) >>
+/Rect [411.365 308.475 426.088 319.268]
+/A << /S /GoTo /D (section.5.4) >>
>>
endobj
-464 0 obj
+647 0 obj
<<
-/D [462 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [301.48 284.565 316.202 295.357]
+/A << /S /GoTo /D (section.5.3) >>
>>
endobj
-465 0 obj
+651 0 obj
<<
-/D [462 0 R /XYZ 133.768 479.907 null]
+/D [649 0 R /XYZ 132.768 705.06 null]
>>
endobj
130 0 obj
<<
-/D [462 0 R /XYZ 133.768 334.46 null]
+/D [649 0 R /XYZ 133.768 271.773 null]
>>
endobj
-461 0 obj
+648 0 obj
<<
-/Font << /F29 215 0 R /F88 216 0 R /F34 295 0 R /F81 214 0 R /F90 267 0 R /F80 213 0 R >>
+/Font << /F33 305 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F45 427 0 R /F41 310 0 R /F78 308 0 R /F100 405 0 R /F92 356 0 R /F110 501 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-469 0 obj
+654 0 obj
<<
-/Length 2539
+/Length 2943
/Filter /FlateDecode
>>
stream
-xÚ¥YYsÜÆ~ç¯À[À”w<0˜T©*vl©älj)½Ðª
-´˜%QÚÖ8D²Xüïéž\+P\%/Ü9===Ý_äÑMÄ£7ü™ß¯.¾e‘e6•itµ‹D"™à*JäJ¢«"ºŽÿJ__n™øaQîvìÈþúˆ“]“oië·«§w×ï?ÐäÕ‹äâêéýõ»݇ËW¿|ÿZé™8Òrf­
-f“
-ÄZÇo«Â¹â»aRø0q åØÖn·[‘%áþ eYÀ%ew%(P»v…µ,Óê¬kjføHyWv·kj“ ©>e¿Âpyôß¼mŸ¡ö)Ñø, 8 T6ó«»û©ÞöWuÿ^`dŽ4}¤Ÿ§Ål.fØ^³RÍ,7Ë“­;06Å9XQÞáí ×–êßæ]YWDSïVt'ÀÐ Î{ e’—ßBƒƒŸ÷D
-Ð^$Á¶Sb“ïÃý‘^ÇEÝm
-·/eç
-ZÊ››Üû€t†èTœãøó%Àb^îó{G´»ºYSZ–0•™³”&€r¼#:J<ÌxRË1ŽÉ‰t.øe"b $o.ßx› ZЀt‰Xzx~<îK‡ºK²¸®°pÔÕkŽž2#åéeVî"á½’Ù]üñÆ0«–‡¿FÈÅm¤1˜‡ãÞÊÌ¢
-—[
-«ÃæÊjiñ_hF– ƒ¿'%7`á{ÔS8çÊÚ‚tàà½Àð˜ }”e‰ cxßésDÍ–V*Hd}Œ‡ñ°†ê@š¼¸ !TOèJÎæ‡Á€;<øÎ_ÂUD]ø«·ˉŸz.O20öìœPj}I¿LßÏËF…á,EK„ÊŽ ý|C¤?²‡û¯w3¬ôõÛ·73\6P
-Œ”ŽÃòGdý@[ù
-’ø;付þCN¿uûâù^Ŷ®à¾S‡‹ÓE¹ð±¦>Á÷a&«©Æ¬qȱt1¾tÁ ÙßÄ\P¾ ;­ _ÞÍ[Ž¾ÁÕ=åõ§0-?ÍÃ*‰>pk1{T¶¨Ò¸lWl<Qàý˜Ê|iw|Nµ¼¿C_øâÉs­è·«C†o@ñE}†ƒfÖ )¨28È­kK_Ä@^õv`Eš€Ñ6oƒÂ¡ûUa–‡™
-(iåû­Œ<X’²´fD5ðIž¦³<è
+xÚÅYYoìX~ϯè·q‹ÛŸÍ‹Ä" Ü  BH Ò8öéÄŠÛÎØî››OmÞ:ià—öÙ—:U_}UíîwÑî·7‘|¿¹½ùú“1»,Ìbïn;eL˜Äé.vI¨ÛÝ–»wça0qTò-ÛýA§ï¹zòyÃ¥¢}Úë$x©š{nüþŸ·¿ÿúSâ.v‰¬‚3Ðúaé<jumC—c~ˆŒ­=/zìÚ“¤ê|1´Ý‹ìÖâ7£æ½
+¦žLzÒàyçn»G®µ o«¢h±ïAÁåc£  ẨÊ
+Ž`|·w*ðÍ°q^“…6KÆ‹ŒŠóÉ7¸éЇûƒÕqp»OM@QpʱÏs-‡O§÷xÙ¦*8uŒ—ÇÞüyïâ ¯êü®–¹Ç¶Ûº‹V.46•×ûC’õÆéH[«·Oÿ²(xªó‚žtwÐqšØ®ÅD*’¸ BHì
+
+…iê¦Q÷p“ºà©óGßåwðÆõ ï×´²1nH;·ç–¢óùàKn½ÃÛÈœR†sǵ[º•ŽLhL· ••;}¤:0ˆEóßy^YõpŽ¡«ÀLàÅ>ˆp’4LL²’ŽÕbg¬µX{ÞÔE—….Ñ£žHùº¾mòz[ªÊ¹w¥
+[ •ô2
+¾ï蟫eõú”,ŸL‡±vWŠ§xD6 %Rhh|løÎ=Wá%´Õ ÂÓ ðBx‹Ó¤ ˆ‚èMYÄ*´WÈ" #¥—ÂàÕó¦äiØ{® ’ã·hÙ8òªaûˆqB#klŸƒ‹Åñ{ÀœªKä£[£õÉÑž«á¡jfSÌÔhŠñÂu%T~ÐKD¬äE Ù÷6JÂŒœ'˜Mƒ '2~ÕnÁÅ’,ΰävÝýîUÛ_®÷ñö槔@Ý
+AéI£PEjWœn°ÃÀÇÖ‚ÅÂtp&ßoþ|õ+˜Ø èbØW)æ÷{£×ê¦ÔÒPmÆ[€¶ZY#ì©¥ºýjãù ¬åÐý¤¡I3|û
+ñ‘?ðw¼~hµ~ãöëéßUŸé€¸\ù§}jöÛ0=³ab³ nðVù=³E[C*€_öuP`¯LEzZc-!d2©¬4Öø¬ù½—EJßW÷ tžn–ÎfŽ.ŠwË»¡*ÎuÎGÖ8]TàŸñRÓákÄo{ì@¸´¢o8RFÃËáÜyéšß kŒÈ4LÞû5ÌêÄÔã+<¡IÍ8ê¡JѸÕÛè§b”m9ò$š8&RlËAW|Ç•Z46ãú–»X˹ä;ÏŪçA âó ,¹Ž6H㆞ ‚éĸi
+•Æ?sa¢4¤,·a¤ˆàu’WÎ$CT0‚ÊÁFv9à‘I¿qëý€t¨šˆ¡á•óiIŒ¬šê9ßW˜ „©ok/[uEêýÈS4¦’… Ó$tj2å¿úa
+H¾Ê
+ªQ=µ >~ÉOOœÁ âÈßÏûXC
+_J“}{Pâªä:\0厓1Ø‚‰ë¼®§y?bLÃY«’­5aJ±ºþºã_ú"OPŸò«½2†|ÖºàOœõæÁÌo À>ÑÛʨ‚õßbÀFc PM"LÓQÝj„5ÿœ¤p÷
endstream
endobj
-468 0 obj
+653 0 obj
<<
/Type /Page
-/Contents 469 0 R
-/Resources 467 0 R
+/Contents 654 0 R
+/Resources 652 0 R
/MediaBox [0 0 612 792]
-/Parent 438 0 R
-/Annots [ 466 0 R ]
+/Parent 659 0 R
>>
endobj
-466 0 obj
+655 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [240.507 268.382 246.969 278.381]
-/A << /S /GoTo /D (Hfootnote.7) >>
+/D [653 0 R /XYZ 132.768 705.06 null]
>>
endobj
-470 0 obj
+656 0 obj
<<
-/D [468 0 R /XYZ 132.768 705.06 null]
+/D [653 0 R /XYZ 133.768 576.766 null]
>>
endobj
-471 0 obj
+658 0 obj
<<
-/D [468 0 R /XYZ 149.011 128.717 null]
+/D [653 0 R /XYZ 133.768 365.793 null]
>>
endobj
-467 0 obj
+134 0 obj
+<<
+/D [653 0 R /XYZ 133.768 239.01 null]
+>>
+endobj
+138 0 obj
<<
-/Font << /F88 216 0 R /F34 295 0 R /F40 296 0 R /F41 298 0 R /F37 271 0 R /F83 293 0 R /F29 215 0 R /F90 267 0 R /F89 255 0 R /F82 294 0 R /F92 279 0 R /F91 281 0 R >>
+/D [653 0 R /XYZ 133.768 173.563 null]
+>>
+endobj
+652 0 obj
+<<
+/Font << /F33 305 0 R /F75 304 0 R /F100 405 0 R /F74 303 0 R /F110 501 0 R /F117 657 0 R /F92 356 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-474 0 obj
+662 0 obj
+<<
+/Length 2049
+/Filter /FlateDecode
+>>
+stream
+xÚµX]“Ü&}Ÿ_Ñ©Š:5" @HÙrmœÚu*[yIvÞloKô´*­èÃcÇåÿ¾÷RK=xfœr^š\.—Ëáp€înwt÷ãõå7Wß¾Pb—“<MÒÝÍaÇ8'*Ív©T$árwSî^FÏ÷<‰ŠÂœL¯Çªmö¯oþóí ÎWýTBX.À©íðS³…dÑhš¡íÝÿBŸŠé4 îK¯Ýٚʷ mmƪ6þó®¯Fpã†ëPžAø1{oÂV&9Éææ·®YÁÔH®x†Í’°Lí8IYꌪ€N84Ç+«g~þÙÊJ<Kæ±Ê€I$_ò32ȉ̗h¯Ñ
+Mwl—ä’P F¡
+Ø,qÛ¤zŠÅÖ~çç#6K”ÁáIáœK€”f©ø/3êåâÑ"ž›Þ E_ucˆb…ÿÙ’·›}Æ­,Q4Ž-ž'wîËÂ<Q,2Vñ£ûB^Þ4ÿn©÷A¸Â]F‚¨âf*oM (±¡¥kÜrü<ÂFÐ8òÏ
+ò$†'ðxΑ8˜ï°…FüG#]öÕatµ¸˜½‚™þ¨;o‹Ûµr þ[í­5fû£±ÿÞÿÓ S•ÃÂ5³‰c0Ú}[ÜãÙƒäì£<æÁøBO§1t­Ì8ÂB†”—$KÓ{+ù,– 1àŒ’éZШ$ª×̘Êèm5LCž
+ÜЙu=|»»†}6à¯i\/œà|¶¸ÔJîÊÃá–/W³[¶¦£cØÆ-¶ÑP ß…N qÿ!‘ï^Ò××X÷Ç¤Ë ÷iM–* SDsýdY 6[ Eá."BAWªd6N’€@N£§^k}A¦Ñ‹€FQ œ£Pf ÁYò FµchVe3l¢8è£JX¯l3ò»À”ÀŸ‰ ;7ƒbž÷Ë–®Ä–²/C°I õ†40kA„òÂÍÚü#4&D–ã/êK¥ I\Á¾D
+y«Ë¿|Aˆ"vîgp+
+8Ô½Kúµ3Ú, ŽxÏœ
+endstream
+endobj
+661 0 obj
+<<
+/Type /Page
+/Contents 662 0 R
+/Resources 660 0 R
+/MediaBox [0 0 612 792]
+/Parent 659 0 R
+>>
+endobj
+663 0 obj
+<<
+/D [661 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+664 0 obj
+<<
+/D [661 0 R /XYZ 133.768 669.191 null]
+>>
+endobj
+665 0 obj
+<<
+/D [661 0 R /XYZ 133.768 456.287 null]
+>>
+endobj
+666 0 obj
+<<
+/D [661 0 R /XYZ 133.768 261.312 null]
+>>
+endobj
+660 0 obj
+<<
+/Font << /F74 303 0 R /F33 305 0 R /F44 426 0 R /F41 310 0 R /F78 308 0 R /F38 309 0 R /F75 304 0 R /F45 427 0 R /F76 307 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+669 0 obj
+<<
+/Length 2111
+/Filter /FlateDecode
+>>
+stream
+xÚ½ko¤Èñ»ù´Œeúú '­´wÚhuJrþùœ 6=3Ä x±×±ü߯ª«a`Ìfçn/‘,Ó]TW×ûÁð`ðà‡3îŸß]ž}ó½RAƲD&Áå:J1“¤A&U\ÁUx¹µ«H'qø3WºízÜè°ß–õ†à}C ºéË[[vþÝ6øWu¾ó«f}ôêa'aÞ–y½’iØ_¬®/ÿòÍ÷&ž°(Ͳ4sçœpæbp¦“ãHg©gÈ1Iw­›vg <DÒÄLë4ˆ„`Yìå^·ÍP9+Û÷¶E\€b ·–ÞåâA ¡ØOùî¾²½¸YE Œ­”éŽ ¶Š„?„°>ä›6¯7ö¿Æ~Üç}¹aS{Þ„Üò9›­­ à¦XEJ)ÇÝ¿÷h$ܵåfë4‰[í …àžfŸpcÿ„|!ùÑ;†ç‘þ…d ëH"%~J_­¢XÆnY”ëõ=m?<üåùîå%à윳óóþùž4ýóÇwàêúå-?¼&#k1eDhf$²ÂYj2båÏp& ?8AÞ]ž}< D ãŒÅÊqš0 Ø·»³«kð4ÊT–uˆ˜‰L²
+~:ûEÉìæ‘–If ›?z…b™Q©÷F™Í˜Î<îGOˆ¦L ÿå UÎßNçúÏbä&¼bAØ4ƒ+“S„͘PG²Î®IMe-̃Jâ!æz0u°V¦4V* ¥\ ”B|ë 2LñtÔ­”rɬ€ÂD¬þ³Ž´æf}mÃGÈ!ü² Ø:ÕÙ€±äÒYô‰©ÊÆA
+]’nö´y,»-­\å…g·¿½µ]·ÞWÕ“¿žóYÒ
+
+{ÌGubɹmìz½¤xð5JNTS¤ê¨÷[(ÅváUh8Å
+»DZB¼Z°Â¦Á¨‰|Ð=Ô^w¤¾XÍ«ü(²’ ªhU[WøAõ9\5o»²© Ь—Ô"DLr’?bõÕB=Ò•¼#ÆßÓH¦…Gk¾ËÛª´í+μ“håç‚Þ6Ôûå¥sÅ¥ úŸ 1Ü“¿!¨(‹úMOP×AhXz•ƒš•½í‡#üèôØÞAâêü¹õb—‰)Üœä7œq3*èf`¤T( Î¤¼o-飞´g·¸ÞbØQŸæcƒ’,ömyai5tr>œè<Åø)iNéã~ºc¿))0€²’A" Ïí‹÷?VàC¦06t”°¡ô¤2N\Äb®q«¼öÏ‘oØLb·Àt<aš€”m(… ÂîI=-H¼Íï»ù›’ìï[ÊŠÑ ×Ô2µKŽè½–Âòšäc(“~«=ÜA‚w¿v%£”Sï9ôêåC^QgïèË101ûÈ,%÷ÅE•ck+?c`¤ŒÖÀWEã‚—”‰†ž­õjË{…*}z4ûP¼®A¹{—mÌà`5”ý¦fØïÆáûž^uûŽF*¹uÎkü°a¦^{u ÝÁTE® Ц®žŒCá ¯µ•%EÐ;gÝáL»4y”îÛSæ(|™”@
+ÌV¸Ç:€Ïû|ÀsC"rLKeÂUîûØæ mÇnDZJ,ÔôÜ–÷uÎn!ñ.Õ —Þ'N ß]P
+|O9në:±µ€÷û!%C{Fö€„O“ÓÊé³ìâ¼"9´X<~ÕwÆŸ™, ØW&3ÇøR¡‹$Ž˜<›WŽßUê°P4ËTò*0Vô·Ñc›ÏKÞ2©h ž‰ßÆ©‡_ÍÛŒÄ)eØ}1—Øm±9µ~GWÓuåMYaEÇoFŒŽ0\…Æ…ãA„÷äê
+î¤
+endstream
+endobj
+668 0 obj
+<<
+/Type /Page
+/Contents 669 0 R
+/Resources 667 0 R
+/MediaBox [0 0 612 792]
+/Parent 659 0 R
+>>
+endobj
+670 0 obj
+<<
+/D [668 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+142 0 obj
+<<
+/D [668 0 R /XYZ 133.768 560.383 null]
+>>
+endobj
+671 0 obj
+<<
+/D [668 0 R /XYZ 133.768 530.058 null]
+>>
+endobj
+146 0 obj
+<<
+/D [668 0 R /XYZ 133.768 306.57 null]
+>>
+endobj
+667 0 obj
+<<
+/Font << /F33 305 0 R /F75 304 0 R /F41 310 0 R /F78 308 0 R /F44 426 0 R /F38 309 0 R /F45 427 0 R /F74 303 0 R /F110 501 0 R /F100 405 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+674 0 obj
<<
/Length 2126
/Filter /FlateDecode
>>
stream
-xÚ¥X[oã6~ϯÐ[e bÅ‹$j‹ÁîØì¶o‹ ú’ PŦcadÉåIŒÁü÷žÃCÊR¬™dÚ“âåÜx.ßq=Fiôß«ô+ãÏ·W?Þh•¬ÌEÝn#ži–Y”g2‹n7Ñ]üKµ©·ÛÙ®’LdñgÕ¦¯·}|™mÙãƒ]÷I{Ü<ZyGCJÃþnÝßþúã('2$B±2-¢„—,+J’á—U"¥ŒwÕJñ§•Ð±¡•jª5~ïÌƯà â¶Ú›k"?W1ÕL¤9ÀJ\Ê!s–sÎ]“ÀCGL†]m‰5+CÝ>:nF~Á>Qš¥Bƒ–)KU~¶ð1Æf^0vó|wº?ïÝ“¤RMU’Š¥:HúŽN¨tr"‡ý2øfÜŸáSÉ´`ZI°;‡·—ᬞc19«Y¶J
-&á¡ÜÁˆy|ãLðŸÛ«?®8°K#‰2gŠË(+Ó‚GëýÕÝ}m`ó×(e²ÔÑ“;º=XŒÓ¨‰Þ_ýŸÜsÆV”S921UæSÎÏ ½BG`h­ù¨Žô>!Á(e!5=À èx©?xZrL®Aç™Ó!:lÝ®ÁÑYòŽÜòDssrÞNì -S„Ô‡?Ñ‹ÌÞÒÎÆÌ<6·}·§½ñºy>€ÛõÆÚºki©hüã;USH¥2õ
-”]†êµK³´×› ¨³ðºôjBàþÞô8çþMa2@:žpiª\Vp 3ï
-Ú)šŒW@C¦gèniüË@‹Oxµ;6ž—=BaÈ×f¼Ú’0ðÒ rW›™?ª³ûóU®Î¡…ß
-ÂX¯âDg+öùUy¾>!ç/ÏwÏïøk¨±,OÅ_€³"
-8}¡y©ÁhLHœR‡ÄÉ A!-*>ŽÐÑ•^˜œ}×Æ_úùè‰Ö[ºÓæJÏÆÓte1`¥ŠíŽK`E(çd'-ÆG¥eÿ`°^û•ª ߤ<ÎÏž+ ²ô` ®+¤fQL›‘Iòþöî·û7Î!D }vøÑ%„qbÙ¥>ChüG\²®•&MÓ…6SŒ«sߟ‹øýeÖ…v›¡J––å7ûŒÔ5õ³¬;ã:’’ŒòÌ—C"Zh38˳‡,Þ”/hÙV‰‚¥áÕ[²++y Ùµ ÆÁÌ£uÀNECQÄ.öŒ6ÕGÌ =†K0Zãþ+²ôå
+xÚ½Y[oë6~ϯÐCÊ@ÌÃ;©=8Àî›^P »[¿¥ªXr¬Ö¶RIÎ¥9ç¿ï I9’-Û:éö<Q&‡ÃáܾšFw¾¹ aüçìâÝ•°QBÍu4[DLb´´2„ Ͳè:þ0¹™}ÿîJÊ¡&Ô&ÀÄüL 4¬ËŒŒ¢iB ¼þî錉³/ž˜HÍ`&‰ÔI4íP-êâ_³‹ß/HB#qʼnI"-±6š¯/®oh”ÁÒ÷%"±Ñ£#\G\¦|®¢Ÿ.þãÑ;®å$8Nõdï)L+yGt@tƨ–æ)(Àv ˆNdÄÌz¢bà$A]v¨^ÕÞS'Jl€'ǵ 'Âõ…Ó‰#zDŒ1äeäiséæ2g­•(b„a.–2œ0W˪o¯©Òƒ
+gŒ( >Ôxï¢
+¤$LñÏÖ$‡ °/¥H·æ‰x£ß÷½¬eÕUä¿>£l3ƽõX÷¶‡î-D‡Ù”SE¸ÁpaD¨Àp6±".'Sˆíx=á6~ößù3þÈýû´Ê7ø»YæuñG±™°øÎ/Õy¾®ýçv³Éçy]§Uàt02ØU’yZç—ð©m|»mºTyûp/W«rÂMüXlîœïL™$ dÛ)h.QÁìHS¥·+Ø(„p&Ikÿ\…ž«_²ª›Kÿ+ËévÕþªó¦ƒP¹sžD÷@Ô­º‘EIÂ9ÈS<Èò3òìÍ•ûÌŠÅâþšß\½°w³O—8õû6Í|FÁÜÆúWÙí!Ù9²Û‚ÏPü×­¯¢Ü xÖThˆ® ÿ$¦QKÀŸ¤é1¡­GAZ ºH’’¥d¤¸!J‹SÁ-$œŸÊ’-/¦]ÖjCª°Ä*Ý}˜ °a;­9Ôè0\ÑdL–Mö²,o…4+’/bŒ„¹Šf„1€"ò$d^cŒ!Z%²AÑËö ÑÓ
+ÃO¡zpÆk§*°N¨ýÒ2_e¼ÜÔMÚj×|9bñ¼¦À{àd–Wðs4…¿eM†Džu« ¸ºwÑné
+UÉ®’Yå‹Æÿ"~¸2‚çñßÀÉ:,ªânx|ÜÞ¸Ùfw X¦Ìn/õÃzªÑCÑ? ÕÜJm»Wf=.ó*ïÙOÄ¿Ü>Äó¯ýÄd FM«tÞ¸ø3ÁîÛÿ\ô\a“®S— º§x†Pð~DƸ‰°®gH Õ>Zê’äå
+³ÊÓå3æŽOO×OØÍé*”)Lè¯0ýÆú¬YàZÀ« O9çLÎuýÜç¼P¼wк£AnB‹}÷Š$cˆ¥Æ8<ç~["©>S$q˜á–ʇúzÙkV°½…“aÓ®‰d²u}{dÚŒ¢ÞklÁ ¡¡C×ýÇ.šK¢˜Ý™ Eƒ[J°%b®e¶­Œ°Ñã9‹ëUZ#ü‚‘$÷j브¿ó+Ð{n~óôA,€,
+
+b”v­®ˆyUb Y±š(<èP™ÐKQ¹ ›[(ùP2ÿ†ÑÔ8RèÀMB5E ŽG‚‚Zp(ˆ¡t–ÐG)
+ÕxȯÂöˆ aø.“9*
endstream
endobj
-473 0 obj
+673 0 obj
<<
/Type /Page
-/Contents 474 0 R
-/Resources 472 0 R
+/Contents 674 0 R
+/Resources 672 0 R
/MediaBox [0 0 612 792]
-/Parent 438 0 R
+/Parent 659 0 R
>>
endobj
-475 0 obj
+675 0 obj
<<
-/D [473 0 R /XYZ 132.768 705.06 null]
+/D [673 0 R /XYZ 132.768 705.06 null]
>>
endobj
-134 0 obj
+150 0 obj
<<
-/D [473 0 R /XYZ 133.768 320.779 null]
+/D [673 0 R /XYZ 133.768 500.234 null]
>>
endobj
-472 0 obj
+672 0 obj
<<
-/Font << /F88 216 0 R /F29 215 0 R /F34 295 0 R /F40 296 0 R /F41 298 0 R /F37 271 0 R /F83 293 0 R /F82 294 0 R /F81 214 0 R >>
+/Font << /F38 309 0 R /F44 426 0 R /F41 310 0 R /F76 307 0 R /F78 308 0 R /F33 305 0 R /F75 304 0 R /F74 303 0 R /F45 427 0 R /F100 405 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-479 0 obj
+678 0 obj
<<
-/Length 2536
+/Length 2186
/Filter /FlateDecode
>>
stream
-xÚ­Y[oÛF~÷¯àCÐh4™û Ø]x“M^ŠmÜö! PZ¤,b)Q%©ÚFÿ¾çÌ oÒØN³û p8œë¹|ç;G4¹Mhòö‚†ç?®/^½áY’‘Ls\o&-1Œ'ZÂ…J®‹äcúë¥iy¹âðXç{lÈtß\r›ÞùÞ»¶êË—ÐÎdºiZßÙoK?´ËwavyŸï5ŒütýþÕkç;›ŒXÎá\nÏߘEµÙCß“×ùä'-Žk5QŒ sî¶ÕµõÛUwÉÒC_r“>t8=Œpc’c$Sá‚yç×–l~ A¬2‰%Ô„#QJÃÁE¢If„Åq’d0b% “aàß.Wš¥pìÅ?¯/þ¸ÀÒ„%LqØ<K´4Ä–¬w?Ѥ€ïJDf“;7t—0J¤Æyuòáâß^S‹m§µ±RM;óô:vJà¶piEÕx¹Ž œj'tÏ/ÉÖÁà̆A }% è lAÙ2Ó^ÿ23iw=Ütë¶:ô¾4ã†Ü ¦Ò²ïËÖw\GÓU}ÕìaVYø ù¾Ö÷‹À·GÖú
-Ù{­‹Œ0«—JÆ{3Æf ¦-„Hy Mèͺ²ÃN '€ã¾]”mõç¥ÒiÞç’ ɹÈ)X›"Ff~?Eá—pEÓ+·€–~ÁS· 8ȦmvØ’éÕKß㡬û|ö~…ï¥ÀŽÌaÃŽïÐU3–æEáå o<훈÷iN´çÎG"»8ƒÇÆ|Ù L9 À…ÖM¹ÙÄ–‚¦ÑÃÈ-ø¡;p¿mËÒ7T¸Ÿ™ÑùÁ/åˆ7ǪîWÕ>²…DŽgñJk+P&`Bï·
-u¬PH–§ÅÃ>ßUë€(ˆÂçî“LˆñŒ»@³Êë˜]RbÅa›˜+B¨ÐÙh™Ýñ¦ëó=Ü¡Œ,§¸Äˆ K5È1ðÇn€Ã<Üïx@ñÀ€vweDu+À§ì‰x®â‚·r„œj€ü:_—¾Ùl"ë-’|´"v3aÂ
-‘ÃñTè¡}éù(5KæòîÃ1,ÌÇ®—»ìé?ù퀄‡ vP9Ia‚0Gœ<Ì’D¹îþ½†Ð²%!M¤_…`ŠX°'Ä/ªõRYE¹ñ
-.ø]ô€˜ý|“ûPª!ž®¹ð“Å51?Ð#‹\‰p.¿b­ÖJ
-"Õ€rNªF¼t®Î»mÈÏ…,j9*@ú™â«`"$ €Õw!!³~; ¨ö˜W®Ëˆ=¯ù=,þ Xb3²“ð6˜"~Àƒqík{¾ë¼œç¸4B9#Æ“JÚggaF~Àš³Ïå÷…/t óÁíîüÜEå8ÓPt¬|± Î' {å¾$ÐúVÞÞwaÂK¤Zœ¤öß6M]Õyœ h²î±Xå&vàÖõeZèùý
-×£fCŠ(Ë…LcbñcR®¨+ä@}7HjL¼ :~ñ²Ç–7‰¶s\;Ø@'üºK>¹‰ý·!æ…À' ¢ÒYp¥$
-évL¤ä
-,`AS®â*âš0ÅŸª3B*(Ï”“«ÐDÈ쬶L¶€Í2{z®¯X­ WvÞxç„XuS»îl¨Æ‡R-$Ì&;ùKÇÅw©å2kƒžÓ[ ¢±îÏŒÿ¥€h }WÏ݌ȉ­Å ˆœ.Šñ9Ð>õH) ! ø±&}ìz/ˆ<f7H‰™<U÷!® JÇ ÝŸ/°(¤&µÎ¸¿ktHE"©)VMøÉŸoÏüÙ€ÑsN)°¨ñ/š¾rÄÌ<†ßÜÚäqÆ*ø*ù&r~üüÈù¹ ­ìÿUÑ_ IÏ£Á7”öÅŠûVÅã.¶0…dg\²ßæx»=‰ãs šè&à¾z¾â.ÁÜ|Ác }ø/À{
+xÚ­ÛnãÆõÝ_Á‡
+QÂ’‚Žv†–¾€Ìo8WÄZ?é·I GÃï”;‚ó º½“’ÞàF†ØvÏ8ÓL’eZûžâÃõ²àÌ],ãLêS^=YÏUI ·Ê>MKBÖ.¤š?¸"óÁUÐ?]_ý|…Hy$"™JçíZ ¦3Ýo¯nnyTÁ!XÒu=:ÐíØáð¨‰>\ýÓwZs².e˜Ñéœòu(óÕŠé±-ì‡B}äJï,èVê,¾C«K´DUÕ˜,6þ/Á]Y7^iÜîÑ–eã•Óm &ÉÞì“-™‘úufºùñöyK劥ù” ë…ó:) ðª¾/Œ`“® Hª ‚eGÅûTn÷¥ˆ%íS2éêò®ñWlSÑÙ=Dí0ú½Kž­…|NË…†4>|ë‹ô\)ЗqåŒgcæ<àcÐèPœfBç'KË pc ®¡p ßãb*n¶¡L†ÃÓIF2 l$B2>ªéÇ€•á‚(0®r„™ JÉ¡fv.§˜(±a¥5´Ì=Ö®Þ´3j ”ÕÒ¿û¦ííì ³,,¨>dÎ1àïE?›”¥ ªè€Á&žÔœëÒ&fHcGW¼‹e.)v––q–ÎÙ„îöaì€pç'˜$<üÀHA¶_Ó±¯Wƒ;t­‡ÝM´hqY!iŸDšCÚª c=Ðà,Ôb{0Lš™ø/p{#Á}“ Ì. ¤!5˵>¥[_û ÃA13¦„Á!øy¨ný‚¢ˆ×àmÓ¸¦ïÑå*<®¬Ësµ«>ÔrrÉĹÅ\‰tÝ“omЀïµfÝÍÊüóº5SÛão_3HIÕC.»ßÇæД<üæ)¹œœ&˦áv@ù s/ÅNbp¤·ûgf[úî›C<ØÖ»‹“à8¼…‘´N`
+ß1ÇÔÅLœ“=3ÂW“²úÏ¡Sü«<vå>éûq*ÿŸ9X¾C̵…¦¾«7ÿˆ_ñ
+@ÐMÄK*=Ù9‘3ö/}ù ±¸¬þ/ÿ®q¸SXÌ0'âj¸Ø
+9ئŠCâ{=ât!\ÓüÃMGï§ô^³ö­Co§œr¿ïZh%JçPÍñUB‘âë#½´Ê“:oN9ŒŠ5þûîÝ\ÓǧÌmð@þžY¯I¦Ý€ù\Œƒðw¸0 HíŸb¦H¿”º cšl™¹$'Te柟ßRæ¬TbÒ’Y1OpÇKþO ¯á<œ)³N¨°ÄesºO ‹ŸWFÃR‘#s¦Æ«ŠÅ àøWqHa
endstream
endobj
-478 0 obj
+677 0 obj
<<
/Type /Page
-/Contents 479 0 R
-/Resources 477 0 R
+/Contents 678 0 R
+/Resources 676 0 R
/MediaBox [0 0 612 792]
-/Parent 482 0 R
-/Annots [ 476 0 R ]
+/Parent 659 0 R
>>
endobj
-476 0 obj
+679 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [187.843 277.638 194.817 289.593]
-/A << /S /GoTo /D (equation.2.6) >>
+/D [677 0 R /XYZ 132.768 705.06 null]
>>
endobj
-480 0 obj
+154 0 obj
<<
-/D [478 0 R /XYZ 132.768 705.06 null]
+/D [677 0 R /XYZ 133.768 502.7 null]
>>
endobj
-138 0 obj
+676 0 obj
<<
-/D [478 0 R /XYZ 133.768 617.594 null]
+/Font << /F75 304 0 R /F33 305 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F78 308 0 R /F76 307 0 R /F74 303 0 R /F45 427 0 R >>
+/ProcSet [ /PDF /Text ]
>>
endobj
-481 0 obj
+682 0 obj
<<
-/D [478 0 R /XYZ 133.768 179.029 null]
+/Length 1782
+/Filter /FlateDecode
>>
+stream
+xÚ¥XKÛ6¾ï¯Ð¡¹X3|K*P (Ú-RôÐ&{H±ÉAk˶
+øàLÆRàÒq𞠹ݵù·NXŒˆ”;¯´Jã½½(‹X\ãeÝaäf—÷Ugðp
+„LŽ¡“ΰ¯ ¶Á H1$Ša?ðJS•ûƒ­zÄ…*o÷E»îy½öqô2£ND&(a£Œj¼ò÷°=¬l ó?,ŠXL’dQÀ2>`™Ù€Eƒ(d}ŠÔSÑ>ŸØÙÃbT“É)¬å}gý†ÏëYËí;ÐöÛ¢*M@kÃIË{Uì:üwçŸ!òæ‘žØSù€Ã,Ó߯ë~»/<»?N´q쟓âû²®1‚°n8žÄ°°˜ãAOè¼¹@'Ä¢bž•©FÏH,Tè÷Sž™(M ƒ§ñ%X:³oA%{)*á´ƒ…“ú¾÷ÃT² •v_ ?®NϹ‘O ´_yÆ
+ˆ‹ùâ/% ¾
+F9VTîË:…3^\î 'îûÒeB0•·M?_é§
+­¡áÅ}ß«:4¾““WØ£q‘›Gßóñ3-¢hÛo|¯§xDÇÑ@¹º¨rHÀÖtæzL<'Û¸›6Q%Ÿí[ÿ°¿¿œ¾ß}9íü0×Ü€²R|ÿC† &0Œ JÙ‚íiB}JxO׋Ҟӟf.̈†8 ¯ ‚ÊÕ¯·W¯,žiÄ"ž1=“špžD›ãÕÝmažŒˆ,>¹­Ç(!Yfy«¢·WaKyÂ×HŠið¾Eö·@MØb™Œ@ÍiÊI…ž‘Ôæ4T¹’ŽÊô99©ÖÏË)XBÒ,["'Pú9GR¡œï&;Ϲà‡¼pÍx¸Ä{:9ÜþËM
+endstream
endobj
-477 0 obj
+681 0 obj
+<<
+/Type /Page
+/Contents 682 0 R
+/Resources 680 0 R
+/MediaBox [0 0 612 792]
+/Parent 659 0 R
+>>
+endobj
+683 0 obj
+<<
+/D [681 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+158 0 obj
+<<
+/D [681 0 R /XYZ 133.768 593.195 null]
+>>
+endobj
+680 0 obj
<<
-/Font << /F29 215 0 R /F88 216 0 R /F41 298 0 R /F83 293 0 R /F81 214 0 R /F90 267 0 R /F37 271 0 R /F34 295 0 R /F40 296 0 R /F95 313 0 R >>
+/Font << /F33 305 0 R /F75 304 0 R /F74 303 0 R /F38 309 0 R /F41 310 0 R /F44 426 0 R /F45 427 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-486 0 obj
+686 0 obj
<<
-/Length 3007
+/Length 2491
/Filter /FlateDecode
>>
stream
-xÚZYoëÆ~÷¯Ð[(ôj2 ×E€ÄÙÚ´h ÈXYì¥H…¤âk\ä¿÷l¤(™¾uòbž93sf9ÛwFÖ«‡•^}y£_ø~zwóñy¾*T‘Útu·[™$Wi–¬Ò$SÖ%«»rõCô£qñ?Âãm»=B3|Ö¾)×›Ä&Ôw[ívÜzÿÛzct¢£÷È/¯nÕoëŸîþ
-ëmŒQEòJ™8·< ¥ï$³ õàÿ˜ÜÛɽ=Ëýø [ÌîeccUè ¾FÅÆðZÿnêÐ÷ëÓqÔ6‰J§¾j˜ìO۵ͣ=·~]'Iä»Ê7Ș¹k»ƒLÜuá—SàÎúi»è tU2¶aÛW‡cÖ&ê°DCËü.Â%ܯ7ð7tKW5ì=H´±
-D„'nø. a#¿¶î6|Uûû:HÏÝe;l@Õ¡B)3º¼uÚz/¢[îö¯õÂÜl ךf°³Iy¨ˆØ\%i>ܲZábljàªaûxÛxÈÍœJÀt¯Î
-»Sµ÷¸»_«&£ñéªþ?ª [[ßX'.lÔyÓ1.O†ï=KDmSOËßç:‰²Ü± ÛªKšÙÂžê ® êtŽ¬ƒ©v‡ßXv}æ¸.ظBÙÜÍ/øö… N•Iì8ðÍ‚¬Té<¿VU¹ ÊÅ*ÓÓšè~ +”Ëìõ¾þ¿4Ñ|¯D¦^ñÅYöÒT+§ ʵ¸i¢RˆJ<ýn¼#£í|=O›ð²[’n •äÅ´eíâ:,…Š<ƒ
-{0¹r0žFßí1.Ħˆè®[t-° 
--÷À¨Hü²ÇÍâ2ÑüPµhs&FaûÇ<rãkî{ÄsÄ
-ýGÜøÒ×uè NŧbW?Z—áüôª{X1ñí—7 ÅRטÈÔhÖ$ý±*…o" x¢'fÒ5Á·¬@.taº&`žzÿz¦·§šBcÉÍ]טO¹vºâ\Á©
-ÆAÈúô„̆¶æl
-D{zØaÛÒæúÐÿÇCüØ “g=óÐGÙÁJ †¶¨†™§)²Û"¿P[ŒÍÒèd¤õjÞ,¤ê›ð>œ “¥
-,Ä7[Ê›&}v
-rö¾+Ñ‘nCuð5†pܯáb‚/—²+"oL]bX˜[·mXLÕq¡òdM9 Èê“EQëêîiÃ-Gû`Ôd¬xqÆQK.a-¹¸ èÍ!¼˜’DHôc5ìyÇÌDŸ ˜šSØ
-nœ+99h7Í®|n4î+29B‘GGDÚ¡ŸÜy Þs1gº`Rô‡ïsæ2*²Êšì™lÊvûÂ¥ÀŒ<»º”ÁEÏë‹Ç„FN›'Jî=ç)ë9Oå
-Fôm}âÝc«¡Ûà \ÀŒ‹ [‘Ðù¡—ž&ÆH
-Úü=¨!Ë¢zAÙ&QI1•JÏ)kSŒÈÇ]ØG=äzÜx$æ8¤*rSd4†~ìÀãÀ†EŒh{“*N¯’(D„ëq/Pê¤âïÁ¹C/áPÆq5½à‡èé¹÷ã!€ž…hÝÑ.¬ƒ»tègÊIJ‰Ï©'¡Gƒû{žWV€v«ûÑ`Áu¢RÓïý±—Àê°¢½
-¬¯þF‘,|/źà f¾ûF01H4o¸çžŠˆ'³ÝãDÊðÍ‚q˜ÊÒbJÇuåB Ó/Yl2Ϧ"~¼~ Zpý”o>¿»ùEJ7³2p_Yš¯ðQ*ÅÕöpóÃOzUB'Ø7ÄÉ|õHCP§ÃPƒëÕw7ÿºR€C™öC24Á $.D?Pš‹LÀn6u€”åšÿ¹œ:¬ÎM'ƒªOöÉÂU\y'Wè®g/Wú"åAsǨ@G??¢N|µ‡sê…ÐX›ÌKdd)F(„Ø¢£äÛb|m‹ñjÆþ^$?|<ŒÂÈ%qáNÄŠ“ VÛŒ¨ÎªÌ^å¶>•ä/±d{ø"^/¶rknó=³êêñR¶kBÆ9œ0Ù+ý)–¾r¹ÊòìUÓGgQü^pFhtŒ©à@
+xÚåZMoãȽûWè°@(Àìeñ#Á
+Q¤*]®fRk‘¥ù,µ™PÚÎ.—³Ñ/û~ëÂD«¦¥u›r½æ±®þVñ]½]´UÙUÝù<6Iõ7K·Õ\FÝ~Ýwü¼(·üÅÕ<Vyä?ß­ñq½½ó8UYt9ÏuÔ𫃦rMýMÓþÉ«ªîæ¤á|þéòŸXR,¥(¬7›µ7ý ½üù}fGëTZX¥ñ…“LXbâ‰\X+r» (‘…ЙdäsJ¾Ìm•mÕc}ÎZG×õ—¹wž¼Gú¾jy ­Çá¡¿qžÓƒG0´¬V%þL“öu¸>²7VJä2ÇU
+›¶ê§yl•>Jm–õªÛ )îßLlr{~‡‹|¸§Wýª-òöáCò‰åò«ÍÇþÈ¥Ö ë}Ç"ÆŒDR‘äù @ê½ÌÄ­Z¨ÜÀwI6È%~‡ŒÉ,"ÅG¹¿Îc™fÑûiFdf4oHŸùQæö/¬ì.¤Ì
+šgVÁÚÆ‹i`R+2›MÁ@Ká«"üÊ„– @öˆµ³_/Ïþ8#x%393*iŽ¯pUP¶Øœ}ø”Ì–x‰ÈºÈg_è†'iÖ³ßÏþÅI ËGÓU%Ø éX#Œ—z†˜³‰=l• ,@ £¢S‰dˆÎ$P±Ja¼–LñEþB“7"T?‡Ðâ%ÕS„ªàæj“ýŸ!T}¡R³4J¸ï%U¶(Dn³§ŠO’‚š¶J`€ ù„¢0’Ûb¸8P‚}5<S+Lª^Ï©†çóX²ƒÌÿ—Oj{BvIú¹„(±SÈb6·¢oBÛ )ƒ‘¹ž m²<·”ìÒÇ+|”É÷±¦°O3kpK
+>¯ò÷ýU·hë]_yJ"“dl‚©< ¨ûc_¶s+A/NõkxA}|ùìØ1•*ЕŠoÜ»›¦«¶ü쨠J%3éåôÆ\'z/Ñð4¦î*ÖÒòÐLj˱Í&õÔÎ;¡Û_ÅÛýòºz—p4möfHé~Õ´$â»HdÛì`]_ù±Þ_‰Õ*bµXLÕŠ-£ËÐL÷~×6´ž/õÒxMKʈ§bxÉc_ên_z=‹†Ж]ï8jìš0Õ¯5Hªgx<²ÎgªxãtÕñ«f™Pœ¦ÃbC‘œ‰¬ÿíHž"l¬MøÍg³Xj+RSP^5õéT $0‘bri“èïÍfW.ú‰²
+Ï«ª6;N¶¡c´²½ÞoªÇ3]=œKíÖå¢zÑ¥`)HGßMKb¹œš^™L!²L¾æÈIž9»!ëÛPã¿õ(z´%ñHŠÞ…ZÜf iüN JµœFÁ?hËÒ$rH©»á@ºIÙ9XÚÑ
+&æØ[ õ™À4Tqšƒê3µó<m‹'«q:/È€›ûRL¶6<HŠŽÒÔ«,þBÝÆÕ:È5òϱ~ ‚qöü*S¡“ôì×kÇõ¿Ò2’ æw‹}בûœÙjVŽà©¦CÅ÷Ãìú¶Ú6›š²­'îc¾–ü妾uëÆÈÀܸçŽvÄ1Jä؇¢g+7åÎgÉÁêá7eûÙç{Ï^†„!²C{L>pŸ•¯% ºîdþ”Á'LÝÕ˜¹gž¹_œ3Yw‘]­ûrô|AÏôh~ŒËG.h•eQíû+ßípð¿B ·Ø¯iôÕmïoK¾œz7^ן}$GTÏÏé•ÐÏÔ†»îáÜ4®©ÍÒˆ
endstream
endobj
-485 0 obj
+685 0 obj
<<
/Type /Page
-/Contents 486 0 R
-/Resources 484 0 R
+/Contents 686 0 R
+/Resources 684 0 R
/MediaBox [0 0 612 792]
-/Parent 482 0 R
-/Annots [ 483 0 R ]
+/Parent 688 0 R
>>
endobj
-483 0 obj
+687 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [233.082 514.97 240.056 525.763]
-/A << /S /GoTo /D (section.2) >>
+/D [685 0 R /XYZ 132.768 705.06 null]
>>
endobj
-487 0 obj
+162 0 obj
<<
-/D [485 0 R /XYZ 132.768 705.06 null]
+/D [685 0 R /XYZ 133.768 523.582 null]
>>
endobj
-142 0 obj
+166 0 obj
<<
-/D [485 0 R /XYZ 133.768 560.258 null]
+/D [685 0 R /XYZ 133.768 298.738 null]
>>
endobj
-484 0 obj
+684 0 obj
<<
-/Font << /F88 216 0 R /F29 215 0 R /F80 213 0 R /F102 342 0 R /F90 267 0 R /F81 214 0 R /F104 488 0 R >>
+/Font << /F33 305 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F45 427 0 R /F41 310 0 R /F76 307 0 R /F78 308 0 R /F100 405 0 R /F74 303 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-492 0 obj
+691 0 obj
<<
-/Length 2553
+/Length 2419
/Filter /FlateDecode
>>
stream
-xÚµYßã¶~ß¿B/ÅÉÀ™EJ¢Ò¦@\‚+Ú mm€\´’¼N–IÞ=ãÿ½ßp(Y²µwW}YGCr8œßpïÑ ¼î÷ûÝýÝW߇©—Š4cï~çI¥D/ŽªÈ»/¼_ü¿wí&4þSU”Åf«’Ø?oÂÄoOþºùõþ/_}oR/i¢ -¡#é…"ˆR^å[–Zl§…2±·IÝ“”‰HiâK­™ÿfâGÞŒý3kPTýÐU§¡jâ$þûÆêüܳ@ö°ÙbØž†Å6ÒïXþh¿—]V»ÙJ¿‘Õüq(?v<qèÊò5Hî¾l¬V[£DàRŠ4rFËœQÌì¸F¨@ÁòV@ånÅ$¡¡G¡wÒu‰ý”òu–Û
-š  žð–Ü%H(2)NyÀWÅN9}3OûO›(ò³®Zˆ%Y»©(ô̲ÆÄï‰Â»ÅvÙ©œDQa’*»r¾Ò®kn}Û»yýé¸å°—Z¤HD {ëŠbTŽQ¦¦X\!Œ'ÉÍ®\]$…1Ñ(yÌrÒñ}öH™(
-ÎDÓN– täñ4˜[„9Uó)ͤÑ"FbþŒ‡G"Qê68‘)T R8?[Æ¥Š~ßžj˜&L“K~¢Õ™ˆ¶qD_CÕ<.>¿A XÎxs”öíìL²†ÕLƒ¹šˆDNÖ+Çá¼v¤£ žŸÆšÏ.Û=N©ÑéÔ²JëæC¤!”\zÆ;©4]òº1u$d<唼=²¦øzD—`ºÚ-!¢hb3in7ƒ‹DþÇßíÕÈ@èøJ±—/ËïËóVòôoøç)«OåV¾¶3‚[épE:\•B¼´H³²ˆ+´s%[ý¾–êT$P ›$Y”ƒØçl{Þ"y
- Û»v%¤Âf™åà‹¼Ön# …‚£jån»«êòöŽ0Q‘ÌÒ;þDMv(ÿ¼¦? ©šíÑåv¡=éµóž¿í ^QÕDH¤¹­Z'JY9êãdÞÕ²žWe
-4ET¡Ó)gH…YÇ>è$œ¤ÃéÔ寳­
-â>[³uN&Gà S¨%Âðêå£ok› ts…Å/
-| *5Þ³=@$ÚPoV{?Ýýƒÿ”†Ài’¸‚”CPŠªÙ£.䤗@.ŒlQQÁŽ-¶Ê䂨d|AT’ŸÿR{` ¬-åhK0z™,à%$Ðd¸>p®€ŒAÏŸ©'“¾8»•# ÃXÍáäê²pÑÛNO T?¼´ê”ÝøTô^ 4D€œ›t¬jbt¸)
-𽓊H/
-ñBãvƒ¤VÔR¢I—¼˜R×^ùy{'5
+xÚµYëoã¸ÿž¿Â@8sù) ¸æ¶¸¢è¡mÐ/Ù
+Øköü0ª<Í· Ù¥äôhç~pêŠ&›#N$6_ÙRNV(PcÜ/@ Ý6uAb>®a
+˜Ž‚üWÁÕðþè1IÈu¿”ÜUí“ÅDóðU1¯ÿ?bΨœ‰I}ªˆˆ ÃšæÊC%&*dßC¥õèM“0 'ìÒ­Uø?×$¦ñ<R¬c $èE_Ñ—³:Ù¹Éæñ
+Ε¥à×½ éì0$þyn¢"<.&T ǘåvf¡-¹&O8®÷Õs{ÕÏÝ”]ÛÚLJY£Ãñ&­Úg’u‘Ì6âËGÕ‚K£wí½cwMÁPHEÂ>Ù]{ì¦!'ŽÄ7úûåæâËNÓ[p‘̆à’Z/6åÅí]¤ð⟈8Z<˜¥å‚q¢ ¹bñ÷‹¿Ú<ã‹«Ä ¡„…üm¶Ø¹;Est 9WÕ,ÊÑŒÃ*íý´¯^“3V$–á7ÉII˹œ³ƒ9¨_s6—ÓÞúÃGi>ØU bj‡±\£óº†¤r¨µ_)TŸ›ü¼&qÈ‚0
+EÝ(Öp Q ŽÔœ‹¹úì´¬£É¢838Ä
+ÎÔ±]öè1l ˆ å4sòH¦‰$@{çáý‘g¬K5yÎú”+M"àf59ð;˜šérÆõV8õk$0®#Äsø ~Ȫ gmƒ˜Àñ³Ç¤<By*\ ô®:T¶¦íÒ“sÏ­]“æàÈpß#¨ÍûàʾtV€­ˆåŠº-–ÙŸ…ʵ3² ð·„j
+þ÷œ†|é08@¬¨‚^5röÇB·©²íÖ#{È
+ÒÊDé¦+vA‚`Ö Öæ{Õµn}†ØÕ`Oç)t†Ú¡ ÆÃy&Ë`†É?ocþ[wîä¼:-0®Û½… 7õgðÃfš*wv@\̵°Lã Ý'nTY ãÐjLn@0ÎøŒ+sæ^º¼p»·uUö}P™ p41Šÿ†a$ÀÍxHà¡ÍÛÎÙ ¹tÂFPÌùÖBÏ„Á1©Û|Ó ÊÅÀÊRÚ㶸ª)’fïÀ÷:Ù W¹‰ª.ÁGW’ÇÁ§edò®Ùd‚¡È Ci šªÌì†^{°¤­lÃpèÏÝù=uÒp|ôy´wlÐ…Ž BS5EÐhÆ øR†uDÅ6
+5ΠÝjhºD"$5Èjf©“ºCÈ%u A n3Ýɾä>…êˆ(=°aÿ
+-à)>Ú`æѦ\óà!o÷ö`WN›&_;D„³Ùc['vØ€OÛ*âí“å)Ë]uÀyêvµûºêv®xÆ-¨yQ°¥ÊJ¡„/%
+ ÐnãZÖŒìˆïôˆ“PÇÓ$W$‡]_>æå^Aë'Þe~™„7T¯#ñ³láÒayš„JJºLšÖûéWûØ”0\(ì‘6E—T5¥°­Š¢2wÚÖ½à[ß5 ö4ÛKa)IMÏ .ƒ©2/óËò¥é^‰C
endstream
endobj
-491 0 obj
+690 0 obj
<<
/Type /Page
-/Contents 492 0 R
-/Resources 490 0 R
+/Contents 691 0 R
+/Resources 689 0 R
/MediaBox [0 0 612 792]
-/Parent 482 0 R
-/Annots [ 489 0 R ]
+/Parent 688 0 R
>>
endobj
-489 0 obj
+692 0 obj
+<<
+/D [690 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+170 0 obj
+<<
+/D [690 0 R /XYZ 133.768 475.863 null]
+>>
+endobj
+689 0 obj
+<<
+/Font << /F75 304 0 R /F33 305 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F102 447 0 R /F76 307 0 R /F78 308 0 R /F92 356 0 R /F100 405 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+698 0 obj
+<<
+/Length 2642
+/Filter /FlateDecode
+>>
+stream
+xÚµYK“Û¸¾Ï¯àQªa‰›rÕ–³ñÆ©=$›¹¤f}àˆÔˆk‰THÊã)¯ÿ{ºÑ >$x=N*'@³4º¿þŒ£Ç(Ž~º‰ùùúîæ»7ZG¹È•Dw»Hj-Ò$‹›
+¥mtWF÷«»u¦WU?ÔÍãz£µ^ ûŠ^šê‰^¶íñX4åíúÝÝß¾{“Ú¹J‹<‡ùœ®_¥6¯»â}5èbvˆDj/zKªëk•ÁüØ40wÝÓ@Y÷§CcÏߣ²q[þy±M®„Ìm´i-§õܯ7VÙÙÒ>áëi_ßⳬw»Ó½z÷éóàÚ§¾þ<}ðŽ·‘Íwœ'"3Öïã‰3IDœe£Mb+Yf±^©¬Ð9<¥° Ͳڰ¬œÉ¦ÂÊ$ˆM:J&­ ™'“xAéTÂr6VäiöMÝé²ûb]2–¥xºÜYýåîæß7”Ä‘ŒTž‰8Î#8|‘Ú<ÚoîßÅQ ƒ0Ø ‹žœè®t‘CôÏ›/fuÅ°EïÁ?À%+v¹4óç)ˆç"ËM¤Dæ÷§‚6ÓÊF2&Vÿ›‘g2ÒÂd£œ‰«B'K£‹#·°ÚÈ\ Ç°1ñ´…?·ÇSÑÕ}Û¬7*ÉVOõ°Ç·Ü…÷uƒ ½(Žs7‹26îvG³…çH¥Èí8_Ô{¶£þS±Ex_<V
+ˆªâá
+F‰jÊÔX-’D½ˆ›XÄirUÝ£ò½çâœBT¦gIž]i^4Ž‹Ÿ÷Ì<ïAÃW;2†K4'ïø›{õÕ 5¯añƒ”u?x–9Ÿj žÄ«œØ9CÕ‰
+!G; €ç¬O ªÏðÍ1~Àƹ!°¿¥ÂÅød¥hÃw^ú;êŸB)Âßµ‡ƒ7ºá;÷ÒsÝ{QºMU¼ö—èU†K"mf¹ßÆ hÔ¾m͸¤¿€Ö25ó Ö¯¢õ3´Æs챤qï=ÜøÆá#á
+ä‹5ìN!`#>þRýu¼ØÛÿ]Åo ™H'o»à‘
+3üð•aÊì<ËAÑ~º ÁÆÅå¢M&ÄôC«aÝö¢Ü™
+endstream
+endobj
+697 0 obj
+<<
+/Type /Page
+/Contents 698 0 R
+/Resources 696 0 R
+/MediaBox [0 0 612 792]
+/Parent 688 0 R
+/Annots [ 693 0 R 694 0 R 695 0 R ]
+>>
+endobj
+693 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [201.709 588.044 208.17 598.043]
-/A << /S /GoTo /D (Hfootnote.8) >>
+/Rect [210.524 419.959 240.744 430.751]
+/A << /S /GoTo /D (subsubsection.3.3.2.3) >>
>>
endobj
-493 0 obj
+694 0 obj
<<
-/D [491 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.594 287.087 160.065 299.042]
+/A << /S /GoTo /D (subsection.3.3.1) >>
>>
endobj
-146 0 obj
+695 0 obj
<<
-/D [491 0 R /XYZ 133.768 629.402 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.594 176.095 160.065 186.888]
+/A << /S /GoTo /D (subsection.3.4.1) >>
>>
endobj
-150 0 obj
+699 0 obj
<<
-/D [491 0 R /XYZ 133.768 373.909 null]
+/D [697 0 R /XYZ 132.768 705.06 null]
>>
endobj
-494 0 obj
+174 0 obj
<<
-/D [491 0 R /XYZ 149.011 138.185 null]
+/D [697 0 R /XYZ 133.768 543.841 null]
>>
endobj
-490 0 obj
+696 0 obj
<<
-/Font << /F29 215 0 R /F89 255 0 R /F88 216 0 R /F81 214 0 R /F102 342 0 R /F90 267 0 R /F92 279 0 R /F91 281 0 R /F101 337 0 R >>
+/Font << /F33 305 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F45 427 0 R /F41 310 0 R /F76 307 0 R /F92 356 0 R /F100 405 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-500 0 obj
+704 0 obj
<<
-/Length 2614
+/Length 2436
/Filter /FlateDecode
>>
stream
-xÚ­YmoãÆþî_ÁB¡Ö†ûÆÝÍ¡hÓ48(¤g’
-æàÁ5<ãtäsÓqEUÃR¦MH•*-h¢ó;¿é«¦¦ŸÛ¶Ù/Ï•`¹qÏÈ_—Íæ Ö2Çóá‹—fp“*¸e-$gÚéd-|•ÓÖ|\þµ¾¥oAÄ’§}Uìë:ª*|qÁ߶°tIs¾ß°b2x‹3+è…·+ ’h÷pŸ2&ÝUïQNžÎI39§Akjd¢|\¸šk–ËqK³]¤›Í¡¥»ë¦§ ^ÈǙҷÕÃJçiÑÃìÆGznñ °ÕÌÏ4`°ñæA»þ±ï‚\ ½dI{›Ðàïß‚7X—äÌiƒjÍ$7‰d96âÂÉÁNXsL[TÎqû¶iÉà$hÎX .jÎ?ûû¿$SRiàï[ßuGƒK¦&Ø7}±£ayÔ9òVѼzIE<¦r
-ΙÖ*jꇸSÍ5e¤4õÇ¥»€)ÎAb&Þógtö4\vñÍõůQÆ<9¼fy/2¼Ù_üôK–”°ø]’1élò!lÝC b¹ÀgwÉ»‹)HÍ^…¸
-'®²ía×Wkˆ„:-ÚjÅÓâ&$»WpjÕ$º9œ„€d1Ðó¬AZ×·œ%’/\¸Î cne|Ð,ì…7
-„J8¹Më¸õ‹2FáŽY]g WIfÍQ¼o@¾¹ €$OÃhX'7 Ål.'W/Q©H=If¤:¸›+3˜å—KfÉ­b
-
-û Í-z
-ñë@÷ÝÅ ‹3ÓÒdwK¿÷a³ŸµiAÓ™ Ñ@fŽ°NÌ'sƒñÀÖ,T¿úö®¸ïh=Ú]fω–nòãUb~l?‡PkØÌÅà\/2&Tô¯¨.&×»P/"É
-F•gX'˜¹Ôº<ß )¦¡`wÔ´ÃËð8´µP~°Ž"4“ `ÁÑßcØ›5ó†¿x¸2„x¹™ ߊy7[“€IM¬W±=þYàbF瀪œÉx¨íü±Ìò¸ë
-èQý>“ÂìÅø,°çm…b4ú5þ•s‹Í¯çOÁì¨&êœÃ;e[¬$”yô¿ܵǟO´X@’„¸Ú§ÒÕ ô…
-#H_!¬à¸¹ÁÝÑqmBIE·`
-­€’V«>:;çëõµ5´UöÕÐé׊þM
-££‹KÀH­oc¯×›mx6eK&¹3åöLNÒˆ2'7Ít»æ9gÀì
-Å ÊÿH‰&ñÍ8Îzœþ'‘àÛ¶iÙtsR’
-c–‡.¤4#Õihø/Sž[
+xÚYKÜ6¾ûWô-`š–(êuØKvãÀ‹
+­aèҲLJ(6µ;ÔNtüÎÅážËAÊJʆ‹/2ù ‰…ʤ‘È–ò¾¿_GÖB÷çýðÜ>ö°SMþ·ª¹¸ßúNX·ký¾»ÔGËeYÄE{3~yÞ— ÓUœÇkM<_ÖÝÞDèœUs©íÀ-r!¬4 kxÅ&ÊW[6|b½ØõJùQªU–Ífýu¿7I•Éòi¥ënDÂ3ý$Ué—"çá$º >¼mÚ¸ÙÔøŠÉo.—ÀÈ“EÃy8•$VlKî´yf
+H“Mgþãý»Ÿ6ŽÕ @ç,iz¹íà›cëå;böuµÁÊÔ:ÎÈ7"Ø-ÜùãŽ+?ÿøv¤Y9:D˜D¸¡.´æzcK<Šñd¸Š#à©U:;€˜Ó
+—»Ei¦R³0-ƒ•Iû(WqÁ3ÿCA«ÑëÀJ a¬«9jêÀ¸äø…µ¦d®%««¨• 7 t½Ì8-¬„g ¨ÛŽ›ýãXºÎʺ¶÷–kƒk1:n\Ð#› ìG>MzÃr !BȽZâuü7ÖöG ±¢÷ßÉà×TÇ©JââuMƒ‚M8£»žuæ/ö§ò<pÏÊy¸‹­³ÛÛ`
+œëâÿ=Có©ÇÓÉ-kÇß EÑ©ÒQ¾ÖÀ©D¹Êt¸@©&ƒ„s ›r!8Bú×ÄŽ”.¢±ùÈÙ3¤ÌB€P
+$¥Ô9#‡åv)–Ã
+ Qày«^䘀cà¦
endstream
endobj
-499 0 obj
+703 0 obj
<<
/Type /Page
-/Contents 500 0 R
-/Resources 498 0 R
+/Contents 704 0 R
+/Resources 702 0 R
/MediaBox [0 0 612 792]
-/Parent 482 0 R
-/Annots [ 495 0 R 496 0 R 497 0 R ]
+/Parent 688 0 R
+/Annots [ 700 0 R 701 0 R ]
>>
endobj
-495 0 obj
+700 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [454.971 587.58 461.433 599.517]
-/A << /S /GoTo /D (Hfootnote.9) >>
+/Rect [390.371 518.257 405.094 530.212]
+/A << /S /GoTo /D (section.4.1) >>
>>
endobj
-496 0 obj
+701 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [210.37 351.327 220.803 363.264]
-/A << /S /GoTo /D (Hfootnote.10) >>
+/Rect [227.056 205.326 249.527 216.326]
+/A << /S /GoTo /D (subsection.3.3.1) >>
>>
endobj
-497 0 obj
+705 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [372.007 259.222 378.981 270.014]
-/A << /S /GoTo /D (section.5) >>
+/D [703 0 R /XYZ 132.768 705.06 null]
>>
endobj
-501 0 obj
+178 0 obj
<<
-/D [499 0 R /XYZ 132.768 705.06 null]
+/D [703 0 R /XYZ 133.768 481.955 null]
>>
endobj
-154 0 obj
+702 0 obj
<<
-/D [499 0 R /XYZ 133.768 628.33 null]
+/Font << /F33 305 0 R /F100 405 0 R /F75 304 0 R /F92 356 0 R /F110 501 0 R >>
+/ProcSet [ /PDF /Text ]
>>
endobj
-158 0 obj
+708 0 obj
<<
-/D [499 0 R /XYZ 133.768 304.51 null]
+/Length 968
+/Filter /FlateDecode
>>
+stream
+xÚVKÛ6¾ï¯ÐQVŒ(Šz È¥h7Ø¢è¡ð-É–(‹ˆE­»Hûß;£¡¼kÇι˜œÑ¼ç›¡ã`ÄÁ‡»øÆùëöîÝC.ƒ’•Y’Û&à2eYd2g‰Á¶>†Ÿ¸HçITõEíõæóö€Ç,ÍxqÎJéÅ>¾|9ÿðÛãÃ&’‰ ßÓñŽñMÏýnìÎ>Ö÷7€Âhkm£a®!ŽˆÇ2^Õ8ýLêñ…æì@íÏZw¦ßD Oz˜[§G£ãÜFöÚÆß7lX³o½‘¯†0Í»5n‘å§tã5n:ÿ[T£$fer‘ýçoµišjÔM³H½{âUã"Á™(è
+¶õTã'>‘,ç9Ï8li*ÀŠŒS€>¬šÉyÊjU“
+Fë²Ç ×h«vË*ßób \–®]mØK%ÿ¹–ýrËÝYá‘q³ðœgLÆüÇ•‡§,…áeÆaͳ-UEÄKaIžmÌyБ›ª¬ÀJ$ÝôŽØV&âàŠi8içðI! QÆ°2h¯"æÒN!Öíö”…?wÊ]ÓB©æu±åMhOœžÁƒjÀc^°Œçv*Ϥ~ßÞý7ëjO
+endstream
endobj
-503 0 obj
+707 0 obj
<<
-/D [499 0 R /XYZ 149.011 152.472 null]
+/Type /Page
+/Contents 708 0 R
+/Resources 706 0 R
+/MediaBox [0 0 612 792]
+/Parent 688 0 R
>>
endobj
-504 0 obj
+709 0 obj
<<
-/D [499 0 R /XYZ 149.011 133.543 null]
+/D [707 0 R /XYZ 132.768 705.06 null]
>>
endobj
-498 0 obj
+706 0 obj
<<
-/Font << /F29 215 0 R /F88 216 0 R /F80 213 0 R /F37 271 0 R /F89 255 0 R /F34 295 0 R /F50 502 0 R /F84 314 0 R /F40 296 0 R /F95 313 0 R /F92 279 0 R /F91 281 0 R /F93 282 0 R /F101 337 0 R >>
+/Font << /F75 304 0 R /F33 305 0 R /F100 405 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-507 0 obj
+712 0 obj
<<
-/Length 2601
+/Length 1805
/Filter /FlateDecode
>>
stream
-xÚ­YK䶾ϯ胨i®HJec#Ž7Ù ;‡
-¹ÝI™ÆÑ[­¢b˜š¢Ýî´ÕQÕ¼µ®‡ºÃ/ÔÿóÝ__½QùbÙx³“Vh›ó‚ïš®¬·;•dÑtï*·©…›¢Û*M¼ˆµ‹E²Dè,‡µh÷R'U³ß‹“l˜¤"·ÚmFÞ£ªá¬IWWØ4QÓvIµH’ÔÏÄʾ†mÆé)°O‹$G7ÓX·ûÛÀªÊ%WGoÃשHÕ'/Ú”J?O#NÛìt wÌS¬yêTE#@”iT4mñ¡áj££¢«\eâÒpñ ¯ŸÆiè¹:rÏ:u­‚‹±m÷¤œöÉõÜ÷ÃTÜXœÐ-²w†fjºC@*:–‚µ-ärr¶õ©dv~ôêÂïã4¶Û]’fËÀG)¶;+Óè/=vÑëô;ÜÂ4kчšW(†­Œ\}<ƒ LÙÔΩ³ì¹U?N#÷<øÙ&ªOC=ŽMß¹omÃçÜ<¾ºÅåæÿ| Ü=5B牗SA;Ê8:u…·ÐqtCÁKÝ'¸@ʨy\ÁMRWyž¸sßn·½ä©QÕCÃf45,.·›ƒ­óì©gstGäk>è>üæeŸEp
-ì¡b‘+åÇÝòÚ ˜Ãæ¼*× ü¾¼Úu'x&7;‚ö²ûõßúò|¬»é;/ýT¥óɨñŸß\¹ü†0GÍßBoZ%"3·_ÆûÝ‘…œGwR°Ö Àõ8]‰O4¤›{ÁدVçƒGEͯxžN–jJ…Q³š^óˆ$^Œ0"¶¿˜âVÉVŽS(;¯ò­;Ÿ†¹y¦-í#l¢@Ä"É…_ºˆ¥Ù,9'±òÒ; ~Çdä«ææ⦕sÓïNE9cîs®øŽ^Î
-Ó©
-Þb¼p “5Âêl ™|-Õå
-Ø`¢ Áþ{öзH'àMß ®nÙ‘pW•~^*4ä4áТ%®R°ÍžÒxB?ÂˉCº=Å X£ 0¨ƒc”u…n¯=û¡(™.Ñ”~8Žú@"Ýh0íYâÎÈèGz²ßßÝüû%ÞÈV¼¬ÞèÄŸÙMy¼ùéçxSÁG80Dvó@ChÓ–´ÒnÞÝüÍet–ûjp
-ÿž‡}NÄ å)J¯íÏ-#‚åèm¥óLù*'è¶9¹À ‚‘‘qÀ’0xœ†s9…¢´Âq»§Eô×·_¿„ÒIL¤È<Èé^ñ«ÝåϼZnä%|*þz 15`k˜OÅðrãø”Y˜|ïòÉ]}Xm&™ãf£WA¬{£?£ûL’Ò2.}d²tÝâÍ¡{~í„‚gp+‡–[–Áµ ²ù]zåI²þÌ^"m‚…ÜöPU—~ <'p÷I>óá}6˜eQÛ?Œ¡ç¤EjùG·O?íªºmŽÍ„ר¸·ã }Þ}Š1 ÀŒxw.2NÑM]Ñ< ¡Î»ÔÅÐ6”aÇVÓyÿèüPUw=ˆ¿˜úUnÃò ° šGN^ÚKVšçQVÚ¸¬4‘YÚá­sfîïY9jN5B›Ê‘§é1»è×ö.|ý÷03)¯³Ëxéä¹ý)HîÊ$[ø›D§üÿ žÂçQ°îÓØ[JÑã¹m;7°÷
-JÄ/òrØíȦA¼Â”Ðé•W¾ð«‡]?T>eñÉëqy@MA,t•åy_I™©ÊŸ‰2½Øþ¡\[.÷ùÀ¸±ýÂHõ-&(=9°jÉÚ¥Hka¤“™
-¬¬8ýn1ŠWf
+xÚÅX[ã¶~Ÿ_¡‡
+aÒ»â]XºC…gFHÛ⇫ÿÄ`&U }D—$?6f*ù>w $Ô ¨:ß”e¾:¹ïy0¸vÏCV8€æŸ Y¤·ïóXdÞ—`ñ>‹…BÙþ4X(ÄuŸ eÑWÈò`p¡žÆ)½~@ì«òëlS#ááPy†Ù±©c¹ÝÇ`nSR¸é‘P^MòÂ)gj;aêP'máX%¿7¨
+™“8&+Hž, )c R=îåR«ß•¤áÚ^M;Fªw}<þŽzÜÚe̶}ëg‚ˆ2sCuµý8vÌÁq¬å-4&k3E‡æ8u%¢8žÁpiBµZ"7{qBÑd.+† …ª‚ÚmO+GÀç@zÀਸj–þ˜µK%N`½©t•a…ÕžýÅØXÝRš2¼ä}£3ršÇë|0VÆ?fu@tî6>*#tþ)aôU6Œà£½øá$Æ =*!bEªÃDMë?½‡³<S$ãÿ›¦Û5‡~äç<fxhÞ¡’7S.©ç%åx—nâsÛî›q/µoËYlÆfïÔ„Ïj?å¿êbʽl”@"-Q›åG?|n$Z3ñgÃ8Ê· µ2,YÃa“U_
+ÔK³ûŸr’>/ñ·?BŸöŇ¾ÁÒÈïªQ‚8¥€”I~8ö4°£×t n‹mË4êÇ/!gñËúó!R”ÎÒ¯!ý<Ïi ]TÑó<ñ:šxç?Á í#3"QTÑŽw}{sµÈ\PåΖ»š&lá0?aœiW±bÑŸ ¢£Ê…\zy16ü5Þž\/œŠ-Âm;DªÙ¯³·>Î0ÅÝs®¢}ª[w}GRk×M’PGÓT‘å93V>yÁ„‘ÛEËN¯J¨’y®ƒšHƲãL8>t¨I>(Clóv¾Ìñýžš©>¾b€û4'Ù-Ùe"ü›M-¾cgìzò[[áÕå MÆc0žäá~”VDÿÄrÀæä¹´· ãùê8–Mê+qÞqÒ‰VÇ«´]| ¾€S? ?B…§?hòUwî4Èû\e×ÅS~†ÙAèѬ¾Ïr74®èËyyžˆªóHÌT¢˜W/hÁ¿šîßy&$º)…®J¦S)3Û‚qìÿu£M
endstream
endobj
-506 0 obj
+711 0 obj
<<
/Type /Page
-/Contents 507 0 R
-/Resources 505 0 R
+/Contents 712 0 R
+/Resources 710 0 R
/MediaBox [0 0 612 792]
-/Parent 482 0 R
+/Parent 688 0 R
>>
endobj
-508 0 obj
+713 0 obj
<<
-/D [506 0 R /XYZ 132.768 705.06 null]
+/D [711 0 R /XYZ 132.768 705.06 null]
>>
endobj
-162 0 obj
+182 0 obj
<<
-/D [506 0 R /XYZ 133.768 667.198 null]
+/D [711 0 R /XYZ 133.768 667.198 null]
>>
endobj
-166 0 obj
+186 0 obj
<<
-/D [506 0 R /XYZ 133.768 519.08 null]
+/D [711 0 R /XYZ 133.768 417.236 null]
>>
endobj
-505 0 obj
+710 0 obj
<<
-/Font << /F81 214 0 R /F29 215 0 R /F88 216 0 R /F34 295 0 R /F40 296 0 R /F37 271 0 R /F83 293 0 R /F90 267 0 R /F50 502 0 R /F82 294 0 R >>
+/Font << /F92 356 0 R /F33 305 0 R /F75 304 0 R /F38 309 0 R /F41 310 0 R /F57 714 0 R /F80 456 0 R /F76 307 0 R /F44 426 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-511 0 obj
+722 0 obj
<<
-/Length 2484
+/Length 2461
/Filter /FlateDecode
>>
stream
-xÚµYKs㸾ûWè6TYÄ‚`¶RÙ¤6“T.I\¹x\µ”I,“¢–¤ÖöLÍO7¤(™²lgr"Ð
-;½»ùûE:IYª…ƃÑ$œA'þ352°uÛ§¡R<àøAµ¢i»ñ<ŒðH4Ó89Ë|µZTvµ¹,æL%ýÎ]¶˜
-ÜgkK·duÕXºhUW¥'Ògk§<°Kš´}›¼Üùêé œ#ﲺ ñúIÈ…a<’0à,5]œo×Ó0Åà³ð»Ì?GRÚÚnQ 6Ï
-¤ë`÷ˆ$°°ª¹_mhmUÕt8ÛVp³Ÿìêj]g%M>Ñça
-<²¦Ÿ˜ ªï2lýÂ&_àÆ<ò{KºSÈBÁ·iëýz]8
-N8m
-Á¤·›Ë‡B‚àõ… ÛŠž¾%jV¯÷‚x·ÙZWYÃð×mÖîë¬ø@SÂi¹Ò¤xCLÈžæPͽa K¡Fè\ÌþžgmWUÉÈ`Ex¸ÔuR8ZŠÆ«áZ[o]ö=82'å%«†H¢S¤àÑÉ™#éàÌ¡þ„pšD½f4ÖcÛ&oZ¯=Z¦Dƒ«í&oˆ¶#ù<¹"¢ƒ($d4we ‹S®‘ñðV_ù!˜C?M  tßïŸeÅ9ý4
-˜„Y>ú]ê¨UJ†FIfùöñGèïuB?n¢ƒ/#ŒäÈï²=:ýõæê·+|<’ÐXK¸¿:?9Y”W·wÑd ‹Ü J3yp[Ë à!±˜üûêŸôô‘˜=3AÕÕ?×èàqÄ 1œð8ó-qÐá‰É¿3Ü0kE}¥pÍÏø! +ðéƒÔô§ñF&{¡8÷Âë3âC™öLzu"½|“Þy aÐöùû¾¼˜ÚD±85.<“8}Grsȧ¢Ó®ûå†Øaâûφ†6§
-ÇîgoørN3Š~‡Au²Ó|_S¹…?
- ûÂ]1‚lÆ°XÙºîz8üxæ‘šŠ æ¤Š¤B!ÄëQš¬óeWSì°`úÃk0>tÃW€üõy¿8+¯ýêôgØŸ=¼ø•–4þNÀ¯4‹ñ­àY&Š_~í€ß×VâL(A¼Z‚3Ù‡Éõ P¢/A‰¼ % kêóƒþ¿çè¿ò0r þ—ò ÉL¡!orÅ™¹,xÂR×ÛŸM3LìÿC®ø.HúãaoÉêÒ'¯þð7ǹ< ^‘ôûó@È¡wÃILžtÞCh¾5@PD]K,õÑð¯ÿØ¢_
+xÚÅYK㸾÷¯ða2¶ÅåS¤vC‚ì,&XÈnßæ¨-u[YYòHòt{“ßž*’’,™ýJ²ÈÅ”©b±Xüê)ºº]ÑÕÏÔ¹ºøá­«”¤ OVW7+&щY%J.Ôê*_½®ÖFDÍ:–œE‡®pýÖ>ÐhÓìvY»ÙëuÌMTÜ4­'ËÜ°[Ãô¡ê˸o~Çç¢v/¾¬•Š²¶Ì®«5‹ü¢æÆyù
+Q´@ Kú2ë˦¾„wRDûC? òñêop ˜1’*/40N<cà*„ŒÊG]·Ù¦è~ÄE£&†ñ‡·Z¨C¤Dªts`ÌŒcüÝ:V\E˜yõ€Ã—bópÿíÛ%>>dùÁ.ë·×7Hã^}‡{ƒæÍÉVœrBasêvù“#‘ò„$!Ô˜àU,À†I’Â"O”{.ì„BIù@ð¯µ4:ºˆ£Í‚ƒ¥§¬”%¾÷<ÄLbFGb¯)”i¸- ãþ¶ÞZˆµ€M´¸†«må¾òKƒâ¶Í*G™9¼58ÿeÍ5
+l‘-€ËEB-çÀ|£àWö…{´`Ǫ¬í“ŒŠ
+Á¹CÔé¨ïÜëwnØe¹§·þÉÑâD憼é㼨Êl‘û7ííaçAìfömcí!?l,ìÝú§œ£ÆùEpÚ;÷d÷Ã)Àuž›Œ#
+ŸÄkûÆõÿIž×àÿ”G>gêÕ¶AQÊWÎÏsg©†?kqMŒñÆ^—­!€\­SˆL»}•õCÊÂè) È`ŸBá_ß½ýeæ™—é •^SœhjNbä‡ ÜÿÇ€%KMçËüÁعœô[ÜdPTtÁX1Œ?]]|öáÌ
+ÇÃcF‡Q4u¶úˆt¨tHœÒ¡S}½tÂ8W꤃|¶>Vãe«“FqTnå/iÎÔâÈ“T˜n¤àáàçwü)r—*1–ÎÙ<éh}ÑÆ¿Ø,æùíÑq_$ˆ=Y€õ¯#ë°Z…J é_{éÁ
+Y*0T°l‡p[ ›$˜(áüP$ŸÃžñ™¹xB>=u·å‹³Îë[Â]Så•â‘˜m Ì…<S
+õ3ÿwfò3yR Þê93T„«±R¸Û–”f똗u쥙µZ `[@–Œ—I}IfNl„§Ô'§Õ¡ðT˜Zj0!ØÃv îæPçYJo‡¬Øj_駎 5OÊN½NXõ|ª‹îÊ~ëÙÚ[‡LƒoŠ»!XÅ©«ôfB9eõ-žK)u[—)×îoéÇÉ[>–7[2yž7Pþ÷¦/ÂeiÖãz*Pçrñéê»~t3ms¬®œ»;:¶eçF° ÷t•
+þ_l»Šµ×$C5 \{@2îdé—q‡L7ôn…
+¨ý!Þm²ÚòB§Câ_Œ7’ƒê¨ý*¨— ¿dn\çÎlÞøH!LΔ¤‡{îŠ-
+&NÒc&æ¾ÇÖ³k;ÊYç‰ô»Þ½*;OâGÜGß} ·Rpþñ ûNFòg3
endstream
endobj
-510 0 obj
+721 0 obj
<<
/Type /Page
-/Contents 511 0 R
-/Resources 509 0 R
+/Contents 722 0 R
+/Resources 720 0 R
/MediaBox [0 0 612 792]
-/Parent 482 0 R
+/Parent 726 0 R
+/Annots [ 715 0 R 716 0 R 717 0 R 718 0 R ]
>>
endobj
-512 0 obj
+715 0 obj
<<
-/D [510 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [321.487 534.197 351.707 546.152]
+/A << /S /GoTo /D (subsubsection.4.1.3.1) >>
>>
endobj
-170 0 obj
+716 0 obj
<<
-/D [510 0 R /XYZ 133.768 667.198 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [247.508 404.787 262.231 415.579]
+/A << /S /GoTo /D (table.caption.14) >>
>>
endobj
-174 0 obj
+717 0 obj
<<
-/D [510 0 R /XYZ 133.768 475.521 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [355.693 237.414 378.164 248.207]
+/A << /S /GoTo /D (subsection.5.2.6) >>
>>
endobj
-509 0 obj
+718 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [303.471 118.852 325.943 130.807]
+/A << /S /GoTo /D (subsection.4.1.3) >>
+>>
+endobj
+723 0 obj
+<<
+/D [721 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+190 0 obj
+<<
+/D [721 0 R /XYZ 133.768 485.664 null]
+>>
+endobj
+724 0 obj
+<<
+/D [721 0 R /XYZ 305.624 455.568 null]
+>>
+endobj
+194 0 obj
+<<
+/D [721 0 R /XYZ 133.768 224.47 null]
+>>
+endobj
+725 0 obj
<<
-/Font << /F80 213 0 R /F29 215 0 R /F88 216 0 R /F90 267 0 R /F102 342 0 R /F98 325 0 R /F34 295 0 R /F40 296 0 R /F37 271 0 R /F82 294 0 R /F83 293 0 R /F84 314 0 R >>
+/D [721 0 R /XYZ 133.768 148.297 null]
+>>
+endobj
+720 0 obj
+<<
+/Font << /F33 305 0 R /F75 304 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F102 447 0 R /F100 405 0 R /F76 307 0 R /F92 356 0 R /F110 501 0 R /F73 298 0 R /F115 602 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-515 0 obj
+730 0 obj
<<
-/Length 2638
+/Length 2644
/Filter /FlateDecode
>>
stream
-xÚ½YÛŽÛÈ}Ÿ¯Ð›9€E“ìæm ñöÆÁ‹ÀƒE
-펬ê[Ž;|VÝíéà/Z$¶™Lq¬:x@=‰¬L–‡A` á  t>Qð6JR´’aÕ–â®—Þ´è›b–êyïC%ä‹néÄ”ß3\¬EÀgÎÀ‹õ:Hà2zåè‡ýÇhk<±¢4ªœX´¬ÚlN»¶¦…éMU×ÒWÖñІzsªOƒÅ"1•³Æk6ÑÓÏÜï—ÖJàÝRüÎT[ñÊ1þI}‰¾¶¹éɃ.ÎZp—zÍ\}êÐg'€X¦ÃHˆ³$Lï×±Òo®×i’rskw»ãoÏÿiÿM„÷ï?>½ÿI>~?¾óP '‰© ó<¢àOb¢£Ë„Q1‚$écDY@<ãø+J¿Î¿xLN0D™c<˜*³•
-³Øt²0š5bx}aõÜ¥.†ÊC'˜1Ô¥·²| /n®>_ÑŽ¢U¼JŠ", ½J±0h߮޼‹V[(qçXL±ºcÓÃJ©0!à¬W¯¯þ.9|
-½ãPQˆcö¸FPÞ/,Þ”¢‚TˆíÇ…­¦¡Š4n÷lõGFüôuHDêÒ1 9ÁF£ì;@ñõ¾=Õðù¤,£èG²p‹°ÃO/2ú%d ©O>‘±º“_Á/Á '¢½†jº¾À‘$$ߟÕ h¼9AåRÜ2ÞÉuÕpþŒtÀï1Û‡¦:Øô<¹êÖH“£>¶fcÝ{1ôžöÛ™pOÄÅ“ sÔmã›–N&ƒ… £½=µ''*Akj ‹‚æò½7Îx;,Ò2qód‰äDÈü4€¦Û륃ìÛÈ°hº‚wûª8³>W Žš‘QB{àüLâ Þ$a’ÊTp|)É
-a^Æ«uß„ÆëÇQ®"DwªW1¬Jýµ(U鯅ù8VäÍ&a~³¸!P%½BˆE2îG-„¯œ¡Ð°±þºÀ¼ÖqV‚•”f¡V~È¿š†RÖDI3œ‘LÜ™…Ž½@šæ¾ï*Q›ÚÈU%dèïhʉ…m65Ѭ-…—Æ¥á=7½ðܧaŽÔlÝ7Sµü;@駡B RD¥N: “³žBC$•Íh£Ï!5”ž³ÚfÖmkݱ®$é&ùÎÃùéÒ©Øþ sQB˜ü™+´òZšŽ¢¼L¿q¤Â4>ç_¥‰ØÙÁ¯tyQÌ\rM¯ÔÏÂ…+e¹¿DùØS;aúqR„ѼŸÿb{Bôÿ-=ÿõÈ
- ’¤¢ò –ÜðãÂ/U¹¾+ñ£Mkv»…Cûш5o ê¿•a™ª9istQ£ß[/šž.ëZ¯!ÿàÓäZœEg‹ô1x€³DÄå\#P»(GR³;ÉnU Ôµ ©hi. صuÍ8p'”¢C…«Å ú+¶æþØ Å@HS"ûFðÚ““t@m”R û^H]´uÄA(ßÒ&ïè;ƒaŽMÅEú¡j\HY„q®Ç¢YË™…ÛPqˆL{Qv¦ÊfÌäó Å=MDÓþÓÜ1ãè7yC‡y2Îï,a®¹eæñ¬È•˜é†KÒA‚ë¨ôN“3$ô†A¿Èò·\…@‡(;⮤†î|óqU ùê²àgì´{dãÄh1f@ôÕ½GàÇéE$PIŠBñóIjq°sмR)ÊóVìªmw?¤çÙ :ïÀªj[uòõ³_`y‘“H#o–à´QZN¨þ4LáÄcÏVœŠÁžSÅì9Ö~‹/FyººÿC–pÄ‚Uôv¬LÏÈÓ88yÃ%&˜ŸóuîÆr`Dúæ"o
+xÚÕY[¯ã¶~ß_á‡
+IH¤Ãÿìú¾:8ékZRÉ6¯:|¡›m¦ÕúãžÇs/Ü
+üóIé„bW­Ú›7þùýÂ%ì
+`pŽ °
+Ðg•]? ¢
+^»$"{¡bNB ² ìË€”L¶rë›™Šr[«m«‚I#Âlx‹^œ¼ŽéAD(3Íh\8£Á Ïg#¤€h!©†ÞÝŠ‚¶ò!?ž¼hÍԞ箼c©á  3!Á›i%?Õà$ÈYÕo·j îåí äöáX@°r3 9ýÊ¥ËüÐß6ç›['Ù³Ž#ÃÄÖ|<õüŸ÷Íw2µâCQh8 .*‰”Þ9¥Ð85@þm2CøWo4SÞÄ¢9Ž7Éðœø Êa&º< $H©ÐOÃÉÐq´¥|H)pj ¡ ÏÞˇÈ1ŽSjõè4gCÍI¤pj ]*”Ò Âlb]¡¼¤E<æÎ:?–¡”©…Iõ“CåUÇ.¤£L¨t‘•ÀÃÐW¸q¤,·Õ¿7q®]ÓÀÕÔå!_8ŒTõâUGÑâ‘¢y•dØn¹|°v[–Q´8óiz%_ÂØÔùQ !æã!æ]hpK¥çڮХæÿ»$ïKîvçÁ¸ÐÒøàX0ˆQ-×G¢¡Qì ²%ˆ%‘™¹N¹FX7ÿ˜(½;ru‚¾”¸ÉÑì8„gꦾ>»%ÝW€ —‹Øª(¶¾€ÒC0E©f„ô¨Øå]hÜ^iïOÔ
+­T6'Þ+¡•S­ëB
+| ª¬Ìå_ö,â$¸ÿUˆÌG"µÃ¾ulÞÌè~4«Èe€ñK#23„ÍŸaº8Xã
endstream
endobj
-514 0 obj
+729 0 obj
<<
/Type /Page
-/Contents 515 0 R
-/Resources 513 0 R
+/Contents 730 0 R
+/Resources 728 0 R
/MediaBox [0 0 612 792]
-/Parent 517 0 R
+/Parent 726 0 R
+/Annots [ 719 0 R 727 0 R ]
>>
endobj
-516 0 obj
+719 0 obj
<<
-/D [514 0 R /XYZ 132.768 705.06 null]
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [276.629 606.481 299.1 617.274]
+/A << /S /GoTo /D (subsection.2.2.5) >>
>>
endobj
-513 0 obj
+727 0 obj
<<
-/Font << /F98 325 0 R /F29 215 0 R /F88 216 0 R /F37 271 0 R /F34 295 0 R /F40 296 0 R /F82 294 0 R /F83 293 0 R /F41 298 0 R /F90 267 0 R /F89 255 0 R >>
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [299.377 519.357 329.597 530.427]
+/A << /S /GoTo /D (subsubsection.4.1.3.1) >>
+>>
+endobj
+731 0 obj
+<<
+/D [729 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+732 0 obj
+<<
+/D [729 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+733 0 obj
+<<
+/D [729 0 R /XYZ 133.768 603.699 null]
+>>
+endobj
+734 0 obj
+<<
+/D [729 0 R /XYZ 133.768 548.32 null]
+>>
+endobj
+198 0 obj
+<<
+/D [729 0 R /XYZ 133.768 487.766 null]
+>>
+endobj
+728 0 obj
+<<
+/Font << /F33 305 0 R /F75 304 0 R /F38 309 0 R /F41 310 0 R /F92 356 0 R /F100 405 0 R /F44 426 0 R /F76 307 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-521 0 obj
+737 0 obj
<<
-/Length 2933
+/Length 2478
/Filter /FlateDecode
>>
stream
-xÚµYKÛȾϯPN¦
-ƒ¬ç°A²$Àîn‹-‰1EjÙ”gæߧ^¤D Ç1œä"6««‹]ÕU_Uµ’Õ~•¬Þß%7Ï?Þß½yW«2.3­îw+eÓ¸´é*KóX›tu_­~Ž~Ñ*Yÿzÿ—iÝ›wº¼^¤ãÜÀ1ßüzcL…Æ…»ÓPw-ŽUô°ÖEäO¸ªò‡Nž¼^E•ïë/ë4‹Ü
-ç-òøm×õÇ€Ã<r½gÚ9àqT·üüãxèán&4ž7Û„x½ÉJÃA–ì³q[ô-rÈÂn'2ma«dÅ×ëMjòèÓzƒ’ÖKçjîqOeÎv£LQÇ´–ºþ‰_]¿?qe‹"† ÂÁt¤9.èz¿éúMãQÀH¾Ùm–¶ç¿€)YøÆEf~µaÙ¨2Nrýnõ6’¡ýÆãƷѯp,®d3r%ûæ]1ólWªt”÷‹2¶ªw;æœ}×$qnõʤ ?ÒvâÔûp9F˜©e|ø}}%‘Šç&×Ç—ñ¼7ÊšÂmnת6à£õ±(@tµîèyÄjƒ{Y«¢¿¶[¿¤®-â$ÍF-<‘ñžë›&±Qjä¼Ä'|‰]G#…ß\¨…†.<αJe›ìF¥“£@ûìö診v`†¾G‡GTÏÄc&…¡wõþ@Ö†
-(xÝgÂËóyÄ`R7îSã_/9sï]…BòœÐÈæYt€£Ç
-м¨IkàîZÏLãò¤åjÉjŒr£õ'FvÏäÊ£ÒmV<ëZÿÀ“;T˜³þòèÀ<KEfŠ¶çKU€óªãâFX â h>®[ø[}©»³øí’` O¼íN¸Ÿ'H\*Ú³ïúîȳý4êxNê2#[7dEŒ€oÏûß
-¦¨xËJ*ñ%ó2úÈ%Ͷ<»uÁ¿Z+SFpRij£-3
-뮇=
-¬È±×1Ê~µ×Âeé´étĆÞ$«Ž‰uÛÔ­9<ºµI£÷¢fË ¡0ð.ȈJgxŽidüŠù`Ûç†Í® kAŸ›Ê“‰´7<Ã05ÖNX­´3Ú‰]hÐÉ`^àÜ¥ÚY·|# X:²§ÛºîÅLo u©ý‹±Ò,ÔTÔçTêqàØw`Ú¢(£¨ü¼^J¹)®‚Ú‡%KÌUœ
-
-"‹ kçP3L‘MS¤/‰f¼³Å x#—©4úønj¸‘þî(ˆÃÉ·z5^pò§*°翇ŠÿIÄ zŒ¿BºV“3¢Q¨±î’1Ô<Üâmšúóô·kqSÔáò§nqå:7r”qžLH&ª–nßUl
-=s!ËÀÏs/
-\ÙÉŸ¼xË3ŠÁÁæ…h/÷ˆÐÒù˹—Ü`—ÏÔå?èJb}s
-”—tLu\¤“÷ýn©a‹/߈r ”ƒç¶;sCL~œvÈ¡’Ë£B§1à'
+xÚÅYÝ㶿¿ÂyÐâl†â—¤yHÚ^‘àZè¢/¹ÐZôZ$o%9{¾Ãýï™áP_6wÏ{@[øA4IÍ ‡3¿ù_ݯøêo¯øÏïo_}ý&Ñ«ŒeF˜Õín«Œ)­ŒN˜zu[¬~ŽÞÅRå®°»›:úHŠŸ“wÃä/·?®bÍL&V›8f™öÄü¾Ãæ;ÕwOä[z §:ï÷mý±ø4ü¹ÛÍh~ýFÊ™¼3™J`‘1© ±xÜ—Û‘Fû›<Úæ â eƒYK³»›8:›‚þ•~K¿÷Ëï¸T•%ŽK IÁb8 '^ —Ýö`w;ÍP?—&’ 1ng7¥xôÃŽØnDRП¢ìú²¹?–Ýž&~ÇU»ím·F©DÔåx®ÓM*£µÓðFp
+XªøŽ6Áa•?ó¡*ð¼ùÖÒlïv<>€¶È`n;lCN¸Ã?Nxæ(Ðïn©,hê±-Qè¢2ÅR“'ŸÝ楒$X·î-1.J¸iA®Þ}™W1>ìh‡”ä5"“Ü„U"¥ŠŽ@¯C™Ý?ºq)6QÞ–9q¢I¥-VLq=?[Q±;:¨v~ƒ;.üðŒú&æœ)V-àe™Ñ«_M.âx½_ãð?Ǽ8[øø~}Zðnù•)Ko4SF2}K[”šm1Œ§ÓÕq‡È(–ÁKƒ#ÐŽ˜‹ÙÍ´µôÞó‰|âI
+ÊÊ€û‹™,h
+’ˆ¸žÄ‡€!hÆ31á
+2 T*Ò$ÑCuìhD…ŽJ?ÓZ— @âZÐÄÊr¢qNšbɱCÔJƒw oÛªëÿŒü†®¢ûƒY܌֬yºæA¨p®-d†Û«@_Q¤™ýtúÛ_…Çý ûد¯@~‘²Tð/ñnüÛ
endstream
endobj
-520 0 obj
+736 0 obj
<<
/Type /Page
-/Contents 521 0 R
-/Resources 519 0 R
+/Contents 737 0 R
+/Resources 735 0 R
/MediaBox [0 0 612 792]
-/Parent 517 0 R
-/Annots [ 518 0 R ]
+/Parent 726 0 R
>>
endobj
-518 0 obj
+738 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [284.75 453.072 307.221 465.027]
-/A << /S /GoTo /D (subsubsection.5.5.1) >>
+/D [736 0 R /XYZ 132.768 705.06 null]
>>
endobj
-522 0 obj
+202 0 obj
<<
-/D [520 0 R /XYZ 132.768 705.06 null]
+/D [736 0 R /XYZ 133.768 564.656 null]
>>
endobj
-519 0 obj
+206 0 obj
<<
-/Font << /F98 325 0 R /F29 215 0 R /F88 216 0 R /F37 271 0 R /F34 295 0 R >>
+/D [736 0 R /XYZ 133.768 204.587 null]
+>>
+endobj
+735 0 obj
+<<
+/Font << /F75 304 0 R /F33 305 0 R /F38 309 0 R /F44 426 0 R /F102 447 0 R /F41 310 0 R /F74 303 0 R /F100 405 0 R /F76 307 0 R /F92 356 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-528 0 obj
+741 0 obj
<<
-/Length 2734
+/Length 2549
/Filter /FlateDecode
>>
stream
-xÚYIÛȾûWð60ªam\Æ''3΂
-»®÷ms³Ó™÷íñTv¾‡ñçÛ¿ýø^Q!ŠT¥¸U픹â=þÝÔþËÊcw³3‰¿Q?ì…òh•Â…l¶`bÅëeSq§.×…¹Î1ÍÝÙ×Ïû a ;t»<ŸÝNÙ\¨¼€[Òõžw<áαRÈ$)Oå¯þ¥¼'Úh§“BèÂFÀ#QØ”©<‘=
- ;•ïAóq홉ÛCXp%LãrÇšžjaT¾äþà™Y=šofâ‡ÅlRRC0d×ð°?ŸX/;¼œŒñ†LÆcÛR¥M…ÔÅšI•;l1)«6+&‰]­€x¯büNY+£—oZæ)HWƽkªþ†]òÌÑõ=<Q‚ÆÄü²kÈxp¹Œô~èÃÄ]ß‚¥Ãf{6>œD"I‹&\wôMYoYãû{xpšf:'ÀSÂyšl &·Å?¡s0˜Õ-d…Õç¥ ‡ý2ÍÛh6ý¾AÝÞsçî<pÍ_ƒ‘µhÑßéxæp†A³ÀÚjàš€‡2þkø®Ð}†0øÄ3V¸î
-ó­–œz”g§±“i.RØfáûn Y <xDg:î ù ²”ì‚Œ |ÿÓÖ+’\ØbBÅ] Ž/nú„$
-;&$¨)!˜M5%%Ðp˜
-ÍM?vÒÒ~ïN$‘$%
-`ëã\&fCL‰Ënü°kÏ£šÉ\Ù¥2Ÿ°nÒ²ëÇk`“œu~Ç~„F)Ò)õ³Sê‡ dϘ‹‚.†ÁE!”6ü>˜ÂHTîÔ9„ž‘¨Ùr™©™òÑ'ÈÀû­´3ùË+>á’—^olaLö­€œ£
-Dž]'[¼5À*õ2Bj(¥\ßëÿïÆÙ>šuz<ø„î¼xx•—ɼªÈ¾“˜± ¤ £u¶Ì—’dºäÏ›ÀñÈŠi‹-¬ÈÌ„Ÿ™nl’‰ìŠYOÌPˆK¬wÚŠz¤ÅD„±»Óò¡£DàVXE]`@e\+¡˜yce…œäyàõ‹† RÊUÎûä
-ñOß³S¥RÎÓñØ!@ƒo.€–…œ‹>ï¤j ÄG7<„jÒòDŒz1^Ûpzýyª¨Q‰C.¢ ¿åéÃò×D àï×1èª0iàl¾¬ñ¨ÍêѯX=BFsÉÈÄúÅ’‘}Eɨ¬ª~ƒæ—šÏ†GlËÓ…Õ›yƒ°Ö\ÌÌ&\X:I¸lzñ›1\n§—%<_nìÎT]²‘Mw+@p³»É÷üúÇÎ1yµ>¯ŒšjÌ×0%%ˆóRÆ­ž6ýZŽx¸FÒ‡’Ò~01®
-ìÏÝ”ùÓüX¸ïè&8ÅfiìDl »€çLÿ4ôK¢’rƒÓ…¾÷ýðB@ªÈ-Ì2²$î‡B™ ·B^Â[¬º¤‰ß¨‚‹De]ÿÀÁ²?ðLÛ„½¹–ƒ;s}»§Îß?\_0ØÍ«?0©€„z}‡PBÔ6‡0ûØLÕLü`¾3}yÙkª A!RQ«.@H¥'ŒÁ»ïT‘'™¼ýp¬*j ÑYQ€Ú¦2¼R.íxl×Zf3‘¤†ÀÚôÙí©#Pýæ+‚]8×ÑŒBnÈáì©Üs¶ F „þð ë1-• wB‘– '‡sÍ}ªJàö'\9Þ]ç¶c=€ô
-æàË™)¥„à±È F¥02O¨
-¹G¨|Ywe
+xÚ­YY“Û¸~Ÿ_¡Gª2ÂI°¶¶’l§¼µIvÞl?P¥¡ÍCæ1ǺüßÓA‘Â8ãÔ>—}~Ý …›Ó&Üüó&´ßŸïn~x#å&ei,âÍÝqÃ¥dI¬7q”0!£ÍÝaó.ÈšÃv'cM¿åÁØ4î³a•=Žx@_” ÍŸ·" Ú±Û~¸ûå‡7I´¸+a:äÀ‰¹…Š#Zp$‹„š½¥ªìõmg¯l&&
+Z8wEVã½{àÖ>ÒÒ†!sôÐnw0ÏǺhpc`ÈÂfÇcÁ¤ˆ`ÀYY=¼E\N$p¢‚GœdôcÚÎèÓû½!^t´PÍi¸¿ÅIôþâÙ§%X*'åv‰(¨Gúž«±§_nÔe3í·s­M´¯NÒYQøx_æÈË=q™g£ê[R†Hb0TºT†•m»S»r@ƒfR·YAÞÖg0A–Õ3­d½×R&íD®G“×£JxIã*¹ƒƒb•æèÍÌ”åålÚ¡Ìí]åš
+ãû[ò!R°¸‰#Äy‹˜ƒ§³îä‚“´Gí„™]hÓcµ˜Å\LGÁo„J_p ’ÇÓɇ¬+³f E5Y]xhn$±ši›
+Õ*ƒÃJ°Ç(! ¬$p˜uÅT‹$,N“¥Î0vº[Bª>pÔû~°•Yù€Z*ì¨û¶éiâbQJ!b Æuyº¿€¨*¦”ƒ±©‘àHñ„±ªh!§Hd‹2
+q
+ƒŒ>PæÕxpûÞ¬hÎQJô”tg‰ŠV
+Óo%ÔñÔeK/ p yÝ1ÿ¹¦íê¬ò“,æ©X§
+”ù
+Y›.:ŠÒÄœÑÌè¶ÔK͛꽜A™ÐP·Û—C—uÏ4¥"Jò}eÎÔä<xE¬©ïC_|v8^û²*ÇØ<Š‹#P»£¦Rar ä¢úÆ)ôR9¹Yj_3pÉ”ôø1ôîÌ@gr:ìPŽôiùX¨óTN¹Ò)§V ̵ù¼ÊÝa:Ó´s·VÑÂÄ\>Øß©@³E\»F»uOûØà’/hqý}("õEay¢¶g]’OVŸ¾×|>YE7Û³—šw±hÕV¤bj½"õ'/)¨lçZÆ;9øŠÚîEjÎý2ÛÌV¸hS ùS1µ)ŸDBè˜$VÉ­Ÿ Û¥ü’åí,ãSYˆAÈôTš@f<æmqô5LQ‘á` ‚a«<P'©Íã|^†_Ãå¢ýˆœùÔAM™,R’ÆgÂV˜|tR™N’7šv m.¡Ê/ðeÄ>ï%X–¯ §.›ùa§ŸêH÷>&muº(¯úg“­™*Ú…<e –“›c“XYð{SöÀÏ1êpåP
+}ñHnqO>\•øÊ0ô¶1š’¸ Œ!+×K â&fo¼ˆ§©ã2/K@ç2é÷¶s})llM!ÑÀÊ­GK\E,–1Kµþ#ÌK$Yv»wTRa¼áQü[î„!k’Ü‹î¤â85”hñèN^"\Çÿ#¤#&E
+Á¯¥…šé);bü6†’ü;˜ôëO1¥åkô%’)\_ÒŸ#õÝú{A|h çX‹\ýQˆorNÇi8Tbæ Ź-qé:^zÚÁð£&º°~¬‹.&RôZÌ:˜_ì¿ø_v‹ÏcV1_¥S&É+Ó¸ÒÎóínSå¶,»¡tQ×/b˜Ê=ÿdA†˜ßû)CÔ·Ú´ŒBç(½{²qh×éMO•6ÉŸ­Ø<èŽý_…Û¸œmß—û©­§|­L]ks¹±Â>«²&§¬(DzüHU2®T%UÛ«§!p0C¦T‘i(
+Ý!pòÿsPU
endstream
endobj
-527 0 obj
+740 0 obj
<<
/Type /Page
-/Contents 528 0 R
-/Resources 526 0 R
+/Contents 741 0 R
+/Resources 739 0 R
/MediaBox [0 0 612 792]
-/Parent 517 0 R
-/Annots [ 523 0 R 524 0 R 525 0 R ]
+/Parent 726 0 R
>>
endobj
-523 0 obj
+742 0 obj
+<<
+/D [740 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+210 0 obj
+<<
+/D [740 0 R /XYZ 133.768 535.767 null]
+>>
+endobj
+743 0 obj
+<<
+/D [740 0 R /XYZ 133.768 465.608 null]
+>>
+endobj
+744 0 obj
+<<
+/D [740 0 R /XYZ 133.768 447.035 null]
+>>
+endobj
+745 0 obj
+<<
+/D [740 0 R /XYZ 133.768 415.953 null]
+>>
+endobj
+746 0 obj
+<<
+/D [740 0 R /XYZ 133.768 362.068 null]
+>>
+endobj
+214 0 obj
+<<
+/D [740 0 R /XYZ 133.768 308.463 null]
+>>
+endobj
+739 0 obj
+<<
+/Font << /F33 305 0 R /F75 304 0 R /F100 405 0 R /F92 356 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+752 0 obj
+<<
+/Length 2409
+/Filter /FlateDecode
+>>
+stream
+xÚ­ËŽÛ8òÞ_¡ÛÊ@[áS”2ì»L0Xìfú–äÀز­D–z$9Ž'èß*%K
+ÓÝ3ØK“,–Kõ~°Y´XôÓ ûÎú»›¯ŒŽò$OEÝí"žšÄä*JµI„ÔÑÝ6z¿ãR½]­µÐnûÑnš_O·ŸoÏ_¿Ü^núÛÉng·îîö÷‡äúË÷«÷w¯_¼’Ùä‹BçIÊràÇ}ëGBQj‚’&,Ë„wLsÃ'8knc›<Ñ)'ä¿>¨“L‰ 5 &“ ÔâqN?¬Ö —øój-uìç(&á*]2z󯻛ßn8€YÄAÜ4,e¢„Ž6Ç›·ïY´…Ë×KdžEg‡zŒK Ä¢*úõæ¿d¬—"ðA¥B%ÿO¿x/b\'2•Oƒ3Ü‚Ý2©ñÄŠ¨3€õ8»òìªoíf—g›Dr™#žc™%J«GL2ÒzÚ$òÏ™d⃿‡|P%Y*ž°N˜™Zç¥'$§% Rv nÍRBüÏJdqÑì}ŒH÷‡¢-hki£âMS#Z_|é=ÖùŠ?è–?8¶.ëýnÅãSõWâ%çI®µ@f˜ãÂ0¯R•€ãƒ8ä•»U®ââx_Ù¾ ŸrΦ¿åŒ%ÂðA%ÿüùÕkçC\ÈÍÁ‚¤ÑZ
+ø`F?º[eÀï‡Êsß÷*›%Oe)äòC ú` q Çm±³§
+ô4åh¹Î½U‰$ç&Ò˜çÀ< o5¹½•sîšÎÝÕÈ(fRå|LeI–ëH3“äyN<}Z‰<.ÀÓÒŒ¥‡°a"Q*[2¢&aó|FTÎêqŒ4÷ëîrDn>¬Öð·©ëÉOS5ËoPfîmÛ—Ö#Ï>³öÈkòÿ™S_´ë_¶EU]šb¡û7ã}X *剒üÛcî|‚LšEʯÉ$}ÿ5VÔÒÖLZ)
+­4ÆÙ;&ÕþqÓ¢sB¥åÌdñ/å'§„Ö`Œ†äÚ4Ç£­·HV›¸Ù<:Õ çcEÛ–»Ý¦)v»€[ƒï33úþm€øŠ0v
+R2Mòq_~v²¸þ5:ê€v³):CiÈ: ®ylié}f¸…c–ÇeíÁ‡²£Ý”g»"À/×P;rþT8C©|&7ö")”—çC¹AQCR#2UÈ(骬¶tk¸lGh»S½µÇ‚2+ø6ÝÇuȲ“d8 r¨df"QH pãQpð£@qàD%æs<›®§ò© H3\m âÔnæ|Q&Y§¹„b­ÓØV'0¬;ŸËþ@»¦®.´³´ìŠ3m@G&>ØL¶÷1îë“E.dw‡u®éXúõšÆ1Œ)‚Û}D›7?ÝDodèY>Â.´´ŒÿÝôÑê¶vEȃ—.dÈBùØò.óÏ iåWO- ( ±âs‚o¾G¸D÷Ô‹ ´¢4w¹6ìAG %¹Ð¾ïb‰9]#„,‡;笸ٖ˜$ðÒ‹÷aHÐ@H²Ì}™ò:cÓŒò5²lu¶ ømYwE vÀ/…&2um„ÆïðY
+ðA§jÉàêƒWÞná–ÊfâÈBÞÏa¢™½sʯ®¬ãê0 põZjK ¸Ô+ø°z‡í[&*ž¹ØØSçØ1”/ ÞÎëNä€T¶mQ»:¶Ä !ìšÖëo*©J¸<B{ª1"þx-fÒÈÁ:pQöÙ6ÄZWÿ¥§›£íÁŸéö좡`”Ò]‹*¯<‰inÁ3°Ch*âW˜
+%í<á`¶™ºÂw½ï`¼þ®ÓÅzrýmÚ|¤™×f^øfþ×K½’Hì´¦úƒ›Ï«íˆ,ã=ѱº€ÚÑY"³üi” -ªÉŸÕ(`vlH|×D*9X?áPÑÂØïm18ûÓP²;ð@Ý› {ÄëÀa/.äHZIÁ‰kWBÓR¼ Î )ÖÀœHÝ£ÓùB–¤†ŽÁ?¿|­•öÁ¶EÝ‚Sö3ÂÌ&©êHŒÑQ]¿é'<ºÂy®©ªe<SpÂík,jƒÞ92â0×3‡'‹qmÞ¥Á”6Úå}räÂq»¹ï˦¶•›[£ŒÛ¦_»ÊYöÅ–Á†Ã½T.’¤kNp¡\è“Ò!Ñ1çØCÀÍeóA¯kHÝ_‰AñF£†\–A7Χ£ÏÚ¾i/^dHÚ§Å94n¥Bt|çñ àtº¦ó|06lœ'7né]ŠÍ•Ï¡ &ñ³¬ªë†$©F>_5ÎÅCÎ
+,V—N]Ï© ÔÁù¢äMÔA“–´<Ì€]Ø_ª‚¶?Òòb@{ªêæ“7Çåbã îéíwÍ&]œ¥0’éq•*aTÝÎwœ°£IȸIŽ=×|ÂzÁ»æÔÒi[v›¶ ïÃó‡“GuYü3}sÖ „œÜôÕtEð É“,KV¨­CŸáß>šÏ©LÍ_<EÄV]ã»’Ó~_tÃ{uÙwEµs9âÚ! êS.{@í´ï"¼(ê±yrÓŽfù½(ä9Ì·¹øÓ èËeµäØJd®ªd™wcÿïŽÉCòÿ
+endstream
+endobj
+751 0 obj
+<<
+/Type /Page
+/Contents 752 0 R
+/Resources 750 0 R
+/MediaBox [0 0 612 792]
+/Parent 726 0 R
+/Annots [ 747 0 R 748 0 R 749 0 R ]
+>>
+endobj
+747 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [249.397 449.169 264.12 459.961]
-/A << /S /GoTo /D (subsection.5.4) >>
+/Rect [222.325 485.056 237.048 493.912]
+/A << /S /GoTo /D (table.caption.15) >>
>>
endobj
-524 0 obj
+748 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [263.483 285.781 285.955 296.574]
-/A << /S /GoTo /D (subsubsection.5.5.2) >>
+/Rect [280.489 423.343 295.212 434.136]
+/A << /S /GoTo /D (table.caption.15) >>
>>
endobj
-525 0 obj
+749 0 obj
<<
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [218.396 198.11 228.829 210.047]
-/A << /S /GoTo /D (Hfootnote.11) >>
+/Rect [153.7 387.478 176.172 398.27]
+/A << /S /GoTo /D (subsection.5.2.5) >>
>>
endobj
-529 0 obj
+753 0 obj
<<
-/D [527 0 R /XYZ 132.768 705.06 null]
+/D [751 0 R /XYZ 132.768 705.06 null]
>>
endobj
-178 0 obj
+218 0 obj
<<
-/D [527 0 R /XYZ 133.768 667.198 null]
+/D [751 0 R /XYZ 133.768 588.183 null]
>>
endobj
-530 0 obj
+754 0 obj
<<
-/D [527 0 R /XYZ 133.768 593.627 null]
+/D [751 0 R /XYZ 322.811 557.811 null]
>>
endobj
-531 0 obj
+222 0 obj
<<
-/D [527 0 R /XYZ 133.768 573.646 null]
+/D [751 0 R /XYZ 133.768 374.72 null]
>>
endobj
-532 0 obj
+755 0 obj
<<
-/D [527 0 R /XYZ 133.768 448.172 null]
+/D [751 0 R /XYZ 133.768 300.93 null]
>>
endobj
-533 0 obj
+756 0 obj
<<
-/D [527 0 R /XYZ 133.768 347.992 null]
+/D [751 0 R /XYZ 133.768 280.885 null]
>>
endobj
-534 0 obj
+757 0 obj
<<
-/D [527 0 R /XYZ 133.768 282.792 null]
+/D [751 0 R /XYZ 133.768 249.991 null]
>>
endobj
-535 0 obj
+750 0 obj
<<
-/D [527 0 R /XYZ 133.768 262.812 null]
+/Font << /F75 304 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F33 305 0 R /F92 356 0 R /F110 501 0 R /F73 298 0 R /F115 602 0 R /F100 405 0 R >>
+/ProcSet [ /PDF /Text ]
>>
endobj
-536 0 obj
+760 0 obj
<<
-/D [527 0 R /XYZ 133.768 197.114 null]
+/Length 1925
+/Filter /FlateDecode
>>
+stream
+xÚÅXKsã6¾ûWð]e!Ä‹
+Tÿ úÓ¶e¹GQ`K“3ËØ’3§û<:¶åEIo—}haC¥Ëò–ƒó¤ÚW]Uïi°j½«^dî¥y2愘zm´¬VËrEéùþ~¤¿“Á7±Áú0ÍÑ3Øýúbi,‚ÆjÈs¤ÿc]Tx e‡€pé¾Ø•4Tµô_t4Ó‡ZC£Ëª]4eo˜»˜?m±ûš?-3YX
+Ùö™êNz»cÃ[dõ硬A´;scCYó^Â"X@ˆxº.ÿ/põ0 $V*çS ?œg¦S_q ÷¯÷åîˆÝ¶\uý^ÑÀ˜zèRή©Ö›þûÇÞ#]úÒ…PÉ™¦;PôM4d2__‚ù¼ú¡R3mCY[WOÕ~ ¢”ò®TB¤ž‰=S»ôéZö+ˆž•]‡É‡Óí¡X€
+ógÆKc/sp+ÎÂå†ÅH
+¡'{©—&P{Ý~>A2#§¦
+ ü;©lø.k
+endstream
endobj
-537 0 obj
+759 0 obj
<<
-/D [527 0 R /XYZ 133.768 167.226 null]
+/Type /Page
+/Contents 760 0 R
+/Resources 758 0 R
+/MediaBox [0 0 612 792]
+/Parent 726 0 R
>>
endobj
-538 0 obj
+761 0 obj
<<
-/D [527 0 R /XYZ 149.011 132.65 null]
+/D [759 0 R /XYZ 132.768 705.06 null]
>>
endobj
-526 0 obj
+226 0 obj
<<
-/Font << /F80 213 0 R /F29 215 0 R /F88 216 0 R /F89 255 0 R /F90 267 0 R /F37 271 0 R /F34 295 0 R /F92 279 0 R /F91 281 0 R >>
+/D [759 0 R /XYZ 133.768 303.412 null]
+>>
+endobj
+758 0 obj
+<<
+/Font << /F75 304 0 R /F38 309 0 R /F44 426 0 R /F41 310 0 R /F33 305 0 R /F92 356 0 R /F100 405 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-543 0 obj
+764 0 obj
<<
-/Length 1921
+/Length 1367
/Filter /FlateDecode
>>
stream
-xÚ¥XMÛ6½çW87¹¨¹$ERRskÑí±Xô’ä µh[¨,¹’¼› èï ‡ú4w³H.–DQäÌðÍ›7æ›ã†o~{ÃWןïßܽ—Ù&c™‘fsØ¥Y¦ôÆè„ÉXoî‹Í‡H±í§û?Ư6všóè¯mG¶íÊ­ˆšz»‹cÅL.§
-òØlv"c:õË}äšçð#B«æUÕle=u¸bÕö˜÷åãV&‘¥‘î’ïËúHÛL¶‡¦õoû“¿)Ê<Žmkk\®/óŠÆ÷Íùœ×î}÷>Mg¾K£˜Ò¬!3E¬ŠŠæ-c¤™ÉÄ0íÝÒ 0‡Ãkt¦M?<ç0X©>[ôVgQŽ—4z¸鹬éút*÷èÆÉO«i^Óe·_h´°-J›h0˜•ûÅ)48q­wÌ
->bÛNxô{O³kBÅÍÝÎVîÍôÏ=zÊžp٤תø‘ž‡÷.p¡CÆè¹1ËCŽ3*]ÂZ¿:Kãß™%¶Î*2œÎU9´tbŠÛà8ž&^sºtgÈ- )ä¿Y$дÜ (Ã(‰Šˆ †*“‘-w“„%B.a‹´à+|ä"(sàƒÂòkÕÓƒßýäÎò±l®-ÍFçÁFý;?ú/›‹ó-¸\2™$CF:ïŠ@âÆ‚Åé”ß[·[3Øê­²Ÿ/U¹ì {;ÇÌèl °Öþsµ]OxqGÕ¯gŸPÓ˜‰8¶~0.eZ¤âѳYÀ_˜ËÕ‚§ÊÃ!°¦Ì˜JÆ]=ó¡ßï<•ZO–eœ8œ¡|Ó7tó'"X} ÂhÂ$,“¯g½Kk)³(bˆdžxìÁMUë_k­÷?Næ,b–ÆãA&M…ü‡yZ¦Ã¼þ„ŒËŸó¶EVRÜ8K
-Òµ©;’Rx¥9\.rð<c<[Ñ$P+È
-üE,» 1ø¾<€/_h1ÔxI"| Ä]øšD°,ÕûêšSÉÂ1ÇÄpÅX†‡I(è$ :O䳋v[RqœëoîÉV¬åu÷9•6P
-»w¹ŽïŸpíÜ?äxQÕPhäÐ6gº›1 šÜBÌ-8K’€‡}cƒÜ­’ùÙAÍ•è–Ú›Ê;pê)Ž…›¾¬ÚzÐ3@rû¼wB i¿¬÷žøÖã€|Ô1/Ka-µN¤…Î1¯Ð9$zsÈ”ÊxìÂ;qÐ*ü#ÅO0—‘2“p÷˜·»§6ÑW"˜Ëkgûž`«7t%½‚?MY Cîri›ÀUeÏ>kRXL¯² Ú- AÉ©Q’‡“Ó^Ć4à &ÚüÜÛ3HâÞ~I7T–Äp(¯.Üå<½§¾%q’ ¼öé?꺞êäˆEHÛÆF›÷”ß&òí‡K_3¤/½\_P£TŠI=%‘­›3¨wX¯ xo d˜tÆ”6i
-ë´y¾e$›á­Ù—“d´ŸeG䥲çši‰©˜?L½6ÄH4ªp+,pdL¶Û¤Ž~¡rÜ-ãî½€ê09 4'‘Å­$œ}³Ã0kˆËœîgž¹Ž1éµ7Ô?p­býÌåþSÙx-JÇ6èîOKIØ_,ÉDÉ„ ª²Qæ×ù9„v3%ãI<Á¹(O`öø÷À±Ê+a—åÝšüRPµóÜAcðù{ñ஋]¸ÇÆžÊÞ÷ò‹•ø|›8¸Í‡¯Æ¤qú
-9KÀ—ÛÂg
+xÚ­WK“œF ¾ûWpdR¦M¿xÄ·¸âTrLíÍöÍNW10Õ0ko¹òß#u Xìì&9ÝjµôIú$Òè>J£ß^¥ôüåîÕ›÷¥ˆDʲLè讉¸”,ÏŠH‚ižEwuô!~wª.£q‡Dæ:Ö‡Ow„cŠåEÎñX%ªdWáÀŸ¦1ÎtGd¥ŒJVf"#QÍY‘ê úþPȸGÝ¢Œ}wyüpEl: <6°'Óø÷ðhí0†·“MG»ã‰^Žýù\uõöM° × x©`ˆ7 ¶MsìMÓìتr–ær’|½¹j4çK[ôU›ì©®í8¼FUQ"”`¼”QÂ9+5a ¶¡¼œÔ¨øc*œl;g‰‹3Õ¡øÜš°RîìhûnKÕ0ô‡„ŽL¡“_ìxšn±¤¶F±<>^ϦC¥#›É“*)X©(:
+ÿ ,8Á±Ó˜£¶]åñ‹Sé¤"¾Tn´UVkãìÃAgq5ÂjÀWl
+·=Ö€+a½œSø<§è˜úéêö+Œlþ—¨­§€KÕbÖ_ÀÃyºÙàO®LsßqJ^¬Æ±þÁ8gk³Q°B&ËY®²…%} iß_üyŸ
endstream
endobj
-542 0 obj
+763 0 obj
<<
/Type /Page
-/Contents 543 0 R
-/Resources 541 0 R
+/Contents 764 0 R
+/Resources 762 0 R
/MediaBox [0 0 612 792]
-/Parent 517 0 R
-/Annots [ 539 0 R 540 0 R ]
+/Parent 774 0 R
>>
endobj
-539 0 obj
+765 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [402.213 531.572 416.935 543.527]
-/A << /S /GoTo /D (subsection.3.1) >>
+/D [763 0 R /XYZ 132.768 705.06 null]
>>
endobj
-540 0 obj
+230 0 obj
<<
-/Type /Annot
-/Subtype /Link
-/Border[0 0 0]/H/I/C[1 0 0]
-/Rect [184.418 477.014 206.89 487.807]
-/A << /S /GoTo /D (subsubsection.6.1.1) >>
+/D [763 0 R /XYZ 133.768 667.198 null]
>>
endobj
-544 0 obj
+234 0 obj
<<
-/D [542 0 R /XYZ 132.768 705.06 null]
+/D [763 0 R /XYZ 133.768 451.991 null]
>>
endobj
-545 0 obj
+766 0 obj
<<
-/D [542 0 R /XYZ 133.768 667.198 null]
+/D [763 0 R /XYZ 133.768 371.834 null]
>>
endobj
-546 0 obj
+767 0 obj
<<
-/D [542 0 R /XYZ 133.768 651.428 null]
+/D [763 0 R /XYZ 133.768 352.462 null]
>>
endobj
-547 0 obj
+768 0 obj
<<
-/D [542 0 R /XYZ 133.768 633.337 null]
+/D [763 0 R /XYZ 133.768 332.537 null]
>>
endobj
-548 0 obj
+769 0 obj
<<
-/D [542 0 R /XYZ 133.768 592.387 null]
+/D [763 0 R /XYZ 133.768 300.656 null]
>>
endobj
-549 0 obj
+770 0 obj
<<
-/D [542 0 R /XYZ 133.768 572.747 null]
+/D [763 0 R /XYZ 133.768 268.222 null]
>>
endobj
-550 0 obj
+771 0 obj
<<
-/D [542 0 R /XYZ 133.768 530.745 null]
+/D [763 0 R /XYZ 133.768 248.297 null]
>>
endobj
-551 0 obj
+772 0 obj
<<
-/D [542 0 R /XYZ 133.768 503.743 null]
+/D [763 0 R /XYZ 133.768 216.97 null]
>>
endobj
-552 0 obj
+773 0 obj
<<
-/D [542 0 R /XYZ 133.768 476.188 null]
+/D [763 0 R /XYZ 133.768 161.179 null]
>>
endobj
-553 0 obj
+762 0 obj
<<
-/D [542 0 R /XYZ 133.768 422.73 null]
+/Font << /F92 356 0 R /F33 305 0 R /F75 304 0 R /F110 501 0 R >>
+/ProcSet [ /PDF /Text ]
>>
endobj
-554 0 obj
+777 0 obj
+<<
+/Length 1779
+/Filter /FlateDecode
+>>
+stream
+xÚÍYÛŽÛ6}ÏW(
+Ø@Ìð¦[ƒèm‹öµû–M®MÙJeÉäÝAþ½3J²´´÷¤ÈËš¢FÔ9Ù3#.Ÿmf|öû+>ùýùúÕ›+!ø,aI(ÃÙu:J±(Œga1©‚Ùõzö~~#”þhVåíâÃõŸýÓo®”:yR…L…î´´æ™)K¥Ôü>k¶42Õæ°³ÅBÆó¦Æ)=7Åšî­mží²ÆVõ£Í–R3Gð+X""zƒ`4QpÊC²Hu`Xav¶5ŸbÖ,â½Ù x¹o²²09Œ¡ÂgiT¦øn„@Ù! šLËjwj¦z¼ÑÓ€b)
+|É”Â8…–¡f±vÁ´Î/¥ä,¨¯³®”­\¦d&'’&à.—"—Kê ¹$ÓRŽ÷ä›O¥‡î8›TKô³sê}Y­m… kDûÁÃ/
+*ÎUôKOŒ©~Á
+endstream
+endobj
+776 0 obj
<<
-/D [542 0 R /XYZ 133.768 403.089 null]
+/Type /Page
+/Contents 777 0 R
+/Resources 775 0 R
+/MediaBox [0 0 612 792]
+/Parent 774 0 R
>>
endobj
-555 0 obj
+778 0 obj
<<
-/D [542 0 R /XYZ 133.768 373.32 null]
+/D [776 0 R /XYZ 132.768 705.06 null]
>>
endobj
-182 0 obj
+779 0 obj
<<
-/D [542 0 R /XYZ 133.768 332.444 null]
+/D [776 0 R /XYZ 133.768 649.1 null]
>>
endobj
-556 0 obj
+780 0 obj
<<
-/D [542 0 R /XYZ 133.768 286.882 null]
+/D [776 0 R /XYZ 133.768 628.842 null]
>>
endobj
-557 0 obj
+781 0 obj
<<
-/D [542 0 R /XYZ 133.768 271.836 null]
+/D [776 0 R /XYZ 133.768 608.917 null]
>>
endobj
-558 0 obj
+782 0 obj
<<
-/D [542 0 R /XYZ 133.768 256.235 null]
+/D [776 0 R /XYZ 133.768 565.634 null]
>>
endobj
-559 0 obj
+783 0 obj
<<
-/D [542 0 R /XYZ 133.768 240.082 null]
+/D [776 0 R /XYZ 133.768 549.141 null]
>>
endobj
-560 0 obj
+784 0 obj
<<
-/D [542 0 R /XYZ 133.768 224.481 null]
+/D [776 0 R /XYZ 133.768 521.799 null]
>>
endobj
-561 0 obj
+785 0 obj
<<
-/D [542 0 R /XYZ 133.768 197.479 null]
+/D [776 0 R /XYZ 133.768 505.305 null]
>>
endobj
-562 0 obj
+786 0 obj
<<
-/D [542 0 R /XYZ 133.768 181.326 null]
+/D [776 0 R /XYZ 133.768 453.499 null]
>>
endobj
-563 0 obj
+787 0 obj
<<
-/D [542 0 R /XYZ 133.768 165.725 null]
+/D [776 0 R /XYZ 133.768 402.247 null]
>>
endobj
-564 0 obj
+788 0 obj
<<
-/D [542 0 R /XYZ 133.768 150.125 null]
+/D [776 0 R /XYZ 133.768 362.397 null]
>>
endobj
-541 0 obj
+238 0 obj
+<<
+/D [776 0 R /XYZ 133.768 253.735 null]
+>>
+endobj
+775 0 obj
<<
-/Font << /F29 215 0 R /F88 216 0 R /F37 271 0 R /F90 267 0 R /F80 213 0 R /F102 342 0 R >>
+/Font << /F110 501 0 R /F33 305 0 R /F75 304 0 R /F100 405 0 R /F44 426 0 R /F38 309 0 R /F92 356 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-567 0 obj
+791 0 obj
<<
-/Length 853
+/Length 750
/Filter /FlateDecode
>>
stream
-xÚµVËŽ›0ÝÏW°+HÅã'˜‘fS¥S©ë즕Jƒ!¨<"“FUÿ½×˜4™N•Mbð½ö9ç^ƒ­ÄÂÖ§;|öÿa}wÿD+@G=k[Äó‘ô˜å Q&¬ud=Û9_ן‡,ëÙÛ¿ôËû§
-Ša¶äÙUèsgP¨$o/ÙÀÔzƲ†¦ O£±N…ÀØ1>
-ÛåC Y(¦D G­«Jkd®Aq(¦ºÌUJÄý¿+Òì?¹NhL¹ââ±ÓNy•FþÐ&#e¡nǃܘǨݛ}y;ô­<Nx)¸‘&z¥v•Ú„àhúfÁÇì·z í´lµ:˜™Jåjâ$ÆXaÆø(Ävmlf7i˜™Y}¯Õf~¿…›vœ‚õí•÷³åhNãÅSÿ­Ò¤ÃuTªê-ªVY쪟`1@µ›²:ÌoêóÚáy÷­úûñ¯E#ˆ°Á¥@µXU•–M£Ñ4®apDyò„áËfuÅÕÆ(tù‹*z}k- \ Æå d¤²&¼
-”"Nèü ¬nÔ‡v˜]-læéûœéÛB
+xÚåVMs›0½çWp„L%#Épè¥ÓºÓ“Ç“K’ƒd‡F| g<™þ÷JÄ"ÁĹdÚéIö½]=í²z[/ô¾ž…Ýúiu6[$ØC&”boµñ!0b±Çh1¡Þ*õ.}
+1DÁõêûlPèšÏ ¦Éí>[X«!'& Ò]…4¬ê,/·¢ÈTYëý#÷STý:[DÔK`Â03,`Nà<Ž<€bHâÄ’5j/E
+÷Þ
+˜–©²²ÐQF]†Œø\éUˆ¾EÏ„¸9
+!‹©íÈ]C^
+)ve>/ù:õ!þ]€c_ì»ÓÙkæÚS€tŠ´RÙ½ê\ï 7em?(‘WÚTr%lƒÉ
endstream
endobj
-566 0 obj
+790 0 obj
<<
/Type /Page
-/Contents 567 0 R
-/Resources 565 0 R
+/Contents 791 0 R
+/Resources 789 0 R
/MediaBox [0 0 612 792]
-/Parent 517 0 R
+/Parent 774 0 R
>>
endobj
-568 0 obj
+792 0 obj
<<
-/D [566 0 R /XYZ 132.768 705.06 null]
+/D [790 0 R /XYZ 132.768 705.06 null]
>>
endobj
-569 0 obj
+242 0 obj
<<
-/D [566 0 R /XYZ 133.768 667.198 null]
+/D [790 0 R /XYZ 133.768 667.198 null]
>>
endobj
-570 0 obj
+246 0 obj
<<
-/D [566 0 R /XYZ 133.768 652.752 null]
+/D [790 0 R /XYZ 133.768 300.063 null]
>>
endobj
-571 0 obj
+789 0 obj
<<
-/D [566 0 R /XYZ 133.768 592.976 null]
+/Font << /F92 356 0 R /F110 501 0 R /F75 304 0 R /F33 305 0 R >>
+/ProcSet [ /PDF /Text ]
>>
endobj
-572 0 obj
+795 0 obj
<<
-/D [566 0 R /XYZ 133.768 577.036 null]
+/Length 859
+/Filter /FlateDecode
>>
+stream
+xÚ­VÉnÛ0½ç+t”‚RIQ–
+4‡¢MÑåP¸F/itDÛj´å òï%MÒZJ)FQðXò¼áïÍpgëΧ‹@Û÷«‹«›q?‰Pä¬6$¡%ND>ÂÄY¥Î­[µœÕà[Êò¬ð
+¶ÙÂ)³ýÊž~Ò¼eêͳ2Cˆ|ó2ŒéØÕ^¸p Î¬š7ÌžOÆižÝ›ôó9m_â‘aH€?AHXâljŽE|$>P¹CôüCì'0‹?|¾¹ù®£öå´€±“ÎW¹bÜsE¡Bl¦lCÛœ7À»ÔصØPìVžø:xhá2õþ1ã;õ‹ïX£_ÞK¯-·¬y+×;©ØØq®:
+(jN;nªZýÁY±®9åÌ¢U±'ñßÛÊT– 4NþyÂBØGÇ*è+Kk áO¹`3›WJ¦"=êxÔ¼zÊðÊÚ>”ó±ÇÌtA`[Çd7jn½„N’;Ú}Þ6#5k›•æ4\ضîL™”ïêâ9}±ß¨ÔÁYm¸·˜¥w' wþ>9Ð4íÞV¯¯y+„”3 îÀB{É8öùöb–4ýÝ6\÷s÷ÍcóªÜ¹ÍÇšŽî¾T6†Ãä$¤FtgL :Är*Ä9s‚ŽÑc‰t
+h®P¢a¡Ì =SB—v(œ®•ó†œÙòžy‚× õ¿Ž=³9^feÉŒÄ0ìÄÉë–Y4³“‚Y6ňÆ,í»„.GÌbmÕÃízùúÎŽîñ‡#K_\O£› †DDóŽácqÅ«á @>®.þ
+endstream
endobj
-573 0 obj
+794 0 obj
<<
-/D [566 0 R /XYZ 133.768 549.141 null]
+/Type /Page
+/Contents 795 0 R
+/Resources 793 0 R
+/MediaBox [0 0 612 792]
+/Parent 774 0 R
>>
endobj
-565 0 obj
+796 0 obj
+<<
+/D [794 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+250 0 obj
+<<
+/D [794 0 R /XYZ 133.768 569.35 null]
+>>
+endobj
+254 0 obj
+<<
+/D [794 0 R /XYZ 133.768 481.229 null]
+>>
+endobj
+793 0 obj
<<
-/Font << /F29 215 0 R /F90 267 0 R /F102 342 0 R /F88 216 0 R /F40 296 0 R /F34 295 0 R >>
+/Font << /F75 304 0 R /F74 303 0 R /F110 501 0 R /F33 305 0 R /F92 356 0 R >>
/ProcSet [ /PDF /Text ]
>>
endobj
-574 0 obj
+799 0 obj
+<<
+/Length 806
+/Filter /FlateDecode
+>>
+stream
+xÚÕUAo›0¾÷Wp„jv± LZëÖiÝSí²N“œ„΄L«¨êŸÁ@f²´êa»ÄÁ~ï{Ïïûüžï,ßùpâ·ëÛÉÉÙe81ŒfÎdî B`È"‡ÑbBIâ|w)Ä@äý˜\]"ä÷ìck°ÆðÝÇ˯_ŒYH{V 5(‚$ŠwÆÆ–ž- H‡˜ˆ9¯¤*=@qy·N=€#7÷ôχCW˜ýûT-Í?µe»9«­–|µåë:ÞööݺŸl›@z·%8?÷
+¨ÓwôQ×ëÃËûÉÉoì{å
+endstream
+endobj
+798 0 obj
+<<
+/Type /Page
+/Contents 799 0 R
+/Resources 797 0 R
+/MediaBox [0 0 612 792]
+/Parent 774 0 R
+>>
+endobj
+800 0 obj
+<<
+/D [798 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+258 0 obj
+<<
+/D [798 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+262 0 obj
+<<
+/D [798 0 R /XYZ 133.768 590.811 null]
+>>
+endobj
+266 0 obj
+<<
+/D [798 0 R /XYZ 133.768 393.101 null]
+>>
+endobj
+270 0 obj
+<<
+/D [798 0 R /XYZ 133.768 316.936 null]
+>>
+endobj
+797 0 obj
+<<
+/Font << /F74 303 0 R /F110 501 0 R /F75 304 0 R /F33 305 0 R /F92 356 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+803 0 obj
+<<
+/Length 831
+/Filter /FlateDecode
+>>
+stream
+xÚµV[oÓ0~ß¯È "AØó%v“ 2âM}cHxÓœ‹’´Bûï8µÓ&«×UúâÛù¾œóãã¢` àÃrã»ÅÙùEJŒaÊ y€)…3žœÍ ¡,XdÁ×Ayômñéüc461D)7d[»ùÇ‹ÏÖlJJRÈ’t°ºB eê
+Q*YF‡Úìb‹¥4HaÊ ï¡`† OX
+Ûj¬eÞ¹¥ñ̃£¸|ˆ¢Q«›=>Æ1JXo>è@ŽéÀ§:Tk£é>¾§éyi§^¦ —†‡e”úººmªª˜–)Ú•Å®ÄÆœ¸‚·D”À4æC‹¡Æ l@‹£õ¢ÑXËQÛÙS¤ &éîše*Ï—•Ìs3™ŸtçILˆeyf}ΕvYø>å}î»4dŽU©:U•®ú·M¥Ÿ˜ÊT¢ìv»EëK£1€ž#|Žè£·eÖÈ[;ÿ"šVWÎ_ñ£¶Ë7«B( —&+^ßæ ¿#ñ›–$MœzP£QÑ©ô}ª/G£lŸ©­õo§+Q'àÝäp>lö|Á˜ã)©³uM6½
+endstream
+endobj
+802 0 obj
+<<
+/Type /Page
+/Contents 803 0 R
+/Resources 801 0 R
+/MediaBox [0 0 612 792]
+/Parent 774 0 R
+>>
+endobj
+804 0 obj
+<<
+/D [802 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+274 0 obj
+<<
+/D [802 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+278 0 obj
+<<
+/D [802 0 R /XYZ 133.768 484.356 null]
+>>
+endobj
+801 0 obj
+<<
+/Font << /F92 356 0 R /F110 501 0 R /F33 305 0 R /F75 304 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+807 0 obj
+<<
+/Length 649
+/Filter /FlateDecode
+>>
+stream
+xÚ¥VM›0¼çWp©”D1‹“P)=¬Ô­Tõ´Ê-Í,†uÅG„qV«íþ÷š`‚M !ÉÉóÆÏïÍ ¶ŒØ°ŒKŒ›ÉÃÓ¾é{¶gl""×ô|ÃCKÓv± ít₃,f
+‡ìµÃKÉoòF À%o”ø(;+°M4øoêp±«†©wX¨A¸”û|XÖmÛ!_N`wÏõçX0ÁŠé!'™`t.8‰A‚Ê÷¯pÖö>´Cé¿·Sz¤ÊMÉlÎ×á‡'Ç‘ïÂ.⸎lß\­V5>ò•ï›É?¯’Ê
+endstream
+endobj
+806 0 obj
+<<
+/Type /Page
+/Contents 807 0 R
+/Resources 805 0 R
+/MediaBox [0 0 612 792]
+/Parent 809 0 R
+>>
+endobj
+808 0 obj
+<<
+/D [806 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+805 0 obj
+<<
+/Font << /F75 304 0 R /F33 305 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+812 0 obj
+<<
+/Length 547
+/Filter /FlateDecode
+>>
+stream
+xÚ½VÁŽ›0½ç+¸TÝh×^›'Tê¥J·RÕCUqÛÍÁ€!¨&¦†d¥ù÷’Ølpk²Ù †cÀãyoÞŒ rR9_HÛOÁàþaâ9>ô‰Kœ q°7†Äwˆ7îÈs‚Øy¼«ŠIð#f<ˇÀs½›Ê<áÑXfé¢R¿ï†óàk½0Àúžö.W!X®â” ‹j|‘2ùêà0‚c‚MÏ]÷§wÊ»üÕ ”4úÉ4ŽB[‘(ËÖ”C´=þ8Kb¦'n•Iî´-ô ll¡ìΘ>o^î#`‰
+³ý÷‹‘ÙoöÌr–h"ÊXÓ{®8s«7ã¡x–Bä¦8¸ç
+ŠCQ.–©­©TƒgI‹‹Ô³‰õ„<¯ë;îTÍkT{j,à
+endstream
+endobj
+811 0 obj
+<<
+/Type /Page
+/Contents 812 0 R
+/Resources 810 0 R
+/MediaBox [0 0 612 792]
+/Parent 809 0 R
+>>
+endobj
+813 0 obj
+<<
+/D [811 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+810 0 obj
+<<
+/Font << /F75 304 0 R /F33 305 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+816 0 obj
+<<
+/Length 696
+/Filter /FlateDecode
+>>
+stream
+xÚÅUÉnÛ0½ç+t §¦"R‹£¹h
+-ЃoI´HÙ´%Q(á/iÒ•ÐI•¨æ233o…ÞÒ ½ïg¡Y¿ÎÏ.of‰—YŠRo^x0Ž„2/MfŠoN¼[;¹Ÿÿð`Ä)ô
+t´™
+fø©mO•t¡cx•³QU4†Çñל"ðýüY½Á'ò” nÃå©nä-‘Ù—$‰nòßΗ5ÃƉÄAòWÙLã¥p`òm~ö“ˇ0
+endstream
+endobj
+815 0 obj
+<<
+/Type /Page
+/Contents 816 0 R
+/Resources 814 0 R
+/MediaBox [0 0 612 792]
+/Parent 809 0 R
+>>
+endobj
+817 0 obj
+<<
+/D [815 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+282 0 obj
+<<
+/D [815 0 R /XYZ 133.768 460.681 null]
+>>
+endobj
+814 0 obj
+<<
+/Font << /F75 304 0 R /F92 356 0 R /F33 305 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+820 0 obj
+<<
+/Length 1240
+/Filter /FlateDecode
+>>
+stream
+xÚ­WKsÛ6¾çWh¦“)Õ1‚àC<äÐÄM§N®zr<Sˆ„$D$È‚¤]ëÿÞŃ)Cn“æb<ûúöÛ¥,v‹`ñã«À®ïÖ¯Þ|HãE†²$LëíÇJ²E§($ñb],n½ïxGKžû¢/vléÇaì½5 1KÕ/ïÖ?/| (Á°b”ÅVùé²èµÑn¨ì8-ÍážJNEgõÖ¬1‰
+¾ÝjSÁ܈•̾}4‹==Í.›áRÙqEôø\’IÝøí±ÚÔ&Áq0
+W¤¯Ï:cªÌ¨Þ@‘(ôë‹u±à·|{Ü.#™# Pž%Ù–´Ýû]}˜xi°œQR7–óíy N¸-//Š’ý­·í7c»}÷`ËRæ­ÒQäÐ+»’¹4“©æÍISóBoŒª®¿ š¨¡Ôe×uÞWLtïmé¼°Eª¾ aæõ¯ï™”¼°É>ª[ÁvUÿôgZ´9 Ç§ÇoðÓíÝåY§M¼ù… !%¡ú./Iˆ²ÈÚQlÞbL“¥° NÞ¯Y^ z¿çe±fUSÒŽÕÙ×ß·š~ˆÑ
+J õÿêf
+„Lbˆ*\ žY/Õw¸@W’zµ(j—xÔ\´ÜPD]m{‘w¼WŽH0ÉàHâÈᆵäyÇΙŅIŒ²lо2¾·µ4¨“0FIÍ‹”KF;=YHèpaÉ—aê)ÐÌqDBŸ¶²®f¯ákÌ„Òè­KLƒJ3”ÆcTß/ÉʃþMøëH!EA< Ç”òqP³£Â7ÂzŠéÀq®ÄCÀ^bï3öÔ‡È0/KÐ
+Çs ÉZ•Áʃ~ 3ìq¡Vk_]ØW*E?"·$ÏJƒ‹=“¼kPÔÖ ":šÃhõ””~³½èÔœ7=ØèN6“æ3…±IC9Z֩ʶæ¤1SEÚ×­B%L”ÿTùW9E¡÷[]± oçÆ4­±'!+ý£¢ÒX+¾µïAXVh7ìØÑ5)r*4T„o ®´]8taH2UY.ŽFH…9¸84"dìP.ÚŽŠ|«€Ÿsš.HÒá±NÌr™ Æn€ãGøâXøÏݦ%˜ †¤ögÛVí ‡ï(šò}`øÀ&ad?q†Àò µß´v× `y©©•©˜ÕO.
+endstream
+endobj
+819 0 obj
+<<
+/Type /Page
+/Contents 820 0 R
+/Resources 818 0 R
+/MediaBox [0 0 612 792]
+/Parent 809 0 R
+>>
+endobj
+821 0 obj
+<<
+/D [819 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+286 0 obj
+<<
+/D [819 0 R /XYZ 133.768 234.917 null]
+>>
+endobj
+818 0 obj
+<<
+/Font << /F75 304 0 R /F92 356 0 R /F110 501 0 R /F33 305 0 R /F100 405 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+824 0 obj
+<<
+/Length 1120
+/Filter /FlateDecode
+>>
+stream
+xÚ•VKÛ6¾ï¯0°( 1#¾$A/Í&E{È¡ð­éA–h[,.,j·‹`ÿ{g8”lzµäbÎPÃy|žùÈt±_¤‹ßoÒ°þ¶¹yÿYÊÅš­3‘-6»—’åY±Èt΄ԋM½ø;ÙÙ¡«—+‘©ä\tRÙaÉ“¶&­¬–¢HyÀÕ¥;4=}Þ ]åÛÁ‰²mÜRäÉÙ<6î0Z›`lÛÖ¢›Ç¦ÛÓ·ÊÂZ$µÕí¶5!g÷Ξ–ÿlþ„’Vœ³µÓ>Ùãr%¥Lî‡mÛTíiµ©Úò„P³ëIm:tõþs®/QÑšÉL@
+ÉT!bÄ(fóp¤¿‘D‘³LNÐÀ0Ïä@˜“wX6nmQ1„ T@h°•Pøæ)ÿ)h~¤„Î’ÈžZŽô‡%üà|öŒbó4½ ^@ë ý/v.AààtJp¤ ÏÜ,±ƒõX
+…ö¤ô®Ü‡[ooªrèÍhé…üê’z ·H5ø.[qvgŠä‚åéôO=b;@›Q?ðœ­s—ئnÀ­¿ß2½ÛU¦%R>2˜CÉa€°bÜ„"¡W¦Þñ[÷þŽ5Uƒã…íNÏý[Bi¦ôôo!A¿¬Dp–òéʬ£’ã©Í¡âéÆÖŸAE±4[&ve‡°L¨•‹•ŠiR
+§,þŸ¸éج±l Ï¿Þ8˜žg ÐTYFt„_ê±ÍѾ7‡e®L‘Ë©¸öfy Ð*ªÓ§iÈûÅÀSÇÃX§…Œ/ºP ¯ï}.2‡ª,íƒ?×TP$éç!%ÞB~¥@¸õ2@<\¸³E˧«ã½©lWÏ`óSWÎ\{¤LêuÌÝJâÀžì°? ²¦4p·DFÃ6¯ }A ½9R½ç:¯-W<AnVçâé2 Acn~‚\ü‡×@^L#S†i‰‹Š°‡]ßø^u½iwØ”
+^çÙ†€Ïž@Êðäö$øg=‡Ç§æÿSðÑÙࢵ½‹ß±ÀRP ÞKRf,—9%œÉÈêÓææKq@+
+endstream
+endobj
+823 0 obj
+<<
+/Type /Page
+/Contents 824 0 R
+/Resources 822 0 R
+/MediaBox [0 0 612 792]
+/Parent 809 0 R
+>>
+endobj
+825 0 obj
+<<
+/D [823 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+822 0 obj
+<<
+/Font << /F33 305 0 R /F75 304 0 R /F100 405 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+826 0 obj
[472.2 555.6 805.6 916.7 1138.9 1277.8]
endobj
-576 0 obj
+828 0 obj
[777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 777.8 777.8 472.2 666.7 666.7 666.7 638.9 722.2 597.2 569.5 666.7 708.3 277.8 472.2 694.5 541.7 875 708.3 736.1 638.9 736.1 645.8 555.6 680.6 687.5 666.7 944.4 666.7 666.7 611.1 288.9 500 288.9 555.6 666.7 277.8 480.6 516.7 444.5 516.7 444.5 305.6 500 516.7 238.9 266.7 488.9 238.9 794.5 516.7 500 516.7 516.7 341.7 383.3 361.1]
endobj
-578 0 obj
-[533.6]
+829 0 obj
+[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525]
endobj
-579 0 obj
+830 0 obj
+[611.1 611.1]
+endobj
+832 0 obj
+[533.6 588.2 758.1 480.3 1228 880.8]
+endobj
+833 0 obj
[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525]
endobj
-580 0 obj
-[531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531 531.3 531.3 531 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3]
+834 0 obj
+[813.9 405.6 566.7 843 683.3 988.9 813.9 844.4 741.7 844.4 800 611.1 786.1 813.9 813.9 1105.5 813.9 813.9 669.5 319.4 500 319.4 555.5 813.9 319.4 613.3 580 591.1 624.5 557.8 535.5 641.1 613.3 302.2 424.4 635.5 513.3 746.7 613.3 635.5 557.8 635.5 602.2 457.8 591.1 613.3 613.3 835.6 613.3 613.3 502.2 500 277.8 500 555.5 188.9 813.9 813.9 786.1 786.1 829.2 741.7 741.7 851.4 683.3 683.3 683.3 813.9 813.9 813.9 844.4 800 800 611.1 611.1 611.1 786.1 786.1 813.9 813.9 813.9 669.5 669.5 669.5 931.7 405.6 624.5 537.5 613.3 613.3 591.1 591.1 624.5 557.8 557.8 641.1 513.3 513.3 513.3 613.3 613.3 613.3 635.5 602.2 602.2 457.8 457.8 457.8 591.1 591.1 613.3 613.3 613.3 502.2 502.2 502.2 696.4 319.4 523.6 813.9 813.9 813.9 813.9 813.9 813.9 813.9 975 786.1 741.7 741.7 741.7 741.7 405.6 405.6 405.6 405.6 829.2 813.9 844.4 844.4 844.4 844.4 844.4 1091.7 844.4 813.9 813.9 813.9 813.9 813.9 683.3 1222.2 613.3 613.3 613.3 613.3 613.3 613.3 735.5 591.1 557.8 557.8 557.8 557.8 302.2 302.2 302.2 302.2 624.5 613.3 635.5 635.5 635.5 635.5 635.5 824.4 635.5 613.3 613.3 613.3 613.3]
endobj
-582 0 obj
-[777.8]
+835 0 obj
+[531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531 531.3 531.3 531 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3]
endobj
-584 0 obj
+837 0 obj
[892.9 339.3 892.9 585.3 892.9 585.3 892.9 892.9 892.9 892.9 892.9 892.9 892.9 1138.9 585.3 585.3 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 1138.9 1138.9 892.9 892.9 1138.9 1138.9 585.3 585.3 1138.9 1138.9 1138.9 892.9 1138.9 1138.9 708.3 708.3 1138.9 1138.9 1138.9 892.9 329.4 1138.9 769.8 769.8 1015.9 1015.9 0 0 646.8 646.8 769.8 585.3 831.4 831.4 892.9 892.9 708.3 917.6 753.4 620.2 889.5 616.1 818.4 688.5 978.7 646.5 782.2 871.7 791.7 1342.7 935.6 905.8 809.2 935.9 981 702.2 647.8 717.8 719.9 1135.1 818.9 764.4 823.1 769.8 769.8 769.8 769.8 769.8 708.3 708.3 523.8 523.8 523.8 523.8 585.3 585.3 462.3 462.3 339.3 585.3 585.3 708.3 585.3 339.3 938.5 859.1 954.4]
endobj
-586 0 obj
-[607 473.6 453.6 447.2 638.9 607 830.6 607]
+838 0 obj
+[736.1 1083.3 736.1 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1361.1 736.1 736.1 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1361.1 1361.1 1083.3 1083.3 1361.1 1361.1 736.1 736.1 1361.1 1361.1 1361.1 1083.3 1361.1 1361.1 875 875 1361.1 1361.1 1361.1 1083.3 441]
endobj
-587 0 obj
-[736.1]
+840 0 obj
+[881.9 755.6 723.6 904.2 900 436.1 594.5 901.4 691.7 1091.7 900 863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.5 570.8 319.5 575 319.5 319.5 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.5 351.4 607 319.5 958.3 638.9 575 638.9 607 473.6 453.6 447.2 638.9 607 830.6 607 607 511.1]
endobj
-588 0 obj
-[680.6 680.6 680.6]
+841 0 obj
+[1027.8 402.8 472.2 402.8 680.6 680.6 680.6]
endobj
-590 0 obj
+843 0 obj
+[777.8]
+endobj
+845 0 obj
[458.3 458.3 416.7 416.7 472.2 472.2 472.2 472.2 583.3 583.3 472.2 472.2 333.3 555.6 577.8 577.8 597.2 597.2 736.1 736.1 527.8 527.8 583.3 583.3 583.3 583.3 750 750 750 750 1044.4 1044.4 791.7 791.7 583.3 583.3 638.9 638.9 638.9 638.9 805.6 805.6 805.6 805.6 1277.8 1277.8 811.1 811.1 875 875 666.7 666.7 666.7 666.7 666.7 666.7 888.9 888.9 888.9 888.9 888.9 888.9 888.9 666.7 875 875 875 875 611.1 611.1 833.3 1111.1 472.2 555.6 1111.1 1511.1 1111.1 1511.1 1111.1 1511.1 1055.6 944.5 472.2 833.3 833.3 833.3 833.3 833.3 1444.5 1277.8 555.6 1111.1 1111.1 1111.1 1111.1 1111.1 944.5 1277.8 555.6 1000 1444.5 555.6 1000 1444.5 472.2 472.2 527.8 527.8 527.8 527.8 666.7 666.7 1000]
endobj
-591 0 obj
+846 0 obj
[777.8 277.8 777.8 500 777.8 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 500 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 1000 777.8 777.8 1000 1000 500 500 1000 1000 1000 777.8 1000 1000 611.1 611.1 1000 1000 1000 777.8 275 1000 666.7 666.7 888.9 888.9 0 0 555.6 555.6 666.7 500 722.2 722.2 777.8 777.8 611.1 798.5 656.8 526.5 771.4 527.8 718.7 594.9 844.5 544.5 677.8 762 689.7 1200.9 820.5 796.1 695.6 816.7 847.5 605.6 544.6 625.8 612.8 987.8 713.3 668.3 724.7 666.7 666.7 666.7 666.7 666.7 611.1 611.1 444.4 444.4 444.4 444.4 500 500 388.9 388.9 277.8 500 500 611.1 500 277.8 833.3 750 833.3]
endobj
-592 0 obj
-[625 833.3 777.8 694.5 666.7 750 722.2 777.8 722.2 777.8 722.2 583.3 555.6 555.6 833.3 833.3 277.8 305.6 500 500 500 500 500 750 444.5 500 722.2 777.8 500 902.8 1013.9 777.8 277.8 277.8 472 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 472 277.8 500 277.8 277.8 500 555.6 444.5 555.6 444.5 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.5]
+847 0 obj
+[493.7 329.2 493.7 548.6 329.2 329.2 493.7 274.3 877.8 603.5 548.6 548.6 493.7 452.6 438.9 356.6 576 493.7 713.2]
endobj
-593 0 obj
-[877 781.7 754 843.3 815.5 877 815.5 877 815.5 677.6 646.9 646.9 970.3 970.3 323.4 354.2 569.4 569.4 569.4 569.4 569.4 843.3 507.9 569.4 815.5 877 569.4 1013.9 1136.9 877 323.4 323.4 538.4 938.5 569.4 938.5 877 323.4 446.4 446.4 569.4 877 323.4 384.9 323.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 323.4 877]
+848 0 obj
+[531.3 1062.5 0 414.9 295.1 324.7 619.8 590.3 590.3 885.4 885.4 531.3 295.1 403.1 885.4 531.3 885.4 826.4 295.1 413.2 413.2 531.3 826.4 295.1 354.2 295.1 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 295.1 295.1 826.4 826.4 826.4 501.8 826.4 795.9 752.1 767.4 811.1 722.6 693.1 833.5 795.9 382.6 545.5 825.4 663.5 972.9 795.9 826.4 722.6 826.4 781.6 590.3 767.4 795.9 795.9 1091 795.9 795.9 649.3 295.1 531.3 295.1 555.6 795.9 295.1 531.3 590.3 472.2 590.3 472.2 324.7 531.3 590.3 295.1 324.7 560.7 295.1 885.4 590.3 531.3 590.3 560.7 414.1 419.1 413.2 590.3 560.7 767.4 560.7 560.7]
endobj
-594 0 obj
-[742.7 647.8 600.1 519.3 476.1 519.8 588.6 544.1 422.8 668.8 677.6 694.6 572.8 519.8 668 592.7 662 526.8 632.9 686.9 713.8 756 719.7 539.7 689.9 950 592.7 439.2 751.4 1138.9 1138.9 1138.9 1138.9 339.3 339.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 339.3 339.3 892.9 585.3 892.9 585.3 610.1 859.1 863.2 819.4 934.1 838.7 724.5 889.4 935.6 506.3 632 959.9 783.7 1089.4 904.9 868.9 727.3 899.7 860.6 701.5 674.8 778.2 674.6 1074.4 936.9 671.5 778.4 462.3 462.3 462.3 1138.9 1138.9 478.2 619.7 502.4 510.5 594.7 542 557.1 557.3 668.8 404.2 472.7 607.3 361.3 1013.7 706.2 563.9 588.9 523.6 530.4 539.2 431.6 675.4 571.4 826.4 647.8 579.4]
+849 0 obj
+[611.1 611.1 611.1]
endobj
-595 0 obj
-[786.1 829.2 741.7 712.5 851.4 813.9 405.6 566.7 843 683.3 988.9 813.9 844.4 741.7 844.4 800 611.1 786.1 813.9 813.9 1105.5 813.9 813.9 669.5 319.4 500 319.4 555.5 813.9 319.4 613.3 580 591.1 624.5 557.8 535.5 641.1 613.3 302.2 424.4 635.5 513.3 746.7 613.3 635.5 557.8 635.5 602.2 457.8 591.1 613.3 613.3 835.6 613.3 613.3 502.2 500 277.8 500 555.5 188.9 813.9 813.9 786.1 786.1 829.2 741.7 741.7 851.4 683.3 683.3 683.3 813.9 813.9 813.9 844.4 800 800 611.1 611.1 611.1 786.1 786.1 813.9 813.9 813.9 669.5 669.5 669.5 931.7 405.6 624.5 537.5 613.3 613.3 591.1 591.1 624.5 557.8 557.8 641.1 513.3 513.3 513.3 613.3 613.3 613.3 635.5 602.2 602.2 457.8 457.8 457.8 591.1 591.1 613.3 613.3 613.3 502.2 502.2 502.2 696.4 319.4 523.6 813.9 813.9 813.9 813.9 813.9 813.9 813.9 975 786.1 741.7 741.7 741.7 741.7 405.6 405.6 405.6 405.6 829.2 813.9 844.4 844.4 844.4 844.4 844.4 1091.7 844.4 813.9 813.9 813.9 813.9 813.9 683.3 1222.2 613.3 613.3 613.3 613.3 613.3 613.3 735.5 591.1 557.8 557.8 557.8 557.8 302.2 302.2 302.2 302.2 624.5 613.3 635.5 635.5 635.5 635.5 635.5 824.4 635.5 613.3 613.3 613.3 613.3]
+850 0 obj
+[511.1 1022.2 0 408.5 306.7 306.7 613.3 562.2 587.8 881.7 894.4 511.1 306.7 400.7 817.8 500 817.8 766.7 306.7 408.9 408.9 511.1 766.7 306.7 357.8 306.7 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 306.7 306.7 777.8 766.7 777.8 511.1 766.7 743.4 703.9 715.6 755 678.4 652.8 773.6 743.4 385.5 525 768.9 627.2 896.7 743.4 766.7 678.4 766.7 729.5 562.2 715.6 743.4 743.4 998.9 743.4 743.4 613.3 306.7 500 306.7 555.6 743.4 306.7 511.1 460 460 511.1 460 306.7 460 511.1 306.7 306.7 460 255.5 817.8 562.2 511.1 511.1 460 421.7 408.9 332.2 536.7 460 664.5 463.9 485.6]
endobj
-596 0 obj
-[619.8 590.3 590.3 885.4 885.4 531.3 295.1 403.1 885.4 531.3 885.4 826.4 295.1 413.2 413.2 531.3 826.4 295.1 354.2 295.1 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 295.1 295.1 826.4 826.4 826.4 501.8 826.4 795.9 752.1 767.4 811.1 722.6 693.1 833.5 795.9 382.6 545.5 825.4 663.5 972.9 795.9 826.4 722.6 826.4 781.6 590.3 767.4 795.9 795.9 1091 795.9 795.9 649.3 295.1 531.3 295.1 555.6 795.9 295.1 531.3 590.3 472.2 590.3 472.2 324.7 531.3 590.3 295.1 324.7 560.7 295.1 885.4 590.3 531.3 590.3 560.7 414.1 419.1 413.2 590.3 560.7 767.4 560.7 560.7]
+851 0 obj
+[656.2 625 625 937.5 937.5 562.5 342.6 462.5 937.5 562.5 937.5 875 312.5 437.5 437.5 562.5 875 312.5 375 312.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 312.5 312.5 894.4 875 894.4 531.2 875 849.5 799.7 812.5 862.2 738.4 707.2 884.2 879.6 419 581 880.7 675.9 1067.2 879.6 844.9 768.5 844.9 839.2 625 782.4 864.6 849.5 1162 849.5 849.5 687.5 312.5 575 312.5 555.6 849.5 312.5 546.9 625 500 625 513.3 343.7 562.5 625 312.5 343.7 593.7 312.5 937.5 625 562.5 625 593.7 459.5 443.7 437.5 625 593.7 812.5 593.7 593.7 500]
endobj
-597 0 obj
-[611.1 611.1 611.1 611.1 611.1 611.1 611.1 611.1 611.1 611.1 351.8 351.8 963 935.2 963 578.7 935.2 896.3]
-endobj
-598 0 obj
+852 0 obj
[444.4 405.9 437.5 496.5 469.4 353.9 576.2 583.3 602.6 494 437.5 570 517 571.4 437.2 540.3 595.8 625.7 651.4 622.5 466.3 591.4 828.1 517 362.8 654.2 1000 1000 1000 1000 277.8 277.8 500 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 500 777.8 500 530.9 750 758.5 714.7 827.9 738.2 643.1 786.3 831.3 439.6 554.5 849.3 680.6 970.1 803.5 762.8 642 790.6 759.3 613.2 584.4 682.8 583.3 944.4 828.5 580.6 682.6 388.9 388.9 388.9 1000 1000 416.7 528.6 429.2 432.8 520.5 465.6 489.6 477 576.2 344.5 411.8 520.6 298.4 878 600.2 484.7 503.1 446.4 451.2 468.8 361.1 572.5 484.7 715.9 571.5 490.3 465.1 322.5 384 636.5 500]
endobj
-599 0 obj
-[613.3 562.2 587.8 881.7 894.4 511.1 306.7 400.7 817.8 500 817.8 766.7 306.7 408.9 408.9 511.1 766.7 306.7 357.8 306.7 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 306.7 306.7 777.8 766.7 777.8 511.1 766.7 743.4 703.9 715.6 755 678.4 652.8 773.6 743.4 385.5 525 768.9 627.2 896.7 743.4 766.7 678.4 766.7 729.5 562.2 715.6 743.4 743.4 998.9 743.4 743.4 613.3 306.7 500 306.7 555.6 743.4 306.7 511.1 460 460 511.1 460 306.7 460 511.1 306.7 306.7 460 255.5 817.8 562.2 511.1 511.1 460 421.7 408.9 332.2 536.7 460 664.5 463.9 485.6]
-endobj
-600 0 obj
-[569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 892.9 877 892.9 538.7 877 843.3]
+853 0 obj
+[625 833.3 777.8 694.5 666.7 750 722.2 777.8 722.2 777.8 722.2 583.3 555.6 555.6 833.3 833.3 277.8 305.6 500 500 500 500 500 750 444.5 500 722.2 777.8 500 902.8 1013.9 777.8 277.8 277.8 472 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 472 277.8 500 277.8 277.8 500 555.6 444.5 555.6 444.5 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.5 388.9 555.6 527.8 722.2 527.8 527.8 444.5 500 1000 500 500 500]
endobj
-601 0 obj
-[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525]
+854 0 obj
+[742.7 647.8 600.1 519.3 476.1 519.8 588.6 544.1 422.8 668.8 677.6 694.6 572.8 519.8 668 592.7 662 526.8 632.9 686.9 713.8 756 719.7 539.7 689.9 950 592.7 439.2 751.4 1138.9 1138.9 1138.9 1138.9 339.3 339.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 339.3 339.3 892.9 585.3 892.9 585.3 610.1 859.1 863.2 819.4 934.1 838.7 724.5 889.4 935.6 506.3 632 959.9 783.7 1089.4 904.9 868.9 727.3 899.7 860.6 701.5 674.8 778.2 674.6 1074.4 936.9 671.5 778.4 462.3 462.3 462.3 1138.9 1138.9 478.2 619.7 502.4 510.5 594.7 542 557.1 557.3 668.8 404.2 472.7 607.3 361.3 1013.7 706.2 563.9 588.9 523.6 530.4 539.2 431.6 675.4 571.4 826.4 647.8 579.4 545.8]
endobj
-602 0 obj
-[500 1000 0 391.7 277.8 305.6 583.3 555.6 555.6 833.3 833.3 500 277.8 373.8 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 777.8 777.8 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 555.6 750 277.8 500 555.6 444.5 555.6 444.5 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.5 388.9 555.6 527.8 722.2 527.8 527.8 444.5 500 277.8 500 555.6 166.7 750 750 722.2 722.2 763.9 680.6 680.6 784.7 625 625 625 750 750 750 777.8 736.1 736.1 555.6 555.6 555.6 722.2 722.2 750 750 750 611.1 611.1 611.1 838.9 361.1 555.6 484]
+855 0 obj
+[877 781.7 754 843.3 815.5 877 815.5 877 815.5 677.6 646.9 646.9 970.3 970.3 323.4 354.2 569.4 569.4 569.4 569.4 569.4 843.3 507.9 569.4 815.5 877 569.4 1013.9 1136.9 877 323.4 323.4 538.4 938.5 569.4 938.5 877 323.4 446.4 446.4 569.4 877 323.4 384.9 323.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 323.4 877 538.7 538.7 877 843.3 798.6 815.5 860.1 767.9 737.1 883.9 843.3 412.7 583.3 874 706.4 1027.8 843.3 877 767.9 877 829.4 631 815.5 843.3 843.3 1150.8 843.3 843.3 692.4 323.4 538.4 323.4 569.4 323.4 323.4 569.4 631 507.9 631]
endobj
-603 0 obj
-[670.8 638.9 638.9 958.3 958.3 575 350 481.5 958.3 575 958.3 894.4 319.5 447.2 447.2 575 894.4 319.5 383.3 319.5 575 575 575 575 575 575 575 575 575 575 575 319.5 319.5 894.4 894.4 894.4 543.1 894.4 869.4 818.1 830.6 881.9 755.6 723.6 904.2 900 436.1 594.5 901.4 691.7 1091.7 900 863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.5 575 319.5 555.6 869.4 319.5 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.5 351.4 607 319.5 958.3 638.9 575 638.9 607 473.6 453.6 447.2 638.9 607 830.6 607 607]
+856 0 obj
+[569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 892.9 877 892.9 538.7 877 843.3]
endobj
-604 0 obj
-[656.2 625 625 937.5 937.5 562.5 342.6 462.5 937.5 562.5 937.5 875 312.5 437.5 437.5 562.5 875 312.5 375 312.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 312.5 312.5 894.4 875 894.4 531.2 875 849.5 799.7 812.5 862.3 738.4 707.2 884.2 879.6 419 581 880.7 675.9 1067.2 879.6 844.9 768.5 844.9 839.2 625 782.4 864.6 849.5 1162 849.5 849.5 687.5 312.5 575 312.5 555.6 849.5 312.5 546.9 625 500 625 513.3 343.7 562.5 625 312.5 343.7 593.7 312.5 937.5 625 562.5 625 593.7 459.5 443.7 437.5 625 593.7 812.5 593.7 593.7]
-endobj
-605 0 obj
-[856.4 799.4 713.6 685.2 770.7 742.3 799.4 742.3 799.4 742.3 599.6 571 571 856.4 856.4 285.5 314 513.9 513.9 513.9 513.9 513.9 770.7 456.8 513.9 742.3 799.4 513.9 927.8 1042 799.4 285.5 285.5 485.9 856.4 513.9 856.4 799.4 285.5 399.7 399.7 513.9 799.4 285.5 342.6 285.5 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 285.5 285.5 285.5 799.4 485.3 485.3 799.4 770.7 727.9 742.3 785 699.4 670.8 806.5 770.7 371 528.1 799.2 642.3 942 770.7 799.4 699.4 799.4 756.4 571 742.3 770.7 770.7 1056.1 770.7 770.7 628.1 285.5 485.9 285.5 513.9 285.5 285.5 513.9 571 456.8 571]
-endobj
-606 0 obj
-[455.9 416.4 450.6 513.2 481.1 363.8 592.2 599.5 619.2 506.9 450.6 588.2 529.4 587.7 452.4 556.3 611.7 640.8 670.5 639.4 477.1 609.5 852.5 529.4 374.4 671.1 1027.8 1027.8 1027.8 1027.8 285.5 285.5 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 285.5 285.5 799.4 513.9 799.4 513.9 543.7 770.7 777.7 733.6 847.5 756.3 656.2 804.8 850.1 449.3 566.3 870.4 699.4 992.9 821.6 782.1 656.2 810.6 777.6 627.8 599.6 699.1 599.4 970.5 849 596.5 699.2 399.7 399.7 399.7 1027.8 1027.8 424.4 544.5 440.4 444.9 532.5 477.8 498.8 490.1 592.2 351.7 420.1 535.1 306.7 905.5 620 497.5 515.9 459.2 463.7 478.8 371.1 591.4 499.2 736.6 582.6]
+857 0 obj
+[500 1000 0 391.7 277.8 305.6 583.3 555.6 555.6 833.3 833.3 500 277.8 373.8 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 777.8 777.8 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 555.6 750 277.8 500 555.6 444.5 555.6 444.5 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.5 388.9 555.6 527.8 722.2 527.8 527.8 444.5 500 277.8 500 555.6 166.7 750 750 722.2 722.2 763.9 680.6 680.6 784.7 625 625 625 750 750 750 777.8 736.1 736.1 555.6 555.6 555.6 722.2 722.2 750 750 750 611.1 611.1 611.1 838.9 361.1 555.6 484]
endobj
-607 0 obj
-[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525]
+858 0 obj
+[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525]
endobj
-608 0 obj
-[892.9 840.9 854.6 906.6 776.6 743.7 929.9 924.3 446.3 610.8 925.8 710.8 1121.6 924.3 888.9 808 888.9 886.7 657.4 823.1 908.7 892.9 1221.6 892.9 892.9 723.1 328.7 575 328.7 555.6 892.9 328.7 575.2 657.4 525.9 657.4 543 361.6 591.7 657.4 328.7 361.6 624.6 328.7 986.1 657.4 591.7 657.4 624.6 488.1 466.7 460.2]
+859 0 obj
+[575 1150 0 449.7 319.5 351.4 670.8 638.9 638.9 958.3 958.3 575 350 481.5 958.3 575 958.3 894.4 319.5 447.2 447.2 575 894.4 319.5 383.3 319.5 575 575 575 575 575 575 575 575 575 575 575 319.5 319.5 894.4 894.4 894.4 543.1 894.4 869.4 818.1 830.6 881.9 755.6 723.6 904.2 900 436.1 594.5 901.4 691.7 1091.7 900 863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.5 575 319.5 555.6 869.4 319.5 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.5 351.4 607 319.5 958.3 638.9 575 638.9 607 473.6 453.6 447.2 638.9 607 830.6 607 607 511.1]
endobj
-609 0 obj
-[599.6 571 571 856.4 856.4 513.9 285.5 387.5 856.4 513.9 856.4 799.4 285.5 399.7 399.7 513.9 799.4 285.5 342.6 285.5 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 285.5 285.5 799.4 799.4 799.4 485.3 799.4 770.7 727.9 742.3 785 699.4 670.8 806.5 770.7 371 528.1 799.2 642.3 942 770.7 799.4 699.4 799.4 756.4 571 742.3 770.7 770.7 1056.1 770.7 770.7 628.1 285.5 513.9 285.5 555.6 770.7 285.5 513.9 571 456.8 571 457.2 314 513.9 571 285.5 314 542.4 285.5 856.4 571 513.9 571 542.4 402 405.4 399.7 571 542.4 742.3 542.4 542.4]
+860 0 obj
+[399.7 399.7 513.9 799.4 285.5 342.6 285.5 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 285.5 285.5 799.4 799.4 799.4 485.3 799.4 770.7 727.9 742.3 785 699.4 670.8 806.5 770.7 371 528.1 799.2 642.3 942 770.7 799.4 699.4 799.4 756.4 571 742.3 770.7 770.7 1056.1 770.7 770.7 628.1 285.5 513.9 285.5 555.6 770.7 285.5 513.9 571 456.8 571 457.2 314 513.9 571 285.5 314 542.4 285.5 856.4 571 513.9 571 542.4 402 405.4 399.7 571 542.4 742.3 542.4 542.4]
endobj
-610 0 obj
-[272 326.4 272 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 272 272 761.6 761.6 761.6 462.4 761.6 734 693.4 707.2 747.8 666.2 639 768.2 734 353.2 503 761.2 611.8 897.2 734 761.6 666.2 761.6 720.6 544 707.2 734 734 1006 734 734 598.4 272 500 272 555.6 734 272 489.6 544 435.2 544 435.2 299.2 489.6 544 272 299.2 516.8 272 816 544 489.6 544 516.8 380.8 386.2 380.8 544 516.8 707.2]
+861 0 obj
+[272 326.4 272 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 272 272 761.6 761.6 761.6 462.4 761.6 734 693.4 707.2 747.8 666.2 639 768.2 734 353.2 503 761.2 611.8 897.2 734 761.6 666.2 761.6 720.6 544 707.2 734 734 1006 734 734 598.4 272 500 272 555.6 734 272 489.6 544 435.2 544 435.2 299.2 489.6 544 272 299.2 516.8 272 816 544 489.6 544 516.8 380.8 386.2 380.8 544 516.8 707.2 516.8 516.8]
endobj
-611 0 obj
+862 0 obj
[525.4 499.3 499.3 749 749 458.6 249.7 321.6 772.1 458.6 772.1 719.9 249.7 354.1 354.1 458.6 719.9 249.7 301.9 249.7 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 249.7 249.7 761.6 719.9 761.6 432.5 719.9 693.3 654.3 667.6 706.6 628.2 602.1 726.3 693.3 327.6 471.5 719.4 576 850 693.3 719.9 628.2 719.9 680.4 510.9 667.6 693.3 693.3 954.5 693.3 693.3 563.1 249.7 500 249.7 555.6 693.3 249.7 458.6 510.9 406.4 510.9 406.4 275.8 458.6 510.9 249.7 275.8 484.7 249.7 772.1 510.9 458.6 510.9 484.7 354.1 359.4 354.1 510.9 484.7 667.6]
endobj
-612 0 obj
+863 0 obj
[514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6]
endobj
-613 0 obj
+864 0 obj
<<
/Length1 1169
/Length2 6544
@@ -3610,7 +5123,7 @@ f?xŠÊ²D“F§š÷ò(w!U¡:îõJ4ÍOˆlJæžU«•oPÆQ4áħ
–¦¡Zs$âx(÷ÿ
endstream
endobj
-614 0 obj
+865 0 obj
<<
/Type /FontDescriptor
/FontName /OIUXCD+esint10
@@ -3623,132 +5136,145 @@ endobj
/StemV 40
/XHeight 431
/CharSet (/acute/ring)
-/FontFile 613 0 R
+/FontFile 864 0 R
>>
endobj
-615 0 obj
+866 0 obj
<<
-/Length1 2625
-/Length2 29678
+/Length1 2563
+/Length2 29376
/Length3 0
-/Length 31228
+/Length 30881
/Filter /FlateDecode
>>
stream
-xÚ´¶eT\ÙÖ5Œ»»¨àîîÁÝÝÝÝ‚»—àîîœ
-ÊtB&öF¦âöv.tLôŒÜ
- pðìèdíêØÑ»x¸üåý;Ÿ¨ 7€“‘ÀÄÅ
-`©˜‰ˆ½­-µ3ÜoùD-:¹Ø;y2üÏT[ÛÙ»Ûyÿ¯ÕÌÒÎÄì·ê&® ªv–Ž®¦ŸDÿã 4Áý±™›º
-Ü_Ù?Ù™Ù¸þ6™üßÒÚOù×!¥žP{;O€‰©ƒœ½ p(ÿÿ9cÿSKÜÕÆFÎÐÖ”òß‚þ¯—¡­¥ç¿ýþÇEÝô7UÊÿ`KgqKSKc‹¿UýÛþÉÅ8ôBvæ6¦ÀŽüeRý}Žl€ ¼t,ßY
-Ê+€AåÖSû/âÖ3ü/bf1žj'Kgë?.@FÐÅ8uÎ6†Î¬@jÆÿElÀc{`+ÿ›˜õ·ÅÖöO)&F “@ D¦2
-쬅§ƒ…©Ý?<€6Ë@ '«@ rÖÿ€À=ÛüéÙþLÀÍþÉÌ µNõ?Ö»·ÿClÿ¯eàfþ,“9o{S³?±2ýÇêô/Ý€G‰ÁØPûhÍTÂñϨþF®¦Î½ÿúüŽstµÿ= ÿjP¶ˆÊÔÈùÏÆ€ÄMm-ÿÝ|¶ß>¦nÿ– ˜ÄÙÒãI  ÿ(&&`ý?eÙ€›s±p2ýG"¸¸Ûÿ#
-<¹tÌ\l
-^þ™.P—÷GŒ¸hÃ~¡eêyƒ‚0¬oRP}=(Z4i*úÕ‹‡&PÑ5}ðm•)íT=kî03€W}"dMtF¤'vú<#8ÉZš)ó@­k³ÚPhá%2W æêSd~ò x*J_]9ÖÛ›’‚÷„³Ûˆ(û`FU\®r‚kõþ5·Ð©6.
-Å›nÖÉ1¤J«í
-B»•tª¨bCR®Ó¹xßœm)ƒá¡â™­”—;,tË‘ÐY¬ÀÚ©ýpMamõþx„rQ¯‰ž§3ŸÔœÂº¸ýF°ÒòZZƒ¬Ûª½Ö£å;KS°Å¼œÎö“PªÑ²–:ÞB#nB|¦7¸Ñ54<ù \9É)èqÆíÄ
-:
-ÀWRíUææ•L¤eßå5t›wó•¹.žòüøòHïÚ?õ+”W*O±êz+OE„t3;¥D75v$¡n›)(܆¨@×À²ñ~£,Š‘’ˆÞ&Ä­¯ÐÕÌ»ÀxXl±Š°ˆ-ów”—þœÕ#€ª>h×{Ó‰Í5†(’ìôuò&.faîl×Òv%ˆÀ/…æ¯K-'II$Í‚fâz ò©=å´‘ÑŸ¿ËUçi7ŸÆ#ï© HQ8ý*K(cZ©`Ù•¨åÅ q=ü5jø-~“ù¬ƒJ„ºA™oÜVYLo¨;_óí×ÂÓ…«ÜäIl­O¹~éÏœõf§½i“½‡¬*ªàôuÕj?‚A’ŒîÜš˜C‘Ñ~ä"A
-BÇä¿â$ë@S²ÎN>ÈhD§"ŠÄ‘¨û:wçÛ:w—N*Rìõ¨ƒ>~ÿ±‹ UÙ¸B(‹±†n8‘¢²J/^g¸»³|ØtFtÕ̲ô¹©*-oEÕÂösðãšá¢ddq茰H8ˆâŠæ‚Á)óD³þѧ ¬T8ØÂpk[þUÓ¶ÊÏŒ#XyÔ^¼A’, {ØÈmK5ëIÁû®j?ƒžxÁ… ‘ ØíÐákS¼¥m-¤„kžg“Œl9À ‹ñ~ß6h‰i¶xžš
-ûYk™ÃÌŒ²´þ ™4÷ÑŽ¥6l ÿ¨¼Ä°ØMNÕç4|UZ¸ñ&@ºÄ…J!37+fáè—ÿÝ[)J^&(ÆÿQ,·y ½CéíWñwßm±5
-!„+b$^”íFÈ+ßöjt• °~|UÃÕ>&dV{iïÓƒ$Ëh×ΕìÆ÷Æi¥žºsæ—ªN×G¯ŸQ«§ (†ü§†Åd)Ήí?~!·Ä<Ô™!=ïÖëvqÒþ. ­Å#ŸèSq4×ÚÙMõ²kŸ4¨NúvÉIßçê&f+À>}jŽï„Ài¦¨h¹$7kÿåš±)À›é¥ŠAžøéÇJ¹Ò#{к:†ò3þ4Í dn¸¼¼cbÒLí¹F7»XdíhÿvÞ¦lŒ3µ³Z]… ?‰ÏûÁ†Ë±Æ:ªÚ&Φnw¡o?¯S§˜Ü©ÜÑÑq‚ÞßNÞ”TÁ7Èê½á9yV*d*(>ôŸ¶u‰=åzõqâ B=^¶—ïDþyBæ@ƨ
-q:L·\vç9z
-ÈÔ2\Ì<ˆgüŽ¯¯Yrü/L K“gB¾lñzd¬ —×ÆO2¿FÒ×_O¾8DÅmàJM¯$J¨#Pÿª6½ÕµLy䢌”«é sQªР¡ÅàV' ôK^æÀ•ëa˜åÍ~×áÈgùR…”ì¶ág€g}c«Þä¦ÏäOÄ®œìcñ¬i[sr𳮚ß>EXëûÇu?Å
-6K?g÷.ùx{?Èe±Æ!æ t¾ ç¨]SȽË4‰bxœŽ?ÅØÏÄ¿Œ•j@×k¾Üo™`Þ„ƒ‘‰q(ÙjÑÕ«d« ì8]‘P‡(˜°ìfÒåc†}w,gq› ¢#¿nF«r³y [u—{åÞ]ºkN9():s?ǘ5ueö½o’­H¶£â0ôM¤=Ì„³˜QüXc#pïvæ™:t’7ÀA†ï°ñ#yé¨?W*¤ìôâX„É?âÙ$É8{‘zÔ8IS%îÓíº±Ôòè %MAÚ¶·¹È8ÇtWŒxÖ%D8|`¬DE1U¥NB uçQ8c¡¯¯ˆyeLÑ°£V¼ÍÈq·’5ì7„3‡xwegäÍ7ex;XAÚyqEZ]¦[6
-ü6fO¾é¡¡à÷Íjf'•êQ-Ó<içBMY]·Bç2›&D©›e\ZR_ „ýΑ`cƒý`Hƒ©:ÓXMLïÍ&9³½«1µˆ~æHÄéÝ^RnåËÚ9‰Æ’6·‘qå~Þê…~+×AïиäVßtaé;÷ˆâKÍW€HkϹt¿ žw.$ùZ‚mqÖ0|‰tm…‘߯ãôÑ6uì›"¹Tö-Ùˆº?…{ï³WŠ8ÈÜö‹¯J»(
-5W'Ãr×Úïn$pBíT>¡Spáw ÆÊ ­˜¢µïF%“¡n
-Ékê°ñgß™D3†˜åš’eÔ‡çªÖ[Ê‚^êŽÚÊî䞣@l¡³ ô¯,M yß®uôÊmÐÈ T%J§¼ÔŒÎŒd%]2½M~´×æ%ÜzÑ·§ÉØ»›tOècàôs½²úÎf qcÃÖ÷ZS2L!;LmÐÞGµ4ŒÓ}ù©qIÊOÒ}ªûs^œÌã»ù9nãK3^‘8¯>'NÌ4e
-sØWìyCEZ&¿D”Ò\YJ“ðNË÷âLŒŽؼÞK’ï‹6‚XVì!2(k =†_ô‡h>´ulÒ´âÑ}ͲGSßÛ,zÖŠi3F;-éb—йœ Ö_Cs7zqXó‘F§þ¼=ëÆ÷-¥éˬ›Š¼
-ýÅÀ"zÓ­i%ËZ$¦g‰Æ{ŸÚR„—Ü
-EfÈËÒéX1Íî*e>¢|wë‘Ý:Jî5ÆÕ àfe
-.áöZ¦ª½²pa†¹EFŸÂ¢…³g¨ìÑÏãüjÏG»‡U]´ó-­V§¥Š¶/Ž d·º“;(´¢vÎâ°ƒÉéS<°'ZMÓB¯Ëž¼Buâm‰,Ô-.ê~ÃbLÒ•ºä}ÐV…b?Kàæç"Ý!¢îI{çI ¨Õ~ì¨/˜£˜;‹Á‘ž¶Ò‘zÅŒ—µèž"AÁܘ-ö?“ŽÂ?çøÑJ’Â] ™ä«•#ê®–ˆr-Œ6UÓéÙŒVLûõêbûø* ›†½­j0ì]FP’Rz²_‡åÌ’îï+\b—¥ô„“YœÎ¾dKÙ¨¬éÐ2ÿúikaãF§ #éç4¦½ WßeÊ )Ýç&ETX"• IÌRhsx.s¿àˆG½Zî¥þˆP Énfý»Ë x³¼/a¯5
-ŒžéšßßàÔF«XYuˆž ²f±5«âº£ùR¯Û_öõ‹Ž—ƒ?“°ÒE‘TØüL|ñ˿ч=ˆi4ó¯Xopm >wò
-k晴[–"MÕó.)Êîu|Øç!þ–o¸ß~Ï}åõŽ ¨vúR@ôbã8…èª
-_6¬/âjûd—(úÎÈ{
-ŠÃb 6ªX¢Óæ¦.òù[DH}MÅ~îM[½ëðÕ·ã
-+Œ6
-Ù«.ÇÐ-H㪻O½%•w[æÔ¢ÀbÜ€SȽw#tˆêeeïô0·é!ã¾!WIþüÈHÇýµ…_8ÀÄé ÃD*Þi?2Á…- }d…Ûà‡½6wD>ÜÏ}ÈïwVq.~>çZJoÉüf¥ëjLã(³Õf¼Nó§95È௱M5}i‰«b§+ˆþhqÄ‚¢à£ Ûtf“Y(•Ù‹§’Ò5pÀ®æq í4Z´Èc©~É4³Ï¸²E,½2…§°–Î-ða]•ZWms#J’í‘(fƒˆYÛ—Â2¥PfÙ´ï²ê6d,y3cSt_:š×/ÐÞÊzLÔ,¦ó_­p1Þª"õ<J}=_ÄsAJ …X
-½t³{ï…Á¸O›g¸nlÞ,„ÒwÝc5F}¹…W$ƒé5{»ÅýÎ4‡µ<äíMp]”(Í5›>GÑÊ<»ûŠFÆAeü‡
--ÙxcµwäÙvôœ.ŒI[º h-;$5Ÿ“$Ü®C×t@3&i?§¬ö$Ö4ù&Â"¿Ú—U,­˜û_Ð%‡û’BXÜ [úˆ·Ôh yÕÖ-ÂRnñ!+E{.5N÷¶ÂHNÖdAP Ò…áO¥IÝáÝ"Çè©œ½ÆêÕÊ´Rñ ?œ¨³bÊ)Þš šÇÎ-1Æ°PyÄÕÞ|•¢¢þÎî»æx*¹+1*…Ú;ÉòÑ…ƒ¢Ü|­m-™‘°P†Ó©$_ GÎÍpÌìqêT‘žo<þ±‚~춥#ÅãK·†€n(8NêB¬²9õ1¼¼!<b zè³ÛÊ|óC5o8¢^&#1öª؉qYcJ{SàÙ8]\Oº4³®ðl¥Œ/!ÜÏ”‹xrÿ¡cÅüK¹ž÷®!;;ÂûçÅíbÒP׆uð”VëÒxVy$’
-©ª4ò4)J£P ó5¶MûÒHéûæiÖV(K —Ç)«ùJÅŽåðüa·…D§¸%[Áˆ¡O5âM~ª|;éÓ÷œÔkz`ãUýú¦=½eX¯­•AÄ$.*Ùë…²‰HŠa–ÃÜ=ÚdÖ¯%1â°OkÙÇôÎé0HcQ‡ c©I¯N†lÊh…ev VÖ`ceÇ¿¶˜7N¾ä/È µ¨íœÜC42cËgG\[Ð÷!`6Êþ²ëNŒ%C_N¥Uµ]¨Š§Y¬véÑë‰À“º!®˜-¼<©mÔ¶ã¢>/XŒ1$ñÝKYqF€î“<Ìõ%voëpÄÀDÍp¦À玕ù«ãàÚÙ¯éæríš‘µñã"ØÛèÕöq‹f0{0ĺ=#¨ggºUYýZäŠï˜'r+˜}ºžRu„[šU 2~ûQ3\ãV#?'f SÚé¾–âŒ2å¦<€GHö1÷¡çY¤9Jˆc…& ÇüJ|v®d!ýeù±¼>áQñ–MæÆ•b`ÞŸRQ¹‡°—m³ôu$„Õ@°ã¡:ÖsÔÒ‹EÉý‚8™½I\5¸;ÆHa qÅÃ¥xìrLwed÷óân̲øFœ­c9Çâ
-½wWµŽÄÊY€A“’\wñ„Ƥ6(¢—ƒÙm¦ÈÕ׫ý:P}E­­Ù.=Y®Õƒ˜ð™Û¯·ñiÄya íÅa†›sÿ±ð°v7¹Å"GoN‘IW…Šô¦G[ž•|xx‹k²K¸OÂ[¡³OöÙXÃ"DS­GOwl-wðþ“j¦††üQ´q£à=}g[‘‰U£'%†+¬'•Ü/åYX«2õåÈm;
-³Šœ2îÒK
-énêàÄ"š=ÞtG…ã®ñyQ—dþ|fÕP ‰˜çZž˜%ÃÞƒJî–›±éÅ'^fŠK[¼v‡×T+h¿ º@Èœ¶‘ô­ø|½¯»3…½Ï×ßIå•YïÖ¬¯™U+wI'[#O6Öñ.‘gŒ_‡4‹Ð®SMè3ñ¼ÎÓ®ï4ïŠG¬H ì÷èL•~>{ß=ßt¥NåjuóÙ@a Y÷öú38Q nó2˜ÑÓs‰,;S/Ù‚½øb1«C‡ËbS)EˆvMµÚÔ¾ Å£ë­Ùu,˜ŽÑšTòº (¢W“…#'¿âõ¶6µa/‚ß‚2¥´jéLø¢\Žc ¸Ñµ(ùÂ&¿pîg˜ó"TGb‹ÊSîÑ.ʲެïèt×G‰LÞù*dîÌ>•Õ_Z±Ï:ã #þ•à”Yåb9b”ârÍù%2›á„ŠnþÃ
-ƒˆL!=S>xw*X•7× øR'lŠ~y¡Þص¿Ê
-]öÊÃ7<üJÜ¥L¼Ôr
-òr_Õs¡WÍŽŽŸGr´]Nƒ½cí_\ŸSÓø¥‰€¹
-rqVN¤÷$àÆBn×DÙGaªª8eØ ¯vöL„º4ÂvÈð1Ƹ‰ Ô&Äók}v,»Å‚%jÚÀƒ3¯‹š¨þ‹"iíwTÊgò-ÑÉç6aEu뀓8K
-GÑ&ºµ ÆQsºý8*çàfár—º4¨PO^“D á1µ±÷^Û¾êÿŠÝCW«o’°¯½s›oÇrhö(]Í›×­8‰Å¢£/¨øf3¹äÎBÙ4ÁFHŒ`ç¤ÞQ}Wá-$w`5@Ì!Z– ó Ä¢ÅD
-î#ŒÈWõ‚Îg …8|mUÐW 9™e ÉÛR–&¹ˆ¯ â3$M/Gäï¢s§sS:çq«zÌc“©iêí¡ ‰IËxª¸¥²Ùö­š{©EZáÐüŒø'L:;0²,¾J[šCŸE3q
-•¨½(bÙƺì‹!iËä²Uê‰àOøsæ.-Ø6‘Er€„„\»+oy¯ÛíO•iLiCò•T£ ‰õœ )Ù
-†£µ¢‹eA šK6ó Ø*7…`˜¨j©ìWOÁ¦ò*€‹Ä}†!Š_3ZM_¦P®AuwN ÒzäW¯0}¶—••2Å£-•šZÞ¤ËÿÆ°]<ð¨¶_ö)ÈqÁ'˜0·Äª ½¢O„"£mÁ½Häñܼf¬BÕч[Ða_ÐxžÅ{Í;F6ŒÔš1!Þâ8Vábœ•£kŸÊÅj…›u ÒÏf«`pž¦„½¸8›Üë Ù»:U§Ö
-[¹6<Z…35XÕïïwè½N+ð—Á#åñoUYOÿ5ÔUÔ¥ƒFFwŸ…fpµ@ 'Qûm‰jL¸5iËÖzQèó þø;…^'3ŽÑ*u¢|Ñhë<™Ü›½i2f0õ‡\å
-bÅÏPš.-jÇ(Þ6ݱ¦_zí1OV
-܃œh¥¨Ù 3gë~të2o”Ãü€ß4ÒpL4ÍúIð@Ú›•å¤"ua"b»R`OÖ¡ß=)qHSÀ8Êb8€7·À¨´oüƒÚµ¤Eƒš–ãPÃìÇŽ‚<‚|ÃÓjÝ;}›€ÚÖ4j†‰‚¾ØZI_ž»³‰+Ýœ´®nàçÇÍÚk7{áC—ž ݨ‘äØ\ck×Gk™{(I‚ß¹½ˆ¹šçè›V~Í*cg;{:»¥u|-@‘,≪BZL±ã«;ÁTXºóMÛÒÕf³¡ÅË×C aÿ…Ôx#Q•°È¹
-ÒŸÒµ""tG½™×N°îqÓ¡ð •dEàáÃœYúôhe0RëEÕ¹¹Q|¥l=|`Ÿq Ä”¥%剽3뇫À˜ˆm|vPXLh²>®F*Œ¨Ÿ1¯£âɦ¯¦&wKÆõ„—+\'ÿ²7íí5›jÈæ£[²Œ‡8T’çÓx¬«Åþ‘§TW?¾®{%§¤ÇäÖ —€ù»•ÇáèZkípP,/ö†Èbèp‹(G«+ý°­tmi”Òê”6ͧøÙ¦µ0†š&½±x`< §ñÝgñÀé'üñ£|ª–Ç=ЉY§ÁÄŸl2 äž Øj4¦EDW4lK]íg4–=¬}2²äšS»ý­Ç8bÅÝÁ?½²‰v{eâH„Ê¥°§VÚ»|6¬E)xÕ›Ÿ¿ÐDõ'•ô*L OÜ ÙJ0L7 ß*úWáÂÎGÀV&¼7?Íomêø®@ï>{2Þ½ëšñ%h?"W\¾ûLî…\Èc»mÑ~»Hæµx¸o%éÖûa€½¤¼yŒU)*áϨ8X(Õ㡆¢}Åôª½j²‘ð-&½„G3¹¡Þíu‹GKtd;‘;Ä@gbù
-~1lxñcå­åÜs¬¨µÖš…ÁÒ4ãò»;†6ÙBO§´–ÀbýJR^kp>¯óœÓÈ+êîÞY|ûv›ƒÇŽ½Ë #e¼;Y¨è݇8ª ZGs}qi•óØEËò«}@™cǧH¼ ƒj#ŸtÕU¤éûÉÓï¬gVëgîNšWÎèªùÇœ¤Õ£|+qUOàË®ŸOIst©”bFÌ’L$yzÍ›qŒ„‰K”&f)ÔÌiÝ$‹]² öIP­V©5ôCôii™ù±Ã(jþeˆ÷­å€™nÙ×V¶¶“ÞÿS\áŠð|¾£hžNÄ
-g—ÝУÁº¨¶E× …0>¿‚ÓªãP;ùœÁ
-ç(º×¢Íê–»ˆ?°Ïz¢SÄ=ñzkO“Ÿ¦ŽŠ«
-`ÐÌg«6ØpŠH?ïñÐSt•ÅRº*(gL¤¯×%³;z”e-œ¬ýÐBŠqñë^—ù–PR ‘ 0Þ\lr0UoeJ’ê¶EåóŸ`o #õÂÏødkEórG—l.ð3)3Wòã&V·ÝAž ~8ê
-£ e°/ÝdÈ\Ĥ~©ÔÉÌ>teå¿5³ˆ<Gq@ôpb@q8š‹ûSç½Ú)—©“šFn\ãñÔ—¢|ŸØˆA³ÙFõÝËæe~ESÆ5„E¸s©ðæVmLÌAÅü) @®(¨‹ÊDnOÚ)g{§*©¹Yh—9²90ô,9ðÎ@ßô 9üðÿÚ8‡îL
-B3ÿ^nì°d÷ }¹f‚' u#5‚7¶^^•ªãˆ=ojðà¹|±0ð“ÌÅU\ÈLŒ¶";Sw¾ a œcSÜx¢ŸïKWÕ|éöEH‚b9ƾŽŸ£æ|
-•öóÀï\çóœË
-vG¡8²Ê5Fé¸äÂ’dv}çÄÀ€Z"BO$úG~EX%üoömf²$í<r3ÙQD§ê8kü·1q2
-ýûÙintÄ 5^1E-îo
-æ÷ú"¤ý¿¸¬¡‚Ôµªð…%Åb‰ÖBïÆ$µ6°î<Öb×üu°^\ç´r´?Šï^v+~v!KíÓ–ši·=N¾h¼ô‹d0Œ5ÕrIªtÁ¦`9lY|Dâz)›ßPþ¸éâ6£ I”‘|#6áKk Áó°7á¿]Ò‡·~ßšôÍÙÛ›€ÆfÇdÚ´dPé3É[‚ccš¸ò›È_¸O.dTiYw
-T†i¨pßcæu y6x{ˆdÉ@\CõËÖoîËáúÞ©3šÓ;W€EÜ&‚$h¼Þ’ÅÉt«žÊå`Q_!0Tªñ<pGÿ:
-8ÿg1–"ܧ®R n\ºÔgY­»]&×—æ«Ù÷–
-\+3‹)ôÁ­Üˆ3ÌÙî¹®+ÉÐ?Nðpó´ŒA¦ò&«‘hroÃûv\òH+ÏQO¦$“ŽC@‡‘ü^yBM$RÿÑE(M\Âpý
-æŸýÇî².OtfÀ(ɸ­„¥ø
-»ÝyNym±4$±ÄªOå¼BT8L»… ÖMð9²ÉÈñ‡Üï+›i"=-c³½`Þv¨‡Õ¡ñ™86°q oBtûM—[ìJÛ­Ø7F±°õó9!“2©c1+ãgô»AþÛÉ®JãÔ1¨êb²ƒôþ:gyhI^H_ô¹€—ž?Ç
-O4P8ÛŠ1ç`² å
-xYeb¼Û\ _7jô–SVsr2@oÓðïf–å2“d¦í¾‰ÎU›‘»XÔPÄÅ÷©,…Ýó¾(&S_ë¡-^PÚÌtx?8â¤À†ßkÛ~à,d1Ú†‚ﺧ¹R3°u'ôÓþrL*+JQn×gSFɯÿ<¢¾%Eâ&Kð
-f];>€RLÄ/©ü‹B ™¢žÄ™;„á²W­]k¤mÛYÎß'ªéïWÿv™ÞSðCoîÜUŸüý2 ­vη­‡¶¢m´¡Gw’YŽàÃ&(ÀKs6pÁeÇvÝ
-ºÅDò Äf8GÔ&µüQóRÃÑŽ²Ë§ÃŽ'ò§Œ»%X
-›s;xÙóÆJ`TΔսó?\¹8l|ÏBV¤Ôâ†ìtÍcFö}G:5 ÐôF‡/êŒÌmSS&+Ùœy®xš|ÏÓþì©…ÑŠ_ã†ÿ<ú+ÿ¸ÅÌ4=—@žÑÆu˜ˆ&П„E?zj£~¦µ<ôVM¹< ‡×#5‰.ßOñÍE¸šRGðô ë%+‹–M?@oô8÷BRÏe“|à€Ñ ×
-$6C
-º²F£ƒñ§ÿÝØ
-3?”v« j¢Í<%ÿ¾kW7ºtãòŒ¬IÐÔm¬‘Vçê·Vî•®FÐП— º3ô *°ÆµÖ¡åc™gÁƺPT|=m™™ïÊÖÇj$ü &U<|Á‘¬ô³ˆ, ø´×”e²•8ñÄ‚A¬AhÉã<H³)’´@rx*uu1ûÛ\ãµÐH1¢ž,EÜà¼S«ª{¡€ƒ8Ì>ïo_ŽÐ
-ˆê:UÓÚÌÈ–C
-åe»Óµ/WCÍÁVëK(™sZéô™$h~"¬ºî×®ÛÕvV¶C$G¶õÉ]–º´ÃPm?;sj̧÷´gå
-W°¶!¡´UK“G#ß‘¤y‰ û:î²ú¬¯ÅÌÅÛ+hr‰›…þ>‹e1ÖEM€R9‚oG²uõ´â×Æêåhˆe\–º
-¼?ióNäÈç9 º. y¦¬4™¡-^ìHJ¼{ |aL`§hÏ3f=÷1åR6ƒb¿)Sÿ„vÿëëtüUßÊüdÈákØÆf†›%r†ïT×Úú..õès“Õ ERö*cÞÓãä;”­“Žw%ÿL´™[Ý«Š’o(Ý^¾ sIKÉ
-QJF:à¹Í9¶ ÁŒå*E5Ý-÷™?>N]­õs‘…3N›£]¤Õa\/ªµ€É…iôà½èãšuâ¸^Ù%ü¨€×Ž°ûÂò•ŠàÒºèú0í§„õÞR8yv›^Û/±›òO˜©˜z.C*J¡c?þìnpì¬fLܱšPmý;^qÅÜÃ"yñUîv° ;Šd첸èÊz ö=ö¼þ4L ½Ð%ÈÒð2,ƒÝãµ-ý›™Ëì=ok
-TÛiÏm²¬¢¥ÝÂT×D÷¬’rqÔùr«wÛG’9¦ƒŸ£ã¡‹ÛÑN>¦
-X1©c—¶–D‹8ƒM^'"Ö‡µü“;”s[l:›Šj¢X5úßPëú¹uo?‚ ÖŽ"+kñ}7¿ŸJ³O1#œÛ™K HÕ](û¬€Šÿ2CJeY ÂÚÙ[}¯K¿$(DÍòÀ*û^;¦³®,÷uÔø`ƵE>Pâ"ôÒFÀ ­»Ý.øüw¯Žàƒ¹Nƒ­
-…wÌŠ·ð¡x·Øë†8qXÂm,Òk¤ÚDU«w½ž4åªõTßÔ
-5|[/œCã:õ¤3“ü¯qtNóû1«n"þ8VTÏž",Êh}&Öêé]ñò,kdœÉ4\¡I˜Ûtøú_¦¼~Å$G»`[g?L»eVÉÙ\¾ûÒ³àÍÜ×!⎃qƒ¨©Ø>}žÂ;0IX´”ÔŽð!KÒ†&Yû»$ !ªYñ Q40AÉx>~¶p­%Uè/.4êM1\H‘êo6ÚüISÍÁ ´qx5©N9BÄC™«$ùŒ~¹ødfQ¯S '⩿ɶþÚ£!þe·žib>d².ËÐÄb±©Ò`”‡æWÉU–ã’ÉS›a·G~æ1ÄÕÇqÃy2•J°’]&@ÚS¢ÉL9a2Öö#Wˆòk‡b¹(Àøº+\:ôh*É#nõYvZõ
-A Ÿµ©ó©%Sö‚ŒhØv~÷K«ýi¤bžc–§3¸rtYÐbÈßp ¥EÃÉæ« §‡oMYꄸº¬‘Õ²PII_EF]šå)?* ÙÍW Ö.µc]z@ËêÛ aÇ÷\CðÌŠ9u{»(¿Í#í6SZ³ª­Š´L¶9£ÛÇP†C¦Ù@€?µœ±ÔÏX›?ö±\cè^TµÎ˜×<bç6i"€Q( B{¼ßÓ¸¼¦ÖL ø€µG6Ó êP¿hz'ì?'‹;©l,/ÜéІ|­Ø{£1y+=øl»!/ê²ø«y, ߌ<r&Xéu?\ô×X>&ãÚÞ,ÍlÑÐYše€6UÈÓº%˜íŒÁØ>+à ã‹rGÙÒª'Ì–*|QÂSýN.•†ªh¶¹1ò›Ö»´äœgŠ¯®ÿ®=”l¸o=k24NZ¸kÌì–­²Ü:Ÿ©ì®˜ KŒþ«îIµGœè„ [žT®ht3Ñ4TíZŽá(O‡8’
-%ŠR[S †Ðˆ/'÷Ad4h0tQ¨o!`R§•+¢©ž®ô§ÕÕaCAW
-ÀðòZ€pù6øÛ³‚Tæunu€w'
-å•ô ZƒPâ#ê‘õATä›ëÐA
-Ú-§Š®„“x
-.}é³Í©lZY‡ª’Ù$.«‰–߉8»ïñ®´±ë"$ú“乂eÍv+~ÅuþSnÇ“8k^*玻B—C˜<CåÛbÜx $ç†dVI¨‡1ÕŒnP®B‰ð êÖÍROêXç>ìVjkÿø¬aŸƒ¼žiA3àŠèð~ss¢#ÅŸ[PÚ%ú 8‹b£S“PgM‰íŸåž9¸x­`HƒR¥Êg~á ÚD+ïúTÝt±j8LÔª£um=âѦXíÓ\k͵Ê„É‚?oÄðžƒæ$Wâü$fûH²_Ï[îÄ=Yò¡ó¶ƒ¸oÏÕ^|ÎÕù‚Ë-!Zo`œeâMÜLšÛ(JnÈÈJ)¨ŠŒ@»"ÅFKKáóﺲPו"-ºQ—5à‡Ãðã9¦Ì»$¶u<çÈgò´=J¹!“­^^8­Ú™÷%'ó²Êš©ÞQµ°'ªéW4Z˜]f;íK§óö¥ÔŸýVyôÜ°Ú807–?cæ• ©HüˆÅÛÜT$v+•Ç f4%Pk×Y-2_jRÇ›øw)5÷b›‚_ÉÇ…Y\¨çC É„ô®*p®e6¨še®˜_0Û&ؾ6˜¾ûÒêÓÒ?ʳhØ­—Çån¨ÃëÔÝù?Ã}Ó}ºÈpDÅ)oj‘ÔÇ º#r˜?oïç³JõϪSö§úº{³ûC(ÎÁdÖê p.7LÓô™~†d)‡j¯Óp‚mÝÁ2ˆ•¯`Ç~ÀÝa¼y\14;$.‡êTXß EAA•ÀRSÒ\Ô±\ÁìˆtáÅ‘é~ÈÿmN¯²+”ôÿZ³Ìáÿéì,L‹À
-@'¤n¬SIhLþþïÇi/{Iifsžbrñ˜n—Á.î°k¸kŠž]Á¥²Ã¹æ«6z1úZÈês7ÑEâéðy1*?k°ÈsÇao¥4F®“
-qÕßO•*àÕº>¦ºptRv½mÑYn¬yœž¯ßž¿4;oeAÿ!>OXï·¥fó ÝOø\pn#¬ˆ¯ÇÓoFò}S:¹‘Œeëî@°L°ìiFÀG_¡²à0udžpŒÉ}_Žž’ž%"C§²ÕûAøSzðí´?©y©™/6_3ÏPcÐ]Ä©7›¤¨¤æ$³ðèá· 7`:Ì
-Š|B£ê槷66)˜p®°9µ(„EmÂðH¸=ÐêÕ
-K™bþ´þ÷#eA´Tÿ€<ÙýeNi†lµj8R›Þ°1kêlôÃÂ
-—׆P2W¿g8n,ò5$`†ôioS|¬$Òò)¥ÉÙF÷»a~/ ÷ÜÂj8Ï:˜Ω†,sÙô7w-t¶"vÎ%ie ?ìÂ:‰í’|K¢"q®Kì^ E¸¥02³ƒ|âxãšÉkíaÔn’±ë¯±Î5ÌØ?yÌpþJ!≃%r׋%¤Õ‰¶pbÁaÙGËöâå:<ó–qé¼+œf_éëmõO¡Í¡ùȱ_^9ù…P¥ÀÒÅ8`ð´€éë;Â0 [p—òÖ^CTÖÓ}ÅEULRd´«ÎãÐ\ˆÃ1 ÄBÅQFý=@/j¾±â[Îfð!ªÖ­ª†eqO#$´Ö òöœŠÞpÿÞsºäè6/u ëw˜䛫p•ÓÃþåU#‡Í<1PˆÀM.nhÆõ-"¨uëÓÒ®0VwU|‹OU›\ |Tæ—êOÉ)m ­§‹­t^Vßð3k0ŽÓdzM!äÍWŒ™ò£’ÌØÇ6’H®Åi”ÓK:' f7•ŠŸÁw³T×àEàA&…Ù3|¥Ç£=á·ÔìàNæÅ\.”qCj¤È_ûYÉòUÛ ©Ô›Âò]÷î²ëÏf1°%âí2|š™
-޼ðµ9·Òø²\µDJù+QèR–õ ßZŽÖø»ºP<`iN™(tZ{7ä:ÚÉÙ~`Òé"¶H {;Û5õá×Aî7ÒœXºA½ˆ'“¹ŠÑ£…m&Žn×`™P!ó|¾ %.-Â3Ɉץ«hfÝöT‡zT»ú¬TS»Ð’Ä;rŠ¥i˜OÞŒ*ŒÉ?é¿S3è
-¤y«{’ßVäU>À#U©ß„2¢÷\+O²+Ê$KXVÏ2¹{¹}Eã¸9@?Ø=DÔ0ñë ›-–½ÇŸMœðg_0'ë’Œ‹ê <iqNþT·‰Ñ²„H».9?‡L϶^~ a¼Æ[¢êM VÆ8 ‹óôÁѬÌp.•’¢Š—˜=ÏR¥t«ðuÙy¦ýsØ}ªfX€`¹ÞG)Ù‹¶VëlîMàbC˘Nñ›eÌ&ïäºMµÑ¾œ™á>ó»:BYêÆ,Mö¯Z 3i8ØŽ¡Þ-ñeùǬè‰`Uè“dóW“üšÑYœõ¯a¬L>Ðý[[ÁéÊÁ¨d ‡ËMbs ‰—è¥Ì®QmRªªï¼þªHHy+9À9é^Ï#ÎUý¼Ü2t¥î
-3´†¶©~óX4½
-jóu,VF#ùÄ°6»î–ŽeUåpù7*Ërÿvé-:j03È"  ØUó¸UÒn‰{ÙDmÛ}À¸®:Õ¥ñ…~ôwí.Õ°B)ÂË(²šù9CÝ6¶d“ч|àòë ©ˆ“>ûj­l9ƒjI°æF;×™¤Ó8w
-ß;ÇäOô£pl"ˆ¸‚3aYÙW7ÙAš[–zy°*êÂ]k¸iÏ N’Ç2Lbex#u/¿i½×é~Yû*= Òýj½â¹ÎÃábWChˆÕÒœÆiØ%ZNüÀ•˜‡‡„.˜Z)ÆE@yìÞ®®À®GI¬×Òêeõ¸pqøq2c˜¹õf¢‹*Çr+vCø{+Jtù°G0ù}D³–nÝå»U—n{G¸ÂOMÒj¡R QOÅäÊ㻦íWA群pÀìÏs\#Ä)˜ÿ>±Xî˜}±-V@½8é5ÈâôиF¸/F°Ó®©à ˜ý¶1yYátíÑg¶™Tƒ̲W.?Ð×
- y—B; ”á°×ëŽõ<ÅQîÕ,QEËþñßë‘ožûc†\º„厶28X(YÚõ{×çr}!×8g[/õz`’°ÞB4à|é¼Ý=ª:5ððwÏ+04ð!Äzü—qù35o°%@`úÂ=]Ô¯!…ôŸ¸íHM=¹Gé1ÄŽÌ–oÙ‹“©­ÑMêˆ_~Ýd
-¡¨Ì÷WŽ§|QÑ)õõ³Œ÷Þ™=¹ölÏÂ);°h¾?† .#²H_ºË´œß[2 5?«{¨O„ÛÕïâ-š 5ÿë(÷Š_Ȇc«¢ÇòxÌ!¨šÇµ€eG™›5x@F{ÆŠOôÀÎOœGbÇ\ùÏžð,Æ}Œ¡ž¹°„¡ÓÉ,uüVâb?1?qˆ~(åCü
-DjWá(,ûì†O ù§&ÊÑç†D]šy©(`Ê_ˆ”b°Cɾx|Þ|ºk@”ÙûOä.³4³ÚÝ&:{AG–lŸ[ ÜŒ|®¿¡I<â8tZ˜Ú‰ÏýlßDéõ±cid•_£ìiÅZ½|Ï·‹šûoÑÓ^°?N—¹!žXPÚã6WŽ7~ÿ@{x²¶l‘5BÏ SJ¸ÞàÚã¾Â5›ìúF@v4ÉLÔÉ¡Ø« ‡ËZ¥N®Œ¼Ë>ž?É_…›`@Mîffl¢{`ʹnúæK1±Õ²0ÙÆ­€¢x ué³»x½F6æ=.ãk·X¯=ÄÏÙ¡ñºKg•о :jïWïíž@2
-òùÙeÑ¡*¨Õ4é)¾(î—H){'åÄ–•üüq<äZ?E¡Õªì‚³!ÊHµhÚ#O¨Ces‚#PØ;ÍÆÓCñûQéªê^ú®«’,©¶{pÿ+Àö!Ü‚šU`Hìˆ_|UŽé9ß2‰¬ÎCLÀx"¥‡%> UNŽlÿ`Ç‹óQªfÝ×YA?VÅk7GaM ÝÝ”»uq}!‹‘=aa©ìf.½K™¤FâcC Çþ0’¦,–ž’Ð×ึ^\ü8}"¡bÁ£æŽù·öÐÐc|)ñ“=ü½ÍD"USUÙ|*z®z5qZÁm– „²pa6eÕUÜbÆúÉ)Ý,ŠåüÂ;ŠÐ쫈˜&ŸÁÖöÈE ž%5+Ëg•~a
-BE$4H--8g„ý‡@ÔêIÆ{ÇKO±Š#Dz½
-\“òVX†²0ÆÌaüJ‚NF.™D0²”¢£Å/UîfX©©b–´?éÀbÄ&aœ¦u ?}ïx ~ø•Uùî*}Ä}çyØ~î'ôv–?ñOç¯Â/LbZ¡öœ.à\’É1Âà-o¼˜?h\ó<ÿI»ÇºÃE¢›,â`¬æ¡ZÕ¼†¯x“ÇPíZîú’½K_J_a¯ .úûsz‰æ—9­u¨Ób¦‰ðŸ?wWßÐãe6² Þ^vöߥE»fèýhh»Ó(&ï1X>Çà¡ŠM˜bÖÞk íëÎÌZ ATÃSÃÉ‚‡£'€Ò]Íx6äBõúѤŽz‚û(b%-ÙÎ}!Îô‰m´wžvC˜jR÷ù´„Ø"…Í«ŠN
-VÂ!ŸWî[‡J³Ë"öà‘Þ¿œÚ•\:·ƒp%4pæúZ¸¦Ô£B5óü¬ÊÜÀ %Za‘¼ñ{5aÜêµHÝ–.-0:ʆºB«ÀFwb‰/ê˜^
-pÐ+°ná>]±„µoÅ–C+ê00¾Új¨ZØ Çñòîýd´¢j†.™%–T<…‡µL¥ØùVVU¿ÀClŸ°wùÔ,t¤­‹û.˜®‡ºT
-âT†Þ/ŒS¾öÁ\žn¡­Æ;C]¯aÚ$™Œ—·¸ʱ¤0ˆ™ê9œdOÖ·”BtF†/¼,‚Oî_¬EYÕwû ºt­†ƒ‹_ÿ×¼ƒ‡´º„-8R”QÞŸÀûGÁðŠ4_ ^縬©¯þ´?Õ¿ZþäÝÓD!‹¦­»hŠÚ&gÃ~9LzòU1€cL‹Ä³&;+5JR”‡{€7Špe×J\à–ØæÕM‚
-•Žáh½ÓT9+žíÁü©E3mTt&dT±šˆÅxÂë£t?Q‡\ØW«™ ùøÙtÙkZ`.™®½çLÄp`ú›œq÷ƒ¼ŒQ*OàmèF9&su’]S² ¯ÕÕYÚÿ8ºê~
+xÚ´·eTœ]Ò5Œ;Á hÜÝÝÝ] 4Ö¸;Á݃wM‚»Ü-hpw ¾Î=ÏL2³Þ¿ßbA³ëTíªÚ§Î¹®¦&WÓd7¿Ê€í]˜ÙYØ
+ƒáò›Óö_î
+$]œ~çPþ÷’ÓÒü»t 0¤3C[o_S÷ÿÝ1S{Wg¯¿´ùï¶ÍÀöÎ gç1 [àïêïÈþ›²¸Š¼Œ´¦³dð왕ÁuìY\<\þñþÍ'.¥$
+zq{K[ dGþ1iÿ>G¶…\: ßw€™‹çÖ ³hfctvðü+ Ñàê…ÿ»Z
+9ëN g›?×÷Äå=dmM­þX!›ýqC"ÌÀ¶ þ1×o‹ÝŸØÙ ]™ÿÙ¬À? qþ¹?ÜÈ,ü• RŒÅÈ©Âô‡„ó7tû‹õ·;ØÕé/ˆ‹å_Ræz.ˆ~VžV@û¿< 6Ð_R§õ_¢±Í_¢ƒí_RžÝÈiè/fvˆ
+BX(‚Ÿº=ooí
+×üÖó›åöEˆŠz0Ö-µ³œ_ƒ­fTôæ^ÿO}¿d K4÷…0!>ÓÖì•æ¥œòú0ýf´—™¬tà+§ó¤týD-Ù¸ëò²%´ñDQÏzx~`|é.’Z„à•*X¬½Ú$(X®Ø€ÀC'ÛÁð:’Ô¨².%ÚÞ»d¶ÛŽÏ¦Œù^CÒxîÆWü'ýä‹èlLl±–„¤Ç,毞œ•€!/Ö;èö—¯G¶—¸R¯”'.“7ñ
+r§Ú¶*¡D¯ÔŠ’’(Ä,dŒ¡*TS;Ë™"£#fUªó
+ß6Çcìhç÷*Ðî9]å‡&”±/WpnËÖ
+|pÝ¿2‰ßà8i¥—dø¬)üÍNSZ“¨¿#Oÿùjî癫ÊØ0el­Oq:ÕZÎjƒÓ΄ùÎ}V>=}ðÇ{]íj¿7}”é¹51û’C=…b
+X¾Áãj™A¦CnLïÏ„d—¿¢®Œúô®™"+Cî_—SbF|Š›.¨iœCZÂ}½«ÿöšÒÚ ƒÖvGÄ]B¯äsË
+&º-M=8ù×±ÙÇK×!ŽZv-Í庀$ÿ—Êña؃ŠëõÂ#ÄJ)áî Ô1‚;~,LV”Ÿ®«‘Vû±[*³¬Ï“”H™Î„Ñ_Á|-jRKmÕc¶7þ…—„ g
+/>YרÍÉý…sI
+@¦€Cž·ú݆ŸÓHIÏyLäÂpN7ÓH¶Ó-ï¤ìÒõ:ÊËö™üM”Ôjt„Nu)Ku|IÃx;(šãnâÈ%CþcL{áˆû qÚAŸ å‹ãÂqª‘Y¿‚‚ü?ÿ­RV¶]±œÇò%; »HG ¨¡`üöF‚Ë(’‹˜LÁ”Àm²Ïå/^V4Z:±ç
+¢Q³f¶Âžµ ³[LqodÈÔjýð¤èlD¾†¿ì+†¼pjÇen0íTA*gÕtï¡Òë_ÎŽïØ6MLOÓ¡DŸœ*Œ“¥TSr± ±ÙPZC§“‹9 j@fXtªÓ;7ü”ÓuƒRÒ†|…àåÐ:jŒ¿çË槑7Y¶L)ˆŽ,¥êMc¥!‚QtŒÜ"Ú­ëõtôþC_ölSÔÀõlnçi…(KînYÛ=ëd$ƺekæû“ù—å–ÛOÁ
+‘|Ù;R L}§b;Ç£ªGçÄèî“\
+•Þ-º†ÏþrJŽŽªã@Ö‚èõ±Ïðò—‡5Æ)Ž)+ÍvßeC#Sk¨l>™²^ᯈ‡èrÖŽ·<Þ1µ ’+¬:¾ùÆCÚ)üåö–s¼5¤Ž/8{¥ë êÂßè:œúŽ°×
+*ƒÃ?Ñ(Y{Ý"3fÌ–Ìî‘Üí^¦çKÈõ¡¥r²¼@ý²´àÑb¾9"^íz”Cô–¢îÌzÑ+/33 ½€Æü~j—…"Û^Ûki߬y ‡î<GÅm›Ôä ,œÔÛJ÷~OfçEðSÄ^Ã8tC¼xm©‘¼}~‹‚]ºUw$YÅȃ›wú«ÏÙ–@Ëø ÎÍԡѧç#‡·<ÞÃ؇¾•~IŸÇ7Tý`½ê'Q‚ß2[-›:­ë ˆ™¢‚u—a÷àÄ$ä&é”Ú·ýžIåƒiP/(qê=ÁÛÄÎÈô{ìÉŒÔs?£}ßoÅ|V.jÏö5ù}ª_Ýbñš>&&f‘4ÌXÏ-ÇS‡öã"¡^¨v å®uë’vÏW¥ç€8ί4Ì%®C¾sÝæ´Íϱ¯Êʹc‹ ð…)¬œã#ñ³[ݤ}‰Z-˜©r.wn°¾ ¾hùkx­Ì±°†=‰ÛÅDrÄ9b-˜€Ä»uêÚ6QÚL£î\MN‘¬€ŒíB÷z;ü°>ð D®ƒ¢‡=*6&1¡Í†÷Y ê("À¯˜”?„’«·±—Žr„ÌMJòÖ×»4«6@þq/¥míÊFˆìÚYN˜ʘ¼ŒK9Ô¨,»Ü( )IŠ¢ÒGæ=#0ð¨Çk_ñy#&1d|v,¿¤b»A&¾«Šàü8vUE8<Q6G7çÀ"çcÝ“ÆLïU*ˆÊêXOÄàò-—1ÃáfÈÔQÞd}í‡ ˜E´õøŸ5ò«„ïÝ%J»°†ßGdy-š{½ÆžiË!o£ZÇÛ·@¥oxʃF ‡ˆØWjÌÀÿ€à¶–pKËÛªÕWSʸùåm Od,’/K¨$¾å<îBÀÀÆΔü3Ú›MNÇBÍvã!,¥@‚˜ŠÐìq®·R¿R'i~Ú_WÎ#+/`ù©MÜ|!sÒë/ù-aÍ?¬u'‘¾áû«úMÑã¾ã"ì;wŸKL>•_¦¦ï¾àZ¡;™øšXúÍzáÀË攼Ï7 î‘Å¿ŽÞÐF”ò£e˜Q
+²ÄB;5îÆÞ¡nä÷H*NÊ)Á×Yâå¯uF/×v¬À¯½ql¯U" K©ÚMg=ë)iÀ}ͬ9~÷e¸U‚¨üSšñMžæò;{4–€Þ‘ק$¾dP”XÅVƒ%SOtm–l'ùœ ?ßåì
+ÑS#›·oŽFÂMù
+ôê"îÑ*´¹*!ïÕÿ÷ÍO$ 3@,ª¹„¡¡obkãq‹ ÷4LkRËך¿÷r_$…$Æ1Pqïy›ÅŽ´Ñ\ ³„â.ï›.Ÿ»PgBé9D,Þû .¦&Ít¤üDdµà’8ǾaëWg‰É{Ás¬ uû ™#¬%×”°Ëàï&ù~ùl¦ºZ)r>þ·ÙnʤŸ–â¬~­p©©"â$ݹkMÜƾ©rT9?UÍÅ;àÉ
+N¯ùðŸ¯ðn~Nc’ˆýƒÕÎÍŠGLÅØK̆ûƒ©¥a=Tç«õ˜£göS—'%Ý­l¾AàQ1Óu}$?äm>â3¬£Jz¡´•ª­#p6†”s
+ÓÓÛ0ÈÉ*)ÃÁ½ÂŒjŠÓs¤Ñ'½94äôªFĦÒ
+žýñš7 É9½ši¶šíé¾sA˜¿»L;c²SÌ´6L5˜=Qã] 4æ"´ÜÇúª7Æ°Œ±o
+W¶ÎŠ•7¼] Öš¼÷ÁŸ‡&Që¶<™ð4jé×ÕM˜º‘sv‹‹Nu†šæ×Ó1(¨œ¤h!ÂßãL °áqP›-f>Û„ø]šZ£³´ŸŸÅóR~‘%uaÀwz‰t¸ 3k†ž£ûpݾd㞊¼o¬8±/I¨É(0<Ï8‹ÙšnÂç=ÐØ3úí„ËËÖ…8Â-Ù˜°,‰ ëºRꧦ^°¿ÏÀI¨(ÆèÎ]¼Eø—Ýu¸ÝðyaÛU6‘#«Ò¼Ãú›ãü<$iÃÔ;xGüfÌÝmI]Þ;qÅØ{Ó®å*; ò‚^† u­<yI—©<´o>ºjü,óÀ9ðÚ}TPj'¬Æ>\q<ª}.0:0¿Ÿ(P¶8„&–Ã~¦¦ëä@^F¿Ã9“UìPæÎ,¯÷C i§ô·ò5èqvNI!Ïçååv…lQÞÒeÔŸ"¸^¾ÖU6®¯Þw0Ëøc;_ªÿàzÅçND\ £úãOë»%Tl kãûSa‰³ªüÇ6Y*bòb|C}¸v9b(Lwp–æ p›D.Þç^(èõìi1‡OÇrp «Î4¥¸‹Ê©™ Ÿˆ2ƒ÷Y‰Oü9Îè¤ÜVsÖ7Êp~Ic>ÄÇ”^Î'¨¹{†q” §øl ó7@£ò$<}2¸,9COé#+,ªñ‚¶rƒÅ.‡[£#@0Ó0²ûº(ò:ÿ,;EéMùR{A÷ìh¶ã²ÉÃ^o9å·=o[¿ŠÞiïÀ‰¼ÔË4€_á±²ê³,m[¶ˆ×» g4 1îY±Ö Vç„ð”âÑߤ
+áêádÚ~6I4c[Wºn(.53vïF^âöÖœ¸Á0Yò¤¹#"rP„>ÓGUGv,âpþ…[“«™Mñ©#¯¤´= pÒr¡ØPCŽÙžIWÌS^orŠQ[,OX
+F‰$a™"Ò anG¤ë¦ g5‹Å
+Èšh»²Sá÷uî`^ MòϤ×-õ¢Ör<Ÿ6FÀ:ŸdmÞ¢ÝòoÅl-zk§?Ff ¡bíÉfœ
+VR0”4 Ó«©ÖIã'”{¡H&u’ôJPÈ¿&‰X¬ i<î¼>±ÊŸ¡>gò,ƒ­Ê8¼™ÂG, Sv´®)4âÜ~»f5N´Ë…,3-"e÷éñè Z(Ð÷¾h•6Ñ ã=
+Û¨¥Á:V·óÑž
+›hƒ%;Á³°Ÿù‘qS`X3‹Õëâå%?ùi9…Ùî4ëSï³Ë%·ÎƒxÒ©#hn‹Ã÷û"v°m®/,ž7_õ\`ÕøC¿JÏš—øôm¦R=ö t{%ê>·VaGáÙ#ÒIúñXŽƒ[_˶æ[²í ÄfÝú›…¦~/X¸F=ãµr«”ž-+c÷•âI‡¼Íëö1G$¶Œkû‡k¹Rw :N þ•-Ä–4‰Çe/–
+äþa½Mo–gÄÁ×Zz
+_¤òò€ÃTd£¿ïSÌEÉMyÊñ‚‹ˆ‡#ð÷)ûtâ—'çÕ¬2ž–ТÏL
+×[”¼H(zëw?Êf´¿Lës½w6^Y¼`qzŸ`¡p˜3¼Zw•,™ MùGbóÎ÷qE˜ ÆóYEÎ>GH¾5¤ØD"æìóm )Ô³7Úχ?3ôóùÊ(!€¤rÔ|,®Û½Mk‰NYÝ~׎$j5£ïšEEEõ›¾T¬’òûù'{Œ48JÕ÷ èéÅ-„bÈ‘UG ¥ÕÊTeœH@U¢SÔœ”’¢žAž‘‡Ù8“½M/º‘°.’ ijÓöNJ¤Ëš¸#Ö<°02M'ìÏn%Ò¦š¹ø®ò¸¼:¡gƒ¦!‹Óž¹\Ã8CuUCC}Í?*½òÓÓˆÈeŒãüî>E!oÞ õkå3ÎBÝè™ENôÔ±8+¿Ù:l¡ÜTú½>[²6¬2ØÜ7¼”|ì²Cì’GçX¡]E¿·5ñà&ûþ ;µ’L„¶0ç¡5‰0
+TÃ.µC—X¬ãq–ÅIÀ¯ ¨´ÌOŒR¿¨¸¯4ÜFó½FÊ;~K’.0àzeÂs6E_Ø¥ëqh//gýJºwÍZ%~ ¹xع’ò•¬­Mu}Îé¶*Ø£ÿòµÓ'é¢q“Ó¼‰Î™zE¯[•uØAß ‘æ„e:’m(‰¹o’õå7é~jë^E²É*Æý À¹ÑRµ”íc·šû¦OCu)¨K!~|`ñß» !¶Ì
+zÁ(Uc1¢Cκúdðú‡Á;ŒÀ&´ìOG0QòØžnZ9"Ô“‰Í•AšÑÂ0ìVcaw ß_}x¸Ÿ¤#5bXf&fÈìü¨_çùÀÒÆÁð«Ê`çé7FÅ÷™ML êv°úõâ‘©µf¢[O´üÄQ8ý6ªJ±Ïl«¢U{`]kTlÞAÏÐÒ ƒÃx,Ö K¸WfEAê|Wμrm¨ßDÄ^(¶SÀéH6ù+7¶(ÈWμËcÔåUAž­}¿f¾®ð†£í¹MØ“Öºè$qq®i{R°+özI­2H–ŽÏ`“2§&ê4HÌ€¼DèÔ½]¶z÷^˜ËÓ1·zEÂWûK4ßפ:ùˆ.Mv‘ûÀ{†……¿A†NX¨Ç}Q¨;„RÆô¨’)ÚklQ‘¯výÁõ¶…\PøÖGë@GQ¿‘ªÝ#*Ëã<Ÿy{è+|›JµÎÃJâ@…*
+áþÈŒ_YŽéèÈ(*?;+¥²2ì@"Ý]7#çz3QÒÏtƒ»ÄŸ*#9[î/æ­‡í¥î xê•Ô8ׄ١ž<4|ˆ.Í
+)%ë…UªWÅã‚Ûô™Å°õ&:£'—ÉjUcçµ5¬Ü{ ÆTm "Õœ {ßͶRM5½>L¬°²ïÅiáßDfL¦ORUûÓ‹h;«ˆ!whæz¾øú›jUœ¼ç<ðð%©%Œùl)£:ú!˜¾­ã•¢qj j"vs}†Öõuý¬Ó <ò¨l·¥ÑÀcμbeæÚ`6›;³÷GNaÍ¥T@ÊÈaêð‹|Å•xX¾/8¤£&æòÁD[´ˆ_oD­—VcfÞ]\h40öŠ#©p¸lmå#¼¨ºòcm›!“2l}[ˆÀkKË 1L 5óhÊ¡  ëdªƒª8ˆÜã¬ý{C,>¸(«µ
+K\z«Àf=jƒ%«×
+ù/ø󬵹˜0t³Ó¡Yœst?ešPm$a wx|eŠc0ÅÃÄ™oªd)' Uóªåâ*ºh}›¡j¶O+;ÒáP%Ì0=T—„%@·™ñ“‹È±íiÐ6e‹|†LCúáãµÝºš)J²ÈYf=—ãÔø+¶^R3¨%\¬lýqÍJï8Ç
+’¦`G„©Ïðp'«“ç“5‘U!q‡Öý¯ÍD” ëU3šnF ù–ŒÑ[„ÿÇ"‡ÍþDò*·HxcèƒY«›LÖ]’GÒ£«fr+ +™ù°)DœV¨´–*…é¹ï¢„
+–OúYe3<ª lÁsq&©[U‡—Dƒ[¸¿d’À¢,
+
+RPLÇ5WN7h‡±Ÿ¿$elò†ï L¨÷½ëKH]æ¬>‰¸!Ø¢î?níñ5&þ~··.IO|ýX÷í~/Ïó}¬>ŒŽñ˜w’¾°eŸÏ¢Ë2á}ªÚÔÎO­/š9Ô@‘…»Gï²³1VRõzyØÚ{Z“žÜ8Ôîö£ŠªÕˆŽ”ç=¾6:ä)},äMâa¯9º
+¯"®c!áëU[‘j/}i%…ùõìÅOîS
+߯þ\…Í‚ý@÷8VÊu¡—ZR,3FæpÂÑøt0?ˆ’Ë”ã¤Ññ†*²!E~o«‹»)&èWF~tøøež‘ N³NbŒe[@3æ‚VŸšÌ1g­ èÞñ2ÉUâBæ§æÓka
+X'œÍ&ŒK:oì'îWí—„“™nA˜÷Ó"™ZÁ/F7·ÙcqÍŒœ¬ j¹½?ùÕÓï_$›º
+ ›zhÑȧCeÅÄ3ŒEMEYļþºFc ζ´EÞiiµÛúþ`¯IÈ}zAuÝ_*<ârßê:ìŽtd§1uõdñã{ü®\høü“„¬¸Œgž´>ÝíZ‘äk©¾Ï«Dï_xjåGƒmÓô:g“Î}`_ÆY\ƒBZÖ9IuÈßr dz [Ñ9!a=¿—ñûx¼kÑtô^…ã1©1îýt<;ÝF¹Ù•ôS„€Í_‰2„F¢)w´xØšu
+ðF¹VQdª¯¶™Gd'åĺæð8y.îr_.ÀB©‰¢T´ î—¯\KïmIwPd´NöÝ
+¯œ¾É`¤oiÝ5Z¹¥on÷èñäw{þ¤epx¤—USø.©,“u~XŒ\ª>4ÄO‚í˜Ñ{dí¦ñÙê#L&#Ãå¢ð¡{\6µÇaR¤/ÔIVI.Nu”É«Ü.¿Šˆ‚*¾/tù·mð,®Ã ±ï|²"ñk _ƒ¾æ«ÁŠH
+Ë…)«ïITZ: oR¾õXÞ ö¿-d"U- ך{7œlà™I9ÔujL²†–„hjÄ’×Ä#p€n¼tŒ])(ùNýæ§?‘³D¦ìü}à˜ß5Ÿ#ùË‘@F'Î]YŸu9eÛC+Ñîã»ï½aºð@lr^ËäN—¹Iæ·¸mëâ¡Õ•O0pûÇrêZ±v*[” ˜e—o,àïÃ
+¢§#Eb³ñ¿¼MF?hSx xLŠAn;]ñ}/†ñ;âø¢Kž3¥¹óÇSgû;ÅúˆÞ ýŸ=Z7’û3{¸¶påÙ⿸ž5„|^¿pÆSÌÒÄ„½v"0ûHÙrI9'UäìùîþÌ?üÍ&PìáÌ ¦™Åµ(ÍãmÇlˆSüwìS‹
+‹õÖèè¦*½pòP›Shª¤m8žOe¾Â Y
+|å[%0p˾”¯ŒùÜ4ç…ý<v„ž ?Øòaø*kýÉl)uËØðÆ3L릻X]¯U9»ˆn§Õœ¦D{5±î/*2„”˜M Â@]úM¾ïÂrÀ#k– ®°S· ‹‹)ŽaÇ sPI· sp$ΊÆI¨QÛµ^ â¡Ë _žÑcñÚw °Êš—zYÏéº|Þ”¥~%>çWqp©PÆ ïµáHX/.iú5ÝYfUöæ’ð¾gé«!–â"­÷*KhHß—2gX”\6±aò«&fËjc7-ÕœÛN;+Õ%$…Ï›£oÒt¯ß £¯A¿ƒÚ-ïà®%N':ÀlüDòicè%™>Çuþk¥k¢_Š=õ¥åäš<1WëZd»äRŠGÚ
+_Í»Zyý8d¶ˆT#ZÜe…¯æ´ÉD2Ɉ2¬Î8!å’Þ¥)×$k7€Cx—O¿û ì—¼zðN}[îÅ6á³´æÝ09U}™ÖŠÛKÃW©tŒG¾â•cU~J­ºt_ô“Ö¦ÊZ…+‘2!¢¹á´Z¥d§²-z¼yi4™_w>p+°ˆ±¼ÉŒ­¦†º¡´>3g&âžã¶½Ý…Ø·Hv¡†ò¤UägFÕEp$&â:AB±>=T±nëî™]üˆ´_ç>Å]-œÄúÜäv¾Jù0/ey7/‰Gýf2´tºŒ„#¢Øj[g™=¯5ùZÂÞˆ–;°xúƒ”Ô" éVŽ9èæÈèpM½ÓÛQ1yän©›Øqd_8¶#»çMšTi9¹ìlƒFéEÉÙHè~¤áô{ò°`±å¼Èâê‚v²ùÒ̱C‰, ª ‘`ö¡Ñ¸E
+fÌ')¤mÛŸåDF‡2ðä}…Æ˧}¥ÞÖ6±ßˆX· xÉIlû´zŽYDMŸ\ä3©ÖÔ4®‰bû¡„Ÿ»œ E¦ÚtÓ¾©ÄiŽpvf|»l%ÝÖ¹"UJ第Yï8ÿÕ_sî¶ÉH짊>ŽF,OH°¾ø«¥Çó@‰Sÿµ_`„ÂMÔ»`¥ üæ;ÅSgÌ7tiP9³{YÊÜa8,Þ)ñZpÉF~S‘«æŸJjä`ËE±_ûIOtéDe¡Ð8´ŠŠÍhrà.R6$Ãz·Þ4j^õ½àSý6¢z4ðÒÂj>‡¡ì§Ò˹ýGÊ5á2 M|8,g8<^²†fÒ»³üu=‹ŽS›vÊKnßt*¯Ò·m›å«Ôiì¶ÓÙ?æöj2, ikLÑú+;¢èéðÝ©Ìn¥§uûƒ  Ò8ÏP<6B
+0U!j#¥ÒéRÖ®±·ÌÔ8øã6“§œAíÉä°=Dü ¡÷aß
+%οÔÒKÒ«¥K£hÈ/=ÇèÒc¦è«¡°Uh–_º“0XÎ%=yo}çÜlRwÓh" Ïô-„ÔÙ6;ÂOˆ`7>Ic–âb•€JË_:wS/·O®± ‹uŠ®ïþ°WŒõCÆÝT‘Ôo#‚;Ù››‚x݉
+)g=Cê€ÓU[¤”8$j[¬ÝŽ$O1†¼g]V~sOáÔa¤›Q1LŒËÉ™ÑIªpŸDx[ûõŠ.WY'$¦NôýQE#ÝΡA8²©ëåÃlÕ+QQ1®S£ßš½²ÐTO}²ù¿òtg ¡6ØK!:ª³ø:„òÿ(Ý&°óKÅk3\œ®QYd!>×ÁYÄyMu>´nô³Ý\önùR?çÒ1Z°ÃÙ{2„"k¡;Ûxßÿ™rìþòÀ
+LO<u •8´hÂÛ›·ê@â::Oä¡ìËnï§ô¾(å9‹)Ü›%a¤©‡¡ê WÜvLj1oKUûe¶äœ……`B“ÞUoD—ÕÊ*¡ÝÁ2¼nTžÔ|¾
+,N|›¥ò\|wŽ(“#]n%íkÍ_†ÆõDabEå®lºÜïª|œÙ›If=dÃNÇ.~èM´å4t Æ$3Šò¹êd(ñ1b}§Ÿ‘Pú†«1Vã?¢bNö)ûa$„k¢m¹Wíb§©êtT¨÷¡TâbNƒÙŠ>_§ÌpPõ€]ÝR{/¸+q•D „W4'F=®°(‹r>”8,·òf‚\ùhútŽU¡VÜß9> xÉ…©®‰)¯;íg.ž¤”~€žj p ½ÂaúôÅh†²?Ç ¹NðVÔtø±yÌpòòæê»ìµ‹m¬¢¶J×3_¡Å~{WòcöÛ!‡~k³(„(ê&zs-ƒnëšyø‹T#Êè[íŸPšÎ@V[?ÎÀg„ Á²‹6º9ÚίDÞ?…h‘š2=ú5d3IÕûTF–³"002]¸¸2ïÆ>ÓžH}á¦ÔíöCêh ¬åNl^ÄØÓ.`×E5Ùqþ¼«"« Í‚BºU9Tš>‚ðEÊšqb¹\D¦óºùìeS€J¶ðý´ Û"5\þ«ß§¯ëè|Kã-}I<“`Ô™Ó& Ä®l«é™Vá6t[kè&ÇÃëpï¸ñ–ô£ÞpUE란)M6nGö ©ž°4<¹hÖþþ>eÎ7\„ÍEkêçÝHb„wçÅbçÒôljZ×Zòdð;—‹@rÏ;­¼ÉÏ‚G-Ü™+'Ö "cÕ“‡~Úë 9[¶frW¾Üá\câû3¹Î/q'24uùGâhD‹¸˜Ò§çpWáK¹K³·3N
+œÍ¸}ÄBoݼ.-å~é™;óáoªÅƘ|öÂÞ™a›ï`©¤|{rÊ]Ú€üIƒY=àÖ¹u£ÕÙ¸E% ~þ’o<zfjÄ„ä{|…F.N[óMÚÔ}ïe¼»äç¤/㺯rØA9?ŒlÀu)+Wâ܈`N“Ä¡‘ô+g¨¿¦âËFî•K¼Òh¯htRh‰LK„6Pá„aSvYÑðñ/Ø¥¼-ÙV³ »ÎóðQ̌МÄc._¯rQEÌL]±¶8'èakËCŒË›d»ãã£w·$fcw‘
+ú|?Yy`É0*¤¹ZDzйfŸ#«­L¡SþD"Y!~’Ç9ßmÐÉêè¨hBS.þcÌ{']}Oá3¢ð-ÿa¾€—€Rè:aÑм?˜„& hÚû1:‰5ÎÔãbl: n"|+UXñ·‡¶†À|’ଚm}tŸòù¶1êcAͬ…x0yÊ·®
+—ˆDõ³oÅp!ªTr[)Õ›wJLP‹­‚ý\/%Sn ¾ÃÌR¢7&MÝß.T«â Ä6ùóætHU)‘bø¢;,à›èxnâÖD|¶(Érð-äjà Ñ%D)™\‡4É2PÉ;ì˜ÅŒ‡Üá{$Òûv‘µµZ4¹Ù 0:äYÒŠ
+ôvï>º=9õl]ÎoøkÚëç¹ÌRz¸O:p$D/tc‚xɱ&«M$vbjRW\Áƒ€péýU…仟eór=ø Ú–§ûÉj’ 2uwæɆNêÛÚ‹ÞW§¸¡u‹›ì.ðTš­ßÒ×,Ð憟ÏøÙVVü—S|ë]OVæ;¹hJýW{¾# ˪ïÇ!™™øLËG¡ÄÞÒ>ng¥ ñÆÌ4ô¿K—ËãÌm²ÒÄH°QU•¡)@-̨èK/óy‰¿ªºs–<“iñÿA…œBRUÆua] ëb*œã×m®¶Ôœ_6í nÞk““-A­3u–ªüðVNJNöEçyWÏ3HÖ`†•(±,ë"žÛ{á/K»ªN¬áÔ•i”On÷Ó"|L|<Y’‚Eyiì5ñ+·nlD”Ú J3M…©NüÌ÷Ê3]†öG'ßMQ7Ý:Ë7®S,Ó‰K÷õé›N´îÉ©ˆgØRÄêaŒ{ U>}êMÒk‘'Åf²ýêgš­-ð(Í–ˆ54Ãv^eϾžùSp¢ô{/y•m¸Èí\CÝV(YÈ^¨kgâðmízu$òEYSÎ1 Mò¯Øìg:Î6¦ve—Ls<‡È$©/ËæÜÈF!¨&ÅØíÖÐ^†Ò÷ýb“ÅD#ÎŽ@ðÒÓYÐ"tŠþ³åøÛP‘¶4ÊË>øg¶yxAîupB[½¬Ø2Š~tNtñ‹?_Æåûæ¯1È0_;*ô©–*/@-›¥/L³ðhX6á¦g‹Ì¶ã3yy´ûê%¿hsŠ\KžøB·ˆOßdM긩YÃîZëo1®>ÕWy“¾–ú¶b(\›¸]Å^ÇÓJ®$ÿaèîë@¤¼ª¬VáWΧ-Øõ|ÿLßë¯:×ö&bÒu-¤[·Jj ±=Ÿ)SÁ0hq¯6yßÑÉYÝŽ »™ò%¨6!ï‚?±ÖëãR ˆÞ}A„‹ `§Ôd$AIÄ4´ Ó nÕ$øÝÅ?àÅ´8:÷G,›êðÿž²œõc²lsXéä#¹*,q§-¾…J¶‚U—·ÇÜœÄIö삵8ß û`úü ý,-RIrð,{–^#uÈ€¡!<Y¿¿˜âµÛ‹OY#™'›ùÿµqNÍ•0
+ó-5¡èÜÐÉ0sn]Uµ°2SØIœ¬¾^hà´¿^‚2aó@é|òwUB–½ç4Šëâ$[?øð28Ôÿܶõß»>?§tY'Y!p¯½ÞY3ü8É?ô#¿þÚ_È¥´á‰Ð³3Ô,3Ä«–,9ØDZ_“$‘š8û
+…Bä¯lý‘W–è™àÒPPµà-¸Ó“ç8æ/óñ·’þ樓íó{N‰¦ØýÛ#“Eœ¶³Û—¨¯!5‚!#©Ì€õ½K~꓾nFâÙCÝaºó»ZókîË0êÈå9Õá[ó-Ž¥2 >ñÂÓW›ýóãT2âÓ/î¦ãF켜l~¬©¿Ë#¶RVBo¥ÿHx‰ÃEëàι,:÷_ô‡ø¾1~É~.m>ší¨AIΧÝì¬ &WÝRÀC3¦çý…Ì;/LG^ŽdtÙç¤í!5d,Hj…,&<”g.¢V7}JÊô’`t·_dòÇÆáÝYk•‚†Aí-ª2µÕr_»un?:ÛÓ)þ=i 0Í‚ø?ÄØ€«¶°Vr='®%m·p:¯òqìQ!FMoîüYzú¼ˆÛñ´ý¢5òý‘·×òhâ2eù$v8¶O(Žß¼°Œ üõ÷/ƒy­M)î4B\_wÏ0ÚÝ· ëüá[êå¶óÙ /FXÞ܉ÖWõ±$W/<÷»Ðw[þ4ÝSÎYŒÃ@&;ù»™lv¥Ñ[¸’ºBª,ùjE ïOvYöa³¢úk‰Â` uóÁ¡³NÀ÷il“^¨à6Ý"êo«mûÓÝCNÎõª¹zâP¢Þ"
+PJªC¡êkÈ_Ó.f‹<½W%=„¸Q¢ˆo¾·46ŒšÒ|™N
+0­`aw…¡§UdMP\륶`Qˆn'þ D¤fåœ>űÁýཀྵÏ,¿©TKÎ7sìk9­N˜±0VJÙÝá.u6Š.`/ÙÆŸ¾KÐY¶­“üäÞ;ÄÝJŽK*cªÅìÒçxß¹Óg 2,SÌ£¹aãHg~n×°Tè>0]íOJ>€µcHíëÃë(€b9;å’âè>ØÌ[HEï {N¡nGôÄD§÷±írøe…øƒÍËl—séþ©Ø†­AM¶hÎRý@$ÔžL*6<¡¸’PÉЈ^Qþ‚¶ÔF ÏýÃ1#–*“`Ö!½ò ßõHO„€XëE±D²žàó¶)lÅÞK®ªð`,‘òÁ•ñ%½»Æ ¨”AÐNÕcÙRµ ¶?~FŸ í÷&LÉC¸‚ShRB_¹ÞÅ^<ÚÉ™èg…[ê%v9Э2L0­ÆûX´ß†BomqĨߒ³M–FÔÚÄ`za«ßÚF¤
+eýÁýKÚ‘:$¼a~O·ï9*3æFÂXŒáÌ@;n(þ­°4igH;ŠiãæH1]5ÿ(CÃý}¢ƒÕìž]\Ê-5˜Oð ˆH‹ÆP¸B/¹AÍvJ"$€ÍÔ—X&O#•f¤:Ñipú!k8d‘lŽãéTw±9íÜg!µ:†h—ù¹]ÓFï²qCÀ4lrKõØ5ƒñNFðòšlˆ pZ\I”²£²ÓðUæÂvúax£bø3ïIo?ìsÙeðÔ²\´t„rÚ˜7-~Þ#—>úôbû\ž`¼Ô>d8VÀ½0Ü#+òpšÓ…´%a]&~çu»(1V99ì܇">ª=îMì@ÍgRžŸHž»Û.ìÛaÚ% k±´˜'²+_å‚QÇ6Ê×Âïrx¿š«ïV,–©e±¼7«?Pžvü*V2o£…q¼þÊôÅ=“ ž(Ó s?²{mþ«ÿü¬/ì<϶ùŠoéh]¦*{æS3˜øÚ"5ÿBãåMêwÒ
+Ý>^¿S~ª|>ƒƒ®¬ ,ì…Jˆ
+*ð2I-7—ujE\†ËQ;Dö«åÊô¢[¾‹(+òà¶{˜ó,QÔûH&—àÂ[à/’¤>Ó±Âætùì’ö·Ý,Þ­ÉÕ2²îLª­ÕÕ;†QxµLr? Ù[è(Rr=`2$‚8f]áž2Ô[ªEêÖãšÃíÿ:)ð1ø²ýb“çˆÑäôÜD‘|i¶¶b§¿g<îŠ9Âg2‘IøQÝ[ê€*÷Ó9ÁB…þ+N ·˜Öõœ!i)Ìø‚Ä¥ߢû ¦¤WFÀ¤VQTVSög.шߑOò˜˜a¬ºÒ(Û¡hðûdR›}£),šñeX½:¯
+æ6–yóï~0B;H³,PréíOÞÝêÈx¨eàßn—uØ¥‹tùå8)wbþL!E¡&ùˆ5Ÿm¤Š1¸nd’xçÉw` ÷AþMNý9—O•TˆI0´ûʃhikpþïXPyûÏ®ç¸>üž&¸Wœv0”ˆõØ̺Êe0 =¬~«¾ŽqÇ»Sãô\ḯil÷õIéâp x·ô´±oMG#MÊ:»þÔË?ã d»MQ‘,€vÁ­*Z^|Ë
+ž1˜óhñI"Ä•VÙŽ
+I>/áñXÎÙ{Ÿîzf×E@–eøø½À8èYp.5R–AÜzvhê˜È%.¦z¸°ª:чuŠÚØ>Nlÿ5…“¦â1úTA¤¼Å‰6X-ð¹þúª^_Fv JôWœô\þ)F9=ÖÝÂ+¥àÃøbz.øÇBÜ
+ùnù41o]¤dføô€Æø¬q†¼{âóñ*õúaÚ o”¾° RyÑÒó$Û®…qÑ
+ \ŽGp«΢}Ú˜g D2Ò¨ ×õ‚ù¾ý«“i”ÈãäÍ‘¢fì¾R¯al­~«Í7µb> ‰Å,ÌbÍËÌïÉäq¤ŒªLü–†Aö Ý 1+:µó<Þc6E!hª„¡:Q<{|†Q’ºVìTf\Îå\®NcçkdÌ‚¹%äß²2fl=äÇÃŒüq¿…>V²&ÝØoIÈåì?û•ôðˆÇäqšÅè
+@4
+XWê‚ ­­'Fÿ °Òd[nñ|›³F‰fûÛçG
+. lø[Rþ.‚Ê|‘CzþM³üpª®ÁJ«“o·Kíå"aÉå&†ˆ¹ËÊ‘™ƒÙmIçäÜCßc…3M/;…ÆDáä æ–xM½Ù¬%²$'o0¬»L½~:z¹œÿ{{rPO©½æ~.๯¸j“N‰Àt#f mÍ}B 3 iž­['ð®ö¯+Â_7ï¤]ÏçT:ûò"€+â_EDV+µbp?zööV$|õðå<'ÇÍQ3Ÿî/“R†¶¼Ú
+ðúw’wqµcäÁ†ó“6ÎeN—ÊÔ몱ç=ÞF#sºé`u©“
+Èi¬‘[æ9lâH¢ÞfÒ™«-ÓA%ØÁ«ufÈÝÐVyNA§,&ù» ±Ê.| $5²+þíÿæWíä>è °˜Ž¦ûÊA,eÁïg7Äö›íõMyóWšÁ ‚ÿ« ·júÆê=ŒåB0gÞU Ò{n0^ð“gƒt]p2û„•…¹nÕñåÃu5‚®“Uûw;øbnÖðxÛç ¾s,B×›+ ÷7É Ž_¨¨˜ž(|óÚpCtòJ<H2(⧫]zÚø´á}³©>–Ëz;VAYç’š…30mbò+}b
+.î.¦‰Á S,uú‰‹!?“熳
+‹Ò [ЊîÜ8I´» ®Êy`|¾k ¶®9‘žÙ*ïf³^Åî£1qý@b; )¸Ÿƒ';BÂ&þéoº–¤]©J0N@Hȱ¬ª”à@FPÐŽ´ùê@Ž&‚[ÇI” ¿†®4>®ÑÕrÞÃ;‰èÃ>[&¨qûëN„
+B‘+6fn|äN|O+±Vø|"àïù¸r¶àÁ/»`1@L÷rX6™)¹“Øð|Œ›j¼ÿ¶á—æÕTB0ÖmÕ!Aõt[$v>cW=¨þ
+Ù-'¼m•‰ #ë j) ù uïV)öo8¬]–O M¾X´½LÌ6쨻’§ñ؉þ÷9ƒ¥—‡@ žïAÑX´Kä´þþÙm)“:bXð‚kòK‰fÌÚ /¬‹¨,^è4óõ¨ Ÿ½qØ$(îB1*aÒz&ûK®ƒî$­JÞ öªÈˆ6Ášk“¾Ý‡¨ÂOìÕ=ÈÎ9IAÕ0HþŠŠ¸>uPõÏŒ×6w{X\|›-öH½g=ñbÌi.Ï*õ!ÕKZ¾Ú_)y+¯åi.‰Õ ¸Oné#ùDÐ…‚,àbÑÓòb„Úo'I"%ëåT¿ø¤€Ed
+ŸF~Q,é™ D&&cUÛ9!ŒpV¡ø(†N,6ã;˜Næq,­
+ÖÔÙÆÚêÕãóo¢´ÿ‹6™
+°¸ :(Ù3[ôMÇs.—Ôøb$2'™”
+…“ú¹¶*å¡ÔS?Âк6daðTk¯ËëÆ ¬{›„
+afCûGN7Ï» ·ð”:‹Ò+!Ÿ:SPZF$æ™âŽ ¸VŸÆþA¹,ÇrÚ.':CspUʵ.ÒÅɨ’Mô`ÉÉ_ád5?\Q¿’\ó /Ú­¯¨Äs¼éîÆ×}`t×uL±}×G¦O1ñ»©3•q¬žòO!õU–¡‡ÚÉ4L2È­÷£Õë² iPö÷Jæ"“ɲÔ
+9´»é5à‰úÙZ!ªœ›sÛåÄõ÷Ûðá_ªwªVα:û„j dÞÌjäŠ q…ß'¿E9æm€Ø~KqaÏòÿ”8œ‰€žù£A‹‚5ßHMkŠÆ^B¾(vû¸¬gW,%}Ù|¥ÑÞ «ÔE¬T†ˆê.ëb49„-ÖÏY¸©¿ïÚ€‚ôðÜ!½Uí@^"´6îr°/5±)ðD†—¨±Çg-z;œ#û=Pƒ7Ü漚Ì;ㄿ„ÿÞªï´KƒÜïÝpú¶m. aôÕ»DXÌn'ŸüadJ†£iEèNGãÅšô-Ö›{qôõ9Š,²V[ßÚááÄ Ëå23U@±b7|³0È_/Ê_t³!â0‘qvBÛHÍ2ghœýì»â²'šïa€d{2l>3çäæ$´‡Çs
+T´®çtjôeš-U×™û¥æš Vˆ€ð²ã«Íox@„èœHЉµÖ•S˨;ó)å1W„¬åý’îš#¤Sm¯ÝLJdz—h³-¢ܼ‡¸u þÑ—2Ï\昞wüÕ
+ÛôŸBR 8Õ£?6yÞÛŒ¢ G‘,Q
+i„ÞÅê±)ü÷(x»¼ê"½à´A¿qFg!1Î“î ŽiWþ³+¹J”üÎ †`—¶Áâ[+t˜6"»ô£áœKš^ó¦- äÍsE(ã9ö“*Çýúæ;†´¬]ÛŽoOIÙ؉¡Ðý
+_Ó$Ý_H> WfÍÝKÜõ: ‚íÉ"[BèK]Œ9–©'¼0$RÏ«ã‚C!ô—âe5±°ÅmëYDÂ
+ù†º­žàŠ9qIžN|\€ Ï„w³Ÿ3¢Ð½
+pNÙxiH|4¢`†í­ÿ¾Ø’lK<a7²ùÚ5å†5À´I„¸gjBoÿÓ—Ö:Ø¥xÑ»šGü*KÄ€içV'ª{U— nŽfƒd$œ#D’õgâš»4­âÉÌÑA~áëëjàG¬?S{7 ¬øÿLµ¢É
+ÛÆ’}¡?ék-õã, [MR½5—^v]½ÌŸÌº
+ºªpðtX2ؤ 3νK†ëçiŸ$§ ê AûÊ4ú•ûñUEð¢û᧸+®$²—14ÝÙ=5è?ûpF±¡zVdUD"“ù ˜rv…++Z©„39qìïÛÁ¢Ã]í-é#u»Ø˜ðEõrabDRu}–â9DË˳<¼ö¤PSbmø˜¿Œ^$—W9¡(4±nÅC›KGHû#/PÜüTú£ÅòÓj·/å2í–B%:ûl~ÂÍ÷#jp6Ùhp˜Å&
+†î³ô.C‚PÕ'3
+ïP§¡øR# áÎÅñbÁ|-Fõ\{yÔÄV8¢».pb~ñzÙ×;#• Ÿw¹®Ùžäü¥Êe=ÑçÇ‹«!<ƒ^]CzYûÂì¹ÿ.*…
+Å«aóƒAã—¹ºi¾¦ã=_ÞeF´þæúB§P)àÁ@’8¿Ú9W¶ÜÆTèÆøg_´F¦T®šÚ./ùMÃ⣭éß'ãEЦf8$¤ìšGÛ÷(
+ïj8Цø‚åÕ=’ùŒJD*RCRüJeâ €y™ðud@Ìáîlü€R½wmqeý‡ãÒ-¾v÷økÒËNu”1»ΪÏL(„-V,ýr“Žu[¹fS$FVa8t(2):£wÔ¸)‘N*V…õ5÷ô·;Y› k8»ÌmßÜäŸ\ùB¦~îM*c÷Á²[ ñ=ÞÅý—fªPœ£×ñÃTþ›e^uÇ®ö wÅ\Lù¤Y9‡k †VkŒ‘*š%UŠ2w…<Ë£ûÀõzl’¤fqA·Ö¸m¸±NHkš fí&B„$»jô0E¬E*E\ÿD,£M¹+ ®0•Œ”•ì™‡’câ?щê n·ß /°éM9 ûäÉ"*qh*&:ÂίWž„½ÑÐÔ®Ú€ïдÕpíNÊelï
+ÅòµwŒ’W9¬O<Þ~“¼Ó'Øá<nPH‡Óé <žš}#°IEã¡ó‰švÎÁå>¥ ?©ô_©Ã0‡ÑË#GUòàaƒ¯6Ïj.0J²™bHBlvªø¢>Ùÿ
+Énu:JŸ3Þ/ÌÏÓ’ê¦] Ͷþ8€
+s䈎/J<?´«Ö²]w<Ó³Ýí³ƒùá §àú˜H
+S„X%²E*¡ìɯ̺ӟ/ u¯L~ñûa€P>î¤v+¬ :AÙ›,?·¨çŒ-¡”ðü&åi[Kó†i ´i»Ú9J.Iä)¿2H¯Ë>«ÚÝjò èuËvA1µññ™+À†ÿ™§ÊAi5ÅW U$5qW'ý 6¥4 BÖA¤”,«ì
+ ðÝ{k £jkMCâ
+"Á¿-LÇ”œYcÚHÀÉe ÇÜwÁTQåYº¨·¯u㘼Dù8噺!ÿtî§`+G×—„ïå;a¢ Ä´‚_<àÚÿ}¨ŒÈ@õ ó„1Ú7uu]—èÉçÄÁ’ñTœ!Ø/Ék. E3ãÍ>-³67ÿ£x]$ÆÁš³®ÐG±”»Z
+óÏ~¤ofµªeoRGE¯ìEÉe;aÛ›ž
+ñd&í,lóË<5,†ÃÜ·Éüuí×l+§¥s—,ørš°vrÚtÅS¤øû®Qó¦ãP£â_w¯ƒÄtƒoŠåîGVïÛØdéŠ`ó
+ÈÒ\ÓÆ/÷YL°8Õ]FO¹8¦5%Q¨,–|,;ìΆ‚-½ªËª;9–k È‰zÏ;|3HÚã5§ÈØP€Æ6HúŒa÷1æªÅÕ²âjY ALϳ”vVFüTK™éèÕG¡…—²¨ë”jñÅ—ÖAJ|@F/ÊòV8¶ô(Qä͊—ÔØ_Û«ª¿±ZåÖÑÝàõ„αW}€ù(BÈ‘5!˜•™w¯¼u#‚f[׸
+•u¹‡Ícÿ·£‘ó£ÛdÓB°«ZèlIx羜gÅ1¯Ä¦Æø\›ö¤žDscïgv°Ú|ñò§W³Á½ÆÄ}Æ=$¯~‹©Þ;´ ¶ˆ› ¿ Äñ´Ru¾Z+'RtÔ“ìÈ
+néÄó§rzÈe¤‘¤ã—WN{–\#tm‹Í Q×à³U­­åôÏ°“¨d|| ¤ZX#ŠðÙ Þ³S…ºðø¤ü{Ó0f‹ÓŠ¯lŸU+( MX @ƒ1Ü© ɳ97àì.m è@²E:1ä€zì:UÏS$LÄÞô©b¾h7ßü¥)3×Uòýˆ ŠË5Qþ«ÔÏÞm©ps"«ÖÈ‹¯vŒÑF<ªç{•x@ýxòÂ^«Ta
+ K&
+{Ê\s¾þ¦+"JÕu‚j›ôA¥›Ûþ©l^é5øt›I“Ó¿S·h1â{aÿ'•¹ÀÅ’èמOó|h{¨é2QÊ`úÌÿÛÒ …øVqéãl›1&×­_ßØ»G„K"cèG2uõcqì ¼&#麷å¿\_œ'òÞ錊ׂrÞÛâL™¤?6ÕF¹²Á¸fÿƒ„UK½Ô’;çœnÆ϶ôÒƒÔìöåCK•­ _¡Y±8t ùBʉ¼+·IC+®bSþ$H†%'­qQô{5ètª‹áï몛ì×dù¾Å=·Ð¨ß‘–¢ç®êÄ2 ‹øš‘ñ½R}æ‹Ç›¹ûüsœ•ß½ÙËÿ“¨SëçÂ:ý‘ñaÔ:÷u1”JÇk‰?+À=Ãó,§óW†OŠÈ;_ù%§l„ú»ñÚhÖ5@H™ŸÇ%Ä´ Ð#üÓž¾ÁO¡²é'»ÇéQÕp±
+J›öŠqõ±/zÀ’EûfÇ΂¸ûó-xBNíüNšÑ{
+®r^r3FÄÏ¢y¨â?õ¶<Û÷¹‰W‚c{óüD&\‹ûœX
+JìÄ„ì¿ Ò§wºk@,Í^=`åÈ:ªÑ¨yöZÈ£+‡Õi µ~XåJ±F$‘±è|ïÜÿ ²7ß™@gÈúkìwª_ä² £âPMºED¾e);¹Ä´n*d¡Q‹dWÆgè ¢òH *hW%ð’A\MZÔQ1šµtz¨pf·Ã-Ì‘<‚ÉÇïõõ7ß{~^¦»«våK½J¾BÂò”£XfZW¸–âs†:‘…ö1ãA4nJiœøÚ×r[ÖO}oVD¦b!@Ÿ7FÓkÎAwÒ‰MîŽ+Qvg×=[¦7‡Y!ÿ
endstream
endobj
-616 0 obj
+867 0 obj
<<
/Type /FontDescriptor
-/FontName /JFISNR+LMRoman10-Bold
+/FontName /KKYZJG+LMRoman10-Bold
/Flags 4
/FontBBox [-486 -295 1607 1133]
/Ascent 686
@@ -3757,137 +5283,136 @@ endobj
/ItalicAngle 0
/StemV 114
/XHeight 444
-/CharSet (/A/C/D/E/G/I/L/M/N/O/P/R/S/T/V/a/asterisk/b/backslash/c/colon/comma/d/e/eight/f/ff/fi/five/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/q/question/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/zero)
-/FontFile 615 0 R
+/CharSet (/A/B/C/D/E/F/I/L/N/O/P/R/S/T/U/a/ampersand/asterisk/b/backslash/c/colon/comma/d/e/eight/endash/f/ff/fi/five/four/g/h/hyphen/i/j/k/l/m/n/o/one/p/period/q/question/quoteright/r/s/seven/six/t/three/two/u/v/w/x/y/z)
+/FontFile 866 0 R
>>
endobj
-617 0 obj
+868 0 obj
<<
-/Length1 2423
-/Length2 27157
+/Length1 2513
+/Length2 27928
/Length3 0
-/Length 28524
+/Length 29381
/Filter /FlateDecode
>>
stream
-xÚ´zuTÔíº6ÝÝ!0¤4 ÝÝÝÝ0„ÄC7HJ# Ò)H§¤4H#"%ÝÝñá»Ï>º÷:ÿ~‹ÃuçuÇóü˜YÐRªi²ˆ[-@2`' •]
--@är}QZ,¼Ê ˆ¹–·3 7ÿ¨Ý ,æn/j“ˆáÅEììíjgc ùƒ“…åw¤ßÞ¬
- ÀªÌ
-P{¾í
-ñ‚ücý;ž¸”’
-Ê?Ñå¬Á
-d¦†¼,ýÿŸ3ö_¹dÜTÌAôÿÙÐÿ¶2w´sðþO»ÿ2Ñý¦Jÿ8Û¹ÉØy¬Ôì –¶ÿêê¿äòó—¥w²q
-úá%ó?[ñ—Á më?ã%£µÝÎßÐ㯿ÍÁî®x1±ù ¾P²ýCðe$¶Þζ §¿,^dvÁ—úíÿ‚/E:ü_ø8þÀ—êþ„â~quzÙ¿¿ô/å‚ÿdqÿ‡ú…½óõK7œA®và¿úõ[æↀ\ÿ³MÀ—²þ*øRƒÛ/yÜ@Žvÿ9îß6 ¿Jç~ âfçõW˜—l’p¿‡Øº‚þêöK¹Oð_/»ÿ_šåñ|ááù×,_¼ÿJÆñÞûøŸGSí÷3éŸ+—ýÏYýŸ‡õ?Xâ
-¶éÚY½ü¡ò—‰²9ÄÕÎËýå¾¾È_¾þý›ñ$ ýsÕÿå-!öòeáâå°pðñ€Ü/' ääõÿ_Ë=7ÿ¹«_.•ãß-
-¾}“Ö^ ]8YOËÏzPI ¢§·9ÙNJ$•·N-
-n Ê¢++É ¤;•èѾÅwxZn}_5qa¥.öË<@9€CZ|4W‡U;$Kù{PE'îBn~)×tV[b9@{tO’¿½ë6–cüû,•Ê¨¢m)Þ³xØŒçê€ãõ‹¤ƒôûd4äù/>Æü‹øãŒYA8Á¨‚sO–>Ù9u"5ÅBÕIZŸÿI‹_ç8i0TÀ'|«žž2¶ã¦W¦øUuj4ºˆÊã«)Z¹ ßÛõÜï~4†ä*Ù«ð~BáMØÎRêóÄC7|1éo@Q …ήFÓ „¨F
-h ,z/è~[¬Ù7ªÅ& -9Ôù¾J/íLúм«õl4ƒ<à czòDsJ‹·‚y~
-â#O~çI7Ê3Úŵ<ì9Ë µE{Ày„×6p;רÖ½Ç,`M¾ÑÂŽÕÈ‘Òn’XÞ¨²A¢)#ÐûÿŠH
- ?IJO¥yÖý"‘‹— ÈÙêå·X´/ˆp.+`YÿŠÐöfXÜÜØç·²Žäz¬Î­Ín†N§¯—÷ìˆ üŒDå«Tå¡ëM¥•›4Ø=€§x¾°/¾ë <Ü¿96ÕêüTKÝ/,n-ˆFûž[•æ[áàôº‰¹¦>cáÅaYF{˜û¾{?6Äï‡ta2s"_BœD:B!#¤ÏŠ •öŽïÉ÷,¼;jOÈÖºêBÏ×cæ,5. n¨:7„z /B`šfœÂ:Çqåã\ýâz=þr9¹4Ëâ 8xOF™C „›ª€$S`B‰…¼£âÊöl>h×:ÃÐm¨wÏÌïZÀ_¨‹“>-¾²ßqùEº5•j+ʼž2„!š"ÎYÁ¢T‚`Ĥ§¨4¿$9‡HÎýŒMTù§Æ<Ïa£ô&Ãö‡dUÏFd¾¸ÂÇÜ|Ä´Æ‚Ÿ÷„Šä? Nèøj€ïö8jf ê|Sà†¢zØ ßœÕy’Ú*<fXILÈjÇlZ/¢áø}H_ÚÜp¸š­],ø´Éº¯Šx>äÚ¨So©î$ñšl¨}¨ôÓäsá-\ý Ž¥ëÌ—‹‚’Ÿ°ÂoÐíyX/’‹…„Hy¹rÕ?›´pðEò‘þªZ?ÿü‰ ®Z¬¸)¢VÆ™ósŠ
-Öt¦(ŠmÏ9FÔ±çsî>°0|`ãE
-Cë!ûýp¢G)‚¡Ê´÷Úª4×г~÷Èe7fÍÔ…ƒ·yü
-ÛA¹Á7È„ÍÌÛvÂ{k‰¥ì¬ó}xf±ó
-cq%nÿ«‡°ž |‚qqæ¬ à:cöä•Õ¼#ŸQ!œG­ïX‘‘šž(Á"À™MO%Õ2´"×o3Ù]CÓnävÖ1üé«òAÆ×1p†d´®HËx4ÓèÚОުõËÄá+fTO‰?Ò„~Íã*78©S "ĪO_Ø-Wç Ë NÀ–hL"ÛÙëóCïžè‹ø¸šP5k@É•Û¡)×iÏ4ªY&>ëòD­k»PL#>áÂÀc¡¬tâiŽ®Hú¥z:,°n¹«T KÔ’ƒCƒ YGK½Ÿ?«ƒÄ‘®ýóÚó͉l‘+ø¨PäÁÞiôûG¬ÓBL±LOA”pÆÝÙ)ßU®¹‹Å•ÓMÁÞXÎÒ­ìt{Y;€5ŽD\Æ]l¢ ß·$óåc‰lLÏ¡}ÎtŸã¤GÙ*XËãøH Û”T€ê3WBëÛ…ÜT1Tò•–ãøô"®R¾Uß:ôj4óIçù?
-é \h~¬ró*1K¼Üó#/‘'PIÇžóÉØS
-öyÔ$åø+¾{SL¿–ö@Šj0Œè@9ÍL”ß/¬° µ éäÒÂ}¿¾ª„µvÉR¯B<T|vR :ÕÍú½ƒä$³o'¯4Ñ—,9Š¯NøªhípÈXXõàVŒßçWçŒS]?S~Ü%p¹‘É9y>ì‚‹ƒ¹o" ¶(z “XFÂí òC ç6>¤ó5’õùfÐyá#Ü7 ÜWNóÆx¾ÊÎHÛ¯tˆÉê¨Ç“­qìþÓØ’B! ¢ŸÚ½²(/h°»
-&Eëû–ÎÁ^¤Ghêñ=C ¶pD¶
-ùú®ë¯ªÑqKTÉav+).ô¥?–*RÅkMÁ觅òz/3öÓ¾‡ïû—ÊaK wÂ*4y.RžRrŽwGfzy—Oß\ŽËbf0£õ£pGíÂÐ^¸Õ>;;nõ/Ç-ùîª0Î.K½M<‚÷'A‘ÁtK»š
-©ËÕ6›;“üÀ¢¶Ôu©ÈÌ0ñ³˜™…_onÅ8¥Ñ$Ð}ûÞúõ\¨ß~”j¿ÂTÑ2—‹ã·¶¾`µlžÍApˆ0ÃŒš—8õúBJ+7Oó
-íà‰àt¸WÖ[…fdÊwóT1~ºxvÄåÐ\h8Y%HM̦rΙÝÙöå ÊqF$¥˜ÀH¤3íûXmzíR>ñÁÒÑD‘qMýœòStÜý
-uç„eq ˜s¡•­o)µ¾~þÄWn·Âã(‚-eLNfûNY™ãìºo|‘K¦`ÁÛò"Ї1õÃ<Jã{S}£ª­ÓÃ꺳š†éªÆcì©Õm<裷‘–±~rÂé‚ò5ŠïÇ’v¸øw+[Iꉕ†ü˜1ýˆ#å–£º;ËWàỬêfÕrpœÇ:Ÿ¡óX’¯yb«[ÙzÎHT£TÑ]U•’ª9»‰”µ£h‡Å Èß ×ÔP@Â7^0 aÀ‹‰Ç®``r<d݉Âþú~v·Ø|,e›¯ørÏàæË“Kc髼
-7÷!µB[Xg¼´Í;{¤”Áöb¬'Qá<Ö~>%5½§¯#2t¯ªJf²ŸÆ`RǸ…:÷Åß0 ³‹sx ­ÄÖª]¬4g¸ïMþ’š×÷*/÷©>ÑLTÑó}—R½ƒ8ƒ»ž»[ŸŽ×C=b!Æ["Ïd‰ßÛ|røžÂ ½ÁZȃ—Y=Ç“«^qù–Ž=mº(nô1.PÎáȤÖÐðÍŠS᜷1uã ,ÞdVï¼Ò*Ü~wWF2½K$ó-»­%ɶi1Ô+—Kßî(L]¥«§mA#eUè~
-ògæ«"·R]ßüøl•á†’Œåè›Þé­nAáYiŠÊ3ôÈÚ †®ÏgÁiœ†‡ÒÅ›¸Uíº±×ؼþ·â´*KÍ´êËçÍš(®})°ÊF]+ó #`eÞòVÜã·É5þåÆG2k<]‡{…v"_]žöa‚U6çÄ.M@Ó‹f¸Ïf­_ &´› Õ ë™9ìyå
-ÙÂ
-Kôh»µM#F™ˆ\zjÁLÓËuBê(`I*Þ¶v|¬ÌЛê骯™²ròÀ4~‘¬O£ŒT]‚á¥æ#9Ö~FõvÚÐ:×Ø›Ä?¾È¶±m*D)]G «÷ 6ÊfgkòÂK 8èÝ•3§Ë_ž,i¹CŸôl¤·¯(*ƒ·#ÓÔ2Ùè=ïÁQÃ6'Èàf3Ê9°ÿúØI+ÇgU8¹bB8kÇÏ3úÙ®oÙ–Ž_+|›Oþέª~¸Áb§ìÖ4‰M`Ýä6D;+bÏUÏL™ð½ÛNÒ@„¿ó9TJ»½èèaŠ…ÞD—bÚö¼eˆv”îÁä›1Ø=Ú™,‰žÔ~COFà(ˆ´¹–ŸhŽ
-ëoññþu‘ÞN»÷ü1sCQ‡àùm«VÙOé%›® yè
-Æ‹¾Ì­Ï[SÉò|é
-¤)‘ˆÃ÷Ôxøø”XFrŒ0ôŒ õ‡‹4÷:YðRDD¥R^çØDaTñc@¦û¡Aw8`u¯•™‚Ý2˜§’ñk-òìòË«)ª:s9àw}Èa>5 [ƒêÔñ},"h¢€T41ú[wœëÃñ¡ã½@+«\qÑ…üT¨¢Úk dŽÅÌ6·× úÞ¼Ÿ*‡Ö©É*Ú'^¥–©TuۺƬã¬;ô[ÍX5)RC<øÏø‹7:æ_=”I*tÌ­!£Iœê’Û_ý|K°£—ö$G9St¡
-np&…ŸšÓŽ_zä—}Ý3õëOtÒ÷¢þfcóP71J6ÙÛn°6²Fb‡zÏ³íª®
-¹¯ôчo øB¦¿,5£kœ¿"1JŸGÔ(‡7«àèê¹ÇÕü¾R´ÕàxEx,¯I/%J•âó…w°ŒÔ¯›Âé-ýæ2É #‚ª„Ê”fwr”ÄŽ¡8Fµ¸SÌ?–ààƒÒñ‚Bœ‘îÝÓшuîpg@ {}“Ö=‹ò˪F+¼)“7ë^èÉÎÈ_ LôÙúcc¥‹›)©\Œ¢¤žøÇlŒÔÕí]œ®ÎÚ^|Ö:‚¯•uV÷óa-!vNø²àfð• +’Zq•÷×ÉÀÖÇØù©Sà Η ˆ?÷}ØÏÌMEĨ³nõ®ö$"_ì÷€–çë__Öy‘ ©y}Ø/1Ö†ú(&l5ã9Þ˜òñP4ZòÆÆ5߸æHÚƒZP…û“sÞØ󧤿»¼ÎšË®@PC„p“†pZ™Å/÷BøŠ '/“WhFb/Ë?¹M½ÛáÑäÃü”ÐzN ÂÈpâ¥m­^¤èoÕÈlzÑ£6ƒóc%¨Þñ×ï-³UeKõcƒ{Âû¬.-ÒWÈ–Ëôhf\ü²Ý PŸ¯®Ø¯lpE6 ŸÐ)ÏD”ñ÷§Ò]Ÿ篋µU4aK9ÝH?QŒW:v÷æöš9GÔ–uä¤ë öD¶(ž–~ÜÆ1s’»á×A5öô·'£ÔËKØNõ¡f˜<'Í°;EÙ{ݸ›ç‰Gyß^&$rµ¨E»œSõÙ,ç! ßòªŠÚ#t·­ó†pi­M"{[R ázlÓ§T ¶1{”¯Ù·+V»<‡“£V˜%ƒP⮎Åú?x8Òèã /F½2é±ÜЃj~Ô÷r‹OúÒN=¦òuýÖ)”EBþðŸíD%;qÀ[¯«,axGÖ1mNߎb­
-M¢ÊnPëm™ZçÊ`^x?˜–H8{«é§Š¾©Lt³V¯é§nWràù(r¼„¿e±±mýÉôÍäá‚ãá‘qê½aõBMpfÍê8ŽsÁCh4¢!hh'©Wí¡ªñÊ©… ÷X›üÔˆ‰? ¤v×ûþa8¶¸¶€‘‹2”ŠÍ\œàb½…_ Y±É vW¬úâ¢" ËÒGmjG☥þäâæØV4}î½xG,?ˆ<šS‘þ™)Á§ž¦TÍNlÌRêžóõÑ’”ÑmäÏ@ –¾
-Wà#«B Ì0H¹¡§¥,î}Ó©ØŠÕö5¹~õeœÅF&—ï\{Cèó¤;eøŠÆÛ71Ãú~™I»¬–lC»³Eø&íÕW^Ö8ž151vgáMD÷°|RB¬‰pú·N7òJ À¶“ åP€qŸ‘ý‡/‡áÍAŽwSì”^¢t„µ½‹ïfi?6»îÑքƪ¿ç€`-÷GU”ØÀtBÙ-¥)¢ ípav†4+)K|h,ºÉç›´â.Ù!OëÝwÅn…GÅ©zv¯dk²÷iÜ<ÇGtXÂï(wQû!Šv‹SµH%6<¼â-ýȨã$=s¿„Áè|'[0ÿyD5sÏ𷶿”ÓÇ<8ŠË„jË·‰.œ§ýAQÙey68ï+{«_ÿÖÝoIÔEûsÛPÅ‘% i"委Ö7åã»Dê²%XÀ†þ^3óN¬÷¶å
-˜oƒ8b€8÷f¨IGÌëMÃD¥ 6<;É„íà ¤4a™Q,lÅÑ 'å«3A“ Œî$3|J$sí<ùiAØ+»‚,š^ ƒZU£k¡ç²˜Ø¯ì|o’}:&‚šðiBùœ‘ Ç&èVÑæDtUÇ ±4k¤^DM\>¥ªeÅíŽÁçÆÉzҨЎ§:vu’ì˜ó™¯ÜŒÂ Ý?åç=VøËLhTR–)H,WôôP’š’–¬Om}íLÏ¥ÊR¯@Vf÷ÍDTÎWc4…KÍ %·÷lM˜æµ}GùY¯/ýÞéõRjH°Ù¸µõ5ʤ[=¶è)nÍ´\™xÒw„/cʺc3¤ôÅŒ Z†ÑLrÔæz ¿:íc5àå}ìæ4æôJÞîQË,Ìæ´W+YÀES©ìhV©h%˜ÒŽV"6nÞ| ·Ö@î
-”tâ9Žÿí-ø¾/ ¾b°åÃQëúíÄ@ûÊB_궉N©Û¹³$ŸD~ÍÈ£Êx J~óÈÛ£“»}™“†–à¤ÏojÝßÙ®õp&Ýë0Ó}I F_åîQ;ó`€†þ$ÿÚ$cÃrÏ"=DVòЂoÁìïXÆq~U{óŒH;õùõ@qbÅUg‘TSÙ"){)ÖcÙZvj÷„bì¸kÀç®™÷Ð'á•V¡ø¿„Æ®É87KaËrZa‰0zLÜ“íù©³.uGSÕ½v&'Ýìû¦!
-EãrhìbˆænË„Í-H5¢,Z×¢¼/5ÔÔÃOkúàN›Á
-wF¨ã§œ?”è{&–p×ï×àŽäBƵªe’rÿO†rÄ­ˆ½„ž“ˆdÊ bAcvé;¸m·uÂËM‰
-S”Šïî%ñS Ûöê,ïn_·‹óèÂówe±×¨™5y$ìV)ÓASú'ü‚\ÛÌ[ApÌ%¡µÔyºN#LÌO¤¯ Púó«˜ï*ãR´aäW‡š¿šNŸ¤^ý¸BŸ“+µúÜaíd0çauÊ~1tghÛ±O7¶ó¦·)9
-ê2…c”ßL i—ã­L'H¯B€Ž¬šúYÖV‘ζ«¹…Å·ôäOÑ`Ò”í’yÍ*Z⼕öT£×-v•ö29Ñ’o®*ôœJC±8²>gäÎ&•oÙ²Ž?¡Ê0²´˜’  Lÿ×Nx»&ýXîbQ0wýÜ8&ã›jˆ ä>;qyÖj$nád¹óë3-öÂB
-™@ü. #O¦ǯK T¤úi«Û µ'ÑÌ/œÀàiÔ‘Ó“z/]À¼™öðªÈg=_.îhPÕÝc!²ŸQªrŸ<¨BOWöÀï¯K«ä –b¢:Wô›8Uå ì ñçK…|µTGf}á2Üšù½zR”Ñb. a
-‡ö8à¡-KE
-é7ÄiÙ¹è­Dâ¦Éììæ«Ef%w9Îb(Ú©PdteÃ5¾;Íî(*ÑòK9|õ
-Àú}N¤Œ [ëjrïׄ¸=œ¯€8àÔIPwäë|6hîÝi± c/©ØëLìº3ì•æè„:©þ;ƒÕ8]GJ¹ÙrÿFI½€IÔke;'íšw6ŒØD‹¥Ì<9ü^o½²êFÉJXw= m<Š7ÊîjTc1[
-¨ ÁqIº£<šüû´‹‹yk%.n -‘hEõt#éìÂÁÕq[ÅIüÌa§…“AËñ+ÈðSŒNœ†aiJ,§˜?ÑyÀGÜÈ1ÆçŽq¶›¢ [VíZ¢á㨥lk(6uu^¯uË÷zút€]tÙC-ïÅ› i£l;ñ߶‹éÞm~ö€‘à"ÑÏo5)V-²ç&ëðJ ½¡Ø4Õ´«e„æ’2òEx õ&å1ÓñàMIH:`žÇÓn‚oè6‘ƒç/bðé~ÙP» ,·š;·ËN´‰V‘Ëð’J½/ŠéÕÔÄ~rlöhò¤T±½ã§*Aö/##¬(Ê»µ0ƒ‹yV8¦Y_úˆ›…n"^ÀÓÊŸ@Hf¦óá+ëqsS à;£­#Ëñ…g?Ë©íïéc±.mÐ#‰RµH$&kó€úÞ •£Q™¶úë*/1*E0¸Y…ñ,HOLg’¹›½S.Xõ¥ˆéº!gÀ;ÇéÖ²«ð¹
- yBf˜ÅÈØUÁ:hìÍ“Û±˵«¦B(M¥ 'X‚N¼
-T®[ꤓé¾N
-mßè«$… cIBñ²~äWoÏ'Ö4Jd º¨¥aa"·~iâÑa6òë`áÊxýèÛótÓ„ú
-?=R¶½±†î²7TpZ2¥ø´ÑPW-áÃf¹%9Ü•?pÏXñÊž0€ði8|÷§™ÜH£ñ­5ü®Û{%8X[†tGT87ј[N_ü: OinŸ¿#£–ÎœÖ:Bâ‹Ò̾‹*Ì.i ¤Í­pSò2mnIÌÃ!+¯h4ŸéÏÎÌMÔØðÎœÛvs”jTžÂ3U¡ŠË¸¦„±Ø"M»~ƒ·®è?J/ܲ´ž`qaì?N+)†fº{´U€†:ýQI‘5eóPoÙ«›-á³gl|Mòp#’÷¡çi®<"ê<Ï”i3l¶dÌ#Zâ½Ð]¨ç¾ˆ¨’ÕaG¼¼ä7g’ƒYäû'ûÚÈ ™šFiòÌV¯Î¼Ž—,ï¿„Õ NáGð
-´Ì"ˆâ)Eõ=së)Œ,}”JÐòÞ¬í76¼ú¬iö«X
-²kTîwŒídjÄF[¬º±i°¢”Õ³`p j’lï þæ î…™'‡Áže*$’f°¬›Ûÿšr
-oU–Р{õ-œäÂ÷ÂÒ(-=ÂWAÍÌ‹’/:‹E&&Õ õ†»¦¬üÛÒO9#A²jókC‡¼…†ZË/^•+0Ô‹Z®–\0¸8*`øk>…Ýô¿ÁÃú0DžÀMçÇ<k= «ufÝ+/W½’8^ü()(ƒ©ÛF1®•ñ&
-o¤r‡§ß›S%fÉ:û±yé Ÿ²X<ñõ¯Ä—÷/‘±¿h}O# ÄÖ£“»²®Aòµ§ÈoôáçRîòH-Ò]7 òffÆbñøD,[1z³){¶üó¬*ÈÓ“=JPÓD
-³éDoé4^5vBÊ­Y#ðÀ·×{¬X9÷øía°ò^лSÌæ
-y›­’èäY\Ç%5’Òˆt9 Û×— Ÿ^´ßê²\0EÓrÑtæ?ðMGêõ‡’Ù ØÁÇóy«ÆyçR•MǪ8CÌ 9DÒNÐÞBø‚VwjŸÏÉ⥱çyÏI5åßš¿uh”;ÛfßÌÔN>çÿ*0&i´2ˆÆ#ë-ÊkdqßËSU4hw.GO˜\-Ú¼~¤sn»‡NÂ#-öp³M9•GE£@˜ˆ (üùzU§Kb~<8Ç+dý)dµ °¶º•ç È^¿âr»a‹… +Ó.wYýlÏ }Ð)ŠÜ¯œÁÏD‰±7œÚó}ÌÇT¤ŠRš:6¢Y½+SYbðêà«
-B‘Ã^DÌÀW+'F¼gûZg3ÉÏ­t©9QïL3ýÏ ÙìjöMP6¬EîQ7K²íÏ'¬ã¾ÿØOÞÂ÷¥h&§Sô‹/]ÍK îÍ´º0A¢„gÓ‰Ãã¨_iß e"EïÁóx± aSsjW­ƒÖjg¶±rŽj"Ð2ÑpÝõ¡ä#œ<Ðéã>YªÂV&é–¯.¢<tCÙ;¢¯ú)"fÈ\õÍ^Æð=½ôißPDÒs•bZ’ùnq5äU¶ª9|´ÏÒ‚®ŒØȼ‹·°¸¡šÿê„ðvÇY÷V¥‡¶þàZjL›ÏÕŽ”:>®Ìõz®nKg„ò'ƒ 7½³òT­VȨçnÞ/ŸKb«Û©¤5ð^/¼hô-£± áÂ¥¼Àõ»“¤A{Ýá÷Ÿwl%õ;„¾÷_J ö6ôKëñdŽ(Ùð»NÈÀ!7ûß–àÎ,14—æ ¨žÖ>^cªpjšµ×áÊ{›æhðÈiä< tì­ÝW‰™¢'‘%ÇÌå­N´ñK?\t³@{ÑsHí¡7*Á…òtP.xÏX¤È ø÷ç+NÙVŒ?QÈrTzTäÖQ/üCÆ<"Š{cal/íð}cýÄ@ŽÔ‡ï/T”4f%…g6eè¦]tJ¸°ˆß¿_ø 6_?’áèx-nç3ey–±±}NSGï3ºµ[y18:%5–._ê,P3Ž÷@€Wºõ oBRŒÞîW·l¡ã8Ä[¿übu`]j€4±¥óÿxN¦b⋽bF~š}ãúEúZ#+®Ø
-JýA¿o"Q?Å£gãŸÝ;ð.ù-d‘ï;ZQnà`±¶wu&-/]éƳÑ?÷büÕÔ
-ÝRèû¾+YxG¾½Ô]w°Z›Õ =4‰¯ŸÂ÷µÇRìu~Û¾3DzC›!ž‰žç!ϸO¿êÑOM¡q6¸¢hUFUãܱۧm暶Ô9n¾s(“,pï“F;Ù¡‰éôÓwå^šòQ¼óñÿ¿<DKvT”yüT¾Òðž·1”Ó{ïÕ¦ ÂÈæmŠá'j«7&
-ÛÆSÅ*,"`龕•CØâÛÛþ¦ò¼–íô•lQÓ\Þø”´a›ÙuyBpš‹‹»øÓˆõP
-\M˜%êêøõGÙ1ZÀ(WiÕšŽ®i5®UŠË]š1F›aü@ .9g ûMØœP«ëW®Ï,1|Y‰å&E
-µ¼¬X°Î- e!ëÙw*K9àiõYty‡ §¸rþòSBÜ(N'Q j}%À•6ø¸‡¯ëÞc3Âè$+
-׆+ÝÂ}Ø9üñ†>¹ê¢²„M{”³¾Éálö8QÖ’XËgq=[o!-ôG¤ÞÄÝ6FÿÀUžÀƒÂ5u"
-qÙ ùC­9U¯XVúÊY¦á:
-ËGœ‚e[óÍEmzTõMN.Z”â‘j…½\8îÁp1ât}aûKàJE'üñËmaÑÿ Ø;V’M<#‘“ hVâˆõ› N‘d<¶ºoÄ)'!F')õBPclF'WÆ=¼TÙñž-èñŒéˆ*&]gæ³T"™÷Þ8¸¶º¦B®ý1·»UÓV¿¢gë=È*šÑZ¯Ââ
-ào‘´ £½˜æÍóýBÇ»úv=>õœñ:ÙÈduw0Ê‚Ù{=®ïþï‚n_ Ïžíž×o{; ö‰ –†;ï€wtL›ŽÔ8 yñûç䟗’ÏìÙLFnå¡¿ÿu£b¿LŸ1 ÂÚ†„ÿ«ßžnšêVìhM>“`ìÛø¸ßóqì"¾sphríä§õT
-é¨×9Röí/œÏÃä<Oœ£)h0œpB¥‚ËL·3ºÍÏ9 CÓºÃmË!ë(^¨ZáJ4«?’~cÉÀÌa“O€¼‚º·-2ÄN¶ Œb2š¸ÖmÄqÞ; ¶Na¦Ÿ3©€¼¬ãàƒµYâ¹àì¾Í}G/Óå¶{‘.³nòmê^! äC+⃤+<³8 ûáÏAA³Á'"¥­ÓÎsa|€#‚ÎÌsî[·Øü»"8·/¯e@»ijn:}g.Èõ€ßÐd‹ØzQ~äÕïcZ‰§q9‘Ÿâu)MœáAßέ„ÝfQl¾ŠŒìc™oäA>3 dŠ^øÙÌÐïzx:ŠBQ>vDD)>uä̯†Yr`Æ$ù@pÔ¼[[«x1öûDñ„žoÇZ®qìûî¦ÑenÕ
-\'ÿ-¶žÒd~„¹tQ’ŸÄ„B
-Rƒ+&<Ä®ßÂ)À7ù¦d¾¸ëZ©A¹E$õÐD:SðÞJC.rGNP:Ø^q‡EœÛVYçu^AÚ3Ë‘’Ü­ŒÞþc@ÌuKÚÜû©çR®S ˆuqP¥aFC¨$bj×®‚‹‡&QN3J‰\_óv@ZÿFýß©ç×ŃaÜ^tV‹™Ê¹ò#‡jYÉs£,EÑ[¨L>8¸?ÒJ &M‘*k|¹*ÿÔÜK°öF [
-w2*¤%QD¼*éö‰tðòív¸«`,0­÷†Ó¥Á¾"%ÏEm×þüÒ«Óȃnòׄy¶·~êÄöé‘7k Úe” r‰PÍ¢¿®gVJ6¢bƒ÷úÄÇ·q ÂÝ’ŒÜ½~ÆíuJÙ¶€È+ôbJº‘°´ЩĿéù~=§~ë~Å!%©¥¥´vAJ
-=Æ–‹u\§Ykt`scžF•«T¸åØu\»vÍÚÃÜE3Å'H7B=øSEEô(,-ÖqGܼ8ù¡©DZøMݲ5«^}J±š!µ‰EÊšu£äW•Þ©’UÒɸªb²Þ™›Ìa½[ ˜Ìl3{x· °âíý˜¶»h.(Öþ!ÇV9ír² œJC4lÂÛñ„ÿüx©òrÊ­!†˜²þ ¼N;‘o…­[‰&À€N褠é|¾Ñ’^hü¨—¹àÄýxÒœ¶‘e¯ÇI«æÙ{æÇ(O™”åÒJBá°¢d°Ÿ42Z»¸}dÔg¦
-°keW*‰šù‚ú¤<N¦dpÂê%hܶ(cyqx
-Æ¢rTßìLè| ?êuÙÆÿ{ãØ-É—ü TG;‰†‰o±¸öü5ÁàþZL‘$îø«ê:GQÁºÆ8Ò‡#»Vþa¢ºŸ³¸Ý·¹³fä6RMÔ÷‰d?êKÞb]'iï%}ÇñYt)0Ç ]Äg¬¢x?ÏÝ1Yhþs
-Þ*ÃäW{
-íÚ5Ñ
-Hz²xJ'ÍI;Ìk¿æY\gžŸF$ž~†•Š%2Þ³,ñLAŠæ.VÝ}þxªì­!àƒ¶nŒjè(©üòïJª×7 õ˜:ÉñãTcȬLÂPÓ±ñ¥ýco´üüIŸrrƒ¬šÈµsc­¥G`á i K»ãã?H6×+Ùy=š”µùÃ"®bj!ÈGHcQ¶]g§GÔÁ‰™Zòù̧#›^`“Q;»3èáßß;âRz·ž±ÎUˆ b„Ó ±Ì5ÎG¾j°\wW…×Ó«²Ÿ
-Ñâ™3<Ç{ ¼!6”9­–Û?wãVa¢)H»«_ÖÎ…Juñƒ¯Zž"¤Lçáÿ„‹­âñ«6%Ô²¯²oª±Qu=5'|ù7”c,Çc˜!!³ DÕkåOGå_“êEW¶-äçŒ6i™p½Î’òY26#B€¯vJ_{!-³ø¹"Ûx ñvjÊ𠦀¯ØeE@â-9+ B5s!(dÒo»)ü#ÿ÷üճ΢eºTÊÔ6XÍB*a)˜ÖÕµúõÅ9K¦nJ/ð1ƒì0Yp97=”vHÍ$š“ÁaØÖo:Û;XÔbø'yº!SoøEyû¼Ó†~L£_ÐLýéÓsÃ(¶äGpœ§ ­TëHB;4 €Êþª¯ „Ì÷EXN\ãçŒoB7 V7|ùRõ’V®lJΓIõíÓew#õÀN'9|$x¬«ˆ0.À VÒ
-"â$¨n/ÕÓwJäÁsœ³_ã%
- Úè \ hMÄnìÝ Y†©ÕZƒ\Å3wm\XÑÔQ2òÌââˆçÀh‘”ræ8;h¢n4ÅEÒWømgáð¢Ô w…:@}ö}ÒÀ@wñ[²µˆÎÊ ´ëÔ‚Oݪ`€üE_]ÛXIȃ7ȘiÍU¸RyÇ®ôæþ¥š‡¨ÿcXG€ïƒ·Å}ñ´…:vÔ S‹»0Ù¹Þ;K
-rõ:ØAk…ʼnþV•^É4gÊ—Ò“Æñç±QeSËëˆÙ꪿ìÝÏ€¢\•2QèKMÑíaÚ ëÁCð§G×Ð1ö„®ùxaU4Ê÷?T3ÙUd\ÁPXeø;èÒ&’ÜNÈSAìK}ÕIÈlÀ$°—½ÿ«TY74W²Å*¯v´Ð ÓÈK Û³´<‹IN8<•€_n]Ý OPù$›8ÊÛœoðy<‡zà G1ž$óQŽ¡^{yÁïJ»¬&”MZÕ²®C%† ’D\5½èh9ÿü¦Ïù×ì±ÑÚ>;PÀ $±3ø/Ò¨ù¥C!<åÇžšï¥ÙÏ<0¬®iŠ[Í€8^
-Ys 8 ¾‹}ò~üî%ûdUï^BžbîX[ï&éshº]X”r3ÿ^Hü¥9õ–vE‰Nª)a~Rn¦ˆœXìs9óŽ"\i¼­Pdrú¶Æ€Î0§Í™v¿¼kSG@ŠôGt¿pŒ~f½­}iÄpŒïdÓ£¾bÙ4Õ578•Ò|ÂP6Y »ÄñŸ/0n–/—çS„NQìqÓh…ÌPS‚]iÁÜáS¶3‰n÷á-誗8÷Ôq0T‹¦È½ïQ$xK,²•bwI­ýâýÜ»8<ì…f¨SsÍÂüW°ÀL‚ðyŠ`Ù`žžƒ]'ž…Œ’îæ¬z”õ]F´7˜Vt÷VÁÏ¢äß”„WEbÍ’?÷¤Ð+Ù2}yNMÏÃÃB°?yW¶…žü©¢ßàì§w9&òzà‹,NÍú+®MÁ\OÅü{‰ Y#õ^lï/d‘ 4?âqí³¥#ݽ©–4àéM/¨w]ê³Ö÷Ó¤4"ú`)é KUçõŠZ ~~‹ Qôç£|ÍküäuËFÍ$›BI†3}ïi! &p>ÿÍ=Fg6” ðÝIÀÀîÀðžz1ƒM‘Tþa¼.ˆõîœ:ººÿ¢¦ú?ÈÈY?âá?ôø+k…P¹“S~FöñdÊψdZÄÁ5k÷§3¬"¤þ„asŽ6j>Wáµâ3ú¾ëA&r»š"Òž…WŒ´!P,Æz,#èˆu|Úy@y'uʆz[ºðùßÓ£(vá‡oâ´ÊXx¥Øv%Þi¯öBç“æPúêH¥«ª÷WK6‚‘¼J|m!iÜ)LCÀ£¡Ê8ç,Œœ½<ŠYfIro`bämІ£)Ô)o
-xjx?ß=—WèÜôhö›DGQ"þ.=9.-Ä@­NxŸ%ìÓ¸ëM„LJG¡¹‚p1
-0®hrhi•ßsHROµŸ
-ù”ñ">¤r¨é¡8ÂC9`Ž)¨ ¼ßw•”Žyb©¡(Ëñ(Ž¶š®µC¾4“f4ßÆ‘ŸùköÕi€u˜àT/:ÝÃ1åaØÐUªÄhPVSƒ»f4Ï›MlQ&ÿªô¶n©Š…
-àÑSö=`© l™û³››)\V&6vÖºg «dÅ"QB‹V° (ï·v¼¿zÛ.ð¶å¥:xìîENŸýѱàÈ Õ³i4iZtéŠ)`‚õM#J¥ Q6JŸ%™Fl¢ÖV7Ç“,Tò/ZÂù`„+€âµñ´›Y­ë†»óÅV¡5ØW h¸lJhŠñº¹
-êõÝ}™X8¹x¤uš ›Å'ç u íßKÏp¬:¼i¡‰@T>'Še¾ëàõÓ4kmŸ[G<›Å‘£Í‚Ä ‰p0*Ýj£ßºù ãl †¤0¹•“(«FŽž¥'Cbs‡ªü¡6ÀØ hæÒ:‹‡òQÁõZVµ²1ë+w®ë
-TMÔB@„á^~Ž…î›c>i–'~Yìy=/H9Oy_|¡ç9œøt!«Ûët’WJ˜•„‰ºy ø{°çIí4✒æ•ÑÂa½‰µn©ÝÀ‹Å¢+!"+þ“SýxêÜÀƒVp¦±S$rÌsOŠ­S]þu“o¥
-ÝðƒT=Qef§86Ø` è—™X?•ã²Ê¡šNù
-=Ý ËÆñh™9<^” t¢Üšæ/@îOàµÙžª÷iü^·Á.€X×Ë­‚^ï‹Ð¦Ø<±çø|S$\×Οº;£þk\ýå~æ}’qèk‘ÐöãS‚ñ†€S8&Eã·½ŸÉýË×RÒËõщÕö]rÔ‘?Ê_Óù ÏÎéäùXªÈ‹Í@ʃf?ìmm·( ñÞù<":†ÈÖ0P\‚Þ+4c öm½…Ì‚oëá3K<,<W?ÿüw-Ô±¼B²Àz¢°! ç6¡¦xc–ú+ZÆÜ0(ÄÑ•
-„ê}Q^dî§-s6,Ï ƒ‚½„`þ ‡=h_òH%ǦR•³`òU€t¤.ŒnK’îè,F¬ÝúVeÃkËY½+{ d•‹•š>Îk¸Ü×+zâ#€ô¾ Èèl¶QSšAKÝ&­Oòpζ'œþ›÷=øa’¾ohc.S’
-ßÒ$™ð$ºÛ`ÚžÚ¶i쨺*vpÄ°Ð;Èsë]ÒÚ³º ÷e}G‚9º]šL,Ò|-¿Ëv“Bm%ùÈ le³ëSáÕ_Élš8\¬î€qŽ
-R6Šà¼ _»åa®‡œ©d ˜Øx—ÄIÍ]Ö9ýézÁ‹ÄšF*å‡sÏÅ’yg8œs&§öGìëeØ´<Ó eý÷˜îþ‰¼Œ1yžÛÅA§‘½ñˆ+Fê•‘ÜŒù7c<q¤˜ûz­Ž„÷š÷‘µ Ð,tUº:×Íoœ†CÊ­ªo7³“ïHàg@t±M±ÕMWÌ™¿<€Rè$BykŸvÛõ¶Uæ]°’.•ØŠÕoÒ'|?Ñt$ªÉØ?Àã¸ñWl'1Ê_(Ö>(]âô”¿þ¶V|äã
-0èÂÌvŸ×Z$+ª`"pV1˜ÌtÒº¯Ößz‚p’¬Íð¸šELµ
-Sp%Î-ÝcÛZV ¾ÔÉ'ؾµ"sG?˜ET%šY÷U¦P`%™±R’y¥_k_‚ex^2³Œ¢!rãM•#6e™y™Á+´ˆ>k›MÝ¿kŠÖ*Y¼MISX…ëA(ø/ù€à/ªQ7…·¶—
-⬠?!²;BžfŒð$Æ(€„ ÍX7›ïŒQBïxÔÅý¼9Áw§í‹à°´ó œ~Àì0ò!.ßx~t;ù\Õ^œÔ›þ¸„¨¡a·{£È»ÅBð׶lÙ,µc²‘,s3)y‘—C¡»öˆ´Ç!·ÑQa-S·“Üè
-ðrø˜€,/•E#›!PU oT/ÎTα†è™ÈGød¸±¸MþÏCüÖ0±#°árL”+T$íæ…,ÍåÞDZÛ¿¼·’Òø%ÖGnúz“ÔK1ÆU}DšœÐ2Ïá¾›åB¤ÆBn…G¶ÜõcÞo öÝÐzò
-ý}XÄ¥oÀœZ ü()¹î†;Ü1Ìó3Õl¡xjëûètUB¿¤f¬;‰\±CŒlÒd:G<‹©ø5íøq”HOÏí–ƒ/4œy^›+LÛðjܪÎÑh»¾†`‘ 1æ&õ°–è ªë‰†o}ã™XEtG,þ)ÀgÆ‹–
-æ"ºÔÊØjظÏç”V+¢ÿäòJ¬,mˆ[Ó„!~òåbk:[æL'ÛW^¥wL–Ìþ’†yPyˆC(ËW$ïPþÄ QY ‰½š†ZÙÞº
-WMu!¦dvòˆjrvÍtÊi¥&Zdp¯)ÐbfÄTì«‘˜òØÞƒ–ø´„ïÊr:XˤГ4 ð!áöœÜØæZ'ý§K2mm±¿Ge›v÷ÞBt«
-J"Ô·ä€å7¸ÈШw}ï«ØA®(¾î‰Ì‘™{¶xo\ó˜Êp/v­†1µ¾’_X1Rd{hii©ÃÖË¢u\ïb¸ø Ûµ s£’~®Ÿ¦À ƒŽ>ŽÌ‚Sv4s9Ëd:S·ªfÎC¹šìp”‚ö °óº¤ºÅ×ÈsMë{‘_úßå|AÙÍ%qa¦›~¢ÚÒ
-³f ¿·E<ü7ÇbLI$öîédµïò²ÖáCRíi•áëý½öìŽËWÈÿô
-Œ„sòö Ë—£ÉoÌÈp$Š øZÇô ìO¹Q}51¿ñ‘cX¡^
-|?ΓAEŽk#8oî&9ˆ¦š6)ÿñ5héµ~B];>¦ cÅ]úŸ+¤ùLÏ?pXÖù¿àüL(ÿäõ+Ÿ² "Îk¥C:gXR·BÔ5!¥
-;em™Z³^P{7 L¯°3ß…µ½ïß»©iDµX´c`DÙg$Só
-Žw—WCF@æÉYB#Çx
- ~P³ÈÃ9…Ýí¯!)Ñ M›Ia1ïcå´_Õ¼àpJ}eÖ8ËšÃÞ}™nò7õ£u9IŸHe¼$–¹ª /»ûl¾y3¾›KÈvÚ3vGŠUgøÄ­zl¹ÈJ¶ÅâºÞe“êoÃÛ¯*•`‘ßWö­­8d}o aÙéj-Þ=t¿ŒDã[ì,± Å"ŸÜ$ Ðùf–ÚÍ@äÀ¸Î*`¾AS4˜r >\a¢1·²}#-D-ƒyþfN8ëÎïÍüwxîy€¬$M˜Ud'[õŒ¢ÍûÍG²%⩇}‡øžß/wf¢Årµ¶UÔœü«Yp4[¤ûµ-Kw8mo<À1Ç ÄèúÖrO7TØÃR)å1‹?'‰½ì,Ó:7n#ÒŽbæL V+Œg
-
- q¯R΢§Ïè »“õý*s“NHÏS¬Ð¥‰WO
-ØßÑ€G‹œZm«bO—ÛobÝtƒ„DœßZ&ûÈ¡°äÛ•®h–º¹%Åš´‚^ÑŽg«iCeûÉEÕ' Fô•Æ댔AŽ¹më‡ùZ2ôdøÁ\çóÏ2B°7%\xþ‘E@.ù¤IC­àÁ7Š
-zør:ÿ‹[EÿÊÇÐYgÓFcËÅ‹Dµy]^vÁ6ùïôg´Ù@ª1Ü~s3ýÞ3Tbf¦®/vøÆóZ¥|êò®´Àžåî|¼¯˜4—pKž—±s]‰v¾ÂïÖ¬›¢c]FäËuÀðÚ“[E)µ2²ä˜=Õ
-ÕÇ=h­U±ÅòO>^«±Ò$Æ„¾Wžà©u=2‡bHˆÕgâäuÆ õÂÝÆQ¦üHu L@¯(/T*GøóË Ðƒ”Sç¥Uoœ Rºi‘Ͻ÷¡2ÛäŽNü¡ù‰M°ïc
+xÚ´ºeTœMÖ5Œ»×‚»kpw— Á‡ÆÝ-XàîšàîNpwwÜõ#÷<3ÉÌzÿ~‹Í>ud×>§êê^@Aª¤Ê l2J€lX™yrò* C[Vµ €•‘™™‚BÔhèd²3tò¸œÌŠÆNo
+€$Ðèð¶h0rÈ ÕÜí€,
+
+joë¿ë¼9þ—WVÓVgaú½
+†ÿAlo{0´±{›Óß3öŸ7«ÑôÆÂø?ˆãmÍdýÖµ[ØÙ[llþdea~£jò|Sø|£nú²¾å7µøS€í7tùãÏñÛäìðW‚7³¿àó?tÞZfîng´ýËãÍfñ|SÄò/ø&‰Õ_ðm‡ÖÁ7z6 ËÛÖþÊÌò¶5ПÚo¾ Û¿¶ÊòÆÝîÏò[¬áÛ­m 4uúceù?ë¿îÿ˜ßH¾5Æô—¿möÎ '໲°¼)ð—>,oÛuü£ß)G Åwã-ÄÑÂíO¹7­ ÍÿJóVíOŽ7šNæÀ¿ó¶'WÐ_o9œÿ‚oBºüßx¸þÕö·h·¿à[z÷¿à›pÿÀÿ>ôJ¿Ÿvÿ\æÌnÿ{ðVur
+ÆãïØZ2±P‹©­¸bÙ[d@Á|ÿF¿4Ê|œ¯žO‚¿m¡E–õËZS|Ùø•‰²Ð¶¡¼Š¸ðp–£z@šü‚_i;ÍO™¬\í"ö©´æØfb€úð¡(OkÇýÖ±Wô‹D2ÝÒæ•hׂ–Lk ·4ü6‚…‰6p§×{ÌèHÃnáEÚiƒÜìa»®4m¢KòXr’Ų³¤^ï³F¯ö1J1Ÿr,“®®b¦ÓzÂOXeÕJï5aåÇ6Ô²Zµœ}ù–ëB>fÉY)p•#pÅì§Éð÷ºb"ë¼é´wÀÈøg6ÂßÃ(†òªô/¹œ.jÎ.UéV¡þÒXØ ·#xjø©öª; ßïñéìåý9æ:êiÈ1 "ŽÒë,ÈЙ[ôjû;¿”å~4dLÆ—‚Q qmK)k,ëûYé%Ó¢rO²>¼ãm©šA}âá@ú÷O×rAö‘¿ MÊü8F‰ã"\)‡9‡;Ø×]ghÔÂ(ŽcØN0›ûïçê‚;yNyM‰w@_T2ÄÔëEÖvÊÌàÞƒ`¨½·?õ 9ûšœøþUs;@$ 3†Û'µÉÍk)ÿˆæR’׸†Çòn¥ ¡®×k} ÆÏáT™CÙ
+>F¿æ6ÛMo4e­;ŸóU÷ž~äXŽZÑÞ»Yã,iç™?‹O¥?=Ò·s–7”z—<;ŒcÌ×fPYü#½ûçÈþ‡ eh*°DtÒÊb¹›Þî—-„yÁû56ew¸ë(}<ݘRÈîžWŒ\Äßô2j"52•‹RŸ—ÉɼF3±Ì¹iÊ’Àj
+ìíØ,š»eMŸ”‰¹èŠó
+£üC³Å†|Xð~8±/]Õëβö¼6¿Æ" $ùÉ3šíЦëoÓ0úÁtR6†#+t¬õ/¿µ-ŽÛ9\Ø+$IÊ¢cæ] ¤Ê…»Û¢) ¤|GÅØŽ3½Pi´ÀdÚ ½?Ô}eF'2ûοÊm,˾Š‡ìÙÜÚg%×-„N*WmKb"ßVPq]iƾ>¿ñð3œð½ g8³IÅÇ<“Õ}ÍLíoÑƵ“½³P¾ïrÝœÙìÏ38œ„Ãá+@Š#pdŒÐ“£¸·/Ÿ
+Q£¥¶ ][»ªWî$ÁQò’9(ÆnÌ«
+ é Å’x\NÉ™\':Ý9ƒæ¢*ÓôÏXDáªè³"<}pùå1Ë£7ªTÅh·
+{Cä~ûY¢<RJØŠ˜ÜÃÉÆ,¾îðÈ=›A"çñ8\g†ÅåqÄÚrÎdSû…%9¾~¸FDiâÆåÏý‡“‚Ún%\(G½L]]Oth˜úSÁüþõÝÑ"bf&¯z•‹*'Å/[B²¼µB€Å¼1½aúšàn•µlLâ |¯eÁkÚ„$†FZeªæ„ž‰Ú¡mSötœs˜\Ö8¯ îåÆxˆÔ”˜#M· y'Ö§y<ªº´Ýìày])ã•ÃÙC料4¿Ï
+ÀäÒôLQVZƒªàS²ü×ÍÕ3 úÏÅek›Èúتòö·@bùsêb²ùj´Np/=›Œ,Œ íÌASÍ$ß?Äöïãéå®ùcã^}1PÏ_Š'ý¦ŽÜp,<¹Ëa42£÷pö³n‹Ql1óÖh×›"½ÚЋ Q̘þ™ugÀ¢ç4^X9ž Z|ïo¤ˆ4úE'@1Äí ÿJ͘O¥Vü¥$ú&EJ[ùKºêY
+6)üÎ@t«B¹Æýò×â9ûÔÁn
+Ÿ?Š"ŸígÓ_9
+ °9zöß®;f†X$(—Fì»0kÙªHÍeýסfÆ<þá×Õ‚¯^Li̈‚ñLò×æLl÷y°@#òìüÝÇUMjçw,Ë]­£§/Ub;Êýw«ÍUé©ÓH ìqžTbÚ¢'“ú߯~ÁÑỦêŒÒcEoGÕZã4Þ…y4L/œSH¾xì ÍBïí@„mfP¾úÄ}ö2Âë;ʧ™!wBÁ§8;ôÞä]—à€ô[°Ì‹8‹ÒéñÈ|9 ?°øE×%?(ŒJÁn“A·qk±7jÙùÖì'*ës¬ÀçÕÉž¾ç—åNó÷W/çF>æq&@JŸg4vVñ šø‰YŒÇ»Þ+…Í‚ƒ·ID2F  žâæñŽ²ªçq39$¼ÂŠßú$äºÇÓ1÷^S§-š ?•b‹ª‹Gî>»Å;OŸvv;Žù¬Àz©5”fô1ÙJÍYˆR1}¢$ˆ6-;LïV·ç2o*Ð!ÔÙÕ| ©£8ÚB­˜(¾í®agñs°A¨&bF‡Kùø1ÃVW?9 '¯ˆL*‡;o(„Ì)}^Š¤ÑÂ;f5\üþ<(Ê°`Ûw©÷¹Ú_PÀŸy›ÇðE;ðé
+F3éçè ”Lõáxcþô\Œ²å•¶Õü$_興¸äª,Šþ¥0õBÝþÊÇ¢”R ¨SÊ }Á@ÿ®Yõ{LUsã.)8Ha ÷q5l꛵Q\±ÞÆ¡'äR8²K–‘QÙ/yWÃë_:••øéOºÐ?Kœäà-úI8~UìF†þHw3^A[tÈp…Wñej±Ööß5ìà•Ó•µ÷²Ɔ÷‡’ H/üISaÓj0Ø—…oCµG)˜c"êá­1õäçô5'&
+iÙë,M<Ú½ú²»Ë|¥¼ ‹k°» ¤=v§pb€è­òñ¨ÿþja¦u)6£8±§Åîõ'úÅ¥ Ià=”P£BƒÆf‹´2YÅ#yO3‘=¯‡ì,3íü@£Ì‰¯q󘑅–¨*Žp9²vÄ5\¸WôyqpŠâ•$ª}`xÆÝ«£y·“Gž¦é¶Ý¶a¨hh>‘ÿ¢»á…'X\\T¨ì*ú)ÝÞG¡:(Fs!I°o¬ûJ«X D(3¿óq-yI_žîGÔÌQ>a`×ì’?üÄý°`Õ×q/d7£Çæ<(¾¹YWÝ^dethèab„˜/µ›­å·ºìUù©]==÷•X”‹óøNÉâdCÖSÎu»D4_~Zr¯W-+AkâRá«ÌõÁ3ëM­ôá-–V•qR.-Þè¿£¹ê"Wfã)óÕÁ[<1ÖÒ™¡*ÞüÜè&õ1Ñê-ÜÌ\ Q
+Éx
+R ]ìÍ“_á^K‘ÃÛ750“M¹„Žfbôd-LËþ‰’T%"C||Z™ÚÏúÙåý/ªƒ¼˜Š>˜°îD[v±Ä\P)y®Ò0·Ò™:8\AäÔq·$M_¢µx‰­R<]“óèx’r`ÖT§ÖB­úÜ\<Ûµq¸X,ÞmmÃF2õÉSÌ_ª1K,‹>ôŸFšÄ-³¾tˆza—ÙUy¦¾0"ÁÒìžC¯¶#¶U$„ùw–·Åÿ² ?˜MÔ*ìáå¨Ibù{ÀRJ“8±!G
+› É<ш¼ª @eiˆ;3ª—Ü|¹*!ò‰eNIä{nûÅò€Ÿ‹A" "`¢Ô"å`Ì#+8FÃî¸òr¯ûÀ+DhYø$WŽ=À“ ·†äµXau«|—ÖY}91® ‡]'ø’!­Ÿ7|ÕˆE’nÒÄA~y?v#ÏJœ=§ÈwFo¤óu!HØZu8~'ú+z †ÖŠ¬—É6ŽRÃÀìMûñ4AönDìg‰Î"ÖTw]êiŘùà–š:·SöØ ?€ù†Te%³ ,í2Eúø¥ù7#”M•²×OmNMOÜòÏ.-Ÿù"Û6ËügWWpÁÛádfɲ†o·¡±ç¾/àjPšÂ”°¤ñvÓohâ ¢¾KˆycØv
+•PѪª}6«[G&±¬I"ÃÚhC’]f¨”[ð7 2Dì­Ìdz}°àB5][ûÌ1ç›ÐÐ ‹çsÊ…&îØ D Îõ·9›µœq"Iùõ)'™4QˆoÆíUšÔ€ª_ðç’ÛÑæÇjÒ®ww;˜¹È„ž—2(§ÕeÎSì_÷úU÷²Šc6³rŸÅÚ<™üIJŠ¼@ÍBb|烰ü^d›DÞ — IÏÕÀ«0HŠ"…~^sYuú>i´ô`æ£SžÒ;6Š<OVµéäL–@¤Vɲ¬ÊxJ×ÈÎð7:•l¶x·¸*ðS¶¯*ª¨Šë/ÒY7¯¬TL:†hfÂ$BTÑ›…/ÍqJú5Áj±áöé:T½Ëí ‹Êß^äw×P ed
+‘¦•? æ`îÉ ,$ :W Zýzº¢i¯ˆàÐ.ì-@ºH„™· {¢ér1Ò<¦—­ê~DêÅEô^NٮЇeø´†±êOe㈠ç€3qZ¡™øb=OI´Ù‡DÈï7§áêÞ"1w‰)€š¿‘jALZtÙØ^[Klâ=(f×Õ¸+ï~êƒ
+Øs VTZÛ½±mÓ¹­Û÷VŠ^™h®aäYÐã?Åð®c ,ezè!bÖÚƒR¨˜œ½É”)KèýAõ©¹E9ð|×£mQç® 0ÿ®ê‡á®^8øT= ¶¿ª+
+ºÞäP- ŠµÔ¦" ‰²8Ñì÷Ÿð£Zu"e‘Ï9[3¯7Pm¯­Ý ð÷ž1ÃCG2u.Ž°+æd8ÝCÇ»’8wÇ"I/T>F®f¸0®† Ÿ(è&úh%„0C}5m3t³ õ˜‹$€Ô>Ë•ˆ[Öe8pÖRcy¯zÚY4‡gÄ£ºô¿xÁß¹_`"X××»"&Ýpä\Õi
+3´7*“(­p2:C˜?¶(@7îF‡LÚÎ*…S%0¤Œ<￳N*ûúcshnùelý4Érƒ|ÈÆÌ¥¹̸g:&×LÈt¹ ?Ÿäå,8o96yáL| ‰:@c1'\]옹ʨŽØ~L1+FÌZ¹­úiã1=Mq<Ø¢¤sòÊå¤ò{æñ=>ŸÒ”Ý¡§áR ã=ñn˜qãwÄ%´°‚¸Àzý•³@$ˆöÜ¡-¢‡Š:®…ÅËñVœ Ž‰<‘Ó¶2±–ä"1ØS[g¿ yÝÐ…ˆcIfUµ6渎ïê÷CgÌ®M
+JùÈX1ñXï h¾¦qÈ ˜hŽ½Döžç¯°XtëÞÆÎ¥òŠDã‚ó:sîÜaˆK±µŸiKÞË<£BTvžrص–Fët’À_9"õ&×ï— 6»ˆÓäÕ×ïê’ðožR…ÊÕå­+ƒõir@ç‚2U·“Ö'›‚BôûÂpmÞÏ>DY©vÌš:Ÿž `ÿÊ‹Ïq/Ô9Év:˜Y–8´2£ç‡jô]0÷D;É=Ÿºâàô„¤³•¹²üLT’Òÿe^<•”ÍÀÇ’@ )Ü5Ï蛌Á¹M‚ÙÛÊW:i´–kæ-N‘s)%D¢P^à¦ÞìÝ`´KË<óÁöžy®Ï›$)Å©Pˆ¦¥^h”ËåZµ8zÑÔÿ}FSt´iÐ<'ámnúêx÷HyïG”Í:ò$H¸Ð­sÕ|écB0Ëõ­‘³¨Dj®ÊÌe¥n03OýŸE^žvdoÊÉŽˆÆÊ€º|qµ7&£4ÃÇòôå):ûª2‡sý ÅVÔµS0
+;
+f%(Û§o8¶°4\ïcI¨ðŒcÌãRí\¿3² ´
+{·ÜÏi jÐCseéu÷AL ô*—z. mÔÕ«ØÝtjˆSÛ+cë
+b ŒR^ñ}™ÈO¡ÞÁ¨´—¤p­*òa=ih'iVTœâqì×)Ë·ÚûñV;(Ýg4hRUühMª·Êó_•Tg¡'-¾Tã|4~‡:zîЈΜ¤UKf›÷°Q%-x!“×ÍÅ +ÍW)¾7mDþ-‰*Žd7.é4ÃBX×R”„ß1èp«å2”úè—VinÕ ^
+‘ê­º¤JÌÞwÑœÑ.éSA=n
+Íæ£Dÿç8ÉÏ=n#ýÝ(žf*^1i~X„¸ökB1R†=Ä¡´_¸\–rýD›¨ þ£eú$hŸde¬C¼#”wÊ£ƒî+}ý!3ƒ?M•vì’´¥˜Â·s:ëåúRMøU§´ƒüOëáXÂ1º;SQY»äÌÓ*e0Š>w(•ƒ”ó¸4Ÿ¿ŒåJEy¾ƒ2êê'©â$!ñÚ‹—ôuÊ
+À‹~]Úäá9‘…Cu\£0¹Ä"ôÆ):‘e¯|_í)#‚zݵqªð1ŒšÚ"ñ
+}Š}k
+mÓíþ¬ 5þdþ¯i{^}R|ÍNƒSÉ<Œç
+|ùÙÂý•¼q/Óc½A<ý‚€ºP¢ú`W4Q
+g¸Ï‰ ˆÓ…°»íó+ éŽc”ÑnÉR¨æ!}Æe9,ôQ5˜µï² 0ß ¬~€Ô³Ãj­Æ…â]ùfPæ²7R°·+êú%ÏÛ9ýîlÄ ·Yo´L"îjÓÑ8Dn£ó ÷WçyðÙìêŸ
+îA¨É˜ƒßò+ãø‰|:®…ÞeÃR[raÅÙÁT¢jFdÝظÍs??‰Ë‘“ƒ®êMVÑÊpŒ–”(ª¥”& Œêª—»CûW;Âçû±È´:_âFÕ=m=†½¹ïaAœéï Û |Óû0Úúˆ/Ôâg'þC=ûéš/D¯Ba"¸Ÿè«á<ŠÏ^ ÙLîC»3 ¶=zÝ6üQYÃØÏÖ!Rk¼I>逫°yÆðÀ…‹¢TÞ"`WÌ‚)˜âÀ«úQî9ƒ€4(¯•ÏTaÆ2[Š®)|"Ÿ!¸:¢²Fø® I”ýP?g™¤Ì¾?KW7¯WSäƒñ$VØêXÄ íOûe¿T,
+•‹e­´ž–OŠ'C´ÑÔ§4Ü>¬hãøï}ýÊwÏ‹r):(·Ê³/Uš•j=ÖHyÒ>Á¿ Ø“ƒÖÕ_/àææYz½M½Ãà¸Y1£_Ú>µÀZ-6 ‚nö_*;%½ uÜË¿W€g9Z!îmhRXµ~û.ݪ0%, %eæR‰z´‰Â[haËæ’R^c÷ 0>jêQ¿5š¶ññ)ëL ýÇuxcjÂѶDûE@…¶a"w‰@?-D¼}=läëB9™Šmh$J¦ÿG+Þ íÀ/Õ'—³e2”ŸsyÌ5±o
+%¦ÆŸJ«Ó‡ÞcvWeßä’ص1¦5l5Ìk1§Ð앳º´â2‹ž”q#¥®j{†ÞFl £Â½v
+gKäq³µ)S¾An©2k³5 æD5K¸„ £Ò7ǾèfáÄ“ˆ6ùèdHäKÍ!‰á,&æ§Löµ ±j·`dj +žH:´ÀËÍ[¶~UHÇùZéFqN®¶åŽltyJª¯ž]Cà㊓CØ­Ü·´Ò÷Ê2OTòò™GÑ2ÓÆYÚÛ}Ò`¸N÷²MRÜH<Ô¢;…ˆ±"š„²fmˆ¾ÚçëË¢Ž}J1à¢7÷˜fƒ³@/¹\‘É5yGCË[ñu½ñz\Ì)~õF·{ï[Aès¾v˜ðþòÏ ä:jÙƒÃS!HñÆI¯Ù¥üŽ›¥:n¤C‡K¬à.ÿfíˆy'ù£3 Ø)Ò(âŽüñi<朙z£VÒ¾þ'O}‚×èd!°#
+5»-7æ“c™Ó™"Š¹”{ºÓͦ‡„ŠP¦G˨PµŽðžV\†^9!3ïæ×<ˆ6­q<1Bã&ÖjvÄÒ?gÀ‘[ áîÕ“‰ñìvö#äv—ag]Š˜.ÑÇv Ã=¡~øÚ_trçB­Í! ZÁ=1³gV nº¦ §²3ðÅÞ\‘{›¾î+îžýàÇ´vj ëTÆœT?XÙavV
+«áÇ%ì\,£Ïb(—ñ ™ò·Õ¶W=¸…„ö%ˆÕÍà9á©ÛŠå~èTŽ°LìèfÙžVù¥†)UÁÒè‰-kJ>Ì•™‘?V……‘À•½S
+ž‰íT±9Ϧ&¬f)'ü}ïzNïµ"K'I²¯/ú‚y§ÉFóô¸Õ!0ÂœBSû¹RZÁ4h4Õ=M[¢bqp.͇¿xLÓ*]ß°P=­yÞKŽ_j|²ëx ©W³bäÞG#÷·UÐß8•ÑßpVCJ.Ý“ ˜¡°ÚS>¼›‰f tCxuÞ…ŒrZU!c½V3v,iG!˜sz‚™5{ò1!—ßyíE›ÿ±j»ÿáp–þ¥Ô0bõ¹Î>Å¿"j¯ AžE­Ž†ÆG!ü(“=1ðIŸ••ó+>ñ»šÄ
+MvL¬¢áM3Vš=F«“)‡ Pýcgòá%8®œANe7ˆ{ÞÆô6á_Òªâ¿å^"PEì‹Q
+½ôjiÁå–•½ë» é÷>ô’7ä˜f‹êZEž
+ö°5ä<ø·Çæ`ÿ2_1ÔTêþB2Á©{Kpzr)Kœ–uNI5ן¾j‹*h‰Æ•¥¤( Q¢7ó Ã[ÛI;öí¡GÛcV¼ ¥[´yÃ0i¿l¤nMZãüÃÊÇ
+£"çU«nu…ß=Fx8Þû‡ì|ù;IÚ¤ÙSôuf2¸ˆÇá'—€zÁOdi^Šczˆ÷ÜEºîhç]–ëƒ{-7ë CBÂùÐßUsÉq…h2€±b§ôìXܺ®¯Á‹M†Ï’,uÍgÔE@ñR!N·\vîJot3±`[óTÉôšâV8¶aÈÝAüþBSt¤$y­ˆ†‹VýŠ¶üB!‘ñø"Ùj ²cNíó‹ Ö{Â91‘¥ ŠæôŒ&m¯/²‚ŸÎŒ
+ôSc
+XÞZÖÖ¹U€9¬.£×Þã,M}ÙÒÀßÇü¬$Ÿ0ÈÎu€FUO‘·˜ë¯‚$Ã'LÕi&|võŒõÓ`‘ÀêÒ^?tÑu„bÕ=Éœ¯Ó?Å¢¦îvì{J.â‡cù W GÖâmÁAI׬ê¾äWgÂtÕVµ„‡ Gn@˜–ˆ­?ôp-x¯e[j„|­eaÓ½Cíü6æ{8ŽM,¢ì6Ù+ X<ãÝ—åª,§Ï)3éÌÆþc[Žhº{\ጋïÎåÝ“Bª|á"Ü>µET°M¹šøe—Ne?ÄçsmíÓÊÑ¢Ù>!Ý/ÓH©z­A"8¹Óß;<ÞV„áEì‰úGç㡑į­ûßÚño•Ö|UE‡*+Ç 7 ¾é‹£¯MÚÅ“8ۺȿOä7üXf’>¢y6.ƒ¹@*Þö˜˜1í“(Û>á\µ‚ÿ@¸ró[@L 4 ŸFäï•}üz—;…7ÓFž‡`˜_óB¯)ÉL¬³‚‚¡*¡IÈ;p¦šZoÆ#ü3³l±SÅ7ÁepH~ˆ©áÇQ»ÿ·†XjÒ}Ê6¹fƒŽÀM¢ÇánrIGÁKu\_5·÷4¹Ä´*ðé¶Î®áœé»Å£ÐòþVÁKkÔýNw–Ûa¿èÔm£D@Çâ_èiŸG¾}nóÍ„
+“‹hÇ?JÅ®Ó÷2³ÞÇL .ûƒô¶þû€ ËñT(]ìÓí^|Ë!„TdZ6R3äx/ø#Ÿ© ¿d¸/¾wÚ^º‰‚Kf½ )ÍÒ62æùpæ9´AJžß™ãž
+ëéºd®4‘ÒæÅQªBþzÃÄA¹‰vNŒ<ngÎSRë} Ç®¨ÍÚÞtš‹Ü·­€Ö ðl$˜€­*÷‚UÚz ªïÑ÷ÙV/WyÕã:_¯Tõ
+ªïÏ)‡3ì­Ý®ù~ú ˜È • 6Ý…XAWh8f)þ›©ã8Ìþ#¼ m”¼(I'µ²‚ê~Q(bò
+XƒîXc–ŠzssÖ%<0eº÷¬ÖB$fÉ}žÂ>]I•h;$y†Õ|!&ÆW_íæ§(¨‰ç
+Ù!Û(f…¿‰m¢WãÂH„rˆ–SY9’A[{ªÃ[‰OxÆ ¬ßÉjo,BÇÛ¦w¡ …t\ÁÁ`gOø$Z29X g ^Œx4b 4½ú¢pm)­¹t‰QDÙ Åú(¶&é2¦3*–ü˜jÃ7óa‰ÕR";¤<MSQYƒK^@1õ‹ikgéÙOPE©6ªóÒâY†‰N]õ¼5ÕÓv ý2¿º oRð.´Þ¢/ iÄ%N !2ÀÜwó—¬ØÙOë¾Éà«p?Ȫ0R¯€Ê¹ýO$(ï!Dª,¬7Wbœ¹(–Ï|¸ùÜèŸU¤Ëª?°((Ž¥µ1{”ßÊ®J?dIÔÄ>çe Ð/%»™_VN¯èçÀ7š¡‚°SXmÊȯjr¯Tcðkòh‡'é ™ä-µ£ÊtÒÈ-Uš»”çt>ùP[œÁ=¹Šñ³WÍ[\ê£¾Ï qõ¿jM®‘Êê°ƒ pÝ Îzh®[Ñ„£¡Ànçž@ÈA^Ëtk­úD)泚4 .ÜÏJ—tÀ ®¿Mû)k(¯6Ø
+y$ñVÄ¢X¡ãÚEeÓEÎØ”Úp{éõhõ¯Ò­3º³gšŠ)ŒÉ˜4.„uÃÏUÓŸr8¥^ýrŠ•Ìx;F,o_UDz \è
+H‹'+:TíDÉ×-eM="•±ŒÏô36ª
+¥ô­TÌÖZÞ‹Ž6‹Îˆþ_/Œ×±ö½on$ hÁÆ hQí2V†ÔªVÏdñÎ]N·±‘Y É&1nÓïáLÜÄv_lmy|´{5¸“òÜÙ…O_Sžêxö §esåmq‚¨†Sƒ?.‚¡6ƒÆ‘ýÄ Ë¹kòMMáøïÒ³@¹Ì™¸žc\¸„º[ןq$h‡x
+‘`ÆÐéÃ{ÝOŽêáu½«µ’v³÷‚ôÉâT>y\ü¡½7œcâˆä€á–Ðò¾cœ4_7ávO„åçøÙu›]8òž"[“Þ§b¯¦PüžHeò²ëRµÛ—_â=Gœ^ŸDùpƒakˆõ°k:¬fxHž¿à×Nô(‹›ªŒ~æ °Ä_û‚éþ =¢8§:½}óFDóQ›TpA¤ÌyêåÎ={™¨€]Ø:æ¹v½"Lió$X™å;¼UÖgäqI¾““Q$Î-Îü;ºœUãa)÷Hèu¾Æª2óHÊYeç7ä¯#¤’uÐ$…é1xþ‰<?Ga» 4^­¾z¾·‰¯¢Äù6ñy@1XŠöË Û®_ÛH GøM/®RݶïµØm±VNR½ôä8ÞŽ0úB™-8‚3eT9â6‡>_ûeÂf¬ÈM¯8sdrmË{4¨²H‘ܺ™ð•gHHlâ+ó“Œù—û÷`Y¨D¶­òTsÿþCÊ”zYx»5M–®y4éÄ›;$ÃÔöùþÔò¦âÏ“ %®-¸ŽFí¦T"á ÐóB涂Žl>ÔBÈö–öò!®$‡Jég^A¼Eþ4Èf;vÍœ0¥<`…zD­.PÞ‘‰M<+s«¼Œáy§(½¬n3¤ è>k¨>Ž¢Öw†6äZÅ&&(ð’ŸEM#¼;fš3‘ï{(¶Qí¡[”'yušóšiݽø'S.¨G4ߘ3x?^í™K}2*æQ28;ÑÎM°p‘G³Uõ¸•—ç¾ðÊ9DØ$¢LJÞÏ“×kâb;Þ W´ÑåÄ_—}¶Ø„˜mZËNoø…ŽºKNCü1ÖfY¢é»$U4¢úX¾vCDL¯ñøü‹6MÆ¢Júd™œ¤y¦rV küUË+Û~rjâDõD ¨„ž iÛçƒClü+Eþ0!{°•`‘0ì"@’›•—?VìR[rD»G2ãóâ{"(sASÙõÊ{<~Tý’碉o³PÅmµÆ×"†üµãX"Ó¬I(8v˜’±/ùP.Lö F( «V¥0{Ÿ¢MMÒ1u7ùHs‹¯~ÜÒÔêlÃ’3}u$DëaƒqÔÏ’Ë™°VNÚ¡Ú$Ï&9iÛAúº)ròl:­[WNF…È°‰í>­Ë…Oáz@{hxhëâ[¯Yó¹-â”èiPnËeŽ;ÐcÊΫ¹Â¶ç6f¾C S[ç±´^0~
+´RR u'»B(°ßQ<5âE´.q¨E2gÓoµºzI†[‘Äùe¤®»Ì¶âòÈd&¸â ô¬¼Ih`b§M𠪙YÆf??îÃx³== ^ó&’#ƒB›ôœev×ILSÌGÉöÖn°eå; [jqëGd“°’Y±šC'”kã8:Óô…ü% *WúóÚA45)ÙPp6!§ì«æ¶m’8-þi;.öÇÌÓö´¡Ú(œ5PKÈ´£tšßw¾²—‡©¿¢Õþ ~ßú²xrŸ²
+;þp³’Ær3€ˆ€O2Ý—äÒeZ%ºZÒ?¿è¸z„Rúm¦‡Ûòõ] 6rd’B_THwŒº‚ï°c¡p‹QÁˆ6—uÝÓÄÈ2¿;f)÷Ð1J E¤ýð‹`¤ñ¾]â¶é¹M<›+9<oºuç/ãŽaIü‚ P#p ÇsbSy2ÿE·ä3O:ÉÚC˜ì'Å1 S^äúhÇ„1ÕŒ
+›Jš¶µ¢ìîôÅ‚ãÈŵ)‡\Ôs“íí`6ðÿ#Àõ‘GtLáªÇŒ.A›œ‚*Ä!Ù¼§Ó¹ów̨*4
+TŸÖe£†å¼Ý=é“:KÀj,‚ºƒ‰M9K™t#ý£EO{érŠÈ6ËÜàB—R̘è·"„+;¢Z;Üdö)D™¤£ñhÃck‡Ä@rï@ ùdƒöÙ9Ik®.ô”
+ÑySÊB¡vô½ÀíÁ.ØýÁvùÕß{AÔÊ Ñ2H·­ˆPû„Ôº)6ËrÛZÿ<“å€ë9Û…:焉”sÚã94í:£ïÃ0Ž\Ÿ¥ÐžM™ÚÓ’Ž>ÚC-I OWµvøËb§¨üöaqú§Ü?2Ä…ÓÌx0§¢ëŸ2G0Mþ”3²€Î‰Ä?n™_¡èjïét×Ê+®nÛ½ïÑ-“»Q¢Nt:Î<íyý6D ä2ü“{¹® Êáµ>pÎhÅË0;3—¢|5‚¦¹ÑŽ7ßøÞ¾Åét©7œOjöÑè©0Ž@¦%sJ±þí…h‘&¦¥;EúÏsã$ä«Ñàª!xþ[Ž6”ëAr·.¨ð4TDJúxGôÍÌd-¯®qÊ®›Z®¯ŸÛóž§3óôgÚõH¥e˜¤ •ð|b2©WG ³P!Áfê@“Åâð=úê^æçö˜ÛýÅ1×Øý!N¤ IBÝ#ºé–…ל[D 'D'på Üì
+YÑ*3ÊOz!èâtÿ¶Ÿ-§ú[ƒÇ %ŽJ¿Ñ”&½½¨þ7Z‡jP èEð¦ý]õ&aLĬ«”Nfµeþ×ÛŃIÏ[T ì'_l,Ä''wk´’ õž®~{l*Åmñ×
+ƒPcŠ^p_ÖÊŸÓì~ÊŒÁIf\œN@3äßm\<h’sµ(ðO²‚ÝÂ-j’ÆCŸòÈÝ^ìqöeí»Ä?r–NÖ­s&‚h´ùÅñ;½'¢9~«?Zðþ+¬NÁ|YWÛú}ëÄŸdšûf3ÄðED´ ôex.òÔú6z Øyýé»E“`§‘Šfée:gÎ<¥©½Üζt:€LK½ ͯq JÍx«ð¼:`uK0†´RÁŽxtM°zN‚u\÷¸+¿"oÿ8sT[üš¸Ã51UÅhlÛmqîæ—R—Sif°Q2Ë…¾NÏ"©"mGìÈéÕfh
+°ÃÓˆóþ()wŽ®<¤Ê…{WÉfnÍè4ßëÑɆ®áÐË“›´³£—”@DnkwÅF‡$ýWlY ¿5F;¦F´Kì(>
+¸~®ß!¢«'æì¶càY–×9ÃýÅžº%¡s±;ò!·Ëy3H2BZ‹Aç*È!Û¡;³‘ÙÄ@ì>yXC-ÿ]Y
+ñL¢Ñ@Qló¸;a®å?"i«¾‹áToY·¤•õ¼}²`üV#xIš‘Î0^¨HÔ­9Š‘Rè[ê¶@Óº½àƒXe«²w.ý‹U~» ŠAbkpø7E½ajã{Áð&ÿœКf99+`äÐ8º¦*¦^&äó<K°nIR+®ÿëãuÿЧª)Òº-EkÐ^6yß4‹u–¬9¦6ÂrQîQ aa¼mBõýý˜n¸©´Šïcð BÚÛÞ…•ªëy°8–d2¼ä·Éñ"4ª:hù²RîLq˜8­öæÔå.j–˜I3ÌR
+³Öí©iŽ“NC7‰~j[Ì‘7„ÐI×õråGE'
+K-áë¬ßÍ“A¬‡mL~}yQ5A²De”ëaϤ >…BB­˜1êòw~bì€0ïûþnÞ¢kË´´·›Ýzμžm#ÖpU@ž ò¦Øwˆ¬™
+æ¨Õàl#øŒn
+jÅ5«F }°
+Óö—Gn¾ U®5“òʤ9mœø†¥E€üÿÁ"B`Ê „QП²®³®uUöáFýârÂ~6ËÒ€Ùü‚få#›“ÐG­Ó>\èê)ì«žk<ÒžÑ">âY‘ÒºHìyöÚ¼›;“i7Ç)†Àrê‘ÂhaßYÀ·¥àÆ`Ý\ï"7»ç¼†Dƒ¬*6Ëù,å{a>¸ñ» ïQôGk2܃fÆá°¶ÓÍ(-FÇ¡
+:CmK¢Oç4 Á¬ªðŒy"Ãá±ØëÅŒ`«çZfÐErQŽ4 ó>.%Õ²©ïD£‰ÈN&[¬“ ô»ÑÃI5u«À<q´|Ù¯£XÄä#õ»-W§J¯ÿè~º¯Ýë&tÀ³•|S?Íq ?°¸Åstc
+¤®Ú2Ù@B:žØ/Ÿƒ»ì}ƒ
+”ø×f d&Ë£A"îÈœºéßs6]-ŵøÜ¡cµüfÍS½v.˜ä
+Œù›vs  zd›'qø/[î–&ÿ‹s4Wʉ
+x¢®‹žÈà f)µÊ5£Nð¡´³ŽE*Vž±{!5…MŠh¨[Na<Zõ2ðÁ.»È’Uq/t¥šìÛ´E„š¶%Õý]ðxôÝÕOÉI|{µü
+{Ô® ®‘Àc{œaüÔg ¦Ãk>ž\‹w˜œ¨öE‡’¡T}á³þ‡®rít¯Tᨠc‚~²Ä¹TÙŒEÞ(¡¶š9 CÂðQS>¿ƒá½Ø<’±Á^´xr
+7ãGÆyQ-zG¢IÒÍîrËSñ‹÷xí¥-õ¬¼äÆóÖǃ4÷ÓžVf¹¹•í”¶¦\â ßu¦ÐP×'µ§Ëþ£  ‰ÏÖ‚;unBf_ýØ_¼zѼãçýx-làO÷¯JâÞŒQN|K²ñ# 3ªý%±ç î}µÈu?ÈjZ’’vøî$`®ziÎ
+¶›W=w7[ ›Íù_z<óÍl~]n=å´ßôZïAró÷‰ lô#s±%Ñȸ’¢®×56v l‹2XϹõõ°uuî̾қyÚµ7s„”³p‹mj¼¯V–Û¼lkx32â(VרuÕc¥Õ„è È„Â1Y|T¼” 
+ÏùÎÙKÁ[9`Ý;¥óa5·ìM­Æ&ÊãÐ(„ów¸q'<kõۆ ÍÑêIà—¿#wnÒ¿üò\wì—œîJ[þ]²+ÆõðU9M‹Íʦç†PÞx‰]?°ðÞc®A´ÞíhÆl «þÊ:2®T!’›€Ò«çvR˜ixŸÍ©¶ó4åû
+c‚#•à¹7rIv¾UƉ¬ÐÆž+^Kîcöµ±«8˜ß\=e ö„Ãÿ9«8OHþêÌ41ñJm¡bæÌó„ƒò`$‘ÿ“OA’ט·Æé±£¬ì›nŠ–3ps…ݧØz"$yGL¶ Ö("-·}¦wµ±ÚbÓÝeÓß“cG ±h•É“ÿN¬Ô÷rH]»È
+ÝÙÒ7—’ìw¢sÛoL¯Ÿ†Q2o•jƈÑÞø‚Ð÷8¼cÆ¡#ð›éǵêdxNXõt€Ã·Ñ/r÷+¯žD[|µ q$œ[ÎU„¯"Kh‚aÊÜïu½¶N™N $à Ÿ‚½³y‡ñ#Ѳ9†f‘2Œ3£,kiüä¾|§?S“R ï‡á½e2J"à±$ÙmpŸ¶JgÝÕ_Òž¥;B¥QU‰…¶õ­†_Ð?¼Ê›väè‚vó,ÒBºw¦âIœ‡ g4{š3ÉÅž:gŠícºžU³µ4˜ŸÒ|ðÝQ䎹6äœ(¶¶E¹ÕöÛ–w-*¯õg‡•>OK°¿f¨#ͳ¬Ï«=äYç=*úJÒÏkÓbwr˜qÏ G)óÐÙYºç^VÙå‰Èyɉjm|XòN3Œ6jn‡ÕUŠ‹TË Ý×bšaj–—¤y¿qù€G†.ÝaEÅ}Q¸4"\Å{G´šƒÀÄ@òK©ù È™EñH£Ç¼Ã3÷l:ÿ¦ÂS-Í°|§m’*†äu§ç~°M“h&®¢.EÌ{Nª*øUûæÜi»[}kWïE A€ûÞõß/@ÉöjjDN#þöã˜ëì6V:’=¾„»~âdSåºÞ8ˆx?Ц|ö ð±ã] •¼ ?'–@³á›ç«Ó“JÎ(BgIâçôÑ6xÕ6üÂQWißûÄçà¨{›qV"žÚëÏ[…‡¤ö7Ww9Îdy™ÛbèýmE_Ñ/™*ÅSwºöï>À„?®…[Û”Òß(Ëå›P«-÷ã;›Ù) ¯jwd±dW
+KTÏú4·Ü¤ßèáEĸd#_
+§Ž^ç> Ôº]¡ˆx ¥¿9¼JÞX.òX<¦%í/rr0Œ¼²Èoøðê‹?qËC³²pCÙÍ)F…Ý5m7êq4úº[Ç~óÃ"ÞÍ|°@ê,꽕’-šº¢›}õ9ö¬DéLÆCû¢¬Pð”MmD³îþr±‡´€"ìpaµcL* '{œ{ݸ
+&Ü ž’z`¶­6¿Q°™É)>ã5«Û;(òø êÁWRîšuz½\,pÖ‘¡³Ú¤Cñr†;Ò· # 5V˜dé5‘”Ž©]åï~™
+ÃU¼=û\òžN°™OÏŸƒAÞ”Ä$7ÕÕhv1î*™ÇÃí.>£H½ù·_8 ECäCb-]UsâȤ†T²[=pTÈ®~S·àþп µï•–ŒÇ‰Ú;Zí3y´"³=@¥?Že~iøðo5Œðµì¾Êæ‡ sܽÂyD1éù.©iìr;к|2³D¬g&çdú#‚H,‚”´®±Egœš‘Ý&ø=•i2ÒŽÀ¾•ýü»Ìûô0fAÔXàËk-¹¬áüéøc f¥Ð¬º4³ê œ"N´ï'ë+=x=êWŸÇ¦XX¹˜2†'óNµyÇrÊìR¹6Úo­o&0:Èð×g£ùì_OYxøŽ^è+
+è ûÒò>i5Ð{É VŽ4>*w»øT½·"Kó-¢Ûšt%yéÇKÂg¡DNYó|Ê$Nÿ#3T, µvê¬_Â4þ•­n³œ‹ßhrþ߆Y³YOÿ.kÿ ¾• èXšñ ·mÝú·dßNmÁÄká< ¬
+8Ðþ'3œÙ§GÌo¬Þp·¤!®DôõÝz•Áæ 5ìÍ#  MŸ¡(°œg•*ltÂã¥âÿtàƒP»ðÀùÅÊÀĽ8â R?Fê€=h·|i!Ò1¢àpŒup[²$œ¿ªK2‘^=×þÅ>h gŠì9ÂX`D!ëmÒr\ú{Ñ*I“ÍRܘs? )^^/Å4àÓ;
+ÿ~žû¾[ÝåeZÇ≆9^ au½ò:®f#+ÿUVÌ`È„…u…ô©œM‚ÎË
+1}©º1d냩CJ æ†wV†~èäÍø`ÆX7J;8*bg4qi›ØA>a—©|-Io§F±Ÿ4W”+ž
+5wè 6¨v!,Yfvþ¢cSõ:Ç dN~à )ú=õÃþ‹À´#Ç*°j™õòz?¶AN†Ú¨Ù6&«òès¸4ëH"m1™ëF‹*©2¦d>w+»¾á8ïñˆé±uàìÃÿ‚ÿP•3I§çøAÏæËòZSÐ#ÊD®¼I®Ò/Àtü%4›Žÿ³_‰{é²ÂûþÂE•Mfxø:ŠÅ¹R­aèëvteu›c
+5\‹Ý¢8‡:“kb1W}/ß­eK-áMµ'¥+"ƒiDysÆG»yÚç…'z†Q¦·"ùˆ®îV4 ,$8O3êšR,û6‚¨jûÙùVBâ^’ø‡YzQž´ {öñ„ßférDs¸1#(< oˆS»‹ò™6Ôè?¼ÏÝ‚|€ôÈ•w3§Ê{DXØá…ÐS˜9ä«{ŸŽ<ÓcHHtË€ºÛÕ›;½Ó$´k¤§s bÀQw{îÿâÝ}QG$* ëlfŠ‘ÍuÚŽÙyÁi_a‚ÂÒõ¤«òÙnŸ‡´qúÒŽÐý˜ÛÀiÌhÀDS†RQÁEgO
+4õ[9/>Óm " &“BüÖZÅî>™P ¢Nš"fà÷>sPm´œÅÂj¯ØQ!Ô…&nz`‚W¢Îñ±¶@Å\ä2ÏG óÔ¤=ÑÐ?Áf;ø¸sD?d_gû3,Ab& •æ{Ø8?—lïj3/=e\±=gV¢Ðl%"²­ðŸÿ(ñYH7TìŠ7Àu²Ã" V<†5ÍR´¿Œ´ËJ ì‚+̈»4£­{gS))2Šý@gʘ–˜Yí0Z~W©˜þÉœªû&ðÞ¼ä‘t¿‰0NWVì)Ú»:*ŸûfµûMÆYâ5p;^Ôò.SÔ!³sjWFE–ö«¹8âÎ÷ôŠƒIÉë¿šE,¡×"ðm[ΠÙ2à9
+jNÈovïSÙïÎ2êKß>™apndEý'. À“dyøÈÔ$Û?-†¬ì”ZÎ’/Ðâ¨lCñ© ˆ7V8Í^ÏreeÍþÉ—üñÓzéU(‰ o1*ÄoÜŽŠ×KyÅÃßì È9í·ªSò
+š”Ô5‘ –™LûµPódEz™ìÿ:~¢œWÒ¦ïF#×h\4§RŸŒÊß“4®ûu3„ÒøÔœ+€ìÁBo—fryç<à'EÐû%g«3=6lfζԛF­u1LX€
+|3)Bm3Z‚°ŠaYÌòQd¶Uä·Y
+#~˜o<šŸB¯u•0ïøbÛÔ} Ô¦¾õþ·®;IíÎéMÿò)¹ÉâD}i|¦çy”ó€Ó6À‚YÌ Ô0* Oó*òo©6¦Y#ùÜ®Bh
+ÿP$†W™Ø¨“ŒëPOvùá7„ƒÐ×ÀôvPy‰ØxßÑVU)†¯»$é‹^Dñ¬¸²váuºÙªžiiÚÆ„í=¼BÇ „-ᭆоE¹”Z¶–ér½þ®.òíAöÀ/\zÈóÀ1Î’m2阪ݲ¹V¦Ö«MïÑ[*ü~A&¼SÃ=ä‘·.•õ[Ü)G´rŠV®úÃ]eè
+·H­n­þ¶f´ZŽ0ˆXñ¢ËÜ€X^”šˆ¥Ãýs5MJ³•<òe¢2\¾_ò’è>MµÞÆ´ˆì1L|³®\Ù!ºåº'!<™†ÁÆ6?Â÷WP£Ö,ÄOàkoø“Ö"Õ]
+qàRË:°¯Ù:w¦o»ÝBsëTdg ó¤ßsQ0jŽaâUmÆš†;Ší*½ËYùÈ:G4ÿä1ªX[yå4ÚZ0‰°ç&ª §¢eŒ`î8åÉô:‚–Æ»¼¢=°¾nGåTFe>`©„¦kýa%ð6fäY-GNœ}ë–gp'0"Ç·û¼¼œñ7~–Ób¬ÜlÊðoÉÃĶRã=Ú‘‚V–#ÐyÇh´¢NÁÌ×È9h"3Dw `nˆšX¾`gãc7[àï4ºã"w9ËE\þ9愇*(÷YÓsEbÙt+ ¸ñù+î ˜O³‹?j‰9…ëf?èƒ7§pjþhùíÊIŠÊJ¡Ü©bôêy¥Ycó„ëëb²N­U€§‚ÒþSÆdQE>2৪£BñmÍI2HÙ_ ˜ †Øé /¨æÆíÌhÌj¶›Æ2–ÌÃAñ7É,¼ó|jà=bxå°Ág>¥â™Öý«|ÐN37(sÃ7J½ZT„™7
+Ãó$x(¨Ž”?Zò1n([C8cV"%³$®-Óÿ4{u)›± ù˜Ka¨)Y ¦%ˆ\l­~ìÉnVÇaà‚2¼Q™EÄЇd(D
+ñ²”'~ó»çLòUÙp|á0•
+Sg
+ØÌX/ýàEG&;e ë÷Õ4:Žr.èpÍ]“¹|sÑLeÜ!)ö\Ä
+¿:Í~µ
+²2'—•t9Ÿk†ú2)Aºf<ô6Gñ"œ©]–‡¡/˜%¯@•Fõ¹˜í¬<p#høÛÉø,‚·ñi†æ7M™r´È÷Âhè9p'«%m 6zÒdùå•¢öÔ3¼ødlRÎ%„ž« À5Lá+C»µŸBL¢]ú×PÜñÿæsUJئO«é†nåÎZå²`2lɈVÌ,—KEµªK ©*_QF`3#ò$¬ôWMp?÷·C NÈüQv" 
+3$L’È?Ê_·¼É}N&í3 ňTVÿûDœG
endstream
endobj
-618 0 obj
+869 0 obj
<<
/Type /FontDescriptor
-/FontName /POEXVF+LMRoman12-Bold
+/FontName /LQAAZY+LMRoman12-Bold
/Flags 4
/FontBBox [-476 -289 1577 1137]
/Ascent 684
@@ -3896,225 +5421,124 @@ endobj
/ItalicAngle 0
/StemV 109
/XHeight 444
-/CharSet (/A/C/D/G/I/J/M/O/P/R/S/T/V/a/b/c/colon/comma/d/e/eight/f/ff/fi/five/four/g/h/hyphen/i/k/l/m/n/nine/o/one/p/period/quoteright/r/s/semicolon/seven/six/t/three/two/u/v/w/x/y)
-/FontFile 617 0 R
->>
-endobj
-619 0 obj
-<<
-/Length1 1705
-/Length2 21472
-/Length3 0
-/Length 22554
-/Filter /FlateDecode
->>
-stream
-xÚ´ºsp¤Ýº>œLœI2±Ñ±mÛœØîضmcâLlÛšd¢‰mÛÖ—y÷9¿sö®óïW]ý<}û^׺îUÕU‹”PA‰VÐØÖ(fkãDËHÇÀ‘U´µ6°á¤²µ20Ñ10°À’’
-;
-
-2
-¹n
-±]/_E—Ì2ûÕ&müÛ4±^ßb¯é!?Ó­TøÃÀÎ@º!Ž÷g8z…ŽƒWºÒ]±zxç.Ò`Þúª//+Lœé&¾|!ns3ˆ?<Å%¯SITD¶wœ·çÂD!ŠˆàÖG.Õ…xʇ%À½G­ÁÙ#Ô9aH"ëFC?©ü!ϯ0€—¬X²¬)NÎœ^=2ÝÍ%Uç‘• ø9Qóp!K¬Àæi^¸jø$è'eW|Mwú+~* zcÓÞN(_|%úÀR´Ø„¯W—³Fùµ1¢´Ä/šµ…,D¯ØÔ?ÚR$ðlg”Œ’ªðxAtÊ8·J8T2x²3iÈDAÏÏ@‘µˆ}ÃþÛ›Ïa$U]×âöð ÂA$©H„(öc¡ÒÉ-ÂËá7;ô/˜6ù,Uâ@šb=‡èX¿ò¬‰ ПvTo1ú¸µïKʧlâk*°´iXI\éC°¡þ/€åûï3kãëïTB¡,*ž“þ¤Z7«ªgZø¿esd¶O&WX¿hQs•çxÅ ›7{ ™’õ€‡Ds§ÈmÑÇ}´ Ãxë†ßP&ê‚È«î¿z) ÍÇi²®ÅóØ°|kµWR;Ì¿¨¾´LÉôãxE,–gݬÿ6¾‹»?Ö}¿£>9ŠRYIñHåÐØŽHÓ§”õææÛçÙ­sÞOŽÚã¾(¿ ¹ÛûgÁdTIÑ;}xt?ó
-¡)åÝÛ…#,:°×ñ-§õÖöÌò,Z>
-Ö¿eM%¥¼é¦5‡÷qâêhŠ±þçÂRìœß Ñ,­ÿ£cÏùÐÍÇ­GéjÍE68a G3õ‚®'KèÍyB S…‡vj\QORøȣ߭Û6eãCvþ›rª™Ã]†Qw(þý÷›Þb7ä"¼ÇH¿¼„w•Ò¯Ü$ìݸU ӳŅú6ƒ¢Tæ[““{wp×™e§­<¾ôèbåäv”?䪜ÐÛ¼éñ†R©”¦š ÝÉ|å-ŒÅ*F^´Wœ#UÎ#Lå©'=°[ùdpYRZ@ÎrFtð_jlO]þÎ,"gö3¬úƒç£º °ºÝ­Ä
-y÷#É—¹c¦b°žÍ Õ¾`‹x™ Åh›ñ®tG¢’ÅÀ8çÑs*òˆ<w3äíÕ`š$Ýûè;c·q¼üWm…:yRï/»Î’Kä«nnfr¾Ï^6%ò"›»â¯<NJ¤!|8x÷q”ÇhV5ñÊ} »÷äþVïó†S™„2þr·CôÏæ©PíÁiºVEÉŒd™Ó×n襇ævüIÇ¿Àqj‚MVq¾Ú$rl©dì=pà,RYÙ÷™
-$›÷ˆ.…ËKT¹^}·ÚÉ'd“—„úØÇûæ_ªë÷B­ÌEñ&nj@ü‰fX¿€V¯ñ©5÷‘·ï•Ú¿@ _ÌVæ1cnM:œd›ýÇ°ßsÙc'se 8˜Û…@})W.Þ£©þ³6°[~V·ŸçÌTÊÓkw*bK0žè C¯Æ2ÝL«dMXc:úèÊï‡ÛKãÚzý™&|1ŠÂ>S¶<4 ÈËwu ¬ì7G­\±peE’4h« üÐRa•ú•¢äu93á ÷zþöYaä“RH¾\ré—‡ ¶©ÜD$%ødÌXI„Á/q1ÁüýòeÈ2#¦h¾¯¥×sÝ xRìž¾_¥³ëN±`Ž‰n+ߟ§8HGËK¥klŠ¾o²Y%´*y?Ü8ÆQË¡ø¨u¬%¡ÍÛ¶ko l#ê׶Hxy ¼e¦Òiþ®Ø¼Ödø9ÒY+'|מ“ß$«Ä¡v˜dÅ n½lNˆæ~c5ÖR‚“DE(L OL;Q¾23°¡”U*hÿvÓÝ#lœã è/×bfEº‚µqF4†’RìåxYÀ9bÄ”¸ª1¥vO¯¦'a‡@Äõ…çèk¢ /w„ ™%»½¤îúå–zÙ k±"¦þ %‹™¯ÕyƒY‡¦?G£aFg“þa¢uaw`†\3d1£°¡ð0RþÈ郳ÚQð±, 5ÎÓφºqË«‚¢Å79¶×æaKëo›Á Ô‡:‚h÷´è kÒŽ~Éw§5Õit:ìO*ýVNñ`Mb ø}‚ï& ; D—ξÓ~‘ ¸ÑôÓéÙSù])_b:é™Áhð5>bt¿·áN03wôDßàUãôð#d2¦vä ’©-0\dÓÆ7ŸªíA×Äa/'Bv>Ut™²Ïz[!69)…
-Ÿ¢~íH¤¥ÿÌð{n²°¬mQÄ[X#d©ÉàÂß]îŽZ{þ­ÿëÓPû ÷x²‡&¯t¨þ-1ôP©ißÃT×ö*ñqÙ’²2ç9Öræê·Ñ 'è© ’I—
-³ÿºr¿¦ãI‹hoUj¤ùNâ”›¸D Ù
-c ýg<?ùM¸åº¶åG+)†CLËH²Ö*¢/+MùzÇS>}Ž4BÜÏG¦`ž`{¤É Œ„¸z<µÀu= Ø;Q­]¤›ÉZvìÒФKçø9jºC_æWPí£
-¤a¸ RilâNìn»yö+>¾ûºVJù"ÎG!ù–í?Î;%èYnô,èû‡Ù‘a2¼¥¿/#vÊvK§\8ù´é%éBL-!¶>½îKìâ¿jæãÕìT@à›(Ÿ\Ý·kÜÖÊ,ɘSåØœQ@Ês¿sÑmZ7…¯ìd9¶EeÂðßXDm0ÜÓÞ|ñòæ۽6ÄX•k¹¶ìº Aöìlä%Ý’(uWí‚MÕÔ‹ž{Ex­s`Q“ÞGƒ0óìoT½¿åàwMI)5_Wï)zìfÏ4f£àbŸUÞg” Øñä_ò'=¢df\ûÞßiÀvÉF@ÖÉ(úK;Ð}å1·¤$Á®b¥Ý¿|b-™ Ìú7M¥F'"uÙ{u° ŽD ¯ƒ4$3M2B…f5ƒ´ä»òüMw3Ú€îË–¶i"kÝ›%:˜È”Þüņ9éQ8#ØüxµÌ3àjÊÂÍÞÀnðØ»ÙyÃ4rÁ£UÎ"(! ³ÜL*¡ӻͩ‰ì‘Ø<ÝŸ=-»éü™
-skýŸŠO£«ÒßΣ=`
-ÑŽ…ÚÎ]tsõ½]M62»òƒ3)Ôºëp½vÞχ)—U¬„Æ”T¾eyC$ £{llr§}ÿ´tò¼ß¤¯¨qGw#j,•K6”fYüíŒw2'ÉüpèKW·Næß~FxT¡Aë³#ú‚"ñ…O2dÈ S™²+°XS$\‰–öfImYšoò
-C4ogp%›Ñ·0>Š„’
-i&µ+òF¢†}‚Ào‘Uë7ˆú{¶€°H4Žæ> Š›Çý>öCúfÔ²óö&­öM“PzB®¸tñ£Š%a<qå6ùã|¡°8êémH”Q°¤66 uûd×<¸å±:qîcn¥êìŽ"‘MD6W­ûH\¸Œ °Òˆ2>š=Êfëo¿ÈY[Šú)A:­Qø÷@XVÂü:IŠ@.ʦê
-=k ;;”“Ûõ6vòštéÅ£†Òµ0ä‘“ÒÀ¬¶v©>„f]Ÿ[l© x%_âg«Æ?Ñù}êí©«ê·Èêq_ _}eëš($N ØÄH“^9¨OÜ
-•O2%0Þ;:ô’Ü¡AÁ£›?•/Rž·Ò·Ä¡V¯¬œâÍN9Ì Û4—{ž—c¹ÜxžÒl
-60D03v”b?®ÅJ7ù¶ ÙàZK’
-ŠaqW,E*X©‹X®«Çœ<‘§ól<ä×°bŠ ö^U¡3I¶µ¤ÑpÄyÎ’ ™u/±gJˆÛ(ǃ,²W?Áw |iê¤ì­Y—î ãñný8‰ãˆû.Rç3o[5¾Õ]¬ Hù° ËÅI^F¹6Éi ä±¯–0ÅÒ¬”¯bªC«Çà» d­nh÷>Ê—f ý´ž ãya#2Ö`½Ž¾j÷ÕUô~ÈÑ
-H£<ÂçHÚFm;v£ùzM ¶ü2ûú +J±LÐiàËÖÍŒKh7•ßû¶Æ*Ì×ùã€>‡jÜõîyÃÚ1û
-ÎÛt°?±–òê¦ÊÓ´‡‘ßwŽ›«»5
-f‚ì”ÿèæÒ
-ÂéŸ+¨sïHyŸa4á0!«Sà•-áÊ‚µåRÿ©éH›Ž§¤¯o_CñŒGv™`õÞ8€€­?Äÿù±þÖº¶vJº#¦#̦Ñdá±Ù¿÷D8A…¼Zç-Ò’.Uæ¨Zª(
- š?`¥.ןÌX}÷šBôédš®÷ñ-À… _6%±4É
-Ÿ'|]•á–M5¥vl¡ìûX\οÅ@½„Ç ‹­õû)nBkˆ JÓìHì°FâÕ»¬;JzpKeŸüDݽ$-B£˜™þðïðÿU»+HÀ-®S®•Ä´jOú€õ!YÈš þ’IÙDN†Ò«X3óŠA«Ô¨ªf`aóS¦¼ú'—{îÝ^4êäÓüW΢í­
-=¹ó'|_P£öwÊÞĶ‘©×@Hþß{­ú³¯:Ít€wØûTú¬$ÉÀÚÚBL[$ ²Â?•°j¥I<BÃ#Ràï£à`ëËÀâë@Îë‰TP‹-~É° óÒj1*ü6ê`ý£¸ŒËÛt`k±8Bò]è@¦ï#TiáiõÎ4äõ¼b%ðŠ÷k2 ÷Å'Wf8˜èò£ºªÛF„§WRµF™õF L<%9ÕI Ë܆”%gÁ™ró^+Dù§CoÿôÀm‚²2­„…˜¹vàË Š»qr^u¸÷¯,Ý­¤ÓpÆ°”ˆ 1ƒxË@:Ò ÉR}
-Ã|¹›
-—A½ü
-Ñ4sì`ªTã 9'9ÂÂ.4jZ\ èI^Š^æÞBñm¢”S¯öH9PV®_¡‡éà•}…†BÀJ`êóƒGëa$)·š‚½`çà -Ü5¬ô°§øê³-ºòpŠ=1yß' g%ÆJòú’-ˆUØÉÌdGøboθÄFLÆ{˜å§\šM Qß_ŠN`öÊ1:¿õõ¥ÿ”ŒÄêBæŽD©oõK®&rˆVçäÈ:§~>µÇ¸VÖµüÙŽ¤/²`
-ÏËËøºwqÅ…sŒ$EÙ³Ê<6±/³ZÑoˆ`pZo9'é„)÷\ý‚^
-þvßù†cп­Ï´h¨òÇÏvŠðÓÓJÉŠ¶•¨)Ÿmd÷Pœzâ6k:4ûqN÷'›¬ÙçÊxd^2•ÔÙ¡ÕÉøPz+Á‰Pë]óx ?ìÍ!µve<¤Ý(h„»;YRmUW*±¡¨¦á‰2~Òkšy:-÷N„·¢ úh«”]05¼+_¶r_nôö™º‡Åx¨Á§èZ"í3ÝNgáFd…KoÍ#¿xõžg·Â°OÉå³{½I$îX"УԒ’¢wžµñÎK]É¥8aïvò" ¶[±±Ë5«Ë³Sÿ€N…¾5HÇvg”ëÁNn5Ði7 Ù
-bö}™Ù¤B#)¡ŠÖ¯¨¸o°¢–¾F¹øa;-
-dà[\ô¼¤y— èÆZ!Ñ+‘+×w‰ ·:H}Ž2xC ü…T•¨íDé®åÊonÙm,cú9…0Ca–íýì$lPäwÞb,O6½Oò=4îõGÇUpw¹Ì3€°ŽÞ§¼¯Á"¿qxüù—+§7UI#ò“ýxô¡¾Å„ú¢>}7‹Ÿe×üƒgtx*Öò%3Ú¾äÅ,fOvRÉ8Ø'¾mØ6}é&NŽ…ö÷ópWù7žSO¤¨\¨‘£\QÕöÍb<˜ÉG:&W¡`›’1çС¡!¤°/K(»^
-OaÚø›¢d P=ÞNÌ ¦u/Gu¦F¹§È[díMaßhïîÛ#µкª.¯¼U2üo¦ÈsÞ1ð5ëú@tÖˆ¶ òn«dI)GZóFîà­[ú#>ʵ»:œMs™ÌV*&ðÚ Ò¯5wÑnõÝ@QŸ67ÃëÛø¶©ÔÄ—òÓ(
-¬,@ôÇìÈn¨¸Ú…zàÍ
-g7«‡%¶óYÙûõÈŒ±huŸˆ/:ÌÐäÜt¿àÇå8/ü€ó‰ £~[‡‰6Û·Û§cëTjüµÇ@)¬@ȇˋQ:½‘¢™KaZU#¯SÙÛ"õ½h%/£Ÿà*ãO=¹Gðz$Ž­ME§hT^ú\€v㊡¤qI?•ÆáJ˜lN­dL{f‘_IÜ‘faãìs$XDrIjÕ ­S»©øKæ\ó†’3Ë4jj§ŽT)—…‡TÐðbYæö1ȇNÁi§H$dò<‹+©î=®l€Ý¶Ž‘‡5š£s¦Ö‹pµ¸š“ÒGR•ÑæÜsb§äÁÛ0XŸŠTÔ; 5•ò«]ÊÑÑRP¡›gâ7ÁáXN
-¿‹€[¾ð®lA¦ínß=«{¾Š°Ã†ÛÕýïJí:é (? ‹óà3šNIÞ<e7 ­OœkÅdówvž%Ñ;4Yi…Ø 3†xç+FÃi•ñL>Z"óÏåfI¬rÑÔßÅyõż½zªîh̾F]¹¸£Í¨]Ðü": D!¿â÷g®œðÂÒº©ñȯý` }t‹ÆôR¤ #l‰»B‹“tß6Ûñ›0@°ÎÂr¨n&“óañ„ŠÆAÖâ ¹;ç/›uW*"‚ehÄLè䈺¯\ˆ,j@ímè"¬¹²á{ÐáNa•§…µ¢ 6:»4¨P¸‘)–|ñ÷‹ÞË|ˆ Cê = %_šäxì7’@…ù7ácOŒƒp$¦ Ù7¨úR$¤å¸ß§á`}#s•VØ[ôQ×GQÏ®®Âf™w³­Íû1g·ÚŒc8Y
-Ítiàd˜^+Êûr$[‰Óu¦ã6‹Ã ›P›å_õ{Ínx öpùñ¹Ï@ê”JÄÖꤸoû×w.|ì~ËqÎ6š—gb$ÉÑóõé\ö SðŒ]ן2ª…s£pL\^8Ïd{ùªGaF{·êˆ†õœÍÍ‘¯†& NŠ†Aœÿš»¶¥_>½kyx;°¡M¼‹×?¹×KÝTRaNš:àk(ž»{!¡S_×–7fÙaÓ‰Ý(]r–jÿŽÃY>U(€œ1ÝæOÖ:ÿÈGª» È% ³Y)Æ×ÓCß9ÄËäSi^çXb³ç׎kUý#ËTÁ:\èöáê²Ú H‚7ã¹#ŸET±ºÿóþI¨àŒ €€3õ“TZ~€ñúb? lF0«hÕÜƤƒØÊOŽió³‚y EÓåHK¼¥£/‡dd_FÝ9šuo9[·)œßæF–Ö:&ò+®dÅ·ÂQCaäšæ( `D˜c
-÷Õ½q„½ ³éLü_©ÛÔ?ÐW Q¿7$X
-'æ^aƒÆiŒ‰-âÁ©‚5…ûa¼É÷PPqâKÅ7óúº¼z~ã¢{Ýuo К¢ËM³ìòªgöZé!ðaoqïcRŒ1:ÿÄéYÞ{ óàÇ·ßýŽ`µŽR¥‡|åy†ŸG=A,ï Ó%îlñŽ¯)Oæã^ŽLX<äAbø˧ç ¡I9†òŽÁÉq8Lȉ–n$òj÷Lf#zÙ5ýƒ*¢ZÐÓ Km¡æÛ¤‰•æ[êÂÃòÉ# •YóUÒ$;.6T©ªa1µ<ÆÈW‚Ô[Ct3‚Vq*dáÑPE^’„“žG=MÅqï;ÁEŒ+Ú÷juŒÄÞ)·©Ò~ÿ¼ä°6J‘n³éûV&ì%Ôc¹€:š5ê†4?32»º0qŽkñ
- ëíöLºà'àyS&œªˆÏ§\Åa¬L‰u}•©¶£si“}•" zÙÝŒ:S¡o])§~ñÚvÙÕô›'—p€‘‘„ã±øM­M9¶Ü˪–’ç€`0,Lð¦Dl®2ÖãÏ Ÿa1Ò<äHõ™Bú°Ú/:“±R]qÑCÛ£
-%€añtÞoZ-(y
-MÈ“cƒv•:%¦ëêa…“ d_TbÎ;“-Z¨Ú$ÙŽ²ÝåýšÿëÎCJ¡øù/¬˜²»ªHp\†]ýöcB×q'±ßXžX_áçSzžÉ[ÌÁÅ=ˆ†„Ï¡ß°˜óHrܶbÖˆÒ÷=Ÿ.¬~¥(s* ÕçqO‰t>—uññÿ FgUFÀNÁIXuH>FËDª=Oõ
-«"ƒÅ#
- —´gÃ&ÏQ:¼¢»ðÁ@2pjKTKÈ·¨òe&¬£È»jêˆeáJw;Y<ÛΞ‚bkLÍä"ƒŸ<lÀ-^&þ¡oÀ?.I]"n–'%3òää±fÅTJÿ¶ˆÆ¶Òµ]9f“§‘ê
-gÛ#x0hôýŠèØOt(ÕØùËø“Õêd U$#§N¦{ü #0.ä)Q±hÚ”vgÙИìkëNñ„f
-ïs‡ôúNÓ«æÅúLÚÏ+BNºœå £çYÜ|·6ëcùÎô]Ã1PgÕÆ e!Ò¨ܪò˜áe×Èäg~_°‰Ì1ù8{‚Õ‘¬õ?ø |‡×ÜÝï†Ç.÷sÝÆÙ90ýmù
-Ëò³i̳;¶K¿éAgÌ}[ -/òQèÍÍþìkhÉ Ã ‹›“«–--@û× õ£#†°èï ÒÛxvl…`­yžLò1D÷ê˵R²;+¬J>ÿÀ³ƒ3\$ªPUAk®õ×Ê
-&f'mU×Z¨ÖSK¾WkÎ(„Í8½)2ÊÎ\'+4'œÛçC„ÞeôJä°ÇJ@’mObûî(…ØdR¢c‰Í€€}>â6|'á°ö˜•ˆ½.R°±uŽK[ár9ËuÞ¸ºa¢¬›ËQs6ŽŒáð"ÔÉúK³\ZR7¯Dó32~3GX
-%þí+Ñ8CËv$_u´Í‡Öå0GÇ°œ ¶ÞÇÁé2.>Ëq£Î5§±»RÊ‚ßÒi0àÔGugÇlVR—  »¤³Ûå»E²âd¦iÖ–]øïî Ûw#xÌû7a[½¿3rÀ Yåf«ƒR¬ç@;!¸žN†‡Úb­È­äð6{kÄ¡Ù݃<ß²¦D>ÆÜ~X3×dØ—®#oX–lQ±eS‡‹¿ééj‚w@„4´"ÔeLÓ“M¡;õúóË`MhQMëÛш`…À&ýÙ5- ¤{~&vdÀàÜÛý¾…sÕ†RGŸ²åTøòXJîLEVù£vÙêág '3t¿÷¤Û|Ê.Œ÷W‰,i¹w‘Žv¹ª¹Zf•Íü0Èi ™*ÆPl'M ÜB´‘ùŒŸ&4—œœ¿ÍÕ¨¾‹Ý"¨þ)+ÈJnÓJ
-Ûö2qÒù4bÑ4\–oϳËÕ1>Òe­ë*Ãl–nJ”Y]6¾;‰vé0…16š¾áŸ[ä•FúQÂ.ø÷Ó·c­)³n(Oçfcα\ ‚¦ŠŠ):g\¥S¹Nñ—Ñ}IŠ„bÐ\_Ëß
-,¯Ç»ä+Í2“LŠ× ?¼±Àù·}äáëâeNŸ|2sÑ%(ÎDâyèD <&\úr“Þ»^$/£C3Ó»8²fªX×w§ÄxÛG#쉡“µ
-Gäç‘p_Õ3˜Mªµ¡m£!•–%Íãd±F$IQϨ2[ )¸ö¬ÿãî0ŸD¬fÂRs´ŒAMƒž'¼ÚÞyÖ:§M8Ew·ã¡NÞEv+‹x8Ö…*#Û!Ø-•ªÄ¾*.òåxM2wàã«ëÀÈŸtO¦:“‚hôO´tvö.Kï ›oÕ¾‚Z<ãe+“æžcY¨út—@ã’1 X¯ô©;¶ÜRzÚ×àû~tb¹¬TAçdHðoíçÈ×!ô4Uô‘ÑuÈ¡å¼K‚¥TƒžìÛž; µåØ»ön ‰–þ4]‹§:Ò¿àÑÏCͪá4mLñÄaŒ‰¾ëËl¢ítõ$Ë¡Ä#;¸Å³(ú·_e£¯GƒDÈŒu0zŠw ±Š‘2Éä4ÞQ{AmŒµµ)ì4‘DÞ‚ºZ"’4î2¦!Í_×Eýiΰ&+hï¶ÊVe9èÕ¥hGGˉVuyÈÂ×ã Žü÷=¤%“”Ùm¾¢•¨Š1KqÇ_'Ò%d<‹Ñº†;ß3#R‰} ·Ípb Ùü)<°¶°›ÓˆÙ,Ô‹ü+a‚dêP&jóî½jù'i ¯Ähäá
-þ›Ï¨EVT)Gq¦caôp°Y1
-íG3ªô–æ [ÏŒ q;n3À[Tdg–bñ y“„_ &Gg­Ÿ #…À0'ØÇsèSÜ7îÍŠ¦øµeQÏ;žtM„Q8Nûjçë–ÅÒ?ê°ºm¤ÿ8Øô¦C)ƒü›DmÔ¡ðXRÁ<oí
-o0|ú µÏ=Så<e ¹Ï„):"8ÕR›eЫåºæƒØ;¸ªüå>>Ë÷ ßû+}a€?î²÷ɦ‚èiíü–ÜÌffÙçªà«˜"…PËjÿOþeš~qZkWíE:7WÈD þ†Ù–ª¼†‘ƒ-xfTMòðý¯ì#U_íãúF{úì[ëÁ¯T!ør¥Ì ±*ÀEŸ¨„®˜˜Û<D–¥EãXÓª°ÁpBZ„?t(®ï¶‰>$@» WÃñN(`~ˆA¦¯´Bu,¯_3{dNMÚŸ±#wwV8~%.îÜ»f¨.ïøC+å}Öá/-
-óŠv{Ѿ YãIH–­¸I»¾M(3ÿòW çq|ÌÏa/ªgbñyD¹-Zsc½€/¾gÓbõÛÐPPf–
-çÑ8xÃ× ö°@fÿëo>qE,Œ»Ü?¨çDN½_”Ö‘‹Ú­î!îdY ¬$sÓ@×b!`á' tÚH™F.{c˜W/z‰°2xWäé‡Öö½³ÇŸD;L+¿ÊeAP«8>ÇçÇ!^—¾ï¢¥ÃÚÔÁá)FÜ¿œ¢—Üí0B)ë†Le—›Bžz9EF-êÍÏ0¶RÈ»L=RDÑ&oÛŠj¾ô¥»Á·åýXç¹øí–Ð~?6Kuh‘OTqáÿHù«#¥™WT¸N#Íï„
-õ²Ý5}(Ç»b1) AØUaâí…†cº4cÑÁ×Ö€uš¨4“çˆßÔ+X¿u¥nHö‡1ï‘€
-êÕ‰}U:i_<d[ÏêN~@ WÖŸxçl=>w„v&ǺpPÔñ¿ÀŠpÿÎFžqMŽš2w†>Ê™Á$ñ|ç­ˆ‡QQÉ:{U²MHnCU>ŒØ,…ûÿÙ&éw¿-…EÄnåËþÒcúLÕ¹RÚHšsgˆ¸™Ÿîˆš¦iuþS×m‹ñŠÚ ¼aŠ“|AYÉE:ŒK ¿Îc3Wpš‘§ tí3fé÷{‹÷KªB'*ÏEXeÊRlÐï"½>="¥?I6ð®àä 0¿ˆ–ÎLx8ðn|*££ùžž˜H™Nîe.<ãŽHÌM:²³çï´QŽ_Zº)”1
-Œk J^
-K¤bswÄkœ¢<îRƒèÌÉÈáwX”ð(tàF‚Ï„¨'©„7-]%iü¨ê™\!¦) ÓˆawÓÏÂScÄmË’ü¢>G p«›î‹Ú¨ƒ';gZþ0 HÆGs‘ku?„ý ïÀÏa¯ã—Œ‰>Jr*)
-vU#jZIö”?·Ù…“Lè•ÿ™Nž´íΰ^%‰°«ÉIø¦²!ú´øŽÔ'‹ê̽3ö©ÃaÍQµÝ´Ÿ[Ù™ÙA|Ãèد=€º{›v}¾ …;¡ZMXÞô/ß”X.Á¨í,»^áeƒ*³Ì».Ù3Ø¥ÙYVÜrL’±t>W_ùy‘‹l”íÓÃ=r0«7À.9¡º·I:ã8Sñãé,°®€P™vZå¾D Š`-qV}2ØewØ•›.›<äw˜D«‹êúú‡PR{õ¿®}l!µ}ÍlY~¸ ˜‚èùu’X…Ô¯kêCŸõ)¢z¯ØváÕëÞ³ ÷£ÌÂq2z,9;w‹v=1»Äg oþEÿ%,*I"Zö?Píw™`šèqÚäøÐ6³›g¶o¹6uY×íßmªÁ€Çú\ÎøºöñÇó6õ—Ò!„¥S·£®÷™þ¦†3(g ‚" ßpIáðE0pÔ|»yÞ¨æ
-¨# 8@©s¯ämÿ>®„Q"»3`1o–¢Ÿé<žxH`å•T`wÚ
-
-½F§(°‘,\ ³¼ÜÀSÚ·Äp =͘"ˆOëîŸÊ‹{Eû±nñ…C¯ °/)4¹~»¨¾¢këè£É8M•  ¨Ã×ì‚lÀÖöÙ íoŠâéôV(o”ƒŒ©­LSÚ ÏZO`«ü{…´¸=Œâõ¦Ü¥dÒõ¹$i¾ÔH;–­)UÝ‹5ÏB=Øó¾ÍD^xêàñRmÏm8›4È$SŽÆcEŒ”¼§Ý8eܾª-¦¸Þì5¯,>gJS³¢Áùõ-ÆdŸ¯;ÇÓð†}x¹©ÞŸ
-yHcý“ÊÒlõ“§2n+©Íòÿ€¿cgÂRšµ»úwvÛ/n‚4‹†à:q± 9ÉíÖ}vT%m žæìäjÂv³vgBfæ]ᣤà*‹áiÅб d–³\<È{©ZA…<ÓÉê‚l—KMÍ^cª¯PÖëwôMÁ?»Ù0¶`‰µ‚žÇ¬¼óŒÄ¡s©­S¡ æ‘î¼>n»ò¸ÏÑBœrâi¢¸û Ò·[wKÜa̘ÈÊáõ
-òD ˜µš­àžY`UP7ÞŒM ¹ŸnÊõî®0*_œ×tl8œ«Æ›#12cçËì¦Âçà¦ýÀÑZi¹›6Bò³ülf. p`µaÂz8±9Øh6”T Ÿ8`éÜ"e2 Ï0™zÌh
-f¬j'D¶l7®•­Ý‡‹Âø”ê@h/¨ÝO÷’€LŒ2¯]GþñÖª‘” ?Ù-1ƒ¶Fg-û-E΀¦ü¸b,y'¿¶o²`묃IY<ÛÀU¸Æ;¡Jè[LÉAbf m
-šTµµ³âËÅ ?]…••ŠGå¸Þx
-ß`K„ì³ Œ-ÅZüPû,NEÚ}]Þ~a>Þ÷×´ôêW6±ó6d0ø^ߣÍ4~ª]L°;&Ä£C
-°ã9#Œ7¼úq{—™eW£aCio‚5 d„<+¼Â_íT6qÉ$v;¯%áÚk*r_l[€
-ökD4Oö!–&ÍçÃÜOÞ¡w6ÐS[‹„‚qÊ£JÓ5Ùϼ÷2+®hýs÷Qi³*¸¶À[!u½Í;Hë¾óWgû·Ô3µƒhÓN]t+ðS¢§Í­c ÛmPl’}=>/iÂ
-N3(óPŠ¿¼8ó¯Ö„dl9R´èïèÝÙ‹UÊΤ]@F°FÒ½ Ø—+ó÷gOlßÒýä¹ë˜°ë!AÍU–c=FÑÛcçÞ;®EöìÒqEêF˜õJšöS\gÕRÝytù>­uü&±*,!Ö‡¸ýA6q#Ïîà,Ænc+8;Í;Ÿt¦²Ó=hgã(ñøNTr¸lÝog•ÆOŬá‡Wë Zï:öáXÅõßÊ"%BÎòÍR´zŒÞi®{Ö˜B±hm1ÕKÓ8ž8ÚvœS醞nôÏÐtD°ÉÉ„=¦Ý$€6­Qk”âÍP÷/±øˆ}¥Ëì£K˜
-‡¯á©øQ¿®„‹wÕ]êáZ uS·È· ûÁR¹¾v„ Óm‘DT~5ÍñF\$œ«‡ú\ǹÞQ^D/ìÂoZäÄ]`'¥¢gÿéÅ(€¸kIb]œ6þ¦"ýCÙI;Nq<Ô&ÔA¬YŠXCÑÊÖÅ¥?³½°ÙÈ EÃm€T…ÖÕÅ?½n?rf
-ºP•ã
-zešE…<$ÚäÄ8Mjl N8¢.奵ì‡g[é×AãR·®ù8Žû 8/×—)Bk.h!kÕµÿ iä•s'qnpҲ̠»œæ ÉùG;æ¥Ý,~ Ùúhë”Ùÿ¹ÃèZ¢K?½Q’Óhº…i¢!zDÝVv‚E¿ºÀÖ°\ŒW
-Kçn¬‚Ù¦‡º‘Íj|$mGô.1ˆ`Š
-g3¨R9’Ë¿mýí‹ÞNmÛ]yDÌ º×þ‰Ö¨Kª¨’¿1D<@á S]ä}ùûê—Úûw'—’ÇäÒ›¥Ò¡‡!AÞoô„P¶7šrñ‡„®÷Ò Ôò|J?ðÑJ†uì9`«ˆš°Þ–Õe;¸òäïë.;×(bŸÜý摼‹ØÅÖ² ìp1->OîCÌÿ‰¨-€byÇ–ÊÀ•g!Dˆ¸Ì²rrϘºv¨#”›yÏ}æµPe|‘¿1î}và¤þ˪´±\Çðö›Ê$Ö&-Ñ–XM'›ÓdP’ee›x¦ü*r ê¼õ\5ðmf@J Ô!ˆ’!¨&ì ¬C„¨ÏøÎÏ¥•xWA \Q1› VÐP¼h<Û>cr+¯xÞ†¤ÕÛÞ‹^S{h¦“­Ð¦ìC*Ñá判4íŠ/0ɹ£|ÖË}=ÞãPeÀ‚³ð`¶Ûu¯ <·À‰ò¤±J£zo®-š–Æ ¤J½ôl¤ ð¥ÁãÀA\Ë­ñ#µÏþÄýW°‰º.u½]]aŠšÝÞ¿‰“8j«­‚,´°×5ÔnÊÙ³‹˜gñ¸™ËxÉB'£¬jox䋨ÊÔ†øYÅ6bkpüÖÚ£hÇR†±
- Œ„yá‡Å ÃëfÕù½$v„µÖ=uÓ±kKƒëæ8õPéQDU­Žu{¥1.Q™æÍŠ§<Kˆw–>ˆ€_ï.¶_½ÖŒU­MNìœ5w% ‰ßŒtqÒ ×ï¹nèŠÄ†#,¦a.#ÒO50"R…4–þ¦ÖNÅ‚çn!§ 1šFcœ‰p€ T‰$FëÞ’Ùø´ÎÍV0ż]»0Ÿ”¸î _¬^6Œý:ÞMKï}Ž¦@ôîP°/¼z’ÔÊ£D{&t×Þ?F}γå×Óu[@È4úzþÙ–‹¢81!H+w'í/îóƒày'òïÊm¨™Èw¡÷õòÈÿ5F 7’ÿÊŠ¦ÎÍGf1Pwò'k"oŽ:ê^Ξ÷–»ù‰<ƒ9 Ÿ|â¿ àþœõ|jû%slÁÊò]™eÆ-T•m²‹SèhÓï»ÕŽïѹ N´áS„ý€›‡až#|ò!~ã¡XAõvD~š†…؇Š$émnX?¢ªßmY8ŒÞû¬3z‹2Ê·^Ü‘f JH±ÕÔ±”gB2`žñį»nDëqQ.}p†7ã¨äm~–Ä‹GÌIüƒ £Ë05=¾váXZ°JŒ®GJ{Å¢–ˆè3£@#~jsPÀP’]W4?¡˜1ýƒö³°è^fÈ‚Àª½a™šY˜šsQ,5€Ì­Fd4Vª`SMâz5”zWêz™s—J t¿êÄð®Ï {‘¸­Š)‚ðNÇUB¼Ì};ùï¶_콤»‰íúâÖ¥,1À:×!÷u¼ÛÜX}wýé .u!7¼ãƒÐgצ\RH-n,W@yIXÐÑ+_³@&À1ϱ>é‘3TAÄ4)mÞö
-˜Öõoâ=šÓˆ^,òŸÈ†k‚ñVÄ!©¹óEñÚʲôJ<‚ÐNcœŠ4…·–ÿ8•M½,!-,pŽœ–aX|Ž¦Øѱ¢˜¹K¼ ±åÞ•Nåí…¿’žÀ]*P™ÀÿH”8¾‰ÚP¿¬y™¾J)LcÉЦ©¿ªIø|OÀ§$«ŠI1ÐP
-`ωj ÷žê%EØ[zú¢.ƒ•9>̳ŒpOº"@%ëá áb;ìËŸ¸w¥³îºèåe#xªl¨O
-ѲQ>ɤͬH¦¬_ Ú–¥¼Y,`¯êÎ96—É%åë9c-"Á¼“Àr­ùÁˆÿœ;§:Š…ˆz{':`Õe«àUSѨY^“êšIi¸ònâ… ÓÇ–WÈ]àƒ¸G‹”£ñ¯]S¬HL]D2à½ú¿Ö’lÜq°Ààî°&tÄB{¥l]˜û–‚·‹ÒÆž=R[«²íè€ÃæaóÐÅsW¯ ¹C»’Çk­nŒz-€|Ði&>BKUò¡É‹ÿs%–iã®&9¾
-ÎmP¯ã—?&…søÿY-ëÍ ë7+¨‚‰’õö¾û`ôÇñšq•é’³ÀS<¢ÀBæ(I~}(w9;#ƒå_î>áØB8
-¨àKˆÉîë-¸ Mµ,éÙÚß‹‡¤lºÿ¹ÍC!—(Ÿ|2îŠ"¸¡Ñ4ÞÁìhYl)ÂlÕ]<[›R¼4òøÉ >ž£a¿¶r üê"ä·tz4w+å29ÀœÐ dþùie×Ç
-®1è0È×9g‚а­jO\7pO•c<neÖ#êXoûÛXr>÷C“ÃàvÞÎê¡üÜÂaS<!áëãÙÃævý.ÅÀé—T2²Z_nq» C¬f!GcïÒîH8U*²÷¤¤ 65ÛéÆàôº5^»ûØ…ˆK¬âGM ;=½)E•Ë*8ÇyX’O†±î cJßUIçŒ8Tk£¼³™FÝEö½ƒ‘£¾.haì»SªCTIT
-*>¤ÐD­ÀÐÑ þ|/°ìl.À¶‹Æ%âá|=uÚþþÑ\/ÈtùEꨇ{˜1v
-„ÆÅ7†¿§¥Ù%ŸGµ"2® Lç#\1ÅüPË?Â+»Ï i:Lä8
-endstream
-endobj
-620 0 obj
-<<
-/Type /FontDescriptor
-/FontName /WCAPHI+LMRoman9-Bold
-/Flags 4
-/FontBBox [-501 -299 1649 1136]
-/Ascent 700
-/CapHeight 700
-/Descent -194
-/ItalicAngle 0
-/StemV 117
-/XHeight 444
-/CharSet (/A/a/b/c/r/s/t)
-/FontFile 619 0 R
+/CharSet (/A/C/D/E/G/H/I/J/M/O/P/R/S/T/V/a/ampersand/b/c/colon/comma/d/e/f/ff/fi/five/four/g/h/hyphen/i/j/k/l/m/n/o/one/p/parenleft/parenright/period/quoteright/r/s/semicolon/six/slash/t/three/two/u/v/w/x/y/z)
+/FontFile 868 0 R
>>
endobj
-621 0 obj
+870 0 obj
<<
-/Length1 1937
-/Length2 21836
+/Length1 1820
+/Length2 20306
/Length3 0
-/Length 23075
+/Length 21438
/Filter /FlateDecode
>>
stream
-xÚ´¶eX\ ¶ÜÝ!„ÂÝàîî¼p(ÜÝ݃»·àÁ ®ÁÝ=¸ ¹÷½îÛ=o~ÎÇÅںζ:äÄŠ*ôB& # 8ÈÖ‰ž™‰ +§ ²1´1´sdf¢Wš9[:
-Ô¨©ˆ)«
-´}çoFW}×ÿÉónøÇ]NLUHUKQŒ™ñÏ3
-r°¼:
-¤^ðÕX @ÕÔ˜K) †â±Üipà€¹ó¦|eW<)ž­‹é}1ðVz#u%]Ⱥ‚5‡A»úUŒCs|éh¦>q8g{¦þüöÔò‰ÆOúóôFQv‚7;x/RŸÿÑ«+~{sA‚ÁtìÀ’júÕ=½Fä×G§óΆþ*CÒðLãÏáX®¥îºLr%áÊÈ]w•¯V±þÊÁÍ~ ;°8킲 (ë·+b:JõP¹P«®ÉÊ^‹êœç-q?¼ÇB·r…OfSíÑíݔɽ˜8 £jÎ1¥(nòF=g.jjrBØÔ®ùv:¯Ð÷àãˆ[„Ï µo·§¥ØÛ
-ÏL`Æè¤^p»æ”Ä]Nãå¶(ŠªX¬_Õ‰|Ôç’šW꽄Çö60`Ç“ç…¾ÖÚ•d^LEX™oÈu¡‘_& V/ƒ™$kR¼¥‚H¥ËîN\p¯ìj2»êépIÆŽ¼¯š0±¥(
-3]j…™ìðÝóI¼%l㠓⟃oŒˆª¥Û­®³¸ãcMÓ—WíÄÖùÉ\HŽ–×^za¨:@€ÁNÜ ó¹÷–×€¥ÁÃÜ×À>¿ÞèÒÜ&Ȥ› B¢~^œÐU0í¼fKby/ nôéë(VPp¶Û¡±!K-js·6¼ î°Q$aÅ* =U,¹Cñeš±÷ A¾TyÌ’,Q^ÊRùÕ‡ðáð&uiâÝ=LÅÝ:@ý¿ýC $-mlJNüé#ÊÉö‘`á[ö£0\î¤f™ŸN ÷ô,lƒõ›r’ô9ãè­žÌ5Ÿ·aèw(Äú›šŒA«§-ju ŠØs”×Ì/Ë'òXG랸‘«/iÀ s‰ÁϲTÔ¬0W uQñÚ&¤"<¸0 `ÉÙ–µ¾BÍœ$¦AÕ%ì¹—kGõ
-(žº¦¤ØÿÚ¹ŸäøTŸS)hIŠÃ°5³§µT»I(mvTÈ »úm˜Õ¤ÓLõQˆE¬ub#ù³%Œ ŸÈèãRAëê³ùÊ„ÙÆïF& ئΠ9¡¸6,‡ríJ}½EOŸã¡ùyzo£Ù¦´iV•‹Û^
-ÕPNËåáק)Ý”é sØïVT°¦¹{‡èl’œ!äöŽ§HLGZ’cˆ0¬>ÄçºMÐoŠÞ0 ƒ!54lsw†..Å1Iñ)5™;e?gé9ŸAñz÷
-élëf=[É-Ø,ñ\ ¨,©ý¢0Úxv1u°¤ö°Í°œ!´X¥á€e$WÄäÍ &ÙGƒ‡žkZ^UV¨ào1C)ºžb(|ɲ¼½âVÄl8ŠÙŠ¢:ÃÖóµ?0Q¨bN­ìŠíüLG8ñeÓIÏa$gÕ{‡;€élÒéúÙ~Ÿp}áÝìœý dÏ„Ð^f¨Ð¡Z?{Þ5ÀÃjL_í
-â3
-OfÝ;ŠªÐC K‡òPz#ôÇN·»[Þ
-fxviÀ•rñ5om´ ùziînm²AÛqâ½¾ÕÑÕÛbeò7˜]’›±Ë. †!Þ@`‚ŠT™:k9¶Ö& 4›Í¥s\¡)3㣜@OŒµÁÙx ²ÖÖiÌ‘RL2Tp)oó}‡Ñ?àØN=ÿ~,Sö3ËP;e6 ¨õuvÓmޫ嬑¼R-oûVäèhn*¥h¤ò´í%N!VSŽÒÅð ?p”F/®ú¼qB|÷SËFxÍôEå‡Ïn\¨ßîÖŸ,q;ÄÌœor!—&Œ— µdXä%†Ö¶÷ÞĤ{9º“)Ì4lx/ñÀG<Ïð`ØÙq”“"óÅŸöp)$T½µ(Iͪ•%’ŠP¼‘æ ̆àDzÂ:å½Ê=úëq¹ééë~—C¼€åM/ÌÀÁÙçÀk® –y¹MQUsUr„Ÿ7›Wî7“­4:󵙷Ыhä*D8ý,úìGÁlÀûÙ´Å+¾’ðën7® NŽ2Ë7ÖÔ=x×ðÔß ŸÅCôã&ó& b¤Â¥å+—¶zQ‘coªÌŠ†(i!ïHR ØèÚnZÇ2Å8;GRÄ–v¢Tê.¼’mÈ¥¬¿©Ëäæ†Ëm^eéñ`!˜µ‹(RëpduË6¸|£]ì)ØÕÓù…uÖÑc„دië3teßc­‡:ŒE›…Šù' årlç}¯´#;ÀÜI¡Ý%PÔ š0Ý_Ò{ÜpÏ=¿Áàf~¨ÿ±#§VÖüÂÞm%iÆ=® WÜçæø˜2L¾‹uÌmLO‚ÒÓžØíy¢\íà÷rÆ/¾ª©
-¿ÍËM‰ÄöM&«sØý6ûó?ãmYq—3UWÑä:9Ù.ÛØ .PG)rBg,"š <òµ‚#òÂ(KüòÅÐaÖŽCKtHg[«d™É×BÎ9ƒð™öÈéÛ¯‹Pfcöq™Y¢y¬ ¥_i±w<ã5­=‘¡d±gln„òàÕ¶9Çì¡Snë'¾­¸6£Jˆ »žÆýê´V‰ÔžU†¦Ù#„ŒÅX)
-k#|aéèãòÒÄiêÆë]ÿ©â¡¶x¤^C¢‰ @vÅ"ç•äæ¯Æs¯@ýïäN€'’aÖ.VUÄý™^-ÝjW(Yî—þ±šØWDRãÒXöŸjûì=®„£Ï]Z„•-p7Ck ý1å1éæé­hÉ‚#”i³%fÙá?pÍåûO>UÔõÎ>[qÂKhõ+Žl#0=؈"DZÃK+Bòh]7r¬OE$}@ØÚpný2ˆ5ɚч&Aú»¾°:èpò¯bMŒ†¦ŒÈ^ PÃÞXÁD¦øÀÄ4ª wžzø;2×™þeD‘¿æ ²tÒk\ÍwN„ ~?͆ܧ¸%v/>•‰ƒ%wŠ;||;°“Ÿ=ªâI‡z–·^žj±qõ„¿U;ÒÀ(Om?!ÚD~rh ¬}Œœà¬\<ýâèBXì™àz3HÑH71…L¡L`Ñ‚üSrž:n•~e€mfžma O {}¿"8­¤„ ›ÈRâR^c‚œ‹§îGHÝB¢ÉÙmK‡ŸlN°bŠbµä—ƒ•ƒù;‡$YÎ{Ãvw³Gr¬ýu^Uµ½dæ´ž[úM“rk*à‘GÏp¡ˆR“AÒ¼ê{™o=ën1ðúŽd«Çœ«:>‰‹ÜÍÙ÷~Ž[`æ[;}úÓ-X¿mnvÉÉaÈK¿`O6œ0;qbèjŽß]Úz"k|©ð€ ‹Ë¾>§‘uˆ’w‚gXØg"m3-¬ÂBw[]Ë¢N [íäÙ–Ê\õD_ø¨7iÃg/ó"u»|Q#*Íœ8@jÜ‚n=Ž«WÁþ©è@õà7zË›N·z#ÊÌXß@ÍVãÀJ—«uc“È9ó—¡y¨OÇûèçÀ%ïÞmmÇ\ßãÁÒ¹•z"}l(N‘§ãö4ÊÊê(“ ʱU§£ÕEë‡u >¶LN
-5mM¤0v~”NeÁС›äÀÀé\Ìí†Ñ=)OÒƒ-\{cïzNÈtf¨»€”ÀN¯ÃNèáä-ô‚Œ¯ý©”zͳ Å,ƒ'®FñûN(Ö‘Ãs}ÁMÌ]lÇ Ì«ˆu,…P.+>ºÂ¹¯QŠsvj<Á姲º‹ÖÞÔ¯>B—`y´ýWŽÒ ßM‡doØh%ÒÅ•8;`YÎ’Ò£ÁFvhÝ?;‰É; ’‡agÆXÑî×)`«#b7/çf‰ŒñÅÜÅR2‹“µq°‰‰oqºKó¶fýˆ{q½¸.‹£k’-Ž…,ù<½ ™êÓ¿ZÎù õSÀÛ:ú*¬q„5–Ù¤ÿìEÃOîC@Ý~þ@6P,“äïJZf„Q¥)Å|ݨaTëxßk¨±Æ‰íô2P¢N±(ÚbZØ Ñôýj¬-=dù ÷ñ#„‘èåÓ”˜â´{ õ’%€“‹™Ïž©Åû·½K„ú›ëI²Í™U$ãc:ÉíU7µ/ÅÍÎ-šë6wÒ¸9Ð Š 6/OI¨?à5zíwDÃ!mRä붜Ü#Ÿ¡VJ:—EŠlÆG¼ë“Žá×ÃEK;.¿Xô.°¬A?ðci£r'ðš›{z&º®Î?\Ù…Ê6¶ÈWÿN*w˜)aÿŽ‰ùþäúÀPl){¿P»åÇ;Ñ3üLSªš®ªTèìæiãpsy^gc8pÇ1˜µ¶žKeû¦Ò¶äòÍ·3 šÐÀšGô$Kof‘+0ëåG¶ÂEA*t{F|ÇñW‹™goil1®ôNËFõfcü2W-šµ#×ñÅñ\ã8ÅT×dÄtµÉ¦>CVXjdb¦7ôs„W+:…Qaß&Û3ÛNOƒ‰€ÿ˜¬¤ÁhÏ
-%4b<î¾–5L®Ž£s?&2—Òô—2ª^› ï0ÙêØyɾ†ÞF¯¡I”…šíî çŒÃÆßÉIÏw1éÕÈšIrNѾ ÂgŠ`ätß 8ªÙŸœÄoÿÄŒâMC;z Cþ¤jØ(݇…¥9Qik¹è’U;µ ƒÖ†§ª|;•gžNÛºñÁIò"¢ó;ŠFdέÛ×cð³˜,))èw£iœ³1rÔ|þÎpۉπÂ:ü\/ì)¤9ú¸H mz¬4ºWê"lhvLtn=†TÜ9±‘2f¡¬»‹l¯öPwÖgÿZ—E^yù’ šxð¸ëhS‘"µí†Ë‚©ŽIàbùí“©˜?­Ç‡ñ
-Oç:c²‰™¦TcºŒ‰„¯÷ž¯·ÅVæMºœ_&¤ä®MZ¹læþÈéM§Z £~æø‚€fËlÌ=Wk93‚FÀwöžû!èÆ«:k`g mÊÙˆ¢œ® SÚÄ:8cµÕd&-§éçrƱe…ˆ=1¼&0Þ§´(? s<ÑX…#sVœËí©¨¨êÜtñ#)8Æ ÄbUð6î¿Ý¬ï—¸QM’™ö·ßÖvùRT÷fă ø–Í'—l›¸øS®I5Ç•iíQ9ÇbŸqtŸÄ·Ø…¾uO!"¤4@\˜¹€hôÙÖ¤:ŽS¨Çº¥H¢˜‡ˆ õ7?V\·,쇮.Ÿ~½·JÙ<\DÊNÃQÙtä¬ëÕà¹ÞØ~DIAÌ ¬4b @œ«C
-K¶ç4ÑÊ,ŸÁnhw rJÇp´W­>¥ÏÑ’tHcû_îyOH‡žNñST–­ª›6gÌÃ[`$»kÝ^ÉiÜ^¡íúⲤ»‘¨!'k±†°ˆÖFM¬#¸T+žÿæ¡äóœ<I¢“õ® €Žm)”MÔP] Œ|£æM„ÿy|BnhÝí²âàÞ,G>¿*Ì.Ø~am¦.Jzy_P®}¢­š]dç¨rƃ]¸¬Ó?ç’þ(¦‹Ó^@7 >PéRÐ/ÆR㦾=OMeË‚°ÓÃÔð <jexâTSËŸ1ºÆ›uSæ„°ÔH½t“0ÒËÏÌÝ ñ°J·™Bpñ—숬ú:2/ÞƒÚš¶€«fˆ ºüú›ÀxîYL´LÇ9Gû™¨Jµ“@‡qú’°mѺÏ}PÀ„7ë^ƒEîÎ}¯ôÆ‚ì÷Š |v&#ƒð”¨èßbV¢”UoDD…o"qŸOàö¾aGÙ/Á»!Ê]Þåkm8KG—$²ôÿ"󾻪n5¼oRÔ¤‰‚Ô F´œà›í£ÉÇ}üWgï—‡$j}®Í·):+ÓKÔfºxJùˆñcB\~Š
-V{›ÐÒo‘VIé¨ÓQå¤2Üp¹˜Ë ½C¢/t;¹#oõ2ƒE
-±æSb†Û¶[¡ŒÊmhzÔF¡fž˜T׃o5„jÁ|’Ç>ZCMÊB c·¶=¤-ªPJ c#oªY3ÝOÖó´ÜÿZV*gŠí’׺5Ð.Í.Ž“®®W¾¼ûŒ ¿skFðÈÌ_äXìI</ÍñqEñbÛ-ƒ´NtªÃó æ½›¤é梷Þ0À\lzðYC{\Q¥wä`HµMéýó»¦Z¥ðµTLÅeçEÆ÷Þ[Ã6ÆC©Š |†úµUûCTø/)K2FóD‘ªÆ½`2ä€L˜ËØ_`ØÆr÷®¬è- ìÝŒòG©b{fU¹ ¨Ú% M{¿â:Âí¨·Þ!·:KF/šÅsV‘¼)/ˆ²c¸¥eÞ˜ìS¹Uˆ¯$ÿ•ÒS³EŸÂÙ9 í,ëËñ3ZIÚ?Ç¢KT¸‡ñ–¾*~‚ÉÓFÙ5Å«Ì»ÖÜpþ>Ô Ù”^ÐÑ®Äæ‡Y9„ŒDIIÅKí$›`ök'ådÙ‹Pà³s …SO«š¯qÃa÷c²…d§Îà ¼àþ–#GSé÷*bòUz»š§)¬NŸöìrÁé“eœM}jj¨D° gƒ>{¢‘ªÒ]ßnRúîƒ=㛘Î
-+EÔ\£$“VgÿÅx{û;h¤­ë´ Ÿ6y‰ÁPHzÈ7ŸôP¥©ª!žÉs@ŠHƒR.‰ ›om´È-Q‹fÒ -:HŸ¾7ÞŠ‰Z\ÇùÉÄqoá?'ú]í·ëúS>æ®hkORR|ªVv,ƆL”iL"Í$
- –mµ K¿M}y>
-1ÒÄ{¦”B±fæ6uG?jeŒ¬7z’¾ ö˜ø/„d›Hë-¯~\˜‰ ㌴¢ÄffQãi8`ªx,{•±teéR»ÏÂíÌG6®€qÄÞ^²´Û…˯Ê`réë<èõÒ_YÎÍv4‚ ÚLÚ#÷µsš‚‰6ÀÇ$9j‹ýža\_Û?Ì *!¨†•Ô¸¾Wô$+xãD>oŸäÄ,üâ±ÆÅ⸀ˆSF—GU*ÁâÎèÀ·á„loÛ|»Ï>ÐÄèDYµ±“ïB÷Ϫ/‰›#.±…” )–Çc#¿aû· UM¨
-/)–¼>@b“Ñ÷^Â*·{kß®l4€ÿhÔÎ –M@ÁR|Ù+ÝKu ™å¸];¦
-BÛÕÞÛ?šÞ@ÉìC G£S¸yä¼n…C³%™¿(ñú_[G«{EþR”­äpü…R9sÎÝdˆå GÄäHmgàåmX¶wÅ‹Höù O{ê#+ž©Óçf˜v£“qf¤(ŠE{¨*)ˆÉH8‰e¬¡w\|X2 {UxÛ¦~C•¨EÖ¬?jl&.½À·ñŠÜÞ>"“ZyŽðâѧÔR)eËþ¯z†å}8Ýp¢wïÌYZÓcÇÑ”ru__u+Ã{#½GÀM³—øØFE+g¸ â‘ÝGt˜`N€%¨½&3ã—Î #‰\Núî&¢NCHViñ“i„¤êéwJ¤¶@í r¥½Û©Q[‘‡AÁs2¢Ãð‘èÞób˜¾cikèJÁ^„g–U> ±&¯yÝ$ÇŸXÄŽ%ä!ÞQÓñ‰qägá¼í%䬀)•",˜Ì×'¨b 331¨…ˆ‰c¼wð}sòoó–7Ú„$-¤_à]Oœ¿Ôµ'ø7½¿˜ï…øpÑ&—±kˆAh¢ÐEî• %zm¸œec´«^FAÚ*¦>¾ÓJŽ&vè+–šb¬_¿.ZOˆÇÕÝ-ûèÇ8ÆúŠÍ0àÜç:Ó?Háy¾©ÔOc lï²
-bÐÌp?ôÁBMÏ7‘ï'X¸#•2×µÌ)ç#Ï•ší[×YëöTéÕ!XìÈ×õE¤¸Ye¿°€UJÃ6':¥™,i » úâçáG<ZٶƎ˜)ŽJ–ê SÉÏš×êÓ:ÅËÜ%±qàã²wàç“nœ'«~SbÙ¾"g?Ê+µõ£Baè]Ñ>¯’o ¿€)½%ï´. ¬?8`˜Ú½­Œò ëÞfLÈi‡<È™ûs/ÿöò˜Åˆií’Â7¬ül¥(ŽZt |£zù©Ðœš«œ[[øʃjroµ*¬а²² õØ4Å!öË$î[‘+“¸ñÍ£Læo¦ö°‰é‘èz3q…± @êöÎ 2m½äV„¤{ȸk"…Ͷ[u:ÎFü{l#¨NùØ>]‘5$m(Ì7&_½)Õ3\D†Êx[Š»O»‚²×• é¬Õ 9%Ä>ÓÎ[Ûâ8¨š'LüFÍòßPŸëRp‚f‹)L­Bꙕ4£ûÓ's“Â8Ní0_qáäÎCyºñ͆ØúëÆß_ò®ôÂ~ J:ÄùE†=*‡T||}i!Ó/™`ñZ„/ RÂÖ+U<vi P@¥…{Ep®`uñôe‰ˆ‰Qq=áHàó*ø1ÆýNpìæyå3UÑ݉]mŸñ¢pf»ˆ¦• eÇœ—h!8û‹f¤¢›^kº~ùÖaá4Ãñ+†àuÀ”—R‹­‹ÕŒ`N70Vºƒ]†>µ^·LAÖ´{…Tîi%c¥OÞQJ£ú®%ï
-ó¶=]€æC¬-QNµª+'T{y™²;«£KúùFZío)æÒõmGY$61u› ©ÆYQR#äÂ'mòð‰U,ñ¸Ð[¹7œm±}ªU%1¯h"Læ@Y 5Ž“Š£Kî³ôçãq>ËövL§øÜãȪ€áKùœÏN2Jkí–4ÓæiÜ9D
--1·[T•Óôp<jw1½-r3HZöúÅÕWüJ^J¯È|Ž0#§‡¡wåí)úì>[¥âÚ~c—a p¹¢P`V›]5l¬Å«³ÜF¨aïÐ>Kg?£Ø'~9ÕÕe¶õŽ®‚%ß3•fÓ6—qK+·Þ\c_ƒCùdŠ½ 6É ‹Ä´Q˜›/1=žÀ1_PëCïF7Êh@øšA*ä… ÜÚ~ªüÜŽá;G2~¢ãUz¦LHUá0ÏQ•œ ¾Ÿ$¤ˆÅ›öôÆþ%œä“Àdïó™€aȽFÝ£àç#¸*‚oÞŸ¾Ãö NJ@¶­ÜT~ˆ\çܧ£F†ÅsùŒÕfEûÙëS)¨¤~Í[VßJ„&ôÍI ¸ŸŽÞÈç PðB€Kxölš¹—2ÂJ«Y÷5Vƒjズ“áJêܬG#›¥`ˆ†@úöÄ!œÌ&ô󜈹\‚—–;îCÙÞ” CûB%“â^$£Nhk!ÑéhI(Wxà®Aó6qžœÛ¡òÙi€¢™›ÑÉ4Ùbìþ*Îœ]<^Ú-Ü·’æ·¨Ÿˆù&Ý©¶&i—e/[¤x›ÒþÕâDóWËWª>o`€‚
-¼Í“ô.ü ‡AOÏØ+:¢þF&M3øéeÒ
-3ÀÔ¹ènLtÚ·Þvƒ¯¡`¿¤ºÿ
-G¯SÿöÌ™7/WhêKhtK9Ë‚}k,T_‚ìת”µ5¹Ïn÷×øÚ •'·û×v–2°Hë"ê2¡©ÖL+õå5øtʾfËø‡åÁ4¦Q²åÐ> Ç
-ÀPÅô¹¥¡Ù‡-Ÿô‰;‡=-t ǵÃsöm×Nˆé¹'?
-Ž{üHÁZì€7‡X¬•wV4:×r¶`$æ§ÝÞtç;ùù%^Ð ye4¥U™¶~„&Õ’ ªmÔü¡*”Á¹WþJf‘ž9°QÜŒþ‰^lÜ°ø¹ˈΣƒåTrµ×Bëò9ø[ˆ(ÿ91øça®ÊüëÈ¢Öçõ+ýY?ñ·êLMl¶ý𢄞C¶°•^GL~g. A{•0·ïÊôøgÔ~ÏÂÔ®Õ²°kuн;™‹ 9uÞqÒo6<h±ÍÚ•áƒÅ. G`UQ”ëŠü|åj@rdˆÞg‚¼1í>÷@}Ýö‚<î[„” 7­|(-ôÏŒÅÓP’õf›†lÌÓR_Ù(Ûà=4)ÏÞ|{+²ÒfÌw¬ê«3ÅÐg7}™Â„Hì1nòe`ä};[µg€x¦Áðî7Ù2°Kh©‚?¨½µc3äöë =ƒÛ
-ZV‹Õ1H—?°DGo¡cWïo“°žý&b°’a;
-%R„Éf²ž!hS˜Ê{‰urø“ãú"Ó² «Zsœä,kÚ I‰<rÍÑ
-É:<r!ÅÔðª hþ Oæ¬"Ïo49h;z2L3×lx^¹k*„,^9¬ðÉðßœpdº‰F½]^MyÒöÄÕ˜ ¾Ò̧߱ɽùεÜÕñ`0ßÁc¨|ñ¡%wF3
-™ê-„{p Eì|®ÐHÁpÔ/´w2FtvBÛÙ?0:(ZiÉÉÒÿ²)Å*­ö{j÷üCïv¢?oEâÊKœˆU`ùKœžÁ¾ˆ«Ž!#>²*7ZÉtP|Ø焇ê/v }eW‚…b§ýï!¥hA`ä1llßÒ$n]A=|ÔåëXÎɆvÌAE [)Áõ‚©ä¤2[òðô-cƒí¤_<‰n——À~_§fù ù[³Îóâo¡ç½R0iÞ¯½¼qž õÀ¬àÆ[À|2•  FãYh#CÚ_ï Âyœ4þÖµÝÌÀ¨*ôø%ÔV(!ã‚Vn ¶
-<V¡(%\áfL›±£´yr³¹©¬ýÍ™žÞÐ!QþÎS8Õ  Îô7š&2(“Ñ"—ž²fyØ`ïÀ/}aÕ\öê,Dœý§ÙürÏsç¹1©æu(º‡^QZbBúÝVÈ=TŽRýôÜ®Ye×ßà*uøŽ»BÓGN”ïøç+ Ö=jõÆÍJI^¯œ£šÅæ­´Ÿ€s¿qÝ–1'YG²gƒˆ–v ýG£a•"0hÄñ=ª”æ¶Î"Öd©nÂço}Í[°Ge¾¨dÎBñ>Œ›S{=#(5c՘ɉ*ù!«¢Å%B1Ä…º9HÇvA­òv¨‚g€)õ%ÙÑÙ$
-Uy)€Mó^*þöÌýËRæè|ZÙoü\›‹ŸîúÛ#Uué—‡#÷f&àúéü±ô–àrÌ—P ^ë¸ù§E~„{€¡T‹ÁÇ-) ^:sÖøÈÑÃcÎÅ_Dl;¡±ñº7°-=ë°UõuaQÀ*J4¢[VÏ©‹²ÆÁÂ| ñ”*²¥p½Ú¼öDd7æyxŽYÔ¸[>(˜‡Ô2“ ÓWŽVo{
-ˆQëÔRuÑÍ´Ç(NÅ?~SÉ-þy¾36¸7ÍÛ¿gÝ:Ð…ÁaùK}gP87 CøTè¦ÔæÆ]ì6ev›¶SÜÃå{ iÓŠ¨¤ÉYú¨Ë©ÐêFGê‡ê<•ÙŒ‹lq[ZœdfHŽØØdjãð‹ÂBoRÜÌûK7£¢©DO*×Íì“8AÐ6x_–µyoW
-¢‡ {9e
-~€`OË·h±éKK¢Hò7œ[ž´²Q(¹¦ÜèÍà_&FÏ­æ#Šå,ÁèI´%S`νŒ»t-oc»e9?2j8Ÿœ4gZù` ´}) |‚
-µ4á²õƒ˜ç=²~+0^„|,`T?N ¨n˜Œè4w_ø‡z2»š®åÃA`Ç[©ó˜ð$îÂòélaá®›YÃoa|[¥Oé²›¦Ä0^Ô;I@7ûÊ–¡B/KŒîöÛ¿Ÿ&ÕçSkOé‰/ûu t)eí´–êšEáÍ&)á²:ïC̱6W©1åX飥]”lh›ŽT ôå+ò%æ¶,y8û ;o2YÔç}ÈèPÙ«ÎH²Û<›*”£$Ý—
-rÇ|“"ùT›Áºã÷Ã…zš—•q4GznÁ±§e568<
-í3¯9Ýq™LSðbeÝr÷—«nyœù‹n‰0¦jY}Ɉ^îUtÙ\Ú§pGaíjVȯ¶¥Ý|ñcªµ%±U=8`…Ö1ŠXÀrÃÆa¿“‡ÕÁ*ªraÒvÜ[”¿\’D cÞL?^èf° ôýÔðòvÃbes[H’ÜÆ×”ÖyfdÌ*­9@N&0r¸"­•rÑ"p™W•jÒ ×úu“v–r¦MõZÎçQ²àÇÖ34€*;æ7ýZšá’ ê~6¸§9”[¶Ï‚æö$†KðÂÛék¹ð—ÑD>¦|[îV¶åý*ÃÐaõI™Óߟ'Ûz©œ*Â5SUöeöÊ4ý–Ævá¨î¨kyý&²Ë-W¹xËF¹³——øeÔÙ>;™ñ3QšÂajª쥓¸‚ñƒrZÿby"æ€ (~¹±9iG»dK“ü[+¤ ç¦ÂiÄëa+·ø»,Þ˜£­+.­—lBU5RP8^[+Ž»éãq€EŠú%žw$:²äpà²ÒïgÒmŒ»fìûpk™Ú( íÊ›03cnÿ€ðÞ¯8”ê‘åtZÎ ]¥Á‹ì\zµ­¥+¸[fpé4œÚMYfçfU‘Õ«»aŽ€E5“&oéöôÉaýU;þÈ‘ÈÁo´ai¹ ¬¿7µdxÆT˜Uý1mc3j‚#9jùÁëœÎ`Ð×ÏÐi']Žu»J™LÂDݲD‹Á¬Ètî/Ö߬ „ƒã© ’ƒê»Qd@âÌ--ñQÐO÷?j‘^«ÉEá5ª÷™
-‹·{«hî‹Öv Š"v†c‚õÜQ:8}ù‚ªðKùCO.§a;8obÊxS…”O äá8{Ppê‡à›C²Í!9 ÞÈ
-Ž BÜn'9)œÀÆ‹gÃœô²㺸æO%l=ý98MÊuÝ)<”¤Ÿ¾×"Y-³~™ZH@>F,ŽøÀšBíŽþÚ¢‡a•ƒ¯*=¿¤ÏôýÑêãUw BZ3U‹—´Ì8À) MtE "€ÒsN×].8Þßv"‰€ƒÇ;ì eÎxoJ#Qb(èXÄÚR¯6Õá"ü^˜Nˆ?iþ‰qtêq,ÿS6µ¸öðó•+±ƒÕÚtƒÃÑ•@èÔ÷m¾ŸÉÞØ>YÚ{°rÌ8\žý8Å´îS:†¼öî¿IÂQóÄ<÷¾Làëb‡F‹vr¡ú°øtþ =gÐ™ÑŠé§ŠË Aü0þ
-–KöU©6£,X~Íã*¼Wfn’yZ’dåšük³I²³ÝÈhBBO8ô {é¼ ¸¢uçziJ®J½ÏõôFÕœùŠE\uª@SX"–Þîpæ-]n¦išO²lÁ³ÏÈ!qD¼Îê²ãÊ¢1€ˆmÎrgÞ¤Á7²”+/…+;ÄõI×EÀ @ã.Y¹ïL àÉדþE8?šœÖÔ6G1‚»{œvל)ªÿÎÅ4½hÿǨ2õ7j5^vûŲ­¦«Éàm¤ãMm˜Æ\ñ$‚ªî°³çiâƒB0°±>îþæ¹O\ÜÖæÔC¿l¤ˆ4Ô}Ò{ä:ƒŽU˜-~%}ÖŠêÈ™Nâ}3hw%+wTŒ`Y¥¼@äÜrrð±Äz–H•K0zr_ëóÿð ÑJÅ;í(”Ç°òÃ'¶¬R2ï"\·›|¶¥ TmÊ[#
-+™ Ü<™Z¿Hz¨`ÁðTôŽý’®O§¬bÊ­U±qÆUˆþ†
-4d™l'-úþî-KhL¦’ÖY I•r¹V`"¢n•îUËßüµ‡!Ä6ʱðf”Rä ?’+›Ö%€°W“:UîFQ@ز¹üID‰‰ÚúÔ<š&K$Ç¿N7Ò±SOöÜ“:˜c\láRãÈ$YЭ
-‰ŠCrV×üj s¸m9PrŠñœt\G¯ÖŽ;«;r2Ú•FعÞIs¿Ԁbß ºÉþx¸xÿµþ²ÄØ4ûÊÆxc âçîõ´Èg¨s+"“<…2ïç–¼ŸwcéNìGÁ§~‹¿ò+Êt c(~Äu°q¦š)–·Ô÷7wú}f›ˆxí0õÎrvtgì¯ëYvQ¯Û8˜PXÈx4®ôÆFõäNœÌË¥Ë!¼g°9Ūg°
-ÇHNNï4&ôÅY:¾
-¹ØªÈ•Ö¾‰äý‰–êzòzéÖÙ5…«Œ’ûQ¡RÍ
-¹®¥Ä
-ŒXœ:ÿ ³ZºpÒÏÁâžEZ”Û³©ø7{Ed¬)gɪìmêÞ:¥`üÌ&1‡¿ÖRÜ6V'©3[¼¡ƒI®ñŸsuW0€æz¹ðt˜¨_ç±”SÂ?øùB®ËÊàÑÂ{SBÖÛbJÆø úQŸ.99ŽñÐN
-WqI$Ú¢¢¨Xà¸äÒfüâìúÊul½´‡\¯'°Œ=Be¢,׶òFžð¸X
-C¶ ³[NÑÖ þØBíÔ{LJ$‚DIú|÷4ö îQ;‰êdÞqNYCŠÙ€à±ÿÕá–’íaRZ3䈫î-W&>Rp©4{&/ÉÎE?5”ln0doÍsŠ¬¹­R¼ÐÔP×>õ”ÖÐF‡¸Ú‘è…‹ŽS<ܧäSå`^bg4!¿d0¹@‘¢´*,Âú%Bœ@gH¶; mSµ‡IBÃ1Ì­µËô!YÑMµRžV´%ôÚ9Cì
-l#xÁб
-¼|DkÉ„÷} £ö£Eî°¢!=2!Š6<ÄÚF
-¸÷J¤dáC‘ëWª=¾øg¬ÃO>L‹«ê«"Q_?¦l6òúEPøAÖ倈9VîèÞõçA ‰k³æQ¨À¾u–ar–d<“2Uc:né‹,ã°ØÁ© rÔhZÃéªËnY#J&@6Æ{F¯•ŸynÝ
-œüLº,æ–¬Mq ì£a+ˆl_ù'©Š&·¤,ø¬æJ=ȃwæV]Â`o(ÙV]_U9ê'„w¼¨TzÚû>¨šR˜–2ƒhÚ¾ÅÏ Xƒ6v,>©ÂÓ‘ÞÅv¾'‹¹ZÏâCÇtELœÑðú¢X” …tè2ú±÷íƒÑTäøŽM
-'ÔÞZ³ôMõ 3¡î(Vgp
-‘Aªüæs;7ó`1¯>y%f™e“ÉÉlB©íCÏW(ƒ2ã~ñÔ}ä‰r„²ÿùZŠPŠÃ(I³¥C°V­ ¯³÷ða 9©ú´Û¡Ú€½¸ *ÓD»£4¼×3œPž_²åÒe2'<†ÊDý*ž/N,LTODØJµÞh® ?p|dKx’‰‹\êÔkÄMÆe£÷J'Fí®Lö\Ô/ä‘û·Àõ`ÃG|f2¾þ?jK—=.‹}VvÀèéŸ*.áÖñ*™¹ÿ<ÐÌ¢ìû
-ãd°T†¶¡å7Šû<þi\y
-S?g[ E¨ØšÅ‹w
- ÆuäSyPÝ7ô¤ÍpNŽ¯ÇWoã.®¿XLÅæÙæ(a $–˜©,ò<^E'*Ÿ•W›Ô˽ò'jOtÞMk¸óAû¢ÇA¨§š6?˜4³µo.eµ°\S»ÃPAil=b‡*¢’=€-”'Š(5Ëð™£L#ß´´±)l™ªá ·6œòì7ÑNáÅ*)ÆÓνtzÿ¦¯ùÇœx¹‡ä†ÊµÇÐÙ¯i¨Ÿåøî\ËJ.TtQˆÁe•6}ÐϪÚ·U0Ô΢ÎP9~bŸ¶FXzÖD)ˆc숮L]ËÜt›EÇ+ëg¨*¾¥ÖPSuÅ<Tòt¢«Á\ÖŸÔ­[_œ[O†¾P
-Ê L™¿<é0êd‚"߇WL±a+ï¡Ëq¼ÿ"p€Íb'{sÿ}U§²êDTÂçÿC8J@€pH€þèûÊã(f²2zà°ð
-ÎI q`B3<á6tÕfeñçÀ½Îõ‚sïÃ3"†I‡qÒÀö¯K‡4çëÀ›Òš8¸)ZÆ“ÒõŽã[Äß}ï–Ò}=j¿BY°\¾*Ù>ØfhH~ÓÓ¢†r³ˆ¤K#£õn¼Ø.Ä©_î“Ø¥6mWŸ5Õ¡+Ã"›†7í
-£Èøe
-nžçÆ—œ¦_Þ©~¿ü´°æô—ûùc?‰A|(o¹Š²ÒÓ¦µí ɺ´toùâÅW¬Eã6ž:?«ò;— „Y9'VUóŸœ6ANì ‚K×m±Žã©¾ÛáŠyC—8ì¸$q=çÀþ–VÐQ(S(‰µy•ÄïHÖ~c *òˆAŒC„mYѾ š¡žäVî‚”rÊõ…{Õ¥Á‹Ìàl7ß$GÃCºµÏmo{‚®©‹ófx`ÑÏ]ž_ég’ÖOF?Ý^ÐøñŒ¨ÿç0-;/©<Ì7´
-¾û
-1ˆä®ÍK¿”Û=ÿáiÒšà|h‘@-^ŒY õ ¡ Ûg7ådW(O…XùMÐÇ/Kªmâ+Ê‚dÂ+9ß
-öŠÕûžºó6
-ªû|ŒØÛà:<çrˆ¼îY¥pœ€˜ “Ó:Ϭïc©ƒb:ù#èÞÈí×™"WŠ _qïO¹ç¼ŸÎ ÅñZXYXMŸBàݵIqÀ®Lø ¸÷¸Hr…Ø7 ©†ˆ|}¸ÚðôEäe×/óU·æD}âa9ì 骚ûÜzFäN/\w“r4ÑÖ¯Êc”M?ålÒ~3^Èýóö)÷–{‰°žü"ÜÜå"Îò€‡ôã‡Ç ISˆGArLËÓÏäÔWð\ï8Ä%¨&ä¡Ót_ÚØÎW-@
-{
-^*8`]À!Êv+Àíé†Ð ?hÀËÅ!4j‡¢ëñû=ᄦéÿ‡g£Æùßµ,¬â4¨§$£y–ßa®~«çZIĦeûæ±&VW3 -Æ'Xp™F'cMIõ”#«ÉjÅÚð‹_™Í|d“ô§¤†ÒƒtÈʸRÄ­ãM» ø“z¬õi`¡)t2´Õ9ÏL¹óÆ·“Åçöå€*´vM‡i‹É- &§ÞÚoàŸ}ߟ-æjfZ¦˜¿’™Î¨8 ›9+"vK1®!B¬ãiœÌ ËLÝ”_;¿ÜY,J{9§ÝSV« NÙ‘bЛȀ5*’Ö–«‘ù…ûێ뜰¼áÜ· !ªˆ‘Åcµ¶°¢ÎÍ#;ƒý[$K5SÓuñÖϱ¶Òj¢Cwvêoî”øˆåßPû´OøÂrü“ñ©Û.þzgd³Á1rî€Ä:k"¥^Í UÙ5•—Yš­NåS“žîaïK7–öòU;!~¦ösí_4ñÁÒ `š.ÞÏ¢hpݼ~U¦æwð®}V[—<,£»{ºý~;KîиPÅõP[a×…ÆVÔYúj°/Ë(Ú50Ù«‘Ñ÷;jéôšò¼ï24_;Å© ÎyW-D }µ#À/VïfÿÏ+{k<å &NâÿuÉΈÑ}L5P¡¡@”ÿš—Ÿ™®7ï šM«#Ì—‰`ðºæb“i¦$Ý1ÀЧةSƸ"X
-‹™ç3ªd±íNö^]Sïçպ±õß…¢@‹DwV’ëŒBί¼y¶†ªƒ, Œ\?cämå,À#,$Vî‘<«¹²¡ÈóÛ… á¥àZq®[ƒ¾iôËÐ ufïòw&ò9´{¾žU`4¯¹RúR¾ðÎ;*Ue¥L…6zuãCÏÃ… Mõ­³C+zkˆŽ5?@n¥¯wHùp Þß’2Ñ=˱¤µ+“ê#èã0g#þ‹|´Öh™f AÉ‘”DÎñÊ8‹q_$°_1Çô?Á|l I€Åë§ÈIò€Ç¿Fdõ˜KÞ àÄÕR¯óܦŠ 4–¼§hR(aš ¾/é øBq²Üñ¶»Àò;*
-Š&Mœ"ñn@÷Ðäl:„ä#µRðÿÁL¢JQß#
-†Q£ ÚåºG¸Þ$&¹;íä0CÁ¶†ÉÁBg¹ TôºaˆHÃg$±ýÈžcaÑ(y׊Ɗ.ÄBÀÙr R€ ÝV\DøØä&Ší=¬ÓËþ‹Q³Aº^´¨¢dRŠd¿’È¡ô•XÎëÂD/7ŸW9x¯Ú‡ „¥žrO ÄÚ‚îòˆj’ hXjöé¦Õ#uIË0þ úq <-Ë—ŠØëJ¢êɾã”í%EË}w|¨ôÜC:¾‚Z¼v¦JÞ1j¹ ß׌KÿéF÷Üø@ô»õŽ.Ÿp—;Zà x«ã7†~—⬌,±Oê£ÜdM{@TÝOí**ŠÎ··ø=¼Èæ¦êZ¡ô¥Ï|W£Ço¨ô»ûÏèõÐ{R â´ú7.£õ×ÌcØ \¤=Š#Þ_¬Ý›­(jžC 1÷‚¬¤¨i'ËHß‘<;ï|ùߟÕ`ñ'€†–OÕNGÎ貉Èn].At˜ç³˜¬Øîzä#¢Ó) „æ'†•áYQõÖígÒà:¾ì<Ä„mÀ—¶^×±)Ó!¡¯Ó,Y|‘ÜD¦T®»åä]zâ~o!»
+xÚ´ºuT›_³Š-¥¸wwww—âœ`ÁÝ]‹+®¥EŠ»»»SÜÝýÒßwä;çžûç]YÉ›±=Ï~ff¿+BA¢¬Æ bfo”´X™yò
+ªövÆ 1cgfU …‹­±€•‘™™‘‚BÌ h ¶²‰ƒ¼
+¤y³wðp²²°ÿ]ƒáïJ£E²Æ¦6önÎ6V
+9ÿIÚÿËh÷Nå{лü_ÀÞ‰
+dfþ·f.L +G Œø„¼«ÿ[g˜@G
+~où÷±Aügu¹=€ç_êw$ÿiúf þgdiÞçÕÌdë0š#2)Úƒß[ƒúÿŸ‰û_¹$]lmí€Ôÿ'¯ÿÛÙØÎÊÖãÿíþ¿Ü´€QS+Ú;ÙÛþ/›•³¤•;ÐLÙ
+ljù/Šÿ¥—¿ÏƒÈÂø^žTGÌö½—ßÏ#«¿Ç€…óÙÞÛÔÔtv°ÿ+ øNÈÿBý^…¿˜LºÊâR2tÿw ýã+2µ7³Y
+4øgPØËKóêû&€Š´)‚1m_ד~Ž_›©oû*øâ”ÎÖdÔÌPXð/k#¥9ÍÎÓ)fŸÊhJh"h Šñ´´?Ä°Ž½¡]¦ê•5­äºΰÔc8Ù~v_ø„׊¿0Ñ
+ ~{Àˆ‹6îY¤6Ê Å–…sèlG߆Œ.dN>Ó½>ÇË«íúª¨&A>¶,™ ÎºŠ*ð¹lyMšÚRÎy"€&׃Ï~urvˆ£„T 7v>‡9i-ÓNIôÍV<‡lìNÃpè·†s`úN¡.z€²³¤ñgê®^¢ŸŸ„fRnRNã¦Û•Z֕ʹŸ{ÀϦ ‘Ѩª®&é]tà^þh9Âûgí|Xäu2­Uâoûü
+<Oy2)cg3ײ-Û÷M2T÷WDÖŽ‘¿·òÔ”kPó¸èµ1
+™TÛñÜz‹³ÀœåÑk¡­4Þ—¹+‘ÒnàðAn–õQ(x$™(às¾Ù¶ó)y›Ž”"]è²ÝQ…yPí#8ÑSõ?Y©Än •I³8÷!qÓæžW“YµqF·ƒ¿»è('ÂþŽ¹fµ»-Â"PÚÒÜ!…¦ƒ¸MT=€áó ®T­ÅÉ`ŒêØêT£œ´ƒö ëÆG ôVX}üÁ:—Éc›ßNÚjIÞ¾øU½H°NŠ‡£êHrëÄÌ…¥½)šIèÛ¹@¥­le¥¥Ô¡ò>)r61ëÎ1'6¤j2‡òqÑLul׋‘Ê™Ù|Ö%¼å´Ë¥"lÚ£Ë(g ÍñƒYФæs¨Ôú‰Ö_–ïîOá÷n %Î÷Ý(CÁGïö„­y)Fó‘}kê©WôJ±%ðY[mï/c²bl¨P ÓZ;¯Á8îÅŽêL
+3ÑŸQ;jÉ6Aqª! þŒÛ­ðØ-Âò0óø¨ë·+_T~ÃæÀ®º¥¨z/h¢s5Æ÷øŒ„mæˆÏ|sD#ttWu¡ðfæ26®<á2¹Éöšq:¯Ä¯Ìî e׸Øn»ü¼‹OÒ¨$z
+ã¬{ë¼5% æh.85ƒ7¡—yÁiŸUO»ª‰—#ÐUþ9Ü*ZÉ—ˆ=xlþõ£F]Âd @¥ZÒ@œ¶Eñ—æÃrbÏêÏÐà CSßOožaÄ3 ¡Åß°Q˜õnôg -b¤–å?}‰°Ë5Œ´¥Ž;^ÜWx5úU¥·—ÁJ dõ}~ 8[vÉyy¶RÓ»Û~yvrWº2öEk»á6kбTtÛµça!õ‚'³2£¶ü7q€´ó=0²‘ “áë "h0
+Çd© õ5`ɔʓº.‚pEMyZjù9ïÅ©! KL‘ÂWÄPŒ¸GþÁ«ÁßN{ÌÏs2§ ó’´ûm¢H6Ÿ4—djúй©Vè…£Ïs°»‘ð¡`²*mb‰=0H•N÷XÎîSúÞ¶LwaÒv™y§ÂØtŸ(¿Þ•ª¢|Íãä^l¦¥ã¥ÀüZqÿ¢¦&JDç/ˤ­‹ßÖž1LºŒ2ñP0Ò-ŠäZo0[W+R†{Û÷ñªJôKQª?OgUVYAÚ¯1)ãÞ–6x8BÏæ˜^±5®ÔPƒØ»Ðæ ï`gŠ¹¾9„TvÍR ° =u ÷hN‰2>ýcÙáÝ„fSQO[yö‡ƒƒÍr«Ðo=!ª`ä6Ûƒùëõ ¼X³ð[™Éðl£à­º¾ŒHÙ°§Gߧ«ž#áH»­ÝlƒyôKïžà†ÂΊM+d=‰©
+]}4±óüæZû*ŒÐ ªúûQ·Îk.:•
+ÂÒuÅâê—ýtñåTš
+È]tÄœ|Å_€F7‡ä‹Åveƒ’4ìf¾_X–7¶žÓN¡~fYt­{äÙ<z¢öŒEÈCd4į½Â†É/»øRŸÛôÆ„µõm6bÍîÓ“9!eÊoí¢•¹js'N^ƒˆ‹Û>K+k¦Ï¡ŸéM¶ OØY©¾ßß&U¬ECWy¦Ó[¥HШESŸLÎÞýCdz®;,’ãõ±Ž/‰ZêeKc™Ÿ'Ù>;A¡ >(¡ifÎJ»Œ5kÍöGüïWîíl—cx>öOÇ;ê—•ýfø[qFzmSè"J½p#Á&ꃊKu44+%ö&iÈd¸ÓÞòO•’V!)8¡k’ú:–Ù £DÓ ÝÅ&m3ëþÇ™±3ñ‘}Ž.“„ëý·kCNnÏÅ‚ÁØ\‹%‡T„¢?è3E±æÁù–i#æ«ß?­ò‰gȪb¬[M„Ȉ#âJ™+-¥¯°‘κ·—B¯èfÕ™tj櫧ª)¯wHh«‚£aÜiÓµ«Ö<²”Ì>f=•š˜²RjCŽ<htî"?ýùÔeî'xäQ:zÉ‘ƒqŸÎÚYŽ¦ª:c9rç|5{(hõÙd¯C.7T.’ðÂlâ»ÙBºêë1àà çf+î %ieÒx¶Ú)E2Wðç-”'å›(þóÎRõ‚š«ßþ,«ÁëâS“¬³õ¿1cÄ1QÈ¿ùhá˜KôXCšý0
+êZÔ4v‰­“ðù|€{z±+È3íÖ¯k Ç zE:"¡…Öá]o/EÖ E)‰ú³Œ^|bƒÊ€™O¤0Ä"bß³…³è‡àâP!Im¾,xâ;QÏ%€ ô%gRr\k8y¤ O1ãk·µ
+¯{þ¬¯—è“#VýR¦M<`=a•4#b\s‘'xr¾Ú¶}’Ó±›]îj!¹·~³Ç~È°{?*Jq”4#fE1o§ Y|Š´.pnP™•e*Ô6Y£µ_¹G–ç­Ä>]j2Wi€WˆOÇñ2_hú‘#¾cÀ{|»I¾ì“íòʬ*2 ÅâVů¥/LU: Yc(ùµ%ä´u‰˜ Rö¼ëÌÇ…e$Èø*¾^|Óeôœ‰ÉY4¶,ÃãZ‹C·X`(S2À.ý%àèŠTwaìÖèÈ n±Âÿ-lI3<Èe˜ÆqÃìügÒ»Iï¡áÑôX
+ž PKMô¢P6@X*‡Yäµ^y9JÙWPsYC”Í4†”F™µÜñqဥNq‡û CŠ¼ñtù„yE­?XË¢¦9&8•²É­=9=U¯¿s'oi:ÃijæÑüÚ~N\;@觛ڄ†ÿ òzãùõö#·
+F0÷î¸i³ÿƒdút£ÓÀÐùÒ“iIW
+*ŠêÎiÛ!åZÝ}Î=Q‰Mƒ0Ølî[݈{æ\Ýq/¢Î¶No¡žkýßob÷¼‰Ý`´Éà++tè‰ÿøypÀDmb·Õ*$ÔEs ¿LÆT±Ü©]‹(1ðu²ô;;Œo…m'lËøçñ·#“nüÇx¬2¡¯Q*Â7»+”òÚ°Þþ0®‘ðÏf“Swnï㘿n€:¡¿O™8ï%ÊOµè›ÕW]H+ß¹âxxcÇ+Û.<àðós¤;ˆRÑÄÐ*pY§¶ ©S€ˆ)/lÙ5r1Ÿ
+½j\hF³o+Æ3EE½ù±˜Iƒ¦/ôs¤VÜÒv–£…­ÛÑæD<ÖÆÇù1Jýæ-}U?áˤ`E×:Š ۤˀº„(†îq/ÛÜþ:Þv’‹.Ê}ùãâûËg((Âsp¼NN¥Ó"mÄcIþ-ÆùA–+¾{ƒŽ®[°‹ƒ<åô6üˆ)B”åÑ7å?šâkt¥ÍØ䆅?§ÌbÂÃjÌ'yt“ÆVÞ± ž¢7›¤&sYgS‹ëÕ1­kßËŸI ò?Xþˆ`ð™~U¨¯2¥âÈRŽ/osˆ<$ɉÎETª¹¯àÍcÝéÒ›c#=‰ÐcU†Hwd„$=Rm(¬‡»ªx.= —¤«~Ka ²\jëGÑÞá$hÝLkDêج‚´ÁzØEl{
+Füô„có`“}à»Ù0ýºl¸#9
+D
+¿?ˆ”ã‡Õƒ ä v’ÀúÅ9œQšzüŒVGùùôð;|³D)¯”A«Œ=ek“Üev²WhàÁÅÈsÓ@[.ërôur[êîsRÄ燳,Ò£Š®Üð ³o9çÝŠ‰ÀD ¥šP¾6Ûé=µÁtŠÁ¥ÆA,?MT/ûÉô,î‚5 ØhQʹڵÔæU0Ã×Ò›<^þýLtDÔì5nŽLÓeŠ”¢,i—bµ¶îöTJCo†Ú(V˜”Ä™WµÌm,vÐIQ·»GšxeÝõ9"¬Û>‹kõÀDÃrì¶õâ#Š ùå˸.ÿPgA=˜Áõ¤?[³Ës#t£=ñ¢6’ûŠºÌOøÍs—ä-rz"9þÖ&‚e‘ÅÿÖ}ß²·²c«¯C¬ÇûÈøã7³¸ ¼,Ú ›:‡ë«ìÒI’Ç8ã9ÃË«êºë9VM¶H»µ{8MÔq<¦oL¥†îß‚Hóý¦Ð8ȉuEÕWÐ
+°g€³–°Ö
+Ð"öÍ©ìŸõ $Jp®ñ |ÍÔ¸Õ‘E",3Èfµß†Y›ßÔ²Y‡/2Ö¤P‰•%3?éÓ-%‡Ó\õÏs,ûyÜ_¡cÇBM·?Ÿ›èpG„²Vƒš"{éq,ÄÎ…„Ýå~Y¥ëµÇÔnl—‘° ^ºvÍAŒ' ·;ñu+©ùS‹COœ Ùçv*ä‚î”)#ÔwU(éXÆæ:BC?H†tT÷¹”•ñ$¸ÑbŒ¥÷" ¿PhÊ,ôRRÒÛö[ÓZÕ’§6•ÂxÜFÄ¢ÍÞðIY¦º×<™¤€ßöÇ›•XÛgû]n"Hص˹ÉîòGº~ƒF)ŒÀË—ˆ­8K!:ó¦t3„øyQÒ[Fž7ÂlÍ•hfŒ¤?û
+M»d®øI‹‰r'œÆMÈ…‚­nMoL[î¸ùDe]¡!¥µî=ÆT~Uèzö!Î j¿xÀe(¬Ø(H¢÷£lá¢àöñ[4Þ`­ÃÄTLV›½æ p0aSiC,lðÅ$ &Zƒ ?Èi³B
+ØÇ»â#Ìé2Ü»R —êCB9”’Í…l@_‹¾-aÍäטŒÊŸ ©7XèÝ,¨L'²#ž3f=CH<°§É]ôo ¨TË–^ÐT7ó2÷–e…è"õFõRŸòBã×ÊšDá§|¾_Ô^¥Ò¨-uCàùÍœº;èã׾䦟›ó”œ^…aô­x„ÖD¥Ÿ—‹ ä;7ÐLµÏŠm ÅèÞ¬~s„—…RåI˜HÄ÷ƒŽöã/ÆK¼SîÛôx…ÑSÍC÷Wx‹Ô;¥0#êÂRCo,~Ü¢ïˆêr±®‰ÙzÄíZÈ9ª€ÑS~½/~C°¾][dŸSn½âçýÚí¹|)¦ŽÊ*Z²^~¾ÐÙåþ2âß“rèð¹R¬Ø²cYZÓg¾ÄY-‰ !´`Ò ‹˜<EJ»H`µ
+0•À?îÅ·ù°GYî!8Ó§kˆºoþȨ90‘…^YYÃÌNíº­Jt­ŠF‹Ö”÷ªÃ8^aü´K‚Ú¿hv;ìÛ†|ú³>ð­”f_7Vé"EaR–Tž/á21ˆž2y/ãQ’Á-bÀå– \•‰ÀÙEº:2ù;k÷t7¸×÷ŒÅšË$²M%~˜¼¯c&£Èô#8lg2Ê1ËÏÞtíùÊOß¿$8•d9·Ç…»/ñ“¿Æá`V)Áte^}™‚€=µ­áŸk G2ÛJŠŽº€ShM&ÕÌÙcLìÇCý…WC¶3¡~¿Ft¾9U­s;ðÑõD}&Ãs¡‚ÝÚÅP'™
+ÏO¿/¸‹§¦ÃÚ_f¨ŠE+²² 6>æ ¶óȘ8VûØhN–eöëÚ´YØ%• ìÄ}¢´¡¡âó&*g@ˆ°Y
+„xJû¡²É<o·sÕÇØ·…Æ:'ßj”ýAƒŸE¢Ö¹"°¿F⬭N¼ÅNd W£aªKáˆu|JwÞ+WþUU¬[Cqˆð3$ä÷Àq–Ð¥öxf@Fxº«Æiiå·,ÎdÀði¸ÃVd3?7ÊxÈ”Fªrõ3…(»Cãtå Tñ¢êÂÖ&ª¨~Œ=µTš“ÀÌ/®
+l÷f–Þ›ÌÑÆÚ£±dûAçâ¼´_Ðõ¤øqÿëY‰H5•„ÃÊΧ­,Ûžå„·ÀÝÉ/nuKêõÝ£’mb4¾O®›öèû&´¬d÷ûöLÕ7u0Ì=Ê~
+·üöÃB8Zlân¬icjƒTŒ (Ž=èžãДÛsK‚¯TÈËn8OP‚Ñà¤_Ñ[¾G¼ÑÔvv?ÉQ$ÛŲyåœÛ2úï_bECÏõ·•iŒ‹»ÌôFQ
+äªÞö4Ž4—”#Ux¨±qj:CWñB`Ø`d*—š+²ô‚pIËFÂÕ=ûpë1y`£¸”EôJ>†Äß08.Õiþ)àf5tÞ•ù4Ù•…Y~Ò£ “íeê¯ãKrâÊ
+áïß-ê ‹Ÿv Ð]œMç+Azs ·Ñu×_xùx—9åü|'“›RONJoiÜÚ2|SåYz‰S‚âÌ”KNþ¨ÕÑšO®´M²ä4%ÏpwñNÒ:‹m}Å$4ܸîj vŠÌÉã”÷T ˜Iæ±ûÞÚÇz<fÁ  êD[gvI¨Ì>#
+‡¬ÎèeOîRúMÉÙÒØÐù¹T-N,Ì›õÉ@Š{6¬—ï+_º ›gõfÑÓ«7Û6\[Ì’õ Qþà ÊÐÅàJ+<Œææ~ZOà)ÕC~¦£÷Däš6ºªABu Ç • uPž ²¢ÆͼM=…ãã3ñÑ® Ìû úþÈ1¡\žZböŒþC·ÞºÕY†ÌP±ƒð´G 9º™ÕŽI®É/½7äÕWÞŠK+ÊšÇuí¹òûìw\Û¤0óC"DNe¢Âå…€¯¸ÍGÊ=p‘„«B•,™ã=#µ+ ß «Ùüu1³WbòüžzÐÙô…ãúh1›vxÄܼŒÌÐ,^¸ û_å—õ…nŒ €\ ã”ÑÃb'šžÕ¿æŸ¢0ÅðŒfPŽZÕÎOUÿ̃>¸Á¥þUæàBóeËìú-þçJV-æÓÌÆñ†MÃÒo5èAR1ÆDÙd\»_îú¿CîŠmìx~ ­)FÂÄlCYg<9F½ÄÁ<æ±
+wK‘=‡Ð\ërÝ8 9oïhoVbU L"çX'$1£–öpmžáÔ~5J)·TÖ´€F^gOÁ˜*ª‘
+TÝR*EÃùÒÌ^tts+QE%ªNÊ‹‰ FBõ:y3Qf 7š=Z¿ZÅŠxa8{hÌ
+÷&çªpp#ÎgmoÀ^¢Ç=°Ì—v…ÖÖÏø(Tô£nÙTÝ]š?i¯‘¥ÆálÀÈt üC2?öºD€Q£¹È{ÕùÁ+~xèH¶ÖÕùÊe)v×ÐñŽâLð]‘+$àå
+Cª&^9x€²D%BVßKãØ;•eëÊÑâi<o$ýÆY³.çAw0²‹­hW_iƒÞº„©²ÎÁءδðÍÛÚhTÍ×ñá†u9âÞæŠDò îtꓪ‰=%*9*ß “(ã[È]Žéb†þ‹9(0>0P‹ŠÞÌ‚ó”|ƒƇP„‘:££5q^Ÿ6*àžÉ/_wÍÇ £„]²zëê¥ZlãóG³kد'Ƀÿb Ž.uRKÄfSAÉKõ$ ÒWп)%J5¿ÆÂ7-a68.œ–ü®0¸Ò’ÕYŸÞoŒoô¡åt0~)J¢²‹º Éå‡ü ¯öd…ŽÐm`åÆF?bÙ²[yò%]èÁ‹M¨kÃÍ5åc²ý¸Hî%ü,ëõÍW^ÒPÈzÿ&:[=u(áƒûkN‹úïþنܒј5"®d‰}Q-î‚Î,ä¹rϪ$È‘VT|òa ÅÛ`Ô¨–®ï[Ì%!/†øÃ%C³¾5úKÃåX€–]2@¯?º„öÁ¾O4}”ouâÄöñ‘QvÖùý]îKY3mî²õŠÌrSµý¿ml³„l/LÅPðVH) š%5 @GÊG—Ý„ã
+~KšcE-Wà?RïEÑ—¦Jª¸B8qžAÊ©ûTõI¹Úž¨mYÄ…f@¨ÂãyÉa+'ÍšAÁ¦ Æ1ØAÑP»¿VMYˆ‰ØØš<k2Zˆ\lcîf d`+ñZlüðï_³®~ÊéÖ \'²áeÁOáœYÕø6‹¡y ‚| ¾ëb×ÞöªBN’ë¹0A•™ùŸàùû*²:ÃC¬È÷:b ö1 Ù7óAO ê÷–-_!§ù5M:ÄÖ‚¥(óHï÷¬PE“*ök÷z¾â¶ËŸ5-SQ”J)ã2Å~åÄÆF'…ª ˜ß‹_ûuþáN”hŸŒ¶#!Â5ë;ÅÝ$ÌLQ&#,9õLoëÝ·à=.|Øü¦‚ì¡Ý-†ÁÉ_SôŒå´Çh–•€QŽâŒ^×Ýb¡!-”žeøî|Ýn2ó'׿±!ÛàH£( A‹ þœ ÷²E}bËj*w¨Ì{Üáø½ñPXUš|ŸzH¢ž«¨©µf-~›M†‡–Ïð¹˜âmašXŠÆqb~
+áVÖAOçi0ÌuMdHOŽe®6œÄt‚ýÿ´s8!Ì\Ÿ†ïÏ£Pw`¤Ý 2F§ŠˆÑ–U}—'–¡ãêPc“†ûU¨t徫½ukšÒ._Ä$3™4±Šê»S3Àл¼|ŸÃGÃÈ¿L—ô
+·ñ7»Û™x?Kʹ;yƒBÒù°Ìòj±Rè°Úíñ¥|¿{´“½’QÅ}[pt.Ý %“EY‹iÓîír€%Kuúk²ŽÝ•?çG~­*€Iñ§ËÐ yAçOè,·ì°= ÅNñ —#|Ü…ü]~¤Á3YÉÝîy
+þ‰Ô×þ´aºf7“
+Š¿Ý6t^ÉSáF+Rñi}ñ ˆ“Þ ÒâÁgõƒÇL&3tê‘òžOb 9J¸³„’z›¥­(ÚmxŠM ünKöÿV
+:h×ËÆßF¢Cf§ Ž2e@
+ߦޛƣk¬’‘Õô­…åÛJœÃµ{Ñ\ çm?%AQ÷ cO•ÐÖ“©¥>"»ÙQ
+Í‚lÌP"¹ÄB¨DɃ>5¼ŽãFvÅ ˆ’&rË¿úpé^…’yT"ê…˜=§'è…ÔNÙ%¯n-ç˜VWŒ­W|³Ñw
+M¢3ÙXGÔ$!bòm|âM¿•ÌH §Â݆&gõ!ݽlÎ+¥°À86æ6°Éô1,Ãú+ÿªgÔ”49aö`ºœ5“Š.t ’´_{š!ô™\¦»ú‚?%D|“†+ £Ø‡{l‰>m®)Qzû`ÖñÔ‰!’ՆƬ’úSº4ûõ7v¸ÒîÚ,b“ã|'kgòúA]M¤ Luž#±Éa ãGñ‡Ô Ì&àùë6ÒÀGØö½µØÀ/.qÖƒ ~R¡¼jÇ{aê•&CùkM(I>ˆ¹çBCeOäîžsÝéõ寺LÀ°&ë¡¿Ç" 1pŒõHF <<¼„>Ìw}Ðh+qö¸œå¸ÖGœ|©ÀUò5‹‰Ã(¤”3q«™m¶«Gߤ醽ç&ÅoUüÂØ*%¡ ¯¯p’»«‡ †ÅÖ½“ÛÙ4þ„Ý«&6hižÄœ·&ûYßå®ÇßÃ̪÷Ñ"[e,dÚ—&18í™Kåu+NSL„>Þ
+'Èx†vå¼ðÈ–té; Ws¥2Ø×G…)ӂƶž£ãD©)ˆœsò˜}io±]™M#(P¸s¶&ÆŽóÔý±¬ì¢ÿ\}dUã'¯í}Ui`áXpӒȬaAÖ{^YQ{Œ)ÁTpŒçîºÏ
+íó§‰î+Êi ¡­‹U Î &ÿåÐ!Ý3ÂežÀ7Ž¡~ÎÛ
+áÄÉØõG¤_ìŠmYµkŠµ m»EÔëÃ}Ô…4uôU¹¨ã1(J¾”¤³ìùc÷¦<w»ÙA—§ú—ña%þøöÆKÍ+,D®M\.׌¦‰Üšn¼ˆC»S†eˆœ3Ì*™´Æ<„äjjŸ>ÑtÚï“殯 €Î· B#Œr‹_Ÿ|f™ ‹
+ Pµ¥ŠÇ_våž\8ÖÞÿ Jt4ö¿ËáÚÞ˜‘t݇P©ÇHB†»šCßå‚s»JgZTÂ*kðæI>íÑU£+;È£® Öù~TCħp*§ ŒH]Tý4¸ßd4s>ö‹È€ª ìÙë5U¹ =ô—èK5s}°]½G 4OœÊÂíšÆK°ªØ®» á–¬)J’ÍÔ`PÏúö;Û×xÃÕaS\2ñË
+<ÐÆ6Óüö•Îyµ=ÓÍû’ÌMdNa–´ðtªF©S”2 a¹gÇþS_EiD-"ø¤áÙ ê2·`{ökO>&xW`?´sîQ ±ñP]Úh.ü`ôÒà›köRðã·¥ü'T’
+‚Ra”Ú@#Ibð"a~«’µÃÿuûqŒJE÷ˆK
+j®Þ#ã¤lLÝ¥®@ï÷‡?k#éŽK£Rõ”-çQeRù&s:b\óVbÝo&Y†3OÌœÃÕ
+¯Rw´9/TT~_…6—o„»’S:ŸåhÄU]ºl³îWøê˜×€ÃûýáÕ·ë»QŠ©qê­¹#Î&è€D÷ã«õO1ª@QøH¶†&_Л"ò×1ï#¿ù˜¶…ËX•«Ò[¹ôŸ™µ´O>¨½ÃV͆ªá´’}eY­³gPžx¬e  ×—CáøD5!]•e 2vlGóY6=×\47" Zç†Y÷<Àÿ‚\`²eäJªøÒc¨#ìÕç—uÄFÌ-¿<+QAè0ÇUhÙgÊíë×þbë\!ÉÃ8“‰ WA»š¡Ò'[ü¶4ÿÖÏôm8g
+Ú-¥£ƒ@Ùhþ»yטÜexì—ÁµÈw¶:ÊŸ¯Þ_îÑ6Ï‹ÜïÉD˜Â¤KúO*”¨D’[†æªc;¿úü Ÿ€do•ã0î(•SáŠÒôåÓ”ôi›ŸyM…—Ôˆ½k;žŠÜªÍOÒQ/ó'«"^Õçê¬CÑü#χÕ!Z$A—~œ ZÅ“t'ÑÕ0…¤g¥zÈ›Sq–2*IäÑË”‹í¯SõúßôàÕ !Ón²‹ëüEìdaü^ŽçÀN͹¤>¼å×ô~ïañ!mN£ç|c¢Ç“‘ŽÞ¸8ç1…ž‚?]q­È|Ô•×
+͉/‚ù>}>_'¤}½!¤,7Ðë:ú)¶¿²¬„({­Xy
+ÊІwvæíø(ð€O‡îúA‘Ép=_ñÝ
+‚'‹{YœŠ©[‚¦ÝäRy‰–ÄŠgWã´%©Êíèäÿ|
+ ’äI£iþÌZât¢’T*'§§3z;—01žÙo‡f§‰I7Æš’ü„Üߘ/ÉìË7“:±yƒ¯áwdÏ|sÖ@69TÖjÚóÝÜà{©HyŽ‡½ÄÍ©¶a©-ï†ÄVCñ.þC¾²Þ¸ßh,ÔFÜÖÊ-¹éObv]âgäOZ‘[P©‡S¬\Žw Š’èèÐäN´“Ùt£
+¸·ó:Óõ ˆÒÇäxLåSJ®ñ¹=÷¶çNº€‘PY¨¾;ZIr{<ÓÝ8Òjðú5%1ò)E‚Xw¡À‘!KÆ7ý¶E„{VýÒž-ó¨ECÖ|™š]ϱˆsÃå+/Ì÷±PÅM5Õ’qPqí¿]ÿÔÙ-§ŽK“UÀI„y¯jY—·qû’Cî +sƒìñ¾J' kìÔéõÈ%J­áËÕl"}­¢:s'·•0Kl‚¹^
+ËÜ:ë, ¯è¤f‚@#Ò#¿ˆë—›Aóv-5ÈÈ!"ò ªéêé”®Ÿ‰ÿùŠ ¥Z¶¥Ä0I>ïkÜ 2#_çî*Ò.©k°ÿÿø!(1yçÓ`âLSGoÎꙪ£!nwuÓ˜“ûþq1„ŒæÕ'5u«¢›‚Õ2;ÍÔŒãP('ý/›D5ìÏé˜|e`̤f–Û%µÆÁóJµBnàX7Î̼ÕM‚¯Œ¥ƒPJ¢iϵ^Ø7»ôiÈFÞ2‚Ô@–kÞZ믙‡ð¹lO+Z£t,ɬi$k»x§¡¤4ñR'H³®lCÓkƒ¨iÐ%$ÝZìç˜<Ê;wL·%?ÆÆ"h€ó3ãY•wåw#?¹Çâ{>Ín‹lÜFŠ€¸6UàK;cÔ²Mª8çÌ7rï½ìeÛM»¥r‘aK-èÅZsÛ ê€4¤XžtŽG#~\n[u–0>KWU._é‰t©/ö¬ÚŸYK<u…¿6sl?¸Ä½^(¾Ý¦Ÿ~Ó«^…Hå5©Íùƒu›|ªÎ”íŒp{`jÔû­0Å&£q’=¬ö¯¤ŽZ{‰¯¡Ô•¼ЧBö±¡~›îŸ¿+U÷øŰ°b<öìš·-º´¡§'LO‡03›xRfꥨèKq‚Ä}«3êû+`sßA¨_Ut˜‘wc(h3"!n„ eÆà3N"ñ¢û¬˜…B€B)*lE@ò¨*Ïñ€u®Øg˜`ðÏçËvób>Þ†ù-~¥“ÕT(–ü¦§yÄç±8+ù‰Ò‹~‰T¥³©ï¦bŸÃö8gé\ž·f'n2šÚeNK
+2MHÿ?o~Ã|lî†h–y` í5nìˆÞB&Öéu.£íÒfÅZÐ,ÛuÁw"94›èxâÉåÊä’ HR´ rouþSª¦±
+
+æK_ÿá­‡)2«%i[B†Òßxò¦sý€èØÇè,?ÇKˆ¬~ªnDÞoŠ©Eá÷°
+͇ՔâòZü¥à° üŒJmîFº…å7»8ÙÃò£5à¡gÏÈìõ;Î× êAŠ¦Œ[hòÞlæ
+ó^ȃ 䞇0‚oÕ’uö1™ùt·-šDjƒ¿Õ@üɬÐ8æÅ á®ø^p‡?ËÒÐtK€ÓêV–ºÂ]W· •+”y9®Ëí‰o0Á
+a/™e{ù±To+>Óõ£{‰®°ÄìbŸ3ÏDÛ{ï£Q¤œ{¡ùáƒfÛϯLiNÉve%V ½Õ+¼ðIx²}„$Ïr Ç ó<ðŒMÞ}ëƒÐ>â</ÌÚ£A¢§ñ¸Âú¨˜kºd¢H}Ë:,²Þ࡯»¾~€eÛ 8=2PØGÍ>ùÉéej~‚Û3Ÿø¸—䊸NjµÃĆ$Ð+7]r·ƒ¼˜ñú…eᇾ Kl®tÙÝwoÒÍI¹5ú‰Xa,Ékƒ"¾bÅæ>ÆúxVKëì\­ú¸¼ý2ë$6*z25ùóý5>F ”"í•Mõ5£s5F>g“[þh 'Q-õI ýrÊ8ÝüŸãÚe'’SïquLÈàg<š$vS7Æ]ÛŽžÇ⺦g•Ùæå¶o~¶±µÆ ä\Є~ýqÞÎä)ü0' ¬cœ).|¸É£¾¿Ûµ%†ð«ÝÚ²eлiôHÙ¯F,ÕÁUO¿4dMPßH’˜ñ‹SÀDOÎ
+þ( t~)8ïœd¢ºY3àÊñKªp–|JX1 ÿù~ìÄìwvPV<• Ëô…*㌗ÅõΩNY†píqÑžt»é5ÈU÷
+´[ o§iÀuc³ 9U…¸}£pK©Gš.âø°¿Ó6¿ÄÌ¥¯žqÖ}knRÐaÖÏìvÖ-pÖilQ**æ¶ð€vŠŒ»P¦¢—Š`Ú6Xî'ÏÀ6Ÿµ›ñnèÆï¶ÉMr[bØ]vŸç&SÁh¶iOgÛ—{3Äeú¸4²ó&‚pn?ÙØb H¥Z\+ÏîÚ¢,#9IAü= £Ã_êÇ:μXÜÌ×ò ±l4ùðºæS²ä¸Üw À· xMDÇø2(=×<Œ!‚<>h[ÆÌ+¿&ÊÒ=¾¼òÅ@9m´ºÇgúp0@tù¥³v¶\#úú¤ûãg^V kÅ'‹'Èz¼j8vÕ}‹^œa7v+÷ý©¯Û‰q,Áä±e9/þ|ío”&žëÄE0ýˆ i{9_•¼/Ç{3‚;¨V=Ïö+ÿc}ÿÃõ}Î3RèU\gJÀ§°[D8†÷êâèÖû6ÆQóBÓÖ2©½ËX»¸Ó<Ë-¶´sv/*\¿½ª
+ »A|G(Ïè‰Ý• VâO©P.÷ÒWŠŠË¦q*qþ?›)6ø0d$Êz•cO¾P ëM„q«vÝArŽÆß+MAŒúŠ*³¬—£#)öÞ¢aŠuMãhò©tIñ#ò%Å׬ù¶è‰—W­À2ŒC³<7ƱZ‚AòH¬ö
+ ëqA|×_•æ·XÄÊY¼eÓù8©y©W¡/Ýfó
+"lI§±4‰‰/"¤Q—âsàu˜ÄH”¥†l+f$hò興ð•ŽÌ~ (»êeY«-Pkíz‚šóO 9 2x#ûÕ1癹zÎ~%æ#¶ÚySmK"SCøçvØu$ðÅ›Ã'êÌÁ*#¬¥¿ô‚-…$S>I¦Ui.çÕÓ§ú ë–NÞ„ýš’ªÉáBïKTë²Ã&¿Ù"´`°û{µ–ƒŸÞùaLlØ&äÏsA”cÌL¿:º~3•„_ÍІq*»+Úú®@~ÿp°}Ù]|à…ŒíðÅ'än አ‰ìs­$V9&äà×HS(˜’]…¸$„¤Lìæ*I‘¬T¿n7qÏBìa•ó6¤ ›Ó±<>î´Ý(Uí%µ;Câ0mŒ— lmanB±û«œí§€oKLó̇<-A)apõSí>WGyNâ3K*\¤[•ŽF'pþŒ×D-°§:¾Œv\dÆ@… }Pá'¥àKUKo_o¦gþøˆqñÅ
+cÔ…üɇ§–õËl……;×m[–B(Œ…T8[ç¹@à®v1µçÚê•ÌÐL‹I‡Q–H™ºë•fÚœ%ô™lº 5øxG¦øÛ‘ï[æM3.ÍB £–ŸÊˆu³J¸C¥¡¬1\†2ÁBŽ®0ôh”q¶Ëäø^<Å®ñê§\eŽð$lÂô·
+æ]¬ÃõT "tèmÛð’IͲ+â‰zXÌÏ@ ý|O%Û±ûXŽüAIÃ`k±ýî¼ïSïàʦ2û…Á%÷?£&K¼MDmªBý4l@³úñš:C#Ý0!K¾oë¹ðî\§ß3û£}™•:nrNmÌò×"xB1êlò‰‚¤G
+qSi¼UôÖ{“ëdX+}{ŽDì–Ê(ˆ¶ÕSC_FS‹¥Ã ]Û¢„ªP4Ê-'xL@øܪ¥ºø$épÀ«FMëµQ7Øþë! ˇÚᗀǬ°éP~ó:eÂïÂ6`°­¼ÿ4i+˜w×H ,¼æ©[é-C¬­Nö3mó[Ô³"‰rœ´é'å¡þ
+ÛïMFÂÀfÉp5­ÔgÄJbñ"s
+ýZPø<)jeºCt1Mk·"A6W;Í—Q\
+ÒF­ôn’N¹ª^bå£P@(P“#í¬¯F³í<J‘”Êà?=óæ–4Uϲ)rÍf€Ç ë3™é‘|ªVƒ@:ü3‚
+v
+,½«
+/Pý—fk]‰)©nm'Ý‹#à–Þ­b•ÚP%²HPÐ`bµ²ÛˆôÊþ\‚ºú3ôsk„¨â}ÖúгW=MâY8¤Ø{Ø®æß|¾€œ*ƒ°Œlˆ—FÙS;ÀÌÈëÎÅ“Üۗ؃ü‡EÃõ½p†ˆÙÉ3XVõñ•ü¯¼8VÄz"ýUÄt£p"úÑ4i Ú­07O–üï°côà*Zs5¶ˆ@Œ¤v«ÙQŽMþ«]£9„r5BZÅnzÙÕNMѽ{ï Nî}å”Q‹xv^æµÔØü6Ð0û+ýÙ¥r
+ÊÄ©qˆjm¶?˜^ïÚ×Hã[ 6ñ>h
+àÔ*bŽœìž YxŽ¹¹ü2Ó=Â6ÿ{oý»krÇygªún³¥;ÏèÚR|S ‘šŽë(hoˆ~&vY¸×²’JðM‡^Ÿë·;ÁS¨ÄC ™<µÙËÜ…"
+þ›1¼‰/Oß–¦>§ü9(êÑOfwÓ‡)Õž›í 8öYÍ~®âèp?ÇRBË.8Õ§”ö,Ž•\ۊȼ4ÆÐ÷: ί[[ÔžRã?ÑFpÆo Œ÷ç`{FóÓâ"Up+­âƒÌ¼üpù¶g•†h3 Iô¥ý7ÅIq® Ž—¡98e…‚°²øpìlLž ¦û¿¿ÊuzØá]^|Y“øGï4©•C»å^«3˜‹”GÀ?¾a¦Äwõ0U¢Ó¯¬ùè%¨Z+LKûï†
+¢òÒ\ËÞPÐñÉŠ.ü¡¡=Ó›Æhs¡àDOàe=
+ÈGÑcFÚP•±^×|b‘±!6JÛ|…i¥þ8›ðëËÿ/3àŠ$y¾vG~Q“”CSym†ª^.¸´Œ©{D$ɨhðÌÛà<|Íí ‘óîÉ}wÚ ÒÚš9¤/j4/¯¡òë)ªò‘jÁnjyÙe(t5ÕLíÕðbŒ•–­Ä—xQÿzxè}÷v &^i 51‹[®T<DÎMt"%ñwñÐ)%õúµ[ #×.x+uK@— FRˆ?xrövÖÕV ~„b¢¯-×WÎ$”tñ„rî/p‹79ÝH¦2µÇ‡¿1ç¤èÔæKBÑÆrb·Â“’øô³¤½Ò ylÇÞ¿*Ù„E©Hƒjd]RÀèÇÿWŒHYµ[e³ºé
+xà… VeóˆX9Q_
+±¼ï´×y;zxž±æó {w{"¾^§¶ØñbqïÀ[Ò]Q(==‡…ÝÖ2£‡+Yì=§ú;=6S:µy‡_6H}TÏ üUÏŸ©Zß?€óÄÎYúùTQ%Yð½~qc§#©çPM¥ÔG¯èÏÛØ€‰ü#¶apí^ʼn|¥Ÿ5KÒìó mŸ˜©íÚi·MguMêoA±™VDNÁœVõǹÖAfÿ
+‡˜lɶêu¾ãx¿…Á1a驃úÜöãýèó\ašüJî—×Ü7ƒ HØq¬o4dQ~Òßóìœ1üÀÍÕÖtKÞ$EÅï÷}ªqgBfæ]ᣤà*‹áiÅб dœqñžc1ÕTæ‚’BñàZ¡£ºgG=ì,¼ÆQ}ù]^Q*JÛ]SI\[öbzo×ü
+·^?I!é ›àÈ™âë»VØ›EWÇ,Í!¥%&8äLá¯?Ĭ*̪cfæòJ`:Ãâµ™Ä}éÊÖ>‰¶ía_± "ú¿)Oö)âÒOK†ÉO}B‘ôIà „Ý&Ñ5kmôGG­àÞ‘Á% Ià`Ù‰´‰Ñº]3±ý¸ÉÛ¾è[¢»@õ8õ\Õˆ+s‘8FmådïɱŒp÷aP·y8Œ3Š§ÉÃÏé‘+4
+Ÿ<jÅÕ+Ÿ7Çâyˆ¾”ú’ôAATjÿ¬
+V²†0Ñî©ßb.& Q³~ºf˜
+ƒ Jµr&Á&e.1òémû“›Õ[uy¨•©Ða*PU–0Ÿºgðpߧh^`¾™
+*„#ÇêÔïY=`âÔ™ÈS¥–ç·^”ê»5Ü÷¿!8’ZÞ´Ú7y¿ê¢ $ëh·´ýÎ9áÎÂüÄ”$7ïÝ †™æ,R{iû„p‰å1G’E
endstream
endobj
-622 0 obj
+871 0 obj
<<
/Type /FontDescriptor
-/FontName /HFYFJK+LMRomanCaps10-Regular
+/FontName /UZPDGI+LMRomanCaps10-Regular
/Flags 4
/FontBBox [-496 -290 1501 1100]
/Ascent 527
@@ -4123,44 +5547,43 @@ endobj
/ItalicAngle 0
/StemV 89
/XHeight 431
-/CharSet (/C/H/J/S/W/a/c/e/g/h/i/l/n/o/p/r/s/t/udieresis)
-/FontFile 621 0 R
+/CharSet (/H/S/a/c/e/h/i/l/n/s/udieresis)
+/FontFile 870 0 R
>>
endobj
-623 0 obj
+872 0 obj
<<
-/Length1 1941
-/Length2 2670
+/Length1 2102
+/Length2 3356
/Length3 0
-/Length 3819
+/Length 4555
/Filter /FlateDecode
>>
stream
-xÚµUy<”ëÛ¯¤4•=)â)†±ÌŒ±6”} 3Žš±”Ęyf1cfÌ<“])©l…l¡…$âWZ5R$'K
-•ci!É©”:á÷ uZÞ÷¼ÿ½Ÿù<óÌ}}¯ïuïk¹¹Þ„¶¡ñ@GBã0æ
-Y<.Î
-—¸`ˆÀY
-W“yó`œJ˜Û¡„Á‰€Ä19óî€Ú†IÎq îî ˆÂⵦp©°#DDBÀÎ? M{^ ؉ñÄoàŸm¾I·åÁ'Ûɉˆ¢„üZ1
-W$ ÿ!7?›Êƒ[M ç#‚
-Îö_i° ñÝÆ
-3h,*·><>ˆ¹èÎ\:ÀÏ›a%ß ¯M2ÄÀS¥.Çå„4ŽÀºñ ¸EPÿ?“÷Ë^Ž"Ç¢þ5·¿(A,NØÿNùÅÕ «G¹ñAÎ/KèÈ
-iî,ˆÊœOõ¼Ý¢ÀóaÃep@¸Ls&ñÈqàÞ†ï'–ø†Ð8cÓ_0¸m©l.(Æó4NÌ/ÊájˆuX/’-y‹­Þ¿·Óœ¿—Ê£±¸ ÀÐÄ ”0„Ü#†&&@
-<Öbšíˆ‘ÑÌù÷3ðC0Ó¯ÈÜ>?G3þú)œá/ÈwÈN/V@Û™Âù‘b ‹Þ ŠSI²æª'F~.€»ø’š›6ƒïùz{Ï­I€Ç½X4ø¿ë¸JV¨<*8ؾýòýiä÷)ÿmkË @hC¼)\@c8ùff†Q?Q©ó÷èÜ”ÂGø¶_b
-8ò¡d×Ö©<ê¬[Í~R<’Hi²éѽ矧tÇe ¿±AÖ糪kIFÄñ¨©EB'Ówd…ÓÉôú/
-œ¶:”wÀÔcf$ö*p´&‰=Õ÷®¼sC…w€ÉeT¶¤ÅRåöx´b éÁÐ4Ç•ÝSòE÷µ×–´îÄçðŠŠ6™j6Í1Ô¤††§Z+|egüÚM^݆¶É ¤[§Ï‘¶ïÙ„ÁúWõßÇõù¬ÎFŒ„µ®¿šÐŽ*F?~³;ú%e·¯TD[ŸVžzA¿ßd˜¬®QÉhóuҔſ³|¹òv§þ:bJ‰ôö àèd¬QgÐß³LZO½¹5!qJ,@<3Õœn6ÿ K¯~ºÜÄëÓû¶i0÷“‘“îÅïó]ùÅÆßr€>]y¸7‰:¦Ú98hép³u­'õÙ­t4êÒÓ7œÍ’|—^mxøÐöñŸ™-§8ôˆŠ­Y1ÞNWÆkv©Jì|A¬Ùlu»så½î¤ë6÷ö_nyn»p*9øÆß»ó|ýøSy|zÕaÇ®‡¶<lå'Ë‘¦Î,³
-sYpëY8»J2c`o4úM¹5ÔW®×hÇ‚¢Ü⦾Ú5ŸîÆCŽÅW)+å¬E®ÌD2"‡ƒ÷Oû4¾*N(Vî*›u8ÿ²1 Ç7k°nõãÃYËÔ¥rù]àdd©¬òlêÓ/þK,ײ´*C¢Žà¾ñ» å:~šnáUR2÷VÖ·M=­k6½r!+ß0!úš#=fuûF.’¿?Rú©.öÃxÔx0óŠé)#ÍÜýZ“cãœtÌ— m…Ð EG J‰úÙoÍ;3IIhW•‚ÕˆOOþH®MŽïPjºá«[Û{à]0`+8š¯/«VtO?ËѬ©kŸBO©«³ÕlÓžÀBlXQÑ;Ýp\¸ÓÂÞ ïȦ՟&™Õ‡ÖE?X™þ›ýù[ÅÛ$N”¿.ïpRYTѱ½B.&ÉDô·‚Ž­Ùv/¦ÏUãÛ(ò•¹×n$¤e,zô±àãrü_‹dú¡õÝKÜ~çÊçÚ’ÿ¦,ö)ËЖY¡™
-äGÖiH
-ƒ–[Ûxr&ÏÒ?ܪ{’^]‘R£Ó1J²[3®u$§t2Ì¿”ÏõªW9uç“Uj GZŽ½"KTõc^ïómz1þ¼Ë­¡JÂ9¿DhžšÁÁÊ únsô,>ë{^róÇÞç<¤UUü¶šj[pÚ§V Y–ÚKCʆ,»°øXÄnÁfÇëË0Q#.};ª=´“­N_×f„7\góŸ%*{0Ú}ªÆÃJU/ì¦nê 2x£vîs¨R"Ö·A•ØrH?Öà q›¶f:m²õi£o:m¯\&»Í“”ÞÁU<òÄ|‰éꊜ®Ò&ÂS£îôöò8+¥‚?O!nø­¢tZÝ¢iÖ—:ÚÂÌSs°º7;P»>Å)©÷Ë€WÏŸ}Bs‚©£wã䪮=(¢ÄÅ)V:½ªÅn‰Ü¬xbùi ïñ·Í[·<C†ö<·u8`·‹SyQ:ô(¸¹»ÔÛ¨•Un1°lô¥Ý¸{C4mµOŽ¯ âˆÝ¡v“|OoÂÈ
-÷\ö_|¸ƒ©2ÙºŒœÄD{¬WÊÞÍjH{ßîY}%QÕÉïPú­'¯žù5[ÏìI°þ€› {QϬ®(ö­-ÚÞ¨>¿™¦sÉ_Yþ~=(‘ïk¡õ°¥;:ÉëŠÔ®àþªAåêQÒj}DÇ€¤–¶}@R¡;rýÇUgº”È(ÃÇÆM­Æw—EiÜÍݱ«eƒÒš‚ôgPn–ÝøïSÈ N‘sóÅdhSæ î‡—/ÖË û„‰"pRÝÿU|^óÓGK¢µ5Ýs
-þ¸f_5[².î|ÍêæãÁëËËÒñí+΋•š¶Ýž ?ñ”ŸªÆ¸æ´ÝHS´ÉZÈ4ß—ª±æžËÅ
-#N]ˆŠ¨< V»Z>½^u{JnC’Wñâý@áù—¹—nÈz½ƒa«»,M‹¿ð×Ý,D¸Æ¡'ø¡·išY•-ÓDLÜO¸fÒ²dOŠâkõRœÏg¼áˆËßÂ3§6à™‘Hg÷Ö0–.qN™+jÙ_r:qÔKÝ÷.çÆÅ¡á³Ql-‡lÂA¾™iïô’è’Í߬»xv/é¦ÚÅgCrvÙöÏ•&ãwfëS –aÿêt ìQgök|A%„Äâw$ÕÝn–'ÔkÔÚ¥ê&Þ^.uvfýó5æö»ã m‹ÊIcÃå_Ñlb³jä/½QBê·hÆ›m
-—~–õ¾Ý©Ë²5›ßú›µ¸?Ò/F/t ·ϊחà‘ÜôÉùiã”z– LRtJÚÔúþ@¨ZÕDî‚\Dº„ïç*íã;ÞGùeËP´ÌÏ¡öƒ ÝÝÿ…ƒ¨Õ
+xÚµUy<”ý׎¨[„(Ûl…1–±–,C–ûž3÷˜aÌŒ™ÁXK!„JH©„dO*²Õá¡"’=´(iêIŠ
+ï=zz¢ßû{ÿ{?ó™å>×¹Î÷|ϹÎ%yG 3%
+ÂUÌʃ#…ÎÐÀÐ!$É D± P#iÄ@ƒCGCƒ‰Ã6×l1Ø`J=˜`È8ÀV¥  )‘¨RÈ@
+È!YQ~€!P)!dgü›T'&é‡;@Á5Ç0ô®½££=‚!’¡^cÈXÈ‘a„Ñÿôq*?‹0sê'Dû÷˜Ÿ©›S ›í'EÇb"~ï†FZU›µ×ÆR ©ÑôA
+éâªai¬¢@Õ!k2˜ŒoN<3K{#
+à1$:KăÐ_4 Z½XûÄ×pD,’>4>|+ÑmÈx
+`øà eòúGªÚšÐT©A£‹£I‘
+Ý/äôG'®È‹ƒ¬Uˆ#g‹®¬­_’ùçïeåÙ…A£ƒDôçºÊ’ÈôÑ‚fÙ¡×Ï_¾kPúµ†V±ÍÍ)Ìh m]@CÛ)L꓾¾vì*öÇ¢_Y#Ð~>s¶,
+ é¥øúCyÊ—(öûŒ|ã²ãÉ—=•ÄIKã YU½ŸpN{ŸcâPqRBH³ž|wM·Ãy¨'‡Êo+¨½±Í/ô*ÑíÏk<Ù( ¸õL[6³Òµ,‹|ÌQØ_Þø´€7¢øü¦´…ùDxû-©'}·¸Ë bÇÓ0­fÃ;ü “¶öØn Þa û|•¶+ω>;ÏM·FÌ>¦/f<Þõ¬ˆ&D½?%gYå¶Ð6*a¥_„J¢m;~^j¡Sçª0Ø~ä£.âÃü´â¦žçxïgå^…{×ã±Ãﲤ)\õ¿Í=:vÏxi“úgÅÍiG¾Úa=»¢bgý¶-š&ŸOD¸-½I¨N4¥ÇÍÎÖô)Ôyè]W=Ãk¼Qr"˜'díòøù"É.x¸üûÎwû&Nõ§}.53;-kÖMg±Æ• ê|…—üîé½½ <wÞÌ'ÔµXêâuÐDæ_ÿì|ÔG"‡ý&²Kž]{ìžj™Æc¡÷áq¯1á¾›¢»G•ÏÓSøG­Ú¡rŠ7»}­wÎîy-øgŸº êd¹Wpb.aJmÒß½Jh—\û¥Øë¯2ÒÙ“E|/¦w,¶}Þ‰oç×óXøÔ½ž[бÞy5EGÆWð»™ÿž übeLÊH:vFºorròn×vwìËŽl Õk‰m6úé¾kYCCæOÿ:m°gž„®sÊ÷´¾Án: ½~ÿªi·éŸ}‚ýé-‰»Gž]ï|e¾°.?úÞÝpdÅmvb‹av}ŠÕáê}C]äÐ —ùK˜F"#Öu¼Œ
+®ç-4Òxʵ‹é+2∲ì1ÆHv¢¥¢$ì
+ñhŠÒLj½äÖ¼íJ‚§•ch)!ö
+|î¼-;V&ù°jYñúNÀ°|YKFâiJ®"Z¤ä¦sÔ‡à\LBXr9sü»ÿ†=Û‰Ê7™|a½¡£ìÇjÔüv £ê7m¼Ý=?~«q£:·PûX\ƒ>^âžY‰z$Fh|'ì3;–J¸¸¨³ãÜå¹6)[ó{ˆŠ(³ºäDQ%JýÌG£¾´Ó.C.vRE| ŠcƒÍ©½[[Û|ÕáÛGgCsÚ‰BuaÙ’õ\+ýÖ‡‡E‡+ílL—[Ã"KJ6X쌂GYs±(Sž1­ s„Æd™¸Ç‚Ù–eÎë/Ô¼«éµ–â®ëݨ! Ÿ®öMTÍ\ß˃àÓ&ÎvÆl¹y®¡íØ©î'_Š¾ðþM3ÎÀ'Ë÷o@ß'o9giŸñ ÃãS•£²Y`G&PsK±ˆ—ªÃ¿×Ì4wÿ¹ãÖXvcÝÉ&µÞi‹mÙÊÇó*ç’ÀÂk…†ç<nK]|´L\–kškÏÌ[ ¦\Z=þÝaßÖ)ö«‡hVýz›Tà t£ÌLdÒ¿ØÙʽì²oï‘ö/#¥nBÒR~Nå¬u>ͲJU™#8%áˆ?ªy²¢Ãi»­ZøE5cßØŽz7º©d˜æ¿¨ŽR ŒbµS_¦IºÞ£n÷ø+ž>rØ¿7ïéùšu¶5 #ì°Šª×Gtr6|
+äÍFyíÖ/='²²Kj¢¸
+†ÛüFuß0ábÉÂÔ“ñæ©æ*ßÛ7±DÝË”¹€’¯Ä륃B¦-RnòfŒÊ6åççJMúäZ~@v,Ñ«jJx/ˆ1Ö]]·1™¥­ì“`ôͦØÈ`ËÐè§x./Ë$±¸¬:m)~ÍWr2-Ñ
+Ü¿w¦îØy°ò0ZFiâÊ¥Bó˜—5šêäåmÎöÏ;aozÙkS›1¦'Ò6à‚½‹¼Xâ–Ø/Ò²©Ü¯(K™O7‡¼n1&âÓíqU#vrOÖ×ì\œDÖülzXÒ¼Ï3!îÚ<ÜøÆû§ž’3ä¾eQTþN [öŠ~¯ÔæqðÙß÷;Ï÷}JŒ û0Ç¥f9ê9ÄóÙÞ¹äಣ3ãÌ‘A;}Ó(œÃz8üÒÇç^Q<*²üwj‘ý®Wî0é÷&vbg4ö~™t¾˜9ÜæŽèÜÒ¤·÷©ax/ÿÛýŸîvâG.ï=ÛÍ{¯Xq³6CÞ|»ßÙAy»¨¤GJ|W3`ÂáV1Ô®WýNÜÿðGÕ ¦'Io¿3øL=Ñ’MRŽ¾”O>z%Ï¥¥~?z'z«âT=>­9Ùä"ž=U|nià‘¿­„) J°Íh ù列é½/þ×dß…žç_œþÖ¿çkzå…øŒ¯Zá—ZIà-­õmŽŒöT«¡d6n·›ÑÁ¦›5®µÞ^Çå^Ž™#˜r4'Ý­4½èœ€“âÛw̧բ 0`àíµ ÒÛ«ä¦*믖[yK™ÉfyÁ=_À'Žws÷S—Éóµjï»à/\çûØß𸸾¶×g·êº—Roª¢Ô#gª4ö³vzbMn›?r—?ÏȾJÀ±†o©TÅ~€ŠÜ'<Øq¥-kZšÛ9ôµ&ªdøŠ£ý%ÉòOɈ²-öÇü"yÑO³,Oäô•|â>ä¤[l"ö²&ÙgžÎ;Oþê.yïîÜZ&å »˜ÚU·°õfØË,úf˜KDö®ÈÆÑ”H •IëuQ¯oéV]‘IÁ4{'¹m\h•1@ˆÆE‡†6æ&I°l.÷oZ—Óåó¹¹Ú³G^:DEçôi²^g&öüŒ±Ó&ßþn.ÛØðÌ¢9ÙtïLý`‡Ú÷0ÁüGRÊ>Ûe_þv©YÊi‰å -´Îqk÷¨nt©YKɾÀtx€Fq幬œ™™¢¶™`jq ®= é°ÒxäÌS_©Ýsû­G¿o!ÂJ6h‡\eéÆÙMìqRøÃÈ:|pê0Üš±Ù½‡\Ú][î=†Ú:[
+ïËïƼ{Szòª²cB¿n~¹‰pL5ú‘«M3PpùåRfœa™Uïºó!á]Àjw_qV¾W»TuCÃÖGÙ]BÎD¯Ø+*cRg[š ¾’(6N¡Ê6‰§˜ÌÌ_8;éÛXR7nÐ(Û©¨H®.¶ãÃñ}u6jÃÖR8¡!-éA7ŒJ–~ª×\›>äÓ8#âpæ¨owö¶%£@锽“")Šã^uzµ×ªÅIGß㡤žÛ_•ë
+€.<¶^L+Íc烲2‰íwî²KÚ¿sŽ‰%<{ˆÓÚ¯€îÆ:7Õ³<ö
+Úx°çè~ 3žãglÒØü*gîϘ8׺“åÔÌç#›Çw<Þá'-/ßa®3ÖlaêNúÀF6(E ?lÏ%Æâêç¥ê?$pÛ/Þñ‘ýÛª5ôóý ±éº²LÉëŽ×ÊËëçïneŸMN­ºY}’ì¶Í]ëÍì¡„Œ¾oÁe •Sß®aB߈šÈæ3•ÇÉ”ÒÑ‘ÃjšGcDo ¤2ñ£¼N°ôZÿiÕôq×çkyç6&ÓGvOøGWTºáç}Ü”HÜܢ˥îÛ¸ôjR¿ÿÕò/íAõA~Þ@{$þí‰+È»ü§‘¾„ŒçûK”)§{‹ú ¾Ý–”üd"sT@éôËššÈ¿¤å™‰¥–oôåŤ…UuTúèºÛÀN(̤Ëß
endstream
endobj
-624 0 obj
+873 0 obj
<<
/Type /FontDescriptor
-/FontName /WSBTHB+LMMathExtension10-Regular
+/FontName /DLABCR+LMMathExtension10-Regular
/Flags 4
/FontBBox [-24 -2960 1454 772]
/Ascent 40
@@ -4169,61 +5592,75 @@ endobj
/ItalicAngle 0
/StemV 69
/XHeight 431
-/CharSet (/bracketleftbigg/bracketrightbigg/parenleftBigg/parenleftbig/parenleftbigg/parenrightBigg/parenrightbig/parenrightbigg/radicalbig/vextendsingle)
-/FontFile 623 0 R
+/CharSet (/angbracketleftbigg/angbracketrightbigg/bracketleftbig/bracketleftbigg/bracketrightbig/bracketrightbigg/parenleftBigg/parenleftbig/parenleftbigg/parenrightBigg/parenrightbig/parenrightbigg/radicalbig/slashbig/slashbigg/vextendsingle)
+/FontFile 872 0 R
>>
endobj
-625 0 obj
+874 0 obj
<<
-/Length1 2346
-/Length2 10386
+/Length1 2355
+/Length2 10626
/Length3 0
-/Length 11793
+/Length 12036
/Filter /FlateDecode
>>
stream
-xÚµvuXÔí¶6 Ý©¤ ÝÝ©tw7 9ÌCw HwK7H ‚J— )ÝH H+õ¾goÝû:çÏïškâ^y?ëYký†FS‡CÊj’‡B`<œÜ¢
-ùG gò/Õÿ´3/'|žXàCk…€}
-ÿØÁ#`ÇÚö/çäô—9œèle󷜚óÈ'òWx«p¹
-ÀŒ›_ $ÀðžÖÿ<ß~ïPøXÿ ÿz¸
-Š}ׂ½B¥[T6ë|V<jÔÝôÆ>žâ:§"Læ ηs}_‹‹GÂãëØG/~iž8:)ülûá˜B xª¯::‡5®hh k“NZt³ÿld™7bº¹å¥7`³Dô¡~>CN‡•Ox<ç”X{
-øÉ£ü†'ãâ¯AÛûAUíªfàx§¿A;Seíaù quÛX˜ŠQ«Ñu2ÒSþÎË8ýŒ ÓæYV‹à’(ÒCK:‰­TÚø ‰ÁjÛˆR>:©v¤j€MÂ͆Ó£8²<ÓMGTË„‚7É9itðá9öTíS–Õb‡ê¡”•—u/q™KCg,Ú^®]ŽÂtR_[ªµÒ†A«g°ßçdôä¬qã¨O¥Ñ‡E®4ý¬MÆÈå$YŽ PÂàü’ÒHѤak%[[ÃE†V_YAP6ùå‚bmÒˆÖƒÍú„ª(³™ÅÈ{äÙ€Þ4óðÇ Ùýûœ ƒ}^[¼‘h $…(
-ùÙã‹._=Ž&0º¹•ãn,¿väfªo¤œË`ž•lv”¥ÕØÓöžsvÎÊØ­<žÝ>ç0,FJØ}èÎïÄKA×ËròéÞö1§“cY)cÐâ+òNØfïJ’q§¼a®ÌåQ›âD"07î ß]OÊ)
-ˆ%Ø’uýŒ»cL&›×ôìì¤7úËÒ7UüCÑ>¨|r ¯
-kÉäÏ6ÈQGWPɳ }Âü¥oÅ°nò°¶®ÎùïšQ9K±z>“…7™å `¡˜ˆ<zý·×?èKH•²]W¨¸Ý{Y»ŽÞÈ3ÇÐBqz….˜Îë>3®I}ê 1fèì]F< c)¨Û©:¾óT1R‡–!ÞΨQÆ<3཭UóDˆP¦Ó½âkÆÙ éË+ºÛ]p=¡ÜŒ2çG“VÝ`4c<ƦسªQ²~e&˜‚¡1™&á?‡^Kzlgèu|%lvȉ/%“,vÙfeEzùÔ,<ÑÖ¬IÓöù26_ž~%A#›Iæ*†p)ß1_¶œ˜1)ÊÐ5è-Õ³Òã^O%*íI¬8#6o/¸^” ’5#“'Jvßô§9Zœ &å %F-xæeI* /i51°·ñ”{ßÑ1[0uµ†­zÕ¸¥¡¡Ô7¶AÑ
-j‹–]S?\àÇ”™ŸcFâ E?÷¶ÿÒ;g0Âo1è/ÙWgÜG˜AˆÎŸ.Ð%å~ÑÓóÜê)¯ìBù¸6!MC^ñ‹Qþ4öÖ%ʤţÌˈ¨Júõ<u,ž;ã1ˆ§35q¤ñHÞZֱƎ5¸jÈbŠ"³žnZ"¹K4Ȇ'W¹“ÌH¶í c™scG‰·nÔ§E!/–cí4$”NA!K×ØšSHvô.Ε”Ô ÅUeö<IÞ×õ’AM9ýèYmÅmx¨/n|ØVP?Þ~Ž*+£Lü¼;‡õ6cN|I¯¡ô­gç×÷ÌÄi:ù— þ¡0(h$åÚ»Sòg;÷I-y®8õýIDAÛÂÙuîJz“Kt¡J"Ã{_¿£t.:DÃÎ…¡”±³(UõˆÖïséh³TºüÅÁyJtÝGPÇö6³e©W€îo ȧ±\QtUòêdª›¤$Ðö-E¶DUkz( gP²_€ªe÷ÒãÏP Àc9œ»ÅŠ½´*îjýêß{ÀÀ ¾I—…óéô6ý¹9ƒ2ö@pUJ*†÷@½ï:Ÿ˜¡gcA<’€aÄ|ÙÏ3ãÔ€);~âCÝ»ÚHœ3µA$¹ÝàüÛæ¢} &^¢pG`·åJ·ïÊ-!U[û—]•aï·|È—E½b³<?78W_§ÊW ´ Jᑹ›È¼F,-À}±â⟊¬¤h0œ­þl  Ê:5avÒ/Û_ÿ=02´A»ƒ·à{÷ÕJ ÓÍíªÆ#/štΤÀž­—rM¨‚'P‰ÓÏÅø_ýÛ9Á´/¾‘†Ø~cç¬ÿ”§ÊuJòb ”ë±ãø#ë[ÿçGžö›B¯X›ÉôízvÂ)X×Dü§×2 wQg%Î3gê‹Z?C‘;±ÉûÛ¾§r¯ÃÞ:ÍÎ÷ÿl,VLWñÜåA>¿8h²Þƒ,%÷a¦‹gâ&ÄkU?-.Te­5YÕ7Fº¾¦ö}ƒl|’åÅØï«Ò™§æo5J©ÂŒï¢6lKöµ´~¸í(>çC®ßHÈïóAùîìi2­4üFN[;MOº™"ô V¦Ø¶NÞ^óelWi™âÁ r¯si,ñáq±Í¼e;0_Z„ ñ²5æ‡Ëvd^«±Ð©YhyýX»~ɇæã^åê‡LlE^E‡æÆùa±6ÚùžÔhÏÊäÑ̬N’ºGÉl—YcÍb•¢$­Ñk«\œ«0o?ïÌ7÷kò™ŠIf,ÕßßSmyúˆŒ+z–Ÿ$¿bùáóróðtø×ÜUÈìyè%
-TÑf¿?×ðY¾Ñ›×7oŸM<¢ž>ä²vã„KëÐ;Æ?Pg£
-ê|­äÚ8JM•_¸^ùª>Ñ6 r¶Â4®˜ä'»Ÿ°ó
-aŽ![ÎÖŸEþø‚ÃôÍW<q("KÕ¾ÍödpêË—g&Æ´È ³ÖqóI(ƒåß+f¹.ÅÈS¿*.­§ \Z sHßÎ+èÙRcYÙðÓ|°á¦¸o`•×róÿœ3"#J$WXχ]:Žy"±²¤Àb¬øH?Ò%ðxiQu×°s—³`‡tФÜÀuCúS.RÄáy—?vdãwÜx#D¼×¯d
-’UI•-û®ÉsLuG3›Vd¬ÔFßïºîö»àzHí—•®êÓqXvÙÚT?NºšxÝÞv®[ãð’X$o®æMÒÜ’£±Mc`úÒMázöm“BÄu@ɵDYŸPô×¾¾wr4ö•ýNÜ!ëfs›£u ‚"MbwÐÛ  ]_6JTh÷Gøš¤¦er! òF5ù‡'UÜCrs™è¨%kb±ŒÆɯ½ÔóÄú*0PéºÕÆ c).^›TöJ±ôU^QV'C¢Y¨…Ï;3Å3ò• “26Jc$omÃV†Ò_@ïpj("ìyºÐHÍ×ù'ÈžC˜Y.Þì}—]ÄdJ_ͺœ)2‚$Ø~Íù*¹Ð´P/fü©ƒ<A!jŠÓJJ–E.“p¸<*L¾ö ‰IÖ@ÿ…IjùmýË5¾Ø[?Df‚sò³÷×Ë…ržwÝsˆ˜’Hb7#¢q|‹°6¾ÿtåˆlÆ`<iq$øþí´=Ýp‘-,àòŒ1{c…ñÂê vôÆtY¤Ý.¨S©ÿL©£4ÄŠ=9—ÂLeæ¥úô›B†°â’ø+±(Mc@­b×5ÂÍ‹\J¼ñžG”˜:¡O—ÌŠô«Ÿ‹?nUÛ|ßehž¹zo0žºÁ‰ÏŠÓIf*ñ“¡ïó™)ôíCÍ7²;
-"÷¨Š·hô“Ú>®(®\•"¢J„Ä¢DË‹Ú÷ø&+6ò§ÉÙÈî„DZyK^Æ eI?ºÐ(2Û>·x³Ïªa¿­Ö×Ü8²òõÜ|(Oo_Û0¤5-òJ×¢×O€‘Ǭ>Ó°°Â([cÑ÷Š’¡kGnmÛª~[«¬=›Ï§'6÷´ ÜtJÓ/éùbÖº=4¶Ö·‘Šé„ù/O7Ch×[-¼hqǽ^áº=­§Hu•ø‚áŽ%qo;f>€$ w•DÊõ¸Å8-¼…u·zÈó…DõK|®½}Î
-ÐÎÊ'ªç¢?•LE™c’‚溲õœ1x¨Mämx Yÿ4¯o[å&|òq.Ÿ|x­LP,äï]³C0ôÃÀZP+Ó/NvBÝ{Æ9•¸ƒ>: nî—¥½'!ŠÑº²“ÙÒ“Þx+Ÿn´$Z¤ÎY½k¾ )]s^לּ
-@¾€ ‘Q×ë|Ùȳ?»íã ™‹&¤ñ/™±$(Y^BL»UÒ
-k#¦ës^:VOe*EgŸq'kÁjØ
-ï™ÈßÐÇ)Œ¸¿ñζÃ:ßz½“Ö ‡°’RN¤€#Äú%ˆ½\ÉÖ%î# w,™®PøwïAvîÜÙUy%JýÏjú-棄
-Ûè¾â5A·ªÐ×XQ‚H"hü‚O1‰Ïm´
-ýT~q¾ã'à¼Í‡P·Z±¶=åEŒi!M§™iÄØ ÁŸÕH»ˆïé×i*Ÿlý¯ýLsÕaÖ”qgÆUrxg Å™˜Ì—vØõÜë&$›G‰DÎeû.õH7£*/‡\Y]è«— 8ohêÖÜšiqÀ<NÒƒ2Ï°üÚ1¨ÛrD÷Îå%rç¿-_´çåß(?ý‘'Œ]¢.î:èEÆðV»ø -j^†m5ÊUkr׫0]qzõdy÷x¦±¸>ñÇSŠQ%Ôô WÏ2”VO§Â%ߟZ²6?xé<`ß%$äWöTU>9q‰D†B«o'i·q›’ød¾Qo´P?-I¡cÔ
-Q“ fÛñ&MY²ú ˆâ ‡’·:¶„ÆÑ›1 )›Ýiþ ./‰z3jƪ3öHdPL¡±€¤Q˜×nˆáÅJ8Oûsõ;}Kä9
-YJa±‡”ù¤¶—^#³ß“zpÖwæIÓÊpxÙŽP>ß~£É¤ ¯àQÆCèÌ™µ‘7É
-}Í6GBŒz¡Ù$§Á-7¶ï¾Ö›}:üæ7ê[,13N3Ì#XUWͶµÒF¯*xöqŸi“J›Ÿ}ä œ*®ÅÐ8×äEg)ápåà¾-±Õ©+ð &´.¾ÄîwF¯±A`‡›ˆ°8+îš%ÌVOXÑýÜü”sa{ÉbžÙàñê«Û:’P'wýâT;±çE̘î7ä›´^þ‚¥Æu!ä!¯{’ Oú;ä8û%©4;°c:YTˆuŒìdK©|îW—‘˹ªšOŸ€˜–ý±o«^t¹¼3‹âþˆK=Éš½cÐm»±¦ÍÐü˜ù}Ú6[÷ÅÝÀ_¯#–fHúË7nýUª|B“ȵOÙZ›xÐ×ã'òO=dž§ZìÛ‘<áFª&¢(„€š’®n“M?¯˜>vŠžŸ¨PuÑa~GC±óüÝ°wÿǤµ@Ëfiò£ã€‚,7¯^d§\Ê¢¸åXVåOtø19‡¨Âí9úhê»îã¿fí›>åMB˜½yŸJ~lˆŒ„ šjNÝ©×ÃZ›ÚÚ?Ïã{(4¯Š5#-¦ZK´G»Óúäå”h7ÛC)ê2Å0V°ÊF$Š\¹€R° ¾x¤s!™˜!A~©c=ߥ­`x?ŠÐ0ÃJ«å¹§.ñ1<ÎFìaýÓç9—€÷Ì*)§ÛÓ‹°*DlÁë}wËgŠX1öP-~ù\* TV_éUá'b¬5þÊÔ½EôÒÌX§ÇúeQßoßâ“èÕGwtÌf‚iåAñt‡u윱Ó!¤ŽOHÞæ”=‰?k 4]eI¨ßXk.
-›Z-±¬¿ÛÝk :$ç7©É¨G•zfq¥ˆ×e¨þìö-û›fZÖ{íYƒF@™É 6v;HIýÈcVN ^cþâ}ĨËø3) X˜Z 1±©/ühê«Éxô ø5š€IžêèŽn¶ØhæëõaÈ Áúúñç…n8»ZûUû2m2Öüô"Ÿ‡×ÏػӾÞñPe¡?&}ÊšÍ4©tÉ0dùæ휨¢²b"⯡’Iˆ“T[Výˆ}£pÿƒ•Œ4—ŹLðª;é~É’«Û±%¨tTI×Ã_“0Û©ª¤v-¹H™-»§+9¹ê~á†Õí}Äû­Ðî>_”^Ç™p:c£Ž#Œw¹ØAaï6TÌAIÒÏé* Nó(æfn’p–÷.Ñm¢«×è?yéí Tƒu•cKlÔÓBâÐñ¡‰SXÌHoÁÂäø•nŸ®O"À2ë«ÃÂg¦-O?g3ÍW5hæCo·0›]3Þä¤n?írDQ…á|&ÌF?äõïË’Vv¬’4EE-(Çóõ8[5’"ƒ ”~É…ýÌ®°K“m¡ÕxûÖ'ïC`‹^:¯&¿÷ö™›ég=깟å@SB£Í÷D4 éM…Ȇ<%¢›b³gïJ@$ïaœ ­Ù¤
- ‰ ÷iõWvΤŸ ^}îó
-º
- ÃTuGáìp—W ý2fãõ…ÕOÝûÚp Ý¡Ïí+‘i¿ HU¾Ä¹uù£®Ò€/Ý` Zmü&¶Ö'hS]È+Nz|ÊsÜéûɹãêjòJÄ]cÖUƣΨ“q E_T©4à›Í/Ž‘<cc¡%ùmïV‹ýß_ë†;¹$¢Ù}ªrÈïè)˜ŒRÀì3í[NL©CQÞ¨G Þíù4Ü9øæµ ½.=µy²b²5Ft‹D‰<:útl$r¹³Šm/S=t¼* ò6NŸúu’î.¨™}xï²µMì8sZåADôý=t¦9ÂWØŒAµáÇ~š yS@ûHrÕÌ$Clÿ(ð E/ï5'_/$Ÿx>Kåa¢l•Ü{}ÚkÉôÑ[`tÞ«m„ŸæŒ~J…
-tH4ÛXª !}`ÀR
-fÕ`° Ž'ÿl¢¨¶ÈÜÌÆ—Êýb?!¬Æï4iQÔl(÷˜S’ø{S¢ ‚è hfW˜uŠ3—öõŠGD©‘šý>Iò+µrµ®Ï.:iÒ™ÏlC¿ŸkOœá ó8Mo‰9a !KÁÊì“–c7â&s§êdó' iY&¸ž#ÐH§*åxšGÔ9¾Ò|‚\*/ˆt2—¬R@">àðíõXeîÇËU ë%g|ÇÍç\ÿ@Ú:)tÿ|Qëý¨cë‹e„–dÎhÏ´’W 7"`ÿ;UK£YŠ»b.^F¢Fas›õÞŽ"] ?ì\|\• ü r,„ÈW:™VÄæúmŽvº],¸ÝÓÛ;úJîf£KVÕ®;µéV—0”’ûLªí߈‹ñUÒÆ%zÝŸõ›OgIÆØÛ÷™l³œ«½_îe²Tì;Œ‰Ô‡êô-F6ƒwý?ætãlêØ/ô¦\±Š«VWRWž˜òeKÅAߟŭXP‘ †J@Žði“Ñ Ñë_IÔ·f,ÔIŠ…«»ž„X´ü` ’{"Uf5d7ÂíÝ[Šêy‰…y„AA©9 LF‚'³Z…«&m‚v9@ú'±¹Ú»yçäÖ&×ìß—]®x¶´ÅHM³K9P*›wÝi<Õ°*=NÙ[57\ÇeJé½9h?`fžÔn|µ EhûÙ=ü8™ßJr{¥Åâjd#{Ýÿj¥…
-’¾ÞŒ…‰41M0ÆÎ?y®rEy‘ÈøÆäœïr`É°Í»×Єb#@
-12{ºÿ$SÙÆüÎY»7Ì÷âÇòÒ¢¯±Ùxë¸Ge0Á£ÆÚ[z·ÚB2c©¸/*ogK×fXŠP<vŒíC/¹§ZJ¾oŠS¸„ =û4ý¦Ðè ò7;3Œ2WÛ§½®Ü#Œ=ö‰äÉ‘…k´Vsòr´ÂO€ aô±¯­È“–Â7ªÃä#Ð!B…rÚãÙoa­Ö|­÷4L|¾@ïRÿ7
->¦e"¥Ce<.±çeRFT-…\(; ¨›Ú_+­ÉsF€
-hš,±°Ó¥w­e`~[®‚:q» }—f`ùt¤×+ îHßaýBüÝŒ¨Å9ºòüþ™iN¥:ž±Æw%PRFv9ÇVª8 éñJçà!wIo G;Dˆ:Ñá]ÅnŠ.Ó ¡kVö•WY¬õ›vÝçˆs‘«oIl»ü¾°Ú#> ñ¼¹*Š±³ÐkDa g#×Ó9è ƒb_~Zl£qíàÖÈ;k2ü¼TÀ+R4ðs–¸PÜJz‘–¯+ó#ñS»ç]lÒB58jF Ë•Üýo¤‰ßÞŒ4=ħ9F·„\½>BŒuO
-j°ëW~HH¶ó’q¿ëS(g«Ÿ) (Ítõc.æìeF›±ÞxùÖK;—šÙ=œW “eÓüŽŽÔ <³ˆs7Öl/±ãÉ´R‘¶÷ÝåÓw¾ú`õî˜#á,ßjóŸXspõ¯èÎÕsDÚ4Ù²™Yæs•-_¸‹e\©o¸›vîL¶J"ˆ¡VðŽ°fÔhIÒ–4%)ChG YÚ®X’ã#üŸZéÕ•Ðxb;´Êa@«I§€kû$uÏg@Ë\, yw Wp_çõtþÓtò¢óó y|o¯˜@NÅX‰ÅªíÙgWWó Š+<}ÛWz‰eU³ë)ÖŽ~Ý9œÔI.îÞ“¹—DŽû5ý)TæReóSsxÍ2m¦-*,–¢â©ÞDx!©}¨t[ª@Á62?R€ó§o}"
-³º'<ÞÁH*gÙ?èÓ¹á˜>ª·Ó¡Wâ=×F ³+½øàÆÿ"I9[Ö+Ÿß¥þ†]5ï¦âæ‘ÿÿÂL¯
+xÚµvuX”oÓ6)HŠtºtHw ÒÝÔ ,±ÔÒÝRJIƒtƒ´¤t—ˆtK7Rßêï}}žã}ÿüŽe9gΙ9ï¹f®ZJU 1s{S´=ÊÂÁÊ.PTRB­ä @[°;‹:ÈÒÅèà`ådgG£¥•p¡`{ˆ$
+pðB­
+²ÚZ
+
+udcssscµtq†²Ú;Y²:ØþÖ§iv¸Ù;Ù
+x¸°Ï¯9•‚˜KØÛÙÁT;£ýjŸ$Ö'¨½“Ûÿ1à6{7ˆ×ÿåµ
+Û'FØÒšÛCl=
+±‡ÂB
+ü—–¦î¯ä°;þaJþ¢Ã¼NVöùa]wþS–ÞÙèlõ¦úדÃø°Ëôïg‡]'l.AØ ¸þ à pý}iþE‰vû9aýpÿ Â:îñ„µÖó7üÏ=Qýõù}+²ÿYœÿy¿þÆP'{ØößÅ_Ø29Ý߰î4˜öó¯¿ ÿ£
+Ûïá_o
+€ÖО„@kÇM çè#Îi
+•AIób²[Á4G#ž“ís÷ùg$m¤óãmðÐǼ¸h`—ØW¦)“ÜP‚!ù'¸ðÑ¢wQ éì;ÑVq]ÂX/+YÒvÐ!üùrßYFä„ÑpáàÉ«X×ÚU£Ï:Qß[ûëDI¤ÜrxœÁ»âÀQ“Óašm+/Žö£n´¡5hª%Ÿ±…“¥>ð»- Hë,¬µ\=w|t™–iíåÕ{ý2©¢DÈzï—b=È«·~­4Õˆó[y0½@wÿzcŽLóEwüáÖQ0 Ó‚c.:n@ªðU4Jÿ£¡ÅêÜW³Fm?zìO®“®'w$óÒ¸S|EDà¬í}T$Ù»ýy)ΰy›/ô¯ k:/i¬úßÍH÷]ÓàP¾HÏá~‰$¿›'¼‘R:3weCÖ:Å‘m7ÍW‹/%¸^]ja>Ö–ÐôžÕ[¿œÎI\_]H6UAoKå­ÈÞtÏ>lé~¢5O_L¤`ÎH|½ÞB#ŠWùôT˜¼âþ-}ÃС—±©îXSC$€xJr—˸`"ÜMÄvš½´^.`hàf¬oÄ'ëò`üRNÛB¢6߬b}ÞüxƒPmq懱:= Yƒ 9¯ˆðš6ÀE¬kU<Ô¦ÈÈö^óöð}oPX¯ôXr)SvÒý|Še—7™Þÿµ•íd%&›«m5/Ò(~d’?ÔÖ¢ãˆTxª­82>.«kmûÍÉjLÏ
+òUþöz„“F祕/¼Ç‹×3$ÔèYÏæ­ýâ³ßEŸ~rÈ×q¼{€x«Põt(*]•}9Úî«V¯°òø¯´i4HAï“Þu÷Zûå—íwkõs,LÆþ‰øáDû&Ô¯6’¨b'^õ—Z„pQ‹µ"”ÌKàn×lîéé„‘¤qéoKXÂ&dÜñω"ü÷Ï1¦Ê)—ódÀ¥‰K‘•‘Xô²¾3Æ>M‘+—#¾PǤ
+¥OTAö%ð3-éïºÓWØ1•§’i‚–j–§G`¤Òßš<ì{Ê:›XCZ«ba*Y^ÆFŒRUü§pr6”ZF¶üíÚ£ùê„¢ ƒ¡ñP ÒœOO²Q0A\Zß+m¯Ûg¥?Y&+mü›Ã,ËáÄÓ.vkù˜;cøͼçmï•×Ï%ÐÎò×Û
+“ˬ¨zÎYÛç$,—æ¶ÎYtsøâv»²Ú±ǵRm<º¶<Œ¨¥–
+iÕ¸rÝ㶘;ßJ8Ó„Ý2gp(M±ö#àé·מּ}'‘ë³!é¸éµ­OÌY+zvC 鉘]<PP|¶/Øk/ÐÀ©ÀÔ†?ù³ rØÖé秄/ê—­ý<kñ ï ´ ‡$¨©³ýë‰jxûÓôÅh-ÉœÛ÷E´¶|Q!™Œø4Úפ74ù_ˆäÒ—ÈÙ{˜:ë~H3DQÙcöð]ПWŽÑ­ˆ wèÓ¶÷,øÃ1fWn—Ý»*è)Û"ŒÜÍ(‘E‰êpÞ•+¹õÃ…ÈSk^qÕ£ lôfåÞï,8þ [7âFW\£3¤; Ý2-“3 7äM|ª2™üÊ{µœ8ðÈR×íèŠßðÁ—õ™˜D‚Ðe“y¸)Ñ%…ap¼…¾­*eÓØet–4ÍRœJ½ÄUÔóÅ,ë,É"|໯Üwš:=‚Z¦Zì«ID_ü
+ºã?žáµf_“ð“4$–ÆMp^÷¦<ü6ïOÄB„ _pÍL}Å+ƒº¨êWKËÜÄQä~OÍ`Lßù)hoøCƒï†ŠŠ\ïèé'PSÈà«Àåýn4‘¡¯ó ,D¨çîV³=ó:CÜÆ“|—fÅó&SÁÙtŠ]4Ëñ‘[øFm7¥LÈ¢LrÍÑùáE£Ùì3¶q]VÈuZƒÅmhLœ¡˜_ð–¤ýV4HEò.”Ê w‘kMÛæBžûø¥RØ™Ü]K¾è‹|º;‹¡‰)Ït£u„{h‡}QŠp9%æö‡ÿ9ŠÄ§^†KRÇÐm@7ÓHEÐK ¹’­ ÜYê8à¢diZk%¦¡Ï-ÚþH-'ÐBF¸µ²Q Ó€¸Ô—|Ì·®ö{jgnõBk»
+ˆüö¼ÄZîrœîŽ{þÇ ëü:ºýø>ÆåÒ *Ž’‰S_(|æ&ÐðfƾˆÏ!Öཱི“YW˜bÃcuŸâÚÿÚí}»á̉¨´p5¹Ñ‡³¯Þø¨S ì„(a5ªZñÞv^ÑY€ÊbÙûcxщf>ÝoSv0Œ çHH9J?Ò>IG9ØâûŽ÷@]¥&9IÀQ =v€ÓM×˜Ì _ŽÁI¼Ü)"gf³w rÊ+x<¤dIVëõŠúrÿd²$³$7w\ñQp˜ÏIŒ8"<Õ{Œ¹µBA
+Šk0]Œ—Vñ'EâèÁ-hz¨'áÐR¹qwS¦(BPd.7Π¨ÔfŒÙÁ”uNè6„"ãç)ý“Ø•éQf´ÎÏñ.ªàf¯¯°‚H*Un:/{p<È¡N6OÃà0ñåëbËä¡[Å]C«õ/Cäò19ãÛƒS&Þ¹m…çØ¥•Ÿù9µ‡xžúßÝàñ^ìälLmÓs”ø…(Î…DKz=¡¸jmš#&l¯åõ Ò¶úÑ*23EU¬ Ûs+:ñ³ÜµL=á]=#-²æ}•?¦•…ƒZȳžTê¨øQËý§(#žfú0mE«ëJæÇ/vš}¹˜ÜOd+L|Ó#^²[ÅÉ “5¦·4%!¬ eu,¸Dw¾÷´¾0Í«¿]ž¾\%3'ꤰë0–uWðæù<ã­«0Ý…[îÅv+Ö“ÊMaâÚ’…½OzúBš½p{TN‹3’úõ¬9Òtû©+OÐb>ÑR¶º%‹éænïPÈö槧Å [‡ÈÄð¥WŠ¿ ±_Dn  Ñ×XS§/yAͱHÌ;KyS2uóøU¨5ivŽÌm
+ÌŸ}ÅŸ¹0!h”&æ!g2“â­Y´wóVD9{x_€‰½¶|_lì–«O?¾Ö9»x䦾VÖ5ø,Deù@9Gò"J.m×pNGýÙ˜ïÜË*]½\sÎ,ÂP"ËYr”'¬_ö¿}Ð1˯@Ų¥Fx— FVÎL*ïj"GÄ(n¬¤¹Lߪç!„(p·‰… ɾ}a%SølŒRÌa¯ÿô†Jªe3¨Tº½\|…θO9fU´Q|rivˆÍÞ;nH±ôÊ_6á¨ãékË|r^dðÇî9°}œÜž6Ìj•z}‹e¡‡ÿ|#P¯Ú5vÛ¨ÜZ£štÛ½ÓT@H_³ÏàQ< íR=B‘£âyŸt°Ùk "*†‰Õpˆáø‘bE¹Ê7é3C!Ù&UÈ‚zGü¥ ¥Åses%©û‹£Â
+sBCþ÷+ Aq*²tb`+sioƒª 侣ϣRࣰ†U ÷ü…èèÔÞ%Rjô %ÀÀlÊÓh… ?¢HŠþ~"œÉýOom#È%'0Ëã­¹N^4…À/ûKÕ0r5¬÷{¹ )D:Që0—>rô“0e‰+b$SŽÚM£]>´úÎHÒl“,o9P7›Ik½”ëse»ŒH!Í/æÙ*.H%¼»"Þ€B}wOžtõHÈB]WA*Òõßmô¶ä«¸‡üÈì÷Û@ë.l\_Î*ßê¬ìÔBYEýgçÕ¨)J]‚~L‡Þ©:1\rŠ¼lÈ~ä¾;u*ßùIë­àazfðRZSì“¡©K%G|ÏŠ—ïFŠ1©.å>Ö¢ÿŠltîÖÙíñ¨{²f”˜ýÞíl
+pŒ—dd¦®1yŽää±hB%rKlWåÔbŒÛs»ËAEê{ÇäO)—¨ž¤lSHÈE$ÜÏé‡ ¥Z¼ç¾Ø°‹áÝŒÛûR׉qÅÌéÍÊMr:]<¼ÙS´ü$Ã~î{4Çó݆ÓÄeß·è}piï5xj¿ù¥C³{¤ Š|›]]´†Ÿy&Ù“
+Áã–6æ¡-‘·¾–epA€úØ+æ4§!g>–:…œ!´§­s³j8V q~l‘ÚÞ²TaC‡ßeÊ—8çÄî4iÍçn]Ï'¤§p±.àÓÜ…—ÚÂà&»“~°©¸Ê¥J.ü©¹-5ƸiSëpÒ<ÚÏWò Ùƒë.¯óºù¡µmãÇÅ$‹|Õêç ]DPM¬ùÓÈy_VÔI~fDû/¤ï…кÈYdùžÁ£˜ƒVÍÐ yß"Î=|[ÚØ$mšV˜]r _6ëƒDEÏ£*<"6ði')Wúú-åN€4 /±rh«Øö\+fS#1ëŒYs­²Åãp»‹Òù ì5±&Lx̹d†··–s~pj³$2Rðž÷³Ì³u”%Ù¼§o² Þè·$õž‰º¿Ø:Ó9â «æFá,Ï%\2»H¦¼ÿÌ˹ÝôDíëÛAƒ÷dê8º¦cM"ïp¯.vX¦ƒ_M¼aÉnx¡ÚYꀬ™±¼Å­9je#N}O]/üvØn¶”ÚBÙrudëS ÿ¤n)ü¥á÷¹mdae·5Æçeͬ(YD˜Ýè´v•H¦µÝZî–Rõ9UPì\ªG>ÔÕ;ךǢ±çWØø"Ï8m•tnXZݪžG`dh;<b!Ds=¿ÓÕ|ã]žMìu»B#íönVåÜ>%0]ØÂÚ‡íéxH§šûÝ_ÊwVñiOå(çÔwYýÏœ»]SW1ŸÕód/Çÿò¥Â×|9#Áו1ý×-ò6ÛiÍ»ß|+ŒÌîÚÓ]6‚;¼kÛûìÄÂxwoÇöB»~j™ƒMþ¤¯â~¯ÓàÒ-õÂ,Ö’:m°-Sˆ ^º¹WÔ~•ããZsè BÙ,ˆ›æ¼ÓJYÒ•×GÓ ò¤ñ%sŽanö!½5]½WaX7þ¸
+ã-u^è3Pßîôõ–?ÛLé¼~Do^“7†£<1}H”lØ2<’|NšGÁÛ+’â4úRYtWò¸Ã·ëÌ“êã;æ˜ÖêOˆ"ìͽ¶¼ï3vï>„)”Ù×Èž
+ˆg»éPd?QF—í¼@›×3Í&žšâQ)Û`›'B½œìã=U™yqFwºë»ýxË›¬eFýFÒjx1X§£ä¡vêVó0VMîÄ=3ý©pÙ¥A¨|žár†Õ¨)‚A½¼wãGR2.嵉îlç’Ѩ‘çKaeçÛmºàÕŠXj Ã™–ÆNÑá®ÉYz?Oä2&ÅŠpT¬>qµ½FµAeÚ/dÚ±ºèöWŸá¾34®º3Ê• §’…/oT–©Þ‡¯×Oe»…è7xV=âS*,O~ã´c[èyü‚FqH·S}îïꦟê}f)
+-ºc/m™e'³äêô|ðLi1âËW/-chÇK|‚†TƒÑã|aÖ£ÜntrÝg\Òoò4„(ºns»yHk>“eOJî°l6:ÿGQD VM©´e«È'áÛ~L`“_Ñ#¡¡L¹ñ§ŠVó
+ž¾¨Tç‰!Ù”Æã.
+AE2 ­ésíïoÁC;ánü£ïÚc¶²é[âÔÅ{¹‰}ôº=yT‘+)«Õc9iž{ÐË¡áÅüJWíôŸ$ˆMYÑ4ÒO‘D#ßäuz%¿]‚Q¬³öl8‚ð"@4$T¯ÖëÎpƒìDZӅޯ1JõfÎ{Þ
+\’#ãÙdk¯ì£7ý±‹ýDºÆ!œŸŒçκ×ó§§Óº{Ƕªê)
+ÊYÈT Ü+¿ÏqѤ¯Þ{ð©gb,š·"´»>ÌÀ3&À1îFH¢†‘¿÷•ŒîêQ¶ÎBÚ¨MÊå´%¹Ìµf­"ºO¿»xÑnô#[Å…¾T[bç,è…VÓÞ Î£XPÓ"Eö@c›ÝúÞ¹`Hê"¢ø,˜) ð<ß™~díf?Ï!68".àÓCÀ©"ì~Ójuet÷Tñ% ¹0.éÔÝÉKpc²ÜQÿÁóCälÜ@ö¼‰KAÀö=¥f÷OŽuªõæ*b‰YK¬î —€Á1šP«ÇTÚj„y¥&ä~‘²Ï—7'´ÇP€Ïg FB°s¯ÉÄ¢a˜°í%Rü¸>ÜAj™jm˜ÉÀå0élÙOïâF‡ŒË+Ü5+2ü­±‚÷ ;,Ãó¨—O"ŒÓ–õ„œû,†ö‰O¥
+™v­et‰‘ÇåµuËúøÄ-ÁëàÈ»îæÇX¸q
+¢­[ÜuJˆ(¥ŒBŒãÁfrîz*¢]CšNQ5YZ;ûÁ
+‹Ûª¼O®‡†ÈÉôžÚ‚¼64r“Gâ"éh¥¸…hÂd¤ÉÉh8Me­D‘Cã7ë,Uªüé ÛB*ÁaòH ¯üG誺 —8¯Ôp ]àQ¤U›ùPŠQlt[ ‚¸c(tV蹫¿Ç”1ÀS3ßËÒ"kµ(ó½äTŒÒlï²èµÜújfI Äÿi[§Ì4°ž> /LðÚM}èÏÐ$ÞU•Úý³jù@3–Hg/–PY¤¥¬ÊíÁ“=`Wj¯ºÙ¾Lppé¯Ñ/„验ÀèWú˜ç~ΦŽ\C-¡)0Ô¬=L‹´à˜Æίp±æõÙOnlÛŒ@’Hoz0ê;
+ù<dr<±˜IaìeZ͉K>¤øÐôsÐÁÒ¦÷pä‘ùT½œ7”“/¨W²ÀR}¬Y]±¥xürWóû\m˦8òÚ‹¥"Ãê?0¹øÆ ŸÐ ;ÌTE­u»‹Û².¶î—/[~]d]nsvÈ=™Ò¾øÙÝüñh¥$.¹Ã(òÚ(<ú%ÓËY??ù‚E&{«]ú ÆI›ÚiO-ÊF8q!JGeÆæÜ$·óëõcQBGx¾Eвÿ
+ã½`“Q
+D¥rÇ©±Få
+ {ñ–"BGNx`"7Zãã&ë)YBå¡V±¸d0tfkKa…½Dïm¢¡
+µ×QG–#¹@i¶¸¶zBn¼ëôX)Xq‚¿‰WT[9öQAdùÖá‘•cNEE#û]É|œä
+ü#Žã*ê ùý^„Ø°Žf‘µh)Úúo¹¥ü®îŒÜW=bÖ”<ïH/RB4š‚
+kûÃh2…—ÞûP7Aq”B_×÷³*¶ø$"•ûôÔ69ïC­’ò232¥2FÄíÆÁjì; ›»:ÊÇdÕ*Ÿ¾.–Ÿ¾Dq­[RÕœŽ{áIs£ß¢ïÐß
+òIk `mŠï…öDv"ëk_È'Gþ^ÄdQ$4K縃٠f¢×„gìñ¾R"…ei…Â!TÙ…¹h;YžðZ¤Áé:?(¦.Ùåó¸Z4n°®w™çðÔ±4Šo>³éÍÊ–Àž*äu%ÕPäž‹œ˜‡ºY…þ r²ùÚ„1™ÿ™„'>å§4·Ó9Ë@îmñ¬¢çÓ=¼ `UæƒG¼Ÿ8„"V´d+Áu
+¯’²8%ÈÞU÷vÊ€¬*1Þyÿ¸Õ«ÃgyN³!–Âü ½ßòŠ^~µêin=73¾Æ‹ÅèM%ˆE‹çëeZ£j®‡×¸5Žjðü¡<˜ÏBˆgªÙáÉ‚Ž?ýôk¿,Åçéû¬,wìm…=-˜qªÏ`A0Í·cÂNoÿCNç'õ†pl" ç1|=ðÇNEÚs(òeFЭ,ÁÑ ÚRS+“á ÅËKµÈj?;Sì4ŽÖŒKkuIÍ;й_æcMEÈn€œ¶ßøfÈxà\¼Îd’9þK¦bL“ÍOø瀒¸ËCîä4ì¯I“>OëO»'fô…fiˆTßÕÎ8
+Öï"ô eŸ`{Œh÷b„á~ Ó©:04q;ÑÃ_?¡ñtæ3)#˜Új̲«ºAÎXvvmÝ7§cõðï÷Ôi¬-ë‚Œw|½’W[c³ŽÃgáôÌÑ\Ï ]0¸y+%Àg¯7ˆÅ½W£êa'‘>oPgh
+µ‚´(YS5Äöïé/.+×m„×,äGY:#E‰°o²¥­*„y®BÔ ’¥ˆø¢!*?ìK×]fµEß5fâ ø›'ÕNŒ;²Û£VŒBGlέœµÄŸ³½fýp±EÂÁí™”N§cqn8iVDéMî¡;l{¡ñšÔ¿ë["ã7õfÄØäf)d–ËÍ+K$â4ðÞ j.ݪH;›i)tÀ›¸3wWC’ë¦2Ï/DùšVZžai- r†5]ÕB@ÚûÄZv Qï_±¬PPÖ
+}¾’>n‘\LþŠÓ4Òl@Q‹¹ÛA Ùìÿ)[YÐç~x×^ ¿²âÆe Ý_ÂCfå*J»òó‡H1åõH×R-ÐaKSúg¦ï"~jŠTš?mŸ×àþ7‚@²tÏWýK%÷:ÙÌWC]³â9ªAlj"ÔÝ–
+ʱG¡ÅjKZÄB$uö-‘aN ~ùîû^\
+·ú8yäñYЃ ‚ùŽŽ!YCïÙ­9è‡;—ñHânòÓš)¬O¸ñ]Oïû3-ÞŒ†gSÞŒ
+Ñî±H©
+xnùóu7£•Y{ÔZ¤˜?™ìÖ·ŽÓ¼ ‚|Jt¬¬1‹th%âÝ™µüÀÕú¨7³ß’ÕŒg€4Õ—M[,a!ºGúý8Õ;m*”6Ri¦ÿ™zÏn(AÝ+(ßùqUš0ƒ>ŽH4Øô|¢Â[øpß:_$ »&x“Â1S»ÏÂðÌsÀ(¸,¦1F§Y%Þµ¥z\Ü›(átÇVa2—%ï‘ðúút•½Ö‡
+t‚ð•Ï“ïlüÍ·ŠmÄ&‹2ì­+£ „ÜÝÛCZQ•'¯ÿ2=¹
endstream
endobj
-626 0 obj
+875 0 obj
<<
/Type /FontDescriptor
-/FontName /EDLUSI+LMMathItalic10-Regular
+/FontName /LJFRVQ+LMMathItalic10-Regular
/Flags 4
/FontBBox [-32 -250 1048 750]
/Ascent 694
@@ -4232,35 +5669,34 @@ endobj
/ItalicAngle -14
/StemV 60
/XHeight 431
-/CharSet (/A/D/E/F/G/H/L/N/P/S/T/U/V/a/b/c/comma/d/delta/epsilon/eta/f/k/lambda/m/n/partialdiff/period/phi/psi/q/r/rho/slash/t/theta/u/v/vector/w/x/y/z)
-/FontFile 625 0 R
+/CharSet (/A/B/D/E/F/L/N/P/S/T/U/V/X/Y/a/b/c/comma/d/delta/epsilon/eta/f/k/m/n/partialdiff/period/phi/psi/q/r/rho/s/slash/t/theta/u/v/vector/w/x/y/z)
+/FontFile 874 0 R
>>
endobj
-627 0 obj
+876 0 obj
<<
-/Length1 1670
-/Length2 1438
+/Length1 1685
+/Length2 2275
/Length3 0
-/Length 2463
+/Length 3329
/Filter /FlateDecode
>>
stream
-xÚµTiX×÷ƪˆP \ì!I²°ˆP‘¶$
-µCr’ „™™bq)VE*xÁ*-›àŠUo‹¥­ÕRP­e/ÞR¥¶«Èƒ Ò™ U¹½?ï3Ofr¾õ=ïy¿ãæ%õ RâI0ÇHO—
-ЇĨb¤“Bðg*E%•DÙÉ¿€QDtMíH8 |­!,¹â¨(1HEPŒ„‚)¨@! xßb£~Pé>‚`ƒ^O÷¼péÿjóúœÚY‚ÖœGŸ‚ˆ5¯póú¶8F IŒT„@…j!ž Ï Å,6IPDXˆH*óSÚÃ<%8ÅÆ%ÓIK4]/H(
-†1óÿpªPL©¢@iÐñäšf€aÂç)”‰ñÒ¦†$à˜`ºBãC›´™â#ìÃu@…h ˜ª õa˜ d5¤Þ
-%šŠGì#•‚0µO—ï=ÏkÄ#§MK)šº•Pú^ž~Þ£\”V)$à5ßâ‚-£°SgA#<¹\3÷ï…d‰a
-\‰bjàå; z=bbð)uxùú³€R¼¦[äx\ '© 3@…ëô ø¾€‡Ò6Æë¢èá´ÈÿÔó[˲–’z<.G•ÔýJT¦¯äSZPvêyñ/ñµn/eþJö’%xº™<½|©Mxûø?_~ÆkyŠ‘ËâQŠ¹kzr„éPÁh»Ž+ÞÝ”¼«:û`¦hïåCÜü¹¿U½µ(.<o|۞˵NÂÒÿ°``Åú/²ŠfWà⥉™ë±}qn›ì´ÏnÖüóHsŸ2zñOH¦$Óiš(¨±$–+ßP$iÍ:t†Åù%¼¤<~¿OKÑé¼Ó³€¼ñn°íÙÇÛ½. ÏxPÈJ8túFÙcå5Á)[½Ö&½ÕšYçÔz¹ÎŠ~lûQòuPÛœ«ï—g¿Õ>Q÷ÕÙ™ÝV9•O¶±»‹ø=cs4  ׯbwW”Å­ïªp Ûq_ø¹ 96´wËìÝ;/-º{þ~È7vÉæÂdÃZÞáèŽo]zƒ«ò‡Ü'mhØWæ~”Ã<‘½ùô˜õiÁ…Î=?tž©qΛðF"ÏÙ¸§,uhÝ…[þ]‘IÞhþÃ̼ˆxŸ¸2©ÐÕ=Þ¡âHôÔ†„ò_ ù÷ÕÇ*¾Ø†}’²9Õ&iy_–ÓaWl}܇w7p¦«Î35¹mó²ΟZ:˜¸?Èöûå õ–ú`ÎPmA¡2èÑøÆ`LWj7MÚjÅÓŸ?°¾Z+îÜb™Ð¿qz¤cñ4YmÅÙ)CÃNLŸù¹²æŽ ²ªÂ>¿×ä!wß8éSoåÞÛÃV‹ÖúÝ;Gt:ç{ë×ø®§
-‡ù†b§"Xlã’·cQWm“·Â>»`cñ",Ê×øSKî1Ò/ß³%»ìÖâ!–{þ@|éÔêÏ’ª×Úf?E™ãÂ|࿽.œ3àˆºçN·¯ì:9ÔûGÏJ{K¼ÝÂôæ+ù_²ÖòBºÏ7·\‹Þc}$>¬­Jµõé“Gã˜Ù½c wX¼g]“¿ŸƒýãÃ5MæÞ[m•pÐzóí5œGOˆ§ä2’>Ñdv/`ÕªbÛ…­æ{îlÑéKìÁyý;ž÷&úœ>9§ÊPù,ù½Ž}‚‡ áäüe¹:GO}÷‡Éo¾Ÿ^]Æ‘´Š¤öuÆú’]m¢ ê?J= ¬ù=;ó«[۲ܬȂú¸ùcEu\:1(ø… úÑ>HÓÙE5ásÏÕÅÜ9~Ô96Œq±WÞ^½b’ã¬99 —5z´ÈüŽ+
-Tª£Ý
-¯ä½MÃ'*æ×Ì¿3Õyî•Ê؆VÑԡ≠®|·pc΃;ó8¦»i‚J÷ƽâ+{ñW\Ú@«T4Qð0gl¢ýÀî·×ÙÈ**‡º]/^LètɼáZºÛnòU‡äÌ5 œÎEcíÌÒ6[¸‘gÂvuçÿhžód¿cÉêÉÓ×F/Vx‡· eN½¼9Þ$7««·~sªâG¡ªPœ°²ìÚÖ­¬ÃÙ‡³lß­ÿÎyÑÅ7G‡m€3J>åîùws`ÒÊÍ‚ŠÀ½ÍO¸Ð‰ï.ÿ~-“o{qËÖÈ/uõ¶¯- ½”vb§[oOFÔ–_¬ð]9)sǹíþæØ­)ͺ§j›­9¯2û癲ÃÛ‡zÅgó½±É¨˜ÉÕíËr.¿-Ýsh`ÓuengßLfÃ\–s°]ßÃZk_÷Λi3ë]—¿/ÿÍkÁÍš;Í;Ö5Žëÿ ¦hgÓ:›ÙDVʬg-dÚ†²¡êe3[~¶®{Û´
-[¶iû®p–Äf†kcŸ3Ó†5Xoì¹ÙéI\Ÿáð瓟Ƥj¶[ïrÕºzŠë¹ óg=ÏX¿ÙZsÔF²:Ûqh<«´¼êšÍœÀÎñå%ŽäwøÞ%ûç%a7xøãÈâYøBÞIÓ$†ï±i÷ Ö]K{¯'²êÜ×w{×oà Š~wg:»å ÿ|ép-¥q{åñIßÚ­Ø^ÛŸèký¥žÑ3'OexûLó²!·ÚnD±ß XÑÍ4Hò%EU¦ÝgD‘ûíÚ7ÅzèVÙ3vü:œG.5\mç¿’®»Œ™2Mê×_/ŒËþX'¬©½ŠÝ¸yEûÅ›¹¬©ßÿ &æç£
+xÚµT{<TéÿVeú&]È¥ËCë–˜×(¹ÑŒëŒ(dÌœaçL3gÜ…›¹D‘*º‰"•Ô†(KÙÕ²T*¹´”Kò;ö»õÛïŸß×yÍ9ó|®ïçý¼?šŠ³›Ž%ñƒlÕ!êL™B¡£ö(Ãfê¸BþˆºzNMÍšÑQ6ÛÐQÈÐ
+Á~ÿÀ‘ŠùÅ}°@q:…Dµ¤z:“ˆxñ
+Ð(ÀBx8ñ †
+Hîno¿mÛ¤w±åÊ;€¨ÇÿlÒTMF&Ór쇔y°ÒzÔì—›kÈK'î—ÄTrÈ£3“‰B[©qKód¨5…·OÍ<WV2Ø”Lµmé*ñ¢–°/lÞHÓˆ[xBŸyúÕŒÄÖHËÁ{ünËs÷ {Þy~X-s† ÈSÎ…ò–«¤ÙÚ]Ó¬ÏXŸ—W’ ;†ö¶%Ï#Ó?’~èOŒ/豘RÕHÿèyrIå¿Ò‰š•ñÓto¥ùö%LßtÐWdk$/]u¦»bjh¤—ªf¢§\IfXKkÚ ÕH¼mßý–¶'îê¦ý²ežö¥¬Ÿ¦?ÍWŠ’Ì<"Q1([•V¬¯Nˆh.‹õ ‘ð:+{ðU„ÖØt yqZ&Îïx@tßÕ–{§H88®¡Iª~¤9™O«ýQgpAuņRÁ™/>]ERÖS bÓSj2WQ‡×÷úÀìƒÃa•ZÉmÕÍÐÚü¬Ò2/ÿ‘“^[§Í«ÞÇGßé9´OMͨõp¤M0*=Âø“Ä7J`çb@o¾½µÊAûÞM××—/®q·Ç=¢uæºì\¨¸vCRcvAÓÆ6ªñeF‹u±¡xº«yæê…MU›^/Y£ÝzƽQDZ2•·`˯ã fqI^i…¿ÝC<£ÑtšÜzñ"êyìOR=IZ@ü#IÒ{MÖÃwøÈß—ÉNIÛÍð®/?1‘¹NÚzf÷A'j¯¨Tâd¥áÝ7'XKbÙ4#ÿ= ?Œ¿çµhþÕüàƒË2c²Ž3¿{ÔR;¼^9¿ ;27Eš­ä“ëáÚ¿¥éÚ¥â³_-,I}ùÛ+Õ”É×#›iuR#¢ ³#šÿ)q(i‘kN×2Pì*[óèeïê)Ä“¢¼íU¸"né™Ê¼ŽÑ§Ÿ¥Zß’;óÅÌn¼ç¡c½m‹Gå´´;{œ¹U¸®—²²½ç¶Eæì]^lY{<,¬*=÷îF°”Rvq›FóŸONä«:×·öˆRï@å¡/çÉ’ÝóHi‘EWŸä/QM?.1”oO»Aqzäï{Ô*ñ}4kkß͸×õöã=Ý
+SñPµË¤¾»-%õ´uÝÞRr
+É(èôæìÝùzÓqw³e*9 {%˜å-Ñ7Ý-_8‘{êÞ 3¢åz÷ª7aÕ¢Aßé•,5 ƒGJT¼h¹«4/âŠMTr:Ud”=vqú­ñqMÁ¶àD"ýèÉe)U+¶
+^”7¯zU¿p攬NyÙ}ù#cºhþYR¶»É–ž;W•7 ï z_´Ð_6lr_%…¢;™a³7d:\¹µ3nª×HTתç3+§ø’¢º2 7Á‘¸®×¹‰¢Ðc7¨ŒpR†²¢' —¼…ì·Z4j¸´oåÎëÊÛýæ‰&„×æ¯W&ƒ1COÕµÈO„;åuŠÛì¬Ü>–½Dµú,–›¹ò§iEbTšh´÷äœX’e8ïákåX<ö0§nµp7P)?Us¿|öã,@KZêв&V¡›WÿìÖM‡cdŠwCz£ªý ­™9)g’ôd¾^VÙRßÙÔGýääðºçø SI\œ¤îÉ;ï'üjkù™•'W Í"ë¥EIq×z¥¬²Éãv«½9M>æéúêÍŒ”×Ó1~ý…ù©D—ÍFîÏ'ßû˜>ݵo—“ºmè•p²î᱔Å:F«Ï»žÝ8áù@¶œå1Ø4UqÏ9Ã<c@nº ½ô†¦oºå¦„OûÖ
+»C$û´$ô˘Ö,<Íy,\
endstream
endobj
-628 0 obj
+877 0 obj
<<
/Type /FontDescriptor
-/FontName /UUTYVR+LMMathItalic5-Regular
+/FontName /ZBFYGJ+LMMathItalic5-Regular
/Flags 4
/FontBBox [0 -250 1349 750]
/Ascent 694
@@ -4269,65 +5705,63 @@ endobj
/ItalicAngle -14
/StemV 84
/XHeight 431
-/CharSet (/i)
-/FontFile 627 0 R
+/CharSet (/i/n)
+/FontFile 876 0 R
>>
endobj
-629 0 obj
+878 0 obj
<<
-/Length1 2186
-/Length2 8607
+/Length1 2151
+/Length2 8381
/Length3 0
-/Length 9943
+/Length 9699
/Filter /FlateDecode
>>
stream
-xÚµwuXÔÛ.€¤€4Jw7 Ò  00ÌÀÌÐÒ ¢ˆ4(¡”tI+¡tIJ7HHˆ tÝÁ}ÎÙž}Ïýó>óL¼ïWïúÖ·Öï6}C>EG¸=XCñ ñ J´ut@( 
-qà3
-¾Q¼Ù3ì7§£¨«¡ªbhħž=ŸÝ?ÊõÛû&Ÿ"P[ *)ÜÌ©
-ÌQîîŽV$¼i‚î
-ŽðøßóíƒûÀþF'ÌÑéf½<ŒaO/°ð_!hŠðoÎŒÀž
-)naåú¦ù:Ǽ@t4ý}ü{&€qÿ–²TSëésáÁkòƒV«â÷sÙ¸>ù_„ê)P
-ß)2ºfú©áfLÔõ)å‹P›â4÷˜]Îcê~M<O­wÖ³ÞoʯÀƒõ¿‡l-1Ùy£À›ŸŸæÝQ¤iº-гIü˜ó5^JÛ$f‚Àä‹O¡Û¯¼JÍf›NKSß ‚Ú7
-uNÂ\$¸ âÇEÃîÒ{¯,²¬¹«ª•bQ˜¼Pí8A° c0ï¹TýÄ¡Fá( o@#/‹ Ãñ“Ò"°}íx'df´ifíF|™Ëç«¿ ½­`‚’-ó
-µ/¶è¬©ƒât=»¶Íem—"ûjŸµ´\‚p'1NòLµ÷·å9g¶+±e^EÎQîžþ$™?¹J±|;Mµsou÷‚D+·±è£~~y½˜3)ͼ£^Wwê3S…-=É”Êå©rÿmö4³õ^ÆÑNø’Ãèè'MöË$x·?´Å¼Ëaò\ôjú|#ôÓß½Ò—njäø•"bk;àžR4­ŒBkRµÒ Ôß‹ô3Q¡1¾ŸÃÊ4fü×uãpêJÀ‡ožùÔ"ÍŸRí—Miâ‹ÊVˆ¨Ouïw<.ˆÂ‰_/°|•Ì<t¶Ô‡§¢¹ Kd Þ©V(ÓÕQ›N솈­õM–¦°ºN™M"Ùß»kÇtkRÏ'­m&Q“ÿ0Pä¾Çñî$ˆ8UI¦Âr¨q¸=¾I]î™pÐ}a7ÃÑ÷¥X³LnúˆšÉáîá+ÂÊw
-nôfGo,•]j™IÊ>ãG,‡(Õ.â)øè}k~ó΂•‹‘ˆIÈ—2lÝ Ä—ðQÆé='GZ%6‰/áÎAŒƒ =5E|Ü$ÈÚªæÏA7Ú÷î…Uvô$â´gÊɬëÐcLjÞ–%)§tÆ8&‰
-}Žôx$ìøa-Gæäçõ…É]Ö¦N÷.ƒ¥¶Æ~£™4“M;8¹ m­DG,™=9}ÿµ3¼ÌÓâg»RD¯süoa‰°Ãj¹« óúêÌËê0`¿pŸÆ †°P2¿%2<e¥O$wY°Þ9¥~$eAŽÍÁÙÅG3Y÷ñ3ßN­d>F«q••N#ûXÔ<^sã>§ˆˆóÄ+H&C6 ¹ æ÷<M+ƒÜ“­=iøX«P7¶7φlNvýÓü=Ó˜—g:i†¡Bó^òöKº§§oÕVXô§j_&€”
-¶ZŨVÄÂ2–µâÇahã-SA;„Ík©¡j8öÜyïSD ´ƒê ,“^üyGr׶³¹BÙEa»èýŽ÷c®m¸-ö½^éÅã¬*¾&lç».Xë[j“{Õƒ;ûâOï~ ³?Qœã—ʨ¦Š³Ð¡¹åÖyU©‹©û&. žôóƒ²÷Ž‘ðÕŠí¬jÖüMa ÞÀU²„ssã¿´|2­XH]*ÂìBWÂmŠSxOÇÉ›ó©àjocÄ^öÉÕƒÍd½“á8gÏŸºk’qvò±MêÍ)| J÷ª®7DeDz.®”ì>k_Ø3÷îõŸÄF¬@eÉ­0 UaÍ“>­Ù.ÌÚ¶üOÞö å—/D߇‰SÚ)QAÓz3Q†mÊ¢za\»ÚliºÄÑ0Z ý¨$ÿξFÖ^OÓÃ
-ïqêÏÍÇ=3IôA&ªcÎ' Ÿ¿3…å÷=±¼K|ÑBýјr ‘Ê#N.,ÚVTûPq³7Æ]þ¾ˆ»S? ¡½°aQ¨¸ã-6ì>̽ùÔ‚8+¢)®ˆ"ZdŽ­*¾¨´íµ’V“Ì’²N¦j’œòV¤é/m~oç±ÏaVyzߌ©Ÿ&Eª¯#––S<­ó]L^>5kBñK°3`áVh|m¨vW.ŸJ”KžÍ8%pšÒf’ ŽØ\˜Ÿ¾¤hâ‰#èP0Á¶ÔM·y§^»@×±Ðr.qp¼#^NõyØ{]2ýÊó Z•4¤CÍÁ5 lÕLhq/¸ÒøF“tüj–“Ī=*awÞMhNa7…mþCû¾óö”iYnûÂðnT±•Kª%~•ŸöîZõ&ç$ŽHØ×®ÖÕ‚.›«gŽX,r›mrM>¥º±šGv¸ ¢ß*¥Ê®´0ªô­dý’+ý])‰o\Jø!j[÷åÏD‡º§
-}{,Ü|¼!T_V?ºu”ÜáÌË@
-z1=.¤`dæŸnÜ a—oäÍ<šÙÎo[»rÖƒ.RŒ^~m ÝN£«Üf!Qü¬_xÖâÅEíI^»J°]V?ø­©JüÖǤLá,ïÔâ^p=ùeø³_ãUŽ˜Ýveª†8զȲ<¿Ú¨VáÅò©HÚŽÙ©àZ繅ĺÄ3£ÍO¤VZ _}#ÆÓɘøô˚ķ•¿}¥*ðÖwÎÔ§èšÖ‰àÇ@L
-&p†p»P¬êøsÍ~ÆÕ±‡“-ƒÐëÛvDzw7ÿ
-qh½¤kñç€Xè²^¹‹³æoU•å‹:wˆ]½¯ÎšÔ÷GôŽºW0Yó—RUʬl}@]‡! ¡|¹¤ÞÂÍ *[œ‰K~V|,À—qœ¥—özø–ž…Kb^¢ßR:º5Ýl;ôÑ{]wWð#A[9§uÇœ°•±àæ‡øõÉì‡üg1ŸGc•Áñ»¥Æ¯XI¹néLAøÏÂ,)d5ß0qÉôŒË¹mÔ{h§øÂU$E‡?9W—º*â õ=è–nëZ^ˆ=Mñ‡qy¬\›VQðÕT‰ÇÊŒ² 3ÖÜɺŽŽIß„Äl>*JÿÀ"Ü俕˜îÚÕýöƒ;¥ðÏóÖ+žË«á[O”4’,ÝZÚµïñ‚$Ms-><Ç<ì¿?×zÜ®Oý:“”RìAŸ‹Å˜
-åOƒ~ ™Ö:H¦ÓVå[¿ŒÞ ßã­@!;$ð×Zû÷ý T¹jL^¬îr^¼dN¬ÅüþKÍ73I‡fý£‘Yðµñʽ[¨¾%ÐS숦ÇÖ}6ãNÙ FüLqÉÛ?ž˜+E*pZTÉzŠCÿQîºuÐe`ŽZEžG¢d˜òç~ùÚep8£Gû¹9sõÜž±ê³°®ƒá‰ûu
-[öÜÛª_W|¦Û#lLtCt"{Ê‹@Aq-É}‹J1ŸèëƒH¬i 3µæ½˜ãƒ)
-¹[ò'ô ½Æ}«6 V$“4tž“0• šæxÿHÈiIø»'“b¼9Úë~åöjƒÉÖÖ Ç䥴§Ã´Ý=8&J.€±Ó.‚Syúµšo‹¿R›¬©€oU‘ÿ’CœÕ÷_š.UõJ^YqWµëÇîÆ¿?–3«øUò($Ä“ÒÖu•Ëïy•yÁ|ð'íg#gˆÊPJ´ƒ4<Ýg7I™Øu8HuÅÔ*à…‘Ädmâ€{zƒØR,³~çÀþU IÓ¤M†"{=MƆvoó'A˜E¯êÒWc¢¬
-ü‰^=ï³µ5½“E À8DÍÅä H¾ýX¿úÁZ…uÏü殲tª÷+d¼Oð¯º_f÷ßÝ'¯ªe;÷ȺÂh×ìzû–aÌäG$=Ä<åÁæ¨L쯰1h~Á®Æ¬Æ9ÎCŠ˜•d¨oÃØ®Î/…Ð¯Ï òžíù$øÌöë¶<œU<2‘ ¤¶ß­tÛlõëMÇJ¶a—‘”’NçŒ Ï¯mÌö Såð3Ì¢„9jûëì¨Ë° + ùªÉ_¥*™¾Šcè.h-ë”SuÎó#eêƒp Zžò~O
-ê~;V$&k ·h…ï³0Éâ¶Gi”Ÿg?çéW\=ã/2žpv†ÚììªÝCúë©Ü?'|Y4Oün.ƒÜÇPx­Híeðó PÀŸôUìI‘êÆ¿x¸ˆoB7Kéï}ÊTKjù½.Œ”&°SF r˜Nz9[š7ñcQ£¸êuÂä`ÏxÁUðx9,eÇ×8¢€ˆŽO_ž6GÖ½XL{]ËèGšÀ§*#ÆBŠµqE¥Ç»ÝÔüúZ8†R²žlGÎTÈÀK¯‚øØOyxV½ÐêMŽPN¼,xàŽýðŽç 2h²o°Ì7ô´kJQ>Ã(Œx{è„U[Vl~iœ
-Án£!føl¯F¯²÷V_N§×\f<ä^›x'0¦r}}mÌk­iSÇ1I&;sÇŒN0âI|2Áð‘`x¿ÛÄxÛQ”߶N?ÊnSå)‹õ¬™tjøCuþ»‚¯Ä¤˜©=As亻üEÙ’V²ª¯e™Ïû©ÚÖ²iímßÉ…Ž˜åS„u€ù¹¸k'Ãùdy,(rŠ.ƒ;ÅaßußGª;{?4ûYÑüvf…èªjKdaþ\Ü‘–'Ó…æ‹)»Bå7ïÏÀ¡U­Ûm/¡ŒÏ. Ú^˜¼y3.­#Jªë·JÕZ:èÌU—zâ?Û@Z<ÞÿñÞÛY”2e®â-oÖ¡FÖRV_Zâc¬ëBØ7Ú5æh.xÞóI_vïÈNˆ¼Ç¦½]åÇø¹¤ù¼w\>ŽnwÓ¥G¾Ûâ0ß^H«›VŠÃ:îµ÷–ñ‰TVÍ:œ1öÇñÑi”„ÅÃãù¾GA©Ó)é©r/ç=,œ¯«e©Ùzg´ˆ¸%3úUž8ïÙñô~•¡3å|³ú
-·)YÛñßt©üOšy¤†ƒ¢!S¨þÃú—X—G÷¤¶]#,Ó–­¡{õ^‰*ƒrÔl*é ”¢×„j·¸Ÿv.f¼<7¹ÎxW÷\X›™t|ÞëœtJõ¹ Ö²°*‘çÁ~òmëL2»!¹îåå4Ѧ©„ÌiFî„9‘o[Xj‰uÑã0'1|7Ó€˜nb@bùœÇj¢àõE ó=c+en¸ªUÑ­Ù³—ú±ÓDáq­/ôøøÏ[”[ºÚÈÛ&"[©#Mƒyñ<úÝ,Ñ?+.Ú Åýù3FC†¤ ì?—VQ?ª@eï«ç¸@º$Åí?ê–ÈzyNù{^WÓ“0=J‹Ö»ÐTäo\ÂÞ9¶0aÕÎtz"tû—,­Ü†—Ìýñ5müW§™Ä»(¥sA>½z'³n¹¹tóO¶écK/1½ySŸF0§7$á2 wîž-È[5u¾#Ý¡( î#I"‘JÜížÆ$s½ä°×¦?¨GÁzÀoY¢+uOÚ AF¬ÿZr W±¯}û%™Üç’†áИÞë;ó³bæS <wܧPJ+‡£¶y»r.Ë}Ô§HÌ?‹Ò1gjóÜÿ|÷“”^Á”åê]SVN\î™} Ñm®Â 8jŸÊï Íë Ó‰ðÓ¹¤øH3žTâ—…£>Æ^fÚôüpÕ^nå_ó>ê#fgÒÅ¢©•O=Æò»»ï%lx ¨UKïznU<.õÛ!¨zcõNgÑ¥ê#è~ïñ;MI¹ÂÚ ÆµõóK”kæ7¸°éAݬ‘Mð¼0 É¦«~»½º«®ðñ
-]®#™£f-düÔ
-i î=~RÚµ’(t ^ó£ï½x”€kaÔAXê‡S÷ñ½neü ¹XkÅ&ò|÷ ¸*8F^9øÈž?„HÿœÔpvõ(Ywë
-8K«|¦%@™T…Êïr¡2ß~vù]¤X@éO|£&÷'¤
-QÑU™2ÃAJõÐWè¡6åÝÞh•ZQì™ý'6- µ×ªÑ-ü5Oê‰Wî¿ ¢jâRªî‰³Ð²d–Ig#]Ä7j®&°…û,QÂe1½µ·0\¾w³µµ6Aù("¿pP VôªôZ㔤×Ôç”4DlD¿àÅ¢¶*ŠwJŒÖõÅ1Lx×¼@``wÖ.óñnG½jÖ£ˆ’¾¥Q ß[M|B<@` F›nAófçEò ÓO¥ˆ¡VòÛ0_iò›í;—‡æϯµ®ÚIç­çÉÚ_Ø°¶Áúp=JJȵªöâá›Â°—=Fæ÷Yaå9­Dº\ÛqÍ؉ö¥}ËõýE&›ÎÓ;ÉÜÅ
-¦CuJpÊu`õC/¼Ä`y˜‡œ4_.©Giwþ^P tò2µ{ÌjÔ‡£tV@Ž°çΗ÷â/î‡ ôÊß‹8.½5s×n]žLh} ‹KÖes %{ÊàÔ®<[Õª(±ë3@ë!)éJójp¤²¢ƒü{Ëy[J*:•‰¹42K¶F; ÖPy—!•¯“Òá9&fM‹l¿ æ<1±¾Þ¯uÓmƒ‰ÍÄ%qph¬y¿Ë» )°™¸ºë§´B<Û¹¤< +ýr!Ôcw\Š gBÊÓEª¡3T”™ã6é\™bX1³Øí8÷ÑŠ¯kçE;ªJš•2>7d²œ2·Mð¯™\Þäé41
-²~)º4ŽÄ3$,™ªù¸¹W¢¥ÿ¢´'UÎásþA*6¹§02\šJ©mÈweK|ÔZ½•EÿD[¼ä¹˜ÌO ,ë¹gùa+qÌ^·>[‹0Q`0«Žu‘wj±s¦÷ãíí„jæ>ÞŠ‚—™zÄÓÊtû# ã &wwòj$,ó†POd^ã¹æ~*âò8öôΆõãýcÃéœAÜÀáF F…C:’]U1À”„I 
-<¹Ø4
-"¦#ÙñußHX>Ne+èDü¢úÅ!E˜÷”ÅLô3ÑÁy5z¼1šïé;8
-ú,#§†V/Eöw¸öœYˆ±>¼ªUÇå€JØ ä>Û§ÏWJtÜ©ºdœiÿ¨v‡í`Y=¹WµxoyA¸2΄va7æo³DUÖ2¿ÀÍ”#&æµÊGÑ ³•-“éÔ[“ôaL|®Ð|øN“ˆ&¶Ì÷‚BT±hÞàÙ§qu®Ó˜eú,<¼^Ç­ÐK·^%­OÀGƒZ
- zÖ¾ ð8’v7 î0˜¼ý€dÎBêdz–Žcé¾!5} ÌQÍHM1s; w>1wKbú®xP?Bääô*çáoÜPrÌgÃS·ÂãŠüö6’³»ÞzΪÓâ­ß †X§q'Î]ç•1"|1¶ö?n#ç€EÙî²Ï;Ã_Æ”
-?µ²é¹ÌÉ–èTËHퟕϛI³YÚéIÝ­Æoµ9ñ œ}º¨2 ™Q›üô«ú×fé #® ÙfBNë”àÕgYAÈ'H› 2Bìë4OSq[ñæO“|#œ5Âoq¾÷þ(Âνèm`ܸ{á«­mQîŠãßõT¨b¿âLtÅÚ0¾0ç5NN·›‡A€m4ç³×OÈõét=èÄW¦ ˜¤‹÷*+5›m#H¾Naåë³…°d*_g?f1sCª/ægM…dÕªJ/•®è“¦È–yðmö_5Qëz—â(çYdì_ìM,H LQKÉ°w]ùœšHºG/(ŠÐ½6$°K‰ÄñræÈë³–©’@¥ž‚EŒë?Z¹î¼Fdª¸Üº[Îé~]E<! Ô2,æ Tr žIçà%T˜WˆwÚ6L‹{2{Ž4;<à£>Ѭ+ˆÉ4WMß©rØeMž;ë~›ä–å4¶”y·üC™# <qý.NÈ´,ŠZ(±Q<hyV4mQö¤aÓ2çÃCÉÃ}Æ—¿žµ¬wç=Š;3^øž!kÌïåû@y»H…ó% ;Ó´]æƒ|qÑ
-ž£«î•Ä’v³ëv ŽiIuÙÒÕ¸i#ö°[‹·(<õ?Ôwef6=œ—t'±yž(@àÜ#þ¸Àt'á›
-»X}yt}æ“4ƒ‘¯UÒ§@[êþ»^£Â8v–C{T
-f¶þ¨Ûã{Û…£ ý¢ôæÆÌ„Ùøâ¨íñ®}kÛ¯ wxÔ‰¯FC´Uì‹Héî b÷°öáåÓ®ÇëB1•/¥k]걯*£ÎÇ|­–^0€VÍÌi9ã¿ØÚÃñ>Œý46™"™}„{xÝSn
-æ¸ÚÁ+ú¥?ÃóÉsŸ«b¬%Ÿ^õ5DSeµŠpü¬zê±?üu«ñ$&D@ušW{­åù³!>ôYL¾djèG
-wž4ÏnÑH¡6SV¯6²ãÌ·…€û©RÊáRéÖ·¹Ì” kúSÖŠG_ÏT3©Ycx±<Â^ÑÒWÎq­ïÅÛ2U¿² ¬ÑNWåÏrl>Çv³Ú:sb\S“›æ—V™@FaEˆˆXíl½Šè÷§1-ÆéðöãÔ4P"ÒÅKO!d\`èˆãÿº¶Zl
+xÚµveX”í.Ò!RÒÒ=tw·tˆ00 1ÃÐ!RÒÝ)¥€4ˆ
+RJKƒ„´€gðÛ{îïìóó\\0Ü÷ªû]ÏzÖ;,Œz<ò`¸ DCò
+ØA¿ÜÉcrG™!0{( Â
+Q„»ú  öÈÛ‚<<·™n£x ['¸—»
+µCÀ]~
+BñÈÿC5y›Óù/w€;ò_e@î¿cµôô´
+pÔ“=vö
+ÛÝžØÕÏuó€¨+ý+EáýÍÙC
+°ü½ÅþˆVP€{ûñ
+D¶$¸%(›µ®¥&a˜ +3e #w¾YhM©;?’[jÒ)Ëçó…dkÏUu1qli䙕 }ÊnKj£ o+Šwt_Ä Œþ"9Jcz\Õöµð®Wé$°™ á|ß{æu'ÍÌx':ò×YÂ3Ð[ùYΠ뢊a ,מnÒõ¼¶M™xà¨Þ÷ í%zkO$ds$¦„TþAßÀ&a{>VÚÛéÏù¦z‚w²<ªM¿t\T§¿õn”ãµÏClD9#ø±£a”4ž+‹Œëc.*ÊcÕwî'¨¼;G0º?Cèðò& pZ
+ÝÌþÜÈ1éóu©÷¦žùøJäF±½ã÷P!“JR¶;¥AaPíëA<‚_a„í#K»2‹žôíHÍ(”¢оåVJ!Ø9ršn³lò ©²fŸâB‡ù]D _$fÒz¹EV*ëӱ˥!,e)|#Ȇ`ƒlŽÎœêlò{¨ðÚÐtõh“ãŒé´;k›‹Ö³÷ó)k›)ä„$úòœ¿B1=ûpÃ.TSÉÑÆlíø˜£?¯AÓ—¦lu¬ç؆&«4j¤gO)èmÛïždáâÕ¿’u¢1=eS/°PtˆèéšK)¼äE,< âShZÂÃRüॻÕ)WôÊœ‰w›ŸèM²®@äçŸsñÐL¥À":jˆK7ªO;ÐX¹Ñîå$zÏßhÔJ¥ô«óFïáJ%ewk"*¿KÅT¦uç3pØàÅ‹´ \j£#LãdÙ!ð,"Vì®SCj\s]Eê‡~K;܇WˆÑj«r#ŸO¹¦;v1‹hßvã³n0䶾(Òß‚ú®Í™bå^TÅî‰ãç/ÉúâÜd…5q¾4(zmVó v|7&q4ˆ‘Œ¡ ßà‚‰&™ÄaÁr÷‚Â_\ÿy {w$σé×oFxv›ÄJѺ†Èk·â³NDÎc wVÒÉñØ……ýL¾æòÐ2’ð£/Ñx¬_|þBs_>Ñ láÄðäÚ**lŽ)Ý7y–yy¥a œ÷±YÒ¹¸(S]aÔ›¥mÊLÅ)”ow “¯‡>¢«éÆ6JDÓÂZ&w~'`Ö¦pVÅ´á,iKòƒúQª-0Nxð–œJÿ²úR |WXò¨ŸÆ§åìðÙ¯Ö'œæ‡£YºI˜«òe³x]RÇK= -Æ*b÷P$†òMˆÍ¹üW^ñœòpaasí8N}7õ:è:‰~ÍÄ#r5màð:øjÝN^S馀’î‡ òTQ÷ϯŸÁןTÈS÷o¬ÀÔ»¬Öxä¡þgžÝW']7ÂomWͧ‘v%OË’„Y(Rœˆø°‡†ÔN%_íz€ƒt°þƒ”À¼@!·Aì³kü¥»?ë~ø”¦8µZîö¶¼TÃ;±)RöV9ì…Ã>œñ³¨iÔëìþ¼à"”ô‰©Kx9áÿ{c.q¹z=)ÚjQ‰¤/墯EÙÜF_°‚bK¨ì3«Ü#L˜\k²ÚqÚI
+éŽf4ˆ À¬ŸÜù®£ sõ¼÷¼òœˆëg£ƒTv‡žÞÐ`Û‹½6¿‹g?¥­òÌ ^/2åˆî(\Y|ÿ˜˜ÌªKª)œ€š.ù¾–YÙ¤³ZÛSjxÿãÝÚjSZS¬+"I3qdn «?+ÞΘ•É²F^îc¢õ ïf¹Æ)=S½ç`OŽòq4£|ÙHúóD²øjïf^n'¤Z4Ï*äàMeZ§þU©>φk±B½ÎVø³öÏ>OŠ_«¥…BÖÅÔühjÓAX¶rGxÞlž­^x\øÁAkbY†-ýù?üž-yŸ28È@–­ÏjÇIS½šbÝ3(õÍ$þòh˜ž¯I»ÌâPDõ$—Úãº2¯”¬r]
+ŒF¥¹l’÷™(™$¬ø •%¸q[')‚‘8–µÔLP´ÌgEœmLïã?î£(Ûiºhn3?¾•Ý3Ý_£lî\1óœ
+¼Ê¨²ñ[ˆ¦záœûÃPb…ªØÌÇÀVƒöNÔqÆNÅ1÷`bàô%zêöñBÕÝÅ郦_•ÆùG VJßss½øyÞÎ÷Uo™GFd0ï«O«5ܼž?¼ƒáâUµïôhË€´j•>¢b©`Wõì½ê R“rA8·02˜pêó½ò‰\E.Aײ2"º^ÌR,¶O„Ì=‡Œn ê8‘뿉Éð•îp¯£Mž»—ïü!›Í*"«[2HLÒÎÊŒn[C¸¸Ñ·º-þº×rãKï ¶’ͧQBömyaf)Asùû[[RqçÔÞ|Ž§y6tµmIQ´a/í8ÊÝaQ$|æ$…#²ä*¾ƒú ÚâAm
+©5VISè– K:@ãÁ§ÏHvYMk(°ES’ §J.?PU™º’‰XÂJžÒû,P5î×sl7Coâ_¾]cÃúŽýÄÓ¢ _ø1EoPo©‘zÍ‚á]‹QýÞNÑ[WÊOÏR¶Û¢÷ÊyêmRq”§Þx¼<ýuÇah­ññÕÈäýªä^U6UD[²©ÂfS<#ÀÿØA“Gì9q¯RëåRa2 VÎxâíüÝ\÷€cè“_dÔPP?º‹ÁÚ€u°—0ÃVà*£G†áó+bé@"ù7Ë”Ÿå0ç8¢xœ W—#)]b€Ïý-2l5zÓÓ²3×ù–Õp—LÒ[-„¾žgÿAhüq¡ž™ó™¹B‘`&I\¢ñ RÊFÔ|ߢө×õä!z6³Ky¸ëÝŽZ´–ueÓª}£c†æxh±›8=v¡9¡-I׌ּՉ8†*­‚ñlé …#Ä3±Íûå?.(àáyÈq)5¬d
+G.\Ò¸Úx¾*™’ V;Âý µy¤šØ‹ä—õ[2—ßM“ˆ©›Ì÷{6‹o*X°™™Z FO¦fF=N`íŸ7¢tý-³Ô?QÍ©V
+”)Ò¥3gnvFI-.‡²TÙÁ‚‹áû¾¤£€7èï4x’°ÚßИ™ùùï!ù¨gÖ‡.]ÆÛ<u2Jì€Oɾ–¾|¸î
+{õÆïÚ_ð*¶›!^·8º+C²­Ï8ÑOW'œ 3«Z+H´Dî{ƺk„jÏwH 2w½ª“0îBÅ»´ý×RËoÐGBy»ý“ôt[\ã!–,ý!\&S¼’?+€ï­ _ñÖ}¢‹‘ê¡øp4¹ô“  êë6_$´sü¤'™¿1>âÄï,öl¸÷mWúàHüqê˜:1ÃtWû
+)™™çUg:*ñâçQ{ï—µGvŒæ×WjeGÎ"9†K¤ÝZßÊ~$êXf¬•ibR¸Uº.™Ç€÷(ë[¸´®6iR†Ô½}x²iŽaæ¸ßEÉ•ýÕ{WÊ U®âК=«YÃdû]÷j0âMÔÛ‡óëì²9kÇ¥Â^m´õKyeÛGöé1”-ÔSý0¯oï,ÀØ~Gœ™.šMÁ0S»cHç©4NN,:ZÂ>[뻓F—´”RˆÝ•¥,'M·8ï#zÑB`ãµEŠ¸FúÜ,¯I½}€EiYQæÎŒýs -&IüQ®‹‘‡Ë¼þû^Æ"'éùWâÏÓŽ¥åƒï¬Â`–}JÓe¸Ïb.Ñp -_õ îu¦,îÔÁ±ýÀã6ïLt“ò—¯©ë{ãºíFÄi¥Ö¿é ©\¯(¶ìÄ`}<ÍdMüÅhTû §õ³_GM´«ïj6`ÅØ;Iñ5{ØðH¥ÚÄ|Z W[eÞ;rRïlnI0îe µÍ‰³ ÛžÖ¼¡z
+dYz’z?”²Ç‹ªD™c‹£1KÿÕX"$ÙvÜË&¬µî/*aÈpžsb#~ÂÓå×8é=Ç抖’ÒòÊèe O¥´ù©í.kNÆÀ¼E?ÄÈÄAòÝUã#‰ÆÓæ£÷׊ݾ› ¯÷¤»E^z”=9Îøxi À¥§ó©§L‘´„%×/ÌÞC50¼0W\q'Ìûà %ž¹ }"Ų¹¯&ç,OïaßqÜ“Ï-pJ¡ìY6Áaµ®5cXªY¢x?Û3ÝÛ¯a©À,³Ló¬·WåûjÊ,=ç'ZÆ/&÷EšjéóÕqõJZ*IóS¾š¶OO˜ÄŠu7‡F®¹5Üfîb]úãYÓÝ@›ˆ÷Ȇ 5캠Õó{B¼#EÒ£9°ž7ž)0ö¨IuˆÔÓ5åKë½: #}P©ñ(ɃŠ
+«CˆD‘è©—ÖjœÆ+©{§Å‹0'/‰Ä
+åå&­E­;ÞoUÞv­½ò9sôæÔ³òŽ½8…›cáúïýdo·a.iÖó—Þ4I¬ oÎh ãÃiŠÓ»EO;½®vÒÆb1b%:ï
+=¶]ù({³‚i%LV“—œ·î•zt*_³T !Lz]œ†*]4I»˜I^÷ƒïïµ(ì5n®#™™¦6EÚ£+ª½Z]uëÏŽÄÃÖ,"Û1Yß®Ïï‰ñ¤æÎÍ¿³cmUSÑ漣ÂS·6•E…Y²_Ϭ4t6d„ ×­úfzÜOßõ½F·Úè1RtÜÿ°`ý#ùÄãîóð&CNŸÑXtÿiQ¤&iA³ñÎû檆sbôä…’ÏqÒ‘tv“wÓ¿-
+Ü%žÂ"^þ\ìØg7°¡×D0ñYpo"”÷å%1KOgá[Ž¥üšºk>e5·öÒÀåéï"4,]UÒL?ÔŹ>_Lݱø€ošç¥}zê‚I©m\.qˆŸü¦Ál›ðº®ïÂRÐ>ðZ?ßµ‰®&õ8¯k™~ åáœc¿nø„ {9ÅYÜ:;‰¯/8žl½ŸIùØhÔÕÀñy-1ïþdò @¸1ͧ$–“LÉzØbï¸}!®«YXÝ9·Rc‰|ߦ†IpQ^¾ýöý@3½ÊŽ²k¶ç×ÝKÆ .)΄‚±·/:#eܖ±ٺ*±M98ß5˜tÑ“
+©Èã4~±¨.
+:rïK!e†9wü0j;ÎÓå­UqZmô©zÿl{Nù”û RòÝL½IúP3÷4‹•%Ï~uPœ½#úq\ue¿à
+ö©1&>ïb Vr¬Ñ«¸w„þ‚ÁBd!9%r”•ΑêÇZæZ'ûíÚZ’g¾jY=“ET¯‹µ²o„i·0EJœ²±Ò YüœiïßdºÅv°fÈ>â2Ln)¥u¸Ú+²©ê·¾¡Îxôd¬]¾Ô__ˆ–#Õ”òR‹ä0øZHc™ŽLöuqV’æÂUcê^cT=Òè™×»*tݽXñá™I¿Š¾ñÝ9{
+ë7-ËÑ;óZìîÆŒúnIŸ¥Ù´pO* ÎÐÙ¯&4«å1q 3m¾¤¼"È1IÊi„œÀ¢‘[2xßÐ HLÃ+GêüÐMüN€–#.jyG%ÕL&S†ùd)µéÉãÃ#ò ÁàÈýk–„™÷\KãŸfp¡üÌøÔŽ‰ÃA•Iî„N‚Z$è#óý®¶ýï„Ù.:é$aK¦ýŽ¯xÓëõ·p+GØ Yê ŽÖ˜‡*¡Žg/£ù-Œ™liÆvˆ?³Œ¿±’èóÄÓ
+}2Þ%F«42pú~¹.¡A×±Vàc¡s‡zU×ǘgM!*®-ÑKïRò3ÖЇ)ò‰{Å%yíTfÁ?>:]í‘íñ¸ïc¨ág5ü
+üL¿¦‘K k§”n÷ #?l˜ðbGrm÷ ý¬þv”¶€ŽçTíÃ]b#jªõ¶½L©ì}Œ€ÑÀ·Ÿ9S7û"žë -^DŠ*Û*—æ¶ía“Y6ÚÆÓW…ÑÍÃHÅ7]KYAE\*uF7Ѭû…Ù»­X¼t€9 ~¾Læ}MÞñÌßo‚¸«S÷уWÈåk¸¯äÑ["áíŒIøcïfÜôs¿¡»3ývԾ˰Aÿqq߃ËF.Ú¡ä1iÆ‘ÒÿÈÏ;MºòÝ%Û©™]5'䜄ØÇÜŠŸä†Çf#ktž¦yR˜“`¡ z-qˆ"
+¥Ÿ¨ƒÍÛw×à¾ãYrÑÆî÷Ü5Y:–"€¥Á7JÀ¤±À£[ ººR´‹ÌzTHMxø~Ì$.aÇÓÅr½S?
+)øjñÐQ¦«ÕÝßq—|iªq›ô9²Å¸r(Ú‘…]Òç¾\1±~èÎÕ*«næ¯ì½#˜ä{[­$VÃmÊM„dÝÍœmŸmVQ¸70A‚ŽDøCDì<yWa⪣íåjïRùŽBWÍ„<­ñe :)é'¿ uÀgm!3Œ.·ž¦T%Bû@œµ‡¦Àö¤põ—Ú”¤£u *­ÆMÉÅ”kî®YXMüVL!lÞNG¥´%ŠI+‚¦qQa[tr úC
+ݶÎa¸ÙflwÖÜØž¯­¹ò ù*À7÷H‹âM}2ï½o÷[LÇ7¶ã4ýŠÃÛÑ`GÞáæjBm¶¿;­ó­su‰)v¿¹ö±\«©ˆÁÞ"œÆp(µ-­ðJ©.ÄÖ“åÉÔÌ”ËA `Ãö¸s=“îYþ§Áƒ”…â¼&2 =yþ[kz8vÚ©…Ñ‹¶÷dÀF¯”Z»åËä€Kó/f¦ñnÆûã—+s¡yê>ÝðE~ªµÃŽ8èMGÊi^I‹”dÈÖO5wóy ણ¿x?WQ&˜Tú4°á«ß†V·æÐ̨ð©ÜèV ÆmE)-É×xþçsìøêÄ~[k‰CE˜÷â–ßÕcdz‘Æ ž&…ÇÜ·:9~¹ù³ã] Pý2ùÃôKWv®žF›éy¬uïð< ¾®z«,×Fä«È *½¸0žp+¦Ñ{kpj¢©ÏumE*M‚6G¨½÷bt¿ÝXìÒM‚³u k3¦ªîhÄc,6ì–Ó»‹›.”Š4ÛAp¨œ»ÕŸ*Ž×ë”Pïó]?âö÷þz•&§[7Š!.Oãʉìô÷»^;hJ›ŒØIoHSõ'ýMYsm^wóËÒ÷° › ¯)è¦{ïI¸/¾Ñg¨"Œ×ÈŽùÕ#é“ÛÔ²«±wÑ8ÊÁ>÷±Åwa²ëSÿæwÞ Ÿsú$3kT*TçD+»þ¬“ô#—²ƒ ÿøZ/ðxÒ–:'ªÅ$4°®<§rõ*»°†âúÈÐ6ŸƒG[m™‘&ŒŠÔV9 û­¡O’(ë4½ù"Õ²lõÛ¸4Ec˜ëF´qÍ¢ÌöVŽÎ3ïž>ß“cŠi;ˆq`íV4sÂwIÈQæú;—µ…*
+³À;àrµ‘Ú[Vàt°@aæ;ʵDq
+—l¤ewõïϳà9’J‰Ôyoâ*uB^fz§vtTœ[Oc'ŸŸ ‰Ëú5Œñ”ÜËj½vaQ|…žxÿe¥ÝÜÈÊ\EÓɔӲ×ÔÝ_
+~Ãê7ªU¡'ùMžÕÅ2UûÅW§£¥Ðë"C$}
+a&)˜48âqŒVæd¶r¨½|â@»~ÖÑéÕéšÜZwG–¤Ýsx`^l:gõ ë)¸Úmx2@ã×÷ÄüP-PÖ=} å 
+õ]ãõ°óJöèW>~>°¶Sö+Ù¶Ñ*cIÀ7›Sñ(ü—;]:@¨ÔFÿVò]è£6Ë— ¼û]h\e›.]q*抴R &Ä!¶ŸVV!ïÎD½yŽdöß¾>š$f—ˆƒ ë5yu;ÊJëVTéoéQBçþq.Ò± Ö%2éˆ'ZÑ;åâ]¢M`‹9¦¤RšÇtâw…öqÄýyåuãA 6 \õnNõç¶Ü=YpRrNìëDßébª]šh”)õħõ·Ù]‹%RÎS¼V×L‘–»”µôçS¡ÌÔ>@MÓµW›B
endstream
endobj
-630 0 obj
+879 0 obj
<<
/Type /FontDescriptor
-/FontName /HIFJJL+LMMathItalic7-Regular
+/FontName /HVAXQD+LMMathItalic7-Regular
/Flags 4
/FontBBox [-1 -250 1171 750]
/Ascent 694
@@ -4336,196 +5770,165 @@ endobj
/ItalicAngle -14
/StemV 72
/XHeight 431
-/CharSet (/F/N/P/S/T/U/V/alpha/b/beta/comma/d/delta/epsilon/f/h/i/j/k/l/m/mu/n/partialdiff/pi/psi/r/sigma/slash/t/v/x/y)
-/FontFile 629 0 R
+/CharSet (/F/K/N/S/T/U/V/alpha/b/beta/comma/delta/epsilon/f/h/i/j/k/l/m/n/partialdiff/pi/psi/r/slash/t/v/x/y/z)
+/FontFile 878 0 R
>>
endobj
-631 0 obj
+880 0 obj
<<
-/Length1 1722
-/Length2 2797
+/Length1 3009
+/Length2 35332
/Length3 0
-/Length 3879
+/Length 37014
/Filter /FlateDecode
>>
stream
-xÚµTy<ÔyøW9B®ˆØ¦¾)ÇìšÓÚ2Ç„%3ŽÃ|ç`f¾cŽÜ*!’\›r”XºtìæHbˆ.W”„œ¥ÒMY¤¨ßwØv·~ûûó÷š—Ïó~Ž÷çù¼ŸÞz7öWˆÂ¡±–€³‹ UÈtRÙ¬` Ôv!bSù
-`ä2X\ §ØB¼H>‹ÁJj£P’J’l4@¢‡Bá‚P@åÒ
-ñÿnó•º ŸÌK ÿþƨ\‘ ê_³ùöØÁWÀ‹A€Îbƒöɱ¸ >‚«“=уŒr†µÇE¹@ðt¸ha„p!ZR`çl ˜áMœ¹) Ñ)‘K³…8˜µ@A2>;<'!ÄÄü·¾C¹P87úÿ
-,
-8sۮ
-Â’‡×Fa¡º—‹n˜ÉWè/1âÑð6!á•¥A\v$@é
-WHKÃðÿgã¾ëe/b³]©Ðð?çú}0•ÃbGþïðï¼@ kCWˆÏ¡²¿ÃX{VHsc ƒ™‹#^ô/V"pl@áLÐXc3ü"B‘l–4ü,±$Œã¾Ã`µ‡rA
-Dã`ÍÓÀˆý
-o ð¦ð±±ðš›bc¿É ^|pd Ïú«-Ùv
-‰Î Å`ÊÜûo¬Þj{.ë“\|óÉ"ƒ‹H
-?÷<ê±ßUkp·óºÅW™2ò;1ˆðSÙdΧݷYŒ¸þ4%ßñ.Z§j\qW.gƒþV ÷öåÞ|=>ÑÍ2 ¤–i”€¦ÑÐ-¡—8ÔŸs§öl#ÓO]ˆÖ½¡ýæè™×c9ß&’Ó¥d·ÖïèµÀ5a×è¯I;:ýò£ÊM…c^V« ûøózQöµ çŃþ®¿2®q!×&÷HVM@Yü†«MõOéÁäiÆ©žÇªB=ãß”å$Œê
-w^/ÒÁîTÞl›8¹n6½qU Ðø´“2¿Âºn¸Æ®¼oÏëñåá,³% ˆ¶ 7óÌS*u}7 ©óÕ$ÿ<ùM W {NÝï?fGì<sïcCCŠ ` öMUÉ_†šé «öuÎÇ©Wäg=‰¦t”w¨›Ì÷Î#ª Œ[OU<tÀ5íÚÆåWc«žd¬ N=òx‘ªfæ.û|E/ùæ×(sàØE:¯§®;·zs¥®Oæ=‡'®”xûŸ‚QÎ&\×Vl¿¿ï¦P"eÛØáY²¿¢‡sáø©±:¼¶ø^Z æÌY?U¾·²YB?õ˜Ò‡@Réën£±Ç.ÝIË^õ¼ì »[R”Iœô5U7l¨ÉÛ܃VüŠE{ .—#Î:Ñе¶gk _;£ßuêWFâ‘!`/!~Mò¹’ì¶á¡÷•ÊÑ['W+äå˜dñ6_yh©’—Æq*2†÷í0I›O°û‡6
-½Ò=ztë?b¤-Iåå«Èß°zʘ0É˲CFù2í Ö ³•[4ÖŽÅ]tt6è:Û¸öñ6롲D[wEµ[·º‘êKäÕ—Sû„ÌNqKÃÌÓÏO‰_”+’/íÿÒn°¹oƒ—ô4;À|üáÚü|©C}øWï³4žÏMPt®ÇË5RÂŽóbÚÆ·¿¶RV:{?sX×@¶Ô¹¡Øž¡Òz^Ì9#:tâ7?çÄœóºvǘ½“iÎ|+3<ù¼¸?¬‰HR¿À_:‹ØU Ö*ìRPzÆÜ€Œ¸;ç¨ó#ùhytÁè»Î›š}î5<ÔÕÉùå¼”§m÷ÍRÇ)!†Mq÷òg)¯RDCCc>ÅW[¬o«]éõê8ä.õÌÞ\; #'ö(Ær ÷j*Ø<¹§=ãâò§ÉNù#•ñy?lTÌh¤r2ÊÖTŸÑÒeÝp•¨Ø¥“JJÒZ‘öVe™ZÝïzæš-Yzìú[8ßHiì1T-¿„#›Ü‚fâ—•µÙWH©¹µ¥¬ª
-S©ƒq‗ÊÒÁŠ]¬°ã%ŽçBKÀ×ÜýŽ5Y S$yf‚éÄl¡ùŒÆ¸¼Ñ¼a²¯R맅+÷ì–©”Î}Žg&²Ô83çíŒérË4/hGø©Q[³/‚-ÆŽïßxÄíŒéiª|jt×íÍ‹Œö½Ò-†+1èbòÂegBAàò½[yĪëûO:·ÓyaÄUaGSår>TÕ¦æ¯zñný=Výcb{µ[h_-%¢ƒÖ(ÌÃï\烩YÚݤ01þhÑÚµ\úÊ\Ö Å  gîðgÕ̲„­½ºÙ›#ÿÞÂÁ—ô]
-(â…”¬CÕ¤”Ñæý–©¿'°f`\nÞá8=; b&¶p¸oSP,œ:¸;Ú;Î`µº¹‰ê~ÿ¡CýÝ
-ßG?öKß÷{“UåT¶«“©¥BRÛ†_£1m•½‰¼)ðpwÂr‡X¼5{ˆ 臗ãçD/ÇÆäÛÖâyw{6&OáÞŸ}9´ÜfBŸÝ.3ÍžŸÀËï)1OÔØ}úÇŸõ ûœü¼w&feR©’<Á¦ 9þ°“¤^£Q*«$[”5V©n”ß_Q¶Äe½nõ¹ä©”¤}ä«ÜO²2g/åÚ¸Vÿ¬y¤Ý° Dz<ñ`uá‘CÚ+¢ì=yùÆÔТæœÛ)W7œk~»ó¨›¹â¥áõÑKÒ<¸ýeòþ¦¶“E*+ŸÆ/'íy}ë‚Ê »¾Y©1TSØ‘½é$oÍmõWNš±f±E+³{)^AuQ­&‰gC3ð2(«3?`oŽn\ñ ápbÙ%üíË×22 ·=°e¿L?BÏ­ÍR>žºÅçaµVÅžëyX§tÏLNú²51/CÙ%^ƒ48H¼ôç÷GGT_'2:ûvøû¥Ö(Œ‰µ”ëNVªn¸Èª:W¬Ô½U?aàVG€?eŸUŠÕ5˲ÎcŸ_¹.U:’ëCЮ)¡¶¥0å$žÎZ#æ˜ÿ„±Ë$ho==¹÷ºi‚§ŽâôãËøσvx6¯\Š(ݳQ±Éi­6ßð×›’ø&6õêä£a§Ö©ÉÇ7æßBÇÚ¥’¥æRWhEëkÔÔ[Yàس„"s°å⃟ÁFÊþ_iOω·dÖkîÜšà›+‡èèï–>š˜v{6IS|©ùºo3'·,þSeÉl“G»€òFš<ë~î@rÔ©mÓ@Òyƒ÷LÔT§åÌ DuÜhÂåÃg{nXa3Yãè8ö·³‚GIËV¿Š&XßY!íi#SˆªßNêåD<¦ŽÜ*¥¶yr”[qz¸ÿq
+xÚ´·uXêÖ>L7H78twwwwI3t ‚4ÒÝ]RJ‰ ÝÝ‚t‹tÇoÜûœ­û¼ß¿ßÅýò~ÖZO ™ª“˜…“PÚÉщ™• ¨¤îä`êÈÆʤ´r·7u°3³²r"QQI¸MÝlœ%MÝ€ü
+ž1G+{ ¸-‰´~m){ðì‚Ï›_Ç€‰“ûtà±4·s‚@
+ÀÎÅ 0uu5õFbÏ;À— <Ø@¯¿†ÀÂìèäv8»»½X:¹"ýj(7€Eì—èoÄ `ÿx
+® ›§Óàî¿·8ç_¹“ëŸm
+Á±^ûšüqâÒBMtËÔ_ÉŸMJl$O›Y+(Kiñ]E;9Ý|^¡ÞÎé¬æ„fR€ÖÈ¡_kÇ] ûø Æy*ù›Šæo°ž%³lØ®ö˜^‹è„mD‹“mn/wØqѦÝbKô3&…a¸#òpÎ]XÛÑ%"Q´ÛYü·XR´w.kËZðïAmÈÄ$”ÄV2
+âp9si523*®Rk7 ;{¯«J¯ôx»†Ö¹!Ïп~uüJŠF¬;—\Cïù:ä´Ó77^ idþ|+î·ªx›†ì^µ”ãçdVÂ’}<¥¼oå°fX ƒÅ12ÄÇÚO_T_¡`r—øÃ9¸™á{ÚÀ­ˆc+D&0oòž‘Gs}pçxqL_-_›p˜4¾ÊГîû‡Ú‰Ñ¡˜&º®ºCªWÊ Šßk£´—"g/—åžó²“±ü¸îCAâñ±J@8 jŒe«šDJ<êíu½…îr±|¢E÷ç´a¢²$kÚ¥.=j„Þ;?Ep„©Ee,›X‡õ¥ÞT·×R¾p
+nuèÏ õÄ(^³N®ÀOoi7¦²-@6iqÒo¯¼zLjAg‹ÜÖÃÉ]¤—Ò€"~8O¨5N°FâX½.ãQºÉkv@ÆøB4#äWŒÓMö•ò¥­7(1èKY’Ä_éT© ’ät>nÇcûé7 Æbø¤wP5tvüo¸Þ¯CþÜlÒpó+ˆGe§¤ 0E)º¨3ËÝtýžÂZdÜ­ÎÞã=§‘"BÆ*T4æR®ê\þ,ñqxÚVÎÑ )$Bõ!K
+Â<æfK/Ϭ†Ö6ø9ìí>Ç2¯SÒGJ¢7e ç1m¸®Èµ½Œ™iíºšŒR§:²µÇo_F©Œ`Lw!¸’íY¡,œÆ A‘U_?ª·NÎçì M~èg²'}ýðf»“\Tÿcv>ƒ®gÌ õì6Í“Oó³¾ é }/ñê!·ZÌxéÎ’Š@.vÅ0J›ø‘/:r‡„˜ÖûHåÙ^“ó`Ñï<î+¦Grt•fáLÕ… Þ鸮W 4!“‰ ¤fã¢Ý†^¯LV‚Ž)5ò·~’“n¢K£‡×ÀêØχӸ(·.×®Û<h1PÊ‘}+¬,Ä4æçÑFÖ£(XÊã ð²ÎS©uÛêçÔ¬®Ã.KV ÏX0ÖZ—V¯]Ìwxr[Ir*k<3°¶¦n8Q20Á˜}~O”ÓÉɉ
+u£âÒªèÏV1^&›Úl|+ç*X¯šGŸ ‘eI5¦‘›<e€Õê6Öîøh™X{ŒÍf¿güº-y’‰œTÈbRvœS¹²×t³¸…ß/S²S.¯Ö G(»6 íroU‘ð\­¡XB»³ûjù^D»ŽØîmó4´Æî™*_“5ÀšèôžîÛ·@z!Úì K{Q¾TðE¯TôòD@AÿKä5;ª;[ƒúCüyM7/ʉGTÉ—¶ù)5´»Ÿ”CD×ñɆUÉ'ñ¦÷=eMžö6Ï
+‡8`殶ü¤'ƒÝ%Zû¦ó">¨uK1‘W¤¾eï¹ðI!e¿I¨U
+>ûž¢ci§Ô í-J1køY6Þtï.žoãšË© ñ
+÷õ;e¯åÃÇóû/©¬i«–¢Ã¥.W²nˆ—´„g(5ZØMš9R¹Í'ÝÚg¨–­^+º˜ 'Ü¢é!§êS+â«öÚÓiFhgÆ…FYOÖæd©lb1-¹B+? ©mr{³BbêÖÞŠ^ÒÝ9Ät”t¼Æ®a~¶áËý†sÎtâ-!m )J¾ô
+¦ë|4/—Eñ,(e)ç^j d9wìes^aÄ £Ôò˜îœµ²dû¸Š!ñ“µ6ŒœÐFí ¬b•É¢~»¢EÁ«Ë—çW *xb†ÁHË@û"9|VíK^¹¯ÖöÔö€
+‘fÀQe»µsq…h~!3ä|*ß»Bp_½tÜ›#+zévhî-åeý¡WÌßä…ÓOÄT?¿¡m»dì^à–ÜÛÆrŒG£¡aÝ1 +1¹¾žÅD4Š—®Ú'¯1ûaò:!X`
+šJT,žR|BœÆt¼€T–î‚yú&)өƛإR ´@ÒÄ×j#bl:"ñ‰®ø˶íÇø}Ž‹4JÇâ^yÌŸ%J•u´àͯm‰õ(îˆ-GSµ[„õœs%ìýîyöçB–ÌÌì¡n2È&0о˜<¼pe–Þ×CxjsCR`xp‘Ï‹^mätXN”{±ä‰|î†!;ž†_ëSï¸p¿Ò‚‚kÏúÏf¶¯¥eC‚æmÃâªwdf!ª³º¼¨æiù¶c2ì¹=M“Ò³¥û¨üaëPåT†Y&NÎT?á×õã<-UÂÁùr™wédÖ{—‹æÅm,~Ø3v!<D¤J†ë
+«rl‚¢¾0Ÿù"b?Ké¼]Â?‹g;°Eü{gß>²i\©Úc_É-+‡:­ AdýæÅ(U½ŽñŠ‹Û…øïÇUõ£ÎÚ\EõdBVŠ‹ÛÏ—\jøB¬E#÷ËÂf¥òÏÃÎr²û"6³qëŸÈr°öŽôÔ’,žjf`îŽwË1Ä—´’~æÍ‘¦+”yæÉ8J@ö«4åºJ½û<æ3’ë€úºØa§ÝÖâ µÆó\Û»-üŽr%³tóo\ìžë±9Å9Ç ðºÌ#%òÚËÄ"#çSž¾Ú·“0!+røI·.ücêDOÍ̆ô¦ÌàŽYÚ7PÔ8ULø¾UíÛ¸ÚÓV¡¦HZêü›¦zâGúÝjC†=þ
+‘.òÔ±ÖÆ¡\cžèäS»á¹ñÙ•™#á‡.åÞRÒš[•>PETª[Ú;Ô߯š?ý4züAüT1ÊÿKä¸u¤O_i/‡2`P«£ÿ´‡çƒ¢äákÃÆ]|~ÅhP*¡“ ðǬœ4™Éj{/eOÇX Ì'Â6ú×u™jÅî3bëmÔ/f니ú„á¶
+¬³ÖI¥øîP½K0…v…LÂ%aÎ.+'òaBXá)Wdýå†ÇØ-õëUW\Ï…) °6ÏsZ˜Úz£A¤¡[¼›rövL ÞXkL3Üå„f°N%]óvù8SlNÇ+É>~¡<>
+s{ëV.V›Í—L9¤¦ÁZöïÿäê=Ù¬£ÀÝäkp#§ gœ‘V„AÃ?.‘0•êIð8¬æÐ9uŠ²åûZ’vÝDØPŸL ‹­Tà'®O 1uúͶv•á„”(Yïý™³5hÈMƒºæ£Ï§¾­T5iŒa]qÏçïÊ÷M½GrÖÎÚ'èqê©/Ößfv’ j;~˜¡™XŽ³Ós&úFÁ#|VwþÜ•žÄï÷hò t4-j%„§è7ŸÊQß •ø)ÞGÛœwMHXŒN.ÀU=. nþ;ú¬Õ±ï'·ï®½W”¡7%/™¤›ú¦{oÅ@Ý™UóÂ^øjðÊ”[»´ƒEÔÜ < WŠ;ÅÞoæ˜Uý ¡l?!XS%A´`
+çj£ªœÈ¸¶ *.ض&*gãŒ>Kõ4š¤><
+ûDBwÔ4ÚÓçä~†h¶,‚"É5¯´#crÑ0 ø¯(J¡ >Ã1¼‰Tá¿ Šª‡:ÄöògîSœ)F="¸ˆ;N»Ë^)‹â:@å~üÄ
+ξrPÃÖYS@¥«¨FÀ ßDÖÙn»à˜tt(:Ÿ4¹¹ª,Ø*,öri®[¦~•’uª›ÝùübK£·,õ ;k‘\âÀOÇÁ>?Að‘,ðõdñq¸pÄ÷ÜWwK4¦%|vVûCdî¯&ƒ˜}Põñ1[/Æ%¾-{L›nÝ€”6WÞf²3ÞÀºb™¾.ápq÷x†ï‚‚20r-ÀjâˆW"¢N>¼¿•öaÒÃCs½äaͺú‘ÆÞÛ†eÿ7GÊ%2¢¹Íï]?)ï"Ýkm¹Š°–cô4HݤMµ Ð1µF³µaˆ´¢uC]Ï“ç¾ËoÚƒFÙž·ÔÅP{|´ÙÙ¹¥\xziª'øGñþ=X6š³åÓÓ".l¢ Þ|ÄÈi 83ùT$ñm5>¿,5#<¦gZF0 %5Eå-gFä¡CïØõ5+|¾dX¬]PöM¬0:S‘¥ÙìXÓ2Ú·¸¿–ÜÏæ)ØÓÖ mÚY%å)Ô óN` ˆ
+ùnAó ®ªc‹ÛŸ/;ôi&ûqr¿”\áz¿AD!Nšr=I¸{?”°t‚t>S 1!¸ÄºF&ÔJ;ñ-p›(²“‡î»L@4LG›—˱Í$w@¾Â6÷Ò'V!¨ˆ´‰Ù™n^3M¯’QÇÝ8>}Ò’Ïîü\v|¦Ï(IùÌýŸaë,?'CàÉÈÏuœàÐWãR¾afSéj´~—lk^%ž*Ù]PaÐÛ‚d”µ·5Àš¸wdrž†Nù¶€»‘=S§$ÕwK‰ð‰ñ©D¾@°Ô°z9½2/æpÛÿ&Ô¤i-\Æ+™íš»4©¿a.ø.ôøÊÕ…U〜–W†Î$Í O¿‘¿%¸çëÄþÀôÏ\¯x¨Òk «²X™d&?¨ÈÊJÞ’½éØ}jŒ˜&LØN, ®YjcÎq{?šÈ©ùDê³_þıM¯]ø~m
+æPQ;уX×É„ÖßrËHX£ôN¤y[ÜÜýÆ'{ÿŠ!ŒRoZáüz#>€ ßÉ5FM¬…;Õš¨n~ñ§ß‘d/jÒ§ÒòI¢D‡y³ú¾ oúyÛ”‰´éÄhJª´fq›‹‡´ÄßpNѪù×›à´4_ßr*ÇvlT8HŒË§åQýð’!w‚«Lu¿pIC”sÈØÈ¿ƒê²°âìïöÄRfz]ÿÁpGäh£ñ+µÌcŸ¿äúüñ(;µ%"-I苇ØX´‚¡„‡ýûµÍ]>5ÅÚ GâÆ£¢¦àœ©Þ ˦•’%Yi:Õ´æ:׶’¡Ëgˆ¾òWÄ¢šæóù™˜´šM?cGfµ3
+gŸ(9_`Ÿ×|zøn>“¥ ›NÊÖ2wšìfµp‹F0 ïünÂ?èR®RŽ|Jgÿ!”ña¸B½Èl/$v¡}ñ]°SÀäèb<RõÀûó®Ú¨GIƒì£%“ü¶«%‡Ò‹©d/Š_ô6Aæ µz%Z!V3ï·Jèáâ7³ÆÆâ0íÛOÃÏÊ
+Õ,°Áú”ÎxJñ.sÒDOŸàâ‹Ø#Go
+þ”{SßÝÁD°·–iQŸ÷J†%iSf3›ªŸ“«Ôu)çË]©¥ÅÀÚúæÔøqsb嬑KÞԧʥ‚iì„®I Éœ-
+u³†äI×4 çž°.¤ªÛµ,%馑aÁ¨?´.M“CwLv±Õ© 1©m¹¨y¸wªU}O«æv‡k‚›$ö'ý°EÕKV%Å5$ÎMž $6à·F *cß|BFšéÿÚ™ß q£@Cи
+Åß'U^øµß÷j¼´ÄT=AÉÊxˆôëeÐqñ\gþ€êœpê+žéšg6y+\æ4¶
+ÎÕ*–6Êb‡<  ¦ó( "Œ¤– ¯rÀLƨL •ªjýøm‹y,
+cÂ0H)«IVzA[R<¬xwÅeÄñôéZ>'_iTç]Ööé (¨²â½61O¢ŒÅV¾ç±®Ë…úèO¢hH/ûhGrµp±T›®ŠFÊz}á†I
+ÊwÑ^¥Oyáä™N!)$ýc3Ü¿3²î±Tq­¢”—ÞêùÍð8X^ž08
+˜)‡V+eͯç‘fJ+ØZã×Ñ#V JÔ|ŸËŒŠ$ïwýjAett =+]2µGÂ{üþrº]Æœ‚‡XšÈïm÷)]nfàt?_Ïã?È4's¸xmÅCçNû
+7ãóæK¿Á°ú—øë+GÍ÷}–ÌgñªŒˆ¾B ›X¦FÅ
+¬ÇUo˜§Íâ]…~,o&/3Uhº…®«åÕ|ék;iIÑœ‘’ ´Ñ’P€hëêòØg«ÿ,Ç{-ÉŽ°Ó\Žž6tûbÉ
+[É>¢ mh†Bïœ-yŠ1»$L›sö}Ö«‡¬Pu¨^®‘idÛ¾cXÝ]úT/Ñsâ{I2†£JíxŸá·Z4gË5Vß AV²¢žiø«OID!^B‘Kc­÷ùò&å÷šXw1mK2É^­íÍI&Ø°†èr®ÐÕv7Þ±éê0©uŽ¬%îQtÂv®„Xß
+q0'"ÂèsÂø²Ço/,²ßÐÑmsÒ|Æ}Ú„§ÒW9àÑÌ‚Rk2ûág8„Äç„Ò,¨óiÂóÜòdvtºLT<h¡Úš‡¨ìj–Ÿ£^ƒ‚/*Ó®¤ÔÈ„ì™>ó.¡h|å€.†T‚žQŸ~äÉW ö*méÇg0‰µá\öeI@Ó˜Å
+HJ7ÿs
+Pó¹+(©/Ç*ôœ«mÝT=GÂæåõc
+¬on˜•dÕgè!jŒ½êR cÄ€—ämóÈÙéÞÉ—ÇwŠVkèòpųñRÏ÷éë#0ä®Ì¹•u‰réaKÌ29#Š8#–ZÞSÜÆ ÁmÎ9Í¢Fÿ,E¨4àÐÞpéÖ…é YBÜ/Íb¹L“¼8[«…:íé0‚Å*élžœL)B–ªÖ“¾Ç¾‘üNTrCÙš*ÄKu†A,IïwÕñ`~A#ï튖è¥ø YP³:ùÎÕCÑó4síSø»Ñ^(@Ǧ™·äˆl##
+zÝÕ+ö­Ÿ‹#ÈéVçâ_Y\„
+]éJ­¥M.›âø©F7a¤1ÙÌèŒÞżŽEê~Íœ¼;¢êÐK†rÄb~oÙ;ç\qˆ©.«¥ýÃ쬅åeÓcó{àôrÏ–O]Õ±-íøñœÚœÍ@”ÎKC¦!üÇÁ}ÏKH “rŒâ8ÇzmQ¦ømÛB ‹# —6¿/aÀ8Šš¨ÅrB¬ZÆôcÜé“¢Ã˺rE|œ‰4§O^lé—Ò±7Ù/Ûz ÈŒ ¹ZTêecõÉ)œî É¢¯£3GÏŸ°mô¨7³åѼZx?8wå¸gH£¤‚3ŽÓt@U“Oæ 5ädPŒhM&ÀÐ^Ḋº)2ñ߬¶lº•Nw"ª|7•æ/Ÿ\†=·ÐXêµ›wx¹fŸ!7|b’e^Hÿ]G‰MBvU?ð«-å—-Èvµ½úN)NÄíNA ÐwÃòQý/›RŸç"²ÓXç«@ÇWЇ
+Ì1Ë2$ÄNÉD-…™(·’Ÿ&ä¦y¦†ÛAýV µ×œL£\íuGaŸôk§Ç).¨¹'pQíÅW_8Ê5W!7‰ÈÀ§öÙKð@çßæ¹iKtë¢ßÏWÈ¥n#wR¹Ìá%¨ÃÌí›I "–/âGÇë óéâµ0Ö0lØs
+3¼¹¼ËÙ:,Œã’á"gž0½3Ö«›_Yg'Ú¿>¡)ÍÒÂnÂ0SF†+*y]Ú^žBÅÑêŒbÒU‹Ç‰¸7Ò.J({òXT¨öˆjl'9‰#XÅ ¶ÌÔ
+h”d¶ÑÚª7…„<°3qk*¤¢À3'ÜŒXøc°uŽ`˜-[u ÕÕ«V?& íx1bN?œð¦,Üj‘l¸Í[β”«³˜£”e”,Dr£!ê™QX™’Úx–0Ñòþ@ô&#fééZ§N^kâ¬79zišÕI‡ŒdƒÂ>ÂŽ—4УþPRr
+niëÈÛ §Ý¶Ä±yˆ¥Ä¾XÄH¸$Ø J [ }ãBŒ9ô·©O[KY$¹­¤ `Æ”Hf£úˆ EìRá„Pò,bF^Ù ¹f¨ÛœÄ¹é¶iŸÅJTq ÅÓfËh· ð*!×M`‹ÁÜCf‰—Òõ¶ xïŸË=ïB×åã4J•]AAŠý,¯=`"±1@ ¤ìe*øÞµ<ÎôãIZE}çâ!àWÉmêu"ˆ+6àÝ í;DŽ®<î9-ÿ赬°T/¸~¥¯ú)WZß»AÚ§˜—6Щ¡‹íÙ‡Ít1_-;çT’ jKêL ’æ•ù߇L3¬©E1žÿØyÈK©Ð/%[ÅÉQoÌѤ±Å”ë8 ´UÌR«ÁÑdijg5:¤W’“dkYJd`ƒ™ãÖ‰±'Ç3³ÿ–/ ˆøêÍÚ»ž;—»ÙÐ
+)¥ý{ƒ$ºïZ¹Û7œ©OÓ qQب¢g¤ /a¢ñËÐÉ[£\P“˜ŒäÄ?R4p$b$,›:à¹ZAdk}¶çW¶˼¹€ÃÑ™ÇÍÝ·¹æ UmºÆ\¦ºuºÈÁß ¡pÍl*m{qâîÂëà‡Q¬/vßÙÐ/BóݦrÐr˜†Zœ_Ñra"¹6ÖXMâg;6¿\P{º&)Ó£XL$33ÙóØn^ÆJܽÓ_3œÄõCµÌÿ8qš" ÃaÜG2T"¨Ú–Žg›ôÃÃ2?/¹;Ǻ§q.å…ßG·ë8ÿ¼yøÉ’¹Ìö§éÇôš%({ßM¬Žæ å‹·4 Eo9ß~¡ñj-÷ß½ëËh%ËYŽ[‰]ðœaîîʵ‹ú…ÎL‘žè”Ÿ»Š§tÒ‚¾lk}ëÉ*³U–5çÇÒ§yU¿/~Q”üÈ»›a,ˆZº£D)L“ó1Õß}èç!³!?ªô.?³õ¨£¸Êzñ …Ð]i›òž‰
+=ÆÌØK˜Ôi;)•¨Â-–w¾µEH[ uZ‹¦bèJ…â]
+‹+®¸?åu¡ ^Ëì#cÊËŽXcµú+׸"®Ë¸Jjè6Ü­á”MúÊül­']J ]oµ•¦TY“÷^2·/HX”ØÉ;S° Ý²H†êÝŽ„®f ~ŸOmζ5 }†ããò´Ð¤¼g‘*´þö¶IéÈákâùk˜|ˆœfÝ ¢3x+ÄWúõ†ƒ¡ÄŠ=£Æò³Æ!p„ü¼‡¶ðã\1iÙ¾P8­ÅÌdÑwè4Áè·/óAH‰YÛ¨ï½rì¤;åHgqôþcñßV¿ÓêY“øGôóÉ.[KIi®4í&¹8ä=¥¥åj¡ã˜¥a´û
+ô³ °¤Ø”Õìw¹3Ɇ‡<ªáF,}û@>Öø˜šø®Arc689°±@GNàÛZ#º:T'ê~ÝzDØûñ5ž «‡‰ÂÑ̲̋ ŽÍ‚®
+;KÒ$ñõŽúQfÞ%ÓÚyìD’=jɦ«ÁêL:˜ÔfÂ-‡ÖöÃ+|oëÆGTµ{(› ²ý1,éÌO_5ÅàB(€Vb‹lM[@”^(ÓÌSІf]ø²C„J‚EJÞgˆ8ħ#¸`†þ´yÀªíÛ\3 Ž¸ÿNžfæ}ÖDklt´¶|û`»Ÿék¥ŽÉÀqi5ƒ÷㨶‡ã æ“帤 Å÷7rÚÄ­¾˜Z¾üŠXÇ¥„1ÔDün¬>U¼ (hZÔ¦ÔΤ¸e'÷‡ëöÙ³—B”ûŸ8N¾IR–!°] ¹?T]šâá
+Ão±ù÷ÙTHÑjóN"Ï¡0,#Tù×KÂtDÂ<GMa›Åß Oq$“È:_¸Jqr—8Hh"yÂ̈T#Ï]+ˆ Sý¹EH³GY¯‡*=[Ç9¬&Î|¥@ƒûÑo^&“s£Q[çó맦jâ\!Á£šïV0±†…¶“•ÓA(,ʾç§sÉ "/¢ÜgópÏp S¹‹*;ÌåænPì£Ü^jYc‹2®š 9Ãvya{†¥I¢<ã¿O=²Í…Ç
+¹³r Hæ;p€dùI¹™’ÊÒ1—e«jh¥(ßK*ä.©J‹1W&ÏQV”HÊwä+„ƒf˜e¸Eúªl©ÚlÅã5IÍöÂ*âÙu hž}kb¯¢Ü^[Ëšá—(Kèž?r}4âÞ-ؤҬfwøûÆ|ÈÈ+)Hš4¤×d²É×ä›)ý‹½8ÚЙܓ­ÖY á{#ZÝÐ42<B¶çb‚–28?´T1‰üx+3ßh!Â÷» J•LL±>zÍ ]%µ\,Gaž‚‹GãÃòw¾µˆ <—äùº°­ÿ¸O˜>¨´žÓÎ~£ jzW®{ÒMfößY¯¦
+ð&åKÔ©7Œ@¥"*SŽAÆjšÚõÆ0³ýç§äÚ çÁVšSJämE”©r[6¶ }—Âî]`á„_û‡ƒ d䥔•6sŒÑÊ‘–ÍŸð„ëÉÓ+ˆ$³çC ¥µ y¿ÞH::vroE£6M j°R{ÑÀ­J][Wܺ¯d#ѹ ½EÁ}Â( ··¦»<gy¾Ên¤„o0\“4»ÌÙ¦Õ±/ÍgºÄ4ñ{•=¶%x%žÆ ]½õ“šˆ/¯„J¿U¤RÅ]ø4¤Ô0çßðSd\«:OoDw‘ÁœCU²©Rµ5Éñ¦¸z,¾Ä3Ý»·J‘­V½¼b†‹ý€6=7úµ:«¥PŒÇYOqªù\Ô'·‘‰ùÅ
+× (ñpÐif.ƒŸÁ
+… 6‡ ¶·Ÿãä×\=±7¡.)Å–™êd† :Oõ ê¾p'·ùI ²x;I]Öñ#“¢”*ª¹‘c!‡AdêŽY¤Ù³tÏ´ríó«×«‚–)¿;õŒ°yâŸL±å˜¸ ˜¶Á‰ûF ŠÁŽ–e¤\aÊŸ~ UŒ1Y”:NCñÄX5;‰¤A3S@ÒV"ÙõÕÎâŠT+ÊŽÁ{‰³
+sбH}#§î*ÝSB›Ô&¯À,ÛºœÊßÍ!þ^€öÜÈ®©YºÆUfõiÎYãcõK7ÚG9Z†€Ë=[“‰Àí/Nülœaz©Ÿ[³‰eJÒM’)ýè=Žé,t8 2ÕV„‡øq­µí18‘¤®+0 Ѧb-</)a–‘Ç??ú ÇwFyP1'æõTù*¥Â®²îz›=0A¼8ဆÕ
+ÙdÝ&_µ’tÆ×˾ù9oÆh;ÈÞ4Â;U ¥Ï>$Íyj‚`¼sÜq#YÓW^H†µ~h“Ïæ
+ÎÞñO |—hH3§Å#´Ž¿m‹üÜyóÝ/ÿ¦x—±e&¹çxDÓêÓf•…ܤÇ=¤
+Qл6Y±¯´”oK¯dDçõL1•%c\=¹#&ßE>c;¤“eõ©õ¬âÅ
+›]NßÓÌK„(é3‡óqʾ“&2mõÛ¨1Bß’†N7|³‚¡©>Y4Ruµë§`cü½UÅÐdÏ—–f¾ïíÛLz¦ÛÏ}M5FÓoˆê5•H•´GY>)Æ0z·F{UA|ëü®AK•ß¼s†èó¬>° λ]¨!®sŇâ~B¯bâ VÚÀ®N èˆ[¤§¯†ö¥S´º‹èp³ÖˆPÏs5¾
+fôš€lÂÙ1&>©.”•–Õˆ¾Ù±6"SGÁ³t‘™oÏ&\_â?nÁœrU`¢˜H)ôåʨJ?ËvIJ¦{vpÇ:—¥hÖz]:#‘Äý„µÑ7ŒO0!…Ì`Ãf ÐýÄô ŒG#%(
+úYPå$ý>j.«`\AðÜa"¦•Í—'1I¿ j°Që :<Ë–…ˆ·>v•£H ÷º|Ã/O‘JÁH‡£•{6$cÎ'qD=`¦|lóI ò0Æù-ÌÂ%y±X-p´ô(›Ú×¾yú®ÎŸJ¥_Çü Íãz"S<#ùj;¹êxÔÅtúžP3È”Ä#EWRLéžÅ4ô8î”:fƒ=BvMÓUfÓ‰ºäZ›p±¨|mbÍÕ'vfûŸ‹y«¶ÿ|&ÇœÕó¢^YgÊêeÛv× ±útN„Ø}yz:$Qp¹7jG¬Kî¨wsÙx¶3Ö ]F˜C3Ž†X8‡7Ú—må°na(ià"(x÷ EV½4ýÝÊ‘¡[6c‚“A¾ 8]3ô›ZÄÓ s½Eaý,¨iKw}>­ Çi’Q&iM·±+c–^Y;ýNÇrŠrê˜r²y“[! «4p=j<ÑÝ“«Ï|ç­ñ3V½½)æ0~ð„FGÁ.ã‰Ù¯–(,Ú©¼4‚7F'.83GoÚ¦Â?vQr? ð‹š½£‰0  r ©_á4&A»ïæe‘.iðð¿èx×2G,Šh}qˆUÓ+a"ø}Dqî
+xˆyUWš{uÕÙNñÛ¿ yî(|þ4&ºÄv¢4k¾½"½Ý¢z8<kVŽÒ/'y×øŽ÷6þ{¡(¼g¥õŽjŒ(v¦"é(” &ι÷|0ÍiŽøa[ˆH
+üJ1²ÅQÛ9F¾©²e¥—rR1”Lø_NÖ3l*Á¡K¡Ü¨õˆÄŸ#ÌÒ<2âÓÖýxÌaKC*þCÚ "öæ}1u<h<F{¤¾Þ¦þˆ¼V#0gd-}6˜Ù†s¶ƒ—A»E¼u‹ÎC£ÞÜH™ë^‘‰æ«,`D%K¶ÊgÉ@‰Ÿå?ÂpÂ{‡ÊuÅäÞL«E$ì®Ø•1>æN@¿žª~}ö ]%Å3Ú¯"Ɔ6$¤+|F']nÈjשÚÇ-ùùW™›TÄ™îá4
+;ìb
+Ã9u>¸Ö$üHÀjŠÎ[ ·Â.YÔŒLW Õ•+ßÙÖEÔ,2@0’GÇĦÃï²o(gk†€¡írhi\½úÂ*Ð&¦½5o[‚Y¿·4)Ç<ý+–BDA6Ÿ´::^“³S(œCŸTãš™žh³îP «œæYGQ¡‘F©96.eÁd]³Â…û}é(Z2¸ÇóÉ\Aß;YÚW¿âd7AÕû}8Ê^˲½¤Áxç 1/×j ‚×?Ï Ÿ‰olfšLe
+ª‘LÞ*äMó©qQqÄ­
+÷ÂÝ%&>¹ÔDd»nËÞ2ïjüv¡5ÐÖ[ÃûÁ†øõñ{nCKxšþȲïKDzu;²ÈèÆxAj/r„¼ Î9o«9“u‹ý¥ùnÆf€±
+Þ}½ë”å$ØDBf¹ÄÔšËNàwM ¸Êg âyà.íl³€ÎÙ Y߉ϴ–³Ëk’8¨~ã+ö'eßýñ‡vÕa é~7’Kêÿ(ÃhÛüçî^ð¥áow"ä➨l†“3eôqu¸hõÀç}ÚÅ–œ„¬eŠ4)øá|D¡ úZýœdy $|^rAÜœÄ1Eãm¢°ò4-`‚#ÁƒúMY³Øù¹$—a3#ì6iÇÆ~]":m+®‚Ô”8$”-Ñ=¾w¨ÐÛ*ÅÂ,NŒ
+juþ`vJܸê- Éš?ןsí\ýŠ‰ˆÀÏMÆb«§o˜_®»òB]r2d¡¢iCŒký±ýTõlIä&FÊ—WïÕL“£ûcÝ´N!Œ{w÷­V7¬…v)žyÃI19תžëÚÖ© 0*éÂ\žR,0²VÍÎ÷q]æúh4ì=ÐWó–&°g7¿|;çƒ ¡¡÷'[¢¹µ¨ð5ýڥϵØÝIÛâ?ž¿,b†ªGO~U;{ÈR0>ïPÂPׂLûà
+]®vŸÄ»œ[;ð¢yh+ê üþ¡ÐùQQy5q‰Ö>Xnï:¯÷i
+EWW:R`îɲ_-íu)ùúŽ¾R¶XÁâÀ1¦*ŽÁ>Ç#ö¢úI`>C@úUÚUµù®£ )ÇÏ
+(;0z2%j¯jù—[ô†x)A*qÒv“C~§&ÌïAÁÔuÒ=ShªNe£˜ Ûyù(z‡ãŒi˜¤”-»Z÷ K²ÞL‚PÝÎr
+ îN0‡¾7:% h¾”¸êïª
+C‹×< /O¹PTµ ƒºq<¥!y|îòŠV‡üˆÁ)´äk=^»ÔË‚ìeá»i3Qt(+k¨ÐÐH2Ô˜—»¥µã˜¸e2¸üÁÁöË©Í;GhKq[˜û;Ü)÷ê¯éµÔ— Q¯ïTŽ#}‚r‡¢¯ÛÈQØ
+¾§¦þZŸ0prff'’2­<-`yÀ?‘xŠ¬Ò·Ýé\-î\ž8{, ’Å×:
+¯» ·~Ñ‹ÛŸ›TJF]Ôåˬý¹w‰z·ô8UÂ+‰86:ºèJÔÉÀ– ô¤¤Hzߨ›
+´Rh
+ïC—(¼6å*lœ¬ˆÛ—cÝa<úiö‘Øã>êO•kúŽh?î‹ÑsŸ×ÐôÁvÖtV^òù…ö„?_Ô梙Ö€²ŽÍk•ÅRRTðv»›qD¯Ó'¼‰ ;Ú£üçI•^-9O§É#5‹9í6ÖÇläû.Nd8o¿æ)KÔßâ>`·¡™{¿þt†;Ôy–oVËj‰þE‹Š+9þ­O{$ÃÙ R]?GêÀì?ß8'“Y˜oe¬U3©LàXÍ•X3qëS@89T,!/^™ùåè/îÚA2º—³ï›2\Ƙ ØúkI¶ôö°“Ýá™ÆHK«E71s~YÀ”Ï©ëEoØÖ0<eŒä4,rªI]„ªÒkúG•^Q)L;ÈнýQ ?à#D[oeI¯Ot—øMŸÊDª¥Ãÿ|fÁDtïÝpï>>н°Sl'SÀùªXJÊVH÷¨SÞDÑ°4îëÑye2Ð?­,ý&SI2súÖ§ÀØ]
+æ©;z„ge•uväNÅàSdøÛ‚„ŒE6
+e¥ pcf¾¸ û)Uä½L„ìê‡6ûWïÈûÖÖicÜn!)³e–R{¶ÊÍTVL“,îuêj‹Q­4ðNi+¢’¥5EÉ3©J™ƒí?4þ/Òtƒ²LÞÎ "â—x_' !­.#¶ZóôZ˜ –$ÌĨ+¿,•Ú¿åš³ÝÉÅe»t[ÞÇmRØ£®WÌwî±àÚ>ÙÆûSƒÛ½Àžâs#¬x4FÏœ
+rÏ“ c5ÙÀã탠ÉñÐú"-©~ÆßÔ4ÄÐÌárŸ=;À‡t!`O#öƒÛ’\qt1„ÄHv•{p¾Ì¯#ÐRÀB¹` mð 'Y™^;NÇJuŠ4¾„{gl~Ñ1LÐ. É_üt&»‹Œp~r}?¿tª¥fÊEEW“yóX …`Ä$8üAW¹ðZ”߯¹œ¼£H}6gfÐrÁ
+2=”a¿–~wî¥núj.êßañÆÿR|-~©3:)Tk5zŒâ·Ðþ•HÇùQA5ŠÐÜÝëÜÖËÜ~ŠšŠÒÊf:'’½@#z-`F˜Ž_qX*cgâ÷jòÔ&;ÞÆx6ÈS+´M1_~vÁ/yJ;¿Üï'Õ*Íõ¾D1ƒÁëàËÇwÎøêWJœ>À^sp±d@H6 «ö”L¬|Ö쮺•ã8?O1Ðf'ÉKï@/Úêt"×Yþ,èKšKÛº!Lõõ»÷È‘läÔŸ†xÙšÕÉ}P³À²þ$×™3¦Õ ð^0XÛW„öu'uCéu>,V^
+Do0[?€>Nº|ˆªAtUÌ8E¿
+‹&Ÿ±@P3p7«Åxß¡ Ñláü~ó7¥Ô­“TØ‘òµ0½øEÂà¬TQ+74Õy0ä˜K£"ð%Û§Fy
+{roæ`øꢮq`ÄFüôG›Šê»•‹3¾õ*²Ç°Ðà›Ä‰ÄåÂúb Õ+0Ÿ´/ìECɼ<9ŽßÔ2¬u¼_×K­d³.;S­gÊS»<ÊÝÑU´Â ð8èêï”ñg¬‰¾˜TŽŽƒ°âÛ¨jPé•Ò¼ÇY‰IHÁrEµU@r21ì+tVxåigŸ§À¿fl)¹#´ô{H+"q`úÝËÆ€jÿŸÍ³8¶I
+{!*ØÉ»¢"h•[P©}²r©¬ôú™MÊ¢k·×ö¦âqÖÓÜínjŲ­ê›-$kÄù”)øgûp]6)ókµÔ~k"…r3j¦ù{*½ØÖ®eߟ#tVtN6G*K€>B>´¸ƒúÚ.ªÎÁ(EÙôl$Uζäy)‡*Ç]اQ¤†°‚†µQÙ‘‘c+@Dâᙟ­Ùe"™$_¦òà3Ï9Æ÷0˜n#XŸÉ‚#Æ+¯ú:£‰ –€á!A~|.gÚu ÅÕ$-Å{W°‡hŽ¯?Ë¥oÏó¶ÒŸ©ÙsèG
+iî®ÜªEºˆÂ€“xÕÌÎ×ðLÉÅÈÊ:}0×l¦ˆã¬OÖP«(_ÌÄè-ªý‹3sŽéÈm­ŠÛxyÖjÈ3/ù#k™±>D­ÊÇqÇ.¬’ Ô÷MiL*7ÎÝàÌ ;€Ô2·¤c*¼¶îfµ‹”³aÍI2kÿ%!€²AŸ}¬_ðPŸrÁEÎÒ¢–ëØu$csa%õ\ã`‡C/<טöçœÙ‘QGÝ”¯R¦tßc'T‚ q[îînoÙŽ¥¬†Ô^u·«Ø0™ýn¶Z0þ0Ñ3‡¸Ñè¡ï2©*äNŸ%HÒ\) »%¡™6¬~öÚËÞ¬µv¿Þ·ÖÿEqht1ûÃY]ëæÀê’¦U÷úÉG:
+ƒ¢Æ5G½Ý…â*S¬.‚>d´EHŸ#Æ"‘yxÿF‚±¤Ø°D],"̱µÞœW]ÈDïTB #-8d ê
+%5ŒÊ8I0³!OŽ;‰µX¤è«p]°†Zràð™êéH³‘ÐǺ/Ä\õVíų„„<º+\ZÉ{è^)ˆÂÙ¢õŒ Ó^ñZ­æ°P#eö­ûX3Äv}Òðq¶9­¦kk0v~ùêi—ã:6`Nû`ÝÃpjMéÀ‘0z_à®’,ê ÷ãØ5ÊG¯™ãPRZ
+Lž¿;Òa_;9¥âæ _÷ÑŽ{ɲ‘µš<¸+í…¹÷sz}Ìw~Gƣ׌ºí#•³ß•¶ ÷ÿnɱA\éÒcÁ©@s"–/†$Fp'…9ÕÅùë“beÅUÔ®¡‡f=fIëNÛnæ­pè?M aÀÞ «“HœÊr¤â-‹bUf±Ç-5 }áßr+ïÐXM»Uæjµ á'b¦kx¸‚~Äp\Ovq¾ÖÁÝá$wËøí÷çsä¿Süs ýhûütŒ(í«f&ŒžÄ¨o_£xùïÝÖÆ¡”ä â±&¥‹Í’möÖ¾WI=ÁÈhâ
+o/6BâsŒá•®$ŸŠà‡HóQsø–sÂ{ 󻬱š R¤½=h›_¯-ëÁ‰>w,ÄUs—ÍÇÀž¢N^œ¨×P÷h°0¦%—C!§×5_åÜN{<ô^}Ç·¼­ŠþQ÷‚!‚‹þ±§³J(Á73Á*Oeðg—žy7½VªÉúÍùÇìY¬¦þv ‹[
+°PfÉÌÖº8U’M— 'µ3[º¦&”ªÌC|ˆ<¬iϳ7«•I¼,yþÜòÖS>w–V7æYð—v¨ëø\M?›çaEQÅä.¤EJÝã)×û±R6Žâ&<#ë‘éô:ïs> ``vþ‰ þ¼ôò51–:¬±rR…Íuº¸§>“v“Ôªì/ƳX샠øÖjûS ”I<&{ ¢Ä»ÄL˜áÜð}‹ÊÄŠ*a¨ª³v¦—÷~ÔR';A;짴tú*éfßÅŠë6rdhaÏÄÞ±
+iÕ8Q³Ní@º¤Á†Í‰Ý‰¸ÂÙûé
+/ûxÿ¯ÞI4ºBÓARÌ”E¢Jø_Cù9U“%¿‘6-´*±ørCcRhk¥Tpqãbyÿý`Bùzˆýõ·Z‚¾NWd¤Ê‰'ûeé:„ºxÁÐØÌØC­LÍC3qþI Ù˜¼ Z¾’‹T*_À÷^àíkI=¢è|«9-Üï'¿¿¶]Çåê-O{ &ÂIôÚÅÙáXÛè‚Ö#/ ¤kcŸ&l)‚.Šñä1%HßE:«ö½"Ÿ·}¾ÎeÌ°VîMc¼¯ˆe"¾ÉÇ Ê§MYÚ­
+ã)·[t”@¢ó)C4gá­Üuf˹§‡¥iµ/½õª§!iQ'·¸º‘ôŽh>M¬)tÚ÷¯ßzõ½±6Oå—»1
+ë5xëº.!¬@XåiÉ‹
+Õ“._‚Š×'·bà¾ø§‰ð/j˜ª«à}[‡.:Ì»»vi- .öpˆ®äÿÙŒö¿üžˆþÁ¡Ò¤Æu½‚ùˆ3|£¡M­¢-à/1*_vè@÷#ª,ø–vWmúi‚Qùˆ/ ,¿~.nÝ¢gâðù@¶(²rz¹doˆe±£ÛMŒNi_Ö<gA2uÙÑ qPqV¸ÇÖ:ˆ¹ûŸ¹dOo„{˜î…1 sG‚Ìë÷»Iˆ"$f€½vÝ¡N¢Yºä!Ÿº„ÂœÐiV;növOIl*“g´Šô>;ªÀãIûoíR
+²ªÄ¯´ž¾Ëµ\ö;åðÅ.è†È-ÆA_0=¤Ô®Ý1* w³Î+mâð¶žÙ[­Oh…úê-+Vµú.·û¶šUœ¹vùL„Ò÷å<hRå hÎë„)*+æö§  2#)ѳxù©LàZÀœÌñë¸RœUŠmœôé_ù¶"9Úë0Å3{KãôÅ32d)¡åo3Øk:%Šbõw掑ÈO'`ܹ, •+D@P[õõõaô¨j¼æäcl‘½“WĶýòèI)0L½6-´wØMÛy §ãû±LˆË§`Œ×ÜWwKq0T6ÿ¡ïU^w1—sËРÐ7Âv=Zw¼¿‹¶öêÑúñ#ñ‹{þøm‹d>Mi¢"7Ÿ§w†¤ñ—J…Ëô´2ö
+ä—®šu ®Ž˜è Àµ>ÈË"]AŽ
+ÜI°ï ¢RŽý£<Re
+‘
+lvj~K\ƒæï­³nS,+âe¼Tsb\n¿ÌD³HX~}ù¨ïQ(=D’9¥ÙÐ÷Š!èÁ”˜îstÔŸd–T€7;q.ƒÚGX”Ö¯Y¨ßŒ»S|ìbÿÎÄQRæy‰~o÷ìZ  ¤»BBýiíÉæó´‘1 k2}ŒÚõŸÝïÕ(ùQ‚HqÉ
+IÁzªrhó_½0íCâ7'ÓÜÑ2)³1Æ&€ŸäuI=°#!ü‚ ü€씌fW- ·›]Èú :G' )G–”PdŠv€Í€<fl§W¸Èl´“@÷`Žfɺ¸ÃË…œÍáþ¨±àxù5Qr+ÖßK³ù*%Ÿ§°“ÃDðÔò7ºöaØÃ}„ÃKÓ~(b‡Øbz‹/.ï,G½*Ù<sçucdÀ?•_qîÛ4l‹s.o@–_Á\â¹
+sÉ;gj"­ßßêêŽBôQ=N έ„!~§úkñÏ
+‚HU+H…¾ƒ¶‰{9TYoµ›\ª3©yZ*?óè‹·‘ôd}~’§í ²~RI±á—EI¥l¡
+=*°,­ å¦=:mB ‚Êo+]üŠ{;.†E›ìf‘œðÃóMîü'¸¿ï†uXö¥Ul]Xrmîµß‹÷†¿8ÅS‘ ›§O`à¤\ZÝö´Ê¥–´½¸¯?RD'Öƒ0cåGhŬ¢c®)_MP›qé²Yk>4ÎsüàÞ5îVì*n£ ÷.2P­›V(S¸Ù·ã”;ìH ¬tI\ ‘—Ãw9Åë«$‡ð§YQ½¬¸
+¿Xòra‡œŒôúŸ< %Õ)!—ÆäR¬UÙfÙTîŽ<îÍVmÆñ$íŒéD‡ÑàAZ¾“Öëã!-N
+ÓGÌRÜ0¢Ê2­W ôðl ©+5ðà%YºC Q·…Ñüá©8c±ö¤ÂaÙy`fôÔýÍaª$:;_R“$ÙL2ÕEÝÁœ3˜¬a"š]XZ%šøƒhÈér¨†ÆÑ}6T£¾Úì‡[+TÿÀ^FÃ>¥‰BòÐWŽ…Û\[œšX¿DÕz ó´À9˜7h¶Œ©Àw]Ãoм…¶7Pdßd7Óå ô¯œ‘Ïél½G[ ÉìÚðŸÒË+ [¯#%Þdv#mü³ýò hÔ¨l-2‚'5Ÿ$ÞpÏδ¬X1’Γ|Çñ lág±|-ÝÕp<r’(üͬ´™ä>iœè£Hk’÷F›ÄÆŲ"£\Èc ÖDRõ.µô1"¢á‹Ak]%Ϥä©gÝÐÁ\ªW¼ì9)—'À«¤[@íŸé"†q©uMû¡ÜvsÙ˜`š*ô`Ãh@ü°‰À4pÊEÎxYEÚš€]cøy™÷xÈARRgô3‚o½âIé »CYÃv:ˆ]­’fDFÄæ"ýèƺPêÉ2R·â;‰$츠¯­>H)VºËœâÚŒÞÝrö‹Àº-Û3/­`-mVãA…1<ýíïfÈ’U¦Ü·’ƒ4M ×wÚ#ïO]à²b
+%Í··*ÙØ
+QtCYvjö±ß¼-0¶TÚËŠZòøÒ ñ$>Tª ƒVÑ!Oµe_Z#YŸ^ºçL_ºt:<½c/¿„ó‘†9KÿñiB,«Çó"Ÿ~y&àøqŒ¯(©=;¨·ÏåP-¯Ç2þNS9‘PÍäÆuWýÖæZE@\]\ŽðÊž ;¸Íj^Ö$°BCÌS
+Ú’M(
+ð|ÀÉ{9N^^IäìŸg?ãÆOÞ}“zß)¨ü0šaMعvÀgÞ愆Iípž‚b
+“G#'4l /÷Œ0šzàצîƢݠ
+­>í÷B| ‹¼íL9㇠€Éϳ˜¹Eþ¾K[ú&üÀG9w=É®š¬L^ÆÐ¥ ã‹eÆÇ•®5Ñfsmø/°v9±€E=áò,牢ë^vö´lšìwíÒÝwGøaÎ ×]ÖÉI³‹‚t¹é!¿aâ Š1~H)¨©m›ƒBƒ‡c–b–H¸jãÆAUÏ»&BäGqŸ@EÑëF:‡­üçÞ'¸¹/²‹†i§pµŽw_~Ïc§uÒ ww¯ö;ŽÐ­!Øð§¼.{µ[/q
+Òq2„>s»4Ûˆ^»љ«úׇÁG˜ÎwF:ˆlDý"¥þwPx÷µ.—Y>ú G¢l> E{x, í²¦†¸8$’gGsM÷Q«ûêBH!ýiã—l3Ùˆ}÷7îå!þ>Ý=zø̺šµ
+Ì3Ü„f­qv%¡¥æÌ6;@Ú}úŒ3uf‘Þ
+e-˜5#ï\iB:KÌÞy•Áû$D¿…gÓùWd+3©ãŽrº÷¬ƒ"%Áï\§|ºTvl"Sˆ8íÈqUSäB³†l»ÿbGQx:ßH¢MÈ’ÍvúŸí«a-±*Œr Þœ#î;  é´¡IiûGâ/ÅEÍVIÏáËTö®¼Z‘l
+/‡Ö—ßÑffÂYž'¨©‘kØÒž¶½pe'YK¿MÂf¹8(fpä³C¯«nÒw!4Ńü¹5î¯Ô{¶ç™wÛˆ
+2½f³Üí"øt¿šŸœ«‘º~} i•^¶QŽ÷<·p%M6Dq§G‡Î×C?mÕŠpó£çGwV
+€x¼O«Ò8Á¿cͺ>qƒæªNÕËï8 ’fúñ#x_!J|‹(t~ó9è—CH- 9—(4ÖßjnaðD‰\ Í‚gš9l}ºG®°Ù
+…Ÿó;¤Û’3¦›6Hšå“Àä MÞ¡Ù5ÑçU𤌕¹Yq»eïÊz
+Í÷Ñ;ÖÚöAð^y°”¬w*BíÆØùöÚÐjä}‘P·•7ÕóH˜âóŒ¹x9áMqfó…í%ìùÍ&cæ+O[\ËÆ.BŒ8@È­þ=™°µHò%íVaO—ÍË^O4ãîšh”HH}UP)½ÙÔËmãŠ>ßúfmúWÕŠ·;çëwµ¤³T
+ÿ«ýk 1 ˆ¶ÔJK´Æ yRѕΡװ^`5±ï>ãÄ:v°¦ö#nÈšº9êuj;c<I-l'7ל—×í :5üqæ««M\Œ€¡½ƒ(k}\þW\{ÃÞFn9s€Ù¬
+üú=pbƒÇÆ
+ž~³›´$îõx[Ä)ÀfénvzË[)ÀEÕÅ°3Çì¡u&Ø°\ïºë¬Â(Ä·HüÞDчÜšš­O)¨kFhQTç@D•Ë;@8áÖËkOàÊ
+`†—ÖLüužX#d#_c·¿Æ…¯ôÝYGúdèÁÇX;a„ï-Xi­É*âG,Ýì:r©dŠ½
+(Ur®™ŠJJ§¾°•ãäÃa±=ìZ]}Ûˆ™ú(„
+ßµ\8ø™ÄßUª@P!ü![[5<‹÷ï •Ç¼“¯ÿ=ÍB7¢t$ZISšaZŽ\Èy‘­X•Ýç#ž4ý.Ú´SïqÑY#Õ™Rv>„¸0ð\Ä/£´²Æ’ÓÊ]ÖQ"*’zæî€åkc)*û bDiZ–héûexSe~îõVm'ÿ
+bæÛ©JšBh+~Àb¹+ÝóùöŸN#ìa¬u…cÌo»xTBÆÖ‹¡y%>ëѮɟx|VðóõÍýüÔUtäI…—ϼ“e7>ÊÛË4ÃÙ…äÉÄŸ:p‘Ï<sfÐVwÄBù$®·”M¤3¦›îüí}"ku6ÚØ°i ÛS`H¢w½ ÎußÙ/Û×âp­k óV„)ÔèV€ÔM¾3ä‹P ×|—¼\~=FþÓO0¸úѶÎäØÆ(R, 6ÏpD:D,6·AÅÎçÝnÂâŸáîqa½ Ðä<|cqn©ý`מ¾ðˆYqšõVø
+»ºLhvïöºæÊWéòEÍ *
+ þDkê6#NwpnrxïËqÌâ9Äé磙*º1DCª+б»ø\”Ðó¯™Âi+3Û¤.Ÿe±×ÒÇ/¿Xƒéb™ŽPl~ ÿ;ßÜ€Ïf£ ¬#xZUa²xJ÷WˆˆÇ¼´›HiPö{#ùS/‡mƒ‚Åü+Qb@mÝB¸FJ(›Ý¹Z †ÁÖ^%¾šš·‰»±)øLëg°­ï=žÿ|aÎ\û) Õ„GàU4eÒl6º„8NNÊ„¾]¢£´B€¿4¬²ääÜ(V…ñ7¶Éh˜6q€ür)™A•2º›$gLÑZþ©mFÒ²Þ)y„“ÔâçÿYâî2_+Çð/
+ªßiçÑ»5RØaf«¹èH
+ø• `š†ÓõCüðÚV<¦’Îï—x[ç®Û±S¨¢œ>$PãËS
+3ÁôET¥&Œc<K<K·@ÆÕ¿™_p¢“¿~À6.a`:ûá
+½fkƒU!4¸Üœl6'àþÝ7{«ôKµMÜŸƒ0z†»’—p¿_†Ïly¡äµÏœ_3x—¶vܼàR{™¥h§øŸA¼£vÉÎÕL™ F'ÄÈ"ñV:ÐÄæS;@•uš:2Ê‹¯{Ù?W.‡Q ïã}[ßú‰‹7X·
+6õÉÜ:ür…Óy®+ßSø.FøÎQý=ûr̶/h«¶ å­ô±¯îæìêcv5³>Æ™Ÿ÷e$Oa.ûã¬u?½Ó?ì0-+±?„õ·ê›b*´™
+^„Ø3“‡2¾÷¡¾x#ܵòTá3ïÞ'OŒK&‡ ÞèñwE:7Ñ™QD¬·vV›0’“½ýðêþÝRŽÈr]1-™}I¸¯d¸Œqq•p¯ºc6è)|ø.7'mþ‚´"“æ{e h±Ö©'l/T1³K ÉÉUû]8ñ§\/íàïUYÓ@ÊáÉþ<Óžµ˜äÍ–±ºÞyÉÔ¯$ËuqZpñóÑ—(l»R‘
endstream
endobj
-632 0 obj
+881 0 obj
<<
/Type /FontDescriptor
-/FontName /DWKZXN+LMMathItalic9-Regular
-/Flags 4
-/FontBBox [-29 -250 1075 750]
-/Ascent 694
-/CapHeight 683
-/Descent -194
-/ItalicAngle -14
-/StemV 28
-/XHeight 431
-/CharSet (/D/d/delta/x)
-/FontFile 631 0 R
->>
-endobj
-633 0 obj
-<<
-/Length1 3033
-/Length2 35577
-/Length3 0
-/Length 37288
-/Filter /FlateDecode
->>
-stream
-xÚ´·uXÚÚ>L7H78tÇÐÝÝÒ ÝCƒ tw—”R"H7Ò‚ Ý"Ýñ÷>gë>ï÷ïwqÁpßë‰{=ëY14jš,â–Îæ g'w +»
-Pqö‚¶
-àlÐé´5¥54²ªÚjš ¬Àš..ÎnÿÑ"©©¥-Ë WÑ’€t˜²ÚšZ¿þjœ ú­™*Zñ_y †¿Ü•¥µÄµôÕ¤l¿æ
-áþ+¦Ãßæ
-
-¯.ž¬„§ág=ªÆÑSH„ûš5ÙFB(U°A - j~“M[â¬$'`äT¦GŠçð´ú9åýÄ…¥ºØ¦Y€r
-á½JgM¸nØÞ‹˜Äí$‹“íÐîÏ·¸ñ1f=â_gL‹ÂñG\º;q¶ cJE¢é·²np¤éo]W—´÷ ß‚ÛQI¡È©I+­etɯPð½²z• Ra#'0 KÀAEò“’ty!DXS‹wüœçþúbZËÁéÒGË={éöÔ™Ž²¾ÙáÖ­¢MÞ¨^‚©ŒÒ€„ìÂC…ú;e¾±læK›µÇú=Gý”§ ¤›Æ¯¦HQ)äNÙ‡¬0#ÅáÇl
-(Òièo† %T×H®Ù¬1a±” Éìø` xN«Êì…–²$Þ*J äÎE¦×ÊΨvºI¯^#5nCí¾¬.»ÔçëZã>ÅüüÙé39©Þ\J-£×ËÐ72ÎßÜù$ePž ­y^[ªl¼²ÑZA˜›iTOñþ„ú®Ó†i9Ï؈gCP!#aQc™qÅCòG,×—¬H¸“F%<;a
-Á±ӷ̼Zk_¶Ç ô0
-tˆ‡Éª¼¾¿«›Šmfè®? y¡Ò¨ô½.ZçkÔÃLÒÅ’üS~ÎC
-Ž?÷]X"!nBŠ„`©J‹õ¬b]›DMàJ»µ¦¿ÐS!^@²èñôž>\LŽlU§Ìõ¾WØgû§(ž­É¢˜¬¢U3û°²ô«ÂšŽ:êgNÐû`¥åu‚Ú8Yzæ\Td«ÙÃàCXåoFN¤™ø¨uåÒ[ó3Gì7×YîøWÙ­Æ%ˆšèjOiv]g^åźž„<[™ge+ûÕ(°ï'&ë$98^ªÎå¨7âi¢7¸ûœ“ä9¥lË¢ žÃÁ>6’uļ†&1¹Ž+†>w"Ó5Þë æ ‘oÎÉéë…2:T*.
-Žf‰«–¿øpç
- o ËøVFaöWäçl ª~qBJ¦>m>ßl°ðÙÅmrþL c¹Š¦WæÖΔ¾Ó‘¥L¤±gꃅ‡<“ UŠòÔí#ÚÆõ…u ùBÉ‹ƒðÖ9TKÃò
-JðXÒ_ßgmš>ÌÔ¨â;“Іý ^KŠæ3ïâúøêÞ‰~}ê‹cŽÕèfm.Æ­åo˜±ìPÛ{¹xŠõSÑ$f‚”¢Ç‰VÉœjÖd=Ë6øÌ÷)˜_B‰åc…~àŽu~¥Å±\ñuóZ,æ×l)AÒÏ ª‹J´†É
-Hºï·pý š‡Àc±ü2Û蚺Ûþ‹×Üo× n4kºû—M$ sP3š¡Ÿ×›çm¸}Oe/6ÀÕàèõ™ÓL¥`.s­Ps©x’|?<m§„àŠì©vŸ-6x·L_ìJŠ@'ès?#C¸s±§Þs+ðäX‚S!„À³z¾Ü(õ±Æ•îÀÑ0þ²
-tlDß‘¯¹Õõì[ÒVøxÉÎnlïróFaÞ =Ù¾òÏòŠ­[aÒ2¹øœ˺“=¢)B…¥¢5®ý’VjÏ(º¤6Ù#j..ÔÖ(Tbd6ÇÓ3 M̼¤¸°@¬Ž¿Žj8áÁÌ“³&Øànæ; e{½©Ÿo^Koòþzs‰Ï9ù=5É«òFóØv|7Ôº>æ¬ô=-fé]¹ºÂBΣ×Ï£4Æð‡f;PÜ)Nì0–ÎcÐà¨êÏï5Ú&çÇsw‡&ß °8?‹½ûF·ÕE)&Bø>§€IÏ«‘WvH;»E÷èÛòdàJ~ÍØGg²rÀ£ˆ;^¶ýÕM0ˆ[9Ì‚Ö.q臉šÉ) %®ý6Je¶Ïtý,Dì;o¥Ç²Ù¡<C•yKMÑ‚O¾Ûå](ѤHR#¹ù¸X‘÷ Óåà#jÍAÇ‚ÍŸ”äëB˜ã2˜µðºót®*mKuk¶÷ÚLÔòߊªŠ°Mx$xu0†õi ¿æsRyÛä«Ö¹opiÕÔã–§(Rf.˜h¯É¨HÔ-8>ºŒ-';—7ÚØÐ6+šbÍ>½%IŒíâ€F‚—{C©s­‹ûöØ°@æ­–FÍî‚pº †¸WT¢Ü°Ü`ú¹RÒÈì,ðuÛÌÐâË—£+(¶(… û\´¤Us÷ÝÏ\$ZåfÚxŽx/+eç æ¸a<Çà¼G |Ÿt§ I©Çž#<\Ug¨­ÄUæNV˜Ÿe+CraãF:l“[ݵGx•dØïÅyçL<‘"‰Þ0v­Ê$„µõ–¥(gíد pþDé‘Ì ƒí‡‡ èÖNúxYÏäï`¬»Åpò8Š¿°“èuhZ‡¹ÓpkW䨚,QLm´ˆ
-½–wjPËgHȂʶ¢ÓÌK™2Äisëpz°Jª;Âe wØ5yÙž2IÌBI.l9)7Î¥ƒÚ Ýg¶QÒ*àŸ¥HÝ%Ÿ_g†'–[†u½³‡)…J|ªÑT*¥ß^Œ{ ³z+ªSOj‚pŽ±qVkÿ$°FS Å†hCrrÇp†…ëW(³cþ‰­£¸@:ä¼O:fi"°pà9êŠÝبqŸpJYÛÃG€vì]ú©}~JãÞþ'5Ñ ÕUBŠQõpÒq‚Ù]oùz³—ƒíS& ೫eúa¸Îv^ðbóâ×Þ½ž©ÐÓ##±Í`Œ¯OL«ž[Úûí›`2þƒ¸—ÑÅYä ‰ºßX0}g^.ÒKÝåÛvKB‹4¡â*#œx(Lû¼¹)'TéÇk/áš•Aßß’]$|~ÿ郚+ ’H&¶Ð²™EH´Ó‘Ô/­‰–#Žgéµ[ô©‰÷—½ªáÃZ“n ÕAÄo;èêm%Ìt‚¬’‹0X8‘ãŒË$à„f¨þUébõ|Wžò`WÎÌ/@>ÕBÚ,
-|"hwÓ‡ÊCΘ3mzǨÖÏã"Ùc˜
-]<”îH!V=p'jj¼ùE³¢I]¢äƉn»Súvvq‹
-¡™œÝ®à:>o(D!6'›×1[3ûÇýVg湿WY®Ý‹Ö1ND\×jœœ„ñÀXDÙYï'‚ÈÏøý'w®mQú.ñ
-Ž:9¼žc§’
-ʼ†,ËSMè¾Æ°25ÏÁ?©ËY¿ýWËM²ŸÛì»Úé9¾d’QÝÑÔ¸tòž‹>]KbkŸYh³¡= ''óI£²‹ppn©¼¡Ã€Å [é#'Õx5°Ñ¨ÓÀ#§#€n†M5Ñ“K’9 ßùuTð¶ŸDÌ[ƒ+3%NrýKW#¯ƒ Ò[*—UD‚[y˜©ç½LÉ Ž½ªÏýQ+Ž÷\ðç–Ƚ„2¨‹ˆÅ‹ÖrECLîì-ßýÌU@˜\ª3®vßókÚŠQK<
-ðLÁ¡ÞÝI Îæ!¼ Iîêý¦dÏ&*A¤Ç"’#àƒøŽ¦¡)ÈÂh^í®·wf.Ù3CWðn@± ­ëRùF‰þŠ˜ñgßc/Xo+Ö ×£î¦ì¾fM¸0;-‰:eä‹Õ&hµJý˜YñêÎÔ«+­qž>&ÊjÏ£]'•Øì{c瞣JÛƒúŸv^§ö­Ç¯IØm踑sT DÄ”Ð4@W]½w!ªTYiq|Ëk|søwL®ð1céž_ödù¶…íÛ*bÒ¹5˱¾¬ AeÓãÉÏ ©"'MP]Ì¢O¶õWù2£·Þ Îã`z¶ÐìÇÄ&¨ó$#«N§
-û3Vv/iu™œï¾Ô’,÷ìc,\•~H=nïò‡Å_½§Ëêgqº:è'–8œm•Ã§´*Ψ v¿(pönA4•AÆBáð¸Õ#šf¦1êÒφ›gñT‰}W±›©,!ò¤nÜq]hµ9#Dz€Gç“y%ß^ŹÑÆwñsðî¦d
-ý&×~"®‡>¥â®³ÐOÚ¬Ã'L\uÈvÁTž߆Ÿ•½Ñãkö Mf²×^«ì`7îÔT'£}Êp"è˱ëo>üÒãŠýɳ!y—Î=$Õ¥˜˜í÷© }våAJ¶ÈÚ9ƒ/V'’Îv³ÆÏáE|˜]1/¥«Ì¤ü«Æ+vf¿«·mY8-€*կȒqž…eY!F-ÌIøŒËë0£M°’ªÊ ¶1ÃqøJ·Ä]i?Yk¹ ê_DÜxê»TÐúÒo)¶ÒE¸2oŽÙL®"}*!Û©‘84R&
-HÊ–hPéI3i7r…Ϻ.qÂ'Î-\nú‡ËL†xH¶õOçG~ØWï‘f¡¬L{ÍÑ{î›2BÎ"qX§rú=U×Ê^¹1ÆGŒjÖè£\‚Ùî=¿Æu¶Gr[Òež«7*ÞKgןÒØÓW¬Ä†ËÎ]/åÜ—Œ.è‰OÑjµq›µr¥óZŽ{tNÑ­Ú¼—õ°yÅ2BO4¦–%Vt¦Ó1NÏMŠŒ³m,(Ò€çâ±­yÂË?Œhmóú²Cc™êQV_‹]0Ü:Æv–v¾Ä­e}²å”Ïû†wÆ ræ+%o-N¹ðaèz0K¨Có*,c’­àùÚHÍvæÔt›^fÆ¢ Ööœîšµ¶b{¿‚%ù“½.œ’ØVý¢jŦq³ªCŧǟï_.|d…ÁJÏÄø*5rZãGYµ§ÞþØ~EÈ®GÛ¹Œ
-ô—÷ka¥(E­Uqù0~ÑÔ"/ÃIHEÖ,ÜOKvœ,â°e÷ÿоFñ±šÚÜ—tŽBG1¹ß$c·ÿ4NNW×VÊï%õ…œnàñ×ÕZù«”CS¬dŠD] Ú ˜øçÛŠC¬È5̼î]i#Ì¥ó@ðq¨à$^GØŒ¥ÔïQ…6%*M·Ã×¹dÄðÜOø«üÈKXV;}
-øÛ#+ ÉH:'¨U’0­t,×S“Ç]o• [O—^Sa½ÌYS+q$X­þvõˆr‰#fäZ°gMp:EÎ-ì4²ÐLC,w³¦…;åïË¥¢ˆo-"Pu§fèD¿°=„µ|jèú †óuÆy†~>ù¨ý:@h¹¶OðãêµB†@(6Ýk¦§^<™,«ƒÕ“6:¸Š×êì˜w’½?XšxÛòDQ>òu9mN±äùyZ²ÌûQarÓ-ïVè}݉¹à¤&ÏD ÉqïàæŽÔúDaÄõX–°{‰ä±rá´'>GQüÜãØÒ/VÆÇþC¿D Ùo€.˜¥a~]Çn#ØÕ£Ð=¥¯í•€.VSÓ¦s^rrm-›…d” C­_AsöÝäUbˆà a¢†üQŸ±Xh™«°M¨ŽÇª*?Y÷P–Ab#BNDé&€€Èœ<•¤T
-;¥ô2•,$åh¥<ÃûäUr–s­.©k•2x¬7˜¿Í&VÔÄlDòCɧ-kú÷ {œçéÔN%}
-Ø?9K•©ª45ëé!›_Ç
-çAˆ+OW½SŒó”{)âóæiöçB¶ìÌì^
-Ø6(ȱ„2¢hy–ÑÏSdfc]JpøË"¿??£úÈÉ°¼Ïbé#åÜ5SN€ö‡¾q_‘åOD…Ë6^ Íí^ÊÈ9…ÏÛ…Ç×lËÎBÕdw{ÓÌÓóoÅf:ñx™%gä$É ÷ÓÀף˫³MŸª½ &ü®ç7ÇuRñ¢”“ëù"ÿÂÙ¼ï6ÛÇDâ wì\äK0‰¾#,1[循^YÍ>Q—/-j%·t"Èíµ‘QØsÔXë§*R¨§1'”Îæ´ÌìÇìo¬µBxñ¨¼ ï_1=öÉìQ¼–ÀÇêërJcëÛÔ»’.«cyÑ%QjÙQˆQñ<bïp‹ãgû%‚±,ûÎyì“#­s—Ỳ±°¸hœª±]*ª†¢FÔóȽlå³É€lÞiÜ V‰ïù\ý{¨fñeêý¥7ìœô®DQ ûZ?£Õô;[%*ÏoÞN¾W3ˆ>mwÓ— ].)é`>ûêZËj#µW±>+Oüp~š›Ó¹‘}€ßðHyxŸ‹³»p¨¿ ”lùX;w{´S%ñU;ùgþy†b¹W¾¬“´!ô€jsž›ô›c¾#yŽ¸a/KŒ˜¶;ì,_Ñj>͵¿Ù$"ì¬P6Ï°øÆÍáµG•[’KuÄÔ¸¨Ç:Rª ³Dú.*j>õñ³C ê·bÇŸ k"?¦ŽõÕÍmÉ¯Ë oYeü‚ÄLÒÄEîÚÔ¿«?ni‰¦§Í¿jn }`\ß©1"bzß åª@g3lÄÆ=æ…I9µ‘g˜S•5ÑtàZá#-£µYå SL£¶©³MûýʹåÃO㇤…ñ‘£opDÚFú ”ws©¿hwœôò¾S’:xi4üC( N#v–ý˜uD‡¥0]éè£îí+…û@'˜HÜÎø²>K½ÄÚrF|­=öyÝ|mÙ€8ÂJ‘}Öæ<¹ŒÐ¦ï+\‘}‹Hi¸‹¤«æò±£B¸pNDê%Å@…ÑnkÃZõ%÷SQj"¼í“ã\¦6¶•þh0yØûVAŸæÜÝm3¢W6šÓL·¹a™lSÉWˆìݾ.´‡ûÓ ÊrßC©ÃÝ_{€DTJÔg ¤Rhép–>8ƒûŽ7^é…ò4û^ËëÃÄ!˜d¦WG‚à0J%ͤ;C=j8uOœ£í¸Ä?—¦_576¤ÉaÄ(:ÅKIN|³«›@'f:&'‰ DÕ{êbrפ­}ïû¡3M]ëYDO‚Íëé»Ê]sß¡ü  ‹Î1f¼Fڳͷ™íd˜º®…æ¦VãŒ\I~ÑcˆH…5\>vg$ ø?˜Þ NK¢[E (ùϧq–"6Jâ$}H°ÁÓ Àµà[V†`R
-r×ÆŒ jX¼Ã9ms øÉã·ãàmäCgÅG!e 4ÇÜðè«LÆa8µnYØX Yþ‘zcŸ¾¾¿ˆž—I ¹îéFu«Ô÷mâÝËZ€ŒÝ$šdhÃVl‘<tÕcY·Vd¥»¶$•ü=°°ñGéÞ&ÓÔ¢GÃß(@ضºfGÆ<“üÏP̓6€ep¥Ö¥NTl6‘À%U ÌG¦WQª—oAÑ 0¸Þ¬½cJB3%è‡dPç ñGá·9Ëå‘òCÜûèÜØ Ÿ£ÊÙï분 #—jÇ–Å6Š¢LϳyïI­¨|uá?BIÞÞJòÙI›“cgÔ<‘MEB5maà‹¹s>dQ8ÖŒ“š„Ÿw‡u’+Ü$]Õ6žÓ‡à*ë„Å~¢qDÁr rš…ú9ž¶¨4¯6±W÷1x·¸{5üIS›è©{èž(¿>Oü²Œ6Ó ÇŠÎT\ ZLLr '$çfÈQWwU¡²‰`qUw«ýœsÒɱhèlÒôú²ªp³¨×Ú#´¥~‰öEj>̉^N×Ó³þ’ôü¬eJ©#k0"ƒ
-ÐcãõZ?~ê¿ø¦óÅ8Ç놶f7“ŸÞ1''¯Œ›@?}Bí˜ð0! ÇVk¶b:r:RÔ(ÆäÃÿNœ’^¨+‹_UŠÐNsÿãóפ‡Œ,«H¦¡äæèü¥¬ÈÂ|LØmûþ–ÅL‹u *~I•Æ§ªrt«ÚÆ{–wWRë9¼…»:zaÍÛk/¤½„{àÞ®‚С߬!iíÇWwnòð'á†=Îä<Lî•Q*ÞÁî ,ˆ*ÆËÁR¯%‹ôì…ƒñƒÏf
-%çÏ…¾²¯R·ÑO| Ú"‰ªÃæeø. ×Ùîízd;ÉX ¸Åóõ»0LdúÄúìLŸ9–wé¨ÓN<¿yéG{w®Û¾Ó§Ôäü_àë­>¦@ÈÊŠÌuã1ÖàS¿cg…Ðèi¶}“bgQ-‰™&ÕSXiØߊbœ½»=Èž´{h v™†Mý¶€¿
-•3S¯,ÝCôù±L¹@›øµqåb$ wiQÂ)è¾÷M¸YËF¤œO*Ç-ïë´Áº…Л°£K7WvÍ}Jz>YÓt[ ƒ&åÞÏ P{ƒç°?ó¼`Ê®°¬ËãdSXüEa¢ªªøJõ§ãöh±bßsš²à:³i&ºe«¹Æïýh¦¤åmÈy ÿœ^=÷ûÜ©ª~¬µ¦›k°éž™¸Jí“D÷º¤¥ç•oÎÞ S8µþ´âÙÕ΄@Bg· :uñVž4’úùÅŸþ‡R}è•(Ê*&I’˜çÍú3}çíR'Ò§“bà¨=iÒ[$l<,Г~Ã;Á¨XkFÐÖzysÀ¥×¹.Xé2"9®žLóÃ[–Òm~¡*ÍãÜ5YnÌ-2s=°à¦ÛÒšGh Ç G…åeÃ;£mÑÃõ¦Ï´ÖpýþÐÛ˜sˆG£DH´VÈôdaÏžâc1ŠÒÄ’žoW7vøÕ•ê&œH›‹›C¶ñ¦ú¶ƒ­š—[ɾÊÉ0¨¥·Ô»µ—]<A]óW¼ Ó²˜/Ȧ×jþ72«“9X4ûHÍ¥ô,wçÈÃú´êÛËý‘"CÄlR®ŽµË`?«_b<‚etëñNWˆê`…zäCÇáüÈwÃýlPe VañsóïB]"
-º ®鈚V cò¢9:¤ #Š>ú]Ž—•ši$*ûØ ‘¾>*™ë*TÛFI{Á;]ûT°ÆweMVr­ôÒ°µS—8æk‚´„QXGé‘ऴ=áøTg2Ge[iÔÔÆÇè#Ù,â°
-ôn]&Ÿö†> àƒ¯80ÛöÏ°¨®“&€†•ê.¦ÆCÃÏC,¿ 2¥’Ž±äG)µºEcM+g7ËÉ,è¨SK„—ì,».9<^)ä(ªá½iÇÙ:™WU¾Õ!åM’µÜ,ð:Òs=×ýIííãäY¡!(žfÛHÕDÝ 9b Òx-`. -J¾2Äh ‰qy
-EÎÁtYùÝâ¶Çz›¨,ðÑX[[µûõó8ü7­f‰BŽÀ<´¼Œ´AËÍ=›A©ùHD\©Ã²ÑÅÃq~k]âNq?^s«þ°Oçu~äT=ö>½þòu'MI±‚Ü–†šhò¸%òaciÔô½aæ;G«"[[£ïžSúHÏü‰>æ¦*$q–ÄFÃø-:¨ö«,?1(&‡`¾oA¸pAÕ;’.©E–öÖÿQ3¿O§ÊÇŽ@E7åØf­¢õù,Ê\yWk|øâ=fäŠa™³ºßS¹q±ÔÝŽ3¸œ©w¹[¶°²îPdW  P^ºûÁ„Kè
-Á5ú2w¸×"¢RßIJ¯©ÛÒ„ùhN±H¥ý/;ï-Îé|pÝ0’¼•> 
-iÕ¤œ#¸Ùa)yd­~ˆx“*ÖèÜ0÷Q†‘Kg&rBì¿|Á±¾ùsq5ÃúLâ3›+‘0@ ËgwûE"íÃÛdÃ8[T£µEC±Óhüll,íQèðQsKÍ{Þ˜»+¼ò§À—+ˆ>
-ªÅøÈ#;¾GkÕÌzÝ矜Mµ‘1Õ"<ÁÅ÷éô!¶AÆ—æXҺ䟄4Ûº­täØúq¼sFv®éi40±Q¬ÑcÊZ-µ p)÷móaá‰ò?C`øÓXâ«E}6pçmÞ÷0§:{6Ô\v|=Ïÿu48^HœR’‚íáþU‘…rƒlNLø[U$ï¡­}µbâ«¡×1.Øåf”o%‘ `ÔÄɃ,U3 àòŽ›¤;ã.õ&Ìr£åˆÃßXoTŠbö.
-̧ |±ðöËÜ¥Ó®²*Þ8^ó>Mm…̳a ² … SOF1)?ú†,Ø4`£Æª%øF&Ù¤VèuüTz€BJ9îÜBS™OöNþÁqÔªC¦üð±i¶Eãw]e ¤ÜŠAÐg;êO›žÐê» ]Ò\Èï:œ5ƒao‡¢=ž7¤?ÎE椳ÏW߃›Ž.aYc—dÉHSHZ‹²Ðn¤>LÈOóN w€¬ꮸXF¹;êÃ?ÔMSÓòLà£;¸H¬<sVh­@Ù ¡€œÚ§Ï!ƒ]§ügf­1m‹Êü?_ –¹ÜJç±F”¢³vlÜ'eIØ>I­-ÎgHÔÁÙÀ9qçgøòø–<st٘ǥ"DO½àúflV6>³ÏNt|~ÄPž¥‡ß€c¥ŽŠP Rö¾°»8.Ž§×7Åf¨‘ˆõh¢_”ÚWñ⵬>Vë•ø¢¹•ì,d Ô:X Úü|*ñýê`>(9±ÈL¼3†®öcþ_*î1°IŠÕV{³Á zßÞÔ½¹ˆ†€Èšx=b€ìßÇ2_²êj(nP«yHÚöfÆž¾?æK]¸Ñ&Û$rŸ·2še«Ð`³@+Ï,]ˆâÁ@Ö7§²63"·õ*%c¡çûìCNÊ2*: Ú½F›²ÚÌ÷¥Áôð¹yV7:
-ƒ{ˆ› e¨Oû®2´tDq^*%a÷æPÌŠÀ¤ÂfV«ZhÒY 1kœì[Ù%ÙÀµ<P0ž!ø3“«õì9órø¼CEïgLl—)ƒ2}ô’ýçÇ Á¬ûoÁ½cVËÛP×
-ŸSŒaåÈÄšW´‚L×Â%50¾ãÕ<hZ½Qßß·¡Ç(1ü¤µ|22‚¸×+ ³qZøŸBŒÂüYhø”ãüòÈ|6úLÝ)ø2
-ŸñÛþÌ61ŠÜ¥øE°ø9ï)öÎŽ|‡˜ØÌYбn9è©»dJ7=øÓ–ö·Þìr;9 º {ÂçÅ)|;™Ö!BèeÛÊÔ"t¹ï3Ð<†~°  Ëì°ÚŒ:I¨®•\S ß–µ«ìÚ›
-"«2bÍŒ=‡KŸtÓˆ)ÞààøèÒZ†ƒ¬iÓ[µ •Â–+•nyŸ„c8\Œ=”§LŽ-!@ô`T[¸ê:á}Î+‚ÑCz³,!ë ª‡vW•½ÁP¿É½ç LFšÙto<å>²³<¡~ÃÙ¸_‡;– Òª‘ùŠô1ß;qf¿¦ýøÚ¯ÛÆñvuQ|°Ðã©ê{”0<ÌN’SÐË#mué!k9IÛ ŸâõÈ
-“—ͺ†nä8¶J¼§W…:îÙú¿Å¤tkÍzRM¬êù¥¾€»ó'¬µ8 6lè X?q™³–zƒÔõZ‰¬¹cZŒ†S’ÆT×üz®ï±ðbŠ…ઋŸê)ŸD‡>:
-†ÎòcƒqƒŸŸŽöŸ4´a¿ÓÔû¡ò ÎëщÉõ}|hüñÑœPws¡ŸN!±»»M믞A^ûŠHÀk?C†ÅNátáèrë¥Æ@{³Âè‚=;/•a kJ èP“°vKÀÕ­MýÕ
-Îb¶ÉÞÃ6¡5[ÖçÕ¾
-®3
-î)zÂ×<áVdâè“…d®ðÙÂUpª³‡ä~b3ÅÈ#vf”:eÞja|¸†ØÏUbº]êMt™Ùz®aƒS ÖKE:ü÷þó²Y\ëM:º_>6×æ í×~·†‹3*²œ¬šFcSñó<;™KI…~ã‘<GxZGHœÊ[TÝf­°p‡áåy÷\ÇÆWœy٠;Ãß;,Cí•ð}ê8' â9ÈÎ+$[˜ïÄQ$çeI©ÈÄ^”s®¨c”5¡}/­T0¾ )+Á^ž<C[V&«ØV¨ ža•åí¯ù±©f»[BÐ\,=ÛK ¯LàÐ5¤O|ò«crºŒvii"gNXª"©wöÀýÞ˜g§pƒF«†Ãñ{(ü+‹!cïä`òÐ>ÓÉf?ÓofŒÏ–LŒC§òvÚ§¥ÄoéõÂÒ)ˆ9O%D­åþŽiâ’ ÖæD~1ÂÄo;w”±ªXXâˆ|õ[˜ºKë¸ÙÃ#½º„° ÏLJÞokE{*Í÷s®ý¼KœÞ¯²™ÓÉy¥n~S¡wÜCaþ†ÐE¿¶ð*õSô&¹œ`•:K®aæJ=†úÕú0«ÃÇÇ”kúà§/mt×fÔ¨[ž‹hSv@àºkQϨh¿ãÝ~p
-ê×Ôåv ¬Ñª‘ÖŸˆÄkD)…ÓË’Èd³g’CLeu`&Uÿ¾(J%ãv-zˆr¡Gñà%½j}{wüšŸTÉ™)£eá]â(–‡WEêN”¤_B³ ‡ìé†0Í‘ÝG†¤t‰;Õ]AàWDCeÞ¦àýµãÚÈO/„Ë>W¦ÐŒÆŸû6¦Ö²\ Pe^ «¹L¯ÇtSÀÁ’TÕhÚ›åŒùG3FÜ<ŸXî<Ú¤)VªŸ_°"ĽØžý\“‰ÓÚ(!àŽj :Ñz*î—_ÏÂþdoœtðÅyf.S€É¨.— ¾»—ëìßR3±;¡!%Íᙳš•ælŽ¤6Oóîƽ
-ðIùþ¥v …×GÓ%ÝINÔ4<ö7Ÿ¡{Q>3 ï¢ïdX‰êú;¢%ïíKKC«· ¢Í±/8YN’í¾‡ÔÆŒ0…–Õ‘V;‡ëvÎ ¤ÆIdOg#‹`¿m›xóZÑ0ȯîŠo¬ÙQ¡êTŸJÔ•uÖÅ_¹(ç>ù¢¬+¡AŽøÕÏy›pÎ »‰ Žæ¾©Ž!®S$“í£Îk©ÚþŠ"
-œµÛØ #Í*Ù·}e(òºMû{ª]nFü _MɆÎkÉ–©°$8.%fƤpžƒÈÌÒüÃ&¢ÉÝÂÏÁõ˜ÈLúÆú¢fsÀˆO¾ñ~q uýR“mß|±´ÔÄB†ò–Õ[}ÐfC^Á9Ÿ¾˜ü.Ù˜nAO@ñÅ&á¦=êc×õw[‚‚üØÝ&VY”æ\ã‘ÍŸ˜hOZTzñ“vQ*ÅÀor⟡»è¡¨_—]ÊŠÍ'é›a›¨H.ÆÝ»yñDN¾‰zÂuÌ ÈîW î]!ˆ1¿˜¾£›— U6`àç’{#CbÖæ¿^kŒ¹)›aôjKK+.b²x¤úrÇ_ÑÖä{›ª‘é4=Ý|ÿë×YŒŽ,7#û›=k§_‘4h©4’+!録ƒ|SMàôoŒw«ƒ#ù×Ü‚¡¿V}óÉ:øaÀo¸tÏöeÞýÊä]-eH½! Ï#æ[ÅPS?ÄÓ²F "%'üb}ÅuŒO]b5Ý$ÃØuÆÄú^+ …HâoWä_ÇTIˆ³Äšz=ÆaŽƒ‚Šzb¸±h›2饸†ª5¥<Û¤Ñ\VkríÞ`œ®/'=)³ìÔ
-ÉÕ8²AT¶Ùr÷ ‰œËÐm\`Üea›;î})–Ýx:Ó˜~Bä0‰¶Éjþµ]ë•-.ðSf®…›üÄ(-09É÷“Máôi3Gæ`~‰¶õÁ]ÉÉš#µÿ LQ¹§ôÂ3o<æRòk‹›°õÖ³ƒ‹ZºçT«­‰Q“ðƒ;w ‡Ð #•»RTô¥9ÜH5À^aì{„+±ÁÙ
-1íÊ€<¶ãÌ7¢ñc}ê%kZÕxƒµç¼|¶Rš°ð>É=/<=J£¶Ü«Œr'Æ+šnj燡)ίªXodˆNÝXùù*P×”¼ì<$v¯4X#Ø8‹eªÂ–H ­K“’¼$>ÞêRgkù×Ø´Žû8°ÉÐßÊ#¬€7Bu%¬P¡J¶ZCØø>Éîë!¼Uz«=SjQYz o"v?XLYÑ3LÏ°XBPùl›ÓŽ0 ÓlǶmÛ¶mÛ~ƶmÛ¶mÛ¶m{ö»¾³ÿ
-*éJVº+]=ú2»qsöh}°±ŠH½“~³KŽÝo¿É* ÏÍ"ÉgØL‡½ú©NÒrÏ¢“¹ÄžBgƒ qãOŸ½ë|Òí´ùO‹“Gý#w$9E®÷”i†è©³Œò–=Ú
-[ÀA%Ã%2ÝB-Þ‡ü½ Fè4%É!ðgF¯ñÈ&œcâ“êB™©™è›k#2u<KyvlÂõÅ~ãÌÉWù&Š ”B_!Œªô³lG,kºgwL!s™
-f­×%30‰ÜO8A‘}ÃøRÈ f0l–
-‚çöÑ­l>< ‰úùUƒZoÐa™ÿXˆxëcV9êÄ@p¯Ë6|s©Œt8ZÙ¹gƒÓç¼FÔýgÊÆ6Ÿ**1Îo¹`.É‹Äj£<¡GÙÔ¾öÍÓvu~|U*| ÜçAhטâyÔÈWÛÉUÇÓ¡.¦Óö„šA¦$¦)º£NíñŒ(¦¡Çq§Ô1íí²jš®2šNÔ¥ ×Ú„‹Dàkúk®>±3ÚÿœÍ[µýæÉ0q8欞õJ;“W,Û¶»NˆÕ§³ÃÅîËÒÒ ‰‚ʼP;:`sF½šK'ÀÛè°°mÓCí›q4ÄÂ8„¸Ñ¾þU ë„,€‚wŸPdÖKsÐß­ºf1Æ;䙀Ó5C¿©…?Ýp0×[ÔÏ‚Š‘¶„r×çÑ*€Àpœ&eÖt»³2fꕶÓ/àt,·ñ¨(§üˆ)'™7¹Á°J×£ÆÝ=¹xÏwÞ?cÕûÒ›bãMh´qäï2ž˜ýj‰RÁ¢ÊKÓ(xatâ‚3sô¦n*T²‹’ûZ€_ÔìM„Z
-§2 Úæ{5/‹tIs€‡ýEŹ”: `Q|@ë‹(hŒûA¬šîX Áï#Šsû£Hãd-Ò:y¨u‚Ø÷5[Ó°x&dS¯Ï;›I_æl£îõ"ölº¿ê°h“L2¦,ížlÆjôgø^µàÂçÅ2çü%A%$—,]7ò#ÿ^ûˆo¹×vïF}bçO_ʶ÷Ò®oxb튲üá‡ÙEð₹ a®b…înéw¾?Û 0A¹Fl0N<§gǘ_ÈŒŸDðÈIúàÅŸå?@
-îÂS n
-`/ Z*&ôî,±}Ø›ÿ ûïƒ ž€§¯÷±û–—ºd;RH;ÍŸ¯5»k}¦<&Š?ÅƉ.y'o*Þb š7ËVR8gZü_ "£kÂÛ­Ã¥çÕø]¦eú0e4,gŠfyœí:™Œ&¡yCвHç±øâÊ5ÈURýbå¥ãÛ}AãŒùAwh…¶Êö†ªUL!Òù'Ï@FdDncàWjªoŒ„NòïM¿srO¡‰.üÞø²‚Å»@iõ{óoîJSBÉâ¸ïDÓþ*Öìƒd}Y?Ý>²U6ñ !ÀµF™ÄKaÉ{"‚
-:ɘ´øzÔqS²êþkZ3Ö&#í¨Ñ-w«êïm
-r_¦%Üå)ÛT‹SãóþÅàj$¶z͸L¹ê 2`°¹]Osì¸#r|ªáF¡¿žCüçj¬‘ZÏüôO3EDùv0‹”kE0*oiLÝ.ç,Ëÿ"„Jz{\¤m—Qá6Þƒ…/:a `ÐjêóÐ rKâšQëwÆ-+%á« Î;–äÞWþV鿷葺7úÔÛ>L;ɤuML›e$P©/Ãôl-¤¼¶~ÒNøó~w'ô¥B£( ÞúRÕ%@“ëvÅ˳R|”Dî#0¥°]˜ël^;_ƒ0Ýžá›xƒÞoøuЙY¶á®Ú­µbÛtqRP$ÃÝ©aœ:\k¾$`5 …ç­[¡ —,jÆ@¦+ƒ„êÊïlë"jé I£cbÓawY7”³5
-CÀжٴ ´
-Æ. û£ŽÚ@’âü÷}ÐSÚö·˜aåÓí=Ažé£¾â×1ÏzÒÀÉ™¦¾Ð—±0À1­GXÔÏ,ùÕH¦Goåñò¦yÔ¸¨8âNÖ {anŸ\j"²]·¥ow5¾»Ðhë­aý`Cüúø=7Š!Å<MdY÷%cYº™dô¡C¼ µÙöBž眿·ÕœIºE~Ò|7cþ3ÀX ùï>^uÊr’ ìŽ "Á³\bjÍ¥'ð»&\e3Pq<p—¶ÿ2âÏÙ Y߉ϴ–³Êj9¨~ãÊ÷'eßýð‡vÕa è~7’Šëÿ(CiÛüæî^ð¥áowÂåbŸ¨l†“2dôqu¸hõÀç½ÛÅ–œ„¬e
-5)øá¼E¡ úZ}ey $¼_r@\Å1Eãl"±r5-`‚"ÀûMY3Ùù¹$—a3ÂìŒ6iíÆÆ~Ã;ÿ•_¨)ÛsH(Z¢»ïP¡·Uˆ…ZœÕêüÁì»rÕ=Z’5®?%äØ6¸øŸ›ŒÅTOß0¿\wå†8g§ËBEÑ×úaûª êý#‘›)m\^½W3MŠêqÕ:…0îÝÝ·ZÝ°Šß¥xæ #Åä\«z®_h[§N0À¨  u9zJ¶ÀÈ\5;sØÇužë£Ñ°EtG_Í]šÀžÝüòé˜
-0„†ÞŸl‰âÖ¢Â×ôm—>×bw#m‹ûxþ²ˆª=ùUíì!KÆhø¼C E] 4íƒT
-4)߬à[}h­.Å_ùl'åç²]¨²A¤*p¾~XØ}ïrjíÀ‹ä¡-¯ô‡ò­D¡ó¥¢þòlâ­}°ÜÞuZ?îÓŠ®®p ÀÜ;!’e¿ZÚëRòñ}¥lÍ·‚Å#b*HTƒ}ŽCìEõ•À|†€ô­:´­jóYG-RŽ›„X}]~þf¯MñÄ&ÕÖwƒ¾ÈÁÌ¡Ïú[ LH·¨xÞg¸“žÃôp¿²ùfzÙ €ñ2ïàX)
-† êŽ7‡¾7:% h¾”¸êï*IgKÏ˪m…g2
-E‹Ó< /K¾PTµ …ºq8¥!y|îòŒR‡üˆÆ)°äk=Z»ÔË„ìeá»i3Q´/-m(×ÐH4Ô˜—»¥µå˜¸e2¸üÁÁöÍ®Í=GhKv]˜û;Ü.óì¯éµÔ— Q¯ïTŽ%}‚rƒ¢¯ÛÈ
-º§¦þZŸ0ptbf'’2­8ÍgyÀ?‘xŠ¨Òÿ·Ó¹Z$Õ¹„=qö Y(‹¯u
-”c :Â68_ûºË7þ=î±ïæ…;ñ‘7í1A>Z’PùÚÛ‰[_˜%g6~’Ï«›¾+^¥¸ã(CI®94Ì—Jä…ôY±J€È•ÞJðI4aC´ŽbŽÞ¬·
-¯³ ·~Ñ‹ÛŸ“XBF]Øå ˬý±w‰z·ô8UÌ+‰86:²èBÔÁÀ/ô¤¤HzߨZQÎg”[ýã“¢jR ’‡Žã=^‘š¾[W¸#<ê¨JcƒGƳ-˜¨kCÏV÷—7÷M&ŽÁ´B‘™Ò»°¾MLª¸¸½‡6³Zfq.ƒ-“Ód¯o¿L¡¿ª ¨Ìy»ã—ÆŸÒ°2ê˜{㧔D?d”!ÖòOç
-ïC—(¬6ù*tœ¬Û‡cÝ~<êiö‘Øý>òO•kúŽh?ö‹ÑcŸ×Ðôá߭鬼äó í ¾¨ÍE3­)
-rσ c5ÉÀý탠ÉáÐú"5±~ÆßÔ4ØÐÌþrŸ=Ëß›tÁO#æƒÛ’\qt1„ÄHv•{p¾Ô·#ÀRÀB9 mð 'Y™^;NÇJuŠ4®˜{gl~Ñ!TÐÖ?ÑOüt&
-2-”a¿–~wî¥núj.²ò°hã€)®¿”Ô ªµ= Fñ[hÿʤãü(¿Ehîˆîu nëå
-mSÌ—]ðKžÒÎ/÷ûJµJ³A½¯QÌ`ðÚûðÃñ3¾ú–ÐD!g¡0†Õ\,’ ê=%+5»)…le;ÌÃS ´ÙJòÒÛÓ‹¶:žÈ5d”= ÚçæжnˆS}=Æì=r$9ö§"^¶fvòc_ø×,ù³¬?Éufi5¼çÖöU'¢}ÝIÝPzž‹•åƒõ›âÐCK¨Üƒ3 E°€ë6Ò}*ÆÑâ¼5yT|c‘bN\;6iV¬@}Ä7¤zob‡ osõˆ5ò._ñ û”÷„˜ØÔí;n
-nîrˆ Æ.g—Aƒ
-w¯&‚DÔ)¿áÏ4¾ƒÏß-ÌçsÕìò]Š™oC¼²–’fžtÉÕô^w$.k‘ùwŽ²¤$M€S4P\Žw |à Q¼ù}OÒÓ{×mð6êuèšÄåp9\Ú,X?²b”)¤ 6ü•l\/ .ë¤0“û­tp…y¿v7¶ÁÂa]ìg]ijJ"ù2oL¤})É+ã`qýɨ×w¦°¦3æg¡¬¸î¢Ö,yëŽðÉw%Ÿ'ÂKþ[Uúgæ€VàV­0XAStr0“o¹ì »c°HÅjŽ¯ä,üÂØ9ì ø1²}“ê f¾ëlÚv;h`Õp„ÊT‹–|2pÉ&š7™»‚ÄKcð±ý©š¸ÌK ‘/4rPåVt*Ø7ãZJÖC¢êªý·Nœ×ä¢WJ(ñl(¡’d5TÂ~Kì+¼ bX¬aÌÑÖ¢œiâ…þ;W6x%ú¨´Y±€lG^ÖLG
-¼ê¨ç°hÌOl™¿º¼3a †ºÞ<tɦŠÞ׿eè*®bÝÿ”–å•« Ô¼Cã²2eà¡2$÷@ ö ³þ¾ƒ€^<TÒàm9mtR@•“¥oŒÈ
-R=Í¿9*Ä^-FQpÃ'„rbíáǧ¼Œi³ Ãô°‰(ö±°ü(ú—¿eO'hÖs!
-:¹71•­b2ec\Óµ±·çÖèÿ—ÔOZ½Ý­Êbû•\ (vd‘4ؘK'ñº;ß”]Í
-6âðí•-}¢°óƒ-Ëi<cÁkYnˆ‰(§D „ÏAø™Øݤx:s†ãÜîŸ*㩃ŸwSŠÛÈw²™Ã—MOXÌ~îlåœD•ž×úIaM£y-Z?#ÔÃfMk~ø¬0îÙO”Øé´J™0ûá÷‹šf¤Ï„@³IRåb_ì8uYr fSÀ'݃¬¶;gÜ6™æŠI)VÁ’rS´úaþÁl n‘ˆþy#üyí´©sn©Ü~4[YGâd?½"qË”ãÙ¾?z5‹ÔílHˆ±(Ògèž1"è6òòEÁb–‘ä`ˆ ¢]W—
-m>c®ÞŠ¶R£µUÛ)ƒÈyô˜é<ý¶á&YAºß¯Ë~ÙEB_õ'ÁˆÀH›Ó¨;ÓY¨Ö7ZV½Zûi'Oõ}¢ýèËËf8kðÐÝ|;=•â«d°|©ÿKêaM.g²„Ë¢3É7÷}Ô}c`öó‰IwÕ°0IŽk^!¼ ÁŽ_qô€.÷[Ÿº4r/¹ùÒ¬/u?¯Ï=
-Š\ çÌ©Ñ’ma¢SÅ(`óQÅduTh  n´þ|ƒµ é‚SÆß'dZH2Àlsq’LPÊî#€µŠo>Uµ›¸ªÒ®TR /])ëÖ]D{ê(<†ïÒµav\2ÄÒ#.¤ÚgÂeÁƒKnæXpîi9Ø^1~‹ùM is²,¡â¨aÜšbƒg…SšòÓÄ‘FTÀ)Á¸¯Y6é&ÿ[†àüØË( µÆîê¼5“WÞŽ³x<ä^Q_Ô@µg“&ê£ýSh'àNö9ª×^—ÏñeRLn««ÍbåûuŽhQ¿oå0 Bçõ<0$ÌÒMDr0×[sËí0MWM€ ÞÆoGœ åMZ\ŽýªF7¦ñù=€_‚v3L~j‰"gØ‘£¶[jÈ[cmå„ãµd,P\l«ÕUÒˆR€ð· Ê2έÊ2‰Ç´äÔøÉIþ~*;S~?´×í½&ñæ™{=ꘃ36ø6ݬ‰2”Gö€
-T7Ï"
-_šá"¢„TšÉÅ
-
-ùź!ÿ0b¬"£˜fy2¦R[n¨‹ÚJ(o{­îõ`%gx]¤XOæ]› b‹Ç/%>US *¦Õ˜­Á|ªìBu Œv£¢.#b¿fB ÄÆRáñ"„@”Íèk,a¾PœõË=±_³4\aK_‡ åW{l¬žeþNûßES¹ãbbq4 ÖÝ^+æ^ýH.”tL=ž=JžåÉ&ì4¥z×ÛÌp©;užn›*ÇXäSÕ9Ïuk{ú.~6–úf,ùš‹Øà ׆I±SýÅ îd"M¦20QœñJ{T5pny¸
-rm”\^¿oUDQ G3Eák;Óˆ%¹<€Ãþ®%îÇuOÅ]Ä%»¬=׋æÞU͆(Í{V­ÞÀ…Ó_çgIš ›‘F¥eûùµ÷e‚bWv¢žSG¤¼½0¨ÇË÷;gãE:ú?p¡sï`¼|2„“” þRÑ_ï(ºÄþ8ù[_
-1pðû<äU ìòmÓP3."Aý©bcìßR¨Æ釷é Ä%Y–‹éæÕ¨§Ï)vK×ÿNí(Ïýë5+}iõì°Øznà~·
-;ëƒ,>sÙD›|ïDͲ’z°µøm[ÄÃ#kzö?¬Î§Æ—=ÕœŒ!Q©?LDË÷4w¼°Öu n¿æ`ÐQ¾uªuµ–)ßåᢩÂÊÑ öw[r#mLh²œnÒe¾a(!2sâÎÞù;hiQî|Ù/áË9F­èWòcÉSܵÇ4µ5¤+›pŽ1û‹}Ù*ñ âhœè4âu& “+1KxÏ—A®¾˜J0PÉÖZ£u†‘Óöj=Jb¼poÐVÆÜìÍ+ɼ=\éÊBh‰º€=šÎõܲ²ÑímçÑaœE#[’‹~œ› ª4¶ã¨lº5.®{ýŒ¨Ü„²”é*$¼®œÚí ¹eýèÒ+1L‰l0i«ìDJM×üøo<ƒíYãó‰pÓõ ÊF´ÿH™Ò£ ü´TT‹%¬Ì-œ;~³Z~“Ù³Œ£ü»tÀ±nx`²Œ/åmßÍ«5Å—ú+¡†'Á’MOJ¥à<’Ñëˆ<ÚF–¶GÛ²¥V` ‚æ,ÃH&ž"âÚYØÉez£B‚¾n›Pßp“uØ1³ÓÝ>+amÕKGóÍÿ%~½*®ÚBùãà ¸Ãû½§ã´~ï4;H–7ã9^“i×Å(&3qÑUø@ËgÂhIÓ”ÞÍKƒ(£ÏÓ:A`öž=†?ïÃÊj–éŸïÝŽó2ÄŒ%mú…ævvŒÒ´à—<Òž&=ûB §Uô;x¿ñãCá½GSùk5ÙGݧ ä´s/„TÉœe½Q´ö
-­ÄT zQõþ‡øEG‡‹ƒñ¤›m—N†‰h¦e÷Oÿ‰®<ÝWF²·Ó“ôÒÖÌUµ
-9¡‹wtsm ºI„ bm‡±ä¸¼•4]4Vªÿâ#Âø[Íꢖ`²ÖYšw¢¼ŸUÚ®T¨åg l“<ïmEZàC%Y‡ðùí΋›tYÜËP‹Áï®ÕÊyHs°bÕ¥ {R—ª ¶’ÄøÚKes›š#fóÕnùæ ¡}ágD±ºþ#¡‡ôŸØKÈÖu Š­ì7û~Ã7eûv´-~³­Ž@Ãâ"oÆçèT© îà´Qq–¶l€Û9
-*‚9¢ƒ­ýbãt~Wö)ôÄ+Lt“936è] yʪùÒqŠ‡4Ýa`þEèñ+Ü­¿[JÑÎ'=bþzÎka*Ô
-fðŠv-—­¨¯Ï‰ïK•Hm‡‰±a"¼vû–Þvˆm´æ@µFPO @T±“ݹ
-«ÙÓ¿>Îiú(¥’6½õÊYÿ^u­B­˜lŇ\lç®ý<q=V˜qÇ)Ö÷H¯!vQH…
-í} ,ØÆ ²ÝŽµZ`ö: ·ØÆJÊœDãŠæ6"ßIX0mú.‚Ø6Ö$ü"*ï|ý Íü5ˆ¦Ð¾˜Êåñ«º#VˆÒœg)¤…wrK©_
-íºÞ¤ºxYÃðFNΘÑŽêZ
-
-˜S
-Ý¢)è ÄUVf é»ù§ë(™‚Ù…_N’VØ$D”AúÆzámN£þá/=ÿ·aš.(ŠÉP°ÜjÔM(*Ä#(a°`,i{ÆäÈn u^Å04ss„Jaa9ü„M®­ŽøcMä|Ú ó˜]E&‚LRH!Ÿs¡ Ëî0•+àoé…§!ˆßè‚]U¾ðG„N‘Ðd{zÊNþ!%LeYq41&kÒÜÈp}ëm« `ØÛªwjŽSJ Å>Â`8Ä
- þEpî§(­‘öóHj¡²rQ®Îÿ†1{x)†÷á¼(Ôµ9-ÈÊâm £,&j·&©”;ðPïįï£@wéæ†ÌXò×Yg×'Ä‘ˆ%3ú½j@:7I6i`ÿôÀ‘웢$@Ãäž«Ü©UXJ`×L/Õ§ÝæSÙÇInFѼÙ>9rµí— ^ƒQÊ6jyy1á(…_m=gRÉ8ÐÈëRÅó.² Õ1TV`ºZ›8‡ÂöUΣ½ÑM£Þ}é—i:ñÀ7|u’оL»ið3¢{Œ±¡Î’¶”€Rðo‚ïY$Û–Œ²¯8kQ4Cl˜õ!i=ǦO+°Ÿ} ®Ë) ëoË—ò 8ë$èL‚Ù×9"¥L.g]”>AÍÌW"˜ïDYƒs0§u’ü‡¢ß³äkÌ äˆ&ÉZtg;?²Tstÿ®ÅÅ[U‹£×F[´˜ehJYä‘yËU¡0(J€J†GèÁ%®n‚Y™žW¯õR
-©ÊIÔ•žYNH‡ñÂì×c³ Í„} žbBlßÕ‚]žˆèŽvx¼µæÞ9ˆ‡^Wœ/@·~¼ù&^£öäpuŠQó×ƨÛçþŠ–Jüx‚Ðc°LÛ)+5`ÚÝíÃèò ø¯ ….‰ˆÑ¾Mü~>é/–çâtÃ`æOöÀvLuíØÇ›}¦$Á”6cÀ›È ïpi”Ü#«yj^^™¦‹Ç‹â½(<Æ^l/2¡\Ä>åî=éùAgu7½9´sF ®
-v!é€MO¶»- О: ]yÙf~Dž.?X–{‚’ÐzÃ!›‘UmW¦¹ÕjÞ#¯Âµö-}‡–ÈcãáNòóüœ¶jÜ­Î0<_µý°Ú÷Y¿ ànlj^Ãk0%’¤œ#Ðx‘ ”ú‚JýýêÎ.­1œ5G¨•Ý÷†Ïu‰^I·' P“fh  @‰7ÉJû¢â‡øªj
-½ãÔÒßN 5Þ÷rÏlöˆÔý´¬³J¦Ò“õÎgܽ¹JMÅù%›îþÅQ·°5‹- l3‰
--û>CcúoQ4ú*>[G’qY¥ÍÎɵå‡ãVBW«âÍYËè¸ÈRZ\¤|÷DŽ"‡arhyÈd¤ž<–‹^Ú­='è`(F&x²9Á48³¢ ZqyÚÒ’&lDônÿ(Ý;0x/‘¼ÄTî›Ýr¯×ªÙdÛï­Ç¼ÉVÃ{î«OÓ¯pϽ\[ߊŠE(âª|VU@èwÏAë›UCõ4˜”+.øÎJ<oÈ“NŸku÷zÌk|he,4lÝh¼­!NY©HGŸ„¸X¥X«÷EX¤ûé}æ•éÛi6÷¥úǨ'¥¼}ב“zXUóûrOæV³_pXO½˜Á¦H*ÿ0^ÄzwN»‡¡`#?r ·h!<ÎxPëÚ²ý« ká_`å¬L:—?ˆdè €(Ù‚dÐ4âÉw6ùZnœ^óìúls‹@jxXQ^Ÿ’™œúi˲âÅEX'ÈWj:ˆùïÈ(û“쾆xænÁQÙº“SSG§ºû¡ÿIïsÿÙE‘”7B+ ˆ¨7œ¤51ëŒ4‹p”š)k/²cã„´ªg,èp*6¡Õ6Ú„kÁS“ˆfótâ]²çñ¹õ™hP`±‚ÈU?¥ÏÈGúú’%¥(‹ùÏñª]*Ÿj}^!]QÚ¬·þ¹põŒi=83\d¿|羕ö2¸ª0»µç;«ÊãdÇIœ!U ŒM ]Ö:‚0›®níV‹<°Vxsü‡s¿¥½Ój.~þßËùXM+Qì Õ(]3£;-(MJ“þýizÍ$í ÉBh×XP¢5¡â¶54€Ñ„SÒèžÔ©D
-w8sÝ›\0½ñ¥FøëøŒZ®Eºß<*7Ž2x?ó›'^©BÅ?î‡5WB5îV€N›`5J_™©v¶"6zØt¥V‘ßôš%Ò =p‰ú ¼( ¸GÉ[5ùhæõÔ§«ÀùWEÍL†5XiÖèü]
-š¸ë:î9 „•#¹6|ÄI×GÁÜIÑÞ¾ ¶×j¼Y€-:ñµØáÊžÕÐzfõ—[CåÁïÃ×’–P_\òQ‚1«yÒâê؆i`[ ÷`\s`
-dûûYð(°£ X…
- ‹¶„çv`- 5àMçït®[ áÏDS¶Ò+û” ÞQfA…Jgñ:Å´þ•ãBƒºfïõŸÂ‡õååø*YÆC¢êuŸV¯û
-c~z'™ßq(BF¶D§VK¬í{Ñt\t´ ç¢çg>q‡7[êx5h³kq5…kä PýaãYîvæu¥¾ÝÓO<Øpš®ä2À6îlƒ^±`´,% \}Ü™Ý}<ø¿Í™ ªé@ì»b¡q—vçáe®vóÀÂS~¼º2·uÎ-ue)`Tø´FK¦`ªg}KgŽŽ1Á9½%`ÑyþV$¥žˆž}ýb¦‚ ·žž€°
-ù3:|ŠZp“ªÐ„º*GæíÎèááÍhСp »¸ È/¨yƒ‘•7ÇÒ£c¶TF¢Ìqµ€E/êÚý°!â·Šþu¤ÌýÔ³R}¢Ç¾z›r”š¤ïzsvËB˜g‰Ýwi+/Ñ’çQÌ{êÜßëKÉLb˜Œëu¹Šå¢“*ÇÚö£ë™6è(=ìÅI“!RïV¬±Å&"b§gÖÝòØÉr²kU:³;8g6œ.í|Ú<Faï-Y«á>bõ§®ñÕÏSRó:IŽIk9A|kLÿa”‰²0ˆésų~ ,Vúê³ö²[7F:៸zÈjÙV<Ƨã8&ÿûë.ž&›­~Ï•ˆÕò¡ >Cç‘õ 0ÜËAHV™Íƒ¥1é‘æê8ªn¼àéÿN±ðøá…?tÄuâDî⦘½Ô´8ºÆ[Ò<ÅtÖlD@óÚõL}†]ÆB^aLì.ê¬7ó¬¨ËIТq$<Óå"QÏÆ^2Æ`oŒ²&ø->e\›ÛÎÙ¦‰ x]0,8ï+xy[@£
-à<þ,D>òñî0ÕMP°²ÉR‰Ûì~W^íìÜQM˜t½Ã:qDaW_®CR;‰g6ùªA ßq]íÁî”BˆšÒQ•Æ‘ÝÓõŽÜy“"#“ÆÁ{…ûùc?‰A|(oºÿ{.ÞBLáΆ4Ùqt1¥6Ùò;’ʲ[†|kE]ˆŒ¨£¸ |#÷ا”£ÊW¥dš}¨%V;0RW¢/wgÚÓ«rüµ x
-NÔ(Ì2X ä3îg…Þ§É!³Û—áþ¬î›?ÄVÔ—C»€Ù\‰G•Hvk…äí’f—Æœìc˜Z%WÿÇë°ç/YO˜p¹w*V¨Há¡1ðá>3D¥ß)þ¼÷É71WØ/$`ñöà«ã˜Œhùù³°h4FºlÍú*šõŸ„ü‡î‰®ž1˜({Eƒæ À_¶iYÜÌÂä…‰FÊÙ7çˆZ”@qjšÚÀSÓÿÙs4ã‹®ôy3O
-þ{©u‘°kõ©:~–x~ùIþØ•( 9õ;ÖMèg`©½œ¼2*9JìÇ ‘ÑÏ»åØl ΄ ¬5oè
-Î$/D ¤Ýȹ³‹>_§‹Ú~!‘€CËúàuĸ¶ÜeBŒ“y¯3‰Ï´â°ä`ä˹Š'1ÀªÍ"!c¡)^Ó‹ŠÈ3K~ü :ÐTÅn²>D(ÿ“×W(§SnrN;#†1P­œ"® b·„ Hîb^ϸ,áƒûÐU¨b¶/G¿åfiˆx
-$2™Ú“s/YÕ¦›ÍN^+b³švÌúÆæaZ¶"ô†óïXþMIˆJq"¥d8蜦Æ.’Ô[¯0¼„$tGÞ©Içëâá’Q0Íïg¾1™$vûáFcM¿©{öÃ{7Œ„ÅP?;Y™Ä&˜
-ŽÍ]+y€êLú´øÒ^0ì”þwTÞ3±f?ö×ï:+Ô5Ûæ€qÐV—ùöÇÃõ
-}k¥¶Gœœƒ¾¥ëÉ“hÔÖÕ¶Aî- FÙ¾¶ÞŒ>çV ¸Åb² žÅ‡—\lŒ4ÀÆÔ1Õ6Žï{6H ¨d åöÇÅV
-ÄE¼±¾=©âæ[@Epª½ÚŽÐ:}2mêŽLraøÏû\oÂrznÕ\îPvcÖøÒp˜ÌŸOã(Ô~„÷klzbB¥sm*nÅ ÏP}„=)lã¾Ai #êêÅDÍz¤!¢1ϬüŽû su¦ž®cÓ–M¶YóF^;»€±0½ä
-M‹¢ôjR
-ᕵ}²Ï¸Tùlÿ,6A<‚%XÔ¼ð å+¾¼IÍ3´W¦÷™ð·î¿4¾>êc™<Õ'(ÂyÚ澪b¥q™ÂH«,¦z¨ ìês%üæxEÙ{™!<ÎDå Z-cÏ¡/‡hˬ5äùÏöŸbå©%2ª» V©'ŒÅpP¤ L¹‰ÖQôä¡9ÉC•wZ…Û”*)çj©Ø¹*ÇÑüWY9CužŠ©ÿ¥ˆ‚‡(Ö-{No9dêçcL/=•GÁ.Ù1ITàêÑLÅj(mJ¡%EA£þG±L'Õ¯…Æ+û)kº.µšÑk ìWá»;%ŒƒH!¸ E6
-Þ?ø2=,¢†–ðb P«/¼m0–ž¶E–qgÕ=Üì&RË Á¼êR㉡Ø_å] iI×ßp¼w†ÀìnÒ×thÓ`à¶ôi³è÷êæH{È¥’n¥g—‘Ôt)èÅÇâ©Ø÷·ÛO3ÒeJãsÖDã–mx"(¶‰N1hrhDÄƦÝÅ‘ r
-endstream
-endobj
-634 0 obj
-<<
-/Type /FontDescriptor
-/FontName /ZDORWX+LMRoman10-Regular
+/FontName /UFAMEL+LMRoman10-Regular
/Flags 4
/FontBBox [-430 -290 1417 1127]
/Ascent 0
@@ -4534,120 +5937,103 @@ endobj
/ItalicAngle 0
/StemV 69
/XHeight 431
-/CharSet (/A/B/C/D/Delta/E/F/G/Gamma/H/I/J/K/L/M/N/O/P/Phi/R/S/T/Theta/U/V/W/X/Y/a/asterisk/b/backslash/braceleft/braceright/bracketleft/bracketright/bullet/c/colon/comma/d/dotaccent/e/eight/endash/equal/exclam/f/ff/ffi/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/plus/q/question/quoteleft/quoteright/r/s/section/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/z/zero)
-/FontFile 633 0 R
+/CharSet (/A/B/C/D/Delta/E/F/G/Gamma/H/I/J/K/L/M/N/O/P/Phi/R/S/T/Theta/U/V/W/X/Y/a/asterisk/b/backslash/bracketleft/bracketright/bullet/c/colon/comma/d/dieresis/dotaccent/e/eight/endash/equal/exclam/f/ff/ffi/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/plus/q/question/quoteleft/quoteright/r/s/section/semicolon/seven/six/slash/t/three/two/u/underscore/v/w/x/y/z/zero)
+/FontFile 880 0 R
>>
endobj
-635 0 obj
+882 0 obj
<<
-/Length1 1902
-/Length2 20623
+/Length1 1918
+/Length2 20998
/Length3 0
-/Length 21830
+/Length 22150
/Filter /FlateDecode
>>
stream
-xÚ´zeP\k¶6nÁ]4îîîîîNã4î$Á-Xpw ÜÝÝ=¸$¸ó‘3wfÎ̽¿êêÞ½üÙk=ëÝU]MA¢¬Æ bî`
-”t
-äp¹Z”Ì\ßcß=˜™y(
-@ÞÚ rþ ’tø‡Ñþ½•ïAïz×{o„럜vÿp¸
-&®ÎÖžzÌïÛÁò®ýó›Á ø÷bÿ-ZTÔÁÓ‡•ÀÀú>¶÷£†……•Ëï?bÍþqVþµ™ïìù§üç 
-›Ò) ä¥y >%‚Š´)¾`Ù½®7'~Ÿ¼6WÞ1ù¤ð‰
-](óq åC'¼‡N„άccÅD\={r‹•Ëß`ù3Û=R6² ghb T¦;Ñ«˜ÎçAÚ8Vœ¡D ié*ÓB¤Zs„;ŽëæƉ¬Òph>Å0vÂ÷6Ó ¡acûgx™^Ž 8ê̯LXèôÊ”ÈgtR›bßsæÉLSEÔ¨àܾ}ÉÃßÎEzT§®¡‹¯(μA–#{rþ÷¦­O3á0ÎÌ_EÀài˜ ©¤kÎÃ×SöÁ7QŠžÐöàÄ âaÉP%ç¤ÑKë¬ÅÃz7ÛêÌä2DÝðZÎfWp!æ'-&º§Lnµ—QêEYÌâÁóÊÙؒͦk¥C¼œT?ö¹Ú‹6á‡m)bÏšWM¿ê¤'ÝÊLí@¨è².rþœ/L4q$8K_PˆYËVBÉZê¡æÑ~;dqk[àõœ¯/óÖÑùLQ‹u{3ßóU6ùRïìÕq#`|¢©dÔ ·òÎŽ}ä(TTqWÌÓŠ­Ø&—ËŠÝYó†– …=
-¼ ÿ]hpºJ•J-7çŒéFÐb†›˜½Üé_L[½Ãþ®*”%sé W ôk o!!nü®^Áöä+E°eÁìٌ֤y#雬—P,8YQ‰}Qâèï á´¼V?þíIt²Ñ›œÅ´@_Ô'ªO’ó-‚5›iý«S÷HIdÞFœêh¦ƒ°'ÈÏ‹«9G¦/v¨=[VœIä.<Ü.ó#ÀÌÔk¨~{0|ãŸfjòõÒ˜z]+¥Â}ƒSz»Bwi"ýM¾=ŸÆÇG  tê$ñFÒ¤
-Þ®ò;Ú2*þ2‡"‹»þf±¯Ç~æŒùu'ÆvtJn7FKC÷Ò¦ZÔoVþõOØŽáɨXM¸¾E}¶4Dpõ@ÚïÀ ‹aøF(hîúƒõ€†uhƒž(!k¨bbT’MŽòeFŒï÷FÅ ´/bR™c•+•wwò#5iz”GØŽ£w|æøV9ç|Y”,rÌ2/X‹õqjã’o¨xg7Âæ. (¤•Ïùö#"lÛƬˆµYxxŽ]‡„·âÂe–|ñü_Á?:¼ô?ExÚâCµOú¤³˜|ˆ‹Ý﮻ɅBý8IüÛ,Š$– Íj"§¼X±Ž(,]^ˆ‘$} ïlѼ2%ÏI½‚ƒ¼nŒñVo<Ðl7¦;©Ñˆ£‚SKÏj-Û\r¥¼Û'Y Âù¥®’‚8ƒXÀ‰B'X¦"zßtÿ”•D&#+O0Ö‘ ÙöKµnÄøZiºÉOcO£3™“Gß8EwLIF´ÁuÆe®î"Õʈ]x‘°Ïk#ø ùŽ*Ql+o.Á… D„pp§DPË£¢(·ãåsß¾·8&ÄÅcdÌu ÉÖ°AMQîÂý`-Œuœ`ÒS×R&«N â³>-ú@þý>Æ:ÀÏ'JK
-Þ®egEó¦a‚¸]ŸVL5-\ü¸ïÀð‚é“ÊÂÁB†(n8Œ i9”x³ïBþPLðm •ð“ÁŠ¥ô‡3Ï0ÔdÌÊ¢dr½ö^h½ó¶íÙVÓ¥@âxÔ+qÈ>¨ì¾]Ýô/«ê„Ñ4úFš?­Ì”]äÖŸæý¦Wé®ôf„ˆoRñd¡¤ Â;€ë>ˆu+ã•Ä}÷ñyñù»O,1ˆ4¾Ì¦ì<—2 n’Âò¾X„D—~تæ!i
-†ý®o·Âî/¶Û¨5´ÎÇÁê®”OÑ#ÁKÝ^‡+X9‘·Q<‘z66ŒÛ~ÄB&̉:"Ø›Ç[è
-Yr¸²_Vw§Ä7~‹í­“h2ɧ±­Ž(‡.oŠ?žY´Kj†'ÏÇÊøhüòÍFaYçºr²|šÌKûMòPB0qaï“V›`ѼÃ2•ƒkã¯z‘­Vš¿G-÷Q$8®Ç×ïå•(Å æÀËSÇ÷º·„2ŠÄûÙÇ”z8çr'&•*£U(דf¨äçO¥)Ôu„Ç7˜ÐÁ§A¸â~5ª_“†Ã÷ŒQñ4·Q -œÜ¾Dç ç«¼<†2$‡,¢ãh·åR^.}èeW=wÛÍ«Å[±Øâ]óÎ['±, ¶ŠKë¾Tcf¯aNLr¦oaûØ$—X¼˜:·Ôþ{S+×Ìb^Š7™Nî”æ;i™JçŒQ®FQ_¾èˆÎÁzÚu©„ÜØÀeñ€c¬ÜâÖòDá"Û± VýriºI{8w²= ™ËöO¼¥mLG¡œÝnð‡ÌÎR{ÞHÿºÓK*‚øÖG‰ÀsõFËäDRÝ=£ ÔJƒfÿísBد•—†9òw«tÐc¥íM;É¡ÐÐÓ'E+Û›w ßdRGVŒòlliÅQ°³§C™í]t:„ñiÌ{!–]? ÝꔢG-Û<Þ`ýY‰*Ë$jnì㧒l¯H¾G}úÖ<8XЩp»°‰õøqÈ„š˜ÇÒÁéÍ)íÑl#Ìnâ<!þö¹øY26v8«=?F-3Aâº>Ö6F m¦Z´ÖN»Ò—Il98tD ï›»¥*µÉgLÃpl‚ØÙÆùÍ6ÎJ¡ð…šˆ– ä² <a?iòVòSÈ1œ w„O?N×´ž ¿“×5¸}3'UÚŒY`Æ@fʼn¿§)8¹ãsèܪ¦nHÕçÎŽq—Qg` G4GJ KÅ¢…s»è1T¢'гš³"&_ úÞ&ãD!st¸74}îmn´¯½íaÖ4>©v+ûøVQ“…—aP¹rrW<ÖcÚä–4v˜®…ÕZ“ÆøÍ.e‡ûÄF+J‘90»,²Àœé{ÂUw“6)Ü&-C‹d—¥Ò«»9VWbÂœ+ÎÙÉÌlgJÆ/ÁÞ‡lç¸j¬°Ê;ÿ\’éE^ÛBšQX×ex»m•rá#ÿŒScèÛϺ%";ÝáÑ´Ç!„ "i:hdÐ.¢¦+n}4e-!ýÛ
-Óù©ƒ8Á£aYTùs­ÉðB†sJ—!貦š+uPµöúA³öˆ§-\…ú×í<”ь͆F¼ºšØX4i`´LšG±rSC«Ë]!ãjÀÍÎjI50‹måÙ±˜¸w%¹(Ue|a;Ôò˜í©±Dw{'ãV…|>…¶g
-1ÒtZÀ¸Jx;>†®aõ8kÚ¾u„J— vœÜ1ÌùÏOÖ¼I·µ¸6ÌbÖòV]bã"NÀ ²Ðò?Ë–ºxXð(ÚèXö°)©p¨ 5ðÐK2Y]2Ïvú.nàž<‚4·ºφV™PVìU’Um]Æ”öÌ~ÐvŒH²_Ãíý¶ÐÖS".öœûRÁh:”78Zkz
-t:è`‘ Îmé©›Þî°ké ËÜš’ûÝAQwßexY £Àm8™NžÃ>°YTùS^NFë ÖÎâ‡Ï¹.C“½›7%¼ªˆ}#[‘h7®ë¼ÜKì?ê ˜ŠyQeð"“ËÝ·e™
-ö±å9X#.J[ž·,ïpS¨±^# ¤L²+m°ïj_­Ö
-8 ˜ÅÃZ%
-¦aU>¥‚µ®´•»ç+ÙÕ$½c³h«@œJÈ6é¹Z?[ÙžÇv
-…óîøï½ýÖ²;¶D‚ß‹å0–žûéÍ0XÅuœÅI0ë&fn™¦o1ìù³‚Šµq±`!®s=±·)AËõqÍ„L4ÖÍ®„]€d¶ãN”5´MMÅò¤¼c.†Ø6Xõ  ÷M7ßLhØ”°`µ*?»†“úä|×™£±í-übcVõ‘éB­›+[X€K¼Ó7xMÕ®ÃÇ™ƒHz´b]óÁO®Ã¹_Ûõ&†)sëÓòèGÃÇZïô_ÅnŒPco.†ðŒœü»3’œÈ4lwübsoBò˜´îâ7¶$?ÎW
-Û•u4h`–ŠcBC·CHÇZù»ƒ¹âºÝ÷s)ØœÉÚ!¦³ÃÃ]s:¡±ÀÃ5sR^ç³ zºW­r?5¡'cRûrãýÀê{hWƒw¯ϲopñÊÌØ=¬9M=l`sµ·ŠáÃxî8ˆ0/ÏN)¶+¶•Â\b² t§HÀI–žSæ}Œòþq¶&ókl¬é¾€ôróh¯(–\Å» O¥ææµNI§K£Οx»­xÑ„·¸¯m —ÎŽùA`jq½D‡íÈ|ÖñÚ OW¬—r©)c`Þ=EÅtžu°Úø^Æ¥DÊ™ÏDƒËâ9¡õG«,+X3Êëµá⇠Ž&鈨ÛyÊö³¬0‹~Íèi„&OµüÄÌÚFñ>P=6½­3×@y¤·½§É Ù6o)'uQ}˜o%ßÕMÑ·³Ï¸ô;ªŸÁÀ˜Î¡^'­( ûÀÂ}ü¨9ä©w˜j;K´¯|‘}pÌ’vŽâ§1—WXÊú é.f)ÕN¸¨9Ó–­53%›·xH8ÄÐǬ"ᛋ# ffË—½…€Lu ݦáø(‹2˜Fžèû®Hj™êÆDSˆ ]άM²n<îMô\uJûWWcÉ”!XýÅ, ªµÝ]UNøËüêV‚$µjxèiö
-ZUÖžœ:ûv‚±áºÀsש¼E!6[#° ¹RÊ…=¯~ümgðù”,FŽ4 ȬqΦ‚Ù 1Ó¤
-‘Øæô–/۟왆èåâŠoå‰Íñ…9ѯ
-þÃÒÜA5š*¦v(b¸«öMò/Yˆ0ÃśքúveÑ…¢çãÍž?;óRœ6ª±¢Œ»¥Óº–tQÌ„JD›7ÌAy"¿OoÀâÜÑš1Ú`eˆãX5;IÒ<»YqÙ|hâÀ/d¯dT±)KN.¥û!dr H‘‚}6¬ _‹©†øWߌ³åBÅ}cß\u¤O¿
-#‘T ¿dé4r+uÿòókýÌä“ŸS¸ÜÉg’úq‰;|·ñ‰À‡
-9ùâ§q9}u\%b‡Û£*íÜN)<.†ý–ÕÒÞXºžÎîâ¸e¹¥Wû&!GÏ2êSlŽ!Âä(9!zyç¥Wðàê?îAa½§u€ÝÖ¡ cK–ƒºÔN2¤?f'îdHˆlnŸÈJ,^ÁÛìŠH‰?wJ~(@ ú¼~ãgˆrçåè $ŠD©o
-A#’Á¸5 žÉžLOGÞ‘QƒN9«-F"’psŠºöÔ¹h d*jF'è“סV”vé$s É‰¥Ñ÷*ÇÙ<—÷~2/ûÆCc£ù2¥§ ¶ùKpšYM½9¡ãuY$e1$M%v&Ü–ëZ?ö•–òöK±Z=F^øSÇ¢¡àa7šz˽ú„ ~8ÄçpïÊ»–«¨zƒÔDuÂ4ÃÐH˜e…D¹XXŸ—ô5Æj~¬X8§U4¢oز÷¢Þš^1YÆ7¤Œ>S)}Z‰Äkzkˆ¨sã´1›?“d;wìåÏR „av%M¨)Vòp‡`óu@Òþ^¦½Î|·ûDü‚¨ë•xp÷ÆFÖ6_gDs•?3©’m&
-ïúhkÅáb Z¹H›}‘Ãr£šÿ"€¡g’bTV½GÂDÞOL '²ó1 öiÆDøí-€Yÿ•VãŒ\uRzR^}«#¯|D檭X×®=&ëò—Վ“ìm.žÄÏí-–dµ®žÕr¾e§AR‡‡®Ö¥§L7z¬Åµ}ì™rSÌð£Á&P»²'e%¿ Ÿ¤Ÿ<.ãšX£1GÁY·7€ˆd5˜Ó`©Ic·½(_Ž`‰ÆbðÄjÝXÌmv¹œ´*=lKFž‚ûÅInnå^þU™”™!: 2³Ç¬u׋Hak`€a¢Œ
-ÛnfK·Ç¾cȮɾ“ŒUqrâzA´çõ; ÝÁæ
-d©·¿º‘¨?ÞM†9¬©!¨‹¡¸xY§¯¤@i B•S×B/û_£xïØÛ,ËV{]¹®¹¯g6 ~gÐ8χ¡ Ä ˜GæzÎii+™âš-ÉÀïÔÒ‡ßT÷OŪϜ•á“¹/40«M¨‰a%{+Ò šª+úÌWq8±I¤™\’f,Qꌲˆ™Qæ…ó}0!Üêâö̓œ”
-²ƒ•qbºáQ×ÔÉ´–ôG eŠ¢”– Ÿ™üŸ†í`üãø3ödÏðÉÜß~dÇ£­Çð[ÑëDüˆ‚ K¼Ož­ªîªMNè6³“’Á7gƒŒ÷PgÛüLuØ9“nö㲧ÌHÚïV|ÌúÀñuzöŒê™ÊÔ\ã¸RôÃ)yµŽ,ÔPé`„IcpSåkf ¸“oz—¯àÔ–*GmM;ª¿q²«%r&3h™»Üq{œçP“i^ò÷Þ‡©ÕçfÊo™Äá‘Fi~;WùL¶4Õ'Ú¶ºfÇ3…_W“#xô5WäRå…º•JHb­à[°Å;G-ü"LÈ®jsÇBØlÂ’œ&z¾AÈØ3É÷‚i±¬Q,Ë$Yý`OKT=¿~ŒÉx|­¦6Ï'9dÉ]M‡ñ‰ýäï K†è%/UÒUÍÎ픩i0èTqÅh
-¯†ªœe‰BLŸ§L©êÃø
-ó“Ì—ÞWr×ý Ÿn¥¡a­-%è#.%;#œuÕ܇‹2ª®V¥%W.ÓÆ?©!ì\X­´+qqÃdà
-ö³éuáÊæJ[»¶?ª
-INø">¨m>ýr«öVƒ‹SÝn&M3=wŸe¤º&u‚˜ôÓ b>ø?~Q#·
-mÍÏ…tŒpö&ãÜWÇS&ÎÙ=°È÷.UŽ€ÔñV‰©°1‹dÛ$ùU-º¥öC Õ4Ã݇м°üøàág ¹dÉ(.¢!Ê6qb·Ô#&2ÿ÷㫵з[×*ë:—þÅ@מ2V¿fct«™!SÝÇîžnhy£WK…×:”žï»paýk‘fç
-=÷¹
-v¥Ð3$‚&º&ŽÐLW,†»‡kKr§Ðºøžd\-/â óBŸ¢¢™Uç,t¿òOrKÕ5‘}î[>«Ãz*³lúq|ÀýQÃTwú¡éáX<,ñ&òYc²¬e;ô
-«TÍ‚wä.€˜_MÊkÖ‚ú¡¦ÎI¶Yc¶×õ"þ«dZ‰¾ŠÈÌ
-ËZÐOÝqh››]¡IÚÀ«FQüKÃúT@Kuõçëã=ÉÆ¿²,Õ*t‡7Š¹?Á§¹¶©Ò0S‹Èû#|2Ýݘ7WÞpWåD½E(d
-ÊJgão|Ýç±µtGKvk -"á`6ÜI•Ín ý¹VôÆطαBd½(1Ňļ‰â ¦´ŒÞÿÜÆo1µqõq…¼ GæL¦°êÔ·œ[ êë¦ï Àe#PO÷
-c€Ì7“bxEî-w®‘ÿ¨„ ÐnÖë{Œ"gvÜœK›
-?€1³ôãO¬/Þ8:.
-‹£úé~mUËõ<Ô£šÙíqʧlc„}ãêUtTWáÑ«ÍF¿
- GûNˆ“…Žl%ØnŽãYªò®ÞÑM5=$JcFy
->˯nGðr"©wΩôš\ðT¨8>y;,©wªõ¯]¯¨SÇLÕòötâ»ÉK¹öƒjLÞ[°#×Ê×")-f!<)ÈÅ5€prŸÌmÓY~kRU2e$ìeÁ¬þ}^FöÈ'ªOô|Ϊ™l1¤Â´ÌCd?Rdú¨à5 »`—‰ß?ì1ÂWX±—U»µdµP„ÕÀ)«scÒuÜ[—¿ü&
-pvtŸ©Y Fè–s¦©Ð„ªéy]ßìÉuòNarÜ’e
-Ÿ£
-Û»QØtÊ“Úþ^So2¢•š H†_jƒØØûZ²›»/>S)ØžŸtŒ1ˆ”ݲ+=å'f¨{‘u¬Ï˜Ñ¬‘Æ(¨£.òù%QÉz´q]Oúâ
-}‘]ÅÄrŽÕ‘º“̺f¾…Ç€“Ʋ’¯Œ•Ã 
-5åD-ÂàÏóÆÜïN±¥çfD=­¯ßm¸(Vt°œ¯ËLëͲüâÅò‰\‹ŽÏ*Bæ+‘o
-NtŠœâÛJO#+æÎ_4úpø=Hr4‹¢f¨ÈRôÀDzYáAKÙ>.í'ˆ#L+1/⊉þ‚ V»{f{ÖfÅÚ'ãÜ7nªâä`Ii¦#“†3¨CÖONµhõ<]Ç6®ikC³Ó´_”MiM´>rïßJUžÍ¦æmO‡âYz^D_~8’q\±",Œ(Ôîp0òWL8W  4ÒL¬  šfúšÂU#mö„Üøœàzáò+ÌUOý±K>)ï;æ<}ÄÏË ŒÁc¼, ½µßû'sN>2Y©Í¾*"3›z%v:júì-I7܈¹t:²QÊ摦eG›cî^ oD£U…Ýi°°‚@)‡†H.n͆Ý
-´åܬä´XõµRJ¬M ]lßûx­ŒÉ­ª`ƒt–µ Íy)Ö1*ŒÀÈà©ýxÚ³eÑñ°Ô#¶ÝŽwùöéC;
-²øK9CË8M×dZdúçRª#‚àôÅ8'(?žçÏS5ûƒHa·ä•Ã±NÑÝ“žaólBé^k””4ú–OîÃ’œ|%x\¾£S¾*Kž¹2§}Sý,¦dh&‹¯‡Â¬·çšfÜt[œ‹J¿3‰yÛ@tÓbîõo¸-…ö¡t7y6 âåK+Ei¹5‘AJE™¨h7ðXÙž$Ù^'*àR ¥Õ]+C®£øZ˜`V¯9ì÷¥iìçäLtíºùKp̸²Íäûí
-§pÎ>iÉ…P¸ßË©lÕ–=³(íòÇdFK¢¸˜‡Ê|tÍÍæn¤€Qb=lLÜëùÔ_öEÙùûoâ¦æçÍY̤ç+§’AÓ*½Å¾¬PÍÔr„í8eY×´ÉÚ;…ãß2^#©æƒÉ¸¨wç'Ÿö×¢TõùÔpKÄ çÒŠP »Æ6¿ÅÝ!¤yÙñur› 󂇕
-<ÞVâ°ëGO™šœ¾ŠO~¦í$·¥ùåCUGŸ,ú¨tÀDz «§ÀÕø9N¢iŒ3í8×éJ ­2â”ÉGS+Ìß5²@ÂÝŸOº±æ¾ë׊#Ú#{AŸ7—ë÷Ũ7k ÅV4hZU£+ܶϔ¹K>ÊåAĤF¸ßm³ŒB{“ê’Ò¢Õ5åpÏBÇâ¡¥ t«HÛ˜”gŠÛ]ÌËòþ¥A* ~8duü‚* KÂÎyx~ª@‰BjˆµE ¯è“e‚ìÛÊÞ À0Ëï{?œ'˵%IíÊnLGFÇ—4ˆÈ…E·CÜ}Z$á‰YÎV4›Ú·…Ÿ«0æ—Éä­VŸJSLÑÖ±¸=>$¤Oe8þ¸Ø¢¼´mz¥¬•ß2D˜ugЩjÓ±!j>î˜VØfÍ]'¥“gyû}û}}r{ÐZÒP“,ž€pt_n÷Ä;… ¤ÕëÅ#üû“—Ix¹CÞi¤Úþî«: „j**%ÿú+„ |?§ž­–þšH`4»:}¬RmFIéãsÒ­ïòS2¯Ï<Á[Œâ8¬8Ÿ“ÎÿU å`2ø­¤v—É·£×bWÄ6 Øa°Í«
-3„s`4M¢vî–ƒÔplÕó Ÿv< r fXÊžC˜]¦„ëP
-–mûrgU®²ëÐsX.ÇF6ÿ+iñ ðC•>3’…
-­läGQÈb-á0 lÙVrù”]¸Ú=ú4ÙJÅ»õDGÁ_bVX¦[¶×#‰*~œpGî¥àCþŽM"4™E„Ù¶¹Ÿà-×÷7PT5@—‚ÿµ†ß0güBßô™r¦[5Ìs_°ÉûÐþÞØD¢¯kNw÷¸aXïoé¿6Æ´æ—É]rTz4¸õíFÝð* )ºZ¦ój“Â"~(!‘äDP¹ËÑ¥ÿVYÝCrö[‚‹v¹D^|ýA!sÓ _êTÊ6¢<?•.±ûq„lÈPI.èÂw*`¸»‘¦RüQ¤ƒ‡ît¶F–æLÙHÊG9/DÞ׿q¬¤ò<WC&`‹ëµWàªFh°ó4÷ÌdÒ»øk‡£±_åL |4ßW™Mu5FyÚÉB*0ý…—}ľtw¿ÙNÛ»^‡: µ(†aw_a_¤º©|éÀ|¥|Ê;
-ÃÀÔ©³fWÆêÛÂb\ª6¨ÊêvQùýÀa^I;iªÃ±‚•»²ãz†/œÅ=i!}É5èÖC°O‘Ji®~S…“ún ø统®³]¨³Y÷YΊÕbN¦ø¯
-0ÉHìûž<PƇ~7®1«Ú'{á¥frIãTEÀ©K{Í™“ýQòS¢m±5Zð¨<Ý®ÿÅøú‡àC(Õv +ÆL#Xú0Ì9vWnòzb僱3vfRW•‰=513ºËóëG÷Oùß>Á²Ù ýÒ Oõ[5ÝvŸw*%é’Ë3*¯ÃXNä½wXÜ2\ã;„P°{s‰›·Äœ Qþߤ½æÓèϨü€ßvñl9•ÙÓ쵑7Þ/È}´`JâÚ¾S΃½#—Uep>¨VÉFŒur#/Iªç¯¹=¢5ñfV/8Wò¾Í‚nJ GÔ"8¾CXÇtq]ùÝÄ­+=¦29–øb %nªÓY£—üM·&éKÝÞõR±1MĨ1dCçuÞÇà“…ü’ôZ|”‚ Îô[ Tò¼‚½<f즖¾; š§Ñ\,H늉;É¡uÞçí0Uí‰òöµ<;qÞ5uqQ§µˆvæ™iç É·ÀsS‹Pz /}É|”CkÓ'a
-¥)©:øZâHÅ­ZÉ«ù7{2IØkÜdì=Ê{î;»èõÈ‘Ï´zýBº ý†è¼mÂL´EQq[^~MÉù¶Ñ0ÙVÍ¡¾Å ¸Ã®ÈñàÁÖ;G(Ðà£ô_üÚñ«9t?~BÕ +Ôýͦ˜‡n q¨¾¸Çv`1nÂLáŽö t„²_”x½J³Û§Æ¨ŠÓ“k!;éS€O9àS“5†Á®];G ܕÐÞiÝàP. Ž¶ý*róQ,µðr¯ÆëµL0éÇ”m¢¬?w«ëÃbÂs)Éc¡C[—MÔÀf¥!œ× š@†·ã݃Iäà-N鄈O(á¤óБº˱T’ˆ\&ì¬}HV6íA‹ï‰MAÔn8EKÿ”Ù7žßSÁ+¹²Ø“qLkêÐÂT3íü¶¼Ê̪ısMì?úË:ƒ,~LôƒX×9dÞ(Èö²éC\žJº4é¨ à0T4Ùn„ëå Ó'+A•6hÍé˘g9v
-|»K3ç­d†¯Ï±‡ÕŸVÉXW>†I™žÕž[ }/í’3l§)Œ»ß GCíxÎ6| „H„Ó²Ê悶ÖjŒâsöŒ¨’%yCi€
-et@ Õ-'o« ÖÅí“ Ü¶2z,ôΣ¼ÚbýºHpÛ[™åD|uãÊÞSbéö¯¥ês‘<…Š–Vâ!ïú@PÊ7ƒXkˆÓ€ÒŽ;øèJŒ/¾À͈b76ùoÚò#§MöŸ©Yò¶î>e&Ȧ'c;Чœ¼"§?ö‘@ŸWQ&£uM1ÿlÅ]bóµ6¥žŠ:Ñ>-”F®(‚ßíºÝÙtÈ#Êëc98¤ô^^Ýæ'³¬,î¨*PQ¸ÇãC¦ÈÓÎ2xXx\ƒn;(“,NÛöö– qÈMÎÑ8ao3ìj)qÿDŒÉ“oŽgðÑç Ü™@}ýÎÖ#϶ç? Ö÷´q¨<°•fǬ(roC*qƒx5ᨺˬèàÉ#×Ì–€ßõüëóçvÿl/3÷ „åÆ'ÿ3`I†#Kœí/—Ç‘5"ô€S+“µ>œ ~T &DeR¦Á7·ÊüGè/‰Õmgr¤ÑK²i@2ØÆóH¿ÑÓË7e´{mÝöëáÕ>SŠcó}*ÊŽ»'6Ó$ÑnCÓ¨Í]˜F²Õ> —¬ªŽœÛ}}­}ë_ îO'éž:UË÷./©rHµîû™ÀT‹€Œv kù$¦ÕE±,à[‘ÎÁeοxÁâ ™wÊp2³ÓN¸ªeøòOÆÓjö¢Ø~†Jkëø€>®£…ûš;¿°‡ýˆÔrl8GÃÇ5o´UdyTc¶”É}tz½&Ÿ¬­—ˆ˜ŸZ‡Š´¸ïE¸BáŽB§O|.4ëCzÐ/N©Ì·Cº³~6Ó<€S
-Vÿ ŸU¢Cž¸È%¡<‚³ÖÊ<|±=g„ØÀ_¸@ß»?hdJ<ª©pjohôc`µ ýäc˜-£‘¹†† e¬Eê€ádwip®²@³<ö%±Π{oxcÇh³ðZ{ +‡¸@ibçû¬ç‚­St¾MÐËïÓiù¶ü¹G€]¿´iÈ02e “!ÌËWæaÓgòHy£ÖS\dÑ’Ô©?âNõÝ/ˆÅ·1%¾oßi4~FâsLŠ
-,]uŒ‹ãú l Â­;ã·£Ù[CÌí’_·;wlRôõJÃ,ÌàyÛm"BñµHI$áíË·¥²3Ƈ}
-¾,gð@7‚§ÒšgoOÅDÒq’& ²|žôvZÀµ‚¨þ¤~qQµ¤£)5$;€Sþ†â–ÀIRà´1çõñƒH¯/7ØîÝm|ÚåÕüÒžøår¡Y }÷˜7}•Zïô3Õ ãt5ï
-&½ê¶Ì^>»5HþÃ+è ÉPRŸ\R’_à~U±QL&K42Jl‡Ä—IÃã<Ë~w©øœÂåU¶N5ÈíþQ5+{¥çjØóeô9˜ÇG/ø{;ŸtXí¥÷½ðP*‘2qëÊáîy:zðMa=—S
-å(Jó_­—Ûtpýfyr/Ëmž½Úñ2åÅR„Üiõ}ˆQ¥®=?sd)=í{_'_6ð˜t)pØ#ùÄù"ÒX”~’\%ž7¢¢;Nëé ½½ló¥=­õŽ±ôÖÚÃÔo,Ùvèˆ`ä ˜Þú½_½¢ô«Œf—-(V
-7ðƒ-_µ´VÖ†ËOùÛìÌI<¶ˆ1öÊJòø¾98ü°²&¯>÷I!®Vò×à&±w6³¡ÄÊ0”¡ÿ‘&TÊ(Z6õå*ã[qŸ;LËýK
-¿§ðêwI %uÑž$÷ø¹;ÆÄ\±ŽITØø$šæÕV‰òÛ“9ݨq$úSD8›ºãüÌo$Ä#t¸5Ô¢š¢•EÓSŒÈNr†aÆê
-½»&J¯X±çxoΔ…5êô†mî¡“­4!˜Â¥òî)×..ä|mÖb¤,YÞÇÆî©èD5Ñ,cÐóBx9ª–­•Ì¨(0§ÖM‹É tš^e—§Ow²@m¶åñ·± µœ¹)ºwxÒH «ý
-K¿«Ãà÷Ýe-w‰ÞáÂ{z ›Ø34\Ô’Òžü©å·Ì¥aò57k¦{Ç‘B#ÈßW™pí6×JD:dÃŽß÷
-K»ç%Q¤¸º’f mØÀAu‘§¿æÝN“Ze0ç
-ß²W±ÎòJZ?$H¬ô²+(¶HÐ
-Ö®yú4`´£WLèôoÌ— èì3"¶½Á™ãM{]ÒùCæ¡áv i” ç¦?Æ|Ë!ÿà¯pM¨ ™»VAáÒùOe=9äŽã”!‡‚÷<Žà}wqm·qò®VwÒW]&BƒVÏe·u=$}û¦#Q†¬ÐK¾2k̳a¬N¯Û…s-Øra6Š°‡c¬-‘m„¸äŸ
-ÄUìþ Gûp<ÕÝ# k-¦˜þ[(”,À˜WjB—¹R ¹zµ0Î9 Ýri±‰e 4/ÙA4âŒ\{*Ø)} òHŒÍÝ’EÒ(‚Ë‘tþˆa)qö3y5I¥:~8û„cÐtÄð±Ù`ø%.—üᦒúP| ÷øn=Š`=‚Ï€4M$†Ô>ÀºV+ÑŸ.9ag{|\9Ì}ìêÇÀ3œg/駙Øÿb_Å´”ÙúW;ôo^“kF~sÊ/7üE¢‰ÑdX:«ÓON‚’­¹E0wß”ol.žÝÛˆç
-<.×YRÏmW×âAÔhkÍóYdÎÔ(Ë0ÛA8ô‘Ió[æCŠÑ*’Æ…b²´Ë6j]ÇBeš…¦’:“|úü#•DbWÊvw~ÉȨ6¼{wå÷#Z—˜ÞúÔ‘Ê5I»ò¼^^è r¡¤—Tý=M¯{Ä¿ÌßXFß8²Õ 6" êlé¾ÈɵÛ6×’96ü ¹«Ä‡<ƒ„ôÝÚö’÷Hto4X=Ù¶ÈÒM¥ÔÚ[ý ´’ˆö{Síä¥zƒAZcDņ/okª‡¾Ìgø Zúø“.{í-QL%S«$Ê«ÞÀ\¾œFC‰‘åÅJì‰!dðÿèìpý5 ·¦3ß·…DÌÜï$oÕÚù@a
-'$Ipu<%ÏÃèSâþ¬Ön@­i µï'hJc×û–êEØ•œ]mª'šÚŠ€U?/—˜K'a¼£ŸÀTŽq*.b*ÇÎãš™å
-•Åäåé•(€ŽNG¹ê&®}´A'7K•ƒ2¸e6žÉü ‚ãÇ¥ŸNÛ•R¾,Ut}zó_*öÀâ\=Æñ›M®ߎ†{^k¯ðØ/¥+_InT¤¾3gÎþl'5žR-¶^aCÙå^زW@–ÀâÁ±˜)}HŒh Î{m½âQt¶‘œÈ°]‡C¥‡Ã6ÛÉ'±­Ã:Éi^˜NΠãx ße›ÃŽm¦å‡Â>p$œ26tàaúÆÚMR v„doTÎÇjɆxµNn::`£Ö Ì{5圯ÃÄ23Òð¦bg¥s¢
-BE<!Fâd÷¶hûÎΆ؊´áö¹½A=LÁ[…P—P¯H]èÜèÖðT2$rë¿,T«,I•ÜÚ>v¾˜—¾ŠèMT
-ªËÜÈÛX]íá ïõ*³ ß®k·BJv´„Ú¤å™qÌëú\™$o3ìÞo)6ZWE,‰ÇV<”¹:L:eèÈ á„+§‰õ\*Zý¾¹cvefc‚Šô¯­ðÌ
-ªð„§Sµ¢‰û¾×^>èÁyºøP÷Ûþ8±™‚sê^øî.8öÜäì!ÞS ¾¡u!úÒêS«Äa4°œ{ Q ©òCaêLˆs1…âü[Ór ¯{xµ [MpÝÞèßÎê5*2è‡B¢Ðé¨þ&´ùöú`2&½ÓB¾fæ<g'Ô>1ÎÅ{ŠXm?øb™ Ík¹yœë:V-zŒ—éêáÏ3„ëú^ Ê¾ÉCGhQÍÊó=‰öRÕÆBLm ¾Tç~\cÉGú2EïÒl…®ˆ®ƒ•I fFÀ¦'ãf¢ý$_åÉlÌZ»$5Ž¬
- ¾©¦N „¼¨
-­§Co±aÈàÐÓø=m »(Œû íHœ>Ùè£ämiå׆$Ô¦ï“í¹}ñ™TT¬æ掆5G¯Z\îÛ;ÁIDè}j¡„£Þ$-Ïo#F£ÛM³Äa¿  †Î×¢/"5C—dÉ\š(„ÏÏ'žÜtßÈ„PšÕ#ùKD-Cén€Š–ËÉ£K.
-I—Éšu-;‡g²¼–€`c·5hç]D
-ÇE ƒ<ÅC »š{yÄé$óêêÚÎK
-É. ÈútáÞ\žX-ðÜEZÖÝeô}3ôT1mܪˆÑÍÁ"
-eC*ýqùin_<u2 J/´Ã"’šp:!î jçhq¡vÁPúŽ³ìù»ÞŠÿˆL„ o%ÇëhÞ`CuÓÙ«"¯›ˆáIL 5f°0Ùf–æ°5ãÐúnÖ¯¯.|ØéÇÒÿmïCfÁÀŽ …^ì;½Œ¶´ãõÅYí‹xfæÓ«–‚u K³Gò‘üZqúñN}uB±´-i#(„~r…f髇KEÌ%çé 1µèíÕ]"ßê(91å@X™É§å
-û¬]áテÓJ=IŽz¼)@1´íü£ïuç%$ÜŸÔÞá‚Ê«ûìɹÌ”Bcm2^yóc3Ÿ2¯raáž x³ë…Š“+&ÎV/͵ïhı]e¨· Ü!ÞUîæõ
-¿1þTõXƒÕq~æ'´Ÿn­HÛ£8°Ÿþ‡”ù¦§Cõ¯ˆŽ<AOs2Åÿ^ ï§rÒ‚Í›üªàÀñöéM¨²M¶œ¸ACû²Hªd<ß)HIÓÂñßàÏX“£K$÷ÿWu@=^þƒ«SQÓaµÍ°ñ,Ãc*ý©l+M §ØžÒùÌÀ2²Åü³qìC6)ð0mÛ-Éu¯Iƒ_9šU9Ö:ðCÁ6F\\kO:ï
-YGs‰cU@ƒwFCMó{f[ãÈ*
-:ñ‡Ç+›êûȵ;ïOqˆ9ë+¦0<@oÙoýü3ž
-IOIoÏ,Ía»ØÐûÄ^ØPD°UQ˜¥nEX¨®‰Påh/€&çÚÆPãñF«:ΰ˜®ûÅÞ$)ì Š*Ü£! ê†DÚ©\z
-]ðçóÉ&£Óiãûa
-‡õ0@hHè³ÞL(·˜E/þÖ¼µ`T½<'ÒQSÖl‡DÛX.‘¢xääÕQËËôŸåÀ#å*jPg„<³Ó¥ß§>ÑÔ {÷…ŠO/w˜ëQ)'‡,î~š 4`KƒÄé<wï. dV£ÞÁm2…@ZÞíÕe÷)϶d‘¶¾ÄhnU•Ué“ŽùáU~³
+xÚ´ºctœmÛ6ÛF“LlÛ¶mgbÛ¶ÕØF›6¶m7ll'Mc|éu=7ßûï·f ¶Û¹ã˜5çrb%Uza3 „ƒ½+=3@N^ÅÁÎØž™…^háfkì `a`bbƒ#'u»Z9Ø‹»y
+ÎýìÿÍ™ù#›ó¿ÁÒ.ÿ„ì¾®–ÎÀÙ³wõpø7‡înÿ?â{ü ²|ðúWò¢Þ@翽ÿ³'JÎ¥¿Žé_Mú¿û/¬êêì`Ô´2ûø²ú7ycWg+O]¦maþ<þñIÿ?ÿkÑÿÍ[DÄÁÓ‡ž…@ÏòÑfÖ£‡™™…Óï?|Mÿ>;ÿÚÔiúþsp€@O )ÜÊSÞPëô¦ðJñâ™*Hrn†³/XZ2I+Y3ø8b;$@Á’ –ÀlŠ9)}ÿÏAöeZ䡘¶o­©_§oÍ”…výåýñ‘Ä…Çó5Ôƒ³å—«ºH¨eò‹´ËÙæ²Û’Úêã'¢ÜÝq,Sï¨7i$zUmë…¥ ÌÍζhžË(xøË3 ®ï ±Æ}Â+4óFEáXã2PŽ½Ýè‡_ ,ÑsŸf1‘ßе£úh…iM»FÑWÅÔò!1°†qÁ·Y8=ñô—BXó‘¤9"R+x!ò0Ü ßDµC†i’X°GRíåOI*×Ĩ¶6€¹c»n¢ŸÊ(ŽF“b¥|í0ÙR4w†ÀJ÷³oÂPå&2b¢Ñ)Q ]ÐJn‰~-X$Vp2ÉV¥„qK -ÂKÞ)DyR£®£‰­*̽ƒW#yr\G€zÓ4f‹s
+B§ßè^¤Qž4S $§šHÄžr)í^]ÑÙÅŒCÄ–÷Ä?¯:Јnqº¬Ú^´Ž¡kJ“ÛànVñ†'ˆ"gïwž½y™}f,jÑ­¿†ñ6t6¼k[D¥ïœ?¡G[õ eQnþ™;A†zŽ-2<¡Þ,./Œúv¡v¯t¤u’¨¤Ý˜Õ‚)¸áB\Ä
+þNRÛÿí„-¼ôǶDÐMPÔu©þùml&•ì‚3†~›)NjþJw@0kCäë«Š`žôUlŒƒn‰àÙÉûFy›ÓDò0‹’ù‹9Íi³f’w/Á*hrPÒ²
+»²Ôñë+¡&Ô&Üv?¾.z­i4ÒñßKYA¾(Ï”áþ‹møuæ[YƒOk3ˆŸI½ 9ÔPM†¡O‘^–Ö
+ŽM^mQú¶Õ-9Ì?“•¸ps¹,‚s3o!Æ|øì@ðŒjýçêŠu³û]kËO3a'`ß¡¹tÆ’\“í,fñòR¥ð+ž;‰¿·ÈºCÐ~&9 ‘Ùx+ )›£xˆ´>Žï·ªØ¾«]ŒiòÉÙžYêw/ç2×Q’ccçG¦|Aö9_ÁÊ}yæÝ`ù5‚âòdJÖÿ ær†{ì\°×m+#—D[µE28­¡÷«7˜×O³ÂU[¹Å¬æüêÊ
+ñÌA⣠•‡~;§ê²‘íxMü.6íh‡öy“¯ÜàÕ–' -Jic±µø»¼YÚÚ';#y g¡Ý(mDüÖezÛ8¼nöF-S¨ú6âÕj¶›ÂÉ@,“yO÷!Óæ¼OìUÈ<ĬF§¾tF— ¿ªæ«‹D’zXVÃ
+nÁÚÖ|¥_WBÁAbW`v×ÛŠ%òõø—» evÛ¾Ó™QØ‹ÞÖô…kyK5öšEŸoÃË1*%³Ç·lÀ†š ¿Hî4e>
+Û ÉÕx¸Ø´©ß‹/hQGD„B¼Å^½Â€þõÁ°¼‰æUT2w¢«fµæþ~Sn¬.K—âËQ|jüž× ϲà’7‚Y–É\ús©1IuRâý
+îE×o!3¸Mzdv’š—b»±naÖ#„ú<\\Çž«#‚®;1¡* Þd¾DÐOŽú¯ƒÏÑž6xFÓ>ÙÌÆðIÑã½ ¿…s" P>MÓ\cù€Ä'0¢ZNT—+4°
+ôdàÐàŠÑ_PùÇḜ((k’j±Vß_ðFâÃî‚Ø)…žõW-¤à/<#QÒ1jÊÒÉt‡Øú!Át/;væÛ± N—ƒˆâaQ~‰@ aµñîéd‡®©ÄQçèjü´:4Uri’uØx^ ð›]£ý¥‹?'Hô;WB
+?ª ¸áƒÐ°:YC4ð\t•\¼§ÿÌCíËdÂÆ}#Mï&!$ç‹I@x㇥bž%o0èú~'äþj³ƒ‚^Gã|¦æJñ76µÜëu´ŠYsË£kmÍ°ã÷D$hÌ”ª-Œµu²&Ÿ'‹#º¶4#¶Yk$º¿A¬Á(—ź6¦±²%ötaÞF&¡•¾˜ £ï£~æ›Ì¼ÁùËÉâyºh"ëšø±êÊÎ=>«$:żu—y¦
+²!ìQÿm “Ç Š¾z‡SÏ‹-€dËŒðíÌ¥å—pÖ㥓Í!ˆ½é‰ìÄÑàÔ{Öæl,òÅÝ&_øü<•Wéo©³{Ý è‘2°´
+8î_ï4ŒNÄß{çôåÛ©QíÒBR"ÏV?MÝÈݯÑBNTv¶ì¦GðCBÎ朖­îlÝÛ_“J[v1<ʱ²f•ÇBÏŸ—Œäv‚÷Ðj$gm2í…[ôü,ukPŒ=·èðx‡N`!j>¬©¯ûm—<óÙæñ×Xÿ´Öáá’nù»[˜OŸFìQr‚r`˜»8¼9¤<Z­…ØŒ§ÄÞCÊ_$Fó:‹ãUsSÄolâ8P羋ÔÛjÕø2Š®„EŒi⦹[¨P‡`Dñcá'Ì7‡ËmupÔ@ Fý¨‹n Î@ªBdzç#IßN?‘gÆæŠöÄ.£õšÕ5æsòºeµkå Ìš3 ÊÊýr`ëiJæø±°¦¡k¯âsoË°Ç =4T R ©ˆ©lÞƱSö!ÞäùãKT±*äƒuNX)S\”7$]á]aœ¯ÍQÞ,‰V;ÛävY‹¹—0¾A
+)P©fzO,ÁcÖøŽ$z”¶ÅJƒÚ˜f›±†Íuj­«À”_SbÆø5åW$.W4£ Ì ý`›D…â›»fOjÊ‚+öÅéÜtwFΙ@ÿc¾sÒ)fdÍ}@!ñìM)õ8´ë
+¬íŽrµÐq@ι=ä]ˆN…ðnoTÍI8\Êp–¶>*)¤‹ˆÉªÛ
+ó±á>\'*Ë]Y´¨îr“¯³Z'¢øl[Ùd×'عÖø¢b)B+îíG›‰ÊxH>‹¹†~q·™:•?€/ÔºÓS³Ïêò1ÃlR`ð­™G­¡»ìMIKGIr\´ìâ-©¡óP’xĈ7 p‚Rvn¾Ðž3¿fÐã0„×›ŽZŠÂ|vÅϘ`Vb=Â+<I&ܧÉXÈŽÒOüâ5iRÍü€ÿ ªiM.ã KCe;W_"é¯i:y†V‘vþ$åð’KÕAÖo¼¤û;äÎ{“×CûmzíU÷¬›©ø×KÕPžÙ­ðˆèp,bÚÎObÄü ôSs¿ŸgïÐmƒøRó‚Ë5qŽ0¡Á†n =±v(쿬4&µ0R[]µºô
+w4ÚY¹„ÇÄ»‹,ßÞœ5ë=Ÿè» »ØoâÚËÕÒNEGmuj¨åòøˆˆp’‰v¾Þ0ΤžT÷ƒBrÖGgÒN°Ùü¨(ׂnHLÐ(‚Œ·Åü’¾Þ5ËBÿTÐt Êr_.ÜZÌÇNUX÷ï“yvMÒ^…Ã9{Gu癧€M,ÎÎvQ¼rØ CïÒýCÑC¦•ù…N…ŽêR¨Ûq 6!þ®“ q(A‰ÊK"Š¢O±BµëbPg-%$7[Çûe dÊÞ¸Êu¿ßµ{ÔÀísu¢–/ó”âvlãÐÚ2=òÏ,mTh³›mÚB3Ü:bbàêˆVàP,·ä -ºg(›,r£l”A=H»TH:ó«sš¿¤´×¶Ë°€´2"¿ÝL!Ào2³·HEÇÞ-Rt^äEšjÄ͵xª§æÖ7‹ Ø7bÑ9Ñ8sUÇxëÒyêÿ6&Ýá©ä *kŒô-¢àýõ»,í"<‡nW%„ñ’ÿmÚ’‚`
+îå–aßàaO"ü샹‰¢ïK9^dÏí“ æ`è\åÅÀ|œ¼×öºªì•¶ÊŸwƒÌ–¯<¿ÃAÀ±$AòˆH@XÞ:ª:B™V¨Póžèú!¥Ôí·“¥wfM`„ZL .[o Ïq@綷¢ðìGÜm©Âù O‹Kc—æ¾éØGh¿Ÿ@²O§KÔ½³’ƒ`„è嘬2ÔÄŒ=tÿœé𑦌åpHtòÅËâtJt\#dƒÙ§¬ìÞÉ(=)‡NËkël®ÜÈfsqܶ،խ—¥c÷)7Cft”˜J¹¹÷Ò-yt ˜ô ·Ú×<ÄêèÒ²!-@ÙAì$Ñ›°s2 @ 3³Ke!ûÂÓêŠ@·pNvÄO   Ùxˆ÷3@¾÷rôÆ 7¶„£J£ßéSÍå/
+df£ÄíJ«Bf\Ô—#Š»9ÅÞzê…_5Q0–µ¢áÈéÄS)H¹t“:P$GPëyUco]Êy?LV¥qS%ÿ¶Öx ŸÑ•×‹\Ž9˜eRUëdJéz[²—4Œ†¤½ê(tmœH¤¡¸ -WmD/ŠzîZ28êEõBk{P›rÁ‹ ‰ò®¹o;µŒmÓÏLU#Èò1ˆˆZñO•M€öyÍ^gø·™
+ãIXßù«:¿ø®ÛÍd€³ªøs†Ùʳ︙.ßøN ¹¦ûN3|K’Ó ¦¹lÜmê 3 pÇ[ì†ÖbŸÔéE<½AÈm8›h]2VpÝñp €©õùÀ!Ç LâCZ³÷{Š $ÿä•É#45Áöf¿;BU´¦Ä02qY/1çq¿ºai0‰éè"¨îyžåßR¯£¼{*¡éèKˆDG£¨Ò¦MìÈvî_ÌFuÀbùÜoó„2ÑšÚË©¡ðeÊ=cI~;X/q9îÉýE…Zü Þí «»O
+žÝ&S¡Gù®úˉ[DTêŸtš|hÚÄ-èÄ£ž³2cUôÝM¿ö/@¬}õ½Ahõ^
+«˜1&I#ìß„Á¾NñêØS2½½mJ¯Ù1Rôpëè­›ºaüÌ©$2'5ÍŠxñUÒì\2:< –£ñ$õT!ñ]t¬c
+b\¢& ìØ˨çvýFX„§½õ9†Nµà×–±õ™üÅ7ªÌ3‰×yͨ‚SÇ6z‹ü§}Ý1O
+Ð)éöùoþö–ånuØš³¾iÑ\²ª<þs úuØ2NŒp„¬_^o”V}„gW%@£ÆÌVé£ûõgá"¸³rúˆÙÒ(W–s:iery°÷ Ôæ ³ìtìÛÞ) |‰<j¸]?PV1ô |û -Ž³$aS×J´êÁkÆ¡/dÕÞ =¯Ýùðã÷O…´ä–Ó«™žÁO4Âq¨aQy?-YoQ4ßyN@bšGD6¨ÃbZ¶A-d~%B(w5Kb¼Ž.*¶êÖ†Eñ¿8 €k‘àññºå¸Ã}Ó7ÔƒuJ^7npãSkEýMvbk1ÉYžiôë4§¶gh–_ÿ¸EèuÅÔÙ+¯[.ä[€%ºž”€)Ð>Yç¨väFUAóŒ{)ŒÜ¿©hXrÚ ="¡÷{ªsºgØA§2ë÷Cê
+©KÜÒEÊÕç“ È†edì"¿„šQÛÇZ‹s`…7[Ûõ][x¼Q9*§"$½D'tñÙèwwC-”³ÓKÎ.£8ê¼5é¨õ‰¸¿Ü‚0ü&v)UH)vôµÅÕOÏËË-O–Û>#•¬\Yä wž€wF©3¶“œ9¿–Œ[“Å^p}úôÚ?‰TöI]RÛ1b™×H·— íÓJ›cÅðgõ(F}EùËí«^"nê‘ äÑŠ±.E
+E¦¾—pOVï)­o3œôqwlAä†ß}“ÔP¿•!à€Dûåë4´šƒXŠLº§cJ°õc™¢ÁÇÇ#²3¬ð™a&õ¾a8$ï<î¼ãêj‹ T«÷¦êõtRæ92Vu(Œ—°}ú¡¹qϬI}Ïqsž’Ê6‘qØ–çõCWH7V6˜øbÊ•_FsQêXD`ÒRVaFÜ~×Hª£óò422ˆK'•1~gs©Œ‡ë<0ë˜*ü©TôyòD.4U—~Üù¡I-édÊo¤¨¢m„r%‚˜Õ¶ñ21ØÑ°µcBÎ}´Âc„ŒábYòüŒ´æIp ûÂÛq¸ê¢cŒe\& ý¼ŽìÚƒ.'¥š_!þ@=²s¾•Šc¬¾^ä ²è1ˆÅ>¬z“¼Yuí蛓t.÷¤EMQ8,þI®µ~ ÝÔ¶utÃs÷ªH
+ñ6*A↨W-ʧ¶ÞÇò¬b{3i;}É2zà þ­Ø¶bUjÿœ‡¶„·J^»×©&¢dÏ €(.`s‹•¼18Þ'¡{=åYétû%{¶‰Å?×ÒM2Ç~ìkýÈ!:*|H/fÞcÉÑå¬àBÛ-¦Æù¢Üb’ ¨ÈÌw•ƒÃZçk™2^4§³ ±¹ÁÜ _ù()…턉ËH3°r×£*ñÈÅ|V±ñP¹é«&íÌßÝ«¸çæ‘6ñà˜¿ImöbTì6TuIRu‰G×Þ æÚÈM?¥œ k;œOòòQ„2e¦ò»Óªè_¦f¶•××mÍTˆï**Ðz'À|NàðyRœ·âž:Â-i¿Ð«¦*JîÍiŽcg¨ SÞi|°M!²:G‰w׋HÁØgYŽ,åù9TÉc‹$CsØÊÔ”Y\ÔKbxu#Ÿ!I|^ùºÈ1Ÿk(ý&Ê:ÓÉ« ù?îhúdçÜY¶þMÜ`Nk‘=LþMˆ­%¸P„l–Ó·PwLÄ5 ý\ÜM/C Û¦ó+›ÔWužØ}«ÖÛ¨ó=ñÇAK
+êÈ<ÓÕW{îpÕϪ–T«Q“‰f´a’+Jä+ÍØÒñ/À‡Æù@‘e;4„YêcóI,ß8åýS}¿šáw]¸‘ªNfd<?-Û%)K™ÿ_=ùÎå°×/WWì\:DÒ¥£+`ðw4ÏKØøßœu3(å® ƒ6çš‘jÀˆÄ&ý’a\u¹•ù`ý°Ýª¦?ñvvó˜:å†ø7Q™xˆöâؾø¶Mû 8ð‰ú”é䔽»{XÂË}&GÍÿ®v{Í
+{2 ŽT4Š裙ÝT0r—³‚»‹Úôõ¼éìÝ¢RùªY‘Pý)3{¹?éöJüUýè8…3‹ý›Tæ$¼gì|ûl·[&Ó êX­H Í`oˆ÷œ]¦»4¼DGŒ®Ì`_,32fM©üìÏ“øÁkG[ûâ_ÍId•{Š:ј?Ò7ýÕB¼àT/ÐÀ,¾ë,•—w±Ó½L©¬°èÅtžñˆí&© %$*ÞÎr)Ç-šaÀUË¥­Ý?ÄÉÝðÎØÇ@b•=
+¥9ŒÈ¾p7Ùȯïæ hÃj#, ëvÅh]–©­÷|
+¢E`¹½Êڗͱ˜ìØýC•XŽÑÖ
+^ä¿
+=S  EûU¦Ô îå ÷ü
+™„Wo雈7z¿À¡ÄAKR¾ϳº6ùáÓ¸f¡­á¸Lõþ,†ÉªÆ‘ò=^˼¹ÌáÁ ÅÈÍdvu1:»žá®fªËc~L¢mÆ¡­­ížm§Ëì‡DƒTt^GÏ™‚ð0·aõ×™ù¼sÀP ºhPö3ˆW‡SÜ‚9c¨fXv\›2P‰ü u…ãü:›òö?ªnÝ­àÚ„ƒöÕ„ ìÛ/õ+$+9¾ÏçUp§òLo³Ù­I†ºVöp¡ëv~Â1~â ¯š„Å*1‹ùÝÕ¡„£˜Gk)¦¢Ì×=ÈPÆgŠ»Q›oMÇb8ï±…à×ÙÁC«ÊU+—r½
+Ós˜–º¥¥O²´Ú«R2D"bÒª{s¿iÆÀŸ9.ž;¦J^/¦§dLGgÊ*»«¤|{ÊÉp`ª£¥ù‹Z‡áŽ£WdÒkV7MÐ-zžGh€êñ]!A¨Ñqc*˜‰ðæ
+ÇŠABœýÆ`Ä¡'
+aÛíì;/­–E^ùu¦˜óY¢|¸ ¼?V»±­yˆäѵxï½
+Ö‹/Úu•œÛ¶#tMC: #O4~”ÓEeR6!Rè*Àl$VÃÛœ|òos£® ßüpz-a”צm ôÜ øÐçü‚‘r]™»Æ@ôæm¶$™\›gW\ËÙlójÀ‚‘ɹ_Çl•&G–|F§s?'¿è‰êSÇèXÚÆη„´÷~÷9¥Ê•‡¢H1*!¬hŽÏz¥¸u¨-Ê}L$Ðý`Pà°¼3{söu
+¨eAAxáõ3kxÈ4§®zK¢mܶšlÒ *AmUmdþw›“­=]¶f–bu.Gî/®0Ѹruº…Ål·[Д…xˆñn‘H¿–¼¢ŸÙ˜+G9:\Ì›ÕÍôãÎ  sÕÙŽ•±tÆÑ nÇÓ6`¶qŠGóÕÚ–‹cîy$P彿XF "¯ùes`ñL3RºQ+Y¾~ W·ó–Ò¡¥úÎ4qŠôüYûEÜ.rBva=´ñâØg«C‹ç« ¿IJ-¥ñ×Yc¦ 2~ "©¶ÝjH.+-9W>¿h´’¬%8}ô¯Yf2¢ÍõW%>“R+pAG¯ø£ »[=óÐÚ˜Z‚2òË´奓Úw H¸ž•§ urÁÔ>åªb´$7|¾#÷{fAÌ+àƒéœí?úT½qîò7ÎD“Õ@°b©•Šû0.æ-ù_i¿”$Ûb
+þyO÷»bcµ¬Ä†?;
+XDùb[3OúÖÝf#Ìǘú̼æË‹Ú^ëICCA¬,¤‰é`N‘Ä@XÏv‰Ï å]ãøµJ¿Æ¥a¼ ,Kw¹Ú
+ï¶]¶dD+‹´^HrÕίX\…hr Ä/ß÷R^#ç‰Gsç†×Ça
+V˜‘k'°èFúFuí¹€¦sWø„¼ò)•X;ì2s—‰Vhª^=¹ýÔ§Gg[É×…ƒ WÔ­(0gð<¤h#¨–.·Î«ßøäé½
+'AW‡æ!Ñ
+¸€8ZÄžï'ÿ|¸rlýÓ8#,†8žÔ¤]`Öº-×)tv²—…D¾ž¾T§ÉÎ (J=ú;!c52¬!ï” ÊçÕNöÓ’ÇHÜKùe²ÑìxìUŠhœü`G
+n2$†'4Ÿ¨|A¯ÉlìËŠÀ¬M*¨@_tÑžˆ® öù}L…kÂ7é¾Q±ßçpS¼Ñ
+}"Ÿ­Qie5ë¯yâùÕ
+zDå¦3j—Üj«ÃØãž}í§A¾¹Èï‡iŽžØú*JÈk»¬
+aÓñùœìE¶¶WÐ*)^ß» ‹¨ð3—06"Þ5ld$ýÛÝÔAòzJÄâ‚zuÃ=â±Æ˜¥ùßeË߀¡w±ÊÎÊõ\ %Øj¦óïAŸ_3ê‘wvíž$b¤Þ&Ø8~Ìq›Þ ª‡>*¤MJx)Œ+ˆ¥÷èÛ½¡7Çz^¤Îà”«Ê¢J¶O:™mÕ\`<R/j'ˆqV§Ê@5^ô³ Ôî`i ä’!›ÓÖñ{@,lÇX¾ó.»W0Ø™º5•^ƒ‡8Í¢é6c©ZåºÇ-ÅÙÙÙVÃ%–E}*äžêþ™Ì”O4Ä~Ü~§E–Òl.ÿZ!”ÕV¯[‡>¦z½BîÃ÷öÆ
+«J• È|æ?O]ŽÔžÊ ƒ*ÑiÓHûZÂ[XâÔC~d¹âãɨ
+GŠó{ÂôÁw,_ñƒo2;Î ¹ú&h ùÞCt§ì˜qƒv›öÖi“Á½LexRð°î&­/F=“¤3‹žoaÎ0ŒÍ‘F…-Ƙ.ün¦ŸÚ( ˆÓ*°wö
+—ô‡rM¨3NÎgO³T¢Ó”u¸&À½Œ •{“ÆYÚÜPˆt~ .@é^%ï!a‰=o–ß?q#¶TÕ^¾8¿G»4¯\*Ò¥²×:®‹ûÌìTë Z㧑 D•ö¶“­?SGUñ‘1¯™Uå¬6œYîÆ5( 7 1ÊY†T+}¥/MºÙÕžˆ©ÄåŽP^ÞÛäKÛò*\Æ}Ç°ž¨r©Ò¾äÊÀ.I¸~צÌ9.\ |öܦéNÀ5»Àm_˜{œ˜ÁØÕÕpK¼3˜(ÔN$%BŒ}Ò”zÇ0·†¹ru€ZÂ.
+䀤…qJŠó$+µ)bÝ䤻hf°‹Ö"‚}¹¬>¦_7@T˜…î; ë C×(yãîîåFjû±œŒêįÇ4‡<ËÛn\y).ÄLj{D{l¸Xm
+Š2aì0·±¥:Äãdžh¯‚žzÎמü%YÒó(dí¶¦nn«ÓŒ¦LÓQ‚suŸß6md gÏ
+¤*V¼2ŠiÍ0º÷ª à'lux•ˆMà¾É*
+‡psŠpäÅŽ1JûôSqL,¾í-Ͼp“QŽ5éõ\ì™bi °jDíÞ ŸíðÆübI•-Ã.lÓ¤[ü¨DC|…É"¥çš‚ml¹®°\yÈ«#R3¿ñ¯EN§D|½Z€h²Ùž7òŸ­+ËÓ¥€…¹Õ¼tv>ì‹A& 0&ýéá´{ð9Ï㧣-Âg¹Õ§ƒJµM\PÄnÓ†ø•4ëðc­¥ÒºŽþGM œM'ê–ס>. ·>#¢²Áç«,Œ¶ü»FöÙ››èüµ;"DAIÌ’˜uœA}†­Ýf1ü¸sÁ‚o­éYÊQi(³% ^ʽm!äü¬C`6ņBž$G­YUgH¹âÍb¥ˆ\Ž\ÆûW<ÒyyŸeˆáãSeTËKŸ÷8":Ø¢ã¯>®¸€÷»­R´§º«Š5}âËÊ#åµîW¹*Ô‘>• B4BÑ{. “€ƒÿ[y5J¸í\|h˜Z¢QÔ͸ Å_*-’vs⧟%ÙŒk6R`RtB1"§¤×:F•.\¢àðŒ!•Ëɪ›¾ã7v â~ÊcÍQJùù÷¿NI|ˆâ6bF
+Zþ,ÕZ¸[
+®ñu׫Œüá¹}±rìë¦Ï¾´ö‚ªJŽó°l¥s(ÿÜl#p-E{ÃA©¸ßrúz‹Æñ•ÈO´=\K“lHMLÁX'>ã ü’ÈÿM@ÎV‹ZÌõíÝá*ÑõiŸŠÝ…HÉõëoó)zÌS椶Û`Cøa}ë|( S¹ æÄÄwý5¥üèl.õ‚Ç…¯ÆâÎm‹~¢¿j=Ÿˆ`7Œ]=Æ ‘¦Ö–r«îÈåL¼ JªJsÐ4÷·Jžuâ`ZMQGÄÏÊ[·H¦ÖÝ” Z;1£à˜2å™O|^”´B˜j}ãÑ@¸z,(8~"FÚÑVU:À–ÓS×ÿjpÑŠ
+·g9;¡åíBÛBÇí×%$[dÏN×M@z6å=(Ã'4
+ÙR"ÆÃÉ·£JÊ…“e3xÄn™<¢YŠ§½‘þP@…X
+êÅ"ù@¾Õ0žŒ¸¥:ãXí|ÐeaƒÇÑá¦
+;¬I\†‹`-·‹NF=t©ªh»??Y.ð5ošŸø]©EØC¶®²ÞÄ|ÝQ2.ÁœRœœEZ»ÁÜø)ΠãÅ£i9ù-ÎKhÙ²¦?~‹±vÅŠ¬hjÎ8f.0VMf’x|5¨¤ß×=™áùêdô`/Ý{ºÐ‚Mé%Ð}žði•^zÉ‚WÖÙº·,“'˜8†´ÝJTÄŸ¿@M+ç‚ 6QÓ\tqÁm•”vèE)d·y9žji08Y⧇™.ë¿i°F¶ø+ñnC
+põ¦jø§%÷Öp‹›kegŸi9ScL)¸æ×|N˱òS³aÈe2T3¦s¾yº¥9þ
+3=^¡¸Záï Meé}Ô ¨Q§²Êzy½á8 ÃŽã‹I¥=äâó²ÖzË$Á’…c7›œƒD’Z{UØ®—íô±£Ž²ÃÆD ¾Æ…Æ#QAó÷åR+ÇÉÈMÒ‡c[“ŒÉÏú<àê'ÐqTÐ6Œÿƒ
+ðGôlc¸•‘å5êíy k ðÐòI “»
+íã‡Îœ’?À û G2A]YÙ¸«*j«vUJl'Ïû²*·¸[Õû¡NböVcù$—§¦\i³ºÕ-Oëä™%aDpJKöõäà™Z{MÙW 7«Nñ
+R¥'$%*^ðì ñYô-4¨Hª+ärdJ¡}rkß1Ú"ºO«‘S?µ8 RŒ6žOx»…vèû©­þ!É«
+ò÷•h[»O*ÈM†»þC·_–ÂûÙ~h£ ·´vSÒô~ Ľ½zUúر{ͶÓ'¤¼f0ƒÏú· ÝÒut·†<?]±÷_> û&¤¾ÑÑ¥BFÿu¾›šg—+2órÈÉs+-šõÿ±G¡Yjž'¹ÝÐw ¹I¼~‰ØX×–ÎôälttR+¶±3]¼bØÀÿ\Á›Pj<Äß¼&ŒšFç­0LEû¢¸|ÑrùÏ×ýìžmJ±iY™âˆ|çÜ.ëÌü£'ö¶ŽŸ!K¥õ˜Žj
+y%>ò:® ½Üß´t|l‘šÙÓ¦pj3SÂi(‘‚Í”<Hû÷N¯>kÍy›ˆ=•.½Ö´tòj–
+5ц‡Š.ß•ðåvu©Rd·¤‚ôªˆ&Nb`Ë’JÊÅr©ù^@iž½Ùlñùßkœþ®¿!O9tQSÍØ_çE‹dËÛÐè嫤ÀAɲ2pzÏä¹àÝ) àÙ›}%@«‡³…ÞÉån'œ)E(Íì+Rù£>Á·ñí7n³9ê=öâ Ê‚jFÆJóÂL‚b¿pï@½NˆÊRµÙ¸#T~'QäI쯙ûŽŒ”—¯2;®!½¤ëFOO:FI’­¤ÑÞÔ^í|JÀÓ9ÀŽ\Iíê©Y}øõ1Ë–ÌZZÛéØêáZ’×¼¥]ÒµAJ²\ý—øuªCÔç³3ýýÝQ¤ýcš²ª¨ÁXé•ø,ÑÊ:q#gÆö†è–Ý7¼ªSôýÄò6©AQT¹,D×éy"F€i“V“‰çGB“˞Ш©Kûð ½óŠ5O?4¶-HÃÔ²ÓµˆóàTÂi mÌà¡ûÄ6Ò_\b¹ÙÃL Ê°ƒÍR£ãK\ «z> æÍxû" ä=½‚÷G™¸yM'›4â M(ˆ¸+#Oí7Ñ´´µ]
+mA2šÕÂ`zXåø‚Ö¡—:Í-g•ÀF ˜ôàßÜÞweÍÀë»<CfØ’äMÄ|;*“dI';ñߢÁ||õæ2TCOŽsý­[–·“ªîv}šº<(ÑÈÎ’ý€#²lÔñU ‹f
+boîåçÏ8É°=§Ià‘”ý¹—‘Žz¯–-‰K¨0ȹÕÅû‹¤@žvårÕô[Ñ Ù ½ôòecj“Ò:s¹²"ÀÛ„„ÊòÖìÐÓâ«Ï¿ñ‹G¢cºPn¤<Md速â¾íŸñ1³Ê¾©nmƒm¨ý’í ƫø&P1"¦½•rWT6ˆp…š•qLšÝ–ÃPÚÃÖ
+Ë¢‹[.’5òŒ®T#jn5²F ‰0ÀÙYBm§Ó:'† x•(Æ@ªhú ý“žu¤IÆùlKˆÉ„oü/¼XÛœípe4Lϱ†TÝÔá@Õ+#?Ž˜¢,ÓSÂäñÒÖÖHì¤ù=!†<5®[øþÓçëòý
+©Gn`>U ýUÎ|Uª¹‡Ä Ù«#ëÏ^ÝDˆEøÙ Sj]Ž Pœ²jiO'4Ófµè®Œ>|GÔgÇŸ†w[m¬i¿¯[ôÀ"Òáç°‚X%¹ý?¿ivgrÚÄtÑÊGYËk úÁÉÓœ‚¶r´Š‡o[hš¿Ô[f·ƒÀ„Ó$—Pô,ö¯ºLã©Î»QKH”˦,š‘Y6:kdÀì*—sŸ‰|_±. q†*bÀ#ðíu…ZƒöŒªåøÏ“G7ÑVÊÚN¾õ³B*%Îf¾+—·&¸(.)u!ÂIlS†ìk;,ô¼Ì7®ø?½ÿÚMÝO"Š =•zTJ ¤«¸‹Mà1h¨|¨sTrË0ü= b
+ÖÜB^gåPê¾üzÐÿ¼i‘¦—`a°µ¬' ~Kœ‹§9 \œÙ7`¯Ìß ˆê>_éš^ºÁ õ¿v¢PÓå3E÷lεܻ¤úC-äé7U²AïH'ÝU÷Œß;V!‘Z Й1`³‘Ô¬o#¯§¨ijA¨¢|ëÒcñéâÿ9>t–xƒ·¥5ïFÛû7©+Îocá©Åã@À:º,O÷²Êš˜JÁzÆÉÓ}’•Å†Kjñ=Õƒ{7Yay¼´|nø)àÒà–)ûUgª^„dçÖº¾™Â¼Õ™5ÒJ°¾ûîòY‹ÀBKù6éE/L¥1
+ow„¢!ö7ô?üd1´_œfŠV#{…¬åž¬?{WÜÿˆù*½Nö‘ážÏÊåH.ýC>:þåÁ)W#f¶žp‚¿ÓÚôL€¨»µ†Q¹9]:Q 3Y!éaÛð­y#×Åùí–îù"í¼0‡´`YfÎLw%b¦è“q¦]Œ%Eª‚do8–™–%šÎ¥ï™àÃä/ƒÅòO@S8Óy¬HAH³¾«C¨.¹¥¦Ñ«¯€Ù—Ì©Fš¯Ýj¿¿GdLò_äxí†z¼²{½ Vbãn¢ÔUmú”é_¹øà'; Ò»qËköñî'”`…â­‰Scù~HT?g½-…(9sÀEÖD*
+ˆ±|1‡¥–S˜;óý?6’h·âsDíßo9’ßU%ƒÛþô.ÓD«`bž¬y)¼>ÕâvP•
endstream
endobj
-636 0 obj
+883 0 obj
<<
/Type /FontDescriptor
-/FontName /HWFIOA+LMRoman12-Regular
+/FontName /XTQVMY+LMRoman12-Regular
/Flags 4
/FontBBox [-422 -280 1394 1127]
/Ascent 689
@@ -4656,131 +6042,137 @@ endobj
/ItalicAngle 0
/StemV 65
/XHeight 431
-/CharSet (/A/J/P/a/comma/d/e/four/l/n/o/one/r/s/two/u/w/zero)
-/FontFile 635 0 R
+/CharSet (/A/J/P/a/comma/d/e/l/n/o/one/r/s/three/two/u/w/y/zero)
+/FontFile 882 0 R
>>
endobj
-637 0 obj
+884 0 obj
<<
-/Length1 2002
-/Length2 24553
+/Length1 2003
+/Length2 24766
/Length3 0
-/Length 25797
+/Length 25957
/Filter /FlateDecode
>>
stream
-xÚ´¹sxœ]×>Ü$m'Óض­Æ¶'n&VcÛhšÆm5VcÛ¶í/½ÝÏóþþýŽ9f®9ϽÖÚûRT¡6%@¶NôÌ L<
-&Nï¾ïLLÜpä
-0vÈŒTÝí€Ì
-@RYAMQ…šá=°Š³ÈáŸ\DUTÕ$é
-tûkX
-^+þüx+˜ÓÛFL¤Q—ðÍ”aN0Ö ”]g;Šž:ú7µ‚µQŠi‘mþ‘Ï°¿ª;ª‡¯õÌäÒ&ÊùôJsIf. (äpªäó’ØÇ.7ÐXYn§0 Z„×ÆÕ6G¤¿0\ã‹3ç%ζXw—HƒH^x%«(š*u›wEZF;¥Ÿìnï­ýá^†ïT,J5ËÉDÉlrm·>4ÌCž éób©gxáe³ŒçÛÝT‰V#AÉxæ*nZ¤×—Ÿ€ MU͸o0F<D}‰ i)U1H¤*¡N_Ö*e”ÙÊŠ3iµrj#`
-åצg»ØK -ºŒýŽ¹Ôµ,ù-<›‰ ^DW!+ß:‘WÅôzÊ^1'Á¿°Å~‘äÑ2¬ÅðÒ´œœ#ªzøªû¤«¤V•óW•À«a8a;y;D=å˜yO»®ÊÒ“€Ìä•RÌWÿ¬^xð/<ó8ÇG(LJ±2zˆ° 5á,\© àê„}±n|¸+DdœªjC3îä
-ß-YRþ­@ƒ>©&œQ @ø%u¿?…Å0ÍT"2Hî$Àš3º‹NrV4ì˜ûçƒÚ£­ÇÞÆmË ¶ËÖøâ!²Þ>ÈT§‚e¶Ïú¿Ðƒ<w¿O_(´³—#‘oe×kIÎ!¿6êÆ«@ëè}×^g“¿³H¬×Ì—«¢N‚ÍÞ»½ÅÒº†ê¥#Ïlªê®–
-¬ÂŠìV!ã´ü”,Sݦð´Å1ß5Á¢!`SP‰_:æË48i‚òHpgy“¿Áo…hM¹Ö°sª‚ÙÅ£ŒÜ›>_i˜ðé¼S‹‹U]Ž…
-u,œqŒ¤íÎ,3ÉYÛYý´Ë„¦½ÎÓR Ã§ì0Ó2cN[b/ÃA?x\A¥+u
-?ç¿”µ<¸½n=vS¿L½¾¾ÎfÔáxÁ?ͽƒòCD}C
-ÝÎ3¹Ûò> =­†]xúVöGÓïÂ#â–
-†öš¢I¥gfH,…W ÖFb˳»Q† =“b[%e76L>¤˜ùšXDµWÑ]ëØ{¦_ô½ˆä1?¢WªîX-â áÚ
-êÐ2H¼ÛÅP€­é[²>y»¶$ñ³„N”УI³Êˆ}i¸þzZ÷ÁÝÇ t§¤…22]"pšk«ª7Ñküµ™ƒ2´h´¨“yÑ(‡ŒR¡™´T3}wTb‹JQ׃Åù«XhmxXz×=#ß Ö`&lovï"×J¦Êk˜ jžÑÀ š«€9Óßð´I#´ÜÄè<óÅN·jfI.¾F‘ñ¼%u¶ì#u¼E<˜aë¤Ùø64ìÝtͽj ØÜ‘ÌZ¶ë ²ÀuŒ‘ÛÕ§iB¯‰%Ú+üIAâ›T\™Ò]ÿà¡Fy®{ פu4gì£Âœp,ÙÛPŒ«yÈ¥¥4¹>Üúf´½ÆjÑÅ&2×æ‡JÑÛfô7ªX={>šƒiM†’ÚÑÎÍoÆ#íê¥ù¨¡w´8N
-³¿]‰ÒK98»Ar å2Ô%Žc¦ô~öEÔà|½q_IªææäÚÝÇFÐÂŽ%*‡zSÌMb\¦‘|éÝÑÈÈQ4+ŽéÊ"½ÚÞ
-¬×­C¹Þô㲸ó©%õ -¼ªÍÄY`¦/ð}êÌF2<2ûà³ÉõÐÁ£¬/áuï$ä©hÏ-NæTc¢ž[TOö ¡Ð§j™üy•W/@[C4FDËVÏ¿%’ñ´ß²Ûü.Ak¢:‰]õI>#CvK° ¾#0ÙCñI_åRè>I ïŽëC3Õ\R nÐ@•óPû7nFV¨;ær[šÓ\³äuìUø>¦ô©mÏ‹G±³æõJ†€ïFÚV"gKZ¹f¥P&
-Ljã¥ø”¦Q\:^SBgÑVÛ=£· ·­}ë >fu9-¤ÅŒ¦=x
- MëÒgm‰…0='V¨@êIkÖ•¯!
-!¯ÈsGÔG/„©Æœ¹¡4£¦AF¹#Aí¼œ•tä°Ç͵WÜó¡WmƒìUq£¾võ]@F1U¶|ct.½b†½/÷X•V¯Úð¥á%|©àDþ¾ Q™>ÆÄ’æó
-Éìž¹Ð9oÛÔ0èÒDº¦Øð`«Œ:Ćٖ\ïÕxœŸQ̾%Zó$ù!n*=¬TI ¨ŠlN¡4õëÊFð\!ÃÚ«KÄÛ)šÂô=1ä•ã…°w¶·n?PÅÞûÊGì?ÄÀEHˆ—&›XºΩŸŒ{k:ßÍuó²©ÓhßAç¯ôcœ‚sˆ’•èn ’ºsƒTµ­Ëý°.<-Må $ëxleU, @ÉánÕ@5
-7Zô)\•½lyö¶çØ}¼Š-ÚûŸ]Œh) 9ðÆ,”;VýKG(ý‘„ÍÍ.”ꓦO'ÈmÓÐâcìëÏìÑžè’7¡(½šrÌvk•¢Gß1GÒ¡ +¾¾añ¬58Ý/Ýb–õ{Ý73FÓN´ƒ½—ö}Ã
-­hôEf©QŽ|¨Ã7Y=ä•© B·®©-Å8B9‹öž=˜cć6ZðlÆæâü§ªÙkU‚{á=…K¦ß‹•zCPƨgy²Q(çYÿöJí!ƒÔš˜ìªó²ÌÐo¤îĺR5Ð<šA¥òâºâ€E‰LEC½7¸ Ùçƒ)à ß*…âhï6’BS·ÊâÇgU!}ìßl´=¥æX~ArcF±~¼v;ùñ¡-KÏ8vwŠGð¸çÚG<i]Ÿ‹o/ƒ©Ö5îÍ ï°ùÂQ’S=AüÖåø¯{ªgèávÄ‹U·­°\ôΠÿê°Ä‚›G“HOˆv‰ô
-Ÿ].AÕŠš[[g×ì.@Úê<Äîót³Â3û̶ú(Ì^çßyNe[êh#¿ÏêÙ¥ÎûØÝŸÞÆÈ{+ÍéÈ7Pr¸øQ(›=•Åñ9&eøé\‹ÜÛ2¬Á*NE–Ü´RÉgàïE5NJÖÒòÞùÇ
-þÃY€£k’QøÒÊ£
-ÙheÞ"Æ7xâmYYuÛ¥þB¥îg[¨Zˆ£ýbÌHqnäÞÖfðoñy%k³ê; ÜZŸá?e5õWkÁŒºw~´Ê|Ъ^mNýeÛЩ!¬˜?Ç"¾xi „j ¶¬yõL3³˜ø“ØÄ7©xÁ¬šãüþ®ôÛ 9Ë,ÿ|-Þ ÁgÛÿ‘)§Ž-õÚÆ¿FîºIR7¼‡ÈÙ‘æ$zJð³Ôª8 aÿÊ.€uTˆÐXFp¼œÿl8ãýªû½ KO5G©,ÄÉód|†}š+³ò[Ò“+µÁaÁïÀ3Ú;_£÷;,ýÔ²Þm¤§ö¥qÊ ß©ï/ ~ñÎäýDÔxMŸ+êü³¡öìu^R ÔÈÞu’wÄžÆ0V‹ÃY#úâ3™W}râ’W äÇ‚=ž©¶[j?9aÊßxl5žC¯‰nýÖÇ1J–ÑW‘˜wÖ#Â*·1 ‡+‹ewîàR¬™a„j>TAØÕEK›Hvá;(m’ÙƦÈ"ŸÏýè‹©Ê[õ¾—ö¡e½iÊ”±¦D§ÈÙ«A?âÚL’:7±}pél*YØçV¶´Ê>ÿv°B¹}Éß~Œi ¥?ÍÐÁyùÔƒ8Œu°´ñšÎqϲ8ùãPFFcã姨»›_„lt#g)g_òÛ¥ 4¯&ÒP蘒QŠGOâó ðUjfNš¥2äÖ¢¼õ%â¤/•{ѣŚÀ£XÃMªwñsºbÃsÓÈ/…|zdø7?ŽÚ‹ß†%Ô{Î9o¯¼R¢|‚>{G‹Xçp9qÄ%þ?gç·ÍÑë–èo.30Ö0ê÷Æg|÷¨:ÄN>ÓŽh–ù]ú0êŸÓâkˆÎû¼_°fÌ”g)ëæC9QgÑ×àtv̬n?1‘XÑ!LEÚÍ|+Á
-f{/çŒ'åkR9+´Ÿ.´Z¹ˆë¾_HðF’XÚ°ÚbÇ jPRG5†¼&d7£xZüÎÉv²øŠ€(Jõw
-:˜[lômîú ¦ Zž×ÛežÝUŽña™§ ¬ôu¶¸D¢eúô¤»ýO¾ æ,Ï*tcPážv62[3¨0[L¶àÝâ×µ¦çD%K‡8¾ÖÁÅ´Ð…3,a¿Qx!êÖÙ èôÃ\?°¸PY6Z=rp´ôØgò€ÍN= ân–U(ÇZwš@-E§1ÂDAŸm,e(Æ Vô¨dÿÍþ»ÀÂÍFšÞZ‚¶¿Í6c<áwmAƒ2l±”‚$oG'
-âw›ôÓeUwdùJ,ƒã.¥Es%ûrï_ÄùµH( ž~¡±F»Ö£Ÿ7weÉŠtDΗ;ÊJ1¤ŒÌ`<âÓ”/¡¹HM«úhö™ D9iÈ©*WZ§‡ƒU
-òðÆ$G`õÅU=Ú»¬ÆS"†Ðhh¢Ñ{H¾m…¹z²!p"4ðÂäSFB§ûx(¹‡|òD4§€õ?"íÜ:Õ]òíHv¤¿(6µeG%zº³»O_çDFâ°®ÍB’DÐ|žëmóËMDÁ ‹‰Cæz! øÆPk’JmvÎ',!eè?kå´ä~]ýZtQZ$ û{w:—”Šã¹¿¤«ÊšhÅ0“öTÍ$-1(ЭŽÔ¢so#\úBÖ9ö«‰óÐú-*rZKÁ®µ.¤èFò켩´œÄ®} yh5Œ¢*m;1þ½eÉËI¸)Å5M"ÆÀ îhª¼8ز”['¯Ÿ@ sa  oÿë÷¤pò§ˆm‹~ 'U;í7Î%“â/ˆơ̈磌W½ÄH°ÞI|R!|S+,~s˜GPnö<z8PŽ«rÜ+iî*$öbêQr{±äùg¡XOµÕfZñ- ØÂÉÆ Úh“lAL)„̶bNBdc}Ú,ôwy‘Š%ÅÊÇTV»žu°ÐØ ú’xXì²s¸+˜2=lcqSv‡~áŠhZ‚C’®à†sÍýëèön«2vÔûÔr¾¤½L•4¶«e†É’GA,#hI·£†…Y÷ÈÈóo—6á×â¡-Ržèq¿¢¹@†þ] ²cfÇÝ|N”¶Šú‹ß’g;a}³ÒkäadÃå™ëŒûXùÏN¼!|¦.µ´YzÖh:BíMPx)`z7ð¶j\§ûÉ+N^Ãr"úk/oq}¦+ÇERQ’T„ ­`WS4n`/«\ÒmgäÒo„=¹Ñæµ!້|K°ðI”ªÙ•!ÚmQë6¦€÷.ž€š¶ÇQÿUÈ9™ùÜûÜž¹øǽIh÷x̶
-‡sa÷æÆó;CöOysÉ”)©²{Ú%.—ŒšÙ‹š«Ö_‘C’†‡ZE¸Os½àÿÒî©
-Üäi–Á‘úŠî ûHó ¢æ—Ú&{8X!…zäeÑFO\XtŽ¬»âÊO2?h‚‹›ë~ïžl•TóžDè7}DUöÈüß=1\^?96À:5ë ü²—§” Ú'½™ÊW1›êÄ%¼ìÞæ·‰*¢„[ä1ÿÕÅî(ò("‚æÛq‡Ôá°Î¦EpTúU+bn,µK!p‰R‹Ö’Í“wÌu’nBÏø9'8¼JPl¶ƒ"H7v?É2Bë=p!@?
-ïøU/oŽG.³Sy÷²ë¿ëŸ·¸hr[Ö‡ Ì•š‘xôÅ;9ì„‹| Xõ—œ~f/ç|´|9D8""kumX©Äøj5âÂAüˆÔ>2
-S¶†‘Âìl(Ö²®IÚ¢o”DXq™{pPký]‡:çî›(âSáTZ
-·ŽDOâ/d]bT|©¶ ïi9—piܾ\ørw´Œõ@90æð¡Ávǘ Q<¡õû™a¬&9£pX$e¾Ë×!0•×éi×2 ¤×bfþ“Ä=g¡(Ûƒ†¡+|Žåبê‰P€—3Ýò+¨?­pŒ&c¬¾Xû±ÆÁìc4ò¦º?»˜{¡‘.#;*ò©áu[6läÄôçrBDAÉg.Áàßó{Å
-…ÊiÑI9AmôPn•7rQù_zð•µKðV主Ý‹GÌô\1Â÷ã,ºîšæöBV–N’î­S6æ3R±U6ì‘á›D<¡2êLÓO ß4ŸJ»6ﲑ²Võ€÷ªysš&eW„yõOáEï±)JÐt>9óÏ—Ÿ¯™‡ñBÝNçæÚùÍ)g&J Ô:þ ø©Z“? nÄ'äË€Èr†xÿ
-¢—§ò=’Á ¿– ý…a~ÆØqN[­Åºy»ƒÈ`a¤^Ú}£ŠˆO2ê†s”Z¸Kº¿Ní|âU É&/5aŸ6Sc@¸Î²¡ ¤$²ÍT¤ƒ‡ôÔ4¹fª€Äj@`}öðÃL¦5a¶TåŽa“†c´ð>”Ú
-œj¿ÓÀFñ®m_ZhE„'$ås”+pôÓ˜^PÏåì6-.¦k¡‘ "Á4–ùú FŠ…òòŒy¡S¸æ5
-LßÌDÊ:Ë*-çÚjÉñ¯4éHtÌ5¸âL¬Z7Yq½Ææ÷ƒƒ<Á&‘¹U:|¿
-":ëýf{Ä·o.ïùêeêŽúe;Êè >yêó,âÇp¿r!óf%ÂlÁB.õ’3Óº*¦oÈÕU×
-ÈÆ®®-®ÅcD]ž£;’Öµ•`¹Ìž=ÁÍSjžáZyëí`êøFÖ—®/,hÙ([ ìU…5LºÉȯÝ- •-¥êŒþÖ>èC¾´„¼™Á%œ!K—˜÷Å5ÉÆ»œêp&÷ãµ~†õ¦:›"~­/F`< †
-
-سMPiÔ‚sbT;÷ÑV4MÔìúlJ³·rEû)nXVffú7Ê·–ÓBÊ£´ÚÀûçŠz=œô5DTKÉN„UÇ$8úv¿»î*8§ï¯Up£œÖ†Wh«Ýd5ø©ä¦QIm³Uq69럶„Ò·š ìåkX›—°xq¥•!ªŒ‰Îˆ½,,»4Ã|f0uQòçÆyú©ˆ±y,¿iFY[;6ó0†¡Ô&½p/¿â|~$°qAl{ºÉŽÖl{!)N¸õnËË2 -²srµê¶}SÓcCl€µx,Ÿ ±Jüá6áâÈ—-â®–78-Áªr ]½ˆc”_é#år@ž*ÎãF}f¯Ý™/2%|Z&Œ¾[üïO~ßÛÔÍ<ÒpœãÙ¥Ö•°—˜›ÂŽ)HLT\”E«ÁR Ü2ë‰Ò—wh­úç‚2;‘²¸%7†El¹€<X›'·3HíF=»’³ñÖ´zâ2MúcÒ<‹¾Ý´½`á“2LÜf×xO]x­Ï3œo轎qÞ¬çgÇëê‘·Œ Ÿä­¨ke1CLšiÆæñqIÖ6’ô,œÖb>’©³?b œù41ŒÛÙÏY³-5Y\0^‘,ê]0í½M¤Xðä‚=Žp¦¯QWz$/zñçàî[D_¢Æè‚¥¦
-2XÞ­CèëÜZ/‘0á->Q ŽÜ±9žê­€SNæ‡â°žM®eÉîL…=ž‡e¯¨ð˜NÏ]ÛðëçææA©ÔAŒí2ÑÁuöŠàûÕ¯¼æY‚Ÿ³FXâ÷úÃö‰üŽ1e &{l@c"à=u8Ÿõ@!%-~ðè÷VÚØ[ð3³qHå½$,âf€Ljm•£T˜¦öŽ×EåüD=à8V:Ã>ö“i®{Î}ù
-C‚Z4Ã:¼ºAùé¦ Òö²¨Ôúð¢\3‹vl­ ºüHyRD,ÂÙÔ ¡v¢³¨Ê3 Ö—”–Ëåâg‰?Æ Aw<~¨lI>¡:¤ýàæ8I¡$CÔñK‘Ô±
-ƒüÉæd|ÉW°{*öÉ]õljFHâ¡4² ìwúŸ3ë¬[zµ©Å"‡&…#ê}´V¡­„*ÉOÌÕ±‘ôE´§™”1;×c`ÉÍ+ûæÔº Z[ºŸñÅ“Àî">à¦~ÁDÁ+á»0ÄܬrÓÅÎk¥}µRX#Z|iÐmUO*w9ÿvᇈä¼wì§M²}nÕKí0XŠ±oÍ5ÀÑÓR¾47Bjû…!FŽ¬çWr¶¶VºuE:CKkm„÷ê¸ýC™óåï =É ÙØb“%RêÑkeÝ~‘:G*ÏÁ2ÔuQ…„(—?ÒÎCÏ mCmý­‰Ø^»eb§»*ˆ«]%ÂE-¯c„HÏ© ,¤;¸_¹^…1K¬Æîmt }šÃ%ùîê¹¢¥ºN𓱯 G¶özNùZ:'¸é¬ «ðh\æ- úÍ”3×>Öb°ð£9PØTQU±òñüîÚÚÊÂâiVíÏÃC˜¼yq‚˜Xß²ŸZ4Vó€péÚâ¡»ÇÉZ÷7Ë©Gø ^nJ ò øâó„ï_÷¯Û;/U[…fÍIž9ø
-æÑ[±þíÞj°gàÒß3šø
-ˆ:¦H3>m3û‘ùýzª(g­ß[æ5ÙL6Rñüí´qî~â´†íSG^½¶
-cÏãcZ$‹HŸ®“ºR¤t»1ˆÎ`Sû’xëõã¥ú®ã,{‡Óë w .)ßÔã¼òm`Ë,cù§râ$ÑE =f¬’ÜÍh‚è¦6ÁÏ“ßzü
-ÇBä˜.ù|Î {7YÓ ð¯•ù;É5´5 CÆsú?>(ÙÚ4ÉvwOÇ«.‡ý&J/Ö[|„¿ÃûžÆ‘ê©O;.~)}0´HÓ.wÌ’GM9šul¥#?€³`ÃÞ8
-Gåå—VgôÔ.,­~o¤,¶Gp®‘Àí­RIKB¦0NS"”m|K¦ëíhwxMg~ÇsÇù ÉÈZ½ñ-A$q‡††KpDÆâ׺¡Î£ÆÁ.µT/ƒ¸éBù…zà÷ª¹0þzV<ëýâjsìëÙ†ÊË×/97’n<R¹1-æû•Ì¨D9ÔÕ«Îy¯¡Æœ~Ú7Óf$Ĭ3.r«}â°«Š>ů¸ÐKÆ’CÍ]ƒp¤ç,‚8DÖ~" cµx¢¢/15à#·ÞŽq}Úû•óxÑÕ„- È[)ÌmÎ[Ó8awžæ'*E×WÜþLOðœ ÁÓÄn‚D1d¾¯>’
-™ì!böá”"K‰æǹg·›@jq˜<žoö†ûšw6
-Cë3Þ XÇsºV6ÈÈu·<’oOéÆ5ëƒÅ'mßú2Ãöö0œÆú• ïÍ)RT|>%OºYž‚MX>kÞ‰Ž`ý>ÏzÆ&ûhRó5°ìÁ^ D´‹ÕòŒæ —Ä©“í†rãÑDãÀYÍà'oLi˜ÝA˜kœÿ|g mt>áÌ.óo²äHc-î¬ü´}FÞ½u$w\ŸDûxìáNÐti”®:Ó?ö`~#27-UŒâÛQóûq}€Šw]ý|`Z¢›Ò/Åt—ù[ß\ŸÏ±ir 9tûü%¿K=^³üÐÉ*kSUð<ÁmÇ=QòY¨Eo¥êò|…+áê«; ª]vÞ˜ä÷ö¼@¦»~u&ë ¦”Z7å*ÜZú×QÞ71µ¢£òûµ8TbÊ@¸ë‚óio_FKÿ¤AÜ2?žåýåýÙK΃ŠP±8r¢ØT ´„é/KçñC
-4?pºvÄùâØK©3`îÈ/ yd6®ro—mo-×=oѺà ä²3òVÊòñPž@Šøên}H“/ò‰ðü-„Ô—öÓ÷_<†*¢kôC]…àVe¨×OUƒ÷{ÙîÆÑZàêú[Q¢^uùUï“9sa3‰@v²z5«±Ãî&É™ÚDÇ»ô9„Óƒ"w*ç‚eŠ7°2yÑ
-‚ß°(—ÖÜÛÈq»rÅ£M¿Dçí
-’\Õ £B¯€ÏrzÛ¯ãô ÉQ~X|Z—©ó]±ëÁ|;FÄÇñó@”8„™…w-5ÝxãÛïWÕÎÓPPU`Õ®°"6aŠÅyáE{ ¡$fJ‘,jÝÞâÇßA5‹x…“%ü5¯×‰žôqû¢UhVKvÖkx1Ý:™ >g aiSjàÖdjqùK,†HcYÈþ+¸V¹`&ZIsïâ$”¥î\åM¸zI<ôìݸ4Z#çm¾ùw´°´¢ É!0L¾}֣Ⱅm(Ø3or®ÆhF._fVALŸ•v²YUÇpú9™JJn‰#3…ti 9"‚/2
-YœVœ¤
-•kÈÙÅóæs –NŸ'õ%ëWA¥ªyPP_$gRGG­Ï7eWSÓ  {ò†#¾Œ3u0H<Š+\ ÄŸ×fÓï÷yêÊ<ù©Ä¶û)…\—s…†ºMu.×Yž*µCøq·F¬¡wÜõôœPCú¨Ùk¢§{)ò&ZëÓp¿; ³Ršìg¿ûAñf’û¡âd¤§v{Fú½åÇN¹³¼ |Á3^KA 2:¡Kæ ‹ù¸ÐÈþB`.¶x.?þj•6uªè»÷7ð˜äIÙ@5~g­K­kÜF ”¢ -[…|”<Ç-“ó› ïâ }|D7®ƒf—¡…z‘d&®x‹âD#“zI*#ÏׯÙ2C/¤0¸!œÊƒÏ±ô¶ ¹"Dø‡ä¯Í+”|>.%*âm#—Öüf"Û`C}é]aDó¹»k¿ZQ!¯Þà ÄÃx›R³?Hy§ªÁ çâºe‰ÑS×–Ò©iU¨²%?³]+.ØŽÆ‚AÅuö3ðRüêwSHI{bIáënÛYZ–^®+‚†n‹O.Þ’ÜÚ
-]JÑ|K&Aö—t¥·ÓóÏ7WŸ¾Ç•Ë"”Pt7µŠ?fytrá A£ÆýîÄû"¤osÐÏRüóÇt?zîðßyZ‹”Ü¢‰ýÚ£1É} Lpÿ}`tRž˜«z<ÊQ¤ÚhÅ/÷zÔàâ
-ã7P
-nýù«Ì~…ÜÊ1OjØã;1'þíƒùKÆ]ÐO{ã1·F—®;õN×yCHÈ?0©…q º"ë*¤î½Ò/o|mdæú¾M›w
-ž¬ „TÊ=ðãrâ¹O6h|Hðw‘ëöÃoz¦Ì‘Gp(*ê¤Kê‘“ªÒ>”Úúp?]±Å!Wó»Bfð‰Ì
-3uäDë» k†…½áT=wó#%.ÜŒÄlÖo½´mêX0½d}i¾žŠÏL9Èòz¯eEU\|édK}«‰)ÆDšrDé%ö¹zœ Ì5Ü`"±«BdÕ¹—ê·úpM³âv—*ÉÑÆvSï -Qyž[ÍÉ·Š0|sç‚ÏóŒ¦e§EW‚¥&U-AXÈ•Rº"N1Y¿$r‡²ÉJ¬IøÏË›ó…i­š7i+ð2
-Sé—Hž:¦LÁ´¶S(*ŸZÆŸáã23r7gát¢Ø¤Ëú±ãbĹÈf‰Ÿ –Á)ð+ªhú,¬eg1qµÚ·mcW3¦ÀƒÙÄfXL¼’~…¨&[:è¾óý€N¦²M7͇ð£ÃxUšÂŒ´â{m ‡wlèVc²”[)U+S YÌ ÏS…´‡.FK 3Ó ?r–.ŽA–P§„_ó̆èÇ5§‰ðÈ|¡ §3-)´}éÙqÙ/ ^ŠŽÈ!„~fÓŽíðü §Q‚Y¾—w¸~ô¢s¾®v”L8bv¯½&µT:‰Ço?×QÌEJ&¬tò &ËbTÉ„ãßÄ©”@,Bª¥
-YÖÝ€Qç9x¸‘H¾çT8ø•ï-\ àôô¦P½
-è{ ·ª;+E8ÊV&ïsØå6!Š5¿¶·o}MPûQI÷mko=<o‡ºj¶yR®ýHM§õa CÖõ¦ß3_Œ1uV!ûT¥×ÊI£Œ7³ÍÏ4ž³‹©qW˜Ä’&³EæûøÑÜ)'ü~€þQHᙉˆ)2-ƒÞvÙöFU09ƒ†0^ÖÇÏÍîfnÒà|`ã”ì Or
-üVB3¡ÀræVèû¶Ãé×A'׋8Î(ùÊ– THø, “•àk`†$u¶U¨ßï //ôt IõÒ/ñÓÚx$/è³*?÷ð̾EÇË'|âý}tD`C»:°{¸2Ê{ ‘7k'é‹©·g>†(wf…3'qyžéæpÊàš~yß’ñ!käH Òuª 8²z¬hÚýhX‰ƒzÕK þË•+þ-Ã!¹VUZPáÏÁ¥¸à’°ý¡©ÖKÕáùâØN3DzXòùt:ªÑápϪ&nî>MÌV3úv.(Ûk„ÇÕ›×øŒeðõ„ô©ã®TW§™ª
-=ñù`ŸÍÖ^/‹³ßY?—¢­¼Y<ì=OT3!ùÀãrn+)a'› oäFLE®@å²ôs8üXu‰  ·Sa]=¼
-ÓÀ†öRÚ73x!ÛC3^ÛvÝ\úŶÎ0Ê‚3’Õ?ïÔÄiB B•m×Ó‚Y—ìÍŸåÁt£ŽÝÎæËz¹äãÌ>_˜oX¤3eµ9òQ@£È¾|p_m‘›Ç’›?þ^Ø,FŽµÐ½¿9Ú›s“6¢9t–âôóOÝÅ\‰mBÌÕÆéf™ÊÀz¸)ñòk ÎÂŒÎüL‹ä?J<aÍ:¨-2”ÌfÀŒ%öMDò­¸½H·W!‚ØSjiÉÛ^LxN;A¼Š¤“ Ý!}߃“OƒG3nôÑ|](Ÿ;÷•˜Ü$+ïüÞ%³O³3‚)ÿÂ9«
-çÛjyó@oöƒbŠkÊ…
-5{ôD¥F»®?ƒ[sAˆ2h/’c~ÑREñ*ª|qÔÏví&Áûi·‘润é+÷@-EâkëõœÊí02¶;–^ŸÛ Øwå‚ÔeôµEy¤|×Á—¢ù¦;>cÖ£o$ÒŽ#0å[§¹³6|)?,R4éŒÀ<ÀŒév~qʾ œ¬Æ$E’a„A­­“tuÛQçÚÛýôkÂ&i§ì¶xn ®¤öoÿµ
-jiíݱêЉ¦}¢S¸}–È%*˜âöK;¸ÉHJ`‹¾9Ó-ǘm׉NB¹ÉÞ‰öMY5óäÊ(o2Îweî·v«“·åAánŠ`±ŽŽ'7ÙÚ.çÚ‚2uãË›€èºYå†÷,Ñ+Þ>!,XVjT@HtòK ùÿZ#¥Üƒ‡Í ]é¾ÐWéÙ9#÷ì— ÅÑü4ŠŒ¯–„éã0ñyBxîö~.CP- ŽX´ðgû.I*ü¾ôÈéß?¦–o\’ÕÇPVóÝckêÞ<âë[eDW9¤g3‡6˜ùý×éyÄDÇp™¬G7¯¿cfQ?¿&^ìp’›4 .…„.¶øªåê¶Û¨… +–K#êW"k¨Ií@½Í¯Â ‹á˜î!§TäÅ]WÉÓíR‚Gupcå 4OåQÁf‰*¢É<”ÞwqÉ4*9?.Á)Ì JhÅßy3¦Û7ýò8H¹|úGÈû
-cfš–Ë\7%Qب˾QšWÆoß‚aÿ¹ÍÈèv(“m †ó3’˼bh¶rém:dÄÓï­i
-›ô7“> Ñ¥Ó¡6¬ÑÉx
- ò_©iš”hA%£ƒÂI~1æü¥¤þ¤ê®î²áÉ¥¹‹ðíô0C'±jÙ)^
-©àðFEÖ›Zð)¹øˆÏÞÿ”™ĶŸPöbžìhB·šqUtnë
-Ö*ê<ýf9p •à5™­‹õàþ}¥¥ÑR.“ ¬ 1nBŽ“tL‹Kä‘.T1Àm,î9ÕA<²^ °¸›ä-xv0êã×”TóHèí,û@P¸j0{ê9‚'6?R•Sºu¬õ³€Úõ
-–ÉqD]sù¸:z6©Î‡GyGÓ\¨£:ðÿù&52œ“{Û÷ýD‚#ßa­f4Pë)œ£Âç×ræ¡×ß µ!U°œ9ú#¶¤™‰0´/=3Ô™cBKŒñž=Ãü¢f
-ý—@uÕÿƒ 2SÂ¥³kŠ lå–{¨ˆ,]*\·÷ÍlÒHV|_^˜Øp Y«aNYÍ:}Ääñþiï"äaŒ$Ú1}¥ý8?5Ñ>@
-JÊ”
-RTÒ〢•z5/ÈÅOç“,ùf³VŽíCÚ(„k>ø,A×x¶ÿÄ< ò¤ÏrÓA— 'Uï›´i°ë,NÕÃ4*Я)G™Âw…ð çÂdÌƬ:µ‡MþU„øÚý_…ïÃë³e^ávŸ)4LQºGÕêT?Å;¿'hÀô°Ó΃}¸áEà‰™Îɯw.òLÅÑ‹Í]K”p E¬™ˆ†JîñÚ“UÜB¢|Ô´5ÍšJ…>¹MU=S~?arö[ÔÔñË<ÔÖ®U¥ÄŠòjÈæM:½Ÿš/Ï–¢þD°lfŧ˜¨¸ed«pJÙ Åÿ<¹ÓÄ Äö£Íð ÛÑA¼ð̼ÐS2C¤ÐXâ™{bm}¦$Ë®X8``Ø S‘¤º–Ùç-•1w–\«È ‘ ¿…¦»T•s›.ê¼Aò¿®éa?Ê&—»‹–êθŒNM¹R Qy¶%¦¬9Õöf¢ëé RâGÙ[­]šÎÓz~œÚ†³Xê*@¿¸‰ø;<­
-¤\gV#H3µ³Æ…’•™ øCÅ/\ˆÊ2Bò „´K¶ožœ£Ï4á@×Ûß Ò€‹ó=¿%]ÏòeÂïÑNÁƒ)‚wYIXU´O)ø~÷OLÛ˜Q#Äwq!R𔨉@ ¼ÝW¯aßuɳÒ7Á†“w[ú?Átâ‡É ;ʵ‰¨†F¹6!è>‹ZϧƒÚ“Þ–õflæn$ÿÊ tb~é¯í0éD¯iéS€`nÁ@ÆË° »=MþÐbÿûpÞ€•XÅí ^¢–´£#ÔIYBsD0‚BSVÌñ›,wâ ð›M
+xÚ´¹eX›Û¶6L±âPŠw—"ÅÝÝ] îZÜŠ+îN‘âîîÅÝ‹»|t­sö^{¿çïwåJžÜCï9Ƙ3y
+E!S°1PlëÄÀÂÈÌ•SÛÙ²|bPš;[9
+f”cȃ]ß„
+@BYAMQ…†ñ-°Š³ØḈ¨¨ªIÐD…äUÅ
+v°¼]€ÖÀ¿
+ãlkúVN' àßþt 2Ú:ÿ8‰ƒÿVÚ¼•òÍéMîô/bo…púÓúos€#øi,Œÿò•UT”Øl€¶F¶&o†NFNÎŽ
+ñ_Œßªÿ‡/€INHMFLîÿ›¿ìÄlMÀ¦ [s
+tûkX
+¨2}ûü‡‰œ‘“ÈM‡ùm ²¼ÉßÿûNï?Püûôø‡·°0ØÍ“ý­7 ¬oeacãúSïÿð5ùû@þkû¿èÿâ?§!
+Æ ínªÄ‹«‘àD|s7-²«  xSUs!Έ‡¨/ž15©*…L%ÔÉf­RZ™½¼$“N+§& ^¡øãÊô÷.Î/oͺLýŽ”¹45¬Í<›ñ‹”ÞD—!+Я¨«¢z=å/XS-ˆÏì16<Z†5˜~Óš ©y¢ª{OÝ£]¥5ªŸZªø_ à Û)Ú¡ê>S›Gð´ëªüzôå—¾…¹TŠöäü’Õ‹¨
+¹1wôûÎQeâL¾/|ókêTÚ-ýõ¯þŠ½>Èroª‘‹L2J q/ÌüW_ï?Nå™YðzѲª]ÇÏ,ê¯êŽMóAßYÄ÷
+ŽE“¼ßPŒcÒNPØÏËe(m¸Ó7ÔGû¤&8—¸Ò%®Ÿm4 ŸéébÑf™Í°íÊ©‰Hhã·.ÉÛ>öü˜Xv±@ËvMYŠK§!R¬»¸"°oÚ
+ÿ˜”¦1kÊŸž[AàÒP8¿„^LëbðA@K`,¸¾O¼Ý¨1SY¡r;Ç%t• —]AÐ4z!SÍ"jžz‘ë6(«‚_§œŠfRí†-£)11Û½6äéÞ¬ýÞã}Ð{'Ø`èÑÂß
+¬ÂŽìV!ç ‘$JW·i<nq.tM²êCñ[V~,÷cš2A{ ¸]å¬@ñY"[Q­Õ`ucóè#÷EgÎVê'};oÕbcT—c`ƒÆ‹f#éºó‡ÊMrÖvVIv™Ñµ×yš u>+;Ì6ÏšÓ•ÚKs2 WPë
+D"Îù•µ<¸½n5~ W·L³¾¾ÎnÔáxÁ7ýƒ–&¬¾!‰aç•Ø º (XOm…ãZ~# ŸÖ8PtD ¸± 6ÓWÄaº>M}¯Þ9ôØøîvözæ´º¯܈GÁ˜å:ÃÆfç:±Û;ÑóêÅ“lVD“£ïEÑUyýD‹TÙ‰_d;\¥49õœ÷Žë(DÕÌMôÞ;òBÃkÈŽâ(¹^š×jå&Áì ñílÍlœª ]áÇ6þé9iy®Ž~’Òqƒôt$ãùƒöäÙ gw|Ožþ÷¼
+ÒÕê¯m7öl™1(
+s±¶¡WóPH*JjrAÜøe4=ÆhÑÇij”Œ×„JÒ[fô4¨X>y=˜¿Óš
+%³£›_ØŒCÙÕKýñ“ÁÑâ8!Ìþf%J/éà÷5Š—¡.q, •Ï“²Æ§—k÷•„ÚîO\[cû8(üZ81d‚?`_sÓ£˜–i%žBz·ÆqÅ3rgÍJâ„ẲÈn†··ëtkÑ®6ý¹,n}kÈ|ÃÀ‹/j³±Xé‹ŸIz†²QÌŽ Æ!|7¹î;x”õŽ¡‚¼í¹ÅÈ¿ý4QÏ-®#oA*ò­Z„G1“?«òîãhkˆD kÙê}i΀áF>íõq›ß~Óš¬NàP}”ÏÈÝ7,¬ëLôP|ÔW¹¼KàÏ¿å‚h¢~DHø‰4øÓÒy¸‘#™› ö–å‡-íi®Yâ:Î*.bsúô¶×ùƒèï¦BõJÆ€#ˆ¶Õ<Ôãl K׬$ªo€—ÕÙ–k’ü…&5q’Ÿ•fÐ\:^¾/†Î¡¯¶{4|Ý.Ú¶ò«+„ÎêrZLK½÷
+ÎæÒÒŸ(Yϱ޸ïÓޙݰðµ}ž©zG`ê™Åa¸nÛzEù+S\(¿ò¢?&|Ž6`Ê#^Yá“­âwq†ì€vªÁ_÷ÊM}×Åiƒ¿¾ÈI®ÐŠ“&8ŽÄéU{»õCÞ¥¡¬Ñ:|ô¯ÐÎAåž›½ö­)†Æh:jÆ$*/ðC>ù³Hû­¨TsMNIk¡’s(`¹­ /î¥2ÒñÀÛ
+« _Y2Ý\”c–Ô—~å‰C»“*´‡ø²Rßv£°:x¾ÀñÊÇ U[Z©Ã'¬Qg΂{Îàìex¤GãTI£@= `E«Ñéô«øì´±¹éL¥J=cïçxg¥P?uð ½4?lùà/ÓkÊ2£K7’µ%Âü_¡£'.¤ù3èDzàoÔy‘¯‹aªÑ¿ÝК>¤ÂD¹£Àî<ÿ.íÈáˆo¯¸ûŒQ!¸ ¶WÅ‹òìê;‡‰b®lNfr.»d¿ûá±*¥:QµáÇ4úI„ð¹âj Æ¢xeú83kªï ‹{æbç‚UncÀ KåŠrý2ên[b½WãaaV1û†hÍ༩t¿FP%ɯ*°f¬?…ÕÔ¯-Åw…a
+kª.k§Th Ó÷”WŽ}ÄÙuÚÞºi€ Ž¹ñ“Ø¿Fˆ+K4¹Í«ÿ˜ðÑt¾ïæeW§Õ¾}_°ÒCœÌ4à%+ÞÝ((yë£j[› ±.4#Eí $ïxheS($@ËáiÕø`n´äûpYþ¼åÕ[Ôžc}S¼×÷1»8$3øÊ"˜;^Ý¢#˜~ŽÁDÊîfJ K¢éÛ vAß4´€ŽyÉËëùZú*¥÷óV»•Jñƒß¸#Ùð$˜í£¾µañœ$}‹î51ëúî«“i'úÁÞsû¾a…ÖWŒ%É1ÎØÃWY=Ô•é B·®é$\-ÅXB9‹öž´N–h±áf|[¤q‚ùØ/ÓÕ5ªyÞøáR†é#w¢e>PTÑêY^ì”Ê9äV#Þß{Èa´&§ºj½Aú 4Ø—ªšG³¨½¹.‡9ÅáÑ"¿£¸3¸Ùÿ WŽ¾UËÙÞm$‰®n™Å÷‘Í  Þö Ÿÿ‰¯ª©ÜÖèÁ¬'3æøݘ”x*BÜXÿåy5z¨D…gGDðåKýz)úCúÍ @§Þ{ZU³..È[g£ чX ¬Ì+È- iÌñUvŒÔŽú…³nð!cöלDBÓ·‡-@A§”Ž¹ÖÇ÷HÖ÷ÙRÌÌ»„@ƒŸèÌIËÂ\}OÏÆdîP´ô9;O…
+ˆ!ÖnjŠi³Nagöp‹ ¡‡é€Ÿ=N7'®©Îvˆ »SjP†ÓªÒó¯+†jÝ'íÑ#/‘ò¨Ëª¼k·¾Ù¼/¯Z~?˜¶~Þ0Úu#>+…Ë`Ö¤¤¡AnwG"û…ŽtzZÏhè©<k¶ÑbûIK%•¿ì®£Þ‘¶‰HÁ<jGÉÆ;ÊÆ_q~—ócóN»€Ìß÷à¾x
+7T’é·iöDÁVÉ#ŦÛI‡ ˜…OðÅÁ¡^Þ KgWb›¡n³ÙþCÍ•`I¬´+nÊ>`&5¿Ë&ñ“A”Ã3ðX³ýEo~ãú¬# P™–‹vGÚkÿŒ#Õ#dæÝ4¾õnÛïbE-ÖòÂŽíȴ뛤Ä! %°Ýå`~Tý‰Vê$$Au\ÀΧ­p‘ _÷
+ÆDÙ£ç—2Ééy0nt6½†©A´CàöCf³$›áÀò³“§˜’.ËN-µß³Y7ÉR)Ý8±ÈÑ„)X†ì… 9xËl -øáUíãpZ(;7É}™y¦ƒw¾MCv·¼<ÛÀN$ /Öì°qÑ,
+@t³†ëÊO©_kÒcÈ1Ó±Ìô6åx¯
+©ÂÐnƒ˜Ox.½Æz›’m3ªïÇ€Ù$¤´óë„©tÄ1(ƒjÍtì‘j8æW´/kÔ̵÷]DC˜¥Ëü]Þd‰Ðµ“«•ºXŸ<‹£µ…‚>O~±N’‘ƒø
+,y%ßË"à6;ëì“q?Ñ
+x%FÍ–¿˜0â¯n“çßgNÁÉB˜
+«¤‹ÿÂõµ1a*îŽÞé•àvuÁ(A0+ʾ”bA¾ÔnÛ†ÄÌMlv™YtC eÄOíDQÍ膖¢÷Òœð–4P–2¬?¥>zË¿gyÇxCÕŽuWâ|µA.ü™KURß_s.Úþ^¤è=+àJ‡ –lå»Ð‡ìýšöûÃÚÝ}õMt…T3”WÙÑåÄŠƒkÙå ¼E ]"0×Ê}ÕÍÜñÐ᤾i@ºWFl”ì‘Ä'«I€ ¿=ö²x䧖2'±¬÷q
+‚|MXo¦nUu™Ïjɽóq›+ϱ³sL‡ú¡Ú»¸¾Ÿ?y@ósî–âBK€Œ9ÍR!‰2ÅêDÆípZ;¢¬¢òò6KU|6O7;_2”°¬ð9ó'ÎÖ‡žšÎS8áh9Ö?q"¤êá±Î7¬B…ÍÝåÒs6:#7\FùTÁÅ/c1júWP]~·~þ¼nÕcï™m•ÒÌèï”aË[ÿ)z²QýCÊDË‘býÃQ¡=ëwp‚ö dÍ
+çÀŒš7A>¯ÌÈT~²|E:mFmÜ¡n7z@³ÒqæîE¡dë~#Õ Eš¿B &Eðîþ<Y1'S ‚/Qèm¡ç…|@V`ðž{¶TwÇü)fdZ¾¦=‹žÆ.¶áÞqœQNb¡ð¸¢cÉmRó‰-l‡ @PЗBÕåöP¡ÿéoZËÄä=É#ô™¿C %‚!Þ¯ôŸFúIté”°g7Ø»€û° F²`QO}mzuQ%`Ž6í[‡Ú‚[®ñ/ì.¹ °ež±6g–Ýa{%*fÆmµwJ¬ž³ópÞŸ½8e}q¹© vsui°Ó²PØC@6_¤·ùèF^*7 5rª)t¼g¼ÕÝÕßý¹VžH±LFÖuÔÎÁ(¤ÿ²ÔmÙ²5ïÐþØ2DÈHÄ‚^á@
+zçúÉ^
+aE«±4\,ãð`žâÔ¤ôìI&d²k•Ì6Ôä”æUeá±öˆP¨\pâotÏ·ePG¼–Ÿ×ÿUØl±¶ÍäR5V®ê§ÈfOÕ‘æNÞMx¦4½·‡zȪº9숯‘î0C¹¹LËù~#à]-í1qnx7–¹]Ž$25LBk«•Â µlÀšeb-óúw&þØÃG%(z˜½
+ÌŽp($%[ž§,Æ®R‹IºªN5`(åÜ1¦ëèHi’ÒcN—]Ä|>¾g8»”ö; ÍóS¨â%â–ûi#t¬ ܪœ_ày>Ovºo¥+œ"óï±éšŸÑåDhLi¡¼ý 4n|¤tÕù9öS{ÏXOÉ_¤Tûèëš­‘þ¾»{‡•QhƒÂP_ü-•ëè!«|&‘ýƒŒ®‘\£„¼Vã
+¨ŠÚêhR¶€x²#ðâ®gÖ.d¦Œ5ã3H—»¡ø^½
+›ÒOwIáâ"ñ‡!^ÊÙ»•-gtHwEöHñø‰¯™Ž½ÜúŽÜµÂCÔ”R¾ÚÚµ¥†9 &ž¬4
+`e\ûL³‘ HÛ† !^ñRTf´b¼‰Þ–‘UbÎ1ÛœT8¶npˆ6¨—£uïRÞÕ“’{û$:‰‡žï‚JÆvÓž˜ƒÛÐSY×ÿ˜o±î¢aQþéTî|ÁƒN¨MY °%iLo½”Y†OùëÌ#¾à›-!f’4X¡1-DÞ)z‘DÂqÆÚ6ò€Õ`J@?ùŽaO*¹©wð¢ö»FŠi@qËE•ë¹.fû’vž…kßü7íÔlV¾UÄ_èp6“ÔFK Þœ÷ö’÷Ô+iI~âT|ÙQøÂáqæIY¸tmÓÐÕ‘_ šKn§(äèÐ µN„Ây³ `!^ô#‡o¤Zî" ¨—T£ŽbcÛ¾¼×D®dÁ¿Ýn¬(¨<d:=¿‡`–e:-d~™Á]Þ#ñD{ +—vŒº;®ÌbÈ8Á£p%ùÎQ°=]W°Åç0/¹s‡ª w¢1íSµDaævúž >jp<¢Muþ}E׊2ÜoÂNˆ4¢têz|r+èÏÛòÀ³®ØÜûŸ_
+Jë~™¨šaB}ŽßkdiÚ%Œt¿[¢‡]f-C¶ØI¡!‹Nú÷í;¹ö²‰ôl]Á|š1úý.]ùÇ¥B{…ƒØ™ó‰SÒƒ\¿Šá¥Ûq1ƒfû²šçÃ…¶–û†%½ut¦yY ;Ëçìé€KØá\tïÛ†OD‘ÎaXnòתˆAÙå§&×\l½®Õg‡žÎ'·ô£2U r÷ñ7O­“OŒö1>Jh´Ûá¼³ œû®Š²|§R¶¹’î^$¼4š9â[†= z@ÐîHÜð‹áŠ(È·ÅbùòîgÈ.åJ*Í¥3¹}°Ðäi;²_Ô¢}!4€¸N'ñÆ®)ÿ¦¦À}º%ÚôdŒ
+0æV*]ï¶uÒ‡éÆx&ä<\˜?2JÑ>µ] ¬ $ú‚uã°§rîJèýÖe¯·,”‡é¥ÓLû¶ ­¼äÂøëê¨&=ÃC æÐaí. ô÷€“%¸òõ)qÏjDí3Þ÷¹DŸA—"¬ŸG¥à¯8é@!{ʽPÕŸÀ2ë^›ÕÄ`ðÍYB,F2ú»ÙŸ=çããŸÆ&x“•ž¢OÛ©ííÍã}
+žÏ!çŠîòê²4oFŠHôÛ†mF2H¿+JÀ”>Éú¶¬ŠŸ/îîñ~œ3þÙûÝvÎ2©<{Õ´Úìý¼æº·{±¬©óǦ«Ôì«Ã<¯qüÙ<¦lí{vb\›~ƒ-,ÀnI“Ákñmýr——b5м’à^³,æÇéuí 8ÄYØÛEnYÜ—ÁÙ×m…Hw‰š˜­…ÚàYÆÙ»EJÆ”ÑÈ%Ÿ 7{½|s õÌ¢°|z÷¯fj˜mp{sÇmÛ¯Q&ë×Ú{+^1iÜ+s/•ÜÙ4dÞož³§éAê·_
+¶K(<ÆJعú"â/®xr+LrV¦óäe/CWê‘a8#ER,éV3âÄâyÈb7ÎKa‹Í\öÞF@GBPWÌîähj$°y‡‹Y^iœÃ%0«cÔxÑŒ&#~+)ôý’!`]ƒÈ¥u‚,%:SD9ÓàR¸'Á„SSŽqw¯ÝXs.ù>ÚShñ×]]åR‰$äý÷yî§3XWxËÁ×3µÊAÉà³®ï(f¿+‹8”“¿/é)±âãsbÝf­rîÖ7*+Ç$Míè[{(w÷£7‘#ëð÷-}íº¸—ª'«8‚ÙUs›÷œzÎ8Òßs8½Ö²lü>b…æë.<öVåÈ«©pÂ:«;Çk áÉ©CºÝóa¨j~fAj¤ãYFúÀ %„íÊw i~óòÜŠY˧
+OhÈý$åºC1ÛÖW5óSˆóùžóüä/°a“›ŠJÇ‘Çci±=C¿B8.ÑñÈcN,,&â"0„ôîöÓò^ÈPP*jIÉF¢ö®ãLjDó>U"WÙ˜¸Á³iÚç ÊA¡Ï`1f·@ÃimôÞA®ò]QTùi)¨ex—Wn<6E¬q ¿3ë©ã<öY™‰oÐtéoøkVšÜìlÌØœÆΞý„î²<RìÃ2w~ÜIíˆþ„ùbŸÞqóÿ+úybŠ/yâ‚ï“"©2Þâ J0÷pÓu-"58³ôã’y±¬Fñ¨•tƒp¾GU}˜“˜_î)în“Úa<Tó*rÓ剅Ï 7y² aaÖŒ6è8j–ˆ5iíÛpÁéJg[Kg§·¯ƒê3Ï4@ ’dqz#¤Måîeæ’“­ *¿
+*áÝZ%ücËíÜué„øÓäNp MG×)ðRˆšbC»n«_bŠÑ餎¶üÿ˜
+¨KU°_˜ØÏÿ$lq‡âF&,p³ó‹îò!M•ý9ð ©i6„¦Zz¦Päb|2‚²
+£Á}U"5ÙŽ• s$.˜ë©ëYz/–üÓÙñØÏ’iblô %£Mƒo7¨Ï×±ÊÍæêÄwE‡ÖZ1éX±#ªU
+Þµ¡öÝÌu­¦ïÙÐø¯¯’»“Ý/Z®wÝ‘Eâ_Ìíwáù|ØÝ+Wá
+TÎ –’: Îc ¥Çk4ÕÊ…/¥¾–·¥ÖtÝÐ5ë0’óüí¾¥*agC¡5Vù-œ¶¥w™+¾ç}¶2AºXݯýüÛ (©Y†Ð˜µTE(ì\«˦ aO´(¶!Ó&Æ⃃Öò9ÛJyÂ|½`ù“aØÆy‘á`²BÌ3/
+4SZi£°O̶æD!SjIŠÕOÂìvÓ•ƒ…‹Ê ›¬_’ç)•ê·Õ ½6ª®«ü¨.oPU.v1ŽyîOG¯ÛŠ|¼âÐ X¾ÌQ‰õØz~iGša¢ú’`„Æ]ù÷Wµ§ÃÄmÌÿâgÔî!•ôøú}®P¤ûy‘ç˜yö%Fû ê¬ÿêcw–"Nñ·EÂÒ.`nÆv^|Ëêºó½PϯOârƈd2\9ÛÅZò°êÊeó¥[°
+N«.u™2è¼ï\
+}kPÈÄ_­”¦©åÛrî,ý¶À½¬À d’ÕcÒ8˼!зÊÃ_ã6šÖI™j³mêU=!®ÒçËpfˆwrPœÏäZ;ó ™Ï¶†Ç?»xù$m°Õp¶KÞ÷Í¥d
+ÚN…å¤ê‡QÉk>¡Ã›±çÜ"¢×PFa?ý¶‰,“­/Jô/í1¨ ž6 ÎWjÆÝÅ«6òíZ’ ŽãÉûQ¯rµ¿F~Íä×n¢<A÷.Õ8æ¨ôRš©N–¯àåˆ;ÝÍ0Íø|¹•ðÀE½œ»s™Ý‚•i 2.Qû ÅoÑo<ÀcSÀg}hLý›‹¬L—,’9Dô%sk¬c-X+òn?xÅž. –˜S¥“µž÷¸ÄXåßhîø}­ùmÖÜCvãò»ó€Ã•>éKæÐZ'Ù3R/€‘ÿLH¶žì§¢µ.ï>g Ìf¶³ï«¨1´¶¿Jú³ør¶Z)D%uãËYš¡9Rp7d®¿=Éþ9øt•Ñ‘áÁj­¦sb%H•¡€$–G™ž}’+Òá3¨ÌM¤ã×!©e¬|7Å1Áóož"l¼@+Þ1= ª(ÇF8L…¹¼tãšI/‡+õ°”ÊÒðÕJ—} íá³Ðè’
+¨ï6‰–[l+½»ÇQ]
+«• ³ÜîOËê-2x/Ñ,j
+ò93µ>“<áï;À<Úù~ÌF³º‘½À –5ðÖ+ŠJ&á”A’*!Ÿa›égõ˜(¼TB†x4—ª>¹´}Ä:×Èë:ÅÅök×ò eµ~eÉí_N
+¶HªûŸ1a­ÙÅûžµVj²ôÔ*hóéãNƒºÝü3PÕ_=Ã>w»K•W>“Ü«xo¤-[RèìJòðdóò­ .QÃCNßD|K ¤½Fl›hÞjB†ËøÐqœàP =üccˆÁvö­ù<n6ˆØ2ã¼*½Dâiì‚1+07N†**ÚŽ›`ŒÍ YDä~pŸ¦ËW‡
+
+eâŸádk£YŽžõ[L¥üEä?lSã>²ÌÀ¨€iÇ”_Â[[“Üá´‚.Ïß•½˜»ò © ä£p±DËäΖ›Pîˆ<Š ­ó°ƒ${!}Ù¡ÚË“’]——„˜L4¸poܪÅhøu~GyÆ“‹&é†Ñð/o`¨arVfÙÄh™Éy¢A¨ÔAÊåí*…[µLR|ßnûÄ»®ù®úõ'‰q1™eÒÙ-±Ã«rQÞ
+û© ÔŸ¨×±p×`7£Ì-€Y]/û»éE±™"SŒAÆ 'æä Ù…ˆªÏ4:âUB¬Êpß'·NÃär6âãY×Ô·=w˜Ë^V±°ú¬±DçþÁ8ôy8:iª˜ú:l('ÝÙ±Û Ú7u)­iOC[F®¨öèÓÊúÒQ¼)«y´ë¥Ÿ„Æë8òŠŽŽYäIÿÞbn•ÃjfвÓØ>9sß6ê#SÍÕ=*=êÞKb”;#ÛÉèQ¬}ó¬“U@i•’ðÁ?˜n7¾äô ÿŠ8[­ª‚ >Èf•ãq®‹@Á2ÓÆYÊÛ}Òp¸V÷²UBÌXØ´mÍý•(bOõ#CýàŽ)&5›UCøpð‹[ˆê:ò™sš4(°´Íü.njėã\ÿò‘ÜÊk=œ1+“9f$—^{áVuw@Dƒt Á¯S±TÇâ|èÙbŒù)õ]ŸŸ+ÀÐÒº´%ÖC¬µ?‰êQY®°­p_™7„õwÜÆ!uCæ¡ú”8šJÄsi¶úa,Út˜ù´ÌäÏIGpÅS¹Â?Kxdª~RÈuì½KöZ£tX3v)‚Y{„çt¥5à7Ÿ¥Ä<3—Hå‘öíXÿÂeï
+b¶ãH´‹møéܱ‡Ì=g;Ü
+›Ú…¯£ðÎÑ_ÚdžÞÿ
+îŒP#.?àž*‰×í>½öìfÎ#vÎKc_Ç»€Pû
+¥#΋H_5OsiD
+|žh1µ8/>?,×Ek+÷ÑHí\®:ä*¨‡J®Îí[jrêyw=·"úÖ-€
+l{ÝoíÆh> ãêȱ¹¢\¬{‚œæ!›+âÈÚŸLò1+¬®~Ð{¦ÿÌöuý?þY¯µž†ñW¢V¡«eÁA’A;žtéj;Å)F!n»ÙrÚ@ˆEe·–Ÿæsænp èÇÑ‹WS3Y®6¥fþFl.À ­?¨<¸áÛÉ×kaqÀlëz
+¹XrTX“µ•Ö'´¼Øb,ëôbÎjkS2±-—Ó•dÉ %Ö.ø'û%I”Œ8†×T"ë4˜¶â»Œœ*µý;Ì”rAŠ$üøz¡:7ONÕƸÕiÙ6M9í)XocüX'.5qßÿÑN>°jÈ8Ì–8/¹ Nµñ HMÑ7žt­©ë0DN-U¼¡\–vñDH/êAüp·tkÀ'éýº§¦¾ }ˆmò¥.Ë4­`šW¥+«ª½–!¹6ï‹"Åÿ}åñ, +Oab|ÊøvwA]jæ¥û„S•ÛA#1ß¼„–Íè>=Žúq¥E‰ÿ­)ôFë{¹!ˆ¨eC9³™À˜;)Ò ±…³æÄ÷S%G©a£ˆ1~Ièll‚øØÂ&”æn@iºÞ8È+ʪ°kpÕãôrP¸Ì$øšÐô â,47xØ5Ë°–æU)Æh2ÿ…¶O,&Ò<nºªÉ–ŸC½Üb¢ú ôÂŒc¼1ì~•ÜÂé "ÕúšéÕ¼¥® ‹ïQ¯0¿Øéýåê•pÃòè1Ù¨‰yÿ
+}UÈS·LMŠß„"HaÜàgòÌ@¦æ€ª¦± QTùÒRC™ñ¦vxî9¤åRš
+$¬cc¹lmÖZ&:{]|`קÍÉÍ]YdIÖo4ů\U¬h°>i¦—‚ý ÁRFfi¼=¾}¯›b5³¡iIÌseŽõÇ×P‡2Ô§?i­Xˆ2—æñû•l(ÌùÂ>Cä÷¾žTá|H^åÝñ?&åe„FÊ/Ö áYÝñx&f+Ò1͸Ë:ÆÃ-ï*JcØ‹s:¹ó×\OÉ„°³)ý°ÀglFÉ•íñjéÎw?öt8A²° —‚úP}à%Pi_ÆÝ:µÏ>Æk-Êĸüµ™P?ôqô‹¼§l0›¼(RÕמ "‡„`‹+\çi‘§Y-Çó,œyT”hT vlO‘ ©[§öØy¬ˆÇÃê­Çãhscl`„ŽçpÚZ3$H®wö‚…†$ƒŽåƒ¨ë ì AB÷aqè8sfCS¦ÁÏáòÄ‚d«8x×ÿÇ/àrlÙdÖvqÍ”®Š¯ç¤$6÷\íA.“†Yƒ™ÖC©+«ïÒU½““¤g¿kù–lUOäÆ›ù­X;+CwÏK=|ÞÇdÙçdÝAJ€®gÀýf‰,tXxÓY\÷å§hýr|ÉIù}§â|-5rC‘`Ff?‰è–b[±ê(Ïσ›j?´¦ÔÒI4Íõ—“»–ÍG !ÔÚê=½ô]ûP}ü—Á]g§ÂÅ•bFsHN·4S öçÔqÎåZØž~ª/Òy‘‰Ò,"y¸ëáó_*ºÖÝ‹Üè ðŒÐ-ÛÄ£-h±qTïÄÙ÷0<Œ9?û9xµ_èAbIz†^}$j}Îèêw4ú¼"€ßcbØu•X[2 !w̲/«Ñ£ïhf¸XªÏ ŒÃ@¢Áˆ{Ÿç¹²kf]»Ç¤³3âë ›8HÎÝRʯà´ElšÊ§H´–ÿtµÛ )˜õó5„9‘oÏÒÕåZ»Ë4¥TP¸ÞO<1:;k¡Dؾ%–¯¹äKoŒÌ<ÉLõp ­aŒÛ¬²íÃþa” çm0ù†QE…¥}®Q¼þ[•ÇDÛçÁhH4…<Ü€^¬žÏˆ[üð®ïBh¨)Q+í_´Ãc›xò,¶µP ÚÇ60ȿʽ¸ÍÐ9««]‚Ì@›Û®mIÍ7DÖO« ”Ÿ¢;SB郿p1/ä;_îÞí˳0jV´Ù† æ!Ê´,8ã&ß#ZH!R0`lÒ äö\c÷op{%èÃ3»Šgdsù!tYy¥)Ç`¦J3Ç`§ ¿…<âwÿh«ünsj†Ay-O,>¾=ضÁ
+©é[|sø¤(Í;º2?P>¼ÿ®êkn‘àP™~¦³ùk…ÝàÌAíHËŒâË÷fV$°‡ŠïÝ‘œË‰hJ{ôžzèu«·.·VÑŸ¡C 6 ½½|[€–Šn!Žâ¨&%§¯_î+,û`œl±M>U[Jˆ: »
+Z WÀX|šÀL¹‘¼dÐÒð­õ¼¡ª°ÀÅŽÏ¡ùB 6ïå÷Ѽ_î*ÃñB­Ýç~hx|
+|Š‡"0U’9ó£´žhÚú©ºö¡ÒF}öûž‘¼ˆQÊ 
+Ìrkµ‚qó¿Ý^ÜR5mz{˜¼g«€ªC—)5»ÝQÑ¿Ð ¼&¶mÆ‚¶Õ=5‘ ‡6 >ëØÛ)¿¯ÐK^;ú( =õèƒ<¢u/àv)¿ ô¬ÿ‰GP)M’8þ‚¾wï›*ìLãYh”³n!çéÛLoõÖ<Rr„“Ùlf¢^ÉzD-ä±ÈnOånV:ËQ¬¸‰>~þD?NCô6?d/Œýù5?‡ÖX¨§êÈtþøœªa¼û6„æÅWÁwÈÂRN Ql~‡d~åèu ¹®”ýx#¾®"|ÿ *¦šªc.Ι&õ=+ÿ‘×ëX™®;›²Æøµ‡FŸ"™acYÛ×nXů³½ª f2Ýs¼*réŠ
+ÆÒ…‰þXè© ÇJ¿Ôžrìx?L0wDæ>͇é±È£}>$ö1BêãØ’b>7;•Á´™¼æo`´´S+»”£Q*(JP+Eþ$DýÔ{k¤åúÔ;CêE‡Õ‚àa û;ŒFK>þ¢¬d/RÄÝ'‗¾R^XÛ³ø<£YV½•þ¡úL]U¸Ê ƒ†xçÙPïtáà¬óÝÜ?øO½¦^Û1î!Ü)ÓRvÄY½Ã¾‡˜!Qð©Ks’‡ï§q‚¾á1³-ÆÙæ5˜ºŽÿnPá4Îf?ðtÖ—‡¼u%)ÞÌzrð1*nÜþª8J½h ±×çM0))(»…|@ÂODÅw3~¤ÆN(0úQeC™«X@ej?¨%…å)*ÿ*gÏTT¼F¦áÝHEô&S®ƒÑs,‚ÞF…æP÷™Íä@>âÜÙte¸Œ„?qä2•‰Zä·2û¼¾ì„ü-ø>š3ðÚ6'dK>M›yµÉ2ˆwÒI~²÷(¸’uCÜÈêK`Ф¤}ãûZØ„¥R™yOes6Ì9qFÓ䎞íhóŠñiž
+XPb´ÉÏ —+û<kŽ!Ý
+¸8ÚßZðè”r£Â qhqŸQÙÕVM@܈éGŠ[;õ…äcçôV¶—tÃî×’ýbzœÃl#š”´Ë3çÖ¹JXŸ ÐÊ°ÐôŽ„’TÚmsÌ¢#Å…ð§<³/ÝEè„`C»rgI/Ýdnc†íŽE£cçvZQó>,}üYö1ƒJ´ !•ìp$ûš%âfÁ-±íÿkãœja˜w¶mÛ¶±²mìjgÛ¶m»¾lÛæʶ}Îü/1W3S ¤ìëÐ(ã³ÖóqJ«4•YšˆL¾½óZŠK³Ž ÍB@€™J Þˆ›–\®âæd9΀eX'5ÊמÍÈÑbŸÐ°tåQ¢öjŸ _ÈÍ!tž¿¾2Dq “dvzSyþÃ×h$wH6ÓÂþ5ç–IÓp±~@ËŸ¯NÑ
+ú7L¦ŽVµÞ
+ •UfòWüØ_áÀ€µi’¾Ò&ž§3„òØãëÀ )AXØyM]•rI_†@ÇZ¯ì¬õÃo”Á^v
+Õn—ÄQIpdâîßÎW9N?˜
+n×uTb™òõ5TŒe§ùVfÔ׆*ª+lÂ^;Ù‰ªù󟻌@! ýqC‹ÆLll÷æá9ýã&ˆ|R@PV}ã¯â³¶Æ.cZ¿å¾åHÝ+1ûû>ù6s‰á aiHóçénÔ¶:ÌÅy%ÃVpnðonŸÊ>µIQ{~Lýþ8IýÒß%
+¢¡/ðç‘n£<_ÚþÇ[˜2tDþ¯o³ùÚ1f¼þû ³Zc%Ù·j€¢ß¦ò$\²C‚ã1B¸·­-ø¤Â‹Žåö±kÏjZ˜]A:ç3qá|9‘ C1]%Ù†¦ÄîztbhÒ,mð6€V6kÎlŒÑ¨ÊâO‘$Ù“Iûƒ0¹µ½2sB2~Š.^ΕÄ4+h›$©ÚjÔ·<ºó’¿ëŽÙíY¥å?pÀ%Ailñ-i-úæƒüë½CÞ¦™,¶i .u@ÒbâGj|çœwQ"ÊÉédÈ­®zUßH;jõW~õ
+G»ïÈ>a7o tuƒL;÷±*žx¼DnÉ ~b’…¯I sFö
+kâ—Ì y^ÿûÑößpá¼ãÅ )ÛÌôÛ,ý— ð{DõYK>SØh)$ô¹©e)à×´òîÀì
+_\6ìÖ‡Û(–ÜOÌsX?z…ùyáà=ž×)Š^ÐvIÐÉ›†“ ªL±>ž:UÉ©cØR‰,è ª°—`Ë©-%x×ÊÞª˜ÿ
+½?#Œ“ûD…¸I “ÂÐî7Nï|ø±>{¿\”Sì›ÿt³ös¹-iT{¾ÔÆ<Œ´Ê¾ƒëܾNºGëà„«œ.·1”>åí;;ÉóVw**ÍU'øɾ€Ÿ \ÖköweWÔ‘Šÿ1¹éæ¥ÃX‚ ýh2¶jÙ4Ó{ CÇd­.èâhœÊh$ÌoLTÞ#a/„¸42Ó]eQËéÓ¤ôК·J×¹ëeþ
+“9X+²}bYú úw¬ààc€óDö1Ddyt7„-¼¨¬ZžÇmLK½`l5¦ÜÕ›¶z¼xf£ôþéÚ•5¨¤b×
-ÙL­°†8 'bÐà”‡¯Èù·‰ÜäÒqK½7¹~– »´w‘²?Ñ™‘a¡Wý~½~L¹*HÑ/5$_†„ƒ Z„É»Ùñ²¹Ÿ@üeÛaØÛõYד‡ Ãu¦M'¾I­:UÑwfæ€òÔEuƒ$Ô&K7^”}s‹óéR‰Ÿš<¥W(\‹@MTÎœëŽQ•¥6Yªdš–jÏ:.¤à‡X@VÐ,À0¾HOú
-¤® [1`«îcŒ!­Ñ‚ ñ!ŸšÆØf$7†á„¼2Ӯɒ¶ ©ƒ8ùbÍiÔêTZslÿ‹QR¾”Æ<„%WXÿ'©3JçgÅÏeÚNl-p/:z—µï’ó"–¹uPm*Pÿ7vîŠÜ)mBС
-±\Ô㆒ Ëò¢Íq·‚ /ëR”OòmÒ2ïñ 3gÁeW­Š¾leK+Æ Í—î}8†fnÄŸß­i µï'hJc×û–êEØ•œ]nYmÖc3•W0Y†¶ÃµËT©®C‡€Iòzß"®–ymë‘8šLÑ ¦U^)"íµ±*ïI<R b2x>°`îÄ\¨7Ï-pþ‰w•wˆÀG"£[Í…GAÇfÞqNYCŠÙ€2Êî¹å>P’$¼J]€<Ø·i8æëÍúèÓâ(nì+¯dºð8D‘ñw¾³j.˜Ýxæ+ó„t h­ŸïMÛziõ©l?Ó.²
-©àðFEÖ›Zð)°½‡Gt¼n°ÂGQœ÷ƒQòó g™s6a±b½#÷=WA#iÀ$¿É‰ûèuM£z:õ=ƒ}a>úWCëöO½{sÙœªÔ’ükýJQùWÑ\&:ë{¡Ü+ ¢Ý!R#G¹?è_FÑ7*„¡®G¿ Ö ê¼zðñM†üy}Ì™îàOH ¥H…#õL'°Øõ“ø1Vð!'¸úù “jnÛˆØUu®ÕJ’µ<û5:¯¾<^µaR¯ÒvT¤gÿ<£ˆè@JºŸôÃ&^ý’ÝÝÔ]Óõh#¿‚0ÝÖð’OÖn \a©šÕÓëƒ3Y´ˆÑ¨GW—R¼õÈ°
- A¥°ï²nP
-H£e_¯|íe´A¼þqëÅÖúï¦<Êoø¦BDz9:ÃxŸ¡§¹ìø8¤¾§úFÁM±/(Ña§rÛ G‹ÊÓäÐl3ˆj§"„5D,íÝN®^‘MßÞú6íøYL 4òÑùÛ”sp±”vTùÒ ÷@c,]€Cqù®¼ zmÃ|½':µ˜0
-ÅÆSçÜF¬uä6SjŸøü¦¯…äóÎîa½– X!Ù±èVw×7(So‡­¿Ùª×Þ –A:¸³ÉîjùeûÜ)ÐbhP¼Äi³û8¡ÆÒn?¥!µ”JtОÄò ©ý¯=GDh¿×àtwE¨Ü%çsà’[h>˜³¶=x?"…;*/ VÛU·5H½DPi°Y®ÑzÓB#03ý¡0½~£%ÎЦ~¹i@h£Æ'ÃîªéÜØÒ½zóy4W>ÔÔv<‰jÇ£–UÑø™[4Oß3´7eØ_e­0ä0ܦø׃ViXwûýaG
-Z…—“᪸/,þ,c±p‹xfÝžÙÆùv»T"` ‘y¼ïÓÜ@Ä®B
-‡ÇÃijØ<¡P™ìß:'>ŒéQÆ£¦Yé8æZ(9™$ã輕|ïü
-ädJí¨n?¿L6eã‰.7ë<£ÌìèÓ ‰·Ûë
-“ì-pãEË€'pjФÈK©u’CòEU±Nĺm4:ÓµÒ¨dI†QÅp[¹Üi]ßǬ7¦ÙäŸßæÆ2#¥&gí»›¦É ¸Ârä+ô ‘¥ìRÚß
-£äÈ£L« ijÀ2¬™ÂÖe~$+ë¼ œlͶ9†¹¶KA$HÅ|Êš
-ÝgthkÌü¥+# °ÖA¡jYPù2à³òU£už9°¬WýXËÈj^ϧ±wX¡rø´f—qF o%H”ÀÉ—qIœö®šc^ÆÑ0ŽŽ.øº€ƒär‚½ë$Ž~(¡íWË6ì‡S9ë%ÚÚ á¦qà¢öF’€M¢X'°â—ÖŸù³­8¯ei†•§Šãq'œÇ<‰¬"/©›­lìIR"zNÓŠ¨ò\/ó7æËkž¶ÝQÄï˜JWˆéR`éÃ-ø$Žh’ BÏ5X)qŠó¢Ž'R¢Çw»‘e&§Ëš‚ä´7òUûn´‹íñ“Õuí•»IÔ¥ÿŸÛî¯)Êž¢îj(œ«ˆ‡mÍîw:ópØĘ©HÜ|žÔÈð`ÅZYk}OOòÊ|Ëû×þ[þ—²_±×h±U\¥ØêLÁºyµ xOÙ#žkD"¯˜åøå(VPµ•yy`±›%ß Á‚®”ó®¨ tåKÜdÄCšÖû=^èÜæHàOQH済;ŸrZ­rú^<ÍÃã1…É>ŽDæÖ\Ç¥pöá¯ÉEÙª…о@ø"ºÌ“9Öö -duã7~w›’ò.=ßÚ F UÃu¤
-4¿kѬzÉÙÕR,îQ“% ú "?냔‚fmó–ÆM‰S´ó°úŠÓ<˜Ç7qªÌ”Ìh\ñÍ5Ø°š¨Õ†ŒCFºïâk–|Ì6܈Ó?Vµ`ÃüýÁTüV#WQakÂ
-”Öy ©‰¿"ev„hÁß™c¾¨õè\SÚìg­²¼~¼„‰C´Ä݉]gn™vAªØ² ‡¸JXMÙòñexµžtøÖæÝž‡yHÊLù/“FQèùNfǶެ
-ïñðÉ
-@þb~[Ö ùœ¸½’ OýŸ‰M=ÇÝJaÿF? ®…RaŒ3ºÍMtdBð[ÇP× Ä™·V:=h#Q¬7P±sÝæ
-WR¥zè{¢=vÖ¯CAlelò0ÛcñxÈ,0¾ByTè"õµµom‰ÈºÆ&2xÜÍþ¡—z[{á¾›»xÄ$-<›Ô°(½p9Ö´øC$&èWÎÖ
-‡ßˆ(6Ý¿-B…ñ%Ìeû9¸ðYkÞä·HÅy G,"ž$Š4feôÕ§?QˆÚMø>}Þ_—û=ÆüçChÓNËÆÛAO†*•¨ jrþ?Zصïþ˜ÔÞRÄ‚°JŸ#ü­¸ö¡¸Nç,áÕ5è²€€]Ù’cm‚ž1I‰d‘› íª+H7´Œm¯¹/Á&¬¹gb ö+´w_2cyøFOé^ôÙñÚ@I¦CÆ5 @-ýÀ‰
-B–RX"ðp<Štl¡tÀû¾ru4šŸëÀu©Y<w ’E®ø %‹äÒÛüRûh˜ Á¬ZõD€ä”ÖUqvº‚^²ÇažLåû(-p;<ÑLæ°<•I{ú'´Ý€&òöÁ°`ÃÛ ¥Q#ö"š%íYõ³eÈðRÇÅe˜$1bU¹v?ðþÍÎâ¶ÿÅòô
-vݜ v}\S)U
- ø ö#*Õi”á3L½µ;/œk(n3"ŠÌÂ0£váÝÞ¸«VãfB,»lŠµšMMnwòt4ñ'…TrfÄVÞôžÓßPPñO'Öó®¸{
-àÉø?~`¬t±òD#pÖG<–b 똵+ç+]8ê-QmBǘZfUx
-
+`¬¼eoNÒYnz‡×Žå%`Ÿ¯â©w
+…¡qØÂãívüG§Œ_«}NFÛ;Ò{ÈW˜ƒk£#Á„'{ìÏk“³­[“Ã\ßtKÍ3“½'`Jj*;&Ê°½#1Šòóm¸á'¸žÂU| V³Æ°'ûtêÒ~:BzÁË¡3¶}Ç^Wäy1Méß>¢ÁÈö»#K˜î©qîó‘¥TqF»@ÇêWÍhfûz!‡“‚©»¾fL"liG ÊßÝsc*×Ë­¾½ÀƒÚZózg
+Oú;' UY|ãQñ/Gu¦gî|!}ýÎä¯ëê@7Ž–ú˜›¯ÐHÕ9
+ýŠÎêÃVS/f—ÑÓ™Æ&¾&˜PH†²Œx¥ÃHÇ‚@.ú/öÛSdhëÉó‘RºzÆß1õ·ïyV€÷^®B¼Ì( ªÊ}ošÿðsFúI¸!®qNÙŠŠš'ü1¦¯Rà%¾ÖždgR0…¥ìÙoA˜*©Ï|5¶?2±ys \6e"³ÇÛ{ö+`ÿÞ(}½%‰}dJ=°”ÜU;_%<ó)Ö][±‘ÌÄdÌ)òÎH&k­è(žÍélG粂œÛ2r‰ñ0 Ã!Xƒ˜¶O›Áñú\†–`tþCŽ¾Ê‘œJýyÚáXˆV…àÌ'ŠBxH[~àìhÑ·ÅJN™PÀ2QðS¶Ž-«Ã¯û.u˜0ÿ~°íò±p
+Tì¸1k-ŸjœùÞ³ÄÛXTàXSè4 ÌdH‡V Γ¦™28D–£P(Ù[N’3Uúy ‡oÂJ+|Î L0/ìÛˆÞZêÖ•\ǽÑÝ„#×sgnùß«÷TÛb™Ì V«HKú:t%ä„2èóú“×Þ-ÆØ3k`¿x÷gÞ Íÿ†f0}¬DäxYø6xí
+ø/(.Õ‚ã{Ú%V–öÌiQþiP:%ŽÇ?ÒPêñ·¨×«'ûGëãÆ‚"˜(w›ûK°Ç YÊíÓÊ^Ò—:ˆ”ûséé¿×*ôÃÈÊÑäv(ú μîiaýñ±Ï2?q¡žÖzJ6Þ.X;‘ØHAnÉ°êáÂí¦«Ú±!x%qöôuë÷1‰£ì_™Z²É7ÖR|qê•ÖG™~dr«»à±&=„¦ Dj¬Þ‹Ëùš¬Y3ðí›ÚëÅ4X%n¹½èD—ž2®»q—+)é9-r+ØšÊÆ%¼Ý(﫸8|é}ü<‚KN æd¢‚?X1£ž0#"
+CP9­¥s·•–6Ô5 ¢^.¹4QhJ¯Ï+›"¡s¢òn’
+Xû ¦ÿ½¼î)Œü:~$û7ñríUû‹ì`)ÀW»nƒ§h§oq;³ð7<ý@iØ&Ê¿¤Ð†`8úùvöDgCÒG,õ'n¤Vkw3%$å^ϯ‰ÆŬ€ZP˜ÐdjôrÌuaÂq§Rrç0 qËvzœ°si6A8ÝÝA'æÅ4 Ç’‚ãՀݡäk»!¤ÁûÍJ•N99Õ=ó 8Š¯LêƒNCMkܕΫÍå&=ÿxÚ±žÛøŽeMÉŒîX
+ÿã+ Ð^Ñçd•
+!
+ã¦& Ý·^~YÍõŠa˜…Q@ç2|ÛYò›bSå»\u wŠrõ[­'øp8œ
+Ëz%Q}¶G{· f.î4]È5Z?bmܧc½d
+΂ÊÌG(÷=HBÝÛ'¢Å3¿˜ŸDŸª–°ªœ’Xôà:~$½ÅMK¢WøÃ¥©!Eíª·)Q SbÆØüÉ„›—þÐÀ™4¦÷,Ãñ0ÕÅFç)å¨)Œ±œPŽ¤Þ‹k‹¦‡B6EbçH¿Ô͇ˆÿÁÜù¸~"óWf‡BhÝþf@’£%տ΄fŠºa
+DÝCXÏLg9ÅÁL)ÌŸ‰S‡bå)¢"Û„ÝN\ꌦ׶Ø $ÓdŠbÒ«Ö«ðó²HÆ â’®‹MúÂ?qPg~Ÿ&ä²ø²wÍL {e[sïij_µÖroà
+|‘–ØRÅÁ‡*ÐSfɆ#Ò
+Þ5ß±ÏÑþbºVwÿr7Ç—ÏZïd¼ŸçÑ|•LG9«Á4Óšd,[E>#ù>W y•ðRÿ¬C•då2ÛEh» A¹„F>öÜ %îàO”¹bÜbÝ«RI%=
+'¶.Ô,`SéRdAQüÛz)´*[‚@銀/ðQ¾ÙÍ “/ÚÝÚŒ§†£lÅWú_ÖÕ'r¨žWëäÛºúó¤6¦î$Ë”¡{ÞSeÝ46kÀ^øu‚u>•`ºû¨ÚM¶[¼“›aËhë¿·^ìø¨ðëiDu„Æõ(ZÐÛPvdi0ê0æ¡‚•­,…™³ˆ©ï1Ë5šeëõ´œû»QG<]>F2F6hÈê+Å{#dýÉ\-IïúÕ'† ô\ñqY¦omæÓJÝ?4(Óò8+|©» Ž‡%<+5ûÂ.ä)4ÂÚ\a`1_’m³`GuN¸ììýH¢¸­
+•“Z‹òºi« yM4Égd{hDš¿V
+ÕÇ‚7¦;§‘+„”ÙÈ8¤nv1/jÉ÷Šö?MM+Êl‹-@«àTRt¸Í—‰¬œ@sv注ÿ‡ˆî# 7´¬r§Ð%q:Ò>';Ã-¡øa¿m)éYœ×_þÊÓ­Êÿj%—¢§AÐ@è” Ì„ÿ”Íùp é);rH± Ð (¿õL—ô¡PpY!•´C|ªeÐWã)
+[µv@ee“†&›MÅHÃþ7]k¤XÂ-%S¾0Hh<žØ<¯+WãPû¥Ž<Ù;ñаlf&EÕþž!rq{¿€–ÅÄx€:É]Ë@^WEIs]¨Ãñ­×}1ZGÁÿz<ƒ{!õ¾amïwJ7ÔòÙγš-ìÄ^I0¦%û_tg®Ã\(ôÙy¨·‡¤°lÐw=Í.±NYb5zI)*ë¨(üIÂæm­´Vë©™ÉUO`+KnpôrÀ?½¥üHª“c:íRänk;ÀýŸŽ ò1¸o }w` ­øQŒ•bçøÜSTv.Žã^è‡å9þ4aû«IÃ0\M¥,`î½ý–³»]쎄͗i¼y¢0(@Q(ž}>ô¦BB“ëùéîžK•¯»ÕoáL´¸èÅ ·sd5Ñôöo¢LrÑáë;òÀ÷±
+DÊpꈩÊnVe¥_ÉP=ÿ|¿gËøT;ôZþE jÁÏÆT˜tñ ìßÀºu…N…ìÞæ‹ëÁM}æ䃚±eEÇÜ6¤écð¸F®ò¾Vn â2¬š¤ô²Ï„f'Ù!®OH* ‡É±ßl@ÞÏl¡Ok£{M¡V§wE•O9O§æ\E ¹EŽ©þÞ-i¯—«ð:<騷³¯Î¾«g3•<Ä)ikŽ!ºMÜ#¯ëÂ.„×[͜Ǥ#ºàõÎ-VEäcëÛ2øyÔ`cƒ5m·—ÐAw\-sE-Nô÷‹K°´ÑûÖ#óÄ=:¥Bòj^^ÞûÁ2f§ì#$i½Í[*½IM#òQ-uÜõ+z¬]–87ClÁ&LÓ¬ÌÄŸèç hS¡·b¼±§'kf¥×‰O¶^+- ~."Gã8`~S“1‡=u m³m-æßÉ…ö]c˜R¾×ëÁÝĆأÐ1×]?5§TC½ë0ìŠ
+ôÕ•ájDßÚìÅî-'Þ†ô좵ÒÖø´R{/å’öáK`HMËgZßóù`]¥Þ^K»¹wYdßD±œe´2þǾk–;v¢—¹h»ä8
+ú*JãÒ½’Qc^é¹H–¢‰Ê/Âë¾ýâµ5@ÜQÚ´*ŽÍz ÑüXbKXl#ïÄQ MaÚ1#p@D’~ú+Öx¬iû¶R":j àY¬ì8 }ÇA¨)–6¢C/`Å›±mx•Ëri.±LŒ}VðË3µÍÅuÝUâÞ[Ô€º/¯Uðú»ÛG–¶P×fªvv‡YT{OÛ¡»è–?,ÓÞtA@©C-U*Ã'€²×
+©pq¯¹Ø%ê[ö[uÔœ¾)o.ô;(ñî.䙹 }^N
+M¸—âø’‚ŸhSfŽ_Œ8ųLÇéÔ´:ÁWŽH:tDb ‚‡¶³/×ÜÔVç×?±°†Pu†Rlí/ÞÿÄxõímîÙµŠoýȵãÏÔ´h ù…0¦Nct
+ÁbaÂ_Üõ­€R ›è×DÙt=Ð4­ÞbùSÌ ʸîµûKÓ‰äé`YkNuOM‚“®úÂ%è’ñœŸƒK­ª÷;ªGcKn`Öb‚ÂÏO/1=¾ ~v`¸U6ËË+Øðo©âÅ™¡)iøan+¹¨ÓZÊF÷è>o©)-' m“&®ØôR)î–£_SÛp`’ÔÃ4Ú¼vQM^‹U#ÒXÞp§9ÚwæÇ(”–ͤ@­TÁ¼¤]éÞ<ô¢éøYû‚ÜšaÓ…’IkÙVèþ$o5ªÏ—ž ð¤kØ|uB›¦ýuž0J{U'—Rf>UE¾ÎýD«&hù-©ÜÌ›+îÆ2=e ]ÊÐÂÍ‘ÿ÷[Žä–kdö£H<«møL²r ¡YôZ ã][Êy’QZ°pš-± ”ÏUä%J¬ì3ûòº‡ÿ³;°+eï¸õx°
+÷u+,‰DÞ Ü$Ñ?@lêC*k7¥´%)ÙH|Íp£'öSþéÖ3%}­hƒ-×7–ÌÙJÊBñ`70>š SòÛD TÊtœ’‘Š‚”k l5°Ÿ°J­›`¸Yº—tr‹¸J…Úf˜­Ê4äÙúÉ´ãñ‹¿§•Öø'$xìîK6
endstream
endobj
-638 0 obj
+885 0 obj
<<
/Type /FontDescriptor
-/FontName /WHUENP+LMRoman17-Regular
+/FontName /MAUKEV+LMRoman17-Regular
/Flags 4
/FontBBox [-400 -286 1338 1125]
/Ascent 683
@@ -4789,94 +6181,84 @@ endobj
/ItalicAngle 0
/StemV 18
/XHeight 430
-/CharSet (/E/L/T/V/X/a/c/d/e/f/ff/ffi/four/g/h/i/k/l/n/o/one/p/period/r/s/t/w)
-/FontFile 637 0 R
+/CharSet (/E/L/T/V/X/a/c/d/e/f/ff/ffi/five/g/h/i/k/l/n/o/p/period/r/s/t/w/zero)
+/FontFile 884 0 R
>>
endobj
-639 0 obj
+886 0 obj
<<
-/Length1 1669
-/Length2 16869
+/Length1 1670
+/Length2 13459
/Length3 0
-/Length 17974
+/Length 14526
/Filter /FlateDecode
>>
stream
-xÚ´ºeT›MÛ5L[Ü)‚»;·âî.‚ww)Nqww-îÅÝÝÝ Åùèu?z?ïßoe%gæÐ={öÌŠœäÄ
-ÊôB&`# 8ØÆ‘ž™‰ #«¶6´a§Wš9YÚX˜˜ØàÉÉE솎 °¨¡#Àéh7v|O}`bâ†'H
-
-É©ˆ€jt
-ü]€ Èhã
-²þEïðwÍ@6ÿØd…ä$ÅÅ”UèeÞ…gC/ ~gdžÁÑÕñŸè¿õ„Dex
-zçÉlïÆøtmiv±ñø¿vS‰é_æMœlUm@vN@IÑÿˆ~7Áÿ·Í è`
-|¿À{8:ŽöN@/ÿéøß#xfN€ ÈØñ]èï›þŸê’6¦`
-Ï(v|Õÿ?ûìßz‰;YYÉZ©þÒ3´Y¹ý¯È‹PþÅJ%¶·6´ú7ÈAä
-4Q
-­à’Li52 L¹î±Z½Q7¦à“Ødªü¶û˜,§¥ç ` £‹youË ê“êYªßûLWC§
-¼šÃ‰+†éÁp¨æšL»d{ûô–9ºøY ×ù»ˆ‘þîü€D[K$†~ÂÏ»<"·CbòÁ¿·’s>8_•ù%·ˆ@×›WÒL€’-GIjÉ”Pì;Á
-}|#£Z²á®Ý²{í,µÑ—‰…Z|UÞ†ôª¶~“ÀSîã—”9ìÏ,LÉÝÕ!µÜ©rÜBçf®­0êZ¤ñÊRD¾E Þ‘ŒgS¬ƒ®o@f-q:e)gK|¾†‰Š|›ÀUôUh‰‡MñbxÁð'G}qß<^bô†ÌM±fo©Z5̪‚ÒRæè}’ÉŽÝ÷ÛÒ…mJc3"§r+.7Ot1‡¡mütƒ;ibÎÙdŽè}Š¬ Æê#bZø_¼—Âð8õÈ?à‚1zV
-¼¡˜†Á%..ÎͶšæòðHfKtÖØüªä
-?ˆJ°U‚ïSÊ\± ”×úêø׳‘å›’{øÿ 
-ÊWáÊ©¼ÚÁš'>µÛ"RUbÞ¢«º4ÌT¾Nw›³RËPÂßû%Æ-ZèâOÕÈ·•”s* +¬€i‚ÓßÃ+ü®¸ù£¼”ÄÚÂJ½àhR)ñ¢¨ÎT_p3 ˆ?ÀÙx‰†ïþÁhw=¼»)/½uç@7ûšŽ#VO*e‡öj“â—t½»ŸI š’Û,)zc¿xhÿËÊÙ6fMÍ-”C,tØéÑ4kè¦;Ög16l~Z€|¶lÍHgؽ™³£ÒcNu}€þÂÌž±"Ñ2._â€.bŸÏþô`HúTñ
-
-r•áX'Âlå%X°Å=§knå¸Ãò2§Óã­¡y¬Æ@ŒgÛ>ý¹õök½KÕoÜ€šGMΠãѼÎ#‘¨Å]nãò…ƒà異¡ç~º‚Ûß $Ý°kȲʲ:î•8œ›2‹*ˆÑv‰x)e`•¨[k[QjêŒ!Ñ«\,ÜŠþP1¶s’ÜÒ/Ì^¥´.:®‰ÒÌÏÚÒUãAˆ
-¶2Ü×ȼúÎå­Ý]ÌÉ’c
-û|4”V’túŒÖHñùü8¶U¬„GB¯]ЈÿÇ+»Ç½Ý¹ÍY|­b ^Œ±D€öTLäðÉ‹v«s¹°ø–>ßé8äq‡˜ª°O¦1\Ñÿì°1ú+¤¬o_°ð«:qbev4S¥qÌ MÒ>>…gˆØþ¡Zë.'óï
-¼ úh.4c‘©Øb³”ÈJk±[%þ¤g±Ç®ÉPbãÊ;`AGK7-;—Òöl ŠpÖÊKu`°éZðMô˜Q@Ñ7k'P“(†àJ-+'"å7‡Ï!-êË+ƒŠ ¶Ÿç‚X:ûê1™"«˜T¿m-™Õ¡¢ã+¤²ÆƇ2ZI7òjª–}¦PG}f¿ñ†¾oS6ÒÒ±¶ÉÛdÁ²Õ`&œ¬ œ© šÃöÄ,VY2;ÄÕÿEšæDÆ+ø Þ®
-‡×ü¡ü³^v+« §Z…± ÁR!€ìÕþÐ ñ‰R_…ýf-‹ Î¯ /ÒDi˜ì~äbÕoü•Ðû7ê¿ÌFloK ¦9ùÂs\¡¼øaì]ÍŽºV¦=ÌaJ‡G)7 {ä8W=[ôÓì` ¦•.Š£?Ó¿¯X8†ü²¡Ny–JFø²¯A5ž”£Æ¯¡vŒªÒFo¡ûX”e{¤Ýî
-Hódƒà…ì!çUïYãƽ!ë–w±ádó”âïÈQÜ4úlC d×oæ©(Ÿ÷CÊI UO¥qw~@4M Îå'É«^}{ìÀq~øš+sí|Ôgú§µ,q“tÇ<Y¶{¶Ë/áâä_#º—ÝVú-ß_(hŽ‚§'ß>´”ÂÝÉ«¢Uç5@²_ßMú‡ÝCÐ-ŒñìS ‡…Ì<Þ€“ÙÂÄpzbá#“MÞ‚
-a’$œÈ&5Káüꓺ^Fjp[ÃëIÙ˜•˜z†šþ÷½@ç«¢-pŽg‡@’Ê=Û11ÂåèÌÉzõ:Œ1ÿb@wýÀƒ¿Z£AøYM£-‹èQLúl~¦8ÄÊàkª½ÎqJæ´¯‚h¶$ej©
-…rÐ#ÙƇ®îÆï¸P?Ð:¶‰^X×}ìôJ( Já"D»òI¦õ'½+’te0FVAMrªÝè'$6+U"ƒ3h ­GúÏpnFô— :Ÿ_âx„³)Í V±‘šæÁãT+Ž¼C´ ½Îœ(3ª°ƒr×ö¿ãk›Bàn]äf±éžY‘ÖC¾¬+Зƒú4 ,`bÖÑ#â¶XCcS¯ËÖ^{Å™°*AÓ>tÿ釮œÆ¤˜}õ(—fuD5]ŒÇÏiÆT·ýZa.>2ƒÞ
-‘ôs BjzÁMücG… óR™ðɲQâ%kIž$$—¾Ö
-~\ÉÝy9B¤e$Ù³²ñ‹Ö„ýùRRVü©ãÈ•Nü§º…úýhLT·Ã˜=oZE?áe§i¹rË·¦ÜÆÅdßâM¡;¾k0G_§Ü%zxåoÜ0Y_F#¥hàP¦e~÷|Kˆâö‰ö&Kãq¥¾°Ó†iú^(¼
-”!„ùÉ­R:ÇrÌZ€ âÊnW16==Gƒ ÔÔvkúöãW„sê”L³Q㣷‡šåp陂A슭-AñƒýÓŸª0܈}oãè|\,Veæc2“ýmh§QU—YâÕ> Ç
-J¬A×r?”-ò†ž°ReuÂœEDñù¾;Û<¸˜/fem†/×s ػ߇ÍÝðëŽ{µP²."1§ÅP ˤh¿ï{užxT­<¢©æƒ3Ùˆ$ÿÓ>và/½òÓ‡#uìs¨@nØ€"ÞÐò™ñ7‹Ü9'|IÖÙ4+BîÍ÷åÌìrÂ]w[T‹ƒ g[–
-J‡$_§?%j,e›ÃRN©N¶ … ]©ûƒ)ïèø€æ{¿(˜çh³{bíê‘iûöÌêWsÓ`ƒƒŠ])‘;vÜs™X‘ü.ºM7æXY“7ícFA¬Ž
-¶n ï0E-ÅÄ•žUAˆ“©Ã­P,5¦6EñpE÷D¾JõCF¾w+&K Úi—™ µ^¡ãù¿„ G±•|Ÿ¶Ø”D²òÔíUÝÁuóââø¹RŸÐíáÇYB‚ÂÉí•‹ ãH^F»˜¶Â…û¼& w”¾$ÛÉõ)–é)Ýú Bÿª’àÎݾȢÌþz/ï¤x@BÞMëSÕ²ØE,Ö£|€¾UÚ>5á µœv\t€ ƒ¨SçëýعúpÏ1%Šñ•¶.9ƒ@q›…ŒMì²…Ú¤}®SëR¹0(:ØË8îß„h)ÊÛ}'I$"'p-û ÂÃ)>vYëð„ ŦjfÆfPƒ|ÄŽmªA‘M˜…˜&ª"›ŠægBWs×+ýå‡Sª)@7E²e€jî9’§~ªóÅ…4‰u^ié®oø¢[W×£@T®EXƒ¾ÖÛ
-O5ÌÎ]G•€“f.¨U(ÌMwpyƒk'1UXD°“ϾWÙ@Ç­"ô ã鼇欢eáÔ°4c3þ}
-mƬ¢ßÚ˜£n̈Š=RýòȲƠÏÚÓç7˜Szû%ÇûØb‘Âsa:šŠk)‰ÝÉ5Qöµjݤ‘z*Ï;oָ뵪cCaÕW1°# Fwb'©£YG^Š‡±jå±àžŒúBÐ7ëCʼ¾§ÊÎî;mˆ)I픑‹Ÿ±§Ôói3ùKýõä§ùšH3ª: Ò’žjY¤ýé9o
-Ž÷t·ûnk½FV!=Øœ'éÓ :ø°?Ýš¤MÙTŠË»ƒŒ3ƒzÚ½ô»ÙÙ°"WòÓ5À–£ý4ñxö<¤gojÎåë6CçÝ赡·$+´©Ô£Tå½V(ÜKêSÆWÂ$ÄŒ›ÝHçH'î½àC–zr›Zs|ÅÝT5 …d}_²CÇóÚ#‘ufƒhý«ºgŽ<Þ³„Aô}ÚÃ,Q·8HìÄ'%uî˜è<îÂÚRÑÊd?ŽöâF¬¿ªYḢ7×~]¯Ha'E'‚ö8¤u‡Àr#Sþ¤Î8’M:¨ö³1ZJía)OÓOzÅÿœnï
-¯¶ÙÌ­-Qêmÿ˜²=GÄ8]Ì¥œ…jmñiÛC,Bæ ‰%3íÜúnXë,ôøÐ @%׫(kòÁ’ŸFÔìѧ" $gã‰ÿ8ÅßìIqBø¼Â£:?Î"
-g+ ZzZ¸M„q߯ÝVO©‚]Ï=t41Læî¶qR$Τö ´öõ$¸V,aÚ·‰ÃüÉ>zéómäc>…*»íf)];Ãô"1…„‘&‚¯6›Ï zö]µ€…° Æ/R…ñœŒùô­Ñù•Åü߼ߥ;йéLøò,¥•KŽ¨»ä«JSþH'Q>H¾M‹UӲ—‡¦Œ!-S¬*§ÍË<;ejš 4ùG7s4îSG°`oS
-Lì%C](ÊÙ*r4=hI…Là ”¸Rˆ;«-|2¤FzCØž&µHéöµB×u)”™3ÓZé`Ft4µ ²ú%0EÒë€
-0?>“ºÕhà·Ù¥Óbè_+ê IÓ\/õBzë®2DœKº#Ï!Õ]ÿqšx/’á£ñÒ¶w\Ñàæ' µóXëbž1(¼AKõ vT¦ŠØŽŒZð&åæÀÿýEp>š~¯ìüÐB<&J_ýƒ¸{r+ þÇ
-l¯`p5¹Þ#®ìõYŠëß×ó—y6Á¾„VœÕÒ8¢¢I[®®ÔLþ–µ?úÚ†åcÍÙoÍ>MxºK7  >œsOQ¤ßþˆÝŒ—`|$q>ÑÇ—¤kŽ“£q®¦#~e¨;¢fäñª"nË,Áw<ÅÌ(Æ£Ôq /ß>ð~#ŠÞ¼‹ÐvÂ_ ×#»õÍÒè$R îADdlmÆÔûe>{ ‹-á"ñƒ:»‡M«×ÕW8RP>¦±Û•1Ö¿3¿ëÂG kP¢»‹ŠD“V‚AÑÈ¿,SU·¼Ó›F˜¡DR,ɽ{¨•®NqfK4¼†ÙOTH_ÎļuP…ðŽܱ("B’úÝ›óFm¹2˜Ø15WÄé~Úrs›Žä
-h>0°ø*¹ªDÁ1×ôdóÇÎ{Ù^‡çF•|Ò-O››ÚúÛ¡îJ£G;ñî ÜR: •Œ¹UH%?˜×øÏbneƒ¯½ðÕ™
-UùbEQÝG¥O¥ ñû’ùmgy ‘¿Xã`OÖ²({É",‹ D['Êž
-Ö²ólã®gs¿ŠC’k{žß/EÇg–B|WP²‚Û<â4æ$WУˆÿ.}ÝÙ~‰ÉSKVø•mÁ‹W^_‹iám£{‹ùŠv÷67´…¡é½¶ÛnžŸ‰éäss8ña˜K,èšÁ-¯Žœ,œ'b•-7ÙIMvWEuòtíÈ䣮sÎòçþ+ÊnÊAÍq½.ÓϾ|3j„mΘ¼5ÚÆì––“2t´*sÃ{+ø$­'+y -°Ë4r¾Ç†Úw$#Ïô_.H¢±¸9-‚¹óÍ2T©¤ŠÞ^&òàRyÅ‘Í9É`ÿCxé•$Øvð‡Gð4SL¹Îûõ4=U*[òê :
-綻Q·Ñ륜IcB豺(Kªõ®Ï\ÚïܬAH)E¨oëØ¡oéa­þ| v¥^ÉÏÆ‘«œ;!4›0×TŒ~2­¦x‹…|Ycñ[ÀtäDdï[«jæs@¼¾„‡ÿJGU+yrÝ‹wœûØ®„1¿ÝÌdšÌô¤j›ñþ Þ£X^“¢‚ø(ï»'0‹~îZøö,v'çwoÒ‚U0Ó}YX”{–ͧÆ}»»:©175»†ˆ™(z#‚Ù'SÛö¶oÙç™cë‘se@Ô ¬ÃáüHœu›M²½ºoÁU¤:p0YÓú!c^ä®NFwIHìâ
-¡—|Û¡øãÃr®œc4<×kÖr
-%áwž;¯þ<r™Lâî>Ñ;XÈ<æýµWÇ)àƒ/wSGÂÍÌÊÆIJNÐÈ©¡&Boª§÷Йþ­¿¼Ùc‹ÿ´–W!®¤™o©¡Ûþ M>
-ÔÃYpïÃ÷èÁ˜¦kWó¿`ª<ùÁ<¦|°½¯t“Ƈ;ë+%×0Â}4ÈäÃé–š#ù¬©˜GÁ›]K§§Œ$yãb¼Ëwlû1eRM}êdæþYdH]d­ëWðÿÕ$QŒFâ½ûv¯¿h~£üÕ†¼\G,¦ß1ïa¦Ìrž$übªüá‹äszF_6ýer&ŒR±tb£:æšqŽüB§÷±"ÆßšBã)~n”Qg–¹Œ"7ð®><;»ãÔHQCf¦1l"éZ­ãj”!Ì9ôì6ú!
-­ÍX…曄㠒ª…ÅÅCCá‹;ÀYÙ¿»¯fÞFxUžˆÜC‰7Hdœ0)oë&*Ên†êò$ÙÈÆô`¸Ò…VŽ²š‹€?éºÙé€lÓæºÚ•§p z×<`×Ê+¾îG²ð–`v#¥Šø<6@Ë“ÄiO‡H=FJY‘—»6ûVE¤a(\«$UdîGÕ/&ySBˆ p» þÃÓö™ ²ž›øM˜´V^;¤ê±¹J—ù|›€ëcÚÁ1Hƒ:Ô4ÊÑpbòzSÛðmš3‹ˆ&Mt‰NCÆQ~žÃÄki €xŠõOiŸZº,±
-çAlÒ’m*{Ð2Ù¨©pT?éyFò^(ÂâÞ®hmbpØQ¥ÁYºÍq i ŠuȆC”öklQÑß„ðœ?¾\º^¦&bím¦°ŸºÐg úµ¼žk{4bs÷ì¯ MvéÙG{/zç$ÒÛø+1)[és7a"è@¤Z_ôÌ_(W~«ði"
-"g>Éý& †ˆ_$zD»øeÌ‚üH'¼Ô{Ÿt9›fx<Ú·®[ló$º7émˆ›œªÑeZ¥¬2†Ã,Z™©jtõÛøl²¤ -$fϾǪîëwÑøµé|±®Yó‘˜þ«Óf!%ž mÑÇÚ«–¦ =]J
-wXž&ÝŒ­U–ï½å’|‡=—$'¹IÖQLJÛ™µK]J>?œ‡†e‡›O:üʪÇÐÈ{ª‚1л`sOçô é666ž8GX?ØÅg;é,¶:ÈÒÃAª/òÕco?1g0µØž·±à¤ç‘>bh)<qêDüñ¦¡œšºOpÆ÷O¾º¢âìz²´ã-”ŒÅ2Ò¾äöÙj‘Áøø>§‰žƒS1©þì…§×ò󯋯C\$LNO&6±s÷Úõ 7Veðor©ñCд)$Aw!Cêö+ÕîC…‘*0Ç
-Ïã½ÝJWjçÂ…ÃN#`¤õN¹-ˆ
-½”ášB%lÔ!Ć#ýz²`bC2»ïèÅ¢-ɉJî¿ê’h/þ¸#H>«e¾oÇ»)IJËw}.÷Û«NøöD”ö·­ÄŽ%E%Á(M,~¬¦å¤pÂ'ô‰ž4Ô´m.ƒÛ¹mä]E-åMAaô)÷¾kì2韡¶µ—?3%l8Ž>;â^;‚Öx s)|1µ•Î;\0²<×.6,fÛÒîQ˜C 4)ë5<¦ @ ã,šn¨©¡2Ì.¬Ø×ök¾_}J®œ+d„¯kTúdi4Jdg{$&øÕC«FçXÆl-±©óçÀ‹:yQMUý=v×uB2ÞܽÈrE‚LÚú`ñ³/hvê.ÿ›Pˇ.*2Ï«ô
-£jôJ÷ÞïÂ}'ÙËVàvBïŽÔßSsoçKQ¼U FˆI–ðAÿzî,¼Úøùãµ} ì]Odt…o…"‘¸Ôü—O°ðãîFDzð _wÎrN5ÏE5Âï÷sõr à6tF©Ní&§ÈB³LõyÃ:ª´Ð< VbÍR b=Yðcå3ìׇ³M—ïônYKëê£ìØúTGºÉÃ-¶éˆògqžÜõ„Ý|¼)¿Y¨Bµ‘FžÒÃ$kAÙí»+õfµM¾W¶*…©Er&|}µôÚ̘=$· ÖIBÑ”V"•3âQÑZMÈŸR8  uɸZ ¬³0»$+è›…#6ܹ»þüš"á¾*
-NhŠ9’ÜHj2-©žÚÊÈÍ5b#ùi •æ[‡©‰µPJ!Ãt8Ó¯xú¾… ‘CNXŸìÌ
-ñJˆ¤±X`1fƒWvÅ9×7zãÂ$¯2Ï¡»³÷:°3¹PÊsƒõýÍ~]9Ùèé/¿†·‡NdOLvoH䜸hš(qŸÚ 4dI|~¢yu¡ÿs© QÇŒƒ:ì¤ÐÕ~“QæÍoXtõ1«àèÕ£ÔÛ+”V›Oìì4QÄ^¡…„6/fÅÈ+ ,ïíFÿ Î'ò©äE9Á×l‹® ”ÂiÄn¢µbÕ˜Ž/¿hÜÚŸ ž–,!¿X§WŸ,Gºdiû‰EÌöÌWÑøPEC¥J“?,ˆ<‚¦˜}"Šþ4 Ã_Ýab#t¹Å€C½wiX¼ö“™P7ÉŠ5¿»eŽKÞ¶ì×ù! ôuZë7Ùec»G#’ûhØàÁûÀ¨ß-¬j´]L4@Psye(Dlšu1éÝS¬åT€ áúó·þY†Æ)¿ØêrX⤜ٵ¡P9 ÈBöf÷S&LEI ZV£@êÆ„€‘vsý/-ñÆäjì§un[ZéƒiWÖäÓ´äzôK£¬àíÂ&ášCá¹ljCÁªå!snnÏÒtÒÉßSªOñ= Ÿ±Ú?Úžéáô‡yd±KOŸÞ Zg
-¬UÿñÅ/L·Â˱‡¾ñÛó‡u´®k"‚ïoúî½iÜú»©nã égÚ˜tÜ;³8ä¬Æ8ËÞ’½´ùþŒ_?i ($θgTMîbâmº->a¿ÔàÎÆl–$ÈÀÕ² Ë­ž… ߈˜£w¥4µˆÜSM÷û:'¬FÈÓp[†ëOiˆõ …]òQ‡èvà)ÔÛÍX˜ã
-ñü.ì…Ÿr¤ ÐZšv,*:i;½›ÚŸ4ppTâàËù ¤» ¼¦KÀð2ù¹®d›¹
-ƒ7Ë`\izçKe¿l¤Êj=~†„ú“#§¨Å8f—Ò
-”o
-À÷x¸éP‚?úøŽu@µ‰€ŽÎ/®Èp¨ðM˜ß¸O‰j>p|Y~æP-!!<%Kߨ/k°kvðaWنͣö´ 
-¸Òp©a.Õ§WTkÆTvô+ñø?LšƨZÍåèNä[{;tݽNe•ÃòÄêeÿ¼‰ÆþÊ5%ŸC<ŠçÃOåþ”$B?Ö(Øþí"ßOÏ Ú%Š°{Óæ¢x •½dH$Â1ZÔà¾pÄásYÆ`sŠqºæJ[!çè¤y±™CÞ“ã$žô\Õ¸ˆ“زÌUåfHÅ—qO 8ø¤¯õ}®ú;9éÈÑ/N)!goôŠIí …º2«
-e¸{cp×Í®†NåG8Æ"£;ufÖæÑ/%žzyΨßfñïü¦°oy·gšXòZ=—‡¨Êo²BQÄé¤g–ꉵYF±9”·¸Ç:†êÍÂ=Æ-Ê;Ê6——±9 ­ºBVŠƒä¤Ðí ‘Ÿ¿*”µQé5y¤WÒ@Ê,Ãׂ%ÚX§V¨[UÅí óÙ«¤NàëØ4é&·ÖkÇnRáˆmD‡QfÏ@ã.žSgßQøÓ—®Nš‹f–U¦ËQuû¿Ñ}š’¤cŠÑĨõß›*£çL`aZ¯,‡$Ƀ¼,ÚÞ Mš’ˉ•ÜâÜÍÊ7nXR-6y²Òr]åjn€°…©|VukþüUä°ü#=#×tŸDÕ
-*Y»ÍÍàøÖ†0Ì/øF²ûœk™»â{k…b/Ì?© z KFý.eW¿gYÿTmvÕª” Q³èºš
-ãE쫶Xý|SžÒ= 9}ƒ.“Œý[ú⤅\ì[Þ–ùn›9˜RYëãºð§ÅhÚ>ø‘V„‘ºäEG+Ë`—õ™U.y„%°|uó ì=ÖXÆ:Œ„s çšÝ°ìG
-@†òQƒÚ©ØŒqV#×ElñT[‰LjгWŠŒƒ
- –2­€’|Üœi×ñü‹²Ÿ‘u¸¡,ƒ¤æëÀ.GfGè\@ø N:ÓògöFE·ÛW™è *HbEíé ª©nxé_-dßi;^QÑZ›XM¾!„ ¸º.š^”r,aØ|Q»š€o¸i>ƒvcÙ*=ó
-õ bäã«2CG®ÔhÎÞ‰¡EJ'HJHr³‡¿.rUû»¡èm5/ø©¼uÓVZÉÎ88?ÑÑTùìI³®Eùk8c©"ãxþŽ¡.˜K$–¾®á€¤¤‚
-Ü¡ùP`3|ÿÍ9ù+ËvÛ*zá¬"Å`³L(ÅÁ”6Ú"GY‚ß1ùÄÿt·B\!þÖ NÇ[íG)± ¡×cÄ–Œa㥴 §²V‘>UwÄÁÏm@^léÇ2ª¤œáÇ£Ìã™Éúš³K½Ù˜>]D÷K‰å…þRÏJmçC㚎Y©I #ˆI7û?6ÃÛTºÖ¦ÄJ¯C=Cíè×”»^%ØÞ\ˆ(—Ój[Ñ­ ´"Áµ„H¼8u厮_ƒ¹ñR¿ˆ¢Ð
-[H+¨]g©Úü^ÑÅ?/ÔÛ'‹ãÅmIxÑ~ë¬N,Ü ±…ðŒ¢‚=¼ŒÎ;Rc§Œ Ggé9FÌpT™¿P¡¼ ;­”G½í¯È û×WjµÌšê¿¸h‚–§n–zzøpM÷–øÒQ5™)àÑú{žûz€Ò”ð=K?é
+xÚµyeT›Ý¶5înÅ îîîî®ÅƒCpw-PŠµ¸{¡¸»(îîNq‡ö½vν¿‘‘<ÙsÙ|Öžk%©Š:£¨9È(rpedebá((ªìM8Õ€–nv&Î
+Öf@àŸ )Ð?Fû÷V¾½ã®ÿEì½®rÚýãpÿ¥Œ•‰ËßX€½‰µƒ+ÐÁÄÁìÝÑÕÄÕÍ`ü{Í©ÿ!ˆ»9;ÿ©¡øŸ&çÿ*óŸÔÅ@ïwf`çãgâñï;fâàæâý?zó¯·mrp±vquù'#`amüÃÞåÏžY;üÅE•d¥$Õ5Þ…çÀ¨z«§ë_ï?ùD%ø
+!¹¨ÅŒ‰6\‰œ-2 pAPS`&UHA†ï£JC‘e(¶ÝëZsrå¯ksU‘mEIÑŸÙZLšÁ™Š ed´‡rÙyºÅS™- -Ä
+gX±œí0<ÐðÛ &ÚÁ]ß°â>›ôˆ.ÒMç…ãü”ƒqìîÄÜÿ\(üM³“Éw)Ióà´¶¤y«éÒŽHF@AXf)  N2@ÀñÈèUüùé
+xBK‡[Pžì„8uVÈ^=úäÂ#/û•¯®ˆÆrpªäÉrÏAª-_º½´·Zf¸e«p£§ ¢
+$ >3÷X®öQ‘g,“áÆí~ã¥ö@ÏÞËVÒòþû º—ÏüQ½Z·â˜âFMxGàL¨
+‘s”
+qý8SùHY£×¦û™IWáPéK<¥pÆóÚ<1eéü‹‹*s¥T2ÁgJší„Ä †b¶5,ãŸF“K÷xY„¿ºaÊxئÝ\p2ÌØ©gå<EP¥Á¼¾³eeªä‘Mo55 M¿ì±[¹Ò6£æ‘9di\;‚Ì—2¿æ’¡‡`abJúov+‹…‘Ú˜hßLÕÀd¿ZÁK+GAðhÂVº,ˆ;»{Œ¶¹ ²ç/ v¾Å{ ¾8Ú"3õcìð‰ß  K*‡_o¦å‚»_”¥5KÃü°ª¢ûef;JVK¡†êÜ PÎg<a…Âõ™Ítu C¼¤F%ã]’¹¢žÁ® }%ÙJ¹X³Í~HDXtÃø”%7nھب KX‘'ß$Së@
+(!²Áí)Wá5PS¨?¹³ãŠ'v bHüÉÐð¤äª’­‰öéwË
+Ã?DK°µ8ZÿÎúŸ„ë[¯g¶™/§‡ÆO•T
+…DÝзêçÃœó(‚ïL-=ËÁVßaÒýÜú÷½Ѻm6?Ý-tÉ(Ï}ÉïˆÍ­wÓÞ
+ÐhÐW=z¤™LÁóºórüÐwù
+.~zÊÁjÎ>ú
+zûßÚ³æ²ÜŸÛð™º6ó›øò“ ø€`° ô[ï6s#Y²c»3ëÄ5<Žº‹´Ë\Bq.H㳞X¾
+Gí‰ÑÛ1Ò. Y£¹Û¿ W`Ùz›&ê¨4o‹*SuÉŽŠåÂ.Ç©­p®ý€á1fñüB´,?-ð!Up©Nþ!}ÙÇ¡¥1ßÛ'6­t³-Q‚÷«¢úÊò±"ñ¼[VJ¤í7­ò%/U»bä‚…•ðìÇ«.Z)½~*.-‚Óo½øñƒ©NÃD}SÒÎ| ­ÛúN:ðћשOmb• ¸¡ÅNm3AN_Sr¿GÊ—Ù6¥gu–]ŸˆQ<è‡<xÖ:z387H$íBq…9¨?„‘^Ì£‹$Ѫϥ±eZGÐq7!o¡º*2 壴ÄP™Ü Y#É·ûõÀ=y(·GZ‰wÑáõ5´¨­¿éؼ~º‡Å¢µ´‘»Ú7}[•@u§¯Xÿó¥F²ª>yôÅä†Æ9 :{tt9›Í1õ|_°%K%бÿàÈ;n¯á²ã×fz²=¯ÌRÜȇ2yXx¼bŽkªé±ûó•î¡²DÔ‰ûävÞ•ª§Vh®PâŸa0Q\§Zm.¿ ¯Ò ì3±ÓÃ*Ù帋&n¹Ç¢‘ÉÊ“É|j¡-²ý2u[ï`¡…]÷” ¥* ž½Tnn¾i2½Ïu¯¼¨ ’ٺΠŠK¨TÕhÉzFÅh%E½’ur‰ù»ÔÞÊJ&·LPéË PM‹ŸkécE!J
+^¶-Í–ÎJÌ¢£¡" ‚¾ªª‚-<– =C.ØŒ=þ¹Æù>ÃÄT{#çd´(d÷òÊÂÑh+pÅéo_J„‘ògú+žäÓJ^0î†óàJG»œö‚âÇ¡¤a2Ù7ÕDÂËþn|¾ µ 0Û ŠÄNª^4V9—Ÿºs¼ã ÷9¹×‹¢Ê„9öy;»´ÐOTžÊÙÔùW—T_<êwrì}‘!èÏÅÛˆ¹Kf²ôÂVdÓ^/ce÷[ó1’ŽžÚ6éÂŒd á„Èõ1¨9 ™ÀËv­o°Ð 'òx1sô—žÉÑ„„fùŽNzˆëh€³—ŸñżÕ=c,1b^wJd¾Ðm! Ö|P¹ æã&¬¾±Á·Š¿Ñ0¼
+L‰©‘í¼Ú ô…HÊEH¦°fnöFž÷à¾WNVÚ¹6'Æ <Ü…¦Ý¼Pu]—;„ñïÛó ´d*jÕhpÞÃKBBªA}IIuÕÆsƒr «ækº
+ÌÍ6ZYy²r¬Òﲨ›Aúl¸Òù¹Fê÷ùä0¥1gM‚•€šóªl³ðß$ªÐ• >ˆ¹¬žSŠ­r¨ÂVõó
+¢ò™$å;WºU²Ü [—ÌHô4¤ÍÛiÇ€%‡U_}Ùf£ÙÜÛ‚”RÓäƒÜä@£üqC¸¦wŸÃ­ÕÍŒ›œ¼<ȹ=dc/ß•ý
+à=°•ý@j28I¿¥©a…B£™ºÚª½uYâT>¶ìfÊ$Gþî5„›‰›®k˜7ÇÍŒ”¦LŠŽ•}ÏÿÉÂ)Øᾩ£W#Ü–^µ©§*/½‰Œ­wæ(>ÏÛ%h¾³úé’£üö%CÅg!ˆ°‘žû4Ò•GYë‘p[ös®qƒH€¥nζ&DÿöÙµÖ¢ök®}ËD^g6þí.zºK¹»˜·=[<Ÿ(Å•©žH·¡³Aÿetõä¡Â m•·ã(ãæ,Ž
+SðtXJ5oâÎÂYK
+Ÿç…ò:/Òî…ý>Èï§õ÷ŠÂ²tÕ¼1˜ìÎ’hœ4ÅéÚ¿ïC3\šgÒ\ÀÄk´â‚*Õuw¿qLxcJ³&dx X?«5ö( W{:ñ}Ä…q™Ñ2ÁUõÍj«6µôàÍh^-²w¢RZLë8~Õ<Q*pK³(#ʼ¹7a߀nVùæž9ÖE9냻ÓXà‚©qÅÛÚÊ–nÍ|âdÏ(Û}`…où¬ô}¿Â„º(Vz¡=É\Iî€oÌÜŽ 3·+1Å"€›™Ô}9H¢%Ó“Õ²t‰»h‹ÉWåók’ËÓ "i…Šj•Ó ±­Ç—†zeê×ï‹¿s/~Åñ$ò»ÁNØáä|aºå_Õ7$ê²–ä([ö͆í=Zôjñy9QNÿP0~Ã1ˆðêk¦deBH¨Qm;ág„=y4x—Çéû{¤
+ÂËñE„ù ßóiL³zö‰å¿Î°°ÙÌh8±¾¬//>õ¢EA2…{ rÁñqefw¥ݶ•83„¿~f§í›Ó‘(L"‰’ÜÇVjwÂ7‚Jºl$øÅÒ[Ëh
+wæâ —4Jþ›V Ølç³3$2ý,;K7~o%?ñ˜+º:zÐ4ù“29ÐXÜYƒ`Æ[tê6S¡–ã¼½ñ€S£ £ØM¿"…ú/aîüÁÉ´*MD@Õ¥$EÉ’àBò]bc9(cÿibPL—RÍÏ~0éh"À¶ »$äåºKŽø­d ff6ÿ,€|rßlÞ¸†ÂÜ~ÏÈ%]žµh±9xásšE[Ôý2q÷<ä¼Á”ª#sð@ïéj¦¯b*4}D1IÆ–WOÏü!DÖæw„ç·º¼uõÛõAÈ€V³e×Âù4×ú=ß^ÞT‡ Ì ¸Ë—\
+˜Ì™×Wfª Óy©rã‰À9œl%X…Ã$SQOEBhI.z°Cçhß»›-—¦¾kŠÙäÇ}µ4ÐeðŒL
+Ÿf©òël$ˆ:Ø+°ª¥ThBt2û©f
+6ñW»­K¥IÔC¾¡2Z< š4 ÙÙ~_J-^.ÓÂe‡£!
+Ö‘€Â¬âh¡oA=Û·ÉéÖÇÚzLƒ±—1•¨eTÇe—Þbíl¼f:/¤W“I=§Ô¬ìM•¿ï—ìÃo[RæR"éÂ6×ÏÕ
+æd8ýüåÏ㊵“óááqGXº×AS¢m4]Í\§­0jÓäeÁ˜ÃÈÜïs‚v’R¼""q‹8•‹•f*.ﱧ0æ\w ŽÏÆ|»izIW%ÐèÅ(»|Ç¡Äý@ÀÆÐ\åënPúiÎs—<Ó®/2ý{’e Aa–jí÷­/ªxéðÂTôŠ*¥´Ö÷f£J }­©Í´ƒ‘Eb´_Ee «””+¾ÁBXì/>3—KŸ âÅ–%:VEC²ì·‘‚y 9ï{‚_c”…ún1ƒa‚H©¹°çc ºº èe¼8Ü´ð·œ>K‹AÇmâö:0 æwDÜ{S :Æd)´gsŠ*³:mví|ãŽ[ìƒ ôZVå{…´Í¸`È­~Î@¸è½MàÄMAs,W~æ7yH /'eu>~šleõjà˜c_òB½ê$Ï '°>kÔUy@ÑçÛC{²¤ú´©Ø”5|ö£KX'–È>×ý¼7Â[4 @nötˆáÍ'M%ñ5ÛcD ¯
+AI^ˆ´Ty~ª(Öªô_{Ä%1Ç5[²Nó= ¯Q•y+ˆ­p$2JtKÝ*Ó
+ÌŠ2ùõ1¼Oö¶ôb$¾Ð~ßQ¡$Wæ¿ö%)6¼æLâ€Õàõ-Ž Xšæêk–GkOÇôó¢¸,û½hÏÑk‘FÑG[h¹t£+O b¾<ß ªRÂucy#qqÎëê+sP l2ÁaòŽµ‹ß -})‹$h»>Uþ(ëÅ~©bÌ£bE_f¹Ò¼’ÌBœ¯Àã\œ+‰«än2ÔäÓÖÉO²c/ ±`î–y€qº½“=P·Ë¡r‚À•¹>pØþF-v¡ªñË´Ï"¤«%¤ƒæ\„!±13
+AHÓ¬|Û®§k ϯì"{ÒßyÖ±3Ž?<†9‚ºTÚyÚ<~‘Ûì–Ï ÜNÑSÜ ™üã‘ƹÕ#ȘLç8V]L±Gã©u%%=朩„r»•î¬¢ë
+ñ iÅúáù€bŽZ¯µä¦™›½™´±ñ!ÅŒ b’—ˆïw8&ùmÕ*ò"ÄÝVâ7>Ú-D[°ò˜Å
+?«`ß™êž VºoPƒ¿ƒ¥3xó~õë ôL˜à­¯VA€×Î2Vi¡ÔÍ7ò•ûÍ;8Io[Š“ˆ;rïÛ8˜å»dº„Ý&l¿üíBˆ[Æ@§ÒH½È³³uŠ·˜/•Š(\Ö·Ú–í„ü\¦’ƒ>?=?ÌŸSyÖ^©ÂãõŠÊ™>o•5š$Bó¦ë·ÝGñëpÝæÁ8xÕ@â‘7iº­çÑV#?ÿ!Æñlfh¤ÔÉQÿº÷”R‚Sø£ RZžºôÐè8k…BÌŒ¢™ýáÕ£=#þó<a"”oÈÐë
+S0¾X
+•ô±XÜNýŠ¥9de&±œ2gëŒ0-gÊ7ŒïGž¼¾&µ•ß¶ÆúkÄê×âø‹J õIf$rËe^õ¹9®Z“ñ>˳ókgÕ”J(…Äñõr.ȺØëïÞòóñõˆ!7ïm|¸­ã}ƪiÕ7ΙxV)B8Æϧ^‘òõÙipDTõúSÎOÜöy„4Ìr`žÈ¶ÖL=hÓ[ûÇ](¨'¤"Ý{ݹ٠¨ñÁ?P?6©åK2'lô÷–ý
+ŽÛ`þLGÖnO§©F$`J½9ÁŸÖGÒÉÚgc?ÜNF-³Ú>§š£ó\G†–×î] _¢{¦u¥Æ.7†pmŒiíÉrF…ÔaO7óµö$4bsººW[è:XÃMè¡-óð0O®²øÖFpPÑ„ª©-–åÄ.wþÕ`,zRøÌد÷¬‚óÄ ‡0{²æ'Í›¤ÛJU­M‡ù
+uXw²¿—8Û5—MБ¡Å€“GËYã>ÇD›:õ©]'æ«6=ÞžÃÄ<ÇŸoMÈ•ŸÓÀš£ýÎÛU×Ó)H ýëñðèw[§csS ‡Žõ¢öÈó#Vô¦HÛØ^‘cÿèVŸ<ƒ¨þ‘a…è(<#öÖÈü'+ÔŸ Bš.ò–BêëÊ—{÷Àáëá­nXuÔk©›hîAË0oïVî,(tl
+ûz¼¯wñ§¦¦P|æŒEº ¢*¶2a¤˜,ÈxyªqÛuåÁèÄ&çf±ñø:§§[Ì·¨å¤I÷#²Õá<Ôlh{°5’Í™"K"=FÅ0j7ÃG6³PŸ¬ÄDcs#è»­è"a¼O¾x¨{Èg†è™&yÒ§­Û›`
+*!Gt¹8¥×hÑ +º<À>n¸ªÄÓF/ü ' î75XËÏ‘J£óÈ]g¬Æµùò}ÔõR‚ãõ7ÏãÅ
+äTga}UÏ7ëºM6¾è“¡Ü )½méti^Çš3xíP'‹~ÎÕ×/G;šªÖ,,¥ªã¼]S‘ü(g…Žêñ±½'65ÅäÍ©Ê#¢“1Äó‹÷˜×„)µÿjbD» ~±™º
+Ÿ\ùmí¡4Ÿwò+Öq'rT¼x.Þq.þªx^ÕÖ½^ÈItg¬>]„oz^çW9·eävð™>Aðl+w³Ê|weôÖÚ×-¶<Rß‹ÉÇÛć_Ÿ I>ü8á‚p#(™#Í,ÈÍ ¶8iBåÕZ}Ô@ßák⬇EÉB¨×O³CGq¾¬ø)jãÑŠ}¥¸bÞ̱zz…åG¤À<HÍÒÙA¯¹aŠ9,‹§1Y¢’¢y:wU]ìA-Æ @f<ì 4ü‰cee½·dŽ5¶6½R†îœ£$¡Gƒiì×ùòØþ¼ùæ)X*ß×_ìaxÃoëDs¡?PkXÉš]aù ¶ûWšuy…Y&,(…¬
+rs¹
+¸ã w„M–­gM´qð|Fiçþ$-û¸åSø‘=
+Yiç®BMíúܺ5Gú)O7Å´öÈn {_=#Í+ɡ‚ÉÝ»ŽÛ,³ Å€ô  þd ßkhíÁÎ0jÕâÄô”îz=Ù9‰†GÞÛO’1¾êÓ­¨ç1u“Û¹‰åŸþxC›ÿTØ©/<ï-dªìJ‚•óù˜×]Ï3Ø ý§÷«^»H=Â7¾qLmv‚[S.CHÁÞq“´…ôä«îJÂik€ûú×d™bÏë9rØÚßbßmoKo •µ‘vÊ÷‡rÃ
+¡"wì¢ ýž|Â1é,¬%µwlÆ#|U6
+/h=¬Í¼r<ˆ{¯ .üûnWÌç\Óé.øäSxƒ{ÙCéæžÆÊz!j;‚dÊ*…ª,Zϼ63£MÒÏÅÙšŒA¡.e
+õÅÜöäXñ!Öóeè)Ÿ›£G»* Mü KÙ÷ß"…Ø65šâY=¸o*OöE7½_õ¨s-ˆ¾âQîgÀ éV€+*×kVqchp}^­ÿ„ÔÜ·›û˜L§$dq¶Ì.?@ôÕ\Ix
+O(ýŸa˜»€_{Æ>>Œ®Ùç¼xÌÚÃðÍ(ÔV¥ F‘XÌ8#/Ÿvm„ù@ûgþèσð¯´1Àeð0Zˆˆá½0þŽ¬lk“`Š±¤-ÝÍ¡fÅ–]ï©X¡©]qB„?+Ÿ“’hò
+óHI,›Výÿ«bùaJ ìÈXcªbŽÅ#tÿ¾¹Ö¹”G¨Çyù•P#^A—}Hq%†û%…Lú&DˆÍ<¹Š*ÓzÙ`ôš¿;£$:È@_#õ¬D${oih°'VTWiï LO<'?žýԽѬdÙ̪û4ì‡Å­‚ÚïµHK­aSjáê²5ü?÷¦m1r»ôûؾe+ƒyÇîC^§¹^ƒ÷ô,}–ÀŠŽoV<¡O—=ýM£˜–4ÍÔÕ̃¹è­§¿[@=œ{v´‰ê ³Ðý _=I]ˆ¬Qĸ ,y´ž™¼-mð½òüMN2?wæN 7­ŠT·ã®^¨”=©!Ùµ°µ:oyšÏ¾À«( ”d0x(|'í‹z5wï>» #ßD «_´+lj›Þ· g`Ïy•ÏîÜ—}i‘½©:Ãzü½cÿmÇ&®ôd“ÝFVæÊîŽþ£ð‚’Ë%€|@øœ·©E›³e°‡Ûš3x Þ»LÿDʈ>½¡Í;Œ]ë~9„Øè”jè†9mO)þ"b©‰È¬Xf\ÙºSÜ*?­*dï,§•ð–+ò<ПÖVq_ê””P‡+½Ñ£a"Pí*:‘EÕ€ˆXÐ;âÐôiIý…”S uI‰–Àw+Ðpÿa¥`RªQ~¸z |È‘Ò½EñaÝÀ“3
+çðÞpÃå"æÂf$†j¯k)ÞûCxTÅÙ× Û§-ÍJË€QÈoq·¬ª­¦­B‰?B_#öô×1lQKc«]K|2NiËÀ"fqŒ}èÄ:[EŹØò$¦ÆÑV Œî£1‡ÃìÍÙ)Y+®ˆqWì^Ä%™ Î,°ŸBö|fŽr$ýU}h( ¬Ñ:ªÉ¶AàëÐå:bõ÷ÏwØVºÊÔÜJ݆ͧ'­Žèm à†ÔÌ ë#Y{-ˆC9ñ°Ž~yŠt`A­è~ ¦L Þè ýM8ËDÝÆM¡ÚÖ§ó±¬l” ¥“ô󣜥(gÛ ~käÈ6Þ¤¾L˜}ë#ÅìçÙ‡ívØ’æ6ôU¥ÈAÔ hY<a½êîsÐÛÏ~ÿ"¦òûþi§¦‚+Þ±î¬KRve©±–mQ!lÊÀ¾w9Ð,&q¡
+ïä3å" U¦.hÌN%#k¬>_.›:‰œFÍ.ß-Ø}úu.:)Ç$ðë#|œ_ !Ù[÷-Oé½¹&¹èÈ9*ãdf&W4’ò"_ÜK‹¨c5ôYÀìÑÒoœ´«üÁóa—
+½"É".£7QiéîYVò®ø¿ºï ÖZgÚÃ-¤géó4¦vÁÓäe©›dk´=jÌ(|'.æU!æ;Ð÷4!™a—(»&7 ÙSjL›Ù5_“p4UÑÎ3X\±Êó,m!ë`P¾Ü¸›¬ƒT”±V‰Ìzh‡ÇãÐû%Ž³Ÿný (…~x˜hך˜H¦u#dº©Ôòlð5b^¹D½ÅsÀò{ˆÞÆ¥=À“Žn{P¡ü¶aÉEÿ†|í)¢ÿù—[üìÜÒa Š€X0ém‚Ë#×ãYÚ-Ù9«À8ëŠ …»¡ †¦q¦J2L1;Ÿ)™ê®Oõ®Áa’ba•hóªU®›'k«U8g8ú„ rZ‹…IWåå¸l´ó ü#!Ìo<¹[C¤#a´®º8THŸÄ¥ýnfú¡`ÄÍirÄæÒøúvÈ8R(?0¼Êß $zæGÎ1•Ñ,e&¡RÄ4ØöP¾¬¿« ™ç d ºž|dK 液©Mñ%UhÛŸù]822¦ðÖÄÏW›ÓøRK ˆR¥³Fqï¸BÆg­6>[ªNTÑýòQ ;ÀÅ5ÌâôhwÏŸBD?„[Àû#”¹öd!©IMZãÊ*~yF7?õÛpO:0…¨ÞÄŸL#ý²­¹,À›ÊNPì@gItÈ2s…„ÑWþ¥?ÃýZÁVWMU\?B“ãû9y{!N-òrd° \XÕ(9:?Èï`WÙé±?T ¤N"'üU^
+%-òãÂA-2v±÷1¡{VôE,Êt-Cb{ñXÁ¤TÅÕ'î•ÅÑ”s¹ßfN½xÓ*Õî¹øŠ6
+™1,HœŠõäIǸ,=ÆùB}‘›*ÔÑ<b­a„HŠŒs
+)æ!‡-¸?ʘ0½ˆ‡ ß^
+w€$üX<<¿òY6Ñ{„‡¨÷t¹¥i<¼üÊ®C—~¬÷Å9ƒšÚé·be}»dQ–‡x ¼ÈôHÓDF¸d·ìk ø‰Exǯ^Ìäo|¿ žóĪÊò'ØçÍ NÏ›·dŒ¸YU½Ò~ü`ãq2©f[êà`¥˜„;f’Ï@q.ðïÊèhê,YìI!{y±0
+Ö³%ÃO8"ÜÉ{qa4d<3’v-°dž,&”í –Á`\ÓaqBˆÿ{ÓW
endstream
endobj
-640 0 obj
+887 0 obj
<<
/Type /FontDescriptor
-/FontName /PSSDWM+LMRoman5-Regular
+/FontName /TXCQKG+LMRoman5-Regular
/Flags 4
/FontBBox [-566 -303 1772 1126]
/Ascent 689
@@ -4885,120 +6267,87 @@ endobj
/ItalicAngle 0
/StemV 106
/XHeight 431
-/CharSet (/one/two/zero)
-/FontFile 639 0 R
+/CharSet (/one/plus/zero)
+/FontFile 886 0 R
>>
endobj
-641 0 obj
+888 0 obj
<<
-/Length1 1804
-/Length2 21579
+/Length1 1670
+/Length2 15301
/Length3 0
-/Length 22700
+/Length 16357
/Filter /FlateDecode
>>
stream
-xÚ´¸eX\ͺ-$¸»Ó¸»kp·à 4îî\‚CpwÜ‚ÜÝÝݹä[gŸµ÷:ûï}úéž]ãÕ5ªzΦ QRa6±3IØÙ:3°02óää•íl€¶œ Ê 3k #€•‘™™Ž‚BÔt¶°³:ƒx\Îæ
-€$Èäøa4y
-vn €ÚÎ`2Z›ìLª M€šŠ¸²
-@RYQMI…†ñ#±Š‹½½ãÿéETEUM’ &¬ *
-´vùX˜‚>.p^N@WÀÙÑäãõß ÿsÇÂ0±0vþúÇfû'»´­©€ç_ðG'ÿeú? þg£Ò|ìR;[k€ ÈŽIÁÎùCÔÿÿì³ÿ¨%ábm­
-¤aaòñÛñß\äÎŽî:ÌòeùÀ?^ÿõMï ø÷ÎûoÑ""vî^ ,
-gXš0­ÑÜPðÚñ&ÚÁœß1b¾{„i§ óB°Fd ì»;Ñ÷+ôÍѾd>Mb"¿¡k…÷Ð Ów ¡/ÅT³?c` àBl²r¹ãéÍ#²= f#Is†&–ð1Afa¸½‰jÐƱb&ÚÊ“–.3ÍEª4׃»b;oì£Ë(õ…æS a%T¶­ƒhõ›Úa¥{9Öa¨3c™0Ñè•(‘Îè$7D+®C ùºš¼$ïRö©×g‘É»—Qûø‰,Þ1ò'ÝÌc}ú›–¸ƒ„òXæhÞ^!ý\¡eTüK¸W+;ZEíc‹Hü†Í÷K–ИS“L‘þÚÊ¥RbôŒ?fÿ
-˜äP·7·_xÅè‘QæaUØçð3H͈TFæ:Ϻõxfš_w¸ÝԞǺÈ
-4"Èß«ü»‹Ý,ÇôX´N±¿|W¸:¨+¤1PJˆÁ`5INrM;aå =;¶}R¢É±yh‘:,ûóÀÚB%þ[j?žbŒW™Nb3FƒÍ”åó÷®ƒË÷¬¨8’³oY2hfÆ8¨}濈0Á 'Íѳqý<Þ G*÷/.ä@F>é¾ß¥=«Ér°{áˆeÒ5ûmêL½£ÈÞùE·èòóü$¯¬p¯P¼#Ô”¼ÈE¡¢£ØÔÄ£mw1V”USZ)l ÝŒV„nŸii¢±×VC‚à‘
-¾@—‰Æþƒ– Ðaгk#J€…],ʬËÈ¡­ÕŠdl…(B^öÐæ{5sOZøóbæwÝgŒ£nt¶…~â@Bì„=¿1ÔÔ.f|_(2TÌÅÏ+Ô!iùl¨y™Ôþç¸ÜÁˆú \VØ:ŠüóF_ 8Ó7Óg1B}×?‰æJL5²Í«ò36;/ŠÁ¶L«…®ì­:X_ê'çgZGïÏ0Ptd=!â;ß…¬lX°¦e<¤¿6žÌbž°È9'ÄKÂœ7™½´ý¼OµáòƒÍõ«í½ÑaLéõí¾“’º¶¾§Óû² àt ëÿrÎó«E®5JI$=Å€ì8gºq´¾Ð³k¬ô1‰”üþØX}ȶ© óÎ[o†¤˜±¿õ•r<Øe1ÒLÐ[üEÐMŽøÞ¢â.V ÙÂ+l]õFuZô¾ø¨c¦ØrøqHžƒ*ÑzÐå°®ÚÌbõ»„=iÝ÷¦µ²&éð·a͹í4ß±Á_ƒî%'Ý‹¬N ÷ñòÉ¢éçÎ@™•ÏT=ëŒÖÜôªÄ÷[¢e~X·ì#Ñ
-'ê—Pßϼôi¨wd\î-Ѿ/Q7aÍ`Û†¾"vRy±üê¤ qÑh¿ï
-ò/ÆËO¹yT"·xY°W×vP-Ðô€¤â hE|ö&AøÕ5Ó(c–:(–•¼ÉŸSVŽk!$fívñy!yQŒëÓ~QäªëFÌO¾DjÉ×mµe~ž$»ì8ùTúÀÄA9Uj]z†hKò:ìI°–|oãŠ-’íÖ«ÝítÿgÊ(U^êW¡Ì:¦„˜>z¸#Jlð§œS®·9UãJ“ Ö äÔÈU,ðçQ
-›ïD/õ˾®Ë94Q TT„À«;›’#ñjE#²Ô· ÏØ/´Ì»Â ÛìöìÕ$ñÆ"ÂHö}¡ ­#µÓ'7,讲Y¸º)Ñ_6÷Ò£{9@˜`å(Õ_m”ÝF:éìFÅ槎ÌÇ¿q«]c­°á¸5à¾h×¼¿ÁY²9Yæ+‘µ§¿N IªÀFLEKHÁ#.fKx¸QšåfzJÚ3S4qùº¡&†åÊX›è34±Ø÷à »á»ÙÃVzœ0]x kô·}únT¸Èçƒ{èM4aûëê ~’N
-~
-ž€®3£`6B¢<ˆHXò5 fµ4÷Ó7“õ]1éì†
-˜ PÖq©W\¿ñ.èZjÓ³.ÁÀ`ÿIc¡ƒõà# ÎQçc;bÚHš)u%–'ò›>å†sÖ9 œºulUï#ëëE?hf¶n¾D$ tÀÊœñdçÊa¼U_¼¦ƒ"rï“sp\Ô¢·®- ÇW¥ÆI{ÆÓ@o•yAc÷F’Í«¶‹Ó$fß^gf¥nr~wº‡ëKÚÝePû àA¹Zhü®ƒ}rmã„ù¤EK‘>¤4>Ð:öI­Cbz(ט AW&Q\{2'í‹€y)ðÇÅŽéränWÕ |
-—ýxwïrh…äóÛaÑ¥úó§ÜZºn’ñlEõб/Ž©¤7ô“}߈C4bÄv;š“]X›Î·o)Uâ7XMªHˆ\rdöÅJ/¿ÎÖ˜žrŧ<?TÛdˆ¯<Æ|ƒç¹ê »Äñ·«ºà$Òf^r·ÕJça¶ðBú–å(:(ôÇnáOÆCÕqº•§Í¯ˆnŒµó”³—tb¡ÕBÊ?hq{CÍhåQˆðŸ¡ÇoÝ4MŽšÈ¡
-Ô̹§oQÓà þ~ÛºHòƒÂÏÎC¸:¯#ýd/xû]D'͇„(,L^‡ëtpíêèOOpKÚpÖ¶½Ó)Ûã£}AÏ$6ás²Eù¾@BbŸ
-ƒœÉ‘XþP² šÃlb†ªJÜM¡´CzübžPbÁW•)–¦Po˜X¨ŠàئQ¹Dùºê&tÆ3˜¢‹dzûîÇ&bòÎ1¼cöú¬F]eͬÃœŽŒI·t_
-
-ÖÚUY.bNuÓ¼Iñ…$‡Ñ3[Ü+=R™ PÁ¯Í @°ŸùLÕQ«ÐÆ®“C˜ïô çŒ} ²¸¾=Öâ•VPî1ó›ö`P;Šƒ¼Bò:–ÈNw.3½áõÍ)RÊÕg`©¾¡XWÖ O¦ç+óx ôi#ÿI¢a»Gjôr~2p/¤#-®+ÚÊ{Áw•ß€4 
-À%i¶nج†2)õÉÑFhA‡¥Pí`|U'ƒK´ •š"crÛíAŸGie¶ˆÈ1¬˜YŠú4ÉÉ/í©Ì3dÎåm‚êb7»üy‘âTÿÊívRìdàí¼D¸–JÜ~ee;Óú÷r|…AèÞ¿8Z}83T*^öâÍ­L?íU¯’ïÞ9‹7ˆKÉÌQ–$õÁ›Ç´¨J6C ;&•8Çô¯ìùbö¿Ù@Âd'ƒo/Š@ ™U+KŸ=d I÷Žãº?¼<à³êÐnK­'´ëÔÄp³Vì\·7V™z‹ ìºa÷dŸÁ)p²eš¦FÖÒîÓ›†&Ò ªp»ûÛeÊ^öm Â~­•)ûsISÛÄË<
-¿!߀437å”Ú€Uç8¡DÀý4äBçÀö¥K¡
- «) vbI´®q"%–‹<kM~LˆÓsì¹9E—ð”§ÆEåxD‹ÂÙÞÑ|ßgBdJÞ_(˜øšË2È÷f‡["=Ë)Ô·›ÜÁ#¯Vòôû*¨3€ßMÏ
-Óüž Cx €5·aÇ9Ú°Ð'~ý êÒ‡¿E‘ ÂÆè.xe¢Ñ*9Æ2úÁaRS\¤÷pó]”_·p÷›íSÉ.r\1ÊŒÎOq÷¤·™Ö¸ùT €…Ab×P²ƒ4ú·Œ»b.Ï;x”¶éɬècyeº ; gl Ï!¡ua[#+S‘ˆð¹&£T¢îIKÏ|ÆßYùX“Né O•ís;Øþ¤²ð5£¡°uÂ\Ç;’E1xYQ`|ù%;·¹>®ldäX²x*¢Ý#ñ¡£ÔÉ}a9ÙË&~ð»zWU“°PŠ¬Ú§ºÛîzó¢Qá‹ g×ð¨0Å¿bYûóKÇ ^£<’zm¤üÄœ:+O}Ü€kNÒž|R¤YÇi};E˜t¦Óƒ’qÒ¿î =¤Äܲ]òBOŽC«Ýä!nØ%`#t£Hd©8R+•lÃTEäÏOSÇï(Ìž~.¡î“Ù;¬õ¸¿Âæ¢ ©y;êófu•W!âÓ]˜ôBh~H}»Î;*(!SS¤ùr˜§´O–«8­¥nOŸU57¶åßB4ç ÂVç…Ì»9è­Áp^@ž?߆La^ë™2üäâS­`“í‹"RG÷Ý÷'4<\!…!±Â3§âxŽ"›Ã™–E¤¸z¸èʵ3|~̵¡L÷`ü~Ÿ#rÒÛ-ù#7ëÒ…D¡ŽÖ`È.ìõ×óþç!ý©8|Ó äojht9l‰IˆÊ—LX…iŸá÷!ÿDï€!ó°ïÜîࡈ ±ò¯ B4eÉ!LJçkþÈýyJW¸3ÛX^m Ô‚€ö=F0-Ø íez]Á£ˆÕ!ó«ìÒjx¤6_V¶~žðÄL)q=ÅiÔ_'»ÙϵùùõùÉw4' ¢a$X¤
-TŠ˜«l"hf‰¦[%rÈÐËàïèÀájêÊàf!›Æ~7!MýnDžZ ÂÏ;Š~„Ö߉a:²6îDÈY2`ƒ°g†Äbÿœn›í„­ NX{±‚t»¸Èßärê¸Å,Ðr³Ùí¶,KÚúxhÈR˜Û" š}‹°Ùëÿákeç ®¦é)_™ä/›§Iþï§=$Ô0xíË8k…§
-ÓaJã‡AÓ¬Úµ ¦‘Yzº×»‡õ3·+þÂáyÖ¨Õ&à:Í 4‚}¤ÀÒ×@Q“»QÓÜPž“¥Æ¯|OÄdÙo°©°9~?È*ººH追Ú­•°Õ[o–<Š\´v*ˆÿÆYE3¾R®±‹L±>×Ø›‘mŒ!nG5]8¥zB©úiÙÎdëÁÏr|;˜
-Ú¦™g„Ÿ¸®
-d¡[’¢•/° ƒüÕ+D]º°aŠyö'z.ië‘y+n]ß”äj|nÁ-£Œ—ĉÂbeÚh9Ÿf&xœ73Ϙú4 ‹[P?Y¹
-ND
-–c‰íK‘·“ ‚Ñc#׼̞¤ª÷BÀ ëÃÆù­æ̬H}ó„‘®úâH ’uRÿùœ**î ñ†O•}ºÇµ6.”gàS$$?†ij‹à²é‹°7eЋ"‹ŸûÀÝFmŸÉm2ÌGϵ•ÄŽ§F¢Ï1ß!Ö£7u^Ýå£^¹yÛ×uYs6ÝW¥@ظ^ˆ’wr99Ä€HY¼¶d·‘íӛͰgiŠf+³ ~K“q{
-íWÙ;ÌT± «Qé(øŽç1pÊZ;æË—ÞÏF¾¸O„^è%5˜­Wo},ñ
-þ@çqƒãMáRÐUJIŒ,c,õô~]ßlÄÍá©ÁÑÈŽŒ"öÕ_SF„±\óàyÑbo–ðxÎM}[’I¼‘,upÙ t*Î…é‰×;1êÝߦ0ùâ>AŽ $T¢[«ËµŒ¿ZœPp5?5Tg 3òóÎ4bæšÎZý_ô ?š™H\¶e¬%Œ¤Ñ–9 }°¸¢Bž¸Ã¶q¦o±ôu¢BI7ÛA:_E=ºôYám.”YâR!‘¹í•ÎR:/Žr<)±ªÒÛ´)»U®kõ‚ž®l~‹Ê¨nYŽjÑŠÈo>$ÿÉŠ3XF2º‘‰ –q ¿pŒöœå,ÃcçRiÝX’ò8™&†‚ í‹¢•á-ª¼
-˜PÏ“/M8 Ûò‘îd±X眂w”“?·Y"̼A¦ßF®3û–‹;}+£¡r¹qÔ?_|¨Ac¦\ÈXñ·_›ïrÍ’“[+§s9+&‡Üár® J¡-ÒÍ…)òƒ*HbÍa[°Ä:GL}"€d×u¹£þk4~Ú^G?ç(,˜€¤¦¥‚·€$ø«$è
-vзõ¯¨©Œ_MTN ¼Há ¸Nª$R­꥿#-•^%ìSÊâ‘tko8 €Ø¦]6,(áŒf€@–Ÿ.¼€ ¢v—Õ÷¤[“cÏbM‚g¨üì0šÄ‡Ciέ@HTÌeÿ3 ÞÎ÷½[{i.8
-Ñ7KÅu1¢¥×&Ývµ±ø¤*׋ÔÂ/^•Ö]FÐNáy¶¾÷õü8¤Hc莈ü4x¬¨‹¸à5õ~$OøÇèp½ÇŠÓA?påƒÞ.Ðûê;¿cÏëÃüáå=ô}rW€Ô”^:¡¹ 8õG;x<ë#Áy–cµÉŒdÎ!\9{>æ‚=×~ÞR1 Q/:Š‹{Vµªåsª*¶«ÖÍœwö󲙀ÒâV;ƒL}²×*¡Ñu[í
-̲vx?`êáqÓŠõ~7u5Ìõ[ʧT2¼ÌÖ™‘úŒPÁé¦àó¸}cM‰1ªVo%ÀøDz7, ”n ûªß­¦@Ytfý¤Dq 8:Ÿ’àGØ_ÖJ ´'1ŸN"ؘ$å
-OÅÇþâ -»>$•q×É:Udc®Ám[RèÆ,[½#G—r/—Âw~@ÿ,Saߘ!ŸR Cà/ýjÄ•Ç"&… œ•’X1ÛÿYŒF9¹ôÝö42«’˜²ñ¯#ËÇ¿ „'šnWØÿ¢ëB½ŸŸÄùÞpôZÇ3(Ù|»:ç„å-,R:‹$ú³à´_R-dÙ”Ê;[̉V=
-#\ÇlTw2f èzÿýàj9©˜Kÿ«oÙEŒ·»8 §µhÓÆÃÌcÈx#,yR!7vT^ÿ"u9fíÛÇ­ÿp³<^3{З"\¥Tø?1
-¨—'ĺžCæ27óìì~¨+yJLm¬X„ªF¥Í?±sµ?½ÿÖinP˜/5v¥è–Ú(ÕÔ§V+ú¶ï´ÇͶÌúÈ“Š¶y4¦ºÃF¼ü…ù}„„ËzÑwÞGµ§ß›‚[>Ú+«ŽÐcë·¡3 w
-%K]:6cKÔŽ \ÜZ*»ª:¯r4‘õ=|ݘ O#£ó¤8•ÊÉËEž½–è@3h±*`Òq=‡ÙŠAwf±ÐŸWb?ò=±ïszJ¢W®õV¿ÁÞ@Ö²žNDÞ¬% * Ù£‹^>h8Ãà—
-Õ hÿTÁJ¥ªÖî‚¥ñÀÜ+7eÿµ»ÕvPñÓNeö°Üi¸a,ÜØô¨ýP¢³•…*
-ã cT35ÍÔòRz3ð^Z¥áDí'¾HÏS
-úuýp”
- FëvŒ…²€%jõ´&ÜW0‹Z˘öŽ‹F£7‚?¸äá>³€òIºö¼&©¢ªøÞÒ Ik‰y1Âe´*ôY0.„ Lmçib AŸø0|¾AP|¤rGþçè±H’J'Ÿ8¿ffÃ)+q~Pzé=ÚÚÒcæ óRB`5‘Ä}JÙÜ®Ka<è@€þ¶ž(èréÉ€‘1oÇ«*Ôµï°÷jfª­^yËJQo ¡cïc`-ôEVÝDÃö3ÙAFVöµN»¯lXKEuqí±5bÙŒ9XrúÍ‚Dl­+±ø[²§éW7> |]ß3wÌ­pn*V”=èŸâ¦ÍéBKB=ÅPÊ·…<ÛÁÚÊhä{±mˆÐ"ùÒ>ÄÙOþÙJ[ø¤Ýia„@hp÷‰ ê`”æ&¿AÎñ“-¡Õb‚ixjoÛYÓª•5‘gv• 4Í)|ËTé÷ÖB{ÏpÛ>½”Fvl3ï3=á~\úîìFûbÆŸxÌWUßØ ¤O¾ j¥}5W¤ùýYdQÙé:ÝPq4¯ƒf‰E±áŒ¼‡&g ßä“÷^= .—TX‘¦¤˜Sh‘'Iäóh¸ðÂSw+iîBÁ¡:0Xíóû[önú´³¿Ìÿxweºîã1‘mGÆu±y§k“Huož & O)H!ÒÊãY(ƒŒºˆ•=üI‰JH¶ü,»
-bócÐðz˜èú rdînçíK÷œ`“/ÛŠLX Çx÷ψ²+î,¯ÅL4ØïÃGk=A(¯F þwçE>ê¶;[àŽŒ³t÷8Ä_íçÙ”IåŸUî^àt†pJñ¨`¹©àà šš–n¥XE†¢i NZ÷‚ûòÒ8êa8¹#W<OºPŒÊCfÎGråd™$‰ô;Kh ªÔõcѾÏ:¾ÍÜ¿ûÆ~ߨ2ïn7„¿V:$T-xh¼´¡Ç‘;–L˜úü›c'ý¬dàCŠ:“5u©ÃŒÐCHòI¬ñÌì[D3^h³æ• ¹'³e¦ÌÞûá¼:UÍZìV½ƒ0%¸üúèÞVý껩|óH¡)™Š {‚Yœ¡Bï¶sâÏÓˆîYê”lFìÈ-ß ÒÓ¦P¶êçíËIM‹% ´6s
-èý*T%…µ02ˆ6îtƒjy¯ˆâñ·Œ*’†:itÖ ¥Ÿêª/‚…¼‚yÆ<Ôõ»ßÿÙöÃE
- ³!¿Ð&™˜ É"H}Û,3©ã&íâÆI’o§'a ·ÎøÔôŽ.š>ÜÌAèeóŒék^¸z’Pe¦°ÑeƒùÒüä?-Ælª¿râ°Â£);Päšaw„£ŒÌ­tÚe±Ëln[û¢£r²Î.û!B1(°6OÔy§
-9Ð.HfÏx,n÷éJÂDñ·}H¤ Z¢½‚…Ú åIΗ†5[ynÎ~’B¾ÉMO=<ÏZ:"qêÏP—‰\r¿ÃV¤¸`ÿ1lB­OÔP¸Ì
-Çsó RÜ3µŒRªJ^ÑsÛõ‹}iL5Ö¥ã.‡¡Oí'ld£šñ ƒŽïmñÙ¸/¢"?•÷ök/eŠøÐŽ˜šÐv˜~ë‰Â¯µœ‘_ öʵÏ+z4o¥åD¤DŒx5­>"ã4»Q¹½øIÐà ~S5ŸM_ŠÃƒpìÔr[âŸ7åš¼ao6º\æ·êÅ9×À V_åɲ´À) -’e<KB’ìºÌ’ÐXð.ŸÔ#M/Èhz/ßúªº+öT»égî,BIÓ$úP+Ó…õk'Oj<Ø¢´kòÆõìgE¯ÆÉ#¾ÿ×â¢ì?ë¹®øsT ¶íßÑÕÇ\“t õWnþìè?K?¿T¥…ëIή¾WŽ7|æÔinñð6‡+E—»ŒËc¨+hÑÁÕ¨­à(¿÷Å¢èCˆ’©ÂÝ’¶Æ²ÑTÙlHÿ²“Ϙï0X™¼ ì X+.ÅËÞaêt:2Y:ƒL$¯Aü]z¶_†ü‡¾WÑ@A_f—ÃÃéHNËàóë†òÖÔ¤»½ÄÀ"Ú¯ÉÇÎáîÑeŸ› ëÈËÖáˆwb<0tHŽ+"$][öGîק«;uø«~ñc_‡¬«v£ÍûâèP()Æ]<Ê ÍqA—ÿ­Í¦I”?ÏhBåýºÒéSö*c>W2 ·#™®$2å½}²“3g3s_,ExOo&7q,ðZVQ-4§ZuŠŸÏÛrRÅyÈ«mh-‡¥ûm#à¸|“ó:VJű„š¸èÊš­N¹ÇÝ!Ðà''HÂNÀ,ÃI8ov‚*úY³Îw]m„7µ9˜Úô¬Íñôx^êmP‚ Þ%Åý ‡†…–P•Py,3”~ÆFE¡ì‰¾M‚ŠÙZ“Âg‚£›æ‰%E¨êÙé.¤‡I­‰`X¿@kw
-­þ¥xé!zC­öê —Ï£0@ÿŽ¢¶ôøýFÿŒak¤ 6Rôœáäë" 5âh1Aú'†‰·†R$>—\ƒ6=é:¸%nö`¸³„ê–Ö
-è ÏNZ wþîl¢ á'`7e“tB.ùæ˜xþ8˜Ö$ÿ[8Æm™H„ð
-BÝÒÀ6¬|¾r²‡V‹ßÖgÞÎf+LºÕ
->£9ñ‰ó_W5½.$gAèêá56s¸¥Â[mÂ;˜#'âßëæˆåô}lWvhÐ&ب9³¹:‹òì#æVÖ©™w®*¼†r¾Ò«¥ü± Öüõ;!l%þð{‘újaL¨e#IÁWÄú
-¥³P7'»Å‘‡<öh‘'Od•mA4mž&¨ ÿmW_{À‘ˈJtXß‹UñdC¾±D9æšýå4
-œ88,SÉ“?bdþçÊ?QšK½HþÍ4Ñ* }wÖZàÊw5$¥F¯àSoÍp ®ð5±_¥•õŠÑ¯ôMö8é·§ºsTÔvº­hxœËdøOgÞ„úTct«:|+ÒJºŠs{Áx>èô <Åm=V@Êw—ûZ·ð¤c2«ÛâAŸçðùK‘Åï«XôµÝ5t
- u ñËX¦çKÌ:J
-SÃÐ/5*RÔT=ºkV ù’2@ÀòL1³àÅZKoô/ú»¥b(B/B-üh?­|K àûô¦N‚_¯æÌÐw3“ŸˆØ®ÖåegáŸ(Æ=öØåƒhèÑ¡ G·m ìNÒÖbô)W‰ø”s°Ñcä2DÈ3†6oÄ&Ïn;¬“Ÿ]nòë;æj¶«ñÉù<§HÆV¤í¦1åñeÍc3ÝÈÆ aeÿ—ûÊì¼?æå½µá€háª&T‡£KOÅÒr…¸·Øú ¼GZ‹áé÷Ò*µLfÑy´o>€~ßš¶hst¥8ÀÏø?Ÿ/5B¸¬NÀ ¿4̆1‘úé¿UÎ ±Þfªïlê~J¾"£1¾=Jì‘žúŽ5|!i ÷ W¼ÚN‡&쮿³ÝMŸ‚L`sä=Æà€GÓ›$X\g'!nv“Y£½ZŒQ®øbAô©v‘›Xb¢–Í.*ÿ<}¬&÷Ç£‚¤!¤3Á«ìî©Ëÿ7çòÔ|¦šÊc",åã?ÌìeÄ:ݬ¡FÍ™}õ…hm­s¦iôŸÓÜð tÔjï´°ègº=± „Ì£ZaÜà
-Cý˜;˜1]¾
-Gr}{J+4C¹°cøöcÑìNÞ'LD0qî™idòi4( ßZB{èåšA Ç#%y…”[
-í©bdÛ1R
-ÖË™žÀLtFÏîRzÛlÄUè´dµ5OH§¿Ñ{ÁkÈ‹…NbùèíjÞ"0­‰u(?7ÒKGˆÅÊ[ÙBiQ¨‰«qµ•ˆŒ‡Õø^߬îJD€´&ûyóÂv.àî3{W©´)ÞÿòäØ5ðÍôª\ê GÅ8 ³óötÃL+?ÒÜI‹üð]V3KËÝQÆ™DGº‚Ï`H"‹±¾XxÇrž@)þ<…á=Ë-qâXîò’sð·èb„%f‚æ@a­>Å Þžï¶LjKW«fGZwßüT.#ƒY~ ¡H¬Y£ ìvÐÖxfÕÒ³xÞup‰l£,Õ’†¥×µa,G¦ˆ6õ¦HlÒýõsŸhãê"¥v<¡ÚÏ=ì¯o(çä9•Èo‹Ãã,4£miü‚?l¾ð‰b±7EµÙçÃOg0úÈÇ~®·9 ”&ògè†;±›Gvƒ£W)ë÷,¿yD[šk"Ï yø9µþ¨6Éâš ;$Ö–|·M$¹¸‹«8w¹¸‚G`ÖóÒH}Nlß&0%Ú¼Ñf’—;ÂÞ «ò.U2E?Le¨Âeßqé­j°þ1™3
-챯N¼~’îƒ{ßÛÔ‘ÖZH/hR´c'ÃÓ$÷ö²–±Û`†ñax‹Uvg¤%QiÄDÈßÔè&<Ô0Ÿ¦ßÙŒËñÆÜ‘ÕÉÇUÖ -9Ïët”/¾ºç<Yµ.Ö)Ø«ÕÓ{"eMøüSéõëÒÏ¡NÚ¦ P~3–.]ƒ\×n4YQe“Îá0ÀŒkËA ¬“dŸÎµ?žDÏ—FÚʉ†_ýuA缿ب€RS‚ì‚{ÛðìP€ÅÐzz÷uø~›žÙfLnTå:ßj?ì¼U[ÙFBÉyt|üÝ ¿Ä÷>ô)b¼ÛV5b)óŒ!~×N9QRØ„
-Ñ~z{j7ø=2! SNŒÚJš=˜€¿NÑÔH¬²‚ºøç5ê“h•&¹¯ò'™Ê@ëÍÀN¾Ž³A ±ˆ_Õ{ë±S0Iê¯I°!õÍÌJ÷J±¡ÌEB‡QZA¤{!4ØÁr5AýðË»~s Ëê6¶"z϶a[}ã”ƺ„\]¡V^qŸ´ae‡ ²7‡qÈ*ÉÓaPdu䇴ßlœ6PšáÓ‰n…U‘w·xÝ‘\´Ÿ7\ŒO¦–•lÏVÕåBhÆ”´Rs~¦Ü±'T9d8i>&Ì;]CVˆRWÈkꎛۧµÝÄØ^ç»ß,·mlH
-Ë^O²ùhÓ65”××Lý&É7&}þ68_d«1½‹ š7л‚ºY€øH‡¥O+½àÛ¯׺À\$êžl¤<á…2Hë<­á©é*'ñ‘§‘F°ÜŸFç#šÁŒü:ÀEUx%„~'þ¬Îu ³ÛHyb?Hk)ÖàYU‡¢×©¯\´*ÝÑÉÒ¾¹z®•;vôOýròçô
-øx³»Î6«Å~””† 6µš­¼Eö
-bX'Ödé·ýØS£‡zèïIîÝÌt’7Á$fþ€‹H¿Õ†ßËlÛˆ†š¢i.À•Ë>›h¬ =T4;‚‘à`!,––FƮ߷ê™ÂˆSmÛ6B§ÞȪiyV’q¤…“.‰ŒË9»'Úö{JÈŒ0+†8Ÿ£0Äáá^±ü:áœ|†¨T "‰Žw¡T_üîaFK«•Þ¨-(l·dÔrsf³ŽzÏ^â_šÖ´é.DGçÑi8µ\Ž¿!/¬„dI€ÔY=%ÑR?SÓîÁ©(¾š¥Z[ÓÛ“K‘¬ìZÖÒUóÅ@/ R&:˜ì$]ZÔärÞàg«/ŠÇvoa7£ªyúy'âBPÈ»j§[µÍ˜+…³p¾hu_Îvï…çáÇ—ú¼ÆD*ÿ4õ& ü˜6j_€{!tö8µb‰vøö…žÄMì0$šh kÜÀ§L¬%…®aîíå!ûyú]*K¬>? q× Üž,Q~òÅ7™fF
-÷A\ÞxnþW@mN0™ÔR°’´ô«±ÈÒÀ{„ì‚M¦^k»È€Ži«õt‰®ÊŠ`ÅÐRó–Ÿ:2—U&(Öç¬W3Ò9WƒÉª¼ŽÙicÒÙí–´;z¦ hùÄq£îý·_Ïìxð=5º’\î ü /¶Òܵg' 2 £Š?›4:@®KMª­,^lÔg:sB‰  I9uÀ/öUtÂ!¸Æ·§­˜vâ…' öfD»™ˆ*Zã5‰ß Ê/É …V¯G(w¼ø׶G¡²«&8âÇ0Ø7ðò‚»¹¥n­w…X嬃³8»¬#i*ùŸcÑŽÜ„IiÐ2˜?îì‰K¬ª]Ò-BÏ'qÉ/]êy4¿6÷Êç+ÍDÌÂÆFüI•—Y¼æ]cñ Ë÷ÊﵯÈëx¥b$†ÄÓUÑ@ý]çWÞSŽÔ6Gk»9©» ¥.à”ÆýŤ«Ü7ÄŒ˜ÚÆZ¶¨ˆêaÝòg2ƒ|ÛâÁ§Ÿòiòg¨
-Aœ±É+«^ǧ!ÿó
-™è]÷H{L³^ÍA–‰|1jUÙbß©ª±*Û·¨>'­Cÿ¡_l’ò…„‹[gc¶–ÛI|èEîUSÈm§sŽ\C§=¿ b‹ª›GAå`²,Ú1xÈɵsîë×£'Õ,cd³2 B¿9èÓeF÷X@ͨ‚Ýç{ÆÁ©<vç¯×ç9$tàË60¬ª³S½Õn°AäŸ$L[‚8ÞPNŒ;°62Õn»Ρx—Œ¯9õ#iuF§‚¤àŒp7‘n\nƒk÷0S­QÛe(ÈݬbzÛôLš²”WR³´Ù0§ªw‡„ î㉴¶*„ÓžKLÎÚþëtÄâmÂæ:)€î÷®ˆ«;½xØÇÙ ¬v»þ}°Ä'î*<mØ!Ýôdûò[—8lÍ×u•n;Á,P„¨yÕïdÌ·öÁqMo•nçþ—Zν î¯ß» óq;¥X:˜š¤Þ6*q vV*—sImtÖw
-7Ôväj´Ž ÄäWaë~¸bA*
-;•Ñ€e$O|)”¤\„¢” 8¨šß©ŒƒÀêjéi<Ü«Oê U¼¼Í™Z8V[%…#ÀL “lkø‰yÛ›ƒÏ7%šˆïÁðN…k·?̭匌‹ß²np­BHÏ"½;¡NC±ƒÝ¨ì§ág7T_ê¾lBYˆä”ë|"a£M[‹–Ù˜F­Ë2žY–µºò]c8Nüëo:·¤öX8V¢L2„„neqùJ„«Ùù34’qrýž“ —L‘¹ÓS°NcCí»uŽ0—6Ç7ÿü<èÚ:–?>¹†Úƒ¾Æ-kxñhí5`ö_âCW7 há$Yƒ×0°~bϨaÆò虎(Š²/üüí9”5uÃ9’]S´+êÎP¾ýÀ^á²Õ5:n‹LµÙ°X¨6®õ¸¿xDµ&¶ßÝŠõƒƒê³ù†a¥× ×|—\Ö‰·ºÝ'/©+¦?Ô_mf-W≮‘ T‘;÷:îûí³M>æÄJšQÛœ¼'Ûþð=¥ßúÍc!È4uÕcN!Ù ¢ ±žjZç­â7;¥TW †Š§¥Fn(:Ê
-Å ÛVª`+sï#bCì
-ÒŽÁvø*""²uEï&]mÖ»ËýËu¥7S éï´¦zp  –wY(’öpa·àrN½[-vþªÜ˜êÓÛÂxoù¤öU2ÕÚq­£øðÀ ªt0å4M—jé܂ꪕ=^g9†ÎÕŠÐßÅtÊÀIîk³”W¨*„á©"r†ÚÙ1.¶@ã°CÒ›G~Hœv¤#½Gø¾Aà%ƒµk‘Ñgh¶«éi6Ùñ)ŒwØÆDþ'F\XVÑÌAI Þ“J¢Y{9|Œ(Àª¶8ˆv>X£OnÞfî ÷íŽQô~™AÉ
-J9_õÕ3ê„îÜFh³—ô澎¢Šûs‡™›ìí PÉ®?´þìÇøö?ºàdˆ3¨¨å3x›QÃ*~=k¼èé)»ÿéãqSîsû³*ñ‡j‘D á1Eœðû!²Uµ_E}¾TŒ2•L`tr—
-öÛ/”Iƒ±š\B2‚áúù¥òPèÅ¥^6¼üsX_ W‹SÃ9"vè”bXÂ/k06— d~vXRËàji´+7Ì›±I¨O™ÚVÕ^íXërH0µFeíœ!<ó»JQ…"¥îmk‚Õú’<sVÑvÅZp¾0§'ÝpíjG¥4ªÑ,ÀÃ[ƒ™35¿ j=¡çÖWÛ궘‰‹ŒEkvȃÜ|™Oôõ¯L½ó‡ûú¥­,´©Gšë2°Ïž#}@N
-'‡3ùKm&U„g×
-Pù2£$~C† xÙÝšz»ô{/;×çËŸðÛTs¹çßÁ—ÕŠƒ5Ù{ *_öcŒÐrÕñúøcôÅ>C_†âVáóÊ}ÞÑLðXg9øƒ÷F^l ÝØ— wxÍsbø¯lví誗&.À5`Èõr'Cà*Å…Fk–êž6ÿú,8uljϦPêvvTlswÊ"ÙÔ™ÿÈóŽ0Πõµ ¿g>¾Ÿ‰dÓXªvÞ
-î‰tÏœö-y»5!ˆ¡·]ÕqñÊsy)&èWÎÖ
-Hú“™D–';}\ü—".œ:‹U4*$bš;± Ù†× 2 5Éâg›3ž¾UA„ÐXÁÃ6´_®SpBAøѲÏf3h{šðù4‘öÜ,è±Ã3ñ®fÎDq#ß\CIV¼{ô{§!Z"+è´¸ 8Óš=Âi w%sØ8=ùb%þýÉúÔ‰RàBùe®ƒÞÿñÐ<$žÝšbâ4FøÇæ/Dº¶ð óÚ½ˆ¶ÜqÈNŒ´?Âî‚…ä^97ä
-Fâ3¼ð˜X)9 '1è“•¤šµè€"1ïÂöþ_Ø–ô F Õ  §w½rB$6JUÒìco+†pP¬ÊdD“éW~’§`åk)¼öõ+­V€ÊŠØSô™H'ÝîîT´ðdsÏ‹˜Ÿ¨
-kÉÝhÀ>Ï
-$VÙŽ¡%¨Hx£(÷L)Uóè;¶)‚ÊDcz•2KŽ?¯q
-((YÛdÙù@þO¡újpH,¨S¥üY5‡Û-÷J˜ÜO”îTL–ØsJ8€h‰®¬ÅB7øêUÏ{CoPv9Dš§}'”ðÂQÅ&6Bú]õž:õ¯þ“ŸVù+¨½Áb3ÈzF™Õ~K\Ä7yh6&r ãÔ!wƒ ;[D ¥)\Í«Š¬@‰X°¿Ùaò›LÜ}Á-R®j6bOäƒñ±ØCëñ`vžÙ„KG¨¢Ì#TuòŸ‰ýýf“̽ë”þ‹ž ƒ¦ßŸ_qu8)—¸ÝÁ¼1ÿ›³) Áe³ ÂaÏ„ƒ.Çç˜4¡J§üW
-åf¦RÛÖ£æ½ÿ¢8ðFG¹0p]KuLmÑ` mºƒ1 ‚ i³V¯ÆûÜ+dhNP£"þb[Çѯ·§íœg\½š÷ gFÇàý¤6[Ó÷j©!$¥ÎéŒWó"­ X%
-ëÓ4‹CiñHÇÉ(¤úÆ_×z#2lØâ3"vó"ƒÏqiîR½|ç®fY?樴40¸{„i£þ…dE¬«Á`ÀBêgŸxós˜@p±øqùƒfþGu2àéøy·”@Í¿lÁOºz‡A¾(Ž_,@úiÔÿyqî6›dæ`LBÒÁ‘¡nØnØä_³"ý =%i- ë?_˾×ü¼(üÒ
->6‘“ï?#qyk.R†LzWî^dŠsêõNï hZ<¤TW¦þËå¡Y
-n¨1c_yFùí4r›kSìcL‹Õ§¦?™Çm¢?³è¾bûëæ".i» C¡„,AÙS^ïPOJ•µ•qP2q Ë àE `®\ÍÊ6phCó;qCÙA'N¸Œï…Žc@åãHÍE¼úùÎ\2¦¡ö°±29-1z‘>¦
- m}Á7©Én·³Ê.eöNŠ!†ÈTª"Ɖîsž
-Ç•âךĸՔý]“ 5âØ!h¼ºÅªÇí?ƒ`QÒsaæyµ+lš–Á¤–ðH£@ÝÎ:˜èìW¾AÛ[‡´2°ÎÕæçÒ`¡´áÊíË @sG]ûtÂW\­À6ƒw7×-cJÊOâࣧPNJFibÄLE:o»®¥Ä
-=ýú'¢êeÝKRʬàç“Ù±õñù²Å5¸ýÕ¼Ä5=Ù= +I@ Mš‹êP«n;ê¯1Æå,Qó
-Ûž÷lu¼ˆ.xJD>€§]!‹ãD¤œ‹Ó‘ÈÄÜx—=Ã,v&k̃¾ëò?qÔßÙÔd_£$"‡S«{KJîZ´_¤i ln*t@0x—Î ¬‚(c>ŒuÜøŽ²žœh *ý—;Œä}wNî°Ýfoñ^ñî¬óó Å‘0¦4¤r‰&´NnV:³‚ a™)6"^žü4œ½Äµëò‚ÿþìéþR”Ö‘GõÞ5kùÚxÿ9ñ†Úì'óL¤ˆ‰¸»ˆª
-ê·ÝaØsx¼þ ¤Ø… š¶¦IcAØ·¥ðçjò™AªÊ¡_²6@Íý
-À!8ÄÍAê., Áž³-Þiä¤xý
-LP¶m~:Ê€Ÿ(;u66
+xÚµ¹eXÝš5Œ»;Bãîîîîî4î4ÁÝ‚»Cpwîî.ÁƒwùÈsfÞ™93¿«¯®ê½n[uïµwUwS(«1ˆ˜;š%@ ,ŒÌ¼
+b05qý0,­€4!bŽN^.Ö–V ¿9Øþfú-Ê51³uôpµµ˜8˜dŠŽ 5€ÚÑ`
+´2±³
+
+rýWF ÀÂÚø—½ëß9³vøSQ”‘”PSgÿžƒ‚ãGwAž ¼ÿæ—çp3sXxØÌ"•p0s´·ÿ`íŠð·}âÖ}9ºx1ý/]Û:8z8øüoÜÂÚÁÜâoçÍÝœ˜4¬Ý€2âÿáý!üf ˜@g
+ô³¶
+`cùÇüè¿ñýhý_¶
+íœqaΘ,ŒSÏOÌÃ*C+ ¡œ§lÔ7LÈ^::³®ÌUqõ<h,œ!|ÈV.ÏOK(ÁlÈy(2œáÉe|LP¹XîŸßÄt‚‡hXq‡“NHËט£ÕÚ› ÜqAÛ‡˜'²J#áE#8IÕ?L·€4D†­Áð2}[pÔ9_™°1è•)QÎ餶Ū®Ã øº[}¤îM¤2®Ï£Óö/cG÷ ’Y|ãN{˜' wlð‡‰p¬0|}¹Â+¨øWñ¯Ö÷t¾uN® ð·ß¯ÚÀbÏÎ0EèªB–K‹Ó3j¥.L
+òX¼g3ª§®ŽwPÈ„ÄšËù૶¦)8u•â;„ÆZ`Áz'®S¶?Éû„ïÝÎÛÍÖü=ࡈA}Øñæñ¶ôcÝ<ËVnêÖ4ÇÍÈP8™01{o3ð ÐMiÃ'ôÐeØl~‰àj2Ù~6[’„Gè;Ôát@Wç*û3G} 
+oÌÉ¥R¢(´[gÉdéÜ‹·j—Ò’'jî7.i͜Ϛ7]¹7êH¬œ÷6¼Œáko-šùó©˜×Æjož~ƒ<dJªû™×
+ƒXT©¸á«vQ:ÉÒ£Æ\|½›¨çÑBˆ3Žr–_*Ê®Ûåú˜|áøVþñ66žküÛÏtJtܳ^tR‡Æòí•Wù›W
+±Öƒëä¹YÓIRÙ•‰Î£‰ÉZîî¹Â67ò¶"´]CÌ+›\8ue>Cg¡6»5'-²ªé½7ô§wü!ÐÊ1²Hí‘hâ8­¤t‡.nRA†Ï£$Â1F!»‡žzEœÛS ăe£xÇ0–Îúé*èÊ_*~$¡J1%ý’ú•½
+
+—~îhÓÃ>ZÁŠ6œ¼ãøÇÆ©-¡kÌqì… aP´”ÐÂMM6û…†"bé×8¦ cÊê~À {µHQ€0õ½aãÈl
+J‰[®}òܧ"Т(sÝçÚªŸý‡#b}ÃaÿUèc§‰,ئ…IdAv5'#£ÉxwŪóri°ƒý¶º¥"ûz¨¹YjEÈõw†÷öÍvÑ¥±°Ì\ž²óI'q†¹s_H²bÐoÖm>ïD?ÉžÄÅOa¥‘úzD¹Ô-ž \Z\“Ö;ÃÞä§y¾‹Ïv †ãë¹¥UûV­ÒÚ(FÀu^Tægø¡¬Ívø††‹¦ñE­“t0Ë~7É ›¼ž[–OO¼£Ä¼~qaÐ$DTpò}•Ø¸¿˜,uör®S´áð(Ä"l+s(öç#Žn®ðùZüh¨í ¦[³º²4ÙÁ“%´u“¼÷'w°æÊ
+cR¬Ž.3^ã‹oú\xznëöá k?õ-Ë»!‡õgøXâïSa‰0°ú2ïÝÏÀÖ?‡õcš˜ûlÂ{®= 2Ú”R¨¼ÄÈŸz‡ ÃÖ£órþ ‰ó²–’çCö
+ì) à‚(õ¨ÚòªiÁòX ¯!(~"¥ µ•}1 ºÖ)6C¢ÑHU@ˆ>š±gü±Tͬ|ͤžÌVL<J6)À묀 zÍÞæ%„ùl™6°OžÎèx‚ohÔ€7ÞŽ%ž%þœ8x €Ÿqn¢e©‚P]Ì)ß iÐ8W‹Žfç?PPVŒ^’Æfh;f5¬–Å™kt›ó›ùÇ}k ü±ÛÏwÌÃéŽp@Oi’16DHÀÕä—#¬vF½·w©T 7A>.Cꨡq^7´é”mšç`ï·\Ãoª”jF.ä”< ¾vŒ¬ÂÖʱdTñím;t*ÿy»8 9ž%ŒEÆÔyñJ]#°IÛþ^·ûÅ·8–Ò½¶¿·!UòZ»0ÏÞuœ6¬·ñ€XÊåTù4Ÿ~Ž~dœ ±M¸+®}W7SÏ‚äVŠÚ4(úÄ…Ö;òÕˆT><)§xŸ‡ùûšú(íŸ0Ûu€3”¾€sGã·Í¾‚½Öéù}™Š'ÈóéþìŠÝï¥Îi*Ž9©Î1`rQ$y©œŽÊ׬Þóö
+•IQ©ŽE†ìç'·¡(Iº&Î(ßxi³¼¾üŸx”
+Õµý3BÒiu@Àg'òá¶øDç›sâò³h§ªù?¯ýDsÁŸqˆ&ýŸAC®f š1‰Á^¯fèeš,Ú
+oè—? Šu76^©6“æx«qJؤWÄ?Óm›KÝH+ßN:„ª×‹ã¨$82w?µ ªÏ±÷<ÇN«YѨz‡ã¸]Â5–»Ž‹Õöv©1NcôhSÚu¼Õà\QSë™úìtõ]ƒjBù÷ѹ6Lcc*NåýB¬Ví§¨,Ky½Žˆ²·åõ9‘Ý=Þ^û(ŒÀÁ„~°žµš«8}ûÖÒSf
+Ê“l&¤idŽ.³;ú¬lN·k+a{‘6dSW¯4hÓßõᆃíÛc7Vf>Ï ËIÝ@O2®ÁÔÓ¸|JàèÍ˦§Ïêt^‚.ò€ À²È ·¬6¡vü^!E±˜nB&…MÈŽø-*†Twbp™æ¢†¼˜é„^ôn³î}k£æ½°|±7†e¿Íà!“Å>C0‡PÖ¢éÚ*!KËWkü2N3»]SøÓe-è/Ë¡=¯­;“¶ZÕf¬~ëèš ;€@HÜ#‹§ 9ïÄ û©‚©¥‘(] Ì¥‚Y€mA*2¥™-0LfÜ’΀WHŠ‹UèÑš„±Âä7Õão<[Ù€žŸeT{—†¦¼©Oò’^bƒx%»ª–¤B’•Xq å™ö°†“ Xoõ#ÅÑ`¯ûûŸ+2_,Æv]¢í†Lö¾ǯý¶Š x‹õ„þR†ð1ìþÅriŒ<HR —•UÕ…*\ËFƒIS-|y×"´¾$ ¾fÅ“±²©ÖÕÛ»~‘-iM–·z”;{§ê' †©þD¢Å^lfÐò÷H>‰{µûÕÜQ\z‰e"ì]FdjŠU§k2’
+ܺƒ‘>E‰Ò~ø¾>ä—-ù¬ž£éMnjžšÏL3žû9ûÚ³ éÔuzÏ—œËÇ€iƒP6ì(?|‘p"0œ3‰ßÐéB퇻”Luœ;·”?GûtXË'âÊ_´3Ü‚x€
+Lƒ5T Þ¸h'_]Þk`B‡zªÚ4ÅÕ©|EzÜ*×Ec¹á¿ueJhmvcjÛ†-kl5ÚÀºT”ó¬T\_°}¿Ñ¸cÄJÒcò<Ù“cülöhì¾[DaïÒ‘.Y·°C@ú°úÞ8ÇÎZž¿Ëƒ]]ãV·±mOoOÓ&턧”UÉ$/;´aEÜPxRjwÖšy1x±#“ò'Žƒ·îjtæ{ìS˜#]¡µ­ùÜKéãO!‰ò† øv=>0Ï~ŒáJfK¶´Øw¶iÐå:çÞèÁú2Ñ›;žkeä3¢ª±2žK Ú÷e*ABÒzîêäyúüöm -IØ]‡D¤{NKç´'­¬ ú.ñ#óô×cwS¿6çÍ:EM_æL¼0}V¯Æ4
+
+2 ‹¡‹èÂðç˜XæàÑS=%6Ư¢/ ^Ên99—ë/ÞÙòR"™¡Ÿîùñ=ª‹rO¡+7wÀÏ!Õé#T!;.KÛA*ÜG{@KÓ,å{-u†¶—ÁI4›‘B[¼µ]‹TŒúÝ­Â L¡c<±Ì@’¿uç2ÆwJ¤SˆèÁ)¹‰«Wý_¿I%¶Z«3Wô0áÏM­jÖõØ’ÆX»¡}ô@Q9M‡‹&ôN:Íëû®·Ê‰ ¥V+3Yó»æ¡çìfIJý<ãS¹ý–|jùöò®:¾.…™[Îxðð¢x
+ÎysiÝ.ƒËÆgNLŸl·«‘Déùç°1NŸf„©øïôQŒk¸ï”~¨$}zG0ñé}šJ¢³÷WÆX›\ýëc¶Ìa¨bpÙŸ}Ã'ãa| ¸Iñ'EÚºìÐ}×L@’i×ÂE~#Ÿ| “ÔV•snÖfh”vé#¹],£çCx]’>Ätö®fÑáëÃ}ÈŒÖ`¬"Ñù¸w5ÊQX6##¢ÒU²näHoue)
+ísB›H€¸,BbDòÃKÎÔûCŒ#¡Ïµ,
+ÅŸ†j7ÈYöÄÃ〆~VY¼ 8«Sñ²¤Òó1û”>½6¿ÂzŒ¢ý
+o5òTÜ뛕[—¼¡^å¯$XNsõˆ÷oÂø&„ƒ.^^ô:Ýþ˜äl|
+”n‡—ªÄÓ=8"ýoLâëÔ~5ú ßG]G¯Ñ(Š^¥Ú1÷S¨¯">Ë{pÚcpŠ}ØaÕn]g{î úøï"³¸ li&_×ÔÚå)žÈ|•2ê'£å^¾þ*8RD“”ÓÌDûŠ´°@:p¼60y3@ ì'.mH‰µ‘äœ|:-è9ÖŽóC Ò¯ ,æbü>Ë/4 -oÿ¥j=åÙAÃyþžFœ”?”‚'J&{ßsÄ}äÈõ°õÅ+ÆlÁ»öœÌì‘J²{ð¶rËìÞ-ñéhâÇ\:öx¬î®ÙiåòR
+Æq/Ò&º©yÌPIBu™À§Mb¬eŸeˆr÷¥°L¬ã©"Ç21ôÂôU½vË~º_å¯cw]+éæÓHÛï Û¹atÍ2•âQ/^èA½Ž/Q(âfIŠKJܼ×Q8¢
+“Ÿ™n¸Eý敬7jã¼ÇšÓ*èO¾b9‡ÀŸJ¬q |—ª²
+Ñá#ÈÔŽíÓ/„‰($ŽŸ&À¢e×”Oò 2+›Ý]ãê
+¾Þ·*«fÚ³»`©Fíñ·ž¼*q÷Þ<Ï;4‰b/Hž²ÖC~²Qÿ ço…¨9¹t™.
+ç ÑÍëÌnï‹NJ…X¾/ºGä¹tዳˆ zž}¥îçãèi˨—¬ê5ô!jGžÕy§Z ê `$§Ýé„e¨c¤!Uî×-¡â
+m†¦+gƒ˜}ܯ.’fÆâªÉ6™Ô!#9ŸRuæ1·cÒ†Yçò¯Ç`y8ó»9N7RK¨ƒ¾+jô`ž:¬=׊ ͹¢?Yë>ú'üvñZ™î&ñ…ö
+ ‚|ÿJ‡Œê‰Ùt¬þL£g¸ #kÕÊ&\¨¯P!&RÚ2ˆ¸Þ@Ö­£¾ú]P‹yóðhŒÿLMZ£àÿ 6£@£³ò…$Á?@lìi¥¨cãÅj}Êrûí!ªÕ ádMhlÆ‘}¼V¸{Úڜ̱'-»ç@H·ùÍë=2‹Ñt9“Új|²Òû1•^ìÝÜ~ñB“—2”H=¡,­f€ôÝRê9{áÛ–š5ûÜ$JCë’‡!^qÇýœòü©p¬ÑÈiBçHËÁ¥ ètq2š?>ºô&¹ú &¾FSÖΊo=Í´ˆ•ôZˆ®)Á@ Ô"åh›¬zõ`›\¯ÈÀÀxáÇ.=u€ãc·ü¤Hݱ*\`ǯµfäç<UnI·¥¦ ²àžXyµÚ…Û¨Æ^°4s)3»0,þyÞipV*§:|‚XŠóngnõ=Û,ð=„}µì4¾ç»ÄãZvºGèoC›ßÃc"Aeáä¨ó9\‰Ë€'¿Â“œ¥Fº2(W+ö2G×_ ¦XËÖ½$y [¼7á½’§Éeôåsò–ŒîPüAåíjÏØÁÂ<!€èžj:°(kOÒµ "Wµtës&_»Ÿh ¯L™Âs\ãX¦%È'ú·V0Ôoï·4Þ¬FÓÓ=Šˆ4|ùD“Pšø÷o´á«"šßr#{ÿ<™7œVGÆò¬ùèZÒx
+Ÿ¢‰<œé4ÇA•ÓN}ócjæ–Ý&çâ—ÖLÛý+Ç“ùÏ`PÐ>› m0ÒO󰚦`{Üìuã…¡¬ß?ûn°QQçôõk,.ÝY+khÛÌsÚ€ÐX¬£ò«ÇVcÁfâ9 d¼UyÆÀŶÓG!Øl›¢®^eô/Ç{Yø·sŒda R˜9C\ùÝ»Ó3d>B³‡z '*)Á™f±{ o{–w±£*Ø‹Ÿ²3' Ò­ëä«&äh?‡v'·’zÔÏ .°O&&X‰½¢}rÜ[PMÕ¾ÆS¤ýü|qgŒòôÙ®`^ý\Ø™r.Mèý\•’ãw„¥vûrÐÌ™ÁQŽ¤â}bÚéOjáS“üÈ_#»›wRø’0DÈ-NDÐfE^´Ä ŸÕ§òÙb/o]¬LŸ±¡±ÙÄú¾Ã…”¶ WãBGÇEThÆ-ïÆÁkhåýKË¥¡ãÓÚ¹/®‘Ñ¥¥X(ÃœQ³Wwî;sñ9Ü×iÙ—Cò6Ÿ/¶=õʵ‚éÏÆá,u¸ñWhõŒ—†9Å& (jgMúÙg槔ŽG`Û$cÔÔí>ñ%²ðóø#
+ì׌۷€°Èùžx<?JÃä2Ä5â1Á û=SË^â’À#cã|äûÝð71ãÇ@YD—SøòܳÀ(ñ}‘½¸­ý] ×õbTÉJر»@¥ß׬=Y­Îiy‹e¢ï¶“½Œ+ꚨ÷iŸy^µ$>
+í\Ýò¤™ÎüÈPLnÁÍúä„‘­#Ö‡<ÚŒneCoÚ8áÎ_@X_Ò{,Ȫt«n€t”FOÎ"B슌#pËÈðK®¬®ÙГ>˯Iƒ°%¯™v‡mœÇcƒ]:ÙvZ;Ø·’9s¡ y¸¼¤Ò ï©Îi'¦«¾åÍ"Õªn*.¥¤"Ÿp€S ­>áð3Y­áŽu×»Ñõ]¨FMz4Z\Z:8ÿ‚©©Ñ“ðÝ[¹s±4ØhO³4“Û”KâÅgȳÑÝ@”0ÁhUy*ª\wK(àºRçéQ]…Gçæi®zF¤¹AÈ0“™?£ Å}Š»BO^éÿø=Ñú™
+¾r½P&ȼ‰êhêÝZâ©ýÚ~WiVן“ FìE~”ù‹r†X³]ð{D}
+Dž˱@îã¶öêÆ'ñ¢XÏ*&VÂ3¨>•¡JQ3¤ I—“$Iû҈ϩã¯öIå°ÁoZcú=· ¦ß蹯Äû£ëZjÅ|d.ÂiYà5äëO9YPV½&
+!â ŽM‹sê\SÁQã«!pƒÄã¤{0ÈT:ƒV¦ðÅ龉( z<¦ „VR£Ý²•ïOL Kkªà®±´GžR’š©y˜fWÇiÀ“•ýÿÆü¨ãOÞ*;ýÕÊ%MUƒÆþæX]¢­Œ£¾hÆ-§‘pjâ?#f!aüCÞèÞÙª¢‹W“8 ÿxïèÆg*£¸ÛiES÷‡â¬0P<Üæ Ž*]ôÅ8£Ï+„ [¾daä°Õ<Þ{¥ôÐ/îÔ¡÷6wu\gOèÖÄž…¶=Lzè¡ÀÈÙºn™›p-þ 0•åbÛqÑŸ®¯bû2Eä4Íï9Ópüt')
+ýé¥X
+=-Ö&XˆZ³©W_=üŠè÷I›eì»3ݼ˜  ÑÜA×BL0ÍÞùƒ/ë† ºÈ°âF­eÒêzÙúÒ¸/Ôz3óeøQ<¯¨°Ð¼±IâÚg Îç˜*ô2…7!x3>ÔU1½ƒˆä_är(º=¶YÁ4Ç8âkŸ«./É)
+ÍD*t{×'®/ ²;Áµ.„XÅL?{BF­yÁnkÎ"œÒ®7 <Gl—xÛ,P4=Kæ(m…ÿ1†Cùœ¯ê÷œb~RÛDCôA‡CÀ›dµÇ[SêaòŽK
+¡³ï]2è5¹à©Ðp}
+wY2îU›W£`Ú“àâH¨2«uH‹Ô*¼0ß!¨èŒß·ä¢¼ôÔ÷W¢Ë¾æ}›úÞ 1ÅOȶ(ON‡C4Jè? uüž[áÑ·3!¬\»=ÅSD†çÌ¡ õIÁÛ\fI%âúláÍIË¡˜’&0ö1R¶jÊq\ßÓYöàÞ½$0b/ëDÆ„òÀ$ªó0º‘_*»˜ÚtSÔô=s#Eó]Äå²>Èù…œ£O½ï"G²‡CѨç›@Ž^ÂwÛ”Þôi>Ž¨½MÒ^©> “­£¨¤E;·¬&XìcçùÇ[O•8®=– ªt²ìþp!œ‚4QÃ@¿G‚†”2Mž· üÀ³¥I„#~s½h >^sŠ°Q¤@Ø,©¨Ðø½òšuɶAv¾ùñR:…ç–sáþâô °®—ú;Ý›IZPçŸôI×µ–eàsë<[s°Õœ¢!Wû¯÷©ÌFü‘ëù2è­>@_‡86]œðŸ $Ç@š]©Aé¼ù¯¨µ°ºaà(]¯ÓÞÔC~´C!Àãuýb#G[·C§Õ…Ų¶¤ð‹£á‚*¯·8~æ DݯJ£m¬21 ´
+öÜ~¢ÀOÁ—û’Ýc82a1X.H`ñJO±Ìn 𔃬$!h¹Ü9áJJΉIÓuçÚ]œQã`ô’¥P»‡c
+BË ö=˜_A§'™ÈĸíÍs¡CW[dÎ|4†˜ŠŒ c£Õ™œ‹C¬°'„g”ŠÜ‡¹˜Ð¥-Ød1fý<icâ¶óOóE„ËO¾SYÃà{0ȵÏåŽs~
+sYW³~4t³Dpš&ûs(N]7c^³ÑÐ/Ë6-S
+Þ6óç'µÃ]u¶¨Ï,­;¦1Dy£Nã—ŒÒQB¤¼è³Y߬¢´§$=t˵‰z}~ç¸>‹>YØò1¾~³ð}•™%‹Õ˜×—FC#˜THtÿÉOqÉÂ5t9.‘ÝØ tÏ5Rƒèäúµw¬»×¹½êRZ°h.áEâ˜÷Ðúwðgh;:^åµ
+Eß[,v)(q{^ l¿mKlì£'HòPƇÂZw˜ï·¸Ô5–äœHi“T?‘×50×ü¼¡µVÀB—k»OÅ1_£…œf™õÜî—úøØ5iuïa¿mô§3Í!¸µBÉùô‡uÌiøFéhÞœèÜ£p‘8Mc¥Ô¸sN"DÆØ÷³,j•¹ˆ¬–SXmÀW]ÈëlªqÂ×úñÿü꬀;ãóøܧ©Âc‰.ôB·)ùçwUa«ž:m,L¡
+‡²>)òL™â^Ù1Ø´kt^¦\d]FÐðü3­Iÿg¶}b×3¥›ºýŽ5Íû¦Æv¾øq¼´õ&4 ?ÔÜÙä"ËíŠ!}‹K(q÷àMßε ´_"
+è[FøQÃÁGLAÆ\Põêlþ{½èçkZ¿öb8*e<TAð‚0ÓÜKì þÒèv[Äé‹ÈÍ™©5‹ùrY(¿µ¾…‘„õž-¡—Ãöåv«Æ~ã#–—
+|9®w²>×ïÎhZ(¦Êwiî 4Ž @nNƒáMÍÿñ®¥²Ä¯’û·Å.t”9õèËáÁ‰U&ª= ½¯P}¢Ãl®W9Ä#X^zO¬ÞoÎ5™`©êÕ /¶ÒwÒ]eYw«.\Ù²õÃîÛ/9mÔŸ5â–Z % Â)r”i—»s@šAZ¸n:Ëø ‰ÑÉhº¡‰ˆ 0÷+‚rH)dxTKbGY-ðŠµ\ǾA(A-?À.þdz^>\V!è—€ÿîûsظi¿Í%O[]A.í˜LP€›ÅXdL3‚©æá@ ìÏ·êk†gÄ`o\þC=œØñr‰1÷óÅ)/±ªeŒ®Ø[ÇŸÓiÁ˜Ê4œaýY/éí,êéW¬¦…ÄÅ/ZÃb$2:Èîhª0 Wù¨‘œO¼j[H>¨¿_ û¦_„¶’ÕVÙë×–éÆ¡÷¾ôʹ)7!/âPÍÔ
+3=”PLº-Æ9:CàåOÍ*}•Ñµ›ømêýkƒçÔ¶Q„!ïïfÅèOåtéÑÞFÃq´M"YþèŠ Ö «»º=C¹Ý_¾§»ä ¾º7E
+_Å•€d-ùM%‰YÛ¾¯à7ïðÒ£²ÎI˜3ždÛv{]“A‰Í`b.ž´sp0@à<ŽÕ̽ñ1w» ‰-ÑN‡¯êL\ùcå9t4–†{»!îâ*€–ò4þƒÜhúÅ«¨‘a'ŸÎp¯{mÓ;`y…Q|óÛœÎ~Bä;ùþîŒôqPQ=¹…¹X€LæûAÊÜÖUÁ;NcUå<ZËyõ•Ç—=Z˜E
+f=züLaˆ7©ÑÓægZ’Ïph^w÷,ž­60]ÝkäÎMs†˜Ay±®=l'Æzzœhkß.—rR…MH±ˆýE^’íׯœ.ÃðöT$6ú ¨« üOö±ŒS¿õ¶½íŸš¿dÍ4ÄB"$N]_68†œ¨!®¨|‰m_ÅjÆl81ÞSñOm¡KÐï Cp3Ù[ÐÐB`KºZ}¿ñC,‹lºú•¤â™=Ê1ø{g›ùµàÔû)Y>J}¸q—Ö(®$ˆ uámõ´21ö ò$ Fý6ø­jó¥v´HevU^±ƒS°3;Ýè§qÙg¬sVf0]ÉŠ·V*×#oãU¶ÃÌ%¸®2ª„~[lK>“$ B˜k_óËq;<¢R
+tŒ]-7vJtÁrù¡‰Ž~b5ÑäÂâ:ÔêŒÏ …eN•üÇf‡¬­Üô%iÄ’3ßç
+®zFZÒ+¥Ê¸uѺT;¥kò®lñôl),Ư¬9-&EÐ¥Î#PhйÄ5€š&cV,»/Ë7ó^WÂ.\ƒã×ܾ™ÔiצBŒq¡ ‘ñ‚?8ÀDÚ(¯«9ŽŸÛE{j±¤ÔC êÿÅÅÙ
endstream
endobj
-642 0 obj
+889 0 obj
<<
/Type /FontDescriptor
-/FontName /TRUNAO+LMRoman6-Regular
+/FontName /FPXUEH+LMRoman6-Regular
/Flags 4
/FontBBox [-515 -298 1647 1125]
/Ascent 689
@@ -5007,118 +6356,118 @@ endobj
/ItalicAngle 0
/StemV 83
/XHeight 431
-/CharSet (/A/eight/five/four/nine/one/seven/six/three/two/zero)
-/FontFile 641 0 R
+/CharSet (/one/three/two)
+/FontFile 888 0 R
>>
endobj
-643 0 obj
+890 0 obj
<<
-/Length1 1885
-/Length2 21786
+/Length1 1865
+/Length2 21565
/Length3 0
-/Length 23010
+/Length 22706
/Filter /FlateDecode
>>
stream
-xÚ´÷eX\Ý–5 ãœàPwwwww- p)Ü]Bp Ü‚»»î\‚k€Ü§»O÷yÞ¿ßUWÉÓÆžk̵kS’©¨3ŠZ8š¥ÀŒ¬L,|
-9:H˜‚|
-r
-°
-æºð?ë;âìfj÷ov
-t:üáxG@žÿ^¿g[»
-/ó—,˜.‡¥äe:­ø(¤#—
-¯y€aœ®¨XÈ…”vU¼Lc÷œÔÊÙÔêûtCìT2¦½´úÓÁ89œämZ¿m¯% Xk§$–+•w«?¬O$»‰COÊl:w_Þ©§mÒ÷ÏØ\x™QòM,$RÓlç\ Æý²ùQ!{FúÐPæ 'A•G
-S­nØtd+ëe>¸\&¾ÂÁÅjP´ˆñzlì©Ãb&'¸ÒÓ\|Ì£ø.Îö  UÀ€Ž.€¥FP„Ý-¢°‰È öû¥@›ëÍ.u
-™Ò¤y§¤~¶ô&#)/ßà½%½6ÝÃ#ÎÚ`yµñõjÛdøl^Û´î4·z g§€cWQ³ýDÌ^õ5Ì}«u\Tõ1%‘]~â›cÙ¯äí3Òl‚‡)d¿» ú\~~[juš±äFÞ•éŽgˆ™^ýŽ" FrÆ<2+<}é(ÍLîÔ½/ÌÌЫ¹T¦ÖUw7‰²Èý—6?ßêtÊ’J`¶]¥7nìtL&¨W‚Ì?£¡6첋ê=”·ÆÆg¯s¨5ü ˆ^J|BÇ[O`EIèo¤HþQɹ¦æJ¹*¥Yf¿ÏŠ9º7ü‡¢µá4Ú dƒ[ŠÞxDþ¹ŠPðPªýU²â€º¿ëgcš*¿ßwqç›zU-†yEŸx-<[`y’ãoX[C „¤§2wjuxÎÚuf8òfbb·£–þTÑ\*~Í[‡¾£]òÝkŠ.Âþk.…<xÑUI#¹$˜tÌ;Hú4E€éÁvgù-rv®P!ÎåÕš,\mònùºŒ`ˆÜ‘Y¾Q†R†>}`d|¡`N€.º\å”—ô­8’ȵA!
-×,Z>ßáG5SÞÈÎq‹B{Ó…ƒñ9¿¯­È~3
-yjAšäžÂ…'2.å,‚ìóÒQ)ìAá²ãΨ´"™ãñÛâ4û¹Ãä8Ò8žØ9 "[A„B·3ü‰€bÝ_Ò¸ÛÄqéró®=<^Rû–fXc8—µô°
-þõëgP))#É:H€ñ7Re‰¸c­)ôÈÖô샠}Áˆd™©WYŒš7I‚ÑNv÷v×jNrɺÏþXŒ±ùÁI¸†§êáI͹±å.jËP'4&çH_±Vñàí¾G‹³_͹ón£:‹©©#¢[­ýf<éS"«ö³¤æ—‘ö¯ÂBP½ë¡¼Jòœ‘ÊeÀŽ™9 ¼èÊã†m Ô®vnâ˜íf·‡¨Öɯ*ëÝ•çþ1)@´¡åÓ7¦Jê†îüræ”_^b””áŸ{:g+Lùq°o³¹±ª ðV~ž¸a|‘ŠÏÆÇêt'áI¿i|¡¨9œÚ – 5½ƒ›`¯ª ûÜT(ƒ)ž+øȨløáô}:pm´FPo—i«³ûµ¹Ý“ýDtÄbTýl!EЭƫ—µ%О£s'¼ÚSJñ[·b 8›¸XæeOÆf ùp ì
-5#œc¦ú( $fûì‹9ÁL+{kÝݼOjÚ¤Vå¤0…ƒìçŸã‰^n ÏÛÔ"Gâ÷é)c©v¿&DC×6Y*­>RóA nVcY"•R
-jÉq™P9è§Äܱ= +·BlÉ#cÕÙ>EΆ¾ y…Ôíõ
-”÷k¥”™-'º®R¶®=AÃAéê )r’¾ õÀR”qªë¹}P߯ƫFÌkðbúÝÄc]
-²_tua‡h8í.#\ÇðC=‹XV–l1æ• ç¥˜¿æ4‹™ÍØ=ªªÄÝ s’¨R²& ˜]' 0ÒN’)>ôG9Ï)Tî¦x3ûü†ëaO|Öb êKú°ÅÙ«råN Y„œkËâô4±&j?Æ|¢%ƒqܤû&ÓîF.žI”ñé6€êö×ÞädüGŸ=1ý“?:0äèôïÏU`ƒiÇ ü}ã \CK#áËNÓ-qdüKË ý´=Å
-âƒd²Ûß8‹z¢í ç®™X¦ÏñSØæ ±“ºEæ ]ú¾Û?…!¤‡‹›Æ¸~ƺ¸Ó8ÃÄÏW7–Óªí>à´‡Ûíœ.…R=:Žh¼ŽÁHçx+†g‰ÖdÔ\9¶äÚr«9ÁnžÎƒäÐá’þ… M‰¡ v>Ýp!äùþ€ÎeIi“„í/r=hŽ§ev¾ƒuîL†ŽF¼ÈUEò‘ W<}ùWqî“ûB1ägqiÁÐomªñÉ/.ÓßDÈ"‹Ñ«Ã~]Ož›v¦"ê-×jy,§»úüy<W<ý‡æ6
-¢iáÝ,5ªúý©×^¡"¯«“g3]9nÌ¡D|=JòËå5ÕÜÜPË¿Ä•¬þT@°ÔÁ(2+)ùš^€_=xkwÚr’0B­‘n€Ý.(](
-r–T³¹2´¢âßyòiÍç5„Îç¾Ò‚ìUwûr4·Ü6Ì%¡c%Ó
-ö¢Æ¬$öpÇ_×NƒO}ü#‡ü¾òÉb8V’[k
-_ LWAWÛ ?r“ iˆê¼27aü|Î"¨Öˆ…!Úú~i'Jl°]‘J­ÊP´€½i/],Aÿ³Q˜Ç¯žÞ¡Mˆ}ß#j&—¤<Ê4¦ºpe—wјSx VÂ;CI=TÒ„pUM×5[ŸWéŸAÆ­ø=[ÉŠ¨´ŠgýQoÃPÔ–AÕ~ÐõxžÏµ÷B¢Uô—É¿
-KM}b¾ ¡xW"v HÜ®>˜ù&Ÿ|ò 4µ9-)TSÁ4`-$êˆv¹Áû²Ú›k+»f”ñíE]af®0Ë/*Í÷¤À$«ÆÜ©`÷2îT–žgiÏLx¶®GTúʼ–ÚÔgAÿ=²ŸøŒx`ξ#¯*ñ vÅnÚ <«›Á)t@½š7‡¢º‚læ ;3î1­¤†·^
-¹ôgïmÊÈ(
-ì5*¬ÖÆ!àíÑOÚ%6ÅstQ¯áw™M¦cHžÿIÛ
-ôÕvtÁu‰KàJ¹²a£‡Â”ÀY1h~MWà„Ûïa\–¿¯}øƒ=¿AWMSWxY>­’í®Z‘[«´ŽÌŸYÄô-ö±IN’èu]¸ªÃòS\<ËÎÓ>ÜÔ¼))¨—ô‰€OáóçÔ–ÆíùÄ<€¿»ç8 žÔ÷˜C̼Ÿ`[á¨+ô ôXX÷iDžË#åŒi¦Ó¾|0ŠþíNA½šQ¤N«EϬ;„UH³Ï0pVu÷¼Çï=鶙–+Ô÷q1:^Â(Îâ*©‚×rKÎÊ ¶`1¹y¦ºq&}Èì‘m¹bo•³«D÷6¼2¬12/nr.ºíÜ-;¸Hƒáœcœ¡ÙWìxˆ]šŽS÷\Ü…/ôÛTWÙ—s1«`Ç(
-D“Œ>ñçç/³ù¯N„ÄO†v…Á¾äo;•'ÌÉÙC•&žw1¸ |ÙU[›ÅˆD÷f؈³BØ4•Ô2ßÖŽbâ ¼v·8%qû— ÎàAÛ˜7<N†0¸ŠDóHÔËÊõ¡y©¦ÈÐ~f¯ÉÔ…:‡^‹¿™û’_“ír¿Ã¸­¸*@,§cJt²>øàÔƒy9¿Z…¨D“ôUÄKyÄŽdÀLÎíÔqŽåÇ™¬ÎN}­Û|g´Ìƒ`­ †Y£õÆ쉿ß)ºÙŠ€uá3”–½P9BË»œó;yÿYkõÝ©ºÏ¡.'¶µ.j½…éš•ñ#*ìÙ–¡òTÃÖ…iÇ2™â»t!Ý€Ÿ“|¸Ë*lýÀñ5†ˆà€a/èɦÐì;¡²îc
-ýýs‰ke#$ÙÕ¢v­Åõ"·íªŒýìRqK&]ψtâ_Ntj)\ª?=~ù‘~>çR××¢oRÀðäq…¾(¥ÞN~ÄW
-mý<`Ñi²QMƒû7)yL –ª5ÝØ•ÚĘ:]$¥/’LиšYL¢m]{E’e׎óhî`ðäæ]´5ùBN².ÈÉ­Ó ªä°Z°y‡QQëíÖËc™v-«WTñÎØë”åeãÏþš
-ñ¬þ繨|™99RqyUæè`ÍÉm„œƒUã£ÈÓk‡ëªnÇJj"x¹Æ‰øåØTŸ¶‘²Düð&€>6!Äó1žÝ22¦”l¹E³U4 žÇþ\¬ðòåÖr’çäý¦ÜvlŒF _ráçX nØíþít¸Å²Z.6¤O g¡ú±‡>×äé$¤ßšvc’Ì!Ç¿ð -©—‚õZdÅ=ÍP¢¸%7̺«ˆ"SûùG¶¤5”!QDÉþ/7öUД #ñ”á6Ø(yôÛzÀÇ_ƒYÎç5¤"Œø ×Tnˆ¤´“DUYøàÙ[Ñ0ò;G}ƒB¹äËžî$ÍS{I³‚í6Ìç¹ h¡i|—$;®óïèÔÖî ¨ÿ²78f¨Ž²â¾GÅš×øöDC†¦±000÷HbúÒòg9Të‚ZR1¯ÔsW4«~WÅÈ”Ë*2 é:Œ9•»{¸]Dƒ=鎑¦€$¥ÄDafWm+–6’jÝ£= ÓC‚€m²f*¡ï©ß,–cúæ&’n”Ø2zb¿v½Êœeà ê6ÛëÇÏûÄʪlS­”F$þ =Tîi(¥Ù ™‚×þKøWhÛ$#ßN豓o‰5^UqÖ†ò!”ã„eŽxíϲjµqÝŒQ ä8·ð¼¥R¡2­ð“ÄÌ=)ÙXöxŽih`jõ¾kÈ7H¾¾¶“ÐQoÈU£m TÍ÷ÔB×Ûî/úüÔÇ5c¨ ΰ‹vŠÓ*eói~Ê=•až[ψš«C¯ìˆE6úq|?›©ë\9Æ.Ο5ap6F2¿gÁc_KâGƒÉ-¢ÐN‰d‚˜_z!ÙËs™ö¢Á˜2­wñèd°£õÕ¥~AÉ0 Ó{"%LCìJÿP´p‚éw£×Öòš g]3ÊêV„}­’m’Ð-Ÿm3(ÞD꣭l²Oúµßb3¾ò.’´Órš›¬-‹0ð#eT©g­”bþîî“ìÇ=NF1n²Ì!Á¹I6^p˜»¯ºyiÚÎËb=÷î”A’襫…‰j±v ‹“Äôy¬¾0×Òû€ë˸ãÍšÌF¨waÀH‘Ù¡Œžœ§+Él߈±×üÐ:-ÿx«ã›ÜÍ«d+‚LQåxʆ,ñÔM3i¤ŽVZŠ¶‡ú–{3WD‚!¬“1; &SÓÝ|^ð× ç]ºp/|T…c±7‹
-ø!ó™#ñµLGùÛŽ}Æä PÚ¾øBDÅ
-?‰Ióu1ç ü,òßä‘`–˜j$†ŠD Í·sé6˶j-wÇÀ3vM\ö†Õ’Ÿ_F'ÄÍßmd¡¸“ø¨Ó~ßÎS¯µ õýÐ °)wÒ-ÞÅ]ízv†hOš‘!ì¨mÉZåØyŠq3îU[¦^Ñas,˜"|z$šÐAÍû6ЛÖ'…ãé*¤µ†žÍ¹_·8h-Ç{Šá*²s60Nzœ9n¼8¨rÁ›5Ùâÿ†-øg=Aò¡Ë࣎ÅùjôÅÞÔgi®“mt šò*|¼yã9󦬽Vp\˜Opý $óݶÙ]•@³ “Ïa: *´'LŠˆÔ
-÷Kº¯|ií:lÓb'Þƒ}¶Á§¬¨ùT‹72{\n'ú•ÓÑ€
-b«®¯»2}d˜(k#pUÕZ8™.òV'´ÜΞïO {ò©’­?’±Š’IoóPË£w&”÷kb<î4™Î}Ì67¢-óÉ+ÁÀ–Wë^a›Nf/Ö“Û‘tà.í¼$‚¢‰M¼8Än*|‰Ðï!¨:Ó„&ÂSÁ¨–?7E{‚w¿¤Ëòïz·;âMKj°c䥟Ýiݶ›Û‘.$>÷ IL‘h8謌µ7_iI¨ÃÈ÷½:×™Hóî‰â;Ž!™®¢ºñFNªÜt´çI‰Õ|ô>‹ora•WªŒzí‘5ÎóŠøxTv\œoéœêŸ¢ž" Ú³1íG"^[¥Â,ÔLï¥K袋=R­;ÿ(ùÃm…öƸ}„öšDy"ô-L uÉ^Wù'pRòϼ$–Ä”w{•·ÎüÉ“ø>_ÌÛ”÷s·ÁÕH÷Ú]¦£G²CÈ-øÚÉ íkþ’Rô\ï®’3D_䔺ùLÚ…¼TøÕ¯_ß)à7£Õ2Øm)>ÛVbh—A1npåÍ2ö
-Ý“uµÕ¦6$a>0GŒ[õY·}iÖnÑoÝæ^Vô×ýE);G¢IT7{kÐ=26µøXÝD/ßo¯ÒÂõgM’Heضë»»Þ›WBí|ƒG £ElÎz%sÞÍá8ÈƘ­õ—!ÔtØ—%¿t¬…Ò¬î-F«Ï'¨TŽl)6–rWBæ¿„bÕƦ›91 C6}i€”ùñÊ»¬ù*Zš$N¹­Ð/’,â0~ý5Ý=§ËZœA¬Ö‹Ä
-}
-â½
-‰ÉË#s{™ÚTÅOì°R]èðÔ?-AJÅ/¥¦wcá„8¬È¾øˆL<‰6×Ú`èK±¥Ód[ ÌÞè¯hz¦£Ê—hŠÞÅÔø9>6±,õÉ‹Š Ä“8-G”5¹d>P?õ ­Éøéûâ©(;‹mÕtu
-˜PÅG£Æ–=B^8¶¬w€Jîϵ¬àõèažÇ=è=ŽÅ¼˜˜Ǹ«¥K“Ž”­·±šz†)%±®…©ø¬¼‰
-ƆóÛêÕIèÃ8@4l%|ñ~|˜I3C¥í™HÒ§ŸS™/ô¿î°+²Å 4–ì{Nâ½ÝÑ£18H2ç2ìÝü¾™?j#zv’w>h“f2néç1»aÕ‘€ó?ž–7­ì,Å»;S„`•¥÷=êÁ,Õ‘ªl+”¤zJ|Ë9’p¾nšŸL}v²ˆ!<ç“s Bßè:¾î¥œaèÍ ­´‹õAkrÞob: dI—g[©o?N{pep=¤ë°šïô š·¤˜OSŠ&o@À%Ðc6‘Gª Y{ÛDñ ]ï¢HGàׇ/ŠWßðP¹L:Ûe¾5vÏPXí67Ÿ“ûdjÅ*ŠËèÇö«Bj؉ôqêI¢‘Bå¢D+$!~ŒB
-ˆŠ[óÙN³c˺^¦ý9¶ØlUÃhqջ˳oç,aõüšÊSà™Vîž ÞªÏO_O®Ç¾Ã­)ç²âƒ&RªÛ|,{s¸öáÀP(lê8¾´?ƒRtDƒ83ïõ¡¦›J²ëI쀽ëæ&:R ƒ"3ø\¸™w@ßýdDŠîTÁ<ƒGíD*ËÇá\æñsKß;CÜm²Ù¡þ§–73šúÞëªgL*á°òÓÎŽ}?H#OáD0mé7 ±Àñ VÅ&ØïfèÝ©8ÛŠpw
-³æ¶ó‹òb5<‘ì˜ÈУ`Äyúôè?§ô÷$ZÖB‹«6ûãᇠI\¾„ßù{úE´EGçíúÉwü_Íhò/ÅZàrrÛ¼cvk=®w^~€¨œÃ¾ -Ë87ûÁÖ)¢ˆöôš[—Ê ÓÔý—fûÄ‚K"ÿ¼×C”JH÷‡~áÓ¡Æ.] 2p>M|©8µ¬©½»^Œ¿‡½DÙØ>ö´8úE ÐEÅ\ÓWSàmå=9hìHæÜÑŽR½J)’rwø¬g
-äÈçt£|1”óX[>Hº Ô‡’C¯\Pò§ÆŠ‡äx
-tËRíL¤Ä›½ïº óÞŽÙð0Îqÿ½_¸‡Í %¼e·Eì·8];®W>-ÂÕJvsÃs¨‹Iý<]ñÖÌ!z®œsÛPkE†¨ÙÇ6SÇuk…5"™Áô1ò2&®êJˆSˆ1Šˆ+7r…iXë#˜ýD•?¾³Mi¨ö%2¦ö“DOV
-Ø°ú¤æœ`^\÷Ç!~e´ýÚ_K;w<+ë©MkÃ]'‚îª'qçfo@ÕqÑ>áÇ0‹lí6¥-%™, ·ß›†-:‡, [è¢×ã‹Oë°J£Ì°Sø¤L&¼ÿéÎ4©¢ªå†?wwä2ÅãîÄÃ~}Õ;U|Œ¥‹&ÿÓˆñ<†›:B¾ûd<Þ;ˆ;"l
-ÿ7Oä6!Õ¯³¾'ûêÿÿV !ëq’Yì_MÒ]oÓfºuZw̺NXcªtÅJ8öpøƒØ—)ê¾?”@ËO†LõI,®¢œ‚HóóFgÃ÷|ó>%Cv›+J$½ôj{Ù>©®aˆÓß*îÓ^³Ø¨†t˜ ' ¾q…ú„T_Íi™.E©QtôþÑœ¿Pc­o¬V’þC ksE‰8¥Øcô¥¬^98™ýÍÜAji­>g\6 x‹»ÊÑË…™bÿb„%ª>£òGgTÉà˜¹~lG“ù4_=—ºÂŽBàFA6ƒ¡Ê¨::êKÌàYAç
-WìõôIÎ Û5ÑSÁÈ ë47›¥Kµ["ÛsÆ^²ëÀGdr;A"šÇ°«|ø%\‡Òk`8ã[ß"
-^¦r³” MaÏ£\´æûbV¡¯±6¬©“²&‚U×ツ1 •6ÓAy4"Ð+à³™w@<rGr—µáË6Ç:{
-Üw…ØX(Z–²®7ZœÑÒ§œìá3äáæbãó'¹û}¢9ùR1Ô6fVõø³:²{L¢½[›È…–¤ƒÞ9Äçg(1è tü®öçï8=¸â ЄÝàþYD}ÆFôϧYRc)¯7K¯‚}PŒÊ ‚"¼s{ ]'ÙrŸ°Ov
-¶ÄØÌ
-RÆÉN8¤_àšdÄk‡0¼ _~šŒÛÄØÅ3‘¦ÚÜ2±'Ææ_b-®J×T
-¼]sŸÃÉeúÐâð¹ÉDÌ&og­¬AÉbO±†i*Ég­~—éÙat¥dþ2u5m Èš
-/sW–w¬ð®‹ÇuÇÝ«›·ÑQDù(}¸LQ¯þrûëãÓ||„ÎÑ®#%ÖþПnøû¾]ÿ’7•7QKÛëfšûÁ€÷zóPÌ [=¼.°.Õ ðv9 wþ±‚sÝ£6”ýµ>ð¼óý7#Ä–%zN låÖ@x!çÃph7-ã~L ¨q©š tY'ì<*Ä”Îö1.iÝÏ5ukvüë?¦­Çöê -c$£/¹BøyŒõˆÖ&Ôšýù Éê‰úÈ|±ç¨©ŸÚrõDŠR…i/M|·H³öÜÅnè Ç ¹pó#ÙcÛ•5ÅW˜¯”?…[oüºÉæ²&(.ì!<œ|LC¯fΡ˜ L!£‰uµðÚC}ÿçä)÷ä«F´–EºERð+nö*s,WÍð¶ÿw…FþçYºý™aBÚÄ
-ЬÑ!·‘’º0‡jßù|»·œž}ßíƘbRCòö°öiý—M‰nk…¤µW,¸<±xäʯ ¡2®%§“‚¬Ø?Ñ™­ìIZøžFÅô|‚¶:œÝnÕÑåsüžÆµÕü4Fì€ùôIÇÚ.yVätB SRœ²Ê˜Â(Ft>Òè‘`«¼&Èø£5“Bœ#²tªÕ@¯ûñ5ü±mk‡Ä,Ãá-¡}"EÞí«‚YðwÊzi¯A‚^æé¯ü·žð1áG3Pº*mÃrùpX°˜mÛ|XeÚ|'T
-ƒ…×ÌᣊåY KtS÷øI-ÓeŠš½í2}=#XÊú¨Ð
-ªÁÎ7;ÁzøýýÞ݃øUoòpXƒ~Š¡ $Æço"¿:ç0.°Gb…ø0rÇäã½Ttã´Þþ| ý¹Ñ¨G9ªE3dÍ(¡ôþ:è^¡s­ÐÆ%8eZòËe-ä+
-E†ËÝy=y¼OMÚï¦
-ÞBbA®`§~x¤SëÀäuÇ7@86ÆtXÙV÷—èÇ<÷!Ü[
-w§ï6FŠ‘ƒíÁ#zJ\œgQSʲ†©9~„hÜžYB„?
-«dØÎ<>—±¨—Z¾¸ìð67rÜÓBŽÄ!F—òÿ“MÝiqv¯-oJvü=ÔÖ¡Wbƒþ5?2ÍZÿ6£ýf݈¯PBL8Cù:Š›¹9^Xþ§W•V(¬@i¦´ŸžoYÛ.µ®Mïz/ ¹6s4³ÁwƒRoË$<&º£ôÿãjÅЗS®FçÑ5£ÐD'3ÉA ‹ºpÄ8¨K†EžJºÛG
-O^Þ¦Á¤V„i7é’ºƒa XanNé},l÷ß·†viV‡Eÿà¥ó¨S )Éxh‹Y¥—G³–üÕÐÅì–ž,°wÉüJ
-·ïÒq̨Q&Ð2-ˆR“^*—=ù0QŸü‚]¾•l´·UmfEÁöaÄ1×¼‚ž¹
-¯ºbX2|v].ÀÃky.ÛKÊ3dTM*À•ˆàwŠ'fÈ¢ç}v£S"U–}VÝDƒwüù~–]™X~Jú‰gjS=€í»«Ã4QHÓœoF‚¥³Nh³LCÛ8§9ô÷\',2 ~}’[Ô•ˆJÌÑHq—9q'î§å°»£Êç·¯§ccdSévJÅ.^%Å_gâZû¼Tl<¤àú’gÉOóPÛ¶¡VQøµ¢\Qß>«±©–çMnœ7Vã©Ñ–¹ƒEK9'6Oû‹ùÒì÷‹{]ÔoèƒEÖ# #¹.Ss©Ž‚$°.*Ô…Zžw{Yõ0ŸMÏOvš~à•Ä[q¦ÜÞ¨^ Äwò#ÆLªoZÎ4Yl;&1BÎyE@/póóZüQè.?QqgÍR,’ãSý¶Ui7ëJ;´Ðr—ÇXºÈ‹Ÿé f,"¦Üì Æ~Òªd™9 ûuiþ¥V ¾¼&pz|¥3å•(1K©ŽdÞPùY hœ˜î‰®åªCbÏ1ŠŒzÑû±ÌF1IñÎSäÓ„È ¬Ïÿ±-ùÓ]è6þ\Ï[ãÁå¬/¤”¤á\!y/ÎÇóàñišß¡yµ’xæ4—f5W[4â>蜅Š¾¹} w}Lãb\ù˜»È×Üä
-O¬Þ@c&üsŸLS¿#ßî«Í(ÈYi'BWב/ˆ ÷¶w.î~tôšçÆßíX›ÇE=»Á÷rE,qšó•Ï·¿ÐC1ÈЋڒ‡LÂŠÕ }Çm |8 ‹öΤšV¤µe0`²büЖk #,ñ³š6ƒ¶E×ëгJ:Ÿ:J@&(Œƒ³HŽâL~àqØÅ wCöí—â³’%<yúÙMïÖ ¤‰ ÓYÕ˵W~x;wk°<Ü/°•£Ëc¼;Ëžß1+–§ƒgÛõ`Ay‹ˆṙ›Ð‰Âv¾BÀJeAìáGòŒ‚í:.rî‹U°ÙWµåôœJ\ ªümA™kø7Ñd¨…ÉQ9“_4ÆQO
-~ÅŒ2¸ u’Åßõ<¿këÛàð{y›×¾ŽW§4~—ª‚7]¯:Þ’åÊ!Ãr«]kBžS¬6ãŒ*š½º.v²:è µÂÝ%~R“cYù–ïõ{›„]Óh[Çc ÈAÉùš:l†ºúdzǹ‰ÞµW.üòÊg(šˆ¸\鳌y›¤~Lï‰LPÙ)ŸŸ1gÊå¾Ïjí£ÔÁxÿuÅú€O[6îÀ¡?³µÈ÷¯"ø¦DC.^^ º=PÐØ«êUDÂ#^ÎûŒ‡~spøýæ£Xa­;5eìäbîL¸éü´Nâu÷Zàr„—ß¿±ñ¸Ÿ=' ˜€­¶/¿
-Ìæ;q‡Ùº3·¾ß7üù2ÊB÷Z8[ã?í#5P/Û`«”—
-3I۹Š»CP3£©¢ÍJR3j¹úi©ÌÞìoÒ‚×`32^úí Öö¨f Uî0ˆgŒ÷w×Öe붪s°õ†¢™cå‹Ó†D£iû篙ó§ùÊ妦µo3t¬½o؉çÌ ;ภÚȱ`(CÓçÒ.üs©ò
-Šdø£- ãßçwùB·V3Йþ…k¡˜¯Û) û$,<Q“?c‹³¸×bÊ‹h?É•EöÛXÌ‚·#bØ£Ó®À› ï¡<ƒÒƒ8²Š"…š„GÆóWS:q}̧ûé¹|“}¾i«­Mi™úÌ.÷Ùÿ_
-¼ î]ŽÓ#íd×V
-dã¹<àÚ»Ó\àb|§Tºbóa2KÞÛHÄ÷vfš¥×ÄËR)¨)U<r5qتáà}˜ð{+G´ê ü~OÎe/£ŒßͼE@a#Ž€R̵;~€+5žáeÛµ°5v¾Š‡íÌU ±ØŠx¬Z5;ò!L ÿE3†ÞŸB†ð.In‹`¶úÔþA-ý²¹ä,ÍÇ–ćEÙ(C$­8=óé摪r^ÿŽ»s÷X)cÈ‚,vH)T5}vøæ#7 ‚ä#¥¦ ìd|‘97üûä7¯ÿïÔã7l`÷€’Z‘²
-â©"… \¸Æ
-Κ£{ÇC娉š½ž?·çý¶ýþôA!Eî‰WTAºØ™¯ÄȦV§ìP¬æzÛu·†ªdìªé€/£n@–Ðk6“,ÙpÎ0F›‰®u"oà âh,Ë/ÿ¡œq–îUdŽd!„½ù“Éž÷Á
-Ü¢’-{m•uôUbéÞmN¿YH-zvTÝž€yûÃ0| ¸¥xEgjÜi.ج*¼!?uÍÊŽÆðéê3‹ [V·ˆ2›P`+®el¤¹ óç±Ðó ®ÀŽS·æÉI,/Éõ³±ŒO¥¿è¥Âox>€míÜC‡Ý²áóú9…íÈnHÞì Û:,xfÉwgŒWÌŸÿ¼Ã·l­Ñ½íO%-¬ŸUDŒÈ‹ÙŠúóUü…ÐŽ4A‚¥˜n=ßZê#tߎݲûwß—yÁk*b‡R¾>’{dx8‘½*²šQ$™,Ô;
-¹ÜF£à’õ|á¥GJ’Ä˃HÅw´¢®Ó ‘¼0ÊüyÚ0Gx`ü‚µËìÔü73ò®~yô·ÃÒ4ö‘×@?Þ1¼iF(¹–aß2òÔ½àÄJ:½,š¹ )>•[$EÛyÀ%\€òîƒE$r:•@rCnß`ó دùRéºÆÇ3Ðz¦õnÀuE«³T3ìßoÜïŽÝ‚ð’ÿÌÚ{¦$U`êOäN9HôÁŒ¨ý!sÆóòþéä®DO€Ol¾òêü¢ª‚xç“Á£ìÔz²g•R%èÕ!tí\“>Œ…%øŽlä‚fa_¨E)å5¢C\<
-Û7¨¾65bÊŽ¦ÜyÇÝĈ¡»‡š›6\L.2„D™s“Hs'òû÷—aV”E $„ÒüÚåßQ|!̺ÓåhÛ!ß´Zsö/_&êûþ[´*qPs{Ÿ¯~ \›|=kšÝâ·
-‚ó,· ÌÈ ÎÔï@§= ÀMð°±Çþ°Nü–<x×+bn`Ž&.×`W4!=»Õ°eã¹î)À“LSª=¾øg¬Ã¼·”»÷ÜÝp[ãxöˆ”Ü,­`µ?Ò&®VÀw"ñ7*nÙ€Ô”úºiÀ› C®¤MfR1 Á‰‘^ ècÃg™º•›õYÒºKçKNêÝàþ ]†ÉS‹ž2`ëIj§ëÒF¯óZªB˜ôålR;V6•@r[s5¢ { ¿8”¢íÕ²2Š¼¶ªQi]„š4§n>>»bœ„#˜ÀþgLF심K
-¢^
-XÌœ#IÇ™-@™h„Æ­¬Õ¨•Á‚¸ÐzûÉ9K©1?ãì…Z}çï Ny‹‘8¤“‘ÖùR·ÚY)#œR›%)¯Ì?2Z©wk3ΰ©k$0ACqEQ\:81åµ(€ýfÃ!ÚÄ"+¨^¦k,4{çÆ‘œ+X4µ º»íÎñi¹ÞU¤{8U‚c–ôJI "€ˆ“ºß€7b¤!ÀJ`œçbKóÈÊò$U‹ÐíϨ-ðêþšØŠ$_}·Ü€—ÀÙ°ýshoCêdùá­ô6>mò+¢ž†3ZL ƒÿ\tù’§‡r±`‘³û,^Ï0£³$ð[Ð6Ø.ï†Ê–F,Á
-™(He%˜Q8_¾îŸ Oz+±æ4ªµ…AÝ s¯Ýø5áô(ÛçNpBvcHH ³Ý»ìäýQ5:£Íöñ`[ò—_ï;'/½$¤mŸSe§ƒëÕ¼”\Y\9o=œÕ€×­f¢Þ}œ¯ºb«m/ÎÑβÿF§¼¼Êt¶Ó³:¯ò
-PPCÒ1–µœJžî«ñü ãâm¶¹EuFÝî’ÂÇî“äu|˜ÅâÆâ§Kí‚æ+Dû½œs
-òìÏ®tËRµ´»ú˜ͽ³÷átÙë¾J¯Ê4vgQ±ª È“vÑÆáˉÿ ózcÛ`½
-ÂS´Ö©z2ÆÍÝ…GW׉§{ËÝ}ó¸ÝK“‰6Ðð4.ç/ê5`j;¨¾wb-š¶>.Š”<”ÅÐ,ÂkE(Žpx—»´·ZºµÉÞóáeAÒìaB&ÍKêÖÆoO¼Þï
-7º7uô-º
-#€?™iªèÀ`Fá¦Êí ðúø_œK]Œ§~ßµ-ÔÈë@ŒëˆôRõa“ÉÖÓW*ªÅZ@W¿â¾rÛvëÝ;m8*_t^”Y ž/uGÙ¢˜0(¤ljP
-â»æc‡eÄnºt£ç©BÛàrò½ σFÞ'ú˜Ò`|•"å* šHs'Ü<^‹²TÃ1Xǯi˜ìØ>0„$"?ϸʘ˜vWá+@û†Òjï|ÔOö–MGûèi+wé¦øÝV„ZDÿ´j“Îãè &8‚T/=©½…”$¯“ÛfÉîü­aø/CNÕv#›—·¦5—Ѽ ÄºÕ 8²îIÕa¿)®˜z—ùZPñŽBïW<J8 ËxCi¸”HEœj|ˆ&›|ß“Ipøô逵øU›g¸ ­×sÝæ YÅA9”K’¯!mÇv Ä¡ï…Iï’ d›Ž!• çÓý¡zÂå½³eÁ:thnØN!ß›q/b°°kMUT-¡÷+|Á6&­áˆ›““Ù¸¬Iù:KX‚;Õ@xB œcK–MIõvPª÷nÙ!v“'þ6hà?0PÏøß»([â㢗!tÛÜ Ìèî£lëA‹.ËK>2 AjÉíÉ€¼AÕ«ƒ¦N®:Aò}§7w-D û|¼KL¨Ä)î‡æ°I;Ä`òý
->Ô© ÔNlzÉãÞöL@þðæGfiÕ‘)†P
-u”™õê!dx‚]Ìô-ûD¡lžé»ŽˆN§~¤ëäÝ.JÊ4[ ²2)ÄXÀ¼[ɻӗ­|ý%iÞŒE’ë7µ¹g‡)¾ÿuDÑ6_¤Šo±Œd>1)rÀñ®–HIV4
-6fD¯QGG×3 .µøJ‚.ÉÅE€ …»­ÊÛ>øž;ÉvRc¼PJÊÈ5Ã
-aÞG;»9:¦¼ûþ½]33:ZeðA‡ÈQ•@ç[ãÇ3n—sº«óèKþ¶Ï·Z§~åÓæ£ýE¾Iã{íÕ®CC|&èÞ¶-’â%"û˱Š- È£èֈظŸü¼5ZG ¯±—LüFдÛgÛÕÛ¼‡Ükïj2¢+[˜Ñ˜¡©b˜üé
-¬|ìŽíªG®û? e Í#™Õ
- mqzAžG
-Ãå_ÊÅrŽ™
-ÖðY·7U ÞQ" I3¥I+êËŒå4‰7Œ¥êâѺJ
+xÚ´zeT›Ý¶5¥¸;¡¸»»»;Š'ÁÝ)ÅÝ¥¸kñ)îî|ô}Ï=çžsÏßod$Oö\6ŸµçÚÉÈ%™Š:£¨Ø(93²2±ðÕÀvÆ nF5 …‹­±#€‰……‘’RÜhìlI;ù
+ØÉ™ÑÄØéÍ YX€´o!â`{G+ Kç?9Øÿdú-Æ36µ»9ÙXŒAf
+tt²úSö?¸Q½1ü‹Ú[¨¹#Øî¯
+V¦@ðOøo£Ý[+ß‚Þpç{k„󟜶»œ€À+ciìôW¬‚ŠŠÀÎØ
+ä ƒLß]œ
+ô¦(ª$+%©®Á¨ð&<£"ø­; &gw翼ÿä•Pàð°pXy9
+`:¸Ûþád0›[½)éŸ
+!¹8˜Åô‰vB<‰Ü­@á€oþT…`>ߤ
+ž}=}w’¦j©ð’è‡Áî ÿ9—”Ä®Š—ðÉ5;¹r™Z}îg;•ŒñZýþ±ÀìlNòV­s›k (ÖÚq‰ÅJåíjäÕ1‚DÇCÑ#è1™u‡®òÅ­zÚ&}ßôõ¹ç)%ïøB"5 ÿ6Ε@Üèu…¬)é[@'@™ƒžEÁ™¡_Æ@˜jyMÀº=£HY/ãÞµà2þî‹Å71^·µ]uXŒÄ8Gzš œ<zrqÔ€VCVš„¦ÁW¬.…uLv?±ó¤m®'šmê
+Hµ½HVìS÷tN6¦¨òû,pu¼ªWÕ¢›Vt‹×³ù—}GŸÃÚ
+b¯Q^­ÈÂÕ–¾ß.[• ’;4É7LWJק÷‹-ÌöÓE“«÷ð¾G¹þXˆÄ5šÏw0ø fÌÙ1bVag<·?R ÇâSà±Öc"àÝÞ>kâ’‰ÑÐuì)é~ÝåLÙü5‹ý‡éW%…<µ€ Mr÷áÂcÇ2AöYéð¤Fö€ÙZ‘Œ‘ØÍFqš½Ü~rlil÷P¬ì8‘
+Âc)Ô!¨³ ‹!·Ó^fÖS©÷[8’•þÔKNdzp+0X@›ÕÈGÈì÷nKTbŒOæÔøØ#³5ͧÛ’ïºϤÞ^“EEßÆJJ…N‡
+;óÖwñu,>Çd°…|‡æ ÂêD
+ô§oNUCWv˜è=ÒÆG¼~àãg´bPˆý²gø|ûµoEH¹º4HÔ~Š?°LéÔ›ÄywVI_ˆ}˜ó³¬ñ^˜ØxŠÉu|ßóÊ>nÿ¼âhÝgLϲ¤'¢ŒÒâ‡Ä*7AMïMèý.ËÕ>½ä²Jëç4GD·
+ž¥z
+Ù‹*ã&NöG'©Bø·¸tÈf9];Ng;4{É*?”£ŒÀ&[&Ýñ¯žUñ³:µ§JÍبEôë(+%£`âv£¨ñÅÍ
+þÕëßV%¤Œ\è$«VŒçˆ•ÅâàZcè‰é{A»‚ÉRcÒ(TOþâ8í¬®Í*®ånlìÄâÕ<{ÃQŸ$È÷C4ÜUŽkÎ>™o£´³üì€Æàè.Ò*º¼ÝsûæàSsæżݨÎbl ~çRk·KúϪý[Ò#z -õ£°ÔÕϼJòœaÊ¥Àög™ ¼ˆPÊ£†m ”Î6nâ(˜b—v³Ë}xËXªÊ*E—@å™oT’™õçâÉ+S%uCW~sÒŽ‡%%GHä÷Žé
+c~\¬Û,.A̪xK“Ç.èÑR±ùø˜®dØ4i7Ï5BkÄ´Æwð"p£ìU•Á‘M…Q⹂ŒÊÈ;пÒÐ+C5‚zcp¸L«]/Í-hîìÇ¢fCê§saH‚.5?X¿ùÛqtl…T»K)æt)ú‹³‰‹Å`Ü™O_÷7íÿÛËSÙ±-ò¥ ÜpæyYGCå¸Ãl‘ÉA+]œ"¢¾Ô’àûiÙ…V“"ÔvL’&M¢eÄâW5{\Ó¸ÚÂ'‰ ­¡_]WDZÑqu’èj†ØGLõáfˆÍŽvX3‚½"v–ºÛyÔ´I-ÊHa
+ûØÏ"c‰žo ÏZÔÂb÷è)¿Pm§ÆE@×û6™÷)­>PóAõ­Wcš#–P
+jÉqQô“¢îØû•[ 6äßcÖÙ<FøO‡ø¿üôªÛý!PÖ£y˜Tj²ï´LÙ²ò ¥«'¤ÈIföõ;,E)§fËÐ<ýþ}i‰Û}|z³„ÉËìÅmÐ Åž›: Q˜Kõ£«[XîkÏY}ø»îÒµ“oÌs2Ýñª#¾½º„J ¤ÓŒl Y¢%$¡¹c=vU«–å¬ ì»ÝU%K{ßâªò<TE] Z sä>Ñ"!„pÄA›ùdòdæ–lž†qâ'©³²I¿4 ÙëÏm^8š5+ƒàeù/Í&ù#K̆zK&övÒÀËoiÃîƒbÔÖ`÷È€’!ô,\û½¶¯ÃôòŸP_ºdÁWXÕúðdàh¤ßνßÆè_™¿ìÞ·ØcévçöÊ¥DpŸ¸/ÏgcêZá dØŸÛ~&¼¥ÀUa„0ööWØ q*jÖSc
+Ìó’¼{Q,ÍŽr‹wšqÓjz}^—ìëcà¶dÉ„ŸÌ¨‰ÐÊù6U†n/H_èZÚ0K£cÀªÆ[€‰¤¸ ÔBL!L
+bý^q˜»“…]®‡© ¶áÛýU~?¤}…åù‘&R¥.i¬À%X°Xrξ–3mïòž˜žΡa7šEK[ç–cÙé_A6AnÛ@B\Tœ'BÙ”lö­¢Al qb¢ eãæXÁ6g ‘m„ùQ4´èI4݆î11@¾xÆ~bwÃÚ<„š¢h&ž¹Á”ayÆÒjã7¡{ðA÷ÔŽÌ7S²üþËå6»Ö×ÏßÖc®JÛ“ûóS"4‘™ªüá˜?•e&ã–8ñ8F5øÙí˜>f‘³oïÐ-ú%¯vØÇS=jÝL
+iúC%t˜N’Jôu'û¾ö[-ÆSeƒzM ]n$bžžÁlµ*Û…ã‘A'jL&ÞO’ è6=ë?½ðµÈ&„«¶‡ûdÇz9â#Žòá;›Kê¨É<)]ª°î¸¯š(§ ûü<ËQ~®µÛ·‹?Žºž»,XKˆ´éŠ(àÖâf¶4Z©ïLÏ+þG²ÌYoVv†õB-rã¼°„ðò íÈùÄDÛeç,éiÿBÃì•£¨’òx=ÇêÚz©9&£T$9]çï´•÷õÜýiòŠóšÎäJTÉfÚŸI´Þ±…xÖ‘çÇ ‚" µ^sL¦§I<óOÊ*›Â©9ž–k©Ýß?g/ï àMØ|1ÕÍR††î.¢ˆpò‚`’È‹Ù-YUÍ ë\ÍN$¸|ŸOÏ¢×>)žì…=X “Ìû¼N·Öqj+¥n¨c–A~Xw(·I‘õ=æ¹ –×bc/«šº)40ÃÅw„‘ÝÂñ]â”/œu}û\
+púæÄ ìxd;ÖJNØÞU sÝ‚¸®ýù„àÞcÌ‚P·¥‘:»GÍËÕkAv﨎r\Ï#;6Ö).`úáSÇÀšÉø²‹Á¯ÜûŒìYïþUÍkÄ·'ÐÍüÌªîl”Ä œ!dŠ@³[ Bò£ [\aÄÕa„¼æunè÷ ¨ÕWJ¿Ë2?(ð59bÃd±$%£>H¿×ÑVÜnWïÔǸdXÉuÄH˜¸t†÷ ¸’ïªÏ´<§Ê*t3DY¨1> d™O8ëÙ=ÏGH®—zZC$ÿ½q¹¸Š‚8úyFˆÌ,æA| …âoz.^Š0/‡BI){vjnš€‚“wΡf(äßl²Žj£]íÚ-Iã¥7h/j…«¬‘[i“.²Ý›ÅúQVÆ¡·³Ë#á\%Xþ¨õ.²~½Âd(Ÿ߆·çÞ´Î.µ@ºÖÈC€ùzåp+Pêý­‘’><•.³ü˜Ï§JÓ/ÁÀéJ«'z9Ìú†pÒÄÀl~¥´ç)Èð-!éö«AëL]^•eÝ6š•„“<fÎ-§ß$óŸ
+¦ø ª¹/!¨›%î$F_ù«£9Ðç0/F*
+‡ª‰ö/.º²Oc”&{Êt]«üF†­Ê_½û=,ìlÙ†âç¤ü²âû;ÍÓhCwºgR£I,§$EÑo½2Že»…s˜ðµ?Â\}Ó
+k—Xp1¤³BöžÆvì ËNÝ¿™Û×G„[µú¨Jª.Ç:—³Qû:K²™jþi5Ã9Ïùgµî¦Tõl#” ªÛY$òð)Æ$`‰ö¤&ÂôTŸz, Õ‡èòx3¥Ó™ÕXgG?åhýª<ò¬Rès„粕-üæj%Ó>‚Uô!æ•É …Í®˜ Û,|€¤?D™³[g
+£.‹¬=Á˜2(jòüM,›áœx»“ÏÛ½E7á,Nq©Ÿ 5ÇÊžåzQœŠ)}4jÉ7ÛÝÁà«…¥VNI„¾6½‰Ðª—\žÁž¦¼§êjÿ-&2›·Ú:-­þz¸M³%Ðí1 ’6.ƒ·°pÍ‹€5jZøO §´Pá ×Ïä ÕæÐûIS--·(/P¥¢©ÅI›W:4¥mú3©“Š•©ï‰Ù‘~¸ÎÓ4M6}DH´,àýöú-ê–ªœŽÿˆK=HcûìkŒ"DâÚꊞE¹õ{ÜH/†]½. è¨Ç3'–¦úñ×ÔTó?•x·Ö‚æà‚1|â†à„Ž ó–I+~æ|ü˜…Æß ‹§-&lÉj¢M1*×A+Zÿ4›§Ù´8Ò:‚C×5þ±Ò7ÖÔîÎoÆ EL¼”öcô R.˜³4D2ûyÞ¼Tö¼ÁlȈòÁIŒ\ý” òUAøæ{êÝS!õT¡º Äî{ÞNoE«[Bí#§eÏ:îΕ¿‹|¦eÓPïö(#f é¥A
+Dn4bÇ>œÇy¬NÄÜ’©ØŒ i‡“EFþ ûM›yŒÆRRš”Ãîè)EPâYÞv¿¸Â\4­LRç¨[ÑoÓTÀ4ª¡ÇÇ—•q…Ÿ d¢PTÙ‚Hl±™m5;H>­«¸Þëæqmóøì#Uš¸ßgYœžPŒˆ¡ò
+΢¶-Åñ¥z&=‘RëÇvP¸~*fuly¡ëñŽBùÚ’ÃÖ™ÍÚ«wÙû”Kí“?**3$í¼dù=±¨UÀw‡9<²~f¤,î¥ð¼Íó-¢0Òl8.ƒzÔ~æc +¼B&Np(±ù lÊÎR%R71z໇LjÛ>¢—6l1yÜÖŠÇ ÛUvwv ]•™±Éãþ{J’Q¯&gˉæ Iô‹XVS>Ív#å\ýv•kx‡w…ªl kˆŸ“7¥‰Ï°«È´õÌþ=.Ï.O¾}¹‰ÐšÖÇ"È–u¬GSçN>7ä¾s¼`ÆïÝnÜK<BÛh§ïA8©/ a±ÏHòÒt7†Cýï¶M~x£°ŒÀÜŠdÚbŠßUcJP£;©%8V[“J¸švqEòÌÐ0âò¦™lÔ–›(B}¥ÇqèVtš•”°[œ •ÖKÐ#jÞ««M=C”6ô “®Q’‹Ëׂ¼4qTÂi4ÄÊZò³°ÛÌUyvž“wà„ëø‘09ȉ*¶¿¹•Ø®× odïh´Ë,ÝbëgÙ?üîʪ~H)(¢€5sQͨH“Ý9YpÆ#|ì.a·—p7ì×èsã„&ôÔ™ Žìo˜ùfhöS¿ºo€|ñqù—‰lô±tý:Ò­3¡ì'‰®èÓõ Z &§ZhgçdqÙ+ *¼º¸2û OÇ—S0@²j³­[㣴k¨1z'³ÿõïU‡%sÈ!¿èn$Wç…Þª²E¶¯…øb‘°,×EÕÆÎ;–.‚°dÔ1â61b:
+s¾¢R»í $'¼jVÞ–1)Ð_¹Ü’å&«ð<|­ŸwÇRTÂlC‰àÄ÷fH’ª>eí^<
+¨ûµiÉa±ôÒ˧Bít­×Xça¾Ü/­rRB½&øÉ}•·bõ5’ÒÆû”dE*Ÿ±°,3]*—KÅ
+öX›EýȼÞØž°‰dEñ°ý
+O8ÖÕÑøò“¹s¹YÕb½Í÷?#‹ éy¢ýT*ÙNÜÉÎKYô(©r—mJÕ·'²xT`g‡f'˜ÛŽ¢·:=–†#Û Þ?2eõã#£ Ÿ4öê×iE"¿i¨iR<“ A/R_j‹i„ÖÈ£)´`é}À‡¸#ÂÄRÚ-¯&œ8œfE§Ò-Tt;#ýìV¤PÄùZK^Žf ç¡gàJʵE2-<<MB°ÉÝÇ«|Hó¨uÁæù%µhªR¶. †94AeÓ
+¨`¼ª4éL˜©Ò™XJÅ÷=‚CHsÄf£NÉšRg\0ï¸' Œ"4üûË’â{f6 B°“}6õ¶UZD´mé$þ
+§ÕtxÐÍ-&ã KU«Ø¡n
+9upë;]œ|@E›UêÒ-Þ̵ ýÙnjÑ­FšÞØö˜åæºÌ
+äˆ Ù¥¨O¼–p
+^1Èëó!ä%‘ä[BÇt¶¿ci6Åe¥Ú~÷q ®àAQ†ñWÙþÍï»4m`õîÌGõEÝ=·ë6ÏpqBÎÇîЮˆíB“&«ÆäüpQOðzò¶
+öÁÜÿBzðò ÿ~Ç¢±ù†«Ak™‘m¡,/0a[‡{›ð
+ê:{ÛÏ::!yÜ—ƒX^ Ågå`ìzç,}ÕkA•OÛ§8ï.¯Óûz8}e†Ù+ÚØ^Ÿ,!Ÿ<„).]xuF:{=›
+|·ZçWçø’dL}êqب«³r8n»â ü`ècTw.°U“­½ºÉ¯½~Ë;0åè6GÆöšŽO ³íæp6IULä‡Ê6Q¦íR0çô¤{=|7}Ò²>@¨ U9뾜BÎ%3ìø¾\býضº HPX %Îú‚OÉ&m»pDªw ?ÌÇvÐ]`99že€ŸýÉïÐ"~NY
+CxÕ0b³Neƒ9##Ô™Ü÷2<ÍæèþtÀìëÄå·*Œ‹ôbö)zÕó¯1’Ý :S%‡øƒ„dÌÁ鈲95ãžØÅ3u²cK½˜%Ià#Ó_Å”íüýËÖTnìg›— ‚Sdõ±º_|ªtä’KÊ
+^&W•mÌMtÂ[BQŠêÉy©Òá!mÄ'G3Ïxû26Þ¹•0ãF=©þ2ÁníÓ ‰½eU’Þ¾#žÖù™ÊY€ãgÒ‘Õ+v¬vìA rZc€7IF,?¦!‡,܃ŠÄJWð©5äSJÑã@y.z•\ 1ié¶Éy˜Áãq¢u3.Ó H…!2ß+0"Î.=† «yÕÑ×"œ>;ê9hKê &·jåÞ½(£ ›Q£‰Ù¯pÑ]ë5Ť– Í€ÚàeÒ{ð¹ȢàW•ÿ~ù‘¿ZâãmÇœ´ø¥³è÷%ÜP³ŒÀûªv{£êâzʃœö]CÐìÌúi Då“øz:¤øÖÉ©Îআ~^ä3f9}›ÁÀf{-/ߊCõ÷W|ˈò›Ó™œ›ã¦; ÏV9×M̈oRr®Tþ‰Cç¦À—uq]ô‰U.ûÒ,†»5æ‰rÿ÷Ptº 3
+yRB=ãÑ'Ç»°´›—ªÎër‡p¾½{n”Œ@¹AI)w‘šxžê^šÎ’+ëÖù-×"è'·ójËSß5%tñãe·õ$mÅüÀl¿içòå™g˜)݇¥aBWði­®²Zé-Xl Ý~Q‚
+1FE½m-äC´ÀƒÄÂrrÉ[ZüÓŸ¤¾Ê®â›ô»‰•|G4‰<Íô\0óÄ®]õ9¦uÀ+Úß„š ”OÒ±#7_Òˆwàþô´Ds$=X’E%_OÈ–© “]±vϱÿ0¬Í;½>`–ä¯+u}ÿÀ˜[[_ ”ÑÒ^…ŽÀ4ìœwÍ^”­Huâx™þäïÈãn%‹z›‚sô(¨#…«‘ñÃ0¼£‘/E­ ýÔÒÞ®µc
+f¦¥ð_pö[B3ÖÊfpÇì2鿯qšd WhòˉÝ)CsAªp8¢ô^¦;d ŸYž±‚/é>”A›;dÈ3Ð=ÂXѯ«d¿6Ì|tÞ_"­²EÁÒ„ÌÆ ž¹ÿàæxÍšßÝg›‡ÉäA¾T¸.ÑÓæ8'2Ä!Dni…«MCÊÜ£Å.ãÇ€:†LHò+
+’Nå—Çú÷^•‘Á#ÝPð‡] È‚Þvç1ОHŽù,®
+›ý=Tk´GSÏ©‰jn’¸b@mQÄsX#\©ù$¹“8¾?â@e7ÀºN]ÒyJmûàÈzâZ0Ó€Oòi#‚aErÅ +K§7‹Õœ¾NÐ ff3Òò•Áµ„ús“:kËþI,.åf¬nëF«‚?rÒsŠj‹>4æ/â¡Ý¦¬Mb­ÍI#û¹Ì-'™©wT@–µíéægåÄT;±œZÙ/m™EþEÝH‡z_g#aj¦c4Ž± >xZ;\Ïø·b3JÈÌT*•T•ÔŸšÈœºø¦Ë¨·;Š‡1[ARd)ìw‹WŸ­½Fé¤ôiðWõLØ'yW©+Í}¹¿Ð‡³Ó™,öüiiyóUâbÊàéiÜ ©}X)\–nÉ¡'ʺtçÙÎŽŠ<
+ÝrÚUî¨xWÓ¬Aw!¯ÌÚÊ=q“s5U{ø}ÅèåÊö"öÅ# é)B2
+~ó?”°÷æ é·*Ž$M¡ÿ ì0:ÑÕ7Ì/ådœÖzSrøü¢ñqBBWëGh²èª7m€ÎW#³÷˜hSæ5b^·ÑÂDÞ°ô2AýÔ~Àš§4ûõáÀ49½F3ÁHç£èzE_éaVvÄÐñÝ0 ù†õ`^ù=ä +îvL]‘Éâû2Ž%ª‰zmã'}èXÒ†Ù;)LI+B5 ù‚š\S›ºyPÂÑéê ã®™SŒa¹(Vê«p º@E ËÅö©)¶0MIì®òŸ/$×8Gòµÿo´{Óϱ×çò ö\ùÒÚÄT4£éZÌX;§@ØE¨’¹ÁOÚXuavˆ<T8)Ç¿¡Vœ|ÈŸ?d~ ’2è ¦%ð¬Ä:”vníû,©õšÃMø"bžïÜä qÆôÑ…¹³²Ûpˆ6‘!ʵ~Ø´hÖ43ˆ>5T‚ÍÒä8TÅÑßÆ$¾&‰Q<͵æÄ+Ptµ’ûì¡ßÅY;f_ÑN+²%‚R‰Ò›â®úêé…ɡɨ¹td)ȵáRsŒÕ<‘É+­
+÷!ß·«”¢ PKë.Q'zFW“Õ$½dÍr¤Ê¿æõÞWU®ýö›»zAÜ;mÅIj‰Júõý°¢§ú„½ŒMß“k‚/«ÿå;bí@Cc#ø!SXmC¬ÇÌéÌYåP».ÅE­«µMð‹ 9üèTÍôÝ”’îs%’ÀÈضct_Üi`±ÐK-!Žž¬fo3Ó¥ñ5çêlAqH ‘'½LUépJöRA´­ÞºÝ$®‰6IsÙפXÙóÒEc0 äsë
+Þ57RiÐT›W_V›«¼äoãæàõŸ%Z夸¨•jKk­kI5M‡.lY?{‚ ¥pE#î„~ mÁŒÅPS1>}Xæ‚cT—å;?¨²ÿÖ
+¨„s–¯r‰”þòò±­\•gn§¼Š¼˜ Ä͸|&Q–ÄPHeY*< –úU÷»“²*ÂiËçÁ¾:¢{rcÙ!Ž ãŸ_¸/bƒºë£™ƒræx—Q+C°4 ¸ix óiȈàÊÐ’É]¡s­×´'DB ùü WTnˆ¤´DUYøàÙ[i§fâÕ¿_KKùÜJJ^o±N¶Aà–2ìÇß•L§8‹ÁYø…™‹B£‰‹âÞT+ØiÝ ¿ðÑV¼ZŠ”Îx_óyéŠҙ^…ÝkIÖ¬IO>h§F™.qh»¡mvq\äc;Ù*¸šh[-   ej„ê“IÞË>ìTÀð`WYv€Q+Ð ¯ž„œ~B³k•Kä’ wí ä¹PAÅ.Ôü.ZóY7Ì“P—`™G¤þ†r|&f‹DÌ-.iGÔ*gÂÔqñúò­Pû—áø>yäšM‡³:¶òó*û‡üšG$‚od8‹iË7ýÈé‘Ž-"q²VyW_çKVcà Óè2áŒÓ‹FÚ0÷¬­­ÃL†1ò0UÄsåwHñêFñËÖ†ÚÙ™&^ƒå÷¡ÑÉ¢1¨Ü=s žÉ·Âá8Áòt³»ª
+E‘M^vÈ•QÝi%Ã*îP=˜6k6¸wåArŽª ‰ÉùemHËl…}¸­ÞP
+ûq‡:d'_~›Há‘ÇZ”#ÛCDÖ•ÃmݪøÇ-»u¢61Š¦Êgä#^foèNZB`¡ƨ…ï3CÖ˜Yy¨áŽØç­Šª˜²ðb]Gžôg ¨Î”Ù=XD„®Tt†Mž:Ïb»‚Ôgùq¡ð¦¯G-flw¦JÂ8ÆJb fÃ&x‚^®÷§Mûi­>ç§B&m;]6· M×±QȆlY—ðÚY:÷ÎIù†´f–öb‰Ò‘
+æÄrJ9yš÷U}b‡Á3I‡Úg’ûï¿‘q±[Î\“]>›'ègÆmQNTÍÃw€%…Tbµ7Âà$jÔ9jIi[©ð=3f¾Ô|žýÉ#Ô$¹ù ç¢ÆjC‚Žû1 ]€î4¥†G‹ÝÚ.‡æ AÚ%‘N8×÷™±.•T™¡ÏÝõ†#hkÄrp{°ƒ”÷¢Uu!U´zHíPñ’‡Jy¨¿ÅýÖkW¯Vä£uœÊìCÜÖëçŽ}?ÓnYÍIìU¿ÀM²es¢|¦ ¾A>áŇ<³™hKK|z0'¶ÞáÀjù¬GÞ^°úˆ¸ò!è'ùZ€«.Ž7F›`ç%©Å¹åLµ¿«L ã+—¨.n`Ž¨`— ÁmA<'Yµ=3s3sªîÌ@¬N¦ßSèÒ¡´ðQ¹I;ÔŒh™x©vò%uþ doÖnwËÈꩵÄцãØ=Nî¢Ú×Âñ_Výy‰¥½ /¾kœš+[ò³ŠôŸe|˜úyQÒ>~£Nêõ¢T1:ë§zýÂøz¹©[Hu…Cql'¡-Ì5Æ°¾‹X‘ª+¸{WÉ…,,£ûéŠÿºRs94NókŒšßî,¯i1rñ¹Òü±7
+ÿ¨ÅÁUa\=E˜M¾2ÚŒÏÞâþp¿ÆFwÀ^”âI à“Òâl«ûÊ=\ÚsfÌ‹›Ñý½‘ÉåR⇧Z¶l=‰
+å$³÷ýt kÓâ$ÿå/
+èIFð™xø莖mÐ(¬?ic‘,¢#Ä•a‰Hº‚ç¿‘Ú(hX…¸‰æ°åÁ.}BM»C^þN˜h-².##Ñاþ”
+µ0}{xÄLëHJ tÉ^òq‹†¾y·Vw²VhÖè+Îv½b`( ×'VVMm3»‹‘¹Ç0}uT ©ÆÅÿ0æ“Ì©MÖÊá\2»ë×}úi¢×9 »~m\ý
+¿åêÿ0†®u,»‹zRUü’‚¢Þó8ø46g¥0QzÙ/™¢|>•m*Žu=y/ÀÜL~€ÅWØöá¶z¤éÇ÷[—›RW˜Ëúîf¿ZèÝ–39]b™´ç{7ì|„‰4}Ç ¸eXòïš.B$'úÕ<yE*D埼£—$>Í`à=¢oýŠõJ¦Â1ÊxÙói´}¡;ÈÐêB
+ ¯xy\B?†¹l‘ôK†³üLŽ‘–ÑáàË-n.¨¥™ÙöRð3~®Û«kÏ/ç*ê²ù±hc®^oS‘ŸÉè `9ïn#ø£Š“tÍMŸ¸B>ƒ×ý“RlP/qZþø'ä¨I‰ õ‚"®r?DŒ’ÍFñ iz-‚¥Ú‚t±ûŽg”¶Ø¤ ÿõ÷äœëïÁ&k"­çì+nq‡=®D}÷gƯð›¬Gæè5H2›[„ÂÝ_6ßï¿tc˜"1f±e:™¢"‹MàúUCó5W½¶ÌÕoǬdëÎ
+øµ¬´û§Ø%UP•':oîv¤Uf©‡¢QK¾/#ýé‚;ªounäµ¢Ô\;í•Ç­Ö4hÞŸÇëãJSÀ-ªÙ›K4¾ŽÆ Êû]^ÑßÿÏd³B2­þ©¯ZûÇõ&PtêÛX —¨Ã`ŽØösÏ»g’ñºp ’Å¿‚H³Ú4Ôá[Ýü<‘<½î’Œ©X‰„LåmU–‡Z ]P2”-ï¾.üé
+ÍM1>n.ÙI1A÷ªU b†>\î÷|÷½-þ2w¥pRªó½ü`õ(ä€=´ë·Ór(Z :RM3tמ&{TŒ$³)±ÔÏ–¾žþŸ0ÇQêÄ¢ >æ]gŒÚã8æ¿ïžöÕ±‘¯7Nm­ rcN¤úê{N‘WËYqø®=;Ás p¿@Ëq5 ox…Aù`“l´úÒyü"‹ì$þµWÚmµêQ«Î>N7’ñ·[;ö’={jBÿ7ã„´¨ô»¦ãŽ&Ø׺‹õÀ‰E”÷iÍáNÀÄù»~_Šc‹hQž/Þ …4ØA/¸+v<ÜNöäÒ9ã]E(mX1~¡¯Q 5
+˜Èz4-ô·Kª aDä×Â$ò°ÒGVŠŒVíÏGÜ(¢+”±†oÑ㉘`yöNŸ¶½ÄØ‚·ÈÝEK¾ï›xžŠÜt‚±Yé8>]Fâd` kŽ@uè¨Ú;Å|’¹ûþªäT™KLÕ,Y¬gÏ"#»sa{aý¤OsÀ>gn€'UÒË“­¦©^âÃv´MŠ&KH ÿm›?€uçv8cz&OwÌì¦kº»99qNw·éæÓÝLww7cö¾àÿ-žßó{Íâ÷œ‹úí‚ê Do u‰nÐk³Ç&[S‡*etbˆÌcÛ´@
+GY ðŽ¥d+NKû©ÐYì§éa Ð |}‹
+•õ`_ ª™¨AØbâbâð]œ2¥t:lú¹` :‰ß—åå8©ö÷8¸% ^‚¡uÌ{Yuí¡%ha$Oø,.˜<°÷Ÿ²Æwl pétLáÿ1JÆUX°
+Ú(~=Ûÿ83 „ŒnìE¼mÃû\—GÏtN1טço¯oåäuKùšI€@ø¨x›€Þ(”FÇm-‰.Éú&š«ÕÞc]h¾~ô,÷õóåÎBíÕýð͇-ÄV—qìK!@p‰²}^æÍä‘Ê0=øw‘®E·ü‡ a´ìd6
+Äý-4oÀLEk4#»¿ yµ%X0—ŽeSöÈ©n4ïì0È$‹#ìûbÎÛ8›;½ IvîœAÖ¥*Äì’åÒÞ:´ý/p&8¥¥Ê —“¼—æînÝÝ裲C„ˆj:LbÎù¾jIuáp'[aËP‰ÁE'.É@Ï\Ÿr]ºÃ©s½Û¦ž¤Ì‡‘”Ò@­çy^ùûí'd…ǧ‹ã&Œ)ìPå‚oíØУ²°Lä_•J‹aßÞª,1)2¼P¨dú¡âšñpq-_%^pt!Æ O÷!Áa†l·OL‘ÜM$§2¾1ÅÁÚtñC9²MÔùB~9zŸÜ:ˆå‘ÿåélÕ>-ëó·‡#Ž‰Ž€é†ô‡ÂŸESî£|Ùùt¤„x˜È-l®3fßý$1
+óàFjËPÕÛ…ö0ô < ƒÐ””H…½è-Ðny^¡Ž7þÏt-Ý7íã3Büðˆê×CÚ¾ ’R{1 ΪýÊ´þ°ÎtÌF½ç‹´¶Öñøbp8?{ïP|¸6úá:ða³n¢ßÜbþê¾ò¬
+¹ [ˆÆξí¾2°3€º
+ãÛe¤S$}]´o%m*3qûdY³ø}á_1Ÿ­'AÛþ8pF‘ʬÅÌ4¢ù6õsxAf¨}/ö™>ƒ}Ã{ºõMM-¬Ì•†•Çfævõe_Ù;:³ãUÍžô$ð]±Lñ)ô@gîMÐlD$ÑiÑø¦ÙÌõL@Z%Ò#¨RäȲöb—Öm¾ò5cšƒU²X\à³” ¶‘'‚†œ½µÈÔs¯Fþ®¼¹¯%ÐöB¿¼¼‰–ñ¤Y#°,ÞbÞ.ß\…ý5Z½Hg^A^+>ú’yÒ hþ3a«ì˜»Ä˜q/nÊWÖ¾Q æCºõ<q¯–ÿ<%Õ4ÖÁÍÙÂìJu÷þ«¸Q÷œŒ”õlSÔÃmºÉo›ÊcLéI÷ÔRœÃ%_ƒ¸b
+}º‰¡Ú{ò^R—
+NJ\;Ÿ¯!U#¸þ<}gvH©¦í–ãøA
+Ê _ÃØ_òKã‚_Ñ¡•ð@þXo3‚À•Á9—Rº?ý SãU½J9Ю˜³‹ŒucöÐkþEV±pÒ:aÑ›_…üäǪÉ}
+ú ðÁšÖákN¶à©€÷ 'V]ü Fù]£%ÿpðXFDâ’|÷¦lRÕdîêÊë}³Œ³æT7\1L¦y|4*Ì>¢Lƒ¨…¯`oïkÖñ—QnkÙpàì$ÈÝŤOKà—ƒ›¤¾w¶lœt ;¾d:K?ÕMïi—üsL‹;?ä$ÚêÈm§Sð’þ4û¦©oîfÁâyúºq“:ÁãÅêý8hÕ<£þê^À4sÐçwàx†Jk3g¢O/Eûv³ú‘µçIž úcÏ!É—÷x†+—:I6J„À øV‚®P•{,b!ÛäW-
+î==Az* ;Œ“~Þ3.Ñ•2î—Ë ’H…ŽˆÝÿS)g0+îRÊl´º‰Nt&a“5Z¬„pwÌsßÑe@ˆ‹6åÞW”Ÿè^*ð°¡î^Z¦À'#ÕµnpŽ‘Äù-*ä_é9Äx§Œ}ß”G6†¼véÿŽ0Ýb÷Õ³}%w uþÆßQá÷ßT”jGb 1¤’a: owðk©œSñŠ'F^v¶SÉ÷Z™Æý¦Ó Þ±fHÿ1W>€+ Ï*¹p4ûnÂ#7p–f7ž35¤ºÈû+1‡ã24z%ySÙÝÍuÃêÐÃR$ѹ‰3K±DH[ƒ„Ì+9yòUP“Âý`œ€©gISêÇŪCf‰uV'«
+Ó ! ¥LÔÛ¾s!›™¾PB–>›i×lJÀüs°M«*ö”·m`ôk¤Š»\à·‘¯(œÀ›gŽm›–‡±_f² ~ê÷¿3é®ÐîõÄÝ]ÖÉþ„£3X+£tlªéÄ ŠçEãÚŠš¬^:7ðXÌGÝeRÜaÓ™­@ŠâLN×ãÉ6ÑJßí®HÚn”bˆ^òei›ªÆ6ò –”Wÿ°{áv0U‘®ö½&ŸŽ®ØQÅž×>LT²«ÎmÖ£ù6v_ÂÕ;—öíœë”§ÞÆpòÓ¯Ú‡›Š½:DsÞžîØ¥]Á¾¼çóâðåÖñA¦¿Ù†àG«µqW%WhCÞ¼À­ç¼¤ R›ñmèòÍz€†÷í”öÆÑQeÌZ7øê‹@Ѿ¹Ï}«_ŸªöGÎTmZÖR±ïµ˜]ÔUÕ¦
+¶QƒqÓ¹loÛI}7ÖS~ƒ$¾@ÛÉuEÌê§fZU¡9)ºô¼øfùå×à±’óŠ5uqd±N§%s’²tH/ï°;xþ
+PfµüýŒ•)\õ=(-w4˜GšÔ=õiÖõ5UÛZÞ­ý”
+ÙÎO>'©ù×µ¨Š—çŒ
+Áü\˶°¼SýÃY;žrž&³Ñe(·’‹
+%Ë,^Ã/OÜêmC¨#f¤L@ò[i^eÜÖ#œ?
+[†+ ^ìèVnÈFe4äë:¾I§¥• Y°)–v5Ìu­Õ#›×‰jr½tÛ“º$_ôA 7œ‰/CD[ ã4ÞùýÀÖ€j2øMÌF8
+¶þ± U\úŠÑWÇËrÙ`@Yœ8º
+¡¸£P¢@hƒ‰Bôß>Ê!µÓ¶± ¼û@@u8â],òO¶Ä5|”GIlÃëd<µ;m­—iתèWêâÀ_Ü“ ¢ì|ºû“¡X|Åî#®åŒÃ*)5n(žB•¿!?³á2íHì(’qôÌJ*…ÞùOcê,h<K”kVÊnŒÁð¹6uÑë‘£iÑ==á¾ÕîÌ® fÞ²‹b“š&à­¨¹Ú&Ã9Zf†âhkœ/IFH©¾­hKíè-@…ìËÆs€†=u0ñ:Õ6ÉYscµ˜‚{ÇŒƒIW3ÿÁ˜Ó®DRØ´ïýgcy0âÒ‹š%YÖ³{y•hT˜ÿC/žÄJ‡G‚íÞ;`&Ñbq›á¼ŒÜ`¦/u”Ú­-d´êXø
+Êßýà¢â Ú_BÆ"òø6c%~'—lìmÑÖ GGÛ±^¹^ò¯ì
+ØØêœéaƒ“åðƒ9èð‰¤ŸÇ
+/â Z°<¥’d
+H>_µ^›ýFÝÇrÉÊ°ññ¸ScÃÖŠ¹Éo|µŽ·ˆ¿‡ÝÒæ›yúüâ±9-êlþÊœ|!?ÿ)§Ú"‚.ÎZqò×+î©Ë2ˆÑV×ìëÍ—ì87æ‡Qÿè¿ót‘×Öº¢#¯ØÒ`ÍÕÜÓ‰¤nGY÷’ÕK‘4«¥ÛQ3UhuÑ/‡0Hµbo‹eA8 x8¶ãŠšO“Û‰¿uå
+X´¢°¦Î¨È,ÐmÔ›ì~ŽvÖ5æÐXsIq¬d;+ç„ÅÒA?›¨-Â%å:d:•9£} îꧭöbU¢ñÍ0' DÓBp­Jl40'ã€ÊµÐX(XžÂœ%ÜŠ]HÖ±²¸ÍÞlfgÀW‹²hÔó“rkFÅH6v|'ÕŠ
+ÁåºÁsÛŸÿünÊŽ¤9Áú«ÛËÁp„CE%uÚ*›SG¡š…ÃSg„…à5pƒˆ–=Ö²ɘýõO29"q´—Û‰¾Eà‰Ôl=© [y¸4?Ó©€«p3\œiâ&üI7CVRö ²FÙªTGy+kñ‚e>FÕTÑ“­ò’w€ï¡ tƒ?¥Ïj.&Dõñi€ubˆF•«”žiþ'ÒFC
endstream
endobj
-644 0 obj
+891 0 obj
<<
/Type /FontDescriptor
-/FontName /OGJSOL+LMRoman7-Regular
+/FontName /TJMOAY+LMRoman7-Regular
/Flags 4
/FontBBox [-483 -292 1562 1124]
/Ascent 689
@@ -5127,124 +6476,128 @@ endobj
/ItalicAngle 0
/StemV 79
/XHeight 431
-/CharSet (/A/Theta/eight/equal/five/four/nine/one/parenleft/parenright/plus/seven/six/three/two/zero)
-/FontFile 643 0 R
+/CharSet (/A/Theta/d/equal/five/four/one/parenleft/parenright/plus/seven/six/three/two/zero)
+/FontFile 890 0 R
>>
endobj
-645 0 obj
+892 0 obj
<<
-/Length1 2378
-/Length2 28401
+/Length1 2316
+/Length2 27612
/Length3 0
-/Length 29810
+/Length 28917
/Filter /FlateDecode
>>
stream
-xÚ´»ePœÛ¶5Œ[p·@ãÜÝ!ÜÝhÜ]ƒ»[p—àÜÝ%XpîîÙçž»÷9÷ýûÕt©cÎ5×ZOuUS((Ó ›Ø%lmœè™˜x
-Pj
-Ê4 ï•íìlþ‡‹¨²Šªä'€˜°œŠ8
-Ðæ¿Ù'€œÊ»þOžwÃ?î²â*Â*š
-âÌŒj
-ðgQ
-²þaïøgÍ@6Éd…å¤$Ä•UèeÞφ^Öö½;6 NnNYÿ‰',&Ãàbâ
-ø7û¥SØÊ|æÑõIò·)Ò IJz]û‘X1ym¢(´mè#ëC€,.<š­Æ ú5]vѯ¬ƒ”æ@:;O³˜m&½%®… :z(ÊÝÖùÅ2ñ†v™LªSÖò+ÚµpŽ¹ ÓÁ
-Ým¿`qªÜéí3&Ò°Gx‰vÖ /{TÆ®»c¯\Ï]0óq åC3¬‡N˜Î¸ccÙPL%{r“…Ó _w9€õ)YŠ#$±„—* Ó…èUT3`6Žg(ÑFöˆ´t…ñg„òz§=Œ#iùáþ|Šaì„Š6£u ÍG½¦ö
-”ȧt’¢åÇZ㈪£ó#šmNÌßÂu3ÚMÀÜm1¶ãƒ×ý“Îó!^3,dç’Ð|oPçf i‚—Ûµ×Æ%w4ɉe‰O»>©¼=©çƒÿFÖ¦¨®ý¥/¥“£YtŒñ¶P#È^“´˜
-Ó51ã(Ò!
-( i¨¬°|–\ˆ:<èå¼7ßøELýQ¦‘ógµæ®Š£IŸâ|gI¹Ç§AâŒw2³A•'›Ö«`LI– ±ƒí™•î–êÂï<æÃüD~žËÕLÁønÄrèuŽ—y惨¿Ô2Ó{Ê5˜”G)÷?3ºË§ÄwŽJxãç¿ëúeSO›½W&ÚÌƉa]
-oãž–ÁQ½æûØâ¨AÊ>!Uü¥®%+‡®Q ¤•˜ 2ßεK´.“ê»[ùÍBl“mᖢŔǰ²/!²8RÊHpãt–?o*r0&¸v/®-ãùH'ê5œ‘9YÛ¶´náAö)oï7"¡.¢«<ë â0rQ¦÷—¸x!@q¬G^6jŽþe¦:LJ"BÂLð^†ÂÝÌp~w{1I³)^>
-Ñíf$»abvî¡þÃJ%ùï®N¢9µ8dÇëî4—ŽòìòĪˆ°çhû[ü´·ç Ÿô-ÒP<\o6ÉMAŒÓõÀR4H
-¼ïƒ]LÑT¶x(>¿¤xs_øF;ºîZ¿Ûø7=TöÅßH$uk„ìQ¸B·©¡;p‚ÃT|ÂH4p¢:›×]…P½6?f%K”BUŽDšÂ¾Þd4ïî•Ú¾wÆÞ¦1_Í7Ü
-IAÍ¿êŒ,ápaÛM«D9¼Úë?2½¶ b)
-@S@Å…þX"¸;zû^(…4P8Ipu†!œK™Šèë.tfµMOê‘ÄÒH´ùÒÌ7*¥.óòý€,¤òñ[<³BÀºö1øñXœÑOhl0³#
-ü¡YÒ Ü7 `ö—C“îDêxÓ¶]N TÎ[ßloUŒw›qPÖ±)d·«2NžË'³ÔOÛfð±Kd9)eÿ$+yÃ]B÷g$ÚЙðÄ,G+šE]‡¡óÏUÂ*?LÙù%’¥;¶£ /»
-lÄ‹˜Ñmן2Sƒ$)V•¯§õIâñ¾jÂÄ£â'EäÏõicCT8ÐaœëÛ/ö!2L»ØŠ7¿ü´e¬!2^@ÌåOn×Ú̬p«Î\úh?F+€|'„Ž´Cw 3ôA¤•'îH¯šÎ?± òÞ à¡Dª}1¹´ööš™MÓdáXÞàö#˜á…u¨»Õ—œ»©=¬“& Ãôo{º»‰¯¦“(æ¼L_úÐÀÊïO·q™¾/DÞ ¿ú.{Á˜âÓS9]&Yž_þZW¦lhØþî±Ñ…´ûðý²~4'.šçÀ­ýZ']âKf. t`mª=aŽýë÷øŽ)›(9E0ƒ#Ð例 ˜¬¨Õ˜Äé=JnŽÖ$·`ÑörÓkèø/×ÈR•üNÊLÏlÌu¬?³ÍèÆeñnÀ4gá›è>“ãSW‚ú"V h¼¹×éì"Î œO±œ6œh½Â´û¼GrR³¦Á*1ïèĜ̢^:T,·ú‘ç~©×-:+NÏm­¸ÀžGÀ;M>#öçhG≯“oH¯o›8h jò~‹ÏeG†šk'àaá Úçß—.@½< »åJú%i…õL¦—lÓIµÃƒÒB=æ¦é×bŸÖ?sÂÕíó‡\‘mÉ­ã4ãú"7O£@ÄGÙÐÌ<\>‡=î„+<'_‰ß$5µ‚©Ïå|R®<÷üØhØü
-ÈÄÃ=,bÍBôø©‚üÇí.›>IO"ZåÉÏ®ILë«iì{M!·àË¿†0‚ ÍÜ~§ÿø€„À"¦éð(FÂYϘ׊$#n°¸.0«óCCZŒuo;×PXÅ-Ebú€º?ØCJ?TM»›Yš2úÓ‘ðÝ ½s êÞ4N’Y Êé¬w*Ãü®©”‰¶§( òA°È»¬¥*BôA(!~g ÏSTú‘0»5 Y9ò\.¨»µ]`’“µø‡|Ï ÄÕm
-Š1L-)F>\W›š=ãŽnQ¶p¡>ß×äi†ŠE€±ŒÇƒÕÅZHRt"¦[Š$¤Ó,;ø²AÔ÷œF°¦ñ–ÅÏ ^¦·t!@žZ×WÄ·&ü Ôg)Ìën÷…jD¡²‡oqEà»[±%ÍóÔCz3•£ÄÔæ5ÊppÌ`<¿nÕŠ¹Â{ä­0 Ö郚¦lÕ­ífjyúéF7éKìxb{•RùmCƒq¿žñZ‹†Å9O‡U[;ñ$Ô§cXÖÑX’iíú£
-Z½ÖFt$q$f>Ôùr´†wª¾gvøEOß?vßÊÇœ~Ew¥$׆8Æ!_™´™Út÷Óœ
-›S•K`ºõcX•ž”6srW‰s€r»àµ¿¡š£`¦{Ñxžçwû­! c·KÕ–ÄJQ—
--õËÛ;ò2ê\È© 88«/ò°ËÉIv…DÕüÔJ–Ô)…;õ¥çòä£ßV.Â_)œ¾zb¨
-‡6¬Oy’NaàqþÁÄ-7:QßÄt*ª¶u¿Pc«¤8ô¹â9„øgI–9¬„^\L÷âBûx ˆ]þ¥Î™åžoÜŒlŒU¹wt£’ã«]ðL.)J
-²i~írùŒA€X`#~–—Úé«31^Bô%dÙaÉ+”b$û®*„Š‘9O¾‡!žz ©)çFIŠ
-÷ÎJ×xD⌋Òuèw߃4ŒN™7á±4V±Ÿ
-¤»l˸Ü>ž†K⣤AÃ,d×ìÕÌ&žÓ\l¬½µ;ʲ ŽÃ`-#)±n¢vSŠÊ“Zr‘±£@pj„-NÍëÛ!Ç z.°À3+>R†/ýE'IJ›|e~}ÅNˆ˜ËŒž–øÂõçsí[¡Ácöꃾ·+äl.ó°.nìisóÄÎãá+;¾x‹ÀôÞhë¢Ý;râ § ÃeNW<ø‡`;G¦ãÖ”H¸1cþ%&8"üÆ÷š”rÔ‚£¾£; ·<¶¯"ìY?l,»£?ô±Hy"¶¿oþ’Ì0 ¿.Be¢+±á¢0qçÞ¡°\OñŒ?â¿À]FË£¬¸mì$Ó£ûØM#ò@¦X†q½ 2¹Ö¶Â± ÿ‚½•†‡Ïø1TrD ¸ñ$ç™]VÔˆdÈ&œ6öJ‚ž-…r5 ©jf¼(ÌexͲmE<"Ó?~‹BgùJÙ¬•ó Ññ;©,‰RHô÷ü*êõ§Æ•nhÓÔÏ”àêacŒ
-}°×§ñˆWg²Wñë|&Ý&Òz#׌Ï9f!íšIwµ…ê›ß™’­ìÔ‘Ôñ¨=´2Ž*¢Ø¶ªé?Nù1 u="L\³|­¢×¦ª‰ÎÞo!S€Ø ZЂÏà†dùˆePoÎÌ¿zÙ§z
-Ia÷Y‘\G,fÇv@[mH‘â+¢óoÓÝ04…Ø0'l~dÝi÷ñâŠN8›ö‡o•"?hðmY†¼–áÖó×Cλï8oÔËä02T°>þ?Y @Æ*dðnídí÷ê$ºéôÚ¹ô‰ëµR¦mØÇ8©¨3 úVvûxªú¿›¹›ÐŸŒuš¨>†™]HtɤÚêkYè2³ð†¬ÁRX"UÝBwL/Ï¡~gÓÏã‘æ>Máx®Î|:ÆIg²K81͉3é}¹F5¤ª>œï–wd¨½D+’k
-mú¼02ŽÎ
-žŸHA­ä‚˜cu‘vò-D¤ÄBG›ð›F¼»†ƒ†e5–™.Ðø­^nŠô¶l%_2;ÂxQ‚¾¬÷IˆËâùDpªÔ#Ê`ú’p«³²­ Üö|”À³öŸÑ³Ÿy ÷^~L6õ”ݬ%`¢ýrÉòòÎ-1®S=Ö!ÕH H—?Q? äQ3NÜ£èÎ<Gñ®—òßxEQSiŠ‡H \ë>e»Bv½ëÅ‘>ÌsÌñ§dwFu²2±ÇËúHx r}¥9± ¥r«¥2ÁÑGGZîr¼gn#uôíIÏLæÔ9׳ |J0¹Ác˜qp~ZV§WE iÃb¦§ëÿ\à†õ šˆ>¥%Š÷{à¤ùö4oŽ½ÊôyåÚ0¼®C(Ñ«]ŽÁšãè¹æL
-N ‹wš«Z5S@#¤é0#CåžU_uLˆÏn Lµ%ÄÕÍêóÞG¹Rä%™”!¾öŠœé‚°£5 Å,=¯û°ç˜Fñ^‹üLæLŸ=¶0D³Úal\êÙ²½ïëáœñ‹(7>zS³FŽC_õ3\2~¢]‰&¬­=!Ðá©òÃýš&ô“tÞ©OI³‡áÂA°šžh
-<…‰‡ñ$Dµ2—ëßSÄ?.lìöV?šÀr}
-íˆhKÝE~tßÚMô‡WsPB"Y³‘˘ñòD Â.Ìd¯‹ÇÁq ŠmiÂú¶i¾¦
-ž14ýæÑòqÔr:U:J¸åã2Ú˜'ró Î¥!¡­-®%è#Ž%Û# ®~ñƒ­Ä±¿Û(œr]†#„g‚ ¡¡.)Û0²´ütê–žk³¾È]ןb©rß÷uÔ\ƒ½}i£CgÓâ‹ñŸD—MTæí¸žÕB©wGhZx´á~ª/•0`›Š
-S°*_dámß?»Â­j"p)ß‘%ðÒ‹-/ÙkAzi…žƒS(²ò~Ø<-±íЦ°Çqzí¾³sjÖêÇF-K²!m›ÿnæêC}zy;ÿõ(š sßwR.¥ìøƒ©­o5‘<ÛìÁˆ ÖK ùU£‘|_\ІûÄO¬4°&ÿg¬Â¯yƒÃ‰»èÑ4«CsªÞ„=ø¼_Æf
-Såª2©y¿ÐÜ·ø)iþö¯B9˜ÀvGGì›Û¶".}Nµ´zÀð<(`›$‹¼ÖR~é6ß[ç}®^Çá€ÿŠË
-_ «™Þ´±wÄÒG}Ãü¦Ç® "‚"nô?eüio:ýͱ2L&\7®¤õûê –ѧ-ŸWc>ê¼ ‘f˜¬œÈí׫]§µ>¶ìdbº6ÃwªÊü-ÕÅ<`¤$hü{–í´`²ñ
-ýœ•q[ ²©|ÓGU‚B£8„"õ·÷Ü4è~|´|`)Qžü¸rw‘²ßS㡼l‚mNüCÒ‡]t4D‰Ÿ<þ¨ë^_÷õËzr‘@ñ37µÿá´<:œ©ëlÍàYrþCÝWÁ¢ï+Æ*¦B|‰{?˜b~Kj(VmQ°¥/%ØPÉ-NŽ©¯Nèy¬uÝ{öñº¸ìÅG½­è  ZIc¦guÏ“»Ðn
-/5_ö&Ô¦ð9J
-§juýk­Ä¼‹€YÏ(›-Ñ-pz{?ÌU®F/V)¼~‰û\·Gë>ß‹VZfÙÆW)ÝÄ5GÁ-¡vo¶á™EŽü€nq‘ðIdô+QLaÃÞ'q¯ùÔ¶þ{7´ú °[)Š–õ” 
-)&5¯0yMÚlýò#•2/‚.”¬³L¥ùCãÞÎðeáq·Ó½M¼¼®Whÿ›ï•`?èì ¨YR &u)0`è(= .xÚ?#ÿšµ»#NeEd™B«0p¤9n`Ò!›½ÄïÀ2a³\ïžÌÚ9ÄïöB=·nrÌs€s_β(ùZàøê`™AnË•aoíëW§Ï®i±Çú¯¨  åaªV"•é ¾~þĹŽGH4Hyí÷Ñ
-GE4ÛwK–0A]bÝ0Ò£ßxš‘¶„æØñhî`TÍ(ОK¹ßÀ'xHD÷J «^ì%
-ÓÊ©?i‡Œ4Ub¤nVÝ`ú?
-+Í\Êœ¤³}šÛv¨kÖëFnlàN Ò»s˜!ûpÝbB}Ô
-9¨8&±Ðgs€1ã7Ú¶Ò<1^H®®ÿ‰*Ñ.=5À%1–¨åðX™Ž=>f5H;q—
-í˜j(¢ÜÊÌk¦vf¿«YÓ„BßQâWäÉ Äì¼'üYxÔ¼+6^ø-Ü7}¦µ3=üðö9Ö ¨ÈðÃai”rËI‹ 2æ«Apn§ë<Ö¦¢ïýFö3 øH“†pÞ:Žß
-ÝâC±fñª\ø¬O+ýqP„z*®4Áèr«ñc FnÎ…ö'ݤ ieF9½Æ'¿¦rj2<àãõëŒX¬5GhnÉï”ZD>ZĦ‡ÇIJ¾Ñˆ1–TOX‘çzóøt?ÀÏ3§a‘pE…äT`sðiŒµÈŽÓên÷ÿº²Ð%”?å$ÅÛCz màtÎ×—‘w‡Ø¦œÊzÈ øákÎ<oÙ[§}ýô ƒ¢ÁŠ´O=³^„õ³ñ‹Œ´ãŽ¯¬Ç}ί‡{Ži‘6þAc'ÅÜy\ç[{¿ ÑÝÓöô‹i^e¢ÌÚJdõgþ– Î1¦uÊ¥tŒªÍ Ê^ÿIs üzW´ÐX9ô“xÕêudíÓ/4»Ëþ®s¶û±o:Yw Pª©]¸³¿Ì7ÙùB"J2%#¼¿öè²&DÉäx¢j(“Ý‘MPøË1…˜Ø]XéÅ„ÜÉ<…S˜S#rÝ Á˜¨õÙõ’9ýDt¬’à±ÈÍa†Ä¾ûŠVQ†_š$)\ÀæùVòµE¾m)q5Ú|P)¸ýP~­±fÆ Ì'ê;YKŸs‹Ýx­ªTø7¨¡ÔÊÍz›y4Z³Ü\±EÖ뛥q‘˜43á U»r¶›éB]3 a–œ_„†ƒ2gªDl¦z3ÂÒ9"È*´áhû(g0ŸƒÆJK«
-º‚‡Ø@ˆµ‡² ÏK~ir9žAQ»^”Sïýñ3—¦‰õ8bUó´{¼â×0z2FýóMµ
-•SÉ394*d?ƒ^´ T+V—Îl=%qè=•ªS©¡²Ü8(žm÷ãwz$ÍpŠSžH‚‡Má¦édPƪöy™@Èsr´Š{2HpågÇð»àŠÝ¦a´yÂÊ3ßUXˆ*‚lÌÍÊ ?I{ægW¨}-Ø–® Ç<¾üFÁ×-…d×µÏkí¶ó±§_™w!Ü[61Œõ>ˆ\“"ÀtQ*ï4sØaõU]áXvˆ0 &°G¶j.Ã9‚¾€YÇŽÓøgÖgŽ¼2ûºt»qRŠ × Â)Š›Çm$²7dê3¶ÄåvSfú0ê°åÚÜ:e^Ø_E'|ô’Î ÇwRÙ,øŠŠ}Nö4UW¯ŒÝÍx}#'JžÑ?û‡õö½HÆZfwÍÁWHÖcëµouøkÅ?ó°u˜:žŒO—Î!ɪãe®tûD.ß®z
-‚W:|E««I.0} ÅeÏØ©7ñ“RËÑmÂШT‰‰H“û½æfõLgèõ*k£-äZÏe òDQ˜–W{_öR8ÃNv%‰HÞÇ£³FÑ@»‰Ìõ½pk‚>DoP…~Ä·ù¸^ßêÿbF z\¹¼Ûà¾ðjø`ö
-AT9/ªÙíž’€Qh®ÀÜ™
-,’SJ±}ϱf!ö…>iâ· HG°‹MŒ«–;
-bûIc0·CƦßà©aAÁŒÇm¦;ÓwÌ ’nBÏy'¸¼Š0l6]ÓãS#Õ«é³—zêi­l„à®H),³e…†>„¥¬{oa,›*ͱ̮œ·|9–ú©C›­n![ç½»,ù™á Ï%UóÖ(sT,ÚR©j7²Š V7%iì•Ù3ù&¿µË^\|‡–_º~1lÚ`;ï$} „ø¥@U?^6ÖÒƒ%½ÉUÁWÍÖ8D½.å
-p§X¥Õùm¶àö_.bGfmQ4Vh|Ô pòåÉåÜ>,PŽ~Z$*½öBs¡–å…,ͽƒ‡þ 㳑&üp"Ô>^Õƒ±Ï®ò$—•%³-aPÜؘì¡ð¤§|)¾@ݤD6­–Ôx³÷Ä*/O«}$ƒ$h¶(C„‚Z©™øÿÒÓ÷nõÒ³£suÉ‹cfÆ™¨mÅR6A!Ð9köh‚¸¸w¤M•'¢VxEÒÁ ³ÙéÝ—üyΖJ¸®ôc,Ë¥Üâ]@57¼+¥€\­á­}t'Ö÷\mñ 0¸I왢3'‚Kk50ÐÎ8KÊB¨ê„ýœõßÅMäL kûÓ!ñsòÜǶÇqì$J·/Àç`nìÿþÁ€¬5ÇT¶9ˆm¬+ú·šEåJ¨tM|`øTX Mrµ›;½IqG^ÀfRÝgœ²O×t/ú]rcJ¸sƒ”â&cBútY^ë7;yÑ—ÈÙ{?ûOMÀ©™ãÁÀÝSr×T®¡í¬>‰| ü-jGšÊ*J™>nm“±tXGÝñÓŒñ‹´{´˜‘.´˜Aá&]öv\6Íý*z!¬;Ü£3š3ø!®@y ›9tq„ÂcÈ·™WIZÁ#õmÕ´Ç©æÜ“+N–òz(4!Ut?]I
-ç'G£v}ZÙZ=¬!4Ã\g–¾£ AåhªK p QYÝ >O
-q»ÛtKÞwIfýw!hçnmx5ÿ¢{ »K’nÜ­ÊÕ®ø‘)A ÚÜwñ;ùÍ#<K`γ¿ŠW @i¬Ü­La£¹W2`ŒD@\vA+º»Š¦ü^(¬S:ÄD.RìúëÛj¶‚Ÿ¢¥%UIÇ×SPú:s’ín)ú]±1d‚GÔ«*9˜Ïzªœ`=F<,Vººg½ñxôÏ~CTV
-÷Æi€»Íô€ºHÕQÀgŽ¥;)”_tÙ'˜˜]©¼d¡“?ÁsK3Sé¬Ø˜³šæ0xàÙ½ÉkFp,sb. •aA:¸Â£¿ÀXûQ¤UISöv~n5M+ÖQåühÑš¡PÌròÓÒ¢¼6¶ÇŽ­–ˆëÇî)é
-ÆÒòœ·V <?°É[Њþýƒ7S×ÏóÀµ4½4JÝ{»¶Ùž¦ý&ž­šŸZ n¾ÚäÉ~NI4o
-Ð(eõîDã ŒŸÈ*èúº ~ò B}FC<š^¹ ¬´`®qa\S¸ÜR§TÞ6a­H…<ϳ {dmáê¸8‚Øœñ½wY‹CrÇÿ䵺;›äJæÚ¸ÞÈ¿õ¢'¶JQÚc·9ŒiÞàØùm¿Kºkí\çV |_+Æ•rí~ÓãYÎX‡ï–-¨ÑÊê‹l.r âbq©@Ir+| ž+õ€œóW8[” «\5îkâRbÓæb¾ðpòYqõ€Ï`fŒÐË ˜'­#±î³Hø”v$œ¯'ÉÇ"  « ^¨×6o­¼¶°Kh¢§S¦u›‚Í™·,šÿÿÚ:‡ÅJ
-ʤÖÒB.òßý7$z"ßð·I«X#cÞ¨Äü(ÿ5CÙt‘$H•i‘î*üEµýö{ê¶E[6ú§³|ÔàÏø%Ÿw§“ÏÛ:ÖÔˆ*;BSu y€‘¶û~3ô/2Õ/Òõ7á§?…UÈÔ™©õqþÓ¬òþ]rï6:ÚŸCŠÑÄPœbÑÑs;ÐDD ÎñÖ~±ˆ¼†F!×™l§µº±}$eY(ˆ, þWøýa’l<Æ`pdküó°Ly;>rÇYÑ#92±ƒAß+J+퀭¬. “_ qß¡=\Nœh»4Üð!W
-qŒÌZ’¯Ã[#*ʹ–Ö†ªŒßäXh·ÚÅ£›)`ÞC ÎJáý³óÂR²3¼(v0®È*öð,Ó]|{ž•@ðϤ…××ý¬yÁð0ª _P©û5STÖhh!ýáðpˆ ‡ Òð°wC90°
-¢àå‰Æn VØdH8oa‘B„–aìbaØS|~8];ŠŽŒŽs‡C:pÛ{ÖØÍëWxÈ$ç« Óấ³}†iË—?Ïd b/¹¹r¡é!':#ÐÞwtØÖû:0W™ -·°µ¬mà7ú'r'+*
-Ϙű.»ìw/ÒÔˆ^[• œU;ÂÛöÇúW g’^ÄïH&X?¸=Þçù?턽ðh¢¿¨ÄG\o ‚¹³Ts7,z˜°™ÕøtZО `¦øù™ëb'àú9ÍAi‹Tôbß1ïvJÎÀ• 8=6IBÃð‰Qƒ=•×ó¦ þ¢â£’uµ°ï8§kÚ.žÐ8i0úÞ(âÖÖÀø¾÷Ø|ÉhÑå
-Þ.d‡"J°k¹<Ÿª0G—1á0éú|xR«¨rØ÷J{'Z}‹×³ÒÔ¶Ÿò—çG¡«tƺYz@D%ˆ¾Nm†“©þ~>#5A‰Ü5VÉìÓïÒnÏH¬r¡ˆ8 öÄ4JôlÚ‹‚fÙ9Næ’h›Ò³Ìö ¡úf%ÄþñêâåƒOæ ‘)4öó;ñ.]è׌,Á†ÂG8úò|K Ýìˆ ¬ËÎê.ZÞÎZ/>zÓ¶NV¡È Ÿ/Í‹¦Ò'úKÒZ⧖{Wgô!š;.ã½ÿ…’ñë Ý-å?2è"_DÎó½{fšÁ]žôÍdèØÉÈÏ®ádêXG‘´Y!ç2Uœòhoù¬ö™¨}è`„÷c ÷ÁÿÁRí9 ?î.SQQó÷¥™mD¨<Æ' üoÃGÎÌì¿(«Ú0pkb·ªQ+4 j´uƒgŸØƒ ïŸ:kiQ ÿøðü#ïö Æòžt‰ØLK#ÊK5›0¿Ò‹pOÄ0Y/¬?Ÿ\»²[ÃhtûC;`
-Wp®Vl
-:çÿÆ|¾Ìµvè">3ŒØž’ÆÃ0w¦3þÖŒ‚̋á åªüÔK‘íÏFXûšÁá‡ûŽþ1ÎFl/AmiUØ ä‘ÄúÏúß-
- OÎÅ»c22H²J]t½ûŸnôƒ&MTÉdÇ.1Ø|°ñS7_L¤”ú„?Ÿ3ÇÁ53ô^ÅÐ?äGd)»óª§bÁ{¨}¤³RÞulœÍì4;
-'@½B‡°€õxº–ª2žþ·Á§ðÉè~KS—§ ÷žy×cÑÞæÑâÊYÐïXÏÔ![IQ翵$$ #$‘jè¦qfMzd©ãÊN|8v9x„î1Ùy•õ»evnú'íªü~ ç:Ç߯µMiº†óÐ
-uAj·±åW.»G…’[Êò‘ßòb.¦0kç^›'Ú/,NXô1ç©Ieä@UÐÑ¢ý%Ä‹úó~µéº²hS[oÝ»×€îÃ\½ï· "›CmŸW½Ù6^•.6ÓAR°°M×£ ©°XÜë•'w± ÅKóe.ùèíGŸá|Þ.`R[gĘÊ,Cë^$¨iÚ¡‚7+5.sS˧ŸJÐNN’{—UY”eâ¹Ö3q rùïáÇ­0 ­ª"“T=¤GÑ5|–p´I„ûòýãE¬N†åñÑüQdòÇ$¹ÚöB®®{q]Å‘…]Ç1ëuʼ a¶”¬r”JËY©%Ê.8‚xàÕQ)è¦?:[í!_ ñ¶UÃÜÀ°H€c¨-ãÞ¾iÙ5ÇO/‚ræìͳ°xx^FΚp³«½…©å-ÿoĶ¿/Ä¡q»Øý':f;œ®Ê¼»¿ˆÜRRÇ:ƒEÝágç[¢[žx¸âõI}Û×ÀLÑ•ã•gkh…«#—'8‚nxÚ«Ñ–M§ŒˆDÐ/T÷¢é¬)3çýböC%°½íToÞ›Cà°f¸áøŠYǺŽ‰ÑÅ ÿhØxÁRÎLÉ1ŸlièÐ-F뀂OXt³néÀ¢É3“ (…öĦ‹¡ ,«¸…ùÄ)
-ýzøBþ]®õõs¹»SRGÙ“wTR©é—5³†Í˜!¸¯Ð–‹÷23¿\«Õ7§íÔ7ØÙh‹ÐanoЗÐ|ßãsj 8{—¡{ëáá¹Wz†¿Yp/©ÃB}W}#ããÂÉþ(lêôC
-õ/º8ÿíÈÝ?Z‚§Ø³Œ§D‚ãpâžjž‹¹Xk=W(•Á„ª~î«–ÌIí*¶é€qÕ šû`²3E½þ OÖ¯7®·Dx(Ö{Z˜Ï‹ŸöIQGåÀ±wÒ~>èR´—ë8­×2Ý‚žž`òÓÞ³¼®ü¡ë¼ÅɇO¼|AHíûbÞ”âÎ-Ûµ³Ü§‘:rÎBõà»X¤e¡êA(Kó9ÞëCÎ%71ÄúS]?Û/ð¼…öWpÔ wÍ™¶æ;‘J¬ë&Ò{wÚœ4æRLH>ù8\BµˆÞÕغ‘Ví¤ ¦¬pƒ¦!’¸ÜÈf5ò"s™I¼ª¶Z–°-UÕLõÊBÒÍY%E”Jî$flÈö×)àyAŒÈçyGÓ¤ Ä'Ȧ],ÛdÌÉß$Tµÿhm­V9éh“ÃRP÷HŠ¬»µ¾n_‚êé(©ÉÇ«šp$µ²¹­ú訞çþ_R3"4e†cÒË¿gžïj#F¢N÷­;äÓ»o›lþ ø»RõCã4í
-g˜V,R‰²ÑÇÀÚeðo«ç«±Ú‡ÐÌý¥I!†ÂöôîW|…W&6¾©­Éd®®šÒ€všõ‹bp%
-â UÙJײ1]²ç#;èßÄW)°1$kû(ïN{x—ñ.ô-Aýt°[î2ZX&µúw‡™ÙC»Z×ÔºŸ³‡ù«kl½¦’ŒÃÀ*…»|ØiÓmýÌ*HŠÁ
-…H+v
-H7qý hmÚZ*i xg#FnæŽgp–ÚhatYLc"’YèÌl|šñü£¬uÖ'Øq:{tÎ5¤çëF¿§Ÿ),Ú l„.w™®y‡ð²jàà˜¶s|‡d%Bf†'µ–Ù]Ë$aäŠ)öó ÉG™‰BØr´no/Ó’dä©T”Ÿ÷@üþÙiõ[NG—Y¡¡‰é`+ÍÌù­†ØvÝ×i3­_€dïí@mœ†¤j],À Ï{U
-/8¥f_33FïÂIøòO¥ªA󋧆Ÿm±Èúrñq›Ìfà^ë™ëw­šž3ÂÅ,òV˜ÍT!;¶“~ªÑ1ñH9჊»­è–ØÚ-“ÏUÛ„B´ÉòyöQ
-í:lR22æ ÷W]\{ÐäŠJ¿=Ó#Ó³‘`CÐi_$þ2‰Hàð‚—Æ1A4 aÿÙ·©Ë f[ 㽎†Íúìk^˜^&qŒ*a#R»ñÑ&¬,ô¦1åô(¼‡—£±ÜGµéä ‰8D¤t¶¡#{š¤a=@ñ_FÇÒÙºDÊTè-i¾µÔA9w~r¶PªëææV0;g¬à;ÁÁy<Á‹ÿ®4
-£>¶‚¸‰D‹­HyÚT8„ê‰?ž Ó-ß!GO¬{Q±¤ž}n~JÉ)"*ž¶aUzôÝÃÂú‡…9Àâ¿5\3ïé”Rw‹ñÄ—½s¼<º*Ê0Mjôú[þÑÁs™êýJ½m».ÁÀ¨:‹Ë?žÓK¤1ü¨?¥*4Õ°¬âk>Nuåæo‡Ö}ÔquŽý£¾KÒEê¹ <²QÛ8­âÅ–á6¢xÁå”Råãu…Š]¼0b!}+‘í÷RdBè1j­ÚÅ·ŠnkFßq
-½€0±l¥dFjѨç}2á9„¨Bu¦þ¥Tš¾yË ”ÔDq@áž7%üã)*‡îÎÃú]ÏxA‘ÁMFm²wâs|V¦1}gþgJ‚¼Dmv‚:H—ÛáϨ¸6çrЬaÓ®+%|
-( Kg‘G68¸jךpÔ(Ÿ
-x Ï<9¯­¡´¨XªFæÎD
-Àvå\CéP¨ÎÕ¥>µ?Õ€pUNŸæ¥\šr´T¥IŽß7§÷Å’ó;Øn·Œøà©Ø 9P\Û&eV»bêˆúÁÌæ’D“±™Lºþ¿ß„¥}ÉLç¾5¥~[¹ œÝlÇí7 ’eHœ6æf|éJŠ/¾È †I¬9œ4ÝgúÅ£úÝe-bUgú¤øñú³>qƒ%dq˜« O‘ÊàgK¬zÍkd©›„™)–dN Æî}äɾFXýrí{ˆ·ò¥¢ Æ.Ž-Jƒ;‡.Lä>mHŠXøï8׃>2®PØß±Ó§êS°šU e¡)Ö}.)¬X½„EÓ:»èTÏ"˜A[·7Wƒrè5wÑÙˆ-܉ù$EÄ•‘ïðÂî,ƒ…×ÆSkܤ¾t¹jláHÇQÜ<7['ö¼…Ö_‘–› ¿Lc<Óýox^S]…íH€y¬IÝýõL`[9“WÌú× `p|¾µÃõ¬›.ðÆšÉS¢îšÓŠ6  Ǧyýfb× $ÎòZþVÈ!Ðx(ÔÝøœùÆ G'ìÛkR”Ö¥ƒ¤.-ù#ýÉ”„Âù'Na—žhí¥Ñ6ÄR£P¿{Vu£Óˆ “UÑVP]ÿ¨tÐèLG58±­ À%†óg}³®™ªÂh8×v  Í´=Cæ tZãÎë/ÖÁŽ:ñ`]>J4øÁõ!&£=vë€Hçu™>šfši=M+ö| ùÀ¸^´"™@
-6®úÏ¥ö·³ê6ÓTåj£n²6`Ýë$ZÓ—òž=ŦlOC×1!ˆh1f-jij¢4^¼8“!È ºÜú»;5§Œ–ÂÀ¡Ù _×ÓnŠÀ.þ_h[¥j0¾ªåù½íC²Û‚ËF4ÇÙJâÝOïew¢Ós ¸Ø@Òä’ä¼õzð Þâo6<3Ôe?ØØ¥où'&Îg `âTøâ¨#(š-¾_{8ñW$!Öì˜2Lƒ²ï@æ%<|“pªé1Ax,çAè惱PÔ#ý‘!þ
-:¨{Ф Œ|®5Þ©MÞðÑ"tªŒÍ9­W‰ÖÞŽ 6ûƒ( )®0QÄ| Q°b©x<²ëÊTÝMÝ ˆÍ£Æ!`¨õ~3V7ëÛþ@¾Ù2ÑøS/ô9‚rÆÀÓnd!‡
-«uÊ×7ž–Q<BAÒn AÀò)Ä'EŸu Okª~!ä•7Xg¶÷€–ïÐ÷ºP8í9’f¶‹5ÍlOi%]ØÍsLr掾†%$ŸÂº=gVåäPÓ£ÀOìŽpïî4ï lÖÞ3ox½¹—R¬£¾þTyÔD'DV}HvFµÜ2ûc€‹• q(ó$t¦g‡1”£$œàšáÖ¡AøLJ;öF'®NߎXÍNJ…±Óy+Æ0Hàgü¨6õzÚ@¾ªäUËBaHÈ¿hj÷§ciŠƒÇt` § ÐYת7jÑHˆ[ÿ°¼$á©O¾âÒ‚”I•âcGŠŸ®ÿÎ1xym< Lz`©Z;¼IÈý.êǦ@噊&ø¯ýädw-þÈ éWŠ5FZé}P¤’ ÑiŸ²}AéôåÉ¿6Ù= ¡vùa<–­ü`œÊƆœð… ¬¾Àק^`ëw©¸F²è^]È`¬ÞüߌÔnmÛèúM¸ß73ÍŒj7$Íóޑʼ¿š··À¶b˜G t;Ïh¹W´òÝx#ßpeV¾šŒÑÜ'äïâA¯û0AÒbž\£Æ½Šýà±ó¸Ââ|ö¶ö[IJ:#–ó,r
-¦Ü`<’jÚâÛëXs‹"}4¤E“¨?©4(ÊÐ2ÂÚƒÇ7$0wÔxx=o¤â$¬ÛK.4(Ð@ÕD-c þçem…Õ£ËÓEqüŽ·¸/ ‘‚cCawã×ei;`FˆGÙ{ÒO °åsîÏcÿZ€½¦P‹óÔhîõ0¹‚„dýZ5¹„³…ÍÊLšÚ;Â?ÿVòOpp®M›ûs*Ý`#÷à–jU¬½’‘}²̈
-Ì ¸dX Š µmËí##\¨l=!¶fuÓ1šÆ¾ÓynjéE¶Ì™1Œ‹$,F(1@&9ºÿäÌOÂ/:=0ôͶõñ\c@µ ê׸ñ;Ga}®ÊÀ°]­0ñ’¿÷"i²æ‰ bµäC€¬ž¨§G½Kb )Ä ‡JG"Fè.D¦Af?ù¾çü#/îyÀìíd„ký=SN=T ¶fðw‘3Q)þ’-xº3lri^ÂñÝ‚ïÏS SÿkIÙò$¹QdòP;Æ@í¦‡VÙƒvªò·düwR~kð“Ȧ $žüd"|C72*X‘%0GwšSJ]DIKóÒN8œ¡§T™ƒcÜ×I x0LLìѪž‡QÕ†SÇzüP½ÞÁ¤Ò^¢­u'w…+ Løžx*Û¸¥s
-{áù¾i®>R›@Ïþþ™÷,4dRü~›š
-¯]Õkn;¬¿­ ãHôná>Ÿ 7tÒ9ñšF¨¡mìË>ýÜâÉÜ*ݶÜŠŒCí!– !lp$m>­e¶é ÷þ¹hgœËŠRQíþº9{ø"‹Ÿs²EKö´ª¨í ækˆ&(ã—FÚ_rØ«-€¨ß 6Ï4ûêLNAç¾ Óãïíì^¡2ñû¨€Iœa[xÚ1Š£ï¶.|yFÞxü65óÏ„®`®Î†-£^™Í¼]X«¥ÌÀÈÞ¡áÙ<¡~¨ëð»÷cK Ë…øOSEdHù*»ZÿÕýðAJpå?ùÃ>È.Ï>8ša0Kßwb"­+È-dÿSÁøâýØ"¨åD˜ž…uGž1=å71/ «ùL(½j%Ä>è6ò‰øP‘èû ]>—œ8uÂFJE€äkNi2×q‰s¤½véµ”ƒ`5k+6|¡d¶j|QÙ8´
-Æ!äk!X=¦ |HdnÜ™Búñ‘†Òá—ï‹U±a¬l È9¼Ù‚9@ÎØès©yvú2cÞk(ÓÙ»<i#å³!901Ã_#j)þÍ:Jžüyé%V`FøWh¾>YTÿ;©bÇ&É™'çÆâø{ýŒkNØÒ'NÒhÆÃ~\°Yš‰È‹NRÖî§FR‹ÚEŽ¡¨¿ã&té•øµÆ2c‹ß+'±ÿÝBrtbw‹`þÑãÎkÐdè¢ØØF¾!6¿·Ê?Ç0ˆ[
-šwˆ!ýÓ>‰ËªU= A.Rù…ˆhªèZ$P ¯¯Ú{žhGÙsu}¨Þêùg¡´­uþ=Gy%}Ð}ë"«ujêpëòEF¯M9³ O§Æ3@{Šë2Nº-Ý_Që^Ž&²®q{£™àêáÖû„„«Cì:8ìÎMW›òîh(
-S]•Ëcºg/° ’åA—ô†9MBÏø9b ~¢B0mÝ„MÞè&×i:g複ÑAXÞré–þ‡)»ÕñmÁ­@ÀQ5f"—‘{1ÇLFÅ ûGc-_6E †/Êwmbf¬
-Ûïës° j”5›æ!1…"=¸çŒt?éÊmawÌ Žú §I8öç0ÃïÆOƒd¥yÖ ÌPKü+Óµ5S ÀÆ{þïr²³Ì@*ý€~ gµjÅH`®€‚tÞ…Õ ñ ³Œbý‚0c¸žèþ³ÈÇŸ{ø=húz²_¥ºG'þñsøV.hV:Øÿ‰)êÕ•qÔ:ÇÏ%²2Žx¾²?ö|vHZ¦*K9Yß5ŒzC‰ÁXPò< u^@ƒW“¨¨kòSh–LAQÉïÂÛ|Õø‹F«Új~Qî
-^fªÉ
-Ò\;ªÝ´ìÉž ™ÕÕÑNä”luHè_ôä‰>  Ï]Kw*_üËü.gJÿ÷×þÞÂgÕ³ÿ^×iDä4Þ^3$0Vʪ–-NÙb=-ù*h§“…\7+Ò¹š7>Ćž0.Ç…ùÍШp¿í§‘€ÍK¹Ï98ë‰|xw…´çìÒ
-fæÑ<Áù.wðHîjGv‹ záПéø”½í.؈â…3Ÿ‰ÂÅHxÃý/Y¬I~­rëZ¦6`÷'È1cú1à¶Ø`I÷|ƒrÙÊÊ{<\P¢ž¶(HwüRK/QKSL«©Ô®j¡ø­}·àÎÄ̦Ü&…¦ +Â.ë–~=gý`s"ˆMÇyâìF?ƒêaWs^D§è#˜—~u
-iU » +s)ðLò¥øhüæ’¤õjErÏuíHí­²éÔö—¶Ë2wÒ¦ Bܶôÿ
+xÚ´ºeTœËº5Š;œ†àîÜÝÝ¥qºq‡@pw‚‚»»&¸;ÁÝ5¸ÃGÖ>g¯µ÷¹ï`@35ë©z»Çh
+R%Ua3° P rf`adæÈÉ«€íŒAÜ *@ [cG
+ 3vò¸œ-Š¦Îo©oÌÌ<H
+8ÿÑÆÒØé¯\9%%9€±È2™¾:;»8Œþ²½ýͨþEuqtüÓCþ]Žÿnó¿ÔEÀo+Ó³õò1vûï3¹8yþC›ÿ\¶)ädåäìô¯Š@€¹•-ð{§?{fúË&/¬ -!®ªÆ ÷6x yð›: Fgwç¿¢ÿÔ“ãp3sXxØÌoC*2ÛÙ½±vBú#Ÿ˜Õ›NÎ`G¦ÿ3×6 °ÈëÿÚÍ­@fæ”7s±gRY9¸
+6³Y
+¼…Xü¾‘ú»<û›œ–ö–@Ð?"ÞlVÿ€œ
+Œ÷ÎwYš/çùÓpG—Òmk)È¿ñ ¶¿-‘ôC+|hºEÝÛñ!8LÍ7ŒTëC@TgÓš›º÷Q6qÒo™¡b˜Š¡HsÀ—댦½bð³igìM*Ëålý¡ÀGi˜Ù½¡…Ü8ö“jQŽ/†Ì/-ýØÊ°0q¡Í ·G¯bb¥ùÒ¨}ù£‘—gï…s(SPÜc=d‚Îl·È<“Xˆ7ž›>…J+… |{.=øROy‚’Ï¢°¦{ y<g2‹aqD!4M–û
+TL/;6JàŽ¥Œ6nÙkùöÚ3Ý]YŽ`Á·Å‹Ò/ï?ߊ²ÓU‘@'ŠÈí›ÙiÕKÛaÐ …Ò%²˜ôu Ÿȼî!¥?‰1p&<6ÍÙŠa]Ûaì2·BXé‡%?»@ºpË~$»£ÄN2Ýv%ŘùÕ)8A’"`EõjÒ4ï‹î!\@üÁ1:~RDîL.¶)T¹#Ýû߆ó=(Œ“®`ñãÄç903V5±é/”þävÌr÷r±þÁÌ"‡Z´[!LÔmºKx¸d‘V®AGULþ‰ywF÷EÒíóÉÅ57W,ìÚf¿ŽበŒÏíB=le¿õÙOìaŸ$0¿7Nïóq »ûé½ÞxÅò=ó3Ch`EéãM\æçgbd¦ü/þ„‹>Gpæø T΄ÇI6¿/–×T)ۃ귾D…{®ÿ„Aݹ/½¨úð !–÷À½ýJ/]B63‡6°&Å°ñƒÃ[iügß(JAâÑ‘Õø¾=+B^Ô–jDâôî]Î7fT÷`Ñö2ó+ØxÙ+4é
+~gÕ>æ'v–‡÷µlsÙt£òx7¿ ´§¤ŽÉñ©+¬z"”Vîh|xÖèì#ÎŒ”\N± Öi}œÃt{|†¾1¦0eMöCT`ÝÒ‰+9[D=wüBU³éßìE›YÖ¬wQ žÙ\r…ÿ |‚ì4“BéÍÙònÚF™ëy°ç%›R©h17—[‚nXÆR±'¸ù|‰úºéAyÛÆ9…Çœ``mÕNE$@äðKs›ymøöQÛãÌ’¾R˜¿t˜5v3 å8O3®fÖi,ñeÕ ø¹åßÕéfÚ? t¢·+ž<R×F‡õm™ò—\ìómrqŽ¨ ØHP„o ,¨JY˜Â~ïü*-®6ĺõ  s½9’ ~/U—±7Tz!o7›^G
+o,ãÜWñƒ£U%ìtÉtO™œ'ÔØ<Á5å®}Ƭ~ù°_)À
+œKu1•ë`êX{šºVÊ›j¾ƒÌ{ܸ©ðëL‹ñK¿;*ß+σÐäL:3_ïb•… QÁêË»Aë“ãÏTÈ6$䣑ßS\Íö1`E ¦†œwÆ ™ôÝŠoë±£6"Z>TL’Y'f¸Oº:}ÊùŒ8Ò?Éò)s7G%€T0ýg9Œ@Þýíé]¡Õ²¯œNíõ»l^˜c9öÜÂ]QÛßÊ2Ñ^ºbÇx ‚'Ÿº‰ÒÊPPXV2|ºå$G»•ö‰æD û
+6X0}çÏу v=d[®¾«d“õàt[ÎDµ¡¿8a˜bF®ú®hPb)]Þ;YH¸êŒƒ¯|*ž7ðh•Œû³B 4é¬cnÜуn2àZˆ^&÷à=d0Þ,ßÓÒn !ý/궸f_ó‰U mÓŠ2÷ÃÊžy˜Yš^O'ØD÷Ó>óm½QÄXçÚ1Õ˜¾Î2º3NÓóŸ¨fZCÔ()‡-x_ùê“Oë?—Ô3KÈÔa'[ÈÚlÐiïžv²…}†Lõ!qmªŠ Qs€”Ìá+æ~€kñgzW‹1q0<Ír\@
+Éz4¦–±ÔfŒk,ñËp¬o² Ky7­UÙஊÒ´¹ý_°Ƕ­­×ðqy«q—ªJý9Þe“ä3EÃwÿ‚4þí(¤¾šºrÙÖ-…ÊÿdSp ǃÁb8[OWa7ôýŽð¼O…­
+Ä' ÐDmÓ¼¢»’Ë]Ö`ë©BD4‡už¤C+ŸnbÖ=ž°“¼©Ò1ð”T1uŸ ]eNF Q˜È«Z 9}ÅxÒÐ1%w¨vñ½
+05žm˜MòÒ9ð©Eж&‹ø·hÔ²A5íñÃ]ÏÓ‰í|ó¨¤ê £«çØä¡cvëåÂÏ/éÙùß1œÈE ÌOë¦ï;†h63eT1ÂWÙJJ.˜V¨ Ê0µ©´ÕD/aq˜æ›F$^ mù{qœWa?ôFRUïuLµ Ž¢Xe¯óR»£r‹Ê–þ^K%±oèI^¡¸{îl\÷\¿&³gô/2îíb…$»Ap¾óŠ´í–$­•Û)Áå“Åzâ&aü”Íàé¬ $X±° “ Ÿ¸áÛÎl£ Ñ9òªG«•kó„ÒXBzôz( Ç¡]6Á$‹'2†0!—áŽô- ¡†ê R+ˆÂGó~^²IÒ®öU#ï¼LdߺÕBæDL3T$"›šÛÙ„¯‚¾‹²|Ÿ-««Õ^òüªãj;êüù©u$·Ú"š›ÔT?˜Y®pòšÛ‹Ã·F®Žh ddO÷E?þf£üÓÁ§¾}LS+t÷Åf×µ„çþDvŒã—}¶ËÇíD"(«OñEÞ,é&±LêýQô6­ðF‹àDÍœh¹2ðIÚÃ¥ëe:ºÛ'!?Þ§ÖßFW8]’Ǻù2…¢ØB#­ýe{#Ö&©iv"Šœ¹Ø ‡nýÕÆ8"(Q›‘/ XÚsâƒLÏÝ’±bQfgÉz–z{Ó®z „|Ä$"ô=äwåä;ž?§qÈDrÄ74vÕÄmÏ8 fð™~‘oà­6¥âÈTv6_Úæç`ccob÷›osÔf]<+É=bÒ#È"žÛùìJ  £G{–õ3Áó¢ú4?´‹-ئ~ŒÏèsÅES¨ fT¾J¨ôZ¯]îÁ9ª‚×pÅ©D
+æ-¿z§oV‚Ø°õ¥>m1†g]pv¦!Dð†`$›t”ú#‰}ì¸ñ¸'>7É£­yä*ÒõhŒ}‰nÐód>ÿ»Æ¼Cxö¶&ð¶w (q+ÙÇ„†a®“Dè&¿òk÷«Cõ£æ0çG¹ÌؼY˜RêZè=ò…Ïð)†™³ˆj~ÍvµM$‚®Ï|}D‹¶a{~f5Ò–Ž;õ+Т#Ûí¨lß{™Ÿ•ä“ÙY7}øHA⊕M3zRl!hœ”‹êsŽÖ£®œ$h£cåkX_Y\ŒÄštõ›¶åÊ—¿jH_!W ®2<ÅRßïú£Áü8EwQ/h®Ö}æŽÌà\«Y¡´Ûé$À¡ùô‰­ØÅ*É6ÿÎ
+²qƒbâÀ~l§¾6pÛÏd'Ž_áùSÚu`U±6TØÀì5hOŸJ‘ÒLãq8(qw”}‰Ø$)·kν–›]E^òÀÓ‡¶¡ú­QÂèYq½ü’I_×Ä+5ysš7o»p­Pºšê½‘Éž¾:Ä@ªâC ³Zs`ö›5ßõF8ƒP#ØeY¡w&ˆ£QD0Ï4<¡¸°<ñŸEø®b·…þ}U\2îÕ9ñsHâ‹ö”9ñ5Ó™!±„ <1˜wÓ3ms8«8¾î¿ðcÚ´ÅûI~PIÀ€qÆ·Mg‹Aý€ } 3¨ª‹{'y}r™9†+yöћij›×?ñsEõ+7É~¯‰«…Ã>Ší®>Íã¶Ih¾’ã‡ûçÛ'²Xìa<ã&2¥Qâ2
+&K›Ö:9¼ÇPEÔ³1wjª¨çlÉÀvÃlœ²>µ¾=–Dֶ݉¹èÝ.KÐDl_ü{ˆB¾Ç9# Ês­ÿ¾y—ä_ý} f[×vò‚! µJµÕ!ã fêVn¤Í¥F|þ²XØaÛ|Gbq‹_ʹŽ—Ÿ.Y¥?¢–J„Åú$»Q[dÐ*o6çÂÓŸÉÇs°Wuy’Ô½ôyüúý‡÷ƒÛÛ÷áÌU„¬nf»±ùêŸëxÛx*¬ #ã؉¦ëеÔÑñz6H‰ ùNÉÅE:§3¥#?Æs/×°kõwךfôºE¦F=6äxm6gHƒÏ†'zp@"äVì+]ѸU¬j—øê7P2¼ÁïÓóÊ,¹±•¶¢ÔcTßÏ•vÈ…$È´‡Ð£WëEŸsÒËædÃn1Ùö ÃÀfT5xr¨S75&‚&ÜAífíçþg}¦.{>6à<Lbâ_O
+MþÆ/=â„¥9SùéBºÁ)|¢h²bY0©‚kËd#1]¬[þ=.g¿\ÌÓ…]2/À]œGúïùÊíÀá)‰™6ÇœqäÈ^¤åM¬ƒr‚ T”ÌOÊ´¬mza´ò/8+Ååͦ³ï˜.ªx-…Â÷‹ψgã?]?u`MÃöS¹Ó댅rºJvz°íM„§®fjð‘?å¦ Rþ,ê E&Q:v û°ì•NV#ÒOÕàû†ªiv}¶ê¯KõíÞ{ɦ¸9ŸTB.op¿F[CŸÒ¯F¿øò²º~`›?€p~)ÒsæÅàLo;6"r Ó”ý` D½8”*ÕšoH´Üõ¬uëkÇ™$rÑÎŒíuP²’Rˆ$\YÍW;~ÔÔÄñžÃÿ,9F¤ ­è=0(°É<Qêaæ?–3µ^áÞÓi'›‰Ã¡ÄR<Âå»…¿×Ç‘Ñ$1Çà“ÒU'ˆÝþÑ“u…ú‚ç´ã‰… We6ŒÕ$–¼*¡nÕSo*Buá’uíè'†Ø$\Å>üñK8^EF¢Y?f¤‡¢[;Ù§s±®çNl×6BÊß °sž’|ÃÛHõÚb¿}¶Âà룰pW,ª3; ‚jšrº~àbë_ÂÒzrôùT&®ÌG›ŠQ› ]‡Nòx ýaÛûšSú­Ìzüªbc »d­×4yb€³™ôúpœM‰%|<aiuéawé$Û~¦t=Dç®YÉK\™&%¹6Ñ
+JãÃ1û^‡„“L‡Ó &ôÍòBçÎ](:c[M‰™¶wA&¢ã‚sè¥?!áâ!hªDsZòbg• ͦ§šÛêeˆkcµ…Ÿþ—cy.¸Yæbo , O×|Ì·„Ò' )ÜÝva[²2Ipƒ]¾ÔñÞ_ å0dƒvÊóÕ²‰/»ôi—”íõ aŒ½²RínLÆQa~z:A¶S†àE8Ô×p*ñ=glk
+ kʸ/XbFÏënÁå ÜcT¬zðŠÂTužz›hT?d{¨Ò×BHÆšž\Šàr©U ç(± ÉÏÆ ŠŠLT©ìîU3:žËða:‰&Ìÿ• ž À%|±L¾qþFeÕ°;=ƒ¿Á¿,4í¾À ’O®ÞIY9SÝ?,9áÀÞü>">í­å³å1‚p×Ñx˜@«áQ=bÕß}.Ã~8Ö·ž“Põ쌈Ì8“Ú]EÂÏHlˆ¡Psù¤ð]KlgØYþƒóà²Ì,{â[W6ÞA3Àa'eeŽì³#K¶ÚÁº¦úoI¨ñ;Tx S,·†.(o¡õûÕ„ ÛLí°”§ò=˜äBÕïˆIä—&9¡–QgB­A†ÆPPá³µÇægD\q¦)‘ê áaåGèWǃ[Ïx»©ÂêÔÐ+~ÃöÄæGÙä·N½Èw‹W#®Ó N Å0©õ}‡?æ $”sær¥M¦ »ŸnÖTÒÊöAÊp ~"8Ǹ¶S-ï—lo¬§Âºø–õãe.—8$ìò›.ƒÐÔ•ÆljJ_Òü°ã[ðŽî¾¤D§p ♹Ïs(žê¸Ôþ̧óuŠ1 »A{b2¡µ›úï†Vä\
+\³ï…‰—žÊ,`›YµÑ@„7.çvŽÝ}O4s¨A\zJÔ¨Z/–~;~™uÆ)Ä]?E T+0Õ,ô& ¸—ÚQá¨ò+‚j«,<C±¢UËË娚 ¼†›B‚=ú'vˆÃëŽÌ%eØI££ß»Îô2ü£Z
+ ‘ ºHÿX‰§“Â{ºá ²ƒ‘ƒt[€W_¹é¢F’rMcl£L=G¿‡ êè)(š3. '¿»M_åd—yìy9û<Ki½lTfn¥° D²ø]0à¡‹–ñ#
+c& eçÓxòD…H°"îêæ4¡´Òè¿èDTˆ®Ár-¤3&ß”§}©yõ2ô|× 5ølRþ#Z¬°Nß¡¸Œ’@˜ÀFù!ßlñÝUô®ݧìFÕ¶ÝÞån©/Á;ÍìEGÇjpk&#Ì%Ûv‹ °iüŸ[«ïçöƒ4Ë5Ä€òzæOó<¯ki fBÍÏQ¿&ÏY
+µ©r$"…ã+¢BR‹ñ³ª³¾ñK?YWVÖ&°Ö0Ñ‹v—§&)$o¥«ˆJ}ÕVm`¨÷þmª@”ÒB\e\ªeÉ#Jg­è„SO¿È&Ñ•Ó!,G>dìa#„FSj0é gAdí;IÔíß‹ÕíN`=_àR›¢Ÿ¼Â2ÀZL"ˆ¤¾ÝœIUÄœàa´u—íÆ\vò13žê<½ëœ}_ŘÐ4K ”˜ûê¥Ä]»yI~¬U%9k/ç:-ùi2 µY(?‰ <—þõ(ˆŠÎ@çŽÁø!Òs|/ÃØô®P.„û‰²ô\ç~þˆiLÿnß©2~/¢»²ß²Sîp®¬Øönõ ‚ž‚Y FôTb¶¬³«Ó(ÖðL‘10tcÅ„
+6B.Ø#¼?îßi循U’¯DTé7/Ök=Y5™;^A¯TuØv‘|éþ.õ¸ÍÓ4B% 7MÁv·¡¦ª«;B}¦ý> }]}<ÃË0V×™çtÛú¤&ØÎôÃ`»=<ôâRÖqhS–¾G‘Dr­hцz
+ä°¿Lsóæ^úùÕü|úÎŽXáƒ{9û‡â‚‘)qÐi&aÏ©É”¸huò"È"o¢×¡éð,B1Ò¸ôå»ßtü4€‰$ÿô§üK³ß­Âç«ë`ÊxðH™Ô‚J”MÞ›Á!jEíRa—p•±#^ë}¦Ö&’;3€òÓžýÄÏÇ@+
+§ìÒìŽ;N×F¥¬ÂrTRŒÝJ6+zŽãc» Ošå™¬á™ñ&ñu¦”~ù9{/“Û&x™:”_Úà‚'w"éëMÂ
+‡läëºY[kæ{Å/ïÔ\z 6)¾?`ýÈ{f¢ã½|Â(d‹áF¤Ú¹xÜEgÝá›@¹–j¸r]§}Æœ<¡ü6Nš§—t»+ÂrvÙå|è^cuD-#òQˆûœQ3ÉRj6ZÄTÂÝ©ö9ĹrG­/>£ø'²É Ó—{yKž¥+oÏ™÷Ñ-ÒøÆåWA¶ÈQ‰Ã÷4W±–û7š¦ã±œ«d–A‡*ªŽí›4çmTnÊâÂö K£ix·´d%ÞFtëUyü™z`¥âÜ#ÖQ•çÔöî9’–ô ©Ôö›ž_Š˜*“ð­r‡ö@ g­˜»&ìÏ`ÖGš¹ï²L3LîÃ0!ËxÔm°ê{«*Ô~Á¶‘6|ú2uãef0´Gß;<ÛðÒ_´̯iõžøÕI±ò,*Žfñ*ÊÉá}¼ØL?f›>tl{‰%»³7ÈWC ¡W5b¾ NÐbZX5Ýu‘kš
+Å•ûX·…+q­éÛw¹˜¨LœL?~º£%3SŸ0!{ByÆí{ß6+—.ÉívÈ~ €ÿ4ýZb¿µòÇ°@Z¶Ñí:…ˆöæY­é‡iØ$<ïÝÄ(‹ˆhûýA|PEäDÙHºöS:{ÿô„pÏá¼>ȇdòðq˜ñü­Ø.‚lq¯Si‡,x÷±£h,1t@=t®¾û 0–C–kçÐ}èÕ@—‘!ú«ßÑ]ÝlïüS~‡â“_µ¸£š<Š¨b_é{‘xZQ¥hL¢Ñùƒ®<Ò~FÀ>Eï÷ùÕ£Ó=4írÝ÷ÀÀ.àÃKîé`8`²ª¶"ò臞毖ïhÍ8‘ÖÅÛÒS\,dys‚«ç‰ÀÚóÛ…sô±èAöØDž³2ÿ›ìãÌøŠ{ÕQønb¸Úžmyõ’¦‡`Ž.) ž1à˜Ø%ûÓ*a´ å£aänÆÐ C0ª¾
+ñ¯lã~JThœ­—0o¨4((¶ªfø´ “Fד†‰àµÞtïU/ñq 3ÇshÙ-zÊ]–ý#¶ìç.~Ñ+o°
+{›ÞgmZvµT5('¯~k£5–ØÚ® ¯cï"8ð¢gý U^»Ðpít€çç©4 |œšLTCM’z–
+ùs¤¢Gm£þãW;h„ÐͼF™ÈžãÞ›N]¹WªúA¸{Ï-ÁZ„€þÛ'DŽ˜Ù§åA¸þõ7ŒÒïûQÒï6 Ú¬­4$}#|JÎ+¨ j”G2[QO?W+¹l\)ÕÄf¬ ü}D¥þÕ9<ÞäÓ‘MS˜]Ã{‰"W.c³)¡4k…@6MPAVÑšù[š‹Óâ{•u,xãŠÌµI‹ÕÕ4ÉÏܹßì4¡:?]ŸoÝ¥vP"ež ÑB¡7÷¼‹Ò“îê3ÝiSdÛ ®-Þj±HÀ×F„¥šÎO.èë+u²‘ñÞpe¸€¾g·B%~êhàšÆJa
+豆7ì•#DÇœ&Ð-žy^=R9à²5ºõ‹×‰Ã­AÚ,& ú¦×Ô}é“&ƒpÕÂi®ã׿ˆ]¢î­¾GÅþ-žlÛNÀøn0¹€7w§N²j>B•åâdC¨r4oµ~225f&1vÊáwøL«k@óÚJDF*Ç^cÈ äâòÀû S”úßðx=#v"ðÛ}Ç«ÔæÌ^sEY玘d÷jÓ1í[mS¹Dßm¦êÓ[?üh({œNUoÁÑìl =d2®Þs§;šŽ„Ç
+ûúm%³gŒñKþ…WæÇŽ`¦ø„cÛãeš’…
+½k¹UZÀ#åWtº6íqôšL¨›¶ó•_­û1…›hʉ1Ÿ· eøqU«7gÿ4,áe]Qáºúr¶u¯* † ãL|÷ŒÄ–;£´/ý#4 «ÑÍX¿fÕ3zUÝÞdøÊ™á‹iq‡ý¤ú¯
+Ð)wÚ+µ¿ò¸9eÞ‡ÌêýôÕÒ>Ô`$Å·oŸÂl½àcaˆ²_Qávv•¨5ãn–‡º6ãcdù’fµYG{áý•ÆÂ0óŒ×]Ãñäxßö)ÊÇá—`L©òr*šA@T.æ~ë
+sazãYaÛ¥GM|ÜI—>ú«‡ Ø¤àíRšåÁ$¦=¸0Ë…]}ÊõĬÙe½˜Õøô0ÈtñBÅ=„Ø@=bfüñ)ƒ®©+£eÕÓWj:Zoˆ­ƒàÃœàR¬™ /-ûŒ< w'p„(_4³ÍN&ÓoŽ£KË#g½Öˆ•™Ïxú6ÚFê0
+¡“ŠÛ\'EÁª(í»‚ÄIæš\ù}K¡MMH€-ʈe."ÔâíNf§=¢‹}„MxJÌ”¯ÀýÕžÛ6„÷ÅeÃ'Éù…ÍaãÃïÛÍ÷-ʾ:fœ­Vð!ÔŠ‡¹æ]1Œ±^dW4+:ŒÏÝÇ7šBö4Ç|j{+ƒP›cü£wÈV‚-kîˆV Wk¹'ßüK¸âY–ô?±1¡[ZAG}×\˜æ£fDN"ÉãÏÝâ˜6
+¬ÍS„µÞ©’KÏI»âËû®;°#Raë†ÏF÷/£tÚó ùIYñb®Ÿn—óÔñ«†ªVÒï§9/ 4S[Ù !ÝÎQ¿²…FA/ð4cúTÎñ@•ƒ.›`?ÍK/&y¹…g¦O‘Špj’×\±¥D-2V?Çin…SçÐÐVvfñ;L[™f’´= Ú¼ûZã$^€³ªø Y™¡¿›Yçn>š•+‹>jƒ+›sIEi¸QЋåW® ÷jà€ ›äÕ]£jÝÂ(ÀÖW¬tð¢àÆÎU õ‡¶¿Ô¬$Ïö”7$©þû¯8+zõ^þZ¿Ò&` EçñY—Æ&ý÷¥XÔ3Œ£©çÃg©ä/HpV:Èã ;?´å7 ‡ï˜æMÞAñ¢ŽÎ%¹ÈØ[Ïü3ãM×]Úv>CûâÊ¡›Î´x)Ê2 tÃ$ÄW+s‚*tWp.¡ÓÒŠ÷”•åßµž_sÂ5Iõ**Ør|†-è<¬(“ä*•„ûˆÎ4+ Dâ¼ÜåsÅ öLU.¯†·|ïæòÃP!ŠlE”°—ö Éøx…N"PAwñqÛ¥—­·ÊÊš©o <¹$ˆO¾9ðŠ¢fs‰^¯7Ó–Q…ÇâpR ä‰#4ÞÔài0SõlÕY­
+ã_‡N'²¬¼ßŠX°÷+æÝ¥ËÙ¥®ZŸæô —¬«ÇQñéN‰ Bp‘µÃÎí-ò+í !÷¿Æ¸G YÍÅÞпr[îŠÍ1 8¸xFÅâûAÔå…°ºJ!XÐÎ|òMñã§!Î¥„¸Š\·\áš”l×!(Ç8¡q`"<->¼íðZg±¹åîŸxo¢}÷ÍwÎg,BgâP¥¥­d' øWÁ̬,¢™éÆeƒG³çÓ°D0­ZÔAf
+hóî7ãîB(·'„/ŠÏøî,)Á¼Y\ÀoËËR¦Ðóƒi¾qœÏu´ñ+‰IÛbAªì¹{/YPþÉXEWð¿¹ÖÉó¸V_›Éö͉=]ÛÜ Ñh<ÝÈZ•9‚±Ù'$¿Cí
+š-S}2 :CÙÈ* }ByIâIñªFÀÜlZ{Pþ¦³úx1׬ˆ¹}È›¾D­{@5ç±¾õÓu+ÃIißíõÞ·‚œñi¯DUúÉìü8¤&>[wÅE¹Ð†£ºh$>z*6“þ#Yõ‘±ä'lؘ“®b$¯àL©ùE7ÎÅt¿A´ÞÓ€Â|ëºWlÆ1X›òð^]úp(AX¥(„˜–o3_Œúz÷7ÃE+ÈÒR¶ûñU‹ØŸ]x¤/Pe=ã1¹ì€
+LÀJ)
+ƒPM&3ƒ“ý<=Y«¨ï¹¸žåøz
+²ÐËG ‰õE}ÔŽó"ó"½$_ñ²þoèeD‚O%ü:™ˆÁM ÙH/°^φ|ôŸ]¨p3!”ìŸå¥ÐÅý0Í*ÕìñsfïÝ3ø3ÀMˆv#VÙIˆƒ\¬µäBŠB洞#èi0>O“B{aàðC÷O½Ú‰šÿèŠFF 2€9æklhAoå±gÒü¶W ¥7:e«•Q#VùI¥!ƒ*4|?Fö˜ýèZȼïØtž›˜„´f\Äù¡é•n>WEa&ù*2I…Óó¦vؽz:’Eç¨ESV™B.§€Ò…¾Îmÿn¥Þø3$eºþ«zà<WÊü%¥è·†Jdz⨢`
+0  õ•
+^¸÷2!ù Sí:‹ÐìŽXY¦†)0Î+ÍãKN"ýøõ’¯@çäGØçÅ1t¶Ÿf1®?Õ±ô-ÖL£‘ Ž‡´,ò& ‘Œ–ª ð’£Ìqh[B$<©'/’ÕI¬r„
+LŠ#§wÜcí4ç ¥hÏ»èˆñŸÌºV>RÖ*_ !ögÓîä¸o}V|†H
+
+oƒé5Úê3v+n0áÊú½vhOˆ@Y“Dö/?Yãø÷ÖRU¸©“‘18õÿ_çÔ^ ´´ÛØNÇ+¶mÛ¶mÛ¶m{ÅVÛîضÝß¾Ùç9ûGÌš5ªÞQå‹A½ë-œùĨëTí:K‚£S¤æ
+vîÏuá4À
+ÊBÌPfµÚÛC‡¥Ì:ÅÂfYDå0™’s4HyüoÆñí+µb¤hÎáÄ ‹|NWøÑMe¶øþÓ®œaÎïŠoT‚ø¸ò Ê ô*ÑÛiØBk:óÐ6¦þ¬7 ‹ ›“ùúñýST()ãËœJ]ûkŸfýJ:..Úw 
+<˜KÃ9^Õãt´gLçfàÂH’A¼°ÕeÞ)™ž?¹«±¾Hf»1tQöÇ›Þ$_Ž¾:p¨ÀõbïhÀ’d±Ëp‚ózyìù/Säùšð?ÃN¬´™V“(~Q˜G<þ}ƪ±ýZuÕZ§í£GïÑ·ÔXñ¨.[Û
+áªÔŽG|eð¾¬ZmM;!™„$[ºÜ}×¥S/rU{~­¸4PÜŒ†pê¸îZ¯î¢ò¦Ö+‰ü¼4êHÅMrð7än…ݱ:q%šìÒ\hzlÌùõwvµù{¥3‚>³<Þ¯›a/†îëºΣ¥º"•œ]í!œ#ñâSÙ²ÏÀÀÐàbDÅ4 jhPôÔ `(a’ÊäÎ¥-¡», eÚ\D»ädË4ñb
+ì³nt•-Ü+ÙŽ\|AT~-!¬¶v¡rN6ÃE³~g5ÔO([ƒ(—XÐ÷áŒ}VKQM¡pf¯
+*k–²GœÃ—éÚÇgå$L_5C˜Že>…¤çOêÚ`TÙY¼ §\Ä }1¸ì5ÄO‰Ó:ÜI ‰íô:~;p‘»ÔJò×Z™¡ç06` ,Ô}‡»íNmÃs•ºð óMH}&é³ØÄ~lZ.IÂ|‘àVN9jc¼á‚¥¸Õ “'ELlTxWñP¯-ör»
+kóâ¶ñ-—ø+ñðĹN¦iõ}&I5
+Áúþô-KóÝ­íQ9ή,¼6úzC@íå¤^[¼irSÝì;à
+Îã.™4ø²_F‰›zÐõ„f­H²+\Ä©ýrÿx—$–
+NñŠ&’cʺ³7Ù4¤Ö€M,øÏ‹;Ÿ&mšÛž¯LNÌ`±«TåwÑX§M’ €&jz×­Y‡4
+#Š|ÈJ
+…EGµ&ôl6ÌbA\¡`‘äÒ
+LéR÷ûbÀy©%”@’OucÙšû4!W éN•w©»¨yªøaìW³jhÑ©@Öè6q$5”xà.`̾ô” 5ê¬vÏ@ÄdäÛ­PF«^fÖeã>Þ¡ðË.µµÐäÙ›3Þ•‹K:~ÞðÕú ò>8ä–êFgÄ~DPÞOÒºµãHÌ€r;OùÀÏ.OàL'ívý|FrÅ×ÒO¹‘Ü5æ]p+õÔ£¤)ݸ[vÿœè†h¢A]`l³|.ì‹ORùb\?+!ÌH çcÿÛxë¤8Ôj^«D.ªó’„DDzÙ¤?ÞËr--ŽàmáýÇí|§”Z5O±r¯ÚάÇÇõÚÐì§EþEØr”M›Ùkø‚Õé=LdâV%®N˜D·²bùý–Ä» YÌñõû`M1ƒ¹«¸“@z”þ?ŸYè¿ÍáwÚ\ýc2e¯Äþç‘ÕÖMÚfºa-ë
+ôÑ—²"úGRw’Ð"P­¢€Q;JGDT Ì˜ˆt§¡æ¥ÙU
+N¸–‰¤¨ßÙjƒ‰j³»c4¿0¶ª8wÔ›=Q‘Æ=‰×Ínó$Þ¨:¬f#,¬[ YŽÁ&èÙ•üçåÑ0V«»v%öõ–ý×ÎEe2¢%¸‘C¬/’R¯„Göî Ý|™0ÊD… )æMõóÕ‡Z=óŠt“sä¬
+€f«Ñ¢¯±~«r­y‰>íIØfó’Þýã
+v3™cÐì…8ßÌꂲCzYîjè«ß12G. û:̈ÝQì̆Åã
+n9K/˜lŽaØP¥·¹³MÅïB¸’úø™hE°K¡ny§ŸŠ¡Ì)*†ñ XåÞÌ«Ž mº)__£¤¿æ q_ X§ØäO¢Dæ†LSF,êîÔò¥ÖQJèºg¦­Á)Æ‹ªüñ^ÖÇs@¾³XD™Á^AžF^Ä}a¿|àõcXm
+
+’8Ê®ÈÚ¡Ì¢à.çWã«´&WÏ_»ªŽØæ1¢VõÙ?½ãsºÑ…SóE\í¿³Ú¡ã
+'14ê;÷í'Îz \]®ïˆÁâC„¬ÄËô{¾ j…‘6Œ€;7ÒÊüûÓ ¾ƒí´'€Í6÷ÉèÓã‹Uƒíh(ñÇeeŠò?æ
+f–ËHF³šDçÄÐ’ÍכȵKÝÂ1ÛÛøB¿±8ìñÒ@0gÉ”ƒþQâI—¥Ÿ hsþGZü4õVç„~®“Néªà›¿¹aNŽ)®
+)N¾Ø!QDGto\BÅðRvÏûÏ‹X}{g+ñ¾b&¯ø/Œú(ñx:× ›ö*{OÔcÉòšÙéïp•xN…è'ykŠ&.FÅ“ct´®ª­ÆOø]Õ‡ ‹ÚW}jU»oÌ—©„Ó½rÕk
+,4挑)²ÏPç"Y
+²½¾S/«Éî=TwŠ»¼+ÐÈU‹Zb
+Åa®ß¾•Kù`iºõÄ(åp)!l«B`(¬ýbð%bµ I‹l#*~‹m- ®9è¿>¯¢
+ð¾¶ñGcç…žíöõµqD02hïSR±ÿ~&Ë_å﮲žæíÐ;ÑòÞ㾧ÖrÒèîD ¿“÷¯PCÒŠå ‹V5€q)$»Ô˜ÀéÚ
+GykÑñÓ¶˜ë›¸sûöÍš3g­KÕ^èþÈp›W®)0Ë
+ù•ok(çè1zJÁî„”¦ï*¨Z:Ðà¯Ù6-ÎœƒˆŒ~ŸtF§GÖgC*$:~ JÉI¯ª(;³²Í?¨¢…ŽRðÄB,~Ý5\V¾ºzÑ.lñXâqEK âTôļ§=þËhB,”ÜL‰,fô¬Ç@RÜ®•˜±ŠŽýŽjœìçà¿Eö#÷ôKëb¾YÁ}Iú­
+C˜.d¤\ŠæIüQj!«H«ìk@mö
+ýNõLÜÐKu`íeÊ<Þß¹ºp‘®>; :> xYr.áqQ]‡f$è+”ý]æ˜äx þÂúø•ÐÚŒ–C½ m†Ñ·Ó'Œô`¯Ã ñ3
+Y14=8 PdE~_·Þø|ê¸Ûs_Hžä$Y<L‡¹T4Qr^’v%1Àèá–z¶šuÍÇX±3Ðë{ýeŒíÕka`ÿM;wÿ]"!"–`>&+vcåî„\ãŽ$ÜáÙ­9”ÂJ<±¤výÜ'Í *á^Œu¹=– Ó“…*¸Óe+繨sqï h¤$ÙˆÎÉèÿÿe£†—ˆQ™~ƒ*õÜÜH•ËÍXÆ¿Áø^IðþlNÿòhò+ë÷ŸØg¶7±ž)‚äO¢£šöÞJ–&'HÜ¥sõ[Û㊠5j1VqŠ^Ú&/Ó‚•t1N[m-¶ Û³n¤s^e
+_šyKÄϦ Woçnbî‚ÄÃhäNxË
+á ϶ÈLà\ €î•™ÅÅp.¢‡’Üö‚~paŸñÈ2¶1CãêîÏÉNF] vÐLp2µZ) IL 1Llä)é3YyÝø|ž°‡AÁzkÊl46!ó‘*B ußb!—Øè(ÑC"þJ
+ °¼ÆÌ@âKëûÞЀ‹£÷5ðsì¨=köÌJǘ/îÚ}á;”£ ˜t´ £½]?^d!œ;Ú´³ŽËïïã¡Ö)ãÇÿž½Ï´ÍŸ…‚AZ1»ˆêÏ/ÔDþ]‰½«”Ýz¢ßŽú˜F§«o•:sÊa”¡Ôê NqõòSñ4äË7ͳ£Ù1]¹j6áw¿+ò«¦í¡GôŸ_Ú1â!$8ZnS[,ÇaÔ÷Tfqáÿ´¶ú§ýc½` 9Ti]°Œ†‰[yŠ0wäÚBIì6~3¿-Qî~¦Î¶QÝ Bn³í.½)gÉå‰Ó™&›)û+­Q,$rR’Éü¯î´)±F`¯GÔ–ÍT¾¶`˲G”AN¦S4ð¾é³èym¹E_¬VõeÍ
+n&*ËvÉRðcåÖ:#¶Ûo8#û3üùn 
+zk.6M[Š~èÐ{«gFS<±#ÎaĘ̂$ˆ¬DNÚFMÙÉ"î÷+‡|¶0APÑUXÇ9?ÝôÄ B_LžVSý{ŒZLÅËsŒº¤¯ê›IOpe\ÈÈÖ«HƒW¥ù÷kG–‰ž*õ’ì܈á¯
+%‚_£Ö.1Ï´ëÃÿXqÇÚc‰’¤äG° ÷¢ÛEcæ‹;ÇDýîží¡ü÷à4é=‚¹h˜–f¤™[—¸Äí´Ïgà–8†Z”Õ[A5ŸÆTø´ºeGÏܬh‰½.‰g_c Y¾/ÖïÍóè³çÜíŠB+,€÷*í2”!žò0GÈñQ›@á>pýAž‡—. éœZŒ4RÓ@Ÿ9‚ßðÅð1Ü[sˆ-V‰>z©¹Bu¿È¶°n.K^9f¹>»ã—ø; ©û-¢$•Xeªž¢ïW÷.Œ ]¤'¡N¼TS\—‚µà
+Ö?‘é,M@€œ÷R_Pþ?NS4
+×Àº Š‹F¿¢Rœâ˜2£^¾í›ù´oe±B´W’ØÅ(œ<ÕÛ·$CÔ­àµAÆ5’¶ÒAÊÝÿ'^˜lœ4m<ûDV®`‚âO³ÀÒÍkÏYô'=<íÐɬìÉ€ t£¡‹&¦âúš:äX«Å¹rWrþ¬÷¶Žiƒ„j|&nzQ as¦¸˜át!Ô˜OõæR~äyöfÿ“sÒX/jpªjí%À–èk‰äþõé/yº ™Û´¹ž»}£,6¦åëh“ˆ©­†d'’ÞÂ)z—+®´íh
+ÖE]×bYWá­qäù¯zªòuXÕòP1DëÌÃÇŸý)RˆµiïZ«2L俱ø-†°cªÇ] Ë0CqöB©§ù€»°ü-›HàÕkOôHUQk´ï‘ÌÇ„èø
+x/¤kK-iÐs‡
+6à´ ¼ ãí¸Hê@¿8ÓŒfÃŒcÒ[Œx¢I¥hÞ0µejäL<{I^Ž4DŽÏ”AôÀÖ˜~À'ü};ô*lžˆ>²{mùÛÉØTœñd†vçµwŒ?3»QË`š³ÃÖÁN=$hOô©b+C4ÂÉ ìœîóK¹Ä-Ù=‚’ŠÆ,q„
+s‘+‹.]Ž“<·Ä<Y<½±ýK¾¸flæßFØzä3Câ÷-D£R¡/¹{C$Žâšéw/¶ÃV——~KÜÀT†”8†ëö¬àY¼ ejop.ÜÄ(ZMÓl†ÏËu±ÅÈÉ8øÎwe@¹Y,Ogêt<˜!þJ
+$Qpê7¡²¬Yü^ÏÌE³›Ž`¢¼Ï?Y@&ª)4•ù©øv²ÖØæ§ß„+ÖÆȵ!éUnQ˜dSâõH! K-”æqcû‹'tpµ=ç”û q 9MŸô¼äð^/ÀŸ
+Ö=Ø©p±yµEá_BK &
+¨³ös£|)GÛÚ¹× =4eçd·x_@…ÄÕ´¨¹f¯ö·’LŸvŸ”æ®ó;iÔß0ðbÑ©ÝCøtö {¿e¿qrúÚIzu Wzô$w3í«DVêûcHê‚û3~ hâeVWÑ=3ìÌîo6°9mÈOÝ‚É„é)˜c¼sàMûüë Ïc
+NÁá|œãÔ—+ùn(dݵFÐã©Ö²±•Rr±ß+¥yï)|”løHÏ“á¶fZÇOðŒYœŠbÃ,eæRv;ÿá&ÓQEߎýC"5…‘*ãúRyoGÃ>/aE,èœnøž9¤ž}¤,ßNcW/$>w¹h+vcÖ*¦ùëÈâ7drKþSjêDzý"·­i†bàƒ•7w9;
+¿dKMÖþŠ¿ˆíóÞ:¬rΟ‡U½³en^gÃIÎ!íV*5™Î¦Ë$¶¯÷õ«+wçƒjW7_ÁǬì?€Ù¿ÓCk‰IñX«Ì·¶¶?×lfª’ö•p.óêoåh)v'°è Ú«e©€—Âíþ·ÆÀn t/Aï_…øÃ1+¥mRýDê*é7ôÅÕ.àXü‹¬1…ᘟ
+Í|6°eØf0Ñ +ÿ{7”žUt-]õ¹8׊ء¾Ó­ÑšŒ¸«N0bžJ½Ú+ƒC䣀ëQ˜›ÁÃhq6 oëIÜá\î¡j[ËJ¨ OŒ4É¥}Ô°ùˆ4a=š„“8¿A—iÎõ“”Béú€}Œ®4R¥²PÜ ÿuIê®Ñ‡±zÿÁ˜¹ U‘ʲœüÙ…éÙ÷ã"eßéŸn¬:õzÈ(*pW40RBȬ®‰Íîšbƒ6ˆ¾Ø%°ˆ=`ËQø¨ì§24ï9°èûñ»»×ΰ(_¥³‹&Uc•"Pî‹ímHñ¿F3À5«Úyl°ßªºÔÅTuÔOÇìs_ƒŸ”Ø@bó€`VÙ†ÀÆ­(ÆÇe`$:oˆ¡7䌖ËÊÏ
+ì;­Ÿ"ZÌ©ÁN‹ ×ÓkÀ©ÙòaÐCBxÑœÕå>Ç÷«Á"Q"C’¦3ä‹
+Ò´…gòØÅE%ë6‘ŒìÌg|y»{¦7ÝŠÙî ïá¿@—¡> U«{{¬Ø®×iýe™-¬×4€ÊÒQé}•±›WúaÁD‡ŸûSw.ÖóòtF .g‰Ïü é{UÝy)ؼ ÿ\‹˜$,'ÉaB'ÌRÚs_ôIEëÝ#XÌuß_U'A’´ënŠv‚AƒCšz¨DBGV T6õ±nþpžŽÖ½ŽÏh¾wò~4X3©­›Ð7‹\ oCw.¦ÚÞÛeËu!’ê,n;«¢Ñìag⣄ÁÞÞ©¢ßËé¥@ÁdFUv{/v]k)ïB­üF!…xaª=¸åÞ©+ǃ«<Ñùô×Ýå
endstream
endobj
-646 0 obj
+893 0 obj
<<
/Type /FontDescriptor
-/FontName /CGRHAC+LMRoman8-Regular
+/FontName /VWFHRW+LMRoman8-Regular
/Flags 4
/FontBBox [-456 -292 1497 1125]
/Ascent 689
@@ -5253,116 +6606,124 @@ endobj
/ItalicAngle 0
/StemV 76
/XHeight 431
-/CharSet (/B/C/E/F/I/L/N/O/S/T/X/a/b/c/comma/d/e/eight/f/ff/fi/four/g/h/hyphen/i/k/l/m/n/o/one/p/period/q/quoteleft/quoteright/r/s/semicolon/slash/t/three/two/u/v/w/y/zero)
-/FontFile 645 0 R
+/CharSet (/A/C/E/I/O/S/T/X/a/b/c/colon/comma/d/e/endash/f/ff/fi/five/four/g/h/hyphen/i/j/k/l/m/n/o/p/parenleft/parenright/period/q/r/s/semicolon/t/u/v/w/x/y)
+/FontFile 892 0 R
>>
endobj
-647 0 obj
+894 0 obj
<<
-/Length1 2247
-/Length2 26720
+/Length1 2113
+/Length2 24823
/Length3 0
-/Length 28035
+/Length 26092
/Filter /FlateDecode
>>
stream
-xÚ´¹uT›Û¶>Œw÷w÷âîîV÷àîîZ XÑbÅ­¸C‹»/îî|tŸ{îÞçÜß¿ßÈ á™ú¬¹æ\+ã Õ{u&Q3”ƒ½ 3+?@AQÍÁhÏǤ²pµ:Ø™YY9©¨ÄA@+{   ˆÀãb P6uys}³`eåC¤HƒìAÎoJ3€‰'@äÔðt±h° “ ü¦Ù[XÙƒèÞ\Ä=­,,]þÄà`búé·3@hjãන
-ÿ%{û™Ñü‹  îêìü'‡â¿UÎÿ›æßÔÅÞVf`ëí tÿïÚ»‚½þQ›ÿ\¶©ƒ=Ø
-ìþWDÀÜÊô‡=øÏžYÙÿ%SU’•’T×`Rxk<{&E‡·êØ3»x¸üeý'ž¨„?€—•ÀÆÇ `}kRI{3q;»7Ö`Ä?å“°z«“‹ƒ³'Ëÿék{w{ïÿ+7·²73ÿSy3WGM{+'W¬ÄÿX¿‰ÿ–Y€\
-û/¹¬ ð­÷Eí-lAo›ò—HóÏ8Ù¾õíÛÙcõçè0±q°ý—î­%MmìA`0€ƒ÷/è­ ÿEø­öèXdÅää”þOÏüe&ioê`feo`çâ
-\!¹D˜Å̉6"|‰¼Mrpa`s@u¡ƒ‚ ¿¡_j }±UŽíËjKJåø•™ªÈÐOÑURôG®³fP–âB@Y9ݾ\îÝΩ¬ÖÄVR€æq¾¶ÎûXö±WŒ‹4rƒ²Ö•|X÷¢¶&lg[LtÂv¢…‰vH—×{ìø`è"ý´ñ—0Ürï»;±¶!cŠ„Ÿ¢i·³øï°$iïV—4÷áô#ÁíHÄ$þ”ÄeÒ
-ŠÔÿ-$† —Ûx
-_l·Rϱã8K˜u2
-yÊÒ_! l·¶\iWüLy…õÊâí<¿ç1¿·î‡Í'CˆðžÌ7tEZÔ…x<gbó“8¢«“ö†ÅN ZçãYß9KV®¼7 ý¶‡‘ •£øLTD¸­I(ƒ!‚Cõ]Ý»d‹~ 0·¼•_æôõâ
-7!Ú+ã
-mÍ•ÁssÙóþ ÙëG·’ EØ|Dܾ¨Wj_iÖ¡^EÉy—G.ø 2¾ÌN]|ßi¾ü‹rë'!Ïv‚σ
-âŸ>ð5\¹›ÜXí`m¬¿ÏhÇ´cABÅ‘TâX {Q×7aØôx¶ã5þq¼¢s;ÅX¥ÁU$6ÄûI½n wò:éq’#BZQBT€Š sv1Ž®x̾Ž O›r¢Ù%¹ºÏz|¨¿š¤“È+7EtÜBà®3±†Rdá¢vET÷Í$
-çEKœ÷?‘.Ö„cÞ/þ„ÙïP¿{™¹äæh….¡/8€7»–áè¨ãµHaÀӇϑ ´˜Æl9j¯"õ×zfÉÙ˜|þ>NÖEÃW£ÛQMGç§u˜Ã *—.±j’vÒ‡9GÁ8Çê÷Ögz
-ÊGbz B…ÔXiÑuÃÍ¥6GÛ~ÄIÿÞºÙíj á›Å
-ÕÒ©“P†Cƒ
-¢JûO~}–¡B×_ûÝÈ°hâH[<'*Öš®²7• ÇÃè zÖ \íÕlPÓ¬Úb;ßq_$+˜!íhwß
-Ov†+ãdêKêxîm 6ŒÕŒßŸÀ|ó3]èhIí[™Q@n„:«O?™hy]ÓA¹WŒ‚¼àêÈ'd«É
-È+VÉÿ–Ú0Ÿ°@t«Âî<êOJÁáãºKgU{¾ÚœC>‹V¥ƒC‚(|G?$º™ÒýhÃ]mœ´&¬Òâ$öúS¶nw*àÇ.y„ãnT«
-.†øƒœ;ܳ¡¶³§ ²hŽâÞgöcB±tAæh_-h·®½ý\zæ¹sz¨l­T§ÝynQ |¯‡l%+Lkä¤m†’òŽ3:þñ;ÝüâS´ºl’I6#3º´³„ºNÃý*Né„·ôq`ÛTÂü©Ð®‹¡™ñ½y…ª}¶»¯-Hx4(²–^+öƒä8ûè×èq\VU¼¼Ó!ÖuŽ}fŠ´äy~òÀï÷VšÀjnºŒ—ØqŠA2gÇãMtšV5:fcZQÿ‘D?“íµY3u¬!b‚GY“¾jOÕ¸H‡šôãrlÎ4ùX–:ð½ú­JuP_±.â,dûÍqÙÊÊ‹îÈ™Ã#m_8+)R!þjí!skc“¤d&÷¸¨ÀL=¦Þ £ë0k“»È÷Ù
-"ŠÞ+{÷ýòØÈÈóC ¬ËÝLµåƒ#Ü&*¿•
- ¦üõÍÞ§sWY±;^óàŠÁ6Ÿü›?=¯BT._M‡Á弊79zD¬Úc¾aRDóµ2Z˯[ ŠkNV:ãu”Ô>²Â¢o^vîB0ИeP"¿œÄÎ\Úã0‘Â-Œ†íŸ7Ç?Â+¬CSË Œ¸ó  {N;wÈÀµF”ê ²öÅ7’šùK8v7kâ¡Žk¸è‹2
-¤aîæ¼û(ä!ˆ"H䯿. oû0±8Å]‰MÃ5Ã?¿,°‹àžðÞd&(Žžhx¼À[¤ß*‡Ókˆ¸â;ˆQ
-PH`¹ÚG¡aê¡ú ½ïàd›eäeKK™¼3œ ¥}/ÓƒOÀó^Äd´ázÚÂÒ*Eì!RkNËàô]‡ »’"6’*‘ÂÙ«Uf4¥¶UÓ1ëÓ:âÜð'Ñõïh§ïi{sâ 7\6¾ÿ¬S4†Í3 ;ëO˜ÌQ]ÿÚ߶Ê:i°X~B°v´3\2Vèò¨ºdÖ_q:1w9„ñ\8„_]Èघ@(nõâÔ›`ÕâJÑìÂÜþrBÍ+PoNþ¶˜ã¡×½!²$“˜PR¼MDièq=BêÔŒR–ÞýpZº•.ÑÃføÌAS®‹pÕBdËL"ð?ÏÀE` ¥ª œúÑ1Õná .Æ+æý±â¢É—eÏÏòÐ`žQ‚¸7òªwÙ õ‚x˜×á|Ùü¸«Ôl)Í6){iÏ€¶½{> ÄÍpD
-ë 88¦ì¾Çüú;û<È:êMÇ‹zD,úqëÓàسš2½|0M6Á’
-UÌ™© òg BèÊ xjÛƒ ¹æXŽä­¿j )`Ô¦»>Ë0n.Æw^¶yÝ ë5߸ ¯"\ž·Œ†ó ÇRÝ|a]±®vŒû
-駰Ýãâ/¢*Èž¿s?¯7Ì,Aù³éÓG ¾ûþ¬¦¦w¯®ðø%¤‚ÿŠýáÌÆ"nˆnúk‘"9å Z% ¹,݉Oö€P齜é^dpmgò¬’mFÄ÷Ú£HÖ|¾´6Ù~ïâçÞ¾@XÔbbMi]g”ð…Æú ¸}Ëh¾ RYU |á^ÃßœïÌû^f~¡š®Û•_Y
-•$
- ¼ì¡ –|0 )\ '´<°í{þØEmà¬xj»ù<ñÉÖcÜPhŸøú¹  6XkKSê³\ÿU^Œ+[F*ŸOá;ð¨Ö6†þ^T¤ÊíåJ°%>òôÆX£çJEÇû±”7Ÿ¾ƒâ üŠ{Æx-ãKväžñó(ÿ£®•ó»ù±e吏¨Ac/!щÆ%ytdËäâ€K¨Š/+qçAZ¬5š.+d'}–Ã_¶4—Šu_—…¨ì´„ÑéúŠˆ¬ˆ°*¹ŸK…¦ÊD¾Ì+K’Œ²:`ŠñéDDµ\}¥$øL-õ
-Žh}71¥äfyl¬‘Äaâï“mÂÊ33‘Ęx=œû¹Ë _#[ Ïî@ 5ÏN§¤â-Ù
-Ñ"çÊ©¹’×C^–wJËãpqté]¬Å.%Â
-¿áXD©ÝúÁ7y‚ùÜÄ‚
-Ê{öƒûà#ûÏsYqœ×!j±*\R· ÐcòÌLœ¦õ–‘œ¾©¸5bç} ‹ò-§¬WÊH"ÅŸ!>¢E<'$
-º7ŠúŸÄ@Æ\øy[öQyzP ãÖ©(EÜÏžØ ç‘ jÙ‹_!êLçs×Ë«5î’ä ìŒYJ‘‹"}IÚ{¶8+ò×{R#óaÌÆ@hN뢧’–ÊW¹ŸvÔ/pñjeM›ï
-ë¤Ìq£—ká5úф쿦Kã!ÙRF‘Sw«œOè´‹ŒOaTՃݣÏð4 ­1Oï/~TW¸¥Aùì*‡YPîäSÅwHUäç ‹<4h FÏ| Òʺb¢æøÙ"z[–Îa9úXë;YÝy|Ñ;·rC¸”Íä“+¨ÀX›²- ˆ­Ç˜³¡—P:W RùZû3$H¿ËlÛAÐ=áÝ!0ëÌóc%ÂÓ>|Qkd‚YýD§I!ÍQ5)Ú(þf•ëœ9Æ!Ìšâ,ç€Ü¥ehF²Þ«0ô Èýó†ÍC4ÌÞXîåaššÊ^Bþa+£OJcy[¾îÂõÃñÞ ® Ú{Û©œxúz}òâ¨Orp+eI¦=ù¦íÖꊧÇã}ÛJ³¤Lé]¿ ³nèýG!tø¸¯Vy¤ÚWøΫ`¦6ÀÕ¿`ÑúÊ›Àa®QU(Qp«·L{v"¢ùß`¾ï>kã¯#ŒÇí¦w"y@ŒþrÐLüĘåF°¼;u"
-Fé2NG¨™17Zh¬/1ý)e©@Eÿew®ÅÚù™p`<0}çeuz‡>é_Á;•f¶Ú¨#ýÂI']èkÃú$ÆâÁÃèEe ãó
-Œ½ÈŸ®Ë5¹’‰œƒ–C
-ð‡ 3/¸)é)g…á÷õ£¼ñ.Lß­oèÅH¹ä{{! µžJ˜ó[é5¿ˆ»Mã=šµS$…¶±Û ”~˜…"ò¯óÄÞ½ ÓÓÑn÷ÿ!JÿŒDot¬<€f½Ûé½Íú;Ó/2ˆ „1\ówP’c·PQ1ÅH%Y)4-P°,Ÿ½?ž…¶„÷ñßϧ‰e…¸3R‚:%ó › Z(Q¡¥†Ä¿Á©0’Q°Áüçsf5Ï囕û‚Þ±¹F.K]ÓãVºÓrG§éÙyx%müSI´†’Þþö±Á M"¸²…!`Ú
--œíU_Ék‚úàιm4™\=Sach‹'â¦Þ磣Û
-ˆé9>¦S׶ÉsÇ‚0ûüRÉÔ‚B-5Ú}'/Þ
-ŒU2 .td¨>¥â4È
-Á–FùJãÄñ=¾ÿd &]‰¯g†ªÅËï€ØGŒÚ¨’0ËhOhY© -‡‘6Aã$)•T@_ój¢EÇ[œa!Œ2ø‘hyïÝo": JVÜb}ê­Äå»Ç©}©àËÂä*³¾Vz×Cܶ)›yµUýZ’áÁ§Î@CŽ^¡“õ+=Û#)JËJ„öÉCÍ:±%ä* ª©9IZZÄ lËÈ]#‹¸éŒt"æføÊ1W[‚g‰ÊÚ>y[´ðH¥„ì Ä0Ž;©-Üßëé¦
-’øveîâÆÀçôjøù3 "ìB°Y£Èòðgú‹ÐÙûpªÕ¡í7×e™¦òú¿N.6Û­ú¿„d…>õÛ Š–£Æ³YZ›³ ?2ÖµaÙ!–yÝh&§•$®ô_cVíŸ {ãÅ–S´ö¹¶:ŽÖjÊÆ8Y½3˜)Fe¾‹‰bEeƀ˔h…)1(ÐîÕ¤]Ç»9* Éš ц'C½8o( åòÛ\GǶ­^GµðÇ©)”ÅLèÌÓòO.ÒD^\¥•Tñúi¸ÓÃtF×kzôª¼|Ö×êW“Ó]s*ÛÌsÏ7 fèêÜY–üBߟûJ#¯DüÕP‰ @]®)Âv
-l¨ÙQÐDkܺÈÏ,ªÜ·õ@?Cåõ¨Y«@U!IPZ=‹
- ˆ¶c´¼Ù_ç¡M•¥Wy™Ýc1>u™Z±*1f_3xX›ÌvÓÞ§ë<㔈«"cZÿp<誥ËËl}ó>½Y%Â%Wà[!¢5;ÅÌØLêtöp ùé‘MÛ2ö²[Di¶l¶§­õîÚ-V¨•kg—¸ ,¦ÙAõ_ W¹;ˆ üm¹»çÃQZ01^{f§݃°ûs½µ3,=PE(ƒøq¨k†›4Ñ>Ñj,1}]üLQ¡°_ÇoG#%qÕut‘,ð0{&ªEdŸQ‹ç¼'ÞLÉ=yĹ´»Ø©Â¡ÎD"2°È<Oñ¨éÓ¦z AS‚D}š;Ýú¤Žâþ)'p"þÕA!ê%WìJ‰31ÉQP6®­C~q!#”©ì%ËP©IZƒ¹VURâ^òåÖûÁ¬Å\ëÝ,¡Ï%¿·.¬(½éEÄ–dõªôä½ÖV¹q5ú<ÃuW0}±Ð®ÓCX•úI;fÓž‹À¬}çŒ6Ìûóy]¾¿ÏM¹)5þg#AwtbÝúCôZóù; ö§©'1Î5jÓdýaâeVxi¤§ñSdÆ—*¹]‘ÅùMÑÐgï¸aN Øj‰Ý²@Üù-^è\ê¿+Š´Ó’SùÞ£uÀâ\"–.™jizBæ’‹+ý¼1ç\ÕÚå­95û¢}!—™å—0­¾ÿ”un¢Ç˜B÷ÚÜïÒˆ3Ò4f
-™’Æ,Ü›IèÂ&€zíR:•Î§/Õ—Ò†f@†A$ÓìqÊj£-õk³
-)YS&-ÿ5cÄ¥ö&/T`ã¹êa>p>nj’ë——¥&H1.AJ žêK”py=ŸmBÈä+òx…(D¥°ñá&`J¯¡UÍQ*|8¾~B
-Ž} "“Ô3ò(Zmó¸#f,q·W(Æ*0ª¢íž$5Y’ðj"|‡¤šÑé‘1CfÌÌngÛä#½/:`"‰º,*9Á§/óƒ,W–b&½€XHžó§å²bxY
-ÔæÃ8ËH~
-­ºÚŸ¶8‹©‰¶Ã§*ïEoé~cÁû÷ûÔä“sž­'Ãté)9p50NL‡°¼·ÕôU²Ïi¹ÖPx¸³ ÷I©´Ë?!2µ•{Ð}pí¥åÆÙðCÒŸ¡Þ•ìy–üŒ,ØÒÞ,Œ”¥šçH{œ`5èccæB NoÈ76‹w“€ûí¦•‹Ž=>b8Fe¥pO,h“ÙmCÔTV¢|Ï"n e›±¹ßÀô QgÍ„U~'ø*Þ®8 j-ºlJ¤üºí¯¬…3—¾æ§쉨‘¡( ÁD¬U%ï(Å’áZ¼…7•+©Ò•¹;Äéô.´Ò}TÕTþ Þ—ô´=Jé{m„W+v&±¡ä=Z¿ÉèÛy L³壢±MS TF~k÷gtø-Sle|)ßÑt!—I Q?ÂÇšÒOÖûP­ˆ8~9]µ¿%]¥13-7Ó~ ¹¬¯i­{RèE £%üŒg+}[¡Ž$òùË÷{ÌåzÍ “韊¢6‰$»ZBÔ]¡¼ë¼¿âî)¹5.ŽKŸã„ö:«ë3éûЖsãf²XJ7Ä‚>1Nrz6âÅÒ—iÍ:°u$w­0o ;Ä*ó_Õ.™. Ðû¡ý?~î¯_
-Ô+ù›®rx ÿÁÚÛqlÂþK`kÈÅO".E»cd”[D1ÝÃy|9RZÒ´Ù“b–büÎ1|±çKS›vÂàœŸмéÓQ‡+¨i³z¾–¿Ú'ÂuÕ7šêÛš-Sµ»•¶@ª¥Œîå 
-J}UÎ]b<<?="ª
-Ó2‰$d†-K@¯l³êÎÎÑÝ}ßÑÙâÃVcù®!-ñ
-_¦ÓLÀ©j'Þôv ø*¡óÏó7¤  jCZJÚXøó7&pGU~Έ¡Ô´hÍõ4.ïÙ FÆß½)Jcl©Š.žÿyøôHJ&¾G~Bó~?dûõ¸'“àÞÞg‘³±@Ò»Q²ø]¼ÜÞÆô7tûGåü™F:ezd6W»cñ§0FXï]2œœF$Yx{åF&$FÖž;~#üU¤Ä]~úç±}£ç
-„ÙHÉûߪÒó…Ð×âlœ‹š»oËV¾OäÄè&27}ù,L©àP‚ЯŠ]D×NQÃæ¡•‡–eÄz9px=s~*…1ÐKŠý{²BKf<üˆ¶ü„òWµÑëÝþZAÃbGSNlܼFÄoÑa´íÛé£T›cÁ`<ŒßŠnƒMP­”3žÏ$nµ¨C#ªÌÂŒ*¡4¹zµéz†g G©{
-«­q°®sbåþБ–÷u=ßâ±î²V¿ø0R0l§+fL¯¢Î»Á2¬OGi¨Cæî$O\iƒáML¬ôùžp®Ã]RÍÖ0eø½¥|uš€z‘ Rýº
-ÚÍ,mC§0•Œj(ÅR\Œk~þôî” (¨COlüÚºŠ¯=Áž
-<ãÉ&™„Z¨\…¥»=Ž×ÙfŠQk)‹n©Óm¹ò²-4tõ0ùƽ‰oPCöÍqžNÇW߯:OÛ‚šZuGBè?u3øpí$†5cÅ0<F?Õuöªëi3ª3i/8šÕ‡tGýŸí0²“å'LUÁŸ»* ÄT½ou¦FÒƾ‰ˆ3­(ºh¢tçÕ6ú^¤1¢÷Þ —sÄ6Ë–ø´Ca»!÷SêÑbŠ³VT}O-›¯@@M ’S™º+nqUr§t…–Y[C ®isµ™üíïoÊïõ§¤Ÿ±[ˆYc9k~­ØëÓ¢¤ ˆÙÙžóbé!’kz‰;ò3«”Ÿ‚¿r,Fw){FÓ,¶Þ€yš¿o]Bк¨âg´ÃjÑ„UÙÆØ|0”«¯0ƒ’/Mд Í7ÿfç3îºy)žÌÝz›èmD“ნcÔC”ÉÏþÖIÏz™y%í‹ üU€li!m”Õ±ý*õ†€©²—Y“_rFˆ
-FŽ¯úöÄEÛ-Ûæݽ^ŠG>³«·QÌâTcÙ÷ÞÔü×ÓD 1×æG‹OI&r;ÂKsÓóš.‡¦x_­ýÝ*ðßG”V¦ts¿Ó+V·ÚEÙ;~ñ h¬ùT»zC:jÀx̉åsú]‹â¬Þ€\†ù²úu´»5÷:/pI«pVð8‰·aÀqÔÇmc…âÿk㜖+,zbÛɉmÛ¶mÛ¶mtÔ±mÛ¶;6:œ;5ußæ#v­‡UkÿˆÚG»6Îqp±± ”À3/ùר¥'6ê¢Ua«MzI®Â؉ÐH|/†¥u/ôŠN/¸'çø”: øq_Ozv-h‰b
-„9Ž+^]ÄYÎ÷u97ç•=å: Ý!ià#Ë4ú\²¤©µ|”¼›)2œðíBxô(Ÿ8ö ð-0ý¬\–Ž¡;+@Gg•’SÆlÓÞùg„B9>$­¬1t©Çð<Ç‹PÐÒåæLXQ'Ë;YˆB“÷\ÌÊÙöÈâÙFÄLôŽ©€ƒÒ¦Ÿ(唵ël Ý1AO©>‹‘.4ù@ïó7?†L`D*"ÜÎzR­­1üƼC šéæ(H˜ÅRDah†ŠuðvÏéKy2nàõ™HÞÕ§@ë$føYx‚Å
-b
-’™™ÌóÑ܈µýÍ ‘Zv­+¼³ªh.s¯|íHºÒ»­`_¡î—lÖG¶Y(#WmÄõžT£l#«Pv±…ç8ñEöÛzwý^qÉtO’¿¦e,ÀçÛú¿Î=ƒõp[Œ¬šùÑí£úÉ S
-‡†çô†u €cEÝ?v7'¼ Á²žG¾½P*GÂhzÚŒãĉǸæü •aR{5–<¹ƒ¶= ÎÍ*@¶øúC
-\çú®ëßgœ ¢Ç–¸•¯ò~V¡ó'Dî&×Ëœu]?®¬‰–=»‰cGyÌÈM‰­T‡MÂLy© ÌuŒRµ`Å?£iï¿Lf:~µcÄš†ˆ½ƒíFTê‰G¸¯,÷ÛŠfÖ7eèÏf$ùx~Sé<",‹6ì‹™VûÿØN£økÜÞ$°o]»œ}]<ÀÅè³)˜ë†n£«ë¬×fD¬^Fç:ÿv;Äf8(jYêqe7l'êÓ^ú7¢­…RTîiíYbóþÌÒÄ‘
-ïQ©µi="WÿS @›`7“›ËÚRž†ÈŠØìy¿@ô5§”îßD*K ÍH¶X¬(ÐÙŒµ}õšGC74|”õ·—ó‚ãšüÓå
-[8U‘VŠûV#Óþ­ÎzÃáí«
-"é mXñ¦ê+ó®:¥-1ÓÈÛº+ä«
-ûîU72Åb¯L¸¤†aR ‹ŠÑü¡0„È­#Ù^€cììü„"R»&¼K£¢¡BÎÆvrút`ÉÇŠtöEZ?šz¢ÿòütØ=£8'j.»<«Æ÷&Muò®~îA*ÂCõ8=õ—îbÖ^Cñ8[a•!ÍÞæªΖ‹U²¿.é¨Vòûå àXãåêxÑà¨Ëø­ì¾«èü2¬hW#š8nçeÔL{V-ž‡u­ÓI’y̸"¬‰¢ã²%}`W‰ø^‰>ÝX² DC•Ñr\Ò)ÃkŽ¹ÉÛ8ïÓžFz¹©…õ”¦ºL|ÿìo³=ðk~¶OÂ_¯þ{’‘›™Â'm5e1b°E´.´šÍI
-5)Ì»¯/{_ –ôì㙓„òÌšëûDu
-¿
-%Ö‹ù½WtFÛ÷n@ˆìX͸†tS‘
-•;fbñVÇçãNÁUžD ñßi}1Ÿ¡e¡…ŸU›g|ñhÍ!.’›bIV}@ý_5 ™~:¯ ó1k ìº òcº²mÿdÕ+4¹0‡`®Ç×W€Òr˜¬DlÚs·Õ{ª_f±vs.~“,y¦TÞhL݆Pòwr–!;êêT÷SÁ./úп͢B%¸Ê¬P1Å1¥×Ãqmõ¹~è.MÏÁ ÎÍl…Yï^1m„j‚]¼=á­aî ¥~ë…luXôaaŸ·¾`— #IDf0ødr¹ì¹M}ýßî¦8aªA×edi'¸´æ1!´Ÿ/ÊçKS7j€jháp]—dhœôïÊÚ[Ä7á°ys.#é•ì#jƒ±e$Õj–¶–½Ï+–Jj 2bèÜžIâpEêÙ0öæ”",øfWÏèJ‚ê3äeLÂ:0 .;¤{ãpâSScŠZÿ•µ ¥ Q¯: ŸFb
-bØy<«K€Ù©RãÇLvî ÈœBÌ$ž£¡°ÕJó¡Ä…lÛ 9˜Ù·Î„>³9ûÁì´NîôˆÛ¬#&Z¡Ù¦FÃô“Wä<ïÆ£`òzüÂðÄè'h!`ÞLø”TF'?ÉÓœr‰Åî˜ã҈͜šªð¶Íétøßæ_¼*Þþ!!MáÉ«øáèu£Y±’´ [ues ¾0ztÓ7#ê¡RBZj:DÓ1ƹX—F™js€'&#d¯÷}âJ‚½8›±?E¾BfO¿Wðîx ÁòÔ[F‚Íb@K
-‹&· ¶0=‹œürJ]n¢¥Ñ½ù1M}
-y:Wþ
-¥th›àB!XAø_©D°7iå RË¡83a\á±y+²BÈ$J!… ú-9Y5»+1ÍÔ$4õü$ÿ“sÜÿ§ë¬Li>*‚ _*åzÿçd*ˆt^Ùû;ñ›726?†bŸë
-w~¦Eå¿Àz\\A¡0\- SˆÆ¦:ÌYmJHå çñ.ab²ÀåzDecã¦Ë)y”Ÿdž¶±´ØÙÕä‰Ì1Ì&ê=NC¥€œÁw„ëK…"Âãi )y€L×ïöŽŠ‰Ÿ¶zá=á>É'q¿þÁ3+Ïx÷¤k¿VQ´,Ì$ͨ¶_•àFVÅ(Læ÷ô±úý=¡CMT…cxHâF”æB"ý;‹Tä—IûgðøJÞ
-)Ô™}hRY sþ‚ºÖÆ;s}î‘©>\e‰œç¾¿“¾ Ép×äá½døQfé¡Ô¾÷*ô n$YÉ’ÞšÆYwm»jJ·ÄGã¤×§×‡åÂ’¼£sLvíö m~”ˆð¾QZ QŠ{«n1Bk¨æ?l•ƒw±&^²\cCÙiq ¥ïÈ:!õÏŠ·ÀÙÕÝÓ)\pžkÀÓ3IöfçÇšÓ65ãL!Εù^÷™)ðÓ)Õ#˜Ÿ_*´5mëS£»Îq¶Ú¾LÈ‚:È^'Xµ k]ïT½”º9«;Z¹3¡hI"€»=Ý$B¬v÷.$¡)Š¼RÄ¿o÷YG9EwdH÷BX
-Q pGYØKÍ¿ËpBý«Dö÷mŽ@¢¿(cÿnL©t[7KÅ%BkaD åÏÁyWç‚OŒ€#¯ÙûF!د‘ùÐí¡ÞŠ)á‘BX¡Bí÷3WTvµ/Å¢[ ¢kÕ¹Šv+&¸Ò
-e<M,À‚}sù%¨NnµÆÈ™d–·pÖJÖ8‰h q]¸ ¡…š£a©èë€APŸç¦›Kýüϯrþ´´qŠGVRÜÊ‚<\Þ:¤Èpº¯þ×Rèlq²iߦMnµc#åÁ:ò“˱%ÅؽnÞG†.“ù‘æf” 9¾˜Âxss¸ì2{RÿrŸUr˜ ¸ˆ‰V°¤•¹ÎNEwÛ“©>-b©B=òCÀ}o¥·s£'¿‚¨…e›g&QŠW
-gÏ:˜­·kQ¤(}š‰èÐlÞœ¿Gk!–øàMS'4¢+ÌîA”Y 6Æèí–ªK4Â?8xVHWhþŸÂZöü¹ØÖ“ç=-!•ë“™´`¼×ÐÆÔ¹kïæÅ›Ãgñu&jÄÄŘÅXJÐÏ]§_«*‚ŸK”²¹->ø<q?ÖM5v.‰N–úÖIñÔ;<Ù*ÅÄ3'"„ÆM½C–m×!”‘,ywâéƒæÁSÉ«˜(I-ûÝŒ-êš@o8šÈôHð@¯ÀÚF»~|Yhü
-4µ#÷iÿGÿ^±ƒýç3‚('On¦·²L¡–'ÂÃíïÂ'ntãúñ¼ò­q&ß„|}"îÁ§®v¼ÄÂä{å v+îâ <ÞÛŽ|Ë÷‹¨77;!jøX®æ(Í›Ñ粟rã’‹]οf±MCÜóÆ#ºÅc¤¾~t¦Eôª~¦5‘vÕC·Ý¨wcP–ˤÆEñT%'™Ù”Œ×âtá9
-\$|Þ¬5;Þçô|§K|ßz$â]…q~QÌãOÈ%Œ ¤(# ÂØ Õ¡„÷ÙnFè×6R$
-b\Ò +¼+¹;5•½ÔªJ>FÍ„€ 6ë§@¢DFÅž³+Ú2®††ƒ2浧 §éº(syeââ*0'p^¡? ÝÛÏ4ÅKšŒ>­ë¡p œÓqT¨ò’ë áð€­‚ŒT"y;M²©»Ó>ç=%K!-svÇ:0¦å‚["E«ø© HññV¸Z}eBàÏG/œCgÇ ºwÖjýN´î5EyøןÐÍ;ÌE£Èh¾ÉÒùªóÄíÉÕÞ)¿d2Jpo;»žé0ŒÁÕš ý7vš[î‹÷½cFéÖ¦òõNiž§ ÂçG”îâ…&î\yŠBì I£ß63—sòˆœqÜYǸög*ÔÉQψl…®ÖQAz•?ãG†qWMeçªm³£JGðTë‹æÔ[ÑGüwš1úÍ= my9 T4Þ}Ð}åru‰}l¡‹$’s³¼PèS2÷˜ê.¹ ¤ÈN N†ù‡­ú«^‰wf9?#Ÿ~¡uÞ›t²ŸÕ¯2/ø!ˆ³É®¦ÍÙñ;ðŽ“Ç:1陕¥µ:!OÑpÊzÏûðºízjw²í:üQ]c#•ÐPú°r#Е拻Ìó?* |øùo¢Úê‘þ"%Ìš”÷,©$˜¿—®"Ñ6_Ý"‰©®@§f“ ™c³c]¸×Ød9·á^ÈN)hD——ý#Ê5,³`ø8W—ù“p‹4|,‘Ä.w¸m‚zV6}„1²µýî»ÝÑíMÎÞàl¸ë·œ¨E‰¤«yÄ8wå8_ŒuÁ6KU+ç¤Ç1«Ðš#å»=9Wrë…éSNÐæåºþå*å7nu(T†¹–¬õƒŽ+&!rØO§M›½xH0awöéþí*jÁâ“g¶ÏCí ¹Wµ;µ}Øè`@ÀS ÔUl6CÒ’¶‘xìô`±#æmÆz¿Y0!Ü~8ôBAs93÷ŒÂ7;ú›”k€0§jÇŒHÉäbé<TrÔÞÛpó]ô¶ÞZWd¥q>#â*ã¿+¸<÷K<JÎYßðDH!êIÂ-Ü©×kU¾íÌÂþS0œ¼ «]葳—š£O 1?xj&ž9O îaGm sú¹Ö¨J»ô„Fı
-ꉢ¼ö²`pžTíóŠÛÊüïKöIt‹8[=`S¶Q¨z§²û°à¯ðju¡‚>¿"›Ýíž(ØQ‹tšœï;ÕWán4pÝ]î«›Ýðéö©àê[ÉðAKy@ï-GW]´eÜ;Ûža‘{êl1ÊvR)–œõ`ƒ‚Õô;÷ˆRk,L夡mz;-ò¬
-„nÎÑ4é’gñHRºüï/ypª±\Þ0E8m¹ç[ñú>‘ÂåÇ  BBvøAW4ˆ¤œ ¯ŽB9?0‡Z=frþh©à¨CiüY%úÒE·a(\±›Ã¸Íá>¤ÝÖL¯û¿ÕÍEô%Zž0<$ݼ%P,W‹3Ýä 0ZÒy`=¡…Î~Fù+±€ö¸‚=+"†0í“š³gàzñ3.žŒº"— ìB
-a~±3 ßKà csƒè$lþ:ÑÒcÛG¼/ ;œÍXGBäöFÔôä(ø7Ô*%žÚó‡—Å\U´çÙÞÐZk‹ÓÊK•Ãó,H$ɱ;ØåT­àubœÏQ¿x«œÖ×ô‘È­°…^4Õ²sØç
-œ,HSx7„~i+mXàʼn~ˆà¬|‘TwîzaEóû‚l WÓ4Dhòè[Ÿ/•íŸ,)'Eð|ÒבÅÒØÞ‡8TšÜ~
-Jq}(jü±UCõ!ªÙ/¬Fýv‘ ß;cgMgF!ÝbwâçArr®VB÷ãÊÞJÍ"Ëà45«Óh-0
-å‘=kýRPÆ“´pð‘þ›ÆQH×L?D†à¥°g¬œ߉ƒ/cÿ%Æ ¾jYKXˆ+÷vâ“Gî¼_Ëõä½uΆëØM£2>^ô‰ " X°ƒ¤ÍÈ_½û#ŽÛ®IUt«óÏwš7ÂûŸx¦¹RK¿£žUûbëìüXµ2~v™œj®EþE¤.õ¾Ûøfß·¦Ë/E®!àÓ®Úen+5Oƒ‹ÛH°Ö¹ Û>’aùþ±<Ü™ÇÖÂAÊFbjÌQL¡ížRcÈmpF-PD]Ñö¿äMvÑuû'®œ`C€¨ìÃ}2–ºCºzÉÀÖÔn²KØÅVÉÞŒl úòICóåƒxƒƒÌ°šy³‡ìGC^™u釼5ãUðT˜ 5ìâzjgÄo’û_<÷K†a5ÛTtÙWSÔÿá˜u6ãdâ^ÓÎÂ7¦<oûÔê± }Üxg¼Ëàå÷ΧÆÔW û¤@ܽQ2¤(HÊÊ–4ðÃ" æ4*í뺮 ±W¿BÎZ±ý‘2”ÖêzÏæ<pžTÕ´µØøþQ½ôlôñ=†>JjÇó; m\ >2J*±ØÎzÙY¨»å߯:õÜÖÈÅ}×]™Ç}—XÁ1¤ÎNzA1¶ý8ÇdU»Œ‰}†s]wÁ.ç‚ÜÙ°j@áË›Ô.£”•¨“ä ¹¸¡A½RY†z´ŸñT73m„ç7¿¥è΃š$Î/M|P¯¤{^§gÊåzûìzªøÖìɾîGnO¯YNÔWÓ9eu8éST6ö¾C,ói­5>äÙå‘3õ¯…¡a$z—ñ&Îs/ظ Œ‹H'=cíâ»3±ê9Ò J¯L'øVïÂ#1KŠÑ‚ßj™ÈØÐ0.ãÕ•–´›×¹Pš¶%·ç-I6.j<u3óÈ%bõ3F•µ—,+¬("Pþõ/^¬€qj¤Ø…—°žlœ×Ú‹»ìöóájS2Œ<ù÷Ù)ÿð8î+0ÚkÍ·IHLl&
- Ö´HÇ6ÆnßÂç©ÉšÐ›µÝ¤ÐyþVqfmCJí,"0† œ™@¿Cµ‰°Bq+wP‰Çƒ¤«]sÙY  ëàKðÄ×ú;4 J×$ ùîM0¿:»°/'ÔdÇp–Û@×CÐÑx+ÈÓ#íDÄ0õGóc=L°¦z(•ânÿz¾"‚š
- w¯¬ _“Gt¼šâ4 }v!T¿¨í§ùb¢eÿ–
-€¶RÏpáëþ£ÀPí¨|©1Ÿ[ȹ{@ϲ®èÔÀVÀ*+ÉÖõ]Ö‰^¬Tdi3"MÑGž_#ý•–+СûöÁSuóŽ0õëŒ_E-Ó."—>¡yPì J.ÀI¦ø?fÒ’…
+xÚ´ºeT\ë²5Œ»»Ó¸KãÜÝÝ‚5NãÜ5w·@pw4¸»‚w‚|dŸ{îÞçÜ÷ï7Ð=KgÕªzV÷ÐP¨j°ˆY8š¤Án,@Vv€¢’º£ƒ)˜ŸEdånoêà`egçB¢¡‘p™ºÙ8‚%MÝ@
+l!áèàðÆÚéOû$mÞúäæèòíÿ̵ØÑìóå–6` Ë?·pwbÓÛ8»ƒä$ÿÇúM„ô·Ì
+ä`€œ /sk¶?éþš–?bàñ[ü|œ
+lîha¶ppó
+vt{s8¹»ù,]þ\M^
+.àÿHÿµÿ+~#åôÖCÇÔ |ëŒË?à[®ÿ€onÿ€oe¸ÿ¾•áñøV†çßãć¿àΖꟳõ¯cƒýïaûŸ›Î_XÃÍÅѤccñvÃý‡‰’©›‹—ûÛÎßäo?ÿ~gô hþ>®þá-.îèåÃÂÅÅ `áàç
+tä$dB±k·{P¡Ü”]nÈaæôÒ#?畯ž¨æjpšÔ¯Õ¾ƒ4;j oõ¬p«‘/!dÏw)ŒR€ø¬‚cùúG%¾ñ,æ÷û­çú}½Q¤—„û¦e„èd2S¼gwßï4e‚-³f| !ëÄ«ƒe¡TµBÛðœ7ÇŒºp7/
+D«?{—ÓÑx•£5î¼W,0¯mQ¯ 6;¡Ñ·cFª-î”\|Ž´ cæízíVYH]øÜmû+ÉÓè’Z¤Ñ>s·êŒcíS. ¾&AâÝ ÿ—ÿÜ4Y!Cbl†ÇÞ\r¤õ²å¿æ&Z‡½Ç|T%†5^AE‡û<bðñ[à·¼KŠÞõŠwaF‡Òcã#šñ¦"ïO__šDÛƒ*bõ´8(NÛÌÍÎ÷¡Mº³Jù¨8ú`W%]ÔÐCŸÈ0E9 Ì@7þCö3ËA‚Ír—¨ÏÆÈa¸BÏÝâûËÂb$bÞRÂ?=V[£¤ö8Ï霷 E½ýaŠÖ#÷Ùç³;‡L5<{EáDû@´=ùœ)éöß¾G¹iÜýì§! :a8`sRºßXî)§”5½€Š0NvŽ–DX¢z.­™ó0Q÷ÂË?Ñu_Ú®væû=°¨Œ1¯žyÚ_ßÕìÚ”®½Aîþù“Þ’Ü(‘÷ œZe[€·^`”£~ZÞLÿ²?ìôqâRLÝ~jâ·Ð—ÏÈþ?
+tµ}«7~g¸2§²DÖ E1iô >­/“}@y 5BÈ_;Ì
+y&wvª7Pi´Þ—ÎÙj1Ú´bu™¹||ë’â!FWÞ·º7ñ
+Ín{;É—–3GYÝØ©¢Ÿ';Á<äß±–ß?î“ü8Pòñ\0çÚƒrßµ0¹]-op¡V ÅðIGd¼`±
+¿æ&iȃ!ÌîH=µÒD¸
+·IëÍ+¾9`%t¼sÞý
+·G+¯ º¨dáÇE;1ÇdóBnêFë…ù–Ekƒ{`8E}ª\¿GÑ”Ûç
+òPSkÜnà´¾ú,oqkðÁž¸i„nUýÃ×ï ŠÑO0JŒëÜ̽˜×‚Ä*6™Ïæí8yùPdha¤‹<Õdx<øˇøJsp÷ÜüZagLnX×"f4gK,‘½KÈ 9k5›ŒzÕŽX™éJ¼ëVÓ¤GϯvʳàV¹;KÝÏPQðŒ)-ê×¾‘Sõ•ËFÏr„ÅëbÁäsÖÒ³9¹qÜQžºæI}o‚±`\β „|ÒÎöE3ðkî‚Gi¶G< Õ¹2ë‘£e ´Žiºúx¬TW?V†È ޲݅
+máÊ«_¨{ÿ³JH)LÎ%8¼Ïó·ÜãÇzÜXþOþcWA:hñ9Íd·Ç’þ ÞìI÷¿4û·ú™ ÀZy丒ˆ×I)VÌË'´¹‘ƒ|:œ\S§[z¢)ÎlåÏçÂ@âByhl¤ Žˆ°hR¸DJ¯³T:RW+ƒþv­XÏ"y¤ìm‹
+¤L%j†ânéhVú>~J'Zä§H\*9?—vÊê"¿›¿\k—ã n)fHöG¼4.õqbÕ„F\ÒÈŠõÔô[ü ée.úaŽz»Ûߪ©heæï£äôdÌú}—í½Ž»š ãÍ1¾äЦC+±ú‰f‡Ä‚èT×,µð9ܦF™U‚¸zšc^$ê™'/ó/óžÄ Ç|ʯûäd¾è%…àûŠ·Nú”ª Hg³³Ð§þþ,jÏ…§ecñ°üÀ
+B$cÆo¶¡ÛWï=ÂFBN^ÙÈϺ2’6lŸ½)b~ňˆV·XOiY¬¥éÖâBrDCc_½Sõ ¨½~5˜áû´ì¾ÓH D,ÈÒøÝk­o¥ºMmqçrU8¶*K s£ýëŸ4‘t†ˆ%¡o8‚'CÁ…ÝéeÃ¥›ÝA$+ö;sõ6øVi„¢6J³°'X@Ÿ@Bb¢Œðˆ­[‘‚Ñmc¹þve!i…n\™™oÊ# ߇¨«í§ÂC\þˆ Ýtciã2=‹²â¤n5Ìy"¬š™8@rúî÷·g†ÝöÐÈol•œiã©R;w{ާ͕"c8Áy¾V‰\³P÷X/1å¢jK4óXƒ7õìáÑ’œD}Äin.£ÐÄ@è>½IEOÅ؇‘Ä—"©NêÜÞ`qîä^‚R¬/6r³ôí(”¬÷°a> ‹¼P¦fùâÁ+ùÕ8£~0½¨\ðê8•Eîfæ/瘤|9És§CÒí#Æl„~©ÒgªMämûâæ ‚uŠ|duß×N›ÀÝÛì² ˆ?Öd)WŽ]AÊÊ;R `)Aop†ŒºwÊ]Þ.Ôÿ¿-1Õ;IoT ` ‰E¶ô ß÷?un©‚Ž"SĤý¤ˆŒË_¢aL²$<̓ûù’̪K_”¡Í}¤2æ2#H4Mw8sû­µñÍp¥Ôy[‰Ç|/Ð4gÞÖw•iar—^<Å„'/ú/${`P€»É²Ý2W±m%ê{œy:ü^5+¨Àónã¥'”I<Òt¬¨Ã_:¿Ñ‹ Ý^f‡¬5ó,öS°xo³>jRÖ­¿zÄ+Pcem²ç{Ó–4I´]¥¨Æ=|â¨úì­Q#UÂ3]b€fsa)c,Y
+ëCôí„,Ú}íɦö†HZ¹Ÿü>òKÝ.*pHÄ@™†›o`kÊŠ‘8á¥×«MCŒ®Éä<‰RÀ"PYz'.­ݶJÛä»p¹oR‹º4N·o
+Wu<Šxó«$¥vhú€eB‡
+
+ ¦¤D27y0p/[—E6(\°-^×FF o³&UC»nkCÖ<êßçé‚ʾÇ95z ¤k{˜¤¡[^ÂaÓßë?ÑûgSSôvÞÑ;OšCx±µü„L
+ gûÕiVQ—»Ö4‘$Îh±qðºðL2®O(žŠÄ](&Ò—mý–;Ä°’«O ‰r0„„Ú‰K¿æi@ ùºä^ØölÀýñ”ظŸy½‡n¨|
+y\ÊaAáYŸ)”·§CTuEå¥ê¶sN5I«é™žMxET—þY ÄëÀ·É{™¤ó*iTî!¹.7Õ1¹îê5"Ùíðˆk^?÷Xź}±6"m¢ØÑßÐH‰}+1lK|wÐ
+ô›e=ÈZ1ÎÈgE×à`=•Bwø–© ÍüÝ;0‹”ý–å
+Ê×Ax÷†¨NÁ MA*š²åÛ΀àãÉ¥‡ð¥ÖM`Þ§óœêBR Äša\ÇÔåq¾R‹©#§½Ãæ­e—a>Ÿáá[ªôåȸþ€¼|A{9‰ìÚ'8BþgÁßüÐåíÀìÑ+;ŒA^(*&ߡVlq!ãÇR^|=!ötA•ñéÇ“ah äR]Ð)Tµ<ðÀ*|ð
+õªG@!Ÿé×û\;á 1YÆæzG‡õð¢s–AØô`Ù¯lò‰vÛÊöãH¹‚ r¼µE6['yññxQ†es©B÷±DPWK+C[ G‰›´V™’­ì ÝØŒâ]ãë'6îvÄä|A¶O:j©JÜxøCôkÃw§äN66ım]À‚'Xé%là×|æ4 &¦½”E<Ã¥ÙMˆ« “ºê뇵Õï·î¤â;ÉaŒ5ï¹[>.QiÓ[}4+c:âÈ\[¢ÓâÉ3ÒÊTf]Þ]õª§®× Åq•)Íшáÿ2Ñ?uýÝÀxa› ‰¼ ”Ê>ÿMAÜ\vuC°C3ð«ã먟1ñÚÝ&̦LÌr6™wÂ$Z5ǸÒ*%në¯È4fØî;ÜÞ§aÆ‚ñø¨‚º×šsþì‰VÿGl…;K®vx˜"ŸÃÝTˤÍbó‰á:êíÇõÇ«ùDÝNH¹ãˆýñg¨—¥ˆ.Õ¢|ôƒe í'”Ý+Šæ÷!êT*ˆßž"ÑBCï
+>-y‹yncðËc9+bŒ?”|-æîf¶èÓ¾@µìôZ5ø:¦2)dŒEÑ΂ÔýÌ4Ñ!¼°ΛÅeÒJx:KjN2d¬ç×>…Ù/£˜µ†v½ž„ÓóRhIroýQHã’±TÙã,K.ÿÇΦÊÑ€ZÆA~š7‘o*»0󉤣;AŠŽO–͘µ—
+ƒÜͯ¹c\•*§•ä.‡ÔëÜþÞÉøÚʳlTY½.NªüÄkX³)n%1»Òý maÚž0¾-¾õOÔ@ëy{ëæ| ·t…hy\‰ë¦@ ç)»(tê+ß ð,RvÆáD¯p^T„”)úãl%ŽÐÈ÷uß’ÈxÊC%ÐƾÆl¼hÛŸx`·ÖŒ\—®Êü97
+›ù ¤Ž0KžR¬‰pn³
+ڞÎßO/þÞùL7ò#ûÉã¸Êÿãù~uçIÉW\4^nÚI­Rû‘€â€çÅ¥d©›ý¬¬¹†á|>È¢H ÑÏÓÎÊÀªêA¼ ^Ó%è/RéÚü‚Û½Äï||Â~WbWê>zÔFfô½¸×Á"{¼öc²2“
+ŸÑu¿+¨ÖuHjÝÇ'¡IñÏ=‘
+®ñtë:¶Ó¹ˆ½
+º©¨†hcir2¡çH7™4¢Á†côÖ|Ï­³êI¼øÙmñ}cøÌPH—ŸíuDß\5Ç}t1U5FšT¾YZA¶Áh6àŒ^vß̹< ¢i¯ýàñ£ ÍË¥ž6ƒ±(môQ&9vêÄÂÝ ke^ÔÏ ï­áb ]£h
+Û—SÞÇ›–d§(ñFrÆÛ4Þö«bÙ‹–‰Åšd7\]#RS’¬†Wµ­´²R];Êøé Å^&+?‹+¶Óåá={Ö-“ûÝÀ¡ýÀ.ÝÈÆéP߶‡â@ý[Ù}½Ïüi+}};4dM^Asxùtž2©Pß4ÆjXMl|àé•çÙð 㧠‚È'É×Ü™IYÿ¼Ê ˆŒn¯òŽ=ȾÑÇcÇ„ÌF+µ½=qƒïyÍ(ÛhòaÉù2zxª#ûL÷;8B²˜¢uPêkŸì$jRhèRx‚D%¯«ýÊ;%
+ÙŸ+ß ›ºsEGŽñŸƒÓÃkЊVJ‚HYçÁÍ:â_)t×Ð3Ú@øÜúÿ( ¡BÁþ¨ É †P´ÙµÏ¦DŽ¶”÷ 5ÜÚ¾¾†Où~:¢£±ô€–-.¼P’²nóõÕ8bB01,ÃTË=ÔÚxH½k°ðxÀ–5øGÿ’þÇ!.X´/ÈéÐKn6ofiÒÞÓ£lHBý
+:z1Jë“ÁoÇ
+ÌÍ–H׎ÈVXKc¤êDN–¸RvEKú]¨¿Kxm“(å:/õc?®±¾ZZá×M¸á:0¸e†Ð‘6†ÄæQ†nØ)÷×ÉžuÂ1Šˆ,¤nÌN-0tó©½ê…èžÛnâ´ëÜDß9w“M‡ÎÙz) ÷Jza-Œ‚s búëæ”—­¼Š¨
+î~¥.—*&1ˆ³;üÖ€‚¦‰ßZb]ÍdWå]¥
+?Ï…¦9‚X­vdÙ(.Ùgš®2_ÖáæÙÜ“\ÞCsøù[ 箊ØðÉbL|‰ªç;:ìE½¨ë ,o
+eÍßíi±![sú¯(I$®Å|±f"M÷î}W—È+‡ÖÉSƒö[î[x?„ñqä?6R¬£$¿”¡œ7'J©Öj&돭u¼¨bÙ/Xî…Ç òó?n'2
+,V7²ˆßE©À6ä+¿ãuxÐ¥YVSÓöH+åÔ™^5ðº2Hˆ.?«y$pIË£»ÈW·ýÙ»¡ ª»¨r*ö—:|^¹2.Ú ’/•S¬¯/æwßÝëpèŸþð2Z ‘ˆZf9½BÆD‚ÿtd‘À©ŠÛ·¥ä¸&-ˆ‹1üœÎãŒrúÓ‹KûkÜ
+'l›‘Aºþ"rÄ`Neå¹"”Fý×ï¡ÁŸgM( aCRô’lT ?4ù1®’ ezϯ‹úgSP6C&S#3Aúf«äJ,Î2'ç ¥åí‹‘™I±_~…¹d>r Åbu(S½xFÀ¦œ g]n; ¤ncι]9.éÛåß>–˜‹Ô ››>÷[çlòŽ§u*©¨^¸¥ñR3úDP+u 1¯
+âúQGa¤ÄælœüÚYöøüaÈoøîÖûÃ}]%_ëâJìŽ{Oš‹:ÓFQ ZÉrè|ˆ±Å8}§á ½ÒÕ1°ó~gQöŒ½·JV©!ê)åNƒBlŠ²þ=—±¾¸½—ïøaLeO³Óë ¦Tû2D¤@ö #Gt3áñqˆ G7‡áÝe¶ë±
+º™ Ž¯.݈“C
+"(Ä6¯CUqšy3\."âC«ØÏl•ÓG—b–ÊÌ€GÓÄŒÐï†ðÛSâQ T<øÖÁílÁô&‚DÁµYÒgF›YBl–ÛwžJ9
+«™‡î0§ ¶¼¯§œNéÃMïÜ+ÛKÐÝgâ£xÕü^°ùw'PͦWªt'…3ƒÒ*m‰ÒÌÝ‹nd lýÏRáy––[ö‘¬©náõ^&7±?ü$ÁVæˆßÏJž}}ú~ËUíMJѬ]±#30³Œa—áã‘šÇ$0œV
+ª¢™;
+Ÿ bž°
+6¿È7è®Dž’ñ—Úº¥úY}@ìøà§ÅÇ\"ØN§ãSÃâ±]Š¬‘©•L‚ö}Cõ<SéÄqÞ
+<hèÔÙ¾R‡´':§H¿&c>¥d²ò+ˆ` ⪾´ézÛ gÖi])v³
+MÀÞWÂã·Æ¹T™epãÅøIzðf._(õ¥…ĺ?¥å0e–ƒì™ôµÌŒã­?ç«B
+ý7„^ßJâH3Ïä=ŠmI¿[×+ºhr1m³Ö‡æ’Ý4Yïb jëÉ •ÄÑy‰-‹;J&Ã:!vk"ìˆ*|-òÇÌ›s¸G4ŠÊPæ—µ
+Á[ÐR“
+*ï VãSéÊý§-­úq:Ì_¼~b
+A,eçêöØÖÕ¯•\‰HSäàpš2)Šå:ÑbYd" L_¨j"zÉr…•ßFéÌÀðòè}à`‡§ÁÃfÇ=L,E¦Ò¹º.ÓJ$îT
+k–d Ua[œjóʉg çªD@^0,¹Gà?úí˺$ Ж=
++¦Lü@ä݇¡9Çщ§xy.G_{¨Éàì;ÛD&ß /É™±—_PÑÌ»L—&º.唜y=M_r_1š]Š©£8ˆÎöJºˆhBK gá;ÄZ?›¾¸¶¯3í'%€Û’¨¬ë›MÞ×LÅÛ…yªëð¤)…íoÃ:ÞʪgvÍûÁ+ŒŸá³ÐQ û&&”/‚a[fÁaø±žÑ%8
+™ðBЫFÎI3j~›€RÊÜ<Á§.L¢• v˜6ƒæ‚".)§?]®Ãµ¨_̃/~A>Ùð_eôÑJ‰r£d‹ÁÞ[픋`|[„ £Jøf8W†ßT·£æÅ?ÁÞœò…Ÿå—´<ôÛÃï2EÛHRn jqvƒ]šZjÈ¡¼óëXŽ>Æ8¢ä/dý?¶EkÆ‹7š¦?fÄÍ%ÇÏ8ŸGÏ…Ê6›³÷JZ®I´pÊÑkh˜YdO³=c‡+öPüö’€1«6ã¢ÙÉ…iÔxX$×çGŸWùÆ#‹5¯ bÙì¸ÊÒRY»'Ö)6®‘F]usRå
+‡>³ÒöÖipšÒw .ñN8Š% ²¹
+Šó{
+z—P“U®ÄcÓòÜvëkÓxYøã;iLÜ…kb÷ÒÁÈæ·7äp¾ÂÛÆ <ãõ½Éߛђo‰#‰Â» (A
+À"ì´µÛúή ¯‰18™ÓpÞp«nÔ‡iÐ,`½ùÎ ™Íwï⃫“T¥<à›«+)&ÐG(†~e ¥!ÿÑ×VæxP) !Î7íÝ Al”¼ØÊÀ›ù 9¸M9yÚ·1éQÞÖÐÉnQñ… F{º*()øË1€há†á¦Ì,(YQ'£ÜËÌ”÷~9l½òýÍBz¿N2ùšÁ
+ÆÜ8㧭õù¯»äĆy‘¸§ø—ú$1~ÅlÓnÅ̪õ!FÕÔ÷ÍBõ±0D÷
+à=ò\óªbz%Gã—¾¾doÓàRj¬dR–í¨úÜÜôD¡3¶"¦› ”¬@!F¿”ó-ÞË|®]…mѾ]àr­ |íãjÊÈ/Ã;°é!N']²ÚIß9¤@r´¶‘ôqxÎ7XôÙ^j§jñj8Go‰¿_>¶9šî/Œô½x´¾[¯Ÿ¸ÝÒ8ü¤ ùÄþhý‹·Ñ«ZÙ˜Éox¤(×#öó$bU¹_„9LNA%ïmvq§mÄØ›¤±ýÎØÒe//Zi!eÇöÿñ¨~ý+V*M-N¯Ë~ˇe袨ç¡öÌŽÍ.åµÓ3¯JížHX„|ÔIÜ5¥6\(áÉ›2dè‘#7²{þüR
+¸2ܯåpÊý¤ >%Ÿ1\M›5¡SÃÆtÆ{HÀ0ßÐsèœÄ^‹ã*fÝO®ç¢}ײmã.^+âš~ƤàõäÝvW 4§F­;­®ÿâv‚½…çýµn±ã¡¨×wö4§ïÒžQˆ"Bn< _UPœŒ”4Ó`ðÕqzwFrî«ŽÐs—i~àx› Ý—=øŽ’$SµR;“ýÒ*­ ò–ÛS£Õ剙`|“–Vžåü¦œ! £à4"Ç“Ž*Ïùɘ{ kË~p®òãÁö©…ÊÊà![¨,$¡[¤{eÁ¬Iïf Œ}ç2`€+ŒJôô!P`øÀÒKMÀ„E½%é?I1ðÌÖI9=€ŽüñŽàh1ÜÉqPS<ÖpÜòW:^F½§˜.›R·ú²hú=Áš´ý@¿Ý/ä'·èå.^<=d”v~úË|^~TÁc‡ÈqÙϽ*ª½É³ƒè”_©ˆ¤í.Ø¢c*§peè‚œdñG¿ [H<)~y¿?ã^®¼×,W›ãåtN6ZÎ1×Åh¡‘ ·ºIêù{,~@<…ïÓ­;5€ íëú
+ž@;Ó‘à½À³-xS~h¸=b$ðX>ÀuúèˆÏéG樦yª3÷W¦àó—÷¤èLù ‘ö*^b–þM8\}pc¦yLçˆTXFá3Ohf
+u"ɯ}ßãs0Î]Û‘sØ Û c*ÀÉŽ{j0³¯‚.o'’Ÿ çŠ÷M(¿Ø.ó£§óoS¶ík’Ò“XÄèévü4yoSý
+9!<׺BW÷øü?#>Àñàs‡E—–hfcóçCvcÑ4Û#a¶|ñÑå &›û<ü|”:ÄÔä ¦«œ6‘*Lj_/â ïP[CUÑWø=Kª‚+Ý-÷Æá>˜–Ì¢®Î÷'Úk>i:Ɇ4 Ohû”µšø%ÑI°k1#™ÈKºˆ^7P¼ÒÃhHBbbk{âË¡(Æ«D¥—ŸY¸Æsã¶C„Ô&
+îÕtßg¶¶ŸM*)y2eâ€:§9ÉsO‹n‚MÁØ©DxÔ5Èlž;ªvÖü“])+»Úù±cÀ_s·$¢«ä3æ«”0šZ¦l¿ /+Jò[T*¼LÖÂýqõÝRÖ;˜}DÖôžóŽ •¦¶án\L´®Ñ˜ÙÃ\œzóÓ³Žžb6IQÌ?†ôÎ0U´+)ê¯=n¾@Þ„£ƒ}Ž'.y£žîͳu!‰í9[ri 1¸ÁÀºŒÓͺ
+ÌlGSúê‚(‰ñ“p:÷_ÙŸVR)8IÊÑ`¼œ_ª ÚÇMÇ~~F8UVU›ôˆÜÇ=ƒ†Àeöv`2L+ºnÜ:/˜ðÒ<–÷Á§¨O/™>QÊXãþÿ€àáˆØ®/²8ÿâmuSÂ@ž–€¤…ÈPð<~¦‹µc{¼}ž­x¿¼ÿSèz}!'Mlwß*ÖÌÒÞGb ‹S?Ep§g^&ôŽgÁKÓ&%Ì¿üOÄ®‰—»fÿCøjä1á²E/O_önéåÎÇH±¯7è\”½+É©M±·®JyüzÓÀ;çPlå&|Ójd‰ö“b¥¬:ê²è«
+-žD\v ê£õ%¤p]f>ùÛ(d%a—ëÉ%A1‰÷Âßë‡UƒÍO4´4§:©•9u^ϯ('|i¼CûVkiÓ#¹á.Ù©Ñ!íöøP”~‘mÅt¯1Õ'2ücAî'ªÜtÿÉܨÜÖ
+ņKz™rô­GœµÄ÷ÓqX1ß"ʳíÎ43¼R¸<͡ܬâ|†Æٽ㠊¹˜ÚIÑеüó)‡ã#6ysÙé* ÷‹Ý-œl–5ânÇßÐãS6©ã/wãeI“¶;î×Ô4”/Üí4ùþ^E*ûe<®˜XmLÏ/1x2æ(â>wßø(ÃdX/äËa9¸ÃHÿgt¹O$¯ÑËúÓ³Ÿ¨ùGñë~ᘋ0«áQ“ ‚¼K\y2ôw°M¢,ÄPžkõ'Ü sGÎ2 £ÉŸ™ºÃóõøí÷ Ìâ$ýuj„€^7N¥#-¹Xƒ!á¥Õ
+j2ªŽÀ`ÝñŽåˆ5ò¦ä ù¶»`ç)+ú3{ô8ŒÇ„RO¥Š‡V„瘨¸ŸŒš }uüÝlX³^q¢eVãý0;…K¥`Y} -9eñ­)¬œÂe•ò`(¼Œk—h*Ϧ}GŒ°)M‰Ù舱Mf2|æ×?ï€
+ÅŸÃõ·¯¡NQ’™Ælì[Ø_ËjjSd;~BAÍõŽK¾¿¯¾cxÙêóÄê«ex5ØV²ž’›Ó 2ˆËŸ¬ÐÿIÝ]%Gù«•ï$$õ\­
+Çûè~ò‘¤e<›Ù{µŸ8{~J¨Ô<+{VN]¿¹.bÄ»kbZJk ÅH·Â:¢üÊ¡LÔõ§ý~2’Ç>›ù~¸ÈKpÂ<÷4râ}>!à@Þ!¯Å†~5ÍmŸwßø qÖ”z*ÍÒqj›Œž)ˆƒ¨Á¨†WaÒÈ=À2¿ò%̦k@š€P£õ˜ßÕ$«<Þ\û—ƒÅZGV¯Ñn¹í3™³Îqì:¨C¿v4ÓÿE„qœÂŸU cÖ,À•åÆy ó®ÚÄ/d±ÖGå@e¡JºÏm¿l.²»XŒ§ïÑ1ý…™%›œEÒvíâJ§Îئõe ›(¬h]tS"ÛAÿ5þÙð½m»Õ§é»8ÓÁ¡H1ô\¼o9Zü4›E#FE0,ðÌPBÕþÁ(¥”¢È-„ìGMò¨OxÞÛ¬ýg!æ$A;×üC~I„Ç¥íT½l=:Sp)|©ÉXµ"¥¤Üñò1Ã垸âë üÞÏõLÜ\íj-{ôÒ(ÉŒ_oᦚ„ë`³D•·<Je¶%œÒLó„×÷”j£“¹,:Þ×ÍÕ¢¿Û×^Ù6{ôa}Tc¶ÛVòW&UÜäÆARì@* ˆÈphy»‚-óµ”kiÊ~üç„ï4’’¹ÉX‚‡W<LŠCTA3v%iaT„n ÛOš¯À–VHêà Mæj!¶¢Ž
+Ôò&1}\á¦i š5¶¢x»&CöÕ WX­$«rÕú4ü­×Gkô¦wüJ¿
+©‘ÌÊ(øl×´6n¢gDc{ÿ¢0Q qÙ¦í;‚áÕõ…8캩Y-J%ƒÁy÷PØ­„à¦ÆÍòÿ—GÜX±vá‡PC í
+Ugú
+éû~v~9lOÅ—¿K»+®£äª—n¿Ôh‡Äœè,µ5,áÉ
+ÉÁŒ„ä…)¦(³ú’ãP¢jf&%–!ªâÐà•ùÍ
+7÷¶;ŒÓ²¨å>Zkÿ(ùQóVˆ’×–Õ_<¢²i|Ùä»uš¿‘b˜p/©Êw¦¯
+ŽT¾•ß¢ZŠÍô–à}ÿÝÖöúV?:ö
+íG]¢Ë€ëë«éÆ<ÚwÍí÷»·öAÁ¿$‰UBB½Æ=/8ÇÙýB
+aÞÁ×?
+‡–EÄiLö©Ãò€£ËÎJh‰$ÊâÜÜ“hñ!ZBvÔf©e“£‚i\_áÆ×­¬.O’ð{yCbü¡B›ÿLôÖ|φU¤jäâKà%ÜÑ*ù3ýkù1úì],†£ò‹±¾ õ}:&¾]^-OzÅÌéÄkmÏZ#/÷µÐ¦?xÕ•ˆË:Ý žSÖ#(lAˆ^(ÿ‹Øs-¢¿F.îÙ»ø~—,ð^u%R©Zׂu »>ßm›òK\  šõå#Ì uçËf±ÿªÒ ÀK'õè=Q]b¹’
+ÛDÎáæ#±œwñAƒMÑ°ŒAy+Ü›H5¡€WèºeHÔŽJÜö²˜žN ˆ5¤>x06‹;ÊÐúAø䄉€µz”X¥ŠÝίÃ4›àw„†ƒÐרÚ>ûaŽžû+H¦,¼»åŸ? À
+W›¸‘ï|ŒQPåÀ¸my4v;ãVøJh’æ©iYÇaßdVÞ!VÒvV:³ ÕXp,Ÿ?{pØ+ƒ¡ÌlÒþô°WöË© ú÷o**MSôèm°‡fÛÇn.“í73HáÉ<zDÀ¥]}¿)£Þ¾ ²ØÝr`…ƒ8obÚ5‡Y»<«ržI œõ­[zÉW³¥.õjÕpÆä–h×Ô_µµE´5Ã`ÚÚáK]b¿‘~[í#Éñä’›-á|©¨5œÔ µÐ}ù%(ŠáM.µ®È_̱µ=‹¡¹khßÝö¯ ˆ;k&ŠˆËÖ’[É;.Èäñ=^5( \5ÕЈ’K ƶeŽ­ÙÇU•sø
+@f4·aš­KÙ°´4Á×T)nöôõÚÌóõ`z‘@@~ Y¬¤;Öàèw;mMŠc̃n¨pÒ„¹4WرŠ¯êoHÈ@ú¬Ÿ¼[¹æ/ÐÑîiuvÝrÖ8XÂ9Ôƒäc“w–SÎVö_<øl_,¹¨1­>öÎß¿qw“i'ºRƒ¤ÀÝ(¸²gov
+ΖP[uŽf—¿O¬ó!¯òÊ1q. '<]Ó¸2Úý¥(·”a©<mšG]k… ”Øø\ÝÂéWªNãä7Þ^ÁÅ É. »0°ô›õ3ô„¥;óT‡LZq… ã·UÕϻƅÝÎZ>Ã/Ì&Ò±Äñ‘SÃ$ŠK#’ÇÏeoW›±úvÂÅ·$T_0 ”š_äÏN’ø[Ê o9¡ˆÇá7ᇰ'’Hq
+Ú,¤¡t»×aW‚$øãŽ\†rnM^-ÈMB£+†]ð¨Âwóaû YøSü&qÉ´"²YžÖÒu::x .+Î++dFKYd9ÙÎêïóÊN+~²ÏÏ‹† ˆÖ=A@ýü‘Ø£ÛÄT—7qjHm*†ãP"ŠãÇ°5“ÂЧýbÚ±¤!¸%h•‘†oð¯EÓ;ÅšL.Ù§Âfæ¥5:‡„àòƶUÎ-'9J–¡pE¹)“¦ª¶½ðÅ9¿(EÁ
+ èZx¦¿#WŠ´O
+VŽß­€:9W¨OOæpªyyÝ—.õ?TLJÂVr/dÍÁöÂSO()•ð×
+ØRÄX›!ÄÑw×þb˜æÌ,RƒÌÔÁ-Ûž¸?8#$«hõëÂóQ ´ËÈÄL–yáÞ J½Ö»1Ëu6¼VÉ5H¹fLþ{íÒ[¸:’©V¦ï›Uï”é*Iú¬üØ‚BÒ›`¼4ƒ¸IÁ[…nêi¢g%<¦%†E\‘ÄUI»°¢õ&#YÃ̉Ÿ«)vAÛÒçeϼ©©™4H‰³†õØ”¹$C”#ÂÝÖV§3æ›Ê•…Ûr'p‡ßÔª3…`l¢g²8Ðò“Én߶ÂШ- )+ñÖÛ—)º¹~·±*gEëkATΔ <c­þ"÷éïÿà5õ®p{¦­ßêÇ«Š†þ:«;o9)ý(ÃÌ{ãmrÔ*÷4;3§óêÆrõŒÍò |’Q96]< ;ë³znÂ0=å]úc· P¹:&tü×*kn×KË›Ãà‹Ý{c`3Á.Î* 6©®Z`cý„ŽÜiZ&g zT^'›•Db½\üÉç‘?5*î¨aó9lw/‰šeʽ[æÇ.ßÑpàô1¢§ 8§~jG˜œêhð³Ew¯0Ì…¯n^ /0P»`Òð
+ä¯`‰–{)gÚä晀¹½x©Ý<^q&‘64‘È]…
+­1O~ªÑŠlNYZ¾ø‘MHä½ù¿väú¸¿¬¿8².ýx. éK'j0*MÂí¢Ðt1 Ö•Ö2´ìøð‘zÏ8úß¹SB‹$_ûCÍ1Ýh¢{Ÿ›¬’‚ªM(.JËÌ6Kø'YWÕÏfA“@
+ð(-F”>%*9GÞücOŽJÕ8Cô…Ÿ½P.Fb˜¶ ää‘ö-‘y Ý/á ò¹ÊT¯²bÃLˆ³nOøó
+hy ËpÀ*à†³¨‹g„I‚\QŒÙlÚ´Ô9÷ÛÆú»NA#jëg9žÀæõÉVsoÍÃZæ¸UåRÈ!²ÿ[º¯MÈø¦Ol
endstream
endobj
-648 0 obj
+895 0 obj
<<
/Type /FontDescriptor
-/FontName /ICLJJO+LMRoman9-Regular
+/FontName /MAPAAO+LMRoman9-Regular
/Flags 4
/FontBBox [-443 -292 1454 1128]
/Ascent 689
@@ -5371,85 +6732,100 @@ endobj
/ItalicAngle 0
/StemV 90
/XHeight 431
-/CharSet (/A/D/Delta/F/I/O/S/T/a/asterisk/at/b/c/comma/d/e/f/ff/fi/g/h/hyphen/i/j/k/l/m/n/o/p/parenleft/parenright/period/r/s/slash/t/u/v/w/x/y)
-/FontFile 647 0 R
+/CharSet (/L/R/a/asterisk/at/b/c/comma/d/e/f/g/hyphen/i/j/k/l/m/n/o/p/parenleft/parenright/period/r/s/t/u/v/w/y)
+/FontFile 894 0 R
>>
endobj
-649 0 obj
+896 0 obj
<<
-/Length1 2101
-/Length2 17200
+/Length1 2190
+/Length2 18652
/Length3 0
-/Length 18498
+/Length 19972
/Filter /FlateDecode
>>
stream
-xÚ´¶sxë¶>œ4¶&³±mÛ¶=c5¶Æ¶;mÛf»q~éZçì½ö>ß¿ß5¯‰{ð~Æ3Æx'éeZA;# ˜­-#@FVÉÎÆЖ‘VÒÉÐÚÂÀDÇÀÀKJ*ì
-
-öé_«‚áßõ?š¿°²“ƒPÝÂäã!ûYC' 7m†9gü¼þ÷—î$ ý÷Šú‡·›'- +€–‰ó£!™9Øþ‹Õû?|ÿÞùí˜ ø_ügá€@7 1ìÊ¢1weJSH©hÁt)'Ýi&Ÿ†TøJút;¶Hî.¿Ð¿Ù/ƒ¬ÐNF‚K×'É߶Xƒ4Ãúm³%±rêÖDQ`ÏÐGÖQTp,GN5 CvÙ¯¬“ˆò—TN¾f ËlFk\+@uìX˜³½ë1šiòå:™H§¬u=µhžñºƒ5ªÛ22nÞòt¨Óû#zL”a¯à
-ÕœA~昤}OÚ>hTÿK$Å~ÃO*t¸:†­D0̾ïÑ­o×’O†ÚÒj©ód¶¨¿k.!ÑùUoMýsìv°¹\˜ÕÆ–Ô ,;Ô¨m'<DÞ“m©– rá´q,œ—; ÆEê£¦ê ¬d(?)9¸qÍÕO¥%ÉžóÄY ž‘Ö Æ°_#§bp«Ëº™ŽÕ¶Ö4¯ñ¹Ö<Cé<ºÝ“eϺ§[!é8a†–Žƒ V
-›t«¤H¦Ä³õ
-g†á» +ª+RnÇÄðœD„x y… éýAÅ2‘—Økæçâ“KËùÑhK 4kvýq-=‚à!ÑõêžéÕý²QáR¹…˜S÷SX’Çæ*K«`$£BÁ’Ÿžq·+›-tA˜MïîÞGÓÈ™ã£Í#Ô4b}ø'w¯`=xGC½›ÅsŒh37[Œ]Ò¥3¢"Q:_\dx<ð@çR%ZŸçRè‘3¡<¬¾1×9UæLv^úSåIÎÍù~êõ˜ íó
-¥\¦ˆ«Šð%µ${Óóé¼ýöÁ;zg~õmnFBx÷R†ÏUÜâֽ澵–möæ:BÆ×’)õ¶åØ&àáºel êE
-™ „ ®!‹¿Vµý’²P‡˜#¿ ²KÛIÅöW6Iõ‘$ÒEß3Nòöh\FìF[;TxJ> G§òSdO3Ày¶´=¶g˜Æõ³ñð+Ë÷‹Y]Ž€€š€µÓ$ÕÏ×ÏXZŒ]d™Ã͉‚ly‚V®êúÌ'Ÿ»jF—¨²¿{’·bÈÏÖá{5$ñ%?‡|]ÏÁ³£:—`eÜÛÊöÙ–eЗSD’昞ÀƒEzG’ßþîóWZE I­½¡@ŠÍz $=æ/Tϯíåž2¸Ôsy­éÃc-Ù, ‹•ÓuceŸmôºØåjR»›9Ö-e
-‰`•¾ë®ÿ;Y¦Üé6k›Ý“‚ؽxJ"}<y<|Ù</žÄ)q˜÷µÿY_>IÎ>d´R6
-ì¾ù̸†‡# ðÄË1Â[Xôˆµ>Ç”3 •ƒ6
-ƒúK©ñ>/I̱ŒÓ|˜š%YÓé"m%Œ*ò'VXÞë (cw%/Áiþˆ
-„`‡dwOÓ!‰œÎpBg¹ªó4²ÿ—Þ%·]+<ˆB¾<¿Q®F:a]ÎKì´²cj4œê¯€Se•t¿'¸HôJ¨Ò¬(ÇVÁù?Sáp.|ÉĘV·.ò¨7 ¶¼ç§¤ã â!<<UìqƦݷŒ€Oë’ˆ $œ’rÿ ŒLŠ» –¸&ñ<“»›¶¹R¶iÔKíW$ÖÔÐo æû!kºêèL~c%Ô,L Ñìqw‚^œ¨ËZ`EÜé]r¸fÔ^ÜóꜮ)µw;[Žð7¶>%~
-&p¹åÃò;)‡ôPúUk¶¸£“‹ã÷á5X>6ƒÍ9³àÄzêãæ’ÀÇJ¶³ðmsŒ¾ð“amgˆ|-𘈠,¶ÝÍþî
-Ï#êÐ@9Q?Qâ“oîYßjÕ^N¹ZÞˆégõ‰Fªìû$hx.Í;Ú;bŸ]€~ØŒ¡“ë˜^#üäÚRVü=©Œ‘2Í’M†˜D¤Dy™h”ÎQJ¹¹ÒxŽÕyé;Ç€þÄËcW¨*T®ÍWw:<A<+ŧ"“U¤Ûo‡Ô<9?¼5:Õ{J>Óç ©ö»S›4)ÃÑ8µKí Z¯“):-OãxL'N¼ndŽéãÛq;o¬Ôlý’Qxco‘â6§›wB™ëù}„Òó¡¦ólô.à†~rŸÕIÉáýç/ªU{¼Ÿ8á`CR¢dÇ’ imØ0¢9&ùW<Çe»E5ãUDhЈ)–©Œ¢¥B~
-¼ì˜–O›5AO‚öSFi{¥Jþ?Õ#Yåز=X:ªÔ¿ÛÎ&–Ûrº«ì‰oFÎ÷ ] Þ¶ž¯F/$>¾ÎÝzö…ûÈ6Y—–;A¯ÇíìC”TlÈA6€†LÓ€½ÄeßÛÞ²ø¦d
-)íµ\ÏÀ”wÿ'QÞ®MNdZ ±„M³Q‰ƒˆˆ X†Bll¥&n4\B7÷;K­i¢Þ1gÿUbªæ–U!¦m\)˜–¶Ø0fEÐ+ò!ÎüŸñ¾'©'¸ðöxq•*©¢©×•bo{‹Ð!åÑhÇ»‹8³ÇN‹†|¡›{TIàóÞrpxBœuöTe°1ä§!8t EÄé"6;ž¥Ÿ.¡Ëµã+¬®¥iúÕ„q9ò·6¿2 jmsµ•hó(9,´-1N›r'`—™íáÞº\/Œ¶Óâmâ.žUPq~G{‘ˆkÈvufW¹ÓËÁlí¼Ý¨qiÝ]å¶ÞŸXmòð$$í
-¹f0cþ1úñ§Š Šd;>*¸7GW÷ÎÜÙ’õ‘6:?% /TÇú›SÍ°5—ñÌE»’Œ•‚I„›‡¥,ô+Xä«BqàÏœ>Hl6¾P%–´è²ý¨µˆ'³°§ítEËQýš/^ÁØ]c¹;ÏA NTžN‘•2›®qž7ë|&c~ßG½@RÉô6¢§Ê|IO¶¬"î{ ˆ›Îµ©VS3–-¸>1.h³ç³CÚÆÖÍÀ¾)e«ý>ÛË%V‡›ñ°ÉüF­UpÕÑmš<× 0~LÖ¥¦ñðCodüÚTÊhÐÐ
-ƶô Òu˜6à2µÍWŽüÔýâQ„Äæ! kSÆy1)ÀRL'µ§iûg¨B'Ú¡‹Å‰”1µÿ KºdÎîZI° hœ¶Üµ:£9Fpð˜>Œ6’ͱ±64Ñ(Ð +Ôù÷p÷)î>qf˜†£—êÏ^¬B#T‘¤±ÑÐTîoIºåy£¤/豿îFÕY*Wl)ͳ8÷*%áõQCh…k¬Ϫ±C‡ò
-¢Ê<Þ·-É5WEß æM‹lh•f ¤?Aì’дÖN禮
-»$y“­ñä&·)cQX‚Å{”ŽPÙê õUcÂjìá0X–
-ç„æ¦Z
-6êì[ýšW5Ái,®WƬ±ÜÊýõïñ¹Xe45qýî'$h,ÅÉà93Êø4Âp”ÖW yíßÁo
-?ä”>?‡Ïé®PÚ“ãÒ
-B©UÛªC5Âdqü|‘
-\È‘>CùJææ‘[ðJ¼É’h©ÿ©ylvÎE1JÐÃ@²°2jÑ\’xÒ°´2çQìbnýBÉ®rÂheþC;‡Ú&eÎpµ"<õé(Î;1*[JTÚ;¥l¤ H¶?ÂäÛkÊjÝ›‡:<[H"‡Œ·ã’‰GI†Àî5Ê6¤æŒ˜åÖ9X÷ˆ%YS˜#%?ŠŽùl
-T‡¥°xm‹ò=^C÷nDVÇÌXâª-?†y`=ñîæ²K¹¬[ÙÑ7–“Kµ+ànÍUc!ô1Ów„‚¾5x¤n£œÐh˜¬2µ-™=#Š®!J_ËÌvÛNõ ±KOS tŠ&fSØ ï.Á—/±MEÁÖåø2Q¸Ì¹y¢r“š-‰¾GÂÙŸ‰Ê<ì¨7ó,Ú>[ ‹óe‹nÁt2lùHÔ›NÔm§È,ütôÆ4Â>†/Þ>"G«½
-ìþòTÙ£“KuÌø(§4Õ©?C „0X5¤eyù(EZù‘T6 ʶ¤¹6ÌêΤc9ì&6À‘Rˆ~2Ùͺ—bÃJ‹ ¦É“Ñ-Òé¥Ï^áÊG¹6ÝÔ #¾)õéàx½(¢p}ÒñÐ-ÔoãÁ›˜T*ÁÿÚ8}wu¾ÚË•*>"çÖ£H‹n_âé7² ¶|#×Øyôúî#œÑQPºÔ âDZï:[qµÎFjx³WÏL9Õ©¤ñæî%¬ói1¼*œ†ãšQ1%ª¯!x/YðD·¢Š÷u| £rxeÒ¿PðÄ ýcM±Àù?¥Ð~úEØ›Á)}[gŠNS§nËñÜÁÁ*‹Â-¤XékYÛ#š½Ó¥ªZËSt­¶ˆm­bØZ#=M={øeGzy|ðœN~—rT‰×¤™µÉ<†BÉï¯
-t.L»MÔ,ÝA6Õ()›gÍC%#§°J:„ã!BÆÃ}þÚ‹7¡§=EÖÎçÙ
-Ïgê9¡$Ü”Ìt«Ϥàgf
-PW´ÁçŠÒÀ=Ù•ñÜÚ«ù˜TÛ}°½³š RÁÁ¨®
-O”'ù }£™Ma\Ƕsø³º†ömíÊÁ·¼S¶É¶ Ó(æ÷s9«âÎeæ CßÅ—Ûï]Q@Ó`³¤™eœ`Ìf+æß‚Œñ¶:5ú[ÁJèÝ©=ÞPo­˜žêOÔêΟ?£Í…{¹->ìfÅÙÓìÎ3îpž¸(f’?)Фƒ+0oM°ÿ=Ï”–Y8²¤‰u¡v>;2yúý5§ß@ýi¹˜¶^ònÕ#¾`s†y~zV{B |ÝÌYJk’2’.2Âo” ­×ž(¸¦ ^ Ñ^‹:‰ŽÄ¿Ú·<Ù~ÝÝÜ7tƒ¥ÀOøµîŽ`îsÍ¡]ÉW§.÷lèíDtšŒ:"Çe¶†Ñ7ïXói±……¾NoÛ0§ÙÖüVBAÄVºŽ9+ÈSӭć6ù:™$Oµ(ܦÎ%FeW‡V*¤æìAÍÿ6ᅢgóU;ZÇ»†v$w{vp ¢ºÀɪ1Ï-õ€tĬ‹¥šLܺ҂ŒžAI?E ÏqýȧÞN·dp/P›ÄE4n"îü­‡öel£ÂF~Ôì‡w/"8& R»IJV5'h’„Ïc —ëô"© ):6PôôTÞùŽÁ€¥ð.ã猙jFàšXŠù!h_Dboaj>ýR‹HwÍŠ['8 ð\Ï}°¡a™:.oÖ;±;OP¿H·çt)™uÄxŽu÷›mr³Ââ»!ºüN*¦ “¶7ðoüžÞU#Õª¬‚NŒweêÆ$EÆ~é®Q,zŸôÇ/ÚÕî85öìtt cͤÙ=^7pýuU¢‡64otþû-ÍW¯îâóe5$>†cEÙïó¿˜7]XAâï»È§&ê)ç±t¨×„ÅïÛÎ…ÜÖ’ï'W@K:cªxÏ÷ùDìxM=‘X3¿¼sÅ&3›3ö “%]ÑïÃhܪ=®1=^ð˜s$ƒmAÿ^)åÓñìMÅE¾F¡•'ãó>ОñÙñe@z '§ ÐZ
-B8Ìñ3ˆ_›V×®Ï×çÔî½0í[hvB”R¤k/µ:™ú5§ša’ì•”'æ˜ÔKpC_œà·‘SÓ‰ßþ-=¬T“7~o©!”iêÖc–[Bó2²Ö¾rÄ–ÛÓÓªUà¡ü`î+õ#QÖ£]춇Ó àèŠ6³–i
-™Ø/s0ùl8žóÕÓ~RÚŸF¢^™ç#”ßêú`}¡§ÑN¯¸sA¨ü“oAn&‹-¥C;üÕ~²Ô1¼"n1
-ÏÊÑF=¾ S~¿S<—‚+"Âñ´s• ‡Uîæhã®òœ1ª­‚Î,Ááé°~;"ªTÔ.ô*Óå¸é¯Ûœ,„$Ù`3é2HÑHÅM{~[Y¹ôB™mƒÞ®P1O5{?Ï5‘ FlRcºÖðz~…YÚ £Td×~øuJ>Ø÷Ö79h©PÊ’S_Û[œ”
-Ö4¼‹¾<ý¾±ÚCtl£øyÙqK‹G88_U ªÅu\Su*þnêL­ö†7,ÃàžPiã™}L"åIj2Ùè›îÊ=,Âd3î»ù/ÕÒþÑöI žW>ÑN½ù«µ [­Qù-&ןA±©Ž[A…°üôÄEA[¯xmæ•ž‡óžŠ¨-5å¨ì./upýGÐ~ºznG’`7¤³kEá;ÙU;½6AÌö†}«;OëÌ|GœÃ rSéæ Z-˜™^xé#h¾@õó³Yq¦ÂÏ$£XÝcø!í•Ítßg…-ÜlëÚ·ñ>9Z6|ß ¢¡ntŸèš¼&”µq.À?>&®žg÷„¬=Š+6Fß᥹Ã?öñeb88# “äƒs*˜õ} \ŸKTHŠØóÙ õs>|ÒÆ¥RS‰Î\ãçêÁâþ¾Iƒ?Æ{Û|@üڀČKYòF¤#ƒ"ŠHœ?eæ*¸FódWœR¡IG¿´¶Ðs±é;ÓãÄIÚ¶úðyÔ@±Çfµ÷[qcñ•ÛR¥ì\1ñ½§Á6#w› V+Ù{MÎ\”ésS~j ´t;|íÁf’ÜÁYpW|v,+dÝÞ%v/ýD®PXäËÐøxû· ¨^lwy„B(ü«»Ûr^Ÿj/°ÛÞlTGæ]ÿó³q~=ÙŸpSæa×eX „iž†øb.o‰q̬Ýã3dž¥Q€‡:ÎPù7À£$;·BHû Mp‰ê;Žç½·.5A,Ãðñ}_Ê.·×4í=-úƒ‰’|yS‘<î ¨®½˜9  ÿqTÜ–aI7T›þvò”àPE f¸ÂüÑŒ¾›ŠÙT'¿ÙÙEíãNø¬UôPÐîR «Èhó2®RHn8tƦS†ëˆµînD“‚§0µÎÙ< ú—ÄÐá*ÓUß­“¬Baè*#XÀ514ýùÃ|(«Ä¥x
-Qbd7€
-Í€Gëbê‡a„
-G%ëmd]7Ó³aw<ê%ã—R¦®Â'ÏióÐh÷Ñ[rQyUi+ÀFnØæÏLû^g£i¬ÅûsMÅ{M#­øc®O‡SåóÝù§-Ü´LQç»oõ¥:BRÖK¡[×ó;{6À<=K›‡€·ü.‹!:QßWŸZ{çXˆÙJ;§&ɪìõQúûÀ)]Ùax
-Î(bÙv½ Ní6ÔH¸½}¹<®LÓ¾¤q(ø6Sn¦™§â!È\\àEëX$úu×
-ºâoޠȹyÍ{0~ìN¼×ˆšÂJT4į¼çÒã|!^¾Ûûø#·¶ˆn*câhdîÏåW[Œ3v1ùIÃlù[¦çVZÄ׬Þi$ßµÛ´OXÑ|ˆø­;µÀu‘/ O®K’tïVV‡0¬mßk<éGwn„Ÿí°RÃεêbüŒ(fð¡Ø_ÙÊÃ×wL*2Ö5S6©3X”Z?Hüá]µ+‡{'žú¢ãÆs¶K|v7宅8®UÊŒ¶ke6‡Ø4ÀÅx,þ9óÿ»ÜÕ5ñ¿ËtŠï@Va1Ⱥe/17ü³ùMg¨˜k2L©¨¸|ë¤Q••ï”¥ZùO$
-÷V?–0ïsŠ§r½ -ÅN-ð—·¤slC¥4S*Ó ¹”Åêôý8M¶¦v¦¢Gîw¶Cjqè¸å2õ€@5Òí"ãn¹ÚŽ•¤ª¨yºŸ?ìcžORá,,ñ(zšÄ²÷4-j:oûek°S‡4;­Óßt´³BØ­Ãap+>‹ð‘€Ès8¼(|@j ÉÇ{ìPü ŒØ8œ –xÑÓQc–jš]ÞfÓ¥1ói¥ ôÜô¦à çùc=êbÂñ^žÌfÓqµeñ<÷¥Žà–ïТÆD¦oÍ7‚e£>µ³c¾yä·³S>Ëðò¿ìŽQH=êó6È,õ%Ñõ1ÄûÓg‚éºÔyƒ}kÝlnÏ|7´©¬RNzº$PI=Ð>vƒ@4+®·è.”
-ò¥l’4½,ŒÍüfÅ?OV‡ÞÈûn°üí›´Ž|ñwµ‚š§]OÀη¿Íš7™Ù
-‹óïvÃÇʇTÅn±(1~¦xR\r€r s÷ ³¥–IIz‡C
-ašæì2! »¡~RR{d .ä}çA—Öt:±S²æ³]°“7Í\:ÑMSy&©À)Ú™˜ðW“€4Ô“*×[3ê½Ô—æ 6±eÃL÷ÏÍd’¬ƒƒ—Û$ðdw¡á+í‹Ûpé$lÑšÚrìc§Û—@µŸ¾¾^àgCLì÷Öù»¨ÖàxdmF7 É‚bqêµ£>šUå d‡ õt^ðúĉ?†f€‡sÐÐôõ
-¼žqÔ ekÚºaÝ7ó&¸Ö2ÎðjÑP6òªº-97¹¼[㓱ô'x¤ò¸¨sÝ/ks²1Ø¿üß9
- ߬Š ÔJÙz^Ö¬—WØ@eô¤U¬OEÔPãÐT³ã|¶¬£â'À4AR­,¿ª·à¤±¤ÇÑç—^¨hÚZ|ŠKºTaÈo Šµ¡A4o·sß&mùçaãÈØPà·ÜÿŽ…Àº¾‡9…1`cEW¬r"Í·^gLgìØäП„E[]þõ ³FÄÖ4æ³ÅÙ^„~EYXëÛ‰?*µ@´©¸Ù¬%§=ýEþ» Ë&2á°u˜˜w€¸T³‡ÙX=ºb4 ‹5®pnÊ€+Ùl†ÒÑÕ`ûòžÂ#¾ùÖéÆ1í›;½MÒ‚mw†ñW›»²¡°ÊÎ<ñz@Ú>»:ïßÑ—ÀË›ˆÜoM žj°î ž±c£'R.ŽPëæÕDX½£§ÍJ"zx‚õýh– ò¢Íêt™?ƒo¾X×QJ6±œÑØô¬§ ¸Ð³§H õˆh&A®Ž­4gl'êFœ>ƒC¿˜7r-D¾üþI6?«¾¾Y8@Š)ð³¡rÑÄZ=¹!£Ü¦þÞó‰@-7UB;ÈóS¥vh:K‹3¹hæ½R‡ÜÈ|¸ÏÛ÷`ª:³¯RU°˜'7 v|<yÛÁ$…B¿gxL/ 9o­|òüàšú¾ÍÙº±Ð2”¤¾—ÖÙ¤ÉÍš¶4ì#jÛeq”Fœ~ÅUì^ÓšêK°ä¸Þ!”¹%ãôût:*ä8 Q¡*a>vut‘ù¥^ÔƒŽ×ï¹âÝ(7ë‰ÇÔ‰»ªÝèt’!zsmáž K‹cÊ¢ •ÙæÒ‘Á5£F Mglù!ÇÕ;duNɨs}~Í>ÈõæÿkÉ¥÷òl/z_yǹ͑´€m'\ãÒÐLñ/D/Ë|¦Vâ!ƒs"»ªF5Ú¿˜‡ik…Ñ|—»ÐÆäúQ!>a›pp$~÷ôÈYÃþlÒ¥Å{Ayl‰a]kÉ´;ôb9þRŒuP¹7ýãË¢EVàÏ(emŸ=ª—_Ï:!#b2ú>7üüy;½»ì0XÄì wˆ»+Ãý„SæÊ1¼`ÌÜ
-¼³Ô‹ÂüçRwF“`‡¡ÀK'{÷ߘÇãSÒØfÁó%±¤/ S+=ß)I‡b²¸/g
-È Ð`6áÖ«ìßž–œ›/–¨%ô“à"eôHWy‰lÙìÆœY"ÂÆÙ/mSeBª )W‹¬ ´êˆM8¾`%r‘š*Žô6þ¼=Rî0a®›è‹õß³TÖSh¤°8€ßEFÞ+–ðJ?3<.Ï>™Èä„K#ª"u2üÅôÅŠn#a1£(f䜇7¤VM(™eßÅŒèÎ\š½Ý&¤+›9·ÔŒ3öÔë[
-zÿ.‚q‹Ygf6q¹­ÊH.Çëµ /å£6x|BðWªé<DòOÁÖ>qû‹ñT0×ç*)?»K$„lÚƒKú]æà¡ú¦s^*Í«ýÆ¿n¾œ|e›ÝÍdŸßýÍŽ6ákßtB›^ ý2¢¥•¤uçÕë]±FžX?GJ+ÇæÅØ›múZ'Bð\¾Ù’ ò+öKɆpPÐI²JÀÜjU pè4¿tps½ǶÜ8rUB+ÃðNëöã:R6‡ý5­£Xµ•å@B¤.=Zh;FŒÚà±û£±üé<9ç±ùUf¾>M¸@KñÉÕâv¸(ª¨œïè¨Ôº/®L»/Åpé
-Nfñ¿ÎâaZ¶=ÚFLÜÒº¡“G4òå‘,ݯôäåuúÅ\–À@ÎeÖ'e”|j­*“P†#úA`þó$ØžZĬ‘MåA"l+1*§ÿÁVU[£Ì:JZ/ÖzÇ9žn¨Þ_[ãº0²¾8Òýwا³÷ª¼:jmƳ¦t I›ŸºGÅÞB
- TÕ¼ØA­ž"ý,ȵ™Pý@O €Ì}±ºÑEö·Ÿ¾ˆá^¼Ôõ©YŸw™HÈPH.[˜ M:æýòö³ œq´ m
-ZêÁÌÛ…¤žÊv¸sSÆžJ‹“Ö$ŒÎf'aýä«<ݧµ½<ׄ‰…/7^„y ÓOWÁ L§o-Õ£úHñDœš\'›zåßv $½¼¦§°Le¾á¼ØÛ@°»ˆíªh9Z¿G**u&ò‘ªk¼“W¨IBÁà”°Ü’Í‹O<\¬÷ —ų yk=ô!Æz9@¢åÕACkèT\d
-y_tÖááˆãÅø(bT`2s“#ßõöp£KªŸ„3‡XŽ°:èS©
-Ûp-Óäiˆ»’8¯™Hl ‘›™Þˆs–8m}1WÓ ¹Äí ^a’ 3ßPR ¨AÖ ûFrŽÜhö¿T_à€ÈsË´D4ÉŸÉÉj:èY·iò.0:í‘Ôš¶©¥W!o‡§¸Y•Ðŵ~&×tæK. oêí§#ã HÙ¿ À–‹8¡d3œ¨Ò Ìfá3¶ªRÁÔÂ|,F Ô8’…aºâ¬¹í‚e ùë >8>—Xë2²-P¶r— ¾%®ÃlSfQxTP†>¢!*i ñË䫂Ь áW7ê!rK";Ôw¶6ñ¸«»Ž]•ê:ý…!ž6ËÄl8(¯åÕ–‹mþp÷òµAž¼ÒŒ¾ì“.©ÂúCÖfÖ•ta¤i´+ øVl¸Á=ý±‹¶ùAöe))"aoI¬iÅ×,ִɆ¼ƒö>ås0(˜–³)ÞÅanðŠT)隣¹7Šï±< t5§urU ŒaºÍÓ?¨>½Êð½ ­lëȧmT.Â~¿«ëŒú²Ä"³ü³xˆÍ¤üî]êh.~;ÃõYŽút›:Ÿ3òê4?×6-²—óц„IA¢u<½£`wíͬ-QïÔnÑ}¯üJHæ«ë©Ó1M¥«&«YÇ¿•¾29F²ï˜B´¢×HÚfi¾ÄÎvNát2O¶çIßnÉc£¼ÄïäHM¼á—Ñ ä„7¹ð“váßLFï¨;{ÅîA೫Ì×RóThï‘}6Ö0ÒT+CÁåÖÓé cׯƮøVu’V/Ëî"3JQhꈿgÅìJ(Š)A‘5tåâ$­{@þU©¢‘
-Ú³Âø ig0Ä–GüõQtE Í{‘¤ÜKìG˜/´å*ׂUs(Õrˆ0­<åÏòCªðº¦
-}©?4
-ÂÚ¿£Sª0 ÝV£Cà#4W-ÅÊÅÐÙáa[4¶ÿaÉ=?\ùÍŸUåà°SòUûÕIÿÛÁëT©!ÕF`7(q˜1DgøpiiìÕàe¸Vä(w1·…Â=KQ˵V"qÆéJlcí†ÇÙÉõž
-“:ûFc·Š”¦|ƒv°iJ•|‹‰ «¦X MÍûc[)Ž™ Jòb¿¬Â€—N<àÜAz5 <èuÆ$oÏX$ä·ÕüØIÍÝA8ìëKÜÆ Föœ–Xñà,‘ÁIë%^èw«öT>¤ ƒ¦én}¸P°Œòœ_  ­ÙÙ”ªBéf³˜ùà8·Â66b.è5—Rã&5­¢Ï‘ÆU~vˤ;è7 '£#5´µËìÿÊ‹Jèš©ùÌÌ+•ô‘“Ô«8#µÒmÊD±KR·öÐÖGù›ÍÞ¢å!™i>=×¹§§çg‹èQ­±SUÖPó#uÃQ!ÞÏÏ À‰—FœÛ(öp‚¬¡œ­‘ã—õ-˜³èGE?ó82:î™Ã–zéYDœ©[wl%S)qóUÂÚUä•’ø4H:;Hgö¥eШáEÈ´áP暯k·•×šÂòöfá¼Ö€ÐÊ옅‹¢òý èTB¤¡-bŸÒ:»B] D9+ã*ûè馿=?ãžsñ2ï<vOˆün¤|åBÍÓsöŠ››¾=ï–ÚHoº;§E¿}T-¬Š„ýYÖ[ì‹ ¡{Zš ÷ ,›³Šš/ê­p>Lj¤Þzf¥1™™í¼8¡C·P½`nÀ"®úLü„ûþƒŽ³ÔYRJAy”®x[n‘rä½N4%:‘dí4½”¿<w_Ì-Z—‡$˜Þy¯*U1$
-|F&Nî°«t››ùa½£Ë‡/ÿ‚*šé®ëF%^]¬n`†o¶Í@œÃX]©áXŸÔýÒY@CN5ŽXyŽý0[£b¥´ú$*iæÝ„ ?^"RùÆõ AXá˜e™ÙqûT4sf“±ÇðÅì@NãÎzÞŒWÆNX»9ÓöýˆI7µ\Ý>¹oœPO)µ¥‰&àv|äPY™1zN”VÍáçãçò½üJǵ{V¡”ôä-²né¡¿Z¥Õæù8-¥TŸ}\¡)&úêtnEÚ`šÜmI'Œý2/ûÃK)ð¸l?qYZ؉ï5 ÑדÅ”å¨]ê6îi9QŸÚpÈs=Ô…¬èßÖÔŠTSÕQuzRjï/¦ûCg}Ã?÷¦‰`:RȨ‰
+xÚ´ºst¤Û¶>vl£;۶͎ÝQŶtìŽmvܱ­ŽmÛö—ÞçÞ³÷9÷÷ï7jžÉgÍ5×|ëU¤„
+J´‚F6@1kGZF:.€Œ¬¢•¾5#­¤£¾¥™!€‰Ž–”Tبïhfc-¢ïä°;šä ?\íL œ°¤
+ý¿€‚ƒ#­¾Ã‡hmbf ¤üp¶±u³731uüƒ™–öO¤?ÞBt
+áø'¦å¿Ì@à¤1ÕwøËWFAA`¥ofí´Ö·6ü0tÔwtr
+ÊIŠ‰*)ÓÊ|4ž5­¬ÍGu¬é]ÿ²þOPD† ÀÁÀ`äd0|4©¨µ‘°•ÕkØ?å1û¨“£½ýÿék kkÿ+76³62þSy#'[zk3;' ¤ÈÿXˆ`ÿ–™
+4R0s44ýWeÿ%ÿW.AkK €–‘…Ž™é_•?ÇÊò£?fÙŸöGÏö_ºÖ4´°:8
+®†a=³§8²ùíJòI¿^KZµ/y†Ìõ¾êâ:¿Ê±_ö¾Í&6—
+Iô ÈéPQÌ5ŽY¿Û/ü¨r$§§}Àº}A
+M洇hWz
+ïj8õÖ´Æt S¸ê÷ìXŠÏ§tX8üû
+À”û]IJÃCrŽ/ˆ+AæýŽxfßK]À.íOt@û´7?² OOÞØñN‘4‹aÂ'‹µ@‡HwÀ¶LšuâT‹•ÕQôó·ãÃOWô&—u߆§³Ö‘\`¿\ÑæX[«&¤à».ŽÌ WLzfTÏoÁªo.[~ïdér'¬-6O
+öàwâI ôqäqð¥3¼x'Ä!^W~§=¹$Y;Ÿ"3x¢«âœ}è¢ô­lâ_•‡ÇH³=ßJ))|ÉPxØuýfmÈ#\ÆJžæÄN°¦U÷°d´Ut*tÏšP`wL'GÕÝh€Çža^j|Ä¢û¬µY œþÉ´þ0ØõT›Ì£œ.«, êÙƒ–„ëÛ¬+<š4*ä—–"Xf©¿¾§:4Í$;nȤ0*3¨½”îð’DÉ8΄¨š“ý:ÆÅŒÍxÏShÅ?Và þåóK±ÛyU.KÏ.äâN*V/œ"Kïýa€É_'8?¤§ç™ÉÇQSß®+e
+ªÙ~0ù=nFžóÄŒ‡û3„³Z¦jî¡a)ÄH¦£Ä§è¯rÄð.IØ›„nÓzÄrZá4ëZHÕÛ°? à(˜A§ç›ìg* Ú Q]
+ …Ö:vÒöF…}Ù~.ò¦¾!ãíeÐu¹|ïEÝ'祥ælQY»™N5“t[ã×üÁ½xˆ=»c$©¨)ÃÑŸ´Úu‘°6ºš%\Ú,0qÈâÖ° þPo…¢?|)Û ö‹mYBf8äÕÞA”墢ïh˜Ænë¨å"û=ËДºÚ²†c¥)ýrFÐ@ÌIÇŸ>‡Šb™–ÄÔ[,t[†õ×d¼q2>l&D» ë§Œú† ærß Œë(±µ…SAЗ½Kpø#³ú23j¾½ -)—Ÿ¾Hˆ¨R^&v`˜ƨXÎåèŒç[y;tÞ½NfíBÓÀg{é¦2^…3k»PóÿÚÿâPxfó"ó$ú5¡¿<å!ˆ2y0ÊòŸÁ„…"AFÇë)T#XáX‹öëÚ‡"GSÀªMÕÄ}.0(Ó[˜ÙZÐFBÿÖÞ"!f¾ìyÀÂÆá`J:BÙN¡kÂØ®æÙg¹q¡÷Ë®A¹bê'ÎsƒY¤ÄW~Ƙ¥b„9Š©E³jGáÔË1§‘ù²«zŒAvã¾ _×Õ_ˆ»-„ÜzÜwùüÍ#‘ï 6açà uèíǪiªÕ]oï«­ß¾;![‘îñaHi(E)y1}®7ÀÛj JbøL¿¤khÓò^ºv‚êòøüÒ!‰„ÚCÿÓuÞptp£¬-M=ýö¸oÐOï¶}Á\˜)Kvb™úâgÏáj&‰t›œ¢Ýð+B1}^°õz3•kF^æwVn*sVJv{V—-­oXYì«$,*˾€ÀÞþ~ÒfØ­›àêýÀ¾¢8øëåÖ,ª‘½KÓïèj+P‹ÆpX_¢ÂŠ(×)ËÐËeºÊ¢Ìæ_(|°I5î¬`Ì(Ô°ÌñÆ ì<ê¢Öˆ( Ìöª¼eV,~%Tu¦>¬´Í¾Þ8ÂÆ øªbd‹ÒÄs¿ØUÈ3„£,â$¼z]±‡HUꟈ·æÉŽW Ü-Z^6áq•ëÄB9Ž¿bñA”cV2Ct¸àŸvt•L‹+Ë€Ô‡/V Wê¾e]:ò°ºÃ<É®j¤rÔnǧɦîY¬ö3ŸÃv
+Bæ ~8“ð3úÌ).ªjŽ°â*ÍÅT•}5Ùïk?:̤ˆ?&;Ýò}Þd¾±çPÎÛÌ”ÿ îo­¡þËogŠ ’m”7òˆ«Ýy|IÓæE+H+ŸW\˜Quøj’@(ö¿<ÖÝm q¸Ra?¥&û©@H©”%ÁÓUZA}Ñ¿´
+q³”Îî·ØÇ8gÀ!/b+N¸<þYŽ="í…0¨s„øT‡CJY9ÊˤYâbÁü»ªÄ‚„AÜ5¶ŸófÄP¨¶Èe.î$J5¯.nT<ÎŒµxlÎnÝ ¥ [Zš4cLQúNîÛ‘íå‚ü"îM>à[&’:'!9ˆpœê>UKÁM؈H÷V&" òEwâþ2p¹4•S-êk•÷Â4NÀ¯’e;<XqÜäµcÜ[4‘Ð>/Ív·ê4´50â%ì-~'îøÇ:l,ÂÊO%5±å­Õq-ðZ©å»¾>¬¢rMÑ>³GKþ@C q£WŽf'=º–µ¨Íó¡ä=þœZË â¹6|š¢ô
+¤Ãæ‡{äОGÉ+NnÔ…¬ º­‰¯B·Ž0ö£àM}6—ð©K$Q”PxÇ0,¼ò‘ÐOãcüb‚ÎGê¿ZTTD<¬‡~QzƒCaò²ÀÔlcS¾¼þÜïïho°ýÛ¤à(7d¶tš²Â MqÔ¯w@Ç•}2…ÓéÓ²¬à ™¥z0m/â•Á‘€|Xt‘m7?=P:4ÆÃ¥*qLñpÍü¬\î“ßve&†™­Q©»%¨®Ž¡A i'aÑ1Ìï”Bô¥ùU¿-Ir¼øM´Çvw¸[ô
+æZˆ d4ÿÏŒ%!ö7_‹6¶šXÚô{i}PR‹€µ B®ØG
+oä7½ùÏ¥ˆ†< Ö"¥8[V@þqõ¨“¥1R%£\¹±Fn£¡uÚå/l 2ºÒÊ–'"jñ¨±h*™±ÞÛ°ôÝ©sŸ<õ&GÝùOpúʸO1é¾×»ï¥¡›XËuÔ¶Ú „ e2¼&Lq¨G£±VœÇÒô­¹ƒÝà¡|A¤¤ÉR¼Kî_ïs)jwö5IS´Ùí0¯k¡”Ù9©5×¼÷)<µ¸•¡N@DW¯B†NξpÙ»å³q­ìs% R%*Â0ñ~9—Ô<˜Ø‚F®rÎ)L Ði¦‰Ã¤ZÞm
+Ù>sCX•óû„ ÑxJô r>½#¼ŠM#ýÔü¸é]™„Ûx˜¤BüñÙ%H*ׄÓÙ ¾WIR’h£@ÁpÈê+|ýºÛ¯*+cbÁ±"%M’¾iàM
+KÛ¦æ´ÈBá}§¼C`&cÁZš ^='¤‘+0³N`ÔÙkr¯úLv²|}°|°câeØéæ%›>b׈-ïöã(x€O{”ÝTªñ7õ{¨Im ëkjÂÈ«ïœ\ƒÃ×眅NNñ×r"Tj;¦«ºöñ«I£“Ó´(£8y¬}mFÊêzPE³ÕOZk+ø’¾q¥± X–IÔÇõýfÖA/¯|¿Ý¶‹lÆV¼2e䋇ò–§­ùká¼°&"c¥b1è°¶õfnö( Qtð¿M ÉsZ*œë¯ØàÐÿb0ªñ«»m^^_Ù) E¾Un‚fò©$[­Œ W¿K?ÿ‚éÙ›$?Ïåò¤º÷ÍzÍ5Ýú¥Öæg àT?†âƆf&U·sMnIÉðµ¯âç©Ò©z AV¨¾(7G{/\H˜jµC>§d¸ý
+þ<bªOûGd–â†'‹Æ‡`—KW???.殺ˆpúBk!$«¾F¢n`)yZ省mÜ öÚÆ ï\нòµ,ÁQ:C™Ê&6bÛžàKÇoe4Û%\½þlO‰ø雲ŠkÂ-ÜéÕ•Åöܨøu…z”¡¨2Cì\5ÆQù.dá{øyn‰ êê1?XLCŽCÓ¶*½”‰åŒí{Áz˜éD‹7ìd>æuê,p¨
+ÃêœmglX¿8ÁÉ’ˆáê$rÞúf!ãá>Hߺ¹ã&§Mâ\£j0z»TBNˆ
+‚Xù¶ó*†¨¸zûy+¤+ˆyw¶§‡äGw·(:Ç1ó`\¹Ë]ÆÎ÷FªÂj6• #…˱þ$•y>n ."Þ²ku]S8Gº)l( ù{`š¼GA1£cƒEŽêÛ”¨f$Q}É1Ò³lËá”8Xì1ŸRö†/êWçíüžÉü¦Ý:é¹ÕîJâºY~ÆÎŒ0Ö„2v9’Tr]Ûû.bI,|¹d¹ð kRgÂÙøfcZaµ¶9˜,3DŒMHžky¢¡¾û0ú¶°'Ñ„Ëd‘t1ÑÀä¨À =#˜sá†ñžyÏ™?7WÜF×_Óå/pŒ§ã
+û=ZÀ#Îä$«)1'ÕÛžº
+úö?ð*>³z‡‚›yq!¡(Jδ3•“àhï.cs;ž¥ß?G•90Ž`à©5G3á
+ûa+©- 9<”„í I>ð3¦2<‘ Ö &7>¢ªT¡v—ÇU£…|mM‚Ö¢4\gSÍF¦“Æ!¥fÜ+¥ã
+N©eáø9OLNNçÊ…ž— Í;+1u°r2¹„éx..ïq½yOƒ2#f/aÃmhâë`2foòŒÄr—«Û[­t/‘?žëÌј•Cmå6ÓWr8"|¬Ãðƈ׌Ð)à ¿î[{5ç.ã}÷ú$b’ ª:K HF^ÛúMe‹µ ´˜L5âªûËæ
+.åu¶2݈6ÝsumSÊw5±ømªœ­G‚¹ŠîÁ…° ^±¡e4Âqè4¶´‘‡ ÖàN™ }ãÜGa崾Ƭ27`e›Fppªw³ñ¡áMƒéÈêZ1cÇóãîÐOæÏÖÍiÂx“
+ÝP†fþåÔÿ+ù¸,Óni1Ï I !jÈ›’ÀëL (ë-¾ãS›1Ù¦ux."ü …áŠLW¡î.Yk¶Ív¼z‹G
+NX1”ÏŒ£## A‚ë,5åØ;”½á¼,ëdªFŸ%Š.}Y…×ц±¡${õ¯ 'Vu ¢¯â冤ƒ½VˆX}OÜ)Wb¾†«×ÑZÀsìÀŠŸø‰ÆÕïKG®â*Éäjwä{Asš‹öþέ>l¦z<„eušÇÊ£™Îq¨ ‘Ñ•FÛ²Rô=4ùÎÖê=}jƒUÓÉ«qÎzs,ÜJËÄMhCNÎdžø
+W+šõÔQÍJ¦žo ‹„
+NIý§ðY¿{eƒã1hi[J*À¥“"®è&“KÁ‹B±®CŸç²„É*w®ö7:‰WˆêÒç¦ïÉ´3‡îŒT1:ÖZ|%—KÕRN'½9‰óHZaÎó,#Iþä]™í{õ­ÁÀ¹
+‰,P¤˜h ‡qEpÄj×7|Åêc ÏJ Ò8µŒH!+óéÁ")¤ø꧑ȇF¿°±Ž2Šœ<ò’™X»®p.œ|=¾ÐâTu¯ðtÉK¶ØPág”{óŠÝ$<tEm)†JõFºüÚà»å^ÂEŠoêVû—·
+ý•/=v+`f€§ýÞ® AØÛß ã™lÙÛ;{ZØ5VÀ©!ïË¢s‰laâY°ï…ì”Q>G
+ Í3"*tó›×ùÔÏ<Ò3ÝÞ†°o %±ûª;®9v¾awñ=õ,oü„ ßê:3ó$72%l7 ÎæË&ˆW‹/xI÷ð°Ÿ¥Ê×›!Øsšêfîªsy'…ÏÉÙ§]Ê5~£ˆ1öeb‚a3mj$±:pºy"»ÀJ\F/Ë{x®Sª×Lú–¢} ¬´Q‹œåý¡‡WŸikvð`ow< =A{1c'Ú¡næZ¾Ü)%hUL$ØÖtajúã2Þæ‰+bêjë׃´÷¯Yϵ”ø©
+ùÃÍ>¤o˾‡üþ÷âîØH×sγ۟¤¿ZR ÿB¨€ìÖbóI5=^ÿòÔ.ß»ªDÒ{ÍaÛ®õE¶t»É"Â}ëˆ
+ùÌ¥CohFðÜßµi±^ „ýIK²Tv€$
+¿YMrcsèÙ>°Œ*·ûHY‚
+aäû¥¹÷±fRK$Á¦ØÖ Õ`KêÊsBÂFÖWýšK¿¦
+¸¢ I†›Ž¼Ý#«_­ ãŒ}íÞå!¦ö
+W¤"6©¸/Wên³O7”>N)uS^8H‡\m®35k+:%M»ÄÚãfû“Õ óCqºä…<fË5æé
+ÓhÀjQÉ9~9,aìtƒ¡iÛ.{niµx‚ ì{€ÚO.‘8ª*Ùóšq<–Øú¢ßÖŠ›D¹[o
+þ³*êêQ}ì # Y˜8§;uiP{f·ß Ž{²z4pWÂ’Los_î×ų$=ˆ»°„Q-ÞwùÝOïÞ‘gðë߯ây~PŒ¢pÒ»ÖE¤và .}1~¥!û†Jú9A‹lNö¸2”±b)4‚æýýRõ@(@©5~Õ&~%!#jÂ!E½÷pº©¥•Í] ¬d³|*XwãýF_ô]¬nßFOݽ»%×Îßø Å«¹wÜ´yCÃÀHfógÝõl;›&r°˜î&@ M‰©£UK•cù­®ˆâÌÂŽ‘ë
+úíP<ëAÝS0ü“
+³{1‚gÂ3 Ë#w›1…÷^±þýníÿñ϶zJªÞ«™kwn2ΰϚSòˆhœ a<Ãs•º;Øèºk]áä4vhÕ(Ñ“¹¾ÜGþŠê˜‹-‹œLâ3¬#Ã8`ÞŽÓ¿ ì}åk©®.µ=F$]¤zžDvq¦çÖ£Zí’ðBûD,¦?ˆ:ê%±Š\¦ë×Òæø9' ižÜ&˜¸ºgrPôß
+ÄvR_Á£ Ô·X‘iìbÌïdŒœf&Íy~/Eª\Ýš‚éªàˆ¥jåçï$æ’”zS‰†7r·äíYÆ—’H¼ˆMÔ©,};(sØ Â¬·“Ÿ¥ñη;æ{¾ «Ëª‘Z«ÿÎHËÑ{gGR?.ÁäÓl¤4!Ç€k÷îâ=ÈI9 žL«U(èW:ÎZÊÿÌãQ|X ò½XŠ`Ã÷ZÙÖû.úÄmò¥9}I ¥¾ž_ P¥FôbWOF¡!û}·­©4öyñ»Ìˆ
+1éñº±Ð|»I<¾kËvÙsßJN#$}[ááä·èô‹ºüƒšnô{Z$0¶Iëæû6-™ÍB!à±l¯V£®z¹ñwö~½%®JOOn})ðédXôcFéé(eœaæv<¬9þå#).*–©ÃKš¬e((+áØÃŒk‰»<O–ò¡À±˜'eÅóˆðŒ±RU†ªveïÞI}îXݹ
+ …<¶+ÇW‚X89³øõ”Ã÷pº”É«A?îüþü€l³‹ B}æòHæÄ-Ú'®C q"`gYcá+aQ?OñŽa¼€uÜà›eך–R ÂQ÷†˜zÎ 6­|ƒ´ÔV¥@~dIƒIåP F_¹r̓ÕCH„€Ç5ܵrãj;¼–µë‹º$0LGgÓc즇 •ˆN
+%wr;`¨‹ý\oÖB8Šý˜4“/[ÜýâêĉQäHl‹ÝLŠ§9£7æÕåâº4†~©V Q°Ü,O¨ß°FЫZöšJÙyey®Ýs¹F© ÝR„>9V1öìªA­¦ kl«ÖÓW^AÍÃ
+ z5]PFKï;„þ8>°Ì“n‡(¤ k9™ D®IM…ÿIݸU‹ØX‚Ópgíôl@õÇelòìYªW ­ºüÀ¯Çmñ9Î×U”¦Ý GO¸R7é›ÃºCcÜ6»¤8%±èíg ¾õ·ïV-ÃûëiY–| ?Ê£¸/ýΖš¤â½
+’êmsžÆÚÔû»ç!{7ÝC‰Ò)yPœ.*0–üõÒc†fbà9&‡*©¯÷iâ´INö·Ñ7 èÒߦïÑóøä×´qå¤Îü¥h/¨æ£f=)f:dmÌž:‘Áú È)Qº?…yÃüÇ«UÄk9+Ù*—u Ä Binr“J8ôAmhØyN’¨u°d‡°«ŽN¼H"Yc—6(¥{%Sš8´³Ed$º®wŽÐEwFFoÅ>ÇÔZk†¸L©f1á‰ô¨þÀI6ÝÒîñDz\NW0ÚÚ1½±°ÚU Ä
+€9Ñ…,»@Ú<oL
+‡0ø¨ÚkŠ¢Fœ’ì7ëædËÅô$Í›ñОÃV ÛTëƒnLL?ðZå¿[OÜ0š¨Eô(â‰8þrùý«[®‹ùÜHÈí¥Vì¨1š¹±åcd”¶Ü®®\Ì}‹=6Ãûžåå¸0°2u_FÀö­»<êçqJ­,»³Ì0E¾±þîøÎ3¹? 6*BÜêÅ·Ýê úäpT°8l—=Å_jžG7<E/ÆÜ-LÈÝà6ŒÀxÆaùT°æäToÓ¥8Yúü4%ÔÊ·jÕ&ÄÃÏ\;^ýJ‘ð$ufᄌ¤˜§%Ô”=›i¿#c£J¬>Û¬‘J˜PÞMWªÐÄU锩†Ù¦$í«z¹ò4¼å>¿”2ÏÂ{¤2^ÓÊ´èn÷ÄaiŒ¡…¿uÒKlvî·ZÂëžë(F66øqò¯™ 6ÖM iîüdí%¨›7 ½Yr)BÙµ. Z\¥*ÌŠÞ6u…íÛ¿’ÓÅe±…óíÔ¬$bKœö–$
+{U;(„öû÷ÊTãÎ?ÛÐTõ6˜|âÝÕó ³xµªÇ‘(¶]-·*ð"£ô³ÀñWÊjYÐÞÂ澂‰†°ì¬`}y]¾¯ûÕÝn†¹F:¼»~!.<f‡šVEc—Ög›ùƒy˜ ›¦hö] ½ŠÚidÂ!Šuia‘>BN$Çüës½ôı£ÓvâàWÌb"‰~ªŠ»g&‹ì™E­n-‡BƼ9M‘´fr1­1žt¼xÓ5“GTTdy b?µyÉóa‹`è êˆþÉÝþ±A|S„%‡jŒÒ —ôD:ôº¹1òó`Îl±VÍÑé‰èxâ!'ö_ 0¥Œ¥êúß¼s?•õrøt‡
+eà<rö%õ¤Þö¨ß2 Šµ_‹aÑãWÞ?èjí–p‰{º .±|—ÛªÄ(F@´JÏ,?oTEñÌ“(§€Ÿ*V¯çQÁˆ}ÀŽ×ÅVìü6}¬”ƒ0™Ä`þ‘yOÓW”H G2£$¥XƬôâ^šˆdž7Œ¾8­ÊÄÉ^ 1~Mæ:Ût‡°¶‚t_ˆ!xŠcT{ÕElIÖæçëZ&£¹6€%ÑÓ"J†."ÈFñ±x~³!3ÉeÝ K£ÁŸn~F5†
+ ³ñ¹°mŽƒ›ú€MÉ®!Bê!C uÅV%fȃeéïbù’½y­t€>¦dc¤=,¢3CC„±«Í`Ñ=³ŽUÞ†ÌÂO€ìt†Î@Ü”4´`%…ŽKðÉøN4çÜ $½¸=¨?öV§¥N”fù€PŸçØåçãŒÂF˜Ú+a,]+´»'i@ô©ò¾ð˜ bšÇëÒ¾öY{a”Q²=Ó÷5YȶQ|_¯|í2 ù%º#?b}@Ï‹&Ù³I…ª5s ;DÐ]<AÍãþöõöɇ ×A(Mfã>ël³qò(7«4cqÄè‹V§9©‰Nû+Éyé’*Ó±1\º0sÀ°ØYºís˜ú2!ŽO€6ÿ
+ªÙ<,B”ðª–û`ûh"!¤šŽ¾)‡ÁìN÷x„ H(2Ü Î&eæHwE†]b–5‰)v=
+Új<3 I\ú%àw÷E’†Zyvbw¹¨åx9/¡ z‰Jvq‰£ŽOåÓ¬­p¯¦t?©×û Xu™U‘¶"†Éõo‰}* ·&<”M– k&ü£óSUžÃ¼gúÀ5jE#ü+7€Õ-mwwPÔ$šÎw]H#ÈK©gBö]ÆÊVªÓAǺáâO]'ôUxæß–!šeO¶ÅÚœ·9›˜ŽØ“MÊšX, Z•½ó‘çdø<›¢•:Pg/åó¦me4ÙËKIs Œ,xBûL·Ì4ú¼#
+&Öß4³¸·ðcWBq[œ¶ÇŸÿß3CKjrz÷Fúq*?ã@LZµšÈ).So­Ü½{B=‘ÓSpÄlàuÍÌdØ ’X¸øº×íÐW%IˆõD$4Ùæq;óÚMøîꬻ V?Y7ݵTtù†<v×éwÍ¢UÃBœÁà%MªÈ2Oø¢­"
+åµ9×43åà)2X8¤ê2”ïp©tã³r*)­Ë~ê´Ç½ÛrF²;ä% É0*Cínz`‡ø9Ç7®¯Tö`¼˜Î^;º‡L÷ÄUŸÈö”Ld» ^fži¨÷âŒûæ©Ý/LÛlA;¦^¿îÆͣİ@ñ$ü#©º0'ãóZ=¬û%›â¸âX¸ßFq¤ÚrZ¼.?3°*7úIx†éR¤tŽ0û½c¤ÙòÁM£ä mxí¤H2–£S‚Œât,ø»Eê4õƒÐ½Áæ§ñ<Ûa[ÙÉèÀÂi‚ÇþÞ6ðý Ó†7èM$Šl¢âoŠê½LB‚DdŸ/ñ€18j
+^Òaï
+h.ñá]0ìyz„ùrËdN +ŒÂ5óPwa;`âÈ“t'G«vfž xÒÊæEå3]ì.ÿ~ ó·Ã<ø—Cã¿í³€o‰ùŠès×K„xf(’šõ³!ÑU Àä­"EÑÂH\»±ŒÓ5¿Vÿ©¦—1×bamä™|m»øÌ„ómèøžžE“Ÿkþ <Aîq‘ÔGMë³CPž1mŽèÈW*Z†Ýp“(ñ…üω¼x±t©ûOXr¾•Dîã.Ì [Ɉô;˜fXÐIw“Í<íøõj#:bŸßܶh} ãÈuÝÛ¶´]ËŠ_>2ÃǬqL=Èx’SW¦šûãâªþ—`'±^$ì‹…hÏDꧬ JIŒa!íØ òÏïi™ùš  2!Ä,ác660|9êšÄxZ¡¢³hßf´stùÆpâCð°ëœª‡Sà´ý%uÉ=\cGäCQK‰j@ܳ2úßÝÖ i’ΪvlLj'ÿ­Kÿ9ÞÂÙîÜ®Àz¡«Ž½dŸmHÏ%œc\ˆÁ8]”ÿþ¿Šä~†mø™YÕäÚñ«ŠO:}À«w
+K,
+z†Ý٘ϔ¹Kë.˜û¹zöÝبUA挭Ñ^”M½™–þ~ïF8ÙÉ Ÿ½›ßZ6nÃ<\Üðæ<Â?Aªo.t²öx
+:þ|'Ö÷JµŸdksÄšXWêÁ}‹‚YvÑ:þ¾HˆÙœ`ö&«–0M#Is7uvö…Œþqñ‰õö¦ÍØuk´i@ïï×xÄÆ 8Tˆ§Ûœü7¸‘dE`.·¼ÉÿËÂì,ýMp‹?e‚Ì{†¿×®+˜Š9À¶‰¢£é¾lsr³¿¤Ãxà襤-å¤×åRL|
+ýÖÈHM0³’p"ÆA:‚Κð Æ=šðØÙ[Ú Ùt ˜¬·9t£Áùÿ'§Ô4`2&õœ¥
+•Ž62M̈mCô&#Kj1Rér::þ¨­Oôì•0Iû4*Ù¶Se'Ñ>xœMØÍÂ-˜üË\ɾ:ô Y8¨âÄs[«Ø®ƒÍh6¢sè/©éN5‚c-o°"5}YûÛ܃l¨")çç;56üK/¸š’¶‹ªø‚㘩úÛ§€Ö>s<–¤êâd
+6nö1IË’¬Påɯ3‡ìUR]K@¨×äYƒ—øb'+óžl³Úèá$œä4úPˆòeŠ£Ôz…û8áˆWuöÎÈ56 ›$ºÙ
+Ä™ž^ËþvBNaÂñš×>íèŽBãòTW‹½» ¸œ%¨ø7¦¡-¹“9äµmNsÔ½Ûq‹ÎÇŽmÜ µÑ²éö` C°¥/„Oçéž ÿ¾ãn¥8и‚»‘ØO­\'o…•ün-ɆÓäY [Ÿõj#ðWÆMNŠb¾e;æѵì+`“eJÕ™Š» mç䍖¥*²`/Õ›žd:Ù´Kü?}ö›g .÷æiÃÖ÷ÔŠt—|7æb¼é™£Ú«›§úNôÒˆ@:(Žà¾H%ù‚¥»‹yé8—qð3š¢‰ßU~•:š[ÈncØC¥~¬Í¥]8M‰Í£9eº ÿ@Ô…N4\b®t¿Î÷‰F÷” ¬B½ ¥:}»]Þï7e0˜7„–†_©‡†èMÕ;c!Ë\°¼CxYË~õ!]j£QÞkOGH–ð‘–]¯ª +N¯þ‘™i¹ûšePLòï ššcê}8ro*‘èÄ°Úí,a ‹ÎBL‰¦ößN!N ¯zÌò0…÷íM…uÚÈجÓ}¤ˆ¸ kÚÜ‚š=3×Yœè–“‹XDPÙ E}n²&– ÄÐá–]h·)±–x£7¾±H.«-¦
+(R¦Hk¨ÛE'•Åû
+æ^1ªãèçUÖ+ô_b¬*‹)W[Ô»:Áø0à"´qX‡mqh‹éM$[‹,ÒUÞòŠŽSñ²…"zBnjUôÏÌwò·¢æ¦wL·¤›ÙÂðß;¡_÷Aâ«dOª‹¨ý€7ÏžÑé;R‘rE}¿³„á§>0¨‚k¥ósܧà³ãtÑûæÁßï€;'Ä¥7ÄJ1ÛÄYØQY%U£4._“]„$òA.Šü@±ï6oä¬HÚ³Gö—áS$‡e£ŠÈ­Ž½B _ O¢8
+ÂáÊázÎ0|²|kÐNÏ—˜Þ¦kž(ºtú–bZu:wÓçrˆ£Ï’öå‹ìô– >“ÝnÐÖ¸ÄÏ
+ή‘ì9o+¶ënXÛÂq},'¢˜*æFn€³ÙrëSý.=ñ#’|Ûj_Þ"ûÿÄ{pÛÚhÁOæç·Ž û§uŸ3Éð›ÖBe(?ÍÊÛÞz±À.‡Ø#fÕ»§ ñIô}!äëê™r…Ëá9Σgç¡‚œŠ£L´8mŽÓ!/¹Üñ^×±yI¬È×$òï¾ô7ï [LŠŒtÈÿÏ’L™äi6êgÿù+K­Š¿É›ß¦Lòæf)(£–{}¤8d”t„Î
+‚‚¬e6=š¡í‚ìr )w/l ¾\ç:;ú»þÕŸøú@G㤛–¢ ÛDsH)·§ï/ĵ…>ÎS¶€Z©Ÿÿ¥?éžzb½UZ¶ix(5X6°Ñ}‹>øWoŽy1ÿ™ìW°š{ˆÓæ;xC+
endstream
endobj
-650 0 obj
+897 0 obj
<<
/Type /FontDescriptor
-/FontName /EZYWEQ+LMRoman10-Italic
+/FontName /GJLBWR+LMRoman10-Italic
/Flags 4
/FontBBox [-458 -290 1386 1125]
/Ascent 689
@@ -5458,11 +6834,86 @@ endobj
/ItalicAngle -14
/StemV 56
/XHeight 431
-/CharSet (/E/T/X/a/b/c/d/e/equal/f/ff/fi/four/g/h/hyphen/i/k/l/m/n/o/p/r/s/slash/t/u/v/w/x/y)
-/FontFile 649 0 R
+/CharSet (/A/C/E/N/P/S/T/X/a/b/c/d/e/endash/equal/f/ff/ffi/fi/g/h/hyphen/i/k/l/m/n/o/p/period/q/r/s/t/u/v/w/x/y)
+/FontFile 896 0 R
>>
endobj
-651 0 obj
+898 0 obj
+<<
+/Length1 1743
+/Length2 10877
+/Length3 0
+/Length 11991
+/Filter /FlateDecode
+>>
+stream
+xÚµzeP\Û¶5îîBww îîn 44Á-8‚KàÜ!¸»»CðàAɹ÷ÝsÏ÷þ~µkïÝÓÇškÌUÝUMM®ªÁ,f6Iƒ!Ìì,l
+5@äry1Z
+
+å?:+À
+ú­û—È`µþ›È `µùÈþâ þ›øâìò7‘À
+ù›È `uû›È`uÿ#þ÷2Uú³ýgÝÿ:ÿÈ°HÇÆâåüÿ›‹âbãaÀöBBöýËõïOFÿU€ú?óó·hqq°‡73?€™ƒŸÀÎÅûò`çàòý¯Xó¿Ž£?ð²Aÿ–Ÿ
+‘P½ˆ#{V&™–X¢®,¢jpmêŽÔ"¶â!ô‹)°dë38t;‰¶pExlõÛŒ[&äŠ}^ø; OO͇˜®nC0­OÁöƒÎýP>ª“fy¯sÐ<…{%ëá’æ&æ<³tÓë‰jYÕ¿l'¬rån¦©Ñ³ c+B›é¢C
+y@H]¤v")×iž+g
+²¯Ñ HŽ@]q,{.ÄjãOÅV  Yè&ÍÃ3˜DYíþyýØB1J0MýûXå\¼÷×ØwÆáÑíö¢wœ#
+ÙTü4{Ò=ïTA+WÛòþ ëb{é™A_¶Ñm– dÊvôöèM0 ,ŠR:÷¼*mŒîOOÜ#cË«É
+Éú¦=U,6…0rBçÞ†]£Ÿ91^KdOx—–#Ö5ý\[¡–¦Æzó1¨ŒÕ˜~Ô˜‰öÃvÖV™Çéq˜òRuŽd,Šyè褳1vSçh
+Úb] !»¨Øä|Öù`çL‡¹_æ|ªû­ørõk
+²š²‰Ïmí¿øx –I¬–%±Zý{Ÿ…ìü"á Ád›:? ½=àJj&¤Ït’.Çš ·´Ùª¾F¨±‡¹½š•T”µ­{7PþNÞ–»~7åJtMIícÕ€†‹YëÏÀwYs
+Ïâç~kuÉ»ï¿ÓNuý@Ãd²[!–öÁWYÁ÷ÎX4Pv§«o@©Ës¹œ¥:¥q¬5ÖSé¨
+? —𾤆MotÎ<»u ò*¾y^ëà¢ã+ß`i¶V´'JfÖnMÚÊnT5l–ð/½1¾ÄWzFHqßpîpúÅè¥ óŽ¬¼&6RLžËΔ!ijuþ#½þ¨jd£>¤Þ%2§Bë³–_ÖH þ¾–Y(6^àtáG{šsakž~>ùq–ÞvÏîHJ²”>˜ÓŸ¥wÆq²î¶‚SÁ“Ç}™øí#ë°BÝIìøµXYI šjè¥Nmy“¹üNŸž³+›ä¬Œ€ïS OÀÂüëb1}|˜w@ø½“X¨¦”A‹Âe“èCûwªáM¤î*Y?h¤(´²w}Éhõ˜˜V¿sPae²¾'¥;šæÂ<z3²8%Smn©äEÚíh/;`Zéà†ÅýºQF|¬ð" ÁMsÚ‚ÍV2/õÙXâM\Ãa¦( €'ª?~Êè§R½ «Et6
+DÃ:îÇ«Q±iUÍwncœÏW6u€ n„’ŸétÚGxD•’|dKòâmú¯d–g÷ªdfÞVÎ/…_Ô(Éûɽ7z¥–n\«ƒ»¸ïJêêœ~œÓzÈ!£\òƒòi‘‡K£Õöª8/®ýa׬Ûf;Åßã2Þ8dzCŠÌïÇgÊðãºvgf_ês@Û ˆ[
+}0X¼+¡coP:3{ˆ ¥¨u*ÈÒ3Ftòh¬é‡¢
+"Odr|§*"²¥t7Òéói3Cœð˽ÖÇÓ3YÊX3ßNÃ¥6FLŠ³Õ˜ÛFÚe{Í£Ÿd†´,Gá—’fÇ~Û"…2f1D+8:ÞvªÓ“P*.‰ó¦9I
+®Eûµ -f!? S÷ã?Î §æ4Þ$ áÜ8Xýa£D[MdCuÏ+ç>†Ôn¿ÊwI
+éjõ5éäæ"ˆ^Ê RK×Û IKÄgÜÓg˜ÞèoÜìä3¼}Ó9÷Ó£Ž¹F(¯E Ôæú€jîÕMÃæcr{Ñx8Q…ƒ)!Ÿ ïCâ‡8Ë31ÅЮm±wÆÓ‹ûÓ‡aÞHÄx<¨JÂs!Gïx¸ù‰—ݺÅÄ­–Wdºf¾Æ4“ŒnOЪÄ1ža“^×6Š+OéF)Çø¯pî,æ ®¹ø±~ÕP’TÜŒ wÃ\EZ wÖ
+Ý2¦%oðÙ*¯ÇlI§W¤L´É˜JY8h|æ#âsgo ¤/‰³ÆDãC¯ñ..ÏȉñM†$ÏòYl|;ç ÒG¼Jûºíï/›haDœ…çåÎø$½Y¯»|ê•mž£|¼–¶Ûw‹U× ~mÎZ̳žyTbˆÒ–ĈúbXa°RijÙý Ç’röùa±ÃƒñËcÌE“
+ÃÆ…D„¯ªŽ& *yYb‰¢WÉÎ30ysªRJxŽ²ÿêÍ›˜ùÀL1Y«á3ƒJ¾T0©ÐØuWðr«{Ïé•gµðϬ…¸àòJr^<Žò²Ÿá „°p°ï5Ä_ú)B4güyœ¾àéì¨Víü0VFÆ.æM5;þ…ëQÈZHÝNÆçEÏëJTÉ ‘9áËf}×ŲÐ5n4¨
+à•"ñìaÄ"^ÌûX™”Æ¡ŽšJU²
+î«‘àrÎçŒfë3&+f*ÛWÚ¦îTeþ¾!¯÷©´JØ‹€;óYp‚¯R+CX7¬þ0=]ó–ÓDkú[b"(²†þäŠì3‚½}ñøÓJ3¿ÝÙñàšÏ•ÒŸRfª˜ILj=OùrÑ”*íöòrI»ýЩX Å™ˆƒç24¶ô Ý G[²Ã…’Ýz¾……s
+W Sè±wñW;)oENï× ©{¼ƒ+³Ä(öÄ-âçoâq Äp|ùΪų¢Ž‹Pî7oáŸýè››˜ÔO`C~òĶ–åTÎð§‘ÒT©Îˆ ZÇ·EÃç‘L÷­&=£JÕsÛ¸vý*y,²3]äbÄkc}ŒÆ¢Û‡–w*k<׳ ·î0Ä`%Ô™"+]öãôh&ƒXÂг)¾“bÄþ Ò g
+7•b;⇼ó>¡‹Åñò/ý$ßgW¤:Õ\ž™*c¸ˆ¹H¤&¿Vüòúăj,é oЪé.öà±òë¨l’£|aÊÈc:ªËU¶”rÎîO•dMëhíÍA»¨¯ÐDNŸé¼¦õd«)L ƒZe‰ÕÁÚ×¥8E9Ùénã(!$8vÞK¨UºÀ$ÿsÄW$óÊ¥¹uͨ`P›ÊS?.®µwŸè0
+=XÍô`Ll²aki×>ñöŠjçhâqË* V4qÖÆ›,öTH‘Ƹž£Þ¼Îa"ñÔƒ 𠉽ô)³ý>|¢™ÝïWeY˜_< Ên#ÁmºU
+6_sE7\„½EìáƒÛÐõࢭÝ;iòO`\¾¨õR¤²ï¸Joø~zÃh ùWÝ$Œ[ƒÇwÕú˜˜úµÙÏ¥JÀ 'ˆQé“jXÂ& {— ®Çnf[Ñî"ý¯vVW !F•LrI¿¶µÖi‘CÃÁèU< )éu&¼¢?[6áж?j^6¬“(Ç°}>ß`kȤÁT7àBïìs¬OùE¤Õ²S–ª~Õ;ìœ[» w›ž+cTŒ²)P_û²:~æþëWëj]ý·¦ÖgÞUgNf§^O¾ß<âÆùËGKETQu2Í7i4I%¿#³¶X÷91q×q*zÁ¨Óò‘vã)| Uˆ‡~}n1ži1Ÿªþ4N°N¬V²À¼“GE…ñ“ImÅO`Z{ì õªûÙ»Y#_¤é¹}È©ªp»rviïóÕ‰rž…ãsY5Źڋä5èš½5èÁíŒÉ.“uô,UdŽþÂȪÁŽïíž¼·;zS¼AÎØ%¬‹þ˜Þ-å;x 5ï”ÂÀ#°zœáû;Þ…«Ú¾„ÊÈR¢Š VÎÜÛ©_{™3 âx±J?x3áÈÕbðo¸.ù‘ºà¯r'uû|’ '¤9L‰Úô"³3%•0ݯ…¼ã’ãØúIbš6œß(‹†ÏJÛÜ„¨….g#ÏÓÄý©™cKêœ5õ/¿€Ö,ð³ã²I7ï=ªãÕ¢öô)Q#P¸ ~]´#&õØð%™Kì—${-¬¯……–\Ê»´ÆÉLÔ’T>쨾þÈ t€Ë¯òã@^Ë
+Ôv—Ñdœñ«šÎi§%2¼Á-úì"7=»(À!¨2[„ S$ª±ØøÉÏdÉ
+ƒ^‹*Ì~T<ÉX0ÿ95vµû¦|Ô©¥ï-rý]ü>Ü°íg»Ä‹p¤åxÖ¶ék¶|EÞÛê¹kHão•õO[³€eˆna=ýª«y"y‹y5 ߶âFT•¬”+8ãfÜ’KÓ^’e¤-6#lXq0i÷Ì‚ä°˜›)Áõ!dúÚvóЯ¢Ë–2›‰Â{t ZüÉ'£jÛò½Wî„<TXQÜa[["GØòöjì^ñNF€F9já’àC‡tp4¸<äÕyàe[ôÑÏØŠ÷4Å]FiéÇ«rÉO1r{͹L÷8 L‡Ž¿Z6èp­s\Ì2ÒN&bX6\GzèeÝV¤W)}ÛœK,›ã u­‚?¦q„~¯È}ܳ֎b¯ÚPÙ|Rƒ©¿\V9v¬ëΙ³¨o£¾»ÅÎ;‚ÏŠ£l•üè ™ÙÜ‚!AY^Ptça¬ø”À4`’žïF8p‰›ò©ƒ}|&`
+a:{’g`ÿš_'F’/Zt@d,Ód?I+óȬZîÊ÷í­§MË7‘k´P“= d"Ø… QÞRùÂî ¿f³ÒÓÝ}$ú™Œ¨95¤‘™n0É.à´àoY£›çUûX%ªU›‘eë|Šw—®ýÀóhZ#“™‡ǽ•ÒtÅ‹ò1¤ÒWÊ
+’²õýžÎÎÉž6!>Ô»º…š•ünÎÓ˜h{ïò²뚌¯˜oT.f @Ç¥ÂS<fzчë¦+Û±¡ë×Na_*üÌ+HYÏ4:y³D¥ô$ÑvAéKd‡Çr¿«7/\²|œ°‰J®¸<™º³‰vn|»®BºÆç×|@ü9x>Dß±}é;åÝíëÀ¡¹×^5•"<ã†2>™¯7@n·?r[,iî­´–Øë¦F«èß0,Ø5IÍ¡W§H/?E]
+
+ù-3•Û~‹},ÛBÇ(®%å#.k çÓ'¯° øI ­}¥
+{G±\AÇè|É–`6#£D›äIj0h-$‚jGÖâbÆÖìåxüþ-è×±Xï»Ï¢_ÙVÇ)Ìð1–÷ÝDߟÅôC³º/ v„äÜ%¬JIMçÜÝ÷襨4±ãì°Ò£‹ç¢‘¨1 h¿‚m–7ÏIs´Û|:Åiä1~Ï]}„À5\FPD¤WíÍa‚0,œwD£$µ”]Œo^)«8=ͧI¦ZèUɯÝËÏ%$È=aåÝ×+÷A‘úçä› "& lŒ øè{LGNm„O¡KOÍ‘¡9ëÅå•d„Kô/LGÈT…œ{1á­_õö®êÅŽ»2ŠÊ‘z~ñy±Û°‹8üÍR\Á[Ó(>ÏAÕ¼‹Qíò&é[¯Øv©‘ùÔõ¬Ÿ? «(XÎŒûÓn`„5+çS4ž/iÞÔ”°ÃGvyÛÝ’Æ&¶(Äi.SÆ–CE=Ñ_Åž„x˜¸óEQn'¬öÊO¨•ñÇó8=‹>çs„Vó=Zá6aÀêµõ†…„ÁbC†¹#ËÄJ\ÁlŸož[Kvì«+90‚…Y»«…K¾ñËXX…“wÔ×JíÌQ$ _ºp»ÖjV}¿ú •ÃNöIJVŒSÖ¥…Y]V-Ž‹¶ÿ}
+¹òÈÔ20´xC$
+^ÁëÏG/ ŠAUÆw°$µC5ª1LÏ{9cUÙ”HñbJÆÅjG—"+ÄÖÄþPqR8è¸+oµ‘ÒÑĵãüµšLïVA†œ(‘¦#àœBÁZ=SRϯô®ÄmŠ°ý•óÌh>ñBwÞöꛋ®Ÿ±÷šh ^(-öwyU–f=sbÎ^Xz_mK>P[/ªªµŽÚX©ûpø¶tYܪ±öO³ÔWó*Ý(A÷C5Ä”t}¿ZñÄ7³YAŒ|ÔSDØSløÇÄJ7­”u¯ÌhÌjõ̸d]Ð7k¯=Ø],_ü`dósµŽ£L÷Jì~jz«”S¦‡i½QKS¦HÓæîyg¯®µÔÆõ®¸kËKÝP;ÚD/dÍ…îž`}•¸÷r¡h׈6¶"y‹GͯÊ-ðåL£ óàLv(Úµòy@;†¬ s€ŒwšKj ~ƒœZK™2¬;!u+뺲úÏã¨ÉS§ÂCTûÞÙåcu%±‰¥p·\‡ä¨gÃS?ÆQ³mîv[Ò‰t›5Ä ëŒ—^/p êå;¿F{æÄ K±¥¥{ë”×#§ù®8h6EVßvïu>f5²ãÎâ
+ݽ<2«vf{»{S´ÔÍŸ[,Àq½ÖmøXÔ‘%†Íqä 9ØŒž"×ÊqŠDÝ×[³Õ?–<ÑÀ:^L2m”N‹4¤¯uy÷«¨ª£Ëˆ«ùçzŠ¹p]ô[¿<:¸p5*¹™I¡ë‰wq\_jz 9Ö£‡ß®SÒ’6ŸmÔÌgÜt`†ímK¿Ájè€5¨ôìá;ў֚ɲbQzu=¥7…\ÏŒ"{DEÌ(DŒMZƒ#£ðˆ{amc…ëh¨$±Ö{PP{œ ÕyOÙƒQãQ*Æ~”Êy/,¾s%0îoŽ¦ÖM÷€"´–åþ,Ï—9øª6ílî‘¢9
+,¶bŒÿlÌÒ$CÍ¥0ÕÁŸm±ÁÕ0f¼BÉyðUPb˜Ë¹’`ò±­ µm<Sã%Dö¯·Ë* 8Qãuja3©ILUŸZý²}°&l¨2À,`-ÈqÞ_‡íO‘GŒlÍïqñz½bæªÐ'€ðеÿ+3Ú±Ýb¿(é3]ÐÔÄeXØà‘óE.,%²I°0ø:á
+A­dm¢üüpðܼË,è[ADÅFj}`ø'q/¸È¨N ê×=Ò»C±¾f¾Ëoª£à`ª•È
+OÎõ:î,ËuÄ%ì (d ý_Ÿ)…¯fü-_lêšîÌ╉ŠÍvrUEéTI?Q—Vˆû}ø?¾±så.¼ŸÆÛ™,ùNäRiHHêzÕD™frØ:{HG§×ßÀŒ+ic[¤5š¨ë³Ê3 h•É81ûÙsè–Åʯµ÷s5¹ÅŸa*BZ×ÌŽÄ€¬P_Ì¡Äõ-
+ï#¾Z^¥¹ÁÔ :§=c@PhZ¤É‘ÍÅn'¸‡èC¥cTÿOX‰0›Q©óCXɯ$ÊØfæ\·i²tó÷˜À0"Á©dúä¯,Á.6±Ä*[FH€ä3ÑŽ´E»ŽGkèª òzqä3­>ý_½óÃèØä#fÀz` 2îí¹„ae¨jÄÜ mïœÚö[‚Û„²™Cd…¦*jÜTÕÊO3Q„Á³~;ÜSǸk°I:ƒyê÷Û#¼ðÍŸiõQ¼BW, 77+ÜP
+6N‰‹e‡tâвÓmúûU«ux¡µ›SaÍ-ÈŠû_{Ph4m }åã,¡Òw»7uïŸqâgìd퉃\e³jrÚ+m>÷vœ5÷Ü •†xP|k *@Ïï5±ö@º ñ484'û?~d‹È·Åši'kT¯zŸ¿cƒáv(–g@=®-I¯°%ZNߢ6Ê2°Kn£äOY ³»‹Aµ¸úµµ›a¶²û}p½{梒»—ny§•€®æÅ·Ö½°ýV.o…¡€³” ®Ý;Á';H~ýØõËK‹¾[uda+ðÕªðN”ö°_ú­“ÊCÅ`º²%Y.4bu‚QòþAžŽÀµf­³ÿ¶û¡e]Etž(&í+El\HêÃöx²sãgF‚‹¡ð^q“ªiÙ gðùʫÇ!×YÄM4†7\ ê³<ÇÖ`â/èÊeˆ¬L… ‹
++fM»j@.Æ—!a±‘b¥ Mw®TûÑEó!ŠáÞîûºB½yõI†•þšâƒ ÚSAÎ32éA÷[ø/’+¨}>í¥¢Óì뺽q¾JÀSAÚË[yZSn‰ߢ¼šÓÕ_ªE©$þAs\7ö;Ðæ¶jƒ»øzþV¼ô«p­‘ÄñÎUìˆ&з§ÅÉ(ëƒ ìL•>Â|]£Oº²§Ý$¡<ŸŸN]¶ÔpöšVU ûz©1Õáﶕ$–z
+vc.ÝÈݧôü„¿­S®$ßYkv¹÷òÈ´OŒõ£kHùSÞÛw³ŸFçté6#$!¬`ÖÉÞ83!ˆ‘?¾±
+œVêšà P°ÔÈÆ"öh}Íþ áõpCYxC^iIt—ø6&7HpÓ™v£;âU89…ñðÒˆëÕÆA@úAÛµD—v$'è[§&
+C]mu!’äÅ&2TrûÛÇ'º-Þö>n#¬ðæ{³(wAT}_2XÊ×k1ƒNÂcB_#¿Ä5ž©)ÎHgê y3rµâ— _²•c?¥g¦Ë”èÊèâÿ"&ËWð4ìŽÐrìó\½è³QF©Ú×sc­}‡O”r‡Uª˜¿€|¨Fw~¿ŠF„ ø1ְȘŸø Œ @žØ§i»ŽÉ%¼.vó™ @—¦)]ü¸“ÒÎ|†JîºÚö…w ŠŽjä/ÎŒ~SíÏq u¯˜2~Òa©¤©WÅ$˜µ&Â…D†h¦¼]:£s¿lÔ1à ÒGRãX†7_gj4¯o³UŒ‘ )CN^|ÛÄxoÅfOâÎh•ê DicúÌ;^ô}䪫ŽøM³¤AæÚùžd”Â+¢Þü1Ù2¹Eq"#_åýóE{g1zÝ0oP¤… Õ¬o&ªrÖ4‚â°í±
+Mû¾ÐaâœV`oÒ–‡AR„Üþí§6IûÁšå’PçŽ+¡cöä4ñ®D”‚¾&º}7׌êHŽI–aÒcViú¥`ùL¦Ã
+endstream
+endobj
+899 0 obj
+<<
+/Type /FontDescriptor
+/FontName /QYMDQO+LMRoman8-Italic
+/Flags 4
+/FontBBox [-489 -292 1472 1124]
+/Ascent 689
+/CapHeight 689
+/Descent -194
+/ItalicAngle -14
+/StemV 66
+/XHeight 431
+/CharSet (/e/h/i/o/r/t/u/w)
+/FontFile 898 0 R
+>>
+endobj
+900 0 obj
<<
/Length1 1843
/Length2 16027
@@ -5532,7 +6983,7 @@ OñÎÿ1>†;¢r×$\×ÞÕõ ·ôI 4µ4Ú’ú#¢
í碢Ù*ô¢]P:µXc­žƒ<ƒ)(ƒ5÷õÝUI¥ÙTI×㎅Î[m±Áó”dJUå!¡…¢Ï0&å(`5í­ìXõüOã¿ ¾ïÎëK¼4éCm“.¨`xt6æ ‚,èySM¦/Pª77 Ð}Æ
endstream
endobj
-652 0 obj
+901 0 obj
<<
/Type /FontDescriptor
/FontName /PWWUQZ+LMSans10-Regular
@@ -5545,31 +6996,38 @@ endobj
/StemV 78
/XHeight 444
/CharSet (/D/S/T/a/c/e/g/i/k/n/o/plus/r/s/t)
-/FontFile 651 0 R
+/FontFile 900 0 R
>>
endobj
-653 0 obj
+902 0 obj
<<
-/Length1 1795
-/Length2 2230
+/Length1 1945
+/Length2 3427
/Length3 0
-/Length 3347
+/Length 4623
/Filter /FlateDecode
>>
stream
-xÚµUy<Tûû¿e²DŠl0fÆØ—dû2—±u•fÌÁaæœ1s˜B‹$QQ–ðM¤k)*í]DI·K7)²öIév¹¶hýžáV·^¿ûçï5¯3g>ÏûÙ>Ïó~žÁ¯§úì™tF`”@&Zž^^t4ÒOÈf ,Ùà FIJè\€L424ÄáñŽ\ŽBìDGA+€l†F~ Ù `*–8<à Ù
-p€þ~_?ÀÅ×ÇŸê·‘ˆ9ö‹åpîß¹8úÑü]
-[¦nåæFJ´ìs΂ÉÂfšÍ-Õ—úCœÒÛëÉ{â®íDyRHDÖ¯þ«ƒöIZ«ê<yÁW|7Qéuž×uÛælj µÞÈôNŒÏÄ¡-ƒrPßkS¥åçïlWRÙ*7\½[{'G­³¿½joŒ3Ș)šÒ­q˜XßaáØlL’˜9«8*;á;AJ²ý±k´+Ýçu¦;Ïêä~Þ}ÏÿÆe‡C,C¬gã…sçÏl$Yœ&Nêí«¨n0ðGã§Vª…ªè©Î6QÎÙŽ¦Üƒ®)S’[¬ZCK½í.¨´ˆ0sABV<lW¹ÿÛ/¦õ&Ñiy¯Bw)}Ÿ¼ûÄ…Hõé1°ë£ck÷Û½¯ï)ΘÍ÷îh¾®ø`Úsåíæó#§×¨¦‡gr6¦®«ùpWc÷fœl%1Y^¹nzU½iH·Sû\†KmÄØÛÕ{/ž®:]8··Ãø‰sÀ³¶¦3*Œ×™·i'–àþŠwÜ©xé°žÿŸšb¾wÅ]ïã–Å)®î˜±Jeå<ú9å þ•<¥pÎü20ÅÌ´H›Þp*¹è¶BýmIZníM¼Õ‹-Òö×FЯS‹’Ã2XuõcèkÇÁ¯HAžƒÅê™·R׃Wì‰é¼›î8È«Y¨µüÞGáopf\ëá¦u®›¤{?îIÌwSHmÍô{d¿ÙõÚ•Çê#¬(üÑDŽ¡|¯K“Fñ-<æª.¿2ëæo#O‰7„=® +:û=*vr\È©T¾aÏ‹6’ËõkÊOmÔ|&sq8š;’]o‡³íi‚¼mø/+úÚ:eåt^âkð+CÐÊxÝÓFö粨¶Cçúôs¤)6Sãoã5­RWßå=¨v¬¼WdZ"Ó¡W”ɬþ Õq’žÌ~b[yxzèåÄŽÕ)àdžE…V©ëw2 »ð|ÝÁ+ÎÖ÷²îþ°ï¹FsIk@dû¨–ÞÓ±¾öÚêcûíCj.WÚ‘Ç™lùygÛ’U³s…S{ñ—.@ºd’j…üþ¢å²¡ú׉5ûs5‡äÉ%¼©©ñ
-• —õ % Ì·„ýp; ­@âd`ù&χòã]yQ›^sŠóLõüð©RBþà§;››Ò¥´ê‚Ûú4Ó³zÏ­]úáÚØ᳞Nv¦än®2i‰Ú«q
-š”[O4¼j–$-×r³Î»¦bÄ6 {tŽ¨!ûÚ-zÑï yìhMÛšòŠÉ”n8Šþ‡ÕV=IqÇä+fÝ¢HïO\MÏ6ÌÞRöáÕµÞ‹`…—PÌù`â-)÷›ê·U·äÝ©uü2%ßÛ5Ïж Rd^¸<7 õY,]60jîÒvàüÙ
-û=+=Ø“·Z)}Õ塳ùeJŒpX¹Xº@ʪ Jü´–_û©Ód탳už#}[MYä©ÌM´ì“/®¬{& Bʺ¯Ž•äì¨}<㢾{êaI,Ì쥷T´Ð$Ä¡ªú/;ß_ÁçÛ’Þ®˜B]ïFm'r‹.ø̤-ˆ>CuŽÅ9jÌg¤r›½íã•l"®._·WÅÄè„þÌÊ4ÿuýÇ·<:ÿnÿi_9aתç»êu>´I–YZ²c¸:ûëì©Ç:3ó-MÔüóršêvoœbº·Ì3"$X§vŒ©C93n¿ìŸR¨n¬ËÒ‘Ýyãq²©âä®ü™ÉÔ»·:+Dí¢l±šG×hI [äßè¥Óïk_
-ÅKeµƒPRrMÎæ
+xÚµUy<TûûOD–,e'Ù™cÙ²gßÇÖr3Æ1gÌÒXBE¸–D¨(k%´I)]*7rEYk„¨P’½ïÝnÝ^¿ûçï5¯3g>ÏûÙ>Ïó~žQVpóDXBxp7D¦#ÐHm#ÀÉÙGöŒ ÃC$Zá1H8*€Fêhkó)+[QA‘­qtÐ@cèÁ€'H¡ƒax
+À*†|Ê€-H©0à#gŽÃFR@4 †[?¸A4:£Á0H"’AuØÄ
+¢DR‰AÁt¶]‚í‰mm‰p¡“Jpä@ÀéŒ\ &,$jÀƒÁ8€
+’ÀõÂ0Èp9éÁà7ìö
+@À‘h` ‘
+Ü-*1b¯6<5hX¾ÿÚÿ¯
+da~K@9¤Ìô£—ÓÅ¥v)9å=œéžóÜEÿðÌ'{iÆê|ÙÍ“Ûý¹l5ÕË‘$x:<eB‹›VØ/eØ©ªÄŠ:†E½æÜ&u¯ÛÔ$?j¿ 4Ü+a©`Ë
+Gà!¼kê…jÛÝ{=u¢²”Vî!ÀBɤÅ"C[²(·¶˜b­Í6[ÊÊvoŠèó(ñ5ú¢e¸mžUfÏ,ˆÚn˜u¨vBBUNzYKÊàw¹ „”[BÓÎÕ|S²>ק¨Ÿ£ªdƒ8"CÏ{#‹Ãå¦7:…Üøí«\òÊRJ5'± Þ>úNä´îܽò>ÙæbQ²«¦Œ³>b¦•ÂíÏ]0x*u‘!÷ÈŒyÓ±ÒžÙ£Åõ!éRŽ‡ÒiÃt¢‚M wgFkI¡$õ±­_øÒ­=HÙD^Ì£Ù‡¹§cÅ;,r®q‘¦XÓ‡2ãš#”’&tüÁÚÃt/”ù——˜o·±Œêà;æö¡åérç*ZcH“©ûtZ„±Æ¨×B@íáWW?W¤¹gܹ}‡…âO?Ê@ÐG‡î;·íMÉÞC^;0áûé×ΠɺÁçv …xj~jP8^¿X»Ñ¢½8ü$Pÿ÷‘Ùó|ü»Žg«\ llõF_žÐ[ÎÎ`ŠâδN,1^Ä‹<IÜoÝÊ7Œª
+–Ò˜rXÈý0æÄJ‰Ϭ ·^¹e-–ãùþ´iú’ÕŽñ«Üßhú­yÝÜ4)Øf¯JšÚëŠ\xY»uÍ ø}6¾“Ò€V©;®ç6ÏgÄ•ÿêÑxýšzªÝ†/G‰WÕ¥º¿>æÙé`.æPMi¾ÿN‚U_³Ñœò¸#\ðaÃúßñìð•ãÙ@·ƒÛÏ> ðàR§™«•Çb2RèÌ°‚ÄLæ1å´ÖÉÆòˆ¶‡ oæøW«ßž*v4\$ƒ èÙÍ çuÕƸ^4„×)Fņî|DTÑtûÊ
+é—¸=Ùìi¼¿ˆÎ+]œÀc ˜}®v¸Õä¤ "Š9¼>7zí¨*ëan¾³c˟׮9I À¼ÑðÎÑÇT¹1úÛ\ÉÖ®/Qò¦^¾ùúâÄžŸ(òº'MÚ¶OdG«B³o[©Ê©xqÛ¥‰EƒÂ“g:&TI»»$ÉÎ ÑYz¬û ó<«MŒ»jv
+c.­½ÈÙÔhV=Ê™á&®rp¡—ùºrµ³™õâ dó¾†wµÒ­’ è(6ͽ'à½årÁ¬õMœä±æ%«Â7UDoìZ$Çñ¼C9‡žë
++Vk0Ý øEºí™!õQCIŠ/ß\8ˆ|‘4áÐ<ôÄ犛…[ÚÊe„L*òmhVvk4Û¹F{NjûláDmo ëÙGĀ̦;6Kܯ¸ô{›yX'åõ.£[»[žšß× 1"}þõy­Xâ
+Ýl‡^d]ˆ£c"ŠkEò¯/Œ§‘ä*.Uv4˜}Øæ=}é¯÷xþÄò=ØãS,Á]ùz~v[öÔ-=¸îÙãZtXLKõ cäÌyÂ{3£7i¤^‘ÿÍ‹eÕüØSÑÉ5ƒ‰)ÁÚeRÝ&™±Z«\Ö ó«Ï™kfJ³w]–Ð_ö™ÌsˆÝJáªÌí&yï9;Ü[&}ÈéòÂW#3 r¦éÖH‘LF :ÑÓ˜»CþÑÞÙá^«ù α¢-úØϽLßSê„æ=ä­6¹–*º„lîÈ ã\ ¯„·§Wòã«GηöWÔ/3ÉSPE
+w·GjOGbJìþ°W¹àú²çÆ î—Ëϲýú>776_ÄL!?.’®Õ’¶8#XèÓ(5P•Å&=IîJ<tãþ¡o’,&9À"vÅÇ(w([]Ûˆ©ç½?á[ï÷G¨ÖÙ‡ˆ{¦‡?Y½µ!öÌÖ‰/*Ä7Ïßö‡p~ÈßYqÿàÊ$ƒ
endstream
endobj
-654 0 obj
+903 0 obj
<<
/Type /FontDescriptor
-/FontName /CCXVUN+LMMathSymbols10-Regular
+/FontName /GEOOUZ+LMMathSymbols10-Regular
/Flags 4
/FontBBox [-29 -960 1116 775]
/Ascent 750
@@ -5578,34 +7036,40 @@ endobj
/ItalicAngle -14
/StemV 40
/XHeight 431
-/CharSet (/L/arrowdblright/bar/minus/nabla/periodcentered)
-/FontFile 653 0 R
+/CharSet (/L/arrowdblright/arrowdown/arrowsoutheast/arrowsouthwest/bar/bardbl/circlemultiply/minus/nabla/periodcentered/plusminus)
+/FontFile 902 0 R
>>
endobj
-655 0 obj
+904 0 obj
<<
-/Length1 1687
-/Length2 1361
+/Length1 1706
+/Length2 1447
/Length3 0
-/Length 2400
+/Length 2498
/Filter /FlateDecode
>>
stream
-xÚµTiX×®U±FAQÄ#‚‚’Õ @¶ŠÂœ$#ÉLœ™¤¹„E¤ÞG´"
-j¨l­»Ö•"nÔ¶VkAÐ*ÔzJQ•VµHg‚Vå©?ï“'™œo}çýÞïxL‰“°…r<†ãÅæsxA Z,F(•Ä¨ÉÀÕ¤?;*uj„
-“A‚D/ñ± q/]X¢Ójqâ–P‰4!„ c¤"
-DMÂlTéËD"YP„f›^w¼ybñ•Q´æé½aY«ÏÇ8ô›i$/]/Ôàéá×É‹ÞY9Ž©@,n NÑÚðüÿ¬Ü€^á:µ:Ñ@Ï'v`4¢AÕƉ—Üž18¡AÔ|(Ž <¥dª~’ûíó)„^ !¦TCÀæûqx¾>ýžfÙÔ´ªé› eî6Àôà¢õ*ËÄ IŸYV¤‰
-\†St
-Ðê¨l À 3e>ÅEè!P2SCwaܬ7ñÄ1ËjïÀ·˜õ,¡<&¡r:ýµ4òhåði;ýyùoÑ <^‰þµìÜ`â¶ÀÏðýüf@?û<YÿebU,ÍâË3³É
-1ÚaŸ„[÷Õ~WÑ­ç
-¢·Ï©7ß,¶»›÷ÓW®òIª÷«üJk/”¤ g
-ÇÝÓ=ü‹|SÚy~Þ³ïx—ƒ#4w6Ô—Ü°Y;ý˜,~jbCøŠž‚C³ºÖîqZþá5×6N³ÜÉ34}â_=ãe‡Â…†œwvM íGË×°S4ªVÒXƒÚö¶†<¸ìyú*ëyˆµ$Æùlc^ã£À¹S¼ôÊÄyÉk‹ëݽ"4[nîó]éU—ñ·þÚ‡õ°Ý:†B‰—¾ÞRÛè™ÍþóAEKÃÏËöl_B%U}¿záá2ƒ-ÇÆ»ó«ÖhÛçŸ]ær¦³LUø©.Ì÷Æ}çgûš¶Ö "Ðw#+ÛÖ4ü¹³»ÞmNŽãÙî§Ý7.ÍE\ä¡#W¸x$ؽ¿håoöžþÚçSô5u²ã®ÃhÓŸŸð Q¥cmžÝ[V[6÷iAVä:(Fé‰sä"[~Éý Ó×ù»¶#Çx½ß#Í7kV©HÇäã͖Ü=U¶‚—ã¸÷ãa6WG ªK‹º÷žˆºôŒØTp÷ά¾7ö½ÞÕ涙®Ote×=j*–´ïÇ»x¢iÞz nç4:üÓ–FöäCx>«¥ûyÆÁuÇÌEŸ v®m—ò6ÚÕôVŸu¾úùàß•?N­I?–ÚðKu°÷>çpÓ0³°Yâ½i£2²t÷¯ ÉÁò¡ùEÛEiuC·JžÉRk÷ìw^‹»ª§OY¢||¥Nž<õ½¾EÒªšA^Ã!»ó]ÝÜÓÉGÒò¦˜:V|ðî RxøaÛEÛëns³ÀžÉú?~èŸÔ`Þ¼Mlô?<Éò/ǺÞ:jýÞ¦t»ÈÜfÑxðö»ÂO?œ\xÄP㡸Ýx4­*ö«¥?y»Èþ¶/¿Y
+xÚµTyT×wÅ ‚ * \Q4ˆY)ZÁ
+Z·Z
+9žÖWÔJk­@ŸŠˆOäo&hUNûç;s2“ûý¾åw¿ûû®óÂp)G$Ç“`
+!€€+äóYÎÎ~D(Çü
+®‚”H¡†‚ê$H
+‰Ôk 
+ c@”T!ë¢Â¥.\:±T«ÑàÄK.~ÒȨÀåÀ_)0z9Œ’F2ïHˆÑü“—ƒ°HgêÐŽL¸D)ŠŒ  xÌ€
+ÀÇ@5ÝJ:ˆ¶S£A19Ucð­2J„4ņ†‡‡5‚bÄLF;R¥%A¢ÉFÿ |éAü´ÁÔ¼‚ˆ?˼¢î‹Ó;Û¨2¤#ºñ'†`Zr˽y{Û2#Q’"Ç2B @UaO2g†b&›D –FrBiía NwãRi”É›É'ò] ÜÜ=—'`d*Æä~¸ZM“&YL÷üQºMNèy£ï ×a†¿C(&W0‡ ×jxQºY ƒü_ÆÐ&Ök[2¤
+áÅ ›ŠV5}3¡ÌÝ8žnã Z¯² ’$¾g‚ ݘqäéÓ`¨^ˆ(ÜwÃ׿ђÉYŒÉp9Š%¡Ç
+€¢gñi=<€A@Ë^ÓL
+<.†StÐh©t À sÊ:Š‡Ð#B dŠš®ÂÀ&DÈ÷
+8¿žƒ7¢}}ñ4p¼ÜÝÀÝý=àé%H+N6v¿˜DL7öÕšn
+ŸÍ?Ï[“Ÿ×´Ø%P½¯í˜Û'ÎXM±àào£Ø
+sʨE l+O£­ÿá
+®Y› =ÞÖPìý{ÂÊkÑÏöoµQÌÔ)¢½ŒkãÍ=s—îöpìB¾ãÿˆüÒV»SO­µ¹ñ8mzñ*é£úâü ÛêL3»5“ø ¦(§·¥úûàëCÄÞí>L ùa¶õ;Ã;®ŽƒÚâ;εû7uÇ'Ï´þpžaMa)naoðy{KÚá˜Sx«½$éäîîïŒ9e“ºä§–ë-j‡k.:Ü:4ù^òåEµ s¬©’_k|–s0L3Š~‘.ß»'ymÑÑ….Wb|äS³rŽˆ§xÝ/’Ûol¨:î;ªZ–.Ü”üd£ÏÏò˜EïŒ(ÖZ;Ñ%p:ätOÒzŸ9“¹Ðð`GȤïIÑég×Ìï8y§‚ªº§ÿ꟱¾Ùx¼®S¢÷8Øäg—o¬sì™:³°º5Ñ"(LædV4»¬ZR½»ÜW´ºÇ™Î]õõ²ÄÙê¸/W󪪜Î$&¬hŒ+¼z`UÓæ@Å„2í mЮÏNʱ±ÓÿØ- »¹ÐÈéßïR`–é¡©mKȯ˜d{d«}¾@_`VQ÷Øuÿð³ÐÊ»NlIôh‹þùçj¿kÚÐ}…]§nBüc‡Iý‹­†´7%îœ9åàÍÏ…>ŠŸn‹·¤Í\}'çÕÛ±öõI³<ÊZ2ÙÖŽÕnõ…ª{é—ØÑ[6³sÒ{¶Y°Ô¹Ó&:d]›sµ`O|]À ?¶}¹ñtOhƒÒÛÐçãüØõ}'—Žxt:) ›±`Ò¹£vŠ{ÙCý%O>îí»sióõIÙ@?pa/2}:í^쥲àióžÚx^Ü#ófÿžycHêؼ@RÕW&ÜìÙ³Ûú°ël–ŸÕóáq VWx©ÌÏT™ðû{,Cº¬ž§½ø¦Ç'~â!G嶫cAû °3#%{æ¢Àª+…Fù6!ßÌ÷Þ'ǧ9¹ûl~ š….uY]ùdJŸâWËš¼»ÊÓæIqD¿êÜ9âî79õy‰÷Ï#Ù¥Tüzö
endstream
endobj
-656 0 obj
+905 0 obj
<<
/Type /FontDescriptor
-/FontName /VCFYYS+LMMathSymbols5-Regular
+/FontName /KAPBZZ+LMMathSymbols5-Regular
/Flags 4
/FontBBox [0 -944 1448 791]
/Ascent 750
@@ -5614,11 +7078,11 @@ endobj
/ItalicAngle -14
/StemV 56
/XHeight 431
-/CharSet (/asteriskmath)
-/FontFile 655 0 R
+/CharSet (/asteriskmath/prime)
+/FontFile 904 0 R
>>
endobj
-657 0 obj
+906 0 obj
<<
/Length1 1744
/Length2 1898
@@ -5643,7 +7107,7 @@ nºá·ï¤†<þxßÃß#8ïßÛU¹Ü8BI[˜ö†Öcx¹éz§3+o—?ß=ø¸¿cD;‡oseWnsñÉùˈú$¹M¬ØÂÊJUî[
ÉPnÄñ6QœjuUõ‰¦î‰]#äÐ)½¢ë'ñÈ ¥Á·ŽWÜÐ=ZóÐÇ ô…Ö],Uowȳj#-ê©:z€L¿ùêô}©¾ÎÃYQìº5µº/ô —ƇHÌæuÊâd²Ž…^Ç’¨ÙÏ3K({fêP7žÉ&)¿³ïMh 2;,fõäXÿ3
endstream
endobj
-658 0 obj
+907 0 obj
<<
/Type /FontDescriptor
/FontName /PVOJED+LMMathSymbols7-Regular
@@ -5656,123 +7120,137 @@ endobj
/StemV 49
/XHeight 431
/CharSet (/infinity/minus/nabla/prime)
-/FontFile 657 0 R
+/FontFile 906 0 R
>>
endobj
-659 0 obj
+908 0 obj
<<
-/Length1 2030
-/Length2 24210
+/Length1 2196
+/Length2 25927
/Length3 0
-/Length 25449
+/Length 27218
/Filter /FlateDecode
>>
stream
-xÚ´ºeT\ÛÒ5Œ;wi ÜÝÝÝݧ!Hp‚»» îîîî‚Cp×ð’síÜû=¿Ñ£{÷œ«j•¬ªê±÷h
-R%Uza3{ „=È™ž™‰ '/o²—sff¢±·5°001±!PPˆ:­ìAbÆÎ@
-TQTWR¥fxßXÕÅÁÁÞñŸ¾ˆªª©KÒÄ„ÔÄ@ :€¤ºªÚŸO5 ÈèhAPP{_ÿcç]𺼸š°š¶’83ãŸ
-Â_»KƒÌíÜÿ ß=ù×Ò? €ê¯¥~ïN3{­;À hŽÀ¨`ïü^TÿÿtÙÿØ’p±µU0¶RýOFÿWÌØÎÊÖýÿGFøÇYªÿCÛÊIÂÊ h¦dåljùWÿAK;¿×½0ÈÂø~$QêZÉö½fßçŽÕŸ gæ`ýŸµ÷r4µœ
-XØÙžÌïåltû«L
-i£}™-6iJJ ¢¸bü1.^´Gü‚f¹8iÊjÉ="óZÝ­®*¸ŸèL~jœt¢Ì<ÃäU?Ê°‡•Ióc;1_Ô³æ¦ÿlH ϾÅ#-"ž+9ÕJÌq ?ï§t©YTrš
-áeÌÑj:TÈ\úfÁ-sbÆé¬éO¸Æ‹U
-sν2ÿ“ü,¶²NYAëú¦WttÕ èmV/P%3V.ES5¯u±.(­æY»Žª ^ €ur,‚YX%ê<#ë–†BÒóªbÊÒC˜ßÈÌ´ýºÍ•+n³câEÿ•º¾
-ñüÀJÔèR׬Hj|PÙÞöÃP¡HPö1LÝ1‘÷^RåÔ™
-tÛ°+ÌÞØiË™çl` e-7#r~sÍå
-]y·®Â›üÆ"óªl,~,^£{BnRÐר ÌŸ¡F³¿3êgŒþoÚo!ô+渽’Ý(Þ™€ò^ƒû{:‰&oÕºOYßÍõ¤G]9¿¸Ï:vJÁ¶†ëåÖ‘Úž­õª*$*†îÄ’owK”´÷;÷»ˆû¬ Ûžß5Ž¥Ï?~ÿ|šÌ·Â6Ûqj蕨³mZx°®µØÕ~R4È3ýÂÃÌÏj cp¡ƒÿ<ŠLs“§S†ñš@™Ú ª€©d­b~@+iú„Ð_x?ÁL¨&ú ˜¢ŠÀ’ožïB±AÒöÅÜ=ž3ݲпÒLðµ¶Y2Φš¶¿HªÎnâ¿ mVüÀLf5<aº=úi=,1ÊF.
-x›+`›—c¥†ò#n >´¹ÃYÝšiI,ÿJo8*·fÛ+eÝQ§)í¼J’Ï“äpÙi¨”ÚGj W¸
-nA(ëF;ó¯Ûá4àõ‚8¤ÐõoöĪC>#eˆîÈ1(_w—ýdï±Åö#õ”¾£$®gœbòÀÏÚcÃ{f¡Ùœ_mË]n–mRhs‰0>t¶Êõܨyƒ”ѦqŠÑýt'Ô$Ìå¸'#(·¬ÐIØí\s1š¹xcå (Ÿ$<èµqPÜÕðX2J,Ö¾Ù G ª*27­Õ;«§¤b~Ë“á>²YŒ@™ækÔMOOŒ|Ž
->l‚šóÁ›e2Ç©2L˜ˆJ2\‚‘nÄÓ[ý²X¹7l/›÷0¸Œämiú>sŽqn:A§Ð„
-R¼+y¸;¯JR© òÚéls!
-JöŸ£k»¿Ä7¥ÁË–}“K.T½9¤²ºŒÏ éz&ªfšÜÉ´Ä ñê*çƒ,Rã­XÒ´‘:1­/…9¾–S/ÙôÐmMÍÙÛo·çd6†µ~Þæ+<$Œ`Çœ§„Ïs?Ü™·Š‰7€ôñÿI A€èâ|»JaÛè
-§§›xíz
-Z»ÁcåH꧿»DHx˜Ê¦ƒ§2á5²’)`–‰Ôxìï!'ªoO…·4»}¹U½ðèšÒt!oÆy_ÐLJ€†’HMÈqe­÷ïˆGòeœí‘?ºI#ì<ØÍy3·Ÿ¦ZÂÂÁo‹÷m¢jò€=O·C4O¬|ìOvN[ôèØš2Ouš¤ÔˆqK%ú`,Q0<`ÚüT…—¸û¼ºù½!œ“bH¤¸¢y[›ñû„pí·=ÒoŠ[{HukÔªZ|Û'Í*¨º_IBe^&xÍè0M⽧0ú¿ù°}ª‘ˆ*²huˆÿáÕ‘:%¼À:¼“lBä…é.‘5¶‘{Qáý|“!>c»Àç ÈÕÙãSp¦°0ÊV'žà}SÈ®=íªojø1°¸ÆX\Õ0J‡[Q˜_Y.oNÞ|ÕÊ’‡¹¾µë|J¯@ÝŒªþ$MIäo®Zj²ÜÈóó–CÛàé kûyÃÜÀw.óÔÚ[‰D°že98—᎕Tåb™k»ú²» Ë´¬Ö£ñ@b²+ó»NzÒ‡.z'…×VÈWtìiå{ëËõ)‹H˜È^üG^ùqܬÚ2ñ.JÅ–0­RFŠöõøÇÈ·l~-?xÝäç:”
-¢ìܤ¼ü<p3 ÷¹|i‚Å«C‚iîÊf´U÷EÅ}SiM eæÁq}Hƒ ¾Ä4–u@"|¶m©Êü[¬‡•£­¯Z#%³ÿ)­´š6Iå²ãÕ‡Y"aäSõ RɃ`;V/ý¢Dì5u-`ß#û9Œ‡–ÛyáW=ÌÔ
-{÷“}Œw*,;óŽyO'ñp±ÛKïpüU¿Œ¸äˆJ¦±Ý§’W`òŽ£ÒÓ€ø—Êà‡˜`õÕ?Ü’Ä—ãÀ;U’xkð‰ž(ß‚¡ñPáx`TX»‘`³¾ÞÆG^#ÕöçÍÿH_þ¾û k%Ô¯ú)-d ÙËhb ì!RÎ"óÀ ÒBROèTëmiæ’ˆÆéÅ‘vaÀÒöi€û+2ËÚ¥­šbª–̨»–é´*ÇÅdq‰‰e#Ÿ#ØhaÂe‚J‚ãnš2~ñ˜¡7årþF·õÜÓpG¨EªM'ñowhVîd¬òÕ*ºG»ß°k‘Ý3†pŸÝƒÇÃÅivM{¶ Ø
-´"¶‹Vìm½n Çp *d,­Krv
-Ãàt åZÁ܉÷âŸåËT#©b:¨¢O›ì˜ÕÚ#ĘÙcÚÏw{b9¬
-Ƨ –Q«q¸rízªbªPiÓÉ¥ÿ$ýZnÝÅÁq
-@E» )µ&É_ë
-^=m¿ÀÔVC!hÝÇŠ QsuIºØ ÇŸµê¸ŒÂî,ؠͽZ•vhûŒFVƸúõƒg{å¦/MýùûÀçǸ•Èª†œÆ¶=žõ$Ù ®J¡÷ûN™ì®Ž±©)I:¦"†ÞOµðúÔ¯¬‡ÆŒ©+g®çDA¯êÐMz­W¸´Å™ç!kê¥3³}©ynP‡¬1*Í9Îýýb¨XG0ýÂ4e,6š‹Ã1†ë·?¡]5ÒGS
-ìŒgçn¤„™›Ù#'Âè.>3‰î¢Í^²—Œ'[Cn/•­HâÝA[Ö F·éþê;—ÐݘƒØ&ʘ••ÚÙprëÖ5Y‡¼§ÆÂÔp«û¹Jéõšî”º_|øñÛ5ÃÏíj$ÕÍ”Ðzõ¸ò¸øt"ñœJM¶0g×VÝßpWGÕ1„.õlYQrÝ¡È°»ÙjË'_Ū€³‹n–÷R¹Ó5mr¤;ë¨ÀÎm'“ÚÍoÆFþ?ôÄž¸æ:ˆP{qŽ5šxyϧÜ}»›Y™5¨aµŽŒ[Æ°rÓ÷á!)K–½€‹|˜mŒÒ§ôYß75ÔÀÖÞ¢l ÷xêÐdÛw•QwQ¾õ’l SâsYÎS àJ"ˆFwÜ·@O-0k8l`XÎ^Á˜¶“U¶$ô·
-}Qùú °³|j¯TiT%
-eM¶º
->àA iž/pTjÎ’ë¾çêmD:DnNF„8Žû­a¿L—4†²Ê†šîeS—¸|;«`Ð[‚J š‹îá;Z- —?tÁ?/ñÞ¥!æ B‡ê±™FÃça(u™ÙEùX¡T«þÌ€@Ú§àíñæ!xT…=ZÑB§““÷å7
-µ=TF»/ÔT™jK‘É’ 쇗ühÚ®]³Hš,YV®ÕFx²Jë$)ZØ{÷ĚÕS?®Ù¨FOï&šo†lmôæÉ\ î/øöµªÂ=â‚Þ²‰Z3ú8
-ပVÁn’è»ÞáÄÁ¿“ðÔ.ð‡Äh¬ƒ~âÊQqZáA€š>æ”A\B2`+wëT|¤sC5ö™˜Œ0®5Âín‘VÞ~„±¶›´z~áGÔ3‘Ä6†]ìÉz¬”h¿+”ÔŽKx0ƒŠ¼&QüYÍv§AÇÙˆÿÀ‚m:Ê‚l&ˆë;ëõÁÛ "•êu3BEÀËtÖ#…ST…¸ ºu0}I[bí}1d]õƒSÀNË"B(#®ˆÇ¶ƒj°¸¶/’/IˆSëÒVòׯò'óñ…ëMÍ1ãVBÉŸ¡ïÖhø¬ËÁ2ç I„û‡’N.½J“Sâ‡M",ᇲ´Ø†;Ç[
- ã—W>Ú\Â.:µð2þúÆ̵ØÆäü6Ɇ×zWp$bKC—ôlAYºÁOCÕk¾–ªÌi:'¾{ƒ*ò)Òþ|gHõòÃ"2êRˆÊé06!ØõÃ1²E¦õñR|Êó¨_º§­„.¢otù\òQÚ ²×FÇ|J%q_FbzuP?*+(ÞaÙ ¯­žâ©ƒøÆÜÊÊl:^"!–Ü›„ßÿ
-ë¼Vf1Áèɹ­âì š„jò§ŽáÃgiÓ[|™ó(_ͪHEÜ£²Ó¸¬ÒXb©…Cö¿Îƒ55a÷
-3m®§ÍQLí¬gu!óE5ê0OuZZRd蜥‡L¸ZçÅfKW~Ûâ0´úãÂ3ŠùM–MÉÏüdÞÓ©GK‘3á‹È‰â–CŽ@gÕ\H%m‚!1úÍÇ—¸g7à}I£HéLŽÐ%'j×f‰øÿsÜ‹aoá.R@"ùjø³ê]ÙWY½šŒ€ažÃ%Ñö‚ÊYÎ7Z<ŒH‰ÊÉé©æRî<¥¹fðËå^8¨évÝy tÅýqŽ§R¸‡j,§ä)Ó±“µP‹ñrÔ #³q2—!‹M"Jsõí·Ô=x~²˜_–¾>Õ)Ø„ùGq‰1£[‚ü×øÒð€ á¥Ñ¾ÞI06šõ°)«HãæsÌŽ}çh9ŽQ?ÊÞ6‡ k®‰1áóÓgÉYŽËM©èTdéôî
-œäikÛ+!Âhx`5=÷øÆaþms;D4é){‰”/öz€œ ‰ŽÏÊ71•Á¶I0õ*L‰¹‘\Sr$}™Dq©+Û¸^‰JÓ_[¥L?UI
-”¿ZF~‹4[!\¨ÖÎE$ÅCg9×Òõ??i¯&ù €±çörƒÜù‹À_(F3íCìËDxR(¬TO£®Q.|èãò‰îî{_¸
-Ê`Œ~YM:°˜HDYOKÞ NàÀ¿Éè4aÖ -ÿ1¢e}éã·(2ô%‚θ_òökÍ…¦ïbxi›ƒáøyMÀn˜ŒSµ®fB­Ãª€Â`fjïz“3¹j‰%L6P
-3‹°’»Ö…a ‚c)Ã"oeÐeøÈ!¶ýLûö²•ïf°~D›r6“!F­ä±0¿›lZ0ê4Êæó©]zhm6j›½Ño¾ç ?{ U1 vëç@ý6ð&ÅÛß oYæVü£ ÜEƒŽA1ãnmp‡c©ïÄEéós¥»Ux4Lõ-m¥æa‚ úˆÚöw£ãòVØ£J
-Ö–ž¤_ûÈH/+Ǧ‹·Âã‘kèšéajüN­¼«î,®d ëÕQn0$çæ'¿ñ$í 3(tÅ ÂÕ^ˆKÖÙ\n
-7W4Ó(M#D²}HZ¯¡võó™Jº}´—`"6êZ°K÷".ÓëZü<J£­I}g4¹>.Þ8Y£‚¥O‚œBT”(!8ÌÆò™k&Иµ§’JÁ‹D|™E>H²pÙuPx‘$‰i‘Á‹g2ó0RGn…†öëÍ/@ƒ¹ÂÖ¾9*ÚG_Ÿ†bJö“U
-·-'NgÁv¶:tA÷SK¢R´«„\ñÂÃÍòÆ‚€}éÇÀ; ³œe¬¡µ&^ߥRNàÃÛ«lÐ7û/\øšI¼²aÜ>±»TjžÚ€‚`¢¶ÊØj w˜éˆO‘ÍŒ»Å~ªScM(ÔM°<u‚žÛ°(kg’…Üc6cûAò4x^]‡å·P ›¨Õ”†^fqÄ_?ÐDÏÉ ‘ëL?bêè¹’à5¤2(çZÈR\ìY©
-ÛÚ~½
-‘]…_?÷-ƒ¿5ÐŽ@¡u@* í7ã°—1íäëD§Æ¿ú—(ÛIŽ#,†¿>tꪗEhÎEõús£8é­y¿j.Òjþ‚Õ—l¨þîh0€Š®r÷ýºaª|é+ŸÈžæs+ï+Ùð%Ú­jÅ ¸d{¸çy uÛàcGÔ‡„þmu’^Tú;¯!’1%¿*~壄ÄT—ÜbS:Oå›4øBîLüþé„Êäk,Í"$q¡Fñ‡"±`Áåc­Ø0„vF˜HÇöôÊÇwräû‰bä‚ íÄ«¶%äÉ”êëæ›_
-nœ›•&ÍÀÄ&š N²cß×·Ãð“`Ã¥ÛÊ[ƒ)åžÉYø}ÒÌ=Ïd½u¼"Äöq:jD$Ïã_l›p' Ëeá°)ÂPxµÈ£• kÿ.ÁäÃ;Ÿ²t¹}K þõ—õw†À+ƒ-î%4]¡¬ÍßÛ.¿ È™/Å]™MÇ‚b+Ã!™•íibŬ‹µoZÉ¢ßMàð’Àk­G*›è]˜‹Û‡0p0ä}EÖ}Ãb¯ßŒ¡„)h7r˜!Å9&Õs°"|WA4ÓÉ™—ɪ¨¾µ¸<§Ó?è:óƉ…4Ô³˜m5cï˜\L¤H`feüY‡Éh^ºÔN÷é:|S5¤2„SîÙb7†â ^<ô®epZ#š¿PyrRc|Åvä¤Wþd/Ût•A¡}óX7µÉeº×‹Ž×"?
-4•‘ûXZq²ky²kW­|Äôä3žã_Þ0$R ,ù
-z)'Æ:äÇõóä«03+AÐúöapµä¤uÇåI“¦ëŸOË^Â6¥ÓXø#ÐÓ£O¸ÁrÆ @VÒ"÷V¬MxŠ+×»Ç73â;ˆ+U8Ù‹-ÑaVv—›¿t†N Û{Å´(Ðüèî…¶t¼دå-Ew¡Tç9÷²Å_ú+­y·¸Š~;Lêä¹ÿªJFêDتçªE<.åY=Ö…c¬BŠq»b4nô×ûøÑ?xgAó8æb1ÕZì^¦jÖk«âž¼
-ßje—@ÞO|«w†9Ä’0Õ-HcátÞ é>»Ø€C¾è¹Üp)øû¦Úòq:aeO@ê‰NÏã‚mÓ
-*À·¬ˆÎï'Oó¶ô­zõVUÙ?~4ÛÄX¹Ý(TÛ
-Ž×·í÷¢Uç¡Œ£r¸áð
-DÙ#Jíß®:·ÁÑ7ci!Ì ãÔ¨d„›Vh›q`Sð1Œ<£.iÊjoƧ–‹}†f†à›\ä•Ÿ&’ÂGŒi9·Ýi¡j¯ZÆ«*ñô›~¾›«Àw}qœÇ¬¡ùû¼LÜæªß(—rc«Ç•Wë
-ý;Ó™<ësuótÛ#ÖÄ·2 öOÒ;YŠ 8¥Ê V–·*h´WTdòÇ£ Ö0ÑÅÃæ|^À¸žM§%¬U†!dúHEËç¸Fž½ˇJš%¯ëݨïWÌžwW¶O„† 4MÐ!,RdMN¡ÖÂîßö ï¶tÇÔózZ
-Áë¤>²ÕÈ(¤†r›úàÍ÷1ßiN ‹L)ú`Ý ¡a4*Pê•Ð¤"Ùé•ÄŒ»ÐeUýÓxÝíHЬ§…9ÔÆ“5 oÂÔO¾I_Õ
-Bõc3.@æGµ·sÂaÜ€£ù¬û½îÊ3ìÉ,«–»9Ì%€µžˆ¾l¬`ÚeZ/ƒ†$RÒ·Zk¸­¨¶mùFwN´ß-†/Ø?0‹FYŒ¿ÅoÜè™`Mh-Ž:¤£ÂP’Ë=A”ðd-ÉÝxv’ KLá¬èå½Úæ‘
-uë³’ßçWÖ ²'WðÇ0”;k§š9-ˆ seÑa [H|šèDL86ÎüÁJè9>$ÓØÄ͘ð|šïvAKx~Ì Z4ô]k–×Vmš9ÈR(xKF½ÉÛ®Ÿà/!gŸþžO Œ]O2ÚµÙ‰xùõaU`»æ°÷º­„T«o‚ã,l9Üz?ÇAîyìHÂ/ûûÄká¸X­ÖÆDßWØþmÍ =;q–('C&pócö0-CXÄ™{Zo‰^,ûqS‡ôÙó/KLY”ïÆ Ë¨½ŒxX`á«îèþŒl÷å£ -\<õ¬ì©&ëuˆ<¼i"/Ìä_Òõ;ÍJ‚‚Vid7t”DëíÚ²1tk¥P,–Ê‚Uõ¼ðš´ |ÊvÁOèBÑTÉ¢XÏ[¡}´1-_·~5Kð(ÐPá)L#¦s—|G®N29¤2½ë/;ÿnWîׇ„ v7W½ÂùÍýÒ²A¯s4ÒDúÂ) °Æó‘¤ëã’ÈøðÉ®Òù`-¥ Hc ~õLwUPKk2šä0Ál°Ÿlí/Â&Y¼¨¢þ„¢ãt%<cÄÅñU³=V7òMT-8Èé^ V$w
-觭x]Kþ=¦ÿã š©Y Áþãßf¬ê´è ‘Dç¡H±Óò—hf’}Š“»“ã ÝÀ¯DëØعÉC{~
-AÅÅ~¢øJ<õÙÖR-qŠ5¹¬²ß56“ÆëiJ~3×4 mìÿxšþcdQOó$âaaæÞO e3íƒÛb‚Úcš?±6~-¥mÚTãõæÐ\CÁ4]Ý\€Ï­?º
-ÆÁÛo]ÊÜ+Ër.á&þY‘€^ÖagÅ…“@LYjó{ÆÕq½ù«ËWaüG£)çx«öG¸Bô³1(ÙÙg—äÚjµ//¼‡îe) Ê’!T‹L%³º¶ž}…‹ÂXº
-©ÃˆÃïüÎJ› y´¿0ÛJ‘ŠŠªŽv猶5‘²k2¼De%=×[ã8©aûE¥5^o£=ôá£_ᇙŒ»zºd­ëÙêÈŒln•_vÓd8^÷šm1Mß…q×F"D)§'†¨…dÍKÀê.PrTªú³ôp›¿€`‡ŠŸón
-ÝÁÛ’„ Âô üÏÞ´Œx{~Ä-{z­&—¶ù¥+Zz Öäbž±iÅ!LÈUöŨ¸#_
-3¬I¥ðgÎæ#ò«7]õfÓp~±x€÷l–Ž‡’IÐYè»(W›”ù£Ç})XôlâTDÑ9úfó©[!›QóÕdÂe¼XÂaqŸÛчK謧¾ªli kº±Ê¹ UlÒjt›—Ÿ=whtbýŒ%ù$†uôÚcnÌi
-Ößc/$¤ß®ð¸§ÞèViä•8+eõ²j°$ø nòu dB>ˆèû@àì*ýÙtQ;ûi‚`§§qn•`m¼©ìŽÞ•±~s…ŒE™Iöì)feýø“e€’ï+ÍPÔaÄJjñ/a¿Ûù³üA ž¾d"z<=,£å,a—_F[ó¾vPÖYž”ën¾t\EU™W+”ÝϳŒÉÙÇSÜæ<ã;×Ul¦×Õ™çô4HqZRû‰¶ù<è=ÀÜl£j Ͻ¥ùNŒ½®´j›El Jai}íÔÒ>Ù áG®Àl2x»ì¯êÏ
-ô*_»|—mÖÖ(£+Å”š,âÞ”k›Bn]æqè^XQ7B?«~dDÎìf$854ºIñöGq˜êѳØ"žËù¢k³Õ>gù<å”DŒ;Yp¨¤¼Š‘NÜ]–1˜’+«çE§‘ù“òDúo;çä¼Ðö|g«\Žhç .wŒ-û]ÐaÊì·˜ø{ŸÀ¸xìhe µ¹Jn¥à)…¢½
-¾kí^Qµ¸Ö¯
-Bó?ë‰Í–¦­P¯À‘çúþ!
-Xi®<n&·`nñ4ôÆ)´×Æ^1P3J}a¿9ŠÍÁÇ+¾’ʹgÔ¬îévèùÅ#ÎJ^ÕU’#ï †ög.
-ÙÍ9‚,È»{c²’×Á|}Ô‘[IEMbÄ-GÌ”—þĤ²YS)ÊÊ¢²¢´mfã8ÀÛ°]7àÀêM­îØ옜Žr;‚Wõÿ »Ñ–½‹ùÛü“ʽ¹tix¨²^´1«ýJ°lªCÊdqlîúc›bžæ7yÌgçð’&ÀÝå‚¥·|¬̦íyBÃÃ_Èa–çgÆûZcY}Ñ·YBø±æÜI¿DÊË;0ÐE4ÅŠXpЀ·Âš@’[ZøMŸ Âo+C ÓÊq³£?œ€‡®šC©ÝWIJ˜ñÁkù
-`ïð]x {ÙÊ{nNµj·©JRÞ8#%0bâ¢eÈ å¡L
-k&™î
--€‚ì…HJ8¦éYt×Pv-¯¦©b¿ÝP’Ô—1C‡÷zÚ<¬~^t‹f‹^‘Ç%/­!ÃZ0„Š>8Ç;)ì=Ø*|ížÑ±ÂhñËà¹6v@ ׶
-ÓPëF0d*x
-ŽžUä.xµ€µœ¢«ñbH©êç(ã{ Y2µ+™œv3¸>Z.CKÕ §ý±#اq‡Å H(e,½œz°æn—Ê-ÇF¡ãh#5ü@Ü
-  رM°Ÿ};Ë„s£(àµW­<*,Ã,Uj•$#ÖŽ>®ÓÂKsÛñÖÍ`"¯˜v~C¬Ëæfz1I½iݶbŸ :ødÛÛ4ƒó\4¨‹” HGÅKͳ51g*&d¹#q´ç/õ¤õIJê?ÁE2cÍŒwƒééà‘+#ØüñôöùI^¥/ÅÎúÄ‘¿Ã"ýé1ÆqMAƈïlg;Quó6×€]0ýR©o{ B)ðyÀ_éè·#F!|FÜ·¨$
-ŠÚ$R^j¼œ„û!з;˜Vz¼íë€^ø˜‡}…¤#æ˜îZ ð˜*ô?öÕ…+ûý^™µü­ïtƒ)Î'Bª––dÙ%Û_Æ3P͵°o¤<xÒßhÖs”¼éþîд:Ï VÞf±{x“pË‘ÿ¦n.©6¼ó75oˆÝ”Z|z«Š“þ–}`¶EKÇ6¸&ƒ&§Gó˜w;û1ôx¨&Þ«ØRN¿¿Ò&}ù>žH[ÝUÕÂŽ`tZKë‰Òµ³“pø¼%²¸,Íoż‡Ã:;ôšPõüYò_JsÖK~{âÿº|¼®®Ú³­ý(0Gþ¿C‡[™ñÙÿ©<7RßÖMVU€UŒ )å›®¦ň—Ñ ¿$•»Nǃça(¯~7-Ä'è½/Tx+25Ôã(•`°£%äµ{^Údúþ»}ÝÈ‘V›ýÃc ãa‡´aãaÅg'ˆƒ;’Ú».ÂÍ”×Âœ¡H}ƒˆ½£{1•}ÏT%þ[œÕÅwNÍÖ¬ßP'è²pàF«A·UEs–ˆÆ|êîó Üå$_]i–žï¡¿Éö­{¿´)ÄÖÅ2y€ß-ÛK ^¬Þvòû&e@=S=öïŽlXk*:²EBý•Îö·`@›SÏîam·?ò ±K>üíµàu‡‹tfé`žQ`Ï«9µeV|ð.hg62ÿ¯"ùz™^£‰5`б®Æ?ÿxžè¹±\Ú…¦g‚>ø€Îg´mòSyµ¢àb±a;Kk^Æ°àÆ¡†]#¿A¸ì༨›í°¹G·v6Éàÿ hæÂ7”⽚ÁÃYö)íCâ|g4‡xúT°
- ŸÈ!©vEwƒÒ¶ÙV­fË’Ê‘aýOk©Lÿ!—§SÍÏûŽ¢`ê*©P63ŒÎ@jë–%‘ü•§Ñ:Y >ÿÇ!z
-êShÈj”BÊêöÊœwû_ðT.Ì.4Ý7a½0¨Hs…L±©áj:qvS­_µÄ¤,
-§ÖfÑp1õ/†•²H|_JÚŸEîñ›qg c® †Hfºÿ)ŒÈªß!aA†‘.šDѢ뵉ÕÍíõmŸýY7äVIºáÓ$õzƒÖÌu"5î-Üø ñãÓ¸¯Æg“r úIÁE—È^N‰ÚéDû™ã6Ç55ͯ™Ì;H IAWp²';¸Ãsq:É%=‰¯·ïÖéÕâtÚ\Dœtòáj÷Ï€Ž‰Ž{¯x²î™)àå„ôfsŠ’íÍÇ´Éê·*¤ÜâJõ­Ÿ•)¶®M¤0p1 ØJ*kL|7õG—ÚçÀ òuÓiºß›±¦9øÝ3ßµ6ËÝ'²NeÞRE *ÎÒÓý#FBãI-ÐQí!€ÒĵvÚ-ã:%?$®­Ê€ð©¾·¨‡9vö¾»WB¦ &§Oª<ÁÓ¼}fi©PMú s?r32%mÜ{
-Ÿ¶×áe¬£9±##7#IBtßA¿†6w¶ÜÛ"6a€¬{£{»©“ÜËά†"­/¢•‚bý‘¥òZÇ1ÿ¨}=”.ùî}õ[ç'ÀQD =΄8õ=U3—Ñ)2U ³GEA†Hdñ­$»:©Á°Ë®vŸ}à~{êD!÷„Y»ñœ`\<ÔÂï3Ì&ûTDŠ»®yÄhŒâ¬@óÂ7ŽÝÑ¥€°s4°Š¤Ê'kgeJÕ"4u•Ý>)5—(wG†ÌD† ´ì¶0\­§[«²€rÌ.,´nÐuÔwÒ(×¹ ‡dˆ%IrHˆ¿¡ZíN8Ø*ø®ª 8äç?f׳l-ç jÂýü…Í7t´°¸Ð&¨è¦îñRTùö¿ç¸É)HB¦:1ÒX´ Q`s)gÜìFQ·ù4Š'/âõY¶éÆ÷w€)‚ü¾„—‡4 ñ0káÌßÄÆä­æFÙól^_âêàû¾»¼ß
-<h¬ÿ\((`:+Œ—ä¦##¶ê0¦÷Z§Õ9gy„a.!óH“G­ÆjÖ"ÃL}|]ÛAX‡áyš„âüy6zZvÉ Ûþ>*q ¶çC+!š; ¢û}²x´ÞYcgÌYFþ•ƒ#)Îâ#®H¨âù¯{4;Ǩ\Þm1O1×ÛÈ©¿2¼R‘*\›Ú9×·^ëHðFþ^¸Ûà28»5PÃd`úøÒª$ 8,·Q¹Ál2®[”"΃d%ÓdJÜ$߸Ý8ÄQ¸OÜhZ…0h‹ñû€ãžh/Ì1uzx«Z=’XU84µWØq†º³ 3¹:G…¾îOŽoºA¶S~f#㟜 õG…þ˜­Í'Ió:×é -ý‰‰0—¬Dìë{¬"Ñp¶7žI††“÷prXÛÞ,wn^ÒãÂGi*vÝÀÍ\]r~ô ^ha¿¼µ¦m»xŠ¸Ùpñ
-†vBè0(áß$/QÙË•›wÌ¥ú͸77&ÅÍÚ£–³åõ‘ëò¢=]’ŠÓç•nµƒÅ~LäHÝŸpÚGð·ßéˆxzeJª ÌÃrË®„xêa’ç8#Ó‚{ƒW„œ²ÛA3ççqæ‚ÄhÌV•§µaî·ŒøΑº©·þ‡ÌðQVŒ¶•˜i3îȃ‡b„èÌ=Ub‡Âàx?õ3/þÿ–üñáàvv}™%žy Vë<ÉÉk0¶<ŠŠ¸Ú_¹/%qxCoîLkåó3 õ…ÃeÇÑ»M¤©Ÿ lü æ‹å±¥ ÐÃßz"y¨'‹ÞpXã ÂáþÙTÞ‘ÖP/Àï0ñ¢(›ßvqP[ó¶XÜv·•¥9}¥=Æ ùÀ;—ͺ®uIÞê0 æT£'¯ˆs]ñw’'C”Úmr×æüss–])즚óh¡>Hé¥U þ‚I¤ðHýüþíjŒw.A†—¦Yàj˘‡*EþMº€øøcXòØö–bØZK‹Ti2$¡ùºjÙ¾¿À–§|µnjθ@Ûí~7&¤aÁŽVÛÞÚ$BP±i¿\]yŠãGkŽ5ÒÁƒ Ó£l¨Ó{£°ªì4ëÛU> µ%£5ý«ËxšÆ":…fh ÄkÌìŽ2`aQ°FªÜ \.“7F£ R'Mk0RÉʧMX³<LõÐf›rTjPj¦ÒëéÚàú°’g›ìÕ
-–µU%{ŽA°úø)<K‘bþ t:e7C;âø–G·“âuYº#óRtB‰Šû(*ô}£¨ó54+oûñŒ¨´Ï"wÙä³ËO¢ô šùÕ£Ë+´a(ÔIJkÎ ýRJzç‚âR©[‚¶‰ôr‡~¡®c²àï†×FçíÉf¶®o½ÍQ»×
-2m˜/\ w MwœIvÊòøÆÓjöÙæ~ |ön¤˜<Ò?®}06à;ƒ*¿¤¹0ȵ ü
-ì­›És2—ìúÂÐû&ÀÏ—¬›`Ô%À]ÔßÈü^ŒŠo]÷Cú[d\ñnE*õ¤%.g½u’¯ûâqߣ'ù MªµQ¡
-9›}@kCˆÇÞM1Ojv‰U˾ʶ>Õh$¿ÛÅ$å#’_>
-pf¿ï)E=î3iÖ{FÊÜ”¶-åVÈ{³Ùí¸#ÿ©uºLZ
-œ =;U4¢$äõi÷Ñ‘¦ÃÑ6HÚÕFá.^Ƚh>1z¢µ
-;Á…‰O¿?NLñ/­šL`݉µš…Al› 2íJnÇI OºñÝ4ü¸@þi£k?.É­6ô›·ße”gAƒ¥
-ìqˆ _&bAxRÏ3j€Lä ûUãŒÙšŽ<^áóY@DªøiðÍ1Kq3lã‚)V©ž®É‡ò雧,ùKª ¡`[Àø¢ÙÚé{‘w…ùåj£¯z¬¿Qç,(•–Óegw01Rî^|õÇ"MOflª°u°(¦./‘¢”žJƒúY”ˆ+°…þðªG²<_ípq æ6Òˆš~§ŸœÍºƒ vBvd]C ßßLj2,Á «•ò¯°õÿè>
-Ân%}–ÖÛ`¨ÄBI|ºº“>uâ&áC‹»Iri}æî âÕ2Ù÷]¾04¯{O½§¢ñéÊ ¸Û?=³bÙt·‹”O/°x=1Ñ$ÖÈᙦQEõ_˜`=—Ú³™|:éV²ý46ZB«IV[,ÑAËy¿L¨NaöA¸‚1'˜¦ÍÎZƒW‚š/ðIwùŽ!È 1´§rÏ€ª± ‹tSvFüêŸ'òãAáÄ£å¶]SQ³û*ªLê•2*å# Å‹$Ð <Tï#qã22k=3šj߬>Þ`þfnf¿|¯?¡wŸ‹©¦¼gÍNŒ}
-`ÅJ
-NŒ²*C,¥òŠÛÖ½GéLŠWÁ€¢jœ›4
-Íu/„O£í™¡ÂˆíT¶æ󙜖Œ“ãt
-W²EìK*_÷Ý?‡÷£ÕËù-v
-õjŒ…A#0„ÛíçÃn¥œ¢7¸<ËNì»q•S᛫w#¶"ï |ntj‹ê'a¯ZuÂÀú ô‚uÈ<DB «v›`l'ko.¤ÌZ2Y €3^Q1Š$U£O]z‘Gˆàk-€³ë–) ô…kеøLËö2(Yf-À˜XåRí.Êj/vÚ¦ÂÑàžžËE[3¹qµ$Lõµ&ÅÒ¼"d5&ÏQ_£¹¹d]W!et锢íïÕ¹ïw
-QHsâeì²múLA—¿áÉ~ŒÄÛ |ö°,ߪxe~˜¦£AŠ3YÎ8Ê®ô]ˆ¶,fä+ûÐyQ°PòoMÍ’8æ¯D’a£eÜ@_þ`⡽*¥Ð—KAdž\·Á\»KNÌozæ‰W-/mc„ý«ÁK{7ðçÂ.úÞTjB8xƒX°1©nžTÝç(*Ždc!žï­:˜ºùö+¡+÷%©z)د 2ŠÏ¶Óo8<ŽÖp&”‹Ñ·ªT3†dþhâÙ&ÂŒ"· ¹d-Šé›lî°¼¢\ÑÕ‘I­YB€0´_¾2çÈA•|:6îÔ8ÐúŸ)öj½Æh—io,(Ìð÷ôb‡â2µS‚í}JhŒæŽlï«ñW(¦· œB&ØÌœ 6NÁŸèW¹É·ûâÞ§0œ¡ú.`t.`q$†ä°ì‘]$àì¬ç0”&4¼¾ºPZYæ"„:‘ bÀŠ·x Ä,„©Ýý“βºÊ ¼¢Vè›jK,DN­§ ±ØF €D²
-„ÇÈëÔooù «Î€ê1uÒ51ó¿Æ(7$ˆGsµó{ŽJ ›g°
-7pŠUkåp‘òþß!¤M÷‡í#¦™ëOà¼Ëu
--â+~ûE~c´ÆB!Åv…ŸèªüXUVü 1ëk×ú–§<XSD«à‚Ûü¥#rË[òR§œ–-Ãë'¢.ˆ¯ ?UÆ
-kŸ¾‰#¨Ñ6‡p¶ °Ã!Kî™ ß ®úÆfó/¨¢dͧ„˜_¹)s3Ú€yÍùîA’f…8:ÚÖ\üg­“¶Ô*ÀÚü0…@«ujnŽÝЮH»…- ]òæ.,à fl8F¥Ì£z$gêwfãñœj"ª.•Þ€Ýcýþtûš#²JÝ!R~MkOW‘眖æ-gëQÉ[l:ðîÖÁ¯éÕFDqïÜ?»¨â¾ÒZý¾˜¡Ù‰£M!=$8ë7t©%ƳÑ5V€ê6*óh«¶ˆœ;Á9i¯ÜœA·å¾ù<kîø©K&tæèÒDOš.Ëæ/Òs4Q‰.eÉó×ðb4Ø™jÖ^+_ÆZé)•j›l7(£z´á‘ÇzÙ± uvQßûü‡Á X cü+—é$0ן4å’f‡{7b§sC&³²+Ö¥À¥£L_’aºƒò—P¦o›î8^u¹‡×&½ev¬åÊΨ‹yÞý9îq
+xÚ´ºuTÚ¶=Œk‹»www-î^,¸ÜÝŠw—"ÅÝÝ¡8ÅŠwøÑsß»çÜû½¿Áaνdîµ×^É¡ QRe1µ7JÚÛX™yròòövör fQ{S
+0ö
+önï¤%€ÚÞ` ´0²1؛ԀZ
+tr¶ü“ö¿´Q¾+ü-íÝÕÌÉÞö¯
+Â_ÑeìÌì<ÿ¢ß•üïÒÿ4
+ö ÷v þÿç–ýW.I#[ õUô¿ÍŒl-m<þËð¿l4ÄRÿÞ–Î’–î@S%K‰Å_Eü-2zï{;sàû‘üE©ÿ¹J6ï=û>w,ÿ ,
+,ÿßKbõø¾7›Àw]¶C–w]vÿ€ïºìÿßu9ü²¿Û:½OÇÿ(
+Æ“J,A-Ù¨•Œév|ñÜR Pa@‹&e¡½œ4¯¾oJ€]±E0¦ÍëÆ÷䪩kSeá]#_y_|$ ‘± FõÀLùeÿòNRš#Ùœ|íöÙÌÖ„V"€úØ/1žö®‡ÖÉ7ÔË/¤zå­kyÐnEó,ÍN6hîË(xøËÓà ·Œ¸h£^‘Ú9ÃüP¬1Y‡ž.ºÔ|5íŒåí»Â²XåÚŸæz b©G[—]÷«Š³†ÆÎú$W¿¢%æ+¾<Ÿ}¼5.¹Wn··—•J~öúr¤J»¿ÐcˆXÐsd¿ ÿ«¢;p¶ˆŽßA§*eûY¢¸Ý<ö ¹…ZÍ"êû/í4ŒZ`¸?eôJ£æ^­f ’a~GpWÀt>zx-y±u¸>´³Æ°ä°®ï3}Ú—š» qXŽ\ýL½ÎÀR’ú{æ6V÷ë3Fû¸ªï¦Â ðRÏ!UÀ:»É”¹ô‘B,xB!z={À"G Ç}xa²ìÅÀ¦üŽæ:g6/â®ZWÑ.Çì¾úŸEU§­I$Þf»·q1Íöžþš_ƒm¼(²‰G"º±¥óít'ìÅýò¬»Ç#Çf¾ÓOÃÅ!Ò]7b‘ŸY³Çt kÅ ÞÿJc ½º;ì‹Ë©b¡zÎG{ù\_™—ƒôS—|¹R.š÷•6l8¡Þ®¯fÛL¬#±y)-Ù_öh„ÈÝïï“ÒUwq
+C”ãëRƒâÒlÜÇø1ù@Qž¦ä¾ªÀÙ¸T£­:÷›ÀŸšÌ‡ýeBkf3þ)dp*Î`õè%&jf!m¿lµBòS¡à¢Cª©d‹4b¿Òy²H¼‚t­×Í¢T4!ë¾rŠëVˆqDg~cÖNÇ<¾{KÕqx; 8lèí¶8<ˆ³fÌà+W6-¡ cY½˜Ì€3…{{°üŠ€cÅzèµn ¹pÙÛ©j)õF¢i†ë¶ŒúU‹§/Qê¿!A'C%¸¹[±Ç‡ÓÑ'63@ÚD †Ä»2“¥êJlyF
+,g–ßøßØò2¶Ó#snpÉGKˆæÊNµ’sÝ#Ïû)]ªí,ª¹L€¸¾ŒŸN23z1Bq ·‘¾Øtë&ùÍÞÄîêŠÉýFjÎfª6Ä¢•oÜ_müô+ПòïÙƒ7» Zª×,DèýJ[§xc·,$ÀÓ–-ó‘ ò¸DnL=rº—¡‘“® ý2Ë8Ý’cv?öÞ•8t^ÍTMÄvöMÎIa1+4uÚJEr¼¾ŽÆÃjsèHë'»0ƒÇ3kÂ- EÕmÐoïço[ãΨqÂÚr1LÇ pS¨AetöÉ6$Hš{y«<¿Tºš°À~à(c1¼o|áR[äŽ6«=‚œ Ò¤#® Ô©é¼ïáW•¡¾¼aã"k4¯;E»ùû6çÆ_W5>uvÏÀÆS¥oÅ~=Þ½ÿ”$"Ž€ÄBmC‚ur“ìö¼¦Q”L…/–²éBq7î“„-Y£v @à>6{2ï¥{ƈðWîÙýcùB ;XÎQž/!}Ì'Ú”>@æ‰ÛˆDå@wÏ“ÛWú5c¶{‹[«X«2³2Zïä÷¹LyÝôyS¡Ü¦0Ò÷kמiYdå‘`n¼ÆMNm
+TÙ;ÙÂ,È'×{"ùÆÙÅ,Ÿ~¢KŒžZÃ.ªUƒJîër²FÊG¹S±Ç&4lÓ•­™‚TosÞ—8ïõÝ3Õ•‡Ï‡&‹a?ÿ´‚¥(‹© EõdûÊ*£¬S÷ñéw;Ÿª7‘f’BŸré=ö¨ƒÉTS˜Åïú¨’ä» !ÿ ’!õ¹O2@¹’Jðh%8E%eó…õôí4µ¦ÄœôÀÈ=B3uÙÕWÕ”[ÆI¶§@1R<ÆȺZëÉCØ7‡_?ô9‘ò¤Fz¼>mz%×/<î08dõòà]íÆø 7Ä„ êàvžò@Âc‘†²ïZ¡wî²y–ôzu"åaÔ¾þ^#¥ûV¾ŽlÀwˆÛê¹gôYìGäi{ ¼¶¶å1+•SdVÊ@dêÆÈÔ„/ZÀª"ùsw~!ò÷hb
+‚oÙÕ4Õ0à?L~#œ%rè;—©‚ŸWHÜ&z{TÃñ\‹OV21]ÛÖW‘ê4ºú
+nmì6w&Û$[lçíå·s0LAÃà
+Ê2Š¿3Ž Öf#Çx*žž(jμ]ÈqÆÒô%@€ñDéemIˆ‘ÚoŸwðHᮡ Ñ³PÊ„XŽ/*bø@âë_Á 3MCÓg·Çþëó ·ÏKBHöáS6C]è…Áë-ÝzŠb¸RÇÁÊ€ez’Ÿ±#]¤6Ò8‰¯õÚ¶|ÇELòéÚjlå|±ƒ˜þ7ò¶F†Ï|Ðó:~ÞŸ¤å\À÷"½ŠôÙüÐêê—Ð÷p$%AˆKñ](Âþ5üøÓ„¿äµ¢?A>¹Yè ÌS®%HŃÄ/ƒ™‡‹Òöh‘œù© ”ËÕ`åë‚´(w\·å§°H‹@¶´‹…t¦¥"VWÄÊf)ãLú¹¯ÌÙ,†¢ÎVÎ=_–âB*„À‰Ü [ïÊáéwé Q趸¾äÁ®N?¹Al@æ\VãÀt:¬.7ÿT« ÄË!|˜pdì7Q9ÅO5‡)®Ö@X,¥çƒd(ÛT£ýV6è'ÊÁù{Z.ßæTù¢¥"^¹ÑŠFÛ4žïÚ±~‘ûü$AÝmeýŒz“ ÙÔ9;Š;íRh¬b»°(CžÈƾdT¤@Ä›e÷÷—Ègg*&Úˆ;tÝ𮫂ZƒíÎáÄð”7„².\eÄ@W ”L ÃJžˆ¦,U"­Qg<Q®±Nâ/Öñ. Iu}ºUÿ Ÿ¯×ÛX½w—>ja­™¸Hí.pfBZ¿º«Ÿ¢WßBžÂ˜E ›e!šxòRt»ûÌHÆÙl…:#›‚ó³nõ:¶jßµr`—šVˆ‰ãs 1iÔÝ^G³ŒVêJổ}Û®Ò8;?OÏÃ}ÉHQ8gÈšæ…‚ŸoB7Љé[.Oo<°Üæü›WgKŽÏP³ëôßkmYHK¸ÄT¡çŽ›02žNýhƒ)ZFÍÆ
+fÔû_g¿†%'
+¾oÉBAjØÙôCCÑu…iÚË2Jéæ‡É¸-a}¾eèò°Ì:9ÅÙþ}h¯½›<r
+d•b¡Gàú­“D23,šTEX‘ñ1Ò¢¼´*óÄp~´¡L"è5‹æBÑ¥X=˜´$«j&Kœª¥!:= ( ea¦ tาÒPak§Šr#n‚Qš±J¶>/x¯àÀÏÌl–„Z¹1rDo”=žcµò«ß/…´wSlT&‚ ßTŸÐ¯~güWË‹*ê2ûâDw9Iž:›$ƦU`ääò­³^s,F#ï…1û¼FKË 5DÜ
+H]!Š§'™¹ÍÜzüÜ6냴|ÙäNG$TÏ¢n¹­!ÒG#C»>Ý$B)­d6r(§öÓ[<²öl|lð°ô¢¤êvm9ÈÁ
+hÙ`­|+ãpO††å×HÂ*uδ*O8yOótj¨¬‚ЙœÜB:'vÏxF+3p1½D¦f8TÀ†÷æHÂR³³º5^»_™°÷Ì£‚N˜ !†ý _&ô( Ýf”ñ¯º’
+
+²7ØصÂØ~‘Pò¸¶ˆ0Vôqï.¤\ð3y$7Ýþ!CöóZ:Ûî#"ɼ€^Iö¹€ ¨Î².lí7«CTÆ¥hâ—I%ôÆi@7A{èÙãÉi"Ô'ÿ­¥<Q¹
+»[qâ"7æÚš¹Þ‰ÖYãBµ
+¨—lS"ÃQÜÎÊŒ žà‰¾¡Ý¡ÜóV=éKI²áËpÙ ÁË9ïÖ ”{xF¡~Oc% vÿ'ï+5ë4F®¸½Ñ¯(P‚1ÓçöZX½—r[qM*‘;RKÃ"YÐK{íàùĸÌdÓ ÎèNÝqÏ/ö‡â¬uJ»…`SQA'‡*”ËqšÖà3XSÊ8Á ”‡‹˜<®÷qÐw—®Ñó)Ñ É5÷9)ÎÁ±~–šì Mî÷Òি½²œ­îˆ"¨î“/³¦VñçQY?GX®¦SSY›1Ú¾V?Ïáö(Œ,› /y$j´–"”XI$?4Éß½‰' 监D¡oç¦O¾­Êãõ«DÞ6îÂPGEDøSü
+ãá<¶lÇVÍxR0°C½{ÓO!¸ð…›æøN28ªÔª4ã2rqU‘è\³¹=‡"¬žã*˜2µÃ<Ëä=ʤ¡ÿ5 #鲬,*lƒ»Â«.›·vY<¬¹í×
+ÒžïD˜ 5¶DV¢ö×Kåe•jð̳˜€ú_ º•Õñs˜®ÐÀð¶%÷8ÙTòçkjô¥±‰.qê©-ƒ¼³}IÂÁ(éŒ!…sêdbÛ²Šý‹É{?é5Î?FAÌÉ
+,= [?¸x|÷‡¬7ì‘b)t+¬<KûoXÍM·Ýœ›ÊòҲϞçzï}û-©g‘”1ä=&#¤ÅiVNŠ„}mçâ0÷cWWȇ½×2ÛÈTmv§k3ÿx¨`§$:‚êR_–87ù§–» ôC4÷ÉhÏ-I ¢0œ]÷¶zæÞã7þ2­c¯¹p²qôâK£”»ðÅ3~þ)Ÿ2 »]÷̨”“nê1 ´"Ù™èó¥®=˜C¸%É32#V¤¤”§?²tærÀŸèZLZÂĺ.Îm‚ ˜ii¯ÆCù,iÿ{Í£`ºR‚\­;¡šèšÑGþÇç=·SjJ#ýô6ÿèpE$Xn³Š‚Ï œ
+eVèߥS±ÚUªz6Ä•˜“v-`3æ‡w
+nÑ'0jÙI7N5Eý¹:N„$®”X¾œƒšä[Û¤Æ\¾^',’°ß Ö‡M.ÑkÉÛ˜J¶×nIøc²w U°ë)²da­oâg,^Ϻ k¾¯Ó~—–ºâåmpñaÂÔ@Nw1ÙŽ¢öÁ¥¡6»od'Ïü8¬øylí9òéúÌÀ“Þ˜ªA¤ý–z¬C¹$Ci+ÆFEJÎ!s±XÝw:‹3=Qñ›`›’Ä™¼H0˜‰\Éqwæ,vw Ã\6<*;O1¦0-†8„Ü´øÕ*E¹˜ ßMk~KFI°ðD™Áéñ™;Dk˜ü+g¨Hu†d¬}¸Ìž¸J¨tb¸kRö^ †‚ì=…Á¯¡äÜcážÎæ âu¡ìY¤îR 7úv‹/È"˜K«­³:¿‡ÙŒz+±MB#¶TT\´rsv;*¬7dìÈ%;
+ЭýñH¬ª•-º7ÝZ|°héuO"1%ï- rì ¢>-²íòá¤Ü?pûW#n:Ï÷…‰7ئ'˱x•ãXh>º´ú¼qCô”1þæœÞE„å$"‹ë÷½JKT
+Lu”ØSH$w¤:Ê¡dÝ–©šÆ¸ZK£áÏB]“rJ¶Ò I z‹ ï–.
+ºö“Y²Â ؼÅUk¤ÅvÌ šk)¤><f©f\gDMàë3œò³T'tÆR öB9‚ÖöÅ9y\`ºì±ô\ŽãLj÷` Ñ/“Ë%Â6rØÄÇ‚å¦~7i§ßtýè 5àÃÏÒéóú¬×^Çs‹˜0š•"Y2Ô
+Ù—M§ÝØÚ<Hú
+ŽèÕ†«Œr¹¾¢-Ô‘G'ºw£`;ã­ÕbíRÉ Î+‰­QÌ󈽦â¦k"cãj‘_ÝÁ•„wò /žÎã%ˆj4æþöÏ®U$ìãò?àL&'¾5cÞ,K^’"w… aYw%T;ë«.[‡@ ijÚåþþ}!‰A†G¥Å9(lÀðÛ~"Øy¾¬u±žãiN½ÆAZ­úä!äìqK…°!
+!iØKÚ¥÷ê4¸Äc&“%Ô«'‹§d{(áC@Pô±)ØëGeûQ¼<Ëè³ì§¨ù(ÂM|H³¨’ÉY‰EÇ»2;)܇r^!!kðáŒõ³n ÁâÙj®Ũ·/«úC¹u¡ÂÅઇv©ž­ªõ]~—Ø…3 ýš–¹TúA öÍá6‰Î>çÔ4ÖÖ(¡+µ¥¥þAÍb‚¨[£ëe_P½ôyÇ 7é ®w6Klš•s×ôÃ}S˜ HÈQÎjîÜðÁ ÿêj N¦gVË¥£ J0‰WfÓÆo¾^¨±Ý¢¦5ö{½a5xNð@fõñåóÎ
+müŠYó9]*ŒÊš25ƒm}БL‰ÔeíñV 9PqVýfé1^àl„KÅ«yë#F‡LÿŠ%È;Üe|äüøÌ^°Ðçcé’]üìÜB"³n{ ’ŽrÒñª3ö4âÖRs‡¸É]‘èH ?¯D¼y™‰YcýÍÈPz–Tf #®’å'Mb¾7-EŸÑ#£ñ×èŽD«yšsÍ­u\œiÍÑV£ÇLÔ“Ùâ_JVÙƒSt+ÌÐU{_oGðÂC‰ï>\€íÌÏî”]û☟díúf>æ!~Œtò¨^8£3œ´›<Ó´Aýñ2uÔ GEï£j5,ëøõ F4Ù»OŸ³—¤3F7dµ½dÖ³"
+‘w\•äEK¤ÿåLŸY´oÞÓëÞä¶!ȱ\;qHþ!z÷îÆk ˜µ‡¡•¬#j(¹M‰¿›ÞÙÒ÷›ÊÖ¯¾B'_aÇAC :ùEKà3£ “&[Žô%SG>ëŽw(¤eW!¶ù齓DÕÚÌ‘<ÓÚ¯bäïPø¯ƒfüTÚì]læø zAq²² ùvÇÄ
+vð©ý‚øK…ðN %KüÍ.‚ƒIÓÝ_W×¾¥fV.uƒ™à9‘¡Œ¤U ‚¸ŽüäsÃÂèk2ÝO”ýôŒsd]¤DëãEî‰á˜s¸5ZV9Íng-JCÒø²‚ß©RY”éÓÀojHÚ³ËðA'˜_Kñ¨ôœ*w|ÜçE¢d}t/?ò†L±%%«¼/Éf
+Œg½ ÑÔc‡ª8<Ùqùg“ßdé”?fQ]á7àMåΧ‰í©bO„' saÈ¥úÄZ§lí½«ýÊ¢®Œ1þ¯HÜÆ|Åè<¢¤;¹¸'¿Ã©'=F:ÿN@;½§¤ÚÛö§õt-éJ\o‘
+-áç£p½„4q ä!`¦˜ÁSHD>ñî´ªo¥‚‹ž²Š‹_ÁM"Ä°¦voë·ñÉE˜
+•• öõÛ©4QÖúÀ:ž[c„ªÅìX <¤IQOÛQÀ€V‡4 ^v‘è•nͦô\ñ“…Ý
+Ç6DˆŒÿùB ÈÚš5Ó¹J¨O‰€§¬51êtäÌV[Åý`õÙî¨-u¨³$¥Žê‹T Úr…@b«Ô>zš:tå£@P¬À¨…X³u¦÷@f]ãÆK;©~b)6Ò~êwZÓ¬öy½Ë“¬˜.t ÷.ãGOAµ» WÁO?ú
+à©Í¡¸úD<êäºý«WL„‚&Ÿ\šQPS-òŒî{]$T€ú(¸TN™U Ë!ãÐ%wFäWl¦c†í£Åù¯öhäÖžÊÂÊû½ÎµâÐ$ØTÒ'Œ„eÆeÄQÞþæÞŽ
+Ø ·á½¼‚»×ÌÔ¡Yƒ£Yq¡ñ$«:+£×ôÚÏ#\§#ÈC7+l©’C»Q`Œjõô|S~}ÇNd©‡¤gÁ“ݧ¤Íœ
+¦7USìWçЦÁn¤W“nÓ]m¸@¾¬ƒR+3³Ý
+ýo6K
+æ x-ª›áC¡VÊÜê«M©¶ÃNY_¿ê‡PŽªº½;ñãyOÍpêÕ%vBû×ÑiX Ìrv1fÝ‹¨ÊGmFZ[-½S±ŽC&0lÑfl µ³Ð±V¤à˜Æ2/'My}"1S-Æx£!ì¥ l/›<j*Ñ\· –aT £B¹RÉp¦ÍMC¶%)šù³Ï5PÀ¡ñ(¯pí(]z\Òyl›¡È½,‹Ý‡&f¸Jy Ê,dD±îtâbÐÄ4ëeë­Ä‚WÒPg?¯Š…êUÄFÊXmé”Úæ^›ªëý"®Q†ÇÊã´¸,À“’h°› þì»áꮩ¾è¦“æ«„ŸþfúY šÇ7¿ÊÇÅñP>;ÕÉGηߪJ1'v6‡\$\_R"IË=šOçHÚ:˜íÏ' 'nWUPcU*›Ûµ=)|ÐÓÅ d(Û½±ýå›ø"‹Ï.9BøŸè©†<*Bãm¹)?’=„RÆmŸæÃõ|g @µÔß1]íVŸ5aŸ‰ŽUÀ#%®ÑCäQÂhïUHqºÜÿXÁuÊ-†=F»k@ü®Y¶Âg D­P¼(ä8,Ü£D<ÉÀ’ãÌ"ó™ë賈´ ££…0iíˆÙ»¦ùgŸÖÊÍNøxÁ"O´«ûuÐ7æUð¼Ì.²Mï…zg"½=4;Yæ¥ð±YaŒÀ¯h¤È˜6•ûeؽþ‡ë”DH¬˜Á™7|tÂ7–œ’²ØhÒ ˜W#6ï*q «WãtñÏŽ—eÍ*RY†f*Ø€ÕröH#voHèzgÈŠ(pkR.›h6ݨÖB0ˆ¿Âa#mĬ`2®´ {ôhŸ%È[(xã<·4Ù†’[¥v‘G)!©SëS‡J8¢­Aåž òýq®…b…Ò©0à@¸;õ&uþ0½Õ3Y’ãˆi¡´ªž¤ùõKhJ'u#À¥˜+ÏiN®Ù,}#’/KŽé>»7N_BÈƺI4GÙ¯|Q¿-Ì$çíóWL¸$mϪ١AŠÌå¥ö|LgÉÖEB ~U†Š$Né‰Tdì6² ‚ÅHW°âË]”'d!$ ¹ÝðYº¬‚Xê0,WŸw™ˆ¢ÈS¹#ìoA¿zµKão4[HEÍjPÐ ‹g„ÚNý ¬¨üÈ¢ ½QÕJ\±Õ5u‘]ó`÷KÑq5µ–?ÇÏõ›ÂÅp%š .ŒtªG©èêDθoB%Ö@æeIH[ì9í8´¥Ë)óÈ\ÚÆ\ð9'ÔûQïu~ñw¢â¢Ý=£²Œ…¹c 6íopѤK‰a¬rà`ÜŽ7T¡qƒ¼æ©ÌÛZÄ|qX*Gœ|¾ÿT3ÿ¨¼tˆ3]|Ò–—ª>¬êøÌ3;Ì=O¨uv¨³ÉˆqægµáË`2™ÀËÕyÓ•ú‚š °á7TT„Æ4ÔG˜}…(-{­ö®?¬hø‰x´Ãà,Y„3ÔÔ,e¡ÆXqHÊ&„ùóWbƒ_¼Ä±#¾ Ïqïæcó8ŸaNe\O†V“îUë¬F±ÌßÅ
+<[ôiS+3-ž1C„‹¡JÎ/Û
+‡kŠòV%Ðœ±f¯å¥“tŸ²,šFûw'¸ÕK‰/)$ñhÃ]»‹8œK_÷éÆ~Ç… tWÝö¥™†.s=™Ï=z&•"°Jc’—éÑÂDþ¦I—nDã(¢qµ?RÛZj$¤’ÅO'ßÈ^orÚ›2Ý»Ïʧ¡ úºG<û=è×nê‡òyÞÕ³ø«~1,œž®å®ÝÀF™xöqM¿Î¯Lí*ë=é©\½ÒæíûÛÔrsÆN]–ØõJùƒþ@V†ŒjõŒ.Oƹ¼Mz:÷Ï‹˜f
+e±˜É¬=?½š_°æ¥ÈG°¼ýâ¿Nöi¡|£[¿¸Èñ¹ øÌ˒о#ÊàɸDëì’DqH"¢Ã18×ÀJ‚Q«Ñ¡qzó ‘¶±!Ïç~…§“Xur{på`õ îãFòq°-ÑÈòžÑ­
+<¡å«Ó)Dbå\¬„=èUÈ
+®ôJ*ý}¤ƒŸ3Hƒ;:ÙÂN¦}ÕñßêX˜´ŽÐ¢kõ4dè¨,՚ȫÒÓ}Õ‹lòž‚9Áº2;[=ÍjÅŽmÔ(9µ™ÛV9$ˆÚÐ&¿’˜xŒ™ƒÐ9¼ùô/k4Âl‹¦ˆ!¡TžB«‚‰™*—°Üd¦uƒ´‡,b\LXýO§¸zæÁ(`_—^¬ùI±`afT4’ŠÖXaŒ-ñÁ¸¨t(­©ŠZ}ßtJ­Àþ6Ëì—”3‰k«»Âw*\‰\Zû49¯†QER1éÃÁÔ±LßnOçAh %/{ÔíÝéETmg!$©Êãx¨¾áä©ÚxÞWf§þÕY9¶³CMù²µ¿&šÒl?þ¾r†u°>g\…L,P;¯¦\ÔCûL†ÊÐîšB×ì«ÇéžD®óXã¿1Î)¸ÛÇü몟÷½"0[KÖ1§ý¦ír¢FUÎq6V_º®¦PÉ ·6aÐì´|ã 毛¾O‹BÞVÒÃK[TöD—ü¨Iëj.ý½i™F”œ¸‘ß8ÐCœqpy?·Ö:ß™—Bt†4e€¸çÒkìpÌ_äjÐ˺ôŒiZVËx ExÄ0]ád4
+ùê(Kè¨S$®nV*d™€U‡Í˜o…~ !NäÙÅ2ÿýŸw^Ie°=´$ûF¹Í•ã¡?°Y..È‘½®Ïæ=M«ˆ?Güø8æ…JôÕ ¿ç2/]ëB™CøöìxuöÇ(‚†‰ž¿ ZŠ*LÌvM€ö(É™Ü}šï­BŽø}`“”º[—;‰Ë¾&ÊÂ×Ã_ͧz×ÛgÕxÉ}¾À1 ú½8\T³xušäU²„³ðÓTFEGN¨¡,h©±P²KÅJkU2pä’BæÕâ¨ggQ” ØûÆ»6,`0]j*®„ Z+I¾¥MÑû9ÜÎ>1}Ç ?Y9â×yó˜o2ØLV­ Ëþ :7O%îàô™Qsxú+zmYä7fvÚhן*D\{ô´©çµË¶+]L¼ ò;òX5àúÇøv—"ÀOS,µ»Ýºîû¼öŽH¥“ÀÖ½c'ð¡­8úÜEûè’½×እV8 ~Áøh±¡}2ùΚËࢷ߬S\3Â߶ZÆ£ú»¨”xƒd«Ù‚¹Þw`=€a¨šG©™79ªÌ€ãÎÅú–ùªÍë‚¢ÉbódxúpÎí
+r7·/ ÷jÏ$N«Iý>¤;¤p§õ|C±GÀ¯`¢ç È H¾ny港âDçxa·d®ý®$š¢^} Ú«/î I¯yãªt9ƒŽŸ´ãc­gYq{¤]ç^èHpÌ}j÷å\•6íL’£…ÁÜòfÑ|£ÑU“³76‹5tL?ˆ¯(q’YÔ`¨¯ã?CÅÀ&¯> ÿ‘r­ß賯î™Þ8è¹&è=x×O 0[§ÍäOâû<¡½s-„Gª£éj^>g’q“uÎ;\°s«Ë^}9Ëa,èågÍÐ%YÂÑ ²n
+`ÚЭ qëÍÕ•·xËEA¼1møÁòm^\—P‡Üת(Ú‹¸òA"mÃö²<`“ÈÇÄ0…zIs’=t¡—G›„œN÷Hvè**©þAmÅRH`øÊ ÕH8‘Þ˜tmðûh_;zvrØ·ˆÁ#=ÚbÃÉŠÿZô÷²ÂkÚP÷Î}.ÚJ¼½qe¼öÐdÖÁjnø¥òLy{©Úå«Þõû–¡+ˆü‡'àÉx•$ViÏã$%ž(bäéc‚Oha¯Ú!–&¸žÉˆ{R $Qp¿át‹—ášípÍGùlÔ®°rü׋Äû딳A.ضÐÅS¢¾ã%v‰,bïDW~:«´7îýê…ÄJ ây?3„Ñ:Ç‹Jú[“h? ú
+cøÉIª_–ûM¼“o;ÌL„ñÓ<lÒP„¢‚ºÄ[B¾ÚíÇ-FøÛÓ%ƒ@)‡~ÿÙÚ¾SmƒÏ‡8…lª…ÜvÒè,i­oéàÄÊÝrAþìËÚÿã}þ
+±•›"'•“yþrŸûZ3Œ³,…I, â(8:¤½ùjIq«µ¢
+¿[†»²ÏLÜÖwìôÓ|ýæÚÃn¬„OC‹›‰iË°³•Ež¤ªë¬|.ØÈ^¸§¿x%® _{†WÏ=n.×%cò"à tMá8à›‘?˜Z~rîºØ:—Õ…+‹„^åZ¾l¶Ü$d˜ÈeÝÍæ¤þð©zt¼”+/šqÅäSÉ++ÔCy\L¬±÷ÍÄ4:E6„knEue%
+@½‰Îó»po†þ…Ö¨ú †
+µŒKQÚRÆ)4(rhªñ=éM~®.7ŸòWDŠqœÛ>aL™×o}øtÈþ{ ȹ%€¡ýXdp æˆóÐoÚ‚Sóa+?/Vn §Ï ¦§<ô‡bÒÞZDÃñcX]ÏàT‹ÝšXœ–s´85û·$›-RŠlTþm
+¯ýc-§§ßÜԣѵn-ÊAÆðhܪ)(.ëþÑÚ<n˜­ží'Èm[ÀBX+yI϶ÉÃ}0™h¦4vêM:Hi•Aç“þÆ{-iÿó~üPÎ/¯çN»Êh­Š°/tÔ[»Rû¨Ó¨VÂÂFŠ8§,²*wñ)ŽŠº0œ!*ÑÜ¢µÕçÇû` ù,¥ÝŽ&P}¿ÜÔ°$kQ“ýŸ~—t}ªj™¯‘Å@ ·{‹Q"µ×â|›õ!¹Oü^x(¬I[×â×?W?Ùçi/`S ÈeÓ%µúå“EÖyL[mp‘g²é>7ïzED‘ 7àÍqU‹Î)ñ”«Z¼“779Ç(‰€ó )…>£÷‡P‘04ó¨} LoþÂÃíÀÜ/‘¯lË, lƒã¤¶(!WÑst;ü”néâ^OÌ\¬„¯Úìí:åƒÌ‡`¬›8²”Ÿb2ú¸ÁšŸ9;³©µ kRüd¡W77hZD“Ï¢•#úE÷;_ªš´K‡n9öç¾äA2~ƒÿöZŠÔj{÷1[Ê;ñÌé ìþ-µ'ÇÚ06\ã{y~ÄêóK­±^)b6
+E ö°‡'k,(SMpž)¦hŸ“[‚˜GË¿¦éCÃÜTëlÔSP+&ì¨øf 6
+nI4\ü¯/eëXŽ… ~$Ç¡›ñÕ(eE+b–Yü¹ù“¬™¸w2ÒTMQ%+¬båÖL@;ÈÁñniðŸŠâ¡G‡Žê+JÁÃ"üi_ϯ¨,cÉ°BHI{†ß¾55ŒAC¹b± 'õño1
+V… n4€ˆ#€o¸UÉ?½ÔO)“°qH›þª&G§vº[Ö¥•MN“3÷i†úËi$/}]Ô“Œ"J „,µ®ÃM”æo©ñÙC¨›
+hd™„ë’ŸÀ§Ó}ãøòa¨Ú Ù+«š–°«£uç•H¡Yµ@s›Õ3v&^fD¦U)ödŒå¼þàN@Ÿ¯"Óh¢Œ²ÚÇëðßRô/˜;Ê
+ç_­Ç<äšxAÔžg+´J”š]ÃF5¤VŸL}+ºn'Ù*|y2’ŠÅÖjžôÜÅp,:Ï©ÑÜX£<—h8j¡i?=p׸–ù® 7ß>Ì$Œ?´´3ãлªŒŽ=bH…—¾<uAbÕïk@ØDïUø[úÆlÆ.¤½OÓþ†Âá—ea‰’@ˬÓÉÂý*»`¯Œ3p†]*2Dª˜`#a×îúP£ò”ç„¡÷q3úK¥T8„žu”A~᧔àØ7h{NIÿûUg£ðÈÓ§ê°p=?B%LŠ¼+¹{×¹%8« s B€iôAµuà'XC7‰møD
+¹Œ©U}}œ½ª ÑsÆáRpÇDƒ?F!G·3Ò\ñhHH\KÝÜ7)¹•R—
+¼Ý¿Ü-°'a; ¥.L±Xm&P–HºclŠ«>uµ†Ä&æ·Ï 1€±¹fsÅEem‰v•‘;¥9½bfFŠ£·kV~Èìû]Ü›¬ŠæB×éð`àÕ¸µ.äµ`ã\•%—Ëýú5sñÑ
+ÚPäU$óÔ PŸ+rʘBø“a^˜ç† âí!-Ý'÷‘¢Ú.wñ‰ïÔ@¾Ts,¤ màGؾ“ùéKŒ×¶ ]ºkH·æ;²)pg#÷Ç)(hNŸ»E-¯ \ky¸ ¨‘-ªÒôo
+,k|€{VãÓoI‘aÑŸÑr
+NýÝ¿+l!ep1)sn?àÀ¼¹ŠjÊD"Á:°Å‘9Kx¡õLÐ|ÅýÿÆ(9×P AX–¿_9žÐà|üÖid§¸N¥Æ¿ë{ˆ4Ñ Èô U¼Æ)È©%9¢oDær˶B±tFZ[ßX¸,…6œÈÞþJú^ÅQl¨ï]ÿ¼ákèòžŽ¸ˆO¯@´}ˆ™y
+)[2‰ gnâ‡ïã`
+óE¿PR!WE‘
+&Œ®¢~ Ð»‘O_˜Zµëý @n~!…ž¹ûj¬sP}L¿Ñm Y.z$¡"­ÖdŽa›Zæø(•3Ὺ҃ŽfÑØpÏ6r‰ Í·Û8Ÿ;ðÆd}* OŒ5ÛYrþmýDßÑDëíÿ K›Ò-syUŒ¼’µËÓÁˆðòªO½¢>C"Q«¾„±µÙ…Œ2$&úÌRÖT½7?ÂBçôŽÓÛ”¤ÖÊ
+ïóýCþ”º„'. H€2o­2`éoK+ÁMhžâÔ.“Ù‹mä žô¦¯cˆ¨V®: ;vn„Å¡„®« u2‘ Æ¥,MQ+€u"
+É’åpu9D‘ä@¼¬gt-üH…ð
+¡9Ù~br÷†À=Š`6Ï.óº]½—þµíø¢Z¯€ÃùÖñouìwt%ÜäÒ²òH. ×QŒp¦ïT"&(Ÿñy„|{’[èe+S»¹ƒ™µù>#´3ͺŒâMýìÛU ¢Þ@ËÛîÍÕ˜ýÆHŒìw”è¨Á%»®¹£'½>|­ÒeÏ=Bç´ôƒ}¬$­7Ùšt“ŸÌùÐþ‡´j‘‹ á™éì&×Ýb>RÇž®iË©Ü( <;S˜…CHÃq•™=üïª)ÙuÙ´p8K³,M–.kÖYšI¯”¶µoç&‰;ÀXŠY§òñ…6ŸCåQÑL?‰³óeÆ7±Ésµ7L/Ûy+Š ¨è¶dõˆŽ¿¸ ”0Â@îô5ŽrKðšD™HÅÕf‘8uþ N“˜vSÇÓOÒ¢ØÿÝwž™£[>N¢¿í¤=Òì§'¤5}$©B1NÒ*}CUd?é­"~¸Ž'™¶8V:QÀË2ˆv¿KZ ßz0}ºcð-ñ€{ø‘ê˜ ³ÒË Êš8®§{5í'!.·£v%uca{åŽoc#FôÑ7(ïŠ 9ç.&:UñáNÒ«'&ÄC™X£ìƒƒåVÑ)Þ½Ûw†m®ªSÑØ
+Îœ;‡? P]ÖÜÖË!áÓÙh–zGåÉÕo CéµpPÁC-Jxq/F`Í}2‹•«î±M"šIÅý‘¿‰g,O–oäÿ+˜mÊØÀ¯LÛN:ZB6fœL÷û×dŸ¸ÖXZüS]:aÙ¢Øfâ=•\‚A?dß.ñ Ë”DÊOm0d‰\fÈiv‰“mQ΋:ÊN£ÏŒ]ÿA2
+=ö
+øN</b8ÀÊꉲ SØGG<“XK(ãgì”ᘱ† ï:DИ¤ÍÜ£*:õ`«ó×ÚïìŸÆ5$!ø6ÿ
+v CaH¤€6~R„ìÍ `|­*C‚ô‘2Ï7 IÕœ€’ Ÿ«g_ë§j»EBÜyY=.7kTsôicùT# x½#½øW!]›-à[¡* p…ษ#¿7ÆßøŬ¢aðï¾¾Qñ©Ç*'Œ[%rìÞ$ÒB:öš'ü8¯ù¯”l­àõ êýlÐ(0’PÂ7Byì¾Oè6 †¦îühÍ 3IÞá//‡´Ê£:7¡þÖK‹1œÒ[,!9Ëñ¦²sYÿø`dáüÌ–$Óõ·Pño)ÇZa©ƒ€®Æ¥·ýGп0 ¡‚ƒIN€ œCÉõ…¬ÓáºS~ä$Ìáò.º€1GLtÝh BÙéÐ~ê@Ax-~“­T-ÏJZÍ]ðeaéeZ¡¸2oþ±cËßýS¦UUVšÚ´Úù¸&¼SÙ{Dôwïʸ•ŽRð¶Ù
+º³\k­âÿIYççH¦ t>Üẩ ]|˜=QŸ.û ?+AŸ2ÖÕ ®bšæûP/a”íÈ<Ã/ÙÍE„Í'ì7}ùA"=\IãMCYÍG 
+ÇWÕtÜÿߟù‘Åá °Þ½¤£k¡„\0¸.<‰²èœ3K€pý?Œ©Õ‚‹Vºîü °Ìº¬rå“rAÄ"­WÞKó/üQdË·‘òÁj۾ᷣûŠ1«c(ªÈËdj3Š"9ò{_q–Ö®ªZ¦8"SË+¦ëÌûÂk5¸Fæ¾£,wb¬'ÓpAÖ1eë;ç¢(C¾ÃMKPŠ1:¹ënIüFZ8„Äwö«ŸBQŸÜ2o´N¸i¡ë´iÔ 9§"X¦ëØç{Ô·úí{a?H†R¾ì9Ô‰³A¬¦í0^ ­Üvs5q+EFa÷´‰­ô½>°Þ‰yrœH2/hã“¿ Fêyƒ‘\¤§7îv=D¤Ãf‹Ãå¯e&Kg ÷
+|K5׿¯ø<¯@äoqT{ÂÆñƒß“zoCk‚;/ÙÝ­ïµÅÊ:CãG&¿Œ{qVÒåØ,tïÈ1³œàêæ2 êõ<æù|+$Yfw¯–t’g†¢n?n£dNÀ‡Ö×õ #Ih‘\jŸ«9약\É4ϯæò!ÞÐÙ¦C$៫ͩžlÑ@zÆ Ý¡ç}7¬ƒð™N± …dÈ›ÎÉAÔ»þØ…´khã™1õÀ¯¼fõËjˆ£âÐMûàçFÁ‘[jvbBŒt—Lä7ZŸÃÖŠ…2+²r1LA,]´¦]þ3RC®°Ù¶žªx\³<)Ýt˜¨š‘Å+«›ónî IíÔ $MýÜCQ(âQ& ŒîMASÔÌ,eÊv¯Û±“cÑR€
+øD¹Õ‹V4»ýÒæ5x
+€yÇIØ@|¥ä=®JgfeF-´œÖi«¥ý";Aly:n­Ïå-* L”Ëpa µõdÞ7üöê½ _«äF^ä›±ôqŸ-´Yß›vQ‹,ôoÁ·r¼hÃbL³Áá}˜9
+žeç«*"pÉÛg¹¹î2ð6Oˆ»úÜ) ‘ûtãOs±t­0"¬'æ¬q9¡ ô¬lCÚ»'D"¨#nÒÝóƒÉ‹¤‡§%6›6…òPkü+jH‡&Þ;=8Ÿ"¦Ö¾D8 rÑ<
+¯­aºö",UP Z‹™(ÌÓ³ Þ# û·Å/‚&;/YfÙY
+бÃ$2HQUù-YÝfzß¡ñlöäöݵ£QºWž,]ܘ6RÐçÏ-³ÿl A7Z/5€£¢²³1Í } ´¸ò¤zRÃa0› È3Aø=1PRõEå°žŒ»{,ÇýJ“@Þ±±î Èý7¾×²‹!~“mNÖÙ@/Ы€ *›Y¬“ÔL¡F>Ãω•c¯è7·ðA˽ÅjÊ9%
+ìùËå·–ÝðifãÜæHÀiÉð¤€ÜI˜þòŽI绣,ú”,ênû¼á.ÁrÒtaåttÿpÕjQB²ãÝÕ÷§m¡­ö’¸ÚnhÄÑh…¥‰òªOÀéù‰cüVjè® Ê®tY =Ò§ˆµÈžXH³*Ûsù ½Ì³Ž,¬tºbLI›Æ/ç´s@pøÁ#¦3å™Û ´¥_sû–H¶hHêèœöhÐà¡ÙFp68fŸÖœù`sûAâg²’N)8´z™ëŒ@(‹i©çÉÅMh´²?ϱ}ÀßžJÞ¨]ŸŒwß´¬~Ô¦
+@ƒ2ò5~#ÐfâHÊ? ïÚ\sCáê»z<Ì5·Tv2CÉnbîн…ð#ìÊßÀí š÷êrq¤*À:%E€f:¥NÇŒ’¥#yy‘ Í”Tf\dá]»"H»(n­¡ôºkqyf#\È|α[PÃ]íªìš¶ð1æ’ÝÞŒY.¬ÔÙ
+ê6Ið³qxQEÖ
+iÖiVUîB°fØeešE…<$ÚäÄ8Mjl N8¬ ìd|‘97üûä7¯ÿî "ˆ'³hýVü¨àì#„âk˜€6;¿cêÒr ÙgN*í ålÆÓ¿–E{*ãÜ&L›Xé||1ìσyAÀÙXµ å"©Ÿº™”+Ølä´oõÆ›«Ê|œ<¼)PH0ð:ê^Ñ.-å3Yפ›ÓI¸²¬Â!OÌ_¢M{Ùþu€é O”4IÌœD˜êÓµ­«¸0Æ…¥ßª±Ìj›‘äçèü°LJ• Ê“"ì0vaÔ0•Å¹W
+ÊÀ]Nj R¬#|M~ÆÆ#ot­öz æ}h.Éq“ï³y ŸánÒReÑO6 kPá©ÝM‹‡Ï´ª>?
+ì?
+¡OÞ+í»Æˆü¹€¿%‘¿‘÷åV­Óór)îÆRa,á¹tÊ{â@S jÄ —XRøæø¤~ #UÒ‡Ò.ÉÍóßiLo¥f{åÒ_ÿ.i’,Il´ïîZ´ã¡#ÐÓ¡8úùqc?驾«z|ŒÖƒ3)Þâ%êxìWjÕ‘ø²sß
+@AØ€a36”=‚/.:Û
+=
+ܼÎþ¶œpcô!h”®úz¨á† yŸfÚºÿØý¾d$î”Ê“ôÆÌ!|eõ,âªdù4%¡-?™úVâNÓliê}kë'f÷ 'ñ[Iˆ‚3‹ƒ/àDg[JL’rŒ9F·¼Y œhò-ºÄR½‹µDµzÏ/Ÿè>>h›*³sf¼¿ÈREDFEz—9^€°¹x¥ŽÑvN#¼¢ fqÿî›|K‹èµÏa€[»÷f)"ê—µœ
+ip-“æhªTM>f[Úì“*p- $rÂ8Ë#Ô8qWŸrM:å/†EBƒ¶·*3ZŒM÷ŒðÃÛJÖþ?;©÷í}9œèä ÛMýAEé4ôòcÍ|gàü…ì¬óœ†µ]b¬·,‡z¢ãC{_~~Ý¢¢bCÚÌ„Æw‡îjÁ˜Å2Ë
+ùº8ícý×bC3öF.áÛØ·Dâõ`‘éƒ}¼¿UÍÂeÚ›å:‹üiìšH+Pø·"KÉ֢ǟ ×š§Êóݺp—1¥tÄ+¢ò–¢­³0¬aèB­
+ÉÌ­LÐ0šJï&Få«H¤bŽÃœ“ƤSÁ¾p¤yüÎ\Ö/ÝŒ¦Þo×Ñ_dzó¶šZX0Ç£íñGñ¹u•3²,û-ÏÄôì`¿¦'—ýê#Eœõ}Õ#~‘5²m­P¿w°M@A)¤~÷þ[´*qPsû2DmäÚ‚“A"ÆUmU2ÀigTŽ°ò\°æ@'KËyô{ôWžîl­gTØk‡0á(2Vz™|›E}O âTeFîêZº°J©¹éf0ÑËáŽU;B—ûb¸Þ»daçÁòR—ŸÒ¤y3]XŽL0yèÏ-püãŒ,jÞU‹æf®ä»*lË[¯[êÞ<”à¨×íîdâ^gkX
+¨cHF»Ž<!eE2,3ôb
+9!7Grdí±Ûï:Pâð½'Š4<zUZ´êÛ«²éLšz#¿ñœ¨¹’/Ø!5† ?…;Ï”røv-\Í/ÍþtW%V
+áǥƲd^ð®=ù++ˆÿôzl¡/éÛZž ôi'óÝ“«ï„]—œ¥ù׋ñfKâaw ž˜Â³,œm” úöÒEç~Ýd7éEŠ†(ùÏù·Ñ‚{õ„è¨^”"<sÁLî‰Bt…Ù$ïrÄr>„àHÄ–0>³×þ§Ïû‡TÀÀª€ÇÕÂP~ò®<[hÂíZ¤ŸØg»-?0úüä˜ýF½–פ…¯¥ÆkùÚ¢ÍA¯•ø8KиÙ"0Ñ;»Ø™á¿U;ç¨R’•­WßR“ÇݤE+OH_»ñæ=+W .~–šLiß!/FqÅê±î}K
+,ÅDÓÎz\3)ü¿Ø”ÑD:Fs*¶åðA >êÌŠŽ©P.ÒÿªA˜­äÍeÐ`xšQ¸ÛWß„8uᲜ`1#ˆ;¨WÅOÖÜ.ô>&±‚Q$*}As#i‡žiÊxêÌ(ÕSG
+nÊJðß“dWP}K„ŠbÞ·NeSjÀ Å·'/ÓýÍyœe{2 8y—ö †’á,Ftæásæt’á¬mSîð©îÞ—yµ­Q¦ƒ¤™å p ^ˆaOÊð‡J fÍ|Küö¹ZÔ/©R/c ¨]Vðmׇ¹rWÍQÄ@‡Ø´£z(`h’–ömZ½ltj|‚",ha½¼ËõxÏŒ/ŒÀ¤šŸ`eßQƒ:fƒî0Ry¬®Kt‹8ƒPÛ¾Ë Ü ’Ûq60Ûõ2½ú°€QÔ·¤q¤{9Ó_kLvT{xíÝ`éÚAø#.uÕ}$àe³8~2oøŽ©ö=Íο}??[æµ Šøià:êúÂ_(Æ7šT¢Gܱ>TÖj+¢ª§ÛŒ!¿ÌËÞt4B8¤ëH
+ØHc;Ýöy÷‡îJø²I9˜ =·†±Íp)éúsš.dC½C(î ©¡
+|à_óö®çv¿¯±O%>ÀñD½2nöýºŸ0\v³æÎÚÇë3ŠG
+ŸÂ;ƦÅcȹ5^˜5î~x^L°%qëÉhLwp
+.RôÔ¼„>ýQ êPbþ™¢$E'Öí°è—{¿ÜuÅ gÁ>(wg J¼C ^“ër¿rÕCy®ø.é:Z%©?TæçT~=à>›2XÄÌ”rëæùsƒÒi$'«Èü‘ü
+ŽK+iY0 ì/ëA!û˜”­ù
+pÍ›«ÂJâ,ª7±&Ó0ZO× ùÇ ÄQˆUùƒüîG…U‘ú R¸…˜ü>Ð!ÜÐ"žXåàæ†ÿüHÛh¾¨U9aS£d&ïÒ‡†o¨ÆgHÅ–X&ÛúOé{þ_1xd
+Ã8Ñ*i»¨Öóð‚ÝíX?
endstream
endobj
-660 0 obj
+909 0 obj
<<
/Type /FontDescriptor
-/FontName /JNCQAV+LMMonoLt10-Bold
+/FontName /BCROGY+LMMonoLt10-Bold
/Flags 4
/FontBBox [-454 -308 734 1039]
/Ascent 600
@@ -5781,152 +7259,136 @@ endobj
/ItalicAngle 0
/StemV 83
/XHeight 431
-/CharSet (/D/asterisk/backslash/braceleft/braceright/c/d/e/f/g/i/l/m/n/o/p/parenleft/parenright/period/s/t/u/v/w/y)
-/FontFile 659 0 R
+/CharSet (/C/D/F/I/J/L/P/S/T/a/b/backslash/braceleft/braceright/c/d/e/f/five/g/h/i/j/l/m/n/o/p/parenleft/parenright/period/r/t/u/v/w/x)
+/FontFile 908 0 R
>>
endobj
-661 0 obj
+910 0 obj
<<
-/Length1 2884
-/Length2 28741
+/Length1 2978
+/Length2 30209
/Length3 0
-/Length 30325
+/Length 31824
/Filter /FlateDecode
>>
stream
-xÚ´ºeXœI´5Š; Üwwwww§Æ× Á înÁ îBp Á!Á‚»ûíÌœ3ÉÌwþÞ‡šµk˪U»Þªn &WÓd·[
-à`acãB¡¦–tš»ƒÀNRæî@
-ñ`cãG¡È€®A+€…@èn®åã dЙÿÔÀnîÌæna “ È H ‘;û¸‚llÝåàdfþ•éW´ @ÁÜÒìåf˜;YX”Y
-W–Ö×ÒW“fgý5
-ìäà°Z£°ª€Ý! A÷ÿÏ>ûO-sG Ý%ý¯Ÿ¹#ÈÁç_žÿñÐþâJ§vu4wøÏÈMä ´R¹[Úþ¥âßfywsHë‹;Ù8
-ÿá ‘þ[
-¤8¸¹~ì–¶zÿÕ(
-恖
-ôב 9þÿº
-Ë:äWA¦™ÒH³¨Þ¨Abv£IúÂ@2Ðj·é(Ò¡‘¹#SyoÝž=§Ñ¤PÄ7¦1]Fwªi WÖÐ'õ÷Ý9áv¯{>ðpI>½!|_#ŽOüÙwšÝ0Oò-3eÄø\Pí—tºnµ‡•Ü7w ²2-åd愯CˆÝ6sœÍ›‚Êyi,öÚѱ¾r©¼0o¾;—«}Ê2–@û ¥BÄ(•¬Ûu× ï|y¸N9µiU‹ÁšhÍsN÷L|-¨õ0o…ÙënÃuzDõ]
-”Þ‹áŸ6t
-’;ò7Ký@µÔþ¥í;’Ÿ¾9íø‰³øÏ{Ï6O:o*)¦‡}Á^TÁÇk_ØËò…ûuvôð]ï‹j«ôTžÂJìs•=É ?Nnªq¾Mð*
-ÖÁ-2¸´B·’”øÞ~ÃŽíW¦“Û'þ2®±ØuIO{èƒÃJdò;‘òÉŵm‘Áâ°ˆÃU™G®Á¢—ãØC3ÊÄúoËëÚ.tCÐi4Ìø9X*ú%~H$l
-L ŠæMGU¸QKñÞŽg$}+÷Ü S…Zc„ZYöÏúÊ÷¶\hR nVÛ§ÎÑ'¥ éø¨€7Fc¢ó‰ùœÕÆSÊF-Ðfùn=Ó˜8fs%ó&v$)¯ó¢&4qF £¯·ö½‘Цz†øçƒlY±ðеsô¾Òz§(ƒfZBbŒ<ç¯Ò7ÑZMÄÈ‹)Î0Ë­cüåÎŒõ-Oü“<û€ÖøjsŽ/³ K2.›ÐȺ\^‹jIª®øNä šp–ÌOE‘ÓÎèM7hÆྲྀ¬ (ˆç€™:_Œ-@9A¾c]‡ýQ鱄O]ãC\ª]wÒM?afàùz–YçÀc„$£Õ|D?fQoX‹·ðº­æW0<Û×JÁ8wë e»Ä¢Ÿ ËÇac}p0œz— ¦Æ2kÁÞ!ƒ%CWÜIŸ—nóؘÇ'¡–î/ŸÃ@d]$(|wÇ@¡Xc#âëW¦Ê®†I¡aúfŠæˆÉG—X˜šlî<I“ žÁXÆ7æ§A9YbF¸¶¶aë.MqëFJ|?Lk)K6~æ¤!Ãòoðó›•f Ñ<ìÚS­ÎçiÙÊ$~Þ“#.”Z>Ö“Ñ8¼Ÿ+&G›×O{×&}w(q6z®@Ý»ˆ’Wvz²NÉŽ$G=WUìæ8A©k§!ÌéFY1¢åû™ G`\ù¶K‚x€}o³aŒÊmÈgŠ³«Ü³ßãK+HéaÜ€ V²x\‡µ<u0
-ANùÂ#yŠrÌÔŠÆ™'_‰r‰zî]õSâr{(ý[²qV…Ïõ‘Yñh{Û ^Öa“Kža—ÄW6\fLüp“mw‰Ó|ï‰Yi?™àŠ1¼”ñ_5ß›‰Ý>á¤ûþƒý…qR§;b,xâ$£iÚP’†@â –ð'Ï}„”˜Ì²H©·ý­ï9ƒ fdvöâ
-¡0N µ®}B¿Ÿ½Ó´"LäMÛiT¡oŽnõéÚòø~ÅÎëËÕŽmÑß”uWç„Íðá‘(ûT%o”zwÄmeÜ:ö‰¡í_Ëä$·Œž
-)‹²¸f
-£.«70·jmö%_›C×J+U#-*cHt¡×²VÁoÆ0±3idê7eSvOÛV€n.ü²Ê«sj)ö0á­c/?Ôº¾õ··5•¨Š#^õVb1“º EáM%>ñ>ÉJÃÝú‘ɱgA;ûæõ~”ê€ÂTþ*—‹ã·¶þÐGnIæyÅ8…™ÓÄ †ôZ-£GûÓ BÆÆsÞ£+åà'^ñ.ŸÊZbƒªì6/duPúšÊÐøôa?*QÛÕ‡zúלs¢¤Ö¯ä+ÂGwœX¦2¼ÄÙ=Kp×±+ÁŸ¿r4kI3Ü'Ü×wõÜ\ëÖ0ó, hÑ.#Ç(+sœ]÷À¤˜ÒÓà/úYßå¨Ch`@BˆXÔ“Åéfñ|úÕÊ6ÀwìW׫#&º?›ö‰ƒýZ^،¥½0Ó¿ê¢Ù¿×ÒøŒë+>oöó<GÜžC÷…–ïwzè&Ìz…ÂqïUß‚n"çíFî¯~/A]dõ00ÅuÈßßëxÉj1N…ùÕ̾’òu¿“‘Kæt1*ä Îr÷è3‚«ê½]¶1›O^ZGÈUfùãerŸ!ŽÄÃ9ôTq?<.]lúÔ‡¯z·Ì 3Iâ·Éñ°lÇð_ÿÚ¼¸ÎÀR6´±/ædœÙrìÀ¾ÄxP›jpŸµ9UÇ!Àç%ÅD\¤:€§<œÏ?.Í67‘\¾P"]U;09Gz~CŒK³%
-äöW“ÇBoŠ÷!­þž ä/™ÚMŽ#+mv
-‚1-káñO©/T…"¤(*Ä¡þ[¤NyöÞºYÙtÉÙœ¨ÁƒQ³Éû°«…
-„¢—QWÀôE#1¬ÂÏGU˜_àżôrÿ˜’Ï—kÔ5½0§øøµÃkÃ1^žË¸“ñiéÞD²P¤à]Cë[ïIÇeõwz5ø»b¹?xƒÜ0Ea¤WA ‰ø\Èþ‹;”
-\ ýØôð|ëéX$Z/– ¸%5Ѳ™‡|3fžžX[¨/¼…|u$œTËȻ筤¡w)ËîàB¯K<¡ç¯dwfÔB¿Ðä]¬2ðÁtÄÕ:5ÀÀˆ^QÄ(hh®· ¨Ô½¿ ÊæÀŸøx K"|aÚŽíjH·*0HÂ:/wôª‘ˆ9C+ì½GÍ– Ì’Îà* 41£=Z8ˆüa;+ægë—ß¡o¯a– Zg‰uâ«ŽC@»™t÷·
-ÅÇÏ`n&Ò¬;ØO¡V}/iÿdŒœdÊ»#=ø ]Rå—£úÑ$eFÇ2Ûð
-ZÄ[öíwÔå§Tè$%YAOìHÔ„¾óÏÀMâö….
-zlæÿŒ¨ÐÀ¸Í‚®72ƒªÍÑŸ"8Ñ[¨¥2'Ÿ2ð]“,¨1?Œ5b‹£ªÜ®ÍЄrXˆå»7Þ'<]ì@:&ÃEÊrP¶ÙƒRû°Ú_C½$èh“ö0N‹™kfP‰î¹\ôR_fÆ qä*Wu7»“…è$¯>ûziâÕÌ°i”ŒÈÕäؼíŒ8”Yˆ2öušFÁ‘6ÀO¸7Ký¾b¿••>©jdŽÏÝQä=ñĽ°;ò»RåI+ëÈ’áÏ(òÜ^P¸¡³ïv>\F$”\k<zƒãíH¸¿º4yAe‡¿PNÖ¢Ílʇ'±¼NÖ³î_ÄUùt¥üu[ëÉw©† ¡´ÕxšO9‰òèi†åø
-–,æðz÷§„uQÐcžóu’NØLýž”LUYÿ@E#aK(%K
-¿˜¬&v¿ÖöÓäÅ^í±¼®È¨ˆ–ûþ Nqä³ý~N—|S-g¨ÉLý­Ò‚Ý,ØÂ7½pü ìéÇæG9~ºç¡×‹6ƒaÀqÙ¡ÎŒ3TÖzí…ÐÚ½;‡e<¬»€ìb÷Æo“ü¥~EÀôôǤq”Í;Ê-,+Ôùˆ}àôÅ@]
-y·í£;øv}@·Rnƒ'W@´Ê‘³¼…bÑNˆ,žœj8{*¸Ìa¢Ï.áà­O‘ó‘æU±J÷Çå ôž…Úût";þâ¸.Ïá"Zò¤6„ ð‘hŒ
-HTÂ2ÅY#çKª
-—ÏTR–=‹äƒéÐEmaFÔßï®0 zoý㙦'@x瘎z’p]›ÃO*
-ßTÞ–”Øj©¢•!÷ó䉹Ü < +?¶S7Q,†ö>á¾ØÂXŒ´MùGáY7½åÑ‚=)å:¨
-Oöç¸n þ"x33qâ`˜âD>yYš9Mü¼9zÓBÀÿBÑÔܨø¬–üù)èÞÛŸ ±Eî.9S* —VÐßè!*žR Þ÷‡®y#§Ê`J›ìÆ‹¤aX¥CQÌy]ù“ÔRåmùx«὜?à6t”f`+~Þ7ëjL#Ý™Z~G]¢ÿùG"jî±)Æ«)žû´Mé±Eáð
-NU.0^¢¢‚ä¡è™Øî³ã*䮼zÕÞ¸Ò‚Éòð’“íVWB‘©†×¢|Md+–º¹*ñßpR>ºîÏÆÈ| ¼7ÐDâÌOì”Ùì ÂÐàIWŠ¢¶úæ),ll_ZiJÞ`ÛÙÔ.«m%SÞäØ÷²]·(Ž¤B˜(ćàyÓ"iÎtpîëÝnJ]‚ôçA”,O>ÁÔp™Š¥¨¢á
-în§o§»Ðr3ž¡ní‘ïúˆßü‚#På€oXiÄ”fêÓ·/PÆt.Ë qIÊÐ…ðä(¬®ŽÛ2 òHÙö0n?ß5ÀÑ~»C¨¯ágGé°nƒlJ!1lÌé—uhaNä X—õø”ʸ!Žò9<ˆEþ°\#Æ?>‚jo±ny÷b®óiUþ¹L¨ª£B¸§Ìòé;®MœH P22-1F9È,Åi¢Í`¹[®­ÿ XÒ\º;4Ñs¯†S÷cÇ%n¾´BD÷Î3CØÞe¦.¹<È¥ ²vÍý^ ¤­Ub›}%^;χf¶ª++æGQwRºþ#2}J%?aTeŽ~Þ.í\EËÓà< þæ*KÈ=Ååþ"[zÊá›P ß`KHÅÚÆì½6V
-“ ¼,8Ëj÷±Hͨ‚¡ô:ªÞl"Äуãàå¬Þys—Œ#â"Ô¼ü%¢¡‰¹Rš­0ѯ¶Õ?%#–æ¬^€sÕd–H5gŒ'ƒ–4¾ ¶Ci×¼’ù:”oI‰f, "m°1ôû{‚Ï£€¦ªµãWÓ‡¼y•
-AuùCÞ;i•QékO!Çx—®¦Qú »+Ù¾¶2DóŸ“ŠžÜ^¤Ï®ŽªÐñ}ÈGÖŒ€œV!-ë4Âz¬2 ôA¾P*µ[6¶=äãŒÝ‹˜<æÇa¥—
-ªf_…NøÀv_hŒQÎÒÇŽD´¥Bœ×zð6xÔÖU¹E$’´–aUìöðcïÑÜ<Jr«-‰†Ðdé?.Ó~ ÑPtªˆ¨ÕEQÏé ó¸W7ÝšæÂÝYkúD‰ûR „²[õÔçÌ*½o„®¤$ÃÎ3m¥P­GRls½~yU‚{¯1_ìïcÆ üÑá6h¯LobÆ`iŽkÎ?­vôŒÁ3Ëc{†ÞÜCI ·€þa~$eŸ>‘ñ£á²ä‘²Ri·Ahp}Z,ÈØ[*öz3 ³þ ³D¥9:á#`cí¬ªX’Ñ×>òº¬màAÜvà OKi`go*œ‹Ôœ¯¡Šn® é^ŸGÔÙȲ%¼ÓŒÌ bŽ0q8—¹9¡¤ešúþþÞMÑ·wTð&#ê
-¬µo¶ðĽ¶H,ˆYPá_®¶h|-9u!h—=¶íÕþþHTÿæ|@ŸNoŸ™Þ·\J³k6VµoåqîèÐýÊ~g§”s“_6sXR#…ùƒ™WëדXµ›#DäèTÆm³+i³KÔWN=ç Ïu·sI€·Á¥µã:EÝïRLßõ¥¦aY
-D
-°Ø®(ãaÑÔ®š¥In÷ k¢’Â8ŒK2+';:jÜæ Ô²ƒN»—x*é7°Ú!Ö^™s­Y$õ¥»Zú^ÒÛà0Ùg½;Xªŵ$äOí$·¨‡¯
-q•Ëê#Q™ŠbäÎ…´Ú< ÔÑåÇJ$¼ÖE]­Wje/é„dÞýDsp3ó:¥¿É\˜aFc)ôh¼ºBü2OV©M$:¢a?Ö,ý!ŸØ¢.!^ÉÄvŸ†!ò€Z†A!·f%ÕQšÛNf}¬cäíÌÄÖÆÕvO[8ß*îÇYóéÝ5…HŽÿê5€C®ÝÑd¡Ø¨î±µ KÞ±ø©/ˆ²s°^Á®Æö]qè‚Ðña„íbw ‹êøŒ?îÅ
-•Þ„{–Âþ~¥@2=èëØúÓMDkâI¬—Lr¿¦›9–-´ Ž$Z˜Æw`l®C‡Ô;ï‰
-QÌ]D¼×ÅÒ=:1ïPhœÛEeÁ; R£kû¦}#A¯r¶Yw¥³ÎVv>·°…ÏVÏÈ »t×ëz0IHf¹Å0î‰#|ý¶C,ïB¾“cCi¦GW3ücìDSO—Pî‡ÜÞc£•©2c©¸’æ.V½Eê.Ô
-mV… Ç‹°;dª ÜM8ÇNKDÎÃŒ<g|“Ѧ'º2›ydÕÒ.Épͼe¿œV°Œ§HÎUPŒŸ˜À@dHP`v\Ñ{@øª;šN¾Ð5[¡5];ŒùÓ©î\íË S*ƒÇô¹ëÅýdæ[¤iS®›t+
-QÿÃP‹¨Üp\îs¼S8NÇäω'DÏÈ>`dù¦Êä^x¶„šaÂxÌô‡?×]ȇ–"‚T× 5e{j†Ô›¤7^Œ~ø¬½öÅ´ÉAyY‡æüb¥êáJªNo%Ò£¥.66;‡‚vÐ*‘óÀ.Ša»wÞꛟ٠½Ð¹E‘nmäÖ+±Ê§9\Œ³š7í°GŽ@ÅÆò–ýn
-³"ºÎØv =ø"òµëŠ ‚„$:¦šœÒÕá}°ôV¯5Ì•ôf«<™¡±"®IÞѤ7ÔQ[XÇYÓ\Í”o8þD"Ècüx )Ñÿ>“îªÄ5m;Æiý6ÝñˆÑ‘¢W«½HÛqVÇÚë= ñÚòÍCw†¡8”IžI“$~p=÷@c)œ£ ›B3…OmB]Z²ˆ;:•SÉ'|Qâf ¦çå“ÈÕ±Œ Fð¥õìý."…Tš­­¬Æ{ÛÕ’Ûì2«=×ØU1°l“Bæ•¡2¤, ¬¯ùû4H»^k¥‹7Ñ–Qžµ0à€žÒ×nê~>/ïµ^ö~
-=cíßrwËÖr7»Û7³n Þ›£æ3¹cfÔØq;Êé'V홨h¡¯ÅWÌèµÿû´oþhW`Lšà¦åÕíC%¡5¬­|âE¦“[3–œK%÷=¦JÖE°[¸,S„ÞÆ1Ü«¤ªFÒ!㛚gK-ZýÝ<ù¬¡t
-1;V<…Ÿ5œ›†àá}s”mGö ¦Ô§¶PPsÏLæl.¾qvŒÖ’máì'>sâqì.x¦0& ¨ÑÜo)$ÔÑÈ4?IY2úDÅn)š¸šÃ
-Ëýo( êÿc¯5}ú2K'g¶šú8ñ¨a€XPr±äÿøœub6æ˜ù“Ö¿µx“æ"±Ïn³ÔÌ2zšÌþ…òya[fwØϳX]Þ  ±‹k*>ᨼ!ˆ_^:ñâá#IgdÚ¼V0HGÏÁÅÑó·-ªôu…“†ZD~õ ÀSµSgžuÌ¥K?îV¸¬û¥”ïµùø}¹7 j¤”?¯‚¡º¬È$‹¾}âÍ®)°~¤I©†ûÖï]¤ûÓ‡gfíÌ]±´Z7vÒf4žÜëT7ÉW
-ŠCãÇ¢YË}xlq í¦‡ mauS#w˜5bÙNñ:4¸ë°}Yôœÿ:m•ü$ #¸
-EAÓ¯+3²‰°[låâFG³*ÍH0ÕÌ4 ®ðG¬üñv§AD2õ wŸ[È÷ÖôãiÍüè…ö9»ûñ—i†¸LüÈ©çÜéTEßœË ;?Rb¯·øo¢JB/;m˜Dìh>^Ð<Hjú?îÕòñ7äÉa&ñ“UN²bZxÑ01=­ŸÜDi¡ô}åτíÔ×à€ô6ò–Û}^-;3l!ié³dF¾Âƒ™»&õs¸IÿUýžŽC3IkËË0?-ÁÏŠd_„M&‹Â­¤Ôð¼À‚ê1$"ï´]Â}w\yðÛ'çXz±ˆ–ÞfJðõ¥²-TR½2דі~ÞÏÞÁeû춙€2fʼn$Šò¸‘7«ùjºôÕT齇až²1l™èO¤¾ÿãó[iÕœûáËo4#OåfÏéDúƒPB{ °â¡· 5ëŸÅBwͦ£tÅ\o&صRµ0pI}C —È|BÌ-î@ÉÚE‡JÈÛ_
-èÆw0 eÂ6îÔ'jijý?ÞÇN•}_¦ãè¦ÂÞñ>2ê¶ûø…˜€³»ÊPôŠØÈZP3Ò[ÿˆÐF²m5¹¤¿®û¨lLNQCp<ÝLF|³^Í­¡hDôöNƒþóð»˜æÚg?FØö~L­)ÿâŽÊ¾Å
-¯û}äGl žcJèñÙ„³æ®Œû|ÇPÂÕI®¸“2ÉÉ£KŸW±½¯ð<Èò¥8º[ð™N¾ØÊyBñV\¯P¯øû Õ(zØ%¹+W‡, Æçõ’7Ä•ágç¹`wÎY¥?fÀívÿ)|Š#QÄÒí¾VtªâÇ›Ûñߣ–)ÐL­ÞQ¸¦¼xmû¶™æݘ:ié/R1ú9†,Õøø‘òÛHE?ß3ˆ UÌ”·ªZ ¢¾D°+W;SB5 ”®¼\K :¹b?„òJ¼R’ŒüîÞéÏ’–cítÅázmì™.?ÒVûôMÿÎt¢ßúMázÛ›.ºc1¦¤æìh´”ñ²‡1‚/ÂÍ ËTOkͳ3®L¶U#0¹‡çx8nŽÒÑ{ö‹„™œQHônmT/ )G
--Ç\qø-¾\Bùñ¾Â­¹Ú =*PõjçÔc¤‰;¤Ÿé/ˆÎ±
- ¸óabïóúÌüI'«ÒŽ0ýÖÒ£ðRÊ.à8 ‘g~>©Ûó¹Rb|".A\¨Ž4Þå¨äd ôFrfYcüh¹úóÈ°_8¡š;¹1û5M½‡ÿ[c;§hÑÇæÜÇïA_‘ÂF*䶪¦ý[Oâ¢åúòlC.•P¡’]=Iç>óéR .-Çâës½l‹X4|ÏÛ:XèȈmDKŽªéš?߶\Q.Qw’¶kb+þNõmG€‹<8«‹…VWŒ5iS]óçÚ½µøÙª† OR#Е°¶›mÿKþÉ[ö 'y0åC1Û<8ÂE?L<:°îÕl·77ଗɷW»‚|ÁÕµµ•›ÇSðNÓu,/¯ÞÕ®TJ‹C9ÊŽÛ/«Û¨”¶
-½ víùa÷€ª›T£î…eÙ§(±uøÖÝî¥ÈýeŠV›–u2+Dé¼–Š0¶¿'oÂ÷H÷Á¥Gõ  y‹%~¨¯³ÆË‹É,•‚Ö)QùœZ{|Iæe“lr›(u ¶q:ª‹º LBsj›e&dåo( #= qåÃÃzü
-Z×Ôd$Ûª /¬ªp^›G¦Ë“j7±Ö¢CÙ/÷°LkãË Nm[Á½‚~ ]tÏ}¡‹Î §…{eä’ÍZ”s:ó:EŽ8ÜdV}ÛT7uŵ Ī~$6ઃx:Qg.5ùë’NO¯¼Ó6!5Žø ˜#I"náÞUŠÇ+¦ƒ9‘$ÏõÙ·_B¯¾<µ"ô­Û,UKÃ`ºäKÃ˱!)Ç+u­D ¬6>ÿ¨­\F%»"&1®³þ…ÎH7“™y!œ†-TGÛW±;oØúÜgí{åWIfš½`|‘\`´¤mu:ÎSç— =˜w¡C?óÅvj–[R`ÌDÌe­MÙx):Õ Søƒ²ú¡©=S›È…3D¯ǘFbƒýDû{⡺õ'ý9! ¶ŸL“MýR¡ ›ËZM;4¹ösó"ÛtÖúâ33Þ<%˜fÜ?®µ·® wLXÇ||Å©~€Í—…ä~y`M+_[íÄ,ŠQ”®Þé|9›)$"·y6ÛªŠee›1EÏì>’mK#`~=§ÊUsJ€:ÕUdð§x(ÚP'äÖÏqØyv²Vz<{«$!žoÙŠ³€ýÄ[án²MaÖÂâüÛ^ºN°ƒðdLºgVR<áÖUJ )jåóA¦Ù„ÍÎÝ÷C¯í÷•Có¾{Ú÷ÏâßZLH2áú†‰\[?)í|FõtUSmœ˜'M8tûŽ‘õZXI™ÞfÄïFÍ÷K‰Ÿ`q›BÔ7°>ø)÷æä«0¯É«!;3zèúv°8W‚^DW©~š^aºô˜€_¯–ò„c°8ÛÒ4¬cËam÷eÍ›·qÊ8_Ë֣ɸͫO2$.T+ß;ÌuWº_y+böÉÕok¿ó¯Í3ƒö-­]}=Âé‰
-`0)YÚNíq“_?%Ǧ8dšÄ–+ÍpN1˜ ŽZ­6è é•â"ªìß›¥NïÈHaieÓ\] ñ•Wr³qXž•;ê±&Ø™b¼ óME ‘]I§f{½¨è¸kC•äžG¹ÝæçÇÉr(°f‘Ö]c;¿nÿ‘½è•ƒ¶•…•¢HDV_Œ$ÖIãv™µ7Çha.Áá²ÜóI#ã»h7CÖiöÜÝ¥ËcÁ.RiŽ]±Ñ7Žq@
-ÔÂ!·AÛ“n^6ÒM|1Xds)°WÓø–ú¤ÕŒŒv37Š9aò›ÒEÏÊÄØëÈbG¿ú4Z+T…6™òÁF=›-×}‡ç7bIål<Ì“Iô_ ÙH¦ž ÔFQhª
-ê7G.G(J¶ìu\y³¾¹.fØÙáXûF~ÉVûŽê} &×)·+}£¶­±µK•Ç!—Ø2Œ·Š]Ȧûª8“E]ýˆâQä|­€û‚>Þx!Ö~]…s,ÖítÉæðëìØ9?˜çrö%`Èö<ÜtŠí4iÿÛé°6!M§ƒä'`G)~W­zk6äàšZŽ<HIaÅ8Ídòžh`K@<aˇѳE¥ëÍò}žR;«¡<_øy)ê¯åNcôÑ#ùûñØE$ÔÇ·?'¼›)¾S`Ye1¾hlƒøèê"[ZÔ²³^¿N‰srÂP@B3Y#„ÁÚçåE¦f3Tn©Z9¥¿†ÁlÓÂ{=oßãé¢i!£÷¡—'˜°ÕE´
-,x¤6·|äMJ‹e¸ýîì:íý¢ý;žE_Ù¯¶äÚÊÏÂ|ùs7+šïeó¢ ^ùûD*âm›È$[#|…èÜ2öðcB³ÀÇ8×ωshÝ~…kûÕ|_JðRdüv*6öÅBÜUŽ.Y¡ ýNN)4îŠþаûxÏ'îSÄ)>–XÙM¬Ñ(aUfo;Âû>»äx˜³éÌôrop±ù%ñðŠðLô®'ë* ÍR³°– § TÁÉåÓjSм{ªAÊ–$…+{Ï@Û3´nCTYnÀ©\ Ö>eþ8JˈgÜw¸¥KÌ‚·)/j¼„rÞñ}ÔN©²=’>bõ“‹X"h¸ÚÕ*¢Ýû7Ù³×ùöX^Ö¾ÒfQú®§®¥ ¦ª;Çà$J_Xjr”óÐí%Ø2ÊQ<ZTã¯=çÐÝc=6ÎQJð“å ~E³=§Ž´°8=¥(j¸!¹ÆæߣvÐÂÇ‘§M;J¹„˜YËl¸õR(Ä׬‰pÑ4„äf0Ÿ'½×®$x¶÷-Z±Œ_¯þ®ÉoÒæ£xn÷dQŸvË‚Á{«T™FLyi¿·`9!´.J¢‰Tz_áÚEìhOŠröEzA$´ÖÅ˧›¡wôìðìŸàÒ«±RDÌA7ïÀ– ”mä?Ëy„8¾L†¨«jŽ¿_ô~¹"ÒÝ曣qgJéq……Ï­NÎ,íýhWëýÚ«þº—©f\¿C<:HuáxSt–/´iã¡ð¼O¤WçÊœŠI²UO_‡dúØÄdÉ—mÏpÅ£ÈÖ:àxü@oÍNp&ÃôÚisƒ‰é‹f^ÝÐÙtF®A]#µÑûw¶=w]S %'ª‡Z$U¼‡¦~“DŽ²C+[À”å~ZÊ7sGÄ V©Á –YÖ:4˜7’%Õå©«Â
-ýªå8C[Ui‰K6R‘/ÌZ"Míø96_£¡ÊðŽóìó7Vy„Sïf¼×C¶´ó×s]¡óa”ðhH4sél7‰åÕõÙæ//(f„ }›UaŸç
-kÒ†
-Ý þÞ³ólì¬ÚâÒ![Ñ|ת•iÌ7sx(²·ÍWFLjáUZµâV¦å³›ÉÁ­ ö~±Ž:·îfí”±klÒ6ði=ÑC EìÍFNùÏ)CÎúÚyÓ¡­¯B¹i7´Äé{–¹!åøïDûr
-';¾Õ¢ÿÈÝÔê[¼Ä1Ìq¾½ïΩyz/·}0šh1 ÝÃþ.‰ÛÿÎx¥ žéÁY’ÜyÝÖéáÿ e4šËŽm¶˜ /«ÓÅã$Á*ù ÜÒÀ§Ô8Æ92„fðíÃÕ/gÍJpù–³P,bJu~qËsê*P·–›{Å5Φ5 mAâhì¦c-¦ËßÍ36ñ¾˜À rJ­ ­ûL…ÿÔ2òËDV·¯¹ï4©v ¶U–¸H’¼iJlào„±P‰ Üsò;DO!Ö „[ŽÖËaÏzºß3w­¯lù5@2ãSªFàHDyú–¿GíGR: Ÿî“‘¼®Ÿ­ŽœòÕëÇ×v,Å¢n
-˜£»ˆ}iKæÚäÚ|÷UsVGÍ€SÿOxÛô÷™Zd!ï+MßÙÅÏq1ÖÜ·Á}Ü« Zã¯Þ-rWÇ©W¯.u.÷ív‡Žõ>èäå—1½> D|
-ÒW¾Rí¥r ïzñÑŠÝ–OC_õ ÊwnðçÌþKŸ-êü·?ßh+ IS8ûiïŽD ¦³ocÆãVFZQŠ@Ý~ú† Òã±ÐŸeY¢ðçD¬Ï#ê3KºF˃;~\>¿²Žå=#ki Û?þnÿG¦jJ<
-AMëb
-{¼ÂYj%“ÕŒZ«›ÌÔ£(E»?‹£“H=Ì3@'ë¡B ×z;eeßs«>«4\h ;«‹ãÕž³ #‡g6Ïÿ{ò¡¤äÕþçL„æ=è†ÁÖûr?ðŽÜ%J©ãUŒ‡…|ò)7js0¦5‚30;"0ÕÜHÌ¡0“Iú4ú•ÇœúdmvÞ"\b’¨
-ÖævSuïu¤q’˜:ƺv‰_®všeÆv la³lƒþL(›á¤÷r…p½;©ú| .7™Ÿƒ,ðþ·].5ìÂ-¥1YÈ*3´_œ{“ay½à4>œ*fËÚXäØV'¹ÂE\N)’ÌÃ9ÍbÆY‰Ä⧣nÅ€–5ïÅêý8ôˆuÝë±à,¾ÝWùçã
-( o£tþMœwé“Æ6žåSÄö¦%ÜĬÔÒµ¿ê]~‚ ¿Û“üûëņ¼¸ræf `äÙ$·,ÌA˜!|¹šL³ ¯¶,0€–âqÈA…U‘{PËõ%8&oœû<.–>"
-!¯vñ¿ë‘þ)ìc²;S.‡Wƒ0¼W¯r”÷äÁ˜QÙˆ#¬Cv¸'‡èórÌöª ,ã,`+à7–¡ÚÐûwܨ¦X‹Zv“îKFÓÉ£¿ÈP<Ú²‘¢Row¾%€ûÖoÙPàÇã)a{|èt#Ä~ {¿Z€³èCËIqU­âß/ºPŸÒïñû³¡ïI2>‡L$ŸŸæRÏBŸ€OVÕÅÌÒGI"06SI\èï÷\ü›3nèî<
-õ¯
-×^Ùf;'ja˜çílâIÞܤ¡û䈒y½ƒ>LêðÈ ï¦®”X£ ÄĶ¹ÍKÝO5#;ŽZ0¨IäVÐ…ó–†-shB
-s˜J ®¬ºNV¼­­œ=“>´'À¨8`ž±G=Œù+–œ9ƒ„X饳&'$õ›”µméƒv'qrZ~-†2<u=BUìuW}´¯¿µ)ë[ûë‚\|>x!—s®Ù:l_¾ƒe5d>¹¿1ú¸–Ã…¦ˆÑ2«˜ž˜î þ¯!•¡Á@ô·÷dÂ`y³…Å¿êí³žwþ^6aã½´Þ3 ×{
-þ¬‘¦Ä4Q/jTLÏóoŠè™q{©—ô4ãRN÷-L^àß1€Œìµ—ÏøèÔ©ÃÕÄ⶛Ԣȣ:ë¯ËÝŽæPJqF6ty>´õÒK‡4†3Q®mÑ(ƒaÓ3aÕÖË'¥¨·²EAPš_¶ –o$L¿¢â.íÄ—1Ïv±èþŸÅ x£@SW»R8aÃëËŽóÞODÿKÆmE(SmÔúš+#!ßàV%Š¢•€<༫ª!~¯Y¼Jlë÷Çbçb€Ò8QS±qÕ¯Yĵ_]6ˆ`!x|¤ò‚]§*
-(ËûXë²xµðÌ<ƒ\Ýëùº-“Ùóï…/ZMÙÐ/2ìßö‡Û”Ëˤ¯»Qm«¸%¢,ûW…„…ß| ¹~V¦¢èªcæ¿V’^¥2 €j \´yʳráDDˆp·f‚hAè±ZÞÁ ²úëá§ÿ³Wü™;4˜ù¤ÌïÑ?ÔºòlVÊ#pàǘ™G^léÇ2ª¤œáÇ£Ìá:rŒAtˆ#B<š$Ð|üãÛ~ñP¸¡ù!ºðíxØŸ3ñD=î6»õãÎ.Lõ¬ì´‚ü6¢2`dÆ…¸?šéÂ2¡$ÑqÂ"•ºÍ—L‹ØY,·e`•‚§Ý*5‚ƒò‰ÀO(°N᪅Î_¿"Ú"úýïw «c€Ïîi¿- Öc~2ïÂiH>öàÉàÒòhdBiÆ—¶À0Éà5Ý‚ÈGÎfKËÁ#äIjxõÏ´r# Ú
-€öë]e;ÂŽ.{ñ:Êk;µNXrlè0.9}¾@K¢n5,¿#æ…ʉzÅJ<O>Ž£‡îð'iÍÙgžJÀXÅu!Ä"6¨¦DÉúØ"µFгö ¡Ñ+º`6
-i :§FÁüà¿¢Ÿ¦GÈFsrnÆì­Ù_ÞO«?b»¬“½W·ª§Où/Bs·²ßƒ`ÃÝ{tݬ­<æ2;©Á«ÞEÒôÞ„÷:"ÅiAoQ‹ ÂTFs·2 ÊÙr%•çIs’ÃÄl_Ä ´ 7ûC7†J‹2\`mT½ü¬=!»8ó‚ÿ騫ô³¤Ç2g¬y )•ÁÀ£–'øœV;L€‡ýx‰\^³Å&`–h*fàK½¬AÆ9¯i<G¯ÑÁZqÅU-Б·"ú§÷òKª²—bÆ ™†þˆ,<iQs·¬ä„.VF‡9
-M!6ÆíÛtHè:I¬WÓŠ‰N‰:ž¢a)×y
-@T°.ˆèXãNï'H/Ïò\èæ‰JÒ p~âµ7FElÓ”»½“3 õ”x$BX‚ûú\fhdL•`쮺›øãUëÎoβÁR½\N‹™^ ™©ÒîÖ«ÖüR‡ïu¶&¯ FÙ™dðZ£x•6ÙÜ8^Úeáˆr©<ÚŽÞÜã2`Œ¢¦™ŸŽ'Ƹ<íÛÆûÞ#¬Ãg¾[àéÛæq1HÀt`ìÏ »¼RkÜ èP À2®‘•ÿ<Ü •Û
-ØÓɇʺœÎ¬¾æ“ÂGÂÈy˜‘«óØirš"qJ_}´<ã Þ¬»’I®'È ‘Žz°Y‹óôX©ÐµvL«™8åtÀ<çvœ¢¯ËñTϳ ÞÙ‹¬a °tâ"¶BmŠõw¥·ò°P¹^“ÌE
-c’5ÆžŠ“ÑÐéD¦ž…'{mp¢UNÑ’û‡3û‹DÌpeE@^_ÓŠi›o]úZßtq ™… êÑT»R+e^ëÔˆb9,¬>Eç7q*Üz›†ÝÕ Ø¤)üܤvíßá^c1
-‹àY%OÁOÚ\ÀVÀ´IéLt›Øæš­ñ
-6ó0LÙEpk½ñ˜¬K…9Êà [À@`7¼èSm(gìƒØ·n`ô¸×:%É\h_iC%{¸Êÿ*>Ì€ÜÁa/_2;K€`b#'îH‚Ú}‹ä¦˜ 7 u\-¦ž`œÔ~ª÷_árÙµóbÞ Ö„”ÁôQ‚îÒ|©êVŽÅº
-<zÁöçaÉF¦H#5Í3¿%ŸX#{b‚lþÿ~_›µ ±Ø àO¦ŽÁ}ôyÏms]i‹µQåTÒë¹Ôª˜ô£þùœó´#«“Œºm•ÁKMb†‡#:ÊÂI†FkPß“Ì
-ŠÂF\á Y¿e^ÈÏŽAK(S?=dÞúÒ`5âq‹DlÏŽHþ¡ëȇðG«@û[ÚXƒSM{†€ÐÓ*ðè¼U­@o_ä| s›÷Jà’Þd ·ž3”ÈZ$Z9§ýUÔ.?ÿä9ÒóŽ¤?äÄK
-yMT~˜¦O™ÿ—Ö“rX‘×ßÕÖ—=}Äh[ÃîRa²‚¡ŠöS¯¥z·òÔ^3—›Ÿçö=Þl=t ¬µ
-¬} áÀ˜Ç2/ìÎsàÆ¿túþ¼åDÇjÍ¿œÖD³æ÷‰‹À7?=þÀs*>Ó1úžj5Rv ˜»Tþá쵕µk,æËNŒ½ðUÛ·’ž–fõ9˜B˜mW·M‚h¾ÞÐBF²I&RÝÓÓä¹(ˆr^»76|Û@ël_Ì_ÚáxåŽ?uÔ”ÝÄ8¥ \FáqYV:»ÓÕà–€ímV°;뿨®0(ºMçúÎ$s|KºUúÚPŽ½ bƒ‰EmNÎmpV­ÄŽã˜¨ö‡±L#ˆ+è}gE5Ì¿E
-T_Q­÷á„žçm” Ì%‡÷rn,¢<ã(¬þçõ€a2‡©Œô…¥«µX HʧƒüC`èäœa•_q½]мŸEqªšÒSÀ¼6ƒ­†ö…ÿ¬xj¾«%õÆ)}À¯ýÉ3¹!šÍRŠñݺl. CÚÌéÅש –ThÇ•)ëàô—ç­‰0ÉwzШ©%§3$+ÉŒZÀ \uz'‘Øä©öœ±‘âøüÿoâ::¼ná7vÏÊŸo£7“¨u:U (j—Ú,K²Ý†DEmc#(l뇛;Û’AÓåG—mƒœtEŠþFíª×‹õ÷§8vn¯t;ÓXÖ“êJ†šY޹ǤÅéÍåÜì–n¿[}bºïàæ±KDÚHÒhžº*ymKß~B/kxÛwÊtt,
-5§ø mŸÑ’,âÇÅÏúpjFî=r h˜Ãÿ¼åuèx~xĘí`O¾pˆ%Ǻ™6Ňà <–¿ùu‚MncÙ¡ˆ–:u±cL÷ý5ý^íRëñ®îW'MB/›¢*-/1°³fÌCGãN§*¾„åC@þ‚·à¦%·“Ëiò%y:ùzœã¿Áæ\E-È8š%_m£ô":y…ýA¾$2›Pò8ÊeîàžÄH)%Û}¹iÀ~pôÒõÆ×ôFdÀ n×3 €fóGîm¹TaY\™8X!f=>yg@Ü+ÐÝ߶„ÅtX½%'€Ì\p·Â*IŠÇìÿ¯…;\T÷˜$V`Õu^¸†
-ftR,A^EÜ.@LPvÿ·çã~ýD|7ÛE]/=ê¤ûÃ-Î3®`$~ýìÈÝsM›üJ=<ÏÕÝg j®Õû##×#œ"SOîdJélW‚²­ñZ¹‘ý‚:Ýé7T0LøKH­›SÐTý‚^SC†è2¬Š=n?®Ý¼/l-@)¹C×é?Ô‚ ¶Cƒ‚†§@[¤¢äãD ÑýÄg‹Ä/³ƒTuðœè(àe÷…¥—;QêƉOZ0áu¯º ÓQX$E bR F(å5¸‚¯q°ªD+«àOÁ4Ÿùþ2Ê„ÐÙBÎWÆ_R<¸é‡L¬JiEeË|¦S´x/¾zñ¡Õ­NmP.¦~ä —é» ÔüðåŽXΫÅy®‡¸8Ÿ®ìÈáTM§<“¶™5¬ýçÒÀÉ°Ô¡Pøw~Y~ª)Åp„U‰£Ø
+xÚ´»uX•ÛÚ=L§4’‹î”îîîXÀ¢»[Zº¤[¤;¥[¤¤AJºû[î}ÎÖ³ï¿ßÅ8îsÌ{>ϼÞ’*©2›Úƒ$ìí\X™y
+vù îbü3ŒÁCïlt¶øÇÊÂÊþËìô‡¼&c'  ø‰mæò‡™ã?æ¿Ù?UYþ6[ƒ\þ'ž›íû¿À‹5ùq€)šØÛ€÷Ÿ…±ÿ²ØÚþ–€…¼¦ÿ@6°’¦ö66rf³
+ÙA÷u’Í¥$@|Ÿ@Bçí,`c@] ‚-'<¥ñA
+æ>»*0¸?Ÿ­}sÆ8G
+=‡T& —DÒé´o‡{ñ}‘°Fþ=3S9ª­Á†Û¼ιð†ËQî
+ƒûý"ºÓô¨bf „.êÈsjÑþ=éÛå>RÒ)÷òî=ѯ¬6¼øox//æÏAådÓ#^öî'íC,%Ÿùû4ö´ðßØ>TWh)<‡YgË»‘Âó@ÖOn+±EŹùhàè\™¢˜ŠŠ¬µÝ²`9ÇFä–hd÷
+£E¾†i(tZÖRþl³ö1S tricW`·0äÃѪÄû`ÁúÕ8VÙð¬<¡vT©~Më¥f
+¥Š7+#OYŸÈºHÜ6ÏÄ `îtx™ó[1®»ñôÓ„¹R·-jEˆ :ˆ•åßô™w9Ð¥|“<1ßÔ=k¬á=ý‘ZN@O2¸c”= LænbæJïÍwçpjéÇ„1šÊi¶±Âˆ¹áU! S‹è¼t<Ôçiôø¶•S…9u2h%…Bƒ7. Pz‹káìÂuš¨ð ÑsfÄo#Ô —. ¾·Œõs×Këk›œ"ø&¸õ‚Ìð”æmÑ2òm‹R¯_‘|qôTÕU\ñšøÄkÀV´0NJ5«5]§‰ëcRF–Ë
+5u±<‡táƒNºgVƒU/÷TôNYåsL’UgÂÕùW|+jÝéØ„ˆOUÑQ/ò½˜?
+Ô´u§÷<!ÌS;rj̇$S<W‘9› •€µ_Óä…OÊth …·î±¾PŒK¿?wfð.‹ˆï·æÌNáý
+óÓÞ°~+"þ³p ¢ÄGduɶ¨={}îMÊ­‘É©éSÁ~-hÁ†â¥yœ²‹
++ËâãZ¼b°Ž*ۙυì©õ%7™^%ÞpW^}h?o?fÀà’?´tœúætÈ Ó¢9†+ÅO,Ët¦±LƒNí5P®ŒŽv7·´r܆ì?É¿Ž³‚1†'»ž2ÊUh®¶bT
+ïôkçe.8Ä«NÄc10™Ëåe—ø‚Ó qöV±ug;ƒk¬žp¡ŸUù¾èÕEDf`DÝiÍ6ÄþM¯‚=ßDX!î³}¦A˜u[‡«JÊâ–ÓôVŒÎPHfV…ÿ¼jK¥X¦=½(.Cò{Ð|
+€´[¸˜0JìäxêrêÓ]Ö½F#÷ü‚#ÑÆŽÊÔ~ Ò9¢¼¥B¥}rª‡Þw6iéèD$ó1sôåƒë†ö^Yö · 2D¬Ö2éÔ]––«î+Ú±ïÞ؉[SŠÄZ<‰ºEÚí›â»œë7dW;•¹~yþTpë*R«„¤ónÄÈÚFi^ Pþo40>%+aÔpP¸~hh©³6Æ-â•ðŠ“àôÌc‚XúP!&‚^×
+
+Û^? GX¦«ä>…@Ï¿6XnÚÓºogÿ;{ P2¸—-«SN^>‰´Š ×þÆ7Kåz4Úò^ó3Š§| cvõÈ›Wy#¦‹ 6äÒò[4}G›ß’ <ï8~‘v…Hbê|¡þÑž ÏaªE}ˆAûÃãt©b~;XKvv;`R‰ñx¸Li|CX²XŠ3ÎîòªÂ¤ëŒVé WÈöUž
+®ÓåÃ1sÔIÒPŠi§R'â@Öîðdñ
+íä'X¾Ü'”®E»õ]fêÝvbD¦¯‚ïZ™3™üÔd1<Éè£H‘úìvØQ9ƒ_ú-±+n˜ï– ì[:ʯWöãË#¡ÔRB¡Ûá‰ÊÈ“BÕýwÐÏüø&¹gÒjû
+ø(”x˜ùG;Bo%‹´Ög3Öž*[B¬$f´ˆô!`Ž‚î×Ø‹v&ªTGÎz‰Ë¾ˆÕÿÐéá²é÷ö‘vÆkÂÀÉÞuñàTºJ‡ö}âµjoÇv‰Ï=Œ¬ >SÈáu‘Uþ>ÿ}÷<|ý:R_Ä•`~å¬qçAžéGR(¶ˆž6·FÏ;|ÔØ“Ùï¥Õ¢í}Ö…|üþœ¨Ö»wí§Y8nn–W6©1[5“7ô[Ïvõ?œÑGýBÏó‡Ð›-Zò$É8jÕH©ÛÆ¡ŒzWW\·KSr~î~n§Ü}ûœëÌ%³(Õó:¥ôÞ·=â‡m¼Ç}¶™ÝžzáòÒ™ñy]„Ë7Z£÷ÄôÍ´0£*]W¼/V‰]öðu#ØñÍ:óÜs<U¦²ÀKdïhŸåwÔå9Ièï:‡ƒ ÚðWVƒt7°º þLǵãn{§÷ Sº”E²¡âZ†Kü%ýC¬Éðèþþ”-ôY×K‡…=?ªpÖ1FHèP4 g-¶
+>wÁœàÚ`! ²Cz¢»‰}=“¾ýiägÙ¢k|Ê۱]\ÜŒ¿Fó†K¸›xQ‚ƒ‹„¶¼Uf•Uo÷‡TÊÂKÎñíh”F^mÐ×8”:åÄÃ?_áÝ@·æFsóä¶öxEr¢ê,[s÷TÛG®ó<”„±,F^|=W6Páú"óQ0.õÌy¡óefYéK€Ú»ü>ÿ, ¿H
+ï+厜å¶ò»z%²L²4,ÁW8p呵MTRä'¾¼>MjÞä +EHÓjé(ðRÝòwôiÒá<ëæ‚kÅ{¥ûä›xú†zˆŽ ßM$A¥Šl4yâ*$w­ô¤¾
+´¾ìód¥ù¶VJ›-'IúBôOZ¸Àöjô$/[“—?•åæ=ã„5>‡œuPÔ‹¤Fì,
+·pµzšÕäµ÷<ñ]6ìP:
+ÞGŒŒ6«uÞô¯ÛÍðÐݹÑÂä4ÄU£Yq”á%æq*¯"~ ŸÖ[~у“˜§)i•Jp–+]'´h •wSb0ЗC¤Jã'æ7”g×@î„ìn´ŸÌà6 9=S±7?Q5RvpQ.×S§¬:+6N º=#}äró qþ¸ƒ–=¹÷‘î-6=›>m’%á¥üú©²µtšÈŽÝ[9:¡ËQ¿sÆia}:[){v¦“g
+»¨\Ì•4 ટ˜ôRZ’+{b-s4dÆ¿Ž•€3¯4M3ã k„©-¹“t@2A~²R•ã\`üR^>ˆwg*?'—k|@r ·º÷Å;ÇgådÍj¶=ã%¬P›ª†^ # ‰¿TÞkÙfkM­YptÉs-ïAÁkâbD‹ÒUÀ©´ô
+ÕÌâÆ–w+}b…ù-Éå'9…¶ÝøNîô­÷‚è
+ Vqz?_”Äûž–L¿[3¶Czä}·¢h(ŽþQ9ÑÙjetÍç$P”¼W‘MsЛ_ŸxáŸÑó‰†!éyàýRyG=× ÉÔÙýëÏ€w«=Aˆ>1†û3´ÝmÒ…“@æÈô¶ÆÜ | ä>‰Äi?¼ë¾F<öœ#Š9P¥µ= r‹û¤Í
+¤nuž,5üÞ0‰•ÕúØ»öB…¬[Â*Ì2.?Ì»{<ÝW¡ªÇö¨zò°¬z!ûUõ¡J9I5É¡\y( g³ÏZëÇ<¤F-
+1 Ñû³Ce\>x5
+gec®ßë;¶¶hqìÊS‘TþL•‹ŒøQ Ÿ’ ­¶ªj6"0cNˆ<Å(!8WxLÒÍÞ–Ät'¹Vwý0²œ³yZò5*©vjÀÑ8­êªsÄyÙõ¼¨Þ…‘:°&°±,¹krç\u¬DÏèlt}ÉnºÌ÷3„)Øբ뼳kôrœ½ë>\ˆžr]
+Ðx¥Â?LH¡$¡¥BN¶r%[ÀŸÀaºNšþÚ†§ BKV“¹Ò¶H#I’|)Aðã—NxM5šÆÔ¨
+!ÞE.ËÊl#0Ô貇Î:~ZfƒŸ›¿Úò •˜ zß„BBv_+ÙgýS,Uó»ÜMâ6‘Ñ×qÞ(1B˜"™W·ÃRð«+çÈ5íìÛ?
+&šuž$Ž$¾VCÂÁ+ZVú0[5Âò•!õ‡qãå
+ÅrÅW²ë¬Ï=ŠÝpƒ/d#¾äVµÁn¾UlÈ~Iµ+Ÿda#Ú¯‰ƒq‘Çm¸ôHÉ?n‹¸é€‚©ðW)6îÔêDÉàøÍK%:S.‚s»ç†,¯•ÒZ£ÖJ ˆ3œ}qFö¯• ô„{çà…¦-B,r[é~æ8o6È[ÿL¿f[…ªénóâ•«yæ³ ÖÅ¡•?›O‹m¿hq¢jH‚ .ƒ1Xp-(ûØÎG±À:…¬ö(¼¯J’ºò-¦yMÓ†”PP¸¤=E&{ßNïfû»ŽœËð„Í[²a» çѵÜt îw·GÚ™¯ÁÉo3I y+Êî!.J)dK¸òØ•\¢Z&¿ÍÒÃ1>óì[·ÂÔ;MÈ*qÿf5j÷¥5ï ý“?êµ ­t
+©ž;Þ kÕU£îw[þÄçôðΖM'ydquß°– Þ Ç™ÿÌû°üA®Í)cB?P>£YJb^C™B$´0eJC‚±¹O²
+'‰nÄÚÇ'¶+û¸F BèÑCV¼×½¼}ù+EÆJI¯kŒ&—ÊFÐüœ%“Ðhý„ö%“òF&uYA1þØD‹ ·®,½i˜W<ç_£"‰³kߟ1
+Nn¤È?pE¾‡ÀâY÷R«Ø?'¨÷›lÙMbVhŒ&¦(¶O˜§5Mžd(Uf³Lš^µÞ»Yê¨Ûœ9#jÒ¡.LL{â<Ž- zš´²!}î½t‡‰ ‰¾õ9±Ó´/$®úWÓþ„?4½ôtÑŽ"ÐUh?|{)}>¨¥^©
+´ñû<|^tm름ҭ 5')25M;²K›%\€Ì*‰qt|ƒõ„Åã‘粕†r®ç3>±üìzÅ
+ÄÐ/ÀÝ^}êžrŸÒ¦ða%Œ_b¼Q¦¢•`õz,š™–0ø?þãpÓ úB`6ù=”gÿ›c[´B+ ·ccUe[Äá|Úé7cAÚ3ÚקÄñZ«QjJÁü?7;?«¾Ä½dÐшphYx-a®³aA±Ü8Â¥žÚØÇ·ÿJƒ¾xéE»šÎutÒ9†ciá*S4Qût%öÇBEâûò¯¾M˜Xè—© \“›ön1°Ë¼=†o5”D¬×LàYÇšÚõ'÷«—˜Ã¾Ñ£/ñ|ã@m¹yÕr8'\–Ó¹rBâ®»Þ‡á +Sõ–
+¯KÌ™À¶Â]zªö"E˜ÿÎêÛL!õ@)¥DŠŽÆ&p«Û’küÓ°teáC§­…â"‚LçÕáˆ8u8®á0Ê"^Oð€ë¨a\?bEO·ç›E™ÙŠwV_ ¯!gâ6¿cÀܨåÚjŽ(‡(ô>+A8ª‚È¿ØlEÒ­Î73àE*r䯻 £ÄÄMÓ‚Rvh}*âÅ.
+ ž7ÜBx7BW«iÒçÕ4·‰?wq
+!|r¦‚áh3R5Q«PÈnUJ'—<TüÞ“?<¡rTf˜£4e¹×qžŽJ¤Šx}*<Æú,<‰*ò C ‚¾ØôX튺™–ö»nÝÖ·!‚b?`θ,VΟ–èØH‡R«ßÖ¤±hÁ„¿c®S£ElL5É+qšòzhÇ-åw¼ÈŸ!UBÄnpþÐuĤ¤ðéŽN>yY˜ÑpåšC¿}â*|¤ IN˜^ĪȄó«†î5Å %‹ï>]›Uã5Í¢ˆ1‡loÏ¢„¾Æc1ýÐ¥½7Lz¡Tø,oºv³]ÿQ²b5Dä7É©’qšŸUa¯ãî™W²Ë²G-7l{u؇ãì‘÷iÄ-Vxe`›„M)i›Ëú–µ6âOîw–TÆ1ãS·ÊcïÞS8ûÀȶªã{À¯+*Còäm’êAWŒà ‡(Ú~Ë£wù¢Ê&À±Ø„½8ÖÀpr}çb>v=sƱYcWÌá‰{é,´+~Q÷{šÆ`æ'¿{©Ô&ÙÉ*Ú—²Ü=Íp£’«~gü串Bæg@,q¨ª¯}þÃÞ/ð8äÍdzú¬)\·Ó7éoèt!–šnŽ³æîå%0{>‰©L
+ IPÖ m>-x©¢„Z%j
+.•g­­<¬`79ÿ_±R‰¤[+,Ÿ éˆÊ-Ž
+G[0µW©nº7½¼óãèôhF¥³²÷Dûá—)nïD¤añË–W·‡s¯íe¾ý?·©c—¬G¾¬¨=Ñ=Ô A¶Û†íàŽv.šh zÅ­`,ƒB6G|.?º/=‡©®øŠ¡QˆÂf&bìUt²ó3ÿ¨`Ý6t¬¥Ûõ¼{¯ÃJEåôàš„A+ï•1%|ÂO<Íö.¥fawÙ¤*ã4ô&hšÑžr*U–)ØpH€¡
+Ñ»Hj^ºüy¬ê›óîþ·dœÈh g4ìÇ#ŸlÚúj<Ù¡tØ1š7íÏËiuR¶3;m“ÉÎ_¯‚ÛÞŸh}f"Î1t¯ZÇÎY¶q—²›·=îâê]|ÀÙ€DBtàPK–4ι9 Î=!/‹Ì­a+BܸãP!wŒ¥˜gÄåWCv³8¡û÷ñX“Œa¿¨C-½àbœ^¾ÐÌòo‰@Ƙ_×àüœÊB²ÕêzÙÁÏ=ƒl¥–‡O÷…[˜ßD}EY¾f…A¹­àG©@Äl„SŒä„}ÿ’_`ï\ï“ZªŸÉVžÞŒÃ>Ê OúÁKv#1¤\@(øU@–yfðúg`oÄ É(SÓÝem2“2[N…¦Ûè“ö§.èjÂ2M‚ß%n,}ù=­˜¯8¾8¼¾Þ¢Ý4’’³Ð[Ã×ߢ£!”‘KÏEraÎ,!›º3N(Už9ZÏ®­[œ I¯—]wvˆRé(‹g´^û@Ÿl Áå±0wµÉ"°¨»
+'ؽÊx¨®yÂþû
+÷½:Ý÷Œ:´«Éù#XW&ïVãE(4óæªWB^Ò¡#ìä–¸šÔ$L½lRïéц!ÒÎŒ>ü(?Å”9}àÇêb ¬u3þðƒzsßÎy 2Û4]mg_¦Se%“°ß˜¿î;îN+7ü[ox7âå̡װð¡ùéÌwÐGD8|Ù~nº¨¾>(ߧý%]·ëSR¾:½ö„b³ ŒÓnÒÏàFF«Þé½E¡'Âfb‹[„<Ÿ{fæÈöæ–á#íšLºSd{ÁY8,Üã.s‘v½ÏìZœûS§'¼-K‚3)ˆ.¡'uqÐÁ.Ç}(WV%³ÿžñÇzζ~ßy½÷Ñ<No r±¨ÆBèYHí"ûÇïcq¥ïÉÚš—È|Û^_h&|7ma_9ºÀö%’c¤â‚&x™ÉÀ‰d­LÈH^ìˆ3òôïý*÷’±½{û³¿n¡Þ2åb9jlU¼ êÖ
+ùû .AB©Iz¿DÄtÛt T’ ¦
+p …És\W‡èZ×áéÿÚÍ©ƒtºè¡àì¸ šÒYr ¨MÜï=Wê!“1qìÂX…©v$ük:änµék¡aE)jåÅhü>úî¾ÖB¤Úa—çt4D%Š}(!¬®ùŠ¬3âZ¦@ž—(Öf29©Ž.²Ä±©p;:Æ=:ä=YótY†ãS*É7ÂVu°f3̼ëhxú1=t×™ïù¼9Ä›ª|švâGEÉíÛûQ
+ÿzïºÏÉ‘òV1\VÞ­$À)ñän(½I¾O8Ö}™X„èȵÔ#¢«Œ ÐW é€·÷~dÄ_³©chÓÁáŸÉ3y‹o½|èwÜ:}wN¢Îп¥R?ß×mÓPÈGc÷ÃÅ-Ó—«æ¥ìË…è<Ëó&˜%Ãrõév à¿ijµ.\~6M}Z@ÿH¶öj<v]H_…w¢`ð&ÖÆŠW_b@Ë…ÊÙG%wèb¶ÍÜË6ô^A)ï~+”‰ä‰xv_ö3üéQêEäÓ§8ïè+iÖUx2ŸQh‚4èí 9w¹$Ø»á„ç|¡ÎºèØŠoÖU‰¸W£Ö<ñ¡[ò¸è]¸6YÉünéI>ã´Ñ}ÂL²VÆîùL¶úè·³‡’,ºs{a5S/v‘¯%f¥ª}QLòƒ ¯5ö`ž[¨pF-ù¬¨ý„êM9&Ã+í2¸6Ý$ •1?+Ñ&g[÷ÿ˜q]“yÑQúz‚DYù–2
+b0mlÖéÜ‚tžIÚXfEÎ+’éæ♸øæ÷äEÊóùS«n§)
+­£S8‚FavDW†í8¼[iÝgþú¯Ä»}ÑÌa(Ez EùËO³\ZZ£YÕ6¯ÌÔn{BÉ÷wO™Tg“îäÂïÖ]1ÖgTOøãéKèºDáoãqb+žj&*Ç0lÓ\jšñ¸Z< eÐZzѽnQ›*Oí¬´¥gT!‡­p’ï¾jÄU^ák+àù@Þ@ '„‹>1‡{É030(Ù³
+CUÀ4ŠDÙ攳Ÿzj«S+¢b¤V,çª#ïRÍcúBÇþaõ8[”¤ñÌú…å'öcóO‡}ì!úñW+<Ócù¾åZ%«œå»?‡c'¿ü<Ï*—¾JfÿxWíi^Ó94o™ù¶üY$§êø4ú¾¯Ö—8Öº•K¹[z‹mxŒÔ‘ è’Ñ+-Ä©hb´úê|ðt÷«n5… и¡÷¿¿6Y6 v)ó6.^}
+Af]÷åZG¢ÚR‘Ë_?í®m¸¿§\#­ÌÂ$°o‚â¯'øþžÁ’µglsñh¬3BË‘OÕò†Ëuõ sõŧHº¨ÝbWM"…¾ˆ 5J¦Þê<ˆšKf1GY3YùûózeË%Þ—o3èêh8~¯óPÝ'j€šx³p˜™hœvβÛ0Õ׬wL(•Ô
+ MsEY½´"£t3g™.³è‰¨Ôͦ+?>ÙñHï'&<÷OCã^ µ>ºÏ­÷¿óÒ©9 P›¨1•RT=ºç†ì)Ý+kû
+®^™·ý4³ìz8>Á•¹9CËÞ¬_{ #Þëá|F¢^ªfwç‘2á0Ø™ÈhÅ'`SiÏ;ï+Õ°.J#ý§ƒ{B2ÞñÎT¢äÆTüœkù3kd›òé,ìx ÂacdìuØ>ò¤º±}žãf4§ÚÀ;?DéIAAŒ±Úߘ:ö
+³¡]³?ôëô+Á¨UÉ‚H^îhß..>³š’OJ<Æ,ÉUÇÞí—hù’t½B– öÖ¥ôx›ÃÆaØîÔæNå÷9îõd›÷ìi ¯+«ŒXOËz¯Ÿ(èß^« ›T†ª]¤JÍPÔ£ŸEš1!Ž¿„jb§ˆ65K­h½‰òI*$»†¯×´†~âšÒL× ‰¦<Žl"›e­ÍôÞ›½êV¼z×?•¶æ3>Uú®#~¦ž¡")W1
+Brtjþ7œ¤ÌuòžˆÍ®Ã>‹œQl®wäÁºñÞÄ^¤/xÊ@ßõËÉûbTï>[천è°5Ѽus£îAD_È&0ªîX7mœ û¹z ËÙ¤£óˆ¹p ‘OY—£ñ]¯.êÅÏt´)Þ…•â+/¼wë!·s‘”½°HéV*4ôHÈ~éø¾aÜ7)¥Ö0úÛÚrìÉâA¬AêXæ–Ë¢ø6c‚J&ØêO„Âö‡56Âp\GçŽúy ?¢Qr¯tî›îïŒTµëž÷
+Ù M&H
+ÕX>Q{{îKÀ¥Bß‘ ül ýãü.
+*Vš:á0Æ}JIµ¡Üp
+;
+ñ˜‚@êÀVŽ!ƙў®k¥c œ7¨ÔÞ<×÷4!éÕÈçgö0ÿ_
+¡hBW¢<„þwŠA•vh,Ú^
+óHçqu â0N ñˆcÒˆ€°uÆ|¨uS:«—'nVTzÜ_ñÐbáSw¯ÄºÂ"º¼HØjfB1nkº
+köhNqïÅ–kppÝ3[™Mw†f</K´µî£œÍ?ÛEá8ï=ÏÜ‹´Œ__¥]~¯ #­ƒzÍã„´§ ˆ«Ý?‹5oAÖ.|×Ð
+'áû± z— Û–Ûä<ØôYw#?\P-Œ'—ål£wÅw R!þ0=6_Sñ¢n: gý&I`¥É™?W°Tm˜ž;^ÊÊPSx$vU
+—:“ˆP—E:SE²Ipì`x姭y§ôB½0M-˜ºR²d&$‡tu´·¨+œ²
+a›3KÝ~¥L[ݧ뀾٘Œš£ñˉ¡â[*‹*å°ýç¿R«î ¡Ä»Ž›‰¶Z>AoÚbºþübI9BÂxÈ1­¯N@aúí×ýÌNGÞˆûòÖ¹Oj1>D{«Þx+‰Áé:Lh :àí²Ø«ÍÕ¯qZ`²®sæ§FE®x)µá–$ûƒr0r w½¢' ¨ ´($ƒñ`B&î­Mjòש™$êŽÞHkòvóñžôÞ†õ Úƒé>5ñˆâ%]L¢8Õdkf8}‰
+ëñF™“~Åæ¯ÊÁ5àÞo5%£³ÆÀÿC„É:qÓª#\¿ß 9l¥`÷͵·G×A¿ªŠQá)ÄÚ"í(ö[â½g‚3T:ŸãOäúµDDâƒ+vEˆ‡ðý—,uª¢7ïϾ ß:ïÅ”±C‹JërÝ6€Íüä
+d#3ø‘‚œ kókà*MGHÚ*9F!|Ù(nhq7õD/6b5Cvù˜âUÞÍ’®¯Zmà©*:1 •d!ë
+{¾x¤ý€¾‘×/0Ú·6øÅmáS”èï_näÜÄÖ~¢«æd×Î÷QÔ š#¢«nŸÑjñVmf¥¡¨¾sK­Q°àJ­Ð£p©dÕt©ý¶S£|²R+ð‹’«f^kîÙ¸n¥®Ž™D?"¨ˆ âq¦5y¤î¾¦•}‚6 ŠÍ#ÖÉt¢ìD³iðÊE(‰_É ß6÷ÅYô¢”ýÚ•-mjüâôÙM‹±<önwîÑ'„`¢-o]v­‹NŠ‘÷;…J€¡)7ɇ9U¦uqgÿá]J½YI®s?²x**&!Q@Wof&‘.³4ï
+{Ñ
+œññû‡3eêÊÍÓn@* lçL´ZxÃ¥O
+á¾%
+Îl¸Ø§§èŽPüu›ì¼Éëê
+5øà±k“%%韉O}_(&ýL!h¬Âµê¹ñ Ãl‘"5š`lBÇå`…sƒ™i£—$ÛIˆŽ]‘-Åz–³k(—:Õº18Ï¢¸yÑùË>[o*™U"¹9a6÷0[Ä*&ŒgYTíÜÎg$(¹_æ²ë½¶»G%>•z¦ýG=דE•½™¦ÌDòöÿ!•ƒ/u±ˆøa7Ÿ$Òsµ;ro¨Þ-&­Õ"MkUð?{ò½Aæ0@žÛ¸T Xí„<Ö«i&ó¦ŽE°m•™Ž„õt/HÁ "’;ÞöAˆ¿–(EßòÁÿ"¤Rfê`…V'3‚EïMÊE&ò S#Ð{ …’z4®·ÍÍg ²)Ѓձ•#l·KÏ#o!$ëm_ºÙk‰šµhçC…'`Ø•Nm¨4x6:ÜÚÂ7x
+fy|³pâ¶0éh?ß84 P–“’´Å›M­&µ+â0©¡ ]öWsûîÏnéx
+Rµ¨öøHÿËinŒÏïíœI!Ž%A7زva¡¥%CáñolgЗ9/•³¸Ï÷3á—ÂØ 'r°]¦=ÁZZk¯íÙȲoþéú¤iõö+ù1ãîˆo ³T¬ƒöNþÖ‡0FñN… 0¼ý+jI¢‘&Ë^î l«Õ~Zn™üÍN†zu ¼¾€;|„¶8Š„/R¡l5I¹ÏGÜì¨òùpß`ã)l«nnÔ»%MlSvšô¶M©Ícøq7Ö3ðù™ø¹–U¤nd=‹Æ"¼…p¹ lÿþ).?»Ð´„ñ&h>Ù²}  ó[Öw[(ð9°Ÿ”µuéÌ|2NÙ AH»3Û&ãä6°j³ íÒç¾¢«ÊIó¼¥Zl½ŽòìS'ç‡Ë„dlx9ž<
+¯Dw^mpð‹0…z)^§8aú
+áÿh³-©?®v ã­QjYªR1“ƒœk9ί¶üB…‰ˆ?K: i
+A”q–ÖUø3’΃OƒEK,
+J.Èã>rW•ú’ÕÐÅå6ÃsDþþæ° Û^HcabÒÏ+‰Ç|-x‡³a)záÑãÈ%ä3o‘+MNOе†B
-4XpªÌAUµ%’]›î×£´)K
-àíìî±!&hºq)jàJ§]zÊ󕮆DbèC¹d<ýÀE8Í0c·/ï Â]„}®‘ZLm8Ûn]•zaÛ—~ǽÃ÷UÛf“X[NÆÉïIgg
-dJöø Sõ“9Nöpº¿jÚ1¡·!P<»›uëÇ;Ï­ô ËlYoRý& ±cœ¾OÑõhþÊ¥nko®"4CÔ—Ÿ/"¹TËÖþ×1ùµUDÙH
-½u%’Æ=57’°—¾¬¶#f>æ6E5?Ìmdq!nÒ&pcòÖ«S4êR0'6ÃÉ $N^ö­'Œ{îK}º“1H?·|¬Ûtïøžé
-¤âE-}CàXX‹,ˆÊ8mÖîÉ©(§8©ÂÓ‘ÞÅv¾Û¨0ag‡ƒX·¢M÷O¡z%"°_SÅTå¦"gõË”á*På(x¢§‘6±çl^~ùÀ¬H†}2áNÛ0HŒMçÚþ|3Ì>0Ü'‰m·r,›'w[Ôœ<nò×€5¨­¶™%Ú8)àW-æ²]Á œÙÃódÆ€ð—äêcÕωÿV”3+3íö&(ã^Q¬téWÌyô•fDwÿÍu²ž ³y½©5Àà†à=jÿܶsèR\ShTù¹wù‚ pwSàv·éFÖyAD@NH¯?›n*®K²Kt‘[™(”ž¾‚,Ý|ûæÊU\„¡GPs¯uR«l­0Ãæ4h—GBÔÄ^ó±1áÈ\«Ô¿Æñ9r۰ɦë)WR+"é–P}?g.×]º‡(vrs2Ÿ›ln pkÊör¶¬Õ–ÄmNsüžäœÓÎv ÇqT­rùwKÆýÍ,êž'Iè˜ÎǔԽxSYŽuçn‹!°
-äóñržûjÒ
-»‚YÐÿxÞ¿¶v »U`QÏÍ&v-2L
-£v×­r´D’u»â‹I†1æ­†ùºA´Ýã-¸q5˘
-¥ÞîbûÿG_(÷7Ã-ô}¦ž.œ!ßË<C`N;SùøMeec@¥Yp{êó‰Ó8õ¶æªN}
-U³{ºŽgãÆ PSõíU~œy2ƒ†9¿”N7毉M¦©PúA¡“'èE]*з÷ÁÔì1j~ûCš*Œñ{{³|H·ÌHÓÍ–/ÁÀFHz¦ˆ•
-4‹£/¡aÂ5J¡XÝ1â¿ß¢ë}…µçì‘Cà›§°}k(B“ߥøÅ( …màe£w%Õ=phr·û_­þûéž\>û“k–wbrºiaÅïÃëªzc9É¢Òµì0ÜfF–»Fá"Íà™M? é»ñƒ&S'{ÿ)¦J3%ܲ†Š~”+
-£÷ÅSæâè
-vxciü²zU@A©Æ$KŒº 0yá¦
-_`™‰Û
-~³Â~¬è•¢!…¸¼\õŸd·vŠ%T†J÷’”?aÅÊòûÒ( årdè<¬§íœB>L…3«ÐçU‰ýþu
-®îlÄ Ò 9&ÃV;¼?g©†ÏÍ]¹>MxZÕ*‰–³{T~tKcÞp+!!ª¦›ú°j'
-ipvõwwR×SrÕŸóÔb½Åc†‚,Zó:ª†n¾„l!]Ðê™L²XZÃ$‡¶–ÞøV°¤r„&s*ižc ë±iˆ²ÓCËH¾èTˆëÒ•©:“ºP…ؾºÆ7+“žÖK;›ù?:ÔD… ØAñ
-[—Ø ÷=·6»´G•Ûˆ|ö€ý&üø{¾ŒaàPú”.Õî` WÛC…¶ÏÈýß
-UÌs]+G…{Lˆ› ³»õƒ&Oøñ÷Á+B»~.u¬yA>¨¿? cà—~ôk¸šúÎhd™±x~4áx_~ÒøFFC¢yh¤Z
-³#PX’ˆM9D J£ŒCùæKPNteeœ1ôö÷ÞËû9þ¶Én~Ôx¹1M‡ŠñÿïˆÄ%|Wä ‘Ø8·Ð}#]
-åiŠ½“¦[û,Îx pÑU‘³ø–‘½W››Íø;¼Ù¨¹v)“è¶# »
-ê¿“ä§âçÃ"J° Éþ·ë ÃB/7Ö%¨÷ñïÏ\¢®Wø­8˜ô¦¯&T ÒÔɨ<Eyòrt§xôú®º¼%/ÌÚ<Ò©Á“èJ
-XNÔ–1Šsš
-%]‰}̇êµsÛ^õuâ¥n Äj“ÊWZ0+V§‡¢„õMÇ®sÇͤ%fQŸp¤"ú9I.eL…•”ÒvRû(ˆÄ¡:ïÎI}Í'5U
-Ú'ÑŸ’'ÔÝ€OöQ¶%¤'ÕŸØ«öÈÜAw`æäÖ÷éló¸E×a«¶¯…ñð {
-»·;ë]cÎ
-“dJ:”&Ì(Tk"¬Žöß¡?Û‘üê)oìín‡P$~oÅfN¢7z\ô9DÛsùP˜„Äj+Ý
-ÍPÓÇŠ‰eü>Ù]•÷¯V†pKGãY-Có^UÏòÞ)mâ&¦8úBeíªÝñKÆköÂÎ(ŸcfÆ@BD—è¹ð ç3
-çÞeð¤wNËÌlGéÕýú Ž
-\ X#ò[Ò¨\€Áüq&Š¤XêÒð|/S
-¸21f¿ ÛŽµµEÕàv߃É~‰í\Óz]¹æu£² ²¹¿óË£#Nù´pŸ¸
-q„3%Å¡<fÔ˜ÍKEmÚÃÀ`€Y‘Î!ýˆÛ5eï™'go LAÔ QãåDFÝY†š¼Dúž,™ëÎÄñïN›e£Â£—²ÂÏîçìócà!?íÐã…^]) ~+¹Â~VõN(¥–òÂLpéé×dÍhÚd¿ÝX'è¤òSmgqºC
-õBÆÓâ7@m=€ß\ §jTºÄ ø g†$å4#þ)Ý{z©X
-Ïmèýõ®ÿ¹^­2 ø•ª%þ´©­Ê)*< f'ï=Ôð»–&¾…>ž©Õnn6©¡a]È›‚|-©½˜¿œ|Ì
+{ÂRt^뎗éŸùUÀ6¤¯~yÙ]ˆÖ#è>ÁŒrÅø|qú•ÓQOÊšµþ¦bƒ/;'ÁZ/Q&†ð,Ìf4=ƒÊ•-ñÆ…vûC6 úé
+¬)›
+1tÓ+j‚ò@Ì™åì—”ü‹ÇôuÑ€{(_Áà‹ÜÉtDópT {Èõ:qè{ »[Aq7§#ì槯X¡^ÕgL:ªÄʨ4D2ör|
+ñîË5ᙲÛNu»×å
+–H›x¨!O åaëÎqø$[ähƒû¿†üBÙ3vJ°U˜øóm¹†Æƪuå'ÀNÔk‹S÷»ˆã§±59é!3ÓÊL•a)¥ ?ƒG+iŸèÿÒs¢ŸŽèÉóvßñ9èÑ ›ŠýÄLE|&i€1c
+øãw•—¢^g´î{amÙ€¿y6f!„ 3²&¯"ý»0r òs6à ˜Ñ2SV߯~8†Å]88ÝÈ­k zÿ"þË&°¯î~Ú;öPÆÃ8EÄ¿ßVD²¿Ond§Ç+¿Gî-ñ6ïÈ!=Á³ögcF6f`Áœ¨ºîÎ5÷\m™)‹iv!¨†ÖR=õ¹ ßÍ€¸ê;[Á-pÕàTõØ)V0Ó÷äY¼šûådYkÒ‚'[Šl3 øäyn0­¡»`¸{Ÿ9Ô†Çv±üµ|_™é‹tBï¶)è`ÎñhÙL,Äe¼‡5ב‰<ÐfÔµâZÕ´ßdHÙŸIÕÇi/êAPÂËÆG+év}ìTµ OÑ‚N$¹ðCzººš ø‚E§€Vû¿®¼ÐÔ’°/„°`‘Ⱥ¶,÷RûMî0VrZEŽèí'Ççº^¡ NÇÑ&_ÁMËOk.
+>ß‹ê@\â0…´í8Cƒµ¤ÊªK1&Õõ›ø2öl8#φ‰x¬†kÈ<·Ò-PLã³ÎÈòú9HcS9²Øº1’6P'Ý«Ru;6pVU©•åDd;œ40[)ÒgV*»Q±hyb¿îšòÆÌ™úÒrnQ€i<}öá‡çê5ë‡w¦±†Èýƒ(…Ð6r0¶‡ü¥¢J§uïR³èýá¹ Q×Qž¶_˜(!UoN"4ઠñËÙ‚ÜÞÏm¢Dù¤€HÖ;¢A­ŠVš‘£J¥©€e²ÚÞêŒA“¿gOzrH¦IÜ0ñ}H¡¬{ÊõÞ-ÜMð­xYg€ÒªMêý‡à¸½'bðɉ¨[Ã{Œ“F7Þ -s¸.õÒ.2.ðËœÍ^>ò9Oú­E•z©{ú„œDmÕnβÐè™›´hŒ_h ”@l£u¼6·*-¦=Žãé˜ì§ôÆÔ%÷äQh÷¤™YW>’BœdDuÈPä9Ðlj†¼m’&9å|ž9Ø׉,³´µQÄŒò÷ë>üÙ_–ÁÄHÂFD½G¬K^×ÒV[%Ìfv=/¦Ëhh«#›U`â=k¶yƒŒÖÑ@Å00ó­bçíækáT–Ìü ûNgÍ
+éý#ÒÒ×à/M•Ø1ˆ:+Ætâ¤_ݪ„è|°ðD¢cyt‹šv§‘vm#ö„ ø›nŸs\IjªMÌè}cIxrLÉ$D0ø¡pc€Ãj¸Œe`>•\ä¢B‰¿âWVráep&·ÄÊSS­ñ.ÿé››Þ÷l Ù£±gŽ8!c]‹KýœYby)‘þη±ã.þYôÇŠÇýùgþ”"á å¦/×å¯yQê}ûŠI`ÌøD¬~'V |4 ¾%Ð~z’0ì¦AP´*U[‹¬Aída>èæ.…˜Ñ7F°1«m·SßÎ’ï2붢ÿãyÿ@׈&¬RuîfaÄÞs3}5ª:!3`ë|,`ï¨óªÓ«¢Gœ£ÈŸd_^)7É[PÐÖ5'ß낈z[Îs0èj¹È¿^eû­Çâ%}> î¤ö!…»PÒ›ü'¥Pd–üÆæÆQhŠ'ÎUðû´¹ŒÝ#ÄפW"¤Íòï¼gŠÎ© mlHdYù#Giæ$«>#_Ócùƒ×QOï!‚ tÔmlƒÅY!¡/tž\A•»ðf€®g;’<p¡ `ÜS¿˜'ì-¿óša ÂPgþ
+ÃjÒ~DË/dŒeŒ›¾>MÔ4|ê ð§„òLjóÁ÷FkäÖ<,;çiļB-üWs>îMVH†Z¯ÎόЂþÓ¸ºa€‡•ê7q~‰h@¹N[tß½fŸªl.>jÓÒ Œì&®"ä=äy×Tfk*WÙ¨ìà®Ç
+$v;Sp—lsú#+HfáÛ.,BÞZš¾¥€!ÌÈùXê­<Wš' ×é-Ë°Ú¹UÍDé…%1€ê³ME¹ŽèR%¦½ò+,¯¼6UHIØöÚ⮨r”l3j;lšÁéF¹¶ý,tîi¹ä±Ó¨žÃV’¡9w7rôp
+.ˆjî3ªßTÆm¥žóílYÛ&]#íuÒ½âÈdö `Ö}’]¾—úŒs¬È¨1ˆƒAúox·†’àHoõ­•+?‘\¤×ic–Lt*Á´Ÿ'Ÿù.`n2ð^¶LÇN& ‰HvŒœÃSÒ»cé„bðۣџVÎþõ<ÈÜ\D'·¤Mèß9M×/_¿s¬{«5Á<Híƒ4NÅ=Û[àdÁ>“l;…ÅcvÆĆQ n´I ûj²005ðïIþ‹Ø9±J¯;3œ,±g©„bSX¥Àǘì|Vo
+—$—º˜6£IúnõþiE§Ým+à
+
+DžgÉÆ¥ãRÆt:…ÍQ3ëÍNr‡ËlÇ1î:”¥ ·ñm¯žÝúsvã…}È—ÎI·úó݀걃йKG¨Á±á6ŒyN7Ì»ŒaStÅ[²^|¸‰µÙí´U)¢:í»/÷ŸÌ€ÁtöxF~×뱇ÒX¨êÙ÷¥Òg¥AsËL0bã',ì'k\ š²Æl3LeT¨ÏJÇ-ëË[kÉ.7S‚jS¾›_‰³CS×ÿÙ÷.Å×àÒMh¶³³i:A½ÑíÆ™Õ ýÀÌZ¦ê.½ŠŽ v‰&ºŽãÆ*·
+Óër»¼½"¾À0TxsøFxËÏÚð‹_™Í|dÛfFÉÊ+À'ÓG%6]†U¹kLÑ}ôÓVÁ”td½|Æ牤¯„ðÇ’]¼ð=7hœ«ª¹÷þÍ;‰zùíÊtê ÷!‡ùç೚Ni9D¾2ùN=9¬èh½KíP#zö(÷z9¸^ Ç÷Ä*S5Í(Ì^ì–3*Äy\3ÀÇ:ú(l‚:bØèný§¯Rœ±’T FP_zýoøDuÜúšC|?Vè ­u@ÄeŠÊ·oÞ¯*uâÏÅVu±Á€ÓL)Hcµ²Š°Ô I,Ë•«+íµ½¯ø¹ˆpåX1pŸz]Á€`ƒ¸46ü•—<¿TXJVhŒ`máe]ð)°g{Û­Ä AúóŠŽv@sœ¹-64_zR8ømYV>eò@pRt u_jAk»tõS nçIêÚ›woÂÙ¥©1Q!Û3½ÈU#•6à_žØÎáGýÁøÈìU=,¡ŸKW ¼ {(Sˆ3¶Íá)‹^ß«O5Ë$¾×/ˆ_!ÿhXÃ;´ZÊÇç‘uÌp €ºoèµ¾Þ‰Ÿ!žÜ:H‘U•dP"GÄ"¢<¤Sâù:Cî­Þw?ê6/U”À¨,¸¬w !
+`ÏéÅ, Yt*Û¨^?à¡ÁÂ,oÞƒ+ŽZ¸ÔQö ÿ#©¯Tý ‘©XD^9Èòì`=ˆ’¶££:w¹Öîx¾w«m¡¯%jØÀ^'3ÕÈ–¸ZÜë¯%ðNÃnÓ/Re¯n½ž3SÌóî´ºÒþåKÈ3WÏ÷²ªòZŠ9§êN%ìN´ùŒðš¤(û·Ì§@³hóêuaÅÇVìJx‰*|€‡;Ò%Í×Û¨ ~šÆx kÆp&Œ)ÌÑ»¬Y‘b…Su{÷bQ,1ðû¡Ÿ‡ö¿p Û"-6êÖYùëák~>r»k" ƒ³'ê6¬áHZpGUK'ðb_³©i(Õ†ûŽÙ|`;é~ýbiv lΓž^«ŽÝêŠ^5~›œ–µaJv;ÞY_IçXíÒ®‘'ÇУ´Wƒ$wŽZJ–¿Œñ—Ÿ`œƒ‡€‡ºÊí29%ÓriM¡0Æ°eà´cy?KDç¿ú›­hH7Àwý}Š6Ulà‹dÇbkIü1õÏÖåœÄCÀFI‚(«pu€¤žx•[ikZ¶(|΋u°¦è–¦ýÂe!J¢rÑ*‘Ç ±7úMq’!zu}­»\þƒçr `Ø$hy,%M1&ZÔ lâQ«@é
+,£U]ù'B¦nò»¶²%ƒ ‘þ™l¼\[2‰‹Åóru.Ã’-­þéN3¯Ò r(¶¦¾×løkË™s÷ÛpoFœ:ÇZùÚÜ_ô~
+$ýŠwë”á3Q)½ØûÉK<=Ò¸õ"õ¤)@gÏõ%-#ôøPnõ‡Mé&`4•J4¡YÐ, 3vNµ ¾9§®*e«Wp·<¸3bi8õi9Ô#û“¯ðo'Ö->©}ý>e«¹SÁ**Ó¨n(Ìh>‚÷T3 ÷€0u±vp-†Ò´Sž"Æqþ8’ǯ
+ Ø‹bã~+r¢“íh¥•MÓ:õîP@V“´ûweËŸ(P
+Óɸ}§¬÷Æo)õdЈ>=¦o·àëiòàû¹eÞÜ‹A ‰H 2iŠØ¶KŒ•^önÜKaä@ÒˢƒBEÐ|ó¹I÷…Û5g/ubªßjÔ
+é f/¹g§E†rã+Ñ:eQý´ôw ï»H@|kZµ¥°ÉNX õÁ¡ð;’†yê¯ #¸YÖ.ÇjÝ+®´†vY|%Ðrd‹Ji<EšÔÆV‡Í]~øºlƒ˜£Âr§Ø\ÕÝÚNÕ¸—dO3>))ö)žs«v>;…zm¶²ZZMU„
+%¸•Y-Gø£b­3éz{=81Å2ÍýH)2§N_e90ó=œ&2@ö\~Ê€’.ß|hÂvn¨‰÷Ü¡ížùšøŽIVÅâl_¯oCmüÚî ˜nD`ð5®â±ýìbF~˜ìækú.å¥h„ ûÏõTzÿ0oÄÖǬ7chò ç§ÈIò€Ç¿Fr¤)H!æ‚ÃÌ›YmÆfJ,: ¯’vÀD!ëéßJµø2èeɤå?hóë*idW“*ñ9±Mw¸{†V’$hšv³Ò2åÓM‹34ÔIà %Ò¬~& F¬„þ a`åÇtœòØ=w¦Î1 [BfØÄ8Ý´ØfÖùúâЛ§h£jä¥ôÞЂè/Cíŧî¦
+À£c J%}ɧYLýTrÌR÷VÇïÏÂJ š!ìÙƳËN zÙʽNÑ]\zq«âGï•€”„”¤˜Å žÓÉ‘ï?•ãüT¥
+«¦5_¦…1°Û¢Ï
+öáè•V¥GM6²gµüáÑÏÜ‚]é\˜×É·Cð;^6À !qçf
+Ë#!ŸsmÅÛYšNV[ÀÐGýÓÓD@^<9Ñäá*µ@(ìÚÛ¹åfõÑÅ[w \‡ªzÛ¡]€kÓƪñúÛx[¤]JU,&LnfÕŸ™ab$r‚k»IŽ¶âº¿v LyGHƒ ÊÖB¿ i(q,{<^šÓ*/ˆÚh·IÄï*ÍBغôÑzÚò¿´}U䆞.MŒý÷àþs†@_–A>ú¼Q{%*^k‹áT;Ѩ·Ìà]¶Ñs¡!?åÄy{–àg¯+ÖR!–·…eÎà•é©Ö$‰Ïż¡ÙfðöMç½òØF$±¦Ì,µ\uCM€>4æ½Ú›wÎÐÞsLØw'-•Þ}E¿¥î#†Ø3FÃ×øˆ}èéú‡=¥y#mÖF8õÆuS™B•¡—uˆ”˜qt SÝ ß¢ÖV3Mz>Ÿ4}Nfors¸áRâ^LB2ÒëœÈÁÕP—9 ²T(Íi )úæTþƒþ/X[»·ÈÙúž¥e9•X²m ΗoeÓ}ë9eIçûwÛÜvרͪ¸"Àp›¯XåˆFiQ~_¡õЬD¢©-ÀÃ#Üh\ЮP3Ä·ÉîöÚx©
endstream
endobj
-662 0 obj
+911 0 obj
<<
/Type /FontDescriptor
-/FontName /UEBWYO+LMMono10-Regular
+/FontName /EPYXNP+LMMono10-Regular
/Flags 4
/FontBBox [-451 -316 731 1016]
/Ascent 599
@@ -5935,11 +7397,11 @@ endobj
/ItalicAngle 0
/StemV 69
/XHeight 431
-/CharSet (/A/C/D/E/F/G/I/L/N/O/P/S/T/U/V/a/asciicircum/asterisk/b/backslash/bar/braceleft/braceright/bracketleft/bracketright/c/colon/comma/d/dollar/e/equal/exclam/f/five/four/g/greater/h/hyphen/i/j/k/l/less/m/n/nine/o/one/p/parenleft/parenright/percent/period/plus/q/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/underscore/v/w/x/y/z/zero)
-/FontFile 661 0 R
+/CharSet (/A/B/C/D/E/F/G/I/J/K/L/M/N/P/R/S/T/U/V/X/Y/a/asciicircum/asterisk/at/b/backslash/bar/braceleft/braceright/bracketleft/bracketright/c/colon/comma/d/dollar/e/equal/exclam/f/five/four/g/greater/h/hyphen/i/j/k/l/less/m/n/numbersign/o/one/p/parenleft/parenright/percent/period/plus/q/quoteleft/quoteright/r/s/semicolon/slash/t/three/two/u/underscore/v/w/x/y/z/zero)
+/FontFile 910 0 R
>>
endobj
-663 0 obj
+912 0 obj
<<
/Length1 1708
/Length2 16455
@@ -6016,7 +7478,7 @@ d·aw!žÈÕI‰÷J4¼ó®[!S„-'zTvÒê§P12åÅñ*–‰±+岫i>ÚÞBIÝ)$Ñ¥pãF6fîû߆½ÝLåÍzëŠñG
¢Xªß‚Å‹ãÇŒ§JõÊ>ÏjÝ*ïœ\ãêµ;æš°ºIÐù}{¹F›^!*î(|¤>#¡«¡Œ¥[ã§òL‡%öŒ“.¬ÚÒoŒÏ#²¯³¥~§¾Áhég©ŽÒä?”ï—ììÞ:JoŽ“<ßbh=ÆâÑ|(õÍi6¹y£Á¸Tù~À§€¢9#A½DÑŸ5 25/Çk`»ïý~6+Œ0B…üv|þ¨Céã–z‘ë(ˆ®÷ãJ¡kùJÅðÆ?½óMúSÅß‚VW²¬5«÷~ØsLå‡AIü‚šk9smŽÔºÍ9àæ0³²¯¢Ûwi_Œ¿c©C±h0bcKÏ`ÂlŸ¦— K_6 ;÷tO;¥‚-Yáå#-ÖÈ-ïÜIâ<Ùe1uqëϼâC ŽvVNïHBm€–%„æV­^¥ŠÊ€p§
endstream
endobj
-664 0 obj
+913 0 obj
<<
/Type /FontDescriptor
/FontName /BYUMNM+LMMono12-Regular
@@ -6029,103 +7491,102 @@ endobj
/StemV 65
/XHeight 431
/CharSet (/c/d/e/f/i/o)
-/FontFile 663 0 R
+/FontFile 912 0 R
>>
endobj
-665 0 obj
+914 0 obj
<<
-/Length1 1980
-/Length2 21129
+/Length1 2309
+/Length2 24403
/Length3 0
-/Length 22362
+/Length 25802
/Filter /FlateDecode
>>
stream
-xÚ´»uT›Ûº=Œ»»H)îîîî^(œ×¥¸wwwwww/)Žøîsï9ûìïþûŒäÍ|t¾Ïšk%#c„ò½Š:£¨Ø(93²2±ðÁ 0£ÐÂÅÖØÀÆÄÂÂDI)î4v¶ƒ$Œ|
-p::YýiûnToÌ
-ü/§ÝÛ(ß’ÞìÎÿ&ö6ç?5mÿpÿ«¥±Ó_¹
-**
-
-8;º
-ÝœQnÞ˜œ}OÆLJwò¥
-D²œøD‘þøh4å«Yp¥B2MZ–ï{yð°q¯<¬9꯴}&Cõæ‘œêiþí§?³±R ˜‡ çœJ¬X8:Ū·µÏNëâõŽ ‡Ô/Ýn£ÉJWBD>g|›9s¼<!B}A,IÖÇÓ7¾?Z%Sךƒ°â'»;¬’ä/Mì;O³ÍfÓ&šFÊ0}ðb«˜ÆÑ:«Ž¿ø°,VÈ‹¿Îû=ø„FÑù«rš'¯Z³ØL Y_›­S»¦ÔqÄìÙü‚dkl}ËÜ-ZÖŒ‘’il„Ù
-©Q7d‘ŽŽÇk•š/ëù’Fv”‹´;ÌÊ»ªŠÚ2²Dw¼ºòˆT¼É)IòKÈÞÔ·Aö`Dä÷>ç }§ºÐß"»WäÄ7¿yÇâ:Ê@s‘uÍE
-d².š‡…š¯›V@Ŧ¸hÃç‚ù
-Ë89°¨©k®>#¸d›™4
-Íù€{íCs4Ç®Yò
-¼±UGÀ5ÑHx›Ér4ª”Ùœ‡¢m–¡³\}9…4ËÍÝÏ`Áý<®Â˜Æ’Ûçæýpyß±e…xFÚ¼¢•÷éÌFÀæ6³¹æY<ZñXr|h†Ü:c™<¢^‰À*îºÌkç5„_YpÔº?Ë7gWãêÚÀÒ;@¦Șû ¶R33¼ló­ßäta:Ž«kßiöGÉ^;KýHm…ôš{F*X#(”íË;Ûæ²ó\|Þ€"qœ€'bÇþ _&ÈYÑú!΃éëohßIýÊ÷{Lu§õzTæBx– "|b<‹e¾îˆu¸áéptŽÇ«¬ã Ø”¨yò¯–Äß"2À€Õ+I¯ð§4ÂÑk¿Ü´<gš~DCô‚@Báf1å×HÌEl{ùñ˜¹YÿyþªÃ SÙ##ððXFBU¬FÌ¢R+W j,´h:^°>óäqN«€Ï.-:jhxÝ.ÌxiÌKþnx¯í.×X0ˉ⧇›kiv ŽÐ⼌Ï]•¹öú'i‰\?G¹~¦ßM›¢›Ä
-”AbO!̾ñ¾éÝiNîÜaØeDZ¿s9éÜ4dù¿¥Ï ðï ½Œ•Ö×èc A#.ì˜~ „À¯ÀÎú{ì¾ b¨…ýˆ}v¹™Æ…DSÔi^:éŠD0D`ÈS1M¶kPe Âš!Çp°*wï^ûÅHn¿QÅLN¶~Ûƒ²bIg6ZÃ}=„jî–siaB™K›Ö»¯\Á¬:û>t¹Jç’Ãü…³T‡ZØoÈÝ ¿ŸÓ lÊÿÐRhÂÖº¬6´ÝùÓÿÇ€/—Ñ™#þr‘éiÜviêi'»])Wn’4A4öËé÷'bs·d?eWÇ[»8Î8qô«ðÔ¢œEøt .^¼§‚V~¶E®]gX¥“+ÙËCµ.­b`-xÍ7=œx Ë©uóbfµXŠ `u¥>B…-$?ƾ2Eˆ—ùS‰©n[I&=C™9Ž]RÙéf•¨xsžÇ>èÔ»ùž”¨ÔÀ r¸d˸Ô$YbŒ® Æ[Þ,¼o 3Ho„K`HÁ?Gsu]å 2×sZ¸^…[áðpt´§àò|l2‚üÁ:ÁÍð¾ilsr5\Fy~ë$’Hî¼ß:ÿZ#õ´M½AQ„¸šÇX‡6œ@?ý+|¢þÿÙ­œUí| V«Ÿ3L¦•8¨aÙ[tx\eE×]ï˜ô>äžÛyY%-%p%vmP< U_”tù‹1;W¼àWf&l>è5äQ ©øÃOÖ·Ÿ½4£¿Õ‘\kt¤@Rfäêy ¯4ˆ/ ÊB²7±gè\!Ž|‘ÇåÅã&Ú
-‚ÆRrˆ—$wµ ÝÜÙçUU¨™-©€SïÜë‹Ëåç´îEãN¬v¿Ù'—M‡OðVpF9-"ÔÚÚÛ8CöY¦h[ª‡êd(37d(ŲF]ïSvþØIV76R6 SŠ¢Œ—|Õwpx#`ò¦üß}àÿhºL£“@ âÉŸSíGBMìoˆžÝÞ‹ÜOÒ¡#cƒÐ“u¿}c?ükAáî{¢)=_{³E©ùRQÓõ/üg´ý ë›Ò›2®3 ¨ÛÕ’²ý‡Y´í[Ä“ðâÉ@&J©¹ë¯œŸâ½ Í6†üùŸ“Ü)SºÔ CÜ*Û”éa=½vlc«'œÉ€À
-lwW~ëh:¾­ýw2ÜZ!Ý^ÜC>aÑÏܯ'\M<‚ËÚï <¨¹RbµõydÈ$Fµê,Õ ýR!ËqåDQ6tL¸28ì©?ð+üŒþy?öU1Rº¢Œû£ÊÒü‚ Ô5=Ó-†2 ÷‚ž|þ“2–§€—#¨0›¡î[ð‘/Ššøz9/Ù~΄¶>Ó­SйždARu
-ÌSÁû϶î¸Fã .¬©&òß`ÑÙ—\ÅȧÁÅÚ–A¯ÿ‰Šü›É/=VMÃ5g 1ÕÖøˆú» œô£yI´´ur:‘õå‡æ!buòL™;CXIËö©¸* ­í!NW¦žüG­8>n–ÙXµU(Ÿ¤=ŽrèžtÉ8µß8éWм«ÊÑ9P û(‡[K½Ôqàq}±ÑµíÓXë2ûøžÏªóYÑÍû’¯" ó@vUXå
-Ê„‘T=Æ'–÷½ëwœ¶¬$óÓ=Rú ß?ÎÜ6Bï(ÄÂè#ÉØ4-ÆÒÚ1ZÝN‘f0l©b¥Ë 4æ)N®–­´ï÷Щ > ðg#zØâ~ÿìàüÄDc‘Ã&üe|èECx÷Aô«Â{m¸k~iâ´×»˜~µóä«Ÿ!8í]L+CÌ|;C•/Žà9ÖÐÇZ~Êæ׊Šã‹`ÈVBE ;ÏkåP‰êÞfþF±UsÜöZ¾õ2£
-×ýñ‚ý=q·ÈœŒéökè^0¡¦»,›»Ã¯/WmãOp\ÛZ0ˆÏ¡vWS€ˆÏEµèŒg‘ïÏqÄ É[¤ üŸu );v-gÆu<˜~{jÞä;4]z@7¤ûÓL<ðL£Î™^nS.’Ucw¥z\o¡û/° Dùzl» 7õÊCu2ð@Âå=ˆÔqmJEk¡§—åØý,”ï%ËÕ4#d
-„º_Än®Üb±¢¦íÏá—eÏä6dÇ4v=¡§¸ÀÛà U$|¾–íÆ_ç>’œ$·¢ëcXT>þ£v:/ÞüËêk©ï——ù³¥4é9¢Ñ¦XÒ$%t(ujŠEd<ö+Ôø17óŸ¥¹“[ÙÍâ§LúÍý‹‰vZý;iÎDb›ÒÂ_Í&“éªDË®ÜNVÐEm:Åa PJ“-ÌÕ£ú±¥Ü…m÷ìsÝf‡3o2ü<¿¦¥Róº³eÚeÒÌ+¹!Ò®‰5'aœÍ¼í~݇´Š^?¤¨Ë‚›ÅD] Íýž‡@Ÿâƨ£NÛuß1ö‰Ü€v^† Ô.÷×—7]j[QòÞWxY1öÔm‰6ÚN
-‘¿“®±OG£Ã™aå-ÄÃì¶8ßY¡ÏYt-|y5v¼guؤiÛ—çt§©¢òÅ“¬çó`$à5
-65Cãf–qܶ"Úý#ýTá4DÑ€Ç/Ð=W&j¾q¦¿¬öØ»C ë4$L¾ÉJ=k›´ÄñÈB·•Ûo¿ð²^á9‰C°/Ïè'—±NÀ‹µo\^Š–Qùz$B8mã_Ž¢xs^FY,nÿ,î:ŸÒºNò2µX 9o•SËñqåícÜÜÙŒÁñ=$SÄp¯*8hjU8‰zöm’`²ÒüQg yhcäÜœK˜ÚwX:ÂÓý G%Â5é%U•å£­AnPÊëéU?L§LZ8dÉü®8ýxQ͸ò~¦*¤ gL¢£Kç#-i®‘.6¹)Æ-g¥±úŠq§œG¤øžl@ŽÄÿ‚2zA8ÕÌNæ÷úµgrú‡Ò07>›Ðm çõ^íòI-œTÙ1y-\ŽvFRû¹¤ebSËQñðŽäu¼öˆ {žº–Ô¾T…0v‘Ç€ý©ü´oóÉKÚ‡R(ü7t/ú/~ø B–óÁfl™te!_ o±=?U
-¥‡$— &üÍá –@*ä¿ÓHúÙ]$#f×i§æYÌAhJÕHi´EÅÒ+áÖ6óW_ÕC(¾;LùŠ ŒËÞ¨7‰æ
-:y9Uö*iPW‰Ûe£^òðeÊéÃØ,I­Ü„‡¼CCø\£ ÉüÖ£¹}G‡÷êÕáKu­Û?»Ùv Vù'ºf»j¡¼ÃÄ®ùº½ t*®iO{;.ËÁý˜ù=ÍîÍBø_ód”ÃÈL…§t¢ŽW'(ÕYÌ
-ˆ”&šùÍFÖ3tM=·¶<Yм[MíëýÄš¤ë¹ifø]â÷7øVÚ–O?æ}¸›ùinjUºÇ %ÈzðÜò9h—eâb
-|æN ÿj&žUTì®ÓVœkž4›ñb¹Ùžù¾b ÷§92m#Z
-5 Ìo,3³<m¹t¨’Ðt#m±‹ ÅKç_J@o4‰§‚»T"qK|Y’\RI±°$^™wdÛWEkÈY»©e‚¥H¤áB5PŽ¸ áæsŽgïnGÝbm2œæÙZR¡7Wü!ð‰-5¤q¸®ë8°ùAšàLÌ·ÉO åÁËjª„“‘‘d‹ó‘DuK÷ÚÚtº_H™Ôˆ²–Xežô+—svÐr­qÝÆPØ£‘B¦Q‚‚<2xÊ”FéÄE:DˆrMØÂRá´ Ë}ˆ,$aèÏ¥xE·lAv*‘O‡`œ¢‡íNÈ&‚
-æ$>ûµcgF"Û”'‹ŽØ…×<ã¿HŽ@aƒÉÖn=’y¥ý4 ¦ñÎRÂ'íænžÞÕŸn9§²gb!Œ
-b壙ö®N6D`ÊàŽ åB?aßHðg ÆË<^ûÔ̹åÜZݬ8èïCßÝK‹aŠ ¬çN#RY±X»Ó}EygƒžTë$Yê·©Œ„¬J‰ÐƒïOrhûœ=µu:@N*á((„⬃èÇ=£%‹~\«tùQú1®€ºõ‹V.x1#óà`¿Ëš5·–t°ì8ë;Y~ð[´œÌh)(“øÁ†7PN:òk‚ë›óvnë,~ÍÖð`#Ÿ¯³¤tn*Ù›RÙ•Ïð'Ä!Aò½¨âªÖ{ˆáâðÿ «®4ã硇\ï¹³Ðé›ÞŒ®¡ï¯<OëŸÄIñ×4ãS{ЩYÇ®L:UÔþŽoZãnŸ©y2¥.ñÕn>¥”Ðÿš‘áaçûmÜŠÝYÅÞ£Ù×0a}Uȵ39©µN$Ão‘@[5Åmã£Ò¦'[Æ íÜ¥ˆ“>úÑhöøèÒ‹Ôê“ÐÆ–ý‹¬æ—ª”ã>tµ“s‰ÓF¾ÌŠEÒW3ŠÑß™ñšAàrËŸ™‡L•=‹ïû^è³»ôí*ÆûƆe#.*ç0냯¨0)Öu>œÏcN’Jì
-Ó‡¶ ±¾µêvÆ×Ü>95v×z,$LPW½}k‰zJO[ÿì7VˆN U²Çk¥™üNTéÂB†H.–¸·Jñ"ÞÕ0Ãì7Úó!/YMÎÃRªöVG|þSÜ,êw×@þí ÍjÚÔ% í]Ò²nNã‰ÌòF_½šÉÛã§ùG„OŒF °ÖÐlqJ(n¡Àœªeäbß[™óÛQˆ¨…/ÛfÇ÷'èªq½Òh )”,ƒúQ¶vSväÛÂù‘XrñäºE1s;»äêgÑ8ô÷{ý®M‘¼rë
-ì_ç/îsô% ›Ó½ç áŸÜ„K¸se[ˆÀÕãP…ž¯sóñÈ sûäùCߣâA?´‹œï|€P=ÈzùV”Ÿ÷&6ÀÔì·á®O°—lóó›Ù`‚|¹H-é*B„},Í!­fb$üVĶ÷úúT›|´H?¾x4¬û»@*ºïÆÛò³‰Ü]2BYep€­gòøW%W‹ <…å
-™<³æ³»æõÛþzIÖ_Å8¤‹Õ4ðÐôœn"EgŒ„6Š^¿$`8Ç‹œ‹LÖ_š·Z( ½žFŠÑ¦‹ÊT*)—gÀCY¬<1 ²©«Þ³ò“D‡ú«Rï/t&®JOʬ³× ³ùæuZˆžF|/Œ¾E= ÓÃI­Ç7@zK‚‚ kwñúOß1°DkàÝ„¥N§LSTúÒ
-i:~R;bžçÝL]âP:N¢Ë»´ÙMh¦ ë4#ÿ°Lt”ÄÐÖî hHfª|À®–Ø›ãê#ξígÈŒv6=R.4>ÝÄóßtž]Üw¥°¼k|×ðœpâ¥`FNt¯;]MÂóÒ` FN U]Àwæ¥"úê¹ï ß5_áýYÒùü\UOP©Ýþ·Œ?F.Ö’“cµòû2lU¢O^£”K”6ÿ[«[ò›?’¹ý0ýwhÝP‰Iré}^$ìö¯kÒT0VL‡57vƒñ ´Hî¨ë@<îû‚(Æpî#lÄç%ÊÆ—Ò)àò0÷6³ŸåÆ;»ùcNà¿Ò1•êPæü˜RD1é¹æZSlf¢ù /|²4²¿>ççz¢°ê˜6 —4y–U´”0šUN_4–•²˜™;~ëÃëÔKXÒæ˜ßÜ#•ÈöNßzǺ{Zê`.´`…
-jQ7ÆèCt» ([ÎéÇØØYò¯ˆKð2›Å@›¯ šŠ¿Ú`¢š¯Ú;¾.*\bÙŽúÄ™Z}¯Ó’Š;!Æû nÛ€ä$¤”³¤b™l…ƒÓ^¤ö g¬QP8Ú³¾ýŽkB×s;\`i¨ëœN:\]ø¡ƒS4LøÉò«&Ùmáû™ˆ;%§ŒŸ½ßæô¸¾ùðt¾'¿.£˜þ¾Íór~Û¯}´1ÙS×£Ö)FIM¥ã=b`³J6 ¿1t^¸Å’œî#ú žó‚}ÿ\÷®¦)4’Ì<$㜦qdv5Eã3iäã4)•è)´‹çjƒ)‘7§5!Ø>è´ K´,´Íb„Ì=dSüFÇŠßî.·8º……]o5ª‡ha¼B¢ª¶Õò(TløN‚ŸæœSೌ0Ó¯Ëhúãw'É&‘Oz´d]µŸè†þfÓ·%[®Ã±Q½øÂÝøùcÓ[qØ|´ßÜ!’5ÅC#3IàüE¹6Ýf u
-ÿæò'åËÌŠ þßóSç¶ãAï§oŠR& ß½îNêD$‚op•^…æ
-z>Û·¨´™[, J¯šíšÙD#šg¬·({NÔ&SU9b’ ù±^hÖÀ-›œÇ©–IØíÖúa#Ä(52å¤EPÓ[£.ö°3ØŽ‚³”uv¿E=
-ó¯“A¨+{+ï(ZŸÔÏòé¾å$Ëø­™8œ0××¾¾Ž vôJ„w
-«Ú´ó€“$Ú;õ>ý­C")éo\ÆÏ“œˆižš8T±Šœ‡L—½«ß£¸ÌšÈúd’ky˜‰nMžðû"`¥ŸÓÑn¿EIÒÀZú“Qq-Ñx2è|ë~¿ŸwÍwâàÀ¹nÆÜRs·iôWUÑB,&ÄãQ}½÷!BôáâòÊ0ÅñÇRˆ#ëVQãuìaÛúO`f^ˆÔš®äfgì#—îþ®®=áK‘J›Êì€sELbA;,èRŠýÓñ­÷i«q#T­!4éé7‡³L'HÝ>]2³þeÚÔ”ÈþýV×Ç¡À/EgIRŸ)ÉÅ
-“Ä}Z 
-³î‰ŸÅì&¼ .}Ý)¹¡,…ŸãÇ«+ïŒêï뻯ƥZY"rN–$}¬²ui’Â…¿åÉ´ ìçµHúaâo®%JÃTGúnáµ:å
-Ñ7qÉü€pª±ƒõ?ˇF²({*?EqÁf °éƒçкÝN=ô‹×6ôQT¡²3û¨¿ÿhñNwX2tÌq8™G決ۗÙü>ëlBÿµYà IË¢fy‚ê"9/3ñláK¥ÏÙ="÷à£'
-õ€DÝç¤}Œ½ÏÙ,ù%ܽÀqšb¡“h$»›$S!l"ÉߪMQTÈykÕR¶*NV—SL×ø‡zQD­(òó…]hKUõ9{éiçt N[¦jÛt -ñ¨ƒþ´íÑ?\%÷yM¹Ý·uúg±UÎOIþ­ «‰HÄ] ‘oG RœwÞûÕL½È~66f
-
-@çÌY\<…â£
-ui.ÏŽ4]ÄŽózEPÏ@¯@QҼϚd×ókK#KÈá}Ó{ ψx
-˜‰@ÑQ}úã˜ü¾iÒÊ ÿ}³¥É»HÕy*šÅøZõµ¶Å›O9'ܺÓZ?®Q:8c9ǘ5sèÃ[WcŠzzr‚C]¾»¼=‰†ß<!»¼¨¥¿/"X…Áœ7Ú]Å9fp1] bü4l{2V]&Þxª|YwîpÑ Q9àŽDs+fg²îØäìP@‹ &á¨FñÿFv1•‡bDô*¯‰`¿7oVý’h›Ì„<ÿkØËúÈEHg3‘ ¨„Åc@ÚKB––ð|eõre°ƒö!pùµ~íwéêÔêK)„ü{¿k|ÚuŸ'-ÚÙáÉܶ&~JšvI”)uC•atIè™~VgÐ×ÓÀóÉsþv‹¤¹bi?ÇIõúÝÄšÌ7V•é8‡°±Ô‰ee©ydžÙN£Eدêé´p†€ì” ¨­ê'êpµôvâ zÂ|£keN>¸ÓR.éK.ñu=ÁÛñ<®Íë„×q@ ¬ýy«¿ «Šª¦ŠB„Õ/ „,"ÃßÕû.N‘«KË$, ãÒôºÈFŒŒxìu¸?ÌʱY
-_Û¸¤ý¼Š_-&Ò¥„K9f,^ON>X‚ñ”Jt¡„ ‡í¸ÎØí©—Û·®¨Ï¶™ÃÂ'‚måá ªÞž2÷‰©UÓyÎóe*ÜFCù<㿬%QszÅî_]ÀRöCù«8þOW«”ŸòplFúÑ2.SîiŸ;‰Ó/ÉßÇ`Èiã«Å}Ò¸gqüÚĶ²8~"GªÞ7,°+’Gѯ}09ÆOÇ2%àE“ÿÉRÄÀÒÍ’”Ù>öy#xü›îEÕ-*QÄÉ
-.xOëñ…$GÊbz¾‹çx
-ç”ù\‚ÿÎ-eW{á…Gꉓ°Z ”ŸG¹M®˜zÔ€Ùù—åë:â—Asj]Ž.v â}ÿh¹N…Õ»®»c$Eó¾õË<÷ëeõoÐú¬L’‘q¢ €wŸ„y¤$Ö€ÜáY©Âò¡qô)_‡çÏYèŒûIÙw-ë°i!h¥Iúdpžür¶ põK³(Ñ«(zZÏŸU wrVÛü®C€)Ò­6<SÇ)~ÝÍÖËÅ+âù½åì /Ô÷€P°ÙuG̾Z9»¹ ý¥g±{Š>*«ï•xXÿe/ƒl“®g7¨$^ :χSsH¿3Ÿ?mUƒDXØýjö@E@•¿&Ž£’"GWhÂÇQ=øDvÚ—,±B•œä Ü“~%˜Ëgá¥d> »Ç­ _ÃOî§i~
-‹7¾ÈÛJÊ1iÛÔas‘"ή%†f#]°Š&;ß_ ¨÷™ë»<2òÇ›9‡±°ßÑe¡#<s~#àùEé/{Ã-SXÖ\Ý"Ô3æ>rŸ`'fj*Èb¿å“è­¿Û…µÇÚÔt&àÌ:HÏsÙSɦÄð½.ªŸôŠ´Oñï^äË]à¿kRôÒ%øºî&¹ù20¦&`–ÖI²lÔoÒyÙU}¯¼ZŸ¯€ ««•æ‡J5¥_X :Š`ÊÜT_æ“ߤ›O´’k1Ðqû>?wO†I’žšµž#Æ.È~ŠJ¥5ZP”>Π˜ÂY WP;ÛT‡“CF¹R3|:ŠIÇ„¦¦é
-f¤GÃÕ‹ÍÿæÇ åÎ.#å<r´«ˆÑ=iÃô«¤ƒ4`;a|S!\6X5Q&ºõ(ÁÏ|5ókã>…’þp\g™–Ë4†ßûÞ%÷ï¡Ð?KGå&á>}3j> rhu”EìÉÍ7Ú4¤*‹î&TÍeJj 
-+œeÒ*å„ŠÎÐÿŽ Ÿ…gmZ)…[x"~çRÀjLnüå3T}ï ùk­¤(®Íª;¡§òÄ®wÚ[þLÓ¬#æ»·ìð&”!ÄÅb³s™ÝNŸ/f*©ì Æe ûÙ1`¯ÞF3µ5iÈÏ6݉l÷S=‡H½6h‰Ì#dm4ØZÁSpFvš¯·£œu±žS+]é«Ãérwó6óõJ¹Û{û†f7òÙ_Z¢Àâ[Ù yÿ²ˆ~ò žºªù—Ô*^Fy·´N ÉàX}è'Ùx±/“ÏC²/Ñ$œ~m[«)«)@É qÞMŠðcˆœOÙfJ ìÚÙ'‰pRRÉ™#uwÇ)‰SŸu‰hèšÉ±þ‡Yf‡êjév/ó#ÞÝ[—Ùc
-|ž¶
-ò~˜P[³o¿ž\ÆnGW­m¼ÄKb”»ÃÕ¯¾7: d
-jÁy89}ó4d¥‚¼·‚>äI¸ú˜¢Ça$(˜Hi¸0æê[yýΧŠØ0¦æ„ó4î™Zq%í(+3êþá9Ô¼&&áí3“oŠ†W
-OyGïö‹‰û!ϼ„cÏ9ÿ´&ûYGyãE
-Kv£hÆZN…QnaHÇö>CÔ™±\J?¡9<lõ›™c‘¨L|+Zµ÷dˆ!59¡!ìÇàskúGU.MM\,hñ­\]v==0 2Y¸„†¸Ëè B‘¹:XQ‰d±"ɵ?¾vˆÏt„D&‚’LÍ[ŽÈisjN§s…Ýp1]–lݼ
-¬ž;qŠ( š[½,u
-|¡ C¸¹…ým¾A¾üï6< i,Á‚œLÂÇúÈõò†zÄíÞ³LM`‰˜;\¹Çýnc”Ô–ÃʵGî ß›gøÏNØbnoÂ^‘—ƒã“MØ
-ùl§žXü2|j¡¯z?ây[èú¾N×çpyêÁ%©j4x Q®¬
-SùÁ#»Cî_ô±ßæÙøÆ12§Ë´zmßD¤Wîx}^©ŽÜÕX` > Hj±yR]ÿÊi[™XônÓi½Û´EJ²æ
-Z…'‹ÃWQÁ²qŸHSWGDAšŒZÔ)ã\Ò!<ºÃ}ù¬“NÅ€“ÿ2 󆶒,oÕ¨K_Xï×ãþ’ð³?ù§tä«bÔÚøÚ⻂†´wO0}Î<ÿÇ¿ ó-×?s;ß!õ²/ ¬Gzj>çb Õ‡(ÂÊå… ~ÌëpÜ‹m._ž°sµô¤-8]…8&£/'€_Ö÷×Mן
-_¹—T'¿9æ/m–ûDúÉA(ì0?ö—wÕVÌÝ\–#döŽ°Ë!ÅìÉü:ß½¸Í²s­³Äƶv c€§ß3±úeh©=S§<vã¥$¤ûñž8Gu8µ¼˜]”ö_–´ö¶C«¾U¡¿ ò#;N'%s^ÂEÃØvWp>=¯ÝÕ7övZá-#¾bzÎÚ®ëí¢] íªÕ§V>2ÒpÍ%Àþâ×É ãëýñèïÛç £×ÙÄ3ò˜Z uAG;I}¸¤ç;9¸¿üÕ„LÔ,¼VñiÄÍáSLmtݺÁ)m– ¯©ŒGOɖðz8ôAÀ’z–BÖÜZ¶Ðínª)ýÝæ§þf9ç%*Jª|ñ¡bø›£Ì]à†ÇHµ*"+¼²›Úc%Ãí¶­sÐ+ϬDhA“¡QÅÒpûË”$t®~ÒÅ´yÿ³N~Cî ±-A ÃqóŽD )Ñ2œ¸6üù‘PDWiÁ¿ƒ0hÖÍè½8dœ<øØzH¡¡âÕZoÔ…Ò–Ðâ„ó8Ûµm=‘®Ck“#/?t„VÑB)i
-)¹‰.G¢Eî+Z~müžÑ·÷Ù?wYͶ³ðC¨oU…™vl|Tò#BàhâaúÓ»Rêë&ilÔH]ù<­ÎÓµúByáuC-óÈù4i ü¾¶7Ó˜-%ÀÄ'pyÒV'ÜÕä> -qv“@rƒ®h‹å+•ìÏšk¥Ó ë j߀ú)­èP<ä%ÁP-ÃáJY“¬±>w45•¥.?)SŸ·øáe–ÿÔ3,q‹2çÕ5I ¹ ©[X™Éþ@I´"âÏ?ƒ.:QDSØ&ñ> E™âç‘;ˆ©/ÔS¡+çLÌ-ã>*$$}x4OVQež2¤]Ʀyý±Î1°QÕÇ'Ç,íîy±÷G”÷šw¦w¯þ ; rДuÎ֛殱Sˈ?O©ˆTÕ_É‘Â{–¹ÇǤ¿MöÖàúÈonœ’˜hDâ\Ã|ùÛœPdâähõo¸ÃꆃçäF¸À[°yÅ8îVÓªè9ÇÁM~J±Ø×êò{~ÿXwõÕŸBÿe
-á”ß7òŸ;Çìõ ¬ªü¼ç½x«B ‘WH/'’FKÈÿ0ßbìn÷ÿUBΘr”qýÍÀñœ…ËÎQ<"%;—Sš¸7eÞqîýJkyaj>W-¡çÏŽºÚ }P|©|é.=®»ã…ŒŽ~ÐFõu #sù—6-Ú ×;·¶s'zÞ›R²ýAn ]½ã„w‰Ðü³Ržåygx
-[Eû)%-v¼„ ÓuI ¢É¤M5„[DSŠ‰ÿÇ{iÕ8ésŠÏìdDÇM¬oºÔŸ5vMæü âRŠk´÷EÜ£»ˆk²úq¤qoô@ÛÎÃÜïÒóñ ¨ƒË Fèã ¸gUOÄ®fzqûbØçªgX‰M™Ä¾žn䶨PÛ=à@w`4ªspÈg½øøÏ8%~Èﱄø©'êÑÄQ™ºcbÛ7[Õl÷÷ÞÃɶ9^ðÒ’%ñ¶òùtM?k,üŽ
-+”›A
-œVùTà NiRC36•äîŸëT!È$-ãØ^»;á¦Ôë÷©ýàèŽ9¥gŠa+¯ä ;4þÞÿ¸á äú¸V¹ZƳ
-ÝdC €v<‹´õüÔ$o¿Ú³íqŒÈ¯ý⺫VÕ“}ªÁ-RK;ã[râ—K+'\Üœ®{P|
-&;! þ
-öÛ/”Iƒ±š\B2‚áú÷ÀC-Jxq/F`Í}2‹•«î±M.b^ÆÑ0ŽŽ.øº€ƒär‚½å‡ï, `²†É~´;ß—¦Ÿæ
-Õì˜s¤$ÉŽ\œøÇ$奻ÑÈ{ïLMwß”em÷Û߆4’ÐUœy:ƒhv©âû­¢!ß—Z¤èµCÜY)ö#Ì!pÐ"xŠ ,ËÀ”q96yAÊ9ªmÞ"Р¤¹¤QžZlõv®ön†ºcòT¶ð¿#t+•Gº—²°â>“§>’4çJå¸ÎÑöæ´õgT»=ÏÃÁuäo‚™ƒ$»Ð2H-@=&Ÿ=»1øv¾à
-Ö?‡Å4(‰rêÅAٺŘÂÛ¡8ÞøÄ°«³±6‘0¦~h÷mBxrk%‚
-P@›9´•ã,°%Õû$lãe
-ÁZÍ|µ,£lú›k&aØu>{SW‚IØøNG£˜5R£:ÓôÒ·c?×wE¢I@f+3Ë~'ˆÂÚû&'ëlpðs-(œgÃœçq<¡ŸÃi6êdÇÊ)λ&Õ“Í+«É ¤LrÿŽèRUÍi'Ϻ#¬v!~Q\¾©úl|Œœã¸ú2kÒíçÕO)RGÏeù }œõoD‰cˆpበÒU-ða a”S5~ž€xvÒÐs jÍ9À}1KóæÖ ºCʦ3—˜…5P T‰Q¬µÚÔYeËæ'@‘…²­þðá©×øŒÉÛváA ©çlV¢Ë—æÉ8Æç`p™gubiòf¢Óh=¾‘˜çð›ô’ ItcgìZ–±™6Åfùƒ»KW‡›æàœ·{"áXº+(@?-¼¨æ1ÀTW5kb†¼ÃGá1ÞöÒŽ¡hœÚÔ–§…?׶q•oÂŒ±ÂQˆºƒ‰òœŒœPÖ²AI«v—Ú”$§©˜®ð>P‚ ø³Õ’×ôh/Ã¥¥c8£ÂéÖ6ÎÛw—#á˜À
-ƒÇDº†w~½4‚‡~º7i¿êça6¨¾ãQȃòÕ®œ mZtŒRÀÅœÌËMªê³åçO÷ÒòCìrûT>ˆJ¸6çîÍ–á0/ë¶Å§âž‘ß¡bÒžÓ$fRE_’wÕ=#°Jª—R(>”Ú%ùÞ}Þ”˜÷¿ HC8êfàöw"r£Qªí‚J¹ÉÝ[ÉŽQ(B¸þØ…2Cþfõ‚Á¾¾oHmSÚ%SÙ’mï í; 8盂,yh[PÌ‚ì:-©`Q:;‘mAM
-TeYúZÜÖ†æ`½îéw¡÷–&KÑD3ƒÙlêM®oÕN¾3Š‰(9Fn1>´Ì·7Ìjñ˜XoŠXl?õ ž­ý}ÌNX0JeaädÜ{o²s+ÿJ˜åðaŒ=ÞàS¯½'ö
-:¡ C´¾÷×ÕI—ÇU“øÎÔùz‰ç/ÃþêHÆ´ß½CAx‘Q»øü$¾A X²VÂXŒkñ4?¸ƒsâ1êqõD OìHâD6p¥yR8§0ßìhtCOƒM#v%>²ò£_=Q°ê¸Í×dx½q:¾& ,ÿ?Q0Á©û÷4,*¼ }¾›p›Ïÿ]_ýp¶ð‘¶ÖÒ'í¢RV}Ä^E$OŸÁq‹ý#àŸñÅ—ô6»"B¶¶˜1¾¿Lê˜
-ÀvÖñÏØõÜùžh7żìNËŠÖ÷ЙEÃd± Ém¬pÒÊJmdµáQñ«~—ë°›sF¿vÔÀ̯ÔCIÒ.8¨ð„é'‡ì˜çv»È7æÑ2˘ÄÞŠýsdìOvÆpj3Ðìh3`N¯ú=``ñ ¨¥/>2 YĶeépú'æ‰S9È“s–ç 3ï|zÝó­½î"ÔoœìŒµFÂÅ´<·í ·jj*§#*Xí/.´ñwfA¾ù`Bž¨„®(
+xÚ´ºeTœ[ÒŠ{p×ÆÝ-hÐàî®Ó¸;wwww‚»»»K‚;„
+f’cÈÛ¹½ -4v €1ÐÂÈÆ `gPjÔTÄ•U
+jŠ*´LïU\ìííÿ‹¨Šªš@LX^U
+½ó7g
+Â_Ñ¥@fv
+4C`–·s~šÿ¶ìr}v±±‘7²ÒüOGÿ×ÌÈÖÒÆ㟆ÿc üÔFÞÎÑÖÈæt–NŸ-ݦŠ–Î&õð_b)g£÷±™Û
+¦Zzý¦éÉ£ŒÜ*2×FÁÛŒÍ&DëÔ©öù<jþjqI¼=¡¾má9wÎ×PÞ$!ÊtØ°¼TSÓã­VÙõzE5#ÆEÂHbéS[Km]®5YWsF,úÕ©AÜ?ìh&.Œ<ÄÞÎC–‘ÔWìúeŠaàR 2.ºwMZ4e;Î'©ËQ’‹¤g!
+(³ÐjCT,™{Ó:*øUÎùþë¨Ì yôZ ˆAw3úCƆ«ïÉvM0À5#É­˜N¤(Vä>Ù% ϳ*œLmw7X¸“³#•K„lêáùeÌÚüCŵ<\Nò ´pÏ%›-óàﶹxm‡¯0MßݶÝ%|»~¡l/ w¸{Þ†i¤s
+E‹¾:/uoφá¨^J”C ¬¶~¿Nènë‹ŠÃÒ%2g¥³0ÒŒøy;´`Ö¡ü !g÷Èðaú‡Ë³!‚f(?†ÌÈ5ž)%‹À+|Q¶µˆxÔ9²@sîš+#Ë“P wÜ•Ž†µž®B¦JÊ.ÝÃe¹*pЕ–Í´Øžƒ¢Ñò¶øVÈU¯f$¾we6S¸‹!%øq¬Ã+Vá阙õ|YîGõ$ti^dr·î&˜7|;Ew-æëzU¼@Lå^o™Ö¼:,-khzð¬!I³€ávjf†ß{¼›ù=hŽ“*?Ôc¤î% 2ÚÁýf~!oà–H Š^&îqÙzn¼· ˆ§`ñÙ1¼a+8«ÛÉ=˜Ÿ ý’ÅukH˜/›´©Ì±-@¥üEØ櫼kÜQÅ*0£³‘(Ö/w[¹çÙ’Ðé1‹dß½ÚRÚüJI
+>Ã/Júþ£2ÓØÔ—+pä_dzúº-¼M K"òÆì—ä—Õ›éäÎQ‰¯þTÀIç¦*Å—5Çw4\ú{¢¢©^}~iß$0 §
+Oç¹Óg0û¾!Rcž}ïõ1Q÷ÝÇAÚJîÊ
+²Ï§‡å¥5©zéE¿*Á?»B¿Dz*‰îž:Õ`O(f¥ h•Ïs3êìíâן&i¿üšÏPÜÆE_[äYT«&5rçÞï/_÷½³6¢VÃäÛ¼ÚICŸÐúi@9‚Vl㑵-Q­¦Xr[q.ÀY ÷¤BÅA§®Œ˜dJ¬W#vùÐ ·rí¯@S¼ñm«Ý1·1f,¾Ñ°¡Å²¡ÛQòݾGº\?lã”ëÑ š¶ft[PEã2z¼Xý£ïät˜Ü?q$-4FO[wô,†}ð
+XSݧ¿U³}úX`õÔPHªpàjH|ÔùEOŸnš¶Q³aâõ9ŒFrºüŽŽÈ\0Br0ûe£ê‰¾½I£+ Ÿ>-Æ2z«vµY;ʱCpuS˜¡ÅÏ
+”³Ër煮F/ÀbýŽÑŠ4ËkpûÒš°=±w2㇫&¯¶DaKº7zŸ!Ô7±ñºR$n ö:ænV 9Þå ç‘·4ë jñÿö…öuBé+J«åàÓ[¶»ñ™mûd©ŸÎ,÷›z»]®DÒ’øCûà”÷}—Ží¤/|˜Ü\ÍN·¦ñÀëIÙ4ôeeà²B†~KÅïß<(¯h£üòž„©I¿ÐIB$æµ>½Úõ;yÀš Â̱
+h¬>Ær¬|x Øn¶L›î5°ŒFv8ÙÆÂî®ÄiÄ ±=–PAÛ/}Í‹³Y£ÒôU{³¾_CL@a‹÷Ψð¨.hçÑà'î@ÁÒë¹Öžx†Î8ôÔ2ŽG‘?1¢³õd#ýJg~ˆ/ˆt$¹-h—]éQ/Éÿpn8 ^0$v `Ow#HÞ0'’¡[ý|Ö‹šf«zkÉbW¶!‡B-ÖÇö"BoÂXáœÔ™…nÞð¦8¹¦N"b1f$4¼à;p˜<µ½@ž>BÜzn8w+Å_^ƒ:1¡iµB
+wÖ Ê
+!ó >*@5…±¿åÕk1]¢f_/Rm¥µŸÝ4zÎv @Ä?^a&bŒuÆ+cu’cøÄ/´‡î1¾}í¶ïe¦›]¨8¼)§âqiK“ÙzyBĸÜÃHê›8Û.Nšžnøv¤<wW4Ôw~ÉÊ£Û^4µŠÌþ1±¥ >‚KžlŽ™æÓüÛ¶õç5«nm¿àâω¦
+§ïiAá®ÊñìJ¸±´¥ ôæ‹w !Ëf´å©Ÿ>ÝÎæ/Ü‘Ò/(™æ¯xžLq5rAÇÕ%f‰4 sHÂî~&?Ê ª³Ó~´ 4Åi:¨L‹}iÏ4Ý-˜2\sÃ2·;ž©ÏM@ÛŽá·`HéA"DÁ†%ùF‘5Ö:Æ´ˆYoDC(Õ&2àŽ¸”ñfî6€:ÎÄWÔ% àI•yî|Ûuð,ÿ’¢ÁÏýêòO1Ý Bs<#`Æn&Êþœä†KÒyþuaR6Ùˆ–
+: ´ Ã`37œKà'hslÖªR¼tâ0Þ´Ùù:»Xd|Ó˲)Ú@aM±€Ïz ê:·sÓ@ìæ>=x4'ÂÿÄdÎ: Ût7-ëð˘I¬6§tÎÞÿX{7,GÛºôQ`ÄÃÓ-ñâØŸ—xlà&l[ÿ
+^œ&Q¡,rY¢H²lšö¼6 +î™e+kfcGŒ,
+hšû…¾Eº(*p=¯sÂóÚ÷•«Þs Lc2ñÒQÕœtf×çôó´éjY0¿¥®™¸íGÊí€)k”GŒ]nÝmþ’-q™‘¢ð5yK?åQƒ5}©Ø¢{id¢‰Hƒf‰çè¦þn,v0ÛB4Bô»dë`ÇøÎõLsèë:ãÒ˜Wྯ*èw[«eŠJ}Zg‡”m¦*‰à2>%OYXë+ðWöÕp=w%ù `™(·våƒ
+ ˆEÕ£ ËÎÛR‡Ô$:‚ä7“`ðíÓy¼Ç$¥zOu¸C—çmãá•‘¾:‰©”„q§M«Ö)E†px¤ƒ9÷…$ÑÓÑø/I¿¬‚ë’åm-ÄÅÇ1å_0õ"Ø4l©‡7,|Kv|Ý-å©”µu
+ ëÄêfao‘¿ÕTg¾²>: Ó· éß×b ˆÉ$‹ÌûM3Œê4¯ï½j(™ÆÁ·ÚÁAŠ>rdÞ
+ö,ÿX[4òW…‘C°…à¼R/"µÆqfZ€jH·ñ:UŽžã©P§SiÝߊ…c „Yï`ëüå[=ð¬-¥¥c1{‡OÉÙ~í‚—Z¡éÜÀh˜ˆbÆ‹ÖýM„&Yë÷¸”"˜^l~^£‚Fa¼S죑Ž¯óÊ·Á"ñßp½qRêÂq˜ãOZtÊÀ0ò†oý¥»" »®¹FyðP:5úJ‰˜sGÔ=bÔ§ Å*ð4ÏÍÁybÒug•½e½ïY¤\ñªLIz™Ø3Ñsª™NΔ„PßÀû}ƒåTZõ‘Z6x:Pûîç¤XômŘ|"5!À‡GÔn,aŒQ‚ãÝ–c¹)‹_V¥T{Z+Ž‚BVJ—dàMMöîZô=Ú,ÙŠ VÝãˆo³¢ˆ¹Œ¹n¥Æí@JДd5ªœÅ"£ÓT°ç^æØÃ$hoP=øÒwgP‡ñ ¹K½i¦j.9èu“ÝáITŽC“¤óQµ”æ —•ð„j˜åCqÔâ‰bkJ9ÏÜ9Ÿ íð„^’à] áÁ4ѨÀª(u³,Ø37 z©ÏAV$–Ÿð—
+Ö%x¨± “Y-òŸ®Ñ1"Bi& ¯.;˜û5Ëø V&(¤éCÏ:iH‹cFz›qJ!Ó‹uÁ=]‰ŽDô´LAÔ ?‰Ö`Ð#qâ&üZ¦
+«7ÃÓ·þÀ¨˜lÖ-qˆ¯ký<†ˆåò›ýóÜ`œNàÉâç›J¾M)¥j>Ív\ÎŽŸÉÔ9ÆÛ†“¥ÈŒ#̤ž-wÂHã¯lc¼ËK”ä8 ºf.¥·‡ŽÄ^`ʘ H9ËMmh,6 Õ½>‰7|=ViÚpúÞ¹«1OWØøMq¥«^0[¯#°A8ׄȬ{E“ºfÁÎŽÚ½SZ=êB¨å’ÅðX#ÍQ ç²#”øRÔE:qF÷äß‹ñç{{7åT£Mqê,™YáÓpÞ$Z¼]ïhí"㔹X®µPJBÌúyPvP}#㣓@”(êÄú<Òã jš¸1ˆ¥t]}r5%†}[õ¬Â(QvšÎì¡‹©$ ˆ2Jk8n|F„œùOõûVµHÔ©ˆ÷hcá_í´ ^—0sr¾°*ÜÏ~2Ñ5 K":_ØÂkt\ÒÖIúpˆã´²xv)ïèpkºQ$“O¢W+öÓdNÙáI¬m‚íǃ§ž)Ù9ÄÉ‚¦¸¦^¿Œ$Úê'$‘hëît°¬H7!dñc§ï<þ”õJ¸BJ¥ó^—˜ç%ýßwK~õÎi[b´dr‰ühÿ¼IüØÉQ“pB,ЃgçUµÄ48û¼¬6½eM°³tR}9B‹ûkcÔH1øKî›û±gvû—øàÅæ¬ЄóQ¶yè¡U)ß 75Í!€¯±UŠÛÆ–2¿ªÁ }òÓ˜à²áŠQÓRB¯Î˜œö–¸§W½~´‹¤"©\
+èf;J†¹xîì $uÇ)„"¦iXË@ë~1v¼y¹ÏHaíÝ2g0wÉ‹ŽG”Œq\Èø|ÿR;íYþ‹C«4oo!æ-9bÏ76›Œ€ìùÛ%ñ€)ém<Œ½; JâÆ¥cº«)#B¨ŠåãɉQÆÆmh\óÂS8$c.T î†õu½ˆè"S Ò{X²n¸|„M¾þã·zÉÚJG´ ‚=j’tw7ÀÞRS[x/Ø~TvR·ê!µÓ½<îË'´Ÿûcòæ¨Ó[«?¾ä¢g 2[æšê »‹‘Wf.¡ °hÆä@>/¯o´´©ŸEÍOÞÔbŽ«”CJ¥›DïuP4V !°Ž_É_,ƒ©ïÚÞn,{*48Šdl ÄE,wê?Ú8¶RÛõŠ}V%ø!;uUž ù¢1oWˆuqüœðlk¬“O Ñ”½r' #]| Hq…À\×á³kèP]³YõÔ2R•Øí²Ú‹‹g¬2bž&“±{ºÄû” Öc«žý•Àëmpî·“Fú ݳ™T‰ìZ9?AVoÌ°ÕÿÛLþjm,ÖYì¸U]
+#nÁºðþˆðìËŤh8[|×tÁF½q«¾ééÉÉá].=ÃBß2ä%'õ•Z¹KÒf529œ1«Éc W;; Ð’‰¢h·étz \v"øuû¾â6Kì õ†$NñU)Æ:»i4V.3CoÂ!–Àv—hštüžCÕüvä§ws¢[î Ñ3é—Ì­Í¢hdî·ûc¥þ[HÞ߶Eù¡üÐP" ¶K¹²ÍJ$탑c¡iRÙ ™ØØ©˜5%©:ÃÝ6,ÌPhÍ•?€.Ê•æ š Ò,µsyÚ!عýúyÉæ’‹O¬ú¸/”ŠSö
+¦.|ãÆÂÀöaÉ#OÙê6µ½Åù_ßõµ@psb³ƒùèœM÷¯p=F®&±ÛÎ:ˆ9
+l£€‚toD4fܧph„+o“ãÒ-Í«—Zk2AxÔNÄðBÉhÕ^Š±¹Ù ›FÞkˆùW§ˆ’goÙa›°‡Êæš{²_|ŽùÇâxsûÙ/΢×ÚhñÐ÷ù:m÷ò¹éÚ6'8.ŽhM§K/vçÈ~+_¾©äÞ©ô¬ÔÃ…çåüôÖ!w"äÇcý.ÕSQüÊçð 4o…ì ôÙœófðDl@q }ÅÀZÍ@€YÆ¿R*h»2`Ý4F1nõ„•XŽ{õnì ®ßLÎo(¤>-QA³l+þêuPr„s‚ËgÜ*P$4SÆ—»ÝÆŠ,¨ÝßáCsô,ãâ3ù€øìì”zNÓÞ"ĨëÀMçIÌáDÁ†¯Ð'Ž}§WhM„¬¾&QåKã4¢Å(–¯wÚ¼^`³ÃnJ·O†É$¼oüz8þ; ²ãGÇzÍõšÀ¦Ï¦-…MŠO:™ª†ëGÍ2»ÒUPN°b¢ÉHsׂ9É#IqF7\19¼ºQÏߤ¹(Ssç.`Ý¢÷i5ß„²¹ÙéŠÚÃ&Õœ–RÃvyz»À_ a=±‡àãŸF%46DˆD|iÆDùÒ¢…çò1?z"±dú AVŸhò®‡7â³¾<àݽbf/„@€ÆÖÒ4ÝTÌ*[Jó CD•ÌáJÍyé•]˜zyT
+3!ƒýJÂw ¡<|©é:œ$q¾C@ß·²…D\·.³Ö#º ÖHÙ˜‰³›ª®Ë¨<­l<†Õù$ô«¼VðeSQæÇ3×ÿ—Á}Ü¡²õ"AuìžðuXÀmef•hŠ8:éÁ ÿQAc2¡IôYê!&9ŽØÂÖßgòcl¹tꨠ3ú²fŽƒËêÓ ïÇ(ÚÏ‘}}: Ƚ)¢9¿÷“iôò“'õ©25Õ`‰¡­˜® ½¥²¯A`üÅ6³}twðá[:ÜÑmÎag®³ÏÛòžl1O¬ŠÕîTT&=I\Êö±è æ«cJ”F¢^×-‰?óÁW;=Ú}ómLeBpMµëôŠ¯5æ°¾EáÙEC?¨ãª‰Ì%µšÎºK 5 r9—òéÈ`!³3C¸/ÀÄ£¾ Ié'"Øì¹$ 14èhÞE.–Ä_ãçaöj÷±ŸÁîûu‘?3¿å†HÓ3»ÊÌh‚×Ò͸ê»XjD²w’™‡LWT€”ù- ø^ˆAåή9”N±_†Ö£û0éL|x”a:”·KQ>]-Íy¡;$x€$%»M.¸ZåkÉàIéô*c¼bÖ ±Á$%ñCQ1Ìu‹tºÐe2×—}€Oкc•‡hð $ßozû÷uØÂ2¬¢Ni¹‚ûÑ ö|]Ôxì´9à‹w<ôþrÄ|ع:˜1Ä÷pþh}Ü j’ D¾vîo4:'kÏ„’=F2AkR€á‹@Ûê¢d Ñ$»ÞÄŽÃ OÈ™¤D§
+Ðàgú§¬éÇ<ÙA>?u×ÞqœÓÜeð²<Eì’@ï{\ñnħښ É­åjšýx’khŸÓ:ž¿Ôµ•jà‰ê2Ðí6°h2"±¹o„בÀmUpžð2øb¸·º¡z«Žï®P ÆsûÊÇSþCSªVÁþI,ÄœÜS/F¬ú”€Áȃ¼ù~Ë|ËóAzŠ˜# p2¹&/œuEHQß&¨¡ÑÃBjÔ”mØò°Ãi–Æ®ÊçìÓüõJdæÎm]H×±&\RÛOÛZ¸icai.\E¶ÊCy3(Ë™ÊL©ª3hGì©”¾þ½Ó÷LVWœx½Q{û[ÌV`ÜuÂÛä:šW …šá©Â¡<§»OÃv½i€+v»^ªyUTŒbŒ!„¢á‚-Ã0l®WmÊ`Y°I×þûk)„ܱ†Ð–| í¶hçS…‰é0Ûèrs
+›;ÎB;2}[t'ª°§ªU/â"Šðç“øÞ—Iè$ÜèA7‚p¨Ë³I*ÅÚÁd]×ø¯t‹"]ës±,xÈr`Âåìê,ó*Ó‹ÁDë;#~~'äªÚnm¦ZAÄî¤[IcœK:§ÌK9W8üê+~"»[¸á~Ü}l}Ž”颡8zãj#}°„wÀ‚¿o2½6 ®„L¬)@ u•&õ"Nööã|aŽ“‰\zêUÈêež»Úå*G}È?ŠñOÝ6ÔfE|²Ë—í§`ö2 ±\ÁûKÒ<ë•£µ V¼N¶ CŒ–:ìC>$äï²:_á]g‹uí¹’mƒ<WJ–wÊÕæ=Ì7õ*íâ °@ñkÕLX~éz‹w½ï:ïik(÷›r«øþ¾ ¶x¶¡ A|{+¶¨¸Ûÿ¢â±›>ñÊåÁWž•a®$D"ì*Eîi¥ããÞÔ¶ž}Ť0´Z3e‚^æåJa­ ˜­ßͧ×pN_.‡Û¹¿•ÌÁ·ÈÖ"ŸÎ2bD-VÚšaQ3Fë²èª< m –I§˜:®ÍçLݪìbGŸÎhª\N ²§|ÌÒ¥rÉJ¨ äk·²•°Š¾/ì)
+âÑ™‰È“&:Qsõ"&ÌÕsË åºE„»k?~jq雉Œ-£²±îú~”í¬Å÷‚r7°*ú=` ¹‹ÃþXÇ<í¥'>‡µwÁ‹éêw €‘n†<Ra£®0ßlÛLb!.”ýèXš/Ž+ïj4ftS,°ÕYÃÒBk"«žß1‘Õbœá‡¢²Àš÷ÄÒóÉÆž8µØ[†‘é×ðº+}0õÄÁG<•º¸œ‚hF›‰WÚl;Í: ûÊc•¼šËú!·å\DgnL¨ÞWGm®Aê!$ö$>;ÒùC؉cŠ Ì/Õ!Ùåìj:]Ò TV”»Rm_Øktˆ×ÖA²O/N] é®|¢ô,¼§Öqö†Pç®2¦,×Cƒ)J”Š²t0ñø~ ýÖð#’¯¢yÙˆ‰†QÔßmÒä¡e÷5Á¶(McÉ ãójŒ]CçËw¥úwjÇ=tCè¤.Š‡Û±z›|íÂÓM‚ŸOR™:ÌÆIÈ“ïŸô`Ù|1TLÓœÆǯ£±óOÝó¡ù¼0ù9ÂœÞÎZ’ˆÛîEVÈë
+í9LÛ~ȵ{Y‡Äð§‚Lûå#iç-4V…mÍRªBÄ÷P¶ü—Há›faMÓOÔ€TG·
+æ|‡å‚Á'¸\<9=ȲO{H¸¯[ñâOݺ¯Œš¦—×G3fN`ÎÓO‡ò¥¯hÞ#tŸÔ7Û”Ô ©{Qî0øÑŠñÍýùùÖDXzÍ¢Ãc¼rWUg—`’yäµnhÖög?ël £áaˆ%­~hGL—Ï£j$G•rÖðÃc3E( OI7†qMheÿŒ ê›Ûe­ä ÓK(cw†´›¹Nk™×:LL ®ŽhlŠRø% âϵ댃bÌž}aað‚´Ñæ#Žt‹D¨­eV·ŽѦöú(tvĶÉìê½Ñó6‡SJ*!P*R¯Êâ´…ÅV;æHÜÃ_õ‡ˆIÄËÝ]08¤ªt_d‰j9AnP 2Œz¾~[Öb+¾“Ys=yHTjøŠðýÁM~‡á•q;Ì#ÑáºbKÆg]\·&›H;k ?Q.Œ²¾÷œÙØ4-ïz@í§|0A\I¡)(aaG›k/slº4¹–ôŠMóˆ<ë)žgvЛ}•dfyÅ@c[©~@õÈ¥îê
+óãU*…¨¦0mÔ‹¨~ ñB‚¶2ø…ó˜ihZgÛ“!]
+l+‡ÍŸíBðS@;Ê++Ìõwå£Zú‰ PJ+ª¥ÂöbãE·ÂÉÀγ¾xo´Šs|í
+v‰rºÃÄ ¶!ËåÏ +vŠT%ŒžMBù¤Ï›‰(\M¡ƒHÕ‚ð|Í6…û’]ŒlÃIèœ9+ËákÙwæ.o#Ñ%?í_&§àHcÖ»ìí‡EE.³Q¸Ö”)ÅÏO¶s!à p-Âr0æ÷‚—„ Ë î•æ=GÖav'§‰Î rÿúˆì•]ä÷ÌmD¶dcáïƒÝØÂ*fõÜ)Sdapf¿H¾Ì†;žÞ§t‰•êu3±ê¿øÑýôE ‘ÂéñZ;«c
+…ç•&LJoYïê牕ÖPÍDøûŒªJú»à
+‘ÒÛây(®ƒ»›!Â’ÀH·Ê«Ya§PÃçº*6Ð7;<½èßR€}$Š¥1aD7V²ÍýõË4ø m$U_{t«$¦Ñœa~†#*;€9E+RPšVÍzŒv,vsl2äY£GƒSSɺãë>3°x:ÿ\¦2û`Ú½mÿ6Y-ÕÜPc §¢6+ØF'¶¶ÃÆ¿‹ïÝÈÏôDÕy[í_­DòYzµé ÆŽ;ipf}ü{Z­Ñ•+¢ã­J ò
+½Ÿ˜d!ëø¯0µdò©¸ˆÁ$ÈAì®™?ÁC¢y“È%Ø¡ Q= DÛÀ[Àâö7Ñ ~¨æÙjŒ«‡x-Ïp\µŠë’¡­ÉÖéæ\ ”öYûÍ¡lä n­/—qÕyãy×x+#ŠŠÂ>dÆc£”uÇæ6ÈY)<ôÍ'²,U*  K—XÙn$#H­ nK×±ÔÉ4–Ô>W¸ö¾×äX•—÷û|Þ–"˜[©üÒ¿5£WîÜ
+ò¢O¶¥)€¡ D4*Y‘1 6.TµZˆi¸ë&ÒP”èvT—fqëÞ” ȹùB™Ÿzw©Q÷:©:6o̳ñgªZ)Ë0œA]ªñ4
+\uÔ.˜³£ªÂkÊ€gPÓ ‚닳¿ir^ÁAiÀqA_a9è¡7…Ÿ[«?öThI‰«i©W:ÿl½•¸»Ê_ÎÒ1©B“FéKC:ŽŽý¡ràÜWÀ| ®Á$“ŸNŽâwÎîîxÑƬߛâcæÊK¢–iÜtŸÕƒÀ)Üb`´¥·4;GjkæÎBÊ8-Åøpl]´îÞ–‘5§?*æ¨ø³ƒ¤xS‚à„¥rsGB(­¡ì|Õ²hq8ÌÄ»)féÞÔë£ALX'#žðælcoËõ­9j|Ò¾üŠ?£_Ìuj–ɹj‡Ã}}Á$çµ:øP¬"ä¢WÂÇhp-´Ç¨†ÓqÕw¿O4 9Œ¹ÇÌñ¯u]˜–’fu°p´ƒK‡b`Ø2)%+ÌPßû SaVŠÓâõ¬…w¥ü²• IŸü{Ÿ¢pPFŒ&V²,6Œ`ì¹bÆ.Œ;Ň”{þ[Ê. *Ú]Š¿%™”(âku-Øé¯ÉçÞ@ an%±Q¦&7C~ó¨©â‹¯R¼T°._V›g‹. s>tjJÂ=`µ\íó±UÝö ¡ÿäÐG¾=Tù½þô{ñŽ‹½²p¾šè0…qúH_ú·eü„
+!qºo§ëœÏ³Üð}¢ÊdšÛsE©É>fµ¥U¶â×õšÔ–¶«>߃ö–7, ¬@îݽ°Ž¼Å”øí¿Í“²'/ùC¹áÒðþ‚ßœ>ž:–‚¿±ŠÌ’‘Äj²•—Fs¼cm›ôGoq”µÛZ„Êïð¦Ÿ7½~Ñyý¨6%ý ƒ¬u4Þ¯åmH°ù$nüÃA³§»š·%%|Ë~Í)á4‡|òkM‡žáu<Ôö§Җpå Ž‰Á¬ñÇùÉaj¯õë†;éþGüOd4ÒR’r›f‘¨¦#(RÕ1Oö².Ïð±¡u\¢†‡¹k±ìØxØë†
+”ÚzC«â£_„yÅ‘Ø&WË°žEnoM§ýÐ[  #‘I,9ì×C~…uGl‰M]Ÿ­Œ¡YzÕ•ó;¾XÎF[¸õ™ÑñÊÙò¦>LE^?n{û“i
+h ­T˜¹™.ÌÍ[Úö´yqÙWԜƯ:Öoðù¢ÎØÈÍggbö”õ?N4„®0æ:U‡&Ép_¶¿GþNÉÔж—l³2+í…ag³'}q0g]ã"§â‰=ÎA~¤Í‹ˆ­éü!÷uBüQ|“—àiÖ#‡ßÙÓ)Ï„¹õlõÜ,ú3ëH´Fî÷÷Ws(u•%“ÉÓÙØM$“·Úv”ö³æñ ÿÆnQñ§Ñ®^Ëä¸L/HW’[Øñð±e{d$ºø˜‹øS¬îüôƒý1óŠØH»Œ'Óñ°A²êÁ”ßk€(¸:¨mÁ˜}oç+¬ôgž× Þ.6{>¯Ààóî<iÝ­ž!˜þxŽ—cÙ ´Üa1Ì [ ß©Ò8£2²c²ª1Ï÷Àbú‚¸RXZ¡(â’³×̾oÁóð„b¤Œß<SƳô$hg¶Šy4—wôBšõý\¾ÿÖ¾Š mOw¬©°.æ+¤ƒ#b™á²ò,¥òF’i­Á6²oEtR;†0xÔdDz‘É8g,™o`"À$`‘gǾ 8áu»Ü£&ûéÀœ¶QÆ`
+J3(2#Ó\‘J‘ï5}ì#aÞm3Ü(^ChÙT ·ÐADúÊ!fJzE>«ÖÃÖÖ+•¯‰AæC¡¨ž~ÁëK˜ëáÊà4‰ü~6»bßÚ{;éšûû²«+^
++dJ¹r_(nÞ}‹HK ¿ù6Žov zä¡5éŽiúì´‘m,ŸºãŠ˜åÄeÂêËâáïˆÏ&.Ú
+KßÄÕ™üµ9F%*cëë›B~ø³8X<<â&=±¡™£“Ʀ
+—ÏvÒwXâ~2BÚÈtÎw®ÕÚû\»ÔÌá‚âv Cª³0
+h^N€×þ`óSÄòer/’¸Ø¢QõGj”ë)šPiÄói<ïÞˆ†É¿0̘ÿ§-sZŒ@
+øT(„˜J:ý:>ù7Ъ0½òjH°­„ ˆ;-³± å¾ÒÛAJá>i ù‘¨¹?*²ì£Ç«Ñ39ìGmÆãž|öâÚÈTïa.E
+4T)†=ÇÞ€‰Ît¯à†‚dž…ë…•Ë•'ü:³BÃç¾®—›!žµ)p‹³¡·(–vÿ_ü6×ErïÌ9Ë—h|_¥vÙ³ú‡— pÐ9#ŽðÝø§ÆŠÊ/±<ŽÉ:vŽœ©¡²…Í÷´áŒþ°—ÛSVÆtÎúè’7 ñ´j¦á=CÍ£é{Ë9Cm+T.»º¨q3­;¦®
+àIâŠ~ükúò †5÷ô
+²® ÿZ•?:öyHUCƒp59/¶7ÐbªŠÙ…ëB,E8v2–õ€Àò ^au àCs ̲ëØÎ] _ú8 4p_fŽÏËø:f¼ß3œ¿ÆåŽÍ˜Ïÿç<ï§iykT‰¿ý'
+‘dýÂãᦎ®¦EÄÉà6‡ítS"x,òþ8¢Órè iC&÷×<*ÞYm2³Θ¾2áO8ý;¼+y½oC“*Uê¡\0Ia§nTüC¦‘ñÈ5Ûþ×.5‡)÷Wã^kEók9ü¥¬¶\¬õ%Zâ@%ðiÖæРphÏXUÊʽ9쥖©Ÿ«ÔV¹ ;aðˆ¼Èk³§8´õpóö#zø=¬°yšÂQµ™ha¥û#ÊkŽQ9îF.z눖z´"Ÿê¨TaU»ÿï-lòÄ¢LãZ€-6qÒ¬³çb÷àwÄÕñ„â¢gæ´‹.m`˜Ÿ‹\ˆa*¯Œå3áöÇݹU8M5!þ©-%ä§R¤ãøëf:v.É l!Ö þ9®È R[3q ×ìp‰ÖÙœrC€ºb?Iý NkNÔÐKò”\]Î;!y@À7
+#T(—ùUjtað…Ës4\w1M.Ò2ÿ^÷|¶vÁ¡wÑÝíý”Œ&µ·@:7ÙœT÷˜GX²žü·‹FEó?É„awøPÆ-±í¬ öÓ]p7bâõU¦TFäv~âøçöš3PëIJ¯å»½Bc’-¼Çb¡Žú;Ç¢søO[yÚ-ø³7åBf«÷i—WÊ ×¨_­½¼ŸL›}ÂÄžX}ûeÐFnÇ̧ì‰ñ鮞¨o`СTÂEU-^ƒ–! ü<–ƒûE:cöïWxq"vîüué÷vZ\xåI![ºÀT,¹g£ëœäT¿°ì>3˜oåi!ª(¦º>CQ8´Môê‰+ÝË’:. ï¾Æ!‡ƒ?D—ôÝÿÞVø·tßH…íag yá…ñfìHwµB»?Qå2k‰Œ0YÓ/3+Ušs[Z\)w–êY|6fó1Žýu¹ ùἄý.z¶àJCë¡ü 6(ºFjR×@¾+Åi˜CàËÓ TqÓxQÙHkþWOb<K¨tÇÌ¥ó åÙÐßÿ¸ÜÏ_GñÊW&”"^©}@ˆ}Ýd‹cð¬ž|íèªZ¡šÖA„ÁîÁëžñUè¨aZÈ
+y€–‰¡ý¿Ì|Z•¤wÔÒ! äßmG¾'ÓxßOŒh!LŽR¬E¬Ç‡·ÆÜö4½¢ƶŽÉ2]„€3Lujì€Îì"4 Ê´\pŸ™€£fU+ÿä^vœ+óŽg8aœ=ÙG0ÍŒ„/¼µêqÄBÏB˜¢™äoFüVí©AGÁbfæM–Ú «µr:OÞ‹õ*DìÎ2³íDFSä_úÛ(e=î½öÜ“¹0rGÉ=óß<$ë¨
+úàw ›Š'Ô5«ÔŠZ18!ä±2
+Žå®§¡lüxí–ý »ýêàI˜yøÜarWþ#Ÿ9Fwc22{´¢RGµKlù ®È-7j' À‰W_'þé³ý’ï‡[Ï#v©ž—Ãa¿-0}¯Ì·/[r‡sÝÌþl¬ tÏ¥Í-·Ü_H ¬ú¨…%£'Iqõ]3mû<• x¦N b<:GAÆ2
+•ÕoL]PvîÓQD§×wûâ‘«
+ƒëÒƒé_ãؼ™é6D¼ ù£oò×l³ǃSÛù_’¬€ÿ!«†넵կ iöè@Ñ‹›`àŠ»ŸØÓtKÛé_}•’ýYìÑ
+¯iOVG„ÜË™OºX!;º °#à™0ï¶â™²(JËMº2ߟÿŒ ‰ÿ5Ú0ÏìdáҢƇ›®l|¦w†äöàiº\åƒÖQÚ.aãA G 7fË’òŠ•µZ‚¨n¼Ø(Þ;ø^ý¾dRDc¿"Kˆç\Wç~X$"ò¹Þ´Ý8—ÚVsaÛ-9=dŸ‚Îþælø;ý‚FtàŸO°ƒEM$Äòýv{ é™ñb1ÁàÜq¡¢èÄ>¡1¿
+ò‹*+¡Ãi(þ³v½/ˆÇ ½ ·Âº§ï6+ÕE®ú£GéÑšµµeñƶ„öE/'u±œåƒ[ F7Ž!Pn©™##\‹( ; ³–Öø” ÷TË‚¸EiOñlÓ
+&ºq~¥âó`îüÈ—îj˜Í‰ƒ›{3t FfêŽTvæ+Z + j¶ÔøvÀƒÓ_¡ÛŲDdûý’È ñ+Oí­Ô_|QÇÉÀ;ïÈ%s\a«yó—¶À™•þÅÅÔÛµ»U’ëWCo§ÃÀF®ø ú%BÌÄÈUVûs'Ø¢¨h7Õ×~š¯ÔÅHûC~Ã;¶B¹Æâ€=…¼6Ê©®«fäGt^-l}ËáidìNMëµeTé¨ëRÀÆ2²œë¡%©¨´¨D]«a™e ú'*T/R¦îw>õÝ’éö­O˜3mT ”-)Âòi°ïÊ‘Á§k;KÜiÚåÏ>¥%TyŒL€ëc®Eo© „éדF:lŠ|H  Oùù™ÿ–ù˜ÊµT[9dYCÕùœ#ŸÈxbØÏ‹âйÚW†{Ÿïü³³û ¶ ƒF»8bÿÂ$ËÉ>UÑÒ•Í.VY¬.çÀ–6Îf÷É{J}JpLŽØP&Ô‰eΈWo©Ÿ,;å´~/dþØ^§6àÃiÌ®Ù
+.r N°å<¿#.ˆìH[ò©¾Œ@PD_S£
+}…™Ør‰}È
+oÅWPÇé½ë RDÖè ÕSö é‹LªÄ4ÿxU dËT¡ª
+\2ƒiÇ7[²ý¡™LÒsfPÒ'•!ä~œ®Dwøúyak•lM6ŒßøóOkꮳv+‰‘ZyÑO5œ>2µæëŒf²Ñ(,95‘ìÎ-E;^Êöí%ÚÑà©^WW™Õì•s Ÿò0¸DJ=êäƒQõÉr{*ÓpK®¸>µüÙ8l6¯“å\š@¥wœlá¬ÆØ«¬«ù‡Ø/JùÐ×;Oóš%r÷÷‰›œÒðw Ê83ñ¹åGZo4䄤y†2+F çIÉç7Á™-ñ„ØõÛ‚kYý«ŠV«%q¢?Îo~Zî pÆxú%Â1×GI“<žUÎ9ª"×%žºŒí aÒg•NÔ
+ˆ¡eÏ´w¤…H»>ÿ†ÐÔ e‡7¯Á¢«%&;ÄQBBÀœâ¢fç¹é«¬ñBü(:ùXz_óê²'T·Äï?Ûr¬B:ÆÒn;Ükå„û˜‡Ù°J„'b—«ç÷«ØÓ©=¾²dx1Gñ]Üì(×ó÷¬¨êï·›t6àmSïðâý×ìæ„š’îߢ±&±¯¿§šÜ×Øn ¯•.¬¨Ÿ3ÌZW5®7ÂÅôWQ¸K}ØÀÂØ8G‡4ÂnŸÿK·¹óM×sªŒ
+ˆ_Þ¨3ÄÈEÙ¾§|“^¨9ßh«Åîš㦲Ï<–°¡û[ÔݼcéÊ>5Ã$yOðïQ½}¤@^þ«ç¡G–6Ê-‘RÐöG°Ää.†°'z!oYúpm]W«Ì­ñ?˜ór ,3˜œ!²ƒ׌›nÆdÿŸœ \ªÛè‡`9ôô«I1jaxt͹ 5¬IÞY°ó»:£Å¼*é™RÆàÐ&÷жõ7AyâlünJƒ¤;Ü[`Î/µ90ÍÈ£d5)ü> š¥&¶Âùâ½L#´Å
+b5g,ñšÕ8ÕÍ(Ÿ~J™Ïêå|"›5ž]îqY™È© LËðÐym}êㆳklXµê®{¯™ê-ŠC¼•7•*Ê?ä5BPÓ£•ù­çImÔ‹! s”a.••ãG>EÉûi£VU“¢¿§0ÒÆ”¸4hþ°Éu,iþ£6“ĦºÆ-žk°þ1kÛA`˜‹ºbÙÍr²Í=Úa3É}wÍ@»•a3`Áó¢´´ì·‘¡ jTJL±Ø)"®GšTÔÂV¤ž5ènTüc¹´ÝÃV.j6˜ ncÿeŠjÇîÆ£‹K£'Ì#†÷þkâ3ì•òó áñ*gÏZ¶ýË-sG­)JvË´1ÏÌ©G^ÁìÖDÛÕråËÙîb&ÜÝ@Ÿ¥«ðÐÿÍo„Fþ/Á𦠊Ã~»’bC~¿óìO )¤Ð³E-r<ª3™ÌÕ3jdcGKù<iRç™ZÜÄÆì)N{Õþ@‡j‡ÞþÛP,ý„üå^Nø,#‹AZ–eœ9âdÌEŽõ f_VæÑêL«Ã•OÙtL½Zt€üóBhH4žŽÒc3¥lØExë•ŠsÖrÿ>µò†4*/b"¡9¢Âx6ù·ä„G°žÉ—˜GÎ÷Ý›”«ÿ"Ç1<ÆŸIT<I…S©š&‡£AÑü‡O®ÑÁ_gÂ÷9d¾Pó¬ì¨­,ÝULsÅW‚÷ã=6¥GÇX€
+Ô–¼5}nQ"oû…[ˆýCÚ…¢åLeîË™ñ “ˆKçe þýáeƒ"ËæÕ9Ö½8ùä"‚/ˆ+þ
+XAë½'
+ÉÆ·ó½µ8“ÁÏAüy¹gß"¢ÆCDÉ›ÀoÓغ)2|Ã-™$µéýy²Z2xø¼Ïø”KÙXÓÀ‚X4ï]ÐÇ´4SóUÁ÷«z¢šLäÙòòÊpTùTE<ˆU­ÐøÖæÀ[®£9u9ê¡êÑö%5 ba Å@“z4„mˆN?E•"ßwW4R4™r˜*?I8·}T{Ì ÒóyP¾^´¢L£f&âžZºH™wy>™á=®]øi`'K"Œ[„ -¾`×'ØFâÎ7-_³ ENÿ
+UÁ÷º7­;¸×è\ †â woõÎC¹ÉÖŽÉ6•ìrÚ€R•i¦ûÙ9‘u'¾ý9µÉO¿µžzcÃÂÈ÷ßJ|jߘoã_ÞvÃ<×{>é:pÙldW
+$”¯4¬CI”ë.Õ0<
endstream
endobj
-666 0 obj
+915 0 obj
<<
/Type /FontDescriptor
-/FontName /KLCXYN+LMMono8-Regular
+/FontName /XBGYSK+LMMono8-Regular
/Flags 4
/FontBBox [-456 -320 743 1014]
/Ascent 601
@@ -6134,103 +7595,116 @@ endobj
/ItalicAngle 0
/StemV 76
/XHeight 431
-/CharSet (/I/O/S/a/c/d/e/equal/f/i/l/m/n/o/one/p/period/r/s/t/three/two/u/x)
-/FontFile 665 0 R
+/CharSet (/C/D/F/I/P/S/a/b/backslash/c/colon/comma/d/e/eight/f/five/g/h/hyphen/i/j/k/l/m/n/nine/numbersign/o/one/p/period/q/r/s/six/slash/t/three/two/u/v/w/x)
+/FontFile 914 0 R
>>
endobj
-667 0 obj
+916 0 obj
<<
-/Length1 2181
-/Length2 21548
+/Length1 2277
+/Length2 22098
/Length3 0
-/Length 22865
+/Length 23458
/Filter /FlateDecode
>>
stream
-xÚ´ºeTœÛ²5Œ;ÁkÜÝÝÝÝ‚Ó8{pw îî,¸;÷àNîö’}ν{ŸóÝ¿ß`@S³l®ªZõôèÑäÄJªô¦vÆ@ ;3=3@N^ÞdÇM¯4w±1r°001±!“‹:œ-í@bFÎ@
-TQTWR¥fx¬êbooçøo.¢ªjê’t
-ð§'
-ó*pJ„kè¥ú žŒk*Ê-Q^‰ÃŽ˜aÞý%z ‘íI¨@p a;˜wãRšMGêk@ÁOƒfûc­UìýA¬ã_5·»kq(%äXÞ­5þnÄÎ4ñ°‚Œ5×Àg Jf³ÌÖ‹åÃÐ`Þ<Ý£kj*41 ÁÌ‹ÀtnéÕöbs,[ ߦ—Ö+Ò•HŠîjÑ\xÀõ¯«dɹDˆº$ƒ<vÝ®¿Dn‹ŠWºØ*ãq(®Væ æ躈GŠÂ8‚#‡Öv¤ÂrZQÉÈ¢±¤šV\ù¡í*qÊH 0T’&¾ ¹zC`*ªŽÛÔ|tiýS ÏO.»°ó¾ÇZ´%“L®ÀÕ>
-îQ¨mª¿U™K4ºsž]ºÙ«CÛݼÖvKzëzTWÖ€ç8Y#TuÏú.êaO
-óÙOwõdw¤ôS¯r›ˆða/5·ä´g/kL¹Ë¸£²]d^‰±Gi-™ ¦¨Úš U$>ÎWcå–ô}5B‹û0èT®(ùlõÕ”°üeµ;`Ï#×6‚‡…MË/²
-‰*’{›@Œý£“{põ ±^·ŽÛŽk]-ha’Ãÿx;m:&+ãÙ’5–ÝÎÃÏéDòœ&_ÞOZØ
-åÔe9m×|ân9׶^GV¢”ÁŸÚp$Us‚•zàòŽÐX&©/íøu¦¤šè± 3¾óÓ–B$ž¨Ã%åÁÒ‹íIgw¿ ùS…ŸÛ6ÞÎù¨õ3[Aó.°@­.Üřѥ½©{ü7dz¯&†ÒX× ÿzšþÖkTsó5ØYm:_…#¸/¸’‘9 v{=Œÿ—`5$äjêêÐkñ3’\È%Aª¿|A¥žô×*Yøæi3úÜmrÜÔ ¤‡½­·©ºP­ôuR<WLûó\=Õ—Ä—N'4–TNtªbêNY¤ÜLJ8ŽÒ—•zù`¸.fZì3ÀnB7 F¬nJˆ!ç@ŠöÀ<ºÓ“ÉçfJ‚èoêb(°h\Ïògs{Éì4ÐÉH9M ÷œù7à5"4̼’k¿<ÁS ÷t椭t
-ï4vä~Ø&ŸYù²›G°à¤ùc¤úÁŒ,GÃW†{ãn8Ô1KïÚ¹·Y ÂwµßYþØèB2ì|°™ñ€È§wÑËÒ¾8÷º“A¦`+ÿB®¸3IxåY¬Í¯¨.OhFa›6+tÌz›^þ›KæUÇå"#Öj¤ÞW2„gXuë×y¨2~ÝO1w–†­Õ’P„Äl©‘kÉÎL}'E$ýð{ óqÑ,ÉÔoø_Ì7x\Ÿ‰òF[U@û¦Üv”w&†|]bõ¨Q[Hcxþ–…šž$:O -É¿àªjY7šã0cŽ„«™–öùAüI ¯ÚÑô:@á—wpÈDó¯€ü¶U‰(bL˜ˆ
-%-aÙÞ¾.ÖCl£ éª$Q-7Ÿ°ï§QC<6A¾Ï“´ #7·¦ ùˆw3Î6_:f@õãj¿…üÞHÂUzQÊñ¬·^£Z‹O³ËœÂÕÞëÊÅnÄp
-žOÉ|AJèï©!Aúú+´•ð´y¨†ŒYD"UÏ:øÛ50”±<­¸¯;ñÜ ¿  ¿ZlÁrWlÑÖÂn8âV|_RÚ†Õ ?ÏRe¼\ò;0¼2.l ç”8íß[©¯V‚àiÆ¡D4Á:ùѶBÒCRÃHÉ} +‹r\¼Ô[WÇé/¥Ö®l\oš
-wòMi…
-ÂñÀa¬ ¬q»Ú$ó=‚ŽSÍ%ÛÐ-
-–Lž,¶¨ë ®­[âþúîìâ+ë#a`—/µ?mµh÷ªˆS¥ÿ`L;mtvÌuãžïÁdnÄEî·N—£X5v§·üxŒÁuþÂ/MÉDýY­fNC°ý¡ªŸ'Öjð£+ðágÛ‰
-kýµZׇfB©“ýïH:HÍ×ÉÚjŒ±î|Áà>!ÅžÖé É‹›Û'¿-ñt÷ÛñCû6^ -jÈ  ;¬äšôdò®¸µÄh
-uó5’åIæn3pÌÁ<ÀåY+HGøþj!Q ÉZ?п¹ò@ÅÛÜqÀ,D¤ ³9“»!ÓFë]ƒÈÕAÑíHG¥¦ÀéfþQ'p„Ϫ&ÜÏFm»~‹ÛØËK{6
-Âv&¸õ­F”ší;æ…Ô¿;ŽðÀνÒîïqLÂ4: röéѬþÜkߟ«a`Žh]&ÎphF½uZ³Ù8^nâËÜêŠØÊ\šàÍÎÀº ´¸f6 0D$ò%L¡ÑõZ‹SÅØ»§tÐÐ$ © -)‘±V´š8O&h´ÝM€"·ÂÔgó%£ýžÛ¤¹@ßù­PME„Ë)F~šLkðÚêÇxõlrÝEîá资JŒ­êlU6ïpq–€ø9æ#¡? ŠšÌ³ëöÖº­bÿ&ÞŽ‘Ü-q‚z&e§µBæK<‹Tj:5¼8ÆèMñìþñ)ñb¹pZ;8ypƒŽgi¸
-tcp-bØ|¿j a¹L)¦W÷á‘»{6U¾Yš«Å€UÜ°Íq}mêž-(´sß;2p÷ié%¾1ÝùÎwPR1‹V'B'vÖ–œ‚o¿4`Ñiˆ5Ö(îÙôzŠ§_Ž¸¢BÑæU&m|šþ¬-ªÈ`«ÊGm³ï5Ÿ¦Ä£5ÿP“ÆØŠg/1["Ü1>æÓ³¡g¸4·½1ôÓ ³MJÂjõË!_s}B[FÀBzÞB\’ü¢ÒH ˜§w+´A/ɽ˜ÙNG¸¯RI1]„ ºFda v¡Þ`±ÇKÝ$3^­òüåݱV×ÕÇÆl¯ïÙí.Ä+ºÕ÷Õ³-RÛ,|*ÛÓ†4…Ãf:|Êâlüld¥wU£®#:3zrôzÛ\ îÁ
-¥/[ý},͆ì8É<Ïò¹<y4æ }[Q‡ ñ‡ã• ™CS7k Ô$šÃý›ìjŒx'|p}*ô ËžbÔ¨™rfO0ì×PäÖpÿb#ºŸögãndÑ•
-Șc7h x–„­åädw³üÛ}—ß­jÒÁ6Ĩ’/1êÛ|$¿\ñ×Ñ’”&Þ;ë¡BØ^ë}ùaßà´šþ…_NžÚ|Ìë9¯%~Å6ñ{Í×
-šÒ'þ±ÏB¨ìe?“Ì^£ SU(›%)ŸëL/1¡¢T0vOÜ{Ê>¿Þ,°¨|
-±Ã˜L†
-wxkXw¨¹þî~`áñ¾ìu¡Uì(}Âä«á¨#ŽsxJ9tЪŸ—«×íéŸ#)Ã-ÎŽ2x®àX *D˜}92Jf päÑýøxŒ@ª•²çS|ý½~áM*[l€± yÏž4Q~úž—1óF$É4³™Ÿ²æd5è(PÍÀoÝš³ÈvÐ}kQã5È9£C6¸5¤Ç¡Ö¹^*‚»è€´ÓÒ¼¯˜« )¾L‘7ñí œ9±3×Ĕۖ21¨Ad\ê)ø#/},´Ž¼©u„—f³jË–¹{?•"q}ªé¶-³2QðÌL°õjx]‰>çyË/÷ßÚg`”QÒ<íš]SM´AÔw¾uǬtžø¥µPCÌ~yÙú¬ÁRÄO]4² [WSÀÃŽœÚà2ØA—Þи,ºÒ¼mmüQþ6úÓ
-×=~¡ÍÍv–W`Ì\`+ÏK:ܤðü1CpXϲ%ùdq黃æý̯÷ëÅ4*ù(úsbE¡D>è1vxNPÖ‚{hµ;è)æ–‰óÞ1í±X÷dBS´ò´¸ ’N˜‰b”Ͼ#D^£Æø|¾×Óµz%ÊM#¥Ú€¼õB¼]h·õŸ>¥­IýlˆÙ8A1ÙÔÃObp½ê6åŸôŽ% ‰û õW~÷W£û°\ÕZ ‰¤¶An€È}û‘â9^&+N^:Lš'c߶fç ¼ú0Ýáé¡‹¹àªëbéU¦¿ °!¨Qý¦ðb©DšÆ'š’üŒ¿v§C!|¦Ã<© –êÎN|¤Ü’ßsÍšªšÂ÷»¬o£s°¨¥B|N]PMLÁâ0˜¯O3Ã"±eûÍЊîðëq»Kâàæ,bБS5H~Ž?¤†qu£e,7l6á·Ã*ļõ’< kµϧPÇ'&ºçU$!¬gW…R-ÝXëÙSÁqÆgv,5Õ¹͇mw"ò¼q–ûY䬗ƒÏønÈ$ƒ¥ïÎåÆ‹!ù±I$¼ÈÝÅÎâÏ‘ÕœuR ôÅÕ7,ªjéºó¸úÈç\ñ„tà›Ì³@Ã#ØLFA%­ÂþJ9O½FšÒÈÍ8:³¯‘0-ŸY>Z5rÃQg¦Q”ÏmÀFȹxƒ¾q;Æ'mä¬Ù~—r¤ÉXQ J ¤×é§Üx+–ÛSå˜Q&îâλ¿ð*Ja°R ±J,¯ Œô­’Cô÷—á …=£+[맓öN|hv!
-´Ù‘”ú »?‘ž—„²7{J£ÓÄ&ÝŽ˜Žûµì[Bá“ëL&4pÓÞˆÓƒ^ž¦­]¿Ç硼óJ+ìЇçfÝxœ~c¦ácú˜—ïȇɴ?iJ´R6-”˜õff‡wºÖƒ\ÙžÁ/'ÝSL<Àß?$î!9‚`ÝòásŽ·ZåÝ7RÖf—D?×µcÌy/ª2Àl”$ä¡_Ø _½¨‹2á;.¯)RuVVáÜÄé#®þLq3ÜI!ð
-Meñ˜‹ï’vNPÐl ?êfo¶"…"4ÈÖYp³5›ûš¤ßtëÔñëàSåy¯Å<
-ò¶–}~‘‚†C9l ½h‡¯‡€”–²lb">;!Eÿ3ËÏ'eBW9¨°
-\‹µHQÆT'£{ØžÄsA§Ë¡Ïë×UÚdÄÝ#heÒÅXGF$B¾… ùáí6£Ì*ÝiJ'!Íœ‡‚¯/wfYÃŒÃÙܪü]ì£K’*¾3ô$’5û¸~œ4>…&)ªœ,•Ùz’äo¶’zÂúíÄìWSgRIµgô`DµCé=ÑÄnIcÌÝ©úK9XȦº–'ÝW¸ºö®5ÏÇ#•Â ¼s\…lQ¡)ä¡ÚÑêS¾à"Ò+¥…™·¸…´O3mc^A³hÒ}•§£@ŒÆ<ɨ:ˆtŽÎãínk …8íFÇ˃u\|lÔY3þ²Dy¥ÍéÜÕ=QRZ.‘íÇ)K,7ù¬#n25ˆ­u¯^rQp*ŒÒ0IžnsRR–G‹bªñ¥ã­m>zÛ¥;ÅQ…v½ òCÑrÐ| ¾é¸ §b‚­Ö
-ÎÉÏT´3C·3Ñ…À¸
-ó¥+Þ4«‚q̈„¬óM%¦ºå* R›x/f}Ä+ý$´UHu‘M¿RGkšÓxKÆý>‘9:GÏÜå•ËnLà†ÙZÓŠ}ö®C_[L7Öò¤wåˆ]ðøLÓÎ0Ú‹Is‰
-¢$☾â@ìÓ:Ë©³© ú<ZYfûÆÝéŸRz­ßív;‡SÀoT[hUS©á„2ŽhH&ió8Zz7Ûºbá\6Ô:ÌùhÿzeŒ™áAe«Íkè7šŠV%Rm›ŸºU÷&öh!ñÏÏl»G
-åŸàµôÚÉöP>9™ÿ̱/o†ý@:­-X»¶ª*%Ô{Ç¢eƒ4Ìô7MCx,µ:e{3ÐH‹F³‚oóeAAšH½¼ÛàŒÁ«h–èU˜Ï6Åc꯮Ç|iy¢UOjE´ZÚátqÏô%Y’ŽütÈ•óÌ<g)ýF•æt¸ÉÐÅÌ*Ë ›¹âÄôÒãd­¿Eïp:€oÞÀØ5>uk²<°ãn­ÎÚ´?àÁ6bƒBûNsæÏölvN±mÀ×ù Ãm/þ#AU`À(GAÛ—$žŠ†©jã` þ@ÜLjD?«òŽ‚O™ŸHòrÒ'†Í?š‡ndÀÐÆ»FÑe6ý¦¾Œ¥è¾._Ü4q”¢]ÆpéŸFeŠ+ÃæÏŒˆîý2ÑÝñ!}
- ƒ³Îwt`úÒ­26ás‚;­<·‡€˜})£¿h~=ÏÚ>ºLö‚`•ûE
-6!d$´ÈXð…¢M úÂ5=¯Âñ¶äg-º°»þîN]*ÆVR„^3§Ã•ØSv‘cÞïŸÇ[›ê¥R^ðÛý5ÈX%ŠŸE.Déì/Ö[M’ý‘j=Y¸ðã©>wAßÈ°Ù“žüÁ| ”!ÕQakÑÉ»j7ê° 02',éÐk.”U"’ŠšöG 'r9 Ä¿âR€¾ÊÇ)ªzTº{ Qêf³êƒ’3žµæîVI¹¯0Ë…ç%^K‹ü "Ý]´²t‰nÏ4šr†»bw„s
-_ n7È”©yìù³*ÉQ¾b…C“ƪ6jh™E€
-ä*j
-xÜ–ß'°|“]š.Žk"4äL«ÑŠdˆûŽsõ«¬¢¥úKÕoE
- Å p‰¹«/‰±²òãñÂ|,N+½/t²z¸fÕ|©tJ²qŸ -õpxM¡c¿ž_çð[i^öEíìåÚ2Ój¨rš/ûú5ý£ˆ›‰ÒËÜÆÜ`peÇJîìæ:½Èb–툳äu½ëÔ´#ÈIL«2=›CÚ˜úÁ\¸lb1\Dɼ¿a­n³DòØôJˆš« ¿o;-rt0)!-; R’/š“¬9ü±ºä~ôDè~Òn£Qº+…Å•T€(P£-ñˆÁÑ—œëóÝ6Ξ]ÙŒœ+Ðé÷2£hjX˜¼.çéðúåñD&wpkúè`öAó@Ö¾Ô*6‡‡×Vo1Ø)v"ÿj™‚Ð$©ÇW§fIG’Ë_VO¯â›³Ñ`|høëgÝ÷vŽ«rG+¸<;îý«îùXýŠÎ,Æ}¯K7x«‹ÅÊÓ<õiÖf^i‰4ë•9 áYOE¾&¥ÝyÄm}ÕÑÀœCÇ™
-ÎÎ 6 ¢6`jn¾ ˜±T¨ÉK­wŸ”æüÏÌ7b”Ö#s¢ ®ŒJ¨‡³i³Ô-²ÏTºØåÖÐošJR㮑-\}) b.Ä6¶WÙÅ5ÁF@µŸÔQ‡ >|#Ç+PByìi¨Nϱ)ãOç`s÷X±ÂnÕç òFÕȶW–¾çÜ—’qìÃTtyé¬×¡‰šH`sÂíë’©npô,ø9ã !\Ͻ/ºPI ¤Œ§ª º7ðaÌÐX$l_uÚµŒ¹Ðp¤¬Â=n¦¶UµQš³ë5€§¢*ôŽ€ý0×­ÇoË€>ü¯Ù0“cël]yU U•ƒ
-P|þü¹“DÍüû÷Báû›EžVóä OYŠ¡‡Á'=Q}S]mŽ YÅ×™ŽBç(J¦Ïü.wäoÒQLUÕ±M;|yª'C)wÛ;=G‚ÂÖ€{²#&É­PÏL„àa¯‰ÆG“Å¢÷¿:åTò ¥lÐ>Ç<Þ£ÀÔðè›GöL1©X­[¢•ìî×
-oçö,örq—dHí§ô­ó6ó¨õ]Æé¨ÒÚ·>àöÀE~Vb Aµ?Š¾qK„õÌAu?ýTþ ¸Y Nªï—˜“ÇšÈ[óÁl¹4"àeú„Übœ}©Hñ2Œ-º4«¥_o‡V1©!5"GßÄîA5CÔ5Þ¹X#)eÇ6Xz*ÁTAçjàPt,­d™÷ó‚` |æ ³×#SéwEØÂ#!Ü›²[›c¼­fÈ1/â7ÙÍ1š¶Ddk·u%½¡?Á~‚CŠç-Ç2D“Y)Ã+¹Ç-Wª½Iû&j
-E
-Jð’·®¥O1­se$ñ¤Ç€älû·?GÏvC0yv®}Lë³Ð°
-²{ü£ú,³‹–ë­ôî·UHÚ‚Ç5Ú&­÷w&¦Èu¥kTßßß8óÚ£›wžÚ»4¹|tw¼+‚¹þ¾ ¦ô”Á <ô¸JUà€CÉëñj2Kš©ùj™¹|>Úy|–_æ 1 @ìLÓþÔc,MZmÛ’&?·Š,ΰo‰Ëì ¿qèëŠì6 (züPÚHl̓adÐlªl_\ÜÔSª¦•`¤5C _•“Ô[5Þ¹ÖMAŠ’¤Gg%§à#¸û\rÑjBY[ANˆjh.⌽¯­{Mjeâ?—œ –ØóÙŸìÔÈ_¬VÛHú‹ñVB„kŸ€ŠSŠ{+n~]{
-çÏÕèDLòuL½\ÑÔ<©Î–PñÆ:IÑ9xÛ Í|Ò†ˆ¸ƒc2ùü ¾Qž+|´Ô.Ac¨Dö¶›OÛç”,“ZàŒ39ÛŸ~-äõ©c…ð¯M`iªNáëýB±ÍÌÇMƒHÁ”&oúýáhQ?}ßðÅ8ÒÏ6üÀ)9@3ß¹ŸqÌ¡•Z\iîsþ¿À¦l¦ì~<Ô“t¹ØWYˆŽÙ_ÿ[qu}­P?oåB¤gWnö²«Ü³úú»ñ:âÉSHÇÊVØAµl¥TVˆ¼gtN”½_ ñ,
-æ›n;:Ì †þäÜæJ—3çY‡Ó÷–L ƒË_1óÕHÆ b…EìÒº7ë…È ºÀã; ýJïÐÄñäÉ\i_Uk´–*äMåžÊ/üQƲ­ïÑàF(4ß„ŒCé
-î›Y²ñõÕº¨ðªÝ9ž4oCÐÛn¥9˜ø*!>Ìâ‘ïšÜ£.L4k}&1‚G¶“ë¢Ü'(®7ž=äí’ú¤(s¾Q:tªÑ¤oOwÙ®½L`ÊL‡ö%O­@¾_·Ed­?¿ÐR½x FB´Ì:£’‰hJá,mï0m¿*C4_o(ÞOÆmÙŸ=£ÏL_²ÛEð›(è”ax·¹ÉÔ¬Ê$…Õ3b@°w·nÏaa|;aäŠ_úê̶3­ —¶¨K
-hz4 ;¹äStŠÉiø!ú-N€,^êZ@5TF';áR|pÿ!ÈŇx|°—ºæq¹e‚àöa¶ù³ëÍ¥¾ÉÒž>¬,?ïNtNà š6~𬗨D±`$tôp-áH—õ“uŒ–:FævP×T¡­È“ w‘‹¥^Úyköœ]ígçÈI‹êÙÞÞÃ`á$ò¦ksÁ"µøpªÌHe4a². ùÃÃ^U®:|Ô¹"Õš{Oâ!AW ›±âì9vÓõâ.}]HÜÿã«*r@$¾DÊ
-ƒ+ QdÃ¥û$GŽŸtôMëøð=ÐH˜ld„«¬aIÈAø›èÝø7žc>—
-ì†o|.îÞ‡<5ÎÝà‚ å¥á©ÍeòJòªI|ècA{0£.¦N
-¯ú茕çK¦-Ñ^ì™ðaS—õ³Ì¢#D²*w±''ó—¸ý‘5h‡+ú оÞîí³S„Fsvâ&LVn`Õ âè
-HÜçNˆ5¨Ÿn¤zö£½ô»,G3ñ›?â(>Êܤ<?ˆ$„áÇd‡Iy±è+Pt["þfÎjM'Xƒr™s
-΂›ÊuP /+Ž´¬ ¡«š-éùP¤6<AÔ%½ª”Žg›‘0Õ[ÛqßÅŽÒŒJiïÙ7Êžôß.b¸©t'š¦Be ºÖrš¿–íûüªuÉwÄŸü
-¯lÐ .ÖÊ=6¹7DsL6ø¢Ë¬h˜út„BHSJ™22²åÃY›²óð­Š«!Ú5£…‹7N"ñøñ^“^ûƒ ™;§>b6F­—<W¶ ¶“ª9 »2'ü ÒöþÂîAÔ÷"ÁÙî‹¿9?ŽO^ƒs¬‹Mÿ„×èá +1·û
-Ó€(r¬¼ã/“Z8L_ö;-v v¬›©æDZòùÇ(gÃjË ±@2ËIÔ°U½nƒ ý<œ¬­YѦ|Ϲ†D¡Å£¨ÐÂVnÖ¤[†ûz ³ë„œ’‚Ëô¼»î•õcå¿|ÂDÓ¾ýpUfˆ6LI„”ZTØ ¡œìpö|Ã.®y€Êôšˆo¥ “°¬FB®õ€†w‘kk'³æbÅrŸLºÕn~G‹4Ÿ”¢ ‹X FpCÊE™"1?¾ #íÚ,g\þU„þÁ¢˜¥mèãææqªb¶mm¯ÝÖ„7긇‹×j Ý™X‡sûìÔÔ]ﱄ“ð#,šß¦íWÈÌhü æÏ`¿äã’ ‹)ÐZf2ºæÁãGùŸA|rè°¨±üòžƒm¾úmAb^\®D†cmÚîs‹ñi–_Ó1Ç¿vU)í¼šú‰ŽŠ½Wye5õuãyÒ½fÏä–óSΆÈVÖ¢ÉúýZg+]£ù($pà³ve隡цè-Z¯@®W†„#8†î•áü9_îÕík×ù©[Iï©ÌžÕ¦…,šÇ’-ˆÕÁü^&“KîëìÀV²U1÷0¬Xï™Âô»gg.ÙäA
-ª|Æ>kèãÜó|™!»,ûleRÒ-ó&8 Ó™†túÎt¨½¦UÂo’4øª ¡-0çÍΡ~©üŽë‡D1¾ö;ø"53SÑ Üõ¢Ÿ êÒ5LaµTU5(­-íÅ›g%GcRÚK÷’vÍ}«íT=®°~Ö »O8ìÊ®è:ì©}}~0+Ðmøø«$'Pëe0Øú®¦V³×¢NYþ•¢tub‘S©¨çÍšíÇ n2a>ïÃgžp–»9°·oÙu¼>O$‡I—Š\*»>Â6/ÿô]õ±4Gá—v4³`ï½úÚ… Þ£
-:ò9£íÕš23ÔããoÜ>©GŸ÷^îªê“õŒü§à«4¾¢FZÎòãæ=•y¼yUÀÔUWB£'øÀð<ŒÏÁð†õ…åd­”Bf…÷š9ž×Äñ•†¬;+ X­$pÞì9’‹ù¶ÜüüÕôƒU ŽŒg¶Æ  ¬gªÓu9dºƒù’ÑüÃO®XE9BB_žø c¯<†֭„ŸP«íCÆ—-ÿ/½Bè\FÏ6y1óÂ0 Ï\CKoñ¿£[·Z1GþW%¬’»qƒå‚6Ôù‚ü¶Ûs8]ê#ø߇ß2Ð ž"çã˜
-ÍŽÂÔd"ãðS¯Âë¡3v“þGú™r²‡¸åæIÜYxÓ²äxÞ’¶â
-Õ¡}•~¤Èg,£3Šäi]xˆBlÕy?kÆÁ°«=XcÎAC)Q25ÿµ'Aˆ« émÊ­Þ²C/È ×1kªXêdIœì˜´%š°6UèßØaÊMu=}‡¾,uÙŽúçB;äs~‹ŸÌÌÛŸ2p—ïç=ºžP€pÅì461ÿ%Šgµ  Js‘?³3,e‘œ‰QéDÔy’A;M}¹à7€€:OóÓºÿÓ›B‘‹2®’›–Ù½`yxEÂêñ‚°to¨)W<yd‹?_Ü2®ÒhΕ;ç†qqÿl~ƒGBÃl;XçJß[¶›v'˜bäÚø}5&R£ÁÜ‹¼‡$·=#…ªMtätƒx˨{"cˆŸfóZw]¨½itÓ6Ú‰QGR!¶‹ûóòe±Ñ¡j‘›u<õqÒ§^Gæî;16òlñ¾Ï Ö%÷Ʋ¼ý“sçE\0ÚX*Å$ ¶•KGùð7" +3æSlu˜úy—‰¿Aæõ^¡£½<KqYÝ9ù›ñÙ¤ÑY…–ÆÛØf*°!áþ*D:Åm¯àÊJ¹à,!z؈åMÏSd…~¢ µÈo™Ùóœ N2BŠP~7vñËqÉ04¼*™5M¯7æ&êbãmUd™_*92U×ÃE0ˆ41qjG<華®n¼«Î+k[@íJPÂ'Ò=Ê•r—”ry꾂©ÜV”]Av­ˆHùyðRÎ& B¦é䮤Rªµ‡O¨³¹º3å°­O$
-;*H{¾™ˆ¶¿@ÝôøVS­”âîÊ~b-Fvt•]ná!R†çYz§‘*^ÑtM•âV|±Âïúd²ì­‰‰åëÒ4±³’ž¡ZO¸Ñ)ÚæxOj*Èá/aÃqÒšt£(~VÍDo¢K5ÛÞ»éVòH›žEšDCæÐŽÆ3†ö–î"êäÓÜÐçVg”tµ$‡B+ X»ëÛ£”¹Ú/²oµ½>Xe-}vøoëÒUW¸_•]-QÔbÛ~+aHxÁMbý³±–>ìÄŒ/?ìòúÙÛý“›þ–‹->®0üŸ®â{_·‘2b½÷jÅC¢v-}» "öÈDXá1âå–æÑ\]›øCvURó~‹v!ä=¤#6L‡¶8ű‘ë–½¤m6è×WÛa™w€ÁTQëò’½êŒ©MýeëGW,Yú›ýô~c²ú=EyFø³ùHvçObç5oä5¢±„u-qáDcÌLË'ŠjÇÐÅ«Ù“Á@SE‚%¡c–XÓqü]53µR^r(=V—=ŽCg9+öÁ ëôYÑF™|õá4–QôÇ^æÅñÛŒs²ˆ¬…›Šóa¹–f¿)KŒøçá Õ¬t«¬‡ŽàÃ’ž3òhÌ/6ï1—Ø’
-¢I[0õˆ
-ñ¾ÆÑ4“Bs ýfk6#‰c.¾×¬ç’–¡v_”KŽhŸÊýoòõãÛ=g¢"#Úùà¡,ðM€PV»ºm‰rT·iM­!gÓM6{`k©/¹ÿ JÙ!¤mƒQæ Qm˜?ƯzätÜ8ã9ú`ÇZ¯ÂÊÅŸçx,ä!¯ï
-¦gZàÿa£9+º¤òëÇý'Ím"‡4N›–=„j;ëlº{ºÒBªÉÕúŽõB½0M-˜º½‚{Ȧ‰ÃÃP|r“Û?Ž¢§â[XhUVÁrE'â`Uƒ|Zý GúKp¯¾X¯O&•ÔȆZ}X–’è1ÊN†èGz¦Ÿà„5ÿ ˆeÎ$ž
-Ì¥x’ˆÓ¯t[¥ì¼\4ü½vÅ"Qì+•ØL¼ š“©³’¤ûvÒœeàpe
-X]U,Üž¶ø`ö>þ/ÃaáêE2™I=1,v" Ó‰³Ô ci?ç­§Ú‹>|Ù5ÀZA£ÇÛÞœjô,[Áó,`î]Q!o!Ëox䋨Ê“$ô›èÒ!B1Ø›ñT²%UuɤFµ­ñZ¹‘ý‚:Ýé7T0LøKH­š£üÓMÖhÐÍGÈІ¤Éº&H)˸9¾ßÈXNþÄÀËä®òõ©\å©úª94<;4=`9J˜ñf-M‡–éoWmupÒ²:Æßžz<H¸Éõ;™ç"Ž×m¯aóÕâæg©Í0Pü»-vKu
-„¥7†4myDD×)žTûºhè °#Tÿ…Ï_ˆÙÁx> þtºÝ`~¼@‰0Ú;L¥¦/h|œ#]WLIˆ=ö ¤}¢-‡:Çå“ÌC¹"5„Lp—…U´½8‡¨Îµí®¦¯_ÒBÙ‡ nÒŽ&Gm×úlI,ĨûTCa¢­à“qÇ¢=ß¾¾]ïîKGˆ×dfz_`Ï¡ôèOJ|ÅŽ¤èRªF¯ÂÄô7ÔÉ ‹£0»Ãc¯ü’Ë<\­‡à{'Õºàî·R„)á%Ê$QGü;ußHAxMsO4y”£@3
-Ÿ—ãÙB>º¶Â’HÇ(¢NnŠŸõºSï|ݺÀxãüÛÖKþ·TûÂæÊeï¯÷•b9ìm›:ÃÖ”ï’î»ëÚšÿÞ¾§w”ƒ<£ö÷ݬ8°æ)È‹®Ê¿–äK|æØ/eªŸª½L‡ªQõ'„€VˆÂ2Ò|‹Égn&«r^ŸÖ\3ciú£H"ZK<ý
-`=î_i3V
->øÔC!Ýüz¬2ÊYº
-NæM躻=@áൻ…ÙA¨Zóv=w¸v;‡ äÖÑÈ!U2´‚&™î*æ4ÛG†UŸc£ôHSùG–ª$8„<
-+c×F°é ði¾ìRâS±¶Ü?VýžÂšÒ0]×1íj(ëýj™o%ß5ÇRµ•gŸôøq©T%ø?ŽÐÆ!Õm[æb)ÛŽjÀóL8]4P®‘æv˜GG™¡ÿ>Fö»¡©BéÁ „ñ#kîË‚´kü
-Ý£Œª¹÷÷­ÍT¹ùIªY#°fȲGÏè¬//ô¥cDH±F3À—Á¯0ƉSÛʽò•‘×z"nôWÙê&Ök*1hz hv¡éw—­Ïê@ÊäW(; HK†t²Ækµñ#©Ê{òupÜë–½Ôfÿ ÊZýΌׂ‚ò9©ÕÿŒ%@\Ó8ké¹Uc…d‹Y™jl!EHD@Yåd(÷¢‰úÅk0<Ö>톳ŠY&U*…;)"¶‘f7è·”åÂ~Ū}­¦œP>nŽ¢s&HrP†–Dœ-{ø'J]_EñŸ¹nõúŠ¬ tüÞ‘…ˆÕÍNñ Lm«`ÏÔÞyz(·¬l†²D]±]\̬¡0©]¶’Ä=í嬘ï7cù±Pku¥~ÏÀíõÁ¨5àÞ²4ÓÕ¶>_#_.|{Ÿuв§=Ç™ÿQöê’æ×ãª6sþ˜:W~ôˆ¾áù/麴‚§ü1JÒ7ÔrÊJê,T:¿Ï°5áìqÆ[+ñþ<ý†Â¹ûhµÙ7tF¹³4P?ŸJØr»ÖÓ•?Ü›Œn`wð¬€Ûëæ„|U¹
-¨eÕ%Z0t§¸ šÿ°*œðKq ¨ÏÈ“upwŒW QYå’ôe«å>?0ðNþ»DÅ×”Äõœ†ªӲĸQ$µR–·GÁB)¥Ò$ñÇÒ Š”H{» •ü¦LG$þ:\¨Î†¯®Z[L¤¿y»ØÚ¯tl˜áôIx¯Q—(áºvw§YÄßS?5ÞE–YÚU#ÀÝhú9t“ ·Ÿ‚ÝŸY©ãæËÂòdòÓÕYÓNY¦ë+ÏÕyw+øóMQ^ø¶ÌHÖPbâ|ZÔdêÍ›˜‰áNxÀ_K>
-U4icâ «'Âì¹½EW²‘°S9ƒEHÑm9éŒ-ÍÉÀ–E?×ð_±°R&y¹{I Ê$m¹Ï&¤É ¢÷=øX¶ÍzlˆöVyéœ;e_Ȧ*ßÀ6«¹Š•ßž¦er Óû)I–Bj†é :¨lltã2¬å á“;c]±'IÄÉÒߥ]&³2ÌZÚ’…n§
-~´ê-
-bµ€üt#V™‚EjökBÃ2oþ6æ‡ò%‘Ú b‰úREUk ƒ›s)€o±Ÿ_;˜Ù®ÄE£
-ÖÛ$Ÿ?J s?iØoK·¦6hTˆuú°èA‰p RŽÐÎ[gN©‹KcHÓU´Ò5;v:NR^R”·ßö9àl`›º„ôçygŽMåÜS ‚rf~Lv¯ êŠ0²@¢K‰*¤‘6[µœÐ}+z'jj†@£:uŸ–_#8øM9*ÞÂhbuyÈ!s¤5m_O5éµ|½TO='mÈUI…˜8j5‡E_%|V¹#¡l|“å®+6ò8šÀžkMVOðÔîÌ3FÌsù|èÆzXë9#Iø:à“ž.½‹Ššî=„ÝaŠ ‡¼ c¥+Š~yµú~&±§ðÈù…(Î+õ€rå˜>ÒÛØJ†
-2’4sC&™#™÷[ætÒ(€C_03ýE*8åËkþ;6¨O‰¸ë\”vÖ–³±›‡g£Ö²ø…ÝZF„† ås–¢ì<3vB#]–ÀiÖy¶Ä˜à5?
+xÚ´·sX&Üúšm»7Û¶mÛ½Y“­É¶mLMœ4q2&»É¶5á4ßÞ¿ý}{Ÿóﹺêí¹ÝëY÷Z«(H”ÕDÌM’Ž® ,ŒÌ¼
+äp¹Z”Ì\?2?"˜™yà(
+ê"ê:Ê,LÖ
+t0q0ût5qusÿ…}|Í©þEssvþÓCáÿ\ÎÿióÔE?V¦oçãgâñ¿;fâàæâýÙü÷²Í\¬]\]þU°°¶þaïògϬþÂDe$%ÔÔä?„çÀ àø1FWO׿¢ÿÔ—ÿ"7€••Àü!R s1G{ûÖ.pÆ'ný1'WGg/¦ÿ•µ­ƒ£‡ƒÏÿ ¶°v0·ø3ws7'& ëOn@ñ@pc–@W
+* j ̦,q”—æ5ðO r(Ó¦Á´{[oK©™¼5WÞ1ñWðÇG’Ë×dÔÎVX
+¬ê"¥9’Í/Ò)gŸÉnOl'hŒ‹ñ|ï~ŠeýùŽzFª_Õ¾VéQ:ÇÒ‚ál‡æ¹„‚׉¿4Õ êúþ„cÒ'²L;k\†5& åÔÛ¢K—^¤®}Üã“ÑzU=B4¹a`wÿKËè×ȵÿ»d|ئû·œ«-­\ á«•p³Ž¯˜EÊŠÇæ¥áŸÌ`ìšuºCðËà º”²ö
+÷ckmæzá!œ£vÃÏ¥ÜÀhxÊ/ÿ2îO)üÅⓦMøP!¹ëoäùüUߥÖ
+ÇÍ%¯ó ö'Hq~˜~Óå§Rt¸„ÝüjÓéôú‰’Ïü]E§NQî—Bº ù×ù›BÚ| rh£¡¹I¿]‚·Ÿ]£(ŠM+̃ï(&™'öòïDÂuŽ `ù5ÄN¹Î&A‡ôÝ:(nYîê°bLçè° D†uãzÚÄÛJ{¬oÇï°ZƒŸ—äT–EyS¢fDܧ½2ëÜ,¿}]=›ø”ìÄQ“ÎÔÊ¢÷<¿LfǪžAÅ#-VÕe’XKØøâ‘Yõ5R íœÍ0]Ì+'inÙÏ°ù=-´‘5_$ø™MpZÊ·½o3eOšñ7âÀà›,…´&Šñ&÷”PgØêq扇ñqËŠ›ÛÏÇ®ô‹J±ê\ˆk›ä¤²&ŽÈóܬ´®µ§¿£¿÷€Ô3.?ö¿ŒÏ‡\¡>&
+­Í™/O³–>2fs ÚÜ–ùâOOä/iç0ó6s®Ä™gF…$i”¸s(¿‰ã7ï£ DÝð Éï󵻉5«ñ•tžhÑû,/ž'§‹À´á(uà+‹å=7íüå™ lHû;F·¯äANUgrmß à³ÿ&ê)C–míó¿š–’·$â8­Ì!½íxF¢ƒÿÎS.}U|þ\Ü´ƒùuÒ°§r?jŒŠº7»óKµÓÖ;ÀÍø¹£Ÿ2pE2ÙÔ–/ ‰ê²DÃéY
+y(7´Wu î[ýê|BŠÉƒë¬Ãµ‡“©¤ãýÁ[]”_™žWí—¯ ù.¶ð5=óxmb^NdPúz¸«'»#x}*¢"‡}4<RÓÞ}lqUnãÎ*ŽÑ…_ÍL½*êÈÝ0ÄÔ׌̨£ €ôš+÷dh« `Ú<‡!gò¥iÛ(oæDU¯«=Á{^öQ¼¬ìÚÑ5ÔѬØÛ”
+Uýd%MàZë`Øä~Y¼ ¶/¦€ È¡Ä ýºœá
+U0i¼J%!ñÀgèSäïíe–wI!Œ$ŠµË M-óTCáhhAqþ?”^}|žìPºzd)w÷Æ' YÀêÜx ŠÇÊt¿ezM[ËßâA-:Tå6–™ÏÚ¡‘5šCVûÂÚDK^çì¿\B#Ó³JM¬p"Tº¤_9J¡+ŸÉšP•†Í‚å*Ký£U(ž*¡&'!T©Ê› Â¥Ûz4Ö*¡ø›§õRÇvQ™J–`jÙLÝZú‰Û/ÊðóxÔ2iCEçéU„²ZŠ×2ÔøÎ/{JÑDâft·ô'kö7ÝÝýnD¼ê@müËQÛ8öâ–]`±z}¤›+“Û÷o=ã稜/ZèÊcÝ'„#h™v†[o1--· uYüÕâœL  Ê&–€ºíõS¡ZpðՌա·²ù°kÂŒ …â/âø2É5r°;,Ó² Û¸O{[ïSõáÚYëdøî`N—j¯)¯].¨¬\hÔ­$4]r T0œ¯+
+¡0Ý,Pt؀ݤZôx½ô0cv8®ty4—ßfú-T„±âÈШÜ/
+s{i‚´iùß’¹Š‹î@¿ŠÒ²ðI­zƒ¦CîéÎÉØè”<hî4)˜LÚ§]X pXF±âd¡gB-ÇÂ~‰ôÃÝøôU˜Ef×ѳÃf˜ð¶ûûc©õäÎ@7‚Ñ`_œC° ’ÝŒXƒ›ND®ÎÕ¥ßЃ,"%{•/…ÒÎO¢ï2% " JûÌYác¶¾¬*$nÙC(]·«ìx›‘VØ
+
+„Œ¤õ÷ïëâ]q$vzàîÊ’µòã‰Iûš_IƦ¢¨A÷ySw¡äçÖtÀŸñïÆÙ‡+ÆŒ¨‘Ðoö[)M$Ýe¦á¥/ú4kµùµº-ÀÜ|nÜGü
+Þ ód²c…´—ô+Ï=´òqÙR_}=W´zW¤ŠiƒyÈ‹¾ˆ
+SÎCCêPY¨ ëBõ\­­_S2›3䈷¨Ó¢ó(ÒE“†$C<.ò˜Öën9´û‘¨ãL¶ºK;¬Ç&«Ë+\—ûÅ’ì«ßFàür/¾Frº¥ƒ(Ä…×aZ$§´NåˆU“X`¿€ +‚·¨FJ÷=ÎÀª°}?î#³µAÕëWj°'É·RglM—ms”\£hµ…¾iÿªAyyËïãUîõƼÖ(sl¤z¯­¼ï?/ž~tn¡d`óPµBT‹»¹]÷ÛsQ|¤úe*µ^ØHùw¿æ:m WýKŒIÎáÑ9_þ6@`pHlx/ÂôHÜúË]='ŽÉ
+læäPü›æ™­ôÍ›˜<ˆÁ­a\hGzù•ïq^Èrj@ªûȨÂ(SËÐIWPíF \e‰­;ÝbfíÒaÑpFÆÃÆEõta yP´g*gý…cSM³¡`sJå-‰
+]¼&?¸jõ,‹Õât5«s8fLD¸&+:Š¥ß(hJ/»¾‡ÃÜOZlìSç›:©Ÿ˜ª^/ yz¾^H@Ø• Ë\´:’<É|"‰Œ¨Â x&Ç}*còFjÅ"U†µPˆfð±UΙ2‚…}}'lYÊ©&ÆX1ñ}5ÕT,­ËìIY9è†XÒn´_l`5ÉJø" P;b¹žÐ,h¶’f"Šþ ˆÌeï1ä—)¹ãÒÇ@ÑÈüF֟ΓÆÐ=bcë×2d¶k¯÷Ø {,-Æu¶¿$ápõV•ÏÖúø8?îµ>Hx,2UI7ÒÊ­}ìÄ·‡áU#o«þ)Œ^µ¶d‰|¤ÁÞ°d}}Ü?n"°Ç4ybö(Ä£4Qò×*¥¿9:RYf} ±±d©wF‚$­òEÈt¿Ýì³ú”õ
+Ä ÔçÒ=ÍFЮÛ2úm”á1úJš:æκ’µxËj÷»½„juÇóºè,—åxNšTó\PUɦ¤’ê}wûìE¹ST&zŒ’`oÙ£ID‡A`§ò5ÅX±ñª0ýXxÌlªÞ*JÞI넘mk·ãÕ¾º@óÒTÊÉ¢ä%¢´Ó™x?¹:•âÄmÄQ6Àÿ«øIö‰Ñ£úž
+(«XŠ~2ÏRCk7 øD•r móa ¡¯ýnäVþ7wº½ˆq¾ž›âø}áÜ(i[u‘-D§m¾Ëq›>|íª~å"Ž‘™÷ZÆä7("l:+‡$€T
+Û%N¬Ï½[t‘6U
+Ÿ¼¹}ߟ>ãçü
+Õn8@+(ï×Ôp¾¼qP!”Jöï>ê¶Uûãa7Ùí¼ZÝaw¬ž>+ e°7×::Ûl
+ìgEs¶ÃZ¸»¨p·y¬æt¯dºá;D+”‹ÎºgS¯Ë&‰B”áô¾”>=œÑ•[¯ùËë6Þ!oåóò@œä«v©¼ÊÄJ ]™¤ôba{=.è]€¬s¯ø,b¯ã6D
+¶j(÷Ù'1}º ‰í0Mg/¶>™9Ç>‹mßM1Ïz|R䬅À©²úà媎‘‚)ÏÉKž EÜɪê)®TP,ÉìÏ7—¾xµ}‡¯pbSÌrƒÈ´5_ÑÚ¤ÇðÕÌ®” ÀWµ³6/ŸmÝ–PœöÉá¨é8­F ïfˆÖ/ã¾åãž&ðSŠàÆñh²}뛕ñCóÁ3”bGà
+RRN'ã‹
+9ÒðFeÏàFÇí~Mo]\ð´{oBÕØý\ƭƪþ3•ïœpvJ±9p Ñ
+»­µ¬²æGѪ×e
+ö$÷矜oŽ<l„ý;å6E”‹! Û÷/¯eÜÇóÃ8ª3õæ³:‹`ÀU8¹ZByªwÖÒYÑç‹:³ÛMZ]üx4ŒoÂ1%xÎâFLê•f <½¬Ó ¯"ìúFd‰ˆ• H]ªD¾™
+„2§§QŸ—×ðXW¿¡t˜ärÞwE­>Oë“ä]#îÁYxÑÖ ê+N$/Û*ÃC¬>. l±ìé6¡¦Ë›òGÄð[8_ òC‰w¾»ˆÈ2$öÓÝ“Üšxþ@œoMµÎ1ðC5
+F7l™®!5¡}Gp°fpóæzº§ï0zyG1øÊ’Œú?¡UÇÄQ’Š'‡FˆÊ^I®ª6î½á2ÆÃc–̮MÓò¨´’~Ä›>è •ï8“OaÄHD»j»—¾éà“ã‹©Õ¹s„N«;C±æ3ÓÞ‡
+ô‘~*ÌSP¹‘…nÈMÈöw'¾††ilmG{ d !âwãwH ¤ë”"èÆÎ ÊõdþE²èQ‡hb%jš}ið­—„ÄáÂE+2lKR®a£_‚!úÄU2{seèÑø>š9l93’Ì»“7 ³²ŸðE,ŒëG4«\Má ® ÛC?ôÙî±Þ)m…*ùC_–%18I
+´ éìMeÕÝ#©s—y°VVõáµ×€hñeËsd\tx+‡Œ:á6gÇ"%¹ôSEeþä[«’`»ÕËO+HÕ`¿)°ND´Ž‰¶R¼Ÿëˆ¯pº»9DÙx±©_6–˜Sï\µZ"-ÔjºÏb’ò¦bz)ÚY'ƒo i;ïùõ°À‚ùº{zø¼Eñ'/-%D±Ç‚Û‘CŒ?ç”äÒàj9c¨ä½G=u²·õ¸¯Ë_ÇÊ? •vo1™üø4“åZŒBí¯9!îX$‡s}8”;=0!m욌ÿ¾²ÅÃv1ïô¯Of‹³BWNÔ%M@^i…qÙ‹àùÆ0”ËŠ<Ûh
+>çk©Æ˜Ž!)™’ˆïb«oF=
+)Xý¾¨j0w?QÚòˆª©«XNÂô¥,:ŒÂÙ0 …VàyÖ°¨cò¦GêŽ † ŒK zϹô³™á¥:-Çc°“~>ÌTƒ~êÿÌ4aû9É·ÏE‹æˆcHêxûC¶~KöìÖ×+¦…2g¬^BbX<Ú0Š’:
+Tö¦CX~ƒ¿jÝ;nÝžH5±t;ÅÄþ–c#sêŽfç[v$SNˆè¢[ÌBÕFÞYºz44ö®ÓU.*£¢ZÈⓜⰦſɡ§žÞ±*Páù”K6®„Sf‚ȵ€)µÁÒ”â¤þÚ1ÑË'2aW“eÑ¿g5¢Ü/Jh3(r'Ôœ†©2ÒŽZÙC/Ð^%R& (|­~÷`w# ?%ˆ^,¡6Ê;g z…7`C¹géTÑØ%p’cq×ߌ!öõXÀËÝ‚2¿íFßn…8¨ ópň­¹ ïƲÉ©ªˆÛÇñ“‹ÃRTÁ×
+ño©´»ÏýÑ–ëo…—iô¿x”Ö>^¯6ÑÕ~~¿/†Hy¤…›› Êè’§UmL¾˜Œ<ÒåÙL9ÿê„êµ€TاMT‹.=ý>E ‹ÒO†_0Ã7àQ;ÌT¯¹©r½2;½n© R–©8›îŽÖ>ÇL‹«XѨÎ
+¹qWŒcábX_É’Ê_wvƒûÕiŽ^ƈTkO^…­Ý~[†®ÇÖcª›—<zäZ’k º ò»½Ÿ˜”&à¾g(¨ÿ¶õ!›¬Â{…e¶$æSÂ7""¾sçËo2
+±ªgAï!•­Ýaa®†>ýIޛ̓(Ñgät„lªSv?µhé_2Zþ×›˜‡Ë=÷ÂCÊ5Kbû‡àÌT~(l-dz¹ù”¥H
+ˆŽ"]bž4+MGä
+Q
+x×b}Êßp9¤Ö뮉•ñOí<>«È©§Ž0Ôö…Fôsö߃9ùî G!Ç62Xðzæ·fk.×]c´Åcxj©‚$/ôq±±òÁ¦:¡CÕXíË@Ï»)TC*²òž»V㧅ªoaUÓùŠ<å}›à(«¡_c"F0“ÈKä€Ùò¢Qt“hÄ:5«‘ˇªN§/ô.X ©Šú›Ù6Ê_˜“”C:E¾ØÔnKMª¹ÆD5%V›—)ÁÚêàBRÀ !‡.˜>ãS.|™É x¨*I† 6ÜŽ¸–>…i,±Ä“½s‚xÒG”FbŸ9W&\8 K !<3•<IÓúâ‚ö< y»I[¡5øn€’*DîjI‘]siÒmä´ÛŽ°8C`ôR‘³QÜ4CÏ¡z€žþ‘ÀY`LšúªQ9ê«…«'‚ìJ=ÒÌ­% ÛçcòÓòÿãßFkÅØý‚ŒÍrlPÖ
+#'†€$XøŸÒgŽS›çùÍžÚÐp¹Ñá¯ØâÁÑö«¯b爿‹((… ›Ýý¦—ë抃¸Baf G¨:Œ# ÆeZ²tOj*kØCÆ3L]×Û€5IÒãŽÝ Ÿ’¡³ô,¢‰–îå E™uT ;ž7ˆâX¦”ëx4Žu™º‚ø+db±gá:HN)žNNë ²ë#Ã64Ìá¾%'ý\tÜq¾ ¨iæ%ý°\4@0ÏxèOÿzDç’ñY"¼:ë‡Õ¡É³¡~h£OÌÌŠ[zHhjLç/š¨1½~uLÉ…ÒØÕÔíu‘=æ ²Xoó/Rìr5­sµ"²(ï±*SÐ'eîXq lº›GþUT©^–bFíd3?9j˜0p`eÜíSŒ»7AA»ÅµX»•Ë"»»q6[Лtc÷3¿Ö±ýĸË΄ 1dk{7ûþM"¼f¯ð9…VQÐâ|•Mn0Ç\Qh
+Cyô³LkŽ®¼¿Y¾g»OUéƒiKÅr­QÊ;ÚT$Ø9vÞ¸fpCiŸI$s@ŽÏJûàÜK&í%š?=Ý{ˆ Û×÷y…ε47 à›ÓÊ^?o×âã&}ÑÜ÷ôšDÒãKìR·ì³J_(:Á—áþÆsÿà‰ò ¯=¼xÇmxn9 !Û«û( §à´7Iâ
+Ìœäo(àƒÝæQ%7\ñ7̬1U|HÒŸÒBø]:é¹>ƒvŽ›—€Ø›,ŒË2û{mÆNŽ
+'ƒ³7ß„¨Ù {«‘éÉ™×j@¶ÿ®ÀåÜÿ->Ñé’vbñƤUÇFŽ/Š>^Õÿ¹‰o»Ò]hµ³c®jÚrsCJº1»Ë}–†­»GŸÇù½IÀ·¡#ÃôÜœ+™ba¯µ,òýÄú©R#_
+µÔëŽÆ*?Oªc~¢B*ýçdb\Ž)ßÊ3%…p@é|g΢L¤‚¿gq&>ëÄœØI {šdºj¨üæÛ¸"²µÉ¼I />eÿ´û(Zb½çÆs Y¾Ö·}_åq߯’¸yURnàÛ·Þô¼ß¾É LU ±ÞìHÃVxþ”$¡Àc0) ]&l¯x\7Fô†„jb¹Þ à©þIwr0¢T„9ÿ±$QÏÄã6pü;yMX?S«b<tt¯¹,Ø€±õ qIt»‡I>-
+â°é<®¨}åéSÛ®h¾»60"ýÙî ÖdH(ˆ4QjÖcTCè\¥Y1#΀Ë5ÞÜt½—N!DÀà &b4<п[RMEK·­yÙ^ÄõKoW›N>£…“¹Ír#ˆs9k0hͼ¤™ñ|«ƒ×ŸU¬‹¦~¯pöv›è^ÍŸEߘ³ÐA^– 5»Õq&?‘áµÛK3Žž¶ÕùãJèë'àÒÐ5[Yžå©óUÖ‹{’3·§µ ò]Ö'©ñ Fq=°mï¾¢7^ŒQ­Uu½2/¢\°ˆLè!¹û‚åEüšbéN<eVæ«ÔZGÀhÛãšÎäW|pT%%l+Íš¤Â©åu$fá²Kßýi&Y¿Ô²™CE„#P¿_C{m‘Oü+¬·´}SŠXLN•FF'Ú#½Îco;•øæÒ(±S˃ÃÂíKX¢¯«É‡´,²Î¿ñ…3Hã…<;Æs{†¼±À¢««®æ\_á¸âh@_¯«³mz ÊÇzöj¤“Žƒé‹.¬”HÒäkd]EȬ#Výy3$éñï5‚úÖ:ÌÓ?wðœ«iû]“~¯‘AC¶?šv—´å—^ý&*«C5àüœ0(픣ç/V4oÍиû(9yˆ‹:ô$ûúb‚-uì[fˆ=‘ ±³?½·›/¶UþC÷[à•ÈœƒSÛï÷ß8ë)ÁR§ÄD§£çsxa½Š4Ç9k~_ iЯÃÇ‹¬
+|xëÙÁzÈöXŽ©€®£T>c”w)îê¹f”ï ³x¡ûâé5ñKýÎí÷-ÈcˆWH¿¢å­¿&|F7ÒÐcM=Øy5~
+Öœ{HwéܹtMé¡ÒdôDZz”¾H  6ëñBym*;'åØKìjWx 8CÂT}kNŠNͨ֜ j¤>Að}R„¢wy ¸Ÿz€7¸ŽÇ5ÍÏO 7KÖYÍ¢³´ÜÌÅ+ÐdzæŒ'BÏá¯Å¿'ðð$
+6ÂîÏ¿U˜kꜿ>v5mh´‘¾BæHk?ùzM…$}Ù©äÏ»>k]À
+žáíêÛVªàØ "âç²Õÿ2Sj0'á`í`K *ÜWòþžlb1*KA–’m…`,W~U¿n;Ÿ–œýjÅ4p«Åè{z°'âÝOÍkÇ%W,·Ò4jnì…AÿEÏâpï&Î;_âH~³xÕó°ëÐö!ÛMKù'Öç½àPØqFSE—ø¢Tïûä½ËRÕßÛ*Ò\0íXiÛN-šsŽ?HÈåK#*Ý8´qñ»Ï~mI¼k`kiaÏU/<æ¬äÅãì›Ê»ÿ¬öJ|»Ág<Ó˜,‰nJ~#y.ÿìkBjÕ¢‹pd«5Ø –C<½wjýù‹ 'j)„Ø硉"·Ú :ú}hVOÌ µ§þO*¥òM÷rôˆÙ%W4 µ諦Ëçµ".í2¾jéÚ;ÌRDÁ¶
+1%˜SéߦDðzhKîEü2ó(T%*é{Ø8ó´F_þN+E¤8 FüCžñ­©Q|Uv‚oí_®dV|ÇåÅᮥ“Ó`ê†^ôPCWrÔÈCwLQ"Hp„v`¼ªLS©9ð@Û*YÖ*æv,÷ %ëk§KúZÓЬ0Eè“@ª@§
+*UG}€DþçKFèUYŠBêe¹G|Ñ‹×wÏ`¢æ-0fõOS‡@¨…g™¡9p·kÓv'‰3‚³Î¡/‚Æ0ô{èΕWNô~â^F¡‘¯ÁÄêŒK¡F†Y“ݺÀÖ9ÓÙü…ör*ïÊMQ ºÞ úXhȼ.6Ë •.\7"¥ú‹$ Ë$}ÑB§y»uç渺/ˆöÙ[–M!-w¤gbõËz®Y2Hõµh^wÁ«â¢q
+S†iÏÂU!~¥¦äµ-hzfQ±ÄîõŒÈ?ýY­†½QÂìƘ™Ýy1¬]nª„ùa­­A²ŠçÒ1à´eˆo¸.kñ>1(C³Úu”YijÑÕ©U,r‡âÚ[­d¬9ÊyF x{3@Ö *hþ°QqìWšó²IduG…AÜV"úâ «¯ûsv:¢`?(˜²6$˜±[Yf‹¬Ûm„ù¡šÊ“ lVRvÆ‹þê­˜U‡OAĪ۶ŒâŠDë°œBÊù„á ÕßìÖQÀ¯¨B—ó©òÔiÆÛÖ昣UE¾ŸXï3ʧ¥5!Á+ºT°sö]XOyŒZmãDz–p:¹%‡9oC—=·å‰°nwìÙÝ+ ~‰8lº]ÛWÑ85ÁYH±áˆÈäR’ ·sÂv~¾ì²Ãá“Å ·DßKyꙃֿMp³8ʳƅrÊê··P$ŽÊÃe§e)%OQ3Öê 60L+ÙÆÔxõ
+ú¶óŒ:TÃuÍŒ ¥v~^¨ÖÐÈù+Cè]qºqÄXVÂÏÒ=j€’ðih3¨üD¦>Uøž‰R?*‚ rßçü8 <2Ù<­)Kë™Ê| Å󜨻³K÷<ï-µ[”ÏI I³0Ÿ+9zøÌíâ|²:rċ혂`Áí„Å–b3Vn,XU«œ•÷¨oú³ô:ˆ&¶Ç/‚F•¡Çú®gò¬U\’½éè2ÏÛ*ý´mNæZVCê_Î)aNªS;±ø “©[áX ƒùù{Î]ØÕ‚Ã×ÃiR¡ìáM²*
+Œpñ©v;³`t_÷ó;U_xµ÷Uª&øç&/íôRH¦îÊ3'@ Þw‡ ¤Gà‰on#¿ܶ—Ì/5m )wm›["> µ‚äLîÓco‚ŽX°*×ï¹ [ݸ”y&¿mßT¡JèkóuËÇ,gQ Ñ4peçw+Bhìmö¾qeßDŒ–vËÀçH8ÉsT…+PÏ0)3
+M©t~Ü@ÍÆëð-Mo—
+S C€Ñ›¦Û¼}î%Z• bòv©ÁÙ˜QFFtöò4S—O6ðW=
+qüdÊÄw†[aÿ64jRé”Õ$+׿Ð.§0¿i
+¯·¼O,;r5'Ó]Å yG®B)5Eó2á÷à'± §HŸýÇ⌴:¼®àÍ_¬r#¥žjŠ6]VÔ¼`L¬(J¡õ_ y9‘¢ÓH± @Q?^ (gê- ¼RXB8iÅΊ-öÝ•+3ŸõôQa¬ªŸGþ×SýÒlƒüPa[ ÓÊ~²Ò}Û\‘‰nbŸˆµF‡1QE,ÂîsãkL HUMÆ .Sù'ƒÜTê©ÿ•Çû„žây…Ã)3Oß•Î#Qž‘¸s'w$Pp‡ñø9²¥Ù
+7õ<¨Õüh
+„X%†æ认?ÕEtde
+Œ1W~ÏÅy>±ÄUɉ­NÞ·/Xà)‘ÖåÈŒÉ$ËêW2Æ›«‡î"ÕGÖæ¨Õ”b×Y
+•
+´‚!àÏy…6ñÔÙ¶\®G»1Ç‚×øÕ•TüÍ?wOM+kj¾é'„ņÐ*ÞÔÚì¤6¹Êúš³K½Ù˜>]D÷K‰å…þSÿËfE¾$Ð*ÿV±n.éÛÇz Àºà<´2_ÿºÂàø¬«Æõu˵ŽâéåÆ·iÚÞòDpĦߦ_JªzŽýX8†rç{¯Ï½½H¯ç‘@ë3Ôm”W‘™ª)cž¬¹p%Õ[ÐTàXÓé@â;!ys³°ÄW4¯RAÅ­¡8uì¡ þ­ˆ»Y@`É *“,R„¯ð ³+…p[ÿ¼Gç¿C„ÅLLÃЕN.Ñù+Ëà¬=½OZ{ÛÚC³Š8L-¿Y+
+3.ÆÎ?rÂWFèã ¸gUOÄ«ß<¾áÿ%”ŠÈà¿HK
+p%ÁUgTw¨Cöx«Hv‡¿Bߎµøw3¥#«H)ïXÖ-öÄÍVXØÞåXÕn/Pè`hLˆu÷5ÜŸ1lêöºˆ>Ö× ƒV…Þë:‡PaÜ趕:·¿zŠ”ŠL»r‹Ï]‚M›¸HF×VQ$B†¡YY›_†ñ6²QZÏMS…ºE¼|–›%±€¿© [V R·qÞ¬š‹Xf¯yÊûëû su¦ž®cÉ G)´Ù#òÚ°gÝÒG£Vï Þë[w˜Ð*zj…Fe2¯qÛÚgʾie*zHÍbÊŒ31O¬®
+‹Æ˜ŽÃJÌmJâ>1‚ÔÙL^ú%Ù3èõƒ@£×:#dfå^w/Y‚çŒÊÜýlœÎ—¶“‡oëClj^±˜rð‰øAz÷™[4Oß3´7eØ_e­0ä0ܧ¯éx¦À7s+Õ—(Y¶uZ£)(§Yé‘ÅP³[áv•z”iŽ”
+Y/û-ñg#B¹ŒŒ;‰åyò±qŸºq’bEká#+tP'²Ðú–óŽ_;‘eoÎêTf“K{$ªÐq×€ž‡,‡Ñ?Ó (D”An=ñ×üÕ$E–âgÚOïƒõ‹F¢+ÅO{¦–1(ÓL~,¢ó‹gô ÷ÀIõsÙ2òÑ^ïŒ%ùk–`à‡þ¾ëþI u ¡ QÚ¡y»kKæ¦h…âq¶Žâ\LÙ"+›qLvW¯
+g–ëZÏÙ­îJ ÌKÜ«$2RéÄv6hW=0°ÿ´>•3D/Ôl<<pýêŠâÚ3ç™s
+Âm¶z¦\î,`rµ1•ÏÙº<Ö[O)9¨lf/ ¤7ÖYãó¾;RÁwaµ)чE ·Àuª—•Ð€ßŠx–ŸóÀ…bÞ@ºï3Üt  ‘*^ÑtM•âV|±Âïúd²ì­‰‰âúy,Ó-jìh§6[fy}áê-ÕëÌTƒ×õ# †·´ÖìÍÛ^‹ŸH–½P|"-‰,§{ºîÈÂÖÀöŽ‘©ºrsï²C”ú\vÌ ÉÛƒ¶õIÀjÛõÅõž=ü}LO¯UáQßï‹GçïäÛÕ<éþ°-Ra[“ÿ×’Œm$´`N¬Év3þd’æ_wç|G¨e77Ÿ®·ù¾ºJ–0í
+¾y;ï9§“Úô.ôÁÙ‹¤*©`²®9÷º¥©´a×皧·
+ï:D>©3FYû»šðÚ¨¾¸äÛŒ'ê®Zë“Brtkþ Rpçw>4òJÑ”©é6º¿·‚SæøúzÈÝM§»’î„ù5kÁ†¸*(X7æ)†øYÿ± Ä•ê_ºSva‰3]ìêKÖo ¼bà°
+“üøqcœ>è+ÌŒ%JFm96Û÷ÖàÀCÍm‘ŒŒg2•ôÊÁ#Q39­[ÙîcËX[Ô'§FáWIí7úENÌE÷v<mq¾¶ÌR‚¶Ó+Ï¥t]`k¾t-ÍÆ—¾”¤IÅëˆW€p=Ïѿ޼á!Ì’ ``ÛcÑ/îå™6¸çìµ²ºÉ¶ûÀvÃj"øÚ"s…á„ikVv+“(—1æ[çžèQ ½b¹ñæcçS'PÏ8³¾iÑœ¸8åŤü
+…EfÉ»éÄÔžqn‚°âDÈÃ©× ’ÁóÆu2"…ÏEš{è%š Ÿ³;ª`¶ã
+×»\÷ñ½Ì~)ÓΓGáèçUÖ+ô_•30^¥i½‹ýC£hë·†.x*Ô— x"×{,5Þ›X1A]Ô{¶_ßÝÒ‹;:Ò{°Ã9L…J–QâA5Šed•8œã•õÎÿ?$‰tef
+%‰6¶‰ö GlPNøDÁ¬M¢ùׇÀ¨h‚nójR ¶òñi"WFTADÎö´¾|ˆôÂü¶ÓÑÂôKœ
+r0x€·€‘*Pçõj'oèhÝD—s½s ¹Æ†Šõ0+#ôžWÏƨ¿ð3ç¡Û2ñW]ŠR¤¡až=r‘%Þ¿´âC/¶‚íV+žå’)}É•ˆvlwž”ò³v ª‘f,å/­<T9 ØHåÄ~4á/üÂéÙ-7w·‘©›¨9d<*i] Ž˜æYëzWº5O¥ÅùÑüp ‰ýþÒi;8“e•Ã$ï_TŸÚÍŵÔÅÖ4¡e®Ê*¿ðÎæ€Ý —Ànò9T›’Š];`ñg®à›yˆÜ`HN l°‘œ[¾‘&€¸[ÄÉ´[Õ4sH—>wb ¨'ii 3Ä×1å<õuN£”7çŠ<
+{Lßµ”ëíu!unàeׇ»Æ‘ÕÚ§¡µëB¡Öª‘Mké±ö§OEùaµ¾×³á…pŠ
+ˆ+^ÿ,µs¸v°Ðd“û|¦;UxÙ¬ ©ÑÊáú­  +eŠ£jªbQwJJƒvl6GQTÊÍ% ßà©äJ[•¥óÆc¡[Ö牳!™í"\Lu%ð õ¬Tl¡"ëhçʵ" §a݇ÀïÿY6Ö\ìwÉÀËÜ}pœ"ÜböødÝÉBLäf;pøe4äÎ×›^R~¨7,Ì3þtuÕË[y>µ‹KR˜‹ý­%±*‹ôÁ2`2‹Bd·±¸g6Xš™’–B<±æ»rŽ² ûZ ók$Ÿ_R†Ó
+_ Ed£óbBýG!Ю2ÌM`î/ú‚6Ð,Ä£d›² ô5À&*<N÷TxÍ®aëÛ³ “íGÍ)0Ót5*=«êJžø8'Sܼ¶ße£LåAÿ°ÆÞ éüõS÷tiìJLÖ5+…4ÄwcRôá_àôÐ{ºÖÄ6*Ÿ¾-Õ@¢;Ýà²eò¹æ£â ˜žk'3ñ–[>’¾º¬¸ÁÙ“O ©/UF’¾IÄï—Pà,;®šïTÈq˜aqt×QLšdºâ‚9Úw2µ•£Zé§ÞË¢C
+©˜ æ«rÙj9ÕÉŒn7g;A2›åÜòGºÝ÷Gøn<É_$[n„5’¡etß*ÞéeýÎn^å]TËÑU
+±ÔòýˆI¦¾7Ò¢þ¡D0Ïá&ß!NáÂâŽwƒ'§[^­Ä€ð‘ƒ(FÂÞÎ÷
+eZý›ŽR½G³¬kÛfq+^ãZ´¬øƒ” 5`"‘Ôã­;£5ñ¾ÂŸ#Hc*¾ {|œ¸=£§t2ó_ãÌ4°)F4±zõ“ib˜Yî×fnæß`{ªä: 6µÿ˜t·dßý²{-À\ÉþšÑm«¨r ó8]¬wMýŸIkzýÍ&^s Xþ:
+u|<ˆ=à/ïlAPe¤ðÂKXs²KÔ‡ÂKëò¢Ëá!/þm­¥LÁÎôÕ© 8„Ä’X=¡œ»¥ ÷T,ÜáË2[3eKÜŒC¬"²ä¸á ×ê¤ëÑ5¨ò¤<]1äüv¢¾¥=¯^²ÁßíŒ9í»’sC¬hÛ;_à¿A»«j€Fž–·O„:µï‚Ï\ŽZòX3Á¢ä¡9 ÈßG^dÍ–§-Ø"Ÿ"±ªÃ,‡J,*V¨¢çhÎÀ¦›ŒÇ nØUÏ_¿Cá Æ™¤È)–†1‰ú‹Oü¼Nf¼èO}ž?‚™U¯Ö=/Üû½ú;^Óç·ÈóD!Ÿâ«êP‡{vzê¦Àì+"}º=Ýϧ¢gŽ¬ñ PÛ\iâ ´¶x>q?P-T îвKDøÏ{)¬zOk{ûÒ@„mѲÃÜ›µ$ò°„eô^ÙæÛ¶n,]Íü
+¦‰¬‡‚µÌætGš®Uwzn ÏÝÜ&âç“ñ´.';gƒ9l—$wG…î
+@x÷vàûãâ©-GŸnúÛZˆƒ›}«À·RœŸ) …½]VE‡â—¡ß‘I  ˜)³†?*ÿ·MÚ¹²9i´„‹À(+e 4ì)™?rzÂXj.¯¤Æ=öös¸9IƒNàíéÔ Ÿÿ+°×3AH£L.IA­` ^#¶ÄF+Ö˜d„IUaš%õ@ÉÃë
endstream
endobj
-668 0 obj
+917 0 obj
<<
/Type /FontDescriptor
-/FontName /LFOUYT+LMMono9-Regular
+/FontName /EIIEGG+LMMono9-Regular
/Flags 4
/FontBBox [-451 -318 734 1016]
/Ascent 600
@@ -6239,47 +7713,80 @@ endobj
/ItalicAngle 0
/StemV 74
/XHeight 431
-/CharSet (/a/b/backslash/bar/braceleft/braceright/d/e/f/g/h/hyphen/i/l/m/n/o/one/p/parenleft/parenright/period/r/s/six/slash/t/three/two/u/v/x/y/zero)
-/FontFile 667 0 R
+/CharSet (/D/F/I/a/b/backslash/braceleft/braceright/bracketleft/bracketright/c/comma/d/e/f/five/g/h/hyphen/i/l/m/n/o/one/p/parenleft/parenright/r/s/slash/t/three/two/u/underscore/v/y/zero)
+/FontFile 916 0 R
>>
endobj
-575 0 obj
+918 0 obj
+<<
+/Length1 875
+/Length2 1458
+/Length3 0
+/Length 2079
+/Filter /FlateDecode
+>>
+stream
+xÚ}R{<Të–¤ÝS¤ðQ2%cÖÌ·Œ”k¤ÜI,3kÆÊÌ,ͬƒ•ŸìØ.;‡ìJnI¡¹¤‹&JÙ[åVím+ì-å%ö©ýÛó;¿õÇ·Þ÷}¾çyÞ÷{õt\Ü ·³±
+8€þ1›g‹ƒ¿Ô$ˆPD(ò¬:´ ÚlLÀ“6Â!YcÁR!Ê ÄÙ|AcÀGp˜C–X(AD @
+œgR\@fmš6È
+PpJG`ŽÅÚðòáMõƒÍ…aÌÐ8</ìÓ’È:jrö²v)ݧíPeÛH÷X’V_&5±o8æVO¿î‚Iõ÷#­áZã÷äÖÚýq)}º¹Ùˆ‚æ —œñ©—1ÁŠÈSŸŽÎâÚ¥¶ÌÛ(Ò¹fâ AÞü4mo­Gèi¦ê¿” ÎÐÈOv±8vÁåÃ×o>LÝx¦¢ØSõŠ9V˜I×°‡Ht“T¸ŸnŸÕ<*y¿BqOêBÔÞH¤ˆ2¼$”ÉŸœ•©×l³e %~qLË×=o}‚íÀ©eÕ«>=ðº–>&·¯Z'¸ížË4n†ô¢)îçrµ³ŽŸ´±ª}}ÂV6=ÌføþníÇÕ‡íNÎ]úPqŠ9ßó¸™ç˱ü§š³¼Ã몔ù¯¥^ŸøG# â\KÅÉGŸe,ˈۯ¨—±9ô
+קÁÊ[åÂÏ ‰$ÚMzó÷ÏÿÓ«1>!el/tÞqyʳrý*Žã¦÷‰*¿Fe+¤Ô?È?1ákë½ØrŸö£ÄŽ"RKx1M›55Z×eUT­—®oe3eBŽzøë…b”Qß’þ\hÙ+OÓ˜Œjºåãô€½Þp¿µË#,È&ùÒZ³týU÷:åcóÕÚÙJetÛ–1M›˜4—LZÇÆ©qÈñUÆT—NoGtî¨Gx¿ðIFæ‘Å×Ú"7<ÕØžœ]òZž¿´úi(,jvq•Kd¶õwõSÊ xˆK¬¬¨¢q..7;å2)ÙË䘄%–غ×û™‹G¢“sê6»F5n)Ü­56Ý Q©UôiXÆÝåÖ•¯Û•÷Ó÷ÎyÖA5…¯ûžpGŸäE4];ZvÂXPÚýÓº
+Z:w:çÊ‚ìTìË«zå—Çëè›/\|6´²ky¤S•ŒÓk¶GQæw¸©0¦Ÿg ØàP8™¿9ÞaùQ=šúš ÇšC‡Ft¯3ØÅ’÷MýHÊ‹<Ú°<Û8á3ãù»‘·F‰p÷ù¬Aédè¹ÅÿÔQù$®ìò=ïi©åQJù%ï£0#¼x׳àgÖOQ{:W,Ye”¾H†zdn;þ'¤1óÎ
+endstream
+endobj
+919 0 obj
+<<
+/Type /FontDescriptor
+/FontName /BJKGRW+stmary10
+/Flags 4
+/FontBBox [-123 -2958 1055 803]
+/Ascent 100
+/CapHeight 750
+/Descent -1160
+/ItalicAngle 0
+/StemV 25
+/XHeight 431
+/CharSet (/curlywedgeuparrow/ssearrow)
+/FontFile 918 0 R
+>>
+endobj
+827 0 obj
<<
/Type /Encoding
-/Differences [21/endash 27/ff/fi/fl/ffi 33/exclam 36/dollar/percent 39/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P 82/R/S/T/U/V/W/X/Y 91/bracketleft/backslash/bracketright/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright 159/section 252/udieresis]
+/Differences [21/endash 27/ff/fi/fl/ffi 33/exclam 35/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P 82/R/S/T/U/V/W/X/Y 91/bracketleft/backslash/bracketright/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright 159/section 252/udieresis]
>>
endobj
-589 0 obj
+844 0 obj
<<
/Type /Encoding
-/Differences [0/parenleftbig/parenrightbig 12/vextendsingle 18/parenleftbigg/parenrightbigg/bracketleftbigg/bracketrightbigg 32/parenleftBigg/parenrightBigg 112/radicalbig]
+/Differences [0/parenleftbig/parenrightbig/bracketleftbig/bracketrightbig 12/vextendsingle 14/slashbig 18/parenleftbigg/parenrightbigg/bracketleftbigg/bracketrightbigg 28/angbracketleftbigg/angbracketrightbigg/slashbigg 32/parenleftBigg/parenrightBigg 112/radicalbig]
>>
endobj
-577 0 obj
+831 0 obj
<<
/Type /Encoding
-/Differences [11/alpha/beta 14/delta 17/eta/theta 21/lambda/mu 25/pi/rho/sigma 30/phi 32/psi 34/epsilon 58/period/comma 61/slash 64/partialdiff/A 68/D/E/F/G/H 76/L 78/N 80/P 83/S/T/U/V 97/a/b/c/d 102/f 104/h/i/j/k/l/m/n 113/q/r 116/t/u/v/w/x/y/z 126/vector]
+/Differences [11/alpha/beta 14/delta 17/eta/theta 25/pi/rho 30/phi 32/psi 34/epsilon 58/period/comma 61/slash 64/partialdiff/A/B 68/D/E/F 75/K/L 78/N 80/P 83/S/T/U/V 88/X/Y 97/a/b/c/d 102/f 104/h/i/j/k/l/m/n 113/q/r/s/t/u/v/w/x/y/z 126/vector]
>>
endobj
-583 0 obj
+836 0 obj
<<
/Type /Encoding
-/Differences [0/minus/periodcentered 3/asteriskmath 41/arrowdblright 48/prime/infinity 76/L 106/bar 114/nabla]
+/Differences [0/minus/periodcentered 3/asteriskmath 6/plusminus 10/circlemultiply 35/arrowdown 38/arrowsoutheast 41/arrowdblright 46/arrowsouthwest 48/prime/infinity 76/L 106/bar/bardbl 114/nabla]
>>
endobj
-585 0 obj
+839 0 obj
<<
/Type /Encoding
-/Differences [0/Gamma/Delta/Theta 8/Phi 40/parenleft/parenright 43/plus 48/zero/one/two/three/four 54/six 61/equal 95/dotaccent 99/c/d 105/i 108/l 110/n/o 113/q 115/s 117/u 120/x]
+/Differences [0/Gamma/Delta/Theta 8/Phi 40/parenleft/parenright 43/plus 48/zero/one/two/three/four/five/six/seven 61/equal 68/D 91/bracketleft 93/bracketright 95/dotaccent 99/c/d 105/i 108/l 110/n/o 113/q 115/s 117/u 120/x/y/z 127/dieresis]
>>
endobj
-581 0 obj
+842 0 obj
<<
/Type /Encoding
/Differences [136/bullet]
>>
endobj
-669 0 obj
+920 0 obj
<<
/Length 844
/Filter /FlateDecode
@@ -6293,20 +7800,20 @@ imXYÓ·î|Ú4nØt¯.˜k½Póº^®k?íIÙîFîÒsuíBå‹`nlB
ÆÐœ•ŒáQV1¦ú4¿‰ñLd5cèÌYŒ¾9ëÁÏY?=C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠ{œ³ÎˆrYgD¹¬ÓÐkÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|ÆsiÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)Ä<‡…øO5ù]±T“ß“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñáx?ä›ë0øóŸ¾.tªã<ßwîýtêOÈ¢‹¾\ã׫Ç:ø ärØ
endstream
endobj
-214 0 obj
+303 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /JFISNR+LMRoman10-Bold
-/FontDescriptor 616 0 R
-/FirstChar 27
-/LastChar 121
-/Widths 603 0 R
-/Encoding 575 0 R
-/ToUnicode 669 0 R
+/BaseFont /KKYZJG+LMRoman10-Bold
+/FontDescriptor 867 0 R
+/FirstChar 21
+/LastChar 122
+/Widths 859 0 R
+/Encoding 827 0 R
+/ToUnicode 920 0 R
>>
endobj
-670 0 obj
+921 0 obj
<<
/Length 844
/Filter /FlateDecode
@@ -6317,44 +7824,20 @@ QÕ+ØKŠ62 5ÿ¾ûfÆIå`x;ûfæͳ½¾ùö´žØ¶ßºIt¯Õ³;÷סq“òûæÜÜT}s=ºîòùֵãîùA= }³vu[®ªU
8alSÎM3Ž?çÜØr>ê‚û§äx\±“¨i"ÎEÜ°†‚pJMö³kl4\?‚Ãõ“ÖåÇšîcõ±¦:Ëø#§þ?^ïÂYHwšupÍó¤r¯áQF^o­Ç†1¼ÎBÆЖEŒQ?›1^“׆¼ÈƨŸ¥Œ‰“ñüЉÔ—¼03ø’Œ¡9+ã¬bLõi~ã™ÈjÆЙ³þ}sÖƒŸ³~z†rÖCOÎúÊeý fÏYJ|ÖŸŸu¦Ðœ³Î÷8gå²ÎˆrY§¡×†}¶˜ÅŠÏ˜ÑŠÏ1°øLñ½¬øŒçÒŠÏèkÅgøiÅgâˆÏ˜ÝŠÏÐoÅgè´â3f·â3|³â3ÕŸ¡ßŠÏÐYˆÏè[ˆÏàâ3ø…ø =…øL¹â3f/Ägâ‹ÏÄÏød ,' f)ÄÌRˆÿx ñŸjò»b©&¿'ÕÿÁ©¸W *ŽÇ.M²G˜÷ªZN(:‘pãÃñ~È7×aðç?}]èTÇy¾ïÜûèÔŸE}¹Æ¯%Vuð'eØ%
endstream
endobj
-213 0 obj
+356 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /POEXVF+LMRoman12-Bold
-/FontDescriptor 618 0 R
+/BaseFont /LQAAZY+LMRoman12-Bold
+/FontDescriptor 869 0 R
/FirstChar 27
-/LastChar 121
-/Widths 604 0 R
-/Encoding 575 0 R
-/ToUnicode 670 0 R
->>
-endobj
-671 0 obj
-<<
-/Length 843
-/Filter /FlateDecode
+/LastChar 122
+/Widths 851 0 R
+/Encoding 827 0 R
+/ToUnicode 921 0 R
>>
-stream
-xÚmUMo›@½ó+¶‡HÉÁñ.˜¯È²´€‘|hÅQÕ« ëÔ’ ¶¥æßwßÌ4U ·³ofÞ<`¹ùö´žØ¶ßºIt¯Õ³;÷סq“òûæÜÜT}s=ºîòùֵãîùA= }³vu[®ªU·¿Üyòªk×Ö¬¯I…{ÝwôQ·/î×Ä5“Ãqû'÷w` òËþrð¤/÷•ªÏAEI?ÝpÞ÷݃2÷ZkXvmÙ1Æ9˜Š5Åíö];ˆµ…ºÀ„ªÝ7Yѽ9z?¼~;_ÜqÕíú`>WÓg¿y¾ o¤ñ.˜>­öÝ«ºý,Ío­¯§ÓÁA†ÒÁb¡Z·óýü?6G§¦_ÎøÎyy;9ÒÚ°®¦oÝù´iÜ°é^]0×z¡æu½\×þ·g$e»¹KÏÕµ¿…:ÊÁÜ Ù„0%1 " 0Z{ì™ÇqÍÌ0Rª¬0r0ò“‚Q¢KÅ5<æ§T`,if,Á¨Á¨™á1†§ÈgãTÍïÍ øÖHÓ†p1ÆX:,àˆp…õŒ8}uÌñ
-8alSÎM3Ž?çÜØr>ê‚û§äx\±“¨i"ÎEÜ°†‚pJMö³kl4\?‚Ãõ“ÖåÇšžcõ±¦:Ëø#§þ/„wá,¤'Í: ¸‰fŒyRyÖð(#¯·ÖcÃ^g!chË"ƨŸÍ/ÉkC^d cÔÏRÆÄÉx~hÈÄ êK^˜|É
-ÆÐœ•ŒáQV1¦ú4¿‰ñNd5cèÌYŒ¾9ëÁÏY?½C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠgœ³ÎˆrYgD¹¬ÓÐgÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|Æ{iÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)ļ‡…øO5ù[±T“¿“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñÛx?ã›ë0øãŸþ-tªã<ßwîý÷sêOÈ¢‹þ[ã«Ç:ø $×S
-endstream
endobj
-208 0 obj
-<<
-/Type /Font
-/Subtype /Type1
-/BaseFont /WCAPHI+LMRoman9-Bold
-/FontDescriptor 620 0 R
-/FirstChar 65
-/LastChar 116
-/Widths 608 0 R
-/Encoding 575 0 R
-/ToUnicode 671 0 R
->>
-endobj
-672 0 obj
+922 0 obj
<<
/Length 845
/Filter /FlateDecode
@@ -6364,20 +7847,20 @@ xÚuUMo›@½ó+¶‡HÉÁñ.˜¯È²´€‘rhÅQÕ«ëÉ Û‡üûî›’6jØo‡73o°{õíq3³íðâfÑ­VOî4\ÆÆÍÊï
8alSÎM3Ž?çÜØr>ê‚û§äx\±“¨i"ÎEÜ°†‚pJMö³kl4\?‚Ãõ“ÖåÇšžcõ±¦:ë¿ø§þ7^ïÂEHOšupÍó¤ò¬áQF^o­Ç†1¼ÎBÆЖEŒQ?[0^“׆¼ÈƨŸ¥Œ‰“ñüЉÔ—¼0 ø’Œ¡9+ã¬bLõi~ãÈjÆЙ³þ}sÖƒŸ³~z‡rÖCOÎúÊeý fÏYJ|ÖŸŸu¦Ðœ³ÎÏ8gå²ÎˆrY§¡Ï†}¶˜ÅŠÏ˜ÑŠÏ1°øLñ½¬øŒ÷ÒŠÏèkÅgøiÅgâˆÏ˜ÝŠÏÐoÅgè´â3f·â3|³â3ÕŸ¡ßŠÏÐYˆÏè[ˆÏàâ3ø…ø =…øL¹â3f/Ägâ‹ÏÄÏxg ,; f)ÄÌRˆÿx ñŸjò·b©&'ÕÿÁ©¸W *ŽÇ.lMr0ß«jÙ¡hGÂFŒ£ã}—o.ãè
endstream
endobj
-282 0 obj
+492 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /HFYFJK+LMRomanCaps10-Regular
-/FontDescriptor 622 0 R
-/FirstChar 67
+/BaseFont /UZPDGI+LMRomanCaps10-Regular
+/FontDescriptor 871 0 R
+/FirstChar 72
/LastChar 252
-/Widths 595 0 R
-/Encoding 575 0 R
-/ToUnicode 672 0 R
+/Widths 834 0 R
+/Encoding 827 0 R
+/ToUnicode 922 0 R
>>
endobj
-673 0 obj
+923 0 obj
<<
/Length 841
/Filter /FlateDecode
@@ -6387,20 +7870,20 @@ xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
N)ˆ$‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Û¯nÝjõäNÃelܬü¹=WWÕÐ\®?ß;׺vÚ=Ý©ÇqhžÝY]—›jÓwçOÞôÍþÒº‰õ=©po]ÿIAuýâ~Ï\3ÛF£ýXƒüÒ÷žôí¾òAõ5¨(é—OÝÐß)s«µöuß–Ãcœ‚¹HQóIÜ®ëÛQô¨W¨ L¨Ú®9ËŠîÍÁûäç÷ÓÙ6ýn–K5ò›§óøNo‚ùÃغ±ëßÔõWi~ëùr<îd(¬Vªu;_ÑÏ¿=85ÿvÆÎËûÑ©Ö†u5CëNÇmãÆmÿæ‚¥Ö+µ¬ëUàúö¿=#)¯»‰»ö\]û[¨£|, ’MHS"#p òÐ
endstream
endobj
-215 0 obj
+305 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /ZDORWX+LMRoman10-Regular
-/FontDescriptor 634 0 R
+/BaseFont /UFAMEL+LMRoman10-Regular
+/FontDescriptor 881 0 R
/FirstChar 21
/LastChar 159
-/Widths 602 0 R
-/Encoding 575 0 R
-/ToUnicode 673 0 R
+/Widths 857 0 R
+/Encoding 827 0 R
+/ToUnicode 923 0 R
>>
endobj
-674 0 obj
+924 0 obj
<<
/Length 841
/Filter /FlateDecode
@@ -6412,20 +7895,20 @@ N)ˆ$‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Û¯nÝjõäNÃelܬü¹=WWÕÐ\®?ß;׺vÚ=Ý©ÇqhžÝY]—›jÓwçO
Í9ëLñŒsÖQ.ëŒ(—uúlØg‹Y¬øŒ­ø‹ÏÄŸÑËŠÏx/­øŒ¾V|†ŸV|&ŽøŒÙ­ø ýV|†N+>cv+>Ã7+>S}ñú­ø …øŒ¾…ø ~!>ƒ_ˆÏÐSˆÏ”+>cöB|&¾øLüŒOÂrÒ`–BüÇ,…ø÷°ÿ©&+–jòwRPñœŠ{Åð¡âxáÂÑ${„y¯ªå„¢ 1~g|sGüÓ¿…Nuœç]ï>~?Çáˆ,ºè¿5ý(±z¨ƒ¿óªÖ
endstream
endobj
-206 0 obj
+297 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /HWFIOA+LMRoman12-Regular
-/FontDescriptor 636 0 R
+/BaseFont /XTQVMY+LMRoman12-Regular
+/FontDescriptor 883 0 R
/FirstChar 44
-/LastChar 119
-/Widths 610 0 R
-/Encoding 575 0 R
-/ToUnicode 674 0 R
+/LastChar 121
+/Widths 861 0 R
+/Encoding 827 0 R
+/ToUnicode 924 0 R
>>
endobj
-675 0 obj
+925 0 obj
<<
/Length 841
/Filter /FlateDecode
@@ -6437,20 +7920,20 @@ N)ˆ$‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Û¯nÝjõäNÃelܬü¹=WWÕÐ\®?ß;׺vÚ=Ý©ÇqhžÝY]—›jÓwçO
Í9ëLñŒsÖQ.ëŒ(—uúlØg‹Y¬øŒ­ø‹ÏÄŸÑËŠÏx/­øŒ¾V|†ŸV|&ŽøŒÙ­ø ýV|†N+>cv+>Ã7+>S}ñú­ø …øŒ¾…ø ~!>ƒ_ˆÏÐSˆÏ”+>cöB|&¾øLüŒOÂrÒ`–BüÇ,…ø÷°ÿ©&+–jòwRPñœŠ{Åð¡âxáÂÑ${„y¯ªå„¢ 1~g|sGüÓ¿…Nuœç]ï>~?Çáˆ,ºè¿5ý(±z¨ƒ¿šÁÖ6
endstream
endobj
-205 0 obj
+296 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /WHUENP+LMRoman17-Regular
-/FontDescriptor 638 0 R
+/BaseFont /MAUKEV+LMRoman17-Regular
+/FontDescriptor 885 0 R
/FirstChar 27
/LastChar 119
-/Widths 611 0 R
-/Encoding 575 0 R
-/ToUnicode 675 0 R
+/Widths 862 0 R
+/Encoding 827 0 R
+/ToUnicode 925 0 R
>>
endobj
-676 0 obj
+926 0 obj
<<
/Length 841
/Filter /FlateDecode
@@ -6463,20 +7946,20 @@ imXU3´îtÜ6nÜöo.Xj½R˺^®oÿÛ3’òº›¸kÏÕµ¿…:ÊWÁÒ Ù„0%1 " 0Z{ì™ÇqÍÌ0Rª¬0r
ÆÐœ•ŒáQV1¦ú4¿‰ñNd5cèÌYŒ¾9ëÁÏY?½C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠgœ³ÎˆrYgD¹¬ÓÐgÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|Æ{iÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)ļ‡…øO5ù[±T“¿“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñÓø8â›Ë8úÓŸþ,tªã<ïz÷ñó9GdÑE­é‰ÕCü| Õ<
endstream
endobj
-279 0 obj
+408 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /TRUNAO+LMRoman6-Regular
-/FontDescriptor 642 0 R
-/FirstChar 48
-/LastChar 65
-/Widths 597 0 R
-/Encoding 575 0 R
-/ToUnicode 676 0 R
+/BaseFont /FPXUEH+LMRoman6-Regular
+/FontDescriptor 889 0 R
+/FirstChar 49
+/LastChar 51
+/Widths 849 0 R
+/Encoding 827 0 R
+/ToUnicode 926 0 R
>>
endobj
-677 0 obj
+927 0 obj
<<
/Length 841
/Filter /FlateDecode
@@ -6489,20 +7972,20 @@ imXU3´îtÜ6nÜöo.Xj½R˺^®oÿÛ3’òº›¸kÏÕµ¿…:ÊWÁÒ Ù„0%1 " 0Z{ì™ÇqÍÌ0Rª¬0r
ÆÐœ•ŒáQV1¦ú4¿‰ñNd5cèÌYŒ¾9ëÁÏY?½C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠgœ³ÎˆrYgD¹¬ÓÐgÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|Æ{iÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)ļ‡…øO5ù[±T“¿“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñÓø8â›Ë8úÓŸþ,tªã<ïz÷ñó9GdÑE­é‰ÕCüiÕA
endstream
endobj
-255 0 obj
+306 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /OGJSOL+LMRoman7-Regular
-/FontDescriptor 644 0 R
-/FirstChar 48
+/BaseFont /TJMOAY+LMRoman7-Regular
+/FontDescriptor 891 0 R
+/FirstChar 49
/LastChar 65
-/Widths 600 0 R
-/Encoding 575 0 R
-/ToUnicode 677 0 R
+/Widths 856 0 R
+/Encoding 827 0 R
+/ToUnicode 927 0 R
>>
endobj
-678 0 obj
+928 0 obj
<<
/Length 841
/Filter /FlateDecode
@@ -6513,20 +7996,20 @@ N7RIýûõ›™´ÛU çñ›™70W?Ÿ'®^ý$¹ÕêɇóØúIõs}ˆ®®ê¡=ï}º÷¾óÝe÷x§Ç¡}ö'u]­êU¿=Ý
,>G|F/'>ã½tâ3ú:ñ~:ñ™8â3fwâ3ô;ñ:øŒÙø ßœøLõÅgèwâ3t–â3ú–â3ø¥ø ~)>CO)>S®øŒÙKñ™øâ3ñ-Ÿ „å¤Á,¥øYJñïa)þSMþVÕä襤:â?85÷JáCÍñ4Á…£Iöó^ÝÈ E'bü4>Žøö<Žáô§? ê8Ï·½ÿøù†²è¢¿Öå‰ÕCý¾ÇÕF
endstream
endobj
-281 0 obj
+410 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /CGRHAC+LMRoman8-Regular
-/FontDescriptor 646 0 R
-/FirstChar 27
+/BaseFont /VWFHRW+LMRoman8-Regular
+/FontDescriptor 893 0 R
+/FirstChar 21
/LastChar 121
-/Widths 596 0 R
-/Encoding 575 0 R
-/ToUnicode 678 0 R
+/Widths 848 0 R
+/Encoding 827 0 R
+/ToUnicode 928 0 R
>>
endobj
-679 0 obj
+929 0 obj
<<
/Length 841
/Filter /FlateDecode
@@ -6539,20 +8022,20 @@ imXU3´îtÜ6nÜöo.Xj½R˺^®oÿÛ3’òº›¸kÏÕµ¿…:ÊWÁÒ Ù„0%1 " 0Z{ì™ÇqÍÌ0Rª¬0r
ÆÐœ•ŒáQV1¦ú4¿‰ñNd5cèÌYŒ¾9ëÁÏY?½C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠgœ³ÎˆrYgD¹¬ÓÐgÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|Æ{iÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)ļ‡…øO5ù[±T“¿“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñÓø8â›Ë8úÓŸþ,tªã<ïz÷ñó9GdÑE­é‰ÕCüà%ÕK
endstream
endobj
-207 0 obj
+298 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /ICLJJO+LMRoman9-Regular
-/FontDescriptor 648 0 R
-/FirstChar 27
+/BaseFont /MAPAAO+LMRoman9-Regular
+/FontDescriptor 895 0 R
+/FirstChar 40
/LastChar 121
-/Widths 609 0 R
-/Encoding 575 0 R
-/ToUnicode 679 0 R
+/Widths 860 0 R
+/Encoding 827 0 R
+/ToUnicode 929 0 R
>>
endobj
-680 0 obj
+930 0 obj
<<
/Length 843
/Filter /FlateDecode
@@ -6563,20 +8046,43 @@ N)ˆ$‡þûõ›Úݪ’çñ›™70W?Ÿg¶^Ý,ºÕêɆËظYùs{ ®®ª¡¹\¾w®uí´{ºSãÐ<»³º.7Õ¦ïÎ7ž
ñ³â?žÃBü§šü®XªÉïIAuÄp*îÇŠãq„ G“ì潪–ŠN$Äøp|òÍeýùO_:Õqžw½ûø
endstream
endobj
-267 0 obj
+405 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /EZYWEQ+LMRoman10-Italic
-/FontDescriptor 650 0 R
-/FirstChar 27
+/BaseFont /GJLBWR+LMRoman10-Italic
+/FontDescriptor 897 0 R
+/FirstChar 21
/LastChar 121
-/Widths 599 0 R
-/Encoding 575 0 R
-/ToUnicode 680 0 R
+/Widths 850 0 R
+/Encoding 827 0 R
+/ToUnicode 930 0 R
>>
endobj
-681 0 obj
+931 0 obj
+<<
+/Length 841
+/Filter /FlateDecode
+>>
+stream
+xÚmUÁn£0½óÞC¥öƆ
+N©ˆ$‡þýúÍLÚíªÐóøÍÌ›˜‹O3×/~–\kõèãijý¬ú¹ÙGõØžv~8Þyßùî¼{¸QÓØ>ù£º¬nëÛ¡?^òíо:f}O*ýk?|RÐG]>ûß3ßÎÞvSoÃXƒüÜßéÛ}‚êkPQÒ/?úq¸QæZkë¡«ÆÆ8Ds‘¢ægqÛ~è&Ñ£^ .2±êúö(+º·»à’ŸÞG¿»¶c´\ªùcØ<§wÒxÍï§ÎOýðª.¿J [O§ýþÍC†ÒÑj¥:¿ Ãüw›Wóogüà<¿ï½ŠimXW;vþ°ß´~Ú ¯>Zj½R˦YE~èþÛ3’ò²=s׫›p‹uR¬¢¥A²‰)`*R2$!`´8lÀiÃ9UÖE€ÉÁ¨Ð¥æGËŒšSj0Ö43Ö`4`4Ìç(ç©Ú?›I ­‘¦ árŒ±t\eÀ á#êqúê”ã5pÆØ眛[Ž¿àÜØq>ê’û§âx \³“¨iÎEÜ°†’pNMö³k l4\?Ãõ³ ÖÕçšžcý¹¦:ëøgNó5^ ïâELOšup3Íóäò¬á‘%¯M°6`Ã^Û˜1´Ù„1êÛã50ymÈ ›1F}›3&Žåù¡ÁŠÔ—¼0 øbKÆÐl+ÆðÈÖŒ©>ÍoR¼¶a ëOÑ·`ý)øë§w¨`ý)ô¬?£\ÖŸaö‚õçÄgýñYgÍëÌñŒ Ö™P.ëL(—uúlØg‡YœøŒøœ‹ÏÄŸÑˉÏx/øŒ¾N|†ŸN|&ŽøŒÙø ýN|†N'>cv'>Ã7'>S}ñúø ¥øŒ¾¥ø ~)>ƒ_ŠÏÐSŠÏ”+>cöR|&¾øL|Ë'a9i0K)þc–RüÇ{XŠÿT“¿G5ù;)©ŽøNͽRøPs<Mpáh’=¼W7rBщ„ƒ¿3¾=MS8þéßB§:Îó~ð¿Ÿý¸G]ôß:ÿ(±ºo¢¿ y×S
+endstream
+endobj
+411 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /QYMDQO+LMRoman8-Italic
+/FontDescriptor 899 0 R
+/FirstChar 101
+/LastChar 119
+/Widths 847 0 R
+/Encoding 827 0 R
+/ToUnicode 931 0 R
+>>
+endobj
+932 0 obj
<<
/Length 843
/Filter /FlateDecode
@@ -6587,20 +8093,20 @@ N7R$‡þûõ›Úݪ’çñ›™70W?Ÿg¶í_Ý,ºÕêÉýehܬü¹=WWUß\Ž®;ß;׺vÚïÔãÐ7ÏËMµéöçO
ñ³â?žÃBü§šü®XªÉïIAuÄp*îÇŠãq„ G“ì潪–ŠN$Äøp|òÍeüùO_:Õqžï;÷ñ:õ'dÑE_®ék‰ÕCüvµØW
endstream
endobj
-488 0 obj
+657 0 obj
<<
/Type /Font
/Subtype /Type1
/BaseFont /PWWUQZ+LMSans10-Regular
-/FontDescriptor 652 0 R
+/FontDescriptor 901 0 R
/FirstChar 43
/LastChar 116
-/Widths 576 0 R
-/Encoding 575 0 R
-/ToUnicode 681 0 R
+/Widths 828 0 R
+/Encoding 827 0 R
+/ToUnicode 932 0 R
>>
endobj
-682 0 obj
+933 0 obj
<<
/Length 844
/Filter /FlateDecode
@@ -6612,20 +8118,20 @@ xÚmUMo›@½ó+¶‡HÉÁñ.˜¯È²´€‘|h%QÕ«ëÕ Û‡üûî›’6Êûíì›™7X®¾=<Íl;¼¸Yt«Õ£; —±q³òû
ñÏa!þSM~W,Õä÷¤ :â?8÷ŠáCÅñ8Â…£Iöó^UË E'b|8Þùæ2Žþü§¯ ê8ϻ޽€ŽÃYtÑ—kúZbu_ŒGØ4
endstream
endobj
-342 0 obj
+501 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /JNCQAV+LMMonoLt10-Bold
-/FontDescriptor 660 0 R
+/BaseFont /BCROGY+LMMonoLt10-Bold
+/FontDescriptor 909 0 R
/FirstChar 40
/LastChar 125
-/Widths 579 0 R
-/Encoding 575 0 R
-/ToUnicode 682 0 R
+/Widths 833 0 R
+/Encoding 827 0 R
+/ToUnicode 933 0 R
>>
endobj
-683 0 obj
+934 0 obj
<<
/Length 843
/Filter /FlateDecode
@@ -6637,20 +8143,20 @@ N7R!‡þûõ›Úݪ’çñ›™70W?Ÿg¶í_Ý,ºÕêÉûËиYùs{
ñ³â?žÃBü§šü®XªÉïIAuÄp*îÇŠãq„ G“ì潪–ŠN$Äøp|òÍeüùO_:Õqžï;÷ñ:õ'dÑE_®ék‰ÕCü¹²Øa
endstream
endobj
-216 0 obj
+304 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /UEBWYO+LMMono10-Regular
-/FontDescriptor 662 0 R
+/BaseFont /EPYXNP+LMMono10-Regular
+/FontDescriptor 911 0 R
/FirstChar 33
/LastChar 125
-/Widths 601 0 R
-/Encoding 575 0 R
-/ToUnicode 683 0 R
+/Widths 858 0 R
+/Encoding 827 0 R
+/ToUnicode 934 0 R
>>
endobj
-684 0 obj
+935 0 obj
<<
/Length 843
/Filter /FlateDecode
@@ -6664,20 +8170,20 @@ N7R!‡þûõ›Úݪ’çñ›™70W?Ÿg¶í_Ý,ºÕêÉûËиYùs{
ÆÐœ•ŒáQV1¦ú4¿‰ñLd5cèÌYŒ¾9ëÁÏY?=C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠ{œ³ÎˆrYgD¹¬ÓÐkÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|ÆsiÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)Ä<‡…øO5ù]±T“ß“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñáø8ä›Ë0øóŸ¾.tªã<ßwîãtêOÈ¢‹¾\Ó׫‡:ø ü–Øk
endstream
endobj
-204 0 obj
+295 0 obj
<<
/Type /Font
/Subtype /Type1
/BaseFont /BYUMNM+LMMono12-Regular
-/FontDescriptor 664 0 R
+/FontDescriptor 913 0 R
/FirstChar 99
/LastChar 111
-/Widths 612 0 R
-/Encoding 575 0 R
-/ToUnicode 684 0 R
+/Widths 863 0 R
+/Encoding 827 0 R
+/ToUnicode 935 0 R
>>
endobj
-685 0 obj
+936 0 obj
<<
/Length 842
/Filter /FlateDecode
@@ -6688,20 +8194,20 @@ N7R!‡þýúÍLÚíªÐóøÍÌ›˜‹O3× /~–\kõèÃilý¬ú¹9DõОö¾Ÿî¼ï|wÞ=Þ¨‡qhŸü¤.«Ûú¶ßMW
Aõ5¨(é—»¡¿QæZk뾫†=Æ8Fs‘¢ægqÛ]ߢG½@]dbÕíÚIVto÷Á$?½'¿¿í·C´\ªùcØ<Nã;i¼Šæ÷cçÇ]ÿª.¿J [O§ÃáÍC†ÒÑj¥:¿ Ãüw›½Wóogüà<¿¼ŠimXW;tþxØ´~Üô¯>Zj½R˦YE¾ïþÛ3’ò²=s׫›p‹uR¬¢¥A²‰)`*R2$!`´8lÀiÃ9UÖE€ÉÁ¨Ð¥æGËŒšSj0Ö43Ö`4`4Ìç(ç©Ú?›Q ­‘¦ árŒ±t\eÀ á#êqúê”ã5pÆØ眛[Ž¿àÜØq>ê’û§âx \³“¨iÎEÜ°†’pNMö³k l4\?Ãõ³ ÖÕçšžcý¹¦:ëøgNó5^ ïâELOšup3Íóäò¬á‘%¯M°6`Ã^Û˜1´Ù„1êÛã50ymÈ ›1F}›3&Žåù¡ÁŠÔ—¼0 øbKÆÐl+ÆðÈÖŒ©>ÍoR¼¶a ëOÑ·`ý)øë§w¨`ý)ô¬?£\ÖŸaö‚õçÄgýñYgÍëÌñŒ Ö™P.ëL(—uúlØg‡YœøŒøœ‹ÏÄŸÑˉÏx/øŒ¾N|†ŸN|&ŽøŒÙø ýN|†N'>cv'>Ã7'>S}ñúø ¥øŒ¾¥ø ~)>ƒ_ŠÏÐSŠÏ”+>cöR|&¾øL|Ë'a9i0K)þc–RüÇ{XŠÿT“¿G5ù;)©ŽøNͽRøPs<Mpáh’=¼W7rBщ„ƒ¿3¾=c8þéßB§:Îó]ï?~?‡á€,ºè¿uþQbußD¿×”
endstream
endobj
-337 0 obj
+459 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /KLCXYN+LMMono8-Regular
-/FontDescriptor 666 0 R
-/FirstChar 46
+/BaseFont /XBGYSK+LMMono8-Regular
+/FontDescriptor 915 0 R
+/FirstChar 35
/LastChar 120
-/Widths 580 0 R
-/Encoding 575 0 R
-/ToUnicode 685 0 R
+/Widths 835 0 R
+/Encoding 827 0 R
+/ToUnicode 936 0 R
>>
endobj
-686 0 obj
+937 0 obj
<<
/Length 842
/Filter /FlateDecode
@@ -6712,20 +8218,20 @@ N7R!‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Ûö¯nÝjõäÎýehܬü¹=WWUß\Ž®ïk];ížïÔãÐ7ÏnT×å¦ÚtûñÆ“
ñïa!þSMþV,Õä鸞:â?8÷ŠáCÅñ8Â…£Iöó^UË E'bü6>Îøæ2 þø§ ê8Ï÷ûøýœú²è¢ÿÖô£Äê¡þàƒ×™
endstream
endobj
-209 0 obj
+602 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /LFOUYT+LMMono9-Regular
-/FontDescriptor 668 0 R
+/BaseFont /EIIEGG+LMMono9-Regular
+/FontDescriptor 917 0 R
/FirstChar 40
/LastChar 125
-/Widths 607 0 R
-/Encoding 575 0 R
-/ToUnicode 686 0 R
+/Widths 829 0 R
+/Encoding 827 0 R
+/ToUnicode 937 0 R
>>
endobj
-687 0 obj
+938 0 obj
<<
/Length 846
/Filter /FlateDecode
@@ -6736,19 +8242,19 @@ xÚmUÁn›@½óÛC¤ôàz ,•ei#åÐ&J¢ªW6)R Ƈü}÷ÍŒ“6ÊôvöÍÌ›,W_î®÷~‘|ÓêÞŸÆóÔúEõc
,>G|F/'>ã½tâ3ú:ñ~:ñ™8â3fwâ3ô;ñ:øŒÙø ßœøLõÅgèwâ3t–â3ú–â3ø¥ø ~)>CO)>S®øŒÙKñ™øâ3ñ-Ÿ „å¤Á,¥øYJñïa)þSMþ>Õäo£¤:â?85÷JáCÍñ4Á…£Iöó^ÝÈ E'bü8Þùö<Máü§¿ ê8ÏûÁ¿ý€ŽãYtÑŸëò·Ä궉þr2Û]
endstream
endobj
-502 0 obj
+714 0 obj
<<
/Type /Font
/Subtype /Type1
/BaseFont /OIUXCD+esint10
-/FontDescriptor 614 0 R
+/FontDescriptor 865 0 R
/FirstChar 1
/LastChar 6
-/Widths 574 0 R
-/ToUnicode 687 0 R
+/Widths 826 0 R
+/ToUnicode 938 0 R
>>
endobj
-688 0 obj
+939 0 obj
<<
/Length 430
/Filter /FlateDecode
@@ -6760,20 +8266,20 @@ xÚu’Ín«0…÷~Š¹‹Hé‚b·M+„” eÑ5QÕ-±')R°‘©yûzlH¥¨]
ö œ^„
endstream
endobj
-298 0 obj
+427 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /WSBTHB+LMMathExtension10-Regular
-/FontDescriptor 624 0 R
+/BaseFont /DLABCR+LMMathExtension10-Regular
+/FontDescriptor 873 0 R
/FirstChar 0
/LastChar 112
-/Widths 590 0 R
-/Encoding 589 0 R
-/ToUnicode 688 0 R
+/Widths 845 0 R
+/Encoding 844 0 R
+/ToUnicode 939 0 R
>>
endobj
-689 0 obj
+940 0 obj
<<
/Length 600
/Filter /FlateDecode
@@ -6784,20 +8290,20 @@ xÚuTËnâ@¼û+fHä@˜Æ!BHØƇM¢€V{5ö@,á‡lsàïwª m˜ššêîê6Íè×Çn²Î냘g)>mW_ÚÌN¢ßiã
MgÅÞ²:·]“f¶M«“õ–R®Ä2IVž­ò‡;e8äp´ÓÊ<ÌÚ_9"Þ*G(dS>sQÆ  ÖDDr¨˜ "qX+&Gh„ë±aá:$‚r”5PHi@ÌîS9ƒ1jUô|s(V8Œö‡>Ílè;ûJÛÛˆ¤YÀœD˜Ö½IÍü °aÏo€yk˜rA„)Ï‚1ÅR;JS΄øÓU¤—!ar ¬¹.ñšëÆèQsÝy4×Mˆçº‘“9µÒŒiè~½á©hø7!cŒÝD<`Â1ó ð†yÒSMùg’g…º>Õ2½û cðsÒ(> ZÊÀC@µ´· f fP·7Fo?],Û}/²KÛº•¡¤=À•½/mS7ˆ¢mûð'ƒÓ{âý¨ØL:
endstream
endobj
-271 0 obj
+310 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /EDLUSI+LMMathItalic10-Regular
-/FontDescriptor 626 0 R
+/BaseFont /LJFRVQ+LMMathItalic10-Regular
+/FontDescriptor 875 0 R
/FirstChar 14
/LastChar 126
-/Widths 598 0 R
-/Encoding 577 0 R
-/ToUnicode 689 0 R
+/Widths 852 0 R
+/Encoding 831 0 R
+/ToUnicode 940 0 R
>>
endobj
-690 0 obj
+941 0 obj
<<
/Length 598
/Filter /FlateDecode
@@ -6808,20 +8314,20 @@ xÚmTM¢@½ó+z&ÎÁ±?DƉ1ÄÃÎLF³Ù+BëÈG
‡ÑþЧ™ }g?i{‘4 ˜“ÓZ¢7©™6ŒCàã 0Ïb S.ˆ0åY0¦XjGiÊ™Ÿ`ºŠô2$ÌCŽ5×%^sÝ=j®#æº ñ\7ÒÀcÒ §öCš1 Ý 7< ÿ&dŒ±›ˆL8f>Þ0OzÊ£)ÿLò¬PקZF£w?a ~N¥ÀTKx¨–6ðĬÁ¬Ê#ãàöÆè ᯋU»¯Evi[·1´´Ø€¢²÷•mêQô£]¾/8}&Þ?«úK^
endstream
endobj
-432 0 obj
+553 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /UUTYVR+LMMathItalic5-Regular
-/FontDescriptor 628 0 R
+/BaseFont /ZBFYGJ+LMMathItalic5-Regular
+/FontDescriptor 877 0 R
/FirstChar 105
-/LastChar 105
-/Widths 578 0 R
-/Encoding 577 0 R
-/ToUnicode 690 0 R
+/LastChar 110
+/Widths 832 0 R
+/Encoding 831 0 R
+/ToUnicode 941 0 R
>>
endobj
-691 0 obj
+942 0 obj
<<
/Length 598
/Filter /FlateDecode
@@ -6832,43 +8338,20 @@ xÚmTM¢@½ó+z&ÎÁ±?DƉ1ÄÃÎLF³Ù+BëÈG
‡ÑþЧ™ }g?i{‘4 ˜“ÓZ¢7©™6ŒCàã 0Ïb S.ˆ0åY0¦XjGiÊ™Ÿ`ºŠô2$ÌCŽ5×%^sÝ=j®#æº ñ\7ÒÀcÒ §öCš1 Ý 7< ÿ&dŒ±›ˆL8f>Þ0OzÊ£)ÿLò¬PקZF£w?a ~N¥ÀTKx¨–6ðĬÁ¬Ê#ãàöÆè ᯋU»¯Evi[·1´´Ø€¢²÷•mêQô£]¾/8}&Þ?ÒúKh
endstream
endobj
-293 0 obj
+308 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /HIFJJL+LMMathItalic7-Regular
-/FontDescriptor 630 0 R
+/BaseFont /HVAXQD+LMMathItalic7-Regular
+/FontDescriptor 879 0 R
/FirstChar 11
-/LastChar 121
-/Widths 594 0 R
-/Encoding 577 0 R
-/ToUnicode 691 0 R
->>
-endobj
-692 0 obj
-<<
-/Length 598
-/Filter /FlateDecode
->>
-stream
-xÚmTM¢@½ó+z&ÎÁ±?DƉ1ÄÃÎLF³Ù+BëÈG
-Ù”ÏÄB‡„1ˆˆ5‘*f€HÖŠ‰ÀázAl@¸‰ e R3„ûTEÎ`̇ÚG=ŸÃÇŠ€£ý¡O3úÎ~Òö6"i0'¦µDoR3ÿl‡À3Æ`žÅ¦\aʳ`L±ÔŽÒ”3!>ÁtéeH˜‡k®K¼æº1zÔ\7FÍuâ¹n¤ƤANí‡4cºAox*þMÈc7˜pÌ|¼ažô”GSþ™äY¡®OµŒFï~Âüœ4J¨–2ðP-mà-ˆYƒY”GÆÁíÑÂ_«v_‹ìÒ¶nchi°Eeï+ÛÔ ¢èG»>|_púL¼ùúKr
-endstream
-endobj
-210 0 obj
-<<
-/Type /Font
-/Subtype /Type1
-/BaseFont /DWKZXN+LMMathItalic9-Regular
-/FontDescriptor 632 0 R
-/FirstChar 14
-/LastChar 120
-/Widths 606 0 R
-/Encoding 577 0 R
-/ToUnicode 692 0 R
+/LastChar 122
+/Widths 854 0 R
+/Encoding 831 0 R
+/ToUnicode 942 0 R
>>
endobj
-693 0 obj
+943 0 obj
<<
/Length 790
/Filter /FlateDecode
@@ -6880,20 +8363,20 @@ xÚuUMoâ0½çWx•Úʼn B
8An)Ž  +4bXÂ*^c›³”ÛHø°°`&f P;á6 <9ÇB‡—iµÔ2)L¦´ÛÔeTõ±¼Vå.>öíЭ¼HEÎW0*5áŒ0×^Ž‰Ï s Öغ´¼~${S¨‘$2Ë€Q lÐC™³]j{ˆ¡Q\‹8jFجç¬A´ä¦`«Z1F­c­f1urÆ=#ýœ1éSƤÏx-¼é ã907OÁ›¡¼Ò`­aŸaŒ¦¼šºe¸VrLÓ”¬hVƇje éyÞ ïQ’ž§(ÅÞ ²Äa0<Šxö¬à?æšhÖkŒSÂIc/ Ïÿ ž-÷ËÁ§uŒáÍr^‡øvˆƒ˜–óÒ´œ7#¼!}Bz®UŒ½¸a®àÁQ­Rƒ“é†Za~×JËyž1KŽçŠN¡›qH¿âCù±–4côÅmÓ¹ÈËáÐÄãÂùy½—¶ 7]¬tá"«jÿy÷ž›3Vч.íñ¿OOyôâ§/
endstream
endobj
-296 0 obj
+426 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /CCXVUN+LMMathSymbols10-Regular
-/FontDescriptor 654 0 R
+/BaseFont /GEOOUZ+LMMathSymbols10-Regular
+/FontDescriptor 903 0 R
/FirstChar 0
/LastChar 114
-/Widths 591 0 R
-/Encoding 583 0 R
-/ToUnicode 693 0 R
+/Widths 846 0 R
+/Encoding 836 0 R
+/ToUnicode 943 0 R
>>
endobj
-694 0 obj
+944 0 obj
<<
/Length 789
/Filter /FlateDecode
@@ -6907,20 +8390,20 @@ xÚmUMoâ0½çWx•Úʼn B
Õ*58™n¨æÇq­4<¸˜ç³äx®èº×ô+ž1ôÈ‘kI“1F_܆1‹œ±N
endstream
endobj
-312 0 obj
+449 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /VCFYYS+LMMathSymbols5-Regular
-/FontDescriptor 656 0 R
+/BaseFont /KAPBZZ+LMMathSymbols5-Regular
+/FontDescriptor 905 0 R
/FirstChar 3
-/LastChar 3
-/Widths 587 0 R
-/Encoding 583 0 R
-/ToUnicode 694 0 R
+/LastChar 48
+/Widths 838 0 R
+/Encoding 836 0 R
+/ToUnicode 944 0 R
>>
endobj
-695 0 obj
+945 0 obj
<<
/Length 788
/Filter /FlateDecode
@@ -6935,20 +8418,20 @@ bÅK4ÄS/IAl@äD8š ²Vs‚X&ŠGÆT…A Ã1RøˆUÀ rKp´H HX¡âVñ³Øœ¥ÜF‡…›01z
ÝŒë@úÏzäȵ¤É£/nØÎEÎX'€&7nÌïÛ­¸´m¸øèZ¥ë YUûï›÷Üœ±Š~tex{É£•¦]
endstream
endobj
-314 0 obj
+456 0 obj
<<
/Type /Font
/Subtype /Type1
/BaseFont /PVOJED+LMMathSymbols7-Regular
-/FontDescriptor 658 0 R
+/FontDescriptor 907 0 R
/FirstChar 0
/LastChar 114
-/Widths 584 0 R
-/Encoding 583 0 R
-/ToUnicode 695 0 R
+/Widths 837 0 R
+/Encoding 836 0 R
+/ToUnicode 945 0 R
>>
endobj
-696 0 obj
+946 0 obj
<<
/Length 963
/Filter /FlateDecode
@@ -6959,20 +8442,20 @@ xÚmVËnÛ0¼ë+ØC€ôàš¤,‰*Ô È¡4AÑ«#1©X6dhþ¾œÝuÒ9ÈR³Ë™¡$æêÃ÷Û…÷÷a‘~ÒêG8îÏóÍ
/‡òa@]tš_þƒÀè[ŸüA"B
endstream
endobj
-313 0 obj
+447 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /JFISNR+LMRoman10-Bold
-/FontDescriptor 616 0 R
-/FirstChar 113
-/LastChar 120
-/Widths 586 0 R
-/Encoding 585 0 R
-/ToUnicode 696 0 R
+/BaseFont /KKYZJG+LMRoman10-Bold
+/FontDescriptor 867 0 R
+/FirstChar 68
+/LastChar 122
+/Widths 840 0 R
+/Encoding 839 0 R
+/ToUnicode 946 0 R
>>
endobj
-697 0 obj
+947 0 obj
<<
/Length 962
/Filter /FlateDecode
@@ -6984,20 +8467,20 @@ xÚmVËnã8¼ë+¸‡
ÖI{é8g ýÎ0FžÎ2Æ|—2F¯Û0Ƴâ(gc§ËÓÌ‚1qï#´9~IÈ££œÍÞç¼AήaŒ}t-cš/9cß]Ï:KÖŸaÝ’õgà—¬Ÿž“’õgÐS²þœzYï%ë/ˆÏúsâ³ÎšKÖYà)YgJ½¬3¥^Öià«”œáÅKÎðè%g|’¼äLÉkyÉÏ€—œ±®—œ‘§—œ‰#9û—œ¡ßKÎÐé%gx÷’3ró’3Í—œ¡ßKÎÐYKÎX·–œÁ¯%gðkÉzjÉ™z%gx¯%gâKÎÄç÷±',S/Ÿ9úªÅÓêÃG®–ÉZ6h-C‹ñ S#Üš_*‹ jÙpù@ÀL[0Ÿ°£‰6µe~–â_gî!£}Ï/\÷»XN8Jßνá²,ñH¤ó–N:œqû)¼ÉÇùˆ.ú£³üúÏ®~ôÉÿÚ~:
endstream
endobj
-295 0 obj
+309 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /ZDORWX+LMRoman10-Regular
-/FontDescriptor 634 0 R
+/BaseFont /UFAMEL+LMRoman10-Regular
+/FontDescriptor 881 0 R
/FirstChar 0
-/LastChar 115
-/Widths 592 0 R
-/Encoding 585 0 R
-/ToUnicode 697 0 R
+/LastChar 127
+/Widths 853 0 R
+/Encoding 839 0 R
+/ToUnicode 947 0 R
>>
endobj
-698 0 obj
+948 0 obj
<<
/Length 962
/Filter /FlateDecode
@@ -7006,20 +8489,20 @@ stream
xÚmVËnã8¼ë+¸‡
endstream
endobj
-301 0 obj
+438 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /PSSDWM+LMRoman5-Regular
-/FontDescriptor 640 0 R
-/FirstChar 48
-/LastChar 50
-/Widths 588 0 R
-/Encoding 585 0 R
-/ToUnicode 698 0 R
+/BaseFont /TXCQKG+LMRoman5-Regular
+/FontDescriptor 887 0 R
+/FirstChar 43
+/LastChar 49
+/Widths 841 0 R
+/Encoding 839 0 R
+/ToUnicode 948 0 R
>>
endobj
-699 0 obj
+949 0 obj
<<
/Length 962
/Filter /FlateDecode
@@ -7028,42 +8511,42 @@ stream
xÚmVËnã8¼ë+¸‡
endstream
endobj
-294 0 obj
+307 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /OGJSOL+LMRoman7-Regular
-/FontDescriptor 644 0 R
+/BaseFont /TJMOAY+LMRoman7-Regular
+/FontDescriptor 891 0 R
/FirstChar 2
-/LastChar 61
-/Widths 593 0 R
-/Encoding 585 0 R
-/ToUnicode 699 0 R
+/LastChar 100
+/Widths 855 0 R
+/Encoding 839 0 R
+/ToUnicode 949 0 R
>>
endobj
-700 0 obj
+950 0 obj
<<
-/Length 962
+/Length 328
/Filter /FlateDecode
>>
stream
-xÚmVËnã8¼ë+¸‡
+xÚu‘1oƒ0…wÿŠë)&Ý"„Ô&ÄÐ$
+QÕì#µ6²ÍÀ¿¯m•¢f
endstream
endobj
-211 0 obj
+586 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /ICLJJO+LMRoman9-Regular
-/FontDescriptor 648 0 R
-/FirstChar 1
-/LastChar 100
-/Widths 605 0 R
-/Encoding 585 0 R
-/ToUnicode 700 0 R
+/BaseFont /BJKGRW+stmary10
+/FontDescriptor 919 0 R
+/FirstChar 36
+/LastChar 37
+/Widths 830 0 R
+/ToUnicode 950 0 R
>>
endobj
-701 0 obj
+951 0 obj
<<
/Length 700
/Filter /FlateDecode
@@ -7074,147 +8557,420 @@ xÚuTMo£0½ó+¼‡Jí!m0U ó!å°mÕT«½¦àt‘ˆ€úï×o†4«j{ÀzÞÌ<?ÜüxÞÎÒº{s³ð^Š7tç¾r³ìç
zŠèÀÕoZ÷ùZº²è£gîòºböT$Z|U
endstream
endobj
-325 0 obj
+434 0 obj
<<
/Type /Font
/Subtype /Type1
-/BaseFont /ZDORWX+LMRoman10-Regular
-/FontDescriptor 634 0 R
+/BaseFont /UFAMEL+LMRoman10-Regular
+/FontDescriptor 881 0 R
/FirstChar 136
/LastChar 136
-/Widths 582 0 R
-/Encoding 581 0 R
-/ToUnicode 701 0 R
+/Widths 843 0 R
+/Encoding 842 0 R
+/ToUnicode 951 0 R
>>
endobj
-217 0 obj
+299 0 obj
<<
/Type /Pages
/Count 6
-/Parent 702 0 R
-/Kids [186 0 R 252 0 R 263 0 R 287 0 R 305 0 R 316 0 R]
+/Parent 952 0 R
+/Kids [290 0 R 301 0 R 314 0 R 352 0 R 397 0 R 402 0 R]
>>
endobj
-327 0 obj
+428 0 obj
<<
/Type /Pages
/Count 6
-/Parent 702 0 R
-/Kids [322 0 R 333 0 R 339 0 R 347 0 R 352 0 R 359 0 R]
+/Parent 952 0 R
+/Kids [418 0 R 431 0 R 441 0 R 453 0 R 471 0 R 476 0 R]
>>
endobj
-366 0 obj
+494 0 obj
<<
/Type /Pages
/Count 6
-/Parent 702 0 R
-/Kids [363 0 R 370 0 R 375 0 R 379 0 R 385 0 R 389 0 R]
+/Parent 952 0 R
+/Kids [488 0 R 498 0 R 504 0 R 508 0 R 516 0 R 522 0 R]
>>
endobj
-400 0 obj
+531 0 obj
<<
/Type /Pages
/Count 6
-/Parent 702 0 R
-/Kids [396 0 R 402 0 R 408 0 R 418 0 R 425 0 R 429 0 R]
+/Parent 952 0 R
+/Kids [528 0 R 533 0 R 537 0 R 541 0 R 545 0 R 550 0 R]
>>
endobj
-438 0 obj
+560 0 obj
<<
/Type /Pages
/Count 6
-/Parent 702 0 R
-/Kids [435 0 R 448 0 R 456 0 R 462 0 R 468 0 R 473 0 R]
+/Parent 952 0 R
+/Kids [557 0 R 565 0 R 573 0 R 582 0 R 595 0 R 599 0 R]
>>
endobj
-482 0 obj
+608 0 obj
<<
/Type /Pages
/Count 6
-/Parent 702 0 R
-/Kids [478 0 R 485 0 R 491 0 R 499 0 R 506 0 R 510 0 R]
+/Parent 952 0 R
+/Kids [605 0 R 610 0 R 616 0 R 628 0 R 640 0 R 649 0 R]
>>
endobj
-517 0 obj
+659 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 953 0 R
+/Kids [653 0 R 661 0 R 668 0 R 673 0 R 677 0 R 681 0 R]
+>>
+endobj
+688 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 953 0 R
+/Kids [685 0 R 690 0 R 697 0 R 703 0 R 707 0 R 711 0 R]
+>>
+endobj
+726 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 953 0 R
+/Kids [721 0 R 729 0 R 736 0 R 740 0 R 751 0 R 759 0 R]
+>>
+endobj
+774 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 953 0 R
+/Kids [763 0 R 776 0 R 790 0 R 794 0 R 798 0 R 802 0 R]
+>>
+endobj
+809 0 obj
<<
/Type /Pages
/Count 5
-/Parent 703 0 R
-/Kids [514 0 R 520 0 R 527 0 R 542 0 R 566 0 R]
+/Parent 953 0 R
+/Kids [806 0 R 811 0 R 815 0 R 819 0 R 823 0 R]
>>
endobj
-702 0 obj
+952 0 obj
<<
/Type /Pages
/Count 36
-/Parent 704 0 R
-/Kids [217 0 R 327 0 R 366 0 R 400 0 R 438 0 R 482 0 R]
+/Parent 954 0 R
+/Kids [299 0 R 428 0 R 494 0 R 531 0 R 560 0 R 608 0 R]
>>
endobj
-703 0 obj
+953 0 obj
<<
/Type /Pages
-/Count 5
-/Parent 704 0 R
-/Kids [517 0 R]
+/Count 29
+/Parent 954 0 R
+/Kids [659 0 R 688 0 R 726 0 R 774 0 R 809 0 R]
>>
endobj
-704 0 obj
+954 0 obj
<<
/Type /Pages
-/Count 41
-/Kids [702 0 R 703 0 R]
+/Count 65
+/Kids [952 0 R 953 0 R]
>>
endobj
-705 0 obj
+955 0 obj
<<
/Type /Outlines
/First 3 0 R
-/Last 183 0 R
-/Count 29
+/Last 231 0 R
+/Count 48
+>>
+endobj
+287 0 obj
+<<
+/Title 288 0 R
+/A 285 0 R
+/Parent 231 0 R
+/Prev 283 0 R
+>>
+endobj
+283 0 obj
+<<
+/Title 284 0 R
+/A 281 0 R
+/Parent 231 0 R
+/Prev 279 0 R
+/Next 287 0 R
+>>
+endobj
+279 0 obj
+<<
+/Title 280 0 R
+/A 277 0 R
+/Parent 231 0 R
+/Prev 239 0 R
+/Next 283 0 R
+>>
+endobj
+275 0 obj
+<<
+/Title 276 0 R
+/A 273 0 R
+/Parent 239 0 R
+/Prev 271 0 R
+>>
+endobj
+271 0 obj
+<<
+/Title 272 0 R
+/A 269 0 R
+/Parent 239 0 R
+/Prev 263 0 R
+/Next 275 0 R
+>>
+endobj
+267 0 obj
+<<
+/Title 268 0 R
+/A 265 0 R
+/Parent 263 0 R
+>>
+endobj
+263 0 obj
+<<
+/Title 264 0 R
+/A 261 0 R
+/Parent 239 0 R
+/Prev 255 0 R
+/Next 271 0 R
+/First 267 0 R
+/Last 267 0 R
+/Count -1
+>>
+endobj
+259 0 obj
+<<
+/Title 260 0 R
+/A 257 0 R
+/Parent 255 0 R
+>>
+endobj
+255 0 obj
+<<
+/Title 256 0 R
+/A 253 0 R
+/Parent 239 0 R
+/Prev 247 0 R
+/Next 263 0 R
+/First 259 0 R
+/Last 259 0 R
+/Count -1
+>>
+endobj
+251 0 obj
+<<
+/Title 252 0 R
+/A 249 0 R
+/Parent 247 0 R
+>>
+endobj
+247 0 obj
+<<
+/Title 248 0 R
+/A 245 0 R
+/Parent 239 0 R
+/Prev 243 0 R
+/Next 255 0 R
+/First 251 0 R
+/Last 251 0 R
+/Count -1
+>>
+endobj
+243 0 obj
+<<
+/Title 244 0 R
+/A 241 0 R
+/Parent 239 0 R
+/Next 247 0 R
+>>
+endobj
+239 0 obj
+<<
+/Title 240 0 R
+/A 237 0 R
+/Parent 231 0 R
+/Prev 235 0 R
+/Next 279 0 R
+/First 243 0 R
+/Last 275 0 R
+/Count 6
+>>
+endobj
+235 0 obj
+<<
+/Title 236 0 R
+/A 233 0 R
+/Parent 231 0 R
+/Next 239 0 R
+>>
+endobj
+231 0 obj
+<<
+/Title 232 0 R
+/A 229 0 R
+/Parent 955 0 R
+/Prev 183 0 R
+/First 235 0 R
+/Last 287 0 R
+/Count 11
+>>
+endobj
+227 0 obj
+<<
+/Title 228 0 R
+/A 225 0 R
+/Parent 215 0 R
+/Prev 223 0 R
+>>
+endobj
+223 0 obj
+<<
+/Title 224 0 R
+/A 221 0 R
+/Parent 215 0 R
+/Prev 219 0 R
+/Next 227 0 R
+>>
+endobj
+219 0 obj
+<<
+/Title 220 0 R
+/A 217 0 R
+/Parent 215 0 R
+/Next 223 0 R
+>>
+endobj
+215 0 obj
+<<
+/Title 216 0 R
+/A 213 0 R
+/Parent 183 0 R
+/Prev 187 0 R
+/First 219 0 R
+/Last 227 0 R
+/Count 3
+>>
+endobj
+211 0 obj
+<<
+/Title 212 0 R
+/A 209 0 R
+/Parent 187 0 R
+/Prev 207 0 R
+>>
+endobj
+207 0 obj
+<<
+/Title 208 0 R
+/A 205 0 R
+/Parent 187 0 R
+/Prev 199 0 R
+/Next 211 0 R
+>>
+endobj
+203 0 obj
+<<
+/Title 204 0 R
+/A 201 0 R
+/Parent 199 0 R
+>>
+endobj
+199 0 obj
+<<
+/Title 200 0 R
+/A 197 0 R
+/Parent 187 0 R
+/Prev 195 0 R
+/Next 207 0 R
+/First 203 0 R
+/Last 203 0 R
+/Count -1
+>>
+endobj
+195 0 obj
+<<
+/Title 196 0 R
+/A 193 0 R
+/Parent 187 0 R
+/Prev 191 0 R
+/Next 199 0 R
+>>
+endobj
+191 0 obj
+<<
+/Title 192 0 R
+/A 189 0 R
+/Parent 187 0 R
+/Next 195 0 R
+>>
+endobj
+187 0 obj
+<<
+/Title 188 0 R
+/A 185 0 R
+/Parent 183 0 R
+/Next 215 0 R
+/First 191 0 R
+/Last 211 0 R
+/Count 5
>>
endobj
183 0 obj
<<
/Title 184 0 R
/A 181 0 R
-/Parent 705 0 R
-/Prev 179 0 R
+/Parent 955 0 R
+/Prev 99 0 R
+/Next 231 0 R
+/First 187 0 R
+/Last 215 0 R
+/Count 10
>>
endobj
179 0 obj
<<
/Title 180 0 R
/A 177 0 R
-/Parent 705 0 R
-/Prev 171 0 R
-/Next 183 0 R
+/Parent 175 0 R
>>
endobj
175 0 obj
<<
/Title 176 0 R
/A 173 0 R
-/Parent 171 0 R
+/Parent 99 0 R
+/Prev 127 0 R
+/First 179 0 R
+/Last 179 0 R
+/Count 1
>>
endobj
171 0 obj
<<
/Title 172 0 R
/A 169 0 R
-/Parent 705 0 R
-/Prev 155 0 R
-/Next 179 0 R
-/First 175 0 R
-/Last 175 0 R
-/Count 1
+/Parent 127 0 R
+/Prev 139 0 R
>>
endobj
167 0 obj
<<
/Title 168 0 R
/A 165 0 R
-/Parent 159 0 R
+/Parent 139 0 R
/Prev 163 0 R
>>
endobj
@@ -7222,7 +8978,8 @@ endobj
<<
/Title 164 0 R
/A 161 0 R
-/Parent 159 0 R
+/Parent 139 0 R
+/Prev 159 0 R
/Next 167 0 R
>>
endobj
@@ -7230,37 +8987,35 @@ endobj
<<
/Title 160 0 R
/A 157 0 R
-/Parent 155 0 R
-/First 163 0 R
-/Last 167 0 R
-/Count -2
+/Parent 139 0 R
+/Prev 155 0 R
+/Next 163 0 R
>>
endobj
155 0 obj
<<
/Title 156 0 R
/A 153 0 R
-/Parent 705 0 R
-/Prev 107 0 R
-/Next 171 0 R
-/First 159 0 R
-/Last 159 0 R
-/Count 1
+/Parent 139 0 R
+/Prev 151 0 R
+/Next 159 0 R
>>
endobj
151 0 obj
<<
/Title 152 0 R
/A 149 0 R
-/Parent 143 0 R
+/Parent 139 0 R
/Prev 147 0 R
+/Next 155 0 R
>>
endobj
147 0 obj
<<
/Title 148 0 R
/A 145 0 R
-/Parent 143 0 R
+/Parent 139 0 R
+/Prev 143 0 R
/Next 151 0 R
>>
endobj
@@ -7268,19 +9023,20 @@ endobj
<<
/Title 144 0 R
/A 141 0 R
-/Parent 107 0 R
-/Prev 131 0 R
-/First 147 0 R
-/Last 151 0 R
-/Count -2
+/Parent 139 0 R
+/Next 147 0 R
>>
endobj
139 0 obj
<<
/Title 140 0 R
/A 137 0 R
-/Parent 131 0 R
-/Prev 135 0 R
+/Parent 127 0 R
+/Prev 131 0 R
+/Next 171 0 R
+/First 143 0 R
+/Last 167 0 R
+/Count -7
>>
endobj
135 0 obj
@@ -7288,26 +9044,29 @@ endobj
/Title 136 0 R
/A 133 0 R
/Parent 131 0 R
-/Next 139 0 R
>>
endobj
131 0 obj
<<
/Title 132 0 R
/A 129 0 R
-/Parent 107 0 R
-/Prev 123 0 R
-/Next 143 0 R
+/Parent 127 0 R
+/Next 139 0 R
/First 135 0 R
-/Last 139 0 R
-/Count -2
+/Last 135 0 R
+/Count -1
>>
endobj
127 0 obj
<<
/Title 128 0 R
/A 125 0 R
-/Parent 123 0 R
+/Parent 99 0 R
+/Prev 107 0 R
+/Next 175 0 R
+/First 131 0 R
+/Last 171 0 R
+/Count 3
>>
endobj
123 0 obj
@@ -7316,10 +9075,6 @@ endobj
/A 121 0 R
/Parent 107 0 R
/Prev 119 0 R
-/Next 131 0 R
-/First 127 0 R
-/Last 127 0 R
-/Count -1
>>
endobj
119 0 obj
@@ -7352,53 +9107,55 @@ endobj
<<
/Title 108 0 R
/A 105 0 R
-/Parent 705 0 R
-/Prev 51 0 R
-/Next 155 0 R
+/Parent 99 0 R
+/Prev 103 0 R
+/Next 127 0 R
/First 111 0 R
-/Last 143 0 R
-/Count 6
+/Last 123 0 R
+/Count 4
>>
endobj
103 0 obj
<<
/Title 104 0 R
/A 101 0 R
-/Parent 51 0 R
-/Prev 99 0 R
+/Parent 99 0 R
+/Next 107 0 R
>>
endobj
99 0 obj
<<
/Title 100 0 R
/A 97 0 R
-/Parent 51 0 R
-/Prev 71 0 R
-/Next 103 0 R
+/Parent 955 0 R
+/Prev 15 0 R
+/Next 183 0 R
+/First 103 0 R
+/Last 175 0 R
+/Count 12
>>
endobj
95 0 obj
<<
/Title 96 0 R
/A 93 0 R
-/Parent 71 0 R
-/Prev 91 0 R
+/Parent 23 0 R
+/Prev 67 0 R
>>
endobj
91 0 obj
<<
/Title 92 0 R
/A 89 0 R
-/Parent 71 0 R
+/Parent 67 0 R
/Prev 87 0 R
-/Next 95 0 R
>>
endobj
87 0 obj
<<
/Title 88 0 R
/A 85 0 R
-/Parent 71 0 R
+/Parent 67 0 R
/Prev 83 0 R
/Next 91 0 R
>>
@@ -7407,7 +9164,7 @@ endobj
<<
/Title 84 0 R
/A 81 0 R
-/Parent 71 0 R
+/Parent 67 0 R
/Prev 79 0 R
/Next 87 0 R
>>
@@ -7416,7 +9173,7 @@ endobj
<<
/Title 80 0 R
/A 77 0 R
-/Parent 71 0 R
+/Parent 67 0 R
/Prev 75 0 R
/Next 83 0 R
>>
@@ -7425,7 +9182,8 @@ endobj
<<
/Title 76 0 R
/A 73 0 R
-/Parent 71 0 R
+/Parent 67 0 R
+/Prev 71 0 R
/Next 79 0 R
>>
endobj
@@ -7433,21 +9191,20 @@ endobj
<<
/Title 72 0 R
/A 69 0 R
-/Parent 51 0 R
-/Prev 67 0 R
-/Next 99 0 R
-/First 75 0 R
-/Last 95 0 R
-/Count -6
+/Parent 67 0 R
+/Next 75 0 R
>>
endobj
67 0 obj
<<
/Title 68 0 R
/A 65 0 R
-/Parent 51 0 R
-/Prev 63 0 R
-/Next 71 0 R
+/Parent 23 0 R
+/Prev 51 0 R
+/Next 95 0 R
+/First 71 0 R
+/Last 91 0 R
+/Count -6
>>
endobj
63 0 obj
@@ -7455,15 +9212,16 @@ endobj
/Title 64 0 R
/A 61 0 R
/Parent 51 0 R
-/Prev 55 0 R
-/Next 67 0 R
+/Prev 59 0 R
>>
endobj
59 0 obj
<<
/Title 60 0 R
/A 57 0 R
-/Parent 55 0 R
+/Parent 51 0 R
+/Prev 55 0 R
+/Next 63 0 R
>>
endobj
55 0 obj
@@ -7471,29 +9229,26 @@ endobj
/Title 56 0 R
/A 53 0 R
/Parent 51 0 R
-/Next 63 0 R
-/First 59 0 R
-/Last 59 0 R
-/Count -1
+/Next 59 0 R
>>
endobj
51 0 obj
<<
/Title 52 0 R
/A 49 0 R
-/Parent 705 0 R
-/Prev 15 0 R
-/Next 107 0 R
+/Parent 23 0 R
+/Prev 39 0 R
+/Next 67 0 R
/First 55 0 R
-/Last 103 0 R
-/Count 6
+/Last 63 0 R
+/Count -3
>>
endobj
47 0 obj
<<
/Title 48 0 R
/A 45 0 R
-/Parent 15 0 R
+/Parent 39 0 R
/Prev 43 0 R
>>
endobj
@@ -7501,8 +9256,7 @@ endobj
<<
/Title 44 0 R
/A 41 0 R
-/Parent 15 0 R
-/Prev 35 0 R
+/Parent 39 0 R
/Next 47 0 R
>>
endobj
@@ -7510,44 +9264,50 @@ endobj
<<
/Title 40 0 R
/A 37 0 R
-/Parent 35 0 R
+/Parent 23 0 R
+/Prev 35 0 R
+/Next 51 0 R
+/First 43 0 R
+/Last 47 0 R
+/Count -2
>>
endobj
35 0 obj
<<
/Title 36 0 R
/A 33 0 R
-/Parent 15 0 R
-/Prev 31 0 R
-/Next 43 0 R
-/First 39 0 R
-/Last 39 0 R
-/Count -1
+/Parent 23 0 R
+/Prev 27 0 R
+/Next 39 0 R
>>
endobj
31 0 obj
<<
/Title 32 0 R
/A 29 0 R
-/Parent 15 0 R
-/Prev 19 0 R
-/Next 35 0 R
+/Parent 27 0 R
>>
endobj
27 0 obj
<<
/Title 28 0 R
/A 25 0 R
-/Parent 19 0 R
-/Prev 23 0 R
+/Parent 23 0 R
+/Next 35 0 R
+/First 31 0 R
+/Last 31 0 R
+/Count -1
>>
endobj
23 0 obj
<<
/Title 24 0 R
/A 21 0 R
-/Parent 19 0 R
-/Next 27 0 R
+/Parent 15 0 R
+/Prev 19 0 R
+/First 27 0 R
+/Last 95 0 R
+/Count 6
>>
endobj
19 0 obj
@@ -7555,31 +9315,27 @@ endobj
/Title 20 0 R
/A 17 0 R
/Parent 15 0 R
-/Next 31 0 R
-/First 23 0 R
-/Last 27 0 R
-/Count -2
+/Next 23 0 R
>>
endobj
15 0 obj
<<
/Title 16 0 R
/A 13 0 R
-/Parent 705 0 R
-/Prev 11 0 R
-/Next 51 0 R
+/Parent 955 0 R
+/Prev 3 0 R
+/Next 99 0 R
/First 19 0 R
-/Last 47 0 R
-/Count 5
+/Last 23 0 R
+/Count 8
>>
endobj
11 0 obj
<<
/Title 12 0 R
/A 9 0 R
-/Parent 705 0 R
-/Prev 3 0 R
-/Next 15 0 R
+/Parent 3 0 R
+/Prev 7 0 R
>>
endobj
7 0 obj
@@ -7587,998 +9343,1305 @@ endobj
/Title 8 0 R
/A 5 0 R
/Parent 3 0 R
+/Next 11 0 R
>>
endobj
3 0 obj
<<
/Title 4 0 R
/A 1 0 R
-/Parent 705 0 R
-/Next 11 0 R
+/Parent 955 0 R
+/Next 15 0 R
/First 7 0 R
-/Last 7 0 R
-/Count 1
+/Last 11 0 R
+/Count 2
>>
endobj
-706 0 obj
+956 0 obj
<<
-/Names [(Doc-Start) 203 0 R (Hfootnote.1) 280 0 R (Hfootnote.10) 504 0 R (Hfootnote.11) 538 0 R (Hfootnote.2) 326 0 R (Hfootnote.3) 336 0 R]
-/Limits [(Doc-Start) (Hfootnote.3)]
+/Names [(Doc-Start) 294 0 R (Hfootnote.1) 409 0 R (Hfootnote.2) 458 0 R (Hfootnote.3) 491 0 R (Hfootnote.4) 493 0 R (Hfootnote.5) 576 0 R]
+/Limits [(Doc-Start) (Hfootnote.5)]
>>
endobj
-707 0 obj
+957 0 obj
<<
-/Names [(Hfootnote.4) 350 0 R (Hfootnote.5) 421 0 R (Hfootnote.6) 453 0 R (Hfootnote.7) 471 0 R (Hfootnote.8) 494 0 R (Hfootnote.9) 503 0 R]
-/Limits [(Hfootnote.4) (Hfootnote.9)]
+/Names [(Hfootnote.6) 577 0 R (Item.1) 406 0 R (Item.10) 589 0 R (Item.11) 643 0 R (Item.12) 644 0 R (Item.13) 645 0 R]
+/Limits [(Hfootnote.6) (Item.13)]
>>
endobj
-708 0 obj
+958 0 obj
<<
-/Names [(Item.1) 269 0 R (Item.10) 530 0 R (Item.11) 531 0 R (Item.12) 532 0 R (Item.13) 533 0 R (Item.14) 534 0 R]
-/Limits [(Item.1) (Item.14)]
+/Names [(Item.14) 725 0 R (Item.15) 732 0 R (Item.16) 733 0 R (Item.17) 734 0 R (Item.18) 743 0 R (Item.19) 744 0 R]
+/Limits [(Item.14) (Item.19)]
>>
endobj
-709 0 obj
+959 0 obj
<<
-/Names [(Item.15) 535 0 R (Item.16) 536 0 R (Item.17) 537 0 R (Item.18) 545 0 R (Item.19) 546 0 R (Item.2) 270 0 R]
-/Limits [(Item.15) (Item.2)]
+/Names [(Item.2) 407 0 R (Item.20) 745 0 R (Item.21) 746 0 R (Item.22) 755 0 R (Item.23) 756 0 R (Item.24) 757 0 R]
+/Limits [(Item.2) (Item.24)]
>>
endobj
-710 0 obj
+960 0 obj
<<
-/Names [(Item.20) 547 0 R (Item.21) 548 0 R (Item.22) 549 0 R (Item.23) 550 0 R (Item.24) 551 0 R (Item.25) 552 0 R]
-/Limits [(Item.20) (Item.25)]
+/Names [(Item.25) 766 0 R (Item.26) 767 0 R (Item.27) 768 0 R (Item.28) 769 0 R (Item.29) 770 0 R (Item.3) 421 0 R]
+/Limits [(Item.25) (Item.3)]
>>
endobj
-711 0 obj
+961 0 obj
<<
-/Names [(Item.26) 553 0 R (Item.27) 554 0 R (Item.28) 555 0 R (Item.29) 556 0 R (Item.3) 272 0 R (Item.30) 557 0 R]
-/Limits [(Item.26) (Item.30)]
+/Names [(Item.30) 771 0 R (Item.31) 772 0 R (Item.32) 773 0 R (Item.33) 779 0 R (Item.34) 780 0 R (Item.35) 781 0 R]
+/Limits [(Item.30) (Item.35)]
>>
endobj
-712 0 obj
+962 0 obj
<<
-/Names [(Item.31) 558 0 R (Item.32) 559 0 R (Item.33) 560 0 R (Item.34) 561 0 R (Item.35) 562 0 R (Item.36) 563 0 R]
-/Limits [(Item.31) (Item.36)]
+/Names [(Item.36) 782 0 R (Item.37) 783 0 R (Item.38) 784 0 R (Item.39) 785 0 R (Item.4) 422 0 R (Item.40) 786 0 R]
+/Limits [(Item.36) (Item.40)]
>>
endobj
-713 0 obj
+963 0 obj
<<
-/Names [(Item.37) 564 0 R (Item.38) 569 0 R (Item.39) 570 0 R (Item.4) 273 0 R (Item.40) 571 0 R (Item.41) 572 0 R]
-/Limits [(Item.37) (Item.41)]
+/Names [(Item.41) 787 0 R (Item.42) 788 0 R (Item.5) 423 0 R (Item.6) 424 0 R (Item.7) 425 0 R (Item.8) 587 0 R]
+/Limits [(Item.41) (Item.8)]
>>
endobj
-714 0 obj
+964 0 obj
<<
-/Names [(Item.42) 573 0 R (Item.5) 275 0 R (Item.6) 277 0 R (Item.7) 278 0 R (Item.8) 290 0 R (Item.9) 291 0 R]
-/Limits [(Item.42) (Item.9)]
+/Names [(Item.9) 588 0 R (chapter*.3) 355 0 R (chapter.1) 2 0 R (chapter.2) 14 0 R (chapter.3) 98 0 R (chapter.4) 182 0 R]
+/Limits [(Item.9) (chapter.4)]
>>
endobj
-715 0 obj
+965 0 obj
<<
-/Names [(equation.2.1) 292 0 R (equation.2.2) 297 0 R (equation.2.3) 299 0 R (equation.2.4) 300 0 R (equation.2.5) 308 0 R (equation.2.6) 309 0 R]
-/Limits [(equation.2.1) (equation.2.6)]
+/Names [(chapter.5) 230 0 R (equation.1.2.1) 435 0 R (equation.1.2.2) 436 0 R (equation.1.2.3) 437 0 R (equation.1.2.4) 444 0 R (equation.1.2.5) 445 0 R]
+/Limits [(chapter.5) (equation.1.2.5)]
>>
endobj
-716 0 obj
+966 0 obj
<<
-/Names [(equation.2.7) 310 0 R (equation.2.8) 311 0 R (page.1) 202 0 R (page.10) 349 0 R (page.11) 354 0 R (page.12) 361 0 R]
-/Limits [(equation.2.7) (page.12)]
+/Names [(equation.1.2.6) 446 0 R (equation.1.2.7) 448 0 R (page.1) 293 0 R (page.10) 478 0 R (page.11) 490 0 R (page.12) 500 0 R]
+/Limits [(equation.1.2.6) (page.12)]
>>
endobj
-717 0 obj
+967 0 obj
<<
-/Names [(page.13) 365 0 R (page.14) 372 0 R (page.15) 377 0 R (page.16) 381 0 R (page.17) 387 0 R (page.18) 391 0 R]
+/Names [(page.13) 506 0 R (page.14) 510 0 R (page.15) 518 0 R (page.16) 524 0 R (page.17) 530 0 R (page.18) 535 0 R]
/Limits [(page.13) (page.18)]
>>
endobj
-718 0 obj
+968 0 obj
<<
-/Names [(page.19) 398 0 R (page.2) 254 0 R (page.20) 404 0 R (page.21) 410 0 R (page.22) 420 0 R (page.23) 427 0 R]
+/Names [(page.19) 539 0 R (page.2) 354 0 R (page.20) 543 0 R (page.21) 547 0 R (page.22) 552 0 R (page.23) 559 0 R]
/Limits [(page.19) (page.23)]
>>
endobj
-719 0 obj
+969 0 obj
<<
-/Names [(page.24) 431 0 R (page.25) 437 0 R (page.26) 450 0 R (page.27) 458 0 R (page.28) 464 0 R (page.29) 470 0 R]
+/Names [(page.24) 567 0 R (page.25) 575 0 R (page.26) 584 0 R (page.27) 597 0 R (page.28) 601 0 R (page.29) 607 0 R]
/Limits [(page.24) (page.29)]
>>
endobj
-720 0 obj
+970 0 obj
<<
-/Names [(page.3) 265 0 R (page.30) 475 0 R (page.31) 480 0 R (page.32) 487 0 R (page.33) 493 0 R (page.34) 501 0 R]
+/Names [(page.3) 399 0 R (page.30) 612 0 R (page.31) 618 0 R (page.32) 630 0 R (page.33) 642 0 R (page.34) 651 0 R]
/Limits [(page.3) (page.34)]
>>
endobj
-721 0 obj
+971 0 obj
<<
-/Names [(page.35) 508 0 R (page.36) 512 0 R (page.37) 516 0 R (page.38) 522 0 R (page.39) 529 0 R (page.4) 289 0 R]
+/Names [(page.35) 655 0 R (page.36) 663 0 R (page.37) 670 0 R (page.38) 675 0 R (page.39) 679 0 R (page.4) 404 0 R]
/Limits [(page.35) (page.4)]
>>
endobj
-722 0 obj
+972 0 obj
<<
-/Names [(page.40) 544 0 R (page.41) 568 0 R (page.5) 307 0 R (page.6) 318 0 R (page.7) 324 0 R (page.8) 335 0 R]
-/Limits [(page.40) (page.8)]
+/Names [(page.40) 683 0 R (page.41) 687 0 R (page.42) 692 0 R (page.43) 699 0 R (page.44) 705 0 R (page.45) 709 0 R]
+/Limits [(page.40) (page.45)]
>>
endobj
-723 0 obj
+973 0 obj
<<
-/Names [(page.9) 341 0 R (section*.1) 212 0 R (section*.10) 465 0 R (section*.11) 481 0 R (section*.2) 266 0 R (section*.3) 268 0 R]
-/Limits [(page.9) (section*.3)]
+/Names [(page.46) 713 0 R (page.47) 723 0 R (page.48) 731 0 R (page.49) 738 0 R (page.5) 420 0 R (page.50) 742 0 R]
+/Limits [(page.46) (page.50)]
>>
endobj
-724 0 obj
+974 0 obj
<<
-/Names [(section*.4) 274 0 R (section*.5) 399 0 R (section*.6) 405 0 R (section*.7) 406 0 R (section*.8) 411 0 R (section*.9) 412 0 R]
-/Limits [(section*.4) (section*.9)]
+/Names [(page.51) 753 0 R (page.52) 761 0 R (page.53) 765 0 R (page.54) 778 0 R (page.55) 792 0 R (page.56) 796 0 R]
+/Limits [(page.51) (page.56)]
>>
endobj
-725 0 obj
+975 0 obj
<<
-/Names [(section.1) 2 0 R (section.2) 10 0 R (section.3) 14 0 R (section.4) 50 0 R (section.5) 106 0 R (section.6) 154 0 R]
-/Limits [(section.1) (section.6)]
+/Names [(page.57) 800 0 R (page.58) 804 0 R (page.59) 808 0 R (page.6) 433 0 R (page.60) 813 0 R (page.61) 817 0 R]
+/Limits [(page.57) (page.61)]
>>
endobj
-726 0 obj
+976 0 obj
<<
-/Names [(section.7) 170 0 R (section.8) 178 0 R (section.9) 182 0 R (subsection.1.1) 6 0 R (subsection.3.1) 18 0 R (subsection.3.2) 30 0 R]
-/Limits [(section.7) (subsection.3.2)]
+/Names [(page.62) 821 0 R (page.63) 825 0 R (page.7) 443 0 R (page.8) 455 0 R (page.9) 473 0 R (section*.1) 316 0 R]
+/Limits [(page.62) (section*.1)]
>>
endobj
-727 0 obj
+977 0 obj
<<
-/Names [(subsection.3.3) 34 0 R (subsection.3.4) 42 0 R (subsection.3.5) 46 0 R (subsection.4.1) 54 0 R (subsection.4.2) 62 0 R (subsection.4.3) 66 0 R]
-/Limits [(subsection.3.3) (subsection.4.3)]
+/Names [(section*.10) 664 0 R (section*.11) 665 0 R (section*.12) 666 0 R (section*.13) 671 0 R (section*.2) 317 0 R (section*.4) 457 0 R]
+/Limits [(section*.10) (section*.4)]
>>
endobj
-728 0 obj
+978 0 obj
<<
-/Names [(subsection.4.4) 70 0 R (subsection.4.5) 98 0 R (subsection.4.6) 102 0 R (subsection.5.1) 110 0 R (subsection.5.2) 114 0 R (subsection.5.3) 118 0 R]
-/Limits [(subsection.4.4) (subsection.5.3)]
+/Names [(section*.8) 656 0 R (section*.9) 658 0 R (section.1.1) 6 0 R (section.1.2) 10 0 R (section.2.1) 18 0 R (section.2.2) 22 0 R]
+/Limits [(section*.8) (section.2.2)]
>>
endobj
-729 0 obj
+979 0 obj
<<
-/Names [(subsection.5.4) 122 0 R (subsection.5.5) 130 0 R (subsection.5.6) 142 0 R (subsection.6.1) 158 0 R (subsection.7.1) 174 0 R (subsubsection.3.1.1) 22 0 R]
-/Limits [(subsection.5.4) (subsubsection.3.1.1)]
+/Names [(section.3.1) 102 0 R (section.3.2) 106 0 R (section.3.3) 126 0 R (section.3.4) 174 0 R (section.4.1) 186 0 R (section.4.2) 214 0 R]
+/Limits [(section.3.1) (section.4.2)]
>>
endobj
-730 0 obj
+980 0 obj
<<
-/Names [(subsubsection.3.1.2) 26 0 R (subsubsection.3.3.1) 38 0 R (subsubsection.4.1.1) 58 0 R (subsubsection.4.4.1) 74 0 R (subsubsection.4.4.2) 78 0 R (subsubsection.4.4.3) 82 0 R]
-/Limits [(subsubsection.3.1.2) (subsubsection.4.4.3)]
+/Names [(section.5.1) 234 0 R (section.5.2) 238 0 R (section.5.3) 278 0 R (section.5.4) 282 0 R (section.5.5) 286 0 R (subsection.2.2.1) 26 0 R]
+/Limits [(section.5.1) (subsection.2.2.1)]
>>
endobj
-731 0 obj
+981 0 obj
<<
-/Names [(subsubsection.4.4.4) 86 0 R (subsubsection.4.4.5) 90 0 R (subsubsection.4.4.6) 94 0 R (subsubsection.5.4.1) 126 0 R (subsubsection.5.5.1) 134 0 R (subsubsection.5.5.2) 138 0 R]
-/Limits [(subsubsection.4.4.4) (subsubsection.5.5.2)]
+/Names [(subsection.2.2.2) 34 0 R (subsection.2.2.3) 38 0 R (subsection.2.2.4) 50 0 R (subsection.2.2.5) 66 0 R (subsection.2.2.6) 94 0 R (subsection.3.2.1) 110 0 R]
+/Limits [(subsection.2.2.2) (subsection.3.2.1)]
>>
endobj
-732 0 obj
+982 0 obj
<<
-/Names [(subsubsection.5.6.1) 146 0 R (subsubsection.5.6.2) 150 0 R (subsubsection.6.1.1) 162 0 R (subsubsection.6.1.2) 166 0 R (table.1) 422 0 R (table.2) 451 0 R]
-/Limits [(subsubsection.5.6.1) (table.2)]
+/Names [(subsection.3.2.2) 114 0 R (subsection.3.2.3) 118 0 R (subsection.3.2.4) 122 0 R (subsection.3.3.1) 130 0 R (subsection.3.3.2) 138 0 R (subsection.3.3.3) 170 0 R]
+/Limits [(subsection.3.2.2) (subsection.3.3.3)]
>>
endobj
-733 0 obj
+983 0 obj
<<
-/Names [(table.3) 452 0 R (table.4) 459 0 R]
-/Limits [(table.3) (table.4)]
+/Names [(subsection.3.4.1) 178 0 R (subsection.4.1.1) 190 0 R (subsection.4.1.2) 194 0 R (subsection.4.1.3) 198 0 R (subsection.4.1.4) 206 0 R (subsection.4.1.5) 210 0 R]
+/Limits [(subsection.3.4.1) (subsection.4.1.5)]
>>
endobj
-734 0 obj
+984 0 obj
<<
-/Kids [706 0 R 707 0 R 708 0 R 709 0 R 710 0 R 711 0 R]
-/Limits [(Doc-Start) (Item.30)]
+/Names [(subsection.4.2.1) 218 0 R (subsection.4.2.2) 222 0 R (subsection.4.2.3) 226 0 R (subsection.5.2.1) 242 0 R (subsection.5.2.2) 246 0 R (subsection.5.2.3) 254 0 R]
+/Limits [(subsection.4.2.1) (subsection.5.2.3)]
>>
endobj
-735 0 obj
+985 0 obj
<<
-/Kids [712 0 R 713 0 R 714 0 R 715 0 R 716 0 R 717 0 R]
-/Limits [(Item.31) (page.18)]
+/Names [(subsection.5.2.4) 262 0 R (subsection.5.2.5) 270 0 R (subsection.5.2.6) 274 0 R (subsubsection.2.2.1.1) 30 0 R (subsubsection.2.2.3.1) 42 0 R (subsubsection.2.2.3.2) 46 0 R]
+/Limits [(subsection.5.2.4) (subsubsection.2.2.3.2)]
>>
endobj
-736 0 obj
+986 0 obj
<<
-/Kids [718 0 R 719 0 R 720 0 R 721 0 R 722 0 R 723 0 R]
-/Limits [(page.19) (section*.3)]
+/Names [(subsubsection.2.2.4.1) 54 0 R (subsubsection.2.2.4.2) 58 0 R (subsubsection.2.2.4.3) 62 0 R (subsubsection.2.2.5.1) 70 0 R (subsubsection.2.2.5.2) 74 0 R (subsubsection.2.2.5.3) 78 0 R]
+/Limits [(subsubsection.2.2.4.1) (subsubsection.2.2.5.3)]
>>
endobj
-737 0 obj
+987 0 obj
<<
-/Kids [724 0 R 725 0 R 726 0 R 727 0 R 728 0 R 729 0 R]
-/Limits [(section*.4) (subsubsection.3.1.1)]
+/Names [(subsubsection.2.2.5.4) 82 0 R (subsubsection.2.2.5.5) 86 0 R (subsubsection.2.2.5.6) 90 0 R (subsubsection.3.3.1.1) 134 0 R (subsubsection.3.3.2.1) 142 0 R (subsubsection.3.3.2.2) 146 0 R]
+/Limits [(subsubsection.2.2.5.4) (subsubsection.3.3.2.2)]
>>
endobj
-738 0 obj
+988 0 obj
<<
-/Kids [730 0 R 731 0 R 732 0 R 733 0 R]
-/Limits [(subsubsection.3.1.2) (table.4)]
+/Names [(subsubsection.3.3.2.3) 150 0 R (subsubsection.3.3.2.4) 154 0 R (subsubsection.3.3.2.5) 158 0 R (subsubsection.3.3.2.6) 162 0 R (subsubsection.3.3.2.7) 166 0 R (subsubsection.4.1.3.1) 202 0 R]
+/Limits [(subsubsection.3.3.2.3) (subsubsection.4.1.3.1)]
>>
endobj
-739 0 obj
+989 0 obj
<<
-/Kids [734 0 R 735 0 R 736 0 R 737 0 R 738 0 R]
-/Limits [(Doc-Start) (table.4)]
+/Names [(subsubsection.5.2.2.1) 250 0 R (subsubsection.5.2.3.1) 258 0 R (subsubsection.5.2.4.1) 266 0 R (subtable.3.3.1) 632 0 R (subtable.3.3.2) 633 0 R (subtable.3.3.3) 634 0 R]
+/Limits [(subsubsection.5.2.2.1) (subtable.3.3.3)]
>>
endobj
-740 0 obj
+990 0 obj
<<
-/Dests 739 0 R
+/Names [(subtable.3.3.4) 635 0 R (table.caption.14) 724 0 R (table.caption.15) 754 0 R (table.caption.5) 585 0 R (table.caption.6) 590 0 R (table.caption.7) 631 0 R]
+/Limits [(subtable.3.3.4) (table.caption.7)]
>>
endobj
-741 0 obj
+991 0 obj
+<<
+/Kids [956 0 R 957 0 R 958 0 R 959 0 R 960 0 R 961 0 R]
+/Limits [(Doc-Start) (Item.35)]
+>>
+endobj
+992 0 obj
+<<
+/Kids [962 0 R 963 0 R 964 0 R 965 0 R 966 0 R 967 0 R]
+/Limits [(Item.36) (page.18)]
+>>
+endobj
+993 0 obj
+<<
+/Kids [968 0 R 969 0 R 970 0 R 971 0 R 972 0 R 973 0 R]
+/Limits [(page.19) (page.50)]
+>>
+endobj
+994 0 obj
+<<
+/Kids [974 0 R 975 0 R 976 0 R 977 0 R 978 0 R 979 0 R]
+/Limits [(page.51) (section.4.2)]
+>>
+endobj
+995 0 obj
+<<
+/Kids [980 0 R 981 0 R 982 0 R 983 0 R 984 0 R 985 0 R]
+/Limits [(section.5.1) (subsubsection.2.2.3.2)]
+>>
+endobj
+996 0 obj
+<<
+/Kids [986 0 R 987 0 R 988 0 R 989 0 R 990 0 R]
+/Limits [(subsubsection.2.2.4.1) (table.caption.7)]
+>>
+endobj
+997 0 obj
+<<
+/Kids [991 0 R 992 0 R 993 0 R 994 0 R 995 0 R 996 0 R]
+/Limits [(Doc-Start) (table.caption.7)]
+>>
+endobj
+998 0 obj
+<<
+/Dests 997 0 R
+>>
+endobj
+999 0 obj
<<
/Type /Catalog
-/Pages 704 0 R
-/Outlines 705 0 R
-/Names 740 0 R
-/PageMode/FullScreen
-/OpenAction 185 0 R
+/Pages 954 0 R
+/Outlines 955 0 R
+/Names 998 0 R
+/PageMode/FullScreen/PageLabels<</Nums[0<</S/D>>1<</S/D>>2<</S/D>>]>>
+/OpenAction 289 0 R
>>
endobj
-742 0 obj
+1000 0 obj
<<
/Producer (MiKTeX pdfTeX-1.40.24)
-/Author(\376\377\000A\000n\000d\000r\000e\000w\000\040\000P\000a\000r\000s\000l\000o\000e\000,\000\040\000\050\000a\000j\000p\000a\000r\000s\000l\000o\000e\000@\000g\000m\000a\000i\000l\000.\000c\000o\000m\000\051)/Title(\376\377\000d\000i\000f\000f\000c\000o\000e\000f\000f\000\040\000\040\000a\000\040\000L\000a\000T\000e\000X\000\040\000p\000a\000c\000k\000a\000g\000e\000\040\000t\000o\000\040\000e\000a\000s\000e\000\040\000t\000h\000e\000\040\000\040\000w\000r\000i\000t\000i\000n\000g\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l\000\040\000c\000o\000e\000f\000f\000i\000c\000i\000e\000n\000t\000s\000\040\000\040\000V\000e\000r\000s\000i\000o\000n\000\040\0004\000.\0001)/Subject()/Creator(LaTeX with hyperref)/Keywords()
-/CreationDate (D:20220614203948+12'00')
-/ModDate (D:20220614203948+12'00')
+/Author(\376\377\000A\000n\000d\000r\000e\000w\000\040\000P\000a\000r\000s\000l\000o\000e\000,\000\040\000\050\000a\000j\000p\000a\000r\000s\000l\000o\000e\000@\000g\000m\000a\000i\000l\000.\000c\000o\000m\000\051)/Title(\376\377\000d\000i\000f\000f\000c\000o\000e\000f\000f\000\040\000\040\000a\000\040\000L\000a\000T\000e\000X\000\040\000p\000a\000c\000k\000a\000g\000e\000\040\000t\000o\000\040\000e\000a\000s\000e\000\040\000t\000h\000e\000\040\000\040\000w\000r\000i\000t\000i\000n\000g\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l\000\040\000c\000o\000e\000f\000f\000i\000c\000i\000e\000n\000t\000s\000\040\000\040\000V\000e\000r\000s\000i\000o\000n\000\040\0005\000.\0000)/Subject()/Creator(LaTeX with hyperref)/Keywords()
+/CreationDate (D:20230110174811+13'00')
+/ModDate (D:20230110174811+13'00')
/Trapped /False
-/PTEX.Fullbanner (This is MiKTeX-pdfTeX 4.10.0 (1.40.24))
+/PTEX.Fullbanner (This is MiKTeX-pdfTeX 4.13.0 (1.40.24))
>>
endobj
xref
-0 743
+0 1001
0000000000 65535 f
0000000015 00000 n
-0000022271 00000 n
-0000737382 00000 n
+0000040363 00000 n
+0000786661 00000 n
0000000060 00000 n
0000000159 00000 n
-0000026666 00000 n
-0000737325 00000 n
-0000000209 00000 n
-0000000336 00000 n
-0000030524 00000 n
-0000737239 00000 n
-0000000381 00000 n
-0000000593 00000 n
-0000040205 00000 n
-0000737115 00000 n
-0000000639 00000 n
-0000000790 00000 n
-0000040266 00000 n
-0000737004 00000 n
-0000000841 00000 n
-0000001060 00000 n
-0000044581 00000 n
-0000736930 00000 n
-0000001116 00000 n
-0000001234 00000 n
-0000047379 00000 n
-0000736856 00000 n
-0000001290 00000 n
-0000001433 00000 n
-0000047440 00000 n
-0000736769 00000 n
-0000001484 00000 n
-0000001721 00000 n
-0000051005 00000 n
-0000736645 00000 n
-0000001772 00000 n
-0000001923 00000 n
-0000053890 00000 n
-0000736584 00000 n
-0000001979 00000 n
-0000002099 00000 n
-0000053951 00000 n
-0000736497 00000 n
-0000002150 00000 n
-0000002326 00000 n
-0000054012 00000 n
-0000736423 00000 n
-0000002377 00000 n
-0000002656 00000 n
-0000057616 00000 n
-0000736297 00000 n
-0000002702 00000 n
-0000002840 00000 n
-0000060750 00000 n
-0000736186 00000 n
-0000002891 00000 n
-0000003062 00000 n
-0000064132 00000 n
-0000736125 00000 n
-0000003118 00000 n
-0000003291 00000 n
-0000064193 00000 n
-0000736038 00000 n
-0000003342 00000 n
-0000003533 00000 n
-0000067206 00000 n
-0000735951 00000 n
-0000003584 00000 n
-0000003737 00000 n
-0000070034 00000 n
-0000735827 00000 n
-0000003788 00000 n
-0000003969 00000 n
-0000073389 00000 n
-0000735753 00000 n
-0000004025 00000 n
-0000004235 00000 n
-0000073450 00000 n
-0000735666 00000 n
-0000004291 00000 n
-0000004535 00000 n
-0000076386 00000 n
-0000735579 00000 n
-0000004591 00000 n
-0000004724 00000 n
-0000076447 00000 n
-0000735492 00000 n
-0000004780 00000 n
-0000004971 00000 n
-0000079807 00000 n
-0000735405 00000 n
-0000005027 00000 n
-0000005312 00000 n
-0000083380 00000 n
-0000735331 00000 n
-0000005368 00000 n
-0000005521 00000 n
-0000086832 00000 n
-0000735242 00000 n
-0000005572 00000 n
-0000005852 00000 n
-0000090432 00000 n
-0000735165 00000 n
-0000005904 00000 n
-0000006000 00000 n
-0000090494 00000 n
-0000735035 00000 n
-0000006047 00000 n
-0000006257 00000 n
-0000090556 00000 n
-0000734956 00000 n
-0000006309 00000 n
-0000006549 00000 n
-0000104394 00000 n
-0000734863 00000 n
-0000006601 00000 n
-0000006715 00000 n
-0000104518 00000 n
-0000734770 00000 n
-0000006767 00000 n
-0000006916 00000 n
-0000108122 00000 n
-0000734638 00000 n
-0000006968 00000 n
-0000007209 00000 n
-0000108184 00000 n
-0000734573 00000 n
-0000007266 00000 n
-0000007486 00000 n
-0000111265 00000 n
-0000734441 00000 n
-0000007538 00000 n
-0000007657 00000 n
-0000117087 00000 n
-0000734362 00000 n
-0000007714 00000 n
-0000007979 00000 n
-0000120290 00000 n
-0000734283 00000 n
-0000008036 00000 n
-0000008285 00000 n
-0000124035 00000 n
-0000734165 00000 n
-0000008337 00000 n
-0000008459 00000 n
-0000127229 00000 n
-0000734086 00000 n
-0000008516 00000 n
-0000008719 00000 n
-0000127291 00000 n
-0000734007 00000 n
-0000008776 00000 n
-0000008902 00000 n
-0000130956 00000 n
-0000733876 00000 n
-0000008949 00000 n
-0000009159 00000 n
-0000131017 00000 n
-0000733772 00000 n
-0000009211 00000 n
-0000009297 00000 n
-0000134299 00000 n
-0000733693 00000 n
-0000009354 00000 n
-0000009518 00000 n
-0000134361 00000 n
-0000733614 00000 n
-0000009575 00000 n
-0000009671 00000 n
-0000137349 00000 n
-0000733483 00000 n
-0000009718 00000 n
-0000009804 00000 n
-0000137411 00000 n
-0000733418 00000 n
-0000009856 00000 n
-0000009972 00000 n
-0000147771 00000 n
-0000733325 00000 n
-0000010019 00000 n
-0000010153 00000 n
-0000151767 00000 n
-0000733246 00000 n
-0000010200 00000 n
-0000010281 00000 n
-0000012024 00000 n
-0000012244 00000 n
-0000012396 00000 n
-0000012553 00000 n
-0000012705 00000 n
-0000012857 00000 n
-0000013014 00000 n
-0000013175 00000 n
-0000013335 00000 n
-0000013488 00000 n
-0000013644 00000 n
-0000013803 00000 n
-0000013960 00000 n
-0000016850 00000 n
-0000014302 00000 n
-0000010331 00000 n
-0000014117 00000 n
-0000014178 00000 n
-0000714038 00000 n
-0000704012 00000 n
-0000702898 00000 n
-0000708463 00000 n
-0000699552 00000 n
-0000716265 00000 n
-0000721561 00000 n
-0000730930 00000 n
-0000014240 00000 n
-0000698439 00000 n
-0000697325 00000 n
-0000701784 00000 n
-0000712923 00000 n
-0000732094 00000 n
-0000017002 00000 n
-0000017159 00000 n
-0000017319 00000 n
-0000017476 00000 n
-0000017633 00000 n
-0000017790 00000 n
-0000017951 00000 n
-0000018112 00000 n
-0000018273 00000 n
-0000018434 00000 n
-0000018595 00000 n
-0000018756 00000 n
-0000018913 00000 n
-0000019070 00000 n
-0000019222 00000 n
-0000019379 00000 n
-0000019536 00000 n
-0000019692 00000 n
-0000019849 00000 n
-0000020010 00000 n
-0000020167 00000 n
-0000020328 00000 n
-0000020489 00000 n
-0000020646 00000 n
-0000020807 00000 n
-0000020968 00000 n
-0000021120 00000 n
-0000021276 00000 n
-0000021437 00000 n
-0000021598 00000 n
-0000021750 00000 n
-0000021907 00000 n
-0000022058 00000 n
-0000022331 00000 n
-0000016454 00000 n
-0000014517 00000 n
-0000022210 00000 n
-0000706238 00000 n
-0000024828 00000 n
-0000024979 00000 n
-0000025135 00000 n
-0000025297 00000 n
-0000025743 00000 n
-0000025897 00000 n
-0000026850 00000 n
-0000024648 00000 n
-0000022455 00000 n
-0000026048 00000 n
-0000026109 00000 n
-0000709578 00000 n
-0000026171 00000 n
-0000026233 00000 n
-0000026295 00000 n
-0000718934 00000 n
-0000026357 00000 n
-0000026419 00000 n
-0000026481 00000 n
-0000026542 00000 n
-0000025520 00000 n
+0000040423 00000 n
+0000786591 00000 n
+0000000206 00000 n
+0000000333 00000 n
+0000048092 00000 n
+0000786520 00000 n
+0000000380 00000 n
+0000000602 00000 n
+0000056673 00000 n
+0000786397 00000 n
+0000000648 00000 n
+0000000764 00000 n
+0000056796 00000 n
+0000786323 00000 n
+0000000812 00000 n
+0000000892 00000 n
+0000060859 00000 n
+0000786213 00000 n
+0000000940 00000 n
+0000001048 00000 n
+0000064865 00000 n
+0000786102 00000 n
+0000001101 00000 n
+0000001330 00000 n
+0000073618 00000 n
+0000786041 00000 n
+0000001388 00000 n
+0000001541 00000 n
+0000073679 00000 n
+0000785954 00000 n
+0000001594 00000 n
+0000001780 00000 n
+0000076726 00000 n
+0000785830 00000 n
+0000001833 00000 n
+0000002034 00000 n
+0000079401 00000 n
+0000785756 00000 n
+0000002092 00000 n
+0000002321 00000 n
+0000082899 00000 n
+0000785682 00000 n
+0000002379 00000 n
+0000002567 00000 n
+0000082960 00000 n
+0000785558 00000 n
+0000002620 00000 n
+0000002907 00000 n
+0000086256 00000 n
+0000785484 00000 n
+0000002965 00000 n
+0000003095 00000 n
+0000086317 00000 n
+0000785397 00000 n
+0000003153 00000 n
+0000003344 00000 n
+0000089793 00000 n
+0000785323 00000 n
+0000003402 00000 n
+0000003629 00000 n
+0000092858 00000 n
+0000785199 00000 n
+0000003682 00000 n
+0000003873 00000 n
+0000095710 00000 n
+0000785125 00000 n
+0000003931 00000 n
+0000004185 00000 n
+0000095771 00000 n
+0000785038 00000 n
+0000004243 00000 n
+0000004502 00000 n
+0000098842 00000 n
+0000784951 00000 n
+0000004560 00000 n
+0000004685 00000 n
+0000101398 00000 n
+0000784864 00000 n
+0000004743 00000 n
+0000004886 00000 n
+0000104783 00000 n
+0000784777 00000 n
+0000004944 00000 n
+0000005239 00000 n
+0000104844 00000 n
+0000784703 00000 n
+0000005297 00000 n
+0000005506 00000 n
+0000108242 00000 n
+0000784629 00000 n
+0000005559 00000 n
+0000005810 00000 n
+0000115720 00000 n
+0000784500 00000 n
+0000005856 00000 n
+0000006059 00000 n
+0000115781 00000 n
+0000784422 00000 n
+0000006108 00000 n
+0000006252 00000 n
+0000119614 00000 n
+0000784292 00000 n
+0000006301 00000 n
+0000006519 00000 n
+0000134293 00000 n
+0000784213 00000 n
+0000006573 00000 n
+0000006906 00000 n
+0000138364 00000 n
+0000784120 00000 n
+0000006960 00000 n
+0000007283 00000 n
+0000138426 00000 n
+0000784027 00000 n
+0000007337 00000 n
+0000007650 00000 n
+0000142366 00000 n
+0000783948 00000 n
+0000007704 00000 n
+0000008030 00000 n
+0000142428 00000 n
+0000783818 00000 n
+0000008079 00000 n
+0000008315 00000 n
+0000146321 00000 n
+0000783700 00000 n
+0000008369 00000 n
+0000008501 00000 n
+0000149895 00000 n
+0000783635 00000 n
+0000008560 00000 n
+0000008717 00000 n
+0000149956 00000 n
+0000783503 00000 n
+0000008771 00000 n
+0000008938 00000 n
+0000155201 00000 n
+0000783424 00000 n
+0000008997 00000 n
+0000009179 00000 n
+0000155325 00000 n
+0000783331 00000 n
+0000009238 00000 n
+0000009495 00000 n
+0000157957 00000 n
+0000783238 00000 n
+0000009554 00000 n
+0000009726 00000 n
+0000160649 00000 n
+0000783145 00000 n
+0000009785 00000 n
+0000010012 00000 n
+0000162921 00000 n
+0000783052 00000 n
+0000010071 00000 n
+0000010250 00000 n
+0000165878 00000 n
+0000782959 00000 n
+0000010309 00000 n
+0000010506 00000 n
+0000165940 00000 n
+0000782880 00000 n
+0000010565 00000 n
+0000010796 00000 n
+0000168865 00000 n
+0000782801 00000 n
+0000010850 00000 n
+0000010989 00000 n
+0000172532 00000 n
+0000782685 00000 n
+0000011038 00000 n
+0000011228 00000 n
+0000175802 00000 n
+0000782620 00000 n
+0000011282 00000 n
+0000011472 00000 n
+0000179370 00000 n
+0000782489 00000 n
+0000011519 00000 n
+0000011701 00000 n
+0000179432 00000 n
+0000782372 00000 n
+0000011750 00000 n
+0000011866 00000 n
+0000183070 00000 n
+0000782293 00000 n
+0000011920 00000 n
+0000012049 00000 n
+0000183194 00000 n
+0000782200 00000 n
+0000012103 00000 n
+0000012260 00000 n
+0000186968 00000 n
+0000782068 00000 n
+0000012314 00000 n
+0000012529 00000 n
+0000189926 00000 n
+0000782003 00000 n
+0000012588 00000 n
+0000012727 00000 n
+0000189988 00000 n
+0000781910 00000 n
+0000012781 00000 n
+0000012930 00000 n
+0000193044 00000 n
+0000781831 00000 n
+0000012984 00000 n
+0000013090 00000 n
+0000193354 00000 n
+0000781714 00000 n
+0000013139 00000 n
+0000013235 00000 n
+0000196740 00000 n
+0000781635 00000 n
+0000013289 00000 n
+0000013418 00000 n
+0000196864 00000 n
+0000781542 00000 n
+0000013472 00000 n
+0000013662 00000 n
+0000199481 00000 n
+0000781463 00000 n
+0000013716 00000 n
+0000013865 00000 n
+0000201315 00000 n
+0000781345 00000 n
+0000013912 00000 n
+0000013998 00000 n
+0000201377 00000 n
+0000781266 00000 n
+0000014047 00000 n
+0000014138 00000 n
+0000204697 00000 n
+0000781135 00000 n
+0000014187 00000 n
+0000014283 00000 n
+0000205915 00000 n
+0000781056 00000 n
+0000014337 00000 n
+0000014497 00000 n
+0000205977 00000 n
+0000780924 00000 n
+0000014551 00000 n
+0000014794 00000 n
+0000207264 00000 n
+0000780859 00000 n
+0000014853 00000 n
+0000014949 00000 n
+0000207325 00000 n
+0000780727 00000 n
+0000015003 00000 n
+0000015236 00000 n
+0000208572 00000 n
+0000780662 00000 n
+0000015295 00000 n
+0000015391 00000 n
+0000208634 00000 n
+0000780530 00000 n
+0000015445 00000 n
+0000015643 00000 n
+0000208696 00000 n
+0000780465 00000 n
+0000015702 00000 n
+0000015798 00000 n
+0000208758 00000 n
+0000780372 00000 n
+0000015852 00000 n
+0000015997 00000 n
+0000210030 00000 n
+0000780293 00000 n
+0000016051 00000 n
+0000016216 00000 n
+0000210092 00000 n
+0000780200 00000 n
+0000016265 00000 n
+0000016437 00000 n
+0000213090 00000 n
+0000780107 00000 n
+0000016486 00000 n
+0000016640 00000 n
+0000214744 00000 n
+0000780028 00000 n
+0000016689 00000 n
+0000016848 00000 n
+0000017342 00000 n
+0000017577 00000 n
+0000016898 00000 n
+0000017454 00000 n
+0000017515 00000 n
+0000761853 00000 n
+0000750714 00000 n
+0000749600 00000 n
+0000755165 00000 n
+0000778375 00000 n
+0000019208 00000 n
+0000019096 00000 n
+0000017688 00000 n
+0000745139 00000 n
+0000760738 00000 n
+0000748486 00000 n
+0000752940 00000 n
+0000776638 00000 n
+0000768501 00000 n
+0000774171 00000 n
+0000766749 00000 n
+0000021896 00000 n
+0000022050 00000 n
+0000022327 00000 n
+0000021756 00000 n
+0000019371 00000 n
+0000022204 00000 n
+0000022265 00000 n
+0000024399 00000 n
+0000024550 00000 n
+0000024703 00000 n
+0000024857 00000 n
+0000025009 00000 n
+0000025163 00000 n
+0000025317 00000 n
+0000025475 00000 n
+0000025639 00000 n
+0000025797 00000 n
+0000025955 00000 n
+0000026119 00000 n
+0000026282 00000 n
+0000026440 00000 n
0000026604 00000 n
-0000026726 00000 n
-0000705126 00000 n
-0000026788 00000 n
-0000707350 00000 n
-0000700666 00000 n
-0000029871 00000 n
-0000030028 00000 n
-0000030184 00000 n
-0000030831 00000 n
-0000029723 00000 n
-0000027039 00000 n
-0000030339 00000 n
-0000030400 00000 n
-0000030462 00000 n
-0000030585 00000 n
-0000720686 00000 n
-0000729698 00000 n
-0000727231 00000 n
-0000722628 00000 n
-0000030647 00000 n
-0000718054 00000 n
-0000030709 00000 n
-0000030769 00000 n
-0000728465 00000 n
-0000034700 00000 n
-0000036198 00000 n
-0000035158 00000 n
-0000034568 00000 n
-0000031033 00000 n
-0000034851 00000 n
-0000034912 00000 n
-0000034974 00000 n
-0000035035 00000 n
-0000035096 00000 n
-0000723695 00000 n
-0000725998 00000 n
-0000724758 00000 n
+0000026767 00000 n
+0000026931 00000 n
+0000027088 00000 n
+0000027252 00000 n
+0000027416 00000 n
+0000027580 00000 n
+0000027744 00000 n
+0000027908 00000 n
+0000028072 00000 n
+0000028230 00000 n
+0000028382 00000 n
+0000028536 00000 n
+0000028690 00000 n
+0000028847 00000 n
+0000029005 00000 n
+0000029159 00000 n
+0000029317 00000 n
+0000031660 00000 n
+0000029594 00000 n
+0000024019 00000 n
+0000022477 00000 n
+0000029471 00000 n
+0000029532 00000 n
+0000746253 00000 n
+0000031818 00000 n
+0000031982 00000 n
+0000032140 00000 n
+0000032303 00000 n
+0000032467 00000 n
+0000032631 00000 n
+0000032795 00000 n
+0000032959 00000 n
+0000033123 00000 n
+0000033287 00000 n
+0000033445 00000 n
+0000033599 00000 n
+0000033756 00000 n
+0000033908 00000 n
+0000034061 00000 n
+0000034219 00000 n
+0000034377 00000 n
+0000034535 00000 n
+0000034699 00000 n
+0000034857 00000 n
+0000035015 00000 n
+0000035169 00000 n
+0000035327 00000 n
+0000035483 00000 n
+0000035641 00000 n
+0000035793 00000 n
+0000035947 00000 n
+0000036100 00000 n
+0000036258 00000 n
0000036416 00000 n
-0000036066 00000 n
-0000035386 00000 n
-0000036355 00000 n
-0000039840 00000 n
-0000039992 00000 n
-0000040389 00000 n
-0000039700 00000 n
-0000036540 00000 n
-0000040144 00000 n
-0000731901 00000 n
-0000040327 00000 n
-0000732211 00000 n
-0000043900 00000 n
-0000044054 00000 n
-0000044206 00000 n
-0000044368 00000 n
-0000044704 00000 n
-0000043744 00000 n
-0000040630 00000 n
-0000044520 00000 n
-0000044642 00000 n
-0000715152 00000 n
-0000047501 00000 n
-0000047206 00000 n
-0000044946 00000 n
-0000047318 00000 n
-0000711809 00000 n
-0000050487 00000 n
-0000050639 00000 n
-0000050792 00000 n
-0000051127 00000 n
-0000050339 00000 n
-0000047691 00000 n
-0000050944 00000 n
-0000051065 00000 n
-0000054073 00000 n
-0000053717 00000 n
-0000051382 00000 n
-0000053829 00000 n
-0000057248 00000 n
-0000057403 00000 n
-0000060532 00000 n
-0000057677 00000 n
-0000057108 00000 n
-0000054262 00000 n
-0000057555 00000 n
-0000060811 00000 n
-0000060400 00000 n
-0000057853 00000 n
-0000060689 00000 n
-0000732328 00000 n
-0000063757 00000 n
-0000063909 00000 n
-0000064254 00000 n
-0000063617 00000 n
-0000061000 00000 n
-0000064071 00000 n
-0000066993 00000 n
-0000067267 00000 n
-0000066861 00000 n
-0000064456 00000 n
-0000067145 00000 n
-0000070095 00000 n
-0000069861 00000 n
-0000067456 00000 n
-0000069973 00000 n
-0000073014 00000 n
-0000073166 00000 n
-0000073511 00000 n
-0000072874 00000 n
-0000070258 00000 n
-0000073328 00000 n
-0000076508 00000 n
-0000076213 00000 n
-0000073700 00000 n
-0000076325 00000 n
-0000079430 00000 n
-0000079585 00000 n
-0000083157 00000 n
-0000079930 00000 n
-0000079290 00000 n
-0000076710 00000 n
-0000079746 00000 n
-0000079868 00000 n
-0000732445 00000 n
-0000083564 00000 n
-0000083025 00000 n
-0000080093 00000 n
-0000083319 00000 n
-0000083441 00000 n
-0000083502 00000 n
-0000086893 00000 n
-0000086535 00000 n
-0000083766 00000 n
-0000086647 00000 n
-0000086708 00000 n
-0000086770 00000 n
-0000089763 00000 n
-0000089915 00000 n
-0000090067 00000 n
-0000090217 00000 n
-0000090680 00000 n
-0000089607 00000 n
-0000087108 00000 n
-0000090371 00000 n
-0000090618 00000 n
-0000093261 00000 n
-0000093038 00000 n
-0000093323 00000 n
-0000092906 00000 n
-0000090882 00000 n
-0000093200 00000 n
-0000096322 00000 n
-0000096149 00000 n
-0000093473 00000 n
-0000096261 00000 n
-0000719810 00000 n
-0000102970 00000 n
-0000099556 00000 n
-0000099383 00000 n
-0000096485 00000 n
-0000099495 00000 n
-0000732562 00000 n
-0000103124 00000 n
-0000103272 00000 n
-0000103422 00000 n
-0000103572 00000 n
-0000103722 00000 n
-0000103884 00000 n
-0000104034 00000 n
-0000104184 00000 n
-0000104704 00000 n
-0000102774 00000 n
-0000099720 00000 n
-0000104333 00000 n
-0000104456 00000 n
-0000104580 00000 n
-0000104642 00000 n
-0000107909 00000 n
-0000108307 00000 n
-0000107777 00000 n
-0000104946 00000 n
-0000108061 00000 n
-0000108245 00000 n
-0000110987 00000 n
-0000111326 00000 n
-0000110855 00000 n
-0000108484 00000 n
-0000111142 00000 n
-0000111203 00000 n
-0000114215 00000 n
-0000114492 00000 n
-0000114083 00000 n
-0000111463 00000 n
-0000114369 00000 n
-0000114430 00000 n
-0000117149 00000 n
-0000116914 00000 n
-0000114707 00000 n
-0000117026 00000 n
-0000120074 00000 n
-0000120414 00000 n
-0000119942 00000 n
-0000117325 00000 n
-0000120229 00000 n
-0000120352 00000 n
-0000732679 00000 n
-0000123823 00000 n
-0000124097 00000 n
-0000123691 00000 n
-0000120603 00000 n
-0000123974 00000 n
-0000710693 00000 n
-0000127015 00000 n
-0000127415 00000 n
-0000126883 00000 n
-0000124249 00000 n
-0000127168 00000 n
-0000127353 00000 n
-0000130436 00000 n
-0000130589 00000 n
-0000130743 00000 n
-0000131202 00000 n
-0000130288 00000 n
-0000127593 00000 n
-0000130895 00000 n
-0000717382 00000 n
-0000131078 00000 n
-0000131140 00000 n
-0000134422 00000 n
-0000134126 00000 n
-0000131444 00000 n
-0000134238 00000 n
-0000137473 00000 n
-0000137176 00000 n
-0000134611 00000 n
-0000137288 00000 n
-0000140581 00000 n
-0000140408 00000 n
-0000137689 00000 n
-0000140520 00000 n
-0000732796 00000 n
-0000143929 00000 n
-0000144151 00000 n
-0000143797 00000 n
-0000140783 00000 n
-0000144090 00000 n
-0000147238 00000 n
-0000147394 00000 n
-0000147556 00000 n
-0000148390 00000 n
-0000147090 00000 n
-0000144275 00000 n
-0000147710 00000 n
-0000147833 00000 n
-0000147895 00000 n
-0000147957 00000 n
-0000148019 00000 n
-0000148081 00000 n
-0000148143 00000 n
-0000148205 00000 n
-0000148267 00000 n
-0000148329 00000 n
-0000150708 00000 n
-0000150865 00000 n
-0000152387 00000 n
-0000150568 00000 n
-0000148566 00000 n
-0000151026 00000 n
-0000151087 00000 n
-0000151149 00000 n
-0000151211 00000 n
-0000151273 00000 n
-0000151335 00000 n
-0000151397 00000 n
-0000151459 00000 n
-0000151521 00000 n
-0000151583 00000 n
-0000151644 00000 n
-0000151706 00000 n
-0000151829 00000 n
-0000151891 00000 n
-0000151953 00000 n
-0000152015 00000 n
-0000152077 00000 n
-0000152139 00000 n
-0000152201 00000 n
-0000152263 00000 n
-0000152325 00000 n
-0000153942 00000 n
-0000153459 00000 n
-0000152525 00000 n
-0000153571 00000 n
-0000153632 00000 n
-0000153694 00000 n
-0000153756 00000 n
-0000153818 00000 n
-0000153880 00000 n
-0000154080 00000 n
-0000694952 00000 n
-0000154137 00000 n
-0000695669 00000 n
-0000154570 00000 n
-0000154595 00000 n
-0000154958 00000 n
-0000696335 00000 n
-0000155423 00000 n
-0000695966 00000 n
-0000155448 00000 n
-0000696116 00000 n
-0000156165 00000 n
-0000156226 00000 n
-0000156251 00000 n
-0000695457 00000 n
-0000156288 00000 n
-0000156984 00000 n
-0000157642 00000 n
-0000158285 00000 n
-0000158648 00000 n
-0000159330 00000 n
-0000160450 00000 n
-0000161038 00000 n
-0000161161 00000 n
-0000161804 00000 n
-0000162371 00000 n
-0000162494 00000 n
-0000162885 00000 n
-0000163650 00000 n
-0000164187 00000 n
-0000164740 00000 n
-0000165341 00000 n
-0000166004 00000 n
-0000166367 00000 n
-0000166694 00000 n
-0000167254 00000 n
-0000167672 00000 n
-0000168239 00000 n
-0000168336 00000 n
-0000175800 00000 n
-0000176022 00000 n
-0000207371 00000 n
-0000207838 00000 n
-0000236483 00000 n
-0000236882 00000 n
-0000259557 00000 n
-0000259799 00000 n
-0000282995 00000 n
-0000283273 00000 n
-0000287212 00000 n
-0000287590 00000 n
-0000299504 00000 n
-0000299881 00000 n
-0000302464 00000 n
-0000302699 00000 n
-0000312762 00000 n
-0000313105 00000 n
-0000317104 00000 n
-0000317351 00000 n
-0000354760 00000 n
-0000355377 00000 n
-0000377328 00000 n
-0000377609 00000 n
-0000403527 00000 n
-0000403825 00000 n
-0000421920 00000 n
-0000422164 00000 n
-0000444985 00000 n
-0000445267 00000 n
-0000468398 00000 n
-0000468718 00000 n
-0000498649 00000 n
-0000499040 00000 n
-0000527196 00000 n
-0000527559 00000 n
-0000546178 00000 n
-0000546492 00000 n
-0000563822 00000 n
-0000564085 00000 n
-0000567552 00000 n
-0000567836 00000 n
-0000570356 00000 n
-0000570603 00000 n
-0000573704 00000 n
-0000573967 00000 n
-0000599537 00000 n
-0000599869 00000 n
-0000630315 00000 n
-0000630882 00000 n
-0000648582 00000 n
-0000648823 00000 n
-0000671306 00000 n
-0000671599 00000 n
-0000694585 00000 n
-0000696400 00000 n
-0000697514 00000 n
-0000698628 00000 n
-0000699740 00000 n
-0000700862 00000 n
-0000701976 00000 n
-0000703090 00000 n
-0000704204 00000 n
-0000705316 00000 n
-0000706428 00000 n
-0000707541 00000 n
-0000708654 00000 n
-0000709769 00000 n
-0000710884 00000 n
-0000711999 00000 n
-0000713114 00000 n
-0000714229 00000 n
-0000715342 00000 n
-0000716455 00000 n
-0000717543 00000 n
-0000718253 00000 n
-0000719131 00000 n
-0000720007 00000 n
-0000720882 00000 n
-0000721757 00000 n
-0000722825 00000 n
-0000723889 00000 n
-0000724954 00000 n
-0000726188 00000 n
-0000727422 00000 n
-0000728655 00000 n
-0000729887 00000 n
-0000731120 00000 n
-0000732905 00000 n
-0000733023 00000 n
-0000733100 00000 n
-0000733170 00000 n
-0000737488 00000 n
-0000737688 00000 n
-0000737890 00000 n
-0000738058 00000 n
-0000738226 00000 n
-0000738396 00000 n
-0000738565 00000 n
-0000738735 00000 n
-0000738904 00000 n
-0000739068 00000 n
-0000739278 00000 n
-0000739462 00000 n
-0000739632 00000 n
-0000739801 00000 n
-0000739971 00000 n
-0000740139 00000 n
-0000740307 00000 n
-0000740472 00000 n
-0000740660 00000 n
-0000740854 00000 n
-0000741035 00000 n
-0000741237 00000 n
-0000741457 00000 n
-0000741681 00000 n
-0000741916 00000 n
-0000742176 00000 n
-0000742439 00000 n
-0000742669 00000 n
-0000742767 00000 n
-0000742878 00000 n
-0000742987 00000 n
-0000743099 00000 n
-0000743223 00000 n
-0000743328 00000 n
-0000743431 00000 n
-0000743469 00000 n
-0000743596 00000 n
+0000036580 00000 n
+0000036738 00000 n
+0000036902 00000 n
+0000037060 00000 n
+0000037224 00000 n
+0000037382 00000 n
+0000037540 00000 n
+0000037694 00000 n
+0000037848 00000 n
+0000038062 00000 n
+0000031216 00000 n
+0000029705 00000 n
+0000038001 00000 n
+0000040148 00000 n
+0000040669 00000 n
+0000040016 00000 n
+0000038160 00000 n
+0000040302 00000 n
+0000756280 00000 n
+0000040483 00000 n
+0000040545 00000 n
+0000751828 00000 n
+0000040607 00000 n
+0000754052 00000 n
+0000757393 00000 n
+0000043319 00000 n
+0000043478 00000 n
+0000043640 00000 n
+0000043794 00000 n
+0000043953 00000 n
+0000044482 00000 n
+0000043155 00000 n
+0000040833 00000 n
+0000044111 00000 n
+0000044172 00000 n
+0000044234 00000 n
+0000044296 00000 n
+0000044358 00000 n
+0000044420 00000 n
+0000769568 00000 n
+0000765869 00000 n
+0000778492 00000 n
+0000047874 00000 n
+0000048338 00000 n
+0000047742 00000 n
+0000044646 00000 n
+0000048031 00000 n
+0000778182 00000 n
+0000048153 00000 n
+0000048214 00000 n
+0000048276 00000 n
+0000775405 00000 n
+0000052283 00000 n
+0000052746 00000 n
+0000052151 00000 n
+0000048555 00000 n
+0000052437 00000 n
+0000052498 00000 n
+0000052560 00000 n
+0000052622 00000 n
+0000772939 00000 n
+0000052684 00000 n
+0000770635 00000 n
+0000055648 00000 n
+0000055802 00000 n
+0000056919 00000 n
+0000055492 00000 n
+0000052977 00000 n
+0000056612 00000 n
+0000771699 00000 n
+0000056734 00000 n
+0000056857 00000 n
+0000762967 00000 n
+0000056072 00000 n
+0000056343 00000 n
+0000059695 00000 n
+0000059847 00000 n
+0000060001 00000 n
+0000060159 00000 n
+0000060323 00000 n
+0000060481 00000 n
+0000060639 00000 n
+0000064650 00000 n
+0000060920 00000 n
+0000059515 00000 n
+0000057162 00000 n
+0000060798 00000 n
+0000068787 00000 n
+0000064926 00000 n
+0000064518 00000 n
+0000061111 00000 n
+0000064804 00000 n
+0000068941 00000 n
+0000069095 00000 n
+0000069249 00000 n
+0000069402 00000 n
+0000069566 00000 n
+0000069720 00000 n
+0000069874 00000 n
+0000070028 00000 n
+0000070367 00000 n
+0000068591 00000 n
+0000065117 00000 n
+0000070182 00000 n
+0000070243 00000 n
+0000747368 00000 n
+0000070305 00000 n
+0000778609 00000 n
+0000073240 00000 n
+0000073393 00000 n
+0000073739 00000 n
+0000073100 00000 n
+0000070612 00000 n
+0000073557 00000 n
+0000759624 00000 n
+0000076506 00000 n
+0000076787 00000 n
+0000076374 00000 n
+0000073942 00000 n
+0000076665 00000 n
+0000079462 00000 n
+0000079228 00000 n
+0000076964 00000 n
+0000079340 00000 n
+0000082214 00000 n
+0000082368 00000 n
+0000082522 00000 n
+0000082684 00000 n
+0000083021 00000 n
+0000082058 00000 n
+0000079652 00000 n
+0000082838 00000 n
+0000086041 00000 n
+0000089261 00000 n
+0000086378 00000 n
+0000085909 00000 n
+0000083251 00000 n
+0000086195 00000 n
+0000089425 00000 n
+0000089578 00000 n
+0000089854 00000 n
+0000089113 00000 n
+0000086554 00000 n
+0000089732 00000 n
+0000778726 00000 n
+0000092919 00000 n
+0000092685 00000 n
+0000090044 00000 n
+0000092797 00000 n
+0000095831 00000 n
+0000095537 00000 n
+0000093096 00000 n
+0000095649 00000 n
+0000098903 00000 n
+0000098669 00000 n
+0000096035 00000 n
+0000098781 00000 n
+0000101459 00000 n
+0000101225 00000 n
+0000099093 00000 n
+0000101337 00000 n
+0000104565 00000 n
+0000104905 00000 n
+0000104433 00000 n
+0000101649 00000 n
+0000104722 00000 n
+0000767625 00000 n
+0000107868 00000 n
+0000108020 00000 n
+0000108303 00000 n
+0000107728 00000 n
+0000105134 00000 n
+0000108181 00000 n
+0000778843 00000 n
+0000111674 00000 n
+0000111828 00000 n
+0000111985 00000 n
+0000112199 00000 n
+0000111526 00000 n
+0000108480 00000 n
+0000112138 00000 n
+0000115048 00000 n
+0000115202 00000 n
+0000115507 00000 n
+0000115354 00000 n
+0000115966 00000 n
+0000114892 00000 n
+0000112363 00000 n
+0000115659 00000 n
+0000115842 00000 n
+0000115904 00000 n
+0000119024 00000 n
+0000119178 00000 n
+0000119335 00000 n
+0000119860 00000 n
+0000118876 00000 n
+0000116144 00000 n
+0000119491 00000 n
+0000119552 00000 n
+0000777237 00000 n
+0000119675 00000 n
+0000119736 00000 n
+0000119798 00000 n
+0000124746 00000 n
+0000122892 00000 n
+0000123049 00000 n
+0000123206 00000 n
+0000123421 00000 n
+0000122744 00000 n
+0000120012 00000 n
+0000123360 00000 n
+0000124808 00000 n
+0000124573 00000 n
+0000123547 00000 n
+0000124685 00000 n
+0000764080 00000 n
+0000128057 00000 n
+0000128276 00000 n
+0000127925 00000 n
+0000124907 00000 n
+0000128215 00000 n
+0000778960 00000 n
+0000131234 00000 n
+0000131061 00000 n
+0000128480 00000 n
+0000131173 00000 n
+0000136731 00000 n
+0000136889 00000 n
+0000134355 00000 n
+0000134120 00000 n
+0000131398 00000 n
+0000134232 00000 n
+0000137048 00000 n
+0000137205 00000 n
+0000137362 00000 n
+0000137521 00000 n
+0000137679 00000 n
+0000137835 00000 n
+0000141533 00000 n
+0000141689 00000 n
+0000138487 00000 n
+0000136543 00000 n
+0000134506 00000 n
+0000137994 00000 n
+0000138055 00000 n
+0000138117 00000 n
+0000138178 00000 n
+0000138240 00000 n
+0000138302 00000 n
+0000141846 00000 n
+0000141999 00000 n
+0000142153 00000 n
+0000142675 00000 n
+0000141369 00000 n
+0000138667 00000 n
+0000142305 00000 n
+0000142489 00000 n
+0000142551 00000 n
+0000142613 00000 n
+0000145953 00000 n
+0000146107 00000 n
+0000146383 00000 n
+0000145813 00000 n
+0000142801 00000 n
+0000146260 00000 n
+0000150018 00000 n
+0000149598 00000 n
+0000146574 00000 n
+0000149710 00000 n
+0000149771 00000 n
+0000758508 00000 n
+0000149833 00000 n
+0000779077 00000 n
+0000152660 00000 n
+0000152301 00000 n
+0000150171 00000 n
+0000152413 00000 n
+0000152474 00000 n
+0000152536 00000 n
+0000152598 00000 n
+0000155386 00000 n
+0000155028 00000 n
+0000152836 00000 n
+0000155140 00000 n
+0000155263 00000 n
+0000158019 00000 n
+0000157784 00000 n
+0000155577 00000 n
+0000157896 00000 n
+0000160709 00000 n
+0000160476 00000 n
+0000158209 00000 n
+0000160588 00000 n
+0000162983 00000 n
+0000162748 00000 n
+0000160885 00000 n
+0000162860 00000 n
+0000166002 00000 n
+0000165705 00000 n
+0000163133 00000 n
+0000165817 00000 n
+0000779194 00000 n
+0000168927 00000 n
+0000168692 00000 n
+0000166192 00000 n
+0000168804 00000 n
+0000171989 00000 n
+0000172153 00000 n
+0000172312 00000 n
+0000172594 00000 n
+0000171841 00000 n
+0000169118 00000 n
+0000172471 00000 n
+0000175428 00000 n
+0000175582 00000 n
+0000175864 00000 n
+0000175288 00000 n
+0000172771 00000 n
+0000175741 00000 n
+0000177212 00000 n
+0000177039 00000 n
+0000175990 00000 n
+0000177151 00000 n
+0000179494 00000 n
+0000179197 00000 n
+0000177311 00000 n
+0000179309 00000 n
+0000765197 00000 n
+0000182368 00000 n
+0000182532 00000 n
+0000182691 00000 n
+0000182850 00000 n
+0000186401 00000 n
+0000183317 00000 n
+0000182212 00000 n
+0000179670 00000 n
+0000183009 00000 n
+0000183132 00000 n
+0000183255 00000 n
+0000779311 00000 n
+0000186558 00000 n
+0000187030 00000 n
+0000186261 00000 n
+0000183536 00000 n
+0000186722 00000 n
+0000186783 00000 n
+0000186845 00000 n
+0000186907 00000 n
+0000190050 00000 n
+0000189753 00000 n
+0000187194 00000 n
+0000189865 00000 n
+0000193416 00000 n
+0000192871 00000 n
+0000190241 00000 n
+0000192983 00000 n
+0000193106 00000 n
+0000193168 00000 n
+0000193230 00000 n
+0000193292 00000 n
+0000196205 00000 n
+0000196364 00000 n
+0000196523 00000 n
+0000197110 00000 n
+0000196057 00000 n
+0000193567 00000 n
+0000196679 00000 n
+0000196802 00000 n
+0000196925 00000 n
+0000196986 00000 n
+0000197048 00000 n
+0000199543 00000 n
+0000199308 00000 n
+0000197302 00000 n
+0000199420 00000 n
+0000201934 00000 n
+0000201142 00000 n
+0000199694 00000 n
+0000201254 00000 n
+0000201439 00000 n
+0000201501 00000 n
+0000201563 00000 n
+0000201625 00000 n
+0000201687 00000 n
+0000201749 00000 n
+0000201811 00000 n
+0000201872 00000 n
+0000779428 00000 n
+0000204759 00000 n
+0000203906 00000 n
+0000202046 00000 n
+0000204018 00000 n
+0000204079 00000 n
+0000204139 00000 n
+0000204201 00000 n
+0000204263 00000 n
+0000204325 00000 n
+0000204387 00000 n
+0000204449 00000 n
+0000204511 00000 n
+0000204573 00000 n
+0000204635 00000 n
+0000206039 00000 n
+0000205742 00000 n
+0000204911 00000 n
+0000205854 00000 n
+0000207387 00000 n
+0000207091 00000 n
+0000206151 00000 n
+0000207203 00000 n
+0000208820 00000 n
+0000208399 00000 n
+0000207512 00000 n
+0000208511 00000 n
+0000210154 00000 n
+0000209857 00000 n
+0000208945 00000 n
+0000209969 00000 n
+0000211169 00000 n
+0000210996 00000 n
+0000210266 00000 n
+0000211108 00000 n
+0000779545 00000 n
+0000212055 00000 n
+0000211882 00000 n
+0000211254 00000 n
+0000211994 00000 n
+0000213152 00000 n
+0000212917 00000 n
+0000212140 00000 n
+0000213029 00000 n
+0000214806 00000 n
+0000214571 00000 n
+0000213250 00000 n
+0000214683 00000 n
+0000216306 00000 n
+0000216133 00000 n
+0000214932 00000 n
+0000216245 00000 n
+0000216405 00000 n
+0000742520 00000 n
+0000216462 00000 n
+0000216895 00000 n
+0000217258 00000 n
+0000743350 00000 n
+0000217289 00000 n
+0000217343 00000 n
+0000217706 00000 n
+0000218796 00000 n
+0000743633 00000 n
+0000219327 00000 n
+0000220044 00000 n
+0000743869 00000 n
+0000220370 00000 n
+0000220697 00000 n
+0000744149 00000 n
+0000220759 00000 n
+0000743043 00000 n
+0000220784 00000 n
+0000221480 00000 n
+0000222138 00000 n
+0000222269 00000 n
+0000222890 00000 n
+0000222927 00000 n
+0000223527 00000 n
+0000224084 00000 n
+0000224727 00000 n
+0000225433 00000 n
+0000226121 00000 n
+0000226706 00000 n
+0000226823 00000 n
+0000227588 00000 n
+0000227979 00000 n
+0000228551 00000 n
+0000229037 00000 n
+0000229467 00000 n
+0000230034 00000 n
+0000230131 00000 n
+0000237595 00000 n
+0000237817 00000 n
+0000268819 00000 n
+0000269258 00000 n
+0000298760 00000 n
+0000299187 00000 n
+0000320746 00000 n
+0000321008 00000 n
+0000325683 00000 n
+0000326150 00000 n
+0000338307 00000 n
+0000338681 00000 n
+0000342130 00000 n
+0000342367 00000 n
+0000352186 00000 n
+0000352520 00000 n
+0000389655 00000 n
+0000390271 00000 n
+0000412542 00000 n
+0000412826 00000 n
+0000438904 00000 n
+0000439203 00000 n
+0000453850 00000 n
+0000454095 00000 n
+0000470573 00000 n
+0000470817 00000 n
+0000493644 00000 n
+0000493955 00000 n
+0000522993 00000 n
+0000523369 00000 n
+0000549582 00000 n
+0000549913 00000 n
+0000570006 00000 n
+0000570339 00000 n
+0000582451 00000 n
+0000582698 00000 n
+0000600028 00000 n
+0000600291 00000 n
+0000605034 00000 n
+0000605390 00000 n
+0000608008 00000 n
+0000608261 00000 n
+0000611362 00000 n
+0000611625 00000 n
+0000638964 00000 n
+0000639316 00000 n
+0000671261 00000 n
+0000671849 00000 n
+0000689549 00000 n
+0000689790 00000 n
+0000715713 00000 n
+0000716088 00000 n
+0000739667 00000 n
+0000740072 00000 n
+0000742270 00000 n
+0000744214 00000 n
+0000745328 00000 n
+0000746442 00000 n
+0000747564 00000 n
+0000748678 00000 n
+0000749792 00000 n
+0000750906 00000 n
+0000752018 00000 n
+0000753130 00000 n
+0000754243 00000 n
+0000755356 00000 n
+0000756471 00000 n
+0000757584 00000 n
+0000758699 00000 n
+0000759814 00000 n
+0000760929 00000 n
+0000762044 00000 n
+0000763157 00000 n
+0000764270 00000 n
+0000765358 00000 n
+0000766068 00000 n
+0000766946 00000 n
+0000767822 00000 n
+0000768697 00000 n
+0000769765 00000 n
+0000770830 00000 n
+0000771895 00000 n
+0000773128 00000 n
+0000774362 00000 n
+0000775595 00000 n
+0000776828 00000 n
+0000777401 00000 n
+0000779654 00000 n
+0000779772 00000 n
+0000779882 00000 n
+0000779952 00000 n
+0000786768 00000 n
+0000786966 00000 n
+0000787143 00000 n
+0000787313 00000 n
+0000787481 00000 n
+0000787649 00000 n
+0000787819 00000 n
+0000787988 00000 n
+0000788153 00000 n
+0000788330 00000 n
+0000788546 00000 n
+0000788736 00000 n
+0000788906 00000 n
+0000789075 00000 n
+0000789245 00000 n
+0000789413 00000 n
+0000789581 00000 n
+0000789751 00000 n
+0000789920 00000 n
+0000790090 00000 n
+0000790259 00000 n
+0000790432 00000 n
+0000790631 00000 n
+0000790825 00000 n
+0000791027 00000 n
+0000791238 00000 n
+0000791475 00000 n
+0000791717 00000 n
+0000791959 00000 n
+0000792201 00000 n
+0000792460 00000 n
+0000792736 00000 n
+0000793015 00000 n
+0000793297 00000 n
+0000793551 00000 n
+0000793785 00000 n
+0000793896 00000 n
+0000794005 00000 n
+0000794114 00000 n
+0000794227 00000 n
+0000794354 00000 n
+0000794477 00000 n
+0000794596 00000 n
+0000794634 00000 n
+0000794810 00000 n
trailer
-<< /Size 743
-/Root 741 0 R
-/Info 742 0 R
-/ID [<818457CE2233F702C658A2D0C8DD2795> <818457CE2233F702C658A2D0C8DD2795>] >>
+<< /Size 1001
+/Root 999 0 R
+/Info 1000 0 R
+/ID [<2B2C6DC2C3D29EAE04593FA91ECE6D22> <2B2C6DC2C3D29EAE04593FA91ECE6D22>] >>
startxref
-744573
+795788
%%EOF
diff --git a/macros/latex/contrib/diffcoeff/diffcoeff.sty b/macros/latex/contrib/diffcoeff/diffcoeff.sty
index 4d2015a6b0..d7a541c78d 100644
--- a/macros/latex/contrib/diffcoeff/diffcoeff.sty
+++ b/macros/latex/contrib/diffcoeff/diffcoeff.sty
@@ -7,96 +7,163 @@
%
% Andrew Parsloe ajparsloe@gmail.com
%
-\RequirePackage{expl3}
-\RequirePackage{xparse,l3keys2e,xtemplate}
-\ProvidesExplPackage {diffcoeff} {2022/06/14} {4.1}
- {Write differential coefficients consistently and easily.}
-%
+\DeclareRelease{v4}{}{diffcoeff4.sty}
+\DeclareCurrentRelease{}{2023/01/02}
+
+\RequirePackage{xtemplate,mleftright}
+\ProvidesExplPackage {diffcoeff} {2023/01/02} {5.0}
+ {Write differential coefficients easily and consistently.}
\keys_define:nn { diffcoeff }
{
- ISO .bool_set:N = \l__diffcoeff_ISO_bool,
- spaced .int_set:N = \l__diffcoeff_spaced_int,
- spaced .default:n = 1,
- spaced .initial:n = 0,
- def-file .tl_gset:N = \g__diffcoeff_def_tl,
- def-file .initial:n = diffcoeff,
- def-file .default:n = diffcoeff
+ spaced .int_set:N = \l__diffcoeff_spaced_int,
+ spaced .default:n = 1,
+ spaced .initial:n = 0,
+ mleftright .bool_set:N = \l__diffcoeff_mLR_bool,
+ mleftright .default:n = true,
+ mleftright .initial:n = false,
+ def-file .tl_gset:N = \g__diffcoeff_def_tl,
+ DIF .clist_set:N = \l__diffcoeff_dif_clist
+ }
+\IfFormatAtLeastTF {2020-10-01} {}
+ { \RequirePackage { xparse } }
+\IfFormatAtLeastTF {2022-06-01}
+ { \ProcessKeyOptions [ diffcoeff ] }
+ {
+ \RequirePackage { l3keys2e }
+ \ProcessKeysOptions { diffcoeff }
}
-\ProcessKeysPackageOptions { diffcoeff }
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\cs_generate_variant:Nn \tl_if_eq:nnTF { nV }
-
-\tl_new:N \l__diffcoeff_oporder_tl
+\bool_if:NT \l__diffcoeff_mLR_bool
+ { \mleftright }
+%%%%%%%%%% messages %%%%%%%%%
+\cs_new:Npn \__diffcoeff_msg_autocalc:n #1
+ {
+ in~the~order~spec.~[#1]~\msg_line_context:.~Calculation~of~the~
+ total~order~of~differentiation~fails~in~this~case.~
+ Use~the~\tl_to_str:n { \difoverride }command~to~enter~the~total~order.~
+ \msg_see_documentation_text:n {diffcoeff}
+ }
+\cs_new:Npn \__diffcoeff_msg_style:nnn #1#2#3
+ {
+ The~style~specified~in~the~current~instance,~#1,~
+ \msg_line_context:,~#3~Reverting~to~default~style~#2.
+ }
+\tl_const:Nn \c__diffcoeff_msg_vcon_tl
+ { Version~5~of~diffcoeff~does~not~support~the~use~of~ }
+\tl_const:Nn \c__diffcoeff_msg_revert_tl
+ { Or~revert~to~version~4~by~appending~[=v4]~to~the~preamble~call;~
+ for~example,~\tl_to_str:n{\usepackage}{diffcoeff}[=v4] }
+\msg_new:nnn { diffcoeff } { file-not-found } { File~#1.def~not~found. }
+\msg_new:nnn { diffcoeff } { order-spec-general }
+ { #3~followed~by~#2~\__diffcoeff_msg_autocalc:n { #1 } }
+\msg_new:nnn { diffcoeff } { unknown-style }
+ { \__diffcoeff_msg_style:nnn {#1} {#2} { is~unknown. } }
+\msg_new:nnn { diffcoeff } { wrong-style }
+ { \__diffcoeff_msg_style:nnn {#1} {#2} { conflicts~with~its~template. } }
+\msg_new:nnn { diffcoeff } { version-conflict }
+ {
+ \c__diffcoeff_msg_vcon_tl #1~\msg_line_context:.~\tl_to_str:n { #2 }
+ \msg_see_documentation_text:n {diffcoeff}~\c__diffcoeff_msg_revert_tl
+ }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\bool_new:N \l__diffcoeff_multitok_bool
+\bool_new:N \l__diffcoeff_append_bool
+\bool_new:N \l__diffcoeff_op_left_bool
+\bool_new:N \l__diffcoeff_dl_bool
+\bool_new:N \l__diffcoeff_exponent_bool
+\tl_new:N \l__diffcoeff_override_tl
+\tl_new:N \l__diffcoeff_frac_tl
\tl_new:N \l__diffcoeff_derivand_tl
-\tl_new:N \l__diffcoeff_type_tl
-\tl_new:N \l__diffcoeff_tot_order_tl
+\tl_new:N \l__diffcoeff_instance_tl
+\tl_new:N \l__diffcoeff_ord_tl
+\tl_new:N \l__diffcoeff_var_tl
+\tl_new:N \l__diffcoeff_tot_ord_tl
+\tl_new:N \l__diffcoeff_vph_tl
+\tl_new:N \l__diffcoeff_exponent_tl
\tl_new:N \l__diffcoeff_curr_num_tl
\tl_new:N \l__diffcoeff_curr_var_tl
\tl_new:N \l__diffcoeff_paren_tl
-
-\tl_const:Nn \c__diffcoeff_digits_tl { 1234567890 }
-
-\seq_new:N \l__diffcoeff_orders_seq
+\seq_new:N \l__diffcoeff_ords_seq
\seq_new:N \l__diffcoeff_vars_seq
-\seq_new:N \l__diffcoeff_denom_seq
\seq_new:N \l__diffcoeff_paren_seq
-
-\prop_new:N \l__diffcoeff_vars_prop
-
-\bool_new:N \l__diffcoeff_op_left_bool
-\bool_new:N \l__diffcoeff_single_var_bool
-\bool_new:N \l__diffcoeff_opwrap_bool
-\bool_new:N \l__diffcoeff_integ_bool
-\bool_new:N \l__diffcoeff_spaced_bool
-\bool_new:N \l__diffcoeff_altsep_bool
-
-\int_new:N \l__diffcoeff_vars_int
-\int_new:N \l__diffcoeff_format_int
+\int_new:N \l__diffcoeff_group_int
+\int_new:N \l__diffcoeff_style_int
\int_new:N \l__diffcoeff_curr_tok_int
\int_new:N \l__diffcoeff_curr_state_int
\int_new:N \l__diffcoeff_nos_int
\int_new:N \l__diffcoeff_parenvar_int
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\DeclareObjectType { derivative } { 3 }
-
-% defaults: ordinary deriv. values
-\DeclareTemplateInterface { derivative } { DERIV } { 3 }
+\prop_new:N \l__diffcoeff_vars_prop
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareObjectType { diffcoeff } { 5 }
+% #1 append boolean; #2 order spec(clist); #3 derivand(tl);
+% #4 diff variables(clist); #5 pt of eval(tl)
+\DeclareTemplateInterface { diffcoeff } { DIF } { 5 }
{
- op-symbol : tokenlist = d ,
+ style-group : choice { f, s, c, j, l } = f,
+ style : choice { frac, tfrac, dfrac,
+ /, auto, big, Big, bigg, Bigg,
+ _, dl
+ } = frac ,
+ slash-tok : tokenlist = / ,
+ slash-sep : tokenlist = 0 mu,
+ derivand-sep : tokenlist = 3 mu plus 1 mu minus 2 mu,
+ op-symbol : tokenlist = \mathrm{d},
op-symbol-alt : tokenlist = \KeyValue { op-symbol },
- op-order-sep : muskip = 1 mu ,
- derivand-sep : muskip = 3 mu plus 1 mu minus 2 mu,
+ op-order-nudge : tokenlist = 0 mu ,
+ var-sup-nudge : tokenlist = 1 mu ,
+ multi-term-sep : tokenlist = 2 mu plus 1 mu minus 1 mu,
+ term-sep-adjust : tokenlist = -1 mu,
long-var-wrap : choice { dv, d(v), (dv) }
- = d(v) ,
- denom-term-sep : muskip = 2 mu ,
- term-sep-adjust : muskip = -1 mu ,
- left-delim : tokenlist = \left . ,
- right-delim : tokenlist = \right |,
- elbowroom : muskip = 0 mu ,
- subscr-nudge : muskip = 0 mu ,
- *-derivand-sep : muskip = \KeyValue { derivand-sep },
- *-op-left : boolean = false ,
- *-italic-nudge : muskip = 3 mu ,
- /-derivand-sep : muskip = \KeyValue { derivand-sep },
- /-denom-term-sep : muskip = 1 mu ,
- /-left-delim : tokenlist = ( ,
- /-right-delim : tokenlist = ) ,
- /-elbowroom : muskip = 0 mu ,
- /-subscr-nudge : muskip = 0 mu ,
- */-derivand-sep : muskip = \KeyValue { /-derivand-sep },
- */-op-wrap : boolean = true
- }
-% #1 order spec(seqvar); #2 order override(tlvar)
-% #3 derivand(tlvar); #4 denominator(seqvar)
-% #5 subscript(tlvar)
-\DeclareTemplateCode { derivative } { DERIV } { 3 }
+ = d(v) ,
+ lvwrap-Ldelim : tokenlist = \mleft (,
+ lvwrap-Rdelim : tokenlist = \mright ),
+ lvwrap-sup-nudge : tokenlist = -2 mu,
+ outer-Ldelim : tokenlist = \left ( ,
+ outer-Rdelim : tokenlist = \right ),
+ elbowroom : tokenlist = 0 mu ,
+ sub-nudge : tokenlist = -5 mu,
+ op-sub-nudge : tokenlist = 0 mu ,
+ *derivand-sep : tokenlist = \KeyValue { derivand-sep },
+ *op-set-left : boolean = false,
+ *italic-nudge : tokenlist = 0 mu ,
+ *inner-wrap : boolean = false,
+ *inner-Ldelim : tokenlist = (,
+ *inner-Rdelim : tokenlist = ),
+ *outer-Ldelim : tokenlist = \bigl [,
+ *outer-Rdelim : tokenlist = \bigr ],
+ *sub-nudge : tokenlist = 0 mu
+ }
+\DeclareTemplateCode { diffcoeff } { DIF } { 5 }
{
- op-symbol = \l__diffcoeff_op_tl,
- op-symbol-alt = \l__diffcoeff_op_alt_tl,
- op-order-sep = \l__diffcoeff_oporder_muskip,
- derivand-sep = \l__diffcoeff_derivsep_muskip,
+ style-group = {
+ f = \int_set:Nn \l__diffcoeff_group_int { 0 },
+ s = \int_set:Nn \l__diffcoeff_group_int { 1 },
+ c = \int_set:Nn \l__diffcoeff_group_int { 2 },
+ j = \int_set:Nn \l__diffcoeff_group_int { 3 },
+ l = \int_set:Nn \l__diffcoeff_group_int { 4 }
+ },
+ style = {
+ frac = \__diffcoeff_style:nn { 0 } {},
+ tfrac = \__diffcoeff_style:nn { 1 } {},
+ dfrac = \__diffcoeff_style:nn { 2 } {},
+ / = \__diffcoeff_style:nn { 3 } {},
+ auto = \__diffcoeff_style:nn { 4 } {},
+ big = \__diffcoeff_style:nn { 5 } { big },
+ Big = \__diffcoeff_style:nn { 5 } { Big },
+ bigg = \__diffcoeff_style:nn { 5 } { bigg },
+ Bigg = \__diffcoeff_style:nn { 5 } { Bigg },
+ _ = \__diffcoeff_style:nn { 6 } {},
+ dl = \__diffcoeff_style:nn { 7 } {},
+ unknown = \__diffcoeff_style:nn { 9 } {}
+ },
+ slash-tok = \l__diffcoeff_slashtok_tl,
+ slash-sep = \l__diffcoeff_slashsep_tl,
+ derivand-sep = \l__diffcoeff_derivsep_tl,
+ op-symbol = \l__diffcoeff_opi_tl,
+ op-symbol-alt = \l__diffcoeff_opii_tl,
+ op-order-nudge = \l__diffcoeff_opordsep_tl,
+ var-sup-nudge = \l__diffcoeff_varsupnudge_tl,
+ multi-term-sep = \l__diffcoeff_termsep_tl,
+ term-sep-adjust = \l__diffcoeff_sep_adj_tl,
long-var-wrap = {
dv = \cs_set_eq:NN \__diffcoeff_wrap_longvars:nn
\__diffcoeff_wrap_longvars_dv:nn,
@@ -105,307 +172,164 @@
(dv) = \cs_set_eq:NN \__diffcoeff_wrap_longvars:nn
\__diffcoeff_wrap_longvars_dvii:nn,
unknown = \cs_set_eq:NN \__diffcoeff_wrap_longvars:nn
- \__diffcoeff_wrap_longvars_dvi:nn
+ \__diffcoeff_wrap_longvars_dvi:nn
},
- denom-term-sep = \l__diffcoeff_varsep_muskip,
- term-sep-adjust = \l__diffcoeff_sep_adj_muskip,
- left-delim = \l__diffcoeff_ldelim_tl,
- right-delim = \l__diffcoeff_rdelim_tl,
- elbowroom = \l__diffcoeff_elbowrm_muskip ,
- subscr-nudge = \l__diffcoeff_subnudge_muskip,
- *-derivand-sep = \l__diffcoeff_derivsepi_muskip,
- *-op-left = \l__diffcoeff_op_left_bool,
- *-italic-nudge = \l__diffcoeff_opnudge_muskip,
- /-derivand-sep = \l__diffcoeff_derivsepii_muskip,
- /-denom-term-sep = \l_tmpb_muskip,
- /-left-delim = \l__diffcoeff_ldelimi_tl,
- /-right-delim = \l__diffcoeff_rdelimi_tl,
- /-elbowroom = \l_tmpc_muskip,
- /-subscr-nudge = \l_tmpd_muskip,
- */-derivand-sep = \l__diffcoeff_derivsepiii_muskip,
- */-op-wrap = \l__diffcoeff_opwrap_bool
+ lvwrap-Ldelim = \l__diffcoeff_lvw_ldelim_tl,
+ lvwrap-Rdelim = \l__diffcoeff_lvw_rdelim_tl,
+ lvwrap-sup-nudge = \l__diffcoeff_lvsupnudge_tl,
+ outer-Ldelim = \l__diffcoeff_ldelim_tl,
+ outer-Rdelim = \l__diffcoeff_rdelim_tl,
+ elbowroom = \l__diffcoeff_elbowrm_tl ,
+ sub-nudge = \l__diffcoeff_subnudge_tl,
+ op-sub-nudge = \l__diffcoeff_opsubnudge_tl,
+ *derivand-sep = \l__diffcoeff_derivsepi_tl,
+ *op-set-left = \l__diffcoeff_op_left_bool,
+ *italic-nudge = \l__diffcoeff_opleftnudge_tl,
+ *inner-wrap = \l__diffcoeff_innerwrap_bool,
+ *inner-Ldelim = \l__diffcoeff_lopwrap_tl,
+ *inner-Rdelim = \l__diffcoeff_ropwrap_tl,
+ *outer-Ldelim = \l__diffcoeff_ldelimapp_tl,
+ *outer-Rdelim = \l__diffcoeff_rdelimapp_tl,
+ *sub-nudge = \l__diffcoeff_subnudgeapp_tl
}
{
\AssignTemplateKeys
-
- \bool_if:NF\l__diffcoeff_integ_bool
- {
- \int_compare:nNnT { \l__diffcoeff_format_int } > { 1 }
- { \__diffcoeff_slash_vals: }
- \__diffcoeff_build:nnn { #1 } { #2 } { #3 }
- }
+ \__diffcoeff_check_style:nn
+ { \l__diffcoeff_group_int } { \l__diffcoeff_style_int }
+ \__diffcoeff_append:n { #1 }
+ \exp_args:Nx \__diffcoeff_orders:nn { \clist_count:n {#4} } { #2 }
+ \__diffcoeff_override:N \l__diffcoeff_override_tl
+ \__diffcoeff_derivand:n { #3 }
+ \__diffcoeff_build:nn { #4 } { #5 }
}
%%%%%%%%%%
-\cs_new:Npn \__diffcoeff_slash_vals:
- {
- \muskip_set:Nn \l__diffcoeff_varsep_muskip \l_tmpb_muskip
- \muskip_set:Nn \l__diffcoeff_elbowrm_muskip \l_tmpc_muskip
- \muskip_set:Nn \l__diffcoeff_subnudge_muskip \l_tmpd_muskip
- \tl_set:NV \l__diffcoeff_ldelim_tl \l__diffcoeff_ldelimi_tl
- \tl_set:NV \l__diffcoeff_rdelim_tl \l__diffcoeff_rdelimi_tl
- }
-% #1 diff'and; #2 vars clist; #3 trailing arg
-\cs_new:Npn \__diffcoeff_build:nnn #1#2#3
+\cs_new_protected:Npn \__diffcoeff_style:nn #1#2
{
- \tl_set:Nn \l__diffcoeff_derivand_tl { #1 }
- \seq_set_from_clist:Nn \l__diffcoeff_vars_seq { #2 }
- \bool_if:nT
- {
- !\l__diffcoeff_opwrap_bool &&
- \int_compare_p:nNn { \l__diffcoeff_format_int } > { 1 }
- }
- { \int_set:Nn \l__diffcoeff_format_int { 4 } }
- \__diffcoeff_spaced:n { \l__diffcoeff_spaced_int }
- \bool_if:nTF
- {
- ( \l__diffcoeff_altsep_bool && !\l__diffcoeff_spaced_bool )
- || ( !\l__diffcoeff_altsep_bool && \l__diffcoeff_spaced_bool )
- }
- { \__diffcoeff_derivsep: }
- { \tl_put_left:Nn \l__diffcoeff_derivand_tl { \mskip 0 mu } }
- \tl_if_novalue:nF { #3 }
- { \l__diffcoeff_ldelim_tl \mskip \l__diffcoeff_elbowrm_muskip }
- \bool_if:NTF \l__diffcoeff_single_var_bool
+ \int_set:Nn \l__diffcoeff_style_int { #1 }
+ \tl_set:Nn \l__diffcoeff_frac_tl { \prg_do_nothing: }
+ \int_case:nn { #1 }
{
- \tl_set:Nx \l_tmpa_tl { \seq_use:Nn \l__diffcoeff_vars_seq { , } }
- \__diffcoeff_single:NNN \l__diffcoeff_tot_order_tl \l__diffcoeff_derivand_tl \l_tmpa_tl
- }
- {
- \int_zero:N \l_tmpa_int
- \seq_mapthread_function:NNN \l__diffcoeff_orders_seq
- \l__diffcoeff_vars_seq \__diffcoeff_map_orders:nn
- \__diffcoeff_mixed:NNN \l__diffcoeff_tot_order_tl
- \l__diffcoeff_derivand_tl \l__diffcoeff_denom_seq
- }
- \tl_if_novalue:nF { #3 }
- {
- \mskip \l__diffcoeff_elbowrm_muskip \l__diffcoeff_rdelim_tl
- \tl_if_empty:nF { #3 }
- {
- \c_math_subscript_token
- { \mskip \l__diffcoeff_subnudge_muskip { #3 } }
+ { 0 } { \tl_set:Nn \l__diffcoeff_frac_tl { \frac } }
+ { 1 } { \tl_set:Nn \l__diffcoeff_frac_tl { \tfrac } }
+ { 2 } { \tl_set:Nn \l__diffcoeff_frac_tl { \dfrac } }
+ { 3 } { \tl_set:Nn \l__diffcoeff_frac_tl { \difstfrac } }
+ { 4 } { \tl_set:Nn \l__diffcoeff_frac_tl { \difsafrac } }
+ { 5 } { \tl_set:Nn \l__diffcoeff_frac_tl { \difsbfrac[#2] } }
+ { 6 } { \tl_set:Nn \l__diffcoeff_frac_tl {} }
+ { 7 } { \bool_set_true:N \l__diffcoeff_dl_bool }
+ { 9 }
+ {
+ \msg_error:nnxx { diffcoeff } { unknown-style }
+ { \l__diffcoeff_instance_tl }
+ { \__diffcoeff_style_group:n { \l__diffcoeff_group_int } }
}
}
}
-%%%%%%%%%%%%%%%%%%%%
-\cs_new_protected:Npn \__diffcoeff_spaced:n #1
- {
- \int_case:nn { \int_sign:n { #1 } }
- {
- { 1 } { \bool_set_true:N \l__diffcoeff_spaced_bool }
- { 0 } { \bool_set_false:N \l__diffcoeff_spaced_bool }
- { -1 }
- {
- \int_compare:nNnTF { 1 } <
- { \tl_count:N \l__diffcoeff_derivand_tl }
- { \bool_set_true:N \l__diffcoeff_spaced_bool }
- { \bool_set_false:N \l__diffcoeff_spaced_bool }
- }
- }
- }
-\cs_new_protected:Npn \__diffcoeff_derivsep:
- {
- \tl_put_left:Nx \l__diffcoeff_derivand_tl
- {
- \int_case:nn { \l__diffcoeff_format_int }
- {
- { 0 } { \mskip \l__diffcoeff_derivsep_muskip }
- { 1 } { \mskip \l__diffcoeff_derivsepi_muskip }
- { 2 } { \mskip \l__diffcoeff_derivsepii_muskip }
- { 3 } { \mskip \l__diffcoeff_derivsepiii_muskip }
- { 4 } { \mskip \l__diffcoeff_derivsepiii_muskip }
- }
+% #1 group int; #2 style int
+\cs_new_protected:Npn \__diffcoeff_check_style:nn #1#2
+ {
+ \bool_if:nF
+ {
+ ( \int_compare_p:nNn { \int_div_truncate:nn {#2} {3} } = { #1 }
+ && \int_compare_p:nNn { #1 } < { 3 } ) % f,s,c
+ || ( \int_compare_p:nNn { \int_div_truncate:nn {#2} {2} } < { #1 }
+ && \int_compare_p:nNn { #1 } = { 3 } ) % j
+ || \int_compare_p:nNn { #1 + #2 } = { 11 } % l
}
- }
-\cs_new:Npn \__diffcoeff_wrap_longvars_dv:nn #1#2
- { \l__diffcoeff_op_alt_tl { {}#2 }^{ #1 } }
-\cs_new:Npn \__diffcoeff_wrap_longvars_dvi:nn #1#2
- { \l__diffcoeff_op_alt_tl { {}(#2) }^{ #1 } }
-\cs_new:Npn \__diffcoeff_wrap_longvars_dvii:nn #1#2
- { (\l__diffcoeff_op_alt_tl { {}#2) }^{ #1 } }
-% (ptl) form denom #1 from orders seq & #2 from vars seq
-\cs_new_protected:Npn \__diffcoeff_map_orders:nn #1#2
- {
- \tl_if_eq:nnTF { #1 } { 1 }
- { \seq_put_right:Nn \l__diffcoeff_denom_seq { \l__diffcoeff_op_alt_tl { #2 } } }
{
- \int_compare:nNnTF { \tl_count:n { #2 } } = { 1 }
+ \msg_warning:nnxx { diffcoeff } { wrong-style }
+ { \l__diffcoeff_instance_tl }
+ { \__diffcoeff_style_group:n { #1 } }
+ \int_compare:nNnTF { #1 } = { 3 }
+ { \__diffcoeff_style:nn { 0 } {} }
{
- \seq_put_right:Nn \l__diffcoeff_denom_seq
- { \l__diffcoeff_op_alt_tl { #2 }^{ #1 } }
- }
- {
- \seq_put_right:Nn \l__diffcoeff_denom_seq
- { \__diffcoeff_wrap_longvars:nn { #1\vphantom{)} } { #2 } }
+ \int_compare:nNnTF { #1 } = { 4 }
+ { \__diffcoeff_style:nn { 7 } {} }
+ { \__diffcoeff_style:nn { 3*#1 } {} }
}
}
- }
-% #1 order(tlvar) ; #2 diff'iand(tlvar); #3 denom(tlvar)
-\cs_new:Npn \__diffcoeff_single:NNN #1#2#3
- {
- \__diffcoeff_numer:N { #1 }
- \__diffcoeff_form_deriv:NNn
- \l__diffcoeff_oporder_tl
- \l__diffcoeff_derivand_tl
- { \__diffcoeff_denom_single:NN #1 #3 }
- }
-% #1 total order; #2 derivand; #3 denom seq
-\cs_new_protected:Npn \__diffcoeff_mixed:NNN #1#2#3
- {
- \__diffcoeff_numer:N #1
- \__diffcoeff_form_deriv:NNn
- \l__diffcoeff_oporder_tl
- \l__diffcoeff_derivand_tl
- { \__diffcoeff_denom_sep:N #3 }
- }
-\cs_new:Npn \__diffcoeff_denom_sep:N #1
+ \bool_if:nT
+ { \int_compare_p:nNn { #1 } > { 0 } && \int_if_even_p:n { #1 } }
+ { \tl_set_eq:NN \l__diffcoeff_opii_tl \l__diffcoeff_opi_tl }
+ \int_compare:nNnF { #1 } = { 1 }
+ { \bool_set_false:N \l__diffcoeff_innerwrap_bool }
+ }
+\cs_new:Npn \__diffcoeff_style_group:n #1
+ { \clist_item:nn { frac, /, _, frac, dl } { #1 + 1 } }
+\cs_new:Npn \__diffcoeff_style_aux:n #1
{
- \int_zero:N \l_tmpa_int
- \seq_map_inline:Nn #1
- {
- \int_incr:N \l_tmpa_int ##1
- \int_compare:nNnT { \l_tmpa_int } < { \l__diffcoeff_vars_int }
- {
- \seq_pop:NN \l__diffcoeff_orders_seq \l_tmpa_tl
- \str_if_eq:VnTF \l_tmpa_tl { 1 }
- { \mskip \l__diffcoeff_varsep_muskip }
- {
- \mskip \muskip_eval:n { \l__diffcoeff_varsep_muskip +
- \l__diffcoeff_sep_adj_muskip }
- }
- }
+ \int_compare:nNnTF { #1 } = { 3 } { { 0 } {} }
+ {
+ \int_compare:nNnTF { #1 } = { 4 } { { 7 } {} }
+ { { 3*#1 } {} }
}
}
-% #1(tl) total order
-\cs_new_protected:Npn \__diffcoeff_numer:N #1
- {
- \bool_if:NTF \l__diffcoeff_op_left_bool
+%%%%%%%%% append? (& wrap slash diff operator?)
+\cs_new_protected:Npn \__diffcoeff_append:n #1
+ {
+ \bool_if:nTF
+ { #1 || \int_compare_p:nNn { \l__diffcoeff_group_int } = {2} }
{
- \tl_set:Nn \l__diffcoeff_oporder_tl
- { \mskip \l__diffcoeff_opnudge_muskip }
+ \bool_set_true:N \l__diffcoeff_append_bool
+ \bool_if:NT \l__diffcoeff_innerwrap_bool
+ { \tl_put_right:Nn \l__diffcoeff_frac_tl { * } }
}
- { \tl_clear:N \l__diffcoeff_oporder_tl }
- \tl_put_right:No \l__diffcoeff_oporder_tl \l__diffcoeff_op_tl
- \exp_args:NnV \tl_if_eq:nnF { 1 } #1
+ { \bool_set_false:N \l__diffcoeff_append_bool }
+ }
+%%%%%%%%%
+% #1(int) no. of vars; #2(clist) orders spec
+\cs_new_protected:Npn \__diffcoeff_orders:nn #1#2
+ {
+ \bool_if:NTF \l__diffcoeff_exponent_bool
{
- \tl_put_right:Nn \l__diffcoeff_oporder_tl
- { \mskip \l__diffcoeff_oporder_muskip ^ { #1 } }
+ \exp_args:NNx \seq_set_from_clist:Nn \l__diffcoeff_ords_seq
+ { \prg_replicate:nn { #1 } { \l__diffcoeff_exponent_tl, } }
}
- \bool_if:NT \l__diffcoeff_op_left_bool
- { \tl_put_right:Nn \l__diffcoeff_oporder_tl { \hfill } }
- }
-% #1 order; #2 var
-\cs_new_protected:Npn \__diffcoeff_denom_single:NN #1#2
- {
- \tl_if_eq:nVTF { 1 } #1
- { \l__diffcoeff_op_alt_tl {}#2 }
{
- \int_compare:nNnTF { \tl_count:N #2 } = { 1 }
- { \l__diffcoeff_op_alt_tl {}#2^{ #1 } }
- { \__diffcoeff_wrap_longvars:nn { #1\vphantom) } { #2 } }
+ \seq_set_from_clist:Nn \l__diffcoeff_ords_seq { #2 }
+ \exp_args:Nnx\__diffcoeff_adj_ords_seq:nn { #1 }
+ { \seq_count:N \l__diffcoeff_ords_seq }
}
+ \tl_set:Nx \l__diffcoeff_vph_tl {\seq_use:Nn\l__diffcoeff_ords_seq {} }
}
-% #1 op+order; #2 diff'iand; #3 denom
-% 0 frac; 1 frac append; 2 slash ; 3 ( slash ) append; 4 slash append
-\cs_new:Npn \__diffcoeff_form_deriv:NNn #1#2#3
+\cs_new_protected:Npn \__diffcoeff_adj_ords_seq:nn #1#2
{
- \int_case:nn { \l__diffcoeff_format_int }
- {
- { 0 } { \frac { #1 #2 } { #3 } }
- { 1 } { \frac { #1 } { #3 } #2 }
- { 2 } { #1 #2 / #3 }
- { 3 } { ( #1 / #3 ) #2 }
- { 4 } { #1 / #3 #2 }
+ \int_compare:nNnTF { #1 } < { #2 }
+ { % truncate
+ \int_step_inline:nn { #2 - #1 }
+ { \seq_pop_right:NN \l__diffcoeff_ords_seq \l_tmpa_tl }
+ }
+ { % pad
+ \int_step_inline:nnnn { 1 + #2 } { 1 } { #1 }
+ { \seq_put_right:Nn \l__diffcoeff_ords_seq { 1 } }
}
}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% differential
-% #1 variant; #2 = space in mu before d (0--9)
-% note \group_end placement for \vec{x} etc
-\NewDocumentCommand \dl { d.. t- m }
- {
- \group_begin:
- \bool_set_true:N \l__diffcoeff_integ_bool
- \bool_set_true:N \l__diffcoeff_single_var_bool
- \seq_set_from_clist:Nn \l__diffcoeff_orders_seq { 1 }
- \tl_set:Nn \l__diffcoeff_tot_order_tl { 1 }
- \IfValueTF { #1 }
- { \tl_set:Nn \l__diffcoeff_type_tl { .#1 } }
- { \tl_set:Nn \l__diffcoeff_type_tl { } }
- \UseInstance { derivative } { ord\l__diffcoeff_type_tl }
- \l__diffcoeff_orders_seq \l__diffcoeff_tot_order_tl
- \c_empty_tl \c_empty_seq \c_empty_tl
- \tl_if_in:NnTF \c__diffcoeff_digits_tl { #3 }
- { \mskip \IfBooleanT #2 { - }#3 mu \l__diffcoeff_op_tl \group_end: }
- { \l__diffcoeff_op_tl \group_end: {} #3 }
- }
-\NewDocumentCommand \negmu {} { \mskip -1 mu }
-\NewDocumentCommand \nilmu {} { \mskip 0 mu }
-\NewDocumentCommand \onemu {} { \mskip 1 mu }
-\NewDocumentCommand \twomu {} { \mskip 2 mu }
-% derivative
-% #1(tl) = name of variant; #2(*)= append diff'iand boolean
-% #3(clist) = orders of diff. in each var.; #4(tl) = order override
-% #5(bool) spacing switch; #6(tl) = diff'iand; #7( / ) = slash boolean
-% #8(clist) = vars of diff.; #9(tl) = pt of eval./vars held const
-\NewDocumentCommand \diff { d.. s O{1} o t! >{\TrimSpaces} m t/ m !o }
+\cs_new_protected:Npn \__diffcoeff_override:N #1
{
- \group_begin:
- \IfBooleanTF #5
- { \bool_set_true:N \l__diffcoeff_altsep_bool }
- { \bool_set_false:N \l__diffcoeff_altsep_bool }
- \seq_set_from_clist:Nn \l__diffcoeff_orders_seq { #3 }
- \int_set:Nn \l_tmpb_int { \seq_count:N \l__diffcoeff_orders_seq }
- \int_set:Nn \l__diffcoeff_vars_int { \clist_count:n { #8 } }
- \int_compare:nNnTF { \l__diffcoeff_vars_int } = { 1 }
- { \bool_set_true:N \l__diffcoeff_single_var_bool }
- {
- \int_compare:nNnTF { \l__diffcoeff_vars_int } < { \l_tmpb_int }
- {
- \msg_error:nnxxxx { diffcoeff } { numbers-conflict }
- { \int_use:N \l__diffcoeff_vars_int } { \int_use:N \l_tmpb_int }
- { \seq_use:Nn \l__diffcoeff_orders_seq { , } }
- { \clist_use:nn { #8 } { , } }
- }
- { % pad orders seq if nec.
- \int_step_inline:nnnn
- { 1 + \l_tmpb_int } { 1 } { \l__diffcoeff_vars_int }
- { \seq_put_right:Nn \l__diffcoeff_orders_seq { 1 } }
- }
- }
- % override/calc total order
- \IfValueTF { #4 }
- { \tl_set:Nn \l__diffcoeff_tot_order_tl { #4 } }
+ \tl_if_empty:NTF { #1 }
{
- \bool_if:NTF \l__diffcoeff_single_var_bool
- { \tl_set:Nn \l__diffcoeff_tot_order_tl { #3 } }
- {
- \__diffcoeff_calc_tot_order:NN \l__diffcoeff_orders_seq
- \l__diffcoeff_tot_order_tl
- }
+ \__diffcoeff_calc_tot_order:NN \l__diffcoeff_ords_seq
+ \l__diffcoeff_tot_ord_tl
}
- \IfValueTF { #1 }
- { \tl_set:Nn \l__diffcoeff_type_tl { .#1 } }
- { \tl_set:Nn \l__diffcoeff_type_tl { } }
- % append? slash?
- \int_zero:N \l__diffcoeff_format_int
- \IfBooleanT #2 { \int_incr:N \l__diffcoeff_format_int }
- \IfBooleanT #7 { \int_add:Nn \l__diffcoeff_format_int { 2 } }
- \UseInstance { derivative } { ord\l__diffcoeff_type_tl } {#6}{#8}{#9}
- \group_end:
- } % end of \diff
-%%%%%%%%%%%%%%%%%%%
-% #2(seq) expr in; #1(tlv) expr out
-\cs_new:Npn \__diffcoeff_calc_tot_order:NN #1 #2
+ { \tl_set:Nn \l__diffcoeff_tot_ord_tl { #1 } }
+ \seq_pop_right:NN \l__diffcoeff_ords_seq \l__diffcoeff_ord_tl
+ }
+%%%%%%%%%% calc. total order %%%%%%%%%%
+% #1(seq) expr in; #2(tl) expr out
+\cs_new_protected:Npn \__diffcoeff_calc_tot_order:NN #1 #2
{
\tl_clear:N \l__diffcoeff_nos_tl
- \exp_args:Nx\__diffcoeff_digest_expr:n { \seq_use:Nn #1 { + } }
+ \exp_args:Nx \__diffcoeff_digest_expr:n { \seq_use:Nn #1 { + } }
\prop_if_empty:NTF \l__diffcoeff_vars_prop
{ \tl_set:NV #2 \l__diffcoeff_nos_tl }
- { \__diffcoeff_evaluate:NN \l__diffcoeff_vars_prop #2 }
+ {
+ \int_compare:nNnT { \l__diffcoeff_nos_int } = { 0 }
+ { \tl_clear:N \l__diffcoeff_nos_tl }
+ \__diffcoeff_evaluate:NN \l__diffcoeff_vars_prop #2
+ }
}
-\cs_new:Npn \__diffcoeff_digest_expr:n #1
- {
+\cs_new_protected:Npn \__diffcoeff_digest_expr:n #1
+ {
\tl_set:Nn \l__diffcoeff_curr_num_tl { + }
\tl_set:Nn \l__diffcoeff_paren_tl { +1 }
\tl_set:Nn \l__diffcoeff_nos_tl { 0 }
@@ -419,13 +343,11 @@
}
\int_set:Nn \l__diffcoeff_nos_int { \l__diffcoeff_nos_tl }
\tl_set:Nx \l__diffcoeff_nos_tl { \int_use:N \l__diffcoeff_nos_int }
- \int_compare:nNnT { \l__diffcoeff_nos_int } = { 0 }
- { \tl_clear:N \l__diffcoeff_nos_tl }
}
% #1 curr tok (tl); #2 <== curr tok ndx (int)
\cs_new_protected:Npn \__diffcoeff_get_curr_ndx:nN #1#2
{
- \tl_if_in:NnTF \c__diffcoeff_digits_tl { #1 }
+ \tl_if_in:nnTF { 1234567890 } { #1 }
{ \int_set:Nn #2 { 1 } } % digit
{
\str_case:nnF { #1 }
@@ -461,7 +383,7 @@
{
{ 0 } % tok = s
{
- \tl_if_eq:nVTF { #1 } \l__diffcoeff_curr_num_tl
+ \str_if_eq:nVTF { #1 } \l__diffcoeff_curr_num_tl
{ \tl_set:Nn \l__diffcoeff_curr_num_tl { + } }
{ \tl_set:Nn \l__diffcoeff_curr_num_tl { - } }
}
@@ -497,11 +419,11 @@
{ 1 } % tok = d
{ \tl_put_right:Nn \l__diffcoeff_curr_num_tl { #1 } }
{ 2 } % tok = v
- {
- \tl_if_in:nnTF { ^ \times * / \div } { #1 }
- {
- \msg_error:nnxxx { diffcoeff } { order-specification }
- { \seq_use:Nn \l__diffcoeff_orders_seq { , } }
+ {
+ \tl_if_in:nnTF { ^ \times * / } { #1 }
+ {
+ \msg_error:nnxxx { diffcoeff } { order-spec-general }
+ { \seq_use:Nn \l__diffcoeff_ords_seq { , } }
{ #1 } { number }
}
{ \tl_set:Nn \l__diffcoeff_curr_var_tl { #1 } }
@@ -511,7 +433,7 @@
\seq_push:NV \l__diffcoeff_paren_seq \l__diffcoeff_paren_tl
\tl_put_left:Nn \l__diffcoeff_paren_tl { * }
\tl_put_left:NV \l__diffcoeff_paren_tl \l__diffcoeff_curr_num_tl
- \tl_set:Nn \l__diffcoeff_curr_num_tl { + }
+ \tl_set:Nn \l__diffcoeff_curr_num_tl { + }
\int_set:Nn #3 { 0 }
}
{ 4 } % tok = )
@@ -584,8 +506,8 @@
\int_set_eq:NN #2 #3
}
{
- \msg_error:nnxxx { diffcoeff } { order-specification }
- { \seq_use:Nn \l__diffcoeff_orders_seq { , } } { #1 } { ) }
+ \msg_error:nnxxx { diffcoeff } { order-spec-general }
+ { \seq_use:Nn \l__diffcoeff_ords_seq { , } } { #1 } { ) }
}
}
% #1 is var. (tlvar); #2 is num. (tlvar); #3 num. coeff. (tlvar)
@@ -598,7 +520,7 @@
}
% #1 (propv) key=var, val=coeff; #2 <= total order
\cs_new_protected:Npn \__diffcoeff_evaluate:NN #1#2
- {
+ {
\prop_map_inline:Nn #1 { \seq_put_left:Nn \l_tmpa_seq { ##1 } }
\seq_sort:Nn \l_tmpa_seq
{
@@ -610,15 +532,17 @@
\prop_pop:NnN #1 { ##1 } \l_tmpb_tl
\seq_put_right:Nx \l_tmpb_seq { \int_eval:n \l_tmpb_tl }
}
- \tl_clear:N \l_tmpa_tl
- \seq_mapthread_function:NNN \l_tmpa_seq \l_tmpb_seq
- \__diffcoeff_tot_order:nn
+ \tl_set:Nx \l_tmpa_tl
+ {
+ \seq_mapthread_function:NNN \l_tmpa_seq \l_tmpb_seq
+ \__diffcoeff_tot_order:nn
+ }
\exp_args:NV \tl_if_head_eq_charcode:nNTF \l_tmpa_tl +
{
\tl_set:Nx \l_tmpb_tl { \tl_tail:N \l_tmpa_tl }
\int_compare:nNnT { \l__diffcoeff_nos_int } > { 0 }
{ \tl_put_left:Nn \l__diffcoeff_nos_tl { + } }
- \tl_concat:NNN #2 \l_tmpb_tl \l__diffcoeff_nos_tl
+ \tl_concat:NNN #2 \l_tmpb_tl \l__diffcoeff_nos_tl
}
{
\int_compare:nNnTF { \l__diffcoeff_nos_int } > { 0 }
@@ -630,116 +554,367 @@
\cs_new:Npn \__diffcoeff_tot_order:nn #1#2
{
\int_compare:nNnTF { #2 } > { 0 }
+ { \int_compare:nNnTF { #2 } = { 1 } { +#1 } { +#2#1 } }
+ {
+ \int_compare:nNnT { #2 } < { 0 }
+ { \int_compare:nNnTF { #2 } = { -1 } { -#1 } { #2#1 } }
+ }
+ }
+%%%%%%%%% derivand
+\cs_new_protected:Npn \__diffcoeff_derivand:n #1
+ {
+ \tl_set:Nn \l__diffcoeff_derivand_tl { #1 }
+ \int_compare:nNnTF { \tl_count:N \l__diffcoeff_derivand_tl } > { 1 }
+ { \bool_set_true:N \l__diffcoeff_multitok_bool }
{
- \int_compare:nNnTF { #2 } = { 1 }
- { \tl_put_left:Nn \l_tmpa_tl { +#1 } }
- { \tl_put_left:Nn \l_tmpa_tl { +#2#1 } }
+ \str_if_eq:VnTF \l__diffcoeff_derivand_tl { ! }
+ { \msg_error:nnnn { diffcoeff } { version-conflict } { #1 } {} }
+ {
+ \str_if_eq:VnT \l__diffcoeff_derivand_tl { [ }
+ { \msg_error:nnnn { diffcoeff } { version-conflict } { the~
+ order-override~argument } { Use~\difoverride instead.~ } }
+ }
}
+ }
+%%%%%%%%% build #1 vars clist; #2 trailing arg
+\cs_new_protected:Npn \__diffcoeff_build:nn #1#2
+ {
+ \str_if_eq:nnT { #1 } { / }
+ {
+ \msg_error:nnnn { diffcoeff } { version-conflict } { / }
+ { Use~\difs or~\difsp instead.~ }
+ }
+ \seq_set_from_clist:Nn \l__diffcoeff_vars_seq { #1 }
+ \seq_pop_right:NN \l__diffcoeff_vars_seq \l__diffcoeff_var_tl
+ \tl_put_left:Nx \l__diffcoeff_derivand_tl
+ { \__diffcoeff_spaced:n { \l__diffcoeff_spaced_int } }
+ \tl_if_novalue:nF { #2 }
+ { \__diffcoeff_delim:N l \mskip \l__diffcoeff_elbowrm_tl }
+ \__diffcoeff_form_deriv:xNN
+ { \__diffcoeff_build_numer:Vn \l__diffcoeff_tot_ord_tl
+ { \l__diffcoeff_style_int } }
+ \__diffcoeff_build_denom:
+ \l__diffcoeff_derivand_tl
+ \tl_if_novalue:nF { #2 }
+ { \__diffcoeff_trailing_arg:n { #2 } }
+ }
+\cs_new:Npn \__diffcoeff_delim:N #1
+ {
+ \bool_if:nTF { \l__diffcoeff_innerwrap_bool && \l__diffcoeff_append_bool }
+ { \use:c { l__diffcoeff_#1 delimapp_tl } }
+ { \use:c { l__diffcoeff_#1 delim_tl } }
+ }
+\cs_new:Npn \__diffcoeff_subnudge:
+ {
+ \bool_if:nTF { \l__diffcoeff_innerwrap_bool && \l__diffcoeff_append_bool }
+ { \l__diffcoeff_subnudgeapp_tl } { \l__diffcoeff_subnudge_tl }
+ }
+\cs_new:Npn \__diffcoeff_trailing_arg:n #1
+ {
+ \mskip \l__diffcoeff_elbowrm_tl \__diffcoeff_delim:N r
+ \tl_if_empty:nF { #1 }
+ { \c_math_subscript_token { \mskip \__diffcoeff_subnudge: #1 } }
+ }
+\cs_new:Npn \__diffcoeff_spaced:n #1
+ {
+ \int_case:nn { \int_sign:n { #1 } }
{
- \int_compare:nNnT { #2 } < { 0 }
- {
- \int_compare:nNnTF { #2 } = { -1 }
- { \tl_put_right:Nn \l_tmpa_tl { -#1 } }
- { \tl_put_right:Nn \l_tmpa_tl { #2#1 } }
+ { 1 } { \__diffcoeff_derivsep: }
+ { 0 } { \mskip 0 mu }
+ {-1 }
+ {
+ \bool_lazy_or:nnT { \l__diffcoeff_multitok_bool }
+ { \int_compare_p:nNn { \l__diffcoeff_group_int } = { 2 } }
+ { \__diffcoeff_derivsep: }
}
+ }
+ }
+\cs_new:Npn \__diffcoeff_derivsep:
+ {
+ \bool_if:NTF \l__diffcoeff_append_bool
+ { \mskip \l__diffcoeff_derivsepi_tl }
+ { \mskip \l__diffcoeff_derivsep_tl }
+ }
+%%%%%%%%% numerator #1 total order tl #2 style int
+\cs_new:Npn \__diffcoeff_build_numer:nn #1#2
+ {
+ \int_compare:nNnF { #2 } > { 5 }
+ {
+ \bool_if:NT \l__diffcoeff_op_left_bool
+ { \mskip \l__diffcoeff_opleftnudge_tl }
+ \exp_not:o \l__diffcoeff_opi_tl
+ \str_if_eq:nnF {#1} {1}
+ { ^ { \mskip \l__diffcoeff_opordsep_tl \exp_not:o {#1} } }
+ \bool_if:NT \l__diffcoeff_op_left_bool
+ { \exp_not:o { \hfill } }
+ }
+ }
+\cs_generate_variant:Nn \__diffcoeff_build_numer:nn { V }
+%%%%%%%%%% denominator %%%%%%%%%
+\cs_new:Npn \__diffcoeff_build_denom:
+ {
+ \seq_mapthread_function:NNN \l__diffcoeff_ords_seq
+ \l__diffcoeff_vars_seq \__diffcoeff_build_denom_items:nn
+ \__diffcoeff_build_denom_item:VV \l__diffcoeff_ord_tl \l__diffcoeff_var_tl
+ \str_if_eq:VnF \l__diffcoeff_ord_tl { 1 }
+ {
+ \int_compare:nNnT { \l__diffcoeff_group_int } < { 2 }
+ { \mskip -\l__diffcoeff_sep_adj_tl}
}
}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% create new instances or edit existing ones
-% #1 = name; #2 = key-value list
-\NewDocumentCommand \diffdef { > { \TrimSpaces } m m }
+\cs_new:Npn \__diffcoeff_build_denom_items:nn#1#2
+ {
+ \__diffcoeff_build_denom_item:nn {#1} {#2}
+ \mskip \l__diffcoeff_termsep_tl
+ }
+% #1 order #2 var
+\cs_new:Npn \__diffcoeff_build_denom_item:nn #1#2
+ {
+ \int_compare:nNnTF { \l__diffcoeff_style_int } = { 6 }
+ { \__diffcoeff_build_denom_difc:onn \l__diffcoeff_vph_tl {#1}{#2} }
+ { \__diffcoeff_build_denom_dif:nn {#1} {#2} }
+ }
+\cs_generate_variant:Nn \__diffcoeff_build_denom_item:nn { VV }
+% #1 vphantom orders #2 order #3 var
+\cs_new:Npn \__diffcoeff_build_denom_difc:nnn #1#2#3
+ {
+ \exp_not:o \l__diffcoeff_opii_tl \c_math_subscript_token
+ { \mskip \l__diffcoeff_opsubnudge_tl {}#3 } ^
+ {
+ \mskip \l__diffcoeff_opordsep_tl \exp_not:o { \vphantom{#1} }
+ \str_if_eq:nnF { #2 } { 1 }
+ { \exp_not:o {#2} \mskip \l__diffcoeff_sep_adj_tl }
+ }
+ }
+\cs_generate_variant:Nn \__diffcoeff_build_denom_difc:nnn { o }
+% #1 order #2 var
+\cs_new:Npn \__diffcoeff_build_denom_dif:nn #1#2
{
- \tl_if_empty:nTF { #1 }
+ \str_if_eq:nnTF { #1 } { 1 }
+ { \exp_not:o { \l__diffcoeff_opii_tl #2 } }
{
- \EditTemplateDefaults { derivative }
- { DERIV } { #2 }
- \EditInstance { derivative } { ord } { #2 }
+ \int_compare:nNnTF { \tl_count:n { #2 } } = { 1 }
+ { \exp_not:o { \l__diffcoeff_opii_tl {}#2^
+ { \mskip \l__diffcoeff_varsupnudge_tl #1 } } }
+ { \__diffcoeff_wrap_longvars:nn { #1 } { #2 } }
+ \mskip \l__diffcoeff_sep_adj_tl
}
+ }
+\cs_new:Npn \__diffcoeff_wrap_longvars_dv:nn #1#2
+ { \exp_not:o { \l__diffcoeff_opii_tl {{}#2 }^
+ { \mskip \l__diffcoeff_varsupnudge_tl #1 } } }
+\cs_new:Npn \__diffcoeff_wrap_longvars_dvi:nn #1#2
+ {
+ \exp_not:o { \l__diffcoeff_opii_tl \l__diffcoeff_lvw_ldelim_tl #2
+ \l__diffcoeff_lvw_rdelim_tl^{ \mskip \l__diffcoeff_lvsupnudge_tl #1 } }
+ }
+\cs_new:Npn \__diffcoeff_wrap_longvars_dvii:nn #1#2
+ {
+ \exp_not:o { \l__diffcoeff_lvw_ldelim_tl \l__diffcoeff_opii_tl {}#2
+ \l__diffcoeff_lvw_rdelim_tl^{ \mskip \l__diffcoeff_lvsupnudge_tl #1 } }
+ }
+%%%%%%%%%%
+% #1 op+order; #2 denom; #3 diff'iand
+\cs_new:Npn \__diffcoeff_form_deriv:nNN #1#2#3
+ {
+ \bool_if:NTF \l__diffcoeff_append_bool
+ { \l__diffcoeff_frac_tl { #1 } { #2 } #3 }
+ { \l__diffcoeff_frac_tl { #1 #3 } { #2 } }
+ }
+\cs_generate_variant:Nn \__diffcoeff_form_deriv:nNN { x }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\file_get:nnNT { diffcoeff.DIF } {} \l_tmpa_tl
+ { \exp_args:Nnno \EditTemplateDefaults { diffcoeff } { DIF } \l_tmpa_tl }
+\exp_args:Nnno \EditTemplateDefaults { diffcoeff } { DIF }
+ \l__diffcoeff_dif_clist
+% Child template with some restricted, some new defaults.
+% #1 object type #2 parent template #3 child template
+% #4 restricted defaults (key=value) #5 new defaults (key=value)
+\NewDocumentCommand \DeclareChildTemplate { m m m m m }
+ {
+ \DeclareRestrictedTemplate {#1} {#2} {#3} {}
+ \EditTemplateDefaults {#1} {#3} {#5}
+ \DeclareRestrictedTemplate {#1} {#3} {#3} {#4}
+ }
+% create new, edit existing templates/instances;
+% #1 edit defaults with (no *) or without (*) inheritance;
+% #2 id: f,s,c,fp, sp, cp, j,l; #3 name; #4 key-value list
+\NewDocumentCommand \difdef { >{ \TrimSpaces } m >{ \TrimSpaces } m m }
+ {
+ \clist_map_inline:nn { #1 }
{
- \IfInstanceExistTF { derivative } { ord.#1 }
- { \EditInstance { derivative } { ord.#1 } { #2 } }
+ \tl_if_empty:nTF { #2 }
{
- \DeclareInstance { derivative } { ord.#1 }
- { DERIV } { #2 }
+ \DeclareChildTemplate { diffcoeff }
+ { DIF\str_uppercase:n {##1} } { DIF\str_uppercase:n {##1} }
+ { style-group = \use_i:nn ##1 \c_empty_tl } { #3 }
+ \DeclareInstance { diffcoeff } { dif##1 }
+ { DIF\str_uppercase:n {##1} } {}
+ }
+ {
+ \IfInstanceExistTF { diffcoeff } { dif##1.#2 }
+ { \EditInstance { diffcoeff } { dif##1.#2 } { #3 } }
+ { \exp_args:Nnnx
+ \DeclareInstance { diffcoeff } { dif##1.#2 }
+ { DIF\str_uppercase:n {##1} } { #3 }
+ }
}
}
}
-% relic from version 1
-\NewDocumentCommand \diffset { o }
- { \msg_warning:nn { diffcoeff } { obsolete } }
-
-% ordinary & D
-\DeclareInstance { derivative } { ord } { DERIV } { }
-\bool_if:NTF \l__diffcoeff_ISO_bool
- {
- \diffdef { }
- {
- op-symbol = \mathrm{d},
- op-order-sep = 0 mu ,
- left-delim = \left ( ,
- right-delim = \right ) ,
- subscr-nudge = -6 mu
- }
- \diffdef { D } { op-symbol = \mathrm{D} }
+\DeclareDocumentCommand \diffdef { m m }
+ {
+ \msg_error:nnnn { diffcoeff } { version-conflict } { \diffdef~(two~
+ arguments) } { Use~\difdef~(three~arguments)~instead.~ }
}
- { \diffdef { D } { op-symbol = D } }
-
-% partial
-\diffdef { p }
+\DeclareChildTemplate { diffcoeff } { DIF } { DIFF }
+ { style-group = f } {}
+\DeclareChildTemplate { diffcoeff } { DIFF } { DIFFP }
+ { style-group = f }
+ {
+ op-symbol = \partial,
+ op-order-nudge = 1 mu,
+ *italic-nudge = 3 mu
+ }
+\DeclareChildTemplate { diffcoeff } { DIF } { DIFS }
+ { style-group = s }
{
- op-symbol = \partial ,
- left-delim = \left ( ,
- right-delim = \right ) ,
- subscr-nudge = -6 mu
+ style = /,
+ derivand-sep = 2 mu plus 1 mu minus 2 mu,
+ outer-Ldelim = (,
+ outer-Rdelim = ),
+ sub-nudge = 0 mu,
+ *inner-wrap = true
+ }
+\DeclareChildTemplate { diffcoeff } { DIFS } { DIFSP }
+ { style-group = s }
+ {
+ op-symbol = \partial,
+ op-order-nudge = 1 mu
}
-\NewDocumentCommand \diffp {} { \diff.p. }
-\NewDocumentCommand \dlp {} { \dl.p. }
-
-% delta
-\diffdef { delta }
+\DeclareChildTemplate { diffcoeff } { DIF } { DIFC }
+ { style-group = c }
+ {
+ style = _ ,
+ derivand-sep = 1 mu plus 1 mu minus 1 mu ,
+ multi-term-sep = 1 mu ,
+ term-sep-adjust = 0 mu ,
+ outer-Ldelim = \bigl (,
+ outer-Rdelim = \bigr ),
+ sub-nudge = -2 mu
+ }
+\DeclareChildTemplate { diffcoeff } { DIFC } { DIFCP }
+ { style-group = c }
+ {
+ op-symbol = \partial,
+ op-order-nudge = 1 mu
+ }
+\DeclareInstance { diffcoeff } { diff } { DIFF } {}
+\DeclareInstance { diffcoeff } { diffp } { DIFFP } {}
+\DeclareInstance { diffcoeff } { difs } { DIFS } {}
+\DeclareInstance { diffcoeff } { difsp } { DIFSP } {}
+\DeclareInstance { diffcoeff } { difc } { DIFC } {}
+\DeclareInstance { diffcoeff } { difcp } { DIFCP } {}
+% jacobian
+\DeclareChildTemplate { diffcoeff } { DIF } { DIFJ }
+ { style-group = j }
{
- op-symbol = \delta ,
- op-order-sep = 0 mu
+ op-symbol = \partial,
+ outer-Ldelim = ,
+ outer-Rdelim =
}
-\diffdef { Delta }
- {
- op-symbol = \Delta ,
- op-order-sep = 0 mu
+\DeclareInstance { diffcoeff } { difj } { DIFJ } {}
+% differential
+\DeclareChildTemplate { diffcoeff } { DIF } { DIFL }
+ { style-group = l }
+ {
+ style = dl ,
+ derivand-sep = 0 mu,
+ long-var-wrap = dv ,
+ outer-Ldelim = {\,},
+ outer-Rdelim =
}
-% for compatibility with version 1
-\NewDocumentCommand \Diff { } { \diff.D. }
-\NewDocumentCommand \diffd { } { \diff.delta. }
-\NewDocumentCommand \Diffd { } { \diff.Delta. }
+\DeclareInstance { diffcoeff } { difl } { DIFL } {}
-% user-defined
-\file_if_exist:nT { \g__diffcoeff_def_tl.def }
+\file_if_exist:nTF { \g__diffcoeff_def_tl.def }
{ \file_input:n { \g__diffcoeff_def_tl.def } }
-%%%%%%%%%%%%%%%%%%%%
-% Jacobian
-\NewDocumentCommand \jacob { m t/ m }
- {
- \group_begin:
- \IfBooleanTF #2
- { \partial(#1) / \partial(#3) }
- { \frac{ \partial(#1) } { \partial(#3) } }
- \group_end:
+ {
+ \tl_if_empty:NF \g__diffcoeff_def_tl
+ { \msg_note:nnx { diffcoeff } { file-not-found }
+ { \g__diffcoeff_def_tl } }
}
-%%%%%%%%%%%%%%%%%%%%
-% messages
-\msg_new:nnn { diffcoeff } { order-specification }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NewDocumentCommand \negmu {} { \mskip -1 mu }
+\NewDocumentCommand \nilmu {} { \mskip 0 mu }
+\NewDocumentCommand \onemu {} { \mskip 1 mu }
+\NewDocumentCommand \twomu {} { \mskip 2 mu }
+\NewDocumentCommand \difstfrac { s m m }
+ { \__diffcoeff_slashfracs:Nnnn #1 { #2 } { #3 } {} }
+\NewDocumentCommand \difsbfrac { o s m m }
+ { \__diffcoeff_slashfracs:Nnnn #2 { #3 } { #4 } { \use:c{#1} } }
+\NewDocumentCommand \difsafrac { s m m }
+ { \__diffcoeff_slashfracs:Nnnn #1 { \left. #2\vphantom{#3} }
+ { #3\right.} { \middle } }
+\cs_new:Npn \__diffcoeff_slashfracs:Nnnn #1#2#3#4
{
- #3~followed~by~#2~in~the~order~specification~[#1]~\msg_line_context:.~
- Diffcoeff~cannot~calculate~the~overall~order~of~differentiation~in~
- this~case.~Use~the~order-override~option~to~enter~the~overall~order.
+ \bool_if:NT #1 { \l__diffcoeff_lopwrap_tl }
+ #2 \mskip \l__diffcoeff_slashsep_tl
+ #4 \l__diffcoeff_slashtok_tl
+ \mskip \l__diffcoeff_slashsep_tl #3
+ \bool_if:NT #1 { \l__diffcoeff_ropwrap_tl }
+ }
+% derivatives
+% #1(tl) variant name; #2(*) append boolean; #3(*) switch #5#6 order;
+% #4(clist) diff. orders; #5(tl) = derivand; #6(clist) = diff. vars;
+% #7(tl) = pt of eval./vars held const
+\clist_map_inline:nn { f,s,c, fp, sp, cp }
+ {
+ \exp_args:Nc \NewDocumentCommand {dif#1}
+ { >{\TrimSpaces} D..{} s s O{1} >{\TrimSpaces} m m !o }
+ {
+ \IfBooleanTF ##3
+ { \__diffcoeff_inputs:nnnnnnn {#1}
+ {##1} {##2} {##4} {##6} {##5} {##7} }
+ { \__diffcoeff_inputs:nnnnnnn {#1}
+ {##1} {##2} {##4} {##5} {##6} {##7} }
+ }
}
-\msg_new:nnn { diffcoeff } { obsolete }
- {
- Obsolete~command:~\diffset is~superseded~by~the~\diffdef\
- command.~\msg_see_documentation_text:n { diffcoeff }
+\cs_new_protected:Npn \__diffcoeff_inputs:nnnnnnn #1#2#3#4#5#6#7
+ {
+ \group_begin:
+ \tl_set:Nx \l__diffcoeff_instance_tl
+ { dif#1 \tl_if_empty:nF { #2 } { .#2 } }
+ \UseInstance { diffcoeff } { \l__diffcoeff_instance_tl }
+ {#3} {#4} {#5} {#6} {#7}
+ \group_end:
}
-\msg_new:nnn { diffcoeff } { numbers-conflict }
+\NewDocumentCommand \difoverride { >{\TrimSpaces} m }
+ { \tl_set:Nn \l__diffcoeff_override_tl { #1 } }
+% Jacobian
+\NewDocumentCommand \jacob { >{\TrimSpaces} D..{} m m }
{
- #2~orders~of~differentiation~specified~for~#1~variables;~
- orders~[#3]\ (\msg_line_context:)~for~variables~#4.
+ \group_begin:
+ \int_zero:N \l__diffcoeff_spaced_int
+ \tl_set:Nx \l__diffcoeff_instance_tl
+ { difj \tl_if_empty:nF { #1 } { .#1 } }
+ \UseInstance { diffcoeff } { \l__diffcoeff_instance_tl }
+ { \c_false_bool } {}
+ { \l__diffcoeff_lvw_ldelim_tl #2 \l__diffcoeff_lvw_rdelim_tl }
+ { {\l__diffcoeff_lvw_ldelim_tl #3\l__diffcoeff_lvw_rdelim_tl } } {}
+ \group_end:
+ }
+% differential; #1 variant ; #2 ord(s); #3 vars; #4 exponent
+\NewDocumentCommand \dl { >{ \TrimSpaces } D..{} O{1} m e{^} }
+ {
+ \group_begin:
+ \tl_set:Nx \l__diffcoeff_instance_tl
+ { difl \tl_if_empty:nF { #1 } { .#1 } }
+ \difoverride {}
+ \tl_set:Nn \l__diffcoeff_exponent_tl { #4 }
+ \tl_if_novalue:nTF {#4}
+ { \bool_set_false:N \l__diffcoeff_exponent_bool }
+ { \bool_set_true:N \l__diffcoeff_exponent_bool }
+ \UseInstance { diffcoeff } { \l__diffcoeff_instance_tl }
+ {\c_false_bool} {#2} {} {#3} {}
+ \group_end:
}
% end of file diffcoeff.sty \ No newline at end of file
diff --git a/macros/latex/contrib/diffcoeff/diffcoeff.tex b/macros/latex/contrib/diffcoeff/diffcoeff.tex
index b37af90a43..973f074511 100644
--- a/macros/latex/contrib/diffcoeff/diffcoeff.tex
+++ b/macros/latex/contrib/diffcoeff/diffcoeff.tex
@@ -1,21 +1,26 @@
%% LyX 2.4.0-alpha3 created this file. For more info, see https://www.lyx.org/.
%% Do not edit unless you really know what you are doing.
-\documentclass[english]{article}
+\documentclass[english]{report}
\usepackage{lmodern}
\renewcommand{\sfdefault}{lmss}
\renewcommand{\ttdefault}{lmtt}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage[latin9]{inputenc}
+\setcounter{secnumdepth}{3}
+\setcounter{tocdepth}{3}
\synctex=-1
\usepackage{color}
+\definecolor{shadecolor}{rgb}{1, 0.667969, 0.5}
\usepackage{babel}
+\usepackage{cprotect}
\usepackage{wrapfig}
\usepackage{booktabs}
-\usepackage{calc}
+\usepackage{framed}
\usepackage{url}
\usepackage{amsmath}
\usepackage{amssymb}
+\usepackage{stmaryrd}
\usepackage{esint}
\usepackage[unicode=true,pdfusetitle,
bookmarks=true,bookmarksnumbered=true,bookmarksopen=true,bookmarksopenlevel=2,
@@ -33,721 +38,1095 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Textclass specific LaTeX commands.
\newenvironment{centred}%
- {\begin{center}\baselineskip=13pt\parskip=1pt}{\end{center}}
+ {\begin{center}\baselineskip=13pt\parskip=1pt }{\end{center}}
\newenvironment{example}%
{\begin{center}\ttfamily}{\end{center}}
-\newenvironment{lyxcode}
- {\par\begin{list}{}{
- \setlength{\rightmargin}{\leftmargin}
- \setlength{\listparindent}{0pt}% needed for AMS classes
- \raggedright
- \setlength{\itemsep}{0pt}
- \setlength{\parsep}{0pt}
- \normalfont\ttfamily}%
- \item[]}
- {\end{list}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
-\usepackage{babel}
-\usepackage[def-file=diffcoeff-doc]{diffcoeff}
-
+\usepackage[def-file=diffcoeff5,spaced=-1]{diffcoeff}
+
+% nabla in numer, d in denom
+\difdef { f, s } { n }
+ {
+ op-symbol = \nabla,
+ op-symbol-alt = \mathrm{d}
+ }
+% no sub nudge (a sea of white space)
+\difdef { fp } { wsp }
+ { sub-nudge = 0 mu }
+% align op left; no italic nudge
+\difdef { f } { left0 }
+ {
+ *op-set-left = true,
+ *italic-nudge = 0 mu
+ }
+% align op left; italic nudge
+\difdef { fp } { left }
+ {
+ op-symbol = \partial,
+ op-order-nudge = 1 mu,
+ *op-set-left = true,
+ *italic-nudge = 3 mu
+ }
+% partial variant of \diff
+\difdef { f } { p }
+ {
+ op-symbol = \partial,
+ op-order-nudge = 1 mu
+ }
+% partial, 3mu sep of terms
+\difdef { fp, sp } { 3mu }
+ { multi-term-sep = 3 mu }
+% D jacobian
+\difdef { j } { D }
+ { op-symbol = D }
+% square bracket jabobian
+\difdef { j } { [ }
+ {
+ lvwrap-Ldelim = \onemu\mleft [,
+ lvwrap-Rdelim = \mright ]
+ }
+% mimicking the \Braket command
+% of the braket package
+\difdef{ s }{ bk }
+ {
+ slash-tok = ,
+ op-symbol = ,
+ multi-term-sep = 3mu\middle|\mskip3mu ,
+ outer-Ldelim=\left\langle ,
+ outer-Rdelim=\right\rangle
+ }
+\NewDocumentCommand \Braket { m }
+ {
+ \difoverride {\negmu}
+ \difs.bk.{}{#1}[]
+ }
+
+\ifdefined\showcaptionsetup
+ % Caption package is used. Advise subfig not to load it again.
+ \PassOptionsToPackage{caption=false}{subfig}
+\fi
+\usepackage{subfig}
\makeatother
\begin{document}
\title{\texttt{diffcoeff}~\\
a \LaTeX{} package to ease\texttt{ }the~\\
writing of differential coefficients \\
- Version 4.1}
+ Version 5.0}
\author{Andrew Parsloe\\
{\small (ajparsloe@gmail.com)}}
\maketitle
\begin{abstract}
-\noindent This package eases the consistent writing of ordinary, partial
-and other derivatives of arbitrary (algebraic or numeric) order. For
-mixed partial derivatives, the total order of differentiation is calculated
-by the package. Optional arguments allow for points of evaluation
-(ordinary derivatives), or variables held constant (partial derivatives),
-and the placement of the differentiand in numerator or appended. The
-package uses \texttt{xtemplate}, allowing systematic fine-tuning of
-the display and generation and use of variant forms, including derivatives
-built from $D$, $\Delta$ or $\delta$. A command for differentials
-ensures the $\dl x$ (or $\dl.up.x$) used in integrals is consistent
-with the form used in derivatives.
+\noindent \verb`diffcoeff` is a \LaTeX{} package to ease the writing
+of ordinary, partial and other derivatives of arbitrary algebraic
+or numeric order. For mixed partial derivatives, the total order of
+differentiation is calculated by the package. Optional arguments allow
+for points of evaluation (ordinary derivatives), or variables held
+constant (partial derivatives), and the placement of the differentiand
+in numerator or appended. Besides $\diff yx$, forms like $\difs yx$
+and $\difcp yx$ are also available, as well as derivatives built
+from $D$, $\Delta$, $\delta$, and configurable jacobians and differentials.
+Other notations like line elements ($\dl.+.{x,y,z}^{2}$) and bra-kets
+are easily produced.
+
+Version 5 of \verb`diffcoeff` more fully embraces the configurability
+offered by \verb`xtemplate` than earlier versions. Some incompatibilities
+have arisen, but all is not lost: version 4 is still available with
+the command
+
+\verb`\usepackage[<options>]{diffcoeff}[=v4]`
\end{abstract}
-\tableofcontents{}
-
-\section{Introduction}
-
-The \LaTeX{} package \texttt{diffcoeff.sty} is written in the expl3
-language of \LaTeX 3\texttt{ }and requires the bundles \texttt{l3kernel}
-which is now part of standard \LaTeX{} (since early 2020) and \texttt{l3packages}
-(the latter for the \texttt{xparse}, \texttt{l3keys2e} and especially
-\texttt{xtemplate} packages\texttt{)}. The package is invoked in the
-usual way by entering
-\begin{lyxcode}
-\textbackslash usepackage\{diffcoeff\}
-\end{lyxcode}
-in the preamble of your document.
-
-\subsubsection*{Note on terminology}
-
-I refer throughout to the quantity or function being differentiated
-as the \emph{differentiand} or \emph{derivand }(in line with \emph{integrand},
-\emph{operand}, etc.).
+\noindent\begin{minipage}[t]{1\columnwidth}%
+\begin{shaded}%
+
+\subsubsection*{For users of version 4}
+
+The \verb`\diff` and \verb`\diffp` commands of version 4 of \verb`diffcoeff`
+remain, but lack the `spacing switch' \verb`!` (which on reflection
+was a mistake) and, more noticeably, the `slash switch' \verb`/`.
+Slash-fraction derivatives are now created with the \verb`\difs`
+and \verb`\difsp` commands. New commands \verb`\difc` and \verb`\difcp`
+produce derivatives in `compact notation' like $\difc yx$ and $\difcp yx$.
+To avoid cluttering formulas with a second square-bracket delimited
+optional argument before the differentiand, the order-override option
+has been replaced by a new command \verb`\difoverride`. The order
+of differentiand and variable(s) of differentiation can now be reversed,
+when the differentiand is appended, by using a second star, e.g.,
+\verb`\diffp**`. The two-argument \verb`\diffdef` command of earlier
+versions has been replaced by the three-argument command \verb`\difdef`,
+the additional argument determining which one or more of the \verb`f`,
+\verb`s`, \verb`c`, \verb`fp`, \verb`sp` or \verb`cp` forms the
+defined variant applies to. The differential command \verb`\dl` has
+been rewritten and is now fully template-configurable (allowing easy
+writing of line elements like $\dl.+.{x,y,z}^{2}$), and the jacobian
+command \verb`\jacob` is also configurable. Indeed version 5 of \verb`diffcoeff`
+more fully embraces the configurability offered by the \verb`xtemplate`
+package than previous versions, bringing other notations -- like
+those of the \verb`braket` package -- within its compass.
+
+\subsubsection*{ISO defaults}
+
+Unlike the default set-up in version 4, the defaults in version 5
+of \verb`diffcoeff` are chosen to reflect ISO recommendations; see
+the standard ISO 80000-2. In particular this means upright `d's
+and subscripted parentheses enclosing a derivative to indicate a point
+of evaluation. This document is written with those defaults. For those
+(like the author) who prefer math-italic `d's and a subscripted
+vertical rule to indicate a point of evaluation, the means of creating
+`variant forms' or changing the defaults is readily available; see
+§§\ref{sec:Variant-forms}, \ref{sec:ChangingDefaults}.\end{shaded}%
+\end{minipage}
-\subsubsection*{New in version 4.0}
+\tableofcontents{}
-(See §\ref{sec:Version-comparison} for a comparison of versions.)
-Version 4.0
+\chapter{Introduction}
+
+\verb`diffcoeff.sty` is written in the \verb`expl3` language of
+\LaTeX 3, now part of standard \LaTeX{} since February 2020. A \LaTeX{}
+distribution from or later than that date is assumed. The package
+also requires the packages \verb`xtemplate` (part of the \verb`l3packages`
+bundle) and \verb`mleftright`. The package is loaded in the usual
+way by entering
+\begin{verbatim}
+ \usepackage{diffcoeff}
+\end{verbatim}
+in the preamble of your document or, if package options are being
+used,\footnote{Angle brackets indicate possible user input (\emph{without} the angle
+brackets).}
+\begin{verbatim}
+ \usepackage[<options>]{diffcoeff}
+\end{verbatim}
+The interface of \verb`diffcoeff` with version 5 has changed from
+earlier versions. If you want the familiar behaviour of version 4,
+add to these commands a trailing optional argument like this,
+\begin{verbatim}
+ \usepackage[<options>]{diffcoeff}[=v4]
+\end{verbatim}
+(with no space after the `=' sign!). Of course you will not get
+the new features of version 5. Working with version 4 is described
+in the document \verb`diffcoeff4.pdf`.
+
+\section{Package options}
+
+\label{sec:Package-options}There are four package options, which
+are entered in a comma-separated list in the optional argument of
+the \verb`\usepackage` command. The \emph{second} and \emph{fourth}
+are new with version 5 of \verb`diffcoeff`.
\begin{enumerate}
-\item enables the insertion of a small space before the differentiand, either
-as the default behaviour (package option \verb`spaced`) or at explicit
-request (argument \verb`!` of the \verb`\diff` command); see §\ref{subsec:Spacing-before-derivand};
-\item prevents the ligature $df$ that marred previous versions; this is
-now rendered $\dl f$;
-\item offers the document command \verb`\dlp` for the \emph{partial} differential;
-see §\ref{subsec:Partial-differential};
-\item no longer accepts \emph{the braced form} of the\emph{ }trailing optional
-argument specifying a point of evaluation or (for partial derivatives)
-variables held constant. This was a relic from version 1 of \texttt{diffcoeff},
-and has been deprecated since version 2.
-\end{enumerate}
-
-\subsubsection*{New in version 4.1}
+\item The first package option is the \verb`spaced` option which takes
+three values:
\begin{enumerate}
-\item changes the code handling the \verb`long-var-wrap` setting to avoid
-a problem with a change in \verb`xtemplate` (see \url{https://tex.stackexchange.com/questions/646976/error-with-package-diffcoeff})\footnote{Based on a suggestion from \noun{Joseph Wright}.};
-\item prevents (hitherto overlooked) ligatures in the \emph{denominators}
-of differential coefficients.
+\item \verb`spaced=1` inserts a small space before the differentiand; this
+is the default so that entering \verb`spaced` is equivalent to \verb`spaced=1`;
+\item \verb`spaced=0` inserts no space before the differentiand; \verb`diffcoeff`
+is initialized to \verb`spaced=0` so that if the spaced option is
+not used \verb`spaced=0` is assumed;
+\item \verb`spaced=-1` inserts a small space before the differentiand \emph{if
+it contains more than one token}, and no space otherwise. The present
+document uses \verb`spaced=-1`.
\end{enumerate}
-
-\subsection{Package options}
-
-\label{subsec:Package-options}There are three package options, which
-are entered in a comma-separated list in the optional argument of
-the \texttt{\textbackslash usepackage} command.
-\begin{enumerate}
-\item The first is a switch, \texttt{ISO}, which turns on formatting conforming
-to ISO recommendations, principally upright `d's:
-\begin{lyxcode}
-\textbackslash usepackage{[}ISO{]}\{diffcoeff\}
-\end{lyxcode}
-The full effect of this option is disscussed in §\ref{sec:Changing-defaults}.
-\item The second is another switch, \texttt{spaced}, and \emph{is new with
-version 4 }of \texttt{diffcoeff}. This switch ensures a small space
-is inserted before the differentiand:
-\begin{lyxcode}
-\textbackslash usepackage{[}spaced{]}\{diffcoeff\}
-\end{lyxcode}
-This is discussed in §\ref{subsec:Spacing-before-derivand}.
-\item The third requires a filename \texttt{<filename>} for a file \texttt{<filename>.def}
-containing definitions of variant forms of derivative:
-\begin{lyxcode}
-\textbackslash usepackage{[}def-file=<filename>{]}\{diffcoeff\}
-\end{lyxcode}
-This is discussed in §\ref{subsec:The-.def-file}. For the present
-document, the call is
-\begin{lyxcode}
-\textbackslash usepackage{[}def-file=diffcoeff-doc{]}\{diffcoeff\}
-\end{lyxcode}
+This option is discussed in §\ref{subsec:Spacing-before-derivand}.
+\item For the second package option, by entering \verb`mleftright` in the
+options list the command \verb`\mleftright` is automatically inserted
+in the preamble. The effect is to change all occurrences of \verb`\left`,
+\verb`\right` in the document to \verb`\mleft`, \verb`\mright`
+so that the spacing around scalable delimiters modified by \verb`\left`,
+\verb`\right` is reduced; see the box below and §\ref{subsec:mleftright}.
+The present document does not use this package option.
+\item The third package option requires the \verb`<filename>` of a file
+with extension \verb`.def`, \verb`<filename>.def`, containing definitions
+of variant forms (see §\ref{sec:Variant-forms}) of derivative:
+\begin{verbatim}
+ \usepackage[def-file=<filename>]{diffcoeff}
+\end{verbatim}
+This is discussed in §\ref{subsec:The-.def-file}. The present document
+uses the package option \verb`def-file=diffcoeff5`.
+\item The fourth package option \verb`DIF` is a comma list of \emph{key=value}
+statements amending the built-in defaults for the `grandparent'
+template \verb`DIF`; see §\ref{subsec:Changing-DIF-defaults}. The
+present document does not use this package option.
\end{enumerate}
+\noindent\begin{minipage}[t]{1\columnwidth}%
+\begin{shaded}%
+To see the effect of the \verb`mleftright` package, consider the
+expression
+\begin{centred}
+\verb`\[ \ln \left(\frac xy\right),\quad\sin\left(x^2\right). \]`
+$\Longrightarrow$ \[ \ln \left(\frac xy\right),\quad\sin\left(x^2\right). \]
+\end{centred}
+in which there is significant whitespace before and after the parentheses.
+The package \verb`mleftright` enables this whitespace to be reduced
+by using \verb`\mleft`, \verb`\mright` in place of \verb`\left`,
+\verb`\right`:
+\begin{centred}
+\verb`\[ \ln \mleft(\frac xy\mright),\quad\sin\mleft(x^2\mright). \]`
+$\Longrightarrow$ \[ \ln \mleft(\frac xy\mright),\quad\sin\mleft(x^2\mright). \]
+\end{centred}
+\end{shaded}%
+\end{minipage}
-\section{A Rogues' Gallery of derivatives}
-
-\label{sec:Rogues'-gallery}Browsing through texts on statistical
-mechanics, relativity and classical mechanics I find the following
-choice examples of derivatives `disporting every which way'.
+\noindent %
+\noindent\begin{minipage}[t]{1\columnwidth}%
+\begin{shaded}%
+If you put \verb`\mleftright` in the preamble, which is what the
+\verb`mleftright` package option does, then all occurrences of \verb`\left`,
+\verb`\right` in the document will be affected. \verb`\left`, \verb`\right`
+can be restored to their normal behaviour by the command \verb`\mleftrightrestore`.
+Rather than use \verb`\mleft`, \verb`\mright` explicitly, as in
+the example, the same effect can be obtained by using \verb`\left`,
+\verb`\right` and preceding the expression with the command \verb`\mleftright`:
+\begin{verbatim}
+ \mleftright
+ \[ \ln \left(\frac xy\right),\quad\sin \left(x^2\right). \]
+ \mleftrightrestore
+\end{verbatim}
+$\Longrightarrow$ \mleftright
+ \[ \ln \left(\frac xy\right),\quad\sin \left(x^2\right). \]
+ \mleftrightrestore \end{shaded}%
+\end{minipage}\medskip{}
+For the present document, the call is
+\begin{verbatim}
+ \usepackage[def-file=diffcoeff5,spaced=-1]{diffcoeff}
+\end{verbatim}
-Multi-character variables of differentiation un-parenthesized:
+\section{A Rogues' Gallery of derivatives}
+\label{sec:Rogues'-gallery}Browsing through some (rather old) calculus
+textbooks and texts on statistical mechanics, relativity and classical
+mechanics I find the following choice examples of derivatives `disporting
+every which way'.
+\begin{itemize}
+\item Multi-character variables of differentiation un-parenthesized:
\begin{equation}
-\diffp{\frac{\psi}{\Theta}}{\frac{1}{\Theta}},\quad\diffp{E/T}{1/T},\quad\diffp{\ln f}{\ln x_{0}},\quad\diffp\psi{a_{i},\frac{1}{\Theta}},\quad\diffp{\mathcal{L}}{\eta_{,i}^{(r)}}.\label{eq:eg1}
-\end{equation}
-Multi-character variables of differentiation parenthesized:
-\begin{equation}
-\diffp H{\displaystyle \diffp S{q_{k}}[]},\quad\diffp\varepsilon{(1/\Theta)}.\label{eq:eg2}
+\diffp{\frac{\psi}{\Theta}}{\frac{1}{\Theta}},\quad\diffp{E/T}{1/T},\quad\diff{\ln f}{\ln x_{0}},\quad\diffp\psi{a_{i},\frac{1}{\Theta}},\quad\diffp{\mathcal{L}}{\eta_{,i}^{(r)}}.\label{eq:eg1}
\end{equation}
-Higher-order derivatives where the parentheses do not or sometimes
-do include the operator:
+\item Multi-character variables of differentiation parenthesized in \emph{higher-order}
+derivatives, where the parentheses do not or (sometimes) do include
+the operator:
\begin{equation}
-\diffp[2]q{\frac{1}{\Theta}},\quad\diffp[2]q{1/\Theta},\quad\diffp[2]\varepsilon{a_{i}},\quad\diff.wrapall.[2]{\phi^{i}(x^{i})}{x^{i}}.\label{eq:eg3}
+\diffp[2]q{\frac{1}{\Theta}},\quad\diffp[2]q{1/\Theta},\quad\diffp[2]\varepsilon{a_{i}},\quad\diff.(dv).[2]{\phi^{i}(x^{i})}{x^{i}}.\label{eq:eg3}
\end{equation}
-Should the $d$ or $\partial$ be included within the parentheses,
+Should the $\mathrm{d}$ or $\partial$ be included within the parentheses,
as in the last of (\ref{eq:eg3}), or not, as in the others? Logic
says `yes'; practice suggests (generally) `no'.
-
-Indicating a point of evaluation is similarly varied:
+\item Indicating a point of evaluation is similarly varied:
\begin{equation}
-\diff.pvrule.\phi\varepsilon[\varepsilon=\varepsilon_{0}],\quad\diff.pvrule.[2]\phi\varepsilon[\varepsilon=\varepsilon_{0}],\quad\diff.psqbra.{b^{\beta}}{a^{\alpha}}[b=0],\quad\diff.paren.uv[v=0].\label{eq:eg4}
+\diffp.|.\phi\varepsilon[\varepsilon=\varepsilon_{0}],\quad\diff.|.[2]\phi\varepsilon[\varepsilon=\varepsilon_{0}],\quad\diffp.].{b^{\beta}}{a^{\alpha}}[b=0],\quad\diff uv[v=0].\label{eq:eg4}
\end{equation}
ISO 80000-2 (item 2.11.13) favours the last of these -- parentheses
-- for ordinary derivatives. Presumably, partial derivatives should
follow suit, although parentheses are also used to indicate variables
held constant:
\begin{equation}
-\diffp*{\frac{P}{T}}U[V],\quad\diffp S{N_{2}}[U,V,N_{1}],\quad\diffp S/T[V].\label{eq:eg5}
+\diffp*{\frac{P}{T}}U[V],\quad\diffp S{N_{2}}[U,V,N_{1}],\quad\difsp ST[V]\,.\label{eq:eg5}
\end{equation}
-
-Other symbols besides $d$ and $\partial$ are used to denote derivative-like
-quantities. From introductory calculus and from classical mechanics
-and thermodynamics come $\delta$ and $\Delta$, from fluid mechanics
-comes $D$:
+\item Other symbols besides $\mathrm{d}$ and $\partial$ are used to denote
+derivative-like quantities. From introductory calculus and from classical
+mechanics and thermodynamics come $\delta$ and $\Delta$, from fluid
+mechanics comes $\mathrm{D}$:
\begin{equation}
-\diff.delta.yx,\quad\diff.D.\rho t,\quad\diff.pDelta.UT[V],\quad\diff.Delta.U/T,\quad\diff.delta.{\mathcal{L}}{\eta^{(r)}}.\label{eq:eg6}
+\diff.gd.yx,\quad\diff.D'.\rho t,\quad\diff.gD.UT[V],\quad\difs.gD.UT,\quad\diff.gd.{\mathcal{L}}{\eta^{(r)}}.\label{eq:eg6}
\end{equation}
-
-There are those, like the International Organization for Standardization
-(ISO), who stipulate (or prefer) an upright `d' for their derivatives:
+\item There are those, like the International Organization for Standardization
+(ISO), who stipulate (or prefer) an upright $\mathrm{d}$ for their
+derivatives, and there are those (like the author, through sixty years
+of habit) who prefer a math-italic $d$:
\begin{equation}
-\diff.up.yx.\label{eq:eg11}
+\diff yx,\qquad\diff.d'.yx,\label{eq:eg11}
\end{equation}
-When the differentiand is too big or awkward to sit in the numerator
-and is appended to the operator, the $d$ or $\partial$ in the numerator
-is generally centred -- but not always. In texts prior to the age
-of computerised typesetting one will sometimes find the symbol pushed
-to the \emph{left}:
+and of course also in slash-fraction form $\difs yx$, $\difs.d'.yx$.
+Subscripted forms of derivative are also used -- for example, $\difcp Fx$,
+or in the discussion of differential equations one sometimes comes
+across expressions like
+\[
+\difc.bD.[2]y{x}+2\difc.bD.y{x}-4=0.
+\]
+\item When the differentiand is too big or awkward to sit in the numerator
+and is appended to the operator, the $\mathrm{d}$ or $\partial$
+in the numerator is generally centred -- but not always. In texts
+prior to the age of computerised typesetting one will sometimes find
+the symbol pushed to the \emph{left}:
\begin{equation}
-\diff.pleft.*{\diffp{x^{i^{*}}}{x^{k^{*}}}{}}{x^{l^{*}}},\quad\diff.left.*{\left(\frac{m\mathbf{q}_{x}}{\sqrt{1-q^{2}}}\right)}{t}.\label{eq:eg12}
+\diffp.left.*{\diffp.left.{x^{i^{*}}}{x^{k^{*}}}}{x^{l^{*}}},\quad\diff.left0.*{\left(\frac{m\mathbf{q}_{x}}{\sqrt{1-q^{2}}}\right)}{t}.\label{eq:eg12}
\end{equation}
-The observant will note an italic adjustment with the first expression,
-so that the $\partial$ in the numerator and the $\partial$ in the
-denominator line up in a slanting column, but no such adjustment for
-the $d$-s in the second derivative.
-
-Then there is the case when the operator in the numerator differs
+The keen-eyed will note an italic adjustment with the first expression,
+so that the $\partial$s in the numerators are indented a little (to
+line up -- more or less -- in a slanting column with the $\partial$s
+in the denominators).
+\item Then there is the case when the operator in the numerator differs
from that in the denominator. For instance, in tensor calculus acceleration
is sometimes written
\[
-\diff.nabla.{v^{i}}t=\diff{v^{i}}t+\Gamma_{k\hphantom{i}h}^{\hphantom{k}i}v^{h}\diff{y^{k}}t
+\diff.n.{v^{i}}t=\diff{v^{i}}t+\Gamma_{k\hphantom{i}h}^{\hphantom{k}i}v^{h}\diff{y^{k}}t
\]
where $\nabla v^{i}$ is the `absolute differential' of the velocity
$v^{i}$.
+\end{itemize}
+The \verb`diffcoeff` package has the generative power to cope with
+all these variations -- see §\ref{sec:Variant-forms} -- although
+it is unlikely an author should need to call on this capacity to anything
+like the extent required for this Rogues' Gallery.
+
+\chapter{Syntax and use}
+
+\verb`diffcoeff` aims to ease the writing of derivatives (sometimes
+also called differential coefficients). There are long-established
+shorthands available in a few cases: $\dot{x}$ and $\ddot{x}$ for
+the time derivatives of a function $x$ of time $t$; $y'$ and $y''$
+for the derivatives of a function $y$ (usually) of $x$. But mostly
+derivatives are expressed in fraction form and require more keystrokes
+to compose. It is here that \verb`diffcoeff` is aimed. It uses three
+pairs of commands: \verb`\diff` and \verb`\diffp` to write (upright)
+fraction forms of ordinary and partial derivatives like $\diff yx$,
+$\diffp yx$, generally intended for display-style environments; \verb`\difs`
+and \verb`\difsp` for slash-fraction forms of ordinary and partial
+derivatives like $\difs yx$, $\difsp yx$, generally intended for
+text-style environments; and \verb`\difc` and \verb`\difcp` to write
+compact forms of ordinary and partial derivatives like $\difc yx$
+and $\difcp yx$. (Of these, the `s' forms replace the slash argument
+for the \verb`\diff`, \verb`\diffp` commands in version 4 of \verb`diffcoeff`,
+and the `c' form is new to version 5.\cprotect\footnote{Suggested by a question on \TeX{} StackExchange: \url{https://tex.stackexchange.com/questions/652223/write-a-derivative-operator-without-denominator-using-diffcoef/652298#652298}})
+
+\subsubsection*{Note}
-Version 2 or later of the \texttt{diffcoeff} package has the generative
-power to cope with all these variations -- see §\ref{sec:Changing-defaults}
--- although it is unlikely an author should need to call on this
-capacity to anything like the extent required for this Rogues' Gallery.
-
-Finally and new with version 4 of \texttt{diffcoeff}, is the ability
-to insert space before the differentiand, something that had to be
-done explicitly by the user before. One way of thinking of a derivative
-is as an operator $\diff{}x$ applied to a function $F(x)$ producing
-another function $F'(x)$, a \emph{derived }function, the derivative.
-Although the original function is included in the numerator of the
-differential coefficient, a small space between the $d$ and $F$
-feels natural to separate the thing operated on from the thing operating:
-\[
-F'(x)=\diff!{F(x)}x.
-\]
-\texttt{diffcoeff} can now produce such spaced derivatives, either
-as the default behaviour or at explicit request; see §\ref{subsec:Spacing-before-derivand}.
-
-\newpage{}
+I refer throughout to the quantity or function being differentiated
+as the \emph{differentiand} or \emph{derivand }(in line with \emph{integrand},
+\emph{operand}, etc.) and shall sometimes use \verb`\difx` (resp.
+\verb`\difxp`) to make general statements about any or all of \verb`\diff`,
+\verb`\difs` or \verb`\difc` (resp.\verb`\diffp`, \verb`\difsp`,
+\verb`\difcp`).
+
+\section{Syntax}
+
+All commands, \verb`\difx`, \verb`\difxp`, share the same syntax.
+With options present the syntax is
+\begin{verbatim}
+ \difx.name.*[order-spec]{differentiand}
+ {variable(s)}[pt of eval]
+
+ \difx.name.**[order-spec]{variable(s)}
+ {differentiand}[pt of eval]
+\end{verbatim}
+The syntax is identical for \verb`\difxp`. The seven arguments have
+the following meanings:
+\begin{itemize}
+\item \verb`name` (optional) A dot-delimited name to distinguish a variant
+form (non-default form) of derivative; not discussed further until
+§\ref{chap:Templates-defaults-variants} below, and specifically,
+§\ref{sec:Variant-forms}.
+\item \verb`*` (optional) The presence of a star (asterisk) signals: \emph{append}
+the differentiand; its absence means the differentiand appears in
+the numerator of an upright- or slash-fraction form derivative; no
+effect for compact-form derivatives unless (see next) a second \verb`*`
+is present; see §\ref{subsec:Appending-the-differentiand}.
+\item \verb`*` (optional) The presence of a \emph{second} star signals
+that the argument specifying the variable(s) of differentiation comes
+\emph{before} the argument specifying the differentiand; this is sometimes
+convenient when a complicated or lengthy differentiand is appended;
+see §\ref{subsec:Transposing-the-argument}.
+\item \verb`order-spec` (optional) The order of differentiation when differentiating
+in a single variable, or a comma list of orders of differentiation
+for a mixed partial derivative; see §\ref{subsec:Higher-order-derivatives}
+and §\ref{subsec:Mixed-partial-derivatives}.
+\item \verb`differentiand` (mandatory) The function being differentiated.
+\item \verb`variable(s)` (mandatory) The variable of differentiation or
+a comma list of variables of differentiation (for a mixed partial
+derivative).
+\item \verb`pt of eval` (optional) Point of evaluation or, for partial
+derivatives, variable or variables held constant; \emph{no space}
+before the left square bracket; see §\ref{subsec:Point-of-evaluation}.
+\end{itemize}
-\section{Ordinary derivatives \protect\label{sec:Ordinary-derivatives}}
+\section{General use}
-Writing\textbf{ }\texttt{\textbackslash diff\{y\}\{x\}} will produce
-$\diff{y}{x}$ in text style (i.e., placed between \texttt{\textbackslash (
-\textbackslash )} or \texttt{\$ \$}) or
+\label{sec:General-use}Writing \verb`\diff{y}{x}` will produce $\diff{y}{x}$
+in an inline math environment (i.e., placed between \verb`\( \)`
+or \verb`$ $`) or
\[
\diff{y}{x}
\]
-in display style (i.e., placed between \texttt{\textbackslash{[}
-\textbackslash{]}} ). In fact \texttt{\textbackslash diff yx} (omitting
-the braces) will produce these results, with a saving on keystrokes.
-The braces are needed only when an argument -- the differentiand
-or the variable of differentiation -- is multi-token.
+in display style (placed, for instance, between {\ttfamily\verb`\[ \]`}
+). In fact \verb`\diff yx` (omitting the braces) will produce these
+results, with a saving on keystrokes. The braces are needed only when
+an argument -- the variable of differentiation, or the differentiand
+-- is multi-token:
+\begin{centred}
+\verb`\[ \diff{\ln x}x \]` $\Longrightarrow$ \[ \diff{\ln x}x\]
+\end{centred}
\begin{itemize}
-\item If you want upright `$\mathrm{d}$'s as default, as ISO 80000-2 recommends,
-rather than the math-italic `$d$'s used here, this can easily be
-done with the package option \texttt{ISO}; see §\ref{sec:Changing-defaults}
-on changing default settings.
+\item If you want math-italic `$\mathrm{d}$'s as default, see §\ref{sec:ChangingDefaults}
+on changing default settings. As noted earlier, upright `d's conform
+to the standard ISO 80000-2 and are used in this document.
\end{itemize}
For inclusion in a line of text you might prefer to use a slash-fraction
-form of derivative. That is achieved by inserting a slash, `/', between
-numerator and denominator arguments: \texttt{\textbackslash diff\{\textbackslash ln
-x\}/x} produces $\diff{\ln x}/x$. Braces are required for the numerator
-in this case since it contains more than one token.
+form of derivative. That is achieved with the \verb`\difs` command:
+\verb`$ \difs yx $` produces $ \difs yx $. If you want still more
+compactness, you can use the \verb`\difc` (`c' for \emph{compact})
+command: \verb`$ \difc yx $` produces the form $ \difc yx $.
+
+Partial derivatives follow the same pattern as ordinary derivatives.
+The commands this time are \texttt{\textbackslash}\verb`diffp`,
+\verb`\difsp` and \verb`\difcp` for (upright) fraction, slash fraction
+and compact forms of partial derivative. Thus \verb`\diffp{F}{x}`,
+or \verb`\diffp Fx` with a saving on keystrokes, produce $\diffp Fx$
+in text style and
+\[
+\diffp{F}{x}
+\]
+in display style. (As for \verb`\diff`, the omission of braces is
+possible when dealing with a single-token differentiand or differentiation
+variable.) For inline use, \verb`\difsp Fx`, displays as $\difsp Fx$
+and \verb`\difcp` displays as $\difcp Fx$. Given that \verb`\partial`
+takes 8 keystrokes to type, all forms\emph{ }economise on keystrokes.
\subsection{Spacing before the differentiand}
\label{subsec:Spacing-before-derivand}There are (at least) two different
-ways in which we think of derivatives.\footnote{I thank \noun{Hans Schülein} for first raising this issue with me
-and for subsequent thoughtful comments. } We are all familiar with the argument presented in elementary calculus
-books where a curve is shown, and a point on the curve through which
-a chord has been drawn. The chord is a side -- the hypotenuse --
-of a small right-angled triangle, the other sides having lengths $\delta x$
-and $\delta y$ and being parallel to the coordinate axes. The slope
-of the chord is $\diffd yx$. By drawing smaller and smaller chords
-through the point, the ratio $\diffd yx$ approaches the slope of
-the tangent to the curve at the point. We write
+ways in which we think of derivatives. We are all familiar with the
+argument presented in elementary calculus books where a curve is shown,
+and also a point on the curve through which a chord has been drawn.
+The chord is the hypotenuse of a small right-angled triangle, the
+other sides having lengths $\delta x$ and $\delta y$ and being parallel
+to the coordinate axes. The slope of the chord is $\diff.gd.yx$.
+By drawing smaller and smaller chords through the point, the ratio
+$\diff.gd.yx$ approaches the slope of the tangent to the curve at
+the point. We write
\[
\diff yx
\]
-for the limit of $\diffd yx$. It is natural to think of $\dl y$
-and $\dl x$ as tiny lengths, like $\delta y$ and $\delta x$, in
-which case it would be quite wrong to insert space between the $d$
-and the $y$ (let alone the $d$ and the $x$). $dy$ is a single
-object, called a differential, and we write expressions like
-\begin{centred}
-\verb`\[ dy=\diff yx dx \]` $\Longrightarrow$
+for the limit of $\diff.gd.yx$. It is natural following this line
+of argument to think of $\dl y$ and $\dl x$ as tiny lengths, like
+$\delta y$ and $\delta x$, in which case it would be quite wrong
+to insert space between the $\mathrm{d}$ and the $y$ (let alone
+the $\mathrm{d}$ and the $x$). $\dl y$ is a single object, called
+a differential, and we write expressions like
\[
\dl y=\diff yx\dl x
\]
-\end{centred}
-and justly call the `fraction' in this expression a differential
-coefficient.
+and justly call the fraction in this expression a \emph{differential
+coefficient}.
But there is another way of viewing differentiation: as a process
-producing (or \emph{deriving}) one function, $f'(x)$, from another,
-$f(x)$. Here the sense is of applying $\diff{}x$ to $f(x)$. Although
-we include $f(x)$ in the numerator it is not attached to the $d$
-and should be separated from it by a small space:
-\begin{centred}
-\verb`\[ f'(x)=\diff!{f(x)}x \]` $\Longrightarrow$
+producing (or \emph{deriving}) one function, $y'(x)$, from another,
+$y(x)$. Here the sense is of applying $\diff{}x$ to a quite separate
+object, the function $y(x)$. Although we include $y(x)$ in the numerator
+it is distinct from the $d$ and should be separated from it by a
+small space:\footnote{I thank \noun{Hans Schülein} for first raising this issue with me
+and for subsequent thoughtful comments.}
\[
-f'(x)=\diff!{f(x)}x.
+y'(x)=\diff{y(x)}x.
\]
-\end{centred}
-Here the `fraction' on the right is another name for the derived
-function $f'$ and is justly called the derivative of $f$. As you
-can see a small space has been inserted between the $d$ and the $f$
-in the numerator. By default the space is \texttt{3 mu} but with the
-ability to stretch by \texttt{1 mu} or shrink by\texttt{ 2 mu}{\ttfamily\footnote{In \TeX -speak, \texttt{3mu plus 1mu minus 2mu}. }}
-as \TeX{} adjusts lines to fit on the page. (A `mu' is a `math unit'
-and is one eighteenth of a quad.) To achieve this result I have inserted
-an exclamation mark \verb`!` before the braces delimiting the differentiand.
+Here the fraction on the right is another name for the derived function
+$y'$ and is justly called the \emph{derivative} of $y$. As you can
+see a small space has been inserted between the $\mathrm{d}$ and
+the $y$ in the numerator. By default the space is \verb`3 mu` but
+with the ability to stretch by \verb`1 mu` or shrink by\texttt{ }\verb`2 mu`
+--\texttt{ }\verb`3 mu plus 1 mu minus 2 mu`\texttt{ }in \TeX -speak\footnote{Or even \texttt{3muplus1muminus2mu}.}
+-- as \TeX{} adjusts lines to fit on the page. (A `mu' is a `math
+unit' and is one eighteenth of a quad.) The size of the space inserted
+by default can be easily changed; see §\ref{sec:Variant-forms} and
+§\ref{sec:ChangingDefaults}.
\begin{itemize}
-\item You may want all or most of your derivatives to have this space and
-therefore will not want to be inserting exclamation marks in every
-\texttt{\textbackslash diff} command. The \texttt{spaced} package
-option switches the default behaviour to spaced derivatives (in which
-case the \texttt{!} switch now creates an \emph{un-spaced} derivative).
-The size of the space inserted by default can be easily changed; see
-§\ref{sec:Changing-defaults}.
+\item You may want all or most of your derivatives to have this space before
+the derivand. The \verb`spaced=1` package option switches this behaviour
+on. However, I have used the \verb`spaced=-1` option for the present
+document which inserts space only if the derivand contains \emph{more
+than one token}. Thus \verb`y(x)` will have space inserted before
+it, but \verb`y` alone will not. This (I think) maintains the distinction
+between a differential coefficient, thought of as a ratio of tiny
+lengths, and a derivative, thought of as an operator applied to a
+function. \verb`spaced=0` inserts no space before the derivand.
+\item In version 4 of \verb`diffcoeff` an argument was added to the \verb`\diff`
+command to manually introduce a space (the \verb`!` switch) before
+the differentiand. This was a mistake and has been removed. If you
+wish to adjust the spacing, there are plenty of (short) commands in
+\LaTeX{} and \verb`diffcoeff` to do the job; see immediately below,
+§\ref{subsec:Spacing-commands}.
\end{itemize}
-The present document uses the un-spaced default. For backwards compatibility
-(and perhaps because the author has done this for the last 60 years),
-this is the \textquoteleft out-of-the-box\textquoteright{} default
-that \texttt{diffcoeff} uses. Authors should make a habit of using
-one form predominantly. (There is also the possibility which I haven't
-emphasized of spacing multi-token differentiands and leaving single-token
-differentiands unspaced; see §\ref{subsec:A-final-flourish}.)
-
-Slash-form derivatives also allow space before the differentiand.
-By default this has the same value as applied to the fraction form
-of derivative (but can be changed; see §\ref{sec:Changing-defaults}):
-\begin{centred}
-\verb`$ \diff!{\ln\sin x}/x $` $\Longrightarrow$ $ \diff!{\ln\sin x}/x$.
-\end{centred}
-The \verb`\diff` command has other optional arguments (e.g. to specify
-the order of differentiation) but always the exclamation mark, if
-used, immediately precedes the differentiand. It is the positioning
-of the differentiand that it affects after all and its placement immediately
-before that argument seems natural.
-
-\subsubsection{Ligatures: }
-
-Prior to v.4 of \texttt{diffcoeff}, \texttt{\textbackslash diff fx}
-produced the tight pairing evident in
-\[
-\frac{df}{dx}.
-\]
-This was a bug. From version 4.0 of \texttt{diffcoeff}, such ligatures
-are prevented: \verb`\[ \diff fx \]` $\Longrightarrow$ \[ \diff fx.\]
+Slash-form derivatives also allow space before the derivand. By default
+this is \verb`2 mu plus 1 mu minus 2 mu`, slightly reduced from the
+fraction-form value to avoid visually detaching the initial `d'
+operator from the derivative as a whole. The value can be changed;
+see §\ref{sec:Variant-forms} and §\ref{sec:ChangingDefaults}. For
+the present document, with \verb`spaced=-1`, multi-token derivands
+have the space inserted, single-token derivands do not:
+\begin{centred}
+\verb`$ \difs{\ln\sin x}x, \quad \difs st $` $\Longrightarrow$ $ \difs{\ln\sin x}x, \quad \difs st $.
+\end{centred}
+For \emph{compact-form} derivatives the space before the derivand
+is \emph{always} inserted, irrespective of the setting of the \verb`spaced`
+package option, since the subscript precludes the entire symbol ever
+being viewed as a differential -- it is always an operator operating
+on a function. The inserted space, \verb`1 mu plus 1 mu minus 1 mu`
+by default, can be changed should you wish; see §\ref{sec:Variant-forms}
+and §\ref{sec:ChangingDefaults}:
+\begin{centred}
+\verb`$ \difc{\ln\sin x}x, \quad \difc st $` $\Longrightarrow$ $ \difc{\ln\sin x}x, \quad \difc st $.
+\end{centred}
+(The space is less for compact forms since the subscript already provides
+some visual separation.) The \verb`spaced` package option has the
+same effects on partial derivatives. Thus with \verb`spaced=1` or
+\verb`spaced=-1`, \verb`3 mu plus 1 mu minus 2 mu` of space is inserted
+before the differentiand \verb`F(x,y)` in the first member of the
+following example, space of \verb`2 mu plus 1 mu minus 2 mu` in the
+second, and space of \verb`1 mu plus 1 mu minus 1 mu` in the third:
+\begin{centred}
+\verb`\[ \diffp{F(x,y)}x,\;\difsp{F(x,y)}x,\;\difcp{F(x,y)x, \]`
+\end{centred}
+$\Longrightarrow$ \[ \diffp{F(x,y)}x,\;\difsp{F(x,y)}x,\;\difcp{F(x,y)}x. \]
+
+\noindent But for single-token differentiands in this document the
+space is not inserted for upright and slash-form derivatives:
+\begin{centred}
+\verb`\[ \diffp Fx,\quad \difsp Fx. \]` $\Longrightarrow$ \[ \diffp Fx,\quad \difsp Fx. \]
+\end{centred}
+If you always want the space present, use \verb`spaced=1`; if you
+never want the space for upright- or slash-form derivatives, or wish
+to insert such space always `by hand', use \verb`spaced=0`.
\subsubsection{Spacing commands}
-\label{subsec:Spacing-commands}The \texttt{diffcoeff} package also
-offers four simple spacing commands to fine-tune the display of derivatives
-and of other quantities. These are
+\label{subsec:Spacing-commands}\LaTeX{} has its own explicit spacing
+commands. In particular \verb`\,` which is \verb`3 mu` (a thin space)
+and \verb`\!` which is \verb`-3 mu` (a negative thin space) are
+convenient in math mode. The \verb`diffcoeff` package adds four simple
+spacing commands to `fill in (most of) the gap' between these two.
+These are
\begin{description}
-\item [{\texttt{\textbackslash negmu}}] insert spacing of $-1$ mu
-\item [{\texttt{\textbackslash nilmu}}] insert spacing of $0$ mu (cf.
-use of an empty brace pair \texttt{\textbf{\{\}}} )
-\item [{\texttt{\textbackslash onemu}}] insert spacing of $1$ mu
-\item [{\texttt{\textbackslash twomu}}] insert spacing of $2$ mu
+\item [{\texttt{\textbackslash negmu}}] insert spacing of \verb`-1 mu`;
+\item [{\texttt{\textbackslash nilmu}}] insert spacing of \verb`0 mu`
+(cf. use of an empty brace pair \texttt{\textbf{\{\}}} );
+\item [{\texttt{\textbackslash onemu}}] insert spacing of \verb`1 mu`;
+\item [{\texttt{\textbackslash twomu}}] insert spacing of \verb`2 mu`.
\end{description}
+It is also worth recalling here the reduced spacing around scalable
+delimiters that results from using \verb`\mleft`, \verb`\mright`
+in place of \verb`\left`, \verb`\right`; see §\ref{sec:Package-options}
+for the \verb`mleftright` package option, and the example at §\ref{subsec:mleftright}.
-\subsection{Appending the differentiand: \texttt{\textbackslash diff{*}}}
+\subsection{Higher order derivatives}
-Some differentiands are too big or awkward to be placed neatly in
-the numerator of a derivative and it is natural to append them to
-a preceding differential operator. One way to do this is to leave
-the numerator argument empty in the \texttt{\textbackslash diff}
-command and follow the command with the differentiand. A better way
-is to star the \texttt{\textbackslash diff} command. This tells \texttt{diffcoeff}
-to append the differentiand. Thus suppose the differentiand is a polynomial,
-say $ax^{2}+bx+c$. Add a star (an asterisk) to the \texttt{\textbackslash diff}
-command:
+\label{subsec:Higher-order-derivatives}An optional argument allows
+the order of differentiation to be specified. The order need not be
+a number; an algebraic order of differentiation is perfectly acceptable
+as is a mix of the two:
\begin{centred}
-\verb`\[ \diff*{(ax^2+bx+c)}x \]` $\Longrightarrow$ \[\diff*{(ax^{2}+bx+c)}x\]
+\verb`\[ \diff[2]yx, \quad \diff[n+1]yx. \]` $\Longrightarrow$ \[ \diff[2]yx, \quad \diff[n+1]yx. \]
\end{centred}
-With the \texttt{!} switch or \texttt{spaced} package option, additional
-space (by default \texttt{3mu plus 1mu minus 2mu}) is inserted between
-the operator and the differentiand:
+As mentioned, the braces can be and have been omitted around the $x$
+and $y$ since they are single tokens. The square brackets around
+the optional order-of-differentiation argument are essential. In slash
+form,
\begin{centred}
-\verb`\[ \diff*!{(ax^2+bx+c)}x \]` $\Longrightarrow$ \[\diff*!{(ax^{2}+bx+c)}x.\]
+\verb`$ \difs[2]yx, \quad \difs[n+1]yx $` $\Longrightarrow$ $ \difs[2]yx, \quad \difs[n+1]yx, $
\end{centred}
-A virtue of using an asterisk to append the differentiand is that
-if one isn't sure whether a differentiand should be appended or not,
-it is an easy matter to simply insert or delete the asterisk to compare
-the results. For example, a second derivative is an iterated derivative
--- one in which a derivative forms the differentiand of another derivative:
+the latter of which is a bit of an eyesore. In compact form,
\begin{centred}
-\verb`\[ \diff[2]yx = \diff*{\diff yx}x \]` $\Longrightarrow$ \[ \diff[2]yx=\diff*{\diff yx}x \]
+\verb`$ \difc[2]yx,\quad\difc[n+1]yx $` $\Longrightarrow$ $\difc[2]yx,\quad\difc[n+1]yx$.
\end{centred}
-\noindent which is more elegant to my eye than
+Note that entering \verb`1` as the optional argument has no effect:
\begin{centred}
-\noindent \verb`\[ \diff[2]yx = \diff!{\diff yx}x \]` $\Longrightarrow$
-\[ \diff[2]yx=\diff!{\diff yx}x \]
+\verb`$ \diff[1]yx,\;\difs[1]yx,\;\difc[1]yx $` $\Longrightarrow$
+$\diff[1]yx,\;\difs[1]yx,\;\difc[1]yx $.
\end{centred}
-\noindent although whether the \emph{meaning} is clearer is moot.\emph{
-}It is easy to switch between the two forms on the right, simply by
-inserting or removing the asterisk.
-
-In slash style with the star option, the polynomial example becomes
+For partial derivatives when differentiating in only one variable
+the pattern is the same:
\begin{centred}
-\verb`\[ \diff*{(ax^2+bx+c)}/x \]` $\Longrightarrow$ \[ \diff*{(ax^2+bx+c)}/x \]
+\verb`\[ \diffp[2]yx, \quad \diffp[n+1]yx. \]` $\Longrightarrow$
+\[ \diffp[2]yx, \quad \diffp[n+1]yx. \]
\end{centred}
-\noindent where the parentheses around the differential operator are
-automatically inserted by \texttt{diffcoeff}. Like other elements
-of automatic formatting, this is user-adjustable; see §\ref{sec:Changing-defaults}.
-
-With the \texttt{!} switch or \texttt{spaced} package option, this
-becomes
+For the slash forms,
+\begin{centred}
+\verb`$ \difsp[2]yx,\quad \difsp[n+1]yx $` $\Longrightarrow$ $ \difsp[2]yx,\quad \difsp[n+1]yx. $
+\end{centred}
+and in compact form,
\begin{centred}
-\verb`\[ \diff*!{(ax^2+bx+c)}/x \]` $\Longrightarrow$ \[ \diff*!{(ax^2+bx+c)}/x \]
+\verb`$ \difcp[2]yx,\quad \difcp[n+1]yx $` $\Longrightarrow$ $ \difcp[2]yx,\quad \difcp[n+1]yx. $
\end{centred}
+For partial differentiation in more than one variable -- so-called
+\emph{mixed} partial derivatives -- see §\ref{subsec:Mixed-partial-derivatives}.
-\subsection{Point of evaluation\protect\label{subsec:Point-of-evaluation}}
+\subsection{Appending the differentiand}
-If you want to specify a point at which the derivative is evaluated,
-append a final optional argument. Note that there \emph{must be no
-space} before the left square bracket of the argument:\footnote{In v.1 of \texttt{diffcoeff}, this was brace-delimited. From v.2,
-square-brackets have been used and braces deprecated. From v.4, braces
-are no longer accepted.}
+\label{subsec:Appending-the-differentiand}Some differentiands are
+too big or awkward to be placed neatly in the numerator of a derivative
+and it is natural to \emph{append} them to a preceding differential
+operator. One could leave the numerator argument empty in the \verb`\diff`
+or \verb`\diffp` command and follow the command with the differentiand,
+but \verb`diffcoeff` offers a better way: star the \verb`\diff`
+or \verb`\diffp` command. This tells \verb`diffcoeff` to append
+the differentiand. Thus suppose the differentiand is a polynomial,
+say $ax^{2}+bx+c$. Add a star (an asterisk) to the \verb`\diff`
+command:
\begin{centred}
-\verb`\[ \diff[2]yx[0] \]` $\Longrightarrow\quad{\displaystyle \diff[2]yx[0]}$
+\verb`\[ \diff*{(ax^2+bx+c)}x \]` $\Longrightarrow$ \[\diff*{(ax^{2}+bx+c)}x.\]
\end{centred}
-\noindent If a space does slip in before the final optional argument,
-it will not cause a \LaTeX{} error. Instead, the argument will be treated
-as a square-bracketed mathematical expression following the derivative,
-and typeset as such.
-\begin{itemize}
-\item If you prefer to use subscripted \emph{parentheses} around the derivative
-to indicate a point of evaluation -- as ISO 80000-2 recommends --
-then this can easily be done; see §\ref{sec:Changing-defaults} on
-changing default settings. Or, more simply, use the \texttt{ISO} package
-option.
-\end{itemize}
-Because the slash form spreads the derivative out horizontally, parentheses
-are preferred here to indicate a point of evaluation:
+Or, for a partial derivative, one might want to indicate in the differentiand
+all the variables on which it depends:
\begin{centred}
-\verb`$ \diff{\ln sin x}/{sin x}[x=\pi/6] $` $\Longrightarrow$ $ \diff{\ln\sin x}/{\sin x}[x=\pi/6] $.
+\verb`\[ \diffp*[2]{\Phi(x,y,z)}x \]` $\Longrightarrow$ \[ \diffp*[2]{\Phi(x,y,z)}x. \]
\end{centred}
-\noindent A vertical rule (or `pipe') can easily become too remote
-from the opening $d$ of the differential coefficient: $\diff.svrule.{\ln\sin x}/{\sin x}[x=\pi/6]$;
-parentheses tie the whole cluster of symbols together.
-
-\subsubsection{Superscripts}
+A virtue of using an asterisk to append the differentiand is that
+if one isn't sure whether a differentiand should be appended or not,
+it is an easy matter to simply insert or delete the asterisk to compare
+the results.
-It is easy to add a superscript to a derivative to indicate evaluation
-at two points and the difference between the values:
+For instance, a second derivative is an iterated derivative -- one
+in which a derivative forms the differentiand of another . Thus
\begin{centred}
-\verb`\[ \diff {\sin x}x[0]^{\pi/2} \]` ${\displaystyle \Longrightarrow}$
-\[ \diff{\sin x}x[0]^{\pi/2} \]
+\verb`\[ \diff[2]yx = \diff*{\diff yx}x \]` $\Longrightarrow$ \[ \diff[2]yx=\diff*{\diff yx}x .\]
\end{centred}
-\noindent If you want only the superscript, no subscript, include
-the final optional argument but leave it empty. Thus, for a particle
-of mass $m$ moving along a line, distance $x$ at time $t$, the
-kinetic energy is:
+\noindent This result is more elegant to my eye than what results
+when removing the asterisk,
\begin{centred}
-\noindent \verb`$ \tfrac 12 m \diff x/t[]^2 $` $\Longrightarrow$
-$\tfrac{1}{2}m\diff x/t[]^{2}$.
+\noindent \verb`\[ \diff[2]yx = \diff{\diff yx}x \]` $\Longrightarrow$
+\[ \diff[2]yx=\diff{\diff yx}x ,\]
\end{centred}
+\noindent although whether the \emph{meaning} is clearer is moot.
+
+Since the differentiand is appended \emph{by default} in compact-form
+derivatives, starring such a derivative has no effect other than when
+a second asterisk is used to transpose the order of arguments.
-\subsection{Order of differentiation}
+\subsubsection{Transposing the argument order}
-An optional first argument allows the order of differentiation to
-be specified. The order need not be a number; an algebraic order of
-differentiation is perfectly acceptable as is a mix of the two:
+\label{subsec:Transposing-the-argument}If a \emph{second} asterisk
+follows the first, the order of the arguments specifying the differentiand
+on the one hand and variable or variables of differentiation on the
+other are reversed. Thus it is clearer to the eye to write
\begin{centred}
-\verb`\[ \diff[2]yx \]` $\Longrightarrow$ \[ \diff[2]yx,\]\verb`\[ \diff[n+1]yx \]`
-$\Longrightarrow$ \[ \diff[n+1]yx.\]
+\verb`\[ \diff**x{(ax^2+bxy+cy^2)} \]` $\Longrightarrow$ \[\diff**x{(ax^2+bxy+cy^2)}\]
\end{centred}
-As mentioned, the braces can be and have been omitted around the $x$
-and $y$; the square brackets around the optional argument, the order
-of differentiation, are essential. For a first-order derivative, no
-optional argument is needed and entering \texttt{1} as the optional
-argument has no effect:
+than \verb`\[ \diff*{(ax^2+bxy+cy^2)}x \]`, where the eye has to
+search for the variable of differentiation. This is especially the
+case if the differentiand contains more than one variable and commands
+like \verb`\frac` or \verb`\sqrt` requiring braced arguments:
+\begin{centred}
+\verb`\[ \diffp**x{\frac1{\sqrt{x^2-y^2}}} \]` $\Longrightarrow$
+\[ \diffp**x{\frac1{\sqrt{x^2-y^2}}} \]
+\end{centred}
+For compact-form derivatives the initial, appending asterisk is always
+implicitly present. However, it must be \emph{explicitly} present
+for the second asterisk to take effect:
\begin{centred}
-\verb`$ \diff[1]yx $` $\Longrightarrow$$\diff[1]yx$.
+\verb`\[ \difcp yx,\quad \difcp*yx,\quad \difcp**yx \]` $\Longrightarrow$
+\[ \difcp yx,\quad \difcp*yx,\quad \difcp**yx \]
\end{centred}
-In slash style, \texttt{\$\textbackslash diff{[}2{]}y/x\$} produces
-$\diff[2]y/x$, and \texttt{\$\textbackslash diff{[}n+1{]}y/x\$}
-produces $\diff[n+1]y/x$.
-\subsection{Multi-character variables of differentiation}
+\subsubsection{Operator parenthesizing}
-Differentiating a function of a function may involve a multi-character
-differentiation variable. For instance, to differentiate $\ln\sin x$
-in $x$ means forming the product
+In slash style with the star option, the polynomial example becomes
\begin{centred}
-\verb`\[ \diff!{\ln\sin x}{\sin x}\diff{\sin x}x \]` $\Longrightarrow$
-\[\diff!{\ln\sin x}{\sin x}\diff{\sin x}x.\]
+\verb`$ \difs*{(ax^2+bx+c)}x $` $\Longrightarrow$ $ \difs*{(ax^2+bx+c)}x $
\end{centred}
-\noindent (Although I am mainly using un-spaced differentiands in
-this document, a space before the differentiand in the first of these
-derivatives -- the \verb`!` switch -- improves the appearance of
-the expression to my eye.)
-
-Forming the \emph{second} derivative of $\ln\sin x$ will now involve
-forming (among other quantities)
+\noindent where parentheses have been automatically inserted around
+the differential operator. Similarly, for slash-style partial derivatives,
\begin{centred}
-\noindent \verb`\[\diff[2]{\ln\sin x}{\sin x}\]` $\Longrightarrow$
-\[\diff[2]{\ln\sin x}{\sin x}\]
+\verb`\( \difsp*[n]{f(x)}x \)` $\Longrightarrow$ \( \difsp*[n]{f(x)}x \)
\end{centred}
-\noindent Parentheses have been inserted automatically by \texttt{diffcoeff}
-around $\sin x$ in the denominator to avoid any visual hint that
-we are differentiating in the sine of $x^{2}$.
+\noindent parentheses are again inserted automatically around the
+differential operator. Like other elements of automatic formatting,
+this behaviour is user-adjustable; see §§\ref{sec:Variant-forms},
+\ref{sec:ChangingDefaults}.
-The question is: are the parentheses in the right place? Logically,
-no. They should include the $d$: $(d\sin x)^{2}$ -- it is the differential
-$d\sin x$ that is of the second order. But as the examples in the
-Rogues' Gallery show -- see particularly (\ref{eq:eg3}) -- the
-inclination seems to be to do otherwise. This may be because one wants,
-in any case, to parenthesise the variable. A second, outer pair of
-parentheses then seems too fussy and detracts from comprehending the
-symbol `at a glance':
-\[
-\diff.wrapall.[2]{f(x)}{(1/x)}.
-\]
+\subsection{Point of evaluation/variables held constant}
-Customary but illogical notations are familiar in mathematics --
-think of the position of the superscripts in an identity like $\sin^{2}\theta+\cos^{2}\theta=1$.
-But, like other features of the derivative, the manner of this wrapping
-in parentheses of long variables for \emph{higher order} derivatives
-is customisable; see §\ref{sec:Changing-defaults}.
-
-For first order derivatives, parenthesising does not occur. If you
-want the variable of differentiation to be parenthesised, you need
-to insert them yourself:
+\label{subsec:Point-of-evaluation}If you want to specify a point
+at which a derivative is evaluated, append a final optional argument:
\begin{centred}
-\verb`\[\diff {f(x)}{1/x}, \quad \diff {f(x)}{(1/x)}.\]` $\Longrightarrow$
-\[ \diff {f(x)}{1/x}, \quad\diff {f(x)}{(1/x)}.\]
+\verb`\[ \diff[2]yx[0] \]` $\Longrightarrow$ \[ \diff[2]yx[0] \]
\end{centred}
-
-\section{Partial derivatives\protect\label{sec:Partial-derivatives}}
-
-\noindent Partial derivatives follow the same pattern as ordinary
-derivatives, with some extensions. The command this time is \texttt{\textbackslash diffp}.
-Thus \texttt{\textbackslash diffp\{F\}\{x\}}, or, with a saving on
-keystrokes,\texttt{ \textbackslash diffp Fx}, produces $\diffp Fx$
-in text style and
+\noindent Note that there must be \emph{no space} before the left
+square bracket of the trailing argument, otherwise it will be treated
+as part of the wider mathematical expression of which the derivative
+is part and typeset as such. (This should not cause a \LaTeX{} error.)
+\begin{itemize}
+\item If you prefer to use subscripted \emph{square} brackets
\[
-\diffp{F}{x}
+\diffp.].{F(x,y)}x[(0,0)]
\]
-in display style. (As for \texttt{\textbackslash diff}, the omission
-of braces is possible when the differentiand or the differentiation
-variable are single tokens.) As for \texttt{\textbackslash diff},
-there is a slash form, generally preferred for inline use, \texttt{\textbackslash diffp
-F/x}, displaying as $\diffp F/x$. Given that \texttt{\textbackslash partial}
-takes 8 keystrokes to type, the slash form \emph{does }economise on
-keystrokes for a partial derivative.
-
-With either the \verb`spaced` package option (see §\ref{subsec:Package-options})
-or the \verb`!` switch a space, defaulting to \verb`3 mu` with some
-stretch and shrink, can be inserted before the differentiand: \verb`\[ \diffp!{F(x,y)}x \]`
-$\Longrightarrow$ \[ \diffp!{F(x,y)}x. \]
-
-\noindent (But note that if the \verb`spaced` package option is used,
-the \verb`!` switch \emph{removes} any extra space.)
-
-Again an optional argument allows the specification of the order of
-differentiation which may be numeric or algebraic or a mix of the
-two:
-\begin{centred}
-\verb`\[ \diffp[3]F/x , \quad \diffp[n]F/x \]` $\Longrightarrow$
-\[\diffp[3]F/x , \quad \diffp[n]F/x\] \verb`\[ \diffp[n+1]Fx. \]`
-$\Longrightarrow$ \[ \diffp[n+1]Fx. \]
-\end{centred}
-
-\subsection{Variables held constant}
-
-In a subject like thermodynamics, there is a need to indicate which
-variables are held constant when the differentiation occurs. To show
-this, append a final square-bracketed optional argument and ensure
-that it follows \emph{immediately} on the preceding mandatory argument.
-A space here will detach the argument from the derivative and result
-in it being treated as a mathematical expression following the derivative.
-Thus to differentiate the entropy $S$ in temperature $T$ while holding
-the volume $V$ constant, write
-\begin{centred}
-\verb`\[ \diffp ST[V] \]` $\Longrightarrow$ \[ \diffp ST[V]. \]
-\end{centred}
-\noindent In slash form the same expression looks like
-\begin{centred}
-\noindent \verb`$ \diffp S/T[V] $` $\Longrightarrow$ $ \diffp S/T[V] $.
-\end{centred}
-This use of a parenthesised, subscripted form to indicate a variable
-or variables held constant, leaves open the question: how do we represent
-a point of evaluation? ISO 80000-2 makes no recommendation for \emph{partial}
-derivatives; presumably we follow the same practice as their recommendation
-for ordinary derivatives:
-\begin{example}
-\verb`\[ \diffp {F(x,y)}x[(0,0)] \]` $\Longrightarrow$ \[ \diffp {F(x,y)}x[(0,0)] \]
-\end{example}
-
-However, you may prefer (as many do) to use a vertical rule for this
-purpose:
+or a subscripted vertical rule after the derivative
\[
-\diff.pvrule.{F(x,y)}x[(0,0)]
+\diffp.|.{F(x,y}x[(0,0)]
\]
-Making this possibility available is discussed in §\ref{sec:Changing-defaults}.
-
-An empty final argument produces a parenthesised derivative with no
-subscript,
+to indicate a point of evaluation, then this can easily be done; see
+specifically §\ref{subsec:variantPoint-of-evaluation} (or §\ref{sec:ChangingDefaults}
+on changing default settings). Parentheses are the ISO recommendation;
+see ISO 80000-2.
+\end{itemize}
+Because the slash form spreads the derivative out horizontally, parentheses
+are the natural way in this case to indicate a point of evaluation:
\begin{centred}
-\verb`\[ \diffp yx[] \]` ${\displaystyle \Longrightarrow}$ \[ \diffp yx[] \]
+\verb`$ \difs{\ln sin x}{sin x}[x=\pi/3] $` $\Longrightarrow$ $ \difs{\ln\sin x}{\sin x}[x=\pi/3]$.
\end{centred}
-\noindent which can be useful sometimes. An instance is the writing
-of Lagrange's equations of motion in analytic mechanics:
+\noindent A vertical rule can easily become too remote from the opening
+$\mathrm{d}$ of the differential coefficient: $\difs.|.{\ln\sin x}{\sin x}[x=\pi/3]$.
+Parentheses tie the whole cluster of symbols together.
+
+One reason to query the ISO preference for subscripted parentheses
+to indicate a point of evaluation is that subscripted parentheses
+are used with partial derivatives to indicate variables held constant.
+This occurs frequently in thermodynamics for example. In the following
+well-known relation in thermodynamics, the differentiands are appended
+and the trailing argument is used to indicate the variables held constant:
\begin{centred}
-\noindent \verb`\[ \diffp L{q_k}-\diff*{\diffp L{\dot{q}_k}[]}t = 0 \]`
-$\Longrightarrow$ \[ \diffp L{q_k}-\diff*{\diffp L{\dot{q}_k}[]}t = 0. \]
+\verb`\[ \diffp*{\frac PT}U[V] = \diffp*{\frac 1T}V[U] \]` $\Longrightarrow$
+\[ \diffp*{\frac PT}U[V] = \diffp*{\frac 1T}V[U]. \]
\end{centred}
+\noindent This is much easier to write than building the expressions
+`by hand', starting with \verb`\left(` and finishing with \verb`_U`.
-\subsubsection{Text-style derivatives}
+\subsubsection{Superscripts}
-The \texttt{diffcoeff} package assumes that derivatives formed as
-`numerator over denominator' will be used in display-style expressions,
-and that the slash form will be used for inline use (text style).
-This is the familiar practice in the literature. If one \emph{does}
-use the first form in an inline expression where a variable is held
-constant, say \texttt{\textbackslash diffp ST{[}V{]}} as here $\diffp ST[V]$,
-the result is unsatisfactory, the subscript too tight on the closing
-parenthesis and too much space between parentheses and derivative.
-The matter is easily resolved using `variant forms' -- see §\ref{subsec:Text-and-script-style}
-below -- giving, for our example, $\diff.ptxt.ST[V]$.
+It is easy to add a superscript to a derivative to indicate evaluation
+at two points and the difference between the values:
+\begin{centred}
+\verb`\[ \diff {\sin x}x[0]^{\!\!\pi/2} \]` ${\displaystyle \Longrightarrow}$
+\[ \diff{\sin x}x[0]^{\!\!\pi/2} \]
+\end{centred}
+but to my eye either square brackets or a vertical rule are clearer
+for this purpose (and do not involve nudging the subscript or superscript
+closer to the right delimiter); see §\ref{sec:Variant-forms}.
+
+\subsubsection{Empty trailing argument}
+
+\noindent If the trailing argument is included but left empty it will,
+with the default set-up, wrap the derivative in parentheses but with
+no subscript. This fact can be exploited. Thus, for a particle of
+mass $m$ moving along a line, distance $x$ at time $t$, the kinetic
+energy is:
+\begin{centred}
+\noindent \verb`$ \tfrac 12 m \difs xt[]^2 $` $\Longrightarrow$
+$\tfrac{1}{2}m\difs xt[]^{2}$.
+\end{centred}
+Or, again exploiting the parentheses resulting from an empty trailing
+argument, Lagrange's equations of motion in analytic mechanics can
+be written,
+\begin{centred}
+\verb`\[ \diffp L{q_k}-\diff**t{ \diffp L{\dot{q}_k}[] } = 0 \]`
+$\Longrightarrow$\[\diffp L{q_k}-\diff**t{\diffp L{\dot{q}_k}[]} = 0. \]
+\end{centred}
+\noindent (See §\ref{subsec:Transposing-the-argument} for the double
+asterisk.) Like the author, you may feel that there is too much whitespace
+between $\diff{}t$ and the left parenthesis in this expression. One
+obvious remedy is to insert a negative thin space \verb`\!` before
+the second \verb`\diffp` command. Another is to use the package \verb`mleftright`.
+
+\subsubsection{Use of the package \texttt{mleftright}}
+
+\label{subsec:mleftright}The \verb`mleftright` package `tightens'
+the spacing around \verb`\left`, \verb`\right` delimiters. The user
+either by explicitly replaces \verb`\left`, \verb`\right` by \verb`\mleft`
+and \verb`\mright` or uses the command \verb`\mleftright` which
+effectively turns subsequent occurrences of \verb`\left`, \verb`\right`
+into \verb`\mleft`, \verb`\mright`; \verb`\mleftrightrestore` returns
+\verb`\left`, \verb`\right` to their original selves. This process
+can be `short-circuited' by using the \verb`diffcoeff` package
+option \verb`mleftright` that inserts \verb`\mleftright` in the
+preamble; see §\ref{sec:Package-options}.
+
+However, that package option is not used in this document. Nonetheless
+\verb`mleftright` is a required package of version 5 of \verb`diffcoeff`
+and its commands are available for use. Hence to reduce the whitespace
+I can write
+\begin{verbatim}
+ \mleftright
+ \[ \diffp L{q_k}-\diff**t{\diffp L{\dot{q}_k}[]} = 0. \]
+ \mleftrightrestore
+\end{verbatim}
+$\Longrightarrow$ \mleftright
+\[ \diffp L{q_k}-\diff**t{\diffp L{\dot{q}_k}[]} = 0. \]
+\mleftrightrestore
+
+\noindent which is better, but better still to my eye is to also add
+a negative thin space \verb`\!` before the second \verb`\diffp`
+command:
+\begin{verbatim}
+ \mleftright
+ \[ \diffp L{q_k}-\diff**t{ \!\diffp L{\dot{q}_k}[] } = 0 \]
+\end{verbatim}
+\noindent $\Longrightarrow$ \mleftright\[\diffp L{q_k}-\diff**t{\!\diffp L{\dot{q}_k}[]} = 0. \]
+
+\noindent The problem is that in addition to the space around \verb`\left`,
+\verb`\right` pairs (which is reduced by issuing the command \verb`\mleftright`),
+there is also the space inserted by \verb`diffcoeff` before a multi-token
+differentiand. The user should be aware of this, and may wish to define
+a `variant form' (see §\ref{sec:Variant-forms}) that introduces
+no space before an appended differentiand.
-\subsection{Appending the differentiand\protect\label{subsec:Partial-appending}}
+\subsection{Mixed partial derivatives}
-For a long or awkward differentiand, it is generally better to \emph{append}
-it to a preceding differential operator, rather than create a fractional
-form with the long expression in the numerator. As with ordinary derivatives,
-this is achieved by adding an asterisk to (i.e. by starring) the \texttt{\textbackslash diffp}
-command.
-\begin{centred}
-\verb`\[ \diffp*[2]{\Phi(x,y,z)}x \]` $\Longrightarrow$ \[ \diffp*[2]{\Phi(x,y,z)}x. \]
-\end{centred}
-With the \verb`spaced` package option, or with the \verb`!` switch
-if the package option is not used (which is the case for this document),
-one gets
+\label{subsec:Mixed-partial-derivatives}The new thing with partial
+derivatives, not present with ordinary derivatives, is so-called \emph{mixed}
+partial derivatives, where differentiation occurs in more than one
+variable. If each variable is differentiated only to the first order,
+then it is easy to specify the derivative. Suppose $F$ is a function
+of three variables, $x$, $y$ and $z$. Then
\begin{centred}
-\verb`\[ \diffp*[2]!{\Phi(x,y,z)}x \]` $\Longrightarrow$ \[ \diffp*[2]!{\Phi(x,y,z)}x \]
+\verb`\[ \diffp F{x,y,z},\quad\diffp{F(x,y,z)}{x,y,z}. \]` $\Longrightarrow$
+\[ \diffp F{x,y,z},\quad \diffp{F(x,y,z)}{x,y,z}. \]
\end{centred}
-which is an improvement (to my eye).
+(The \verb`spaced=-1` package option inserts space before the multi-token
+differentiand in the second of these.)
-Alternatively you could leave the first mandatory argument empty and
-manually append the differentiand, but by deleting or inserting an
-asterisk, it is easy to compare the two forms, differentiand-in-the-numerator,
-differentiand-appended, and see which is preferable.
+The variables of differentiation are listed in order in a comma list
+-- \verb`{x,y,z}` -- forming the second mandatory argument. The
+total order of differentiation (3 in this example) was inserted automatically.
+It did not need to be specified or calculated `by hand' -- \verb`diffcoeff`
+did the calculation.
-In slash form, parentheses are automatically inserted around the differential
-operator when the differentiand is appended,
+The slash form is
\begin{centred}
-\verb`\[ \diffp*[n]{f(x)}/x \]` $\Longrightarrow$ \[ \diffp*[n]{f(x)}/x, \]
+\verb`$ \difsp F{x,y,z} $` $\Longrightarrow$ $ \difsp F{x,y,z}$,
\end{centred}
-\noindent although this behaviour can be changed (§\ref{sec:Changing-defaults}
-again).
-
-If you wish to both append the differentiand \emph{and} indicate variables
-held constant, then the starred form is much the easier way to achieve
-this. Thus, to express a relation in thermodynamics,
+as expected, and the compact form is
\begin{centred}
-\verb`\[ \diffp*{\frac PT}U[V] = \diffp*{\frac 1T}V[U] \]` $\Longrightarrow$
-\[ \diffp*{\frac PT}U[V] = \diffp*{\frac 1T}V[U], \]
+\verb`$ \difcp F{x,y,z} $` $\Longrightarrow$ $ \difcp F{x,y,z}$.
\end{centred}
-\noindent where the starring automatically takes care of the parentheses
-and subscripts.
+One might wonder about even more compact notations like $\partial_{xyz}^{\onemu3}F$
+for this example but it becomes messy if different orders of differentiation
+are involved for different variables.
-\subsection{Iterated derivatives}
-
-Derivatives can be the differentiands of derivatives, as seen above
-when writing Lagrange's equations,
-\begin{centred}
-\noindent \verb`\[ \diffp L{q_k}-\diff*{\diffp L{\dot{q}_k}[]}t = 0 \]`
-$\Longrightarrow$ \[ \diffp L{q_k}-\diff*{\diffp L{\dot{q}_k}[]}t = 0. \]
-\end{centred}
-\noindent However, in versions of \texttt{diffcoeff} before version
-3.2, an ordinary derivative within a partial derivative rendered as
-a partial derivative. That is now corrected, the ordinary derivative
-rendering correctly:
+To differentiate variables to higher order, their orders need to be
+specified explicitly. To do so use a comma list for the optional argument:
\begin{centred}
-\verb`\[ \diffp*{\diff{x^\mu}{\lambda}}{x^\sigma} \]` $\Longrightarrow$
-\[ \diffp*{\diff{x^\mu}{\lambda}}{x^\sigma}. \]
+\verb`$ \difcp[2,3]F{x,y,z} $` $\Longrightarrow$ $ \difcp[2,3] F{x,y,z}$,
+
+\verb`\[ \diffp[2,3]F{x,y,z} \]` $\Longrightarrow$ \[ \diffp[2,3]F{x,y,z}. \]
\end{centred}
+\noindent Notice that the overall order of the derivative -- 6 --
+in the second of these is again automatically calculated and inserted
+as a superscript on the $\partial$ symbol in the numerator.
+
+In the example, the comma list of orders has only \emph{two} members,
+although there are \emph{three} variables. It is assumed that the
+orders given in the comma list apply in sequence to the variables,
+the first order to the first variable, the second to the second variable,
+and so on, and that any subsequent orders not listed in the optional
+argument are, by default, 1. Thus we need to specify only 2 and 3
+in the example; the order of differentiation of $z$ is 1 by default.
+But you \emph{cannot} use an order specification like \verb`[,,2]`;
+instead write {\ttfamily\verb`[1,1,2]`} (which is the natural
+thing to do in any case).\textbf{ }It is only the \emph{tail} of an
+order specification which can be omitted.
+
+In the other direction, if there are more orders of differentiation
+specified than there are variables, the list of orders is truncated
+to match the number of variables.
-\subsection{Mixed partial derivatives}
+\subsubsection{Algebraic orders of differentiation}
-The new thing with partial derivatives, not present with ordinary
-derivatives, is \emph{mixed} partial derivatives, where there is more
-than one variable of differentiation. If each variable is differentiated
-only to the first order, then it is easy to specify the derivative.
-Suppose $F$ is a function of three variables, $x$, $y$ and $z$.
-Then
+Orders of differentiation do not need to be numerical. They can also
+be algebraic:
+\begin{centred}
+\verb`\[ \diffp[2m-1,m+1,2]F{x,y,z} \]` $\Longrightarrow$ \[ \diffp[2m-1,m+1,2]F{x,y,z}\]
+\end{centred}
+The total order of differentiation is still calculated by \verb`diffcoeff`.
+Or again,
+\begin{centred}
+\verb`\[ \diffp[1,km+1,m+k-1]{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$
+\[ \diffp[1,km+1,m+k-1]{F(x,y,z)}{x,y,z}. \]
+\end{centred}
+
+\subsubsection{Order-override command: \texttt{\textbackslash difoverride}}
+
+\noindent \label{subsec:Order-override-command}$m+k+km+1$ factorizes
+to $(k+1)(m+1)$ and you may prefer to express the total order of
+differentiation in this form. \verb`diffcoeff` is not a computer
+algebra system and does not do such factorizations but the \verb`\difoverride`
+command offers the means to use the factorized form as the total order
+of differentiation in the derivative. (The \verb`\difoverride` command
+replaces the order-override option of the \verb`\diff` command in
+version 4 of \verb`diffcoeff`. That option is no longer available.)
+\begin{verbatim}
+ \[
+ \difoverride{(k+1)(m+1)}
+ \diffp[1,km+1,m+k-1]{F(x,y,z)}{x,y,z}
+ \]
+\end{verbatim}
+$\Longrightarrow$ \[
+ \difoverride{(k+1)(m+1)}
+ \diffp[1,km+1,m+k-1]{F(x,y,z)}{x,y,z}
+ \]
+
+\verb`\difoverride` takes only one (mandatory) argument, the total
+order of differentiation, which it stores. When \verb`\difoverride`
+is non-empty, then the algorithm that calculates the total order is
+sidestepped. It does not get called at all. In this way one can present
+not only the total order in whatever manner one wishes but essentially
+arbitrary material as a superscript to the $\partial$ symbol in the
+numerator. (For compact-form derivatives, which do not use a total
+order of differentiation, the command is irrelevant.)
+
+Note that in the example \verb`\difoverride` has been used \emph{within
+}the math environment. This is good practice. It prevents the contents
+of \verb`\difoverride` erroneously overriding the orders of later
+derivatives:
+\begin{verbatim}
+ $ \difoverride{N} \difsp[m,n]f{x,y} $,\quad
+ $ \difsp[1,2]f{x,y} $.
+\end{verbatim}
+$\Longrightarrow$ $ \difoverride{N} \difsp[m,n]f{x,y} $,\quad
+ $ \difsp[1,2]f{x,y} $.
+
+\noindent There is no spillover here whereas by placing the override
+command outside the math environment the command reaches beyond the
+intended target. To cancel the overreach, I have used \verb`\difoverride`
+with an \emph{empty} argument, :
+\begin{verbatim}
+ \difoverride{K}
+ $ \difsp[m,n]f{x,y} $,\quad
+ $ \difsp[1,2]f{x,y} $,\quad
+ \difoverride{}
+ $ \difsp[1,2]f{x,y}$.
+\end{verbatim}
+$\Longrightarrow$ \difoverride{K} $ \difsp[m,n]f{x,y} $,\quad
+ $ \difsp[1,2]f{x,y} $,\quad
+ \difoverride{} $ \difsp[1,2]f{x,y}$.
+
+\noindent Clearly one should use the override command \emph{within}
+the math environment.
+
+\subsubsection{Parentheses}
+
+Auto-calculation of the total order accommodates the simple use of
+parentheses:
\begin{centred}
-\verb`\[ \diffp F{x,y,z} \]` $\Longrightarrow$ \[ \diffp F{x,y,z}, \]
+\verb`\[ \diffp[2m-(k+1),2(k+1)-m]{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$
+\[ \diffp[2m-(k+1),2(k+1)-m]{F(x,y,z)}{x,y,z} \]
+\end{centred}
+This is an example of the use of \emph{dynamic} parentheses: the left
+parenthesis in each case is preceded by a number or a sign. In evaluating
+the total order \verb`diffcoeff` multiplies out the expression (or
+that is the effect).
+
+On the other hand, an order specification like \verb`[f(n+1),f(n-1)]`
+is an example of the use of \emph{static} parentheses where they are
+part of the familiar `function of' notation -- in this case a function
+$f$ of some variable, say $x$, evaluated at $x=n\pm1$. \verb`diffcoeff`
+\emph{always} interprets a left parenthesis preceded by something
+that is neither number nor sign in this way. It does not try to multiply
+out such expressions when calculating the total order.
+
+The following example combines both uses -- and includes a nested
+pair of (dynamic) parentheses:
+\begin{centred}
+\verb`\[\diffp[2(f(n)-(m-1)),5-(f(n)+m)]F{x,y}\]` $\Longrightarrow$
+\[\diffp[2(f(n)-(m-1)),5-(f(n)+m)]F{x,y}\]
+\end{centred}
+Where confusion arises is with specifications like \verb`[m(k-1)+1,m(k+1)-1]`
+where \verb`m` could be interpreted as either a function or a variable.
+As stated, \verb`diffcoeff` \emph{always} interprets a left parenthesis
+preceded by something that is not a number or a sign as signalling
+`function of'. Hence:
+\begin{centred}
+\verb`\[\diffp[m(k-1)+1,m(k+1)-1]F{x,y}\]` $\Longrightarrow$ \[\diffp[m(k-1)+1,m(k+1)-1]F{x,y}\]
+\end{centred}
+\noindent If, in fact, \verb`m` is intended as a \emph{variable}
+then the order-override command is there to rescue the situation:
+\begin{verbatim}
+ \[
+ \difoverride{2mk}
+ \diffp[m(k-1)+1,m(k+1)-1]F{x,y}
+ \]
+\end{verbatim}
+$\Longrightarrow$ \[
+ \difoverride { 2mk }
+ \diffp[m(k-1)+1,m(k+1)-1]F{x,y}
+ \]
-\verb`\[ \diffp !{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$ \[ \diffp !{F(x,y,z)}{x,y,z}. \]
-\end{centred}
-In the second of these I have inserted space before the differentiand
-by using the \verb`!` switch. If the \verb`spaced` package option
-was being used, this would have been done automatically.
+\subsubsection{Error messages}
-The variables of differentiation are listed in order in a comma list
-forming the second mandatory argument. The total order of differentiation
-(3 in this example) is inserted automatically -- \texttt{diffcoeff}
-does the calculation. There is also a slash form:
-\begin{centred}
-\verb`$ \diffp F/{x,y,z} $` $\Longrightarrow$ $ \diffp F/{x,y,z}$.
-\end{centred}
-If we want to differentiate variables to higher order, then their
-orders need to be specified explicitly. To do so use a comma list
-for the optional argument:
-\begin{centred}
-\verb`\[ \diffp[2,3]F{x,y,z} \]` $\Longrightarrow$ \[ \diffp[2,3]F{x,y,z}. \]
-\end{centred}
-\noindent Notice that the overall order of the derivative -- 6 --
-is again automatically calculated and inserted as a superscript on
-the $\partial$ symbol in the numerator. In this example, the comma
-list of orders has only two members, even though there are three variables.
-It is assumed that the orders given in the comma list apply in sequence
-to the variables, the first order to the first variable, the second
-to the second variable, and so on, and that any subsequent orders
-not listed in the optional argument are, by default, 1. Thus we need
-to specify only 2 and 3 in the example; the order of differentiation
-of $z$ is 1 by default. But you \emph{cannot} use an order specification
-like \texttt{{[} , ,2{]}}. Instead write \texttt{{[}1,1,2{]}}.\textbf{
-}It is only the \emph{tail} of an order specification which can be
-omitted.
-
-\subsubsection{Minutiae of spacing (again)\protect\label{subsec:Minutiae-of-spacing}}
-
-In Chapter 18 of the \emph{The\TeX book}, Knuth suggests inserting
-a thin space, {\ttfamily\verb`\,`} (or {\ttfamily\verb`3 mu`}),
-between differentials in appropriate contexts, giving as an example
-$dx\,dy=r\,dr\,d\theta$. In the denominator of a derivative, however,
-that degree of extra spacing seems too great (to my eye), interfering
-with seeing the derivative `as a whole',
+The order-override command is also needed when calculation of the
+total order is beyond the abilities of \verb`diffcoeff`. The package
+is \emph{not} a computer algebra system. It can cope with order specifications
+where variables are followed by diverse arithmetic operators: \verb`n^2`,
+\verb`m\times n`, \verb`m/2` and the like cause no problems. But
+a \emph{number} can be followed \emph{only} by a sign or a variable
+or a left parenthesis. Anything beyond this will raise an error. For
+instance
+\begin{centred}
+\verb`\[ \diffp[2^k]F{x,y} \]`
+\end{centred}
+produces a message beginning `\texttt{! Package diffcoeff Error:}'
+and continuing,
+\begin{verbatim}
+ number followed by ^ in the order spec. [2^k,1] on
+ line xx. Calculation of the total order of
+ differentiation fails in this case. Use the
+ \difoverride command to enter the total order.
+ See the diffcoeff documentation for further
+ information.
+\end{verbatim}
+(The \verb`xx` will be replaced by a specific line number in each
+case. Line breaking may also differ from case to case.) To avoid such
+errors and enable compilation to proceed, use the override command:
+\begin{verbatim}
+ \[
+ \difoverride { 2^{n+1} }
+ \diffp[2^n+1,2^n-1]F{x,y}
+ \]
+\end{verbatim}
+$\Longrightarrow$ \[
+ \difoverride { 2^{n+1} }
+ \diffp[2^n+1,2^n-1]F{x,y}
+ \]
+
+There are limitations on what order specifications the \verb`diffcoeff`
+package can `digest', but in real life that is unlikely to be significant.
+Mixed partial derivatives are used far less often than the pure derivatives,
+and when they \emph{are} used it is nearly always to low numerical
+orders like 1 or 2. For those rare other cases, \verb`\difoverride`
+is always available.
+
+\subsubsection{Comma list of variables of differentiation}
+
+\label{subsec:Comma-list-of-vars}In tensor calculus differentiations
+are almost always in terms of super- or subscripted coordinates. In
+many other contexts this is the case too -- the reciprocal of the
+temperature in thermodynamics or generalized coordinates in analytical
+mechanics. This is why a comma list is used in \verb`diffcoeff` for
+specifying variables of differentiation for mixed partial derivatives.
+Although it would be nice to write the minimal \verb`{xy}` rather
+than \verb`{x,y}` when two variables $x$ and $y$ are involved,
+the extra writing is trivial and the comma list allows a simpler handling
+of multi-character variables. For instance in tensor calculus we get
+expressions like
+\begin{centred}
+\verb`\[ \diffp{A_i}{x^j,x^k} \]` $\Longrightarrow$ \[ \diffp{A_i}{x^j,x^k}. \]
+\end{centred}
+\noindent It is easier to write \verb`{x^j,x^k}` here than, say,
+\verb`{{x^j}{x^k}}` to distinguish the variables. It's also easier
+to read, particularly if the indices themselves get ornamented and
+need surrounding braces:
+\begin{centred}
+\verb`\[ \diffp{A_i}{x^{j'},x^{k'}} \]` $\Longrightarrow$ \[ \diffp{A_i}{ x^{j'},x^{k'} }. \]
+\end{centred}
+\noindent Compare that variable specification with \verb`{{x^{j'}}{x^{k'}}}`.
+Admittedly some extra whitespace would help here, but the point stands:
+the comma list requires fewer nested braces -- unless a variable
+of differentiation includes a comma, for then the comma needs to be
+enclosed in braces. There are plenty of instances of this out in the
+world (see, e.g., the last equation of (\ref{eq:eg1})) but it is
+overall a rare occurrence.
+
+\subsubsection{Spacing in the denominator}
+
+\label{subsec:Minutiae-of-spacing}In Chapter 18 of the \emph{The
+\TeX book}, Knuth suggests inserting a thin space, {\ttfamily\verb`\,`}
+(or {\ttfamily\verb`3 mu`}), between differentials in appropriate
+contexts, giving as an example $dx\,dy=r\,dr\,d\theta$. In the denominator
+of a derivative, however, that degree of extra spacing -- to my eye
+-- seems too great, interfering with seeing the derivative `as a
+whole',
\[
-\diff.pwide.F{x,y,z},
+\diffp.3mu.F{x,y,z},
\]
-especially for the slash-form of derivative: $\diff.pwide.F/{x,y,z}$.
-Some spacing is desirable, but less; by default \texttt{diffcoeff}
-inserts \verb`2 mu` between the differentials in the fraction form
-of derivative and \verb`1 mu`\texttt{ }in the slash form.
+especially for the slash-form of derivative: $\difsp.3mu.F{x,y,z}$.
+Some spacing is desirable, but less. By default \verb`diffcoeff`
+inserts \verb`2 mu` (with stretch and shrink) between the differentials:
+$\difsp F{x,y,z}$.
Should a differentiation occur to higher order and so a variable acquire
a superscript, an adjustment is made to the extra spacing. By default
@@ -758,1347 +1137,2071 @@ a superscript, an adjustment is made to the extra spacing. By default
\verb`2 mu` of spacing is inserted between the $\partial y$ and
$\partial z$, but because the superscript already provides some separation
between them, only \verb`1 mu` is inserted between $\partial x^{2}$
-and $\partial y$.
-
-The values used for the spacing and its adjustment in the presence
-of a superscript can be changed by the user; see §\ref{sec:Changing-defaults}.
-Some other minutiae of spacing are discussed below in §\ref{subsec:Comma-list-of-vars}
-when the variables themselves are super- or subscripted (as happens
-in tensor calculus, for instance).
+and $\partial y$. The values used for the spacing and its adjustment
+in the presence of a superscript can be changed by the user; see Chapter~\ref{chap:Templates-defaults-variants}.
-Note that the \verb`!` switch, if used, is inserted \emph{immediately
-before} the differentiand. It is the placement of the differentiand,
-after all, that it is affecting:
+When the variables themselves are super- or subscripted, as happens
+in tensor calculus, no automatic adjustment is made. Any fine-tuning
+must be done by the user using explicit spacing commands -- like
+\verb`\negmu` (a space of \verb`-1 mu`); see §\ref{subsec:Spacing-commands}:
\begin{centred}
-\verb`\[ \diffp[2]!F{x,y,z} \]` $\Longrightarrow$ \[ \diffp[2]!F{x,y,z}. \]
+\verb`\[ \diffp{A_i}{ x^j\negmu,x^k } \]` $\Longrightarrow$ \[ \diffp{A_i}{ x^j\negmu,x^k }.\]
\end{centred}
+\noindent The \verb`\negmu` decreases the spacing between the terms
+from the default \verb`2 mu` (with stretch and shrink) to \verb`1 mu`.
-\subsubsection{Algebraic orders of differentiation}
+\subsection{Multi-token variables: parenthesizing}
-Calculation of the overall order of differentiation still occurs even
-when some or all of the individual orders are algebraic variables
-rather than numbers. For example, differentiating in three variables
-to orders \texttt{1, m+1, m-1},
+Differentiating a function of a function may involve a multi-character
+differentiation variable. For instance, to differentiate $\ln\sin x$
+in $x$ means forming the product
\begin{centred}
-\verb`\[ \diffp[1,m+1,m-1]{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$
-\[ \diffp[1,m+1,m-1]{F(x,y,z)}{x,y,z}. \]
+\verb`\[ \diff{\ln\sin x}{\sin x}\diff{\sin x}x \]` $\Longrightarrow$
+\[\diff{\ln\sin x}{\sin x}\diff{\sin x}x.\]
\end{centred}
-
-\subsubsection{Error messages}
-
-Should you specify \emph{more} orders in the comma list of the order
-specification than there are variables, compilation will fail and
-an error message will be sent to the terminal and \LaTeX{} log . For
-example, if on (say) line 53 of my document I specify \texttt{{[}1,m-1,m+1,2{]}}
-for the orders of differentiation but list only \texttt{\{x,y,z\}}
-for the variables, the message will be
-\begin{lyxcode}
-!~Package~diffcoeff~Error:~4~orders~of~differentiation~
-
-specified~for~3~variables;~orders~{[}1,m+1,m-1,2{]}
-
-(on~line~53)~for~variables~x,y,z.
-\end{lyxcode}
-Should you try using a \emph{number} raised to a power in an order
-specification, it will cause an error. For example, if on line 53
-(say) of my document I try to form \texttt{\textbackslash diffp{[}2\textasciicircum 2{]}f\{x,y,z\}}
-compilation will fail with the message
-\begin{lyxcode}
-!~Package~diffcoeff~Error:~number~followed~by~\textasciicircum ~in~the~
-
-order~specification~{[}2\textasciicircum n,1,1{]}~on~line~53.~Diffcoeff~
-
-cannot~calculate~the~overall~order~of~differentiation~
-
-in~this~case.~Use~the~order-override~option~to~enter~
-
-the~overall~order.
-\end{lyxcode}
-The order-overide option mentioned here is discussed next. Similarly,
-you cannot use multiplication (\texttt{\textbackslash times} or \texttt{{*}})\texttt{
-}or division (\texttt{/} or \texttt{\textbackslash div}) signs after
-\emph{numbers} in an order specification; only \texttt{+} or \texttt{-}
-or a left parenthesis (see below) are allowed.
-
-\subsubsection{The order-override option}
-
-\noindent Perhaps the differentiations are to orders \texttt{{[}2km,m-1,m+1{]}}:
-\begin{centred}
-\noindent \verb`\[ \diffp[2km,m-1,m+1]{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$
-\[ \diffp[2km,m-1,m+1]{F(x,y,z)}{x,y,z}. \]
-\end{centred}
-\noindent Here the overall order is presented as \texttt{2km+2m}.
-You might prefer this to be presented as \texttt{2m(k+1)}. Although
-\texttt{diffcoeff} takes some steps to present the overall order appropriately,
-it is not a computer algebra system and does not factorise expressions.
-If you want to present the order in a manner distinct from that presented
-by \texttt{diffcoeff}, use the \emph{order-override option}.
-
-This is a second optional argument immediately following the order
-specification. For our last example, filling the override option with
-\texttt{2m(k+1)} gives the desired result:
-\begin{centred}
-\verb`\[ \diffp[2km,m-1,m+1][2m(k+1)]{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$
-\[ \diffp[2km,m-1,m+1][2m(k+1)]{F(x,y,z)}{x,y,z}. \]
-\end{centred}
-\noindent As another example, left to its own devices, \texttt{diffcoeff}
-produces
-\begin{centred}
-\noindent \verb`\[ \diffp[m/2+n/2,m/2,n/2]F{x,y,z} \]` $\Longrightarrow$
-\[ \diffp[m/2+n/2,m/2,n/2]F{x,y,z}, \]
-\end{centred}
-\noindent whereas we would like the total order to be presented as
-$m+n$. Using the override option,
-\begin{centred}
-\noindent \verb`\[ \diffp[m/2+n/2,m/2,n/2][m+n]F{x,y,z} \]` $\Longrightarrow$
-\[ \diffp[m/2+n/2,m/2,n/2][m+n]F{x,y,z}. \]
-\end{centred}
-The order-override option does exactly that: overrides the presentation
-of the calculated order with the manually given one. In fact the calculation
-algorithm does not get called at all when the override option is used
-so that one can in this way present the total order in whatever manner
-one wishes or, indeed, add essentially arbitrary material as a superscript
-to the $\partial$ symbol in the numerator.
-
-\subsubsection{Comma list of variables of differentiation\protect\label{subsec:Comma-list-of-vars}}
-
-In tensor calculus the differentiations are almost always in terms
-of super- or subscripted coordinates. In many other contexts this
-is the case too -- the reciprocal of the temperature in thermodynamics
-or generalized coordinates in analytical mechanics. This is why a
-comma list is used in \texttt{diffcoeff} for specifying variables
-of differentiation for mixed partial derivatives. Although it would
-be nice to write the minimal \texttt{\{xy\}} rather than \texttt{\{x,y}\}
-when two variables $x$ and $y$ are involved, the extra writing is
-trivial and the comma list allows a simpler handling of multi-character
-variables. For instance in tensor calculus we get expressions like
-\begin{centred}
-\verb`\[ \diffp{A_i}{ x^j,x^k } \]` $\Longrightarrow$ \[ \diffp{A_i}{ x^j,x^k }. \]
-\end{centred}
-\noindent It is easier to write \texttt{\{x\textasciicircum j,x\textasciicircum k\}}
-here than, say, \texttt{\{\{x\textasciicircum j\}\{x\textasciicircum k\}\}}
-to distinguish the variables. It does mean that should the variable
-of differentiation include a comma then that comma needs to be enclosed
-in braces. There are plenty of instances of this out in the world
-(see, e.g., the last equation of (\ref{eq:eg1})) but it is overall
-a rare occurrence.
-
-\paragraph*{Minutiae of spacing (yet again):}
-
-In §\ref{subsec:Minutiae-of-spacing} above, I discussed a slight
-reduction in the space inserted between the terms occurring in the
-denominator of a mixed partial derivative when a higher order differentiation
-is involved. The superscript appearing on a differentiation variable
-in that case \emph{of itself} introduced a spacing adjustment between
-the terms. But the present discussion involves only first order differentiations
-and no such reduction is automatically made by \texttt{diffcoeff}.
-However it is still possible to explicitly make such an adjustment
-with the \texttt{\textbackslash negmu} command introduced earlier
-(§\ref{subsec:Spacing-commands}), which inserts \texttt{-1 mu} of
-spacing. For our example, in
-\begin{centred}
-\verb`\[ \diffp{A_i}{ x^j\negmu,x^k } \]` $\Longrightarrow$ \[ \diffp{A_i}{ x^j\negmu,x^k } \]
-\end{centred}
-\noindent the \texttt{\textbackslash negmu} decreases the spacing
-between the terms from the default \verb`2 mu` to \verb`1 mu`.
-
-\subsubsection{Overkill territory}
-
-Two previous examples illustrate limitations of the algorithm that
-calculates the overall order of differentiation: \texttt{2m/2+2n/2}
-is not simplified to \texttt{m+n} and \texttt{2km+2m} is not factorised
-to \texttt{2m(k+1)}. But there is much that the algorithm \emph{can}
-handle -- for instance, the simple use of parentheses:
+Forming the \emph{second} derivative of $\ln\sin x$ will now involve
+forming, among other quantities,
\begin{centred}
-\verb`\[ \diffp[2m-(k+1),2(k+1)-m]{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$
-\[ \diffp[2m-(k+1),2(k+1)-m]{F(x,y,z)}{x,y,z}. \]
+\noindent \verb`\[\diff[2]{\ln\sin x}{\sin x}\]` $\Longrightarrow$
+\[\diff[2]{\ln\sin x}{\sin x}\]
\end{centred}
+\noindent Parentheses have been inserted automatically by \verb`diffcoeff`
+around $\sin x$ in the denominator to avoid any visual hint that
+we are differentiating in the sine of $x^{2}$.
-\paragraph*{Dynamic use of parentheses}
-
-\noindent For parenthetic expressions to be evaluated as in this example
--- the \emph{dynamic} use of parentheses -- the left parenthesis
-must be preceded at most by a sign or a number; the right parenthesis
-must be followed at most by a sign.
-
-If a right parenthesis is followed by a \emph{variable}, say by \texttt{m}
-as in the order spec. \texttt{{[}(2n+1)m,(2n-1)m{]}}, it will throw
-an error and halt compilation. A message will be sent to the terminal
-and the \LaTeX{} log like the following (which assumes the order spec.
-was on line 53 of the document):
-\begin{lyxcode}
-!~Package~diffcoeff~Error:~)~followed~by~m~in~the~
-
-order~specification~{[}(2n+1)m,(2n-1)m{]}~on~line~53.~
-
-Diffcoeff~cannot~calculate~the~overall~order~of~
-
-differentiation~in~this~case.~Use~the~order-override~
-
-option~to~enter~the~overall~order.
-\end{lyxcode}
-This is a limitation on the dynamic use of parentheses -- but they
-\emph{can} be nested.
+\emph{That} is the problem: with a long (multi-character) variable,
+the superscript in a higher order derivative may look as if it applies
+to only part -- the last character -- of a multi-character variable.
+To solve that problem, \verb`diffcoeff` inserts parentheses around
+the variable -- for \emph{higher-order} derivatives, but not for
+first-order derivatives where the problem does not arise. You may
+prefer \verb`diffcoeff` not to parenthesize by default. Changing
+the default setting is easily accomplished; see §\ref{sec:ChangingDefaults}.
-\paragraph*{Static use of parentheses}
+And if you do want parentheses, are they in the right place? Logically,
+no. They should include the $d$: $(d\sin x)^{2}$ -- it is the differential
+$d\sin x$ that is of the second order. But as the examples in the
+Rogues' Gallery show -- see particularly (\ref{eq:eg3}) -- the
+inclination seems to be to do otherwise. This may be because one wants
+in any case to parenthesise the variable to show that the `d' symbol
+attaches to the whole variable and not just its \emph{first} character.
+A second, outer pair of parentheses then seems too fussy and detracts
+from comprehending the symbol `at a glance':
+\[
+\diff.(dv).[2]{f(x)}{(x/k)}.
+\]
+Customary but illogical notations are familiar in mathematics --
+think of the position of the superscripts in an identity like $\sin^{2}\theta+\cos^{2}\theta=1$.
+In any case, the manner of this wrapping in parentheses -- if any
+-- of long variables for \emph{higher order} derivatives is customisable
+(§\ref{sec:ChangingDefaults}).
-If a left parenthesis is preceded by a \emph{variable} (i.e., not
-a sign or a number) this signals to \texttt{diffcoeff} the \emph{static}
-use of parentheses, something like $f(k)$, `function of $k$'.
-No attempt is made to evaluate what is between them and they are treated
-simply as an extension of the variable. For example,
+For first order derivatives parenthesising does not occur automatically.
+If you want the variable of differentiation to be parenthesised, you
+need to do it yourself:
\begin{centred}
-\verb`\[ \diffp[f(k+1)+1,f(k-1)-1]{F(x,y)}{x,y} \]` $\Longrightarrow$
-\[ \diffp[f(k+1)+1,f(k-1)-1]{F(x,y)}{x,y}. \]
+\verb`\[\diff {f(x)}{x/k}, \quad \diff {f(x)}{(x/k)}.\]` $\Longrightarrow$
+\[ \diff {f(x)}{x/k}, \quad\diff {f(x)}{(x/k)}.\]
\end{centred}
-\noindent In the static case you \emph{can} follow the right parenthesis
-by a variable without generating an error.\emph{ }You can nest them,
-and you can include static parentheses within a dynamic pair; for
-example,
+To my eye, in this particular case, the parenthesized version seems
+necessary. The discussion applies equally to ordinary and partial
+derivatives. In thermodynamics and statistical mechanics one may want
+to differentiate in the reciprocal of the temperature, $1/\Theta$
+say:
\begin{centred}
-\noindent \verb`\[ \diffp[2(3+f(k))+1,1-3(f(k)-2)]{F(x,y)}{x,y} \]`
-$\Longrightarrow$ \[ \diffp[2(3+f(k))+1,1-3(f(k)-2)]{F(x,y)}{x,y}. \]
+\verb`\[ \diffp[2]q{\frac 1\Theta} \]` $\Longrightarrow$ \[ \diffp[2]q{\frac 1\Theta}.\]
\end{centred}
-\noindent However, the reverse is not possible: you can't have dynamic
-parentheses within a static pair.
-
-\paragraph*{Other refinements}
-
-Exponents and subscripts on a \emph{variable} are fine in an order
-specification, so long as the exponent or subscript consists of a
-\emph{single} token:
+\noindent As noted, when differentiating to first order, parenthesising
+is up to the user:
\begin{centred}
-\verb`\[ \diffp[m^2+2(k-1),m^2-(k+1)]F{x,y,z,w} \]` $\Longrightarrow$
-\[ \diffp[m^2+2(k-1),m^2-(k+1)]F{x,y,z,w}. \]
+\verb`\[ \diffp q{(\frac 1\Theta),V} \]` $\Longrightarrow$ \[ \diffp q{(\frac 1\Theta),V}. \]
\end{centred}
-\noindent Braced arguments containing \emph{multiple} tokens as exponents
-or subscripts to variables will generally not halt compilation but
-will usually give nonsensical results, as will \emph{signs} treated
-as superscripts or subscripts. Neither circumstance is checked for
-by \texttt{diffcoeff}.
-\paragraph*{Override}
+\chapter{Templates, defaults \& variants}
+
+\label{chap:Templates-defaults-variants} \verb`diffcoeff` is built
+on the facilities offered by the \verb`xtemplate` package (included
+in the \LaTeX 3 bundle {\ttfamily\verb`l3packages`}). The
+stuff of \verb`xtemplate` is \emph{templates}, their definition,
+their manipulation. For \verb`diffcoeff` a template is a list of
+parameter values determining how a derivative looks in the pdf. The
+parameters may be broad-brush settings like whether the derivative
+is built from \verb`\frac` or the slash \verb`/` or in compact form,
+or whether the operator symbol is \verb`d` or \verb`\partial` (or
+\verb`\nabla` or \verb`\delta` or \ldots ), or the parameters may
+be finer-grained, determining minutiae of spacing, easily missed at
+a casual glance but giving some cumulative overall effect.\emph{ }Access
+to the parameters is gained through the command \verb`\difdef`\footnote{In version 5; it has \emph{three} arguments and replaces the two-argument
+command \texttt{\textbackslash diffdef} in version 4 of \texttt{diffcoeff}.}, one argument of which is a \emph{key=value} list\emph{ }of parameter
+values. Each such list is given a name (the second argument of \verb`\difdef`)
+and is `turned into a derivative' by placing the name between dots
+as the first argument of the appropriate \verb`\difx`, \verb`\difxp`
+commands\footnote{And -- see Chapter~\ref{chap:Differentials-and-jacobians} -- of
+the differential and jacobian commands, \texttt{\textbackslash dl}
+and \texttt{\textbackslash jacob}.}. All this is discussed in §\ref{sec:Variant-forms} below.
+
+\section{Template structure}
+
+To write a derivative one doesn't want to have to type a long list
+of \emph{key=value} statements each time. The \emph{default} values
+given to keys is crucial. Only some of the defaults appropriate for,
+say, an upright fraction ordinary derivative are going to be relevant
+for a slash-fraction partial derivative let alone a compact form partial
+derivative. This suggests creating a primary template as a `super-repository'
+of default values and from this creating secondary or child templates
+in which (only) \emph{some }of the defaults are changed -- and, if
+necessary, creating from these child templates children of their own
+(grandchild templates) in which again some further defaults are adjusted.
+
+In \verb`diffcoeff`, the template that is the `primogenitor' of
+the lines of default inheritance is named \verb`DIF`. It is the repository
+of all possible keys used in all possible forms of derivative (at
+least in \verb`diffcoeff`!) and so has keys appropriate to upright-fraction,
+slash-fraction and compact forms of derivative; it has keys appropriate
+to multi-variable partial derivatives and single-variable ordinary
+derivatives, but it is not actually used to form derivatives. That
+is the role of its child templates \verb`DIFF`, \verb`DIFS` and
+\verb`DIFC` corresponding to derivatives of upright-fraction, slash-fraction
+and compact forms. These child templates inherit the defaults of \verb`DIF`
+save for some settings explicitly changed in the child template relevant
+to the specific forms of fraction specified by each.
+
+Apart from the operator symbol, most of the settings in the child
+templates \verb`DIFF`, \verb`DIFS` and \verb`DIFC` are also appropriate
+for partial derivatives. From a code design point of view, there is
+a certain neatness at not multiplying the number of templates in
+play, but actual use -- for instance, forming the `Rogues' gallery'
+of §\ref{sec:Rogues'-gallery} -- suggests the further step of creating
+additional templates specifically for \emph{partial} derivatives\emph{
+}in the three fraction forms. Apart from the operator symbol, the
+templates \verb`DIFFP`, \verb`DIFSP` and \verb`DIFCP` inherit nearly
+all the defaults of their parents \verb`DIFF`, \verb`DIFS` and \verb`DIFC`
+respectively.
+
+Again, actual use suggests two further templates, both direct children
+of \verb`DIF`, for the creation of jacobians, template \verb`DIFJ`,
+and differentials, template \verb`DIFL`, with default values appropriate
+to each. In all \verb`diffcoeff` uses nine templates, the arrows
+in Table~\ref{tab:DIF-defaults} indicating lines of inheritance
+of default values. Only the child and grandchild templates of \verb`DIF`
+are used for actual construction of derivatives (and jacobians and
+differentials). \verb`DIF` itself sits `above the fray'.
-There are limitations on what order specifications the \texttt{diffcoeff}
-package can `digest'; equally, it can digest a wide variety of such
-constructs, but it is \emph{not} a computer algebra system. In all
-those cases where it fails to calculate or present a correct total
-order, the order-override option is available. Yes, this is not as
-convenient as having the overall order calculated automatically but
-(let's remind ourselves) we are deep in overkill territory. Mixed
-partial derivatives are used far less often than the pure derivatives,
-and when they \emph{are} used it is nearly always to orders 1 or 2
-in the variables. Mixed partial derivatives to exotic orders of differentiation
-are rarely used, so that the limitations of the calculational algorithm
-are of little real moment -- and the override option is always available
-for such cases.
+\begin{table}
+\centering{}\caption{\protect\label{tab:Template-inheritance}Template inheritance}
+\begin{tabular}{ccccc}
+\multicolumn{5}{c}{\texttt{DIF}}\tabularnewline
+$\hphantom{\mathtt{DIF}}$ $\swarrow$ & $\,\,\,\sswarrow$ & $\downarrow$ & $\ssearrow\,\,\,$ & $\searrow$ $\hphantom{\mathtt{IFL}}$\tabularnewline
+\texttt{DIFC} & \texttt{DIFS} & \texttt{DIFF} & \texttt{DIFJ} & \texttt{DIFL}\tabularnewline
+$\downarrow$ & $\downarrow$ & $\downarrow$ & & \tabularnewline
+\texttt{DIFCP} & \texttt{DIFSP} & \texttt{DIFFP} & & \tabularnewline
+\end{tabular}
+\end{table}
-\subsection{Parentheses around multi-character variables}
-In thermodynamics and statistical mechanics one may want to differentiate
-in the reciprocal of the temperature, $1/T$ (or $1/\Theta$):
-\begin{centred}
-\verb`\[ \diffp[2]q{\frac 1\Theta} \]` $\Longrightarrow$ \[ \diffp[2]q{\frac 1\Theta}. \]
-\end{centred}
-\noindent In this case and for other \emph{higher order} derivatives
-of multi-character variables of differentiation, the parentheses are
-inserted automatically by \texttt{diffcoeff}. Precisely where parentheses
-should be placed is moot. The placement in this example is not strictly
-logical, although it feels intuitive, but the placement can be customised
-(§\ref{sec:Changing-defaults}).
+\section{Default values for template \texttt{DIF}}
-Parentheses are automatically inserted like this only for higher order
-derivatives. When the differentiation is to first order, parenthesising
-is up to the user:
-\begin{centred}
-\verb`\[ \diffp q{(\frac 1\Theta),V} \]` $\Longrightarrow$ \[ \diffp q{(\frac 1\Theta),V}. \]
-\end{centred}
+\label{sec:Default-values-DIF}Table~\ref{tab:DIF-defaults} lists
+the keys available for forming derivatives and the default values
+assigned in the `grandparent' template, the primogenitor, \verb`DIF`.
+Different forms of derivative demand different defaults for some keys.
+Where a key is relevant for more than one style of derivative the
+default value is chosen according to the following precedence scheme:
+\begin{enumerate}
+\item \emph{ordinary upright}-fraction derivatives in \emph{display}-style
+environments
+\item \emph{ordinary slash}-fraction derivatives in \emph{text}-style environments
+\item \emph{ordinary compact}-form derivatives in \emph{text}-style environments
+\end{enumerate}
+\noindent %
+\noindent\begin{minipage}[t]{1\columnwidth}%
+\begin{shaded}%
+\noindent Users of version 4 of \texttt{diffcoeff} will notice similarities
+with and differences from the earlier version. Some key names remain
+(\verb`op-symbol`), some names have changed (\verb`multi-term-sep`
+for \verb`denom-term-sep`), keys beginning with an asterisk, \verb`*`,
+lack a following hyphen (\verb`*derivand-sep` rather than \verb`*-derivand-sep`),
+some keys have vanished (the \verb`/` keys), and there are some new
+keys (\verb`lvwrap-Ldelim`, \verb`lvwrap-Rdelim`). The redesign
+of the user interface -- \verb`\difs`, \verb`\difsp` for the \verb`/`
+switch, the new compact form commands \verb`\difc`, \verb`\difcp`,
+and bringing the jacobian and differential within the \verb`DIF`
+template structure -- meant revisiting and rethinking the list of
+keys. In the end it seemed simpler (less confusing) to treat this
+as a completely new list rather than an amendment of the earlier one.\end{shaded}%
+\end{minipage}
+
+\medskip{}
+The first column in table~\ref{tab:DIF-defaults} lists key names,
+the second column default values, and the third column to which form
+or forms of derivative the key is \emph{relevant --} meaning that
+assigning a different value to the key can change the appearance of
+the corresponding derivative in some way. The identifiers have these
+meanings:
+\begin{description}
+\item [{f,~fp}] upright fraction ordinary derivative, partial derivative;
+\item [{s,~sp}] slash fraction ordinary derivative, partial derivative;
+\item [{c,~cp}] compact ordinary derivative, partial derivative;
+\item [{j}] jacobian;
+\item [{l}] differential.
+\end{description}
+In Table~\ref{tab:DIF-defaults} and following tables, all values
+specifying a space require the unit (\verb`mu`) to be included; a
+number alone does not suffice. (A `mu' is a `math unit', 1/18
+of a quad. A thin space \texttt{\textbackslash ,} is 3 mu.) `Elastic'
+spaces with stretch and shrink can be compacted, like \verb`3muplus1muminus2mu`
+for \verb`3 mu plus 1 mu minus 2 mu`.
+
+Available keys and their defaults are the following (if you are dissatisfied
+with some choices, they can be changed; see the discussion at §\ref{sec:ChangingDefaults}):
-\subsection{Jacobians}
-
-\texttt{diffcoeff} provides a command \texttt{\textbackslash jacob}
-for constructing Jacobians. For example
-\begin{centred}
-\verb`\[ \jacob{u,v,w}{x,y,z} \]` $\Longrightarrow$ \[ \jacob{u,v,w}{x,y,z}. \]
-\end{centred}
-The comma lists can contain any number of variables. \texttt{\textbackslash jacob}
-does \emph{not} check that the two arguments contain the same number
-of variables, so it is perfectly possible to form an object like \texttt{\textbackslash jacob\{u,v,w\}\{x,y\}}
-which as far as I know has no meaning.
-
-\section{Changing defaults; variant forms\protect\label{sec:Changing-defaults}}
-
-To write the range of different examples displayed in the Rogues'
-Gallery (§\ref{sec:Rogues'-gallery}) I have had to make extensive
-use of forms of derivative other than the default. \texttt{diffcoeff}
-is built on the facilities offered by the \texttt{xtemplate} package
-(included in the \LaTeX 3 bundle \texttt{l3packages)}. These facilities
-are harnessed by means of a command, \texttt{\textbackslash diffdef},
-and a further optional argument of the \texttt{\textbackslash diff}
-command.\texttt{ }
-
-\subsection{Default values: ordinary derivatives}
-
-Table~\ref{tab:Ordinary-derivatives} lists the keys available for
-forming derivatives and the default values\footnote{Note that a mu is a `math unit', 1/18 of a quad.}
-they have been assigned. These default values have been chosen to
-coincide with those relevant for \emph{ordinary} derivatives -- apart
-from the keys \texttt{denom-term-sep}, \texttt{/-denom-term-sep},
-\texttt{term-sep-adjust} and \texttt{/-term-sep-adjust} which are
-ignored for ordinary derivatives but apply to the case of mixed partial
-derivatives when there is more than one variable of differentiation.
-Keys with an opening slash, /, apply only to the slash form of the
-derivative; keys with an opening asterisk, {*}, apply only when the
-differentiand is appended.
-
-Note that these settings are, in general, font dependent. The values
-given are (in the author's opinion) appropriate for the default \LaTeX{}
-math fonts. There are also likely to be variations required for whether
-a derivative is used in a display-style or text-style or script-style
-expression. That matter is discussed below in §\ref{subsec:Text-and-script-style}.
-All values specifying a space require the unit (\texttt{mu}) to be
-given; a number alone does not suffice.
-\noindent \begin{center}
\begin{table}
-\centering{}\caption{{\small Defaults (ordinary derivatives})\protect\label{tab:Ordinary-derivatives}}
-\begin{tabular}{lr}
+\centering{}\caption{{\small\texttt{DIF}} {\small defaults}\protect\label{tab:DIF-defaults}}
+\begin{center}
+\begin{tabular}{lrl}
\toprule
-{\small key} & {\small default}\tabularnewline
-\midrule
-{\small op-symbol} & {\small\texttt{d}}\tabularnewline
-{\small op-symbol-alt} & {\small\texttt{op-symbol}}\tabularnewline
-{\small op-order-sep} & {\small\texttt{1 mu}}\tabularnewline
-{\small derivand-sep} & {\small\texttt{3 mu plus 1 mu minus 2 mu}}\tabularnewline
-{\small /-derivand-sep} & {\small\texttt{derivand-sep}}\tabularnewline
-{\small{*}-derivand-sep} & {\small\texttt{derivand-sep}}\tabularnewline
-{\small{*}/-derivand-sep} & {\small\texttt{/-derivand-sep}}\tabularnewline
-{\small denom-term-sep} & {\small\texttt{2 mu}}\tabularnewline
-{\small /-denom-term-sep} & {\small\texttt{1 mu}}\tabularnewline
-{\small term-sep-adjust} & {\small\texttt{-1 mu}}\tabularnewline
-{\small left-delim} & {\small\texttt{\textbackslash left .}}\tabularnewline
-{\small right-delim} & {\small\texttt{\textbackslash right |}}\tabularnewline
-{\small /-left-delim} & {\small\texttt{(}}\tabularnewline
-{\small /-right-delim} & {\small\texttt{)}}\tabularnewline
-{\small elbowroom} & {\small\texttt{0 mu}}\tabularnewline
-{\small /-elbowroom} & {\small\texttt{0 mu}}\tabularnewline
-{\small subscr-nudge} & {\small\texttt{0 mu}}\tabularnewline
-{\small /-subscr-nudge} & {\small\texttt{0 mu}}\tabularnewline
-{\small long-var-wrap} & {\small\texttt{d(v)}}\tabularnewline
-{\small{*}/-op-wrap} & {\small\texttt{true}}\tabularnewline
-{\small{*}-op-left} & {\small\texttt{false}}\tabularnewline
-{\small{*}-italic-nudge} & {\small\texttt{3 mu}}\tabularnewline
+{\small key} & {\small default} & {\small relevance}\tabularnewline
+\midrule
+{\small style} & {\small\texttt{frac}} & {\small f, fp, s, sp, c, cp, j}\tabularnewline
+slash-tok & {\small\texttt{/}} & {\small\phantom{{\small f, fp,}} s, sp, \phantom{{\small c, cp,}}
+j}\tabularnewline
+slash-sep & {\small\texttt{0 mu}} & {\small\phantom{{\small f, fp,}} s, sp, \phantom{{\small c, cp,}}
+j}\tabularnewline
+{\small derivand-sep} & {\small\texttt{3 mu plus 1 mu minus 2 mu}} & {\small f, fp, s, sp, c, cp}\tabularnewline
+{\small op-symbol} & {\small\texttt{\textbackslash mathrm\{d\}}} & {\small f, fp, s, sp, c, cp, j, l}\tabularnewline
+{\small op-symbol-alt} & {\small\texttt{op-symbol}} & {\small f, fp, s, sp, \phantom{{\small c, cp,}} j}\tabularnewline
+{\small op-order-nudge} & {\small\texttt{0 mu}} & {\small f, fp, s, sp, c, cp}\tabularnewline
+{\small var-sup-nudge} & {\small\texttt{1 mu}} & {\small f, fp, s, sp, \phantom{{\small c, cp,} j,} l}\tabularnewline
+{\small multi-term-sep} & {\small\texttt{2 mu plus 1 mu minus 1 mu}} & {\small f, fp, s, sp, c, cp, \phantom{j,} l}\tabularnewline
+{\small term-sep-adjust} & {\small\texttt{-1 mu}} & {\small f, fp, s, sp, c, cp, \phantom{j,} l}\tabularnewline
+{\small long-var-wrap} & {\small\texttt{d(v)}} & {\small f, fp, s, sp, \phantom{{\small c, cp,} j,} l}\tabularnewline
+{\small lvwrap-Ldelim} & {\small\texttt{\textbackslash mleft (}} & {\small f, fp, s, sp, \phantom{{\small c, cp,}} j, l}\tabularnewline
+{\small lvwrap-Rdelim} & {\small\texttt{\textbackslash mright )}} & {\small f, fp, s, sp, \phantom{{\small c, cp,}} j, l}\tabularnewline
+{\small lvwrap-sup-nudge} & {\small\texttt{-2 mu}} & {\small f, fp, s, sp, \phantom{{\small c, cp, j,}} l}\tabularnewline
+{\small outer-Ldelim} & {\small\texttt{\textbackslash left (}} & {\small f, fp, s, sp, c, cp, j, l}\tabularnewline
+{\small outer-Rdelim} & {\small\texttt{\textbackslash right )}} & {\small f, fp, s, sp, c, cp, j, l}\tabularnewline
+{\small elbowroom} & {\small\texttt{0 mu}} & {\small f, fp, s, sp, c, cp, j, l}\tabularnewline
+{\small sub-nudge} & {\small\texttt{-5 mu}} & {\small f, fp, s, sp, c, cp}\tabularnewline
+{\small op-sub-nudge} & {\small\texttt{0 mu}} & {\small\phantom{{\small f, fp, s, sp,}} c, cp}\tabularnewline
+{\small{*}derivand-sep} & {\small\texttt{derivand-sep}} & {\small f, fp, s, sp, c, cp}\tabularnewline
+{\small{*}op-set-left} & {\small\texttt{false}} & {\small f, fp, \phantom{{\small s, sp, c, cp,}} j}\tabularnewline
+{\small{*}italic-nudge} & {\small\texttt{0 mu}} & {\small f, fp, \phantom{{\small s, sp, c, cp,}} j}\tabularnewline
+{\small{*}inner-wrap} & {\small\texttt{false}} & {\small\phantom{{\small f, fp,}} s, sp}\tabularnewline
+{\small{*}inner-Ldelim} & {\small\texttt{(}} & {\small\phantom{{\small f, fp,}} s, sp}\tabularnewline
+{\small{*}inner-Rdelim} & {\small\texttt{)}} & {\small\phantom{{\small f, fp,}} s, sp}\tabularnewline
+{\small{*}outer-Ldelim} & {\small\texttt{\textbackslash big {[}}} & {\small\phantom{{\small f, fp,}} s, sp}\tabularnewline
+{\small{*}outer-Rdelim} & {\small\texttt{\textbackslash big {]}}} & {\small\phantom{{\small f, fp,}} s, sp}\tabularnewline
+{\small{*}sub-nudge} & {\small\texttt{0 mu}} & {\small\phantom{{\small f, fp,}} s, sp}\tabularnewline
\bottomrule
\end{tabular}
-\end{table}
\par\end{center}
+\end{table}
+
\begin{description}
-\item [{op-symbol}] the operator symbol; for ordinary derivatives, generally
-one of \texttt{d} or \texttt{\textbackslash mathrm\{d\}}, \texttt{D}
-or \texttt{\textbackslash mathrm\{D\}}, \texttt{\textbackslash delta}
-or \texttt{\textbackslash Delta}; for partial derivatives \texttt{\textbackslash partial};
-default = \texttt{d}
+\item [{style}] the fraction form of derivative;
+\begin{itemize}
+\item for upright-fraction derivatives, \verb`\diff`, \verb`\diffp`, a
+choice of \verb`frac`, \verb`tfrac` or \verb`dfrac`:
+\begin{itemize}
+\item \verb`frac` results in a fraction formed from \verb`\frac`, scalable
+\item \verb`tfrac` results in a fraction formed from \verb`\tfrac`, not
+scalable
+\item \verb`dfrac` results in a fraction formed from \verb`\dfrac`, not
+scalable
+\item default in templates \verb`DIFF`, \verb`DIFFP` = \verb`frac`
+\end{itemize}
+\item for slash-fraction derivatives,\verb`\difs`, \verb`\difsp`, a choice
+of \verb`/`, \verb`auto`, \verb`big`, \verb`Big`, \verb`bigg`
+or \verb`Bigg`
+\begin{itemize}
+\item \verb`/` forms the slash fraction with \verb`/`, not scalable
+\item \verb`auto` forms the slash fraction with \verb`\left. \middle/ \right.`,
+scalable
+\item \verb`big`, \verb`Big`, \verb`bigg` and \verb`Bigg` form the slash
+fraction with \verb`\big/`, \verb`\Big/`, \verb`\bigg/` and \verb`\Bigg/`
+respectively, not scalable
+\item default in templates \verb`DIFS`, \verb`DIFSP` = \verb`/`
+\end{itemize}
+\item for compact-form derivatives, \verb`\difc`, \verb`\difcp`, a choice
+of \texttt{\_} or \verb`dl`
+\begin{itemize}
+\item \_ forms derivatives of compact form like $\difc yx$, $\difcp[1,2]{z}{x,y}$
+\item \verb`dl` forms differentials like $\difc.dl.{}x$ and $\difcp.dl.[2]{}{x,y,z}$
+\item default in templates \verb`DIFC`, \verb`DIFCP` = \texttt{\_}
+\end{itemize}
+\item overall default in template \verb`DIF` = \verb`frac`
+\end{itemize}
+\item [{slash-tok}] token or tokens used for the slash fraction; (see §\ref{subsec:Other-notations}
+for a different assignment) default \verb`/`
+\item [{slash-sep}] space inserted on either side of the \textbf{slash-tok};
+ default \verb`0 mu`
+\item [{derivand-sep}] horizontal space added before the differentiand
+if the \verb`spaced` package option is set to \verb`1`, or before
+a multi-tokened differentiand if the \verb`spaced` package option
+is set to \verb`-1`; note that compact-form derivatives \emph{always
+}have this space inserted; default (appropriate for an upright-fraction
+derivative) = \verb`3mu plus 1mu minus 2mu`
+\item [{op-symbol}] the operator symbol; for ordinary derivatives generally
+one of \verb`d` or \verb`\mathrm{d}`, for partial derivatives \verb`\partial`;
+default = \verb`\mathrm{d}`
\item [{op-symbol-alt}] if different from \textbf{op-symbol} then used
-in the denominator while \textbf{op-symbol} is used in the numerator;
-e.g. for $\diff.nabla.{v^{i}}t$, \texttt{op-symbol = \textbackslash nabla}
-and \texttt{op-symbol-alt = d}; otherwise (and usually) defaults to
-\textbf{op-symbol}
-\item [{op-order-sep}] extra horizontal space added between the op-symbol
+in the denominator of a fraction-form derivative while \verb`op-symbol`
+is used in the numerator; e.g. for the acceleration $\diff.n.{v^{i}}t$,
+\verb`op-symbol = \nabla` and \verb`op-symbol-alt = d`; defaults
+to \textbf{op-symbol} default
+\item [{op-order-nudge}] extra horizontal space added between the op-symbol
and the superscripted order of differentiation in higher order derivatives;
-for the math-italic forms compare $d^{2}$ with $d^{\mkern1mu 2}$,
-$\partial^{2}$ with $\partial^{\mkern1mu 2}$ where the first symbol
-in each case has no extra space and the second has an extra 1 mu;
-default = \texttt{1 mu}
-\item [{derivand-sep}] horizontal space added before the differentiand
-(derivand) if the \verb`spaced` package option is used, or by the
-\verb`!` switch if it is not; the default has some stretch and shrink;
-default = \verb`3mu plus 1mu minus 2mu`
-\item [{/-derivand-sep}] for the slash form of derivative, horizontal space
-added before the differentiand (derivand) if the \verb`spaced` package
-option is used, or by the \verb`!` switch if it is not; default =
-\verb`derivand-sep`
-\item [{{*}-derivand-sep}] when the derivand is appended, horizontal space
-added before the differentiand (derivand) if the \verb`spaced` package
-option is used, or by the \verb`!` switch if it is not; default =
-\verb`derivand-sep`
-\item [{{*}/-derivand-sep}] for the slash form of derivative when the derivand
-is appended, horizontal space added before the differentiand (derivand)
-if the \verb`spaced` package option is used, or by the \verb`!`
-switch if it is not; default = \verb`/-derivand-sep`
-\item [{denom-term-sep}] (mixed partial derivatives only) horizontal spacing
-inserted between the differentials in the denominator of a mixed partial
-derivative to avoid a solid cluster like $\partial x\partial y\partial z$;
-with the default 2 mu this is $\dl.p.x\dl.p.2y\dl.p.2z$; default
-= \texttt{2 mu}
-\item [{/-denom-term-sep}] (mixed partial derivatives only) horizontal
-spacing inserted between the differentials in the denominator of a
-slash-form mixed partial derivative; because a slash-form derivative
-is already spread out horizontally, the default spacing is less than
-for the \texttt{\textbackslash frac} form derivative; default = \texttt{1
-mu}
-\item [{term-sep-adjust}] (mixed partial derivatives only) adjustment (i.e.
-reduction) to \textbf{denom-term-sep} or \textbf{/-denom-term-sep}
+for math-italic forms compare $d^{2}$ with $d^{\mkern1mu 2}$, $\partial^{2}$
+with $\partial^{\mkern1mu 2}$ where the first symbol in each case
+has no extra space and the second has an extra \verb`1 mu`; since
+\textbf{op-symbol }defaults to an upright `d', default = \verb`0 mu`
+\item [{var-sup-nudge}] extra horizontal space added between a variable
+in the denominator of a derivative and the superscripted order of
+differentiation in higher order derivatives (cf \textbf{op-order-nudge});
+default = \verb`1 mu`
+\item [{multi-term-sep}] horizontal spacing inserted between the differentials
+in, for example, the denominator of a mixed partial derivative to
+avoid a solid cluster like $\partial x\partial y\partial z$; with
+the default \verb`2 mu` this is spread a little, $\difcp.dl.{}{x,y,z}$;
+default = \verb`2 mu plus 1 mu minus 1 mu`
+\item [{term-sep-adjust}] adjustment (usually a reduction) to \textbf{multi-term-sep}
when differentiation in a variable occurs to an order other than 1;
-if, e.g., $\dl.p.x^{2}\dl.p.1y\dl.p.2z$ is the denominator of a mixed
+if, e.g., $\difcp.dl.[2]{}{x,y,z}$ is the denominator of a mixed
partial derivative in three variables, because of the superscript
the spacing between $\partial x^{2}$ and $\partial y$ is reduced
by\textbf{ term-sep-adjust} from the spacing between $\partial y$
-and $\partial z$; default = \texttt{-1 mu}
-\item [{left-delim}] the left member of a delimiter pair wrapping the derivative,
-the right member of which is subscripted to indicate a point of evaluation
-or variables held constant; default = \texttt{\textbackslash left
-.}
-\item [{right-delim}] the right member of a delimiter pair wrapping the
-derivative and subscripted to indicate a point of evaluation or variables
-held constant; default = \texttt{\textbackslash right |}
-\item [{/-left-delim}] for the slash form of derivative, the left member
-of a delimiter pair wrapping the derivative and subscripted to indicate
-a point of evaluation or variables held constant; default = \texttt{(}
-\item [{/-right-delim}] for the slash form of derivative, the right member
-of a delimiter pair wrapping the derivative, the right member of which
-is subscripted to indicate a point of evaluation or variables held
-constant; default = \texttt{)}
-\item [{elbowroom}] adjustment to the whitespace between the left and right
-delimiters and the enclosed derivative; negative values reduce the
-space; default = \texttt{0 mu}
-\item [{/-elbowroom}] adjustment to the whitespace between the left and
-right delimiters and the enclosed slash-form derivative; default =
-\texttt{0 mu}
-\item [{subscr-nudge}] horizontal adjustment of the subscript's placing
-relative to the \textbf{right-delim}iter, e.g., a negative value compensates
-for the curving inwards of a large right parenthesis; may be font
-dependent; default = \texttt{0 mu}
-\item [{/-subscr-nudge}] for the slash form of derivative, horizontal adjustment
-of the subscript's placing relative to the /-\textbf{right-delim}iter;
-may be font dependent; default = \texttt{0 mu}
+and $\partial z$; default = {\ttfamily\verb`-1 mu`}
\item [{long-var-wrap}] to avoid ambiguity in higher order derivatives
-it may be advisable to wrap multi-token variables of differentiation
-in parentheses; default = \texttt{d(v)}; the choices are
+it may aid clarity to wrap multi-token variables of differentiation
+in parentheses; the choices are
\begin{description}
-\item [{\texttt{dv}}] no wrapping, e.g. $dx_{i}^{2}$ or $d\frac{1}{\Theta}^{2}$,
-$\partial x_{i}^{2}$ or $\partial\frac{1}{\Theta}^{2}$,
-\item [{\texttt{d(v)}}] wrap the variable only, e.g. $d(x_{i})^{2}$ or
-$d(\frac{1}{\Theta})^{2}$, $\partial(x_{i})^{2}$ or $\partial(\frac{1}{\Theta})^{2}$
-\item [{\texttt{(dv)}}] wrap the op-symbol and variable, e.g. $(dx_{i})^{2}$
-or $(d\frac{1}{\Theta})^{2}$, $(\partial x_{i})^{2}$ or $(\partial\frac{1}{\Theta})^{2}$
+\item [{\texttt{dv\phantom{()}}}] no wrapping, e.g. $\mathrm{d}x_{i}^{2}$
+or $\partial\frac{1}{\Theta}^{2}$,
+\item [{\texttt{d(v)}}] wrap the variable only, e.g. $\mathrm{d}(x_{i})^{2}$
+or $\partial(\frac{1}{\Theta})^{2}$,
+\item [{\texttt{(dv)}}] wrap both op-symbol and variable, e.g. $(\mathrm{d}x_{i})^{2}$
+or $(\partial\frac{1}{\Theta})^{2}$;
+\item [{\texttt{\phantom{(dv)}}}] default = \verb`d(v)`
\end{description}
-\item [{{*}/-op-wrap}] a choice of \texttt{true} or \texttt{false} for
-slash forms of the derivative when the differentiand is appended,
-dictating whether the derivative is wrapped in parentheses, as here
-$\diffp*{F(x,y)}/x$, or not; default = \texttt{true}
-\item [{{*}-op-left}] a choice of \texttt{true} or \texttt{false} indicating
-whether the op-symbol is left-aligned or not when the differentiand
-is appended; generally it is centred; does not apply to slash forms
-of the derivative; default = \texttt{false}
-\item [{{*}-italic-nudge}] if \textbf{{*}-op-left} is \texttt{true}, makes
+\item [{lvwrap-Ldelim}] left delimiter when wrapping a long variable in
+a higher order derivative; also applies to the left delimiter used
+in a jacobian; default = \verb`\mleft (`
+\item [{lvwrap-Rdelim}] right delimiter when wrapping a long variable in
+a higher order derivative; also applies to the right delimiter used
+in a jacobian; default = \verb`\mright )`
+\item [{lvwrap-sup-nudge}] horizontal adjustment to the superscript position
+when a multi-token variable is wrapped in (e.g.) parentheses and its
+order of differentiation is not \verb`1`; default = \verb`-2 mu`
+\item [{outer-Ldelim}] the left member of a delimiter pair wrapping the
+derivative, the right member of which is subscripted to indicate a
+point of evaluation or variables held constant; ISO recommends parentheses
+for this purpose, hence default = {\ttfamily\verb`\left (`}
+\item [{outer-Rdelim}] the right member of a delimiter pair wrapping the
+derivative and subscripted to indicate a point of evaluation or variables
+held constant; ISO recommends parentheses for this purpose, hence
+default = {\ttfamily\verb`\right )`}
+\item [{elbowroom}] adjustment to the whitespace between \textbf{outer-Ldelim},
+\textbf{outer-Rdelim }and the enclosed derivative; negative values
+reduce the space; default = {\ttfamily\verb`0 mu`}
+\item [{sub-nudge}] horizontal adjustment of the subscript's placing relative
+to the \textbf{outer-Rdelim}iter for a point of evaluation or variable
+held constant; a negative value compensates for the curving inwards
+of a large right parenthesis; default = {\ttfamily\verb`-5 mu`}
+\item [{op-sub-nudge}] horizontal adjustment of the position of the subscript
+in derivatives of compact form relative to the operator; since \verb`\mathrm{d}`
+is the default operator, default = \verb`0 mu`
+\item [{{*}derivand-sep}] when the derivand is appended, horizontal space
+added before the differentiand (derivand) depending on the setting
+of the \verb`spaced` package option; default = \textbf{derivand-sep}
+default
+\item [{{*}op-set-left}] a choice of {\ttfamily\verb`true`}
+or {\ttfamily\verb`false`} indicating whether the op-symbol
+is left-aligned or not when the differentiand is appended; generally
+it is centred; applies only to upright-fraction forms of the derivative;
+default = {\ttfamily\verb`false`}
+\item [{{*}italic-nudge}] if \textbf{{*}op-set-left} is \verb`true`, makes
an italic adjustment in the numerator, so that the op-symbols in numerator
-and denominator align in the same slanting column; for an upright
-\texttt{d} this would be set to \texttt{0 mu}; default = \texttt{3
-mu}
+and denominator align in the same slanting column; for \verb`d` or
+\verb`\partial` an appropriate value might be \verb`3 mu`; because
+of the default \verb`\mathrm{d}`, default = \verb`0 mu`
+\item [{{*}inner-wrap}] when the differentiand is appended, a choice of
+\verb`true` or \verb`false` dictating whether the differential operator
+is wrapped in parentheses, as here $\difsp*{F(x,y)}x$, or not; for
+a slash-fraction derivative \verb`true` is an appropriate default,
+but the overall default, appropriate for an upright-fraction derivative,
+= \verb`false`
+\item [{{*}inner-Ldelim}] if \textbf{{*}inner-wrap} is \verb`true`, the\textbf{
+}left member of a delimiter pair around the differential operator;
+default = \verb`(`
+\item [{{*}inner-Rdelim}] if \textbf{{*}inner-wrap} is \verb`true`, the\textbf{
+}right member of a delimiter pair around the differential operator
+; default = \verb`)`
+\item [{{*}outer-Ldelim}] if \textbf{{*}inner-wrap} is \verb`true`, the
+left member of a delimiter pair around both the differential operator
+and appended differentiand, the right member of which may be subscripted
+to indicate a point of evaluation or variables held constant; to avoid
+too many parentheses, given the default values of {*}\textbf{inner-Ldelim},
+{*}\textbf{inner-Rdelim}, default = \verb`\bigl [`
+\item [{{*}outer-Rdelim}] if \textbf{{*}inner-wrap} is \verb`true`, the
+right member of a delimiter pair around the differential operator
+and appended differentiand; may be subscripted to indicate a point
+of evaluation or variables held constant; to avoid too many parentheses,
+given the default values of \textbf{{*}inner-Ldelim}, \textbf{{*}inner-Rdelim},
+default = \verb`\bigr ]`
+\item [{{*}sub-nudge}] if \textbf{{*}inner-wrap} is \verb`true`, horizontal
+adjustment of the subscript's placing relative to the \textbf{{*}outer-Rdelim}iter
+for a point of evaluation or variable held constant; a negative value
+compensates for the curving inwards of a large right parenthesis;
+since the default \textbf{{*}outer-Rdelim} is a square bracket,\textbf{
+}default = \verb`0 mu`
\end{description}
-\subsection{ISO defaults}
-
-\label{subsec:ISO-defaults}You may not like the default settings
-that come with \texttt{diffcoeff}. The package does not follow ISO
-80000-2 -- it does not use upright `d's nor does it wrap an ordinary
-differential coefficient in subscripted parentheses to indicate a
-point of evaluation. Both `defects' can be remedied by calling the
-package with the option \texttt{ISO}:\footnote{One can also use \texttt{ISO=true} to turn the option on and \texttt{ISO=false
-}to turn the option off. }
-\begin{lyxcode}
-\textbackslash usepackage{[}ISO{]}\{diffcoeff\}
-\end{lyxcode}
-\begin{wraptable}[10]{o}{0.4\columnwidth}%
-\centering{}\vspace{-4ex}
- \caption{{\small ISO default changes}\protect\label{tab:ISO-setting-changes}}
-\abovetopsep=.5ex %
-\begin{tabular}{lr}
-\toprule
-{\small key} & {\small default}\tabularnewline
-\midrule
-{\small op-symbol} & {\small\texttt{\textbackslash mathrm\{d\}}}\tabularnewline
-{\small op-order-sep} & {\small\texttt{0 mu}}\tabularnewline
-{\small left-delim} & {\small\texttt{\textbackslash left (}}\tabularnewline
-{\small right-delim} & {\small\texttt{\textbackslash right )}}\tabularnewline
-{\small subscr-nudge} & {\small\texttt{-6 mu}}\tabularnewline
-\bottomrule
-\end{tabular}\end{wraptable}%
-
-The uppercase is essential -- an option \texttt{iso} is not recognised.
-The \texttt{ISO} option results in changes to the default settings
-of Table~\ref{tab:Ordinary-derivatives} as listed in Table~\ref{tab:ISO-setting-changes}.
-Any settings not mentioned in Table~\ref{tab:ISO-setting-changes}
-retain the values presented in Table~\ref{tab:Ordinary-derivatives}.
-Note that the subscript nudge figure specified here is \emph{not}
-part of the standard, which makes no recommendation about the subscript's
-positioning. But: the \texttt{-6 mu} figure with a default or latin
-modern font gives a better representation of what is displayed in
-the standard than a zero figure.
-
-Because the `d' is upright with the \texttt{ISO} option, no extra
-space is required between the symbol and the superscript in a higher
-order derivative. Hence the zero value for the \texttt{op-order-sep}.
-ISO recommends subscripted parentheses to indicate a point of evaluation.
-Hence the other entries in the table. Because a large right parenthesis
-(penultimate setting) bends inwards, to the left, a negative value
-for the last entry ensures the subscript does not become detached
-from the derivative, looking lost in a sea of whitespace.
-
-Note that the \texttt{ISO} option will also produce upright `D's in
-derivatives formed from `D'; see §\ref{subsec:D-delta-Delta} below.
-
-\subsection{Partial derivatives}
-
-\begin{wraptable}{o}{0.4\columnwidth}%
-\centering{}\vspace{-4ex}
- \caption{{\small Default changes for partial derivatives}\protect\label{tab:Partial-deriv-defaults}}
-\abovetopsep=.5ex %
-\begin{tabular}{lr}
-\toprule
-{\small key} & {\small default}\tabularnewline
-\midrule
-{\small op-symbol } & {\small\texttt{\textbackslash partial}}\tabularnewline
-{\small left-delim} & {\small\texttt{\textbackslash left (}}\tabularnewline
-{\small right-delim} & {\small\texttt{\textbackslash right )}}\tabularnewline
-{\small subscr-nudge } & {\small\texttt{-6 mu}}\tabularnewline
-\bottomrule
-\end{tabular}\end{wraptable}%
-
-The default values given in Table~\ref{tab:Ordinary-derivatives},
-when they are relevant, apply to \emph{ordinary} derivatives. For
-partial derivatives, the defaults are those of Table~\ref{tab:Partial-deriv-defaults}.
-All other keys take the default values listed in Table~\ref{tab:Ordinary-derivatives}.
-The last three entries here are not an attempt at ISO compatibility
-but reflect the use of subscripted parentheses with partial derivatives
-to indicate variables held constant, for instance in the Maxwell relations
-of thermodynamics, one of which is
-\[
-\diffp SV[T]=\diffp PT[V].
-\]
-
-
-\subsection{Setting your own defaults: \texttt{\textbackslash diffdef\protect\label{subsec:diffdef}}}
-
-Versions 2 and later of the \texttt{diffcoeff} package provide a command,
-\texttt{\textbackslash diffdef}, that enables users to set their
-own defaults.\texttt{ }For example, if you wish to use upright `d's
-but not follow the ISO's use of subscripted parentheses to indicate
-a point of evaluation, enter in the preamble of your document the
-command
-\begin{lyxcode}
-\textbackslash diffdef~\{\}~~~~
-
-~~\{~~~~~~
-
-~~~~op-symbol~~~~=~\textbackslash mathrm\{d\},~~~~
+\subsection{Ordinary upright-fraction derivatives; template \texttt{DIFF}}
-~~~~op-order-sep~=~0~mu
+The defaults assigned in template \verb`DIF` are inherited by template
+\verb`DIFF` without change. Template \verb`DIFF` is therefore strictly
+unnecessary but, with templates \verb`DIFS` and \verb`DIFC` in mind,
+was created for the sake of a consistent naming scheme.
-~~\}
-\end{lyxcode}
-\noindent Since a list of settings, like this one, is a comma-\emph{separated}
-list, no comma is required for the last entry. That entry is a consequence
-of the first: upright symbols do not require any extra separation
-between the `d' and the superscript in a higher order derivative.
+The \verb`\diff` command uses the values in the \verb`DIFF` template
+to form an upright-fraction derivative. Only keys with an `f' in
+the third column of Table~\ref{tab:DIF-defaults} are used in this
+process. Keys without an `f' play no part in the process and their
+default values are ignored. See §\ref{subsec:DIFF-(upright-fraction-derivative)}
+for the complete list of \emph{relevant} \verb`DIFF` defaults.
-The other point to note is the empty pair of braces after the \texttt{\textbackslash diffdef}
-command. \emph{They matter}. Their emptiness is what determines that
-it is the \emph{default} values that are changed. If they contain
-some content, then that content provides a \emph{name} for the particular
-set of values in the following list. The \texttt{diffcoeff} package
-exploits this facility to cope with the wide variety of forms displayed
-in the Rogues' Gallery of §\ref{sec:Rogues'-gallery}.
-
-\subsubsection{Space before the differentiand}
+\begin{table}
+\caption{Defaults differing from the parent template}
-\label{subsec:A-final-flourish}\begin{wraptable}{o}{0.6\columnwidth}%
\begin{centering}
-\caption{Keys for spacing the derivand}
-\medskip{}
+\subfloat[\texttt{DIFS}\label{tab:DIFS-defaults}]{\centering{}%
\begin{tabular}{lr}
\toprule
{\small key} & {\small default}\tabularnewline
\midrule
-{\small derivand-sep} & {\small\texttt{3mu plus 1mu minus 2mu}}\tabularnewline
-{\small{*}-derivand-sep} & {\small\texttt{derivand-sep}}\tabularnewline
-{\small /-derivand-sep} & {\small\texttt{derivand-sep}}\tabularnewline
-{\small{*}/-derivand-sep} & {\small\texttt{ /-derivand-sep}}\tabularnewline
+{\small style} & {\small\texttt{/}}\tabularnewline
+{\small derivand-sep} & {\small\texttt{2muplus1muminus2mu}}\tabularnewline
+{\small outer-Ldelim} & {\small\texttt{(}}\tabularnewline
+{\small outer-Rdelim} & {\small\texttt{)}}\tabularnewline
+{\small sub-nudge} & {\small\texttt{0 mu}}\tabularnewline
+{\small{*}inner-wrap} & {\small\texttt{true}}\tabularnewline
\bottomrule
-\end{tabular}
+\end{tabular}}\hfil\subfloat[\texttt{DIFC}\label{tab:DIFC-defaults}]{\centering{}%
+\begin{tabular}{lr}
+\toprule
+{\small key} & {\small default}\tabularnewline
+\midrule
+{\small style} & {\small\texttt{\_}}\tabularnewline
+{\small derivand-sep} & {\small\texttt{1muplus1muminus1mu}}\tabularnewline
+{\small multi-term-sep} & {\small\texttt{1 mu}}\tabularnewline
+{\small term-sep-adjust} & {\small\texttt{0 mu}}\tabularnewline
+{\small outer-Ldelim} & {\small\texttt{\textbackslash bigl (}}\tabularnewline
+{\small outer-Rdelim} & {\small\texttt{\textbackslash bigr )}}\tabularnewline
+sub-nudge & {\small\texttt{-2 mu}}\tabularnewline
+\bottomrule
+\end{tabular}}
\par\end{centering}
-\end{wraptable}%
-The insertion of a small space before the differentiand is effected
-by the \verb`!` key inserted immediately before the differentiand
-argument in the \verb`\diff` command. You may wish to make the insertion
-of this space the \emph{default} behaviour. This is done by using
-the \verb`spaced` package option (which makes the \verb`!` switch
-now reverse this new default and put \emph{no} extra space before
-the derivand). The amount of space inserted is, by default, \verb`3mu plus 1mu minus 2mu`,
-meaning the space is generally $3$mu but can stretch to $4$mu or
-shrink to $1$mu as \TeX{} strives to fit content in a line or on the
-page.
-
-Perhaps this doesn't suit. You may want a fixed space here, with no
-stretch or shrink. The key to change is \verb`derivand-sep`. By default,
-this setting applies not only to the fraction form of derivative,
-but also to the slash form and to when the derivand is appended.
-
-If you feel a little less space should be used for slash derivatives,
-then the key to change is \verb`/-deriv-sep`. This changed value
-will also be used for an appended derivand in a slash derivative.
-
-Thus to meet both wishes you might put in the preamble of your document
-something like
-\begin{lyxcode}
-\textbackslash diffdef~\{\}~~~~
-
-~~\{~~~~~~
-
-~~~~derivand-sep~~~=~3~mu,~~~~
-
-~~~~/-derivand-sep~=~2~mu
-
-~~\}
-\end{lyxcode}
-This will insert a fixed space of $3$mu before the differentiand
-in both the numerator and when appended in the fraction form of derivative,
-and a fixed space of $2$mu in the slash form of derivative, both
-in the numerator and when appended.
-
-If you want a different spacing when the derivand is appended, the
-keys to change are \verb`*-derivand-sep` and \verb`*/-derivand-sep`.
-
-\paragraph{Selective spacing}
-
-I have treated the \verb`spaced` package option thus far as if it
-were an \verb`ON/OFF` switch and, indeed, the presence of the package
-option \verb`spaced` behaves as \verb`ON` and its absence as \verb`OFF`.
-Internally, however, \verb`spaced` is equivalent to \verb`spaced=1`
-and its absence to \verb`spaced=0`. Entering \verb`spaced=n` in
-the package option where \verb`n` is a positive integer is equivalent
-to entering \verb`spaced=1` (and hence to simply entering \verb`spaced`),
-but if \verb`n` is a negative integer, a new effect is produced.
-
-Entering \verb`spaced=-1` (or any negative integer) will insert a
-space (by default \verb`3mu plus 1mu minus 2mu`) before the differentiand
-provided the differentiand\emph{ is longer than a single token} but
-will insert no space before single-token differentiands. The switch
-\verb`!` reverses this behaviour.
-
-\subsection{Variant forms}
-
-For this package I needed to have a number of variant forms available
-to illustrate the wide variety of ways in which derivatives are displayed.
-The \texttt{\textbackslash diffdef} command in which the first argument
-is \emph{filled} provides one half of the means of doing this. I've
-given the single-letter name \texttt{p} to the following settings:
-\begin{lyxcode}
-\textbackslash diffdef~\{~p~\}
-
-~~\{
-
-~~~~op-symbol~~~~=~\textbackslash partial~,
-
-~~~~left-delim~~~=~\textbackslash left~(~~,
-
-~~~~right-delim~~=~\textbackslash right~)~,
-
-~~~~subscr-nudge~=~-6~mu
-
-~~\}
-\end{lyxcode}
-The second half of providing variant forms is to insert this name,
-\texttt{p}, between dots (periods, full stops) as the \emph{first}
-argument of the \texttt{\textbackslash diff} command. Thus, repeating
-an example at the end of §\ref{subsec:Partial-appending},
+\centering{}\subfloat[\texttt{DIFFP}\label{tab:DIFFP-defaults}]{\centering{}%
+\begin{tabular}{lr}
+\toprule
+{\small key} & {\small default}\tabularnewline
+\midrule
+{\small op-symbol} & {\small\texttt{\textbackslash partial}}\tabularnewline
+{\small op-order-nudge} & {\small\texttt{1 mu}}\tabularnewline
+{\small{*}italic-nudge} & {\small\texttt{3 mu}}\tabularnewline
+\bottomrule
+\end{tabular}}\hfil\subfloat[\texttt{DIFSP, DIFCP}\label{tab:DIFSP-DIFCP-defaults}]{\centering{}%
+\begin{tabular}{lr}
+\toprule
+{\small key} & {\small default}\tabularnewline
+\midrule
+{\small op-symbol} & {\small\texttt{\textbackslash partial}}\tabularnewline
+{\small op-order-nudge} & {\small\texttt{1 mu}}\tabularnewline
+\bottomrule
+\end{tabular}}
+\end{table}
+
+
+\subsection{Ordinary slash-fraction derivatives; template \texttt{DIFS}}
+
+When you use the command \verb`\difs` to form a slash-fraction derivative
+it is the keys in template \verb`DIF` with an `s' in the third
+column of Table~\ref{tab:DIF-defaults} which are used. Table~\ref{tab:DIFS-defaults}
+records those keys used for this purpose which are assigned default
+values \emph{different} from those in \verb`DIF`. See §\ref{subsec:DIFS-(slash-fraction-derivative)}
+for the complete list of \emph{relevant} \verb`DIFS` defaults.
+
+\subsection{Ordinary compact-form derivatives; template \texttt{DIFC}}
+
+When you use the command \verb`\difc` to form a compact derivative
+it is the keys in template \verb`DIF` with a `c' in the third column
+of Table~\ref{tab:DIF-defaults} which are used. Table~\ref{tab:DIFC-defaults}
+records those keys used for this purpose which are assigned default
+values \emph{different} from those in \verb`DIF`. See §\ref{subsec:DIFC-(compact-derivative)}
+for the complete list of \emph{relevant} \verb`DIFC` defaults.
+
+\subsection{Partial derivatives; templates \texttt{DIFFP}, \texttt{DIFSP}, \texttt{DIFCP}}
+
+The default values given in the tables so far apply to ordinary derivatives.
+For \emph{partial} derivatives, only a few defaults change. These
+are listed in Tables~\ref{tab:DIFFP-defaults}, \ref{tab:DIFSP-DIFCP-defaults}.
+All other keys take the default values of the respective parent templates,
+\verb`DIFF`, \verb`DIFS` and \verb`DIFC`.
+
+\section{Variant forms: the \texttt{\textbackslash difdef} command}
+
+\label{sec:Variant-forms}You may be dissatisfied with the scheme
+of default values listed in the preceding tables and wish to `Re-mould
+it nearer to the Heart's Desire'. How to do so is discussed in §\ref{sec:ChangingDefaults}
+below. In \emph{this} section it is assumed that the user is largely
+satisfied with the assigned defaults but has need to write an occasional
+derivative that deviates from the default form. For instance, to write
+the range of different examples displayed in the Rogues' Gallery (§\ref{sec:Rogues'-gallery})
+I had to make extensive use of such \emph{variant forms} of derivative.
+I needed forms that displayed different ways of indicating a point
+of evaluation, a form that showed a math-italic `d' rather than
+the default upright `d', forms that displayed different parenthesizing
+styles for higher-order derivatives with multi-token variable names,
+and so on.
+
+The process of defining and using such variants is a two-step process.
+The `using' part is easy: you simply put the name of the variant
+form between dots and append to the relevant \verb`\difx` or \verb`\difxp`
+command.
+
+The `defining' part makes use of a command \verb`\difdef`,
+\begin{verbatim}
+ \difdef{id-list}{variant-name}{key-value list}
+\end{verbatim}
+which has three \emph{mandatory} arguments:
+\begin{enumerate}
+\item \verb`id-list` A comma-list of identifiers, one or more of \verb`f`,
+\verb`s`, \verb`c`, \verb`fp`, \verb`sp`, \verb`cp`, \verb`j`,
+\verb`l` distinguishing the respective templates \verb`DIFF`, \verb`DIFS`,
+\verb`DIFC`, \verb`DIFFP`, \verb`DIFSP`, \verb`DIFCP`, \verb`DIFJ`
+and \verb`DIFL` (for the last two see Chapter~\ref{chap:Differentials-and-jacobians}).
+\item \verb`variant-name` A (preferably brief) name for the variant form;
+it may include characters other than letters, like numbers, punctuation
+marks (excluding full stops), mathematical symbols like \verb`+`
+and \verb`=`, but not control sequences or active characters, nor
+\verb`%` , \verb`#` or braces.
+\item \verb`key-value list` A \emph{key=value} list where the settings
+differ from the default settings for the relevant template or templates
+(as determined by the \verb`id-list`).
+\end{enumerate}
+In the preamble to the present document I have included the following
+definition:
+\begin{verbatim}
+ \difdef { f } { p }
+ {
+ op-symbol = \partial,
+ op-order-nudge = 1 mu
+ }
+\end{verbatim}
+This defines a variant, with name \verb`p`, of an ordinary upright-fraction
+derivative (the \verb`f` in the first argument) that displays as
+a partial derivative. To use the variant simply append the name, as
+a dot-delimited argument, to the \verb`\diff` command. For instance,
+repeating an earlier example from thermodynamics,
\begin{centred}
\verb`\[ \diff.p.*{\frac PT}U[V] = \diff.p.*{\frac 1T}V[U] \]` $\Longrightarrow$
-\[ \diff.p.*{\frac PT}U[V] = \diff.p.*{\frac 1T}V[U] \]
-\end{centred}
-\noindent The effect is exactly the same as previously, when the \texttt{\textbackslash diffp}
-command was used. Indeed, \texttt{diffcoeff} identifies \texttt{\textbackslash diffp}
-with \texttt{\textbackslash diff.p.}:
-\begin{lyxcode}
-\textbackslash NewDocumentCommand~\textbackslash diffp~\{~\}~\{~\textbackslash diff.p.~\}
-\end{lyxcode}
-Note that this identification of \texttt{\textbackslash diffp} with
-\texttt{\textbackslash diff.p.} means there is no equivalent dot-delimited
-argument available for \texttt{\textbackslash diffp}. The \emph{dot-delimited
-argument applies only to} \texttt{\textbackslash diff}.
-
-For example, to illustrate the upright-d form of derivative, without
-changing the default math-italic form (which I prefer), one might
-enter in the preamble
-\begin{lyxcode}
-\textbackslash diffdef~\{~up~\}~
-
-~~\{
-
-~~~~op-symbol~~~~=~\textbackslash mathrm\{d\},
-
-~~~~op-order-sep~=~0~mu
-
-~~\}
-\end{lyxcode}
-Apart from the \emph{key = value} settings, the critical feature here
-is the name, \texttt{up} (which is at your discretion and could equally
-be \texttt{upright} or \texttt{roman} or even \texttt{Fred} if you
-so fancied). This ensures that the changed settings apply only to
-this particular variant and do not `infect' the overall defaults.
-To use this variant, all that is needed is to add the name, between
-dots, to the \texttt{\textbackslash diff} command:
-\begin{centred}
-\verb`\[ \diff.up.yx \]` $\Longrightarrow$ \[ \diff.up.yx. \]
-\end{centred}
-\noindent Each variant derivative inherits all the default values
-that it does not explicitly countermand. Thus a point of evaluation
-is indicated by a vertical rule which is the \texttt{diffcoeff} default\footnote{\noindent But not the ISO recommendation.}:
-\begin{centred}
-\noindent \verb`\[ \diff.up.*{\frac{F(x)}{G(x)}}x[x=1] \]` $\Longrightarrow$
-\[ \diff.up.*{\frac{F(x)}{G(x)}}x[x=1] \]
-\end{centred}
-\noindent Dot-delimited arguments must always be the \emph{first}
-argument of the \texttt{\textbackslash diff} command, even preceding
-an asterisk (star) as in this example.
-
-As another example, suppose for the subscripted indication of variables
-held constant in a partial derivative that you want to see what things
-look like if the subscript is \emph{not }nudged in towards the right
-parenthesis. In that case define a variant form
-\begin{lyxcode}
-\textbackslash diffdef~\{~padrift~\}~\{~subscr-nudge~=~0~mu~\}
-\end{lyxcode}
-I have attached a name, \texttt{padrift},\texttt{ }to this setting,
-\begin{centred}
-\verb`\[ \diff.padrift.Fx[y] \]` $\Longrightarrow$ \[ \diff.padrift.Fx[y] \]
-\end{centred}
-\noindent since, to my eye, the subscript seems detached from the
-expression it qualifies -- is it perhaps a typo? -- and `adrift
-in a sea of whitespace'. This is to be compared with the default \verb`\[ \diffp Fx[y] \]`
-$\Longrightarrow$ \[ \diffp Fx[y] \]
-
-\noindent where the subscript is tucked in close to the right parenthesis
-and is clearly connected to it and the expression it delimits.
-
-Some might want to distinguish notationally a point of evaluation
-for a partial derivative from variables held constant, perhaps using
-a vertical rule for the former and (the default) parentheses for the
-latter. It would suffice then to add to the preamble
-\begin{lyxcode}
-\textbackslash diffdef~\{~pvrule~\}~\{~op-symbol~=~\textbackslash partial~\}~
-\end{lyxcode}
-(or some other name of your choosing). This gives
-\begin{centred}
-\verb`\[ \diff.pvrule.{F(x,y)}x[x=1] \]`$\Longrightarrow$ \[ \diff.pvrule.{F(x,y)}x[x=1] \]
-\end{centred}
-
-\subsubsection{Text-style and script-style derivatives\protect\label{subsec:Text-and-script-style}}
-
-As noted earlier, the \texttt{diffcoeff} package assumes that derivatives
-of fraction-like form will be used in display-style expressions and
-that the slash form will be used for inline use (text style). This
-is the usual practice. But if one does want to use the fraction form
-in an inline expression, say \texttt{\textbackslash diffp ST{[}V{]}}
-displaying as $\diffp ST[V]$, then some tweaking of settings is necessary:
-the subscript is obviously too close to the right parenthesis and,
-to my eye, there is too much `elbowroom' between the derivative and
-the enclosing parentheses. Hence define
+\[ \diff.p.*{\frac PT}U[V] = \diff.p.*{\frac 1T}V[U]\]
+\end{centred}
+\noindent The effect is exactly the same as previously and it would
+have been possible to define \verb`\diffp` as this variant by following
+the definition of the variant with the statement,
+\begin{verbatim}
+ \NewDocumentCommand \diffp { } { \diff.p. }
+\end{verbatim}
+\verb`diffcoeff` has not followed this path, instead choosing to
+put the status and configurability of partial derivatives on the same
+footing as ordinary derivatives.
\noindent %
\noindent\begin{minipage}[t]{1\columnwidth}%
-\begin{lyxcode}
-\textbackslash diffdef~\{~ptxt~\}~
-
-~~\{
-
-~~~~op-symbol~~~~~~=~\textbackslash partial,
-
-~~~~denom-term-sep~=~1~mu~~~~,
-
-~~~~left-delim~~~~~=~\textbackslash left~(~,
-
-~~~~right-delim~~~~=~\textbackslash right~),
+\begin{shaded}%
+The command \verb`\difdef` in version 5 of \verb`diffcoeff` takes
+\emph{three} mandatory arguments for defining variant forms of derivative.
+Do not confuse with the command \verb`\diffdef` of earlier versions
+of \verb`diffcoeff` which took \emph{two }mandatory arguments for
+this purpose. The third argument is required to identify which one
+or more of the fraction forms \verb`f`, \verb`s`, \verb`c`, \verb`fp`,
+\verb`sp`, \verb`cp` of the commands \verb`\difx`, \verb`\difxp`,
+the variant applies to. In earlier versions this was not necessary
+since there was only the one primary derivative command \verb`\diff`.\end{shaded}%
+\end{minipage}
-~~~~elbowroom~~~~~~=~-2~mu~~~,
+\medskip{}
-~~~~subscr-nudge~~~=~-3~mu~~~
+The present document comes with a number of variant definitions. These
+are divided into two groups. One, in the preamble, contains definitions,
+like the example just given, designed to illustrate various effects
+in this document -- as in the Rogues' Gallery. These preamble definitions
+are listed in §\ref{sec:Preamble-definitions}. The other, in the
+associated file \verb`diffcoeff5.def`, contains definitions that
+may be of more general usefulness; these are listed in §\ref{sec:The-file-diffcoeff5.def}.
+
+\subsection{The \texttt{.def} file}
+
+\label{subsec:The-.def-file}A \verb`.def` file (in \verb`diffcoeff`)
+is a text file containing a list of definitions of variant derivatives
+after the fashion of the example above. The reason for placing such
+variant definitions in a file is that they can be easily transferred
+from document to document by means of the \verb`def-file` package
+option. If the name of your \verb`.def` file is \verb`myfile`, then
+invoking \verb`diffcoeff` with the call
+\begin{verbatim}
+ \usepackage[def-file=myfile]{diffcoeff}
+\end{verbatim}
+makes the definitions in \verb`myfile.def` available to your current
+document -- provided \verb`diffcoeff` can find the file.
+
+The question is: where to put the \verb`.def` file? The directory
+of the current document is an obvious candidate and for the current
+document serves well, but it does mean copying the \verb`.def` file
+from directory to directory to work on \emph{different} documents.
+To make a definition file available for \emph{all} documents, place
+it in the \verb`texmf` tree, preferably not the one created by your
+\TeX{} distribution, but your own \emph{personal} \verb`texmf` tree.
+Provided your \TeX{} distribution knows about your personal \verb`texmf`
+tree and the files it contains, then a \verb`.def` file placed within
+it will be accessible to all documents.
+\noindent \begin{center}
+\noindent\begin{minipage}[t]{1\columnwidth}%
+\begin{shaded}%
+
+\subsubsection*{Personal \texttt{texmf} tree?}
+
+This is a directory created by you for `waifs and strays' of the \TeX{}
+system that are not included in standard distributions like MiK\TeX{}
+or \TeX Live. For instance, it is the place for personal packages
+designed for your own particular circumstances or preferences, and
+is structured like the standard \texttt{texmf} hierarchy but placed
+in another location so that there is no chance of its being overwritten
+when your \TeX{} distribution is updated. But that distribution needs
+to be alerted to the existence of your personal \texttt{texmf} tree
+and any new files added to it. For MiK\TeX , open the MiK\TeX{} console,
+click on \textsf{Settings} (in the column on the left) and then the
+\textsf{Directories} tab. Click the \textsf{+} button and navigate
+to your personal texmf tree to add it to the MiK\TeX{} search path,
+using the arrow keys to place it as high in the search path as possible.
+Having added it, you will then need to refresh the filename database
+by clicking on the \textsf{Tasks} menu and selecting the obvious entry.
+I am not familiar with \TeX Live but presume an analogous process
+will apply there.\end{shaded}%
+\end{minipage}
+\par\end{center}
-~~\}
-\end{lyxcode}
-%
+\begin{center}
+\medskip{}
+\noindent\begin{minipage}[t]{1\columnwidth}%
+\begin{shaded}%
+
+\subsubsection*{\texttt{diffcoeff.def}}
+
+In earlier versions of \verb`diffcoeff`, if there was no explicit
+\verb`def-file=<filename>` package option statement, then a file
+\verb`diffcoeff.def` was searched for and if found loaded. This is
+no longer the case. Version 5 of file of \verb`diffcoeff` searches
+for a \verb`.def` \emph{only if it is explicitly named} in a package
+option statement. (This decision was made at least in part to avoid
+conflict with a \verb`diffcoeff.def` file from an earlier version
+of \verb`diffcoeff` tucked away in some non-obvious place and producing
+obscure errors in the current version 5.) \end{shaded}%
\end{minipage}
+\par\end{center}
-We can now write, for the same example, \texttt{\textbackslash diff.ptxt.ST{[}V{]}}
-which displays as $\diff.ptxt.ST[V]$, where the subscript is better
-positioned and there is a better fit between parentheses and derivative.
+\subsubsection{Log file message}
+
+If the\verb`.def` file named in the package option statement cannot
+be located by \TeX , a message to that effect is sent to the terminal
+and log file, but \verb`diffcoeff` continues loading.
+
+\subsection{Examples of variants}
+
+The dot-delimited name argument must always be the \emph{first} argument
+of the \verb`\difx` or \verb`\difxp` command, even preceding an
+asterisk (star) signalling `append the differentiand'. Now for some
+examples.
+
+\paragraph{Acceleration}
+
+In tensor calculus acceleration is sometimes written $\difs.n.{v^{i}}t$,
+where different operator symbols occur in numerator and denominator.
+In the preamble to this document I have included the definition
+\begin{verbatim}
+ \difdef { f, s } { n }
+ {
+ op-symbol = \nabla,
+ op-symbol-alt = \mathrm{d}
+ }
+\end{verbatim}
+to give both upright- (the \verb`f`) and slash-fraction (the \verb`s`)
+forms of the acceleration. Appending tne dot-delimited name \verb`n`
+to \verb`\difs`, \verb`$ \difs.n.{v^i}t $` $\Longrightarrow$ $ \difs.n.{v^i}t $,
+and appending the dot-delimited name \verb`n` to \verb`\diff`,
+\begin{centred}
+\verb`\[ \diff.n.{v^i}t. \]` $\Longrightarrow$ \[ \diff.n.{v^i}t. \]
+\end{centred}
+
+\paragraph{Detached subscripts}
+
+To show the effect of the key \verb`sub-nudge`, the preamble contains
+the definition
+\begin{verbatim}
+ \difdef { fp } { wsp }
+ { sub-nudge = 0 mu }
+\end{verbatim}
+The name \verb`wsp` is a contraction of `whitespace'. The defintion
+applies only to an upright-fraction form of partial derivative (the
+\verb`fp` in the optional argument). By giving \verb`sub-nudge`
+a zero value in the \verb`wsp` variant, the subscript is cast adrift
+(perhaps to float away?) on a sea of whitespace. The default setting,
+\verb`sub-nudge=-5 mu`, maintains visual connection between subscript
+and right parenthesis:
+
+\verb`\[ \diffp.wsp.Fx[0],\quad \diffp Fx[0] \]` $\Longrightarrow$
+\[ \diffp.wsp.Fx[0],\quad \diffp Fx[0] \]
+
+\paragraph{Lagrange's equations}
+
+An earlier example used Lagrange's equations of motion, which showed
+a problem with the amount of whitespace introduced before a differentiand
+bounded by a \verb`\left`, \verb`\right` pair. The file \verb`diffcoeff5.def`
+contains the definition
+\begin{verbatim}
+ \difdef { f, fp } { *0 }
+ {
+ *derivand-sep = 0 mu ,
+ outer-Ldelim = \mleft ( ,
+ outer-Rdelim = \mright )
+ }
+\end{verbatim}
+The first thing to notice is that the name of the variant, \verb`*0`,
+is not formed from letters (there are other examples below). Now Lagrange's
+equations are rendered (just right to my eye!)
+\begin{centred}
+\verb`\[ \diffp L{q_{k}}-\diff.*0.**t{\diffp L{\dot{q}_{k}}[]}=0 \]`
+\[
+\diffp L{q_{k}}-\diff.*0.**t{\diffp L{\dot{q}_{k}}[]}=0.
+\]
+\end{centred}
-\subsubsection{Derivatives from D, \textbackslash delta, \textbackslash Delta\protect\label{subsec:D-delta-Delta}}
+\subsubsection{Editing variant forms}
+
+\noindent %
+\noindent\begin{minipage}[t]{1\columnwidth}%
+\begin{shaded}%
+
+\paragraph*{Bug in \texttt{xtemplate}}
+
+If you wish to successfully \emph{edit} a variant form that has (already)
+been defined -- by you or in \verb`diffcoeff` or in the \verb`.def`
+file\emph{ }-- then you will need a version of \verb`xtemplate`
+from 2022-12-17 or later. Earlier versions contained a bug that didn't
+otherwise affect the workings of \verb`diffcoeff` but did prevent
+changes being made to already defined variants.\end{shaded}%
+\end{minipage}\medskip{}
+
+You may wish to edit an already defined variant form -- perhaps to
+give a \emph{negative} value to \verb`*derivand-sep` in the last
+example. You don't need to repeat the full definition. It suffices
+to change the setting only of the relevant key or keys:
+\begin{verbatim}
+ \difdef { f, fp } { *0 }
+ { *derivand-sep = -3 mu }
+\end{verbatim}
+which gives for Lagrange's equations (too tight to my eye!)
+\[
+\difdef{f,fp}{*0}{*derivand-sep=-3mu}\diffp L{q_{k}}-\diff.*0.**t{\diffp L{\dot{q}_{k}}[]}=0.
+\]
-In addition to \texttt{\textbackslash diff.p.},\texttt{ diffcoeff}
-has three other \emph{built-in} variant forms that are commonly used:
-\texttt{\textbackslash diff.D.}, \texttt{\textbackslash diff.delta.},
-and \texttt{\textbackslash diff.Delta.}, corresponding to derivatives
-formed from $D$, $\delta$ and $\Delta$ respectively.
-In fluid dynamics the \emph{material }or \emph{substantive} derivative
-uses an uppercase $D$ in place of $d$. For example, the continuity
-equation is,
+\subsubsection{Parenthesizing multi-token variables}
+
+To illustrate the different modes of parenthesizing `long' variables
+in higher order derivatives, I have put these two definitions in \verb`diffcoeff5.def`:
+\begin{verbatim}
+ \difdef { f, fp } { (dv) }
+ { long-var-wrap = (dv) }
+
+ \difdef { f, fp }{ dv }
+ { long-var-wrap = dv }
+\end{verbatim}
+The three possibilities for wrapping multitoken variables can now
+be illustrated:
+\begin{verbatim}
+ \[ \diffp[2]f{x^{i}},\quad
+ \diffp.dv.[2]f{x^{i}},\quad
+ \diffp.(dv).[2]f{x^{i}} \]
+\end{verbatim}
+$\Longrightarrow$ \[ \diffp[2]f{x^i},\quad\diffp.dv.[2]f{x^i},\quad\diffp.(dv).[2]f{x^i} \]
+
+To my eye parenthesizing seems unnecessary in this case, but in the
+following desirable (as in the first, default, setting):
+\begin{verbatim}
+ \[ \diffp[2]F{1/T},\quad
+ \diffp.dv.[2]F{1/T},\quad
+ \diffp.(dv).[2]F{1/T} \]
+\end{verbatim}
+$\Longrightarrow$ \[ \diffp[2]F{1/T},\quad\diffp.dv.[2]F{1/T},\quad\diffp.(dv).[2]F{1/T} \]
+
+\subsubsection{Point of evaluation}
+
+\label{subsec:variantPoint-of-evaluation}Although ISO recommends
+subscripting parentheses to indicate a point of evaluation, some (like
+the author) prefer to subscript a vertical rule and save subscripted
+parentheses for the case of variables held constant in partial derivatives.
+The file \verb`diffcoeff5.def` contains the definition
+\begin{verbatim}
+ \difdef { f, fp, s, sp } { | }
+ {
+ outer-Ldelim = \left . ,
+ outer-Rdelim = \right |,
+ sub-nudge = 0 mu
+ }
+\end{verbatim}
+where the `pipe' character is used for the name of the variant.
+\begin{centred}
+\verb`\[ \diffp.|.{F(x,y)}x[x=1] \]` $\Longrightarrow$ \[ \diffp.|.{F(x,y)}x[x=1] \]
+\end{centred}
+For slash fractions, I think parentheses give a better result than
+a vertical rule:
+\begin{centred}
+\verb`$ \difs yx[0],\quad \difs.|.yx[0] $` $\Longrightarrow$ $\difs yx[0],\quad \difs.|.yx[0]$
+\end{centred}
+They tie the whole expression together. However, it is easy to create
+expressions that suffer from `parenthesis overload':
+\begin{centred}
+\verb`$ \difs{F(x)}{(2x)}[x=0],\quad\difs.|.{F(x)}{(2x)}[x=0] $`
+$\Longrightarrow$ $\difs{F(x)}{(2x)}[x=0],\quad\difs.|.{F(x)}{(2x)}[x=0]$
+\end{centred}
+The vertical rule is better in this case, but best of all in this
+case (to my eye) is the use of \emph{square} brackets. The file \verb`diffcoeff5.def`
+contains the definition
+\begin{verbatim}
+ \difdef { f, fp, s, sp } { ] }
+ {
+ outer-Ldelim = \left [ ,
+ outer-Rdelim = \right ],
+ elbowroom = 1 mu,
+ sub-nudge = 0 mu
+ }
+\end{verbatim}
+giving the result
+\begin{centred}
+\verb`$ \difs.].{F(x)}{(2x)}[x=0] $` $\Longrightarrow$ $ \difs.].{F(x)}{(2x)}[x=0] $,
+\end{centred}
+which both avoids `parenthesis overload' and is `tied together'
+by the square brackets (and at least gives a nod in the direction
+of the ISO standard).
+
+\subsubsection{Upright text-style derivatives}
+
+\verb`diffcoeff` assumes that derivatives of upright-fraction form
+will be used mainly in display-style expressions and that the slash
+form will be used mainly for inline use. But if one does want to use
+the fraction form in an inline expression, then \verb`$ \diffp ST $`
+displaying as $ \diffp ST $ is fine, but adding a trailing optional
+argument, \verb`$ \diffp ST[V] $`, to indicate (in the present example)
+a variable held constant is not: $\diffp ST[V]$. Clearly the subscript
+is too close to the right parenthesis and (to my eye) there is too
+much `elbowroom' between the derivative and the enclosing parentheses.
+Hence the file \verb`diffcoeff5.def` contains the following definition
+for text-style upright fraction derivatives:
+\begin{verbatim}
+ \difdef { f, fp } { t }
+ {
+ style = tfrac ,
+ derivand-sep = 1 mu plus 1 mu minus 1 mu,
+ multi-term-sep = 0 mu ,
+ term-sep-adjust = 0 mu ,
+ wrap-sup-nudge = 0 mu ,
+ outer-Ldelim = \bigl (,
+ outer-Rdelim = \bigr ),
+ elbowroom = -2 mu ,
+ sub-nudge = -3 mu
+ }
+\end{verbatim}
+With this definition, the variant form \verb`$ \diffp.t.ST[V] $`
+displays as $\diffp.t.ST[V]$. The subscript now is better positioned
+and there is a better fit between parentheses and derivative. Note
+that the \verb`style=tfrac` entry in the definition means \verb`\diffp.t.`
+will not scale in a display-style environment and may give a ridiculous
+result if used inappropriately:
+\begin{centred}
+\verb`\[ \frac AB\diffp.t.yx \]` $\Longrightarrow$ \[ \frac AB\diffp.t.yx \]
+\end{centred}
+For a non-scaling display-style derivative using \verb`\dfrac`, given
+the defaults in templates \verb`DIFF` and \verb`DIFFP`, the definition
+would be much simpler,
+\begin{verbatim}
+ \difdef { f, fp } { d } { style = dfrac }
+\end{verbatim}
+but there seems little point in so doing.
+
+\subsubsection{Slash-fraction styles}
+
+The default slash-fraction form \verb`$ \difs yx $` displaying as
+$ \difs yx $ does not scale. It is intended for inline use, but sometimes
+you may want a slash fraction of a different size -- perhaps a fraction
+is present in the differentiand or in the variable of differentiation.
+The file \verb`diffcoeff5.def` contains a definition of a scaling
+slash fraction (name \verb`0`) and a slightly larger-than-default
+slash fraction (name \verb`1`):
+\begin{verbatim}
+ \difdef { s, sp } { 0 }
+ {
+ style = auto ,
+ outer-Ldelim = \left [ ,
+ outer-Rdelim = \right ] ,
+ sub-nudge = 0 mu ,
+ *inner-Ldelim = \mleft ( ,
+ *inner-Rdelim = \mright ),
+ *outer-Ldelim = \left [ ,
+ *outer-Rdelim = \right ]
+ }
+ \difdef { s, sp } { 1 }
+ {
+ style = big ,
+ outer-Ldelim = \bigl (,
+ outer-Rdelim = \bigr ),
+ sub-nudge = -2.5 mu,
+ *inner-Ldelim = \bigl (,
+ *inner-Rdelim = \bigr ),
+ *outer-Ldelim = \bigl [,
+ *outer-Rdelim = \bigr ]
+ }
+\end{verbatim}
+The names arise from the sequence \verb`\big/`, \verb`\Big/`, \verb`\bigg/`,
+\verb`\Bigg/`, hence \verb`1`, \verb`2`, \verb`3`, \verb`4`,
+which leaves \verb`0` for the scaling form (which is built around
+\verb`\left.`, \verb`\middle/`, \verb`\right.`). \verb`diffcoeff5.def`
+does not contain definitions for the \verb`2`, \verb`3`, \verb`4`
+variants, only the two shown, because the larger sizes give ridiculous
+results. For the scaling variant, it is also easy to produce eyesores:
+\begin{centred}
+\verb`\[ \difsp.0.{\frac1Y}{\frac1X} \]` $\Longrightarrow$ \[ \difsp.0.{\frac1Y}{\frac1X} \]
+\end{centred}
+But for small size increases, the results can be pleasing. To the
+author's eye, both \verb`0` and \verb`1` variants give better results
+than the default:
+\begin{centred}
+\verb`$ \difsp.1.{F(x,y)}{\tfrac1x}[0] $` $\Longrightarrow$ $ \difsp.1.{F(x,y)}{\tfrac1x}[0] $
+
+\verb`$ \difsp.0.{F(x,y)}{\tfrac1x}[0] $` $\Longrightarrow$ $\difsp.0.{F(x,y)}{\tfrac1x}[0]\vphantom{\bigg|} $
+
+\verb`$ \difsp{F(x,y)}{\tfrac1x}[0] $` $\Longrightarrow$ $ \difsp{F(x,y)}{\tfrac1x}[0] $
+\end{centred}
+Subscripted \emph{square} brackets are chosen for the scaling variant
+so that the setting \verb`sub-nudge=0 mu` is appropriate at all scales.
+They provide good visual contrast with the parentheses of $F(x,y)$.
+
+\subsubsection{Compact--form derivatives}
+
+Two styles are available for compact-form derivatives, derivative
+style \verb`style=_`, and differential style \verb`style=dl`. The
+first is the default style; the orders of differentiation are applied
+to the operator symbol, in this example \verb`\partial`:
+\begin{centred}
+\verb`$ \difcp[3,2]{f}{x,y,z} $` $\Longrightarrow$ $ \difcp[3,2]{f}{x,y,z} $
+\end{centred}
+But suppose we define a variant form (as is done in \verb`diffcoeff5.def`):
+\begin{verbatim}
+ \difdef { cp } { dl } { style = dl }
+\end{verbatim}
+and use it to form a similar expression but without the differentiand,
+an empty argument in its place:
+\begin{centred}
+\verb`$ \difcp.dl.[3,2]{}{x,y,z} $` $\Longrightarrow$ $ \difcp.dl.[3,2]{}{x,y,z} $
+\end{centred}
+In this \verb`dl` style, the orders of differentiation are applied
+to the \emph{variables}. This allows discussion of, for example, the
+denominator of a mixed partial derivative -- perhaps a remark about
+minutiae of spacing.
+
+\subsubsection{D, \textbackslash delta, \textbackslash Delta derivatives}
+
+\label{subsec:D-delta-Delta}In introductory calculus texts a derivative-like
+symbol is created with the lowercase Greek delta, $\delta$ . An uppercase
+Greek delta, $\Delta$, is often used in a derivative-like symbol
+for an average. In fluid dynamics the \emph{material} (also \emph{substantive}
+or \emph{total}\,) derivative uses an uppercase $\mathrm{D}$ in
+place of $\mathrm{d}$. Texts on differential equations often use
+a $\mathrm{D}$ operator. The file \verb`diffcoeff5.def` contains
+the definitions
+\begin{verbatim}
+ \difdef { f, s } { gd }
+ { op-symbol = \delta }
+ \difdef { f, s } { gD }
+ { op-symbol = \Delta }
+ \difdef { f, s } { D }
+ { op-symbol = \mathrm{D} }
+ \difdef { c } { bD }
+ {
+ op-symbol = \mathbf{D},
+ op-sub-nudge = -2mu
+ }
+\end{verbatim}
+(where the `g' in the first two suggests `greek'), meaning one
+can write expressions like \verb`$ \difs.gd.yx $` $\Longrightarrow$
+$ \difs.gd.yx $, or \verb`$ \difs.gD.yx $` $\Longrightarrow$ $ \difs.gD.st$
+(for the average speed), or
\begin{centred}
\verb`\[ \diff.D.{\rho}t=\diffp\rho t + \mathbf{u\cdot}\nabla\rho \]`$\Longrightarrow$
\[ \diff.D.{\rho}t=\diffp\rho t + \mathbf{u\cdot}\nabla\rho \]
\end{centred}
-\noindent where \texttt{\textbackslash diff.D.} produces the D-derivative.
-If you want upright `D's, then the \texttt{ISO} package option will
-produce that effect. Alternatively,
-\begin{lyxcode}
-\textbackslash diffdef~\{~Up~\}~
-
-~~\{
-
-~~~~op-symbol~~~~=~\textbackslash mathrm\{D\},
-
-~~~~op-order-sep~=~0~mu
-
-~~\}
-\end{lyxcode}
-\noindent provides a variant with upright `D's.
-
-In introductory calculus texts the simple $\delta$-derivative is
-used. This is achieved with the \texttt{\textbackslash diff.delta.}
-command: \verb`\[ \diff.delta.yx \]` $\Longrightarrow$ \[ \diff.delta.yx. \]
-
-\noindent This form also features in analytical mechanics (in the
-Rogues' Gallery, the final example at (\ref{eq:eg6})).
-
-Similarly, \texttt{\textbackslash diff.Delta.} forms a derivative
-from $\Delta$:
-\begin{centred}
-\verb`$ \diff.Delta.y/x $` $\Longrightarrow$ $ \diff.Delta.y/x $
-\end{centred}
-\noindent where the slash form of the derivative is shown in this
-instance.
-
-Higher order forms of these derivatives, points of evaluation, appending
-the differentiand with a star argument, all follow exactly as for
-the `pure' \texttt{\textbackslash diff} command.
-
-\paragraph{The commands \textbackslash Diff, \textbackslash diffd, \textbackslash Diffd}
-
-For compatibility with version 1 of \texttt{diffcoeff}, the commands
-\texttt{\textbackslash Diff}, \texttt{\textbackslash diffd} and
-\texttt{\textbackslash Diffd} are available and also produce the
-$D$, $\delta$ and $\Delta$ derivatives. Just as \texttt{\textbackslash diffp}
-is identified with \texttt{\textbackslash diff.p.} for partial derivatives,
-these commands are identified with \texttt{\textbackslash diff.D.},
-\texttt{\textbackslash diff.delta.}, and \texttt{\textbackslash diff.Delta}
-through the commands
-\begin{lyxcode}
-\textbackslash NewDocumentCommand~\textbackslash Diff~\{\}~~\{\textbackslash diff.D.\}
-
-\textbackslash NewDocumentCommand~\textbackslash diffd~\{\}~\{\textbackslash diff.delta.\}
-
-\textbackslash NewDocumentCommand~\textbackslash Diffd~\{\}~\{\textbackslash diff.Delta.\}
-\end{lyxcode}
-Unless one is using such variant forms frequently, it seems simpler
-to remember that they are available as dot-delimited arguments to
-the \texttt{\textbackslash diff} command, using the obvious name
-in each case, rather than having to remember the precise camel-case
-form of name of the \texttt{\textbackslash Diff}, \texttt{\textbackslash diffd}
-and \texttt{\textbackslash Diffd} commands.
-
-\subsection{The \texttt{.def} file\protect\label{subsec:The-.def-file}}
-
-This mechanism of variant formation is how I have been able to illustrate
-in the Rogues' Gallery, §\ref{sec:Rogues'-gallery}, the wide variety
-of different usages culled from the literature. But the thought arises:
-if a variant is to be used only once or twice, isn't this a lot of
-bother? Why not just construct the variant derivative `by hand' out
-of \texttt{\textbackslash frac} and \texttt{\textbackslash mskip}
-for example? The reason for making such definitions is that they can
-be transferred from document to document. For instance, definitions
-placed in the preamble can be copied to the preamble of another document.
-
-But that is hardly optimal. Instead, \texttt{diffcoeff} allows such
-definitions to be placed in a text file with the the extension \texttt{.def}
-and a name of your choosing. For the present document the file is
-called \texttt{diffcoeff-doc.def} and has been placed in the same
-directory as \texttt{diffcoeff.tex}. To use these definitions, the
-\texttt{diffcoeff} package is called with the command
-\begin{lyxcode}
-\textbackslash usepackage{[}def-file=diffcoeff-doc{]}\{diffcoeff\}
-\end{lyxcode}
-But even this process still means copying a definition file from directory
-to directory as one works on different documents. The solution is
-to make a definition file available for \emph{all} documents and the
-way to do that is by placing it in the texmf tree, preferably not
-the one created by your \TeX{} distribution (perhaps MiKTeX or TexLive),
-but your own \emph{personal} texmf tree.
-
-\texttt{\vspace{2ex}
- }
-
-\noindent %
-\noindent\fbox{\begin{minipage}[t]{1\linewidth - 2\fboxsep - 2\fboxrule}%
-\textbf{Personal texmf tree? }
-
-This is a directory for `waifs and strays' of the \TeX{} system that
-are not included in standard distributions like MiK\TeX{} or \TeX Live.
-For instance, it is the place for personal packages designed for your
-own particular circumstances or preferences, and is structured like
-the standard MiK\TeX{} or \TeX Live hierarchy but placed in another
-location so that there is no chance of its being overwritten when
-MiK\TeX{} or \TeX Live are updated. However, those distributions need
-to be alerted to its existence. For MiK\TeX , open the MiK\TeX{} console,
-click on \textsf{Settings} and then the \textsf{Directories} tab.
-Click the \textsf{+} button and navigate to your personal texmf tree
-to add it to the MiK\TeX{} search path. Having added it, you will then
-need to refresh the filename database by clicking on the \textsf{Tasks}
-menu and selecting the obvious entry. I am not familiar with \TeX Live
-but presume an analogous process will apply there.%
-\end{minipage}}
-
-\medskip{}
-
-\noindent Provided your \LaTeX{} distribution knows about your personal
-texmf tree, then a \texttt{.def} file placed within it, will be accessible
-to all documents.
-
-\subsubsection{Structure of the \texttt{.def} file}
-
-The best way to see what a \texttt{.def} file looks like is to view
-\texttt{diffcoeff-doc.def }in a text editor.\footnote{This file should be in the same directory as \texttt{diffcoeff.pdf}
-and \texttt{diffcoeff.tex} in your \LaTeX{} distribution.}
-
-If you want your variant definitions to use defaults different from
-those supplied with the \texttt{diffcoeff} package, then the first
-definition in the \texttt{.def} file should be the one setting the
-new defaults, with an \emph{empty} first argument to the \texttt{\textbackslash diffdef}
-command:
-\begin{lyxcode}
-\textbackslash diffdef~\{\}~~~~
-
-~~\{~~~~~~
-
-~~~~key-1~=~value-1,~~~~
-
-~~~~key-2~=~value-2,
-
-~~~~...
-
-~~~~key-n~=~value-n
-
-~~\}
-\end{lyxcode}
-The key-value list is a comma-separated list; hence the last entry
-doesn't need to end with a comma. Nudge and separation values need
-to include the unit, \texttt{mu}; a numerical value alone will result
-in error.\texttt{ }Because a \texttt{.def} file\texttt{ }is a \LaTeX{}
-file, comments need to start with a \texttt{\%} character.
-
-\subsubsection{\texttt{diffcoeff.def}}
-
-Note that if the \texttt{diffcoeff} package is invoked without an
-explicit \texttt{def-file= <filename>} option statement, as here,
-\begin{lyxcode}
-\textbackslash usepackage\{diffcoeff\}
-\end{lyxcode}
-then it will search in the texmf tree (the \LaTeX{} distribution's
-and your personal one) and the document directory for a file \texttt{diffcoeff.def}
-and if found will load that. This file should contain definitions
-of those variants you are likely to use in multiple documents. In
-my personal texmf tree (which I've put at \texttt{E:\textbackslash texmf\textbackslash}
-on a Windows machine) the file \texttt{diffcoeff.def} is located in
-the directory \texttt{E:\textbackslash texmf\textbackslash tex\textbackslash latex\textbackslash diffcoeff\textbackslash}.
-(The backslashes are replaced by forward slashes on linux machines.)
-
-Variants likely to be of value only to a specific document should
-be added to the preamble of that document. Alternatively, they could
-be added to \texttt{diffcoeff.def} but that added-to file saved to
-the document directory under a \emph{different} name -- e.g. I've
-saved the variants required for the present document under the name
-\texttt{diffcoeff-doc.def}. Many of these variants were created solely
-to illustrate points in the present document and I have no intention
-of using them in my own work. Consequently my \texttt{diffcoeff.def}
-file is smaller, containing only a selection from \texttt{diffcoeff-doc.def}.
-
-\section{Differentials in integrals, etc.}
-
-Forms like $dx$ occur not only in derivatives but also in other contexts,\footnote{I thank \noun{Sergio Callegari} for drawing my attention to this rather
-obvious point, and its omission from previous versions of \texttt{diffcoeff}.} for example, the expression for a total differential like
+\noindent for the total derivative of $\rho$ (perhaps in fluid dynamics),
+or
+\begin{centred}
+\noindent \verb`$ \difc.bD.[2]y{x\,}+2\difc.bD.y{x\,}-4=0 $` $\Longrightarrow$
+$ \difc.bD.[2]y{x\,}+2\difc.bD.y{x\,}-4=0 $
+\end{centred}
+for an example in the study of differential equations.
+
+\subsection{Other notations}
+
+\label{subsec:Other-notations}\verb`diffcoeff` and this document
+are about defining \emph{derivatives} but it is worth pointing out
+that other notations can be built from the \verb`diffcoeff` constituents,
+in particular from the slash fraction forms. For example, some other
+token than \verb`/`, or indeed series of tokens, can be used to link
+numerator and denominator. It could be \verb`\vert` or \verb`\Vert`,
+displaying as $\vert$ and $\Vert$ respectively, or \verb`\otimes`
+(requiring for example \verb`\usepackage{stmaryrd}` in the preamble),
+displaying as $\otimes$, or the sequence of tokens \verb`\otimes\ldots\otimes`
+displaying as $\otimes\ldots\otimes$. The critical key is \verb`slash-tok`,
+with possible extra spacing on either side through the key \verb`slash-sep`.
+Or, one may want to void the \verb`op-symbol` key by giving it an
+empty value or do something like \verb`op-symbol=\mathbf`, or give
+\verb`outer-Ldelim`, \verb`outer-Rdelim` special values, e.g.,\verb`\langle`,
+\verb`\rvert`.
+
+In the preamble I have included the following definition, in order
+to mimic the \verb`\Braket` command of the \verb`braket` package,
+\begin{verbatim}
+ \difdef{ s }{ bk }
+ {
+ slash-tok = ,
+ op-symbol = ,
+ multi-term-sep = 3mu\middle|\mskip3mu ,
+ outer-Ldelim = \left\langle ,
+ outer-Rdelim = \right\rangle
+ }
+\end{verbatim}
+and supplemented it with the definition:
+\begin{verbatim}
+ \NewDocumentCommand \Braket { m }
+ {
+ \difoverride {\negmu}
+ \difs.bk.{}{#1}[]
+ }
+\end{verbatim}
+Testing the new command, \verb`\Braket`, gives this display:
+\begin{centred}
+\verb`\[ \Braket{\phi,\diffp[2]{}t,\psi} \]` $\Longrightarrow$ \[\Braket{\phi,\diffp[2]{}t,\psi} \]
+\end{centred}
+Comparison with the \verb`\Braket` command of the \verb`braket`
+package, which uses \verb`|` as the separator in the argument rather
+than commas, shows the displayed results to be the same (as far as
+I can judge).
+
+\section{Defaults: setting your own}
+
+\label{sec:ChangingDefaults}The use of variant forms of derivative
+assumes the user is reasonably satisfied with the default values of
+the various templates. The user may not be. You may want different
+defaults. That is again accomplished by means of the \verb`\difdef`
+command. The procedure is identical with that for defining a variant
+except that \emph{no} \verb`variant-name` is supplied; an empty argument
+is used instead.
+
+For example, suppose you wish to indicate a point of evaluation for
+ordinary upright-fraction derivatives by means of a subscripted vertical
+rule rather than parentheses. In §\ref{subsec:variantPoint-of-evaluation}
+we have seen how to create a variant form with this property but now
+we want to make it the default in the template \verb`DIFF`. That
+is easy -- simply omit any content from the second argument:
+\begin{verbatim}
+ \difdef { f } {}
+ {
+ outer-Ldelim = \left . ,
+ outer-Rdelim = \right |,
+ sub-nudge = 0 mu
+ }
+\end{verbatim}
+\noindent If this is placed in the preamble of your document or in
+your \verb`.def` file (see §\ref{subsec:The-.def-file}) then the
+command \verb`\diff yx[0]` will produce
+\[
+\diff.|.yx[0]
+\]
+by default. By leaving the second argument empty the \verb`\difdef`
+command has changed the default value of those templates indicated
+by the list of identifiers in the first argument -- in the present
+case only the template \verb`DIFF`. In particular, note that the
+new default is \emph{not} inherited by \verb`DIFFP`. Inheritance
+occurs \emph{only} at load time. How to change defaults that will
+be inherited is discussed below in §\ref{subsec:Changing-DIF-defaults}.
+
+If you wish to change other defaults of other templates follow the
+same procedure. In the first argument of the \verb`\difdef` command
+insert a comma-list of the derivative identifiers (\verb`f`, \verb`s`,
+\verb`c`, \verb`fp`, \verb`sp`, \verb`cp`, \verb`j` or \verb`l`)
+that you want the new defaults to apply to, \emph{leave the second
+argument empty}, and in the third argument provide the \emph{key=value}
+list of new defaults.
+
+For instance, you might prefer math-italic `d's rather than the
+upright ISO recommendation, and you want this to apply across \emph{all}
+ordinary-derivative templates. The most straightforward way of achieving
+that would be through the definition
+\begin{verbatim}
+ \difdef { f, s, c, l } {}
+ {
+ op-symbol = d ,
+ op-order-nudge = 1 mu
+ }
+\end{verbatim}
+which includes the list of identifiers \verb`f, s, c, l` in the first
+argument (the \verb`l` referring to the template \verb`DIFL` of
+the differential -- see §\ref{sec:Differentials}) and leaves the
+second argument empty. Thereafter, all ordinary derivatives will be
+graced with math-italic rather than upright `d's.
+
+\subsection{Changing defaults in \texttt{DIF}}
+
+\label{subsec:Changing-DIF-defaults}You might wonder if this last
+effect could not have been obtained more simply by changing the default
+in the `primogenitor' template \verb`DIF` -- perhaps leave both\emph{
+first }and second\emph{ }arguments empty in the \verb`\difdef` command.
+That, however, has no effect. The \verb`\difdef` command does nothing
+if the first argument is empty. Inheritance occurs only once, at time
+of birth -- \emph{load time} -- and not thereafter. If you want
+to make a change affecting a number of templates by changing a default
+in \verb`DIF`, then it has to be done at the time when \verb`diffcoeff`
+is loaded.
+
+There are two ways to do this. The first is to create a text file
+with the specific name \verb`diffcoeff.DIF` with the desired settings.
+For example, if we want math-italic `d's and a subscripted vertical
+rule for points of evaluation, then the file might look like
+\begin{verbatim}
+ op-symbol = d,
+ op-order-nudge = 1 mu,
+ outer-Ldelim = \left . ,
+ outer-Rdelim = \right |,
+ sub-nudge = 0 mu
+\end{verbatim}
+By locating the file in a place where your \TeX{} distribution can
+find it -- either in the directory of the current document or in
+your personal \verb`texmf` tree (see the earlier discussion at §\ref{subsec:The-.def-file},
+and in particular the need to alert your \TeX{} distro to the presence
+of the file) -- \verb`diffcoeff.DIF` will be read at load time and
+the new defaults not only incorporated into template \verb`DIF` but
+inherited by all child and grandchild templates unless explicitly
+countermanded (for example by \verb`op-symbol = \partial` and similar
+statements in the definitions of those templates).
+
+The second method is to use the package option \verb`DIF`. For instance
+loading \verb`diffcoeff` with the call
+\begin{verbatim}
+ \usepackage
+ [
+ DIF = { op-symbol = d,
+ op-order-nudge = 1 mu,
+ outer-Ldelim = \left . ,
+ outer-Rdelim = \right |,
+ sub-nudge = 0 mu }
+ ]{diffcoeff}
+\end{verbatim}
+will overwrite the built-in defaults with these new values, which
+will be inherited by child (and grandchild) templates unless explicitly
+countermanded. Notice that since \verb`DIF` is a comma list it requires
+braces around the list of \emph{key=value} statements\emph{.}
+
+If both methods of changing the template \verb`DIF` are employed,
+the order of use is, first, read and act on the file \verb`diffcoeff.DIF`,
+then read and act on the package option \verb`DIF`. (In other words,
+to avoid complicating the preamble, preferably use the file \verb`diffcoeff.DIF`;
+use the package option \verb`DIF` only for fine-tuning -- perhaps
+a setting specific to that particular document.)
+
+\chapter{Differentials and jacobians}
+
+\label{chap:Differentials-and-jacobians}In addition to the six derivative
+commands, \verb`\difx` and \verb`\difxp`, the \verb`diffcoeff`
+package has two further commands, \verb`\dl` and \verb`\jacob`,
+for writing differentials and jabobian determinants respectively.
+These commands use the settings of the templates \verb`DIFL` and
+\verb`DIFJ`, and both are correspondingly configurable by means of
+the \verb`\difdef` command.
+
+\section{Differentials}
+
+\label{sec:Differentials}Forms like $\dl x$ occur not only as components
+of derivatives but also in other contexts like the expression for
+a total differential,
\[
\dl P=\diffp Px\dl x+\diffp Py\dl y+\diffp Pz\dl z,
\]
-or an integral like $\int\sin x\dl2x$, or a multi-variable integral
+or in integrals, like $\int\sin x\dl x$, or multi-variable integrals
like
\[
-\iiintop_{-\infty}^{\infty}V(x,y,z)\dl3x\dl2y\dl2z.
+\iiintop_{-\infty}^{\infty}V(x,y,z)\dl{x,y,z}.
\]
-Surely we want the `d's in these expressions to correspond to their
-form (upright or math italic) in derivatives? If, for instance, the
-\texttt{ISO} package option has been set, one doesn't want to be writing
-\texttt{\textbackslash mathrm\{d\}} in every (or indeed any) integral.
-To this end, \texttt{diffcoeff} provides a command \texttt{\textbackslash dl}
-to write the `d' in a differential in a manner consistent with the
-default form used in derivatives. In the present document, the default
-form is math-italic and so
+They also occur in differential geometry and elsewhere in the form
+of line elements like
\begin{centred}
-\verb`$ \dl x $` $\Longrightarrow$ $ \dl x. $
+$\dl.+.{x,y,z}^2$ \quad{}and\quad{} $c^2\dl.-.{t,x,y,z}^2$.
\end{centred}
-\noindent It is also possible\footnote{\noindent From version 3.1 of \texttt{diffcoeff}; version 3.0 of the
-package produced a \LaTeX{} error.} to use the command before, for instance, \texttt{\textbackslash mathbf\{x\}}
-or \texttt{\textbackslash vec\{x\}}:
-\begin{centred}
-\verb`$ \dl \vec{x} $` $\Longrightarrow$ $ \dl \vec{x} $,~~~~\verb`$ \dl \mathbf{x} $`
-$\Longrightarrow$$ \dl \mathbf{x}. $
-\end{centred}
-
-\subsection{Options}
-
-There are two options available with the differential command.
-
-The first is the dotted name option discussed in §\ref{sec:Changing-defaults}.
-Thus, to illustrate a differential with an upright `d', write
+Surely we want the `d's in these expressions to correspond to their
+form (upright or math italic) in derivatives? To this end, \verb`diffcoeff`
+provides a command \verb`\dl` to write the `d' in a differential
+in a manner consistent with the default form used in derivatives.
+In the present document, the default form is upright and so
\begin{centred}
-\verb`$ \dl.up.x $` $\Longrightarrow$ $ \dl.up.x. $
+\verb`$ \dl x $` $\Longrightarrow$ $ \dl x. $
\end{centred}
-\noindent This presumes that a variant derivative with upright `d's
-has been defined and the definition is available, either in the preamble
-or in an accessible \texttt{.def} file, as discussed in the previous
-section. Alternatively, if you have defined your default derivative
-to use upright `d's (perhaps with the \texttt{ISO} option) then
-\texttt{\textbackslash dl} alone will suffice to produce an upright
-`d'.
-
-\subsubsection{Partial differential}
-
-\label{subsec:Partial-differential}Since the variant \texttt{\textbackslash diff.p.}
-is defined in \texttt{diffcoeff.sty} itself, \texttt{\textbackslash dl.p.}
-is always available and at 6 keystrokes offers a slightly shorter
-way of writing \texttt{\textbackslash partial} (8 keystrokes). However,
-there are sufficient contexts where expressions like \verb`\partial_x`
-are used, perhaps as a shortcut for a partial derivative, for it to
-be worthwhile to define an appropriate command for this variant. From
-version 4.0, \texttt{diffcoeff} therefore provides \verb`\dlp`, defined
-by
-\begin{lyxcode}
-\textbackslash NewDocumentCommand~\textbackslash dlp~\{\}~\{~\textbackslash dl.p.~\}
-\end{lyxcode}
-Thus, for instance, \verb`$ \dlp_x $` $\Longrightarrow$ $ \dlp_x $.
-
-\subsubsection{Spacing}
-
-This second option inserts spacing before the `d'. If \texttt{\textbackslash dl}
-is followed by a digit (0, 1, 2, ..., 9) it will insert a horizontal
-space of that number of mu before the `d'; (\texttt{\textbackslash dl0x}
-has the same effect as \texttt{\textbackslash dl x}.)\texttt{ }Thus,
-an alternative way of writing an example in Chapter~18 of \emph{The
-\TeX book} is
+\noindent To use the command before a multi-token variable of differentiation,
+put the variable in braces:
\begin{centred}
-\verb`$ \dl x\dl3y=r\dl3r\dl3\theta $` $\Longrightarrow$ $ \dl x\dl3y=r\dl3r\dl3\theta. $
+\verb`$ \dl{\vec{x}},\quad \dl{\mathbf{x}} $` $\Longrightarrow$
+$ \dl{\vec{x}},\quad \dl{\mathbf{x}} $.
\end{centred}
-\noindent To my eye this is too much space; I prefer
+For the triple integral above, writing the differentials required
+not three but just the \emph{one} command:
\begin{centred}
-\noindent \verb`$ \dl x\dl2y=r\dl2r\dl2\theta $` $\Longrightarrow$
-$ \dl x\dl2y=r\dl2r\dl2\theta. $
+\verb`$ \dl{x,y,z} $` $\Longrightarrow$ $ \dl{x,y,z} $.
\end{centred}
-\noindent I used \texttt{\textbackslash dl3x\textbackslash dl2y\textbackslash dl2z}
-when writing the triple integral above, \emph{no} extra spacing when
-writing the total differential expression, since the differentials
-are already distinct from the preceding fraction forms $\diff.ptxt.Px$
-etc., and \texttt{\textbackslash dl2x} when writing $\int\sin x\dl2x$.
-
-Note that only \emph{one} digit can be used. If two are used, as here,
-\verb`$ \dl20x $` $\Longrightarrow$ $ \dl20x $, the effect is unlikely
-to be what is wanted.
-
-From version 3.2 of \texttt{diffcoeff} it is possible to also add
-\emph{negative} space before the differential, which might be useful
-in special contexts, perhaps to construct a symbol:
+To write the line elements I made use of a dot-delimited argument
+producing a variant form of the differential (see below §\ref{subsec:Line-elements}):
\begin{centred}
-\verb`$ /\dl-9x $` $\Longrightarrow$ $ /\dl-9x. $
-\end{centred}
-\noindent For negative space before the differential, add a minus
-sign before the (single) digit.
+\verb`$ \dl.+.{x,y,z}^2 $` $\Longrightarrow$ $ \dl.+.{x,y,z}^2 $,
-The spacing digit option \emph{follows} the dot-delimited name option.
-For example, earlier, in the denominator of a mixed partial derivative,
-I have used what is effectively \texttt{\textbackslash dlp x\textbackslash dlp2y\textbackslash dlp2z},
-and the variation to that spacing when a higher-order differentiation
-occurs:
-\begin{centred}
-\verb`$ \dlp x^2\dlp1y\dlp2z $` $\Longrightarrow$ $ \dlp x^2\dlp1y\dlp2z. $
+\verb`$ c^2\dl.-.{t,x,y,z}^2 $` $\Longrightarrow$ $ c^2\dl.-.{t,x,y,z}^2 $.
\end{centred}
-\section{Rationale}
-
-Version 1 of the \texttt{diffcoeff} package arose from a need to simplify
-the parsing of differential coefficients for another program I was
-working on which was struggling to `read' all the possible permutations
-of \texttt{\textbackslash frac} or \texttt{\textbackslash tfrac}
-or \texttt{\textbackslash dfrac} or slash forms of the derivative,
-of \texttt{d} or \texttt{\textbackslash mathrm\{d\}} or \texttt{\textbackslash partial}
-or \texttt{D} or \texttt{\textbackslash mathrm\{D\}} or \texttt{\textbackslash nabla},\texttt{
-}and of points of evaluation delimited by vertical rules or parentheses.\texttt{ }Although
-regular expressions coped with most of these cases, it was \emph{messy}.
+\subsection{Template \texttt{DIFL}}
-There are other packages which have commands for the derivative (e.g.,
-\texttt{bropd}, \texttt{commath},\texttt{ esdiff}, \texttt{physymb})
-but none quite gave what I wanted -- although they probably cope
-with most users' needs. \texttt{esdiff} came closest to what I was
-seeking but failed when it came to combining algebraic and numeric
-orders of differentation in a mixed partial derivative (and made heavier
-use of braces than I liked in that case too).
-
-\subsection{\texttt{diffcoeff.sty}}
+\begin{wraptable}{o}{0.5\columnwidth}%
-I have tried to make using \texttt{diffcoeff} intuitive. Looking at
-the other packages mentioned, writing something like \texttt{\textbackslash diff{[}n{]}\{f\}\{x\}}
-(which can be trimmed to \texttt{\textbackslash diff{[}n{]}fx} for
-single-token arguments) seems `natural' -- only \texttt{physymb}
-deviates from the pattern.
-\begin{itemize}
-\item It seems consistent with this pattern to use a comma list for specifying
-the orders of differentiation of the variables in a higher order mixed
-partial derivative (and its suppression when all are of order 1)
-\item Having specified the orders, surely the program itself should calculate
-the overall order? \texttt{esdiff} does this for numerical orders;
-\texttt{diffcoeff} does this for both numeric and algebraic orders,
-\end{itemize}
-\begin{centred}
-\verb`\[ \diffp[m-(k+1),m+(k-1)]{F(x,y,z)}{x,y,z} \]`
-\end{centred}
-\begin{example}
-$\Longrightarrow$ \[ \diffp[m-(k+1),m+(k-1)]{F(x,y,z)}{x,y,z} \]
-\end{example}
+\begin{centering}
+\caption{\texttt{DIFL} defaults\protect\label{tab:DIFL-defaults}}
+\begin{center}
+\begin{tabular}{lrr}
+\toprule
+{\small key} & {\small default} & {\small comment}\tabularnewline
+\midrule
+{\small style} & {\small\texttt{dl}} & {\small locked}\tabularnewline
+{\small outer-Ldelim} & {\small\texttt{\textbackslash ,}} & \tabularnewline
+{\small outer-Rdelim} & & \tabularnewline
+\bottomrule
+\end{tabular}
+\par\end{center}
+\par\end{centering}
+\end{wraptable}%
+The differential command \verb`\dl` gives access to a template \verb`DIFL`
+which inherits the default values of the fundamental template \verb`DIF`
+with the (few) changes shown in Table~\ref{tab:DIFL-defaults}. Note
+that the \verb`style` key is fixed at the value \verb`dl`; it cannot
+be changed. The \verb`outer-Ldelim` key inserts a small space before
+the differential; the \verb`outer-Rdelim` key does nothing. For the
+differential, both \verb`outer-Ldelim` and \verb`outer-Rdelim` are
+\emph{always inserted}. This differs from the derivative for which
+\verb`outer-Ldelim` and \verb`outer-Rdelim` are inserted only if
+there is a trailing optional argument. It is as if the differential
+command \verb`\dl` had a built-in empty trailing optional argument.
+
+That so few of the \verb`DIF` defaults are changed in \verb`DIFL`
+indicates that much of the machinery of derivative formation is irrelevant
+for forming a differential. A list of \emph{relevant} keys for the
+creation of differentials -- those that have some effect on the appearance
+of the thing -- can be found at §\ref{subsec:DIFL-(differential)}.
+
+\subsection{Syntax and options}
+
+\label{subsec:DifferentialsSyntaxOptions}If all options are present
+the differential command has the syntax
+\begin{verbatim}
+ \dl.name.[order-spec]{variable(s)}^{exponent}
+\end{verbatim}
+where the arguments have the following significance:
+\begin{enumerate}
+\item \verb`name` (optional) A dot-delimited name to distinguish a variant
+form (non-default form) of differential; see §\ref{subsec:Variant-differentials}
+below.
+\item \verb`order-spec` (optional) The power or comma-list of powers to
+which the differential or differentials will be raised. If all powers
+are \verb`1` then no specification is needed; indeed, if fewer powers
+are specified than there are variables, all `missing' powers are
+assumed to be \verb`1`; see the discussion for mixed partial derivatives,
+§\ref{subsec:Mixed-partial-derivatives}.
+\item \verb`variable(s)` (mandatory) The variable or comma-list of variables
+the differential operator applies to. \verb`\dl x`, \verb`\dl{\vec{x}}`,
+\verb`\dl{x,y,z}` are all valid variable specifications, displaying
+as $\dl x$, $\dl{\vec{x}}$ and $\dl{x,y,z}$ respectively.
+\item \verb`exponent` (optional) An exponent to which all differentials
+will be raised; overrides the \verb`order-spec` ; see §\ref{subsec:Line-elements}
+for examples of use.
+\end{enumerate}
+Only the third argument is mandatory, although it may be empty.
+
+\subsection{Variant forms of differential}
+
+\label{subsec:Variant-differentials}The first argument of the differential
+command \verb`\dl` is the optional \verb`name` which is used --
+like the corresponding argument in the derivative commands -- to
+define \emph{variant forms}.
+
+To create such variant forms, the \verb`\defdif` command is again
+used, but with \verb`l` (lowercase \verb`L`) used as the identifier
+in the first argument. For example, you may want a `partial' differential,
+using \verb`\partial` in place of \verb`d`. It seems natural to
+give this the name \verb`p`:
+\begin{verbatim}
+ \difdef { l } { p }
+ { op-symbol = \partial }
+\end{verbatim}
+In fact just this definition can be found in the file \verb`diffcoeff5.def`,
+so that
+\begin{centred}
+\verb`$ \dl.p.x $` $\Longrightarrow$ $\dl.p.x$
+\end{centred}
+which is seven keystrokes in all versus ten (space included) for \verb`\partial x`.
+Defining \verb`\dlp` by writing
+\begin{centred}
+\verb`\NewDocumentCommand \dlp {} { \dl.p. }`.
+\end{centred}
+saves another keystroke. However, I doubt the few keystrokes saved
+justify the trouble of defining such a variant. The real reason one
+might do so is to ease the writing of expressions like $\dl.p.[3,2]{x,y,z}$
+-- perhaps in a document like the present one to discuss the minutiae
+of spacing in the denominators of mixed partial derivatives.
+\begin{centred}
+\verb`$\dl.p.[3,2]{x,y,z}$` $\Longrightarrow$ $\dl.p.[3,2]{x,y,z}$
+\end{centred}
+As you can see from the example, just as for mixed partial derivatives,
+if more than one variable is specified but the \verb`order-spec`
+contains fewer than that number of entries, \verb`diffcoeff` assumes
+the missing entries are \verb`1`.
+
+A second example of a variant form of differential is provided by
+the definition
+\begin{verbatim}
+ \difdef { l } { b }
+ { op-symbol = \mathrm{d}\mathbf }
+\end{verbatim}
+which can be found in the file \verb`diffcoeff5.def`. If you distinguish
+vectors, say, by boldface type, then you can avoid writing \verb`\mathbf`
+for differentials of vectors by using the variant form \verb`\dl.b.`:
+\begin{centred}
+\verb`$ \dl.b.x,\quad \dl.b.{x,y,z} $` $\Longrightarrow$ $ \dl.b.x ,\quad \dl.b.{x,y,z} $.
+\end{centred}
+
+\subsubsection{Line elements}
+
+\label{subsec:Line-elements}Variant forms can be used to write line
+elements of Pythagorean or Minkowskian form. The definition
+\begin{verbatim}
+ \difdef { l } { + }
+ {
+ multi-term-sep = 0 mu +,
+ term-sep-adjust = 0 mu ,
+ outer-Ldelim =
+ }
+\end{verbatim}
+which can be found in the file \verb`diffcoeff5.def`, inserts a \verb`+`
+sign between terms in the variable specification. Notice that the
+value assigned to the key \verb`multi-term-sep` begins with \verb`0 mu`.
+A dimension here \emph{initially} is essential. Also note that the
+thin space inserted by default before a differential by means of the
+\verb`outer-Ldelim` setting is now removed. But the intriguing feature
+of the definition is what follows the \verb`0 mu` in the \verb`multi-term-sep`
+value: a \verb`+` sign. Applying this variant to \verb`{x,y,z}`
+the result is $ \dl.+.{x,y,z} $, which may be mildly interesting
+but definitely becomes so when we add an exponent to the variable
+spec.:
+\begin{centred}
+\verb`$ \dl.+.{x,y,z}^2 $` $\Longrightarrow$ $ \dl.+.{x,y,z}^2 $.
+\end{centred}
+The exponent acts as if an order specification \verb`[2,2,2]` had
+been included. If an order specification \emph{is }included, whatever
+the values listed, the trailing exponent overrides it.
+
+Similarly, the file \verb`diffcoeff5.def` contains an identical definition
+save that the plus sign is replaced by a minus. This enables the writing
+of a Minkowski metric:
+\begin{centred}
+\verb`$ c^2\dl.-.{t,x,y,z}^2 $` $\Longrightarrow$ $ c^2\dl.-.{t,x,y,z}^2 $.
+\end{centred}
+
+\subsection{Changing defaults}
+
+To change the \emph{default} values of the \verb`DIFL` template use
+the \verb`\difdef` command but leave its second argument, the \verb`name`
+argument, empty. For instance if you want slightly less space by default
+before a differential than the thin space (\verb`\,` or \verb`3 mu`)
+specified in the \verb`DIFL` template -- say you want \verb`2 mu`
+-- then write
+\begin{verbatim}
+ \difdef { l } {} { outer-Ldelim = \twomu }
+\end{verbatim}
+and ensure that this is in your \verb`.def` file or in the preamble
+of your document. If you want a rubber length, say \verb`3 mu plus 1 mu minus 2 mu`
+(which can also be written more compactly as \verb`3muplus1muminus2mu`),
+then write (notice the \verb`\mskip`)
+\begin{verbatim}
+ \difdef { l } {}
+ { outer-Ldelim = \mskip 3muplus1muminus2mu }
+\end{verbatim}
+The crucial point is to leave the second argument of \verb`\difdef`,
+the \verb`variant name`, empty. That changes the \emph{default} values
+in \verb`DIFL` of the keys listed in the third argument of \verb`\difdef`.
+
+\subsection{Rationale}
+
+But why bother with the differential command at all? It only seems
+to complicate the simple typing of \verb`d` followed by \verb`x`.
+Admittely typing \verb`\dl x` requires fewer keystrokes than typing
+\verb`\mathrm{d}x` (or even \verb`\mathrm dx`), but there are other,
+more substantive, reasons why one might prefer an explicit command.
+\begin{enumerate}
+\item \emph{Consistency} with the derivative.
+\item \emph{Spacing} is inserted automatically before the differential,
+and between differentials in (e.g.) multiple integrals.
+\item \emph{Parsing integrals} for some other package or program is much
+easier to do when looking for a concluding differential command \verb`\dl`
+than when looking for \verb`d` or \verb`\mathrm{d}` or \verb`\mathnormal{d}`
+(or whatever) followed by an arbitrary variable name.
+\item \emph{Configurability}. There are values other than the defaults that
+can be given to keys to give novel effects for variant forms of differential
+-- see the examples \verb`\dl.b.`, \verb`\dl.+.` and \verb`\dl.-.`
+above.
+\end{enumerate}
-\begin{itemize}
-\item and where it fails either to calculate at all or to present the result
-in a preferred form, offers the order-override option:
-\end{itemize}
-\begin{centred}
-\verb`\[ \diffp[m+(k+1),m+(k-1)][2(m+k+1)]{F(x,y,z,w)}{x,y,z,w} \]`
-\end{centred}
-\begin{example}
-$\Longrightarrow$ \[ \diffp[m+(k+1),m+(k-1)][2(m+k+1)]{F(x,y,z,w)}{x,y,z,w} \]
-\end{example}
+\section{Jacobians}
-\begin{itemize}
-\item I wished to avoid the unnecessary writing of superscripts, subscripts
-and brace pairs. In the examples just given, no superscript tokens
-\texttt{\textasciicircum} are written by the user despite the higher-order
-differentiation in $x$ and $y$, and only the two inescapable brace
-pairs are required.
-\item The use of a comma list for the second mandatory argument in a partial
-derivative -- the list of variables -- makes differentiations in
-super- or subscripted symbols (as occurs prolifically in tensor calculus)
-easier to both write and read by avoiding unnecessary brace pairs.
-\end{itemize}
+\label{subsec:Jacobians}\verb`diffcoeff` provides a command {\ttfamily\verb`\jacob`}
+for writing jacobians -- not the determinant as such but the symbol
+conventionally used to denote the determinant. For example
\begin{centred}
-\verb`\[ \diffp{A_i}{ x^j,x^k } \]` $\Longrightarrow$ \[ \diffp{A_i}{ x^j,x^k } \]
+\verb`\[ \jacob{u,v,w}{x,y,z} \]` $\Longrightarrow$ \[ \jacob{u,v,w}{x,y,z} \]
\end{centred}
-\begin{itemize}
-\item Should a point of evaluation or variables held constant be considered
-part of the derivative? Thermodynamic usage was decisive here. The
-partial derivative alone is ambiguous -- the parentheses and subscript
-are essential to understand what is being stated:
+The comma lists can contain any number of variables, even one or none,
\[
-\diffp ST[V]
+\jacob uv,\quad\jacob{}{},
\]
-Hence provision for these extra elements was included in the derivative
-commands.
-\item Given the position of the subscripted symbol in the displayed derivative,
-it's positioning as the \emph{final} argument in the derivative command
-feels inevitable.
-\item Version 1 of \texttt{diffcoeff} used braces for this argument to avoid
-any possible confusion with a following mathematical expression. That
-use of braces is now deprecated in \texttt{xparse}, has been deprecated
-in \texttt{diffcoeff} since version 2, and is no longer compatible
-with version 4. Later versions of \texttt{diffcoeff} use square brackets,
-conforming with familiar \LaTeX{} practice. The only special remembering
-needed is avoidance of a space before the argument -- and if it does
-slip in, it won't cause a \LaTeX{} error. It will be treated as part
-of a following mathematical expression and displayed as such.
-\item The star option also prompted the question: is it needed? After all,
-one can always leave the first mandatory argument empty and append
-the differentiand `by hand'. But once the provision for points of
-evaluation or variables held constant was incorporated into the derivative
-commands, the star option became the simplest way of handling appended
-differentiands since the parentheses for a variable held constant
-must wrap around the differential operator \emph{and} differentiand.
-Once available, it provides a simple way of switching between (and
-comparing) the appearance of differentiand-in-the-numerator and differentiand-appended.
-\item The slash option was added to the derivative commands after seeing
-how widely such forms are used in texts at all levels. The placement
-of the slash, between the two mandatory arguments, seems more-or-less
-self-evident.
-\item A later option added to \texttt{\textbackslash diff} (and not present
-in version 1) was the dot-delimited name option. Once \texttt{xtemplate}
-was used as the basis of the package this seemed the most straightforward
-way of making available, ready to hand, the wealth of variants that
-\texttt{xtemplate} makes possible. (It's just a pity that the second
-dot is needed, and a single-dot naming scheme can't be used, but \texttt{xparse}
-forces my hand here.)
-\item Having added the dot-delimited name option, the use of a \texttt{def}
-file to store variants or preferred defaults is more-or-less forced,
-otherwise one is faced with making these definitions anew for each
-new document (or locating a previous document and copying from that
-to the new one).
-\item To handle possible differences between display-style and text-style
-(and script-style) derivatives (see §\ref{subsec:Text-and-script-style})
-I considered using \TeX 's \texttt{\textbackslash mathchoice} command.
-This command takes four arguments, corresponding to display-, text-,
-script- and scriptscript-styles and would require forming four derivatives
-each time a derivative is used, `just in case'. In fact fraction-form
-derivatives are used overwhelmingly in display-style expressions,
-the slash form being used for inline use. Given the ease of defining
-a fraction-form variant for text-style use, and the rareness of such
-use, employing variants seemed the way to go. It is the one adopted
-and avoids the computational burden associated with the use of \texttt{\textbackslash mathchoice}.
-\item After version 2 of the package appeared on CTAN, it was pointed out
-to me that there was an issue of consistency between the form of `d'
-used in a derivative (upright or math-italic) and the form used in
-an integral. I had overlooked this matter completely and in version
-3 of the package remedied the omission with the differential command
-\texttt{\textbackslash dl}. A spacing option for \texttt{\textbackslash dl}
-was almost inevitable. From version 4 the partial analogue \texttt{\textbackslash dlp}
-has been added.
-\item Space before the differentiand was requested by a user. Once considered
-it became clear that there are (at least) two ways of thinking of
-a derivative: as $\diff y/x$, a ratio of differentials where $\dl y$
-is a unit and it makes no sense to insert space between the `d'
-and the `y', and as
-\[
-\diff!{F(x)}x
-\]
-where the function $F(x)$ is being operated on by $\diff{}/x$ and
-it is natural to insert space between the `d' and the `F'. With
-that realisation came the need for a simple switch-like package option
-(\verb`spaced`) to turn spacing on or off, and a switch-like argument
-(\verb`!`) to countermand the package option in exceptional cases
-(version 4).
-\end{itemize}
+nor need the numbers in numerator and denominator be equal. \verb`\jacob`
+does \emph{not} check such things. It is perfectly possible to form
+unbalanced objects like
+\begin{centred}
+\verb`\[ \jacob{u,v,w}{x,y},\quad\jacob{u,v}{x,y,z}. \]` $\Longrightarrow$
+\[ \jacob{u,v,w}{x,y},\quad\jacob{u,v}{x,y,z}. \]
+\end{centred}
+Perhaps there are contexts where these are meaningful?
-\section{Version comparison}
+\subsection{Template \texttt{DIFJ}}
-\label{sec:Version-comparison}Unlike version 1, version 2 and later
-are built on the the \texttt{xtemplate} package which makes certain
-facilities available which it would be silly not to exploit. Hence
-the coding in the later versions is completely different and there
-are consequences.
-\begin{enumerate}
-\item From version 2.0
-\begin{enumerate}
-\item The \texttt{\textbackslash diffset} command, formerly used to tweak
-the display of derivatives, has been superseded by the \texttt{\textbackslash diffdef}
-command. \texttt{\textbackslash diffset} now sends a message warning
-of its obsolescence to the terminal and \LaTeX{} log but is otherwise
-functionless. It should not interfere with the compilation of a document
-but any intended fine-tuning of the display by means of the \texttt{\textbackslash diffset}
-command\texttt{ }will not eventuate. The warning message is: \texttt{Obsolete
-command: \textbackslash diffset has been superseded by the \textbackslash diffdef
-command.} \texttt{See the diffcoeff} \texttt{doc\-umentation for
-further information.} The \texttt{\textbackslash diffdef} command
-is discussed in §\ref{subsec:diffdef};
-\item The optional trailing argument used to indicate a point of evaluation
-or variables held constant is now delimited by square brackets, \texttt{{[}}
-and \texttt{{]}}, as other optional arguments are. For compatibility
-with version 1, versions 2 and 3 still accepted braces to delimit
-this argument but from version 4 of \texttt{diffcoeff} only the square-bracket
-delimited argument is accepted. (The use of braces around \emph{optional}
-arguments while once accepted is now deprecated in \texttt{xparse}
-on which \texttt{diffcoeff} depends);
-\item The commands \texttt{\textbackslash Diff}, \texttt{\textbackslash diffd}
-and \texttt{\textbackslash Diffd} used to construct derivatives from
-$D$, $\delta$ and $\Delta$ in version 1, are still available but
-deprecated. A new optional argument in the \texttt{\textbackslash diff}
-command offers these and a host of other possibilities and is now
-the preferred method of forming such variants; see §\ref{subsec:D-delta-Delta}.
-\end{enumerate}
-\item Version 3.0
-\begin{enumerate}
-\item adds a command, \texttt{\textbackslash dl} (from \emph{d}ifferentia\emph{l})
-to write differentials like $dx$ that occur in integrals and in other
-contexts in a manner consistent with the form used in derivatives.
-After all, if one is using upright `d's in derivatives, similarly
-upright `d's should occur in these other contexts;\footnote{This rather obvious lack in version 2 was pointed out to me by Sergio
-Callegari.}
-\item provides some simple spacing commands that can be useful for tweaking
-standard spacing.
-\end{enumerate}
-\item Version 3.1 enables the differential command to be used before forms
-like \texttt{\textbackslash vec\{x\}} (an overlooked possibility
-causing an error in earlier versions).
-\item Version 3.2
+\begin{wraptable}{o}{0.45\columnwidth}%
+\centering{}\caption{\texttt{DIFJ} defaults\protect\label{tab:DIFJ-defaults}}
+\begin{center}
+\begin{tabular}{lr}
+\toprule
+{\small key} & {\small default}\tabularnewline
+\midrule
+{\small op-symbol} & {\small\texttt{\textbackslash partial}}\tabularnewline
+{\small outer-Ldelim} & \tabularnewline
+{\small outer-Rdelim} & \tabularnewline
+\bottomrule
+\end{tabular}
+\par\end{center}\end{wraptable}%
+Jacobians are configurable. Like other commands of \verb`diffcoeff`,
+\verb`\jacob` gives access to a template, in this case \verb`DIFJ`,
+which is a child of the fundamental template \verb`DIF` and inherits
+most of its default values with only a few changes as shown in Table~\ref{tab:DIFJ-defaults}.
+Note that the keys \verb`outer-Ldelim` and \verb`outer-Rdelim` are
+both empty and, as with the differential, are \emph{always inserted}
+-- which is why they are empty by default.
+
+The lack of entries in Table~\ref{tab:DIFJ-defaults} is because
+many keys are irrelevant for forming jacobians -- it doesn't matter
+what their default values are. For a list of \emph{relevant} keys
+-- ones that have some effect on the appearance of a jacobian --
+see §\ref{subsec:DIFJ-(jacobian)}.
+
+\subsection{Syntax and variant forms}
+
+The \verb`\jacob` command has only three arguments. The syntax is
+simple:
+\begin{verbatim}
+ \jacob.name. {numer} {denom}
+\end{verbatim}
+The arguments have the following significance:
\begin{enumerate}
-\item allows negative spacing before the differential command \texttt{\textbackslash dl};
-\item fixes a bug in which an ordinary derivative as the differentiand of
-a partial derivative displayed as a partial derivative. It now displays,
-as it should, as an ordinary derivative.
+\item \verb`name` (optional) The dot-delimited name of a variant form of
+jacobian.
+\item \verb`numer` (mandatory) A comma list of variables forming the numerator
+of the jacobian.
+\item \verb`denom` (mandatory) A comma list of variables forming the denominator
+of the jacobian.
\end{enumerate}
-\item Version 4.0
+The default form of jacobian is an upright fraction with \verb`\partial`
+operators and parentheses around the variable lists in both numerator
+and denominator.
+
+If you want a jacobian in, say, slash-fraction form then once again
+the \verb`\difdef` command is used. The file \verb`diffcoeff5.def`
+contains the definition
+\begin{verbatim}
+ \difdef { j } { s } { style = / }
+\end{verbatim}
+To access this style, use the name -- which is at your discretion
+but here I have chosen \verb`s` (\verb`/` also suggests itself)
+-- between dots after the \verb`\jacob` command:
+\begin{centred}
+\verb`$ \jacob.s.{u,v,w}{x,y,z} $` $\Longrightarrow$ $ \jacob.s.{u,v,w}{x,y,z}. $
+\end{centred}
+If you want to change the operator symbol from \verb`\partial` to
+\verb`D`, as I have seen used, then the definition is:
+\begin{verbatim}
+ \difdef { j } { D } { op-symbol = D }
+\end{verbatim}
+(Again the name is at your discretion but \verb`D` seems obvious.)
+I have added this to the preamble of the present document, so that
+\begin{centred}
+\verb`\[ \jacob.D.{u,v,w}{x,y,z} \]` $\Longrightarrow$ \[ \jacob.D.{u,v,w}{x,y,z}.\]
+\end{centred}
+If you want square brackets rather than parentheses around the variable
+lists, then \verb`lvwrap-Ldelim` and \verb`lvwrap-Rdelim` (perhaps
+not intuitively) are the keys to change:
+\begin{verbatim}
+ \difdef { j } { [ }
+ {
+ lvwrap-Ldelim = \onemu\mleft [,
+ lvwrap-Rdelim = \mright ]
+ }
+\end{verbatim}
+the \verb`\onemu` giving, to my eye, better spacing between the \verb`\partial`
+symbols and the left brackets. This definition, too, has been added
+to the preamble so that
+\begin{centred}
+\verb`\[ \jacob.[.{u,v,w}{x,y,z} \]` $\Longrightarrow$ \[ \jacob.[.{u,v,w}{x,y,z}. \]
+\end{centred}
+
+\subsection{Changing defaults}
+
+To change the \emph{default} values of the \verb`DIFJ` template leave
+the second argument of the \verb`\difdef` command -- the \verb`variant-name`
+-- empty. For instance, if you want square brackets to be your default
+setting, the \verb`\difdef` command would be
+\begin{verbatim}
+ \difdef { j } {}
+ {
+ lvwrap-Ldelim = \onemu\mleft [,
+ lvwrap-Rdelim = \mright ]
+ }
+\end{verbatim}
+The only difference from the previous definition is the absence of
+the name from the second argument, which is now empty. If this definition
+were added to the preamble or to the \verb`.def` file of your current
+document then writing \verb`\jacob{u,v,w}{x,y,z}` would give the
+same result as obtained above with the variant \verb`\jacob.[.{u,v,w}{x,y,z}`.
+
+\chapter{Reference}
+
+\label{chap:Reference}For convenience I list here the commands of
+\verb`diffcoeff`, the template defaults, and the files and preamble
+definitions associated with this document.
+
+\section{Commands}
+
+\verb`\diff`, \verb`\diffp`, \verb`\difs`, \verb`\difsp`, \verb`\difc`,
+\verb`\difcp` (sometimes summarised as \verb`\difx` and \verb`\difxp`),
+ordinary and partial derivatives of upright-fraction, slash-fraction
+and compact forms respectively, with arguments (all optional unless
+otherwise indicated) and their delimiters:
\begin{enumerate}
-\item enables the insertion of a small space before the differentiand, either
-as the default behaviour (package option \verb`spaced`) or at explicit
-request (argument \verb`!` of the \verb`\diff` command); see §\ref{subsec:Spacing-before-derivand}.
-\item prevents the ligature $df$ that marred previous versions; this is
-now rendered $\dl f$.
-\item offers the document command \verb`\dlp` for the \emph{partial} differential;
-see §\ref{subsec:Partial-differential};
-\item no longer accepts \emph{the braced form} of the\emph{ }trailing optional
-argument specifying a point of evaluation or (for partial derivatives)
-variables held constant. This was a relic from version 1 of \texttt{diffcoeff},
-and has been deprecated since version 2.
+\item \verb`.name.` name of variant form of derivative;
+\item \verb`*` append-differentiand switch;
+\item \verb`*` reverse order of mandatory arguments 6 and 7 when differentiand
+is appended, available only if first star is also present;
+\item \verb`[order(s)]` order of differentiation, or comma list of orders
+of differentiation (for mixed partial derivatives);
+\item \verb`{differentiand}` (mandatory) function being differentiated;
+\item \verb`{variable(s)}` (mandatory) differentiation variable or, for
+mixed partial derivatives, comma list of differentiation variables;
+\item \verb`[pt of eval/const vars]` point of evaluation or, for partial
+derivatives, variables held constant.
\end{enumerate}
-\item Version 4.1
+\begin{description}
+\item [{\texttt{\textbackslash difoverride}}] order-override command with
+one mandatory argument:
+\end{description}
\begin{enumerate}
-\item changes the code for the \verb`long-var-wrap` setting to avoid a
-problem arising from a change in \verb`xtemplate`;
-\item improves spacing between operator and variable in \emph{denominators}
-of differential coefficients (e.g. prevents ligatures).
-\end{enumerate}
+\item \verb`{total order}` total order of differentiation; may be (and
+generally is) empty.\newpage{}
\end{enumerate}
-
-\section{Commands}
\begin{description}
-\item [{\texttt{\textbackslash diff}}] arguments (all optional unless
-otherwise indicated):
+\item [{\texttt{\textbackslash jacob}}] jacobian with arguments and delimiters:
+\end{description}
\begin{enumerate}
-\item .\emph{name}. for the given settings
-\item {*} append-differentiand switch
-\item {[}\emph{order}{]} or {[}\emph{comma-list of orders}{]} of differentiation
-\item {[}\emph{order-override}{]}
-\item ! countermand before-differentiand spacing of the \verb`spaced` package
-option
-\item \{\emph{differentiand}\} (mandatory)
-\item / slash-form switch
-\item \{\emph{comma list of differentiation variables}\} (mandatory)
-\item {[}\emph{point of evaluation/variables held constant}{]}
+\item \verb`.name.` (optional) name of variant form of jacobian;
+\item \verb`{numer}` (mandatory) comma list of variables forming the numerator;
+\item \verb`{denom}` (mandatory) comma list of variables forming the denominator.
\end{enumerate}
-\item [{\texttt{\textbackslash diffdef}}] arguments (all mandatory):
+\begin{description}
+\item [{\texttt{\textbackslash dl}}] differential with arguments and delimiters:
\begin{enumerate}
-\item \{\emph{name}\}
-\item \{\emph{key=value comma list}\}
+\item \verb`.name.` (optional) name of variant form of differential;
+\item \verb`[order(s)]` (optional) order of differential or comma list
+of orders of differentials;
+\item \verb`{variable(s)}` (mandatory) variable or comma list of variables;
+\item \verb`^{exponent}` (optional) exponent that overrides the \verb`order(s)`
+specification, raising each differential to this power.
\end{enumerate}
-\item [{\texttt{\textbackslash diffp}}] \texttt{= \textbackslash diff.p.}
-\item [{\texttt{\textbackslash dl}}] arguments (all optional):
+\item [{\texttt{\textbackslash difdef}}] with arguments (all mandatory)
+and delimiters:
\begin{enumerate}
-\item .\emph{name}. (as for \texttt{\textbackslash diff})
-\item \emph{minus sign} (optional, use only if negative spacing before the
-`d' is wanted)
-\item \emph{digit} (insert spacing of this number of mu before the `d')
+\item \verb`{id(s)}` comma list of one, some or all of the identifiers
+\verb`f`, \verb`s`, \verb`c`, \verb`fp`, \verb`sp`, \verb`cp`,
+\verb`j`, \verb`l` identifying upright fraction, slash fraction
+and compact ordinary derivatives; upright fraction, slash fraction
+and compact partial derivatives, and jacobians and differentials;
+\item \verb`{name}` name for a variant form of derivative; as well as letters
+may include numbers and other keyboard characters, but not braces,
+\verb`%` or \verb`#`;
+\item \verb`{settings}` comma list of changed \emph{key=value} settings.
\end{enumerate}
-\item [{\texttt{\textbackslash dpl}}] \texttt{= \textbackslash dl.p.}
\item [{\texttt{\textbackslash negmu}}] insert a $-1$ mu space
\item [{\texttt{\textbackslash nilmu}}] insert a $0$ mu space
\item [{\texttt{\textbackslash onemu}}] insert a $1$ mu space
\item [{\texttt{\textbackslash twomu}}] insert a $2$ mu space
\end{description}
-Deprecated (why try remembering the special names when the forms on
-the right are self-explanatory):
-\begin{description}
-\item [{\texttt{\textbackslash Diff}}] preferred form: \texttt{\textbackslash diff.D.}
-\item [{\texttt{\textbackslash diffd}}] preferred form \texttt{\textbackslash diff.delta.}
-\item [{\texttt{\textbackslash Diffd}}] preferred form\texttt{ \textbackslash diff.Delta.}
-\end{description}
+\section{Templates}
+
+The following lists record the default values of the templates used
+by \verb`diffcoeff`. A marginal \verb`>` indicates where a setting
+differs from that in \verb`DIF`, \verb`>>` where a setting differs
+from that in \verb`DIFF`, \verb`DIFS` or \verb`DIFC` as the case
+may be. For the latter templates, only \emph{relevant }keys have been
+listed -- those which affect the appearance of the derivative (or
+jacobian or differential).
+
+\subsection{\texttt{DIF} (primogenitor)}
+\begin{verbatim}
+ style = frac,
+ slash-tok = /,
+ slash-sep = 0 mu,
+ derivand-sep = 3 mu plus 1 mu minus 2 mu,
+ op-symbol = \mathrm{d},
+ op-symbol-alt = \KeyValue{ op-symbol },
+ op-order-nudge = 0 mu,
+ var-sup-nudge = 1 mu,
+ multi-term-sep = 2 mu plus 1 mu minus 1 mu,
+ term-sep-adjust = -1 mu,
+ long-var-wrap = d(v),
+ lvwrap-Ldelim = \mleft (,
+ lvwrap-Rdelim = \mright ),
+ lvwrap-sup-nudge = -2 mu,
+ outer-Ldelim = \left (,
+ outer-Rdelim = \right ),
+ elbowroom = 0 mu,
+ sub-nudge = -5 mu,
+ op-sub-nudge = 0 mu,
+ *derivand-sep = \KeyValue{ derivand-sep },
+ *op-set-left = false,
+ *italic-nudge = 0 mu,
+ *inner-wrap = false,
+ *inner-Ldelim = (,
+ *inner-Rdelim = ),
+ *outer-Ldelim = \big [,
+ *outer-Rdelim = \big ],
+ *sub-nudge = 0 mu
+\end{verbatim}
+
+\subsection{\texttt{DIFF} (upright-fraction derivative)}
+
+\label{subsec:DIFF-(upright-fraction-derivative)}Relevant keys and
+default values for template \verb`DIFF`.
+\begin{verbatim}
+ style = frac,
+ derivand-sep = 3 mu plus 1 mu minus 2 mu,
+ op-symbol = \mathrm{d},
+ op-symbol-alt = \KeyValue { op-symbol },
+ op-order-nudge = 0 mu,
+ var-sup-nudge = 1 mu,
+ multi-term-sep = 2 mu plus 1 mu minus 1 mu,
+ term-sep-adjust = -1 mu,
+ long-var-wrap = d(v),
+ lvwrap-Ldelim = \mleft (,
+ lvwrap-Rdelim = \mright ),
+ lvwrap-sup-nudge = -2 mu,
+ outer-Ldelim = \left (,
+ outer-Rdelim = \right ),
+ elbowroom = 0 mu,
+ sub-nudge = -5 mu,
+ *derivand-sep = \KeyValue { derivand-sep },
+ *op-set-left = false,
+ *italic-nudge = 0 mu
+\end{verbatim}
+
+\subsubsection{\texttt{DIFFP}}
+
+\verb`DIFF` defaults as above with these changes:
+\begin{verbatim}
+>> op-symbol = \partial,
+>> op-order-nudge = 1 mu,
+>> *italic-nudge = 3 mu
+\end{verbatim}
+
+\subsection{\texttt{DIFS} (slash-fraction derivative)}
+
+\label{subsec:DIFS-(slash-fraction-derivative)}Relevant keys and
+default values for template \verb`DIFS`.
+\begin{verbatim}
+> style = /,
+ slash-tok = /,
+ slash-sep = 0 mu,
+> derivand-sep = 2 mu plus 1 mu minus 2 mu,
+ op-symbol = \mathrm{d},
+ op-symbol-alt = \KeyValue { op-symbol },
+ op-order-nudge = 0 mu,
+ var-sup-nudge = 1 mu,
+ multi-term-sep = 2 mu plus 1 mu minus 1 mu,
+ term-sep-adjust = -1 mu,
+ long-var-wrap = d(v),
+ lvwrap-Ldelim = \mleft (,
+ lvwrap-Rdelim = \mright ),
+ lvwrap-sup-nudge = -2 mu,
+> outer-Ldelim = (,
+> outer-Rdelim = ),
+ elbowroom = 0 mu,
+> sub-nudge = 0 mu,
+ *derivand-sep = \KeyValue { derivand-sep },
+> *inner-wrap = true,
+ *inner-Ldelim = (,
+ *inner-Rdelim = ),
+ *outer-Ldelim = \big [,
+ *outer-Rdelim = \big ],
+ *sub-nudge = 0 mu
+\end{verbatim}
+
+\subsubsection{\texttt{DIFSP}}
+
+\verb`DIFS` defaults as above with these changes:
+\begin{verbatim}
+>> op-symbol = \partial,
+>> op-order-nudge = 1 mu
+\end{verbatim}
+
+\subsection{\texttt{DIFC} (compact derivative)}
+
+\label{subsec:DIFC-(compact-derivative)}Relevant keys and default
+values for template \verb`DIFC`.
+\begin{verbatim}
+> style = _ ,
+> derivand-sep = 1 mu plus 1 mu minus 2 mu,
+ op-symbol = \mathrm{d},
+ op-order-nudge = 0 mu,
+> multi-term-sep = 1 mu,
+> term-sep-adjust = 0 mu,
+> outer-Ldelim = \bigl (,
+> outer-Rdelim = \bigr ),
+ elbowroom = 0 mu,
+> sub-nudge = -2 mu,
+ op-sub-nudge = 0 mu,
+ *derivand-sep = \KeyValue { derivand-sep }
+\end{verbatim}
+
+\subsubsection{\texttt{DIFCP}}
+
+\verb`DIFC` defaults as above with these changes:
+\begin{verbatim}
+>> op-symbol = \partial,
+>> op-order-nudge = 1 mu
+\end{verbatim}
+
+\subsection{\texttt{DIFJ} (jacobian)}
+
+\label{subsec:DIFJ-(jacobian)}Relevant keys and default values for
+template \verb`DIFJ`.
+\begin{verbatim}
+ style = frac,
+ slash-tok = /,
+ slash-sep = 0 mu,
+> op-symbol = \partial,
+ op-symbol-alt = \KeyValue{ op-symbol },
+ lvwrap-Ldelim = \mleft (,
+ lvwrap-Rdelim = \mright ),
+> outer-Ldelim = ,
+> outer-Rdelim = ,
+ elbowroom = 0 mu ,
+ *op-set-left = false,
+ *italic-nudge = 0 mu
+\end{verbatim}
+
+\subsection{\texttt{DIFL} (differential)}
+
+\label{subsec:DIFL-(differential)}Relevant keys and default values
+for template \verb`DIFL`.
+\begin{verbatim}
+ op-symbol = \mathrm{d},
+ var-sup-nudge = 1 mu,
+ multi-term-sep = 2 mu plus 1 mu minus 1 mu,
+ term-sep-adjust = -1 mu,
+> long-var-wrap = dv,
+ lvwrap-Ldelim = \mleft (,
+ lvwrap-Rdelim = \mright ),
+ lvwrap-sup-nudge = -2 mu,
+> outer-Ldelim = \, ,
+> outer-Rdelim = ,
+ elbowroom = 0 mu
+\end{verbatim}
+
+\section{The file \texttt{diffcoeff5.def}}
+
+\label{sec:The-file-diffcoeff5.def}
+\begin{verbatim}
+% file `diffcoeff5.def'
+% definitions for variant forms
+% 2023/01/03
+% Andrew Parsloe ajparsloe@gmail.com
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% material derivative
+\difdef { f, s } { D }
+ { op-symbol = \mathrm{D} }
+% math italic
+\difdef { f, s, c } { d' }
+ {
+ op-symbol = d,
+ op-order-nudge = 1 mu
+ }
+\difdef { f, s, c } { D' }
+ {
+ op-symbol = D,
+ op-order-nudge = 1 mu
+ }
+% Greek
+\difdef { f, s } { gd }
+ { op-symbol = \delta }
+\difdef { f, s } { gD }
+ { op-symbol = \Delta }
+% spaceless appending
+\difdef { f, fp } { *0 }
+ {
+ *derivand-sep = 0 mu ,
+ outer-Ldelim = \mleft ( ,
+ outer-Rdelim = \mright )
+ }
+% tfrac, nonscalable
+\difdef { f, fp } { t }
+ {
+ style = tfrac ,
+ derivand-sep = 1 mu plus 1 mu minus 1 mu,
+ multi-term-sep = 0 mu ,
+ term-sep-adjust = 0 mu ,
+ lvwrap-sup-nudge = 0 mu ,
+ outer-Ldelim = \bigl (,
+ outer-Rdelim = \bigr ),
+ elbowroom = -2 mu ,
+ sub-nudge = -3 mu
+ }
+% slash fractions: 0=scalable,
+% 1=big, 2=Big, 3=bigg, 4=Bigg
+% but > 1 gives eyesores
+\difdef { s, sp } { 0 }
+ {
+ style = auto ,
+ outer-Ldelim = \left [ ,
+ outer-Rdelim = \right ] ,
+ sub-nudge = 0 mu ,
+ *inner-Ldelim = \mleft ( ,
+ *inner-Rdelim = \mright ),
+ *outer-Ldelim = \left [ ,
+ *outer-Rdelim = \right ]
+ }
+\difdef { s, sp } { 1 }
+ {
+ style = big ,
+ outer-Ldelim = \bigl (,
+ outer-Rdelim = \bigr ),
+ sub-nudge = -2.5 mu,
+ *inner-Ldelim = \bigl (,
+ *inner-Rdelim = \bigr ),
+ *outer-Ldelim = \bigl [,
+ *outer-Rdelim = \bigr ]
+ }
+% vrule point of evaluation
+\difdef { f, fp, s, sp } { | }
+ {
+ outer-Ldelim = \left . ,
+ outer-Rdelim = \right |,
+ sub-nudge = 0 mu
+ }
+% sq. bracket pt of eval.
+\difdef { f, fp, s, sp } { ] }
+ {
+ outer-Ldelim = \left [ ,
+ outer-Rdelim = \right ],
+ elbowroom = 1 mu,
+ sub-nudge = 0 mu
+ }
+% long var wrap
+\difdef { f, fp } { (dv) }
+ { long-var-wrap = (dv) }
+\difdef { f, fp } { dv }
+ { long-var-wrap = dv }
+% compact, D operator
+\difdef { c } { D }
+ {
+ op-symbol = \mathrm{D},
+ op-sub-nudge = -2mu
+ }
+\difdef { c } { D' }
+ {
+ op-symbol = D,
+ op-sub-nudge = -2mu
+ }
+% bold
+\difdef { c } { bD }
+ {
+ op-symbol = \mathbf{D},
+ op-sub-nudge = -2mu
+ }
+% differential style
+\difdef { c, cp } { dl }
+ { style = dl }
+%%%%%%%%%%% differential %%%%%%%%%%
+% partial
+\difdef { l } { p }
+ { op-symbol = \partial }
+% bold
+\difdef { l } { b }
+ { op-symbol = \mathrm{d}\mathbf }
+
+% line elements: Pythagoras (+)
+\difdef { l } { + }
+ {
+ multi-term-sep = 0 mu +,
+ term-sep-adjust = 0 mu ,
+ outer-Ldelim =
+ }
+% Minkowski (-)
+\difdef { l } { - }
+ {
+ multi-term-sep = 0 mu -,
+ term-sep-adjust = 0 mu ,
+ outer-Ldelim =
+ }
+%%%%%%%%%% jacobian %%%%%%%%%%
+% slash fraction
+\difdef { j } { s }
+ { style = / }
+\end{verbatim}
+
+\section{Preamble definitions}
+
+\label{sec:Preamble-definitions}The preamble to the present document
+contains the command
+\begin{verbatim}
+\usepackage[def-file=diffcoeff5,spaced=-1]{diffcoeff}
+\end{verbatim}
+and definitions:
+\begin{verbatim}
+% nabla in numer, d in denom
+\difdef { f, s } { n }
+ {
+ op-symbol = \nabla,
+ op-symbol-alt = \mathrm{d}
+ }
+% no sub nudge (a sea of white space)
+\difdef { fp } { wsp }
+ { sub-nudge = 0 mu }
+% align op left; no italic nudge
+\difdef { f } { left0 }
+ {
+ *op-set-left = true,
+ *italic-nudge = 0 mu
+ }
+% align op left; italic nudge
+\difdef { fp } { left }
+ {
+ op-symbol = \partial,
+ op-order-nudge = 1 mu,
+ *op-set-left = true,
+ *italic-nudge = 3 mu
+ }
+% partial variant of \diff
+\difdef { f } { p }
+ {
+ op-symbol = \partial,
+ op-order-nudge = 1 mu
+ }
+% partial, 3mu sep of terms
+\difdef { fp, sp } { 3mu }
+ { multi-term-sep = 3 mu }
+% D jacobian
+\difdef { j } { D }
+ { op-symbol = D }
+% square bracket jabobian
+\difdef { j } { [ }
+ {
+ lvwrap-Ldelim = \onemu\mleft [,
+ lvwrap-Rdelim = \mright ]
+ }
+% mimicking the \Braket command
+% of the braket package
+\difdef{ s }{ bk }
+ {
+ slash-tok = ,
+ op-symbol = ,
+ multi-term-sep = 3mu\middle|\mskip3mu ,
+ outer-Ldelim=\left\langle ,
+ outer-Rdelim=\right\rangle
+ }
+\NewDocumentCommand \Braket { m }
+ {
+ \difoverride {\negmu}
+ \difs.bk.{}{#1}[]
+ }
+\end{verbatim}
+
+\section{\texttt{\textbackslash DeclareChildTemplate}}
+
+\verb`xtemplate` provides only a single function, \verb`\DeclareRestrictedTemplate`,
+for creating a child template from a parent. \emph{All} the keys of
+the child template are present in the parent. The child inherits not
+only the keys of the parent but the default settings of those keys.
+Some of those settings are `marked' so that they cannot be changed
+by any \emph{instance} of the child (the \emph{restricted} keys) .
+
+Unfortunately there is no similar function available in \verb`xtemplate`
+at present by which one can create a child with \emph{new} as well
+as restricted default values. I found I could achieve this functionality
+with the following code cobbled together from publicly declared functions
+in \verb`xtemplate`.
+\begin{verbatim}
+% Child template with both new and restricted defaults
+% #1 object; #2 parent template; #3 child template;
+% #4 restricted, #5 new defaults (both key=value)
+\NewDocumentCommand \DeclareChildTemplate { m m m m m }
+ {
+ \DeclareRestrictedTemplate {#1} {#2} {#3} {}
+ \EditTemplateDefaults {#1} {#3} {#5}
+ \DeclareRestrictedTemplate {#1} {#3} {#3} {#4}
+ }
+\end{verbatim}
+The first \verb`\DeclareRestrictedTemplate` call creates the child
+template \verb`#3` from the parent template \verb`#2`, inheriting
+all its keys and default values. \emph{No} restrictions are imposed
+at this stage because the following \verb`\EditTemplateDefaults`
+would immediately cancel them. That statement specifies the \emph{new}
+defaults \verb`#5` of the child -- those that differ from the parent.
+The default settings \verb`#4` of the parent that are restricted
+to particular values in the child are imposed by the second \verb`\DeclareRestrictedTemplate`
+call through the aritifice of treating the child template \verb`#3`
+as a child of itself. In that way its new defaults are not lost.
\end{document}
diff --git a/macros/latex/contrib/diffcoeff/diffcoeff4.pdf b/macros/latex/contrib/diffcoeff/diffcoeff4.pdf
new file mode 100644
index 0000000000..f709aafd6d
--- /dev/null
+++ b/macros/latex/contrib/diffcoeff/diffcoeff4.pdf
@@ -0,0 +1,8756 @@
+%PDF-1.5
+%ÐÔÅØ
+1 0 obj
+<< /S /GoTo /D (section.1) >>
+endobj
+4 0 obj
+(\376\377\0001\000\040\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n)
+endobj
+5 0 obj
+<< /S /GoTo /D (subsection.1.1) >>
+endobj
+8 0 obj
+(\376\377\0001\000.\0001\000\040\000P\000a\000c\000k\000a\000g\000e\000\040\000o\000p\000t\000i\000o\000n\000s)
+endobj
+9 0 obj
+<< /S /GoTo /D (section.2) >>
+endobj
+12 0 obj
+(\376\377\0002\000\040\000A\000\040\000R\000o\000g\000u\000e\000s\000'\000\040\000G\000a\000l\000l\000e\000r\000y\000\040\000o\000f\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+endobj
+13 0 obj
+<< /S /GoTo /D (section.3) >>
+endobj
+16 0 obj
+(\376\377\0003\000\040\000O\000r\000d\000i\000n\000a\000r\000y\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s\000\040)
+endobj
+17 0 obj
+<< /S /GoTo /D (subsection.3.1) >>
+endobj
+20 0 obj
+(\376\377\0003\000.\0001\000\040\000S\000p\000a\000c\000i\000n\000g\000\040\000b\000e\000f\000o\000r\000e\000\040\000t\000h\000e\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000n\000d)
+endobj
+21 0 obj
+<< /S /GoTo /D (subsubsection.3.1.1) >>
+endobj
+24 0 obj
+(\376\377\0003\000.\0001\000.\0001\000\040\000L\000i\000g\000a\000t\000u\000r\000e\000s\000:\000\040)
+endobj
+25 0 obj
+<< /S /GoTo /D (subsubsection.3.1.2) >>
+endobj
+28 0 obj
+(\376\377\0003\000.\0001\000.\0002\000\040\000S\000p\000a\000c\000i\000n\000g\000\040\000c\000o\000m\000m\000a\000n\000d\000s)
+endobj
+29 0 obj
+<< /S /GoTo /D (subsection.3.2) >>
+endobj
+32 0 obj
+(\376\377\0003\000.\0002\000\040\000A\000p\000p\000e\000n\000d\000i\000n\000g\000\040\000t\000h\000e\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000n\000d\000:\000\040\000\134\000d\000i\000f\000f\000*)
+endobj
+33 0 obj
+<< /S /GoTo /D (subsection.3.3) >>
+endobj
+36 0 obj
+(\376\377\0003\000.\0003\000\040\000P\000o\000i\000n\000t\000\040\000o\000f\000\040\000e\000v\000a\000l\000u\000a\000t\000i\000o\000n)
+endobj
+37 0 obj
+<< /S /GoTo /D (subsubsection.3.3.1) >>
+endobj
+40 0 obj
+(\376\377\0003\000.\0003\000.\0001\000\040\000S\000u\000p\000e\000r\000s\000c\000r\000i\000p\000t\000s)
+endobj
+41 0 obj
+<< /S /GoTo /D (subsection.3.4) >>
+endobj
+44 0 obj
+(\376\377\0003\000.\0004\000\040\000O\000r\000d\000e\000r\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000t\000i\000o\000n)
+endobj
+45 0 obj
+<< /S /GoTo /D (subsection.3.5) >>
+endobj
+48 0 obj
+(\376\377\0003\000.\0005\000\040\000M\000u\000l\000t\000i\000-\000c\000h\000a\000r\000a\000c\000t\000e\000r\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000s\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000t\000i\000o\000n)
+endobj
+49 0 obj
+<< /S /GoTo /D (section.4) >>
+endobj
+52 0 obj
+(\376\377\0004\000\040\000P\000a\000r\000t\000i\000a\000l\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+endobj
+53 0 obj
+<< /S /GoTo /D (subsection.4.1) >>
+endobj
+56 0 obj
+(\376\377\0004\000.\0001\000\040\000V\000a\000r\000i\000a\000b\000l\000e\000s\000\040\000h\000e\000l\000d\000\040\000c\000o\000n\000s\000t\000a\000n\000t)
+endobj
+57 0 obj
+<< /S /GoTo /D (subsubsection.4.1.1) >>
+endobj
+60 0 obj
+(\376\377\0004\000.\0001\000.\0001\000\040\000T\000e\000x\000t\000-\000s\000t\000y\000l\000e\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+endobj
+61 0 obj
+<< /S /GoTo /D (subsection.4.2) >>
+endobj
+64 0 obj
+(\376\377\0004\000.\0002\000\040\000A\000p\000p\000e\000n\000d\000i\000n\000g\000\040\000t\000h\000e\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000n\000d)
+endobj
+65 0 obj
+<< /S /GoTo /D (subsection.4.3) >>
+endobj
+68 0 obj
+(\376\377\0004\000.\0003\000\040\000I\000t\000e\000r\000a\000t\000e\000d\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+endobj
+69 0 obj
+<< /S /GoTo /D (subsection.4.4) >>
+endobj
+72 0 obj
+(\376\377\0004\000.\0004\000\040\000M\000i\000x\000e\000d\000\040\000p\000a\000r\000t\000i\000a\000l\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+endobj
+73 0 obj
+<< /S /GoTo /D (subsubsection.4.4.1) >>
+endobj
+76 0 obj
+(\376\377\0004\000.\0004\000.\0001\000\040\000M\000i\000n\000u\000t\000i\000a\000e\000\040\000o\000f\000\040\000s\000p\000a\000c\000i\000n\000g\000\040\000\050\000a\000g\000a\000i\000n\000\051)
+endobj
+77 0 obj
+<< /S /GoTo /D (subsubsection.4.4.2) >>
+endobj
+80 0 obj
+(\376\377\0004\000.\0004\000.\0002\000\040\000A\000l\000g\000e\000b\000r\000a\000i\000c\000\040\000o\000r\000d\000e\000r\000s\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000t\000i\000o\000n)
+endobj
+81 0 obj
+<< /S /GoTo /D (subsubsection.4.4.3) >>
+endobj
+84 0 obj
+(\376\377\0004\000.\0004\000.\0003\000\040\000E\000r\000r\000o\000r\000\040\000m\000e\000s\000s\000a\000g\000e\000s)
+endobj
+85 0 obj
+<< /S /GoTo /D (subsubsection.4.4.4) >>
+endobj
+88 0 obj
+(\376\377\0004\000.\0004\000.\0004\000\040\000T\000h\000e\000\040\000o\000r\000d\000e\000r\000-\000o\000v\000e\000r\000r\000i\000d\000e\000\040\000o\000p\000t\000i\000o\000n)
+endobj
+89 0 obj
+<< /S /GoTo /D (subsubsection.4.4.5) >>
+endobj
+92 0 obj
+(\376\377\0004\000.\0004\000.\0005\000\040\000C\000o\000m\000m\000a\000\040\000l\000i\000s\000t\000\040\000o\000f\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000s\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000t\000i\000o\000n)
+endobj
+93 0 obj
+<< /S /GoTo /D (subsubsection.4.4.6) >>
+endobj
+96 0 obj
+(\376\377\0004\000.\0004\000.\0006\000\040\000O\000v\000e\000r\000k\000i\000l\000l\000\040\000t\000e\000r\000r\000i\000t\000o\000r\000y)
+endobj
+97 0 obj
+<< /S /GoTo /D (subsection.4.5) >>
+endobj
+100 0 obj
+(\376\377\0004\000.\0005\000\040\000P\000a\000r\000e\000n\000t\000h\000e\000s\000e\000s\000\040\000a\000r\000o\000u\000n\000d\000\040\000m\000u\000l\000t\000i\000-\000c\000h\000a\000r\000a\000c\000t\000e\000r\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000s)
+endobj
+101 0 obj
+<< /S /GoTo /D (subsection.4.6) >>
+endobj
+104 0 obj
+(\376\377\0004\000.\0006\000\040\000J\000a\000c\000o\000b\000i\000a\000n\000s)
+endobj
+105 0 obj
+<< /S /GoTo /D (section.5) >>
+endobj
+108 0 obj
+(\376\377\0005\000\040\000C\000h\000a\000n\000g\000i\000n\000g\000\040\000d\000e\000f\000a\000u\000l\000t\000s\000;\000\040\000v\000a\000r\000i\000a\000n\000t\000\040\000f\000o\000r\000m\000s)
+endobj
+109 0 obj
+<< /S /GoTo /D (subsection.5.1) >>
+endobj
+112 0 obj
+(\376\377\0005\000.\0001\000\040\000D\000e\000f\000a\000u\000l\000t\000\040\000v\000a\000l\000u\000e\000s\000:\000\040\000o\000r\000d\000i\000n\000a\000r\000y\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+endobj
+113 0 obj
+<< /S /GoTo /D (subsection.5.2) >>
+endobj
+116 0 obj
+(\376\377\0005\000.\0002\000\040\000I\000S\000O\000\040\000d\000e\000f\000a\000u\000l\000t\000s)
+endobj
+117 0 obj
+<< /S /GoTo /D (subsection.5.3) >>
+endobj
+120 0 obj
+(\376\377\0005\000.\0003\000\040\000P\000a\000r\000t\000i\000a\000l\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+endobj
+121 0 obj
+<< /S /GoTo /D (subsection.5.4) >>
+endobj
+124 0 obj
+(\376\377\0005\000.\0004\000\040\000S\000e\000t\000t\000i\000n\000g\000\040\000y\000o\000u\000r\000\040\000o\000w\000n\000\040\000d\000e\000f\000a\000u\000l\000t\000s\000:\000\040\000\134\000d\000i\000f\000f\000d\000e\000f)
+endobj
+125 0 obj
+<< /S /GoTo /D (subsubsection.5.4.1) >>
+endobj
+128 0 obj
+(\376\377\0005\000.\0004\000.\0001\000\040\000S\000p\000a\000c\000e\000\040\000b\000e\000f\000o\000r\000e\000\040\000t\000h\000e\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000n\000d)
+endobj
+129 0 obj
+<< /S /GoTo /D (subsection.5.5) >>
+endobj
+132 0 obj
+(\376\377\0005\000.\0005\000\040\000V\000a\000r\000i\000a\000n\000t\000\040\000f\000o\000r\000m\000s)
+endobj
+133 0 obj
+<< /S /GoTo /D (subsubsection.5.5.1) >>
+endobj
+136 0 obj
+(\376\377\0005\000.\0005\000.\0001\000\040\000T\000e\000x\000t\000-\000s\000t\000y\000l\000e\000\040\000a\000n\000d\000\040\000s\000c\000r\000i\000p\000t\000-\000s\000t\000y\000l\000e\000\040\000d\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s)
+endobj
+137 0 obj
+<< /S /GoTo /D (subsubsection.5.5.2) >>
+endobj
+140 0 obj
+(\376\377\0005\000.\0005\000.\0002\000\040\000D\000e\000r\000i\000v\000a\000t\000i\000v\000e\000s\000\040\000f\000r\000o\000m\000\040\000D\000,\000\040\000\134\000d\000e\000l\000t\000a\000,\000\040\000\134\000D\000e\000l\000t\000a)
+endobj
+141 0 obj
+<< /S /GoTo /D (subsection.5.6) >>
+endobj
+144 0 obj
+(\376\377\0005\000.\0006\000\040\000T\000h\000e\000\040\000.\000d\000e\000f\000\040\000f\000i\000l\000e)
+endobj
+145 0 obj
+<< /S /GoTo /D (subsubsection.5.6.1) >>
+endobj
+148 0 obj
+(\376\377\0005\000.\0006\000.\0001\000\040\000S\000t\000r\000u\000c\000t\000u\000r\000e\000\040\000o\000f\000\040\000t\000h\000e\000\040\000.\000d\000e\000f\000\040\000f\000i\000l\000e)
+endobj
+149 0 obj
+<< /S /GoTo /D (subsubsection.5.6.2) >>
+endobj
+152 0 obj
+(\376\377\0005\000.\0006\000.\0002\000\040\000d\000i\000f\000f\000c\000o\000e\000f\000f\000.\000d\000e\000f)
+endobj
+153 0 obj
+<< /S /GoTo /D (section.6) >>
+endobj
+156 0 obj
+(\376\377\0006\000\040\000D\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l\000s\000\040\000i\000n\000\040\000i\000n\000t\000e\000g\000r\000a\000l\000s\000,\000\040\000e\000t\000c\000.)
+endobj
+157 0 obj
+<< /S /GoTo /D (subsection.6.1) >>
+endobj
+160 0 obj
+(\376\377\0006\000.\0001\000\040\000O\000p\000t\000i\000o\000n\000s)
+endobj
+161 0 obj
+<< /S /GoTo /D (subsubsection.6.1.1) >>
+endobj
+164 0 obj
+(\376\377\0006\000.\0001\000.\0001\000\040\000P\000a\000r\000t\000i\000a\000l\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l)
+endobj
+165 0 obj
+<< /S /GoTo /D (subsubsection.6.1.2) >>
+endobj
+168 0 obj
+(\376\377\0006\000.\0001\000.\0002\000\040\000S\000p\000a\000c\000i\000n\000g)
+endobj
+169 0 obj
+<< /S /GoTo /D (subsection.6.2) >>
+endobj
+172 0 obj
+(\376\377\0006\000.\0002\000\040\000R\000a\000t\000i\000o\000n\000a\000l\000e)
+endobj
+173 0 obj
+<< /S /GoTo /D (subsubsection.6.2.1) >>
+endobj
+176 0 obj
+(\376\377\0006\000.\0002\000.\0001\000\040\000d\000i\000f\000f\000c\000o\000e\000f\000f\000.\000s\000t\000y)
+endobj
+177 0 obj
+<< /S /GoTo /D (section.7) >>
+endobj
+180 0 obj
+(\376\377\0007\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+181 0 obj
+<< /S /GoTo /D (subsection.7.1) >>
+endobj
+184 0 obj
+(\376\377\0007\000.\0001\000\040\000C\000o\000m\000m\000a\000n\000d\000s)
+endobj
+185 0 obj
+<< /S /GoTo /D (subsection.7.2) >>
+endobj
+188 0 obj
+(\376\377\0007\000.\0002\000\040\000T\000h\000e\000\040\000f\000i\000l\000e\000\040\000d\000i\000f\000f\000c\000o\000e\000f\000f\000-\000d\000o\000c\000.\000d\000e\000f)
+endobj
+189 0 obj
+<< /S /GoTo /D (subsection.7.3) >>
+endobj
+192 0 obj
+(\376\377\0007\000.\0003\000\040\000V\000e\000r\000s\000i\000o\000n\000\040\000c\000o\000m\000p\000a\000r\000i\000s\000o\000n)
+endobj
+193 0 obj
+<< /S /GoTo /D [194 0 R /Fit] >>
+endobj
+196 0 obj
+<<
+/Length 1111
+/Filter /FlateDecode
+>>
+stream
+xÚVM¤6½Ï¯àHK‹ãoà–²i)9´¢•29ÐàîqBC èÌÌ¿O•ËÐô„Ñîɦ\®zõêÙ†'§„'¿<ðwÆŸö?|V&9“ÂèdL¤5,7eb…aª”ɾIþL<Ö½;wí¿À½Þ‘™‚I®“L
+VŠ‚vT»Lq™þJ ¤€Ec$n€½JêD1#sòþ¸×2Ím’­Üöè–¬°í97dÿ4Û1èbýJ.U½“6ý§:92L=®Áb„N§'"dÆ0+ÊXILú<øÉw'ÚÓilü#WÊ ®ÛÉ<v™HýN`Õ"mÑE¤5¤¼míÑѦÓò䚉"¿'ì]^¤n}ßÑ~Íäy™>l(wnÏÇ®Ü3lƒ¿# j[LŸ§ŽbØè)­ cB³B±RÇôÜp@/‹ôï˼»Lݧså[V÷gp[x$ã9–¢˜Êc¬/U`åZ ¯„Ið4‘\* ò?!Âr…£3e ×6y§¡ª§÷ößU(¤e€f;#ìŸü¸Ë´¤‰"j ¨…¸†b“ºïF?Nع[Œ¶E ZÐØï°Ø¦P¨†ÈÀáä«–üª®‰Ž{
+à€Œ‡e<_nðÿî 4n‚‰`ʘ¢„†<T„âgèV{r‡¡òuôhì°°ëÖ¡eq2°]fág„9{Ÿý‹kh:Cþ>x¡¡ŠÈRŽ@?a¹8 ÉâôHãú¸
+ºBÞâX]ˆV×5®æ‡cèhhe9ŸBð¾â! wLÎ×·†y.WÀó2¹óe²qµiÉ\Ñ“ˆ‡ü‚)UÜWE2(ÓgºÛáLŒ¯pØÏ@cMßPµî\6]»Å%0#±Yàf(Xÿ+­á°rrBj¹-X,r ¶Áö¢‡¹C²ÌQ¤çpä¸ÖëöÚH²´oû_„«WßN4=ý9òªVd‰žX=“õó9+à]³ !ÄÊÁ0Y–³Ã#çb#T§Ô¥¶p¸ç‹[a·zË´\€–´ðã
+„÷éŒOo 9TLi ÷ Jù E·xò8<ÖÝx\üˆÇá Ô2g\¨Fó²U°d¹–·jðšØàNhfÔB^³‘ Þi±8leÂÚô*‘ ä ±†f¾[F¬Ô†¥VÇ·ÏÚžýôtGþ,hfU‰Œ/=ê¯Q5§Ô’R‚eãbbwo7ü賓„Z¤%: Á8“ÿK4ew[>íþÀRÄ
+endstream
+endobj
+194 0 obj
+<<
+/Type /Page
+/Contents 196 0 R
+/Resources 195 0 R
+/MediaBox [0 0 612 792]
+/Parent 208 0 R
+>>
+endobj
+197 0 obj
+<<
+/D [194 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+198 0 obj
+<<
+/D [194 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+195 0 obj
+<<
+/Font << /F35 199 0 R /F34 200 0 R /F55 201 0 R /F68 202 0 R /F69 203 0 R /F70 204 0 R /F73 205 0 R /F71 206 0 R /F33 207 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+233 0 obj
+<<
+/Length 2024
+/Filter /FlateDecode
+>>
+stream
+xÚÝY]Û¸}Ÿ_¡>U.b…_¢¤ôH‹Ý ‹»Íú’ä±h›XÙrEyfƒ¢ÿ½÷’”F’5wѸ…DQ$ïåá=‡—4‰6‰ÞÜð¤QD)³BXJ£fÔ½?¿Ý? %(INX$x‘¤V»üÀ%M¤£<YÔèh}ó·³ÇïüþóíÍËosI!™Œn×å<ÉdIA’¬È¢Û2úÿ}QÈX7ÖÔûÅ’ç< {y·àlP)â4!þ«Ù¯êÝAµæ³©L‹Í¾,>Ý~÷ò[>´D¢%Íž èÙ—J´á õÚ÷ÎÅ ·äIšç0ˆë\šõzUëõzÆN
+³g¼ki¬ÔX{Ô¥/«Ö?Û­ÆB[µÓ¡Êt%:Þ-X>ò¦,–)ñívAã0D¥ÚV7èL“Â\(ÅBR¤éÀ‘œÅÊc†ˆUºÕ¾²Ñ÷é^`þ®‰w*j…Nü¤6Ú¹7íÖÚ©=~úÅòVí7:këÉPG N†EÃÆàóZ­4Ìã…ó§¥wZ5Æšýf±)ÕçźÔØÏ£‚õ0£ªò ÖM½ó%«ª€ð]™·ï›¨Uë Ä·Öù~pâËXüª}Ç0Pè  Á„K;r5àû‘¤d&nx’gi ):3QÃdBSÖ5|13R–`Ôd¤ÃÌP<g]Ëu € !âã¡1›­›œ¯è°°¿Ÿ±VdIÎ&Öìc~Óçúmõ;?ñÛVÊnO<^¦„Ä°3— ´$M'ñ,¯.Â>M2>ÃjvÀ<™ŽæÀòIÇ
+ïõý ,åŽ~0ÿÕú8¬´o…üÃêR7ænáôž,‹5Äî Vį«v[a=][£l`']éö!ìÃt)qvr †3‘¦žXЪ© R_¼±Æ+UúЄ–+Õ4• _\lpfwµmýDzvÄZ
+FUhj0¶hÀdgQøO÷饵2ÕóœÈÈÂajDž‘øÐÔÈkµúâ«‚jA˱¦Â§è~‹›BNïÕçn´º*nAõܬ°ÞyMWµ¯ö:rÔý×σÇ/°_Œ™ÐËÂGL<¢(­œŸ ìÓ”öÍm ÚÕ9ŠEúæžaó)
+Æ`|¨béþà]²úôÏ~kþׇ?Þ‰O3-ç¼uL(ÒÁTñ­ŸGó˜QÉT²ßë3ÈŠ„¢_BØ(öµÞ´ý òhùÍÞmçL‘„òì$‰mç² X/ûæ°…m» G¿ý¬j ]l¢š½ÇÌЄ9JvˆD^—¾ä–šd.ÒQN\ˆÁ»>hÐÓ ¾v@£Äñ4þ}¾7ÖñƒÒ‘p¬%]Æ…úiá·p‘Á©Q@"â‚°ø
+èø²Â]¾âß=K§À³Ddg%~`öaÏi .\cúâ×ÂĵèL»%*àDaÆ6€"A¡0zÞ¶y’Ò”WLU6Ы5¥q‰²Ï3[û
+—äq̱2T»Ëuv ]Jó‘p®›à‹Ú‡Ž.šŒÁF.3:Ú.«¼(4+úf‰#ÊÁs`^Fòr!™dX eÐã„e—¿À:pHù´Ø`
+7n|,¼3=ž€`3
+‡=1ª}rÝ– ÃÕc~õ^ûÈûzsÔö·þ,ùº ǘî
+c|Ì.¥ü¼¥aÇñ9„?Pi ½±žŸ²Þ3}蜤¿zøÌEJöD¤DŒÁŠL¸
+™]'J²…M ¼z}×û²§×bÓ«™“¦<!ääŒÿ»‘kÓ§„.›èOÕ/‘æ Ó)ˆ|¸ÏÕ&¤Û£<EÃIÒñê*é‰$$O×¼©‰(ó”<KÀ@ììÇcˆÅÆ®shO˜É©¼šáb­wXÑ i+BÄÁV¬›a¤Í$¼sɇ”ýÿ32ÝÓ€Ö»cÕše¸åÅ»¸;OÎÆà‰÷,8Åӹį”K:دL
+ŸËý€›j¹èÜtOrô DŸÏ¹¿1ÆÈouUvg´½mU¸…9A‚×&O¯¿DÅ ¹s7|úçv9¸tu¬Ç¿RÜ}kî[󹕓ü%q‘*Š‹“™:‹ìÊdq¦ô™I°è•· |ªÕfåÓ#x~Õd;3¶ø% u{í;ós‡Ø¡WL¤ÞøŽ9øøõœ¦Îg¡¼L«D¯Uï|&|¨&·vvxŠÇ+AµQfßß  ÓbI¿Bê;‹Gö̼¡èÎœ¯«þÜ(³ò!S7^¯mx}N®Áòü+Cþ|Ú8µÁÉÓ4þZVÄ;mño9µ9åˆLå•]<\ŠNÿ™rš¤$‹`êð¤Ý-Þ°í7·7ÿ'å?
+endstream
+endobj
+232 0 obj
+<<
+/Type /Page
+/Contents 233 0 R
+/Resources 231 0 R
+/MediaBox [0 0 612 792]
+/Parent 208 0 R
+/Annots [ 209 0 R 210 0 R 211 0 R 212 0 R 213 0 R 214 0 R 215 0 R 216 0 R 217 0 R 218 0 R 219 0 R 220 0 R 221 0 R 222 0 R 223 0 R 224 0 R 225 0 R 226 0 R 227 0 R 228 0 R 229 0 R ]
+>>
+endobj
+209 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.772 390.861 212.874 399.818]
+/A << /S /GoTo /D (section.1) >>
+>>
+endobj
+210 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 376.969 242.832 387.762]
+/A << /S /GoTo /D (subsection.1.1) >>
+>>
+endobj
+211 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.772 355.051 312.836 365.945]
+/A << /S /GoTo /D (section.2) >>
+>>
+endobj
+212 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.772 333.133 256.552 344.028]
+/A << /S /GoTo /D (section.3) >>
+>>
+endobj
+213 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 321.178 311.601 331.971]
+/A << /S /GoTo /D (subsection.3.1) >>
+>>
+endobj
+214 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 309.223 252.324 320.016]
+/A << /S /GoTo /D (subsubsection.3.1.1) >>
+>>
+endobj
+215 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 297.268 287.58 308.061]
+/A << /S /GoTo /D (subsubsection.3.1.2) >>
+>>
+endobj
+216 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 285.313 334.1 296.161]
+/A << /S /GoTo /D (subsection.3.2) >>
+>>
+endobj
+217 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 275.295 255.23 284.15]
+/A << /S /GoTo /D (subsection.3.3) >>
+>>
+endobj
+218 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 261.402 258.08 272.195]
+/A << /S /GoTo /D (subsubsection.3.3.1) >>
+>>
+endobj
+219 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 251.384 273.716 260.24]
+/A << /S /GoTo /D (subsection.3.4) >>
+>>
+endobj
+220 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 239.429 357.098 248.285]
+/A << /S /GoTo /D (subsection.3.5) >>
+>>
+endobj
+221 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.772 217.511 241.351 226.468]
+/A << /S /GoTo /D (section.4) >>
+>>
+endobj
+222 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 205.556 274.325 214.412]
+/A << /S /GoTo /D (subsection.4.1) >>
+>>
+endobj
+223 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 191.664 297.35 202.457]
+/A << /S /GoTo /D (subsubsection.4.1.1) >>
+>>
+endobj
+224 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 179.709 295.522 190.502]
+/A << /S /GoTo /D (subsection.4.2) >>
+>>
+endobj
+225 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 169.691 256.863 178.546]
+/A << /S /GoTo /D (subsection.4.3) >>
+>>
+endobj
+226 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 155.798 281.493 166.591]
+/A << /S /GoTo /D (subsection.4.4) >>
+>>
+endobj
+227 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 143.29 324.387 155.245]
+/A << /S /GoTo /D (subsubsection.4.4.1) >>
+>>
+endobj
+228 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 131.888 351.341 142.681]
+/A << /S /GoTo /D (subsubsection.4.4.2) >>
+>>
+endobj
+229 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 119.933 270.201 130.726]
+/A << /S /GoTo /D (subsubsection.4.4.3) >>
+>>
+endobj
+234 0 obj
+<<
+/D [232 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+235 0 obj
+<<
+/D [232 0 R /XYZ 133.768 652.752 null]
+>>
+endobj
+238 0 obj
+<<
+/D [232 0 R /XYZ 133.768 431.708 null]
+>>
+endobj
+231 0 obj
+<<
+/Font << /F83 236 0 R /F33 207 0 R /F84 237 0 R /F86 239 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+268 0 obj
+<<
+/Length 1989
+/Filter /FlateDecode
+>>
+stream
+xÚÝZ[oÓH~çWäÑ‘šÁsõ˜½H»h%T«•€7ž¤ŽµÚjµÿ}Ï\ìú2¶´­*5öx<sÎwîsÎÖ³pöâQè~1ügÕzf/Þ¾xôûÉ£ÇÏ)Å(DÌNV3a¤/¡|v’ÎÞ Áß|1cÁÉ™š/(eAY¥ªZ”s"ƒÏúŸªª,5ÏhPn›¬,æO^u›ÏÞ/çš/x~‡Ÿ-8”,Àr0<Åþ×(æ= ¸âi¹Ù$Š<«ÇøÊþ~ž¯I•%§¹ª‡ÒìCH©ªT¡Qk²ÄU,é]óß‚Wáx} Ž@Ÿ²<·\4ZÜMY]Ž7ãXF¬,Žï
+îÃfAŠ1#¤u!$$x£E™‘FAs6Ǫ­Ü —»FR{»ÑSwy“-–úê,©’%€éS›©2Šî //
+äÆ"ÿ¯’eyš%Å„æH°C
+÷»z“½ø=~.û®vŠèL±´˜‚FÅ„OÏ’bkP ð©Z% 2õOú––f´¤˜S4vΪ¬6ø1§,5ã>‚†¾ßÑÓ—1GØÉøØÑWÔ|§ê' ,f¢AV$à¬SUf§4™ ÒÈ·ió]ê=½¡ÞsD&/ß½¶Vj“·Bï¡ñø‘Uùn0×ÅP´Ò¡ï„@˜;,­òˆ¯(6‘ÇŽûðÑu9ÜÞ©¦±ìRžrçˆIÊ΋Ö­^>Ñ; b‹‡¥c›˜Å?`ÊÒlµ‚Wdü‹P±Ð½t@¼‚ ,
+Ë1ƵéôæÝ6Yº¬öt¾Ð™xS—Ê6m¾;ÉÛŠtLÃß_¡ä­RÞ¥2Î!˜Øà¢Ù´ xƒ ç?ŒKº ÷æË_À±Óª¤ºhP
+›Þ…Îq?¦¼Ó9MЇ‡u¦C©¡H%U~i1&’! fˆ1 I¯`mĬ•ÇXQc$cv…)¨µVéÚ§©àî®RM‹›^;OÓ£Ö׫Ò]øÏR$¬wyÕ
+endstream
+endobj
+267 0 obj
+<<
+/Type /Page
+/Contents 268 0 R
+/Resources 266 0 R
+/MediaBox [0 0 612 792]
+/Parent 208 0 R
+/Annots [ 230 0 R 240 0 R 241 0 R 242 0 R 243 0 R 244 0 R 245 0 R 246 0 R 247 0 R 248 0 R 249 0 R 250 0 R 251 0 R 252 0 R 253 0 R 254 0 R 255 0 R 256 0 R 257 0 R 258 0 R 259 0 R 260 0 R 261 0 R 262 0 R 263 0 R 264 0 R 265 0 R ]
+>>
+endobj
+230 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 654.302 316.693 665.095]
+/A << /S /GoTo /D (subsubsection.4.4.4) >>
+>>
+endobj
+240 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 644.284 383.166 653.139]
+/A << /S /GoTo /D (subsubsection.4.4.5) >>
+>>
+endobj
+241 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 630.392 279.335 641.184]
+/A << /S /GoTo /D (subsubsection.4.4.6) >>
+>>
+endobj
+242 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 620.374 368.721 629.229]
+/A << /S /GoTo /D (subsection.4.5) >>
+>>
+endobj
+243 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 608.418 214.881 617.274]
+/A << /S /GoTo /D (subsection.4.6) >>
+>>
+endobj
+244 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.772 584.563 314.101 595.458]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+245 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 572.608 328.207 583.401]
+/A << /S /GoTo /D (subsection.5.1) >>
+>>
+endobj
+246 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 562.59 226.919 571.446]
+/A << /S /GoTo /D (subsection.5.2) >>
+>>
+endobj
+247 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 550.635 252.02 559.491]
+/A << /S /GoTo /D (subsection.5.3) >>
+>>
+endobj
+248 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 536.743 333.547 547.591]
+/A << /S /GoTo /D (subsection.5.4) >>
+>>
+endobj
+249 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 524.788 334.626 535.58]
+/A << /S /GoTo /D (subsubsection.5.4.1) >>
+>>
+endobj
+250 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 514.77 232.509 523.625]
+/A << /S /GoTo /D (subsection.5.5) >>
+>>
+endobj
+251 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 500.877 367.781 511.67]
+/A << /S /GoTo /D (subsubsection.5.5.1) >>
+>>
+endobj
+252 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 488.369 354.746 500.324]
+/A << /S /GoTo /D (subsubsection.5.5.2) >>
+>>
+endobj
+253 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 478.904 230.074 487.76]
+/A << /S /GoTo /D (subsection.5.6) >>
+>>
+endobj
+254 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 466.949 314.314 475.804]
+/A << /S /GoTo /D (subsubsection.5.6.1) >>
+>>
+endobj
+255 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 454.994 272.498 463.26]
+/A << /S /GoTo /D (subsubsection.5.6.2) >>
+>>
+endobj
+256 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.772 431.139 295.358 442.033]
+/A << /S /GoTo /D (section.6) >>
+>>
+endobj
+257 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 419.184 206.994 429.976]
+/A << /S /GoTo /D (subsection.6.1) >>
+>>
+endobj
+258 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 409.166 284.121 418.021]
+/A << /S /GoTo /D (subsubsection.6.1.1) >>
+>>
+endobj
+259 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 395.273 238.265 406.066]
+/A << /S /GoTo /D (subsubsection.6.1.2) >>
+>>
+endobj
+260 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 385.255 214.272 394.111]
+/A << /S /GoTo /D (subsection.6.2) >>
+>>
+endobj
+261 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.63 371.086 272.498 381.566]
+/A << /S /GoTo /D (subsubsection.6.2.1) >>
+>>
+endobj
+262 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.772 351.382 198.983 360.339]
+/A << /S /GoTo /D (section.7) >>
+>>
+endobj
+263 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 339.427 221.383 348.283]
+/A << /S /GoTo /D (subsection.7.1) >>
+>>
+endobj
+264 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 327.472 298.068 336.328]
+/A << /S /GoTo /D (subsection.7.2) >>
+>>
+endobj
+265 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.716 313.58 257.471 324.372]
+/A << /S /GoTo /D (subsection.7.3) >>
+>>
+endobj
+269 0 obj
+<<
+/D [267 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+2 0 obj
+<<
+/D [267 0 R /XYZ 133.768 299.563 null]
+>>
+endobj
+266 0 obj
+<<
+/Font << /F33 207 0 R /F83 236 0 R /F84 237 0 R /F86 239 0 R /F93 270 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+279 0 obj
+<<
+/Length 2164
+/Filter /FlateDecode
+>>
+stream
+xÚXM㸽÷¯PN‘5[¤(JÚE. d»’l¦‘fˆF¦madË#ÉÝ3òß÷‹úr«§'¹˜4?JŪW¯ŠŒ‚C?ßE¾ýñáîþ§,r‘e‚‡} ãX¤& L’
+'ÁÃ.xþµéífgqØœ©ÕaoÛSunêæðeóþá×ûŸâ¹(ØÊLÄYÎÛÁ‡­ÝÛ–»ý±ÝÈ°¹ŽÍµ÷CÍ0e¹óéZœ7* ûª§æ 6^Âþz.ûÊ©ƒ6[•†¶:øÿ®zűm­—PôvÇ3E7}Æ)žë™â±L…Œ àÄlii°f·RŠ<ñ¶±gˆ?ïV¬¡e>È‚âÏ¿'•P‘?gÛêq]––‚z~á»(‰*:z‡uu¶Ü{ªúãÊ7àÈ(Õ¨Îpe"ÃCK¿/|,Qž ;¾[‘iD”M'»(û„) Œº¶/"oX p«Lfè$Â䩇¡}bV…›XáÃã
+PUQ¯mëÛ´<ÒPM
+!·½¯˜:&jå2*M´•Ow4t´õŽÅ”ÕÞ×ÎW.ùÏîÁ°Ž$B‹
+ÿ§à¦µuUrwß6'îÍR8HnšýZ¬$€VT÷û²±«t¬Q˜¥óªH¹NúqPͧGØÊúïï,تt5­Ï?%™,ÚUçÒÓùâ
+¦³RÐgjš›Ç¡L/¶Ã; ­ëº+›h>ý,ç$ܸü6Û¯s;\‰m_8µ//l»/†Œ6˺LÀ{Ô^©0SÚAI‰Ûêß7®B#t}ÄPÈ·Ë4ñ…R÷ú‚×ï)¸£éQËú±åµuLOY>+>ÁBB2Є»A8‘Ω«·¨q%ú¶³(–ü‹ÖÔU×/*±X[ZÓ; ‡BÐ=],
+Á[ç®Ý"°¢šß®¤Œcò5R‰D–$7÷Mq‹Û,ŠnE_ Øwˆ4%6ÒD‘î"ŽÿTÍQë,d†MûÝÚ¢ùjÌ¿¼ùÛÚí‹IΫ ~á1\O¯íÙØáCT§¾j qT¢4äÿ~ßĸÿ(ùŠÌ“-†ºfB€#^àŽK‹b®ºuý…®YDå¿wì¾_n¢Èåc>&é]M
+¥ôš#ßBÃ÷ÿSòßþéQ¿_ˆþóÃÝ'Ÿvåø`,U&ŒIƒòt÷ö}ì0 H‚‡³àÉ-=ai*´{{©ƒ7w¿ñë3È?¡Û¥G˜ÉJ‰È˜Y¶Æº$@ÚM錒´¤÷Üÿ¥çº‹ÎD¢Ù# ¿Ì¡é®‡U$è  ãfªïñÇ_­€‰I¸Œ´H§Gà_˜Æù= ÿEfïWÔS=^ÇÄ žXàŒü×á¹È²Ì_0o ý;ÃÐéQ
+endstream
+endobj
+278 0 obj
+<<
+/Type /Page
+/Contents 279 0 R
+/Resources 277 0 R
+/MediaBox [0 0 612 792]
+/Parent 208 0 R
+/Annots [ 271 0 R 272 0 R 273 0 R 274 0 R 291 0 R 275 0 R ]
+>>
+endobj
+271 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [159.18 579.318 173.902 591.273]
+/A << /S /GoTo /D (subsection.7.3) >>
+>>
+endobj
+272 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [332.861 536.407 347.583 548.362]
+/A << /S /GoTo /D (subsection.3.1) >>
+>>
+endobj
+273 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [453.237 485.802 475.708 496.927]
+/A << /S /GoTo /D (subsubsection.6.1.1) >>
+>>
+endobj
+274 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [319.572 374.156 478.476 386.111]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://tex.stackexchange.com/questions/646976/error-with-package-diffcoeff)>>
+>>
+endobj
+291 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [157.679 362.201 396.532 374.691]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://tex.stackexchange.com/questions/646976/error-with-package-diffcoeff)>>
+>>
+endobj
+275 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [398.414 362.201 404.876 374.691]
+/A << /S /GoTo /D (Hfootnote.1) >>
+>>
+endobj
+280 0 obj
+<<
+/D [278 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+281 0 obj
+<<
+/D [278 0 R /XYZ 133.768 669.191 null]
+>>
+endobj
+283 0 obj
+<<
+/D [278 0 R /XYZ 133.768 613.149 null]
+>>
+endobj
+284 0 obj
+<<
+/D [278 0 R /XYZ 133.768 577.023 null]
+>>
+endobj
+285 0 obj
+<<
+/D [278 0 R /XYZ 133.768 533.649 null]
+>>
+endobj
+287 0 obj
+<<
+/D [278 0 R /XYZ 133.768 502.784 null]
+>>
+endobj
+288 0 obj
+<<
+/D [278 0 R /XYZ 133.768 483.045 null]
+>>
+endobj
+289 0 obj
+<<
+/D [278 0 R /XYZ 133.768 419.942 null]
+>>
+endobj
+290 0 obj
+<<
+/D [278 0 R /XYZ 133.768 405.307 null]
+>>
+endobj
+292 0 obj
+<<
+/D [278 0 R /XYZ 133.768 359.443 null]
+>>
+endobj
+293 0 obj
+<<
+/D [278 0 R /XYZ 133.768 320.528 null]
+>>
+endobj
+294 0 obj
+<<
+/D [278 0 R /XYZ 133.768 305.893 null]
+>>
+endobj
+295 0 obj
+<<
+/D [278 0 R /XYZ 133.768 271.984 null]
+>>
+endobj
+6 0 obj
+<<
+/D [278 0 R /XYZ 133.768 231.131 null]
+>>
+endobj
+296 0 obj
+<<
+/D [278 0 R /XYZ 133.768 183.271 null]
+>>
+endobj
+298 0 obj
+<<
+/D [278 0 R /XYZ 149.011 128.717 null]
+>>
+endobj
+277 0 obj
+<<
+/Font << /F83 236 0 R /F33 207 0 R /F94 282 0 R /F84 237 0 R /F41 286 0 R /F93 270 0 R /F86 239 0 R /F96 297 0 R /F95 299 0 R /F97 300 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+306 0 obj
+<<
+/Length 2659
+/Filter /FlateDecode
+>>
+stream
+xÚÅZ[sÛÆ~ׯàôÅÔŒ¹Þû.âºM3;é¤õ&{Æ0 ’˜P„ €’ÕNÿ{¿Ý@
+1IH¢¹ž\-'LY¢šhejrµ˜\O¯ÖÙåL1]î6›p—} BdóÚ=Éi± oëu^…»â¶Î‹m¸ïät6­æ»ªÊͧmøô sùñêï 뢓r5 7¿¾»€|å?µ‹Æ 2|1cœ ôàÍšùˆæz¦( š(A§U6/¶‹pïÖç®é¶¨×YÙÜçõü’Ûéú¥côê­•3)bŒk/¬ºMçPÉÓ Ì)–·d/ÁÚ$Ó&}–<!Öt¤aMÉt›Ý‡,gíîìô.++o[÷ZF„2ª‰4¶eç*0ŒBƒFc$QÑùr9/²å2ÂUBaä†)qªØÓ;×èž½Âs¶­veæüížÍ4mÈnRBîö_a·ðÔòÉ·UVÖ>>ðôùr–Ù²(²zÝÜ`©3·ÊɬYØ@‘eVf[·š:‡µ¿„B{Y„ãçÌNfÍÕ³ùÀ„ÜU¼û[ºÊ®ƒ›?þ»3Ó®ßÜÉcÍbÜ®ºìh¯Èˆ§gƒ ìòAÏÁœ]órnËìË./³*<¥á‚t—›l›Þd±lœ˜¾‰?/ó@ú—ˆe8RuaÇFÄDDˆ„Pk%E V£‰0Ý‚êM¬J‰’ÃX©Ó|›oWG\a“ÛÜU¯¶”5ÅíîR©iZ" |`5±(oªa\deZèTãêÂ÷¹âºÎœæoöúÿÑÁ¨ˆ> Æ™”rúöÒÂveÛšr‹ÀÊöDS(âf:ßÝ4¯_†÷Ý/æiÛs°Ðg¶cg»Ù¢˜1¥Õˆo"¤æÞ–R‹œš NÙöšKWÓ¿¹Ò¤¦¿«]V½ï°ü¬|>Dp !¢yÁ¦YñõJX΂”ÊÂè¾òÁÊÑ êuYìVëæ!ûZWáÖ5w­jð¯ê& /n²P¢Óm>¯`h®ÌÔé[H^_ÂÔ5)3߸2]U1.!«è0ŸÀ@õôçpñ µp÷&xÕ½\›MPÇkã^¦E>Ïmö5½¹u³*¼pÖs„‡ Ö|Bßúp*ʺá >`qç4ónp î×yÓªúË×aù÷îKêþ<¼¸dP×N‰UŽì6u>kŒQ¦ó:+G¥âó&U‘Eî‘Ó¾=íqÒn;»MÛë¬Êÿ•…Öõê­d½¸Ðœ0n- Kù¾ V;Ñ$1Âú"Hœ$²ÓTRŸB?^]|iò™!a ‡™Í4›ß\\¤“¾Á6D$vrï)oÀš1»ÍäýÅ?xDMÞ ì8¡Èk.[¡”Ç„Rb±x¡$á<9%ÕeŸJ˜£c%¡j›ñ­=ú˳X>›ôDˆØ c ÏjŸÅ’’Äò¡5F:X¢¨™8H¦L |¢N…¤ÑÎ;GÏù?:ø5}sQ@"@Í9vå
+‘lOV
+ÄŽô†M¨*öz:±²ké,¢~oYKVíÜj•SÍ
+9PÙˆ¡Ê‡" Ö‰Ül#2aLžhD,e%1ì,Kb(;e©†Õc†:sÕpù‰b¤Vâê‘I#‰Fø€JK„•àI߸è' =4î@ÀS¢‘(šé¶ÁÅ|*QƒzDñê‚–ð³ÌŒ ÈKÇÌÜñfºKˆ4RÿPªM¦Ê㊠VõˆŽÕŽGJ‡PŒ-ž£tìY}{éà]‚G\-å(u»¡ó—ˆRFù4=Ç}X³=U¨;^$Ô³”³ˆÕeŠ0Óµ0E#®ÆLĺÄ*#œà:Ö0a&34L(€K¢›¿Ž ¦+…¸¸‘ÄÓ}oõ•ñžLÊZÁÈA}MX!Üþ.pâ,,€ƒû0+Z&û>ù)R25\<êÆ(W"ND6ãç¼£5³áåj§RÃÔ`M´ *MkKËh
+ñŽßjj3š(}¶¶¼€$EÛ¯Ï
+Á¨† 4Ì ¨áÂXt5”ÿO3CÇJ
+endstream
+endobj
+305 0 obj
+<<
+/Type /Page
+/Contents 306 0 R
+/Resources 304 0 R
+/MediaBox [0 0 612 792]
+/Parent 208 0 R
+/Annots [ 276 0 R 301 0 R 302 0 R 303 0 R ]
+>>
+endobj
+276 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [357.38 654.302 364.354 665.095]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+301 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [250.227 566.631 264.949 577.423]
+/A << /S /GoTo /D (subsection.3.1) >>
+>>
+endobj
+302 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [250.227 490.915 264.949 501.707]
+/A << /S /GoTo /D (subsection.5.6) >>
+>>
+endobj
+303 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [452.152 195.953 459.125 207.909]
+/A << /S /GoTo /D (equation.2.3) >>
+>>
+endobj
+307 0 obj
+<<
+/D [305 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+308 0 obj
+<<
+/D [305 0 R /XYZ 133.768 651.313 null]
+>>
+endobj
+309 0 obj
+<<
+/D [305 0 R /XYZ 133.768 563.642 null]
+>>
+endobj
+10 0 obj
+<<
+/D [305 0 R /XYZ 133.768 454.703 null]
+>>
+endobj
+310 0 obj
+<<
+/D [305 0 R /XYZ 209.644 363.694 null]
+>>
+endobj
+315 0 obj
+<<
+/D [305 0 R /XYZ 259.126 309.86 null]
+>>
+endobj
+317 0 obj
+<<
+/D [305 0 R /XYZ 215.27 239.365 null]
+>>
+endobj
+318 0 obj
+<<
+/D [305 0 R /XYZ 198.191 159.391 null]
+>>
+endobj
+304 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F94 282 0 R /F86 239 0 R /F41 286 0 R /F88 311 0 R /F87 312 0 R /F38 313 0 R /F44 314 0 R /F45 316 0 R /F72 319 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+324 0 obj
+<<
+/Length 3457
+/Filter /FlateDecode
+>>
+stream
+xÚµZßoä¶~÷_±}ŠŒfþE*A€¶h/HQôÒœ“>$¢Û•mõ´’OÒÆvÿú~CRZI¦×¾õƒÉ¥FCrf8óÍP|s³á›o.xhÿtuñÅ¥69Ë3™m®®7B)f2»É´aRéÍÕ~óSòí»·—Û”›Ärüm¥ÿñ3×¼Êý²‰dB0¡0(üãëâRÚä7ú×»Þ·¥'¯‹~ðCíõô¨/GÎRûÞ]Ñ• ±pOûåc›\·]`Òí«íå/WŶ¶XH®ÃÒ›¢{‰àɾìªß.u–Zi’òR$=»ÜfF'ßue<ïëÇK›&Ÿã Åir UQ/8èÀÁ&nAxÐ߶Çzïû×m]·ôð><;Vñ“yRÔoncë|²Q¥T‚±Ð©û–zirì˽ZßV;ÚC ôëë*leär[Öá•]ÛôCá§ù’VñÅ›TÏ”o9“©À“yX„-©˜Û‰d©Q›­aŠOù"»øËÕÅÇ íñØH)™V°&nAžnv‡‹Ÿ~á›=BLåvsïH0<f½WoÞ]üÃ[æbÆ‘—Îs&Ò|œs þà$*2&¤$FS¹ÇßE–¤,˲׬È0cÏ­ŒòÔ,×s“*Ël¾‘œY+&™*Oh!–l „)Ë„ÜleÊx ü1"y‹íåî·òD_Eæ)¶BÿyjÎëQ°Tê•I¦ï"¢³Ðø½F›–)aÎI/ðŠhóïA4f&(Õ‚z‹ÕæA·2²m ÕjX
+SF¢¨¸YòÕp2ù*,ÁHæV(·bšÏYžgþhæD.@¥ó…~0ñJ?$×°HÍ#¬°gH™/µ²•É×Ô×£­-ø*Î8—3¾"²y⫲ü1º‘\ØÍŒ(xŒE¸0ðî”LûÐ㤛­Â‰ä
+Z“Ðñ(³·pppÚJȤ<+z=!FÔ½õ?˾ÚÃE –ÃÒô´Å}dQÞ+ Šfã‚eò$Û“\«‰‰sÄX\p¿è9÷‹v_6­s¾Ba1"y#¶uõÁu<ýÇcpÀÕP•?NRB f¸Y†„7—V%]‹øª´›wou­Ïþ¸ZŠlJÛdWÔ»c}¤pæhÏ®s=½¾CÀí'jÿàPîˆÝmÑT»ÞSL/‘‚4IöMq ŠHÄÚµ‡2"Y©Yš BdQÙ
+ùTAË’ã Ï ™‹(ŧCô¹qaË•?s¥¤²÷¿×{vñ72X,Ïó‘õŸ£skøM¾8 ŒL“ùs–q5“ÈVÙä1â_)î{ii ÎYÿÊq.ósþuäOl¸XMþà¦`wƬJg®j#4Ó!9@FÊȪSÎtúºU+–™ìܪSÁx,Ví'üÒà°LÖKþ„è·°2Rb][Ú*誓[ý!"
+Ìù!
+j
+$†ÀGZ
+yÖY¼
+ç*²]㊠»Ô+ç…sA­Ut^ ¬§“›åÄ+ñe’™üUâ ¹Äù¼>A~f.¿‘}
+@Aöœ&Vsì‡X¢
+o›ñD}ŒÈÛ—‡æµ—‡ˆ,°cï…ÊðS¯„1ßâÄ xMØ
+D1ÐŽZ¿8§~vN*ͪæ4c]5áÑñηã;…oz
+&MãëQÿÀ è*É¡òÉcÛ9D¨|qÕM謀®Åv”‡*cOŒÊ¦1¢¯±R*ðc±Û•5­Ú垎KïÛ¾‹œ®û®À7â ©\¨€Ô·ðš#u÷Rµã·Hˆ!ÃðÈ$›!“âÐT( äá³üóõ*ËÏ"6mÜÅ›ÔðÅB,Ãí*…eF›yÊ÷uüJÊ9¯ÚìcÛÄá§
+ñ û´Ú××ìS¹{ºsWV”J¥¯Ù'²ÑtQ¥ü=‚”³ ·Ø
+y: «ÔÕnN[Ùl=îÚfL›lDgÛÔy–h–¦,–ÇÒ}=gf>ÕmôîGi Nî§Ûæc\©4s |ˆàŠ±™ÛWi@3%Ïi@¥€OV<£¹sÜJW9¤lQ39ý{çÈž=i±Ä|U5ûôCg"éÀ²d´ €1§êW‰ß¯Å{ºÇAt N£7¤šBˆLEÊI.?=½N×ÿäok{³«|– çHìN¡ó¿Þ‘r×¼ó…"eŽS¼ô}?’Ï…[w3U&‘¾qáYÑ7!TäóC×~hŠŽvé*©L=áì}u}½kËëëX”¬†¯,\\þà|â[ô~BÐñ‰1@zª»Pr_uÐpX%’p,²Zß…ê
+%Ó·=›ŸV\¦ÏOÜ/*Z¹¶÷¬ÍX~¥ZŒ£oB{Ä{]X‰ÿÒ%R¶jJ*MÈÌ—&¨Ýù¢GúvOnÝlîT1šçâ-ŒAJqë2NŽY0uê”}Áã„êÊǪ×á ÖrÚïÛº&-ûÏb±ù,¸ìÉJÙxÛôe¼ tå*•ññÎð¶¼÷#ŽcÈP°vz”ú¦½ŽY´¦…|E§HOŒšßzfYÀc ³ï«z’¯{ÒúXÇù’Áÿ졇2Yl—®w–6oÃ¥UºŠÖTi1¹ð
+ð`¼Ù?Är*ÉòV·y*Hו;TÊö0 gìØì¶Á|2äÏr•K†{—5’¢O8&~AP†™üS¾ŽyˆðÐîvûÉM×òûÆO…í»ÓÇÞx%ð6|°"í&²{fWBRL¯¶å®8F5¸mÍ‚%,›ÊwzRÏ@ÿ¯XH‘ί„Ç*Ê@o§BŒ;å¥ÑÌT.€ÉD†P~#T‘±¯)Gè rfµY†—?NÁ‹jž :mWÝTî>PYµÐpndU³«î:ÅÿZqq1d–ƒZï4OÜ]½Œ¶t=¡pÏøw«Î48Üÿ]#fÚ
+endstream
+endobj
+323 0 obj
+<<
+/Type /Page
+/Contents 324 0 R
+/Resources 322 0 R
+/MediaBox [0 0 612 792]
+/Parent 208 0 R
+/Annots [ 320 0 R ]
+>>
+endobj
+320 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [289.97 212.763 296.944 223.556]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+325 0 obj
+<<
+/D [323 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+326 0 obj
+<<
+/D [323 0 R /XYZ 214.009 617.938 null]
+>>
+endobj
+327 0 obj
+<<
+/D [323 0 R /XYZ 212.073 537.49 null]
+>>
+endobj
+328 0 obj
+<<
+/D [323 0 R /XYZ 297.43 470.697 null]
+>>
+endobj
+329 0 obj
+<<
+/D [323 0 R /XYZ 240.445 379.845 null]
+>>
+endobj
+322 0 obj
+<<
+/Font << /F33 207 0 R /F45 316 0 R /F41 286 0 R /F88 311 0 R /F87 312 0 R /F72 319 0 R /F38 313 0 R /F44 314 0 R /F94 282 0 R /F76 330 0 R /F99 331 0 R /F84 237 0 R /F89 332 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+337 0 obj
+<<
+/Length 3056
+/Filter /FlateDecode
+>>
+stream
+xÚ­ZKÜ6¾Ï¯Ð!@4@š_µ‹\¬³Î%Øõ
+'-*ŠÅé!T+€ˆ0²îaÞ•Ä°øÐ ¾&
+dŒt°­Ï÷0ƒÂª:ñrÁÓº"‰Òˆ\–ô%á
+kÇ Q†‡`¾˜— Ï€aÀù£"¤j‡Â~ß´WõüRþYuh†Ì±-º@ÞÁüŽœYB¥³mX+l$䚦Åiè*„±L?\Ùx *•ù€Ã¥
+".nÞ#,±;sµ¦ÉmxŸÌΊº)Q‚‚“íjÕC¥½ ˜ðŽÂ(ÅGå1ÚcrZ¬Hû¡S â Î5¼p•yÑ0lìx…DK¬ŸÕPÊB‡]©Á äy²ç?ód<ýÄèF¼ß¼Íõ¬´Ñ rÌxZ/S¯åpêK¨ÏÈ}Q8“·7¤XùU,ߥÀŸÇª®
+²)cG7€" ÈqïÑ>íÝ#_¡·YÐysÄ/ÕCu9s‘‹7¶E½=#,3ç8öÞæcX|båu±r¶çöÓ 4õ!Ñ÷ÓÜŽ8 -DŠLDz‰ÜþjªQåxԜݷôšw ‡mÎžÏ aâÌKMö;ÝÔ§›“©Oimá›–ìJ×8Öc^2£9CLý ñ[ð¡äj7Z=áF¶Ä°ä³Õ%\·gõøô´¤g[ \ÕØjͨ2Þ¹.Ã)zÀ\š’x¶kF¤u¥§‡$•Ú|lÅøp€yí«å‡þ°®s)äï™Ré¯ÖöF$Swî…¾m.Rõ9»Ëz« UjÎΟ6 ±ñôÔ·­ë²æ!
+™f×ß*õkß*ŪGAfù륅vòþK×åu¸vÃ*ýo¹í}×+©¥<½›½“Ž«\1TEíßp“Öè;~"ÍRkC1FÅ+2ôaV>SyÒÑRÃ…®a‡tìc=µˆ”ß*8“úõ¬ 3aÜU¬DEoÉbBÄ0‚Êe-…Õ³Rd6BzÊ€¶¨Az>»´ªwÜüF5N@ùcx'›½ã¿(Œ–ñÏÂß05ñûíá^g¦\]Ù —M¡à“ŽI` Ú´]šùEÕ…V}24°\uÝ9tþ§ÿ1¬°abadÙ?tôAÊ̹Z$f‚ÑÂþ\O,—Èòùô5›{¹ž®[¶¼_êbø¢ø¡8>f×:þØ`x¿
+endstream
+endobj
+336 0 obj
+<<
+/Type /Page
+/Contents 337 0 R
+/Resources 335 0 R
+/MediaBox [0 0 612 792]
+/Parent 341 0 R
+/Annots [ 321 0 R 333 0 R 334 0 R ]
+>>
+endobj
+321 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [286.675 582.879 301.397 593.671]
+/A << /S /GoTo /D (subsection.3.1) >>
+>>
+endobj
+333 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.165 400.255 256.138 411.047]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+334 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.926 299.699 444.388 312.189]
+/A << /S /GoTo /D (Hfootnote.2) >>
+>>
+endobj
+338 0 obj
+<<
+/D [336 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+14 0 obj
+<<
+/D [336 0 R /XYZ 133.768 569.228 null]
+>>
+endobj
+18 0 obj
+<<
+/D [336 0 R /XYZ 133.768 333.586 null]
+>>
+endobj
+340 0 obj
+<<
+/D [336 0 R /XYZ 149.011 138.182 null]
+>>
+endobj
+335 0 obj
+<<
+/Font << /F33 207 0 R /F41 286 0 R /F89 332 0 R /F38 313 0 R /F84 237 0 R /F86 239 0 R /F88 311 0 R /F102 339 0 R /F93 270 0 R /F96 297 0 R /F95 299 0 R /F97 300 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+348 0 obj
+<<
+/Length 3021
+/Filter /FlateDecode
+>>
+stream
+xÚÍYÝœÈß¿‚“N2+™6ýEƒO~°¥sâ{Kn.²-™˜bæ€ñî&ºÿ=U]³ìÚÉ]”¼Ì4ÕMUÕ¯~UÄÁMºˆùsuñâmj‚Ld‰J‚«m Œ‰6AbPÚWEð>ü µyYeÃâþ>ÕvK‚û;îàìýxùñê§ou:›XÆNd*…eý”¯hˆ™¯ˆ8ÍÆb+yŒœ‰œ™uA¤‘jIc‹ûµµ™9_o>—”"ƒWáÌ|ž‹¯.~½ðfÈ@ljH‚D+‘f6Øì/ÞŒƒº~
+b¡³4¸õ÷p@‘:Ü~ü|ñºÚÅr<“ÒöOëÝázT"v6À™yHÏ.S#²ÏnEb Í›â2ÒZ‡?öC}OíM^×Ø2á°+IôiÛ囡j›gô\5ô?쪞ZåÝ¡+û†ÐsN3Õ‡Xë²+›K•†C•×¼F{ „ÞdSq¯ Á>A³^°ezsà=«pG]IM¿²…•š¥$¼Å‰rü¹§ÞvK_ªò¶jnèáÁ®ðh//#“ª0§¥¡‡ŽvºÃÍ%.,Žœ·­íl0n;RE6·TéÀI&S-Ê®úÂéL[j_Øtd²8l›’Ûcãµò|Å>Zïni
+mÍœU]F2q«>$i‡ÿ /:gq©HÁô-˜¾õSð ¯ô“<N& ¢$°±ß‚ÊeÂÙ•{¹Æä¼j•öZVãd”2—2äöHÛèÉÿ§ù?
+€ ÉÑçÕ)Ò’°É÷ãdmwö¾ç.8úŸ"B‹Ó’+º
+—œòË>uÅ7éñ×c^€‹1FÁ}.œûê߱ƆHÊ\¸«Jxá sV”s¾n’’uò¾#ÑÎçÍóá¤ø~S -ï6u¾Ï)®`Ç>ï>¯’BK’“Ã|·NOOÑ™Ñ ÂÌ´Û’¸†06i2ÌIϤ¢¬«}5P‚ïëÌdúM!Î RÆjI* ÅÙA¤ÆœWÉø)+F"¢ÇSüÍ«áˆI¸ÍXŠ0
+‚}Û,Ù’„#EGRQö¢zêðX’Ít裗ñ`XñFCl¢1®˜¯®ðý¸ÞVÄ“•ÏH„Ö1%DøÕœ–K6V‡B‹Cœ ÈÐhzj"6³´¤­wkÀ¤2%;]ôTI\£H<táî›v¿÷úL
+ôÍU†íaô ˆ9 8CêIÂV-g1 øúX•×¸Ýr</Y.ôÅŒ´“ë¦[>–:Þîª1Ðàã&Ç*VoC&‰Ð§|m̓±pOÑâtZZ i‰jÐj æ®„d­§ç¼Y+ŽÅ1¸÷¤‚cõ‡K+Ñ,ÒZø)V5
+*ƒÔç1Ûžœ„; «Lp%€©=K¦<7ÑÖ`O˜Ï€ îuO­ƒ÷ø¢ÝW Ç p°Ü ªùŠ ú0}J€ðR÷-I8Œ;¶¶ïç†ã{nÑ,*¢;ôÒ;ê˜GÂæÙ°¦¨r
+;ù 4UeB%ÓΙž"ü*.òHÀ$þ¶ 2¢•þ *<åÝ ElH=‰ÐÖJqã1ß1—ˆf+=ÄÜ“cLÚ4¿ž¾@™ŒŠÈ &µöÅ”K¹i’…§¸Õì l?– ¹ íEîˆobð"õiÀ–†Aè*¼Ô…Õ~_°^éù¼€¯|"ô:÷˜8ðÑƹÓ+cŒ©psÕ@êÝ|ØÊÌãˆ|œÚÿÃ-ø‘›WÊ·CÙ­ízúÁß;ðëãü¡ä<3ÿí}~!³"cÞ¦Çà„£‘ð۾Ƹ繛|8vy½Ì‡—ß µ.IÁ•Áhå“…o©0©ZV¾³‹ Î1Áú™‡-å¬8ãlà`~±Øâg +±ä“ŽßÞ5„ÿ\²
+nP¸±hD5!HÊ‚™ð—È[~†¦ÌŒë36øû±Œçkj;G"½‡ôÝB{¨=µä(*3ÊÔXy[l?Ó°ÿx¬Àïy^pßô^z®“ÑÔ˺
+endstream
+endobj
+347 0 obj
+<<
+/Type /Page
+/Contents 348 0 R
+/Resources 346 0 R
+/MediaBox [0 0 612 792]
+/Parent 341 0 R
+/Annots [ 342 0 R 343 0 R 344 0 R 345 0 R ]
+>>
+endobj
+342 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [376.452 443.728 382.914 455.872]
+/A << /S /GoTo /D (Hfootnote.3) >>
+>>
+endobj
+343 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.607 328.368 185.581 339.161]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+344 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [250.698 248.114 273.169 260.069]
+/A << /S /GoTo /D (subsubsection.5.4.1) >>
+>>
+endobj
+345 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.935 212.248 201.908 224.203]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+349 0 obj
+<<
+/D [347 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+350 0 obj
+<<
+/D [347 0 R /XYZ 149.011 129.962 null]
+>>
+endobj
+346 0 obj
+<<
+/Font << /F84 237 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F33 207 0 R /F94 282 0 R /F89 332 0 R /F88 311 0 R /F93 270 0 R /F102 339 0 R /F96 297 0 R /F95 299 0 R /F105 351 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+354 0 obj
+<<
+/Length 2162
+/Filter /FlateDecode
+>>
+stream
+xÚÍYK㸾÷¯Ðž"ïľDQ ä026Á4ÃÌP[r[[òêÑ,ö¿§ŠE½l¹ÝØ 9™"‹dU±øÕW4üý†ûß¿ÞݼÿhU°ÄHÜm¡‹ L3©¢à. >‡Š &Vk!"þ£xHۮΛÛÕ×»ŸÞTÓÙ<X Ë”MhÞ?뢪Wk¥TØVø«ÃG¦©£ÚÒ|«'óa2Ñ°Œ›žÛí¦Ê·Û…tÌx¬zÉ?/­Å8èá¾¥q¹Õ:’Q¸}^Z1b {kPXÚ0ë6ùJ„ißîroNñ°[ÁpKŸÇ´¨‹ò„òÇ"Ã9åJƽ@QÒŽZL}ÍÀ£à±˜E±ñ&¯„‰CgðÍßîn~¹ D Ë,i.E°9Ü|þʃ 
+8S‰ žœè!œÙ-ߟnþEg<ÛwX‹ÇÌ$±ßÙù$üªÁyViX:gÐ9f‚ÇÁZJ¦…_ânW4`®Qáú&u2L©ï¾{`à~%Ã+«Âº:Pÿ#ÊæuST%ÉkÆid1DàŒXdÅµŠyØtÜpG[ìûhöªÖ9õëœô*Ý)çÙí‚*k)3‘w–DÑjŸ)Î΢nèýêÕµ“åbÃ"mzuÿâærHóH,••L¹Xk¯Pv!œ ø&2pŽ&z5œ L®‡Saõi4I.¢ÉžE‚ \86Åé1çÓ1ÝÐõ‚ÀÙT‡CZfÍuø¹ƒÛz~j’3cÞ„1‡H
+"˜¾¶UWS«)Ç=
+¾pΗ®Ü„áÒˆ…c†ˆõtW÷ª•k! K„q5±µØÿOm›1³•_°CØáÖ¤à›­?ή?Ì>ÒÒ§­ÃŽ½Åx¡‘û:Ýäc‚£-ç¾Q& Þûõ·½0
++Oaë²{¥KIî•ÉèߪÌÿ(ÿŠ7ú÷õ8¤¶gqÒ>U”òív
+?=%QÒ®Ú¿”Õ®Ö"I6ãarj
+Å,¦¾`µ1pé$ÀǼÊA<P̈hösöÃ%¤Ò‰Ô»¥J”O9ÐýóÂB@å#9ˆ\_d³tvL‰!5a1˜Xˆg¬²³‰·4Å$]12¯°€Ïk«Ö@øÍ7G+f/ ËáŒë õ–p†8‹åI<ßβö˜½OÊB ÞÆtÅ„Œ/…?þêìxþ|wÿünƒüv¥B
+.´øÞ
+q-8TP´¯…è·ýËÃy‘h€
+YõVhŠþÏ I]ƒ&u šÄ•Ó›Y}»Œ]–Y|Î’Šiá}øy­ ‹ºírª\)}]Ce41ß»_ŸïIÐU/Ø;«q ÃÝ”X Ò$áj&'™¶¾gëw/ó^¤üS»Tí4V“š¯ßåô‚†)ý,o Í®êö¾=”’nâ¨~îÇ+¿fYµ€Ž.º+ö Ç)Ž“JúÍÓæ…Z‡ÔÕ
+;Nd ½H¾%ž ßá 2Ú|Ÿ·žÝzš;u¹ëöK#:ÒsùT¶Î
+endstream
+endobj
+353 0 obj
+<<
+/Type /Page
+/Contents 354 0 R
+/Resources 352 0 R
+/MediaBox [0 0 612 792]
+/Parent 341 0 R
+>>
+endobj
+355 0 obj
+<<
+/D [353 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+22 0 obj
+<<
+/D [353 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+26 0 obj
+<<
+/D [353 0 R /XYZ 133.768 544.285 null]
+>>
+endobj
+30 0 obj
+<<
+/D [353 0 R /XYZ 133.768 415.265 null]
+>>
+endobj
+352 0 obj
+<<
+/Font << /F83 236 0 R /F33 207 0 R /F84 237 0 R /F41 286 0 R /F38 313 0 R /F44 314 0 R /F106 356 0 R /F86 239 0 R /F87 312 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+362 0 obj
+<<
+/Length 2410
+/Filter /FlateDecode
+>>
+stream
+xÚÝXmÛ¸þ¾¿Bùf71ÃWQj‘-p9äPôÚÞ-¤€Ö¦wÕØ–O’÷Åý÷>CRZI«}É]€õRäp83žyf†<¹LxòýdüÓùÙÛ÷™Nr–§2Mη‰ä‚Ù\$©±L*“œo’‹OBéË•‘ÆO7åvûQ~¾» KïÆ;¿ûO7 ëw·¿ÜÞS|^~>ÿáí{• î¹`©ÐÈßö.è¡X)ãYÞ|âFD1 Y )˜á6Ya”™ Ä›@™YðÈ-î¥aVå‰Â¥QA9ÃN3æÉj@uGTgߟý|& OD"­e9ñV0×Ézöñ3O6Øü!áLåYrãI÷‰0LÌvÉOg –Ý'mƸ+)™²y”þvF|ÁY–%’e6‰?2jÆt¦ cnÒ±Y‡w
+ÍŒÉÀÚêµÆ**ž3!Ä‹T„`6BÇž×C¡˜Î- ¦—fÆ⊎âÏý&ât¼æL®ÔÈ·²Ìû(&,Ñî7Wåz)³ÅÕr¥”Z” z±¯jVÜÎ]"iÃB[EZ»‹DwôáÂF{zRzª“8Má,RyWÏ;q¾*L_ýïÂ&TÉ®ÇÖ“aš½ Lí³Qš ïvÆh¦ŒúMQJ¬R°Ò@ö-¢T>¥ðt!Ë”œX+Ü—1a ™C›§¢‡3`VbRü—öÉ迧KŒîëYüOzd‰ÉBúTòëM¹|*b]fçÍ?X„‚z±Å®½ªN—°©@ü.ŵW®ߘNùЩs  QWïÝÒˆEq(—3·jØ$ï#Àø®qÍÎuwOXç
+¡_µ ‘§ÒŇ6¬wç\ÑÜ…Xinʶ‡|_€…
+´t³¤©óð­¶D¸Á»¢K‚‡úUXØVõ¾ ÓêÐAQ$®KŒ0ìMønÊýqÁë‚xÄyyh\Ý’aŸ:wÐǯã΀sÑ´®.›/,d
+
+ë,dÒ‰£kÉRÞÿ›äÓëÊ¡†˜B˸íÍ„ÓJ.þ\~ñ(E·¤
+LW4”];ç·Ú°7h=/ØXß º¹^š„C—GëSDèÂ&éâ6ˆ8-¡ÙñŠ:ÿ .æÀ‰@ÿÑĈ _ÐyòX
+ÝveºøKÕº@Šþ²íf”Š–»ÂR½+ûz@I@›
+™ eê_¼^ð –¾èA,}´ÕF³ÂŽIãí7tÚžS.Á‰C…ô™NÞÃVüïùAGÈ dÐ\t&º‹-nv~9{õD&å›õUÊ´¢óÙ"Q§(î½ëdê¯$J¥‚²xXÙ„v‘JDúlvå1ÐPásÓû[ú`•]PЉ{Јi4U¿0 `‘4`܆ƒ7ånf‡ª Ôë5Ö@RÔvLÔä‘ÀÂÿ$ã&úßçjEÀ5u&÷TçÞÔ†_>04Aaý»Áú`ùŸ0”¢‚#†«ëª& ÚItœÅz“†¶C 3Ö>¬D¥îºìðÑÖ®u2jâö
+¥\vùG
+>94úG!w‡MäÒJÈ…è¤LPtëD0÷ÏB,¼KÑBsºhÖuyl»vœ¢TÆDÚC_ÈAµÏA‡ØD=ô1Ê%æ¾ÔŠý•¿ý*ÞJ~Œj†û^B‰ÞiSÆÆBä¨ÌÄÄÙÖeZEW¦e­ùl…Ñ…›ºRƯ}âÒDM?üôc˜d¿• 5UâpØM3=uÝ,¼$åþ*<,÷aÉMéstÚ}X ÍÁwG¦ëŽ@ðuÝ‘gãõ­8\G³Û§]¶G=¤¼l(T3³ø±&w6¼{Nljøð”©EÜ:5ËXwLi¾é– Óû ö¡ŸP; ä3ÝÑ8`FP(Å,œShä
+…GÚõù>Ä ÁI¢&Ì7ÐCqS$XÞ ¦!˜ö‚¢¨¡ìëßhÓ?«ÐÄÀwÕáÒ£m®×îèÙÎ÷Æc7KSÿȆ“Œ§±Æ˜`*üê¿©W#I
+endstream
+endobj
+361 0 obj
+<<
+/Type /Page
+/Contents 362 0 R
+/Resources 360 0 R
+/MediaBox [0 0 612 792]
+/Parent 341 0 R
+/Annots [ 357 0 R 358 0 R 359 0 R ]
+>>
+endobj
+357 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [204.399 407.71 211.373 418.503]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+358 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [240.479 280.735 246.941 292.672]
+/A << /S /GoTo /D (Hfootnote.4) >>
+>>
+endobj
+359 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [246.783 160.448 253.757 171.241]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+363 0 obj
+<<
+/D [361 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+34 0 obj
+<<
+/D [361 0 R /XYZ 133.768 337.425 null]
+>>
+endobj
+364 0 obj
+<<
+/D [361 0 R /XYZ 149.011 143.362 null]
+>>
+endobj
+360 0 obj
+<<
+/Font << /F84 237 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F87 312 0 R /F33 207 0 R /F88 311 0 R /F94 282 0 R /F86 239 0 R /F93 270 0 R /F45 316 0 R /F102 339 0 R /F96 297 0 R /F95 299 0 R /F105 351 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+367 0 obj
+<<
+/Length 2357
+/Filter /FlateDecode
+>>
+stream
+xÚÕYMã6½÷¯Ða€•‘1[¤ø¥ æ06‹ì%X¤oVcËÝÚØ–#É™îä¿ï+’RK6Çݙ؋%Q¥b±Xõê%÷I–üí* ×ïn®®¿Ïó¤`…:¹Ù$<Ï™Ñ6ÑÊ0‘«äfܦßU«òØU‹e.³´7ݶìüí¦iwaðÐVåº;]WmýûBé´ìq6 ãͱ÷7M[ÿ»ÙÓ«¾ÜnŸ6OßÒ+‘ʶò/ª®
+š1¶¸»ù;±äœ*ŠÉ7UÛVkHåyúPµ•¿ë­÷ëzUönT¦¥<,–PßÔ~?Ölüµ‚Ù*-·GXÞìßѤ£÷†ëõ÷VN](˜Ìy²œqc¼aoK%Tú3ÏåºÞl>ÓÍvï»:Ü<þqýyòpûøžÄõµ¾ócohzl˜ÎVhf¥„!n¢÷^DN Ò,³Å ðs¦xLM΄Í'BYPÄ'B9³F 2ëˆ2e õq#ÝúÎu‰œÅhÕãû˜:n˜|‰ëá…—ÿÑ¢˜.äùò-‚œ¢ãÊ–œØ4ÕdÍDJ2Å퉧gj4ã\?O•s‘%§ª,V?®L«§‰(™ÔE21ˆ¹€_æÂÂ
+ [ Æmˆû‹¥”6õ©Õöñ­i žn+ÿ@»Ú´þþŸ‡Ú‡}õç štUîýÛªìj$¡»ÿ1“V«fÔP.Q¾„ª]ÓWþûMÛì‚ÌCnþó}½¿ETŽÕ}SSG,™Y¦»ü4:@ nÖ5V
+—畃 “ö59!7*]yƒ+¼Õ«:€É»h,eÌŠâÿ!Âg >‹ðEâR8LMx›ÿ]x›it U…‰€=íq]ù7ûÓC³õ`)„bÆåÃ$:VÛc×WíÊ»§Å…çfÛùÐ7÷Uÿ€Ø©Z2µ†&ÈŽç,gX5ç*K:"¶s»U[ú.²LªO–å6¬òTzRwþŠ<{òw.©¨Ò¬×áÆ_ºcH 0ɉ´¿œ”WCåU(9Š=W=7鬤yÉrPL_Zøô¦ymìbE·Ü‡rë·>]Ãõ‹«0p¤'EŸœ‘Øééwy Ã×Ǫ{U­5–I Ìj-ÍÛy½õO®êN
+ìãmv÷ËçPcÅÏŸÜE35C–å/ÕY{^hfɼäB_‘ÉHJ¤þE¤Ñ®þzsõÛ¥^–ðDXä´)i436Yí®nï²dwØE–6ùä$w‰ÐLe¤j›ütõO çhV|À© ì[¿ÐHÍ ³ð¶DØÁ\‘£€&>l_5|V¹s‘pEpò'aIx
+%Á˜ìÜ ëºëK¨7±®<0Ë©1ËøhK:‡¾ÞEµIfõ¨­hË™*Føx{©¿
+¸¥¹äç—kÍ4ª³Ì@áq½
+®TzÝÆ3lÓ©ÉÁLL:œCÎà \_‹q—xd-Sj¤´C…é¹7&:{©fÎx‹û3bøÈ-(¼s÷ªÝA°Íˆ‹*Ü>mŒ•£8(ù5•r,èêaJ>õø½\¢e`•
+d/‚¯OŠÛ¼¿TáZŒ¥9ž­VsGËõìÄ\RUÌOÌp,)þÄ’\¦ïm·¾_<ñ¿F•}ófJP®ßDŒ1‚q>‚Ë¡õGÐë#:M$xŒ48âôèùŒ{ØWpsR’ÜaH”P0e"¢òü¨vª’@œhâ
+endstream
+endobj
+366 0 obj
+<<
+/Type /Page
+/Contents 367 0 R
+/Resources 365 0 R
+/MediaBox [0 0 612 792]
+/Parent 341 0 R
+>>
+endobj
+368 0 obj
+<<
+/D [366 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+38 0 obj
+<<
+/D [366 0 R /XYZ 133.768 565.289 null]
+>>
+endobj
+42 0 obj
+<<
+/D [366 0 R /XYZ 133.768 384.13 null]
+>>
+endobj
+365 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F88 311 0 R /F87 312 0 R /F83 236 0 R /F45 316 0 R /F86 239 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+373 0 obj
+<<
+/Length 2551
+/Filter /FlateDecode
+>>
+stream
+xÚÍZmoÜ6þî_¡~ªçeø"RdŠâÐÞ]‚W ×ó·$À)»Z[¨VÚè%¶ä¿ß ‡ÒJk­í4=à¾xùÎápæ™g(óè:âÑë ~¼ºxñÊšHæ´–ÑÕ.J±ÔØÈè”I¥£«mô&VL¯ÖBHÿÒ—]±Þ¬”ˆo²&Ûty³Z«TÇWFÅYSdï˼¥¦zG¿Ûâ-W*oò
+§uEÖuµzwõó‹WJEŽ9# nÍ£µ°LYG›þý8MZšV]ÊÚÅþØx×W¿–oôÛAkFÕi§÷.rO]…_ñ#þ©KøIã|6u=á PšÆO³Æ3x©½úHêáxkåp m¥°ÕÚ(¿ZÙ$®ê/ª¶ËªM~¹Z'"‰»šš·NžuÙ‰º$×̤
+ð—°§H“¸-‚n1¬˜sn{· }ÇŒ,®!$“&}j ; ØçYÕÒvu³§ËƒJwãO­¥Lj3×ß¡%À©·ý¦Ãa£­¿`°ÉdË$a‰Ma1XCXZã­PÉ›ÕZƒ½bq[ìvß|ÂRYá_Ôï¼ûüé¤> ?m¿;®öné*”eÆŽªù>(o*§aÜŽê}˵XPðZhɬŒ~òpší†–inþðÍ_üãêâÃ…€6‰H¦œ§" ¿Üˆh³¿xóŽG[èëfpeÑ­ºà˜Â¯UFÿ¾øÁÇ|³Ô0 -Úp–ªôü ³Éx€eÁn’™à¾MIüÑ`ùòêsµ(°JiŸ¥ ‡æÉ#jQÂ1îô‰Z‘³Ö¢È*¡Ž— žµFo—B£×€ŠÑŽøewS÷×7à5©ˆÂg{ªî³¢*ï©Ü·Þ}±Z·‡l“o©ú
+z iKÝ^„éxš4mGýÐÛëåMAÀÛÜA®a®ÔÇ弚gh"µc‰Íâ›…›HgFÐmo‹ŽbÄéúÅ‘l3ä¥L†ÎCžL)Ÿ‡i Djôa ~è$Îï œ(o[Š3*³‚”ó{v6`M$æ
+—k)8Šuç#Ž{нñ3Q'Ïx`²ó…ŒK^ÀL­ŠYоfœ»¹Zgò†„C õ+Úe6 =‚&"£u@r.À–€ØyEUàªyÓùµ¬ïê=8ô&+}|ñãaû%PâhÇ3¡%oê|·[9q>`„‘YS÷Õ’²!EQZ~q|?Ù &M'„×b$§ 1 tnîãÛ¼ª²ÎxˆxS@î#ˆ[êÊ*Ò‡¯|,Ú>+©|CÓÑÌî&ë¨ývHDpr
+Û3IÌD‘½ 7a,("§®Zg9ITîý]QŸ7, ÜƑÆQÌ«,ó=®¼h’"æmH‹¤ˆ‹ö%Àª²á˜ÐOg€®D¶là7>rûtgU'c›XOÐ$´J ……ÿ³¾¦ ñíûÀ>£Nê>àøBHlM•ž¡ÍoÊ~›Se 3­j'zôü¥hˆÐ0ÚôËE
+£S ÐÏ— ê³ñ”n*ŸíH§˜šóÝäÌò“ç“ù;Ò°–ÅËýº€0 ;¸È•·Ìƒ×÷K.nºŽ8R–&n”Îö}ð&Àøõ#o"M™È\1Wü·¾Eʉx'ˆß÷à•!³£xOÕªî<ô X;N$ÛwÙ¾(‹¬¡fÏø>‘€•{*ƇPåü«Gõ;=â;~ä‡3êD¤ì½n ¾1RX>‰}Èñ›vÓ‡®˜˼b;„Á.
+
+koz$v&ÑñO;ê»÷y`O•)õ –eY¸=ä.’î›O2Á‘Œ_š¸JI;5ž’O?¸=
+ˆ3ªsúé”éS±‘zä¦ÍËÝËç¼g©„q(Ï¢çªO; NwU>/î>_¿µ|è³íü;ÎÂÛ^P…ýB£3Ü=õôeŸ|ú2 “þT“áY`‰~À­b”{š€è¯% Æ1i´çX\?ú" ÉÓùÏ7(´ŠD¢½“=ï¹K,R4gåœX`Ú…änò¥ã;jO™vÚÓäÿAŸ
+)|–>-.ýî–ú"}>FÖÌÓdM?aÃpªôÁ禉Ϲ˜rþßÖF1á !gS@{ÿ"“ìº
+endstream
+endobj
+372 0 obj
+<<
+/Type /Page
+/Contents 373 0 R
+/Resources 371 0 R
+/MediaBox [0 0 612 792]
+/Parent 341 0 R
+/Annots [ 369 0 R 370 0 R ]
+>>
+endobj
+369 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [459.611 351.218 466.584 363.173]
+/A << /S /GoTo /D (equation.2.3) >>
+>>
+endobj
+370 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [388.554 222.839 395.527 233.631]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+374 0 obj
+<<
+/D [372 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+46 0 obj
+<<
+/D [372 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+371 0 obj
+<<
+/Font << /F86 239 0 R /F33 207 0 R /F38 313 0 R /F41 286 0 R /F84 237 0 R /F44 314 0 R /F94 282 0 R /F87 312 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+378 0 obj
+<<
+/Length 2545
+/Filter /FlateDecode
+>>
+stream
+xÚ¥YMsÜ6½ëWLnœŠ&¾HÐ[©ŠSµríž’µÊ{°u 5”Äõ ©œH*—ÿû¾FƒrY»ÉEC`£»Ñxýº•®nVéêÝY~¹8{}4B›L­.®WRk‘gn•Ù\(mWÛÕÇĬ7R*›üºÖ2)»¡.wëÎm²­ºúu¦“rÀ/&«~}yñÏ×çZ¯
+Qd*#™éj£¤pŠ…ýºVî(ÄåAˆµ,“â'®ÛÝ®¥{~n+zpI_î+º+‡¡ê~)Ãwm·­›²{\ˆÏ‚øâ_­7&M“ûz¸å5} PœT•R6c]«‡¡júºmzOt‘\xdž\µû}ÙléÅA±z-“>¼Ôû°¦Îpfæ ™"•vò;|’Úlëë뻈ߴÚéqå¤yä­•PJ=‘üõüÛׇoù™ÂQÛq=œ¢•„óüÃäXTz×lTa¡O<B£/I?êækµNZ: m’/þ û¡kùNªq‘‹OO|±±ˆ¶ó‡ˆÎ_äf®36½ëÚõ›lWc
+e']4ßæý!v‰.Å´’‰õ|h"ãtÕ¤)M1 Ó Ü|ÛÕÍJy‘\• ¯øÌÎ/uÓWÝ@à4›B€…é) ûf§`ÉobæâzÈÅuþÈ&OxöÃ×s
+ƒ‡WtžßŽÓ—Á)nGÎó¼ ð§€X‹-‘¶–b$ÂB(NñH4Dåv7PTæ!§Ûby¡gBÓˆP@j>!ÁÃßP—dD¢ÒtfNU<¡>Ί@ˆÓDðæߣ>Ú “fߥ>X‘+à%H{¡ŸPŸ³žsÚðì›(%*À*s ¯x {tÆ/O]Ò´ƒ‡²‚áÝÕ×ãHìr"Ú¼Œ+HíÖÆq²Û»
+endstream
+endobj
+377 0 obj
+<<
+/Type /Page
+/Contents 378 0 R
+/Resources 376 0 R
+/MediaBox [0 0 612 792]
+/Parent 380 0 R
+/Annots [ 375 0 R ]
+>>
+endobj
+375 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [350.501 495.664 365.223 507.62]
+/A << /S /GoTo /D (subsection.1.1) >>
+>>
+endobj
+379 0 obj
+<<
+/D [377 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+50 0 obj
+<<
+/D [377 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+54 0 obj
+<<
+/D [377 0 R /XYZ 133.768 272.395 null]
+>>
+endobj
+376 0 obj
+<<
+/Font << /F86 239 0 R /F33 207 0 R /F84 237 0 R /F88 311 0 R /F41 286 0 R /F94 282 0 R /F38 313 0 R /F44 314 0 R /F87 312 0 R /F45 316 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+385 0 obj
+<<
+/Length 2449
+/Filter /FlateDecode
+>>
+stream
+xÚ½YÛnÜ8}÷Wèa€¨n†I‰JìØÌf‘Åb7Ƽ8ƌҭ¶«[mI=¶äß÷‹ê›»wg°~0oÅ/U§«etÉèÇ3Ê¿\œ½~¯u”‹<MÒèb)­E–º(µ™H´.æÑeüa5™j­ã®.º®.švI5÷7e-–¡V>¬Û²ëª&Ì«›É4qqsÛ…vu;A»œ\]ü}»–¡|ýÞ™½å‰À”hš(‘«Œ×óÃdjVÚÌ«ÅbÍÍO¯/.ºâú¤[s‡šá^Ç;–0ûßJ…tù ðYZ5¢Ei‘8½'$ƒ"µ'¤…Ëì ó',)?áâwT·ñň^-…”ÉÓ;Ü…È3Ƚ&š*aòp5?Uú`¹Ê£=!AB8BãDª̇,‰ÒØÅM…[1©Ž7]É•fÁeÁźhËÝnº«ºr~ŽþÜÆÝæK7k«u_ÎYm‚j}ÃeµšW³¢÷zÖgâ_'8Ž¢­Š/õðÁ–Ëadê×+±P\º › q¿Ò,¾)ë9×fͪë ^–e¥Œë²˜$t‘…… ÍÚ`9QñŠ{¼ÕRånSv=,õÍdš©$¾ihÞ=Í.ïIaoK²m(¢3î-¸àÏ4/hlt¶:‡‹`¯6.êMA‡º?N¦) ÷ç²€“ø›&ÜX·Ãv¨¹j¨4XˬY.ý®æ¬Çw/Ð ·lù¾'i"dº5´õÄ*y_õˆ%éDرÏ˶â+ê«p¼oƒeåF¤Æn•Îi³Äµ=bY©Ûž"ÕM]'­Ó<€ˆ kݳ¾š…þ¢Û
+V-w…ÝﶎáE›v^­ŠöqìŽö‘y»èÞœ‚FÎ
+ÙC"ºE¤¯ï ÎÉ¿=\RKžKj]í&\¡Œ%'V/•{Š¸… ¶-…ÍRT4J5'Éh9a“<šfBK·\ïÇQ0Õÿ
+>¼…EÂEGw+tª÷rö׋³»3:©(q
+•ª“¬3‹p2‰–¨Ì€zõîì$é#³„¹%*š¦ÂdéÿÇÂ)°¨Ô®MÃÕÿ£¸­V×L%ÙŽˆ‡’!Òƒv~©êªvK#ÞÒð«šYM&ΫnF6ÚuDd¨§
+¼õ3ø¢¿m¾èö:âÊ¿<Ã2ìAÀØÒ,eDnÌaÄù³OÊšåº'¯ôA‘¼M›¹
+ íõf¸¯[¦ÎóÍÌÿÔ;É>ae<:Û|ÿ}ÕßðDOÐúÆ<k:¶bfvç§ÄD¥2‘­ôݽ._~§õcŸu0Ó<„¾ä…ЗٔC_¶ïq#¾žçÂAG‰8¤žóuœ§õûø¾¯]6Ê¥/ùºBÔÒÉw"Ñ‘ßdN8\‰¡×‹ÞßT3²2“ij‚lÒ¨øK Æ¾8_lj®wͲì«eÙ "·91ú+O¹=1ƒïEèe‡Ê}[õìžõt‹ë¶X]—¯‚ty·)FY>Q¹ðJôsá˦߾$Ï,à32ÜZ–¼³bUÍNãq8Cp‰-öã×»Ÿo¿M‡Þ?|}2î;šþëÝ7^^}ëyàòysO@*³ôâzê
+ÿwMÊQr€«¤È’eó1òˆ—¯9i³€ÿâùî^Uû{÷cîªÀCrv×çá(@Äñ ó¹6H'óßåÚ¶º¯í©…‚Ýä[ûüyÔö„3ÛÌÉ؃7zçöÐÎs€ÖŽ_lð’©#tIãÇpñ¨X|wë@bºÄLÅd.­˜I@##À8Á ••ñÅ$Oãò¡ŸvýDƒL{átˆ¸©áˆ‹꧈L0[·¤KÖp
+›à­Œw·O} °bÑs#°»÷‚çJÝ9™¸üÅ3 (k‹Þ'iÐ×0›ò4ŸùC¦}ªðè½j–xcÚ+‚ü ¤®¹öÅ3µ’¦.¨ylG >¶®ùuBgMe„w‰EÊÀàY£q1ÅÊ+°Ø*í“äB0J·KT}vj$â𺌓»HH ^—qŠß,ÔU­êjµæ
+àfÁ²ÛõH#n:g‡ F¹”!ù„Ê¢X‚«Aÿ.ãá…W;á‘eƒâÒ­lÚ’Â3‚à
+—RÆͪIûd
+óÞ‚[±]A[Ž ˜dXƒ("Óü8l
+øäöIjG»WcëE¬¶á§ ²dîþ Z
+endstream
+endobj
+384 0 obj
+<<
+/Type /Page
+/Contents 385 0 R
+/Resources 383 0 R
+/MediaBox [0 0 612 792]
+/Parent 380 0 R
+/Annots [ 381 0 R 382 0 R ]
+>>
+endobj
+381 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [346.367 429.533 353.341 440.326]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+382 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.003 130.823 184.474 145.566]
+/A << /S /GoTo /D (subsubsection.5.5.1) >>
+>>
+endobj
+386 0 obj
+<<
+/D [384 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+58 0 obj
+<<
+/D [384 0 R /XYZ 133.768 245.84 null]
+>>
+endobj
+383 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F88 311 0 R /F94 282 0 R /F45 316 0 R /F87 312 0 R /F83 236 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+390 0 obj
+<<
+/Length 2138
+/Filter /FlateDecode
+>>
+stream
+xÚ­YßsÛ6~÷_Á>uc!øMò:™inîÒI§iÏÉ=8~ %HâD"U’Šívò¿w Ò¤ÌXjš'‚Àrw±X|ûäÑ:âÑ<<ÿ}uñâuj#!XfŒŒ®V‘PŠ%6¬I˜T&ºZF×±fr6BšøÕ~?›+»rY”kh&&n7ŽËâWÊÕ®œH[äårvsõÓ‹×JEˬ´hGs‘2•f¤ûõ,UqUÏæZ«8§Ç¶BÝØ¢ 2ï>Þá#¯—48°ÝÞÞ%Œ$".Z’(z®]éê|»} ×ÛÙ>pmë‚ݶ"G3=pT&I{Gs˜ºñ3Ÿ˜”2LJÙ‰væAm˜|AÜ4Ó\Àü}¼Iv_»…£`jeŸÎi‹ýI\íÉ癈뼭jœ¨UØÞøIÀ§í&/IxQ»¼uÔ›SתÎmQ•¤ÏÆ«ªÞÑÈ]Ñn:Î;ÊÇÒj(s¿o›ÔÐ{ž 
+÷ ͹å”ß·(‚êÁ|¾%!eñW°0 ¤@Ñ|¤7\.|~à†Ì¡çÚ Ô¨¸ióº- !Â73ØF£Ôáà$SȇBée±Zí§2G³„«NrQívÆ ûmÚ=ŒÌ…‘,KU4—`M¤¶®gs›µ7ûÏkyó¾½Ý8¹ûˇËßqŸï%o‚séÀ„°P Ïë—$¢‡^XÆÓ~ø¸ŒyÊ5K³Ì{*Ác/üC\:²ìzm*³‘bVX’>ÿ½ºøíB€ Ø— ¥tdŒaF‰h±»¸¾áÑ!@AÝyÑøÏ8·ÐÜFÿ»ø…ðnäY¯K[&yÒ96‡D¼ŸpÒ˨$’,MÒGQ3ÌZ “ÈŒíÂ"8Æ}"4 ̆ðÝ0kŸm6ö/6þ}‚„pZu"ê
+¼ìSð_©7YÆ ÈÌ%¸Œø’ÿ§ªÍr[+&”íô6û|á–ÓyÊÞüž6ìÇ|íHwµG4Â-®3òØyw´€yóÔtJ¿›0›2›ôùÚ€B
+ÒZ¬ðiCÅ‚Ž#·lp+H7ÛRp–ˆ$€KXÒ²j
+Ç©>wIJB8‡®~î…×=xaôõ8P92ªÔ¯¶P†Ë¾ò#M“UÀ[u —EuØ.±™Ä[—ã#aêò Å€=éºiéK)rÊë5m­$n©Çíömpå‘°vÎióO¹{LRežz^VzNÊÉù9@¿=´$r‹žEK·u-±@Ðâi/ôeãêÐÖJîhKPX}°ŽhËoƒ•’Œ}^»Ðé†^ˆ;t)ˆ!ED¦žšÍ¼(çðñÜ÷@\{Zj&™ù|Ê·Aø2´Ë.ã¤6. Þ(5u«@GW`øv뾜\o<I]Û¼ÙPgæÙec ÈÉk\Cã>8¾qh«äå‚V»`IìÖ­‡}/\ÊÐ&œçjŠÆ?M§€)µ÷ì¦ëÊ£Ê1Òq,c‰T×A¶Q%€
+b€v?UyÄUžÃ×V“š23ˆØÉ(ÜOsÓÁ¹ä G¾Ÿ*’s–õ ¦•oÛMuXoŽiM8moüþSQjJÜä)Õíe’Øu¸Óór=dV¤J|FS©¯×5~ýñl›Q²G×´#ÖyQ>_yÞ¬BÅc©Á—»[1­ îUmè£>Êyµbr—NÜ,ðŠt±0y£
+OÀÁT?ϵK”xŽkwº`gtQÞw´w-RFÞ÷pDx;Íþ-Wçx”0 é'¸6rçj"¨p0ðRpNxŒ¨š(N-÷&ãAðýÄJg ÎÒûx±‡6á4jàhÆuzj @ȉeT",—g.cjŸ [¯ëÉ2NMW€cÉxQÅ„Ê0q^š%L>{¢ëU\VÍå×-뻉uH™ê ý¹š
+µ4Ác0
+endstream
+endobj
+389 0 obj
+<<
+/Type /Page
+/Contents 390 0 R
+/Resources 388 0 R
+/MediaBox [0 0 612 792]
+/Parent 380 0 R
+/Annots [ 387 0 R ]
+>>
+endobj
+387 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [318.942 296.269 325.916 308.224]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+391 0 obj
+<<
+/D [389 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+62 0 obj
+<<
+/D [389 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+66 0 obj
+<<
+/D [389 0 R /XYZ 133.768 169.695 null]
+>>
+endobj
+388 0 obj
+<<
+/Font << /F86 239 0 R /F33 207 0 R /F94 282 0 R /F84 237 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F87 312 0 R /F88 311 0 R /F45 316 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+394 0 obj
+<<
+/Length 2190
+/Filter /FlateDecode
+>>
+stream
+xÚ­YKoãF¾ûW0@T0êa¿› °X`½™ 9ÑÍñ‰²‰‘DHíþï©êjŠ¤Ô# p.V?ëÑõúŠÎ’»$Kþw•}ã÷?³«÷×N%9Ë0Él™p­˜å.1Ú2!u2[$7é\ª›ÉT 퇋j¹| é//_þüü:íVx9Ú÷ uûòåÞܾ¶´ñ~²žêíävöóûkéÒ§™5dõr| #j(°a™sÝ?2ÍÃ>83åÎ0•ñd*2ælN‡ÿ ¼Mú ž¿úïìêËòÉží˜s<1R0žÙd¾¾º¹Í’lþœdLæ.yôG×ð\Œç†«ä÷«ßè=G¬÷´„`ÖÉ!ç/$)HoXnAo|þŒ‰äe*oÿ9¢³c’sü+òNï,‹èÍ˵òV†ƒ‹ˆ¶Î1£.ÒÖyN(Û‘*»hƒdz(gdBsÀㄈè3Çe2µLfîŒÝàsYþØmOkl·cµÌä{ý3ê|Ì©¼;3ºbJ¹¨ÑõØÑs›€8Òšý‹ÉˆDàC}+–)ÛEÎTX—FDß}ý+”C ·,Ž‰î1~ª'Â¥ø§ü:6-·ï&S¥yZmà–¿ú½mSÕ›†VêeP”rà©Uä˜=æu¹\F$ÑœIiº“Ÿ@)`°¬·%’·iÒ‚dÂË$Ò"ÈToÕ¦Ø>Óþ¢ÜV_'Z§E[‘´ÈžNçÌÂkOÁOsŒòXµ÷^5äðG¦Ŷ­Š­Eˆùõm¹­rn6tµ é€‚ì(˜ž›Léì¾héH5ái ° ð“y½zÙ³ tð‘m9oË<‚”2mïKô¯ ¥‚¤ÀÓˆìxd¯6w4.HpõìÝ䨜Vç[Lº ·ß.%}Õxyú?×»W¿´*ÖŸÅëkXnª»uñz¦b( ÌܹŠ‘Ÿ­RB†’¾bd)úø?ÌžPY $´äŒ}2ç@Äg'kEGK`ÊàÃl÷«œi ÙuÊHQÆ2 î
+¥ %tæƒÈ©tS>Ò
+RPFå€â»ƒnrA šªb×Ök¨áóbÈÂÉPd
+Úï¢v²kc[¾C–÷£:÷}ô#PoÆ+¨¬ÛƒÄ·
+ò¾9€‹<!ws>(8Pž³á Ú`\ÓŠï1à7Ò’ÐÆiÓ·¡áµûêîÞdzµ}Câ\×X ‡²6%uÌö}IH”äB}“‚õJêaUÍ«“šJ}7¦ÓŽëðÝ)ødç›»¦9é<¤X é†Ü•vûY>™ûÖï2ÉEnÄ,gÁøx'o/ÄâŠÔÛ?Aˆu\ô&/ñðP%ÌI(nN@qÁ
+endstream
+endobj
+393 0 obj
+<<
+/Type /Page
+/Contents 394 0 R
+/Resources 392 0 R
+/MediaBox [0 0 612 792]
+/Parent 380 0 R
+>>
+endobj
+395 0 obj
+<<
+/D [393 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+70 0 obj
+<<
+/D [393 0 R /XYZ 133.768 507.9 null]
+>>
+endobj
+392 0 obj
+<<
+/Font << /F84 237 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F88 311 0 R /F45 316 0 R /F33 207 0 R /F86 239 0 R /F94 282 0 R /F87 312 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+400 0 obj
+<<
+/Length 2794
+/Filter /FlateDecode
+>>
+stream
+xÚÍY[ÛÖ~ß_¡<•V̹ò1.âÀ- õ>° ”+QŠ”I*ëMÑÿž¹‘µ\w“ö¡/⹟™9sùf¤»…Z|£äûúîæë7Ö.²8KL²¸Û.´µqHÒEâCl¬_Üm¾\Ë•ËLÔïó~hÑš¥I£Ÿñ§hóªâ٦ݭ4·¼N6˜fÊŸ—>‰ò¾ä}¼àƒ2žW$ülTv<’ïò²–æ©opÂî|\~¼û3°´Ò:μ ëS•÷Åf¹²ÞEyM •KÕ]ÑÊŒòNVð§;—+b§[·å±çѦæÅÈÜöõ§/gT­ºû¼d"Û,¶Á ºÇr~O5_Q^\A5®9@®}ÓÆË•Wiô¶&fWF§±JÝ”ç~’2‰‰ŠÏùáX·Ð ŸˆÃëæpȹY¡ºž;øHôÅw“#ö¹4š$L­ zÀŸ†Å°Sî+ø]kÙµoN»ýÐ.Úbî¹ò™ÖV´…4YKÚ2¿¯Šøw6Do{žCFñ›wHh3ìÍû¡%g a{WŽtÑõÕZ‘6«²““òãq^Áh{PQW|:5Zˆ pXã|(4€ ?2q‹cÙ0©AÅ­ké&X)F3{ÊÅ©\ðÄôbaW¬ÒtÜÝLèN%Á¥
+—.‘gZ­Ô“SU`›1Yu ¯ijšIÄš^ ‡Ô¡““Æ>Êñ§{ Žõ|Îø0_72ˆ².ä8*Ž‰™]˼9öeSçd0)»ƒ·Îç †¨Oh¥›b›Ÿª^f4“N£»=YXÇkÄa»ÆsØA¤üðíÄ1¬a²ÜÊÉlØ2B;šYî—õ'ü
+™,õ¨7P4Ê€Í-7%hûaŽËe1.yê”tfckÓÁçü2ã”R h\@&‡iþŒâëY| ¶Dûèõ©çáGr'>8s—wk'.Ž^/=hIOþ”03gÎLtêD£óú‰yÐCx”ˆ[‚€EUùÓgøštB’u±Òn é=¨€ñÑ­|ÌÇÊl'Ú ;PiÀ–ßÖ ®ù†)y@…+û¹û’,&Œ×é[ýÂK›±›~èMyÖ2q Oån:þJÉò²š¹B‡>+R/kYÎ"²Ä¢†Þ3¢†õûr²Þsw˸î4‡²ãŽE>“g2VÆÇi&ÎÉÅ.ýÓÚ«è¯`9ÖD'Ðt<-µLjŠDåë²ÞñàåhènÝdÓŒox‹
+¥Œ
+6sÂãIÓ ¯ŒÝ¼‡MQƒÖˆqÀ³vÃD>ÌO°x Øé\훳äÜÓL6¤
+=…( "†’õ¡h·ÀÓpÅC‰6#—£ ‡3örྡྷÙÈL´þi:IöŠû¦*þ
+Ü’.hé£Mê1.W‹w7?r8Me†³¬‰30d¡~JBjžHBé¶XXHI¼¶R+\¿šó':S±ÆWÆ-N”dW%et`h&Ú¢å¶Ü„k¢®Ê»ýjÛ´îSPc^I/¹DŒêüÍÜû¤
+îj$:z‡ü¾Ç ÆÈôJòA—‚0ÃTm»²Ð<x‡{‚m*t­]÷
+{“á<ˆ‚óæÜ:xk¯G@·)·ÛuSl·3¬xáb\Éá©›9Òê•eæK0WJt8ç¢ôVõLŒ X)Ò2IìL˜ƒä`äÛ6_ŸqŽh"#AJs œGä?#9oáŽ1è/1šÄÚ›³äøº‘.Ò|¾
+‰Š™xØ•MCÒ;ȹ« úf;Þ<—>à
+ö¾ëõ©å>z\ܲ/wûBƆ’ S†ƒc¬Ë¹{NuA¿ªBæÖŸNe[ ¤0Ɉ÷¯j—eDe屧ˆã(*ÓI›žºþœðáU†à{È7Å”v‰f?ØÂh©²èõ£æY¥¨ÐôE/o`ÜE&E|Z@ ˜r\1zߣ‚QvIÚÖ& Á ”‰ŽtÃ’L\akõsQÈ@Rþ7ø:÷»£¬RéÂZ§Š|)
+eq’ø/F!9 ¨÷03‰BOy
+ ±1Ùô¬¹¦ПìIÔ.Õ¯sNîG—b¸®ºJ•3À ¤W¥Â
+ðá#–M"ÀúT€.7EÇ#GLlǼ3ÖäBŽ“¤Â`>Ür“2í§Om
+endstream
+endobj
+399 0 obj
+<<
+/Type /Page
+/Contents 400 0 R
+/Resources 398 0 R
+/MediaBox [0 0 612 792]
+/Parent 380 0 R
+/Annots [ 396 0 R 397 0 R ]
+>>
+endobj
+396 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [333.902 250.972 340.876 261.765]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+397 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [257.555 239.017 280.027 249.81]
+/A << /S /GoTo /D (subsubsection.4.4.5) >>
+>>
+endobj
+401 0 obj
+<<
+/D [399 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+74 0 obj
+<<
+/D [399 0 R /XYZ 133.768 533.761 null]
+>>
+endobj
+398 0 obj
+<<
+/Font << /F33 207 0 R /F41 286 0 R /F94 282 0 R /F84 237 0 R /F83 236 0 R /F38 313 0 R /F87 312 0 R /F44 314 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+404 0 obj
+<<
+/Length 2357
+/Filter /FlateDecode
+>>
+stream
+xÚ½YÝsÛ¸÷_Á¾Qµ…
+¯w ¥ác]^m+KÚ•°cçö.w42‡;4 ‘ÅWp” ”Ò3–¿_˜« ]=”Í~[á2¤©Ý5}ª ›vUESOD“ñЕ=™¹ä<\²ši!A Þc%TÜœúÑ’lÌOÉÔ­:C
+oµîyÄi‰¬T¡`À™œ–~ä2½ N8\×›Íþ‚Ÿ!à|ùËû‰JÎÏ>Àÿú‹þ:.¸´ÂåÓ3qÒi'݈$
+£Yvm pgKçs /"–åÿ`•˜ÁE|Ín²Ð‘dšk"–(ŸIqDz ì’±$sßOCñ„©ô7aô>püŒeÓ£%$Ë3åhÞ
+r|Õ5õ΄8͉5NÿÝ^‘œš&\B> Þf/ûmà~À|À––ªs#€2!æyjexççU4™þ'I°m¯i
+‘˜ŒGJ’IÏØÝi¾škc¡k )Ì!¶,Ò±ñeèÀŽi|è)µ„a@ož((<|Æ·;4W¿»€R³\x€Ô¹¯,w“Ž8˜Wr,S6ÜSÙ@ó&·EAvDn§FgÑG GôM
+G†äGú:tôÆx0&”ÓC‚(|z7¦Õ⓸Ü<ïò<LþÞf‘lêÀÒF2tåûz¸yÆé_RðÌ”ëïòo4Ūsþ²Ý¶÷ÎY¯éù‰µu5”4X.®Ý6Öé]z`œY|Úñ3~iý<ඌö¢˜¬ÊÝ®ˆpe êj‹ö¾³å³”oF­ñ¨uï˜õ•ðýŽÈd‰|»zíæöãáÑmñ <«.„d_ýë(e+Ás“® 餙4ŒPæ“
+ÇÎa`/§(GBÄxlœY×ýêÐ÷Ž`W= Œºê¬»ƒ( ž~-Òi: ´öª§%䀌Å8òa;Ôû­7œ«®™¹çpê4ŸúåP7ÁŒ[B
+< mŠäPe>‘ø}¨Fgb^¬ÙK!±óÑMb §‹ÉW&9S<ûA îBi?TOBÌFÑúúz×Ó°Ü .àÌ‚“RŒ'ÅÓØTm çëðÚæüR*ÈËŽ²Ò*Ç…&P?¼ÁOüÙŒ l\þ\§a
+þuzD_¾`ÒI¶­6»zÙ—®›tSõu?^_Y«¶¥Æ–âòx¶#–`C­ÅÐF1{ÍB¥'T—L¡B…b9+ÏÔVžÆÛ}‡¼]
+ðvøqd:–û—µ&"˜¸)÷ýQzº¶iÂ$u.MöÜ’M¥îT®U&Ÿo•ñ\0¡½’/ÄmãrýP¦¯3VþÎ^¿,°H¤/h‘M™ÿgM2!@¾ÿB“ .:/Hd.õ—›dÙ75Én•ƒ}ðÒ4óàv*Â͘$ÏŽúm3Ñ3¦tþ?í¦©Ø¾<ÛM_ë¦xÀ*
+endstream
+endobj
+403 0 obj
+<<
+/Type /Page
+/Contents 404 0 R
+/Resources 402 0 R
+/MediaBox [0 0 612 792]
+/Parent 380 0 R
+>>
+endobj
+405 0 obj
+<<
+/D [403 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+78 0 obj
+<<
+/D [403 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+82 0 obj
+<<
+/D [403 0 R /XYZ 133.768 543.262 null]
+>>
+endobj
+86 0 obj
+<<
+/D [403 0 R /XYZ 133.768 247.506 null]
+>>
+endobj
+402 0 obj
+<<
+/Font << /F83 236 0 R /F33 207 0 R /F84 237 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F87 312 0 R /F88 311 0 R /F89 332 0 R /F94 282 0 R /F93 270 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+409 0 obj
+<<
+/Length 2499
+/Filter /FlateDecode
+>>
+stream
+xÚíYKs㸾ûWèH•- ñ"ÀÙšª¤âÔæ¶çäñ¦h‰²¹æÃ!©±5SóßÓ¨ÇÀ¶öqIU.@
+¶*KÁ’Ýâ½* ÐÈ ë¨É<›I–ñÌ+Ã/²{‹$ô&Wm"TÌÏxé( ÎeX󡡘J'“Ø·…ƒ›q`5· íÇ—1Pÿž£R’Ù¬<ÿ0_ðÌ$è€YâYò%¦ Ål&åö·«³ÿœá‰éŒƒ}s€v;ÓØŠ|¶lήoÒÙ
+&=Aâvöä–63 êL5tëÙ?Ï~¦çâ€Ë‰–SLuÐäBgÉsDŠ`üZf3w³'*ô@Dµ
+[0°U0¢5:y¡ '§VïŸ,%?´”lÏzÓ4j“BLæ3ÍR!#l}‰±•‚«[æ%¶Î£†Ç™±%§½Ý½@
+hOÁ@}¢Ë´"drðäÉlÅyŒGª'¾›qæz:HDî@i
+O"e|ñ “·ò P©, 3L( D”¡Aò¦^áÐ$uõà"/Adǧ~7bt‹]O}AÔÞb
+V¥ xR1D®„OŸÑò(ð8„
+X± +Îc¸ÂŠ KbÁ¾f¹Ý…ú cUò¯ÁE»{פ ‡¤<à Ätqúa ˆî£`ž\œ©Z0)Åï
+šÁ:õ…ç ¬†{'>G3n€Æª,Wn
+5K2_¤C滿0çª6Vwµêd§Õ8S»°yí-B[,ƒ•–CzY­·ÞÉŠñƒ7~Ï™DF¦SÁÔ1¶&ĬÂC«ÖTšÎ’¦zv  ÝÇ¢>¹í.Å€gKF¡ ìŠÛ"ùX÷ÝæîžöUcL5{™äj—žà ­–lÓ—'xÕüäéMÕV ð©Ä@|(å$»¯ÏÛo ÅR5…j`”÷üG4ŒïÉBŽ`3»£z±Q…èILQä7Ï>½œHÚý§0'ïÂ)’`_ákî´ ø…–Œ›£¬ç9ö¯ ËÄ”‹í*–A×L¸áS\çAO¡5‡—¾«IÛøæ©4è‰ÿ™hNPeôn¨ÁdȆ`P¸gr(¨àZØõ/.sÿĘäÉÓ(¼#XfÌÑŸ C…%=D ,(qUoÀ’8Zñ «ÇjA(€<÷`…A%¤Ž)if þe£Ž8Êc‹Í”FÔŽÐ+ƒÃ镉€æ“Oä1U½Ãm#õÿxôÅÉöŸÈZËr*ƒæåDöëÇWß¾ÒÇç_~½xþåo•Urç8‰µr–Üñ) ~øÍä
+endstream
+endobj
+408 0 obj
+<<
+/Type /Page
+/Contents 409 0 R
+/Resources 407 0 R
+/MediaBox [0 0 612 792]
+/Parent 411 0 R
+>>
+endobj
+410 0 obj
+<<
+/D [408 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+90 0 obj
+<<
+/D [408 0 R /XYZ 133.768 299.528 null]
+>>
+endobj
+407 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F94 282 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F87 312 0 R /F88 311 0 R /F89 332 0 R /F83 236 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+416 0 obj
+<<
+/Length 2842
+/Filter /FlateDecode
+>>
+stream
+xÚYYsܸ~ׯ˜¼Q% M
+a7Zééá—Ï—¿Ü}eÎÕÖQà‹,9ou§í·çÂË›Kœ¥^ŸŸËÔ{<O•wéØ.Ž}O‹<á~_ŸpC׎qä§ï¨HiúÁ4°åþhúÛQRm³•qâÇBn¶BøYdÍóå<Š½¼3ùM¥{ÿ|›Š„LF©Wª2ñtÏÓZç ŽX2·,=ê׫’§¸qÀ²Ñ¸,SÚ?Kó1P
+ Ô -“¦møkÓÕ±´ü9 ¬¥-ÚºÎA­LáV Ž¤•i‹×Öeoß·LºmROóDÃ^mÂë’ ¦±\]^%b)½k{’@ÏÇÁ¡²¢óY ”sHkš~È›B“‚,Àò+Y{ø•™TÑ<¸ÇÅÛ®*yú1ˆ‚^kp£0ˆ=íï};œ>¨òÞ®¥=Z›Ò»y”ñL€”Á¦ÛoxðÏŸÏ@RA¯Æ›`øÇKÞ°œÒ3ã³wéÛ¢Ð_ðŸîòªVzxJyÛF-CQ;ðBûö",}Ö•èÞ1¯ûW0’ÞœCÆìLðìyaš=OPÅGdÔò}nÔâ­ãþˆDøi4Ý ÷h¯$ð>J•¼l§ÐýS[ÁgpÅo誀k¼òIæ½?§÷p1‹#º[Oþ†_ð~}eö·ìNDîÐ%·|aGWF.…=Ý8f¿‰G7ˆ#2ˆßõºh;˜±|`øOÎ¥õé·ƒîêži‹3"óÎ{E(¨ððÚÛ}JÝ´µiò¡íœNA÷^¡¾a$½Ú<è’‡‡¼ƒ­øu©;ñh0l@¦ßÓ5Göœ ·`/ŒßHj»r¾VE~d1õO8§Š÷(ý•ÈÖß®É"ëxà˜ÑõEgSóƒ¥B|£X‹d¦±¯ùñ‚@ȹŒ¹Ìlì·6”O‘÷6#eË!³ÐÏB9z-Ýî0{Ùëjçðr•ø"ŒGvÓXÏRJúAš®OjèøØÁÃØk"ÒÅz•õ •ŸýPAh6´RH¼Gkô§ƒAdÂÀûñh?Þ:Ý/éÎÀ2ǾGË9ãëpè@9UaÐi›
+#³Š (¨°£Ðˆdö¤;§çwyS2Ó2¡?Èu˳N—Gk¼†@1ã‡Ç¡­a¥¢ß£Kâ:/)
+â}¤ìñ„?CŽÒìvE«w®£ ?HÔÈ鳯ÿ©µG
+íŒQ¸w(vIý ³2ÐRn$#Ï©¡Ìüp>rºüPííD#ïê<EG·¹öر'뇼àrÉdÓ¬Ÿ§žh:ŠA<8ÉþXB¢žÞýÇ|}b"@Öéˆ+3õëüÅ'«VºLÅ©ðE4éõ{f WÐÂÕ”« ˜0X4óÄ ,Oï¬åX"K`[ZL´Pà6àKÇjê‹o\ïìRéb©µB˜æ D¦ýéúìWë?b#Ó €½Ø„p·C™nŠúìç`SÂKˆ Lº¹'Özq9‘¯«Í¿ÎþÁ5ÎJ¬i-6 ÂQÉ-d”‡|àZ‘Š7ÒO{‚Ÿº&h±àú_V¼sxêVнåÃÀÅ9Ã8o¸Hü( ¿ó† 5¹A©‹ª9ŠùIb æl“pÏ’Ä=0Üum}ò¶Ô;,áŽÕà]B¥†“ìòµ»úq²,Øn*
+v|ìÇ*yÇ\ >䘓°‚ìß~OúFs†cúN^Nßd½]Ì¥\L¶õ§§+œ?\>^þ†”¯O4üFF—Qè«9Ú½”ÑÓoetÃQô~¬ä:¥§¯¥ô;GÞ‡°L±ú¹ŠS±T;V
+
+±R„÷–Y²@0™[¡8£e[d<€šÕ4¹ý’dZ½ÿ‹õµÌ ØO¥«ŽÆº­Õ–í3×5 AÞ‘.B+ùO³ÙDþ7KPµ{;0wç³^“„ó¤Z]ÚæÛ¢}Fšõý±ÖcØE¸®âuØ`ôÔÜUìO)ùÓÊsnI“#"_ÃÏÊ4öËHÙö°m¨MK–öwãزœ~Lúø–É|ÿŽ1óßóâ=‚&sƒ—¦?¡Ÿ½µØš~~Ùêƒ
+endstream
+endobj
+415 0 obj
+<<
+/Type /Page
+/Contents 416 0 R
+/Resources 414 0 R
+/MediaBox [0 0 612 792]
+/Parent 411 0 R
+/Annots [ 406 0 R 412 0 R 413 0 R ]
+>>
+endobj
+406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [423.762 617.883 430.735 629.838]
+/A << /S /GoTo /D (equation.2.1) >>
+>>
+endobj
+412 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [322.275 580.032 344.746 591.987]
+/A << /S /GoTo /D (subsubsection.4.4.1) >>
+>>
+endobj
+413 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [387.746 496.346 410.217 508.301]
+/A << /S /GoTo /D (subsubsection.3.1.2) >>
+>>
+endobj
+417 0 obj
+<<
+/D [415 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+418 0 obj
+<<
+/D [415 0 R /XYZ 133.768 595.474 null]
+>>
+endobj
+94 0 obj
+<<
+/D [415 0 R /XYZ 133.768 386.334 null]
+>>
+endobj
+419 0 obj
+<<
+/D [415 0 R /XYZ 133.768 250.94 null]
+>>
+endobj
+414 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F83 236 0 R /F94 282 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F87 312 0 R /F88 311 0 R /F89 332 0 R /F93 270 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+422 0 obj
+<<
+/Length 2602
+/Filter /FlateDecode
+>>
+stream
+xÚ½ZKã6¾÷¯ðmdt›Iñ¡ X›ÞM é‚™YD-ËnadÉ‘ä~$Èß*%ùÁqwïNæ$¾\Å*ë«*:ž­gñ쟱ÿ~ssñÕµMf)KµÐ³›ÕŒ+Ë´Q3­ RÍn–³wÑ?ÊÕ*oŠÕj¾PBEyV×M?´«|We}AÝþÎ7šû¢ÍªÊwÚeÑúæjþáæ{`¾àœ¥Ê3Xƒ¢-ê¾Ìú²©iiY4Ën`ÖŒš?w'‘Éù¶å²qi¶ñ¾¡/ð¶vfï É}u-垦"ailàË™5±¸q{&èk£ŒºU¹){/Ó7%¦ØXÎyôTg›2§þ®ó 1÷‹m
+š ‹?é
+Ïå},Mßîú‘âm7Ý?Xaã ¨Äí3Ÿ+eu@,nY¬ÒaÝ-дQA,ê¢ë‹¥×…=Ð…ŒcÆÓ”¡˜5†~ü
+ âÈ8!q°âà—Ä‘b'° ŠMø°•ïP:q
+…OU¬zjyÅ :,:§y ö=ßܶEŽsËbI·¨È§à©¶¸RÌ=ð¾ÏÚ2»­ŠÀ.¥fFÈaáûXÅ%+Ø•³¿…‘É¡º«#cgøéÊuM­¦Ý›0‘“i·ÁúchAàÀiÝ‹DVùX6Ð<Ú2“˜a›ËñBŸ
+¤à$'­£}Ô£ÁôÕ°¦£s>%%4³z´%oÖ›À‰E{ -˜ÖâPi]³)@Þz=_$\Àmú8wvéxÂn'žÚ°ÄŽ7h÷²ûç "ÁˆÇ»ò1HcŸÙ×\Á¶ÁÔ]ÁîêœÜ
+Ò¬B"pf´9f/Ãìß̹L#ðŠÚÆÑ ‘Íú¾Øl{ê •àw“[t­Þ/+îçJGYµsþGî²éWî8¸’ ¯£ãðöØã!<¸“(І¥;Ê µ²z9=ù¡-@ÂMm `éç»r³­†Ýðcú}QwN]Øu–ãHâm¦6È "?A ‰²ÑõÜJ¼Mûàtñ˜·ÂÙÚƒÃ÷èÒ$†ñXƒÖŸ6—É;BlâEÚ¾[¡}¼äh
+—üŠº ×]ð\cÿñê ûþ?'Æ%¤d‰ àoÞDö·¦Ylí©˜Ñ‚kÉ”áN
+ãŠI[ÀÅ·7¿] “xÆgBi89Klʬ4³|sñîC<[Â$Ü 8s;{pK7³ÈI$WÍ~ºø7Å…›hÁÁy[Z€ÿx g
+8
+'=Fú/8£ËÐ)!KŒP¦=ÑþŸÂû­zÉþ?Ë•¯¾BÆmùyB£ÆCZR ’‚=k¢Eoƒ¡/OA™
+†éÁµ~‡˜&} ¸6†îÔz°¦Ù…¢ŠϾ FMá¦qŪ©ª†è[®ï\\H݃pâœAlgôÙy(û»âkDð¦”z
+ ª©…ÐyE¡ag,PYöô7eW»eAnŒ²ùIŽH‚P–ÒÁ©t¦L¢åS pJ©ö·YÙ~M+V.&…Ækpâö„óà¦À;#/ /Ѫ=€ò…Ä¡i|+ÿ$Õ x¾ô9$MŸGRÅtñ!$5ç”'Á›š&"pSí§®üÿã<“眧|Fz”F¼ݾ(¸% kˆ°á*çä¸q gä9phË`t
+.
+›ôÝAèÔǯ;0Œ¾¡úMýö³æá›ÿˆK±—|_ÁÀb/7ÿp1ÃÕïW_*O¸«ÿ ð âQƒúµ=/»¡F€kI-¸*òžVÅC-Z8[—©Ž«.ƒ±çús¤ñgS bNÊ#”—h(  ÒÅgSX>Ôè³9ì@L¦âä9¬=«uÎÀ¶Sy^ízî­";}¦®ñù*(AdâRŸ‰NÒáäª0!M¤§¸·ê%2üÅõ›„ t¿'ªøBTȱI sÖB³D£¤\žÃs©™R‡pþM›åîùÁ@âÕ®w›à‡Þ-ÜcŽ@ßë4dcˆº5æ“,UØQðÍ®êËmŒ€:¢Öèu;¿ ÿÅà§%ðëP–y´Ä!,"ã—jÈm¹ðé± Ù£z1b%BŠ-àËZ"¸Ï™+,ýâ„ Ypü.«zʛͶ¬ü«Üî`ý!!íºÝ@¨–C
+endstream
+endobj
+421 0 obj
+<<
+/Type /Page
+/Contents 422 0 R
+/Resources 420 0 R
+/MediaBox [0 0 612 792]
+/Parent 411 0 R
+>>
+endobj
+423 0 obj
+<<
+/D [421 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+424 0 obj
+<<
+/D [421 0 R /XYZ 133.768 597.597 null]
+>>
+endobj
+425 0 obj
+<<
+/D [421 0 R /XYZ 133.768 331.771 null]
+>>
+endobj
+426 0 obj
+<<
+/D [421 0 R /XYZ 133.768 167.073 null]
+>>
+endobj
+420 0 obj
+<<
+/Font << /F84 237 0 R /F33 207 0 R /F94 282 0 R /F83 236 0 R /F41 286 0 R /F38 313 0 R /F44 314 0 R /F88 311 0 R /F87 312 0 R /F89 332 0 R /F72 319 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+431 0 obj
+<<
+/Length 2254
+/Filter /FlateDecode
+>>
+stream
+xÚ½Y[oܸ~÷¯˜·j
+¤­±}ˆó Ïh<ÚèâHšØÞ ÿ½ßá¡4#[±S¤è‹‡"ÏåãG:^Ý®âÕÏqøýëÕÅo´^e"sÊ­®ö+©µH\ºr6JÛÕÕnõ.jÚa½Q™Œòž~ãhÛ6k•FŸÖ*‰Šf-£Ñx˜ÅdtȽTÙÜò÷p(X =Íîò
+ó+h»]Ñqs›W[ «|(vaõãÐÖùPb¨zdE7Ç`ÙulãªþÔ¯ß_ýŠ½m¤™ öwE]6Pb”ŠÚc×Õ'2 è1KR·Žî}‹ä]Á»¢€ wüQ6AÁ™íʪâÞ¡èºrh»Çuj"±Þ$RE/ŠO¾Ë;hʼ5w姵u¶lY2Ü[¢¸¡'MÔÚC“oTEßs«Ýp?š0ã7Üé}M»ã¨daÑKŒ¤ðl´ßŠÓüG2é‡7™9Ë•:!UCƒk+á7/8O¤D%G¹“ýå~yÃkaM:ßwSä…Øè4Ê+ŸJ=÷ -ÿú| }rìâ_Å?>j4ƒÜat‚ÈY ³Ëü¤@Ùt
+ä¨%|Ã6žr
+ÔhÂBÀŠ‡ùIæÌ8‹qß®¼Žµ.ºÂ×Vʶá!Î:Èvhñæ÷bd\õ-w!ÄÃØ
+3ª².¯ªKïy€$έtl%Õ&ø­Ê^¾m‘À‡:|zcdÊšÐQ•ÃPÜîŠqV ›dTS•ŒõOÝ×±²A/;9ú=cùÀ“¨˜ÝØ{Ñr¹ž¤&—±.Êè²¢€r÷žr@kõÇ-Iøk›÷qŸª©[±rE¹Š¥T"Ò4奌€õR*½]kI¾hè[è _r”@í‘kÆFõZ+àÔPn¶$vÈ»|;~Z;5¥ÛB™Ð.S¡ÓŒ—þ…ªÏe´VGÎ…õ»Ç&¯ËmÏ¡R‘ðÞƒ!Ôo6o&á¶)X¸f·qï=E*ç «µ,6eçO$hÁ2(¤…¨0ÊÀ¹]±-ï:¶˜MB'%ý)dlQMöàÒeðHz6Nž€’EŒ<1"K'hùËÕúXaãt¡Ã9±°–q’¾¶”š–ZP1³å:ŽÕ‚5‰HLvfŒü‘„¦SxüEZžCíF*#¤´HNx\†ä¼–Ú¼[o,²“š»r¿¿{§ÞüL_{¤Iú¼:Cþå$ü~ÑV§ŸlÑœ'¥ç¾\òÓ&‹E,µ·U¥še
+Å–@E–`Y¯Lgn¥…“ŒÔ¢×Ëp6œ¤>zýíêâãy;^ÉÎi&ÉDªÔj[_¼{¯vDžb™tuïEë•rÂ:ÚBµú×Å?˜öÌœt9Ð37æ.+R£Ïójq‹Ò(l1Sú,±æÆëXŠ{Ä>E¢ÍKÆC¼0³}¶ÜI•iœ>ËÄt–‰ZbqaFjw
+ç\§H‹ÍfÖ|=JV8g+9*ûq!÷o(àìF+¡á—Îy¾RöÜ"tæV€8p–àpŒ 8 zŒÆ¡¼=xØÍ4±
+^¼eiÈš®¸ÓtÉ•5Ëè²÷÷ÚsÇ;VÀŠÜ3úm§ËP÷M ±Ø_=ÿù€Rá+4€b~ùÛkd
+áu"Õæ%ꎒˆ`Bf¡™„aq_IܬÊ~èC¯€ôÃ|TæeèÈ&¦þÃ=·ì¦ãO»ñ;cÖb‰Í ³rßT¯Êä‘?RŒ¯1ó×Mê>e5QÃ…§À‘žÂÂw~zùh2²]¦éÓ‡zµÓ*Ð|
+endstream
+endobj
+430 0 obj
+<<
+/Type /Page
+/Contents 431 0 R
+/Resources 429 0 R
+/MediaBox [0 0 612 792]
+/Parent 411 0 R
+/Annots [ 427 0 R ]
+>>
+endobj
+427 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [206.059 393.682 213.033 405.637]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+432 0 obj
+<<
+/D [430 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+98 0 obj
+<<
+/D [430 0 R /XYZ 133.768 569.627 null]
+>>
+endobj
+102 0 obj
+<<
+/D [430 0 R /XYZ 133.768 286.667 null]
+>>
+endobj
+429 0 obj
+<<
+/Font << /F33 207 0 R /F94 282 0 R /F86 239 0 R /F38 313 0 R /F41 286 0 R /F84 237 0 R /F44 314 0 R /F87 312 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+438 0 obj
+<<
+/Length 3032
+/Filter /FlateDecode
+>>
+stream
+xÚ­ZÝ㸠Ÿ¿"}:O1ÑXßvzíÞ®-
+ô:n¨'vw;g;7»-ú¿—%Çq”ÙÝ¢/c‰ú E‘?’ʤ«Ý*]}w—úïïŸî¿ÍÌŠ+&•«§íŠKɬÉVF[&¤^=•«}¿æ\èäû¢ÝÕíî~-­NÊj[œšqxCÝ_îHŠ¾.Ú{)’‘ˆÛ®? ÷?=ýññ[)W9Ë0È&]­g™ ýŸî3™t°Â¤ÉK_6y2î}£¶ w["•õ»Tʪ¯Ú{‘9n@¬>‡cs!ÌŽM3>⟪$rÝ^0H“ºÝ©¾"êwEÓTýGy—êôÏpÇAîtÕïVÔøá»;^¸¡ R ÀŽ4<$ç,׆Nù=ì¨ÒdòH†"Qæɾ(itìˆp(Þ‡a VƪêùŠÓàÇœF€@ªvMG‚¡²êa6I1ž×â8xOSG¸RÏ«ÂBwµŒn.S—7çåM£¬·ÛMWm·‘KÖ)ãÖÀ
+7³Fá8OžOu3R³CÖ\ø{
+æ ^ž“ŠÜеUÑúh«n%)™ÃµHÍ/•¼é‡¢-âG’é$ã;.Z$ØoLÁ€8J†¹ÀWe ì °«‚>ÛSOÞ!„IºãXwmÑøýît˜
+Ïk‘Á\_ ¶˜yxfÜô[òÛ9 7
+Ô<c2ŸuñLÆ…CØZ%|‰@”IS#º5Œ“¿Cƒ0î£'; ¼ÒIQ7Ž‹#°MC 6EHxÓgx áÎÉ
+h]ëId¸–iŸ™ÁÈ"}­ Œ3àîZÈäOˆ0Ûy¢›?m}$n1 øèÐÃþaƒ'î+‚²$j¤ -—gµIP†[I4ÄY?{1ËDÜñ ¦ÝÌz$‡Í¼àxS­ßé‚X_=¼À´T&¿öß »TAv ú É+}º
+XŽ Å"Ë?'ŵ7R\u#ÅÕ). p(È1rÒ.hq@çÑÕ$4‡TÒ,ìÌ”Â:qè¨ÓÔ&аޡDâ'u*zòÕh}õó©vx†ËœÚ JI$v
+ŒcH¯ýV§!lƒ7H #h4+i×€ÑømîŠÄqü¡\Œ‰dØôõñj´úpì+H:ˆÎOÎôq3PõˆNã÷vÒÂ
+csrÉ}Ä™½Úš™¼ úš¾¯Ópál™=ºÊ"ù×MC[!åMð£H GƒŽwòM½ýHï+ ÷ Ú©¨éo:C`£¶i't£X¼´àrb
+‡SÄÂyÊ”áSÎO^†\:úN…7„öMˆ—D.,–
+9aO ¹›†Äâꥉ®P"™/6°®^M_ó÷k7WÆÌܼ%ΰU{Šƒ
+r£<ã’²$|y—,M½%ÔîÒ¿yºûÙGM¾’9\•ÉV"ËÁòÕæp÷ãO骄AÇ`LÙêÅM=`’›*,óšÕßîþêýç©”³X ¬BS¯ü2VÿÏØÜ‚hJšÛha—úòzžáV ¸Ñä)ø–Ê™°×NØB©…5x9 ¾Ãók¾Îi<o÷‰¢}æ@aæâBà3¹ƒ•—Ú½{pã*-¸ë9a´ñ1ž›é†ˆmºÜ¤L蹤™
+–åbQ̽lA…`0©½‚ ˆ–U^n…±ÌLÞ
+P‚Y±È|†SÈ”
+B¼ÈL‚x²=ïÉ/•€_¤—N¼2Ö¬¼ñ¤´îç§
+¡uQ$‘¹cYÚ|á:Œ}… -1 †Ž#û¾nßnÚÍ­˜?¥K°Mg£Çæ4P‹ä &&|‘k…ÿ‰àp·ŽðZ®%-”Jâ2ÙèqàïAá‚\B®¨åì×$˜§ƒr›rZŽ?ƒBZÀÅüaRjå&±UÐ:ONÔ¦—éièøNâßË ‹_=P›?òŒZ.†ž×ü|*ÊøCÁ2Ô‚¤-p(i½k ¹Tåר¹
+endstream
+endobj
+437 0 obj
+<<
+/Type /Page
+/Contents 438 0 R
+/Resources 436 0 R
+/MediaBox [0 0 612 792]
+/Parent 411 0 R
+/Annots [ 428 0 R 433 0 R 434 0 R 435 0 R ]
+>>
+endobj
+428 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [467.627 631.928 474.601 643.883]
+/A << /S /GoTo /D (section.2) >>
+>>
+endobj
+433 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.574 538.383 167.548 550.319]
+/A << /S /GoTo /D (table.1) >>
+>>
+endobj
+434 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [472.014 538.383 478.476 550.319]
+/A << /S /GoTo /D (Hfootnote.5) >>
+>>
+endobj
+435 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.402 394.367 199.873 406.323]
+/A << /S /GoTo /D (subsubsection.5.5.1) >>
+>>
+endobj
+439 0 obj
+<<
+/D [437 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+106 0 obj
+<<
+/D [437 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+110 0 obj
+<<
+/D [437 0 R /XYZ 133.768 571.716 null]
+>>
+endobj
+441 0 obj
+<<
+/D [437 0 R /XYZ 149.011 143.205 null]
+>>
+endobj
+436 0 obj
+<<
+/Font << /F86 239 0 R /F33 207 0 R /F84 237 0 R /F93 270 0 R /F94 282 0 R /F83 236 0 R /F89 332 0 R /F88 311 0 R /F74 440 0 R /F41 286 0 R /F87 312 0 R /F96 297 0 R /F95 299 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+445 0 obj
+<<
+/Length 672
+/Filter /FlateDecode
+>>
+stream
+xÚ½VI›0¾ó+|„‘ìxì«v*Í­jnÓ9ऴ,)ËD#õÇ×Æ ”$Pi悼÷-öó³1Ø ¾8øÂøqí¬îÉ€`½”2$¸>•ˆ
+ý)îÚÌ6©ò cÌ%¼§õÃê>@èÄ€›D&‘2Úf|R»¨IëJ'pæ~Ç>.Ê8É£òÅ|¡n¬ÊäÙóC7ªõH¥«*‹9C(FŸ@5 1Q'ùŸ×Îo‡èW  R @R­ÜGl3çñ ƒXÿz
+Bà›@î[ò_®òˆ«PH¦=´[EÓJ°@Tþ£…K±\ —BX-ÅV/™´ñ ~©¼Ÿ%"ÚO]<±bÐF@BôýKÈ0²Çè¾^o~·y›^Ȉ§‹3é’P%¬Ôa
+_0„CÑãêuu³f¿‹à¿VX_àQÊ{
+v¢hÇCÚTö dIÞÿ¡×TuèVT·‘Vp†,Âu¿®œIÌÛè÷»w¢™g‡c¿'êr®Qu £åÌ‹ ÖªÌæ ]\0FØ2ŽåEÙcÃ(þÙT“û*ˆ…¤§€×9ºàA¥jWk+i’MÁ¢ì;*aÜÄ[4ÉÑe |”Éþ‡éÚ׈tùësäŒÈ$uL¦™lÊhU®û9or昙ÙçVp†…6™‰­RÓ;¥[øcYØFšÝ®'ü5kÉ„!oEÖVÕlªm sc«‰÷êm ½KZä{hÛV e4c¯Ç¦¸ž/VÁ‹nú›_—šlpÛm{³좴R³[ÇLê(M¶KfŸÏþô=ˆr}£rÉìöE•aŒ΀ˆÝÄP>¾þ3 ¢¨
+endstream
+endobj
+444 0 obj
+<<
+/Type /Page
+/Contents 445 0 R
+/Resources 443 0 R
+/MediaBox [0 0 612 792]
+/Parent 411 0 R
+>>
+endobj
+446 0 obj
+<<
+/D [444 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+442 0 obj
+<<
+/D [444 0 R /XYZ 263.422 541.241 null]
+>>
+endobj
+443 0 obj
+<<
+/Font << /F33 207 0 R /F68 202 0 R /F70 204 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+449 0 obj
+<<
+/Length 2357
+/Filter /FlateDecode
+>>
+stream
+xÚåYKã6¾Ï¯ðÞÔAÌß ,Ø,sßvrPÛê¶Ù2$y'=Ø¿U,R¢ÝãLŽ9‰,¾ŠU_½¨|÷²Ëwÿþ/¾ÿ|üðñ''w+Œ0»Çç—’YãvF[&¤Þ=wÿÉ>îUWÿ÷Á¨¬¼÷}u}øåñçq—?Ét k™åFüÚç¶{Ø‹Bdé†Ìú¦ìODƒÁ3Ûg¢ÐAZgå
+ ›U—£Wˆp JF6 –D„B3"6x¢åq„š¿Bÿ˜3u’)YÌœ©ršP¡œŠÎiäL‘ˆÎ)&8SÀÒgû¤
+§”×}@'ˆZŠ9:¯ädÑ@èªðF
+h÷¤æqoMĽ~Ë s& ý>Æ »qØÕß™B?00^t8·
+¹Çø‡äY{ƒÎ@í)jî7í»lš×'1È
+‹r¡`)Œš0‰IGF…\UeMÕ‡Öp*/Ô¢ÊÌ“6ã’íá3—깃¸6á˜u"ÉOΑ¥•T¸w³jhÇ:¼ n2»ïf"†.:žÅï²,0ìÂ.R°hQûòø+øÁo¤_:ß2,Tæä¥7aôŸÄ%Dƒ?òàN4ܶfƒ| êÖ®:Þ˜[øEcæU,l ü= h^½3ÍÍ”¨.ýÇ:ð3¦ö
+ ‰¨‘¾:¨C‹P"ò–.ÄtÊúQ>ìx É?dYZ/üÈLéøˆJW\%JGjIDzJõJ·xÿvøLcK¥#Í?„Áœ4äôD:UÍ‘&üK,©Ù¢šSœ˜ïªçPç(ô ôÿ}GYwŸ“0‚ cçQ”
+¡OÑÃ\ïD½x+zûÃ鈴 #¦ºØZÁF(9nTÆýFØ`×ÆtoÙ2Y›üZZ#j»R’Šž±á!ƒ)[t2duþ±ß £·
+òÔÑxœ(¤£&¾ªzçÃu
+!÷^û1„îÚò€<$ O<¼”—<¢+ÀhT^-á’Ä+) r¯FÊu¼’*Åœys><a=¹®û`â‡RÚ%°ãï—ǘ–ŽYLÀ]Õ<¡‡
+KbTh©ó~JS0'¦$nQä
+MÞß=¢ Êªøc úo<¥K‚Ç‚ýŒƒŠÇ« `ãA#ìúàŸä„‹w]ò8<0‚ÂïrhZt¨UYÇ<Ô·Ù¥zIýW^çÑܼ9eë°Ó¡Zœá/û‰ðKš ¯?0¶¥L‰Å·Ó<¾JÊõÿÝU²ºH±a*T`–̹ e¡gKþõøáÿeð1£
+endstream
+endobj
+448 0 obj
+<<
+/Type /Page
+/Contents 449 0 R
+/Resources 447 0 R
+/MediaBox [0 0 612 792]
+/Parent 451 0 R
+>>
+endobj
+450 0 obj
+<<
+/D [448 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+447 0 obj
+<<
+/Font << /F83 236 0 R /F33 207 0 R /F84 237 0 R /F41 286 0 R /F87 312 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+459 0 obj
+<<
+/Length 3108
+/Filter /FlateDecode
+>>
+stream
+xÚÅZKܸ¾Ï¯ÐmÕ‹->DR1 ,ˆƒä²Hv.m`å–¦G±ºÕ‘Ô3ë,ö¿§ŠE=[=õ ™Ãˆb“¬bÕW» þr/ž?Þ\½yoe²T ÜÜ\Jf´ tb˜Ip“Â7QQ}ÞDR„õþ=45½ì7Ÿnþ6,ö潜®¤S&€_ÜYþ¯SÛí‹ÃFØ°ÃéqعexØÝÔñpWvE{̶þhÂè¢Ã9aÂbÃCXb>«*n;êÊð{Ní¦ÜÝMhåEUî#ä7ˆ”bJ'AÄ9K¿E Ü´0TJX%§Q
+Hn+X¹n‹œ:Ú*kï¢ÛºÞ=uåESÞof<‘í·ý0è6;U½¿C&@êj"+!SÆå ¬x%" ÷§…|gšŠ„V,–)ì$-,MmOŸÛmPO§|W<¦!Qݽ«›ò?5é'«€W•œkMé°¾¥ßH:Ð ’å±û®¥Žc•mËÃŽ^š¢$B 8µûH³m©„ ‘ε㔠;ê"§Gš6ÛK’°D¨~/¨ÍëM¤4@†í˜ofðP<<» GØCz«Nî5·õþHÈ;´
+µ<)g<P6<š`»¿úð)rø TÏdjƒ7pËr甪àç«¿û<rJÌ/BR bGîc»ý#’ `]Út&–Ù¦1G—“
+;ÆÎÑ»`Ÿ°,™‚cÍ7ËÔc~2êhM¤VÉÿ¤ô3!•¼"¤ÔØÿ‹!¥$dƒs¿¤†¥ž )þLHËôi ØšZpªvOþ‡¤þ<äΗǨýºÇÜó³Ëä늸Ê6(k%zMç×ÑgζÏ
+½4‹Ë]ö'ù¼.÷=®»ŠyÄp•fv¼æ@Ã…ÝÏ Wë † $•yÚr“Q—,+O[®”0 oÈà`È=Ù+4ú¤ËN’.ìG«À'ÊÆ—û¸„õõÔ¬*ww¿Ä-éž Cj8£‡V
+ôðŒÚƒ‰CU÷ÉÊq†# ω•ãÄ1!T¸+8«Éªê+-Vvó‰[o˜ ÎY1ἦu}uŽXEã=Ý’’
+—ÃuuõOJ_TŸTü.\¡=£¸,À
+nÏÔú„!ÞŠd á²5lŸy)1xŒ%åíJí>eÆ å†™,í"${ 8ß" FÛ§ð?+¨^ÓEè>ûÒצQÍÙÁ«ÙmÕcdyåÁ©öOÒbvÚÍ
+‡1œ\¶è®¿d;ß1͇€<îÍùÓü•»Äžpy[WUM_5ãS½T¡á/ôò1 µ\nÏ) £|ÎSë"«„è4 MKéü’»o ‡=¸¸é’ðê(A¶ê¯] Ç>LË›bmóÕO[ž.«=Ýkƒ‡±z[N>þJ)@ó=›óN¸ôW¤ËS!uÒ×b©ËÆ£UÕg –îC|Ðg u9’5”tâÇ ý7?î• îÿǺ»£ŸèÛ®ýŽ^·Ùaâ¡-äžÈK·‹ßWøo-,DH²)»°ý×Ðp
+ÿCa¼Àv;ÿ
+endstream
+endobj
+458 0 obj
+<<
+/Type /Page
+/Contents 459 0 R
+/Resources 457 0 R
+/MediaBox [0 0 612 792]
+/Parent 451 0 R
+/Annots [ 452 0 R ]
+>>
+endobj
+452 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.297 165.907 188.759 177.843]
+/A << /S /GoTo /D (Hfootnote.6) >>
+>>
+endobj
+460 0 obj
+<<
+/D [458 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+114 0 obj
+<<
+/D [458 0 R /XYZ 133.768 284.863 null]
+>>
+endobj
+461 0 obj
+<<
+/D [458 0 R /XYZ 388.179 264.654 null]
+>>
+endobj
+462 0 obj
+<<
+/D [458 0 R /XYZ 149.011 128.717 null]
+>>
+endobj
+457 0 obj
+<<
+/Font << /F83 236 0 R /F33 207 0 R /F84 237 0 R /F106 356 0 R /F41 286 0 R /F87 312 0 R /F88 311 0 R /F38 313 0 R /F86 239 0 R /F68 202 0 R /F70 204 0 R /F93 270 0 R /F96 297 0 R /F95 299 0 R /F105 351 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+469 0 obj
+<<
+/Length 2616
+/Filter /FlateDecode
+>>
+stream
+xÚY[¯Û¸~?¿Bo+±V¼é²En°Í¶Ún›ƒ¼$ ¬bѶ[òJrNNƒü÷ÎM–dë$§}MÉápæ›oè8Øqðó],ß—÷wß¿2&È£<ÑIp¿ ”1QšdAâÒHÜ—ÁÛð~ïWk“¥áùtZ­uú•
+ÛMÑIwÕñ×w¯W0ÞWÅ»ÞÅÚq«¨ùÛœúª©W¿ÞÿíûW™nšÈj ŠÑ¦U×°Ð\¿<r6exͺé¹ÑúM³««,£Õ:‰Ò~a·ØDNëa¥¿¾þçS»¹AfÔ<X•D±IƒµRQîÄN­ï·žtJÂJλAƒì‹zçe oä;XµôÛæqoçû¾ªw"ÛlYä~•Ù°x “Ü)Ð(Ú]Àÿ|¼%1EÃÃíRg²Ö¡êz_ÊÕÜëšo®›„újÝLkÃé¶É$ñÜ“sX-dMx¤©Ièªà®jn>GXMß涾/èX À¦…Î+8œÉöðûÔ¢g—¦![Ä«qûoZÄÔ‚5lªÃ4½_2E¿/ðôñ W œßw›¶:I?Ùä\îdô]lìîÜzì$æ6ö“góÀÞ"ä¼ùÔÃuœFÎ]â ¯`ÁÃÓ(É/Qp*ZшTA‹¾¨Ë¢-_àÏ,|ØWìØZ»HC\ÎÎ},> Ù>Oà*l¸‰azW( Š(ès`w:fsîù7ï ‹­¾ë¸ƒíÑtNCg4qøòÜÿ°Z»$§©·oà¬îëdµ 竬E–“ðŒÉ­À¼‡ªßc †;Æ(†MËc8`Í]džÔ.}+Û†Cí0 >¢[’½ÆuÙ,M¾åŽÖŸ~ý€µƒ qÛ­(‡·à‰„—Æ„eÕÇ.îXr7©
+_6=4†Kº à «ÿñmíÁ6íªl”[;ßú¥ßgLpƒ6°± +¿ãÔ ¿çS‹†Ø­Ö
+|‹Íƒ‚lîa<JÔ7Ñ<UfŽæàÎVþ4¼¸ÿÔ·7»S±-åZÿû¹jÁZäó*·‘N®RÀp[¨úy¿G›ÅƒQqáÇ#ˆ»xì|-vF?‡ËiG¤°|E(ÏŸ}µÛ“_ÀP÷¤ÂáøYÅè×ÃA”2.ü‹¯7~ÜkÁKäZÝ>ùç–ÜÚé'î …fšö]ƒF¾]w௷—‘hàpÝ(„÷F\
+€Tâþ{‘ê¹ ‹[såûuYmŠž®4 þ”TõÅÕ8çâק§
+1C„(OR5VBO*bò<Ò±¾VÄæÙÿ¡Bp„ä’®®3ÝHOf&6Ší%´Þ)cOâ···á™ý3×¥?TÇ¥Õ3°‹›®ŽâLSÙ7á9ó2”âhðÓ;ÝœçŒ[©ožG¬Æ¼®q;ª_n÷J³H%ù2í~â’-ŒùŸmñÃ%fòŒá¦TLKDGDœÃ¡æŸ•|ŸQ¢ØMmˆ2þº÷õrmˆÎo-¨€•6ZêÁ9)j
+{ŸNí›…rOiL—K<pP)VuÑ>.€’³dƒìÈ:T’D‰N¯±CpØK
+ìåBÂŽ59UŽH5^,
+9'çpFÏù9Üðsì|@Á:N$伶ïUí’Ò{#*l3¢¡øé<þbé¶BSŠàÞJl¥á¦©×‹OTýa.Î8‡Úë`"žŸòëö2ñ…Æß‹O\Ú¡£`D,Õ‹n<\5:ÓððXÇjÓ yljÃåq…ËraÖÍ
+y|ÄqÙ}Ó^þ1v$§Ö\œ®r…´ÒÁ fsþg¹"%vº¾WNˆtn­át*»õD¢»Ÿ¿0(
+endstream
+endobj
+468 0 obj
+<<
+/Type /Page
+/Contents 469 0 R
+/Resources 467 0 R
+/MediaBox [0 0 612 792]
+/Parent 451 0 R
+/Annots [ 453 0 R 454 0 R 455 0 R 456 0 R 463 0 R 464 0 R 465 0 R 466 0 R ]
+>>
+endobj
+453 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [355.909 642.347 362.883 653.139]
+/A << /S /GoTo /D (table.1) >>
+>>
+endobj
+454 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [444.731 642.347 451.705 653.139]
+/A << /S /GoTo /D (table.2) >>
+>>
+endobj
+455 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [275.035 630.392 282.008 641.184]
+/A << /S /GoTo /D (table.2) >>
+>>
+endobj
+456 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [443.274 630.392 450.248 641.184]
+/A << /S /GoTo /D (table.1) >>
+>>
+endobj
+463 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.484 474.974 218.955 485.767]
+/A << /S /GoTo /D (subsubsection.5.5.2) >>
+>>
+endobj
+464 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [292.89 428.697 299.864 439.49]
+/A << /S /GoTo /D (table.1) >>
+>>
+endobj
+465 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [278.389 392.831 285.363 403.624]
+/A << /S /GoTo /D (table.3) >>
+>>
+endobj
+466 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [295.33 380.876 302.304 391.669]
+/A << /S /GoTo /D (table.1) >>
+>>
+endobj
+470 0 obj
+<<
+/D [468 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+118 0 obj
+<<
+/D [468 0 R /XYZ 133.768 462.03 null]
+>>
+endobj
+471 0 obj
+<<
+/D [468 0 R /XYZ 379.783 443.758 null]
+>>
+endobj
+122 0 obj
+<<
+/D [468 0 R /XYZ 133.768 272.788 null]
+>>
+endobj
+467 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F94 282 0 R /F86 239 0 R /F68 202 0 R /F70 204 0 R /F45 316 0 R /F41 286 0 R /F88 311 0 R /F38 313 0 R /F106 356 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+475 0 obj
+<<
+/Length 2684
+/Filter /FlateDecode
+>>
+stream
+xڵˎãÆñ>_Áœ–2V\ö“¤\ Ø‹$—Ä;‡^ር±¤(“ÔŽ†ÿ=õèæCÃIv ä"vWwWUW×[iô¥Ñû»Ô¿»¿{÷ƒRQ‘VÚèþ ¥’Ìæ‘5Y"•‰î«è§øC}>¸Ý^‹".á#Ó¸©‡‘Ý‘!ƒÇúü8¼…©°áÓNæ±?5žê·ugçwdÆxèÚ¶Üï~¾ÿë»
+½àHJ™ì+ƒ»ìŒˆËž~G‡ŸŠO­î¡ub
+}ËË-<E²afJ&ÚLB‚©ÜÀ~¨°ü’²Ñ‰&m7ÊàY”€²š¤SŸéîCjúªø‰L!•Ü-ìò+ã´R ©ýYú–È‘ QymÆ f÷
+ÔÁæÙZXmš+‘ÏD ŸIð1ŽA|àSy~t^Ñdñ_Ž¼…5è™'`½¤;%©-œº6`ðKÞüߢhɤÏk¢/v2ðÒwû-ûø\Wȶ4ÀìÖ“ÂV1éйl݆T¤Md>)97ÄÇ
+Òè~¬צôkàêy@
+ߥ qŽFÌHŽ]Ótä' D0]r‚ #‹Ü0•'zvá¨þ‡Î·
+†S¤ûÓFˆ(’ÜNªÍ¥É3  9Ê™Àäò&Ôm몊ŽXe7&~FYÒižC¼zånkqØãëãµ"¾Í9‚ZN6®{ƒ2d‡׆@çr‘rú·©.â¡«í®œµµ>$qæÈÇVºþT'¬92ŠŽømËPãôä,PÔ¨ëS9cE¨-èÈŒƒ ζs<°kÌÿNñ”NT:íóÏä³a!PIÖÜœèÒŸëîÚ£P4(÷ĘÍ8×·P©TP³òèaÑ͵®E¢\ëWžÌ¨DÏE,Þw«jU˜÷ä’– ]¡Pà×o|]waãµ*…ÒФO§šóU…7xºÍœ€BAÿÍ|ö~ËJ#ȇ-i°LâR&½ãB¬(´!ßÂ}î‰Aá! Ê%"@/×qCD²±ÓÛ­—\ 1i{(]÷¬c8[9,fͯÌÉùaŠÄwÀCͺQG*ÆeÛ]¹èç9%dð|Ê„½ö1”Œ0
+j8UÜt~ÆÞ·BŸ!wœ?cÿhdÐËbSéuÓEAvö™uú.ç›”ûêõ~ËßÙ œÊ 2"RžßŒ ®5U…@§è„g0:QQ…j6•“ɤä^íWL•×M€Ÿ 梎‹PÂ!´o¤(Žj”q¬Ø¸_tî„ŠpYÂN
+ü6¯l<Yð„{a2ÿ™±)Ÿæ\ßny‚›úš¶úƒ2ô’Xõœÿ¾Ù86‰¢dhqE¯ÞEÔ7/|šÇÐ’ASHBXð 9ým¶‘A ·s×ÿµäHÞæˆ;$µèj(¯-ÒÐ¥LçB|úŠ‹Ofz‰€4ÁÓYRP¡>ÔQZ@ȸÉ6Ê‘Â#†b²/ŒÒìtñõ¨>‡\À‡è9žÐŒ¼>ŽH³á‹O
+̯ÍÒÇô‰ä‹4 -–iÀ¦Ìo”G~¹ÌÁ2Iœ4œÄ¼wn«ÜN7ü9ºó¢X ¿Hý›ˆG`A“‚ÑÂ&4&gˆ•†lsÓWX„Âvy’ç¾/(óÛöè
+endstream
+endobj
+474 0 obj
+<<
+/Type /Page
+/Contents 475 0 R
+/Resources 473 0 R
+/MediaBox [0 0 612 792]
+/Parent 451 0 R
+/Annots [ 472 0 R ]
+>>
+endobj
+472 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [238.618 546.705 245.592 557.498]
+/A << /S /GoTo /D (section.2) >>
+>>
+endobj
+476 0 obj
+<<
+/D [474 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+126 0 obj
+<<
+/D [474 0 R /XYZ 133.768 534.113 null]
+>>
+endobj
+477 0 obj
+<<
+/D [474 0 R /XYZ 329.173 494.885 null]
+>>
+endobj
+473 0 obj
+<<
+/Font << /F33 207 0 R /F94 282 0 R /F84 237 0 R /F83 236 0 R /F68 202 0 R /F70 204 0 R /F38 313 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+481 0 obj
+<<
+/Length 2768
+/Filter /FlateDecode
+>>
+stream
+xÚYK“Û¸¾Ï¯PN‘¶F0ž$*W¥’¬·fÞMvì‹íG¢F,S¤–¤<™rù¿§ ¾4˜ÑT."4F?¿nñÅý‚/~¹âáùÛ«7ï”Z8æ™,nw ¡-K…\$&eR™Åívñiy³[­•1ËÇ•´ËúD/ø’UøÛÑL†½ÜŸ¹Ry“O×Úc¶)ªûðéÖ<m·Ïij›7Å·•I`Ç-Í-‘dÇãj åÕ6ß^Ã\ÂÇϾâùc íêÕ—Û_k¡™Óž‚9î°AÊ}VÝã—J-³&Gâ7ﬞ\_;f²ñßü´ölKë6?ùLZiÂŒNzrdýé–Â1•ŠaË7÷´L›aOvœR¬¥TÌ) ÔDùG^曄¨äï˜ÚAèOqš)10uäÒtPFß¼Hi¦kò¬Ë·áe“˜Lr×ï„'æÛÈJ³ÄØž ¨ð”¯Ù}8¨>vE]õçàÚ u
+Ï]ÖÐtÖҳ؅gGÊ–‚3‘Ú¹¶½q‚ Ò`¥OW KeÏÐoïßüöîÝ3|nŠŽ ©ßØ[$Œ
+°N2Ï )¤Ëc“·yµ oõŽhÇeC:ˆ!íÅð”Y©9ŒÕE1¯• X˜KãŽhªß ]jÔ d"FÑDÎ
+„—N Ÿ¤Ðµt‘ìn¸÷3‡€ÝØÉ!Qá Ã'FWð»ÝPXÉ›*+ËÇ•UË ‚}Â$ÍÓ%›ëÈÁ`úf´Ä VdEWþç)„©²od„Ö±ìd&v
+Gçá@‚#èùñoE„ —×s [$ ƒQÂð=Éb8?‰ÇNUh5³±vùs/æ!€œÛˆÓgnÿ¶z*0¼œO#I2u,ØI²ÚLÑÐH&ƸcÅMm5ŠÛeøKÌ1àmF9­A
+÷y&Z¢‚_MÐúËâ“Ü@¢Q¯1ƒ„JüÌ Y\²@jÏlnŒBsÏ
+>ÛâpG±¸Ä–€Xj¸¾ì‚)«&\ ôA-—w§Ž…( ¹)3öEY–H1s:Ø+#Þ«ðŸ
+òçŒ
+
+,d´PåáÊð™$›Ž&Š6 kw=LHBfjj,·'¼¹ ü»ˆŠK™:Ï‹o×Q ;f™ª¸nÐ]@WÈ^(ÜÝgg\žÜU¾i‰<£×Y¦Å‰Þ•püP”%QU›7!– °MÁÏ*n§Üd’¡…áòz׳ïÛ|—€ ìbá“®©
+0^ÐhcE tÉÁƬÖ0©«½Æ¼Ìûôé£(š”¦A\°DœAÄmí«µ”Rhc5E@˜Àf‹˜ÕAT?aþF¶«-éO4‡Ï¡÷2‹@B¦‹è>ˆE˜³óø†ÛûàŸ>×âI5ÓcÅÜ{VìJw•}=)Á¨«s݇cH¦îÌÅš<È(ë†X…è”ÿ7ƒ2¦oÞu;ºxä>ú+2*|~–*õÑ¥ÃÍý‚ÿùå
+ÒLÎB‹×ð+b "
+‹ï4 à¢Ìî<æáX'51¡YÀÞ6}•Ð°i+'m~­ÌX‹Ï€¥„X9’N§Ò –
+endstream
+endobj
+480 0 obj
+<<
+/Type /Page
+/Contents 481 0 R
+/Resources 479 0 R
+/MediaBox [0 0 612 792]
+/Parent 451 0 R
+/Annots [ 478 0 R ]
+>>
+endobj
+478 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [293.98 282.835 308.702 293.627]
+/A << /S /GoTo /D (subsection.4.2) >>
+>>
+endobj
+482 0 obj
+<<
+/D [480 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+483 0 obj
+<<
+/D [480 0 R /XYZ 133.768 631.895 null]
+>>
+endobj
+130 0 obj
+<<
+/D [480 0 R /XYZ 133.768 485.065 null]
+>>
+endobj
+479 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F83 236 0 R /F94 282 0 R /F86 239 0 R /F38 313 0 R /F44 314 0 R /F45 316 0 R /F41 286 0 R /F88 311 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+487 0 obj
+<<
+/Length 2248
+/Filter /FlateDecode
+>>
+stream
+xÚ¥X[oã¶~ϯÐ[í"bEQ¼¨ÀâœmÛ—â´yK¨bѱ°¶äJò&F°ÿýÌpHYr”Û¾ˆ9‡sù†Iô%Ñû«ä•öÇÛ«ïnLå,W©Šn×—†)-#%5K…ŒnËènñYY­×¥]/c™ÊÅ35‡=µ_–o‰xÂ2Å£˜s–K¿òù43höqwÜÝ7Ûeœò$Y¼#N¸Ó®è7íî¹ürí'/6miÛ¸³~w¿4¡fwp«â™=˜ßÝ1:o,$ÊDqš0É5þ°/Ú~ #ë¶ÙQ¯ßXZŸõ¥9°OB ?Ùã2Î…2e‰\|.¶;³«T,Q:¬êlßWõCw åÆmäv\µU_­Š­—Äý¡õSzU‡­:­ª‹½¦='7›&’a¦pwsÚ‚¥2\¢òןÈäqS­–©Ylà¾dîvŶè©=â\sh鯬ºUkûª©=U]RgÕ¶¾kÿ:,ù¢ØnôYØYÁ¡ÏÓ“àmõ°ég¤9ã¹tM;à Ž•)Hàn‹z†Qj˜éˆIüi붠µÌ ª½im9«Ü4e:ŸÚd•qˆ?zÑ54¸.êUeKÐ?gËXåzq»AÍ#­;°†Žû ê²?–:taEý
+?S…m²iOP7~Þ>í·Õªê·Ç‰©`Šò>Û¢I:ǽpìàý´ ²8ª©†³©|ѬiÎù
+J&8æ|hªº„äØ;W…á{d}¤©"FB…‘ö°µDrÊg3Ñapûy÷ÔŒë!壬;ëžm0Š x´W2Õö!¢Îo蟺Ë5˜f”„q•E‚)îUª'n}¶Si |yD~Y@”'õEAàÛgü[·ÅêùÁºñ—ç÷§þ—§»§wüã×cEÊ5ÓJ½,ò·‚wB¤‚1ÐŒó,èœI•FYAŠçÿ.x^žÉ³¿ ㉊¸`Rû…73ÇÒN'Ofx fô”÷ÉÈv¦¾ó)7)%¥8k)e"Oà5QÊûÙ³!.8\ö·Lä„&ÑNnÈxÜ\‚‡½2¬/¢2c?e"#T`ƒj"µÑ#ª j‹!ý½ã³iÀäL§æ—ÓéOM—v[í*Šs¢fûpØY
+® í(ªöž`ëGá⡧à hþJ!Ãs@ÏIzR­ÈÚneƒb¹üw,íåb7´óÁS§,7âBh#ò´‰©®CõÚ8^cŠñl
+¦´»$ùÞÌ=}ùxí¥g_”mµîÃsÏxŠר¦WdNDçQoN†tŒMgÌ }²ï=,õYANúÚ“O K“á6Ã!f^
+rGý¦;jg»Ã—ÿÎ H˜!è*ÍËÝ‘Õ3w_¸ãQ'âØ‚¶yj˜Rúë‚‹1éôD¹ŠÎ'3ðp(È
+ࣿÿJ#€;›àâÒá5öJ¶˜ ^ 2rP›µ"9WÇÿðÑJ
+endstream
+endobj
+486 0 obj
+<<
+/Type /Page
+/Contents 487 0 R
+/Resources 485 0 R
+/MediaBox [0 0 612 792]
+/Parent 451 0 R
+/Annots [ 484 0 R ]
+>>
+endobj
+484 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [240.507 445.747 246.969 455.746]
+/A << /S /GoTo /D (Hfootnote.7) >>
+>>
+endobj
+488 0 obj
+<<
+/D [486 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+489 0 obj
+<<
+/D [486 0 R /XYZ 149.011 128.717 null]
+>>
+endobj
+485 0 obj
+<<
+/Font << /F84 237 0 R /F33 207 0 R /F94 282 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F93 270 0 R /F45 316 0 R /F88 311 0 R /F87 312 0 R /F96 297 0 R /F95 299 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+492 0 obj
+<<
+/Length 2561
+/Filter /FlateDecode
+>>
+stream
+xÚ¥YKÛ8¾÷¯ðmeLÌ©YØôfwæ¶HcöXµMÇBdË£Çt7‚ü÷­b‘zØìNcöbQY¬"«¾úXNWŸWéêŸ7©þ|wóã;)W+r‘¯îö+.%Ó¹Yå™fBf«»ÝêCòp°­]o”Ê’þ°æ‰owÃ}·m«s¯*©:?dØ®…I¾àÝQ_u¢1ۺ邤&H´ô­­>pNOýç²µ'÷~°ÉVIy
+ýbÛõ)ÛúiýéîW0jÃ9+2¯ø¶9ì¶G-¤”nI|V=>½4÷uÀ†}<·¶ëªæ4)“­«cÕwÌ­Â+”Z.õ¾9¢OŽ3;àõa-4¬4ëq–ÃsWu}uú<TÝ:NM_ö°vYƒ9®§¤Çy½éM5—ÒìéiÿXgYRÖƒ›J}û¦ óQßMLaØß¾*k°/-À>Øƶ"Q=<ñìèÓ¾mŽØ2 }m«ò¾Æá}?ØzG­-t6§®GcuÒ¿^.½î¶=”çŽä XMSÊ &XÐEÚ¡*€9‘Ó¥S¿m‹mîÏ:?¦Y:ŽØÙ}9Ô=ôqêXxW°†DQcœZ—}o[†î–&¿ôÔù€S›¡ökuÃÇTæ[;N=‘2pÒs½sÒ»Ü-üQMîÎWQ4î0Ì5<|gÔ,Z³œic@zÁd*IúG.Õ®ÚïÁäõ&Yò•ç?hC±ýmñ¥9oº§ã}SÓë[z œÑGhht›QÍ$¤ÁÝ£íùì=©{1Z³L×Æ|˜ôA»¾¾Ã~|ó„‡úíñÃã[þiùÉ+kæئËSk;Ùoiˆšë³Ôa€óÃç6s8L™qgtŒþ¬'ïbËJ–æMBÓˆPÉŒVaÌã_מëä)&-c2W—*Þüãîæ÷Ý銯„6°¤^e°•€åÛã͇OéjßÀ™,ÌêÁ<®$ŸÊ¡Y¯Þßü›òÁB/Qp& 'ã01ÙúèÍÈæÃA;XXÀ$4ä*AÆ
+­ãÝæUÝà1š ¶ÄmÙj“3¥}hyŒžR,ãf<t¢fáżHY®À÷@q)ý¢Ë çYšÜ­‹’C¿éúµÉ“C&#=Ú•P"¼ü¼³ˆ©¹"L…/ A„ð`˜Çsëþ½£É ¬—Ž ®²-"*èás0Ù1÷Þa~ôo –mc÷ûÈ’YÊL1ú乤Œ]~¶´^Ùu°Äp´½÷‡²Ÿ[DY†p{…1#ásß–[ÌE›|2f€J,°»®¾ø#rã
+. °k²€1iÁȘ“b\éýr‘¼¿†]. –É•Sx^¼»
+®5“â>ŽbxT€­ïpwO›¿“ <Ó—«û-¥xÛœ†f7.Ì—ã|Jä×Û½'
+ "P>ø•ji6_z§æ8J«yµökÀ|•ŠWY“BJV/–ŠÙô…5´xÿLY\è¹5?xd(æ(­ñ”‡è)«TΑ²ïI:%¾°“ß/ï/p
+endstream
+endobj
+491 0 obj
+<<
+/Type /Page
+/Contents 492 0 R
+/Resources 490 0 R
+/MediaBox [0 0 612 792]
+/Parent 494 0 R
+>>
+endobj
+493 0 obj
+<<
+/D [491 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+134 0 obj
+<<
+/D [491 0 R /XYZ 133.768 493.849 null]
+>>
+endobj
+138 0 obj
+<<
+/D [491 0 R /XYZ 133.768 240.201 null]
+>>
+endobj
+490 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F45 316 0 R /F88 311 0 R /F87 312 0 R /F83 236 0 R /F94 282 0 R /F99 331 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+499 0 obj
+<<
+/Length 2272
+/Filter /FlateDecode
+>>
+stream
+xÚXKÛ8¾÷¯Ða€È@Ìð¥W€Ábg{’Íf±“ì! µL·µ+[=¦Ûú¿o‹’%™ÝiÌÁ0U$«Èz~EÜ<xÅÝÿO7WoÞ)d,‹eÜl¡Kâ4ˆ£„I7›àSx¿3Y}¹ùåÍ»TOË”eI œìªÏBéM¹Ý²kFkgŒuÄ”ÃÚcS¯Ö2 7}aV"lWk‰°Ûððz½ArSþ¹Š¢0ïà¶Zë,
+?liÕ ‰uO÷ø‘V2 ;¢ôÇx”w» íëõ«ö55
+;Å^^nh¦x¬…`Yä4ñáã¿<wãBŽwË <Ëÿò;¼Ra}ìÊe)Þ—UEÔ™
+,¥ÛåÌg®”):¼°Öáß«Î4‡Q Õi•ªð5d´äð¿¸DÄÒ,
+ÖR°(‰æfÚPc$£ðýý~¤ÿGäÎt,æ—ÿvž™OÔÇu{ÚßÖp3)8$N(iŸw»fÿíúÑŽ¸ÜX7Ó¬[㤻­œþö½ÝµöÈ|ôجÉ8ï쾨gÐÚŸåÆ´¤ÝœL¾‡yS¢Ó¤ÖA¬}º­÷±¾ã¦”õF*Ð,Ózá``)eX·³q»º9ÑT‘WE_õ-}u框è÷8hËý±rΨÅÔÃÀe6ºØg.b_Œ±”ëa „ŸØÅO:!¥“Ú·fƒÆ“ðf7‡ôá$Üa
+¶Ä³¤ê,?OàÇ$åc¹/«¼™$奓bñTÉ—y?*{ž·¼¥‘Vl›zïuïˆq©ÎÞË…Gn
+Çž}IuY ¨êk$$ÜX;—úa‚tÑÓƒ?x(Á1ÿJüÍÙ(&SÏ5gq2»&dfòGbRêðóÚƒ/”¤VLG”âHLñÔ˜0í ­òvG¦ø²Èa»Xårú…áKç"í®Æd}päðXPÚ.?æéBöO¨z¦ÕÀŠ3øÚð5¸"NàÁdŒk ‘åŽf‘ Ž¶Ö®2.8ºNÕç’ÜŽübi›9lÊÃíqÕýîòܛ҂¦Æ(ë(nàpT4Èʉ
+éÛŽ‘ûüA±ÐKsýâ|ˆi™BsâÒâ³!ª Og
+@‰ÉdCÆr{ôvßX>§˜l™ÄЪ6(™%O%p™¦C–Ç礂_Ö¿pïåùqú‰óËH¶²¾–jõ\¤­•æ—åà]†dI<qDÂXþø‹˜~ÁùshwFÆÐÿÖýÝnQȧ9èû0 p¸
+»šèÙ›=r¸%dÓøTE@
+qÇä´ŽuMSþv]BÇ’ÅÉ  Š„\§‹F“F,Â{AÔ6U—D±HEË»ÚRÂÃú–žhê¾%Â!ß»)„°øoòÁ\øUä­AÀ–É°É;‹W‘ ÊsËw9qDkÛ™šþ/mà6:qÇÆek|–)àLÕ%»fkÓµ;õ¸û€L6kT¾ƒ3ÄsÙoÞ=‡34K¸zg@“¢ù"œ1ã6d³žÆ)NºrÅmŸNÀRéžE"CVé7ƒŽŸí‹R¸Úxw†ï•î2cÑ´1Tzx@›§Š44
+õ¡„ëÅq”Ó_U»«Fø§Ô˜Öþ¶Z'* ÿ³´ Ó‡aý “¨¨¡­oúbahpé·@ô½! ýë- ™ù‚€® M
+endstream
+endobj
+498 0 obj
+<<
+/Type /Page
+/Contents 499 0 R
+/Resources 497 0 R
+/MediaBox [0 0 612 792]
+/Parent 494 0 R
+/Annots [ 495 0 R 496 0 R ]
+>>
+endobj
+495 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.843 463.548 194.817 475.503]
+/A << /S /GoTo /D (equation.2.6) >>
+>>
+endobj
+496 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [233.082 140.23 240.056 151.022]
+/A << /S /GoTo /D (section.2) >>
+>>
+endobj
+500 0 obj
+<<
+/D [498 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+501 0 obj
+<<
+/D [498 0 R /XYZ 133.768 364.038 null]
+>>
+endobj
+142 0 obj
+<<
+/D [498 0 R /XYZ 133.768 185.518 null]
+>>
+endobj
+497 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F41 286 0 R /F38 313 0 R /F44 314 0 R /F83 236 0 R /F86 239 0 R /F106 356 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+504 0 obj
+<<
+/Length 2929
+/Filter /FlateDecode
+>>
+stream
+xÚYÝœÈß¿bÞŽQ<mšnˆt:å’sΗ‹”Èû`ɶv†ÙAËÀ¯W§ûßS_Í
+žn‹¼kjkùCYßó¸;o×Qð¤ÕFÇ¡Š\­²X²+>†ÆÖe_6u»L”ô4AÈ{žéŶyÍïÖ›(
+ùÞæu·/Ú¶ØñľmŽ<Ú5´p{>õ½Ðnžù¬Ö›ÄFÁ›uj¸2N9.ë®Ïëmñ
+(hwu0 NU¾%N`\ÖüìIhø¤vÄ£î*™á;Á
+ÎòvW=ñ¸9õå1¯@f6rÁ[L‘ï^-X ŽSeBí kWî÷Û¦ØïLÐf*/]U òúØ1ÝZÞ¨ˆ…™ø‰ç†ŸÞDÈø¢È( ð5S÷Š21+ÊØ,Èùµ/¾ô<Bú(e?–ý—‘*h¡À†¢î€¥ûg`úÉpµ+–®Ye§¾L„…£:?|6èšfžP2͹å·-¾XÇM>¨äæ `—ÌÜÎÛ7Êñp
+±ô$_ðžiJ$x%z,ŽJ!r‡[d5ÆC²
+B8í3r ö+è"©žðI¹4'ÀEÞªh6§
+‚P‚:Nºò¾FN(\ßÜ÷X{2m_"H8W¹|ß–-j¾D·”=覔šñè=&4X‰÷"ˆŸ+`
+âwôjZ×ÓÂă]L…cJ.h¤ÔÀ´ñØ–=¢lHwÖzååâXa žaž ñ,8Xï7P7†ñ‹¶_t€d(š ó‰äµÃì
+>ç²$ø™ó­–«`Î6XÕ"æíd+ÇѤk
+ãtVR ±°|&Í•fìÏ¡t0 „¸ªhûùŠ²—ýÅ—ݱG—Àš&NFÑv_ ’G„Fõ‚pƒ®•Bì–HPËÙ®Pp<MµÒ/¬ÁH"&ZÀBP|褪©J.Hàt¼ï è0C îCêWô=Ø^·Ü³é¬Î
+ly8Ÿo†ŒÜ±›sÇšjLÞ=
+Šç”D.RÎùZ åL[²ý'Í>ñ}3ü*E”Y&L ÄÈ“*k6æ)¢ò—¥è¦LJHwXu¥Á´àܼ¤„bþ¡zÕ¸ çÜGÿyF@½ðú!PaÒ]oÐB55ð£/}°ÝÊEµûµâP!b;b¾ÐKÃÆ»ùvã9²ÑUÓÍÍ7IÉÐú`_Œ&ÖwÉôhŠ[4ÐòÎÓ¡@„ó¼Úr[#™ön˜ùIßËD`oc0V‘?Ô°Jƒ¸tï<Bæz±ñÅâ%
+ôçÿJ½Eí†É(†^´C[?û@¡œÛsm9Y2ûk„Styxúæ5/Ûç窗×=H˜ä.(8pÆaw> ¨ùú§Šì¥FºÎ8Zn„CDÃ_7/èƒÇ€%.óQü4ŽBAþ$ Ú®ç—i¯gÊúkœét¸oY$T?Æ\û86T6Ùý ?u²dôÏA ¦ ht “'Ÿù<òŒ×œàp–3CÌ…î[ž££AzÅñ´üo¢ÇåÿÜ >"ÛÞÿ‘elOÈÒ²øÀ3 ç³ÿ‘ø¿
+endstream
+endobj
+503 0 obj
+<<
+/Type /Page
+/Contents 504 0 R
+/Resources 502 0 R
+/MediaBox [0 0 612 792]
+/Parent 494 0 R
+>>
+endobj
+505 0 obj
+<<
+/D [503 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+146 0 obj
+<<
+/D [503 0 R /XYZ 133.768 234.83 null]
+>>
+endobj
+502 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F94 282 0 R /F83 236 0 R /F108 506 0 R /F93 270 0 R /F106 356 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+510 0 obj
+<<
+/Length 2488
+/Filter /FlateDecode
+>>
+stream
+xÚ­Ûr¤Æõ]_ÁKjQEÓ¦/@gS±ÝÔ¦Wl«’T­÷A†ZÆÀH»üï9—† íÊU~âpút÷¹_:
+nƒ(øûEä¿___|ñÖš Y¢’àzÈ$R'A§Bé8¸.ƒ÷á/—®ÿÈH˜$ØH)²Ø/|t§¼ÜÄ*_óç.¯n#¯hGô”Z­P«Uj!Äs‡4+‡4D¼™3™ðŽ_qå‹·ZÏÄÜèXèÄ„2eÂë»Üh“„/• áž»Ë8 ñtF×U?0TõøÃœ‹v¿Ï7½;ä]>¸òLý%€±
+á\6…?f¯©s>/]s©ÒpèNü[¶—ä o^ù Ç®hc
+¸g4'}
+›ê?z6…X}7ßubxæ$X‡å#@Š„0îwœYà™;ƾ{E ÌÓ0k!Ÿè¼Loþ„AOw!°–ˆ$”Ñ)‘b2Š >ÿEV˜¹GÕûÜó&AA£C«ÑÕ§<Ò¤B¦ñoðH•¤#5yœ^£êÓ°à^1Usf€Ý2Åâ`—½Ó9Œž2fà&3ùþ#€Ÿ:÷ÀÄö3
+• ÑÄNq'ÐX)Y–[d…7¾\õÐÄî¨W”::Шc¸s‡:/¨V!9{’O,Ð3=Š9H ÷H’w¥/!Ó¹àc]©+îøwÏ<ìÀ†½ +Ò˜ Òáâøÿ\Z½Œ0fóX¢êoR ÌnØWÙnù;ŸÝ,w‘¿áæÞJQ¡¼Vz‹Ïò"¢ÇôðìRPCYú~³&^ã1;ÇÀ¡s9ëMí1ÈvŒ1Mm bžäfê„øª†v«ànÔ( ªvœÒ¬râí³Šà ã/bV™öóÑüÙˆ‘Â&fô¼jo¬»/ j.±!uå†Ç‘)V‰¬ÏQ„»©K²Þ<ÖŽƒŠ]«Q„>×(ü…Rá:¶€gi!†ïv3³èe³tV«€/ GÄÍ°Vë#‘dSÄb“5Ös®wâÖWŸYúĪ3J™’”fìNàÙhYK"ÆŸŽ Ÿ'æúKeÈïÿéÏV&‡Ý°L& -'¹iƒJ”×€þTÄ‘LO=ú
+=M¡›²-žq
+ ª•É<)þ‹E<ñ¥èïx'\Þ;F=UbïIm§) p†)Ô¬JÉ¥¥û¶¦a¢„Ë+|¡{8Bƒ•Žÿ¤¬¶B —ñ“'mÜ”KE'« ¹yàv3ÇfL3òÂÛünjÁÝn×úƒc_5·˜bhpß3D.|Çjp‹ð½_ ÌÜvñ!IÂo ò7Ö§iw®U& ÌŠà @ªäãšøìùÛïóºvÝ•¯”V‰Ì>š[f½ ÕÂglÍ9–WCÄOC˶k÷«_ëÛßì®éÙ]ùÐ+ô)ŠÇ-EœAw­}ãC*ב*ÿ擨XC<UyM¢û— þâ‚»í`éŠqn(Ä
+3>TJW¼ÅäÞv{tÐ4J o4rÙU©sWU>¬ö 02ž'@öäÇ
+<»iXóêÅ` WT\P©ê@@z~(á#
+ºÛ€ïq \Œ`
+V # ‰ô
+·‹Aô‘t™ˆ-èLŽ‰Ó?¥€—ÚG5Á=äûÃô–ÂõFÓDAߟý ³ïÌ ‡v ‡-
+CÏrœÐùænè´H¡åN`4œq!ŸQ6u\—OÆö%òA}Iüûȧ#pAµ&Þi/†Î}.ÞiM<HCF~V¼ìEâ)9û}Ä31Q¬È÷ó(Ÿöi.ßÏ8…‡_.‚oÁ Ô`óÄøÞEæÓ ¦ÂXµä0K‚â>õÜ̾1Fjø@)ÐE’_`îÁG+5SAñÕ
+š¼ùè7¤³
+š"3åù ;)ÞV-?âƒUêú•«@Wvzöä„
+endstream
+endobj
+509 0 obj
+<<
+/Type /Page
+/Contents 510 0 R
+/Resources 508 0 R
+/MediaBox [0 0 612 792]
+/Parent 494 0 R
+/Annots [ 507 0 R ]
+>>
+endobj
+507 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [454.971 214.528 461.433 226.465]
+/A << /S /GoTo /D (Hfootnote.8) >>
+>>
+endobj
+511 0 obj
+<<
+/D [509 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+150 0 obj
+<<
+/D [509 0 R /XYZ 133.768 523.798 null]
+>>
+endobj
+154 0 obj
+<<
+/D [509 0 R /XYZ 133.768 255.278 null]
+>>
+endobj
+512 0 obj
+<<
+/D [509 0 R /XYZ 149.011 164.054 null]
+>>
+endobj
+508 0 obj
+<<
+/Font << /F84 237 0 R /F33 207 0 R /F93 270 0 R /F83 236 0 R /F106 356 0 R /F94 282 0 R /F86 239 0 R /F41 286 0 R /F38 313 0 R /F96 297 0 R /F95 299 0 R /F97 300 0 R /F105 351 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+517 0 obj
+<<
+/Length 2547
+/Filter /FlateDecode
+>>
+stream
+xÚ­Ymã¶þ~¿BDÖ _E2AѦm.½¢hÚÞ¢( R%ï
+±-W’÷%‡ô·w†CÉ’—{·-úI$5"9¯Ï̈g7Ͼ}Åãó·×¯¾x­Tæ™/d‘]o3¡³…Ë
+c™T&»®²ïó¶[­•RyyÀ§Î›ÃJº|¨oºrGovÍO¸T¯~¸þ㯞íè83ÎfŽqœãvï8D¨Üœ).³õŒ°‡ƒ‹+ÂÐÀýÍÃj-„È«‡¸ã‚Ë€•HxE7%^t^Òt×>í†f}·2&/»f%òòý®~§Îgóø€ã<SBek
+ cÞËI"EbÃ5g$"ÂN”£ð–BñÌÀGB3c¢ôþž”1—“èÞqÃ[)æìY¼_| ›?÷E&Eþsbg©™+ÔlëÔ- \rÚºU{ móêçÕZëüË„"A¦š ²PpŒÐ´ÁÛSWïàcY˜üž”2Ž-Ú*jŽV†ÛøêŸÕç=@³ã«>¾¬Ž]Ý÷M{ˆ4CKÏMÛÁ‹#L\ÞªåKØ éh¸m»=P´§c×ÜÜÒ-€%`ØeÞÌ
+Øß—Ã-š¡Ü5› :šèYÕ]ÖYäå
+9©¯kñ6wMU÷tTIM»ß—`ÔOò"œ‹®Ú¥ÍDNQvˆ|€R†zd©&ŽÀùh…|oºAÕ¼ãJÕ]MòjÊ]–Lk³VøÖûð­wà=‡CÝÑÒ·é²=‘Ü7è`H@7¥ªÞ–ôi5z-,Ÿú KXO©`/ò>3ó>†Þ§ò7ú,nës ‘‰”ÇG ßœö‘(BRøÓµpB×
+ ÔG¬Ã]Sñ¸¢Aßây¬ÏK_P‚¨GÁ2/]ê³ÕÚH3j7ŒèñY"ÊΔŸ"ø¯bˆŸR0îÜ'`
+‘Y*a„jàÜG hgTX>MæŠ+MRÕ“2T³~xLœe!qÐSÌm†¾ÞmSÉ•„”\^ØEúöÊ3Ëõìöd Ê2..`°ÜQ'!”çȦ-žÆ;\6TQ…Á@tM©ç÷¸ÛÒ°§õ–g%}ÓïFOÄî¾èoÛI˜Ì.Côí6¾
+ ¢­ôÔ
+„ ©Oö­$+
+ý’¾Uè1L”Áú°t¦Ým¬DüLJ½ŒÇT&Á!|‰‹_‹dJ$ö½_ùBàæ Š¤eꋧÿ¹¾ÿ}>ÃïFÑŸóá#M>Ä*ñÃ"W>2šþ’ÌO!ÛçvyÞ¬^ˆý£ñFè1 §ãtø‘ªg?~¬dXqõ‘­?-Î'ùM¼Ÿ›ui
+endstream
+endobj
+516 0 obj
+<<
+/Type /Page
+/Contents 517 0 R
+/Resources 515 0 R
+/MediaBox [0 0 612 792]
+/Parent 494 0 R
+/Annots [ 513 0 R 514 0 R ]
+>>
+endobj
+513 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [211.323 484.314 217.785 496.251]
+/A << /S /GoTo /D (Hfootnote.9) >>
+>>
+endobj
+514 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [372.007 392.208 378.981 403.001]
+/A << /S /GoTo /D (section.5) >>
+>>
+endobj
+518 0 obj
+<<
+/D [516 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+158 0 obj
+<<
+/D [516 0 R /XYZ 133.768 437.497 null]
+>>
+endobj
+162 0 obj
+<<
+/D [516 0 R /XYZ 133.768 277.645 null]
+>>
+endobj
+520 0 obj
+<<
+/D [516 0 R /XYZ 149.011 137.285 null]
+>>
+endobj
+515 0 obj
+<<
+/Font << /F33 207 0 R /F54 519 0 R /F38 313 0 R /F41 286 0 R /F89 332 0 R /F84 237 0 R /F44 314 0 R /F93 270 0 R /F99 331 0 R /F86 239 0 R /F83 236 0 R /F88 311 0 R /F96 297 0 R /F95 299 0 R /F105 351 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+523 0 obj
+<<
+/Length 2981
+/Filter /FlateDecode
+>>
+stream
+xÚ­Y[ÛÆ~ß_¡‡
+Ä)Â%)‰0%*$•ÝMÑÿÞs™¡HyÖ» ò¢¹Íå\¿s¯v«xõç›Øµ¼½yóÞêU.r£Ìêv»’Z‹ÌØ•I3¡tºº­V?DFH¡Ö)Ó8úþT”Íq·þñö/oÞëù_ãÕFZ¡mκÝ7Ãz£3 uÙ+îw§±éŽØO¢æ8ÔkõãÀãÁmM„wë²Q½íz ©™`Ü×¼øSõj-u‰õ&5iôaË×±Éì:J+!Ó ®E×ù(uRµkË\$Rz2çm׶Ýnp¿VYTWþR0óÈý‚ïT5»fÄmW•J‘ï€Q"Oï>Æi¿Zm#Im)7B¸™È$wa7jŞ!>õn¶àfßõ ðåW`%\o,%r°fŠnËí¸/F^<âåÏü2^Õ/IDÀ}Gì¯ý>5½2^>$ñ ÈŒC,l–.¥?ä rP8ã ÷
+BÆp®“?ô‡âàz¨7c­ërä ÿüìtX™+ ؤ*‚
+·wDÕhƒÉ¢ê1p"rU'×.6‹E*'or”98jÓ¨ú+Eïë
+ÀzpðúŠR?zm„…‘0êÑÀËcG–ÝñˆM¾Äß=Ó‘ ù†û˜èÔ×[мˆ71ÂóRáªI¸Ê·/®zN¸ùK„«•òIáÊ‹==)\3.§Ê·Ï 72Ï–ÂÎ+r9y>5i&—~MOLuí¯Ãl,25qæ~_ùï›h@Q–:}Cnû E±Þõkp¦àMAò
+’¯CΤÞÏyìBD¡&c¬ƾà#† Ö
+t(¹™€Ž÷'ANdà'œá±£ˆcí4Æñç¯ÝX3Pô ÌíØ>Ì |ˆ¹øÄîX‡Žµ"ϧs·Òž%ëAÐ÷d£E|Í×p€Ørø°Nõ1AÙ<"àS{0•×¡J› O±r Ã'ÿFåR$ñ¾þÍþ?mŸ˜8þ¤{q`‡Dä—¨’s
+J9½óµȵ ÓäMÐÑŒ<áõùØ6Ÿ(„·î?.XÏÄ“€’³JèéŒ<9!@ѱ^Ix¦Y²ì="ò?±D ^ûüŒJU¤1×Õ.”VYxö%WÍv[võvx~’‹tR7Ô5Ü/‹‡œ8x€ß½kàã,hÑ·"ôäAU…Kœˆ8Ÿø»ïŒ‡t_g"K¦[»4 ïsI3kÇ0P2 X Ž¹ ‚
+Ë ^`Jèô**ïÁùÕý¦ë+_²øÌz\PS Sey¤ÌˆTå_È2=Ûþ­ÜXÎ÷tb ØØþΞê[,Pzp`³9j—" ¬…‘NÉU`7@…J#H¨xG@ k¤¼)I|r ˜…¡Ø&Î$´
+,+'>Ïǃ
+Æb‹©º'¼pIMþªÀî%‡GkÃä5œª%ò’©ô¡ ASr¶×øÔfpj¢¿¸‚eJd—UytOm
+~ôbæ(KeA¡Ú1éžGœ‹C—P2MqÙ:}ÔhØÉzœîXå*Ì< H9Käu2²(܈øR3MÚ™óìPŒûþðŸê¿!kˆt)ʼl?/@?)ü»}÷ÄÓß(H÷Òïžxi®ž¹›é"î‹»¶)¸R«f–mÜ?BÐ:kj&—0_¬Y+Ú3†^aÚ£&·Õô™ ú.=›’°
+Ìôç¶؇åJS]xÆÆT„ojN)òõ ÜçŒ?´ã¾;ï0OIò¨GuÝÛ¢çñ¥óÏ•KN*Þû¾÷Ü;tÃÈ4ôÄ„ÜÊPs·,àÔ×Al4N9k6}»Y
+endstream
+endobj
+522 0 obj
+<<
+/Type /Page
+/Contents 523 0 R
+/Resources 521 0 R
+/MediaBox [0 0 612 792]
+/Parent 494 0 R
+>>
+endobj
+524 0 obj
+<<
+/D [522 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+166 0 obj
+<<
+/D [522 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+170 0 obj
+<<
+/D [522 0 R /XYZ 133.768 292.838 null]
+>>
+endobj
+521 0 obj
+<<
+/Font << /F83 236 0 R /F33 207 0 R /F84 237 0 R /F94 282 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F88 311 0 R /F54 519 0 R /F87 312 0 R /F86 239 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+527 0 obj
+<<
+/Length 2324
+/Filter /FlateDecode
+>>
+stream
+xÚµYÝs㸠Ï_á·*›Ç/‘To:×ëL·Ý›¾t.oÙÝV‘åXËòIò&ÞÌþïJ–9q¶w/ ~ ðóÉÝ„OþqÁÃ÷o×?¼sj’°ÄH3¹^L„RÌ71±eRÅ“ëùä&2L2qùñú—Þ n³UÌ8w°•Ÿ6/‹¬Ê Ö´;š®†{ÏÂô™pL¹„½¿œ)%£ez)]ôr¢´u‘ϱ)¢¶"R™Þ&l›b}GÇ8=¶ç<~ÆÕG1gÊöükܽÝmAŒ°Ë™Ö:úÝêÏóG§m`lx© Um“f—ÒF÷é]Þà‘ ®Ay4Kâ Ó2§ÓŠjϧ°Ô¨è¡†£ý±‹šªÌÛ奈zʪâÈK¦­í$ù ”F¹oÖŸßž¿Èn ³Îô+xÌ–E†,ñ8eéšÎ½ñ­×:tàZÊÒ_ L‹yÎËLÊ„Is$ÅãØUhfli‹
+´)h¤_島"Ñ×DMë»m§ÀXarž— 5ÿ»NÛm®þDÝ\ÆÔªÖ ÒÕn„o)4s±èXØ,wÍ®¼aU9–ÀÊξò/EÚvw­¸c°Ç苺*Ñ6Tg/:Ú
+05?Ú.‹†hb0+"n›œ)õ³ª,Cs›ÒÝžºñž“gÈ»ØyKF:êÕÅUÕó¼†ÓµQµ ï¼øÀ•ÊëÎ]Rô˜Ã)^«ØørÇ`è3éí*;azŠ@äø:z­ß ¦fY<¢}cs“ÖpâjŒW˜(¸Æb[Ú;RºžÓ}mCf»ÙÔyÓxÞ‘ð°ÌC+]­heZçDA¹ü—x¦ðFþ’¥ÌèÚÉRâï°”ÚpKwgñîà´÷xn‚Ãp¸+!vZ›mƒ[NÚÔÕ]–De䫵›eµ]…-³t•mWàB´æØ6‚ÕWûøP{•I˜øiÄ—b¢÷ä¼Aàsd 1®‡À9Á<št¦sh‘9ÃqÞxêx¦1RÃc ‘TKqNÒxgö%><¶HÇ™Iô¸TÁDn)H¡cwÀk0¯Î(ÓÕ]~[§DVÖLìdo/‡i˜‰Å±Gõ›ËY,ãà77å àþÊí´¼ò½™ï}|z‡½Çénúû›°ùm¿ÅÇŒ(wâ%“hí4!ñòÒ¬>°Æ!ÑØǸÅhq–H¦Ès¸ {ý5\¨… gû½Tb&ŠT/Ã$7˜ª±ý—aB2˜`áGœž$÷æ0Ʋf6™ xyÌj¨%Ël"†~d'ÅœíCÙã
+ó–¨×±xMB€0/ˆ3âCüJ|€GrFFNAÈ>ˆCcÁ®Â@àTX"x%XËÿ¼?,ºÍd ÷+Þ-Ü€¥ßq{ !¥;+è3¸·g0/“×">#˜7Dw f^p؉ɔ^xî$Š)cÿ°€•§XÀÓ·YR=CR¡)Ƨ"¡(¼0Š9‘naΠv½Î3xÍ¥õŽhT¸¡w%öý Á³rùºÉêbÓ6ˆä h³½m2˜îi´ƒÔH4€D=÷–ð-æ¬J ½_Ù3†ü1-7þÕ+µˆ>oýkèwá}ºžâëœGëŠèÄœí™ Ûu•–f¬Db:~«*1£z#ò/ZÜõƒzÆXp8žɉ‡¢6ªv¾ØPSkž7›¢ÍƗŽágÝS§Ž p¨X£T I_«M%L»a21â²AT¯˜±âgÌ@Ý4ƒD†'06(J¡~ ×íáó7D{û(Õƒ7ÍPcXçM–n°à‚d2ØD“ éB¨.hHD~C. Ã`lEáÚó¬°áýBûâvCñ›T<Â=huHÒäYå5ít–¶•w<}X$
+æVƒ#Þ\Áá¡V¨dÇÂÒ:^K/Œ†j“/5áðñê®ZFí²¡©žiøîñbFzÜsŒÙ˜ ä¹¾,xô®Ä½C%
+f8Ûx M‰ð6[‘’§M‘‡Q›°r_ƒáA Øe_‹¨ótNfÙ
+¸zžaœ·ãý+¸L ëoÅ$ßS•ÿ5”?eâ|!>‹+üÊúª|Bp‰_„B›Õ6„3?\Ó—@¬îjÞHZæÝöXíoÓ¾ÖŸ þÎé†á™èŸ›ž ÀËÑÒ<‚ž“]ìU#èùh‚ ~]ÎÌwë´ôuF‡×¥w95}øòyžÍ€aë%Ê[ã¿oa?" ¼W280iœÿoÒbVÙƒI`¹ÿÓu°
+endstream
+endobj
+526 0 obj
+<<
+/Type /Page
+/Contents 527 0 R
+/Resources 525 0 R
+/MediaBox [0 0 612 792]
+/Parent 529 0 R
+>>
+endobj
+528 0 obj
+<<
+/D [526 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+174 0 obj
+<<
+/D [526 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+525 0 obj
+<<
+/Font << /F83 236 0 R /F106 356 0 R /F33 207 0 R /F84 237 0 R /F102 339 0 R /F38 313 0 R /F44 314 0 R /F41 286 0 R /F87 312 0 R /F88 311 0 R /F89 332 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+533 0 obj
+<<
+/Length 2682
+/Filter /FlateDecode
+>>
+stream
+xÚ½YYÜÆ~ß_Á7q Í>xù%‘Év` ¼0XÂöìtÌ!G$G+ýû|UÕäK€¡¼ì4«ª¯:¿êM£§(¾½KÃï7w_½3&ª’*×yô°‹TV&y‘EyV$ÚdÑCý7nðï³<®'üê2v÷qÝö]ú‘~!q þ£:õ§QXïSÉhÚ;‘:ÖƒëH”ѹºk„;žÇíàS ÷jÞÑc˜èëöþ—‡à¥’* Gúû1&>u8ô8ñšôý¼¯'Y>)Q±"nâ;¬þ$,ÈO®ùšÖýêÍ.Õbu¢3Þ*7V¶Â½tU¢eRT*Ú‰IKüûýºû‘dïÞ>Ü}¸S8u©È¤Ub3åZ'iYEÛÃÝÏ¿¤Q&.–˜ªŒžYô)“¤¶Ä°~¼û—îjÛe-¥“"Ï.w~X½P¢­tš”¥ZîcD²,£<©
+S’¤Mre¢¶I©+¿Ù¨¼‚jr$*×"ù붰œÕ6>=Ùí£}ß)‹wý <öºOÓP Ûµîà`Ø®3
+ÿ™©G‘ðݶ=A¢qÍLX”AðÜìÂsWœfÛð”1aÍÁñÕ;•ê«+B³Ð„ªÏ:Ó*½™tN<%áoÃpH“…CœíO,â~ô«†HýîJÆžc‚®Ê„ÏiìÅ}+DßÝLküxlküLZœ'¿ è×kzñÓ+ÒtYñËùˆ¾{j¸´»De/ïžš$SóåߧÆv³7:‚gÙªšåêáét1.«³QÃ.<X1*Óƒåcç\;ò¥`·2IÓêænûè§ú±u_Øê?Ý—&F.bÛjSÄJ~`b ¶Keó|ÑEãw»mïv»­Y„;Â-HžF2--û8Ô[Ψs€Ñ`Úû@ºV/óúÀ!auö>¬Uwâ9ü1»À衳 ØT'YšÝS·;ÉmM…Äë§=,6`®o[NÏìGD:Ô°-þømÝŠ¬ûtëÛX(¹ßäîIáàžF©4æHÁáÞ—^œK“—¢vP¢ïé’ÏôðǶæˆ">üì¥Aª2Q…Õü …kt+Ö0*1¥žÅ^#í¦i¼çøÀN¡ÔPàÓF´1]àöVH¥Öü)oÈTRèeÿÑSÚeéªH
+U\›H‚f˜dcÛ´’LÚä" F×Ë/
+ý“„‡0;ÂVäÌ;[øf][6]ÿ€›/dFZ „›Lô»wO ÄrŽ,kU<~8eÐX³sо¿òæÓøšÈ†]µâ‡ 7Áä]}ð­¯ùú!d7sQujQ:«•;«dë7ka
+¿€ö/¤¸GY’G€®l¸âÛ…žEäËŽ¸âC’æ(ÜúZGœôK8y×~¦‘ŽG Z·õXà ¨©…™”/Nç×QšÇæ+ÇGŠä„šhëD‚ÃŽ%ÂFõ6ì†bƒ(tªÖëîu22Y°¢±³+bàwÂò“|7½l0ÊçØúcèȬ™I+ôÝ«0q[‹o€S eÕ®Ú èþŒYó¿lÖ
+úúAbßÏÇöm+Ü Ê`rSÂán’í48I"¦’rL¿HR“Œ$9Vt_‹„´£ ÈÙ·X²oõ"ûV×ÙW¦†ÌP1¢
+D·-kR !­V +«mZëæ
+ò{›ÆÿwǶ!Œéþ¾åË+†ZR '‘B,lpÎSä9sãǾᢦ*«,x€®ìOL Ø ¨ER¬dt°¹¡t“€Ýz’ðû4KCTgñ–Ê°a
+²•X„¥Ã£Œ=O[RÏ” ñáÿKÝ0)pD=îe¸£ÎÙ‚u# CygJƒ¶ŒZ}##97ˆTÒËò5:'6ƒÜ^z¢5-?Ã1ÑY•/åT¾½r&£šà„&­ ¸q¦dì>ñó‰¢Ãi‚Dh¶ ª…<H²£~ªüÖ]4㪬üZµ'-RûC¨xÏ$÷"{¤3Us£A`# á²ÖU/j݇êøæ4HsÓ›– (P’kw›5M:Š1¹Îö«7Ôבg{Ó×’÷1¾dsö¥µæO'•ZÚš÷ÊXj‚ÖzÏ4)¬>¿³„§Mº~’-ÏíŽǸjÙHRI& Þ¹Râc6øFY“äÙMGÙôÓNê^ _ÇFrmNšJ’æÊum ,½¼g|š
+­é"‰k݇v–Ÿ_‘ü4÷³0j¦òëdB®ü½<A¦:þ¯ …ÔH7ƒrê¼›97Óåâ ˜£bÓ‡É>,'ˆžÞ=tènˆZ‡™bº§Öm–ypg2ÏŠFÉÈŽÝå ÿUø_C(Äò!¯V´%³NÓo<ù Ýÿã÷&›é¢c8¿ùÑî‡"`ýòï=Šl‘ýûY/7IQØ¿÷¾(Äž¬ËbNsº = n’‰I² ¦$ (IWS¸sgö.¬»¢<Mž·dÌÆ­%KU&™Í.¥Û°2¿ƒbåq¢—‹å•ÅTÙo´Ëÿ%t¥c~iEùD¢Ý¡©ç{á³!“ïêS+râ~ô{]´h6"{GŠJ›ÏžoMOdüo¶J/Ów(ÌÍ:Và', Í9Ÿ\ÿ`!rãø%žòGáÖ{¦´fPÑ¢üWÄ{‘YDÂóËöòá|ŠÕyrD€„ä
+endstream
+endobj
+532 0 obj
+<<
+/Type /Page
+/Contents 533 0 R
+/Resources 531 0 R
+/MediaBox [0 0 612 792]
+/Parent 529 0 R
+>>
+endobj
+534 0 obj
+<<
+/D [532 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+531 0 obj
+<<
+/Font << /F33 207 0 R /F45 316 0 R /F41 286 0 R /F88 311 0 R /F102 339 0 R /F94 282 0 R /F84 237 0 R /F93 270 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+537 0 obj
+<<
+/Length 2506
+/Filter /FlateDecode
+>>
+stream
+xÚ­YKܸ¾Ï¯è=YLÓ¢Hê±@Îbm8‡Ù lÖ¶ØÓŠÕR¯(yf俧ŠUzÍpâÅ&—U,’Åz|U¥Žww»x÷î*~òüÓíÕë·2Nv…(Ò$ÝÝwRQh³KM&ev·ÕîCô1‘ñõ§Û?Ï _¿Uj½(™‚ Ï|{«¨»Þë$‰Ne[5Ç*º\ï“,ꜫ™HUý1VÊö×2²íÁ:¢þŒyd‡kø½Çk[Ú®ªÝ¥)‘ô¸w0ŸE´UÁA´z°ƒŸÌ—ɱ‰‘®
+v7¹Ñjs>â=>Òè宆ãlEäÑÕí o½Ì‰*Dg»}"À>$ø~
+Wiîa«$ÑçŽp šmiöP:ûêZª"K££÷-1˳{AÂÙ]»UgJ²ã3.^¸L”¨ :.¾tÈòµgQ/÷'Û ²šGšö"â®[‹®‚gíN‚W8ÏáE%˜ödƒÑÛ”5›Yh3ᇷ¾èo$¢g£AÝ6uk'‹n­LôŽ¯ÙÒë´J£îHÏ
+ Bév>¥äýA·ÏkÖŠÕpRj_—-7шƒg4ºÅ Š©íX/~ЃEZäpŽ('>Ý8ùÛ³]ìùÒx“=â-ò®¥ôq»×9šÛžQ:Oøü\P“A‰€á‹w¨6Ï‹èý@„Ú=YÚµ–(eÕ]Ú™cÖSÙ©
+¹Ô(=±‹'©t›€A¾TÀ…ö²iRüŽüæ8XtrmHm¶ÇHB‚Ž¢{'Öì>H¸*})ï˜P^(_ÛÒ§%¿¨¥çáuôæ/7ôZô$p´1#zMî=ï0|n2Ba’ëœÊGÞÎ=çí‘鉵s£%^ I>™ºê‰G"„Ë ÞX(.qD»$ÑçêFnHªÁ+xaùÛ˜ ãË…ñÒ×w'u$b¤ãÝf_eS¸,
+ã•àSGõ„&Òð]_6×_i
+ÀM/ÝÄql}“¸=ØZ.zH‰™È–„óÕá“û¤¢ˆ‹Css•­š«Ž*=ßïqQs©è¹=Ø< ¤Ò9\ªâ¬˜Ïw%_ÄÖ ›W²Xm9Œ=¥¨¹º„"¹ÖÛÀ™&Oç€ÉÍ U"2‘Õ`@d™2Ñç·sËô¿SOá9J>«·Pä¹’*
+Ç‹ël Ÿ¢Y<{ WQ°’BåÉÆ…ü¶Lð{>ÈQiG.ƒBLɶ
+endstream
+endobj
+536 0 obj
+<<
+/Type /Page
+/Contents 537 0 R
+/Resources 535 0 R
+/MediaBox [0 0 612 792]
+/Parent 529 0 R
+/Annots [ 530 0 R ]
+>>
+endobj
+530 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [284.75 641.793 307.221 653.748]
+/A << /S /GoTo /D (subsubsection.5.5.1) >>
+>>
+endobj
+538 0 obj
+<<
+/D [536 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+178 0 obj
+<<
+/D [536 0 R /XYZ 133.768 286.699 null]
+>>
+endobj
+182 0 obj
+<<
+/D [536 0 R /XYZ 133.768 261.391 null]
+>>
+endobj
+539 0 obj
+<<
+/D [536 0 R /XYZ 133.768 220.735 null]
+>>
+endobj
+540 0 obj
+<<
+/D [536 0 R /XYZ 133.768 205.644 null]
+>>
+endobj
+541 0 obj
+<<
+/D [536 0 R /XYZ 133.768 190.001 null]
+>>
+endobj
+542 0 obj
+<<
+/D [536 0 R /XYZ 133.768 173.804 null]
+>>
+endobj
+543 0 obj
+<<
+/D [536 0 R /XYZ 133.768 158.16 null]
+>>
+endobj
+544 0 obj
+<<
+/D [536 0 R /XYZ 133.768 131.115 null]
+>>
+endobj
+535 0 obj
+<<
+/Font << /F102 339 0 R /F33 207 0 R /F84 237 0 R /F41 286 0 R /F38 313 0 R /F86 239 0 R /F106 356 0 R /F94 282 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+547 0 obj
+<<
+/Length 1281
+/Filter /FlateDecode
+>>
+stream
+xÚµWËnë6Ýç+´)*W4_¢¤
+o•{DD(Ìa„( ½Uæ=ùZüXý9jyOAˆ±¿\Œ1¿+ÓnäM[™ù¡è× ùÛ©ö¢„ë-cç–ïêÇå#YE("¤½õ"$~SU)Æ~Yt½5¹úF~V<cÆd«ädÝi_4µyMÛ"})e§O™áÈùWcyÆ!®Ò:Kû¦}ƒ ™˜!,’ ²Ä‰ìÉ…,D<‰ŽGîdE=Ã#_Ór?€Xžì$¶²ÌôH;¥îú´ØbÀ'›ƒ~Lì[>,,á€2Ž’X
+Æ&V±%ìËGâfŒ¯Ú•½vs‡`ÊëXãñÈA{uQþO¬S¬ø§pìaÞÄQ4¦‰…£©å×á _ŒÃJ÷þÐ|úY'{)°‰µôƒÜµr£©Ê‚Ž9lÕŠi9ñûöM¯´²’&ÑÄ
++šGAvHc½º.ÒR¯ªºÖéõÃ
+®­‚UõªÌjc­){ñ”Ûb3ØuôTk(ª“eÈvªD§õØ4ß_>ϾS/ çVæ²m•Û”5
+ƽ£ #Æ<ž—aôpƒÕÆÐÓ íðÇSËa¥ËHH0‡‘™,ûô¦¡qBÏïÀ×A:8¼9
+òÂÓIC}1Õ¡QxaÆññeI¡c PdVCy‹ Ú`ÆKÓ~)ˆÖœONe:Ï×Ìó kÖÈ<LfÈ­ï4ÄâDë­ŽuÔ>hÞ‡ìgŽI(¼•Ç¶iÝèÎ$6Ñ'™Ò­ÄRÝF•úÃØ/dR™RªÓꦗåB™†'F‘˜µû¿Œºn7mVÔ©" 5³Ví+mŨ(ÎGDT2 v½Ù7×_õ4E.~°_‹ƒä»Ù
+endstream
+endobj
+546 0 obj
+<<
+/Type /Page
+/Contents 547 0 R
+/Resources 545 0 R
+/MediaBox [0 0 612 792]
+/Parent 529 0 R
+>>
+endobj
+548 0 obj
+<<
+/D [546 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+549 0 obj
+<<
+/D [546 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+550 0 obj
+<<
+/D [546 0 R /XYZ 133.768 652.752 null]
+>>
+endobj
+551 0 obj
+<<
+/D [546 0 R /XYZ 133.768 636.812 null]
+>>
+endobj
+552 0 obj
+<<
+/D [546 0 R /XYZ 133.768 596.961 null]
+>>
+endobj
+553 0 obj
+<<
+/D [546 0 R /XYZ 133.768 581.021 null]
+>>
+endobj
+554 0 obj
+<<
+/D [546 0 R /XYZ 133.768 521.245 null]
+>>
+endobj
+555 0 obj
+<<
+/D [546 0 R /XYZ 133.768 505.305 null]
+>>
+endobj
+556 0 obj
+<<
+/D [546 0 R /XYZ 133.768 477.41 null]
+>>
+endobj
+186 0 obj
+<<
+/D [546 0 R /XYZ 133.768 256.8 null]
+>>
+endobj
+545 0 obj
+<<
+/Font << /F33 207 0 R /F94 282 0 R /F106 356 0 R /F84 237 0 R /F44 314 0 R /F38 313 0 R /F86 239 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+559 0 obj
+<<
+/Length 566
+/Filter /FlateDecode
+>>
+stream
+xÚ½VÁŽÛ ½ç+|©”¬‚vðÆ­öRµ[©çôÔö@ v,acU•æß‹ ΂äê]µ¾€Þ¼™3E
+à/»F–ű]ýÜÕ`€P˜blvü@ñ––yNYnöžGˆ/Áp› y~Ñ" ~UÁW F.Œ«žª"íQVgzY{Á$W ”I ˜¦GøXh†ª``Šõ⛢8LÑí¿ýÓ?ý×íI?Ib“â¢.ÌìD¤zoÃÒg»¶è4ç^ô„óQ8cê}í <Ó?8„§žä2² AûQ×äÀ‰™–µ]ê*&I+äÚüSßLY-ª²î7̉Þ!zã¡G‰“¤f<¯{ÎL°<TdaÏ>ÜÕ ¼õÔ¢óNÞ‘ð²°êˆñ°¼ý`3VÀVïËFiÁæÈ×û{½zw@gn\¸%ÓÊŽ­§¢¸&X`ât…ºU*É_–ŠâDA.de‹ã$;niôª™46_a…`'Âç(¦§³4³YlÁ
+endstream
+endobj
+558 0 obj
+<<
+/Type /Page
+/Contents 559 0 R
+/Resources 557 0 R
+/MediaBox [0 0 612 792]
+/Parent 529 0 R
+>>
+endobj
+560 0 obj
+<<
+/D [558 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+557 0 obj
+<<
+/Font << /F84 237 0 R /F33 207 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+563 0 obj
+<<
+/Length 467
+/Filter /FlateDecode
+>>
+stream
+xÚÝVMoÛ0 ½çWè2 )*Õúla—¡í€}Ërpj95 G™¬t-Šþ÷9¡–Xûa4†ž(zO$)(A ” o£$دÙèäòL ”¤Š)”•ˆJATŠ”<%ŒK”h:6ºô¸Ð¦ª'˜ÊS9þ2Á’ÉñÊÅÆv‰L`u<™eß[~L)Ie qÕâzÏÒží²l;ÚKЬçÍ•ÃËu±Ðp4„[ëõÕr¡hŒ}ˆ]Œ“”Rp}ô*w¾ÊÍ1ì¦`f`Jë¡£-Áê›Ü¾X79UY:œ¼ÍϹËa 1õE{ÿ¤Ç®psWÏ­™`F“¨„»zÂy€Ó¨7‹Ñê}¤‹”;×Ƈ’æM$&l
+íª›a*u(©¤þR‰Ó¸Ty[ÁÞB·XëÚq£W±XûZö/*Í;À¨>î³á£ÚM«C knªÅ2Œâ
+ì&¹Ï°¬|ë¿‚5„0Dû}•Þ8 ¥n@p „›»0ïÖºWmõ¹öLÿÝÂÿ´{}ëg†u…¿ý÷MQ襭±×®†Ç £.}V]õ?©«ÍÜþrÖÖqò˜íSØJþ^­±ûëœ\r}tT ,(9‚E‹lô\Gš
+endstream
+endobj
+562 0 obj
+<<
+/Type /Page
+/Contents 563 0 R
+/Resources 561 0 R
+/MediaBox [0 0 612 792]
+/Parent 529 0 R
+>>
+endobj
+564 0 obj
+<<
+/D [562 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+561 0 obj
+<<
+/Font << /F84 237 0 R /F33 207 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+569 0 obj
+<<
+/Length 2233
+/Filter /FlateDecode
+>>
+stream
+xÚ•XI¯ãƾϯÐ%
+o›Þ¼ñšÊ5í5ÆÇÆ$‚´™Ïjþ»ûXI`¹d2ƒ¯ã5 <ó&á wêÉ¥¾îcޯǧã^˜%6áÑ&“®~>ß¹H»P
+:‚˜QÆD§¶»ºª ‚ï*¡¥•Ò TˆÜÄ#òÚ UíÁñq1£Ñ†ëjðÁ4*cvôT £ò¥Ÿô5+Ëcôf&:—he“’B»†§Œµ
+“¾Éøboª´©ºX+ rCI)µY)IlpµJ¤êmŠ•µ"1+ÀmZÖ)XWB5ÐT~O†.yåê¼1$hNÊ/»†b¨n
+ ÇjƒëÒ^ÿaZ·»Ùòø—ö™‡¡çF¿† k1 ÷¨ Åu¼q`Ò{º (O€¼…ŒþŽûs
+ÝpìyúРɼªÈ>Ó¡q ¨ «\6NI2=òûM䇊d¥´ +23AćD¦L2‘=( ú“yI#Š»ó}€7mÕ=RÈb"Âjƒóé ú0S"r+üš2æÀ
+endstream
+endobj
+568 0 obj
+<<
+/Type /Page
+/Contents 569 0 R
+/Resources 567 0 R
+/MediaBox [0 0 612 792]
+/Parent 575 0 R
+/Annots [ 565 0 R 566 0 R ]
+>>
+endobj
+565 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.397 275.872 264.12 286.665]
+/A << /S /GoTo /D (subsection.5.4) >>
+>>
+endobj
+566 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [263.483 116.319 285.955 127.112]
+/A << /S /GoTo /D (subsubsection.5.5.2) >>
+>>
+endobj
+570 0 obj
+<<
+/D [568 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+190 0 obj
+<<
+/D [568 0 R /XYZ 133.768 486.489 null]
+>>
+endobj
+571 0 obj
+<<
+/D [568 0 R /XYZ 133.768 417.454 null]
+>>
+endobj
+572 0 obj
+<<
+/D [568 0 R /XYZ 133.768 399.391 null]
+>>
+endobj
+573 0 obj
+<<
+/D [568 0 R /XYZ 133.768 275.834 null]
+>>
+endobj
+574 0 obj
+<<
+/D [568 0 R /XYZ 133.768 177.572 null]
+>>
+endobj
+567 0 obj
+<<
+/Font << /F84 237 0 R /F86 239 0 R /F33 207 0 R /F93 270 0 R /F94 282 0 R /F41 286 0 R /F38 313 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+581 0 obj
+<<
+/Length 2213
+/Filter /FlateDecode
+>>
+stream
+xÚ¥YK¤È¾Ï¯À§¥¤©\ò hN¶å]Ù7{[¾Ì¬d²ªRMA-PÓݲüß‘‘@AÑ;½šKåƒ$22#â‹/¨$:FIôó‡dÕþåáÃ?Iå,7ÂD‡ˆ+Ír¥#£S&¤Žªès,ØîׇLoEŸ÷:Iâï2Û®w;·Ín/¥Š%K–K¹a¹4ÑžÃ"ˆû’褀¾%µ¨ª~·YØdqÙžÏES}ÄÅ?þ”©esÃxfàmË¥ªjZ¶<SÆ´VÓ2ØýеgZ˜ßÊ ¬IÇ…Õ†(Í2=mè¾$RÚÎ6;‘Ń+6$ÊŒ >IÜRN2 ãY7N‡Z:ýsçKSÕz¿:\TížpÆ’tÅoÎ3ɤqõ²¡È0,IR0g¹FNÅ
+µO>XÃå^¼Ç·}ïA7W;o«WzXcpÂ`i»íŠéÉSh·< Ân½ÀA_\ÛM fŒ v Ž«þ@Fß›ëÚÂsOú6ö8!ØÂáhðè/h´¢”ÁG ³é#RN>roWaSZ|;Ãjfr>.û´º@‘%ðŒÜâ‘jªïâ:÷Ùðññz¤1A\?Ÿ\‰ç8…e ­k»Ê5E÷J³÷˜O«Š œî®ïÆÇ Ê;Œj¼…—¢£»Blnèç]© ”ýêÝ­¢iÔ÷ؠsóx–Fé¦@ &&JàîÕK•;ÊÖûª-YeÖÊ2–ó‰XïÊ`¥\0çËñ÷!øy ¹ôÍY|öÂX ¾éZB9jõpŠñÙD(Íç|7Ÿ¯ç=ة߃ê»YéºÊ$ä4Ê»boÁZ¸ Σ«`[PÓŸ!rC4¼³ÏYtFÄlÝ ëò I.bëB&JYÊÅš­y4ƒ—üe£ Sf@Ús(®õ@ƒ°û© ÌÚzÞ
+p>ÔQüš1~éÑxöå—Q¥˜ÐsÙ¦=‡yýÆñ ¤ “Ý€ Å Ô™YÅÍÛ5)é OMéfÎ2Ò?ËŽ Joð\Ct¦³›ýV€¥ß®&v{Oq&¾3Î&*8•çEÓ´W€‰™ kÃjY?
+Š3™gѳ_z†¥)Sž…ÔÑ/þIÿ@Eœ¦áÎD’‚0H€&½ý2+ul5M¸u–—Þƒ‹@ã—Q
+྅ ô!¨E¢ˆ5Ö'yüD#ú  Àe‚E6×
+endstream
+endobj
+580 0 obj
+<<
+/Type /Page
+/Contents 581 0 R
+/Resources 579 0 R
+/MediaBox [0 0 612 792]
+/Parent 575 0 R
+/Annots [ 576 0 R 577 0 R 578 0 R ]
+>>
+endobj
+576 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [218.396 586.556 228.829 598.493]
+/A << /S /GoTo /D (Hfootnote.10) >>
+>>
+endobj
+577 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [402.213 382.765 416.935 394.72]
+/A << /S /GoTo /D (subsection.3.1) >>
+>>
+endobj
+578 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [184.418 327.527 206.89 338.32]
+/A << /S /GoTo /D (subsubsection.6.1.1) >>
+>>
+endobj
+582 0 obj
+<<
+/D [580 0 R /XYZ 132.768 705.06 null]
+>>
+endobj
+583 0 obj
+<<
+/D [580 0 R /XYZ 133.768 667.198 null]
+>>
+endobj
+584 0 obj
+<<
+/D [580 0 R /XYZ 133.768 651.258 null]
+>>
+endobj
+585 0 obj
+<<
+/D [580 0 R /XYZ 133.768 585.56 null]
+>>
+endobj
+586 0 obj
+<<
+/D [580 0 R /XYZ 133.768 555.672 null]
+>>
+endobj
+587 0 obj
+<<
+/D [580 0 R /XYZ 133.768 523.238 null]
+>>
+endobj
+588 0 obj
+<<
+/D [580 0 R /XYZ 133.768 503.811 null]
+>>
+endobj
+589 0 obj
+<<
+/D [580 0 R /XYZ 133.768 485.38 null]
+>>
+endobj
+590 0 obj
+<<
+/D [580 0 R /XYZ 133.768 444.09 null]
+>>
+endobj
+591 0 obj
+<<
+/D [580 0 R /XYZ 133.768 424.11 null]
+>>
+endobj
+592 0 obj
+<<
+/D [580 0 R /XYZ 133.768 381.768 null]
+>>
+endobj
+593 0 obj
+<<
+/D [580 0 R /XYZ 133.768 354.426 null]
+>>
+endobj
+594 0 obj
+<<
+/D [580 0 R /XYZ 133.768 326.531 null]
+>>
+endobj
+595 0 obj
+<<
+/D [580 0 R /XYZ 133.768 272.733 null]
+>>
+endobj
+596 0 obj
+<<
+/D [580 0 R /XYZ 133.768 252.752 null]
+>>
+endobj
+597 0 obj
+<<
+/D [580 0 R /XYZ 133.768 222.643 null]
+>>
+endobj
+598 0 obj
+<<
+/D [580 0 R /XYZ 133.768 192.478 null]
+>>
+endobj
+599 0 obj
+<<
+/D [580 0 R /XYZ 133.768 173.051 null]
+>>
+endobj
+600 0 obj
+<<
+/D [580 0 R /XYZ 149.011 128.719 null]
+>>
+endobj
+579 0 obj
+<<
+/Font << /F33 207 0 R /F84 237 0 R /F94 282 0 R /F41 286 0 R /F93 270 0 R /F96 297 0 R /F95 299 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+601 0 obj
+[472.2 555.6 805.6 916.7 1138.9 1277.8]
+endobj
+603 0 obj
+[777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 777.8 777.8 472.2 666.7 666.7 666.7 638.9 722.2 597.2 569.5 666.7 708.3 277.8 472.2 694.5 541.7 875 708.3 736.1 638.9 736.1 645.8 555.6 680.6 687.5 666.7 944.4 666.7 666.7 611.1 288.9 500 288.9 555.6 666.7 277.8 480.6 516.7 444.5 516.7 444.5 305.6 500 516.7 238.9 266.7 488.9 238.9 794.5 516.7 500 516.7 516.7 341.7 383.3 361.1]
+endobj
+605 0 obj
+[533.6]
+endobj
+606 0 obj
+[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525]
+endobj
+607 0 obj
+[531.3 531.3 531.3 531.3 531.3 531 531.3 531.3 531 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3]
+endobj
+609 0 obj
+[777.8]
+endobj
+611 0 obj
+[892.9 339.3 892.9 585.3 892.9 585.3 892.9 892.9 892.9 892.9 892.9 892.9 892.9 1138.9 585.3 585.3 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 1138.9 1138.9 892.9 892.9 1138.9 1138.9 585.3 585.3 1138.9 1138.9 1138.9 892.9 1138.9 1138.9 708.3 708.3 1138.9 1138.9 1138.9 892.9 329.4 1138.9 769.8 769.8 1015.9 1015.9 0 0 646.8 646.8 769.8 585.3 831.4 831.4 892.9 892.9 708.3 917.6 753.4 620.2 889.5 616.1 818.4 688.5 978.7 646.5 782.2 871.7 791.7 1342.7 935.6 905.8 809.2 935.9 981 702.2 647.8 717.8 719.9 1135.1 818.9 764.4 823.1 769.8 769.8 769.8 769.8 769.8 708.3 708.3 523.8 523.8 523.8 523.8 585.3 585.3 462.3 462.3 339.3 585.3 585.3 708.3 585.3 339.3 938.5 859.1 954.4]
+endobj
+613 0 obj
+[607 473.6 453.6 447.2 638.9 607 830.6 607]
+endobj
+614 0 obj
+[736.1]
+endobj
+615 0 obj
+[680.6 680.6 680.6]
+endobj
+617 0 obj
+[458.3 458.3 416.7 416.7 472.2 472.2 472.2 472.2 583.3 583.3 472.2 472.2 333.3 555.6 577.8 577.8 597.2 597.2 736.1 736.1 527.8 527.8 583.3 583.3 583.3 583.3 750 750 750 750 1044.4 1044.4 791.7 791.7 583.3 583.3 638.9 638.9 638.9 638.9 805.6 805.6 805.6 805.6 1277.8 1277.8 811.1 811.1 875 875 666.7 666.7 666.7 666.7 666.7 666.7 888.9 888.9 888.9 888.9 888.9 888.9 888.9 666.7 875 875 875 875 611.1 611.1 833.3 1111.1 472.2 555.6 1111.1 1511.1 1111.1 1511.1 1111.1 1511.1 1055.6 944.5 472.2 833.3 833.3 833.3 833.3 833.3 1444.5 1277.8 555.6 1111.1 1111.1 1111.1 1111.1 1111.1 944.5 1277.8 555.6 1000 1444.5 555.6 1000 1444.5 472.2 472.2 527.8 527.8 527.8 527.8 666.7 666.7 1000]
+endobj
+618 0 obj
+[777.8 277.8 777.8 500 777.8 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 500 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 1000 777.8 777.8 1000 1000 500 500 1000 1000 1000 777.8 1000 1000 611.1 611.1 1000 1000 1000 777.8 275 1000 666.7 666.7 888.9 888.9 0 0 555.6 555.6 666.7 500 722.2 722.2 777.8 777.8 611.1 798.5 656.8 526.5 771.4 527.8 718.7 594.9 844.5 544.5 677.8 762 689.7 1200.9 820.5 796.1 695.6 816.7 847.5 605.6 544.6 625.8 612.8 987.8 713.3 668.3 724.7 666.7 666.7 666.7 666.7 666.7 611.1 611.1 444.4 444.4 444.4 444.4 500 500 388.9 388.9 277.8 500 500 611.1 500 277.8 833.3 750 833.3]
+endobj
+619 0 obj
+[625 833.3 777.8 694.5 666.7 750 722.2 777.8 722.2 777.8 722.2 583.3 555.6 555.6 833.3 833.3 277.8 305.6 500 500 500 500 500 750 444.5 500 722.2 777.8 500 902.8 1013.9 777.8 277.8 277.8 472 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 472 277.8 500 277.8 277.8 500 555.6 444.5 555.6 444.5 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.5]
+endobj
+620 0 obj
+[877 781.7 754 843.3 815.5 877 815.5 877 815.5 677.6 646.9 646.9 970.3 970.3 323.4 354.2 569.4 569.4 569.4 569.4 569.4 843.3 507.9 569.4 815.5 877 569.4 1013.9 1136.9 877 323.4 323.4 538.4 938.5 569.4 938.5 877 323.4 446.4 446.4 569.4 877 323.4 384.9 323.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 323.4 877]
+endobj
+621 0 obj
+[742.7 647.8 600.1 519.3 476.1 519.8 588.6 544.1 422.8 668.8 677.6 694.6 572.8 519.8 668 592.7 662 526.8 632.9 686.9 713.8 756 719.7 539.7 689.9 950 592.7 439.2 751.4 1138.9 1138.9 1138.9 1138.9 339.3 339.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 339.3 339.3 892.9 585.3 892.9 585.3 610.1 859.1 863.2 819.4 934.1 838.7 724.5 889.4 935.6 506.3 632 959.9 783.7 1089.4 904.9 868.9 727.3 899.7 860.6 701.5 674.8 778.2 674.6 1074.4 936.9 671.5 778.4 462.3 462.3 462.3 1138.9 1138.9 478.2 619.7 502.4 510.5 594.7 542 557.1 557.3 668.8 404.2 472.7 607.3 361.3 1013.7 706.2 563.9 588.9 523.6 530.4 539.2 431.6 675.4 571.4 826.4 647.8 579.4]
+endobj
+622 0 obj
+[786.1 829.2 741.7 712.5 851.4 813.9 405.6 566.7 843 683.3 988.9 813.9 844.4 741.7 844.4 800 611.1 786.1 813.9 813.9 1105.5 813.9 813.9 669.5 319.4 500 319.4 555.5 813.9 319.4 613.3 580 591.1 624.5 557.8 535.5 641.1 613.3 302.2 424.4 635.5 513.3 746.7 613.3 635.5 557.8 635.5 602.2 457.8 591.1 613.3 613.3 835.6 613.3 613.3 502.2 500 277.8 500 555.5 188.9 813.9 813.9 786.1 786.1 829.2 741.7 741.7 851.4 683.3 683.3 683.3 813.9 813.9 813.9 844.4 800 800 611.1 611.1 611.1 786.1 786.1 813.9 813.9 813.9 669.5 669.5 669.5 931.7 405.6 624.5 537.5 613.3 613.3 591.1 591.1 624.5 557.8 557.8 641.1 513.3 513.3 513.3 613.3 613.3 613.3 635.5 602.2 602.2 457.8 457.8 457.8 591.1 591.1 613.3 613.3 613.3 502.2 502.2 502.2 696.4 319.4 523.6 813.9 813.9 813.9 813.9 813.9 813.9 813.9 975 786.1 741.7 741.7 741.7 741.7 405.6 405.6 405.6 405.6 829.2 813.9 844.4 844.4 844.4 844.4 844.4 1091.7 844.4 813.9 813.9 813.9 813.9 813.9 683.3 1222.2 613.3 613.3 613.3 613.3 613.3 613.3 735.5 591.1 557.8 557.8 557.8 557.8 302.2 302.2 302.2 302.2 624.5 613.3 635.5 635.5 635.5 635.5 635.5 824.4 635.5 613.3 613.3 613.3 613.3]
+endobj
+623 0 obj
+[619.8 590.3 590.3 885.4 885.4 531.3 295.1 403.1 885.4 531.3 885.4 826.4 295.1 413.2 413.2 531.3 826.4 295.1 354.2 295.1 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 295.1 295.1 826.4 826.4 826.4 501.8 826.4 795.9 752.1 767.4 811.1 722.6 693.1 833.5 795.9 382.6 545.5 825.4 663.5 972.9 795.9 826.4 722.6 826.4 781.6 590.3 767.4 795.9 795.9 1091 795.9 795.9 649.3 295.1 531.3 295.1 555.6 795.9 295.1 531.3 590.3 472.2 590.3 472.2 324.7 531.3 590.3 295.1 324.7 560.7 295.1 885.4 590.3 531.3 590.3 560.7 414.1 419.1 413.2 590.3 560.7 767.4 560.7 560.7]
+endobj
+624 0 obj
+[611.1 611.1 611.1 611.1 611.1 611.1 611.1 611.1 611.1 611.1 351.8 351.8 963 935.2 963 578.7 935.2 896.3]
+endobj
+625 0 obj
+[444.4 405.9 437.5 496.5 469.4 353.9 576.2 583.3 602.6 494 437.5 570 517 571.4 437.2 540.3 595.8 625.7 651.4 622.5 466.3 591.4 828.1 517 362.8 654.2 1000 1000 1000 1000 277.8 277.8 500 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 500 777.8 500 530.9 750 758.5 714.7 827.9 738.2 643.1 786.3 831.3 439.6 554.5 849.3 680.6 970.1 803.5 762.8 642 790.6 759.3 613.2 584.4 682.8 583.3 944.4 828.5 580.6 682.6 388.9 388.9 388.9 1000 1000 416.7 528.6 429.2 432.8 520.5 465.6 489.6 477 576.2 344.5 411.8 520.6 298.4 878 600.2 484.7 503.1 446.4 451.2 468.8 361.1 572.5 484.7 715.9 571.5 490.3 465.1 322.5 384 636.5 500]
+endobj
+626 0 obj
+[613.3 562.2 587.8 881.7 894.4 511.1 306.7 400.7 817.8 500 817.8 766.7 306.7 408.9 408.9 511.1 766.7 306.7 357.8 306.7 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 306.7 306.7 777.8 766.7 777.8 511.1 766.7 743.4 703.9 715.6 755 678.4 652.8 773.6 743.4 385.5 525 768.9 627.2 896.7 743.4 766.7 678.4 766.7 729.5 562.2 715.6 743.4 743.4 998.9 743.4 743.4 613.3 306.7 500 306.7 555.6 743.4 306.7 511.1 460 460 511.1 460 306.7 460 511.1 306.7 306.7 460 255.5 817.8 562.2 511.1 511.1 460 421.7 408.9 332.2 536.7 460 664.5 463.9 485.6]
+endobj
+627 0 obj
+[569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 892.9 877 892.9 538.7 877 843.3]
+endobj
+628 0 obj
+[656.2 625 625 937.5 937.5 562.5 342.6 462.5 937.5 562.5 937.5 875 312.5 437.5 437.5 562.5 875 312.5 375 312.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 312.5 312.5 894.4 875 894.4 531.2 875 849.5 799.7 812.5 862.3 738.4 707.2 884.2 879.6 419 581 880.7 675.9 1067.2 879.6 844.9 768.5 844.9 839.2 625 782.4 864.6 849.5 1162 849.5 849.5 687.5 312.5 575 312.5 555.6 849.5 312.5 546.9 625 500 625 513.3 343.7 562.5 625 312.5 343.7 593.7 312.5 937.5 625 562.5 625 593.7 459.5 443.7 437.5 625 593.7 812.5 593.7 593.7]
+endobj
+629 0 obj
+[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525]
+endobj
+630 0 obj
+[670.8 638.9 638.9 958.3 958.3 575 350 481.5 958.3 575 958.3 894.4 319.5 447.2 447.2 575 894.4 319.5 383.3 319.5 575 575 575 575 575 575 575 575 575 575 575 319.5 319.5 894.4 894.4 894.4 543.1 894.4 869.4 818.1 830.6 881.9 755.6 723.6 904.2 900 436.1 594.5 901.4 691.7 1091.7 900 863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.5 575 319.5 555.6 869.4 319.5 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.5 351.4 607 319.5 958.3 638.9 575 638.9 607 473.6 453.6 447.2 638.9 607 830.6 607 607]
+endobj
+631 0 obj
+[500 1000 0 391.7 277.8 305.6 583.3 555.6 555.6 833.3 833.3 500 277.8 373.8 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 777.8 777.8 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 555.6 750 277.8 500 555.6 444.5 555.6 444.5 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.5 388.9 555.6 527.8 722.2 527.8 527.8 444.5 500 277.8 500 555.6 166.7 750 750 722.2 722.2 763.9 680.6 680.6 784.7 625 625 625 750 750 750 777.8 736.1 736.1 555.6 555.6 555.6 722.2 722.2 750 750 750 611.1 611.1 611.1 838.9 361.1 555.6 484]
+endobj
+632 0 obj
+[856.4 799.4 713.6 685.2 770.7 742.3 799.4 742.3 799.4 742.3 599.6 571 571 856.4 856.4 285.5 314 513.9 513.9 513.9 513.9 513.9 770.7 456.8 513.9 742.3 799.4 513.9 927.8 1042 799.4 285.5 285.5 485.9 856.4 513.9 856.4 799.4 285.5 399.7 399.7 513.9 799.4 285.5 342.6 285.5 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 285.5 285.5 285.5 799.4 485.3 485.3 799.4 770.7 727.9 742.3 785 699.4 670.8 806.5 770.7 371 528.1 799.2 642.3 942 770.7 799.4 699.4 799.4 756.4 571 742.3 770.7 770.7 1056.1 770.7 770.7 628.1 285.5 485.9 285.5 513.9 285.5 285.5 513.9 571 456.8 571]
+endobj
+633 0 obj
+[455.9 416.4 450.6 513.2 481.1 363.8 592.2 599.5 619.2 506.9 450.6 588.2 529.4 587.7 452.4 556.3 611.7 640.8 670.5 639.4 477.1 609.5 852.5 529.4 374.4 671.1 1027.8 1027.8 1027.8 1027.8 285.5 285.5 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 285.5 285.5 799.4 513.9 799.4 513.9 543.7 770.7 777.7 733.6 847.5 756.3 656.2 804.8 850.1 449.3 566.3 870.4 699.4 992.9 821.6 782.1 656.2 810.6 777.6 627.8 599.6 699.1 599.4 970.5 849 596.5 699.2 399.7 399.7 399.7 1027.8 1027.8 424.4 544.5 440.4 444.9 532.5 477.8 498.8 490.1 592.2 351.7 420.1 535.1 306.7 905.5 620 497.5 515.9 459.2 463.7 478.8 371.1 591.4 499.2 736.6 582.6]
+endobj
+634 0 obj
+[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525]
+endobj
+635 0 obj
+[892.9 840.9 854.6 906.6 776.6 743.7 929.9 924.3 446.3 610.8 925.8 710.8 1121.6 924.3 888.9 808 888.9 886.7 657.4 823.1 908.7 892.9 1221.6 892.9 892.9 723.1 328.7 575 328.7 555.6 892.9 328.7 575.2 657.4 525.9 657.4 543 361.6 591.7 657.4 328.7 361.6 624.6 328.7 986.1 657.4 591.7 657.4 624.6 488.1 466.7 460.2]
+endobj
+636 0 obj
+[599.6 571 571 856.4 856.4 513.9 285.5 387.5 856.4 513.9 856.4 799.4 285.5 399.7 399.7 513.9 799.4 285.5 342.6 285.5 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 285.5 285.5 799.4 799.4 799.4 485.3 799.4 770.7 727.9 742.3 785 699.4 670.8 806.5 770.7 371 528.1 799.2 642.3 942 770.7 799.4 699.4 799.4 756.4 571 742.3 770.7 770.7 1056.1 770.7 770.7 628.1 285.5 513.9 285.5 555.6 770.7 285.5 513.9 571 456.8 571 457.2 314 513.9 571 285.5 314 542.4 285.5 856.4 571 513.9 571 542.4 402 405.4 399.7 571 542.4 742.3 542.4 542.4]
+endobj
+637 0 obj
+[272 326.4 272 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 272 272 761.6 761.6 761.6 462.4 761.6 734 693.4 707.2 747.8 666.2 639 768.2 734 353.2 503 761.2 611.8 897.2 734 761.6 666.2 761.6 720.6 544 707.2 734 734 1006 734 734 598.4 272 500 272 555.6 734 272 489.6 544 435.2 544 435.2 299.2 489.6 544 272 299.2 516.8 272 816 544 489.6 544 516.8 380.8 386.2 380.8 544 516.8 707.2 516.8 516.8]
+endobj
+638 0 obj
+[525.4 499.3 499.3 749 749 458.6 249.7 321.6 772.1 458.6 772.1 719.9 249.7 354.1 354.1 458.6 719.9 249.7 301.9 249.7 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 249.7 249.7 761.6 719.9 761.6 432.5 719.9 693.3 654.3 667.6 706.6 628.2 602.1 726.3 693.3 327.6 471.5 719.4 576 850 693.3 719.9 628.2 719.9 680.4 510.9 667.6 693.3 693.3 954.5 693.3 693.3 563.1 249.7 500 249.7 555.6 693.3 249.7 458.6 510.9 406.4 510.9 406.4 275.8 458.6 510.9 249.7 275.8 484.7 249.7 772.1 510.9 458.6 510.9 484.7 354.1 359.4 354.1 510.9 484.7 667.6]
+endobj
+639 0 obj
+[514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6]
+endobj
+640 0 obj
+<<
+/Length1 1169
+/Length2 6544
+/Length3 0
+/Length 7344
+/Filter /FlateDecode
+>>
+stream
+xÚ­veTT »6)Ý-5(]CKwHI‡ô03ÀÃ
+W[¨ª+É'È/ €zÀàHA€€À( ˆÏÆfC:CÿQÜJîPæ
+W!ïpCà‰«'@H
+p†A!úPW”;ê! °»£òŸd
+¢äêò›¨þï¬Ê0w(ø®"àßmr‚»zÁýþí`pÈ@P 憂ª+ÿetáÿ³‡""ÄÄ
+³w@8Ý¡ö(gû¿ÕêH3 ¬
+ðÜ-4Ôûõ
+–
+u¬ m¹¬R ÷â[!ê9Ž<Å5YS¡óÜÔ{®$}u"ü6jJ¡c|#êj‰|W¨è¶ÁÉ”ZÀÉjÑ?=J’zº¶ÛÎv•×˜\æz×C %´¡ÙÞnf# ‡ØS|Ðïó:•ã¢áu;ZŸÈÚV“fÿPqQîp€ÃQ¿ÇOˆ1…C+..LˆÚªÕZ¡X­06Þ¦Îêq,?ø=‘Quû*½û‹èJÏL /:l9~g‡¡yšµ#›¶Õ)v_Óf0ƶ֩‚‡¿Tªnãúxê[¹4=jÃ"ßÑïè3¿q¨q<Ò`Ïò«±Õàõ)Nzõ4@•*ð~µE·uÑíBUþh|¿Ü¡3iBÍõIÿC4Àã¸6×Vçr-'¼'X¬Å Ž®wiMà*GCl¦BÇHHÞ¾GŠC/Â8£ÚѺ.Br0ßȯ÷ÄÔkâò¬©Óe8pìMPP¸ù᪠úµ%t¼»ãÀÃðèTïYR#r›‡XÛ¡õÔí‡ î¡õÕ|X³Á x¾öB†ÌÑ;b¾*a‡A9w>øø9×DAWANDÆ:ú÷YŽÇþþÒ¹='cÂÑ•¾Þ–O’]¬Êñ°Â¦fˆ~˜ëm,,Û^¼)÷ÅÀ©p9ylEõó:4J ”ºe;òFèBý5ž¡/'ÖÙ¿ù~*¯µíwuÁX7TÍK”ð¦ÛVrˆsÖ„‰tV!xé/½\‰ ½n2çœêõ[ï53fC/o$šÂÙØ·»?>÷®MãÖçŒn!‚° 3÷óå‰6J”65û4\ET¨ª±ùÞÁKyÖfrmÂÈÛÒ²2¢Ló¬çNjÅRös‚G…(÷9•_a‰/«'íjžà0P­‰…#A{hEê°Ñ
+„ó¿y¸ŽŒ¡e~ô~›±²áŸuÎbûEwöR×4KÛÑqó”y˜…Ew›û>ª×—ŠWÄ
+¶8ZñZÙó+7=Ï{ÿ¯Ñš·¸ ;dÁl0ïÑð–ÚIL“ÃFAjë™*•–Ò†„ºó”OÛÛ6~MI?fÙVbVÇŸ$ày…¼ÔýÔ¹WU‚.'Ün^$ÉQ
+7h§UN|è bÏÚÆ*<èa?,ˆøHðfȲþ3†¤tÈ
+kø}Tጵ˷Oi×øVfí;} »Cµ7 Ú1ù‡ ‘5(aJL™GJàÜä”Sä4t ñ3¬aÙG<Tå¡òÆ7˜MÄdˆ^E‹ Áй>òýSC:)
+Á †Z‘kwE3×x<ž¦uLY«%t„CbJèa¡ùÆí°òhÑû]WÈÈSÕå•—á[ÑÇd¡ù-nAV˜Ä¤”d ÌYÁ¹f¢f@HGP
+¹"-ABâ"¥/˜Zk£)ˆ· ãðžÇ$¢¼6|ËÎ$@ùŽ/Kz©U¢ ?‚Ëy.–>V,•óè;Óg|#eF9„G:Èu ù M)®K6 ¸A†‚;æ–'1eî
+^¦Úä—x×ÝèâøÛ÷­‡Û8XÒsáæba/rG³™7=µ6å—TÜnS8 -óÄ>öùÒ½ÎEH΄„´~$âÒÞ£ý0=Óð>€xgDkß$‘~R/`çjg¥}ç‹W÷còãSÒAjPF‚„„Í¥¿<SÍ)®e‹ß‡„z_§ŠÌ›ô="¦\³0°¼^?¬Ç>$:àö‰v?„¯#NF_L®´_ùôjÒ>wJÃONË Ÿ=™Á)ž%ì*ŠSË8¹ï=g~4X³hLUDçÒâÓÿiªÐgs9¡^ð6Zܳ0j˜®J±…èÀ²lƒƒáÏ°ùm³ Ï—]ˆ+¾`òÎ:B20B1|‡nV¹…ÕP¡E²”hü%š0ëA¼/´ôñsA³÷ ¾Õø9„W;¾ÒÊåÕœ›ˆ|xÎ ›gÎÛÁ`?Ê˪Q|Õ>m‹[ù¤‹ƒ0¹d˜­ƒ×¬¸Ê–[øÑö
+qúÒöû™™Ìß‹v×á,@ öB,«‚¯·õ²_7ðL”88bò>Ò°âLÑ(]—/6Ÿº(“‰£2®†Ó4DÛ~T¤'ZLæ~Nó1ƒi“;³§ˆ™X¯Ž`_f¥»<Ãkسˆâ@÷iq“µê£“Rª­Æ*[ì—»,±p¶RÞHÅQ+€No³A›*µiÉ_Q"~ÌMÁˆúú\ŒÑ±–µÞÑ–ŸÔˆoÖºðƒ™H¨Rïz¾‰Jn~Ékïüå‡Ù8+ú“0%éÆÞËîœÄô¾€Ï‚0âÖFe3C³KÃÓ¶
+ÑcëÈsô3¢Rוí`øÓù FŒ•­ÏðG#• «¨1ùt¾qxG|#xqNÚà[bm`Ú{bÊFFïU-4!>êt³”Ql™Iè]gÈßî–n’¦ù!ù´A•9NfìDqë(NP™½ó°7½%‹¡ 5C¨¯[¿Ç~Þ³úèúEP9Dçyæp¬b´"œ¤ÉÛ€1ü¹Ü¤?f«û:ôÌ-úÓ>~Æ€kšT â ‰‡¨lÀxY/>CÉ_GºB™PœñS¡xÝÛiL›þå\RöU-5Œ-XùË¡ sšæÆ:a(5¹ì/F±ïÙÄ2†W45y.3h¡5±LjyOÈÆjߦ]%z,Œ¤r$ÍSáñã“~ecZ5®cOí¤Ãpö{=‘4oÜÝæ#ÔÁ§AÊÎ'2“þ²–fФkˆ³&Xµµ!ÍQÑlÈfDÁƳ¤oùvdóÓPßó÷Â}ø9̾ÉsünU}¬j×Æ"‰Öúàdaö =Éø,yMWåã˜zo‡
+©Ä:w?§÷™Òs½=‘)fœlÑzsa‘§;,¥ÈòͭĤ²6ˉŽm~NÍÈ …·[±Ê>*÷ ¹ÞSz²BìôÏ°„™“ôŒ
+ ‰:= œ½É”Û$Ä÷ S'Úd}•]XLÆ šú$3:ÚÂ×W/W“=¶sìÔäu{™îh_éLͼœ¿ÿ+Ó\†ŒpÅvwtÞ<ÛfÛ¦Í ×Z€©:AàƯ\FýSÀ4öZ|¶Ag-u†Ûó¥âã¸G]­2›Å%æ™zÇ¿ª„î?¢˜ÓºÜÐr #v÷Þñ•ÆQd•5o8ÓĦ{:±ä^%$Ó½Ñë‰_ø&•OÄNgù®Š[{ž¥j30„\ú¹¨’<w´-{míXó’÷^¿° E¬íOët?C2ò^Þì<-š³&µåO)MZÉ)[ÆW”]iPÆëþ]»{ú]¬ÑÜ-ºåP‚NÁçì„ɯÌÅšS|gîJ¦R»VãuUšíZ´•T­o79£|†Ãkgo(zd½£Ò–pG’M柚&Å>n4†‘á.-9 ;'Å'éðv¼ÃXþ¢n€ØRG¶%S]é„ ÈÚ%/ëa‘Uvj@Ì2%VÅ ¼1kCL‰ç䶳;´{‘äˆ2IÑ£­×oÎјmŸJ–b±÷âu;³XqŠ»6r…¼y‰0؉,9gÿ€#ô”L.ÔØE÷u—̈wÝÞóòbZé<²ö‘NC\ÇèÐVM:Ûú®–¯+sû<’ØP´³ÿ{‚“£QŒ³©Ä§³$ÍY‘íª"ý2?¸È‹ÎÅ;) \SZ˜‚WMW½÷R?‘-?gVx¡Û? XNØI­óùNö‹ÍL{Ч·Y­Ø·¾úó<]_Cï¯úžß·+$_ä,fŸ¹]ËjNlTËL´~™õ5&í)7‡u"ó€½ìfE—¦Òå«4¿›‰¾‹—5ìÏÆn¥Ö:7Ö{wÚ-Sç;yÄŠrÞ_\tÝ&§³ÜÇ„p07í:Ì( ÊÁO:7·¿½vç“À9GªYØâ‹)L{ÛGQhÔK»„íÓ!ce0ù'Ž`¨ýQñFZ…IÚt¹6‹µ$³Ï¯šÑ¥0B˃-Ë^ªõ!ÞUÇÈaÅ@a+“ø–£ yþñÄéòßÕü;¯æŸÅÚ ~íh%ªË—£K¹<¸nˆ
+†ÈÓ Ý2qÐ_sp J4"éÖ·ÔÙ“ïéU—Āܳ$>§±lI:mÖ¹Y?•m¡š°¨å*Õ¾Ü
+{ ŽIõüc«¤WÃNe÷çø1ÍþEÞíŒíÉ’ã^{¿³&UÇ~«û…£ãæú<º™ŠOæ'ø­ŸÚSȱpǵ}cÿƧ­€è¨ ‘ m† )ÿ H±3cU „ÍÆ ëjIñÏ_”ò³·Ï>-ÁS
+!ôb’)-¶$V)Â¥þ!å Î¼ÏÞpú}êö«íè´‰0‰Ÿ®ó‡~ŸQ»’ÕOXtb³ØÞçS¸{xs?lÈ·õPukÀeÿ—ÌɹÆò¦Ç¬:kÊñ_uPÄšïû™ªVk‰îHÃO^rÌ
+i©Èiª¤Å±lݯ¥!4Vø. ’—G"å ¼8´š4l÷"¥Åâ k?ä½*ùÔyϸ9òg À½5¿JcJ¾³ˆ=è?º¯¯•w>^nçôEèU‘{E©k ŸÌ¯cÉšc¯—ù€<¹øÔ]HE‡x ë繇]:ëœÜ+ÊÃ.,¯nW’·4Ø»4q¼S±ûoιÓ˜YrGD&KŽqç®Ë±dT½ð¿p7‡˜ÆŒ{}z+Ü{¿cO»[¿j§z6£­ñ‹gáÞ‡|4Æ#‹}Ì=Ÿ¶*ìh~KC3 S—]L,×aZÚáƒWFsçjñ
+ ú3aCzXꄆ’².<‹–%Dí¼‚‚l~œ¯¯èæ7R½iæS6„cMo>Ôy
+ëùé`Ôˆ†Ñ›LD.:8£ŽÁlè$R*AJ¿ÄÐϼ%Æ톯â±À§Ëf.1Ó÷o_ö«n÷§èlˆ¨øäYÛAàÓˆì9âõ½a`ÑóöêI²'˜ŒÞ’‰”øµ\£ŠÑµq_ç¿ó¥}cs0¢£{Ãr~¹¯ë\ölÚ~Äó™e@í¡dŸÝŒ´œ™¡M„ý5BpÙ9Á_ò
+e}Š6Ê%ÚNÅ3AýP¥¸XBãë.€øš·E#Oh lpæ™c úã•]Êh»“OŒ«ûL~#‘‘—c7Á¸†1Ǽÿª”qi!—ø¶oq`| ½(dìÅû@}ÈãKkìT
+·²á¥]a8Åë9Ï`ÇÇá‡û­6˜*D~ìùKLö’ÉŠ‘ÀÞzb{¹zvv•1Ó2·¹®2ÔAÛýë‹Nf‚:‡¯òç@†ôu%Œ4O;’Ó&ý¦‹WüÈMs¶å°o>ÄÊ¥,J¾‡ûP™wÜ¡C,¬kÌ>?÷vºŽm’ûC­ê†>¸~K×|Ëx¿y‘Ÿõ…wm›
+,½1Ókž~åˆU–%Jo¤=ˆL=7& Fè"Â)˜AMŒ-
+Œö¬i¿ž˜·qÔ‘'|)«Ó•ÏÁH³ç÷©/ç%QCùX¦Uû£Ö©…cz~€Ò îf§²‘žxHÜ=Êüõ‘0>¥•ÉPåól'ìRY<£ö³Gžç¥¡KÅ’Ø°ò7çÞEý”†Aà/ˆy¦)ç”|CͬÞxªÁNõÔ£I9阯~´—`­Å÷…ù§vÛìþZ€èãc§‘–W{‘À¥géVõí·AýeçäƒÇøÃ)oJ˜æG“pìõ÷~¬Ù.«…wÒŽ«m«ç tC O&¥úŸÌ}¡P¨Syû4ŠÇÂ×ÒÉ­Øo¸…õÜOUcꞆÚÞ3ùP¶{9ЂQ£ºr†bÀ©€,~ÑéVÍ'0M~â«äÿŸàùxS“MI•9©xH3ym¯7~ïºGm ­=5ßa ’ x¸§ª
+·í,1òt~=ˆgÿŽ×Üíò¥ÌƒFÁ–n‡ 3› {·SmQ—êã³ôŸ›0¼i¶Þ+ïZh¯g‡ÂˆŽðö™ÌI¿iÄÏ
+WÏÚ#‹¢šØàï›!e‚‡ší•L‘Ç4úê±q’”κŸ×([2}ö'ª&2K̾žÑc¾´KcÏJI]Ç7Èzœ»*ùNc»Å»¯…™f3ù—41p.Tè/¤¯1¹GÄ€ˆ}]þVI(¦1ª´hÿ{Pðt M,~ü`%"U€¨èÀ WùGܪý¤·:ksE­V•ÝMNO‘ªuÀwÑv5´NQµ­¨o)\TÐ-Õ#¥qÓ0è/ú!ï*.íftrö™N‹ìHBÆÆýºjù¦Zln]èÕèت.Ò@aU#:šÅ56`Rì°­Íô8“À‘øGQ‘1?º®³¾Õ´ø€ÂÛ±Šô³7²€;ätµKRW½SXû-IÞbâ&­EÅZúâòÀ·MXe*ZtSun./Î,Åé÷AŸ!&VÐÅÌ\uÅ›zt‹ÖîL4Ï×ö]dVÙêÐõ%–ÄhÙGÙ½ñ¤5¡¦Nd½I-û(êX«‚Wû¶ÁvÐæJŠ'ô•D•û­¤l6…Mwq$Ÿ¼½©\êR\ÌU"1Þ°órÑNÊLè‰-L&{²~‹_Üæ<–ý-53û¥umšqOP†ë,lG²WÆw¢·‡§.-:ƒ´ÕÞ˜âC©–Ø—(|c÷ôPs³lΆl}£—3eò*(f‹¥¹7õ™ÖO²«Oº Äà±Ô·¹?®ðŠö;s—ò/un Ž
+f?xŠÊ²D“F§š÷ò(w!U¡:îõJ4ÍOˆlJæžU«•oPÆQ4áħ
+–¦¡Zs$âx(÷ÿ
+endstream
+endobj
+641 0 obj
+<<
+/Type /FontDescriptor
+/FontName /OIUXCD+esint10
+/Flags 4
+/FontBBox [-17 -2223 2026 1]
+/Ascent 0
+/CapHeight 0
+/Descent 0
+/ItalicAngle 0
+/StemV 40
+/XHeight 431
+/CharSet (/acute/ring)
+/FontFile 640 0 R
+>>
+endobj
+642 0 obj
+<<
+/Length1 2607
+/Length2 29497
+/Length3 0
+/Length 30991
+/Filter /FlateDecode
+>>
+stream
+xÚ´¹eP\ÛÖ5Œ»»hÜÝÝ%¸»»7îî.ÁƒKpw‚;‡
+Ä ð‡(ÔÒèðW
+¢fö_Ä Š0ÚƒZùßÄ¿-J±²€ø›ÿ‚$²ø•±üÙ@ù-mþ`ÿ =þøsþvº»ü#ÈÅêDà]P­½¬-ÿá²Ùü‚d²ýéd÷Ú¡ý? ˆžÃÈ
+ÚÚŸÌœ PGÐ ÿc´Wà2 `à¿–A›qú³ JædºÛí-,ÝþXYÿcýû¶ø¯ÄÚ Ô>à?”e)áüg0#w ׿NÚ}~Ç9»wþŸéXYA²ýCTVF®6"îjá`óïVsþö±ðø‡´œ $®6^H‚ù÷ø°²‚êÿ)Ë Úœ›µ‹Å?ú ÁÍø
+²ƒ~þï?ƒ üóˆúG´˜ÐË—‘tNÙx9¬\ Ù5‘Ýÿ_±f?ïÿzÆ€.Ãÿÿ¶
+Ý‚qQ΄,ŒS/š.}F‘ºQsíÒ¡9L\]ÿ;B5G$ ¯àº;ììo5ï‰9>¸ ‰!3‘¹ GÏŠL±…—gË?Ðد5[ÀˆÏiºû•X|%
+‚‰5Ò"ÜPKðõ¥¡8áé1% Á=˜Õ0‚T¬žä]»Aü•_ìRŸ˜
+SĤÃù)ë±xþ¨Ÿ_b(Ž‹Téx!ºUèg£ûdaòe<îÖ2Ú§ÏË'ö“ø°¥˜Xo ¡ G” Ú‘_•ÊMÇÔ¸<J5·ív ûª‹‰pc_­ô­ÌšàÃbPz©Þ¸2Uø-ß&7'›•À#-Ý÷E1xü:–rj»®Ý™&kù_âôEƒ
+©Ã9»´F_«­«>Nãô’±ó«†P J¿Ç¥)¤tÛy€Js÷»2¹@_×è'¹|+÷p3*§”QŸˆšgvcá¦rQ§1D)]µëëÅ`Œ_[;J`ó’ÂõU(òÈDZO YyÂ`vG$S“vï¾|na=eU%2ÓÃÂæ¹ú°@Lq4u× /žëƒm;öÓ’L³3+Ý+cëk@±åsC2t›¸ˆ¬§iY—º.4 IñÚ1£›ïÍ)É–¤):åje¥ÓŠq"9ã‘õ*¼#‰æ7÷4Žv_Ò#´‹F,Ìý…”Ö4Ž¥íW¢Õî°O°rÚl=¶Ÿë½Ú¾²·„Z/(jã-â>‰¦›®èj,6ã''eûBz\Ã"RÝ T’Ÿ‚gÝN2’”o¡a¢üe4Éßü¢oÛwû¾-ðãjCôùñå‘ᵧPú'ŸtþRv~þª(¹V.é:Übƒ p„M áîÁ³ýn 4SUqÃP·þ¢O´³o ¥êbâl_Ñ^òÖŽ
+3ש?ð±‹ó纗·«Á„*·~Zn;II!o±”2«RJï­dˆ‰‹þªX[X¢×zš„º§Q4(K}àò³("¹‚uµŠ}Wº^
+žc`ìXb°ëª@Š†ˆ^÷ħòV¯M\Û÷ï²èYL–‰*ð#ºÓvßAõbÔ˜äç” ÍWŠ-+I’O±”¸Œyù:h›èNá¥çNÛé“ž¡®ÜL_ÌègžÖDæǯG¯5EýŒå‡K&3`Ñ¥1de)hZðT¿®1IÁHHW;`Ïpg̵èiVCAô$¢ß_£·;†©ðžÅ`0´[øR‡_AEŒš©Á7[s—×bö6Ø[ TS°šy|/}œË&îͯ’Z½
+Ícw<ÉFî×ê…Î #¹X @qt(ô§6ÛÚbÁy/¶j䤰c)Hò=†ß€ì£h ™C¡
+t“VäÊ9chRÊÓ±Ë}’/o%Äí§‡à)ÝF6®[EªÊ¨p`A+ýà1rÓ{”„gøýyŽM?“Ñ Ø0!î™Aò½ª1„ñål¡¬¡æG)ŸÌN:Bˆ˜yŠ¯‡¿€± ”*ßÈÛíœGßë`¦B”o>C-"g;ø4†,=ÔVí3&G)¸¥àÙu &˜”iزW¶¿„ ITkT„·.Ó(’Öµ–0‰î±ßÓî:n¤ärY1ZÓ=HRYÒr¿„a¯Æa—¡5Oý†áx®F¥Ÿ‰²ôÓkH°ç T)´ŒK:÷Ú1v ƒÝ™!·qš ÆQ>&7\Ïj̱±ÃœÚ[©a9WÉpúfbÊCÍ‹O?ˆæA*U,„
+LeUgÑø”m²Õèè}N:|q¤ƒÐšEGu4 i¿æ‹2XŠ qß —)•C¹N#dÿU}4øɱBÄ0ù ã~áõkÆÖbÚAä‘™Îy.ùè–S‚˜¤
+¯nZC j˜¬õ³¢r
+IEk7¡¿ˆ´ëïXÌò ó„PÕ w5Ô×\é‚w$ÿ
+áÛ8âVg‘“©I½5€ç»ÞÑtñê*l3Ï&ÅÄàL’qŸA HäBÂçÅê4 ¯Ó§†÷7mYA•YÕ[‹ïFþé †÷¡“¯Ôøl·Àgš³¹ŽÓjí¼3æ¾±ìbÎ*v$.ÕO%ʹ¥¥Ù,˜´­z²)¦:{ò gzL°S™ÍmpffÝÕŒM¡Þkp4 ñ}“ùŽƒ©¾D2{|Æ—¾Ì¦«s+ øVµ÷zþ%Ö^¾ú«O²oÜ\ˆ7Y¯^}¶h$M'ê÷t©gñSƆÁ˜Ùg­ÉˆµQ{u7ó³çàû<ŸW™ð¼Zè3¨2pCµ%Q¸2}EWSAhÏJë©-‘puĆ³„
+×qŒZ¿ |žh„Dq
+Ü­7`ñ”ŸÛCÈN.ÛÀš*=uÈèò5Ž=1:![Àº †«£¾~F>‹ºÍ–õ L;“ß-pÏŒŽ~?Õ\Oþq•´*.fùêþNÒP¾[þ|‰Ö²£†šØ½8ƒm”Y~%ÄŽ¡á4ö8EœY¼{#¤–ªŸÉÖßÊãæI†­QeR¥êë&³Þçµe)8d,­·Sä3£t¿˜É
+g©M?HêÛöüëLàÅ|%¨ÎÖ‚B5P»ÀQ›1¾³‚E6¾¸™‹
+Eç«ÜÄ¡‡`W…É]Àß×ôN¡®ôfÓ¤„ól†ôÂ~ý“æÍk5“=®¬£X‡±8HÙÉ0k%vûòK¤€/4)nèdóºæ7yËd®˜Åò˜X­ ÃŽ²Tx¸%#,:ùacº03ÃBŽad¼*)Fýl|.×y&jèô
+|ìí¨gÂÎO¿r…^XÁ—§ÎDý9“ )9/¯ÍžäŽfnü:ùè7ž¸‰/;³úAZ ™ˆî»h­ÅݘMÚ£ ”(MŒb]'£›jã 6=Ÿqp@ê
+7¾b/óœ@î›>w!ûÇ”TÍ
+ÉS_Â)g?ž@i=²fé‡7XË—r‹) gª]ëµÉËÏï{ì€uµbñª€çåSÊV$RN™b\/»ÆJ!Ø=HÚ«H9fuŸuñÙßïæ]q?ôêiÂg±"йÍí¬6ÝÖ)¾Â†°]ÍQƒ€qí¨‘ïC'GV£úÉãÔ£¿Ë–’Ò!>³Û§4”ñQÖêl¾Äj8‚wý—²½åS°fx8ä}«¦åIµVlVÛ ƹhKN÷m°è¹üs’ôX¼º²?‰œ£À'„²À R„ªÐvep˜›‹Ü[N:óäúÖ¨`ë}“ˆæþ€×·½¬Û/˜³s‡#+fe/ïÎ÷¼ÕûZ©Ù©}ɧõýÿÜ+V0½PJ:ãsÞ¥çÙ‚k1ù§2\볦‘K”k[¬Â}R‡ôñ *ÙÜ[ÊQ­@jϾgŸ4)°ùíÿ
+@‡/ýdM]æŒÝuÎ<2ˆÄÇþ•”(ž§IðG„ BÌ¥âÓ¦RR°EC8ðÇÂb3.š[}#ÁVìNJ¦D–hÌÛöRUªˆJ¾²ŸB
+ÌâŒ&Š^|£“¼ õP‘cµô‹k[ªdúYÇ
+(0¬œ”_a+ ùû²$/tE;+ü"køi´»^CÅ‹íq11éXü_Šr¶É1c3÷G>èˆF_YÝ œ!ßc#7#ÓcMšÊ#gñMÞk@ .i¬\ÑÆy~‘xä¯ÅWë5.'Æ:gc ºY»÷Á÷–ØZ›¡KN& wnvÍMVØüþÄuö #›± éašªà’²ôL(Öµq}-ZE裋?jÉ$Ô™8¦VÑ8ïÁ„³]Ƚ6ŸÓž/ó…;Uľ%°ïµii[¤G~¸N‰zLUY‡qr¢«*f6‡}P‡w=³ç »òÊù Ëì×Ê›’E*kH©éÓvp–<!NTÔç}×rËe䌪ˆÙus¡§DfiÑ}y6þÉUíc×Êc¬££ÉÖpÏkó
+ml×f–dK¶/Ž‹¶zR;©ôbwÎqC‡¨˜Ò¼p'Û-2Â>\W<ù„ë'9Øé ÛÜ´G$Y媑 ¨úam‹ß%DKãæ£Ü!£ïÉùH£iÖ“ö 7ÍSÏŸÅãÉÍØêËþÂNR°î™&GÃÞœ+ <“‹Å—ýrÎý­<¯H&Å_·OÂSóÚIœÆt]—w+zDe(ç«‹íã{˜ zAÌŽš]TÀH
+
+YØ7sVŠ÷¯)ø>Á+µlÐÎHuÁðMÇ€¯Kò°ÃL/z¥“mq?À­¿±…aƒÅç7ßz¼$©©$˜Î“ BWøFª•Þ®)ÀlÉ(ˆ–Ò=åIGø1§½`ä•ÎÁëúÜ‘AÏ"q””óµ$O
+lmôõ£‹?ÞqVÞ\ÛûVãÀCÚI‹}L¨ÖH/ߎ\+(¾àÛÚLj¥ø –„‰œ^ˆ",éÅ â·`yº~!¤®FDWäQˆ]â…ÖH¾R:Ha·ÂäKTõø¶SP«™±–æ¯ö&µU—©ë£ÓÎ’~:Bz¾)Æ,(Žÿ’˜U„{ÌÀNŒgô˜ò8§éuïz*n"›Öú®@,Àþ¥‹•‡\SÌû÷ψr›ÍâŒJ­œjM¥0Z~¢³Â1!xF2ò¢õÖ&/¿è ß•#µÁäæ Ƽyn;¼“ eÜ÷Iÿ’‘¬•_Ø–3ÉðMñÅ®4ù-V?¨ÒÇxAa
+gtd%ªœ¦¸
+qˆÂd3ŸƒQ_T¸xJ&/_‡ìê·A1Ì`ĉ?vP•Í°ù}C¨SÁ1¬P>q‰hëÚ‚1P¯w׳2¥!ßNe3Žšsx)®P gSÈÃøªð®asQÞF ;!Íà¥ë»Uã"í‚׌qÝR¦ÐÕ*/«ü¹‰&8Jï£ì§ó%¼q7”àáPËá—öo}pX÷ Ì×ÍMb?Ša ‡¿¸ÏíqXÅaþz¹ET¡„ë³|½•ÀÿÊ:³2ìëKt]òAŽw.sžºmn;ÿ+-½¼+’ú—oê ”_šk}cÎÖq»aç àÌ;2ÍqÀë¹ é]ü vºg‚Z±)Byœàõ¦pf¨~ - i~\sÂQÖ¿ÿ {Pv¸/#ŠÃ×´e„|qK‡ÑT°Yk×&&ëÑœ¶Z²—åVçb}ï †âåbG&WùTNJá‰è3ÎDëêóe±Q³B7¸øØù݉¶¢Ê­ù¹XÂü2K<;­WbÅÍ'YZº¯\þëΧ2»Òc²è}Sì¤nÜÔ•Vëë©,ÄÅò<.e…’xŠ&ã–0§*LÄ‚_ÒP«˜ÆoÛ:Ó¼>öh ;„Câ¥/&¨YÑ#*yQó# Çc&‚?Ks®.´>Ô
+$C"ôc³ð“á.®Iž˜U4§EpµŸ}ádLìÍ”c3›«–÷'FøþbŽvcDå%8<jæ¦R¸h£ØûÖ=ìèH|ÿ¼³´]JîÞ´™öÂa·H‘Ä¡„¢Od+1,i.ñKšV-¶‚w°œþW³ü=›ãá#Ž˜I¤vMãOÚÞ/Éò1/`(§Œ$°™pM‡Òå®cÉ2°1‰Ò'Ù¨Þdœ2µçN¼‘?ý¶ñ^À“´ì >&X˜K!õ(þ°§º…Ø=1&O9óZž*`Îë?臗<åX¯³Ä ŒÙ3–O JFµ«)›‚;.Üá% ü²²Ô±­éüX­óQdЗ‚·¸á×SrüžèçûùPeøœÆ# Óaß²µGëwࣙÁ·‘_ʉ¤ø¬XüDþpÒr AtÒÔ‰ô‹ÈÛå0õËO÷É"ê aˆz»à™%±ÈÁ輈®ô»”?îàfÙ†Žlœ÷9qö†–0d0Ï i £:{‹7h>?]ˆ ’kZ­›BÃÐ$îç|Çä‚BR³Ÿ¹áíJ× æM
+~Ó/?vm5µÊ%N8&˜é$5pà¿çRâo¯¨k}»éübœ^§¡z"ˆ¼¶¬Þ£M¹1Ý•Ðþê&§Z]…P5o¿Dq—øˆ,pfôn\Ý'GGm&I̹ýù•y€vš.ùMi—spÏ6¡Åû}0ŽSçb »|„ËþRðGo?ðÇ›=_¹¬X/XKÝÁ¡_[/•¡/Ò5è•èÓTÇ`˜êZöåP2÷­2‚ílÑ–/.³HijË%•„ ™á·E%¦ùdÚ!È`Oµ“ŽÍ¿«Oœôy/ ¶<p
+h|zÕ›Ù7êéf‘°JIÈô9åࢭB#} À²Ìcëk±ЕuÚg°ég}ãq¢·n@R³ÑaÒ¢Dµ`±Å±¼„¨h²7ŽuÚ‚„X*øBµ("
+Fõ¨U_±OW±û ¼eˆ·tj.šäöc gy¿ØŽ~Ÿœ+N;øÌø©oŒ5?í2J¦Ÿ­³À:ÃYZ
+'â45þç‡g×jvŠŸ6¤•É
+È×ðœrp7îÔƒ 4*j½Ä}\œ?ÊoÑGÃ8ŒE:j¼ÇLhxÙU=/ÈR¹Z¤4B{âM•—‘W½°ÜJw (/Ç VGw_°/îæ!lJo¤ø1°Vò¬¯0ûv5ÈmÈQ…™uhø –ÞÀèÍëC¢ú¸Ù<fKÜý}j1¯ƒµÐ4;Z3SÛý°ÈˆŸùŠñ›QF]Ç1^œfùxæ‹ë÷àðSÛ¬ó ‡TX Ôi)nzõ”8¨FF¶˜à0y§ºÅú¥}•»úžÍ´­Ãt4+Ñ ø Ƈ1ò‡oßigëè©%š7‹Þ2çð¶UX9´{Óây#zñÒ¹ ÒžÅt«Ó_Ž<¶ƒ`ŸÃ™>œ98)a¿¡FpÒ¬¹œ‰àøú•ûk S°úŸ¬öçDpÖ{ävN5Dâ(̓Û±i:–Û‰Hö[kôG¬*¬ÃI­ÚÁ~9ÿØãK²Y™„Ûó„HþöÙA \B/Ö°¸åmy{{sþNqs¡ƒVM¸Fß`ÎÉ]Û°˜m>E#¬˜÷Êþ»Í[0»gŽ’XqÓlÀjµŠ_òNŃÆ@ÑΘ‘RË”O™T“ £1k ]ä]øËÅDö‡ùF|д
+QðÎwøÇ…ô™¹ Àsˆ»4E£ÉóžvýgV½¤Á‚á¿Æe«ý÷ü3U»Ôjµ¬æ‚Å°<?7ž!HHk#ñYUÀõZœKç8Zø(D¹í%•:IÚ*;]F‘AYȪ@­réhÖ§÷oªµÙmÍmàÀuŽÕ¥S5lÂü2_<r ø†%Õè`_ñ’%â´9’Å"«[Ïh.ëvœ`̇©KÚt(ù³8õ…g?Ë*T
+ƒ×º„ ×O6¤—XUyœ¤'yQ4“E’üYªxUz@bíÅ’öηKÙ¶²µAØŸ.y“Xâã Ýæ.ðN4 2ÌÎm#iï¥Zv<Uö :pG0\ñn°4µwhøÆuæÏä·Ôfùõç–û;~ÕxˆÌ«Àuú\skEåb²WS½Ñ¹º¶²³üøãüä@cÏ-œ½jX[³Te­§ïdrïëøN¤+Jøõ·.*.ó†)”»jD#7üBª|å¬tŠ‹
+E@[‹ÃÔ#±•_ðŒ[’Ë]ÛöÝ“ßœ¥Lñè—bš¿¾*~l ¾aÕÉe)›¸šÝØè-st}õîŒàÇé~ _ ºaƒXê±äQ")òyÒÝUZ1ô»ºË)9•éÏÑÏ+q-xfW>þŽ+»x>Vï8öàmw—Ì[c+x
+38xò"<Ÿ*ÄŸ²4ï5X/EMH8&‘÷E%ûtâœ«Ê 4Šv„h8d}òÆ®§ˆÀFéd€G¾ç6øPÉ®Í]Kã8 ³·Ü¡ðbÔûÉfñ<˜­óš–óð$b‡Ì
+Ø’qK4baäý³n3F¹ÝWÂ,û·IY²†Ð]}¾hßOBh5$bAø…K¯F§?~–Š(´<S&ŒµƒåÀ48%/°P‚|Bö3)ñ43â­³[ób%526X߀¸$³gJ÷Lòa=6铲ç( *ôU£ˆë43w1ž`ÇC ìÅUr^vx궬y>ò/0©Y(ò‡–—£¨Š7‰ùÓùiý¨óÄ5C¶‹ñ©t¤ ­ÏáÌQRVÞÕðÉärîÛ¶öщ·#`˜
+ MšwubåX’³±‚=‹cå-Ó~QÁqHpÛ“$AÑ+!SÌç¬6"7&œ ä=Ì_^<:qh¡Œá »öT>>Þò1[7sÜŸ®ÐžÖƒ&,«Å•ï=AQu‰ÄhÇ8–̱’iåGrPk‰|/6ÈŠ5YÓV= %•†Kë%Z„ƒÿ G1œ´nº–¹B­V‡îéšL%ªû(¤ŽXeñ TPµ `(“^ùÁ˜'5Á¼]:ø¨¹‘Tñ>ÄyÑ„?”8¿Ì¦(³ª–@œ:«cѳDüñܪn¼J ÝÙOÄi_ÄlÝwÝ7^!‚ÂŽ%9É„ú8Aùâ w÷>­›í4>ŽÁ˜
+…ÐwXäZ–¥ap¿&rô«˜DÄͼ²ÔûLÝå(ƒ±c_¶õœ{¼ÇŒ!BbUqDÄWö~Cy¬ôÈZ ->>4Y/'¸ž¿›r£ÅWd¤H¾±–Fj ™InF;)/%7ÉÚ×¢G5.Ä[5Ðòç2Š#ÖÒŒPy¤â{#*¯|¡ú¸˜8ãë3—nÂégP¶B€<\Và×|l ËEÊÿ™ÂÀ(©¡g5¯¬×üÖŸˆí«­×áØz{ýXH¿?î¦*ØRøH›w»;Óˆƒ\}y¬êÚ´ýÔÙ;1,M&3?©à$r? ²»h©°à™'Â/G…´m{à“s.C¾sʃQyƒá>jÒ[”\Ñs.#u>s¢·¡îåè—W˜¤Ò±žÞh?Æ“,í ýî“K²Û'ŸH.Zy,‹;½ÚáÜí·i'A- Õ¤Òúü‘>v ¥¬OyZlfðfØAšy¦e\ìV%°~!
+¾:ù1üy =á$§¾kk½­€”°2*¥›’(PPòPîV|×N.a}žsé]”¹–oO)¬çH—ºÊX*¥êy¾ †ù}å”ø!ž˜’]0³IÜ‚:gÑûj7lﱸúkLÉòPRÎc8È.…ìCoIÿ³F'Ë÷.5(ë?¿J~—¦·•õ¬j‚›Å'AïåÏ1Bv“i[`X(7íŸC¼<°Ÿd7rX«©Ì«ôŒ+L…íÚ¤ø,'z¾ö’@‰ ÑÁB.3(.W=íÖñp€ES*Iä;놕‹ú‹Ej.˜
+8FšdF…héÂQØÓÕì&ôïÍm”ì8ˆi‚9|˜t"´âþ¸üòKÚhõAùRûú-$_ #ÁMUg$„rµlÏs£XÓL¹R”w^ÇlëVÆDÙ &™6ýÌÎÓcH ¥2¹„¦8ýH1ù%/üÂW«9›¾[½ ¡B_Ç̨ožÊpO~&
+½CSÀn(‡iÓ0ùî>ó“ëé®LýK,D¬v0ùoé)DdÁvHÒÛIJç­Å*Î>jNmKgyvuAÏY촯 ‹ÛI.ö”wš"5q s¯Ë)uRCéc{­5u”»u)Lè}kLì<†ôIMS€Ôæ,q`Â]íXO'B'P_¡â&¶Cí/„kŠ»Ä¤gƒ /
+¶~±ó9ñ±›ÄÑâSeú"˜UÝ_¥Ô†ÏI=S¦`²nD™s ¶ðÊ% u¤T÷V}b9+ ŒæÖ£ž_‚„§%qi«ëµø|Á„8é:eÀáv&á'V…óSõVðrSHví`€?=÷®¼üæ¾"±Ïi7G ,Å“d
+
+VDqåÎ醬sAÙ݈²$é²Ó}Ax.’G¦ò­pP‡hñC"&:÷¤ìœÑ÷1¨néÆD{ëB´OV¹™(•#˜ø} nA›?f³{ù†2r&8¢zÈÂYDëÆ ­’ꄪPšÀ­Ž`Z£Æ=' `Zcj0š7'»b6YÀÏ>œo~×’ZX.´Ù"¿°§õdQب{µÔÿš,½…n˜Aê<ž0ú®ÝÔÍã"­6m¢²"W½I=Bm&þÀÅ^ËÌÇÛÕž=GïY¼NZËMí-µÖBêÛsªB 4çû
+µP!ÅQD ¥D†Ç9V*î“÷[¾rnŠŸ¾ÞƒeÌÑéà{õB.ÌV§”_CVÍFÆ€øÆUègzüúLë‡>¼
+…íYR*ë[¤Ô´C
+·øönh†îÐêæ EXðïÂîÞ&ëïƒY9Ù|tzÑs<ˆ~Õi~3D" ÞâŸÛ¿¨Žk÷»·-©ÏªAÎd°¡ëKLˆ«ýk™0ù5ÚPç-Ž^Ò 3D¡1ñŒCR‡Ò¤WA‘góíd´÷üD‰xXåEˆ(‹5p­ô1V‡ê…F:Ûå=yúÒºjñ(þé\Ù7•Ì›çyÕ(À¸Hn@ŠeB£>üñ§ÑŽ1Ó‰4sA?éi 1FgÔ˜Ú¦¹ÔpO®xùC¡/pÔycŠ5¦YM™˜d¬Y£Ø\1«GÃRmµï‹ÌbÎC²b€öFaÿmÔÙ1¾½‰´ûËšJ TƒÞwÿ‡aôäx……àšgÉÂuáȼ;*ö~¢¥g+êIUŠÕ#¿õmuœ-s^<@\%B-!;÷’†þ½ýé}èQüâ›Á:¡;žY/”]„ù{ ÉÙ
+d>¦¢±jÞ¾\ʱú²tÖÙì·—µ² ×ís[]SÂå—Kð¢¸íMCbÊYÂ}N`š$@¾§0x½Á¸ØY}#d^Â`ö,© Æð1 ¬~âGíO®{¬N½9¢±
+ûK’ãöD²c1ü
+šBZ+Æ)HVBª|ż©;5<ŒaS±€™µ± æd!BN}~f|| a‰-‡k‡Î))%N°â…M:‘´Y&vÁÜ·sìñæÎa¡é®9Ö)ë"ÎF>Ò³p€<ëwˆà~ÑæÇSf¹EüðA,û‘Njº³)
+{˜§yå^¡n1¦]
+·t…ö’míþÑŽ#AŽÒãáiÅß4‘skï­ˆþåšb-û¾Šc_câj¯J²e÷Êî‚<W(²¢ËžÌ€"—õŒ“÷O2ØÚz;þ
+“Ôd<ž2¨GÎy…Uÿ‚‰À1<Àz)ªw4M™¤À§¥Ú„ b>+Ý]ð|Ø(N`ÉGÐÉf<€µøÁ=¬Ã¡ ¿jÏÄËÜXGªoaibµN.ueµóïB)mÔˆ…žùÀo#ËQƒ`ÙÙ}Ý”„rz1xoQb0œê^ü*»šwÞiÂm7¯õú¤WÇþ+Æ›­6Ì[š³$4Z{N‹ÜZfÈÄl¹°\~ö¶-xGaS
+¶Ùp*h3\«®€Ê-Ø®;RÓ%¢œêº CÚe»ýí_võJϯᇴ,¨=E)¨†ÅÆ£X möz!ýnùá3\ êTe%§ã>¡¹…„µw¼)Î{ÉN0_r¹LŠ÷j{«%æ …MÔrÍi‹©¿ ;_^¢­DìkUÇ?k Ȫ/ó?CÉ1ñ\J·ë6'd"+]Å–£h
+ž3š—ÑÈy¬·”nË)’½n×ÈC!dÃÎÿ­Uðëyzße>óÚBê}v©(B™ù,"b¥"\@|L1zkÙgBÁäÍ}VßF.ÝžTFÐœQжÒ"—µ´PöMã`Õ¥!|ò²R—Ôq>òã¢-‡I(¡0ÖE~³ÞE憞ãòYj>ˆ¡çw[fWúç%Yºû¹n·>ÐÒHÎt1×þP·_U¤>úo渨‰`blhÿ³Oš#uŠ¾„¾Å_¼Ígûk>›¹_eY,mëÂÏàXñj+ÜI‘†YÝܶ4!WV…à¯xŽ°goî!•O¿¢³šßPÈãI¨ÖÚ ¼ ¶È´¦ìæuhØÁòB#åEì©¡MSz‚ãð^ÕÂ(aG%a­Y
+ýÀÿÚ`IYçÊ5‡¦ÓTÃ'©¢þ¨Ë/þ ‹±5éµ·¬Ç¨=G{ýARRAgˤœ¼ÝAÞŒ’ŸrÓ<_{»Ÿ ¤šeLMù‰ ‚{ùL~¨þ
+ßÈ©¾ê$xÖô7øÈMŒ`¤—¦g2YºfVMî$õJŽÀ7ý¼Äž\
+”³Dˆ#:ÜWéâõÖiqçpãäpª]Ž<òÑ%O]#Ö&,.5´xzÕɪÍûϯäx#X
+ÿ< >ëU»>¹ ¯]ž(¥Ý^ƒAz‚‰ªò×÷Å´Úµ&(,cï‹÷2#ÐìKaNð¶Æ« X#º¶šDD èG ©A´ íÁ‡„úÁmÄà
+v+ÂüÈ%ýr‘rg¼¹òâ‘€7äEkõHyîI(v©É"q‘B˜EòˆŠzX6’w»f/nÆ–<³ ܦ ÍþÏ¥¸Æñ™VQZF¬B–ý\ÔŸˆQÍìq&ÙÞ2L²þÛUèËŒ>“ø‘Ð܆™‹.§:˜s0„ᯡb½^®b±
+¥sƒÀmËWöþF~·í †Ü'sŃÝ2UgN K¢ášuýRìàj°¹#$2ÎÐ?ÎÍ. âòqW$5ð_„ý!“tÞÑ7T5TäNþAä¼/6Ýìë<#½,Õ…™í}÷ƒû4ËÅ`þŽ›Il„¥5|~ š°‹-³àTµ)PÁ'ik€¨=?® ΋̔Mx2Ë™Y¨O_WKö.ÈÚ)ÝŸäFP‚`´‡~Êey.£«\ô”UÍGJ)WFäΊº®ÿFû/ßÎØÐí†éæ~…æËÒÓ•ÖgWso¹”­W²ì"†QÀmÑÿ†ç)tS±ÜoµÔ]f1Œ߈?ÛìqXýk~Y‹!ÁVyƒë›å€Gø
+Û
+æÞ7¶ôÕóñ/U”‰CÏtÀÕá âÁýcó{†¦PÈùl¯H¿a6-œ\綯¤HÁÓy?ÛüL@±}äÂ#褕r—hyýÁЌ˪¸ÔÄ(®ÞR%¡æwKH V¹z¹êì›âï;ù|/Tà‘Ò Cñÿ&ìœBú¦ƒió¬lk5ÈLšÈ¤A«ßNˆµè Gj‰sèG€p®Ÿq¢'RèRûÆo¼÷ŽgèÈëO4pçÿ á ·¸¿®ïFG£²À ?ñŒåNÚ&eÐøåi¥æÔ)úm}'VMÓà9îQ û覬ÈGȆèð®è¦B/âk°#AxÿØQÆ ÓéO{¶:(™SÝú®äHÑÅ„ón<ô=k[ë»÷ý]¿Ý»«ûó¢rW;¡<ýØ5'‘Ë-Š4Ùå’»´ªdiÅÛéÙ|å
+‰à÷~#)Ci`ؼ7´Xà O‰ÀfíÔ°¤î ’„œòBu‹ŠÂqõ*(øÓÁM]àÙQ5åH$Š«<¯]àÕQÜøÓ¶yß…¤É­¡îúÆ:
+;ƒÝÖ0›-Nò¾Ã÷+[,£:Mÿy4¤[,°ÒÂëù–& 7d[àë¯Ùˆ£K±Ü}c¼~tP¾Îðtþ:çhVƒ¨G&þÖ”o»{±Œµµ2ÇŠT,’0ǤùB²r¤9-@u¦ÏŸ›å§t }ãÝœ”D8³zôæÀÝ¢*ñÁ©;(‹ÕöâŒí³ÙœVZ£íNu«•þŽžÚJôê õÞ!7F;X™«¿ÊýMS±†™‰-9¡×•bpMÜä›g—¸átÕêe!õQ¨3gÑÓ}×PIo¼3àdÆÁ‘á›æïµ·-å`YÑ×]ˉïƒÓ÷°z¶—÷ˆ£Îãvyóð¶ïSe{]96òeÀÕB^&µRìx1—ÜȶRL‡ÉÆFœ®=lÑÑzÍ ¯gÁFéŒï!ØY¿S6<ÙôAaÈè‡%wÝÐÏå»Ú †aè<àÅ"¨åÚÂçGÅ?Ç\g¿RÛ“,¡î‚€%a˜ ðš¿Ô”MÍœŽ}|”áËל)ÙGÜøÆÔ¼ì®×UË•£'qd‡bÄmÛÙÒ7º¹î±òŒØ2éw5/!K¯©MBÄÄý[ƒ… Ø
+uæ‰ :ï`Î+fg ¬òL ‚çc¦U¾3A¾V½eZÂ(QB;ÝÇüÞå)l—ÇÅ„a?y¸ù¬: <>æºAÌìc<ØmˆÆð¹îÍ×K¡1${û8Ž‡ÅE½æ‰ñSKý´¦Û5ÞKƒÎŠZ?[/ï«ð¨´ÓJŽU¹iĹŒzCšðÎ^±DuŽºg Ÿ-†^ñ0]¿à¬Q¾ÅT05UIO>pJÉõÚËAmëH}¤+ø“]müϼìs/~ \©¶Ôä%ÞËê{¶õeð¢a®Ô–ÈqÚØû-™¦Z—†±Ú¬xÒùS1sѲb˜
+NðA B Ž×~ã«T†×_i°¯L£9ÆiqK<WLa­1Ž?Ù@0?_,À¼øP¸ÀàÓ¦–jýù·÷ k*'·3©Ø‚µkFú$‰¾!DeFœ¿ÑŒí„Òâ'=ý„É3 ¶¼j½(¾¤uJ[T%/­Ó¥pþ]“­Ù˜Ï˜Lžj¥N 3<ÜÇÙë»dúÌ-~8µ|¿Õ¤x.¶‘òMD}.K{cgOš6c ¡¹²`Éð" iÐ1Pƒ–ÁfÄšÐzÑ £‹«Ÿd5&*[ \!ÑÿØ@„wà%t±î=Á£ðÚò-sõpPk4°À' °zB3—‘‘”ܳLþ‚2Â…—g_\“â¬íò*ŽåÖZLUl“ÿáæRÇœ=Q-³cÔˆˆR-6a{„ÿÛÞ°âž–íçC¼€§}»ì©¯ðª¤µº`&ÓSR÷RoƼ·võy‰MÌÇG~ä‹$ä>„)œê…·õqéþ¥Ò¯›-¢uüÅ·Éz*]Ù ú‘ïwL×èé#H'cÕÅÜ@ðZ¤ä¯‡‘àÕ›Y™4%ÆTõf´ýæNÚ‚eT­Ê|F%"xÌ{ÉâQ4¿!°¤ŽG¦ÌY+
+–~’SnÂõeëÀbždâ&Gk·ÅýfiÅM1ÁÅ~BŒ^B®ßj,͉>߈8í\0c?äØäqXÿñ–”=Ì»ôèA9i{Óäªè´'¿¥ 8ÒÜ«‡ü¸nPNo¹ö}õiüÐ$›‡÷íí /ÍCÚÝÛUÖÏ493ØçIÆŽ(4ŽŒf™Þî˚ƴãE%¯%Ú;îf”2=ÔæÁsà&þôúÎC‹ú™rŽØZ¦,À'¿®Û²¾ü·@lg…új
+ܙөpn„¯«¸÷¶¨­ÆfߘÉ5Šë2>DÕú’Ü*"Š7£4ˆ‰œàgIR_›ÄÝÓܪ©ùK/™*’…Oj£÷1Ð[K<yDÙõý4šr*KÚ]ß-­6Òã-â?¹À—/s ~ŽC@Ýž@<¼P¢"øÕk]‚y¯½tJõFéÉ_&Qµamˆ
+žèœ< L!11 ÙªùþÅ^ t†åä½#„“àu†%ÐÕTnÌ(ßø¯Ñqö›Gó9×û¥5ÊÊ­z–5–j™¯èjª­Ù)ˆÕS±ÝÐÌp SñöÑ°÷ú¢zƒã_|•ÆbÓ|ß¾<‹±P^xO€‚t<V~ÈBÐ.Ó9XKg&C´žƒë!»giõ]›Ò:NH¤¢phêà:§&kôî"N©QÚv×.*ϵà·~{¤¨”rÕð„E{õÝ=“‰k¡óŽh%-E~a@cV-3XŽòšDºu ×ïÏ¡²Øòº"(Ð÷ê]ÿ@¡n}&n¼®”¬„Šÿîq©Ùª’ E-Û8jn„BëpU¹ëžl€ÚM$QÖlÖA¹Å§–åRBcgEࡹŸ~ÒAŠ}ª**²‘šS AY7²owd?, á·qÐòåù]ð0P<ç‡ÔäÌksÊ
+†ïà ïJI5H¥D„&ƒÍ¼ãû¦®³s¿ÿL/DÖ€m¹A¡ ÔSGÁšg8åŽõ&dNÍ‚÷Qb¤¥¤ ÚkWÙ%žõlÎʯΠÄ
+ÃNûø7fŸÃÎO±mEqÎ"9ìhÄFÂ}Á÷ŠÚ6¤œ—‘ Í”VqÛåFÅ@™$ÑèÖ5OÖá×e¬(¸·ÛÜ]ŸéîSy¥RªÐf4’pþ<›íò‰Ô"ðnZšQ±òKOè®â…nN“Ôëy~®åcX–ºhãTº‚G­­:UêÐ/ü™ì“ÙKŠ¹ #Ä]»›€ó—!•
+“è1-jÝ[³ÚUË©s6‹³cƃ•&앯¶¸Ü=ú±UÈãy+¦™ömÂÎ$¤67èéžzið¬xÄ(‡s¢+F°lSâšze’ÔXÕ•û¦¡€áhÈŽÿõÕdÊ$J€ˆî!/OúÇä8f
+ÇÁ7KÂÙÙ‘‘b)ûwÝ+£xaï4ìE±lÀLŒÓI5ð­¸arÍ5êOÕÒªÁ"@ïïVLÒŸ]ñJ‡ë"ÛBÎ@Šþ –[ºÆˆvºw¯ék‹{ÍPšÎ:=ëǯ2ÜAtgVè«åìOëÐÕꚇ‰òÉîB]Rƒî£É@>>·» ‡M)P–Ê¢Ú@
+í!ó_„õ@kp¾÷ÚtQ/cØôê0ªck¯2šdØ\¥'É‹M°÷7ö¢Ò Dìÿ-(þ&€8ÄÀøŽ4oáüË?€2ìª!ËK"2ïê®ÀZaîþÈ|øÒòrq
+0
+WÆÝHØÖÍ(f^yšÉçmßYB aI%÷Ø—é_¥ê ’V|÷ˆNúd¹º_]†ÝO@¤ù3lj7ðu©@>Ó_,$¹;?Ã4—Üô4ž/œU!½Ñ²Á,3ºBž¼0m \×s0þÖ¤r§Â6 QÈ\ÇÔ߀ќw-Ãøs"Fã*ù¹EÐÛ+Ë–];²«€¯POºw5@çŒñýó̹Âý_)rZ®ª¬K¯¾ÚJS_gp¹tÖ0ôÌï‡
+èpõä‘’-½
+‚ ‡Ÿ˜žNìgö½MÞB;ÑVӲǞíT5¥ylkx›ìBÌ ôEô]>3/¦kïg‡˜E³Û_i  Ç'įÃÏÌ?ZÒ3wqn¤[_ÂŒý9tž\RÖœ¶^SEî^Ê+_<p vgÿnâ ¯í¼þ´&šÎ‰Ý¿g“²¬¤|§KÎi*'ëØ ögÂ3¦H›gÕK"•…u!ŽµîŸ‡É÷"ŸºZ\IQ,0gJd yh[ñÈTŒPÊH$d¸&qw‡äf‰ÛÏU̧|+¾ÓeýLü2÷¿9ß@üØ•þÅâ6·xòܱˆ8×›$ÓQì]»×ÄžÍeÔ{’³–¿`fåÜlŶŸÏY„¼b©§oo0Ù×oyq-FÓ›Õ¬]3{™ÕÞà$íšî·¤›¤ m¦ûÀ›õ…ÒjLaŒŒ÷?ÝôàŠ<–ßL§{ª6\¾šæ©B-ò^à“c‡$t‡Kž$A/È„ç¤8 Ì©Ù5|ÆtÌ/…¼Bzï1
+Šk"ã‡3„+øÖ“gþ›®Ú|È,|xwFí–¾ð &Ì/¶ž[mFÚ·vvúðØ™¾]$cþDþ«ð 'J9}DŒÕÅî6’iÓ
+䘟ޕr—3A.×®h V
+ÐJÔìtc
+Çõ'+:«ñôî]Ù']?_âàÕi7jHtyýCcIªg$•J¶vòʬƾt}ª‰I¢Ùö>þËö§À®æíy#YŠ__ê&²†à‰‹™iˆ&f>SHPr“Û·/Ÿz=ÈØ©UšyÆ)¢-ˆÇC<@Ñ&ƒo<9^<–餀t˜ÕÛU᪯C·¢ÚA¸¼ZÞ,dgïr¢Ü)¯&)£æV¡,6ÌÇæ·½«¼º$5NfÑb®JªÛ¤ Þ„K„¶ìò)Éìøo8ÞøêRèõë¾-'P Èrm"ÅêñØ÷Ì;{L–jžvò/“ùÊU& Mܱ2ûrÚ5m«¸÷Ô<ÀÅ’=W<|ZÚL„-„÷UÛ­#n´¹ññÝÇfp
+¶Îm(èSdžòž¹öf¤“_è`¤°'ºƒ™Ê·T-WÎSó©«&+”epÔpìÖ9ì4pUºZ&&t~‘ý–•ØroUE†ºƒ-è7ûª3Í»i_Å&‡›Ê˜ïÔ„h¶r[Na#Ú2³å´¥Ü£TåSüº8 ¥ly*/ ™×¼µéý-0Ê~ß%ïûîñ­þ±öi`¹ ,´®>svQ¦”íBZ…Ž}»‰†xT»8 _ᯠV¼ öÑ éPŠh÷JNä°/Q}~ŠQY
+ÑHk=lNÉYqð)ƒ2}Ì8SOçò†a¶!š^4Ìt­¸ŸÖ/ZÏxq¹ ¹¢²¸¬o}UŒK@-b‡0à9j
+擽ö¯&ô5ÿ?’â⚘ފ3¦Ñ‘{Ö½jÔý57Šuè‡WC.òëØYQsý‹SS`ø/²ÛPAèö›…6þEÜvGf@Áß^ɸýÉ<Eøªp¬Š¢Õعðj|tÄ_‰O,îÑ £™ÌŽ|áG°Æ#Õ×'7¨æ ÉA’–Ï5²Ü~Ó`{=\Ž†J¤¶tz¨Ã2U¹ú6•|µ¾FØCÙ [_çr*yžî3qÔRºUEØçwñ)ò.§áeõùR›#‹¸ªÃÍìçòÇÜåR8ÿ¬dý£RêÅPÿtsUÙ·<“N £¬!Ëàuú¤'íŽðÏq¡}l=åù‰VãÕ¿ƒ9 ¸¡W¼rQ13È5Ð5wÜÒöœ÷sð÷Z*
+ìÂ6†£\÷8œ–%b2Z>;£ø›ðûÁŽŸK8\ÿÒzŒñ_?Ì_kãdžx¾ÏÿubíÖ´Mé燒'j‰…Øa5r²”«y‰0p}.aÀÇDc¦„ïÞÃéœs
+4 É” Pˆ:7ÇÿÞ› WXãnq;p›hx¿Ž£kÉÚÎå hbNÉ%(©ð[@‹úY›[Iô»¼Æ“½bü=”Ò++š–OíY®=âÏ€PT9ÜÙºDjJ›ø_ºh†˜^<Øär2Àêõ¨X©‡ÐönÀ‘:ôÇ hRi±¦Ç0A Má4s#9N=¯äšYÌÃXMwËX¤ LßÕgL¹P° Ð]y£ÏNÍYÕ@§æψHû*kŒ¨_[x/òÈ,.;ûÆmF–—®: µÞXƒ’6}¯¥B(¶ÖˆÔsþœÑ¾9¢¯cûRÒbû™¢i*IƒSæ
+¼½ØßÊàǤEÖÜ^$ÊVðâå’NØa]¥(G.ÌϾ¼
+Þ˜òªE¡OŸ‹œ:cþšËßU»¾† 29ýÍxiI^ u¾úˆôê!¾f ´êïÎù˜
+ç—•#¦‰BP”Ö#¨ÕVâ£Û&ÅRšgEñ¥N¹m¬3‡5…v¼b ­º!c‹=g¯K¹/%QЂ€ó†Ú ß±w/#{Qê´åÈ~lÐÂFÇ(¿q
+
+퀜î*‹Í çLæˆA~þ-ÈÄe‡víod¢Ú몴P¸ ÕC>¤/«1Ì5 p—ì¹P¼y>?²Ý[ψÍ>ÉJQo7¢ j`ãx`óæ öö¸7.~ô‡œ‡‡Éd:˜õ¤¶ÓL¿ØiÞçF0.è)yÒ8÷Ù ”÷^Ìó·'—u"pþ[ضˆ6Ùáªx$VþøTs£Ð¦•¶Ÿ­Í –®ÌE{Ñýâ6‡Õmµ­úߤ„§"ïÅÈtÇ¥Ã/A ÝX‚Ô1i<Zâ>)¢W|ׯ Ö¿dyJçi}0T ÃQìN¼ ܳQ·cÔ·¯QkãÒ‹ðz„íÃV“KóöüÁÄ-ÒQ±þ“»øX>2$óFçj ¦ ÑzªJA´ÿŠ£A‰œáÏ!F (ÞbÚ ž*P‚üF%üÀ$eE7j_ÉÄÞ…²}ƒÙ®^4_x•D…q¢Ûš\(ÿ0ÊqZób áW'Ä
+‹øÌNӛРwWÃaŸa‹ßšŒI·ig>0\xE5€ûÖò"ÚÍO+ª݂硳¨¼ø ˜¦jÈ”mËJvËö=EÊÆõwæ1y¤sY†dF“¯†Êê$¨iÍoP(î:©Þ#=W,)Ë…µƒÚÀp¶°’rb;FË}¾ÀPšn\eº.!dXÕ>äL[J¼·µLär<ÈþB>ðxpDö¬˜{fïbÀg
+™4vk)*oB+áDþí˜ØÅÛì,ÏŸˆ¤ðµnJ2icZoáù×¹2´)øκ•SÁ…7w~ßк9øM-/ñ4fq… Méö9ÚÅ’d} ÎyÆ€—ë‰ég×6¹:ɦöTÉ_Nb6h>×ô0v,Èú¢Á>d®g¸8(Ð8.¿ÐÙóY|×W¶Èdø€]á„a™d“þÜÃoM«zûÚwÇ+!¢ 
+ ù¸ÚÕamÖõ2$Èk.iB
+ GÏü²€D»Oñµ a!GBDGP˜é‹Š
+wíÙ ®ÛÔ¯uµmõ|Š]þô/ãØå‚ÞìH
+a¿‡ýÞ"Øp¾Ü”Vöðwí!/ú…ÙSyt,,ƒŒqªL´" Ü7üŒÒ†óÄèGàÇý3ëmÙ\©êÅ=îpùhù³}.€FvÙ¹ÜF©F˜Æ7¯NÛ4øæD4*%¸R8±["`/¨O:íoOÃÁÌ•t¢Yäøeâ3\GLOòx¡é#fê߀WÁÄòÝý*aÀüÔ-î4sGñZMœa¿;±p+séùp¹`èUnH€v"ƒo«-Ìn„Éã¼ù
+}^b‡ ‘+Ôâÿ¢\RP
+endstream
+endobj
+643 0 obj
+<<
+/Type /FontDescriptor
+/FontName /BRJOQA+LMRoman10-Bold
+/Flags 4
+/FontBBox [-486 -295 1607 1133]
+/Ascent 686
+/CapHeight 686
+/Descent -194
+/ItalicAngle 0
+/StemV 114
+/XHeight 444
+/CharSet (/A/C/D/E/G/I/L/M/N/O/P/R/S/T/V/a/asterisk/b/backslash/c/colon/comma/d/e/f/ff/fi/five/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/q/question/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/zero)
+/FontFile 642 0 R
+>>
+endobj
+644 0 obj
+<<
+/Length1 2388
+/Length2 26799
+/Length3 0
+/Length 28218
+/Filter /FlateDecode
+>>
+stream
+xÚ´ºePœ]Ö5Lpw×ÆÝÝ]ƒ»{ãî®!8Á]ƒ»·àîNà.Áõ#÷<3ÉL½¿¢ YûlY{}ÎÕUÝäÄŠ*ô¦öÆ@ {;zf&€¬œ²½­‘3 ½ˆ½)€…‰‰ –œ\Ô häbio'fääpºX
+@RYAMQ…šá=±Š«ƒƒ½ÓÿqUQU“¤ˆ Ë«Š€êt
+”û?ßwì›9ÐÀ
+hÊÄ/§Oµãa‹åþ$
+6dPØËJñèù%Úi’°y]oI¬œ¼6UÚ6ò“óÃCÍQgP Ê[
+(ë$¡>”ÉùªUÌ6“Ñ×JP=ånïzˆf™xC¹J&Ñ-k]˃p/œcnBw²AõXBÆíÀ[šêøàòö€þ%Êè»ð2ͬá×Ϙ£2=]ÈZ¿HãH‰–+/Rú|/š}:'ð)Äüª0L{zJÏ¿á`TÖ)’i@ÉMl&©æ,/µkºúó>®6~ÖΑµ–笂åŒÝÏáësGGÐyÒjí€ðÏmFA)„ñ(¬¸/k̯ÔëÖ¢àª/mR‰;à=7ª¾éΠx‚\¼’]’£o >T'Pø\|2rå½Þ®à“²µÚÿ›ýŠ7®.®e%eƒaó0/¦hV\åMÒs²-ÕÅN=¬OO8LGö|#ûÉ1êÔÈ´2€}œ0!Òb”c´‹m}Ø}ŽZõ œü$–õ ½uàa¡Q>¤ûˆûœÇŒp§™Þ>Z9KlHí›ÈúN¥94Y‰=$•ïvh¼ÿç‹øÔd²7í ‘ôX^.¿ôŸ•‚c^È_’<&õøX6`÷ÃÌ…M}>?!œÎ•ØÕ˜ ¨ÀµäbrßlÑ@™Û I¼e+Ý4<‰ÂUs⻧üPÁ?þZ>>ô…” ìß]´7Pí¬ª%íç6ã…'OdWàžÏßâöŸÙAÐ7RѢɿ>-Ik/±§fê>Ž2G_ÏO ‹ãŠI…̧qé3ÅL&¿纃ö¾úÜ~ÄgaVyýÝÛmö*9&|¨:'ˆt =”g†l‚È,Ëv£|á«õÊÏzŒõRBqú•YHûÀ# M:Y Z² ´èW}bd˜y'Æ7£AË~¸YêæÍ':n§¯Üù¨¹ö—…·CÖŽÛ¤Á{ÓÉ‚t?“†“ÄSYËèe‹ ui5?ÊN|Y]€¢úÌ>OÀ((÷ƒq‘ã´Q|—z%;ÁK^Á½†+&ÿ%'*¥ñë'¬„D?´/(¸j˜#Xjæ0뼓À‡Â{ž™ò­®êÜñ,täü^ÒLE&%Õb.vÍVÎP}²SׇxwlnçjW¾Ví2+@݃}rjT¯7Qrƒ¡$j*®šzË?殯ŸåÎâ#všý~ýµè¿‚5ÃuB!'[ŽR›~3 ç`A.ÖvåÏ_mUlàÕB…ßBk%pÚ’ä‘gÒa-z¾KÑÀ¿-ñt÷ÙóCø7^ûÑÿxh´áÀzýºÿ¡Œ˜f'(xVÅßk
+‰Ð¸¯,’‘j@zœ;ª=¥¶T{+4Ð| ×É(iwZF
+Uu!iëц÷)¯ž–Þ£*´Ú#§ï£EÀ yh´?NÀà4„šÌ˜TÅ!¥™‚í“Ý[h4¬…¡8pªËõ%r“ô‘cÚ´©“üá¥Àlüû„¶»ü6U™†eÓ)Óó#2)ìÂð ÞÍ®¾æ/ª/N© €øxF(PgåvŸdÔÉQìzn™»37n}óÞÉ ÇNÈô½>Ô{+i;w,ø¸1 >ÒIòÌ[‹–›áØuæäæûñ7„Xš‚s%Ì©É\ù)enY.›õ_Ó~$Ö£?´>:aU8,-O‘‹Šß†!ž²q§«¡µxrýÚD­–³è˜ EÆXæ;ï'™T?-ú…îÍe«Ðyf[?³î9ÎÚ Ö¯V-Ô¢2s¢jè–‡yælæFêÖs¿ú+»×`‡Àc¸ý6•éñvMUAÙ~Á - Ib™Í|ƒ¢ï¡ú•Q" WéJœâ»mM³Œ¡ÚWª|;Ñ,Êÿ°ªòIÅþ‰«7ìÁH´5‚s,RÀ€þ}ÜÇL$uÚ¢ Òʼn£7uåíÉ‘ìTå Qnõ¯¢ù?hÂø¬ÚQÁ€’¤[{ìU)kšE¾°YŽ›±Çw¡¢ïžã£ØÈ5xè3º£XLzN"¯Ñ—\u&~N/tØ ) !FëÇéÙÁÀœ¦k@î
+¯)ˆ¹p ‚×Ô€M6 .ËñÙMpUV±±RË8G„¸Ä/¤¡Œ×! w:^G'›APûàî©P¿ÞÙ™- Q6«p‰SN<–ËVª}Q÷1
+©¶R^@ýðà´‡¡lˆgè°óúùeŽü”Ã×]:9˜ÉÁ—în+ ð·NÃèëåq†
+¯.¾
+N"w3,uà^¤÷äv
+Æ‚Êö)Ïé`ñbúDèMÝ:øzï„å[©.Ï\É1™¶®“@Ç ëdð¾ZDóó0+Ýž)÷_b2C @¥
+s N>?¡¢ŽBáíQã@‹» 3·<O+JoˆíöJ5>˜$ÁKS£\-×ð4ÙhÇ:\œj.ä#u_ô\!BØ{†‰ƒE«ã2\ÔÝvu‡T?Š¡ùðLÄB©8WœæaŽê…Z3g—mØí 3e aP`:;T»§}ïΗfY Y }7Q‘ön„ݹj˜3‰Ï°ì«q¢‹Ìîül gjØÞ'ß_ú(Å!šq¯\ÕÎcŽN¦:Òtë&Ñá9kV©²ˆ‰’(ƒ®"Efì™þôÚ,€õ
+ƒSè5¥ÏI{ÌÛúã}ªÂøøak­Uð•À¤¦r£äÂË«`½ y­ˆÎGþ.o[<9YçUBQׯ™ý§ÁJœ g† ƒ…"F¶ ôvüWKLÀpOì…
+…z!!Á TIl z•c±æoy½ˆ¼dÞ‡ A9¦«±*‚«ZØmšÞ?`ó,jøPhx&õ‡Q-hÜ_êo*¢yD²Ò{}5¡F{°rŸ
+ávR½@4·O
+ŽžLÊ̦Hý!µ½r~½í‰H
+»~%[:¹¯ý*R…`Ñ^…Q¥µ'"v/è%4åì˜ú“µm³ÜùÔàÕK"ý·Ùøª²]ažÀöy¾ÑÃÈŽ)]¨‚döy&Ø}6¨¥I0ôaçÔ˽À:¤®±$¦ÔBOÁãC•Dûm‘¤Žp¼.›E‚ Bœ‹EXéÚLî ¹yP»YG\Ð7½Ì¹¡ñ~/¸vˆÔúr0 U¢¼ÓÇ’|®¾»úÛj´"BÐÃ
+¢k-ñòâ$_T§AµR‚9=
+×iúÉ#…Áì}‹%PD:Áä´¿y`­_³Nt‡¥ç{xéÍÜßLH"ú§Ñ!èöò‡‚’_;Ô¾9Øîõ¯OàĬyé‚ÉÓÌ­‹}Š;ƒðÅ…F•@rŠI¹f-‰Í]íéÕå¨.\‰fÓ+®uÝ|¤£žüQHGÏ­¹°¡÷¶QßßuÿÂŒr!Øç8\¡_fú+ö:›£í|k_ â
+Çî }?õ¬¢‡05éj}>±Û)3µ»Q™Zàd`*8¾Ù^¾!Avéa®âG÷Ž˜,²;?e;ÓX±É¹dÖÂG‹¾ÜA)ÖÐø$}P‘“=Úc/ÓýQ]@¯eRyY8[Àôi· «‚{æÃlf·Ñ ÛÃÌ,tþ¬¦ñ“J@ó]Ö^²ôHö€vÿŽúÖIK3ĺq·BÆ  pãhœWY¥ô¯î36l§Ü¸JÚÃÌ-êQJ •Q‚ºÁ®¬¼`ô6D v¨ä’õÍÅfwVŸ_ÙbJ-78lPÄô ,"åäX®îºAÑ'VØ$¾.{š\û{q@%g/Â6~·6ÐÒ­Ü»<­®»ªi˜©¼§9ç@™ÎRØGÿpö)Ì$ÚGŠ?•Wºæcâxü÷aE n=Ž¬Ì’¯.N˜ÔzxwgéD·ŸiÝœbªÃxçÛ‡\úø¸Ûœ Q¶Õ-Œ=W¸òƒáò4N
+²ñÕ¬+ÝØrjáäÃÂ6.0K:[Š°@þ{Pþ†æëPõÉ—®@uæ„/.?투ïžæ Æ“ö¹
+oŽ´ï¿¿:¦Ðãçf ¯°ÚéÜXe£ˆÈâdÐÍîn^[oÝL
+‚Ëœ]‡ó1-ÀÐS²T.”­¡“Û ‘_ùsú¹då5_Ç´G$(ñ+‹f3ßVó£PI£œƒú¾ÜÓò3é ³xòmD×`)^o4¥¹Mm‹-jy”–zU_¨ÄÉkzG&U@Í¢ýÌ9¬‚HEï!1– á,’¦5
+ÃhŠnº8M$ÒnÇ@h0Sr!$6!KUo8Χ¢Ì¬ˆ~Ö-‰
+lœC†¬ey¢$ ÛÕÓº¬˜´É÷4€1½ ‰¡Jm]­VÐlÚL²ÓùÈ-ôs'çÚ€
+Öÿ¦åöäƒ/RÉÏ‚-èa« YÑ5ê6åèÒ³v~Ôˆn‚UÔDoBuP6lט/f¨çU5Ú´w’󖱜þ¸¦*N»“¦)«ÞÒ×?(%Vš¬Ì@½ä >bs&ªµõ6󻇣ã¿a…+ûˆIîYÉBÁŒÝAÛXã^Œ¡ájósôðæ&íU_ǦO4>Rß ì÷4͘?;2
+ÏR?,{¡”°äæ»Ü§é‡·/>ôSøèˆnOc6V ¦[Z¯Ì©‰ßFëÅX/*Ho¢bî¡k´ôM0ÄÆ ðªO­àC [bE‚» ×9©a"1å¬?ñtaxWmûÁ¹“í?ž{4Æz»À}"-ZÙ·nü“N4ÛþåÆGééá@ÖRmìûã‰Âé$L¦s’'vzÈX3âc‘û¯ƒK¹f–qVtv?ÖÝOmVÒy¹´X[»ùÄOh2»\(:í£rH0…kdsD?ÐKg•TjüªôM<Ô­¤T~(bÕ•èhŒÓ*ü¤ÙÌúõËé ™ùy2oÈV]¦øM¢T«Wfƒ>Kû˜=8!²VMV’¢@ ­±ùã*…ö q÷¢¡3^xö¥Â%²£8®ôù4‰»ê#Þw Äö ØæböÚ’0CömFòe1×Á“—Ú ¾;ŠiÖNïøðÿ¶óoÏCFÕ‡3ÖoŸ ]¦ÃÓÒóåh>è! 7bYU \áƒ3p~ÇÇ·)¾ìLƒ_"¯+ $|‹ »½¹Õq-ÉîÕëW]8yN«ig*^c·ŒÔï$Öy3
+uk!íF‰×Áìe…F̽½?WùãU9x@ºê®êÞ†²,˹ѵi_m!ÔªÑ>úþh˨Nt—ð¾î é"”¹OÀ¹­iüEŒ.§ýÜ4m œO½†ù«TŒ7¸ñHÏ
+Å<R\±ÎÉïsPq‘i’{;8^,ï-»ÙŠøÅ
+½.Kmäui¦ñ·E–* žÚ‹ÚÛ^y?:¾É°B¬WûLý¨ZéC’Ð Ó‰œ¬NåDŸjéâHCÖ0÷_\ž³Èßwaó€žÏ:Ú9c( ¦í–Í ²”æÅß½é…zÐ2*åÂ{3Ï2¬)9ÄØÈ»o2ÏÏ굑”¼ÛØׂX™Ãhr¬!ŠëÒ¾“¶xLÍÈ€=Þ>§§5m8Bubbô!}Þß‘ BnîÓ©ñìç:S_<='ßäÉ›zl”) —­A®ÂÊ1‘äbdåðØ[|*œN?ä7¿¡ph”´Ñ˜_ÕsÔÆH³ÚQÅ?)MþÂäWjÝc<jÏsi‹¥!éê‰÷ßB©³8=Pž/ßÐÒ¡Àüš³Ø(Ã%‰„Çk䉂˜(V‹6[àhË84r±òdRò=iK —ðChú¥"Òa©"Ûœv3© ”QÄ¡º™˜Åƨ‹s†,æÃJ7ÔK¥ÕŽB'
+wá/VŠ4GDŠÞxh–'Á¸`±êŽÞ'†Éh/(£\ž“úþ8^êŠ_Œük ‘Ú½!5‡ ÔÐß^Ý©)…{ÖY?Q|)­|¶ýæÂ`Äg®…È-‹CÆPTŠ×¢9”…º]ð²£¥Ø2‚lŸ‘Ì
+þÜdEG@Õï뀣ùœ0ö=AŒmº^½Cýôæñƒ… õ¸¦ )DPTI·¾3ù”³ô°ʃAÄú›–@ºMÝ-ˆŸÎÜ‹.<ºÓ­ÐGÜ"°Œ‘¬É؈ú[ׇ©ÉÂg¹³‘Lt
+o/1 ~¨mÿÝ’§ÆÇ…öÈÓÉZz†¿QAÏÛHãI§ŒòD ¯X˜Dô÷>î)I™\ì5!ÈO¤2˜ m±À‰úÇŒ\Ò}v%a&“š õLpn’t2 ¹Úögõò.nöÔ>LOƒsò±q
+»’è¿æǃÖÂå%°ô¯‰ûÞ]U·Ý7©jÒDÁˆ>ß·åJENÛÄs½R¾ˆ½ÈÝ´yèÊÎIªÉŒ¿´noßé2Ã_€vå/Ó—Põ‘µH¸1°WMQžóóåL
+ÅZ–êç·ê Ä==(l<,8-œ—ÿB|1±ÈîšL]Mʤ´m1?‚#_õàgëš¾Ðd2gç†ðÍK‹¹ijÅG8¬ãý=·þÃjµòŽ²ÏžLHÆœN1:˜G>Ç®¡§µó:Q¯aBBpëƒQõ°Œ Ùqn9ªx­[ðE\¬ådÚ®†îCóÜ´Ý– 1̨a‘„ç…)[ÆìÔ÷βˆ0ör_&Ô™ö¬‡8É»¶¥D, ؾU¾¸ëœaÖÂù×PãY´õÿ óÒÆÔG†Ì„ƒm·Ö¥¡…>¸©’%sVζŸpER2ô,ùaE`ùi@õJpŠ[‡Ð
+×&½çP¦;×ã3
+¤â¥ •õ:¤™K褶ˆÓ¤Šð«kwö~þÛ´*ê|§Oh2-)j!t¸+â=ˆq»½ÄŠòˆJÙ°f¹ óÒîÆ8„72ìáåÒü˜Îµ_]csó|õCê ž…g­ÔÝ‘üÜã A y^5‚5®úh¥#Ð 9ŠŽúŽ¼mçG$߸Nñç@yó¶i#°vô4/ƒx´CµHUô!ÖiWŽÆe½½8­/otÔDÒÈÜ,F?ºâ]óFƒ:muxÄfú²Óƒ|÷O;aéi´—7¢ªxî ˜×V=¬)BS˜ò²du#·PZଠj»Y©Á¦3?ƒø6TféÏ8-±hèäÂþAm²V#Oø#ÓÕÍàBÎX?"œ¬Ÿ4´ñZ«¤ÕgØÁ½vÞb‘>òjCä5\(Ÿ„…¯àÈÑÏrmäxw–fÞ/ý×ç/Mkƒ„ŸÙOÒ&™*XLºö#>òcC}7ÏUIÓÞvI‹[/à~ºäγRc£ƒï‰ç‚„6Ÿ¬z°p¼É÷)ÕLJ==ôq°Â8J¸yô
+þN
+š,ƧˆIŠ,Ó¤§ˆ¬lDÑvô¡ÄÖmŸáSfÚ.À^_uãÙäZ–ìÎTØëyLö.3ÃÙ…û ¿~~~!¤
+~#ØálÏàˆ^à·¯…– DD¬‘–xÆA0"C_L(…É›P™ðyÏœ.¼IÉE˼ý”¶v&—ÍlœÒx¯J¹Ù ’::ä(æ¨ýâuQ8‰©‡'+æÙ'à ˜{=×~¡KP‹f[GÔ5)?ÝTBØ]•VX]ViæÒNn×U+ψˆEºššbÂÂL÷”Öú„ÃÀ8âÒr¹”¡Ÿâ÷Æãâ…É–Q¨C8ŽŒ`L‘”H2DŸ¼”ÊAž¨0ø;Áþœ‰/÷þpèHÍ>³§žGÍèA4šA6uêI_éÅ1¿Éº­×V&rdR2®^=@kÖA ’üÄ\‹E_J{–Céôe÷z†Ü¼f€aQ­¿ã¤­©÷iO<éÃ]$NZú¬øPÜr¾KCŒŸµºÃX…Ô¢¯V
+b„+/MºjñIUn©—ˆ®{q'Ú$;VýÔN#èÖ\Ã}mU«‹ã¤v¶ _d`ÉúÚ“óñµ0³¬K©ø(²Ú:"üÖ§*]¯†¦õ$wCdËaÊLVIy¨'®•uEB霩|F*QÔE@¯2á3.Â.JìŒÃ사 Ù^{ebg¿WÕ¹KDˆZ^q"½ .¶Rìæ~mv]ázÆ(·š¼·Ñðoä»ûÆí#õýŒ/ëÄøö~ßé'¾6†žin:D+¨Z\·%KƒA3åœ ðt~T'
+›ZªZV>ž¡ÌÙí\LžVÕÁB\ø™›L°éÍ­ÇÙc5/0·ïû˜2t÷ع›Af_¿Ág€V™RÚ{áÛú?á5òŸiëbCûÓñRuVkÖŸšƒ3ìjoW\|KÞ“Ûlc‹{ýTĬ}qï÷v¾x¥3Ÿãª$SÉñ-§2¯<N÷'ð]ªæëñ0Uñµ.ý·úÍ)kTÊN˜™Œy~†;‹w»3üq“DYs»bfŒU[S7 ¡4„ø$r>Š;duØŒæèŽ8‰Ë¢Wª5]yµ*Ù2¯AbF]œ¯7ž?¦>Þ’¤[ú%žÈ†KéÒg3Š0ýÎ{a—xT—¶¿Kì¥h ¢ ÐâsˆhLßH×륨ª:¿ÞxÙ7)—:±úÔŸC$ÏwhÌpp×.1‚—Óšž0ùD!oÂ…ï Úíä»W=P(är w“-kÚÛ|ˆv!Ò„†‹›NðÀç^ÝK³ÚúT·,u“~ÿ®²¶UÖ1=!éj·ÓOO‘Ô¢óŒZq…7ÕûA=]#sfR^“åÀðó‚ÕƒGŒ”86¹Ú2®Ÿ½n:ÄSf€€øùãÒ‘¸`É%kÓ¯©ýœ-ô’Ža~!¤;¢E¥/+˜«ñ-RºRæ¦r,SËl&C3÷5Œá ÔÄtš
+-¸Ê+µr8ƒÃ©Ý—d²Öú"\ÉÎ…a;ÅÕ.±e¾ÖTÚ²5náûô[‹óîHð›ß‰9ÚÑ|O Rx0ߊَ ê
+öSë9•NÏná+&îž%aHÌ&Þa$ lú&PÅúm×äg²‘Š×§!—­ ÏS—õp,ÿFòºuhGÞ/<:Žg¥²ôY:i?ê•n·FÐl^o}3_êîºÏóv9}Ïq†ã’ŠL­Ñ8.jÞ†·Íâ¡Ð×
+”g/ë¡é1b•än&þîºñ¹&ìßäÎ5IÀ½Öí&×ÓÖ//êg‚(Ù|²i‘íí‹W] -"Ì*Ó[ƒÃÝá¦gp¤¹AèÓ.Š_IŽn2´«œsåQÇœ;èÈ!Å,Ø°¶AçÈšæ.ÇФè¤^ÐÕÛ¢žqó’–/À$¸™¦´ù·ƒa{¾Z)Úo‹7R~ØØ©2+ ‹{“I[ߢy@_ݦŸí¡¦OÖ.®Úq=¤fÔí&ÝguÐI™=¿Êhí’>+)ÈblX˲$º«–!ã:2]‚FI”¶Z_ÊsdÛ+ØÐåY[V-³s2,«
+Ø1øXm8
+¡Ë²Gâ¡þTÞ#f<öCUS¤ tO2ÿhC;ªSk
+nÈصï£ê<:¡îQKõ3ˆ›.W]ªJ¯] ç¿¡×è°Áµv"›Юf³9 ðéÄ c‰å”‡XÏ2¯ÙšŽð&3*Ws÷mtÂ-¥Ÿ ȱ5àŒËØîš>ú^KŸXVâ+cÉ¡æ©A°g¯ë*‚0JÖu* mµrª¢ƒ'1;ì/·Ù…~uÖïÍy²âîD–ä­æ6ç­ožv¸È•¢¨î&ŠÇN
+–àia7A¤5?PO
+¨ð¼-lÐá‡áîqBAK œm´1_Ññæ÷˜‡È’£Œµ¸s‹2¡y÷7=qüApÙ#\ è2(Ýuæ2ƒ÷¡‡˜[W«'°…¨.ø¹@ ã¦Ü×?š–ë¦ J1„Üå 雫ãñ9·Ì¬"EÙß>~¶-ú®ž §Yuäb•ûSUð"Ác×3QòY¨MïGíÕÅ®øSHoO‡¼ÂIÉô®HÜOLwƒêLÖ!L) ʵ8 ô¯¼obNj¥™òÝ ØTbÊ@Øáë­â‹9¿
+ð#y|)¢_w›£š|Ÿ!žÎ@ßBIh‰ÓÛy UD7œèG/¿{5—€Z9Tz¡\?ÕŽÜïçyÇhªëoGˆú‚ëò«Þ'sæÃäÚ;ÈêAԯǂ5{š$÷ähžìÑ%˜¹S¹¬T¼‘)Œ
+š‡¯êj4O’$Zn!oÑäÒ¹põ“ß?ÍôÒ¤íú¾Þ+ÔD<á„K±t£ï‘ ‡k1¶ˆÍ‰¹„Âçzò¨?çÀ%l§ãR¾((¿ÓGèò€ÿá†:ªDS$a ù§Ÿï™u™¬>.w›Ä6+˜_rˆ·_ï¦â©—!¸OX ÿC/Lxî—n–×"–pU]‚Y¦!lx’¦Pí³jÉxû^QC:üT…ä莊¨{äûb0ÐF´M­ÚÆ5~I‹R–R¢p(<­‘ᇈ…5a7¥69nö²12rœ¿ˆ@”š‘J•;úmt‘ÑÀηr!VÇ‹®[Ð%:¢yVxíàQû’Æ­wýä’vœZk5¾”Ï ïjA •ç$
+¶mÞæž×% íŠm[ô¨m¼àÕÿê×¢Ò<¦§ö*åƒD26EÞú’ö™IJkþ31kÕšz °LPív.dŠòƒ?+ à¶k®G (áõ¾f¾5|€+µ“7Êwg@6€
+³MƒT*'EÀÞÆÚ‡ï©[TóWI䵯E‘Þ(DÂ+ÃÓHÆGi6›QòNE“ëÖñˆÓÎMrxÙu´ühê@Æy@Šb¾‡id”Ý.Í`­™$=’ü2½iq³­¼X°m• òèœ*úTZd·W7ª˜:ÞÛÆäúBažOe¬ô(¤]sŸöë·®¤åí@&­d<ëÍr'VŽßi¥[kSõ)ïE_ë_
+{*Ê7vó‘—›ñŒ³‹-s2_½Çy:¶¬‚ùë>÷æ®xÞpW`WßÅI#U‘¢ûT Ì{d‰=•VIŸ®p* N-˜3ênPzõqü¯·P“fOžP×cxâäu \¨6zw ùG¿„¶Ot[–¿4C|…5Hdöuª{v_ÞiØí_ÓáƒîoÎiåd@¹FÝ=dùJÆõå{ˆ{#õ‚a<䊱¥Šh¹aê-´øJ Ô*Õ'ôb T5·¥"BEÏ^qW’ò ²-EzŽ ®“FjµÎ—Þ®‹½âS\¹IקsÔkÂá¤*Ìüš­~8L–ÒÀ„¹Ka¿Žð4O×ûݵÑHÖ¥írahW1ÕŠ.±µëd"‹ÕÓ?n™íï_¾§Î*p¡Ìÿ Ä¥¹÷÷U€2‘ã'¦e ˜eåRûžž™´0Ö^„äÚÚð!ŽÊ«‰¾(°°\fäÆÓ`>q½$AIj‹'´ËIÖä˜Æz+»FÉÚ·¥p °ðBuJõ^L¨ƒŠÏøØP5ó€Xµ²,hÌjC×vH)²Œª%Ä¡ŸMižòEÏ>3ÒÍzÉ›yN—Ig±>d.‰K¾
+·†5²"/oËó²±¼ˆô³¼…÷¬Ÿ ŸÖ©ð
+Æú»œ?ês¬>½mŸu2âäõ¡¶éVutXH8¡×ˆ~ˆw'áq[§2­ÍBÌ›|úG}FËm[„Ÿ žµÐºÚËNLÇMBç’ó
++¸*%õÆýˆÅ»`A У!8×/Êøçäºoš.ÈÖ ‡”®ÙæCǾ=›Í“|Õlbã¢-+Á³óR÷·/þܯ¸oÃvI/ñÝWì 
+²ê$wý5^%þ>°Ý€,¹ë7åì0–t—¬ÂÁv”2K‹Ç5g=ù¦$Kuæ~÷6kÎÙ’OÎzÜ<
+œ¸3F¿–Ø›+OÇÚ¨×adEË
+oµùA"á<¿¶7ç÷çbVIeÏeçù­âEsZéu ŽOoðì+yoMÞ½Ú7B0dd}®ÎœD“šˆ
+º‡0ƒ¸ ÃNÆ<r)ÄËÚ•çëÊë•;)§={Ç5ÚHfTÎF"ª=ÆBšÁýL¶!¥ÃÒ/~,†=õp9€®À‹X<¡ÁBS‰ëÍúÇWÐ`;Ë#Qy1܇óá&æýÖr¤ÂUcÛÎ ÑŸ-°ºÔaí{%šêh‹ú{&PPNÕéf(«ZUš"Äš¢™mŒ¾½JÉîû×H{Mc–9™S€_r÷¥É~DuB­7ãR3m"\³e˜Á§%¢ZŽHiIJºª¾fþbÿ“ÑÅ[Ú(ðPK¨f%¶Ä ÏÍÃRË’ÞŽ(Ð/3ØM>â¿àfñ£òU³~Ë .è~d.¦ÏªÜ|µÃæ–“®HsaÁë4æW96-\ED} 0ú}é{îäöÁ–6Íê/>vóö'”Ë…Y¬9ËkIËñAÕ{\\b‡~É+FD>ŠÑ’µ†o¿ö×½ó
+Ë<…@ç“ÛYhh»þýÕ϶FQ:ÊšÙš¹’€Øùš X¤Pò%hãXsré@öcºe)øŸÛ¤+ºËm²ø¿Îö]lƒ««5ìaÊ…êý«]÷¤Èæ.Ƀ'ãÃêÉ67jWȦ <Fo9Jw¿¶oŠ…Ì¡úÉ—Ñ4žôy®ÁѧQ‚Y¤JØg…ÃTv¶Í¿t5Œ<=q35AîógçX>;J.ÜCJ¡ú„toÑ/¶äùA´©}rŽ<Ï­7gléÚבáüa™«Ýw.­ÿÙ‰©\Sc~ÿ£öÅî¶;†uê(`)Øž:ÜDk¤¿Ð§¬;Á½åÞüWŒÁ· …Á^Ì!ZVÙÒ #O‘»å/pL¨WQ0M2ãt_¶¿4ؤ¨xɽñ*E\R(µÕž•fêpQns5Á–MËÏÝo(°Øw#ÿmÜÃ’(€bбmÛ¶mÛ¶mÛ¶ïضmÛ¶mOÞ"ÉêýAo»ªûdw·-Ý:ÅÉÃC)ª’ÞÂ
+Å“Ž…W ”‡›sŠl…ÏŒj¹JÒ@ÀvÄ:ⱿyA\fjá[×CªGLÒÓûË€Cžâ~ 5Çi±›ìÅë#žP…ºK5áã]΢<øK¬«R×Ò¯“‡fÄýð÷dgHÞˆ¦žÅe¹pélZzøÔ\臑ØÇ!-8s9ºC#^ff]Å»ùò×TyuPÑp¯k^†+™ê » uÛÙ:„·«Þù$6óLy(Ì=Rë¢qf¬È ¿v(HLŠ.Ž23€F´al~<¸Y»~ŠÂ€ïÕðòŒ’JɽD ä„ ÖÎ#—µ¿H¿eMŒ>4 ¾‚\'û®L‰½ýT7¹</8Í5› 1٧Ƣø‹\?ÇÝ¡™#[òtÝý\º¥Saò&G‘"?‡-Ñ®Íás[ß$†Ü?A°Ë÷ªgžMÁØŒ·
+¯79Y{q2E¤ãsÒnÑGô«Žƒ¦„]àÓUt¶®Ž]éÖ‰÷iÛ[­õ(ôŸõŽPl¬ÛùQq­T›JSöj€."!\òA xF©îõò‰áBkÁoÄš4«ùS$e”æy¾f`c“¹K+ÓÕ´Éx3?!dëýÅF^“åûº!FŒI!Âp/?ÇB÷Í1Ÿ4Ë¿¬
+^Š Fh«-´FFu]9Žè˜ Ð±Iãuý‹»¨ïXj/|‘”æla½û¢5˜—kîf¤‰x%P?ÑÚîÍJV§ÂàwûïmÊ¡9d¯+ïàb2t‡ˆ¼Ài.öS«.ujdž×²nkUÞ€C±¶ªdŒCÓ Vž˜Æ‡$tâÕË‚ûÄ Ya H¹Ù¼¤œ÷ÿ8/ °·lIÔ¬ùí©Ž+ÅÛªùªÆŸÏÑòTËø
+ôÁ·I2¤m|n[å[£³ƒÊ²Ì÷pûÄÁ~ —X‹¾Fo½ÊЄ(.õAˆ$KVŒ£,ªY{Ä›»µ|ÖþàŽÒm©¹²Ð r3»ÒtF#¥/ÚÈ·?•JòÄR$øÓáþî›u…[N/ãÄ*G@i84u‡t;¨ñu‚Θñ…À¸!7£Û!`›( ¸º^á6ts©"]'Ø ±“%‚¼¡X*aÀ\6í±Lazza áØ„§p ÚG ¨U†hY2Œ±²Ø
+GG
+O»tŠôþ¡èŒÁ­ÏOð¼7ßþaùÎnª
+ƒ߉Â>Y+ZyRû°ÿ²Á;S¹rßÍ˪ÖÀ¸è|$ùÒ/¡Žüñ˜êÊÅ*£6꺋S–ÐÈ*Ðr*·Òs5Ntøɴ⢯B#¸Ä;ALr÷ˆ^•XÈ¿0Y2¯ºNí,³XŽ h;ùš»³ÖM¥ ÇÄ–ÙùñøGLãePù)g¨Cl΂Ê)l@ʬÝû]d,ˆ{
+@«æÒŽµâ¤¯¦xà0ÐŒ**Mf Ò@VÃwÜبHè8Æîï×Czä)»‘}% ª>½,hZ¸M…nbôBO‚vØú“ÿv‚Óe~M 5ëüòÌÊ
+îæðʈÖcŸ6ÏgÚA^@
+†BmU"áÓ%¡±^åìrz!2§€B ÒFM%•ÿ8‰:_ÎE†,Qú°\mZdcUxW^6Î`.$/‡Ç’0ÀÑ¥Í=Ê5^ì—œÂl¨~]-Î{¤pÒƒ¹`5^6•\ÃIN*o6q Ü¢¿¥—­tcÖüƒqé¾€-úQ”d¥}D²vyªm~¬LÖj5pQk$*$…Ji˺—¸(bä*K®­ë§•îûçì\9é75¡Yf¸šîöŽŸ„üÉÃZGÕ蜭<߃ÿ=ÞcÙÊ‘±UÇ –ß¿Ø…` mß\ÄÀìw2rÓ‚z%xHAVŠ¤ü¾ó8Yj¿
+ßN¤oÒEÂŒÅM({G ]rí±óþ»„÷W˵Œ˜²‹—"|À¾™plŽDª eI²¦’« ßÒQüp"®Bþ
+dB•}
+Hs×ÙÕâ<ÕÈéèŸqÛÃeÑŒKy -FÆÀ #©¨oJƒ÷ÉQ±]ÿ½§ü€Yý¦K©ló÷ÌdpU VïæfX»áQ«©aaáùÝééoy‘J:;£ ;¤Óàm/ÌŸÔ& RÂô’8Òš:´NôO1«“Ó¼ÞñÙ¨*ÇB¹+%íéÉ´Y(”Çëb» Úí9ïŸUåèÛ£.üvv–¼ñ9¹øTG¤C /ÕâxC2"O
+¤^•TÑaƒ¼ú6—bB¹
+v[¿Y¡"ˆ‰&«¯mCƒB+ñ¬Ä­Þ½i:ߧ£Ô>‘×OoÁy×úŽC+£:A˜žŒŸÎL•/–)q#Ú5¬Ú=¡«¶†&È|a€]¬™š
+S
+ò~”%½”;é—– vñ€Cë`fÈÈÜJ‰OiÜT^%s ±
+sq·€j ·‚%‰¬ÁÓú%­Ñ‰ÒôDרq-Üè˜oƒÁdƒ-¿Ãk º‰GX8Ù{—
+AMJÙN·ŸØ¶P )“‘•Î‹f:1¯dºŽº;È‹¦üמ’—ûvJ«bí˜l›{(y§˜0Äí\Š5}“ùÖe§f·ÊÐÐft¸ý™œ xYcÛmŒÑ™Œt€ ‘FJàãð»…ÅYÔWðSoþÂE"fA‡?‡µ²DKÁ¸Ïøë¬í·M³…Y] ]zÚŸóP ×Ëqªôó@™J$çIâRÄóôžÖõð*¥šE¢sS'$œj2‚C`>$q¯>ô´€ït‚<œ'}^³êá³ÀG›ó¹Š÷×Ç%Fp{ó9\3æ`Ä­:TˆoÔ³n3õŽ>MqwäXjé½p´ÄB…À62ŽX¯·ÏW¥ý&/ûâJ±Á×€BÌx
+5Ó‹w»E‡A $:—±B×®¾NÍ؇¢°¿yÞtªr?'#F÷=ª(3¤†*M
+‘åÂT¥ ,„ŸV— g<›i“Gï<•z£=Õ%“&­#Su©T
+“äײ·'E,.Ùén;e[¦æé:LóyÑmè£ó9 U—®›î‡Ù]=¦Ì8b×të{b†²'ë/ò5¨xþ¦û@-GÆ›ëéJ†x»]’)³Ó´tÕApë|xtë0S¿Þ¸«Ü0±B ·¸o5´‹ôT™ºk]‰UKËhBÌ;­è–ytçØ_qyfܼ~›ùb÷=.{Å.FÂ[óŬ9™×Ô<„1Üb:wlˆåçËŸbÚp½JD‡üëmÿÐ+3ö´wÀŽÈ^2¾8CYÑ)¸3m< ɶ³ƒ‚Èž·“hŽNÈ[Ìúøæ…þÑ ™·ti IÇj»sš¦[®3,·§†°0}4ïì;¼¸Empk˜ô<¼a£ÄLþ
+݆?Á(É­ð¸ôIÎU&vý’Ôq¢Q(8<íwW7Ðá6×DŠÈÙˆ¾¥×Ñ›Æv²S=G9½æÏ|@1m-Sß«³ƒkG€Ê‰w­Ù¬ˆ#ñžŽ°¤N·7b èšÅûÓ"ĉ„Èu¶!‰ÆÝÈœXV.)ºð7…O›ë$”L(\FA]ynS˲±]Å4O‘“f‰3t–ñó9禟ͯ†÷ýÙŒIWŽj#À S­¡¼vÛ%àyz¼Gô¤å2QÂ+ÍwmÜ
+Ù {fÔ^t1¢A‚•g¼Ü$"9וÇô!¤ÚÃs¬c¶§î,©Œ £ù Œ=c
+n¸ÇåS"HXã%iå‚ Î‹Åné2—M6vÔê¹ÊËZé–}bçŠ'ÎÓ2Æ;P ó›ýÈm›Ì?)!$æ³´©
+Ùz0¥ÁceÏ|G«sAzÍi‹˜æ^–È®+µâw®é
+MÓçíGð×^-©+ÍC+[Oá>D AX§BÔ†<Þ¬ÖÝÒFÊbÞ¨w·`˜’³º£Zì3ŒŠÀê£äÒÁAèU+§èî©gÚX80%¼‰sP „wÔÚVÖ4™É‹ ÀYöüh[éǷاЗ< ûè¥&6z{8íGÛA¯%Â+Ëk?;/ ¨ÿ™©8]AÞXyÈü¸E-*ŸÖä§V_BsâÉŠQå3µ
+‚õáÅöQž“ÔQâAÿ”¾Pf‚èò$ñªGï“(­þ
+ < ŸÏ-[˜qDhrŸ«ü(Ýç)ׇPHã†f@ úøþ|>¤S½V+åµwê[ü.Ó®U˜È„›,6áv»ÍsÂâ–zXÌÄúŠä.šÃJÛ|´Z~”aWÌ4Äö¹©îêú”
+Å¡º+}Wý&üïÓYx'žüqœ.äŒ-ßàJÜuòÁT®.Ûø4-‹*ˆ,Ð_ÙWE$L™OêÔ!Zâ?åïtZ…Í”+-þPö}ÙÐä:vš_0ç5ão©[/²ÿG×ÛçFN¬x¯Õ—Ôr.1Ù¥´öÄÒðÃп@„©¯}“ó~Ü¢H `Jw®¤¯ãd˜¾\™Å甑æî ¨ŽQÝnà«NvÓ
+Ø|¾»è”
+0b‚ ÆøE©‡_X %Œ>Þb7I›«ÄÃÁrÙÇ“Sü¼Ñî·¨’À©‘òj—:å«'mȹ›ç¿…:Þ20±, c?Ö›Ú­ÙnàäFǘè›ᆲdJEƒQ
+eïÆÞ`y&Ï{R è87ˆª¹Çañ.‘»Nþ¸
+—¢|“ nt¨Çù–
+)7¦}#æôI[:Ž?6pÂŒ·‹‹.MÇìÙ‡ó×´” K~ɦʕþ`²Æ·"‘•9U;0&×Abß?¾ñç¾ë½'!oeúÎq#ŒdRâ«ÀÃRîS[Pî>pt¹É¿ìÒüPÈ÷z¿3~|“ßšWífIšOhîB·Ò˜i;æ}©;ÀY©à³Ætc蔯ÿ *Îð7ú—ÒÆ°í"Y&Ž|Eéã¿H¶‰•Îh§n·«D- EÕs)û…ãã„ G\äÒ]z&NðÑ?R4Z¤Æ_þþš_ˆ  “­³îJZõZ<ç´$˜žO¾rà”ÒÍù»pPćÍm_ëu¶†+èÂ{Ý»
+ÔçѨ´ëÆ;•Ú’5©ð«"ïÃO]8Ȥþ¹nK)ú˜ÐËÞ,¶$‰´G$ò“,bî0´ãÂø¡Zòä,oÉØãOÚÇâ²
+ôe ôâf·Â*9—ëÃ÷P$àÇ$Ë Fò!*Ð…~«°ëOáCù#ªk~ –“ÂTO­P 㣪Ž;“$ ŸÃêK„%ê÷¾¤Ëì¬ÙÉjtj„¿w}:Q6[ìò™¨¸i2Rq7¿úª·Ï¹`ÑhõòR¬E“ž‹}ýHÑ5óðùºbrÝÞP {DÙéVF3 4X‚°ÞŠÚKþWµ'õV7•6¯
+ý…?¯ÍåCzçZCŒá©ÐJsÚÏ–¹k·†”æì÷!ù«P¥inomäCäk ù¤…€ö…··pȶeR6»I{ƒÅpÍã.a*-§*ú—Xè‰*|­×Ñ^¨¹ÁÁ©f¶?ÜE‚ëjÅŽíÈ©þ\]ÄÔ3ÃÆóÒ
+‡>j¦a\ |þ> ´¯ ž"È´9åÝ~bA¦QmÏ
+Ý4kËÙJç²`D®|ý}_ˆå*H¥ÒèJ¯Ò/ÛZƵÝ;‚iJõ§é3
+CÃ¥¢ùBûBìwH N« 2u@ß`Iu+õšvs"³å [;—ǃ…‹ÈÓîiYÏ »””¶]¾• ;¢îb
+aÄ=ÛFóŠ$fŽÅ
+„ µá¸SÉFDÉí Ð=}¯JÄMY 5x)éç“2°Ö{P‡h¯Ç‚Áç ËP —_«g³ T¹€‚‹"çÖˆDlæ%~QNa`­áá×=™Jòôòs|«s<€Y0¼ªä«ÄRp÷ý5åZ«¦ž\rVAµn:X ¸îÔmBÐø­®C™¿üu±Àå"ScÎjW-w½…õÉsH ^>¿#‹Ìjk‰ÝÐtœ+tÖj±‘”Yù%iz¯ƒ·ü¥)?mD]oVd9Mâ²bW1?€º:Êc:cÅA‹ƒ¥ŠY´Å› ÿz¬¿É }¬nFâ*Úå×ðÓ­®ñ“ˆÖ Ðz(„2sÕ˜ *˜H‡Ö,[ÒÀL®«XܹHˆ¬ß5ÌNL-o!K®‡p0¾“xrÛ¿v·RÌžKÀÎ#õZšù<„9+øò›ˆÖÿ„Üê³.2ÿ#Þh~ù‰Ú\UYã—£S_—¬"¶=Ä<¶Ì—CÌ™ÀPXã”T3+—ÆÉ£Š è¬uãžp3y˜‹Väµ/Ën‡-d{CŸ`¿ƒZSŒfßH¨Ð¬øVËÔ>.
+W<pÐD ÞA?{n¹]Td‰^»Z[œ\EµßREUݦo ‹MÜ4¥ •÷µ‚ì$ÖŸk³jÛ*Vê-ɸwAEž F  êØF aŠ¦LZ·® †ƒÃ«°<¬i:
+ñv86!CŒ+=¼l™Å€['S o½¹È‹ž»¡Òô6¤ƒCçñÈ Þ·˜‚Î'ë¼P(+V8 »ftŒW*#¹Ð¬7{¸%ÎlçAww„% ™¤¡» ²o/"5;0"ܳÑ~’øÇzs@ÿù» f” U‡ò/ô”¼A­aEsà÷"Èz¤i¤øß³WrG×|Ô^»¶Â ¶Ñ^—V™¾“’äÈ=èj¼³ü¦¿#8¯Ùã±¥ë†û¬8þ.»IÜ As;5ýEî?±â£^¢<V&QÀÚ-2
+‘ÂÛ¦ê$uØËìH?u48ŠiÞà
+ñ+ȹŽ ârÉús¬”øK|¡k  
+dýhÖòŸ_ôÿÞ¯ã¹û´ò~FSžcˆ\ÈáE܆ùÒGzkÝýŒL´‡Ÿn WG[FRÑg¢6‚ºŸ¿t4ÁI‘õ(a¨J
+Ä5ï-©„ç¥ùñëŸ\ö
+B¢¦ä#&Gk²Â”rC¤þLùL âK{' .^¹ø´ßW­zzs‹#žbŽs
+¥­fUÛ(¬ã u<Mb[ÖmÕñj•;Câ+û}ðëÒ¹FZÞj=L‚M6ÁlÓ»eê` Kç4Îršº“zfœ”5wG’Òæôã})Æûöí¬ÎÎíØшÂøý…®T´Kè«Çd c':±Ó”ìñ3ÿª¹$ ˜U>½â×~8KXÒ‘L¦Î°š[ÿª DŠnøÊ& "WD‘ \‹ø6úeîÑný@O0™äxhŸš´çuÙQz8Í÷‰Í,jaÀ¬’‰áý›º=2Ñ,Å?¾Ò–—×Ú,!J1ÞeÖ÷» ¢?„EŽG™ì½“Wȸ3‹Š¡•îò‘3Ž¬&n¨´€«îÀ–ÇHØI
+W‚±Ü #æ¢)hƒî3‘Rñ¶u`Õ³Þ´wÞkÓ&µŸ8õƒéwŸ˜û ÑÔ›kÏöá> ¬§‚)Âyä~¶Á &H€¦Ø
+Å=ÿ
+&ðÛö«á‡åâNô¡R½~*ln9ÅGEo²“šwãd"Ýw6‚j윶ó>ïrÅ»kãÂò,
+M¥~Ëið‘˜Õö¨éZ¥GÈ6õ–­ÊZ}p™5Öú÷Èå
+endstream
+endobj
+645 0 obj
+<<
+/Type /FontDescriptor
+/FontName /TNKIXC+LMRoman12-Bold
+/Flags 4
+/FontBBox [-476 -289 1577 1137]
+/Ascent 684
+/CapHeight 684
+/Descent -194
+/ItalicAngle 0
+/StemV 109
+/XHeight 444
+/CharSet (/A/C/D/G/I/J/M/O/P/R/S/T/V/a/b/c/colon/comma/d/e/f/ff/fi/five/four/g/h/hyphen/i/k/l/m/n/o/one/p/period/quoteright/r/s/semicolon/seven/six/t/three/two/u/v/w/x/y)
+/FontFile 644 0 R
+>>
+endobj
+646 0 obj
+<<
+/Length1 1705
+/Length2 21472
+/Length3 0
+/Length 22554
+/Filter /FlateDecode
+>>
+stream
+xÚ´ºsp¤Ýº>œLœI2±Ñ±mÛœØîضmcâLlÛšd¢‰mÛÖ—y÷9¿sö®óïW]ý<}û^׺îUÕU‹”PA‰VÐØÖ(fkãDËHÇÀ‘U´µ6°á¤²µ20Ñ10°À’’
+;
+
+2
+¹n
+±]/_E—Ì2ûÕ&müÛ4±^ßb¯é!?Ó­TøÃÀÎ@º!Ž÷g8z…ŽƒWºÒ]±zxç.Ò`Þúª//+Lœé&¾|!ns3ˆ?<Å%¯SITD¶wœ·çÂD!ŠˆàÖG.Õ…xʇ%À½G­ÁÙ#Ô9aH"ëFC?©ü!ϯ0€—¬X²¬)NÎœ^=2ÝÍ%Uç‘• ø9Qóp!K¬Àæi^¸jø$è'eW|Mwú+~* zcÓÞN(_|%úÀR´Ø„¯W—³Fùµ1¢´Ä/šµ…,D¯ØÔ?ÚR$ðlg”Œ’ªðxAtÊ8·J8T2x²3iÈDAÏÏ@‘µˆ}ÃþÛ›Ïa$U]×âöð ÂA$©H„(öc¡ÒÉ-ÂËá7;ô/˜6ù,Uâ@šb=‡èX¿ò¬‰ ПvTo1ú¸µïKʧlâk*°´iXI\éC°¡þ/€åûï3kãëïTB¡,*ž“þ¤Z7«ªgZø¿esd¶O&WX¿hQs•çxÅ ›7{ ™’õ€‡Ds§ÈmÑÇ}´ Ãxë†ßP&ê‚È«î¿z) ÍÇi²®ÅóØ°|kµWR;Ì¿¨¾´LÉôãxE,–gݬÿ6¾‹»?Ö}¿£>9ŠRYIñHåÐØŽHÓ§”õææÛçÙ­sÞOŽÚã¾(¿ ¹ÛûgÁdTIÑ;}xt?ó
+¡)åÝÛ…#,:°×ñ-§õÖöÌò,Z>
+Ö¿eM%¥¼é¦5‡÷qâêhŠ±þçÂRìœß Ñ,­ÿ£cÏùÐÍÇ­GéjÍE68a G3õ‚®'KèÍyB S…‡vj\QORøȣ߭Û6eãCvþ›rª™Ã]†Qw(þý÷›Þb7ä"¼ÇH¿¼„w•Ò¯Ü$ìݸU ӳŅú6ƒ¢Tæ[““{wp×™e§­<¾ôèbåäv”?䪜ÐÛ¼éñ†R©”¦š ÝÉ|å-ŒÅ*F^´Wœ#UÎ#Lå©'=°[ùdpYRZ@ÎrFtð_jlO]þÎ,"gö3¬úƒç£º °ºÝ­Ä
+y÷#É—¹c¦b°žÍ Õ¾`‹x™ Åh›ñ®tG¢’ÅÀ8çÑs*òˆ<w3äíÕ`š$Ýûè;c·q¼üWm…:yRï/»Î’Kä«nnfr¾Ï^6%ò"›»â¯<NJ¤!|8x÷q”ÇhV5ñÊ} »÷äþVïó†S™„2þr·CôÏæ©PíÁiºVEÉŒd™Ó×n襇ævüIÇ¿Àqj‚MVq¾Ú$rl©dì=pà,RYÙ÷™
+$›÷ˆ.…ËKT¹^}·ÚÉ'd“—„úØÇûæ_ªë÷B­ÌEñ&nj@ü‰fX¿€V¯ñ©5÷‘·ï•Ú¿@ _ÌVæ1cnM:œd›ýÇ°ßsÙc'se 8˜Û…@})W.Þ£©þ³6°[~V·ŸçÌTÊÓkw*bK0žè C¯Æ2ÝL«dMXc:úèÊï‡ÛKãÚzý™&|1ŠÂ>S¶<4 ÈËwu ¬ì7G­\±peE’4h« üÐRa•ú•¢äu93á ÷zþöYaä“RH¾\ré—‡ ¶©ÜD$%ødÌXI„Á/q1ÁüýòeÈ2#¦h¾¯¥×sÝ xRìž¾_¥³ëN±`Ž‰n+ߟ§8HGËK¥klŠ¾o²Y%´*y?Ü8ÆQË¡ø¨u¬%¡ÍÛ¶ko l#ê׶Hxy ¼e¦Òiþ®Ø¼Ödø9ÒY+'|מ“ß$«Ä¡v˜dÅ n½lNˆæ~c5ÖR‚“DE(L OL;Q¾23°¡”U*hÿvÓÝ#lœã è/×bfEº‚µqF4†’RìåxYÀ9bÄ”¸ª1¥vO¯¦'a‡@Äõ…çèk¢ /w„ ™%»½¤îúå–zÙ k±"¦þ %‹™¯ÕyƒY‡¦?G£aFg“þa¢uaw`†\3d1£°¡ð0RþÈ郳ÚQð±, 5ÎÓφºqË«‚¢Å79¶×æaKëo›Á Ô‡:‚h÷´è kÒŽ~Éw§5Õit:ìO*ýVNñ`Mb ø}‚ï& ; D—ξÓ~‘ ¸ÑôÓéÙSù])_b:é™Áhð5>bt¿·áN03wôDßàUãôð#d2¦vä ’©-0\dÓÆ7ŸªíA×Äa/'Bv>Ut™²Ïz[!69)…
+Ÿ¢~íH¤¥ÿÌð{n²°¬mQÄ[X#d©ÉàÂß]îŽZ{þ­ÿëÓPû ÷x²‡&¯t¨þ-1ôP©ißÃT×ö*ñqÙ’²2ç9Öræê·Ñ 'è© ’I—
+³ÿºr¿¦ãI‹hoUj¤ùNâ”›¸D Ù
+c ýg<?ùM¸åº¶åG+)†CLËH²Ö*¢/+MùzÇS>}Ž4BÜÏG¦`ž`{¤É Œ„¸z<µÀu= Ø;Q­]¤›ÉZvìÒФKçø9jºC_æWPí£
+¤a¸ RilâNìn»yö+>¾ûºVJù"ÎG!ù–í?Î;%èYnô,èû‡Ù‘a2¼¥¿/#vÊvK§\8ù´é%éBL-!¶>½îKìâ¿jæãÕìT@à›(Ÿ\Ý·kÜÖÊ,ɘSåØœQ@Ês¿sÑmZ7…¯ìd9¶EeÂðßXDm0ÜÓÞ|ñòæ۽6ÄX•k¹¶ìº Aöìlä%Ý’(uWí‚MÕÔ‹ž{Ex­s`Q“ÞGƒ0óìoT½¿åàwMI)5_Wï)zìfÏ4f£àbŸUÞg” Øñä_ò'=¢df\ûÞßiÀvÉF@ÖÉ(úK;Ð}å1·¤$Á®b¥Ý¿|b-™ Ìú7M¥F'"uÙ{u° ŽD ¯ƒ4$3M2B…f5ƒ´ä»òüMw3Ú€îË–¶i"kÝ›%:˜È”Þüņ9éQ8#ØüxµÌ3àjÊÂÍÞÀnðØ»ÙyÃ4rÁ£UÎ"(! ³ÜL*¡ӻͩ‰ì‘Ø<ÝŸ=-»éü™
+skýŸŠO£«ÒßΣ=`
+ÑŽ…ÚÎ]tsõ½]M62»òƒ3)Ôºëp½vÞχ)—U¬„Æ”T¾eyC$ £{llr§}ÿ´tò¼ß¤¯¨qGw#j,•K6”fYüíŒw2'ÉüpèKW·Næß~FxT¡Aë³#ú‚"ñ…O2dÈ S™²+°XS$\‰–öfImYšoò
+C4ogp%›Ñ·0>Š„’
+i&µ+òF¢†}‚Ào‘Uë7ˆú{¶€°H4Žæ> Š›Çý>öCúfÔ²óö&­öM“PzB®¸tñ£Š%a<qå6ùã|¡°8êémH”Q°¤66 uûd×<¸å±:qîcn¥êìŽ"‘MD6W­ûH\¸Œ °Òˆ2>š=Êfëo¿ÈY[Šú)A:­Qø÷@XVÂü:IŠ@.ʦê
+=k ;;”“Ûõ6vòštéÅ£†Òµ0ä‘“ÒÀ¬¶v©>„f]Ÿ[l© x%_âg«Æ?Ñù}êí©«ê·Èêq_ _}eëš($N ØÄH“^9¨OÜ
+•O2%0Þ;:ô’Ü¡AÁ£›?•/Rž·Ò·Ä¡V¯¬œâÍN9Ì Û4—{ž—c¹ÜxžÒl
+60D03v”b?®ÅJ7ù¶ ÙàZK’
+ŠaqW,E*X©‹X®«Çœ<‘§ól<ä×°bŠ ö^U¡3I¶µ¤ÑpÄyÎ’ ™u/±gJˆÛ(ǃ,²W?Áw |iê¤ì­Y—î ãñný8‰ãˆû.Rç3o[5¾Õ]¬ Hù° ËÅI^F¹6Éi ä±¯–0ÅÒ¬”¯bªC«Çà» d­nh÷>Ê—f ý´ž ãya#2Ö`½Ž¾j÷ÕUô~ÈÑ
+H£<ÂçHÚFm;v£ùzM ¶ü2ûú +J±LÐiàËÖÍŒKh7•ßû¶Æ*Ì×ùã€>‡jÜõîyÃÚ1û
+ÎÛt°?±–òê¦ÊÓ´‡‘ßwŽ›«»5
+f‚ì”ÿèæÒ
+ÂéŸ+¨sïHyŸa4á0!«Sà•-áÊ‚µåRÿ©éH›Ž§¤¯o_CñŒGv™`õÞ8€€­?Äÿù±þÖº¶vJº#¦#̦Ñdá±Ù¿÷D8A…¼Zç-Ò’.Uæ¨Zª(
+ š?`¥.ןÌX}÷šBôédš®÷ñ-À… _6%±4É
+Ÿ'|]•á–M5¥vl¡ìûX\οÅ@½„Ç ‹­õû)nBkˆ JÓìHì°FâÕ»¬;JzpKeŸüDݽ$-B£˜™þðïðÿU»+HÀ-®S®•Ä´jOú€õ!YÈš þ’IÙDN†Ò«X3óŠA«Ô¨ªf`aóS¦¼ú'—{îÝ^4êäÓüW΢í­
+=¹ó'|_P£öwÊÞĶ‘©×@Hþß{­ú³¯:Ít€wØûTú¬$ÉÀÚÚBL[$ ²Â?•°j¥I<BÃ#Ràï£à`ëËÀâë@Îë‰TP‹-~É° óÒj1*ü6ê`ý£¸ŒËÛt`k±8Bò]è@¦ï#TiáiõÎ4äõ¼b%ðŠ÷k2 ÷Å'Wf8˜èò£ºªÛF„§WRµF™õF L<%9ÕI Ë܆”%gÁ™ró^+Dù§CoÿôÀm‚²2­„…˜¹vàË Š»qr^u¸÷¯,Ý­¤ÓpÆ°”ˆ 1ƒxË@:Ò ÉR}
+Ã|¹›
+—A½ü
+Ñ4sì`ªTã 9'9ÂÂ.4jZ\ èI^Š^æÞBñm¢”S¯öH9PV®_¡‡éà•}…†BÀJ`êóƒGëa$)·š‚½`çà -Ü5¬ô°§øê³-ºòpŠ=1yß' g%ÆJòú’-ˆUØÉÌdGøboθÄFLÆ{˜å§\šM Qß_ŠN`öÊ1:¿õõ¥ÿ”ŒÄêBæŽD©oõK®&rˆVçäÈ:§~>µÇ¸VÖµüÙŽ¤/²`
+ÏËËøºwqÅ…sŒ$EÙ³Ê<6±/³ZÑoˆ`pZo9'é„)÷\ý‚^
+þvßù†cп­Ï´h¨òÇÏvŠðÓÓJÉŠ¶•¨)Ÿmd÷Pœzâ6k:4ûqN÷'›¬ÙçÊxd^2•ÔÙ¡ÕÉøPz+Á‰Pë]óx ?ìÍ!µve<¤Ý(h„»;YRmUW*±¡¨¦á‰2~Òkšy:-÷N„·¢ úh«”]05¼+_¶r_nôö™º‡Åx¨Á§èZ"í3ÝNgáFd…KoÍ#¿xõžg·Â°OÉå³{½I$îX"УԒ’¢wžµñÎK]É¥8aïvò" ¶[±±Ë5«Ë³Sÿ€N…¾5HÇvg”ëÁNn5Ði7 Ù
+bö}™Ù¤B#)¡ŠÖ¯¨¸o°¢–¾F¹øa;-
+dà[\ô¼¤y— èÆZ!Ñ+‘+×w‰ ·:H}Ž2xC ü…T•¨íDé®åÊonÙm,cú9…0Ca–íýì$lPäwÞb,O6½Oò=4îõGÇUpw¹Ì3€°ŽÞ§¼¯Á"¿qxüù—+§7UI#ò“ýxô¡¾Å„ú¢>}7‹Ÿe×üƒgtx*Öò%3Ú¾äÅ,fOvRÉ8Ø'¾mØ6}é&NŽ…ö÷ópWù7žSO¤¨\¨‘£\QÕöÍb<˜ÉG:&W¡`›’1çС¡!¤°/K(»^
+OaÚø›¢d P=ÞNÌ ¦u/Gu¦F¹§È[díMaßhïîÛ#µкª.¯¼U2üo¦ÈsÞ1ð5ëú@tÖˆ¶ òn«dI)GZóFîà­[ú#>ʵ»:œMs™ÌV*&ðÚ Ò¯5wÑnõÝ@QŸ67ÃëÛø¶©ÔÄ—òÓ(
+¬,@ôÇìÈn¨¸Ú…zàÍ
+g7«‡%¶óYÙûõÈŒ±huŸˆ/:ÌÐäÜt¿àÇå8/ü€ó‰ £~[‡‰6Û·Û§cëTjüµÇ@)¬@ȇˋQ:½‘¢™KaZU#¯SÙÛ"õ½h%/£Ÿà*ãO=¹Gðz$Ž­ME§hT^ú\€v㊡¤qI?•ÆáJ˜lN­dL{f‘_IÜ‘faãìs$XDrIjÕ ­S»©øKæ\ó†’3Ë4jj§ŽT)—…‡TÐðbYæö1ȇNÁi§H$dò<‹+©î=®l€Ý¶Ž‘‡5š£s¦Ö‹pµ¸š“ÒGR•ÑæÜsb§äÁÛ0XŸŠTÔ; 5•ò«]ÊÑÑRP¡›gâ7ÁáXN
+¿‹€[¾ð®lA¦ínß=«{¾Š°Ã†ÛÕýïJí:é (? ‹óà3šNIÞ<e7 ­OœkÅdówvž%Ñ;4Yi…Ø 3†xç+FÃi•ñL>Z"óÏåfI¬rÑÔßÅyõż½zªîh̾F]¹¸£Í¨]Ðü": D!¿â÷g®œðÂÒº©ñȯý` }t‹ÆôR¤ #l‰»B‹“tß6Ûñ›0@°ÎÂr¨n&“óañ„ŠÆAÖâ ¹;ç/›uW*"‚ehÄLè䈺¯\ˆ,j@ímè"¬¹²á{ÐáNa•§…µ¢ 6:»4¨P¸‘)–|ñ÷‹ÞË|ˆ Cê = %_šäxì7’@…ù7ácOŒƒp$¦ Ù7¨úR$¤å¸ß§á`}#s•VØ[ôQ×GQÏ®®Âf™w³­Íû1g·ÚŒc8Y
+Ítiàd˜^+Êûr$[‰Óu¦ã6‹Ã ›P›å_õ{Ínx öpùñ¹Ï@ê”JÄÖꤸoû×w.|ì~ËqÎ6š—gb$ÉÑóõé\ö SðŒ]ן2ª…s£pL\^8Ïd{ùªGaF{·êˆ†õœÍÍ‘¯†& NŠ†Aœÿš»¶¥_>½kyx;°¡M¼‹×?¹×KÝTRaNš:àk(ž»{!¡S_×–7fÙaÓ‰Ý(]r–jÿŽÃY>U(€œ1ÝæOÖ:ÿÈGª» È% ³Y)Æ×ÓCß9ÄËäSi^çXb³ç׎kUý#ËTÁ:\èöáê²Ú H‚7ã¹#ŸET±ºÿóþI¨àŒ €€3õ“TZ~€ñúb? lF0«hÕÜƤƒØÊOŽió³‚y EÓåHK¼¥£/‡dd_FÝ9šuo9[·)œßæF–Ö:&ò+®dÅ·ÂQCaäšæ( `D˜c
+÷Õ½q„½ ³éLü_©ÛÔ?ÐW Q¿7$X
+'æ^aƒÆiŒ‰-âÁ©‚5…ûa¼É÷PPqâKÅ7óúº¼z~ã¢{Ýuo К¢ËM³ìòªgöZé!ðaoqïcRŒ1:ÿÄéYÞ{ óàÇ·ßýŽ`µŽR¥‡|åy†ŸG=A,ï Ó%îlñŽ¯)Oæã^ŽLX<äAbø˧ç ¡I9†òŽÁÉq8Lȉ–n$òj÷Lf#zÙ5ýƒ*¢ZÐÓ Km¡æÛ¤‰•æ[êÂÃòÉ# •YóUÒ$;.6T©ªa1µ<ÆÈW‚Ô[Ct3‚Vq*dáÑPE^’„“žG=MÅqï;ÁEŒ+Ú÷juŒÄÞ)·©Ò~ÿ¼ä°6J‘n³éûV&ì%Ôc¹€:š5ê†4?32»º0qŽkñ
+ ëíöLºà'àyS&œªˆÏ§\Åa¬L‰u}•©¶£si“}•" zÙÝŒ:S¡o])§~ñÚvÙÕô›'—p€‘‘„ã±øM­M9¶Ü˪–’ç€`0,Lð¦Dl®2ÖãÏ Ÿa1Ò<äHõ™Bú°Ú/:“±R]qÑCÛ£
+%€añtÞoZ-(y
+MÈ“cƒv•:%¦ëêa…“ d_TbÎ;“-Z¨Ú$ÙŽ²ÝåýšÿëÎCJ¡øù/¬˜²»ªHp\†]ýöcB×q'±ßXžX_áçSzžÉ[ÌÁÅ=ˆ†„Ï¡ß°˜óHrܶbÖˆÒ÷=Ÿ.¬~¥(s* ÕçqO‰t>—uññÿ FgUFÀNÁIXuH>FËDª=Oõ
+«"ƒÅ#
+ —´gÃ&ÏQ:¼¢»ðÁ@2pjKTKÈ·¨òe&¬£È»jêˆeáJw;Y<ÛΞ‚bkLÍä"ƒŸ<lÀ-^&þ¡oÀ?.I]"n–'%3òää±fÅTJÿ¶ˆÆ¶Òµ]9f“§‘ê
+gÛ#x0hôýŠèØOt(ÕØùËø“Õêd U$#§N¦{ü #0.ä)Q±hÚ”vgÙИìkëNñ„f
+ïs‡ôúNÓ«æÅúLÚÏ+BNºœå £çYÜ|·6ëcùÎô]Ã1PgÕÆ e!Ò¨ܪò˜áe×Èäg~_°‰Ì1ù8{‚Õ‘¬õ?ø |‡×ÜÝï†Ç.÷sÝÆÙ90ýmù
+Ëò³i̳;¶K¿éAgÌ}[ -/òQèÍÍþìkhÉ Ã ‹›“«–--@û× õ£#†°èï ÒÛxvl…`­yžLò1D÷ê˵R²;+¬J>ÿÀ³ƒ3\$ªPUAk®õ×Ê
+&f'mU×Z¨ÖSK¾WkÎ(„Í8½)2ÊÎ\'+4'œÛçC„ÞeôJä°ÇJ@’mObûî(…ØdR¢c‰Í€€}>â6|'á°ö˜•ˆ½.R°±uŽK[ár9ËuÞ¸ºa¢¬›ËQs6ŽŒáð"ÔÉúK³\ZR7¯Dó32~3GX
+%þí+Ñ8CËv$_u´Í‡Öå0GÇ°œ ¶ÞÇÁé2.>Ëq£Î5§±»RÊ‚ßÒi0àÔGugÇlVR—  »¤³Ûå»E²âd¦iÖ–]øïî Ûw#xÌû7a[½¿3rÀ Yåf«ƒR¬ç@;!¸žN†‡Úb­È­äð6{kÄ¡Ù݃<ß²¦D>ÆÜ~X3×dØ—®#oX–lQ±eS‡‹¿ééj‚w@„4´"ÔeLÓ“M¡;õúóË`MhQMëÛш`…À&ýÙ5- ¤{~&vdÀàÜÛý¾…sÕ†RGŸ²åTøòXJîLEVù£vÙêág '3t¿÷¤Û|Ê.Œ÷W‰,i¹w‘Žv¹ª¹Zf•Íü0Èi ™*ÆPl'M ÜB´‘ùŒŸ&4—œœ¿ÍÕ¨¾‹Ý"¨þ)+ÈJnÓJ
+Ûö2qÒù4bÑ4\–oϳËÕ1>Òe­ë*Ãl–nJ”Y]6¾;‰vé0…16š¾áŸ[ä•FúQÂ.ø÷Ó·c­)³n(Oçfcα\ ‚¦ŠŠ):g\¥S¹Nñ—Ñ}IŠ„bÐ\_Ëß
+,¯Ç»ä+Í2“LŠ× ?¼±Àù·}äáëâeNŸ|2sÑ%(ÎDâyèD <&\úr“Þ»^$/£C3Ó»8²fªX×w§ÄxÛG#쉡“µ
+Gäç‘p_Õ3˜Mªµ¡m£!•–%Íãd±F$IQϨ2[ )¸ö¬ÿãî0ŸD¬fÂRs´ŒAMƒž'¼ÚÞyÖ:§M8Ew·ã¡NÞEv+‹x8Ö…*#Û!Ø-•ªÄ¾*.òåxM2wàã«ëÀÈŸtO¦:“‚hôO´tvö.Kï ›oÕ¾‚Z<ãe+“æžcY¨út—@ã’1 X¯ô©;¶ÜRzÚ×àû~tb¹¬TAçdHðoíçÈ×!ô4Uô‘ÑuÈ¡å¼K‚¥TƒžìÛž; µåØ»ön ‰–þ4]‹§:Ò¿àÑÏCͪá4mLñÄaŒ‰¾ëËl¢ítõ$Ë¡Ä#;¸Å³(ú·_e£¯GƒDÈŒu0zŠw ±Š‘2Éä4ÞQ{AmŒµµ)ì4‘DÞ‚ºZ"’4î2¦!Í_×Eýiΰ&+hï¶ÊVe9èÕ¥hGGˉVuyÈÂ×ã Žü÷=¤%“”Ùm¾¢•¨Š1KqÇ_'Ò%d<‹Ñº†;ß3#R‰} ·Ípb Ùü)<°¶°›ÓˆÙ,Ô‹ü+a‚dêP&jóî½jù'i ¯Ähäá
+þ›Ï¨EVT)Gq¦caôp°Y1
+íG3ªô–æ [ÏŒ q;n3À[Tdg–bñ y“„_ &Gg­Ÿ #…À0'ØÇsèSÜ7îÍŠ¦øµeQÏ;žtM„Q8Nûjçë–ÅÒ?ê°ºm¤ÿ8Øô¦C)ƒü›DmÔ¡ðXRÁ<oí
+o0|ú µÏ=Så<e ¹Ï„):"8ÕR›eЫåºæƒØ;¸ªüå>>Ë÷ ßû+}a€?î²÷ɦ‚èiíü–ÜÌffÙçªà«˜"…PËjÿOþeš~qZkWíE:7WÈD þ†Ù–ª¼†‘ƒ-xfTMòðý¯ì#U_íãúF{úì[ëÁ¯T!ør¥Ì ±*ÀEŸ¨„®˜˜Û<D–¥EãXÓª°ÁpBZ„?t(®ï¶‰>$@» WÃñN(`~ˆA¦¯´Bu,¯_3{dNMÚŸ±#wwV8~%.îÜ»f¨.ïøC+å}Öá/-
+óŠv{Ѿ YãIH–­¸I»¾M(3ÿòW çq|ÌÏa/ªgbñyD¹-Zsc½€/¾gÓbõÛÐPPf–
+çÑ8xÃ× ö°@fÿëo>qE,Œ»Ü?¨çDN½_”Ö‘‹Ú­î!îdY ¬$sÓ@×b!`á' tÚH™F.{c˜W/z‰°2xWäé‡Öö½³ÇŸD;L+¿ÊeAP«8>ÇçÇ!^—¾ï¢¥ÃÚÔÁá)FÜ¿œ¢—Üí0B)ë†Le—›Bžz9EF-êÍÏ0¶RÈ»L=RDÑ&oÛŠj¾ô¥»Á·åýXç¹øí–Ð~?6Kuh‘OTqáÿHù«#¥™WT¸N#Íï„
+õ²Ý5}(Ç»b1) AØUaâí…†cº4cÑÁ×Ö€uš¨4“çˆßÔ+X¿u¥nHö‡1ï‘€
+êÕ‰}U:i_<d[ÏêN~@ WÖŸxçl=>w„v&ǺpPÔñ¿ÀŠpÿÎFžqMŽš2w†>Ê™Á$ñ|ç­ˆ‡QQÉ:{U²MHnCU>ŒØ,…ûÿÙ&éw¿-…EÄnåËþÒcúLÕ¹RÚHšsgˆ¸™Ÿîˆš¦iuþS×m‹ñŠÚ ¼aŠ“|AYÉE:ŒK ¿Îc3Wpš‘§ tí3fé÷{‹÷KªB'*ÏEXeÊRlÐï"½>="¥?I6ð®àä 0¿ˆ–ÎLx8ðn|*££ùžž˜H™Nîe.<ãŽHÌM:²³çï´QŽ_Zº)”1
+Œk J^
+K¤bswÄkœ¢<îRƒèÌÉÈáwX”ð(tàF‚Ï„¨'©„7-]%iü¨ê™\!¦) ÓˆawÓÏÂScÄmË’ü¢>G p«›î‹Ú¨ƒ';gZþ0 HÆGs‘ku?„ý ïÀÏa¯ã—Œ‰>Jr*)
+vU#jZIö”?·Ù…“Lè•ÿ™Nž´íΰ^%‰°«ÉIø¦²!ú´øŽÔ'‹ê̽3ö©ÃaÍQµÝ´Ÿ[Ù™ÙA|Ãèد=€º{›v}¾ …;¡ZMXÞô/ß”X.Á¨í,»^áeƒ*³Ì».Ù3Ø¥ÙYVÜrL’±t>W_ùy‘‹l”íÓÃ=r0«7À.9¡º·I:ã8Sñãé,°®€P™vZå¾D Š`-qV}2ØewØ•›.›<äw˜D«‹êúú‡PR{õ¿®}l!µ}ÍlY~¸ ˜‚èùu’X…Ô¯kêCŸõ)¢z¯ØváÕëÞ³ ÷£ÌÂq2z,9;w‹v=1»Äg oþEÿ%,*I"Zö?Píw™`šèqÚäøÐ6³›g¶o¹6uY×íßmªÁ€Çú\ÎøºöñÇó6õ—Ò!„¥S·£®÷™þ¦†3(g ‚" ßpIáðE0pÔ|»yÞ¨æ
+¨# 8@©s¯ämÿ>®„Q"»3`1o–¢Ÿé<žxH`å•T`wÚ
+
+½F§(°‘,\ ³¼ÜÀSÚ·Äp =͘"ˆOëîŸÊ‹{Eû±nñ…C¯ °/)4¹~»¨¾¢këè£É8M•  ¨Ã×ì‚lÀÖöÙ íoŠâéôV(o”ƒŒ©­LSÚ ÏZO`«ü{…´¸=Œâõ¦Ü¥dÒõ¹$i¾ÔH;–­)UÝ‹5ÏB=Øó¾ÍD^xêàñRmÏm8›4È$SŽÆcEŒ”¼§Ý8eܾª-¦¸Þì5¯,>gJS³¢Áùõ-ÆdŸ¯;ÇÓð†}x¹©ÞŸ
+yHcý“ÊÒlõ“§2n+©Íòÿ€¿cgÂRšµ»úwvÛ/n‚4‹†à:q± 9ÉíÖ}vT%m žæìäjÂv³vgBfæ]ᣤà*‹áiÅб d–³\<È{©ZA…<ÓÉê‚l—KMÍ^cª¯PÖëwôMÁ?»Ù0¶`‰µ‚žÇ¬¼óŒÄ¡s©­S¡ æ‘î¼>n»ò¸ÏÑBœrâi¢¸û Ò·[wKÜa̘ÈÊáõ
+òD ˜µš­àžY`UP7ÞŒM ¹ŸnÊõî®0*_œ×tl8œ«Æ›#12cçËì¦Âçà¦ýÀÑZi¹›6Bò³ülf. p`µaÂz8±9Øh6”T Ÿ8`éÜ"e2 Ï0™zÌh
+f¬j'D¶l7®•­Ý‡‹Âø”ê@h/¨ÝO÷’€LŒ2¯]GþñÖª‘” ?Ù-1ƒ¶Fg-û-E΀¦ü¸b,y'¿¶o²`묃IY<ÛÀU¸Æ;¡Jè[LÉAbf m
+šTµµ³âËÅ ?]…••ŠGå¸Þx
+ß`K„ì³ Œ-ÅZüPû,NEÚ}]Þ~a>Þ÷×´ôêW6±ó6d0ø^ߣÍ4~ª]L°;&Ä£C
+°ã9#Œ7¼úq{—™eW£aCio‚5 d„<+¼Â_íT6qÉ$v;¯%áÚk*r_l[€
+ökD4Oö!–&ÍçÃÜOÞ¡w6ÐS[‹„‚qÊ£JÓ5Ùϼ÷2+®hýs÷Qi³*¸¶À[!u½Í;Hë¾óWgû·Ô3µƒhÓN]t+ðS¢§Í­c ÛmPl’}=>/iÂ
+N3(óPŠ¿¼8ó¯Ö„dl9R´èïèÝÙ‹UÊΤ]@F°FÒ½ Ø—+ó÷gOlßÒýä¹ë˜°ë!AÍU–c=FÑÛcçÞ;®EöìÒqEêF˜õJšöS\gÕRÝytù>­uü&±*,!Ö‡¸ýA6q#Ïîà,Ænc+8;Í;Ÿt¦²Ó=hgã(ñøNTr¸lÝog•ÆOŬá‡Wë Zï:öáXÅõßÊ"%BÎòÍR´zŒÞi®{Ö˜B±hm1ÕKÓ8ž8ÚvœS醞nôÏÐtD°ÉÉ„=¦Ý$€6­Qk”âÍP÷/±øˆ}¥Ëì£K˜
+‡¯á©øQ¿®„‹wÕ]êáZ uS·È· ûÁR¹¾v„ Óm‘DT~5ÍñF\$œ«‡ú\ǹÞQ^D/ìÂoZäÄ]`'¥¢gÿéÅ(€¸kIb]œ6þ¦"ýCÙI;Nq<Ô&ÔA¬YŠXCÑÊÖÅ¥?³½°ÙÈ EÃm€T…ÖÕÅ?½n?rf
+ºP•ã
+zešE…<$ÚäÄ8Mjl N8¢.奵ì‡g[é×AãR·®ù8Žû 8/×—)Bk.h!kÕµÿ iä•s'qnpҲ̠»œæ ÉùG;æ¥Ý,~ Ùúhë”Ùÿ¹ÃèZ¢K?½Q’Óhº…i¢!zDÝVv‚E¿ºÀÖ°\ŒW
+Kçn¬‚Ù¦‡º‘Íj|$mGô.1ˆ`Š
+g3¨R9’Ë¿mýí‹ÞNmÛ]yDÌ º×þ‰Ö¨Kª¨’¿1D<@á S]ä}ùûê—Úûw'—’ÇäÒ›¥Ò¡‡!AÞoô„P¶7šrñ‡„®÷Ò Ôò|J?ðÑJ†uì9`«ˆš°Þ–Õe;¸òäïë.;×(bŸÜý摼‹ØÅÖ² ìp1->OîCÌÿ‰¨-€byÇ–ÊÀ•g!Dˆ¸Ì²rrϘºv¨#”›yÏ}æµPe|‘¿1î}và¤þ˪´±\Çðö›Ê$Ö&-Ñ–XM'›ÓdP’ee›x¦ü*r ê¼õ\5ðmf@J Ô!ˆ’!¨&ì ¬C„¨ÏøÎÏ¥•xWA \Q1› VÐP¼h<Û>cr+¯xÞ†¤ÕÛÞ‹^S{h¦“­Ð¦ìC*Ñá判4íŠ/0ɹ£|ÖË}=ÞãPeÀ‚³ð`¶Ûu¯ <·À‰ò¤±J£zo®-š–Æ ¤J½ôl¤ ð¥ÁãÀA\Ë­ñ#µÏþÄýW°‰º.u½]]aŠšÝÞ¿‰“8j«­‚,´°×5ÔnÊÙ³‹˜gñ¸™ËxÉB'£¬jox䋨ÊÔ†øYÅ6bkpüÖÚ£hÇR†±
+ Œ„yá‡Å ÃëfÕù½$v„µÖ=uÓ±kKƒëæ8õPéQDU­Žu{¥1.Q™æÍŠ§<Kˆw–>ˆ€_ï.¶_½ÖŒU­MNìœ5w% ‰ßŒtqÒ ×ï¹nèŠÄ†#,¦a.#ÒO50"R…4–þ¦ÖNÅ‚çn!§ 1šFcœ‰p€ T‰$FëÞ’Ùø´ÎÍV0ż]»0Ÿ”¸î _¬^6Œý:ÞMKï}Ž¦@ôîP°/¼z’ÔÊ£D{&t×Þ?F}γå×Óu[@È4úzþÙ–‹¢81!H+w'í/îóƒày'òïÊm¨™Èw¡÷õòÈÿ5F 7’ÿÊŠ¦ÎÍGf1Pwò'k"oŽ:ê^Ξ÷–»ù‰<ƒ9 Ÿ|â¿ àþœõ|jû%slÁÊò]™eÆ-T•m²‹SèhÓï»ÕŽïѹ N´áS„ý€›‡až#|ò!~ã¡XAõvD~š†…؇Š$émnX?¢ªßmY8ŒÞû¬3z‹2Ê·^Ü‘f JH±ÕÔ±”gB2`žñį»nDëqQ.}p†7ã¨äm~–Ä‹GÌIüƒ £Ë05=¾váXZ°JŒ®GJ{Å¢–ˆè3£@#~jsPÀP’]W4?¡˜1ýƒö³°è^fÈ‚Àª½a™šY˜šsQ,5€Ì­Fd4Vª`SMâz5”zWêz™s—J t¿êÄð®Ï {‘¸­Š)‚ðNÇUB¼Ì};ùï¶_콤»‰íúâÖ¥,1À:×!÷u¼ÛÜX}wýé .u!7¼ãƒÐgצ\RH-n,W@yIXÐÑ+_³@&À1ϱ>é‘3TAÄ4)mÞö
+˜Öõoâ=šÓˆ^,òŸÈ†k‚ñVÄ!©¹óEñÚʲôJ<‚ÐNcœŠ4…·–ÿ8•M½,!-,pŽœ–aX|Ž¦Øѱ¢˜¹K¼ ±åÞ•Nåí…¿’žÀ]*P™ÀÿH”8¾‰ÚP¿¬y™¾J)LcÉЦ©¿ªIø|OÀ§$«ŠI1ÐP
+`ωj ÷žê%EØ[zú¢.ƒ•9>̳ŒpOº"@%ëá áb;ìËŸ¸w¥³îºèåe#xªl¨O
+ѲQ>ɤͬH¦¬_ Ú–¥¼Y,`¯êÎ96—É%åë9c-"Á¼“Àr­ùÁˆÿœ;§:Š…ˆz{':`Õe«àUSѨY^“êšIi¸ònâ… ÓÇ–WÈ]àƒ¸G‹”£ñ¯]S¬HL]D2à½ú¿Ö’lÜq°Ààî°&tÄB{¥l]˜û–‚·‹ÒÆž=R[«²íè€ÃæaóÐÅsW¯ ¹C»’Çk­nŒz-€|Ði&>BKUò¡É‹ÿs%–iã®&9¾
+ÎmP¯ã—?&…søÿY-ëÍ ë7+¨‚‰’õö¾û`ôÇñšq•é’³ÀS<¢ÀBæ(I~}(w9;#ƒå_î>áØB8
+¨àKˆÉîë-¸ Mµ,éÙÚß‹‡¤lºÿ¹ÍC!—(Ÿ|2îŠ"¸¡Ñ4ÞÁìhYl)ÂlÕ]<[›R¼4òøÉ >ž£a¿¶r üê"ä·tz4w+å29ÀœÐ dþùie×Ç
+®1è0È×9g‚а­jO\7pO•c<neÖ#êXoûÛXr>÷C“ÃàvÞÎê¡üÜÂaS<!áëãÙÃævý.ÅÀé—T2²Z_nq» C¬f!GcïÒîH8U*²÷¤¤ 65ÛéÆàôº5^»ûØ…ˆK¬âGM ;=½)E•Ë*8ÇyX’O†±î cJßUIçŒ8Tk£¼³™FÝEö½ƒ‘£¾.haì»SªCTIT
+*>¤ÐD­ÀÐÑ þ|/°ìl.À¶‹Æ%âá|=uÚþþÑ\/ÈtùEꨇ{˜1v
+„ÆÅ7†¿§¥Ù%ŸGµ"2® Lç#\1ÅüPË?Â+»Ï i:Lä8
+endstream
+endobj
+647 0 obj
+<<
+/Type /FontDescriptor
+/FontName /WCAPHI+LMRoman9-Bold
+/Flags 4
+/FontBBox [-501 -299 1649 1136]
+/Ascent 700
+/CapHeight 700
+/Descent -194
+/ItalicAngle 0
+/StemV 117
+/XHeight 444
+/CharSet (/A/a/b/c/r/s/t)
+/FontFile 646 0 R
+>>
+endobj
+648 0 obj
+<<
+/Length1 1937
+/Length2 21836
+/Length3 0
+/Length 23075
+/Filter /FlateDecode
+>>
+stream
+xÚ´¶eX\ ¶ÜÝ!„ÂÝàîî¼p(ÜÝ݃»·àÁ ®ÁÝ=¸ ¹÷½îÛ=o~ÎÇÅںζ:äÄŠ*ôB& # 8ÈÖ‰ž™‰ +§ ²1´1´sdf¢Wš9[:
+Ô¨©ˆ)«
+´}çoFW}×ÿÉónøÇ]NLUHUKQŒ™ñÏ3
+r°¼:
+¤^ðÕX @ÕÔ˜K) †â±Üipà€¹ó¦|eW<)ž­‹é}1ðVz#u%]Ⱥ‚5‡A»úUŒCs|éh¦>q8g{¦þüöÔò‰ÆOúóôFQv‚7;x/RŸÿÑ«+~{sA‚ÁtìÀ’júÕ=½Fä×G§óΆþ*CÒðLãÏáX®¥îºLr%áÊÈ]w•¯V±þÊÁÍ~ ;°8킲 (ë·+b:JõP¹P«®ÉÊ^‹êœç-q?¼ÇB·r…OfSíÑíݔɽ˜8 £jÎ1¥(nòF=g.jjrBØÔ®ùv:¯Ð÷àãˆ[„Ï µo·§¥ØÛ
+ÏL`Æè¤^p»æ”Ä]Nãå¶(ŠªX¬_Õ‰|Ôç’šW꽄Çö60`Ç“ç…¾ÖÚ•d^LEX™oÈu¡‘_& V/ƒ™$kR¼¥‚H¥ËîN\p¯ìj2»êépIÆŽ¼¯š0±¥(
+3]j…™ìðÝóI¼%l㠓⟃oŒˆª¥Û­®³¸ãcMÓ—WíÄÖùÉ\HŽ–×^za¨:@€ÁNÜ ó¹÷–×€¥ÁÃÜ×À>¿ÞèÒÜ&Ȥ› B¢~^œÐU0í¼fKby/ nôéë(VPp¶Û¡±!K-js·6¼ î°Q$aÅ* =U,¹Cñeš±÷ A¾TyÌ’,Q^ÊRùÕ‡ðáð&uiâÝ=LÅÝ:@ý¿ýC $-mlJNüé#ÊÉö‘`á[ö£0\î¤f™ŸN ÷ô,lƒõ›r’ô9ãè­žÌ5Ÿ·aèw(Äú›šŒA«§-ju ŠØs”×Ì/Ë'òXG랸‘«/iÀ s‰ÁϲTÔ¬0W uQñÚ&¤"<¸0 `ÉÙ–µ¾BÍœ$¦AÕ%ì¹—kGõ
+(žº¦¤ØÿÚ¹ŸäøTŸS)hIŠÃ°5³§µT»I(mvTÈ »úm˜Õ¤ÓLõQˆE¬ub#ù³%Œ ŸÈèãRAëê³ùÊ„ÙÆïF& ئΠ9¡¸6,‡ríJ}½EOŸã¡ùyzo£Ù¦´iV•‹Û^
+ÕPNËåáק)Ý”é sØïVT°¦¹{‡èl’œ!äöŽ§HLGZ’cˆ0¬>ÄçºMÐoŠÞ0 ƒ!54lsw†..Å1Iñ)5™;e?gé9ŸAñz÷
+élëf=[É-Ø,ñ\ ¨,©ý¢0Úxv1u°¤ö°Í°œ!´X¥á€e$WÄäÍ &ÙGƒ‡žkZ^UV¨ào1C)ºžb(|ɲ¼½âVÄl8ŠÙŠ¢:ÃÖóµ?0Q¨bN­ìŠíüLG8ñeÓIÏa$gÕ{‡;€élÒéúÙ~Ÿp}áÝìœý dÏ„Ð^f¨Ð¡Z?{Þ5ÀÃjL_í
+â3
+OfÝ;ŠªÐC K‡òPz#ôÇN·»[Þ
+fxviÀ•rñ5om´ ùziînm²AÛqâ½¾ÕÑÕÛbeò7˜]’›±Ë. †!Þ@`‚ŠT™:k9¶Ö& 4›Í¥s\¡)3㣜@OŒµÁÙx ²ÖÖiÌ‘RL2Tp)oó}‡Ñ?àØN=ÿ~,Sö3ËP;e6 ¨õuvÓmޫ嬑¼R-oûVäèhn*¥h¤ò´í%N!VSŽÒÅð ?p”F/®ú¼qB|÷SËFxÍôEå‡Ïn\¨ßîÖŸ,q;ÄÌœor!—&Œ— µdXä%†Ö¶÷ÞĤ{9º“)Ì4lx/ñÀG<Ïð`ØÙq”“"óÅŸöp)$T½µ(Iͪ•%’ŠP¼‘æ ̆àDzÂ:å½Ê=úëq¹ééë~—C¼€åM/ÌÀÁÙçÀk® –y¹MQUsUr„Ÿ7›Wî7“­4:󵙷Ыhä*D8ý,úìGÁlÀûÙ´Å+¾’ðën7® NŽ2Ë7ÖÔ=x×ðÔß ŸÅCôã&ó& b¤Â¥å+—¶zQ‘coªÌŠ†(i!ïHR ØèÚnZÇ2Å8;GRÄ–v¢Tê.¼’mÈ¥¬¿©Ëäæ†Ëm^eéñ`!˜µ‹(RëpduË6¸|£]ì)ØÕÓù…uÖÑc„دië3teßc­‡:ŒE›…Šù' årlç}¯´#;ÀÜI¡Ý%PÔ š0Ý_Ò{ÜpÏ=¿Áàf~¨ÿ±#§VÖüÂÞm%iÆ=® WÜçæø˜2L¾‹uÌmLO‚ÒÓžØíy¢\íà÷rÆ/¾ª©
+¿ÍËM‰ÄöM&«sØý6ûó?ãmYq—3UWÑä:9Ù.ÛØ .PG)rBg,"š <òµ‚#òÂ(KüòÅÐaÖŽCKtHg[«d™É×BÎ9ƒð™öÈéÛ¯‹Pfcöq™Y¢y¬ ¥_i±w<ã5­=‘¡d±gln„òàÕ¶9Çì¡Snë'¾­¸6£Jˆ »žÆýê´V‰ÔžU†¦Ù#„ŒÅX)
+k#|aéèãòÒÄiêÆë]ÿ©â¡¶x¤^C¢‰ @vÅ"ç•äæ¯Æs¯@ýïäN€'’aÖ.VUÄý™^-ÝjW(Yî—þ±šØWDRãÒXöŸjûì=®„£Ï]Z„•-p7Ck ý1å1éæé­hÉ‚#”i³%fÙá?pÍåûO>UÔõÎ>[qÂKhõ+Žl#0=؈"DZÃK+Bòh]7r¬OE$}@ØÚpný2ˆ5ɚч&Aú»¾°:èpò¯bMŒ†¦ŒÈ^ PÃÞXÁD¦øÀÄ4ª wžzø;2×™þeD‘¿æ ²tÒk\ÍwN„ ~?͆ܧ¸%v/>•‰ƒ%wŠ;||;°“Ÿ=ªâI‡z–·^žj±qõ„¿U;ÒÀ(Om?!ÚD~rh ¬}Œœà¬\<ýâèBXì™àz3HÑH71…L¡L`Ñ‚üSrž:n•~e€mfžma O {}¿"8­¤„ ›ÈRâR^c‚œ‹§îGHÝB¢ÉÙmK‡ŸlN°bŠbµä—ƒ•ƒù;‡$YÎ{Ãvw³Gr¬ýu^Uµ½dæ´ž[úM“rk*à‘GÏp¡ˆR“AÒ¼ê{™o=ën1ðúŽd«Çœ«:>‰‹ÜÍÙ÷~Ž[`æ[;}úÓ-X¿mnvÉÉaÈK¿`O6œ0;qbèjŽß]Úz"k|©ð€ ‹Ë¾>§‘uˆ’w‚gXØg"m3-¬ÂBw[]Ë¢N [íäÙ–Ê\õD_ø¨7iÃg/ó"u»|Q#*Íœ8@jÜ‚n=Ž«WÁþ©è@õà7zË›N·z#ÊÌXß@ÍVãÀJ—«uc“È9ó—¡y¨OÇûèçÀ%ïÞmmÇ\ßãÁÒ¹•z"}l(N‘§ãö4ÊÊê(“ ʱU§£ÕEë‡u >¶LN
+5mM¤0v~”NeÁС›äÀÀé\Ìí†Ñ=)OÒƒ-\{cïzNÈtf¨»€”ÀN¯ÃNèáä-ô‚Œ¯ý©”zͳ Å,ƒ'®FñûN(Ö‘Ãs}ÁMÌ]lÇ Ì«ˆu,…P.+>ºÂ¹¯QŠsvj<Á姲º‹ÖÞÔ¯>B—`y´ýWŽÒ ßM‡doØh%ÒÅ•8;`YÎ’Ò£ÁFvhÝ?;‰É; ’‡agÆXÑî×)`«#b7/çf‰ŒñÅÜÅR2‹“µq°‰‰oqºKó¶fýˆ{q½¸.‹£k’-Ž…,ù<½ ™êÓ¿ZÎù õSÀÛ:ú*¬q„5–Ù¤ÿìEÃOîC@Ý~þ@6P,“äïJZf„Q¥)Å|ݨaTëxßk¨±Æ‰íô2P¢N±(ÚbZØ Ñôýj¬-=dù ÷ñ#„‘èåÓ”˜â´{ õ’%€“‹™Ïž©Åû·½K„ú›ëI²Í™U$ãc:ÉíU7µ/ÅÍÎ-šë6wÒ¸9Ð Š 6/OI¨?à5zíwDÃ!mRä붜Ü#Ÿ¡VJ:—EŠlÆG¼ë“Žá×ÃEK;.¿Xô.°¬A?ðci£r'ðš›{z&º®Î?\Ù…Ê6¶ÈWÿN*w˜)aÿŽ‰ùþäúÀPl){¿P»åÇ;Ñ3üLSªš®ªTèìæiãpsy^gc8pÇ1˜µ¶žKeû¦Ò¶äòÍ·3 šÐÀšGô$Kof‘+0ëåG¶ÂEA*t{F|ÇñW‹™goil1®ôNËFõfcü2W-šµ#×ñÅñ\ã8ÅT×dÄtµÉ¦>CVXjdb¦7ôs„W+:…Qaß&Û3ÛNOƒ‰€ÿ˜¬¤ÁhÏ
+%4b<î¾–5L®Ž£s?&2—Òô—2ª^› ï0ÙêØyɾ†ÞF¯¡I”…šíî çŒÃÆßÉIÏw1éÕÈšIrNѾ ÂgŠ`ätß 8ªÙŸœÄoÿÄŒâMC;z Cþ¤jØ(݇…¥9Qik¹è’U;µ ƒÖ†§ª|;•gžNÛºñÁIò"¢ó;ŠFdέÛ×cð³˜,))èw£iœ³1rÔ|þÎpۉπÂ:ü\/ì)¤9ú¸H mz¬4ºWê"lhvLtn=†TÜ9±‘2f¡¬»‹l¯öPwÖgÿZ—E^yù’ šxð¸ëhS‘"µí†Ë‚©ŽIàbùí“©˜?­Ç‡ñ
+Oç:c²‰™¦TcºŒ‰„¯÷ž¯·ÅVæMºœ_&¤ä®MZ¹læþÈéM§Z £~æø‚€fËlÌ=Wk93‚FÀwöžû!èÆ«:k`g mÊÙˆ¢œ® SÚÄ:8cµÕd&-§éçrƱe…ˆ=1¼&0Þ§´(? s<ÑX…#sVœËí©¨¨êÜtñ#)8Æ ÄbUð6î¿Ý¬ï—¸QM’™ö·ßÖvùRT÷fă ø–Í'—l›¸øS®I5Ç•iíQ9ÇbŸqtŸÄ·Ø…¾uO!"¤4@\˜¹€hôÙÖ¤:ŽS¨Çº¥H¢˜‡ˆ õ7?V\·,쇮.Ÿ~½·JÙ<\DÊNÃQÙtä¬ëÕà¹ÞØ~DIAÌ ¬4b @œ«C
+K¶ç4ÑÊ,ŸÁnhw rJÇp´W­>¥ÏÑ’tHcû_îyOH‡žNñST–­ª›6gÌÃ[`$»kÝ^ÉiÜ^¡íúⲤ»‘¨!'k±†°ˆÖFM¬#¸T+žÿæ¡äóœ<I¢“õ® €Žm)”MÔP] Œ|£æM„ÿy|BnhÝí²âàÞ,G>¿*Ì.Ø~am¦.Jzy_P®}¢­š]dç¨rƃ]¸¬Ó?ç’þ(¦‹Ó^@7 >PéRÐ/ÆR㦾=OMeË‚°ÓÃÔð <jexâTSËŸ1ºÆ›uSæ„°ÔH½t“0ÒËÏÌÝ ñ°J·™Bpñ—숬ú:2/ÞƒÚš¶€«fˆ ºüú›ÀxîYL´LÇ9Gû™¨Jµ“@‡qú’°mѺÏ}PÀ„7ë^ƒEîÎ}¯ôÆ‚ì÷Š |v&#ƒð”¨èßbV¢”UoDD…o"qŸOàö¾aGÙ/Á»!Ê]Þåkm8KG—$²ôÿ"󾻪n5¼oRÔ¤‰‚Ô F´œà›í£ÉÇ}üWgï—‡$j}®Í·):+ÓKÔfºxJùˆñcB\~Š
+V{›ÐÒo‘VIé¨ÓQå¤2Üp¹˜Ë ½C¢/t;¹#oõ2ƒE
+±æSb†Û¶[¡ŒÊmhzÔF¡fž˜T׃o5„jÁ|’Ç>ZCMÊB c·¶=¤-ªPJ c#oªY3ÝOÖó´ÜÿZV*gŠí’׺5Ð.Í.Ž“®®W¾¼ûŒ ¿skFðÈÌ_äXìI</ÍñqEñbÛ-ƒ´NtªÃó æ½›¤é梷Þ0À\lzðYC{\Q¥wä`HµMéýó»¦Z¥ðµTLÅeçEÆ÷Þ[Ã6ÆC©Š |†úµUûCTø/)K2FóD‘ªÆ½`2ä€L˜ËØ_`ØÆr÷®¬è- ìÝŒòG©b{fU¹ ¨Ú% M{¿â:Âí¨·Þ!·:KF/šÅsV‘¼)/ˆ²c¸¥eÞ˜ìS¹Uˆ¯$ÿ•ÒS³EŸÂÙ9 í,ëËñ3ZIÚ?Ç¢KT¸‡ñ–¾*~‚ÉÓFÙ5Å«Ì»ÖÜpþ>Ô Ù”^ÐÑ®Äæ‡Y9„ŒDIIÅKí$›`ök'ådÙ‹Pà³s …SO«š¯qÃa÷c²…d§Îà ¼àþ–#GSé÷*bòUz»š§)¬NŸöìrÁé“eœM}jj¨D° gƒ>{¢‘ªÒ]ßnRúîƒ=㛘Î
++EÔ\£$“VgÿÅx{û;h¤­ë´ Ÿ6y‰ÁPHzÈ7ŸôP¥©ª!žÉs@ŠHƒR.‰ ›om´È-Q‹fÒ -:HŸ¾7ÞŠ‰Z\ÇùÉÄqoá?'ú]í·ëúS>æ®hkORR|ªVv,ƆL”iL"Í$
+ –mµ K¿M}y>
+1ÒÄ{¦”B±fæ6uG?jeŒ¬7z’¾ ö˜ø/„d›Hë-¯~\˜‰ ㌴¢ÄffQãi8`ªx,{•±teéR»ÏÂíÌG6®€qÄÞ^²´Û…˯Ê`réë<èõÒ_YÎÍv4‚ ÚLÚ#÷µsš‚‰6ÀÇ$9j‹ýža\_Û?Ì *!¨†•Ô¸¾Wô$+xãD>oŸäÄ,üâ±ÆÅ⸀ˆSF—GU*ÁâÎèÀ·á„loÛ|»Ï>ÐÄèDYµ±“ïB÷Ϫ/‰›#.±…” )–Çc#¿aû· UM¨
+/)–¼>@b“Ñ÷^Â*·{kß®l4€ÿhÔÎ –M@ÁR|Ù+ÝKu ™å¸];¦
+BÛÕÞÛ?šÞ@ÉìC G£S¸yä¼n…C³%™¿(ñú_[G«{EþR”­äpü…R9sÎÝdˆå GÄäHmgàåmX¶wÅ‹Höù O{ê#+ž©Óçf˜v£“qf¤(ŠE{¨*)ˆÉH8‰e¬¡w\|X2 {UxÛ¦~C•¨EÖ¬?jl&.½À·ñŠÜÞ>"“ZyŽðâѧÔR)eËþ¯z†å}8Ýp¢wïÌYZÓcÇÑ”ru__u+Ã{#½GÀM³—øØFE+g¸ â‘ÝGt˜`N€%¨½&3ã—Î #‰\Núî&¢NCHViñ“i„¤êéwJ¤¶@í r¥½Û©Q[‘‡AÁs2¢Ãð‘èÞób˜¾cikèJÁ^„g–U> ±&¯yÝ$ÇŸXÄŽ%ä!ÞQÓñ‰qägá¼í%䬀)•",˜Ì×'¨b 331¨…ˆ‰c¼wð}sòoó–7Ú„$-¤_à]Oœ¿Ôµ'ø7½¿˜ï…øpÑ&—±kˆAh¢ÐEî• %zm¸œec´«^FAÚ*¦>¾ÓJŽ&vè+–šb¬_¿.ZOˆÇÕÝ-ûèÇ8ÆúŠÍ0àÜç:Ó?Háy¾©ÔOc lï²
+bÐÌp?ôÁBMÏ7‘ï'X¸#•2×µÌ)ç#Ï•ší[×YëöTéÕ!XìÈ×õE¤¸Ye¿°€UJÃ6':¥™,i » úâçáG<ZٶƎ˜)ŽJ–ê SÉÏš×êÓ:ÅËÜ%±qàã²wàç“nœ'«~SbÙ¾"g?Ê+µõ£Baè]Ñ>¯’o ¿€)½%ï´. ¬?8`˜Ú½­Œò ëÞfLÈi‡<È™ûs/ÿöò˜Åˆií’Â7¬ül¥(ŽZt |£zù©Ðœš«œ[[øʃjroµ*¬а²² õØ4Å!öË$î[‘+“¸ñÍ£Læo¦ö°‰é‘èz3q…± @êöÎ 2m½äV„¤{ȸk"…Ͷ[u:ÎFü{l#¨NùØ>]‘5$m(Ì7&_½)Õ3\D†Êx[Š»O»‚²×• é¬Õ 9%Ä>ÓÎ[Ûâ8¨š'LüFÍòßPŸëRp‚f‹)L­Bꙕ4£ûÓ's“Â8Ní0_qáäÎCyºñ͆ØúëÆß_ò®ôÂ~ J:ÄùE†=*‡T||}i!Ó/™`ñZ„/ RÂÖ+U<vi P@¥…{Ep®`uñôe‰ˆ‰Qq=áHàó*ø1ÆýNpìæyå3UÑ݉]mŸñ¢pf»ˆ¦• eÇœ—h!8û‹f¤¢›^kº~ùÖaá4Ãñ+†àuÀ”—R‹­‹ÕŒ`N70Vºƒ]†>µ^·LAÖ´{…Tîi%c¥OÞQJ£ú®%ï
+ó¶=]€æC¬-QNµª+'T{y™²;«£KúùFZío)æÒõmGY$61u› ©ÆYQR#äÂ'mòð‰U,ñ¸Ð[¹7œm±}ªU%1¯h"Læ@Y 5Ž“Š£Kî³ôçãq>ËövL§øÜãȪ€áKùœÏN2Jkí–4ÓæiÜ9D
+-1·[T•Óôp<jw1½-r3HZöúÅÕWüJ^J¯È|Ž0#§‡¡wåí)úì>[¥âÚ~c—a p¹¢P`V›]5l¬Å«³ÜF¨aïÐ>Kg?£Ø'~9ÕÕe¶õŽ®‚%ß3•fÓ6—qK+·Þ\c_ƒCùdŠ½ 6É ‹Ä´Q˜›/1=žÀ1_PëCïF7Êh@øšA*ä… ÜÚ~ªüÜŽá;G2~¢ãUz¦LHUá0ÏQ•œ ¾Ÿ$¤ˆÅ›öôÆþ%œä“Àdïó™€aȽFÝ£àç#¸*‚oÞŸ¾Ãö NJ@¶­ÜT~ˆ\çܧ£F†ÅsùŒÕfEûÙëS)¨¤~Í[VßJ„&ôÍI ¸ŸŽÞÈç PðB€Kxölš¹—2ÂJ«Y÷5Vƒjズ“áJêܬG#›¥`ˆ†@úöÄ!œÌ&ô󜈹\‚—–;îCÙÞ” CûB%“â^$£Nhk!ÑéhI(Wxà®Aó6qžœÛ¡òÙi€¢™›ÑÉ4Ùbìþ*Îœ]<^Ú-Ü·’æ·¨Ÿˆù&Ý©¶&i—e/[¤x›ÒþÕâDóWËWª>o`€‚
+¼Í“ô.ü ‡AOÏØ+:¢þF&M3øéeÒ
+3ÀÔ¹ènLtÚ·Þvƒ¯¡`¿¤ºÿ
+G¯SÿöÌ™7/WhêKhtK9Ë‚}k,T_‚ìת”µ5¹Ïn÷×øÚ •'·û×v–2°Hë"ê2¡©ÖL+õå5øtʾfËø‡åÁ4¦Q²åÐ> Ç
+ÀPÅô¹¥¡Ù‡-Ÿô‰;‡=-t ǵÃsöm×Nˆé¹'?
+Ž{üHÁZì€7‡X¬•wV4:×r¶`$æ§ÝÞtç;ùù%^Ð ye4¥U™¶~„&Õ’ ªmÔü¡*”Á¹WþJf‘ž9°QÜŒþ‰^lÜ°ø¹ˈΣƒåTrµ×Bëò9ø[ˆ(ÿ91øça®ÊüëÈ¢Öçõ+ýY?ñ·êLMl¶ý𢄞C¶°•^GL~g. A{•0·ïÊôøgÔ~ÏÂÔ®Õ²°kuн;™‹ 9uÞqÒo6<h±ÍÚ•áƒÅ. G`UQ”ëŠü|åj@rdˆÞg‚¼1í>÷@}Ýö‚<î[„” 7­|(-ôÏŒÅÓP’õf›†lÌÓR_Ù(Ûà=4)ÏÞ|{+²ÒfÌw¬ê«3ÅÐg7}™Â„Hì1nòe`ä};[µg€x¦Áðî7Ù2°Kh©‚?¨½µc3äöë =ƒÛ
+ZV‹Õ1H—?°DGo¡cWïo“°žý&b°’a;
+%R„Éf²ž!hS˜Ê{‰urø“ãú"Ó² «Zsœä,kÚ I‰<rÍÑ
+É:<r!ÅÔðª hþ Oæ¬"Ïo49h;z2L3×lx^¹k*„,^9¬ðÉðßœpdº‰F½]^MyÒöÄÕ˜ ¾Ò̧߱ɽùεÜÕñ`0ßÁc¨|ñ¡%wF3
+™ê-„{p Eì|®ÐHÁpÔ/´w2FtvBÛÙ?0:(ZiÉÉÒÿ²)Å*­ö{j÷üCïv¢?oEâÊKœˆU`ùKœžÁ¾ˆ«Ž!#>²*7ZÉtP|Ø焇ê/v }eW‚…b§ýï!¥hA`ä1llßÒ$n]A=|ÔåëXÎɆvÌAE [)Áõ‚©ä¤2[òðô-cƒí¤_<‰n——À~_§fù ù[³Îóâo¡ç½R0iÞ¯½¼qž õÀ¬àÆ[À|2•  FãYh#CÚ_ï Âyœ4þÖµÝÌÀ¨*ôø%ÔV(!ã‚Vn ¶
+<V¡(%\áfL›±£´yr³¹©¬ýÍ™žÞÐ!QþÎS8Õ  Îô7š&2(“Ñ"—ž²fyØ`ïÀ/}aÕ\öê,Dœý§ÙürÏsç¹1©æu(º‡^QZbBúÝVÈ=TŽRýôÜ®Ye×ßà*uøŽ»BÓGN”ïøç+ Ö=jõÆÍJI^¯œ£šÅæ­´Ÿ€s¿qÝ–1'YG²gƒˆ–v ýG£a•"0hÄñ=ª”æ¶Î"Öd©nÂço}Í[°Ge¾¨dÎBñ>Œ›S{=#(5c՘ɉ*ù!«¢Å%B1Ä…º9HÇvA­òv¨‚g€)õ%ÙÑÙ$
+Uy)€Mó^*þöÌýËRæè|ZÙoü\›‹ŸîúÛ#Uué—‡#÷f&àúéü±ô–àrÌ—P ^ë¸ù§E~„{€¡T‹ÁÇ-) ^:sÖøÈÑÃcÎÅ_Dl;¡±ñº7°-=ë°UõuaQÀ*J4¢[VÏ©‹²ÆÁÂ| ñ”*²¥p½Ú¼öDd7æyxŽYÔ¸[>(˜‡Ô2“ ÓWŽVo{
+ˆQëÔRuÑÍ´Ç(NÅ?~SÉ-þy¾36¸7ÍÛ¿gÝ:Ð…ÁaùK}gP87 CøTè¦ÔæÆ]ì6ev›¶SÜÃå{ iÓŠ¨¤ÉYú¨Ë©ÐêFGê‡ê<•ÙŒ‹lq[ZœdfHŽØØdjãð‹ÂBoRÜÌûK7£¢©DO*×Íì“8AÐ6x_–µyoW
+¢‡ {9e
+~€`OË·h±éKK¢Hò7œ[ž´²Q(¹¦ÜèÍà_&FÏ­æ#Šå,ÁèI´%S`νŒ»t-oc»e9?2j8Ÿœ4gZù` ´}) |‚
+µ4á²õƒ˜ç=²~+0^„|,`T?N ¨n˜Œè4w_ø‡z2»š®åÃA`Ç[©ó˜ð$îÂòélaá®›YÃoa|[¥Oé²›¦Ä0^Ô;I@7ûÊ–¡B/KŒîöÛ¿Ÿ&ÕçSkOé‰/ûu t)eí´–êšEáÍ&)á²:ïC̱6W©1åX飥]”lh›ŽT ôå+ò%æ¶,y8û ;o2YÔç}ÈèPÙ«ÎH²Û<›*”£$Ý—
+rÇ|“"ùT›Áºã÷Ã…zš—•q4GznÁ±§e568<
+í3¯9Ýq™LSðbeÝr÷—«nyœù‹n‰0¦jY}Ɉ^îUtÙ\Ú§pGaíjVȯ¶¥Ý|ñcªµ%±U=8`…Ö1ŠXÀrÃÆa¿“‡ÕÁ*ªraÒvÜ[”¿\’D cÞL?^èf° ôýÔðòvÃbes[H’ÜÆ×”ÖyfdÌ*­9@N&0r¸"­•rÑ"p™W•jÒ ×úu“v–r¦MõZÎçQ²àÇÖ34€*;æ7ýZšá’ ê~6¸§9”[¶Ï‚æö$†KðÂÛék¹ð—ÑD>¦|[îV¶åý*ÃÐaõI™Óߟ'Ûz©œ*Â5SUöeöÊ4ý–Ævá¨î¨kyý&²Ë-W¹xËF¹³——øeÔÙ>;™ñ3QšÂajª쥓¸‚ñƒrZÿby"æ€ (~¹±9iG»dK“ü[+¤ ç¦ÂiÄëa+·ø»,Þ˜£­+.­—lBU5RP8^[+Ž»éãq€EŠú%žw$:²äpà²ÒïgÒmŒ»fìûpk™Ú( íÊ›03cnÿ€ðÞ¯8”ê‘åtZÎ ]¥Á‹ì\zµ­¥+¸[fpé4œÚMYfçfU‘Õ«»aŽ€E5“&oéöôÉaýU;þÈ‘ÈÁo´ai¹ ¬¿7µdxÆT˜Uý1mc3j‚#9jùÁëœÎ`Ð×ÏÐi']Žu»J™LÂDݲD‹Á¬Ètî/Ö߬ „ƒã© ’ƒê»Qd@âÌ--ñQÐO÷?j‘^«ÉEá5ª÷™
+‹·{«hî‹Öv Š"v†c‚õÜQ:8}ù‚ªðKùCO.§a;8obÊxS…”O äá8{Ppê‡à›C²Í!9 ÞÈ
+Ž BÜn'9)œÀÆ‹gÃœô²㺸æO%l=ý98MÊuÝ)<”¤Ÿ¾×"Y-³~™ZH@>F,ŽøÀšBíŽþÚ¢‡a•ƒ¯*=¿¤ÏôýÑêãUw BZ3U‹—´Ì8À) MtE "€ÒsN×].8Þßv"‰€ƒÇ;ì eÎxoJ#Qb(èXÄÚR¯6Õá"ü^˜Nˆ?iþ‰qtêq,ÿS6µ¸öðó•+±ƒÕÚtƒÃÑ•@èÔ÷m¾ŸÉÞØ>YÚ{°rÌ8\žý8Å´îS:†¼öî¿IÂQóÄ<÷¾Làëb‡F‹vr¡ú°øtþ =gÐ™ÑŠé§ŠË Aü0þ
+–KöU©6£,X~Íã*¼Wfn’yZ’dåšük³I²³ÝÈhBBO8ô {é¼ ¸¢uçziJ®J½ÏõôFÕœùŠE\uª@SX"–Þîpæ-]n¦išO²lÁ³ÏÈ!qD¼Îê²ãÊ¢1€ˆmÎrgÞ¤Á7²”+/…+;ÄõI×EÀ @ã.Y¹ïL àÉדþE8?šœÖÔ6G1‚»{œvל)ªÿÎÅ4½hÿǨ2õ7j5^vûŲ­¦«Éàm¤ãMm˜Æ\ñ$‚ªî°³çiâƒB0°±>îþæ¹O\ÜÖæÔC¿l¤ˆ4Ô}Ò{ä:ƒŽU˜-~%}ÖŠêÈ™Nâ}3hw%+wTŒ`Y¥¼@äÜrrð±Äz–H•K0zr_ëóÿð ÑJÅ;í(”Ç°òÃ'¶¬R2ï"\·›|¶¥ TmÊ[#
++™ Ü<™Z¿Hz¨`ÁðTôŽý’®O§¬bÊ­U±qÆUˆþ†
+4d™l'-úþî-KhL¦’ÖY I•r¹V`"¢n•îUËßüµ‡!Ä6ʱðf”Rä ?’+›Ö%€°W“:UîFQ@ز¹üID‰‰ÚúÔ<š&K$Ç¿N7Ò±SOöÜ“:˜c\láRãÈ$YЭ
+‰ŠCrV×üj s¸m9PrŠñœt\G¯ÖŽ;«;r2Ú•FعÞIs¿Ԁbß ºÉþx¸xÿµþ²ÄØ4ûÊÆxc âçîõ´Èg¨s+"“<…2ïç–¼ŸwcéNìGÁ§~‹¿ò+Êt c(~Äu°q¦š)–·Ô÷7wú}f›ˆxí0õÎrvtgì¯ëYvQ¯Û8˜PXÈx4®ôÆFõäNœÌË¥Ë!¼g°9Ūg°
+ÇHNNï4&ôÅY:¾
+¹ØªÈ•Ö¾‰äý‰–êzòzéÖÙ5…«Œ’ûQ¡RÍ
+¹®¥Ä
+ŒXœ:ÿ ³ZºpÒÏÁâžEZ”Û³©ø7{Ed¬)gɪìmêÞ:¥`üÌ&1‡¿ÖRÜ6V'©3[¼¡ƒI®ñŸsuW0€æz¹ðt˜¨_ç±”SÂ?øùB®ËÊàÑÂ{SBÖÛbJÆø úQŸ.99ŽñÐN
+WqI$Ú¢¢¨Xà¸äÒfüâìúÊul½´‡\¯'°Œ=Be¢,׶òFžð¸X
+C¶ ³[NÑÖ þØBíÔ{LJ$‚DIú|÷4ö îQ;‰êdÞqNYCŠÙ€à±ÿÕá–’íaRZ3䈫î-W&>Rp©4{&/ÉÎE?5”ln0doÍsŠ¬¹­R¼ÐÔP×>õ”ÖÐF‡¸Ú‘è…‹ŽS<ܧäSå`^bg4!¿d0¹@‘¢´*,Âú%Bœ@gH¶; mSµ‡IBÃ1Ì­µËô!YÑMµRžV´%ôÚ9Cì
+l#xÁб
+¼|DkÉ„÷} £ö£Eî°¢!=2!Š6<ÄÚF
+¸÷J¤dáC‘ëWª=¾øg¬ÃO>L‹«ê«"Q_?¦l6òúEPøAÖ倈9VîèÞõçA ‰k³æQ¨À¾u–ar–d<“2Uc:né‹,ã°ØÁ© rÔhZÃéªËnY#J&@6Æ{F¯•ŸynÝ
+œüLº,æ–¬Mq ì£a+ˆl_ù'©Š&·¤,ø¬æJ=ȃwæV]Â`o(ÙV]_U9ê'„w¼¨TzÚû>¨šR˜–2ƒhÚ¾ÅÏ Xƒ6v,>©ÂÓ‘ÞÅv¾'‹¹ZÏâCÇtELœÑðú¢X” …tè2ú±÷íƒÑTäøŽM
+'ÔÞZ³ôMõ 3¡î(Vgp
+‘Aªüæs;7ó`1¯>y%f™e“ÉÉlB©íCÏW(ƒ2ã~ñÔ}ä‰r„²ÿùZŠPŠÃ(I³¥C°V­ ¯³÷ða 9©ú´Û¡Ú€½¸ *ÓD»£4¼×3œPž_²åÒe2'<†ÊDý*ž/N,LTODØJµÞh® ?p|dKx’‰‹\êÔkÄMÆe£÷J'Fí®Lö\Ô/ä‘û·Àõ`ÃG|f2¾þ?jK—=.‹}VvÀèéŸ*.áÖñ*™¹ÿ<ÐÌ¢ìû
+ãd°T†¶¡å7Šû<þi\y
+S?g[ E¨ØšÅ‹w
+ ÆuäSyPÝ7ô¤ÍpNŽ¯ÇWoã.®¿XLÅæÙæ(a $–˜©,ò<^E'*Ÿ•W›Ô˽ò'jOtÞMk¸óAû¢ÇA¨§š6?˜4³µo.eµ°\S»ÃPAil=b‡*¢’=€-”'Š(5Ëð™£L#ß´´±)l™ªá ·6œòì7ÑNáÅ*)ÆÓνtzÿ¦¯ùÇœx¹‡ä†ÊµÇÐÙ¯i¨Ÿåøî\ËJ.TtQˆÁe•6}ÐϪÚ·U0Ô΢ÎP9~bŸ¶FXzÖD)ˆc숮L]ËÜt›EÇ+ëg¨*¾¥ÖPSuÅ<Tòt¢«Á\ÖŸÔ­[_œ[O†¾P
+Ê L™¿<é0êd‚"߇WL±a+ï¡Ëq¼ÿ"p€Íb'{sÿ}U§²êDTÂçÿC8J@€pH€þèûÊã(f²2zà°ð
+ÎI q`B3<á6tÕfeñçÀ½Îõ‚sïÃ3"†I‡qÒÀö¯K‡4çëÀ›Òš8¸)ZÆ“ÒõŽã[Äß}ï–Ò}=j¿BY°\¾*Ù>ØfhH~ÓÓ¢†r³ˆ¤K#£õn¼Ø.Ä©_î“Ø¥6mWŸ5Õ¡+Ã"›†7í
+£Èøe
+nžçÆ—œ¦_Þ©~¿ü´°æô—ûùc?‰A|(o¹Š²ÒÓ¦µí ɺ´toùâÅW¬Eã6ž:?«ò;— „Y9'VUóŸœ6ANì ‚K×m±Žã©¾ÛáŠyC—8ì¸$q=çÀþ–VÐQ(S(‰µy•ÄïHÖ~c *òˆAŒC„mYѾ š¡žäVî‚”rÊõ…{Õ¥Á‹Ìàl7ß$GÃCºµÏmo{‚®©‹ófx`ÑÏ]ž_ég’ÖOF?Ý^ÐøñŒ¨ÿç0-;/©<Ì7´
+¾û
+1ˆä®ÍK¿”Û=ÿáiÒšà|h‘@-^ŒY õ ¡ Ûg7ådW(O…XùMÐÇ/Kªmâ+Ê‚dÂ+9ß
+öŠÕûžºó6
+ªû|ŒØÛà:<çrˆ¼îY¥pœ€˜ “Ó:Ϭïc©ƒb:ù#èÞÈí×™"WŠ _qïO¹ç¼ŸÎ ÅñZXYXMŸBàݵIqÀ®Lø ¸÷¸Hr…Ø7 ©†ˆ|}¸ÚðôEäe×/óU·æD}âa9ì 骚ûÜzFäN/\w“r4ÑÖ¯Êc”M?ålÒ~3^Èýóö)÷–{‰°žü"ÜÜå"Îò€‡ôã‡Ç ISˆGArLËÓÏäÔWð\ï8Ä%¨&ä¡Ót_ÚØÎW-@
+{
+^*8`]À!Êv+Àíé†Ð ?hÀËÅ!4j‡¢ëñû=ᄦéÿ‡g£Æùßµ,¬â4¨§$£y–ßa®~«çZIĦeûæ±&VW3 -Æ'Xp™F'cMIõ”#«ÉjÅÚð‹_™Í|d“ô§¤†ÒƒtÈʸRÄ­ãM» ø“z¬õi`¡)t2´Õ9ÏL¹óÆ·“Åçöå€*´vM‡i‹É- &§ÞÚoàŸ}ߟ-æjfZ¦˜¿’™Î¨8 ›9+"vK1®!B¬ãiœÌ ËLÝ”_;¿ÜY,J{9§ÝSV« NÙ‘bЛȀ5*’Ö–«‘ù…ûێ뜰¼áÜ· !ªˆ‘Åcµ¶°¢ÎÍ#;ƒý[$K5SÓuñÖϱ¶Òj¢Cwvêoî”øˆåßPû´OøÂrü“ñ©Û.þzgd³Á1rî€Ä:k"¥^Í UÙ5•—Yš­NåS“žîaïK7–öòU;!~¦ösí_4ñÁÒ `š.ÞÏ¢hpݼ~U¦æwð®}V[—<,£»{ºý~;KîиPÅõP[a×…ÆVÔYúj°/Ë(Ú50Ù«‘Ñ÷;jéôšò¼ï24_;Å© ÎyW-D }µ#À/VïfÿÏ+{k<å &NâÿuÉΈÑ}L5P¡¡@”ÿš—Ÿ™®7ï šM«#Ì—‰`ðºæb“i¦$Ý1ÀЧةSƸ"X
+‹™ç3ªd±íNö^]Sïçպ±õß…¢@‹DwV’ëŒBί¼y¶†ªƒ, Œ\?cämå,À#,$Vî‘<«¹²¡ÈóÛ… á¥àZq®[ƒ¾iôËÐ ufïòw&ò9´{¾žU`4¯¹RúR¾ðÎ;*Ue¥L…6zuãCÏÃ… Mõ­³C+zkˆŽ5?@n¥¯wHùp Þß’2Ñ=˱¤µ+“ê#èã0g#þ‹|´Öh™f AÉ‘”DÎñÊ8‹q_$°_1Çô?Á|l I€Åë§ÈIò€Ç¿Fdõ˜KÞ àÄÕR¯óܦŠ 4–¼§hR(aš ¾/é øBq²Üñ¶»Àò;*
+Š&Mœ"ñn@÷Ðäl:„ä#µRðÿÁL¢JQß#
+†Q£ ÚåºG¸Þ$&¹;íä0CÁ¶†ÉÁBg¹ TôºaˆHÃg$±ýÈžcaÑ(y׊Ɗ.ÄBÀÙr R€ ÝV\DøØä&Ší=¬ÓËþ‹Q³Aº^´¨¢dRŠd¿’È¡ô•XÎëÂD/7ŸW9x¯Ú‡ „¥žrO ÄÚ‚îòˆj’ hXjöé¦Õ#uIË0þ úq <-Ë—ŠØëJ¢êɾã”í%EË}w|¨ôÜC:¾‚Z¼v¦JÞ1j¹ ß׌KÿéF÷Üø@ô»õŽ.Ÿp—;Zà x«ã7†~—⬌,±Oê£ÜdM{@TÝOí**ŠÎ··ø=¼Èæ¦êZ¡ô¥Ï|W£Ço¨ô»ûÏèõÐ{R â´ú7.£õ×ÌcØ \¤=Š#Þ_¬Ý›­(jžC 1÷‚¬¤¨i'ËHß‘<;ï|ùߟÕ`ñ'€†–OÕNGÎ貉Èn].At˜ç³˜¬Øîzä#¢Ó) „æ'†•áYQõÖígÒà:¾ì<Ä„mÀ—¶^×±)Ó!¡¯Ó,Y|‘ÜD¦T®»åä]zâ~o!»
+endstream
+endobj
+649 0 obj
+<<
+/Type /FontDescriptor
+/FontName /HFYFJK+LMRomanCaps10-Regular
+/Flags 4
+/FontBBox [-496 -290 1501 1100]
+/Ascent 527
+/CapHeight 689
+/Descent 0
+/ItalicAngle 0
+/StemV 89
+/XHeight 431
+/CharSet (/C/H/J/S/W/a/c/e/g/h/i/l/n/o/p/r/s/t/udieresis)
+/FontFile 648 0 R
+>>
+endobj
+650 0 obj
+<<
+/Length1 1941
+/Length2 2670
+/Length3 0
+/Length 3819
+/Filter /FlateDecode
+>>
+stream
+xÚµUy<”ëÛ¯¤4•=)â)†±ÌŒ±6”} 3Žš±”Ęyf1cfÌ<“])©l…l¡…$âWZ5R$'K
+•ci!É©”:á÷ uZÞ÷¼ÿ½Ÿù<óÌ}}¯ïuïk¹¹Þ„¶¡ñ@GBã0æ
+Y<.Î
+—¸`ˆÀY
+W“yó`œJ˜Û¡„Á‰€Ä19óî€Ú†IÎq îî ˆÂⵦp©°#DDBÀÎ? M{^ ؉ñÄoàŸm¾I·åÁ'Ûɉˆ¢„üZ1
+W$ ÿ!7?›Êƒ[M ç#‚
+Îö_i° ñÝÆ
+3h,*·><>ˆ¹èÎ\:ÀÏ›a%ß ¯M2ÄÀS¥.Çå„4ŽÀºñ ¸EPÿ?“÷Ë^Ž"Ç¢þ5·¿(A,NØÿNùÅÕ «G¹ñAÎ/KèÈ
+iî,ˆÊœOõ¼Ý¢ÀóaÃep@¸Ls&ñÈqàÞ†ï'–ø†Ð8cÓ_0¸m©l.(Æó4NÌ/ÊájˆuX/’-y‹­Þ¿·Óœ¿—Ê£±¸ ÀÐÄ ”0„Ü#†&&@
+<Öbšíˆ‘ÑÌù÷3ðC0Ó¯ÈÜ>?G3þú)œá/ÈwÈN/V@Û™Âù‘b ‹Þ ŠSI²æª'F~.€»ø’š›6ƒïùz{Ï­I€Ç½X4ø¿ë¸JV¨<*8ؾýòýiä÷)ÿmkË @hC¼)\@c8ùff†Q?Q©ó÷èÜ”ÂGø¶_b
+8ò¡d×Ö©<ê¬[Í~R<’Hi²éѽ矧tÇe ¿±AÖ糪kIFÄñ¨©EB'Ówd…ÓÉôú/
+œ¶:”wÀÔcf$ö*p´&‰=Õ÷®¼sC…w€ÉeT¶¤ÅRåöx´b éÁÐ4Ç•ÝSòE÷µ×–´îÄçðŠŠ6™j6Í1Ô¤††§Z+|egüÚM^݆¶É ¤[§Ï‘¶ïÙ„ÁúWõßÇõù¬ÎFŒ„µ®¿šÐŽ*F?~³;ú%e·¯TD[ŸVžzA¿ßd˜¬®QÉhóuҔſ³|¹òv§þ:bJ‰ôö àèd¬QgÐß³LZO½¹5!qJ,@<3Õœn6ÿ K¯~ºÜÄëÓû¶i0÷“‘“îÅïó]ùÅÆßr€>]y¸7‰:¦Ú98hép³u­'õÙ­t4êÒÓ7œÍ’|—^mxøÐöñŸ™-§8ôˆŠ­Y1ÞNWÆkv©Jì|A¬Ùlu»så½î¤ë6÷ö_nyn»p*9øÆß»ó|ýøSy|zÕaÇ®‡¶<lå'Ë‘¦Î,³
+sYpëY8»J2c`o4úM¹5ÔW®×hÇ‚¢Ü⦾Ú5ŸîÆCŽÅW)+å¬E®ÌD2"‡ƒ÷Oû4¾*N(Vî*›u8ÿ²1 Ç7k°nõãÃYËÔ¥rù]àdd©¬òlêÓ/þK,ײ´*C¢Žà¾ñ» å:~šnáUR2÷VÖ·M=­k6½r!+ß0!úš#=fuûF.’¿?Rú©.öÃxÔx0óŠé)#ÍÜýZ“cãœtÌ— m…Ð EG J‰úÙoÍ;3IIhW•‚ÕˆOOþH®MŽïPjºá«[Û{à]0`+8š¯/«VtO?ËѬ©kŸBO©«³ÕlÓžÀBlXQÑ;Ýp\¸ÓÂÞ ïȦ՟&™Õ‡ÖE?X™þ›ýù[ÅÛ$N”¿.ïpRYTѱ½B.&ÉDô·‚Ž­Ùv/¦ÏUãÛ(ò•¹×n$¤e,zô±àãrü_‹dú¡õÝKÜ~çÊçÚ’ÿ¦,ö)ËЖY¡™
+äGÖiH
+ƒ–[Ûxr&ÏÒ?ܪ{’^]‘R£Ó1J²[3®u$§t2Ì¿”ÏõªW9uç“Uj GZŽ½"KTõc^ïómz1þ¼Ë­¡JÂ9¿DhžšÁÁÊ únsô,>ë{^róÇÞç<¤UUü¶šj[pÚ§V Y–ÚKCʆ,»°øXÄnÁfÇëË0Q#.};ª=´“­N_×f„7\góŸ%*{0Ú}ªÆÃJU/ì¦nê 2x£vîs¨R"Ö·A•ØrH?Öà q›¶f:m²õi£o:m¯\&»Í“”ÞÁU<òÄ|‰éꊜ®Ò&ÂS£îôöò8+¥‚?O!nø­¢tZÝ¢iÖ—:ÚÂÌSs°º7;P»>Å)©÷Ë€WÏŸ}Bs‚©£wã䪮=(¢ÄÅ)V:½ªÅn‰Ü¬xbùi ïñ·Í[·<C†ö<·u8`·‹SyQ:ô(¸¹»ÔÛ¨•Un1°lô¥Ý¸{C4mµOŽ¯ âˆÝ¡v“|OoÂÈ
+÷\ö_|¸ƒ©2ÙºŒœÄD{¬WÊÞÍjH{ßîY}%QÕÉïPú­'¯žù5[ÏìI°þ€› {QϬ®(ö­-ÚÞ¨>¿™¦sÉ_Yþ~=(‘ïk¡õ°¥;:ÉëŠÔ®àþªAåêQÒj}DÇ€¤–¶}@R¡;rýÇUgº”È(ÃÇÆM­Æw—EiÜÍݱ«eƒÒš‚ôgPn–ÝøïSÈ N‘sóÅdhSæ î‡—/ÖË û„‰"pRÝÿU|^óÓGK¢µ5Ýs
+þ¸f_5[².î|ÍêæãÁëËËÒñí+΋•š¶Ýž ?ñ”ŸªÆ¸æ´ÝHS´ÉZÈ4ß—ª±æžËÅ
+#N]ˆŠ¨< V»Z>½^u{JnC’Wñâý@áù—¹—nÈz½ƒa«»,M‹¿ð×Ý,D¸Æ¡'ø¡·išY•-ÓDLÜO¸fÒ²dOŠâkõRœÏg¼áˆËßÂ3§6à™‘Hg÷Ö0–.qN™+jÙ_r:qÔKÝ÷.çÆÅ¡á³Ql-‡lÂA¾™iïô’è’Í߬»xv/é¦ÚÅgCrvÙöÏ•&ãwfëS –aÿêt ìQgök|A%„Äâw$ÕÝn–'ÔkÔÚ¥ê&Þ^.uvfýó5æö»ã m‹ÊIcÃå_Ñlb³jä/½QBê·hÆ›m
+—~–õ¾Ý©Ë²5›ßú›µ¸?Ò/F/t ·ϊחà‘ÜôÉùiã”z– LRtJÚÔúþ@¨ZÕDî‚\Dº„ïç*íã;ÞGùeËP´ÌÏ¡öƒ ÝÝÿ…ƒ¨Õ
+endstream
+endobj
+651 0 obj
+<<
+/Type /FontDescriptor
+/FontName /WSBTHB+LMMathExtension10-Regular
+/Flags 4
+/FontBBox [-24 -2960 1454 772]
+/Ascent 40
+/CapHeight 0
+/Descent -600
+/ItalicAngle 0
+/StemV 69
+/XHeight 431
+/CharSet (/bracketleftbigg/bracketrightbigg/parenleftBigg/parenleftbig/parenleftbigg/parenrightBigg/parenrightbig/parenrightbigg/radicalbig/vextendsingle)
+/FontFile 650 0 R
+>>
+endobj
+652 0 obj
+<<
+/Length1 2346
+/Length2 10386
+/Length3 0
+/Length 11793
+/Filter /FlateDecode
+>>
+stream
+xÚµvuXÔí¶6 Ý©¤ ÝÝ©tw7 9ÌCw HwK7H ‚J— )ÝH H+õ¾goÝû:çÏïškâ^y?ëYký†FS‡CÊj’‡B`<œÜ¢
+ùG gò/Õÿ´3/'|žXàCk…€}
+ÿØÁ#`ÇÚö/çäô—9œèle󷜚óÈ'òWx«p¹
+ÀŒ›_ $ÀðžÖÿ<ß~ïPøXÿ ÿz¸
+Š}ׂ½B¥[T6ë|V<jÔÝôÆ>žâ:§"Læ ηs}_‹‹GÂãëØG/~iž8:)ülûá˜B xª¯::‡5®hh k“NZt³ÿld™7bº¹å¥7`³Dô¡~>CN‡•Ox<ç”X{
+øÉ£ü†'ãâ¯AÛûAUíªfàx§¿A;Seíaù quÛX˜ŠQ«Ñu2ÒSþÎË8ýŒ ÓæYV‹à’(ÒCK:‰­TÚø ‰ÁjÛˆR>:©v¤j€MÂ͆Ó£8²<ÓMGTË„‚7É9itðá9öTíS–Õb‡ê¡”•—u/q™KCg,Ú^®]ŽÂtR_[ªµÒ†A«g°ßçdôä¬qã¨O¥Ñ‡E®4ý¬MÆÈå$YŽ PÂàü’ÒHѤak%[[ÃE†V_YAP6ùå‚bmÒˆÖƒÍú„ª(³™ÅÈ{äÙ€Þ4óðÇ Ùýûœ ƒ}^[¼‘h $…(
+ùÙã‹._=Ž&0º¹•ãn,¿väfªo¤œË`ž•lv”¥ÕØÓöžsvÎÊØ­<žÝ>ç0,FJØ}èÎïÄKA×ËròéÞö1§“cY)cÐâ+òNØfïJ’q§¼a®ÌåQ›âD"07î ß]OÊ)
+ˆ%Ø’uýŒ»cL&›×ôìì¤7úËÒ7UüCÑ>¨|r ¯
+kÉäÏ6ÈQGWPɳ }Âü¥oÅ°nò°¶®ÎùïšQ9K±z>“…7™å `¡˜ˆ<zý·×?èKH•²]W¨¸Ý{Y»ŽÞÈ3ÇÐBqz….˜Îë>3®I}ê 1fèì]F< c)¨Û©:¾óT1R‡–!ÞΨQÆ<3཭UóDˆP¦Ó½âkÆÙ éË+ºÛ]p=¡ÜŒ2çG“VÝ`4c<ƦسªQ²~e&˜‚¡1™&á?‡^Kzlgèu|%lvȉ/%“,vÙfeEzùÔ,<ÑÖ¬IÓöù26_ž~%A#›Iæ*†p)ß1_¶œ˜1)ÊÐ5è-Õ³Òã^O%*íI¬8#6o/¸^” ’5#“'Jvßô§9Zœ &å %F-xæeI* /i51°·ñ”{ßÑ1[0uµ†­zÕ¸¥¡¡Ô7¶AÑ
+j‹–]S?\àÇ”™ŸcFâ E?÷¶ÿÒ;g0Âo1è/ÙWgÜG˜AˆÎŸ.Ð%å~ÑÓóÜê)¯ìBù¸6!MC^ñ‹Qþ4öÖ%ʤţÌˈ¨Júõ<u,ž;ã1ˆ§35q¤ñHÞZֱƎ5¸jÈbŠ"³žnZ"¹K4Ȇ'W¹“ÌH¶í c™scG‰·nÔ§E!/–cí4$”NA!K×ØšSHvô.Ε”Ô ÅUeö<IÞ×õ’AM9ýèYmÅmx¨/n|ØVP?Þ~Ž*+£Lü¼;‡õ6cN|I¯¡ô­gç×÷ÌÄi:ù— þ¡0(h$åÚ»Sòg;÷I-y®8õýIDAÛÂÙuîJz“Kt¡J"Ã{_¿£t.:DÃÎ…¡”±³(UõˆÖïséh³TºüÅÁyJtÝGPÇö6³e©W€îo ȧ±\QtUòêdª›¤$Ðö-E¶DUkz( gP²_€ªe÷ÒãÏP Àc9œ»ÅŠ½´*îjýêß{ÀÀ ¾I—…óéô6ý¹9ƒ2ö@pUJ*†÷@½ï:Ÿ˜¡gcA<’€aÄ|ÙÏ3ãÔ€);~âCÝ»ÚHœ3µA$¹ÝàüÛæ¢} &^¢pG`·åJ·ïÊ-!U[û—]•aï·|È—E½b³<?78W_§ÊW ´ Jᑹ›È¼F,-À}±â⟊¬¤h0œ­þl  Ê:5avÒ/Û_ÿ=02´A»ƒ·à{÷ÕJ ÓÍíªÆ#/štΤÀž­—rM¨‚'P‰ÓÏÅø_ýÛ9Á´/¾‘†Ø~cç¬ÿ”§ÊuJòb ”ë±ãø#ë[ÿçGžö›B¯X›ÉôízvÂ)X×Dü§×2 wQg%Î3gê‹Z?C‘;±ÉûÛ¾§r¯ÃÞ:ÍÎ÷ÿl,VLWñÜåA>¿8h²Þƒ,%÷a¦‹gâ&ÄkU?-.Te­5YÕ7Fº¾¦ö}ƒl|’åÅØï«Ò™§æo5J©ÂŒï¢6lKöµ´~¸í(>çC®ßHÈïóAùîìi2­4üFN[;MOº™"ô V¦Ø¶NÞ^óelWi™âÁ r¯si,ñáq±Í¼e;0_Z„ ñ²5æ‡Ëvd^«±Ð©YhyýX»~ɇæã^åê‡LlE^E‡æÆùa±6ÚùžÔhÏÊäÑ̬N’ºGÉl—YcÍb•¢$­Ñk«\œ«0o?ïÌ7÷kò™ŠIf,ÕßßSmyúˆŒ+z–Ÿ$¿bùáóróðtø×ÜUÈìyè%
+TÑf¿?×ðY¾Ñ›×7oŸM<¢ž>ä²vã„KëÐ;Æ?Pg£
+ê|­äÚ8JM•_¸^ùª>Ñ6 r¶Â4®˜ä'»Ÿ°ó
+aŽ![ÎÖŸEþø‚ÃôÍW<q("KÕ¾ÍödpêË—g&Æ´È ³ÖqóI(ƒåß+f¹.ÅÈS¿*.­§ \Z sHßÎ+èÙRcYÙðÓ|°á¦¸o`•×róÿœ3"#J$WXχ]:Žy"±²¤Àb¬øH?Ò%ðxiQu×°s—³`‡tФÜÀuCúS.RÄáy—?vdãwÜx#D¼×¯d
+’UI•-û®ÉsLuG3›Vd¬ÔFßïºîö»àzHí—•®êÓqXvÙÚT?NºšxÝÞv®[ãð’X$o®æMÒÜ’£±Mc`úÒMázöm“BÄu@ɵDYŸPô×¾¾wr4ö•ýNÜ!ëfs›£u ‚"MbwÐÛ  ]_6JTh÷Gøš¤¦er! òF5ù‡'UÜCrs™è¨%kb±ŒÆɯ½ÔóÄú*0PéºÕÆ c).^›TöJ±ôU^QV'C¢Y¨…Ï;3Å3ò• “26Jc$omÃV†Ò_@ïpj("ìyºÐHÍ×ù'ÈžC˜Y.Þì}—]ÄdJ_ͺœ)2‚$Ø~Íù*¹Ð´P/fü©ƒ<A!jŠÓJJ–E.“p¸<*L¾ö ‰IÖ@ÿ…IjùmýË5¾Ø[?Df‚sò³÷×Ë…ržwÝsˆ˜’Hb7#¢q|‹°6¾ÿtåˆlÆ`<iq$øþí´=Ýp‘-,àòŒ1{c…ñÂê vôÆtY¤Ý.¨S©ÿL©£4ÄŠ=9—ÂLeæ¥úô›B†°â’ø+±(Mc@­b×5ÂÍ‹\J¼ñžG”˜:¡O—ÌŠô«Ÿ‹?nUÛ|ßehž¹zo0žºÁ‰ÏŠÓIf*ñ“¡ïó™)ôíCÍ7²;
+"÷¨Š·hô“Ú>®(®\•"¢J„Ä¢DË‹Ú÷ø&+6ò§ÉÙÈî„DZyK^Æ eI?ºÐ(2Û>·x³Ïªa¿­Ö×Ü8²òõÜ|(Oo_Û0¤5-òJ×¢×O€‘Ǭ>Ó°°Â([cÑ÷Š’¡kGnmÛª~[«¬=›Ï§'6÷´ ÜtJÓ/éùbÖº=4¶Ö·‘Šé„ù/O7Ch×[-¼hqǽ^áº=­§Hu•ø‚áŽ%qo;f>€$ w•DÊõ¸Å8-¼…u·zÈó…DõK|®½}Î
+ÐÎÊ'ªç¢?•LE™c’‚溲õœ1x¨Mämx Yÿ4¯o[å&|òq.Ÿ|x­LP,äï]³C0ôÃÀZP+Ó/NvBÝ{Æ9•¸ƒ>: nî—¥½'!ŠÑº²“ÙÒ“Þx+Ÿn´$Z¤ÎY½k¾ )]s^לּ
+@¾€ ‘Q×ë|Ùȳ?»íã ™‹&¤ñ/™±$(Y^BL»UÒ
+k#¦ës^:VOe*EgŸq'kÁjØ
+ï™ÈßÐÇ)Œ¸¿ñζÃ:ßz½“Ö ‡°’RN¤€#Äú%ˆ½\ÉÖ%î# w,™®PøwïAvîÜÙUy%JýÏjú-棄
+Ûè¾â5A·ªÐ×XQ‚H"hü‚O1‰Ïm´
+ýT~q¾ã'à¼Í‡P·Z±¶=åEŒi!M§™iÄØ ÁŸÕH»ˆïé×i*Ÿlý¯ýLsÕaÖ”qgÆUrxg Å™˜Ì—vØõÜë&$›G‰DÎeû.õH7£*/‡\Y]è«— 8ohêÖÜšiqÀ<NÒƒ2Ï°üÚ1¨ÛrD÷Îå%rç¿-_´çåß(?ý‘'Œ]¢.î:èEÆðV»ø -j^†m5ÊUkr׫0]qzõdy÷x¦±¸>ñÇSŠQ%Ôô WÏ2”VO§Â%ߟZ²6?xé<`ß%$äWöTU>9q‰D†B«o'i·q›’ød¾Qo´P?-I¡cÔ
+Q“ fÛñ&MY²ú ˆâ ‡’·:¶„ÆÑ›1 )›Ýiþ ./‰z3jƪ3öHdPL¡±€¤Q˜×nˆáÅJ8Oûsõ;}Kä9
+YJa±‡”ù¤¶—^#³ß“zpÖwæIÓÊpxÙŽP>ß~£É¤ ¯àQÆCèÌ™µ‘7É
+}Í6GBŒz¡Ù$§Á-7¶ï¾Ö›}:üæ7ê[,13N3Ì#XUWͶµÒF¯*xöqŸi“J›Ÿ}ä œ*®ÅÐ8×äEg)ápåà¾-±Õ©+ð &´.¾ÄîwF¯±A`‡›ˆ°8+îš%ÌVOXÑýÜü”sa{ÉbžÙàñê«Û:’P'wýâT;±çE̘î7ä›´^þ‚¥Æu!ä!¯{’ Oú;ä8û%©4;°c:YTˆuŒìdK©|îW—‘˹ªšOŸ€˜–ý±o«^t¹¼3‹âþˆK=Éš½cÐm»±¦ÍÐü˜ù}Ú6[÷ÅÝÀ_¯#–fHúË7nýUª|B“ȵOÙZ›xÐ×ã'òO=dž§ZìÛ‘<áFª&¢(„€š’®n“M?¯˜>vŠžŸ¨PuÑa~GC±óüÝ°wÿǤµ@Ëfiò£ã€‚,7¯^d§\Ê¢¸åXVåOtø19‡¨Âí9úhê»îã¿fí›>åMB˜½yŸJ~lˆŒ„ šjNÝ©×ÃZ›ÚÚ?Ïã{(4¯Š5#-¦ZK´G»Óúäå”h7ÛC)ê2Å0V°ÊF$Š\¹€R° ¾x¤s!™˜!A~©c=ߥ­`x?ŠÐ0ÃJ«å¹§.ñ1<ÎFìaýÓç9—€÷Ì*)§ÛÓ‹°*DlÁë}wËgŠX1öP-~ù\* TV_éUá'b¬5þÊÔ½EôÒÌX§ÇúeQßoßâ“èÕGwtÌf‚iåAñt‡u윱Ó!¤ŽOHÞæ”=‰?k 4]eI¨ßXk.
+›Z-±¬¿ÛÝk :$ç7©É¨G•zfq¥ˆ×e¨þìö-û›fZÖ{íYƒF@™É 6v;HIýÈcVN ^cþâ}ĨËø3) X˜Z 1±©/ühê«Éxô ø5š€IžêèŽn¶ØhæëõaÈ Áúúñç…n8»ZûUû2m2Öüô"Ÿ‡×ÏػӾÞñPe¡?&}ÊšÍ4©tÉ0dùæ휨¢²b"⯡’Iˆ“T[Výˆ}£pÿƒ•Œ4—ŹLðª;é~É’«Û±%¨tTI×Ã_“0Û©ª¤v-¹H™-»§+9¹ê~á†Õí}Äû­Ðî>_”^Ç™p:c£Ž#Œw¹ØAaï6TÌAIÒÏé* Nó(æfn’p–÷.Ñm¢«×è?yéí Tƒu•cKlÔÓBâÐñ¡‰SXÌHoÁÂäø•nŸ®O"À2ë«ÃÂg¦-O?g3ÍW5hæCo·0›]3Þä¤n?írDQ…á|&ÌF?äõïË’Vv¬’4EE-(Çóõ8[5’"ƒ ”~É…ýÌ®°K“m¡ÕxûÖ'ïC`‹^:¯&¿÷ö™›ég=깟å@SB£Í÷D4 éM…Ȇ<%¢›b³gïJ@$ïaœ ­Ù¤
+ ‰ ÷iõWvΤŸ ^}îó
+º
+ ÃTuGáìp—W ý2fãõ…ÕOÝûÚp Ý¡Ïí+‘i¿ HU¾Ä¹uù£®Ò€/Ý` Zmü&¶Ö'hS]È+Nz|ÊsÜéûɹãêjòJÄ]cÖUƣΨ“q E_T©4à›Í/Ž‘<cc¡%ùmïV‹ýß_ë†;¹$¢Ù}ªrÈïè)˜ŒRÀì3í[NL©CQÞ¨G Þíù4Ü9øæµ ½.=µy²b²5Ft‹D‰<:útl$r¹³Šm/S=t¼* ò6NŸúu’î.¨™}xï²µMì8sZåADôý=t¦9ÂWØŒAµáÇ~š yS@ûHrÕÌ$Clÿ(ð E/ï5'_/$Ÿx>Kåa¢l•Ü{}ÚkÉôÑ[`tÞ«m„ŸæŒ~J…
+tH4ÛXª !}`ÀR
+fÕ`° Ž'ÿl¢¨¶ÈÜÌÆ—Êýb?!¬Æï4iQÔl(÷˜S’ø{S¢ ‚è hfW˜uŠ3—öõŠGD©‘šý>Iò+µrµ®Ï.:iÒ™ÏlC¿ŸkOœá ó8Mo‰9a !KÁÊì“–c7â&s§êdó' iY&¸ž#ÐH§*åxšGÔ9¾Ò|‚\*/ˆt2—¬R@">àðíõXeîÇËU ë%g|ÇÍç\ÿ@Ú:)tÿ|Qëý¨cë‹e„–dÎhÏ´’W 7"`ÿ;UK£YŠ»b.^F¢Fas›õÞŽ"] ?ì\|\• ü r,„ÈW:™VÄæúmŽvº],¸ÝÓÛ;úJîf£KVÕ®;µéV—0”’ûLªí߈‹ñUÒÆ%zÝŸõ›OgIÆØÛ÷™l³œ«½_îe²Tì;Œ‰Ô‡êô-F6ƒwý?ætãlêØ/ô¦\±Š«VWRWž˜òeKÅAߟŭXP‘ †J@Žði“Ñ Ñë_IÔ·f,ÔIŠ…«»ž„X´ü` ’{"Uf5d7ÂíÝ[Šêy‰…y„AA©9 LF‚'³Z…«&m‚v9@ú'±¹Ú»yçäÖ&×ìß—]®x¶´ÅHM³K9P*›wÝi<Õ°*=NÙ[57\ÇeJé½9h?`fžÔn|µ EhûÙ=ü8™ßJr{¥Åâjd#{Ýÿj¥…
+’¾ÞŒ…‰41M0ÆÎ?y®rEy‘ÈøÆäœïr`É°Í»×Єb#@
+12{ºÿ$SÙÆüÎY»7Ì÷âÇòÒ¢¯±Ùxë¸Ge0Á£ÆÚ[z·ÚB2c©¸/*ogK×fXŠP<vŒíC/¹§ZJ¾oŠS¸„ =û4ý¦Ðè ò7;3Œ2WÛ§½®Ü#Œ=ö‰äÉ‘…k´Vsòr´ÂO€ aô±¯­È“–Â7ªÃä#Ð!B…rÚãÙoa­Ö|­÷4L|¾@ïRÿ7
+>¦e"¥Ce<.±çeRFT-…\(; ¨›Ú_+­ÉsF€
+hš,±°Ó¥w­e`~[®‚:q» }—f`ùt¤×+ îHßaýBüÝŒ¨Å9ºòüþ™iN¥:ž±Æw%PRFv9ÇVª8 éñJçà!wIo G;Dˆ:Ñá]ÅnŠ.Ó ¡kVö•WY¬õ›vÝçˆs‘«oIl»ü¾°Ú#> ñ¼¹*Š±³ÐkDa g#×Ó9è ƒb_~Zl£qíàÖÈ;k2ü¼TÀ+R4ðs–¸PÜJz‘–¯+ó#ñS»ç]lÒB58jF Ë•Üýo¤‰ßÞŒ4=ħ9F·„\½>BŒuO
+j°ëW~HH¶ó’q¿ëS(g«Ÿ) (Ítõc.æìeF›±ÞxùÖK;—šÙ=œW “eÓüŽŽÔ <³ˆs7Öl/±ãÉ´R‘¶÷ÝåÓw¾ú`õî˜#á,ßjóŸXspõ¯èÎÕsDÚ4Ù²™Yæs•-_¸‹e\©o¸›vîL¶J"ˆ¡VðŽ°fÔhIÒ–4%)ChG YÚ®X’ã#üŸZéÕ•Ðxb;´Êa@«I§€kû$uÏg@Ë\, yw Wp_çõtþÓtò¢óó y|o¯˜@NÅX‰ÅªíÙgWWó Š+<}ÛWz‰eU³ë)ÖŽ~Ý9œÔI.îÞ“¹—DŽû5ý)TæReóSsxÍ2m¦-*,–¢â©ÞDx!©}¨t[ª@Á62?R€ó§o}"
+³º'<ÞÁH*gÙ?èÓ¹á˜>ª·Ó¡Wâ=×F ³+½øàÆÿ"I9[Ö+Ÿß¥þ†]5ï¦âæ‘ÿÿÂL¯
+endstream
+endobj
+653 0 obj
+<<
+/Type /FontDescriptor
+/FontName /EDLUSI+LMMathItalic10-Regular
+/Flags 4
+/FontBBox [-32 -250 1048 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 60
+/XHeight 431
+/CharSet (/A/D/E/F/G/H/L/N/P/S/T/U/V/a/b/c/comma/d/delta/epsilon/eta/f/k/lambda/m/n/partialdiff/period/phi/psi/q/r/rho/slash/t/theta/u/v/vector/w/x/y/z)
+/FontFile 652 0 R
+>>
+endobj
+654 0 obj
+<<
+/Length1 1670
+/Length2 1438
+/Length3 0
+/Length 2463
+/Filter /FlateDecode
+>>
+stream
+xÚµTiX×÷ƪˆP \ì!I²°ˆP‘¶$
+µCr’ „™™bq)VE*xÁ*-›àŠUo‹¥­ÕRP­e/ÞR¥¶«Èƒ Ò™ U¹½?ï3Ofr¾õ=ïy¿ãæ%õ RâI0ÇHO—
+ЇĨb¤“Bðg*E%•DÙÉ¿€QDtMíH8 |­!,¹â¨(1HEPŒ„‚)¨@! xßb£~Pé>‚`ƒ^O÷¼péÿjóúœÚY‚ÖœGŸ‚ˆ5¯póú¶8F IŒT„@…j!ž Ï Å,6IPDXˆH*óSÚÃ<%8ÅÆ%ÓIK4]/H(
+†1óÿpªPL©¢@iÐñäšf€aÂç)”‰ñÒ¦†$à˜`ºBãC›´™â#ìÃu@…h ˜ª õa˜ d5¤Þ
+%šŠGì#•‚0µO—ï=ÏkÄ#§MK)šº•Pú^ž~Þ£\”V)$à5ßâ‚-£°SgA#<¹\3÷ï…d‰a
+\‰bjàå; z=bbð)uxùú³€R¼¦[äx\ '© 3@…ëô ø¾€‡Ò6Æë¢èá´ÈÿÔó[˲–’z<.G•ÔýJT¦¯äSZPvêyñ/ñµn/eþJö’%xº™<½|©Mxûø?_~ÆkyŠ‘ËâQŠ¹kzr„éPÁh»Ž+ÞÝ”¼«:û`¦hïåCÜü¹¿U½µ(.<o|۞˵NÂÒÿ°``Åú/²ŠfWà⥉™ë±}qn›ì´ÏnÖüóHsŸ2zñOH¦$Óiš(¨±$–+ßP$iÍ:t†Åù%¼¤<~¿OKÑé¼Ó³€¼ñn°íÙÇÛ½. ÏxPÈJ8túFÙcå5Á)[½Ö&½ÕšYçÔz¹ÎŠ~lûQòuPÛœ«ï—g¿Õ>Q÷ÕÙ™ÝV9•O¶±»‹ø=cs4  ׯbwW”Å­ïªp Ûq_ø¹ 96´wËìÝ;/-º{þ~È7vÉæÂdÃZÞáèŽo]zƒ«ò‡Ü'mhØWæ~”Ã<‘½ùô˜õiÁ…Î=?tž©qΛðF"ÏÙ¸§,uhÝ…[þ]‘IÞhþÃ̼ˆxŸ¸2©ÐÕ=Þ¡âHôÔ†„ò_ ù÷ÕÇ*¾Ø†}’²9Õ&iy_–ÓaWl}܇w7p¦«Î35¹mó²ΟZ:˜¸?Èöûå õ–ú`ÎPmA¡2èÑøÆ`LWj7MÚjÅÓŸ?°¾Z+îÜb™Ð¿qz¤cñ4YmÅÙ)CÃNLŸù¹²æŽ ²ªÂ>¿×ä!wß8éSoåÞÛÃV‹ÖúÝ;Gt:ç{ë×ø®§
+‡ù†b§"Xlã’·cQWm“·Â>»`cñ",Ê×øSKî1Ò/ß³%»ìÖâ!–{þ@|éÔêÏ’ª×Úf?E™ãÂ|࿽.œ3àˆºçN·¯ì:9ÔûGÏJ{K¼ÝÂôæ+ù_²ÖòBºÏ7·\‹Þc}$>¬­Jµõé“Gã˜Ù½c wX¼g]“¿ŸƒýãÃ5MæÞ[m•pÐzóí5œGOˆ§ä2’>Ñdv/`ÕªbÛ…­æ{îlÑéKìÁyý;ž÷&úœ>9§ÊPù,ù½Ž}‚‡ áäüe¹:GO}÷‡Éo¾Ÿ^]Æ‘´Š¤öuÆú’]m¢ ê?J= ¬ù=;ó«[۲ܬȂú¸ùcEu\:1(ø… úÑ>HÓÙE5ásÏÕÅÜ9~Ô96Œq±WÞ^½b’ã¬99 —5z´ÈüŽ+
+Tª£Ý
+¯ä½MÃ'*æ×Ì¿3Õyî•Ê؆VÑԡ≠®|·pc΃;ó8¦»i‚J÷ƽâ+{ñW\Ú@«T4Qð0gl¢ýÀî·×ÙÈ**‡º]/^LètɼáZºÛnòU‡äÌ5 œÎEcíÌÒ6[¸‘gÂvuçÿhžód¿cÉêÉÓ×F/Vx‡· eN½¼9Þ$7««·~sªâG¡ªPœ°²ìÚÖ­¬ÃÙ‡³lß­ÿÎyÑÅ7G‡m€3J>åîùws`ÒÊÍ‚ŠÀ½ÍO¸Ð‰ï.ÿ~-“o{qËÖÈ/uõ¶¯- ½”vb§[oOFÔ–_¬ð]9)sǹíþæØ­)ͺ§j›­9¯2û癲ÃÛ‡zÅgó½±É¨˜ÉÕíËr.¿-Ýsh`ÓuengßLfÃ\–s°]ßÃZk_÷Λi3ë]—¿/ÿÍkÁÍš;Í;Ö5Žëÿ ¦hgÓ:›ÙDVʬg-dÚ†²¡êe3[~¶®{Û´
+[¶iû®p–Äf†kcŸ3Ó†5Xoì¹ÙéI\Ÿáð瓟Ƥj¶[ïrÕºzŠë¹ óg=ÏX¿ÙZsÔF²:Ûqh<«´¼êšÍœÀÎñå%ŽäwøÞ%ûç%a7xøãÈâYøBÞIÓ$†ï±i÷ Ö]K{¯'²êÜ×w{×oà Š~wg:»å ÿ|ép-¥q{åñIßÚ­Ø^ÛŸèký¥žÑ3'OexûLó²!·ÚnD±ß XÑÍ4Hò%EU¦ÝgD‘ûíÚ7ÅzèVÙ3vü:œG.5\mç¿’®»Œ™2Mê×_/ŒËþX'¬©½ŠÝ¸yEûÅ›¹¬©ßÿ &æç£
+endstream
+endobj
+655 0 obj
+<<
+/Type /FontDescriptor
+/FontName /UUTYVR+LMMathItalic5-Regular
+/Flags 4
+/FontBBox [0 -250 1349 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 84
+/XHeight 431
+/CharSet (/i)
+/FontFile 654 0 R
+>>
+endobj
+656 0 obj
+<<
+/Length1 2186
+/Length2 8607
+/Length3 0
+/Length 9943
+/Filter /FlateDecode
+>>
+stream
+xÚµwuXÔÛ.€¤€4Jw7 Ò  00ÌÀÌÐÒ ¢ˆ4(¡”tI+¡tIJ7HHˆ tÝÁ}ÎÙž}Ïýó>óL¼ïWïúÖ·Öï6}C>EG¸=XCñ ñ J´ut@( 
+qà3
+¾Q¼Ù3ì7§£¨«¡ªbhħž=ŸÝ?ÊõÛû&Ÿ"P[ *)ÜÌ©
+ÌQîîŽV$¼i‚î
+ŽðøßóíƒûÀþF'ÌÑéf½<ŒaO/°ð_!hŠðoÎŒÀž
+)naåú¦ù:Ǽ@t4ý}ü{&€qÿ–²TSëésáÁkòƒV«â÷sÙ¸>ù_„ê)P
+ß)2ºfú©áfLÔõ)å‹P›â4÷˜]Îcê~M<O­wÖ³ÞoʯÀƒõ¿‡l-1Ùy£À›ŸŸæÝQ¤iº-гIü˜ó5^JÛ$f‚Àä‹O¡Û¯¼JÍf›NKSß ‚Ú7
+uNÂ\$¸ âÇEÃîÒ{¯,²¬¹«ª•bQ˜¼Pí8A° c0ï¹TýÄ¡Fá( o@#/‹ Ãñ“Ò"°}íx'df´ifíF|™Ëç«¿ ½­`‚’-ó
+µ/¶è¬©ƒât=»¶Íem—"ûjŸµ´\‚p'1NòLµ÷·å9g¶+±e^EÎQîžþ$™?¹J±|;Mµsou÷‚D+·±è£~~y½˜3)ͼ£^Wwê3S…-=É”Êå©rÿmö4³õ^ÆÑNø’Ãèè'MöË$x·?´Å¼Ëaò\ôjú|#ôÓß½Ò—njäø•"bk;àžR4­ŒBkRµÒ Ôß‹ô3Q¡1¾ŸÃÊ4fü×uãpêJÀ‡ožùÔ"ÍŸRí—Miâ‹ÊVˆ¨Ouïw<.ˆÂ‰_/°|•Ì<t¶Ô‡§¢¹ Kd Þ©V(ÓÕQ›N솈­õM–¦°ºN™M"Ùß»kÇtkRÏ'­m&Q“ÿ0Pä¾Çñî$ˆ8UI¦Âr¨q¸=¾I]î™pÐ}a7ÃÑ÷¥X³LnúˆšÉáîá+ÂÊw
+nôfGo,•]j™IÊ>ãG,‡(Õ.â)øè}k~ó΂•‹‘ˆIÈ—2lÝ Ä—ðQÆé='GZ%6‰/áÎAŒƒ =5E|Ü$ÈÚªæÏA7Ú÷î…Uvô$â´gÊɬëÐcLjÞ–%)§tÆ8&‰
+}Žôx$ìøa-Gæäçõ…É]Ö¦N÷.ƒ¥¶Æ~£™4“M;8¹ m­DG,™=9}ÿµ3¼ÌÓâg»RD¯süoa‰°Ãj¹« óúêÌËê0`¿pŸÆ †°P2¿%2<e¥O$wY°Þ9¥~$eAŽÍÁÙÅG3Y÷ñ3ßN­d>F«q••N#ûXÔ<^sã>§ˆˆóÄ+H&C6 ¹ æ÷<M+ƒÜ“­=iøX«P7¶7φlNvýÓü=Ó˜—g:i†¡Bó^òöKº§§oÕVXô§j_&€”
+¶ZŨVÄÂ2–µâÇahã-SA;„Ík©¡j8öÜyïSD ´ƒê ,“^üyGr׶³¹BÙEa»èýŽ÷c®m¸-ö½^éÅã¬*¾&lç».Xë[j“{Õƒ;ûâOï~ ³?Qœã—ʨ¦Š³Ð¡¹åÖyU©‹©û&. žôóƒ²÷Ž‘ðÕŠí¬jÖüMa ÞÀU²„ssã¿´|2­XH]*ÂìBWÂmŠSxOÇÉ›ó©àjocÄ^öÉÕƒÍd½“á8gÏŸºk’qvò±MêÍ)| J÷ª®7DeDz.®”ì>k_Ø3÷îõŸÄF¬@eÉ­0 UaÍ“>­Ù.ÌÚ¶üOÞö å—/D߇‰SÚ)QAÓz3Q†mÊ¢za\»ÚliºÄÑ0Z ý¨$ÿξFÖ^OÓÃ
+ïqêÏÍÇ=3IôA&ªcÎ' Ÿ¿3…å÷=±¼K|ÑBýјr ‘Ê#N.,ÚVTûPq³7Æ]þ¾ˆ»S? ¡½°aQ¨¸ã-6ì>̽ùÔ‚8+¢)®ˆ"ZdŽ­*¾¨´íµ’V“Ì’²N¦j’œòV¤é/m~oç±ÏaVyzߌ©Ÿ&Eª¯#––S<­ó]L^>5kBñK°3`áVh|m¨vW.ŸJ”KžÍ8%pšÒf’ ŽØ\˜Ÿ¾¤hâ‰#èP0Á¶ÔM·y§^»@×±Ðr.qp¼#^NõyØ{]2ýÊó Z•4¤CÍÁ5 lÕLhq/¸ÒøF“tüj–“Ī=*awÞMhNa7…mþCû¾óö”iYnûÂðnT±•Kª%~•ŸöîZõ&ç$ŽHØ×®ÖÕ‚.›«gŽX,r›mrM>¥º±šGv¸ ¢ß*¥Ê®´0ªô­dý’+ý])‰o\Jø!j[÷åÏD‡º§
+}{,Ü|¼!T_V?ºu”ÜáÌË@
+z1=.¤`dæŸnÜ a—oäÍ<šÙÎo[»rÖƒ.RŒ^~m ÝN£«Üf!Qü¬_xÖâÅEíI^»J°]V?ø­©JüÖǤLá,ïÔâ^p=ùeø³_ãUŽ˜Ýveª†8զȲ<¿Ú¨VáÅò©HÚŽÙ©àZ繅ĺÄ3£ÍO¤VZ _}#ÆÓɘøô˚ķ•¿}¥*ðÖwÎÔ§èšÖ‰àÇ@L
+&p†p»P¬êøsÍ~ÆÕ±‡“-ƒÐëÛvDzw7ÿ
+qh½¤kñç€Xè²^¹‹³æoU•å‹:wˆ]½¯ÎšÔ÷GôŽºW0Yó—RUʬl}@]‡! ¡|¹¤ÞÂÍ *[œ‰K~V|,À—qœ¥—özø–ž…Kb^¢ßR:º5Ýl;ôÑ{]wWð#A[9§uÇœ°•±àæ‡øõÉì‡üg1ŸGc•Áñ»¥Æ¯XI¹néLAøÏÂ,)d5ß0qÉôŒË¹mÔ{h§øÂU$E‡?9W—º*â õ=è–nëZ^ˆ=Mñ‡qy¬\›VQðÕT‰ÇÊŒ² 3ÖÜɺŽŽIß„Äl>*JÿÀ"Ü俕˜îÚÕýöƒ;¥ðÏóÖ+žË«á[O”4’,ÝZÚµïñ‚$Ms-><Ç<ì¿?×zÜ®Oý:“”RìAŸ‹Å˜
+åOƒ~ ™Ö:H¦ÓVå[¿ŒÞ ßã­@!;$ð×Zû÷ý T¹jL^¬îr^¼dN¬ÅüþKÍ73I‡fý£‘Yðµñʽ[¨¾%ÐS숦ÇÖ}6ãNÙ FüLqÉÛ?ž˜+E*pZTÉzŠCÿQîºuÐe`ŽZEžG¢d˜òç~ùÚep8£Gû¹9sõÜž±ê³°®ƒá‰ûu
+[öÜÛª_W|¦Û#lLtCt"{Ê‹@Aq-É}‹J1ŸèëƒH¬i 3µæ½˜ãƒ)
+¹[ò'ô ½Æ}«6 V$“4tž“0• šæxÿHÈiIø»'“b¼9Úë~åöjƒÉÖÖ Ç䥴§Ã´Ý=8&J.€±Ó.‚Syúµšo‹¿R›¬©€oU‘ÿ’CœÕ÷_š.UõJ^YqWµëÇîÆ¿?–3«øUò($Ä“ÒÖu•Ëïy•yÁ|ð'íg#gˆÊPJ´ƒ4<Ýg7I™Øu8HuÅÔ*à…‘Ädmâ€{zƒØR,³~çÀþU IÓ¤M†"{=MƆvoó'A˜E¯êÒWc¢¬
+ü‰^=ï³µ5½“E À8DÍÅä H¾ýX¿úÁZ…uÏü殲tª÷+d¼Oð¯º_f÷ßÝ'¯ªe;÷ȺÂh×ìzû–aÌäG$=Ä<åÁæ¨L쯰1h~Á®Æ¬Æ9ÎCŠ˜•d¨oÃØ®Î/…Ð¯Ï òžíù$øÌöë¶<œU<2‘ ¤¶ß­tÛlõëMÇJ¶a—‘”’NçŒ Ï¯mÌö Såð3Ì¢„9jûëì¨Ë° + ùªÉ_¥*™¾Šcè.h-ë”SuÎó#eêƒp Zžò~O
+ê~;V$&k ·h…ï³0Éâ¶Gi”Ÿg?çéW\=ã/2žpv†ÚììªÝCúë©Ü?'|Y4Oün.ƒÜÇPx­Híeðó PÀŸôUìI‘êÆ¿x¸ˆoB7Kéï}ÊTKjù½.Œ”&°SF r˜Nz9[š7ñcQ£¸êuÂä`ÏxÁUðx9,eÇ×8¢€ˆŽO_ž6GÖ½XL{]ËèGšÀ§*#ÆBŠµqE¥Ç»ÝÔüúZ8†R²žlGÎTÈÀK¯‚øØOyxV½ÐêMŽPN¼,xàŽýðŽç 2h²o°Ì7ô´kJQ>Ã(Œx{è„U[Vl~iœ
+Án£!føl¯F¯²÷V_N§×\f<ä^›x'0¦r}}mÌk­iSÇ1I&;sÇŒN0âI|2Áð‘`x¿ÛÄxÛQ”߶N?ÊnSå)‹õ¬™tjøCuþ»‚¯Ä¤˜©=As亻üEÙ’V²ª¯e™Ïû©ÚÖ²iímßÉ…Ž˜åS„u€ù¹¸k'Ãùdy,(rŠ.ƒ;ÅaßußGª;{?4ûYÑüvf…èªjKdaþ\Ü‘–'Ó…æ‹)»Bå7ïÏÀ¡U­Ûm/¡ŒÏ. Ú^˜¼y3.­#Jªë·JÕZ:èÌU—zâ?Û@Z<ÞÿñÞÛY”2e®â-oÖ¡FÖRV_Zâc¬ëBØ7Ú5æh.xÞóI_vïÈNˆ¼Ç¦½]åÇø¹¤ù¼w\>ŽnwÓ¥G¾Ûâ0ß^H«›VŠÃ:îµ÷–ñ‰TVÍ:œ1öÇñÑi”„ÅÃãù¾GA©Ó)é©r/ç=,œ¯«e©Ùzg´ˆ¸%3úUž8ïÙñô~•¡3å|³ú
+·)YÛñßt©üOšy¤†ƒ¢!S¨þÃú—X—G÷¤¶]#,Ó–­¡{õ^‰*ƒrÔl*é ”¢×„j·¸Ÿv.f¼<7¹ÎxW÷\X›™t|ÞëœtJõ¹ Ö²°*‘çÁ~òmëL2»!¹îåå4Ѧ©„ÌiFî„9‘o[Xj‰uÑã0'1|7Ó€˜nb@bùœÇj¢àõE ó=c+en¸ªUÑ­Ù³—ú±ÓDáq­/ôøøÏ[”[ºÚÈÛ&"[©#Mƒyñ<úÝ,Ñ?+.Ú Åýù3FC†¤ ì?—VQ?ª@eï«ç¸@º$Åí?ê–ÈzyNù{^WÓ“0=J‹Ö»ÐTäo\ÂÞ9¶0aÕÎtz"tû—,­Ü†—Ìýñ5müW§™Ä»(¥sA>½z'³n¹¹tóO¶écK/1½ySŸF0§7$á2 wîž-È[5u¾#Ý¡( î#I"‘JÜížÆ$s½ä°×¦?¨GÁzÀoY¢+uOÚ AF¬ÿZr W±¯}û%™Üç’†áИÞë;ó³bæS <wܧPJ+‡£¶y»r.Ë}Ô§HÌ?‹Ò1gjóÜÿ|÷“”^Á”åê]SVN\î™} Ñm®Â 8jŸÊï Íë Ó‰ðÓ¹¤øH3žTâ—…£>Æ^fÚôüpÕ^nå_ó>ê#fgÒÅ¢©•O=Æò»»ï%lx ¨UKïznU<.õÛ!¨zcõNgÑ¥ê#è~ïñ;MI¹ÂÚ ÆµõóK”kæ7¸°éAݬ‘Mð¼0 É¦«~»½º«®ðñ
+]®#™£f-düÔ
+i î=~RÚµ’(t ^ó£ï½x”€kaÔAXê‡S÷ñ½neü ¹XkÅ&ò|÷ ¸*8F^9øÈž?„HÿœÔpvõ(Ywë
+8K«|¦%@™T…Êïr¡2ß~vù]¤X@éO|£&÷'¤
+QÑU™2ÃAJõÐWè¡6åÝÞh•ZQì™ý'6- µ×ªÑ-ü5Oê‰Wî¿ ¢jâRªî‰³Ð²d–Ig#]Ä7j®&°…û,QÂe1½µ·0\¾w³µµ6Aù("¿pP VôªôZ㔤×Ôç”4DlD¿àÅ¢¶*ŠwJŒÖõÅ1Lx×¼@``wÖ.óñnG½jÖ£ˆ’¾¥Q ß[M|B<@` F›nAófçEò ÓO¥ˆ¡VòÛ0_iò›í;—‡æϯµ®ÚIç­çÉÚ_Ø°¶Áúp=JJȵªöâá›Â°—=Fæ÷Yaå9­Dº\ÛqÍ؉ö¥}ËõýE&›ÎÓ;ÉÜÅ
+¦CuJpÊu`õC/¼Ä`y˜‡œ4_.©Giwþ^P tò2µ{ÌjÔ‡£tV@Ž°çΗ÷â/î‡ ôÊß‹8.½5s×n]žLh} ‹KÖes %{ÊàÔ®<[Õª(±ë3@ë!)éJójp¤²¢ƒü{Ëy[J*:•‰¹42K¶F; ÖPy—!•¯“Òá9&fM‹l¿ æ<1±¾Þ¯uÓmƒ‰ÍÄ%qph¬y¿Ë» )°™¸ºë§´B<Û¹¤< +ýr!Ôcw\Š gBÊÓEª¡3T”™ã6é\™bX1³Øí8÷ÑŠ¯kçE;ªJš•2>7d²œ2·Mð¯™\Þäé41
+²~)º4ŽÄ3$,™ªù¸¹W¢¥ÿ¢´'UÎásþA*6¹§02\šJ©mÈweK|ÔZ½•EÿD[¼ä¹˜ÌO ,ë¹gùa+qÌ^·>[‹0Q`0«Žu‘wj±s¦÷ãíí„jæ>ÞŠ‚—™zÄÓÊtû# ã &wwòj$,ó†POd^ã¹æ~*âò8öôΆõãýcÃéœAÜÀáF F…C:’]U1À”„I 
+<¹Ø4
+"¦#ÙñußHX>Ne+èDü¢úÅ!E˜÷”ÅLô3ÑÁy5z¼1šïé;8
+ú,#§†V/Eöw¸öœYˆ±>¼ªUÇå€JØ ä>Û§ÏWJtÜ©ºdœiÿ¨v‡í`Y=¹WµxoyA¸2΄va7æo³DUÖ2¿ÀÍ”#&æµÊGÑ ³•-“éÔ[“ôaL|®Ð|øN“ˆ&¶Ì÷‚BT±hÞàÙ§qu®Ó˜eú,<¼^Ç­ÐK·^%­OÀGƒZ
+ zÖ¾ ð8’v7 î0˜¼ý€dÎBêdz–Žcé¾!5} ÌQÍHM1s; w>1wKbú®xP?Bääô*çáoÜPrÌgÃS·ÂãŠüö6’³»ÞzΪÓâ­ß †X§q'Î]ç•1"|1¶ö?n#ç€EÙî²Ï;Ã_Æ”
+?µ²é¹ÌÉ–èTËHퟕϛI³YÚéIÝ­Æoµ9ñ œ}º¨2 ™Q›üô«ú×fé #® ÙfBNë”àÕgYAÈ'H› 2Bìë4OSq[ñæO“|#œ5Âoq¾÷þ(Âνèm`ܸ{á«­mQîŠãßõT¨b¿âLtÅÚ0¾0ç5NN·›‡A€m4ç³×OÈõét=èÄW¦ ˜¤‹÷*+5›m#H¾Naåë³…°d*_g?f1sCª/ægM…dÕªJ/•®è“¦È–yðmö_5Qëz—â(çYdì_ìM,H LQKÉ°w]ùœšHºG/(ŠÐ½6$°K‰ÄñræÈë³–©’@¥ž‚EŒë?Z¹î¼Fdª¸Üº[Îé~]E<! Ô2,æ Tr žIçà%T˜WˆwÚ6L‹{2{Ž4;<à£>Ѭ+ˆÉ4WMß©rØeMž;ë~›ä–å4¶”y·üC™# <qý.NÈ´,ŠZ(±Q<hyV4mQö¤aÓ2çÃCÉÃ}Æ—¿žµ¬wç=Š;3^øž!kÌïåû@y»H…ó% ;Ó´]æƒ|qÑ
+ž£«î•Ä’v³ëv ŽiIuÙÒÕ¸i#ö°[‹·(<õ?Ôwef6=œ—t'±yž(@àÜ#þ¸Àt'á›
+»X}yt}æ“4ƒ‘¯UÒ§@[êþ»^£Â8v–C{T
+f¶þ¨Ûã{Û…£ ý¢ôæÆÌ„Ùøâ¨íñ®}kÛ¯ wxÔ‰¯FC´Uì‹Héî b÷°öáåÓ®ÇëB1•/¥k]걯*£ÎÇ|­–^0€VÍÌi9ã¿ØÚÃñ>Œý46™"™}„{xÝSn
+æ¸ÚÁ+ú¥?ÃóÉsŸ«b¬%Ÿ^õ5DSeµŠpü¬zê±?üu«ñ$&D@ušW{­åù³!>ôYL¾djèG
+wž4ÏnÑH¡6SV¯6²ãÌ·…€û©RÊáRéÖ·¹Ì” kúSÖŠG_ÏT3©Ycx±<Â^ÑÒWÎq­ïÅÛ2U¿² ¬ÑNWåÏrl>Çv³Ú:sb\S“›æ—V™@FaEˆˆXíl½Šè÷§1-ÆéðöãÔ4P"ÒÅKO!d\`èˆãÿº¶Zl
+endstream
+endobj
+657 0 obj
+<<
+/Type /FontDescriptor
+/FontName /HIFJJL+LMMathItalic7-Regular
+/Flags 4
+/FontBBox [-1 -250 1171 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 72
+/XHeight 431
+/CharSet (/F/N/P/S/T/U/V/alpha/b/beta/comma/d/delta/epsilon/f/h/i/j/k/l/m/mu/n/partialdiff/pi/psi/r/sigma/slash/t/v/x/y)
+/FontFile 656 0 R
+>>
+endobj
+658 0 obj
+<<
+/Length1 1722
+/Length2 2797
+/Length3 0
+/Length 3879
+/Filter /FlateDecode
+>>
+stream
+xÚµTy<ÔyøW9B®ˆØ¦¾)ÇìšÓÚ2Ç„%3ŽÃ|ç`f¾cŽÜ*!’\›r”XºtìæHbˆ.W”„œ¥ÒMY¤¨ßwØv·~ûûó÷š—Ïó~Ž÷çù¼ŸÞz7öWˆÂ¡±–€³‹ UÈtRÙ¬` Ôv!bSù
+`ä2X\ §ØB¼H>‹ÁJj£P’J’l4@¢‡Bá‚P@åÒ
+ñÿnó•º ŸÌK ÿþƨ\‘ ê_³ùöØÁWÀ‹A€Îbƒöɱ¸ >‚«“=уŒr†µÇE¹@ðt¸ha„p!ZR`çl ˜áMœ¹) Ñ)‘K³…8˜µ@A2>;<'!ÄÄü·¾C¹P87úÿ
+,
+8sۮ
+Â’‡×Fa¡º—‹n˜ÉWè/1âÑð6!á•¥A\v$@é
+WHKÃðÿgã¾ëe/b³]©Ðð?çú}0•ÃbGþïðï¼@ kCWˆÏ¡²¿ÃX{VHsc ƒ™‹#^ô/V"pl@áLÐXc3ü"B‘l–4ü,±$Œã¾Ã`µ‡rA
+Dã`ÍÓÀˆý
+o ð¦ð±±ðš›bc¿É ^|pd Ïú«-Ùv
+‰Î Å`ÊÜûo¬Þj{.ë“\|óÉ"ƒ‹H
+?÷<ê±ßUkp·óºÅW™2ò;1ˆðSÙdΧݷYŒ¸þ4%ßñ.Z§j\qW.gƒþV ÷öåÞ|=>ÑÍ2 ¤–i”€¦ÑÐ-¡—8ÔŸs§öl#ÓO]ˆÖ½¡ýæè™×c9ß&’Ó¥d·ÖïèµÀ5a×è¯I;:ýò£ÊM…c^V« ûøózQöµ çŃþ®¿2®q!×&÷HVM@Yü†«MõOéÁäiÆ©žÇªB=ãß”å$Œê
+w^/ÒÁîTÞl›8¹n6½qU Ðø´“2¿Âºn¸Æ®¼oÏëñåá,³% ˆ¶ 7óÌS*u}7 ©óÕ$ÿ<ùM W {NÝï?fGì<sïcCCŠ ` öMUÉ_†šé «öuÎÇ©Wäg=‰¦t”w¨›Ì÷Î#ª Œ[OU<tÀ5íÚÆåWc«žd¬ N=òx‘ªfæ.û|E/ùæ×(sàØE:¯§®;·zs¥®Oæ=‡'®”xûŸ‚QÎ&\×Vl¿¿ï¦P"eÛØáY²¿¢‡sáø©±:¼¶ø^Z æÌY?U¾·²YB?õ˜Ò‡@Réën£±Ç.ÝIË^õ¼ì »[R”Iœô5U7l¨ÉÛ܃VüŠE{ .—#Î:Ñе¶gk _;£ßuêWFâ‘!`/!~Mò¹’ì¶á¡÷•ÊÑ['W+äå˜dñ6_yh©’—Æq*2†÷í0I›O°û‡6
+½Ò=ztë?b¤-Iåå«Èß°zʘ0É˲CFù2í Ö ³•[4ÖŽÅ]tt6è:Û¸öñ6롲D[wEµ[·º‘êKäÕ—Sû„ÌNqKÃÌÓÏO‰_”+’/íÿÒn°¹oƒ—ô4;À|üáÚü|©C}øWï³4žÏMPt®ÇË5RÂŽóbÚÆ·¿¶RV:{?sX×@¶Ô¹¡Øž¡Òz^Ì9#:tâ7?çÄœóºvǘ½“iÎ|+3<ù¼¸?¬‰HR¿À_:‹ØU Ö*ìRPzÆÜ€Œ¸;ç¨ó#ùhytÁè»Î›š}î5<ÔÕÉùå¼”§m÷ÍRÇ)!†Mq÷òg)¯RDCCc>ÅW[¬o«]éõê8ä.õÌÞ\; #'ö(Ær ÷j*Ø<¹§=ãâò§ÉNù#•ñy?lTÌh¤r2ÊÖTŸÑÒeÝp•¨Ø¥“JJÒZ‘öVe™ZÝïzæš-Yzìú[8ßHiì1T-¿„#›Ü‚fâ—•µÙWH©¹µ¥¬ª
+S©ƒq‗ÊÒÁŠ]¬°ã%ŽçBKÀ×ÜýŽ5Y S$yf‚éÄl¡ùŒÆ¸¼Ñ¼a²¯R맅+÷ì–©”Î}Žg&²Ô83çíŒérË4/hGø©Q[³/‚-ÆŽïßxÄíŒéiª|jt×íÍ‹Œö½Ò-†+1èbòÂegBAàò½[yĪëûO:·ÓyaÄUaGSår>TÕ¦æ¯zñný=Výcb{µ[h_-%¢ƒÖ(ÌÃï\烩YÚݤ01þhÑÚµ\úÊ\Ö Å  gîðgÕ̲„­½ºÙ›#ÿÞÂÁ—ô]
+(â…”¬CÕ¤”Ñæý–©¿'°f`\nÞá8=; b&¶p¸oSP,œ:¸;Ú;Î`µº¹‰ê~ÿ¡CýÝ
+ßG?öKß÷{“UåT¶«“©¥BRÛ†_£1m•½‰¼)ðpwÂr‡X¼5{ˆ 臗ãçD/ÇÆäÛÖâyw{6&OáÞŸ}9´ÜfBŸÝ.3ÍžŸÀËï)1OÔØ}úÇŸõ ûœü¼w&feR©’<Á¦ 9þ°“¤^£Q*«$[”5V©n”ß_Q¶Äe½nõ¹ä©”¤}ä«ÜO²2g/åÚ¸Vÿ¬y¤Ý° Dz<ñ`uá‘CÚ+¢ì=yùÆÔТæœÛ)W7œk~»ó¨›¹â¥áõÑKÒ<¸ýeòþ¦¶“E*+ŸÆ/'íy}ë‚Ê »¾Y©1TSØ‘½é$oÍmõWNš±f±E+³{)^AuQ­&‰gC3ð2(«3?`oŽn\ñ ápbÙ%üíË×22 ·=°e¿L?BÏ­ÍR>žºÅçaµVÅžëyX§tÏLNú²51/CÙ%^ƒ48H¼ôç÷GGT_'2:ûvøû¥Ö(Œ‰µ”ëNVªn¸Èª:W¬Ô½U?aàVG€?eŸUŠÕ5˲ÎcŸ_¹.U:’ëCЮ)¡¶¥0å$žÎZ#æ˜ÿ„±Ë$ho==¹÷ºi‚§ŽâôãËøσvx6¯\Š(ݳQ±Éi­6ßð×›’ø&6õêä£a§Ö©ÉÇ7æßBÇÚ¥’¥æRWhEëkÔÔ[Yàس„"s°å⃟ÁFÊþ_iOω·dÖkîÜšà›+‡èèï–>š˜v{6IS|©ùºo3'·,þSeÉl“G»€òFš<ë~î@rÔ©mÓ@Òyƒ÷LÔT§åÌ DuÜhÂåÃg{nXa3Yãè8ö·³‚GIËV¿Š&XßY!íi#SˆªßNêåD<¦ŽÜ*¥¶yr”[qz¸ÿq
+endstream
+endobj
+659 0 obj
+<<
+/Type /FontDescriptor
+/FontName /DWKZXN+LMMathItalic9-Regular
+/Flags 4
+/FontBBox [-29 -250 1075 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 28
+/XHeight 431
+/CharSet (/D/d/delta/x)
+/FontFile 658 0 R
+>>
+endobj
+660 0 obj
+<<
+/Length1 3033
+/Length2 35577
+/Length3 0
+/Length 37288
+/Filter /FlateDecode
+>>
+stream
+xÚ´·uXÚÚ>L7H78tÇÐÝÝÒ ÝCƒ tw—”R"H7Ò‚ Ý"Ýñ÷>gë>ï÷ïwqÁpßë‰{=ëY14jš,â–Îæ g'w +»
+Pqö‚¶
+àlÐé´5¥54²ªÚjš ¬Àš..ÎnÿÑ"©©¥-Ë WÑ’€t˜²ÚšZ¿þjœ ú­™*Zñ_y †¿Ü•¥µÄµôÕ¤l¿æ
+áþ+¦Ãßæ
+
+¯.ž¬„§ág=ªÆÑSH„ûš5ÙFB(U°A - j~“M[â¬$'`äT¦GŠçð´ú9åýÄ…¥ºØ¦Y€r
+á½JgM¸nØÞ‹˜Äí$‹“íÐîÏ·¸ñ1f=â_gL‹ÂñG\º;q¶ cJE¢é·²np¤éo]W—´÷ ß‚ÛQI¡È©I+­etɯPð½²z• Ra#'0 KÀAEò“’ty!DXS‹wüœçþúbZËÁéÒGË={éöÔ™Ž²¾ÙáÖ­¢MÞ¨^‚©ŒÒ€„ìÂC…ú;e¾±læK›µÇú=Gý”§ ¤›Æ¯¦HQ)äNÙ‡¬0#ÅáÇl
+(Òièo† %T×H®Ù¬1a±” Éìø` xN«Êì…–²$Þ*J äÎE¦×ÊΨvºI¯^#5nCí¾¬.»ÔçëZã>ÅüüÙé39©Þ\J-£×ËÐ72ÎßÜù$ePž ­y^[ªl¼²ÑZA˜›iTOñþ„ú®Ó†i9Ï؈gCP!#aQc™qÅCòG,×—¬H¸“F%<;a
+Á±ӷ̼Zk_¶Ç ô0
+tˆ‡Éª¼¾¿«›Šmfè®? y¡Ò¨ô½.ZçkÔÃLÒÅ’üS~ÎC
+Ž?÷]X"!nBŠ„`©J‹õ¬b]›DMàJ»µ¦¿ÐS!^@²èñôž>\LŽlU§Ìõ¾WØgû§(ž­É¢˜¬¢U3û°²ô«ÂšŽ:êgNÐû`¥åu‚Ú8Yzæ\Td«ÙÃàCXåoFN¤™ø¨uåÒ[ó3Gì7×YîøWÙ­Æ%ˆšèjOiv]g^åźž„<[™ge+ûÕ(°ï'&ë$98^ªÎå¨7âi¢7¸ûœ“ä9¥lË¢ žÃÁ>6’uļ†&1¹Ž+†>w"Ó5Þë æ ‘oÎÉéë…2:T*.
+Žf‰«–¿øpç
+ o ËøVFaöWäçl ª~qBJ¦>m>ßl°ðÙÅmrþL c¹Š¦WæÖΔ¾Ó‘¥L¤±gꃅ‡<“ UŠòÔí#ÚÆõ…u ùBÉ‹ƒðÖ9TKÃò
+JðXÒ_ßgmš>ÌÔ¨â;“Іý ^KŠæ3ïâúøêÞ‰~}ê‹cŽÕèfm.Æ­åo˜±ìPÛ{¹xŠõSÑ$f‚”¢Ç‰VÉœjÖd=Ë6øÌ÷)˜_B‰åc…~àŽu~¥Å±\ñuóZ,æ×l)AÒÏ ª‹J´†É
+Hºï·pý š‡Àc±ü2Û蚺Ûþ‹×Üo× n4kºû—M$ sP3š¡Ÿ×›çm¸}Oe/6ÀÕàèõ™ÓL¥`.s­Ps©x’|?<m§„àŠì©vŸ-6x·L_ìJŠ@'ès?#C¸s±§Þs+ðäX‚S!„À³z¾Ü(õ±Æ•îÀÑ0þ²
+tlDß‘¯¹Õõì[ÒVøxÉÎnlïróFaÞ =Ù¾òÏòŠ­[aÒ2¹øœ˺“=¢)B…¥¢5®ý’VjÏ(º¤6Ù#j..ÔÖ(Tbd6ÇÓ3 M̼¤¸°@¬Ž¿Žj8áÁÌ“³&Øànæ; e{½©Ÿo^Koòþzs‰Ï9ù=5É«òFóØv|7Ôº>æ¬ô=-fé]¹ºÂBΣ×Ï£4Æð‡f;PÜ)Nì0–ÎcÐà¨êÏï5Ú&çÇsw‡&ß °8?‹½ûF·ÕE)&Bø>§€IÏ«‘WvH;»E÷èÛòdàJ~ÍØGg²rÀ£ˆ;^¶ýÕM0ˆ[9Ì‚Ö.q臉šÉ) %®ý6Je¶Ïtý,Dì;o¥Ç²Ù¡<C•yKMÑ‚O¾Ûå](ѤHR#¹ù¸X‘÷ Óåà#jÍAÇ‚ÍŸ”äëB˜ã2˜µðºót®*mKuk¶÷ÚLÔòߊªŠ°Mx$xu0†õi ¿æsRyÛä«Ö¹opiÕÔã–§(Rf.˜h¯É¨HÔ-8>ºŒ-';—7ÚØÐ6+šbÍ>½%IŒíâ€F‚—{C©s­‹ûöØ°@æ­–FÍî‚pº †¸WT¢Ü°Ü`ú¹RÒÈì,ðuÛÌÐâË—£+(¶(… û\´¤Us÷ÝÏ\$ZåfÚxŽx/+eç æ¸a<Çà¼G |Ÿt§ I©Çž#<\Ug¨­ÄUæNV˜Ÿe+CraãF:l“[ݵGx•dØïÅyçL<‘"‰Þ0v­Ê$„µõ–¥(gíد pþDé‘Ì ƒí‡‡ èÖNúxYÏäï`¬»Åpò8Š¿°“èuhZ‡¹ÓpkW䨚,QLm´ˆ
+½–wjPËgHȂʶ¢ÓÌK™2Äisëpz°Jª;Âe wØ5yÙž2IÌBI.l9)7Î¥ƒÚ Ýg¶QÒ*àŸ¥HÝ%Ÿ_g†'–[†u½³‡)…J|ªÑT*¥ß^Œ{ ³z+ªSOj‚pŽ±qVkÿ$°FS Å†hCrrÇp†…ëW(³cþ‰­£¸@:ä¼O:fi"°pà9êŠÝبqŸpJYÛÃG€vì]ú©}~JãÞþ'5Ñ ÕUBŠQõpÒq‚Ù]oùz³—ƒíS& ೫eúa¸Îv^ðbóâ×Þ½ž©ÐÓ##±Í`Œ¯OL«ž[Úûí›`2þƒ¸—ÑÅYä ‰ºßX0}g^.ÒKÝåÛvKB‹4¡â*#œx(Lû¼¹)'TéÇk/áš•Aßß’]$|~ÿ郚+ ’H&¶Ð²™EH´Ó‘Ô/­‰–#Žgéµ[ô©‰÷—½ªáÃZ“n ÕAÄo;èêm%Ìt‚¬’‹0X8‘ãŒË$à„f¨þUébõ|Wžò`WÎÌ/@>ÕBÚ,
+|"hwÓ‡ÊCΘ3mzǨÖÏã"Ùc˜
+]<”îH!V=p'jj¼ùE³¢I]¢äƉn»Súvvq‹
+¡™œÝ®à:>o(D!6'›×1[3ûÇýVg湿WY®Ý‹Ö1ND\×jœœ„ñÀXDÙYï'‚ÈÏøý'w®mQú.ñ
+Ž:9¼žc§’
+ʼ†,ËSMè¾Æ°25ÏÁ?©ËY¿ýWËM²ŸÛì»Úé9¾d’QÝÑÔ¸tòž‹>]KbkŸYh³¡= ''óI£²‹ppn©¼¡Ã€Å [é#'Õx5°Ñ¨ÓÀ#§#€n†M5Ñ“K’9 ßùuTð¶ŸDÌ[ƒ+3%NrýKW#¯ƒ Ò[*—UD‚[y˜©ç½LÉ Ž½ªÏýQ+Ž÷\ðç–Ƚ„2¨‹ˆÅ‹ÖrECLîì-ßýÌU@˜\ª3®vßókÚŠQK<
+ðLÁ¡ÞÝI Îæ!¼ Iîêý¦dÏ&*A¤Ç"’#àƒøŽ¦¡)ÈÂh^í®·wf.Ù3CWðn@± ­ëRùF‰þŠ˜ñgßc/Xo+Ö ×£î¦ì¾fM¸0;-‰:eä‹Õ&hµJý˜YñêÎÔ«+­qž>&ÊjÏ£]'•Øì{c瞣JÛƒúŸv^§ö­Ç¯IØm踑sT DÄ”Ð4@W]½w!ªTYiq|Ëk|søwL®ð1céž_ödù¶…íÛ*bÒ¹5˱¾¬ AeÓãÉÏ ©"'MP]Ì¢O¶õWù2£·Þ Îã`z¶ÐìÇÄ&¨ó$#«N§
+û3Vv/iu™œï¾Ô’,÷ìc,\•~H=nïò‡Å_½§Ëêgqº:è'–8œm•Ã§´*Ψ v¿(pönA4•AÆBáð¸Õ#šf¦1êÒφ›gñT‰}W±›©,!ò¤nÜq]hµ9#Dz€Gç“y%ß^ŹÑÆwñsðî¦d
+ý&×~"®‡>¥â®³ÐOÚ¬Ã'L\uÈvÁTž߆Ÿ•½Ñãkö Mf²×^«ì`7îÔT'£}Êp"è˱ëo>üÒãŠýɳ!y—Î=$Õ¥˜˜í÷© }våAJ¶ÈÚ9ƒ/V'’Îv³ÆÏáE|˜]1/¥«Ì¤ü«Æ+vf¿«·mY8-€*կȒqž…eY!F-ÌIøŒËë0£M°’ªÊ ¶1ÃqøJ·Ä]i?Yk¹ ê_DÜxê»TÐúÒo)¶ÒE¸2oŽÙL®"}*!Û©‘84R&
+HÊ–hPéI3i7r…Ϻ.qÂ'Î-\nú‡ËL†xH¶õOçG~ØWï‘f¡¬L{ÍÑ{î›2BÎ"qX§rú=U×Ê^¹1ÆGŒjÖè£\‚Ùî=¿Æu¶Gr[Òež«7*ÞKgןÒØÓW¬Ä†ËÎ]/åÜ—Œ.è‰OÑjµq›µr¥óZŽ{tNÑ­Ú¼—õ°yÅ2BO4¦–%Vt¦Ó1NÏMŠŒ³m,(Ò€çâ±­yÂË?Œhmóú²Cc™êQV_‹]0Ü:Æv–v¾Ä­e}²å”Ïû†wÆ ræ+%o-N¹ðaèz0K¨Có*,c’­àùÚHÍvæÔt›^fÆ¢ Ööœîšµ¶b{¿‚%ù“½.œ’ØVý¢jŦq³ªCŧǟï_.|d…ÁJÏÄø*5rZãGYµ§ÞþØ~EÈ®GÛ¹Œ
+ô—÷ka¥(E­Uqù0~ÑÔ"/ÃIHEÖ,ÜOKvœ,â°e÷ÿоFñ±šÚÜ—tŽBG1¹ß$c·ÿ4NNW×VÊï%õ…œnàñ×ÕZù«”CS¬dŠD] Ú ˜øçÛŠC¬È5̼î]i#Ì¥ó@ðq¨à$^GØŒ¥ÔïQ…6%*M·Ã×¹dÄðÜOø«üÈKXV;}
+øÛ#+ ÉH:'¨U’0­t,×S“Ç]o• [O—^Sa½ÌYS+q$X­þvõˆr‰#fäZ°gMp:EÎ-ì4²ÐLC,w³¦…;åïË¥¢ˆo-"Pu§fèD¿°=„µ|jèú †óuÆy†~>ù¨ý:@h¹¶OðãêµB†@(6Ýk¦§^<™,«ƒÕ“6:¸Š×êì˜w’½?XšxÛòDQ>òu9mN±äùyZ²ÌûQarÓ-ïVè}݉¹à¤&ÏD ÉqïàæŽÔúDaÄõX–°{‰ä±rá´'>GQüÜãØÒ/VÆÇþC¿D Ùo€.˜¥a~]Çn#ØÕ£Ð=¥¯í•€.VSÓ¦s^rrm-›…d” C­_AsöÝäUbˆà a¢†üQŸ±Xh™«°M¨ŽÇª*?Y÷P–Ab#BNDé&€€Èœ<•¤T
+;¥ô2•,$åh¥<ÃûäUr–s­.©k•2x¬7˜¿Í&VÔÄlDòCɧ-kú÷ {œçéÔN%}
+Ø?9K•©ª45ëé!›_Ç
+çAˆ+OW½SŒó”{)âóæiöçB¶ìÌì^
+Ø6(ȱ„2¢hy–ÑÏSdfc]JpøË"¿??£úÈÉ°¼Ïbé#åÜ5SN€ö‡¾q_‘åOD…Ë6^ Íí^ÊÈ9…ÏÛ…Ç×lËÎBÕdw{ÓÌÓóoÅf:ñx™%gä$É ÷ÓÀף˫³MŸª½ &ü®ç7ÇuRñ¢”“ëù"ÿÂÙ¼ï6ÛÇDâ wì\äK0‰¾#,1[循^YÍ>Q—/-j%·t"Èíµ‘QØsÔXë§*R¨§1'”Îæ´ÌìÇìo¬µBxñ¨¼ ï_1=öÉìQ¼–ÀÇêërJcëÛÔ»’.«cyÑ%QjÙQˆQñ<bïp‹ãgû%‚±,ûÎyì“#­s—Ỳ±°¸hœª±]*ª†¢FÔóȽlå³É€lÞiÜ V‰ïù\ý{¨fñeêý¥7ìœô®DQ ûZ?£Õô;[%*ÏoÞN¾W3ˆ>mwÓ— ].)é`>ûêZËj#µW±>+Oüp~š›Ó¹‘}€ßðHyxŸ‹³»p¨¿ ”lùX;w{´S%ñU;ùgþy†b¹W¾¬“´!ô€jsž›ô›c¾#yŽ¸a/KŒ˜¶;ì,_Ñj>͵¿Ù$"ì¬P6Ï°øÆÍáµG•[’KuÄÔ¸¨Ç:Rª ³Dú.*j>õñ³C ê·bÇŸ k"?¦ŽõÕÍmÉ¯Ë oYeü‚ÄLÒÄEîÚÔ¿«?ni‰¦§Í¿jn }`\ß©1"bzß åª@g3lÄÆ=æ…I9µ‘g˜S•5ÑtàZá#-£µYå SL£¶©³MûýʹåÃO㇤…ñ‘£opDÚFú ”ws©¿hwœôò¾S’:xi4üC( N#v–ý˜uD‡¥0]éè£îí+…û@'˜HÜÎø²>K½ÄÚrF|­=öyÝ|mÙ€8ÂJ‘}Öæ<¹ŒÐ¦ï+\‘}‹Hi¸‹¤«æò±£B¸pNDê%Å@…ÑnkÃZõ%÷SQj"¼í“ã\¦6¶•þh0yØûVAŸæÜÝm3¢W6šÓL·¹a™lSÉWˆìݾ.´‡ûÓ ÊrßC©ÃÝ_{€DTJÔg ¤Rhép–>8ƒûŽ7^é…ò4û^ËëÃÄ!˜d¦WG‚à0J%ͤ;C=j8uOœ£í¸Ä?—¦_576¤ÉaÄ(:ÅKIN|³«›@'f:&'‰ DÕ{êbrפ­}ïû¡3M]ëYDO‚Íëé»Ê]sß¡ü  ‹Î1f¼Fڳͷ™íd˜º®…æ¦VãŒ\I~ÑcˆH…5\>vg$ ø?˜Þ NK¢[E (ùϧq–"6Jâ$}H°ÁÓ Àµà[V†`R
+r×ÆŒ jX¼Ã9ms øÉã·ãàmäCgÅG!e 4ÇÜðè«LÆa8µnYØX Yþ‘zcŸ¾¾¿ˆž—I ¹îéFu«Ô÷mâÝËZ€ŒÝ$šdhÃVl‘<tÕcY·Vd¥»¶$•ü=°°ñGéÞ&ÓÔ¢GÃß(@ضºfGÆ<“üÏP̓6€ep¥Ö¥NTl6‘À%U ÌG¦WQª—oAÑ 0¸Þ¬½cJB3%è‡dPç ñGá·9Ëå‘òCÜûèÜØ Ÿ£ÊÙï분 #—jÇ–Å6Š¢LϳyïI­¨|uá?BIÞÞJòÙI›“cgÔ<‘MEB5maà‹¹s>dQ8ÖŒ“š„Ÿw‡u’+Ü$]Õ6žÓ‡à*ë„Å~¢qDÁr rš…ú9ž¶¨4¯6±W÷1x·¸{5üIS›è©{èž(¿>Oü²Œ6Ó ÇŠÎT\ ZLLr '$çfÈQWwU¡²‰`qUw«ýœsÒɱhèlÒôú²ªp³¨×Ú#´¥~‰öEj>̉^N×Ó³þ’ôü¬eJ©#k0"ƒ
+ÐcãõZ?~ê¿ø¦óÅ8Ç놶f7“ŸÞ1''¯Œ›@?}Bí˜ð0! ÇVk¶b:r:RÔ(ÆäÃÿNœ’^¨+‹_UŠÐNsÿãóפ‡Œ,«H¦¡äæèü¥¬ÈÂ|LØmûþ–ÅL‹u *~I•Æ§ªrt«ÚÆ{–wWRë9¼…»:zaÍÛk/¤½„{àÞ®‚С߬!iíÇWwnòð'á†=Îä<Lî•Q*ÞÁî ,ˆ*ÆËÁR¯%‹ôì…ƒñƒÏf
+%çÏ…¾²¯R·ÑO| Ú"‰ªÃæeø. ×Ùîízd;ÉX ¸Åóõ»0LdúÄúìLŸ9–wé¨ÓN<¿yéG{w®Û¾Ó§Ôäü_àë­>¦@ÈÊŠÌuã1ÖàS¿cg…Ðèi¶}“bgQ-‰™&ÕSXiØߊbœ½»=Èž´{h v™†Mý¶€¿
+•3S¯,ÝCôù±L¹@›øµqåb$ wiQÂ)è¾÷M¸YËF¤œO*Ç-ïë´Áº…Л°£K7WvÍ}Jz>YÓt[ ƒ&åÞÏ P{ƒç°?ó¼`Ê®°¬ËãdSXüEa¢ªªøJõ§ãöh±bßsš²à:³i&ºe«¹Æïýh¦¤åmÈy ÿœ^=÷ûÜ©ª~¬µ¦›k°éž™¸Jí“D÷º¤¥ç•oÎÞ S8µþ´âÙÕ΄@Bg· :uñVž4’úùÅŸþ‡R}è•(Ê*&I’˜çÍú3}çíR'Ò§“bà¨=iÒ[$l<,Г~Ã;Á¨XkFÐÖzysÀ¥×¹.Xé2"9®žLóÃ[–Òm~¡*ÍãÜ5YnÌ-2s=°à¦ÛÒšGh Ç G…åeÃ;£mÑÃõ¦Ï´ÖpýþÐÛ˜sˆG£DH´VÈôdaÏžâc1ŠÒÄ’žoW7vøÕ•ê&œH›‹›C¶ñ¦ú¶ƒ­š—[ɾÊÉ0¨¥·Ô»µ—]<A]óW¼ Ó²˜/Ȧ×jþ72«“9X4ûHÍ¥ô,wçÈÃú´êÛËý‘"CÄlR®ŽµË`?«_b<‚etëñNWˆê`…zäCÇáüÈwÃýlPe VañsóïB]"
+º ®鈚V cò¢9:¤ #Š>ú]Ž—•ši$*ûØ ‘¾>*™ë*TÛFI{Á;]ûT°ÆweMVr­ôÒ°µS—8æk‚´„QXGé‘ऴ=áøTg2Ge[iÔÔÆÇè#Ù,â°
+ôn]&Ÿö†> àƒ¯80ÛöÏ°¨®“&€†•ê.¦ÆCÃÏC,¿ 2¥’Ž±äG)µºEcM+g7ËÉ,è¨SK„—ì,».9<^)ä(ªá½iÇÙ:™WU¾Õ!åM’µÜ,ð:Òs=×ýIííãäY¡!(žfÛHÕDÝ 9b Òx-`. -J¾2Äh ‰qy
+EÎÁtYùÝâ¶Çz›¨,ðÑX[[µûõó8ü7­f‰BŽÀ<´¼Œ´AËÍ=›A©ùHD\©Ã²ÑÅÃq~k]âNq?^s«þ°Oçu~äT=ö>½þòu'MI±‚Ü–†šhò¸%òaciÔô½aæ;G«"[[£ïžSúHÏü‰>æ¦*$q–ÄFÃø-:¨ö«,?1(&‡`¾oA¸pAÕ;’.©E–öÖÿQ3¿O§ÊÇŽ@E7åØf­¢õù,Ê\yWk|øâ=fäŠa™³ºßS¹q±ÔÝŽ3¸œ©w¹[¶°²îPdW  P^ºûÁ„Kè
+Á5ú2w¸×"¢RßIJ¯©ÛÒ„ùhN±H¥ý/;ï-Îé|pÝ0’¼•> 
+iÕ¤œ#¸Ùa)yd­~ˆx“*ÖèÜ0÷Q†‘Kg&rBì¿|Á±¾ùsq5ÃúLâ3›+‘0@ ËgwûE"íÃÛdÃ8[T£µEC±Óhüll,íQèðQsKÍ{Þ˜»+¼ò§À—+ˆ>
+ªÅøÈ#;¾GkÕÌzÝ矜Mµ‘1Õ"<ÁÅ÷éô!¶AÆ—æXҺ䟄4Ûº­täØúq¼sFv®éi40±Q¬ÑcÊZ-µ p)÷móaá‰ò?C`øÓXâ«E}6pçmÞ÷0§:{6Ô\v|=Ïÿu48^HœR’‚íáþU‘…rƒlNLø[U$ï¡­}µbâ«¡×1.Øåf”o%‘ `ÔÄɃ,U3 àòŽ›¤;ã.õ&Ìr£åˆÃßXoTŠbö.
+̧ |±ðöËÜ¥Ó®²*Þ8^ó>Mm…̳a ² … SOF1)?ú†,Ø4`£Æª%øF&Ù¤VèuüTz€BJ9îÜBS™OöNþÁqÔªC¦üð±i¶Eãw]e ¤ÜŠAÐg;êO›žÐê» ]Ò\Èï:œ5ƒao‡¢=ž7¤?ÎE椳ÏW߃›Ž.aYc—dÉHSHZ‹²Ðn¤>LÈOóN w€¬ꮸXF¹;êÃ?ÔMSÓòLà£;¸H¬<sVh­@Ù ¡€œÚ§Ï!ƒ]§ügf­1m‹Êü?_ –¹ÜJç±F”¢³vlÜ'eIØ>I­-ÎgHÔÁÙÀ9qçgøòø–<st٘ǥ"DO½àúflV6>³ÏNt|~ÄPž¥‡ß€c¥ŽŠP Rö¾°»8.Ž§×7Åf¨‘ˆõh¢_”ÚWñ⵬>Vë•ø¢¹•ì,d Ô:X Úü|*ñýê`>(9±ÈL¼3†®öcþ_*î1°IŠÕV{³Á zßÞÔ½¹ˆ†€Èšx=b€ìßÇ2_²êj(nP«yHÚöfÆž¾?æK]¸Ñ&Û$rŸ·2še«Ð`³@+Ï,]ˆâÁ@Ö7§²63"·õ*%c¡çûìCNÊ2*: Ú½F›²ÚÌ÷¥Áôð¹yV7:
+ƒ{ˆ› e¨Oû®2´tDq^*%a÷æPÌŠÀ¤ÂfV«ZhÒY 1kœì[Ù%ÙÀµ<P0ž!ø3“«õì9órø¼CEïgLl—)ƒ2}ô’ýçÇ Á¬ûoÁ½cVËÛP×
+ŸSŒaåÈÄšW´‚L×Â%50¾ãÕ<hZ½Qßß·¡Ç(1ü¤µ|22‚¸×+ ³qZøŸBŒÂüYhø”ãüòÈ|6úLÝ)ø2
+ŸñÛþÌ61ŠÜ¥øE°ø9ï)öÎŽ|‡˜ØÌYбn9è©»dJ7=øÓ–ö·Þìr;9 º {ÂçÅ)|;™Ö!BèeÛÊÔ"t¹ï3Ð<†~°  Ëì°ÚŒ:I¨®•\S ß–µ«ìÚ›
+"«2bÍŒ=‡KŸtÓˆ)ÞààøèÒZ†ƒ¬iÓ[µ •Â–+•nyŸ„c8\Œ=”§LŽ-!@ô`T[¸ê:á}Î+‚ÑCz³,!ë ª‡vW•½ÁP¿É½ç LFšÙto<å>²³<¡~ÃÙ¸_‡;– Òª‘ùŠô1ß;qf¿¦ýøÚ¯ÛÆñvuQ|°Ðã©ê{”0<ÌN’SÐË#mué!k9IÛ ŸâõÈ
+“—ͺ†nä8¶J¼§W…:îÙú¿Å¤tkÍzRM¬êù¥¾€»ó'¬µ8 6lè X?q™³–zƒÔõZ‰¬¹cZŒ†S’ÆT×üz®ï±ðbŠ…ઋŸê)ŸD‡>:
+†ÎòcƒqƒŸŸŽöŸ4´a¿ÓÔû¡ò ÎëщÉõ}|hüñÑœPws¡ŸN!±»»M믞A^ûŠHÀk?C†ÅNátáèrë¥Æ@{³Âè‚=;/•a kJ èP“°vKÀÕ­MýÕ
+Îb¶ÉÞÃ6¡5[ÖçÕ¾
+®3
+î)zÂ×<áVdâè“…d®ðÙÂUpª³‡ä~b3ÅÈ#vf”:eÞja|¸†ØÏUbº]êMt™Ùz®aƒS ÖKE:ü÷þó²Y\ëM:º_>6×æ í×~·†‹3*²œ¬šFcSñó<;™KI…~ã‘<GxZGHœÊ[TÝf­°p‡áåy÷\ÇÆWœy٠;Ãß;,Cí•ð}ê8' â9ÈÎ+$[˜ïÄQ$çeI©ÈÄ^”s®¨c”5¡}/­T0¾ )+Á^ž<C[V&«ØV¨ ža•åí¯ù±©f»[BÐ\,=ÛK ¯LàÐ5¤O|ò«crºŒvii"gNXª"©wöÀýÞ˜g§pƒF«†Ãñ{(ü+‹!cïä`òÐ>ÓÉf?ÓofŒÏ–LŒC§òvÚ§¥ÄoéõÂÒ)ˆ9O%D­åþŽiâ’ ÖæD~1ÂÄo;w”±ªXXâˆ|õ[˜ºKë¸ÙÃ#½º„° ÏLJÞokE{*Í÷s®ý¼KœÞ¯²™ÓÉy¥n~S¡wÜCaþ†ÐE¿¶ð*õSô&¹œ`•:K®aæJ=†úÕú0«ÃÇÇ”kúà§/mt×fÔ¨[ž‹hSv@àºkQϨh¿ãÝ~p
+ê×Ôåv ¬Ñª‘ÖŸˆÄkD)…ÓË’Èd³g’CLeu`&Uÿ¾(J%ãv-zˆr¡Gñà%½j}{wüšŸTÉ™)£eá]â(–‡WEêN”¤_B³ ‡ìé†0Í‘ÝG†¤t‰;Õ]AàWDCeÞ¦àýµãÚÈO/„Ë>W¦ÐŒÆŸû6¦Ö²\ Pe^ «¹L¯ÇtSÀÁ’TÕhÚ›åŒùG3FÜ<ŸXî<Ú¤)VªŸ_°"ĽØžý\“‰ÓÚ(!àŽj :Ñz*î—_ÏÂþdoœtðÅyf.S€É¨.— ¾»—ëìßR3±;¡!%Íᙳš•ælŽ¤6Oóîƽ
+ðIùþ¥v …×GÓ%ÝINÔ4<ö7Ÿ¡{Q>3 ï¢ïdX‰êú;¢%ïíKKC«· ¢Í±/8YN’í¾‡ÔÆŒ0…–Õ‘V;‡ëvÎ ¤ÆIdOg#‹`¿m›xóZÑ0ȯîŠo¬ÙQ¡êTŸJÔ•uÖÅ_¹(ç>ù¢¬+¡AŽøÕÏy›pÎ »‰ Žæ¾©Ž!®S$“í£Îk©ÚþŠ"
+œµÛØ #Í*Ù·}e(òºMû{ª]nFü _MɆÎkÉ–©°$8.%fƤpžƒÈÌÒüÃ&¢ÉÝÂÏÁõ˜ÈLúÆú¢fsÀˆO¾ñ~q uýR“mß|±´ÔÄB†ò–Õ[}ÐfC^Á9Ÿ¾˜ü.Ù˜nAO@ñÅ&á¦=êc×õw[‚‚üØÝ&VY”æ\ã‘ÍŸ˜hOZTzñ“vQ*ÅÀor⟡»è¡¨_—]ÊŠÍ'é›a›¨H.ÆÝ»yñDN¾‰zÂuÌ ÈîW î]!ˆ1¿˜¾£›— U6`àç’{#CbÖæ¿^kŒ¹)›aôjKK+.b²x¤úrÇ_ÑÖä{›ª‘é4=Ý|ÿë×YŒŽ,7#û›=k§_‘4h©4’+!録ƒ|SMàôoŒw«ƒ#ù×Ü‚¡¿V}óÉ:øaÀo¸tÏöeÞýÊä]-eH½! Ï#æ[ÅPS?ÄÓ²F "%'üb}ÅuŒO]b5Ý$ÃØuÆÄú^+ …HâoWä_ÇTIˆ³Äšz=ÆaŽƒ‚Šzb¸±h›2饸†ª5¥<Û¤Ñ\VkríÞ`œ®/'=)³ìÔ
+ÉÕ8²AT¶Ùr÷ ‰œËÐm\`Üea›;î})–Ýx:Ó˜~Bä0‰¶Éjþµ]ë•-.ðSf®…›üÄ(-09É÷“Máôi3Gæ`~‰¶õÁ]ÉÉš#µÿ LQ¹§ôÂ3o<æRòk‹›°õÖ³ƒ‹ZºçT«­‰Q“ðƒ;w ‡Ð #•»RTô¥9ÜH5À^aì{„+±ÁÙ
+1íÊ€<¶ãÌ7¢ñc}ê%kZÕxƒµç¼|¶Rš°ð>É=/<=J£¶Ü«Œr'Æ+šnj燡)ίªXodˆNÝXùù*P×”¼ì<$v¯4X#Ø8‹eªÂ–H ­K“’¼$>ÞêRgkù×Ø´Žû8°ÉÐßÊ#¬€7Bu%¬P¡J¶ZCØø>Éîë!¼Uz«=SjQYz o"v?XLYÑ3LÏ°XBPùl›ÓŽ0 ÓlǶmÛ¶mÛ~ƶmÛ¶mÛ¶m{ö»¾³ÿ
+*éJVº+]=ú2»qsöh}°±ŠH½“~³KŽÝo¿É* ÏÍ"ÉgØL‡½ú©NÒrÏ¢“¹ÄžBgƒ qãOŸ½ë|Òí´ùO‹“Gý#w$9E®÷”i†è©³Œò–=Ú
+[ÀA%Ã%2ÝB-Þ‡ü½ Fè4%É!ðgF¯ñÈ&œcâ“êB™©™è›k#2u<KyvlÂõÅ~ãÌÉWù&Š ”B_!Œªô³lG,kºgwL!s™
+f­×%30‰ÜO8A‘}ÃøRÈ f0l–
+‚çöÑ­l>< ‰úùUƒZoÐa™ÿXˆxëcV9êÄ@p¯Ë6|s©Œt8ZÙ¹gƒÓç¼FÔýgÊÆ6Ÿ**1Îo¹`.É‹Äj£<¡GÙÔ¾öÍÓvu~|U*| ÜçAhטâyÔÈWÛÉUÇÓ¡.¦Óö„šA¦$¦)º£NíñŒ(¦¡Çq§Ô1íí²jš®2šNÔ¥ ×Ú„‹Dàkúk®>±3ÚÿœÍ[µýæÉ0q8欞õJ;“W,Û¶»NˆÕ§³ÃÅîËÒÒ ‰‚ʼP;:`sF½šK'ÀÛè°°mÓCí›q4ÄÂ8„¸Ñ¾þU ë„,€‚wŸPdÖKsÐß­ºf1Æ;䙀Ó5C¿©…?Ýp0×[ÔÏ‚Š‘¶„r×çÑ*€Àpœ&eÖt»³2fꕶÓ/àt,·ñ¨(§üˆ)'™7¹Á°J×£ÆÝ=¹xÏwÞ?cÕûÒ›bãMh´qäï2ž˜ýj‰RÁ¢ÊKÓ(xatâ‚3sô¦n*T²‹’ûZ€_ÔìM„Z
+§2 Úæ{5/‹tIs€‡ýEŹ”: `Q|@ë‹(hŒûA¬šîX Áï#Šsû£Hãd-Ò:y¨u‚Ø÷5[Ó°x&dS¯Ï;›I_æl£îõ"ölº¿ê°h“L2¦,ížlÆjôgø^µàÂçÅ2çü%A%$—,]7ò#ÿ^ûˆo¹×vïF}bçO_ʶ÷Ò®oxb튲üá‡ÙEð₹ a®b…înéw¾?Û 0A¹Fl0N<§gǘ_ÈŒŸDðÈIúàÅŸå?@
+îÂS n
+`/ Z*&ôî,±}Ø›ÿ ûïƒ ž€§¯÷±û–—ºd;RH;ÍŸ¯5»k}¦<&Š?ÅƉ.y'o*Þb š7ËVR8gZü_ "£kÂÛ­Ã¥çÕø]¦eú0e4,gŠfyœí:™Œ&¡yCвHç±øâÊ5ÈURýbå¥ãÛ}AãŒùAwh…¶Êö†ªUL!Òù'Ï@FdDncàWjªoŒ„NòïM¿srO¡‰.üÞø²‚Å»@iõ{óoîJSBÉâ¸ïDÓþ*Öìƒd}Y?Ý>²U6ñ !ÀµF™ÄKaÉ{"‚
+:ɘ´øzÔqS²êþkZ3Ö&#í¨Ñ-w«êïm
+r_¦%Üå)ÛT‹SãóþÅàj$¶z͸L¹ê 2`°¹]Osì¸#r|ªáF¡¿žCüçj¬‘ZÏüôO3EDùv0‹”kE0*oiLÝ.ç,Ëÿ"„Jz{\¤m—Qá6Þƒ…/:a `ÐjêóÐ rKâšQëwÆ-+%á« Î;–äÞWþV鿷葺7úÔÛ>L;ɤuML›e$P©/Ãôl-¤¼¶~ÒNøó~w'ô¥B£( ÞúRÕ%@“ëvÅ˳R|”Dî#0¥°]˜ël^;_ƒ0Ýžá›xƒÞoøuЙY¶á®Ú­µbÛtqRP$ÃÝ©aœ:\k¾$`5 …ç­[¡ —,jÆ@¦+ƒ„êÊïlë"jé I£cbÓawY7”³5
+CÀжٴ ´
+Æ. û£ŽÚ@’âü÷}ÐSÚö·˜aåÓí=Ažé£¾â×1ÏzÒÀÉ™¦¾Ð—±0À1­GXÔÏ,ùÕH¦Goåñò¦yÔ¸¨8âNÖ {anŸ\j"²]·¥ow5¾»Ðhë­aý`Cüúø=7Š!Å<MdY÷%cYº™dô¡C¼ µÙöBž眿·ÕœIºE~Ò|7cþ3ÀX ùï>^uÊr’ ìŽ "Á³\bjÍ¥'ð»&\e3Pq<p—¶ÿ2âÏÙ Y߉ϴ–³Êj9¨~ãÊ÷'eßýð‡vÕa è~7’Šëÿ(CiÛüæî^ð¥áowÂåbŸ¨l†“2dôqu¸hõÀç½ÛÅ–œ„¬e
+5)øá¼E¡ úZ}ey $¼_r@\Å1Eãl"±r5-`‚"ÀûMY3Ùù¹$—a3ÂìŒ6iíÆÆ~Ã;ÿ•_¨)ÛsH(Z¢»ïP¡·Uˆ…ZœÕêüÁì»rÕ=Z’5®?%äØ6¸øŸ›ŒÅTOß0¿\wå†8g§ËBEÑ×úaûª êý#‘›)m\^½W3MŠêqÕ:…0îÝÝ·ZÝ°Šß¥xæ #Åä\«z®_h[§N0À¨  u9zJ¶ÀÈ\5;sØÇužë£Ñ°EtG_Í]šÀžÝüòé˜
+0„†ÞŸl‰âÖ¢Â×ôm—>×bw#m‹ûxþ²ˆª=ùUíì!KÆhø¼C E] 4íƒT
+4)߬à[}h­.Å_ùl'åç²]¨²A¤*p¾~XØ}ïrjíÀ‹ä¡-¯ô‡ò­D¡ó¥¢þòlâ­}°ÜÞuZ?îÓŠ®®p ÀÜ;!’e¿ZÚëRòñ}¥lÍ·‚Å#b*HTƒ}ŽCìEõ•À|†€ô­:´­jóYG-RŽ›„X}]~þf¯MñÄ&ÕÖwƒ¾ÈÁÌ¡Ïú[ LH·¨xÞg¸“žÃôp¿²ùfzÙ €ñ2ïàX)
+† êŽ7‡¾7:% h¾”¸êï*IgKÏ˪m…g2
+E‹Ó< /K¾PTµ …ºq8¥!y|îòŒR‡üˆÆ)°äk=Z»ÔË„ìeá»i3Q´/-m(×ÐH4Ô˜—»¥µå˜¸e2¸üÁÁöÍ®Í=GhKv]˜û;Ü.óì¯éµÔ— Q¯ïTŽ%}‚rƒ¢¯ÛÈ
+º§¦þZŸ0ptbf'’2­8ÍgyÀ?‘xŠ¨Òÿ·Ó¹Z$Õ¹„=qö Y(‹¯u
+”c :Â68_ûºË7þ=î±ïæ…;ñ‘7í1A>Z’PùÚÛ‰[_˜%g6~’Ï«›¾+^¥¸ã(CI®94Ì—Jä…ôY±J€È•ÞJðI4aC´ŽbŽÞ¬·
+¯³ ·~Ñ‹ÛŸ“XBF]Øå ˬý±w‰z·ô8UÌ+‰86:²èBÔÁÀ/ô¤¤HzߨZQÎg”[ýã“¢jR ’‡Žã=^‘š¾[W¸#<ê¨JcƒGƳ-˜¨kCÏV÷—7÷M&ŽÁ´B‘™Ò»°¾MLª¸¸½‡6³Zfq.ƒ-“Ód¯o¿L¡¿ª ¨Ìy»ã—ÆŸÒ°2ê˜{㧔D?d”!ÖòOç
+ïC—(¬6ù*tœ¬Û‡cÝ~<êiö‘Øý>òO•kúŽh?ö‹ÑcŸ×Ðôá߭鬼äó í ¾¨ÍE3­)
+rσ c5ÉÀý탠ÉáÐú"5±~ÆßÔ4ØÐÌþrŸ=Ëß›tÁO#æƒÛ’\qt1„ÄHv•{p¾Ô·#ÀRÀB9 mð 'Y™^;NÇJuŠ4®˜{gl~Ñ!TÐÖ?ÑOüt&
+2-”a¿–~wî¥núj.²ò°hã€)®¿”Ô ªµ= Fñ[hÿʤãü(¿Ehîˆîu nëå
+mSÌ—]ðKžÒÎ/÷ûJµJ³A½¯QÌ`ðÚûðÃñ3¾ú–ÐD!g¡0†Õ\,’ ê=%+5»)…le;ÌÃS ´ÙJòÒÛÓ‹¶:žÈ5d”= ÚçæжnˆS}=Æì=r$9ö§"^¶fvòc_ø×,ù³¬?Éufi5¼çÖöU'¢}ÝIÝPzž‹•åƒõ›âÐCK¨Üƒ3 E°€ë6Ò}*ÆÑâ¼5yT|c‘bN\;6iV¬@}Ä7¤zob‡ osõˆ5ò._ñ û”÷„˜ØÔí;n
+nîrˆ Æ.g—Aƒ
+w¯&‚DÔ)¿áÏ4¾ƒÏß-ÌçsÕìò]Š™oC¼²–’fžtÉÕô^w$.k‘ùwŽ²¤$M€S4P\Žw |à Q¼ù}OÒÓ{×mð6êuèšÄåp9\Ú,X?²b”)¤ 6ü•l\/ .ë¤0“û­tp…y¿v7¶ÁÂa]ìg]ijJ"ù2oL¤})É+ã`qýɨ×w¦°¦3æg¡¬¸î¢Ö,yëŽðÉw%Ÿ'ÂKþ[Uúgæ€VàV­0XAStr0“o¹ì »c°HÅjŽ¯ä,üÂØ9ì ø1²}“ê f¾ëlÚv;h`Õp„ÊT‹–|2pÉ&š7™»‚ÄKcð±ý©š¸ÌK ‘/4rPåVt*Ø7ãZJÖC¢êªý·Nœ×ä¢WJ(ñl(¡’d5TÂ~Kì+¼ bX¬aÌÑÖ¢œiâ…þ;W6x%ú¨´Y±€lG^ÖLG
+¼ê¨ç°hÌOl™¿º¼3a †ºÞ<tɦŠÞ׿eè*®bÝÿ”–å•« Ô¼Cã²2eà¡2$÷@ ö ³þ¾ƒ€^<TÒàm9mtR@•“¥oŒÈ
+R=Í¿9*Ä^-FQpÃ'„rbíáǧ¼Œi³ Ãô°‰(ö±°ü(ú—¿eO'hÖs!
+:¹71•­b2ec\Óµ±·çÖèÿ—ÔOZ½Ý­Êbû•\ (vd‘4ؘK'ñº;ß”]Í
+6âðí•-}¢°óƒ-Ëi<cÁkYnˆ‰(§D „ÏAø™Øݤx:s†ãÜîŸ*㩃ŸwSŠÛÈw²™Ã—MOXÌ~îlåœD•ž×úIaM£y-Z?#ÔÃfMk~ø¬0îÙO”Øé´J™0ûá÷‹šf¤Ï„@³IRåb_ì8uYr fSÀ'݃¬¶;gÜ6™æŠI)VÁ’rS´úaþÁl n‘ˆþy#üyí´©sn©Ü~4[YGâd?½"qË”ãÙ¾?z5‹ÔílHˆ±(Ògèž1"è6òòEÁb–‘ä`ˆ ¢]W—
+m>c®ÞŠ¶R£µUÛ)ƒÈyô˜é<ý¶á&YAºß¯Ë~ÙEB_õ'ÁˆÀH›Ó¨;ÓY¨Ö7ZV½Zûi'Oõ}¢ýèËËf8kðÐÝ|;=•â«d°|©ÿKêaM.g²„Ë¢3É7÷}Ô}c`öó‰IwÕ°0IŽk^!¼ ÁŽ_qô€.÷[Ÿº4r/¹ùÒ¬/u?¯Ï=
+Š\ çÌ©Ñ’ma¢SÅ(`óQÅduTh  n´þ|ƒµ é‚SÆß'dZH2Àlsq’LPÊî#€µŠo>Uµ›¸ªÒ®TR /])ëÖ]D{ê(<†ïÒµav\2ÄÒ#.¤ÚgÂeÁƒKnæXpîi9Ø^1~‹ùM is²,¡â¨aÜšbƒg…SšòÓÄ‘FTÀ)Á¸¯Y6é&ÿ[†àüØË( µÆîê¼5“WÞŽ³x<ä^Q_Ô@µg“&ê£ýSh'àNö9ª×^—ÏñeRLn««ÍbåûuŽhQ¿oå0 Bçõ<0$ÌÒMDr0×[sËí0MWM€ ÞÆoGœ åMZ\ŽýªF7¦ñù=€_‚v3L~j‰"gØ‘£¶[jÈ[cmå„ãµd,P\l«ÕUÒˆR€ð· Ê2έÊ2‰Ç´äÔøÉIþ~*;S~?´×í½&ñæ™{=ꘃ36ø6ݬ‰2”Gö€
+T7Ï"
+_šá"¢„TšÉÅ
+
+ùź!ÿ0b¬"£˜fy2¦R[n¨‹ÚJ(o{­îõ`%gx]¤XOæ]› b‹Ç/%>US *¦Õ˜­Á|ªìBu Œv£¢.#b¿fB ÄÆRáñ"„@”Íèk,a¾PœõË=±_³4\aK_‡ åW{l¬žeþNûßES¹ãbbq4 ÖÝ^+æ^ýH.”tL=ž=JžåÉ&ì4¥z×ÛÌp©;užn›*ÇXäSÕ9Ïuk{ú.~6–úf,ùš‹Øà ׆I±SýÅ îd"M¦20QœñJ{T5pny¸
+rm”\^¿oUDQ G3Eák;Óˆ%¹<€Ãþ®%îÇuOÅ]Ä%»¬=׋æÞU͆(Í{V­ÞÀ…Ó_çgIš ›‘F¥eûùµ÷e‚bWv¢žSG¤¼½0¨ÇË÷;gãE:ú?p¡sï`¼|2„“” þRÑ_ï(ºÄþ8ù[_
+1pðû<äU ìòmÓP3."Aý©bcìßR¨Æ釷é Ä%Y–‹éæÕ¨§Ï)vK×ÿNí(Ïýë5+}iõì°Øznà~·
+;ëƒ,>sÙD›|ïDͲ’z°µøm[ÄÃ#kzö?¬Î§Æ—=ÕœŒ!Q©?LDË÷4w¼°Öu n¿æ`ÐQ¾uªuµ–)ßåᢩÂÊÑ öw[r#mLh²œnÒe¾a(!2sâÎÞù;hiQî|Ù/áË9F­èWòcÉSܵÇ4µ5¤+›pŽ1û‹}Ù*ñ âhœè4âu& “+1KxÏ—A®¾˜J0PÉÖZ£u†‘Óöj=Jb¼poÐVÆÜìÍ+ɼ=\éÊBh‰º€=šÎõܲ²ÑímçÑaœE#[’‹~œ› ª4¶ã¨lº5.®{ýŒ¨Ü„²”é*$¼®œÚí ¹eýèÒ+1L‰l0i«ìDJM×üøo<ƒíYãó‰pÓõ ÊF´ÿH™Ò£ ü´TT‹%¬Ì-œ;~³Z~“Ù³Œ£ü»tÀ±nx`²Œ/åmßÍ«5Å—ú+¡†'Á’MOJ¥à<’Ñëˆ<ÚF–¶GÛ²¥V` ‚æ,ÃH&ž"âÚYØÉez£B‚¾n›Pßp“uØ1³ÓÝ>+amÕKGóÍÿ%~½*®ÚBùãà ¸Ãû½§ã´~ï4;H–7ã9^“i×Å(&3qÑUø@ËgÂhIÓ”ÞÍKƒ(£ÏÓ:A`öž=†?ïÃÊj–éŸïÝŽó2ÄŒ%mú…ævvŒÒ´à—<Òž&=ûB §Uô;x¿ñãCá½GSùk5ÙGݧ ä´s/„TÉœe½Q´ö
+­ÄT zQõþ‡øEG‡‹ƒñ¤›m—N†‰h¦e÷Oÿ‰®<ÝWF²·Ó“ôÒÖÌUµ
+9¡‹wtsm ºI„ bm‡±ä¸¼•4]4Vªÿâ#Âø[Íꢖ`²ÖYšw¢¼ŸUÚ®T¨åg l“<ïmEZàC%Y‡ðùí΋›tYÜËP‹Áï®ÕÊyHs°bÕ¥ {R—ª ¶’ÄøÚKes›š#fóÕnùæ ¡}ágD±ºþ#¡‡ôŸØKÈÖu Š­ì7û~Ã7eûv´-~³­Ž@Ãâ"oÆçèT© îà´Qq–¶l€Û9
+*‚9¢ƒ­ýbãt~Wö)ôÄ+Lt“936è] yʪùÒqŠ‡4Ýa`þEèñ+Ü­¿[JÑÎ'=bþzÎka*Ô
+fðŠv-—­¨¯Ï‰ïK•Hm‡‰±a"¼vû–Þvˆm´æ@µFPO @T±“ݹ
+«ÙÓ¿>Îiú(¥’6½õÊYÿ^u­B­˜lŇ\lç®ý<q=V˜qÇ)Ö÷H¯!vQH…
+í} ,ØÆ ²ÝŽµZ`ö: ·ØÆJÊœDãŠæ6"ßIX0mú.‚Ø6Ö$ü"*ï|ý Íü5ˆ¦Ð¾˜Êåñ«º#VˆÒœg)¤…wrK©_
+íºÞ¤ºxYÃðFNΘÑŽêZ
+
+˜S
+Ý¢)è ÄUVf é»ù§ë(™‚Ù…_N’VØ$D”AúÆzámN£þá/=ÿ·aš.(ŠÉP°ÜjÔM(*Ä#(a°`,i{ÆäÈn u^Å04ss„Jaa9ü„M®­ŽøcMä|Ú ó˜]E&‚LRH!Ÿs¡ Ëî0•+àoé…§!ˆßè‚]U¾ðG„N‘Ðd{zÊNþ!%LeYq41&kÒÜÈp}ëm« `ØÛªwjŽSJ Å>Â`8Ä
+ þEpî§(­‘öóHj¡²rQ®Îÿ†1{x)†÷á¼(Ôµ9-ÈÊâm £,&j·&©”;ðPïįï£@wéæ†ÌXò×Yg×'Ä‘ˆ%3ú½j@:7I6i`ÿôÀ‘웢$@Ãäž«Ü©UXJ`×L/Õ§ÝæSÙÇInFѼÙ>9rµí— ^ƒQÊ6jyy1á(…_m=gRÉ8ÐÈëRÅó.² Õ1TV`ºZ›8‡ÂöUΣ½ÑM£Þ}é—i:ñÀ7|u’оL»ið3¢{Œ±¡Î’¶”€Rðo‚ïY$Û–Œ²¯8kQ4Cl˜õ!i=ǦO+°Ÿ} ®Ë) ëoË—ò 8ë$èL‚Ù×9"¥L.g]”>AÍÌW"˜ïDYƒs0§u’ü‡¢ß³äkÌ äˆ&ÉZtg;?²Tstÿ®ÅÅ[U‹£×F[´˜ehJYä‘yËU¡0(J€J†GèÁ%®n‚Y™žW¯õR
+©ÊIÔ•žYNH‡ñÂì×c³ Í„} žbBlßÕ‚]žˆèŽvx¼µæÞ9ˆ‡^Wœ/@·~¼ù&^£öäpuŠQó×ƨÛçþŠ–Jüx‚Ðc°LÛ)+5`ÚÝíÃèò ø¯ ….‰ˆÑ¾Mü~>é/–çâtÃ`æOöÀvLuíØÇ›}¦$Á”6cÀ›È ïpi”Ü#«yj^^™¦‹Ç‹â½(<Æ^l/2¡\Ä>åî=éùAgu7½9´sF ®
+v!é€MO¶»- О: ]yÙf~Dž.?X–{‚’ÐzÃ!›‘UmW¦¹ÕjÞ#¯Âµö-}‡–ÈcãáNòóüœ¶jÜ­Î0<_µý°Ú÷Y¿ ànlj^Ãk0%’¤œ#Ðx‘ ”ú‚JýýêÎ.­1œ5G¨•Ý÷†Ïu‰^I·' P“fh  @‰7ÉJû¢â‡øªj
+½ãÔÒßN 5Þ÷rÏlöˆÔý´¬³J¦Ò“õÎgܽ¹JMÅù%›îþÅQ·°5‹- l3‰
+-û>CcúoQ4ú*>[G’qY¥ÍÎɵå‡ãVBW«âÍYËè¸ÈRZ\¤|÷DŽ"‡arhyÈd¤ž<–‹^Ú­='è`(F&x²9Á48³¢ ZqyÚÒ’&lDônÿ(Ý;0x/‘¼ÄTî›Ýr¯×ªÙdÛï­Ç¼ÉVÃ{î«OÓ¯pϽ\[ߊŠE(âª|VU@èwÏAë›UCõ4˜”+.øÎJ<oÈ“NŸku÷zÌk|he,4lÝh¼­!NY©HGŸ„¸X¥X«÷EX¤ûé}æ•éÛi6÷¥úǨ'¥¼}ב“zXUóûrOæV³_pXO½˜Á¦H*ÿ0^ÄzwN»‡¡`#?r ·h!<ÎxPëÚ²ý« ká_`å¬L:—?ˆdè €(Ù‚dÐ4âÉw6ùZnœ^óìúls‹@jxXQ^Ÿ’™œúi˲âÅEX'ÈWj:ˆùïÈ(û“쾆xænÁQÙº“SSG§ºû¡ÿIïsÿÙE‘”7B+ ˆ¨7œ¤51ëŒ4‹p”š)k/²cã„´ªg,èp*6¡Õ6Ú„kÁS“ˆfótâ]²çñ¹õ™hP`±‚ÈU?¥ÏÈGúú’%¥(‹ùÏñª]*Ÿj}^!]QÚ¬·þ¹põŒi=83\d¿|羕ö2¸ª0»µç;«ÊãdÇIœ!U ŒM ]Ö:‚0›®níV‹<°Vxsü‡s¿¥½Ój.~þßËùXM+Qì Õ(]3£;-(MJ“þýizÍ$í ÉBh×XP¢5¡â¶54€Ñ„SÒèžÔ©D
+w8sÝ›\0½ñ¥FøëøŒZ®Eºß<*7Ž2x?ó›'^©BÅ?î‡5WB5îV€N›`5J_™©v¶"6zØt¥V‘ßôš%Ò =p‰ú ¼( ¸GÉ[5ùhæõÔ§«ÀùWEÍL†5XiÖèü]
+š¸ë:î9 „•#¹6|ÄI×GÁÜIÑÞ¾ ¶×j¼Y€-:ñµØáÊžÕÐzfõ—[CåÁïÃ×’–P_\òQ‚1«yÒâê؆i`[ ÷`\s`
+dûûYð(°£ X…
+ ‹¶„çv`- 5àMçït®[ áÏDS¶Ò+û” ÞQfA…Jgñ:Å´þ•ãBƒºfïõŸÂ‡õååø*YÆC¢êuŸV¯û
+c~z'™ßq(BF¶D§VK¬í{Ñt\t´ ç¢çg>q‡7[êx5h³kq5…kä PýaãYîvæu¥¾ÝÓO<Øpš®ä2À6îlƒ^±`´,% \}Ü™Ý}<ø¿Í™ ªé@ì»b¡q—vçáe®vóÀÂS~¼º2·uÎ-ue)`Tø´FK¦`ªg}KgŽŽ1Á9½%`ÑyþV$¥žˆž}ýb¦‚ ·žž€°
+ù3:|ŠZp“ªÐ„º*GæíÎèááÍhСp »¸ È/¨yƒ‘•7ÇÒ£c¶TF¢Ìqµ€E/êÚý°!â·Šþu¤ÌýÔ³R}¢Ç¾z›r”š¤ïzsvËB˜g‰Ýwi+/Ñ’çQÌ{êÜßëKÉLb˜Œëu¹Šå¢“*ÇÚö£ë™6è(=ìÅI“!RïV¬±Å&"b§gÖÝòØÉr²kU:³;8g6œ.í|Ú<Faï-Y«á>bõ§®ñÕÏSRó:IŽIk9A|kLÿa”‰²0ˆésų~ ,Vúê³ö²[7F:៸zÈjÙV<Ƨã8&ÿûë.ž&›­~Ï•ˆÕò¡ >Cç‘õ 0ÜËAHV™Íƒ¥1é‘æê8ªn¼àéÿN±ðøá…?tÄuâDî⦘½Ô´8ºÆ[Ò<ÅtÖlD@óÚõL}†]ÆB^aLì.ê¬7ó¬¨ËIТq$<Óå"QÏÆ^2Æ`oŒ²&ø->e\›ÛÎÙ¦‰ x]0,8ï+xy[@£
+à<þ,D>òñî0ÕMP°²ÉR‰Ûì~W^íìÜQM˜t½Ã:qDaW_®CR;‰g6ùªA ßq]íÁî”BˆšÒQ•Æ‘ÝÓõŽÜy“"#“ÆÁ{…ûùc?‰A|(oºÿ{.ÞBLáΆ4Ùqt1¥6Ùò;’ʲ[†|kE]ˆŒ¨£¸ |#÷ا”£ÊW¥dš}¨%V;0RW¢/wgÚÓ«rüµ x
+NÔ(Ì2X ä3îg…Þ§É!³Û—áþ¬î›?ÄVÔ—C»€Ù\‰G•Hvk…äí’f—Æœìc˜Z%WÿÇë°ç/YO˜p¹w*V¨Há¡1ðá>3D¥ß)þ¼÷É71WØ/$`ñöà«ã˜Œhùù³°h4FºlÍú*šõŸ„ü‡î‰®ž1˜({Eƒæ À_¶iYÜÌÂä…‰FÊÙ7çˆZ”@qjšÚÀSÓÿÙs4ã‹®ôy3O
+þ{©u‘°kõ©:~–x~ùIþØ•( 9õ;ÖMèg`©½œ¼2*9JìÇ ‘ÑÏ»åØl ΄ ¬5oè
+Î$/D ¤Ýȹ³‹>_§‹Ú~!‘€CËúàuĸ¶ÜeBŒ“y¯3‰Ï´â°ä`ä˹Š'1ÀªÍ"!c¡)^Ó‹ŠÈ3K~ü :ÐTÅn²>D(ÿ“×W(§SnrN;#†1P­œ"® b·„ Hîb^ϸ,áƒûÐU¨b¶/G¿åfiˆx
+$2™Ú“s/YÕ¦›ÍN^+b³švÌúÆæaZ¶"ô†óïXþMIˆJq"¥d8蜦Æ.’Ô[¯0¼„$tGÞ©Içëâá’Q0Íïg¾1™$vûáFcM¿©{öÃ{7Œ„ÅP?;Y™Ä&˜
+ŽÍ]+y€êLú´øÒ^0ì”þwTÞ3±f?ö×ï:+Ô5Ûæ€qÐV—ùöÇÃõ
+}k¥¶Gœœƒ¾¥ëÉ“hÔÖÕ¶Aî- FÙ¾¶ÞŒ>çV ¸Åb² žÅ‡—\lŒ4ÀÆÔ1Õ6Žï{6H ¨d åöÇÅV
+ÄE¼±¾=©âæ[@Epª½ÚŽÐ:}2mêŽLraøÏû\oÂrznÕ\îPvcÖøÒp˜ÌŸOã(Ô~„÷klzbB¥sm*nÅ ÏP}„=)lã¾Ai #êêÅDÍz¤!¢1ϬüŽû su¦ž®cÓ–M¶YóF^;»€±0½ä
+M‹¢ôjR
+ᕵ}²Ï¸Tùlÿ,6A<‚%XÔ¼ð å+¾¼IÍ3´W¦÷™ð·î¿4¾>êc™<Õ'(ÂyÚ澪b¥q™ÂH«,¦z¨ ìês%üæxEÙ{™!<ÎDå Z-cÏ¡/‡hˬ5äùÏöŸbå©%2ª» V©'ŒÅpP¤ L¹‰ÖQôä¡9ÉC•wZ…Û”*)çj©Ø¹*ÇÑüWY9CužŠ©ÿ¥ˆ‚‡(Ö-{No9dêçcL/=•GÁ.Ù1ITàêÑLÅj(mJ¡%EA£þG±L'Õ¯…Æ+û)kº.µšÑk ìWá»;%ŒƒH!¸ E6
+Þ?ø2=,¢†–ðb P«/¼m0–ž¶E–qgÕ=Üì&RË Á¼êR㉡Ø_å] iI×ßp¼w†ÀìnÒ×thÓ`à¶ôi³è÷êæH{È¥’n¥g—‘Ôt)èÅÇâ©Ø÷·ÛO3ÒeJãsÖDã–mx"(¶‰N1hrhDÄƦÝÅ‘ r
+endstream
+endobj
+661 0 obj
+<<
+/Type /FontDescriptor
+/FontName /ZDORWX+LMRoman10-Regular
+/Flags 4
+/FontBBox [-430 -290 1417 1127]
+/Ascent 0
+/CapHeight 0
+/Descent 0
+/ItalicAngle 0
+/StemV 69
+/XHeight 431
+/CharSet (/A/B/C/D/Delta/E/F/G/Gamma/H/I/J/K/L/M/N/O/P/Phi/R/S/T/Theta/U/V/W/X/Y/a/asterisk/b/backslash/braceleft/braceright/bracketleft/bracketright/bullet/c/colon/comma/d/dotaccent/e/eight/endash/equal/exclam/f/ff/ffi/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/plus/q/question/quoteleft/quoteright/r/s/section/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/z/zero)
+/FontFile 660 0 R
+>>
+endobj
+662 0 obj
+<<
+/Length1 1918
+/Length2 20998
+/Length3 0
+/Length 22150
+/Filter /FlateDecode
+>>
+stream
+xÚ´ºctœmÛ6ÛF“LlÛ¶mgbÛ¶ÕØF›6¶m7ll'Mc|éu=7ßûï·f ¶Û¹ã˜5çrb%Uza3 „ƒ½+=3@N^ÅÁÎØž™…^háfkì `a`bbƒ#'u»Z9Ø‹»y
+ÎýìÿÍ™ù#›ó¿ÁÒ.ÿ„ì¾®–ÎÀÙ³wõpø7‡înÿ?â{ü ²|ðúWò¢Þ@翽ÿ³'JÎ¥¿Žé_Mú¿û/¬êêì`Ô´2ûø²ú7ycWg+O]¦maþ<þñIÿ?ÿkÑÿÍ[DÄÁÓ‡ž…@ÏòÑfÖ£‡™™…Óï?|Mÿ>;ÿÚÔiúþsp€@O )ÜÊSÞPëô¦ðJñâ™*Hrn†³/XZ2I+Y3ø8b;$@Á’ –ÀlŠ9)}ÿÏAöeZ䡘¶o­©_§oÍ”…výåýñ‘Ä…Çó5Ôƒ³å—«ºH¨eò‹´ËÙæ²Û’Úêã'¢ÜÝq,Sï¨7i$zUmë…¥ ÌÍζhžË(xøË3 ®ï ±Æ}Â+4óFEáXã2PŽ½Ýè‡_ ,ÑsŸf1‘ßе£úh…iM»FÑWÅÔò!1°†qÁ·Y8=ñô—BXó‘¤9"R+x!ò0Ü ßDµC†i’X°GRíåOI*×Ĩ¶6€¹c»n¢ŸÊ(ŽF“b¥|í0ÙR4w†ÀJ÷³oÂPå&2b¢Ñ)Q ]ÐJn‰~-X$Vp2ÉV¥„qK -ÂKÞ)DyR£®£‰­*̽ƒW#yr\G€zÓ4f‹s
+B§ßè^¤Qž4S $§šHÄžr)í^]ÑÙÅŒCÄ–÷Ä?¯:Јnqº¬Ú^´Ž¡kJ“ÛànVñ†'ˆ"gïwž½y™}f,jÑ­¿†ñ6t6¼k[D¥ïœ?¡G[õ eQnþ™;A†zŽ-2<¡Þ,./Œúv¡v¯t¤u’¨¤Ý˜Õ‚)¸áB\Ä
+þNRÛÿí„-¼ôǶDÐMPÔu©þùml&•ì‚3†~›)NjþJw@0kCäë«Š`žôUlŒƒn‰àÙÉûFy›ÓDò0‹’ù‹9Íi³f’w/Á*hrPÒ²
+»²Ôñë+¡&Ô&Üv?¾.z­i4ÒñßKYA¾(Ï”áþ‹møuæ[YƒOk3ˆŸI½ 9ÔPM†¡O‘^–Ö
+ŽM^mQú¶Õ-9Ì?“•¸ps¹,‚s3o!Æ|øì@ðŒjýçêŠu³û]kËO3a'`ß¡¹tÆ’\“í,fñòR¥ð+ž;‰¿·ÈºCÐ~&9 ‘Ùx+ )›£xˆ´>Žï·ªØ¾«]ŒiòÉÙžYêw/ç2×Q’ccçG¦|Aö9_ÁÊ}yæÝ`ù5‚âòdJÖÿ ær†{ì\°×m+#—D[µE28­¡÷«7˜×O³ÂU[¹Å¬æüêÊ
+ñÌA⣠•‡~;§ê²‘íxMü.6íh‡öy“¯ÜàÕ–' -Jic±µø»¼YÚÚ';#y g¡Ý(mDüÖezÛ8¼nöF-S¨ú6âÕj¶›ÂÉ@,“yO÷!Óæ¼OìUÈ<ĬF§¾tF— ¿ªæ«‹D’zXVÃ
+nÁÚÖ|¥_WBÁAbW`v×ÛŠ%òõø—» evÛ¾Ó™QØ‹ÞÖô…kyK5öšEŸoÃË1*%³Ç·lÀ†š ¿Hî4e>
+Û ÉÕx¸Ø´©ß‹/hQGD„B¼Å^½Â€þõÁ°¼‰æUT2w¢«fµæþ~Sn¬.K—âËQ|jüž× ϲà’7‚Y–É\ús©1IuRâý
+îE×o!3¸Mzdv’š—b»±naÖ#„ú<\\Çž«#‚®;1¡* Þd¾DÐOŽú¯ƒÏÑž6xFÓ>ÙÌÆðIÑã½ ¿…s" P>MÓ\cù€Ä'0¢ZNT—+4°
+ôdàÐàŠÑ_PùÇḜ((k’j±Vß_ðFâÃî‚Ø)…žõW-¤à/<#QÒ1jÊÒÉt‡Øú!Át/;væÛ± N—ƒˆâaQ~‰@ aµñîéd‡®©ÄQçèjü´:4Uri’uØx^ ð›]£ý¥‹?'Hô;WB
+?ª ¸áƒÐ°:YC4ð\t•\¼§ÿÌCíËdÂÆ}#Mï&!$ç‹I@x㇥bž%o0èú~'äþj³ƒ‚^Gã|¦æJñ76µÜëu´ŠYsË£kmÍ°ã÷D$hÌ”ª-Œµu²&Ÿ'‹#º¶4#¶Yk$º¿A¬Á(—ź6¦±²%ötaÞF&¡•¾˜ £ï£~æ›Ì¼ÁùËÉâyºh"ëšø±êÊÎ=>«$:żu—y¦
+²!ìQÿm “Ç Š¾z‡SÏ‹-€dËŒðíÌ¥å—pÖ㥓Í!ˆ½é‰ìÄÑàÔ{Öæl,òÅÝ&_øü<•Wéo©³{Ý è‘2°´
+8î_ï4ŒNÄß{çôåÛ©QíÒBR"ÏV?MÝÈݯÑBNTv¶ì¦GðCBÎ朖­îlÝÛ_“J[v1<ʱ²f•ÇBÏŸ—Œäv‚÷Ðj$gm2í…[ôü,ukPŒ=·èðx‡N`!j>¬©¯ûm—<óÙæñ×Xÿ´Öáá’nù»[˜OŸFìQr‚r`˜»8¼9¤<Z­…ØŒ§ÄÞCÊ_$Fó:‹ãUsSÄolâ8P羋ÔÛjÕø2Š®„EŒi⦹[¨P‡`Dñcá'Ì7‡ËmupÔ@ Fý¨‹n Î@ªBdzç#IßN?‘gÆæŠöÄ.£õšÕ5æsòºeµkå Ìš3 ÊÊýr`ëiJæø±°¦¡k¯âsoË°Ç =4T R ©ˆ©lÞƱSö!ÞäùãKT±*äƒuNX)S\”7$]á]aœ¯ÍQÞ,‰V;ÛävY‹¹—0¾A
+)P©fzO,ÁcÖøŽ$z”¶ÅJƒÚ˜f›±†Íuj­«À”_SbÆø5åW$.W4£ Ì ý`›D…â›»fOjÊ‚+öÅéÜtwFΙ@ÿc¾sÒ)fdÍ}@!ñìM)õ8´ë
+¬íŽrµÐq@ι=ä]ˆN…ðnoTÍI8\Êp–¶>*)¤‹ˆÉªÛ
+ó±á>\'*Ë]Y´¨îr“¯³Z'¢øl[Ùd×'عÖø¢b)B+îíG›‰ÊxH>‹¹†~q·™:•?€/ÔºÓS³Ïêò1ÃlR`ð­™G­¡»ìMIKGIr\´ìâ-©¡óP’xĈ7 p‚Rvn¾Ðž3¿fÐã0„×›ŽZŠÂ|vÅϘ`Vb=Â+<I&ܧÉXÈŽÒOüâ5iRÍü€ÿ ªiM.ã KCe;W_"é¯i:y†V‘vþ$åð’KÕAÖo¼¤û;äÎ{“×CûmzíU÷¬›©ø×KÕPžÙ­ðˆèp,bÚÎObÄü ôSs¿ŸgïÐmƒøRó‚Ë5qŽ0¡Á†n =±v(쿬4&µ0R[]µºô
+w4ÚY¹„ÇÄ»‹,ßÞœ5ë=Ÿè» »ØoâÚËÕÒNEGmuj¨åòøˆˆp’‰v¾Þ0ΤžT÷ƒBrÖGgÒN°Ùü¨(ׂnHLÐ(‚Œ·Åü’¾Þ5ËBÿTÐt Êr_.ÜZÌÇNUX÷ï“yvMÒ^…Ã9{Gu癧€M,ÎÎvQ¼rØ CïÒýCÑC¦•ù…N…ŽêR¨Ûq 6!þ®“ q(A‰ÊK"Š¢O±BµëbPg-%$7[Çûe dÊÞ¸Êu¿ßµ{ÔÀísu¢–/ó”âvlãÐÚ2=òÏ,mTh³›mÚB3Ü:bbàêˆVàP,·ä -ºg(›,r£l”A=H»TH:ó«sš¿¤´×¶Ë°€´2"¿ÝL!Ào2³·HEÇÞ-Rt^äEšjÄ͵xª§æÖ7‹ Ø7bÑ9Ñ8sUÇxëÒyêÿ6&Ýá©ä *kŒô-¢àýõ»,í"<‡nW%„ñ’ÿmÚ’‚`
+îå–aßàaO"ü샹‰¢ïK9^dÏí“ æ`è\åÅÀ|œ¼×öºªì•¶ÊŸwƒÌ–¯<¿ÃAÀ±$AòˆH@XÞ:ª:B™V¨Póžèú!¥Ôí·“¥wfM`„ZL .[o Ïq@綷¢ðìGÜm©Âù O‹Kc—æ¾éØGh¿Ÿ@²O§KÔ½³’ƒ`„è嘬2ÔÄŒ=tÿœé𑦌åpHtòÅËâtJt\#dƒÙ§¬ìÞÉ(=)‡NËkël®ÜÈfsqܶ،խ—¥c÷)7Cft”˜J¹¹÷Ò-yt ˜ô ·Ú×<ÄêèÒ²!-@ÙAì$Ñ›°s2 @ 3³Ke!ûÂÓêŠ@·pNvÄO   Ùxˆ÷3@¾÷rôÆ 7¶„£J£ßéSÍå/
+df£ÄíJ«Bf\Ô—#Š»9ÅÞzê…_5Q0–µ¢áÈéÄS)H¹t“:P$GPëyUco]Êy?LV¥qS%ÿ¶Öx ŸÑ•×‹\Ž9˜eRUëdJéz[²—4Œ†¤½ê(tmœH¤¡¸ -WmD/ŠzîZ28êEõBk{P›rÁ‹ ‰ò®¹o;µŒmÓÏLU#Èò1ˆˆZñO•M€öyÍ^gø·™
+ãIXßù«:¿ø®ÛÍd€³ªøs†Ùʳ︙.ßøN ¹¦ûN3|K’Ó ¦¹lÜmê 3 pÇ[ì†ÖbŸÔéE<½AÈm8›h]2VpÝñp €©õùÀ!Ç LâCZ³÷{Š $ÿä•É#45Áöf¿;BU´¦Ä02qY/1çq¿ºai0‰éè"¨îyžåßR¯£¼{*¡éèKˆDG£¨Ò¦MìÈvî_ÌFuÀbùÜoó„2ÑšÚË©¡ðeÊ=cI~;X/q9îÉýE…Zü Þí «»O
+žÝ&S¡Gù®úˉ[DTêŸtš|hÚÄ-èÄ£ž³2cUôÝM¿ö/@¬}õ½Ahõ^
+«˜1&I#ìß„Á¾NñêØS2½½mJ¯Ù1Rôpëè­›ºaüÌ©$2'5ÍŠxñUÒì\2:< –£ñ$õT!ñ]t¬c
+b\¢& ìØ˨çvýFX„§½õ9†Nµà×–±õ™üÅ7ªÌ3‰×yͨ‚SÇ6z‹ü§}Ý1O
+Ð)éöùoþö–ånuØš³¾iÑ\²ª<þs úuØ2NŒp„¬_^o”V}„gW%@£ÆÌVé£ûõgá"¸³rúˆÙÒ(W–s:iery°÷ Ôæ ³ìtìÛÞ) |‰<j¸]?PV1ô |û -Ž³$aS×J´êÁkÆ¡/dÕÞ =¯Ýùðã÷O…´ä–Ó«™žÁO4Âq¨aQy?-YoQ4ßyN@bšGD6¨ÃbZ¶A-d~%B(w5Kb¼Ž.*¶êÖ†Eñ¿8 €k‘àññºå¸Ã}Ó7ÔƒuJ^7npãSkEýMvbk1ÉYžiôë4§¶gh–_ÿ¸EèuÅÔÙ+¯[.ä[€%ºž”€)Ð>Yç¨väFUAóŒ{)ŒÜ¿©hXrÚ ="¡÷{ªsºgØA§2ë÷Cê
+©KÜÒEÊÕç“ È†edì"¿„šQÛÇZ‹s`…7[Ûõ][x¼Q9*§"$½D'tñÙèwwC-”³ÓKÎ.£8ê¼5é¨õ‰¸¿Ü‚0ü&v)UH)vôµÅÕOÏËË-O–Û>#•¬\Yä wž€wF©3¶“œ9¿–Œ[“Å^p}úôÚ?‰TöI]RÛ1b™×H·— íÓJ›cÅðgõ(F}EùËí«^"nê‘ äÑŠ±.E
+E¦¾—pOVï)­o3œôqwlAä†ß}“ÔP¿•!à€Dûåë4´šƒXŠLº§cJ°õc™¢ÁÇÇ#²3¬ð™a&õ¾a8$ï<î¼ãêj‹ T«÷¦êõtRæ92Vu(Œ—°}ú¡¹qϬI}Ïqsž’Ê6‘qØ–çõCWH7V6˜øbÊ•_FsQêXD`ÒRVaFÜ~×Hª£óò422ˆK'•1~gs©Œ‡ë<0ë˜*ü©TôyòD.4U—~Üù¡I-édÊo¤¨¢m„r%‚˜Õ¶ñ21ØÑ°µcBÎ}´Âc„ŒábYòüŒ´æIp ûÂÛq¸ê¢cŒe\& ý¼ŽìÚƒ.'¥š_!þ@=²s¾•Šc¬¾^ä ²è1ˆÅ>¬z“¼Yuí蛓t.÷¤EMQ8,þI®µ~ ÝÔ¶utÃs÷ªH
+ñ6*A↨W-ʧ¶ÞÇò¬b{3i;}É2zà þ­Ø¶bUjÿœ‡¶„·J^»×©&¢dÏ €(.`s‹•¼18Þ'¡{=åYétû%{¶‰Å?×ÒM2Ç~ìkýÈ!:*|H/fÞcÉÑå¬àBÛ-¦Æù¢Üb’ ¨ÈÌw•ƒÃZçk™2^4§³ ±¹ÁÜ _ù()…턉ËH3°r×£*ñÈÅ|V±ñP¹é«&íÌßÝ«¸çæ‘6ñà˜¿ImöbTì6TuIRu‰G×Þ æÚÈM?¥œ k;œOòòQ„2e¦ò»Óªè_¦f¶•××mÍTˆï**Ðz'À|NàðyRœ·âž:Â-i¿Ð«¦*JîÍiŽcg¨ SÞi|°M!²:G‰w׋HÁØgYŽ,åù9TÉc‹$CsØÊÔ”Y\ÔKbxu#Ÿ!I|^ùºÈ1Ÿk(ý&Ê:ÓÉ« ù?îhúdçÜY¶þMÜ`Nk‘=LþMˆ­%¸P„l–Ó·PwLÄ5 ý\ÜM/C Û¦ó+›ÔWužØ}«ÖÛ¨ó=ñÇAK
+êÈ<ÓÕW{îpÕϪ–T«Q“‰f´a’+Jä+ÍØÒñ/À‡Æù@‘e;4„YêcóI,ß8åýS}¿šáw]¸‘ªNfd<?-Û%)K™ÿ_=ùÎå°×/WWì\:DÒ¥£+`ðw4ÏKØøßœu3(å® ƒ6çš‘jÀˆÄ&ý’a\u¹•ù`ý°Ýª¦?ñvvó˜:å†ø7Q™xˆöâؾø¶Mû 8ð‰ú”é䔽»{XÂË}&GÍÿ®v{Í
+{2 ŽT4Š裙ÝT0r—³‚»‹Úôõ¼éìÝ¢RùªY‘Pý)3{¹?éöJüUýè8…3‹ý›Tæ$¼gì|ûl·[&Ó êX­H Í`oˆ÷œ]¦»4¼DGŒ®Ì`_,32fM©üìÏ“øÁkG[ûâ_ÍId•{Š:ј?Ò7ýÕB¼àT/ÐÀ,¾ë,•—w±Ó½L©¬°èÅtžñˆí&© %$*ÞÎr)Ç-šaÀUË¥­Ý?ÄÉÝðÎØÇ@b•=
+¥9ŒÈ¾p7Ùȯïæ hÃj#, ëvÅh]–©­÷|
+¢E`¹½Êڗͱ˜ìØýC•XŽÑÖ
+^ä¿
+=S  EûU¦Ô îå ÷ü
+™„Wo雈7z¿À¡ÄAKR¾ϳº6ùáÓ¸f¡­á¸Lõþ,†ÉªÆ‘ò=^˼¹ÌáÁ ÅÈÍdvu1:»žá®fªËc~L¢mÆ¡­­ížm§Ëì‡DƒTt^GÏ™‚ð0·aõ×™ù¼sÀP ºhPö3ˆW‡SÜ‚9c¨fXv\›2P‰ü u…ãü:›òö?ªnÝ­àÚ„ƒöÕ„ ìÛ/õ+$+9¾ÏçUp§òLo³Ù­I†ºVöp¡ëv~Â1~â ¯š„Å*1‹ùÝÕ¡„£˜Gk)¦¢Ì×=ÈPÆgŠ»Q›oMÇb8ï±…à×ÙÁC«ÊU+—r½
+Ós˜–º¥¥O²´Ú«R2D"bÒª{s¿iÆÀŸ9.ž;¦J^/¦§dLGgÊ*»«¤|{ÊÉp`ª£¥ù‹Z‡áŽ£WdÒkV7MÐ-zžGh€êñ]!A¨Ñqc*˜‰ðæ
+ÇŠABœýÆ`Ä¡'
+aÛíì;/­–E^ùu¦˜óY¢|¸ ¼?V»±­yˆäѵxï½
+Ö‹/Úu•œÛ¶#tMC: #O4~”ÓEeR6!Rè*Àl$VÃÛœ|òos£® ßüpz-a”צm ôÜ øÐçü‚‘r]™»Æ@ôæm¶$™\›gW\ËÙlójÀ‚‘ɹ_Çl•&G–|F§s?'¿è‰êSÇèXÚÆη„´÷~÷9¥Ê•‡¢H1*!¬hŽÏz¥¸u¨-Ê}L$Ðý`Pà°¼3{söu
+¨eAAxáõ3kxÈ4§®zK¢mܶšlÒ *AmUmdþw›“­=]¶f–bu.Gî/®0Ѹruº…Ål·[Д…xˆñn‘H¿–¼¢ŸÙ˜+G9:\Ì›ÕÍôãÎ  sÕÙŽ•±tÆÑ nÇÓ6`¶qŠGóÕÚ–‹cîy$P彿XF "¯ùes`ñL3RºQ+Y¾~ W·ó–Ò¡¥úÎ4qŠôüYûEÜ.rBva=´ñâØg«C‹ç« ¿IJ-¥ñ×Yc¦ 2~ "©¶ÝjH.+-9W>¿h´’¬%8}ô¯Yf2¢ÍõW%>“R+pAG¯ø£ »[=óÐÚ˜Z‚2òË´奓Úw H¸ž•§ urÁÔ>åªb´$7|¾#÷{fAÌ+àƒéœí?úT½qîò7ÎD“Õ@°b©•Šû0.æ-ù_i¿”$Ûb
+þyO÷»bcµ¬Ä†?;
+XDùb[3OúÖÝf#Ìǘú̼æË‹Ú^ëICCA¬,¤‰é`N‘Ä@XÏv‰Ï å]ãøµJ¿Æ¥a¼ ,Kw¹Ú
+ï¶]¶dD+‹´^HrÕίX\…hr Ä/ß÷R^#ç‰Gsç†×Ça
+V˜‘k'°èFúFuí¹€¦sWø„¼ò)•X;ì2s—‰Vhª^=¹ýÔ§Gg[É×…ƒ WÔ­(0gð<¤h#¨–.·Î«ßøäé½
+'AW‡æ!Ñ
+¸€8ZÄžï'ÿ|¸rlýÓ8#,†8žÔ¤]`Öº-×)tv²—…D¾ž¾T§ÉÎ (J=ú;!c52¬!ï” ÊçÕNöÓ’ÇHÜKùe²ÑìxìUŠhœü`G
+n2$†'4Ÿ¨|A¯ÉlìËŠÀ¬M*¨@_tÑžˆ® öù}L…kÂ7é¾Q±ßçpS¼Ñ
+}"Ÿ­Qie5ë¯yâùÕ
+zDå¦3j—Üj«ÃØãž}í§A¾¹Èï‡iŽžØú*JÈk»¬
+aÓñùœìE¶¶WÐ*)^ß» ‹¨ð3—06"Þ5ld$ýÛÝÔAòzJÄâ‚zuÃ=â±Æ˜¥ùßeË߀¡w±ÊÎÊõ\ %Øj¦óïAŸ_3ê‘wvíž$b¤Þ&Ø8~Ìq›Þ ª‡>*¤MJx)Œ+ˆ¥÷èÛ½¡7Çz^¤Îà”«Ê¢J¶O:™mÕ\`<R/j'ˆqV§Ê@5^ô³ Ôî`i ä’!›ÓÖñ{@,lÇX¾ó.»W0Ø™º5•^ƒ‡8Í¢é6c©ZåºÇ-ÅÙÙÙVÃ%–E}*äžêþ™Ì”O4Ä~Ü~§E–Òl.ÿZ!”ÕV¯[‡>¦z½BîÃ÷öÆ
+«J• È|æ?O]ŽÔžÊ ƒ*ÑiÓHûZÂ[XâÔC~d¹âãɨ
+GŠó{ÂôÁw,_ñƒo2;Î ¹ú&h ùÞCt§ì˜qƒv›öÖi“Á½LexRð°î&­/F=“¤3‹žoaÎ0ŒÍ‘F…-Ƙ.ün¦ŸÚ( ˆÓ*°wö
+—ô‡rM¨3NÎgO³T¢Ó”u¸&À½Œ •{“ÆYÚÜPˆt~ .@é^%ï!a‰=o–ß?q#¶TÕ^¾8¿G»4¯\*Ò¥²×:®‹ûÌìTë Z㧑 D•ö¶“­?SGUñ‘1¯™Uå¬6œYîÆ5( 7 1ÊY†T+}¥/MºÙÕžˆ©ÄåŽP^ÞÛäKÛò*\Æ}Ç°ž¨r©Ò¾äÊÀ.I¸~צÌ9.\ |öܦéNÀ5»Àm_˜{œ˜ÁØÕÕpK¼3˜(ÔN$%BŒ}Ò”zÇ0·†¹ru€ZÂ.
+䀤…qJŠó$+µ)bÝ䤻hf°‹Ö"‚}¹¬>¦_7@T˜…î; ë C×(yãîîåFjû±œŒêįÇ4‡<ËÛn\y).ÄLj{D{l¸Xm
+Š2aì0·±¥:Äãdžh¯‚žzÎמü%YÒó(dí¶¦nn«ÓŒ¦LÓQ‚suŸß6md gÏ
+¤*V¼2ŠiÍ0º÷ª à'lux•ˆMà¾É*
+‡psŠpäÅŽ1JûôSqL,¾í-Ͼp“QŽ5éõ\ì™bi °jDíÞ ŸíðÆübI•-Ã.lÓ¤[ü¨DC|…É"¥çš‚ml¹®°\yÈ«#R3¿ñ¯EN§D|½Z€h²Ùž7òŸ­+ËÓ¥€…¹Õ¼tv>ì‹A& 0&ýéá´{ð9Ï㧣-Âg¹Õ§ƒJµM\PÄnÓ†ø•4ëðc­¥ÒºŽþGM œM'ê–ס>. ·>#¢²Áç«,Œ¶ü»FöÙ››èüµ;"DAIÌ’˜uœA}†­Ýf1ü¸sÁ‚o­éYÊQi(³% ^ʽm!äü¬C`6ņBž$G­YUgH¹âÍb¥ˆ\Ž\ÆûW<ÒyyŸeˆáãSeTËKŸ÷8":Ø¢ã¯>®¸€÷»­R´§º«Š5}âËÊ#åµîW¹*Ô‘>• B4BÑ{. “€ƒÿ[y5J¸í\|h˜Z¢QÔ͸ Å_*-’vs⧟%ÙŒk6R`RtB1"§¤×:F•.\¢àðŒ!•Ëɪ›¾ã7v â~ÊcÍQJùù÷¿NI|ˆâ6bF
+Zþ,ÕZ¸[
+®ñu׫Œüá¹}±rìë¦Ï¾´ö‚ªJŽó°l¥s(ÿÜl#p-E{ÃA©¸ßrúz‹Æñ•ÈO´=\K“lHMLÁX'>ã ü’ÈÿM@ÎV‹ZÌõíÝá*ÑõiŸŠÝ…HÉõëoó)zÌS椶Û`Cøa}ë|( S¹ æÄÄwý5¥üèl.õ‚Ç…¯ÆâÎm‹~¢¿j=Ÿˆ`7Œ]=Æ ‘¦Ö–r«îÈåL¼ JªJsÐ4÷·Jžuâ`ZMQGÄÏÊ[·H¦ÖÝ” Z;1£à˜2å™O|^”´B˜j}ãÑ@¸z,(8~"FÚÑVU:À–ÓS×ÿjpÑŠ
+·g9;¡åíBÛBÇí×%$[dÏN×M@z6å=(Ã'4
+ÙR"ÆÃÉ·£JÊ…“e3xÄn™<¢YŠ§½‘þP@…X
+êÅ"ù@¾Õ0žŒ¸¥:ãXí|ÐeaƒÇÑá¦
+;¬I\†‹`-·‹NF=t©ªh»??Y.ð5ošŸø]©EØC¶®²ÞÄ|ÝQ2.ÁœRœœEZ»ÁÜø)ΠãÅ£i9ù-ÎKhÙ²¦?~‹±vÅŠ¬hjÎ8f.0VMf’x|5¨¤ß×=™áùêdô`/Ý{ºÐ‚Mé%Ð}žði•^zÉ‚WÖÙº·,“'˜8†´ÝJTÄŸ¿@M+ç‚ 6QÓ\tqÁm•”vèE)d·y9žji08Y⧇™.ë¿i°F¶ø+ñnC
+põ¦jø§%÷Öp‹›kegŸi9ScL)¸æ×|N˱òS³aÈe2T3¦s¾yº¥9þ
+3=^¡¸Záï Meé}Ô ¨Q§²Êzy½á8 ÃŽã‹I¥=äâó²ÖzË$Á’…c7›œƒD’Z{UØ®—íô±£Ž²ÃÆD ¾Æ…Æ#QAó÷åR+ÇÉÈMÒ‡c[“ŒÉÏú<àê'ÐqTÐ6Œÿƒ
+ðGôlc¸•‘å5êíy k ðÐòI “»
+íã‡Îœ’?À û G2A]YÙ¸«*j«vUJl'Ïû²*·¸[Õû¡NböVcù$—§¦\i³ºÕ-Oëä™%aDpJKöõäà™Z{MÙW 7«Nñ
+R¥'$%*^ðì ñYô-4¨Hª+ärdJ¡}rkß1Ú"ºO«‘S?µ8 RŒ6žOx»…vèû©­þ!É«
+ò÷•h[»O*ÈM†»þC·_–ÂûÙ~h£ ·´vSÒô~ Ľ½zUúر{ͶÓ'¤¼f0ƒÏú· ÝÒut·†<?]±÷_> û&¤¾ÑÑ¥BFÿu¾›šg—+2órÈÉs+-šõÿ±G¡Yjž'¹ÝÐw ¹I¼~‰ØX×–ÎôälttR+¶±3]¼bØÀÿ\Á›Pj<Äß¼&ŒšFç­0LEû¢¸|ÑrùÏ×ýìžmJ±iY™âˆ|çÜ.ëÌü£'ö¶ŽŸ!K¥õ˜Žj
+y%>ò:® ½Üß´t|l‘šÙÓ¦pj3SÂi(‘‚Í”<Hû÷N¯>kÍy›ˆ=•.½Ö´tòj–
+5ц‡Š.ß•ðåvu©Rd·¤‚ôªˆ&Nb`Ë’JÊÅr©ù^@iž½Ùlñùßkœþ®¿!O9tQSÍØ_çE‹dËÛÐè嫤ÀAɲ2pzÏä¹àÝ) àÙ›}%@«‡³…ÞÉån'œ)E(Íì+Rù£>Á·ñí7n³9ê=öâ Ê‚jFÆJóÂL‚b¿pï@½NˆÊRµÙ¸#T~'QäI쯙ûŽŒ”—¯2;®!½¤ëFOO:FI’­¤ÑÞÔ^í|JÀÓ9ÀŽ\Iíê©Y}øõ1Ë–ÌZZÛéØêáZ’×¼¥]ÒµAJ²\ý—øuªCÔç³3ýýÝQ¤ýcš²ª¨ÁXé•ø,ÑÊ:q#gÆö†è–Ý7¼ªSôýÄò6©AQT¹,D×éy"F€i“V“‰çGB“˞Ш©Kûð ½óŠ5O?4¶-HÃÔ²ÓµˆóàTÂi mÌà¡ûÄ6Ò_\b¹ÙÃL Ê°ƒÍR£ãK\ «z> æÍxû" ä=½‚÷G™¸yM'›4â M(ˆ¸+#Oí7Ñ´´µ]
+mA2šÕÂ`zXåø‚Ö¡—:Í-g•ÀF ˜ôàßÜÞweÍÀë»<CfØ’äMÄ|;*“dI';ñߢÁ||õæ2TCOŽsý­[–·“ªîv}šº<(ÑÈÎ’ý€#²lÔñU ‹f
+boîåçÏ8É°=§Ià‘”ý¹—‘Žz¯–-‰K¨0ȹÕÅû‹¤@žvårÕô[Ñ Ù ½ôòecj“Ò:s¹²"ÀÛ„„ÊòÖìÐÓâ«Ï¿ñ‹G¢cºPn¤<Md速â¾íŸñ1³Ê¾©nmƒm¨ý’í ƫø&P1"¦½•rWT6ˆp…š•qLšÝ–ÃPÚÃÖ
+Ë¢‹[.’5òŒ®T#jn5²F ‰0ÀÙYBm§Ó:'† x•(Æ@ªhú ý“žu¤IÆùlKˆÉ„oü/¼XÛœípe4Lϱ†TÝÔá@Õ+#?Ž˜¢,ÓSÂäñÒÖÖHì¤ù=!†<5®[øþÓçëòý
+©Gn`>U ýUÎ|Uª¹‡Ä Ù«#ëÏ^ÝDˆEøÙ Sj]Ž Pœ²jiO'4Ófµè®Œ>|GÔgÇŸ†w[m¬i¿¯[ôÀ"Òáç°‚X%¹ý?¿ivgrÚÄtÑÊGYËk úÁÉÓœ‚¶r´Š‡o[hš¿Ô[f·ƒÀ„Ó$—Pô,ö¯ºLã©Î»QKH”˦,š‘Y6:kdÀì*—sŸ‰|_±. q†*bÀ#ðíu…ZƒöŒªåøÏ“G7ÑVÊÚN¾õ³B*%Îf¾+—·&¸(.)u!ÂIlS†ìk;,ô¼Ì7®ø?½ÿÚMÝO"Š =•zTJ ¤«¸‹Mà1h¨|¨sTrË0ü= b
+ÖÜB^gåPê¾üzÐÿ¼i‘¦—`a°µ¬' ~Kœ‹§9 \œÙ7`¯Ìß ˆê>_éš^ºÁ õ¿v¢PÓå3E÷lεܻ¤úC-äé7U²AïH'ÝU÷Œß;V!‘Z Й1`³‘Ô¬o#¯§¨ijA¨¢|ëÒcñéâÿ9>t–xƒ·¥5ïFÛû7©+Îocá©Åã@À:º,O÷²Êš˜JÁzÆÉÓ}’•Å†Kjñ=Õƒ{7Yay¼´|nø)àÒà–)ûUgª^„dçÖº¾™Â¼Õ™5ÒJ°¾ûîòY‹ÀBKù6éE/L¥1
+ow„¢!ö7ô?üd1´_œfŠV#{…¬åž¬?{WÜÿˆù*½Nö‘ážÏÊåH.ýC>:þåÁ)W#f¶žp‚¿ÓÚôL€¨»µ†Q¹9]:Q 3Y!éaÛð­y#×Åùí–îù"í¼0‡´`YfÎLw%b¦è“q¦]Œ%Eª‚do8–™–%šÎ¥ï™àÃä/ƒÅòO@S8Óy¬HAH³¾«C¨.¹¥¦Ñ«¯€Ù—Ì©Fš¯Ýj¿¿GdLò_äxí†z¼²{½ Vbãn¢ÔUmú”é_¹øà'; Ò»qËköñî'”`…â­‰Scù~HT?g½-…(9sÀEÖD*
+ˆ±|1‡¥–S˜;óý?6’h·âsDíßo9’ßU%ƒÛþô.ÓD«`bž¬y)¼>ÕâvP•
+endstream
+endobj
+663 0 obj
+<<
+/Type /FontDescriptor
+/FontName /XTQVMY+LMRoman12-Regular
+/Flags 4
+/FontBBox [-422 -280 1394 1127]
+/Ascent 689
+/CapHeight 689
+/Descent -194
+/ItalicAngle 0
+/StemV 65
+/XHeight 431
+/CharSet (/A/J/P/a/comma/d/e/l/n/o/one/r/s/three/two/u/w/y/zero)
+/FontFile 662 0 R
+>>
+endobj
+664 0 obj
+<<
+/Length1 2002
+/Length2 24596
+/Length3 0
+/Length 25836
+/Filter /FlateDecode
+>>
+stream
+xÚ´ºsxœ]×>Üض§±m[mOœLl[Ñ$M£Æ¶šÆjl5¶m}éýè~ž÷÷ïwÌ1s͹xîµÖÞ×3CñQI•AÄ d”Ù»0°02óääU@vÆö,\ *@ W[c'
+d/nìäp¹XM]Þ}ß-˜™yà)
+`loe”g(€Üß…V
+2’ªj rïƒgÏ z¯Ž=£‹‡Ë_Ö≈Ëñ¸™9
+s+{3ó?µ7su`R··rtʈÿÓü]ÿ™ÐÀ
+ôõþ»â¿< ÀÌÊÔå}Ôß· ü_ÑeìÍA
+2³²·
+¿82å ±Nk +ñ“ÈŸ(…¢àa<.ÇÔ’M€\̘øA€+ž³I
+úØIù$'Í«ï—h_¨E‚eûºÚ’\1~m¦,¼eì'ïG€,!2œ­Á¨”)¿Pú“”æ@6;O»ˆ}*³5¡• >|(Æó£ãá3ëØÚe*©^iëï\(÷‚–&L'[tTüv‚…‰v0—·̸ãn‘EÚi£¼0ìaYh‡®T} Œ/êEkc”3Š¢Û£Ÿà~ÔvÖ\ë›;É+fNVòë—ç“Î^@SÊãÖ(¤° _n ³±ÞÎ$a¶‰¬M¨oŽÊØ‘2^H°Ž'ϵYRt“”É€H_ø¤j([ªõZwEÛƺdžnï­Q—à_†•îT-˵*ÉÅ(Žlóí·>´/Àü:A7àÃÖøæ‹ŸÆR4YèðP#Y\¥â[¨zh“]_~‚6Õ´fá¿Àó÷'3f¦ÕÄ!“©F¸Ø­U˪°W”fÓiçÕÇ Â)+¯ÍÎvq–½’Úô˜4œ)óiêY Ûx7“)}‰¯ÂV ߺPVÅõ{+^±¦~ ¼°ÇÛIñj ÕcLkYMÍ×<xë Œv—Õ«qý¨|5Š"ê è€h䧷ˆæíÐS]~ò”½ƒºRŽóæ ÊéCP·ã]À=>B=>Œ7œ”ÕG‚kª‹båNG\Œט$ê÷ÐüàÏSý5úÛ©š ÓNpèänl&ÝL?$⣶ îõM–, Т=ƒÜ„'¦kT…$[`ÐÇ ßâÆÎJ
+eêëýÍò@Õ^?x…/ÕÈŒe6¥¦¤fÁ›¿/Aå©3 ^jN­ûø¹eÓuã±YÁ¢U:‹ä ÷Š|6ÄòcnW÷™õº'žS {›J\+c9| NŠ¢ääÜažÃó¥ sÚÀ#UJá­H“!‹¹. œI0Xä%ý7DÐ@#ªQ¦™dL¨üI° Wl7½ÔœXä1Ï÷õ¯G[|ÍÛV˜ìyV퉥öä}CüœPé.E†„¿Ù¿>cüÀõÙ͘¹Pìà¨D¦ØÊmÔ–šGymÖKT…ÑÕ‡×YgW¸³LnÔ*”¯¡IËÝ»½ÅÖ¾†î£§Èn©é©•~ˆßI ¡Co¡ÐÙõ}^ÄDS*ýf2È)¦¤·5¯è\<É—„lÿõ™ý‚±â¥Ý<OÖ†Æh¿Ìçw–ÔÍ3‚&„0ã ½]ê,³9¶C5ñGÚä¡­+òŸ½•¿Ý,QsÝ3–³hˆ•/¯Iì›ö¢•“²4æ­Ós+ðÜšŠG ×ˆë‘i= R î0©wõæª+T¸DîòQr+ðšáCƯdj9ÄmS¯ò=†%5pëtC¿â˜Ôz ËiGJMÍw/ex{6Ò{}úî…›¼~¶k°†czTÉ9C¬>¦ÊÖþÔ ~Úâ\èžd5€´-ª&(`þ5eŠúHxguW¸!`dCµÖ´sªŠÕƒÍk
+·8Ý~ô·1·T4Í…Vì¨ÑëgWáZ‰ö¦×áHÌÜM]Úhpæ*ç_NCGôþœ›¾fØ}Ÿš[Ü»§ƒŽbi‚ØØ©aIà®)[T{g‡Å Wèð”qàl%'±}zše)‘
+¯öŠl(8pjžÍ3¢¥?Q¶c½õܧ½7¿eø+:SFhæÃa´nšÐ~C¹œ‰))RP}95G<啬¢Èeoƒ.ÉÜA5´\õ rÐÚN°.Iû*/½B+L›à8’t¦Wëë1Ë*F7\£uŠ ¬ÒÉCá™›½ñ¯/†Äèˆ9jÃ$®(µ
+ <d‘XÑ ¬ ãžœ’Õ!F!çPÄ óXA_ÜËâ2•|ÖõÂÛŠ¨‚©.n+Î3OëK̺öÆ¡Ýù!²‹ðºÑôóVquèbãá;ƒLCYµ2”€¨þ‡F Ü 7`ÃÝ8*ïêW
+”
+VÔzÝ®€*~—ÍMŸ0*5êÓä
+<Ñ#±‹‘jqg¨­h™PŸ=‘¡w^ÎÊ:ó8æ;ªîù1ª„·AŽjxŸ½»û/ >3W·}ar-¿b»¯ôZ•Q›¨Ù`H å#z©âBù±(Y5ÎÌšéÿ
+Å♽ص`“ßÒ 0ìÖB¾¦Üðb¯þ|ˆ»-µÞ§ù¸0«”{K¼æ H DÚT~X#¬‘T“
+ãìºloÝ6 Ž¿ PˆÞˆƒ–”(O5µò,žW ; žðÓr½›ïác× Õ¹ƒ)\é%ùÂ4 ïüYN²§-DXúÎJ;!ÿúȌ µ+¼ó±M]¨ˆ5g¤]Í8ÊxÉ¿pUñ²åÓWÜ‘ç
+jèE8¼ö‡®pÖ)»‡C%ôG-ÿ.ú¦‘%düë÷ܱÞز7áÏúu•X6ª%ãÎdÓ 6[£o$s6àˆô?ônHX×ïõÞ̙̺Ðö^:öª´c1–X¤Ç8 ¡ßäôQV¦¿ytO§áj+%ÉóZvô~íåüÀ'1¼Ñ†o8N8Ÿ4]ËQ¯öÜÿ)JÆ(kä^¼Ü‚*N#LJR%ÜfpÄ7½—J{rª»Á×ê›A3Mö•š¡ÖÑ,µ/÷Õ0§$jL::Ú½áeø>?lVÔV94gG±4º†uŽ
+AÇr9ó•.A
+çr¤S¢:?Ç¥<ƒËcSøYE6Y'¨ÊQ˜U+Ûâ!࿨%HËYYÝ»~]!x8 vö` E6ŽZ^yV%«.XÂü‚@²Í+'§a¿<P¬ÜÓäj]q´_Š#ÁƒÒ×Þ
+þE2± l jNc‡‘G[ó§ñœ–ZmØ1Ï.H{1 À½æÕþá4Hî'† Ô¢5˧x¤_ÁÍ_mk¾½3,¬¦A¤¶‰-ª¾°«¸ƒʃà8(9æ…çkY戶¸ÛAÌy]ðìé4¶–uòÏ0-RzQí¸Ä®Î¼°'±ÓBŸ¤ïÐ$H‰VvlcÂD&²B•,§`KøÀY¿W½Œl}Y´<åv°pŸ“‰ XŽîìê/)O‡Eƒ!gntwÆïwX†éßú·1>:“T&ŸQžüÀèJÝOFKÔò¿Òå¥)<îÈ…lð•a´ ƤAñkº#ñ1µ^Éí4˜Í¾êß—ºZ¤8vêõI·ßRÇüºtÌ[ùÆ‹l¯ùqM|è´>Yöc™eg=:²z+Óh¤ºTnç>͆V¸îC „CC¬Œ©dH7s°ò&¹­Q|šÊùü×þ¸š‚U¿{:¶›–lY* ʼ½:Œ#îÍôiésSû·®–²ÕÉ] +ëÜó/+TÛ—ÇX&Ð3Œ\—O½H#Ø»‘¡¯Yœ÷ÜáKS_ee57^¾‹yzFËÅ6s•sõ§¾]ºÁÂði!÷ §yEó&?ϯÑФgçe8Q«Ão-+ÛP£OúÓy–¼Úl½J5=¤û–>ey 5=·Ü‰þP,d@A€¼ùþpÔQúÖ4"©Ñ{Îu{å›öÙ?tè“_¬¨M· gBòÿsv…m^·Ä¹ÍuÁØ"iV<›Ÿ =?7x%wñ›uƲ¦)ìº1DÒ|Ÿ ‘XCrÝç³Ãž 6W™£j˜wŽàBMžÃXƒ×Ý1·Xz|ÇBfÀ0í0¨49Ñw#;1?ÛW4|Zšz‰?øè¸ÂÚV–Ú²! Ë<¦ñë«ñ/p™ýïjG¡¤·e¦l”¸_± @ڷ´G¨M¶±S¨ãœ'ûerÑ+%°½è“_)x H”™Â+×ES©¦âp ¾ƒµ¡{yUâ|þŶ|t[}ïhÅl1d0Ë`[wÞ²‡Ä6TP…D‘Äò¢¥‡Î¸ÿGŒW6;ÏÉÄýwCÜ…Y¹14Þ`¯™®µl)±MUy:§†8 ÈÞ3Ÿ¸ˆ‹ÙëÏ÷x'©.:Ĥ!³LßÁh-ß„·ýº\tîUi³ýdvõ©( ÇvzÈõ°Ýò˜5Åi’k†(€fÕ´ö{ÒUG–„?I2`Ì#§Á×ÕÑÇ5+É…HµÈ–Rɨ£^é/꾯˶‘"ž9"‰¾Ôù‚šÒYËŒ© ÕÃÉ$‘™¸s²êË ¾"(†Z›AI{‹ƒ±ÍÓ¸!Ê|AÇûzû›w·LsbDöi#» c=!™ø7"CVÊÝþÇ€& ÖègUúqJè([Ù­Y4Ø-f{ð‰ëz³sCâ2ÈòaNïøñ¸6ú(Æeœ7J_”=º»Á]Xë–ª¿Wœœ­¼ö™½†Å
+#GÒÈ¢‰yZå+ †×]&ÑÊQ¢h±P1æšËKñ”¼ª99‹,=lel$é~Ú›H¬/jR+•V”âëìÀ¦®ÈîƒÀIž_ѲgL÷ã¾÷ý×æ/FÔJ%¬Ovw›W¬Ý´-4f&W·ßéŸLÂY·Ö@áãêU0$h¡ÅЈp iùôaéÇqHADt ‚æẖ!2ðóæ¢íöíB[V¹Lç’‰GYá¼Vù¨%«OEjƒ@úrp_e|XíB+¦÷Û ÓŠ Ä{C¼›#ܺïi¿Léw1]§E2I[ƒ÷„È1ÊR¬-(=.KcÞêPôGÈÖ„AåÃé*óòiw­ônOH(4SbõzdA’{¿¸YHÈ~ëøûÖ¹¬oM˜a8vÇ×B¼ñÓª7ëH¤#ÿöHÛzÛUýÜ<Í)‡;Q#î,C<"ÞL™CÞõ¡óÂxåðQ˜F-vâ²]êRZâô«˜W
+iÖ ¡Öïu5­W½ ´XýßA7¥µ^%ÕŽÍ2<à´×
+,ŸZ!74øËÑ3¤l ç°f""€ö­ L0=¡1úWƒhêO5«"eØfΪ¨y¢ð*Tcwr+/Y(;özQøý )¬GFmò Œˆ7Þµƒúˆ²©´+G^¢—$zþ»³¢SÚØÖKhI01S军̬¦ŸvŸ…PŒ‹–‚ºz¥}f$”Ià-ËÀŸ> -Éõúº2ó?#a{Âc™¤+ÆGôª É*lp¨—Àpm9<9DÃ
+±GNáYáßu>¹´±Ä'öú)P|¤™Eñ‰nTÝÊMD­,d4ÙCúyß«Ì3ÂÇT´ë–l ‘ȦÔVŽx7†qáÍm¯[jOëÙ®+Ïvª\M˜”µ o¤‹ fb4N˜¾dd3¼•\F·5MK¢þ¸ù„:ð“HÝtEê{€tܪ#lz»)‡•VzÍå¢Õ
+¿t8ÿô
+kà<Ö‘´f•‡#¯>.´óª<ÏJQ¦§*©¡£¸Ægù½xŠÂ³l¯§úZsíĶEœG‘T“EMô)öPæ4"{qaòñ~*V†»‚¥²ªR•cCjë]Ÿ8à i"NÅ9ül…>Ž‰„‡Ó€È å á!iwXÓ¹ÖþulGuÚ}z%Ê^¶j:ûÕoÆ©²G!lc)£¦ÅY9Ϙ˜ó/—¶Q×Ñm”Ò> ?cB¸AFAÝœŒrã‚æÇ=ü.’TöJKU_Rçºàr²ê`å¢\XLúYQÎNü ü§/µuX{×h;#Í\Pù(aû6›ð·êÜg(ªN^1EæEÔ_ÞâùÏTOˆ¦£¦¨
+GYí¦iÞÀ]Ö¸eÙ;Ï*0f݈øð /è@ ô”a*×r(3AtØ£5 &m NïÝ|
+eãž22LØ.Êsšï‹0øC§·&dCˆ·UWÚ5<6+
+¨¢ˆBÛ ‡4Q–p®f%ðÔ5+â¬õËEáðÉߤ‡–l¤Z §îX¤<„/ž òNpù”¡Ùí;'‰"ß8|'ÿÑè…úZ|' vysü8z™›Î§¸×”[l|Þä¦Ío[1´8VnEæsŽÔ‘èâtN.ñ7d3Xvùž»XZhiõrˆxDLÞç6Ö´Rém=êÆIòˆÜ1:[±†™Æâj$Þ¶®EƒÖf`œBTu™pPo“¡K“w÷E éÆ¥x:3GW²7ùŠ ôÏÐE¿y¯Hy¾°|ÔJÏ@¬¬ÍP%­ÖÈ¡ávç¸q"‘/Íû™a¢.5«xX"m±Ëß)8]ÐåãÐ6¤¬ßfnñÔ3o±$
+Ç‹–±;jžõبæƒX„Ÿ7Óö'd0£x†.k¢±TYg‚h‹²©Ä!îYl¬ÇÄÁ«†rjtý3.fræS%’Ô3·PØàÂ^©b±JflJ^èOhêèùÏ…v½*:e‹+ò<=Lž¥£æ¿œÜ1£ö,»ïZæ÷ÂW‚—ORîmÒ6¾¥ã¨n8¢ ´ˆúÀ$}k0Ë:1r=~Óz*ïÞ8Ï(f'c«éïS÷ã2KÉ­Šô˜Æ-‰ÝcW’¤ízråY¨<_³ˆä'‚¾ ™ÉÏwœWÉN–¬wþJé£VW8nÌ/ÀˆÄz†tÿ
+bP 8’Åd¸–$ûiqÆÔyEW«Í¶y»ƒÄli¬ ^Þs£†ƒD@:æ{”^¼G¶¿N ‹‰ãzâ[$Å. =‰é˜9[gH´Îº¡¤"¶ÏV¢G€òÑ2½f«‚Äë@`ýŽ#Ìfu‘öԕΑSFãtþT:Š\ꃙ`cLø×ö/íCt¢"“R
+y*Ux‚™Ì/hçò›–3õ0(E1`šË!ü†£¥ÂC&|0i<‚ š
+€¯
+ÄE­Ž„¼vhíyà{{ÅTôQr…CñÃ(¸jJñĨlpìI‡Z|f°>͉;f‡>¶Ä‹Íwý>ࢋÆ
+”· a¥£›¿^+{ÅûþIWŒhARGs†ŒCí-CÍÐÛuÖAþ¼G¡¤ öáßÉ`ÜlîœÂÁû»œ´ˆôt‹q¾>¨sO°x7Ÿ_F
+ ¤lS”¡k‰ÒvÚ|(F‘öy#‡Óvwf»¼DóR_õ‚¥ëøÏNuôpaý×&Ìñ(Vå…ϯ4(ún·™8C’%û†x<E/ïÖ3W!4Ào¸ÖœÙu—š7¾Zv¾TIŠNÌêWàCÁ$¡îa ;§›rŸÍ2Œ'Oшµ0sœèݘp4#^3xJî’ÕÒ¾ºãÝv¤Èû@T*~ú^h–kwÏM(EMEÓ‘]‰¸5Z`ŸÅßüIvvò™S‰iáGºNŠPç#Á³h3—@õF”i Ë J“
+²?8¶Vözûšy¢Ùm6>CHþ4' X)lѪL”+TŒÈ­QvfÖPÃü¥¶æZÅÄݽͽt\¸ÛglGÊƲž³,ŸÅ§7¬uZÝ'J»`½Lƒà›±Í¥û ë#ºf."ªæÖg•U1I‹~*Æ»§-©º­\ƒ)ÈÆc8@ŽH0˜/;¬Œ+|hùëâþq¨´.Õdw’K>Øô~¢>°Ë¨ÑLwS4°½ëÅŒ·ÉàY7`:vëhPž3õÙ…ÜæYés° áºü#í5ÇfW@«L[Á·„XÅ|›¼ ©ºFû`
+"Ø
+Óq9¸z i"¯+Tóœ~E¹úÇɽد–Ž—ó«E‹HÑù¹&SJåMÁÛ¤~¯w·¬yÂt€n„™.•]Áf¯}»{#c‰ÞÎ퓾ìɾQi#—ì ¼¸·¥ Ž°³Y-®Ÿ¬‚ SFÚÇ»êʉîNi6®:
+aØ;mDÓ­X¿7´ç
+×ËÁI}©P¹2¸RÓe2^š±k½ÑpzgjŸ_hbŠIP/¿"fžGœÛ›DØÙ³¿öÈÆO?vW‘ÔºKF‰Y]Ç9 “ÓYJ+ uò¼6».q¿
+‰`•YßÛêBù·FIñß5ò8ÅJwŸ2¤â\Aníõž„ð·1vMòÐ#[ÃÔàÓº-X˜«d¯AÖc²
+ ;QÚÖP×°ñóöcOoå`ó¶ª à#Nݼ¸`CL®o„:N/™¨{A¸uïaSÊÒßã欙ç5"~…¯4£yÚù?5üëöNÏGý³J«î¤À|ˆqGg«ü¼1u[\~½=á5¤EçüÞïílþRw6-ÖU3H¶‚³‘=»"·,Aox©Ï‡IÝ‚—w4D]t­ÇÐX·>aƒNõn*
+kV€ñβÝÝþ”pT×4Y΂ѾˆkÙÎLÕMR8©1…£—òU>³ùs{‚äEá«`åo=õJ¹Xr¼ ÍŸâÆÿü…:iâÓ-i†•_ò±\¤>c:³Û﬇ ~±ŸWu`a«[r÷K¿¶!§¨æäL®qššš³Éë¨I¥Ä‰Í§öì *u¶]sŠ“§f ²ŒÎì˜Ù'u!rwÀ¾p;ß½òR1‡µÛM&¼´iwýá³k,‰,BÂd’!Ï<ððÆxT†ÍΧªe¡“,L¢[uc£´}rLÊ1Ü~!¶2¥Å ö ½ü’`¢L#CóëÔ:´‚ë¾Ñ×9›¯8ÙÇøÔ*«„>ŽÚß¼°Éø<eû‰>>Z8”*¾£bkºªW”Þ ÅÛÀ,nF¹#™WŽ[Â^N h‘Ö“¶0“gXÄb7œº¯fŠ¬§ùH¯¥Ø"‰¯²T#70ô¥ó»æ¹œ(wª³CAĶ`Q G•K|©o¹ µŽ\5”[äÃÆü¬;
+âzcò•¸£=mw2xâƒÅFìV|PG°ŸzܸLÆ·þ"’¡ÎiRÆäo·YÉ<5
+V²5îýæ3ÝL5Võ
+tÙ8÷<qYÄño ¨][…uä‹ãÕu<-‘CbÈÒM_©EV¾Ýø…Áh[ÿ’|ëûõ¥ö®ó,w‡Ë÷ o(!¥Ð̃ó¼úmhË<ó÷w•ä)â‹:X¬xeù›±$±a,eÂï'ƒúŠÇÂXn…ü®I{793M’¯Õ…;©utu‹Ã&ó_?(ۆضÈõôÌ$ªý/$Î*Õ_C"Üágdr¦»AÐ-€K\Ê ¯2u*sÐ’GæœÛé) Å-Ùq6ÀgÉ›ˆf.F0¤é¥_05ÚcžñsS/!$y˜'t7‚á»ò¬•@[ 4Ã`kýÛ•Â&ßéÞdÓW7h0—·¦»hRuŠ*·]Áh˜„ô:ÉöØtÓ¦Ïn3[;dN‹¿g1Õÿβ"¹«’%ç>4[€AK’’±^]*
+3÷™`ùöÖ‘=ñü?ïãsD¹ÀÐgR¹ëÎ| ÞƒDbi=Z®Ãq >äþ
+~èz£è|Æ/€É*(å^E ïŽÊþïý¹K®ƒªñ
+âøtKô¤Y/Ë炉Ã
+¥8Ù‚X(€S=Û$ѽÕú̹’9Š²éºƒÝZÚìÙ q<&:#È?´›ÄA-9±£/èŒ×sèÜ¢¦kvè
+ü°ô´.Û°âЋýëí˜ À Qærhi1Ò3¼ÜrãGà¸_S¿@KI]…]¿Â†Ô‚%žàKàþ@JEÂœ&UÒ¾½%@°Žfý
+/GôcA¿ #Åiû¢]xN[nÎwd)Ë&•!oqySzèÖtzé·]¦hsEøþ+¸v…P6úOÒÖ¾¥)h+½ùê›(²D˜¹» rôf® ºB‹ SôÈÌ’ R©a0,þ}¶£ÒÈ•mh¸3?
+îæX&î
+4Tx ÓIì÷ÓŠ¹/7æ‹ôZÜ®s|Të‡ n£Ù"îx¸  ‡ Ðr×4ÅN÷ÒLµ×g&á;\sÒZÍeB üʦD3Âý–•ÞãsøV?íÉú22d‡o²–†j|B–Ê ¾Ð̵#´_:W˜‰ò†^¥KŸ.Éðû—Z'%¢.àª}©}× ä„V¢c¯Rø¬ÀyËìzãáÆwô‹!1¢ÏI«ÛÈR£D*O¢Mi²™Ù£,‰×Ûû1WÖiø…l/œKå׳a<ƒý‡G¢î(ÑAá…k Še#ÇåÄ%<?)´¾˜Ê5ÙÒÄ”DÓ~êéÞ¯UR@,Ük4<÷2Ù¦ÒUÙ©irÁ=…¸n[fòó§riYn€j+LÆêÄNs µdÔDuŸû¼”¸l /ëH.+^fÛýy–™£ŸïŽ¨©WÃꟿ,¿¶BŸj¼PÁš-‰O˜k—¥üvzþÉëæ*úcÆHB¥ba÷qK»Äc˜W70 ZÂ`Ö¸°íÁ
+¼·ZqRoi”‘ŽþZäÙ OÐ+ðÛ {?ül¸ÑGƒø^}Ÿî¸”ß³´ \ÏIq§PÌpT?‡úòyØCl¶~Z[„ríUºŠ¸í“¼½ Ï-ýG·0|`4ÅsPáÆq…<ÍüSÑ„Oe›Ú©‰\=ku½­½R;ƒD®#Ù>À)–¿:<p9»"¢©mw“ £:]9^芿6>ŠÉäLÔ·n‚f´¥1˜ë1÷×:KáS”ÀšLØr@ÅÒU
+蟫áÀbs%ÊuçÄÒ™'-çP¦ ÀïqÍç‚Aêš×!‹Î|‡­“]‹ƒäÎLæQ8ôb²ÔWƒ]ü”íÀ°ètç™ÓqÒ¤)EíèU:!ç®{ ^äòtõ^õ5…êº;h ÆÏ[»… ÖüŒ+QÈÜ?à~<oMF&äËŸa…=CEÇå—ü½èø,V¹uÊ_‰%Á2+涺Ó,Áî»ÿJ›dÖª4È:#x©0 ÃÙÓÉq¼’XÀd2h.2°jHY׉§œÇ˜ÖÍr✃+–žÍGÂ¥Âùz+^a‡òiÚ<?ª+â@Ìk¸æXHDå¾On.€‹gbŒ,®­É8.?@»Ú»"Íù©*ˆ¥;•‹Ñdó1—4§žx~‘ÒbàìÎÅ]¨q„]‘}ž#ápQùÕÄ·šeå•q=›5r÷z
+£"¢8ž=uwÁHi‹Ýn2wÇ‘ C$¾™@Ä(žK,½®£W(Z‘OG1pÈЖq×Ï\øõïU˜c’«
+ÁkÚ\1+"êŠüB±zŠ7ƒóÂYrÒã½áúÈpêÅÁ‘qLôŦ+4}ï²·4 »ùªOè›_e6 ëbïÜ=Æ;ÄÕ!O©Þ8`Îø¤ÅOÓÄônU¶Ü^Ó»‚gÒ"#Ð"‚ý“‹Ö$òdUjö®Ø3±\¿Zâú¦»ú¡õO]ÙÚŒ¥™ëxÏ– „×È"L¶ ¬2H‘]x!åÂáնƳOǴ͵n_Ñ·¿hCÈu˜zG—´Oø<éeÈ:†<1V`>¤^—Ö‹dùð&}¿­Þ’Åe0”“º”ýèPHlcI¸w_kÞo³Çú*Ø`qy@aÁ!·"x[ýùgU®¢:Œ‰
+Oç‡)zcÊ õJÓøðH7å¤/K…èÜ„”sùϯc»ÍñllT6Šä×Ê^Tym@¡˜1Ü›l”4_æñâÂ56`¼¥‰ú[|g &…îßnàÚt ;¥7AWvžµ„¤«^,_ ¯’£ÂûÚŒû‡^(h\Ò֬Ò?ñj[±¬øì$'r&!t½p\:õíCÜN¿‚T+€N ïÍ UÆvÉ·kZº{24_„U9ˆ|
+¨_¹afC¢ŒÎê,ݸ,áW,œ‚Ƽd7±ngâí,±ŠÚ—k¯F«slEøÞó¬Z®jr¶ûŠ„ÎŽŒá»Ñ"Â?LqãSzX Ân/5„{÷&‡ü YÄÏ䫇ºÊ £òðlM
+ܽsPCõϸÒp9K¿/úB,IP-,“G%:Ójš¼D¥<¯ßˆï6³)L¹dRùË?ŒiHöiÔr-…²ý™oÏ•ÆõsR [§©çì‹¢Eùåf?f5"k”abÏ!Êaq†Pú(b ??W¶Ëædhæ!™²IVþF¼¥„m:ถŽâ1—¤öÖ#_¨ÍbCÒ¤ÆV+{q;†î úuUBDèÔ >& ìûð/9J¥o:!˜«¼÷Ýø|ò#:¹Yÿúó¹J)ç±×•DÍŸ_xÀ¹RÜ>ñà"qÕKõÞRĦ¥C|çŽ`¡°¯äŠaª"bƉ0ÿÎèÆϖײhçFV9ß±:ÀèÄ ±Ç×Ð35¶‘"[wß÷R£ŸwA%‹»3[3œ8¨‚mw¿€#Š³#¢]Ð(Ãò؈_Ó
+›ž9u‰‚™ÿš¿¾ŒFuÍ‘Šfo1Õ³»‡gÓ”"/{ÃåŽR´«ÂC½–ÞF”ã­R>þ®æÌ)‚êJ*&@Ámœ#‘{̳0¦ÊÓì»v¼Á:Wþá$öÑ®'¡ËUÂõ<ò ¯]'R€­-(kËLçʼn—]†3#Ø–•9±‹¼á†Ð$uZ«ùÇRáÑì/'©þ0Å»!4¶+§œÛù­É~8¬•ƒn(,Ì'·q"M¿Ý,›#*Ö ¡ëŠEI¿??C _lz ޹˫×Íá¾Ô©û¡*«jà±@×ç=oçš?ÅçÞ&¼Ò-šñMÐB}Á¦~QíÏ%à®ÿ/O¶—
+pnÔ
+Åi1¹ÜÅT™¶A¦õi1ðªaáßΕßÊ-­§¿ê|tâ8aÂ]äÇ }ÔÕñ™n›¶g$å2þX— Ûë¥q…Jºk«°[¤F2ÖïWˆ|µDà…̪@v +˜aT‚À%;„ø¢¨Å]ÓúŽkØ·™SkV†’{mÀ);A}§ÕtØ1eÉŽOÌåÉÊ`ÝåaÄeœ
+öÂÈ+Ÿ\“äuþ5î¤Qì_Ý µ¯³X
+áÐjvˆ^Ë3æj¬²Âc4®2C;èžIâœQøÒ¥2z¿óoz¸Ñ¯(Jù+³+!²ñÕ¢h·ÎëEÁ˜ÙÑ<&RÖf–ÁÏYôz¤[;þÅDýÔ¦XaÁNö@TÅEÚvàðnuŽ®f÷ «v¨ÚM×^Z4¬ÖvRdò¯ër›er1túóx˜‡$—+ä™8S?Eþ-B[ÑvG¨ÆÈw„‹Îà—+.î+÷‡••¥‘Í_JÙy Nþ¯à¤ÇÂ;¥õæ„vJóÀ“P—¦r=ê÷º„ÑŸ˜‚™>ëÅÌ+h’räe‰Ìê‡îÏß6¸°sÙÎ6Ç
+ƒÎøÀ e8ÎÒz¯á—©–|‰‚lËå™Q»ªQXʧÑ)ÿÉ;Ï«§BÓ!é’Õ†ïî]>Ï«|öUAŽüÆÝK]‰[šù@6o…×ûp™†D(ê5ƒ6æËkž¶ÝQÄï˜JWˆéR`éÍ…w`©®º÷Oñ èñ;;«ˆK¶6(Skbv‡ÓîJ¶J¦n|{âçÈ%)/Ô«þŽo\O¦¨V£°úâ{ áß;…§%ªféJ¯®îÇ?*QÏÔíè«À¢;JeŸç£ÑéMƒc6ܸ†zy_¢ªg÷´‰­ô½>°Þ‰yrœH(ÿ ñÕöè¬Ò¥ÐYžõ@T°.ˆï lZωïÐϲh0LÑÅk0…©>KáˆE*šq7Jz
+äë`&8X‘d*šÏ0⤤ãc™ùñU‘_˜§ó·‘$©äOZŠÖ—ß~Tƒy
+Vpa¬}:”¬5Kª‡R(:××JnŠéR×úåÔ¨–z2œüOÝ«tÐÌ Ð²ó·8r¢£T-T€ Ñã²hJ3xûºÀd”n¢Aúñíõ
+¾‰õÚ@­ ¥€ñ‡+ dŒI°D^M‘rá‚UïT¢ªm¬÷(u¡KGöÇb§i
+(4*+p“S²} šÁäÛM²>;Ê)Tíev† :Œß|ë« â¡ÉÕó·éá¡6ïÑ«—‰GS’‹ýP+ ΤT ÚgZJão7ø4™n‡®›SÀ¸
+#?6ÝÀ>öDµ´}¬è&-ãošm‚¦%°ò˜pƒá6Úñ?#pkR¢Qš_.Ê}
+•ÞMÄùtDËòúnlÕª‹–w4ïnD¤¢S<„úÝ3€A帲b]7ƒ'KÛ´ˆ5¯ –ZÚ핼5°ˆ*¾à$3ß|ùZ
+@u1Y“[8Œ÷[B>ß¼F€³¡ê‘g°eJsߪ¡<»“‡D3øZÀ5O–P—Y%cà'Êû%OsÓË·†¸kØ-
+är|<pÍVÓaAÔ`ÑþM[­Ø±9Ñ8µakpN"‘ѳŸŽ¢‚©®ÓÓØþztèZhSûW³ßr]£e€Êø™(•òó`P¬@ÑÁ¶¶tc·§Ì=”'þ&pQ“N6o|{,«ÒÆY!ºZiezÇÀe£.÷ÊŠõˆÆa–çg0Môh¾BÅ1êä³Í$sÉyѸöÿOÝÇ~)_M¥ðoJaÁG¾zl?‘{)=Ü®ä[Q%äÁµï{ñaÑFUä.Td¥׊ìbàùÏaèQ8ã>OIG; lþAw; (n9ÂÑ¢o…{ºu/Ò§Ö¼0›0Æi‡P¬Ä¥…ࣔ2ÀžDBЃXm~CŒ
+c‰h¬H»a*JZ¶çÿAú´¹?`J9~š¶ïÂRºçž°ÎµßÿBPÔÏ‹ûý£’Ow³$,x(Ö´lßµBL­›'Sã¥yäBUÉ C ›s¯\ÓÞY€x¿e[2h’ÈW¥YÞ—ø ‰ ¥
+œÇj×:݇62g‘zbßhÃÞ e§rœGK)“4Q¨!D”îù¶¼(Nã@bã³’ÒÍ1WlhQÇçíkmä -œgz›Uÿ}•è®â§¥­1ãî²E/z.d?BØaٮˬ€ŽYö'òæHŠ/:¾&þ°Ø
+üt~ŠFík1Žq?,!wDëxœ°ÿÿ&FéAyÓ½÷:%¹‘¨· 5­á\Ö=Mäeݪ&õž+ÊØ‹ßt£ ÁùøêðsI|%çÐc’^¾}w•¦­SgÐ…î×ýŠŽª±’ÌþyÀ|~ÐñáÐjvˆ^Ë3æj¬²Âc4¯úm÷åL©’½rVù+bã`£c^ÛùãÓú¼62NéHÆ^-ÏÊKä
+óspÊ*Û ZÌçRÐ@¹H“!éqDêÄ›±Æ݉¥zYŽåó\»Ë˜zÃ!|_°¹¡Ï•wÀxPR\ôÕôŒï'(Íwd ¬îØ_eQšDTÍ&TŒ$­ ióÑ%mOb
+|¾bºÄ¾yœŸHX'«3+úµï¤õŘšoßÜÈqE¹ÃÃÅÎ"ÔµÞ¡x†¶ !û*Á‡X5ž’öåô˜Š˜\÷²®L¸@Ÿ‚òJžW µÁx·2h`¯*03ο"kš¢0/ˆ­RXþxâ[€slÜËâÄYœþ¦¨w‰º˜O\]¤ܺ`´
++Ç°lVy¦Mµä_ð[X\GpȘ™7l¾L=•Ô¯µ"G<ï4>Hê¦Ô­YNa%œ`zÏ9à¿š´ãîF›Ë¿0…¿¨<ÀÊ2fëqÞ(1ƒû¬PÂ'Ò=Ê•r—”rx5Ïϼ O¢Óšowè*„yÓe8±«ÌòÕ;iM£.3
+ÈÇn…Õ‹\ÑG¾ó 4Cc{¡Ñk°_™z…#ĽŠ Gþ¦î™¢š$òFõ†2ø£.Õøkõ-ŸèËc%Tâö44Ÿ…ÝI)êl~­Ð+–wQ€~¶Ö
+˜¨ñú‚â#1E %×±‰¥sk[sSäë—´€(^8Æ.þø–ox6®EkLùŒÈ@lXÿ XȆÒ€P=zyi6f«ïqÕǼ̱¿üÅÇ g»XgôC€Pb±aps#MÈϯ|ˆí5¥9Ü5 ¦{ tȺÛ@áò½Žc$‘Ó¶&
+V¼´dâè ô®Wv6ëíª ozö,J§ÚœŒÙ’\ν}òÐF°kçjNé˜ËØÅبc‘1êÑ*27ŒŽTì1vÎmOùág$÷¹`aÂç=D J,NÛî,4A‹€^õ\?„Ë›ÓfRèÀE0gÁ÷š•MŠýºÇ¢ƒ(âiFŠÖHßuc ^)‘,×æ6.R…ÄmaŒ#D¯°%Z‘ÿ‰éÞˆÿ.2@Ð"e?I·ú,—®ô‹sœÖkúM×£hç\Ìqù˜ÜíWž ypʆœåùŠþ¼‘©|“Éäe§‰-]ýKeM)sª­€¬üQ|ðšaÔT“÷¦u‡r{dÒÕnqkœ^} IýNú Mðë¼xVöl5ÆhÏûEæäGüzÖº ›ôã΃×sè–çû°ŒåžWYß¿Õ û*eC¼„qÒé“õ)Wó¹ëe(xÒ×ãZ>ÒÔöš#¼Åt:mõö4Õ¡y>±JhLέ_˜3{sRu7¸úXøo2ŸFÐh4èGžhwžZ$»‚°$â^ Ê¤ÉA¨szz±Ö3“ÛJ:­Ê8œá¬¿ ®&r˜ys§$¬þˆæeŽ…z\RO‘ëÔ1<Õ±öÿ[±‰ZјýdÊZ%q×ýÊÁ#Q39­[ÙîcËX[Ô'§HG]ö]Ô‚GÞnØÙ2k
+äü(ŸÜ_>áKbk`ˆ#@ûxh§üaæ­%†­áx¶Ä¾9·Úâ?`@ÁfĤâ¥>OÍ=ù®­{+ çò¦˜©”´hŠ1 ƒÊâºP&K ~Óš¡¼ý×uHÔâPã·I_q_€ ,0L{ƒKçÄž$ŒkêW¹ê»·ÇKÑa¶Õ{ÊeŽ¤ãÔ”h+ö]?YAõ¹
+Ø•¯" >~q§Õ:@!Ïú%¶×ûµñW>s±á­ü½d*úQj™֧ʒýG<Ä)ŒEàûN`xTÓ,mRè?$¨¹RG‡üCnFB€€×\Úkàô¹¡¸OÔEIÈn«÷>ìŠúhÇâ0Ú×}“¢úPgb(n_Z ·;â‘܉»uè33ŽÈ«8géÉŒæ0ƒ:6ð¶0Ÿû}ÅfC>ÇäGN% N¸P‚—õ`=žsSúÎ ´£ó‘;õ]’Ú†ÛÎpë) ¨ XÑE•&²ÃÒ”ú&ÿ9e´¯ei‘oùä²ãÔ„ãižP»T'A<t€NC¢
+u‘Ó¨ˆ×q®Ý&欒bÚ4vÌèH2½ñëa°&«£CÄŠw[u@Á˜mgש·]ÖOÙª)ZÅémº=ÚµÓZ͇ŠTq ͨmE@ïr@žG²# !”QÀÈóJd£ëvtÒ]Ðñ–ƒýiÒl¿K÷Ñ÷,(¦)ÿ ß‡ó÷ DÚïä7k¡yÅ^ErJ?J qÆ+q•á¨#]*3sf·V¤¢Í§‡œÍEÌ+u%èÍξ~+s$¾ûààõ±*Â"4jlÞÜ j7ìë'oÞ׶
+üãIÇ›Ž Ÿ¨6-¾Ç`­Tþõr•33£‡{^F‹MJéÀéÈ™ºmB`¢> G
+KµÉ¼øEÕÉÊjÅ¡Ñai´dW^@n5Ìm€(ÜÁËfä8íŠ\rNøJù_Õ8³û=•chƒÖŠ¤ìØXøwïÅÖY8|ôxÔJqbå
+ 42ÜQ«Û]¹–AY¤
+åT:åóU‘䞎Հþ9Ï"-Yƒä@.Æ Ž+Ú5ÛˆH‹Â¢ÈÍìkùÅñë-Þo· œ~óø Ó;鯅øŒ‚«ºõ[Ãx ®ƒk&¬9¿þýmí¤†éì©» ÔÓ…M¹,<~„˜“u|w6f¨$”yD&
+@ü±Ÿ!½´^°›ã9kÆ
+¤ž¼3yÿäJC§b×X8h»ˆ$3ÓÀm|œD¼5V`¬Ôn±¬Àé &Oi~²`ˆ-’V|´ž›¶¾ÌÞºD‹6M>Ä^… FGá6‚)^o1+…´‚Oúæ:ÓqÊÜ4fÞW2%4ê˜L¤Ð‡vE¹0Æšõ€Ï½ªMU_K/*á ³`Wàë¼òI¶þ%UöË-Q'Zi;jcÞòC%W·ò륔s°{›J ÖKEäKb]/Ït_ߎ߅ý!¾LŠ§Ê¢¾ë¦EÑÇ—‰HD8Ô|–¢tU-Eâ‰wÉÿïô× œ¹ö¥!™?ÔÎ7âö=4û¿´7¶Äj¡í`?¨¬8:6—ײ|µmL³›é¡š$fUÆ?î¯z¼¼nT.3üÆZ¦N¬Ó«½ªá¤™‰Iw»Õ×>GJŠ
+„[bí›í Û;Õ,ýñ˜µ9ÒF ÍKFCÏ1ñMè4u·ºA}mBòsÛcê„K}Z«sŒª«g=\ÁηvÏc7yû Ý­T&ûÏbÂj91øáÙö\à7÷·™eUS¶™fòÙœàqÃs~D¹_ÇnÎ ¡LÉ­ïÉÄÝTá«Hˆ2X ”‚W¢¥ì?ýXvux±ÝjÁ±±¢ñß Õ‘ Š$á]V%º4ŠvˆŸx¯šW_€–!ÛPªÇÃÖíÔÝ>sUñö1S`¶fñ!¸¼9™X궆; nC·Ýr³å¬pµòÿ­*¤Ùãà„‹´´¯åÌN=úk{@îÖÞ”ˆ,wSbžâp0G÷l±Ø‘ÀåiÛ§“ÓÅóh­l/¬à‚Ò] œn÷/l7²oi½á6}¦PLÝUHh“ÀräÝÙm4rÞ©S
+{–ÉVó/ˆ‡÷«æÿîÌíNîª>œÒ ØàÙDÄ@îcC&Š¬LØwN“’&óÉ[ê»É 6¨C¶{îâKiêgD¸0܆Co¡$Nc€àVhµVo‡f?ìpx!æA©–Ì©cùk#Ïe¢¤ §¶7}­Çð¨HR ƒ$oX³0“.nÊ3ž7P¬È!/ùk`¹ÑpuЕz¼Þâ$–ð¿ÂµëöG)nÆ#~ lç^àLÍr’®Jµp‘8MQC#0®’Ü
+endstream
+endobj
+665 0 obj
+<<
+/Type /FontDescriptor
+/FontName /MOKFOJ+LMRoman17-Regular
+/Flags 4
+/FontBBox [-400 -286 1338 1125]
+/Ascent 683
+/CapHeight 683
+/Descent -195
+/ItalicAngle 0
+/StemV 18
+/XHeight 430
+/CharSet (/E/L/T/V/X/a/c/d/e/f/ff/ffi/four/g/h/i/k/l/n/o/p/period/r/s/t/two/w)
+/FontFile 664 0 R
+>>
+endobj
+666 0 obj
+<<
+/Length1 1669
+/Length2 16869
+/Length3 0
+/Length 17974
+/Filter /FlateDecode
+>>
+stream
+xÚ´ºeT›MÛ5L[Ü)‚»;·âî.‚ww)Nqww-îÅÝÝÝ Åùèu?z?ïßoe%gæÐ={öÌŠœäÄ
+ÊôB&`# 8ØÆ‘ž™‰ #«¶6´a§Wš9YÚX˜˜ØàÉÉE솎 °¨¡#Àéh7v|O}`bâ†'H
+
+É©ˆ€jt
+ü]€ Èhã
+²þEïðwÍ@6ÿØd…ä$ÅÅ”UèeÞ…gC/ ~gdžÁÑÕñŸè¿õ„Dex
+zçÉlïÆøtmiv±ñø¿vS‰é_æMœlUm@vN@IÑÿˆ~7Áÿ·Í è`
+|¿À{8:ŽöN@/ÿéøß#xfN€ ÈØñ]èï›þŸê’6¦`
+Ï(v|Õÿ?ûìßz‰;YYÉZ©þÒ3´Y¹ý¯È‹PþÅJ%¶·6´ú7ÈAä
+4Q
+­à’Li52 L¹î±Z½Q7¦à“Ødªü¶û˜,§¥ç ` £‹youË ê“êYªßûLWC§
+¼šÃ‰+†éÁp¨æšL»d{ûô–9ºøY ×ù»ˆ‘þîü€D[K$†~ÂÏ»<"·CbòÁ¿·’s>8_•ù%·ˆ@×›WÒL€’-GIjÉ”Pì;Á
+}|#£Z²á®Ý²{í,µÑ—‰…Z|UÞ†ôª¶~“ÀSîã—”9ìÏ,LÉÝÕ!µÜ©rÜBçf®­0êZ¤ñÊRD¾E Þ‘ŒgS¬ƒ®o@f-q:e)gK|¾†‰Š|›ÀUôUh‰‡MñbxÁð'G}qß<^bô†ÌM±fo©Z5̪‚ÒRæè}’ÉŽÝ÷ÛÒ…mJc3"§r+.7Ot1‡¡mütƒ;ibÎÙdŽè}Š¬ Æê#bZø_¼—Âð8õÈ?à‚1zV
+¼¡˜†Á%..ÎͶšæòðHfKtÖØüªä
+?ˆJ°U‚ïSÊ\± ”×úêø׳‘å›’{øÿ 
+ÊWáÊ©¼ÚÁš'>µÛ"RUbÞ¢«º4ÌT¾Nw›³RËPÂßû%Æ-ZèâOÕÈ·•”s* +¬€i‚ÓßÃ+ü®¸ù£¼”ÄÚÂJ½àhR)ñ¢¨ÎT_p3 ˆ?ÀÙx‰†ïþÁhw=¼»)/½uç@7ûšŽ#VO*e‡öj“â—t½»ŸI š’Û,)zc¿xhÿËÊÙ6fMÍ-”C,tØéÑ4kè¦;Ög16l~Z€|¶lÍHgؽ™³£ÒcNu}€þÂÌž±"Ñ2._â€.bŸÏþô`HúTñ
+
+r•áX'Âlå%X°Å=§knå¸Ãò2§Óã­¡y¬Æ@ŒgÛ>ý¹õök½KÕoÜ€šGMΠãѼÎ#‘¨Å]nãò…ƒà異¡ç~º‚Ûß $Ý°kȲʲ:î•8œ›2‹*ˆÑv‰x)e`•¨[k[QjêŒ!Ñ«\,ÜŠþP1¶s’ÜÒ/Ì^¥´.:®‰ÒÌÏÚÒUãAˆ
+¶2Ü×ȼúÎå­Ý]ÌÉ’c
+û|4”V’túŒÖHñùü8¶U¬„GB¯]ЈÿÇ+»Ç½Ý¹ÍY|­b ^Œ±D€öTLäðÉ‹v«s¹°ø–>ßé8äq‡˜ª°O¦1\Ñÿì°1ú+¤¬o_°ð«:qbev4S¥qÌ MÒ>>…gˆØþ¡Zë.'óï
+¼ úh.4c‘©Øb³”ÈJk±[%þ¤g±Ç®ÉPbãÊ;`AGK7-;—Òöl ŠpÖÊKu`°éZðMô˜Q@Ñ7k'P“(†àJ-+'"å7‡Ï!-êË+ƒŠ ¶Ÿç‚X:ûê1™"«˜T¿m-™Õ¡¢ã+¤²ÆƇ2ZI7òjª–}¦PG}f¿ñ†¾oS6ÒÒ±¶ÉÛdÁ²Õ`&œ¬ œ© šÃöÄ,VY2;ÄÕÿEšæDÆ+ø Þ®
+‡×ü¡ü³^v+« §Z…± ÁR!€ìÕþÐ ñ‰R_…ýf-‹ Î¯ /ÒDi˜ì~äbÕoü•Ðû7ê¿ÌFloK ¦9ùÂs\¡¼øaì]ÍŽºV¦=ÌaJ‡G)7 {ä8W=[ôÓì` ¦•.Š£?Ó¿¯X8†ü²¡Ny–JFø²¯A5ž”£Æ¯¡vŒªÒFo¡ûX”e{¤Ýî
+Hódƒà…ì!çUïYãƽ!ë–w±ádó”âïÈQÜ4úlC d×oæ©(Ÿ÷CÊI UO¥qw~@4M Îå'É«^}{ìÀq~øš+sí|Ôgú§µ,q“tÇ<Y¶{¶Ë/áâä_#º—ÝVú-ß_(hŽ‚§'ß>´”ÂÝÉ«¢Uç5@²_ßMú‡ÝCÐ-ŒñìS ‡…Ì<Þ€“ÙÂÄpzbá#“MÞ‚
+a’$œÈ&5Káüꓺ^Fjp[ÃëIÙ˜•˜z†šþ÷½@ç«¢-pŽg‡@’Ê=Û11ÂåèÌÉzõ:Œ1ÿb@wýÀƒ¿Z£AøYM£-‹èQLúl~¦8ÄÊàkª½ÎqJæ´¯‚h¶$ej©
+…rÐ#ÙƇ®îÆï¸P?Ð:¶‰^X×}ìôJ( Já"D»òI¦õ'½+’te0FVAMrªÝè'$6+U"ƒ3h ­GúÏpnFô— :Ÿ_âx„³)Í V±‘šæÁãT+Ž¼C´ ½Îœ(3ª°ƒr×ö¿ãk›Bàn]äf±éžY‘ÖC¾¬+Зƒú4 ,`bÖÑ#â¶XCcS¯ËÖ^{Å™°*AÓ>tÿ釮œÆ¤˜}õ(—fuD5]ŒÇÏiÆT·ýZa.>2ƒÞ
+‘ôs BjzÁMücG… óR™ðɲQâ%kIž$$—¾Ö
+~\ÉÝy9B¤e$Ù³²ñ‹Ö„ýùRRVü©ãÈ•Nü§º…úýhLT·Ã˜=oZE?áe§i¹rË·¦ÜÆÅdßâM¡;¾k0G_§Ü%zxåoÜ0Y_F#¥hàP¦e~÷|Kˆâö‰ö&Kãq¥¾°Ó†iú^(¼
+”!„ùÉ­R:ÇrÌZ€ âÊnW16==Gƒ ÔÔvkúöãW„sê”L³Q㣷‡šåp陂A슭-AñƒýÓŸª0܈}oãè|\,Veæc2“ýmh§QU—YâÕ> Ç
+J¬A×r?”-ò†ž°ReuÂœEDñù¾;Û<¸˜/fem†/×s ػ߇ÍÝðëŽ{µP²."1§ÅP ˤh¿ï{užxT­<¢©æƒ3Ùˆ$ÿÓ>và/½òÓ‡#uìs¨@nØ€"ÞÐò™ñ7‹Ü9'|IÖÙ4+BîÍ÷åÌìrÂ]w[T‹ƒ g[–
+J‡$_§?%j,e›ÃRN©N¶ … ]©ûƒ)ïèø€æ{¿(˜çh³{bíê‘iûöÌêWsÓ`ƒƒŠ])‘;vÜs™X‘ü.ºM7æXY“7ícFA¬Ž
+¶n ï0E-ÅÄ•žUAˆ“©Ã­P,5¦6EñpE÷D¾JõCF¾w+&K Úi—™ µ^¡ãù¿„ G±•|Ÿ¶Ø”D²òÔíUÝÁuóââø¹RŸÐíáÇYB‚ÂÉí•‹ ãH^F»˜¶Â…û¼& w”¾$ÛÉõ)–é)Ýú Bÿª’àÎݾȢÌþz/ï¤x@BÞMëSÕ²ØE,Ö£|€¾UÚ>5á µœv\t€ ƒ¨SçëýعúpÏ1%Šñ•¶.9ƒ@q›…ŒMì²…Ú¤}®SëR¹0(:ØË8îß„h)ÊÛ}'I$"'p-û ÂÃ)>vYëð„ ŦjfÆfPƒ|ÄŽmªA‘M˜…˜&ª"›ŠægBWs×+ýå‡Sª)@7E²e€jî9’§~ªóÅ…4‰u^ié®oø¢[W×£@T®EXƒ¾ÖÛ
+O5ÌÎ]G•€“f.¨U(ÌMwpyƒk'1UXD°“ϾWÙ@Ç­"ô ã鼇欢eáÔ°4c3þ}
+mƬ¢ßÚ˜£n̈Š=RýòȲƠÏÚÓç7˜Szû%ÇûØb‘Âsa:šŠk)‰ÝÉ5Qöµjݤ‘z*Ï;oָ뵪cCaÕW1°# Fwb'©£YG^Š‡±jå±àžŒúBÐ7ëCʼ¾§ÊÎî;mˆ)I픑‹Ÿ±§Ôói3ùKýõä§ùšH3ª: Ò’žjY¤ýé9o
+Ž÷t·ûnk½FV!=Øœ'éÓ :ø°?Ýš¤MÙTŠË»ƒŒ3ƒzÚ½ô»ÙÙ°"WòÓ5À–£ý4ñxö<¤gojÎåë6CçÝ赡·$+´©Ô£Tå½V(ÜKêSÆWÂ$ÄŒ›ÝHçH'î½àC–zr›Zs|ÅÝT5 …d}_²CÇóÚ#‘ufƒhý«ºgŽ<Þ³„Aô}ÚÃ,Q·8HìÄ'%uî˜è<îÂÚRÑÊd?ŽöâF¬¿ªYḢ7×~]¯Ha'E'‚ö8¤u‡Àr#Sþ¤Î8’M:¨ö³1ZJía)OÓOzÅÿœnï
+¯¶ÙÌ­-Qêmÿ˜²=GÄ8]Ì¥œ…jmñiÛC,Bæ ‰%3íÜúnXë,ôøÐ @%׫(kòÁ’ŸFÔìѧ" $gã‰ÿ8ÅßìIqBø¼Â£:?Î"
+g+ ZzZ¸M„q߯ÝVO©‚]Ï=t41Læî¶qR$Τö ´öõ$¸V,aÚ·‰ÃüÉ>zéómäc>…*»íf)];Ãô"1…„‘&‚¯6›Ï zö]µ€…° Æ/R…ñœŒùô­Ñù•Åü߼ߥ;йéLøò,¥•KŽ¨»ä«JSþH'Q>H¾M‹UӲ—‡¦Œ!-S¬*§ÍË<;ejš 4ùG7s4îSG°`oS
+Lì%C](ÊÙ*r4=hI…Là ”¸Rˆ;«-|2¤FzCØž&µHéöµB×u)”™3ÓZé`Ft4µ ²ú%0EÒë€
+0?>“ºÕhà·Ù¥Óbè_+ê IÓ\/õBzë®2DœKº#Ï!Õ]ÿqšx/’á£ñÒ¶w\Ñàæ' µóXëbž1(¼AKõ vT¦ŠØŽŒZð&åæÀÿýEp>š~¯ìüÐB<&J_ýƒ¸{r+ þÇ
+l¯`p5¹Þ#®ìõYŠëß×ó—y6Á¾„VœÕÒ8¢¢I[®®ÔLþ–µ?úÚ†åcÍÙoÍ>MxºK7  >œsOQ¤ßþˆÝŒ—`|$q>ÑÇ—¤kŽ“£q®¦#~e¨;¢fäñª"nË,Áw<ÅÌ(Æ£Ôq /ß>ð~#ŠÞ¼‹ÐvÂ_ ×#»õÍÒè$R îADdlmÆÔûe>{ ‹-á"ñƒ:»‡M«×ÕW8RP>¦±Û•1Ö¿3¿ëÂG kP¢»‹ŠD“V‚AÑÈ¿,SU·¼Ó›F˜¡DR,ɽ{¨•®NqfK4¼†ÙOTH_ÎļuP…ðŽܱ("B’úÝ›óFm¹2˜Ø15WÄé~Úrs›Žä
+h>0°ø*¹ªDÁ1×ôdóÇÎ{Ù^‡çF•|Ò-O››ÚúÛ¡îJ£G;ñî ÜR: •Œ¹UH%?˜×øÏbneƒ¯½ðÕ™
+UùbEQÝG¥O¥ ñû’ùmgy ‘¿Xã`OÖ²({É",‹ D['Êž
+Ö²ólã®gs¿ŠC’k{žß/EÇg–B|WP²‚Û<â4æ$WУˆÿ.}ÝÙ~‰ÉSKVø•mÁ‹W^_‹iám£{‹ùŠv÷67´…¡é½¶ÛnžŸ‰éäss8ña˜K,èšÁ-¯Žœ,œ'b•-7ÙIMvWEuòtíÈ䣮sÎòçþ+ÊnÊAÍq½.ÓϾ|3j„mΘ¼5ÚÆì––“2t´*sÃ{+ø$­'+y -°Ë4r¾Ç†Úw$#Ïô_.H¢±¸9-‚¹óÍ2T©¤ŠÞ^&òàRyÅ‘Í9É`ÿCxé•$Øvð‡Gð4SL¹Îûõ4=U*[òê :
+綻Q·Ñ륜IcB豺(Kªõ®Ï\ÚïܬAH)E¨oëØ¡oéa­þ| v¥^ÉÏÆ‘«œ;!4›0×TŒ~2­¦x‹…|Ycñ[ÀtäDdï[«jæs@¼¾„‡ÿJGU+yrÝ‹wœûØ®„1¿ÝÌdšÌô¤j›ñþ Þ£X^“¢‚ø(ï»'0‹~îZøö,v'çwoÒ‚U0Ó}YX”{–ͧÆ}»»:©175»†ˆ™(z#‚Ù'SÛö¶oÙç™cë‘se@Ô ¬ÃáüHœu›M²½ºoÁU¤:p0YÓú!c^ä®NFwIHìâ
+¡—|Û¡øãÃr®œc4<×kÖr
+%áwž;¯þ<r™Lâî>Ñ;XÈ<æýµWÇ)àƒ/wSGÂÍÌÊÆIJNÐÈ©¡&Boª§÷Йþ­¿¼Ùc‹ÿ´–W!®¤™o©¡Ûþ M>
+ÔÃYpïÃ÷èÁ˜¦kWó¿`ª<ùÁ<¦|°½¯t“Ƈ;ë+%×0Â}4ÈäÃé–š#ù¬©˜GÁ›]K§§Œ$yãb¼Ëwlû1eRM}êdæþYdH]d­ëWðÿÕ$QŒFâ½ûv¯¿h~£üÕ†¼\G,¦ß1ïa¦Ìrž$übªüá‹äszF_6ýer&ŒR±tb£:æšqŽüB§÷±"ÆßšBã)~n”Qg–¹Œ"7ð®><;»ãÔHQCf¦1l"éZ­ãj”!Ì9ôì6ú!
+­ÍX…曄㠒ª…ÅÅCCá‹;ÀYÙ¿»¯fÞFxUžˆÜC‰7Hdœ0)oë&*Ên†êò$ÙÈÆô`¸Ò…VŽ²š‹€?éºÙé€lÓæºÚ•§p z×<`×Ê+¾îG²ð–`v#¥Šø<6@Ë“ÄiO‡H=FJY‘—»6ûVE¤a(\«$UdîGÕ/&ySBˆ p» þÃÓö™ ²ž›øM˜´V^;¤ê±¹J—ù|›€ëcÚÁ1Hƒ:Ô4ÊÑpbòzSÛðmš3‹ˆ&Mt‰NCÆQ~žÃÄki €xŠõOiŸZº,±
+çAlÒ’m*{Ð2Ù¨©pT?éyFò^(ÂâÞ®hmbpØQ¥ÁYºÍq i ŠuȆC”öklQÑß„ðœ?¾\º^¦&bím¦°ŸºÐg úµ¼žk{4bs÷ì¯ MvéÙG{/zç$ÒÛø+1)[és7a"è@¤Z_ôÌ_(W~«ði"
+"g>Éý& †ˆ_$zD»øeÌ‚üH'¼Ô{Ÿt9›fx<Ú·®[ló$º7émˆ›œªÑeZ¥¬2†Ã,Z™©jtõÛøl²¤ -$fϾǪîëwÑøµé|±®Yó‘˜þ«Óf!%ž mÑÇÚ«–¦ =]J
+wXž&ÝŒ­U–ï½å’|‡=—$'¹IÖQLJÛ™µK]J>?œ‡†e‡›O:üʪÇÐÈ{ª‚1л`sOçô é666ž8GX?ØÅg;é,¶:ÈÒÃAª/òÕco?1g0µØž·±à¤ç‘>bh)<qêDüñ¦¡œšºOpÆ÷O¾º¢âìz²´ã-”ŒÅ2Ò¾äöÙj‘Áøø>§‰žƒS1©þì…§×ò󯋯C\$LNO&6±s÷Úõ 7Veðor©ñCд)$Aw!Cêö+ÕîC…‘*0Ç
+Ïã½ÝJWjçÂ…ÃN#`¤õN¹-ˆ
+½”ášB%lÔ!Ć#ýz²`bC2»ïèÅ¢-ɉJî¿ê’h/þ¸#H>«e¾oÇ»)IJËw}.÷Û«NøöD”ö·­ÄŽ%E%Á(M,~¬¦å¤pÂ'ô‰ž4Ô´m.ƒÛ¹mä]E-åMAaô)÷¾kì2韡¶µ—?3%l8Ž>;â^;‚Öx s)|1µ•Î;\0²<×.6,fÛÒîQ˜C 4)ë5<¦ @ ã,šn¨©¡2Ì.¬Ø×ök¾_}J®œ+d„¯kTúdi4Jdg{$&øÕC«FçXÆl-±©óçÀ‹:yQMUý=v×uB2ÞܽÈrE‚LÚú`ñ³/hvê.ÿ›Pˇ.*2Ï«ô
+£jôJ÷ÞïÂ}'ÙËVàvBïŽÔßSsoçKQ¼U FˆI–ðAÿzî,¼Úøùãµ} ì]Odt…o…"‘¸Ôü—O°ðãîFDzð _wÎrN5ÏE5Âï÷sõr à6tF©Ní&§ÈB³LõyÃ:ª´Ð< VbÍR b=Yðcå3ìׇ³M—ïônYKëê£ìØúTGºÉÃ-¶éˆògqžÜõ„Ý|¼)¿Y¨Bµ‘FžÒÃ$kAÙí»+õfµM¾W¶*…©Er&|}µôÚ̘=$· ÖIBÑ”V"•3âQÑZMÈŸR8  uɸZ ¬³0»$+è›…#6ܹ»þüš"á¾*
+NhŠ9’ÜHj2-©žÚÊÈÍ5b#ùi •æ[‡©‰µPJ!Ãt8Ó¯xú¾… ‘CNXŸìÌ
+ñJˆ¤±X`1fƒWvÅ9×7zãÂ$¯2Ï¡»³÷:°3¹PÊsƒõýÍ~]9Ùèé/¿†·‡NdOLvoH䜸hš(qŸÚ 4dI|~¢yu¡ÿs© QÇŒƒ:ì¤ÐÕ~“QæÍoXtõ1«àèÕ£ÔÛ+”V›Oìì4QÄ^¡…„6/fÅÈ+ ,ïíFÿ Î'ò©äE9Á×l‹® ”ÂiÄn¢µbÕ˜Ž/¿hÜÚŸ ž–,!¿X§WŸ,Gºdiû‰EÌöÌWÑøPEC¥J“?,ˆ<‚¦˜}"Šþ4 Ã_Ýab#t¹Å€C½wiX¼ö“™P7ÉŠ5¿»eŽKÞ¶ì×ù! ôuZë7Ùec»G#’ûhØàÁûÀ¨ß-¬j´]L4@Psye(Dlšu1éÝS¬åT€ áúó·þY†Æ)¿ØêrX⤜ٵ¡P9 ÈBöf÷S&LEI ZV£@êÆ„€‘vsý/-ñÆäjì§un[ZéƒiWÖäÓ´äzôK£¬àíÂ&ášCá¹ljCÁªå!snnÏÒtÒÉßSªOñ= Ÿ±Ú?Úžéáô‡yd±KOŸÞ Zg
+¬UÿñÅ/L·Â˱‡¾ñÛó‡u´®k"‚ïoúî½iÜú»©nã égÚ˜tÜ;³8ä¬Æ8ËÞ’½´ùþŒ_?i ($θgTMîbâmº->a¿ÔàÎÆl–$ÈÀÕ² Ë­ž… ߈˜£w¥4µˆÜSM÷û:'¬FÈÓp[†ëOiˆõ …]òQ‡èvà)ÔÛÍX˜ã
+ñü.ì…Ÿr¤ ÐZšv,*:i;½›ÚŸ4ppTâàËù ¤» ¼¦KÀð2ù¹®d›¹
+ƒ7Ë`\izçKe¿l¤Êj=~†„ú“#§¨Å8f—Ò
+”o
+À÷x¸éP‚?úøŽu@µ‰€ŽÎ/®Èp¨ðM˜ß¸O‰j>p|Y~æP-!!<%Kߨ/k°kvðaWنͣö´ 
+¸Òp©a.Õ§WTkÆTvô+ñø?LšƨZÍåèNä[{;tݽNe•ÃòÄêeÿ¼‰ÆþÊ5%ŸC<ŠçÃOåþ”$B?Ö(Øþí"ßOÏ Ú%Š°{Óæ¢x •½dH$Â1ZÔà¾pÄásYÆ`sŠqºæJ[!çè¤y±™CÞ“ã$žô\Õ¸ˆ“زÌUåfHÅ—qO 8ø¤¯õ}®ú;9éÈÑ/N)!goôŠIí …º2«
+e¸{cp×Í®†NåG8Æ"£;ufÖæÑ/%žzyΨßfñïü¦°oy·gšXòZ=—‡¨Êo²BQÄé¤g–ꉵYF±9”·¸Ç:†êÍÂ=Æ-Ê;Ê6——±9 ­ºBVŠƒä¤Ðí ‘Ÿ¿*”µQé5y¤WÒ@Ê,Ãׂ%ÚX§V¨[UÅí óÙ«¤NàëØ4é&·ÖkÇnRáˆmD‡QfÏ@ã.žSgßQøÓ—®Nš‹f–U¦ËQuû¿Ñ}š’¤cŠÑĨõß›*£çL`aZ¯,‡$Ƀ¼,ÚÞ Mš’ˉ•ÜâÜÍÊ7nXR-6y²Òr]åjn€°…©|VukþüUä°ü#=#×tŸDÕ
+*Y»ÍÍàøÖ†0Ì/øF²ûœk™»â{k…b/Ì?© z KFý.eW¿gYÿTmvÕª” Q³èºš
+ãE쫶Xý|SžÒ= 9}ƒ.“Œý[ú⤅\ì[Þ–ùn›9˜RYëãºð§ÅhÚ>ø‘V„‘ºäEG+Ë`—õ™U.y„%°|uó ì=ÖXÆ:Œ„s çšÝ°ìG
+@†òQƒÚ©ØŒqV#×ElñT[‰LjгWŠŒƒ
+ –2­€’|Üœi×ñü‹²Ÿ‘u¸¡,ƒ¤æëÀ.GfGè\@ø N:ÓògöFE·ÛW™è *HbEíé ª©nxé_-dßi;^QÑZ›XM¾!„ ¸º.š^”r,aØ|Q»š€o¸i>ƒvcÙ*=ó
+õ bäã«2CG®ÔhÎÞ‰¡EJ'HJHr³‡¿.rUû»¡èm5/ø©¼uÓVZÉÎ88?ÑÑTùìI³®Eùk8c©"ãxþŽ¡.˜K$–¾®á€¤¤‚
+Ü¡ùP`3|ÿÍ9ù+ËvÛ*zá¬"Å`³L(ÅÁ”6Ú"GY‚ß1ùÄÿt·B\!þÖ NÇ[íG)± ¡×cÄ–Œa㥴 §²V‘>UwÄÁÏm@^léÇ2ª¤œáÇ£Ìã™Éúš³K½Ù˜>]D÷K‰å…þRÏJmçC㚎Y©I #ˆI7û?6ÃÛTºÖ¦ÄJ¯C=Cíè×”»^%ØÞ\ˆ(—Ój[Ñ­ ´"Áµ„H¼8u厮_ƒ¹ñR¿ˆ¢Ð
+[H+¨]g©Úü^ÑÅ?/ÔÛ'‹ãÅmIxÑ~ë¬N,Ü ±…ðŒ¢‚=¼ŒÎ;Rc§Œ Ggé9FÌpT™¿P¡¼ ;­”G½í¯È û×WjµÌšê¿¸h‚–§n–zzøpM÷–øÒQ5™)àÑú{žûz€Ò”ð=K?é
+endstream
+endobj
+667 0 obj
+<<
+/Type /FontDescriptor
+/FontName /PSSDWM+LMRoman5-Regular
+/Flags 4
+/FontBBox [-566 -303 1772 1126]
+/Ascent 689
+/CapHeight 689
+/Descent -194
+/ItalicAngle 0
+/StemV 106
+/XHeight 431
+/CharSet (/one/two/zero)
+/FontFile 666 0 R
+>>
+endobj
+668 0 obj
+<<
+/Length1 1804
+/Length2 21579
+/Length3 0
+/Length 22700
+/Filter /FlateDecode
+>>
+stream
+xÚ´¸eX\ͺ-$¸»Ó¸»kp·à 4îî\‚CpwÜ‚ÜÝÝݹä[gŸµ÷:ûï}úéž]ãÕ5ªzΦ QRa6±3IØÙ:3°02óää•íl€¶œ Ê 3k #€•‘™™Ž‚BÔt¶°³:ƒx\Îæ
+€$Èäøa4y
+vn €ÚÎ`2Z›ìLª M€šŠ¸²
+@RYQMI…†ñ#±Š‹½½ãÿéETEUM’ &¬ *
+´vùX˜‚>.p^N@WÀÙÑäãõß ÿsÇÂ0±0vþúÇfû'»´­©€ç_ðG'ÿeú? þg£Ò|ìR;[k€ ÈŽIÁÎùCÔÿÿì³ÿ¨%ábm­
+¤aaòñÛñß\äÎŽî:ÌòeùÀ?^ÿõMï ø÷ÎûoÑ""vî^ ,
+gXš0­ÑÜPðÚñ&ÚÁœß1b¾{„i§ óB°Fd ì»;Ñ÷+ôÍѾd>Mb"¿¡k…÷Ð Ów ¡/ÅT³?c` àBl²r¹ãéÍ#²= f#Is†&–ð1Afa¸½‰jÐƱb&ÚÊ“–.3ÍEª4׃»b;oì£Ë(õ…æS a%T¶­ƒhõ›Úa¥{9Öa¨3c™0Ñè•(‘Îè$7D+®C ùºš¼$ïRö©×g‘É»—Qûø‰,Þ1ò'ÝÌc}ú›–¸ƒ„òXæhÞ^!ý\¡eTüK¸W+;ZEíc‹Hü†Í÷K–ИS“L‘þÚÊ¥RbôŒ?fÿ
+˜äP·7·_xÅè‘QæaUØçð3H͈TFæ:Ϻõxfš_w¸ÝԞǺÈ
+4"Èß«ü»‹Ý,ÇôX´N±¿|W¸:¨+¤1PJˆÁ`5INrM;aå =;¶}R¢É±yh‘:,ûóÀÚB%þ[j?žbŒW™Nb3FƒÍ”åó÷®ƒË÷¬¨8’³oY2hfÆ8¨}濈0Á 'Íѳqý<Þ G*÷/.ä@F>é¾ß¥=«Ér°{áˆeÒ5ûmêL½£ÈÞùE·èòóü$¯¬p¯P¼#Ô”¼ÈE¡¢£ØÔÄ£mw1V”USZ)l ÝŒV„nŸii¢±×VC‚à‘
+¾@—‰Æþƒ– Ðaгk#J€…],ʬËÈ¡­ÕŠdl…(B^öÐæ{5sOZøóbæwÝgŒ£nt¶…~â@Bì„=¿1ÔÔ.f|_(2TÌÅÏ+Ô!iùl¨y™Ôþç¸ÜÁˆú \VØ:ŠüóF_ 8Ó7Óg1B}×?‰æJL5²Í«ò36;/ŠÁ¶L«…®ì­:X_ê'çgZGïÏ0Ptd=!â;ß…¬lX°¦e<¤¿6žÌbž°È9'ÄKÂœ7™½´ý¼OµáòƒÍõ«í½ÑaLéõí¾“’º¶¾§Óû² àt ëÿrÎó«E®5JI$=Å€ì8gºq´¾Ð³k¬ô1‰”üþØX}ȶ© óÎ[o†¤˜±¿õ•r<Øe1ÒLÐ[üEÐMŽøÞ¢â.V ÙÂ+l]õFuZô¾ø¨c¦ØrøqHžƒ*ÑzÐå°®ÚÌbõ»„=iÝ÷¦µ²&éð·a͹í4ß±Á_ƒî%'Ý‹¬N ÷ñòÉ¢éçÎ@™•ÏT=ëŒÖÜôªÄ÷[¢e~X·ì#Ñ
+'ê—Pßϼôi¨wd\î-Ѿ/Q7aÍ`Û†¾"vRy±üê¤ qÑh¿ï
+ò/ÆËO¹yT"·xY°W×vP-Ðô€¤â hE|ö&AøÕ5Ó(c–:(–•¼ÉŸSVŽk!$fívñy!yQŒëÓ~QäªëFÌO¾DjÉ×mµe~ž$»ì8ùTúÀÄA9Uj]z†hKò:ìI°–|oãŠ-’íÖ«ÝítÿgÊ(U^êW¡Ì:¦„˜>z¸#Jlð§œS®·9UãJ“ Ö äÔÈU,ðçQ
+›ïD/õ˾®Ë94Q TT„À«;›’#ñjE#²Ô· ÏØ/´Ì»Â ÛìöìÕ$ñÆ"ÂHö}¡ ­#µÓ'7,讲Y¸º)Ñ_6÷Ò£{9@˜`å(Õ_m”ÝF:éìFÅ槎ÌÇ¿q«]c­°á¸5à¾h×¼¿ÁY²9Yæ+‘µ§¿N IªÀFLEKHÁ#.fKx¸QšåfzJÚ3S4qùº¡&†åÊX›è34±Ø÷à »á»ÙÃVzœ0]x kô·}únT¸Èçƒ{èM4aûëê ~’N
+~
+ž€®3£`6B¢<ˆHXò5 fµ4÷Ó7“õ]1éì†
+˜ PÖq©W\¿ñ.èZjÓ³.ÁÀ`ÿIc¡ƒõà# ÎQçc;bÚHš)u%–'ò›>å†sÖ9 œºulUï#ëëE?hf¶n¾D$ tÀÊœñdçÊa¼U_¼¦ƒ"rï“sp\Ô¢·®- ÇW¥ÆI{ÆÓ@o•yAc÷F’Í«¶‹Ó$fß^gf¥nr~wº‡ëKÚÝePû àA¹Zhü®ƒ}rmã„ù¤EK‘>¤4>Ð:öI­Cbz(ט AW&Q\{2'í‹€y)ðÇÅŽéränWÕ |
+—ýxwïrh…äóÛaÑ¥úó§ÜZºn’ñlEõб/Ž©¤7ô“}߈C4bÄv;š“]X›Î·o)Uâ7XMªHˆ\rdöÅJ/¿ÎÖ˜žrŧ<?TÛdˆ¯<Æ|ƒç¹ê »Äñ·«ºà$Òf^r·ÕJça¶ðBú–å(:(ôÇnáOÆCÕqº•§Í¯ˆnŒµó”³—tb¡ÕBÊ?hq{CÍhåQˆðŸ¡ÇoÝ4MŽšÈ¡
+Ô̹§oQÓà þ~ÛºHòƒÂÏÎC¸:¯#ýd/xû]D'͇„(,L^‡ëtpíêèOOpKÚpÖ¶½Ó)Ûã£}AÏ$6ás²Eù¾@BbŸ
+ƒœÉ‘XþP² šÃlb†ªJÜM¡´CzübžPbÁW•)–¦Po˜X¨ŠàئQ¹Dùºê&tÆ3˜¢‹dzûîÇ&bòÎ1¼cöú¬F]eͬÃœŽŒI·t_
+
+ÖÚUY.bNuÓ¼Iñ…$‡Ñ3[Ü+=R™ PÁ¯Í @°ŸùLÕQ«ÐÆ®“C˜ïô çŒ} ²¸¾=Öâ•VPî1ó›ö`P;Šƒ¼Bò:–ÈNw.3½áõÍ)RÊÕg`©¾¡XWÖ O¦ç+óx ôi#ÿI¢a»Gjôr~2p/¤#-®+ÚÊ{Áw•ß€4 
+À%i¶nج†2)õÉÑFhA‡¥Pí`|U'ƒK´ •š"crÛíAŸGie¶ˆÈ1¬˜YŠú4ÉÉ/í©Ì3dÎåm‚êb7»üy‘âTÿÊívRìdàí¼D¸–JÜ~ee;Óú÷r|…AèÞ¿8Z}83T*^öâÍ­L?íU¯’ïÞ9‹7ˆKÉÌQ–$õÁ›Ç´¨J6C ;&•8Çô¯ìùbö¿Ù@Âd'ƒo/Š@ ™U+KŸ=d I÷Žãº?¼<à³êÐnK­'´ëÔÄp³Vì\·7V™z‹ ìºa÷dŸÁ)p²eš¦FÖÒîÓ›†&Ò ªp»ûÛeÊ^öm Â~­•)ûsISÛÄË<
+¿!߀437å”Ú€Uç8¡DÀý4äBçÀö¥K¡
+ «) vbI´®q"%–‹<kM~LˆÓsì¹9E—ð”§ÆEåxD‹ÂÙÞÑ|ßgBdJÞ_(˜øšË2È÷f‡["=Ë)Ô·›ÜÁ#¯Vòôû*¨3€ßMÏ
+Óüž Cx €5·aÇ9Ú°Ð'~ý êÒ‡¿E‘ ÂÆè.xe¢Ñ*9Æ2úÁaRS\¤÷pó]”_·p÷›íSÉ.r\1ÊŒÎOq÷¤·™Ö¸ùT €…Ab×P²ƒ4ú·Œ»b.Ï;x”¶éɬècyeº ; gl Ï!¡ua[#+S‘ˆð¹&£T¢îIKÏ|ÆßYùX“Né O•ís;Øþ¤²ð5£¡°uÂ\Ç;’E1xYQ`|ù%;·¹>®ldäX²x*¢Ý#ñ¡£ÔÉ}a9ÙË&~ð»zWU“°PŠ¬Ú§ºÛîzó¢Qá‹ g×ð¨0Å¿bYûóKÇ ^£<’zm¤üÄœ:+O}Ü€kNÒž|R¤YÇi};E˜t¦Óƒ’qÒ¿î =¤Äܲ]òBOŽC«Ýä!nØ%`#t£Hd©8R+•lÃTEäÏOSÇï(Ìž~.¡î“Ù;¬õ¸¿Âæ¢ ©y;êófu•W!âÓ]˜ôBh~H}»Î;*(!SS¤ùr˜§´O–«8­¥nOŸU57¶åßB4ç ÂVç…Ì»9è­Áp^@ž?߆La^ë™2üäâS­`“í‹"RG÷Ý÷'4<\!…!±Â3§âxŽ"›Ã™–E¤¸z¸èʵ3|~̵¡L÷`ü~Ÿ#rÒÛ-ù#7ëÒ…D¡ŽÖ`È.ìõ×óþç!ý©8|Ó äojht9l‰IˆÊ—LX…iŸá÷!ÿDï€!ó°ïÜîࡈ ±ò¯ B4eÉ!LJçkþÈýyJW¸3ÛX^m Ô‚€ö=F0-Ø íez]Á£ˆÕ!ó«ìÒjx¤6_V¶~žðÄL)q=ÅiÔ_'»ÙϵùùõùÉw4' ¢a$X¤
+TŠ˜«l"hf‰¦[%rÈÐËàïèÀájêÊàf!›Æ~7!MýnDžZ ÂÏ;Š~„Ö߉a:²6îDÈY2`ƒ°g†Äbÿœn›í„­ NX{±‚t»¸Èßärê¸Å,Ðr³Ùí¶,KÚúxhÈR˜Û" š}‹°Ùëÿákeç ®¦é)_™ä/›§Iþï§=$Ô0xíË8k…§
+ÓaJã‡AÓ¬Úµ ¦‘Yzº×»‡õ3·+þÂáyÖ¨Õ&à:Í 4‚}¤ÀÒ×@Q“»QÓÜPž“¥Æ¯|OÄdÙo°©°9~?È*ººH追Ú­•°Õ[o–<Š\´v*ˆÿÆYE3¾R®±‹L±>×Ø›‘mŒ!nG5]8¥zB©úiÙÎdëÁÏr|;˜
+Ú¦™g„Ÿ¸®
+d¡[’¢•/° ƒüÕ+D]º°aŠyö'z.ië‘y+n]ß”äj|nÁ-£Œ—ĉÂbeÚh9Ÿf&xœ73Ϙú4 ‹[P?Y¹
+ND
+–c‰íK‘·“ ‚Ñc#׼̞¤ª÷BÀ ëÃÆù­æ̬H}ó„‘®úâH ’uRÿùœ**î ñ†O•}ºÇµ6.”gàS$$?†ij‹à²é‹°7eЋ"‹ŸûÀÝFmŸÉm2ÌGϵ•ÄŽ§F¢Ï1ß!Ö£7u^Ýå£^¹yÛ×uYs6ÝW¥@ظ^ˆ’wr99Ä€HY¼¶d·‘íӛͰgiŠf+³ ~K“q{
+íWÙ;ÌT± «Qé(øŽç1pÊZ;æË—ÞÏF¾¸O„^è%5˜­Wo},ñ
+þ@çqƒãMáRÐUJIŒ,c,õô~]ßlÄÍá©ÁÑÈŽŒ"öÕ_SF„±\óàyÑbo–ðxÎM}[’I¼‘,upÙ t*Î…é‰×;1êÝߦ0ùâ>AŽ $T¢[«ËµŒ¿ZœPp5?5Tg 3òóÎ4bæšÎZý_ô ?š™H\¶e¬%Œ¤Ñ–9 }°¸¢Bž¸Ã¶q¦o±ôu¢BI7ÛA:_E=ºôYám.”YâR!‘¹í•ÎR:/Žr<)±ªÒÛ´)»U®kõ‚ž®l~‹Ê¨nYŽjÑŠÈo>$ÿÉŠ3XF2º‘‰ –q ¿pŒöœå,ÃcçRiÝX’ò8™&†‚ í‹¢•á-ª¼
+˜PÏ“/M8 Ûò‘îd±X眂w”“?·Y"̼A¦ßF®3û–‹;}+£¡r¹qÔ?_|¨Ac¦\ÈXñ·_›ïrÍ’“[+§s9+&‡Üár® J¡-ÒÍ…)òƒ*HbÍa[°Ä:GL}"€d×u¹£þk4~Ú^G?ç(,˜€¤¦¥‚·€$ø«$è
+vзõ¯¨©Œ_MTN ¼Há ¸Nª$R­꥿#-•^%ìSÊâ‘tko8 €Ø¦]6,(áŒf€@–Ÿ.¼€ ¢v—Õ÷¤[“cÏbM‚g¨üì0šÄ‡Ciέ@HTÌeÿ3 ÞÎ÷½[{i.8
+Ñ7KÅu1¢¥×&Ývµ±ø¤*׋ÔÂ/^•Ö]FÐNáy¶¾÷õü8¤Hc莈ü4x¬¨‹¸à5õ~$OøÇèp½ÇŠÓA?påƒÞ.Ðûê;¿cÏëÃüáå=ô}rW€Ô”^:¡¹ 8õG;x<ë#Áy–cµÉŒdÎ!\9{>æ‚=×~ÞR1 Q/:Š‹{Vµªåsª*¶«ÖÍœwö󲙀ÒâV;ƒL}²×*¡Ñu[í
+̲vx?`êáqÓŠõ~7u5Ìõ[ʧT2¼ÌÖ™‘úŒPÁé¦àó¸}cM‰1ªVo%ÀøDz7, ”n ûªß­¦@Ytfý¤Dq 8:Ÿ’àGØ_ÖJ ´'1ŸN"ؘ$å
+OÅÇþâ -»>$•q×É:Udc®Ám[RèÆ,[½#G—r/—Âw~@ÿ,Saߘ!ŸR Cà/ýjÄ•Ç"&… œ•’X1ÛÿYŒF9¹ôÝö42«’˜²ñ¯#ËÇ¿ „'šnWØÿ¢ëB½ŸŸÄùÞpôZÇ3(Ù|»:ç„å-,R:‹$ú³à´_R-dÙ”Ê;[̉V=
+#\ÇlTw2f èzÿýàj9©˜Kÿ«oÙEŒ·»8 §µhÓÆÃÌcÈx#,yR!7vT^ÿ"u9fíÛÇ­ÿp³<^3{З"\¥Tø?1
+¨—'ĺžCæ27óìì~¨+yJLm¬X„ªF¥Í?±sµ?½ÿÖinP˜/5v¥è–Ú(ÕÔ§V+ú¶ï´ÇͶÌúÈ“Š¶y4¦ºÃF¼ü…ù}„„ËzÑwÞGµ§ß›‚[>Ú+«ŽÐcë·¡3 w
+%K]:6cKÔŽ \ÜZ*»ª:¯r4‘õ=|ݘ O#£ó¤8•ÊÉËEž½–è@3h±*`Òq=‡ÙŠAwf±ÐŸWb?ò=±ïszJ¢W®õV¿ÁÞ@Ö²žNDÞ¬% * Ù£‹^>h8Ãà—
+Õ hÿTÁJ¥ªÖî‚¥ñÀÜ+7eÿµ»ÕvPñÓNeö°Üi¸a,ÜØô¨ýP¢³•…*
+ã cT35ÍÔòRz3ð^Z¥áDí'¾HÏS
+úuýp”
+ FëvŒ…²€%jõ´&ÜW0‹Z˘öŽ‹F£7‚?¸äá>³€òIºö¼&©¢ªøÞÒ Ik‰y1Âe´*ôY0.„ Lmçib AŸø0|¾AP|¤rGþçè±H’J'Ÿ8¿ffÃ)+q~Pzé=ÚÚÒcæ óRB`5‘Ä}JÙÜ®Ka<è@€þ¶ž(èréÉ€‘1oÇ«*Ôµï°÷jfª­^yËJQo ¡cïc`-ôEVÝDÃö3ÙAFVöµN»¯lXKEuqí±5bÙŒ9XrúÍ‚Dl­+±ø[²§éW7> |]ß3wÌ­pn*V”=èŸâ¦ÍéBKB=ÅPÊ·…<ÛÁÚÊhä{±mˆÐ"ùÒ>ÄÙOþÙJ[ø¤Ýia„@hp÷‰ ê`”æ&¿AÎñ“-¡Õb‚ixjoÛYÓª•5‘gv• 4Í)|ËTé÷ÖB{ÏpÛ>½”Fvl3ï3=á~\úîìFûbÆŸxÌWUßØ ¤O¾ j¥}5W¤ùýYdQÙé:ÝPq4¯ƒf‰E±áŒ¼‡&g ßä“÷^= .—TX‘¦¤˜Sh‘'Iäóh¸ðÂSw+iîBÁ¡:0Xíóû[önú´³¿Ìÿxweºîã1‘mGÆu±y§k“Huož & O)H!ÒÊãY(ƒŒºˆ•=üI‰JH¶ü,»
+bócÐðz˜èú rdînçíK÷œ`“/ÛŠLX Çx÷ψ²+î,¯ÅL4ØïÃGk=A(¯F þwçE>ê¶;[àŽŒ³t÷8Ä_íçÙ”IåŸUî^àt†pJñ¨`¹©àà šš–n¥XE†¢i NZ÷‚ûòÒ8êa8¹#W<OºPŒÊCfÎGråd™$‰ô;Kh ªÔõcѾÏ:¾ÍÜ¿ûÆ~ߨ2ïn7„¿V:$T-xh¼´¡Ç‘;–L˜úü›c'ý¬dàCŠ:“5u©ÃŒÐCHòI¬ñÌì[D3^h³æ• ¹'³e¦ÌÞûá¼:UÍZìV½ƒ0%¸üúèÞVý껩|óH¡)™Š {‚Yœ¡Bï¶sâÏÓˆîYê”lFìÈ-ß ÒÓ¦P¶êçíËIM‹% ´6s
+èý*T%…µ02ˆ6îtƒjy¯ˆâñ·Œ*’†:itÖ ¥Ÿêª/‚…¼‚yÆ<Ôõ»ßÿÙöÃE
+ ³!¿Ð&™˜ É"H}Û,3©ã&íâÆI’o§'a ·ÎøÔôŽ.š>ÜÌAèeóŒék^¸z’Pe¦°ÑeƒùÒüä?-Ælª¿râ°Â£);Päšaw„£ŒÌ­tÚe±Ëln[û¢£r²Î.û!B1(°6OÔy§
+9Ð.HfÏx,n÷éJÂDñ·}H¤ Z¢½‚…Ú åIΗ†5[ynÎ~’B¾ÉMO=<ÏZ:"qêÏP—‰\r¿ÃV¤¸`ÿ1lB­OÔP¸Ì
+Çsó RÜ3µŒRªJ^ÑsÛõ‹}iL5Ö¥ã.‡¡Oí'ld£šñ ƒŽïmñÙ¸/¢"?•÷ök/eŠøÐŽ˜šÐv˜~ë‰Â¯µœ‘_ öʵÏ+z4o¥åD¤DŒx5­>"ã4»Q¹½øIÐà ~S5ŸM_ŠÃƒpìÔr[âŸ7åš¼ao6º\æ·êÅ9×À V_åɲ´À) -’e<KB’ìºÌ’ÐXð.ŸÔ#M/Èhz/ßúªº+öT»égî,BIÓ$úP+Ó…õk'Oj<Ø¢´kòÆõìgE¯ÆÉ#¾ÿ×â¢ì?ë¹®øsT ¶íßÑÕÇ\“t õWnþìè?K?¿T¥…ëIή¾WŽ7|æÔinñð6‡+E—»ŒËc¨+hÑÁÕ¨­à(¿÷Å¢èCˆ’©ÂÝ’¶Æ²ÑTÙlHÿ²“Ϙï0X™¼ ì X+.ÅËÞaêt:2Y:ƒL$¯Aü]z¶_†ü‡¾WÑ@A_f—ÃÃéHNËàóë†òÖÔ¤»½ÄÀ"Ú¯ÉÇÎáîÑeŸ› ëÈËÖáˆwb<0tHŽ+"$][öGîק«;uø«~ñc_‡¬«v£ÍûâèP()Æ]<Ê ÍqA—ÿ­Í¦I”?ÏhBåýºÒéSö*c>W2 ·#™®$2å½}²“3g3s_,ExOo&7q,ðZVQ-4§ZuŠŸÏÛrRÅyÈ«mh-‡¥ûm#à¸|“ó:VJű„š¸èÊš­N¹ÇÝ!Ðà''HÂNÀ,ÃI8ov‚*úY³Îw]m„7µ9˜Úô¬Íñôx^êmP‚ Þ%Åý ‡†…–P•Py,3”~ÆFE¡ì‰¾M‚ŠÙZ“Âg‚£›æ‰%E¨êÙé.¤‡I­‰`X¿@kw
+­þ¥xé!zC­öê —Ï£0@ÿŽ¢¶ôøýFÿŒak¤ 6Rôœáäë" 5âh1Aú'†‰·†R$>—\ƒ6=é:¸%nö`¸³„ê–Ö
+è ÏNZ wþîl¢ á'`7e“tB.ùæ˜xþ8˜Ö$ÿ[8Æm™H„ð
+BÝÒÀ6¬|¾r²‡V‹ßÖgÞÎf+LºÕ
+>£9ñ‰ó_W5½.$gAèêá56s¸¥Â[mÂ;˜#'âßëæˆåô}lWvhÐ&ب9³¹:‹òì#æVÖ©™w®*¼†r¾Ò«¥ü± Öüõ;!l%þð{‘újaL¨e#IÁWÄú
+¥³P7'»Å‘‡<öh‘'Od•mA4mž&¨ ÿmW_{À‘ˈJtXß‹UñdC¾±D9æšýå4
+œ88,SÉ“?bdþçÊ?QšK½HþÍ4Ñ* }wÖZàÊw5$¥F¯àSoÍp ®ð5±_¥•õŠÑ¯ôMö8é·§ºsTÔvº­hxœËdøOgÞ„úTct«:|+ÒJºŠs{Áx>èô <Åm=V@Êw—ûZ·ð¤c2«ÛâAŸçðùK‘Åï«XôµÝ5t
+ u ñËX¦çKÌ:J
+SÃÐ/5*RÔT=ºkV ù’2@ÀòL1³àÅZKoô/ú»¥b(B/B-üh?­|K àûô¦N‚_¯æÌÐw3“ŸˆØ®ÖåegáŸ(Æ=öØåƒhèÑ¡ G·m ìNÒÖbô)W‰ø”s°Ñcä2DÈ3†6oÄ&Ïn;¬“Ÿ]nòë;æj¶«ñÉù<§HÆV¤í¦1åñeÍc3ÝÈÆ aeÿ—ûÊì¼?æå½µá€háª&T‡£KOÅÒr…¸·Øú ¼GZ‹áé÷Ò*µLfÑy´o>€~ßš¶hst¥8ÀÏø?Ÿ/5B¸¬NÀ ¿4̆1‘úé¿UÎ ±Þfªïlê~J¾"£1¾=Jì‘žúŽ5|!i ÷ W¼ÚN‡&쮿³ÝMŸ‚L`sä=Æà€GÓ›$X\g'!nv“Y£½ZŒQ®øbAô©v‘›Xb¢–Í.*ÿ<}¬&÷Ç£‚¤!¤3Á«ìî©Ëÿ7çòÔ|¦šÊc",åã?ÌìeÄ:ݬ¡FÍ™}õ…hm­s¦iôŸÓÜð tÔjï´°ègº=± „Ì£ZaÜà
+Cý˜;˜1]¾
+Gr}{J+4C¹°cøöcÑìNÞ'LD0qî™idòi4( ßZB{èåšA Ç#%y…”[
+í©bdÛ1R
+ÖË™žÀLtFÏîRzÛlÄUè´dµ5OH§¿Ñ{ÁkÈ‹…NbùèíjÞ"0­‰u(?7ÒKGˆÅÊ[ÙBiQ¨‰«qµ•ˆŒ‡Õø^߬îJD€´&ûyóÂv.àî3{W©´)ÞÿòäØ5ðÍôª\ê GÅ8 ³óötÃL+?ÒÜI‹üð]V3KËÝQÆ™DGº‚Ï`H"‹±¾XxÇrž@)þ<…á=Ë-qâXîò’sð·èb„%f‚æ@a­>Å Þžï¶LjKW«fGZwßüT.#ƒY~ ¡H¬Y£ ìvÐÖxfÕÒ³xÞup‰l£,Õ’†¥×µa,G¦ˆ6õ¦HlÒýõsŸhãê"¥v<¡ÚÏ=ì¯o(çä9•Èo‹Ãã,4£miü‚?l¾ð‰b±7EµÙçÃOg0úÈÇ~®·9 ”&ògè†;±›Gvƒ£W)ë÷,¿yD[šk"Ï yø9µþ¨6Éâš ;$Ö–|·M$¹¸‹«8w¹¸‚G`ÖóÒH}Nlß&0%Ú¼Ñf’—;ÂÞ «ò.U2E?Le¨Âeßqé­j°þ1™3
+챯N¼~’îƒ{ßÛÔ‘ÖZH/hR´c'ÃÓ$÷ö²–±Û`†ñax‹Uvg¤%QiÄDÈßÔè&<Ô0Ÿ¦ßÙŒËñÆÜ‘ÕÉÇUÖ -9Ïët”/¾ºç<Yµ.Ö)Ø«ÕÓ{"eMøüSéõëÒÏ¡NÚ¦ P~3–.]ƒ\×n4YQe“Îá0ÀŒkËA ¬“dŸÎµ?žDÏ—FÚʉ†_ýuA缿ب€RS‚ì‚{ÛðìP€ÅÐzz÷uø~›žÙfLnTå:ßj?ì¼U[ÙFBÉyt|üÝ ¿Ä÷>ô)b¼ÛV5b)óŒ!~×N9QRØ„
+Ñ~z{j7ø=2! SNŒÚJš=˜€¿NÑÔH¬²‚ºøç5ê“h•&¹¯ò'™Ê@ëÍÀN¾Ž³A ±ˆ_Õ{ë±S0Iê¯I°!õÍÌJ÷J±¡ÌEB‡QZA¤{!4ØÁr5AýðË»~s Ëê6¶"z϶a[}ã”ƺ„\]¡V^qŸ´ae‡ ²7‡qÈ*ÉÓaPdu䇴ßlœ6PšáÓ‰n…U‘w·xÝ‘\´Ÿ7\ŒO¦–•lÏVÕåBhÆ”´Rs~¦Ü±'T9d8i>&Ì;]CVˆRWÈkꎛۧµÝÄØ^ç»ß,·mlH
+Ë^O²ùhÓ65”××Lý&É7&}þ68_d«1½‹ š7л‚ºY€øH‡¥O+½àÛ¯׺À\$êžl¤<á…2Hë<­á©é*'ñ‘§‘F°ÜŸFç#šÁŒü:ÀEUx%„~'þ¬Îu ³ÛHyb?Hk)ÖàYU‡¢×©¯\´*ÝÑÉÒ¾¹z®•;vôOýròçô
+øx³»Î6«Å~””† 6µš­¼Eö
+bX'Ödé·ýØS£‡zèïIîÝÌt’7Á$fþ€‹H¿Õ†ßËlÛˆ†š¢i.À•Ë>›h¬ =T4;‚‘à`!,––FƮ߷ê™ÂˆSmÛ6B§ÞȪiyV’q¤…“.‰ŒË9»'Úö{JÈŒ0+†8Ÿ£0Äáá^±ü:áœ|†¨T "‰Žw¡T_üîaFK«•Þ¨-(l·dÔrsf³ŽzÏ^â_šÖ´é.DGçÑi8µ\Ž¿!/¬„dI€ÔY=%ÑR?SÓîÁ©(¾š¥Z[ÓÛ“K‘¬ìZÖÒUóÅ@/ R&:˜ì$]ZÔärÞàg«/ŠÇvoa7£ªyúy'âBPÈ»j§[µÍ˜+…³p¾hu_Îvï…çáÇ—ú¼ÆD*ÿ4õ& ü˜6j_€{!tö8µb‰vøö…žÄMì0$šh kÜÀ§L¬%…®aîíå!ûyú]*K¬>? q× Üž,Q~òÅ7™fF
+÷A\ÞxnþW@mN0™ÔR°’´ô«±ÈÒÀ{„ì‚M¦^k»È€Ži«õt‰®ÊŠ`ÅÐRó–Ÿ:2—U&(Öç¬W3Ò9WƒÉª¼ŽÙicÒÙí–´;z¦ hùÄq£îý·_Ïìxð=5º’\î ü /¶Òܵg' 2 £Š?›4:@®KMª­,^lÔg:sB‰  I9uÀ/öUtÂ!¸Æ·§­˜vâ…' öfD»™ˆ*Zã5‰ß Ê/É …V¯G(w¼ø׶G¡²«&8âÇ0Ø7ðò‚»¹¥n­w…X嬃³8»¬#i*ùŸcÑŽÜ„IiÐ2˜?îì‰K¬ª]Ò-BÏ'qÉ/]êy4¿6÷Êç+ÍDÌÂÆFüI•—Y¼æ]cñ Ë÷ÊﵯÈëx¥b$†ÄÓUÑ@ý]çWÞSŽÔ6Gk»9©» ¥.à”ÆýŤ«Ü7ÄŒ˜ÚÆZ¶¨ˆêaÝòg2ƒ|ÛâÁ§Ÿòiòg¨
+Aœ±É+«^ǧ!ÿó
+™è]÷H{L³^ÍA–‰|1jUÙbß©ª±*Û·¨>'­Cÿ¡_l’ò…„‹[gc¶–ÛI|èEîUSÈm§sŽ\C§=¿ b‹ª›GAå`²,Ú1xÈɵsîë×£'Õ,cd³2 B¿9èÓeF÷X@ͨ‚Ýç{ÆÁ©<vç¯×ç9$tàË60¬ª³S½Õn°AäŸ$L[‚8ÞPNŒ;°62Õn»Ρx—Œ¯9õ#iuF§‚¤àŒp7‘n\nƒk÷0S­QÛe(ÈݬbzÛôLš²”WR³´Ù0§ªw‡„ î㉴¶*„ÓžKLÎÚþëtÄâmÂæ:)€î÷®ˆ«;½xØÇÙ ¬v»þ}°Ä'î*<mØ!Ýôdûò[—8lÍ×u•n;Á,P„¨yÕïdÌ·öÁqMo•nçþ—Zν î¯ß» óq;¥X:˜š¤Þ6*q vV*—sImtÖw
+7Ôväj´Ž ÄäWaë~¸bA*
+;•Ñ€e$O|)”¤\„¢” 8¨šß©ŒƒÀêjéi<Ü«Oê U¼¼Í™Z8V[%…#ÀL “lkø‰yÛ›ƒÏ7%šˆïÁðN…k·?̭匌‹ß²np­BHÏ"½;¡NC±ƒÝ¨ì§ág7T_ê¾lBYˆä”ë|"a£M[‹–Ù˜F­Ë2žY–µºò]c8Nüëo:·¤öX8V¢L2„„neqùJ„«Ùù34’qrýž“ —L‘¹ÓS°NcCí»uŽ0—6Ç7ÿü<èÚ:–?>¹†Úƒ¾Æ-kxñhí5`ö_âCW7 há$Yƒ×0°~bϨaÆò虎(Š²/üüí9”5uÃ9’]S´+êÎP¾ýÀ^á²Õ5:n‹LµÙ°X¨6®õ¸¿xDµ&¶ßÝŠõƒƒê³ù†a¥× ×|—\Ö‰·ºÝ'/©+¦?Ô_mf-W≮‘ T‘;÷:îûí³M>æÄJšQÛœ¼'Ûþð=¥ßúÍc!È4uÕcN!Ù ¢ ±žjZç­â7;¥TW †Š§¥Fn(:Ê
+Å ÛVª`+sï#bCì
+ÒŽÁvø*""²uEï&]mÖ»ËýËu¥7S éï´¦zp  –wY(’öpa·àrN½[-vþªÜ˜êÓÛÂxoù¤öU2ÕÚq­£øðÀ ªt0å4M—jé܂ꪕ=^g9†ÎÕŠÐßÅtÊÀIîk³”W¨*„á©"r†ÚÙ1.¶@ã°CÒ›G~Hœv¤#½Gø¾Aà%ƒµk‘Ñgh¶«éi6Ùñ)ŒwØÆDþ'F\XVÑÌAI Þ“J¢Y{9|Œ(Àª¶8ˆv>X£OnÞfî ÷íŽQô~™AÉ
+J9_õÕ3ê„îÜFh³—ô澎¢Šûs‡™›ìí PÉ®?´þìÇøö?ºàdˆ3¨¨å3x›QÃ*~=k¼èé)»ÿéãqSîsû³*ñ‡j‘D á1Eœðû!²Uµ_E}¾TŒ2•L`tr—
+öÛ/”Iƒ±š\B2‚áúù¥òPèÅ¥^6¼üsX_ W‹SÃ9"vè”bXÂ/k06— d~vXRËàji´+7Ì›±I¨O™ÚVÕ^íXërH0µFeíœ!<ó»JQ…"¥îmk‚Õú’<sVÑvÅZp¾0§'ÝpíjG¥4ªÑ,ÀÃ[ƒ™35¿ j=¡çÖWÛ궘‰‹ŒEkvȃÜ|™Oôõ¯L½ó‡ûú¥­,´©Gšë2°Ïž#}@N
+'‡3ùKm&U„g×
+Pù2£$~C† xÙÝšz»ô{/;×çËŸðÛTs¹çßÁ—ÕŠƒ5Ù{ *_öcŒÐrÕñúøcôÅ>C_†âVáóÊ}ÞÑLðXg9øƒ÷F^l ÝØ— wxÍsbø¯lví誗&.À5`Èõr'Cà*Å…Fk–êž6ÿú,8uljϦPêvvTlswÊ"ÙÔ™ÿÈóŽ0Πõµ ¿g>¾Ÿ‰dÓXªvÞ
+î‰tÏœö-y»5!ˆ¡·]ÕqñÊsy)&èWÎÖ
+Hú“™D–';}\ü—".œ:‹U4*$bš;± Ù†× 2 5Éâg›3ž¾UA„ÐXÁÃ6´_®SpBAøѲÏf3h{šðù4‘öÜ,è±Ã3ñ®fÎDq#ß\CIV¼{ô{§!Z"+è´¸ 8Óš=Âi w%sØ8=ùb%þýÉúÔ‰RàBùe®ƒÞÿñÐ<$žÝšbâ4FøÇæ/Dº¶ð óÚ½ˆ¶ÜqÈNŒ´?Âî‚…ä^97ä
+Fâ3¼ð˜X)9 '1è“•¤šµè€"1ïÂöþ_Ø–ô F Õ  §w½rB$6JUÒìco+†pP¬ÊdD“éW~’§`åk)¼öõ+­V€ÊŠØSô™H'ÝîîT´ðdsÏ‹˜Ÿ¨
+kÉÝhÀ>Ï
+$VÙŽ¡%¨Hx£(÷L)Uóè;¶)‚ÊDcz•2KŽ?¯q
+((YÛdÙù@þO¡újpH,¨S¥üY5‡Û-÷J˜ÜO”îTL–ØsJ8€h‰®¬ÅB7øêUÏ{CoPv9Dš§}'”ðÂQÅ&6Bú]õž:õ¯þ“ŸVù+¨½Áb3ÈzF™Õ~K\Ä7yh6&r ãÔ!wƒ ;[D ¥)\Í«Š¬@‰X°¿Ùaò›LÜ}Á-R®j6bOäƒñ±ØCëñ`vžÙ„KG¨¢Ì#TuòŸ‰ýýf“̽ë”þ‹ž ƒ¦ßŸ_qu8)—¸ÝÁ¼1ÿ›³) Áe³ ÂaÏ„ƒ.Çç˜4¡J§üW
+åf¦RÛÖ£æ½ÿ¢8ðFG¹0p]KuLmÑ` mºƒ1 ‚ i³V¯ÆûÜ+dhNP£"þb[Çѯ·§íœg\½š÷ gFÇàý¤6[Ó÷j©!$¥ÎéŒWó"­ X%
+ëÓ4‹CiñHÇÉ(¤úÆ_×z#2lØâ3"vó"ƒÏqiîR½|ç®fY?樴40¸{„i£þ…dE¬«Á`ÀBêgŸxós˜@p±øqùƒfþGu2àéøy·”@Í¿lÁOºz‡A¾(Ž_,@úiÔÿyqî6›dæ`LBÒÁ‘¡nØnØä_³"ý =%i- ë?_˾×ü¼(üÒ
+>6‘“ï?#qyk.R†LzWî^dŠsêõNï hZ<¤TW¦þËå¡Y
+n¨1c_yFùí4r›kSìcL‹Õ§¦?™Çm¢?³è¾bûëæ".i» C¡„,AÙS^ïPOJ•µ•qP2q Ë àE `®\ÍÊ6phCó;qCÙA'N¸Œï…Žc@åãHÍE¼úùÎ\2¦¡ö°±29-1z‘>¦
+ m}Á7©Én·³Ê.eöNŠ!†ÈTª"Ɖîsž
+Ç•âךĸՔý]“ 5âØ!h¼ºÅªÇí?ƒ`QÒsaæyµ+lš–Á¤–ðH£@ÝÎ:˜èìW¾AÛ[‡´2°ÎÕæçÒ`¡´áÊíË @sG]ûtÂW\­À6ƒw7×-cJÊOâࣧPNJFibÄLE:o»®¥Ä
+=ýú'¢êeÝKRʬàç“Ù±õñù²Å5¸ýÕ¼Ä5=Ù= +I@ Mš‹êP«n;ê¯1Æå,Qó
+Ûž÷lu¼ˆ.xJD>€§]!‹ãD¤œ‹Ó‘ÈÄÜx—=Ã,v&k̃¾ëò?qÔßÙÔd_£$"‡S«{KJîZ´_¤i ln*t@0x—Î ¬‚(c>ŒuÜøŽ²žœh *ý—;Œä}wNî°Ýfoñ^ñî¬óó Å‘0¦4¤r‰&´NnV:³‚ a™)6"^žü4œ½Äµëò‚ÿþìéþR”Ö‘GõÞ5kùÚxÿ9ñ†Úì'óL¤ˆ‰¸»ˆª
+ê·ÝaØsx¼þ ¤Ø… š¶¦IcAØ·¥ðçjò™AªÊ¡_²6@Íý
+À!8ÄÍAê., Áž³-Þiä¤xý
+LP¶m~:Ê€Ÿ(;u66
+endstream
+endobj
+669 0 obj
+<<
+/Type /FontDescriptor
+/FontName /TRUNAO+LMRoman6-Regular
+/Flags 4
+/FontBBox [-515 -298 1647 1125]
+/Ascent 689
+/CapHeight 689
+/Descent -194
+/ItalicAngle 0
+/StemV 83
+/XHeight 431
+/CharSet (/A/eight/five/four/nine/one/seven/six/three/two/zero)
+/FontFile 668 0 R
+>>
+endobj
+670 0 obj
+<<
+/Length1 1885
+/Length2 21786
+/Length3 0
+/Length 23010
+/Filter /FlateDecode
+>>
+stream
+xÚ´÷eX\Ý–5 ãœàPwwwww- p)Ü]Bp Ü‚»»î\‚k€Ü§»O÷yÞ¿ßUWÉÓÆžk̵kS’©¨3ŠZ8š¥ÀŒ¬L,|
+9:H˜‚|
+r
+°
+æºð?ë;âìfj÷ov
+t:üáxG@žÿ^¿g[»
+/ó—,˜.‡¥äe:­ø(¤#—
+¯y€aœ®¨XÈ…”vU¼Lc÷œÔÊÙÔêûtCìT2¦½´úÓÁ89œämZ¿m¯% Xk§$–+•w«?¬O$»‰COÊl:w_Þ©§mÒ÷ÏØ\x™QòM,$RÓlç\ Æý²ùQ!{FúÐPæ 'A•G
+S­nØtd+ëe>¸\&¾ÂÁÅjP´ˆñzlì©Ãb&'¸ÒÓ\|Ì£ø.Îö  UÀ€Ž.€¥FP„Ý-¢°‰È öû¥@›ëÍ.u
+™Ò¤y§¤~¶ô&#)/ßà½%½6ÝÃ#ÎÚ`yµñõjÛdøl^Û´î4·z g§€cWQ³ýDÌ^õ5Ì}«u\Tõ1%‘]~â›cÙ¯äí3Òl‚‡)d¿» ú\~~[juš±äFÞ•éŽgˆ™^ýŽ" FrÆ<2+<}é(ÍLîÔ½/ÌÌЫ¹T¦ÖUw7‰²Èý—6?ßêtÊ’J`¶]¥7nìtL&¨W‚Ì?£¡6첋ê=”·ÆÆg¯s¨5ü ˆ^J|BÇ[O`EIèo¤HþQɹ¦æJ¹*¥Yf¿ÏŠ9º7ü‡¢µá4Ú dƒ[ŠÞxDþ¹ŠPðPªýU²â€º¿ëgcš*¿ßwqç›zU-†yEŸx-<[`y’ãoX[C „¤§2wjuxÎÚuf8òfbb·£–þTÑ\*~Í[‡¾£]òÝkŠ.Âþk.…<xÑUI#¹$˜tÌ;Hú4E€éÁvgù-rv®P!ÎåÕš,\mònùºŒ`ˆÜ‘Y¾Q†R†>}`d|¡`N€.º\å”—ô­8’ȵA!
+×,Z>ßáG5SÞÈÎq‹B{Ó…ƒñ9¿¯­È~3
+yjAšäžÂ…'2.å,‚ìóÒQ)ìAá²ãΨ´"™ãñÛâ4û¹Ãä8Ò8žØ9 "[A„B·3ü‰€bÝ_Ò¸ÛÄqéró®=<^Rû–fXc8—µô°
+þõëgP))#É:H€ñ7Re‰¸c­)ôÈÖô샠}Áˆd™©WYŒš7I‚ÑNv÷v×jNrɺÏþXŒ±ùÁI¸†§êáI͹±å.jËP'4&çH_±Vñàí¾G‹³_͹ón£:‹©©#¢[­ýf<éS"«ö³¤æ—‘ö¯ÂBP½ë¡¼Jòœ‘ÊeÀŽ™9 ¼èÊã†m Ô®vnâ˜íf·‡¨Öɯ*ëÝ•çþ1)@´¡åÓ7¦Jê†îüræ”_^b””áŸ{:g+Lùq°o³¹±ª ðV~ž¸a|‘ŠÏÆÇêt'áI¿i|¡¨9œÚ – 5½ƒ›`¯ª ûÜT(ƒ)ž+øȨløáô}:pm´FPo—i«³ûµ¹Ý“ýDtÄbTýl!EЭƫ—µ%О£s'¼ÚSJñ[·b 8›¸XæeOÆf ùp ì
+5#œc¦ú( $fûì‹9ÁL+{kÝݼOjÚ¤Vå¤0…ƒìçŸã‰^n ÏÛÔ"Gâ÷é)c©v¿&DC×6Y*­>RóA nVcY"•R
+jÉq™P9è§Äܱ= +·BlÉ#cÕÙ>EΆ¾ y…Ôíõ
+”÷k¥”™-'º®R¶®=AÃAéê )r’¾ õÀR”qªë¹}P߯ƫFÌkðbúÝÄc]
+²_tua‡h8í.#\ÇðC=‹XV–l1æ• ç¥˜¿æ4‹™ÍØ=ªªÄÝ s’¨R²& ˜]' 0ÒN’)>ôG9Ï)Tî¦x3ûü†ëaO|Öb êKú°ÅÙ«råN Y„œkËâô4±&j?Æ|¢%ƒqܤû&ÓîF.žI”ñé6€êö×ÞädüGŸ=1ý“?:0äèôïÏU`ƒiÇ ü}ã \CK#áËNÓ-qdüKË ý´=Å
+âƒd²Ûß8‹z¢í ç®™X¦ÏñSØæ ±“ºEæ ]ú¾Û?…!¤‡‹›Æ¸~ƺ¸Ó8ÃÄÏW7–Óªí>à´‡Ûíœ.…R=:Žh¼ŽÁHçx+†g‰ÖdÔ\9¶äÚr«9ÁnžÎƒäÐá’þ… M‰¡ v>Ýp!äùþ€ÎeIi“„í/r=hŽ§ev¾ƒuîL†ŽF¼ÈUEò‘ W<}ùWqî“ûB1ägqiÁÐomªñÉ/.ÓßDÈ"‹Ñ«Ã~]Ož›v¦"ê-×jy,§»úüy<W<ý‡æ6
+¢iáÝ,5ªúý©×^¡"¯«“g3]9nÌ¡D|=JòËå5ÕÜÜPË¿Ä•¬þT@°ÔÁ(2+)ùš^€_=xkwÚr’0B­‘n€Ý.(](
+r–T³¹2´¢âßyòiÍç5„Îç¾Ò‚ìUwûr4·Ü6Ì%¡c%Ó
+ö¢Æ¬$öpÇ_×NƒO}ü#‡ü¾òÉb8V’[k
+_ LWAWÛ ?r“ iˆê¼27aü|Î"¨Öˆ…!Úú~i'Jl°]‘J­ÊP´€½i/],Aÿ³Q˜Ç¯žÞ¡Mˆ}ß#j&—¤<Ê4¦ºpe—wјSx VÂ;CI=TÒ„pUM×5[ŸWéŸAÆ­ø=[ÉŠ¨´ŠgýQoÃPÔ–AÕ~ÐõxžÏµ÷B¢Uô—É¿
+KM}b¾ ¡xW"v HÜ®>˜ù&Ÿ|ò 4µ9-)TSÁ4`-$êˆv¹Áû²Ú›k+»f”ñíE]af®0Ë/*Í÷¤À$«ÆÜ©`÷2îT–žgiÏLx¶®GTúʼ–ÚÔgAÿ=²ŸøŒx`ξ#¯*ñ vÅnÚ <«›Á)t@½š7‡¢º‚læ ;3î1­¤†·^
+¹ôgïmÊÈ(
+ì5*¬ÖÆ!àíÑOÚ%6ÅstQ¯áw™M¦cHžÿIÛ
+ôÕvtÁu‰KàJ¹²a£‡Â”ÀY1h~MWà„Ûïa\–¿¯}øƒ=¿AWMSWxY>­’í®Z‘[«´ŽÌŸYÄô-ö±IN’èu]¸ªÃòS\<ËÎÓ>ÜÔ¼))¨—ô‰€OáóçÔ–ÆíùÄ<€¿»ç8 žÔ÷˜C̼Ÿ`[á¨+ô ôXX÷iDžË#åŒi¦Ó¾|0ŠþíNA½šQ¤N«EϬ;„UH³Ï0pVu÷¼Çï=鶙–+Ô÷q1:^Â(Îâ*©‚×rKÎÊ ¶`1¹y¦ºq&}Èì‘m¹bo•³«D÷6¼2¬12/nr.ºíÜ-;¸Hƒáœcœ¡ÙWìxˆ]šŽS÷\Ü…/ôÛTWÙ—s1«`Ç(
+D“Œ>ñçç/³ù¯N„ÄO†v…Á¾äo;•'ÌÉÙC•&žw1¸ |ÙU[›ÅˆD÷f؈³BØ4•Ô2ßÖŽbâ ¼v·8%qû— ÎàAÛ˜7<N†0¸ŠDóHÔËÊõ¡y©¦ÈÐ~f¯ÉÔ…:‡^‹¿™û’_“ír¿Ã¸­¸*@,§cJt²>øàÔƒy9¿Z…¨D“ôUÄKyÄŽdÀLÎíÔqŽåÇ™¬ÎN}­Û|g´Ìƒ`­ †Y£õÆ쉿ß)ºÙŠ€uá3”–½P9BË»œó;yÿYkõÝ©ºÏ¡.'¶µ.j½…éš•ñ#*ìÙ–¡òTÃÖ…iÇ2™â»t!Ý€Ÿ“|¸Ë*lýÀñ5†ˆà€a/èɦÐì;¡²îc
+ýýs‰ke#$ÙÕ¢v­Åõ"·íªŒýìRqK&]ψtâ_Ntj)\ª?=~ù‘~>çR××¢oRÀðäq…¾(¥ÞN~ÄW
+mý<`Ñi²QMƒû7)yL –ª5ÝØ•ÚĘ:]$¥/’LиšYL¢m]{E’e׎óhî`ðäæ]´5ùBN².ÈÉ­Ó ªä°Z°y‡QQëíÖËc™v-«WTñÎØë”åeãÏþš
+ñ¬þ繨|™99RqyUæè`ÍÉm„œƒUã£ÈÓk‡ëªnÇJj"x¹Æ‰øåØTŸ¶‘²Düð&€>6!Äó1žÝ22¦”l¹E³U4 žÇþ\¬ðòåÖr’çäý¦ÜvlŒF _ráçX nØíþít¸Å²Z.6¤O g¡ú±‡>×äé$¤ßšvc’Ì!Ç¿ð -©—‚õZdÅ=ÍP¢¸%7̺«ˆ"SûùG¶¤5”!QDÉþ/7öUД #ñ”á6Ø(yôÛzÀÇ_ƒYÎç5¤"Œø ×Tnˆ¤´“DUYøàÙ[Ñ0ò;G}ƒB¹äËžî$ÍS{I³‚í6Ìç¹ h¡i|—$;®óïèÔÖî ¨ÿ²78f¨Ž²â¾GÅš×øöDC†¦±000÷HbúÒòg9Të‚ZR1¯ÔsW4«~WÅÈ”Ë*2 é:Œ9•»{¸]Dƒ=鎑¦€$¥ÄDafWm+–6’jÝ£= ÓC‚€m²f*¡ï©ß,–cúæ&’n”Ø2zb¿v½Êœeà ê6ÛëÇÏûÄʪlS­”F$þ =Tîi(¥Ù ™‚×þKøWhÛ$#ßN豓o‰5^UqÖ†ò!”ã„eŽxíϲjµqÝŒQ ä8·ð¼¥R¡2­ð“ÄÌ=)ÙXöxŽih`jõ¾kÈ7H¾¾¶“ÐQoÈU£m TÍ÷ÔB×Ûî/úüÔÇ5c¨ ΰ‹vŠÓ*eói~Ê=•až[ψš«C¯ìˆE6úq|?›©ë\9Æ.Ο5ap6F2¿gÁc_KâGƒÉ-¢ÐN‰d‚˜_z!ÙËs™ö¢Á˜2­wñèd°£õÕ¥~AÉ0 Ó{"%LCìJÿP´p‚éw£×Öòš g]3ÊêV„}­’m’Ð-Ÿm3(ÞD꣭l²Oúµßb3¾ò.’´Órš›¬-‹0ð#eT©g­”bþîî“ìÇ=NF1n²Ì!Á¹I6^p˜»¯ºyiÚÎËb=÷î”A’襫…‰j±v ‹“Äôy¬¾0×Òû€ë˸ãÍšÌF¨waÀH‘Ù¡Œžœ§+Él߈±×üÐ:-ÿx«ã›ÜÍ«d+‚LQåxʆ,ñÔM3i¤ŽVZŠ¶‡ú–{3WD‚!¬“1; &SÓÝ|^ð× ç]ºp/|T…c±7‹
+ø!ó™#ñµLGùÛŽ}Æä PÚ¾øBDÅ
+?‰Ióu1ç ü,òßä‘`–˜j$†ŠD Í·sé6˶j-wÇÀ3vM\ö†Õ’Ÿ_F'ÄÍßmd¡¸“ø¨Ó~ßÎS¯µ õýÐ °)wÒ-ÞÅ]ízv†hOš‘!ì¨mÉZåØyŠq3îU[¦^Ñas,˜"|z$šÐAÍû6ЛÖ'…ãé*¤µ†žÍ¹_·8h-Ç{Šá*²s60Nzœ9n¼8¨rÁ›5Ùâÿ†-øg=Aò¡Ë࣎ÅùjôÅÞÔgi®“mt šò*|¼yã9󦬽Vp\˜Opý $óݶÙ]•@³ “Ïa: *´'LŠˆÔ
+÷Kº¯|ií:lÓb'Þƒ}¶Á§¬¨ùT‹72{\n'ú•ÓÑ€
+b«®¯»2}d˜(k#pUÕZ8™.òV'´ÜΞïO {ò©’­?’±Š’IoóPË£w&”÷kb<î4™Î}Ì67¢-óÉ+ÁÀ–Wë^a›Nf/Ö“Û‘tà.í¼$‚¢‰M¼8Än*|‰Ðï!¨:Ó„&ÂSÁ¨–?7E{‚w¿¤Ëòïz·;âMKj°c䥟Ýiݶ›Û‘.$>÷ IL‘h8謌µ7_iI¨ÃÈ÷½:×™Hóî‰â;Ž!™®¢ºñFNªÜt´çI‰Õ|ô>‹ora•WªŒzí‘5ÎóŠøxTv\œoéœêŸ¢ž" Ú³1íG"^[¥Â,ÔLï¥K袋=R­;ÿ(ùÃm…öƸ}„öšDy"ô-L uÉ^Wù'pRòϼ$–Ä”w{•·ÎüÉ“ø>_ÌÛ”÷s·ÁÕH÷Ú]¦£G²CÈ-øÚÉ íkþ’Rô\ï®’3D_䔺ùLÚ…¼TøÕ¯_ß)à7£Õ2Øm)>ÛVbh—A1npåÍ2ö
+Ý“uµÕ¦6$a>0GŒ[õY·}iÖnÑoÝæ^Vô×ýE);G¢IT7{kÐ=26µøXÝD/ßo¯ÒÂõgM’Heضë»»Þ›WBí|ƒG £ElÎz%sÞÍá8ÈƘ­õ—!ÔtØ—%¿t¬…Ò¬î-F«Ï'¨TŽl)6–rWBæ¿„bÕƦ›91 C6}i€”ùñÊ»¬ù*Zš$N¹­Ð/’,â0~ý5Ý=§ËZœA¬Ö‹Ä
+}
+â½
+‰ÉË#s{™ÚTÅOì°R]èðÔ?-AJÅ/¥¦wcá„8¬È¾øˆL<‰6×Ú`èK±¥Ód[ ÌÞè¯hz¦£Ê—hŠÞÅÔø9>6±,õÉ‹Š Ä“8-G”5¹d>P?õ ­Éøéûâ©(;‹mÕtu
+˜PÅG£Æ–=B^8¶¬w€Jîϵ¬àõèažÇ=è=ŽÅ¼˜˜Ǹ«¥K“Ž”­·±šz†)%±®…©ø¬¼‰
+ƆóÛêÕIèÃ8@4l%|ñ~|˜I3C¥í™HÒ§ŸS™/ô¿î°+²Å 4–ì{Nâ½ÝÑ£18H2ç2ìÝü¾™?j#zv’w>h“f2néç1»aÕ‘€ó?ž–7­ì,Å»;S„`•¥÷=êÁ,Õ‘ªl+”¤zJ|Ë9’p¾nšŸL}v²ˆ!<ç“s Bßè:¾î¥œaèÍ ­´‹õAkrÞob: dI—g[©o?N{pep=¤ë°šïô š·¤˜OSŠ&o@À%Ðc6‘Gª Y{ÛDñ ]ï¢HGàׇ/ŠWßðP¹L:Ûe¾5vÏPXí67Ÿ“ûdjÅ*ŠËèÇö«Bj؉ôqêI¢‘Bå¢D+$!~ŒB
+ˆŠ[óÙN³c˺^¦ý9¶ØlUÃhqջ˳oç,aõüšÊSà™Vîž ÞªÏO_O®Ç¾Ã­)ç²âƒ&RªÛ|,{s¸öáÀP(lê8¾´?ƒRtDƒ83ïõ¡¦›J²ëI쀽ëæ&:R ƒ"3ø\¸™w@ßýdDŠîTÁ<ƒGíD*ËÇá\æñsKß;CÜm²Ù¡þ§–73šúÞëªgL*á°òÓÎŽ}?H#OáD0mé7 ±Àñ VÅ&ØïfèÝ©8ÛŠpw
+³æ¶ó‹òb5<‘ì˜ÈУ`Äyúôè?§ô÷$ZÖB‹«6ûãᇠI\¾„ßù{úE´EGçíúÉwü_Íhò/ÅZàrrÛ¼cvk=®w^~€¨œÃ¾ -Ë87ûÁÖ)¢ˆöôš[—Ê ÓÔý—fûÄ‚K"ÿ¼×C”JH÷‡~áÓ¡Æ.] 2p>M|©8µ¬©½»^Œ¿‡½DÙØ>ö´8úE ÐEÅ\ÓWSàmå=9hìHæÜÑŽR½J)’rwø¬g
+äÈçt£|1”óX[>Hº Ô‡’C¯\Pò§ÆŠ‡äx
+tËRíL¤Ä›½ïº óÞŽÙð0Îqÿ½_¸‡Í %¼e·Eì·8];®W>-ÂÕJvsÃs¨‹Iý<]ñÖÌ!z®œsÛPkE†¨ÙÇ6SÇuk…5"™Áô1ò2&®êJˆSˆ1Šˆ+7r…iXë#˜ýD•?¾³Mi¨ö%2¦ö“DOV
+Ø°ú¤æœ`^\÷Ç!~e´ýÚ_K;w<+ë©MkÃ]'‚îª'qçfo@ÕqÑ>áÇ0‹lí6¥-%™, ·ß›†-:‡, [è¢×ã‹Oë°J£Ì°Sø¤L&¼ÿéÎ4©¢ªå†?wwä2ÅãîÄÃ~}Õ;U|Œ¥‹&ÿÓˆñ<†›:B¾ûd<Þ;ˆ;"l
+ÿ7Oä6!Õ¯³¾'ûêÿÿV !ëq’Yì_MÒ]oÓfºuZw̺NXcªtÅJ8öpøƒØ—)ê¾?”@ËO†LõI,®¢œ‚HóóFgÃ÷|ó>%Cv›+J$½ôj{Ù>©®aˆÓß*îÓ^³Ø¨†t˜ ' ¾q…ú„T_Íi™.E©QtôþÑœ¿Pc­o¬V’þC ksE‰8¥Øcô¥¬^98™ýÍÜAji­>g\6 x‹»ÊÑË…™bÿb„%ª>£òGgTÉà˜¹~lG“ù4_=—ºÂŽBàFA6ƒ¡Ê¨::êKÌàYAç
+WìõôIÎ Û5ÑSÁÈ ë47›¥Kµ["ÛsÆ^²ëÀGdr;A"šÇ°«|ø%\‡Òk`8ã[ß"
+^¦r³” MaÏ£\´æûbV¡¯±6¬©“²&‚U×ツ1 •6ÓAy4"Ð+à³™w@<rGr—µáË6Ç:{
+Üw…ØX(Z–²®7ZœÑÒ§œìá3äáæbãó'¹û}¢9ùR1Ô6fVõø³:²{L¢½[›È…–¤ƒÞ9Äçg(1è tü®öçï8=¸â ЄÝàþYD}ÆFôϧYRc)¯7K¯‚}PŒÊ ‚"¼s{ ]'ÙrŸ°Ov
+¶ÄØÌ
+RÆÉN8¤_àšdÄk‡0¼ _~šŒÛÄØÅ3‘¦ÚÜ2±'Ææ_b-®J×T
+¼]sŸÃÉeúÐâð¹ÉDÌ&og­¬AÉbO±†i*Ég­~—éÙat¥dþ2u5m Èš
+/sW–w¬ð®‹ÇuÇÝ«›·ÑQDù(}¸LQ¯þrûëãÓ||„ÎÑ®#%ÖþПnøû¾]ÿ’7•7QKÛëfšûÁ€÷zóPÌ [=¼.°.Õ ðv9 wþ±‚sÝ£6”ýµ>ð¼óý7#Ä–%zN låÖ@x!çÃph7-ã~L ¨q©š tY'ì<*Ä”Îö1.iÝÏ5ukvüë?¦­Çöê -c$£/¹BøyŒõˆÖ&Ôšýù Éê‰úÈ|±ç¨©ŸÚrõDŠR…i/M|·H³öÜÅnè Ç ¹pó#ÙcÛ•5ÅW˜¯”?…[oüºÉæ²&(.ì!<œ|LC¯fΡ˜ L!£‰uµðÚC}ÿçä)÷ä«F´–EºERð+nö*s,WÍð¶ÿw…FþçYºý™aBÚÄ
+ЬÑ!·‘’º0‡jßù|»·œž}ßíƘbRCòö°öiý—M‰nk…¤µW,¸<±xäʯ ¡2®%§“‚¬Ø?Ñ™­ìIZøžFÅô|‚¶:œÝnÕÑåsüžÆµÕü4Fì€ùôIÇÚ.yVätB SRœ²Ê˜Â(Ft>Òè‘`«¼&Èø£5“Bœ#²tªÕ@¯ûñ5ü±mk‡Ä,Ãá-¡}"EÞí«‚YðwÊzi¯A‚^æé¯ü·žð1áG3Pº*mÃrùpX°˜mÛ|XeÚ|'T
+ƒ…×ÌᣊåY KtS÷øI-ÓeŠš½í2}=#XÊú¨Ð
+ªÁÎ7;ÁzøýýÞ݃øUoòpXƒ~Š¡ $Æço"¿:ç0.°Gb…ø0rÇäã½Ttã´Þþ| ý¹Ñ¨G9ªE3dÍ(¡ôþ:è^¡s­ÐÆ%8eZòËe-ä+
+E†ËÝy=y¼OMÚï¦
+ÞBbA®`§~x¤SëÀäuÇ7@86ÆtXÙV÷—èÇ<÷!Ü[
+w§ï6FŠ‘ƒíÁ#zJ\œgQSʲ†©9~„hÜžYB„?
+«dØÎ<>—±¨—Z¾¸ìð67rÜÓBŽÄ!F—òÿ“MÝiqv¯-oJvü=ÔÖ¡Wbƒþ5?2ÍZÿ6£ýf݈¯PBL8Cù:Š›¹9^Xþ§W•V(¬@i¦´ŸžoYÛ.µ®Mïz/ ¹6s4³ÁwƒRoË$<&º£ôÿãjÅЗS®FçÑ5£ÐD'3ÉA ‹ºpÄ8¨K†EžJºÛG
+O^Þ¦Á¤V„i7é’ºƒa XanNé},l÷ß·†viV‡Eÿà¥ó¨S )Éxh‹Y¥—G³–üÕÐÅì–ž,°wÉüJ
+·ïÒq̨Q&Ð2-ˆR“^*—=ù0QŸü‚]¾•l´·UmfEÁöaÄ1×¼‚ž¹
+¯ºbX2|v].ÀÃky.ÛKÊ3dTM*À•ˆàwŠ'fÈ¢ç}v£S"U–}VÝDƒwüù~–]™X~Jú‰gjS=€í»«Ã4QHÓœoF‚¥³Nh³LCÛ8§9ô÷\',2 ~}’[Ô•ˆJÌÑHq—9q'î§å°»£Êç·¯§ccdSévJÅ.^%Å_gâZû¼Tl<¤àú’gÉOóPÛ¶¡VQøµ¢\Qß>«±©–çMnœ7Vã©Ñ–¹ƒEK9'6Oû‹ùÒì÷‹{]ÔoèƒEÖ# #¹.Ss©Ž‚$°.*Ô…Zžw{Yõ0ŸMÏOvš~à•Ä[q¦ÜÞ¨^ Äwò#ÆLªoZÎ4Yl;&1BÎyE@/póóZüQè.?QqgÍR,’ãSý¶Ui7ëJ;´Ðr—ÇXºÈ‹Ÿé f,"¦Üì Æ~Òªd™9 ûuiþ¥V ¾¼&pz|¥3å•(1K©ŽdÞPùY hœ˜î‰®åªCbÏ1ŠŒzÑû±ÌF1IñÎSäÓ„È ¬Ïÿ±-ùÓ]è6þ\Ï[ãÁå¬/¤”¤á\!y/ÎÇóàñišß¡yµ’xæ4—f5W[4â>蜅Š¾¹} w}Lãb\ù˜»È×Üä
+O¬Þ@c&üsŸLS¿#ßî«Í(ÈYi'BWב/ˆ ÷¶w.î~tôšçÆßíX›ÇE=»Á÷rE,qšó•Ï·¿ÐC1ÈЋڒ‡LÂŠÕ }Çm |8 ‹öΤšV¤µe0`²büЖk #,ñ³š6ƒ¶E×ëгJ:Ÿ:J@&(Œƒ³HŽâL~àqØÅ wCöí—â³’%<yúÙMïÖ ¤‰ ÓYÕ˵W~x;wk°<Ü/°•£Ëc¼;Ëžß1+–§ƒgÛõ`Ay‹ˆṙ›Ð‰Âv¾BÀJeAìáGòŒ‚í:.rî‹U°ÙWµåôœJ\ ªümA™kø7Ñd¨…ÉQ9“_4ÆQO
+~ÅŒ2¸ u’Åßõ<¿këÛàð{y›×¾ŽW§4~—ª‚7]¯:Þ’åÊ!Ãr«]kBžS¬6ãŒ*š½º.v²:è µÂÝ%~R“cYù–ïõ{›„]Óh[Çc ÈAÉùš:l†ºúdzǹ‰ÞµW.üòÊg(šˆ¸\鳌y›¤~Lï‰LPÙ)ŸŸ1gÊå¾Ïjí£ÔÁxÿuÅú€O[6îÀ¡?³µÈ÷¯"ø¦DC.^^ º=PÐØ«êUDÂ#^ÎûŒ‡~spøýæ£Xa­;5eìäbîL¸éü´Nâu÷Zàr„—ß¿±ñ¸Ÿ=' ˜€­¶/¿
+Ìæ;q‡Ùº3·¾ß7üù2ÊB÷Z8[ã?í#5P/Û`«”—
+3I۹Š»CP3£©¢ÍJR3j¹úi©ÌÞìoÒ‚×`32^úí Öö¨f Uî0ˆgŒ÷w×Öe붪s°õ†¢™cå‹Ó†D£iû篙ó§ùÊ妦µo3t¬½o؉çÌ ;ภÚȱ`(CÓçÒ.üs©ò
+Šdø£- ãßçwùB·V3Йþ…k¡˜¯Û) û$,<Q“?c‹³¸×bÊ‹h?É•EöÛXÌ‚·#bØ£Ó®À› ï¡<ƒÒƒ8²Š"…š„GÆóWS:q}̧ûé¹|“}¾i«­Mi™úÌ.÷Ùÿ_
+¼ î]ŽÓ#íd×V
+dã¹<àÚ»Ó\àb|§Tºbóa2KÞÛHÄ÷vfš¥×ÄËR)¨)U<r5qتáà}˜ð{+G´ê ü~OÎe/£ŒßͼE@a#Ž€R̵;~€+5žáeÛµ°5v¾Š‡íÌU ±ØŠx¬Z5;ò!L ÿE3†ÞŸB†ð.In‹`¶úÔþA-ý²¹ä,ÍÇ–ćEÙ(C$­8=óé摪r^ÿŽ»s÷X)cÈ‚,vH)T5}vøæ#7 ‚ä#¥¦ ìd|‘97üûä7¯ÿïÔã7l`÷€’Z‘²
+â©"… \¸Æ
+Κ£{ÇC娉š½ž?·çý¶ýþôA!Eî‰WTAºØ™¯ÄȦV§ìP¬æzÛu·†ªdìªé€/£n@–Ðk6“,ÙpÎ0F›‰®u"oà âh,Ë/ÿ¡œq–îUdŽd!„½ù“Éž÷Á
+Ü¢’-{m•uôUbéÞmN¿YH-zvTÝž€yûÃ0| ¸¥xEgjÜi.ج*¼!?uÍÊŽÆðéê3‹ [V·ˆ2›P`+®el¤¹ óç±Ðó ®ÀŽS·æÉI,/Éõ³±ŒO¥¿è¥Âox>€míÜC‡Ý²áóú9…íÈnHÞì Û:,xfÉwgŒWÌŸÿ¼Ã·l­Ñ½íO%-¬ŸUDŒÈ‹ÙŠúóUü…ÐŽ4A‚¥˜n=ßZê#tߎݲûwß—yÁk*b‡R¾>’{dx8‘½*²šQ$™,Ô;
+¹ÜF£à’õ|á¥GJ’Ä˃HÅw´¢®Ó ‘¼0ÊüyÚ0Gx`ü‚µËìÔü73ò®~yô·ÃÒ4ö‘×@?Þ1¼iF(¹–aß2òÔ½àÄJ:½,š¹ )>•[$EÛyÀ%\€òîƒE$r:•@rCnß`ó دùRéºÆÇ3Ðz¦õnÀuE«³T3ìßoÜïŽÝ‚ð’ÿÌÚ{¦$U`êOäN9HôÁŒ¨ý!sÆóòþéä®DO€Ol¾òêü¢ª‚xç“Á£ìÔz²g•R%èÕ!tí\“>Œ…%øŽlä‚fa_¨E)å5¢C\<
+Û7¨¾65bÊŽ¦ÜyÇÝĈ¡»‡š›6\L.2„D™s“Hs'òû÷—aV”E $„ÒüÚåßQ|!̺ÓåhÛ!ß´Zsö/_&êûþ[´*qPs{Ÿ¯~ \›|=kšÝâ·
+‚ó,· ÌÈ ÎÔï@§= ÀMð°±Çþ°Nü–<x×+bn`Ž&.×`W4!=»Õ°eã¹î)À“LSª=¾øg¬Ã¼·”»÷ÜÝp[ãxöˆ”Ü,­`µ?Ò&®VÀw"ñ7*nÙ€Ô”úºiÀ› C®¤MfR1 Á‰‘^ ècÃg™º•›õYÒºKçKNêÝàþ ]†ÉS‹ž2`ëIj§ëÒF¯óZªB˜ôålR;V6•@r[s5¢ { ¿8”¢íÕ²2Š¼¶ªQi]„š4§n>>»bœ„#˜ÀþgLF심K
+¢^
+XÌœ#IÇ™-@™h„Æ­¬Õ¨•Á‚¸ÐzûÉ9K©1?ãì…Z}çï Ny‹‘8¤“‘ÖùR·ÚY)#œR›%)¯Ì?2Z©wk3ΰ©k$0ACqEQ\:81åµ(€ýfÃ!ÚÄ"+¨^¦k,4{çÆ‘œ+X4µ º»íÎñi¹ÞU¤{8U‚c–ôJI "€ˆ“ºß€7b¤!ÀJ`œçbKóÈÊò$U‹ÐíϨ-ðêþšØŠ$_}·Ü€—ÀÙ°ýshoCêdùá­ô6>mò+¢ž†3ZL ƒÿ\tù’§‡r±`‘³û,^Ï0£³$ð[Ð6Ø.ï†Ê–F,Á
+™(He%˜Q8_¾îŸ Oz+±æ4ªµ…AÝ s¯Ýø5áô(ÛçNpBvcHH ³Ý»ìäýQ5:£Íöñ`[ò—_ï;'/½$¤mŸSe§ƒëÕ¼”\Y\9o=œÕ€×­f¢Þ}œ¯ºb«m/ÎÑβÿF§¼¼Êt¶Ó³:¯ò
+PPCÒ1–µœJžî«ñü ãâm¶¹EuFÝî’ÂÇî“äu|˜ÅâÆâ§Kí‚æ+Dû½œs
+òìÏ®tËRµ´»ú˜ͽ³÷átÙë¾J¯Ê4vgQ±ª È“vÑÆáˉÿ ózcÛ`½
+ÂS´Ö©z2ÆÍÝ…GW׉§{ËÝ}ó¸ÝK“‰6Ðð4.ç/ê5`j;¨¾wb-š¶>.Š”<”ÅÐ,ÂkE(Žpx—»´·ZºµÉÞóáeAÒìaB&ÍKêÖÆoO¼Þï
+7º7uô-º
+#€?™iªèÀ`Fá¦Êí ðúø_œK]Œ§~ßµ-ÔÈë@ŒëˆôRõa“ÉÖÓW*ªÅZ@W¿â¾rÛvëÝ;m8*_t^”Y ž/uGÙ¢˜0(¤ljP
+â»æc‡eÄnºt£ç©BÛàrò½ σFÞ'ú˜Ò`|•"å* šHs'Ü<^‹²TÃ1Xǯi˜ìØ>0„$"?ϸʘ˜vWá+@û†Òjï|ÔOö–MGûèi+wé¦øÝV„ZDÿ´j“Îãè &8‚T/=©½…”$¯“ÛfÉîü­aø/CNÕv#›—·¦5—Ѽ ÄºÕ 8²îIÕa¿)®˜z—ùZPñŽBïW<J8 ËxCi¸”HEœj|ˆ&›|ß“Ipøô逵øU›g¸ ­×sÝæ YÅA9”K’¯!mÇv Ä¡ï…Iï’ d›Ž!• çÓý¡zÂå½³eÁ:thnØN!ß›q/b°°kMUT-¡÷+|Á6&­áˆ›““Ù¸¬Iù:KX‚;Õ@xB œcK–MIõvPª÷nÙ!v“'þ6hà?0PÏøß»([â㢗!tÛÜ Ìèî£lëA‹.ËK>2 AjÉíÉ€¼AÕ«ƒ¦N®:Aò}§7w-D û|¼KL¨Ä)î‡æ°I;Ä`òý
+>Ô© ÔNlzÉãÞöL@þðæGfiÕ‘)†P
+u”™õê!dx‚]Ìô-ûD¡lžé»ŽˆN§~¤ëäÝ.JÊ4[ ²2)ÄXÀ¼[ɻӗ­|ý%iÞŒE’ë7µ¹g‡)¾ÿuDÑ6_¤Šo±Œd>1)rÀñ®–HIV4
+6fD¯QGG×3 .µøJ‚.ÉÅE€ …»­ÊÛ>øž;ÉvRc¼PJÊÈ5Ã
+aÞG;»9:¦¼ûþ½]33:ZeðA‡ÈQ•@ç[ãÇ3n—sº«óèKþ¶Ï·Z§~åÓæ£ýE¾Iã{íÕ®CC|&èÞ¶-’â%"û˱Š- È£èֈظŸü¼5ZG ¯±—LüFдÛgÛÕÛ¼‡Ükïj2¢+[˜Ñ˜¡©b˜üé
+¬|ìŽíªG®û? e Í#™Õ
+ mqzAžG
+Ãå_ÊÅrŽ™
+ÖðY·7U ÞQ" I3¥I+êËŒå4‰7Œ¥êâѺJ
+endstream
+endobj
+671 0 obj
+<<
+/Type /FontDescriptor
+/FontName /OGJSOL+LMRoman7-Regular
+/Flags 4
+/FontBBox [-483 -292 1562 1124]
+/Ascent 689
+/CapHeight 689
+/Descent -194
+/ItalicAngle 0
+/StemV 79
+/XHeight 431
+/CharSet (/A/Theta/eight/equal/five/four/nine/one/parenleft/parenright/plus/seven/six/three/two/zero)
+/FontFile 670 0 R
+>>
+endobj
+672 0 obj
+<<
+/Length1 2378
+/Length2 28401
+/Length3 0
+/Length 29810
+/Filter /FlateDecode
+>>
+stream
+xÚ´»ePœÛ¶5Œ[p·@ãÜÝ!ÜÝhÜ]ƒ»[p—àÜÝ%XpîîÙçž»÷9÷ýûÕt©cÎ5×ZOuUS((Ó ›Ø%lmœè™˜x
+Pj
+Ê4 ï•íìlþ‡‹¨²Šªä'€˜°œŠ8
+Ðæ¿Ù'€œÊ»þOžwÃ?î²â*Â*š
+âÌŒj
+ðgQ
+²þaïøgÍ@6Éd…å¤$Ä•UèeÞφ^Öö½;6 NnNYÿ‰',&Ãàbâ
+ø7û¥SØÊ|æÑõIò·)Ò IJz]û‘X1ym¢(´mè#ëC€,.<š­Æ ú5]vѯ¬ƒ”æ@:;O³˜m&½%®… :z(ÊÝÖùÅ2ñ†v™LªSÖò+ÚµpŽ¹ ÓÁ
+Ým¿`qªÜéí3&Ò°Gx‰vÖ /{TÆ®»c¯\Ï]0óq åC3¬‡N˜Î¸ccÙPL%{r“…Ó _w9€õ)YŠ#$±„—* Ó…èUT3`6Žg(ÑFöˆ´t…ñg„òz§=Œ#iùáþ|Šaì„Š6£u ÍG½¦ö
+”ȧt’¢åÇZ㈪£ó#šmNÌßÂu3ÚMÀÜm1¶ãƒ×ý“Îó!^3,dç’Ð|oPçf i‚—Ûµ×Æ%w4ɉe‰O»>©¼=©çƒÿFÖ¦¨®ý¥/¥“£YtŒñ¶P#È^“´˜
+Ó51ã(Ò!
+( i¨¬°|–\ˆ:<èå¼7ßøELýQ¦‘ógµæ®Š£IŸâ|gI¹Ç§AâŒw2³A•'›Ö«`LI– ±ƒí™•î–êÂï<æÃüD~žËÕLÁønÄrèuŽ—y惨¿Ô2Ó{Ê5˜”G)÷?3ºË§ÄwŽJxãç¿ëúeSO›½W&ÚÌƉa]
+oãž–ÁQ½æûØâ¨AÊ>!Uü¥®%+‡®Q ¤•˜ 2ßεK´.“ê»[ùÍBl“mᖢŔǰ²/!²8RÊHpãt–?o*r0&¸v/®-ãùH'ê5œ‘9YÛ¶´náAö)oï7"¡.¢«<ë â0rQ¦÷—¸x!@q¬G^6jŽþe¦:LJ"BÂLð^†ÂÝÌp~w{1I³)^>
+Ñíf$»abvî¡þÃJ%ùï®N¢9µ8dÇëî4—ŽòìòĪˆ°çhû[ü´·ç Ÿô-ÒP<\o6ÉMAŒÓõÀR4H
+¼ïƒ]LÑT¶x(>¿¤xs_øF;ºîZ¿Ûø7=TöÅßH$uk„ìQ¸B·©¡;p‚ÃT|ÂH4p¢:›×]…P½6?f%K”BUŽDšÂ¾Þd4ïî•Ú¾wÆÞ¦1_Í7Ü
+IAÍ¿êŒ,ápaÛM«D9¼Úë?2½¶ b)
+@S@Å…þX"¸;zû^(…4P8Ipu†!œK™Šèë.tfµMOê‘ÄÒH´ùÒÌ7*¥.óòý€,¤òñ[<³BÀºö1øñXœÑOhl0³#
+ü¡YÒ Ü7 `ö—C“îDêxÓ¶]N TÎ[ßloUŒw›qPÖ±)d·«2NžË'³ÔOÛfð±Kd9)eÿ$+yÃ]B÷g$ÚЙðÄ,G+šE]‡¡óÏUÂ*?LÙù%’¥;¶£ /»
+lÄ‹˜Ñmן2Sƒ$)V•¯§õIâñ¾jÂÄ£â'EäÏõicCT8ÐaœëÛ/ö!2L»ØŠ7¿ü´e¬!2^@ÌåOn×Ú̬p«Î\úh?F+€|'„Ž´Cw 3ôA¤•'îH¯šÎ?± òÞ à¡Dª}1¹´ööš™MÓdáXÞàö#˜á…u¨»Õ—œ»©=¬“& Ãôo{º»‰¯¦“(æ¼L_úÐÀÊïO·q™¾/DÞ ¿ú.{Á˜âÓS9]&Yž_þZW¦lhØþî±Ñ…´ûðý²~4'.šçÀ­ýZ']âKf. t`mª=aŽýë÷øŽ)›(9E0ƒ#Ð例 ˜¬¨Õ˜Äé=JnŽÖ$·`ÑörÓkèø/×ÈR•üNÊLÏlÌu¬?³ÍèÆeñnÀ4gá›è>“ãSW‚ú"V h¼¹×éì"Î œO±œ6œh½Â´û¼GrR³¦Á*1ïèĜ̢^:T,·ú‘ç~©×-:+NÏm­¸ÀžGÀ;M>#öçhG≯“oH¯o›8h jò~‹ÏeG†šk'àaá Úçß—.@½< »åJú%i…õL¦—lÓIµÃƒÒB=æ¦é×bŸÖ?sÂÕíó‡\‘mÉ­ã4ãú"7O£@ÄGÙÐÌ<\>‡=î„+<'_‰ß$5µ‚©Ïå|R®<÷üØhØü
+ÈÄÃ=,bÍBôø©‚üÇí.›>IO"ZåÉÏ®ILë«iì{M!·àË¿†0‚ ÍÜ~§ÿø€„À"¦éð(FÂYϘ׊$#n°¸.0«óCCZŒuo;×PXÅ-Ebú€º?ØCJ?TM»›Yš2úÓ‘ðÝ ½s êÞ4N’Y Êé¬w*Ãü®©”‰¶§( òA°È»¬¥*BôA(!~g ÏSTú‘0»5 Y9ò\.¨»µ]`’“µø‡|Ï ÄÕm
+Š1L-)F>\W›š=ãŽnQ¶p¡>ß×äi†ŠE€±ŒÇƒÕÅZHRt"¦[Š$¤Ó,;ø²AÔ÷œF°¦ñ–ÅÏ ^¦·t!@žZ×WÄ·&ü Ôg)Ìën÷…jD¡²‡oqEà»[±%ÍóÔCz3•£ÄÔæ5ÊppÌ`<¿nÕŠ¹Â{ä­0 Ö郚¦lÕ­ífjyúéF7éKìxb{•RùmCƒq¿žñZ‹†Å9O‡U[;ñ$Ô§cXÖÑX’iíú£
+Z½ÖFt$q$f>Ôùr´†wª¾gvøEOß?vßÊÇœ~Ew¥$׆8Æ!_™´™Út÷Óœ
+›S•K`ºõcX•ž”6srW‰s€r»àµ¿¡š£`¦{Ñxžçwû­! c·KÕ–ÄJQ—
+-õËÛ;ò2ê\È© 88«/ò°ËÉIv…DÕüÔJ–Ô)…;õ¥çòä£ßV.Â_)œ¾zb¨
+‡6¬Oy’NaàqþÁÄ-7:QßÄt*ª¶u¿Pc«¤8ô¹â9„øgI–9¬„^\L÷âBûx ˆ]þ¥Î™åžoÜŒlŒU¹wt£’ã«]ðL.)J
+²i~írùŒA€X`#~–—Úé«31^Bô%dÙaÉ+”b$û®*„Š‘9O¾‡!žz ©)çFIŠ
+÷ÎJ×xD⌋Òuèw߃4ŒN™7á±4V±Ÿ
+¤»l˸Ü>ž†K⣤AÃ,d×ìÕÌ&žÓ\l¬½µ;ʲ ŽÃ`-#)±n¢vSŠÊ“Zr‘±£@pj„-NÍëÛ!Ç z.°À3+>R†/ýE'IJ›|e~}ÅNˆ˜ËŒž–øÂõçsí[¡Ácöꃾ·+äl.ó°.nìisóÄÎãá+;¾x‹ÀôÞhë¢Ý;râ § ÃeNW<ø‡`;G¦ãÖ”H¸1cþ%&8"üÆ÷š”rÔ‚£¾£; ·<¶¯"ìY?l,»£?ô±Hy"¶¿oþ’Ì0 ¿.Be¢+±á¢0qçÞ¡°\OñŒ?â¿À]FË£¬¸mì$Ó£ûØM#ò@¦X†q½ 2¹Ö¶Â± ÿ‚½•†‡Ïø1TrD ¸ñ$ç™]VÔˆdÈ&œ6öJ‚ž-…r5 ©jf¼(ÌexͲmE<"Ó?~‹BgùJÙ¬•ó Ññ;©,‰RHô÷ü*êõ§Æ•nhÓÔÏ”àêacŒ
+}°×§ñˆWg²Wñë|&Ý&Òz#׌Ï9f!íšIwµ…ê›ß™’­ìÔ‘Ôñ¨=´2Ž*¢Ø¶ªé?Nù1 u="L\³|­¢×¦ª‰ÎÞo!S€Ø ZЂÏà†dùˆePoÎÌ¿zÙ§z
+Ia÷Y‘\G,fÇv@[mH‘â+¢óoÓÝ04…Ø0'l~dÝi÷ñâŠN8›ö‡o•"?hðmY†¼–áÖó×Cλï8oÔËä02T°>þ?Y @Æ*dðnídí÷ê$ºéôÚ¹ô‰ëµR¦mØÇ8©¨3 úVvûxªú¿›¹›ÐŸŒuš¨>†™]HtɤÚêkYè2³ð†¬ÁRX"UÝBwL/Ï¡~gÓÏã‘æ>Máx®Î|:ÆIg²K81͉3é}¹F5¤ª>œï–wd¨½D+’k
+mú¼02ŽÎ
+žŸHA­ä‚˜cu‘vò-D¤ÄBG›ð›F¼»†ƒ†e5–™.Ðø­^nŠô¶l%_2;ÂxQ‚¾¬÷IˆËâùDpªÔ#Ê`ú’p«³²­ Üö|”À³öŸÑ³Ÿy ÷^~L6õ”ݬ%`¢ýrÉòòÎ-1®S=Ö!ÕH H—?Q? äQ3NÜ£èÎ<Gñ®—òßxEQSiŠ‡H \ë>e»Bv½ëÅ‘>ÌsÌñ§dwFu²2±ÇËúHx r}¥9± ¥r«¥2ÁÑGGZîr¼gn#uôíIÏLæÔ9׳ |J0¹Ác˜qp~ZV§WE iÃb¦§ëÿ\à†õ šˆ>¥%Š÷{à¤ùö4oŽ½ÊôyåÚ0¼®C(Ñ«]ŽÁšãè¹æL
+N ‹wš«Z5S@#¤é0#CåžU_uLˆÏn Lµ%ÄÕÍêóÞG¹Rä%™”!¾öŠœé‚°£5 Å,=¯û°ç˜Fñ^‹üLæLŸ=¶0D³Úal\êÙ²½ïëáœñ‹(7>zS³FŽC_õ3\2~¢]‰&¬­=!Ðá©òÃýš&ô“tÞ©OI³‡áÂA°šžh
+<…‰‡ñ$Dµ2—ëßSÄ?.lìöV?šÀr}
+íˆhKÝE~tßÚMô‡WsPB"Y³‘˘ñòD Â.Ìd¯‹ÇÁq ŠmiÂú¶i¾¦
+ž14ýæÑòqÔr:U:J¸åã2Ú˜'ró Î¥!¡­-®%è#Ž%Û# ®~ñƒ­Ä±¿Û(œr]†#„g‚ ¡¡.)Û0²´ütê–žk³¾È]ןb©rß÷uÔ\ƒ½}i£CgÓâ‹ñŸD—MTæí¸žÕB©wGhZx´á~ª/•0`›Š
+S°*_dámß?»Â­j"p)ß‘%ðÒ‹-/ÙkAzi…žƒS(²ò~Ø<-±íЦ°Çqzí¾³sjÖêÇF-K²!m›ÿnæêC}zy;ÿõ(š sßwR.¥ìøƒ©­o5‘<ÛìÁˆ ÖK ùU£‘|_\ІûÄO¬4°&ÿg¬Â¯yƒÃ‰»èÑ4«CsªÞ„=ø¼_Æf
+Såª2©y¿ÐÜ·ø)iþö¯B9˜ÀvGGì›Û¶".}Nµ´zÀð<(`›$‹¼ÖR~é6ß[ç}®^Çá€ÿŠË
+_ «™Þ´±wÄÒG}Ãü¦Ç® "‚"nô?eüio:ýͱ2L&\7®¤õûê –ѧ-ŸWc>ê¼ ‘f˜¬œÈí׫]§µ>¶ìdbº6ÃwªÊü-ÕÅ<`¤$hü{–í´`²ñ
+ýœ•q[ ²©|ÓGU‚B£8„"õ·÷Ü4è~|´|`)Qžü¸rw‘²ßS㡼l‚mNüCÒ‡]t4D‰Ÿ<þ¨ë^_÷õËzr‘@ñ37µÿá´<:œ©ëlÍàYrþCÝWÁ¢ï+Æ*¦B|‰{?˜b~Kj(VmQ°¥/%ØPÉ-NŽ©¯Nèy¬uÝ{öñº¸ìÅG½­è  ZIc¦guÏ“»Ðn
+/5_ö&Ô¦ð9J
+§juýk­Ä¼‹€YÏ(›-Ñ-pz{?ÌU®F/V)¼~‰û\·Gë>ß‹VZfÙÆW)ÝÄ5GÁ-¡vo¶á™EŽü€nq‘ðIdô+QLaÃÞ'q¯ùÔ¶þ{7´ú °[)Š–õ” 
+)&5¯0yMÚlýò#•2/‚.”¬³L¥ùCãÞÎðeáq·Ó½M¼¼®Whÿ›ï•`?èì ¨YR &u)0`è(= .xÚ?#ÿšµ»#NeEd™B«0p¤9n`Ò!›½ÄïÀ2a³\ïžÌÚ9ÄïöB=·nrÌs€s_β(ùZàøê`™AnË•aoíëW§Ï®i±Çú¯¨  åaªV"•é ¾~þĹŽGH4Hyí÷Ñ
+GE4ÛwK–0A]bÝ0Ò£ßxš‘¶„æØñhî`TÍ(ОK¹ßÀ'xHD÷J «^ì%
+ÓÊ©?i‡Œ4Ub¤nVÝ`ú?
++Í\Êœ¤³}šÛv¨kÖëFnlàN Ò»s˜!ûpÝbB}Ô
+9¨8&±Ðgs€1ã7Ú¶Ò<1^H®®ÿ‰*Ñ.=5À%1–¨åðX™Ž=>f5H;q—
+í˜j(¢ÜÊÌk¦vf¿«YÓ„BßQâWäÉ Äì¼'üYxÔ¼+6^ø-Ü7}¦µ3=üðö9Ö ¨ÈðÃai”rËI‹ 2æ«Apn§ë<Ö¦¢ïýFö3 øH“†pÞ:Žß
+ÝâC±fñª\ø¬O+ýqP„z*®4Áèr«ñc FnÎ…ö'ݤ ieF9½Æ'¿¦rj2<àãõëŒX¬5GhnÉï”ZD>ZĦ‡ÇIJ¾Ñˆ1–TOX‘çzóøt?ÀÏ3§a‘pE…äT`sðiŒµÈŽÓên÷ÿº²Ð%”?å$ÅÛCz màtÎ×—‘w‡Ø¦œÊzÈ øákÎ<oÙ[§}ýô ƒ¢ÁŠ´O=³^„õ³ñ‹Œ´ãŽ¯¬Ç}ί‡{Ži‘6þAc'ÅÜy\ç[{¿ ÑÝÓöô‹i^e¢ÌÚJdõgþ– Î1¦uÊ¥tŒªÍ Ê^ÿIs üzW´ÐX9ô“xÕêudíÓ/4»Ëþ®s¶û±o:Yw Pª©]¸³¿Ì7ÙùB"J2%#¼¿öè²&DÉäx¢j(“Ý‘MPøË1…˜Ø]XéÅ„ÜÉ<…S˜S#rÝ Á˜¨õÙõ’9ýDt¬’à±ÈÍa†Ä¾ûŠVQ†_š$)\ÀæùVòµE¾m)q5Ú|P)¸ýP~­±fÆ Ì'ê;YKŸs‹Ýx­ªTø7¨¡ÔÊÍz›y4Z³Ü\±EÖ뛥q‘˜43á U»r¶›éB]3 a–œ_„†ƒ2gªDl¦z3ÂÒ9"È*´áhû(g0ŸƒÆJK«
+º‚‡Ø@ˆµ‡² ÏK~ir9žAQ»^”Sïýñ3—¦‰õ8bUó´{¼â×0z2FýóMµ
+•SÉ394*d?ƒ^´ T+V—Îl=%qè=•ªS©¡²Ü8(žm÷ãwz$ÍpŠSžH‚‡Má¦édPƪöy™@Èsr´Š{2HpågÇð»àŠÝ¦a´yÂÊ3ßUXˆ*‚lÌÍÊ ?I{ægW¨}-Ø–® Ç<¾üFÁ×-…d×µÏkí¶ó±§_™w!Ü[61Œõ>ˆ\“"ÀtQ*ï4sØaõU]áXvˆ0 &°G¶j.Ã9‚¾€YÇŽÓøgÖgŽ¼2ûºt»qRŠ × Â)Š›Çm$²7dê3¶ÄåvSfú0ê°åÚÜ:e^Ø_E'|ô’Î ÇwRÙ,øŠŠ}Nö4UW¯ŒÝÍx}#'JžÑ?û‡õö½HÆZfwÍÁWHÖcëµouøkÅ?ó°u˜:žŒO—Î!ɪãe®tûD.ß®z
+‚W:|E««I.0} ÅeÏØ©7ñ“RËÑmÂШT‰‰H“û½æfõLgèõ*k£-äZÏe òDQ˜–W{_öR8ÃNv%‰HÞÇ£³FÑ@»‰Ìõ½pk‚>DoP…~Ä·ù¸^ßêÿbF z\¹¼Ûà¾ðjø`ö
+AT9/ªÙíž’€Qh®ÀÜ™
+,’SJ±}ϱf!ö…>iâ· HG°‹MŒ«–;
+bûIc0·CƦßà©aAÁŒÇm¦;ÓwÌ ’nBÏy'¸¼Š0l6]ÓãS#Õ«é³—zêi­l„à®H),³e…†>„¥¬{oa,›*ͱ̮œ·|9–ú©C›­n![ç½»,ù™á Ï%UóÖ(sT,ÚR©j7²Š V7%iì•Ù3ù&¿µË^\|‡–_º~1lÚ`;ï$} „ø¥@U?^6ÖÒƒ%½ÉUÁWÍÖ8D½.å
+p§X¥Õùm¶àö_.bGfmQ4Vh|Ô pòåÉåÜ>,PŽ~Z$*½öBs¡–å…,ͽƒ‡þ 㳑&üp"Ô>^Õƒ±Ï®ò$—•%³-aPÜؘì¡ð¤§|)¾@ݤD6­–Ôx³÷Ä*/O«}$ƒ$h¶(C„‚Z©™øÿÒÓ÷nõÒ³£suÉ‹cfÆ™¨mÅR6A!Ð9köh‚¸¸w¤M•'¢VxEÒÁ ³ÙéÝ—üyΖJ¸®ôc,Ë¥Üâ]@57¼+¥€\­á­}t'Ö÷\mñ 0¸I왢3'‚Kk50ÐÎ8KÊB¨ê„ýœõßÅMäL kûÓ!ñsòÜǶÇqì$J·/Àç`nìÿþÁ€¬5ÇT¶9ˆm¬+ú·šEåJ¨tM|`øTX Mrµ›;½IqG^ÀfRÝgœ²O×t/ú]rcJ¸sƒ”â&cBútY^ë7;yÑ—ÈÙ{?ûOMÀ©™ãÁÀÝSr×T®¡í¬>‰| ü-jGšÊ*J™>nm“±tXGÝñÓŒñ‹´{´˜‘.´˜Aá&]öv\6Íý*z!¬;Ü£3š3ø!®@y ›9tq„ÂcÈ·™WIZÁ#õmÕ´Ç©æÜ“+N–òz(4!Ut?]I
+ç'G£v}ZÙZ=¬!4Ã\g–¾£ AåhªK p QYÝ >O
+q»ÛtKÞwIfýw!hçnmx5ÿ¢{ »K’nÜ­ÊÕ®ø‘)A ÚÜwñ;ùÍ#<K`γ¿ŠW @i¬Ü­La£¹W2`ŒD@\vA+º»Š¦ü^(¬S:ÄD.RìúëÛj¶‚Ÿ¢¥%UIÇ×SPú:s’ín)ú]±1d‚GÔ«*9˜Ïzªœ`=F<,Vººg½ñxôÏ~CTV
+÷Æi€»Íô€ºHÕQÀgŽ¥;)”_tÙ'˜˜]©¼d¡“?ÁsK3Sé¬Ø˜³šæ0xàÙ½ÉkFp,sb. •aA:¸Â£¿ÀXûQ¤UISöv~n5M+ÖQåühÑš¡PÌròÓÒ¢¼6¶ÇŽ­–ˆëÇî)é
+ÆÒòœ·V <?°É[Њþýƒ7S×ÏóÀµ4½4JÝ{»¶Ùž¦ý&ž­šŸZ n¾ÚäÉ~NI4o
+Ð(eõîDã ŒŸÈ*èúº ~ò B}FC<š^¹ ¬´`®qa\S¸ÜR§TÞ6a­H…<ϳ {dmáê¸8‚Øœñ½wY‹CrÇÿ䵺;›äJæÚ¸ÞÈ¿õ¢'¶JQÚc·9ŒiÞàØùm¿Kºkí\çV |_+Æ•rí~ÓãYÎX‡ï–-¨ÑÊê‹l.r âbq©@Ir+| ž+õ€œóW8[” «\5îkâRbÓæb¾ðpòYqõ€Ï`fŒÐË ˜'­#±î³Hø”v$œ¯'ÉÇ"  « ^¨×6o­¼¶°Kh¢§S¦u›‚Í™·,šÿÿÚ:‡ÅJ
+ʤÖÒB.òßý7$z"ßð·I«X#cÞ¨Äü(ÿ5CÙt‘$H•i‘î*üEµýö{ê¶E[6ú§³|ÔàÏø%Ÿw§“ÏÛ:ÖÔˆ*;BSu y€‘¶û~3ô/2Õ/Òõ7á§?…UÈÔ™©õqþÓ¬òþ]rï6:ÚŸCŠÑÄPœbÑÑs;ÐDD ÎñÖ~±ˆ¼†F!×™l§µº±}$eY(ˆ, þWøýa’l<Æ`pdküó°Ly;>rÇYÑ#92±ƒAß+J+퀭¬. “_ qß¡=\Nœh»4Üð!W
+qŒÌZ’¯Ã[#*ʹ–Ö†ªŒßäXh·ÚÅ£›)`ÞC ÎJáý³óÂR²3¼(v0®È*öð,Ó]|{ž•@ðϤ…××ý¬yÁð0ª _P©û5STÖhh!ýáðpˆ ‡ Òð°wC90°
+¢àå‰Æn VØdH8oa‘B„–aìbaØS|~8];ŠŽŒŽs‡C:pÛ{ÖØÍëWxÈ$ç« Óấ³}†iË—?Ïd b/¹¹r¡é!':#ÐÞwtØÖû:0W™ -·°µ¬mà7ú'r'+*
+Ϙű.»ìw/ÒÔˆ^[• œU;ÂÛöÇúW g’^ÄïH&X?¸=Þçù?턽ðh¢¿¨ÄG\o ‚¹³Ts7,z˜°™ÕøtZО `¦øù™ëb'àú9ÍAi‹Tôbß1ïvJÎÀ• 8=6IBÃð‰Qƒ=•×ó¦ þ¢â£’uµ°ï8§kÚ.žÐ8i0úÞ(âÖÖÀø¾÷Ø|ÉhÑå
+Þ.d‡"J°k¹<Ÿª0G—1á0éú|xR«¨rØ÷J{'Z}‹×³ÒÔ¶Ÿò—çG¡«tƺYz@D%ˆ¾Nm†“©þ~>#5A‰Ü5VÉìÓïÒnÏH¬r¡ˆ8 öÄ4JôlÚ‹‚fÙ9Næ’h›Ò³Ìö ¡úf%ÄþñêâåƒOæ ‘)4öó;ñ.]è׌,Á†ÂG8úò|K Ýìˆ ¬ËÎê.ZÞÎZ/>zÓ¶NV¡È Ÿ/Í‹¦Ò'úKÒZ⧖{Wgô!š;.ã½ÿ…’ñë Ý-å?2è"_DÎó½{fšÁ]žôÍdèØÉÈÏ®ádêXG‘´Y!ç2Uœòhoù¬ö™¨}è`„÷c ÷ÁÿÁRí9 ?î.SQQó÷¥™mD¨<Æ' üoÃGÎÌì¿(«Ú0pkb·ªQ+4 j´uƒgŸØƒ ïŸ:kiQ ÿøðü#ïö Æòžt‰ØLK#ÊK5›0¿Ò‹pOÄ0Y/¬?Ÿ\»²[ÃhtûC;`
+Wp®Vl
+:çÿÆ|¾Ìµvè">3ŒØž’ÆÃ0w¦3þÖŒ‚̋á åªüÔK‘íÏFXûšÁá‡ûŽþ1ÎFl/AmiUØ ä‘ÄúÏúß-
+ OÎÅ»c22H²J]t½ûŸnôƒ&MTÉdÇ.1Ø|°ñS7_L¤”ú„?Ÿ3ÇÁ53ô^ÅÐ?äGd)»óª§bÁ{¨}¤³RÞulœÍì4;
+'@½B‡°€õxº–ª2žþ·Á§ðÉè~KS—§ ÷žy×cÑÞæÑâÊYÐïXÏÔ![IQ翵$$ #$‘jè¦qfMzd©ãÊN|8v9x„î1Ùy•õ»evnú'íªü~ ç:Ç߯µMiº†óÐ
+uAj·±åW.»G…’[Êò‘ßòb.¦0kç^›'Ú/,NXô1ç©Ieä@UÐÑ¢ý%Ä‹úó~µéº²hS[oÝ»×€îÃ\½ï· "›CmŸW½Ù6^•.6ÓAR°°M×£ ©°XÜë•'w± ÅKóe.ùèíGŸá|Þ.`R[gĘÊ,Cë^$¨iÚ¡‚7+5.sS˧ŸJÐNN’{—UY”eâ¹Ö3q rùïáÇ­0 ­ª"“T=¤GÑ5|–p´I„ûòýãE¬N†åñÑüQdòÇ$¹ÚöB®®{q]Å‘…]Ç1ëuʼ a¶”¬r”JËY©%Ê.8‚xàÕQ)è¦?:[í!_ ñ¶UÃÜÀ°H€c¨-ãÞ¾iÙ5ÇO/‚ræìͳ°xx^FΚp³«½…©å-ÿoĶ¿/Ä¡q»Øý':f;œ®Ê¼»¿ˆÜRRÇ:ƒEÝágç[¢[žx¸âõI}Û×ÀLÑ•ã•gkh…«#—'8‚nxÚ«Ñ–M§ŒˆDÐ/T÷¢é¬)3çýböC%°½íToÞ›Cà°f¸áøŠYǺŽ‰ÑÅ ÿhØxÁRÎLÉ1ŸlièÐ-F뀂OXt³néÀ¢É3“ (…öĦ‹¡ ,«¸…ùÄ)
+ýzøBþ]®õõs¹»SRGÙ“wTR©é—5³†Í˜!¸¯Ð–‹÷23¿\«Õ7§íÔ7ØÙh‹ÐanoЗÐ|ßãsj 8{—¡{ëáá¹Wz†¿Yp/©ÃB}W}#ããÂÉþ(lêôC
+õ/º8ÿíÈÝ?Z‚§Ø³Œ§D‚ãpâžjž‹¹Xk=W(•Á„ª~î«–ÌIí*¶é€qÕ šû`²3E½þ OÖ¯7®·Dx(Ö{Z˜Ï‹ŸöIQGåÀ±wÒ~>èR´—ë8­×2Ý‚žž`òÓÞ³¼®ü¡ë¼ÅɇO¼|AHíûbÞ”âÎ-Ûµ³Ü§‘:rÎBõà»X¤e¡êA(Kó9ÞëCÎ%71ÄúS]?Û/ð¼…öWpÔ wÍ™¶æ;‘J¬ë&Ò{wÚœ4æRLH>ù8\BµˆÞÕغ‘Ví¤ ¦¬pƒ¦!’¸ÜÈf5ò"s™I¼ª¶Z–°-UÕLõÊBÒÍY%E”Jî$flÈö×)àyAŒÈçyGÓ¤ Ä'Ȧ],ÛdÌÉß$Tµÿhm­V9éh“ÃRP÷HŠ¬»µ¾n_‚êé(©ÉÇ«šp$µ²¹­ú訞çþ_R3"4e†cÒË¿gžïj#F¢N÷­;äÓ»o›lþ ø»RõCã4í
+g˜V,R‰²ÑÇÀÚeðo«ç«±Ú‡ÐÌý¥I!†ÂöôîW|…W&6¾©­Éd®®šÒ€všõ‹bp%
+â UÙJײ1]²ç#;èßÄW)°1$kû(ïN{x—ñ.ô-Aýt°[î2ZX&µúw‡™ÙC»Z×ÔºŸ³‡ù«kl½¦’ŒÃÀ*…»|ØiÓmýÌ*HŠÁ
+…H+v
+H7qý hmÚZ*i xg#FnæŽgp–ÚhatYLc"’YèÌl|šñü£¬uÖ'Øq:{tÎ5¤çëF¿§Ÿ),Ú l„.w™®y‡ð²jàà˜¶s|‡d%Bf†'µ–Ù]Ë$aäŠ)öó ÉG™‰BØr´no/Ó’dä©T”Ÿ÷@üþÙiõ[NG—Y¡¡‰é`+ÍÌù­†ØvÝ×i3­_€dïí@mœ†¤j],À Ï{U
+/8¥f_33FïÂIøòO¥ªA󋧆Ÿm±Èúrñq›Ìfà^ë™ëw­šž3ÂÅ,òV˜ÍT!;¶“~ªÑ1ñH9჊»­è–ØÚ-“ÏUÛ„B´ÉòyöQ
+í:lR22æ ÷W]\{ÐäŠJ¿=Ó#Ó³‘`CÐi_$þ2‰Hàð‚—Æ1A4 aÿÙ·©Ë f[ 㽎†Íúìk^˜^&qŒ*a#R»ñÑ&¬,ô¦1åô(¼‡—£±ÜGµéä ‰8D¤t¶¡#{š¤a=@ñ_FÇÒÙºDÊTè-i¾µÔA9w~r¶PªëææV0;g¬à;ÁÁy<Á‹ÿ®4
+£>¶‚¸‰D‹­HyÚT8„ê‰?ž Ó-ß!GO¬{Q±¤ž}n~JÉ)"*ž¶aUzôÝÃÂú‡…9Àâ¿5\3ïé”Rw‹ñÄ—½s¼<º*Ê0Mjôú[þÑÁs™êýJ½m».ÁÀ¨:‹Ë?žÓK¤1ü¨?¥*4Õ°¬âk>Nuåæo‡Ö}ÔquŽý£¾KÒEê¹ <²QÛ8­âÅ–á6¢xÁå”Råãu…Š]¼0b!}+‘í÷RdBè1j­ÚÅ·ŠnkFßq
+½€0±l¥dFjѨç}2á9„¨Bu¦þ¥Tš¾yË ”ÔDq@áž7%üã)*‡îÎÃú]ÏxA‘ÁMFm²wâs|V¦1}gþgJ‚¼Dmv‚:H—ÛáϨ¸6çrЬaÓ®+%|
+( Kg‘G68¸jךpÔ(Ÿ
+x Ï<9¯­¡´¨XªFæÎD
+Àvå\CéP¨ÎÕ¥>µ?Õ€pUNŸæ¥\šr´T¥IŽß7§÷Å’ó;Øn·Œøà©Ø 9P\Û&eV»bêˆúÁÌæ’D“±™Lºþ¿ß„¥}ÉLç¾5¥~[¹ œÝlÇí7 ’eHœ6æf|éJŠ/¾È †I¬9œ4ÝgúÅ£úÝe-bUgú¤øñú³>qƒ%dq˜« O‘ÊàgK¬zÍkd©›„™)–dN Æî}äɾFXýrí{ˆ·ò¥¢ Æ.Ž-Jƒ;‡.Lä>mHŠXøï8׃>2®PØß±Ó§êS°šU e¡)Ö}.)¬X½„EÓ:»èTÏ"˜A[·7Wƒrè5wÑÙˆ-܉ù$EÄ•‘ïðÂî,ƒ…×ÆSkܤ¾t¹jláHÇQÜ<7['ö¼…Ö_‘–› ¿Lc<Óýox^S]…íH€y¬IÝýõL`[9“WÌú× `p|¾µÃõ¬›.ðÆšÉS¢îšÓŠ6  Ǧyýfb× $ÎòZþVÈ!Ðx(ÔÝøœùÆ G'ìÛkR”Ö¥ƒ¤.-ù#ýÉ”„Âù'Na—žhí¥Ñ6ÄR£P¿{Vu£Óˆ “UÑVP]ÿ¨tÐèLG58±­ À%†óg}³®™ªÂh8×v  Í´=Cæ tZãÎë/ÖÁŽ:ñ`]>J4øÁõ!&£=vë€Hçu™>šfši=M+ö| ùÀ¸^´"™@
+6®úÏ¥ö·³ê6ÓTåj£n²6`Ýë$ZÓ—òž=ŦlOC×1!ˆh1f-jij¢4^¼8“!È ºÜú»;5§Œ–ÂÀ¡Ù _×ÓnŠÀ.þ_h[¥j0¾ªåù½íC²Û‚ËF4ÇÙJâÝOïew¢Ós ¸Ø@Òä’ä¼õzð Þâo6<3Ôe?ØØ¥où'&Îg `âTøâ¨#(š-¾_{8ñW$!Öì˜2Lƒ²ï@æ%<|“pªé1Ax,çAè惱PÔ#ý‘!þ
+:¨{Ф Œ|®5Þ©MÞðÑ"tªŒÍ9­W‰ÖÞŽ 6ûƒ( )®0QÄ| Q°b©x<²ëÊTÝMÝ ˆÍ£Æ!`¨õ~3V7ëÛþ@¾Ù2ÑøS/ô9‚rÆÀÓnd!‡
+«uÊ×7ž–Q<BAÒn AÀò)Ä'EŸu Okª~!ä•7Xg¶÷€–ïÐ÷ºP8í9’f¶‹5ÍlOi%]ØÍsLr掾†%$ŸÂº=gVåäPÓ£ÀOìŽpïî4ï lÖÞ3ox½¹—R¬£¾þTyÔD'DV}HvFµÜ2ûc€‹• q(ó$t¦g‡1”£$œàšáÖ¡AøLJ;öF'®NߎXÍNJ…±Óy+Æ0Hàgü¨6õzÚ@¾ªäUËBaHÈ¿hj÷§ciŠƒÇt` § ÐYת7jÑHˆ[ÿ°¼$á©O¾âÒ‚”I•âcGŠŸ®ÿÎ1xym< Lz`©Z;¼IÈý.êǦ@噊&ø¯ýädw-þÈ éWŠ5FZé}P¤’ ÑiŸ²}AéôåÉ¿6Ù= ¡vùa<–­ü`œÊƆœð… ¬¾Àק^`ëw©¸F²è^]È`¬ÞüߌÔnmÛèúM¸ß73ÍŒj7$Íóޑʼ¿š··À¶b˜G t;Ïh¹W´òÝx#ßpeV¾šŒÑÜ'äïâA¯û0AÒbž\£Æ½Šýà±ó¸Ââ|ö¶ö[IJ:#–ó,r
+¦Ü`<’jÚâÛëXs‹"}4¤E“¨?©4(ÊÐ2ÂÚƒÇ7$0wÔxx=o¤â$¬ÛK.4(Ð@ÕD-c þçem…Õ£ËÓEqüŽ·¸/ ‘‚cCawã×ei;`FˆGÙ{ÒO °åsîÏcÿZ€½¦P‹óÔhîõ0¹‚„dýZ5¹„³…ÍÊLšÚ;Â?ÿVòOpp®M›ûs*Ý`#÷à–jU¬½’‘}²̈
+Ì ¸dX Š µmËí##\¨l=!¶fuÓ1šÆ¾ÓynjéE¶Ì™1Œ‹$,F(1@&9ºÿäÌOÂ/:=0ôͶõñ\c@µ ê׸ñ;Ga}®ÊÀ°]­0ñ’¿÷"i²æ‰ bµäC€¬ž¨§G½Kb )Ä ‡JG"Fè.D¦Af?ù¾çü#/îyÀìíd„ký=SN=T ¶fðw‘3Q)þ’-xº3lri^ÂñÝ‚ïÏS SÿkIÙò$¹QdòP;Æ@í¦‡VÙƒvªò·düwR~kð“Ȧ $žüd"|C72*X‘%0GwšSJ]DIKóÒN8œ¡§T™ƒcÜ×I x0LLìѪž‡QÕ†SÇzüP½ÞÁ¤Ò^¢­u'w…+ Løžx*Û¸¥s
+{áù¾i®>R›@Ïþþ™÷,4dRü~›š
+¯]Õkn;¬¿­ ãHôná>Ÿ 7tÒ9ñšF¨¡mìË>ýÜâÉÜ*ݶÜŠŒCí!– !lp$m>­e¶é ÷þ¹hgœËŠRQíþº9{ø"‹Ÿs²EKö´ª¨í ækˆ&(ã—FÚ_rØ«-€¨ß 6Ï4ûêLNAç¾ Óãïíì^¡2ñû¨€Iœa[xÚ1Š£ï¶.|yFÞxü65óÏ„®`®Î†-£^™Í¼]X«¥ÌÀÈÞ¡áÙ<¡~¨ëð»÷cK Ë…øOSEdHù*»ZÿÕýðAJpå?ùÃ>È.Ï>8ša0Kßwb"­+È-dÿSÁøâýØ"¨åD˜ž…uGž1=å71/ «ùL(½j%Ä>è6ò‰øP‘èû ]>—œ8uÂFJE€äkNi2×q‰s¤½véµ”ƒ`5k+6|¡d¶j|QÙ8´
+Æ!äk!X=¦ |HdnÜ™Búñ‘†Òá—ï‹U±a¬l È9¼Ù‚9@ÎØès©yvú2cÞk(ÓÙ»<i#å³!901Ã_#j)þÍ:Jžüyé%V`FøWh¾>YTÿ;©bÇ&É™'çÆâø{ýŒkNØÒ'NÒhÆÃ~\°Yš‰È‹NRÖî§FR‹ÚEŽ¡¨¿ã&té•øµÆ2c‹ß+'±ÿÝBrtbw‹`þÑãÎkÐdè¢ØØF¾!6¿·Ê?Ç0ˆ[
+šwˆ!ýÓ>‰ËªU= A.Rù…ˆhªèZ$P ¯¯Ú{žhGÙsu}¨Þêùg¡´­uþ=Gy%}Ð}ë"«ujêpëòEF¯M9³ O§Æ3@{Šë2Nº-Ý_Që^Ž&²®q{£™àêáÖû„„«Cì:8ìÎMW›òîh(
+S]•Ëcºg/° ’åA—ô†9MBÏø9b ~¢B0mÝ„MÞè&×i:g複ÑAXÞré–þ‡)»ÕñmÁ­@ÀQ5f"—‘{1ÇLFÅ ûGc-_6E †/Êwmbf¬
+Ûïës° j”5›æ!1…"=¸çŒt?éÊmawÌ Žú §I8öç0ÃïÆOƒd¥yÖ ÌPKü+Óµ5S ÀÆ{þïr²³Ì@*ý€~ gµjÅH`®€‚tÞ…Õ ñ ³Œbý‚0c¸žèþ³ÈÇŸ{ø=húz²_¥ºG'þñsøV.hV:Øÿ‰)êÕ•qÔ:ÇÏ%²2Žx¾²?ö|vHZ¦*K9Yß5ŒzC‰ÁXPò< u^@ƒW“¨¨kòSh–LAQÉïÂÛ|Õø‹F«Új~Qî
+^fªÉ
+Ò\;ªÝ´ìÉž ™ÕÕÑNä”luHè_ôä‰>  Ï]Kw*_üËü.gJÿ÷×þÞÂgÕ³ÿ^×iDä4Þ^3$0Vʪ–-NÙb=-ù*h§“…\7+Ò¹š7>Ćž0.Ç…ùÍШp¿í§‘€ÍK¹Ï98ë‰|xw…´çìÒ
+fæÑ<Áù.wðHîjGv‹ záПéø”½í.؈â…3Ÿ‰ÂÅHxÃý/Y¬I~­rëZ¦6`÷'È1cú1à¶Ø`I÷|ƒrÙÊÊ{<\P¢ž¶(HwüRK/QKSL«©Ô®j¡ø­}·àÎÄ̦Ü&…¦ +Â.ë–~=gý`s"ˆMÇyâìF?ƒêaWs^D§è#˜—~u
+iU » +s)ðLò¥øhüæ’¤õjErÏuíHí­²éÔö—¶Ë2wÒ¦ Bܶôÿ
+endstream
+endobj
+673 0 obj
+<<
+/Type /FontDescriptor
+/FontName /CGRHAC+LMRoman8-Regular
+/Flags 4
+/FontBBox [-456 -292 1497 1125]
+/Ascent 689
+/CapHeight 689
+/Descent -194
+/ItalicAngle 0
+/StemV 76
+/XHeight 431
+/CharSet (/B/C/E/F/I/L/N/O/S/T/X/a/b/c/comma/d/e/eight/f/ff/fi/four/g/h/hyphen/i/k/l/m/n/o/one/p/period/q/quoteleft/quoteright/r/s/semicolon/slash/t/three/two/u/v/w/y/zero)
+/FontFile 672 0 R
+>>
+endobj
+674 0 obj
+<<
+/Length1 2247
+/Length2 26720
+/Length3 0
+/Length 28035
+/Filter /FlateDecode
+>>
+stream
+xÚ´¹uT›Û¶>Œw÷w÷âîîV÷àîîZ XÑbÅ­¸C‹»/îî|tŸ{îÞçÜß¿ßÈ á™ú¬¹æ\+ã Õ{u&Q3”ƒ½ 3+?@AQÍÁhÏǤ²pµ:Ø™YY9©¨ÄA@+{   ˆÀãb P6uys}³`eåC¤HƒìAÎoJ3€‰'@äÔðt±h° “ ü¦Ù[XÙƒèÞ\Ä=­,,]þÄà`búé·3@hjãන
+ÿ%{û™Ñü‹  îêìü'‡â¿UÎÿ›æßÔÅÞVf`ëí tÿïÚ»‚½þQ›ÿ\¶©ƒ=Ø
+ìþWDÀÜÊô‡=øÏžYÙÿ%SU’•’T×`Rxk<{&E‡·êØ3»x¸üeý'ž¨„?€—•ÀÆÇ `}kRI{3q;»7Ö`Ä?å“°z«“‹ƒ³'Ëÿék{w{ïÿ+7·²73ÿSy3WGM{+'W¬ÄÿX¿‰ÿ–Y€\
+û/¹¬ ð­÷Eí-lAo›ò—HóÏ8Ù¾õíÛÙcõçè0±q°ý—î­%MmìA`0€ƒ÷/è­ ÿEø­öèXdÅää”þOÏüe&ioê`feo`çâ
+\!¹D˜Å̉6"|‰¼Mrpa`s@u¡ƒ‚ ¿¡_j }±UŽíËjKJåø•™ªÈÐOÑURôG®³fP–âB@Y9ݾ\îÝΩ¬ÖÄVR€æq¾¶ÎûXö±WŒ‹4rƒ²Ö•|X÷¢¶&lg[LtÂv¢…‰vH—×{ìø`è"ý´ñ—0Ürï»;±¶!cŠ„Ÿ¢i·³øï°$iïV—4÷áô#ÁíHÄ$þ”ÄeÒ
+ŠÔÿ-$† —Ûx
+_l·Rϱã8K˜u2
+yÊÒ_! l·¶\iWüLy…õÊâí<¿ç1¿·î‡Í'CˆðžÌ7tEZÔ…x<gbó“8¢«“ö†ÅN ZçãYß9KV®¼7 ý¶‡‘ •£øLTD¸­I(ƒ!‚Cõ]Ý»d‹~ 0·¼•_æôõâ
+7!Ú+ã
+mÍ•ÁssÙóþ ÙëG·’ EØ|Dܾ¨Wj_iÖ¡^EÉy—G.ø 2¾ÌN]|ßi¾ü‹rë'!Ïv‚σ
+âŸ>ð5\¹›ÜXí`m¬¿ÏhÇ´cABÅ‘TâX {Q×7aØôx¶ã5þq¼¢s;ÅX¥ÁU$6ÄûI½n wò:éq’#BZQBT€Š sv1Ž®x̾Ž O›r¢Ù%¹ºÏz|¨¿š¤“È+7EtÜBà®3±†Rdá¢vET÷Í$
+çEKœ÷?‘.Ö„cÞ/þ„ÙïP¿{™¹äæh….¡/8€7»–áè¨ãµHaÀӇϑ ´˜Æl9j¯"õ×zfÉÙ˜|þ>NÖEÃW£ÛQMGç§u˜Ã *—.±j’vÒ‡9GÁ8Çê÷Ögz
+ÊGbz B…ÔXiÑuÃÍ¥6GÛ~ÄIÿÞºÙíj á›Å
+ÕÒ©“P†Cƒ
+¢JûO~}–¡B×_ûÝÈ°hâH[<'*Öš®²7• ÇÃè zÖ \íÕlPÓ¬Úb;ßq_$+˜!íhwß
+Ov†+ãdêKêxîm 6ŒÕŒßŸÀ|ó3]èhIí[™Q@n„:«O?™hy]ÓA¹WŒ‚¼àêÈ'd«É
+È+VÉÿ–Ú0Ÿ°@t«Âî<êOJÁáãºKgU{¾ÚœC>‹V¥ƒC‚(|G?$º™ÒýhÃ]mœ´&¬Òâ$öúS¶nw*àÇ.y„ãnT«
+.†øƒœ;ܳ¡¶³§ ²hŽâÞgöcB±tAæh_-h·®½ý\zæ¹sz¨l­T§ÝynQ |¯‡l%+Lkä¤m†’òŽ3:þñ;ÝüâS´ºl’I6#3º´³„ºNÃý*Né„·ôq`ÛTÂü©Ð®‹¡™ñ½y…ª}¶»¯-Hx4(²–^+öƒä8ûè×èq\VU¼¼Ó!ÖuŽ}fŠ´äy~òÀï÷VšÀjnºŒ—ØqŠA2gÇãMtšV5:fcZQÿ‘D?“íµY3u¬!b‚GY“¾jOÕ¸H‡šôãrlÎ4ùX–:ð½ú­JuP_±.â,dûÍqÙÊÊ‹îÈ™Ã#m_8+)R!þjí!skc“¤d&÷¸¨ÀL=¦Þ £ë0k“»È÷Ù
+"ŠÞ+{÷ýòØÈÈóC ¬ËÝLµåƒ#Ü&*¿•
+ ¦üõÍÞ§sWY±;^óàŠÁ6Ÿü›?=¯BT._M‡Á弊79zD¬Úc¾aRDóµ2Z˯[ ŠkNV:ãu”Ô>²Â¢o^vîB0ИeP"¿œÄÎ\Úã0‘Â-Œ†íŸ7Ç?Â+¬CSË Œ¸ó  {N;wÈÀµF”ê ²öÅ7’šùK8v7kâ¡Žk¸è‹2
+¤aîæ¼û(ä!ˆ"H䯿. oû0±8Å]‰MÃ5Ã?¿,°‹àžðÞd&(Žžhx¼À[¤ß*‡Ókˆ¸â;ˆQ
+PH`¹ÚG¡aê¡ú ½ïàd›eäeKK™¼3œ ¥}/ÓƒOÀó^Äd´ázÚÂÒ*Eì!RkNËàô]‡ »’"6’*‘ÂÙ«Uf4¥¶UÓ1ëÓ:âÜð'Ñõïh§ïi{sâ 7\6¾ÿ¬S4†Í3 ;ëO˜ÌQ]ÿÚ߶Ê:i°X~B°v´3\2Vèò¨ºdÖ_q:1w9„ñ\8„_]Èघ@(nõâÔ›`ÕâJÑìÂÜþrBÍ+PoNþ¶˜ã¡×½!²$“˜PR¼MDièq=BêÔŒR–ÞýpZº•.ÑÃføÌAS®‹pÕBdËL"ð?ÏÀE` ¥ª œúÑ1Õná .Æ+æý±â¢É—eÏÏòÐ`žQ‚¸7òªwÙ õ‚x˜×á|Ùü¸«Ôl)Í6){iÏ€¶½{> ÄÍpD
+ë 88¦ì¾Çüú;û<È:êMÇ‹zD,úqëÓàسš2½|0M6Á’
+UÌ™© òg BèÊ xjÛƒ ¹æXŽä­¿j )`Ô¦»>Ë0n.Æw^¶yÝ ë5߸ ¯"\ž·Œ†ó ÇRÝ|a]±®vŒû
+駰Ýãâ/¢*Èž¿s?¯7Ì,Aù³éÓG ¾ûþ¬¦¦w¯®ðø%¤‚ÿŠýáÌÆ"nˆnúk‘"9å Z% ¹,݉Oö€P齜é^dpmgò¬’mFÄ÷Ú£HÖ|¾´6Ù~ïâçÞ¾@XÔbbMi]g”ð…Æú ¸}Ëh¾ RYU |á^ÃßœïÌû^f~¡š®Û•_Y
+•$
+ ¼ì¡ –|0 )\ '´<°í{þØEmà¬xj»ù<ñÉÖcÜPhŸøú¹  6XkKSê³\ÿU^Œ+[F*ŸOá;ð¨Ö6†þ^T¤ÊíåJ°%>òôÆX£çJEÇû±”7Ÿ¾ƒâ üŠ{Æx-ãKväžñó(ÿ£®•ó»ù±e吏¨Ac/!щÆ%ytdËäâ€K¨Š/+qçAZ¬5š.+d'}–Ã_¶4—Šu_—…¨ì´„ÑéúŠˆ¬ˆ°*¹ŸK…¦ÊD¾Ì+K’Œ²:`ŠñéDDµ\}¥$øL-õ
+Žh}71¥äfyl¬‘Äaâï“mÂÊ33‘Ęx=œû¹Ë _#[ Ïî@ 5ÏN§¤â-Ù
+Ñ"çÊ©¹’×C^–wJËãpqté]¬Å.%Â
+¿áXD©ÝúÁ7y‚ùÜÄ‚
+Ê{öƒûà#ûÏsYqœ×!j±*\R· ÐcòÌLœ¦õ–‘œ¾©¸5bç} ‹ò-§¬WÊH"ÅŸ!>¢E<'$
+º7ŠúŸÄ@Æ\øy[öQyzP ãÖ©(EÜÏžØ ç‘ jÙ‹_!êLçs×Ë«5î’ä ìŒYJ‘‹"}IÚ{¶8+ò×{R#óaÌÆ@hN뢧’–ÊW¹ŸvÔ/pñjeM›ï
+ë¤Ìq£—ká5úф쿦Kã!ÙRF‘Sw«œOè´‹ŒOaTՃݣÏð4 ­1Oï/~TW¸¥Aùì*‡YPîäSÅwHUäç ‹<4h FÏ| Òʺb¢æøÙ"z[–Îa9úXë;YÝy|Ñ;·rC¸”Íä“+¨ÀX›²- ˆ­Ç˜³¡—P:W RùZû3$H¿ËlÛAÐ=áÝ!0ëÌóc%ÂÓ>|Qkd‚YýD§I!ÍQ5)Ú(þf•ëœ9Æ!Ìšâ,ç€Ü¥ehF²Þ«0ô Èýó†ÍC4ÌÞXîåaššÊ^Bþa+£OJcy[¾îÂõÃñÞ ® Ú{Û©œxúz}òâ¨Orp+eI¦=ù¦íÖꊧÇã}ÛJ³¤Lé]¿ ³nèýG!tø¸¯Vy¤ÚWøΫ`¦6ÀÕ¿`ÑúÊ›Àa®QU(Qp«·L{v"¢ùß`¾ï>kã¯#ŒÇí¦w"y@ŒþrÐLüĘåF°¼;u"
+Fé2NG¨™17Zh¬/1ý)e©@Eÿew®ÅÚù™p`<0}çeuz‡>é_Á;•f¶Ú¨#ýÂI']èkÃú$ÆâÁÃèEe ãó
+Œ½ÈŸ®Ë5¹’‰œƒ–C
+ð‡ 3/¸)é)g…á÷õ£¼ñ.Lß­oèÅH¹ä{{! µžJ˜ó[é5¿ˆ»Mã=šµS$…¶±Û ”~˜…"ò¯óÄÞ½ ÓÓÑn÷ÿ!JÿŒDot¬<€f½Ûé½Íú;Ó/2ˆ „1\ówP’c·PQ1ÅH%Y)4-P°,Ÿ½?ž…¶„÷ñßϧ‰e…¸3R‚:%ó › Z(Q¡¥†Ä¿Á©0’Q°Áüçsf5Ï囕û‚Þ±¹F.K]ÓãVºÓrG§éÙyx%müSI´†’Þþö±Á M"¸²…!`Ú
+-œíU_Ék‚úàιm4™\=Sach‹'â¦Þ磣Û
+ˆé9>¦S׶ÉsÇ‚0ûüRÉÔ‚B-5Ú}'/Þ
+ŒU2 .td¨>¥â4È
+Á–FùJãÄñ=¾ÿd &]‰¯g†ªÅËï€ØGŒÚ¨’0ËhOhY© -‡‘6Aã$)•T@_ój¢EÇ[œa!Œ2ø‘hyïÝo": JVÜb}ê­Äå»Ç©}©àËÂä*³¾Vz×Cܶ)›yµUýZ’áÁ§Î@CŽ^¡“õ+=Û#)JËJ„öÉCÍ:±%ä* ª©9IZZÄ lËÈ]#‹¸éŒt"æføÊ1W[‚g‰ÊÚ>y[´ðH¥„ì Ä0Ž;©-Üßëé¦
+’øveîâÆÀçôjøù3 "ìB°Y£Èòðgú‹ÐÙûpªÕ¡í7×e™¦òú¿N.6Û­ú¿„d…>õÛ Š–£Æ³YZ›³ ?2ÖµaÙ!–yÝh&§•$®ô_cVíŸ {ãÅ–S´ö¹¶:ŽÖjÊÆ8Y½3˜)Fe¾‹‰bEeƀ˔h…)1(ÐîÕ¤]Ç»9* Éš ц'C½8o( åòÛ\GǶ­^GµðÇ©)”ÅLèÌÓòO.ÒD^\¥•Tñúi¸ÓÃtF×kzôª¼|Ö×êW“Ó]s*ÛÌsÏ7 fèêÜY–üBߟûJ#¯DüÕP‰ @]®)Âv
+l¨ÙQÐDkܺÈÏ,ªÜ·õ@?Cåõ¨Y«@U!IPZ=‹
+ ˆ¶c´¼Ù_ç¡M•¥Wy™Ýc1>u™Z±*1f_3xX›ÌvÓÞ§ë<㔈«"cZÿp<誥ËËl}ó>½Y%Â%Wà[!¢5;ÅÌØLêtöp ùé‘MÛ2ö²[Di¶l¶§­õîÚ-V¨•kg—¸ ,¦ÙAõ_ W¹;ˆ üm¹»çÃQZ01^{f§݃°ûs½µ3,=PE(ƒøq¨k†›4Ñ>Ñj,1}]üLQ¡°_ÇoG#%qÕut‘,ð0{&ªEdŸQ‹ç¼'ÞLÉ=yĹ´»Ø©Â¡ÎD"2°È<Oñ¨éÓ¦z AS‚D}š;Ýú¤Žâþ)'p"þÕA!ê%WìJ‰31ÉQP6®­C~q!#”©ì%ËP©IZƒ¹VURâ^òåÖûÁ¬Å\ëÝ,¡Ï%¿·.¬(½éEÄ–dõªôä½ÖV¹q5ú<ÃuW0}±Ð®ÓCX•úI;fÓž‹À¬}çŒ6Ìûóy]¾¿ÏM¹)5þg#AwtbÝúCôZóù; ö§©'1Î5jÓdýaâeVxi¤§ñSdÆ—*¹]‘ÅùMÑÐgï¸aN Øj‰Ý²@Üù-^è\ê¿+Š´Ó’SùÞ£uÀâ\"–.™jizBæ’‹+ý¼1ç\ÕÚå­95û¢}!—™å—0­¾ÿ”un¢Ç˜B÷ÚÜïÒˆ3Ò4f
+™’Æ,Ü›IèÂ&€zíR:•Î§/Õ—Ò†f@†A$ÓìqÊj£-õk³
+)YS&-ÿ5cÄ¥ö&/T`ã¹êa>p>nj’ë——¥&H1.AJ žêK”py=ŸmBÈä+òx…(D¥°ñá&`J¯¡UÍQ*|8¾~B
+Ž} "“Ô3ò(Zmó¸#f,q·W(Æ*0ª¢íž$5Y’ðj"|‡¤šÑé‘1CfÌÌngÛä#½/:`"‰º,*9Á§/óƒ,W–b&½€XHžó§å²bxY
+ÔæÃ8ËH~
+­ºÚŸ¶8‹©‰¶Ã§*ïEoé~cÁû÷ûÔä“sž­'Ãté)9p50NL‡°¼·ÕôU²Ïi¹ÖPx¸³ ÷I©´Ë?!2µ•{Ð}pí¥åÆÙðCÒŸ¡Þ•ìy–üŒ,ØÒÞ,Œ”¥šçH{œ`5èccæB NoÈ76‹w“€ûí¦•‹Ž=>b8Fe¥pO,h“ÙmCÔTV¢|Ï"n e›±¹ßÀô QgÍ„U~'ø*Þ®8 j-ºlJ¤üºí¯¬…3—¾æ§쉨‘¡( ÁD¬U%ï(Å’áZ¼…7•+©Ò•¹;Äéô.´Ò}TÕTþ Þ—ô´=Jé{m„W+v&±¡ä=Z¿ÉèÛy L³壢±MS TF~k÷gtø-Sle|)ßÑt!—I Q?ÂÇšÒOÖûP­ˆ8~9]µ¿%]¥13-7Ó~ ¹¬¯i­{RèE £%üŒg+}[¡Ž$òùË÷{ÌåzÍ “韊¢6‰$»ZBÔ]¡¼ë¼¿âî)¹5.ŽKŸã„ö:«ë3éûЖsãf²XJ7Ä‚>1Nrz6âÅÒ—iÍ:°u$w­0o ;Ä*ó_Õ.™. Ðû¡ý?~î¯_
+Ô+ù›®rx ÿÁÚÛqlÂþK`kÈÅO".E»cd”[D1ÝÃy|9RZÒ´Ù“b–büÎ1|±çKS›vÂàœŸмéÓQ‡+¨i³z¾–¿Ú'ÂuÕ7šêÛš-Sµ»•¶@ª¥Œîå 
+J}UÎ]b<<?="ª
+Ó2‰$d†-K@¯l³êÎÎÑÝ}ßÑÙâÃVcù®!-ñ
+_¦ÓLÀ©j'Þôv ø*¡óÏó7¤  jCZJÚXøó7&pGU~Έ¡Ô´hÍõ4.ïÙ FÆß½)Jcl©Š.žÿyøôHJ&¾G~Bó~?dûõ¸'“àÞÞg‘³±@Ò»Q²ø]¼ÜÞÆô7tûGåü™F:ezd6W»cñ§0FXï]2œœF$Yx{åF&$FÖž;~#üU¤Ä]~úç±}£ç
+„ÙHÉûߪÒó…Ð×âlœ‹š»oËV¾OäÄè&27}ù,L©àP‚ЯŠ]D×NQÃæ¡•‡–eÄz9px=s~*…1ÐKŠý{²BKf<üˆ¶ü„òWµÑëÝþZAÃbGSNlܼFÄoÑa´íÛé£T›cÁ`<ŒßŠnƒMP­”3žÏ$nµ¨C#ªÌÂŒ*¡4¹zµéz†g G©{
+«­q°®sbåþБ–÷u=ßâ±î²V¿ø0R0l§+fL¯¢Î»Á2¬OGi¨Cæî$O\iƒáML¬ôùžp®Ã]RÍÖ0eø½¥|uš€z‘ Rýº
+ÚÍ,mC§0•Œj(ÅR\Œk~þôî” (¨COlüÚºŠ¯=Áž
+<ãÉ&™„Z¨\…¥»=Ž×ÙfŠQk)‹n©Óm¹ò²-4tõ0ùƽ‰oPCöÍqžNÇW߯:OÛ‚šZuGBè?u3øpí$†5cÅ0<F?Õuöªëi3ª3i/8šÕ‡tGýŸí0²“å'LUÁŸ»* ÄT½ou¦FÒƾ‰ˆ3­(ºh¢tçÕ6ú^¤1¢÷Þ —sÄ6Ë–ø´Ca»!÷SêÑbŠ³VT}O-›¯@@M ’S™º+nqUr§t…–Y[C ®isµ™üíïoÊïõ§¤Ÿ±[ˆYc9k~­ØëÓ¢¤ ˆÙÙžóbé!’kz‰;ò3«”Ÿ‚¿r,Fw){FÓ,¶Þ€yš¿o]Bк¨âg´ÃjÑ„UÙÆØ|0”«¯0ƒ’/Mд Í7ÿfç3îºy)žÌÝz›èmD“ნcÔC”ÉÏþÖIÏz™y%í‹ üU€li!m”Õ±ý*õ†€©²—Y“_rFˆ
+FŽ¯úöÄEÛ-Ûæݽ^ŠG>³«·QÌâTcÙ÷ÞÔü×ÓD 1×æG‹OI&r;ÂKsÓóš.‡¦x_­ýÝ*ðßG”V¦ts¿Ó+V·ÚEÙ;~ñ h¬ùT»zC:jÀx̉åsú]‹â¬Þ€\†ù²úu´»5÷:/pI«pVð8‰·aÀqÔÇmc…âÿk㜖+,zbÛɉmÛ¶mÛ¶mtÔ±mÛ¶;6:œ;5ußæ#v­‡UkÿˆÚG»6Îqp±± ”À3/ùר¥'6ê¢Ua«MzI®Â؉ÐH|/†¥u/ôŠN/¸'çø”: øq_Ozv-h‰b
+„9Ž+^]ÄYÎ÷u97ç•=å: Ý!ià#Ë4ú\²¤©µ|”¼›)2œðíBxô(Ÿ8ö ð-0ý¬\–Ž¡;+@Gg•’SÆlÓÞùg„B9>$­¬1t©Çð<Ç‹PÐÒåæLXQ'Ë;YˆB“÷\ÌÊÙöÈâÙFÄLôŽ©€ƒÒ¦Ÿ(唵ël Ý1AO©>‹‘.4ù@ïó7?†L`D*"ÜÎzR­­1üƼC šéæ(H˜ÅRDah†ŠuðvÏéKy2nàõ™HÞÕ§@ë$føYx‚Å
+b
+’™™ÌóÑ܈µýÍ ‘Zv­+¼³ªh.s¯|íHºÒ»­`_¡î—lÖG¶Y(#WmÄõžT£l#«Pv±…ç8ñEöÛzwý^qÉtO’¿¦e,ÀçÛú¿Î=ƒõp[Œ¬šùÑí£úÉ S
+‡†çô†u €cEÝ?v7'¼ Á²žG¾½P*GÂhzÚŒãĉǸæü •aR{5–<¹ƒ¶= ÎÍ*@¶øúC
+\çú®ëßgœ ¢Ç–¸•¯ò~V¡ó'Dî&×Ëœu]?®¬‰–=»‰cGyÌÈM‰­T‡MÂLy© ÌuŒRµ`Å?£iï¿Lf:~µcÄš†ˆ½ƒíFTê‰G¸¯,÷ÛŠfÖ7eèÏf$ùx~Sé<",‹6ì‹™VûÿØN£økÜÞ$°o]»œ}]<ÀÅè³)˜ë†n£«ë¬×fD¬^Fç:ÿv;Äf8(jYêqe7l'êÓ^ú7¢­…RTîiíYbóþÌÒÄ‘
+ïQ©µi="WÿS @›`7“›ËÚRž†ÈŠØìy¿@ô5§”îßD*K ÍH¶X¬(ÐÙŒµ}õšGC74|”õ·—ó‚ãšüÓå
+[8U‘VŠûV#Óþ­ÎzÃáí«
+"é mXñ¦ê+ó®:¥-1ÓÈÛº+ä«
+ûîU72Åb¯L¸¤†aR ‹ŠÑü¡0„È­#Ù^€cììü„"R»&¼K£¢¡BÎÆvrút`ÉÇŠtöEZ?šz¢ÿòütØ=£8'j.»<«Æ÷&Muò®~îA*ÂCõ8=õ—îbÖ^Cñ8[a•!ÍÞæªΖ‹U²¿.é¨Vòûå àXãåêxÑà¨Ëø­ì¾«èü2¬hW#š8nçeÔL{V-ž‡u­ÓI’y̸"¬‰¢ã²%}`W‰ø^‰>ÝX² DC•Ñr\Ò)ÃkŽ¹ÉÛ8ïÓžFz¹©…õ”¦ºL|ÿìo³=ðk~¶OÂ_¯þ{’‘›™Â'm5e1b°E´.´šÍI
+5)Ì»¯/{_ –ôì㙓„òÌšëûDu
+¿
+%Ö‹ù½WtFÛ÷n@ˆìX͸†tS‘
+•;fbñVÇçãNÁUžD ñßi}1Ÿ¡e¡…ŸU›g|ñhÍ!.’›bIV}@ý_5 ™~:¯ ó1k ìº òcº²mÿdÕ+4¹0‡`®Ç×W€Òr˜¬DlÚs·Õ{ª_f±vs.~“,y¦TÞhL݆Pòwr–!;êêT÷SÁ./úп͢B%¸Ê¬P1Å1¥×Ãqmõ¹~è.MÏÁ ÎÍl…Yï^1m„j‚]¼=á­aî ¥~ë…luXôaaŸ·¾`— #IDf0ødr¹ì¹M}ýßî¦8aªA×edi'¸´æ1!´Ÿ/ÊçKS7j€jháp]—dhœôïÊÚ[Ä7á°ys.#é•ì#jƒ±e$Õj–¶–½Ï+–Jj 2bèÜžIâpEêÙ0öæ”",øfWÏèJ‚ê3äeLÂ:0 .;¤{ãpâSScŠZÿ•µ ¥ Q¯: ŸFb
+bØy<«K€Ù©RãÇLvî ÈœBÌ$ž£¡°ÕJó¡Ä…lÛ 9˜Ù·Î„>³9ûÁì´NîôˆÛ¬#&Z¡Ù¦FÃô“Wä<ïÆ£`òzüÂðÄè'h!`ÞLø”TF'?ÉÓœr‰Åî˜ã҈͜šªð¶Íétøßæ_¼*Þþ!!MáÉ«øáèu£Y±’´ [ues ¾0ztÓ7#ê¡RBZj:DÓ1ƹX—F™js€'&#d¯÷}âJ‚½8›±?E¾BfO¿Wðîx ÁòÔ[F‚Íb@K
+‹&· ¶0=‹œürJ]n¢¥Ñ½ù1M}
+y:Wþ
+¥th›àB!XAø_©D°7iå RË¡83a\á±y+²BÈ$J!… ú-9Y5»+1ÍÔ$4õü$ÿ“sÜÿ§ë¬Li>*‚ _*åzÿçd*ˆt^Ùû;ñ›726?†bŸë
+w~¦Eå¿Àz\\A¡0\- SˆÆ¦:ÌYmJHå çñ.ab²ÀåzDecã¦Ë)y”Ÿdž¶±´ØÙÕä‰Ì1Ì&ê=NC¥€œÁw„ëK…"Âãi )y€L×ïöŽŠ‰Ÿ¶zá=á>É'q¿þÁ3+Ïx÷¤k¿VQ´,Ì$ͨ¶_•àFVÅ(Læ÷ô±úý=¡CMT…cxHâF”æB"ý;‹Tä—IûgðøJÞ
+)Ô™}hRY sþ‚ºÖÆ;s}î‘©>\e‰œç¾¿“¾ Ép×äá½døQfé¡Ô¾÷*ô n$YÉ’ÞšÆYwm»jJ·ÄGã¤×§×‡åÂ’¼£sLvíö m~”ˆð¾QZ QŠ{«n1Bk¨æ?l•ƒw±&^²\cCÙiq ¥ïÈ:!õÏŠ·ÀÙÕÝÓ)\pžkÀÓ3IöfçÇšÓ65ãL!Εù^÷™)ðÓ)Õ#˜Ÿ_*´5mëS£»Îq¶Ú¾LÈ‚:È^'Xµ k]ïT½”º9«;Z¹3¡hI"€»=Ý$B¬v÷.$¡)Š¼RÄ¿o÷YG9EwdH÷BX
+Q pGYØKÍ¿ËpBý«Dö÷mŽ@¢¿(cÿnL©t[7KÅ%BkaD åÏÁyWç‚OŒ€#¯ÙûF!د‘ùÐí¡ÞŠ)á‘BX¡Bí÷3WTvµ/Å¢[ ¢kÕ¹Šv+&¸Ò
+e<M,À‚}sù%¨NnµÆÈ™d–·pÖJÖ8‰h q]¸ ¡…š£a©èë€APŸç¦›Kýüϯrþ´´qŠGVRÜÊ‚<\Þ:¤Èpº¯þ×Rèlq²iߦMnµc#åÁ:ò“˱%ÅؽnÞG†.“ù‘æf” 9¾˜Âxss¸ì2{RÿrŸUr˜ ¸ˆ‰V°¤•¹ÎNEwÛ“©>-b©B=òCÀ}o¥·s£'¿‚¨…e›g&QŠW
+gÏ:˜­·kQ¤(}š‰èÐlÞœ¿Gk!–øàMS'4¢+ÌîA”Y 6Æèí–ªK4Â?8xVHWhþŸÂZöü¹ØÖ“ç=-!•ë“™´`¼×ÐÆÔ¹kïæÅ›Ãgñu&jÄÄŘÅXJÐÏ]§_«*‚ŸK”²¹->ø<q?ÖM5v.‰N–úÖIñÔ;<Ù*ÅÄ3'"„ÆM½C–m×!”‘,ywâéƒæÁSÉ«˜(I-ûÝŒ-êš@o8šÈôHð@¯ÀÚF»~|Yhü
+4µ#÷iÿGÿ^±ƒýç3‚('On¦·²L¡–'ÂÃíïÂ'ntãúñ¼ò­q&ß„|}"îÁ§®v¼ÄÂä{å v+îâ <ÞÛŽ|Ë÷‹¨77;!jøX®æ(Í›Ñ粟rã’‹]οf±MCÜóÆ#ºÅc¤¾~t¦Eôª~¦5‘vÕC·Ý¨wcP–ˤÆEñT%'™Ù”Œ×âtá9
+\$|Þ¬5;Þçô|§K|ßz$â]…q~QÌãOÈ%Œ ¤(# ÂØ Õ¡„÷ÙnFè×6R$
+b\Ò +¼+¹;5•½ÔªJ>FÍ„€ 6ë§@¢DFÅž³+Ú2®††ƒ2浧 §éº(syeââ*0'p^¡? ÝÛÏ4ÅKšŒ>­ë¡p œÓqT¨ò’ë áð€­‚ŒT"y;M²©»Ó>ç=%K!-svÇ:0¦å‚["E«ø© HññV¸Z}eBàÏG/œCgÇ ºwÖjýN´î5EyøןÐÍ;ÌE£Èh¾ÉÒùªóÄíÉÕÞ)¿d2Jpo;»žé0ŒÁÕš ý7vš[î‹÷½cFéÖ¦òõNiž§ ÂçG”îâ…&î\yŠBì I£ß63—sòˆœqÜYǸög*ÔÉQψl…®ÖQAz•?ãG†qWMeçªm³£JGðTë‹æÔ[ÑGüwš1úÍ= my9 T4Þ}Ð}åru‰}l¡‹$’s³¼PèS2÷˜ê.¹ ¤ÈN N†ù‡­ú«^‰wf9?#Ÿ~¡uÞ›t²ŸÕ¯2/ø!ˆ³É®¦ÍÙñ;ðŽ“Ç:1陕¥µ:!OÑpÊzÏûðºízjw²í:üQ]c#•ÐPú°r#Е拻Ìó?* |øùo¢Úê‘þ"%Ìš”÷,©$˜¿—®"Ñ6_Ý"‰©®@§f“ ™c³c]¸×Ød9·á^ÈN)hD——ý#Ê5,³`ø8W—ù“p‹4|,‘Ä.w¸m‚zV6}„1²µýî»ÝÑíMÎÞàl¸ë·œ¨E‰¤«yÄ8wå8_ŒuÁ6KU+ç¤Ç1«Ðš#å»=9Wrë…éSNÐæåºþå*å7nu(T†¹–¬õƒŽ+&!rØO§M›½xH0awöéþí*jÁâ“g¶ÏCí ¹Wµ;µ}Øè`@ÀS ÔUl6CÒ’¶‘xìô`±#æmÆz¿Y0!Ü~8ôBAs93÷ŒÂ7;ú›”k€0§jÇŒHÉäbé<TrÔÞÛpó]ô¶ÞZWd¥q>#â*ã¿+¸<÷K<JÎYßðDH!êIÂ-Ü©×kU¾íÌÂþS0œ¼ «]葳—š£O 1?xj&ž9O îaGm sú¹Ö¨J»ô„Fı
+ꉢ¼ö²`pžTíóŠÛÊüïKöIt‹8[=`S¶Q¨z§²û°à¯ðju¡‚>¿"›Ýíž(ØQ‹tšœï;ÕWán4pÝ]î«›Ýðéö©àê[ÉðAKy@ï-GW]´eÜ;Ûža‘{êl1ÊvR)–œõ`ƒ‚Õô;÷ˆRk,L夡mz;-ò¬
+„nÎÑ4é’gñHRºüï/ypª±\Þ0E8m¹ç[ñú>‘ÂåÇ  BBvøAW4ˆ¤œ ¯ŽB9?0‡Z=frþh©à¨CiüY%úÒE·a(\±›Ã¸Íá>¤ÝÖL¯û¿ÕÍEô%Zž0<$ݼ%P,W‹3Ýä 0ZÒy`=¡…Î~Fù+±€ö¸‚=+"†0í“š³gàzñ3.žŒº"— ìB
+a~±3 ßKà csƒè$lþ:ÑÒcÛG¼/ ;œÍXGBäöFÔôä(ø7Ô*%žÚó‡—Å\U´çÙÞÐZk‹ÓÊK•Ãó,H$ɱ;ØåT­àubœÏQ¿x«œÖ×ô‘È­°…^4Õ²sØç
+œ,HSx7„~i+mXàʼn~ˆà¬|‘TwîzaEóû‚l WÓ4Dhòè[Ÿ/•íŸ,)'Eð|ÒבÅÒØÞ‡8TšÜ~
+Jq}(jü±UCõ!ªÙ/¬Fýv‘ ß;cgMgF!ÝbwâçArr®VB÷ãÊÞJÍ"Ëà45«Óh-0
+å‘=kýRPÆ“´pð‘þ›ÆQH×L?D†à¥°g¬œ߉ƒ/cÿ%Æ ¾jYKXˆ+÷vâ“Gî¼_Ëõä½uΆëØM£2>^ô‰ " X°ƒ¤ÍÈ_½û#ŽÛ®IUt«óÏwš7ÂûŸx¦¹RK¿£žUûbëìüXµ2~v™œj®EþE¤.õ¾Ûøfß·¦Ë/E®!àÓ®Úen+5Oƒ‹ÛH°Ö¹ Û>’aùþ±<Ü™ÇÖÂAÊFbjÌQL¡ížRcÈmpF-PD]Ñö¿äMvÑuû'®œ`C€¨ìÃ}2–ºCºzÉÀÖÔn²KØÅVÉÞŒl úòICóåƒxƒƒÌ°šy³‡ìGC^™u釼5ãUðT˜ 5ìâzjgÄo’û_<÷K†a5ÛTtÙWSÔÿá˜u6ãdâ^ÓÎÂ7¦<oûÔê± }Üxg¼Ëàå÷ΧÆÔW û¤@ܽQ2¤(HÊÊ–4ðÃ" æ4*í뺮 ±W¿BÎZ±ý‘2”ÖêzÏæ<pžTÕ´µØøþQ½ôlôñ=†>JjÇó; m\ >2J*±ØÎzÙY¨»å߯:õÜÖÈÅ}×]™Ç}—XÁ1¤ÎNzA1¶ý8ÇdU»Œ‰}†s]wÁ.ç‚ÜÙ°j@áË›Ô.£”•¨“ä ¹¸¡A½RY†z´ŸñT73m„ç7¿¥è΃š$Î/M|P¯¤{^§gÊåzûìzªøÖìɾîGnO¯YNÔWÓ9eu8éST6ö¾C,ói­5>äÙå‘3õ¯…¡a$z—ñ&Îs/ظ Œ‹H'=cíâ»3±ê9Ò J¯L'øVïÂ#1KŠÑ‚ßj™ÈØÐ0.ãÕ•–´›×¹Pš¶%·ç-I6.j<u3óÈ%bõ3F•µ—,+¬("Pþõ/^¬€qj¤Ø…—°žlœ×Ú‹»ìöóájS2Œ<ù÷Ù)ÿð8î+0ÚkÍ·IHLl&
+ Ö´HÇ6ÆnßÂç©ÉšÐ›µÝ¤ÐyþVqfmCJí,"0† œ™@¿Cµ‰°Bq+wP‰Çƒ¤«]sÙY  ëàKðÄ×ú;4 J×$ ùîM0¿:»°/'ÔdÇp–Û@×CÐÑx+ÈÓ#íDÄ0õGóc=L°¦z(•ânÿz¾"‚š
+ w¯¬ _“Gt¼šâ4 }v!T¿¨í§ùb¢eÿ–
+€¶RÏpáëþ£ÀPí¨|©1Ÿ[ȹ{@ϲ®èÔÀVÀ*+ÉÖõ]Ö‰^¬Tdi3"MÑGž_#ý•–+СûöÁSuóŽ0õëŒ_E-Ó."—>¡yPì J.ÀI¦ø?fÒ’…
+endstream
+endobj
+675 0 obj
+<<
+/Type /FontDescriptor
+/FontName /ICLJJO+LMRoman9-Regular
+/Flags 4
+/FontBBox [-443 -292 1454 1128]
+/Ascent 689
+/CapHeight 689
+/Descent -194
+/ItalicAngle 0
+/StemV 90
+/XHeight 431
+/CharSet (/A/D/Delta/F/I/O/S/T/a/asterisk/at/b/c/comma/d/e/f/ff/fi/g/h/hyphen/i/j/k/l/m/n/o/p/parenleft/parenright/period/r/s/slash/t/u/v/w/x/y)
+/FontFile 674 0 R
+>>
+endobj
+676 0 obj
+<<
+/Length1 2101
+/Length2 17200
+/Length3 0
+/Length 18498
+/Filter /FlateDecode
+>>
+stream
+xÚ´¶sxë¶>œ4¶&³±mÛ¶=c5¶Æ¶;mÛf»q~éZçì½ö>ß¿ß5¯‰{ð~Æ3Æx'éeZA;# ˜­-#@FVÉÎÆЖ‘VÒÉÐÚÂÀDÇÀÀKJ*ì
+
+öé_«‚áßõ?š¿°²“ƒPÝÂäã!ûYC' 7m†9gü¼þ÷—î$ ý÷Šú‡·›'- +€–‰ó£!™9Øþ‹Õû?|ÿÞùí˜ ø_ügá€@7 1ìÊ¢1weJSH©hÁt)'Ýi&Ÿ†TøJút;¶Hî.¿Ð¿Ù/ƒ¬ÐNF‚K×'É߶Xƒ4Ãúm³%±rêÖDQ`ÏÐGÖQTp,GN5 CvÙ¯¬“ˆò—TN¾f ËlFk\+@uìX˜³½ë1šiòå:™H§¬u=µhžñºƒ5ªÛ22nÞòt¨Óû#zL”a¯à
+ÕœA~昤}OÚ>hTÿK$Å~ÃO*t¸:†­D0̾ïÑ­o×’O†ÚÒj©ód¶¨¿k.!ÑùUoMýsìv°¹\˜ÕÆ–Ô ,;Ô¨m'<DÞ“m©– rá´q,œ—; ÆEê£¦ê ¬d(?)9¸qÍÕO¥%ÉžóÄY ž‘Ö Æ°_#§bp«Ëº™ŽÕ¶Ö4¯ñ¹Ö<Cé<ºÝ“eϺ§[!é8a†–Žƒ V
+›t«¤H¦Ä³õ
+g†á» +ª+RnÇÄðœD„x y… éýAÅ2‘—Økæçâ“KËùÑhK 4kvýq-=‚à!ÑõêžéÕý²QáR¹…˜S÷SX’Çæ*K«`$£BÁ’Ÿžq·+›-tA˜MïîÞGÓÈ™ã£Í#Ô4b}ø'w¯`=xGC½›ÅsŒh37[Œ]Ò¥3¢"Q:_\dx<ð@çR%ZŸçRè‘3¡<¬¾1×9UæLv^úSåIÎÍù~êõ˜ íó
+¥\¦ˆ«Šð%µ${Óóé¼ýöÁ;zg~õmnFBx÷R†ÏUÜâֽ澵–möæ:BÆ×’)õ¶åØ&àáºel êE
+™ „ ®!‹¿Vµý’²P‡˜#¿ ²KÛIÅöW6Iõ‘$ÒEß3Nòöh\FìF[;TxJ> G§òSdO3Ày¶´=¶g˜Æõ³ñð+Ë÷‹Y]Ž€€š€µÓ$ÕÏ×ÏXZŒ]d™Ã͉‚ly‚V®êúÌ'Ÿ»jF—¨²¿{’·bÈÏÖá{5$ñ%?‡|]ÏÁ³£:—`eÜÛÊöÙ–eЗSD’昞ÀƒEzG’ßþîóWZE I­½¡@ŠÍz $=æ/Tϯíåž2¸Ôsy­éÃc-Ù, ‹•ÓuceŸmôºØåjR»›9Ö-e
+‰`•¾ë®ÿ;Y¦Üé6k›Ý“‚ؽxJ"}<y<|Ù</žÄ)q˜÷µÿY_>IÎ>d´R6
+ì¾ù̸†‡# ðÄË1Â[Xôˆµ>Ç”3 •ƒ6
+ƒúK©ñ>/I̱ŒÓ|˜š%YÓé"m%Œ*ò'VXÞë (cw%/Áiþˆ
+„`‡dwOÓ!‰œÎpBg¹ªó4²ÿ—Þ%·]+<ˆB¾<¿Q®F:a]ÎKì´²cj4œê¯€Se•t¿'¸HôJ¨Ò¬(ÇVÁù?Sáp.|ÉĘV·.ò¨7 ¶¼ç§¤ã â!<<UìqƦݷŒ€Oë’ˆ $œ’rÿ ŒLŠ» –¸&ñ<“»›¶¹R¶iÔKíW$ÖÔÐo æû!kºêèL~c%Ô,L Ñìqw‚^œ¨ËZ`EÜé]r¸fÔ^ÜóꜮ)µw;[Žð7¶>%~
+&p¹åÃò;)‡ôPúUk¶¸£“‹ã÷á5X>6ƒÍ9³àÄzêãæ’ÀÇJ¶³ðmsŒ¾ð“amgˆ|-𘈠,¶ÝÍþî
+Ï#êÐ@9Q?Qâ“oîYßjÕ^N¹ZÞˆégõ‰Fªìû$hx.Í;Ú;bŸ]€~ØŒ¡“ë˜^#üäÚRVü=©Œ‘2Í’M†˜D¤Dy™h”ÎQJ¹¹ÒxŽÕyé;Ç€þÄËcW¨*T®ÍWw:<A<+ŧ"“U¤Ûo‡Ô<9?¼5:Õ{J>Óç ©ö»S›4)ÃÑ8µKí Z¯“):-OãxL'N¼ndŽéãÛq;o¬Ôlý’Qxco‘â6§›wB™ëù}„Òó¡¦ólô.à†~rŸÕIÉáýç/ªU{¼Ÿ8á`CR¢dÇ’ imØ0¢9&ùW<Çe»E5ãUDhЈ)–©Œ¢¥B~
+¼ì˜–O›5AO‚öSFi{¥Jþ?Õ#Yåز=X:ªÔ¿ÛÎ&–Ûrº«ì‰oFÎ÷ ] Þ¶ž¯F/$>¾ÎÝzö…ûÈ6Y—–;A¯ÇíìC”TlÈA6€†LÓ€½ÄeßÛÞ²ø¦d
+)íµ\ÏÀ”wÿ'QÞ®MNdZ ±„M³Q‰ƒˆˆ X†Bll¥&n4\B7÷;K­i¢Þ1gÿUbªæ–U!¦m\)˜–¶Ø0fEÐ+ò!ÎüŸñ¾'©'¸ðöxq•*©¢©×•bo{‹Ð!åÑhÇ»‹8³ÇN‹†|¡›{TIàóÞrpxBœuöTe°1ä§!8t EÄé"6;ž¥Ÿ.¡Ëµã+¬®¥iúÕ„q9ò·6¿2 jmsµ•hó(9,´-1N›r'`—™íáÞº\/Œ¶Óâmâ.žUPq~G{‘ˆkÈvufW¹ÓËÁlí¼Ý¨qiÝ]å¶ÞŸXmòð$$í
+¹f0cþ1úñ§Š Šd;>*¸7GW÷ÎÜÙ’õ‘6:?% /TÇú›SÍ°5—ñÌE»’Œ•‚I„›‡¥,ô+Xä«BqàÏœ>Hl6¾P%–´è²ý¨µˆ'³°§ítEËQýš/^ÁØ]c¹;ÏA NTžN‘•2›®qž7ë|&c~ßG½@RÉô6¢§Ê|IO¶¬"î{ ˆ›Îµ©VS3–-¸>1.h³ç³CÚÆÖÍÀ¾)e«ý>ÛË%V‡›ñ°ÉüF­UpÕÑmš<× 0~LÖ¥¦ñðCodüÚTÊhÐÐ
+ƶô Òu˜6à2µÍWŽüÔýâQ„Äæ! kSÆy1)ÀRL'µ§iûg¨B'Ú¡‹Å‰”1µÿ KºdÎîZI° hœ¶Üµ:£9Fpð˜>Œ6’ͱ±64Ñ(Ð +Ôù÷p÷)î>qf˜†£—êÏ^¬B#T‘¤±ÑÐTîoIºåy£¤/豿îFÕY*Wl)ͳ8÷*%áõQCh…k¬Ϫ±C‡ò
+¢Ê<Þ·-É5WEß æM‹lh•f ¤?Aì’дÖN禮
+»$y“­ñä&·)cQX‚Å{”ŽPÙê õUcÂjìá0X–
+ç„æ¦Z
+6êì[ýšW5Ái,®WƬ±ÜÊýõïñ¹Xe45qýî'$h,ÅÉà93Êø4Âp”ÖW yíßÁo
+?ä”>?‡Ïé®PÚ“ãÒ
+B©UÛªC5Âdqü|‘
+\È‘>CùJææ‘[ðJ¼É’h©ÿ©ylvÎE1JÐÃ@²°2jÑ\’xÒ°´2çQìbnýBÉ®rÂheþC;‡Ú&eÎpµ"<õé(Î;1*[JTÚ;¥l¤ H¶?ÂäÛkÊjÝ›‡:<[H"‡Œ·ã’‰GI†Àî5Ê6¤æŒ˜åÖ9X÷ˆ%YS˜#%?ŠŽùl
+T‡¥°xm‹ò=^C÷nDVÇÌXâª-?†y`=ñîæ²K¹¬[ÙÑ7–“Kµ+ànÍUc!ô1Ów„‚¾5x¤n£œÐh˜¬2µ-™=#Š®!J_ËÌvÛNõ ±KOS tŠ&fSØ ï.Á—/±MEÁÖåø2Q¸Ì¹y¢r“š-‰¾GÂÙŸ‰Ê<ì¨7ó,Ú>[ ‹óe‹nÁt2lùHÔ›NÔm§È,ütôÆ4Â>†/Þ>"G«½
+ìþòTÙ£“KuÌø(§4Õ©?C „0X5¤eyù(EZù‘T6 ʶ¤¹6ÌêΤc9ì&6À‘Rˆ~2Ùͺ—bÃJ‹ ¦É“Ñ-Òé¥Ï^áÊG¹6ÝÔ #¾)õéàx½(¢p}ÒñÐ-ÔoãÁ›˜T*ÁÿÚ8}wu¾ÚË•*>"çÖ£H‹n_âé7² ¶|#×Øyôúî#œÑQPºÔ âDZï:[qµÎFjx³WÏL9Õ©¤ñæî%¬ói1¼*œ†ãšQ1%ª¯!x/YðD·¢Š÷u| £rxeÒ¿PðÄ ýcM±Àù?¥Ð~úEØ›Á)}[gŠNS§nËñÜÁÁ*‹Â-¤XékYÛ#š½Ó¥ªZËSt­¶ˆm­bØZ#=M={øeGzy|ðœN~—rT‰×¤™µÉ<†BÉï¯
+t.L»MÔ,ÝA6Õ()›gÍC%#§°J:„ã!BÆÃ}þÚ‹7¡§=EÖÎçÙ
+Ïgê9¡$Ü”Ìt«Ϥàgf
+PW´ÁçŠÒÀ=Ù•ñÜÚ«ù˜TÛ}°½³š RÁÁ¨®
+O”'ù }£™Ma\Ƕsø³º†ömíÊÁ·¼S¶É¶ Ó(æ÷s9«âÎeæ CßÅ—Ûï]Q@Ó`³¤™eœ`Ìf+æß‚Œñ¶:5ú[ÁJèÝ©=ÞPo­˜žêOÔêΟ?£Í…{¹->ìfÅÙÓìÎ3îpž¸(f’?)Фƒ+0oM°ÿ=Ï”–Y8²¤‰u¡v>;2yúý5§ß@ýi¹˜¶^ònÕ#¾`s†y~zV{B |ÝÌYJk’2’.2Âo” ­×ž(¸¦ ^ Ñ^‹:‰ŽÄ¿Ú·<Ù~ÝÝÜ7tƒ¥ÀOøµîŽ`îsÍ¡]ÉW§.÷lèíDtšŒ:"Çe¶†Ñ7ïXói±……¾NoÛ0§ÙÖüVBAÄVºŽ9+ÈSӭć6ù:™$Oµ(ܦÎ%FeW‡V*¤æìAÍÿ6ᅢgóU;ZÇ»†v$w{vp ¢ºÀɪ1Ï-õ€tĬ‹¥šLܺ҂ŒžAI?E ÏqýȧÞN·dp/P›ÄE4n"îü­‡öel£ÂF~Ôì‡w/"8& R»IJV5'h’„Ïc —ëô"© ):6PôôTÞùŽÁ€¥ð.ã猙jFàšXŠù!h_Dboaj>ýR‹HwÍŠ['8 ð\Ï}°¡a™:.oÖ;±;OP¿H·çt)™uÄxŽu÷›mr³Ââ»!ºüN*¦ “¶7ðoüžÞU#Õª¬‚NŒweêÆ$EÆ~é®Q,zŸôÇ/ÚÕî85öìtt cͤÙ=^7pýuU¢‡64otþû-ÍW¯îâóe5$>†cEÙïó¿˜7]XAâï»È§&ê)ç±t¨×„ÅïÛÎ…ÜÖ’ï'W@K:cªxÏ÷ùDìxM=‘X3¿¼sÅ&3›3ö “%]ÑïÃhܪ=®1=^ð˜s$ƒmAÿ^)åÓñìMÅE¾F¡•'ãó>ОñÙñe@z '§ ÐZ
+B8Ìñ3ˆ_›V×®Ï×çÔî½0í[hvB”R¤k/µ:™ú5§ša’ì•”'æ˜ÔKpC_œà·‘SÓ‰ßþ-=¬T“7~o©!”iêÖc–[Bó2²Ö¾rÄ–ÛÓÓªUà¡ü`î+õ#QÖ£]춇Ó àèŠ6³–i
+™Ø/s0ùl8žóÕÓ~RÚŸF¢^™ç#”ßêú`}¡§ÑN¯¸sA¨ü“oAn&‹-¥C;üÕ~²Ô1¼"n1
+ÏÊÑF=¾ S~¿S<—‚+"Âñ´s• ‡Uîæhã®òœ1ª­‚Î,Ááé°~;"ªTÔ.ô*Óå¸é¯Ûœ,„$Ù`3é2HÑHÅM{~[Y¹ôB™mƒÞ®P1O5{?Ï5‘ FlRcºÖðz~…YÚ £Td×~øuJ>Ø÷Ö79h©PÊ’S_Û[œ”
+Ö4¼‹¾<ý¾±ÚCtl£øyÙqK‹G88_U ªÅu\Su*þnêL­ö†7,ÃàžPiã™}L"åIj2Ùè›îÊ=,Âd3î»ù/ÕÒþÑöI žW>ÑN½ù«µ [­Qù-&ןA±©Ž[A…°üôÄEA[¯xmæ•ž‡óžŠ¨-5å¨ì./upýGÐ~ºznG’`7¤³kEá;ÙU;½6AÌö†}«;OëÌ|GœÃ rSéæ Z-˜™^xé#h¾@õó³Yq¦ÂÏ$£XÝcø!í•Ítßg…-ÜlëÚ·ñ>9Z6|ß ¢¡ntŸèš¼&”µq.À?>&®žg÷„¬=Š+6Fß᥹Ã?öñeb88# “äƒs*˜õ} \ŸKTHŠØóÙ õs>|ÒÆ¥RS‰Î\ãçêÁâþ¾Iƒ?Æ{Û|@üڀČKYòF¤#ƒ"ŠHœ?eæ*¸FódWœR¡IG¿´¶Ðs±é;ÓãÄIÚ¶úðyÔ@±Çfµ÷[qcñ•ÛR¥ì\1ñ½§Á6#w› V+Ù{MÎ\”ésS~j ´t;|íÁf’ÜÁYpW|v,+dÝÞ%v/ýD®PXäËÐøxû· ¨^lwy„B(ü«»Ûr^Ÿj/°ÛÞlTGæ]ÿó³q~=ÙŸpSæa×eX „iž†øb.o‰q̬Ýã3dž¥Q€‡:ÎPù7À£$;·BHû Mp‰ê;Žç½·.5A,Ãðñ}_Ê.·×4í=-úƒ‰’|yS‘<î ¨®½˜9  ÿqTÜ–aI7T›þvò”àPE f¸ÂüÑŒ¾›ŠÙT'¿ÙÙEíãNø¬UôPÐîR «Èhó2®RHn8tƦS†ëˆµînD“‚§0µÎÙ< ú—ÄÐá*ÓUß­“¬Baè*#XÀ514ýùÃ|(«Ä¥x
+Qbd7€
+Í€Gëbê‡a„
+G%ëmd]7Ó³aw<ê%ã—R¦®Â'ÏióÐh÷Ñ[rQyUi+ÀFnØæÏLû^g£i¬ÅûsMÅ{M#­øc®O‡SåóÝù§-Ü´LQç»oõ¥:BRÖK¡[×ó;{6À<=K›‡€·ü.‹!:QßWŸZ{çXˆÙJ;§&ɪìõQúûÀ)]Ùax
+Î(bÙv½ Ní6ÔH¸½}¹<®LÓ¾¤q(ø6Sn¦™§â!È\\àEëX$úu×
+ºâoޠȹyÍ{0~ìN¼×ˆšÂJT4į¼çÒã|!^¾Ûûø#·¶ˆn*câhdîÏåW[Œ3v1ùIÃlù[¦çVZÄ׬Þi$ßµÛ´OXÑ|ˆø­;µÀu‘/ O®K’tïVV‡0¬mßk<éGwn„Ÿí°RÃεêbüŒ(fð¡Ø_ÙÊÃ×wL*2Ö5S6©3X”Z?Hüá]µ+‡{'žú¢ãÆs¶K|v7宅8®UÊŒ¶ke6‡Ø4ÀÅx,þ9óÿ»ÜÕ5ñ¿ËtŠï@Va1Ⱥe/17ü³ùMg¨˜k2L©¨¸|ë¤Q••ï”¥ZùO$
+÷V?–0ïsŠ§r½ -ÅN-ð—·¤slC¥4S*Ó ¹”Åêôý8M¶¦v¦¢Gîw¶Cjqè¸å2õ€@5Òí"ãn¹ÚŽ•¤ª¨yºŸ?ìcžORá,,ñ(zšÄ²÷4-j:oûek°S‡4;­Óßt´³BØ­Ãap+>‹ð‘€Ès8¼(|@j ÉÇ{ìPü ŒØ8œ –xÑÓQc–jš]ÞfÓ¥1ói¥ ôÜô¦à çùc=êbÂñ^žÌfÓqµeñ<÷¥Žà–ïТÆD¦oÍ7‚e£>µ³c¾yä·³S>Ëðò¿ìŽQH=êó6È,õ%Ñõ1ÄûÓg‚éºÔyƒ}kÝlnÏ|7´©¬RNzº$PI=Ð>vƒ@4+®·è.”
+ò¥l’4½,ŒÍüfÅ?OV‡ÞÈûn°üí›´Ž|ñwµ‚š§]OÀη¿Íš7™Ù
+‹óïvÃÇʇTÅn±(1~¦xR\r€r s÷ ³¥–IIz‡C
+ašæì2! »¡~RR{d .ä}çA—Öt:±S²æ³]°“7Í\:ÑMSy&©À)Ú™˜ðW“€4Ô“*×[3ê½Ô—æ 6±eÃL÷ÏÍd’¬ƒƒ—Û$ðdw¡á+í‹Ûpé$lÑšÚrìc§Û—@µŸ¾¾^àgCLì÷Öù»¨ÖàxdmF7 É‚bqêµ£>šUå d‡ õt^ðúĉ?†f€‡sÐÐôõ
+¼žqÔ ekÚºaÝ7ó&¸Ö2ÎðjÑP6òªº-97¹¼[㓱ô'x¤ò¸¨sÝ/ks²1Ø¿üß9
+ ߬Š ÔJÙz^Ö¬—WØ@eô¤U¬OEÔPãÐT³ã|¶¬£â'À4AR­,¿ª·à¤±¤ÇÑç—^¨hÚZ|ŠKºTaÈo Šµ¡A4o·sß&mùçaãÈØPà·ÜÿŽ…Àº¾‡9…1`cEW¬r"Í·^gLgìØäП„E[]þõ ³FÄÖ4æ³ÅÙ^„~EYXëÛ‰?*µ@´©¸Ù¬%§=ýEþ» Ë&2á°u˜˜w€¸T³‡ÙX=ºb4 ‹5®pnÊ€+Ùl†ÒÑÕ`ûòžÂ#¾ùÖéÆ1í›;½MÒ‚mw†ñW›»²¡°ÊÎ<ñz@Ú>»:ïßÑ—ÀË›ˆÜoM žj°î ž±c£'R.ŽPëæÕDX½£§ÍJ"zx‚õýh– ò¢Íêt™?ƒo¾X×QJ6±œÑØô¬§ ¸Ð³§H õˆh&A®Ž­4gl'êFœ>ƒC¿˜7r-D¾üþI6?«¾¾Y8@Š)ð³¡rÑÄZ=¹!£Ü¦þÞó‰@-7UB;ÈóS¥vh:K‹3¹hæ½R‡ÜÈ|¸ÏÛ÷`ª:³¯RU°˜'7 v|<yÛÁ$…B¿gxL/ 9o­|òüàšú¾ÍÙº±Ð2”¤¾—ÖÙ¤ÉÍš¶4ì#jÛeq”Fœ~ÅUì^ÓšêK°ä¸Þ!”¹%ãôût:*ä8 Q¡*a>vut‘ù¥^ÔƒŽ×ï¹âÝ(7ë‰ÇÔ‰»ªÝèt’!zsmáž K‹cÊ¢ •ÙæÒ‘Á5£F Mglù!ÇÕ;duNɨs}~Í>ÈõæÿkÉ¥÷òl/z_yǹ͑´€m'\ãÒÐLñ/D/Ë|¦Vâ!ƒs"»ªF5Ú¿˜‡ik…Ñ|—»ÐÆäúQ!>a›pp$~÷ôÈYÃþlÒ¥Å{Ayl‰a]kÉ´;ôb9þRŒuP¹7ýãË¢EVàÏ(emŸ=ª—_Ï:!#b2ú>7üüy;½»ì0XÄì wˆ»+Ãý„SæÊ1¼`ÌÜ
+¼³Ô‹ÂüçRwF“`‡¡ÀK'{÷ߘÇãSÒØfÁó%±¤/ S+=ß)I‡b²¸/g
+È Ð`6áÖ«ìßž–œ›/–¨%ô“à"eôHWy‰lÙìÆœY"ÂÆÙ/mSeBª )W‹¬ ´êˆM8¾`%r‘š*Žô6þ¼=Rî0a®›è‹õß³TÖSh¤°8€ßEFÞ+–ðJ?3<.Ï>™Èä„K#ª"u2üÅôÅŠn#a1£(f䜇7¤VM(™eßÅŒèÎ\š½Ý&¤+›9·ÔŒ3öÔë[
+zÿ.‚q‹Ygf6q¹­ÊH.Çëµ /å£6x|BðWªé<DòOÁÖ>qû‹ñT0×ç*)?»K$„lÚƒKú]æà¡ú¦s^*Í«ýÆ¿n¾œ|e›ÝÍdŸßýÍŽ6ákßtB›^ ý2¢¥•¤uçÕë]±FžX?GJ+ÇæÅØ›múZ'Bð\¾Ù’ ò+öKɆpPÐI²JÀÜjU pè4¿tps½ǶÜ8rUB+ÃðNëöã:R6‡ý5­£Xµ•å@B¤.=Zh;FŒÚà±û£±üé<9ç±ùUf¾>M¸@KñÉÕâv¸(ª¨œïè¨Ôº/®L»/Åpé
+Nfñ¿ÎâaZ¶=ÚFLÜÒº¡“G4òå‘,ݯôäåuúÅ\–À@ÎeÖ'e”|j­*“P†#úA`þó$ØžZĬ‘MåA"l+1*§ÿÁVU[£Ì:JZ/ÖzÇ9žn¨Þ_[ãº0²¾8Òýwا³÷ª¼:jmƳ¦t I›ŸºGÅÞB
+ TÕ¼ØA­ž"ý,ȵ™Pý@O €Ì}±ºÑEö·Ÿ¾ˆá^¼Ôõ©YŸw™HÈPH.[˜ M:æýòö³ œq´ m
+ZêÁÌÛ…¤žÊv¸sSÆžJ‹“Ö$ŒÎf'aýä«<ݧµ½<ׄ‰…/7^„y ÓOWÁ L§o-Õ£úHñDœš\'›zåßv $½¼¦§°Le¾á¼ØÛ@°»ˆíªh9Z¿G**u&ò‘ªk¼“W¨IBÁà”°Ü’Í‹O<\¬÷ —ų yk=ô!Æz9@¢åÕACkèT\d
+y_tÖááˆãÅø(bT`2s“#ßõöp£KªŸ„3‡XŽ°:èS©
+Ûp-Óäiˆ»’8¯™Hl ‘›™Þˆs–8m}1WÓ ¹Äí ^a’ 3ßPR ¨AÖ ûFrŽÜhö¿T_à€ÈsË´D4ÉŸÉÉj:èY·iò.0:í‘Ôš¶©¥W!o‡§¸Y•Ðŵ~&×tæK. oêí§#ã HÙ¿ À–‹8¡d3œ¨Ò Ìfá3¶ªRÁÔÂ|,F Ô8’…aºâ¬¹í‚e ùë >8>—Xë2²-P¶r— ¾%®ÃlSfQxTP†>¢!*i ñË䫂Ь áW7ê!rK";Ôw¶6ñ¸«»Ž]•ê:ý…!ž6ËÄl8(¯åÕ–‹mþp÷òµAž¼ÒŒ¾ì“.©ÂúCÖfÖ•ta¤i´+ øVl¸Á=ý±‹¶ùAöe))"aoI¬iÅ×,ִɆ¼ƒö>ås0(˜–³)ÞÅanðŠT)隣¹7Šï±< t5§urU ŒaºÍÓ?¨>½Êð½ ­lëȧmT.Â~¿«ëŒú²Ä"³ü³xˆÍ¤üî]êh.~;ÃõYŽút›:Ÿ3òê4?×6-²—óц„IA¢u<½£`wíͬ-QïÔnÑ}¯üJHæ«ë©Ó1M¥«&«YÇ¿•¾29F²ï˜B´¢×HÚfi¾ÄÎvNát2O¶çIßnÉc£¼ÄïäHM¼á—Ñ ä„7¹ð“váßLFï¨;{ÅîA೫Ì×RóThï‘}6Ö0ÒT+CÁåÖÓé cׯƮøVu’V/Ëî"3JQhꈿgÅìJ(Š)A‘5tåâ$­{@þU©¢‘
+Ú³Âø ig0Ä–GüõQtE Í{‘¤ÜKìG˜/´å*ׂUs(Õrˆ0­<åÏòCªðº¦
+}©?4
+ÂÚ¿£Sª0 ÝV£Cà#4W-ÅÊÅÐÙáa[4¶ÿaÉ=?\ùÍŸUåà°SòUûÕIÿÛÁëT©!ÕF`7(q˜1DgøpiiìÕàe¸Vä(w1·…Â=KQ˵V"qÆéJlcí†ÇÙÉõž
+“:ûFc·Š”¦|ƒv°iJ•|‹‰ «¦X MÍûc[)Ž™ Jòb¿¬Â€—N<àÜAz5 <èuÆ$oÏX$ä·ÕüØIÍÝA8ìëKÜÆ Föœ–Xñà,‘ÁIë%^èw«öT>¤ ƒ¦én}¸P°Œòœ_  ­ÙÙ”ªBéf³˜ùà8·Â66b.è5—Rã&5­¢Ï‘ÆU~vˤ;è7 '£#5´µËìÿÊ‹Jèš©ùÌÌ+•ô‘“Ô«8#µÒmÊD±KR·öÐÖGù›ÍÞ¢å!™i>=×¹§§çg‹èQ­±SUÖPó#uÃQ!ÞÏÏ À‰—FœÛ(öp‚¬¡œ­‘ã—õ-˜³èGE?ó82:î™Ã–zéYDœ©[wl%S)qóUÂÚUä•’ø4H:;Hgö¥eШáEÈ´áP暯k·•×šÂòöfá¼Ö€ÐÊ옅‹¢òý èTB¤¡-bŸÒ:»B] D9+ã*ûè馿=?ãžsñ2ï<vOˆün¤|åBÍÓsöŠ››¾=ï–ÚHoº;§E¿}T-¬Š„ýYÖ[ì‹ ¡{Zš ÷ ,›³Šš/ê­p>Lj¤Þzf¥1™™í¼8¡C·P½`nÀ"®úLü„ûþƒŽ³ÔYRJAy”®x[n‘rä½N4%:‘dí4½”¿<w_Ì-Z—‡$˜Þy¯*U1$
+|F&Nî°«t››ùa½£Ë‡/ÿ‚*šé®ëF%^]¬n`†o¶Í@œÃX]©áXŸÔýÒY@CN5ŽXyŽý0[£b¥´ú$*iæÝ„ ?^"RùÆõ AXá˜e™ÙqûT4sf“±ÇðÅì@NãÎzÞŒWÆNX»9ÓöýˆI7µ\Ý>¹oœPO)µ¥‰&àv|äPY™1zN”VÍáçãçò½üJǵ{V¡”ôä-²né¡¿Z¥Õæù8-¥TŸ}\¡)&úêtnEÚ`šÜmI'Œý2/ûÃK)ð¸l?qYZ؉ï5 ÑדÅ”å¨]ê6îi9QŸÚpÈs=Ô…¬èßÖÔŠTSÕQuzRjï/¦ûCg}Ã?÷¦‰`:RȨ‰
+endstream
+endobj
+677 0 obj
+<<
+/Type /FontDescriptor
+/FontName /EZYWEQ+LMRoman10-Italic
+/Flags 4
+/FontBBox [-458 -290 1386 1125]
+/Ascent 689
+/CapHeight 689
+/Descent -194
+/ItalicAngle -14
+/StemV 56
+/XHeight 431
+/CharSet (/E/T/X/a/b/c/d/e/equal/f/ff/fi/four/g/h/hyphen/i/k/l/m/n/o/p/r/s/slash/t/u/v/w/x/y)
+/FontFile 676 0 R
+>>
+endobj
+678 0 obj
+<<
+/Length1 1843
+/Length2 16027
+/Length3 0
+/Length 17209
+/Filter /FlateDecode
+>>
+stream
+xÚ´ºstäݺ-ÛV'Û¶m;é bÛFÇéØFǶѱձm;Ý_úÝ÷œ³Ï¾÷ßoÔ(̇ó÷¬¹VÕ¨*rb%UzaS{c „½ =3@N^ÕÈΙ™‰^hîjcä`a`bbƒ#'u¹XÚÛ‰¹
+jâ
+@ÎÒhç ü›$aÿ/§íç(?“>í.ÿMìs.kÚü+à þ¯6FÎÿäÊ))Él,í\€vFv&Ÿ.F.®Î€¯ÿØ>ï@SÊD]œþöÿ/—Ó·ù/ê"öŸW¦gãíkäþŸ+fdçêìõo³ùß—mboçléìâü¯Š@€™¥ ð/{ç¿kfi÷M^XAZB\U^îSxvôòöŸÓ±cpñpù'úo=a19
+4ƒcT°wùÕÿ?ûì?zI¸ÚØ(Ù©þs¤ÿgdkiãù¿"ÿ#Bø—+•‚½“­‘Íø,%,=€¦J–.&ÿì¿ìÒ.FŸÚ¶3·~.Ê?&õ¿ÛÉæS·Ÿgåߣ @ÏÌÆñ¾OIšXÛlÿJ~Žá?Îþ/]
+ôøG)
+s§¢7Pg-‹LîÂ_6Cmº  ìM>{³µ)<I¬á0ø½<yæFÎÑú–ÅàÈ«CO¿é+œOê5n•.7°#iŽªP’Ec¿µžÆæZ½7'6·¾ùZ´“ÙL>ù·O5–i,¸X¢Zg­X¡ eT$ æ“N·+m\G‚`ºÆèÚ…;ؼ>d¦¶ü*ö‘EUÎ!¤ûGÃë£Û@ŒŒ¢GoCy vLnh—X‹Ó*ï©W?wáNÞïšù“§êÑ)–”<µï9.Ê“?ØdШô-(¤
+Á402èÆÓL°o†!_üö à«cªCƒ™©”}eïâÞC:c,>høà5äŒ(õ&.jj5¸KÒiÂêö¶àDlr[X£Ob¥7%Ì÷¡ @ÒþÖ=¹]¡¶ŠgÏJÛ1‡Åò«¿—,Äì +3ôš¦ÉyËDe‡†®- q(˜ÓÜ…DŸe[Š=Ýé[9™,7y¥‡:RéÊ©¶V`®Þ6v³¥‹Ð•¤Lù‚ý ð7mgd+ç8e€ôYŽp­i ¾ry”KÀà±rTQ&=^TÖµŸ;fw¤F˜Ä÷‹"ì^ô1u9b†5›ñ­øÆïFZ’C¬¸
+®l’‹P
+\uáAxô§$Æ›¹kÆ„œ}!¯ëɯÊHÒþSø’¹þÅa ¼î!é*õ9OÌáK>2 *éãW ÄyÃÊ\ph'Tò¬Ç@¥qà ?ã)……/öQÑ%T°“”ñ,Ð=-É2T½'ñåQbèdT=}Æg§¶uª>¤R*‰!à¯ÅUhteÈ’g,µcñç;i%?Y4~7K[bÑ©“>>Y¦ÚÚ[B:3W´~Šõ»à(8×SnA® ˜I‡›ôbÃ\z!IëË, V0?5“Y}#Å­œ‘ÂIJXLñÉs‰æ¼.aI‡|/AÂcõŲê Ïš24aYvĭù®ÊäFŒ7ØvòS'[UqO*®ù‰™sYÌäp †Œ‹‚Ræ GikÓõÈ_PÈ•¥¿Ķv‚/ï2.ÌáFiN0¿ÆnL˾;fèWfÍÔ^ú<8ÑþÂܢõK™ƒàBBò0A^„Ìwén²èšUóæã1€-]X+‰ø6ÜõŠVˆ rtÓ|}ƒ§rJÓ·Ê`=“cÆÍš§/çÙã è. ©ãÂe{ÖAV¼É0G¨Ô1‚œøbÈ(óÆ-ZØLy€IÃŽ\›íôÐãm¶Ñæ—jÒ°tžüý ½ë’ÑSí´Fèwðq½SÌçË¡ V0ÖŠåÔ_Á­±$Ð2w\ͯ‹•¹=\¼¬¦MˆZ_OòM­Êäï®z§qŒjöR£q#dðhÀðhØ‹1É‹:êJÏó‹‹«S<ÙåV-6è­Ì¯õM›.?âVåê=õvþGnrô[Ù×dᥤ·RËE§ÀÆÜÇGd«ë34å†,]ƒ4\êWBêDÇϦ(ÚfÛµµîJíÚé‹« Ò9,mÝ4ˆx¿àÜ×Ñ1OÒÀpUïêÖ†ÄøQ V[¶Æó«eQs¥ºãžoóa®_os¶lÑÅ1*7ˆuC½ö Y÷ö;tÎcØ¥ñ‚œgtôuÚ­Mä}”ø7ð
+)ôä§x·Ü2<­¾(¦’×¼RüH ´Þx yò1Ž$O¯~àšW>Š03rÁx 1ï‚.xs”õÞ¨BÛ“#€=²ìGP±§æ´ø½ >ÚÐÌÂŒí×ÍøyZÙ€®nÔ"Uíׄ-A¥6G¹Ö%ý? Q©ñÄ°‰j‹Hè®ëDyú54„?<¾¾Ÿ\Ç=ïW£§]ܳ"÷dÒF®—¿k$ÔS¹Õµê’¤¶·Ä4¼Îœ·q†í|BÖ $ã¡å’l¥¡~»ÎáôéŸgÐùp@Œøø=gÉ{#¾_¬3wú‹¤Óææ#¨©Š:dL“¹Rˆ­°­ Ý&½^©#Fr¶ë¾ÕÒ(ñÕ½ÇZaè¶ÇÚCV!Sä2z»eÖLÙ–0ÉÇóˆËÇÄkÌ%$çPuÍ«&ä+Õ” •Ö/ÞÙO~ÉŠ­ –.¹ Š§Ö-5`aóÄj£ H+ÈEÇîÊD°úU=HöåRZ( e “Cß³Î:ØëH¶[+'Üï^1„J6ÔDkŒØƒØÃ3>û7(Ým@zÈ7B¸º SkCþ˜–|ζßÏÄPÓÛZz‚
+ÂáY2È(NªÙ&p-&Œ@åj4ÍÙ,;ØÜ‚³mù{òKo5|écД0fgƒ& S²Þ
+ê>Îóä¢g„\Z-švè™|WBÀîEKG—Æ’æ”cMÇ.7Ø[H:ž&¸v£¹Të"FÆi¾ã9¾"ò%„#»›îoýpÚÕBG¥ëî·ôÄ»ýÝ+_»ÌµŒ} (Hæh]ƒ*áÅzF¡ï´7]žÛä•\ºÑqO¾BÞì—¥BÞ!§ë|1Ä…ƒÁ^\ë³ÛÚfò[Hž=iÂ,ô°,Å°‚õªÌÜb¦6›90”j´šNð—Äak¬ñ—n;„¿ãöù•›+Œ¦Û­4 ©Ðü6ÖsØ|«Å¤îŽôÇ\Ú¤ff¿q”ÉÑí ­šo¼øؼKµÈ¼Yïx‹xAþ{˜F|ñÞ£XÝ­ïr«g33)^¼Ûä"Àùº2ÈÓYãÔÿaÅøщöK7XÖy›$*ôÍu5ø ’Î4.4Ñ¢Õ¬™ä;˼ú
+IH M‡ïRMbyç>VÑ®í¯XåÔ%9«|µ“HÍSï™âÀýMÝ«¡l×o3åY¡<ù\…Q!,äö´˜ÍAhÆD>0ß{¯Ú½úÞ"á©zK 0Ò§¢SEFDiÊër9ú¢ ]&4ï,Lm YYÙ/dõW ±˜ŠÝWgß2ÒÁÅi‰í';RqAÈû¤pŠÉ3÷¨ÓMñ€Œ¤b)8ëœ[;-{5® xÇ#
+p½§½ª5²®0­Ï=ÄŒÏy¿¶eá&ðYí&66ÄÞåo–ÇçxìT?5­¶ÉWsÇí‘Π†H’·’,ì·Ý’_>FZ| ²d
+¥Õ66U7è² ¥ÑòçËÛS‰(™sZµ±hÎuI“”Á½o
+@ðFáùè`»‰µ^L/½ÏF› ^KÊ¥cI’‹Â¿½ü„–=$+„V™ul2åˆ6Ä=³­†ÿD[Ÿ @¿K¿7;Ì0 2ÍÖ¾u)ÿ’j" *÷e%áÙ•Yc€CñnÖ;Ýïco-|2ž«C¡ðÚ#ØÔš€nŠ{ùé‘D)CéPÎÉŠWþóªÅÜQ“ÐèR£FÅû=öãv)Ä Yœ}¸0`¿BkÌF4˜‰Ø܌֧¬An¬¿kºÚ«>gþÁ6 ¯€EJXgØU²&Á d“c“¡Mc{ñ±;
+§c¶Εï)—ëáTD4ù$+EHm9£kÛ+oùê7U¹‡—aÓZq$zf÷ãÑ ØSÚÈSÁÎ,ok¬ä̯ñŒJ6ÂßWU…]é^é †ÂÛíCvñ¿ð¯M }µ½&Ä7=“î”Ò .Z9‡Õôg¤þŠ­ J*ZŸa%¬s 0#û5 Ïå»ÿo{w Åo¸ß•ßKÙ”­Ôä¦ïì#Ó]ëº|övH<û,Ò*C™GQsþ.Ð%Øõ„.XçåÍ«»ËñnŽd¡–Šâ`N 3ìó*¾æn
+ծѻŽ
+"ü,…¢,É+•œ2Tã«Ô¡îvFÂB 3b*0óDÉEŠß`®-—ïÂg˜Li©xŠlÃíWª£QvC6JÙU't\ý‹Ukpj`óÛ=NbtBóBr1Î|9J¾¶Ñ,æ8Æ—7Ä””Q²|säÊjAõ' ?:Ú2‘&»žv@1]VκejÆØÜÌ•[È°Æ›0oêìh!Ÿn&\îŠmâŠ5 Hªc‡˜í^üÂ(àH8OÍu1Ñ÷_†æxÃÅ ¨\«DÅÂ’ü7xËmÜ&n™BŸ.äC#üð—¥
+´Jñ•6ܥľë3ëãìئøáo0÷¡Z[ŠnC¥ô= dqÝö߇EõZ]îWÜC:g\w)í[x‚7Tïg ‰pƒtO¡‚NÎQˆ¾™1õnWÏÏÞ5[—ifoå?DvŽÙ´[õtr¶-B…@`ð¾^ÔÃiùî"X1¶ô4¼ñô`9^ÁÆg˜HŸd¾¼ÒW ›iú÷^¾võ PVã÷¦>ÿeGgð¾IŽWƒHÒ÷›Ü0Í+-W<W«Îl’»ÀÞÔ;Î6Çê!d²ú,œ:œbÛ¹›w /ç¥ ø½«½Dz.jþfs¨¯eÉw(´im—”àHýà3vê+=Ý[¯„eØ$1kMmµ²ü›wîƒhì`”‹¹° ¢x”~õ%R,Z‚“Sf‚U*ó!¦îQîûóÏ÷qÿì\[ >îQnOSƒCñFŒ ! _DÆüœ G†ÿ´>9:µ|[¿½‚u®‡ŽJ©jqPòóZë
+“T†“š°Cz×Y’ÂÛÆäy -k„¢Õ‹Täyàs2j
+;;ΙNDT™¾–æõáòï«U ž°
+ìÞ&öï꼉™þv`»Â²dW7|AXH¼ÙÓ¢öø~¹jH²f ×ËUÈ€ ƒ}¹Å£"ð,˜NNJ§L¢©8$šÊDN=È÷Q$óÖlI_móÙNBôÁ¤kÀŠþLI¿Lì=¦ñEöM„MXË5â•]ù`«Åv¼®¹g€‰­xj§Jª½ôÖŠf„<¢R뇹P/Ö;Iÿ¸‘L˘û3Шl„ÿ¥²
+°w
+†ä—‹ÎTýÎ@ì;Vþ´A¾áëËW#ëj•à"_´æ7qO6Úm|x¾)°¾»?QJý'iàŽz‡¢Âå4ÃÇiðC5SI†¹†ßÛszÖÊ«a0§KxÖ9SRÕµtÔ¾$âEJ%â‚,¹¡ÃE˜`©aèÇN«µéÝëj„ ¿ù˜êúÑîJmR¢7ŽŽi ¦{€C¿OAn8c<‹ï— —J˜åÇx[w\z”†\k€¨MZÐAØ>O˽Dzë³ú£5®ò¢]x´«ºTAkêÒ@îÏï@i,yÈœPxÐioÑÄpñÀR!s˜È¾l­I;—=1¹×z!³µò‡
+òqºepÂ=íWo5‡hÐw•Á)Á,œã™ô0Õu„< |õþ©I,ûBYCÌšÇA¦ñ‡×iÆ•“µLaŸ³j®îEJ!l»…qþÀÞ+N·ª‘‹SËá½â-Rº•è;‚ù‹ŽQšˆÂèz©oâY¯¬§~À^ÒÙ:?ëH³`Òª9]6@ùÍ
+P§ÆNß|åŒ( ì*%Ïãü)Ôº‹ê Ûi”Ûî”­½Ÿz
+üÎB¡‘†ÕÓÿûWj`Ï×†í¢®ÑÚ”CÚBC\ý^c>,#§ü'^Xú™œ P²7é×ðÂj±Á–¼y‚˜Õ.*CÙ’ÓÌ]¹x²ƒ|¶˜áÖ*L«ý;y*×…Ãcµ#A±‹öÕDØL’FÚ=zo,æ Btï,×ÛÑ©%[ šT,Uš%¯«m×hH4á=Ðá>sž|•â!Ôbš ­˜fæ—µN,¯Æ<òNb›„(Øk–…²YJœ¹¼î
+U!º'eì‚™J9âõÑ’†ß’‡6ð/xú¡Þ™ìÌñ„,0*~¥´âd:g9¥êq&ƒkçiï‡uªbQM殆ã²7,M!Ó?Qt•˜(ES¨ Üdªø±'3G‰®=ÇÇ»Z¥'¿ê¢z`ÀÁ‡ŽF]ÍöðÑ]Ò÷¡†K\æã®H8'(ö# ­²ºã„ƒ5l;Ì' ›8Œeþ8íe‹ç¥õÚcæ1Ê ÙXžäò(j€J†q^æGÄì4½ ˆiû­‘ãUÜVV.N2ÒÙöBf4e'’½ÝP‚¶4¹Í¿¶=A֮ϕœÐ|­\ÑÛ•µ¢(V=\fêî†FCÁm›&_µ¡všùú |Å=v€d#m«ÈÝN5¸K"x½sÄÛ/¶FG
+KÍ‹Fx ½˜µ 4ïÛ(AüJçœøô¢¦¨&.Ê{ ešÃXàk7tKmG¼`”{[ÿ=ÕëPt6ðÑÉ é&¿Ž½é
+:6 ”ØâÓñ,zìÉ@„RØ•#›ÉsëÏ7ðc(öB\^›ì|Q©–"Û§ªf ïÔ‹"ö4Â"¾~<¬BKæ6}9A#
+ö[?ÅT`]3 ìÙ1£6, ”µ«Î͉]H^PºÕ´O—÷-žÐ”{`öÏ:ý ÕÕÆ€#Zxj\íb×÷–ô?z• žî»V{àÞÞ>Y¹•1LDN:p{6Ùg'^¡¯ú%ˆû'Tj¹@=žN°’Ó=€dõÌ΃÷ NqŽz4»
+•#+-²©ï^Ð ©ñ†2ØêÈŸ¤4ßÙ_òïu÷ŽÌYœÐSöÙP/m¸î gU÷ èêvù@á†kÚÉ­(Á,jŽyÿÙjŽ>ôËÃÆP¥Á1 1
+ç\ܹ¬ÍpgâNSÌHËлŇ¹N*œ“cµ O!Ò)“| 7@^1èP„ùž ‘+ô°!¶ÀZ¼VÏ’X%ey̺9óå‹xœ®Wç,§©tóD@czD¨ ŒKh´ו¥Äª‚ÈëC)#?Ö:rCP ãÈGr€Ð2*_%¿
+Cn-Õê|ç>
+Õpoè¼b˜@üã‹Ë,ºìÚ51B÷•Ó˜£Í(¡”Å kRl텀Ϙrg†7m4¸‡¹9ÎÊv´”t¾pµN„Nìªï;HJ*zÔw‡åŸA&/Á¹¦Ö "¢Gb¡oA¤ÆÒL..X‡ò}D<üS{ÐÅQvõ²P”³FÀüß;‘,G¬KOÐ nQàâ¶åù‘9Ùñé§=½Y ù×J%§¦Êbß8¥³£&ŠÒ–ð{ôÔ–u±MbQ$ôš­¨§¼
+Ã)
+îsH¨+ß8š#±\mIÂöÑÊkš×Ô1¥””å¿m½æ‹±éLbW5™ÛX† !°¼F/ J$ ´K»wäØ~hëUDˆÈ¹nzÆ{¸PYÂ3ÅIŒ¿×1£·´„Èt ëó2¼I+m‹dtz©§¯@ÕeÞüüå06uÇkãƒ
+ˆR°¿Q ºõÚhȇ®b€\lþÊŽó¬B›­G’±˜bú‡ØºQãR/Ÿù¡Þϧ‚]¤U§ªØΉ|[¬uNP‘Ô[ ž—\MÃ^ +Ê—?Üø9*ˆÁ;ñ@¹âøü3]è
+_s‘ú)nÂÌ‹X×¹Œv™©›A_Ž×bùö}õ¦°þ°mÂUD¬«“A}èÈ-
+)ªn—ÙAà:wU¢pµ…‡‹®§†ï¾¾öiJì»îxâªnK!Íà×øίC—CñȲþ!SÝâÛ †º,,I¿ÂpgùãÔëG7¦¾è¸Ï‰lÌ2.þS¤<Œ!Êþ"ú)óŃ÷†<òÙ×CýÉ?ÍéÏ^”ñà 9ñf>S¼œ& 2ös[Ä9‰‰ª»qVU¬:z6·ôïË¢QïÜ0* M\xj\@Ã[©‰³†ï/\c䋺ºaÑŒ|$ÎÐùíÆh –¯ú,0ôï+rêö9A³£ÒùÏÅ,&‰”c™†&»ÛpXM­\*1î¾=¤b¬Áèö\ùÇîh5@ÿ™¬©æû7tbUÅ1ËíïvÖêºÌæb¯SÁð/ïz\ÝRØk¤t÷´†½
+*8 Ã⦓ÁÆe•{μO–G§»ó±ÔÂu…-Љù…ò²Ð*,þåíø_å(ì¬ìEMÙÚÕú9çbàx½×;b¶›R9' N`Šñx”_Kî"³‚º ìÞPÙw¼£Óhƒ“ëž/Du·ýôÞ¥»‘ådFƒ¤zãNÂ÷–mØãTîy5šØ>à &ÜïY Ýü ° Rz™àœ_¥‘|ÿ¹73%ByAÝöcšzÝõ™Š ¥
+M±ê[FÚC‡ ÍEÕµâ!'_ðÂ&丞ÍQ?qxˆQ„ýõY?ýùF{í:J&Ø(Š²Ê_¡vSò@ËÔ4k‹tÓV¿ ÒcA\v,´7xB‡-&äªt äâsØö¤3éòð¯5M'Þ4 + ‰Cmž‘`£+½Á ªY»] öª\¨nïj òEh1°Fz`º¾Íøx&w;Rþ’ ååØ©m~UOi«i“&ÊÎuÖ£ôëèûÑT¨0β‘–€H¥Cü€åòÁ"&CV§µyøq'Î!å“'ÕòÚ•Ò*ŒØvé!¤7<$D=fPEŸƒ†¤ƒA‹$¾Ä’*à3d0 GºíŒ‡#4H0,kk3k¦ÐÙëçcë$2Hä1‘®•§¤ÎûÇ¢‡¦?þý)HEf‰ï¾/ÑBë­t l zGú`àß±sW’À뛬¥bV¹;ÂJëv7Öë;Ñdb'áQ|š‰è)¨rõ[èÂé÷gŒCZãÆÏ`IÛ<ü¿GߦM™jŸ’"Ý:ÑÜõá¹Þ
+‹–;?=:ñ¿Ù@C‰˜÷Õ£ È¥JåMçëÑlÕd),œ™¦ü¸gLø’¦ÈÈ»
+Õ G K·¨þàG+BÖø¡ÈÒnÀοèÒžAê=€Ý¬À»>·“è‰h–LËAËiìIèSѱkÖ ?*X¶†éÐõ5¼X°±‘Ž^çÇÙWµ«€ú°
+‚ ´*ÞÛO_ÚüµÞG•p³ VÔ¯ çÔ̮ׯÍ2–-RªVé{&Q ºã†Ü·ÄüXäù¡È^Ä…:°/•6ý©|¨?$@†Ý²¦…Ú—‡Ï™ïúítŽr]A<3hÑÚTgªqC~ÅÞrç„Ñ¿ÏÔ%“Ú´ÈN“Ú“Ù¶¯XGd´ôÝSrÁ6SM˜‘¾gѶ¶adµozùÿ¿¾—˜‚iÀ¾p!< ´®ŠÀ¼ÝéTb¦6í V6Et9Hû¾Ñ!NÆ
+@/—O¬õp3W&+íŠPü¦>ÚȘíë9Å/í¶Cpm֪㰒¬,¨ÃÚ^R7KŒ[Ø>FáyÇš"~„‰{a“|¨º:¼Î²Zæ­V1qÊó(A‘’-†r‚ÁÛ+¼l– ~]nu‹æµ&œv´‘9?ç6Ñ¢~‚FÙÊJŽ”*ÿ½.I¸$Y:#"Ú#¢¼ªýë×ôO8á6 ®…Ö²k(4I”•““mRTýB'Y1½ªZ;EïÍ:‡³­ Ž­óOJÝQ“˜Hg~mÈ3ó0ó†x½°bØ`&DV§œ(´Æ%ÿœŽVéîŠN½_;Õ·hÅ–íÞÅY`rìÌŽ­PˆÕ‘Z5Ô‘^bnjFšo¯v(O¬Ð›ï§iåfRk»ð7k$tS@J¤[‘·Ù³×¬×ç.ÁuÍ5ªªï1Q¬¼$¾i¾^•G”·Ç×àTÔ>vÌŒØ<}<ÞxþSÊB¦«ßƒˆÓœ`3"¡"‚È=<­Æ胋O1ï+ÌŸÄGi¯ñ²C !
+ºÙMYV“íþD_}Tc~ëEYŸCôØ (0Ê…ÔI~ŒÌøÔÊ{Lí­"¦êûLt´a >öá™MFE8"
+åeeíúcètŠÂñη²û?`µÁ¼<.ṉú
+dkEB%+G(òá±t* ¤FD·ÊÔ·,ü"'òm/…< Úö;Ú£x>ÿ6á@è—.gñµ…Óž†W«·h‡äjŽþ¥vß|’A]¸h«}Å}65˜˜QЦžÍ=W¯â¼ÆŸ*Š½Ý¢ÒZŽ‰ ½É‰cÁÉŠ—wY·[÷9<äÒæ\§H<
+™¼/Aa¡- ·ã"·±u­‹+!›¬Iô¥¢*nZÄð„AÜx›Gž¡ÿäÏà07gàªÌ¹K.£6³¬«´ï\"­yÜÔûŸ«ÓÇÒÅ|› xà!ø½¡÷ÔÁ¸¤³îqš!2Òš²‡]Ähû$DZ`ïo!ë㠮샠IQ´¿Â{Í‘Q)Ë®6Á¨ñAIå:vê#é]ÔËÉÙø´>ž´þ7|˜çšw¬êkóõÖø¶ hÜѶF†–„œ[(Dû,‚&?l­a—éåc$ie¥Yq‰*RŒÊôRc‚©§PQ*¤Ê˜ó,%dW:×1[z²têv9ú Úr7áõ–èA–@ëC€G1‰Öwæ´ãIxÆxq-.C˃J· ‘û¸>±KNß@øÒxYéÔè|(›Mì 2ý ³¥å¼Ãm5f¡äÓèu¢/õú#KCx(žù¿SŽÛ½Ao4NM?ƒ³Íw­Ô»–/O¤f„‰žã.ªÔëñ !o[ðÇoÇ,rÛ¹¾aã÷cº/ß»»lr‹ÙNØ|\ô§m1 ;Øåºäɪdý|Û´¨œÜ¡Ö52ä¼áÖ¢ÜÍáÁF}£µ ¢¤à'zÒ+½i7¡¬-Ì$'Dùjj¸ÖM‹Lr½ûÜF¹n£v~@¨Gì†O)ûvç±7{DˆJ¤Š‹FXï¢ñ!×6³çðŽþì#3xêæ¬N—m;yFè¯NÀ®sâ
+þ<ûÓy@Qkm„XWK5—©R¶!Q]+xÅ‹¶R(9­Êâh_ GUÃ0Þ ]´AWËÕÂÚsº£Ž1 :¾¼±>ºùí¾mˆŒÇ[Où+EŠ^y%͇MÝËtR¿¤ÄÀG¾?]H¤$ªµÛ°c;Ò9¨ÜÙà›ëú¡Ûêp3ÖìÐ4zY=ìf'u6©*{ó¥¬û—” Þ!â/šü%gCÒ ÚGXü ”Ñ[ÐõÆÐÙ¸.äÇ.Â:ñß>k*j.ËP|ù]f¦¹Ú€EíLµØÆçýYÎ »D¸ 6uÜr…·›™%Ïï~| J,êãÏ=[*ª#e&ž£ê>•D¦%Œ©Dëß.‚Ĭ„"4°®i4c#Õê+ ð:®ù]í{…@Ö’E3â=7ß<•Ñ²¤FqšC åøB§V+V:š¼òTÄ$PxKÞÊñ?Ϻ¢¤µf ¯Y—ÊùöÎÌäw‘Ë÷”;›¦ëR?˜LôL!6)hìÑü1ÅX¿Ûù'´´%{[Þ@ ‡zw¨¾ÀÙwÚ¡æøYüf!§2Ö@9)åÂÉGßÏŸ-•2ýùÖ±¾î< ˜Nè€å]ftðÛ µýÔµt™¿hbb¥lÙmcë‰öq¸O|ÈòÒe7V(ì+„°ï²c;ÿóØ{÷p‰Ï’N1¿±êêä)k2'NR,¸-e•9utîêñ&L6ïZ%”õ“óÄwÐÌ°¾/ž™žw¼µYÍîD&^ÃÐmK•ï£f@zé$.]Ä&Ô­¬ÕAqìçÕ~¥|°#!¹|öþ%û¸{D‚AœügV´íñ–;y‚8Æ-SjÌL-$w½@Ž•,ÝåŸ^¯„]‡'ÒkP9ú8ØI¦áCû¬Å?ÛÞ|uSoëÁž3tþ¤\ÛD¦- þÉP¨M¤À€ßÕ-'ÄÆITŠ¹÷¥ï^N‡‡h~Ú·˜Nà÷*0Çß'8
+˜~8>\xÝ–¡¿Ñ ÿD¡«H§½¼Éžãèâs,´¿¯ð¥t™‹,\®×¦l!´Z­k·¦U ºR7Û `²d˜üý=!ÝLW*®ø¸«¤qùebw¯“ž]¥5ð ~•‰ÏªÓÍuoYÙó08`“ÚÏD=§5ù÷—@#‹0/Mú¯ÔúÄöÜ•÷ ÄÎÅ
+‰EŒ'Š­Åy‘›Ü_ϲã+M_Fèĵq''›M¿_Õ£ÔW¹²x-Ò×Ä*¿zγžsmù ¹Ð¶¼¤ºþ¨qï‘ë_·ÜW=n§d8…fòx0sò¢¹……a Ù™»þbqðv{·eÕ& Šif6 b°Ø;wIÜÑ7¡EÀøA^z@©zùÝ?BC]þ\qÈ¢‘†êÊvåÏÑØíì-Ý,£ý‹b¡=¿}÷Dî‚ë*ß…Ò51ì[9 ·Gì—Þ v{T«iö™]I oçoº
+¾åÓSQüâ’½­C㘶Ö% iVª#Œ
+OñÎÿ1>†;¢r×$\×ÞÕõ ·ôI 4µ4Ú’ú#¢
+Êh¤¯–1¬jëíˆ9»“ÈÉákøð¯§qˆ:ü'²|1õPÐuÉ%¦?»Í‡àŽ¤ÅóV$í7´ZèU)a¥h•v…<*ìwòV¬¹a|ý5X°G¶BKħKç~ÜŸŸkošÒªª‰”7†n!96>ÏkÿùŸ£9Ÿð¬¯ÏèäFvû‹zQ•¡˜>aÕá,=[ ÈhÌŠÍ,)ô(VXŠ;RsŒZPúÛøCàr{È:”ñHì[Š7¾üBŸào‘Ž O³Ždã€Àqø!‹ îì€ÖÊÖñ‚]ÉŽLˆninϽc^©Ü¿Ùœ(¼òJ¦{í1Ù
+qûüh¦Wû
+í碢Ù*ô¢]P:µXc­žƒ<ƒ)(ƒ5÷õÝUI¥ÙTI×㎅Î[m±Áó”dJUå!¡…¢Ï0&å(`5í­ìXõüOã¿ ¾ïÎëK¼4éCm“.¨`xt6æ ‚,èySM¦/Pª77 Ð}Æ
+endstream
+endobj
+679 0 obj
+<<
+/Type /FontDescriptor
+/FontName /PWWUQZ+LMSans10-Regular
+/Flags 4
+/FontBBox [-420 -309 1431 1154]
+/Ascent 694
+/CapHeight 694
+/Descent -194
+/ItalicAngle 0
+/StemV 78
+/XHeight 444
+/CharSet (/D/S/T/a/c/e/g/i/k/n/o/plus/r/s/t)
+/FontFile 678 0 R
+>>
+endobj
+680 0 obj
+<<
+/Length1 1795
+/Length2 2230
+/Length3 0
+/Length 3347
+/Filter /FlateDecode
+>>
+stream
+xÚµUy<Tûû¿e²DŠl0fÆØ—dû2—±u•fÌÁaæœ1s˜B‹$QQ–ðM¤k)*í]DI·K7)²öIév¹¶hýžáV·^¿ûçï5¯3g>ÏûÙ>Ïó~žÁ¯§úì™tF`”@&Zž^^t4ÒOÈf ,Ùà FIJè\€L424ÄáñŽ\ŽBìDGA+€l†F~ Ù `*–8<à Ù
+p€þ~_?ÀÅ×ÇŸê·‘ˆ9ö‹åpîß¹8úÑü]
+[¦nåæFJ´ìs΂ÉÂfšÍ-Õ—úCœÒÛëÉ{â®íDyRHDÖ¯þ«ƒöIZ«ê<yÁW|7Qéuž×uÛælj µÞÈôNŒÏÄ¡-ƒrPßkS¥åçïlWRÙ*7\½[{'G­³¿½joŒ3Ș)šÒ­q˜XßaáØlL’˜9«8*;á;AJ²ý±k´+Ýçu¦;Ïêä~Þ}ÏÿÆe‡C,C¬gã…sçÏl$Yœ&Nêí«¨n0ðGã§Vª…ªè©Î6QÎÙŽ¦Üƒ®)S’[¬ZCK½í.¨´ˆ0sABV<lW¹ÿÛ/¦õ&Ñiy¯Bw)}Ÿ¼ûÄ…Hõé1°ë£ck÷Û½¯ï)ΘÍ÷îh¾®ø`Úsåíæó#§×¨¦‡gr6¦®«ùpWc÷fœl%1Y^¹nzU½iH·Sû\†KmÄØÛÕ{/ž®:]8··Ãø‰sÀ³¶¦3*Œ×™·i'–àþŠwÜ©xé°žÿŸšb¾wÅ]ïã–Å)®î˜±Jeå<ú9å þ•<¥pÎü20ÅÌ´H›Þp*¹è¶BýmIZníM¼Õ‹-Òö×FЯS‹’Ã2XuõcèkÇÁ¯HAžƒÅê™·R׃Wì‰é¼›î8È«Y¨µüÞGáopf\ëá¦u®›¤{?îIÌwSHmÍô{d¿ÙõÚ•Çê#¬(üÑDŽ¡|¯K“Fñ-<æª.¿2ëæo#O‰7„=® +:û=*vr\È©T¾aÏ‹6’ËõkÊOmÔ|&sq8š;’]o‡³íi‚¼mø/+úÚ:eåt^âkð+CÐÊxÝÓFö粨¶Cçúôs¤)6Sãoã5­RWßå=¨v¬¼WdZ"Ó¡W”ɬþ Õq’žÌ~b[yxzèåÄŽÕ)àdžE…V©ëw2 »ð|ÝÁ+ÎÖ÷²îþ°ï¹FsIk@dû¨–ÞÓ±¾öÚêcûíCj.WÚ‘Ç™lùygÛ’U³s…S{ñ—.@ºd’j…üþ¢å²¡ú׉5ûs5‡äÉ%¼©©ñ
+• —õ % Ì·„ýp; ­@âd`ù&χòã]yQ›^sŠóLõüð©RBþà§;››Ò¥´ê‚Ûú4Ó³zÏ­]úáÚØ᳞Nv¦än®2i‰Ú«q
+š”[O4¼j–$-×r³Î»¦bÄ6 {tŽ¨!ûÚ-zÑï yìhMÛšòŠÉ”n8Šþ‡ÕV=IqÇä+fÝ¢HïO\MÏ6ÌÞRöáÕµÞ‹`…—PÌù`â-)÷›ê·U·äÝ©uü2%ßÛ5Ïж Rd^¸<7 õY,]60jîÒvàüÙ
+û=+=Ø“·Z)}Õ塳ùeJŒpX¹Xº@ʪ Jü´–_û©Ód탳už#}[MYä©ÌM´ì“/®¬{& Bʺ¯Ž•äì¨}<㢾{êaI,Ì쥷T´Ð$Ä¡ªú/;ß_ÁçÛ’Þ®˜B]ïFm'r‹.ø̤-ˆ>CuŽÅ9jÌg¤r›½íã•l"®._·WÅÄè„þÌÊ4ÿuýÇ·<:ÿnÿi_9aתç»êu>´I–YZ²c¸:ûëì©Ç:3ó-MÔüóršêvoœbº·Ì3"$X§vŒ©C93n¿ìŸR¨n¬ËÒ‘Ýyãq²©âä®ü™ÉÔ»·:+Dí¢l±šG×hI [äßè¥Óïk_
+ÅKeµƒPRrMÎæ
+endstream
+endobj
+681 0 obj
+<<
+/Type /FontDescriptor
+/FontName /CCXVUN+LMMathSymbols10-Regular
+/Flags 4
+/FontBBox [-29 -960 1116 775]
+/Ascent 750
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 40
+/XHeight 431
+/CharSet (/L/arrowdblright/bar/minus/nabla/periodcentered)
+/FontFile 680 0 R
+>>
+endobj
+682 0 obj
+<<
+/Length1 1687
+/Length2 1361
+/Length3 0
+/Length 2400
+/Filter /FlateDecode
+>>
+stream
+xÚµTiX×®U±FAQÄ#‚‚’Õ @¶ŠÂœ$#ÉLœ™¤¹„E¤ÞG´"
+j¨l­»Ö•"nÔ¶VkAÐ*ÔzJQ•VµHg‚Vå©?ï“'™œo}çýÞïxL‰“°…r<†ãÅæsxA Z,F(•Ä¨ÉÀÕ¤?;*uj„
+“A‚D/ñ± q/]X¢Ójqâ–P‰4!„ c¤"
+DMÂlTéËD"YP„f›^w¼ybñ•Q´æé½aY«ÏÇ8ô›i$/]/Ôàéá×É‹ÞY9Ž©@,n NÑÚðüÿ¬Ü€^á:µ:Ñ@Ï'v`4¢AÕƉ—Üž18¡AÔ|(Ž <¥dª~’ûíó)„^ !¦TCÀæûqx¾>ýžfÙÔ´ªé› eî6Àôà¢õ*ËÄ IŸYV¤‰
+\†St
+Ðê¨l À 3e>ÅEè!P2SCwaܬ7ñÄ1ËjïÀ·˜õ,¡<&¡r:ýµ4òhåði;ýyùoÑ <^‰þµìÜ`â¶ÀÏðýüf@?û<YÿebU,ÍâË3³É
+1ÚaŸ„[÷Õ~WÑ­ç
+¢·Ï©7ß,¶»›÷ÓW®òIª÷«üJk/”¤ g
+ÇÝÓ=ü‹|SÚy~Þ³ïx—ƒ#4w6Ô—Ü°Y;ý˜,~jbCøŠž‚C³ºÖîqZþá5×6N³ÜÉ34}â_=ãe‡Â…†œwvM íGË×°S4ªVÒXƒÚö¶†<¸ìyú*ëyˆµ$Æùlc^ã£À¹S¼ôÊÄyÉk‹ëݽ"4[nîó]éU—ñ·þÚ‡õ°Ý:†B‰—¾ÞRÛè™ÍþóAEKÃÏËöl_B%U}¿záá2ƒ-ÇÆ»ó«ÖhÛçŸ]ær¦³LUø©.Ì÷Æ}çgûš¶Ö "Ðw#+ÛÖ4ü¹³»ÞmNŽãÙî§Ý7.ÍE\ä¡#W¸x$ؽ¿håoöžþÚçSô5u²ã®ÃhÓŸŸð Q¥cmžÝ[V[6÷iAVä:(Fé‰sä"[~Éý Ó×ù»¶#Çx½ß#Í7kV©HÇäã͖Ü=U¶‚—ã¸÷ãa6WG ªK‹º÷žˆºôŒØTp÷ά¾7ö½ÞÕ涙®Ote×=j*–´ïÇ»x¢iÞz nç4:üÓ–FöäCx>«¥ûyÆÁuÇÌEŸ v®m—ò6ÚÕôVŸu¾úùàß•?N­I?–ÚðKu°÷>çpÓ0³°Yâ½i£2²t÷¯ ÉÁò¡ùEÛEiuC·JžÉRk÷ìw^‹»ª§OY¢||¥Nž<õ½¾EÒªšA^Ã!»ó]ÝÜÓÉGÒò¦˜:V|ðî RxøaÛEÛëns³ÀžÉú?~èŸÔ`Þ¼Mlô?<Éò/ǺÞ:jýÞ¦t»ÈÜfÑxðö»ÂO?œ\xÄP㡸Ýx4­*ö«¥?y»Èþ¶/¿Y
+endstream
+endobj
+683 0 obj
+<<
+/Type /FontDescriptor
+/FontName /VCFYYS+LMMathSymbols5-Regular
+/Flags 4
+/FontBBox [0 -944 1448 791]
+/Ascent 750
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 56
+/XHeight 431
+/CharSet (/asteriskmath)
+/FontFile 682 0 R
+>>
+endobj
+684 0 obj
+<<
+/Length1 1744
+/Length2 1898
+/Length3 0
+/Length 2981
+/Filter /FlateDecode
+>>
+stream
+xÚµTiXW-”Eƒ‚"à‚Ë {VYD$1„¥`e C2$™ É`@QDÁ
+ZÅÝQ\‹DA±‚ E@6Aân]¨ù&Aëò´?¿gžÌäžw;÷½ç½äé\ÅKˆEþŠSTº;d³!\ÌK’EcR¥+%%H!`P™t:‰LöVÀŽ`¨„Ãî€á‚‹–ã°,V
++»D'6ŒCü$9Ì
+A
+kØ+5g† ZŒíÅñ÷eñø”@B{(…ÝA©x"®õÖäóò tN³]
+½1™Œ`­$iÚçƒ}Â1Eí?.A1šü_ÖXÆjNA˜ § P$>ö÷ùC@¤O˜ÆÀñ
+„H Nˆž’6»?‹·a˜`òÑôA¶L*1OvÄÐ
+1Tš„p,‰ÆÁpB¶ÿŸ™ûª–o‚TÊd°í¿7ökoH†H“þÅÿ+¿PXÃÛ–ƒ)dô+¢ôEa!ÁcÄÃMÆýqˆ˜ /T$……áD¥Ïra[ši“²&®&Ds¹vú×6B±1V*Á,'­ &:ó{â84ܲ(€åãðbÒ:³ÐLˆ "ÀtvB%‘è„B˜ÎÎ ™A_'j%hTÉ OÀS@,¦ iŽ™Iw4%t‰àI“e¸Î4B Ü?Ó‰h(-…>Atg@“+‚©úr\ÍŒk%Kÿ´«—ŸvÍØE„ÄÕÿ™ ±S’A'ôÆ pâùøoñÈŸFå³è °Äd
+ÃPÜœ€Átf×ÙÌ”/"c†o!­Ò‰æ\k®
+µýÞnee1o }‘gy¸´uŸ¾êç[Œ_ÍRÓĦ1“Ê-›êÊuð¡¿Ì6o„*½ší¢ögXÔÈ/VŒ‰x;yáá<ɃÍõ¯'Tf:w9~óâÈQž'²ƒƒ/M:ÖÆÿ]¥³…ü*ŽkÔµn÷O¦:‹vFEŽ¶Zº»•ß“Óºö >0,_páÂL{ÿk·7ö;B"§0«_®¸ ›’aÁ›”žÔzO>mÅ„ïÂ!ÊžÕwOzš´Ý´0ÇïÐuúígî²Ë¢ü‡rçE{ÜvqKï\©œáw‰YN|² YgÎ>žzpõ!4½¥(ÀÁV=”¹Ápyà/óÎÿV³|KÏs5·
+ů®,N;¨f»n¨ê; GãvE]:£—^vJÁ}`\Ô®¨ðaö(yûëÚ­µ&HcAð¼æSæºÙé¦ö˜VÞ´wƒaïóÙÙÛý®<9§ÝÝ]py1’àöîäˆpÉÖ)½ƒIí­=£7FÕfÝ©èØV; Iÿ Zd™«g÷šJZëoñKÖ×dfPÊê,ƒ̤¥SáĎ˾ËR›v±KÆtš;ÛM ÝñcUò7j‡¾?Ý ¡^ÓþUg»åxŸðÌÞ•Õªµ«F¶v,k8¡W±ÍdÜÝàßüì_rRûGs^êí,/Øb³5òoW39Ï«r„þÌÛC&üµMSwwô5_Ÿ“a½ìþ·bKjñªq&8÷ÍÙ©fäÅ÷šFóÔáíþU¤“‰²RÊù§'Õ?®›;ÿï¦Nç›–?–²8gbqÏéÍÕ^ö”Ÿ[¸§7¼‡óñFjÏ->~ÄV÷‡ˆà\gÿ±CQ£Ãä=ñ2~98ϽÄ|72¦Îb†7uÚºˆ¸
+‹ÿ3øÚÓ±§&OlòTnfÓ#û–àÛòë… É'­åv¤&AEºA&h'‡uêlyw;¢üü£ƒ%Çß÷I3 ¨·:×ÜÝf?1§Þ•ní9ç…¯ù­eëSû Ú—0®–´Ë lÈw}û%"ǹzçV
+nºá·ï¤†<þxßÃß#8ïßÛU¹Ü8BI[˜ö†Öcx¹éz§3+o—?ß=ø¸¿cD;‡oseWnsñÉùˈú$¹M¬ØÂÊJUî[™X<nQIpZŸÁ,›ì”™›,¬Oë<]ùz:E'–<z†Õ¨òy•‡÷­_Ÿ¡‘ õƒÚ\vÕzÏ™~áAk^}JFã›}…/9‘bWùÌ»+}{=B(ÜŠœ†Ê›¬ùã÷âM1Õñ¾¡±ªgàNrm¼Ù£%Œ–¹ú#½öÞD¢6Ÿø†‘ÿVýÍù…aÙׂÚÏuzTŠÙOo/ ÷4ìZ”÷Ú!v†é õ˜B£]ù¹-Ùûó+ÖÏø–³d ÷ˆß%ŸŒ€‚³Ž¾ï«yϵ·I7ÌèwðVÓ·Åå5É;Ê^=ÝP3Ö,D±s‚íºï‘]«ÎÏ%u\.ìo_­¶*§°ŽÞõì
+ÉPnÄñ6QœjuUõ‰¦î‰]#äÐ)½¢ë'ñÈ ¥Á·ŽWÜÐ=ZóÐÇ ô…Ö],Uowȳj#-ê©:z€L¿ùêô}©¾ÎÃYQìº5µº/ô —ƇHÌæuÊâd²Ž…^Ç’¨ÙÏ3K({fêP7žÉ&)¿³ïMh 2;,fõäXÿ3
+endstream
+endobj
+685 0 obj
+<<
+/Type /FontDescriptor
+/FontName /PVOJED+LMMathSymbols7-Regular
+/Flags 4
+/FontBBox [-15 -951 1252 782]
+/Ascent 750
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 49
+/XHeight 431
+/CharSet (/infinity/minus/nabla/prime)
+/FontFile 684 0 R
+>>
+endobj
+686 0 obj
+<<
+/Length1 2049
+/Length2 24277
+/Length3 0
+/Length 25539
+/Filter /FlateDecode
+>>
+stream
+xÚ´ºuT\ÍÒ=Œ;w ÜÝÝÝÝg Hp‚»» îîîî‚Cp×ð#ϵçÞïý÷[³fÎÔîªÞ»««kÖ9k(H•Té…ÍìM€ö gzf&€œ¼¼=È^Ι™‰^ÄÞÖ ÀÂÀÄĆ@A!ê4v¶²‰;y
+` 2È0È3
+9ÿIØÿcÐî=•ïAï¸ó¿…½'ÂùÏœ¶ÿp8ÿEciìôW¬œ’’ÀÎØ
+ä ƒLß]œ
+MÁÍpRŽ- %µ’>ÝN€+–³MÌ÷köÍ Ì·—“âÑ÷IòjQbÙþÞhI¬˜º1SÚ1ö‘÷!@ËÖ`P÷Ï_ö-í$£>’ÉÎÓ.b›Íhk%¨‹r·w=F±L¾¡]%“镶®çB»Ì37a:Ú¢»-£âw,Ow€;¿=bÆD÷
+¯ÐÌåcÉÀ8ôt¡êЦä©i§/Çißç—ôè À*WïZèʼn¦m]u=¬*BÌ™8¹ë“v\wGŠÏ—%¿œ!ß™=(·ÛÛKJ&þŽôL>R¥Ù_öë1B,òë9²_†?.ëöŸ- åsЩHúù"^Øn}†ý¡™ZÍ2¢åX;(³X#fÉG¹Ò ¹W­Y…‰bÔCÐØå7‡Q^ý±Ð&TÚIcXbX×Ûç….5ù‘ú>] –=G?C¯Ó¿˜´ö©ÅíæŒÁ>¦¢ÅLh^ùìä
+Xg7"¹2×Zy>Ä’3w0$Bïg°ð§èqo˜L{Q°iÄǯGs3›—1×­«èWc ,ß³ˆr’ÔUbñø»onm\Éfß¼¦³òªpL…7qò‚¤@7c¶£4Þí˜cšü8L÷ú©x¸Äº?Œ™ågÖmÅ°\CDð÷³¨m #Ww†}ð8T,UÏYc(ðNÃ_ÊÊs³Qvx>.—Ë%Á@ó<b£Ñ„ ÇÕ‚úª¸ÌE;â›–R}eŽH‰Ý¾>âË*]w&ÑG|þ½T§¸4ƒ;&ï/ÂݘØWá?“b¼Uãvë¿«ÉtÈÞ_Â/¸n>ã›D§âV‹QdªfÔvl§”˜
+ïRM!_¤=NãÎ$õ еùa¡¢ Y“Å!¦[&Ê™QϤ#ö’†þëþ-EWØáíÄï°®·Ûòð Ɔ!·dd\Ù¬ˆ:„yõr2Î VôíÑ* ךíÐs=Ôr᪷SÕJòTÓÏu M‹»ÏŸAò† .N']%°©[±Ç›ã³wÌ5gu†Ÿ”© ©WysŵèòŒÀùŽv‚èØ:ª$Šˆ FÅ…šyt×»'öíÊK7w.³³É¢Í÷ñœ€Yóè‘ê§8Á@1·BÚh_f‹MšÒƒ(®XŒ‹­Æ¿` ™C.ÎAš²ZrÈ| Vw««
+î':“Ÿ'(ó#OÅ0yÕ2ìaeÒüØNÌõ¬¹é?Ò³oñÈŸF‹ˆçJNµsÜÂÏû)]*AV•œf@<B†GÙ“Œô^Ì`¼x¢Ÿ(ɶÝúƒ _go£wtEå.PZ³ªuÑè¥×[ß$³‘¤0%ÕBxóC´š2—¾YpËœ˜q:kú®ñb•Âœs¯Ìÿ$?‹­¬SgVP຾éC5z›Õ TÉŒ•KÑÃTÍk]¬ J«yÖ®£*ˆW B‹ DV‰ºÏȺ¥¡ô¼ª˜²ôfã723m¿nsåŠÛì˜xÑ¥®/@p/éÛ¼X¤ÈɺŽüàV¥”å)ŽœOg nÛìÒUõšc+w¼uªE0Pé!VÇTc÷¡ÖèW9d%¦0½ åÀ­žˆ´ï¥ãå#mýÁµ”.É©Ñ +–â´{ý ÕÍuZ£÷šÝ—Æ+±þlx"ö+½¦0Ö/ˆÇ±B<?°’5ºÔ5+’T6†·ýðT(”} SwLä½—T9µG&†Ý6ìã
+³7vÚræ9XBYË͈œß\s9Ä@$Ø€hduŸ@„ëcZ”(É-
+ªã>D
+˜ä7²z"[«(ÜS,¾«qYf£1µA¡õ^»N\-䪵öHët`\Abü²nÙ¼Ú~›§¿g$¨­ Ël$Ú·DE¼¨ò„H æä(Ü.@Ù®þâ&9‡ ¼ç(i3k9ÞN¼„Béø¹¢æ‡À)DàBÝø˜¾K˜¹½kûa{'}t~ÐBûùǵ®¹Ð2úPå!Sc^þ’‹Ñõb1a4ZêéV£þ²h^+ l&FÒ%aôòÌ_äÛ‘wb³íàاZ09_oŸµ¡b¦yÁ”YÉÙ%Ï6°ËQ?næý4~6µxâ)‹Š§ô”:¾’;à˜1tAMmμÔO@„ƒeß^&ŵlo(:D µ/ØÔ¨BWÞ­„«ðÁ&¿±È¼j‹‹×èž›ô5jóg¨ÑìïŒúã†ÿ›ö[ýJ†9nï„dw
+‰Š¡;±äÛÝ%íýÎýnâ>k¶çwcéóß?Ÿf
+·!¾D¥’ØO ?=r#å1RîîÌìD:‘ä2LØõÎarP©®ùŽÙ¼NØOj$Jð¨ñ&^9#ßìB…›$¿ÊL
+€÷}K©8'”ßGçð@Ý;cÖàÎVva½=÷k¶ä]›¢æ¥ ¡õŸ†}ky"luL)ðZG(·+ò¦¤ö³ÂóWÍn[ÖÛ½å·"ÿbƒ¯ôú :¤½peÊš€Ä›¥‡ºâFÁÁn‹}.;å·\§¤¹º´v¶ÄŠ*o÷øð¯É„õµ”倗‰Çr9ÎßW<’ ù!*äTѶÊò6wǤ¦µ!Dk_¤]FàŒ¯O^À6´ü¤â´ËGÃÑHÊÆÔg›#70ºTÍ­¤Ní`òì
+>k7{_ð»O‡Q7gÙÁéÈ\:Ùä!<V¶D$n”õEÉÕyè±É >Â[#®ÔXIp–V€\¼Ú+¨u·>2RüH»)½c϶AÎnb”|L¹à™XBµ'öI“ጡ€ì±-17 Ò§Wwô¥Òû—â™Rˆ•\I¾íÚrFñÎï· À.‰«æãÒ\û§¤QêL^(1)vCßðµ-ñýI»„T5œ¼¾7¾š—cÒç0ƒ•È³vZì…_#"¹ú’ÛÇšTÚW‘2`j"K¥XŒI¦¼,}½Ár¦C–#ÏÉüä\ûb™°àøT,šOFU¼Ÿ§ì,÷<C£ä‡–q±¶(‘³­fw©ð~Š ¹’ãí|©ße%J‹7ó¡uVªšãÁ}Eç:þÁ§Ò0ø
+³nž0Mït­ñ*È'¨ŽmßçzHýËð¢c×"C¢×@¬Áµ€QºÎ¨cà5DVA¤f9ÇîÕab-Á¾¸éR×Ò’²a§\µ°âò3 ÜHzãxu›€R¢5óœýèg+†`"q¼«§QEKÃàvšúQ'ÚSÒ)õí¿Ãµp¨J!Ààè»Ûâ®[Oé­‡“ÑQ,-Ý„#$Î6rníg p)Ñãžä‹]¦OtëG{B_A¿¨¤ý0q Pk¨VgU‘ÏÓ¹¿¹Ú’ÆÒ˜TÀ“c:в.r|Ì®ðÒšièNÛu餥fN_NÛŒ!O‘þvðvM+O½¤x§ž -¡B£Þæ
+ØæåX©¡üˆÛ‚mîp–C·fZ˿҇ʭÙöJ™AwÔãiŠC;¯’äód
+Àß:µë0µƒ¨J «d
+ÐT>>¥‹'4³[UBÒªˆÞu¬Cô¬ˆï…
+ #˜Ç1ç)áóÜwæ­bâ }üÒB º8ß®RØ6:
+L±º®M}©ÒBþØavÙYb󞡳 wÃ
+ø—#¸‚ÖnðX9’úéïîF#^F ¦²éà©Lx¬d
+˜å_"5û{ÈÁ‰êÛSá-Ín_nA/<º¦4ÝDÈ›qÞôqç! ¡$Rr\Yëý;bÄ‘|g{äÇnÒ;vsÞÌí§©ÖŸ°pðÛ"Æ}›¨š<`Ï“óáÍ+û“SÇ=:¶°¦ÌS&)5bÜR ¤>XK ˜6?Uáåî>ïŸn~ogã¤)®hÞ–†Çfü>!\ûm4ä›â–GÆž†EÝZµªßöI³
+ªîW’P™— ^3:L“xï)Œþo>lŸj$¢Š,ÚDâxu¤N /°/FÁ$›yaºKdmä^Tx?ßdˆÏØ.ðùruöøœ),Œ²Õ‰'øcß²kO»ê›ƒ~ ,.…1W5ŒÒáVfÀW–Ë›“†7_µ²äa®/Bí:ŸÒk'P7£ª?ISù›«–š,7òü¼åÃÐ6x:èÚ~ÞßðE7ð]£Ë<µöV"¬gYÎe¸c%U¹ØAæÚ®¾ìÃîGÃ2-«õh<˜ìÊ<Ä®“žô¡‹ÞÉAᵆò{ZùÞúãÅr}Êbæ²ÿ‘W~\'7«¶L¼‹R±%LcG«”‘¢}=þ1ò-›_Ë^7ù¹%€“±N13ÁíölÊ£ÅWaÿ* ¬â7ÈL6ínZúì› )DZ¾Ï8Æ1fg"-O›±ž¦Hð'¯¹s#a÷IÛAµêÔú!âí¿W@–ipGËfü›Ä9no`ù(ä6ž£<xô)5TÊßä¦>q±ÑûiúÓ‹\³5» b<[¤ ì}̹9‹¢%÷ €¹¤ù¤¿…=us–
+GaªxN[(ÏüÍñ1ý+œ~Ö ›D]æFhð@œOqß yþ¨]¡óÙkܾ“¯>T楼ýE‚¥õ”‡röU%.L§ÓÁêòxÓ®Zu¨?~6f”º?ÓÌ ÃGvS¹»ÔØ’{Û5©hMS¼Ê˜%ªðæl™û'$bgynñ^TLå‚XfÊWßiŽOntOQI„…ú««rCÀ·RŸØÓ[‹4ù1ƒ¶I0žD <Ñ|Ü<^3ì¢pÐÔc‘‚(;7)/?Ü Ã}._š`ñªÅ`Aš»r§íFÕ}QñEßTZSCÙ…y°@\ÒÅ ˆ/1¥GŸm[j¤2ÿëaåhë«ÖH dÃìJ+­¦MR9‡ìxõa–„HùÔC=ƒdòÅ ØŽÕKÿ‡(;@M] Ø÷È~ã¡åv^øUóµÂÞýdã
+ËμcÞÓI<\ìöÒ;Õ/#.9¢’il·Ç©ä˜üã¨ô4 þ¥rø!&X}õ·$ñå8ðN•$Þ|¢'Ê· Chg<T8Ön$ج¯·ñ‘×Hµýyó?Ò—¿ï>èZ‰Äõ«~J YBö2šX{ˆ”³È<p‚´Ô:Õz[‡¹$¢qzq¤]0‡´}àþJ£Ì²öÀCi«¦˜ª%3ê®e:­Êq1Y\bbÙȧÇ6Z˜p™ ’ป¦ŒßD<fèM¹œ¿Ñm=÷4Üj‘jgÓIüÛš•;«|µŠîQÆî7,ÆZFdG÷ŒÄ€!Üg÷àñpqš]Óž-(¶
+KëÅ’œÂ08H¹V0wâ½øgù2ÕH*„˜ªè“À&;fµö1fFö˜öóÝßžX«‚1Â)ˆeÔj®\»žª˜*TÚtré?I¿–[wqpœPÑîBJ­IrÅ׺‚WO›Á/0µÕPZ÷À±âBÔ\]’.öÂñg­:„.£°; 6hsïƒV¥šÃ>£‘•1®~ýàÙ^¹‡éKSÿE>Ä~ 0Âùñn%²j„!§±mg=I6ƒ«Rèý¾S&»«cljJÒƒŽ©ˆ¡÷S-¼>õ+ë¡1cêÊ™ë9QÐk„:4E“^ëÕ.mqfÆùDÈšz©ÂÌl_jžÔ!kŒJs`Žs¿*ÖL¿0M‹æâpŒáúíOhWôч;ãÙ¹)aææ_öȉ0:‚‹ÏL¢»h³—ì%ãÉÖÛKe+’xwPÇ–5¨Ñmº¿úÎ%t7æ`#B¶‰2fe¥vg¶œÜºuMÖ!ïi„±05Üê~®Rz½¦;¥î~ü6FÍðs»Iu3%´^=.…<.>Hü§R“-ÌÙµU÷÷ÜÕQµE ¡K=[VÔ\w(2ìîG¶ÚòÉW±*à좛¥Å½TîtÍEÛ†éÎ:j
+%u…ãÌ b¯IV³ÝiÐq6â?°`›Ž² › âúÎz}ðv‚ÈÆA¥zÝŒPGð2õHáU!.¨îGcL_Ò–X{F_ YWýà°Ór†ˆʈ+â±í ,®…í‹äKâÔz†t‡•üõ«üÉ||áúCSs̸•Pògè»5>ë2F0„Ì9HáþÄ¡¤“K¯Òä”øa“Kø¡,-¶áÎñ€m[ÙF¤‚ÈÆøå•6—°€‹†N-¼Œ¿¾q3F`-¶1y
+ŠwXvÂk«§xê ¾1·²²›Ž—H‡%÷&á÷?Àq‡ˆâs}£ŽQ—ø<2z²_)PbŽÂ:¯•YL0z2dn«8;ƒ&¡šü©cøðÙAÚô_æ<JãWsG‡*R÷¨ì4.«4–Xjáý¯ó`DMؽÂL›ëéAsS;ëY]È|Q:ÌSƒV£–:gé!®Öy±†ÁÒÕ†ßv§8 m£ƒþ¸ðŒb¾C“eSò³?™÷têÑRäLø"r¢@ÄŸ¸åЇ#ÐY5RI›`HŒ~óñ%îä x_gÒ(R:“#tɉڵY">Äÿ÷bØ[¸‹H¾þ¬zWöUV¯&#`†çpIt£½ r–ó#R¢rrzª¹”;Ïci®ür¹jºC‡]w]±Dœã©î¡Ë)yÊtìd-Ôb¼õÂÈlœÌeÈb“ˆÒ\}û-už€Ÿ,æ—¥¯Ou
+6aþ‘D\bÌè– ÿ5¾4¼ hxéDt€ïwŒÍ€f=lÊ*Ò¸ù³cßÇ9šAN££CÔr„·ÍÆ!èškbLxãüôYr–ãrS*ºY:=¤»gyÚÚÃöJˆ0XMÏ=¾q˜ÛÜ‘MzÊ^"勽 'HA¢£À³òMLe°mL½
+Sbn$×”IŸG&Q\ggêÊ6®W¢Rãô×V)ÓO•F’B寖‘ß"ÍVˆª5‚ó@IñÐÙ_εtýÏOZç« E>(`ì¹½Ü wþ"ðWŠÑLû{ÄÇ2ž
++ÕÓ¨ëF” ú¸|c¢»ûÞ.@¡Ç”¼û9H«;g%J1”…]£=’”+<¯–üH ¼¾„ú<ìN#AÖ¬ÊKVƒÇ™á¸Çñá~UW¡‰®_®p_ÕÌ(´«gƒ%Ä"cçÄýh6nb
+‘XVu`ĬÛþ—dlô3Ö²øQŽÁiP”‚2Ø£_VS‡,&QÖÓ’7¨8ðo2:M˜5hËÅ¿CL…hY_úø-Š }E‰ 3î—|…ýZs¡é»^Úæ`8~^°&ãT-„«™Pë°* 0˜™Ú»ÞäL®Zb ÓŃ ”ÂÌ"¬ä®ua¨àXÊ°HÅ[t>rˆm?Ó¾}l廬ѦܤÍdˆQ+y,Ìï&›Œ:²ù|j—Z›Zã&$Eoô›ïyÃÏ^BU ¨Ýú9P¿ ¼Iñö7Ã[V ¹ÿèwÑ cG̸[ÜáX*Ç;qQúü\énÞ
+]1ˆpµâ’u6—›ÂÍÃÍ4JÓH#‘l‡Ök¨]ý|¦’ní%ćˆºìÁ½…ˆËôº?ÒhkRßM®‹7NÖ¨`é“ §%J³±|æš 4fí©¤Rð"_f‘’,Dv^$IAbZdðâ™Ì<ŒÔ‘›E¡¡ýzó Ð`®°µoŽŠöїħ¡˜’ýd
+u,O çvc,ÊÚ™d!÷˜ÍØÃ~< žW×aù-è&j5¥!¤—YñWÅ4Ñs2hä:Ó˜:z®$x 韌ʹ–²{V*ÀPÜÉD~½a°íäñªt-'Ý2grºM:Ãè0×·z«.ÓLgò¯}ÌÓþrbõöXƒÓMÈÄ„"ŒçÑs÷²€ÙmFŽbØŽn[Ùeçk›qÃŒT'cÆ+5ÎMâT³*‰(·Ã4ï*lœD/A ¨šÈÂçÝYù8µ 5Ù ëìí ‘Bãþëž5A—e¨Ã’CmÀòp î*ÍéS’|7z”b…¢üü&ñ]±ôžGÆ=ËVÖ•^0—Èæëþ£.†d<QTðÛp—j,^Ä/½n¯9Œ<C
+Wå”h]Ä̹eWŒt¯\tÖï–ƒæØQâͳžÚÚÁ÷É‘¹ŽAV Ç£9xéûŸß`! üd©Òò+Jìg±‡šŠQ3(Ä>ô±˜ƒ uÒFʇ2¬T2%jtÖw<kíÔŠ¾ÝãjR?'aSIš|`×ÿ½Wù¿mï Sµ9U·gŠAJlR{u=ëâûöcÁ%¨t»acz±Xê:y2àB-ÝÆ‚šì8¥!“L1¼ ç£\¤ð¬×ÜÍÌJÃ<„q>ÆJ$GpÏuzäjŸ 8~`·åPrø hÜØÿúÁ¡óè`’Q{ŽTÇuGÙ…ùsh«¬ðÄ“ Z}±7üB€`YTr"]ŽS¿FOAº%=œò÷‘á „`–â¤TWf§fXCŠ£òø€ïaê©ÍÆ ¸¡C´”SºAä¶g¤,(BÚÒâ²»s»Q× !°µíäžþèËò7Íæ.Þ ©#P4Å|Â[¼˜áC“¶¶_¯B$GWá×Ï}Ë Åo ´#Ph
+hûÍ8ìeLû†ù:Ñ©ñÄǯþ%Êv’ãÈƋ᯺êešsQ½þÜ(NzkÞ¯š‹´š¿`õ%ª¿;  ¢«ÜÃ}¿n˜*_úÊ'²§ùÜÊ…ÃûJ6|‰vk§Z1(.Ùî¹DGcÝ6xǘÅõ!¡[„¤•þÎkˆdLɯŠ_ù(!1Õ%·Ø”ÎS9ä& ¾;¿:¡2ùK³I\¨Q|Á¡H,XpùØA+6 a &Ò±=}…òqÄù~¢¹ H`;ñªm y2¥úú‡yÄæ—‚çf¥I3°±‰&ˆ“ƒìØß÷õíp'ü$Øpé¶òÇ`J¹gr~Ÿ4sÏ3Yo¯H±}œŽÉóxÆÛ&ÜIÃrG8lŠ0^-òheÃÚ¿K0ùðΧ,]nߨýeý!ðÊ`‹{ MW(kó÷¶ËoræKq—@æcSƱà£Ø
+ÂpHfeD{šX1F ëÀbí›V²èwx@¼$ðZë‘Ê&zæâ¶Ã!  y_‘µEß°Øë7c(aÁc
+ÚfHqŽIõÁ¬ßUÍ´Fræe²*ªo-.Ïétƺμqb! õ,f[ÍØ;&)؇D§YEDÖ!D2š—.µÓ}ºßT © á”;d¶Ø¡8ˆ½kœÖˆæo#TžœÔ_±¹é•?ÙË6FePh`gÅ<ÖMmr™îõ¢ãµˆÇ€é™´6A²)3ÌÊ#“á‹ò³Meä¾–VœìZžlçÚU+1=ùŒçø—7Œ‰TK>Àê€T4\aƨ$ÂÓ­W›.5q_žË÷Èë¬inªˆ,>kÚÈsxDÕáó L½±Ò¨ÃëneÓ´‚^ʉ±ùqý<ù*$ÌLÁÊF4£¾}\-9i]ÇñDyÒ¤éúçÓ²—°Mé4þÅôôèn°¤1•´È½kžâÊõîñÍŒøâJNöbKt˜•ÝåfÇï¡SÃö^1-
+4?º{`¡-¯ökyKÑ](ÕyνlñW§þJkÞ-®¢ß“:y’‘:¶ê¹jKyVuaÄ«bÜ®[ýõ>~ôÞYÐ<Ž¹XLu û†—©šõÚª¸'¯Â·ZÙ%÷ßêa±dLµG ÒX8] w‡
+þ¾©¶üCœNX…ÀP€z¢Óó¸`Û4‚‚Šð-+¢óûÉ“À¼-}«^½UUöÍ61Vn7
+Ķ‚ã5Ámû½(dÕy(ã¨n8<ÀÈC±ù‹M3Þ ß^ÌôŽ˜L¿Åæ`“¾JõðU–F( 6Ù5¸êGqvUqº”-ì^ër¯È—Žö/éÛ15ÇBÔCÞÓ^¿bÖU3—»µÃ°(‰»Æ®©ÈW¡~Z½¨>ê¢>¯¾&dŬuÿêtÊ4a¦’-ê_µ2’p±K5q[°%;ƒ YxÒš#˜¸l,ÛÂûЖ¤€:›.ˆQ1Ëz]~ÊåLª`äR¨U7nlT½*¡ËqSp$Å”#„"ðc|¯Ó¨®ò±sd7X¨¸ï~Å{àH*ñç>·¯b¢.Q$é=Æ2³tá$À¬»ª~…½:›£àD”_…Q×K×zäñ¬†xZ5(D³i‹5H-+æLùe8—Áþf:ˆ0vì­÷«u£;™–¥’š ú46ª=Ýo' £E0'%®jKÅ1úøó㟢j$©ä+_¹·ˆ^–îy×…lØÍ3üdíÉ"BCºÍ6hœ”cÛxÔdC/[J¹ã›>¾"ö
+õ“R"<[<ÞE}áÜ„÷wÓ/k¶”Q§œå] ÊÔ‘G×k·­\â{±áDÔPš:¾æ˜ÞA„å &é÷¹NWçÿôþ+§jÈ©¹æJ°Tè¼dX\‚î¸EZoßÜ0’²éL#¬_Šô³ÙY“ƒ[çˆKÕÇîúÛLÓ=4ÆŠ «öDcÝ…hé™]²µEj¢¯ýÚx¾rÔÌžð…h§|ïï_¼Z_Ÿ<Æk üØ8sšãU´H¼òì«ŒÈÏÖ­‰xÇ ‹§û¸¼gMèxìÎHÒ󋳬?ÊšªÞd´LñÚ…5ì¥NþÖ¢†å1UP @Äæ!§å"gF9T¸}vµ±V8â¡Ú€å/§7¨Ø-VœHûÿ“y‘[¿K¨ƒÍNª¬ïv[`ù…½•õÖ24¼Ì<óîócž0³v(ÜÖ#Q«K8ùÖÑ Úв5^¦Ê¶©å óG%‚æ Bº,·`+pr=ójNUÂI|¸ëΚçË»G˵¹ÏZØôϘ:ű´Q&x§ˆ*Û’+ºúé“s>™«ÁuZ$‡
+žJRU³ÖW+aêÙ›šêbGßèg;dâZ36»vš€æ{ÛÞéƒl`X0áTÙ näDºX™¦kæ%œ \1Î.`è·£×'´ÑEöˆRû·+„ÎmpôÍXšCsÂ85*á¦ÚfܘÆÔ| #ϨKš²Ú›ñ©åbŸ¡™!ø&yåç…‰¤ðcZÎmwZ¨Ú«–ñªJ<ý¦_€oÄæ*ð]_EAç1kh>ä>/w…¹ê7Ê¥ÜØêqåÕ:
+8åÓ«¢êÃ"ЛZì^¿>㵟JøÎ6? ›ãM÷Žât>8.Üq;‘º÷w|‰WCjuùáO1A«&å›DGl1}4è¥ë¸ÆƒÞŸiï'{½¶šN£˜ó²¾ÒG]}^ô”ÎÃM±ƒ²°ý€¹þùÚ ƒ”î
+f?„;å»4¼ÅúsKö“Ô‡›BÿÎt&ÏúÜ_ÝÁ<Ýöˆ5ñÃmL‚ýSôN–"N©2ˆ•å­
+í™üñ(ˆ5Ltñ°9Ÿ0®gÓi k•!Å_™>RÑò9®‘g/Áò¡’fÉëz7êû³çÃ]ç•í¡á
+”z%4©H`vz%1ã.tYUÿt#^w;4ë©CaµñdÍÀÂã›0u 䓆oÒWµ‚PýØŒ ùQííœp7àhc>ë~@¯»òŒ{2˪ånŽs` `­ç¢/+˜v™Ö Æ ‡!‰”ô­Ön+$ªm›E¾Ñíw á öÌ¢Qãoñ7z&XZ‹£é¨0”ärO%<YKr7ž$ÈS8+zy¯¶y$
+4Tx
+ÓH@‡)ÅÜ%ß‘«“L©LïºÁËŽÇ¿Û•ûõ!a‚ÝÍU/…p~s¿´lÐë4‘¾pJ¬ñ|$éú¸$2~|²«t>XK)(Ò¨_=Ó]äÁšŒ&yŒF°ì'[ûË°I/ª¨?a£è8ÝF Ïqq|ÕlÕM‡|S •C r:‡ƒ×‚É€_a÷âWºý`´âNyï ~T3rÑÄ£DÇÎèÆ{F47­Ðà»#Â/»’ƒƒÔ“d™³¹ÏN×”L=¦Þ(½¬F¿°CgŸ°ŽL×ÖÜÏ·\Ábe>˜­ù;?̈'‹|®ÜÃå`”´¤€bBÝ'Žôh¡1n¨kê-ˆ€¿@®·LX̲kiËÙU¼˜dúÀi+^×’éÿøGƒfjäB°ÿø·«:-:H¤Ñy(Rì´üeš™dŸâäîäø#h7ð+Ñ:ö†vnòОŸB«BPq±Ÿ(¾’O}¶µTKœbM®«ìwͤñzšR ßÌ5 hAû?ž¦ÿGÔÁÓ<‰xX˜¹÷SBÙLû඘ ö˜fÇO¬_K)äc›6Õx½94×P0MW7às뮂qðö[—2÷ʲœK¸‰?AV$ —uØYqá$S–Úüžqõc\o~àêòB˜ÿÑhÊ9ÞªýîÁ‡ýl JöCöÙ%¹¶ZíË ï¡{d
+ˆ²dcÕ"Sɬ®­g_áb§°
+Œcaðj¹ŽÕTËi›s6è³ã‹#9ç޲૕N•]o›Èþ1–Y”©'Šœ—aÄ-Dv%ôYºÃ«9²m?„lbÝ“`¬¾0ÃŒ,×Ø!”‡b=ÕRîƒbÂüª\aÏúè_|…¢\ ¡ŽžÁƒÏßZ„>ŽÑÛkŽ÷cÈ5Â.XÆ—æŒ(ë‘™Ó¶ ÉõF@4Ÿç/·¦ÝëB„Š±GÆ=µÏØ_Ö´©H‡Ü¿~?mB([·ásqNFdÞŠÐ9PL#*¯IhËÞ,Âíô[A¾
+ìJ*vºCRa¶•‰œ*ô !ùûý>=$Ï¥‰îå4´=–¹ú¦Zûž¤Èä¤ÓŸMËHsU8Õt¾Øà
+Vƒ.ìÍj(›0“dc1Ñïûe+6€êl É‹Â kR)¼EÇ™³ùÈÅ„üêMW½Ù4œ_ìàã=›¥ã¡dtúÅ.ÊUç¦eþèq_
+=›xQtŽ¾Ù|*ÆVÈfÔ|5™p/–pXÜçvôá:멯*[Zšn¬r.C›´ÝæågÏXD?cI>‰aý€„ö˜³EÀÐà<b,{“âòGe÷¿“«5¸+¨FXfU•aœw8Oð]BD†ž–&ä $D“ ͦiÑkW8ü"j—¤>%³¶¸„õìËIÀÅéM¦2…4ÂU ]Îòöñ¬§ë1u ¬ò¡(Ù'q¬ìáÖ§@äÕ5X¯©Ò³‡á Vjô]Á³rﺜ…yÛ…Ø
+K€Fº#·Æa'³•HÈ“¥±Œ‰òL añ<‡Læ¤Z‰y²›ÿ:>zäõuþH4 ¨ë7Ë:×óz¢KÐÊ“>Œv›Ç·at©šñhw®œ|Ò“14<lœFÐÅVwõ"|ßüañ·òò¡)d9Aè 0ÜõxÑç¡~‰
+ù&êñð€ß $‚¥Wœ?É2â„¥šÚ^¸i)LÈ/W«®Nü•Rv¶¤,R¥‹©opð±°
+Ö’Û)·Tf±‚õ÷Ø é·+<î©7ºUy%ÎJY½¬, ~‚›|™Ð†"ú>8»J6]ÔŽÁ~š`E#Øéiœ[%Xo*»£we¬ß\!cQ&EA’={ŠYY?þ¤G äûJ3uq§’ZüKØï¶C~Dç,Ð@‚§/™ˆOËhA9KÅ%Ä—ÑÖ¼¯”u£C–'庛/WQUæÕ
+%B÷ó,cröñ·9Ï8äÎu@›©Àuuæ9= Rœ–Ô~¢m>zp7Û¨ÚÂsoi¾c¯+­ÚfÛ‚RXZ_;µ´OvB†Fø‘+0› Þ.ûk ú³½Ê×.ße›u£5ÊèJ1¥&‹¸·åÚ¦„ƒ[W…yºVÄÐσÅj£‘3» N nGR¼ýQ¦:…@ô,¶ˆçr¾èÚlµÏY>O9%ãN*)¯b¤w—e ¦äÊêyGÑidþ¤<‘þÛÎ99/´=ßÙ*W…#Zà9¨ËcË~t˜2û-&>äÞÇ'0.;ÚDCm®’ÛE)xJa h¯‚ïZ»WT-®õ+À\ÚG)>íbÿë¹wÊ„™žú™ä†LMGjPbÑI(‹ºIt/ÇuS9ç Ö+ctÛSb|Øjÿ¶f±FKÈ—G}f*¶Ì¼Ë£ˆ–jþ_à gP áïÜs{‘Äç³ú…†Jó“»â¿†(ˆ'<-§›.ı/¥Ûš‚Ð<ÂÏzb³¥‡i+Ô+pä¹¾ˆVš+Ï„›É-˜[< ½q
+íu§±W ÔŒR_ØoŽbs@ðñŠ¯¤rî5«{ºz~ñH‡³’WuD•äÈ;ˆ¡ý™‹BvsŽ† òîžÃ˜¬äu0__ÇuäVGRQ“qËÅ3å¥?1©l–ÃT
+…òŸ2†¨¬(m›Ù8ðß6l× 8°zS«;6;&§£ÜŽàU=ä?èn´eïbFþ6ÿ¤ro.]ªìãÇ£mÌÀ*d¿,›êr#Y›»þئ؀§ùM^óÇ9¼¤ ð_wù‡`émë³i{žÐððr˜åù™ñ¾ÖXV_ôíB–~¬9wÒ/2Áò tM±"V#4à­°&ä–~ÓgƒðÛÊ(Æ´òG@Üìè'à¡«æPj÷Á•±,f|ðZ¾Ø;|ÞE(Â^¶òž›S­ÚmªÒ…”7ÎH Œ˜x£h2Hy(@Û¦x†Æc¨=;ÍÁ1–§ÞŽv1dœ¶‘¬º­*ž†A{«*ܮϘI_* Ô2Œ$õRLmüA)/q9y†CIº¢R›^›8™ðû8W£HÞìWÑ"Œ^ß x”e¶g¹71UT;ü=ÖDg4s;^êÈyRN’2û}êJ‡š¿µl?N ¶o®äsõ wzIn~«!sOÔ„t'Öõ˜33 EZ±z¹õ«ê׸)’Rvƒ÷²âW'01`Ty1PmjCaeN5*zè\ê`M„H96c8°ß‰)>)@gì‹É»¨­
+Z’šI¦;€•Y;òµw?ïZTú%6z){ÃÇE
+:2‡cý\úNÌÆïñ=óWCÎ8GEèF¸ù}$;)ú Æ}» ²qjeƒ
+‚RJ?˜ù²gW&âŠòuèÔ»ÿ.CD^XyÈbýUŒ+Çý„š¥ö|L[±”„H(cÀ½õ —‘’¾ÿ>Áw†j°(>ÀÎeôkø#«¨¢“‡* Nj šÛ÷<Ä(S5Ì°[ss½ Y*UA~³§Y3D]®÷'ÓŸ?™°¥EV äwôS¹0¾¦^¾bÜ¥±?NA=nØ”3=;[em ß裸u1ôm7rxæñw­hË]5ˆëàWýþl—îx­÷ÅÀl [Ä]eP×Öum-RA^J,çTÆbPsùí—k°ïUe bÓ©ÿ@^á7ânŽ`Ìv^;ÛZª`K/݉¡«¢vå
+……A™Éž…CùYÝŸöyÉÆ
+ZÙp„B  ‡ {!’Ž©@zÝ5”]Ë«iGªØo7”$õeÌÐ὞6«ŸÝb‡Ù¢WäqÉKkHÅ° ¡b‡Î1ÇN
+{¶
+_»gt¬0Zü28D®Põ­Â4Ôº ™
+À×ÄSX9 )5lâDth€ÝÞŠím1-²[úo´\«6‘(zššŸÌ5€ÃásÑ¿ ÊyöÆ&† Q¤?5Ìcä¡ú®¿þžö½0„Ú5‘hۖή©ÁV¨CØq
+W÷hÑg€`QÉÌ蓤ҭõàã7n¢u›Ù»{ØÔÑ~|Sì?sá–Л{aKÕL¸R˜¯
+°cdÆaú]™ŒYÿŽd­é‹t\{mYÅߟ3l»I•Î+‡Jp¹›ìúêúÃÜu™Ôø³Þ+²ä“¬CU§V•"eÒ|Öp°a¼WïUdÿùaq\íw<K+9¨ÖÅEžŠÿ/C"¼Ý+ìÕ"
+¨é†wèh¼)ó$ÜîÒt§JÀ‡~q¿÷nï­ë†j'M[$ïfA>¦À¹½çe™{—ŒOÿá‰SyÓ¸æ”ܲÉÙËÝt¿ÒÄ_Ñ£uÑ(ãaù,L¢AE…d¸kKocÐ:Œ£+Äk0 =êEŒš.ÓùÑ‹>Ù[·C|„ªÙ_5FS/&XÀmEæ<šÞYûWtâVNË6ðŠƒ‹ÏM5¡øhiÌ(­z*•­Á2§8ó%fkã,¸Nbç¹å*uõiÕD‚­Å—»ná&wõ‚¤…+¦ëÌûÂk5¸E=ž¨%
+´f€(;ÞmnÉÏúå
+l»y{|^!«[<Š1/ö2 Þ.FýxÈ+ˆí" +sƒnbÊ«îúб¡ÍøªZmïf¡|óÖ¹¹Én÷ áhªe€í¤Â¾©=U‡µŒ:¾ð’9.]Ù#$°]»€Ñå‚Ñ7ê«æmÜ¡RV…†¯hÀ=vA™EÖ^­_QTœ÷d±>8F‘šÍ™³/ šÛÈ?%]š5OM(Ü\Õ¼Cà˜Êe„3ÞBsy¡¨,üéáv½,O¯Î=Ò±¸©=,RÏþáÂŒF¤
+ë}mr¢¢ö!$ß? ß‚—Ý0×jϧ“¨ ç®$cô ¨˜$ÑÅÑ}ÇYNP#´*ÇÑüWY9ÕD O͹+/¡ý®}ëm îP‡iL©¤lÛØ¥¨ãÌý=ÄjÑf•*š…{—ù-Ÿç X€O¢œ¢cáb/ê\©—u•l­4=³æsvMfÙìµ€•Ó;ƒ–®›&4,ÁÒ¢†¦.CÿëDoè‰à:d5›ÅØÄDšw‘„¢ˆ›°Þ. F£ËV(¿lYž¿z@¸Ï^¯Äv«„…Ú|³Eùî´4æJŠÉ{>²ÿKý`À­ÞÛ#ÈöLtY!e2¨# fÞº^‰vÐ4ÌÍ:U ƒ7É#((¡æàHÌ9ðtu=æžæ°o½X¿V3rÛÓ Ër|4¸™Œ‹Žû©ök¾Î¡73{0rÄŠH¿ l›Áj¤(9ïEÀÙè§M¶ØÊ•,4,ÂmDOTÊÿ³Á‹¦o <8½(Uwñd/—pÈewšû`VÛ¨wÊ›çGúâ–@\©*±è˜˜‰Æ…ho²eF®nWµÉX¥KCíj§e –}ïãno}ß¡ì=cÒbçöQ6ƒÍ7Àd—–³[*ÐKž™šåDlw¾¢÷ÝÙ Gk‹ar1
+ƒ ´ D½ðù…´ºµñm ]³È£fk¿‹¿½$Ó“w§èjĉkë_‹OL‚õ EŸ¶É»Rþó¦Ô}àþÁk %¡Š=Èõ΄rÀö¬-§(M,© 1ŠŠ„C›8Ö;”urR.¤H×½éüÿyXŠ ¾†i¤v6æìfxR‡ñ™ÂdËÀP?¤¼í6A&__Žjf2Ñ>îq½x‹¦9†é
+JèCzxLÅ/¢Îò’²”Ü´²Héœ7}¬ƒñÀðŸ‘96xsãwf÷°î÷Ÿ] µ6/"X[êñùª·í
+„ežÕhØUw3ônˆô“C«Hi©‚)0È;Å7'&váEÙÁÔ§U¾l\#Ë!mq*,<ÝòÆší
+ýïý°J³Fž
+Ãm‘»;qà@¿å%˜‡¶R° Z
+¾û
+qúûâÈ Q²JªÍñ)²»„:9 ì¡`ÿ-­­ƒJCÝ\µôâ8hú‹&¥ä.ÒP»È“ù_/JþvŒM2÷lœ±·Uì^ŠTI±®yõ‚Ö\õní0
+^©D0yK¯xYUŒyŒr¥t‰q6ír¥$©±†.ä/áƆ[ŠnmöM¿”í8«Ú¾S3ÕQ´ÎÙjnšܬLü­ˆ~‡ÞÍM·åQßp2Êúa¿ˆÃ.áè*e„ZYÌ|x&Íð­±9.'vrÚ$äÁà é
+Œm«móQ€Ó§\\«¯Ëi‰Ž;º ¿Ó¯g-_ ôÍ¢tïò+ÝRï>jçÍn¦”ˆj^ų°§Ñšnõ-(4…HˆƒLÝ—ï©‚ö~7¢BÅàýö¯Î»!¨­ç_.Q COàž &"ÞNÁBJ6YÀ,»…¤½-rËnÙ–byBÞärÑI«V·NnE’ Ò-<hcßJËœtX-ÆÎ?rÂWFèã ¸gUOļ©S£‹Ý3ËVŽÄTo†K˜¸û+ ·ÿ’G û&£àó³û¿(†;ÐÄRy¨úF‡7RÊü_-n
+&1öÓ­C<»fuÇ7âﵓ`–’ësÜÖÚ¤„ÿ‡;ä’IaQé¯&姥t,ï>Éöqî h$o6~ˆƒÿî8¨‡Q _lô ­meÝÙêñ¥ÖVü„-iMñÕ€?94o‘V‚gP§yÞÀvçÞ¥–Q96ÛèG¹m~ƒõê_·%˜‡¡
+õnÑ•›Ö [úøIrÔ½Q?OX€·ÖÊS'Ûúþ !± ×ÜÛ…ýÁàéhñSÜaÞërsizè0zŽè…‚" Ö“d$äM7Z—ó©T­™¸mÿ¶ÓWB¤úwN·}oRHæh%<ƒ³%câÅŸ®("© Þ#-îì[›[Ϭ‹E¨6dpÊbܳ6˜R;£ÿšÞÄ÷®ßp¼·= ­ g5ÿan ¶±+Q|Q™Ï4ŒŠb—÷¼J›-úB9˜LyI¬èžw´Ïˆ²¾úp’´ƒÉ¤ðŠI³VÛ,DK-y¸ÿ5M˜tËKaŒe¢ÐŽ/†.:b’,Ô%Åó¡›×üAÖ
+Ç'@!A»*_wâÿ"0È®óÓºcõñÝì-cŒo…— ©ä”î~‘èf„nš±eî”Ù,û‡‹·%°è›<ÈÌA0ùÅA·Dá9/Ýo&æDAÞ¯e ßɸU=´ü–ü5ìÜ8Ãã"?ž4 lMž…Äßpü¹˜¹_½3O¨A;á÷7¸¸„
+Ö¸Eƒˆ^Ð÷ñN6 ¸'ÍÊ0öi
+|¹1Ý7íI-q:‘xó»±×1ŸñÀJ5<`%S"º˜—©Ûô—³¹Òv›2ïÒŸ=V œªT’*Ø>âïZ77'›`ÚÜ£¢ø3­>¡i’»;ГšÑêÊô†öÛä1mžÇTpÝ+æ5WEYJÊ5U€ ï Œ«„‚#)³[ÿŠ¾ä
+Ÿî,9,c«Yã>ÇZð\5§Éýö|)èÒN9æ-kÊ@°ÏbuÒ¨wžFòÛ¤úƒíö1<SÙ$G Ë°}#càó£oÓ=¡û©yY@À¹
+2î)­uZ5º´Seq£X Ýý!
+ï°q‰Û›®QoE›Êâ üº­þø5ëì»ÔÔ&ç‹™
+uçz¢ì qY}âÁh»UÛrLFyCÅo2
+yÆ¡Â:iÄñ¿njõo) ^8¾ßR©/ð\–AXJ¹\:¯ñ;H¿ßK»LkZ“½¿3JÖŽÒjýÝ%–Î %0㛨oe¶ïT‹ù¸‹©Bõi!KœrU¸oND–½*!wZË}Óošçª”Xì¨ù¡-F¸ü¥ñ7LS9ŒÔÔÓë’pr.½I÷Q€|…æ‚g]BªjYX™ízæŒ Í+T ˜£"/V ™4 zQáïz‘ÖÆ»xéN–T~:ÃÔ
+ÿ¬Æ¾Þ9‹Ð$ojé‹ïþ ÏqØÒqË_ÂwT£b™*ªôXfØÖ7Ê)lÛ맿ÅÜ?®Žúƒ?O†”žÄ’€B]Cuï¯SY¬-•
+1¾•Š~])òïj'uóŽx¹Ójçìy:-K@s\×Tø|¦LÂ÷±ô)
+Á‡ær9ß.$Ö'÷:‰ä†…R¿>#ýD‰vGrbÅ®"tÄÏÓ~,Á»„s!“ŽE¶6æ·J~ÁÚ¶L±ÉLƒÚ~ÐÅÌQ*¨G<é…¯OÊXy‘GŒÕ‡Ð…Ü{°›êïQØ–b>*éL¯ âMíý1€ÑZi•±b¤JJS‚.“wm@#ðËKÏðCRzêóŠµC|AŸ|¢RKô­Â¦p |I¦æ{Œ—;tRV¡€Õžð_¥æd[+¿+p²@Â0SÍà(Àø¿?n²ëRÚM[÷‹}¾l¢E mâë=Ø„&û"7:±pø郤Cy”ðˆS³7þtAÔûz©'hñ¥„ðÀŠºóÙ)Ko ¬×|÷" N‘<c§+z†þÓ8
+ ié•WÉ™é">,â¹Å÷™ÒÍP˜Ó$å8pò¶flIx)·;Åóq­V
+endstream
+endobj
+687 0 obj
+<<
+/Type /FontDescriptor
+/FontName /GXFNCS+LMMonoLt10-Bold
+/Flags 4
+/FontBBox [-454 -308 734 1039]
+/Ascent 600
+/CapHeight 600
+/Descent -217
+/ItalicAngle 0
+/StemV 83
+/XHeight 431
+/CharSet (/D/asterisk/backslash/braceleft/braceright/c/d/e/f/g/hyphen/i/l/m/n/o/p/parenleft/parenright/period/s/t/u/v/w/y)
+/FontFile 686 0 R
+>>
+endobj
+688 0 obj
+<<
+/Length1 2884
+/Length2 28741
+/Length3 0
+/Length 30325
+/Filter /FlateDecode
+>>
+stream
+xÚ´ºeXœI´5Š; Üwwwww§Æ× Á înÁ îBp Á!Á‚»ûíÌœ3ÉÌwþÞ‡šµk˪U»Þªn &WÓd·[
+à`acãB¡¦–tš»ƒÀNRæî@
+ñ`cãG¡È€®A+€…@èn®åã dЙÿÔÀnîÌæna “ È H ‘;û¸‚llÝåàdfþ•éW´ @ÁÜÒìåf˜;YX”Y
+W–Ö×ÒW“fgý5
+ìäà°Z£°ª€Ý! A÷ÿÏ>ûO-sG Ý%ý¯Ÿ¹#ÈÁç_žÿñÐþâJ§vu4wøÏÈMä ´R¹[Úþ¥âßfywsHë‹;Ù8
+ÿá ‘þ[
+¤8¸¹~ì–¶zÿÕ(
+恖
+ôב 9þÿº
+Ë:äWA¦™ÒH³¨Þ¨Abv£IúÂ@2Ðj·é(Ò¡‘¹#SyoÝž=§Ñ¤PÄ7¦1]Fwªi WÖÐ'õ÷Ý9áv¯{>ðpI>½!|_#ŽOüÙwšÝ0Oò-3eÄø\Pí—tºnµ‡•Ü7w ²2-åd愯CˆÝ6sœÍ›‚Êyi,öÚѱ¾r©¼0o¾;—«}Ê2–@û ¥BÄ(•¬Ûu× ï|y¸N9µiU‹ÁšhÍsN÷L|-¨õ0o…ÙënÃuzDõ]
+”Þ‹áŸ6t
+’;ò7Ký@µÔþ¥í;’Ÿ¾9íø‰³øÏ{Ï6O:o*)¦‡}Á^TÁÇk_ØËò…ûuvôð]ï‹j«ôTžÂJìs•=É ?Nnªq¾Mð*
+ÖÁ-2¸´B·’”øÞ~ÃŽíW¦“Û'þ2®±ØuIO{èƒÃJdò;‘òÉŵm‘Áâ°ˆÃU™G®Á¢—ãØC3ÊÄúoËëÚ.tCÐi4Ìø9X*ú%~H$l
+L ŠæMGU¸QKñÞŽg$}+÷Ü S…Zc„ZYöÏúÊ÷¶\hR nVÛ§ÎÑ'¥ éø¨€7Fc¢ó‰ùœÕÆSÊF-Ðfùn=Ó˜8fs%ó&v$)¯ó¢&4qF £¯·ö½‘Цz†øçƒlY±ðеsô¾Òz§(ƒfZBbŒ<ç¯Ò7ÑZMÄÈ‹)Î0Ë­cüåÎŒõ-Oü“<û€ÖøjsŽ/³ K2.›ÐȺ\^‹jIª®øNä šp–ÌOE‘ÓÎèM7hÆྲྀ¬ (ˆç€™:_Œ-@9A¾c]‡ýQ鱄O]ãC\ª]wÒM?afàùz–YçÀc„$£Õ|D?fQoX‹·ðº­æW0<Û×JÁ8wë e»Ä¢Ÿ ËÇac}p0œz— ¦Æ2kÁÞ!ƒ%CWÜIŸ—nóؘÇ'¡–î/ŸÃ@d]$(|wÇ@¡Xc#âëW¦Ê®†I¡aúfŠæˆÉG—X˜šlî<I“ žÁXÆ7æ§A9YbF¸¶¶aë.MqëFJ|?Lk)K6~æ¤!Ãòoðó›•f Ñ<ìÚS­ÎçiÙÊ$~Þ“#.”Z>Ö“Ñ8¼Ÿ+&G›×O{×&}w(q6z®@Ý»ˆ’Wvz²NÉŽ$G=WUìæ8A©k§!ÌéFY1¢åû™ G`\ù¶K‚x€}o³aŒÊmÈgŠ³«Ü³ßãK+HéaÜ€ V²x\‡µ<u0
+ANùÂ#yŠrÌÔŠÆ™'_‰r‰zî]õSâr{(ý[²qV…Ïõ‘Yñh{Û ^Öa“Kža—ÄW6\fLüp“mw‰Ó|ï‰Yi?™àŠ1¼”ñ_5ß›‰Ý>á¤ûþƒý…qR§;b,xâ$£iÚP’†@â –ð'Ï}„”˜Ì²H©·ý­ï9ƒ fdvöâ
+¡0N µ®}B¿Ÿ½Ó´"LäMÛiT¡oŽnõéÚòø~ÅÎëËÕŽmÑß”uWç„Íðá‘(ûT%o”zwÄmeÜ:ö‰¡í_Ëä$·Œž
+)‹²¸f
+£.«70·jmö%_›C×J+U#-*cHt¡×²VÁoÆ0±3idê7eSvOÛV€n.ü²Ê«sj)ö0á­c/?Ôº¾õ··5•¨Š#^õVb1“º EáM%>ñ>ÉJÃÝú‘ɱgA;ûæõ~”ê€ÂTþ*—‹ã·¶þÐGnIæyÅ8…™ÓÄ †ôZ-£GûÓ BÆÆsÞ£+åà'^ñ.ŸÊZbƒªì6/duPúšÊÐøôa?*QÛÕ‡zúלs¢¤Ö¯ä+ÂGwœX¦2¼ÄÙ=Kp×±+ÁŸ¿r4kI3Ü'Ü×wõÜ\ëÖ0ó, hÑ.#Ç(+sœ]÷À¤˜ÒÓà/úYßå¨Ch`@BˆXÔ“Åéfñ|úÕÊ6ÀwìW׫#&º?›ö‰ƒýZ^،¥½0Ó¿ê¢Ù¿×ÒøŒë+>oöó<GÜžC÷…–ïwzè&Ìz…ÂqïUß‚n"çíFî¯~/A]dõ00ÅuÈßßëxÉj1N…ùÕ̾’òu¿“‘Kæt1*ä Îr÷è3‚«ê½]¶1›O^ZGÈUfùãerŸ!ŽÄÃ9ôTq?<.]lúÔ‡¯z·Ì 3Iâ·Éñ°lÇð_ÿÚ¼¸ÎÀR6´±/ædœÙrìÀ¾ÄxP›jpŸµ9UÇ!Àç%ÅD\¤:€§<œÏ?.Í67‘\¾P"]U;09Gz~CŒK³%
+äöW“ÇBoŠ÷!­þž ä/™ÚMŽ#+mv
+‚1-káñO©/T…"¤(*Ä¡þ[¤NyöÞºYÙtÉÙœ¨ÁƒQ³Éû°«…
+„¢—QWÀôE#1¬ÂÏGU˜_àżôrÿ˜’Ï—kÔ5½0§øøµÃkÃ1^žË¸“ñiéÞD²P¤à]Cë[ïIÇeõwz5ø»b¹?xƒÜ0Ea¤WA ‰ø\Èþ‹;”
+\ ýØôð|ëéX$Z/– ¸%5Ѳ™‡|3fžžX[¨/¼…|u$œTËȻ筤¡w)ËîàB¯K<¡ç¯dwfÔB¿Ðä]¬2ðÁtÄÕ:5ÀÀˆ^QÄ(hh®· ¨Ô½¿ ÊæÀŸøx K"|aÚŽíjH·*0HÂ:/wôª‘ˆ9C+ì½GÍ– Ì’Îà* 41£=Z8ˆüa;+ægë—ß¡o¯a– Zg‰uâ«ŽC@»™t÷·
+ÅÇÏ`n&Ò¬;ØO¡V}/iÿdŒœdÊ»#=ø ]Rå—£úÑ$eFÇ2Ûð
+ZÄ[öíwÔå§Tè$%YAOìHÔ„¾óÏÀMâö….
+zlæÿŒ¨ÐÀ¸Í‚®72ƒªÍÑŸ"8Ñ[¨¥2'Ÿ2ð]“,¨1?Œ5b‹£ªÜ®ÍЄrXˆå»7Þ'<]ì@:&ÃEÊrP¶ÙƒRû°Ú_C½$èh“ö0N‹™kfP‰î¹\ôR_fÆ qä*Wu7»“…è$¯>ûziâÕÌ°i”ŒÈÕäؼíŒ8”Yˆ2öušFÁ‘6ÀO¸7Ký¾b¿••>©jdŽÏÝQä=ñĽ°;ò»RåI+ëÈ’áÏ(òÜ^P¸¡³ïv>\F$”\k<zƒãíH¸¿º4yAe‡¿PNÖ¢Ílʇ'±¼NÖ³î_ÄUùt¥üu[ëÉw©† ¡´ÕxšO9‰òèi†åø
+–,æðz÷§„uQÐcžóu’NØLýž”LUYÿ@E#aK(%K
+¿˜¬&v¿ÖöÓäÅ^í±¼®È¨ˆ–ûþ Nqä³ý~N—|S-g¨ÉLý­Ò‚Ý,ØÂ7½pü ìéÇæG9~ºç¡×‹6ƒaÀqÙ¡ÎŒ3TÖzí…ÐÚ½;‡e<¬»€ìb÷Æo“ü¥~EÀôôǤq”Í;Ê-,+Ôùˆ}àôÅ@]
+y·í£;øv}@·Rnƒ'W@´Ê‘³¼…bÑNˆ,žœj8{*¸Ìa¢Ï.áà­O‘ó‘æU±J÷Çå ôž…Úût";þâ¸.Ïá"Zò¤6„ ð‘hŒ
+HTÂ2ÅY#çKª
+—ÏTR–=‹äƒéÐEmaFÔßï®0 zoý㙦'@x瘎z’p]›ÃO*
+ßTÞ–”Øj©¢•!÷ó䉹Ü < +?¶S7Q,†ö>á¾ØÂXŒ´MùGáY7½åÑ‚=)å:¨
+Oöç¸n þ"x33qâ`˜âD>yYš9Mü¼9zÓBÀÿBÑÔܨø¬–üù)èÞÛŸ ±Eî.9S* —VÐßè!*žR Þ÷‡®y#§Ê`J›ìÆ‹¤aX¥CQÌy]ù“ÔRåmùx«὜?à6t”f`+~Þ7ëjL#Ý™Z~G]¢ÿùG"jî±)Æ«)žû´Mé±Eáð
+NU.0^¢¢‚ä¡è™Øî³ã*䮼zÕÞ¸Ò‚Éòð’“íVWB‘©†×¢|Md+–º¹*ñßpR>ºîÏÆÈ| ¼7ÐDâÌOì”Ùì ÂÐàIWŠ¢¶úæ),ll_ZiJÞ`ÛÙÔ.«m%SÞäØ÷²]·(Ž¤B˜(ćàyÓ"iÎtpîëÝnJ]‚ôçA”,O>ÁÔp™Š¥¨¢á
+în§o§»Ðr3ž¡ní‘ïúˆßü‚#På€oXiÄ”fêÓ·/PÆt.Ë qIÊÐ…ðä(¬®ŽÛ2 òHÙö0n?ß5ÀÑ~»C¨¯ágGé°nƒlJ!1lÌé—uhaNä X—õø”ʸ!Žò9<ˆEþ°\#Æ?>‚jo±ny÷b®óiUþ¹L¨ª£B¸§Ìòé;®MœH P22-1F9È,Åi¢Í`¹[®­ÿ XÒ\º;4Ñs¯†S÷cÇ%n¾´BD÷Î3CØÞe¦.¹<È¥ ²vÍý^ ¤­Ub›}%^;χf¶ª++æGQwRºþ#2}J%?aTeŽ~Þ.í\EËÓà< þæ*KÈ=Ååþ"[zÊá›P ß`KHÅÚÆì½6V
+“ ¼,8Ëj÷±Hͨ‚¡ô:ªÞl"Äуãàå¬Þys—Œ#â"Ô¼ü%¢¡‰¹Rš­0ѯ¶Õ?%#–æ¬^€sÕd–H5gŒ'ƒ–4¾ ¶Ci×¼’ù:”oI‰f, "m°1ôû{‚Ï£€¦ªµãWÓ‡¼y•
+AuùCÞ;i•QékO!Çx—®¦Qú »+Ù¾¶2DóŸ“ŠžÜ^¤Ï®ŽªÐñ}ÈGÖŒ€œV!-ë4Âz¬2 ôA¾P*µ[6¶=äãŒÝ‹˜<æÇa¥—
+ªf_…NøÀv_hŒQÎÒÇŽD´¥Bœ×zð6xÔÖU¹E$’´–aUìöðcïÑÜ<Jr«-‰†Ðdé?.Ó~ ÑPtªˆ¨ÕEQÏé ó¸W7ÝšæÂÝYkúD‰ûR „²[õÔçÌ*½o„®¤$ÃÎ3m¥P­GRls½~yU‚{¯1_ìïcÆ üÑá6h¯LobÆ`iŽkÎ?­vôŒÁ3Ëc{†ÞÜCI ·€þa~$eŸ>‘ñ£á²ä‘²Ri·Ahp}Z,ÈØ[*öz3 ³þ ³D¥9:á#`cí¬ªX’Ñ×>òº¬màAÜvà OKi`go*œ‹Ôœ¯¡Šn® é^ŸGÔÙȲ%¼ÓŒÌ bŽ0q8—¹9¡¤ešúþþÞMÑ·wTð&#ê
+¬µo¶ðĽ¶H,ˆYPá_®¶h|-9u!h—=¶íÕþþHTÿæ|@ŸNoŸ™Þ·\J³k6VµoåqîèÐýÊ~g§”s“_6sXR#…ùƒ™WëדXµ›#DäèTÆm³+i³KÔWN=ç Ïu·sI€·Á¥µã:EÝïRLßõ¥¦aY
+D
+°Ø®(ãaÑÔ®š¥In÷ k¢’Â8ŒK2+';:jÜæ Ô²ƒN»—x*é7°Ú!Ö^™s­Y$õ¥»Zú^ÒÛà0Ùg½;Xªŵ$äOí$·¨‡¯
+q•Ëê#Q™ŠbäÎ…´Ú< ÔÑåÇJ$¼ÖE]­Wje/é„dÞýDsp3ó:¥¿É\˜aFc)ôh¼ºBü2OV©M$:¢a?Ö,ý!ŸØ¢.!^ÉÄvŸ†!ò€Z†A!·f%ÕQšÛNf}¬cäíÌÄÖÆÕvO[8ß*îÇYóéÝ5…HŽÿê5€C®ÝÑd¡Ø¨î±µ KÞ±ø©/ˆ²s°^Á®Æö]qè‚Ðña„íbw ‹êøŒ?îÅ
+•Þ„{–Âþ~¥@2=èëØúÓMDkâI¬—Lr¿¦›9–-´ Ž$Z˜Æw`l®C‡Ô;ï‰
+QÌ]D¼×ÅÒ=:1ïPhœÛEeÁ; R£kû¦}#A¯r¶Yw¥³ÎVv>·°…ÏVÏÈ »t×ëz0IHf¹Å0î‰#|ý¶C,ïB¾“cCi¦GW3ücìDSO—Pî‡ÜÞc£•©2c©¸’æ.V½Eê.Ô
+mV… Ç‹°;dª ÜM8ÇNKDÎÃŒ<g|“Ѧ'º2›ydÕÒ.Épͼe¿œV°Œ§HÎUPŒŸ˜À@dHP`v\Ñ{@øª;šN¾Ð5[¡5];ŒùÓ©î\íË S*ƒÇô¹ëÅýdæ[¤iS®›t+
+QÿÃP‹¨Üp\îs¼S8NÇäω'DÏÈ>`dù¦Êä^x¶„šaÂxÌô‡?×]ȇ–"‚T× 5e{j†Ô›¤7^Œ~ø¬½öÅ´ÉAyY‡æüb¥êáJªNo%Ò£¥.66;‡‚vÐ*‘óÀ.Ša»wÞꛟ٠½Ð¹E‘nmäÖ+±Ê§9\Œ³š7í°GŽ@ÅÆò–ýn
+³"ºÎØv =ø"òµëŠ ‚„$:¦šœÒÕá}°ôV¯5Ì•ôf«<™¡±"®IÞѤ7ÔQ[XÇYÓ\Í”o8þD"Ècüx )Ñÿ>“îªÄ5m;Æiý6ÝñˆÑ‘¢W«½HÛqVÇÚë= ñÚòÍCw†¡8”IžI“$~p=÷@c)œ£ ›B3…OmB]Z²ˆ;:•SÉ'|Qâf ¦çå“ÈÕ±Œ Fð¥õìý."…Tš­­¬Æ{ÛÕ’Ûì2«=×ØU1°l“Bæ•¡2¤, ¬¯ùû4H»^k¥‹7Ñ–Qžµ0à€žÒ×nê~>/ïµ^ö~
+=cíßrwËÖr7»Û7³n Þ›£æ3¹cfÔØq;Êé'V홨h¡¯ÅWÌèµÿû´oþhW`Lšà¦åÕíC%¡5¬­|âE¦“[3–œK%÷=¦JÖE°[¸,S„ÞÆ1Ü«¤ªFÒ!㛚gK-ZýÝ<ù¬¡t
+1;V<…Ÿ5œ›†àá}s”mGö ¦Ô§¶PPsÏLæl.¾qvŒÖ’máì'>sâqì.x¦0& ¨ÑÜo)$ÔÑÈ4?IY2úDÅn)š¸šÃ
+Ëýo( êÿc¯5}ú2K'g¶šú8ñ¨a€XPr±äÿøœub6æ˜ù“Ö¿µx“æ"±Ïn³ÔÌ2zšÌþ…òya[fwØϳX]Þ  ±‹k*>ᨼ!ˆ_^:ñâá#IgdÚ¼V0HGÏÁÅÑó·-ªôu…“†ZD~õ ÀSµSgžuÌ¥K?îV¸¬û¥”ïµùø}¹7 j¤”?¯‚¡º¬È$‹¾}âÍ®)°~¤I©†ûÖï]¤ûÓ‡gfíÌ]±´Z7vÒf4žÜëT7ÉW
+ŠCãÇ¢YË}xlq í¦‡ mauS#w˜5bÙNñ:4¸ë°}Yôœÿ:m•ü$ #¸
+EAÓ¯+3²‰°[låâFG³*ÍH0ÕÌ4 ®ðG¬üñv§AD2õ wŸ[È÷ÖôãiÍüè…ö9»ûñ—i†¸LüÈ©çÜéTEßœË ;?Rb¯·øo¢JB/;m˜Dìh>^Ð<Hjú?îÕòñ7äÉa&ñ“UN²bZxÑ01=­ŸÜDi¡ô}åτíÔ×à€ô6ò–Û}^-;3l!ié³dF¾Âƒ™»&õs¸IÿUýžŽC3IkËË0?-ÁÏŠd_„M&‹Â­¤Ôð¼À‚ê1$"ï´]Â}w\yðÛ'çXz±ˆ–ÞfJðõ¥²-TR½2דі~ÞÏÞÁeû춙€2fʼn$Šò¸‘7«ùjºôÕT齇až²1l™èO¤¾ÿãó[iÕœûáËo4#OåfÏéDúƒPB{ °â¡· 5ëŸÅBwͦ£tÅ\o&صRµ0pI}C —È|BÌ-î@ÉÚE‡JÈÛ_
+èÆw0 eÂ6îÔ'jijý?ÞÇN•}_¦ãè¦ÂÞñ>2ê¶ûø…˜€³»ÊPôŠØÈZP3Ò[ÿˆÐF²m5¹¤¿®û¨lLNQCp<ÝLF|³^Í­¡hDôöNƒþóð»˜æÚg?FØö~L­)ÿâŽÊ¾Å
+¯û}äGl žcJèñÙ„³æ®Œû|ÇPÂÕI®¸“2ÉÉ£KŸW±½¯ð<Èò¥8º[ð™N¾ØÊyBñV\¯P¯øû Õ(zØ%¹+W‡, Æçõ’7Ä•ágç¹`wÎY¥?fÀívÿ)|Š#QÄÒí¾VtªâÇ›Ûñߣ–)ÐL­ÞQ¸¦¼xmû¶™æݘ:ié/R1ú9†,Õøø‘òÛHE?ß3ˆ UÌ”·ªZ ¢¾D°+W;SB5 ”®¼\K :¹b?„òJ¼R’ŒüîÞéÏ’–cítÅázmì™.?ÒVûôMÿÎt¢ßúMázÛ›.ºc1¦¤æìh´”ñ²‡1‚/ÂÍ ËTOkͳ3®L¶U#0¹‡çx8nŽÒÑ{ö‹„™œQHônmT/ )G
+-Ç\qø-¾\Bùñ¾Â­¹Ú =*PõjçÔc¤‰;¤Ÿé/ˆÎ±
+ ¸óabïóúÌüI'«ÒŽ0ýÖÒ£ðRÊ.à8 ‘g~>©Ûó¹Rb|".A\¨Ž4Þå¨äd ôFrfYcüh¹úóÈ°_8¡š;¹1û5M½‡ÿ[c;§hÑÇæÜÇïA_‘ÂF*䶪¦ý[Oâ¢åúòlC.•P¡’]=Iç>óéR .-Çâës½l‹X4|ÏÛ:XèȈmDKŽªéš?߶\Q.Qw’¶kb+þNõmG€‹<8«‹…VWŒ5iS]óçÚ½µøÙª† OR#Е°¶›mÿKþÉ[ö 'y0åC1Û<8ÂE?L<:°îÕl·77ଗɷW»‚|ÁÕµµ•›ÇSðNÓu,/¯ÞÕ®TJ‹C9ÊŽÛ/«Û¨”¶
+½ víùa÷€ª›T£î…eÙ§(±uøÖÝî¥ÈýeŠV›–u2+Dé¼–Š0¶¿'oÂ÷H÷Á¥Gõ  y‹%~¨¯³ÆË‹É,•‚Ö)QùœZ{|Iæe“lr›(u ¶q:ª‹º LBsj›e&dåo( #= qåÃÃzü
+Z×Ôd$Ûª /¬ªp^›G¦Ë“j7±Ö¢CÙ/÷°LkãË Nm[Á½‚~ ]tÏ}¡‹Î §…{eä’ÍZ”s:ó:EŽ8ÜdV}ÛT7uŵ Ī~$6ઃx:Qg.5ùë’NO¯¼Ó6!5Žø ˜#I"náÞUŠÇ+¦ƒ9‘$ÏõÙ·_B¯¾<µ"ô­Û,UKÃ`ºäKÃ˱!)Ç+u­D ¬6>ÿ¨­\F%»"&1®³þ…ÎH7“™y!œ†-TGÛW±;oØúÜgí{åWIfš½`|‘\`´¤mu:ÎSç— =˜w¡C?óÅvj–[R`ÌDÌe­MÙx):Õ Søƒ²ú¡©=S›È…3D¯ǘFbƒýDû{⡺õ'ý9! ¶ŸL“MýR¡ ›ËZM;4¹ösó"ÛtÖúâ33Þ<%˜fÜ?®µ·® wLXÇ||Å©~€Í—…ä~y`M+_[íÄ,ŠQ”®Þé|9›)$"·y6ÛªŠee›1EÏì>’mK#`~=§ÊUsJ€:ÕUdð§x(ÚP'äÖÏqØyv²Vz<{«$!žoÙŠ³€ýÄ[án²MaÖÂâüÛ^ºN°ƒðdLºgVR<áÖUJ )jåóA¦Ù„ÍÎÝ÷C¯í÷•Có¾{Ú÷ÏâßZLH2áú†‰\[?)í|FõtUSmœ˜'M8tûŽ‘õZXI™ÞfÄïFÍ÷K‰Ÿ`q›BÔ7°>ø)÷æä«0¯É«!;3zèúv°8W‚^DW©~š^aºô˜€_¯–ò„c°8ÛÒ4¬cËam÷eÍ›·qÊ8_Ë֣ɸͫO2$.T+ß;ÌuWº_y+böÉÕok¿ó¯Í3ƒö-­]}=Âé‰
+`0)YÚNíq“_?%Ǧ8dšÄ–+ÍpN1˜ ŽZ­6è é•â"ªìß›¥NïÈHaieÓ\] ñ•Wr³qXž•;ê±&Ø™b¼ óME ‘]I§f{½¨è¸kC•äžG¹ÝæçÇÉr(°f‘Ö]c;¿nÿ‘½è•ƒ¶•…•¢HDV_Œ$ÖIãv™µ7Çha.Áá²ÜóI#ã»h7CÖiöÜÝ¥ËcÁ.RiŽ]±Ñ7Žq@
+ÔÂ!·AÛ“n^6ÒM|1Xds)°WÓø–ú¤ÕŒŒv37Š9aò›ÒEÏÊÄØëÈbG¿ú4Z+T…6™òÁF=›-×}‡ç7bIål<Ì“Iô_ ÙH¦ž ÔFQhª
+ê7G.G(J¶ìu\y³¾¹.fØÙáXûF~ÉVûŽê} &×)·+}£¶­±µK•Ç!—Ø2Œ·Š]Ȧûª8“E]ýˆâQä|­€û‚>Þx!Ö~]…s,ÖítÉæðëìØ9?˜çrö%`Èö<ÜtŠí4iÿÛé°6!M§ƒä'`G)~W­zk6äàšZŽ<HIaÅ8Ídòžh`K@<aˇѳE¥ëÍò}žR;«¡<_øy)ê¯åNcôÑ#ùûñØE$ÔÇ·?'¼›)¾S`Ye1¾hlƒøèê"[ZÔ²³^¿N‰srÂP@B3Y#„ÁÚçåE¦f3Tn©Z9¥¿†ÁlÓÂ{=oßãé¢i!£÷¡—'˜°ÕE´
+,x¤6·|äMJ‹e¸ýîì:íý¢ý;žE_Ù¯¶äÚÊÏÂ|ùs7+šïeó¢ ^ùûD*âm›È$[#|…èÜ2öðcB³ÀÇ8×ωshÝ~…kûÕ|_JðRdüv*6öÅBÜUŽ.Y¡ ýNN)4îŠþаûxÏ'îSÄ)>–XÙM¬Ñ(aUfo;Âû>»äx˜³éÌôrop±ù%ñðŠðLô®'ë* ÍR³°– § TÁÉåÓjSм{ªAÊ–$…+{Ï@Û3´nCTYnÀ©\ Ö>eþ8JˈgÜw¸¥KÌ‚·)/j¼„rÞñ}ÔN©²=’>bõ“‹X"h¸ÚÕ*¢Ýû7Ù³×ùöX^Ö¾ÒfQú®§®¥ ¦ª;Çà$J_Xjr”óÐí%Ø2ÊQ<ZTã¯=çÐÝc=6ÎQJð“å ~E³=§Ž´°8=¥(j¸!¹ÆæߣvÐÂÇ‘§M;J¹„˜YËl¸õR(Ä׬‰pÑ4„äf0Ÿ'½×®$x¶÷-Z±Œ_¯þ®ÉoÒæ£xn÷dQŸvË‚Á{«T™FLyi¿·`9!´.J¢‰Tz_áÚEìhOŠröEzA$´ÖÅ˧›¡wôìðìŸàÒ«±RDÌA7ïÀ– ”mä?Ëy„8¾L†¨«jŽ¿_ô~¹"ÒÝ曣qgJéq……Ï­NÎ,íýhWëýÚ«þº—©f\¿C<:HuáxSt–/´iã¡ð¼O¤WçÊœŠI²UO_‡dúØÄdÉ—mÏpÅ£ÈÖ:àxü@oÍNp&ÃôÚisƒ‰é‹f^ÝÐÙtF®A]#µÑûw¶=w]S %'ª‡Z$U¼‡¦~“DŽ²C+[À”å~ZÊ7sGÄ V©Á –YÖ:4˜7’%Õå©«Â
+ýªå8C[Ui‰K6R‘/ÌZ"Míø96_£¡ÊðŽóìó7Vy„Sïf¼×C¶´ó×s]¡óa”ðhH4sél7‰åÕõÙæ//(f„ }›UaŸç
+kÒ†
+Ý þÞ³ólì¬ÚâÒ![Ñ|ת•iÌ7sx(²·ÍWFLjáUZµâV¦å³›ÉÁ­ ö~±Ž:·îfí”±klÒ6ði=ÑC EìÍFNùÏ)CÎúÚyÓ¡­¯B¹i7´Äé{–¹!åøïDûr
+';¾Õ¢ÿÈÝÔê[¼Ä1Ìq¾½ïΩyz/·}0šh1 ÝÃþ.‰ÛÿÎx¥ žéÁY’ÜyÝÖéáÿ e4šËŽm¶˜ /«ÓÅã$Á*ù ÜÒÀ§Ô8Æ92„fðíÃÕ/gÍJpù–³P,bJu~qËsê*P·–›{Å5Φ5 mAâhì¦c-¦ËßÍ36ñ¾˜À rJ­ ­ûL…ÿÔ2òËDV·¯¹ï4©v ¶U–¸H’¼iJlào„±P‰ Üsò;DO!Ö „[ŽÖËaÏzºß3w­¯lù5@2ãSªFàHDyú–¿GíGR: Ÿî“‘¼®Ÿ­ŽœòÕëÇ×v,Å¢n
+˜£»ˆ}iKæÚäÚ|÷UsVGÍ€SÿOxÛô÷™Zd!ï+MßÙÅÏq1ÖÜ·Á}Ü« Zã¯Þ-rWÇ©W¯.u.÷ív‡Žõ>èäå—1½> D|
+ÒW¾Rí¥r ïzñÑŠÝ–OC_õ ÊwnðçÌþKŸ-êü·?ßh+ IS8ûiïŽD ¦³ocÆãVFZQŠ@Ý~ú† Òã±ÐŸeY¢ðçD¬Ï#ê3KºF˃;~\>¿²Žå=#ki Û?þnÿG¦jJ<
+AMëb
+{¼ÂYj%“ÕŒZ«›ÌÔ£(E»?‹£“H=Ì3@'ë¡B ×z;eeßs«>«4\h ;«‹ãÕž³ #‡g6Ïÿ{ò¡¤äÕþçL„æ=è†ÁÖûr?ðŽÜ%J©ãUŒ‡…|ò)7js0¦5‚30;"0ÕÜHÌ¡0“Iú4ú•ÇœúdmvÞ"\b’¨
+ÖævSuïu¤q’˜:ƺv‰_®všeÆv la³lƒþL(›á¤÷r…p½;©ú| .7™Ÿƒ,ðþ·].5ìÂ-¥1YÈ*3´_œ{“ay½à4>œ*fËÚXäØV'¹ÂE\N)’ÌÃ9ÍbÆY‰Ä⧣nÅ€–5ïÅêý8ôˆuÝë±à,¾ÝWùçã
+( o£tþMœwé“Æ6žåSÄö¦%ÜĬÔÒµ¿ê]~‚ ¿Û“üûëņ¼¸ræf `äÙ$·,ÌA˜!|¹šL³ ¯¶,0€–âqÈA…U‘{PËõ%8&oœû<.–>"
+!¯vñ¿ë‘þ)ìc²;S.‡Wƒ0¼W¯r”÷äÁ˜QÙˆ#¬Cv¸'‡èórÌöª ,ã,`+à7–¡ÚÐûwܨ¦X‹Zv“îKFÓÉ£¿ÈP<Ú²‘¢Row¾%€ûÖoÙPàÇã)a{|èt#Ä~ {¿Z€³èCËIqU­âß/ºPŸÒïñû³¡ïI2>‡L$ŸŸæRÏBŸ€OVÕÅÌÒGI"06SI\èï÷\ü›3nèî<
+õ¯
+×^Ùf;'ja˜çílâIÞܤ¡û䈒y½ƒ>LêðÈ ï¦®”X£ ÄĶ¹ÍKÝO5#;ŽZ0¨IäVÐ…ó–†-shB
+s˜J ®¬ºNV¼­­œ=“>´'À¨8`ž±G=Œù+–œ9ƒ„X饳&'$õ›”µméƒv'qrZ~-†2<u=BUìuW}´¯¿µ)ë[ûë‚\|>x!—s®Ù:l_¾ƒe5d>¹¿1ú¸–Ã…¦ˆÑ2«˜ž˜î þ¯!•¡Á@ô·÷dÂ`y³…Å¿êí³žwþ^6aã½´Þ3 ×{
+þ¬‘¦Ä4Q/jTLÏóoŠè™q{©—ô4ãRN÷-L^àß1€Œìµ—ÏøèÔ©ÃÕÄ⶛Ԣȣ:ë¯ËÝŽæPJqF6ty>´õÒK‡4†3Q®mÑ(ƒaÓ3aÕÖË'¥¨·²EAPš_¶ –o$L¿¢â.íÄ—1Ïv±èþŸÅ x£@SW»R8aÃëËŽóÞODÿKÆmE(SmÔúš+#!ßàV%Š¢•€<༫ª!~¯Y¼Jlë÷Çbçb€Ò8QS±qÕ¯Yĵ_]6ˆ`!x|¤ò‚]§*
+(ËûXë²xµðÌ<ƒ\Ýëùº-“Ùóï…/ZMÙÐ/2ìßö‡Û”Ëˤ¯»Qm«¸%¢,ûW…„…ß| ¹~V¦¢èªcæ¿V’^¥2 €j \´yʳráDDˆp·f‚hAè±ZÞÁ ²úëá§ÿ³Wü™;4˜ù¤ÌïÑ?ÔºòlVÊ#pàǘ™G^léÇ2ª¤œáÇ£Ìá:rŒAtˆ#B<š$Ð|üãÛ~ñP¸¡ù!ºðíxØŸ3ñD=î6»õãÎ.Lõ¬ì´‚ü6¢2`dÆ…¸?šéÂ2¡$ÑqÂ"•ºÍ—L‹ØY,·e`•‚§Ý*5‚ƒò‰ÀO(°N᪅Î_¿"Ú"úýïw «c€Ïîi¿- Öc~2ïÂiH>öàÉàÒòhdBiÆ—¶À0Éà5Ý‚ÈGÎfKËÁ#äIjxõÏ´r# Ú
+€öë]e;ÂŽ.{ñ:Êk;µNXrlè0.9}¾@K¢n5,¿#æ…ʉzÅJ<O>Ž£‡îð'iÍÙgžJÀXÅu!Ä"6¨¦DÉúØ"µFгö ¡Ñ+º`6
+i :§FÁüà¿¢Ÿ¦GÈFsrnÆì­Ù_ÞO«?b»¬“½W·ª§Où/Bs·²ßƒ`ÃÝ{tݬ­<æ2;©Á«ÞEÒôÞ„÷:"ÅiAoQ‹ ÂTFs·2 ÊÙr%•çIs’ÃÄl_Ä ´ 7ûC7†J‹2\`mT½ü¬=!»8ó‚ÿ騫ô³¤Ç2g¬y )•ÁÀ£–'øœV;L€‡ýx‰\^³Å&`–h*fàK½¬AÆ9¯i<G¯ÑÁZqÅU-Б·"ú§÷òKª²—bÆ ™†þˆ,<iQs·¬ä„.VF‡9
+M!6ÆíÛtHè:I¬WÓŠ‰N‰:ž¢a)×y
+@T°.ˆèXãNï'H/Ïò\èæ‰JÒ p~âµ7FElÓ”»½“3 õ”x$BX‚ûú\fhdL•`쮺›øãUëÎoβÁR½\N‹™^ ™©ÒîÖ«ÖüR‡ïu¶&¯ FÙ™dðZ£x•6ÙÜ8^Úeáˆr©<ÚŽÞÜã2`Œ¢¦™ŸŽ'Ƹ<íÛÆûÞ#¬Ãg¾[àéÛæq1HÀt`ìÏ »¼RkÜ èP À2®‘•ÿ<Ü •Û
+ØÓɇʺœÎ¬¾æ“ÂGÂÈy˜‘«óØirš"qJ_}´<ã Þ¬»’I®'È ‘Žz°Y‹óôX©ÐµvL«™8åtÀ<çvœ¢¯ËñTϳ ÞÙ‹¬a °tâ"¶BmŠõw¥·ò°P¹^“ÌE
+c’5ÆžŠ“ÑÐéD¦ž…'{mp¢UNÑ’û‡3û‹DÌpeE@^_ÓŠi›o]úZßtq ™… êÑT»R+e^ëÔˆb9,¬>Eç7q*Üz›†ÝÕ Ø¤)üܤvíßá^c1
+‹àY%OÁOÚ\ÀVÀ´IéLt›Øæš­ñ
+6ó0LÙEpk½ñ˜¬K…9Êà [À@`7¼èSm(gìƒØ·n`ô¸×:%É\h_iC%{¸Êÿ*>Ì€ÜÁa/_2;K€`b#'îH‚Ú}‹ä¦˜ 7 u\-¦ž`œÔ~ª÷_árÙµóbÞ Ö„”ÁôQ‚îÒ|©êVŽÅº
+<zÁöçaÉF¦H#5Í3¿%ŸX#{b‚lþÿ~_›µ ±Ø àO¦ŽÁ}ôyÏms]i‹µQåTÒë¹Ôª˜ô£þùœó´#«“Œºm•ÁKMb†‡#:ÊÂI†FkPß“Ì
+ŠÂF\á Y¿e^ÈÏŽAK(S?=dÞúÒ`5âq‹DlÏŽHþ¡ëȇðG«@û[ÚXƒSM{†€ÐÓ*ðè¼U­@o_ä| s›÷Jà’Þd ·ž3”ÈZ$Z9§ýUÔ.?ÿä9ÒóŽ¤?äÄK
+yMT~˜¦O™ÿ—Ö“rX‘×ßÕÖ—=}Äh[ÃîRa²‚¡ŠöS¯¥z·òÔ^3—›Ÿçö=Þl=t ¬µ
+¬} áÀ˜Ç2/ìÎsàÆ¿túþ¼åDÇjÍ¿œÖD³æ÷‰‹À7?=þÀs*>Ó1úžj5Rv ˜»Tþá쵕µk,æËNŒ½ðUÛ·’ž–fõ9˜B˜mW·M‚h¾ÞÐBF²I&RÝÓÓä¹(ˆr^»76|Û@ël_Ì_ÚáxåŽ?uÔ”ÝÄ8¥ \FáqYV:»ÓÕà–€ímV°;뿨®0(ºMçúÎ$s|KºUúÚPŽ½ bƒ‰EmNÎmpV­ÄŽã˜¨ö‡±L#ˆ+è}gE5Ì¿E
+T_Q­÷á„žçm” Ì%‡÷rn,¢<ã(¬þçõ€a2‡©Œô…¥«µX HʧƒüC`èäœa•_q½]мŸEqªšÒSÀ¼6ƒ­†ö…ÿ¬xj¾«%õÆ)}À¯ýÉ3¹!šÍRŠñݺl. CÚÌéÅש –ThÇ•)ëàô—ç­‰0ÉwzШ©%§3$+ÉŒZÀ \uz'‘Øä©öœ±‘âøüÿoâ::¼ná7vÏÊŸo£7“¨u:U (j—Ú,K²Ý†DEmc#(l뇛;Û’AÓåG—mƒœtEŠþFíª×‹õ÷§8vn¯t;ÓXÖ“êJ†šY޹ǤÅéÍåÜì–n¿[}bºïàæ±KDÚHÒhžº*ymKß~B/kxÛwÊtt,
+5§ø mŸÑ’,âÇÅÏúpjFî=r h˜Ãÿ¼åuèx~xĘí`O¾pˆ%Ǻ™6Ňà <–¿ùu‚MncÙ¡ˆ–:u±cL÷ý5ý^íRëñ®îW'MB/›¢*-/1°³fÌCGãN§*¾„åC@þ‚·à¦%·“Ëiò%y:ùzœã¿Áæ\E-È8š%_m£ô":y…ýA¾$2›Pò8ÊeîàžÄH)%Û}¹iÀ~pôÒõÆ×ôFdÀ n×3 €fóGîm¹TaY\™8X!f=>yg@Ü+ÐÝ߶„ÅtX½%'€Ì\p·Â*IŠÇìÿ¯…;\T÷˜$V`Õu^¸†
+ftR,A^EÜ.@LPvÿ·çã~ýD|7ÛE]/=ê¤ûÃ-Î3®`$~ýìÈÝsM›üJ=<ÏÕÝg j®Õû##×#œ"SOîdJélW‚²­ñZ¹‘ý‚:Ýé7T0LøKH­›SÐTý‚^SC†è2¬Š=n?®Ý¼/l-@)¹C×é?Ô‚ ¶Cƒ‚†§@[¤¢äãD ÑýÄg‹Ä/³ƒTuðœè(àe÷…¥—;QêƉOZ0áu¯º ÓQX$E bR F(å5¸‚¯q°ªD+«àOÁ4Ÿùþ2Ê„ÐÙBÎWÆ_R<¸é‡L¬JiEeË|¦S´x/¾zñ¡Õ­NmP.¦~ä —é» ÔüðåŽXΫÅy®‡¸8Ÿ®ìÈáTM§<“¶™5¬ýçÒÀÉ°Ô¡Pøw~Y~ª)Åp„U‰£Ø
+
+4XpªÌAUµ%’]›î×£´)K
+àíìî±!&hºq)jàJ§]zÊ󕮆DbèC¹d<ýÀE8Í0c·/ï Â]„}®‘ZLm8Ûn]•zaÛ—~ǽÃ÷UÛf“X[NÆÉïIgg
+dJöø Sõ“9Nöpº¿jÚ1¡·!P<»›uëÇ;Ï­ô ËlYoRý& ±cœ¾OÑõhþÊ¥nko®"4CÔ—Ÿ/"¹TËÖþ×1ùµUDÙH
+½u%’Æ=57’°—¾¬¶#f>æ6E5?Ìmdq!nÒ&pcòÖ«S4êR0'6ÃÉ $N^ö­'Œ{îK}º“1H?·|¬Ûtïøžé
+¤âE-}CàXX‹,ˆÊ8mÖîÉ©(§8©ÂÓ‘ÞÅv¾Û¨0ag‡ƒX·¢M÷O¡z%"°_SÅTå¦"gõË”á*På(x¢§‘6±çl^~ùÀ¬H†}2áNÛ0HŒMçÚþ|3Ì>0Ü'‰m·r,›'w[Ôœ<nò×€5¨­¶™%Ú8)àW-æ²]Á œÙÃódÆ€ð—äêcÕωÿV”3+3íö&(ã^Q¬téWÌyô•fDwÿÍu²ž ³y½©5Àà†à=jÿܶsèR\ShTù¹wù‚ pwSàv·éFÖyAD@NH¯?›n*®K²Kt‘[™(”ž¾‚,Ý|ûæÊU\„¡GPs¯uR«l­0Ãæ4h—GBÔÄ^ó±1áÈ\«Ô¿Æñ9r۰ɦë)WR+"é–P}?g.×]º‡(vrs2Ÿ›ln pkÊör¶¬Õ–ÄmNsüžäœÓÎv ÇqT­rùwKÆýÍ,êž'Iè˜ÎǔԽxSYŽuçn‹!°
+äóñržûjÒ
+»‚YÐÿxÞ¿¶v »U`QÏÍ&v-2L
+£v×­r´D’u»â‹I†1æ­†ùºA´Ýã-¸q5˘
+¥ÞîbûÿG_(÷7Ã-ô}¦ž.œ!ßË<C`N;SùøMeec@¥Yp{êó‰Ó8õ¶æªN}
+U³{ºŽgãÆ PSõíU~œy2ƒ†9¿”N7毉M¦©PúA¡“'èE]*з÷ÁÔì1j~ûCš*Œñ{{³|H·ÌHÓÍ–/ÁÀFHz¦ˆ•
+4‹£/¡aÂ5J¡XÝ1â¿ß¢ë}…µçì‘Cà›§°}k(B“ߥøÅ( …màe£w%Õ=phr·û_­þûéž\>û“k–wbrºiaÅïÃëªzc9É¢Òµì0ÜfF–»Fá"Íà™M? é»ñƒ&S'{ÿ)¦J3%ܲ†Š~”+
+£÷ÅSæâè
+vxciü²zU@A©Æ$KŒº 0yá¦
+_`™‰Û
+~³Â~¬è•¢!…¸¼\õŸd·vŠ%T†J÷’”?aÅÊòûÒ( årdè<¬§íœB>L…3«ÐçU‰ýþu
+®îlÄ Ò 9&ÃV;¼?g©†ÏÍ]¹>MxZÕ*‰–³{T~tKcÞp+!!ª¦›ú°j'
+ipvõwwR×SrÕŸóÔb½Åc†‚,Zó:ª†n¾„l!]Ðê™L²XZÃ$‡¶–ÞøV°¤r„&s*ižc ë±iˆ²ÓCËH¾èTˆëÒ•©:“ºP…ؾºÆ7+“žÖK;›ù?:ÔD… ØAñ
+[—Ø ÷=·6»´G•Ûˆ|ö€ý&üø{¾ŒaàPú”.Õî` WÛC…¶ÏÈýß
+UÌs]+G…{Lˆ› ³»õƒ&Oøñ÷Á+B»~.u¬yA>¨¿? cà—~ôk¸šúÎhd™±x~4áx_~ÒøFFC¢yh¤Z
+³#PX’ˆM9D J£ŒCùæKPNteeœ1ôö÷ÞËû9þ¶Én~Ôx¹1M‡ŠñÿïˆÄ%|Wä ‘Ø8·Ð}#]
+åiŠ½“¦[û,Îx pÑU‘³ø–‘½W››Íø;¼Ù¨¹v)“è¶# »
+ê¿“ä§âçÃ"J° Éþ·ë ÃB/7Ö%¨÷ñïÏ\¢®Wø­8˜ô¦¯&T ÒÔɨ<Eyòrt§xôú®º¼%/ÌÚ<Ò©Á“èJ
+XNÔ–1Šsš
+%]‰}̇êµsÛ^õuâ¥n Äj“ÊWZ0+V§‡¢„õMÇ®sÇͤ%fQŸp¤"ú9I.eL…•”ÒvRû(ˆÄ¡:ïÎI}Í'5U
+Ú'ÑŸ’'ÔÝ€OöQ¶%¤'ÕŸØ«öÈÜAw`æäÖ÷éló¸E×a«¶¯…ñð {
+»·;ë]cÎ
+“dJ:”&Ì(Tk"¬Žöß¡?Û‘üê)oìín‡P$~oÅfN¢7z\ô9DÛsùP˜„Äj+Ý
+ÍPÓÇŠ‰eü>Ù]•÷¯V†pKGãY-Có^UÏòÞ)mâ&¦8úBeíªÝñKÆköÂÎ(ŸcfÆ@BD—è¹ð ç3
+çÞeð¤wNËÌlGéÕýú Ž
+\ X#ò[Ò¨\€Áüq&Š¤XêÒð|/S
+¸21f¿ ÛŽµµEÕàv߃É~‰í\Óz]¹æu£² ²¹¿óË£#Nù´pŸ¸
+q„3%Å¡<fÔ˜ÍKEmÚÃÀ`€Y‘Î!ýˆÛ5eï™'go LAÔ QãåDFÝY†š¼Dúž,™ëÎÄñïN›e£Â£—²ÂÏîçìócà!?íÐã…^]) ~+¹Â~VõN(¥–òÂLpéé×dÍhÚd¿ÝX'è¤òSmgqºC
+õBÆÓâ7@m=€ß\ §jTºÄ ø g†$å4#þ)Ý{z©X
+Ïmèýõ®ÿ¹^­2 ø•ª%þ´©­Ê)*< f'ï=Ôð»–&¾…>ž©Õnn6©¡a]È›‚|-©½˜¿œ|Ì
+endstream
+endobj
+689 0 obj
+<<
+/Type /FontDescriptor
+/FontName /UEBWYO+LMMono10-Regular
+/Flags 4
+/FontBBox [-451 -316 731 1016]
+/Ascent 599
+/CapHeight 599
+/Descent -222
+/ItalicAngle 0
+/StemV 69
+/XHeight 431
+/CharSet (/A/C/D/E/F/G/I/L/N/O/P/S/T/U/V/a/asciicircum/asterisk/b/backslash/bar/braceleft/braceright/bracketleft/bracketright/c/colon/comma/d/dollar/e/equal/exclam/f/five/four/g/greater/h/hyphen/i/j/k/l/less/m/n/nine/o/one/p/parenleft/parenright/percent/period/plus/q/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/underscore/v/w/x/y/z/zero)
+/FontFile 688 0 R
+>>
+endobj
+690 0 obj
+<<
+/Length1 1708
+/Length2 16455
+/Length3 0
+/Length 17579
+/Filter /FlateDecode
+>>
+stream
+xÚ´ºeT\ݶ-Š»·P8www'¸P¸;÷àîîÜÝÝ=¸Á]ùö9÷ì³ïýûZµªUÃû³ùkQ(©Ò ›Ú%ìl陘x
+átæ@g
+vŽ6FÖÿa9I€Ü¦J g‹¦ø/µ´³Ñõ…mÍ­gòJýï6YÐöãêý½¹
+€‘ÁÖÎù#`ïâì0³sDø{˜ÜÜ
+2ý¸ÜÿÍEÞÈÙä®ÃôÁ/æýÇç¿ÿéý¯ÿ³ÿ-"bçîEÏÆÆ gý@ÆÉÌþ·nŸÿjò¯«æjœÀË÷
+ ÜM§*ŽÖƒ†tršòŒ i‡`n1Þ¨Š?V±­û<‡¯X7¶
+Ð7hŽÒÊž¾7‘åBâ5±#[•&gž=ûýC3)Ð ›|p–ÍÈÛjý´+O´®¹Fùjk³•ü¢¹À†‘GNI§eÞ¢†lÒѶÂ8 }@±š{&ܵ¸¼½‰Cå…Õúè35ñÞšPÏÏÝ®7äÂÖKÆF²ž[¡îÕÎÇ‚£Æ‘f÷_¶†D/ëífXÔf䱋%Œ¿ïÎñåö3½¢˜×æ~Fë—sŽ¶”"¨Ð­Mý37”Ù ®0Ñ€!ó/°LéaG°x5òN5ïwG,½ [ Å?y'—Zu5üzÇ~9íE0Ö%cíËï aõ»¸K²ç¥çÌÕ«"÷0ù$*ˆßr³œö»ÃðFýÙöAZ>zB°woD_›K‚ëe¹¶¥Ý¬M¼E½j¡3· å/]õ0=l ôŠèúæä0Ýë`¯ç†WµËûWz†%¤¯JÝØVÓ¿r²õ«Ýipa¹”ˆ§g…- vÝuÕè‡çùîlä,©ç‘4XêÈP›Â/~êçØEYéÂÍ
+²à%~ÓÎ5ææÞ4É-œ$PñáߪsŒ(JSÙí'
+ÿ2YÏóã
+îÀ¬ZåçRÄaç{>×®„d N‡ÚÄ»ô~k-êBOm*ËÛüeޔǭP³o«ül;Å\Ú´eökÇÙ«ï«riÆIβf,¾ò.º6åS¸÷µÏ33%êŽ÷a8‹Œh…§|ƒ ®%/ Td»
+gŒšPX¿ Ýlbóg‹#•{Z¸4Nâ½lîßR7Éõ{ùßt×mÊ£ñµ"µ±‰;g÷(.2$ñR랪#~`;V¸Õ hH¥ÝnefeQ®3¾±Œ¥áBÃwó<“8¼i hÖ=»ã|µ?>n¦8R+᧻]À®ô¬½EUœÛÒ­#q5‘}
+»‘ÍÉìuî=Ûà19ã}Áñë0žÊ´•Ù0gËÓ„,%ÞA)á⸹GDý#3÷{Y³‚Z¹/GËØ‹&îm
+Ô;[“·d<[šœtصþL%mñbîÂsbpë×KÒX•H‚ÂÌx¥Ê ¯+Æó½xήh=+½À’ÍO vKÕÏÛŽØênì6@•ÐHk T
+jÆógÛ*¥ZJ_°HÈ`ÛÎ(WÏLÈ*õñ5±¨É¨Ù†ù:HÅ<Ät–Y*¥éî—‰éR=ßoïzRI×à1£¼è3ùƒ•AGC†ûð®l
+G‰•& RúˆÌŸY‹wÙ×ßZÇ•äñMöOI6 ÞTU…üÑ9Ð F´Ý‡îäñÏ/cŽ‘'Í›†fÒë¯KÿÌÞÎY¬ Ç¯È&G÷‡ó+ƒìJüš¸Ì¬ŽŸú¬1dLÌeðƒæ¦ êåTž_×/eZâA} ²7£æ¥¬Ïû&ؓЧÚð&ÉcÆUKÓ1‚ɹ$†ŽvÞgjC5·Ò7É\1!ì/rõTŸìBg
+¶"ñ¼ç®A ܇ֹ™‹² ¬ŸÓZI8ÎSŠ4¿ÇXz¢V°ÖƒNŸ*zÇè•ÙnôhŠëerÿÜáC¹ð+z8Ôb&'Á$)k?@—YĨT¨Š{IàÇ>KÓòò †”0jz•mDÀwRq[Ÿµ‚àv#H-8íŽ`ßßZ ¾ÞëO‘EnZÕ6쟋ƒg¿ûÜ çøÃiÊ×&"äV Ö‘¾ë\ÍÈÜ^½grúl~×%ºL`‹Ž* cW$ÏvˆÞŸ‚xî¯Ðäúnh¸¯jôpê:
+¯ýêÙ\K¹Ba€J0ã¯ù(ä6wG? wÐÃ,£Ñœ£5¹.IóÖö¾óõV€œÛ>fˆ_þåwÏ6u5eßø=\?²]ciÞjv;箫V"{ׯÙ?dù:n2®‰”!¬§ãÝ †™ÅSÕc¨8ëõ…Q¦2…·(}ŒV¬jmÆS,Ê(­Í¯ÆÁs‚VcLƒ‹‰«ÓÍAlõÕS)ú±NR|>€ ›N5©»˜ÚÞ=6uè2ˆ*d9qñøü;;!Hg|÷¢1n~ý1;*ØÔÖÞø'BCëUúåm‘öÚ›Ö·ì6ó+Ó¬ †\Ë ×²,w:’®ÓJY5® œ Å¤…8Î;ˆceìTÙp‘îªPÕ}BÖõ‘ú×Ý,„šªwZ9ÁäúWPˆbçkm•ôÀ¦Z®ö3>5Æòw%y0o„ çï¨2ß¼~5rUnÙ(¨>Æm0°¨¯yÿ16ѱZö² ¬ÄãzÙÝÊ$qñô ¶Ï‹|@p¿ÝýT˜ˆ‹~²Â]0]½¾1¢øc¶B-Â"JÑ]ˤ,WÊæöÕÄXÆUm䵿ˆu_Qxrõ¸1¯#†\­ÀX¦ê½ßÉí.±…¼75©j2“2}YrühŒû7l£ÔÝgD•)§"ÌdÏæ½äÏú§Óþrï
+Œ¥UÀ¶Æ}âÙæ'á¾9š=H}5Å#Ò¦pXÞ¿Éâ°À/.äï!8žzLAûÁ˜M³…æ1£ƒâíõS”LôbãE”Ÿ8ýlvLdJä½1äån;ý‹i!•«qí'|>SÝWܸ˜”áöHã–À9A מ¦îó–D%üN­¢Ñ"g
+^¸ %+ý3J+ÑUêJ³~³‘ÞZÊ–_Ã4üÜ
+ÖÉ·Y7ì«Ž{I2ã&{Ÿ)J‚2
+rï÷Z#eç ´Áü.7Åë¡;ÀÉ¿ÕPX·;ç2z'XfC®¥
+¥Ñ@LE/&¬Ñ®}Üg
+N¨´‡GÞ®à‡¢ŒNb¯g_0È»cÿôR¼ßÒÙÆ…õŠ Rø(<Î
+A¹6Íb9wm7wj<-GkïaIÖ…'™
+•PúzPÎmû±Ä£FoIŠ©3j×Ëh[§%pxæ{z¤OÔ’Ñcy¬²­$c½ (*skrnV #v¹æò牳S[ŸéiÚECd›íóäR Ùù+¨ª°4mtá"Ïèš"è …àa4çtšÝðóÈoµé³Q…á+Ãñ¡_ùK•CZÜÝ|~+¾NH‚gk¯s„£-äßugælæ=mÏé[®÷My•¸5Ƈ}çú}ó,ðŠ2€³¢
+}“&Eµ†s~®Öàaœ¹£”¾x€ :ƒ«Ô½wf‹MP²XËÔ›ì#Eô4çÃì‘zN59‹A¥}¦ ôßákJ§Žz‚ G×BŠÁf†VÔDkv|ãT¢zÆ…Ý=mÕm HÙ‡îï‡MVž2Ù×s~hÖwkèã6¼Ðw}­é'`/Ý* Kvä1&Ï($’OÙ$õë…ÕX ½hSŽÀ{ÔV™r¶0°Ûµ1˜a¦ÅV‹[]2FDVÎ`ÉIRûÛKáŒ÷ "èõ™PÕÁlU±y]Eïë›ð«;µ­û~:½‡Í
+—8û5¸åy ¥çÒ|Ѐ^²lÄS2ˆ×±ƒKkÍôÈ?³¼Yª6V2^ûÀR¦€c©’ê¾0xœ{‘MŠcîAôÞðŽeÿU¡ÒgØQ JèWÜëÑX="¡² Ã#í6F™Ë’Å°…1H§}6¸ÒÀq€Ä1áNn‹¹ºâ
+mÒ/q?p#îøŠêN,Ãnóo‹ÄšÓs) ™Çû˜«š„!Îru´­ xÇ<a£¹TV «YOÍ8HÞh]¥­»=ŒGm©þ&ÄvEo ¦áÊ’vùÝ\]#ž‚ŠæCFb
+&ý’3»¶âȘ¨1†xÿ> ŠÔP“TfóM/PA0ºa!41š¥öXŽâ¶êO°Z@½”´j‚Wk`‹
+¥Ê #Ù„u
+YÜ•‚1º _’†cÆ×µÿiØôcS> $>üg¯t‰ŸÔu€ Ä:7HhýS­´ïæPÆÛoó|‘3˜”Àr×™|¹ƒY!®T'W±šl¯È#4®Mœ`éôEÍ ¸naÑüê
+ÍxC‘3Õ ÑâD@ô¤×i]àMö¾ÛQuʘ˜5Ta3ôÕ*9EÜ×îqûòdÚ÷|é³á]®ÜgíÐ/‘8M'7k~9×ÁÚ'I¸¡z3k@ ó &0þä £b™w퇅Ôyå\“%Ð,ÔEY>½wüÛ^øºG òA˜wj6£¤–ÙØɤ´ì½¾ýõL™ÞÜ.yÀZC§êö÷œÞR­Œét‡oòýx é×…Q å‘Jí¹w™¦Xö6\ZŽmë?ë"ÚRQʇ0ð„ lùHSvRž£Ö ŠÊØèàt æ†_§åÒìq…‚À6!ŒùUæ_DÓ­Oãž”MM±êTbPFê³ó(°ºc)ÎŒ¦‹ÔÆxt¬’s@ùf¾*%²ü"¬<—³Ëú´D¾ÌÚÓ‰á… $Îì›—2¼¢L¨–¶]§VSbĵ›¹á­>"‹ãÈ|­%U 圂Â(4M b:žÍViRæóSæ àÙ¤Šh®ÓA˜Ç¯îáp±™¾ª1râû.Ç®¥¾<Ò·ÔqWu3#ÅÁ¥ÒÜ'7úÃÝGÆiS懳ÁíÝ@öÒº4nShºSëBªóö§? X/c±ËÑ4YfeÂSLZFj6`a½.•|)/=¶æ)«K KÒâõYä~âøOhCé‹Š£ÁFŸDâÍÓ² Ô¢çõ€¼}Ñ ^—<cV¼
+šŽÖDÇœÞJ¶Ç ®Ô°¾Ó¯WÊ÷/nȉ‚/”ïž¿Oá·jZ5 †%¾6qÛãc±#Ûýýˆë¶†’_ð¢­<ß«¤GHv¹O˜¸ü´¡í«5.Ê`Yò²Ç¬J]ª]¢Ø JcζÔüXrD„„YÓû#‘Ju\ÒtÊžÒOþs;VŽÔž<C|ú>?¶bÿƒÞàŸ † ?q‹% ƒ¦½|4’£m™ 3Xˆ™ü
+1^Rî.Y нÿÌÞBÐÔ깬$A¦üÅöU w¶ìBp_§ÔšÑκ’¡ì0Ù"3öº©ÉX‹èV/Ú8ûÌH—l4ËÉ®¥þ UoazXd‹íþA]¤ÑCC;¸8V
+Ö&mä4P’«©Tzai»kÌ¢Ÿ½ïh….‰ÙšëÿwÃ)·:¤Œ
+!iù$¾Ü÷Qša¥ç+5]—JÜô¶Åˆµþ˦"w Tîóš°ÉöÈ\õ‘„ýR©‘!ñ—ÆHï.¯:‘&Àà%rá—Ó(zä_Ò¦?º€ÒçU*¦¹¬Ï4G¨D8¯å˜„¨÷¼‚
+¬ê¸—2~+sÐe5ï(•ha4\ŽQ&Ð.
+‘N,UÎQßV&Ëå¼3Š°¥Ø°wô'É ¬—r ڋ̼<ç9Õ“TäIû5›Yäe²F†°Ûrðóé=R¦ìyÊ­û¡Í¬‰0…q3'¼×`mŽ´ ‘ÀžR?Ÿ‹8”αÀ¹ªþA3ûú½œFÈîxT{B¡n3Jà
+7Ô­ç%öWûO¿Y$_†›Ù¿î:êû•^ï Ç¡Ò 5·í†ëv­Òû–€DÌ®¨$Kºõ¤b!ôGÕ<ÑŽÿέÁÉ­,» &À%ºäR"ƒêêÂÑhFgÔÓ§5nÚõ‰Ã%o=ô„ýKTÞïaõíýÛÞàîÏ2 xw5×Ô˜òÁß›ÒXMÐ{X$<QöFØû·k*V8ðï±N—^uÿ„âYGL|bµo%Š)¨AŠwo‡¢N!õ•\IQ?JÄУW^0þéKk$EìÞ+oüZ_›Ì+ì:‘Oi`…^Kë7“àªHF²—¬,Q\쑨3fé°Ï’Õ,ð>4tÕ&Œtæà”¦k=ÓÉ6V¢z>ç Æj9S·.¡)A˜¿¹@¸ò.ÍbCÆB㮃Õ[õÀ¦ã™xºnœh…3Ì€¡¥K´ÓdyÔ¸ûÎU–h?‹ÊmyœD.n¨''¯ýÂúÀ{öê*¼%Ø*¾[$˜$¦‹8±í=-P+­(2ìº*EŠ†æ¯ªdT7‘&/üDzÇKç™b’¢Ÿêˆ¼^Yb¡ŽmLûR„áV–ä[ÆŽ’Â.pMœÞË´ŸuBªºX‘èÇT èÄ>+oZÛ]‰uu A+Jî’8½¤v%ý€@¨æhôVgB¿·O
+ÝËŸÍw¡qÁ<2î!\M€Më,çƒÈ.)l÷ŠL û…ƒ”Фõø£ ÅgF>pÂ\xÓO@ǶöèVÙ3LÁsd&†E ²Ûn¾Š':ÏkQv;6H"5iýÏOvE3èfõökm¤¹bÛ #h—h½ƒ£w(qéf¼¶‘(ã X«ÕX¶Ö=”ÌVõ9Œ¼£­ü®Y‡ñ/ô<ª_ÙŸ?oeÚ^\`àŠ%¼X/$?ôôºe9 ªßqnRkŽJˆ„»líeÝJt_“ËÅ:ñæùŠÙ®œSK86•"RtmO$ÀeÙ{í.J¿Ó¹U¼‚Ò !H·M,ö(DÁlåázÝN©ÄÉ{CŒ~n½ 8+Šv£ü¢ ”Æ ãxáØ2à: ÖÊ6AÈŸúA†W;ÍC ¿j¾O£¦ lϼ,Úª^*Nç˜Ü³uÊ›¬’üÄbq¢WZ¾_üPS÷›'M"c:»ÆÞ"1”ù(6»u£açØÆaX=FÄœ¤ùPË0,3Çÿßð9u> =ÈU7®
+ïT«ˆÏ@±±†"ækðý5Ú÷UàT81æ þªNûÙ„àž…hÂÒ]a]®ƒýEÏ—LÑeÒéž7cÊc©0Ø»mwâ2ž<ä{[øŽ¦¾­,òlÜLÜ[J§K*Škvü ºi¶ÇchœSc³˜ï‚ëíª*Ò¨•K'BKt\“.#D™œŸ2©ÓUM}›–ûcÏ6‹NG7C¬ ÞN‹ÊÝzãjµ§'¬à òÝŒ"ˆ;3"£õ6ÑéŠ]>%‡í`áõ³ª! 0ªé—q‹² ð¥BˆÊLQrÀ87É€ïêfz9,îXÝN>ý`Ƙ _Ñ×Ôºòú>0¸bÒ+á`X’㈾*U=ý©•A&".Ùôé š×•F×Ø™ÏÖñŽPbChNÁXOa²;˜SMMZØ$$£?( 9›ÒÏhdHK‰‰yûåƒÉ?á{N1™)WÓ3êÝÑ=¡•xÉÌÍoJÁ#SÉx7Vr!
+/ÒEüÓÈÔ㥃/>/2Ù°e¤O×$í7€UŸÖ'šU?â^íhºT‰nÈžÍ\È™>è´ Öax°qÌTmpõŠO™€‚ù´袒 êŒ´Kjï Y“¨Ûñ£ßg.ô)yÏ
+RN)ÒØÖ0\3xhË5ƒ›ýÁZ°à?É=ÜPÝY4;ýþö}ïà¢Å#yQµšPpÄÃáþØgO¬ßd #¸;¤9AòwímM;N…ð$–ªÖµÿðæ|w­[OlWÕ—¹4Ž“©aî<!
+,>!Y¦ãIЈf[EÔ5«<ßVAÛ^•UZýº,è÷,—L?Ÿ»bm$¸^Í/#&µ¼¼‰üb„…†±ÔRÉPŽ¢äYÃ>Â>Rôô
+ÎÑe‚­Ý†¥¦,ñ›qœ¤†Mû3ù¯‹¤é®qäwFbh3~‘xøvu›eâЧ⭇:îPÅ7€c 3,ê³RÒ#œ¿sŸÜ£…?˜y!/ÿ’ZJT
+:PˆïfvÞèæ“æJ©MØ‹¥Æ–³G+Ú©“ßÚÀÇœçEJ”Âàh\tZ³ ÞZ"mYÄ]•†ï6žw~}Cø>½Ay¥;52$Åö2És]ÆkžÆóCܽWN@AÑkZÙIÊ öÑS#t†Fc¿…M£O¢<è*¨ñæÀëý ÌÕ
+¹I[†³G-¯v÷©‡~aˆrÝ#9µCzuu!#³U$3/……@Mƒž§­´;—B\¸àMòSíŒSÆ/èßCÛŽ`Ç®ì¹VÞÎÍiŸsÂáj¢>ë^÷-_ÙÄ7Ò…¡«“~gýÓ*í« O…¦!uÐÔóZ…¸qX͞þVÇÈùÍѶZ'
+MöNlTÒ’ð¦vö]ÂWV#Áæ{M¼Jìæý`q®•ËµU·3Ë~¨]ýP°aÜÔB/¹a/9:Ê!†‰&òÁKªœÚ#C‘N;öâvùº<£¦ ýøxéºþ eø–„Žuí¤Ë+ˆÍ!k‚tzQKF¥Î„ïñ!U‹(ï$(ò]6ºæéTuõ÷i€s,Zó]Ò†ô{Aö§ú ²”Ä&Õ>Gö: >»ÏÆÊŒ!{«öÙ ~¨ŠÝ"GØn*¿Zá«Ð܉ìÒ‘46 -Dúesg¿W˧ÄËã犧œ¯›¯ë÷À™PP·/ü+wžù­8çÙø.ö¢wZLl®œ‡"òF!¹?,áåíM¿ûój‡Ò? êº8Z¼Æ<)-:å~~CôlÕˆÓ˜P ¡ïÓlË+
+êàºRt'À80\ÜFaÊÆ[£j z/µ:Ò7ÎÒú!®çweý^ˆ#ÿX£«ìl[?¯×šPÊKËKûÀù€—µTå;Ήký&o¯NÄÝe‡¬xtJÝij<ÆÊöKli‡Ð¦ÍÄ
+VõX” à6“ÿÝ„Uçl£žaF\Ì¢{yÛÙM¼”xúÈi;^Ç‚ÿX‹j˶/;¶ç»+zƺðõ¢oÀLgxi¦9gl_v>ÉŒO¤3mè4¡Ë‰F³w¾m@*Ø”LUêÝøäó*¢õ¸")V°½ àÙ~Ï“r¨ÿjÄ—h|ÖÞ©–㡬W±7¬ùŽßçE~¶aÒU¬µ›±á}!‘ð@4/×xÚ0‰Tˆ*nãdÇ`(I7azEd8Ô£ÂA6—[o Úÿ :úÄ4)Ðýi‡Ù®`¤%­á¦£±¤¾½åŽ„^HVˆè "gìµqB`åi©¶C$7ôD"`§U€/P ¼—’-Ýsò¯}ì¾Õý:Ä·:á `ï» Xæácm’¼/WάŸ¡µ§qJe•º”K¼f@e„îbõ;Õ\¨;×J·³L‘t÷ly%ŠU&
+#õ8'ƒrº°úûìÛ䀳
+¾ ^AE2ðqå~y›é_¥–$
+½™QÚh!û'tuŽy$ør&Ãh›¬ÊpšníüÏé,uØ;å<%/‚³£@]­1DÝeksð¥'O³^\?”#—¡.q3•ï‹òWη[¤Æ•´`AfOæÆia>íôa Ô­69l÷ ÎùÅ:sPi)h„£»ŽABæM%öÁ‘rGïœ'ñWZå;0Ø“lrÚÔWÙ䬫ñi¹Šî5g#l=µ!t!kÄï©ü¡ V^~e£!莢«Ñ—ZH\!ŽÖ¯!¹ £Ëä ù>MBIVo™†VÎ Im¢¡H0N’”sü>甕}<zíºn›7¶ØÊÅÓÀÊžú17Ä"a^ý4Ñòv$ž¨®ü®¶A_Ä&Gâ@åEÙwÎy5»q5‘|ç[
+d·aw!žÈÕI‰÷J4¼ó®[!S„-'zTvÒê§P12åÅñ*–‰±+岫i>ÚÞBIÝ)$Ñ¥pãF6fîû߆½ÝLåÍzëŠñG‘‹önáÜO&W*µVÚŠ ^›
+®ÂvNº†xÖÍ|æg_Ì 1¨îÍäÏ¢·k·éš
+)MžBuk†+‹pEGïä ˆÞS/Cà¢hæí9Õ:Å:‘[>nø ¡ÈâÞBÆŠsâ„£]‚ž ŠNÇì|á‘ÄÔNŽæ p˜ó °«¨^Ù„èô(ƒ«*MäÏBŠåÄ.óØòÅÿã}„íúC~éÌwTØQG·Z§ªœX"Ê>ÖÝô܈t"ˆq¯æGTD´Vo¨µàÅÜ0yÑÃrM0hfQ(?ÜDÓЉ¡}Ö¢ÁÖg”«†:ˆ‡dô½t"A¡¨Xƒs}Åî“n7Xþ$ÇìXÊ©n£'nTÓ”,·Âá‘©n/}R‰òìÀoÜ—«ì?³ûN"õÐË™õM4pÛßN„¦Â?y-ª´n_¨à¶Tt±©EæÑ_•(|9/`oìÜW0ù=ôPî_?BêƒÏ£‡W¦ÀЂþ,‚ÂéïÏ“ý fµ‚:Òu¥%¤LŠË¼ho<"™ð”“nós©
+øÙ^§âÞJÈï;I
+ÿßÖ»Ò›ë…y:Â<MÑí+}HÔ=]Guç>\~SÔ´‘g‹’3uSGddÌ"ï¦"*5Gû»mãqÌ%6¿zÍJ¤‹¤)£_šã2S |Cž…)|ÁÍg™(ø=³œ™áƒÈïTE<˜xøƒ;7RdžßÇVÉZIÒt$‚èŠ|Cà
+ÓTeƤÐðYãàYåÓŸôr´’ÙŒu¸;öbŠôƒ.öuß7#ÓèOÉ\Ï"ÕZÄPùæ{ÃÙ‹fÏVÛœå µˆEÎ7R*Z Â!!yþ/uFUü]„ÏYûÚôÙ%3U µéI_Þ,lÕW¢%)¼‰w»b臔#Šã°]tDåœdq`\ÆIn' 1Œ¬â›M•í‹‹›zKõÀ4ã4ç7¦ÉÆÿ¬ûO½}ö½AgñÏnÂñµû*ùª¨·E¶¾êÈ¿N9bÔõD¿¼۹ oK'™1:lô•*ŒÏ£ lè9íw®8Í !dCº
+ø6ú¢ØÝ Iüc¥fäÑnɪµ÷Á8B•Œ…åœYsr²2ù`í«é‡s.Q[o‹ÈâÅáœL:ºLÁ¾p‡Àeè7R~L³B™[?ç¾ûé%&cã)Èg\ÂËß<ˆoO–_„Ü'rÙ—óc‡"ñITa6lðch£r§ñ[Zz{§»¯ãO¡ÌK©Å…xä'Âé©á]‰š0Äh5ǸkoA]Šñ<~ê*µ#Ø·cŒ3ê·ÀÞŽ±÷óN[œb½Wبú=ÍÇCU²Yƒ¾Žx0w$oFþ‚žÇûãM>…«@;ÀŽìØ”dƒÄ¨–Lx\â™­üknµpt¨!{¼H~vÀµº1]æ®/2xÇ×aQu7ÐMÓå“Þ뱿 Z1d/1Ú0¢š—7ïì˜×hútB•9…“pÖ.×ë!yš–E>ß{,®iŠGçèLoéÉaͱ´²`0¨†ífó¹IÕÍÉå5´E—ìêJ:ÑÔ™Å4-_ƒ’ʉ½º™‚D3¿Í¾®;QÇÀt1zúw°ÊÔû¥J|ƒG£?\ª¶…¸dˆêÅÔûsxêéÚO·öý:øõyF߃ÕÛÃ’JWþÔ>» NcŒF‰1O=X­ð骢>žy
+–Ä|ՉЖì/•Ë“ïÜ+Ùƒ±ÈË^Ëq‰jêû‰0S¤€t;gðPžY0Îîg 3Žªl¬Ê§¬RMeÏBT—Ñùñx™ÏÂ4J6§Ž˜2‘1Câ:ú,¦<å2×MHm,š¶P„ÍóJ‡4VFþøAZ×'
+ÒK¡“ö ¼Ý¢_}õç½fBíö_$Í$ÏaëmŒ]×Ò-ÍN'o¨ÞchHâ§Zƒ$ñ©Ï/ ¶¬U£¡uŒ rz<hë5Û
+Ý‚¿Qš6㋉7À£¼.©#¦]ó~®¥{Ç ó~Ô¸£:‹€²ƒJÿùðPfϤÿ Uìw˜æÈ Š™b±'Œ¬ÿo(Ýú
+ æ…Àò/Ï €RJeÈélx5>ØIó6BZº­ÈþQ'¥qЫNÒvCCb!ê•IBþçlÌë X{×4×øÙDœñ4vDsf<»Ï“Þ¦êùÜ;õ»™°Á%CiNv}mPÝ5+ÁrqW–-X;ÎÚq¬ai0“Åœ czŒœèðûòOáÿ/n‘üŠÅ•}PÜZ¹Û6ÄØ7—` ö8^ò”þVMI;Ï­b p;µ+Ôë¶oxâÄ#õ¸IÛÚvÔ¶ä|¸À>ss—x¸º
+ÁûË6_oPq2ÑNœuµr}@DdM ¥UÅh&u+é}”iÍ3Ù¡h—©µ®ni´ žÑå_™gB¼¿¢Â"³ÑÇåR·Õ_ùIêœ1Ö\Ù§i½Å8j&g55–ŸwÊN¤o{Ü&)¯èºùC^¸t¸‰Ë£Â¬:FÚ׺lPH{þF$¦a‰Ž^5…Xž×[Lf˜l.饦¸ªø4Ñ=¤ÜôÁGûóŒ-Šåk}„dU¢lM§Gýj_Êg[û-p P@ýNÜS:W[2æ©¥”W$4yÈUì#ö÷ÌÕaÜz¼8 da· ‘Dsý”3P¸¿’å¤\C⋹ZÏÈ{: ËáÚS.¯díÙ‡U1C}9LƇä¦:Ïûo‰œjc¸™ŒYìIÁæîÔ]žC.Ëqº)EPÔèÛL°
+¢Xªß‚Å‹ãÇŒ§JõÊ>ÏjÝ*ïœ\ãêµ;æš°ºIÐù}{¹F›^!*î(|¤>#¡«¡Œ¥[ã§òL‡%öŒ“.¬ÚÒoŒÏ#²¯³¥~§¾Áhég©ŽÒä?”ï—ììÞ:JoŽ“<ßbh=ÆâÑ|(õÍi6¹y£Á¸Tù~À§€¢9#A½DÑŸ5 25/Çk`»ïý~6+Œ0B…üv|þ¨Céã–z‘ë(ˆ®÷ãJ¡kùJÅðÆ?½óMúSÅß‚VW²¬5«÷~ØsLå‡AIü‚šk9smŽÔºÍ9àæ0³²¯¢Ûwi_Œ¿c©C±h0bcKÏ`ÂlŸ¦— K_6 ;÷tO;¥‚-Yáå#-ÖÈ-ïÜIâ<Ùe1uqëϼâC ŽvVNïHBm€–%„æV­^¥ŠÊ€p§
+endstream
+endobj
+691 0 obj
+<<
+/Type /FontDescriptor
+/FontName /BYUMNM+LMMono12-Regular
+/Flags 4
+/FontBBox [-444 -311 715 1019]
+/Ascent 618
+/CapHeight 618
+/Descent -222
+/ItalicAngle 0
+/StemV 65
+/XHeight 431
+/CharSet (/c/d/e/f/i/o)
+/FontFile 690 0 R
+>>
+endobj
+692 0 obj
+<<
+/Length1 1946
+/Length2 20883
+/Length3 0
+/Length 22100
+/Filter /FlateDecode
+>>
+stream
+xÚ´»eT›ë¶6Œ»»H)îîîî^(œ×¥¸wwwwww/)ŽøK×>gïµ×wþ~##yrMæ¼æŒŒÊ÷*ꌢf` äÌÈÊÄÂPPTƒÀ<Œj@ [cG
+ ’0vò¸-ʦÎožo,,¼H”
+**
+
+ÝœQnÞ˜œ}OÆLJwò¥
+D²œøD‘þøh4å«Yp¥B2MZ–ï{yð°q¯<¬9꯴}&Cõæ‘œêiþí§?³±R ˜‡ çœJ¬X8:Ū·µÏNëâõŽ ‡Ô/Ýn£ÉJWBD>g|›9s¼<!B}A,IÖÇÓ7¾?Z%Sךƒ°â'»;¬’ä/Mì;O³ÍfÓ&šFÊ0}ðb«˜ÆÑ:«Ž¿ø°,VÈ‹¿Îû=ø„FÑù«rš'¯Z³ØL Y_›­S»¦ÔqÄìÙü‚dkl}ËÜ-ZÖŒ‘’il„Ù
+©Q7d‘ŽŽÇk•š/ëù’Fv”‹´;ÌÊ»ªŠÚ2²Dw¼ºòˆT¼É)IòKÈÞÔ·Aö`Dä÷>ç }§ºÐß"»WäÄ7¿yÇâ:Ê@s‘uÍE
+d².š‡…š¯›V@Ŧ¸hÃç‚ù
+Ë89°¨©k®>#¸d›™4
+Íù€{íCs4Ç®Yò
+¼±UGÀ5ÑHx›Ér4ª”Ùœ‡¢m–¡³\}9…4ËÍÝÏ`Áý<®Â˜Æ’Ûçæýpyß±e…xFÚ¼¢•÷éÌFÀæ6³¹æY<ZñXr|h†Ü:c™<¢^‰À*îºÌkç5„_YpÔº?Ë7gWãêÚÀÒ;@¦Șû ¶R33¼ló­ßäta:Ž«kßiöGÉ^;KýHm…ôš{F*X#(”íË;Ûæ²ó\|Þ€"qœ€'bÇþ _&ÈYÑú!΃éëohßIýÊ÷{Lu§õzTæBx– "|b<‹e¾îˆu¸áéptŽÇ«¬ã Ø”¨yò¯–Äß"2À€Õ+I¯ð§4ÂÑk¿Ü´<gš~DCô‚@Báf1å×HÌEl{ùñ˜¹YÿyþªÃ SÙ##ððXFBU¬FÌ¢R+W j,´h:^°>óäqN«€Ï.-:jhxÝ.ÌxiÌKþnx¯í.×X0ˉ⧇›kiv ŽÐ⼌Ï]•¹öú'i‰\?G¹~¦ßM›¢›Ä
+”AbO!̾ñ¾éÝiNîÜaØeDZ¿s9éÜ4dù¿¥Ï ðï ½Œ•Ö×èc A#.ì˜~ „À¯ÀÎú{ì¾ b¨…ýˆ}v¹™Æ…DSÔi^:éŠD0D`ÈS1M¶kPe Âš!Çp°*wï^ûÅHn¿QÅLN¶~Ûƒ²bIg6ZÃ}=„jî–siaB™K›Ö»¯\Á¬:û>t¹Jç’Ãü…³T‡ZØoÈÝ ¿ŸÓ lÊÿÐRhÂÖº¬6´ÝùÓÿÇ€/—Ñ™#þr‘éiÜviêi'»])Wn’4A4öËé÷'bs·d?eWÇ[»8Î8qô«ðÔ¢œEøt .^¼§‚V~¶E®]gX¥“+ÙËCµ.­b`-xÍ7=œx Ë©uóbfµXŠ `u¥>B…-$?ƾ2Eˆ—ùS‰©n[I&=C™9Ž]RÙéf•¨xsžÇ>èÔ»ùž”¨ÔÀ r¸d˸Ô$YbŒ® Æ[Þ,¼o 3Ho„K`HÁ?Gsu]å 2×sZ¸^…[áðpt´§àò|l2‚üÁ:ÁÍð¾ilsr5\Fy~ë$’Hî¼ß:ÿZ#õ´M½AQ„¸šÇX‡6œ@?ý+|¢þÿÙ­œUí| V«Ÿ3L¦•8¨aÙ[tx\eE×]ï˜ô>äžÛyY%-%p%vmP< U_”tù‹1;W¼àWf&l>è5äQ ©øÃOÖ·Ÿ½4£¿Õ‘\kt¤@Rfäêy ¯4ˆ/ ÊB²7±gè\!Ž|‘ÇåÅã&Ú
+‚ÆRrˆ—$wµ ÝÜÙçUU¨™-©€SïÜë‹Ëåç´îEãN¬v¿Ù'—M‡OðVpF9-"ÔÚÚÛ8CöY¦h[ª‡êd(37d(ŲF]ïSvþØIV76R6 SŠ¢Œ—|Õwpx#`ò¦üß}àÿhºL£“@ âÉŸSíGBMìoˆžÝÞ‹ÜOÒ¡#cƒÐ“u¿}c?ükAáî{¢)=_{³E©ùRQÓõ/üg´ý ë›Ò›2®3 ¨ÛÕ’²ý‡Y´í[Ä“ðâÉ@&J©¹ë¯œŸâ½ Í6†üùŸ“Ü)SºÔ CÜ*Û”éa=½vlc«'œÉ€À
+lwW~ëh:¾­ýw2ÜZ!Ý^ÜC>aÑÏܯ'\M<‚ËÚï <¨¹RbµõydÈ$Fµê,Õ ýR!ËqåDQ6tL¸28ì©?ð+üŒþy?öU1Rº¢Œû£ÊÒü‚ Ô5=Ó-†2 ÷‚ž|þ“2–§€—#¨0›¡î[ð‘/Ššøz9/Ù~΄¶>Ó­SйždARu
+ÌSÁû϶î¸Fã .¬©&òß`ÑÙ—\ÅȧÁÅÚ–A¯ÿ‰Šü›É/=VMÃ5g 1ÕÖøˆú» œô£yI´´ur:‘õå‡æ!buòL™;CXIËö©¸* ­í!NW¦žüG­8>n–ÙXµU(Ÿ¤=ŽrèžtÉ8µß8éWм«ÊÑ9P û(‡[K½Ôqàq}±ÑµíÓXë2ûøžÏªóYÑÍû’¯" ó@vUXå
+Ê„‘T=Æ'–÷½ëwœ¶¬$óÓ=Rú ß?ÎÜ6Bï(ÄÂè#ÉØ4-ÆÒÚ1ZÝN‘f0l©b¥Ë 4æ)N®–­´ï÷Щ > ðg#zØâ~ÿìàüÄDc‘Ã&üe|èECx÷Aô«Â{m¸k~iâ´×»˜~µóä«Ÿ!8í]L+CÌ|;C•/Žà9ÖÐÇZ~Êæ׊Šã‹`ÈVBE ;ÏkåP‰êÞfþF±UsÜöZ¾õ2£
+×ýñ‚ý=q·ÈœŒéökè^0¡¦»,›»Ã¯/WmãOp\ÛZ0ˆÏ¡vWS€ˆÏEµèŒg‘ïÏqÄ É[¤ üŸu );v-gÆu<˜~{jÞä;4]z@7¤ûÓL<ðL£Î™^nS.’Ucw¥z\o¡û/° Dùzl» 7õÊCu2ð@Âå=ˆÔqmJEk¡§—åØý,”ï%ËÕ4#d
+„º_Än®Üb±¢¦íÏá—eÏä6dÇ4v=¡§¸ÀÛà U$|¾–íÆ_ç>’œ$·¢ëcXT>þ£v:/ÞüËêk©ï——ù³¥4é9¢Ñ¦XÒ$%t(ujŠEd<ö+Ôø17óŸ¥¹“[ÙÍâ§LúÍý‹‰vZý;iÎDb›ÒÂ_Í&“éªDË®ÜNVÐEm:Åa PJ“-ÌÕ£ú±¥Ü…m÷ìsÝf‡3o2ü<¿¦¥Róº³eÚeÒÌ+¹!Ò®‰5'aœÍ¼í~݇´Š^?¤¨Ë‚›ÅD] Íýž‡@Ÿâƨ£NÛuß1ö‰Ü€v^† Ô.÷×—7]j[QòÞWxY1öÔm‰6ÚN
+‘¿“®±OG£Ã™aå-ÄÃì¶8ßY¡ÏYt-|y5v¼guؤiÛ—çt§©¢òÅ“¬çó`$à5
+65Cãf–qܶ"Úý#ýTá4DÑ€Ç/Ð=W&j¾q¦¿¬öØ»C ë4$L¾ÉJ=k›´ÄñÈB·•Ûo¿ð²^á9‰C°/Ïè'—±NÀ‹µo\^Š–Qùz$B8mã_Ž¢xs^FY,nÿ,î:ŸÒºNò2µX 9o•SËñqåícÜÜÙŒÁñ=$SÄp¯*8hjU8‰zöm’`²ÒüQg yhcäÜœK˜ÚwX:ÂÓý G%Â5é%U•å£­AnPÊëéU?L§LZ8dÉü®8ýxQ͸ò~¦*¤ gL¢£Kç#-i®‘.6¹)Æ-g¥±úŠq§œG¤øžl@ŽÄÿ‚2zA8ÕÌNæ÷úµgrú‡Ò07>›Ðm çõ^íòI-œTÙ1y-\ŽvFRû¹¤ebSËQñðŽäu¼öˆ {žº–Ô¾T…0v‘Ç€ý©ü´oóÉKÚ‡R(ü7t/ú/~ø B–óÁfl™te!_ o±=?U
+¥‡$— &üÍá –@*ä¿ÓHúÙ]$#f×i§æYÌAhJÕHi´EÅÒ+áÖ6óW_ÕC(¾;LùŠ ŒËÞ¨7‰æ
+:y9Uö*iPW‰Ûe£^òðeÊéÃØ,I­Ü„‡¼CCø\£ ÉüÖ£¹}G‡÷êÕáKu­Û?»Ùv Vù'ºf»j¡¼ÃÄ®ùº½ t*®iO{;.ËÁý˜ù=ÍîÍBø_ód”ÃÈL…§t¢ŽW'(ÕYÌ
+ˆ”&šùÍFÖ3tM=·¶<Yм[MíëýÄš¤ë¹ifø]â÷7øVÚ–O?æ}¸›ùinjUºÇ %ÈzðÜò9h—eâb
+|æN ÿj&žUTì®ÓVœkž4›ñb¹Ùžù¾b ÷§92m#Z
+5 Ìo,3³<m¹t¨’Ðt#m±‹ ÅKç_J@o4‰§‚»T"qK|Y’\RI±°$^™wdÛWEkÈY»©e‚¥H¤áB5PŽ¸ áæsŽgïnGÝbm2œæÙZR¡7Wü!ð‰-5¤q¸®ë8°ùAšàLÌ·ÉO åÁËjª„“‘‘d‹ó‘DuK÷ÚÚtº_H™Ôˆ²–Xežô+—svÐr­qÝÆPØ£‘B¦Q‚‚<2xÊ”FéÄE:DˆrMØÂRá´ Ë}ˆ,$aèÏ¥xE·lAv*‘O‡`œ¢‡íNÈ&‚
+æ$>ûµcgF"Û”'‹ŽØ…×<ã¿HŽ@aƒÉÖn=’y¥ý4 ¦ñÎRÂ'íænžÞÕŸn9§²gb!Œ
+b壙ö®N6D`ÊàŽ åB?aßHðg ÆË<^ûÔ̹åÜZݬ8èïCßÝK‹aŠ ¬çN#RY±X»Ó}EygƒžTë$Yê·©Œ„¬J‰ÐƒïOrhûœ=µu:@N*á((„⬃èÇ=£%‹~\«tùQú1®€ºõ‹V.x1#óà`¿Ëš5·–t°ì8ë;Y~ð[´œÌh)(“øÁ†7PN:òk‚ëóvnë,~ÍÖð`#Ÿ¯³¤tn*Ù›RÙ•Ïð'Ä!Aò½¨âªÖ{ˆáâðÿ «®4ã硇\ï¹³Ðé›ÞŒ®¡ï¯<OëŸÄIñ×4ãS{ЩYÇ®L:UÔþŽoZãnŸ©y2¥.ñÕn>¥”Ðÿš‘áaçûmÜŠÝYÅÞ£Ù×0a}Uȵ39©µN$Ão‘@[5Åmã£Ò¦'[Æ íÜ¥ˆ“>úÑhöøèÒ‹Ôê“ÐÆ–ý‹¬æ—ª”ã>tµ“s‰ÓF¾ÌŠEÒW3ŠÑß™ñšAàrËŸ™‡L•=‹ïû^è³»ôí*ÆûƆe#.*ç0냯¨0)Öu>œÏcN’Jì
+Ó‡¶ ±¾µêvÆ×Ü>95v×z,$LPW½}k‰zJO[ÿì7VˆN U²Çk¥™üNTéÂB†H.–¸·Jñ"ÞÕ0Ãì7Úó!/YMÎÃRªöVG|þSÜ,êw×@þí ÍjÚÔ% í]Ò²nNã‰ÌòF_½šÉÛã§ùG„OŒF °ÖÐlqJ(n¡Àœªeäbß[™óÛQˆ¨…/ÛfÇ÷'èªq½Òh )”,ƒúQ¶vSväÛÂù‘XrñäºE1s;»äêgÑ8ô÷{ý®M‘¼rë
+ì_ç/îsô% ›Ó½ç áŸÜ„K¸se[ˆÀÕãP…ž¯sóñÈ sûäùCߣâA?´‹œï|€P=ÈzùV”Ÿ÷&6ÀÔì·á®O°—lóó›Ù`‚|¹H-é*B„},Í!­fb$üVĶ÷úúT›|´H?¾x4¬û»@*ºïÆÛò³‰Ü]2BYep€­gòøW%W‹ <…å
+™<³æ³»æõÛþzIÖ_Å8¤‹Õ4ðÐôœn"EgŒ„6Š^¿$`8Ç‹œ‹LÖ_š·Z( ½žFŠÑ¦‹ÊT*)—gÀCY¬<1 ²©«Þ³ò“D‡ú«Rï/t&®JOʬ³× ³ùæuZˆžF|/Œ¾E= ÓÃI­Ç7@zK‚‚ kwñúOß1°DkàÝ„¥N§LSTúÒ
+i:~R;bžçÝL]âP:N¢Ë»´ÙMh¦ ë4#ÿ°Lt”ÄÐÖî hHfª|À®–Ø›ãê#ξígÈŒv6=R.4>ÝÄóßtž]Üw¥°¼k|×ðœpâ¥`FNt¯;]MÂóÒ` FN U]Àwæ¥"úê¹ï ß5_áýYÒùü\UOP©Ýþ·Œ?F.Ö’“cµòû2lU¢O^£”K”6ÿ[«[ò›?’¹ý0ýwhÝP‰Iré}^$ìö¯kÒT0VL‡57vƒñ ´Hî¨ë@<îû‚(Æpî#lÄç%ÊÆ—Ò)àò0÷6³ŸåÆ;»ùcNà¿Ò1•êPæü˜RD1é¹æZSlf¢ù /|²4²¿>ççz¢°ê˜6 —4y–U´”0šUN_4–•²˜™;~ëÃëÔKXÒæ˜ßÜ#•ÈöNßzǺ{Zê`.´`…
+jQ7ÆèCt» ([ÎéÇØØYò¯ˆKð2›Å@›¯ šŠ¿Ú`¢š¯Ú;¾.*\bÙŽúÄ™Z}¯Ó’Š;!Æû nÛ€ä$¤”³¤b™l…ƒÓ^¤ö g¬QP8Ú³¾ýŽkB×s;\`i¨ëœN:\]ø¡ƒS4LøÉò«&Ùmáû™ˆ;%§ŒŸ½ßæô¸¾ùðt¾'¿.£˜þ¾Íór~Û¯}´1ÙS×£Ö)FIM¥ã=b`³J6 ¿1t^¸Å’œî#ú žó‚}ÿ\÷®¦)4’Ì<$㜦qdv5Eã3iäã4)•è)´‹çjƒ)‘7§5!Ø>è´ K´,´Íb„Ì=dSüFÇŠßî.·8º……]o5ª‡ha¼B¢ª¶Õò(TløN‚ŸæœSೌ0Ó¯Ëhúãw'É&‘Oz´d]µŸè†þfÓ·%[®Ã±Q½øÂÝøùcÓ[qØ|´ßÜ!’5ÅC#3IàüE¹6Ýf u
+ÿæò'åËÌŠ þßóSç¶ãAï§oŠR& ß½îNêD$‚op•^…æ
+z>Û·¨´™[, J¯šíšÙD#šg¬·({NÔ&SU9b’ ù±^hÖÀ-›œÇ©–IØíÖúa#Ä(52å¤EPÓ[£.ö°3ØŽ‚³”uv¿E=
+ó¯“A¨+{+ï(ZŸÔÏòé¾å$Ëø­™8œ0××¾¾Ž vôJ„w
+«Ú´ó€“$Ú;õ>ý­C")éo\ÆÏ“œˆižš8T±Šœ‡L—½«ß£¸ÌšÈúd’ky˜‰nMžðû"`¥ŸÓÑn¿EIÒÀZú“Qq-Ñx2è|ë~¿ŸwÍwâàÀ¹nÆÜRs·iôWUÑB,&ÄãQ}½÷!BôáâòÊ0ÅñÇRˆ#ëVQãuìaÛúO`f^ˆÔš®äfgì#—îþ®®=áK‘J›Êì€sELbA;,èRŠýÓñ­÷i«q#T­!4éé7‡³L'HÝ>]2³þeÚÔ”ÈþýV×Ç¡À/EgIRŸ)ÉÅ
+“Ä}Z 
+³î‰ŸÅì&¼ .}Ý)¹¡,…ŸãÇ«+ïŒêï뻯ƥZY"rN–$}¬²ui’Â…¿åÉ´ ìçµHúaâo®%JÃTGúnáµ:å
+Ñ7qÉü€pª±ƒõ?ˇF²({*?EqÁf °éƒçкÝN=ô‹×6ôQT¡²3û¨¿ÿhñNwX2tÌq8™G決ۗÙü>ëlBÿµYà IË¢fy‚ê"9/3ñláK¥ÏÙ="÷à£'
+õ€DÝç¤}Œ½ÏÙ,ù%ܽÀqšb¡“h$»›$S!l"ÉߪMQTÈykÕR¶*NV—SL×ø‡zQD­(òó…]hKUõ9{éiçt N[¦jÛt -ñ¨ƒþ´íÑ?\%÷yM¹Ý·uúg±UÎOIþ­ «‰HÄ] ‘oG RœwÞûÕL½È~66f
+
+@çÌY\<…â£
+ui.ÏŽ4]ÄŽózEPÏ@¯@QҼϚd×ókK#KÈá}Ó{ ψx
+˜‰@ÑQ}úã˜ü¾iÒÊ ÿ}³¥É»HÕy*šÅøZõµ¶Å›O9'ܺÓZ?®Q:8c9ǘ5sèÃ[WcŠzzr‚C]¾»¼=‰†ß<!»¼¨¥¿/"X…Áœ7Ú]Å9fp1] bü4l{2V]&Þxª|YwîpÑ Q9àŽDs+fg²îØäìP@‹ &á¨FñÿFv1•‡bDô*¯‰`¿7oVý’h›Ì„<ÿkØËúÈEHg3‘ ¨„Åc@ÚKB––ð|eõre°ƒö!pùµ~íwéêÔêK)„ü{¿k|ÚuŸ'-ÚÙáÉܶ&~JšvI”)uC•atIè™~VgÐ×ÓÀóÉsþv‹¤¹bi?ÇIõúÝÄšÌ7V•é8‡°±Ô‰ee©ydžÙN£Eدêé´p†€ì” ¨­ê'êpµôvâ zÂ|£keN>¸ÓR.éK.ñu=ÁÛñ<®Íë„×q@ ¬ýy«¿ «Šª¦ŠB„Õ/ „,"ÃßÕû.N‘«KË$, ãÒôºÈFŒŒxìu¸?ÌʱY
+_Û¸¤ý¼Š_-&Ò¥„K9f,^ON>X‚ñ”Jt¡„ ‡í¸ÎØí©—Û·®¨Ï¶™ÃÂ'‚måá ªÞž2÷‰©UÓyÎóe*ÜFCù<㿬%QszÅî_]ÀRöCù«8þOW«”ŸòplFúÑ2.SîiŸ;‰Ó/ÉßÇ`Èiã«Å}Ò¸gqüÚĶ²8~"GªÞ7,°+’Gѯ}09ÆOÇ2%àE“ÿÉRÄÀÒÍ’”Ù>öy#xü›îEÕ-*QÄÉ
+.xOëñ…$GÊbz¾‹çx
+ç”ù\‚ÿÎ-eW{á…Gꉓ°Z ”ŸG¹M®˜zÔ€Ùù—åë:â—Asj]Ž.v â}ÿh¹N…Õ»®»c$Eó¾õË<÷ëeõoÐú¬L’‘q¢ €wŸ„y¤$Ö€ÜáY©Âò¡qô)_‡çÏYèŒûIÙw-ë°i!h¥Iúdpžür¶ põK³(Ñ«(zZÏŸU wrVÛü®C€)Ò­6<SÇ)~ÝÍÖËÅ+âù½åì /Ô÷€P°ÙuG̾Z9»¹ ý¥g±{Š>*«ï•xXÿe/ƒl“®g7¨$^ :χSsH¿3Ÿ?mUƒDXØýjö@E@•¿&Ž£’"GWhÂÇQ=øDvÚ—,±B•œä Ü“~%˜Ëgá¥d> »Ç­ _ÃOî§i~
+‹7¾ÈÛJÊ1iÛÔas‘"ή%†f#]°Š&;ß_ ¨÷™ë»<2òÇ›9‡±°ßÑe¡#<s~#àùEé/{Ã-SXÖ\Ý"Ô3æ>rŸ`'fj*Èb¿å“è­¿Û…µÇÚÔt&àÌ:HÏsÙSɦÄð½.ªŸôŠ´Oñï^äË]à¿kRôÒ%øºî&¹ù20¦&`–ÖI²lÔoÒyÙU}¯¼ZŸ¯€ ««•æ‡J5¥_X :Š`ÊÜT_æ“ߤ›O´’k1Ðqû>?wO†I’žšµž#Æ.È~ŠJ¥5ZP”>Π˜ÂY WP;ÛT‡“CF¹R3|:ŠIÇ„¦¦é
+f¤GÃÕ‹ÍÿæÇ åÎ.#å<r´«ˆÑ=iÃô«¤ƒ4`;a|S!\6X5Q&ºõ(ÁÏ|5ókã>…’þp\g™–Ë4†ßûÞ%÷ï¡Ð?KGå&á>}3j> rhu”EìÉÍ7Ú4¤*‹î&TÍeJj 
++œeÒ*å„ŠÎÐÿŽ Ÿ…gmZ)…[x"~çRÀjLnüå3T}ï ùk­¤(®Íª;¡§òÄ®wÚ[þLÓ¬#æ»·ìð&”!ÄÅb³s™ÝNŸ/f*©ì Æe ûÙ1`¯ÞF3µ5iÈÏ6݉l÷S=‡H½6h‰Ì#dm4ØZÁSpFvš¯·£œu±žS+]é«Ãérwó6óõJ¹Û{û†f7òÙ_Z¢Àâ[Ù yÿ²ˆ~ò žºªù—Ô*^Fy·´N ÉàX}è'Ùx±/“ÏC²/Ñ$œ~m[«)«)@É qÞMŠðcˆœOÙfJ ìÚÙ'‰pRRÉ™#uwÇ)‰SŸu‰hèšÉ±þ‡Yf‡êjév/ó#ÞÝ[—Ùc
+|ž¶
+ò~˜P[³o¿ž\ÆnGW­m¼ÄKb”»ÃÕ¯¾7: d
+jÁy89}ó4d¥‚¼·‚>äI¸ú˜¢Ça$(˜Hi¸0æê[yýΧŠØ0¦æ„ó4î™Zq%í(+3êþá9Ô¼&&áí3“oŠ†W
+OyGïö‹‰û!ϼ„cÏ9ÿ´&ûYGyãE
+Kv£hÆZN…QnaHÇö>CÔ™±\J?¡9<lõ›™c‘¨L|+Zµ÷dˆ!59¡!ìÇàskúGU.MM\,hñ­\]v==0 2Y¸„†¸Ëè B‘¹:XQ‰d±"ɵ?¾vˆÏt„D&‚’LÍ[ŽÈisjN§s…Ýp1]–lݼ
+¬ž;qŠ( š[½,u
+|¡ C¸¹…ým¾A¾üï6< i,Á‚œLÂÇúÈõò†zÄíÞ³LM`‰˜;\¹Çýnc”Ô–ÃʵGî ß›gøÏNØbnoÂ^‘—ƒã“MØ
+ùl§žXü2|j¡¯z?ây[èú¾N×çpyêÁ%©j4x Q®¬
+SùÁ#»Cî_ô±ßæÙøÆ12§Ë´zmßD¤Wîx}^©ŽÜÕX` > Hj±yR]ÿÊi[™XônÓi½Û´EJ²æ
+Z…'‹ÃWQÁ²qŸHSWGDAšŒZÔ)ã\Ò!<ºÃ}ù¬“NÅ€“ÿ2 󆶒,oÕ¨K_Xï×ãþ’ð³?ù§tä«bÔÚøÚ⻂†´wO0}Î<ÿÇ¿ ó-×?s;ß!õ²/ ¬Gzj>çb Õ‡(ÂÊå… ~ÌëpÜ‹m._ž°sµô¤-8]…8&£/'€_Ö÷×Mן
+_¹—T'¿9æ/m–ûDúÉA(ì0?ö—wÕVÌÝ\–#döŽ°Ë!ÅìÉü:ß½¸Í²s­³Äƶv c€§ß3±úeh©=S§<vã¥$¤ûñž8Gu8µ¼˜]”ö_–´ö¶C«¾U¡¿ ò#;N'%s^ÂEÃØvWp>=¯ÝÕ7övZá-#¾bzÎÚ®ëí¢] íªÕ§V>2ÒpÍ%Àþâ×É ãëýñèïÛç £×ÙÄ3ò˜Z uAG;I}¸¤ç;9¸¿üÕ„LÔ,¼VñiÄÍáSLmtݺÁ)m– ¯©ŒGOɖðz8ôAÀ’z–BÖÜZ¶Ðínª)ýÝæ§þf9ç%*Jª|ñ¡bø›£Ì]à†ÇHµ*"+¼²›Úc%Ãí¶­sÐ+ϬDhA“¡QÅÒpûË”$t®~ÒÅ´yÿ³N~Cî ±-A ÃqóŽD )Ñ2œ¸6üù‘PDWiÁ¿ƒ0hÖÍè½8dœ<øØzH¡¡âÕZoÔ…Ò–Ðâ„ó8Ûµm=‘®Ck“#/?t„VÑB)i
+<\âM½ßÙÜZ=ÿ/ðë/””ÛÇ5ãÈjmKÀ‘Ø'ö@ä®XI|›ÖÖ¸W/*I~}‚¤ýÝa>˜"VÑ›ÿ¸w5t¯’1ÃS0ÓMèô qkЦã–ÓUWk™cð™=-ìtýFiòãê;dTÞ Ø'o¤ÓÃÇàÓ9c“+»Ì^¬±HO¼ðiPâ¹ï•]@,ýXa¼‡T,ÿãÔ8ƒtðR”_Æ«Ï>Í„3ZæʪOsRÎ×4ïÀ¹LJX` QûM‰úyph«Š§4àôFì="ý )¶†NSD£X¢þ~¹‰‚.üJ´“P¶ŸHøç`ÆO~Ÿñ‘r“S&§vâW–‹ÅÜIØ0¶ôzÿdùÓCz®°î¨öøªo¢Š+_¹e;Ó˜(~Cš‚Æ,Ï¥'
+)¹‰.G¢Eî+Z~müžÑ·÷Ù?wYͶ³ðC¨oU…™vl|Tò#BàhâaúÓ»Rêë&ilÔH]ù<­ÎÓµúByáuC-óÈù4i ü¾¶7Ó˜-%ÀÄ'pyÒV'ÜÕä> -qv“@rƒ®h‹å+•ìÏšk¥Ó ë j߀ú)­èP<ä%ÁP-ÃáJY“¬±>w45•¥.?)SŸ·øáe–ÿÔ3,q‹2çÕ5I ¹ ©[X™Éþ@I´"âÏ?ƒ.:QDSØ&ñ> E™âç‘;ˆ©/ÔS¡+çLÌ-ã>*$$}x4OVQež2¤]Ʀyý±Î1°QÕÇ'Ç,íîy±÷G”÷šw¦w¯þ ; rДuÎ֛殱Sˈ?O©ˆTÕ_É‘Â{–¹ÇǤ¿MöÖàúÈonœ’˜hDâ\Ã|ùÛœPdâähõo¸ÃꆃçäF¸À[°yÅ8îVÓªè9ÇÁM~J±Ø×êò{~ÿXwõÕŸBÿe
+á”ß7òŸ;Çìõ ¬ªü¼ç½x«B ‘WH/'’FKÈÿ0ßbìn÷ÿUBΘr”qýÍÀñœ…ËÎQ<"%;—Sš¸7eÞqîýJkyaj>W-¡çÏŽºÚ }P|©|é.=®»ã…ŒŽ~ÐFõu #sù—6-Ú ×;·¶s'zÞ›R²ýAn ]½ã„w‰Ðü³Ržåygx
+[Eû)%-v¼„ ÓuI ¢É¤M5„[DSŠ‰ÿÇ{iÕ8ésŠÏìdDÇM¬oºÔŸ5vMæü âRŠk´÷EÜ£»ˆk²úq¤qoô@ÛÎÃÜïÒóñ ¨ƒË Fèã ¸gUOÄ®fzqûbØçªgX‰M™Ä¾žn䶨PÛ=à@w`4ªspÈg½øøÏ8%~Èﱄø©'êÑÄQ™ºcbÛ7[Õl÷÷ÞÃɶ9^ðÒ’%ñ¶òùtM?k,üŽ
++”›A
+œVùTà NiRC36•äîŸëT!È$-ãØ^»;á¦Ôë÷©ýàèŽ9¥gŠa+¯ä ;4þÞÿ¸á äú¸V¹ZƳ
+ÝdC €v<‹´õüÔ$o¿Ú³íqŒÈ¯ý⺫VÕ“}ªÁ-RK;ã[râ—K+'\Üœ®{P|
+&;! þ
+öÛ/”Iƒ±š\B2‚áú÷ÀC-Jxq/F`Í}2‹•«î±M.b^ÆÑ0ŽŽ.øº€ƒär‚½å‡ï, `²†É~´;ß—¦Ÿæ
+Õì˜s¤$ÉŽ\œøÇ$奻ÑÈ{ïLMwß”em÷Û߆4’ÐUœy:ƒhv©âû­¢!ß—Z¤èµCÜY)ö#Ì!pÐ"xŠ ,ËÀ”q96yAÊ9ªmÞ"Р¤¹¤QžZlõv®ön†ºcòT¶ð¿#t+•Gº—²°â>“§>’4çJå¸ÎÑöæ´õgT»=ÏÃÁuäo‚™ƒ$»Ð2H-@=&Ÿ=»1øv¾à
+Ö?‡Å4(‰rêÅAٺŘÂÛ¡8ÞøÄ°«³±6‘0¦~h÷mBxrk%‚
+ î O ä­¾[µ½èØ°÷;JEm!z´@'¬µNÆŸÞ5w ʦ
+”æáÁ‡uAûè¥ý˜™Tfl•AºùTtˆà7¢ðªù(Ãܦ”²é+atB¹¾§7ÏJÚÈqÜ6Á°“Ez=#C
+r}P߸xKR®¸Óü™nar†&TA>Â…Ã[äG¢Ä1í=IÊïZ’„ÛÚ°±SrÖÞï'Þây–õñÄÒ¾å], PhÃ{/lÓÉTª…í}¼÷Zz¹…trZÀÍY¿¯©Ü©‹é™IU~v\Í™@v§2 ˜ì­Û³zÞ‡À:-ÑtDF_Ÿ©}gÉŽ@?JŒå™’ê%@’ Ð+~Î+˜”ÞöAEˆÈZŒ ÿ$îøÍVyD"®d0ávíÓÉÅxþ>ÆB5)ùây·}ÓȆbîô÷V¹8húoØÞ®ùrç·CÈ/ܶb×:9œãåð»6S¤q“ÐT4hÖª‚½…㧂 ÔŒVg†{Œ@I]¾Ò²켨r åÙ)#eyÚŒóòúšÎ}³%¢ž˜7Þ
+ ’#”-¿ íl¡)·ÚàÈÆ/5ŸÐ¸Û$óTR”¥®¢}Y$
+4Ë08^+À ±Öµôž)?ß<üÖ˜bÆ×?^~)yð'lˆ)Ö" n¤P8bò…Š˜7ÁœÖÄÛ;Eõƒç ‚T,nÛϹi¾;MÙ@ñµ×NÃiYêdSñk¦ËTÒáé/Q±[·¼T7ãÒÝ\¿©–îvÀsë@eum@êöãìåd( hˆœ±UëÝã– &ñ
+¥Ò!̧&j~´C¸’jXÕÈl»D5¸È)›+¥\Z‚ÞQ¦ Hi%“øX–£ck[#’ôm$“XyÊa/‹].“cvn‘m±)<
+0Íz±gø%T{Æ*ÁTÅE\õ!|I<™q…ýX2Âtñt]¢<ÄÀðЊÑW{ñVŸ
+é·#׳¹47ŽUYšç©üFò³É¡ÖÀàT›§¸?t×
+áÌwNà¤"R ZpõÀ&ÔÌGKêÃ@+¢'£*J'‰:'ÐüB®X‘ó&Qƒñg<?/ ][µÄè 5 i¡†ÁÒÁódˆ×eðˆqæ¾7ÞPDºv9U*áslc©_¬Jj2[—Ël¯¡AD?uc´6 ÍhP¸åö_Aú*±N j@÷àT7S¡ç0ê7J:±gÖ@Оš{PEnuL ˜
+endstream
+endobj
+693 0 obj
+<<
+/Type /FontDescriptor
+/FontName /OYOHRR+LMMono8-Regular
+/Flags 4
+/FontBBox [-456 -320 743 1014]
+/Ascent 601
+/CapHeight 601
+/Descent -222
+/ItalicAngle 0
+/StemV 76
+/XHeight 431
+/CharSet (/I/O/S/a/c/d/e/equal/f/i/l/m/n/o/one/p/r/s/t/three/two/u)
+/FontFile 692 0 R
+>>
+endobj
+694 0 obj
+<<
+/Length1 2181
+/Length2 21548
+/Length3 0
+/Length 22865
+/Filter /FlateDecode
+>>
+stream
+xÚ´ºeTœÛ²5Œ;ÁkÜÝÝÝÝ‚Ó8{pw îî,¸;÷àNîö’}ν{ŸóÝ¿ß`@S³l®ªZõôèÑäÄJªô¦vÆ@ ;3=3@N^ÞdÇM¯4w±1r°001±!“‹:œ-í@bFÎ@
+TQTWR¥fx¬êbooçøo.¢ªjê’t
+ð§'
+ó*pJ„kè¥ú žŒk*Ê-Q^‰ÃŽ˜aÞý%z ‘íI¨@p a;˜wãRšMGêk@ÁOƒfûc­UìýA¬ã_5·»kq(%äXÞ­5þnÄÎ4ñ°‚Œ5×Àg Jf³ÌÖ‹åÃÐ`Þ<Ý£kj*41 ÁÌ‹ÀtnéÕöbs,[ ߦ—Ö+Ò•HŠîjÑ\xÀõ¯«dɹDˆº$ƒ<vÝ®¿Dn‹ŠWºØ*ãq(®Væ æ躈GŠÂ8‚#‡Öv¤ÂrZQÉÈ¢±¤šV\ù¡í*qÊH 0T’&¾ ¹zC`*ªŽÛÔ|tiýS ÏO.»°ó¾ÇZ´%“L®ÀÕ>
+îQ¨mª¿U™K4ºsž]ºÙ«CÛݼÖvKzëzTWÖ€ç8Y#TuÏú.êaO
+óÙOwõdw¤ôS¯r›ˆða/5·ä´g/kL¹Ë¸£²]d^‰±Gi-™ ¦¨Úš U$>ÎWcå–ô}5B‹û0èT®(ùlõÕ”°üeµ;`Ï#×6‚‡…MË/²
+‰*’{›@Œý£“{põ ±^·ŽÛŽk]-ha’Ãÿx;m:&+ãÙ’5–ÝÎÃÏéDòœ&_ÞOZØ
+åÔe9m×|ân9׶^GV¢”ÁŸÚp$Us‚•zàòŽÐX&©/íøu¦¤šè± 3¾óÓ–B$ž¨Ã%åÁÒ‹íIgw¿ ùS…ŸÛ6ÞÎù¨õ3[Aó.°@­.Üřѥ½©{ü7dz¯&†ÒX× ÿzšþÖkTsó5ØYm:_…#¸/¸’‘9 v{=Œÿ—`5$äjêêÐkñ3’\È%Aª¿|A¥žô×*Yøæi3úÜmrÜÔ ¤‡½­·©ºP­ôuR<WLûó\=Õ—Ä—N'4–TNtªbêNY¤ÜLJ8ŽÒ—•zù`¸.fZì3ÀnB7 F¬nJˆ!ç@ŠöÀ<ºÓ“ÉçfJ‚èoêb(°h\Ïògs{Éì4ÐÉH9M ÷œù7à5"4̼’k¿<ÁS ÷t椭t
+ï4vä~Ø&ŸYù²›G°à¤ùc¤úÁŒ,GÃW†{ãn8Ô1KïÚ¹·Y ÂwµßYþØèB2ì|°™ñ€È§wÑËÒ¾8÷º“A¦`+ÿB®¸3IxåY¬Í¯¨.OhFa›6+tÌz›^þ›KæUÇå"#Öj¤ÞW2„gXuë×y¨2~ÝO1w–†­Õ’P„Äl©‘kÉÎL}'E$ýð{ óqÑ,ÉÔoø_Ì7x\Ÿ‰òF[U@û¦Üv”w&†|]bõ¨Q[Hcxþ–…šž$:O -É¿àªjY7šã0cŽ„«™–öùAüI ¯ÚÑô:@á—wpÈDó¯€ü¶U‰(bL˜ˆ
+%-aÙÞ¾.ÖCl£ éª$Q-7Ÿ°ï§QC<6A¾Ï“´ #7·¦ ùˆw3Î6_:f@õãj¿…üÞHÂUzQÊñ¬·^£Z‹O³ËœÂÕÞëÊÅnÄp
+žOÉ|AJèï©!Aúú+´•ð´y¨†ŒYD"UÏ:øÛ50”±<­¸¯;ñÜ ¿  ¿ZlÁrWlÑÖÂn8âV|_RÚ†Õ ?ÏRe¼\ò;0¼2.l ç”8íß[©¯V‚àiÆ¡D4Á:ùѶBÒCRÃHÉ} +‹r\¼Ô[WÇé/¥Ö®l\oš
+wòMi…
+ÂñÀa¬ ¬q»Ú$ó=‚ŽSÍ%ÛÐ-
+–Lž,¶¨ë ®­[âþúîìâ+ë#a`—/µ?mµh÷ªˆS¥ÿ`L;mtvÌuãžïÁdnÄEî·N—£X5v§·üxŒÁuþÂ/MÉDýY­fNC°ý¡ªŸ'Öjð£+ðágÛ‰
+kýµZׇfB©“ýïH:HÍ×ÉÚjŒ±î|Áà>!ÅžÖé É‹›Û'¿-ñt÷ÛñCû6^ -jÈ  ;¬äšôdò®¸µÄh
+uó5’åIæn3pÌÁ<ÀåY+HGøþj!Q ÉZ?п¹ò@ÅÛÜqÀ,D¤ ³9“»!ÓFë]ƒÈÕAÑíHG¥¦ÀéfþQ'p„Ϫ&ÜÏFm»~‹ÛØËK{6
+Âv&¸õ­F”ší;æ…Ô¿;ŽðÀνÒîïqLÂ4: röéѬþÜkߟ«a`Žh]&ÎphF½uZ³Ù8^nâËÜêŠØÊ\šàÍÎÀº ´¸f6 0D$ò%L¡ÑõZ‹SÅØ»§tÐÐ$ © -)‘±V´š8O&h´ÝM€"·ÂÔgó%£ýžÛ¤¹@ßù­PME„Ë)F~šLkðÚêÇxõlrÝEîá资JŒ­êlU6ïpq–€ø9æ#¡? ŠšÌ³ëöÖº­bÿ&ÞŽ‘Ü-q‚z&e§µBæK<‹Tj:5¼8ÆèMñìþñ)ñb¹pZ;8ypƒŽgi¸
+tcp-bØ|¿j a¹L)¦W÷á‘»{6U¾Yš«Å€UÜ°Íq}mêž-(´sß;2p÷ié%¾1ÝùÎwPR1‹V'B'vÖ–œ‚o¿4`Ñiˆ5Ö(îÙôzŠ§_Ž¸¢BÑæU&m|šþ¬-ªÈ`«ÊGm³ï5Ÿ¦Ä£5ÿP“ÆØŠg/1["Ü1>æÓ³¡g¸4·½1ôÓ ³MJÂjõË!_s}B[FÀBzÞB\’ü¢ÒH ˜§w+´A/ɽ˜ÙNG¸¯RI1]„ ºFda v¡Þ`±ÇKÝ$3^­òüåݱV×ÕÇÆl¯ïÙí.Ä+ºÕ÷Õ³-RÛ,|*ÛÓ†4…Ãf:|Êâlüld¥wU£®#:3zrôzÛ\ îÁ
+¥/[ý},͆ì8É<Ïò¹<y4æ }[Q‡ ñ‡ã• ™CS7k Ô$šÃý›ìjŒx'|p}*ô ËžbÔ¨™rfO0ì×PäÖpÿb#ºŸögãndÑ•
+Șc7h x–„­åädw³üÛ}—ß­jÒÁ6Ĩ’/1êÛ|$¿\ñ×Ñ’”&Þ;ë¡BØ^ë}ùaßà´šþ…_NžÚ|Ìë9¯%~Å6ñ{Í×
+šÒ'þ±ÏB¨ìe?“Ì^£ SU(›%)ŸëL/1¡¢T0vOÜ{Ê>¿Þ,°¨|
+±Ã˜L†
+wxkXw¨¹þî~`áñ¾ìu¡Uì(}Âä«á¨#ŽsxJ9tЪŸ—«×íéŸ#)Ã-ÎŽ2x®àX *D˜}92Jf päÑýøxŒ@ª•²çS|ý½~áM*[l€± yÏž4Q~úž—1óF$É4³™Ÿ²æd5è(PÍÀoÝš³ÈvÐ}kQã5È9£C6¸5¤Ç¡Ö¹^*‚»è€´ÓÒ¼¯˜« )¾L‘7ñí œ9±3×Ĕۖ21¨Ad\ê)ø#/},´Ž¼©u„—f³jË–¹{?•"q}ªé¶-³2QðÌL°õjx]‰>çyË/÷ßÚg`”QÒ<íš]SM´AÔw¾uǬtžø¥µPCÌ~yÙú¬ÁRÄO]4² [WSÀÃŽœÚà2ØA—Þи,ºÒ¼mmüQþ6úÓ
+×=~¡ÍÍv–W`Ì\`+ÏK:ܤðü1CpXϲ%ùdq黃æý̯÷ëÅ4*ù(úsbE¡D>è1vxNPÖ‚{hµ;è)æ–‰óÞ1í±X÷dBS´ò´¸ ’N˜‰b”Ͼ#D^£Æø|¾×Óµz%ÊM#¥Ú€¼õB¼]h·õŸ>¥­IýlˆÙ8A1ÙÔÃObp½ê6åŸôŽ% ‰û õW~÷W£û°\ÕZ ‰¤¶An€È}û‘â9^&+N^:Lš'c߶fç ¼ú0Ýáé¡‹¹àªëbéU¦¿ °!¨Qý¦ðb©DšÆ'š’üŒ¿v§C!|¦Ã<© –êÎN|¤Ü’ßsÍšªšÂ÷»¬o£s°¨¥B|N]PMLÁâ0˜¯O3Ã"±eûÍЊîðëq»Kâàæ,bБS5H~Ž?¤†qu£e,7l6á·Ã*ļõ’< kµϧPÇ'&ºçU$!¬gW…R-ÝXëÙSÁqÆgv,5Õ¹͇mw"ò¼q–ûY䬗ƒÏønÈ$ƒ¥ïÎåÆ‹!ù±I$¼ÈÝÅÎâÏ‘ÕœuR ôÅÕ7,ªjéºó¸úÈç\ñ„tà›Ì³@Ã#ØLFA%­ÂþJ9O½FšÒÈÍ8:³¯‘0-ŸY>Z5rÃQg¦Q”ÏmÀFȹxƒ¾q;Æ'mä¬Ù~—r¤ÉXQ J ¤×é§Üx+–ÛSå˜Q&îâλ¿ð*Ja°R ±J,¯ Œô­’Cô÷—á …=£+[맓öN|hv!
+´Ù‘”ú »?‘ž—„²7{J£ÓÄ&ÝŽ˜Žûµì[Bá“ëL&4pÓÞˆÓƒ^ž¦­]¿Ç硼óJ+ìЇçfÝxœ~c¦ácú˜—ïȇɴ?iJ´R6-”˜õff‡wºÖƒ\ÙžÁ/'ÝSL<Àß?$î!9‚`ÝòásŽ·ZåÝ7RÖf—D?×µcÌy/ª2Àl”$ä¡_Ø _½¨‹2á;.¯)RuVVáÜÄé#®þLq3ÜI!ð
+Meñ˜‹ï’vNPÐl ?êfo¶"…"4ÈÖYp³5›ûš¤ßtëÔñëàSåy¯Å<
+ò¶–}~‘‚†C9l ½h‡¯‡€”–²lb">;!Eÿ3ËÏ'eBW9¨°
+\‹µHQÆT'£{ØžÄsA§Ë¡Ïë×UÚdÄÝ#heÒÅXGF$B¾… ùáí6£Ì*ÝiJ'!Íœ‡‚¯/wfYÃŒÃÙܪü]ì£K’*¾3ô$’5û¸~œ4>…&)ªœ,•Ùz’äo¶’zÂúíÄìWSgRIµgô`DµCé=ÑÄnIcÌÝ©úK9XȦº–'ÝW¸ºö®5ÏÇ#•Â ¼s\…lQ¡)ä¡ÚÑêS¾à"Ò+¥…™·¸…´O3mc^A³hÒ}•§£@ŒÆ<ɨ:ˆtŽÎãínk …8íFÇ˃u\|lÔY3þ²Dy¥ÍéÜÕ=QRZ.‘íÇ)K,7ù¬#n25ˆ­u¯^rQp*ŒÒ0IžnsRR–G‹bªñ¥ã­m>zÛ¥;ÅQ…v½ òCÑrÐ| ¾é¸ §b‚­Ö
+ÎÉÏT´3C·3Ñ…À¸
+ó¥+Þ4«‚q̈„¬óM%¦ºå* R›x/f}Ä+ý$´UHu‘M¿RGkšÓxKÆý>‘9:GÏÜå•ËnLà†ÙZÓŠ}ö®C_[L7Öò¤wåˆ]ðøLÓÎ0Ú‹Is‰
+¢$☾â@ìÓ:Ë©³© ú<ZYfûÆÝéŸRz­ßív;‡SÀoT[hUS©á„2ŽhH&ió8Zz7Ûºbá\6Ô:ÌùhÿzeŒ™áAe«Íkè7šŠV%Rm›ŸºU÷&öh!ñÏÏl»G
+åŸàµôÚÉöP>9™ÿ̱/o†ý@:­-X»¶ª*%Ô{Ç¢eƒ4Ìô7MCx,µ:e{3ÐH‹F³‚oóeAAšH½¼ÛàŒÁ«h–èU˜Ï6Åc꯮Ç|iy¢UOjE´ZÚátqÏô%Y’ŽütÈ•óÌ<g)ýF•æt¸ÉÐÅÌ*Ë ›¹âÄôÒãd­¿Eïp:€oÞÀØ5>uk²<°ãn­ÎÚ´?àÁ6bƒBûNsæÏölvN±mÀ×ù Ãm/þ#AU`À(GAÛ—$žŠ†©jã` þ@ÜLjD?«òŽ‚O™ŸHòrÒ'†Í?š‡ndÀÐÆ»FÑe6ý¦¾Œ¥è¾._Ü4q”¢]ÆpéŸFeŠ+ÃæÏŒˆîý2ÑÝñ!}
+ ƒ³Îwt`úÒ­26ás‚;­<·‡€˜})£¿h~=ÏÚ>ºLö‚`•ûE
+6!d$´ÈXð…¢M úÂ5=¯Âñ¶äg-º°»þîN]*ÆVR„^3§Ã•ØSv‘cÞïŸÇ[›ê¥R^ðÛý5ÈX%ŠŸE.Déì/Ö[M’ý‘j=Y¸ðã©>wAßÈ°Ù“žüÁ| ”!ÕQakÑÉ»j7ê° 02',éÐk.”U"’ŠšöG 'r9 Ä¿âR€¾ÊÇ)ªzTº{ Qêf³êƒ’3žµæîVI¹¯0Ë…ç%^K‹ü "Ý]´²t‰nÏ4šr†»bw„s
+_ n7È”©yìù³*ÉQ¾b…C“ƪ6jh™E€
+ä*j
+xÜ–ß'°|“]š.Žk"4äL«ÑŠdˆûŽsõ«¬¢¥úKÕoE
+ Å p‰¹«/‰±²òãñÂ|,N+½/t²z¸fÕ|©tJ²qŸ -õpxM¡c¿ž_çð[i^öEíìåÚ2Ój¨rš/ûú5ý£ˆ›‰ÒËÜÆÜ`peÇJîìæ:½Èb–툳äu½ëÔ´#ÈIL«2=›CÚ˜úÁ\¸lb1\Dɼ¿a­n³DòØôJˆš« ¿o;-rt0)!-; R’/š“¬9ü±ºä~ôDè~Òn£Qº+…Å•T€(P£-ñˆÁÑ—œëóÝ6Ξ]ÙŒœ+Ðé÷2£hjX˜¼.çéðúåñD&wpkúè`öAó@Ö¾Ô*6‡‡×Vo1Ø)v"ÿj™‚Ð$©ÇW§fIG’Ë_VO¯â›³Ñ`|høëgÝ÷vŽ«rG+¸<;îý«îùXýŠÎ,Æ}¯K7x«‹ÅÊÓ<õiÖf^i‰4ë•9 áYOE¾&¥ÝyÄm}ÕÑÀœCÇ™
+ÎÎ 6 ¢6`jn¾ ˜±T¨ÉK­wŸ”æüÏÌ7b”Ö#s¢ ®ŒJ¨‡³i³Ô-²ÏTºØåÖÐošJR㮑-\}) b.Ä6¶WÙÅ5ÁF@µŸÔQ‡ >|#Ç+PByìi¨Nϱ)ãOç`s÷X±ÂnÕç òFÕȶW–¾çÜ—’qìÃTtyé¬×¡‰šH`sÂíë’©npô,ø9ã !\Ͻ/ºPI ¤Œ§ª º7ðaÌÐX$l_uÚµŒ¹Ðp¤¬Â=n¦¶UµQš³ë5€§¢*ôŽ€ý0×­ÇoË€>ü¯Ù0“cël]yU U•ƒ
+P|þü¹“DÍüû÷Báû›EžVóä OYŠ¡‡Á'=Q}S]mŽ YÅ×™ŽBç(J¦Ïü.wäoÒQLUÕ±M;|yª'C)wÛ;=G‚ÂÖ€{²#&É­PÏL„àa¯‰ÆG“Å¢÷¿:åTò ¥lÐ>Ç<Þ£ÀÔðè›GöL1©X­[¢•ìî×
+oçö,örq—dHí§ô­ó6ó¨õ]Æé¨ÒÚ·>àöÀE~Vb Aµ?Š¾qK„õÌAu?ýTþ ¸Y Nªï—˜“ÇšÈ[óÁl¹4"àeú„Übœ}©Hñ2Œ-º4«¥_o‡V1©!5"GßÄîA5CÔ5Þ¹X#)eÇ6Xz*ÁTAçjàPt,­d™÷ó‚` |æ ³×#SéwEØÂ#!Ü›²[›c¼­fÈ1/â7ÙÍ1š¶Ddk·u%½¡?Á~‚CŠç-Ç2D“Y)Ã+¹Ç-Wª½Iû&j
+E
+Jð’·®¥O1­se$ñ¤Ç€älû·?GÏvC0yv®}Lë³Ð°
+²{ü£ú,³‹–ë­ôî·UHÚ‚Ç5Ú&­÷w&¦Èu¥kTßßß8óÚ£›wžÚ»4¹|tw¼+‚¹þ¾ ¦ô”Á <ô¸JUà€CÉëñj2Kš©ùj™¹|>Úy|–_æ 1 @ìLÓþÔc,MZmÛ’&?·Š,ΰo‰Ëì ¿qèëŠì6 (züPÚHl̓adÐlªl_\ÜÔSª¦•`¤5C _•“Ô[5Þ¹ÖMAŠ’¤Gg%§à#¸û\rÑjBY[ANˆjh.⌽¯­{Mjeâ?—œ –ØóÙŸìÔÈ_¬VÛHú‹ñVB„kŸ€ŠSŠ{+n~]{
+çÏÕèDLòuL½\ÑÔ<©Î–PñÆ:IÑ9xÛ Í|Ò†ˆ¸ƒc2ùü ¾Qž+|´Ô.Ac¨Dö¶›OÛç”,“ZàŒ39ÛŸ~-äõ©c…ð¯M`iªNáëýB±ÍÌÇMƒHÁ”&oúýáhQ?}ßðÅ8ÒÏ6üÀ)9@3ß¹ŸqÌ¡•Z\iîsþ¿À¦l¦ì~<Ô“t¹ØWYˆŽÙ_ÿ[qu}­P?oåB¤gWnö²«Ü³úú»ñ:âÉSHÇÊVØAµl¥TVˆ¼gtN”½_ ñ,
+æ›n;:Ì †þäÜæJ—3çY‡Ó÷–L ƒË_1óÕHÆ b…EìÒº7ë…È ºÀã; ýJïÐÄñäÉ\i_Uk´–*äMåžÊ/üQƲ­ïÑàF(4ß„ŒCé
+î›Y²ñõÕº¨ðªÝ9ž4oCÐÛn¥9˜ø*!>Ìâ‘ïšÜ£.L4k}&1‚G¶“ë¢Ü'(®7ž=äí’ú¤(s¾Q:tªÑ¤oOwÙ®½L`ÊL‡ö%O­@¾_·Ed­?¿ÐR½x FB´Ì:£’‰hJá,mï0m¿*C4_o(ÞOÆmÙŸ=£ÏL_²ÛEð›(è”ax·¹ÉÔ¬Ê$…Õ3b@°w·nÏaa|;aäŠ_úê̶3­ —¶¨K
+hz4 ;¹äStŠÉiø!ú-N€,^êZ@5TF';áR|pÿ!ÈŇx|°—ºæq¹e‚àöa¶ù³ëÍ¥¾ÉÒž>¬,?ïNtNà š6~𬗨D±`$tôp-áH—õ“uŒ–:FævP×T¡­È“ w‘‹¥^Úyköœ]ígçÈI‹êÙÞÞÃ`á$ò¦ksÁ"µøpªÌHe4a². ùÃÃ^U®:|Ô¹"Õš{Oâ!AW ›±âì9vÓõâ.}]HÜÿã«*r@$¾DÊ
+ƒ+ QdÃ¥û$GŽŸtôMëøð=ÐH˜ld„«¬aIÈAø›èÝø7žc>—
+ì†o|.îÞ‡<5ÎÝà‚ å¥á©ÍeòJòªI|ècA{0£.¦N
+¯ú茕çK¦-Ñ^ì™ðaS—õ³Ì¢#D²*w±''ó—¸ý‘5h‡+ú оÞîí³S„Fsvâ&LVn`Õ âè
+HÜçNˆ5¨Ÿn¤zö£½ô»,G3ñ›?â(>Êܤ<?ˆ$„áÇd‡Iy±è+Pt["þfÎjM'Xƒr™s
+΂›ÊuP /+Ž´¬ ¡«š-éùP¤6<AÔ%½ª”Žg›‘0Õ[ÛqßÅŽÒŒJiïÙ7Êžôß.b¸©t'š¦Be ºÖrš¿–íûüªuÉwÄŸü
+¯lÐ .ÖÊ=6¹7DsL6ø¢Ë¬h˜út„BHSJ™22²åÃY›²óð­Š«!Ú5£…‹7N"ñøñ^“^ûƒ ™;§>b6F­—<W¶ ¶“ª9 »2'ü ÒöþÂîAÔ÷"ÁÙî‹¿9?ŽO^ƒs¬‹Mÿ„×èá +1·û
+Ó€(r¬¼ã/“Z8L_ö;-v v¬›©æDZòùÇ(gÃjË ±@2ËIÔ°U½nƒ ý<œ¬­YѦ|Ϲ†D¡Å£¨ÐÂVnÖ¤[†ûz ³ë„œ’‚Ëô¼»î•õcå¿|ÂDÓ¾ýpUfˆ6LI„”ZTØ ¡œìpö|Ã.®y€Êôšˆo¥ “°¬FB®õ€†w‘kk'³æbÅrŸLºÕn~G‹4Ÿ”¢ ‹X FpCÊE™"1?¾ #íÚ,g\þU„þÁ¢˜¥mèãææqªb¶mm¯ÝÖ„7긇‹×j Ý™X‡sûìÔÔ]ﱄ“ð#,šß¦íWÈÌhü æÏ`¿äã’ ‹)ÐZf2ºæÁãGùŸA|rè°¨±üòžƒm¾úmAb^\®D†cmÚîs‹ñi–_Ó1Ç¿vU)í¼šú‰ŽŠ½Wye5õuãyÒ½fÏä–óSΆÈVÖ¢ÉúýZg+]£ù($pà³ve隡цè-Z¯@®W†„#8†î•áü9_îÕík×ù©[Iï©ÌžÕ¦…,šÇ’-ˆÕÁü^&“KîëìÀV²U1÷0¬Xï™Âô»gg.ÙäA
+ª|Æ>kèãÜó|™!»,ûleRÒ-ó&8 Ó™†túÎt¨½¦UÂo’4øª ¡-0çÍΡ~©üŽë‡D1¾ö;ø"53SÑ Üõ¢Ÿ êÒ5LaµTU5(­-íÅ›g%GcRÚK÷’vÍ}«íT=®°~Ö »O8ìÊ®è:ì©}}~0+Ðmøø«$'Pëe0Øú®¦V³×¢NYþ•¢tub‘S©¨çÍšíÇ n2a>ïÃgžp–»9°·oÙu¼>O$‡I—Š\*»>Â6/ÿô]õ±4Gá—v4³`ï½úÚ… Þ£
+:ò9£íÕš23ÔããoÜ>©GŸ÷^îªê“õŒü§à«4¾¢FZÎòãæ=•y¼yUÀÔUWB£'øÀð<ŒÏÁð†õ…åd­”Bf…÷š9ž×Äñ•†¬;+ X­$pÞì9’‹ù¶ÜüüÕôƒU ŽŒg¶Æ  ¬gªÓu9dºƒù’ÑüÃO®XE9BB_žø c¯<†֭„ŸP«íCÆ—-ÿ/½Bè\FÏ6y1óÂ0 Ï\CKoñ¿£[·Z1GþW%¬’»qƒå‚6Ôù‚ü¶Ûs8]ê#ø߇ß2Ð ž"çã˜
+ÍŽÂÔd"ãðS¯Âë¡3v“þGú™r²‡¸åæIÜYxÓ²äxÞ’¶â
+Õ¡}•~¤Èg,£3Šäi]xˆBlÕy?kÆÁ°«=XcÎAC)Q25ÿµ'Aˆ« émÊ­Þ²C/È ×1kªXêdIœì˜´%š°6UèßØaÊMu=}‡¾,uÙŽúçB;äs~‹ŸÌÌÛŸ2p—ïç=ºžP€pÅì461ÿ%Šgµ  Js‘?³3,e‘œ‰QéDÔy’A;M}¹à7€€:OóÓºÿÓ›B‘‹2®’›–Ù½`yxEÂêñ‚°to¨)W<yd‹?_Ü2®ÒhΕ;ç†qqÿl~ƒGBÃl;XçJß[¶›v'˜bäÚø}5&R£ÁÜ‹¼‡$·=#…ªMtätƒx˨{"cˆŸfóZw]¨½itÓ6Ú‰QGR!¶‹ûóòe±Ñ¡j‘›u<õqÒ§^Gæî;16òlñ¾Ï Ö%÷Ʋ¼ý“sçE\0ÚX*Å$ ¶•KGùð7" +3æSlu˜úy—‰¿Aæõ^¡£½<KqYÝ9ù›ñÙ¤ÑY…–ÆÛØf*°!áþ*D:Åm¯àÊJ¹à,!z؈åMÏSd…~¢ µÈo™Ùóœ N2BŠP~7vñËqÉ04¼*™5M¯7æ&êbãmUd™_*92U×ÃE0ˆ41qjG<華®n¼«Î+k[@íJPÂ'Ò=Ê•r—”ry꾂©ÜV”]Av­ˆHùyðRÎ& B¦é䮤Rªµ‡O¨³¹º3å°­O$
+;*H{¾™ˆ¶¿@ÝôøVS­”âîÊ~b-Fvt•]ná!R†çYz§‘*^ÑtM•âV|±Âïúd²ì­‰‰åëÒ4±³’ž¡ZO¸Ñ)ÚæxOj*Èá/aÃqÒšt£(~VÍDo¢K5ÛÞ»éVòH›žEšDCæÐŽÆ3†ö–î"êäÓÜÐçVg”tµ$‡B+ X»ëÛ£”¹Ú/²oµ½>Xe-}vøoëÒUW¸_•]-QÔbÛ~+aHxÁMbý³±–>ìÄŒ/?ìòúÙÛý“›þ–‹->®0üŸ®â{_·‘2b½÷jÅC¢v-}» "öÈDXá1âå–æÑ\]›øCvURó~‹v!ä=¤#6L‡¶8ű‘ë–½¤m6è×WÛa™w€ÁTQëò’½êŒ©MýeëGW,Yú›ýô~c²ú=EyFø³ùHvçObç5oä5¢±„u-qáDcÌLË'ŠjÇÐÅ«Ù“Á@SE‚%¡c–XÓqü]53µR^r(=V—=ŽCg9+öÁ ëôYÑF™|õá4–QôÇ^æÅñÛŒs²ˆ¬…›Šóa¹–f¿)KŒøçá Õ¬t«¬‡ŽàÃ’ž3òhÌ/6ï1—Ø’
+¢I[0õˆ
+ñ¾ÆÑ4“Bs ýfk6#‰c.¾×¬ç’–¡v_”KŽhŸÊýoòõãÛ=g¢"#Úùà¡,ðM€PV»ºm‰rT·iM­!gÓM6{`k©/¹ÿ JÙ!¤mƒQæ Qm˜?ƯzätÜ8ã9ú`ÇZ¯ÂÊÅŸçx,ä!¯ï
+¦gZàÿa£9+º¤òëÇý'Ím"‡4N›–=„j;ëlº{ºÒBªÉÕúŽõB½0M-˜º½‚{Ȧ‰ÃÃP|r“Û?Ž¢§â[XhUVÁrE'â`Uƒ|Zý GúKp¯¾X¯O&•ÔȆZ}X–’è1ÊN†èGz¦Ÿà„5ÿ ˆeÎ$ž
+Ì¥x’ˆÓ¯t[¥ì¼\4ü½vÅ"Qì+•ØL¼ š“©³’¤ûvÒœeàpe
+X]U,Üž¶ø`ö>þ/ÃaáêE2™I=1,v" Ó‰³Ô ci?ç­§Ú‹>|Ù5ÀZA£ÇÛÞœjô,[Áó,`î]Q!o!Ëox䋨Ê“$ô›èÒ!B1Ø›ñT²%UuɤFµ­ñZ¹‘ý‚:Ýé7T0LøKH­š£üÓMÖhÐÍGÈІ¤Éº&H)˸9¾ßÈXNþÄÀËä®òõ©\å©úª94<;4=`9J˜ñf-M‡–éoWmupÒ²:Æßžz<H¸Éõ;™ç"Ž×m¯aóÕâæg©Í0Pü»-vKu
+„¥7†4myDD×)žTûºhè °#Tÿ…Ï_ˆÙÁx> þtºÝ`~¼@‰0Ú;L¥¦/h|œ#]WLIˆ=ö ¤}¢-‡:Çå“ÌC¹"5„Lp—…U´½8‡¨Îµí®¦¯_ÒBÙ‡ nÒŽ&Gm×úlI,ĨûTCa¢­à“qÇ¢=ß¾¾]ïîKGˆ×dfz_`Ï¡ôèOJ|ÅŽ¤èRªF¯ÂÄô7ÔÉ ‹£0»Ãc¯ü’Ë<\­‡à{'Õºàî·R„)á%Ê$QGü;ußHAxMsO4y”£@3
+Ÿ—ãÙB>º¶Â’HÇ(¢NnŠŸõºSï|ݺÀxãüÛÖKþ·TûÂæÊeï¯÷•b9ìm›:ÃÖ”ï’î»ëÚšÿÞ¾§w”ƒ<£ö÷ݬ8°æ)È‹®Ê¿–äK|æØ/eªŸª½L‡ªQõ'„€VˆÂ2Ò|‹Égn&«r^ŸÖ\3ciú£H"ZK<ý
+`=î_i3V
+>øÔC!Ýüz¬2ÊYº
+NæM躻=@áൻ…ÙA¨Zóv=w¸v;‡ äÖÑÈ!U2´‚&™î*æ4ÛG†UŸc£ôHSùG–ª$8„<
++c×F°é ði¾ìRâS±¶Ü?VýžÂšÒ0]×1íj(ëýj™o%ß5ÇRµ•gŸôøq©T%ø?ŽÐÆ!Õm[æb)ÛŽjÀóL8]4P®‘æv˜GG™¡ÿ>Fö»¡©BéÁ „ñ#kîË‚´kü
+Ý£Œª¹÷÷­ÍT¹ùIªY#°fȲGÏè¬//ô¥cDH±F3À—Á¯0ƉSÛʽò•‘×z"nôWÙê&Ök*1hz hv¡éw—­Ïê@ÊäW(; HK†t²Ækµñ#©Ê{òupÜë–½Ôfÿ ÊZýΌׂ‚ò9©ÕÿŒ%@\Ó8ké¹Uc…d‹Y™jl!EHD@Yåd(÷¢‰úÅk0<Ö>톳ŠY&U*…;)"¶‘f7è·”åÂ~Ū}­¦œP>nŽ¢s&HrP†–Dœ-{ø'J]_EñŸ¹nõúŠ¬ tüÞ‘…ˆÕÍNñ Lm«`ÏÔÞyz(·¬l†²D]±]\̬¡0©]¶’Ä=í嬘ï7cù±Pku¥~ÏÀíõÁ¨5àÞ²4ÓÕ¶>_#_.|{Ÿuв§=Ç™ÿQöê’æ×ãª6sþ˜:W~ôˆ¾áù/麴‚§ü1JÒ7ÔrÊJê,T:¿Ï°5áìqÆ[+ñþ<ý†Â¹ûhµÙ7tF¹³4P?ŸJØr»ÖÓ•?Ü›Œn`wð¬€Ûëæ„|U¹
+¨eÕ%Z0t§¸ šÿ°*œðKq ¨ÏÈ“upwŒW QYå’ôe«å>?0ðNþ»DÅ×”Äõœ†ªӲĸQ$µR–·GÁB)¥Ò$ñÇÒ Š”H{» •ü¦LG$þ:\¨Î†¯®Z[L¤¿y»ØÚ¯tl˜áôIx¯Q—(áºvw§YÄßS?5ÞE–YÚU#ÀÝhú9t“ ·Ÿ‚ÝŸY©ãæËÂòdòÓÕYÓNY¦ë+ÏÕyw+øóMQ^ø¶ÌHÖPbâ|ZÔdêÍ›˜‰áNxÀ_K>
+U4icâ «'Âì¹½EW²‘°S9ƒEHÑm9éŒ-ÍÉÀ–E?×ð_±°R&y¹{I Ê$m¹Ï&¤É ¢÷=øX¶ÍzlˆöVyéœ;e_Ȧ*ßÀ6«¹Š•ßž¦er Óû)I–Bj†é :¨lltã2¬å á“;c]±'IÄÉÒߥ]&³2ÌZÚ’…n§
+~´ê-
+bµ€üt#V™‚EjökBÃ2oþ6æ‡ò%‘Ú b‰úREUk ƒ›s)€o±Ÿ_;˜Ù®ÄE£
+ÖÛ$Ÿ?J s?iØoK·¦6hTˆuú°èA‰p RŽÐÎ[gN©‹KcHÓU´Ò5;v:NR^R”·ßö9àl`›º„ôçygŽMåÜS ‚rf~Lv¯ êŠ0²@¢K‰*¤‘6[µœÐ}+z'jj†@£:uŸ–_#8øM9*ÞÂhbuyÈ!s¤5m_O5éµ|½TO='mÈUI…˜8j5‡E_%|V¹#¡l|“å®+6ò8šÀžkMVOðÔîÌ3FÌsù|èÆzXë9#Iø:à“ž.½‹Ššî=„ÝaŠ ‡¼ c¥+Š~yµú~&±§ðÈù…(Î+õ€rå˜>ÒÛØJ†
+2’4sC&™#™÷[ætÒ(€C_03ýE*8åËkþ;6¨O‰¸ë\”vÖ–³±›‡g£Ö²ø…ÝZF„† ås–¢ì<3vB#]–ÀiÖy¶Ä˜à5?
+endstream
+endobj
+695 0 obj
+<<
+/Type /FontDescriptor
+/FontName /LFOUYT+LMMono9-Regular
+/Flags 4
+/FontBBox [-451 -318 734 1016]
+/Ascent 600
+/CapHeight 600
+/Descent -222
+/ItalicAngle 0
+/StemV 74
+/XHeight 431
+/CharSet (/a/b/backslash/bar/braceleft/braceright/d/e/f/g/h/hyphen/i/l/m/n/o/one/p/parenleft/parenright/period/r/s/six/slash/t/three/two/u/v/x/y/zero)
+/FontFile 694 0 R
+>>
+endobj
+602 0 obj
+<<
+/Type /Encoding
+/Differences [21/endash 27/ff/fi/fl/ffi 33/exclam 36/dollar/percent 39/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P 82/R/S/T/U/V/W/X/Y 91/bracketleft/backslash/bracketright/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright 159/section 252/udieresis]
+>>
+endobj
+616 0 obj
+<<
+/Type /Encoding
+/Differences [0/parenleftbig/parenrightbig 12/vextendsingle 18/parenleftbigg/parenrightbigg/bracketleftbigg/bracketrightbigg 32/parenleftBigg/parenrightBigg 112/radicalbig]
+>>
+endobj
+604 0 obj
+<<
+/Type /Encoding
+/Differences [11/alpha/beta 14/delta 17/eta/theta 21/lambda/mu 25/pi/rho/sigma 30/phi 32/psi 34/epsilon 58/period/comma 61/slash 64/partialdiff/A 68/D/E/F/G/H 76/L 78/N 80/P 83/S/T/U/V 97/a/b/c/d 102/f 104/h/i/j/k/l/m/n 113/q/r 116/t/u/v/w/x/y/z 126/vector]
+>>
+endobj
+610 0 obj
+<<
+/Type /Encoding
+/Differences [0/minus/periodcentered 3/asteriskmath 41/arrowdblright 48/prime/infinity 76/L 106/bar 114/nabla]
+>>
+endobj
+612 0 obj
+<<
+/Type /Encoding
+/Differences [0/Gamma/Delta/Theta 8/Phi 40/parenleft/parenright 43/plus 48/zero/one/two/three/four 54/six 61/equal 95/dotaccent 99/c/d 105/i 108/l 110/n/o 113/q 115/s 117/u 120/x]
+>>
+endobj
+608 0 obj
+<<
+/Type /Encoding
+/Differences [136/bullet]
+>>
+endobj
+696 0 obj
+<<
+/Length 844
+/Filter /FlateDecode
+>>
+stream
+xÚmUMoÚ@½ûWl‘’a×Æ_BZÛXâÐ&
+QÕ+ØKŠ62 5ÿ¾ûfÆIå`x;ûfæͳ½¾ùö´žØ¶ßºIt¯Õ³;÷סq“òûæÜÜT}s=ºîòùֵãîùA= }³vu[®ªU·¿Üyòªk×Ö¬¯I…{ÝwôQ·/î×Ä5“ÃqûÇhÿ‡…ûe9xÖ×å£êSTQÚO7œ÷}÷ Ì½ÖÚ–][öGLr¦¢FMG}»}×"Im!00¡j÷ÍEVôÛ½%H^¿/î¸êv}0Ÿ«é³ß<_†7RyL‡Ö ûîUÝ~Òæ÷Ö×Óéà Cé`±P­Ûù’Þƒ›£SÓ¯Ç|'½¼œ
+imXYÓ·î|Ú4nØt¯.˜k½Póº^®k?íIÙîFîÒsuíBå‹`nlB
+˜„‘„­=öÌã¸æ@æ )UÖ 9yŽ€IÁ(Ñ¥âó
+ŒŠS*0–43–`Ô`ÔÌðÃSä³qªæ÷f|k¤iC¸˜c,– pD¸ÂˆzF‹¾:æxœ0¶À)ç¦ÀljŸsn l9uÁ}‰Sr¼
+ÆÐœ•ŒáQV1¦ú4¿‰ñLd5cèÌYŒ¾9ëÁÏY?=C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠ{œ³ÎˆrYgD¹¬ÓÐkÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|ÆsiÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)Ä<‡…øO5ù]±T“ß“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñáx?ä›ë0øóŸ¾.tªã<ßwîýtêOÈ¢‹¾\ã׫Ç:ø ärØ
+endstream
+endobj
+236 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /BRJOQA+LMRoman10-Bold
+/FontDescriptor 643 0 R
+/FirstChar 27
+/LastChar 121
+/Widths 630 0 R
+/Encoding 602 0 R
+/ToUnicode 696 0 R
+>>
+endobj
+697 0 obj
+<<
+/Length 844
+/Filter /FlateDecode
+>>
+stream
+xÚmUMoÚ@½ûWl‘’a×Æ_BZÛXâÐ&
+QÕ+ØKŠ62 5ÿ¾ûfÆIå`x;ûfæͳ½¾ùö´žØ¶ßºIt¯Õ³;÷סq“òûæÜÜT}s=ºîòùֵãîùA= }³vu[®ªU·¿Üyòªk×Ö¬¯I…{ÝwôQ·/î×Ä5“ÃqûÇ„þ öËþr𬯠ÊGÕ§¨¢´Ÿn8ïûîA™{­µ,»¶ì˜äLEšŽúvû®D’ÚB``BÕ¬è·9zK¼~;_ÜqÕíú`>WÓg¿y¾ o¤ò.˜>­öÝ«ºý¤Íï­¯§ÓÁA‡ÒÁb¡Z·ó%½?6G§¦_ùNzy;9ÒÚ°²¦oÝù´iÜ°é^]0×z¡æu½\×~Ú3’²ÝÜ¥çêÚÿ„:ÊÁÜ Ù„0%1 " 0Z{ì™ÇqÍÌ0Rª¬0r0ò“‚Q¢KÅ5<æ§T`,if,Á¨Á¨™á1†§ÈgãTÍïÍ øÖHÓ†p1ÆX:,àˆp…õŒ8}uÌñ
+8alSÎM3Ž?çÜØr>ê‚û§äx\±“¨i"ÎEÜ°†‚pJMö³kl4\?‚Ãõ“ÖåÇšîcõ±¦:Ëø#§þ?^ïÂYHwšupÍó¤r¯áQF^o­Ç†1¼ÎBÆЖEŒQ?›1^“׆¼ÈƨŸ¥Œ‰“ñüЉÔ—¼03ø’Œ¡9+ã¬bLõi~ã™ÈjÆЙ³þ}sÖƒŸ³~z†rÖCOÎúÊeý fÏYJ|ÖŸŸu¦Ðœ³Î÷8gå²ÎˆrY§¡×†}¶˜ÅŠÏ˜ÑŠÏ1°øLñ½¬øŒçÒŠÏèkÅgøiÅgâˆÏ˜ÝŠÏÐoÅgè´â3f·â3|³â3ÕŸ¡ßŠÏÐYˆÏè[ˆÏàâ3ø…ø =…øL¹â3f/Ägâ‹ÏÄÏød ,' f)ÄÌRˆÿx ñŸjò»b©&¿'ÕÿÁ©¸W *ŽÇ.M²G˜÷ªZN(:‘pãÃñ~È7×aðç?}]èTÇy¾ïÜûèÔŸE}¹Æ¯%Vuð'eØ%
+endstream
+endobj
+239 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /TNKIXC+LMRoman12-Bold
+/FontDescriptor 645 0 R
+/FirstChar 27
+/LastChar 121
+/Widths 628 0 R
+/Encoding 602 0 R
+/ToUnicode 697 0 R
+>>
+endobj
+698 0 obj
+<<
+/Length 843
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo›@½ó+¶‡HÉÁñ.˜¯È²´€‘|hÅQÕ« ëÔ’ ¶¥æßwßÌ4U ·³ofÞ<`¹ùö´žØ¶ßºIt¯Õ³;÷סq“òûæÜÜT}s=ºîòùֵãîùA= }³vu[®ªU·¿Üyòªk×Ö¬¯I…{ÝwôQ·/î×Ä5“Ãqû'÷w` òËþrð¤/÷•ªÏAEI?ÝpÞ÷݃2÷ZkXvmÙ1Æ9˜Š5Åíö];ˆµ…ºÀ„ªÝ7Yѽ9z?¼~;_ÜqÕíú`>WÓg¿y¾ o¤ñ.˜>­öÝ«ºý,Ío­¯§ÓÁA†ÒÁb¡Z·óýü?6G§¦_ÎøÎyy;9ÒÚ°®¦oÝù´iÜ°é^]0×z¡æu½\×þ·g$e»¹KÏÕµ¿…:ÊÁÜ Ù„0%1 " 0Z{ì™ÇqÍÌ0Rª¬0r0ò“‚Q¢KÅ5<æ§T`,if,Á¨Á¨™á1†§ÈgãTÍïÍ øÖHÓ†p1ÆX:,àˆp…õŒ8}uÌñ
+8alSÎM3Ž?çÜØr>ê‚û§äx\±“¨i"ÎEÜ°†‚pJMö³kl4\?‚Ãõ“ÖåÇšžcõ±¦:Ëø#§þ/„wá,¤'Í: ¸‰fŒyRyÖð(#¯·ÖcÃ^g!chË"ƨŸÍ/ÉkC^d cÔÏRÆÄÉx~hÈÄ êK^˜|É
+ÆÐœ•ŒáQV1¦ú4¿‰ñNd5cèÌYŒ¾9ëÁÏY?½C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠgœ³ÎˆrYgD¹¬ÓÐgÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|Æ{iÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)ļ‡…øO5ù[±T“¿“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñÛx?ã›ë0øãŸþ-tªã<ßwîý÷sêOÈ¢‹þ[ã«Ç:ø $×S
+endstream
+endobj
+203 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /WCAPHI+LMRoman9-Bold
+/FontDescriptor 647 0 R
+/FirstChar 65
+/LastChar 116
+/Widths 635 0 R
+/Encoding 602 0 R
+/ToUnicode 698 0 R
+>>
+endobj
+699 0 obj
+<<
+/Length 845
+/Filter /FlateDecode
+>>
+stream
+xÚuUMo›@½ó+¶‡HÉÁñ.˜¯È²´€‘rhÅQÕ«ëÉ Û‡üûî›’6jØo‡73o°{õíq3³íðâfÑ­VOî4\ÆÆÍÊïÛcpuU ÍåàúóçZ×NwOwêqš;«ëò¾ºï»ó'ß÷ÍþÒº‰õRá^»þƒ‚>êúÙýš¹f¶?4§Æhÿ•ý¹;ï=í †òaõ9¬(ñ§OÝÐß)s«µöuß–ÃÃœ‚¹RóIâ®ëÛQT©h L¨Ú®9ËŠ~›ƒwÉ›·ÓÙîûÝ,—jþäožÎãé¼ æcëÆ®UןÅù››Ëñ¸w¢t°Z©Öí|MïÃíÁ©ù“¾³žßŽN…´6¬­Zw:n7nûW,µ^©e]¯×·ŸîIyÙMܵçêÚÿ„:ÊWÁÒ Ù„0%1 " 0Z{ì™ÇqÍÌ0Rª¬0r0ò“‚Q¢KÅ5<–§T`¬if¬Á¨Á¨™á1†›¦ÈÓTÍïí(øÖHÓ†p±
+8alSÎM3Ž?çÜØr>ê‚û§äx\±“¨i"ÎEÜ°†‚pJMö³kl4\?‚Ãõ“ÖåÇšžcõ±¦:ë¿ø§þ7^ïÂEHOšupÍó¤ò¬áQF^o­Ç†1¼ÎBÆЖEŒQ?[0^“׆¼ÈƨŸ¥Œ‰“ñüЉÔ—¼0 ø’Œ¡9+ã¬bLõi~ãÈjÆЙ³þ}sÖƒŸ³~z‡rÖCOÎúÊeý fÏYJ|ÖŸŸu¦Ðœ³ÎÏ8gå²ÎˆrY§¡Ï†}¶˜ÅŠÏ˜ÑŠÏ1°øLñ½¬øŒ÷ÒŠÏèkÅgøiÅgâˆÏ˜ÝŠÏÐoÅgè´â3f·â3|³â3ÕŸ¡ßŠÏÐYˆÏè[ˆÏàâ3ø…ø =…øL¹â3f/Ägâ‹ÏÄÏxg ,; f)ÄÌRˆÿx ñŸjò·b©&'ÕÿÁ©¸W *ŽÇ.lMr0ß«jÙ¡hGÂFŒ£ã}—o.ãè
+endstream
+endobj
+300 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /HFYFJK+LMRomanCaps10-Regular
+/FontDescriptor 649 0 R
+/FirstChar 67
+/LastChar 252
+/Widths 622 0 R
+/Encoding 602 0 R
+/ToUnicode 699 0 R
+>>
+endobj
+700 0 obj
+<<
+/Length 841
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N)ˆ$‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Û¯nÝjõäNÃelܬü¹=WWÕÐ\®?ß;׺vÚ=Ý©ÇqhžÝY]—›jÓwçOÞôÍþÒº‰õ=©po]ÿIAuýâ~Ï\3ÛF£ýXƒüÒ÷žôí¾òAõ5¨(é—OÝÐß)s«µöuß–Ãcœ‚¹HQóIÜ®ëÛQô¨W¨ L¨Ú®9ËŠîÍÁûäç÷ÓÙ6ýn–K5ò›§óøNo‚ùÃغ±ëßÔõWi~ëùr<îd(¬Vªu;_ÑÏ¿=85ÿvÆÎËûÑ©Ö†u5CëNÇmãÆmÿæ‚¥Ö+µ¬ëUàúö¿=#)¯»‰»ö\]û[¨£|, ’MHS"#p òÐ
+endstream
+endobj
+207 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /ZDORWX+LMRoman10-Regular
+/FontDescriptor 661 0 R
+/FirstChar 21
+/LastChar 159
+/Widths 631 0 R
+/Encoding 602 0 R
+/ToUnicode 700 0 R
+>>
+endobj
+701 0 obj
+<<
+/Length 841
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N)ˆ$‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Û¯nÝjõäNÃelܬü¹=WWÕÐ\®?ß;׺vÚ=Ý©ÇqhžÝY]—›jÓwçOÞôÍþÒº‰õ=©po]ÿIAuýâ~Ï\3ÛFú;°ù¥;ï=éÛ}åƒêkPQÒ/7žº¡¿SæVkíë¾-‡Æ8s‘¢æ“¸]×·£èQ¯P˜Pµ]s–Ý›ƒ÷ÉÏ麟;lúÝ,—jþä7Oçñ4Þó‡±uc׿©ë¯ÒüÖóåxÜ;ÈP:X­Tëv¾¢Ÿÿ~{pjþ팜—÷£S!­ ëj†ÖŽÛÆÛþÍK­WjY׫Àõí{FR^wwí¹ºö·PGù*X$›¦D F á@ä¡F@k} ó8®9ù@FJ•uFFž#`R0Jt©¸†ÇÁ²£â”
+Œ5 ÁŒ5553<ÆpÓùbšªù³Å
+Í9ëLñŒsÖQ.ëŒ(—uúlØg‹Y¬øŒ­ø‹ÏÄŸÑËŠÏx/­øŒ¾V|†ŸV|&ŽøŒÙ­ø ýV|†N+>cv+>Ã7+>S}ñú­ø …øŒ¾…ø ~!>ƒ_ˆÏÐSˆÏ”+>cöB|&¾øLüŒOÂrÒ`–BüÇ,…ø÷°ÿ©&+–jòwRPñœŠ{Åð¡âxáÂÑ${„y¯ªå„¢ 1~g|sGüÓ¿…Nuœç]ï>~?Çáˆ,ºè¿5ý(±z¨ƒ¿óªÖ
+endstream
+endobj
+201 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /XTQVMY+LMRoman12-Regular
+/FontDescriptor 663 0 R
+/FirstChar 44
+/LastChar 121
+/Widths 637 0 R
+/Encoding 602 0 R
+/ToUnicode 701 0 R
+>>
+endobj
+702 0 obj
+<<
+/Length 841
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N)ˆ$‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Û¯nÝjõäNÃelܬü¹=WWÕÐ\®?ß;׺vÚ=Ý©ÇqhžÝY]—›jÓwçOÞôÍþÒº‰õ=©po]ÿIAuýâ~Ï\3ÛF“ú;°ù¥;ï=éÛ}åƒêkPQÒ/7žº¡¿SæVkíë¾-‡Æ8s‘¢æ“¸]×·£èQ¯P˜Pµ]s–Ý›ƒ÷ÉÏ麟;lúÝ,—jþä7Oçñ4Þó‡±uc׿©ë¯ÒüÖóåxÜ;ÈP:X­Tëv¾¢Ÿÿ~{pjþ팜—÷£S!­ ëj†ÖŽÛÆÛþÍK­WjY׫Àõí{FR^wwí¹ºö·PGù*X$›¦D F á@ä¡F@k} ó8®9ù@FJ•uFFž#`R0Jt©¸†ÇÁ²£â”
+Œ5 ÁŒ5553<ÆpÓùbšªù³Å
+Í9ëLñŒsÖQ.ëŒ(—uúlØg‹Y¬øŒ­ø‹ÏÄŸÑËŠÏx/­øŒ¾V|†ŸV|&ŽøŒÙ­ø ýV|†N+>cv+>Ã7+>S}ñú­ø …øŒ¾…ø ~!>ƒ_ˆÏÐSˆÏ”+>cöB|&¾øLüŒOÂrÒ`–BüÇ,…ø÷°ÿ©&+–jòwRPñœŠ{Åð¡âxáÂÑ${„y¯ªå„¢ 1~g|sGüÓ¿…Nuœç]ï>~?Çáˆ,ºè¿5ý(±z¨ƒ¿šÁÖ6
+endstream
+endobj
+200 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /MOKFOJ+LMRoman17-Regular
+/FontDescriptor 665 0 R
+/FirstChar 27
+/LastChar 119
+/Widths 638 0 R
+/Encoding 602 0 R
+/ToUnicode 702 0 R
+>>
+endobj
+703 0 obj
+<<
+/Length 841
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N)ˆ$‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Û¯nÝjõäNÃelܬü¹=WWÕÐ\®?ß;׺vÚ=Ý©ÇqhžÝY]—›jÓwçOÞôÍþÒº‰õ=©po]ÿIAuýâ~Ï\3ÛÆÄß
+imXU3´îtÜ6nÜöo.Xj½R˺^®oÿÛ3’òº›¸kÏÕµ¿…:ÊWÁÒ Ù„0%1 " 0Z{ì™ÇqÍÌ0Rª¬0r0ò“‚Q¢KÅ5<–§T`¬if¬Á¨Á¨™á1†›¦ÈÓTÍŸí(øÖHÓ†p±
+8alSÎM3Ž?çÜØr>ê‚û§äx\±“¨i"ÎEÜ°†‚pJMö³kl4\?‚Ãõ“Öåçšžcõ¹¦:ëø§þ/„wá"¤'Í: ¸‰fŒyRyÖð(#¯·ÖcÃ^g!chË"ƨŸ-¯ÉkC^d cÔÏRÆÄÉx~hÈÄ êK^˜|É
+ÆÐœ•ŒáQV1¦ú4¿‰ñNd5cèÌYŒ¾9ëÁÏY?½C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠgœ³ÎˆrYgD¹¬ÓÐgÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|Æ{iÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)ļ‡…øO5ù[±T“¿“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñÓø8â›Ë8úÓŸþ,tªã<ïz÷ñó9GdÑE­é‰ÕCü| Õ<
+endstream
+endobj
+297 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /TRUNAO+LMRoman6-Regular
+/FontDescriptor 669 0 R
+/FirstChar 48
+/LastChar 65
+/Widths 624 0 R
+/Encoding 602 0 R
+/ToUnicode 703 0 R
+>>
+endobj
+704 0 obj
+<<
+/Length 841
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N)ˆ$‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Û¯nÝjõäNÃelܬü¹=WWÕÐ\®?ß;׺vÚ=Ý©ÇqhžÝY]—›jÓwçOÞôÍþÒº‰õ=©po]ÿIAuýâ~Ï\3ÛÆÔß
+imXU3´îtÜ6nÜöo.Xj½R˺^®oÿÛ3’òº›¸kÏÕµ¿…:ÊWÁÒ Ù„0%1 " 0Z{ì™ÇqÍÌ0Rª¬0r0ò“‚Q¢KÅ5<–§T`¬if¬Á¨Á¨™á1†›¦ÈÓTÍŸí(øÖHÓ†p±
+8alSÎM3Ž?çÜØr>ê‚û§äx\±“¨i"ÎEÜ°†‚pJMö³kl4\?‚Ãõ“Öåçšžcõ¹¦:ëø§þ/„wá"¤'Í: ¸‰fŒyRyÖð(#¯·ÖcÃ^g!chË"ƨŸ-¯ÉkC^d cÔÏRÆÄÉx~hÈÄ êK^˜|É
+ÆÐœ•ŒáQV1¦ú4¿‰ñNd5cèÌYŒ¾9ëÁÏY?½C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠgœ³ÎˆrYgD¹¬ÓÐgÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|Æ{iÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)ļ‡…øO5ù[±T“¿“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñÓø8â›Ë8úÓŸþ,tªã<ïz÷ñó9GdÑE­é‰ÕCüiÕA
+endstream
+endobj
+270 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /OGJSOL+LMRoman7-Regular
+/FontDescriptor 671 0 R
+/FirstChar 48
+/LastChar 65
+/Widths 627 0 R
+/Encoding 602 0 R
+/ToUnicode 704 0 R
+>>
+endobj
+705 0 obj
+<<
+/Length 841
+/Filter /FlateDecode
+>>
+stream
+xÚmUÁn£0½óÞC¥öƆ
+N7RIýûõ›™´ÛU çñ›™70W?Ÿ'®^ý$¹ÕêɇóØúIõs}ˆ®®ê¡=ï}º÷¾óÝe÷x§Ç¡}ö'u]­êU¿=ÝòªowçÎ_Xß“Jÿ¶í?)裮_üï‰o'»ýhà Pƒû²=íç»mbêKLQÊ/?·C§Ì­Ö:–}W {ÌpŒ¦¢CM/Ê6Û¾EŒz…´ÈĪ۶'YѽÝ3üü~<ùýªß Ñ|®¦OaóxßIáM4};?nû7uýEYØy>;JG‹…êü& ³ß¯÷^M¿ðƒòò~ð*¦µaUíÐùãaÝúqÝ¿ùh®õBÍ›fù¾ûoÏHÊëæÂ]®nÂ-ÖI±ˆæÉ&¦€©HÈ8„@l€Ð:à°§ ld`äTYg``&£B—škÍk0jN©ÁXÒÌX‚Ñ€Ñ0#` w™¢˜]¦jÿ¬G1 ´Fš6„Ë0ÆÒq•'„kŒ¨gÄqè«SŽ×Àcœsnl9Nü‚s`Çqø¨KîKœŠã%pÍN¢¦I8qÃJÂ9q4ÙÏ®%°Ñpý ×Ï2\XWŸkzŽõçšê,ÿá_8Í×x1¼‹g1=iÖaÀÍ4c̓˳†G–¼6ÁÚ€ cxmcÆÐfƨogŒ—Àäµ!/lÆõmΘ8–ç‡+^P_òÂÌà‹-C³­Ã#[3¦ú4¿IñN؆1t¬?Eß‚õ§à¬ŸÞ¡‚õ§ÐS°þŒrY†Ù ÖŸŸõgÄg94¬3Ç3.XgB¹¬3¡\Öiè³aŸfqâ3ftâs
+,>G|F/'>ã½tâ3ú:ñ~:ñ™8â3fwâ3ô;ñ:øŒÙø ßœøLõÅgèwâ3t–â3ú–â3ø¥ø ~)>CO)>S®øŒÙKñ™øâ3ñ-Ÿ „å¤Á,¥øYJñïa)þSMþVÕä襤:â?85÷JáCÍñ4Á…£Iöó^ÝÈ E'bü4>Žøö<Žáô§? ê8Ï·½ÿøù†²è¢¿Öå‰ÕCý¾ÇÕF
+endstream
+endobj
+299 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /CGRHAC+LMRoman8-Regular
+/FontDescriptor 673 0 R
+/FirstChar 27
+/LastChar 121
+/Widths 623 0 R
+/Encoding 602 0 R
+/ToUnicode 705 0 R
+>>
+endobj
+706 0 obj
+<<
+/Length 841
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N)ˆ$‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Û¯nÝjõäNÃelܬü¹=WWÕÐ\®?ß;׺vÚ=Ý©ÇqhžÝY]—›jÓwçOÞôÍþÒº‰õ=©po]ÿIAuýâ~Ï\3ÛÆÜß
+imXU3´îtÜ6nÜöo.Xj½R˺^®oÿÛ3’òº›¸kÏÕµ¿…:ÊWÁÒ Ù„0%1 " 0Z{ì™ÇqÍÌ0Rª¬0r0ò“‚Q¢KÅ5<–§T`¬if¬Á¨Á¨™á1†›¦ÈÓTÍŸí(øÖHÓ†p±
+8alSÎM3Ž?çÜØr>ê‚û§äx\±“¨i"ÎEÜ°†‚pJMö³kl4\?‚Ãõ“Öåçšžcõ¹¦:ëø§þ/„wá"¤'Í: ¸‰fŒyRyÖð(#¯·ÖcÃ^g!chË"ƨŸ-¯ÉkC^d cÔÏRÆÄÉx~hÈÄ êK^˜|É
+ÆÐœ•ŒáQV1¦ú4¿‰ñNd5cèÌYŒ¾9ëÁÏY?½C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠgœ³ÎˆrYgD¹¬ÓÐgÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|Æ{iÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)ļ‡…øO5ù[±T“¿“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñÓø8â›Ë8úÓŸþ,tªã<ïz÷ñó9GdÑE­é‰ÕCüà%ÕK
+endstream
+endobj
+202 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /ICLJJO+LMRoman9-Regular
+/FontDescriptor 675 0 R
+/FirstChar 27
+/LastChar 121
+/Widths 636 0 R
+/Encoding 602 0 R
+/ToUnicode 706 0 R
+>>
+endobj
+707 0 obj
+<<
+/Length 843
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N)ˆ$‡þûõ›Úݪ’çñ›™70W?Ÿg¶^Ý,ºÕêɆËظYùs{ ®®ª¡¹\¾w®uí´{ºSãÐ<»³º.7Õ¦ïÎ7ž¼é›ý¥uë{RáÞºþ“‚>êúÅýž¹f¶?ŒÑþ öKwÞ{Ö÷å£êKTQÚ/7žº¡¿SæVkíë¾-‡&9sQ£æ“¾]×·£HR¯˜Pµ]s–ý6o ’ŸßOgwØô»!X.ÕüÉožÎã;©¼ æcëÆ®S×_´ù½çËñ¸wСt°Z©Öí|IïÁýöàÔüû1?H/ïG§BZVÖ ­;··ý› –Z¯Ô²®WëÛ/{FR^wwí¹ºö?¡ŽòU°4H6!L‰@Œ@ÂÈBŒ€Öû@æq\s óŒ”*댌<GÀ¤`”èRq ƒeFÅ)k‚k0j0jfxŒá¦)òÅ4Uóg;Š¾5Ò´!\,€1–Ë8"\aD½ ŽE_s¼N[à”sSàŒãÄÏ9·¶‡ºà¾Ä)9^
+ñ³â?žÃBü§šü®XªÉïIAuÄp*îÇŠãq„ G“ì潪–ŠN$Äøp|òÍeýùO_:Õqžw½ûø
+endstream
+endobj
+282 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /EZYWEQ+LMRoman10-Italic
+/FontDescriptor 677 0 R
+/FirstChar 27
+/LastChar 121
+/Widths 626 0 R
+/Encoding 602 0 R
+/ToUnicode 707 0 R
+>>
+endobj
+708 0 obj
+<<
+/Length 843
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N7R$‡þûõ›Úݪ’çñ›™70W?Ÿg¶í_Ý,ºÕêÉýehܬü¹=WWUß\Ž®;ß;׺vÚïÔãÐ7ÏËMµéöçOÞtÍáÒº‰õ=©poûî“‚>êúÅýž¹fv8Ž£Ñþ öËþ|ð¬ï ÊGÕ—¨¢´_n÷}w§Ì­ÖÚÖ][öGL2sQ£æ“¾Ý¾k‘¤^!00¡j÷ÍYVôÛ½%H~~Ïî¸év}°\ªù“ßÏÃ;©¼ æCë†}÷¦®¿hó{Ï—Óéà Cé`µR­Ûù’ÞƒûíÑ©ù÷c~^ÞON…´6¬¬é[7ž¶¶Ý› –Z¯Ô²®WëÚ/{FR^wwí¹ºö?¡ŽòU°4H6!L‰@Œ@ÂÈBŒ€Öû@æq\s óŒ”*댌<GÀ¤`”èRq ƒeFÅ)k‚k0j0jfxŒá¦)òÅ4Uóg;ˆ¾5Ò´!\,€1–Ë8"\aD½ ŽE_s¼N[à”sSàŒãÄÏ9·¶‡ºà¾Ä)9^
+ñ³â?žÃBü§šü®XªÉïIAuÄp*îÇŠãq„ G“ì潪–ŠN$Äøp|òÍeüùO_:Õqžï;÷ñ:õ'dÑE_®ék‰ÕCüvµØW
+endstream
+endobj
+506 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /PWWUQZ+LMSans10-Regular
+/FontDescriptor 679 0 R
+/FirstChar 43
+/LastChar 116
+/Widths 603 0 R
+/Encoding 602 0 R
+/ToUnicode 708 0 R
+>>
+endobj
+709 0 obj
+<<
+/Length 844
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo›@½ó+¶‡HÉÁñ.˜¯È²´€‘|h%QÕ«ëÕ Û‡üûî›’6Êûíì›™7X®¾=<Íl;¼¸Yt«Õ£; —±q³òûö\]UCs9¸þüùֵÓîéN=ŒCóäÎêºÜT›¾;ßxò¦oö—ÖM¬¯I…{íú
+ú¨ëg÷kæšÙþpþc´ÿÃBƒýÜ÷žõ5Aù¨úU”öÓ§nèÕZûÀºoËá€INÁ\Ô¨ù¤o×õí(’Ô &TmלeE¿ÍÁ[‚䧷ÓÙ6ýn–K5ô›§óøF*o‚ùýغ±ë_Õõ'm~ïér<ît(¬Vªu;_Ò{ðc{pjþõ˜ï¤ç·£S!­ +k†ÖŽÛÆÛþÕK­WjY׫Àõí§=#)/»‰»ö\]ûŸPGù*X$›¦D F á@ä¡F@k} ó8®9ù@FJ•uFFž#`R0Jt©¸†ÇÁ²£â”
+Œ5 ÁŒ5553<ÆpÓùbšªù½Å
+ñÏa!þSM~W,Õä÷¤ :â?8÷ŠáCÅñ8Â…£Iöó^UË E'b|8Þùæ2Žþü§¯ ê8ϻ޽€ŽÃYtÑ—kúZbu_ŒGØ4
+endstream
+endobj
+356 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /GXFNCS+LMMonoLt10-Bold
+/FontDescriptor 687 0 R
+/FirstChar 40
+/LastChar 125
+/Widths 606 0 R
+/Encoding 602 0 R
+/ToUnicode 709 0 R
+>>
+endobj
+710 0 obj
+<<
+/Length 843
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N7R!‡þûõ›Úݪ’çñ›™70W?Ÿg¶í_Ý,ºÕêÉûËиYùs{
+®®ª¾¹]7Þ;׺vÚ=ß©Ç¡ožÝ¨®ËMµéöã'oºæpiÝÄúžT¸·}÷IAuýâ~Ï\3;ÇÑhÿ‡…ûe?<ë{‚òQõ%ª(í—Îû¾»SæVkíë®-û#&9sQ£æ“¾Ý¾k‘¤^!00¡j÷Í(+úmŽÞ$?¿ŸGwÜt»>X.ÕüÉožÇáTÞó‡¡uþ{S×_´ù½çËétpСt°Z©Öí|IïÁýöèÔüû1?H/ï'§BZVÖô­;Ÿ¶¶Ý› –Z¯Ô²®WëÚ/{FR^wwí¹ºö?¡ŽòU°4H6!L‰@Œ@ÂÈBŒ€Öû@æq\s óŒ”*댌<GÀ¤`”èRq ƒeFÅ)k‚k0j0jfxŒá¦)òÅ4Uóg;ˆ¾5Ò´!\,€1–Ë8"\aD½ ŽE_s¼N[à”sSàŒãÄÏ9·¶‡ºà¾Ä)9^
+ñ³â?žÃBü§šü®XªÉïIAuÄp*îÇŠãq„ G“ì潪–ŠN$Äøp|òÍeüùO_:Õqžï;÷ñ:õ'dÑE_®ék‰ÕCü¹²Øa
+endstream
+endobj
+237 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /UEBWYO+LMMono10-Regular
+/FontDescriptor 689 0 R
+/FirstChar 33
+/LastChar 125
+/Widths 629 0 R
+/Encoding 602 0 R
+/ToUnicode 710 0 R
+>>
+endobj
+711 0 obj
+<<
+/Length 843
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N7R!‡þûõ›Úݪ’çñ›™70W?Ÿg¶í_Ý,ºÕêÉûËиYùs{
+®®ª¾¹]7Þ;׺vÚ=ß©Ç¡ožÝ¨®ËMµéöã'oºæpiÝÄúžT¸·}÷IAuýâ~Ï\3;ÇÑ„þ öË~<xÖ÷å£êKTQÚ/7œ÷}w§Ì­ÖÚÖ][öGLræ¢FÍ'}»}×"I½B``BÕî›QVôÛ½%H~~?î¸év}°\ªù“ß<Ã;©¼ æCë†}÷¦®¿hó{Ï—Óéà Cé`µR­Ûù’ÞƒûíÑ©ù÷c~^ÞON…´6¬¬é[w>m7l»7,µ^©e]¯×µ_öŒ¤¼î&îÚsuíBå«`ilB
+˜„‘„­=öÌã¸æ@æ )UÖ 9yŽ€IÁ(Ñ¥âË
+ŒŠS*0Ö43Ö`Ô`ÔÌðÃMSä‹iªæÏv|k¤iC¸X
+ÆÐœ•ŒáQV1¦ú4¿‰ñLd5cèÌYŒ¾9ëÁÏY?=C9ë¡'gý å²þ³ç¬?%>ëOˆÏ:ShÎYgŠ{œ³ÎˆrYgD¹¬ÓÐkÃ>[ÌbÅgÌhÅçX|&ŽøŒ^V|ÆsiÅgôµâ3ü´â3qÄgÌnÅgè·â3tZñ³[ñ¾Yñ™ê‹ÏÐoÅgè,Ägô-Ägð ñüB|†žB|¦\ñ³â3ñÅgâg|2–“³â?f)Ä<‡…øO5ù]±T“ß“‚êˆÿàTÜ+†ÇãŽ&Ù#Ì{U-'H8ˆñáø8ä›Ë0øóŸ¾.tªã<ßwîãtêOÈ¢‹¾\Ó׫‡:ø ü–Øk
+endstream
+endobj
+199 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /BYUMNM+LMMono12-Regular
+/FontDescriptor 691 0 R
+/FirstChar 99
+/LastChar 111
+/Widths 639 0 R
+/Encoding 602 0 R
+/ToUnicode 711 0 R
+>>
+endobj
+712 0 obj
+<<
+/Length 842
+/Filter /FlateDecode
+>>
+stream
+xÚmUÁn£0½óÞC¥öƆ
+N7R!‡þýúÍLÚíªÐóøÍÌ›˜‹O3× /~–\kõèÃilý¬ú¹9DõОö¾Ÿî¼ï|wÞ=Þ¨‡qhŸü¤.«Ûú¶ßMW|Û·o§ÎŸYß“Jÿºë?)è£.Ÿýï™ogoûi²á¬A~ÞMoôí¾
+Aõ5¨(é—»¡¿QæZk뾫†=Æ8Fs‘¢ægqÛ]ߢG½@]dbÕíÚIVto÷Á$?½'¿¿í·C´\ªùcØ<Nã;i¼Šæ÷cçÇ]ÿª.¿J [O§ÃáÍC†ÒÑj¥:¿ Ãüw›½Wóogüà<¿¼ŠimXW;tþxØ´~Üô¯>Zj½R˦YE¾ïþÛ3’ò²=s׫›p‹uR¬¢¥A²‰)`*R2$!`´8lÀiÃ9UÖE€ÉÁ¨Ð¥æGËŒšSj0Ö43Ö`4`4Ìç(ç©Ú?›Q ­‘¦ árŒ±t\eÀ á#êqúê”ã5pÆØ眛[Ž¿àÜØq>ê’û§âx \³“¨iÎEÜ°†’pNMö³k l4\?Ãõ³ ÖÕçšžcý¹¦:ëøgNó5^ ïâELOšup3Íóäò¬á‘%¯M°6`Ã^Û˜1´Ù„1êÛã50ymÈ ›1F}›3&Žåù¡ÁŠÔ—¼0 øbKÆÐl+ÆðÈÖŒ©>ÍoR¼¶a ëOÑ·`ý)øë§w¨`ý)ô¬?£\ÖŸaö‚õçÄgýñYgÍëÌñŒ Ö™P.ëL(—uúlØg‡YœøŒøœ‹ÏÄŸÑˉÏx/øŒ¾N|†ŸN|&ŽøŒÙø ýN|†N'>cv'>Ã7'>S}ñúø ¥øŒ¾¥ø ~)>ƒ_ŠÏÐSŠÏ”+>cöR|&¾øL|Ë'a9i0K)þc–RüÇ{XŠÿT“¿G5ù;)©ŽøNͽRøPs<Mpáh’=¼W7rBщ„ƒ¿3¾=c8þéßB§:Îó]ï?~?‡á€,ºè¿uþQbußD¿×”
+endstream
+endobj
+351 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /OYOHRR+LMMono8-Regular
+/FontDescriptor 693 0 R
+/FirstChar 49
+/LastChar 117
+/Widths 607 0 R
+/Encoding 602 0 R
+/ToUnicode 712 0 R
+>>
+endobj
+713 0 obj
+<<
+/Length 842
+/Filter /FlateDecode
+>>
+stream
+xÚmUMo£0½ó+¼‡Jí! á«Š"RÛVmµÚk
+N7R!‡þûõ›ÚíªÐóøÍÌ›˜«Ï3Ûö¯nÝjõäÎýehܬü¹=WWUß\Ž®ïk];ížïÔãÐ7ÏnT×å¦ÚtûñÆ“7]s¸´nb}O*ÜÛ¾û¤ º~q¿g®™Žã˜û;°ùe?<éÛ}åƒêkPQÒ/7œ÷}w§Ì­ÖÚÖ][öGŒqæ"EÍ'q»}×¢G½B]`BÕî›QVtoŽÞ$?¿ŸGwÜt»>X.ÕüÉožÇá4Þó‡¡uþ{S×_¥ù­çËétp¡t°Z©Öí|E?ÿýöèÔüÛ?8/ï'§BZÖÕô­;Ÿ¶¶Ý› –Z¯Ô²®WëÚÿöŒ¤¼î&îÚsuío¡ŽòU°4H6!L‰@Œ@ÂÈBŒ€Öû@æq\s óŒ”*댌<GÀ¤`”èRq ƒeFÅ)k‚k0j0jfxŒá¦)òÅ4Uóg;ˆ¾5Ò´!\,€1–Ë8"\aD½ ŽE_s¼N[à”sSàŒãÄÏ9·¶‡ºà¾Ä)9^
+ñïa!þSMþV,Õä鸞:â?8÷ŠáCÅñ8Â…£Iöó^UË E'bü6>Îøæ2 þø§ ê8Ï÷ûøýœú²è¢ÿÖô£Äê¡þàƒ×™
+endstream
+endobj
+204 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /LFOUYT+LMMono9-Regular
+/FontDescriptor 695 0 R
+/FirstChar 40
+/LastChar 125
+/Widths 634 0 R
+/Encoding 602 0 R
+/ToUnicode 713 0 R
+>>
+endobj
+714 0 obj
+<<
+/Length 846
+/Filter /FlateDecode
+>>
+stream
+xÚmUÁn›@½óÛC¤ôàz ,•ei#åÐ&J¢ªW6)R Ƈü}÷ÍŒ“6ÊôvöÍÌ›,W_î®÷~‘|ÓêÞŸÆóÔúEõcwŒ®®ê±=ü0ÿô¾óÝe÷ô]ÝMcûàgu]ÝÔ7C? 䛡}9wþÂúœTúç~x§ º~ô¿þԳыý¹™ûa¡Á~ìç—Àúœ BT}ˆ*Jûå§S?ß•ù¦µíÐUã“œ¢¥¨QË‹¾§~è&‘¤ö™Xu};ËŠîí!X‚ä‡×Óì7ÃÓ­×jy6OóôJ*¿FËÛ©óS?<«ëÚÂÞÃùx|ñСt´Ù¨Î?…’ÁƒŸ»ƒWËÏÇ|#=¾½ŠimXY;vþtܵ~Ú Ï>Zk½Që¦ÙD~è>ìIÙ?]¸ÛÀÕM¸Å:)6ÑÚ ÙÄ0)’ˆÁˆÐ:à°§ ld&àœ*뀣uFQ `r0*Ô¨¹F…55§Ô`liflÁhÀh˜0†»LQ¬.Sµv“Z#MÂå
+cé¸Ê€Â5FÔ+â8ôÕ)ÇkàŒ±Î97¶'~Á¹ °ã8|Ô%÷%NÅñ¸f'QÓ$œ‹¸a %áœ8šì·ül0‹aXj¸W=†{e.¬«÷5=Óú}M5·ÿð/œæÿx1ë0ØÏ4cÌ“3×Á#K^›`mÀ†1¼¶1cè± cÔ´+Æ[`òÚ6cŒú6gLË3Cƒ•ù©/ÍoVð–ŒñvÚŠ1|±5cªO3›>Ú†1t¬?Eß‚õ§à¬ŸÞ¡‚õ§ÐS°þŒrY†Ù ÖŸŸõgÄg94¬3Ç3.XgB¹¬“žqÁ: }6â3fqâ3ftâs
+,>G|F/'>ã½tâ3ú:ñ~:ñ™8â3fwâ3ô;ñ:øŒÙø ßœøLõÅgèwâ3t–â3ú–â3ø¥ø ~)>CO)>S®øŒÙKñ™øâ3ñ-Ÿ „å¤Á,¥øYJñïa)þSMþ>Õäo£¤:â?85÷JáCÍñ4Á…£Iöó^ÝÈ E'bü8Þùö<Máü§¿ ê8ÏûÁ¿ý€ŽãYtÑŸëò·Ä궉þr2Û]
+endstream
+endobj
+519 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /OIUXCD+esint10
+/FontDescriptor 641 0 R
+/FirstChar 1
+/LastChar 6
+/Widths 601 0 R
+/ToUnicode 714 0 R
+>>
+endobj
+715 0 obj
+<<
+/Length 430
+/Filter /FlateDecode
+>>
+stream
+xÚu’Ín«0…÷~Š¹‹Hé‚b·M+„” eÑ5QÕ-±')R°‘©yûzlH¥¨]
+°a¸ƒ+|GÓVZ=BtË9·µ’¹®é0- CŽ•’fp{òÈ¢d%ºaåÞ¢¶]¡âí¹í°Þ¨ƒfi
+á›M¶9;Ÿ7,|1M¥Ž0½6g“Û¾iNHF€³,‰ûOÛ‡ç²Fÿ8éEµ;7±[GÞ›ÐÛ¦hJuD–ržAZC%¯rÜWì~i#Æ—”ø, Kgî'óõ2³9.îˆc_Ï|ü8ñ̉ÿ{vµw^_ßûø‚xî9"~ðœ/<ψ—žÝ^¹ç˜xåyE¼öœ~/ò™ þI“ þçăÚ+üßg¾îäÔ4ºæˈÞ{YnÜ Pï+…—qitCUîqs6Ž7­^
+ö œ^„
+endstream
+endobj
+316 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /WSBTHB+LMMathExtension10-Regular
+/FontDescriptor 651 0 R
+/FirstChar 0
+/LastChar 112
+/Widths 617 0 R
+/Encoding 616 0 R
+/ToUnicode 715 0 R
+>>
+endobj
+716 0 obj
+<<
+/Length 600
+/Filter /FlateDecode
+>>
+stream
+xÚuTËnâ@¼û+fHä@˜Æ!BHØƇM¢€V{5ö@,á‡lsàïwª m˜ššêîê6Íè×Çn²Î냘g)>mW_ÚÌN¢ßiãFq]J[õoÖæ6n»WñÑÖÙÎöbmãmUôON¼­²ó%·ƒêÿ¢ÐžŠê[‚:b¼·'ç²,”t_“2í¿Š~"!ßýÙÉ~PG‹GZPàÛvE]½
+õ,¥tĦʣºD37½ÓÁⱨòöæJàÑSZäEÖßNôÌJ7ï®]oËmu¬½åRL?Ýe×·WòùäMßÛܶEuãGsîrwiš³…!½ÕJäöèrº9¼¥¥Ó:½«ö×Æ
+MgÅÞ²:·]“f¶M«“õ–R®Ä2IVž­ò‡;e8äp´ÓÊ<ÌÚ_9"Þ*G(dS>sQÆ  ÖDDr¨˜ "qX+&Gh„ë±aá:$‚r”5PHi@ÌîS9ƒ1jUô|s(V8Œö‡>Ílè;ûJÛÛˆ¤YÀœD˜Ö½IÍü °aÏo€yk˜rA„)Ï‚1ÅR;JS΄øÓU¤—!ar ¬¹.ñšëÆèQsÝy4×Mˆçº‘“9µÒŒiè~½á©hø7!cŒÝD<`Â1ó ð†yÒSMùg’g…º>Õ2½û cðsÒ(> ZÊÀC@µ´· f fP·7Fo?],Û}/²KÛº•¡¤=À•½/mS7ˆ¢mûð'ƒÓ{âý¨ØL:
+endstream
+endobj
+286 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /EDLUSI+LMMathItalic10-Regular
+/FontDescriptor 653 0 R
+/FirstChar 14
+/LastChar 126
+/Widths 625 0 R
+/Encoding 604 0 R
+/ToUnicode 716 0 R
+>>
+endobj
+717 0 obj
+<<
+/Length 598
+/Filter /FlateDecode
+>>
+stream
+xÚmTM¢@½ó+z&ÎÁ±?DƉ1ÄÃÎLF³Ù+BëÈG
+) ˆÂ}ª"g0æCí£ŠžÏácEÀ
+‡ÑþЧ™ }g?i{‘4 ˜“ÓZ¢7©™6ŒCàã 0Ïb S.ˆ0åY0¦XjGiÊ™Ÿ`ºŠô2$ÌCŽ5×%^sÝ=j®#æº ñ\7ÒÀcÒ §öCš1 Ý 7< ÿ&dŒ±›ˆL8f>Þ0OzÊ£)ÿLò¬PקZF£w?a ~N¥ÀTKx¨–6ðĬÁ¬Ê#ãàöÆè ᯋU»¯Evi[·1´´Ø€¢²÷•mêQô£]¾/8}&Þ?«úK^
+endstream
+endobj
+440 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /UUTYVR+LMMathItalic5-Regular
+/FontDescriptor 655 0 R
+/FirstChar 105
+/LastChar 105
+/Widths 605 0 R
+/Encoding 604 0 R
+/ToUnicode 717 0 R
+>>
+endobj
+718 0 obj
+<<
+/Length 598
+/Filter /FlateDecode
+>>
+stream
+xÚmTM¢@½ó+z&ÎÁ±?DƉ1ÄÃÎLF³Ù+BëÈG
+) ˆÂ}ª"g0æCí£ŠžÏácEÀ
+‡ÑþЧ™ }g?i{‘4 ˜“ÓZ¢7©™6ŒCàã 0Ïb S.ˆ0åY0¦XjGiÊ™Ÿ`ºŠô2$ÌCŽ5×%^sÝ=j®#æº ñ\7ÒÀcÒ §öCš1 Ý 7< ÿ&dŒ±›ˆL8f>Þ0OzÊ£)ÿLò¬PקZF£w?a ~N¥ÀTKx¨–6ðĬÁ¬Ê#ãàöÆè ᯋU»¯Evi[·1´´Ø€¢²÷•mêQô£]¾/8}&Þ?ÒúKh
+endstream
+endobj
+311 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /HIFJJL+LMMathItalic7-Regular
+/FontDescriptor 657 0 R
+/FirstChar 11
+/LastChar 121
+/Widths 621 0 R
+/Encoding 604 0 R
+/ToUnicode 718 0 R
+>>
+endobj
+719 0 obj
+<<
+/Length 598
+/Filter /FlateDecode
+>>
+stream
+xÚmTM¢@½ó+z&ÎÁ±?DƉ1ÄÃÎLF³Ù+BëÈG
+Ù”ÏÄB‡„1ˆˆ5‘*f€HÖŠ‰ÀázAl@¸‰ e R3„ûTEÎ`̇ÚG=ŸÃÇŠ€£ý¡O3úÎ~Òö6"i0'¦µDoR3ÿl‡À3Æ`žÅ¦\aʳ`L±ÔŽÒ”3!>ÁtéeH˜‡k®K¼æº1zÔ\7FÍuâ¹n¤ƤANí‡4cºAox*þMÈc7˜pÌ|¼ažô”GSþ™äY¡®OµŒFï~Âüœ4J¨–2ðP-mà-ˆYƒY”GÆÁíÑÂ_«v_‹ìÒ¶nchi°Eeï+ÛÔ ¢èG»>|_púL¼ùúKr
+endstream
+endobj
+205 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /DWKZXN+LMMathItalic9-Regular
+/FontDescriptor 659 0 R
+/FirstChar 14
+/LastChar 120
+/Widths 633 0 R
+/Encoding 604 0 R
+/ToUnicode 719 0 R
+>>
+endobj
+720 0 obj
+<<
+/Length 790
+/Filter /FlateDecode
+>>
+stream
+xÚuUMoâ0½çWx•Úʼn B
+„H¶­JµÚ+ML ”„ÿ~ýf’Vª¶àååyæyfln~=ï&iÙ¼ù‰¹—âÅwÍ¥-üdý{Žnn²¦¸œ|Ý?z_úr|Û=ˆç¶)v¾·ëm¶­«þ.ˆ·uq¼”~Tý_´òïUý%AqûêÿNŽ§îªdø™œöýGwHÈ_«þd?(D ÅwZÐÂ?¾íª¦~ê^JˆM]®›6ÓEÓÁ˜ŽU]¶ƒ+ñ‘Ò¢¬Š~x¢ï⪂Żk×ûÓ¶>4Ñb!¦/áe×·WòyMŸÚÒ·Uý.n¿› /w—óùèaDÈh¹¥?„˜¡û“Óvú©z½ž½Ðô¬Ø[Ñ”¾;ï ßîëw-¤\ŠEž/#_—ßÞiÉKÞ£v´r¾´ž'Ëh¡tÀÊ1³ b 6aA8išƒHA¬x‰x*ã%)ˆ ˆœBSDÖjn@PË„AñȘʠ0ˆa8F
+±
+8An)Ž  +4bXÂ*^c›³”ÛHø°°`&f P;á6 <9ÇB‡—iµÔ2)L¦´ÛÔeTõ±¼Vå.>öíЭ¼HEÎW0*5áŒ0×^Ž‰Ï s Öغ´¼~${S¨‘$2Ë€Q lÐC™³]j{ˆ¡Q\‹8jFجç¬A´ä¦`«Z1F­c­f1urÆ=#ýœ1éSƤÏx-¼é ã907OÁ›¡¼Ò`­aŸaŒ¦¼šºe¸VrLÓ”¬hVƇje éyÞ ïQ’ž§(ÅÞ ²Äa0<Šxö¬à?æšhÖkŒSÂIc/ Ïÿ ž-÷ËÁ§uŒáÍr^‡øvˆƒ˜–óÒ´œ7#¼!}Bz®UŒ½¸a®àÁQ­Rƒ“é†Za~×JËyž1KŽçŠN¡›qH¿âCù±–4côÅmÓ¹ÈËáÐÄãÂùy½—¶ 7]¬tá"«jÿy÷ž›3Vч.íñ¿OOyôâ§/
+endstream
+endobj
+314 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /CCXVUN+LMMathSymbols10-Regular
+/FontDescriptor 681 0 R
+/FirstChar 0
+/LastChar 114
+/Widths 618 0 R
+/Encoding 610 0 R
+/ToUnicode 720 0 R
+>>
+endobj
+721 0 obj
+<<
+/Length 789
+/Filter /FlateDecode
+>>
+stream
+xÚmUMoâ0½çWx•Úʼn B
+„H¶­JµÚ+ML ”„ÿ~ýf’®Tq zyyžyž›»_¯»IZ6~b¥xó]si ?YÿÞŸ£»»¬).'_÷ÏÞ—¾¿vOâµmŠïÅýz›mëªâm]/¥U·E+ÿYÕÿ%È#îßýßÉñÔ]“ðœœöýWwH¨ß«þT·"°â+hÙßvUS? õ(¥ Ħ.×Í ;é¢éàFLG‡ª.ÛÁ’ø€ÁHiQVE?¼Ñ³8…’`ñîÚõþ´­M´Xˆé[øØõí•\>DÓ—¶ômUŠûÞ·Ýå|>zø2Z.Eé!d¨ÁóþäÅôö6¿Eï׳šÞ;+šÒwç}áÛ}ý飅”K±ÈóeäëòÇ7-yÉÇaÔ΂V®ÃCëy²ŒJ¬ 3 "‘ac„‘¦9ˆÄŠ—hˆ§2^’‚؀ȉp 4%@d­æ%°L8Œ©
+ƒ†c¤ð«€ä–2àh‘@‘°B#†E!¬â%0f±9K¹„ 6abõ°snÂÁ“s\ dqøèVK-‘ÂdJ»M]FUËkõXîâkßÑZÁ‹Tä|£RÎsíá˜øœ0·`­KËkáG²7…Ir!³ ÕÐÉ=”9ۥ氇ŵ±ˆ£f„ÍxÎ@Kn
+¶ªcÄÑš1ÖjöS'gÜ3ÒÏ“>eLúŒ×›Þ0žsó¼Ê+ ÖöÆ(`Ê«©[†k%WÀ4MÉŠf%aLq¨VÆž÷(áÍð%éyŠRìÝð KÃó§ˆgÏ
+þc®‰&a½Æ8%|4ö’ðüÏàÙr¿|ZÇÞ,çuˆo‡8ˆi9/HËy3ÂÒ'¤çZÅØ‹æ
+Õ*58™n¨æÇq­4<¸˜ç³äx®èº×ô+ž1ôÈ‘kI“1F_܆1‹œ±N
+endstream
+endobj
+330 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /VCFYYS+LMMathSymbols5-Regular
+/FontDescriptor 683 0 R
+/FirstChar 3
+/LastChar 3
+/Widths 614 0 R
+/Encoding 610 0 R
+/ToUnicode 721 0 R
+>>
+endobj
+722 0 obj
+<<
+/Length 788
+/Filter /FlateDecode
+>>
+stream
+xÚmUMoâ0½çWx•Úʼn B
+„H¶­JµÚ+ML ”„ÿ~ýf’®Tq zyyžyž›»_¯»IZ6~b¥xó]si ?YÿÞŸ£»»¬).'_÷ÏÞ—¾¿vOâµmŠïÅýz›mëªâm]/¥U·E+ÿYÕÿ%È#îßýßÉñÔ]]xNNûþ«»N$ÔïU ªÛXñƒ´ìo»ª©Ÿ„z”RbS—ëæ„tÑtp#¦£¿CU—í`I|À`¤´(«¢ÞèYœBI°xwízÚÖ‡&Z,Äô-|ìúöJ.¢éK[ú¶ª?ÅýoáÛîr>=|-—¢ô‡2Ôàyòbz{›ß¢÷ëÙ MïŠMé»ó¾ðí¾þôÑBÊ¥Xäù2òuùã›–¼äã0jgA+×á¡õ<YF ¥V†ˆ™ƒHˆ°1 ÂHÓD
+bÅK4ÄS/IAl@äD8š ²Vs‚X&ŠGÆT…A Ã1RøˆUÀ rKp´H HX¡âVñ³Øœ¥ÜF‡…›01zØ9·áàÉ9.²8|tH«¥–Ha2¥Ý¦.£ªåµz,wñµo‡Îh­àE*r¾‚Q© g„¹öŠpL|N˜[°ÆÖ¥åµð#Ù›B$¹YŒjèdƒÊœíRsØC âÚXÄQ3Âf <g
+ %7[ÕŠ1âhÍk5{ˆ©“3îéçŒIŸ2&}ÆkáMoϹy
+Þ å•k û c0åÕÔ-õ’+`š¦dE³’0¦8T+cHÏ{”ðfx’ô<E)önx%ƒáùSijgÿ1×Ä@“°^cœ>H{Ixþgðl¹_>­c o–ó:Ä·CÄ´œ—¤å¼á éÒs­bìÅ sŽj•œL7Ô
+óã¸V\ÌóŒYr<Wt
+ÝŒë@úÏzäȵ¤É£/nØÎEÎX'€&7nÌïÛ­¸´m¸øèZ¥ë YUûï›÷Üœ±Š~tex{É£•¦]
+endstream
+endobj
+332 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /PVOJED+LMMathSymbols7-Regular
+/FontDescriptor 685 0 R
+/FirstChar 0
+/LastChar 114
+/Widths 611 0 R
+/Encoding 610 0 R
+/ToUnicode 722 0 R
+>>
+endobj
+723 0 obj
+<<
+/Length 963
+/Filter /FlateDecode
+>>
+stream
+xÚmVËnÛ0¼ë+ØC€ôàš¤,‰*Ô È¡4AÑ«#1©X6dhþ¾œÝuÒ9ÈR³Ë™¡$æêÃ÷Û…÷÷a‘~ÒêG8îÏóÍ—Í!¹ºj÷Ãy¦Ó×Æ0^î?«ïó~¸ 'uÝÜ´7Óöô1’o¦áé<† ë}R·Ó+ë¨ë»ðk1ïO»û?FÇ?h°ï¶§§ÈzŸ â¬z3«¨ìg˜ÛýôY™OZë8ÑMc³ßÁÉ1YŠµ¼è{ØNã,’Ô=&ƪq;œdD¿Ã.F‚âÛçã)ìn¦‡}RUjù#Þ<žægRù1Y~›Ç0o§GuýF[¼w{>žt(¬×j ±eÌàëfÔò}›/¤»çCP–Ɔ• û1›!Ì›é1$•ÖkUõý: ÓøæžI¹äþáÂ-"W;ü¤>['•M#¶9&tÄq7Óš'\œHûˆ3žˆ8©rqái"â¤*p³hÐHô(Ñ£,Á0z4ØdTqœ€Ž–—8©Z°ÛŽ&"Nª%—t(éPÒsI‡’%=—D ûŸFë‹ñá÷f–ŒtZB†~kuly"uʸ^1î€3Ž "tΘú”Œ©qXc©'g•ç¸0n^Çp¦Û×qƒq÷ÿÂéÿŸÏ“"rqñ̅>Ct½&–â5äÁ¶Ðj8C½4Ï{`ǵÄ)y'ˆÃ[ÝÁ‹!o&ƒþz⳧†8s,0û u­á‡
+ú­å§¥.ÃwÊ==8)÷LÁI9£z2yÒIÆœ œ¬c¿Ðõì =sÍ|h(Zž¿`~‹>뤽tœ³†~g#Og£¿K£Ö­ãYq”³1ÈÓ匩gÁ˜8Ž÷Ú¿$äÑQÎfïŽs^!g×0Æ>º–1õ—œ±ï®g %ëÏ°nÉú3ðKÖOÏIÉú3è)YNµ¬?‡÷’õÄgý9ñYgÍ%ë,ðΔ¬3¥ZÖ™R-ë4ðUJÎðâ%gxô’3>I^r&ŽäŒµ¼äŒgÀKÎX×KÎÈÓKÎÄ‘œáÝKÎÐï%gèô’3¼{ɹyÉ™úKÎÐï%gè¬%g¬[KÎà×’3øµä =µäLµ’3¼×’3ñ%gâóûØ–©—Ï}ÕâyõßG®–ÉZ6h-C‹ñ S#Üš_*‹ jÙpù@ÀL[0Ÿ°£‰6µe~–âÂ×™kÈhßó ×ý+‡Ó—ƒo8Ïs<éÄ¥“gÜv
+/‡òa@]tš_þƒÀè[ŸüA"B
+endstream
+endobj
+331 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /BRJOQA+LMRoman10-Bold
+/FontDescriptor 643 0 R
+/FirstChar 113
+/LastChar 120
+/Widths 613 0 R
+/Encoding 612 0 R
+/ToUnicode 723 0 R
+>>
+endobj
+724 0 obj
+<<
+/Length 962
+/Filter /FlateDecode
+>>
+stream
+xÚmVËnã8¼ë+¸‡
+Ìh ±É¨%âX€Ž–—8©Z°ÛŽ
+'U‡–Ž[:´thé¹¥CK–ž["†ý«O£õÕøðßn‘ŒtZB†~kul¹‘:e\owÀÇ:gLsJÆÔ‹8¬±4“³Êsüáºy¿†3ݾ_7¸î~ã_9ýÇx†<˜‘xˆ†Œe.ôò ë 0y°¯!¶…VÃzì¥)¸î÷§ä ou/†¼™ þ ûê‰ÏžâṯÀìƒÖµ†*è·–Ÿ–¸` ß)Ïôà¤<3'åŒjèÉäIC&s2p²ŽýBCÖ³/ÌÌ5ó¡¡h¹~Áüs
+ÖI{é8g ýÎ0FžÎ2Æ|—2F¯Û0Ƴâ(gc§ËÓÌ‚1qï#´9~IÈ££œÍÞç¼AήaŒ}t-cš/9cß]Ï:KÖŸaÝ’õgà—¬Ÿž“’õgÐS²þœzYï%ë/ˆÏúsâ³ÎšKÖYà)YgJ½¬3¥^Öià«”œáÅKÎðè%g|’¼äLÉkyÉÏ€—œ±®—œ‘§—œ‰#9û—œ¡ßKÎÐé%gx÷’3ró’3Í—œ¡ßKÎÐYKÎX·–œÁ¯%gðkÉzjÉ™z%gx¯%gâKÎÄç÷±',S/Ÿ9úªÅÓêÃG®–ÉZ6h-C‹ñ S#Üš_*‹ jÙpù@ÀL[0Ÿ°£‰6µe~–â_gî!£}Ï/\÷»XN8Jßνá²,ñH¤ó–N:œqû)¼ÉÇùˆ.ú£³üúÏ®~ôÉÿÚ~:
+endstream
+endobj
+313 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /ZDORWX+LMRoman10-Regular
+/FontDescriptor 661 0 R
+/FirstChar 0
+/LastChar 115
+/Widths 619 0 R
+/Encoding 612 0 R
+/ToUnicode 724 0 R
+>>
+endobj
+725 0 obj
+<<
+/Length 962
+/Filter /FlateDecode
+>>
+stream
+xÚmVËnã8¼ë+¸‡
+endstream
+endobj
+319 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /PSSDWM+LMRoman5-Regular
+/FontDescriptor 667 0 R
+/FirstChar 48
+/LastChar 50
+/Widths 615 0 R
+/Encoding 612 0 R
+/ToUnicode 725 0 R
+>>
+endobj
+726 0 obj
+<<
+/Length 962
+/Filter /FlateDecode
+>>
+stream
+xÚmVËnã8¼ë+¸‡
+endstream
+endobj
+312 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /OGJSOL+LMRoman7-Regular
+/FontDescriptor 671 0 R
+/FirstChar 2
+/LastChar 61
+/Widths 620 0 R
+/Encoding 612 0 R
+/ToUnicode 726 0 R
+>>
+endobj
+727 0 obj
+<<
+/Length 962
+/Filter /FlateDecode
+>>
+stream
+xÚmVËnã8¼ë+¸‡
+endstream
+endobj
+206 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /ICLJJO+LMRoman9-Regular
+/FontDescriptor 675 0 R
+/FirstChar 1
+/LastChar 100
+/Widths 632 0 R
+/Encoding 612 0 R
+/ToUnicode 727 0 R
+>>
+endobj
+728 0 obj
+<<
+/Length 700
+/Filter /FlateDecode
+>>
+stream
+xÚuTMo£0½ó+¼‡Jí!m0U ó!å°mÕT«½¦àt‘ˆ€úï×o†4«j{ÀzÞÌ<?ÜüxÞÎÒº{s³ð^Š7tç¾r³ìçîÜÜä]u>ºv|t®võåïð žû®ÚºQÜf›|Ó6ã'oÚêp®Ý…õ’uïM{¥ ¸}u¿gã f‡c¯¤i"Amƃ§}Ã>,¾†%þrýÐtíƒP÷RJ(Ú:ëŽXÌÌ'Ab~‘¸oÚºŸT‰7h ”uSÓŒÆêè]AòöcÝqÓî»`µóÿsûÒyÌŸúÚõMû.n¿Šó?·çÓéà DÈ`½µÛûšÞ‡ÇÝщù7+ýd½~œœÐ4W¬­êj7œv•ëwí» VR®Åª,×kë/ÿbÎxÛOÔÔ0ñƒ”+³ðØ,ý ¥F Õ§)1<öÂc«8Pø€Æ\ ‹6¦€Ç>!Pp #]QxQTýÙõ“v)#´–êZB¢‰ÔYL½tž/Xˆ^r<Ž§À1çÆÀ†ãÄçu§%pÊñØr_âd·À9Ù¢PSiÆ0@¡Wå„Q_«úUžhÖ©±ÍÖhèÑ諵"œqëÒì–FM]R¯rCpt¨¡3Ì9õÂãж„~ðj™3FýeÁzpÉ8ô8úÇóˆ8Q„:1ù¬bøcäÕ7£®~}õÜðHq”('b ÃÄ„ùŒ>^ÐmØ# &½zdìõÄò…}4¼)Ö`
+Æð"áýH‘›,¸4%¬!Åþ%¤AQß„÷ÞB[B~)Ò™äÌï Õ_’)ïMŠ½±¬?DM;Ý豬ßÂ;kyoóþQnNçRæð®d\ÆÓ €;‹WæóA¨Î}ïß
+zŠèÀÕoZ÷ùZº²è£gîòºböT$Z|U
+endstream
+endobj
+339 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /ZDORWX+LMRoman10-Regular
+/FontDescriptor 661 0 R
+/FirstChar 136
+/LastChar 136
+/Widths 609 0 R
+/Encoding 608 0 R
+/ToUnicode 728 0 R
+>>
+endobj
+208 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 729 0 R
+/Kids [194 0 R 232 0 R 267 0 R 278 0 R 305 0 R 323 0 R]
+>>
+endobj
+341 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 729 0 R
+/Kids [336 0 R 347 0 R 353 0 R 361 0 R 366 0 R 372 0 R]
+>>
+endobj
+380 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 729 0 R
+/Kids [377 0 R 384 0 R 389 0 R 393 0 R 399 0 R 403 0 R]
+>>
+endobj
+411 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 729 0 R
+/Kids [408 0 R 415 0 R 421 0 R 430 0 R 437 0 R 444 0 R]
+>>
+endobj
+451 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 729 0 R
+/Kids [448 0 R 458 0 R 468 0 R 474 0 R 480 0 R 486 0 R]
+>>
+endobj
+494 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 729 0 R
+/Kids [491 0 R 498 0 R 503 0 R 509 0 R 516 0 R 522 0 R]
+>>
+endobj
+529 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 730 0 R
+/Kids [526 0 R 532 0 R 536 0 R 546 0 R 558 0 R 562 0 R]
+>>
+endobj
+575 0 obj
+<<
+/Type /Pages
+/Count 2
+/Parent 730 0 R
+/Kids [568 0 R 580 0 R]
+>>
+endobj
+729 0 obj
+<<
+/Type /Pages
+/Count 36
+/Parent 731 0 R
+/Kids [208 0 R 341 0 R 380 0 R 411 0 R 451 0 R 494 0 R]
+>>
+endobj
+730 0 obj
+<<
+/Type /Pages
+/Count 8
+/Parent 731 0 R
+/Kids [529 0 R 575 0 R]
+>>
+endobj
+731 0 obj
+<<
+/Type /Pages
+/Count 44
+/Kids [729 0 R 730 0 R]
+>>
+endobj
+732 0 obj
+<<
+/Type /Outlines
+/First 3 0 R
+/Last 179 0 R
+/Count 30
+>>
+endobj
+191 0 obj
+<<
+/Title 192 0 R
+/A 189 0 R
+/Parent 179 0 R
+/Prev 187 0 R
+>>
+endobj
+187 0 obj
+<<
+/Title 188 0 R
+/A 185 0 R
+/Parent 179 0 R
+/Prev 183 0 R
+/Next 191 0 R
+>>
+endobj
+183 0 obj
+<<
+/Title 184 0 R
+/A 181 0 R
+/Parent 179 0 R
+/Next 187 0 R
+>>
+endobj
+179 0 obj
+<<
+/Title 180 0 R
+/A 177 0 R
+/Parent 732 0 R
+/Prev 155 0 R
+/First 183 0 R
+/Last 191 0 R
+/Count 3
+>>
+endobj
+175 0 obj
+<<
+/Title 176 0 R
+/A 173 0 R
+/Parent 171 0 R
+>>
+endobj
+171 0 obj
+<<
+/Title 172 0 R
+/A 169 0 R
+/Parent 155 0 R
+/Prev 159 0 R
+/First 175 0 R
+/Last 175 0 R
+/Count -1
+>>
+endobj
+167 0 obj
+<<
+/Title 168 0 R
+/A 165 0 R
+/Parent 159 0 R
+/Prev 163 0 R
+>>
+endobj
+163 0 obj
+<<
+/Title 164 0 R
+/A 161 0 R
+/Parent 159 0 R
+/Next 167 0 R
+>>
+endobj
+159 0 obj
+<<
+/Title 160 0 R
+/A 157 0 R
+/Parent 155 0 R
+/Next 171 0 R
+/First 163 0 R
+/Last 167 0 R
+/Count -2
+>>
+endobj
+155 0 obj
+<<
+/Title 156 0 R
+/A 153 0 R
+/Parent 732 0 R
+/Prev 107 0 R
+/Next 179 0 R
+/First 159 0 R
+/Last 171 0 R
+/Count 2
+>>
+endobj
+151 0 obj
+<<
+/Title 152 0 R
+/A 149 0 R
+/Parent 143 0 R
+/Prev 147 0 R
+>>
+endobj
+147 0 obj
+<<
+/Title 148 0 R
+/A 145 0 R
+/Parent 143 0 R
+/Next 151 0 R
+>>
+endobj
+143 0 obj
+<<
+/Title 144 0 R
+/A 141 0 R
+/Parent 107 0 R
+/Prev 131 0 R
+/First 147 0 R
+/Last 151 0 R
+/Count -2
+>>
+endobj
+139 0 obj
+<<
+/Title 140 0 R
+/A 137 0 R
+/Parent 131 0 R
+/Prev 135 0 R
+>>
+endobj
+135 0 obj
+<<
+/Title 136 0 R
+/A 133 0 R
+/Parent 131 0 R
+/Next 139 0 R
+>>
+endobj
+131 0 obj
+<<
+/Title 132 0 R
+/A 129 0 R
+/Parent 107 0 R
+/Prev 123 0 R
+/Next 143 0 R
+/First 135 0 R
+/Last 139 0 R
+/Count -2
+>>
+endobj
+127 0 obj
+<<
+/Title 128 0 R
+/A 125 0 R
+/Parent 123 0 R
+>>
+endobj
+123 0 obj
+<<
+/Title 124 0 R
+/A 121 0 R
+/Parent 107 0 R
+/Prev 119 0 R
+/Next 131 0 R
+/First 127 0 R
+/Last 127 0 R
+/Count -1
+>>
+endobj
+119 0 obj
+<<
+/Title 120 0 R
+/A 117 0 R
+/Parent 107 0 R
+/Prev 115 0 R
+/Next 123 0 R
+>>
+endobj
+115 0 obj
+<<
+/Title 116 0 R
+/A 113 0 R
+/Parent 107 0 R
+/Prev 111 0 R
+/Next 119 0 R
+>>
+endobj
+111 0 obj
+<<
+/Title 112 0 R
+/A 109 0 R
+/Parent 107 0 R
+/Next 115 0 R
+>>
+endobj
+107 0 obj
+<<
+/Title 108 0 R
+/A 105 0 R
+/Parent 732 0 R
+/Prev 51 0 R
+/Next 155 0 R
+/First 111 0 R
+/Last 143 0 R
+/Count 6
+>>
+endobj
+103 0 obj
+<<
+/Title 104 0 R
+/A 101 0 R
+/Parent 51 0 R
+/Prev 99 0 R
+>>
+endobj
+99 0 obj
+<<
+/Title 100 0 R
+/A 97 0 R
+/Parent 51 0 R
+/Prev 71 0 R
+/Next 103 0 R
+>>
+endobj
+95 0 obj
+<<
+/Title 96 0 R
+/A 93 0 R
+/Parent 71 0 R
+/Prev 91 0 R
+>>
+endobj
+91 0 obj
+<<
+/Title 92 0 R
+/A 89 0 R
+/Parent 71 0 R
+/Prev 87 0 R
+/Next 95 0 R
+>>
+endobj
+87 0 obj
+<<
+/Title 88 0 R
+/A 85 0 R
+/Parent 71 0 R
+/Prev 83 0 R
+/Next 91 0 R
+>>
+endobj
+83 0 obj
+<<
+/Title 84 0 R
+/A 81 0 R
+/Parent 71 0 R
+/Prev 79 0 R
+/Next 87 0 R
+>>
+endobj
+79 0 obj
+<<
+/Title 80 0 R
+/A 77 0 R
+/Parent 71 0 R
+/Prev 75 0 R
+/Next 83 0 R
+>>
+endobj
+75 0 obj
+<<
+/Title 76 0 R
+/A 73 0 R
+/Parent 71 0 R
+/Next 79 0 R
+>>
+endobj
+71 0 obj
+<<
+/Title 72 0 R
+/A 69 0 R
+/Parent 51 0 R
+/Prev 67 0 R
+/Next 99 0 R
+/First 75 0 R
+/Last 95 0 R
+/Count -6
+>>
+endobj
+67 0 obj
+<<
+/Title 68 0 R
+/A 65 0 R
+/Parent 51 0 R
+/Prev 63 0 R
+/Next 71 0 R
+>>
+endobj
+63 0 obj
+<<
+/Title 64 0 R
+/A 61 0 R
+/Parent 51 0 R
+/Prev 55 0 R
+/Next 67 0 R
+>>
+endobj
+59 0 obj
+<<
+/Title 60 0 R
+/A 57 0 R
+/Parent 55 0 R
+>>
+endobj
+55 0 obj
+<<
+/Title 56 0 R
+/A 53 0 R
+/Parent 51 0 R
+/Next 63 0 R
+/First 59 0 R
+/Last 59 0 R
+/Count -1
+>>
+endobj
+51 0 obj
+<<
+/Title 52 0 R
+/A 49 0 R
+/Parent 732 0 R
+/Prev 15 0 R
+/Next 107 0 R
+/First 55 0 R
+/Last 103 0 R
+/Count 6
+>>
+endobj
+47 0 obj
+<<
+/Title 48 0 R
+/A 45 0 R
+/Parent 15 0 R
+/Prev 43 0 R
+>>
+endobj
+43 0 obj
+<<
+/Title 44 0 R
+/A 41 0 R
+/Parent 15 0 R
+/Prev 35 0 R
+/Next 47 0 R
+>>
+endobj
+39 0 obj
+<<
+/Title 40 0 R
+/A 37 0 R
+/Parent 35 0 R
+>>
+endobj
+35 0 obj
+<<
+/Title 36 0 R
+/A 33 0 R
+/Parent 15 0 R
+/Prev 31 0 R
+/Next 43 0 R
+/First 39 0 R
+/Last 39 0 R
+/Count -1
+>>
+endobj
+31 0 obj
+<<
+/Title 32 0 R
+/A 29 0 R
+/Parent 15 0 R
+/Prev 19 0 R
+/Next 35 0 R
+>>
+endobj
+27 0 obj
+<<
+/Title 28 0 R
+/A 25 0 R
+/Parent 19 0 R
+/Prev 23 0 R
+>>
+endobj
+23 0 obj
+<<
+/Title 24 0 R
+/A 21 0 R
+/Parent 19 0 R
+/Next 27 0 R
+>>
+endobj
+19 0 obj
+<<
+/Title 20 0 R
+/A 17 0 R
+/Parent 15 0 R
+/Next 31 0 R
+/First 23 0 R
+/Last 27 0 R
+/Count -2
+>>
+endobj
+15 0 obj
+<<
+/Title 16 0 R
+/A 13 0 R
+/Parent 732 0 R
+/Prev 11 0 R
+/Next 51 0 R
+/First 19 0 R
+/Last 47 0 R
+/Count 5
+>>
+endobj
+11 0 obj
+<<
+/Title 12 0 R
+/A 9 0 R
+/Parent 732 0 R
+/Prev 3 0 R
+/Next 15 0 R
+>>
+endobj
+7 0 obj
+<<
+/Title 8 0 R
+/A 5 0 R
+/Parent 3 0 R
+>>
+endobj
+3 0 obj
+<<
+/Title 4 0 R
+/A 1 0 R
+/Parent 732 0 R
+/Next 11 0 R
+/First 7 0 R
+/Last 7 0 R
+/Count 1
+>>
+endobj
+733 0 obj
+<<
+/Names [(Doc-Start) 198 0 R (Hfootnote.1) 298 0 R (Hfootnote.10) 600 0 R (Hfootnote.2) 340 0 R (Hfootnote.3) 350 0 R (Hfootnote.4) 364 0 R]
+/Limits [(Doc-Start) (Hfootnote.4)]
+>>
+endobj
+734 0 obj
+<<
+/Names [(Hfootnote.5) 441 0 R (Hfootnote.6) 462 0 R (Hfootnote.7) 489 0 R (Hfootnote.8) 512 0 R (Hfootnote.9) 520 0 R (Item.1) 284 0 R]
+/Limits [(Hfootnote.5) (Item.1)]
+>>
+endobj
+735 0 obj
+<<
+/Names [(Item.10) 308 0 R (Item.11) 309 0 R (Item.12) 539 0 R (Item.13) 540 0 R (Item.14) 541 0 R (Item.15) 542 0 R]
+/Limits [(Item.10) (Item.15)]
+>>
+endobj
+736 0 obj
+<<
+/Names [(Item.16) 543 0 R (Item.17) 544 0 R (Item.18) 549 0 R (Item.19) 550 0 R (Item.2) 285 0 R (Item.20) 551 0 R]
+/Limits [(Item.16) (Item.20)]
+>>
+endobj
+737 0 obj
+<<
+/Names [(Item.21) 552 0 R (Item.22) 553 0 R (Item.23) 554 0 R (Item.24) 555 0 R (Item.25) 556 0 R (Item.26) 571 0 R]
+/Limits [(Item.21) (Item.26)]
+>>
+endobj
+738 0 obj
+<<
+/Names [(Item.27) 572 0 R (Item.28) 573 0 R (Item.29) 574 0 R (Item.3) 287 0 R (Item.30) 583 0 R (Item.31) 584 0 R]
+/Limits [(Item.27) (Item.31)]
+>>
+endobj
+739 0 obj
+<<
+/Names [(Item.32) 585 0 R (Item.33) 586 0 R (Item.34) 587 0 R (Item.35) 588 0 R (Item.36) 589 0 R (Item.37) 590 0 R]
+/Limits [(Item.32) (Item.37)]
+>>
+endobj
+740 0 obj
+<<
+/Names [(Item.38) 591 0 R (Item.39) 592 0 R (Item.4) 288 0 R (Item.40) 593 0 R (Item.41) 594 0 R (Item.42) 595 0 R]
+/Limits [(Item.38) (Item.42)]
+>>
+endobj
+741 0 obj
+<<
+/Names [(Item.43) 596 0 R (Item.44) 597 0 R (Item.45) 598 0 R (Item.46) 599 0 R (Item.5) 290 0 R (Item.6) 292 0 R]
+/Limits [(Item.43) (Item.6)]
+>>
+endobj
+742 0 obj
+<<
+/Names [(Item.7) 294 0 R (Item.8) 295 0 R (Item.9) 296 0 R (equation.2.1) 310 0 R (equation.2.2) 315 0 R (equation.2.3) 317 0 R]
+/Limits [(Item.7) (equation.2.3)]
+>>
+endobj
+743 0 obj
+<<
+/Names [(equation.2.4) 318 0 R (equation.2.5) 326 0 R (equation.2.6) 327 0 R (equation.2.7) 328 0 R (equation.2.8) 329 0 R (page.1) 197 0 R]
+/Limits [(equation.2.4) (page.1)]
+>>
+endobj
+744 0 obj
+<<
+/Names [(page.10) 363 0 R (page.11) 368 0 R (page.12) 374 0 R (page.13) 379 0 R (page.14) 386 0 R (page.15) 391 0 R]
+/Limits [(page.10) (page.15)]
+>>
+endobj
+745 0 obj
+<<
+/Names [(page.16) 395 0 R (page.17) 401 0 R (page.18) 405 0 R (page.19) 410 0 R (page.2) 234 0 R (page.20) 417 0 R]
+/Limits [(page.16) (page.20)]
+>>
+endobj
+746 0 obj
+<<
+/Names [(page.21) 423 0 R (page.22) 432 0 R (page.23) 439 0 R (page.24) 446 0 R (page.25) 450 0 R (page.26) 460 0 R]
+/Limits [(page.21) (page.26)]
+>>
+endobj
+747 0 obj
+<<
+/Names [(page.27) 470 0 R (page.28) 476 0 R (page.29) 482 0 R (page.3) 269 0 R (page.30) 488 0 R (page.31) 493 0 R]
+/Limits [(page.27) (page.31)]
+>>
+endobj
+748 0 obj
+<<
+/Names [(page.32) 500 0 R (page.33) 505 0 R (page.34) 511 0 R (page.35) 518 0 R (page.36) 524 0 R (page.37) 528 0 R]
+/Limits [(page.32) (page.37)]
+>>
+endobj
+749 0 obj
+<<
+/Names [(page.38) 534 0 R (page.39) 538 0 R (page.4) 280 0 R (page.40) 548 0 R (page.41) 560 0 R (page.42) 564 0 R]
+/Limits [(page.38) (page.42)]
+>>
+endobj
+750 0 obj
+<<
+/Names [(page.43) 570 0 R (page.44) 582 0 R (page.5) 307 0 R (page.6) 325 0 R (page.7) 338 0 R (page.8) 349 0 R]
+/Limits [(page.43) (page.8)]
+>>
+endobj
+751 0 obj
+<<
+/Names [(page.9) 355 0 R (section*.1) 235 0 R (section*.10) 425 0 R (section*.11) 426 0 R (section*.12) 483 0 R (section*.13) 501 0 R]
+/Limits [(page.9) (section*.13)]
+>>
+endobj
+752 0 obj
+<<
+/Names [(section*.2) 238 0 R (section*.3) 281 0 R (section*.4) 283 0 R (section*.5) 289 0 R (section*.6) 293 0 R (section*.7) 418 0 R]
+/Limits [(section*.2) (section*.7)]
+>>
+endobj
+753 0 obj
+<<
+/Names [(section*.8) 419 0 R (section*.9) 424 0 R (section.1) 2 0 R (section.2) 10 0 R (section.3) 14 0 R (section.4) 50 0 R]
+/Limits [(section*.8) (section.4)]
+>>
+endobj
+754 0 obj
+<<
+/Names [(section.5) 106 0 R (section.6) 154 0 R (section.7) 178 0 R (subsection.1.1) 6 0 R (subsection.3.1) 18 0 R (subsection.3.2) 30 0 R]
+/Limits [(section.5) (subsection.3.2)]
+>>
+endobj
+755 0 obj
+<<
+/Names [(subsection.3.3) 34 0 R (subsection.3.4) 42 0 R (subsection.3.5) 46 0 R (subsection.4.1) 54 0 R (subsection.4.2) 62 0 R (subsection.4.3) 66 0 R]
+/Limits [(subsection.3.3) (subsection.4.3)]
+>>
+endobj
+756 0 obj
+<<
+/Names [(subsection.4.4) 70 0 R (subsection.4.5) 98 0 R (subsection.4.6) 102 0 R (subsection.5.1) 110 0 R (subsection.5.2) 114 0 R (subsection.5.3) 118 0 R]
+/Limits [(subsection.4.4) (subsection.5.3)]
+>>
+endobj
+757 0 obj
+<<
+/Names [(subsection.5.4) 122 0 R (subsection.5.5) 130 0 R (subsection.5.6) 142 0 R (subsection.6.1) 158 0 R (subsection.6.2) 170 0 R (subsection.7.1) 182 0 R]
+/Limits [(subsection.5.4) (subsection.7.1)]
+>>
+endobj
+758 0 obj
+<<
+/Names [(subsection.7.2) 186 0 R (subsection.7.3) 190 0 R (subsubsection.3.1.1) 22 0 R (subsubsection.3.1.2) 26 0 R (subsubsection.3.3.1) 38 0 R (subsubsection.4.1.1) 58 0 R]
+/Limits [(subsection.7.2) (subsubsection.4.1.1)]
+>>
+endobj
+759 0 obj
+<<
+/Names [(subsubsection.4.4.1) 74 0 R (subsubsection.4.4.2) 78 0 R (subsubsection.4.4.3) 82 0 R (subsubsection.4.4.4) 86 0 R (subsubsection.4.4.5) 90 0 R (subsubsection.4.4.6) 94 0 R]
+/Limits [(subsubsection.4.4.1) (subsubsection.4.4.6)]
+>>
+endobj
+760 0 obj
+<<
+/Names [(subsubsection.5.4.1) 126 0 R (subsubsection.5.5.1) 134 0 R (subsubsection.5.5.2) 138 0 R (subsubsection.5.6.1) 146 0 R (subsubsection.5.6.2) 150 0 R (subsubsection.6.1.1) 162 0 R]
+/Limits [(subsubsection.5.4.1) (subsubsection.6.1.1)]
+>>
+endobj
+761 0 obj
+<<
+/Names [(subsubsection.6.1.2) 166 0 R (subsubsection.6.2.1) 174 0 R (table.1) 442 0 R (table.2) 461 0 R (table.3) 471 0 R (table.4) 477 0 R]
+/Limits [(subsubsection.6.1.2) (table.4)]
+>>
+endobj
+762 0 obj
+<<
+/Kids [733 0 R 734 0 R 735 0 R 736 0 R 737 0 R 738 0 R]
+/Limits [(Doc-Start) (Item.31)]
+>>
+endobj
+763 0 obj
+<<
+/Kids [739 0 R 740 0 R 741 0 R 742 0 R 743 0 R 744 0 R]
+/Limits [(Item.32) (page.15)]
+>>
+endobj
+764 0 obj
+<<
+/Kids [745 0 R 746 0 R 747 0 R 748 0 R 749 0 R 750 0 R]
+/Limits [(page.16) (page.8)]
+>>
+endobj
+765 0 obj
+<<
+/Kids [751 0 R 752 0 R 753 0 R 754 0 R 755 0 R 756 0 R]
+/Limits [(page.9) (subsection.5.3)]
+>>
+endobj
+766 0 obj
+<<
+/Kids [757 0 R 758 0 R 759 0 R 760 0 R 761 0 R]
+/Limits [(subsection.5.4) (table.4)]
+>>
+endobj
+767 0 obj
+<<
+/Kids [762 0 R 763 0 R 764 0 R 765 0 R 766 0 R]
+/Limits [(Doc-Start) (table.4)]
+>>
+endobj
+768 0 obj
+<<
+/Dests 767 0 R
+>>
+endobj
+769 0 obj
+<<
+/Type /Catalog
+/Pages 731 0 R
+/Outlines 732 0 R
+/Names 768 0 R
+/PageMode/FullScreen
+/OpenAction 193 0 R
+>>
+endobj
+770 0 obj
+<<
+/Producer (MiKTeX pdfTeX-1.40.24)
+/Author(\376\377\000A\000n\000d\000r\000e\000w\000\040\000P\000a\000r\000s\000l\000o\000e\000,\000\040\000\050\000a\000j\000p\000a\000r\000s\000l\000o\000e\000@\000g\000m\000a\000i\000l\000.\000c\000o\000m\000\051)/Title(\376\377\000d\000i\000f\000f\000c\000o\000e\000f\000f\000\040\000\040\000a\000\040\000L\000a\000T\000e\000X\000\040\000p\000a\000c\000k\000a\000g\000e\000\040\000t\000o\000\040\000e\000a\000s\000e\000\040\000t\000h\000e\000\040\000\040\000w\000r\000i\000t\000i\000n\000g\000\040\000o\000f\000\040\000d\000i\000f\000f\000e\000r\000e\000n\000t\000i\000a\000l\000\040\000c\000o\000e\000f\000f\000i\000c\000i\000e\000n\000t\000s\000\040\000\040\000V\000e\000r\000s\000i\000o\000n\000\040\0004\000.\0002)/Subject()/Creator(LaTeX with hyperref)/Keywords()
+/CreationDate (D:20230110113302+13'00')
+/ModDate (D:20230110113302+13'00')
+/Trapped /False
+/PTEX.Fullbanner (This is MiKTeX-pdfTeX 4.13.0 (1.40.24))
+>>
+endobj
+xref
+0 771
+0000000000 65535 f
+0000000015 00000 n
+0000025086 00000 n
+0000742445 00000 n
+0000000060 00000 n
+0000000159 00000 n
+0000029567 00000 n
+0000742388 00000 n
+0000000209 00000 n
+0000000336 00000 n
+0000033641 00000 n
+0000742302 00000 n
+0000000381 00000 n
+0000000593 00000 n
+0000042315 00000 n
+0000742178 00000 n
+0000000639 00000 n
+0000000790 00000 n
+0000042376 00000 n
+0000742067 00000 n
+0000000841 00000 n
+0000001060 00000 n
+0000049362 00000 n
+0000741993 00000 n
+0000001116 00000 n
+0000001234 00000 n
+0000049423 00000 n
+0000741919 00000 n
+0000001290 00000 n
+0000001433 00000 n
+0000049484 00000 n
+0000741832 00000 n
+0000001484 00000 n
+0000001721 00000 n
+0000052879 00000 n
+0000741708 00000 n
+0000001772 00000 n
+0000001923 00000 n
+0000055869 00000 n
+0000741647 00000 n
+0000001979 00000 n
+0000002099 00000 n
+0000055930 00000 n
+0000741560 00000 n
+0000002150 00000 n
+0000002326 00000 n
+0000059319 00000 n
+0000741486 00000 n
+0000002377 00000 n
+0000002656 00000 n
+0000062518 00000 n
+0000741360 00000 n
+0000002702 00000 n
+0000002840 00000 n
+0000062579 00000 n
+0000741249 00000 n
+0000002891 00000 n
+0000003062 00000 n
+0000065874 00000 n
+0000741188 00000 n
+0000003118 00000 n
+0000003291 00000 n
+0000068687 00000 n
+0000741101 00000 n
+0000003342 00000 n
+0000003533 00000 n
+0000068748 00000 n
+0000741014 00000 n
+0000003584 00000 n
+0000003737 00000 n
+0000071442 00000 n
+0000740890 00000 n
+0000003788 00000 n
+0000003969 00000 n
+0000075079 00000 n
+0000740816 00000 n
+0000004025 00000 n
+0000004235 00000 n
+0000077914 00000 n
+0000740729 00000 n
+0000004291 00000 n
+0000004535 00000 n
+0000077975 00000 n
+0000740642 00000 n
+0000004591 00000 n
+0000004724 00000 n
+0000078036 00000 n
+0000740555 00000 n
+0000004780 00000 n
+0000004971 00000 n
+0000081052 00000 n
+0000740468 00000 n
+0000005027 00000 n
+0000005312 00000 n
+0000084975 00000 n
+0000740394 00000 n
+0000005368 00000 n
+0000005521 00000 n
+0000091223 00000 n
+0000740305 00000 n
+0000005572 00000 n
+0000005852 00000 n
+0000091284 00000 n
+0000740228 00000 n
+0000005904 00000 n
+0000006000 00000 n
+0000095457 00000 n
+0000740098 00000 n
+0000006047 00000 n
+0000006257 00000 n
+0000095519 00000 n
+0000740019 00000 n
+0000006309 00000 n
+0000006549 00000 n
+0000103228 00000 n
+0000739926 00000 n
+0000006601 00000 n
+0000006715 00000 n
+0000107825 00000 n
+0000739833 00000 n
+0000006767 00000 n
+0000006916 00000 n
+0000107948 00000 n
+0000739701 00000 n
+0000006968 00000 n
+0000007209 00000 n
+0000111323 00000 n
+0000739636 00000 n
+0000007266 00000 n
+0000007486 00000 n
+0000114857 00000 n
+0000739504 00000 n
+0000007538 00000 n
+0000007657 00000 n
+0000120876 00000 n
+0000739425 00000 n
+0000007714 00000 n
+0000007979 00000 n
+0000120938 00000 n
+0000739346 00000 n
+0000008036 00000 n
+0000008285 00000 n
+0000124124 00000 n
+0000739228 00000 n
+0000008337 00000 n
+0000008459 00000 n
+0000127533 00000 n
+0000739149 00000 n
+0000008516 00000 n
+0000008719 00000 n
+0000130662 00000 n
+0000739070 00000 n
+0000008776 00000 n
+0000008902 00000 n
+0000130724 00000 n
+0000738939 00000 n
+0000008949 00000 n
+0000009159 00000 n
+0000134213 00000 n
+0000738821 00000 n
+0000009211 00000 n
+0000009297 00000 n
+0000134275 00000 n
+0000738742 00000 n
+0000009354 00000 n
+0000009518 00000 n
+0000137889 00000 n
+0000738663 00000 n
+0000009575 00000 n
+0000009671 00000 n
+0000137951 00000 n
+0000738545 00000 n
+0000009723 00000 n
+0000009819 00000 n
+0000140793 00000 n
+0000738480 00000 n
+0000009876 00000 n
+0000010002 00000 n
+0000147100 00000 n
+0000738363 00000 n
+0000010049 00000 n
+0000010135 00000 n
+0000147162 00000 n
+0000738284 00000 n
+0000010187 00000 n
+0000010278 00000 n
+0000149790 00000 n
+0000738191 00000 n
+0000010330 00000 n
+0000010517 00000 n
+0000154545 00000 n
+0000738112 00000 n
+0000010569 00000 n
+0000010713 00000 n
+0000011955 00000 n
+0000012190 00000 n
+0000010763 00000 n
+0000012067 00000 n
+0000012128 00000 n
+0000718803 00000 n
+0000708777 00000 n
+0000707663 00000 n
+0000713228 00000 n
+0000704317 00000 n
+0000721030 00000 n
+0000726326 00000 n
+0000735695 00000 n
+0000706549 00000 n
+0000736859 00000 n
+0000014763 00000 n
+0000014915 00000 n
+0000015072 00000 n
+0000015224 00000 n
+0000015376 00000 n
+0000015533 00000 n
+0000015694 00000 n
+0000015854 00000 n
+0000016009 00000 n
+0000016164 00000 n
+0000016324 00000 n
+0000016480 00000 n
+0000016637 00000 n
+0000016789 00000 n
+0000016946 00000 n
+0000017106 00000 n
+0000017263 00000 n
+0000017420 00000 n
+0000017577 00000 n
+0000017737 00000 n
+0000017898 00000 n
+0000020765 00000 n
+0000018244 00000 n
+0000014471 00000 n
+0000012366 00000 n
+0000018059 00000 n
+0000018120 00000 n
+0000702090 00000 n
+0000717688 00000 n
+0000018182 00000 n
+0000703204 00000 n
+0000020926 00000 n
+0000021087 00000 n
+0000021248 00000 n
+0000021405 00000 n
+0000021562 00000 n
+0000021714 00000 n
+0000021871 00000 n
+0000022027 00000 n
+0000022183 00000 n
+0000022340 00000 n
+0000022500 00000 n
+0000022656 00000 n
+0000022816 00000 n
+0000022977 00000 n
+0000023133 00000 n
+0000023294 00000 n
+0000023454 00000 n
+0000023606 00000 n
+0000023763 00000 n
+0000023924 00000 n
+0000024085 00000 n
+0000024242 00000 n
+0000024403 00000 n
+0000024555 00000 n
+0000024712 00000 n
+0000024869 00000 n
+0000025146 00000 n
+0000020425 00000 n
+0000018355 00000 n
+0000025025 00000 n
+0000711003 00000 n
+0000027687 00000 n
+0000027843 00000 n
+0000028000 00000 n
+0000028162 00000 n
+0000028608 00000 n
+0000032836 00000 n
+0000029751 00000 n
+0000027515 00000 n
+0000025270 00000 n
+0000028762 00000 n
+0000028823 00000 n
+0000714343 00000 n
+0000028885 00000 n
+0000028947 00000 n
+0000029009 00000 n
+0000723699 00000 n
+0000029071 00000 n
+0000029133 00000 n
+0000029195 00000 n
+0000029257 00000 n
+0000028385 00000 n
+0000029319 00000 n
+0000029381 00000 n
+0000029443 00000 n
+0000029505 00000 n
+0000029627 00000 n
+0000709891 00000 n
+0000029689 00000 n
+0000712115 00000 n
+0000705431 00000 n
+0000032987 00000 n
+0000033144 00000 n
+0000033301 00000 n
+0000033948 00000 n
+0000032680 00000 n
+0000029940 00000 n
+0000033456 00000 n
+0000033517 00000 n
+0000033579 00000 n
+0000033702 00000 n
+0000725451 00000 n
+0000734463 00000 n
+0000731996 00000 n
+0000727393 00000 n
+0000033764 00000 n
+0000722819 00000 n
+0000033825 00000 n
+0000033886 00000 n
+0000733230 00000 n
+0000037820 00000 n
+0000041791 00000 n
+0000038278 00000 n
+0000037688 00000 n
+0000034150 00000 n
+0000037971 00000 n
+0000038032 00000 n
+0000038094 00000 n
+0000038155 00000 n
+0000038216 00000 n
+0000728460 00000 n
+0000730763 00000 n
+0000729523 00000 n
+0000041948 00000 n
+0000042100 00000 n
+0000042499 00000 n
+0000041643 00000 n
+0000038506 00000 n
+0000042254 00000 n
+0000736666 00000 n
+0000042437 00000 n
+0000736976 00000 n
+0000045973 00000 n
+0000046127 00000 n
+0000046279 00000 n
+0000046441 00000 n
+0000046716 00000 n
+0000045817 00000 n
+0000042715 00000 n
+0000046593 00000 n
+0000046654 00000 n
+0000719917 00000 n
+0000049545 00000 n
+0000049189 00000 n
+0000046946 00000 n
+0000049301 00000 n
+0000716574 00000 n
+0000052361 00000 n
+0000052512 00000 n
+0000052666 00000 n
+0000053002 00000 n
+0000052213 00000 n
+0000049722 00000 n
+0000052818 00000 n
+0000052940 00000 n
+0000055990 00000 n
+0000055696 00000 n
+0000053258 00000 n
+0000055808 00000 n
+0000058951 00000 n
+0000059106 00000 n
+0000059380 00000 n
+0000058811 00000 n
+0000056179 00000 n
+0000059258 00000 n
+0000062301 00000 n
+0000062640 00000 n
+0000062169 00000 n
+0000059543 00000 n
+0000062457 00000 n
+0000737093 00000 n
+0000065499 00000 n
+0000065651 00000 n
+0000065934 00000 n
+0000065359 00000 n
+0000062829 00000 n
+0000065813 00000 n
+0000068474 00000 n
+0000068809 00000 n
+0000068342 00000 n
+0000066123 00000 n
+0000068626 00000 n
+0000071501 00000 n
+0000071269 00000 n
+0000068998 00000 n
+0000071381 00000 n
+0000074705 00000 n
+0000074857 00000 n
+0000075140 00000 n
+0000074565 00000 n
+0000071690 00000 n
+0000075018 00000 n
+0000078097 00000 n
+0000077741 00000 n
+0000075303 00000 n
+0000077853 00000 n
+0000084373 00000 n
+0000081113 00000 n
+0000080879 00000 n
+0000078299 00000 n
+0000080991 00000 n
+0000737210 00000 n
+0000084528 00000 n
+0000084690 00000 n
+0000085097 00000 n
+0000084225 00000 n
+0000081302 00000 n
+0000084852 00000 n
+0000084913 00000 n
+0000085036 00000 n
+0000088341 00000 n
+0000087982 00000 n
+0000085299 00000 n
+0000088094 00000 n
+0000088155 00000 n
+0000088217 00000 n
+0000088279 00000 n
+0000091010 00000 n
+0000094778 00000 n
+0000091346 00000 n
+0000090878 00000 n
+0000088543 00000 n
+0000091162 00000 n
+0000094930 00000 n
+0000095080 00000 n
+0000095234 00000 n
+0000095643 00000 n
+0000094622 00000 n
+0000091509 00000 n
+0000095396 00000 n
+0000724575 00000 n
+0000095581 00000 n
+0000096797 00000 n
+0000096859 00000 n
+0000096624 00000 n
+0000095871 00000 n
+0000096736 00000 n
+0000099568 00000 n
+0000099395 00000 n
+0000096957 00000 n
+0000099507 00000 n
+0000737327 00000 n
+0000103013 00000 n
+0000106555 00000 n
+0000106705 00000 n
+0000106855 00000 n
+0000107005 00000 n
+0000103414 00000 n
+0000102881 00000 n
+0000099692 00000 n
+0000103167 00000 n
+0000103290 00000 n
+0000103352 00000 n
+0000107155 00000 n
+0000107317 00000 n
+0000107465 00000 n
+0000107615 00000 n
+0000108010 00000 n
+0000106367 00000 n
+0000103670 00000 n
+0000107764 00000 n
+0000107886 00000 n
+0000111110 00000 n
+0000111447 00000 n
+0000110978 00000 n
+0000108213 00000 n
+0000111262 00000 n
+0000111385 00000 n
+0000114578 00000 n
+0000114919 00000 n
+0000114446 00000 n
+0000111597 00000 n
+0000114734 00000 n
+0000114795 00000 n
+0000117569 00000 n
+0000117846 00000 n
+0000117437 00000 n
+0000115108 00000 n
+0000117723 00000 n
+0000117784 00000 n
+0000121000 00000 n
+0000120703 00000 n
+0000118061 00000 n
+0000120815 00000 n
+0000737444 00000 n
+0000123695 00000 n
+0000123850 00000 n
+0000124186 00000 n
+0000123555 00000 n
+0000121202 00000 n
+0000124001 00000 n
+0000124062 00000 n
+0000127594 00000 n
+0000127360 00000 n
+0000124350 00000 n
+0000127472 00000 n
+0000715458 00000 n
+0000130447 00000 n
+0000130848 00000 n
+0000130315 00000 n
+0000127746 00000 n
+0000130601 00000 n
+0000130786 00000 n
+0000133846 00000 n
+0000134000 00000 n
+0000134399 00000 n
+0000133706 00000 n
+0000131078 00000 n
+0000134152 00000 n
+0000722147 00000 n
+0000134337 00000 n
+0000138013 00000 n
+0000137716 00000 n
+0000134654 00000 n
+0000137828 00000 n
+0000140855 00000 n
+0000140620 00000 n
+0000138215 00000 n
+0000140732 00000 n
+0000737561 00000 n
+0000146878 00000 n
+0000143995 00000 n
+0000143822 00000 n
+0000141059 00000 n
+0000143934 00000 n
+0000147595 00000 n
+0000146746 00000 n
+0000144159 00000 n
+0000147039 00000 n
+0000147224 00000 n
+0000147286 00000 n
+0000147348 00000 n
+0000147410 00000 n
+0000147472 00000 n
+0000147533 00000 n
+0000149850 00000 n
+0000149122 00000 n
+0000147760 00000 n
+0000149234 00000 n
+0000149295 00000 n
+0000149357 00000 n
+0000149419 00000 n
+0000149481 00000 n
+0000149543 00000 n
+0000149605 00000 n
+0000149667 00000 n
+0000149729 00000 n
+0000150821 00000 n
+0000150648 00000 n
+0000150001 00000 n
+0000150760 00000 n
+0000151627 00000 n
+0000151454 00000 n
+0000150906 00000 n
+0000151566 00000 n
+0000154166 00000 n
+0000154322 00000 n
+0000154855 00000 n
+0000154026 00000 n
+0000151712 00000 n
+0000154484 00000 n
+0000154607 00000 n
+0000154669 00000 n
+0000154731 00000 n
+0000154793 00000 n
+0000737678 00000 n
+0000157447 00000 n
+0000157602 00000 n
+0000157758 00000 n
+0000159091 00000 n
+0000157299 00000 n
+0000155005 00000 n
+0000157918 00000 n
+0000157979 00000 n
+0000158041 00000 n
+0000158103 00000 n
+0000158164 00000 n
+0000158226 00000 n
+0000158288 00000 n
+0000158350 00000 n
+0000158411 00000 n
+0000158472 00000 n
+0000158533 00000 n
+0000158595 00000 n
+0000158657 00000 n
+0000158719 00000 n
+0000158781 00000 n
+0000158843 00000 n
+0000158905 00000 n
+0000158967 00000 n
+0000159029 00000 n
+0000159241 00000 n
+0000699717 00000 n
+0000159298 00000 n
+0000700434 00000 n
+0000159731 00000 n
+0000159756 00000 n
+0000160119 00000 n
+0000701100 00000 n
+0000160548 00000 n
+0000700731 00000 n
+0000160573 00000 n
+0000700881 00000 n
+0000161290 00000 n
+0000161351 00000 n
+0000161376 00000 n
+0000700222 00000 n
+0000161413 00000 n
+0000162109 00000 n
+0000162767 00000 n
+0000163410 00000 n
+0000163773 00000 n
+0000164455 00000 n
+0000165575 00000 n
+0000166163 00000 n
+0000166286 00000 n
+0000166929 00000 n
+0000167496 00000 n
+0000167619 00000 n
+0000168172 00000 n
+0000168563 00000 n
+0000169100 00000 n
+0000169865 00000 n
+0000170466 00000 n
+0000171129 00000 n
+0000171492 00000 n
+0000171819 00000 n
+0000172379 00000 n
+0000172809 00000 n
+0000173376 00000 n
+0000173473 00000 n
+0000180937 00000 n
+0000181159 00000 n
+0000212271 00000 n
+0000212732 00000 n
+0000241071 00000 n
+0000241459 00000 n
+0000264134 00000 n
+0000264376 00000 n
+0000287572 00000 n
+0000287850 00000 n
+0000291789 00000 n
+0000292167 00000 n
+0000304081 00000 n
+0000304458 00000 n
+0000307041 00000 n
+0000307276 00000 n
+0000317339 00000 n
+0000317682 00000 n
+0000321681 00000 n
+0000321928 00000 n
+0000359337 00000 n
+0000359954 00000 n
+0000382225 00000 n
+0000382509 00000 n
+0000408466 00000 n
+0000408764 00000 n
+0000426859 00000 n
+0000427103 00000 n
+0000449924 00000 n
+0000450206 00000 n
+0000473337 00000 n
+0000473657 00000 n
+0000503588 00000 n
+0000503979 00000 n
+0000532135 00000 n
+0000532498 00000 n
+0000551117 00000 n
+0000551431 00000 n
+0000568761 00000 n
+0000569024 00000 n
+0000572491 00000 n
+0000572775 00000 n
+0000575295 00000 n
+0000575542 00000 n
+0000578643 00000 n
+0000578906 00000 n
+0000604566 00000 n
+0000604905 00000 n
+0000635351 00000 n
+0000635918 00000 n
+0000653618 00000 n
+0000653859 00000 n
+0000676080 00000 n
+0000676364 00000 n
+0000699350 00000 n
+0000701165 00000 n
+0000702279 00000 n
+0000703393 00000 n
+0000704505 00000 n
+0000705627 00000 n
+0000706741 00000 n
+0000707855 00000 n
+0000708969 00000 n
+0000710081 00000 n
+0000711193 00000 n
+0000712306 00000 n
+0000713419 00000 n
+0000714534 00000 n
+0000715649 00000 n
+0000716764 00000 n
+0000717879 00000 n
+0000718994 00000 n
+0000720107 00000 n
+0000721220 00000 n
+0000722308 00000 n
+0000723018 00000 n
+0000723896 00000 n
+0000724772 00000 n
+0000725647 00000 n
+0000726522 00000 n
+0000727590 00000 n
+0000728654 00000 n
+0000729719 00000 n
+0000730953 00000 n
+0000732187 00000 n
+0000733420 00000 n
+0000734652 00000 n
+0000735885 00000 n
+0000737763 00000 n
+0000737881 00000 n
+0000737966 00000 n
+0000738036 00000 n
+0000742551 00000 n
+0000742750 00000 n
+0000742942 00000 n
+0000743112 00000 n
+0000743281 00000 n
+0000743451 00000 n
+0000743620 00000 n
+0000743790 00000 n
+0000743959 00000 n
+0000744126 00000 n
+0000744312 00000 n
+0000744510 00000 n
+0000744680 00000 n
+0000744849 00000 n
+0000745019 00000 n
+0000745188 00000 n
+0000745358 00000 n
+0000745527 00000 n
+0000745692 00000 n
+0000745883 00000 n
+0000746077 00000 n
+0000746261 00000 n
+0000746463 00000 n
+0000746683 00000 n
+0000746907 00000 n
+0000747133 00000 n
+0000747380 00000 n
+0000747640 00000 n
+0000747906 00000 n
+0000748112 00000 n
+0000748223 00000 n
+0000748332 00000 n
+0000748440 00000 n
+0000748555 00000 n
+0000748663 00000 n
+0000748766 00000 n
+0000748804 00000 n
+0000748931 00000 n
+trailer
+<< /Size 771
+/Root 769 0 R
+/Info 770 0 R
+/ID [<1B3BDEC9279265DF8D211E4E9083472C> <1B3BDEC9279265DF8D211E4E9083472C>] >>
+startxref
+749908
+%%EOF
diff --git a/macros/latex/contrib/diffcoeff/diffcoeff4.sty b/macros/latex/contrib/diffcoeff/diffcoeff4.sty
new file mode 100644
index 0000000000..3125ae5902
--- /dev/null
+++ b/macros/latex/contrib/diffcoeff/diffcoeff4.sty
@@ -0,0 +1,744 @@
+% This is file `diffcoeff4.sty'.
+%
+% This work may be distributed and/or modified under the conditions
+% of the LaTeX Project Public License, either version 1.3c
+% (2008-05-04) of this license or any later version; see
+% http://www.latex-project.org/lppl.txt
+%
+% Andrew Parsloe ajparsloe@gmail.com
+%
+\RequirePackage{expl3}
+\RequirePackage{xparse,l3keys2e,xtemplate}
+\ProvidesExplPackage {diffcoeff4} {2022/07/30} {4.2}
+ {Write differential coefficients easily and consistently.}
+%
+\keys_define:nn { diffcoeff4 }
+ {
+ ISO .bool_set:N = \l__diffcoeff_ISO_bool,
+ spaced .int_set:N = \l__diffcoeff_spaced_int,
+ spaced .default:n = 1,
+ spaced .initial:n = 0,
+ def-file .tl_gset:N = \g__diffcoeff_def_tl,
+ def-file .initial:n = diffcoeff,
+ def-file .default:n = diffcoeff
+ }
+\ProcessKeysPackageOptions { diffcoeff4 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\cs_generate_variant:Nn \tl_if_eq:nnTF { nV }
+
+\tl_new:N \l__diffcoeff_oporder_tl
+\tl_new:N \l__diffcoeff_derivand_tl
+\tl_new:N \l__diffcoeff_type_tl
+\tl_new:N \l__diffcoeff_tot_order_tl
+\tl_new:N \l__diffcoeff_curr_num_tl
+\tl_new:N \l__diffcoeff_curr_var_tl
+\tl_new:N \l__diffcoeff_paren_tl
+
+\tl_const:Nn \c__diffcoeff_digits_tl { 1234567890 }
+
+\seq_new:N \l__diffcoeff_orders_seq
+\seq_new:N \l__diffcoeff_vars_seq
+\seq_new:N \l__diffcoeff_denom_seq
+\seq_new:N \l__diffcoeff_paren_seq
+
+\prop_new:N \l__diffcoeff_vars_prop
+
+\bool_new:N \l__diffcoeff_op_left_bool
+\bool_new:N \l__diffcoeff_single_var_bool
+\bool_new:N \l__diffcoeff_opwrap_bool
+\bool_new:N \l__diffcoeff_integ_bool
+\bool_new:N \l__diffcoeff_spaced_bool
+\bool_new:N \l__diffcoeff_altsep_bool
+
+\int_new:N \l__diffcoeff_vars_int
+\int_new:N \l__diffcoeff_format_int
+\int_new:N \l__diffcoeff_curr_tok_int
+\int_new:N \l__diffcoeff_curr_state_int
+\int_new:N \l__diffcoeff_nos_int
+\int_new:N \l__diffcoeff_parenvar_int
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareObjectType { derivative } { 3 }
+
+% defaults: ordinary deriv. values
+\DeclareTemplateInterface { derivative } { DERIV } { 3 }
+ {
+ op-symbol : tokenlist = d ,
+ op-symbol-alt : tokenlist = \KeyValue { op-symbol },
+ op-order-sep : muskip = 1 mu ,
+ derivand-sep : muskip = 3 mu plus 1 mu minus 2 mu,
+ long-var-wrap : choice { dv, d(v), (dv) }
+ = d(v) ,
+ denom-term-sep : muskip = 2 mu ,
+ term-sep-adjust : muskip = -1 mu ,
+ left-delim : tokenlist = \left . ,
+ right-delim : tokenlist = \right |,
+ elbowroom : muskip = 0 mu ,
+ subscr-nudge : muskip = 0 mu ,
+ *-derivand-sep : muskip = \KeyValue { derivand-sep },
+ *-op-left : boolean = false ,
+ *-italic-nudge : muskip = 3 mu ,
+ /-derivand-sep : muskip = \KeyValue { derivand-sep },
+ /-denom-term-sep : muskip = 1 mu ,
+ /-left-delim : tokenlist = ( ,
+ /-right-delim : tokenlist = ) ,
+ /-elbowroom : muskip = 0 mu ,
+ /-subscr-nudge : muskip = 0 mu ,
+ */-derivand-sep : muskip = \KeyValue { /-derivand-sep },
+ */-op-wrap : boolean = true
+ }
+% #1 order spec(seqvar); #2 order override(tlvar)
+% #3 derivand(tlvar); #4 denominator(seqvar)
+% #5 subscript(tlvar)
+\DeclareTemplateCode { derivative } { DERIV } { 3 }
+ {
+ op-symbol = \l__diffcoeff_op_tl,
+ op-symbol-alt = \l__diffcoeff_op_alt_tl,
+ op-order-sep = \l__diffcoeff_oporder_muskip,
+ derivand-sep = \l__diffcoeff_derivsep_muskip,
+ long-var-wrap = {
+ dv = \cs_set_eq:NN \__diffcoeff_wrap_longvars:nn
+ \__diffcoeff_wrap_longvars_dv:nn,
+ d(v) = \cs_set_eq:NN \__diffcoeff_wrap_longvars:nn
+ \__diffcoeff_wrap_longvars_dvi:nn,
+ (dv) = \cs_set_eq:NN \__diffcoeff_wrap_longvars:nn
+ \__diffcoeff_wrap_longvars_dvii:nn,
+ unknown = \cs_set_eq:NN \__diffcoeff_wrap_longvars:nn
+ \__diffcoeff_wrap_longvars_dvi:nn
+ },
+ denom-term-sep = \l__diffcoeff_varsep_muskip,
+ term-sep-adjust = \l__diffcoeff_sep_adj_muskip,
+ left-delim = \l__diffcoeff_ldelim_tl,
+ right-delim = \l__diffcoeff_rdelim_tl,
+ elbowroom = \l__diffcoeff_elbowrm_muskip ,
+ subscr-nudge = \l__diffcoeff_subnudge_muskip,
+ *-derivand-sep = \l__diffcoeff_derivsepi_muskip,
+ *-op-left = \l__diffcoeff_op_left_bool,
+ *-italic-nudge = \l__diffcoeff_opnudge_muskip,
+ /-derivand-sep = \l__diffcoeff_derivsepii_muskip,
+ /-denom-term-sep = \l_tmpb_muskip,
+ /-left-delim = \l__diffcoeff_ldelimi_tl,
+ /-right-delim = \l__diffcoeff_rdelimi_tl,
+ /-elbowroom = \l_tmpc_muskip,
+ /-subscr-nudge = \l_tmpd_muskip,
+ */-derivand-sep = \l__diffcoeff_derivsepiii_muskip,
+ */-op-wrap = \l__diffcoeff_opwrap_bool
+ }
+ {
+ \AssignTemplateKeys
+
+ \bool_if:NF\l__diffcoeff_integ_bool
+ {
+ \int_compare:nNnT { \l__diffcoeff_format_int } > { 1 }
+ { \__diffcoeff_slash_vals: }
+ \__diffcoeff_build:nnn { #1 } { #2 } { #3 }
+ }
+ }
+%%%%%%%%%%
+\cs_new:Npn \__diffcoeff_slash_vals:
+ {
+ \muskip_set:Nn \l__diffcoeff_varsep_muskip \l_tmpb_muskip
+ \muskip_set:Nn \l__diffcoeff_elbowrm_muskip \l_tmpc_muskip
+ \muskip_set:Nn \l__diffcoeff_subnudge_muskip \l_tmpd_muskip
+ \tl_set:NV \l__diffcoeff_ldelim_tl \l__diffcoeff_ldelimi_tl
+ \tl_set:NV \l__diffcoeff_rdelim_tl \l__diffcoeff_rdelimi_tl
+ }
+% #1 diff'and; #2 vars clist; #3 trailing arg
+\cs_new:Npn \__diffcoeff_build:nnn #1#2#3
+ {
+ \tl_set:Nn \l__diffcoeff_derivand_tl { #1 }
+ \seq_set_from_clist:Nn \l__diffcoeff_vars_seq { #2 }
+ \bool_if:nT
+ {
+ !\l__diffcoeff_opwrap_bool &&
+ \int_compare_p:nNn { \l__diffcoeff_format_int } > { 1 }
+ }
+ { \int_set:Nn \l__diffcoeff_format_int { 4 } }
+ \__diffcoeff_spaced:n { \l__diffcoeff_spaced_int }
+ \bool_if:nTF
+ {
+ ( \l__diffcoeff_altsep_bool && !\l__diffcoeff_spaced_bool )
+ || ( !\l__diffcoeff_altsep_bool && \l__diffcoeff_spaced_bool )
+ }
+ { \__diffcoeff_derivsep: }
+ { \tl_put_left:Nn \l__diffcoeff_derivand_tl { \mskip 0 mu } }
+ \tl_if_novalue:nF { #3 }
+ { \l__diffcoeff_ldelim_tl \mskip \l__diffcoeff_elbowrm_muskip }
+ \bool_if:NTF \l__diffcoeff_single_var_bool
+ {
+ \tl_set:Nx \l_tmpa_tl { \seq_use:Nn \l__diffcoeff_vars_seq { , } }
+ \__diffcoeff_single:NNN \l__diffcoeff_tot_order_tl \l__diffcoeff_derivand_tl \l_tmpa_tl
+ }
+ {
+ \int_zero:N \l_tmpa_int
+ \seq_mapthread_function:NNN \l__diffcoeff_orders_seq
+ \l__diffcoeff_vars_seq \__diffcoeff_map_orders:nn
+ \__diffcoeff_mixed:NNN \l__diffcoeff_tot_order_tl
+ \l__diffcoeff_derivand_tl \l__diffcoeff_denom_seq
+ }
+ \tl_if_novalue:nF { #3 }
+ {
+ \mskip \l__diffcoeff_elbowrm_muskip \l__diffcoeff_rdelim_tl
+ \tl_if_empty:nF { #3 }
+ {
+ \c_math_subscript_token
+ { \mskip \l__diffcoeff_subnudge_muskip { #3 } }
+ }
+ }
+ }
+%%%%%%%%%%%%%%%%%%%%
+\cs_new_protected:Npn \__diffcoeff_spaced:n #1
+ {
+ \int_case:nn { \int_sign:n { #1 } }
+ {
+ { 1 } { \bool_set_true:N \l__diffcoeff_spaced_bool }
+ { 0 } { \bool_set_false:N \l__diffcoeff_spaced_bool }
+ { -1 }
+ {
+ \int_compare:nNnTF { 1 } <
+ { \tl_count:N \l__diffcoeff_derivand_tl }
+ { \bool_set_true:N \l__diffcoeff_spaced_bool }
+ { \bool_set_false:N \l__diffcoeff_spaced_bool }
+ }
+ }
+ }
+\cs_new_protected:Npn \__diffcoeff_derivsep:
+ {
+ \tl_put_left:Nx \l__diffcoeff_derivand_tl
+ {
+ \int_case:nn { \l__diffcoeff_format_int }
+ {
+ { 0 } { \mskip \l__diffcoeff_derivsep_muskip }
+ { 1 } { \mskip \l__diffcoeff_derivsepi_muskip }
+ { 2 } { \mskip \l__diffcoeff_derivsepii_muskip }
+ { 3 } { \mskip \l__diffcoeff_derivsepiii_muskip }
+ { 4 } { \mskip \l__diffcoeff_derivsepiii_muskip }
+ }
+ }
+ }
+\cs_new:Npn \__diffcoeff_wrap_longvars_dv:nn #1#2
+ { \l__diffcoeff_op_alt_tl { {}#2 }^{ #1 } }
+\cs_new:Npn \__diffcoeff_wrap_longvars_dvi:nn #1#2
+ { \l__diffcoeff_op_alt_tl { {}(#2) }^{ #1 } }
+\cs_new:Npn \__diffcoeff_wrap_longvars_dvii:nn #1#2
+ { (\l__diffcoeff_op_alt_tl { {}#2) }^{ #1 } }
+% (ptl) form denom #1 from orders seq & #2 from vars seq
+\cs_new_protected:Npn \__diffcoeff_map_orders:nn #1#2
+ {
+ \tl_if_eq:nnTF { #1 } { 1 }
+ { \seq_put_right:Nn \l__diffcoeff_denom_seq { \l__diffcoeff_op_alt_tl { #2 } } }
+ {
+ \int_compare:nNnTF { \tl_count:n { #2 } } = { 1 }
+ {
+ \seq_put_right:Nn \l__diffcoeff_denom_seq
+ { \l__diffcoeff_op_alt_tl { #2 }^{ #1 } }
+ }
+ {
+ \seq_put_right:Nn \l__diffcoeff_denom_seq
+ { \__diffcoeff_wrap_longvars:nn { #1\vphantom{)} } { #2 } }
+ }
+ }
+ }
+% #1 order(tlvar) ; #2 diff'iand(tlvar); #3 denom(tlvar)
+\cs_new:Npn \__diffcoeff_single:NNN #1#2#3
+ {
+ \__diffcoeff_numer:N { #1 }
+ \__diffcoeff_form_deriv:NNn
+ \l__diffcoeff_oporder_tl
+ \l__diffcoeff_derivand_tl
+ { \__diffcoeff_denom_single:NN #1 #3 }
+ }
+% #1 total order; #2 derivand; #3 denom seq
+\cs_new_protected:Npn \__diffcoeff_mixed:NNN #1#2#3
+ {
+ \__diffcoeff_numer:N #1
+ \__diffcoeff_form_deriv:NNn
+ \l__diffcoeff_oporder_tl
+ \l__diffcoeff_derivand_tl
+ { \__diffcoeff_denom_sep:N #3 }
+ }
+\cs_new:Npn \__diffcoeff_denom_sep:N #1
+ {
+ \int_zero:N \l_tmpa_int
+ \seq_map_inline:Nn #1
+ {
+ \int_incr:N \l_tmpa_int ##1
+ \int_compare:nNnT { \l_tmpa_int } < { \l__diffcoeff_vars_int }
+ {
+ \seq_pop:NN \l__diffcoeff_orders_seq \l_tmpa_tl
+ \str_if_eq:VnTF \l_tmpa_tl { 1 }
+ { \mskip \l__diffcoeff_varsep_muskip }
+ {
+ \mskip \muskip_eval:n { \l__diffcoeff_varsep_muskip +
+ \l__diffcoeff_sep_adj_muskip }
+ }
+ }
+ }
+ }
+% #1(tl) total order
+\cs_new_protected:Npn \__diffcoeff_numer:N #1
+ {
+ \bool_if:NTF \l__diffcoeff_op_left_bool
+ {
+ \tl_set:Nn \l__diffcoeff_oporder_tl
+ { \mskip \l__diffcoeff_opnudge_muskip }
+ }
+ { \tl_clear:N \l__diffcoeff_oporder_tl }
+ \tl_put_right:No \l__diffcoeff_oporder_tl \l__diffcoeff_op_tl
+ \exp_args:NnV \tl_if_eq:nnF { 1 } #1
+ {
+ \tl_put_right:Nn \l__diffcoeff_oporder_tl
+ { \mskip \l__diffcoeff_oporder_muskip ^ { #1 } }
+ }
+ \bool_if:NT \l__diffcoeff_op_left_bool
+ { \tl_put_right:Nn \l__diffcoeff_oporder_tl { \hfill } }
+ }
+% #1 order; #2 var
+\cs_new_protected:Npn \__diffcoeff_denom_single:NN #1#2
+ {
+ \tl_if_eq:nVTF { 1 } #1
+ { \l__diffcoeff_op_alt_tl {}#2 }
+ {
+ \int_compare:nNnTF { \tl_count:N #2 } = { 1 }
+ { \l__diffcoeff_op_alt_tl {}#2^{ #1 } }
+ { \__diffcoeff_wrap_longvars:nn { #1\vphantom) } { #2 } }
+ }
+ }
+% #1 op+order; #2 diff'iand; #3 denom
+% 0 frac; 1 frac append; 2 slash ; 3 ( slash ) append; 4 slash append
+\cs_new:Npn \__diffcoeff_form_deriv:NNn #1#2#3
+ {
+ \int_case:nn { \l__diffcoeff_format_int }
+ {
+ { 0 } { \frac { #1 #2 } { #3 } }
+ { 1 } { \frac { #1 } { #3 } #2 }
+ { 2 } { #1 #2 / #3 }
+ { 3 } { ( #1 / #3 ) #2 }
+ { 4 } { #1 / #3 #2 }
+ }
+ }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% differential
+% #1 variant; #2 = space in mu before d (0--9)
+% note \group_end placement for \vec{x} etc
+\NewDocumentCommand \dl { d.. t- m }
+ {
+ \group_begin:
+ \bool_set_true:N \l__diffcoeff_integ_bool
+ \bool_set_true:N \l__diffcoeff_single_var_bool
+ \seq_set_from_clist:Nn \l__diffcoeff_orders_seq { 1 }
+ \tl_set:Nn \l__diffcoeff_tot_order_tl { 1 }
+ \IfValueTF { #1 }
+ { \tl_set:Nn \l__diffcoeff_type_tl { .#1 } }
+ { \tl_set:Nn \l__diffcoeff_type_tl { } }
+ \UseInstance { derivative } { ord\l__diffcoeff_type_tl }
+ \c_empty_tl \c_empty_seq \c_empty_tl
+ \tl_if_in:NnTF \c__diffcoeff_digits_tl { #3 }
+ { \mskip \IfBooleanT #2 { - }#3 mu \l__diffcoeff_op_tl \group_end: }
+ { \l__diffcoeff_op_tl \group_end: {} #3 }
+ }
+\NewDocumentCommand \negmu {} { \mskip -1 mu }
+\NewDocumentCommand \nilmu {} { \mskip 0 mu }
+\NewDocumentCommand \onemu {} { \mskip 1 mu }
+\NewDocumentCommand \twomu {} { \mskip 2 mu }
+% derivative
+% #1(tl) = name of variant; #2(*)= append diff'iand boolean
+% #3(clist) = orders of diff. in each var.; #4(tl) = order override
+% #5(bool) spacing switch; #6(tl) = diff'iand; #7( / ) = slash boolean
+% #8(clist) = vars of diff.; #9(tl) = pt of eval./vars held const
+\NewDocumentCommand \diff { d.. s O{1} o t! >{\TrimSpaces} m t/ m !o }
+ {
+ \group_begin:
+ \IfBooleanTF #5
+ { \bool_set_true:N \l__diffcoeff_altsep_bool }
+ { \bool_set_false:N \l__diffcoeff_altsep_bool }
+ \seq_set_from_clist:Nn \l__diffcoeff_orders_seq { #3 }
+ \int_set:Nn \l_tmpb_int { \seq_count:N \l__diffcoeff_orders_seq }
+ \int_set:Nn \l__diffcoeff_vars_int { \clist_count:n { #8 } }
+ \int_compare:nNnTF { \l__diffcoeff_vars_int } = { 1 }
+ { \bool_set_true:N \l__diffcoeff_single_var_bool }
+ {
+ \int_compare:nNnTF { \l__diffcoeff_vars_int } < { \l_tmpb_int }
+ {
+ \msg_error:nnxxxx { diffcoeff } { numbers-conflict }
+ { \int_use:N \l__diffcoeff_vars_int } { \int_use:N \l_tmpb_int }
+ { \seq_use:Nn \l__diffcoeff_orders_seq { , } }
+ { \clist_use:nn { #8 } { , } }
+ }
+ { % pad orders seq if nec.
+ \int_step_inline:nnnn
+ { 1 + \l_tmpb_int } { 1 } { \l__diffcoeff_vars_int }
+ { \seq_put_right:Nn \l__diffcoeff_orders_seq { 1 } }
+ }
+ }
+ % override/calc total order
+ \IfValueTF { #4 }
+ { \tl_set:Nn \l__diffcoeff_tot_order_tl { #4 } }
+ {
+ \bool_if:NTF \l__diffcoeff_single_var_bool
+ { \tl_set:Nn \l__diffcoeff_tot_order_tl { #3 } }
+ {
+ \__diffcoeff_calc_tot_order:NN \l__diffcoeff_orders_seq
+ \l__diffcoeff_tot_order_tl
+ }
+ }
+ \IfValueTF { #1 }
+ { \tl_set:Nn \l__diffcoeff_type_tl { .#1 } }
+ { \tl_set:Nn \l__diffcoeff_type_tl { } }
+ % append? slash?
+ \int_zero:N \l__diffcoeff_format_int
+ \IfBooleanT #2 { \int_incr:N \l__diffcoeff_format_int }
+ \IfBooleanT #7 { \int_add:Nn \l__diffcoeff_format_int { 2 } }
+ \UseInstance { derivative } { ord\l__diffcoeff_type_tl } {#6}{#8}{#9}
+ \group_end:
+ } % end of \diff
+%%%%%%%%%%%%%%%%%%%
+% #2(seq) expr in; #1(tlv) expr out
+\cs_new:Npn \__diffcoeff_calc_tot_order:NN #1 #2
+ {
+ \tl_clear:N \l__diffcoeff_nos_tl
+ \exp_args:Nx\__diffcoeff_digest_expr:n { \seq_use:Nn #1 { + } }
+ \prop_if_empty:NTF \l__diffcoeff_vars_prop
+ { \tl_set:NV #2 \l__diffcoeff_nos_tl }
+ { \__diffcoeff_evaluate:NN \l__diffcoeff_vars_prop #2 }
+ }
+\cs_new:Npn \__diffcoeff_digest_expr:n #1
+ {
+ \tl_set:Nn \l__diffcoeff_curr_num_tl { + }
+ \tl_set:Nn \l__diffcoeff_paren_tl { +1 }
+ \tl_set:Nn \l__diffcoeff_nos_tl { 0 }
+ \int_zero:N \l__diffcoeff_curr_state_int
+ \int_zero:N \l__diffcoeff_curr_tok_int
+ \tl_map_inline:nn { #1+ }
+ {
+ \__diffcoeff_get_curr_ndx:nN { ##1 } \l__diffcoeff_curr_tok_int
+ \__diffcoeff_transitions:nNN { ##1 }
+ \l__diffcoeff_curr_state_int \l__diffcoeff_curr_tok_int
+ }
+ \int_set:Nn \l__diffcoeff_nos_int { \l__diffcoeff_nos_tl }
+ \tl_set:Nx \l__diffcoeff_nos_tl { \int_use:N \l__diffcoeff_nos_int }
+ \int_compare:nNnT { \l__diffcoeff_nos_int } = { 0 }
+ { \tl_clear:N \l__diffcoeff_nos_tl }
+ }
+% #1 curr tok (tl); #2 <== curr tok ndx (int)
+\cs_new_protected:Npn \__diffcoeff_get_curr_ndx:nN #1#2
+ {
+ \tl_if_in:NnTF \c__diffcoeff_digits_tl { #1 }
+ { \int_set:Nn #2 { 1 } } % digit
+ {
+ \str_case:nnF { #1 }
+ {
+ { + } { \int_set:Nn #2 { 0 } }
+ { - } { \int_set:Nn #2 { 0 } }
+ { ( } { \int_set:Nn #2 { 3 } }
+ { ) } { \int_set:Nn #2 { 4 } }
+ }
+ { \int_set:Nn #2 { 2 } } % var
+ }
+ }
+% #1(tl) curr tok; #2(int) curr state; #3(int) curr tok ndx
+\cs_new:Npn \__diffcoeff_transitions:nNN #1#2#3
+ {
+ \int_case:nn { #2 }
+ {
+ { 0 } % sgn + -
+ { \__diffcoeff_sgn_transitions:nNN { #1 }#2#3 }
+ { 1 } % num
+ { \__diffcoeff_num_transitions:nNN { #1 }#2#3 }
+ { 2 } % alg
+ { \__diffcoeff_alg_transitions:nNN { #1 }#2#3 }
+ { 4 } % )
+ { \__diffcoeff_rpar_transitions:nNN { #1 }#2#3 }
+ }
+ }
+% transitions from the signed state
+% #1(tl) curr tok; #2(int) 0, curr state; #3 curr tok ndx
+\cs_new_protected:Npn \__diffcoeff_sgn_transitions:nNN #1#2#3
+ {
+ \int_case:nnT { #3 }
+ {
+ { 0 } % tok = s
+ {
+ \tl_if_eq:nVTF { #1 } \l__diffcoeff_curr_num_tl
+ { \tl_set:Nn \l__diffcoeff_curr_num_tl { + } }
+ { \tl_set:Nn \l__diffcoeff_curr_num_tl { - } }
+ }
+ { 1 } % tok = d
+ { \tl_put_right:Nn \l__diffcoeff_curr_num_tl { #1 } }
+ { 2 } % tok = v
+ {
+ \tl_put_right:Nn \l__diffcoeff_curr_num_tl { 1 }
+ \tl_set:Nn \l__diffcoeff_curr_var_tl { #1 }
+ }
+ { 3 } % tok = (
+ {
+ \seq_push:NV \l__diffcoeff_paren_seq \l__diffcoeff_paren_tl
+ \tl_put_left:NV \l__diffcoeff_paren_tl \l__diffcoeff_curr_num_tl
+ \tl_set:Nn \l__diffcoeff_curr_num_tl { + }
+ \int_set:Nn #3 { 0 }
+ }
+ }
+ { \int_set_eq:NN #2 #3 }
+ }
+% transitions from the numeric state
+% #1 = curr. tok.; #2 = 0, curr. state; #3 curr. tok. index
+\cs_new_protected:Npn \__diffcoeff_num_transitions:nNN #1#2#3
+ {
+ \int_case:nnT { #3 }
+ {
+ { 0 } % tok = s
+ {
+ \tl_put_right:NV\l__diffcoeff_nos_tl
+ { \l__diffcoeff_paren_tl * \l__diffcoeff_curr_num_tl }
+ \tl_set:Nn \l__diffcoeff_curr_num_tl { #1 }
+ }
+ { 1 } % tok = d
+ { \tl_put_right:Nn \l__diffcoeff_curr_num_tl { #1 } }
+ { 2 } % tok = v
+ {
+ \tl_if_in:nnTF { ^ \times * / \div } { #1 }
+ {
+ \msg_error:nnxxx { diffcoeff } { order-specification }
+ { \seq_use:Nn \l__diffcoeff_orders_seq { , } }
+ { #1 } { number }
+ }
+ { \tl_set:Nn \l__diffcoeff_curr_var_tl { #1 } }
+ }
+ { 3 } % tok = (
+ {
+ \seq_push:NV \l__diffcoeff_paren_seq \l__diffcoeff_paren_tl
+ \tl_put_left:Nn \l__diffcoeff_paren_tl { * }
+ \tl_put_left:NV \l__diffcoeff_paren_tl \l__diffcoeff_curr_num_tl
+ \tl_set:Nn \l__diffcoeff_curr_num_tl { + }
+ \int_set:Nn #3 { 0 }
+ }
+ { 4 } % tok = )
+ {
+ \tl_put_right:NV \l__diffcoeff_nos_tl
+ { \l__diffcoeff_paren_tl * \l__diffcoeff_curr_num_tl }
+ }
+ }
+ {
+ \int_set_eq:NN #2 #3 }
+ }
+% transitions from the algebraic state
+% #1 = curr. tok.; #2 = 2, curr. state; #3 curr. tok. index
+\cs_new:Npn \__diffcoeff_alg_transitions:nNN #1#2#3
+ {
+ \int_case:nnT { #3 }
+ {
+ { 0 } % tok = s
+ {
+ \int_compare:nNnTF { \l__diffcoeff_parenvar_int } = { 0 }
+ {
+ \__diffcoeff_store_var:NNN \l__diffcoeff_curr_var_tl
+ \l__diffcoeff_paren_tl \l__diffcoeff_curr_num_tl
+ \tl_clear:N \l__diffcoeff_curr_var_tl
+ \tl_set:Nn \l__diffcoeff_curr_num_tl { #1 }
+ }
+ {
+ \tl_put_right:Nn \l__diffcoeff_curr_var_tl { #1 }
+ \int_set:Nn #3 { 2 }
+ }
+ }
+ { 1 } % tok = d
+ {
+ \tl_put_right:Nn \l__diffcoeff_curr_var_tl { #1 }
+ \int_set:Nn #3 { 2 }
+ }
+ { 2 } % tok = v
+ { \tl_put_right:Nn \l__diffcoeff_curr_var_tl { #1 } }
+ { 3 } % tok = (
+ {
+ \tl_put_right:Nn \l__diffcoeff_curr_var_tl { #1 }
+ \int_set:Nn #3 { 2 }
+ \int_incr:N \l__diffcoeff_parenvar_int
+ }
+ { 4 } % tok = )
+ {
+ \int_compare:nNnTF { \l__diffcoeff_parenvar_int } = { 0 }
+ {
+ \__diffcoeff_store_var:NNN \l__diffcoeff_curr_var_tl
+ \l__diffcoeff_paren_tl \l__diffcoeff_curr_num_tl
+ \tl_clear:N \l__diffcoeff_curr_var_tl
+ }
+ {
+ \tl_put_right:Nn \l__diffcoeff_curr_var_tl { #1 }
+ \int_set:Nn #3 { 2 }
+ \int_decr:N \l__diffcoeff_parenvar_int
+ }
+ }
+ }
+ { \int_set_eq:NN #2 #3 }
+ }
+% transitions from the ) state
+% #1 = curr. tok.; #2 = 4, curr. state; #3 curr. tok. index
+\cs_new:Npn \__diffcoeff_rpar_transitions:nNN #1#2#3
+ {
+ \int_compare:nNnTF { \int_mod:nn { #3 } { 4} } = { 0 }
+ {
+ \tl_set:Nn \l__diffcoeff_curr_num_tl { #1 }
+ \seq_pop:NN \l__diffcoeff_paren_seq \l__diffcoeff_paren_tl
+ \int_set_eq:NN #2 #3
+ }
+ {
+ \msg_error:nnxxx { diffcoeff } { order-specification }
+ { \seq_use:Nn \l__diffcoeff_orders_seq { , } } { #1 } { ) }
+ }
+ }
+% #1 is var. (tlvar); #2 is num. (tlvar); #3 num. coeff. (tlvar)
+\cs_new:Npn \__diffcoeff_store_var:NNN #1#2#3
+ {
+ \prop_get:NVNF \l__diffcoeff_vars_prop #1 \l_tmpa_tl
+ { \tl_clear:N \l_tmpa_tl }
+ \tl_put_right:NV \l_tmpa_tl { #2 * #3 }
+ \prop_put:NVV \l__diffcoeff_vars_prop #1 \l_tmpa_tl
+ }
+% #1 (propv) key=var, val=coeff; #2 <= total order
+\cs_new_protected:Npn \__diffcoeff_evaluate:NN #1#2
+ {
+ \prop_map_inline:Nn #1 { \seq_put_left:Nn \l_tmpa_seq { ##1 } }
+ \seq_sort:Nn \l_tmpa_seq
+ {
+ \int_compare:nNnTF { \tl_count:n { ##1 } } < { \tl_count:n { ##2 } }
+ { \sort_return_same: } { \sort_return_swapped: }
+ }
+ \seq_map_inline:Nn \l_tmpa_seq
+ {
+ \prop_pop:NnN #1 { ##1 } \l_tmpb_tl
+ \seq_put_right:Nx \l_tmpb_seq { \int_eval:n \l_tmpb_tl }
+ }
+ \tl_clear:N \l_tmpa_tl
+ \seq_mapthread_function:NNN \l_tmpa_seq \l_tmpb_seq
+ \__diffcoeff_tot_order:nn
+ \exp_args:NV \tl_if_head_eq_charcode:nNTF \l_tmpa_tl +
+ {
+ \tl_set:Nx \l_tmpb_tl { \tl_tail:N \l_tmpa_tl }
+ \int_compare:nNnT { \l__diffcoeff_nos_int } > { 0 }
+ { \tl_put_left:Nn \l__diffcoeff_nos_tl { + } }
+ \tl_concat:NNN #2 \l_tmpb_tl \l__diffcoeff_nos_tl
+ }
+ {
+ \int_compare:nNnTF { \l__diffcoeff_nos_int } > { 0 }
+ { \tl_concat:NNN #2 \l__diffcoeff_nos_tl \l_tmpa_tl }
+ { \tl_concat:NNN #2 \l_tmpa_tl \l__diffcoeff_nos_tl }
+ }
+ \tl_set_rescan:Nno #2 { } #2
+ }
+\cs_new:Npn \__diffcoeff_tot_order:nn #1#2
+ {
+ \int_compare:nNnTF { #2 } > { 0 }
+ {
+ \int_compare:nNnTF { #2 } = { 1 }
+ { \tl_put_left:Nn \l_tmpa_tl { +#1 } }
+ { \tl_put_left:Nn \l_tmpa_tl { +#2#1 } }
+ }
+ {
+ \int_compare:nNnT { #2 } < { 0 }
+ {
+ \int_compare:nNnTF { #2 } = { -1 }
+ { \tl_put_right:Nn \l_tmpa_tl { -#1 } }
+ { \tl_put_right:Nn \l_tmpa_tl { #2#1 } }
+ }
+ }
+ }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% create new instances or edit existing ones
+% #1 = name; #2 = key-value list
+\NewDocumentCommand \diffdef { > { \TrimSpaces } m m }
+ {
+ \tl_if_empty:nTF { #1 }
+ {
+ \EditTemplateDefaults { derivative }
+ { DERIV } { #2 }
+ \EditInstance { derivative } { ord } { #2 }
+ }
+ {
+ \IfInstanceExistTF { derivative } { ord.#1 }
+ { \EditInstance { derivative } { ord.#1 } { #2 } }
+ {
+ \DeclareInstance { derivative } { ord.#1 }
+ { DERIV } { #2 }
+ }
+ }
+ }
+% relic from version 1
+\NewDocumentCommand \diffset { o }
+ { \msg_warning:nn { diffcoeff } { obsolete } }
+
+% ordinary & D
+\DeclareInstance { derivative } { ord } { DERIV } { }
+\bool_if:NTF \l__diffcoeff_ISO_bool
+ {
+ \diffdef { }
+ {
+ op-symbol = \mathrm{d},
+ op-order-sep = 0 mu ,
+ left-delim = \left ( ,
+ right-delim = \right ) ,
+ subscr-nudge = -6 mu
+ }
+ \diffdef { D } { op-symbol = \mathrm{D} }
+ }
+ { \diffdef { D } { op-symbol = D } }
+
+% partial
+\diffdef { p }
+ {
+ op-symbol = \partial ,
+ left-delim = \left ( ,
+ right-delim = \right ) ,
+ subscr-nudge = -6 mu
+ }
+\NewDocumentCommand \diffp {} { \diff.p. }
+\NewDocumentCommand \dlp {} { \dl.p. }
+
+% delta
+\diffdef { delta }
+ {
+ op-symbol = \delta ,
+ op-order-sep = 0 mu
+ }
+\diffdef { Delta }
+ {
+ op-symbol = \Delta ,
+ op-order-sep = 0 mu
+ }
+% for compatibility with version 1
+\NewDocumentCommand \Diff { } { \diff.D. }
+\NewDocumentCommand \diffd { } { \diff.delta. }
+\NewDocumentCommand \Diffd { } { \diff.Delta. }
+
+% user-defined
+\file_if_exist:nT { \g__diffcoeff_def_tl.def }
+ { \file_input:n { \g__diffcoeff_def_tl.def } }
+%%%%%%%%%%%%%%%%%%%%
+% Jacobian
+\NewDocumentCommand \jacob { m t/ m }
+ {
+ \group_begin:
+ \IfBooleanTF #2
+ { \partial(#1) / \partial(#3) }
+ { \frac{ \partial(#1) } { \partial(#3) } }
+ \group_end:
+ }
+%%%%%%%%%%%%%%%%%%%%
+% messages
+\msg_new:nnn { diffcoeff } { order-specification }
+ {
+ #3~followed~by~#2~in~the~order~specification~[#1]~\msg_line_context:.~
+ Diffcoeff~cannot~calculate~the~overall~order~of~differentiation~in~
+ this~case.~Use~the~order-override~option~to~enter~the~overall~order.
+ }
+\msg_new:nnn { diffcoeff } { obsolete }
+ {
+ Obsolete~command:~\diffset is~superseded~by~the~\diffdef\
+ command.~\msg_see_documentation_text:n { diffcoeff }
+ }
+\msg_new:nnn { diffcoeff } { numbers-conflict }
+ {
+ #2~orders~of~differentiation~specified~for~#1~variables;~
+ orders~[#3]\ (\msg_line_context:)~for~variables~#4.
+ }
+% end of file diffcoeff4.sty \ No newline at end of file
diff --git a/macros/latex/contrib/diffcoeff/diffcoeff4.tex b/macros/latex/contrib/diffcoeff/diffcoeff4.tex
new file mode 100644
index 0000000000..fa8a06be0d
--- /dev/null
+++ b/macros/latex/contrib/diffcoeff/diffcoeff4.tex
@@ -0,0 +1,2272 @@
+%% LyX 2.4.0-alpha3 created this file. For more info, see https://www.lyx.org/.
+%% Do not edit unless you really know what you are doing.
+\documentclass[english]{article}
+\usepackage{lmodern}
+\renewcommand{\sfdefault}{lmss}
+\renewcommand{\ttdefault}{lmtt}
+\usepackage[T1]{fontenc}
+\usepackage{textcomp}
+\usepackage[latin9]{inputenc}
+\synctex=-1
+\usepackage{color}
+\definecolor{shadecolor}{rgb}{1, 0.667969, 0.5}
+\usepackage{babel}
+\usepackage{cprotect}
+\usepackage{wrapfig}
+\usepackage{booktabs}
+\usepackage{calc}
+\usepackage{framed}
+\usepackage{url}
+\usepackage{amsmath}
+\usepackage{amssymb}
+\usepackage{esint}
+\usepackage[unicode=true,pdfusetitle,
+ bookmarks=true,bookmarksnumbered=true,bookmarksopen=true,bookmarksopenlevel=2,
+ breaklinks=true,pdfborder={0 0 1},backref=section,colorlinks=true,pdfpagemode=FullScreen]
+ {hyperref}
+\hypersetup{
+ pdfborderstyle=}
+
+\makeatletter
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% LyX specific LaTeX commands.
+\newcommand{\noun}[1]{\textsc{#1}}
+%% Because html converters don't know tabularnewline
+\providecommand{\tabularnewline}{\\}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Textclass specific LaTeX commands.
+\newenvironment{centred}%
+ {\begin{center}\baselineskip=13pt\parskip=1pt }{\end{center}}
+\newenvironment{example}%
+{\begin{center}\ttfamily}{\end{center}}
+\newenvironment{lyxcode}
+ {\par\begin{list}{}{
+ \setlength{\rightmargin}{\leftmargin}
+ \setlength{\listparindent}{0pt}% needed for AMS classes
+ \raggedright
+ \setlength{\itemsep}{0pt}
+ \setlength{\parsep}{0pt}
+ \normalfont\ttfamily}%
+ \item[]}
+ {\end{list}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
+\usepackage[def-file=diffcoeff-doc]{diffcoeff}[=v4]
+
+\makeatother
+
+\begin{document}
+\title{\texttt{diffcoeff}~\\
+ a \LaTeX{} package to ease\texttt{ }the~\\
+ writing of differential coefficients \\
+ Version 4.2}
+\author{Andrew Parsloe\\
+{\small (ajparsloe@gmail.com)}}
+\maketitle
+\begin{abstract}
+\noindent This package eases the consistent writing of ordinary, partial
+and other derivatives of arbitrary (algebraic or numeric) order. For
+mixed partial derivatives, the total order of differentiation is calculated
+by the package. Optional arguments allow for points of evaluation
+(ordinary derivatives), or variables held constant (partial derivatives),
+and the placement of the differentiand in numerator or appended. The
+package uses \texttt{xtemplate}, allowing systematic fine-tuning of
+the display and generation and use of variant forms, including derivatives
+built from $D$, $\Delta$ or $\delta$. A command for differentials
+ensures the $\dl x$ (or $\dl.up.x$) used in integrals is consistent
+with the form used in derivatives.
+\end{abstract}
+\noindent %
+\noindent\begin{minipage}[t]{1\columnwidth}%
+\begin{shaded}%
+
+\subsubsection*{Version 4.2/version 5.0 incompatibility}
+
+Version 4.2 of \verb`diffcoeff` is issued at the same time as version
+5.0. The latter is a complete rewrite of the package with many changes
+to the user interface, arising above all from separating the fraction
+types into separate commands (\verb`\diff`, \verb`\diffp` for upright
+fractions; \verb`\difs`, \verb`\difsp` for slash fractions; and
+\verb`\difc`, \verb`\difcp` for a new, compact style of derivative).
+Although some elements of the earlier version are carried over, most
+documents that use version 4 will fail to compile properly with version
+5. To enable older documents to continue to compile, the \verb`\usepackage`
+statement in the preamble needs a trailing optional argument added
+to it:
+\begin{verbatim}
+ \usepackage[<options>]{diffcoeff}[=v4]
+\end{verbatim}
+The trailing argument \verb`[=v4]` (no spaces!) ensures \verb`diffcoeff4.sty`
+rather than \verb`diffcoeff.sty` is used to compile the document.
+Otherwise, version 4.2 makes no visible change to \verb`diffcoeff`
+version 4.1 other than to documentation. (It also tidies a line of
+code for the differential command \verb`\dl`.)\end{shaded}%
+\end{minipage}
+
+\tableofcontents{}
+
+\section{Introduction}
+
+The \LaTeX{} package \texttt{diffcoeff} is written in the expl3 language
+of \LaTeX 3\texttt{ }and requires the bundles \texttt{l3kernel} which
+is now part of standard \LaTeX{} (since early 2020) and \texttt{l3packages}
+(the latter for the \texttt{xparse}, \texttt{l3keys2e} and especially
+\texttt{xtemplate} packages\texttt{)}. The package is loaded by entering
+\begin{lyxcode}
+\textbackslash usepackage{[}<options>{]}\{diffcoeff\}{[}=v4{]}
+\end{lyxcode}
+in the preamble of your document, where \verb`<options>` are package
+options input by the user; see below. The trailing optional argument,
+\verb`[=v4]`, is necessary to ensure your document compiles with
+version 4 of \verb`diffcoeff` rather than the new version 5 in which
+there are many changes to the user interface.
+
+\subsubsection*{Note on terminology}
+
+I refer throughout to the quantity or function being differentiated
+as the \emph{differentiand} or \emph{derivand }(in line with \emph{integrand},
+\emph{operand}, etc.).
+
+\subsubsection*{New in version 4.0}
+
+(See §\ref{sec:Version-comparison} for a comparison of versions.)
+Version 4.0
+\begin{enumerate}
+\item enables the insertion of a small space before the differentiand, either
+as the default behaviour (package option \verb`spaced`) or at explicit
+request (argument \verb`!` of the \verb`\diff` command); see §\ref{subsec:Spacing-before-derivand};
+\item prevents the ligature $df$ that marred previous versions; this is
+now rendered $\dl f$;
+\item offers the document command \verb`\dlp` for the \emph{partial} differential;
+see §\ref{subsec:Partial-differential};
+\item no longer accepts \emph{the braced form} of the\emph{ }trailing optional
+argument specifying a point of evaluation or (for partial derivatives)
+variables held constant. This was a relic from version 1 of \texttt{diffcoeff},
+and has been deprecated since version 2.
+\end{enumerate}
+
+\subsubsection*{New in version 4.1}
+\begin{enumerate}
+\item changes the code handling the \verb`long-var-wrap` setting to avoid
+a problem with a change in \verb`xtemplate` (see \url{https://tex.stackexchange.com/questions/646976/error-with-package-diffcoeff})\footnote{Based on a suggestion from \noun{Joseph Wright}.};
+\item prevents (hitherto overlooked) ligatures in the \emph{denominators}
+of differential coefficients.
+\end{enumerate}
+
+\subsubsection*{New in version 4.2}
+\begin{enumerate}
+\item tidies a line of code in the definition of the differential (has no
+visible effect);
+\item amends documentation in light of the issue of version 5 and the resulting
+interface changes.
+\end{enumerate}
+
+\subsection{Package options}
+
+\label{subsec:Package-options}There are three package options, which
+are entered in a comma-separated list in the optional argument of
+the \texttt{\textbackslash usepackage} command.
+\begin{enumerate}
+\item The first is a switch, \texttt{ISO}, which turns on formatting conforming
+to ISO recommendations, principally upright `d's:
+\begin{lyxcode}
+\textbackslash usepackage{[}ISO{]}\{diffcoeff\}{[}=v4{]}
+\end{lyxcode}
+The full effect of this option is disscussed in §\ref{sec:Changing-defaults}.
+\item The second is another switch, \texttt{spaced}, and \emph{is new with
+version 4 }of \texttt{diffcoeff}. This switch ensures a small space
+is inserted before the differentiand:
+\begin{lyxcode}
+\textbackslash usepackage{[}spaced{]}\{diffcoeff\}{[}=v4{]}
+\end{lyxcode}
+This is discussed in §\ref{subsec:Spacing-before-derivand}.
+\item The third requires a filename \texttt{<filename>} for a file \texttt{<filename>.def}
+containing definitions of variant forms of derivative:
+\begin{lyxcode}
+\textbackslash usepackage{[}def-file=<filename>{]}\{diffcoeff\}{[}=v4{]}
+\end{lyxcode}
+This is discussed in §\ref{subsec:The-.def-file}. For the present
+document, the call is
+\begin{lyxcode}
+\textbackslash usepackage{[}def-file=diffcoeff-doc{]}\{diffcoeff\}{[}=v4{]}
+\end{lyxcode}
+\end{enumerate}
+
+\section{A Rogues' Gallery of derivatives}
+
+\label{sec:Rogues'-gallery}Browsing through texts on statistical
+mechanics, relativity and classical mechanics I find the following
+choice examples of derivatives `disporting every which way'.
+
+Multi-character variables of differentiation un-parenthesized:
+
+\begin{equation}
+\diffp{\frac{\psi}{\Theta}}{\frac{1}{\Theta}},\quad\diffp{E/T}{1/T},\quad\diffp{\ln f}{\ln x_{0}},\quad\diffp\psi{a_{i},\frac{1}{\Theta}},\quad\diffp{\mathcal{L}}{\eta_{,i}^{(r)}}.\label{eq:eg1}
+\end{equation}
+Multi-character variables of differentiation parenthesized:
+\begin{equation}
+\diffp H{\displaystyle \diffp S{q_{k}}[]},\quad\diffp\varepsilon{(1/\Theta)}.\label{eq:eg2}
+\end{equation}
+Higher-order derivatives where the parentheses do not or sometimes
+do include the operator:
+\begin{equation}
+\diffp[2]q{\frac{1}{\Theta}},\quad\diffp[2]q{1/\Theta},\quad\diffp[2]\varepsilon{a_{i}},\quad\diff.wrapall.[2]{\phi^{i}(x^{i})}{x^{i}}.\label{eq:eg3}
+\end{equation}
+Should the $d$ or $\partial$ be included within the parentheses,
+as in the last of (\ref{eq:eg3}), or not, as in the others? Logic
+says `yes'; practice suggests (generally) `no'.
+
+Indicating a point of evaluation is similarly varied:
+\begin{equation}
+\diff.pvrule.\phi\varepsilon[\varepsilon=\varepsilon_{0}],\quad\diff.pvrule.[2]\phi\varepsilon[\varepsilon=\varepsilon_{0}],\quad\diff.psqbra.{b^{\beta}}{a^{\alpha}}[b=0],\quad\diff.paren.uv[v=0].\label{eq:eg4}
+\end{equation}
+ISO 80000-2 (item 2.11.13) favours the last of these -- parentheses
+-- for ordinary derivatives. Presumably, partial derivatives should
+follow suit, although parentheses are also used to indicate variables
+held constant:
+\begin{equation}
+\diffp*{\frac{P}{T}}U[V],\quad\diffp S{N_{2}}[U,V,N_{1}],\quad\diffp S/T[V].\label{eq:eg5}
+\end{equation}
+
+Other symbols besides $d$ and $\partial$ are used to denote derivative-like
+quantities. From introductory calculus and from classical mechanics
+and thermodynamics come $\delta$ and $\Delta$, from fluid mechanics
+comes $D$:
+\begin{equation}
+\diff.delta.yx,\quad\diff.D.\rho t,\quad\diff.pDelta.UT[V],\quad\diff.Delta.U/T,\quad\diff.delta.{\mathcal{L}}{\eta^{(r)}}.\label{eq:eg6}
+\end{equation}
+
+There are those, like the International Organization for Standardization
+(ISO), who stipulate (or prefer) an upright `d' for their derivatives:
+\begin{equation}
+\diff.up.yx.\label{eq:eg11}
+\end{equation}
+When the differentiand is too big or awkward to sit in the numerator
+and is appended to the operator, the $d$ or $\partial$ in the numerator
+is generally centred -- but not always. In texts prior to the age
+of computerised typesetting one will sometimes find the symbol pushed
+to the \emph{left}:
+\begin{equation}
+\diff.pleft.*{\diffp{x^{i^{*}}}{x^{k^{*}}}{}}{x^{l^{*}}},\quad\diff.left.*{\left(\frac{m\mathbf{q}_{x}}{\sqrt{1-q^{2}}}\right)}{t}.\label{eq:eg12}
+\end{equation}
+The observant will note an italic adjustment with the first expression,
+so that the $\partial$ in the numerator and the $\partial$ in the
+denominator line up in a slanting column, but no such adjustment for
+the $d$-s in the second derivative.
+
+Then there is the case when the operator in the numerator differs
+from that in the denominator. For instance, in tensor calculus acceleration
+is sometimes written
+\[
+\diff.nabla.{v^{i}}t=\diff{v^{i}}t+\Gamma_{k\hphantom{i}h}^{\hphantom{k}i}v^{h}\diff{y^{k}}t
+\]
+where $\nabla v^{i}$ is the `absolute differential' of the velocity
+$v^{i}$.
+
+Version 2 or later of the \texttt{diffcoeff} package has the generative
+power to cope with all these variations -- see §\ref{sec:Changing-defaults}
+-- although it is unlikely an author should need to call on this
+capacity to anything like the extent required for this Rogues' Gallery.
+
+Finally and new with version 4 of \texttt{diffcoeff}, is the ability
+to insert space before the differentiand, something that had to be
+done explicitly by the user before. One way of thinking of a derivative
+is as an operator $\diff{}x$ applied to a function $F(x)$ producing
+another function $F'(x)$, a \emph{derived }function, the derivative.
+Although the original function is included in the numerator of the
+differential coefficient, a small space between the $d$ and $F$
+feels natural to separate the thing operated on from the thing operating:
+\[
+F'(x)=\diff!{F(x)}x.
+\]
+\texttt{diffcoeff} can now produce such spaced derivatives, either
+as the default behaviour or at explicit request; see §\ref{subsec:Spacing-before-derivand}.
+
+\section{Ordinary derivatives }
+
+\label{sec:Ordinary-derivatives}Writing\textbf{ }\texttt{\textbackslash diff\{y\}\{x\}}
+will produce $\diff{y}{x}$ in text style (i.e., placed between \texttt{\textbackslash (
+\textbackslash )} or \texttt{\$ \$}) or
+\[
+\diff{y}{x}
+\]
+in display style (i.e., placed between \texttt{\textbackslash{[}
+\textbackslash{]}} ). In fact \texttt{\textbackslash diff yx} (omitting
+the braces) will produce these results, with a saving on keystrokes.
+The braces are needed only when an argument -- the differentiand
+or the variable of differentiation -- is multi-token.
+\begin{itemize}
+\item If you want upright `$\mathrm{d}$'s as default, as ISO 80000-2 recommends,
+rather than the math-italic `$d$'s used here, this can easily be
+done with the package option \texttt{ISO}; see §\ref{sec:Changing-defaults}
+on changing default settings.
+\end{itemize}
+For inclusion in a line of text you might prefer to use a slash-fraction
+form of derivative. That is achieved by inserting a slash, `/', between
+numerator and denominator arguments: \texttt{\textbackslash diff\{\textbackslash ln
+x\}/x} produces $\diff{\ln x}/x$. Braces are required for the numerator
+in this case since it contains more than one token.
+
+\subsection{Spacing before the differentiand}
+
+\label{subsec:Spacing-before-derivand}There are (at least) two different
+ways in which we think of derivatives.\footnote{I thank \noun{Hans Schülein} for first raising this issue with me
+and for subsequent thoughtful comments. } We are all familiar with the argument presented in elementary calculus
+books where a curve is shown, and a point on the curve through which
+a chord has been drawn. The chord is a side -- the hypotenuse --
+of a small right-angled triangle, the other sides having lengths $\delta x$
+and $\delta y$ and being parallel to the coordinate axes. The slope
+of the chord is $\diffd yx$. By drawing smaller and smaller chords
+through the point, the ratio $\diffd yx$ approaches the slope of
+the tangent to the curve at the point. We write
+\[
+\diff yx
+\]
+for the limit of $\diffd yx$. It is natural to think of $\dl y$
+and $\dl x$ as tiny lengths, like $\delta y$ and $\delta x$, in
+which case it would be quite wrong to insert space between the $d$
+and the $y$ (let alone the $d$ and the $x$). $dy$ is a single
+object, called a differential, and we write expressions like
+\begin{centred}
+\verb`\[ dy=\diff yx dx \]` $\Longrightarrow$
+\[
+\dl y=\diff yx\dl x
+\]
+\end{centred}
+and justly call the `fraction' in this expression a differential
+coefficient.
+
+But there is another way of viewing differentiation: as a process
+producing (or \emph{deriving}) one function, $f'(x)$, from another,
+$f(x)$. Here the sense is of applying $\diff{}x$ to $f(x)$. Although
+we include $f(x)$ in the numerator it is not attached to the $d$
+and should be separated from it by a small space:
+\begin{centred}
+\verb`\[ f'(x)=\diff!{f(x)}x \]` $\Longrightarrow$
+\[
+f'(x)=\diff!{f(x)}x.
+\]
+\end{centred}
+Here the fraction on the right is another name for the derived function
+$f'$ and is justly called the derivative of $f$. As you can see
+a small space has been inserted between the $d$ and the $f$ in the
+numerator. By default the space is \texttt{3 mu} but with the ability
+to stretch by \texttt{1 mu} or shrink by\texttt{ 2 mu}{\ttfamily\footnote{In \TeX -speak, \texttt{3mu plus 1mu minus 2mu}. }}
+as \TeX{} adjusts lines to fit on the page. (A `mu' is a `math unit'
+and is one eighteenth of a quad.) To achieve this result I have inserted
+an exclamation mark \verb`!` before the braces delimiting the differentiand.
+\begin{itemize}
+\item You may want all or most of your derivatives to have this space and
+therefore will not want to be inserting exclamation marks in every
+\texttt{\textbackslash diff} command. The \texttt{spaced} package
+option switches the default behaviour to spaced derivatives (in which
+case the \texttt{!} switch now creates an \emph{un-spaced} derivative).
+The size of the space inserted by default can be easily changed; see
+§\ref{sec:Changing-defaults}.
+\end{itemize}
+The present document uses the un-spaced default. For backwards compatibility
+(and perhaps because the author has done this for the last 60 years),
+this is the \textquoteleft out-of-the-box\textquoteright{} default
+that \texttt{diffcoeff} uses. Authors should make a habit of using
+one form predominantly. (There is also the possibility which I haven't
+emphasized of spacing multi-token differentiands and leaving single-token
+differentiands unspaced; see §\ref{subsec:A-final-flourish}.)
+
+Slash-form derivatives also allow space before the differentiand.
+By default this has the same value as applied to the fraction form
+of derivative (but can be changed; see §\ref{sec:Changing-defaults}):
+\begin{centred}
+\verb`$ \diff!{\ln\sin x}/x $` $\Longrightarrow$ $ \diff!{\ln\sin x}/x$.
+\end{centred}
+The \verb`\diff` command has other optional arguments (e.g. to specify
+the order of differentiation) but always the exclamation mark, if
+used, immediately precedes the differentiand. It is the positioning
+of the differentiand that it affects after all and its placement immediately
+before that argument seems natural.
+
+\subsubsection{Ligatures: }
+
+Prior to v.4 of \texttt{diffcoeff}, \texttt{\textbackslash diff fx}
+produced the tight pairing evident in
+\[
+\frac{df}{dx}.
+\]
+This was a bug. From version 4.0 of \texttt{diffcoeff}, such ligatures
+are prevented: \verb`\[ \diff fx \]` $\Longrightarrow$ \[ \diff fx.\]
+
+\subsubsection{Spacing commands}
+
+\label{subsec:Spacing-commands}The \texttt{diffcoeff} package also
+offers four simple spacing commands to fine-tune the display of derivatives
+and of other quantities. These are
+\begin{description}
+\item [{\texttt{\textbackslash negmu}}] insert spacing of $-1$ mu
+\item [{\texttt{\textbackslash nilmu}}] insert spacing of $0$ mu (cf.
+use of an empty brace pair \texttt{\textbf{\{\}}} )
+\item [{\texttt{\textbackslash onemu}}] insert spacing of $1$ mu
+\item [{\texttt{\textbackslash twomu}}] insert spacing of $2$ mu
+\end{description}
+
+\subsection{Appending the differentiand: \texttt{\textbackslash diff{*}}}
+
+Some differentiands are too big or awkward to be placed neatly in
+the numerator of a derivative and it is natural to append them to
+a preceding differential operator. One way to do this is to leave
+the numerator argument empty in the \texttt{\textbackslash diff}
+command and follow the command with the differentiand. A better way
+is to star the \texttt{\textbackslash diff} command. This tells \texttt{diffcoeff}
+to append the differentiand. Thus suppose the differentiand is a polynomial,
+say $ax^{2}+bx+c$. Add a star (an asterisk) to the \texttt{\textbackslash diff}
+command:
+\begin{centred}
+\verb`\[ \diff*{(ax^2+bx+c)}x \]` $\Longrightarrow$ \[\diff*{(ax^{2}+bx+c)}x\]
+\end{centred}
+With the \texttt{!} switch or \texttt{spaced} package option, additional
+space (by default \texttt{3mu plus 1mu minus 2mu}) is inserted between
+the operator and the differentiand:
+\begin{centred}
+\verb`\[ \diff*!{(ax^2+bx+c)}x \]` $\Longrightarrow$ \[\diff*!{(ax^{2}+bx+c)}x.\]
+\end{centred}
+A virtue of using an asterisk to append the differentiand is that
+if one isn't sure whether a differentiand should be appended or not,
+it is an easy matter to simply insert or delete the asterisk to compare
+the results. For example, a second derivative is an iterated derivative
+-- one in which a derivative forms the differentiand of another derivative:
+\begin{centred}
+\verb`\[ \diff[2]yx = \diff*{\diff yx}x \]` $\Longrightarrow$ \[ \diff[2]yx=\diff*{\diff yx}x \]
+\end{centred}
+\noindent which is more elegant to my eye than
+\begin{centred}
+\noindent \verb`\[ \diff[2]yx = \diff!{\diff yx}x \]` $\Longrightarrow$
+\[ \diff[2]yx=\diff!{\diff yx}x \]
+\end{centred}
+\noindent although whether the \emph{meaning} is clearer is moot.\emph{
+}It is easy to switch between the two forms on the right, simply by
+inserting or removing the asterisk.
+
+In slash style with the star option, the polynomial example becomes
+\begin{centred}
+\verb`\[ \diff*{(ax^2+bx+c)}/x \]` $\Longrightarrow$ \[ \diff*{(ax^2+bx+c)}/x \]
+\end{centred}
+\noindent where the parentheses around the differential operator are
+automatically inserted by \texttt{diffcoeff}. Like other elements
+of automatic formatting, this is user-adjustable; see §\ref{sec:Changing-defaults}.
+
+With the \texttt{!} switch or \texttt{spaced} package option, this
+becomes
+\begin{centred}
+\verb`\[ \diff*!{(ax^2+bx+c)}/x \]` $\Longrightarrow$ \[ \diff*!{(ax^2+bx+c)}/x \]
+\end{centred}
+
+\subsection{Point of evaluation}
+
+\label{subsec:Point-of-evaluation}If you want to specify a point
+at which the derivative is evaluated, append a final optional argument.
+Note that there \emph{must be no space} before the left square bracket
+of the argument:\footnote{In v.1 of \texttt{diffcoeff}, this was brace-delimited. From v.2,
+square-brackets have been used and braces deprecated. From v.4, braces
+are no longer accepted.}
+\begin{centred}
+\verb`\[ \diff[2]yx[0] \]` $\Longrightarrow\quad{\displaystyle \diff[2]yx[0]}$
+\end{centred}
+\noindent If a space does slip in before the final optional argument,
+it will not cause a \LaTeX{} error. Instead, the argument will be treated
+as a square-bracketed mathematical expression following the derivative,
+and typeset as such.
+\begin{itemize}
+\item If you prefer to use subscripted \emph{parentheses} around the derivative
+to indicate a point of evaluation -- as ISO 80000-2 recommends --
+then this can easily be done; see §\ref{sec:Changing-defaults} on
+changing default settings. Or, more simply, use the \texttt{ISO} package
+option.
+\end{itemize}
+Because the slash form spreads the derivative out horizontally, parentheses
+are preferred here to indicate a point of evaluation:
+\begin{centred}
+\verb`$ \diff{\ln sin x}/{sin x}[x=\pi/6] $` $\Longrightarrow$ $ \diff{\ln\sin x}/{\sin x}[x=\pi/6] $.
+\end{centred}
+\noindent A vertical rule (or `pipe') can easily become too remote
+from the opening $d$ of the differential coefficient: $\diff.svrule.{\ln\sin x}/{\sin x}[x=\pi/6]$;
+parentheses tie the whole cluster of symbols together.
+
+\subsubsection{Superscripts}
+
+It is easy to add a superscript to a derivative to indicate evaluation
+at two points and the difference between the values:
+\begin{centred}
+\verb`\[ \diff {\sin x}x[0]^{\pi/2} \]` ${\displaystyle \Longrightarrow}$
+\[ \diff{\sin x}x[0]^{\pi/2} \]
+\end{centred}
+\noindent If you want only the superscript, no subscript, include
+the final optional argument but leave it empty. Thus, for a particle
+of mass $m$ moving along a line, distance $x$ at time $t$, the
+kinetic energy is:
+\begin{centred}
+\noindent \verb`$ \tfrac 12 m \diff x/t[]^2 $` $\Longrightarrow$
+$\tfrac{1}{2}m\diff x/t[]^{2}$.
+\end{centred}
+
+\subsection{Order of differentiation}
+
+An optional first argument allows the order of differentiation to
+be specified. The order need not be a number; an algebraic order of
+differentiation is perfectly acceptable as is a mix of the two:
+\begin{centred}
+\verb`\[ \diff[2]yx \]` $\Longrightarrow$ \[ \diff[2]yx,\]\verb`\[ \diff[n+1]yx \]`
+$\Longrightarrow$ \[ \diff[n+1]yx.\]
+\end{centred}
+As mentioned, the braces can be and have been omitted around the $x$
+and $y$; the square brackets around the optional argument, the order
+of differentiation, are essential. For a first-order derivative, no
+optional argument is needed and entering \texttt{1} as the optional
+argument has no effect:
+\begin{centred}
+\verb`$ \diff[1]yx $` $\Longrightarrow$$\diff[1]yx$.
+\end{centred}
+In slash style, \texttt{\$\textbackslash diff{[}2{]}y/x\$} produces
+$\diff[2]y/x$, and \texttt{\$\textbackslash diff{[}n+1{]}y/x\$}
+produces $\diff[n+1]y/x$.
+
+\subsection{Multi-character variables of differentiation}
+
+Differentiating a function of a function may involve a multi-character
+differentiation variable. For instance, to differentiate $\ln\sin x$
+in $x$ means forming the product
+\begin{centred}
+\verb`\[ \diff!{\ln\sin x}{\sin x}\diff{\sin x}x \]` $\Longrightarrow$
+\[\diff!{\ln\sin x}{\sin x}\diff{\sin x}x.\]
+\end{centred}
+\noindent (Although I am mainly using un-spaced differentiands in
+this document, a space before the differentiand in the first of these
+derivatives -- the \verb`!` switch -- improves the appearance of
+the expression to my eye.)
+
+Forming the \emph{second} derivative of $\ln\sin x$ will now involve
+forming (among other quantities)
+\begin{centred}
+\noindent \verb`\[\diff[2]{\ln\sin x}{\sin x}\]` $\Longrightarrow$
+\[\diff[2]{\ln\sin x}{\sin x}\]
+\end{centred}
+\noindent Parentheses have been inserted automatically by \texttt{diffcoeff}
+around $\sin x$ in the denominator to avoid any visual hint that
+we are differentiating in the sine of $x^{2}$.
+
+The question is: are the parentheses in the right place? Logically,
+no. They should include the $d$: $(d\sin x)^{2}$ -- it is the differential
+$d\sin x$ that is of the second order. But as the examples in the
+Rogues' Gallery show -- see particularly (\ref{eq:eg3}) -- the
+inclination seems to be to do otherwise. This may be because one wants,
+in any case, to parenthesise the variable. A second, outer pair of
+parentheses then seems too fussy and detracts from comprehending the
+symbol `at a glance':
+\[
+\diff.wrapall.[2]{f(x)}{(1/x)}.
+\]
+
+Customary but illogical notations are familiar in mathematics --
+think of the position of the superscripts in an identity like $\sin^{2}\theta+\cos^{2}\theta=1$.
+But, like other features of the derivative, the manner of this wrapping
+in parentheses of long variables for \emph{higher order} derivatives
+is customisable; see §\ref{sec:Changing-defaults}.
+
+For first order derivatives, parenthesising does not occur. If you
+want the variable of differentiation to be parenthesised, you need
+to insert them yourself:
+\begin{centred}
+\verb`\[\diff {f(x)}{1/x}, \quad \diff {f(x)}{(1/x)}.\]` $\Longrightarrow$
+\[ \diff {f(x)}{1/x}, \quad\diff {f(x)}{(1/x)}.\]
+\end{centred}
+
+\section{Partial derivatives}
+
+\noindent \label{sec:Partial-derivatives}Partial derivatives follow
+the same pattern as ordinary derivatives, with some extensions. The
+command this time is \texttt{\textbackslash diffp}. Thus \texttt{\textbackslash diffp\{F\}\{x\}},
+or, with a saving on keystrokes,\texttt{ \textbackslash diffp Fx},
+produces $\diffp Fx$ in text style and
+\[
+\diffp{F}{x}
+\]
+in display style. (As for \texttt{\textbackslash diff}, the omission
+of braces is possible when the differentiand or the differentiation
+variable are single tokens.) As for \texttt{\textbackslash diff},
+there is a slash form, generally preferred for inline use, \texttt{\textbackslash diffp
+F/x}, displaying as $\diffp F/x$. Given that \texttt{\textbackslash partial}
+takes 8 keystrokes to type, the slash form \emph{does }economise on
+keystrokes for a partial derivative.
+
+With either the \verb`spaced` package option (see §\ref{subsec:Package-options})
+or the \verb`!` switch a space, defaulting to \verb`3 mu` with some
+stretch and shrink, can be inserted before the differentiand: \verb`\[ \diffp!{F(x,y)}x \]`
+$\Longrightarrow$ \[ \diffp!{F(x,y)}x. \]
+
+\noindent (But note that if the \verb`spaced` package option is used,
+the \verb`!` switch \emph{removes} any extra space.)
+
+Again an optional argument allows the specification of the order of
+differentiation which may be numeric or algebraic or a mix of the
+two:
+\begin{centred}
+\verb`\[ \diffp[3]F/x , \quad \diffp[n]F/x \]` $\Longrightarrow$
+\[\diffp[3]F/x , \quad \diffp[n]F/x\] \verb`\[ \diffp[n+1]Fx. \]`
+$\Longrightarrow$ \[ \diffp[n+1]Fx. \]
+\end{centred}
+
+\subsection{Variables held constant}
+
+In a subject like thermodynamics, there is a need to indicate which
+variables are held constant when the differentiation occurs. To show
+this, append a final square-bracketed optional argument and ensure
+that it follows \emph{immediately} on the preceding mandatory argument.
+A space here will detach the argument from the derivative and result
+in it being treated as a mathematical expression following the derivative.
+Thus to differentiate the entropy $S$ in temperature $T$ while holding
+the volume $V$ constant, write
+\begin{centred}
+\verb`\[ \diffp ST[V] \]` $\Longrightarrow$ \[ \diffp ST[V]. \]
+\end{centred}
+\noindent In slash form the same expression looks like
+\begin{centred}
+\noindent \verb`$ \diffp S/T[V] $` $\Longrightarrow$ $ \diffp S/T[V] $.
+\end{centred}
+This use of a parenthesised, subscripted form to indicate a variable
+or variables held constant, leaves open the question: how do we represent
+a point of evaluation? ISO 80000-2 makes no recommendation for \emph{partial}
+derivatives; presumably we follow the same practice as their recommendation
+for ordinary derivatives:
+\begin{example}
+\verb`\[ \diffp {F(x,y)}x[(0,0)] \]` $\Longrightarrow$ \[ \diffp {F(x,y)}x[(0,0)] \]
+\end{example}
+
+However, you may prefer (as many do) to use a vertical rule for this
+purpose:
+\[
+\diff.pvrule.{F(x,y)}x[(0,0)]
+\]
+Making this possibility available is discussed in §\ref{sec:Changing-defaults}.
+
+An empty final argument produces a parenthesised derivative with no
+subscript,
+\begin{centred}
+\verb`\[ \diffp yx[] \]` ${\displaystyle \Longrightarrow}$ \[ \diffp yx[] \]
+\end{centred}
+\noindent which can be useful sometimes. An instance is the writing
+of Lagrange's equations of motion in analytic mechanics:
+\begin{centred}
+\noindent \verb`\[ \diffp L{q_k}-\diff*{\diffp L{\dot{q}_k}[]}t = 0 \]`
+$\Longrightarrow$ \[ \diffp L{q_k}-\diff*{\diffp L{\dot{q}_k}[]}t = 0. \]
+\end{centred}
+
+\subsubsection{Text-style derivatives}
+
+The \texttt{diffcoeff} package assumes that derivatives formed as
+`numerator over denominator' will be used in display-style expressions,
+and that the slash form will be used for inline use (text style).
+This is the familiar practice in the literature. If one \emph{does}
+use the first form in an inline expression where a variable is held
+constant, say \texttt{\textbackslash diffp ST{[}V{]}} as here $\diffp ST[V]$,
+the result is unsatisfactory, the subscript too tight on the closing
+parenthesis and too much space between parentheses and derivative.
+The matter is easily resolved using `variant forms' -- see §\ref{subsec:Text-and-script-style}
+below -- giving, for our example, $\diff.ptxt.ST[V]$.
+
+\subsection{Appending the differentiand}
+
+\label{subsec:Partial-appending}For a long or awkward differentiand,
+it is generally better to \emph{append} it to a preceding differential
+operator, rather than create a fractional form with the long expression
+in the numerator. As with ordinary derivatives, this is achieved by
+adding an asterisk to (i.e. by starring) the \texttt{\textbackslash diffp}
+command.
+\begin{centred}
+\verb`\[ \diffp*[2]{\Phi(x,y,z)}x \]` $\Longrightarrow$ \[ \diffp*[2]{\Phi(x,y,z)}x. \]
+\end{centred}
+With the \verb`spaced` package option, or with the \verb`!` switch
+if the package option is not used (which is the case for this document),
+one gets
+\begin{centred}
+\verb`\[ \diffp*[2]!{\Phi(x,y,z)}x \]` $\Longrightarrow$ \[ \diffp*[2]!{\Phi(x,y,z)}x \]
+\end{centred}
+which is an improvement (to my eye).
+
+Alternatively you could leave the first mandatory argument empty and
+manually append the differentiand, but by deleting or inserting an
+asterisk, it is easy to compare the two forms, differentiand-in-the-numerator,
+differentiand-appended, and see which is preferable.
+
+In slash form, parentheses are automatically inserted around the differential
+operator when the differentiand is appended,
+\begin{centred}
+\verb`\[ \diffp*[n]{f(x)}/x \]` $\Longrightarrow$ \[ \diffp*[n]{f(x)}/x, \]
+\end{centred}
+\noindent although this behaviour can be changed (§\ref{sec:Changing-defaults}
+again).
+
+If you wish to both append the differentiand \emph{and} indicate variables
+held constant, then the starred form is much the easier way to achieve
+this. Thus, to express a relation in thermodynamics,
+\begin{centred}
+\verb`\[ \diffp*{\frac PT}U[V] = \diffp*{\frac 1T}V[U] \]` $\Longrightarrow$
+\[ \diffp*{\frac PT}U[V] = \diffp*{\frac 1T}V[U], \]
+\end{centred}
+\noindent where the starring automatically takes care of the parentheses
+and subscripts.
+
+\subsection{Iterated derivatives}
+
+Derivatives can be the differentiands of derivatives, as seen above
+when writing Lagrange's equations,
+\begin{centred}
+\noindent \verb`\[ \diffp L{q_k}-\diff*{\diffp L{\dot{q}_k}[]}t = 0 \]`
+$\Longrightarrow$ \[ \diffp L{q_k}-\diff*{\diffp L{\dot{q}_k}[]}t = 0. \]
+\end{centred}
+\noindent However, in versions of \texttt{diffcoeff} before version
+3.2, an ordinary derivative within a partial derivative rendered as
+a partial derivative. That is now corrected, the ordinary derivative
+rendering correctly:
+\begin{centred}
+\verb`\[ \diffp*{\diff{x^\mu}{\lambda}}{x^\sigma} \]` $\Longrightarrow$
+\[ \diffp*{\diff{x^\mu}{\lambda}}{x^\sigma}. \]
+\end{centred}
+
+\subsection{Mixed partial derivatives}
+
+The new thing with partial derivatives, not present with ordinary
+derivatives, is \emph{mixed} partial derivatives, where there is more
+than one variable of differentiation. If each variable is differentiated
+only to the first order, then it is easy to specify the derivative.
+Suppose $F$ is a function of three variables, $x$, $y$ and $z$.
+Then
+\begin{centred}
+\verb`\[ \diffp F{x,y,z} \]` $\Longrightarrow$ \[ \diffp F{x,y,z}, \]
+
+\verb`\[ \diffp !{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$ \[ \diffp !{F(x,y,z)}{x,y,z}. \]
+\end{centred}
+In the second of these I have inserted space before the differentiand
+by using the \verb`!` switch. If the \verb`spaced` package option
+was being used, this would have been done automatically.
+
+The variables of differentiation are listed in order in a comma list
+forming the second mandatory argument. The total order of differentiation
+(3 in this example) is inserted automatically -- \texttt{diffcoeff}
+does the calculation. There is also a slash form:
+\begin{centred}
+\verb`$ \diffp F/{x,y,z} $` $\Longrightarrow$ $ \diffp F/{x,y,z}$.
+\end{centred}
+If we want to differentiate variables to higher order, then their
+orders need to be specified explicitly. To do so use a comma list
+for the optional argument:
+\begin{centred}
+\verb`\[ \diffp[2,3]F{x,y,z} \]` $\Longrightarrow$ \[ \diffp[2,3]F{x,y,z}. \]
+\end{centred}
+\noindent Notice that the overall order of the derivative -- 6 --
+is again automatically calculated and inserted as a superscript on
+the $\partial$ symbol in the numerator. In this example, the comma
+list of orders has only two members, even though there are three variables.
+It is assumed that the orders given in the comma list apply in sequence
+to the variables, the first order to the first variable, the second
+to the second variable, and so on, and that any subsequent orders
+not listed in the optional argument are, by default, 1. Thus we need
+to specify only 2 and 3 in the example; the order of differentiation
+of $z$ is 1 by default. But you \emph{cannot} use an order specification
+like \texttt{{[} , ,2{]}}. Instead write \texttt{{[}1,1,2{]}}.\textbf{
+}It is only the \emph{tail} of an order specification which can be
+omitted.
+
+\subsubsection{Minutiae of spacing (again)}
+
+\label{subsec:Minutiae-of-spacing}In Chapter 18 of the \emph{The\TeX book},
+Knuth suggests inserting a thin space, {\ttfamily\verb`\,`}
+(or {\ttfamily\verb`3 mu`}), between differentials in appropriate
+contexts, giving as an example $dx\,dy=r\,dr\,d\theta$. In the denominator
+of a derivative, however, that degree of extra spacing seems too great
+(to my eye), interfering with seeing the derivative `as a whole',
+\[
+\diff.pwide.F{x,y,z},
+\]
+especially for the slash-form of derivative: $\diff.pwide.F/{x,y,z}$.
+Some spacing is desirable, but less; by default \texttt{diffcoeff}
+inserts \verb`2 mu` between the differentials in the fraction form
+of derivative and \verb`1 mu`\texttt{ }in the slash form.
+
+Should a differentiation occur to higher order and so a variable acquire
+a superscript, an adjustment is made to the extra spacing. By default
+\verb`1 mu` is subtracted from the default spacing. Thus in
+\[
+\diffp[2]F{x,y,z},
+\]
+\verb`2 mu` of spacing is inserted between the $\partial y$ and
+$\partial z$, but because the superscript already provides some separation
+between them, only \verb`1 mu` is inserted between $\partial x^{2}$
+and $\partial y$.
+
+The values used for the spacing and its adjustment in the presence
+of a superscript can be changed by the user; see §\ref{sec:Changing-defaults}.
+Some other minutiae of spacing are discussed below in §\ref{subsec:Comma-list-of-vars}
+when the variables themselves are super- or subscripted (as happens
+in tensor calculus, for instance).
+
+Note that the \verb`!` switch, if used, is inserted \emph{immediately
+before} the differentiand. It is the placement of the differentiand,
+after all, that it is affecting:
+\begin{centred}
+\verb`\[ \diffp[2]!F{x,y,z} \]` $\Longrightarrow$ \[ \diffp[2]!F{x,y,z}. \]
+\end{centred}
+
+\subsubsection{Algebraic orders of differentiation}
+
+Calculation of the overall order of differentiation still occurs even
+when some or all of the individual orders are algebraic variables
+rather than numbers. For example, differentiating in three variables
+to orders \texttt{1, m+1, m-1},
+\begin{centred}
+\verb`\[ \diffp[1,m+1,m-1]{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$
+\[ \diffp[1,m+1,m-1]{F(x,y,z)}{x,y,z}. \]
+\end{centred}
+
+\subsubsection{Error messages}
+
+Should you specify \emph{more} orders in the comma list of the order
+specification than there are variables, compilation will fail and
+an error message will be sent to the terminal and \LaTeX{} log . For
+example, if on (say) line 53 of my document I specify \texttt{{[}1,m-1,m+1,2{]}}
+for the orders of differentiation but list only \texttt{\{x,y,z\}}
+for the variables, the message will be
+\begin{lyxcode}
+!~Package~diffcoeff~Error:~4~orders~of~differentiation~
+
+specified~for~3~variables;~orders~{[}1,m+1,m-1,2{]}
+
+(on~line~53)~for~variables~x,y,z.
+\end{lyxcode}
+Should you try using a \emph{number} raised to a power in an order
+specification, it will cause an error. For example, if on line 53
+(say) of my document I try to form \texttt{\textbackslash diffp{[}2\textasciicircum 2{]}f\{x,y,z\}}
+compilation will fail with the message
+\begin{lyxcode}
+!~Package~diffcoeff~Error:~number~followed~by~\textasciicircum ~in~the~
+
+order~specification~{[}2\textasciicircum n,1,1{]}~on~line~53.~Diffcoeff~
+
+cannot~calculate~the~overall~order~of~differentiation~
+
+in~this~case.~Use~the~order-override~option~to~enter~
+
+the~overall~order.
+\end{lyxcode}
+The order-overide option mentioned here is discussed next. Similarly,
+you cannot use multiplication (\texttt{\textbackslash times} or \texttt{{*}})\texttt{
+}or division (\texttt{/} or \texttt{\textbackslash div}) signs after
+\emph{numbers} in an order specification; only \texttt{+} or \texttt{-}
+or a left parenthesis (see below) are allowed.
+
+\subsubsection{The order-override option}
+
+\noindent Perhaps the differentiations are to orders \texttt{{[}2km,m-1,m+1{]}}:
+\begin{centred}
+\noindent \verb`\[ \diffp[2km,m-1,m+1]{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$
+\[ \diffp[2km,m-1,m+1]{F(x,y,z)}{x,y,z}. \]
+\end{centred}
+\noindent Here the overall order is presented as \texttt{2km+2m}.
+You might prefer this to be presented as \texttt{2m(k+1)}. Although
+\texttt{diffcoeff} takes some steps to present the overall order appropriately,
+it is not a computer algebra system and does not factorise expressions.
+If you want to present the order in a manner distinct from that presented
+by \texttt{diffcoeff}, use the \emph{order-override option}.
+
+This is a second optional argument immediately following the order
+specification. For our last example, filling the override option with
+\texttt{2m(k+1)} gives the desired result:
+\begin{centred}
+\verb`\[ \diffp[2km,m-1,m+1][2m(k+1)]{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$
+\[ \diffp[2km,m-1,m+1][2m(k+1)]{F(x,y,z)}{x,y,z}. \]
+\end{centred}
+\noindent As another example, left to its own devices, \texttt{diffcoeff}
+produces
+\begin{centred}
+\noindent \verb`\[ \diffp[m/2+n/2,m/2,n/2]F{x,y,z} \]` $\Longrightarrow$
+\[ \diffp[m/2+n/2,m/2,n/2]F{x,y,z}, \]
+\end{centred}
+\noindent whereas we would like the total order to be presented as
+$m+n$. Using the override option,
+\begin{centred}
+\noindent \verb`\[ \diffp[m/2+n/2,m/2,n/2][m+n]F{x,y,z} \]` $\Longrightarrow$
+\[ \diffp[m/2+n/2,m/2,n/2][m+n]F{x,y,z}. \]
+\end{centred}
+The order-override option does exactly that: overrides the presentation
+of the calculated order with the manually given one. In fact the calculation
+algorithm does not get called at all when the override option is used
+so that one can in this way present the total order in whatever manner
+one wishes or, indeed, add essentially arbitrary material as a superscript
+to the $\partial$ symbol in the numerator.
+
+\subsubsection{Comma list of variables of differentiation}
+
+\label{subsec:Comma-list-of-vars}In tensor calculus the differentiations
+are almost always in terms of super- or subscripted coordinates. In
+many other contexts this is the case too -- the reciprocal of the
+temperature in thermodynamics or generalized coordinates in analytical
+mechanics. This is why a comma list is used in \texttt{diffcoeff}
+for specifying variables of differentiation for mixed partial derivatives.
+Although it would be nice to write the minimal \texttt{\{xy\}} rather
+than \texttt{\{x,y}\} when two variables $x$ and $y$ are involved,
+the extra writing is trivial and the comma list allows a simpler handling
+of multi-character variables. For instance in tensor calculus we get
+expressions like
+\begin{centred}
+\verb`\[ \diffp{A_i}{ x^j,x^k } \]` $\Longrightarrow$ \[ \diffp{A_i}{ x^j,x^k }. \]
+\end{centred}
+\noindent It is easier to write \texttt{\{x\textasciicircum j,x\textasciicircum k\}}
+here than, say, \texttt{\{\{x\textasciicircum j\}\{x\textasciicircum k\}\}}
+to distinguish the variables. It does mean that should the variable
+of differentiation include a comma then that comma needs to be enclosed
+in braces. There are plenty of instances of this out in the world
+(see, e.g., the last equation of (\ref{eq:eg1})) but it is overall
+a rare occurrence.
+
+\paragraph*{Minutiae of spacing (yet again):}
+
+In §\ref{subsec:Minutiae-of-spacing} above, I discussed a slight
+reduction in the space inserted between the terms occurring in the
+denominator of a mixed partial derivative when a higher order differentiation
+is involved. The superscript appearing on a differentiation variable
+in that case \emph{of itself} introduced a spacing adjustment between
+the terms. But the present discussion involves only first order differentiations
+and no such reduction is automatically made by \texttt{diffcoeff}.
+However it is still possible to explicitly make such an adjustment
+with the \texttt{\textbackslash negmu} command introduced earlier
+(§\ref{subsec:Spacing-commands}), which inserts \texttt{-1 mu} of
+spacing. For our example, in
+\begin{centred}
+\verb`\[ \diffp{A_i}{ x^j\negmu,x^k } \]` $\Longrightarrow$ \[ \diffp{A_i}{ x^j\negmu,x^k } \]
+\end{centred}
+\noindent the \texttt{\textbackslash negmu} decreases the spacing
+between the terms from the default \verb`2 mu` to \verb`1 mu`.
+
+\subsubsection{Overkill territory}
+
+Two previous examples illustrate limitations of the algorithm that
+calculates the overall order of differentiation: \texttt{2m/2+2n/2}
+is not simplified to \texttt{m+n} and \texttt{2km+2m} is not factorised
+to \texttt{2m(k+1)}. But there is much that the algorithm \emph{can}
+handle -- for instance, the simple use of parentheses:
+\begin{centred}
+\verb`\[ \diffp[2m-(k+1),2(k+1)-m]{F(x,y,z)}{x,y,z} \]` $\Longrightarrow$
+\[ \diffp[2m-(k+1),2(k+1)-m]{F(x,y,z)}{x,y,z}. \]
+\end{centred}
+
+\paragraph*{Dynamic use of parentheses}
+
+\noindent For parenthetic expressions to be evaluated as in this example
+-- the \emph{dynamic} use of parentheses -- the left parenthesis
+must be preceded at most by a sign or a number; the right parenthesis
+must be followed at most by a sign.
+
+If a right parenthesis is followed by a \emph{variable}, say by \texttt{m}
+as in the order spec. \texttt{{[}(2n+1)m,(2n-1)m{]}}, it will throw
+an error and halt compilation. A message will be sent to the terminal
+and the \LaTeX{} log like the following (which assumes the order spec.
+was on line 53 of the document):
+\begin{lyxcode}
+!~Package~diffcoeff~Error:~)~followed~by~m~in~the~
+
+order~specification~{[}(2n+1)m,(2n-1)m{]}~on~line~53.~
+
+Diffcoeff~cannot~calculate~the~overall~order~of~
+
+differentiation~in~this~case.~Use~the~order-override~
+
+option~to~enter~the~overall~order.
+\end{lyxcode}
+This is a limitation on the dynamic use of parentheses -- but they
+\emph{can} be nested.
+
+\paragraph*{Static use of parentheses}
+
+If a left parenthesis is preceded by a \emph{variable} (i.e., not
+a sign or a number) this signals to \texttt{diffcoeff} the \emph{static}
+use of parentheses, something like $f(k)$, `function of $k$'.
+No attempt is made to evaluate what is between them and they are treated
+simply as an extension of the variable. For example,
+\begin{centred}
+\verb`\[ \diffp[f(k+1)+1,f(k-1)-1]{F(x,y)}{x,y} \]` $\Longrightarrow$
+\[ \diffp[f(k+1)+1,f(k-1)-1]{F(x,y)}{x,y}. \]
+\end{centred}
+\noindent In the static case you \emph{can} follow the right parenthesis
+by a variable without generating an error.\emph{ }You can nest them,
+and you can include static parentheses within a dynamic pair; for
+example,
+\begin{centred}
+\noindent \verb`\[ \diffp[2(3+f(k))+1,1-3(f(k)-2)]{F(x,y)}{x,y} \]`
+$\Longrightarrow$ \[ \diffp[2(3+f(k))+1,1-3(f(k)-2)]{F(x,y)}{x,y}. \]
+\end{centred}
+\noindent However, the reverse is not possible: you can't have dynamic
+parentheses within a static pair.
+
+\paragraph*{Other refinements}
+
+Exponents and subscripts on a \emph{variable} are fine in an order
+specification, so long as the exponent or subscript consists of a
+\emph{single} token:
+\begin{centred}
+\verb`\[ \diffp[m^2+2(k-1),m^2-(k+1)]F{x,y,z,w} \]` $\Longrightarrow$
+\[ \diffp[m^2+2(k-1),m^2-(k+1)]F{x,y,z,w}. \]
+\end{centred}
+\noindent Braced arguments containing \emph{multiple} tokens as exponents
+or subscripts to variables will generally not halt compilation but
+will usually give nonsensical results, as will \emph{signs} treated
+as superscripts or subscripts. Neither circumstance is checked for
+by \texttt{diffcoeff}.
+
+\paragraph*{Override}
+
+There are limitations on what order specifications the \texttt{diffcoeff}
+package can `digest'; equally, it can digest a wide variety of such
+constructs, but it is \emph{not} a computer algebra system. In all
+those cases where it fails to calculate or present a correct total
+order, the order-override option is available. Yes, this is not as
+convenient as having the overall order calculated automatically but
+(let's remind ourselves) we are deep in overkill territory. Mixed
+partial derivatives are used far less often than the pure derivatives,
+and when they \emph{are} used it is nearly always to orders 1 or 2
+in the variables. Mixed partial derivatives to exotic orders of differentiation
+are rarely used, so that the limitations of the calculational algorithm
+are of little real moment -- and the override option is always available
+for such cases.
+
+\subsection{Parentheses around multi-character variables}
+
+In thermodynamics and statistical mechanics one may want to differentiate
+in the reciprocal of the temperature, $1/T$ (or $1/\Theta$):
+\begin{centred}
+\verb`\[ \diffp[2]q{\frac 1\Theta} \]` $\Longrightarrow$ \[ \diffp[2]q{\frac 1\Theta}. \]
+\end{centred}
+\noindent In this case and for other \emph{higher order} derivatives
+of multi-character variables of differentiation, the parentheses are
+inserted automatically by \texttt{diffcoeff}. Precisely where parentheses
+should be placed is moot. The placement in this example is not strictly
+logical, although it feels intuitive, but the placement can be customised
+(§\ref{sec:Changing-defaults}).
+
+Parentheses are automatically inserted like this only for higher order
+derivatives. When the differentiation is to first order, parenthesising
+is up to the user:
+\begin{centred}
+\verb`\[ \diffp q{(\frac 1\Theta),V} \]` $\Longrightarrow$ \[ \diffp q{(\frac 1\Theta),V}. \]
+\end{centred}
+
+\subsection{Jacobians}
+
+\texttt{diffcoeff} provides a command \texttt{\textbackslash jacob}
+for constructing Jacobians. For example
+\begin{centred}
+\verb`\[ \jacob{u,v,w}{x,y,z} \]` $\Longrightarrow$ \[ \jacob{u,v,w}{x,y,z}. \]
+\end{centred}
+The comma lists can contain any number of variables. \texttt{\textbackslash jacob}
+does \emph{not} check that the two arguments contain the same number
+of variables, so it is perfectly possible to form an object like \texttt{\textbackslash jacob\{u,v,w\}\{x,y\}}
+which as far as I know has no meaning.
+
+\section{Changing defaults; variant forms}
+
+\label{sec:Changing-defaults}To write the range of different examples
+displayed in the Rogues' Gallery (§\ref{sec:Rogues'-gallery}) I have
+had to make extensive use of forms of derivative other than the default.
+\texttt{diffcoeff} is built on the facilities offered by the \texttt{xtemplate}
+package (included in the \LaTeX 3 bundle \texttt{l3packages)}. These
+facilities are harnessed by means of a command, \texttt{\textbackslash diffdef},
+and a further optional argument of the \texttt{\textbackslash diff}
+command.\texttt{ }
+
+\subsection{Default values: ordinary derivatives}
+
+Table~\ref{tab:Ordinary-derivatives} lists the keys available for
+forming derivatives and the default values\footnote{Note that a mu is a `math unit', 1/18 of a quad.}
+they have been assigned. These default values have been chosen to
+coincide with those relevant for \emph{ordinary} derivatives -- apart
+from the keys \texttt{denom-term-sep}, \texttt{/-denom-term-sep},
+\texttt{term-sep-adjust} and \texttt{/-term-sep-adjust} which are
+ignored for ordinary derivatives but apply to the case of mixed partial
+derivatives when there is more than one variable of differentiation.
+Keys with an opening slash, /, apply only to the slash form of the
+derivative; keys with an opening asterisk, {*}, apply only when the
+differentiand is appended.
+
+Note that these settings are, in general, font dependent. The values
+given are (in the author's opinion) appropriate for the default \LaTeX{}
+math fonts. There are also likely to be variations required for whether
+a derivative is used in a display-style or text-style or script-style
+expression. That matter is discussed below in §\ref{subsec:Text-and-script-style}.
+All values specifying a space require the unit (\texttt{mu}) to be
+given; a number alone does not suffice.
+\noindent \begin{center}
+\begin{table}
+\centering
+\centering{}\caption{{\small Defaults (ordinary derivatives})\protect\label{tab:Ordinary-derivatives}}
+\begin{tabular}{lr}
+\toprule
+{\small key} & {\small default}\tabularnewline
+\midrule
+{\small op-symbol} & {\small\texttt{d}}\tabularnewline
+{\small op-symbol-alt} & {\small\texttt{op-symbol}}\tabularnewline
+{\small op-order-sep} & {\small\texttt{1 mu}}\tabularnewline
+{\small derivand-sep} & {\small\texttt{3 mu plus 1 mu minus 2 mu}}\tabularnewline
+{\small /-derivand-sep} & {\small\texttt{derivand-sep}}\tabularnewline
+{\small{*}-derivand-sep} & {\small\texttt{derivand-sep}}\tabularnewline
+{\small{*}/-derivand-sep} & {\small\texttt{/-derivand-sep}}\tabularnewline
+{\small denom-term-sep} & {\small\texttt{2 mu}}\tabularnewline
+{\small /-denom-term-sep} & {\small\texttt{1 mu}}\tabularnewline
+{\small term-sep-adjust} & {\small\texttt{-1 mu}}\tabularnewline
+{\small left-delim} & {\small\texttt{\textbackslash left .}}\tabularnewline
+{\small right-delim} & {\small\texttt{\textbackslash right |}}\tabularnewline
+{\small /-left-delim} & {\small\texttt{(}}\tabularnewline
+{\small /-right-delim} & {\small\texttt{)}}\tabularnewline
+{\small elbowroom} & {\small\texttt{0 mu}}\tabularnewline
+{\small /-elbowroom} & {\small\texttt{0 mu}}\tabularnewline
+{\small subscr-nudge} & {\small\texttt{0 mu}}\tabularnewline
+{\small /-subscr-nudge} & {\small\texttt{0 mu}}\tabularnewline
+{\small long-var-wrap} & {\small\texttt{d(v)}}\tabularnewline
+{\small{*}/-op-wrap} & {\small\texttt{true}}\tabularnewline
+{\small{*}-op-left} & {\small\texttt{false}}\tabularnewline
+{\small{*}-italic-nudge} & {\small\texttt{3 mu}}\tabularnewline
+\bottomrule
+\end{tabular}
+\end{table}
+\par\end{center}
+\begin{description}
+\item [{op-symbol}] the operator symbol; for ordinary derivatives, generally
+one of \texttt{d} or \texttt{\textbackslash mathrm\{d\}}, \texttt{D}
+or \texttt{\textbackslash mathrm\{D\}}, \texttt{\textbackslash delta}
+or \texttt{\textbackslash Delta}; for partial derivatives \texttt{\textbackslash partial};
+default = \texttt{d}
+\item [{op-symbol-alt}] if different from \textbf{op-symbol} then used
+in the denominator while \textbf{op-symbol} is used in the numerator;
+e.g. for $\diff.nabla.{v^{i}}t$, \texttt{op-symbol = \textbackslash nabla}
+and \texttt{op-symbol-alt = d}; otherwise (and usually) defaults to
+\textbf{op-symbol}
+\item [{op-order-sep}] extra horizontal space added between the op-symbol
+and the superscripted order of differentiation in higher order derivatives;
+for the math-italic forms compare $d^{2}$ with $d^{\mkern1mu 2}$,
+$\partial^{2}$ with $\partial^{\mkern1mu 2}$ where the first symbol
+in each case has no extra space and the second has an extra 1 mu;
+default = \texttt{1 mu}
+\item [{derivand-sep}] horizontal space added before the differentiand
+(derivand) if the \verb`spaced` package option is used, or by the
+\verb`!` switch if it is not; the default has some stretch and shrink;
+default = \verb`3mu plus 1mu minus 2mu`
+\item [{/-derivand-sep}] for the slash form of derivative, horizontal space
+added before the differentiand (derivand) if the \verb`spaced` package
+option is used, or by the \verb`!` switch if it is not; default =
+\verb`derivand-sep`
+\item [{{*}-derivand-sep}] when the derivand is appended, horizontal space
+added before the differentiand (derivand) if the \verb`spaced` package
+option is used, or by the \verb`!` switch if it is not; default =
+\verb`derivand-sep`
+\item [{{*}/-derivand-sep}] for the slash form of derivative when the derivand
+is appended, horizontal space added before the differentiand (derivand)
+if the \verb`spaced` package option is used, or by the \verb`!`
+switch if it is not; default = \verb`/-derivand-sep`
+\item [{denom-term-sep}] (mixed partial derivatives only) horizontal spacing
+inserted between the differentials in the denominator of a mixed partial
+derivative to avoid a solid cluster like $\partial x\partial y\partial z$;
+with the default 2 mu this is $\dl.p.x\dl.p.2y\dl.p.2z$; default
+= \texttt{2 mu}
+\item [{/-denom-term-sep}] (mixed partial derivatives only) horizontal
+spacing inserted between the differentials in the denominator of a
+slash-form mixed partial derivative; because a slash-form derivative
+is already spread out horizontally, the default spacing is less than
+for the \texttt{\textbackslash frac} form derivative; default = \texttt{1
+mu}
+\item [{term-sep-adjust}] (mixed partial derivatives only) adjustment (i.e.
+reduction) to \textbf{denom-term-sep} or \textbf{/-denom-term-sep}
+when differentiation in a variable occurs to an order other than 1;
+if, e.g., $\dl.p.x^{2}\dl.p.1y\dl.p.2z$ is the denominator of a mixed
+partial derivative in three variables, because of the superscript
+the spacing between $\partial x^{2}$ and $\partial y$ is reduced
+by\textbf{ term-sep-adjust} from the spacing between $\partial y$
+and $\partial z$; default = \texttt{-1 mu}
+\item [{left-delim}] the left member of a delimiter pair wrapping the derivative,
+the right member of which is subscripted to indicate a point of evaluation
+or variables held constant; default = \texttt{\textbackslash left
+.}
+\item [{right-delim}] the right member of a delimiter pair wrapping the
+derivative and subscripted to indicate a point of evaluation or variables
+held constant; default = \texttt{\textbackslash right |}
+\item [{/-left-delim}] for the slash form of derivative, the left member
+of a delimiter pair wrapping the derivative and subscripted to indicate
+a point of evaluation or variables held constant; default = \texttt{(}
+\item [{/-right-delim}] for the slash form of derivative, the right member
+of a delimiter pair wrapping the derivative, the right member of which
+is subscripted to indicate a point of evaluation or variables held
+constant; default = \texttt{)}
+\item [{elbowroom}] adjustment to the whitespace between the left and right
+delimiters and the enclosed derivative; negative values reduce the
+space; default = \texttt{0 mu}
+\item [{/-elbowroom}] adjustment to the whitespace between the left and
+right delimiters and the enclosed slash-form derivative; default =
+\texttt{0 mu}
+\item [{subscr-nudge}] horizontal adjustment of the subscript's placing
+relative to the \textbf{right-delim}iter, e.g., a negative value compensates
+for the curving inwards of a large right parenthesis; may be font
+dependent; default = \texttt{0 mu}
+\item [{/-subscr-nudge}] for the slash form of derivative, horizontal adjustment
+of the subscript's placing relative to the /-\textbf{right-delim}iter;
+may be font dependent; default = \texttt{0 mu}
+\item [{long-var-wrap}] to avoid ambiguity in higher order derivatives
+it may be advisable to wrap multi-token variables of differentiation
+in parentheses; default = \texttt{d(v)}; the choices are
+\begin{description}
+\item [{\texttt{dv}}] no wrapping, e.g. $dx_{i}^{2}$ or $d\frac{1}{\Theta}^{2}$,
+$\partial x_{i}^{2}$ or $\partial\frac{1}{\Theta}^{2}$,
+\item [{\texttt{d(v)}}] wrap the variable only, e.g. $d(x_{i})^{2}$ or
+$d(\frac{1}{\Theta})^{2}$, $\partial(x_{i})^{2}$ or $\partial(\frac{1}{\Theta})^{2}$
+\item [{\texttt{(dv)}}] wrap the op-symbol and variable, e.g. $(dx_{i})^{2}$
+or $(d\frac{1}{\Theta})^{2}$, $(\partial x_{i})^{2}$ or $(\partial\frac{1}{\Theta})^{2}$
+\end{description}
+\item [{{*}/-op-wrap}] a choice of \texttt{true} or \texttt{false} for
+slash forms of the derivative when the differentiand is appended,
+dictating whether the derivative is wrapped in parentheses, as here
+$\diffp*{F(x,y)}/x$, or not; default = \texttt{true}
+\item [{{*}-op-left}] a choice of \texttt{true} or \texttt{false} indicating
+whether the op-symbol is left-aligned or not when the differentiand
+is appended; generally it is centred; does not apply to slash forms
+of the derivative; default = \texttt{false}
+\item [{{*}-italic-nudge}] if \textbf{{*}-op-left} is \texttt{true}, makes
+an italic adjustment in the numerator, so that the op-symbols in numerator
+and denominator align in the same slanting column; for an upright
+\texttt{d} this would be set to \texttt{0 mu}; default = \texttt{3
+mu}
+\end{description}
+
+\subsection{ISO defaults}
+
+\label{subsec:ISO-defaults}\begin{wraptable}[10]{o}{0.4\columnwidth}%
+\centering{}\vspace{-5.35ex}
+ \caption{{\small ISO default changes}\protect\label{tab:ISO-setting-changes}}
+\abovetopsep=.5ex %
+\begin{tabular}{lr}
+\toprule
+{\small key} & {\small default}\tabularnewline
+\midrule
+{\small op-symbol} & {\small\texttt{\textbackslash mathrm\{d\}}}\tabularnewline
+{\small op-order-sep} & {\small\texttt{0 mu}}\tabularnewline
+{\small left-delim} & {\small\texttt{\textbackslash left (}}\tabularnewline
+{\small right-delim} & {\small\texttt{\textbackslash right )}}\tabularnewline
+{\small subscr-nudge} & {\small\texttt{-6 mu}}\tabularnewline
+\bottomrule
+\end{tabular}\end{wraptable}%
+You may not like the default settings that come with \texttt{diffcoeff}.
+The package does not follow ISO 80000-2 -- it does not use upright
+`d's nor does it wrap an ordinary differential coefficient in subscripted
+parentheses to indicate a point of evaluation. Both `defects' can
+be remedied by calling the package with the option \texttt{ISO}:\footnote{One can also use \texttt{ISO=true} to turn the option on and \texttt{ISO=false
+}to turn the option off. }
+\begin{lyxcode}
+\textbackslash usepackage{[}ISO{]}\{diffcoeff\}{[}=v4{]}
+\end{lyxcode}
+The uppercase is essential -- an option \texttt{iso} is not recognised.
+The \texttt{ISO} option results in changes to the default settings
+of Table~\ref{tab:Ordinary-derivatives} as listed in Table~\ref{tab:ISO-setting-changes}.
+Any settings not mentioned in Table~\ref{tab:ISO-setting-changes}
+retain the values presented in Table~\ref{tab:Ordinary-derivatives}.
+Note that the subscript nudge figure specified here is \emph{not}
+part of the standard, which makes no recommendation about the subscript's
+positioning. But: the \texttt{-6 mu} figure with a default or latin
+modern font gives a better representation of what is displayed in
+the standard than a zero figure.
+
+Because the `d' is upright with the \texttt{ISO} option, no extra
+space is required between the symbol and the superscript in a higher
+order derivative. Hence the zero value for the \texttt{op-order-sep}.
+ISO recommends subscripted parentheses to indicate a point of evaluation.
+Hence the other entries in the table. Because a large right parenthesis
+(penultimate setting) bends inwards, to the left, a negative value
+for the last entry ensures the subscript does not become detached
+from the derivative, looking lost in a sea of whitespace.
+
+Note that the \texttt{ISO} option will also produce upright `D's in
+derivatives formed from `D'; see §\ref{subsec:D-delta-Delta} below.
+
+\subsection{Partial derivatives}
+
+\begin{wraptable}{o}{0.4\columnwidth}%
+\centering{}\vspace{-5.35ex}
+ \caption{{\small Default changes for partial derivatives}\protect\label{tab:Partial-deriv-defaults}}
+\abovetopsep=.5ex %
+\begin{tabular}{lr}
+\toprule
+{\small key} & {\small default}\tabularnewline
+\midrule
+{\small op-symbol} & {\small\texttt{\textbackslash partial}}\tabularnewline
+{\small left-delim} & {\small\texttt{\textbackslash left (}}\tabularnewline
+{\small right-delim} & {\small\texttt{\textbackslash right )}}\tabularnewline
+{\small subscr-nudge} & {\small\texttt{-6 mu}}\tabularnewline
+\bottomrule
+\end{tabular}\end{wraptable}%
+The default values given in Table~\ref{tab:Ordinary-derivatives},
+when they are relevant, apply to \emph{ordinary} derivatives. For
+partial derivatives, some defaults change. These are listed in Table~\ref{tab:Partial-deriv-defaults}.
+All other keys take the default values of Table~\ref{tab:Ordinary-derivatives}.
+
+The last three entries here reflect the use of subscripted parentheses
+with partial derivatives to indicate variables held constant, for
+instance in the Maxwell relations of thermodynamics, one of which
+is
+\[
+\diffp SV[T]=\diffp PT[V]
+\]
+
+
+\subsection{Setting your own defaults: \texttt{\textbackslash diffdef}}
+
+\label{subsec:diffdef}Versions 2 and later of the \texttt{diffcoeff}
+package provide a command, \texttt{\textbackslash diffdef}, that
+enables users to set their own defaults.\texttt{ }For example, if
+you wish to use upright `d's but not follow ISO's use of subscripted
+parentheses to indicate a point of evaluation, enter in the preamble
+of your document the command
+\begin{lyxcode}
+\textbackslash diffdef~\{\}~~~~
+
+~~\{~~~~~~
+
+~~~~op-symbol~~~~=~\textbackslash mathrm\{d\},~~~~
+
+~~~~op-order-sep~=~0~mu
+
+~~\}
+\end{lyxcode}
+\noindent Since a list of settings, like this one, is a comma-\emph{separated}
+list, no comma is required for the last entry. That entry is a consequence
+of the first: upright symbols do not require any extra separation
+between the `d' and the superscript in a higher order derivative.
+
+The other point to note is the empty pair of braces after the \texttt{\textbackslash diffdef}
+command. \emph{They matter}. Their emptiness is what determines that
+it is the \emph{default} values that are changed. If they contain
+some content, then that content provides a \emph{name} for the particular
+set of values in the following list. The \texttt{diffcoeff} package
+exploits this facility to cope with the wide variety of forms displayed
+in the Rogues' Gallery of §\ref{sec:Rogues'-gallery}.
+
+\subsubsection{Space before the differentiand}
+
+\label{subsec:A-final-flourish}\begin{wraptable}{o}{0.6\columnwidth}%
+\begin{centering}
+\caption{Keys for spacing the derivand}
+\medskip{}
+\begin{tabular}{lr}
+\toprule
+{\small key} & {\small default}\tabularnewline
+\midrule
+{\small derivand-sep} & {\small\texttt{3mu plus 1mu minus 2mu}}\tabularnewline
+{\small{*}-derivand-sep} & {\small\texttt{derivand-sep}}\tabularnewline
+{\small /-derivand-sep} & {\small\texttt{derivand-sep}}\tabularnewline
+{\small{*}/-derivand-sep} & {\small\texttt{ /-derivand-sep}}\tabularnewline
+\bottomrule
+\end{tabular}
+\par\end{centering}
+\end{wraptable}%
+The insertion of a small space before the differentiand is effected
+by the \verb`!` key inserted immediately before the differentiand
+argument in the \verb`\diff` command. You may wish to make the insertion
+of this space the \emph{default} behaviour. This is done by using
+the \verb`spaced` package option (which makes the \verb`!` switch
+now reverse this new default and put \emph{no} extra space before
+the derivand). The amount of space inserted is, by default, \verb`3mu plus 1mu minus 2mu`,
+meaning the space is generally $3$mu but can stretch to $4$mu or
+shrink to $1$mu as \TeX{} strives to fit content in a line or on the
+page.
+
+Perhaps this doesn't suit. You may want a fixed space here, with no
+stretch or shrink. The key to change is \verb`derivand-sep`. By default,
+this setting applies not only to the fraction form of derivative,
+but also to the slash form and to when the derivand is appended.
+
+If you feel a little less space should be used for slash derivatives,
+then the key to change is \verb`/-deriv-sep`. This changed value
+will also be used for an appended derivand in a slash derivative.
+
+Thus to meet both wishes you might put in the preamble of your document
+something like
+\begin{lyxcode}
+\textbackslash diffdef~\{\}~~~~
+
+~~\{~~~~~~
+
+~~~~derivand-sep~~~=~3~mu,~~~~
+
+~~~~/-derivand-sep~=~2~mu
+
+~~\}
+\end{lyxcode}
+This will insert a fixed space of $3$mu before the differentiand
+in both the numerator and when appended in the fraction form of derivative,
+and a fixed space of $2$mu in the slash form of derivative, both
+in the numerator and when appended.
+
+If you want a different spacing when the derivand is appended, the
+keys to change are \verb`*-derivand-sep` and \verb`*/-derivand-sep`.
+
+\paragraph{Selective spacing}
+
+I have treated the \verb`spaced` package option thus far as if it
+were an \verb`ON/OFF` switch and, indeed, the presence of the package
+option \verb`spaced` behaves as \verb`ON` and its absence as \verb`OFF`.
+Internally, however, \verb`spaced` is equivalent to \verb`spaced=1`
+and its absence to \verb`spaced=0`. Entering \verb`spaced=n` in
+the package option where \verb`n` is a positive integer is equivalent
+to entering \verb`spaced=1` (and hence to simply entering \verb`spaced`),
+but if \verb`n` is a negative integer, a new effect is produced.
+
+Entering \verb`spaced=-1` (or any negative integer) as a package
+option will insert a space (by default \verb`3mu plus 1mu minus 2mu`)
+before the differentiand provided the differentiand\emph{ is longer
+than a single token} but will insert no space before single-token
+differentiands. The switch \verb`!` reverses this behaviour.
+
+\subsection{Variant forms}
+
+For this package I needed a number of variant forms to illustrate
+the wide variety of ways in which derivatives are displayed. The \texttt{\textbackslash diffdef}
+command in which the first argument is \emph{filled} provides one
+half of the means of doing this. I've given the single-letter name
+\texttt{p} to the following settings:
+\begin{lyxcode}
+\textbackslash diffdef~\{~p~\}
+
+~~\{
+
+~~~~op-symbol~~~~=~\textbackslash partial~,
+
+~~~~left-delim~~~=~\textbackslash left~(~~,
+
+~~~~right-delim~~=~\textbackslash right~)~,
+
+~~~~subscr-nudge~=~-6~mu
+
+~~\}
+\end{lyxcode}
+The second half of providing variant forms is to insert this name,
+\texttt{p}, between dots (periods, full stops) as the \emph{first}
+argument of the \texttt{\textbackslash diff} command. Thus, repeating
+an example at the end of §\ref{subsec:Partial-appending},
+\begin{centred}
+\verb`\[ \diff.p.*{\frac PT}U[V] = \diff.p.*{\frac 1T}V[U] \]` $\Longrightarrow$
+\[ \diff.p.*{\frac PT}U[V] = \diff.p.*{\frac 1T}V[U] \]
+\end{centred}
+\noindent The effect is exactly the same as previously, when the \texttt{\textbackslash diffp}
+command was used. Indeed, \texttt{diffcoeff} identifies \texttt{\textbackslash diffp}
+with \texttt{\textbackslash diff.p.}:
+\begin{lyxcode}
+\textbackslash NewDocumentCommand~\textbackslash diffp~\{~\}~\{~\textbackslash diff.p.~\}
+\end{lyxcode}
+Note that this identification of \texttt{\textbackslash diffp} with
+\texttt{\textbackslash diff.p.} means there is no equivalent dot-delimited
+argument available for \texttt{\textbackslash diffp}. The \emph{dot-delimited
+argument applies only to} \texttt{\textbackslash diff}.
+
+For example, to illustrate the upright-d form of derivative, without
+changing the default math-italic form (which I prefer), one might
+enter in the preamble
+\begin{lyxcode}
+\textbackslash diffdef~\{~up~\}~
+
+~~\{
+
+~~~~op-symbol~~~~=~\textbackslash mathrm\{d\},
+
+~~~~op-order-sep~=~0~mu
+
+~~\}
+\end{lyxcode}
+Apart from the \emph{key = value} settings, the critical feature here
+is the name, \texttt{up} (which is at your discretion and could equally
+be \texttt{upright} or \texttt{roman} or even \texttt{Fred} if you
+so fancied). This ensures that the changed settings apply only to
+this particular variant and do not `infect' the overall defaults.
+To use this variant, all that is needed is to add the name, between
+dots, to the \texttt{\textbackslash diff} command:
+\begin{centred}
+\verb`\[ \diff.up.yx \]` $\Longrightarrow$ \[ \diff.up.yx. \]
+\end{centred}
+\noindent Each variant derivative inherits all the default values
+that it does not explicitly countermand. Thus a point of evaluation
+is indicated by a vertical rule which is the \texttt{diffcoeff} default\footnote{\noindent But not the ISO recommendation.}:
+\begin{centred}
+\noindent \verb`\[ \diff.up.*{\frac{F(x)}{G(x)}}x[x=1] \]` $\Longrightarrow$
+\[ \diff.up.*{\frac{F(x)}{G(x)}}x[x=1] \]
+\end{centred}
+\noindent Dot-delimited arguments must always be the \emph{first}
+argument of the \texttt{\textbackslash diff} command, even preceding
+an asterisk (star) as in this example.
+
+As another example, suppose for the subscripted indication of variables
+held constant in a partial derivative that you want to see what things
+look like if the subscript is \emph{not }nudged in towards the right
+parenthesis. In that case define a variant form
+\begin{lyxcode}
+\textbackslash diffdef~\{~padrift~\}~\{~subscr-nudge~=~0~mu~\}
+\end{lyxcode}
+I have attached a name, \texttt{padrift},\texttt{ }to this setting,
+\begin{centred}
+\verb`\[ \diff.padrift.Fx[y] \]` $\Longrightarrow$ \[ \diff.padrift.Fx[y] \]
+\end{centred}
+\noindent since, to my eye, the subscript seems detached from the
+expression it qualifies -- is it perhaps a typo? -- and `adrift
+in a sea of whitespace'. This is to be compared with the default \verb`\[ \diffp Fx[y] \]`
+$\Longrightarrow$ \[ \diffp Fx[y] \]
+
+\noindent where the subscript is tucked in close to the right parenthesis
+and is clearly connected to it and the expression it delimits.
+
+Some might want to distinguish notationally a point of evaluation
+for a partial derivative from variables held constant, perhaps using
+a vertical rule for the former and (the default) parentheses for the
+latter. It would suffice then to add to the preamble
+\begin{centred}
+\verb`\diffdef { pvrule } { op-symbol = \partial }`
+\end{centred}
+This gives
+\begin{centred}
+\verb`\[ \diff.pvrule.{F(x,y)}x[x=1] \]`$\Longrightarrow$ \[ \diff.pvrule.{F(x,y)}x[x=1] \]
+\end{centred}
+
+\subsubsection{Text-style and script-style derivatives}
+
+\label{subsec:Text-and-script-style}As noted earlier, the \texttt{diffcoeff}
+package assumes that derivatives of fraction-like form will be used
+in display-style expressions and that the slash form will be used
+for inline use (text style). This is the usual practice. But if one
+does want to use the fraction form in an inline expression, say \texttt{\textbackslash diffp
+ST{[}V{]}} displaying as $\diffp ST[V]$, then some tweaking of settings
+is necessary: the subscript is obviously too close to the right parenthesis
+and, to my eye, there is too much `elbowroom' between the derivative
+and the enclosing parentheses. Hence define
+
+\noindent %
+\noindent\begin{minipage}[t]{1\columnwidth}%
+\begin{lyxcode}
+\textbackslash diffdef~\{~ptxt~\}~
+
+~~\{
+
+~~~~op-symbol~~~~~~=~\textbackslash partial,
+
+~~~~denom-term-sep~=~1~mu~~~~,
+
+~~~~left-delim~~~~~=~\textbackslash left~(~,
+
+~~~~right-delim~~~~=~\textbackslash right~),
+
+~~~~elbowroom~~~~~~=~-2~mu~~~,
+
+~~~~subscr-nudge~~~=~-3~mu~~~
+
+~~\}
+\end{lyxcode}
+%
+\end{minipage}
+
+We can now write, for the same example, \texttt{\textbackslash diff.ptxt.ST{[}V{]}}
+which displays as $\diff.ptxt.ST[V]$, where the subscript is better
+positioned and there is a better fit between parentheses and derivative.
+
+\subsubsection{Derivatives from D, \textbackslash delta, \textbackslash Delta}
+
+\label{subsec:D-delta-Delta}In addition to \texttt{\textbackslash diff.p.},\texttt{
+diffcoeff} has three other \emph{built-in} variant forms that are
+commonly used: \texttt{\textbackslash diff.D.}, \texttt{\textbackslash diff.delta.},
+and \texttt{\textbackslash diff.Delta.}, corresponding to derivatives
+formed from $D$, $\delta$ and $\Delta$ respectively.
+
+In fluid dynamics the \emph{material }or \emph{substantive} derivative
+uses an uppercase $D$ in place of $d$. For example, the continuity
+equation is,
+\begin{centred}
+\verb`\[ \diff.D.{\rho}t=\diffp\rho t + \mathbf{u\cdot}\nabla\rho \]`$\Longrightarrow$
+\[ \diff.D.{\rho}t=\diffp\rho t + \mathbf{u\cdot}\nabla\rho \]
+\end{centred}
+\noindent where \texttt{\textbackslash diff.D.} produces the D-derivative.
+If you want upright `D's, then the \texttt{ISO} package option will
+produce that effect. Alternatively,
+\begin{lyxcode}
+\textbackslash diffdef~\{~Up~\}~
+
+~~\{
+
+~~~~op-symbol~~~~=~\textbackslash mathrm\{D\},
+
+~~~~op-order-sep~=~0~mu
+
+~~\}
+\end{lyxcode}
+\noindent provides a variant with upright `D's.
+
+In introductory calculus texts the simple $\delta$-derivative is
+used. This is achieved with the \texttt{\textbackslash diff.delta.}
+command: \verb`\[ \diff.delta.yx \]` $\Longrightarrow$ \[ \diff.delta.yx. \]
+
+\noindent This form also features in analytical mechanics (in the
+Rogues' Gallery, the final example at (\ref{eq:eg6})).
+
+Similarly, \texttt{\textbackslash diff.Delta.} forms a derivative
+from $\Delta$:
+\begin{centred}
+\verb`$ \diff.Delta.y/x $` $\Longrightarrow$ $ \diff.Delta.y/x $
+\end{centred}
+\noindent where the slash form of the derivative is shown in this
+instance.
+
+Higher order forms of these derivatives, points of evaluation, appending
+the differentiand with a star argument, all follow exactly as for
+the `pure' \texttt{\textbackslash diff} command.
+
+\paragraph{The commands \textbackslash Diff, \textbackslash diffd, \textbackslash Diffd}
+
+For compatibility with version 1 of \texttt{diffcoeff}, the commands
+\texttt{\textbackslash Diff}, \texttt{\textbackslash diffd} and
+\texttt{\textbackslash Diffd} are available and also produce the
+$D$, $\delta$ and $\Delta$ derivatives. Just as \texttt{\textbackslash diffp}
+is identified with \texttt{\textbackslash diff.p.} for partial derivatives,
+these commands are identified with \texttt{\textbackslash diff.D.},
+\texttt{\textbackslash diff.delta.}, and \texttt{\textbackslash diff.Delta}
+through the commands
+\begin{lyxcode}
+\textbackslash NewDocumentCommand~\textbackslash Diff~\{\}~~\{\textbackslash diff.D.\}
+
+\textbackslash NewDocumentCommand~\textbackslash diffd~\{\}~\{\textbackslash diff.delta.\}
+
+\textbackslash NewDocumentCommand~\textbackslash Diffd~\{\}~\{\textbackslash diff.Delta.\}
+\end{lyxcode}
+Unless one is using such variant forms frequently, it seems simpler
+to remember that they are available as dot-delimited arguments to
+the \texttt{\textbackslash diff} command, using the obvious name
+in each case, rather than having to remember the precise camel-case
+form of name of the \texttt{\textbackslash Diff}, \texttt{\textbackslash diffd}
+and \texttt{\textbackslash Diffd} commands.
+
+\subsection{The \texttt{.def} file}
+
+\label{subsec:The-.def-file}This mechanism of variant formation is
+how I have been able to illustrate in the Rogues' Gallery, §\ref{sec:Rogues'-gallery},
+the wide variety of different usages culled from the literature. But
+the thought arises: if a variant is to be used only once or twice,
+isn't this a lot of bother? Why not just construct the variant derivative
+`by hand' out of \texttt{\textbackslash frac} and \texttt{\textbackslash mskip}
+for example? The reason for making such definitions is that they can
+be transferred from document to document. For instance, definitions
+placed in the preamble can be copied to the preamble of another document.
+
+But that is hardly optimal. Instead, \texttt{diffcoeff} allows such
+definitions to be placed in a text file with the the extension \texttt{.def}
+and a name of your choosing. For the present document the file is
+called \texttt{diffcoeff-doc.def} and should have been placed alongside
+the \verb`.sty` file in your \TeX{} distribution. The contents of
+this file can be seen at §To use these definitions, the \texttt{diffcoeff}
+package is called with the command
+\begin{lyxcode}
+\textbackslash usepackage{[}def-file=diffcoeff-doc{]}\{diffcoeff\}{[}=v4{]}
+\end{lyxcode}
+But even this process still means copying a definition file from directory
+to directory as one works on different documents. The solution is
+to make a definition file available for \emph{all} documents and the
+way to do that is by placing it in the texmf tree, preferably not
+the one created by your \TeX{} distribution (perhaps MiKTeX or TexLive),
+but your own \emph{personal} texmf tree.
+
+\texttt{\vspace{2ex}
+ }
+
+\noindent %
+\noindent\fbox{\begin{minipage}[t]{1\linewidth - 2\fboxsep - 2\fboxrule}%
+\textbf{Personal texmf tree? }
+
+This is a directory for `waifs and strays' of the \TeX{} system that
+are not included in standard distributions like MiK\TeX{} or \TeX Live.
+For instance, it is the place for personal packages designed for your
+own particular circumstances or preferences, and is structured like
+the standard MiK\TeX{} or \TeX Live hierarchy but placed in another
+location so that there is no chance of its being overwritten when
+MiK\TeX{} or \TeX Live are updated. However, those distributions need
+to be alerted to its existence. For MiK\TeX , open the MiK\TeX{} console,
+click on \textsf{Settings} and then the \textsf{Directories} tab.
+Click the \textsf{+} button and navigate to your personal texmf tree
+to add it to the MiK\TeX{} search path. Having added it, you will then
+need to refresh the filename database by clicking on the \textsf{Tasks}
+menu and selecting the obvious entry. I am not familiar with \TeX Live
+but presume an analogous process will apply there.%
+\end{minipage}}
+
+\medskip{}
+
+\noindent Provided your \LaTeX{} distribution knows about your personal
+texmf tree, then a \texttt{.def} file placed within it, will be accessible
+to all documents.
+
+\subsubsection{Structure of the \texttt{.def} file}
+
+The best way to see what a \texttt{.def} file looks like is to view
+\texttt{diffcoeff-doc.def }in a text editor.
+
+If you want your variant definitions to use defaults different from
+those supplied with the \texttt{diffcoeff} package, then the first
+definition in the \texttt{.def} file should be the one setting the
+new defaults, with an \emph{empty} first argument to the \texttt{\textbackslash diffdef}
+command:
+\begin{lyxcode}
+\textbackslash diffdef~\{\}~~~~
+
+~~\{~~~~~~
+
+~~~~key-1~=~value-1,~~~~
+
+~~~~key-2~=~value-2,
+
+~~~~...
+
+~~~~key-n~=~value-n
+
+~~\}
+\end{lyxcode}
+The key-value list is a comma-separated list; hence the last entry
+doesn't need to end with a comma. Nudge and separation values need
+to include the unit, \texttt{mu}; a numerical value alone will result
+in error.\texttt{ }Because a \texttt{.def} file\texttt{ }is a \LaTeX{}
+file, comments need to start with a \texttt{\%} character.
+
+\subsubsection{\texttt{diffcoeff.def}}
+
+Note that if the \texttt{diffcoeff} package is invoked without an
+explicit \texttt{def-file= <filename>} option statement, as here,
+\begin{lyxcode}
+\textbackslash usepackage\{diffcoeff\}{[}=v4{]}
+\end{lyxcode}
+then it will search in the texmf tree (the \LaTeX{} distribution's
+and your personal one) and the document directory for a file \texttt{diffcoeff.def}
+and if found will load that. This file should contain definitions
+of those variants you are likely to use in multiple documents. In
+my personal texmf tree (which I've put at \texttt{E:\textbackslash texmf\textbackslash}
+on a Windows machine) the file \texttt{diffcoeff.def} is located in
+the directory \texttt{E:\textbackslash texmf\textbackslash tex\textbackslash latex\textbackslash diffcoeff\textbackslash}.
+(The backslashes are replaced by forward slashes on linux machines.)
+
+Variants likely to be of value only to a specific document should
+be added to the preamble of that document. Alternatively, they could
+be added to \texttt{diffcoeff.def} but that added-to file saved to
+the document directory under a \emph{different} name -- e.g. I've
+saved the variants required for the present document under the name
+\texttt{diffcoeff-doc.def}. Many of these variants were created solely
+to illustrate points in the present document and I have no intention
+of using them in my own work. Consequently my \texttt{diffcoeff.def}
+file is smaller, containing only a selection from \texttt{diffcoeff-doc.def}.
+
+\section{Differentials in integrals, etc.}
+
+Forms like $dx$ occur not only in derivatives but also in other contexts,\footnote{I thank \noun{Sergio Callegari} for drawing my attention to this rather
+obvious point, and its omission from previous versions of \texttt{diffcoeff}.} for example, the expression for a total differential like
+\[
+\dl P=\diffp Px\dl x+\diffp Py\dl y+\diffp Pz\dl z,
+\]
+or an integral like $\int\sin x\dl2x$, or a multi-variable integral
+like
+\[
+\iiintop_{-\infty}^{\infty}V(x,y,z)\dl3x\dl2y\dl2z.
+\]
+Surely we want the `d's in these expressions to correspond to their
+form (upright or math italic) in derivatives? If, for instance, the
+\texttt{ISO} package option has been set, one doesn't want to be writing
+\texttt{\textbackslash mathrm\{d\}} in every (or indeed any) integral.
+To this end, \texttt{diffcoeff} provides a command \texttt{\textbackslash dl}
+to write the `d' in a differential in a manner consistent with the
+default form used in derivatives. In the present document, the default
+form is math-italic and so
+\begin{centred}
+\verb`$ \dl x $` $\Longrightarrow$ $ \dl x. $
+\end{centred}
+\noindent It is also possible\footnote{\noindent From version 3.1 of \texttt{diffcoeff}; version 3.0 of the
+package produced a \LaTeX{} error.} to use the command before, for instance, \texttt{\textbackslash mathbf\{x\}}
+or \texttt{\textbackslash vec\{x\}}:
+\begin{centred}
+\verb`$ \dl \vec{x} $` $\Longrightarrow$ $ \dl \vec{x} $,~~~~\verb`$ \dl \mathbf{x} $`
+$\Longrightarrow$$ \dl \mathbf{x}. $
+\end{centred}
+
+\subsection{Options}
+
+There are two options available with the differential command.
+
+The first is the dotted name option discussed in §\ref{sec:Changing-defaults}.
+Thus, to illustrate a differential with an upright `d', write
+\begin{centred}
+\verb`$ \dl.up.x $` $\Longrightarrow$ $ \dl.up.x. $
+\end{centred}
+\noindent This presumes that a variant derivative with upright `d's
+has been defined and the definition is available, either in the preamble
+or in an accessible \texttt{.def} file, as discussed in the previous
+section. Alternatively, if you have defined your default derivative
+to use upright `d's (perhaps with the \texttt{ISO} option) then
+\texttt{\textbackslash dl} alone will suffice to produce an upright
+`d'.
+
+\subsubsection{Partial differential}
+
+\label{subsec:Partial-differential}Since the variant \texttt{\textbackslash diff.p.}
+is defined in \texttt{diffcoeff4.sty} itself, \texttt{\textbackslash dl.p.}
+is always available and at 6 keystrokes offers a slightly shorter
+way of writing \texttt{\textbackslash partial} (8 keystrokes). However,
+there are sufficient contexts where expressions like \verb`\partial_x`
+are used, perhaps as a shortcut for a partial derivative, for it to
+be worthwhile to define an appropriate command for this variant. From
+version 4.0, \texttt{diffcoeff} therefore provides \verb`\dlp`, defined
+by
+\begin{lyxcode}
+\textbackslash NewDocumentCommand~\textbackslash dlp~\{\}~\{~\textbackslash dl.p.~\}
+\end{lyxcode}
+Thus, for instance, \verb`$ \dlp_x $` $\Longrightarrow$ $ \dlp_x $.
+
+\subsubsection{Spacing}
+
+This second option inserts spacing before the `d'. If \texttt{\textbackslash dl}
+is followed by a digit (0, 1, 2, ..., 9) it will insert a horizontal
+space of that number of mu before the `d'; (\texttt{\textbackslash dl0x}
+has the same effect as \texttt{\textbackslash dl x}.)\texttt{ }Thus,
+an alternative way of writing an example in Chapter~18 of \emph{The
+\TeX book} is
+\begin{centred}
+\verb`$ \dl x\dl3y=r\dl3r\dl3\theta $` $\Longrightarrow$ $ \dl x\dl3y=r\dl3r\dl3\theta. $
+\end{centred}
+\noindent To my eye this is too much space; I prefer
+\begin{centred}
+\noindent \verb`$ \dl x\dl2y=r\dl2r\dl2\theta $` $\Longrightarrow$
+$ \dl x\dl2y=r\dl2r\dl2\theta. $
+\end{centred}
+\noindent I used \texttt{\textbackslash dl3x\textbackslash dl2y\textbackslash dl2z}
+when writing the triple integral above, \emph{no} extra spacing when
+writing the total differential expression, since the differentials
+are already distinct from the preceding fraction forms $\diff.ptxt.Px$
+etc., and \texttt{\textbackslash dl2x} when writing $\int\sin x\dl2x$.
+
+Note that only \emph{one} digit can be used. If two are used, as here,
+\verb`$ \dl20x $` $\Longrightarrow$ $ \dl20x $, the effect is unlikely
+to be what is wanted.
+
+From version 3.2 of \texttt{diffcoeff} it is possible to also add
+\emph{negative} space before the differential, which might be useful
+in special contexts, perhaps to construct a symbol:
+\begin{centred}
+\verb`$ /\dl-9x $` $\Longrightarrow$ $ /\dl-9x. $
+\end{centred}
+\noindent For negative space before the differential, add a minus
+sign before the (single) digit.
+
+The spacing digit option \emph{follows} the dot-delimited name option.
+For example, earlier, in the denominator of a mixed partial derivative,
+I have used what is effectively \texttt{\textbackslash dlp x\textbackslash dlp2y\textbackslash dlp2z},
+and the variation to that spacing when a higher-order differentiation
+occurs:
+\begin{centred}
+\verb`$ \dlp x^2\dlp1y\dlp2z $` $\Longrightarrow$ $ \dlp x^2\dlp1y\dlp2z. $
+\end{centred}
+
+\subsection{Rationale}
+
+Version 1 of the \texttt{diffcoeff} package arose from a need to simplify
+the parsing of differential coefficients for another program I was
+working on which was struggling to `read' all the possible permutations
+of \texttt{\textbackslash frac} or \texttt{\textbackslash tfrac}
+or \texttt{\textbackslash dfrac} or slash forms of the derivative,
+of \texttt{d} or \texttt{\textbackslash mathrm\{d\}} or \texttt{\textbackslash partial}
+or \texttt{D} or \texttt{\textbackslash mathrm\{D\}} or \texttt{\textbackslash nabla},\texttt{
+}and of points of evaluation delimited by vertical rules or parentheses.\texttt{ }Although
+regular expressions coped with most of these cases, it was \emph{messy}.
+
+There are other packages which have commands for the derivative (e.g.,
+\texttt{bropd}, \texttt{commath},\texttt{ esdiff}, \texttt{physymb})
+but none quite gave what I wanted -- although they probably cope
+with most users' needs. \texttt{esdiff} came closest to what I was
+seeking but failed when it came to combining algebraic and numeric
+orders of differentation in a mixed partial derivative (and made heavier
+use of braces than I liked in that case too).
+
+\subsubsection{\texttt{diffcoeff.sty}}
+
+I have tried to make using \texttt{diffcoeff} intuitive. Looking at
+the other packages mentioned, writing something like \texttt{\textbackslash diff{[}n{]}\{f\}\{x\}}
+(which can be trimmed to \texttt{\textbackslash diff{[}n{]}fx} for
+single-token arguments) seems `natural' -- only \texttt{physymb}
+deviates from the pattern.
+\begin{itemize}
+\item It seems consistent with this pattern to use a comma list for specifying
+the orders of differentiation of the variables in a higher order mixed
+partial derivative (and its suppression when all are of order 1)
+\item Having specified the orders, surely the program itself should calculate
+the overall order? \texttt{esdiff} does this for numerical orders;
+\texttt{diffcoeff} does this for both numeric and algebraic orders,
+\end{itemize}
+\begin{centred}
+\verb`\[ \diffp[m-(k+1),m+(k-1)]{F(x,y,z)}{x,y,z} \]`
+\end{centred}
+\begin{example}
+$\Longrightarrow$ \[ \diffp[m-(k+1),m+(k-1)]{F(x,y,z)}{x,y,z} \]
+\end{example}
+
+\begin{itemize}
+\item and where it fails either to calculate at all or to present the result
+in a preferred form, offers the order-override option:
+\end{itemize}
+\begin{centred}
+\verb`\[ \diffp[m+(k+1),m+(k-1)][2(m+k+1)]{F(x,y,z,w)}{x,y,z,w} \]`
+\end{centred}
+\begin{example}
+$\Longrightarrow$ \[ \diffp[m+(k+1),m+(k-1)][2(m+k+1)]{F(x,y,z,w)}{x,y,z,w} \]
+\end{example}
+
+\begin{itemize}
+\item I wished to avoid the unnecessary writing of superscripts, subscripts
+and brace pairs. In the examples just given, no superscript tokens
+\texttt{\textasciicircum} are written by the user despite the higher-order
+differentiation in $x$ and $y$, and only the two inescapable brace
+pairs are required.
+\item The use of a comma list for the second mandatory argument in a partial
+derivative -- the list of variables -- makes differentiations in
+super- or subscripted symbols (as occurs prolifically in tensor calculus)
+easier to both write and read by avoiding unnecessary brace pairs.
+\end{itemize}
+\begin{centred}
+\verb`\[ \diffp{A_i}{ x^j,x^k } \]` $\Longrightarrow$ \[ \diffp{A_i}{ x^j,x^k } \]
+\end{centred}
+\begin{itemize}
+\item Should a point of evaluation or variables held constant be considered
+part of the derivative? Thermodynamic usage was decisive here. The
+partial derivative alone is ambiguous -- the parentheses and subscript
+are essential to understand what is being stated:
+\[
+\diffp ST[V]
+\]
+Hence provision for these extra elements was included in the derivative
+commands.
+\item Given the position of the subscripted symbol in the displayed derivative,
+it's positioning as the \emph{final} argument in the derivative command
+feels inevitable.
+\item Version 1 of \texttt{diffcoeff} used braces for this argument to avoid
+any possible confusion with a following mathematical expression. That
+use of braces is now deprecated in \texttt{xparse}, has been deprecated
+in \texttt{diffcoeff} since version 2, and is no longer compatible
+with version 4. Later versions of \texttt{diffcoeff} use square brackets,
+conforming with familiar \LaTeX{} practice. The only special remembering
+needed is avoidance of a space before the argument -- and if it does
+slip in, it won't cause a \LaTeX{} error. It will be treated as part
+of a following mathematical expression and displayed as such.
+\item The star option also prompted the question: is it needed? After all,
+one can always leave the first mandatory argument empty and append
+the differentiand `by hand'. But once the provision for points of
+evaluation or variables held constant was incorporated into the derivative
+commands, the star option became the simplest way of handling appended
+differentiands since the parentheses for a variable held constant
+must wrap around the differential operator \emph{and} differentiand.
+Once available, it provides a simple way of switching between (and
+comparing) the appearance of differentiand-in-the-numerator and differentiand-appended.
+\item The slash option was added to the derivative commands after seeing
+how widely such forms are used in texts at all levels. The placement
+of the slash, between the two mandatory arguments, seems more-or-less
+self-evident.
+\item A later option added to \texttt{\textbackslash diff} (and not present
+in version 1) was the dot-delimited name option. Once \texttt{xtemplate}
+was used as the basis of the package this seemed the most straightforward
+way of making available, ready to hand, the wealth of variants that
+\texttt{xtemplate} makes possible. (It's just a pity that the second
+dot is needed, and a single-dot naming scheme can't be used, but \texttt{xparse}
+forces my hand here.)
+\item Having added the dot-delimited name option, the use of a \texttt{def}
+file to store variants or preferred defaults is more-or-less forced,
+otherwise one is faced with making these definitions anew for each
+new document (or locating a previous document and copying from that
+to the new one).
+\item To handle possible differences between display-style and text-style
+(and script-style) derivatives (see §\ref{subsec:Text-and-script-style})
+I considered using \TeX 's \texttt{\textbackslash mathchoice} command.
+This command takes four arguments, corresponding to display-, text-,
+script- and scriptscript-styles and would require forming four derivatives
+each time a derivative is used, `just in case'. In fact fraction-form
+derivatives are used overwhelmingly in display-style expressions,
+the slash form being used for inline use. Given the ease of defining
+a fraction-form variant for text-style use, and the rareness of such
+use, employing variants seemed the way to go. It is the one adopted
+and avoids the computational burden associated with the use of \texttt{\textbackslash mathchoice}.
+\item After version 2 of the package appeared on CTAN, it was pointed out
+to me that there was an issue of consistency between the form of `d'
+used in a derivative (upright or math-italic) and the form used in
+an integral. I had overlooked this matter completely and in version
+3 of the package remedied the omission with the differential command
+\texttt{\textbackslash dl}. A spacing option for \texttt{\textbackslash dl}
+was almost inevitable. From version 4 the partial analogue \texttt{\textbackslash dlp}
+has been added.
+\item Space before the differentiand was requested by a user. Once considered
+it became clear that there are (at least) two ways of thinking of
+a derivative: as $\diff y/x$, a ratio of differentials where $\dl y$
+is a unit and it makes no sense to insert space between the `d'
+and the `y', and as
+\[
+\diff!{F(x)}x
+\]
+where the function $F(x)$ is being operated on by $\diff{}/x$ and
+it is natural to insert space between the `d' and the `F'. With
+that realisation came the need for a simple switch-like package option
+(\verb`spaced`) to turn spacing on or off, and a switch-like argument
+(\verb`!`) to countermand the package option in exceptional cases
+(version 4).
+\end{itemize}
+
+\section{Reference}
+
+\subsection{Commands}
+\begin{description}
+\item [{\texttt{\textbackslash diff}}] arguments (all optional unless
+otherwise indicated):
+\begin{enumerate}
+\item .\emph{name}. for the given settings
+\item {*} append-differentiand switch
+\item {[}\emph{order}{]} or {[}\emph{comma-list of orders}{]} of differentiation
+\item {[}\emph{order-override}{]}
+\item ! countermand before-differentiand spacing of the \verb`spaced` package
+option
+\item \{\emph{differentiand}\} (mandatory)
+\item / slash-form switch
+\item \{\emph{comma list of differentiation variables}\} (mandatory)
+\item {[}\emph{point of evaluation/variables held constant}{]}
+\end{enumerate}
+\item [{\texttt{\textbackslash diffdef}}] arguments (all mandatory):
+\begin{enumerate}
+\item \{\emph{name}\}
+\item \{\emph{key=value comma list}\}
+\end{enumerate}
+\item [{\texttt{\textbackslash diffp}}] \texttt{= \textbackslash diff.p.}
+\item [{\texttt{\textbackslash dl}}] arguments (all optional):
+\begin{enumerate}
+\item .\emph{name}. (as for \texttt{\textbackslash diff})
+\item \emph{minus sign} (optional, use only if negative spacing before the
+`d' is wanted)
+\item \emph{digit} (insert spacing of this number of mu before the `d')
+\end{enumerate}
+\item [{\texttt{\textbackslash dpl}}] \texttt{= \textbackslash dl.p.}
+\item [{\texttt{\textbackslash negmu}}] insert a $-1$ mu space
+\item [{\texttt{\textbackslash nilmu}}] insert a $0$ mu space
+\item [{\texttt{\textbackslash onemu}}] insert a $1$ mu space
+\item [{\texttt{\textbackslash twomu}}] insert a $2$ mu space
+\end{description}
+Deprecated (why try remembering the special names when the forms on
+the right are self-explanatory):
+\begin{description}
+\item [{\texttt{\textbackslash Diff}}] preferred form: \texttt{\textbackslash diff.D.}
+\item [{\texttt{\textbackslash diffd}}] preferred form \texttt{\textbackslash diff.delta.}
+\item [{\texttt{\textbackslash Diffd}}] preferred form\texttt{ \textbackslash diff.Delta.}
+\end{description}
+
+\subsection{The file \texttt{diffcoeff-doc.def}}
+
+\label{sec:diffcoeff-doc.def}The file \verb`diffcoeff-doc.def` contains
+the following definitions:
+\begin{verbatim}
+%%%%%%%%%% ordinary %%%%%%%%%%
+% ( ) for pt of eval.
+\diffdef { paren }
+ {
+ left-delim = \left ( ,
+ right-delim = \right ),
+ subscr-nudge = -6 mu
+ }
+
+% upright
+\diffdef { up }
+ {
+ op-symbol = \mathrm{d},
+ op-order-sep = 0 mu
+ }
+
+\diffdef { Up }
+ {
+ op-symbol = \mathrm{D},
+ op-order-sep = 0 mu
+ }
+
+% wrap long vars: (d longvar)
+\diffdef { wrapall } {long-var-wrap = (dv)}
+
+% nabla in numerator, d in denominator
+\diffdef { nabla }
+ {
+ op-symbol = \nabla,diffcoeff-doc.def
+ op-symbol-alt = d
+ }
+
+% align op left; no italic nudge
+\diffdef { left }
+ {
+ *-op-left = true,
+ *-italic-nudge = 0 mu
+ }
+
+% slash-form: vrule for pt of eval
+\diffdef { svrule }
+ {
+ /-left-delim = ,
+ /-right-delim = |
+ }
+
+%%%%%%%%%% partial %%%%%%%%%%
+% partial, vrule for pt of eval.
+\diffdef { pvrule } { op-symbol = \partial }
+
+% partial, no subscr nudge (adrift in a sea of white space)
+\diffdef { padrift }
+ {
+ op-symbol = \partial,
+ left-delim = \left ( ,
+ right-delim = \right ),
+ subscr-nudge = 0 mu
+ }
+
+% partial, [ ] for pt of eval.
+\diffdef { psqbra }
+ {
+ op-symbol = \partial,
+ left-delim = \left [ ,
+ right-delim = \right ],
+ subscr-nudge = 0 mu
+ }
+
+% Delta as partial deriv.
+\diffdef { pDelta }
+ {
+ op-symbol = \Delta ,
+ op-order-sep = 0 mu ,
+ left-delim = \left ( ,
+ right-delim = \right ),
+ subscr-nudge = -6 mu
+ }
+
+% align op left; italic nudge
+\diffdef { pleft }
+ {
+ op-symbol = \partial,
+ *-op-left = true ,
+ *-italic-nudge = 3 mu ,
+ left-delim = \left ( ,
+ right-delim = \right ),
+ subscr-nudge = -3 mu
+ }
+
+% partial, textstyle
+\diffdef { ptxt }
+ {
+ op-symbol = \partial,
+ denom-term-sep = 1 mu ,
+ left-delim = \left ( ,
+ right-delim = \right ),
+ elbowroom = -2 mu ,
+ subscr-nudge = -3 mu
+ }
+
+% partial, wide sep of terms
+\diffdef { pwide }
+ {
+ op-symbol = \partial,
+ denom-term-sep = 3 mu ,
+ /-denom-term-sep = 3 mu ,
+ left-delim = \left ( ,
+ right-delim = \right ),
+ subscr-nudge = -6 mu
+ }
+
+ %%%%%%%%%% differential %%%%%%%%%%
+ \diffdef { up }
+ { op-symbol = \mathrm{d} }
+\end{verbatim}
+
+
+\subsection{Version comparison}
+
+\label{sec:Version-comparison}Unlike version 1, version 2 and later
+are built on the the \texttt{xtemplate} package which makes certain
+facilities available which it would be silly not to exploit. Hence
+the coding in the later versions is completely different and there
+are consequences.
+\begin{enumerate}
+\item From version 2.0
+\begin{enumerate}
+\item The \texttt{\textbackslash diffset} command, formerly used to tweak
+the display of derivatives, has been superseded by the \texttt{\textbackslash diffdef}
+command. \texttt{\textbackslash diffset} now sends a message warning
+of its obsolescence to the terminal and \LaTeX{} log but is otherwise
+functionless. It should not interfere with the compilation of a document
+but any intended fine-tuning of the display by means of the \texttt{\textbackslash diffset}
+command\texttt{ }will not eventuate. The warning message is: \texttt{Obsolete
+command: \textbackslash diffset has been superseded by the \textbackslash diffdef
+command.} \texttt{See the diffcoeff} \texttt{doc\-umentation for
+further information.} The \texttt{\textbackslash diffdef} command
+is discussed in §\ref{subsec:diffdef};
+\item The optional trailing argument used to indicate a point of evaluation
+or variables held constant is now delimited by square brackets, \texttt{{[}}
+and \texttt{{]}}, as other optional arguments are. For compatibility
+with version 1, versions 2 and 3 still accepted braces to delimit
+this argument but from version 4 of \texttt{diffcoeff} only the square-bracket
+delimited argument is accepted. (The use of braces around \emph{optional}
+arguments while once accepted is now deprecated in \texttt{xparse}
+on which \texttt{diffcoeff} depends);
+\item The commands \texttt{\textbackslash Diff}, \texttt{\textbackslash diffd}
+and \texttt{\textbackslash Diffd} used to construct derivatives from
+$D$, $\delta$ and $\Delta$ in version 1, are still available but
+deprecated. A new optional argument in the \texttt{\textbackslash diff}
+command offers these and a host of other possibilities and is now
+the preferred method of forming such variants; see §\ref{subsec:D-delta-Delta}.
+\end{enumerate}
+\item Version 3.0
+\begin{enumerate}
+\item adds a command, \texttt{\textbackslash dl} (from \emph{d}ifferentia\emph{l})
+to write differentials like $dx$ that occur in integrals and in other
+contexts in a manner consistent with the form used in derivatives.
+After all, if one is using upright `d's in derivatives, similarly
+upright `d's should occur in these other contexts;\footnote{This rather obvious lack in version 2 was pointed out to me by Sergio
+Callegari.}
+\item provides some simple spacing commands that can be useful for tweaking
+standard spacing.
+\end{enumerate}
+\item Version 3.1 enables the differential command to be used before forms
+like \texttt{\textbackslash vec\{x\}} (an overlooked possibility
+causing an error in earlier versions).
+\item Version 3.2
+\begin{enumerate}
+\item allows negative spacing before the differential command \texttt{\textbackslash dl};
+\item fixes a bug in which an ordinary derivative as the differentiand of
+a partial derivative displayed as a partial derivativ\texttt{diffcoeff-doc.def}e.
+It now displays, as it should, as an ordinary derivative.
+\end{enumerate}
+\item Version 4.0
+\begin{enumerate}
+\item enables the insertion of a small space before the differentiand, either
+as the default behaviour (package option \verb`spaced`) or at explicit
+request (argument \verb`!` of the \verb`\diff` command); see §\ref{subsec:Spacing-before-derivand}.
+\item prevents the ligature $df$ that marred previous versions; this is
+now rendered $\dl f$.
+\item offers the document command \verb`\dlp` for the \emph{partial} differential;
+see §\ref{subsec:Partial-differential};
+\item no longer accepts \emph{the braced form} of the\emph{ }trailing optional
+argument specifying a point of evaluation or (for partial derivatives)
+variables held constant. This was a relic from version 1 of \texttt{diffcoeff},
+and has been deprecated since version 2.
+\end{enumerate}
+\item Version 4.1
+\begin{enumerate}
+\item changes the code for the \verb`long-var-wrap` setting to avoid a
+problem arising from a change in \verb`xtemplate`;
+\item improves spacing between operator and variable in \emph{denominators}
+of differential coefficients (e.g. prevents ligatures).
+\end{enumerate}
+\item Version 4.2
+\begin{enumerate}
+\item see the announcement at the start of this document.
+\end{enumerate}
+\end{enumerate}
+
+\end{document}
diff --git a/macros/latex/contrib/diffcoeff/diffcoeff5.def b/macros/latex/contrib/diffcoeff/diffcoeff5.def
new file mode 100644
index 0000000000..d61028a4a0
--- /dev/null
+++ b/macros/latex/contrib/diffcoeff/diffcoeff5.def
@@ -0,0 +1,136 @@
+% file `diffcoef5.def'
+% definitions for variant forms
+% 2023/01/03
+% Andrew Parsloe ajparsloe@gmail.com
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% material derivative
+\difdef { f, s } { D }
+ { op-symbol = \mathrm{D} }
+% math italic
+\difdef { f, s, c } { d' }
+ {
+ op-symbol = d,
+ op-order-nudge = 1 mu
+ }
+\difdef { f, s, c } { D' }
+ {
+ op-symbol = D,
+ op-order-nudge = 1 mu
+ }
+% Greek
+\difdef { f, s } { gd }
+ { op-symbol = \delta }
+\difdef { f, s } { gD }
+ { op-symbol = \Delta }
+% spaceless appending
+\difdef { f, fp } { *0 }
+ {
+ *derivand-sep = 0 mu ,
+ outer-Ldelim = \mleft ( ,
+ outer-Rdelim = \mright )
+ }
+% tfrac, nonscalable
+\difdef { f, fp } { t }
+ {
+ style = tfrac ,
+ derivand-sep = 1 mu plus 1 mu minus 1 mu,
+ multi-term-sep = 0 mu ,
+ term-sep-adjust = 0 mu ,
+ lvwrap-sup-nudge = 0 mu ,
+ outer-Ldelim = \bigl (,
+ outer-Rdelim = \bigr ),
+ elbowroom = -2 mu ,
+ sub-nudge = -3 mu
+ }
+% slash fractions: 0=scalable,
+% 1=big, 2=Big, 3=bigg, 4=Bigg
+% but > 1 gives eyesores
+\difdef { s, sp } { 0 }
+ {
+ style = auto ,
+ outer-Ldelim = \left [ ,
+ outer-Rdelim = \right ] ,
+ sub-nudge = 0 mu ,
+ *inner-Ldelim = \mleft ( ,
+ *inner-Rdelim = \mright ),
+ *outer-Ldelim = \left [ ,
+ *outer-Rdelim = \right ]
+ }
+\difdef { s, sp } { 1 }
+ {
+ style = big ,
+ outer-Ldelim = \bigl (,
+ outer-Rdelim = \bigr ),
+ sub-nudge = -2.5 mu,
+ *inner-Ldelim = \bigl (,
+ *inner-Rdelim = \bigr ),
+ *outer-Ldelim = \bigl [,
+ *outer-Rdelim = \bigr ]
+ }
+% vrule point of evaluation
+\difdef { f, fp, s, sp } { | }
+ {
+ outer-Ldelim = \left . ,
+ outer-Rdelim = \right |,
+ sub-nudge = 0 mu
+ }
+% sq. bracket pt of eval.
+\difdef { f, fp, s, sp } { ] }
+ {
+ outer-Ldelim = \left [ ,
+ outer-Rdelim = \right ],
+ elbowroom = 1 mu,
+ sub-nudge = 0 mu
+ }
+% long var wrap
+\difdef { f, fp } { (dv) }
+ { long-var-wrap = (dv) }
+\difdef { f, fp } { dv }
+ { long-var-wrap = dv }
+% compact, D operator
+\difdef { c } { D }
+ {
+ op-symbol = \mathrm{D},
+ op-sub-nudge = -2mu
+ }
+\difdef { c } { D' }
+ {
+ op-symbol = D,
+ op-sub-nudge = -2mu
+ }
+% bold
+\difdef { c } { bD }
+ {
+ op-symbol = \mathbf{D},
+ op-sub-nudge = -2mu
+ }
+% differential style
+\difdef { c, cp } { dl }
+ { style = dl }
+%%%%%%%%%%% differential %%%%%%%%%%
+% partial
+\difdef { l } { p }
+ { op-symbol = \partial }
+% bold
+\difdef { l } { b }
+ { op-symbol = \mathrm{d}\mathbf }
+
+% line elements: Pythagoras
+\difdef { l } { + }
+ {
+ multi-term-sep = 0 mu +,
+ term-sep-adjust = 0 mu ,
+ outer-Ldelim =
+ }
+% Minkowski
+\difdef { l } { - }
+ {
+ multi-term-sep = 0 mu -,
+ term-sep-adjust = 0 mu ,
+ outer-Ldelim =
+ }
+%%%%%%%%%% jacobian %%%%%%%%%%
+% slash fraction
+\difdef { j } { s }
+ { style = / } \ No newline at end of file
diff --git a/macros/latex/contrib/pythonimmediate/README b/macros/latex/contrib/pythonimmediate/README
index c164e2ca9b..be4026bf43 100644
--- a/macros/latex/contrib/pythonimmediate/README
+++ b/macros/latex/contrib/pythonimmediate/README
@@ -8,7 +8,7 @@ Report bugs at https://github.com/user202729/TeXlib
========
-Copyright 2022 user202729
+Copyright 2022-2023 user202729
This work may be distributed and/or modified under the conditions of the
LaTeX Project Public License (LPPL), either version 1.3c of this license or
@@ -21,4 +21,4 @@ This work has the LPPL maintenance status `maintained'.
The Current Maintainer of this work is user202729.
-This work consists of the files pythonimmediate.sty, pythonimmediate_script_pytotex.py, pythonimmediate_script_textopy.py.
+This work consists of the files pythonimmediate.sty.
diff --git a/macros/latex/contrib/pythonimmediate/pythonimmediate.pdf b/macros/latex/contrib/pythonimmediate/pythonimmediate.pdf
index 67bb6f1259..c9bf716c59 100644
--- a/macros/latex/contrib/pythonimmediate/pythonimmediate.pdf
+++ b/macros/latex/contrib/pythonimmediate/pythonimmediate.pdf
Binary files differ
diff --git a/macros/latex/contrib/pythonimmediate/pythonimmediate.sty b/macros/latex/contrib/pythonimmediate/pythonimmediate.sty
index 6ed72780bf..5a92dd88a6 100644
--- a/macros/latex/contrib/pythonimmediate/pythonimmediate.sty
+++ b/macros/latex/contrib/pythonimmediate/pythonimmediate.sty
@@ -1,5 +1,5 @@
% File: pythonimmediate.sty
-% Copyright 2022 user202729
+% Copyright 2022-2023 user202729
%
% This work may be distributed and/or modified under the conditions of the
% LaTeX Project Public License (LPPL), either version 1.3c of this license or
@@ -12,7 +12,7 @@
%
% The Current Maintainer of this work is user202729.
-\ProvidesExplPackage{pythonimmediate}{2022/12/23}{0.0.0}{Library to run Python code}
+\ProvidesExplPackage{pythonimmediate}{2023/01/09}{0.1.0}{Library to run Python code}
\RequirePackage{saveenv}
\RequirePackage{currfile}
@@ -29,110 +29,104 @@
\cs_generate_variant:Nn \str_if_in:nnF {VnF}
\cs_generate_variant:Nn \tl_build_put_right:Nn {NV}
-%\bench before~rescan.
-%\bench after~rescan.
+% some old commands e.g. \$, \^, \_, \~ require \set@display@protect to be robust.
+% ~ needs to be redefined directly.
+\precattl_exec:n {
+ \cs_new_protected:Npn \_pythonimmediate_begingroup_setup_estr: {
+ \begingroup
+ \escapechar=-1~
+ \cC{set@display@protect}
+ \let \cA\~ \relax
+ }
+}
-%\GenerateVariantsFile:n{\rescansynclastfilename}
+% use like this \__begingroup_setup_estr: ⟨some command⟩ \endgroup
+% e.g. \__begingroup_setup_estr: \exp_args:NNx \endgroup \__function:n {⟨text⟩}
+% will eventually execute to \__function:n {⟨estr-expansion of text⟩}
-\str_set:Nn \_pythonimmediate_outputdir{.}
-\tl_set:Nn \_pythonimmediate_textopy_script_path{}
-\str_set:Nn \_pythonimmediate_mode{multiprocessing-network}
+\str_set:Nn \_pythonimmediate_args{--mode=multiprocessing-network}
\str_set:Nn \_pythonimmediate_python_executable{python3}
+\str_set:Nn \_pythonimmediate_python_flags{}
\keys_define:nn{pythonimmediate}{
- outputdir.tl_set_x:N=\_pythonimmediate_outputdir,
- %outputdir.default:n={.}, % huh does not work?
-
- mode.tl_set:N=\_pythonimmediate_mode,
- scriptpath.tl_set_x:N=\_pythonimmediate_textopy_script_path,
-
- python-executable.tl_set:N=\_pythonimmediate_python_executable,
+ args.tl_gset:N =\_pythonimmediate_args,
+ python-executable.tl_gset:N=\_pythonimmediate_python_executable,
+ python-flags.tl_gset:N =\_pythonimmediate_python_flags,
+ child-process.bool_gset:N =\_pythonimmediate_child_process,
}
\ProcessKeysOptions{pythonimmediate}
-\str_set:NV \_pythonimmediate_outputdir \_pythonimmediate_outputdir
-\str_set:NV \_pythonimmediate_mode \_pythonimmediate_mode
-\str_set:NV \_pythonimmediate_textopy_script_path \_pythonimmediate_textopy_script_path
+\_pythonimmediate_begingroup_setup_estr:
+ \str_gset:Nx \_pythonimmediate_args { \_pythonimmediate_args }
+ \str_gset:Nx \_pythonimmediate_python_executable{ \_pythonimmediate_python_executable }
+ \str_gset:Nx \_pythonimmediate_python_flags { \_pythonimmediate_python_flags }
+\endgroup
-\msg_new:nnn {pythonimmediate} {shell-fail} {Shell~command~execution~failed!}
-\msg_new:nnn {pythonimmediate} {cannot-determine-script-path} {Cannot~determine~script~path!}
+\msg_new:nnn {pythonimmediate} {shell-fail} {Please~enable~unrestricted~shell~scape!}
\msg_new:nnn {pythonimmediate} {cannot-read-line} {Cannot~read~line!}
\msg_new:nnn {pythonimmediate} {internal-error} {Internal~error!}
-\msg_new:nnn {pythonimmediate} {invalid-mode} {Invalid~mode:~'#1'.}
-
-\bool_new:N \_pythonimmediate_mode_multiprocessing_network
-\bool_new:N \_pythonimmediate_mode_unnamed_pipe
-\str_if_eq:VnT \_pythonimmediate_mode {multiprocessing-network} {\bool_set_true:N \_pythonimmediate_mode_multiprocessing_network}
-\str_if_eq:VnT \_pythonimmediate_mode {unnamed-pipe} {\bool_set_true:N \_pythonimmediate_mode_unnamed_pipe}
-\bool_if:nF {\_pythonimmediate_mode_multiprocessing_network || \_pythonimmediate_mode_unnamed_pipe} {
- \msg_error:nnV {pythonimmediate} {invalid-mode} \_pythonimmediate_mode
+\sys_if_shell_unrestricted:F {
+ \msg_error:nn {pythonimmediate} {shell-fail}
}
-% we need to persistently open the file anyway, so using LaTeX3 stream reference counting doesn't help
-\newread \_pythonimmediate_read_file
-
+% note on \newread: we need to persistently open the file anyway, so using LaTeX3 stream reference counting doesn't help
+% ======== setup read file ========
-%\bench before~setup.
+\bool_if:NTF \_pythonimmediate_child_process {
+ % make read file read from stdin
+ % note that \ior_str_get:NN cannot be used here as it checks for \ifeof which breaks with terminal for some reason
+ \int_const:Nn \_pythonimmediate_read_file {-1}
+} {
+ \newread \_pythonimmediate_read_file
+ \openin \_pythonimmediate_read_file=|"\_pythonimmediate_python_executable \space \_pythonimmediate_python_flags \space -m ~ pythonimmediate.pytotex ~ \_pythonimmediate_args"~
+}
-\begingroup
- \endlinechar=-1~
- \tl_if_empty:NT \_pythonimmediate_textopy_script_path {
- % ======== first use kpsewhich to get the _pythonimmediate_script_path here ========
- % (abuse \_pythonimmediate_read_file variable for this purpose)
- \openin \_pythonimmediate_read_file=|"kpsewhich~ pythonimmediate_script_textopy.py"~
- \readline \_pythonimmediate_read_file to \_pythonimmediate_textopy_script_path
- %\bench after~get~textopy~path.
- \ifeof \_pythonimmediate_read_file
- \msg_error:nn {pythonimmediate} {cannot-determine-script-path}
- \fi
+% ======== copy of ior_str_get but does not check for file end ========
+\cs_generate_variant:Nn \use_ii_i:nn {o}
+\cs_new_protected:Npn \_pythonimmediate_str_get:N #1 {
+ \use_ii_i:on {\the\endlinechar\relax} {
+ \endlinechar=-1~
+ \readline \_pythonimmediate_read_file to #1
+ \endlinechar=
}
+}
+
- \str_if_eq:xnF {\str_range:Vnn \_pythonimmediate_textopy_script_path {-10} {-1}} {textopy.py} {
- \msg_error:nn {pythonimmediate} {cannot-determine-script-path}
- }
- \newwrite \_pythonimmediate_write_file
+% ======== setup write file ========
+\newwrite \_pythonimmediate_write_file
+\bool_if:NTF \_pythonimmediate_child_process {
+ %\immediate\openout \_pythonimmediate_write_file=symlink-to-stderr.txt~
+ % tried this method, it seems to work except that it's buffered when stderr is redirected to a file...
+ \immediate\openout \_pythonimmediate_write_file=|"\_pythonimmediate_python_executable \space \_pythonimmediate_python_flags \space -m ~ pythonimmediate.copy_to_stderr"~
+} {
+ \immediate\openout \_pythonimmediate_write_file=|"\_pythonimmediate_python_executable \space \_pythonimmediate_python_flags \space -m ~ pythonimmediate.textopy"~
+ % note that openout, even to shell, will append .tex if there's no dot in the command
+ % so we artificially add a dot here in `.textopy`
- %\bench before~openin.
+ % both processes must be before the \readline below so that the 2 Python processes are started "in parallel"
+ \_pythonimmediate_str_get:N \_pythonimmediate_line % read one line from pytotex half, forward to textopy half
- % ======== open persistent pipes to the child processes
- \bool_if:NTF \_pythonimmediate_mode_unnamed_pipe { % in this case make sure the pipe remains open...
- \openin \_pythonimmediate_read_file=|"sleep~ 0.5s|\_pythonimmediate_python_executable \space \str_range:Vnn \_pythonimmediate_textopy_script_path {1} {-11} pytotex.py \space \_pythonimmediate_mode"~ % we must use the primitive here to use the pipe file path
- % TODO sleep infinity causes some resource leak (the process will not exit after TeX exits). Need to fix
- % but sleep too little might be problematic that it exits before the setup is done
- % we can just assume machines are not that slow
- } {
- \openin \_pythonimmediate_read_file=|"\_pythonimmediate_python_executable \space \str_range:Vnn \_pythonimmediate_textopy_script_path {1} {-11} pytotex.py \space \_pythonimmediate_mode"~ % we must use the primitive here to use the pipe file path
+ \str_if_eq:VnT \_pythonimmediate_line {} {
+ \msg_error:nn {pythonimmediate} {cannot-read-line}
}
- %\bench after~openin.
+ \str_const:Nn \_pythonimmediate_engine_mark_pdftex {p}
+ \str_const:Nn \_pythonimmediate_engine_mark_ptex {P}
+ \str_const:Nn \_pythonimmediate_engine_mark_uptex {u}
- %\bench before~openout.
- \immediate\openout \_pythonimmediate_write_file=|"\_pythonimmediate_python_executable \space \_pythonimmediate_textopy_script_path \space \_pythonimmediate_mode"~
- % both processes must be before the \readline above so that the 2 Python processes are started "in parallel"
- %\bench after~openout.
+ \str_const:Nn \_pythonimmediate_engine_mark_xetex {x}
+ \str_const:Nn \_pythonimmediate_engine_mark_luatex {l}
- \readline \_pythonimmediate_read_file to \_pythonimmediate_dummy_line % endlinechar still -1
- %\bench after~read~line.
- \bool_if:NT \_pythonimmediate_mode_multiprocessing_network {
- \str_if_eq:VnF \_pythonimmediate_dummy_line {listener-setup-done} {
- \msg_error:nn {pythonimmediate} {cannot-read-line}
- }
- }
- \bool_if:NT \_pythonimmediate_mode_unnamed_pipe {
- \str_if_in:VnF \_pythonimmediate_dummy_line {pytotex_pid=} {
- \msg_error:nn {pythonimmediate} {cannot-read-line}
- }
+ \immediate\write\_pythonimmediate_write_file {
+ \use:c {_pythonimmediate_engine_mark_ \c_sys_engine_str}
+ \_pythonimmediate_line
}
- \bool_if:NT \_pythonimmediate_mode_unnamed_pipe {
- \immediate\write\_pythonimmediate_write_file {\_pythonimmediate_dummy_line} % which contains pytotex's pid
- }
-\endgroup
-
-%\bench after~setup.
+}
+% ======== bootstrap utility functions
% read one block of \TeX\ code from Python, store into the specified variable
% the block is delimited using |surround_delimiter()| in Python i.e. the first and last line are identical
@@ -149,9 +143,6 @@
\bool_do_until:nn {\tl_if_eq_p:NN \_pythonimmediate_delimiter \_pythonimmediate_line} {
\tl_build_gput_right:NV #1 \_pythonimmediate_line
- \ifeof \_pythonimmediate_read_file
- \msg_error:nn {pythonimmediate} {internal-error}
- \fi
\readline \_pythonimmediate_read_file to \_pythonimmediate_line
}
\tl_build_gend:N #1
@@ -176,8 +167,6 @@
\scantokens \expandafter{\_pythonimmediate_code}
} % trick described in https://tex.stackexchange.com/q/640274 to scantokens the code with \newlinechar=10
-% bootstrap code
-%\bench before~bootstrap.
+% ======== bootstrap code
\_pythonimmediate_run_block:
-%\bench after~bootstrap.
diff --git a/macros/latex/contrib/pythonimmediate/pythonimmediate.tex b/macros/latex/contrib/pythonimmediate/pythonimmediate.tex
index 877bc3a05e..eacffa24f6 100644
--- a/macros/latex/contrib/pythonimmediate/pythonimmediate.tex
+++ b/macros/latex/contrib/pythonimmediate/pythonimmediate.tex
@@ -1,4 +1,4 @@
-\ProvidesFile{pythonimmediate.tex}[2022/12/23 0.0.0 Library to run Python code]
+\ProvidesFile{pythonimmediate.tex}[2023/01/09 0.1.0 Library to run Python code]
\RequirePackage{fvextra}
\documentclass{l3doc}
\usepackage{tikz}
@@ -53,12 +53,25 @@ so you don't need to write a single line of \TeX\ code.
%You need to install Python \pkg{daemoniker} and \pkg{psutil} package.
-The package should work out of the box with no additional Python package needed.
+In addition to the \LaTeX\ package, you need the Python \pkg{pythonimmediate-tex} package,
+installation instruction can be found at \url{https://pypi.org/project/pythonimmediate-tex/}.
-\subsection{Installation on Overleaf}
+Note that not all \TeX\ package versions are compatible with all Python package versions.
+This \TeX\ package is compatible with Python package version |0.1.2|.
+
+Remember to enable unrestricted\footnote{
+ There's little point in supporting restricted mode, since it's possible to execute arbitrary shell commands in Python anyway.
+ If it's needed to execute untrusted \TeX\ code, separate sandboxing should be used.
+} shell-escape. (there's a guide on \TeX.SE if necessary: \url{https://tex.stackexchange.com/q/598818/250119})
+
+\subsection{Installation on Overleaf}\label{installation-on-overleaf}
At the point of writing, this package can be used on Overleaf.
+Nevertheless, you cannot use |pip| to install Python packages on Overleaf directly, instead it's possible to
+download |.zip| file, include it in your Overleaf project, and specify where the package can be found to Python
+using |PYTHONPATH| environment variable.
+
Instruction:
\begin{itemize}
@@ -67,14 +80,27 @@ Instruction:
\item \file{saveenv.sty}
\item \file{precattl.sty}
\item \file{pythonimmediate.sty}
- \item \file{pythonimmediate_script_textopy.py}
- \item \file{pythonimmediate_script_pytotex.py}
+ \item \file{pythonimmediate-tex-0.1.2.zip}
\end{itemize}
+ The |0.1.2| part should be replaced with the desired version
+ of the Python package.
+
+ The |.sty| files can be downloaded from CTAN at
+ \url{https://ctan.org/pkg/saveenv},
+ \url{https://ctan.org/pkg/precattl},
+ \url{https://ctan.org/pkg/pythonimmediate}
+ respectively.
+
+ The |.zip| file containing Python source code
+ can be downloaded from PyPI: \url{https://pypi.org/project/pythonimmediate-tex/\#files}.
+
\item Write the following in the preamble:
\begin{verbatim}
\usepackage[abspath]{currfile}
-\usepackage[mode=unnamed-pipe]{pythonimmediate}
+\usepackage[python-executable={PYTHONPATH=pythonimmediate-tex-0.1.2.zip/pythonimmediate-tex-0.1.2/ python3},args={--mode=unnamed-pipe}]{pythonimmediate}
\end{verbatim}
+As above, replace both occurrences of |0.1.2| with the downloaded version specified in the zip file above.
+
Refer to \ref{troubleshoot-source-file-not-found} for explanation of the |abspath| option.
\end{itemize}
@@ -84,32 +110,37 @@ so in that case consider writing |\errorstopmode|.
Refer to \ref{troubleshoot-Python-error} to read the error traceback in case of Python error.
+Some construct inside the |pycode| block might make the code editor on Overleaf report an error,
+even though the code is valid. Refer to \url{https://www.overleaf.com/learn/how-to/Code_Check#Code_Check_Limitations}.
+
\section{Usage}
\subsection{Package options}
-\DescribeOption{outputdir=}
-Specify the output directory if it's not the default value.
+Normally no options are required.
+If you're not sure what they do, just use the default options.
-\begin{texnote}
- The value will be |x|-expanded.
-\end{texnote}
-
-Using the \pkg{outputdir} package, it's possible to determine the output directory automatically, subject to restrictions.
-
-An usage example, if you invoked |pdflatex| with the command
+\DescribeOption{args=}
+Arguments to be passed to the Python component of the program. Run
\begin{verbatim}
-pdflatex --output-directory=/tmp/ a.tex
-\end{verbatim}
-then in the file \file{a.tex} you should have
-\begin{verbatim}
-\usepackage[outputdir=/tmp/]{pythonimmediate}
+python -m pythonimmediate.pytotex --help
\end{verbatim}
+on the command-line to view the available options.
+
+The documentation is also available at
+\url{https://pythonimmediate.readthedocs.io/en/latest/pythonimmediate.html#module-pythonimmediate.pytotex}.
-\DescribeOption{mode=}
-Method to communicate between \TeX\ and Python. Usually the method will be automatically detected.
+\DescribeOption{python-executable=}
+The name/path to the Python executable. Default to |python3|.
-Possible values include |multiprocessing-network| and |unnamed-pipe|.
+Can also be used to provide environment variables to the Python process.
+An example how to do that is explained in \ref{installation-on-overleaf}.
+
+\DescribeOption{python-flags=}
+Flags to be passed to the Python interpreter. For example pass |-O| to disable assertions.
+
+The documentations can be found by running |python --help| on the command-line,
+or visit \url{https://docs.python.org/3/using/cmdline.html}.
\subsection{\TeX\ interface}
@@ -226,16 +257,22 @@ The \TeX\ interface is only used to call Python. Apart from that, all the work c
All functions in this section should be imported from |pythonimmediate| package, unless specified otherwise.
+Currently, all the documentations are moved to the Python package documentation,
+see \url{https://pythonimmediate.readthedocs.io/}.
+
+Documentation of a few functions are still kept here for convenience, but \textbf{they might be outdated}.
+Always refer to the online documentation.
+
\subsubsection{Print to \TeX}\label{print-to-TeX}
-\DescribePython{.print()}
+\DescribePython{.print_TeX()}
\DescribePython{.file}
These functions are used in |\pyc| command or |pycode| environment.
Unlike most other packages, using |print()| function in Python will print to the console (\TeX\ standard output).
In order to print \TeX\ code to be executed, you can do one of
\begin{verbatim}
-pythonimmediate.print(...)
+pythonimmediate.print_TeX(...)
print(..., file=pythonimmediate.file)
with contextlib.redirect_stdout(pythonimmediate.file):
print(...)
@@ -286,7 +323,8 @@ This is an example of how the functions could be used. The name should be mostly
\usepackage{pythonimmediate}
\begin{document}
\begin{pycode}
-from pythonimmediate import newcommand, peek_next_char, get_next_char, get_arg_str, print
+from pythonimmediate import newcommand, peek_next_char, get_next_char, get_arg_str
+from pythonimmediate import print_TeX as print
@newcommand
def innerproduct():
s = get_arg_str() # in the example below this will have the value '\mathbf{a},\mathbf{b}'
@@ -334,7 +372,7 @@ Similar to some functions above, except that the argument is fully expanded and
similar to how |\py| command (\ref{py-command}) reads its arguments.
\DescribePython{.execute()}
-Takes a string and execute it immediately. (so that any |.execute()| will be executed before any |.print()|)
+Takes a string and execute it immediately. (so that any |.execute()| will be executed before any |.print_TeX()|)
Assuming \TeX\ is in errorstopmode (i.e. errors halt \TeX\ execution),
any error in \TeX\ will create an error in Python and the traceback should point to the correct line of code.
diff --git a/macros/latex/contrib/pythonimmediate/pythonimmediate_script_pytotex.py b/macros/latex/contrib/pythonimmediate/pythonimmediate_script_pytotex.py
deleted file mode 100755
index abb71a2631..0000000000
--- a/macros/latex/contrib/pythonimmediate/pythonimmediate_script_pytotex.py
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/bin/python3
-"""
-======== Py-to-TeX half ========
-
-receive things that should be passed to TeX from TeX-to-Py half,
-then pass to TeX.
-
-the things that are sent should already be newline-terminated if necessary.
-
-user code are not executed here.
-"""
-
-import sys
-import signal
-signal.signal(signal.SIGINT, signal.SIG_IGN) # when the other half terminates this one will terminates "gracefully"
-
-#debug_file=open(Path(tempfile.gettempdir())/"pythonimmediate_debug_pytotex.txt", "w", encoding='u8', buffering=2)
-#debug=functools.partial(print, file=debug_file, flush=True)
-debug=lambda *args, **kwargs: None
-
-import argparse
-parser=argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)
-parser.add_argument("mode", choices=["multiprocessing-network", "unnamed-pipe"])
-args=parser.parse_args()
-
-
-# ======== setup communication method. Just an infinite loop print whatever being sent.
-
-if args.mode=="multiprocessing-network":
- from multiprocessing.connection import Listener
-
- address=("localhost", 7348)
- #address="./pythonimmediate.socket"
- with Listener(address) as listener:
- print("listener-setup-done", flush=True)
- with listener.accept() as connection:
- debug("accepted a connection")
- while True:
- try:
- data=connection.recv_bytes()
- debug(" data=", data)
- sys.__stdout__.buffer.write(data) # will go to TeX
- sys.__stdout__.buffer.flush()
- except EOFError: break
-
-elif args.mode=="unnamed-pipe":
- import os
- sys.stdout.write("pytotex_pid=" + str(os.getpid()) + "\n")
- sys.stdout.flush()
- for line in sys.stdin:
- sys.stdout.write(line)
- sys.stdout.flush()
-
-else:
- assert False
-
-# ========
diff --git a/macros/latex/contrib/pythonimmediate/pythonimmediate_script_textopy.py b/macros/latex/contrib/pythonimmediate/pythonimmediate_script_textopy.py
deleted file mode 100755
index 7e4f4a7de9..0000000000
--- a/macros/latex/contrib/pythonimmediate/pythonimmediate_script_textopy.py
+++ /dev/null
@@ -1,2295 +0,0 @@
-#!/bin/python3
-"""
-======== TeX-to-Py half ========
-
-receive commands from TeX, then execute it here
-"""
-
-
-#from __future__ import annotations
-import sys
-import os
-import inspect
-import contextlib
-import io
-import functools
-from typing import Optional, Union, Callable, Any, Iterator, Protocol, Iterable, Sequence, Type, Tuple, List, Dict
-import typing
-from abc import ABC, abstractmethod
-from pathlib import Path
-from dataclasses import dataclass
-import tempfile
-import signal
-import traceback
-import re
-import collections
-import enum
-
-
-def user_documentation(x: Union[Callable, str])->Any:
- return x
-
-
-
-#debug=functools.partial(print, file=sys.stderr, flush=True) # unfortunately this is async ... or so it seems...?
-#debug_file=open(Path(tempfile.gettempdir())/"pythonimmediate_debug_textopy.txt", "w", encoding='u8', buffering=2)
-#debug=functools.partial(print, file=debug_file, flush=True)
-debug=lambda *args, **kwargs: None
-
-
-import argparse
-parser=argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)
-parser.add_argument("mode", choices=["multiprocessing-network", "unnamed-pipe"])
-args=parser.parse_args()
-
-expansion_only_can_call_Python=False # normally. May be different in LuaTeX etc.
-
-# ======== setup communication method. Requires raw_readline() and send_raw() methods.
-
-if True:
- sys.stdin=None # type: ignore
- # avoid user mistakenly read
-
- raw_readline=sys.__stdin__.readline # raw_readline() should return "⟨line⟩\n" or "" (if EOF) on each call
-
-if args.mode=="multiprocessing-network":
- address=("localhost", 7348) # this must be identical to that of the other half-script
- #address="./pythonimmediate.socket"
-
- from multiprocessing.connection import Client
- connection=Client(address)
- debug("connected")
-
- def send_raw(s: str)->None: # send_raw() should get pass the s = "⟨line⟩\n"
- global connection
- connection.send_bytes(s.encode('u8'))
-
-elif args.mode=="unnamed-pipe":
- pytotex_pid_line=raw_readline()
- match_=re.fullmatch("pytotex_pid=(\d+)\n", pytotex_pid_line)
- assert match_
- pytotex_pid=int(match_[1])
-
- connection_=open("/proc/" + str(pytotex_pid) + "/fd/0", "w", encoding='u8',
- buffering=1 # line buffering
- )
-
- def send_raw(s: str)->None:
- global connection_
- connection_.write(s)
- connection_.flush() # just in case
-
-else:
- assert False
-
-# ======== done.
-
-# https://stackoverflow.com/questions/5122465/can-i-fake-a-package-or-at-least-a-module-in-python-for-testing-purposes
-from types import ModuleType
-pythonimmediate: Any=ModuleType("pythonimmediate")
-pythonimmediate.__file__="pythonimmediate.py"
-sys.modules["pythonimmediate"]=pythonimmediate
-
-pythonimmediate.debugging=True
-
-def export_function_to_module(f: Callable)->Callable:
- """
- the functions decorated with this decorator are accessible from user code with
-
- import pythonimmediate
- pythonimmediate.⟨function name⟩(...)
- """
- setattr(pythonimmediate, f.__name__, f)
- return f
-
-action_done=False
-
-
-def check_not_finished()->None:
- global action_done
- if action_done:
- raise RuntimeError("can only do one action per block!")
-
-def send_finish(s: str)->None:
- check_not_finished()
- global action_done
- action_done=True
- send_raw(s)
-
-
-import random
-def surround_delimiter(block: str)->str:
- while True:
- delimiter=str(random.randint(0, 10**12))
- if delimiter not in block: break
- return delimiter + "\n" + block + "\n" + delimiter + "\n"
-
-bootstrap_code: Optional[str]=""
-def mark_bootstrap(code: str)->None:
- global bootstrap_code
- assert bootstrap_code is not None
- bootstrap_code+=code
-
-def substitute_private(code: str)->str:
- return (code
- #.replace("\n", ' ') # because there are comments in code, cannot
- .replace("__", "_" + "pythonimmediate" + "_")
- )
-
-def send_bootstrap_code()->None:
- global bootstrap_code
- assert bootstrap_code is not None
- send_raw(surround_delimiter(substitute_private(bootstrap_code)))
- bootstrap_code = None
-
-# ========
-
-
-# as the name implies, this reads one "command" from Python side and execute it.
-# the command might do additional tasks e.g. read more \TeX\ code.
-#
-# e.g. if `block' is read from the communication channel, run |\__run_block:|.
-
-mark_bootstrap(
-r"""
-\cs_new_protected:Npn \__read_do_one_command: {
- \begingroup
- \endlinechar=-1~
- \readline \__read_file to \__line
- \expandafter
- \endgroup % also this will give an error instead of silently do nothing when command is invalid
- \csname __run_ \__line :\endcsname
-}
-
-% read documentation of |_peek| commands for details what this command does.
-\cs_new_protected:Npn \pythonimmediatecontinue #1 {
- \immediate\write \__write_file {r #1}
- \__read_do_one_command:
-}
-
-\cs_new_protected:Npn \pythonimmediatecontinuenoarg {
- \pythonimmediatecontinue {}
-}
-
-% internal function. Just send an arbitrary block of data to Python.
-\cs_new_protected:Npn \__send_block:e #1 {
- \immediate\write \__write_file {
- #1 ^^J
- pythonimm?""" + '"""' + r"""?'''? % following character will be newline
- }
-}
-
-\cs_new_protected:Npn \__send_block:n #1 {
- \__send_block:e {\unexpanded{#1}}
-}
-
-\AtEndDocument{
- \immediate\write \__write_file {r}
-}
-""")
-
-
-# ========
-
-# when 'i⟨string⟩' is sent from TeX to Python, the function with index ⟨string⟩ in this dict is called
-TeX_handlers: Dict[str, Callable[[], None]]={}
-
-TeXToPyObjectType=Optional[str]
-
-def run_main_loop()->TeXToPyObjectType:
- while True:
- line=readline()
- if not line: return None
-
- if line[0]=="i":
- TeX_handlers[line[1:]]()
- elif line[0]=="r":
- return line[1:]
- else:
- raise RuntimeError("Internal error: unexpected line "+line)
-
-def run_main_loop_get_return_one()->str:
- line=readline()
- assert line[0]=="r"
- return line[1:]
-
-
-
-user_documentation(
-"""
-All exported functions can be accessed through the module as |import pythonimmediate|.
-
-The |_finish| functions are internal functions, which must be called \emph{at most} once in each
-|\pythonimmediate:n| call from \TeX\ to tell \TeX\ what to do.
-
-The |_local| functions simply execute the code. These functions will only return when
-the \TeX\ code finishes executing; nevertheless, the \TeX\ code might recursively execute some Python code
-inside it.
-
-A simple example is |pythonimmediate.run_block_local('123')| which simply typesets |123|.
-
-The |_peek| functions is the same as above; however, the \TeX\ code must contain an explicit command
-|\pythonimmediatecontinue{...}|.
-
-The argument of |\pythonimmediatecontinue| will be |e|-expanded
-by |\write| (note that the written content must not contain any newline character,
-otherwise the behavior is undefined), then returned as a string by the Python code.
-The Python function will only return when |\pythonimmediatecontinue| is called.
-
-In other words, |run_*_local(code)| is almost identical to |run_*_peek(code + "\pythonimmediatecontinue {}")|.
-""")
-
-@export_function_to_module
-def run_block_finish(block: str)->None:
- send_finish("block\n" + surround_delimiter(block))
-
-
-@user_documentation
-@export_function_to_module
-def execute(block: str)->None:
- """
- Run a block of \TeX\ code (might consist of multiple lines).
- Catcode-changing commands are allowed inside.
-
- A simple example is |pythonimmediate.run_block_local('123')| which simply typesets |123|.
-
- A more complicated example is |pythonimmediate.run_block_local(r'\verb+%+')|.
- """
- run_block_local(block)
-
-def check_line(line: str, *, braces: bool, newline: bool, continue_: Optional[bool])->None:
- """
- check user-provided line before sending to TeX for execution
- """
- if braces:
- assert line.count("{") == line.count("}")
- if newline:
- assert '\n' not in line
- assert '\r' not in line # this is not the line separator but just in case
- if continue_==True: assert "pythonimmediatecontinue" in line
- elif continue_==False: assert "pythonimmediatecontinue" not in line
-
-
-
-
-do_run_error_finish=True
-
-
-
-
-
-user_scope: Dict[str, Any]={} # consist of user's local variables etc.
-
-def readline()->str:
- line=raw_readline()
- if not line:
- sys.stderr.write("\n\nTraceback (most recent call last):\n")
- traceback.print_stack(file=sys.stderr)
- sys.stderr.write("RuntimeError: Fatal irrecoverable TeX error\n\n")
- os._exit(1)
-
-
- assert line[-1]=='\n'
- line=line[:-1]
- debug("======== saw line", line)
- return line
-
-block_delimiter: str="pythonimm?\"\"\"?'''?"
-
-def read_block()->str:
- """
- Internal function to read one block sent from \TeX\ (including the final delimiter line,
- but the delimiter line is not returned)
- """
- lines: List[str]=[]
- while True:
- line=readline()
- if line==block_delimiter:
- return '\n'.join(lines)
- else:
- lines.append(line)
-
-
-@export_function_to_module
-class NToken(ABC):
- """
- Represent a possibly-notexpanded token.
- For convenience, a notexpanded token is called a blue token.
- It's not always possible to determine the notexpanded status of a following token in the input stream.
- Remark: Token objects must be frozen.
- """
-
- @abstractmethod
- def __str__(self)->str: ...
-
- @abstractmethod
- def repr1(self)->str: ...
-
- @property
- @abstractmethod
- def assignable(self)->bool: ...
-
- def assign(self, other: "NToken")->None:
- assert self.assignable
- NTokenList([T.let, self, C.other("="), C.space(' '), other]).execute()
-
- def assign_future(self)->None:
- assert self.assignable
- futurelet_(PTTBalancedTokenList(BalancedTokenList([self.no_blue])))
-
- def assign_futurenext(self)->None:
- assert self.assignable
- futureletnext_(PTTBalancedTokenList(BalancedTokenList([self.no_blue])))
-
- def meaning_str(self)->str:
- """
- get the meaning of this token as a string.
- """
- return NTokenList([T.meaning, self]).expand_x().str()
-
- @property
- @abstractmethod
- def blue(self)->"BlueToken": ...
-
- @property
- @abstractmethod
- def no_blue(self)->"Token": ...
-
- def meaning_equal(self, other: "Token")->bool:
- return NTokenList([T.ifx, self, other, Catcode.other("1"), T["else"], Catcode.other("0"), T.fi]).expand_x().bool()
-
- def str(self)->str:
- """
- self must represent a character of a TeX string. (i.e. equal to itself when detokenized)
- return the string content.
-
- default implementation below. Not necessarily correct.
- """
- raise ValueError("Token does not represent a string!")
-
- def degree(self)->int:
- """
- return the imbalance degree for this token ({ -> 1, } -> -1, everything else -> 0)
-
- default implementation below. Not necessarily correct.
- """
- return 0
-
-
-@export_function_to_module
-class Token(NToken):
- """
- Represent a TeX token, excluding the notexpanded possibility.
- See also documentation of NToken.
- """
-
- @abstractmethod
- def serialize(self)->str: ...
-
- @property
- def blue(self)->"BlueToken": return BlueToken(self)
-
- @property
- def no_blue(self)->"Token": return self
-
- def __repr__(self)->str:
- return f"<Token: {self.repr1()}>"
-
- @staticmethod
- def deserialize(s: str)->"Token":
- t=TokenList.deserialize(s)
- assert len(t)==1
- return t[0]
-
- @staticmethod
- def get_next()->"Token":
- """
- Get the following token.
-
- Note: in LaTeX3 versions without the commit |https://github.com/latex3/latex3/commit/24f7188904d6|
- sometimes this may error out.
-
- Note: because of the internal implementation of |\peek_analysis_map_inline:n|, this may
- tokenize up to 2 tokens ahead (including the returned token),
- as well as occasionally return the wrong token in unavoidable cases.
- """
- return Token.deserialize(str(get_next_()[0]))
-
- @staticmethod
- def peek_next()->"Token":
- """
- Get the following token without removing it from the input stream.
-
- Equivalent to get_next() then put_next() immediately. See documentation of get_next() for some notes.
- """
- return Token.deserialize(
- typing.cast(Callable[[], TTPLine], Python_call_TeX_local(
- r"""
- \cs_new_protected:Npn \__peek_next_callback: #1 {
- \immediate\write \__write_file { r^^J #1 }
- \expandafter % expand the ##1 in (*)
- \__read_do_one_command:
- }
-
- \cs_new_protected:Npn %name% {
- \peek_analysis_map_inline:n {
- \peek_analysis_map_break:n {
- \__tlserialize_char_unchecked:nnNN {##1}{##2}##3 \__peek_next_callback: ##1 % (*)
- }
- }
- }
- """, recursive=False))()
- )
-
- def put_next(self)->None:
- d=self.degree()
- if d==0:
- BalancedTokenList([self]).put_next()
- else:
- assert isinstance(self, CharacterToken)
- if d==1:
- put_next_bgroup(PTTInt(self.index))
- else:
- assert d==-1
- put_next_egroup(PTTInt(self.index))
-
-
-
-
-
-
-"""
-TeX code for serializing and deserializing a token list.
-Convert a token list from/to a string.
-"""
-
-
-mark_bootstrap(
-r"""
-\precattl_exec:n {
-
-% here #1 is the target token list to store the result to, #2 is a string with the final '.'.
-\cs_new_protected:Npn \__tldeserialize_dot:Nn #1 #2 {
- \begingroup
- \tl_set:Nn \__tmp {#2}
- \tl_replace_all:Nnn \__tmp {~} {\cO\ }
-
- \def \start ##1 { \csname ##1 \endcsname }
-
- \def \> ##1 ##2 \cO\ { \csname ##1 \endcsname ##2 \cU\ }
- \def \\ ##1 \cO\ ##2 { \expandafter \noexpand \csname ##1 \endcsname \csname ##2 \endcsname }
- \def \1 ##1 ##2 { \char_generate:nn {`##1} {1} \csname ##2 \endcsname }
- \def \2 ##1 ##2 { \char_generate:nn {`##1} {2} \csname ##2 \endcsname }
- \def \3 ##1 ##2 { \char_generate:nn {`##1} {3} \csname ##2 \endcsname }
- \def \4 ##1 ##2 { \char_generate:nn {`##1} {4} \csname ##2 \endcsname }
- \def \6 ##1 ##2 { #### \char_generate:nn {`##1} {6} \csname ##2 \endcsname }
- \def \7 ##1 ##2 { \char_generate:nn {`##1} {7} \csname ##2 \endcsname }
- \def \8 ##1 ##2 { \char_generate:nn {`##1} {8} \csname ##2 \endcsname }
- \def \A ##1 ##2 { \char_generate:nn {`##1} {10} \csname ##2 \endcsname }
- \def \B ##1 ##2 { \char_generate:nn {`##1} {11} \csname ##2 \endcsname }
- \def \C ##1 ##2 { \char_generate:nn {`##1} {12} \csname ##2 \endcsname }
- \def \D ##1 ##2 { \expandafter \expandafter \expandafter \noexpand \char_generate:nn {`##1} {13} \csname ##2 \endcsname }
- \def \R ##1 { \cFrozenRelax \csname ##1 \endcsname }
-
- \let \. \empty
-
- \exp_args:NNNx
- \endgroup \tl_set:Nn #1 {\expandafter \start \__tmp}
-}
-
-\cs_new_protected:Npn \__tlserialize_char_unchecked:nnNN #1 #2 #3 #4 {
- % #1=token, #2=char code, #3=catcode, #4: callback (will be called exactly once and with nothing following the input stream)
- \int_compare:nNnTF {#2} = {-1} {
- % token is control sequence
- \tl_if_eq:onTF {#1} {\cFrozenRelax} {
- #4 {\cStr{ R }}
- } {
- \tl_if_eq:onTF {#1} { \cC{} } {
- #4 {\cStr{ \\\ }}
- } {
- \tl_set:Nx \__name { \expandafter \cs_to_str:N #1 }
- \exp_args:Nx #4 { \prg_replicate:nn {\str_count_spaces:N \__name} {>} \cStr\\ \__name \cStr\ }
- }
- }
- } {
- % token is not control sequence
- % (hex catcode) (character) (or escape sequence with that character)
- \exp_args:Nx #4 { #3 \expandafter \string #1 }
- }
-}
-
-}
-
-% deserialize as above but #2 does not end with '.'.
-\cs_new_protected:Npn \__tldeserialize_nodot:Nn #1 #2 {
- \__tldeserialize_dot:Nn #1 {#2 .}
-}
-
-% serialize token list in #2 store to #1.
-\cs_new_protected:Npn \__tlserialize_nodot_unchecked:Nn #1 #2 {
- \tl_build_begin:N #1
- \tl_set:Nn \__tlserialize_callback { \tl_build_put_right:Nn #1 }
- \tl_analysis_map_inline:nn {#2} {
- \__tlserialize_char_unchecked:nnNN {##1}{##2}##3 \__tlserialize_callback
- }
- \tl_build_end:N #1
-}
-
-% serialize token list in #2 store to #1. Call T or F branch depends on whether serialize is successful.
-% #1 must be different from \__tlserialize_tmp.
-\cs_new_protected:Npn \__tlserialize_nodot:NnTF #1 #2 {
- \__tlserialize_nodot_unchecked:Nn #1 {#2}
- \__tldeserialize_nodot:NV \__tlserialize_nodot_tmp #1
-
- \tl_if_eq:NnTF \__tlserialize_nodot_tmp {#2} % dangling
-}
-
-\cs_new_protected:Npn \__tlserialize_nodot:NnF #1 #2 {
- \__tlserialize_nodot:NnTF #1 {#2} {} % dangling
-}
-
-\cs_new_protected:Npn \__tlserialize_nodot:NnT #1 #2 #3 { \__tlserialize_nodot:NnTF #1 {#2} {#3} {} }
-
-\msg_new:nnn {pythonimmediate} {cannot-serialize} {Token~list~cannot~be~serialized}
-
-\cs_new_protected:Npn \__tlserialize_nodot:Nn #1 #2{
- \__tlserialize_nodot:NnF #1 {#2} {
- \msg_error:nn {pythonimmediate} {cannot-serialize}
- }
-}
-
-\cs_generate_variant:Nn \__tldeserialize_dot:Nn {NV}
-\cs_generate_variant:Nn \__tldeserialize_nodot:Nn {NV}
-\cs_generate_variant:Nn \__tlserialize_nodot:Nn {NV}
-""")
-
-
-class ControlSequenceTokenMaker:
- """
- shorthand to create control sequence objects in Python easier.
- """
- def __init__(self, prefix: str)->None:
- self.prefix=prefix
- def __getattribute__(self, a: str)->"ControlSequenceToken":
- return ControlSequenceToken(object.__getattribute__(self, "prefix")+a)
- def __getitem__(self, a: str)->"ControlSequenceToken":
- return ControlSequenceToken(object.__getattribute__(self, "prefix")+a)
-
-
-@export_function_to_module
-@dataclass(repr=False, frozen=True)
-class ControlSequenceToken(Token):
- make=typing.cast(ControlSequenceTokenMaker, None) # some interference makes this incorrect. Manually assign below
- csname: str
- @property
- def assignable(self)->bool:
- return True
- def __str__(self)->str:
- if self.csname=="": return r"\csname\endcsname"
- return "\\"+self.csname
- def serialize(self)->str:
- return ">"*self.csname.count(" ") + "\\" + self.csname + " "
- def repr1(self)->str:
- return f"\\{self.csname}"
-
-
-ControlSequenceToken.make=ControlSequenceTokenMaker("")
-
-T=ControlSequenceToken.make
-P=ControlSequenceTokenMaker("_pythonimmediate_") # create private tokens
-
-@export_function_to_module
-class Catcode(enum.Enum):
- begin_group=bgroup=1
- end_group=egroup=2
- math_toggle=math=3
- alignment=4
- parameter=param=6
- math_superscript=superscript=7
- math_subscript=subscript=8
- space=10
- letter=11
- other=12
- active=13
-
- escape=0
- end_of_line=paragraph=line=5
- ignored=9
- comment=14
- invalid=15
-
- @property
- def for_token(self)->bool:
- """
- Return whether a token may have this catcode.
- """
- return self not in (Catcode.escape, Catcode.line, Catcode.ignored, Catcode.comment, Catcode.invalid)
-
- def __call__(self, ch: Union[str, int])->"CharacterToken":
- """
- Shorthand:
- Catcode.letter("a") = Catcode.letter(97) = CharacterToken(index=97, catcode=Catcode.letter)
- """
- if isinstance(ch, str): ch=ord(ch)
- return CharacterToken(ch, self)
-
-C=Catcode
-
-@export_function_to_module
-@dataclass(repr=False, frozen=True) # must be frozen because bgroup and egroup below are reused
-class CharacterToken(Token):
- index: int
- catcode: Catcode
- @property
- def chr(self)->str:
- return chr(self.index)
- def __post_init__(self)->None:
- assert self.catcode.for_token
- def __str__(self)->str:
- return self.chr
- def serialize(self)->str:
- return f"{self.catcode.value:X}{self.chr}"
- def repr1(self)->str:
- cat=str(self.catcode.value).translate(str.maketrans("0123456789", "â‚€â‚₂₃₄₅₆₇₈₉"))
- return f"{self.chr}{cat}"
- @property
- def assignable(self)->bool:
- return self.catcode==Catcode.active
- def degree(self)->int:
- if self.catcode==Catcode.bgroup:
- return 1
- elif self.catcode==Catcode.egroup:
- return -1
- else:
- return 0
- def str(self)->str:
- catcode=Catcode.space if self.index==32 else Catcode.other
- if catcode!=self.catcode:
- raise ValueError("this CharacterToken does not represent a string!")
- return self.chr
-
-class FrozenRelaxToken(Token):
- def __str__(self)->str:
- return r"\relax"
- def serialize(self)->str:
- return "R"
- def repr1(self)->str:
- return r"[frozen]\relax"
- @property
- def assignable(self)->bool:
- return False
-
-frozen_relax_token=FrozenRelaxToken()
-pythonimmediate.frozen_relax_token=frozen_relax_token
-
-# other special tokens later...
-
-bgroup=Catcode.bgroup("{")
-egroup=Catcode.egroup("}")
-space=Catcode.space(" ")
-
-
-
-@export_function_to_module
-@dataclass(frozen=True)
-class BlueToken(NToken):
- token: Token
-
- @property
- def blue(self)->"BlueToken": return self
-
- @property
- def no_blue(self)->"Token": return self.token
-
- def __str__(self)->str: return str(self.token)
-
- def repr1(self)->str: return "notexpanded:"+self.token.repr1()
-
- @property
- def assignable(self)->bool: return self.token.assignable
-
- def put_next(self)->None:
- put_next_blue(PTTBalancedTokenList(BalancedTokenList([self.token])))
-
-
-doc_catcode_table: Dict[int, Catcode]={}
-doc_catcode_table[ord("{")]=Catcode.begin_group
-doc_catcode_table[ord("}")]=Catcode.end_group
-doc_catcode_table[ord("$")]=Catcode.math_toggle
-doc_catcode_table[ord("&")]=Catcode.alignment
-doc_catcode_table[ord("#")]=Catcode.parameter
-doc_catcode_table[ord("^")]=Catcode.math_superscript
-doc_catcode_table[ord("_")]=Catcode.math_subscript
-doc_catcode_table[ord(" ")]=Catcode.space
-doc_catcode_table[ord("~")]=Catcode.active
-for ch in range(ord('a'), ord('z')+1): doc_catcode_table[ch]=Catcode.letter
-for ch in range(ord('A'), ord('Z')+1): doc_catcode_table[ch]=Catcode.letter
-doc_catcode_table[ord("\\")]=Catcode.escape
-doc_catcode_table[ord("%")]=Catcode.comment
-
-e3_catcode_table=dict(doc_catcode_table)
-e3_catcode_table[ord("_")]=Catcode.letter
-e3_catcode_table[ord(":")]=Catcode.letter
-e3_catcode_table[ord(" ")]=Catcode.ignored
-e3_catcode_table[ord("~")]=Catcode.space
-
-
-TokenListType = typing.TypeVar("TokenListType", bound="TokenList")
-
-if typing.TYPE_CHECKING:
- TokenListBaseClass = collections.UserList[Token]
-else: # Python 3.8 compatibility
- TokenListBaseClass = collections.UserList
-
-@export_function_to_module
-class TokenList(TokenListBaseClass):
- @staticmethod
- def force_token_list(a: Iterable)->Iterable[Token]:
- for x in a:
- if isinstance(x, Token):
- yield x
- elif isinstance(x, Sequence):
- yield bgroup
- child=BalancedTokenList(x)
- assert child.is_balanced()
- yield from child
- yield egroup
- else:
- raise RuntimeError(f"Cannot make TokenList from object {x} of type {type(x)}")
-
- def is_balanced(self)->bool:
- """
- check if this is balanced.
- """
- degree=0
- for x in self:
- degree+=x.degree()
- if degree<0: return False
- return degree==0
-
- def check_balanced(self)->None:
- """
- ensure that this is balanced.
- """
- if not self.is_balanced():
- raise ValueError("Token list is not balanced")
-
- def balanced_parts(self)->"List[Union[BalancedTokenList, Token]]":
- """
- split this TokenList into a list of balanced parts and unbalanced {/}tokens
- """
- degree=0
- min_degree=0, 0
- for i, token in enumerate(self):
- degree+=token.degree()
- min_degree=min(min_degree, (degree, i+1))
- min_degree_pos=min_degree[1]
-
- left_half: List[Union[BalancedTokenList, Token]]=[]
- degree=0
- last_pos=0
- for i in range(min_degree_pos):
- d=self[i].degree()
- degree+=d
- if degree<0:
- degree=0
- if last_pos!=i:
- left_half.append(BalancedTokenList(self[last_pos:i]))
- left_half.append(self[i])
- last_pos=i+1
- if min_degree_pos!=last_pos:
- left_half.append(BalancedTokenList(self[last_pos:min_degree_pos]))
-
- right_half: List[Union[BalancedTokenList, Token]]=[]
- degree=0
- last_pos=len(self)
- for i in range(len(self)-1, min_degree_pos-1, -1):
- d=self[i].degree()
- degree-=d
- if degree<0:
- degree=0
- if i+1!=last_pos:
- right_half.append(BalancedTokenList(self[i+1:last_pos]))
- right_half.append(self[i])
- last_pos=i
- if min_degree_pos!=last_pos:
- right_half.append(BalancedTokenList(self[min_degree_pos:last_pos]))
-
- return left_half+right_half[::-1]
-
- def put_next(self)->None:
- for part in reversed(self.balanced_parts()): part.put_next()
-
- @property
- def balanced(self)->"BalancedTokenList":
- """
- return a BalancedTokenList containing the content of this object.
- it must be balanced.
- """
- return BalancedTokenList(self)
-
- def __init__(self, a: Iterable=())->None:
- super().__init__(TokenList.force_token_list(a))
-
- @staticmethod
- def iterable_from_string(s: str, get_catcode: Callable[[int], Catcode])->Iterable[Token]:
- """
- refer to documentation of from_string() for details.
- """
- i=0
- while i<len(s):
- ch=s[i]
- i+=1
- cat=get_catcode(ord(ch))
- if cat==Catcode.space:
- yield space
- # special case: collapse multiple spaces into one but only if character code is space
- if get_catcode(32) in (Catcode.space, Catcode.ignored):
- while i<len(s) and s[i]==' ':
- i+=1
- elif cat.for_token:
- yield cat(ch)
- elif cat==Catcode.ignored:
- continue
- else:
- assert cat==Catcode.escape, f"cannot create TokenList from string containing catcode {cat}"
- cat=get_catcode(ord(s[i]))
- if cat!=Catcode.letter:
- yield ControlSequenceToken(s[i])
- i+=1
- else:
- csname=s[i]
- i+=1
- while i<len(s) and get_catcode(ord(s[i]))==Catcode.letter:
- csname+=s[i]
- i+=1
- yield ControlSequenceToken(csname)
- # special case: remove spaces after control sequence but only if character code is space
- if get_catcode(32) in (Catcode.space, Catcode.ignored):
- while i<len(s) and s[i]==' ':
- i+=1
-
- @classmethod
- def from_string(cls: Type[TokenListType], s: str, get_catcode: Callable[[int], Catcode])->TokenListType:
- """
- convert a string to a TokenList approximately.
- The tokenization algorithm is slightly different from TeX's in the following respect:
-
- * multiple spaces are collapsed to one space, but only if it has character code space (32).
- * spaces with character code different from space (32) after a control sequence is not ignored.
- * ^^ syntax are not supported. Use Python's escape syntax as usual.
- """
- return cls(TokenList.iterable_from_string(s, get_catcode))
-
- @classmethod
- def e3(cls: Type[TokenListType], s: str)->TokenListType:
- """
- approximate tokenizer in expl3 catcode, implemented in Python.
- refer to documentation of from_string() for details.
- """
- return cls.from_string(s, lambda x: e3_catcode_table.get(x, Catcode.other))
-
- @classmethod
- def doc(cls: Type[TokenListType], s: str)->TokenListType:
- """
- approximate tokenizer in document catcode, implemented in Python.
- refer to documentation of from_string() for details.
- """
- return cls.from_string(s, lambda x: doc_catcode_table.get(x, Catcode.other))
-
- def serialize(self)->str:
- return "".join(t.serialize() for t in self)
-
- @classmethod
- def deserialize(cls: Type[TokenListType], data: str)->TokenListType:
- result: List[Token]=[]
- i=0
- cs_skip_space_count=0
- while i<len(data):
- if data[i]==">":
- cs_skip_space_count+=1
- i+=1
- elif data[i]=="\\":
- j=data.index(' ', i+1)
- for __ in range(cs_skip_space_count):
- j=data.index(' ', j+1)
- cs_skip_space_count=0
- result.append(ControlSequenceToken(data[i+1:j]))
- i=j+1
- elif data[i]=="R":
- result.append(frozen_relax_token)
- i+=1
- else:
- result.append(CharacterToken(index=ord(data[i+1]), catcode=Catcode(int(data[i], 16))))
- i+=2
- return cls(result)
-
- def __repr__(self)->str:
- return '<' + type(self).__name__ + ': ' + ' '.join(t.repr1() for t in self) + '>'
-
- def execute(self)->None:
- NTokenList(self).execute()
-
- def expand_x(self)->"BalancedTokenList":
- return NTokenList(self).expand_x()
-
- def bool(self)->bool:
- return NTokenList(self).bool()
-
- def str(self)->str:
- return NTokenList(self).str()
-
-
-
-@export_function_to_module
-class BalancedTokenList(TokenList):
- """
- Represents a balanced token list.
- Note that runtime checking is not strictly enforced,
- use `is_balanced()` method explicitly if you need to check.
- """
-
- def __init__(self, a: Iterable=())->None:
- """
- constructor. This must check for balanced-ness as balanced() method depends on this.
- """
- super().__init__(a)
- self.check_balanced()
-
- def expand_o(self)->"BalancedTokenList":
- return BalancedTokenList(expand_o_(PTTBalancedTokenList(self))[0]) # type: ignore
- def expand_x(self)->"BalancedTokenList":
- return BalancedTokenList(expand_x_(PTTBalancedTokenList(self))[0]) # type: ignore
- def execute(self)->None:
- execute_(PTTBalancedTokenList(self))
-
- def put_next(self)->None:
- put_next_tokenlist(PTTBalancedTokenList(self))
-
- @staticmethod
- def get_next()->"BalancedTokenList":
- """
- get an (undelimited) argument from the TeX input stream.
- """
- return BalancedTokenList(get_argument_tokenlist_()[0]) # type: ignore
-
-
-
-if typing.TYPE_CHECKING:
- NTokenListBaseClass = collections.UserList[NToken]
-else: # Python 3.8 compatibility
- NTokenListBaseClass = collections.UserList
-
-@export_function_to_module
-class NTokenList(NTokenListBaseClass):
- @staticmethod
- def force_token_list(a: Iterable)->Iterable[NToken]:
- for x in a:
- if isinstance(x, NToken):
- yield x
- elif isinstance(x, Sequence):
- yield bgroup
- child=NTokenList(x)
- assert child.is_balanced()
- yield from child
- yield egroup
- else:
- raise RuntimeError(f"Cannot make NTokenList from object {x} of type {type(x)}")
-
- def __init__(self, a: Iterable=())->None:
- super().__init__(NTokenList.force_token_list(a))
-
- def is_balanced(self)->bool:
- return TokenList(self).is_balanced() # a bit inefficient (need to construct a TokenList) but good enough
-
- def simple_parts(self)->List[Union[BalancedTokenList, Token, BlueToken]]:
- """
- Split this NTokenList into a list of balanced non-blue parts, unbalanced {/} tokens, and blue tokens.
- """
- parts: List[Union[TokenList, BlueToken]]=[TokenList()]
- for i in self:
- if isinstance(i, BlueToken):
- parts+=i, TokenList()
- else:
- assert isinstance(i, Token)
- last_part=parts[-1]
- assert isinstance(last_part, TokenList)
- last_part.append(i)
- result: List[Union[BalancedTokenList, Token, BlueToken]]=[]
- for large_part in parts:
- if isinstance(large_part, BlueToken):
- result.append(large_part)
- else:
- result+=large_part.balanced_parts()
- return result
-
- def put_next(self)->None:
- for part in reversed(self.simple_parts()): part.put_next()
-
- def execute(self)->None:
- """
- Execute self.
- """
- parts=self.simple_parts()
- if len(parts)==1:
- x=parts[0]
- if isinstance(x, BalancedTokenList):
- x.execute()
- return
- NTokenList([*self, T.pythonimmediatecontinue, []]).put_next()
- continue_until_passed_back()
-
- def expand_x(self)->BalancedTokenList:
- """
- x-expand self. The result must be balanced.
- """
- NTokenList([T.edef, P.tmp, bgroup, *self, egroup]).execute()
- return BalancedTokenList([P.tmp]).expand_o()
-
- def str(self)->str:
- """
- self must represent a TeX string. (i.e. equal to itself when detokenized)
- return the string content.
- """
- return "".join(t.str() for t in self)
-
- def bool(self)->bool:
- s=self.str()
- return {"0": False, "1": True}[s]
-
-
-class TeXToPyData(ABC):
- @staticmethod
- @abstractmethod
- def read()->"TeXToPyData":
- ...
- @staticmethod
- @abstractmethod
- def send_code(arg: str)->str:
- pass
- @staticmethod
- @abstractmethod
- def send_code_var(var: str)->str:
- pass
-
-# tried and failed
-#@typing.runtime_checkable
-#class TeXToPyData(Protocol):
-# @staticmethod
-# def read()->"TeXToPyData":
-# ...
-#
-# #send_code: str
-#
-# #@staticmethod
-# #@property
-# #def send_code()->str:
-# # ...
-
-
-class TTPLine(TeXToPyData, str):
- send_code=r"\immediate \write \__write_file {{\unexpanded{{ {} }}}}".format
- send_code_var=r"\immediate \write \__write_file {{\unexpanded{{ {} }}}}".format
- @staticmethod
- def read()->"TTPLine":
- return TTPLine(readline())
-
-# some old commands e.g. \$, \^, \_, \~ require \set@display@protect to be robust.
-# ~ needs to be redefined directly.
-mark_bootstrap(
-r"""
-\precattl_exec:n {
- \cs_new_protected:Npn \__begingroup_setup_estr: {
- \begingroup
- \escapechar=-1~
- \cC{set@display@protect}
- \let \cA\~ \relax
- }
-}
-""")
-
-class TTPELine(TeXToPyData, str):
- """
- Same as TTPEBlock, but for a single line only.
- """
- send_code=r"\__begingroup_setup_estr: \immediate \write \__write_file {{ {} }} \endgroup".format
- send_code_var=r"\__begingroup_setup_estr: \immediate \write \__write_file {{ {} }} \endgroup".format
- @staticmethod
- def read()->"TTPELine":
- return TTPELine(readline())
-
-class TTPEmbeddedLine(TeXToPyData, str):
- @staticmethod
- def send_code(self)->str:
- raise RuntimeError("Must be manually handled")
- @staticmethod
- def send_code_var(self)->str:
- raise RuntimeError("Must be manually handled")
- @staticmethod
- def read()->"TTPEmbeddedLine":
- raise RuntimeError("Must be manually handled")
-
-class TTPBlock(TeXToPyData, str):
- send_code=r"\__send_block:n {{ {} }}".format
- send_code_var=r"\__send_block:V {}".format
- @staticmethod
- def read()->"TTPBlock":
- return TTPBlock(read_block())
-
-class TTPEBlock(TeXToPyData, str):
- """
- A kind of argument that interprets "escaped string" and fully expand anything inside.
- For example, {\\} sends a single backslash to Python, {\{} sends a single '{' to Python.
- Done by fully expand the argument in \escapechar=-1 and convert it to a string.
- Additional precaution is needed, see the note above.
- """
- send_code=r"\__begingroup_setup_estr: \__send_block:e {{ {} }} \endgroup".format
- send_code_var=r"\__begingroup_setup_estr: \__send_block:e {} \endgroup".format
- @staticmethod
- def read()->"TTPEBlock":
- return TTPEBlock(read_block())
-
-class TTPBalancedTokenList(TeXToPyData, BalancedTokenList):
- send_code=r"\__tlserialize_nodot:Nn \__tmp {{ {} }} \immediate \write \__write_file {{\unexpanded\expandafter{{ \__tmp }}}}".format
- send_code_var=r"\__tlserialize_nodot:NV \__tmp {} \immediate \write \__write_file {{\unexpanded\expandafter{{ \__tmp }}}}".format
- @staticmethod
- def read()->"TTPBalancedTokenList":
- return TTPBalancedTokenList(BalancedTokenList.deserialize(readline()))
-
-
-class PyToTeXData(ABC):
- @staticmethod
- @abstractmethod
- def read_code(var: str)->str:
- ...
- @abstractmethod
- def write(self)->None:
- ...
-
-@dataclass
-class PTTVerbatimLine(PyToTeXData):
- """
- Represents a line to be tokenized verbatim. Internally the |\readline| primitive is used, as such, any trailing spaces are stripped.
- The trailing newline is not included, i.e. it's read under |\endlinechar=-1|.
- """
- data: str
- read_code=r"\ior_str_get:NN \__read_file {} ".format
- def write(self)->None:
- assert "\n" not in self.data
- assert self.data.rstrip()==self.data, "Cannot send verbatim line with trailing spaces!"
- send_raw(self.data+"\n")
-
-@dataclass
-class PTTInt(PyToTeXData):
- data: int
- read_code=PTTVerbatimLine.read_code
- def write(self)->None:
- PTTVerbatimLine(str(self.data)).write()
-
-@dataclass
-class PTTTeXLine(PyToTeXData):
- """
- Represents a line to be tokenized in \TeX's current catcode regime.
- The trailing newline is not included, i.e. it's tokenized under |\endlinechar=-1|.
- """
- data: str
- read_code=r"\ior_get:NN \__read_file {} ".format
- def write(self)->None:
- assert "\n" not in self.data
- send_raw(self.data+"\n")
-
-@dataclass
-class PTTBlock(PyToTeXData):
- data: str
- read_code=r"\__read_block:N {}".format
- def write(self)->None:
- send_raw(surround_delimiter(self.data))
-
-@dataclass
-class PTTBalancedTokenList(PyToTeXData):
- data: BalancedTokenList
- read_code=r"\ior_str_get:NN \__read_file {0} \__tldeserialize_dot:NV {0} {0}".format
- def write(self)->None:
- PTTVerbatimLine(self.data.serialize()+".").write()
-
-
-# ======== define TeX functions that execute Python code ========
-# ======== implementation of |\py| etc. Doesn't support verbatim argument yet. ========
-
-import itertools
-import string
-
-def random_identifiers()->Iterator[str]: # do this to avoid TeX hash collision while keeping the length short
- for len_ in itertools.count(0):
- for value in range(1<<len_):
- for initial in string.ascii_letters:
- yield initial + f"{value:0{len_}b}".translate({ord("0"): "a", ord("1"): "b"})
-
-random_identifier_iterable=random_identifiers()
-
-def get_random_identifier()->str:
- return next(random_identifier_iterable)
-
-
-def define_TeX_call_Python(f: Callable[..., None], name: Optional[str]=None, argtypes: Optional[List[Type[TeXToPyData]]]=None, identifier: Optional[str]=None)->str:
- """
- This function setups some internal data structure, and
- returns the \TeX\ code to be executed on the \TeX\ side to define the macro.
-
- f: the Python function to be executed.
- It should take some arguments and eventually (optionally) call one of the |_finish| functions.
-
- name: the macro name on the \TeX\ side. This should only consist of letter characters in |expl3| catcode regime.
-
- argtypes: list of argument types. If it's None it will be automatically deduced from the function |f|'s signature.
-
- Returns: some code (to be executed in |expl3| catcode regime) as explained above.
- """
- if argtypes is None: argtypes=[p.annotation for p in inspect.signature(f).parameters.values()]
- if name is None: name=f.__name__
-
- if identifier is None: identifier=get_random_identifier()
- assert identifier not in TeX_handlers
-
- @functools.wraps(f)
- def g()->None:
- assert argtypes is not None
- args=[argtype.read() for argtype in argtypes]
-
-
- global action_done
- old_action_done=action_done
-
- action_done=False
- try:
- f(*args)
- except:
- if action_done:
- # error occurred after 'finish' is called, cannot signal the error to TeX, will just ignore (after printing out the traceback)...
- pass
- else:
- # TODO what should be done here? What if the error raised below is caught
- action_done=True
- raise
- finally:
- if not action_done:
- run_none_finish()
-
- action_done=old_action_done
-
-
- TeX_handlers[identifier]=g
-
- TeX_argspec = ""
- TeX_send_input_commands = ""
- for i, argtype in enumerate(argtypes):
- if isinstance(argtype, str):
- raise RuntimeError("string annotation or `from __future__ import annotations' not yet supported")
- if not issubclass(argtype, TeXToPyData):
- raise RuntimeError(f"Argument type {argtype} is incorrect, should be a subclass of TeXToPyData")
- arg = f"#{i+1}"
- TeX_send_input_commands += argtype.send_code(arg)
- TeX_argspec += arg
-
- return """
- \\cs_new_protected:Npn \\""" + name + TeX_argspec + """ {
- \immediate \write \__write_file { i """ + identifier + """ }
- """ + TeX_send_input_commands + """
- \__read_do_one_command:
- }
- """
-
-
-def define_internal_handler(f: Callable)->Callable:
- mark_bootstrap(define_TeX_call_Python(f))
- return f
-
-
-import linecache
-
-# https://stackoverflow.com/questions/47183305/file-string-traceback-with-line-preview
-def exec_or_eval_with_linecache(code: str, globals: dict, mode: str)->Any:
- sourcename: str="<usercode>"
- i=0
- while sourcename in linecache.cache:
- sourcename="<usercode" + str(i) + ">"
- i+=1
-
- lines=code.splitlines(keepends=True)
- linecache.cache[sourcename] = len(code), None, lines, sourcename
-
- compiled_code=compile(code, sourcename, mode)
- return (exec if mode=="exec" else eval)(compiled_code, globals)
-
- #del linecache.cache[sourcename]
- # we never delete the cache, in case some function is defined here then later are called...
-
-def exec_with_linecache(code: str, globals: Dict[str, Any])->None:
- exec_or_eval_with_linecache(code, globals, "exec")
-
-def eval_with_linecache(code: str, globals: Dict[str, Any])->Any:
- return exec_or_eval_with_linecache(code, globals, "eval")
-
-
-@define_internal_handler
-def py(code: TTPEBlock)->None:
- pythonimmediate.run_block_finish(str(eval_with_linecache(code, user_scope))+"%")
-
-@define_internal_handler
-def pyfile(filename: TTPELine)->None:
- with open(filename, "r") as f:
- source=f.read()
- exec(compile(source, filename, "exec"), user_scope)
-
-def print_TeX(*args, **kwargs)->None:
- if not hasattr(pythonimmediate, "file"):
- raise RuntimeError("Internal error: attempt to print to TeX outside any environment!")
- if pythonimmediate.file is not None:
- functools.partial(print, file=pythonimmediate.file)(*args, **kwargs) # allow user to override `file` kwarg
-pythonimmediate.print=print_TeX
-
-class RedirectPrintTeX:
- def __init__(self, t)->None:
- self.t=t
-
- def __enter__(self)->None:
- if hasattr(pythonimmediate, "file"):
- self.old=pythonimmediate.file
- pythonimmediate.file=self.t
-
- def __exit__(self, exc_type, exc_value, tb)->None:
- if hasattr(self, "old"):
- pythonimmediate.file=self.old
- else:
- del pythonimmediate.file
-
-def run_code_redirect_print_TeX(f: Callable[[], Any])->None:
- with io.StringIO() as t:
- with RedirectPrintTeX(t):
- result=f()
- if result is not None:
- t.write(str(result)+"%")
- content=t.getvalue()
- if content.endswith("\n"):
- content=content[:-1]
- else:
- #content+=r"\empty" # this works too
- content+="%"
- pythonimmediate.run_block_finish(content)
-
-@define_internal_handler
-def pyc(code: TTPEBlock)->None:
- run_code_redirect_print_TeX(lambda: exec_with_linecache(code, user_scope))
-
-@define_internal_handler
-def pycq(code: TTPEBlock)->None:
- with RedirectPrintTeX(None):
- exec_with_linecache(code, user_scope)
- run_none_finish()
-
-mark_bootstrap(
-r"""
-\NewDocumentCommand\pyv{v}{\py{#1}}
-\NewDocumentCommand\pycv{v}{\pyc{#1}}
-""")
-
-# ======== implementation of |pycode| environment
-mark_bootstrap(
-r"""
-\NewDocumentEnvironment{pycode}{}{
- \saveenvreinsert \__code {
- \exp_last_unbraced:Nx \__pycodex {{\__code} {\the\inputlineno} {
- \ifdefined\currfilename \currfilename \fi
- } {
- \ifdefined\currfileabspath \currfileabspath \fi
- }}
- }
-}{
- \endsaveenvreinsert
-}
-""")
-
-def normalize_lines(lines: List[str])->List[str]:
- return [line.rstrip() for line in lines]
-
-@define_internal_handler
-def __pycodex(code: TTPBlock, lineno_: TTPLine, filename: TTPLine, fileabspath: TTPLine)->None:
- if not code: return
-
- lineno=int(lineno_)
- # find where the code comes from... (for easy meaningful traceback)
- target_filename: Optional[str] = None
-
- code_lines_normalized=normalize_lines(code.splitlines(keepends=True))
-
- for f in (fileabspath, filename):
- if not f: continue
- p=Path(f)
- if not p.is_file(): continue
- file_lines=p.read_text().splitlines(keepends=True)[lineno-len(code_lines_normalized)-1:lineno-1]
- if normalize_lines(file_lines)==code_lines_normalized:
- target_filename=f
- break
-
- if not target_filename:
- raise RuntimeError("Source file not found! (attempted {})".format((fileabspath, filename)))
-
- with io.StringIO() as t:
- with RedirectPrintTeX(t):
- if target_filename:
- code_=''.join(file_lines) # restore missing trailing spaces
- code_="\n"*(lineno-len(code_lines_normalized)-1)+code_
- if target_filename:
- compiled_code=compile(code_, target_filename, "exec")
- exec(compiled_code, user_scope)
- else:
- exec(code_, user_scope)
- pythonimmediate.run_block_finish(t.getvalue())
-
-# ======== Python-call-TeX functions
-# ======== additional functions...
-
-user_documentation(
-r"""
-These functions get an argument in the input stream and returns it detokenized.
-
-Which means, for example, |#| are doubled, multiple spaces might be collapsed into one, spaces might be introduced
-after a control sequence.
-
-It's undefined behavior if the message's "string representation" contains a "newline character".
-""")
-
-def template_substitute(template: str, pattern: str, substitute: Union[str, Callable[[re.Match], str]], optional: bool=False)->str:
- """
- pattern is a regex
- """
- if not optional:
- #assert template.count(pattern)==1
- assert len(re.findall(pattern, template))==1
- return re.sub(pattern, substitute, template)
-
-#typing.TypeVarTuple(PyToTeXData)
-
-#PythonCallTeXFunctionType=Callable[[PyToTeXData], Optional[Tuple[TeXToPyData, ...]]]
-
-class PythonCallTeXFunctionType(Protocol): # https://stackoverflow.com/questions/57658879/python-type-hint-for-callable-with-variable-number-of-str-same-type-arguments
- def __call__(self, *args: PyToTeXData)->Optional[Tuple[TeXToPyData, ...]]: ...
-
-class PythonCallTeXSyncFunctionType(PythonCallTeXFunctionType, Protocol): # https://stackoverflow.com/questions/57658879/python-type-hint-for-callable-with-variable-number-of-str-same-type-arguments
- def __call__(self, *args: PyToTeXData)->Tuple[TeXToPyData, ...]: ...
-
-
-@dataclass(frozen=True)
-class Python_call_TeX_data:
- TeX_code: str
- recursive: bool
- finish: bool
- sync: Optional[bool]
-
-@dataclass(frozen=True)
-class Python_call_TeX_extra:
- ptt_argtypes: Tuple[Type[PyToTeXData], ...]
- ttp_argtypes: Union[Type[TeXToPyData], Tuple[Type[TeXToPyData], ...]]
-
-Python_call_TeX_defined: Dict[Python_call_TeX_data, Tuple[Python_call_TeX_extra, Callable]]={}
-
-def Python_call_TeX_local(TeX_code: str, *, recursive: bool=True, sync: Optional[bool]=None, finish: bool=False)->Callable:
- data=Python_call_TeX_data(
- TeX_code=TeX_code, recursive=recursive, sync=sync, finish=finish
- )
- return Python_call_TeX_defined[data][1]
-
-def build_Python_call_TeX(T: Type, TeX_code: str, *, recursive: bool=True, sync: Optional[bool]=None, finish: bool=False)->None:
- assert T.__origin__ == typing.Callable[[], None].__origin__ # type: ignore
- # might be typing.Callable or collections.abc.Callable depends on Python version
- data=Python_call_TeX_data(
- TeX_code=TeX_code, recursive=recursive, sync=sync, finish=finish
- )
-
- tmp: Any = T.__args__[-1]
- ttp_argtypes: Union[Type[TeXToPyData], Tuple[Type[TeXToPyData], ...]]
- if tmp is type(None):
- ttp_argtypes = ()
- elif isinstance(tmp, type) and issubclass(tmp, TeXToPyData):
- # special case, return a single object instead of a tuple of length 1
- ttp_argtypes = tmp
- else:
- ttp_argtypes = tmp.__args__ # type: ignore
-
- extra=Python_call_TeX_extra(
- ptt_argtypes=T.__args__[:-1],
- ttp_argtypes=ttp_argtypes
- ) # type: ignore
- if data in Python_call_TeX_defined:
- assert Python_call_TeX_defined[data][0]==extra
- else:
- if isinstance(ttp_argtypes, type) and issubclass(ttp_argtypes, TeXToPyData):
- # special case, return a single object instead of a tuple of length 1
- code, result1=define_Python_call_TeX(TeX_code=TeX_code, ptt_argtypes=[*extra.ptt_argtypes], ttp_argtypes=[ttp_argtypes],
- recursive=recursive, sync=sync, finish=finish,
- )
- def result(*args):
- [tmp]=result1(*args)
- return tmp
- else:
- code, result=define_Python_call_TeX(TeX_code=TeX_code, ptt_argtypes=[*extra.ptt_argtypes], ttp_argtypes=[*ttp_argtypes],
- recursive=recursive, sync=sync, finish=finish,
- )
- mark_bootstrap(code)
- Python_call_TeX_defined[data]=extra, result
-
-def scan_Python_call_TeX(filename: str)->None:
- """
- scan the file in filename for occurrences of typing.cast(T, Python_call_TeX_local(...)), then call build_Python_call_TeX(T, ...) for each occurrence.
-
- Don't use on untrusted code.
- """
- import ast
- from copy import deepcopy
- for node in ast.walk(ast.parse(Path(filename).read_text(), mode="exec")):
- try:
- if isinstance(node, ast.Call):
- if (
- isinstance(node.func, ast.Attribute) and
- isinstance(node.func.value, ast.Name) and
- node.func.value.id == "typing" and
- node.func.attr == "cast"
- ):
- T = node.args[0]
- if isinstance(node.args[1], ast.Call):
- f_call = node.args[1]
- if isinstance(f_call.func, ast.Name):
- if f_call.func.id == "Python_call_TeX_local":
- f_call=deepcopy(f_call)
- assert isinstance(f_call.func, ast.Name)
- f_call.func.id="build_Python_call_TeX"
- f_call.args=[T]+f_call.args
- eval(compile(ast.Expression(body=f_call), "<string>", "eval"))
- except:
- print("======== error on line", node.lineno, "========", file=sys.stderr)
- raise
-
-def define_Python_call_TeX(TeX_code: str, ptt_argtypes: List[Type[PyToTeXData]], ttp_argtypes: List[Type[TeXToPyData]],
- *,
- recursive: bool=True,
- sync: Optional[bool]=None,
- finish: bool=False,
- )->Tuple[str, PythonCallTeXFunctionType]:
- r"""
- |TeX_code| should be some expl3 code that defines a function with name |%name%| that when called should:
- * run some \TeX\ code (which includes reading the arguments, if any)
- * do the following if |sync|:
- * send |r| to Python (equivalently write %sync%)
- * send whatever needed for the output (as in |ttp_argtypes|)
- * call |\__read_do_one_command:| iff not |finish|.
-
- This is allowed to contain the following:
- * %name%: the name of the function to be defined as explained above.
- * %read_arg0(\var_name)%, %read_arg1(...)%: will be expanded to code that reads the input.
- * %send_arg0(...)%, %send_arg1(...)%: will be expanded to code that sends the content.
- * %send_arg0_var(\var_name)%, %send_arg1_var(...)%: will be expanded to code that sends the content in the variable.
- * %optional_sync%: expanded to code that writes |r| (to sync), if |sync| is True.
-
- ptt_argtypes: list of argument types to be sent from Python to TeX (i.e. input of the TeX function)
-
- ttp_argtypes: list of argument types to be sent from TeX to Python (i.e. output of the TeX function)
-
- recursive: whether the TeX_code might call another Python function. Default to True.
- It does not hurt to always specify True, but performance would be a bit slower.
-
- sync: whether the Python function need to wait for the TeX function to finish.
- Required if |ttp_argtypes| is not empty.
- This should be left to be the default None most of the time. (which will make it always sync if |debugging|,
- otherwise only sync if needed i.e. there's some output)
-
- finish: Include this if and only if |\__read_do_one_command:| is omitted.
- Normally this is not needed, but it can be used as a slight optimization; and it's needed internally to implement
- |run_none_finish| among others.
- For each TeX-call-Python layer, \emph{exactly one} |finish| call can be made. If the function itself doesn't call
- any |finish| call (which happens most of the time), then the wrapper will call |run_none_finish|.
-
- Return some TeX code to be executed, and a Python function object that when called will call the TeX function
- and return the result.
-
- Possible optimizations:
- * the |r| is not needed if not recursive and |ttp_argtypes| is nonempty
- (the output itself tells Python when the \TeX\ code finished)
- * the first line of the output may be on the same line as the |r| itself (done, use TTPEmbeddedLine type, although a bit hacky)
- """
- if ttp_argtypes!=[]:
- assert sync!=False
- sync=True
-
- if sync is None:
- sync=pythonimmediate.debugging
-
- TeX_code=template_substitute(TeX_code, "%optional_sync%",
- lambda _: r'\immediate\write\__write_file { r }' if sync else '',)
-
- TeX_code=template_substitute(TeX_code, "%sync%",
- lambda _: r'\immediate\write\__write_file { r }' if sync else '', optional=True)
-
- assert sync is not None
- if ttp_argtypes: assert sync
- assert ttp_argtypes.count(TTPEmbeddedLine)<=1
- identifier=get_random_identifier() # TODO to be fair it isn't necessary to make the identifier both ways distinct, can reuse
-
- TeX_code=template_substitute(TeX_code, "%name%", lambda _: r"\__run_" + identifier + ":")
-
- for i, argtype_ in enumerate(ptt_argtypes):
- TeX_code=template_substitute(TeX_code, r"%read_arg" + str(i) + r"\(([^)]*)\)%",
- lambda match: argtype_.read_code(match[1]),
- optional=True)
-
- for i, argtype in enumerate(ttp_argtypes):
- TeX_code=template_substitute(TeX_code, f"%send_arg{i}" + r"\(([^)]*)\)%",
- lambda match: argtype.send_code(match[1]),
- optional=True)
- TeX_code=template_substitute(TeX_code, f"%send_arg{i}_var" + r"\(([^)]*)\)%",
- lambda match: argtype.send_code_var(match[1]),
- optional=True)
-
- def f(*args)->Optional[Tuple[TeXToPyData, ...]]:
- assert len(args)==len(ptt_argtypes)
-
- # send function header
- check_not_finished()
- if finish:
- global action_done
- action_done=True
- send_raw(identifier+"\n")
-
- # send function args
- for arg, argtype in zip(args, ptt_argtypes):
- assert isinstance(arg, argtype)
- arg.write()
-
- if not sync: return None
-
- # wait for the result
- if recursive:
- result_=run_main_loop()
- else:
- result_=run_main_loop_get_return_one()
-
- result: List[TeXToPyData]=[]
- if TTPEmbeddedLine not in ttp_argtypes:
- assert not result_
- for argtype_ in ttp_argtypes:
- if argtype_==TTPEmbeddedLine:
- result.append(TTPEmbeddedLine(result_))
- else:
- result.append(argtype_.read())
- return tuple(result)
-
- return TeX_code, f
-
-scan_Python_call_TeX(__file__)
-
-def define_Python_call_TeX_local(*args, **kwargs)->PythonCallTeXFunctionType:
- """
- used to define "local" handlers i.e. used by this library.
- The code will be included in mark_bootstrap().
- """
- code, result=define_Python_call_TeX(*args, **kwargs)
- mark_bootstrap(code)
- return result
-
-# essentially this is the same as the above, but just that the return type is guaranteed to be not None to satisfy type checkers
-def define_Python_call_TeX_local_sync(*args, **kwargs)->PythonCallTeXSyncFunctionType:
- return define_Python_call_TeX_local(*args, **kwargs, sync=True) # type: ignore
-
-run_none_finish=define_Python_call_TeX_local(
-r"""
-\cs_new_eq:NN %name% \relax
-""", [], [], finish=True, sync=False)
-
-
-"""
-|run_error_finish| is fatal to TeX, so we only run it when it's fatal to Python.
-
-We want to make sure the Python traceback is printed strictly before run_error_finish() is called,
-so that the Python traceback is not interleaved with TeX error messages.
-"""
-run_error_finish=define_Python_call_TeX_local(
-r"""
-\msg_new:nnn {pythonimmediate} {python-error} {Python~error.}
-\cs_new_protected:Npn %name% {
- %read_arg0(\__data)%
- \wlog{^^JPython~error~traceback:^^J\__data^^J}
- \msg_error:nn {pythonimmediate} {python-error}
-}
-""", [PTTBlock], [], finish=True, sync=False)
-
-
-put_next_blue=define_Python_call_TeX_local(
-r"""
-\cs_new_protected:Npn \__put_next_blue_tmp {
- %optional_sync%
- \expandafter \__read_do_one_command: \noexpand
-}
-\cs_new_protected:Npn %name% {
- %read_arg0(\__target)%
- \expandafter \__put_next_blue_tmp \__target
-}
-"""
- , [PTTBalancedTokenList], [], recursive=False)
-
-
-put_next_tokenlist=define_Python_call_TeX_local(
-r"""
-\cs_new_protected:Npn \__put_next_tmp {
- %optional_sync%
- \__read_do_one_command:
-}
-\cs_new_protected:Npn %name% {
- %read_arg0(\__target)%
- \expandafter \__put_next_tmp \__target
-}
-"""
- , [PTTBalancedTokenList], [], recursive=False)
-
-get_next_=define_Python_call_TeX_local_sync(
-r"""
-\cs_new_protected:Npn %name% {
- \peek_analysis_map_inline:n {
- \peek_analysis_map_break:n {
- \__tlserialize_char_unchecked:nnNN {##1}{##2}##3 \pythonimmediatecontinue
- }
- }
-}
-""", [], [TTPEmbeddedLine], recursive=False)
-
-put_next_bgroup=define_Python_call_TeX_local_sync(
-r"""
-\cs_new_protected:Npn %name% {
- %read_arg0(\__index)%
- \expandafter \expandafter \expandafter \pythonimmediatecontinuenoarg
- \char_generate:nn {\__index} {1}
-}
-""", [PTTInt], [], recursive=False)
-
-put_next_egroup=define_Python_call_TeX_local_sync(
-r"""
-\cs_new_protected:Npn %name% {
- %read_arg0(\__index)%
- \expandafter \expandafter \expandafter \pythonimmediatecontinuenoarg
- \char_generate:nn {\__index} {2}
-}
-""", [PTTInt], [], recursive=False)
-
-
-get_argument_tokenlist_=define_Python_call_TeX_local_sync(
-r"""
-\cs_new_protected:Npn %name% #1 {
- %sync%
- %send_arg0(#1)%
- \__read_do_one_command:
-}
-""", [], [TTPBalancedTokenList], recursive=False)
-
-
-run_tokenized_line_local_=define_Python_call_TeX_local(
-r"""
-\cs_new_protected:Npn %name% {
- %read_arg0(\__data)%
- \__data
- %optional_sync%
- \__read_do_one_command:
-}
-""", [PTTTeXLine], [])
-
-@export_function_to_module
-def run_tokenized_line_local(line: str, *, check_braces: bool=True, check_newline: bool=True, check_continue: bool=True)->None:
- check_line(line, braces=check_braces, newline=check_newline, continue_=(False if check_continue else None))
- run_tokenized_line_local_(PTTTeXLine(line))
-
-
-
-@export_function_to_module
-def run_tokenized_line_peek(line: str, *, check_braces: bool=True, check_newline: bool=True, check_continue: bool=True)->str:
- check_line(line, braces=check_braces, newline=check_newline, continue_=(True if check_continue else None))
- return typing.cast(
- Callable[[PTTTeXLine], Tuple[TTPEmbeddedLine]],
- Python_call_TeX_local(
- r"""
- \cs_new_protected:Npn %name% {
- %read_arg0(\__data)%
- \__data
- }
- """)
- )(PTTTeXLine(line))[0]
-
-
-run_block_local_=define_Python_call_TeX_local(
-r"""
-\cs_new_protected:Npn %name% {
- %read_arg0(\__data)%
- \begingroup \newlinechar=10~ \expandafter \endgroup
- \scantokens \expandafter{\__data}
- % trick described in https://tex.stackexchange.com/q/640274 to scantokens the code with \newlinechar=10
-
- %optional_sync%
- \__read_do_one_command:
-}
-""", [PTTBlock], [])
-
-@export_function_to_module
-def run_block_local(block: str)->None:
- run_block_local_(PTTBlock(block))
-
-expand_o_=define_Python_call_TeX_local_sync(
-r"""
-\cs_new_protected:Npn %name% {
- %read_arg0(\__data)%
- \exp_args:NNV \tl_set:No \__data \__data
- %sync%
- %send_arg0_var(\__data)%
- \__read_do_one_command:
-}
-""", [PTTBalancedTokenList], [TTPBalancedTokenList], recursive=expansion_only_can_call_Python)
-
-expand_x_=define_Python_call_TeX_local_sync(
-r"""
-\cs_new_protected:Npn %name% {
- %read_arg0(\__data)%
- \tl_set:Nx \__data {\__data}
- %sync%
- %send_arg0_var(\__data)%
- \__read_do_one_command:
-}
-""", [PTTBalancedTokenList], [TTPBalancedTokenList], recursive=expansion_only_can_call_Python)
-
-execute_=define_Python_call_TeX_local(
-r"""
-\cs_new_protected:Npn %name% {
- %read_arg0(\__data)%
- \__data
- %optional_sync%
- \__read_do_one_command:
-}
-""", [PTTBalancedTokenList], [])
-
-futurelet_=define_Python_call_TeX_local_sync(
-r"""
-\cs_new_protected:Npn %name% {
- %read_arg0(\__data)%
- \expandafter \futurelet \__data \pythonimmediatecontinuenoarg
-}
-""", [PTTBalancedTokenList], [])
-
-futureletnext_=define_Python_call_TeX_local_sync(
-r"""
-\cs_new_protected:Npn %name% {
- %read_arg0(\__data)%
- \afterassignment \pythonimmediatecontinuenoarg \expandafter \futurelet \__data
-}
-""", [PTTBalancedTokenList], [])
-
-continue_until_passed_back_=define_Python_call_TeX_local_sync(
-r"""
-\cs_new_eq:NN %name% \relax
-""", [], [TTPEmbeddedLine])
-
-@export_function_to_module
-def continue_until_passed_back_str()->str:
- """
- Usage:
-
- First put some tokens in the input stream that includes |\pythonimmediatecontinue{...}|
- (or |%sync% \__read_do_one_command:|), then call |continue_until_passed_back()|.
-
- The function will only return when the |\pythonimmediatecontinue| is called.
- """
- return str(continue_until_passed_back_()[0])
-
-@export_function_to_module
-def continue_until_passed_back()->None:
- """
- Same as |continue_until_passed_back_str()| but nothing can be returned from TeX to Python.
- """
- result=continue_until_passed_back_str()
- assert not result
-
-
-@export_function_to_module
-def expand_once()->None:
- typing.cast(Callable[[], None], Python_call_TeX_local(
- r"""
- \cs_new_protected:Npn %name% { \expandafter \pythonimmediatecontinuenoarg }
- """, recursive=False, sync=True))()
-
-
-@export_function_to_module
-@user_documentation
-def get_arg_str()->str:
- """
- Get a mandatory argument.
- """
- return typing.cast(Callable[[], TTPEmbeddedLine], Python_call_TeX_local(
- r"""
- \cs_new_protected:Npn %name% #1 {
- \immediate\write\__write_file { \unexpanded {
- r #1
- }}
- \__read_do_one_command:
- }
- """, recursive=False))()
-
-get_arg_estr_=define_Python_call_TeX_local_sync(
-r"""
-\cs_new_protected:Npn %name% #1 {
- %sync%
- %send_arg0(#1)%
- \__read_do_one_command:
-}
-""", [], [TTPEBlock], recursive=False)
-@export_function_to_module
-@user_documentation
-def get_arg_estr()->str:
- return str(get_arg_estr_()[0])
-
-
-get_optional_argument_detokenized_=define_Python_call_TeX_local_sync(
-r"""
-\NewDocumentCommand %name% {o} {
- \immediate\write \__write_file {
- r ^^J
- \IfNoValueTF {#1} {
- 0
- } {
- \unexpanded{1 #1}
- }
- }
- \__read_do_one_command:
-}
-""", [], [TTPLine], recursive=False)
-@export_function_to_module
-@user_documentation
-def get_optional_arg_str()->Optional[str]:
- """
- Get an optional argument.
- """
- [result]=get_optional_argument_detokenized_()
- result_=str(result)
- if result_=="0": return None
- assert result_[0]=="1", result_
- return result_[1:]
-
-
-get_optional_arg_estr_=define_Python_call_TeX_local_sync(
-r"""
-\NewDocumentCommand %name% {o} {
- %sync%
- \IfNoValueTF {#1} {
- %send_arg0(0)%
- } {
- %send_arg0(1 #1)%
- }
- \__read_do_one_command:
-}
-""", [], [TTPEBlock], recursive=False)
-
-@export_function_to_module
-@user_documentation
-def get_optional_arg_estr()->Optional[str]:
- [result]=get_optional_arg_estr_()
- result_=str(result)
- if result_=="0": return None
- assert result_[0]=="1", result_
- return result_[1:]
-
-
-get_verbatim_argument_=define_Python_call_TeX_local_sync(
-r"""
-\NewDocumentCommand %name% {v} {
- \immediate\write\__write_file { \unexpanded {
- r ^^J
- #1
- }}
- \__read_do_one_command:
-}
-""", [], [TTPLine], recursive=False)
-@export_function_to_module
-@user_documentation
-def get_verb_arg()->str:
- """
- Get a verbatim argument. Since it's verbatim, there's no worry of |#| being doubled,
- but it can only be used at top level.
- """
- return str(get_verbatim_argument_()[0])
-
-get_multiline_verbatim_argument_=define_Python_call_TeX_local_sync(
-r"""
-\NewDocumentCommand %name% {+v} {
- \immediate\write\__write_file { r }
- \begingroup
- \newlinechar=13~ % this is what +v argument type in xparse uses
- \__send_block:n { #1 }
- \endgroup
- \__read_do_one_command:
-}
-""", [], [TTPBlock], recursive=False)
-@export_function_to_module
-@user_documentation
-def get_multiline_verb_arg()->str:
- """
- Get a multi-line verbatim argument.
- """
- return str(get_multiline_verbatim_argument_()[0])
-
-newcommand2=define_Python_call_TeX_local(
-r"""
-\cs_new_protected:Npn %name% {
- \begingroup
- \endlinechar=-1~
- %read_arg0(\__line)%
- %read_arg1(\__identifier)%
- \cs_new_protected:cpx {\__line} {
- \unexpanded{\immediate\write \__write_file} { i \__identifier }
- \unexpanded{\__read_do_one_command:}
- }
- \endgroup
- %optional_sync%
- \__read_do_one_command:
-}
-""", [PTTVerbatimLine, PTTVerbatimLine], [], recursive=False)
-
-renewcommand2=define_Python_call_TeX_local(
-r"""
-\cs_new_protected:Npn %name% {
- \begingroup
- \endlinechar=-1~
- \readline \__read_file to \__line
- \readline \__read_file to \__identifier
- \exp_args:Ncx \renewcommand {\__line} {
- \unexpanded{\immediate\write \__write_file} { i \__identifier }
- \unexpanded{\__read_do_one_command:}
- }
- \exp_args:Nc \MakeRobust {\__line} % also make the command global
- \endgroup
- %optional_sync%
- \__read_do_one_command:
-}
-""", [PTTVerbatimLine, PTTVerbatimLine], [], recursive=False)
-
-def check_function_name(name: str)->None:
- if not re.fullmatch("[A-Za-z]+", name) or (len(name)==1 and ord(name)<=0x7f):
- raise RuntimeError("Invalid function name: "+name)
-
-def newcommand_(name: str, f: Callable)->Callable:
- identifier=get_random_identifier()
-
- newcommand2(PTTVerbatimLine(name), PTTVerbatimLine(identifier))
-
- _code=define_TeX_call_Python(
- lambda: run_code_redirect_print_TeX(f),
- name, argtypes=[], identifier=identifier)
- # ignore _code, already executed something equivalent in the TeX command
- return f
-
-def renewcommand_(name: str, f: Callable)->Callable:
- identifier=get_random_identifier()
-
- renewcommand2(PTTVerbatimLine(name), PTTVerbatimLine(identifier))
- # TODO remove the redundant entry from TeX_handlers (although technically is not very necessary, just cause slight memory leak)
- #try: del TeX_handlers["u"+name]
- #except KeyError: pass
-
- _code=define_TeX_call_Python(
- lambda: run_code_redirect_print_TeX(f),
- name, argtypes=[], identifier=identifier)
- # ignore _code, already executed something equivalent in the TeX command
- return f
-
-
-
-@export_function_to_module
-def newcommand(x: Union[str, Callable, None]=None, f: Optional[Callable]=None)->Callable:
- """
- Define a new \TeX\ command.
- If name is not provided, it's automatically deduced from the function.
- """
- if f is not None: return newcommand(x)(f)
- if x is None: return newcommand # weird design but okay (allow |@newcommand()| as well as |@newcommand|)
- if isinstance(x, str): return functools.partial(newcommand_, x)
- return newcommand_(x.__name__, x)
-
-@export_function_to_module
-def renewcommand(x: Union[str, Callable, None]=None, f: Optional[Callable]=None)->Callable:
- """
- Redefine a \TeX\ command.
- If name is not provided, it's automatically deduced from the function.
- """
- if f is not None: return newcommand(x)(f)
- if x is None: return newcommand # weird design but okay (allow |@newcommand()| as well as |@newcommand|)
- if isinstance(x, str): return functools.partial(renewcommand_, x)
- return renewcommand_(x.__name__, x)
-
-
-# ========
-
-put_next_TeX_line=define_Python_call_TeX_local(
-r"""
-\cs_new_protected:Npn \__put_next_tmpa {
- %optional_sync%
- \__read_do_one_command:
-}
-\cs_new_protected:Npn %name% {
- %read_arg0(\__target)%
- \expandafter \__put_next_tmpa \__target
-}
-"""
- , [PTTTeXLine], [], recursive=False)
-
-@export_function_to_module
-@user_documentation
-def put_next(arg: Union[str, Token, BalancedTokenList])->None:
- """
- Put some content forward in the input stream.
-
- arg: has type |str| (will be tokenized in the current catcode regime, must be a single line),
- or |BalancedTokenList|.
- """
- if isinstance(arg, str): put_next_TeX_line(PTTTeXLine(arg))
- else: arg.put_next()
-
-
-
-# TODO I wonder which one is faster. Need to benchmark...
-@export_function_to_module
-@user_documentation
-def peek_next_meaning()->str:
- """
- Get the meaning of the following token, as a string, using the current |\escapechar|.
-
- This is recommended over |peek_next_token()| as it will not tokenize an extra token.
-
- It's undefined behavior if there's a newline (|\newlinechar| or |^^J|, the latter is OS-specific)
- in the meaning string.
- """
- return typing.cast(Callable[[], TTPEmbeddedLine], Python_call_TeX_local(
- r"""
- \cs_new_protected:Npn \__peek_next_meaning_callback: {
-
- \edef \__tmp {\meaning \__tmp} % just in case |\__tmp| is outer, |\write| will not be able to handle it
- %\immediate\write \__write_file { r \unexpanded\expandafter{\__tmp} }
- \immediate\write \__write_file { r \__tmp }
-
- \__read_do_one_command:
- }
- \cs_new_protected:Npn %name% {
- \futurelet \__tmp \__peek_next_meaning_callback:
- }
- """, recursive=False))()
-
-
-if 0:
- peek_next_char_=define_Python_call_TeX_local_sync(
-
- # first attempt. Slower than peek_next_meaning.
- r"""
- \cs_new_protected:Npn \__peek_next_char_callback: {
- \edef \__tmpb { \expandafter\str_item:nn\expandafter{\meaning \__tmp} {-1} } % \expandafter just in case \__tmp is \outer
- \if \noexpand\__tmp \__tmpb % is a character
- \immediate\write \__write_file { r^^J \__tmpb . }
- \else % is not?
- \immediate\write \__write_file { r^^J }
- \fi
- \__read_do_one_command:
- }
- \cs_new_protected:Npn %name% {
- \futurelet \__tmp \__peek_next_char_callback:
- }
- """
-
- # second attempt. Faster than before but still slower than peek_next_meaning.
- #r"""
- #\cs_new_protected:Npn %name% {
- # \futurelet \__tmp \__peek_next_char_callback:
- #}
- #
- #\cs_new_protected:Npn \__peek_next_char_callback: {
- # %\if \noexpand\__tmp \c_space_token % there's also this case and that \__tmp is some TeX primitive conditional...
- # \expandafter \__peek_next_char_callback_b: \meaning \__tmp \relax
- #}
- #
- #\cs_new_protected:Npn \__peek_next_char_callback_b: #1 #2 {
- # \ifx #2 \relax
- # \if \noexpand\__tmp #1 % is a character
- # \immediate\write \__write_file { r^^J #1 }
- # \else % is not?
- # \immediate\write \__write_file { r^^J }
- # \fi
- # \expandafter \__read_do_one_command:
- # \else
- # \expandafter \__peek_next_char_callback_b: \expandafter #2
- # \fi
- #}
- #
- #"""
-
- , [], [TTPLine], recursive=False)
-
-
-
-meaning_str_to_catcode: Dict[str, Catcode]={
- "begin-group character ": Catcode.bgroup,
- "end-group character ": Catcode.egroup,
- "math shift character ": Catcode.math,
- "alignment tab character ": Catcode.alignment,
- "macro parameter character ": Catcode.parameter,
- "superscript character ": Catcode.superscript,
- "subscript character ": Catcode.subscript,
- "blank space ": Catcode.space,
- "the letter ": Catcode.letter,
- "the character ": Catcode.other,
- }
-
-def parse_meaning_str(s: str)->Optional[Tuple[Catcode, str]]:
- if s and s[:-1] in meaning_str_to_catcode:
- return meaning_str_to_catcode[s[:-1]], s[-1]
- return None
-
-@export_function_to_module
-@user_documentation
-def peek_next_char()->str:
- """
- Get the character of the following token, or empty string if it's not a character.
- Will also return nonempty if the next token is an implicit character token.
-
- Uses peek_next_meaning() under the hood to get the meaning of the following token. See peek_next_meaning() for a warning on undefined behavior.
- """
-
- #return str(peek_next_char_()[0])
- # too slow (marginally slower than peek_next_meaning)
-
- r=parse_meaning_str(peek_next_meaning())
- if r is None:
- return ""
- return r[1]
-
-@export_function_to_module
-def get_next_char()->str:
- result=Token.get_next()
- assert isinstance(result, CharacterToken), "Next token is not a character!"
- return result.chr
-
-# ========
-
-try:
- send_bootstrap_code()
- run_main_loop() # if this returns cleanly TeX has no error. Otherwise some readline() will reach eof and print out a stack trace
- assert not raw_readline(), "Internal error: TeX sends extra line"
-
-except:
- # see also documentation of run_error_finish.
- sys.stderr.write("\n")
- traceback.print_exc(file=sys.stderr)
-
- if do_run_error_finish:
- action_done=False # force run it
- run_error_finish(PTTBlock("".join(traceback.format_exc())))
-
- os._exit(0)
-
diff --git a/macros/latex/contrib/sagetex/PKG-INFO b/macros/latex/contrib/sagetex/PKG-INFO
index 628c7e2da9..6cc7afeaa0 100644
--- a/macros/latex/contrib/sagetex/PKG-INFO
+++ b/macros/latex/contrib/sagetex/PKG-INFO
@@ -1,12 +1,15 @@
-Metadata-Version: 1.0
+Metadata-Version: 2.1
Name: sagetex
-Version: 3.5
+Version: 3.6.1
Summary: Embed Sage code and plots into LaTeX
Home-page: https://github.com/sagemath/sagetex
-Author: SageMath developers
-Author-email: sage-devel@googlegroups.com
+Author: Dan Drake
+Author-email: dr.dan.drake@gmail.com
+Maintainer: SageMath developers
+Maintainer-email: sage-devel@googlegroups.com
License: GPLv2+
-Description: The SageTeX package allows you to embed code,
- results of computations, and plots from the Sage mathematics
- software suite (http://sagemath.org) into LaTeX documents.
-Platform: UNKNOWN
+License-File: LICENSE
+
+The SageTeX package allows you to embed code,
+ results of computations, and plots from the Sage mathematics
+ software suite (http://sagemath.org) into LaTeX documents.
diff --git a/macros/latex/contrib/sagetex/README.md b/macros/latex/contrib/sagetex/README.md
index f6e75ac061..2864569f39 100644
--- a/macros/latex/contrib/sagetex/README.md
+++ b/macros/latex/contrib/sagetex/README.md
@@ -8,7 +8,7 @@ computations, and plots from the Sage mathematics software suite
SageTeX is included with Sage, so to use it, you only need to make the
file sagetex.sty known to TeX; that file will be in
-SAGE_ROOT/local/share/texmf/tex/latex/sagetex, along with
+SAGE_ROOT/venv/share/texmf/tex/latex/sagetex, along with
documentation and examples. See the Sage tutorial at
https://doc.sagemath.org/html/en/tutorial/sagetex.html
for a quick usage introduction, and for complete installation
@@ -23,14 +23,14 @@ the SAGE_ROOT/... directory mentioned above.
If you want to extract any of SageTeX's files from the .dtx sources, you
can do
- 0. Run `latex sagetex.ins'
+ 0. Run `latex sagetex.ins`
To regenerate the documentation, do
- 1. Run `latex sagetex.dtx'
- 2. Run `sage sagetex.sage'
+ 1. Run `latex sagetex.dtx`
+ 2. Run `sage sagetex.sage`
3. Run the indexing commands that the .ins file told you about.
- 4. Run `latex sagetex.dtx' again.
+ 4. Run `latex sagetex.dtx` again.
You can skip step 3 if you don't care about the index. You will need the
pgf and tikz packages installed to typeset the figures.
diff --git a/macros/latex/contrib/sagetex/example.pdf b/macros/latex/contrib/sagetex/example.pdf
index af815f0b56..2f8c9347d5 100644
--- a/macros/latex/contrib/sagetex/example.pdf
+++ b/macros/latex/contrib/sagetex/example.pdf
Binary files differ
diff --git a/macros/latex/contrib/sagetex/py-and-sty.dtx b/macros/latex/contrib/sagetex/py-and-sty.dtx
index 49bf5cd05e..acd92c08e2 100644
--- a/macros/latex/contrib/sagetex/py-and-sty.dtx
+++ b/macros/latex/contrib/sagetex/py-and-sty.dtx
@@ -29,7 +29,7 @@
% and |listings| for the |sagecommandline| environment.
% \begin{macrocode}
\RequirePackage{listings}
-\RequirePackage{color}
+\RequirePackage{xcolor}
\lstdefinelanguage{Sage}[]{Python}
{morekeywords={False,sage,True},sensitive=true}
\lstdefinelanguage{SageOutput}[]{}
@@ -68,9 +68,9 @@
\lstdefinestyle{SageOutput}{
style=DefaultSageOutput,
}
-\definecolor{dbluecolor}{rgb}{0.01,0.02,0.7}
-\definecolor{dgreencolor}{rgb}{0.2,0.4,0.0}
-\definecolor{dgraycolor}{rgb}{0.30,0.3,0.30}
+\providecolor{dbluecolor}{rgb}{0.01,0.02,0.7}
+\providecolor{dgreencolor}{rgb}{0.2,0.4,0.0}
+\providecolor{dgraycolor}{rgb}{0.30,0.3,0.30}
% \end{macrocode}
% Unsurprisingly, the |\sageplot| command works poorly without graphics
% support.
@@ -1243,7 +1243,7 @@ http://doc.sagemath.org/html/en/tutorial/sagetex.html.""".format(jobname,
raise SyntaxError(""" SageTeX no longer supports "..." for line continuation in sagexample and
sagecommandline environments. Use "....:", which matches what the Sage
interpreter uses. See the documentation and example file in
-SAGE_ROOT/local/share/doc/sagetex.""")
+SAGE_ROOT/venv/share/doc/sagetex.""")
if has_cont:
cmd.append(line[has_cont.end():])
ret.append((start, end, '\n'.join(cmd)))
@@ -1521,9 +1521,9 @@ SAGE_ROOT/local/share/doc/sagetex.""")
% \begin{center}
% \verb+egrep -v '^( _st_.goboom| ?_st_.current_tex_line|print(.SageT)' filename.sage | md5sum+
% \end{center}
-% in a shell. The included |run-sagetex-if-necessary| uses this
+% in a shell. The included |sagetex-run| uses this
% mechanism to, well, only run Sage when necessary; see
-% \autoref{sec:run-sagetex-if-necessary}.
+% \autoref{sec:sagetex-run}.
% \begin{macrocode}
def endofdoc(self):
sagef = open(self.filename + '.sagetex.sage', 'r')
diff --git a/macros/latex/contrib/sagetex/sagetex.dtx b/macros/latex/contrib/sagetex/sagetex.dtx
index b5598d990e..e028698816 100644
--- a/macros/latex/contrib/sagetex/sagetex.dtx
+++ b/macros/latex/contrib/sagetex/sagetex.dtx
@@ -30,10 +30,10 @@
%<latex>\ProvidesPackage{sagetex}
%<python>__version__ = """
%<*latex|python>
- [2020/08/12 v3.5 embedding Sage into LaTeX documents]
+ [2022/08/21 v3.6.1 embedding Sage into LaTeX documents]
%</latex|python>
%<python>""".strip()
-%<latex>\newcommand{\ST@ver}{2020/08/12 v3.5}
+%<latex>\newcommand{\ST@ver}{2022/08/21 v3.6.1}
%<*driver>
\documentclass{ltxdoc}
\usepackage{sagetex}
@@ -261,9 +261,9 @@ suggestions.
% |sage.plot.plot?| and look for |ticks| and |tick_formatter|.)
%
% Till Tantau has some good commentary on the use of graphics in the
-% \href{http://www.ctan.org/tex-archive/help/Catalogue/entries/pgf.html}{``Guidelines
+% \href{https://pgf-tikz.github.io/pgf/pgfmanual.pdf}{``Guidelines
% on Graphics'' section of the \textsc{pgf} manual} (chapter 7 of the
-% manual for version 2.10). You should always give careful thought and
+% manual for version 3.1.9). You should always give careful thought and
% attention to creating graphics for your document; I have in mind that
% a good workflow for using \ST for plotting is something like this:
%
@@ -539,7 +539,7 @@ suggestions.
% ``\percent'' inside such an environment will get written, uh, verbatim
% to the |.sage| file.
%
-% \paragraph{Arguments with side effects}
+% \subsubsection{Arguments with side effects}
%
% Be careful when feeding |\sage| and |\sagestr| arguments that have
% side effects, since in some situations they can get evaluated more
@@ -763,7 +763,7 @@ suggestions.
% indented when typeset. You can change this length however you like
% with |\setlength|: do |\setlength{\sagetexindent}{6ex}| or whatever.
%
-% \DescribeEnv{sageexample} This environment allow you to include
+% \DescribeEnv{sageexample} This environment allows you to include
% doctest-like snippets in your document that will be nicely typeset.
% For example,
% \begin{quote}
@@ -811,7 +811,7 @@ suggestions.
% Thi\'ery.\\
%
% \DescribeEnv{sagecommandline} This environment is similar to the
-% sageexample environment in that it allow you to use \ST as a
+% sageexample environment in that it allows you to use \ST as a
% pretty-printing command line, or to include doctest-like snippets in
% your document. The difference is that the output is typeset as text,
% much like running Sage on the command line, using the
@@ -839,7 +839,7 @@ suggestions.
% You have a choice of either explicitly providing the Sage output or
% leaving it up to the computer to fill in the blanks. Above, the output
% for $t$ was provided, but the output for the |factor()| command
-% wasn't. Moreover, any Sage comment that starts with a ``at'' sign is
+% wasn't. Moreover, any Sage comment that starts with an ``at'' sign is
% escaped to \LTX. In particular, you can use |\label| to mark line
% numbers in order to |\ref|erence and |\pageref|erence them as usual.
% See the example file to see this mechanism in action.
@@ -960,8 +960,8 @@ suggestions.
% the typesetting engine dropdown menu and then typeset.
%
% (You can also replace "|sage|" above with the
-% |run-sagetex-if-necessary| script---see
-% \autoref{sec:run-sagetex-if-necessary}.)
+% |sagetex-run| script---see
+% \autoref{sec:sagetex-run}.)
%
% \subsection{Using Beamer}
%
@@ -1054,11 +1054,11 @@ suggestions.
%
% \subsubsection{The 21st century way}
%
-% The SageMathCloud
-% (\href{http://cloud.sagemath.com}{\texttt{cloud.sagemath.com}}) service has
+% CoCalc
+% (\href{https://cocalc.com/}{\texttt{cocalc.com/}}) has
% full support for \ST, is free to use, and has many fantastic
% collaboration features. If you somehow want to collaborate on a
-% \ST-enabled \TeX document with a colleague, using SageMathCloud is one
+% \ST-enabled \TeX document with a colleague, using CoCalc is one
% of the best and easiest ways to do it. You and your collaborators
% simply create an account, then make a project for your collaboration,
% and add all the collaborators to the project. Then you can all enjoy
@@ -1066,7 +1066,7 @@ suggestions.
%
% \subsubsection{The $N$th century way, for $N < 21$}
%
-% Using anything other than SageMathCloud, |git|, or similar tools these
+% Using anything other than CoCalc, |git|, or similar tools these
% days seems pretty primitive. If emailing |.tex| files back and forth
% seems perfectly reasonable to you, or if you have to send a file to a
% journal, the easiest way is to simply include with your document the
diff --git a/macros/latex/contrib/sagetex/sagetex.ins b/macros/latex/contrib/sagetex/sagetex.ins
index dd8dabb80a..bbbbe1388a 100644
--- a/macros/latex/contrib/sagetex/sagetex.ins
+++ b/macros/latex/contrib/sagetex/sagetex.ins
@@ -84,7 +84,6 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
\from{py-and-sty.dtx}{python}}}
\generate{\file{sagetexparse.py}{\from{scripts.dtx}{parsermod}}}
-
\usedir{scripts/sagetex}
% Now define a new preamble with the shebang line at the top.
@@ -92,10 +91,10 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
\def\envpypreamble{\hash!/usr/bin/env python^^J\pypreamble}
\usepreamble\envpypreamble
-\generate{\file{run-sagetex-if-necessary.py}{\from{scripts.dtx}{ifnecessaryscript}}}
-\generate{\file{makestatic.py}{\from{scripts.dtx}{staticscript}}}
-\generate{\file{extractsagecode.py}{\from{scripts.dtx}{extractscript}}}
-\generate{\file{remote-sagetex.py}{\from{remote-sagetex.dtx}{remotesagetex}}}
+\generate{\file{sagetex-run.py}{\from{scripts.dtx}{ifnecessaryscript}}}
+\generate{\file{sagetex-makestatic.py}{\from{scripts.dtx}{staticscript}}}
+\generate{\file{sagetex-extract.py}{\from{scripts.dtx}{extractscript}}}
+\generate{\file{sagetex-remote.py}{\from{remote-sagetex.dtx}{remotesagetex}}}
\obeyspaces
\Msg{******************************************************************}
diff --git a/macros/latex/contrib/sagetex/sagetex.pdf b/macros/latex/contrib/sagetex/sagetex.pdf
index 4ad0f319e8..66f93e8add 100644
--- a/macros/latex/contrib/sagetex/sagetex.pdf
+++ b/macros/latex/contrib/sagetex/sagetex.pdf
Binary files differ
diff --git a/macros/latex/contrib/sagetex/scripts.dtx b/macros/latex/contrib/sagetex/scripts.dtx
index 8f7048dcef..988f9732dc 100644
--- a/macros/latex/contrib/sagetex/scripts.dtx
+++ b/macros/latex/contrib/sagetex/scripts.dtx
@@ -1,27 +1,26 @@
% \section{Included Python scripts}
% \label{sec:included-scripts}
%
-% Here we describe the Python code for |run-sagetex-if-necessary|, and
-% also |makestatic.py|, which removes \ST commands to produce a
-% ``static'' file, and |extractsagecode.py|, which extracts all the Sage
-% code from a |.tex| file.
+% Here we describe the Python code for \ST scripts, for running
+% Sage only if necessary, substituting in Sage outputs to produce
+% a ``static'' file, and extracting all Sage code from a |.tex| file.
%
-% \subsection{run-sagetex-if-necessary}
-% \label{sec:run-sagetex-if-necessary}
+% \subsection{\texttt{sagetex-run}}
+% \label{sec:sagetex-run}
% \iffalse
%<*ifnecessaryscript>
% \fi
%
% When working on a document that uses \ST, running Sage every time you
% typeset your document may take too long, especially since it often
-% won't be necessary. This script is a drop-in replacement for Sage:
+% is not necessary. This script is a drop-in replacement for Sage:
% instead of
% \begin{center}
% |sage document.sagetex.sage|
% \end{center}
% you can do
% \begin{center}
-% |run-sagetex-if-necessary.py document.sagetex.sage|
+% |sagetex-run document.sagetex.sage|
% \end{center}
% and it will use the MD5 mechanism described in the |endofdoc| macro
% (page~{\pageref{macro:endofdoc}). With this, you can set up your editor
@@ -29,105 +28,114 @@
% that does
% \begin{quote}
% |pdflatex $1|\\
-% |run-sagetex-if-necessary.py $1|
+% |sagetex-run $1|
% \end{quote}
% which will only, of course, run Sage when necessary.
% \begin{macrocode}
-
-# given a filename f, examines f.sagetex.sage and f.sagetex.sout and
-# runs Sage if necessary.
+"""
+Given a filename f, examines f.sagetex.sage and f.sagetex.sout and
+runs Sage if necessary.
+"""
import hashlib
import sys
import os
import re
import subprocess
-from six import PY3
-
-# CHANGE THIS AS APPROPRIATE
-path_to_sage = os.path.expanduser('~/bin/sage')
-# or try to auto-find it:
-# path_to_sage = subprocess.check_output(['which', 'sage']).strip()
-# or just tell me:
-# path_to_sage = '/usr/local/bin/sage'
-
-if sys.argv[1].endswith('.sagetex.sage'):
- src = sys.argv[1][:-13]
-else:
- src = os.path.splitext(sys.argv[1])[0]
-
-usepackage = r'usepackage(\[.*\])?{sagetex}'
-uses_sagetex = False
-
-# if it does not use sagetex, obviously running sage is unnecessary
-with open(src + '.tex') as texf:
- for line in texf:
- if line.strip().startswith(r'\usepackage') and re.search(usepackage, line):
- uses_sagetex = True
- break
-
-if not uses_sagetex:
- print(src + ".tex doesn't seem to use SageTeX, exiting.")
- sys.exit(0)
-
-# if something goes wrong, assume we need to run Sage
-run_sage = True
-ignore = r"^( _st_.goboom|print\('SageT| ?_st_.current_tex_line)"
-
-try:
- with open(src + '.sagetex.sage', 'r') as sagef:
- h = hashlib.md5()
- for line in sagef:
- if not re.search(ignore, line):
- if PY3:
- h.update(bytearray(line,'utf8'))
- else:
- h.update(bytearray(line))
-except IOError:
- print('{0}.sagetex.sage not found, I think you need to typeset {0}.tex first.'.format(src))
- sys.exit(1)
-
-try:
- with open(src + '.sagetex.sout', 'r') as outf:
- for line in outf:
- m = re.match('%([0-9a-f]+)% md5sum', line)
- if m:
- print('computed md5:', h.hexdigest())
- print('sagetex.sout md5:', m.group(1))
- if h.hexdigest() == m.group(1):
- run_sage = False
+import shutil
+import argparse
+
+def argparser():
+ p = argparse.ArgumentParser(description=__doc__.strip())
+ p.add_argument('--sage', action='store', default=find_sage(),
+ help="Location of the Sage executable")
+ p.add_argument('src', help="Input file name (basename or .sagetex.sage)")
+ return p
+
+def find_sage():
+ return shutil.which('sage') or 'sage'
+
+def run(args):
+ src = args.src
+ path_to_sage = args.sage
+
+ if src.endswith('.sagetex.sage'):
+ src = src[:-13]
+ else:
+ src = os.path.splitext(src)[0]
+
+ # Ensure results are output in the same directory as the source files
+ os.chdir(os.path.dirname(src))
+ src = os.path.basename(src)
+
+ usepackage = r'usepackage(\[.*\])?{sagetex}'
+ uses_sagetex = False
+
+ # If it does not use sagetex, obviously running sage is unnecessary.
+ if os.path.isfile(src + '.tex'):
+ with open(src + '.tex') as texf:
+ for line in texf:
+ if line.strip().startswith(r'\usepackage') and re.search(usepackage, line):
+ uses_sagetex = True
break
-except IOError:
- pass
-
-if run_sage:
- print('Need to run Sage on {0}.'.format(src))
- sys.exit(subprocess.call([path_to_sage, src + '.sagetex.sage']))
-else:
- print('Not necessary to run Sage on {0}.'.format(src))
+ else:
+ # The .tex file might not exist if LaTeX output was put to a different
+ # directory, so in that case just assume we need to build.
+ uses_sagetex = True
+
+ if not uses_sagetex:
+ print(src + ".tex doesn't seem to use SageTeX, exiting.", file=sys.stderr)
+ sys.exit(1)
+
+ # if something goes wrong, assume we need to run Sage
+ run_sage = True
+ ignore = r"^( _st_.goboom|print\('SageT| ?_st_.current_tex_line)"
+
+ try:
+ with open(src + '.sagetex.sage', 'r') as sagef:
+ h = hashlib.md5()
+ for line in sagef:
+ if not re.search(ignore, line):
+ h.update(bytearray(line,'utf8'))
+ except IOError:
+ print('{0}.sagetex.sage not found, I think you need to typeset {0}.tex first.'
+ ''.format(src), file=sys.stderr)
+ sys.exit(1)
+
+ try:
+ with open(src + '.sagetex.sout', 'r') as outf:
+ for line in outf:
+ m = re.match('%([0-9a-f]+)% md5sum', line)
+ if m:
+ print('computed md5:', h.hexdigest())
+ print('sagetex.sout md5:', m.group(1))
+ if h.hexdigest() == m.group(1):
+ run_sage = False
+ break
+ except IOError:
+ pass
+
+ if run_sage:
+ print('Need to run Sage on {0}.'.format(src))
+ sys.exit(subprocess.call([path_to_sage, src + '.sagetex.sage']))
+ else:
+ print('Not necessary to run Sage on {0}.'.format(src))
+
+if __name__ == "__main__":
+ run(argparser().parse_args())
% \end{macrocode}
%
-% \subsection{makestatic.py}
-% \label{sec:makestatic}
+% \subsection{\texttt{sagetex-makestatic}}
+% \label{sec:sagetex-makestatic}
% \iffalse
%</ifnecessaryscript>
%<*staticscript>
% \fi
%
-% Now the |makestatic.py| script. It's about the most basic, generic
-% Python script taking command-line arguments that you'll find. The
-% |#!/usr/bin/env python| line is provided for us by the |.ins| file's
-% preamble, so we don't put it here.
+% Now the |sagetex-makestatic|:
+%
% \begin{macrocode}
-import sys
-import time
-import getopt
-import os.path
-from sagetexparse import DeSageTex
-
-def usage():
- print("""Usage: %s [-h|--help] [-o|--overwrite] inputfile [outputfile]
-
+"""
Removes SageTeX macros from `inputfile' and replaces them with the
Sage-computed results to make a "static" file. You'll need to have run
Sage on `inputfile' already.
@@ -136,53 +144,61 @@ Sage on `inputfile' already.
`outputfile', the results will be written to a file of that name.
Specify `-o' or `--overwrite' to overwrite the file if it exists.
-See the SageTeX documentation for more details.""" % sys.argv[0])
-
-try:
- opts, args = getopt.getopt(sys.argv[1:], 'ho', ['help', 'overwrite'])
-except getopt.GetoptError as err:
- print(str(err))
- usage()
- sys.exit(2)
-
-overwrite = False
-for o, a in opts:
- if o in ('-h', '--help'):
- usage()
- sys.exit()
- elif o in ('-o', '--overwrite'):
- overwrite = True
-
-if len(args) == 0 or len(args) > 2:
- print('Error: wrong number of arguments. Make sure to specify options first.\n')
- usage()
- sys.exit(2)
-
-if len(args) == 2 and (os.path.exists(args[1]) and not overwrite):
- print('Error: %s exists and overwrite option not specified.' % args[1])
- sys.exit(1)
-
-src, ext = os.path.splitext(args[0])
+See the SageTeX documentation for more details.
+"""
+import sys
+import time
+import os.path
+import argparse
+
+from sagetexparse import DeSageTex
+
+def argparser():
+ p = argparse.ArgumentParser(description=__doc__.strip())
+ p.add_argument('inputfile', help="Input file name (basename or .tex)")
+ p.add_argument('outputfile', nargs='?', default=None, help="Output file name")
+ p.add_argument('-o', '--overwrite', action="store_true", default=False,
+ help="Overwrite output file if it exists")
+ p.add_argument('-s', '--sout', action="store", default=None,
+ help="Location of the .sagetex.sout file")
+ return p
+
+def run(args):
+ src, dst, overwrite = args.inputfile, args.outputfile, args.overwrite
+
+ if dst is not None and (os.path.exists(dst) and not overwrite):
+ print('Error: %s exists and overwrite option not specified.' % dst,
+ file=sys.stderr)
+ sys.exit(1)
+
+ src, ext = os.path.splitext(src)
+ texfn = src + '.tex'
+ soutfn = args.sout if args.sout is not None else src + '.sagetex.sout'
% \end{macrocode}
% All the real work gets done in the line below. Sorry it's not more
% exciting-looking.
% \begin{macrocode}
-desagetexed = DeSageTex(src)
+ desagetexed = DeSageTex(texfn, soutfn)
% \end{macrocode}
% This part is cool: we need double percent signs at the beginning of
% the line because Python needs them (so they get turned into single
% percent signs) \emph{and} because \textsf{Docstrip} needs them (so the
% line gets passed into the generated file). It's perfect!
% \begin{macrocode}
-header = "%% SageTeX commands have been automatically removed from this file and\n%% replaced with plain LaTeX. Processed %s.\n" % time.strftime('%a %d %b %Y %H:%M:%S', time.localtime())
+ header = ("%% SageTeX commands have been automatically removed from this file and\n"
+ "%% replaced with plain LaTeX. Processed %s.\n"
+ "" % time.strftime('%a %d %b %Y %H:%M:%S', time.localtime()))
-if len(args) == 2:
- dest = open(args[1], 'w')
-else:
- dest = sys.stdout
+ if dst is not None:
+ dest = open(dst, 'w')
+ else:
+ dest = sys.stdout
-dest.write(header)
-dest.write(desagetexed.result)
+ dest.write(header)
+ dest.write(desagetexed.result)
+
+if __name__ == "__main__":
+ run(argparser().parse_args())
% \end{macrocode}
%
% \iffalse
@@ -190,20 +206,12 @@ dest.write(desagetexed.result)
%<*extractscript>
% \fi
%
-% \subsection{extractsagecode.py}
+% \subsection{\texttt{sagetex-extract}}
%
-% Same idea as |makestatic.py|, except this does basically the opposite
+% Same idea as |sagetex-makestatic|, except this does basically the opposite
% thing.
% \begin{macrocode}
-import sys
-import time
-import getopt
-import os.path
-from sagetexparse import SageCodeExtractor
-
-def usage():
- print("""Usage: %s [-h|--help] [-o|--overwrite] inputfile [outputfile]
-
+"""
Extracts Sage code from `inputfile'.
`inputfile' can include the .tex extension or not. If you provide
@@ -212,47 +220,49 @@ otherwise the result will be printed to stdout.
Specify `-o' or `--overwrite' to overwrite the file if it exists.
-See the SageTeX documentation for more details.""" % sys.argv[0])
-
-try:
- opts, args = getopt.getopt(sys.argv[1:], 'ho', ['help', 'overwrite'])
-except getopt.GetoptError as err:
- print(str(err))
- usage()
- sys.exit(2)
-
-overwrite = False
-for o, a in opts:
- if o in ('-h', '--help'):
- usage()
- sys.exit()
- elif o in ('-o', '--overwrite'):
- overwrite = True
-
-if len(args) == 0 or len(args) > 2:
- print('Error: wrong number of arguments. Make sure to specify options first.\n')
- usage()
- sys.exit(2)
-
-if len(args) == 2 and (os.path.exists(args[1]) and not overwrite):
- print('Error: %s exists and overwrite option not specified.' % args[1])
- sys.exit(1)
-
-src, ext = os.path.splitext(args[0])
-sagecode = SageCodeExtractor(src)
-header = """\
-# This file contains Sage code extracted from %s%s.
-# Processed %s.
-
-""" % (src, ext, time.strftime('%a %d %b %Y %H:%M:%S', time.localtime()))
-
-if len(args) == 2:
- dest = open(args[1], 'w')
-else:
- dest = sys.stdout
-
-dest.write(header)
-dest.write(sagecode.result)
+See the SageTeX documentation for more details.
+"""
+import sys
+import time
+import os.path
+import argparse
+
+from sagetexparse import SageCodeExtractor
+
+def argparser():
+ p = argparse.ArgumentParser(description=__doc__.strip())
+ p.add_argument('inputfile', help="Input file name (basename or .tex)")
+ p.add_argument('outputfile', nargs='?', default=None, help="Output file name")
+ p.add_argument('-o', '--overwrite', action="store_true", default=False,
+ help="Overwrite output file if it exists")
+ p.add_argument('--no-inline', action="store_true", default=False,
+ help="Extract code only from Sage environments")
+ return p
+
+def run(args):
+ src, dst, overwrite = args.inputfile, args.outputfile, args.overwrite
+
+ if dst is not None and (os.path.exists(dst) and not overwrite):
+ print('Error: %s exists and overwrite option not specified.' % dst,
+ file=sys.stderr)
+ sys.exit(1)
+
+ src, ext = os.path.splitext(src)
+ sagecode = SageCodeExtractor(src + '.tex', inline=not args.no_inline)
+ header = ("#> This file contains Sage code extracted from %s%s.\n"
+ "#> Processed %s.\n"
+ "" % (src, ext, time.strftime('%a %d %b %Y %H:%M:%S', time.localtime())))
+
+ if dst is not None:
+ dest = open(dst, 'w')
+ else:
+ dest = sys.stdout
+
+ dest.write(header)
+ dest.write(sagecode.result)
+
+if __name__ == "__main__":
+ run(argparser().parse_args())
% \end{macrocode}
%
% \iffalse
@@ -271,6 +281,8 @@ dest.write(sagecode.result)
% over the screen.
% \begin{macrocode}
import sys
+import os
+import textwrap
from pyparsing import *
% \end{macrocode}
% First, we define this very helpful parser: it finds the matching
@@ -281,8 +293,7 @@ from pyparsing import *
% \begin{macrocode}
def skipToMatching(opener, closer):
nest = nestedExpr(opener, closer)
- nest.setParseAction(lambda l, s, t: l[s:getTokensEndLoc()])
- return nest
+ return originalTextFor(nest)
curlybrackets = skipToMatching('{', '}')
squarebrackets = skipToMatching('[', ']')
@@ -290,6 +301,7 @@ squarebrackets = skipToMatching('[', ']')
% Next, parser for |\sage|, |\sageplot|, and pause/unpause calls:
% \begin{macrocode}
sagemacroparser = r'\sage' + curlybrackets('code')
+sagestrmacroparser = r'\sagestr' + curlybrackets('code')
sageplotparser = (r'\sageplot'
+ Optional(squarebrackets)('opts')
+ Optional(squarebrackets)('format')
@@ -356,17 +368,19 @@ class SoutParser():
% that the provided |fn| is just a basename.
% \begin{macrocode}
class DeSageTex():
- def __init__(self, fn):
+ def __init__(self, texfn, soutfn):
self.sagen = 0
self.plotn = 0
- self.fn = fn
- self.sout = SoutParser(fn + '.sagetex.sout')
+ self.fn = os.path.basename(texfn)
+ self.sout = SoutParser(soutfn)
% \end{macrocode}
% Parse |\sage| macros. We just need to pull in the result from the
% |.sout| file and increment the counter---that's what |self.sage| does.
% \begin{macrocode}
+ strmacro = sagestrmacroparser
smacro = sagemacroparser
smacro.setParseAction(self.sage)
+ strmacro.setParseAction(self.sage)
% \end{macrocode}
% Parse the |\usepackage{sagetex}| line. Right now we don't support
% comma-separated lists of packages.
@@ -410,7 +424,7 @@ class DeSageTex():
% looks for any one of the above bits, while ignoring anything that
% should be ignored.
% \begin{macrocode}
- doit = smacro | senv | ssilent | usepackage | splot | stexindent
+ doit = smacro | senv | ssilent | usepackage | splot | stexindent |strmacro
doit.ignore('%' + restOfLine)
doit.ignore(r'\begin{verbatim}' + SkipTo(r'\end{verbatim}'))
doit.ignore(r'\begin{comment}' + SkipTo(r'\end{comment}'))
@@ -422,7 +436,7 @@ class DeSageTex():
% |transformString| on it, since that will just pick out the interesting
% bits and munge them according to the above definitions.
% \begin{macrocode}
- str = ''.join(open(fn + '.tex', 'r').readlines())
+ str = ''.join(open(texfn, 'r').readlines())
self.result = doit.transformString(str)
% \end{macrocode}
% That's the end of the class constructor, and it's all we need to do
@@ -456,7 +470,7 @@ class DeSageTex():
% Sage.
% \begin{macrocode}
class SageCodeExtractor():
- def __init__(self, fn):
+ def __init__(self, texfn, inline=True):
smacro = sagemacroparser
smacro.setParseAction(self.macroout)
@@ -483,34 +497,38 @@ class SageCodeExtractor():
sunpause = sagetexunpause
sunpause.setParseAction(self.unpause)
- doit = smacro | splot | senv | spause | sunpause
+ if inline:
+ doit = smacro | splot | senv | spause | sunpause
+ else:
+ doit = senv | spause | sunpause
+ doit.ignore('%' + restOfLine)
- str = ''.join(open(fn + '.tex', 'r').readlines())
+ str = ''.join(open(texfn, 'r').readlines())
self.result = ''
doit.transformString(str)
def macroout(self, s, l, t):
- self.result += '# \\sage{} from line %s\n' % lineno(l, s)
- self.result += t.code[1:-1] + '\n\n'
+ self.result += '#> \\sage{} from line %s\n' % lineno(l, s)
+ self.result += textwrap.dedent(t.code[1:-1]) + '\n\n'
def plotout(self, s, l, t):
- self.result += '# \\sageplot{} from line %s:\n' % lineno(l, s)
- if t.format is not '':
- self.result += '# format: %s' % t.format[0][1:-1] + '\n'
- self.result += t.code[1:-1] + '\n\n'
+ self.result += '#> \\sageplot{} from line %s:\n' % lineno(l, s)
+ if t.format != '':
+ self.result += '#> format: %s' % t.format[0][1:-1] + '\n'
+ self.result += textwrap.dedent(t.code[1:-1]) + '\n\n'
def envout(self, s, l, t):
- self.result += '# %s environment from line %s:' % (t.env,
+ self.result += '#> %s environment from line %s:' % (t.env,
lineno(l, s))
- self.result += t.code[0] + '\n'
+ self.result += textwrap.dedent(''.join(t.code)) + '\n'
def pause(self, s, l, t):
- self.result += ('# SageTeX (probably) paused on input line %s.\n\n' %
+ self.result += ('#> SageTeX (probably) paused on input line %s.\n\n' %
(lineno(l, s)))
def unpause(self, s, l, t):
- self.result += ('# SageTeX (probably) unpaused on input line %s.\n\n' %
+ self.result += ('#> SageTeX (probably) unpaused on input line %s.\n\n' %
(lineno(l, s)))
% \end{macrocode}
% \end{macro}
diff --git a/macros/latex/contrib/sagetex/setup.py b/macros/latex/contrib/sagetex/setup.py
index 28e2712065..b83a6bbac8 100644
--- a/macros/latex/contrib/sagetex/setup.py
+++ b/macros/latex/contrib/sagetex/setup.py
@@ -4,27 +4,24 @@ setup(name='sagetex',
long_description="""The SageTeX package allows you to embed code,
results of computations, and plots from the Sage mathematics
software suite (http://sagemath.org) into LaTeX documents.""",
- version='3.5',
+ version='3.6.1',
author='Dan Drake',
author_email='dr.dan.drake@gmail.com',
maintainer='SageMath developers',
maintainer_email='sage-devel@googlegroups.com',
url='https://github.com/sagemath/sagetex',
license='GPLv2+',
- py_modules=['sagetex'],
+ py_modules=['sagetex', 'sagetexparse'],
+ scripts=['sagetex-run', 'sagetex-extract', 'sagetex-makestatic', 'sagetex-remote'],
+ install_requires=['pyparsing'],
data_files = [('share/texmf/tex/latex/sagetex',
['example.tex',
'CONTRIBUTORS',
- 'extractsagecode.py',
- 'run-sagetex-if-necessary.py',
- 'makestatic.py',
'scripts.dtx',
'remote-sagetex.dtx',
- 'remote-sagetex.py',
'py-and-sty.dtx',
'sagetex.dtx',
'sagetex.ins',
- 'sagetexparse.py',
'sagetex.sty']),
('share/doc/sagetex', [
'example.tex',
diff --git a/macros/musixtex/README b/macros/musixtex/README
index eef46a1144..4047ef5726 100644
--- a/macros/musixtex/README
+++ b/macros/musixtex/README
@@ -1,4 +1,4 @@
-This is MusiXTeX, version 1.35 (2021-08-30).
+This is MusiXTeX, version 1.36 (2023-01-11).
MusiXTeX is a TeX-based system for typesetting music.
The main author was Daniel Taupin, who died in a climbing
diff --git a/macros/musixtex/doc/musixdoc.pdf b/macros/musixtex/doc/musixdoc.pdf
index a3b49fe947..adbcbfc912 100644
--- a/macros/musixtex/doc/musixdoc.pdf
+++ b/macros/musixtex/doc/musixdoc.pdf
Binary files differ
diff --git a/macros/musixtex/doc/musixdoc/accidentals.tex b/macros/musixtex/doc/musixdoc/accidentals.tex
index a504837530..de374139be 100644
--- a/macros/musixtex/doc/musixdoc/accidentals.tex
+++ b/macros/musixtex/doc/musixdoc/accidentals.tex
@@ -1,5 +1,6 @@
\chapter{Accidentals}
-\vspace*{-3ex}
+\vspace*{-4ex}
+\enlargethispage*{2ex}
Accidentals can be introduced in two ways.
The first way, using explicit macros, consists for
example in coding \keyindex{fl}\pitchp~to put a \ital{flat} at the
@@ -8,6 +9,8 @@ non-spacing command and will automatically place the accidental an
appropriate distance to the left of the anticipated note head.
Naturals, sharps, double flats and double sharps are coded \keyindex{na}\pitchp,
\keyindex{sh}\pitchp, \keyindex{dfl}\pitchp~and \keyindex{dsh}\pitchp~respectively.
+Thinner accidentals are available using the definitions enabled by extension library \keyindex{musixthacc}
+described in Section~\ref{musixthacc}.
The alternate macros \keyindex{lfl}, \keyindex{lna}, \keyindex{lsh},
\keyindex{ldfl} and \keyindex{ldsh}
diff --git a/macros/musixtex/doc/musixdoc/barlines.tex b/macros/musixtex/doc/musixdoc/barlines.tex
index b3f1d545a7..6d39c30985 100644
--- a/macros/musixtex/doc/musixdoc/barlines.tex
+++ b/macros/musixtex/doc/musixdoc/barlines.tex
@@ -308,3 +308,9 @@ This is the code:
\NOTes\en\setdoubleBAR\zendextract
\end{verbatim}\end{quote}
+\section{Ledger Lines}
+
+Ledger lines are the short horizontal lines above or below the staff for high or low notes.
+As of version 1.36, these have been thickened. To restore the thickness used in
+previous versions, add \verb|\def\hlthick{0.2pt}| to the preamble after inputting
+\verb|musixtex.tex|.
diff --git a/macros/musixtex/doc/musixdoc/extensions.tex b/macros/musixtex/doc/musixdoc/extensions.tex
index 8d66b23cd7..d2bdd3d75a 100644
--- a/macros/musixtex/doc/musixdoc/extensions.tex
+++ b/macros/musixtex/doc/musixdoc/extensions.tex
@@ -1652,8 +1652,44 @@ If you need greater numbers of these elements, see Sections~\ref{musixmad_setmax
\ref{musixmad_setmaxslurs} and
\ref{musixmad_setmaxtrills}.
+ \section{musixmkm} \ixtt{musixmkm.tex}
+ The following special accidentals used in Turkish classical music (makam\index{makam})
+are supported:
+\smallskip
+\begin{music}
+\input musixmkm
+\normalmusicsize
+\startextract
+\Notes\shtanini i\en
+\Notes\shbuyukmucenneb i\en
+\Notes\shkucuk i\en
+\Notes\shbakiye i\en
+\Notes\shkoma i\en
+\Notes\flkoma i\en
+\Notes\flbakiye i\en
+\Notes\flkucuk i\en
+\Notes\flbuyukmucenneb i\en
+\Notes\fltanini i\en
+\endextract%
+\end{music}%
+These are generated by, respectively,
+\begin{list}{}{}
+\item{}
+\begin{tabular}{l}
+\keyindex{shtanini} $p$\\
+\keyindex{shbuyukmucenneb} $p$\\
+\keyindex{shkucuk} $p$\\
+\keyindex{shbakiye} $p$\\
+\keyindex{shkoma} $p$\\
+\keyindex{flkoma} $p$\\
+\keyindex{flbakiye} $p$\\
+\keyindex{flkucuk} $p$\\
+\keyindex{flbuyukmucenneb} $p$\\
+\keyindex{fltanini} $p$\\
+\end{tabular}
+\end{list}
-\section{musixper}\label{perc}
+ \section{musixper}\label{perc}
Provides special symbols intended for percussion parts. Included are a
\ital{drum clef}---comprising two vertical parallel lines---and notes with
@@ -1911,6 +1947,7 @@ Use as follows:
\input musixplt
...
\end{verbatim}\end{quote}
+You may need to install additional packages: \texttt{psnfss}, \texttt{palatino} and \texttt{fpl}.
The usual ``small'' type commands are supported:
\begin{quote}
@@ -1946,7 +1983,7 @@ the ``big'' ones, small-caps;
however, \keyindex{font} commands are defined
for all the usual variants at all of these sizes.
To letter-space a title, use the \verb|\so|
-command in the \verb\soul\ package.
+command in the \verb\soul\ package.
The following bold-italic fonts for dynamic marks are defined:
@@ -2127,6 +2164,25 @@ either before \keyindex{startpiece} or between \keyindex{stoppiece} and
\end{itemize}
+ \section{musixthacc}\index{musixthacc@{\tt musixthacc.tex}}\label{musixthacc}
+Provides ``thin'' accidentals
+\keyindex{thna}~$p$, \keyindex{thsh}~$p$, \keyindex{thfl}~$p$, \keyindex{thdsh}~$p$
+and \keyindex{thdfl}~$p$:
+\smallskip
+\begin{music}
+\input musixthacc
+\normalmusicsize
+\startextract
+\Notes\thna i\en
+\Notes\thsh i\en
+\Notes\thfl i\en
+\Notes\thdsh i\en
+\Notes\thdfl i\en
+\endextract%
+\end{music}%
+Any necessary adjustment of horizontal position and spacing is up to
+the user and \keyindex{relativeaccid} adjustment is not effective.
+
\section{musixtmr}\index{musixtmr@{\tt musixtmr.tex}}\label{times}
Replaces the default Computer Modern text fonts by Times fonts;
see Section~\ref{UserFonts}.
@@ -2216,7 +2272,7 @@ An auxiliary program \verb|msxlint| distributed in the \verb\musixtnt\ package c
\keyindex{TransformNotes} may be used anywhere between \keyindex{startpiece}
and the command that ends the piece.
-\subsection{Extracting single-instrument parts from multi-instrument scores}
+\subsection{Extracting single-instrument parts from multi-instrument scores}\index{extracting parts}
To extract
a single-instrument part from a (copy of a) multi-instrument \musixtex\ score:
diff --git a/macros/musixtex/doc/musixdoc/frontmatter.tex b/macros/musixtex/doc/musixdoc/frontmatter.tex
index e2f919ce7e..6079e9b04d 100644
--- a/macros/musixtex/doc/musixdoc/frontmatter.tex
+++ b/macros/musixtex/doc/musixdoc/frontmatter.tex
@@ -1,6 +1,6 @@
\title{\Huge\bfseries\musixtex\\[\bigskipamount]
\LARGE\bfseries Using \TeX{} to write polyphonic\\or
-instrumental music\\\Large\itshape Version 1.35}
+instrumental music\\\Large\itshape Version 1.36}
\author{}
@@ -68,7 +68,7 @@ Since then, the only significant update to \musixtex\ has been in version 1.15 (
takes advantage of the greater capacity of the e\TeX\ version of \TeX.
This manual
is the definitive reference to all features of
-\musixtex\ version~1.33a.
+\musixtex\ version~1.36.
Novice users need not start here.
Most
diff --git a/macros/musixtex/doc/musixdoc/miscellaneous.tex b/macros/musixtex/doc/musixdoc/miscellaneous.tex
index 83b62bed6d..7b568bda91 100644
--- a/macros/musixtex/doc/musixdoc/miscellaneous.tex
+++ b/macros/musixtex/doc/musixdoc/miscellaneous.tex
@@ -349,7 +349,7 @@ the place it is entered, while adding no space:
\end{music}
- \subsection{Arpeggios}
+ \subsection{Arpeggios}\index{arpeggios}
\ital{Arpeggios} (i.e.~~~\arpeggio{-2}3) can be coded with the macro
\keyindex{arpeggio}\pitchp\itbrace{m}
where $p$ is the pitch of
@@ -361,7 +361,7 @@ Its variant \keyindex{larpeggio} sets the arpeggio symbol roughly
one note head width to the left of the default position, and is intended to
avoid collision with single accidentals on chord notes.
- \subsection{Arbitrary length trills}
+ \subsection{Arbitrary length trills}\index{arbitrary length trills}
There are two styles of arbitrary length trills\index{trills}, each with two
variants.
For a trill with preassigned length, use \keyindex{trille}\pitchp\itbrace{l}
@@ -423,7 +423,7 @@ whose coding is
\end{verbatim}\end{quote}
- \subsection{Tremolos}\label{tremolos}
+ \subsection{Tremolos}\label{tremolos}\index{tremolos}
The command \keyindex{trml}\verb|{|$p$\verb|}|~is used to indicate that the immediately
following
diff --git a/macros/musixtex/doc/musixdoc/settingup.tex b/macros/musixtex/doc/musixdoc/settingup.tex
index 5de88fc3e6..17b8697848 100644
--- a/macros/musixtex/doc/musixdoc/settingup.tex
+++ b/macros/musixtex/doc/musixdoc/settingup.tex
@@ -68,7 +68,7 @@ or \verb|\relax|.
\section{Usual setup commands}\label{whatspecify}
-\subsection{Music size}
+\subsection{Music size}\index{music size}
The first decision is what size type to use. \musixtex\ offers four sizes:
``small'' \mbox{(\texttt{16pt}-high staves),} ``normal'' (\texttt{20pt}),\index{sizes} ``large''
@@ -79,7 +79,7 @@ enter \keyindex{smallmusicsize}, \keyindex{largemusicsize}, or
desired staff size but many other related sizes such as note heads, ornaments,
stem lengths, etc.
-\subsection{Number of instruments}
+\subsection{Number of instruments}\index{number of instruments}
The command \keyindex{instrumentnumber}\onen~defines the
number of instruments to be $n$. If not entered, the default is $1$. This number is used in loops
@@ -88,7 +88,7 @@ set key signatures, set meters, etc., so if it differs from $1$ it must be expli
defined before any further commands. The default maximum number of instruments is $6$
but this can be increased by using \keyindex{setmaxinstruments}\onen.
-\subsection{Number of staves per instrument}
+\subsection{Number of staves per instrument}\index{number of staves per instrument}
An instrument may have one or more staves (e.g.,~a piano would normally have 2 staves).
The differences between one
@@ -111,7 +111,7 @@ number of the instrument. In \musixtex, instruments are numbered
So for example \verb|setstaffs32|
assigns two staves to the third instrument from the bottom.
-\subsection{Clefs for each staff}
+\subsection{Clefs for each staff}\index{clefs for each staff}
The default clef for every staff is the \ital{treble} clef. To assign
any other clef, the command is
@@ -141,7 +141,7 @@ could be specified by
Treble and bass clefs with the digit $8$ above or below are also possible; see
Section~\ref{treblelowoct}.
-\subsection{Key signatures}
+\subsection{Key signatures}\index{key signatures}
To set a common key signature for all instruments, use
\keyindex{generalsignature}\verb|{|$s$\verb|}|,
@@ -153,7 +153,7 @@ the common key signature for instrument $n$, use
\keyindex{setsign}\verb|{|$n$\verb|}{|$s$\verb|}|. Note that differing
key signatures cannot be assigned to different staves of the same instrument.
-\subsection{Meters}
+\subsection{Meters}\index{meters}
A common \itxem{meter} for all staves can be specified by
\keyindex{generalmeter}\verb|{|$m$\verb|}|,\label{generalmeter}
@@ -219,7 +219,7 @@ sets the meter to 12/8 for the first staff of the third instrument, and
\ital{alla breve} for the second staff.
-\subsection{Instrument names}
+\subsection{Instrument names}\index{instrument names}
To set an \itxem{instrument name}, use
\keyindex{setname}\verb|{|$n$\verb|}{|\ital{name of the instrument}\verb|}|.
diff --git a/macros/musixtex/dvips/psslurs.pro b/macros/musixtex/dvips/psslurs.pro
index b1ba95253d..b18ba9bd3a 100644
--- a/macros/musixtex/dvips/psslurs.pro
+++ b/macros/musixtex/dvips/psslurs.pro
@@ -219,8 +219,8 @@ slur@Dict begin
/y1 ED
/x1 ED
gsave
- 1 psxAR ceiling setlinewidth % line thickness: this results
- 1 setlinecap % to exactly 2 pixels in 300 dpi
+ 2.5 psxAR ceiling setlinewidth % line thickness: this results
+ 1 setlinecap % to exactly 2.5 pixels in 300 dpi
1 setlinejoin
x2 y2 10 psxAR add moveto % the 10's specify wideness of the
x1 y1 lineto % open end of the crescendo,
@@ -236,7 +236,7 @@ slur@Dict begin
/y1 ED
/x1 ED
gsave
- 1 psxAR ceiling setlinewidth
+ 2.5 psxAR ceiling setlinewidth
1 setlinecap
1 setlinejoin
x2 y2 11 psxAR add moveto
diff --git a/macros/musixtex/tex/musixmkm.tex b/macros/musixtex/tex/musixmkm.tex
new file mode 100644
index 0000000000..1aca900845
--- /dev/null
+++ b/macros/musixtex/tex/musixmkm.tex
@@ -0,0 +1,54 @@
+%
+% This file is part of MusiXTeX
+%
+% MusiXTeX is free software; you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation; either version 2, or (at your option)
+% any later version.
+%
+% MusiXTeX is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with MusiXTeX; see the file COPYING. If not, write to
+% the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+% Boston, MA 02111-1307, USA.
+%
+\immediate\write16{MusiXMaKaM v.001\space<2022-12-25>}%
+
+\edef\catcodeat{\the\catcode`\@}\catcode`\@=11
+\catcodesmusic
+
+
+\font\fetaeleven=feta20 scaled \magstephalf
+\font\fetathirteen=feta20 scaled \magstep1
+\font\fetasixteen=feta20 scaled \magstep2
+\font\fetatwenty=feta20 scaled \magstep3
+\font\fetatwentyfour=feta20 scaled \magstep4
+\font\fetatwentynine=feta20 scaled \magstep5
+
+\let\fetanorfont\fetatwenty
+\def\fetachar{\fetafont\char}
+
+
+\def\writ@ka{\pl@base\raise\y@i\llap{\fetachar\n@v\kern\accshift}}
+\def\set@ka{\let\@Ti=\writ@ka}
+
+\def\shtanini#1{\set@ka \n@v30 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\shbuyukmucenneb#1{\set@ka \n@v26 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\shkucuk#1{\set@ka \n@v27 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\shbakiye#1{\set@ka \n@v20 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\shkoma#1{\set@ka \n@v25 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\flkoma#1{\set@ka \n@v45 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\flbakiye#1{\set@ka \n@v42 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\flkucuk#1{\set@ka \n@v37 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\flbuyukmucenneb#1{\set@ka \n@v43 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\fltanini#1{\set@ka \n@v47 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+
+\let\fetafont\fetanorfont
+
+\endcatcodesmusic
+\catcode`\@=\catcodeat
+\endinput
diff --git a/macros/musixtex/tex/musixps.tex b/macros/musixtex/tex/musixps.tex
index 9ab8b0ce3f..7bff890330 100644
--- a/macros/musixtex/tex/musixps.tex
+++ b/macros/musixtex/tex/musixps.tex
@@ -2,6 +2,7 @@
% Coded by Stanislav Kneifl
% RDT added \psRslurskip \iRslur \tRslur \psRtieskip \tRtie \psLtieskip \tLtie 2019/06/17
% RDT added \iRtieu \iRtied 2020/09/07
+% RDT modified /DC to produce thicker hairpins 2022/12/29
\ifx\undefined\startpiece\errmessage{Input musixtex.tex before musixps.tex}\fi
\ifx\undefined\liftcresc\else\endinput\fi
diff --git a/macros/musixtex/tex/musixtex.tex b/macros/musixtex/tex/musixtex.tex
index 7dda85bd90..06333281b9 100644
--- a/macros/musixtex/tex/musixtex.tex
+++ b/macros/musixtex/tex/musixtex.tex
@@ -25,15 +25,27 @@
\def\mufl@x{0.83}%
\def\mxmajorvernumber{1}
-\def\mxminorvernumber{34}
+\def\mxminorvernumber{36}
\def\mxvernumber{\mxmajorvernumber\mxminorvernumber}% make it possible to compare with \ifnum
\def\mxversuffix{}%
\edef\mxversion{\mxmajorvernumber.\mxminorvernumber\mxversuffix}
-\def\mxdate{2021-07-24}
+\def\mxdate{2023-01-11}
\immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}%
\everyjob{\immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}}%
+% version 1.36
+%
+% Support for Turkish classical music accidentalsi; see musixmkm.tex.
+% Re-define \hlthick to produce thicker ledger lines.
+% Provide thinner accidentals; see musixthacc.tex.
+% Thicker Postscript hairpins.
+
+% version 1.35
+%
+% This release includes a handwriting font from MuseScore and an extension
+% library musixjt.tex to support it.
+
% version 1.34
%
% redefine \tabfnt... commands to allow re-definition in musixftab.tex
@@ -1643,6 +1655,7 @@
\newdimen\b@amthick % half beamthickness
\newdimen\Interligne% de la base d'une ligne a l'autre
\newdimen\Internote % la moitie de \Interligne
+
\let\internote\Internote
\def\musixchar{\musixfont\char}
\def\keychar{\musickeyfont\char}
@@ -1651,22 +1664,27 @@
\def\set@Largenotesize{\let\musixfont\musicLargefont
\let\xgregfont\xgregLargefont
+ \let\fetafont\fetaLargefont % RDT 1.36
\b@amthick.3456\Interligne \interbeam1.08\Interligne }
\def\set@largenotesize{\let\musixfont\musiclargefont
\let\xgregfont\xgreglargefont
+ \let\fetafont\fetalargefont % RDT 1.36
\b@amthick.288\Interligne \interbeam.9\Interligne }
\def\set@normalnotesize{\let\musixfont\musicnorfont
\let\xgregfont\xgregnorfont
+ \let\fetafont\fetanorfont % RDT 1.36
\b@amthick.24\Interligne \interbeam\p@seven5\Interligne }
\def\set@smallnotesize{\let\musixfont\musicsmallfont
\let\xgregfont\xgregsmallfont
+ \let\fetafont\fetasmallfont % RDT 1.36
\b@amthick\p@ne92\Interligne \interbeam.6\Interligne }
\def\set@tinynotesize{\let\musixfont\musictinyfont
\let\xgregfont\xgregtinyfont
+ \let\fetafont\fetatinyfont % RDT 1.36
\b@amthick\p@ne536\Interligne \interbeam.48\Interligne }
\def\normalnotesize{\set@normalnotesize\comput@specifics
@@ -1742,7 +1760,8 @@
\newskip\big@spc
\newdimen\lthick \lthick=.4pt
-\def\hlthick{\h@lf\lthick}
+% \def\hlthick{\h@lf\lthick}
+\def\hlthick{0.4pt} % 1.36 RDT
%%%
@@ -1767,6 +1786,11 @@
\let\xgregnorfont\xgregsixteen
\let\xgregsmallfont\xgregthirteen
\let\xgregtinyfont\xgregeleven
+ \let\fetaLargefont\fetatwentyfour % 1.36 RDT
+ \let\fetalargefont\fetatwenty
+ \let\fetanorfont\fetasixteen
+ \let\fetasmallfont\fetathirteen
+ \let\fetatinyfont\fetaeleven
\let\slurd\slurdsixteen \let\sluru\slurusixteen
\let\hslurd\hslurdsixteen \let\hsluru\hslurusixteen
\let\meternorfont\tenbf \let\metersmallfont\eightbf % version 1.16 RDT
@@ -1780,7 +1804,7 @@
\else\ifdim\internote<1.19\Internote \smalltype\it
\else\ifdim\internote<1.43\Internote \Smalltype\it
\else\normtype\it\fi\fi\fi}%
- \let\tabnorfnt\tabfntsixteen \let\tablargefnt\tabfnttwenty % 1.34 RDT
+ \let\tabnorfnt\tabfntsixteen \let\tablargefnt\tabfnttwenty % 1.34 RDT
\let\tabLargefnt\tabfnttwentyfour \let\tabsmallfnt\tabfntthirteen
\let\tabnorcleffnt\eightdc \let\tablargecleffnt\tendc
\let\tabLargecleffnt\twelvedc \let\tabsmallcleffnt\sixdc
@@ -1799,6 +1823,11 @@
\let\xgregnorfont\xgregtwentyfour
\let\xgregsmallfont\xgregtwenty
\let\xgregtinyfont\xgregsixteen
+ \let\fetaLargefont\fetatwentynine % 1.36 RDT
+ \let\fetalargefont\fetatwentynine
+ \let\fetanorfont\fetatwentyfour
+ \let\fetasmallfont\fetatwenty
+ \let\fetatinyfont\fetasixteen
\let\sluru\slurutwenty \let\slurd\slurdtwenty
\let\hsluru\hslurutwenty \let\hslurd\hslurdtwenty
\let\meternorfont\frtbf \let\metersmallfont\twelvebf % version 1.18 RDT
@@ -1831,6 +1860,11 @@
\let\xgregnorfont\xgregtwentynine
\let\xgregsmallfont\xgregtwentyfour
\let\xgregtinyfont\xgregtwenty
+ \let\fetaLargefont\fetatwentynine % 1.36 RDT
+ \let\fetalargefont\fetatwentynine
+ \let\fetanorfont\fetatwentynine
+ \let\fetasmallfont\fetatwentyfour
+ \let\fetatinyfont\fetatwenty
\let\sluru\slurutwenty \let\slurd\slurdtwenty
\let\hsluru\hslurutwenty \let\hslurd\hslurdtwenty
\let\slurud\slurutwentyd \let\slurdd\slurdtwentyd % +ickd
@@ -1871,6 +1905,11 @@
\let\xgregnorfont\xgregtwenty
\let\xgregsmallfont\xgregsixteen
\let\xgregtinyfont\xgregthirteen
+ \let\fetalargefont\fetatwentyfour % 1.36 RDT
+ \let\fetaLargefont\fetatwentynine
+ \let\fetanorfont\fetatwenty
+ \let\fetasmallfont\fetasixteen
+ \let\fetatinyfont\fetathirteen
\let\sluru\slurutwenty \let\slurd\slurdtwenty
\let\hsluru\hslurutwenty \let\hslurd\hslurdtwenty
\let\meternorfont\twelvebf \let\metersmallfont\tenbf % version 1.18 RDT
diff --git a/macros/musixtex/tex/musixthacc.tex b/macros/musixtex/tex/musixthacc.tex
new file mode 100644
index 0000000000..b20ed567cb
--- /dev/null
+++ b/macros/musixtex/tex/musixthacc.tex
@@ -0,0 +1,49 @@
+%
+% This file is part of MusiXTeX
+%
+% MusiXTeX is free software; you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation; either version 2, or (at your option)
+% any later version.
+%
+% MusiXTeX is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with MusiXTeX; see the file COPYING. If not, write to
+% the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+% Boston, MA 02111-1307, USA.
+%
+\immediate\write16{MusiXTHinACCidentals v.001\space<2022-12-29>}%
+
+\edef\catcodeat{\the\catcode`\@}\catcode`\@=11
+\catcodesmusic
+
+
+\font\fetaeleven=feta20 scaled \magstephalf
+\font\fetathirteen=feta20 scaled \magstep1
+\font\fetasixteen=feta20 scaled \magstep2
+\font\fetatwenty=feta20 scaled \magstep3
+\font\fetatwentyfour=feta20 scaled \magstep4
+\font\fetatwentynine=feta20 scaled \magstep5
+
+\let\fetanorfont\fetatwenty
+\def\fetachar{\fetafont\char}
+
+
+\def\writ@ka{\pl@base\raise\y@i\llap{\fetachar\n@v\kern\accshift}}
+\def\set@ka{\let\@Ti=\writ@ka}
+
+\def\thdsh#1{\set@ka \n@v30 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\thsh#1{\set@ka \n@v20 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\thna#1{\set@ka \n@v32 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\thfl#1{\set@ka \n@v37 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+\def\thdfl#1{\set@ka \n@v47 \check@staff \inhgetn@i#1\relax\expandafter\@Ti\fi}
+
+\let\fetafont\fetanorfont
+
+\endcatcodesmusic
+\catcode`\@=\catcodeat
+\endinput
diff --git a/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdf b/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdf
index 725f5e6fb1..98e89d1aaf 100644
--- a/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdf
+++ b/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdf
Binary files differ
diff --git a/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex b/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex
index e14f943981..d89096a6e1 100644
--- a/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex
+++ b/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex
@@ -112,7 +112,7 @@
\centerline{Zhang Tingxuan}
\medskip
-\centerline{2023/01/03\quad Version 0.2}
+\centerline{2023/01/11\quad Version 0.2a}
\biggskip
\begingroup\parskip0pt
diff --git a/macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex b/macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex
index 47da54ce41..c5732c0e58 100644
--- a/macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex
+++ b/macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex
@@ -473,6 +473,14 @@
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
}
\input unicode-math-table
+
+% patch the delimiters
+\Udelcode `\< = \delimiterfam "27E8
+\Udelcode `\> = \delimiterfam "27E9
+% According to xetexref, the math class of a delimiter should be 4 or 5,
+% but here we use 0 instead.
+\def\|{\Udelimiter 0 \delimiterfam "2016 }
+
% deal with `!'
\Umathcode `\! = 5 \ordfam "0021
\Umathchardef \mathexclam = 4 \ordfam "0021
diff --git a/support/TeX4ht/source/ChangeLog b/support/TeX4ht/source/ChangeLog
index 5974b09e6f..d1cb7c2edc 100644
--- a/support/TeX4ht/source/ChangeLog
+++ b/support/TeX4ht/source/ChangeLog
@@ -1,3 +1,20 @@
+2023-01-10 Michal Hoftich <michal.h21@gmail.com>
+
+ * tex4ht-html5.tex (html5.4ht): added default CSS style for sections
+ and page dimensions.
+ https://puszcza.gnu.org.ua/bugs/?592
+
+2023-01-08 Karl Berry <karl@freefriends.org>
+
+ * Makefile (common_no_tex4ht_sty): rename to common_no_cond_sty,
+ since tex4ht.sty is what is left out. Mention that we also leave
+ out mktex4ht.4ht from all, since it's mostly just the list of packages.
+ (tex4ht_sty_derived): dependency is now $(common_no_tex4ht_sty).
+ (tex4ht_cond4ht_derived): can depend on $(common).
+
+ * mktex4ht-cnf.tex,
+ * tex4ht-html4.tex (html4.4ht, html4-math.4ht): copyright 2023.
+
2023-01-01 Michal Hoftich <michal.h21@gmail.com>
* tex4th-html4.tex (html4.4ht): set font size for \subsubsection
diff --git a/support/TeX4ht/source/Makefile b/support/TeX4ht/source/Makefile
index f901ebbb4f..e66c7e9913 100644
--- a/support/TeX4ht/source/Makefile
+++ b/support/TeX4ht/source/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile 1239 2022-11-16 22:27:35Z karl $
+# $Id: Makefile 1282 2023-01-08 15:27:15Z karl $
# This file is public domain. Originally written 2010, Karl Berry.
# Assumes GNU make.
@@ -72,18 +72,18 @@ HTTEX = ht "etex $(tex_opts)" # set tex options for plain tex
default: all
-# most files (not all, but it's not worth worrying about) read
-# mktex4ht.4ht, but we have to avoid depending on it for the file which
-# generates it (cond4ht), so we need two different variables.
-# Similarly for tex4ht.sty, though that is modified far less often.
+# tex4ht.sty is read by most (all?) files, but we have to avoid
+# depending on it for the file which generates it (tex4ht-sty.tex), so
+# we need two different variables.
#
-common_no_cond_sty = tex4ht-cpright.tex common.tex common-code.tex \
+common_no_tex4ht_sty = tex4ht-cpright.tex common.tex common-code.tex \
ProTex.sty AlProTex.sty tex4ht-dir.tex
-# common = mktex4ht.4ht tex4ht.sty $(common_no_cond_sty)
common = tex4ht.sty $(common_no_cond_sty)
-# Michal 10/05/2017: it seems that when mktex4ht.4ht is included as
-# common, it causes constant recompilations.
common_info = $(common) common-info.tex
+#
+# mktex4ht.4ht is read by almost everything, but since it is mostly just
+# the list of packages, it changes often, without any particular need to
+# rebuild everything when it does. So leave it out.
# Substitute directories used, especially for Java.
tex4ht-dir.tex: tex4ht-dir.m4
@@ -389,8 +389,7 @@ endif
#
all: $(derived)
- rm -f texput.log
- texlua checklog.lua *.log
+ rm -f texput.log; texlua checklog.lua *.log
$(tex4ht_4ht_derived): tex4ht-4ht.tex cond4ht.4ht $(common)
etex $(tex_opts) $<
@@ -401,8 +400,7 @@ $(tex4ht_bibtex2_derived): tex4ht-bibtex2.tex $(common)
$(tex4ht_c_derived): tex4ht-c.tex $(common)
etex $(tex_opts) $<
-$(tex4ht_cond4ht_derived): tex4ht-cond4ht.tex mktex4ht-cnf.tex \
- $(common_no_cond_sty)
+$(tex4ht_cond4ht_derived): tex4ht-cond4ht.tex mktex4ht-cnf.tex $(common)
etex $(tex_opts) $<
etex $(tex_opts) cond4ht.4ht
@@ -548,7 +546,7 @@ $(tex4ht_ooimpress_derived): tex4ht-ooimpress.tex $(common)
$(tex4ht_options_derived): tex4ht-options.tex $(common)
htlatex $< "html,3,sections+" "" "" $(tex_1opt)
-$(tex4ht_sty_derived): tex4ht-sty.tex $(common_no_cond_sty)
+$(tex4ht_sty_derived): tex4ht-sty.tex $(common_no_tex4ht_sty)
$(HTTEX) $< ""
$(tex4ht_svg_derived): tex4ht-svg.tex $(common)
diff --git a/support/TeX4ht/source/mktex4ht-cnf.tex b/support/TeX4ht/source/mktex4ht-cnf.tex
index 8bc9a1deb1..3143a5b33d 100644
--- a/support/TeX4ht/source/mktex4ht-cnf.tex
+++ b/support/TeX4ht/source/mktex4ht-cnf.tex
@@ -1,8 +1,8 @@
-% $Id: mktex4ht-cnf.tex 1261 2022-12-09 16:06:10Z michal_h21 $
+% $Id: mktex4ht-cnf.tex 1282 2023-01-08 15:27:15Z karl $
% Manually-maintained file, listing *.4ht files created by tex4ht-4ht.tex.
% Read by tex4ht-cond4ht.
%
-% Copyright 2016-2020 TeX Users Group
+% Copyright 2016-2023 TeX Users Group
% Released under LPPL 1.3c+.
% See tex4ht-cpright.tex for license text.
%
diff --git a/support/TeX4ht/source/tex4ht-html4.tex b/support/TeX4ht/source/tex4ht-html4.tex
index 6308f08f7b..27620e4ee1 100644
--- a/support/TeX4ht/source/tex4ht-html4.tex
+++ b/support/TeX4ht/source/tex4ht-html4.tex
@@ -1,8 +1,8 @@
-% $Id: tex4ht-html4.tex 1281 2023-01-01 22:05:02Z michal_h21 $
+% $Id: tex4ht-html4.tex 1282 2023-01-08 15:27:15Z karl $
% Compile 4 times: latex tex4ht-html4
% Copy html4.4ht into the work directory before all but the last compilation.
%
-% Copyright 2009-2022 TeX Users Group
+% Copyright 2009-2023 TeX Users Group
% Copyright 1996-2009 Eitan M. Gurari
% Released under LPPL 1.3c+.
% See tex4ht-cpright.tex for license text.
@@ -65,7 +65,7 @@
\<html4\><<<
% html4.4ht (|version), generated from |jobname.tex
-% Copyright 2009-2022 TeX Users Group
+% Copyright 2009-2023 TeX Users Group
% Copyright |CopyYear.1997. Eitan M. Gurari
|<TeX4ht copywrite|>
>>>
@@ -73,7 +73,7 @@
\<html4-math\><<<
% html4-math.4ht (|version), generated from |jobname.tex
-% Copyright 2009-2022 TeX Users Group
+% Copyright 2009-2023 TeX Users Group
% Copyright |CopyYear.1999. Eitan M. Gurari
|<TeX4ht copywrite|>
>>>
diff --git a/support/TeX4ht/source/tex4ht-html5.tex b/support/TeX4ht/source/tex4ht-html5.tex
index 761e9968fd..d69fe6dfa1 100644
--- a/support/TeX4ht/source/tex4ht-html5.tex
+++ b/support/TeX4ht/source/tex4ht-html5.tex
@@ -1,8 +1,8 @@
-% $Id: tex4ht-html5.tex 1182 2022-08-11 19:21:27Z michal_h21 $
+% $Id: tex4ht-html5.tex 1284 2023-01-10 21:33:09Z karl $
% compile 3 times: latex tex4ht-moz
% or xhlatex tex4ht-moz "html,3,sections+"
%
-% Copyright 2009-2022 TeX Users Group
+% Copyright 2009-2023 TeX Users Group
% Copyright 2000-2009 Eitan M. Gurari
% Released under LPPL 1.3c+.
% See tex4ht-cpright.tex for license text.
@@ -26,7 +26,7 @@
\<html5\><<<
% html5.4ht (|version), generated from |jobname.tex
-% Copyright 2016-2022 TeX Users Group
+% Copyright 2016-2023 TeX Users Group
|<TeX4ht copywrite|>
>>>
@@ -69,6 +69,45 @@
\fi
>>>
+\section{Default CSS style}
+
+This style fixes some common issues regarding size of sectioning commands,
+background of generated images in the dark mode, or line lenght.
+
+
+\<configure html5 tex4ht\><<<
+\:CheckOption{nostyle}\if:Option
+\else
+\Log:Note{We use a default CSS style. Use the `nostyle' option if you want to use custom a CSS design}
+\Css{body{
+ margin:1em auto;
+ max-width:80ch;
+ padding:0 .62em;
+}}
+
+\Css{h1,h2,h3,h4,h5 {
+ line-height:1.2;
+}}
+\Css{@media print{
+ body{
+ max-width:none
+ }
+}}
+\Css{.partHead, likepartHead { font-size: 2em; }}
+\Css{.chapterHead, likechapterHead { font-size: 1.7411em; }}
+\Css{.sectionHead, likesectionHead { font-size: 1.5157em; }}
+\Css{.subsectionHead, likesubsectionHead { font-size: 1.3195em; }}
+\Css{.subsubsectionHead, likesubsubsectionHead { font-size: 1.1487em; }}
+
+\Css{
+ @media (prefers-color-scheme: dark) {
+ img[src^="\jobname"]{filter: invert(1); }
+ }
+}
+\fi
+>>>
+
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Language and charset setting}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
index 529648b8d6..d5f3bd18c1 100644
--- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
@@ -72,7 +72,6 @@ $mirrors = {
'https://mirror.datacenter.by/pub/mirrors/CTAN/' => 1,
},
'Czech Republic' => {
- 'http://ftp.cvut.cz/tex-archive/' => 1,
'https://mirrors.nic.cz/tex-archive/' => 1,
},
'Denmark' => {
@@ -141,7 +140,6 @@ $mirrors = {
},
'Portugal' => {
'https://ftp.eq.uc.pt/software/TeX/' => 1,
- 'https://mirrors.up.pt/pub/CTAN/' => 1,
},
'Romania' => {
'https://mirrors.nxthost.com/ctan/' => 1,
@@ -192,6 +190,7 @@ $mirrors = {
'https://ctan.math.illinois.edu/' => 1,
'https://ctan.math.utah.edu/ctan/tex-archive/' => 1,
'https://ctan.math.washington.edu/tex-archive/' => 1,
+ 'https://ctan.mirrors.hoobly.com/' => 1,
'https://mirror.las.iastate.edu/tex-archive/' => 1,
'https://mirror.math.princeton.edu/pub/CTAN/' => 1,
'https://mirror.mwt.me/ctan/' => 1,
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index d7ddab3d47..de2a25e0f9 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
@@ -26,11 +26,11 @@ depend container_split_src_files/1
depend frozen/0
depend minrelease/2016
depend release/2022
-depend revision/65502
+depend revision/65513
name 00texlive.image
category TLCore
-revision 65496
+revision 65514
shortdesc TeX Live files only in the source repository
longdesc The files here are not copied by the installer and containers
longdesc are not built for them; they exist only in the source
@@ -3225,6 +3225,7 @@ runfiles size=12961
tlpkg/tlpsrc/pdfarticle.tlpsrc
tlpkg/tlpsrc/pdfbook2.tlpsrc
tlpkg/tlpsrc/pdfcol.tlpsrc
+ tlpkg/tlpsrc/pdfcolfoot.tlpsrc
tlpkg/tlpsrc/pdfcolmk.tlpsrc
tlpkg/tlpsrc/pdfcomment.tlpsrc
tlpkg/tlpsrc/pdfcprot.tlpsrc
@@ -4692,7 +4693,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd
name 00texlive.installer
category TLCore
-revision 65498
+revision 65504
shortdesc TeX Live standalone installer package
longdesc This package defines the files to go into the installer
longdesc archives (install-tl-unx.tar.gz, install-tl.zip) built by the
@@ -36463,7 +36464,7 @@ catalogue-version 2.5
name bibcop
category Package
-revision 65489
+revision 65505
shortdesc Style checker for .bib files
longdesc This LaTeX package checks the quality of your .bib file and
longdesc emits warning messages if any issues are found. For this, the
@@ -36472,34 +36473,33 @@ longdesc Perl must be installed. bibcop.pl can also be used as a
longdesc standalone command line tool. The package does not work on
longdesc Windows.
depend bibcop.ARCH
-depend fancyvrb
depend iexec
-depend verbatimcopy
-containersize 6164
-containerchecksum 056bc8d55b29dd15cf6cf12cb6a19554fcec9970509ea0c78a360f3fdeac6090565ee19fda4412041d2733369e8e38017aa69fba2f216040d66bdac286cfc89e
-doccontainersize 354808
-doccontainerchecksum cf0dab836d242a74d5d0eba9cbc1bb9863c4fe5925089d0a2e5b3df1a013b24dfd9803be9fa7dd7f86b587c800c015da5e67d870c9ce4ef8d09c22eeff020a19
+depend pgfopts
+containersize 6352
+containerchecksum 11709d0ea1a7b769b04a497ed104bdc0d43617ae686687dd2b0c9de18f9dbcbcea910c37fc1362a4213995cad4acd40e2adf23270f900a6611a69ff58206a005
+doccontainersize 354964
+doccontainerchecksum d99d12aaf3ccf7baf9d2aa755e897f7db5e4138aef3582c7130583206bf7de6f4b7539a7b05534518566799b914ff39b2e90b9a83aa54ddad3dbb6763140952d
docfiles size=94
- texmf-dist/doc/latex/bibcop/DEPENDS.txt
- texmf-dist/doc/latex/bibcop/LICENSE.txt
- texmf-dist/doc/latex/bibcop/README.md details="Readme"
- texmf-dist/doc/latex/bibcop/bibcop-logo.pdf
- texmf-dist/doc/latex/bibcop/bibcop.pdf details="Package documentation"
+ texmf-dist/doc/bibtex/bibcop/DEPENDS.txt
+ texmf-dist/doc/bibtex/bibcop/LICENSE.txt
+ texmf-dist/doc/bibtex/bibcop/README.md details="Readme"
+ texmf-dist/doc/bibtex/bibcop/bibcop-logo.pdf
+ texmf-dist/doc/bibtex/bibcop/bibcop.pdf details="Package documentation"
texmf-dist/doc/man/man1/bibcop.1
texmf-dist/doc/man/man1/bibcop.man1.pdf
-srccontainersize 5584
-srccontainerchecksum e767d81aec3e3a4de210372e23d989034f5c417c288e6b3c1b7767947dcb69d4ac881391631bd12662905b5a803015bd6e8f19c23c2801160c065e908916333a
+srccontainersize 5620
+srccontainerchecksum 4d3569baf515ba4e4e25755b763d36d17fd03217984b65f61a94d5c02a7e8d3bc9b99dd1d095b470ea7202371bcb88d8f111ae62b64f2baf4092c95ce599cc52
srcfiles size=5
- texmf-dist/source/latex/bibcop/bibcop.dtx
- texmf-dist/source/latex/bibcop/bibcop.ins
+ texmf-dist/source/bibtex/bibcop/bibcop.dtx
+ texmf-dist/source/bibtex/bibcop/bibcop.ins
runfiles size=6
texmf-dist/scripts/bibcop/bibcop.pl
texmf-dist/tex/latex/bibcop/bibcop.sty
catalogue-contact-repository https://github.com/yegor256/bibcop
-catalogue-ctan /macros/latex/contrib/bibcop
+catalogue-ctan /biblio/bibtex/utils/bibcop
catalogue-license mit
catalogue-topics biblio-supp ext-code
-catalogue-version 0.0.6
+catalogue-version 0.0.7
name bibcop.aarch64-linux
category Package
@@ -71946,7 +71946,7 @@ containerchecksum 31d61f2f9cec2d0c554aab91435b699e98926c4034959e8e1d3e06ff7dd5b4
name collection-latexrecommended
category Collection
-revision 63547
+revision 65512
shortdesc LaTeX recommended packages
relocated 1
longdesc A collection of recommended add-on packages for LaTeX which
@@ -71998,6 +71998,7 @@ depend ms
depend newfloat
depend ntgclass
depend parskip
+depend pdfcolfoot
depend pdflscape
depend pdfmanagement-testphase
depend pdfpages
@@ -72023,8 +72024,8 @@ depend xcolor
depend xkeyval
depend xltxtra
depend xunicode
-containersize 736
-containerchecksum 4e445e9830476058f6b878f306516de2fdf1b174011dd79e6a7d875adf104f2a15cdceefc7045a8ae404399d3a08d8cd4eda8fc5af317ea043b03e6c648a73b1
+containersize 744
+containerchecksum 952fe1be5136c0fded29381fe58935dedfe2c0f338f38d280c2a69bb718e2b93520f6f328f98d98a9161bbf106bda77cbddc4277e401a4f33e480dd3a7316483
name collection-luatex
category Collection
@@ -196010,29 +196011,29 @@ catalogue-version 1.0
name luasseq
category Package
-revision 37877
+revision 65511
shortdesc Drawing spectral sequences in LuaLaTeX
relocated 1
longdesc The package is an update of the author's sseq package, for use
longdesc with LuaLaTeX. This version uses less memory, and operates
longdesc faster than the original; it also offers several enhancements.
-containersize 10232
-containerchecksum 400e95fd898152e8d8e989084ca9cd115516850edb6e8d102eddaaf278f29213c8a4828dde01ca202db68d6cd2b2685bda71f63ad7a92eb586a4c303d2e9d02b
-doccontainersize 224504
-doccontainerchecksum 7ac8f5df74cede5734c9c47048cbb3b079155910a89ebf0c7adb169b4b61751f6255b2c07614d44a55e8dad43bb35693bf224d0f750bff28987c7c5f1a8a5bc4
-docfiles size=56
- RELOC/doc/lualatex/luasseq/README
+containersize 10276
+containerchecksum b77936a1b92ec8b3889ec9ba8b356fa235da6eeca98d6a86f315723c64b4c0a7d8db2213cd9fdad4d2b38cfa8af1bc00c7861f15a9f4f1a809ec86bab8a16f77
+doccontainersize 146972
+doccontainerchecksum 82825043ea6c04a76cbf0440d9de08ee281b843342c6385f11cccf06bd11320138119fb90944f6f3fc5aa8ff9854f1934f7890809f0a8175de389ef5cd448cab
+docfiles size=38
+ RELOC/doc/lualatex/luasseq/README details="Readme"
RELOC/doc/lualatex/luasseq/luasseq.pdf details="Package documentation"
-srccontainersize 10964
-srccontainerchecksum 4946e994a3ce2712e6da73a9969cbf2634726191845332e4464ce8d446c09235e94798c878e9e060e3a7b3bc3a27c37a299b9d30f1da6368b67875b551ee9d0d
-srcfiles size=11
+srccontainersize 11388
+srccontainerchecksum 3a6b4fa48956e2f448a1be96eb9d05f236c9e1b2177de13ad16aa942c9b4ef5d4d4585bdb6f5d9b1a19901375f34cbd381430c629e037be500d84cf626065500
+srcfiles size=12
RELOC/source/lualatex/luasseq/luasseq.dtx
RELOC/source/lualatex/luasseq/luasseq.ins
runfiles size=11
RELOC/scripts/luasseq/luasseq.lua
RELOC/tex/lualatex/luasseq/luasseq.sty
catalogue-ctan /macros/luatex/latex/luasseq
-catalogue-license lppl
+catalogue-license lppl1.3
catalogue-topics maths luatex
name luatex
@@ -202754,27 +202755,30 @@ catalogue-topics maths font-sel
name maze
category Package
-revision 65374
+revision 65508
shortdesc Generate random mazes
relocated 1
longdesc This package can generate random square mazes of a specified
longdesc size. The mazes generated by this package are natural and their
longdesc solution is not too obvious. The output it based on the picture
longdesc environment.
-containersize 1284
-containerchecksum 32b8f56301e1e3935e8d95a461a654fc5a3b111f44cbcfb09b35924b7589f65cb5776374d6b79462db7421d8349538b7037c93c15bf72ab86afd3547482d0629
-doccontainersize 79408
-doccontainerchecksum cfcaef325d6ab4341ff1fd886f46782d2fb352f0b90ca5d3899d195c453740621d020bd6974db5f7304d49dc87b0e50e8d17d378d5879200a5262f4a7e5f897c
-docfiles size=22
+containersize 1376
+containerchecksum e09c0b0d00301dc1d90f66e774f6fe0ffb1c4305498f9aa4b41bbf0460940a2570e40bd8359e30d1d521418111ee9c6e6c8e61a6a2efbdaa484d3f8436f44fd4
+doccontainersize 182560
+doccontainerchecksum cfa47a5d16d4533fdcfdf4ad19c5560fc897da669c4b9bc5a5f7723a6082fcf1b29fbe410117bab9249a526d7c720cab400afec1945b24868f7b73e46690a2ea
+docfiles size=48
RELOC/doc/latex/maze/README.md details="Readme"
RELOC/doc/latex/maze/maze.pdf details="Package documentation"
RELOC/doc/latex/maze/maze.tex
+ RELOC/doc/latex/maze/mazes-picture.png
runfiles size=1
RELOC/tex/latex/maze/maze.sty
+catalogue-contact-development https://github.com/Quantum-Phantom
+catalogue-contact-repository https://github.com/Quantum-Phantom/expl3maze/tree/v1.2
catalogue-ctan /macros/latex/contrib/maze
catalogue-license lppl1.3c
catalogue-topics games expl3
-catalogue-version 1.1
+catalogue-version 1.2
name mcaption
category Package
@@ -234423,7 +234427,7 @@ catalogue-version 1.0.5
name oberdiek
category Package
-revision 64463
+revision 65514
shortdesc A bundle of packages submitted by Heiko Oberdiek
relocated 1
longdesc The bundle comprises packages to provide: aliascnt: 'alias
@@ -234469,11 +234473,11 @@ depend iftex
depend infwarerr
depend kvoptions
depend pdftexcmds
-containersize 40704
-containerchecksum b3f9d5918b24d6191515b459709afb9364a28f44a8b1ad3adc98c2d10c9a4f10316c80070c575fe4a6a06405bcead5bed312ab75553a32d254b2a80b2afbfb8f
-doccontainersize 8210524
-doccontainerchecksum b7f756ceb7dc619bc1941dfc56c5dd2f151e33c57c51444a11dbe74280a23ac27886da05b4b8d0f33dfe9839a5538cbac5e9d506338c89fb223d82867a3f839c
-docfiles size=3175
+containersize 40056
+containerchecksum d46c2ddcff0c84c505fb6f26dbb1ac75c446334fa984883473329852292b6d6d0a99b87d9f4783d80ffb00f91423af99553021cb5c5249ae9e9e3d3ae490da1f
+doccontainersize 8045908
+doccontainerchecksum 6deb0ab0ad235f640c62c6e7b10381d90f7782f3f418cfb1967185a19f44ec031cd084d16b89677c3fd74cf15cd1e58a2349113febaaa36f7fbcb89e389760f0
+docfiles size=3096
RELOC/doc/latex/oberdiek/README.md details="Bundle README"
RELOC/doc/latex/oberdiek/aliascnt.pdf
RELOC/doc/latex/oberdiek/bmpsize.pdf
@@ -234500,7 +234504,6 @@ docfiles size=3175
RELOC/doc/latex/oberdiek/ifdraft.pdf
RELOC/doc/latex/oberdiek/iflang.pdf
RELOC/doc/latex/oberdiek/oberdiek.pdf details="Table of contents of the bundle"
- RELOC/doc/latex/oberdiek/pdfcolfoot.pdf
RELOC/doc/latex/oberdiek/pdfcolparallel.pdf
RELOC/doc/latex/oberdiek/pdfcolparcolumns.pdf
RELOC/doc/latex/oberdiek/pdfcrypt.pdf
@@ -234525,9 +234528,9 @@ docfiles size=3175
RELOC/doc/latex/oberdiek/telprint.pdf
RELOC/doc/latex/oberdiek/thepdfnumber.pdf
RELOC/doc/latex/oberdiek/twoopt.pdf
-srccontainersize 108452
-srccontainerchecksum 688768a47cf782c817cc23e6e527e41c1893fc084702c2ab85e2e4b7df4b3d515033dbae0ea26bf904f6fae77dfce41d21a7b59415fbf67449a3aacc7047afd0
-srcfiles size=249
+srccontainersize 106532
+srccontainerchecksum 8f60b15385daa1447d132e209be78ea67b799b44895a890cf073a12402fcda43ffeaf55d4dd02dfae9ce2aa2352129546a960e53fd0ff2165eae863445093ffb
+srcfiles size=244
RELOC/source/latex/oberdiek/aliascnt.dtx
RELOC/source/latex/oberdiek/bmpsize.dtx
RELOC/source/latex/oberdiek/centernot.dtx
@@ -234549,7 +234552,6 @@ srcfiles size=249
RELOC/source/latex/oberdiek/iflang.dtx
RELOC/source/latex/oberdiek/oberdiek.ins
RELOC/source/latex/oberdiek/oberdiek.tex
- RELOC/source/latex/oberdiek/pdfcolfoot.dtx
RELOC/source/latex/oberdiek/pdfcolparallel.dtx
RELOC/source/latex/oberdiek/pdfcolparcolumns.dtx
RELOC/source/latex/oberdiek/pdfcrypt.dtx
@@ -234567,7 +234569,7 @@ srcfiles size=249
RELOC/source/latex/oberdiek/telprint.dtx
RELOC/source/latex/oberdiek/thepdfnumber.dtx
RELOC/source/latex/oberdiek/twoopt.dtx
-runfiles size=99
+runfiles size=97
RELOC/bibtex/bib/oberdiek/oberdiek-bundle.bib
RELOC/bibtex/bib/oberdiek/oberdiek-source.bib
RELOC/tex/generic/oberdiek/engord.sty
@@ -234601,7 +234603,6 @@ runfiles size=99
RELOC/tex/latex/oberdiek/hypcap.sty
RELOC/tex/latex/oberdiek/hypgotoe.sty
RELOC/tex/latex/oberdiek/ifdraft.sty
- RELOC/tex/latex/oberdiek/pdfcolfoot.sty
RELOC/tex/latex/oberdiek/pdfcolparallel.sty
RELOC/tex/latex/oberdiek/pdfcolparcolumns.sty
RELOC/tex/latex/oberdiek/resizegather.sty
@@ -242760,6 +242761,33 @@ catalogue-license lppl1.3c
catalogue-topics colour
catalogue-version 1.7
+name pdfcolfoot
+category Package
+revision 65512
+shortdesc Separate color stack for footnotes with pdfTeX
+relocated 1
+longdesc Since version 1.40 pdfTeX supports several colour stacks. This
+longdesc package uses a separate colour stack for footnotes that can
+longdesc break across pages. The package is part of the oberdiek bundle.
+containersize 1968
+containerchecksum 40db84311e460e79e6627bb3692afa56abe6c0f335f054955fa4f75c11b4c2a4f65c9c77ca225e1ceb37b3dae6727f27ee4b6e27a155eb1fdf9b053693490537
+doccontainersize 310520
+doccontainerchecksum afd7cfdef3e0290360251ff1de1fee17053229d89dc88e2275a3b94df8a9b5235ba462cb66eb741e541e8d59a9d0eece345c521c87f33fa5fa99e5d69d139ac5
+docfiles size=80
+ RELOC/doc/latex/pdfcolfoot/README.md
+ RELOC/doc/latex/pdfcolfoot/pdfcolfoot.pdf details="Package documentation"
+srccontainersize 5488
+srccontainerchecksum e857b9d671a5be1737ea4d3a002aa89d6155aa6e89fbd336ee77189fc61a85b8a3713a631efa8078894261748d39ad029e2ac40a91ac1b97ba4b82f6fc054b3a
+srcfiles size=5
+ RELOC/source/latex/pdfcolfoot/pdfcolfoot.dtx
+runfiles size=2
+ RELOC/tex/latex/pdfcolfoot/pdfcolfoot.sty
+catalogue-contact-bugs https://github.com/ho-tex/pdfcolfoot/issues
+catalogue-ctan /macros/latex/contrib/pdfcolfoot
+catalogue-license lppl1.3
+catalogue-topics footnote colour
+catalogue-version 1.4
+
name pdfcolmk
category Package
revision 52912
@@ -256597,7 +256625,7 @@ catalogue-version 1.0
name proflycee
category Package
-revision 65449
+revision 65509
shortdesc A LaTeX package for French maths teachers in high school
relocated 1
longdesc This package provides some commands to help French mathematics
@@ -256606,11 +256634,11 @@ longdesc create splines with "derivative control";
longdesc \CalculFormelParametres and \CalculFormelLigne in order to
longdesc create an xcas-windows-like; \CodePythonLstFichier to create
longdesc code presentation and code execution with pythontex.
-containersize 27232
-containerchecksum d7233cde2f191518a6466bc81a48edeabbac11c814b4a3297a74abe4781bd98da4eabbe2a64fd850fe614c800a4476341688b6d8a5120df4a2bc83266181dc85
-doccontainersize 1617292
-doccontainerchecksum e624e98986470a850f7d6cde32d3cebad6adc8c7703cab7c0b04dd7b3763c71a96dac3ea2a9bf09a1baa7a6c25fc5a0424b1f956ed5c9d3a2924bc323400ab3d
-docfiles size=537
+containersize 27396
+containerchecksum 6a7893bbd61d1212327d0457a06f9d1ccbaa8c3366aa93d7efb4a941e280b7aacd11b95416b072477be88e4dcf93f4d2c540824b74ae606785ecab20e47f2cd2
+doccontainersize 1622868
+doccontainerchecksum 03f45a967bf52d9806d075fe40a5218c8fe10d14092548b7cdb32c076ea9fdbe58e42b4a397972d5eeded6c3b2669e0e33d81b1a3c6e13d73c58fba1a6a16e6d
+docfiles size=539
RELOC/doc/latex/proflycee/ProfLycee-doc.pdf details="Package documentation" language="fr"
RELOC/doc/latex/proflycee/ProfLycee-doc.tex
RELOC/doc/latex/proflycee/ProfLycee-old-doc.pdf
@@ -256636,7 +256664,7 @@ docfiles size=537
RELOC/doc/latex/proflycee/pl-solve_c.png
RELOC/doc/latex/proflycee/pl-solve_d.png
RELOC/doc/latex/proflycee/testscript.py
-runfiles size=60
+runfiles size=61
RELOC/tex/latex/proflycee/ProfLycee-old.sty
RELOC/tex/latex/proflycee/ProfLycee.sty
catalogue-also profcollege
@@ -256645,7 +256673,7 @@ catalogue-contact-repository https://github.com/cpierquet/ProfLycee
catalogue-ctan /macros/latex/contrib/proflycee
catalogue-license lppl1.3c
catalogue-topics maths french teaching expl3 pgf-tikz
-catalogue-version 2.1.4
+catalogue-version 2.1.5
name program
category Package
@@ -269472,28 +269500,28 @@ catalogue-version 0.01
name repere
category Package
-revision 63836
-shortdesc Diagrams for school mathematics
+revision 65506
+shortdesc MetaPost macros for secondary school mathematics teachers
relocated 1
longdesc This package provides MetaPost macros for drawing secondary
longdesc school mathematics figures in a coordinate system: axis, grids
longdesc points, vectors functions (curves, tangents, integrals,
longdesc sequences) statistic diagrams plane geometry (polygons,
longdesc circles) arrays and game boards
-containersize 24036
-containerchecksum 4b8b54423bf97695356fb26477bfd51a8ef779bd56b309dbcf7db8f8f9718723b2f497a19c8308c4928221d07d336e3466e4e0f98b90913a65bfb7c6bc65875d
-doccontainersize 1392744
-doccontainerchecksum d0613f11cb4f29121b5c6b03b69d35319f37657f1233be3a123c4b717f547a20335d0f8ae3ede3da65eaee50ebf9401cd9e747073f8eebaf3773723d0f85dcd6
-docfiles size=472
+containersize 25704
+containerchecksum 51cc7c4508d97e38dd642a67954c1dc59f60cf88f563c1d33523f50455ba5459ba8404efbe9175123d7b6cacc27d589a04e2c3be3e8e7557229225888a21202c
+doccontainersize 638816
+doccontainerchecksum 52e34fa72fd2adeacbda61e3e4ff6f964ec2f78cf920a808521d9ec0ce5febc0ac020d2311cda5b730114b1a3071dabfdc92c316e9f8ad7d1f944f2876fc5826
+docfiles size=263
RELOC/doc/metapost/repere/README.md details="Readme"
RELOC/doc/metapost/repere/repere-doc.pdf details="Package documentation (French)" language="fr"
RELOC/doc/metapost/repere/repere-doc.tex
-runfiles size=30
+runfiles size=32
RELOC/metapost/repere/repere.mp
catalogue-ctan /graphics/metapost/contrib/macros/repere
-catalogue-license lppl1.3
-catalogue-topics teaching
-catalogue-version 22.07
+catalogue-license lppl1.3c
+catalogue-topics teaching maths graphics-mpost
+catalogue-version 23.01
name repltext
category Package
@@ -280079,7 +280107,7 @@ catalogue-version 2.0
name scrabble
category Package
-revision 65485
+revision 65507
shortdesc Commands for Scrabble boards
relocated 1
longdesc This package provides some commands (in English and in French)
@@ -280087,24 +280115,24 @@ longdesc to work with a Scrabble Board : \ScrabbleBoard and
longdesc \begin{EnvScrabble} and \ScrabblePutWord for the English
longdesc version, \PlateauScrabble and \begin{EnvScrabble} and
longdesc \ScrabblePlaceMot for the French version.
-containersize 2904
-containerchecksum 4cb232d5ffa7e7760037e311f48aeab6c67266b4b82b97dabedc6300515319abde095ba137d4c58d3dd1a5d2a55ba3a6a783033a6f18476abf4d948e2917a219
-doccontainersize 822660
-doccontainerchecksum f999ee84a97e82a51a3176f0680f505bdb394958a31decccb64799f4d6fe59434619d06bcea6950828c8f91c2dae9e4a0519fffc68831e33f9be04cc341b6e43
-docfiles size=247
+containersize 3072
+containerchecksum df992081a34554d1e26ec6eb227f2ac5beddb7fd88a4a8377aebdfebd9fd200d053c4e43db96450f20a7c23cac11d235f1acde3e4dc40a3c30b83ad2914eae5b
+doccontainersize 883952
+doccontainerchecksum c61edf946eef82a7cde0af391eaca776784870be6a235e9752821f565b187a2a286ce1c7d7a7d5bc902550597e2a0906f25581bd8295b7dc5a546cf7bd8ee73b
+docfiles size=253
RELOC/doc/latex/scrabble/README.md details="Readme"
RELOC/doc/latex/scrabble/Scrabble-doc-en.pdf details="Package documentation (English)"
RELOC/doc/latex/scrabble/Scrabble-doc-en.tex
RELOC/doc/latex/scrabble/Scrabble-doc-fr.pdf details="Package documentation (French)" language="fr"
RELOC/doc/latex/scrabble/Scrabble-doc-fr.tex
-runfiles size=4
+runfiles size=3
RELOC/tex/latex/scrabble/Scrabble.sty
catalogue-contact-repository https://github.com/cpierquet/Scrabble
catalogue-contact-support https://github.com/cpierquet/Scrabble/issues
catalogue-ctan /graphics/pgf/contrib/scrabble
catalogue-license lppl1.3c
catalogue-topics games pgf-tikz
-catalogue-version 0.1.2
+catalogue-version 0.1.3
name scrambledenvs
category Package
@@ -280652,7 +280680,7 @@ catalogue-version 1.2.1
name se2thesis
category Package
-revision 65093
+revision 65510
shortdesc A Thesis Class for the Chair of Software Engineering II at the University of Passau, Germany
relocated 1
longdesc The se2thesis bundle provides a document class for writing a
@@ -280665,19 +280693,22 @@ longdesc title page, it still provides large degrees of freedom to its
longdesc users. However, the package's documentation also provides
longdesc recommendations regarding several aspects, for example,
longdesc recommending BibLaTeX for bibliographies.
-containersize 8140
-containerchecksum d6edaecb318b4a613adc2b3c418691272259d94f40a6590c3f6a577c1b82c5bcf71ad8c32afdc0282a7293d05c3a4a6e172c0a896ebbb1a06c2dedea92213ba9
-doccontainersize 1459868
-doccontainerchecksum fe3b0af57fb8cbfab21230e908c031be15308c148a23a11e6de150308ee3c29584c0818cf3e87781f12902b66f2fc93a2c1e347db83e4c7ab6e6643204f1666c
-docfiles size=376
+containersize 7956
+containerchecksum 38c0c20a143a634c12d9cc4dad7f5c3f48a61a775ce835df793d1a3e002f37b1971ac1eae2b09f3ca61fe6ad42ac9c3ec99659fcd92ed79d9ab2e4b5b8299fce
+doccontainersize 1382428
+doccontainerchecksum 7f882f311776fa01adf323f15895e490b811e12c58db1a8fb0d0c4eb819afe27d8a0898fb99af223a14c06d67b2f902a110a01cdaaf1730b55caa1ec2513fd78
+docfiles size=356
RELOC/doc/latex/se2thesis/CHANGELOG.md
RELOC/doc/latex/se2thesis/README.md details="Readme"
RELOC/doc/latex/se2thesis/se2thesis-master-thesis-example.pdf details="Example document"
RELOC/doc/latex/se2thesis/se2thesis-master-thesis-example.tex
RELOC/doc/latex/se2thesis/se2thesis.pdf details="Package documentation"
-srccontainersize 21964
-srccontainerchecksum 29ad9db3f136f6001957e993cc0a888bf5600fd826ae7151ed2513fa6fca2b86cb6ba74feafc1f6ab4c8ded20857f0ffa5c46324d9ed3b10300e41a37caf8052
+ RELOC/doc/latex/se2thesis/se2thesis.tex
+srccontainersize 20560
+srccontainerchecksum e3d80ddcfec0b868e472c71fd5318ce489a54e72f86377a51361d7c587231a17afe67d27bbf36ce7221fa473ea51f81e9026443b5e71894d1f55c5ea97de9bec
srcfiles size=24
+ RELOC/source/latex/se2thesis/se2colors.dtx
+ RELOC/source/latex/se2thesis/se2fonts.dtx
RELOC/source/latex/se2thesis/se2thesis.dtx
RELOC/source/latex/se2thesis/se2thesis.ins
runfiles size=12
@@ -280691,7 +280722,7 @@ catalogue-contact-repository https://github.com/se2p/se2thesis
catalogue-ctan /macros/latex/contrib/se2thesis
catalogue-license lppl1.3c
catalogue-topics class dissertation expl3
-catalogue-version 1.3.1
+catalogue-version 2.0.0
name secdot
category Package
@@ -300868,7 +300899,7 @@ binfiles arch=x86_64-solaris size=1
name tex4ht
category Package
-revision 65428
+revision 65513
shortdesc Convert (La)TeX to HTML/XML
longdesc A converter from TeX and LaTeX to SGML-based formats such as
longdesc (X)HTML, MathML, OpenDocument, and Docbook, providing a
@@ -300889,10 +300920,10 @@ longdesc files from them is nontrivial, and generally done with the
longdesc Makefile in development, from which the TeX4ht package in TeX
longdesc Live is updated.
depend tex4ht.ARCH
-containersize 976680
-containerchecksum 563174a33e762bf9ddd0246d05c2b91ddb74d48d71fa283b85f06a867f9c0162b4462e20cbdfd6e2e1e7432dfa653ff5408cb1be5919c0c9ac19b93b836f6985
+containersize 976872
+containerchecksum 57225cf3f1de2e3a0b160ea416f398938871a66f44766c286705a6c9fbaa0ea56d1db2a3e129c4fa283224654af59c0b73ff8280732a85988e8ab65ab4a1bfc7
doccontainersize 136384
-doccontainerchecksum 48be99023ddc503a3ed8505ea93dc61827a3962a73942ceb2721d843a2eb85c947caa344803959001b16e9cc81804c65e6cec654e09355751400779293385af1
+doccontainerchecksum f4f2c2199106d8b3d10a8e6dfdebec3d1853273cf0b9401ed8a31273fbd1bb2196674d4de5187b2b569d667ffb436d13bb1f6824f3e5cf9c9231efc458823bb0
docfiles size=260
texmf-dist/doc/generic/tex4ht/Makefile
texmf-dist/doc/generic/tex4ht/README details="Readme"
@@ -300964,8 +300995,8 @@ docfiles size=260
texmf-dist/doc/generic/tex4ht/mn56.html
texmf-dist/doc/generic/tex4ht/mn5x.png
texmf-dist/doc/generic/tex4ht/mn6x.png
-srccontainersize 1298128
-srccontainerchecksum 9e689c7a2b33924fbb10a8762de78912b8184dcaef5ffe8a423e25278077cf60e82b9959b08c886294f14b023423a6b19f71643343d475e9933f75dd6a9e6f0d
+srccontainersize 1298532
+srccontainerchecksum 9260f1ada7019c30a70ef4a03b61a583c3bbf80ff7d5f1cb252a764a588f3c5b56ae1e9d2d4d062c4872ada0eabf872f71175656d1b135dae01e92bfc3f33d1c
srcfiles size=3945
texmf-dist/source/generic/tex4ht/ChangeLog
texmf-dist/source/generic/tex4ht/Makefile
@@ -301043,7 +301074,7 @@ srcfiles size=3945
texmf-dist/source/generic/tex4ht/update-htfonts
texmf-dist/source/generic/tex4ht/wripro.tex
texmf-dist/source/generic/tex4ht/xtpipes.tex
-runfiles size=11363
+runfiles size=11364
texmf-dist/scripts/tex4ht/ht.sh
texmf-dist/scripts/tex4ht/htcontext.sh
texmf-dist/scripts/tex4ht/htcopy.pl
@@ -311747,7 +311778,7 @@ docfiles size=376
name texlive-scripts
category TLCore
-revision 65498
+revision 65504
shortdesc TeX Live infrastructure programs
longdesc Includes install-tl, tl-portable, rungs, etc.; not needed for
longdesc tlmgr to run but still ours. Not included in tlcritical.
@@ -311755,10 +311786,10 @@ depend texlive-scripts.ARCH
depend texlive.infra
execute addMap mathpple.map
postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat
-containersize 113712
-containerchecksum 5adb29161be172d9116a5b8cb92408e8e1bac498285c9d57af7cf38e9932648f59c4cd3fa124df4d581fa23810b1cf0f98aaef13951c80b6e4c556c190e8f2d0
-doccontainersize 424188
-doccontainerchecksum c4e50e27ce07137fc51fb31b927cf0cde2b3ff7fc38f9dd4870ced649e01033331380ff88d9d22b268da9e350fa07521b28535b8802c987b62fa6b559865e80d
+containersize 113700
+containerchecksum dc6b0af302fc6701db57313f028a9eafa2f9609beb1d901b7c6a65c6209463af417e9baed48d637235519487d3fed87dde13131b2e8db36b378f74694d04574e
+doccontainersize 424068
+doccontainerchecksum 8525d7d90f1cfb573bf7f662bb8918f2cff2c5b8272d8c7ea7203b19540f41eafb1bfc52a5dc33f35a3ee7a2dcbe5455d411c9dd1e7f2eb7833f4bc6448dfb52
docfiles size=533
doc.html
texmf-dist/doc/man/man1/fmtutil-sys.1
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index 91998b7b1b..c158c98a31 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-8123050679790c37af0c896eeeac05f9 texlive.tlpdb
+77826d34e2c3daacd3ecbb02a50a4291 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index bd6a28f02c..30527cece6 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-a3fe5725d194bb14660a58be17caf659d7e5bae7f9bb9ccd15efb10e127a6ae8427b67036baa0cc2375e8f51cc6e61dc18188ae5c7249d93d20e5b4992818a27 texlive.tlpdb
+528bad8a7ae4e21041663c3bf923b18e00f282d0567322963764266561818a2669d5f08ce7fa1fd8133bc9e65eae175a94acdacdd78c5e711caf18355ab55960 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index 2ddfd3316f..4c54837180 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
@@ -1,10 +1,10 @@
-----BEGIN PGP SIGNATURE-----
-iQEcBAEBCgAGBQJjvLbNAAoJEEzhh34ZQ4xw64wH/AssoRksxSheJL6QkSqQYFYx
-DBqI7Lis0i3jzAX2rJGguCZp9fM58TLsKcORhdYoI8yAo5JzBcLrgBstgof16xAe
-2sLJdx23NwMadh6/0MXDpvUj9WR9BMO28ctzd2uYfZ9VTFV9ypkjHSy1nLhOF66y
-9a63mKbK9gEZIsAKoOQTSpms5YfkRzsMCR5JaltWyxCTwv+6aHPy5+fSfBESBJBV
-eJ9O8JBul1IhjmQ+3S2/YKFQ8ZTamdQ8sadHlGJmLA106xiyMuEfzdwzoyzjYyOf
-YS0B1j8iVEgc1sRWpLtWMBCqmnX4U5kxgd01Ifd/QKwxBI75tqYuBTntOMhAmmM=
-=rgwG
+iQEcBAEBCgAGBQJjvgiWAAoJEEzhh34ZQ4xwTv8H/jdg1ugASFSo4rxr4K9Si7Yn
+HsggRWQTF+DTkzSHieNCIrxoiHg+YFEXmZ4VAsL/65bTh1zThmCtRoRp2MglhJoc
+dWxsQGfFs5+YKlIwZSN+dKeCK3GCr6UAIgj6S2wVfJja/qvIo1+QJhTKKE6qy7cf
+LEUNYqvfk5QIiHwCR5zKfGLg9P1Gtz/Sq9PGJznAFnkd6R81CqvxfVGFE3AzdD3F
+hcdCdru6iG8ffO8eWGJZ7MCT2jNtA9Up0ideNxe1dWNuihCP+K18l46uoqCDW4rW
+8zid9crn7qBECvAwyPPqrKXzPXilyLbvU1NMbOEvRQRAgW4gD8ZpmtvnaD2XVNM=
+=RRqI
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index 333ab5d426..a9564cf04a 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
Binary files differ
diff --git a/timestamp b/timestamp
index 8f149a5d22..7bc0307895 100644
--- a/timestamp
+++ b/timestamp
@@ -2,4 +2,4 @@
# The source CTAN of this site's material:
dante.ctan.org
# The year-month-day-hour-minute of this site's material:
-2023-01-11-02-02
+2023-01-12-02-02